From xen-devel-bounces@lists.xenproject.org Thu Jun 01 00:31:20 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 00:31:20 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542191.845766 (Exim 4.92) (envelope-from ) id 1q4WDZ-0004kZ-M8; Thu, 01 Jun 2023 00:31:05 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542191.845766; Thu, 01 Jun 2023 00:31:05 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4WDZ-0004kQ-I5; Thu, 01 Jun 2023 00:31:05 +0000 Received: by outflank-mailman (input) for mailman id 542191; Thu, 01 Jun 2023 00:31:04 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4WDY-0004kG-AH; Thu, 01 Jun 2023 00:31:04 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4WDY-0004At-0d; Thu, 01 Jun 2023 00:31:04 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4WDX-0004Vi-HO; Thu, 01 Jun 2023 00:31:03 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q4WDX-0001Nt-Gy; Thu, 01 Jun 2023 00:31:03 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=JYQ9XNaIHsYkJEXTCXOpUDarhD8i3Uc6sNGmljVBjKM=; b=wry/VFw3Z3raaM3IxIwnOV/X98 G71sb7aYOPG3kKvkqFCYrICYULDq0sPhWCecnwRLSFgHr9FrCmD3v24L+M9sLdE6CRUc9nHbhU41z UEQuZn/iRZJZD87V0Uo7kVa94K2U0vJNyh6+04G+nV2w1Bo47Lv/ZKIvWZmyGEhDiOBw=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [linux-linus test] 181033: regressions - trouble: blocked/broken/fail/pass X-Osstest-Failures: linux-linus:build-armhf-libvirt::broken:regression linux-linus:test-armhf-armhf-xl-credit1:xen-boot:fail:regression linux-linus:build-armhf-libvirt:host-build-prep:fail:regression linux-linus:test-amd64-amd64-xl-vhd:guest-start/debian.repeat:fail:regression linux-linus:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking linux-linus:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking linux-linus:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking linux-linus:test-armhf-armhf-examine:reboot:fail:nonblocking linux-linus:test-armhf-armhf-xl-arndale:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking linux-linus:test-armhf-armhf-xl-credit2:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking linux-linus:test-armhf-armhf-xl-multivcpu:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-vhd:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-rtds:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-qcow2:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-raw:migrate-support-check:fail:nonblocking X-Osstest-Versions-This: linux=48b1320a674e1ff5de2fad8606bee38f724594dc X-Osstest-Versions-That: linux=6c538e1adbfc696ac4747fb10d63e704344f763d From: osstest service owner Date: Thu, 01 Jun 2023 00:31:03 +0000 flight 181033 linux-linus real [real] http://logs.test-lab.xenproject.org/osstest/logs/181033/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-armhf-libvirt broken test-armhf-armhf-xl-credit1 8 xen-boot fail REGR. vs. 180278 build-armhf-libvirt 5 host-build-prep fail REGR. vs. 180278 test-amd64-amd64-xl-vhd 21 guest-start/debian.repeat fail REGR. vs. 180278 Tests which did not succeed, but are not blocking: test-armhf-armhf-libvirt 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-qcow2 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-raw 1 build-check(1) blocked n/a test-armhf-armhf-examine 8 reboot fail like 180278 test-armhf-armhf-xl-arndale 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 180278 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 180278 test-armhf-armhf-xl-credit2 8 xen-boot fail like 180278 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 180278 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 180278 test-armhf-armhf-xl-multivcpu 8 xen-boot fail like 180278 test-armhf-armhf-xl 8 xen-boot fail like 180278 test-armhf-armhf-xl-vhd 8 xen-boot fail like 180278 test-armhf-armhf-xl-rtds 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 180278 test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qcow2 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass test-amd64-amd64-libvirt-raw 14 migrate-support-check fail never pass version targeted for testing: linux 48b1320a674e1ff5de2fad8606bee38f724594dc baseline version: linux 6c538e1adbfc696ac4747fb10d63e704344f763d Last test of basis 180278 2023-04-16 19:41:46 Z 45 days Failing since 180281 2023-04-17 06:24:36 Z 44 days 84 attempts Testing same since 181033 2023-05-31 12:43:43 Z 0 days 1 attempts ------------------------------------------------------------ 2558 people touched revisions under test, not listing them all jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt broken build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl fail test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-freebsd11-amd64 pass test-amd64-amd64-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale fail test-amd64-amd64-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 fail test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 fail test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine fail test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt blocked test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu fail test-amd64-amd64-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-amd64-pygrub pass test-amd64-amd64-libvirt-qcow2 pass test-armhf-armhf-libvirt-qcow2 blocked test-amd64-amd64-libvirt-raw pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw blocked test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds fail test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-amd64-xl-vhd fail test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd fail ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary broken-job build-armhf-libvirt broken Not pushing. (No revision log; it would be 323876 lines long.) From xen-devel-bounces@lists.xenproject.org Thu Jun 01 02:03:02 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 02:03:02 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542200.845782 (Exim 4.92) (envelope-from ) id 1q4XeM-0003Xd-GW; Thu, 01 Jun 2023 02:02:50 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542200.845782; Thu, 01 Jun 2023 02:02:50 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4XeM-0003XW-D2; Thu, 01 Jun 2023 02:02:50 +0000 Received: by outflank-mailman (input) for mailman id 542200; Thu, 01 Jun 2023 02:02:49 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4XeK-0003XQ-Tf for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 02:02:49 +0000 Received: from EUR05-DB8-obe.outbound.protection.outlook.com (mail-db8eur05on20628.outbound.protection.outlook.com [2a01:111:f400:7e1a::628]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 653cfc31-0020-11ee-8611-37d641c3527e; Thu, 01 Jun 2023 04:02:44 +0200 (CEST) Received: from DU2PR04CA0016.eurprd04.prod.outlook.com (2603:10a6:10:3b::21) by PAXPR08MB7672.eurprd08.prod.outlook.com (2603:10a6:102:246::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6433.24; Thu, 1 Jun 2023 02:02:39 +0000 Received: from DBAEUR03FT063.eop-EUR03.prod.protection.outlook.com (2603:10a6:10:3b:cafe::a5) by DU2PR04CA0016.outlook.office365.com (2603:10a6:10:3b::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.23 via Frontend Transport; Thu, 1 Jun 2023 02:02:39 +0000 Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by DBAEUR03FT063.mail.protection.outlook.com (100.127.142.255) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.23 via Frontend Transport; Thu, 1 Jun 2023 02:02:38 +0000 Received: ("Tessian outbound e13c2446394c:v136"); Thu, 01 Jun 2023 02:02:38 +0000 Received: from 005c8d55ff40.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 5704C353-B401-47FB-8906-1E276FD2F6ED.1; Thu, 01 Jun 2023 02:02:33 +0000 Received: from EUR02-DB5-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 005c8d55ff40.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Thu, 01 Jun 2023 02:02:33 +0000 Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15) by PA4PR08MB6096.eurprd08.prod.outlook.com (2603:10a6:102:eb::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6433.24; Thu, 1 Jun 2023 02:02:30 +0000 Received: from AS8PR08MB7991.eurprd08.prod.outlook.com ([fe80::2db3:aa30:7be0:10a6]) by AS8PR08MB7991.eurprd08.prod.outlook.com ([fe80::2db3:aa30:7be0:10a6%4]) with mapi id 15.20.6455.020; Thu, 1 Jun 2023 02:02:29 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 653cfc31-0020-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=SLN+j1B1D1/YqfLvwUdLjB+68Ovdqan/p/cSJ8ERq/Y=; b=AFd7mS56V1ahnhsIVAft+e2X3qB3czGllxVP5f6AQa8uJC3Ie5XlaCkv+JJhIZY78+QIwvoE8Kqs6aYmTMkZ2UmwGbZSg6mqpDC75D0Z3iATXu+i1A7t1OrNF7cLV/RAgmc4fmPDR+0GxZwHq/+cDo5o9O9X2/dppy2EPgRR8RM= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C X-CR-MTA-TID: 64aa7808 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=jCdKc5m5U2++yUbdxjsRiwyFmgOELvg5YpwvxV5fIcev7i2QIty9Ejd57YqA2Qjvd9IG8UbSLGlz781bCUvImACt8U9+IIbR9ls0z3FQF7LBiIt13XA7C3ye8SMMz2bnl5UZAvLLyjNS6LL/lTR0mOE7NTUVBoJlKI9MIbBwjpRoEGr77rg1O9OlGw0YNkMBmykvXDTEiFvAgADk1XZgijrzcZmRKdnHRJJP29qoPw2NFgJgpUEhQtdY8uJjgHmb1Tu4+abjTBmT/tQddSDpUQkWDVzMDeDN+9+qJxOSrzSrpGKtV7NdryqeasIYPPE/Qzc/UTSA8yrP1AXm2nMGIw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=SLN+j1B1D1/YqfLvwUdLjB+68Ovdqan/p/cSJ8ERq/Y=; b=Y23hglO/aZgO86lZ1z438zUK8gdEaI7PlXLJFldeiTFi/omzyvGjEgbzJ08yOL9a3UqF89SYS+YIGMNZDDcz3AU8J4kj/dNevvYDU0fE8X4rSRjQnEs1wF+0PqtHrI8J+37bBZYQaZMtJGX7oHqodbsqU7lxCcas1KZjpz6g32JrG0xXTxG6ZmAKbasaSdWktyQo0SIfEhsx6sKbKHRYakb7XToELpwbX3XJZIgrzuxRWFvu59w8qwkcYkYn2KTkgyL81aJ3sQ1Vlm6A7OZK/tYM28u9o4DqH5puJcWEqEzA5ySEXlE9yQ3bsbq3WMK3WwO4hG7T35mfV+z6ommlkw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=SLN+j1B1D1/YqfLvwUdLjB+68Ovdqan/p/cSJ8ERq/Y=; b=AFd7mS56V1ahnhsIVAft+e2X3qB3czGllxVP5f6AQa8uJC3Ie5XlaCkv+JJhIZY78+QIwvoE8Kqs6aYmTMkZ2UmwGbZSg6mqpDC75D0Z3iATXu+i1A7t1OrNF7cLV/RAgmc4fmPDR+0GxZwHq/+cDo5o9O9X2/dppy2EPgRR8RM= From: Henry Wang To: Vikram Garhwal , Michal Orzel , "xen-devel@lists.xenproject.org" CC: "sstabellini@kernel.org" , Julien Grall Subject: RE: [XEN][PATCH v6 08/19] xen/device-tree: Add device_tree_find_node_by_path() to find nodes in device tree Thread-Topic: [XEN][PATCH v6 08/19] xen/device-tree: Add device_tree_find_node_by_path() to find nodes in device tree Thread-Index: AQHZfU8kxczuWvlyd0qZ9yNYcQTG6K9JhHkwgAhT/4CAIzuLgIAASt/Q Date: Thu, 1 Jun 2023 02:02:29 +0000 Message-ID: References: <20230502233650.20121-1-vikram.garhwal@amd.com> <20230502233650.20121-9-vikram.garhwal@amd.com> <080bd1fe-a58c-5bdf-eef5-995420001ca4@amd.com> <99b0bdf6-b215-f65f-aad9-3ae74a14f66e@amd.com> In-Reply-To: <99b0bdf6-b215-f65f-aad9-3ae74a14f66e@amd.com> Accept-Language: zh-CN, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ts-tracking-id: 84F58158CE6F064FA802998E50AE6E48.0 x-checkrecipientchecked: true Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-traffictypediagnostic: AS8PR08MB7991:EE_|PA4PR08MB6096:EE_|DBAEUR03FT063:EE_|PAXPR08MB7672:EE_ X-MS-Office365-Filtering-Correlation-Id: f08b5f32-030d-4c5f-a3ba-08db624446ba x-checkrecipientrouted: true nodisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: f+EqnAKc1vaavmSaquu5PT2sq3FRSSs/xdfTqKUikwqXi9BlpqBBsiEz4ktcY/DycI+Izx8fWQhSDn440FVYHfrRlyORLDM3deN0VOs4g0kLj3GtzzUvkWMETnSKKgK+r/tUpl6RCCZPC9PonbdCN076aEyW8cK9T9m2GzS4J6pl5bxI/X9F3xlJpu00xcWbuekbNc5OGvaZpmcO/J88TG+kcm2tdATCdqrg8jG83Ab3ZPv3r3tDbBRNL25w/0Cx0bSGBUQdmMUcBgyfrqG9CS1Z3kwArAnhV9qZSTkmHFDFcKbNASUOaSJ+3dFXb4Y9gznVoUB1U4/mBgKfONa9Enp3TkDUD6MMcCDDdW7aM+CtUQnuPP+UvCRppzE4WvuilF4Okn7VhbEJqldEf1toQXIY3b1gsqUliwgs22nUt5FrkJ+nGV/keXgqiklXigedP13sZNoEufASFzPVB8PGsgxKDp3LqJkzkrz19r64ZfDq+bysAIybFnfOUanaK8n+YEj+MTa3Tm4sLTzP+jH7go7SH0AStlAL+cM45wFXv7SJdiJkJZZpTf4y2BdhVcquhtkQ3uMcK4yFj1CnYTunKpaLdybaV3xzCmRDd7odig3T1z3unCnvuOXiRDpheg6dGkJ27YZ0pwMrzS+AwiCgrA== X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB7991.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(396003)(136003)(366004)(39860400002)(346002)(376002)(451199021)(478600001)(54906003)(7696005)(110136005)(26005)(186003)(2906002)(71200400001)(4744005)(6506007)(8936002)(316002)(4326008)(5660300002)(76116006)(66446008)(41300700001)(66946007)(66556008)(64756008)(52536014)(66476007)(8676002)(38100700002)(122000001)(55016003)(9686003)(86362001)(38070700005)(33656002)(83380400001)(37363002);DIR:OUT;SFP:1101; Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR08MB6096 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: DBAEUR03FT063.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: 1be3ba44-2db6-480f-0beb-08db6244417d X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: oe0/0tXREGx0Xb/HDn2XDhXbt38sMTV321vOUmmC2y81r1ZMIOEYuOOEJntl+K1O+zhgpoR4ja3E46SIxHv04yNul/XMdzsNzod8XuJLX5+2EqxNY7WEmyqa0bMCRd1bL0dNc0uaj3STH4PzEEFshHD4OLnTkexRUs1b9IAn+ILiYNuy9/zdz67MJHGHBztQ52de8+HJzhlfePwd2+OouNFfTFzxgCMGUDU6O5oK7k6x5uV6lO8ONS8rjXdlLsP6rXwavbOaONmnOiXAXgAA/T3bNtJIiMwTZnUKesI/5w/9aM+IpvbcvWNLUTYS3QRAbbOdrUujQotanv48K4pGP8o08w/RQUV4JckX1bbsNgyAkwxH1m4yogVDsTK0G6q7IyChq97697yhBkLAmpUF0+tLJp03LcrQVbpeP5WKS62oZBq/dm40nHDPAJvjKSBS/x2KEeg8bzf2qh36lynPq7iTpWmvmIzMoCpLDy8RLEiRV7jINBufDRhXPvXRAxfobz58422L9skr4xRqHMhbsIBEMkre18J8biybHUQEzLiKpi0BfcGbxHoHBCbuu+2GuHpbegQm+OhQ1dZR1v+9nTWAjy9KjQSjIGPmpr+3iU/JONz/tbH+D9DdCI4vftAA7gvL6vfJCNjaiaRWS7sF/HLlqNP5wLlQkxzXDiP+MfFVjhoktxNq3fTrnjFfptE6IEY2BlPKY3LeNqucDfNi7+ui11izKMYFROiLOLax6hnChk8xKv92px3NAZEwZTvGe4cGCxFFPkzO33l02DHZmw== X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230028)(4636009)(376002)(396003)(136003)(39860400002)(346002)(451199021)(46966006)(40470700004)(36840700001)(70206006)(70586007)(2906002)(316002)(4326008)(41300700001)(4744005)(110136005)(54906003)(5660300002)(52536014)(8936002)(8676002)(36860700001)(40460700003)(478600001)(7696005)(356005)(40480700001)(55016003)(6506007)(26005)(33656002)(83380400001)(9686003)(336012)(47076005)(186003)(82740400003)(81166007)(82310400005)(86362001)(37363002);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Jun 2023 02:02:38.6835 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: f08b5f32-030d-4c5f-a3ba-08db624446ba X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: DBAEUR03FT063.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR08MB7672 SGkgVmlrcmFtLA0KDQo+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+IEhpIEhlbnJ5ICYg TWljaGFsLA0KPiBDaGFuZ2VkIHRoaXMgZm9yIHY3LiBXaWxsIHNlbmQgaXQgb3V0IHNvb24uDQo+ IA0KPiBASGVucnksIGkgZGlkbid0IGFkZCByZXZpZXdlZC1ieSBhcyB0aGUgcGF0Y2ggaXMgYml0 IGNoYW5nZWQgd2l0aA0KPiByZW5hbWluZy4gQ2FuIHlvdSBwbGVhc2UgcmV2aWV3IHY3IGFuZCBn aXZlIHlvdXIgZmVlZGJhY2suDQoNClRoYW5rcyBmb3IgdGhlIHJlbWluZGVyLCB5ZXMgSSB3b3Vs ZCBiZSBtb3JlIHRoYW4gaGFwcHkgdG8gcmV2aWV3DQp0aGUgdjcgc2VyaWVzIG9uY2UgeW91IHNl bmQgaXQuIA0KDQpLaW5kIHJlZ2FyZHMsDQpIZW5yeQ0KDQo+ID4NCg== From xen-devel-bounces@lists.xenproject.org Thu Jun 01 03:19:29 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 03:19:29 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542204.845791 (Exim 4.92) (envelope-from ) id 1q4YqL-0002X5-29; Thu, 01 Jun 2023 03:19:17 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542204.845791; Thu, 01 Jun 2023 03:19:17 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4YqK-0002Wy-Vn; Thu, 01 Jun 2023 03:19:16 +0000 Received: by outflank-mailman (input) for mailman id 542204; Thu, 01 Jun 2023 03:19:16 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4YqJ-0002Ws-V6 for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 03:19:16 +0000 Received: from mail-pg1-x531.google.com (mail-pg1-x531.google.com [2607:f8b0:4864:20::531]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 14caff70-002b-11ee-b231-6b7b168915f2; Thu, 01 Jun 2023 05:19:13 +0200 (CEST) Received: by mail-pg1-x531.google.com with SMTP id 41be03b00d2f7-53487355877so151114a12.1 for ; Wed, 31 May 2023 20:19:13 -0700 (PDT) Received: from alarm.flets-east.jp ([2400:4050:a840:1e00:78d2:b862:10a7:d486]) by smtp.gmail.com with ESMTPSA id jd5-20020a170903260500b001a245b49731sm2146753plb.128.2023.05.31.20.19.03 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 31 May 2023 20:19:11 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 14caff70-002b-11ee-b231-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=daynix-com.20221208.gappssmtp.com; s=20221208; t=1685589552; x=1688181552; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=FrfFhcpCDB+Tgl6xUiFVZLlSppgb/hsoX/FxVOIbZUk=; b=z1bUqRtFniqO+bDSlNVkZdAPV7g6hOQkUnZEIvrkOpa1HB1WNNSeN+5GTor/T6EdBn 9rZ1e3RoJk8fMmy0+yMVpIgUAJZC3kR34QzL4JKGdEQQw+wZgt/ELbpHmVqTt+ZreuIu +nP5HB9cjZCnC7Cvfx9CdY8c7kEdx7r0R0fVVhuLS2Wl50qjZqIfWWlbubifFz9rqisq qcxXFv9ln2tNzelTaAIHYnEoyHXwi4+5m8yk8EMC/8YQ+Q8GeAyqjLYt4NQMb4h0N97f hoF95xvRgTZpKgNF4BGKaeuQDDq5lxnX8MCA6TPZHsURpnSVbvHzPJzKgiDxCd8Rg29I huRg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1685589552; x=1688181552; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=FrfFhcpCDB+Tgl6xUiFVZLlSppgb/hsoX/FxVOIbZUk=; b=EXNmLjzJspQhfCpXiyLwoxUp8sKIhvwL33LnL6T8QZ64LYin0vWn5j0G18Xd5pxfLm aDnxkSBY6tz+CiFBsRnRZXMKHxfjHb+2QXHYN0AcPPdtyW+5YYnJ9928HEHDIYJdhbU1 YVe6tAu0kBIX6EVg6V3bHl3S7wQQbjB/UKoEHDRFTqMhhjB2O//bi0V1RsEF1yEq4+A5 KKlbsm8TCGgX+Sv83CIofIYx7+OgYRRaiylm8XTQMG1eIybzPtrU8DHiNtngMqQcTNj3 xLrGq079YHxu9zxDdxKxPnF5BHnLWRwcL0QFWc/LzLzwEuaUV/uzmG6yKZfBTSOTqL/x xQkA== X-Gm-Message-State: AC+VfDx0426Yls/gC5MDoczXfwDXWALTN80VonQyo4Nb7xxt+PQZEqhI mO1aEgtmaAFBVXXvUdEhzL6d/w== X-Google-Smtp-Source: ACHHUZ4MZp29o+MFds/2GU+jNfvYE9Eyik8T0K+uVPXBV8iQEJ2uPuzNs2Z4+TUkzOA+GoV0RyHdvA== X-Received: by 2002:a05:6a20:2326:b0:10b:bf3d:bc5d with SMTP id n38-20020a056a20232600b0010bbf3dbc5dmr4805679pzc.47.1685589552099; Wed, 31 May 2023 20:19:12 -0700 (PDT) From: Akihiko Odaki To: Cc: Mauro Matteo Cascella , P J P , Alexander Bulekov , Dmitry Fleytman , Beniamino Galvani , Peter Maydell , Strahinja Jankovic , Jason Wang , "Edgar E. Iglesias" , Alistair Francis , Stefan Weil , =?UTF-8?q?C=C3=A9dric=20Le=20Goater?= , Andrew Jeffery , Joel Stanley , Richard Henderson , Helge Deller , Sriram Yagnaraman , Thomas Huth , Aleksandar Rikalo , Subbaraya Sundeep , Jan Kiszka , Tyrone Ting , Hao Wu , Max Filippov , Jiri Pirko , Daniel Henrique Barboza , David Gibson , Greg Kurz , Harsh Prateek Bora , Sven Schnelle , "Michael S. Tsirkin" , Stefano Stabellini , Anthony Perard , Paul Durrant , Rob Herring , Gerd Hoffmann , qemu-arm@nongnu.org, qemu-devel@nongnu.org, qemu-ppc@nongnu.org, xen-devel@lists.xenproject.org, Akihiko Odaki Subject: [PATCH v2 0/2] net: Update MemReentrancyGuard for NIC Date: Thu, 1 Jun 2023 12:18:57 +0900 Message-Id: <20230601031859.7115-1-akihiko.odaki@daynix.com> X-Mailer: git-send-email 2.40.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Recently MemReentrancyGuard was added to DeviceState to record that the device is engaging in I/O. The network device backend needs to update it when delivering a packet to a device. This implementation follows what bottom half does, but it does not add a tracepoint for the case that the network device backend started delivering a packet to a device which is already engaging in I/O. This is because such reentrancy frequently happens for qemu_flush_queued_packets() and is insignificant. This series consists of two patches. The first patch makes a bulk change to add a new parameter to qemu_new_nic() and does not contain behavioral changes. The second patch actually implements MemReentrancyGuard update. V1 -> V2: Added the 'Fixes: CVE-2023-3019' tag Akihiko Odaki (2): net: Provide MemReentrancyGuard * to qemu_new_nic() net: Update MemReentrancyGuard for NIC include/net/net.h | 2 ++ hw/net/allwinner-sun8i-emac.c | 3 ++- hw/net/allwinner_emac.c | 3 ++- hw/net/cadence_gem.c | 3 ++- hw/net/dp8393x.c | 3 ++- hw/net/e1000.c | 3 ++- hw/net/e1000e.c | 2 +- hw/net/eepro100.c | 4 +++- hw/net/etraxfs_eth.c | 3 ++- hw/net/fsl_etsec/etsec.c | 3 ++- hw/net/ftgmac100.c | 3 ++- hw/net/i82596.c | 2 +- hw/net/igb.c | 2 +- hw/net/imx_fec.c | 2 +- hw/net/lan9118.c | 3 ++- hw/net/mcf_fec.c | 3 ++- hw/net/mipsnet.c | 3 ++- hw/net/msf2-emac.c | 3 ++- hw/net/mv88w8618_eth.c | 3 ++- hw/net/ne2000-isa.c | 3 ++- hw/net/ne2000-pci.c | 3 ++- hw/net/npcm7xx_emc.c | 3 ++- hw/net/opencores_eth.c | 3 ++- hw/net/pcnet.c | 3 ++- hw/net/rocker/rocker_fp.c | 4 ++-- hw/net/rtl8139.c | 3 ++- hw/net/smc91c111.c | 3 ++- hw/net/spapr_llan.c | 3 ++- hw/net/stellaris_enet.c | 3 ++- hw/net/sungem.c | 2 +- hw/net/sunhme.c | 3 ++- hw/net/tulip.c | 3 ++- hw/net/virtio-net.c | 6 ++++-- hw/net/vmxnet3.c | 2 +- hw/net/xen_nic.c | 4 ++-- hw/net/xgmac.c | 3 ++- hw/net/xilinx_axienet.c | 3 ++- hw/net/xilinx_ethlite.c | 3 ++- hw/usb/dev-network.c | 3 ++- net/net.c | 15 +++++++++++++++ 40 files changed, 90 insertions(+), 41 deletions(-) -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 01 03:19:30 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 03:19:30 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542205.845802 (Exim 4.92) (envelope-from ) id 1q4YqS-0002ms-BC; Thu, 01 Jun 2023 03:19:24 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542205.845802; Thu, 01 Jun 2023 03:19:24 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4YqS-0002ml-7G; Thu, 01 Jun 2023 03:19:24 +0000 Received: by outflank-mailman (input) for mailman id 542205; Thu, 01 Jun 2023 03:19:23 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4YqQ-0002Ws-Va for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 03:19:23 +0000 Received: from mail-oi1-x230.google.com (mail-oi1-x230.google.com [2607:f8b0:4864:20::230]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 1994d197-002b-11ee-b231-6b7b168915f2; Thu, 01 Jun 2023 05:19:21 +0200 (CEST) Received: by mail-oi1-x230.google.com with SMTP id 5614622812f47-3942c6584f0so170920b6e.3 for ; Wed, 31 May 2023 20:19:21 -0700 (PDT) Received: from alarm.flets-east.jp ([2400:4050:a840:1e00:78d2:b862:10a7:d486]) by smtp.gmail.com with ESMTPSA id jd5-20020a170903260500b001a245b49731sm2146753plb.128.2023.05.31.20.19.12 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 31 May 2023 20:19:19 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 1994d197-002b-11ee-b231-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=daynix-com.20221208.gappssmtp.com; s=20221208; t=1685589560; x=1688181560; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=DUSBfeomTiau/0Y+TQ+XPKgzi9WAbYuw9lFLHs7E/DQ=; b=ktmRdvCxQh3OSxTh6Gi0PJfz9ly53h7ig1Gt6xyK+psiO5OhSI0KHf5e/NlBgMNL3q M/cbePLQW+A8/8bdFCY2HVoDnxp6qfzph4eusHS2DVSDQ6ij7RHH6UI9+owI+bqa0vXb EigZ6jKCpAG9gsxBJJGqti2X+y7fZsw01brJz86/uaoEE+p+Q2A5YGmQpp+6I0e4rbLa NXnaL6nmc4LLWDcKq6rUOcU/NbpcqxZPCqvYfQpAdf687RnQNDY8fmCJ5hDIjyKQb8Av 3mCevINLqtO0lCK0tomtm9LyVbcU7eo+n/jHxNij7l+6LgzWbmgGsJqI4nmJvk8c9lzB r/Fg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1685589560; x=1688181560; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=DUSBfeomTiau/0Y+TQ+XPKgzi9WAbYuw9lFLHs7E/DQ=; b=T0/CpjdHgRK/cyaDo9b9wUY3ZdWHMv3+LWiYdK7DsGc75vQpM34mVUJ4L9vAKemAAD Q1EqyRcyrujTpXP7Pref7kfxKkP56rjx4dLeXRgaf+WZsvZ8h7NzPaqJ0J0idPoh1oW/ neOfu4Q0cknh9lk5pxDSQh8OK0G7KiACsfPEhYJ0522Fwijzwo1ps9yhExYDDE+UQ4dO UdKefLGN662fCIztq8Wn+mMJroVc9P6VQMEOzHgKjFUgTVdYV4KKbWPIbA97NY6Ls9rk kgaKk0rgz15NhINDiiWG0wW51JA/gc8WzAFeoTCjIHjdpbH0G4t1/a2Mib2ojglKuYGZ +OjA== X-Gm-Message-State: AC+VfDzr0HvbYVO4pRu1Pp8wIkwKZa9q/neVK4H62QYGs3PRNZQTjW6M pCoRyTvLTo+ibnvbKohgHUHm0g== X-Google-Smtp-Source: ACHHUZ4bUwiaZKyiJNsizHeBIbRdxZW/2mS/rIyfFoNxCSztFEnD/ZeaQdzqc+kZEZWDCBJJUfXIYA== X-Received: by 2002:aca:f088:0:b0:383:e7c8:4000 with SMTP id o130-20020acaf088000000b00383e7c84000mr5341996oih.13.1685589560037; Wed, 31 May 2023 20:19:20 -0700 (PDT) From: Akihiko Odaki To: Cc: Mauro Matteo Cascella , P J P , Alexander Bulekov , Dmitry Fleytman , Beniamino Galvani , Peter Maydell , Strahinja Jankovic , Jason Wang , "Edgar E. Iglesias" , Alistair Francis , Stefan Weil , =?UTF-8?q?C=C3=A9dric=20Le=20Goater?= , Andrew Jeffery , Joel Stanley , Richard Henderson , Helge Deller , Sriram Yagnaraman , Thomas Huth , Aleksandar Rikalo , Subbaraya Sundeep , Jan Kiszka , Tyrone Ting , Hao Wu , Max Filippov , Jiri Pirko , Daniel Henrique Barboza , David Gibson , Greg Kurz , Harsh Prateek Bora , Sven Schnelle , "Michael S. Tsirkin" , Stefano Stabellini , Anthony Perard , Paul Durrant , Rob Herring , Gerd Hoffmann , qemu-arm@nongnu.org, qemu-devel@nongnu.org, qemu-ppc@nongnu.org, xen-devel@lists.xenproject.org, Akihiko Odaki Subject: [PATCH v2 1/2] net: Provide MemReentrancyGuard * to qemu_new_nic() Date: Thu, 1 Jun 2023 12:18:58 +0900 Message-Id: <20230601031859.7115-2-akihiko.odaki@daynix.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230601031859.7115-1-akihiko.odaki@daynix.com> References: <20230601031859.7115-1-akihiko.odaki@daynix.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Recently MemReentrancyGuard was added to DeviceState to record that the device is engaging in I/O. The network device backend needs to update it when delivering a packet to a device. In preparation for such a change, add MemReentrancyGuard * as a parameter of qemu_new_nic(). Signed-off-by: Akihiko Odaki --- include/net/net.h | 1 + hw/net/allwinner-sun8i-emac.c | 3 ++- hw/net/allwinner_emac.c | 3 ++- hw/net/cadence_gem.c | 3 ++- hw/net/dp8393x.c | 3 ++- hw/net/e1000.c | 3 ++- hw/net/e1000e.c | 2 +- hw/net/eepro100.c | 4 +++- hw/net/etraxfs_eth.c | 3 ++- hw/net/fsl_etsec/etsec.c | 3 ++- hw/net/ftgmac100.c | 3 ++- hw/net/i82596.c | 2 +- hw/net/igb.c | 2 +- hw/net/imx_fec.c | 2 +- hw/net/lan9118.c | 3 ++- hw/net/mcf_fec.c | 3 ++- hw/net/mipsnet.c | 3 ++- hw/net/msf2-emac.c | 3 ++- hw/net/mv88w8618_eth.c | 3 ++- hw/net/ne2000-isa.c | 3 ++- hw/net/ne2000-pci.c | 3 ++- hw/net/npcm7xx_emc.c | 3 ++- hw/net/opencores_eth.c | 3 ++- hw/net/pcnet.c | 3 ++- hw/net/rocker/rocker_fp.c | 4 ++-- hw/net/rtl8139.c | 3 ++- hw/net/smc91c111.c | 3 ++- hw/net/spapr_llan.c | 3 ++- hw/net/stellaris_enet.c | 3 ++- hw/net/sungem.c | 2 +- hw/net/sunhme.c | 3 ++- hw/net/tulip.c | 3 ++- hw/net/virtio-net.c | 6 ++++-- hw/net/vmxnet3.c | 2 +- hw/net/xen_nic.c | 4 ++-- hw/net/xgmac.c | 3 ++- hw/net/xilinx_axienet.c | 3 ++- hw/net/xilinx_ethlite.c | 3 ++- hw/usb/dev-network.c | 3 ++- net/net.c | 1 + 40 files changed, 75 insertions(+), 41 deletions(-) diff --git a/include/net/net.h b/include/net/net.h index 1448d00afb..a7d8deaccb 100644 --- a/include/net/net.h +++ b/include/net/net.h @@ -157,6 +157,7 @@ NICState *qemu_new_nic(NetClientInfo *info, NICConf *conf, const char *model, const char *name, + MemReentrancyGuard *reentrancy_guard, void *opaque); void qemu_del_nic(NICState *nic); NetClientState *qemu_get_subqueue(NICState *nic, int queue_index); diff --git a/hw/net/allwinner-sun8i-emac.c b/hw/net/allwinner-sun8i-emac.c index fac4405f45..cc350d40e5 100644 --- a/hw/net/allwinner-sun8i-emac.c +++ b/hw/net/allwinner-sun8i-emac.c @@ -824,7 +824,8 @@ static void allwinner_sun8i_emac_realize(DeviceState *dev, Error **errp) qemu_macaddr_default_if_unset(&s->conf.macaddr); s->nic = qemu_new_nic(&net_allwinner_sun8i_emac_info, &s->conf, - object_get_typename(OBJECT(dev)), dev->id, s); + object_get_typename(OBJECT(dev)), dev->id, + &dev->mem_reentrancy_guard, s); qemu_format_nic_info_str(qemu_get_queue(s->nic), s->conf.macaddr.a); } diff --git a/hw/net/allwinner_emac.c b/hw/net/allwinner_emac.c index 372e5b66da..e10965de14 100644 --- a/hw/net/allwinner_emac.c +++ b/hw/net/allwinner_emac.c @@ -453,7 +453,8 @@ static void aw_emac_realize(DeviceState *dev, Error **errp) qemu_macaddr_default_if_unset(&s->conf.macaddr); s->nic = qemu_new_nic(&net_aw_emac_info, &s->conf, - object_get_typename(OBJECT(dev)), dev->id, s); + object_get_typename(OBJECT(dev)), dev->id, + &dev->mem_reentrancy_guard, s); qemu_format_nic_info_str(qemu_get_queue(s->nic), s->conf.macaddr.a); fifo8_create(&s->rx_fifo, RX_FIFO_SIZE); diff --git a/hw/net/cadence_gem.c b/hw/net/cadence_gem.c index 42ea2411a2..a7bce1c120 100644 --- a/hw/net/cadence_gem.c +++ b/hw/net/cadence_gem.c @@ -1633,7 +1633,8 @@ static void gem_realize(DeviceState *dev, Error **errp) qemu_macaddr_default_if_unset(&s->conf.macaddr); s->nic = qemu_new_nic(&net_gem_info, &s->conf, - object_get_typename(OBJECT(dev)), dev->id, s); + object_get_typename(OBJECT(dev)), dev->id, + &dev->mem_reentrancy_guard, s); if (s->jumbo_max_len > MAX_FRAME_SIZE) { error_setg(errp, "jumbo-max-len is greater than %d", diff --git a/hw/net/dp8393x.c b/hw/net/dp8393x.c index 45b954e46c..abfcc6f69f 100644 --- a/hw/net/dp8393x.c +++ b/hw/net/dp8393x.c @@ -943,7 +943,8 @@ static void dp8393x_realize(DeviceState *dev, Error **errp) "dp8393x-regs", SONIC_REG_COUNT << s->it_shift); s->nic = qemu_new_nic(&net_dp83932_info, &s->conf, - object_get_typename(OBJECT(dev)), dev->id, s); + object_get_typename(OBJECT(dev)), dev->id, + &dev->mem_reentrancy_guard, s); qemu_format_nic_info_str(qemu_get_queue(s->nic), s->conf.macaddr.a); s->watchdog = timer_new_ns(QEMU_CLOCK_VIRTUAL, dp8393x_watchdog, s); diff --git a/hw/net/e1000.c b/hw/net/e1000.c index 4dc4dd7704..7581378226 100644 --- a/hw/net/e1000.c +++ b/hw/net/e1000.c @@ -1696,7 +1696,8 @@ static void pci_e1000_realize(PCIDevice *pci_dev, Error **errp) macaddr); d->nic = qemu_new_nic(&net_e1000_info, &d->conf, - object_get_typename(OBJECT(d)), dev->id, d); + object_get_typename(OBJECT(d)), dev->id, + &dev->mem_reentrancy_guard, d); qemu_format_nic_info_str(qemu_get_queue(d->nic), macaddr); diff --git a/hw/net/e1000e.c b/hw/net/e1000e.c index c3848797b8..e41a6c1038 100644 --- a/hw/net/e1000e.c +++ b/hw/net/e1000e.c @@ -320,7 +320,7 @@ e1000e_init_net_peer(E1000EState *s, PCIDevice *pci_dev, uint8_t *macaddr) int i; s->nic = qemu_new_nic(&net_e1000e_info, &s->conf, - object_get_typename(OBJECT(s)), dev->id, s); + object_get_typename(OBJECT(s)), dev->id, &dev->mem_reentrancy_guard, s); s->core.max_queue_num = s->conf.peers.queues ? s->conf.peers.queues - 1 : 0; diff --git a/hw/net/eepro100.c b/hw/net/eepro100.c index dc07984ae9..e2b03b787d 100644 --- a/hw/net/eepro100.c +++ b/hw/net/eepro100.c @@ -1874,7 +1874,9 @@ static void e100_nic_realize(PCIDevice *pci_dev, Error **errp) nic_reset(s); s->nic = qemu_new_nic(&net_eepro100_info, &s->conf, - object_get_typename(OBJECT(pci_dev)), pci_dev->qdev.id, s); + object_get_typename(OBJECT(pci_dev)), + pci_dev->qdev.id, + &pci_dev->qdev.mem_reentrancy_guard, s); qemu_format_nic_info_str(qemu_get_queue(s->nic), s->conf.macaddr.a); TRACE(OTHER, logout("%s\n", qemu_get_queue(s->nic)->info_str)); diff --git a/hw/net/etraxfs_eth.c b/hw/net/etraxfs_eth.c index 1b82aec794..ba57a978d1 100644 --- a/hw/net/etraxfs_eth.c +++ b/hw/net/etraxfs_eth.c @@ -618,7 +618,8 @@ static void etraxfs_eth_realize(DeviceState *dev, Error **errp) qemu_macaddr_default_if_unset(&s->conf.macaddr); s->nic = qemu_new_nic(&net_etraxfs_info, &s->conf, - object_get_typename(OBJECT(s)), dev->id, s); + object_get_typename(OBJECT(s)), dev->id, + &dev->mem_reentrancy_guard, s); qemu_format_nic_info_str(qemu_get_queue(s->nic), s->conf.macaddr.a); s->phy.read = tdk_read; diff --git a/hw/net/fsl_etsec/etsec.c b/hw/net/fsl_etsec/etsec.c index 798ea33d08..00315f305d 100644 --- a/hw/net/fsl_etsec/etsec.c +++ b/hw/net/fsl_etsec/etsec.c @@ -391,7 +391,8 @@ static void etsec_realize(DeviceState *dev, Error **errp) eTSEC *etsec = ETSEC_COMMON(dev); etsec->nic = qemu_new_nic(&net_etsec_info, &etsec->conf, - object_get_typename(OBJECT(dev)), dev->id, etsec); + object_get_typename(OBJECT(dev)), dev->id, + &dev->mem_reentrancy_guard, etsec); qemu_format_nic_info_str(qemu_get_queue(etsec->nic), etsec->conf.macaddr.a); etsec->ptimer = ptimer_init(etsec_timer_hit, etsec, PTIMER_POLICY_LEGACY); diff --git a/hw/net/ftgmac100.c b/hw/net/ftgmac100.c index d3bf14be53..be2cf63c08 100644 --- a/hw/net/ftgmac100.c +++ b/hw/net/ftgmac100.c @@ -1118,7 +1118,8 @@ static void ftgmac100_realize(DeviceState *dev, Error **errp) qemu_macaddr_default_if_unset(&s->conf.macaddr); s->nic = qemu_new_nic(&net_ftgmac100_info, &s->conf, - object_get_typename(OBJECT(dev)), dev->id, s); + object_get_typename(OBJECT(dev)), dev->id, + &dev->mem_reentrancy_guard, s); qemu_format_nic_info_str(qemu_get_queue(s->nic), s->conf.macaddr.a); } diff --git a/hw/net/i82596.c b/hw/net/i82596.c index ec21e2699a..dc64246f75 100644 --- a/hw/net/i82596.c +++ b/hw/net/i82596.c @@ -743,7 +743,7 @@ void i82596_common_init(DeviceState *dev, I82596State *s, NetClientInfo *info) qemu_macaddr_default_if_unset(&s->conf.macaddr); } s->nic = qemu_new_nic(info, &s->conf, object_get_typename(OBJECT(dev)), - dev->id, s); + dev->id, &dev->mem_reentrancy_guard, s); qemu_format_nic_info_str(qemu_get_queue(s->nic), s->conf.macaddr.a); if (USE_TIMER) { diff --git a/hw/net/igb.c b/hw/net/igb.c index 1c989d7677..141bc56d79 100644 --- a/hw/net/igb.c +++ b/hw/net/igb.c @@ -315,7 +315,7 @@ igb_init_net_peer(IGBState *s, PCIDevice *pci_dev, uint8_t *macaddr) int i; s->nic = qemu_new_nic(&net_igb_info, &s->conf, - object_get_typename(OBJECT(s)), dev->id, s); + object_get_typename(OBJECT(s)), dev->id, &dev->mem_reentrancy_guard, s); s->core.max_queue_num = s->conf.peers.queues ? s->conf.peers.queues - 1 : 0; diff --git a/hw/net/imx_fec.c b/hw/net/imx_fec.c index 5d1f1f104c..6881e3e4f0 100644 --- a/hw/net/imx_fec.c +++ b/hw/net/imx_fec.c @@ -1334,7 +1334,7 @@ static void imx_eth_realize(DeviceState *dev, Error **errp) s->nic = qemu_new_nic(&imx_eth_net_info, &s->conf, object_get_typename(OBJECT(dev)), - dev->id, s); + dev->id, &dev->mem_reentrancy_guard, s); qemu_format_nic_info_str(qemu_get_queue(s->nic), s->conf.macaddr.a); } diff --git a/hw/net/lan9118.c b/hw/net/lan9118.c index e5c4af182d..cf7b8c897a 100644 --- a/hw/net/lan9118.c +++ b/hw/net/lan9118.c @@ -1361,7 +1361,8 @@ static void lan9118_realize(DeviceState *dev, Error **errp) qemu_macaddr_default_if_unset(&s->conf.macaddr); s->nic = qemu_new_nic(&net_lan9118_info, &s->conf, - object_get_typename(OBJECT(dev)), dev->id, s); + object_get_typename(OBJECT(dev)), dev->id, + &dev->mem_reentrancy_guard, s); qemu_format_nic_info_str(qemu_get_queue(s->nic), s->conf.macaddr.a); s->eeprom[0] = 0xa5; for (i = 0; i < 6; i++) { diff --git a/hw/net/mcf_fec.c b/hw/net/mcf_fec.c index 8aa27bd322..57dd49abea 100644 --- a/hw/net/mcf_fec.c +++ b/hw/net/mcf_fec.c @@ -643,7 +643,8 @@ static void mcf_fec_realize(DeviceState *dev, Error **errp) mcf_fec_state *s = MCF_FEC_NET(dev); s->nic = qemu_new_nic(&net_mcf_fec_info, &s->conf, - object_get_typename(OBJECT(dev)), dev->id, s); + object_get_typename(OBJECT(dev)), dev->id, + &dev->mem_reentrancy_guard, s); qemu_format_nic_info_str(qemu_get_queue(s->nic), s->conf.macaddr.a); } diff --git a/hw/net/mipsnet.c b/hw/net/mipsnet.c index 2ade72dea0..8e925de867 100644 --- a/hw/net/mipsnet.c +++ b/hw/net/mipsnet.c @@ -255,7 +255,8 @@ static void mipsnet_realize(DeviceState *dev, Error **errp) sysbus_init_irq(sbd, &s->irq); s->nic = qemu_new_nic(&net_mipsnet_info, &s->conf, - object_get_typename(OBJECT(dev)), dev->id, s); + object_get_typename(OBJECT(dev)), dev->id, + &dev->mem_reentrancy_guard, s); qemu_format_nic_info_str(qemu_get_queue(s->nic), s->conf.macaddr.a); } diff --git a/hw/net/msf2-emac.c b/hw/net/msf2-emac.c index db3a04deb1..145a5e46ab 100644 --- a/hw/net/msf2-emac.c +++ b/hw/net/msf2-emac.c @@ -530,7 +530,8 @@ static void msf2_emac_realize(DeviceState *dev, Error **errp) qemu_macaddr_default_if_unset(&s->conf.macaddr); s->nic = qemu_new_nic(&net_msf2_emac_info, &s->conf, - object_get_typename(OBJECT(dev)), dev->id, s); + object_get_typename(OBJECT(dev)), dev->id, + &dev->mem_reentrancy_guard, s); qemu_format_nic_info_str(qemu_get_queue(s->nic), s->conf.macaddr.a); } diff --git a/hw/net/mv88w8618_eth.c b/hw/net/mv88w8618_eth.c index ef30b0d4a6..2185f1131a 100644 --- a/hw/net/mv88w8618_eth.c +++ b/hw/net/mv88w8618_eth.c @@ -350,7 +350,8 @@ static void mv88w8618_eth_realize(DeviceState *dev, Error **errp) address_space_init(&s->dma_as, s->dma_mr, "emac-dma"); s->nic = qemu_new_nic(&net_mv88w8618_info, &s->conf, - object_get_typename(OBJECT(dev)), dev->id, s); + object_get_typename(OBJECT(dev)), dev->id, + &dev->mem_reentrancy_guard, s); } static const VMStateDescription mv88w8618_eth_vmsd = { diff --git a/hw/net/ne2000-isa.c b/hw/net/ne2000-isa.c index 6ced6775ff..a79f7fad1f 100644 --- a/hw/net/ne2000-isa.c +++ b/hw/net/ne2000-isa.c @@ -74,7 +74,8 @@ static void isa_ne2000_realizefn(DeviceState *dev, Error **errp) ne2000_reset(s); s->nic = qemu_new_nic(&net_ne2000_isa_info, &s->c, - object_get_typename(OBJECT(dev)), dev->id, s); + object_get_typename(OBJECT(dev)), dev->id, + &dev->mem_reentrancy_guard, s); qemu_format_nic_info_str(qemu_get_queue(s->nic), s->c.macaddr.a); } diff --git a/hw/net/ne2000-pci.c b/hw/net/ne2000-pci.c index edc6689d33..fee93c6ec0 100644 --- a/hw/net/ne2000-pci.c +++ b/hw/net/ne2000-pci.c @@ -71,7 +71,8 @@ static void pci_ne2000_realize(PCIDevice *pci_dev, Error **errp) s->nic = qemu_new_nic(&net_ne2000_info, &s->c, object_get_typename(OBJECT(pci_dev)), - pci_dev->qdev.id, s); + pci_dev->qdev.id, + &pci_dev->qdev.mem_reentrancy_guard, s); qemu_format_nic_info_str(qemu_get_queue(s->nic), s->c.macaddr.a); } diff --git a/hw/net/npcm7xx_emc.c b/hw/net/npcm7xx_emc.c index 8156f701b0..1d4e8f59f3 100644 --- a/hw/net/npcm7xx_emc.c +++ b/hw/net/npcm7xx_emc.c @@ -821,7 +821,8 @@ static void npcm7xx_emc_realize(DeviceState *dev, Error **errp) qemu_macaddr_default_if_unset(&emc->conf.macaddr); emc->nic = qemu_new_nic(&net_npcm7xx_emc_info, &emc->conf, - object_get_typename(OBJECT(dev)), dev->id, emc); + object_get_typename(OBJECT(dev)), dev->id, + &dev->mem_reentrancy_guard, emc); qemu_format_nic_info_str(qemu_get_queue(emc->nic), emc->conf.macaddr.a); } diff --git a/hw/net/opencores_eth.c b/hw/net/opencores_eth.c index 0b3dc3146e..f96d6ea2cc 100644 --- a/hw/net/opencores_eth.c +++ b/hw/net/opencores_eth.c @@ -732,7 +732,8 @@ static void sysbus_open_eth_realize(DeviceState *dev, Error **errp) sysbus_init_irq(sbd, &s->irq); s->nic = qemu_new_nic(&net_open_eth_info, &s->conf, - object_get_typename(OBJECT(s)), dev->id, s); + object_get_typename(OBJECT(s)), dev->id, + &dev->mem_reentrancy_guard, s); } static void qdev_open_eth_reset(DeviceState *dev) diff --git a/hw/net/pcnet.c b/hw/net/pcnet.c index d456094575..1627f6939c 100644 --- a/hw/net/pcnet.c +++ b/hw/net/pcnet.c @@ -1718,7 +1718,8 @@ void pcnet_common_init(DeviceState *dev, PCNetState *s, NetClientInfo *info) s->poll_timer = timer_new_ns(QEMU_CLOCK_VIRTUAL, pcnet_poll_timer, s); qemu_macaddr_default_if_unset(&s->conf.macaddr); - s->nic = qemu_new_nic(info, &s->conf, object_get_typename(OBJECT(dev)), dev->id, s); + s->nic = qemu_new_nic(info, &s->conf, object_get_typename(OBJECT(dev)), + dev->id, &dev->mem_reentrancy_guard, s); qemu_format_nic_info_str(qemu_get_queue(s->nic), s->conf.macaddr.a); /* Initialize the PROM */ diff --git a/hw/net/rocker/rocker_fp.c b/hw/net/rocker/rocker_fp.c index cbeed65bd5..0d21948ada 100644 --- a/hw/net/rocker/rocker_fp.c +++ b/hw/net/rocker/rocker_fp.c @@ -241,8 +241,8 @@ FpPort *fp_port_alloc(Rocker *r, char *sw_name, port->conf.bootindex = -1; port->conf.peers = *peers; - port->nic = qemu_new_nic(&fp_port_info, &port->conf, - sw_name, NULL, port); + port->nic = qemu_new_nic(&fp_port_info, &port->conf, sw_name, NULL, + &DEVICE(r)->mem_reentrancy_guard, port); qemu_format_nic_info_str(qemu_get_queue(port->nic), port->conf.macaddr.a); diff --git a/hw/net/rtl8139.c b/hw/net/rtl8139.c index 5a5aaf868d..f4df03af71 100644 --- a/hw/net/rtl8139.c +++ b/hw/net/rtl8139.c @@ -3397,7 +3397,8 @@ static void pci_rtl8139_realize(PCIDevice *dev, Error **errp) s->eeprom.contents[9] = s->conf.macaddr.a[4] | s->conf.macaddr.a[5] << 8; s->nic = qemu_new_nic(&net_rtl8139_info, &s->conf, - object_get_typename(OBJECT(dev)), d->id, s); + object_get_typename(OBJECT(dev)), d->id, + &d->mem_reentrancy_guard, s); qemu_format_nic_info_str(qemu_get_queue(s->nic), s->conf.macaddr.a); s->cplus_txbuffer = NULL; diff --git a/hw/net/smc91c111.c b/hw/net/smc91c111.c index ad778cd8fc..4eda971ef3 100644 --- a/hw/net/smc91c111.c +++ b/hw/net/smc91c111.c @@ -783,7 +783,8 @@ static void smc91c111_realize(DeviceState *dev, Error **errp) sysbus_init_irq(sbd, &s->irq); qemu_macaddr_default_if_unset(&s->conf.macaddr); s->nic = qemu_new_nic(&net_smc91c111_info, &s->conf, - object_get_typename(OBJECT(dev)), dev->id, s); + object_get_typename(OBJECT(dev)), dev->id, + &dev->mem_reentrancy_guard, s); qemu_format_nic_info_str(qemu_get_queue(s->nic), s->conf.macaddr.a); /* ??? Save/restore. */ } diff --git a/hw/net/spapr_llan.c b/hw/net/spapr_llan.c index a6876a936d..475d5f3a34 100644 --- a/hw/net/spapr_llan.c +++ b/hw/net/spapr_llan.c @@ -325,7 +325,8 @@ static void spapr_vlan_realize(SpaprVioDevice *sdev, Error **errp) memcpy(&dev->perm_mac.a, &dev->nicconf.macaddr.a, sizeof(dev->perm_mac.a)); dev->nic = qemu_new_nic(&net_spapr_vlan_info, &dev->nicconf, - object_get_typename(OBJECT(sdev)), sdev->qdev.id, dev); + object_get_typename(OBJECT(sdev)), sdev->qdev.id, + &sdev->qdev.mem_reentrancy_guard, dev); qemu_format_nic_info_str(qemu_get_queue(dev->nic), dev->nicconf.macaddr.a); dev->rxp_timer = timer_new_us(QEMU_CLOCK_VIRTUAL, spapr_vlan_flush_rx_queue, diff --git a/hw/net/stellaris_enet.c b/hw/net/stellaris_enet.c index 8dd60783d8..6768a6912f 100644 --- a/hw/net/stellaris_enet.c +++ b/hw/net/stellaris_enet.c @@ -492,7 +492,8 @@ static void stellaris_enet_realize(DeviceState *dev, Error **errp) qemu_macaddr_default_if_unset(&s->conf.macaddr); s->nic = qemu_new_nic(&net_stellaris_enet_info, &s->conf, - object_get_typename(OBJECT(dev)), dev->id, s); + object_get_typename(OBJECT(dev)), dev->id, + &dev->mem_reentrancy_guard, s); qemu_format_nic_info_str(qemu_get_queue(s->nic), s->conf.macaddr.a); } diff --git a/hw/net/sungem.c b/hw/net/sungem.c index eb01520790..347ccdd19d 100644 --- a/hw/net/sungem.c +++ b/hw/net/sungem.c @@ -1361,7 +1361,7 @@ static void sungem_realize(PCIDevice *pci_dev, Error **errp) qemu_macaddr_default_if_unset(&s->conf.macaddr); s->nic = qemu_new_nic(&net_sungem_info, &s->conf, object_get_typename(OBJECT(dev)), - dev->id, s); + dev->id, &dev->mem_reentrancy_guard, s); qemu_format_nic_info_str(qemu_get_queue(s->nic), s->conf.macaddr.a); } diff --git a/hw/net/sunhme.c b/hw/net/sunhme.c index 1f3d8011ae..82e38a428a 100644 --- a/hw/net/sunhme.c +++ b/hw/net/sunhme.c @@ -892,7 +892,8 @@ static void sunhme_realize(PCIDevice *pci_dev, Error **errp) qemu_macaddr_default_if_unset(&s->conf.macaddr); s->nic = qemu_new_nic(&net_sunhme_info, &s->conf, - object_get_typename(OBJECT(d)), d->id, s); + object_get_typename(OBJECT(d)), d->id, + &d->mem_reentrancy_guard, s); qemu_format_nic_info_str(qemu_get_queue(s->nic), s->conf.macaddr.a); } diff --git a/hw/net/tulip.c b/hw/net/tulip.c index 915e5fb595..1f8e45de5e 100644 --- a/hw/net/tulip.c +++ b/hw/net/tulip.c @@ -983,7 +983,8 @@ static void pci_tulip_realize(PCIDevice *pci_dev, Error **errp) s->nic = qemu_new_nic(&net_tulip_info, &s->c, object_get_typename(OBJECT(pci_dev)), - pci_dev->qdev.id, s); + pci_dev->qdev.id, + &pci_dev->qdev.mem_reentrancy_guard, s); qemu_format_nic_info_str(qemu_get_queue(s->nic), s->c.macaddr.a); } diff --git a/hw/net/virtio-net.c b/hw/net/virtio-net.c index ed9f240bfd..9728158b72 100644 --- a/hw/net/virtio-net.c +++ b/hw/net/virtio-net.c @@ -3696,10 +3696,12 @@ static void virtio_net_device_realize(DeviceState *dev, Error **errp) * Happen when virtio_net_set_netclient_name has been called. */ n->nic = qemu_new_nic(&net_virtio_info, &n->nic_conf, - n->netclient_type, n->netclient_name, n); + n->netclient_type, n->netclient_name, + &dev->mem_reentrancy_guard, n); } else { n->nic = qemu_new_nic(&net_virtio_info, &n->nic_conf, - object_get_typename(OBJECT(dev)), dev->id, n); + object_get_typename(OBJECT(dev)), dev->id, + &dev->mem_reentrancy_guard, n); } for (i = 0; i < n->max_queue_pairs; i++) { diff --git a/hw/net/vmxnet3.c b/hw/net/vmxnet3.c index 18b9edfdb2..5051818fe4 100644 --- a/hw/net/vmxnet3.c +++ b/hw/net/vmxnet3.c @@ -2083,7 +2083,7 @@ static void vmxnet3_net_init(VMXNET3State *s) s->nic = qemu_new_nic(&net_vmxnet3_info, &s->conf, object_get_typename(OBJECT(s)), - d->id, s); + d->id, &d->mem_reentrancy_guard, s); s->peer_has_vhdr = vmxnet3_peer_has_vnet_hdr(s); s->tx_sop = true; diff --git a/hw/net/xen_nic.c b/hw/net/xen_nic.c index 9bbf6599fc..e735f79c5b 100644 --- a/hw/net/xen_nic.c +++ b/hw/net/xen_nic.c @@ -293,8 +293,8 @@ static int net_init(struct XenLegacyDevice *xendev) return -1; } - netdev->nic = qemu_new_nic(&net_xen_info, &netdev->conf, - "xen", NULL, netdev); + netdev->nic = qemu_new_nic(&net_xen_info, &netdev->conf, "xen", NULL, + &xendev->qdev.mem_reentrancy_guard, netdev); qemu_set_info_str(qemu_get_queue(netdev->nic), "nic: xenbus vif macaddr=%s", netdev->mac); diff --git a/hw/net/xgmac.c b/hw/net/xgmac.c index 0ab6ae91aa..1f4f277d84 100644 --- a/hw/net/xgmac.c +++ b/hw/net/xgmac.c @@ -402,7 +402,8 @@ static void xgmac_enet_realize(DeviceState *dev, Error **errp) qemu_macaddr_default_if_unset(&s->conf.macaddr); s->nic = qemu_new_nic(&net_xgmac_enet_info, &s->conf, - object_get_typename(OBJECT(dev)), dev->id, s); + object_get_typename(OBJECT(dev)), dev->id, + &dev->mem_reentrancy_guard, s); qemu_format_nic_info_str(qemu_get_queue(s->nic), s->conf.macaddr.a); s->regs[XGMAC_ADDR_HIGH(0)] = (s->conf.macaddr.a[5] << 8) | diff --git a/hw/net/xilinx_axienet.c b/hw/net/xilinx_axienet.c index 5b19a01eaa..7d1fd37b4a 100644 --- a/hw/net/xilinx_axienet.c +++ b/hw/net/xilinx_axienet.c @@ -967,7 +967,8 @@ static void xilinx_enet_realize(DeviceState *dev, Error **errp) qemu_macaddr_default_if_unset(&s->conf.macaddr); s->nic = qemu_new_nic(&net_xilinx_enet_info, &s->conf, - object_get_typename(OBJECT(dev)), dev->id, s); + object_get_typename(OBJECT(dev)), dev->id, + &dev->mem_reentrancy_guard, s); qemu_format_nic_info_str(qemu_get_queue(s->nic), s->conf.macaddr.a); tdk_init(&s->TEMAC.phy); diff --git a/hw/net/xilinx_ethlite.c b/hw/net/xilinx_ethlite.c index 89f4f3b254..989afaf037 100644 --- a/hw/net/xilinx_ethlite.c +++ b/hw/net/xilinx_ethlite.c @@ -235,7 +235,8 @@ static void xilinx_ethlite_realize(DeviceState *dev, Error **errp) qemu_macaddr_default_if_unset(&s->conf.macaddr); s->nic = qemu_new_nic(&net_xilinx_ethlite_info, &s->conf, - object_get_typename(OBJECT(dev)), dev->id, s); + object_get_typename(OBJECT(dev)), dev->id, + &dev->mem_reentrancy_guard, s); qemu_format_nic_info_str(qemu_get_queue(s->nic), s->conf.macaddr.a); } diff --git a/hw/usb/dev-network.c b/hw/usb/dev-network.c index 5fff487ee5..2c33e36cad 100644 --- a/hw/usb/dev-network.c +++ b/hw/usb/dev-network.c @@ -1386,7 +1386,8 @@ static void usb_net_realize(USBDevice *dev, Error **errp) qemu_macaddr_default_if_unset(&s->conf.macaddr); s->nic = qemu_new_nic(&net_usbnet_info, &s->conf, - object_get_typename(OBJECT(s)), s->dev.qdev.id, s); + object_get_typename(OBJECT(s)), s->dev.qdev.id, + &s->dev.qdev.mem_reentrancy_guard, s); qemu_format_nic_info_str(qemu_get_queue(s->nic), s->conf.macaddr.a); snprintf(s->usbstring_mac, sizeof(s->usbstring_mac), "%02x%02x%02x%02x%02x%02x", diff --git a/net/net.c b/net/net.c index 6492ad530e..982df2479f 100644 --- a/net/net.c +++ b/net/net.c @@ -319,6 +319,7 @@ NICState *qemu_new_nic(NetClientInfo *info, NICConf *conf, const char *model, const char *name, + MemReentrancyGuard *reentrancy_guard, void *opaque) { NetClientState **peers = conf->peers.ncs; -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 01 03:19:31 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 03:19:31 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542206.845812 (Exim 4.92) (envelope-from ) id 1q4YqZ-00036b-QX; Thu, 01 Jun 2023 03:19:31 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542206.845812; Thu, 01 Jun 2023 03:19:31 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4YqZ-00036P-ND; Thu, 01 Jun 2023 03:19:31 +0000 Received: by outflank-mailman (input) for mailman id 542206; Thu, 01 Jun 2023 03:19:30 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4YqY-0002Ws-EU for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 03:19:30 +0000 Received: from mail-pg1-x535.google.com (mail-pg1-x535.google.com [2607:f8b0:4864:20::535]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 1e2db27f-002b-11ee-b231-6b7b168915f2; Thu, 01 Jun 2023 05:19:29 +0200 (CEST) Received: by mail-pg1-x535.google.com with SMTP id 41be03b00d2f7-5289cf35eeaso1244522a12.1 for ; Wed, 31 May 2023 20:19:29 -0700 (PDT) Received: from alarm.flets-east.jp ([2400:4050:a840:1e00:78d2:b862:10a7:d486]) by smtp.gmail.com with ESMTPSA id jd5-20020a170903260500b001a245b49731sm2146753plb.128.2023.05.31.20.19.20 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 31 May 2023 20:19:27 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 1e2db27f-002b-11ee-b231-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=daynix-com.20221208.gappssmtp.com; s=20221208; t=1685589568; x=1688181568; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=zmIxJv/RQZ1r+yT76IboD8L/ibu/PXdMmNY/Ba4zw4E=; b=LifDaFHsjEizUqk1VXUEMNKpYG+2uFwQWZ6WmhqcXRIokhq+sF0/tOYP3m8p66m5Sw ixVkHy6LMbrBelnPG8Q1Q9VRLCT+uqGDYCGM6cpIlvIhSQ3FFZGbw6zk85tp5GfS+ldw Da0krCI3eNH0oCEHagqgTjS5JGpkwahp96+PqTHoZpg3dydVTmpmjawNVceSXeK03RKl uDHry/5Rb534a/JTOwsP6b8N7HJmZpCpM7hLTgB3X2valR5fHWq29yMLiL9qGTiqTqCE IGUaKyP4J9vbFD+3AyXaVCi4WEEzIHEifi3LI1MYz+fnnZmTcLeNYfg5/h7F5O8KGHQI qzIA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1685589568; x=1688181568; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=zmIxJv/RQZ1r+yT76IboD8L/ibu/PXdMmNY/Ba4zw4E=; b=SvGpBABI9Hwz/+ixPn9rhKZF2N+45b7u8BvHuKENyTbb6DwJZBQQN79IPuKozRAGnK tT+k91E1d3NPiWOwpWVVwj5hizRMfoLpvWz1BRp12QXxPNRnzvoGVg8e2ykyDwJXudta vjERt9kJHmWTy226Cnz+TC1XR9lVoa6abFE5YR5I+WY2qaCFDmGwX8uhDOqWR37zAtq+ l2+U7x9XNcnCcMBinFshY1DmKhBfUdvFHbMVgMqTMIWBjSEQaTUexFFbfUuo/ok1+g1u Tsut3WtoFWYI8ZivNVrnZ3ccqRemeEhM/CiqQ1ChrU9Ptv7PnU2k7UFzAlFAcdwq0sNQ m1rg== X-Gm-Message-State: AC+VfDyREjs+PsBjAmSV6Pr5tXKDDuh19s7zAXRGZUl8RnFHpSqULcyg JncRzfJUG09DvB+66fsIOZChLA== X-Google-Smtp-Source: ACHHUZ5miu5cdAr+t12FHP1vTIi7NetVQS5akrT+IyNAzvoVQFkZ1wGN5w557t12H8/USySWfc8W4g== X-Received: by 2002:a17:902:daca:b0:1ad:d542:6e14 with SMTP id q10-20020a170902daca00b001add5426e14mr680893plx.12.1685589567904; Wed, 31 May 2023 20:19:27 -0700 (PDT) From: Akihiko Odaki To: Cc: Mauro Matteo Cascella , P J P , Alexander Bulekov , Dmitry Fleytman , Beniamino Galvani , Peter Maydell , Strahinja Jankovic , Jason Wang , "Edgar E. Iglesias" , Alistair Francis , Stefan Weil , =?UTF-8?q?C=C3=A9dric=20Le=20Goater?= , Andrew Jeffery , Joel Stanley , Richard Henderson , Helge Deller , Sriram Yagnaraman , Thomas Huth , Aleksandar Rikalo , Subbaraya Sundeep , Jan Kiszka , Tyrone Ting , Hao Wu , Max Filippov , Jiri Pirko , Daniel Henrique Barboza , David Gibson , Greg Kurz , Harsh Prateek Bora , Sven Schnelle , "Michael S. Tsirkin" , Stefano Stabellini , Anthony Perard , Paul Durrant , Rob Herring , Gerd Hoffmann , qemu-arm@nongnu.org, qemu-devel@nongnu.org, qemu-ppc@nongnu.org, xen-devel@lists.xenproject.org, Akihiko Odaki Subject: [PATCH v2 2/2] net: Update MemReentrancyGuard for NIC Date: Thu, 1 Jun 2023 12:18:59 +0900 Message-Id: <20230601031859.7115-3-akihiko.odaki@daynix.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230601031859.7115-1-akihiko.odaki@daynix.com> References: <20230601031859.7115-1-akihiko.odaki@daynix.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Recently MemReentrancyGuard was added to DeviceState to record that the device is engaging in I/O. The network device backend needs to update it when delivering a packet to a device. This implementation follows what bottom half does, but it does not add a tracepoint for the case that the network device backend started delivering a packet to a device which is already engaging in I/O. This is because such reentrancy frequently happens for qemu_flush_queued_packets() and is insignificant. Fixes: CVE-2023-3019 Reported-by: Alexander Bulekov Signed-off-by: Akihiko Odaki --- include/net/net.h | 1 + net/net.c | 14 ++++++++++++++ 2 files changed, 15 insertions(+) diff --git a/include/net/net.h b/include/net/net.h index a7d8deaccb..685ec58318 100644 --- a/include/net/net.h +++ b/include/net/net.h @@ -124,6 +124,7 @@ typedef QTAILQ_HEAD(NetClientStateList, NetClientState) NetClientStateList; typedef struct NICState { NetClientState *ncs; NICConf *conf; + MemReentrancyGuard *reentrancy_guard; void *opaque; bool peer_deleted; } NICState; diff --git a/net/net.c b/net/net.c index 982df2479f..3523cceafc 100644 --- a/net/net.c +++ b/net/net.c @@ -332,6 +332,7 @@ NICState *qemu_new_nic(NetClientInfo *info, nic = g_malloc0(info->size + sizeof(NetClientState) * queues); nic->ncs = (void *)nic + info->size; nic->conf = conf; + nic->reentrancy_guard = reentrancy_guard, nic->opaque = opaque; for (i = 0; i < queues; i++) { @@ -805,6 +806,7 @@ static ssize_t qemu_deliver_packet_iov(NetClientState *sender, int iovcnt, void *opaque) { + MemReentrancyGuard *owned_reentrancy_guard; NetClientState *nc = opaque; int ret; @@ -817,12 +819,24 @@ static ssize_t qemu_deliver_packet_iov(NetClientState *sender, return 0; } + if (nc->info->type != NET_CLIENT_DRIVER_NIC || + qemu_get_nic(nc)->reentrancy_guard->engaged_in_io) { + owned_reentrancy_guard = NULL; + } else { + owned_reentrancy_guard = qemu_get_nic(nc)->reentrancy_guard; + owned_reentrancy_guard->engaged_in_io = true; + } + if (nc->info->receive_iov && !(flags & QEMU_NET_PACKET_FLAG_RAW)) { ret = nc->info->receive_iov(nc, iov, iovcnt); } else { ret = nc_sendv_compat(nc, iov, iovcnt, flags); } + if (owned_reentrancy_guard) { + owned_reentrancy_guard->engaged_in_io = false; + } + if (ret == 0) { nc->receive_disabled = 1; } -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 01 04:35:08 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 04:35:08 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542225.845828 (Exim 4.92) (envelope-from ) id 1q4a1S-0003ew-6g; Thu, 01 Jun 2023 04:34:50 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542225.845828; Thu, 01 Jun 2023 04:34:50 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4a1S-0003ep-3o; Thu, 01 Jun 2023 04:34:50 +0000 Received: by outflank-mailman (input) for mailman id 542225; Thu, 01 Jun 2023 04:34:48 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4a1Q-0003ef-N3; Thu, 01 Jun 2023 04:34:48 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4a1Q-00055E-D1; Thu, 01 Jun 2023 04:34:48 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4a1P-0003Xn-VQ; Thu, 01 Jun 2023 04:34:48 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q4a1P-0008S0-Ux; Thu, 01 Jun 2023 04:34:47 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=2A6jgyA9kHsrt+4XQOLJY6R1m6hLHZAyVJWwSfoIABI=; b=Q6BFwllYzIacLc5SPsMxfcTJl5 2ae2EiKIHYoKgg5+Mk6ctrgWTKGzCyr5rJQigxYIt8VF+76BICGf/wMFFwn/biZPj20vp7d4DiLcP r7Of5SLcC9DsIu3btLC8eBEp8dJyEEhfSd+Vu07liEzhV8Ul+NAVtHEyc070ZYesMmg8=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [qemu-mainline test] 181057: regressions - FAIL X-Osstest-Failures: qemu-mainline:test-amd64-i386-libvirt-pair:xen-install/src_host:fail:regression qemu-mainline:test-amd64-amd64-libvirt-pair:leak-check/check/src_host:fail:regression qemu-mainline:test-amd64-amd64-libvirt-pair:leak-check/check/dst_host:fail:regression qemu-mainline:test-amd64-i386-libvirt:leak-check/check:fail:regression qemu-mainline:test-amd64-amd64-libvirt-xsm:leak-check/check:fail:regression qemu-mainline:build-arm64-xsm:xen-build:fail:regression qemu-mainline:build-arm64:xen-build:fail:regression qemu-mainline:test-amd64-amd64-libvirt:leak-check/check:fail:regression qemu-mainline:test-amd64-i386-libvirt-xsm:leak-check/check:fail:regression qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:leak-check/check:fail:regression qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:leak-check/check:fail:regression qemu-mainline:test-amd64-amd64-libvirt-vhd:guest-start/debian.repeat:fail:regression qemu-mainline:test-amd64-i386-xl-vhd:guest-start/debian.repeat:fail:regression qemu-mainline:test-amd64-i386-libvirt-raw:leak-check/check:fail:regression qemu-mainline:test-amd64-amd64-xl-qcow2:leak-check/check:fail:regression qemu-mainline:test-armhf-armhf-libvirt:leak-check/check:fail:regression qemu-mainline:test-armhf-armhf-libvirt-qcow2:leak-check/check:fail:regression qemu-mainline:test-armhf-armhf-xl-vhd:leak-check/check:fail:regression qemu-mainline:test-armhf-armhf-libvirt-raw:leak-check/check:fail:regression qemu-mainline:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:build-arm64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking qemu-mainline:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking qemu-mainline:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking qemu-mainline:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking qemu-mainline:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking qemu-mainline:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking qemu-mainline:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking qemu-mainline:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking qemu-mainline:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking qemu-mainline:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking X-Osstest-Versions-This: qemuu=ab7252279727da51c01cdaf41c5fe563bbded3a6 X-Osstest-Versions-That: qemuu=6972ef1440a9d685482d78672620a7482f2bd09a From: osstest service owner Date: Thu, 01 Jun 2023 04:34:47 +0000 flight 181057 qemu-mainline real [real] http://logs.test-lab.xenproject.org/osstest/logs/181057/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: test-amd64-i386-libvirt-pair 10 xen-install/src_host fail REGR. vs. 180691 test-amd64-amd64-libvirt-pair 30 leak-check/check/src_host fail REGR. vs. 180691 test-amd64-amd64-libvirt-pair 31 leak-check/check/dst_host fail REGR. vs. 180691 test-amd64-i386-libvirt 23 leak-check/check fail REGR. vs. 180691 test-amd64-amd64-libvirt-xsm 23 leak-check/check fail REGR. vs. 180691 build-arm64-xsm 6 xen-build fail REGR. vs. 180691 build-arm64 6 xen-build fail REGR. vs. 180691 test-amd64-amd64-libvirt 23 leak-check/check fail REGR. vs. 180691 test-amd64-i386-libvirt-xsm 23 leak-check/check fail REGR. vs. 180691 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 21 leak-check/check fail REGR. vs. 180691 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 21 leak-check/check fail REGR. vs. 180691 test-amd64-amd64-libvirt-vhd 19 guest-start/debian.repeat fail REGR. vs. 180691 test-amd64-i386-xl-vhd 21 guest-start/debian.repeat fail REGR. vs. 180691 test-amd64-i386-libvirt-raw 22 leak-check/check fail REGR. vs. 180691 test-amd64-amd64-xl-qcow2 24 leak-check/check fail REGR. vs. 180691 test-armhf-armhf-libvirt 21 leak-check/check fail REGR. vs. 180691 test-armhf-armhf-libvirt-qcow2 20 leak-check/check fail REGR. vs. 180691 test-armhf-armhf-xl-vhd 20 leak-check/check fail REGR. vs. 180691 test-armhf-armhf-libvirt-raw 20 leak-check/check fail REGR. vs. 180691 Tests which did not succeed, but are not blocking: test-arm64-arm64-libvirt-raw 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-xsm 1 build-check(1) blocked n/a test-arm64-arm64-xl 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit1 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit2 1 build-check(1) blocked n/a test-arm64-arm64-xl-thunderx 1 build-check(1) blocked n/a test-arm64-arm64-xl-vhd 1 build-check(1) blocked n/a test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a build-arm64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 180691 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 180691 test-armhf-armhf-libvirt 16 saverestore-support-check fail like 180691 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail like 180691 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop fail like 180691 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail like 180691 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 180691 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop fail like 180691 test-amd64-i386-xl-pvshim 14 guest-start fail never pass test-amd64-i386-libvirt 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-i386-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-credit2 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit2 16 saverestore-support-check fail never pass test-amd64-i386-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-libvirt 15 migrate-support-check fail never pass test-armhf-armhf-xl 15 migrate-support-check fail never pass test-armhf-armhf-xl 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 15 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 16 saverestore-support-check fail never pass test-armhf-armhf-xl-multivcpu 15 migrate-support-check fail never pass test-armhf-armhf-xl-multivcpu 16 saverestore-support-check fail never pass test-armhf-armhf-xl-arndale 15 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 16 saverestore-support-check fail never pass test-armhf-armhf-xl-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 15 saverestore-support-check fail never pass test-armhf-armhf-libvirt-raw 14 migrate-support-check fail never pass version targeted for testing: qemuu ab7252279727da51c01cdaf41c5fe563bbded3a6 baseline version: qemuu 6972ef1440a9d685482d78672620a7482f2bd09a Last test of basis 180691 2023-05-17 10:45:22 Z 14 days Failing since 180699 2023-05-18 07:21:24 Z 13 days 52 attempts Testing same since 181057 2023-05-31 20:38:43 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Afonso Bordado Akihiko Odaki Akihiro Suda Alex Bennée Alex Williamson Alexander Bulekov Alexander Graf Alistair Francis Ani Sinha Ani Sinha Anton Johansson BALATON Zoltan Bernhard Beschow Bin Meng Brian Cain Brice Goglin Camilla Conte Cindy Lu Clément Chigot Cornelia Huck Cédric Le Goater Cédric Le Goater Daniel Henrique Barboza Daniel P. Berrangé Daniil Kovalev David Hildenbrand Emanuele Giuseppe Esposito Enze Li Eric Auger Eric Blake Eric DeVolder Erico Nunes Eugenio Pérez Fabiano Rosas Fan Ni Fiona Ebner Francisco Iglesias Gavin Shan Gregory Price Gregory Price Hao Zeng Hawkins Jiawei Igor Mammedov Ira Weiny Jason Wang Jean-Philippe Brucker John Snow Jonathan Cameron Juan Quintela Kevin Wolf Laurent Vivier Lei Yang Leonardo Bras Maksim Davydov Marc-André Lureau Marcin Juszkiewicz Marco Liebel Mark Cave-Ayland Markus Armbruster Matheus Tavares Bernardino Mauro Matteo Cascella Michael S. Tsirkin Michael Tokarev Mostafa Saleh Nicholas Piggin Nicolas Saenz Julienne Palmer Dabbelt Paolo Bonzini Peter Maydell Peter Xu Philippe Mathieu-Daudé Raghu H Rene Engel Richard Henderson Richard Purdie Ricky Zhou Ryan Wendland Sebastian Ott Sergio Lopez Sid Manning Song Gao Stefan Hajnoczi Steve Sistare Taylor Simpson Thomas Huth Thomas Weißschuh timothee.cocault@gmail.com Timothée Cocault Tommy Wu Viktor Prutyanov Vitaly Cheptsov Vivek Kasireddy Vladimir Sementsov-Ogievskiy Volker Rümelin Xinyu Li Zeng Hao Zhenyu Zhang Zhenzhong Duan jobs: build-amd64-xsm pass build-arm64-xsm fail build-i386-xsm pass build-amd64 pass build-arm64 fail build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt blocked build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl blocked test-armhf-armhf-xl pass test-amd64-i386-xl pass test-amd64-coresched-i386-xl pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm fail test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm fail test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-i386-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm fail test-arm64-arm64-libvirt-xsm blocked test-amd64-i386-libvirt-xsm fail test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm blocked test-amd64-i386-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-i386-qemuu-rhel6hvm-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-freebsd10-amd64 pass test-amd64-amd64-qemuu-freebsd11-amd64 pass test-amd64-amd64-qemuu-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-i386-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-amd64-i386-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 blocked test-armhf-armhf-xl-credit1 pass test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 blocked test-armhf-armhf-xl-credit2 pass test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-i386-freebsd10-i386 pass test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-i386-qemuu-rhel6hvm-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt fail test-armhf-armhf-libvirt fail test-amd64-i386-libvirt fail test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu pass test-amd64-amd64-pair pass test-amd64-i386-pair pass test-amd64-amd64-libvirt-pair fail test-amd64-i386-libvirt-pair fail test-amd64-amd64-xl-pvshim pass test-amd64-i386-xl-pvshim fail test-amd64-amd64-pygrub pass test-armhf-armhf-libvirt-qcow2 fail test-amd64-amd64-xl-qcow2 fail test-arm64-arm64-libvirt-raw blocked test-armhf-armhf-libvirt-raw fail test-amd64-i386-libvirt-raw fail test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds pass test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-amd64-i386-xl-shadow pass test-arm64-arm64-xl-thunderx blocked test-amd64-amd64-libvirt-vhd fail test-arm64-arm64-xl-vhd blocked test-armhf-armhf-xl-vhd fail test-amd64-i386-xl-vhd fail ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 10841 lines long.) From xen-devel-bounces@lists.xenproject.org Thu Jun 01 04:36:44 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 04:36:44 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542233.845841 (Exim 4.92) (envelope-from ) id 1q4a3G-0004Hf-Pz; Thu, 01 Jun 2023 04:36:42 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542233.845841; Thu, 01 Jun 2023 04:36:42 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4a3G-0004HY-M4; Thu, 01 Jun 2023 04:36:42 +0000 Received: by outflank-mailman (input) for mailman id 542233; Thu, 01 Jun 2023 04:36:41 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4a3F-0004HQ-GE for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 04:36:41 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id e5d2dc4a-0035-11ee-8611-37d641c3527e; Thu, 01 Jun 2023 06:36:39 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id EF5CB60010 for ; Thu, 1 Jun 2023 04:36:37 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 54232C4339C for ; Thu, 1 Jun 2023 04:36:37 +0000 (UTC) Received: by mail-ed1-f47.google.com with SMTP id 4fb4d7f45d1cf-5147e441c33so1066359a12.0 for ; Wed, 31 May 2023 21:36:37 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: e5d2dc4a-0035-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1685594197; bh=QZIVYOfQMQfDIruN7rSg689YIbiJbkkfE8AKRfy2n5U=; h=References:In-Reply-To:From:Date:Subject:To:Cc:From; b=XjX+qO5TgZej3fh2HJQIqiOR5PxyL4koYuTQx2qeUwz0mw2WS7S8765bRMbrDCQVG whIGCjOlXBTjeWiN2+LrCx+Or8mSlhjQdHY5MFaYnqKspwUjKhBsJekNkwwwC3A2tK RRJ+PYWLTNVwk2Tc4E1sjjLY66LER3hFT6QIRdlz0YEtfE5QnejkEMpgjlFtCb1L5b jav2+jHQW0E6lB/EBDYRssonNB4dhirDM2pvI3kpcWJ0B9czAKVTkvmbZ2ylsgGsMq x3kGCiBqFY0IqxyFq7Pvs4DJbAWcMeNsAFCqYa1UhLYAOwr6LlCcKM6JbTbj+s1hsP DnX5huppMSCjQ== X-Gm-Message-State: AC+VfDztFkhoKLsZOuxPlGFryVx6rUtIFMF/8aSWgv4WuPF0AkzaufXZ LunV0pbKHpHBLeDE81cxhxXVpd1+ztu+82o8CrA= X-Google-Smtp-Source: ACHHUZ7XdaYihX3P0occ4fimfrY7vXLE/b8sATTjW74eXROnZDFW1BQ/va3F8G7kmqLig8peXPPgGCGmqMpiLEgKGXM= X-Received: by 2002:a05:6402:3511:b0:4fc:97d9:18ec with SMTP id b17-20020a056402351100b004fc97d918ecmr437472edd.21.1685594195535; Wed, 31 May 2023 21:36:35 -0700 (PDT) MIME-Version: 1.0 References: <20230531213032.25338-1-vishal.moola@gmail.com> <20230531213032.25338-23-vishal.moola@gmail.com> In-Reply-To: <20230531213032.25338-23-vishal.moola@gmail.com> From: Guo Ren Date: Thu, 1 Jun 2023 12:36:23 +0800 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: [PATCH v3 22/34] csky: Convert __pte_free_tlb() to use ptdescs To: "Vishal Moola (Oracle)" Cc: Andrew Morton , Matthew Wilcox , linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Acked-by: Guo Ren On Thu, Jun 1, 2023 at 5:34=E2=80=AFAM Vishal Moola (Oracle) wrote: > > Part of the conversions to replace pgtable constructor/destructors with > ptdesc equivalents. > > Signed-off-by: Vishal Moola (Oracle) > --- > arch/csky/include/asm/pgalloc.h | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/arch/csky/include/asm/pgalloc.h b/arch/csky/include/asm/pgal= loc.h > index 7d57e5da0914..9c84c9012e53 100644 > --- a/arch/csky/include/asm/pgalloc.h > +++ b/arch/csky/include/asm/pgalloc.h > @@ -63,8 +63,8 @@ static inline pgd_t *pgd_alloc(struct mm_struct *mm) > > #define __pte_free_tlb(tlb, pte, address) \ > do { \ > - pgtable_pte_page_dtor(pte); \ > - tlb_remove_page(tlb, pte); \ > + pagetable_pte_dtor(page_ptdesc(pte)); \ > + tlb_remove_page_ptdesc(tlb, page_ptdesc(pte)); \ > } while (0) > > extern void pagetable_init(void); > -- > 2.40.1 > --=20 Best Regards Guo Ren From xen-devel-bounces@lists.xenproject.org Thu Jun 01 05:13:57 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 05:13:57 +0000 Received: from list by lists.xenproject.org with outflank-mailman.541948.845854 (Exim 4.92) (envelope-from ) id 1q4ad4-0000Z6-LT; Thu, 01 Jun 2023 05:13:42 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 541948.845854; Thu, 01 Jun 2023 05:13:42 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4ad4-0000Yz-IL; Thu, 01 Jun 2023 05:13:42 +0000 Received: by outflank-mailman (input) for mailman id 541948; Wed, 31 May 2023 18:48:52 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4QsO-0003N2-B3 for xen-devel@lists.xenproject.org; Wed, 31 May 2023 18:48:52 +0000 Received: from mail-pl1-x634.google.com (mail-pl1-x634.google.com [2607:f8b0:4864:20::634]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id c6c3d5d8-ffe3-11ed-8611-37d641c3527e; Wed, 31 May 2023 20:48:48 +0200 (CEST) Received: by mail-pl1-x634.google.com with SMTP id d9443c01a7336-1b041ccea75so25421375ad.2 for ; Wed, 31 May 2023 11:48:48 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: c6c3d5d8-ffe3-11ed-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1685558927; x=1688150927; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=3EtbHmfy3w5R7KQLkJ5R/6zIzXV1vr/wfKtqhO2sLZ4=; b=Hm0hCkYdtfQRemjMKlbllQL4O8L2Qa3TjHMKohF0mlxv+EqXmacGN9VR1Ny8tXDjdD ACVftV9H3bIHuquZ0Z6IE+mZYNe74kNRg3Br1jlJLowCFdPWRxtQpFk0AR3q9LiI7a38 qPm3c5PRQ8s61eGVhHEjXW5Ih2HToJ0OAz+aWBcvAjzRU6N56VF0Fcsn7e4Of0o6uY+V qRpB5UPr9AHKifnMYX6CIDRDJncTTr+hdj/URjfBb9uRPa4+D9LrQ9gR8d8PKDjKpkeg cNuAOwwh+6NOWOIuGiEwVq+aM6BLqglu5nX06SX1AVpMS+9Xl4QNAABt0kr2BfTfppz2 6BaA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1685558927; x=1688150927; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=3EtbHmfy3w5R7KQLkJ5R/6zIzXV1vr/wfKtqhO2sLZ4=; b=IIj5P8yKIGlXlzDop8b1FNIx7sJpa5w0VMUDMT7+q+tTXqFfafQcPLTyijqr/yW/Wo CXqT5bWX0zYTQ9W0MXWorqo5meaLruLs0T8tD/ijylyYneoqzwv0FopzDlQ5EnFqC9LZ Ld6fbR9F9yqErf5oUEmMzrMtGzRUNT/7PcSO+HWWvUEpyXUygvwjzj0BhP9aSQ4URcS6 96ZwIvnfDNbSEGdEVPpBcTlo7UW0+05/YId97spB4ZdIRLpTTGqX9ZNDzAIxrkDcMpGz 5ehbnNtTMPAl9rdkTiqQjzy7rdTmzCP+aqmc0RM5ewrUEfMB9fLWU6yZMMnKaBjKTlsA e8kw== X-Gm-Message-State: AC+VfDziFg/AxTQi+HxoT2txwasZVVyZnmI6DNJd3sVl1PxIaFov28W9 VXEvZEYCYcFQPAiBdBrwcsNA2xMqgCjyJKrj32I= X-Google-Smtp-Source: ACHHUZ5M6iYi6/JD6zVRIpgmhcItbt+ub8OAZYuPz3aXn9kIu5A1prvbpB5UhWxoMoGIS6vgwfkfFLYekeLrKRbR0kQ= X-Received: by 2002:a17:902:ce86:b0:1b0:3df7:5992 with SMTP id f6-20020a170902ce8600b001b03df75992mr5572003plg.32.1685558926693; Wed, 31 May 2023 11:48:46 -0700 (PDT) MIME-Version: 1.0 References: In-Reply-To: From: Jonas Gorski Date: Wed, 31 May 2023 20:48:35 +0200 Message-ID: Subject: Re: [PATCH v8 0/7] Add pci_dev_for_each_resource() helper and update users To: Bjorn Helgaas Cc: Andy Shevchenko , =?UTF-8?Q?Krzysztof_Wilczy=C5=84ski?= , Rich Felker , linux-sh@vger.kernel.org, linux-pci@vger.kernel.org, Dominik Brodowski , linux-kernel@vger.kernel.org, =?UTF-8?B?TWlja2HDq2wgU2FsYcO8bg==?= , Andrew Lunn , sparclinux@vger.kernel.org, Stefano Stabellini , Yoshinori Sato , Gregory Clement , "Rafael J. Wysocki" , Russell King , linux-acpi@vger.kernel.org, Miguel Ojeda , xen-devel@lists.xenproject.org, Matt Turner , Anatolij Gustschin , Sebastian Hesselbarth , Arnd Bergmann , Niklas Schnelle , Richard Henderson , Nicholas Piggin , Ivan Kokshaysky , John Paul Adrian Glaubitz , Bjorn Helgaas , Mika Westerberg , linux-arm-kernel@lists.infradead.org, Juergen Gross , Thomas Bogendoerfer , =?UTF-8?Q?Philippe_Mathieu=2DDaud=C3=A9?= , linuxppc-dev@lists.ozlabs.org, Randy Dunlap , linux-mips@vger.kernel.org, Oleksandr Tyshchenko , linux-alpha@vger.kernel.org, =?UTF-8?Q?Pali_Roh=C3=A1r?= , "David S. Miller" , "Maciej W. Rozycki" Content-Type: text/plain; charset="UTF-8" Hi, On Tue, 30 May 2023 at 23:34, Bjorn Helgaas wrote: > On Fri, May 12, 2023 at 02:48:51PM -0500, Bjorn Helgaas wrote: > > On Fri, May 12, 2023 at 01:56:29PM +0300, Andy Shevchenko wrote: > > > On Tue, May 09, 2023 at 01:21:22PM -0500, Bjorn Helgaas wrote: > > > > On Tue, Apr 04, 2023 at 11:11:01AM -0500, Bjorn Helgaas wrote: > > > > > On Thu, Mar 30, 2023 at 07:24:27PM +0300, Andy Shevchenko wrote: > > > > > > Provide two new helper macros to iterate over PCI device resources and > > > > > > convert users. > > > > > > > > > Applied 2-7 to pci/resource for v6.4, thanks, I really like this! > > > > > > > > This is 09cc90063240 ("PCI: Introduce pci_dev_for_each_resource()") > > > > upstream now. > > > > > > > > Coverity complains about each use, > > > > > > It needs more clarification here. Use of reduced variant of the > > > macro or all of them? If the former one, then I can speculate that > > > Coverity (famous for false positives) simply doesn't understand `for > > > (type var; var ...)` code. > > > > True, Coverity finds false positives. It flagged every use in > > drivers/pci and drivers/pnp. It didn't mention the arch/alpha, arm, > > mips, powerpc, sh, or sparc uses, but I think it just didn't look at > > those. > > > > It flagged both: > > > > pbus_size_io pci_dev_for_each_resource(dev, r) > > pbus_size_mem pci_dev_for_each_resource(dev, r, i) > > > > Here's a spreadsheet with a few more details (unfortunately I don't > > know how to make it dump the actual line numbers or analysis like I > > pasted below, so "pci_dev_for_each_resource" doesn't appear). These > > are mostly in the "Drivers-PCI" component. > > > > https://docs.google.com/spreadsheets/d/1ohOJwxqXXoDUA0gwopgk-z-6ArLvhN7AZn4mIlDkHhQ/edit?usp=sharing > > > > These particular reports are in the "High Impact Outstanding" tab. > > Where are we at? Are we going to ignore this because some Coverity > reports are false positives? Looking at the code I understand where coverity is coming from: #define __pci_dev_for_each_res0(dev, res, ...) \ for (unsigned int __b = 0; \ res = pci_resource_n(dev, __b), __b < PCI_NUM_RESOURCES; \ __b++) res will be assigned before __b is checked for being less than PCI_NUM_RESOURCES, making it point to behind the array at the end of the last loop iteration. Rewriting the test expression as __b < PCI_NUM_RESOURCES && (res = pci_resource_n(dev, __b)); should avoid the (coverity) warning by making use of lazy evaluation. It probably makes the code slightly less performant as res will now be checked for being not NULL (which will always be true), but I doubt it will be significant (or in any hot paths). Regards, Jonas From xen-devel-bounces@lists.xenproject.org Thu Jun 01 06:39:38 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 06:39:38 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542244.845869 (Exim 4.92) (envelope-from ) id 1q4by0-00014G-Ob; Thu, 01 Jun 2023 06:39:24 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542244.845869; Thu, 01 Jun 2023 06:39:24 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4by0-000149-LR; Thu, 01 Jun 2023 06:39:24 +0000 Received: by outflank-mailman (input) for mailman id 542244; Thu, 01 Jun 2023 06:39:23 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4bxz-000142-Go for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 06:39:23 +0000 Received: from smtp-out1.suse.de (smtp-out1.suse.de [195.135.220.28]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 09713a4f-0047-11ee-8611-37d641c3527e; Thu, 01 Jun 2023 08:39:20 +0200 (CEST) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by smtp-out1.suse.de (Postfix) with ESMTPS id 49F4C21982; Thu, 1 Jun 2023 06:39:19 +0000 (UTC) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id 9A39D13441; Thu, 1 Jun 2023 06:39:18 +0000 (UTC) Received: from dovecot-director2.suse.de ([192.168.254.65]) by imap2.suse-dmz.suse.de with ESMTPSA id s7uvIxY9eGS1SwAAMHmgww (envelope-from ); Thu, 01 Jun 2023 06:39:18 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 09713a4f-0047-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1; t=1685601559; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=B0TfaTOnUIHwJOCACoipyr3dFpHPPJ5drbrANbf42Ng=; b=mc6OB39sMk0viPihk+M0vArqNqZRRutEybT+NvBLSBGXhtKfLYKOjBQLqFDcLpmvwDmQHB 0WusposnhyL6Tu6+ZDXHuRLwCQbTH70yqbFxEQVQSIP+U5N1a5oYrlp818jyRKYEAeJdm3 47WrUykFm5BYx6haOiqUGOKtrP5t5mU= Message-ID: <6700dc14-98fa-232d-5f8c-68a418849671@suse.com> Date: Thu, 1 Jun 2023 08:39:17 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 To: Borislav Petkov Cc: linux-kernel@vger.kernel.org, x86@kernel.org, linux-hyperv@vger.kernel.org, linux-doc@vger.kernel.org, mikelley@microsoft.com, Thomas Gleixner , Ingo Molnar , Dave Hansen , "H. Peter Anvin" , "K. Y. Srinivasan" , Haiyang Zhang , Wei Liu , Dexuan Cui , Boris Ostrovsky , xen-devel@lists.xenproject.org, Jonathan Corbet , Andy Lutomirski , Peter Zijlstra References: <20230509201437.GFZFqprc6otRejDPUt@fat_crate.local> <20230509233641.GGZFrZCTDH7VwUMp5R@fat_crate.local> <20230510133024.GBZFuccC1FxIZNKL+8@fat_crate.local> <4c47a11c-0565-678d-3467-e01c5ec16600@suse.com> <20230511163208.GDZF0YiOfxQhSo4RDm@fat_crate.local> <0cd3899b-cf3b-61c1-14ae-60b6b49d14ab@suse.com> <20230530152825.GAZHYWGXAp8PHgN/w0@fat_crate.local> <888f860d-4307-54eb-01da-11f9adf65559@suse.com> <20230531083508.GAZHcGvB68PUAH7f+a@fat_crate.local> <20230531174857.GDZHeIib57h5lT5Vh1@fat_crate.local> Content-Language: en-US From: Juergen Gross Subject: Re: [PATCH v6 00/16] x86/mtrr: fix handling with PAT but without MTRR In-Reply-To: <20230531174857.GDZHeIib57h5lT5Vh1@fat_crate.local> Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="------------IcFDbzCEbOZUoIIQjljHnzjw" This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --------------IcFDbzCEbOZUoIIQjljHnzjw Content-Type: multipart/mixed; boundary="------------QIQ4dzXU0FOJ0NlrWslFqVZw"; protected-headers="v1" From: Juergen Gross To: Borislav Petkov Cc: linux-kernel@vger.kernel.org, x86@kernel.org, linux-hyperv@vger.kernel.org, linux-doc@vger.kernel.org, mikelley@microsoft.com, Thomas Gleixner , Ingo Molnar , Dave Hansen , "H. Peter Anvin" , "K. Y. Srinivasan" , Haiyang Zhang , Wei Liu , Dexuan Cui , Boris Ostrovsky , xen-devel@lists.xenproject.org, Jonathan Corbet , Andy Lutomirski , Peter Zijlstra Message-ID: <6700dc14-98fa-232d-5f8c-68a418849671@suse.com> Subject: Re: [PATCH v6 00/16] x86/mtrr: fix handling with PAT but without MTRR References: <20230509201437.GFZFqprc6otRejDPUt@fat_crate.local> <20230509233641.GGZFrZCTDH7VwUMp5R@fat_crate.local> <20230510133024.GBZFuccC1FxIZNKL+8@fat_crate.local> <4c47a11c-0565-678d-3467-e01c5ec16600@suse.com> <20230511163208.GDZF0YiOfxQhSo4RDm@fat_crate.local> <0cd3899b-cf3b-61c1-14ae-60b6b49d14ab@suse.com> <20230530152825.GAZHYWGXAp8PHgN/w0@fat_crate.local> <888f860d-4307-54eb-01da-11f9adf65559@suse.com> <20230531083508.GAZHcGvB68PUAH7f+a@fat_crate.local> <20230531174857.GDZHeIib57h5lT5Vh1@fat_crate.local> In-Reply-To: <20230531174857.GDZHeIib57h5lT5Vh1@fat_crate.local> --------------QIQ4dzXU0FOJ0NlrWslFqVZw Content-Type: multipart/mixed; boundary="------------wnGgi9qHUTjxOCMCiGguEV5I" --------------wnGgi9qHUTjxOCMCiGguEV5I Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: base64 T24gMzEuMDUuMjMgMTk6NDgsIEJvcmlzbGF2IFBldGtvdiB3cm90ZToNCj4gT24gV2VkLCBN YXkgMzEsIDIwMjMgYXQgMDQ6MjA6MDhQTSArMDIwMCwgSnVlcmdlbiBHcm9zcyB3cm90ZToN Cj4+IE9uZSBvdGhlciBub3RlOiB3aHkgZG9lcyBtdHJyX2NsZWFudXAoKSB0aGluayB0aGF0 IHVzaW5nIDggaW5zdGVhZCBvZiA2DQo+PiB2YXJpYWJsZSBNVFJScyB3b3VsZCBiZSBhbiAi b3B0aW1hbCBzZXR0aW5nIj8NCj4gDQo+IE1heWJlIHRoZSBtb3JlIGV4dGVuc2l2ZSBkZWJ1 ZyBvdXRwdXQgYmVsb3cgd291bGQgaGVscCBhbnN3ZXIgdGhhdC4uLg0KDQpBYm92ZSBxdWVz dGlvbiBpc24ndCBhbnN3ZXJlZCwgYnV0IGl0IGF0IGxlYXN0IHRlbGxzIG1lIHRoYXQgdGhl IHBsYW4gd2FzDQp0byB3cml0ZSBNVFJSIHZhbHVlcyBhcyBzZWVuIG9uIHRoZSBvcmlnaW5h bCBrZXJuZWwuDQoNCkxvb2tpbmcgaW50byB0aGUgaXNzdWUgd2l0aCB0aGF0IGluZm9ybWF0 aW9uIGluIG1pbmQuDQoNCj4gDQo+PiBJTU8gaXQgc2hvdWxkIHJlcGxhY2UgdGhlIG9yaWdp bmFsIHNldHVwIG9ubHkgaW4gY2FzZSBpdCBpcyB1c2luZyBfbGVzc18NCj4+IE1UUlJzIHRo YW4gYmVmb3JlLg0KPiANCj4gUmlnaHQuDQoNCkknbGwgbG9vayBpbnRvIHRoYXQgbGF0ZXIs IHVubGVzcyBteSBxdWVzdGlvbiBiZWxvdyB3aWxsIGJlIGFuc3dlcmVkIHdpdGgNCiJ5ZXMi Lg0KDQo+IA0KPj4gQWRkaXRpb25hbGx5IEkgYmVsaWV2ZSBtdHJyX2NsZWFudXAoKSB3b3Vs ZCBtYWtlIG11Y2ggbW9yZSBzZW5zZSBpZiBpdA0KPj4gd291bGRuJ3QgYmUgX19pbml0LCBi dXQgYmVpbmcgdXNhYmxlIHdoZW4gdHJ5aW5nIHRvIGFkZCBhZGRpdGlvbmFsIE1UUlJzDQo+ PiBpbiB0aGUgcnVubmluZyBzeXN0ZW0gaW4gY2FzZSB3ZSBydW4gb3V0IG9mIE1UUlJzLg0K Pj4NCj4+IEl0IHNob3VsZCBwcm9iYWJseSBiZSBiYXNlZCBvbiB0aGUgbmV3IE1UUlIgbWFw IGFueXdheS4uLg0KPiANCj4gU28gSSdtIG5vdCByZWFsbHkgc3VyZSB3ZSByZWFsbHkgY2Fy ZSBhYm91dCBhZGRpbmcgYWRkaXRpb25hbCBNVFJScy4NCg0KRG9lcyB0aGlzIHRyYW5zbGF0 ZSB0bzogIndlIHNob3VsZCByZW1vdmUgdGhhdCBjbGVhbnVwIGNyYXAiPyBJJ2QgYmUNCnBv c2l0aXZlIHRvIHRoYXQuIDotKQ0KDQo+IFRoZXJlIHByb2JhYmx5IGlzIGEgdXNlIGNhc2Ug d2hpY2ggZG9lcyB0aGF0IGJ1dCBJIGhhdmVuJ3Qgc2VlbiBvbmUgeWV0DQo+IC0gTVRSUnMg YXJlIGFsbCBsZWdhY3kgY3JhcCB0byBtZS4NCg0KSSB0aGluayB0aGVyZSBhcmUgc3RpbGwg YSBmZXcgZHJpdmVycyB1c2luZyB0aGVtLiBObyBpZGVhIGhvdyBvZnRlbg0KdGhvc2UgZHJp dmVycyBhcmUgaW4gdXNlLCB0aG91Z2guDQoNCj4gDQo+IEJ0dywgb25lIG1vcmUgcGF0Y2gg b250b3A6DQo+IA0KPiAtLS0NCj4gRnJvbTogIkJvcmlzbGF2IFBldGtvdiAoQU1EKSIgPGJw QGFsaWVuOC5kZT4NCj4gRGF0ZTogV2VkLCAzMSBNYXkgMjAyMyAxOToyMzozNCArMDIwMA0K PiBTdWJqZWN0OiBbUEFUQ0hdIHg4Ni9tdHJyOiBVbmlmeSBkZWJ1Z2dpbmcgcHJpbnRpbmcN Cj4gDQo+IFB1dCBhbGwgdGhlIGRlYnVnZ2luZyBvdXRwdXQgYmVoaW5kICJtdHJyPWRlYnVn IiBhbmQgZ2V0IHJpZCBvZg0KPiAibXRycl9jbGVhbnVwX2RlYnVnIiB3aGljaCB3YXNuJ3Qg ZXZlbiBkb2N1bWVudGVkIGFueXdoZXJlLg0KPiANCj4gTm8gZnVuY3Rpb25hbCBjaGFuZ2Vz Lg0KPiANCj4gU2lnbmVkLW9mZi1ieTogQm9yaXNsYXYgUGV0a292IChBTUQpIDxicEBhbGll bjguZGU+DQoNClJldmlld2VkLWJ5OiBKdWVyZ2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+ DQoNCg0KSnVlcmdlbg0KDQo+IC0tLQ0KPiAgIGFyY2gveDg2L2tlcm5lbC9jcHUvbXRyci9j bGVhbnVwLmMgfCA1OSArKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0NCj4gICBhcmNo L3g4Ni9rZXJuZWwvY3B1L210cnIvZ2VuZXJpYy5jIHwgIDIgKy0NCj4gICBhcmNoL3g4Ni9r ZXJuZWwvY3B1L210cnIvbXRyci5jICAgIHwgIDUgKy0tDQo+ICAgYXJjaC94ODYva2VybmVs L2NwdS9tdHJyL210cnIuaCAgICB8ICAzICsrDQo+ICAgNCBmaWxlcyBjaGFuZ2VkLCAyOSBp bnNlcnRpb25zKCspLCA0MCBkZWxldGlvbnMoLSkNCj4gDQo+IGRpZmYgLS1naXQgYS9hcmNo L3g4Ni9rZXJuZWwvY3B1L210cnIvY2xlYW51cC5jIGIvYXJjaC94ODYva2VybmVsL2NwdS9t dHJyL2NsZWFudXAuYw0KPiBpbmRleCBlZDVmODRjMjBhYzIuLjE4Y2Y3OWQ2ZTJjNSAxMDA2 NDQNCj4gLS0tIGEvYXJjaC94ODYva2VybmVsL2NwdS9tdHJyL2NsZWFudXAuYw0KPiArKysg Yi9hcmNoL3g4Ni9rZXJuZWwvY3B1L210cnIvY2xlYW51cC5jDQo+IEBAIC01NSw5ICs1NSw2 IEBAIHN0YXRpYyBpbnQgX19pbml0ZGF0YQkJCQlucl9yYW5nZTsNCj4gICANCj4gICBzdGF0 aWMgc3RydWN0IHZhcl9tdHJyX3JhbmdlX3N0YXRlIF9faW5pdGRhdGEJcmFuZ2Vfc3RhdGVb UkFOR0VfTlVNXTsNCj4gICANCj4gLXN0YXRpYyBpbnQgX19pbml0ZGF0YSBkZWJ1Z19wcmlu dDsNCj4gLSNkZWZpbmUgRHByaW50ayh4Li4uKSBkbyB7IGlmIChkZWJ1Z19wcmludCkgcHJf ZGVidWcoeCk7IH0gd2hpbGUgKDApDQo+IC0NCj4gICAjZGVmaW5lIEJJT1NfQlVHX01TRyBc DQo+ICAgCSJXQVJOSU5HOiBCSU9TIGJ1ZzogVkFSIE1UUlIgJWQgY29udGFpbnMgc3RyYW5n ZSBVQyBlbnRyeSB1bmRlciAxTSwgY2hlY2sgd2l0aCB5b3VyIHN5c3RlbSB2ZW5kb3IhXG4i DQo+ICAgDQo+IEBAIC03OSwxMiArNzYsMTEgQEAgeDg2X2dldF9tdHJyX21lbV9yYW5nZShz dHJ1Y3QgcmFuZ2UgKnJhbmdlLCBpbnQgbnJfcmFuZ2UsDQo+ICAgCQlucl9yYW5nZSA9IGFk ZF9yYW5nZV93aXRoX21lcmdlKHJhbmdlLCBSQU5HRV9OVU0sIG5yX3JhbmdlLA0KPiAgIAkJ CQkJCWJhc2UsIGJhc2UgKyBzaXplKTsNCj4gICAJfQ0KPiAtCWlmIChkZWJ1Z19wcmludCkg ew0KPiAtCQlwcl9kZWJ1ZygiQWZ0ZXIgV0IgY2hlY2tpbmdcbiIpOw0KPiAtCQlmb3IgKGkg PSAwOyBpIDwgbnJfcmFuZ2U7IGkrKykNCj4gLQkJCXByX2RlYnVnKCJNVFJSIE1BUCBQRk46 ICUwMTZsbHggLSAlMDE2bGx4XG4iLA0KPiAtCQkJCSByYW5nZVtpXS5zdGFydCwgcmFuZ2Vb aV0uZW5kKTsNCj4gLQl9DQo+ICsNCj4gKwlEcHJpbnRrKCJBZnRlciBXQiBjaGVja2luZ1xu Iik7DQo+ICsJZm9yIChpID0gMDsgaSA8IG5yX3JhbmdlOyBpKyspDQo+ICsJCURwcmludGso Ik1UUlIgTUFQIFBGTjogJTAxNmxseCAtICUwMTZsbHhcbiIsDQo+ICsJCQkgcmFuZ2VbaV0u c3RhcnQsIHJhbmdlW2ldLmVuZCk7DQo+ICAgDQo+ICAgCS8qIFRha2Ugb3V0IFVDIHJhbmdl czogKi8NCj4gICAJZm9yIChpID0gMDsgaSA8IG51bV92YXJfcmFuZ2VzOyBpKyspIHsNCj4g QEAgLTExMiwyNCArMTA4LDIyIEBAIHg4Nl9nZXRfbXRycl9tZW1fcmFuZ2Uoc3RydWN0IHJh bmdlICpyYW5nZSwgaW50IG5yX3JhbmdlLA0KPiAgIAkJc3VidHJhY3RfcmFuZ2UocmFuZ2Us IFJBTkdFX05VTSwgZXh0cmFfcmVtb3ZlX2Jhc2UsDQo+ICAgCQkJCSBleHRyYV9yZW1vdmVf YmFzZSArIGV4dHJhX3JlbW92ZV9zaXplKTsNCj4gICANCj4gLQlpZiAgKGRlYnVnX3ByaW50 KSB7DQo+IC0JCXByX2RlYnVnKCJBZnRlciBVQyBjaGVja2luZ1xuIik7DQo+IC0JCWZvciAo aSA9IDA7IGkgPCBSQU5HRV9OVU07IGkrKykgew0KPiAtCQkJaWYgKCFyYW5nZVtpXS5lbmQp DQo+IC0JCQkJY29udGludWU7DQo+IC0JCQlwcl9kZWJ1ZygiTVRSUiBNQVAgUEZOOiAlMDE2 bGx4IC0gJTAxNmxseFxuIiwNCj4gLQkJCQkgcmFuZ2VbaV0uc3RhcnQsIHJhbmdlW2ldLmVu ZCk7DQo+IC0JCX0NCj4gKwlEcHJpbnRrKCJBZnRlciBVQyBjaGVja2luZ1xuIik7DQo+ICsJ Zm9yIChpID0gMDsgaSA8IFJBTkdFX05VTTsgaSsrKSB7DQo+ICsJCWlmICghcmFuZ2VbaV0u ZW5kKQ0KPiArCQkJY29udGludWU7DQo+ICsNCj4gKwkJRHByaW50aygiTVRSUiBNQVAgUEZO OiAlMDE2bGx4IC0gJTAxNmxseFxuIiwNCj4gKwkJCSByYW5nZVtpXS5zdGFydCwgcmFuZ2Vb aV0uZW5kKTsNCj4gICAJfQ0KPiAgIA0KPiAgIAkvKiBzb3J0IHRoZSByYW5nZXMgKi8NCj4g ICAJbnJfcmFuZ2UgPSBjbGVhbl9zb3J0X3JhbmdlKHJhbmdlLCBSQU5HRV9OVU0pOw0KPiAt CWlmICAoZGVidWdfcHJpbnQpIHsNCj4gLQkJcHJfZGVidWcoIkFmdGVyIHNvcnRpbmdcbiIp Ow0KPiAtCQlmb3IgKGkgPSAwOyBpIDwgbnJfcmFuZ2U7IGkrKykNCj4gLQkJCXByX2RlYnVn KCJNVFJSIE1BUCBQRk46ICUwMTZsbHggLSAlMDE2bGx4XG4iLA0KPiAtCQkJCSByYW5nZVtp XS5zdGFydCwgcmFuZ2VbaV0uZW5kKTsNCj4gLQl9DQo+ICsNCj4gKwlEcHJpbnRrKCJBZnRl ciBzb3J0aW5nXG4iKTsNCj4gKwlmb3IgKGkgPSAwOyBpIDwgbnJfcmFuZ2U7IGkrKykNCj4g KwkJRHByaW50aygiTVRSUiBNQVAgUEZOOiAlMDE2bGx4IC0gJTAxNmxseFxuIiwNCj4gKwkJ CXJhbmdlW2ldLnN0YXJ0LCByYW5nZVtpXS5lbmQpOw0KPiAgIA0KPiAgIAlyZXR1cm4gbnJf cmFuZ2U7DQo+ICAgfQ0KPiBAQCAtMTY0LDEzICsxNTgsNiBAQCBzdGF0aWMgaW50IF9faW5p dCBlbmFibGVfbXRycl9jbGVhbnVwX3NldHVwKGNoYXIgKnN0cikNCj4gICB9DQo+ICAgZWFy bHlfcGFyYW0oImVuYWJsZV9tdHJyX2NsZWFudXAiLCBlbmFibGVfbXRycl9jbGVhbnVwX3Nl dHVwKTsNCj4gICANCj4gLXN0YXRpYyBpbnQgX19pbml0IG10cnJfY2xlYW51cF9kZWJ1Z19z ZXR1cChjaGFyICpzdHIpDQo+IC17DQo+IC0JZGVidWdfcHJpbnQgPSAxOw0KPiAtCXJldHVy biAwOw0KPiAtfQ0KPiAtZWFybHlfcGFyYW0oIm10cnJfY2xlYW51cF9kZWJ1ZyIsIG10cnJf Y2xlYW51cF9kZWJ1Z19zZXR1cCk7DQo+IC0NCj4gICBzdGF0aWMgdm9pZCBfX2luaXQNCj4g ICBzZXRfdmFyX210cnIodW5zaWduZWQgaW50IHJlZywgdW5zaWduZWQgbG9uZyBiYXNlaywg dW5zaWduZWQgbG9uZyBzaXplaywNCj4gICAJICAgICB1bnNpZ25lZCBjaGFyIHR5cGUpDQo+ IEBAIC0yNjcsNyArMjU0LDcgQEAgcmFuZ2VfdG9fbXRycih1bnNpZ25lZCBpbnQgcmVnLCB1 bnNpZ25lZCBsb25nIHJhbmdlX3N0YXJ0aywNCj4gICAJCQlhbGlnbiA9IG1heF9hbGlnbjsN Cj4gICANCj4gICAJCXNpemVrID0gMVVMIDw8IGFsaWduOw0KPiAtCQlpZiAoZGVidWdfcHJp bnQpIHsNCj4gKwkJaWYgKG10cnJfZGVidWcpIHsNCj4gICAJCQljaGFyIHN0YXJ0X2ZhY3Rv ciA9ICdLJywgc2l6ZV9mYWN0b3IgPSAnSyc7DQo+ICAgCQkJdW5zaWduZWQgbG9uZyBzdGFy dF9iYXNlLCBzaXplX2Jhc2U7DQo+ICAgDQo+IEBAIC01NDIsNyArNTI5LDcgQEAgc3RhdGlj IHZvaWQgX19pbml0IHByaW50X291dF9tdHJyX3JhbmdlX3N0YXRlKHZvaWQpDQo+ICAgCQlz dGFydF9iYXNlID0gdG9fc2l6ZV9mYWN0b3Ioc3RhcnRfYmFzZSwgJnN0YXJ0X2ZhY3Rvcik7 DQo+ICAgCQl0eXBlID0gcmFuZ2Vfc3RhdGVbaV0udHlwZTsNCj4gICANCj4gLQkJcHJfZGVi dWcoInJlZyAlZCwgYmFzZTogJWxkJWNCLCByYW5nZTogJWxkJWNCLCB0eXBlICVzXG4iLA0K PiArCQlEcHJpbnRrKCJyZWcgJWQsIGJhc2U6ICVsZCVjQiwgcmFuZ2U6ICVsZCVjQiwgdHlw ZSAlc1xuIiwNCj4gICAJCQlpLCBzdGFydF9iYXNlLCBzdGFydF9mYWN0b3IsDQo+ICAgCQkJ c2l6ZV9iYXNlLCBzaXplX2ZhY3RvciwNCj4gICAJCQkodHlwZSA9PSBNVFJSX1RZUEVfVU5D QUNIQUJMRSkgPyAiVUMiIDoNCj4gQEAgLTcxNCw3ICs3MDEsNyBAQCBpbnQgX19pbml0IG10 cnJfY2xlYW51cCh2b2lkKQ0KPiAgIAkJcmV0dXJuIDA7DQo+ICAgDQo+ICAgCS8qIFByaW50 IG9yaWdpbmFsIHZhciBNVFJScyBhdCBmaXJzdCwgZm9yIGRlYnVnZ2luZzogKi8NCj4gLQlw cl9kZWJ1Zygib3JpZ2luYWwgdmFyaWFibGUgTVRSUnNcbiIpOw0KPiArCURwcmludGsoIm9y aWdpbmFsIHZhcmlhYmxlIE1UUlJzXG4iKTsNCj4gICAJcHJpbnRfb3V0X210cnJfcmFuZ2Vf c3RhdGUoKTsNCj4gICANCj4gICAJbWVtc2V0KHJhbmdlLCAwLCBzaXplb2YocmFuZ2UpKTsN Cj4gQEAgLTc0Niw3ICs3MzMsNyBAQCBpbnQgX19pbml0IG10cnJfY2xlYW51cCh2b2lkKQ0K PiAgIA0KPiAgIAkJaWYgKCFyZXN1bHRbaV0uYmFkKSB7DQo+ICAgCQkJc2V0X3Zhcl9tdHJy X2FsbCgpOw0KPiAtCQkJcHJfZGVidWcoIk5ldyB2YXJpYWJsZSBNVFJSc1xuIik7DQo+ICsJ CQlEcHJpbnRrKCJOZXcgdmFyaWFibGUgTVRSUnNcbiIpOw0KPiAgIAkJCXByaW50X291dF9t dHJyX3JhbmdlX3N0YXRlKCk7DQo+ICAgCQkJcmV0dXJuIDE7DQo+ICAgCQl9DQo+IEBAIC03 NjYsNyArNzUzLDcgQEAgaW50IF9faW5pdCBtdHJyX2NsZWFudXAodm9pZCkNCj4gICANCj4g ICAJCQltdHJyX2NhbGNfcmFuZ2Vfc3RhdGUoY2h1bmtfc2l6ZSwgZ3Jhbl9zaXplLA0KPiAg IAkJCQkgICAgICB4X3JlbW92ZV9iYXNlLCB4X3JlbW92ZV9zaXplLCBpKTsNCj4gLQkJCWlm IChkZWJ1Z19wcmludCkgew0KPiArCQkJaWYgKG10cnJfZGVidWcpIHsNCj4gICAJCQkJbXRy cl9wcmludF9vdXRfb25lX3Jlc3VsdChpKTsNCj4gICAJCQkJcHJfaW5mbygiXG4iKTsNCj4g ICAJCQl9DQo+IEBAIC03OTAsNyArNzc3LDcgQEAgaW50IF9faW5pdCBtdHJyX2NsZWFudXAo dm9pZCkNCj4gICAJCWdyYW5fc2l6ZSA8PD0gMTA7DQo+ICAgCQl4ODZfc2V0dXBfdmFyX210 cnJzKHJhbmdlLCBucl9yYW5nZSwgY2h1bmtfc2l6ZSwgZ3Jhbl9zaXplKTsNCj4gICAJCXNl dF92YXJfbXRycl9hbGwoKTsNCj4gLQkJcHJfZGVidWcoIk5ldyB2YXJpYWJsZSBNVFJSc1xu Iik7DQo+ICsJCURwcmludGsoIk5ldyB2YXJpYWJsZSBNVFJSc1xuIik7DQo+ICAgCQlwcmlu dF9vdXRfbXRycl9yYW5nZV9zdGF0ZSgpOw0KPiAgIAkJcmV0dXJuIDE7DQo+ICAgCX0gZWxz ZSB7DQo+IGRpZmYgLS1naXQgYS9hcmNoL3g4Ni9rZXJuZWwvY3B1L210cnIvZ2VuZXJpYy5j IGIvYXJjaC94ODYva2VybmVsL2NwdS9tdHJyL2dlbmVyaWMuYw0KPiBpbmRleCBlNWM1MTky ZDhhMjguLjU4YTM4NDg0MzVjNCAxMDA2NDQNCj4gLS0tIGEvYXJjaC94ODYva2VybmVsL2Nw dS9tdHJyL2dlbmVyaWMuYw0KPiArKysgYi9hcmNoL3g4Ni9rZXJuZWwvY3B1L210cnIvZ2Vu ZXJpYy5jDQo+IEBAIC00MSw3ICs0MSw3IEBAIHN0cnVjdCBjYWNoZV9tYXAgew0KPiAgIAl1 NjQgZml4ZWQ6MTsNCj4gICB9Ow0KPiAgIA0KPiAtc3RhdGljIGJvb2wgbXRycl9kZWJ1ZzsN Cj4gK2Jvb2wgbXRycl9kZWJ1ZzsNCj4gICANCj4gICBzdGF0aWMgaW50IF9faW5pdCBtdHJy X3BhcmFtX3NldHVwKGNoYXIgKnN0cikNCj4gICB7DQo+IGRpZmYgLS1naXQgYS9hcmNoL3g4 Ni9rZXJuZWwvY3B1L210cnIvbXRyci5jIGIvYXJjaC94ODYva2VybmVsL2NwdS9tdHJyL210 cnIuYw0KPiBpbmRleCBlYzg2NzBiYjVkODguLjc2N2JmMWM3MWFhZCAxMDA2NDQNCj4gLS0t IGEvYXJjaC94ODYva2VybmVsL2NwdS9tdHJyL210cnIuYw0KPiArKysgYi9hcmNoL3g4Ni9r ZXJuZWwvY3B1L210cnIvbXRyci5jDQo+IEBAIC0zMzIsNyArMzMyLDcgQEAgc3RhdGljIGlu dCBtdHJyX2NoZWNrKHVuc2lnbmVkIGxvbmcgYmFzZSwgdW5zaWduZWQgbG9uZyBzaXplKQ0K PiAgIHsNCj4gICAJaWYgKChiYXNlICYgKFBBR0VfU0laRSAtIDEpKSB8fCAoc2l6ZSAmIChQ QUdFX1NJWkUgLSAxKSkpIHsNCj4gICAJCXByX3dhcm4oInNpemUgYW5kIGJhc2UgbXVzdCBi ZSBtdWx0aXBsZXMgb2YgNCBraUJcbiIpOw0KPiAtCQlwcl9kZWJ1Zygic2l6ZTogMHglbHgg IGJhc2U6IDB4JWx4XG4iLCBzaXplLCBiYXNlKTsNCj4gKwkJRHByaW50aygic2l6ZTogMHgl bHggIGJhc2U6IDB4JWx4XG4iLCBzaXplLCBiYXNlKTsNCj4gICAJCWR1bXBfc3RhY2soKTsN Cj4gICAJCXJldHVybiAtMTsNCj4gICAJfQ0KPiBAQCAtNDIzLDggKzQyMyw3IEBAIGludCBt dHJyX2RlbF9wYWdlKGludCByZWcsIHVuc2lnbmVkIGxvbmcgYmFzZSwgdW5zaWduZWQgbG9u ZyBzaXplKQ0KPiAgIAkJCX0NCj4gICAJCX0NCj4gICAJCWlmIChyZWcgPCAwKSB7DQo+IC0J CQlwcl9kZWJ1Zygibm8gTVRSUiBmb3IgJWx4MDAwLCVseDAwMCBmb3VuZFxuIiwNCj4gLQkJ CQkgYmFzZSwgc2l6ZSk7DQo+ICsJCQlEcHJpbnRrKCJubyBNVFJSIGZvciAlbHgwMDAsJWx4 MDAwIGZvdW5kXG4iLCBiYXNlLCBzaXplKTsNCj4gICAJCQlnb3RvIG91dDsNCj4gICAJCX0N Cj4gICAJfQ0KPiBkaWZmIC0tZ2l0IGEvYXJjaC94ODYva2VybmVsL2NwdS9tdHJyL210cnIu aCBiL2FyY2gveDg2L2tlcm5lbC9jcHUvbXRyci9tdHJyLmgNCj4gaW5kZXggODM4NWQ3ZDNh ODY1Li41NjU1ZjI1M2Q5MjkgMTAwNjQ0DQo+IC0tLSBhL2FyY2gveDg2L2tlcm5lbC9jcHUv bXRyci9tdHJyLmgNCj4gKysrIGIvYXJjaC94ODYva2VybmVsL2NwdS9tdHJyL210cnIuaA0K PiBAQCAtMTAsNiArMTAsOSBAQA0KPiAgICNkZWZpbmUgTVRSUl9DSEFOR0VfTUFTS19WQVJJ QUJMRSAgMHgwMg0KPiAgICNkZWZpbmUgTVRSUl9DSEFOR0VfTUFTS19ERUZUWVBFICAgMHgw NA0KPiAgIA0KPiArZXh0ZXJuIGJvb2wgbXRycl9kZWJ1ZzsNCj4gKyNkZWZpbmUgRHByaW50 ayh4Li4uKSBkbyB7IGlmIChtdHJyX2RlYnVnKSBwcl9pbmZvKHgpOyB9IHdoaWxlICgwKQ0K PiArDQo+ICAgZXh0ZXJuIHVuc2lnbmVkIGludCBtdHJyX3VzYWdlX3RhYmxlW01UUlJfTUFY X1ZBUl9SQU5HRVNdOw0KPiAgIA0KPiAgIHN0cnVjdCBtdHJyX29wcyB7DQoNCg== --------------wnGgi9qHUTjxOCMCiGguEV5I Content-Type: application/pgp-keys; name="OpenPGP_0xB0DE9DD628BF132F.asc" Content-Disposition: attachment; filename="OpenPGP_0xB0DE9DD628BF132F.asc" Content-Description: OpenPGP public key Content-Transfer-Encoding: quoted-printable -----BEGIN PGP PUBLIC KEY BLOCK----- xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjri oyspZKOBycWxw3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2 kaV2KL9650I1SJvedYm8Of8Zd621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i 1TXkH09XSSI8mEQ/ouNcMvIJNwQpd369y9bfIhWUiVXEK7MlRgUG6MvIj6Y3Am/B BLUVbDa4+gmzDC9ezlZkTZG2t14zWPvxXP3FAp2pkW0xqG7/377qptDmrk42GlSK N4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEBAAHNHEp1ZXJnZW4gR3Jvc3Mg PGpnQHBmdXBmLm5ldD7CwHkEEwECACMFAlOMcBYCGwMHCwkIBwMCAQYVCAIJCgsE FgIDAQIeAQIXgAAKCRCw3p3WKL8TL0KdB/93FcIZ3GCNwFU0u3EjNbNjmXBKDY4F UGNQH2lvWAUy+dnyThpwdtF/jQ6j9RwE8VP0+NXcYpGJDWlNb9/JmYqLiX2Q3Tye vpB0CA3dbBQp0OW0fgCetToGIQrg0MbD1C/sEOv8Mr4NAfbauXjZlvTj30H2jO0u +6WGM6nHwbh2l5O8ZiHkH32iaSTfN7Eu5RnNVUJbvoPHZ8SlM4KWm8rG+lIkGurq qu5gu8q8ZMKdsdGC4bBxdQKDKHEFExLJK/nRPFmAuGlId1E3fe10v5QL+qHI3EIP tyfE7i9Hz6rVwi7lWKgh7pe0ZvatAudZ+JNIlBKptb64FaiIOAWDCx1SzR9KdWVy Z2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+wsB5BBMBAgAjBQJTjHCvAhsDBwsJ CAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey/HmQf/RtI7kv5A2PS4 RF7HoZhPVPogNVbC4YA6lW7DrWf0teC0RR3MzXfy6pJ+7KLgkqMlrAbN/8Dvjoz7 8X+5vhH/rDLa9BuZQlhFmvcGtCF8eR0T1v0nC/nuAFVGy+67q2DH8As3KPu0344T BDpAvr2uYM4tSqxK4DURx5INz4ZZ0WNFHcqsfvlGJALDeE0LhITTd9jLzdDad1pQ SToCnLl6SBJZjDOX9QQcyUigZFtCXFst4dlsvddrxyqT1f17+2cFSdu7+ynLmXBK 7abQ3rwJY8SbRO2iRulogc5vr/RLMMlscDAiDkaFQWLoqHHOdfO9rURssHNN8WkM nQfvUewRz80hSnVlcmdlbiBHcm9zcyA8amdyb3NzQG5vdmVsbC5jb20+wsB5BBMB AgAjBQJTjHDXAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/ Ey8PUQf/ehmgCI9jB9hlgexLvgOtf7PJnFOXgMLdBQgBlVPO3/D9R8LtF9DBAFPN hlrsfIG/SqICoRCqUcJ96Pn3P7UUinFG/I0ECGF4EvTE1jnDkfJZr6jrbjgyoZHi w/4BNwSTL9rWASyLgqlA8u1mf+c2yUwcGhgkRAd1gOwungxcwzwqgljf0N51N5Jf VRHRtyfwq/ge+YEkDGcTU6Y0sPOuj4Dyfm8fJzdfHNQsWq3PnczLVELStJNdapwP OoE+lotufe3AM2vAEYJ9rTz3Cki4JFUsgLkHFqGZarrPGi1eyQcXeluldO3m91NK /1xMI3/+8jbO0tsn1tqSEUGIJi7ox80eSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1 c2UuZGU+wsB5BBMBAgAjBQJTjHDrAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgEC F4AACgkQsN6d1ii/Ey+LhQf9GL45eU5vOowA2u5N3g3OZUEBmDHVVbqMtzwlmNC4 k9Kx39r5s2vcFl4tXqW7g9/ViXYuiDXb0RfUpZiIUW89siKrkzmQ5dM7wRqzgJpJ wK8Bn2MIxAKArekWpiCKvBOB/Cc+3EXE78XdlxLyOi/NrmSGRIov0karw2RzMNOu 5D+jLRZQd1Sv27AR+IP3I8U4aqnhLpwhK7MEy9oCILlgZ1QZe49kpcumcZKORmzB TNh30FVKK1EvmV2xAKDoaEOgQB4iFQLhJCdP1I5aSgM5IVFdn7v5YgEYuJYx37Io N1EblHI//x/e2AaIHpzK5h88NEawQsaNRpNSrcfbFmAg987ATQRTjHAWAQgAyzH6 AOODMBjgfWE9VeCgsrwH3exNAU32gLq2xvjpWnHIs98ndPUDpnoxWQugJ6MpMncr 0xSwFmHEgnSEjK/PAjppgmyc57BwKII3sV4on+gDVFJR6Y8ZRwgnBC5mVM6JjQ5x Dk8WRXljExRfUX9pNhdE5eBOZJrDRoLUmmjDtKzWaDhIg/+1Hzz93X4fCQkNVbVF LELU9bMaLPBG/x5q4iYZ2k2ex6d47YE1ZFdMm6YBYMOljGkZKwYde5ldM9mo45mm we0icXKLkpEdIXKTZeKDO+Hdv1aqFuAcccTg9RXDQjmwhC3yEmrmcfl0+rPghO0I v3OOImwTEe4co3c1mwARAQABwsBfBBgBAgAJBQJTjHAWAhsMAAoJELDendYovxMv Q/gH/1ha96vm4P/L+bQpJwrZ/dneZcmEwTbe8YFsw2V/Buv6Z4Mysln3nQK5ZadD 534CF7TDVft7fC4tU4PONxF5D+/tvgkPfDAfF77zy2AH1vJzQ1fOU8lYFpZXTXIH b+559UqvIB8AdgR3SAJGHHt4RKA0F7f5ipYBBrC6cyXJyyoprT10EMvU8VGiwXvT yJz3fjoYsdFzpWPlJEBRMedCot60g5dmbdrZ5DWClAr0yau47zpWj3enf1tLWaqc suylWsviuGjKGw7KHQd3bxALOknAp4dN3QwBYCKuZ7AddY9yjynVaD5X7nF9nO5B jR/i1DG86lem3iBDXzXsZDn8R38=3D =3D2wuH -----END PGP PUBLIC KEY BLOCK----- --------------wnGgi9qHUTjxOCMCiGguEV5I-- --------------QIQ4dzXU0FOJ0NlrWslFqVZw-- --------------IcFDbzCEbOZUoIIQjljHnzjw Content-Type: application/pgp-signature; name="OpenPGP_signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="OpenPGP_signature" -----BEGIN PGP SIGNATURE----- wsB5BAABCAAjFiEEhRJncuj2BJSl0Jf3sN6d1ii/Ey8FAmR4PRUFAwAAAAAACgkQsN6d1ii/Ey+P qQf9Etox5UudS5NPRePdMAzbk2QcQbyRXuvIYLtEAlbIol2Se/0sWNnqzYxbgGAEVz6TGd5iuB8I lC6w+GeGVOLqWB/i+8EFvHBwVeWzrcDX4RSV+BmDsDwaX3zcVTA4iy6pYxYih1+h6cR1yypciKbk COcI54R0pxfb3ruKg32nhJ1kdkc8PukXiGDPqCbwniA+/VWobpAjyCeXU3iftc53aMNnmY9Gd6Nr iqg9PkyPwrfEUPo28ti8O1yLB4QpNhEXNNU8XcvooAHLXkBNFGmGv7cx23tukyNWwbhybEDhpKna OYidLyQD/eLVs56hl+kJ/5/TMzmzFB9Do5MoNEBe3w== =ZtIN -----END PGP SIGNATURE----- --------------IcFDbzCEbOZUoIIQjljHnzjw-- From xen-devel-bounces@lists.xenproject.org Thu Jun 01 06:58:48 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 06:58:48 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542249.845879 (Exim 4.92) (envelope-from ) id 1q4cGg-0003iK-HW; Thu, 01 Jun 2023 06:58:42 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542249.845879; Thu, 01 Jun 2023 06:58:42 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4cGg-0003iD-Ek; Thu, 01 Jun 2023 06:58:42 +0000 Received: by outflank-mailman (input) for mailman id 542249; Thu, 01 Jun 2023 06:58:41 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4cGf-0003i7-3m for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 06:58:41 +0000 Received: from NAM12-BN8-obe.outbound.protection.outlook.com (mail-bn8nam12on20616.outbound.protection.outlook.com [2a01:111:f400:fe5b::616]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id bb7bafe5-0049-11ee-b231-6b7b168915f2; Thu, 01 Jun 2023 08:58:38 +0200 (CEST) Received: from MWH0EPF00056D10.namprd21.prod.outlook.com (2603:10b6:30f:fff2:0:1:0:13) by SJ2PR12MB7990.namprd12.prod.outlook.com (2603:10b6:a03:4c3::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6433.22; Thu, 1 Jun 2023 06:58:31 +0000 Received: from CO1PEPF000044F8.namprd21.prod.outlook.com (2a01:111:f403:f807::1) by MWH0EPF00056D10.outlook.office365.com (2603:1036:d20::b) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.7 via Frontend Transport; Thu, 1 Jun 2023 06:58:30 +0000 Received: from SATLEXMB03.amd.com (165.204.84.17) by CO1PEPF000044F8.mail.protection.outlook.com (10.167.241.198) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6477.3 via Frontend Transport; Thu, 1 Jun 2023 06:58:28 +0000 Received: from SATLEXMB06.amd.com (10.181.40.147) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Thu, 1 Jun 2023 01:58:28 -0500 Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB06.amd.com (10.181.40.147) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Thu, 1 Jun 2023 01:58:27 -0500 Received: from [10.71.193.39] (10.180.168.240) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server id 15.1.2375.34 via Frontend Transport; Thu, 1 Jun 2023 01:58:27 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: bb7bafe5-0049-11ee-b231-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=I4ZFAb17r9jbXM+98GQsFSM357oJtNJZ2PTNRyHTarS/NBHO8lk9XeuWrQwmj4zmw9JXf7+CdHRv0VwY6BzrPdUyErNlxvtNzv3DfiqAkb6j1l11tEI1+J56uKJJ+145tC8kBTS3bHnHuu18bJKkekESTbsXlmC5k751Dehazj6L8zT/mczdVyzIhqoVFHXr0rNMzdgIOgSWN1U1OQwtwm484tnekPSHgLdSXv2zHlvHfUjQ2jSGt/xQZTVpuiKgMtJzgdK8TvGaXPV9Hnha3l8UdZdwyXGuLkiOa6GEZ5EkxMuM+F1+mAZsH+GrP6Svnop105Y0FnGIPjE/+sWOlw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=nTF8SE41U7AikeKtvWn9Dua2dAKfj1zQOj57L7NbJQU=; b=AUpM26WkwrNxA/DgP2Vru1VfmT4ZYkpHSXqK3yt8bMyutXHQUddvfBbv9zJ2jKVe6KNYXmTmJOo/JX9OMIR3URt0KVS3q1eztOh9AYZSkne19plYLTzsrnjY4U3AKTa7TSXDITGHzLhwaVXSHswwesUyTY6IsbfyLBtmPrpU8V/U52t+Jq6y8KPRPieu7AeCIWLp9+CGmpWjeqTtrZoftv7wDoIYMlsC7spuc2Pcnu8nJfbapklKkXDVAKdOBN8yhyOQWrvej9AwfJ11D5yF6IexwcdhPnnGBU4kgOegJx11W+62LCcWbaAr94LCm3TgtQ0D6OtHZAzl9iLbFet1tg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=nTF8SE41U7AikeKtvWn9Dua2dAKfj1zQOj57L7NbJQU=; b=ZdKAzx/n5pW5PRz0eRD/dkTQZAIagdvkICr4FGxEaKGDMCbeOxIm25kvH4uc5JaeUKih9fUpZ68BadvXCsyf7CPZymR+x9HOnwRrSk/bQX4t2C3yo6aRB1HQOpzqSYQiieyNv8WSCRjIDCduFVYpaG3wt6TUeGpUlCE3fhrOf8k= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C Message-ID: Date: Thu, 1 Jun 2023 08:58:21 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [XEN][PATCH v6 02/19] common/device_tree: handle memory allocation failure in __unflatten_device_tree() To: Vikram Garhwal , CC: , Julien Grall References: <20230502233650.20121-1-vikram.garhwal@amd.com> <20230502233650.20121-3-vikram.garhwal@amd.com> <57937e19-e038-b36a-73aa-c2a95de7e525@amd.com> Content-Language: en-US From: Michal Orzel In-Reply-To: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO1PEPF000044F8:EE_|SJ2PR12MB7990:EE_ X-MS-Office365-Filtering-Correlation-Id: faa1dc76-e2e6-423a-d3be-08db626d9ab1 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: dZ+XhMqa9lYUw5GNzZnPvj6OBp7WYVD71MbBORBoqcnOPJUxqy4q4OPp47XNq4NoGvE0tJLoXPz/7OzSNdS/neQgiRRRwwIQHIcCIow/ThtEHPXoJi7w0sqERhQLWjinazTfArPT9xlh8I3tRlfmR8GDjoSjwV+y3pd0Mola29eoj4pfm5NEK/X+ufkvUtlvAqczT6AuyTr93N7VM4SmQj8hHPR/7hr6glvqfpJ2rLxZCU62RuXBCRpAY56s7uq2yolcGeMImrxa6/F0mX7u44/E0UBntdSJPxB2jCYZh8l1cvkbITkmN64YaxNwH+imO7xk9I4MQL26CvoDMZ/xd2ybpX+gqc8iwNBBfXtzZZq/zZWO5foqRXdM8S4yld0CwrOF0ZdhPasMVrbPxUUTpZVQa9uABEhGoxXLZuc4nrPTCmtK/VAAMPDyTSSZNcOCNmcj9+FSXZKI8vK0IyED8C8gLX7svY12lzzeodtpCkTAIc6JyySFdU/KMXAaJQSUff6Co4korYpNfuhdhXWkdNINFaaeAnwfsdldNBikqFpDaR//BZx1NDB5qwYu9fhXxGVemnEo0hK+HcwT6UjCm2g99JrQCXQOETjejgtuyfQcbv5NrrvWDpvLFl9bf9HsPnCyyZfFQGRw5ayShCxPB8r7dx6oXJtOvlsadkryWJ5Bix4lgG0HQKoNnpQF8eX9XXLxsHmnyMTpr8o48nznsvuR+U40XBNDptzXj4iGakUYrJlfqLOnJeZWFUF23B5bohzMcN7EBinm+kQc0bBCfApfDyoz012qeMhHh91sHNE= X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(136003)(396003)(376002)(346002)(451199021)(46966006)(36840700001)(40470700004)(4744005)(2906002)(16576012)(40460700003)(2616005)(54906003)(110136005)(186003)(82310400005)(86362001)(6666004)(31696002)(36756003)(26005)(53546011)(40480700001)(478600001)(4326008)(8676002)(8936002)(5660300002)(47076005)(82740400003)(81166007)(356005)(83380400001)(44832011)(70586007)(70206006)(316002)(426003)(336012)(41300700001)(31686004)(36860700001)(36900700001)(43740500002);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Jun 2023 06:58:28.7953 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: faa1dc76-e2e6-423a-d3be-08db626d9ab1 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com] X-MS-Exchange-CrossTenant-AuthSource: CO1PEPF000044F8.namprd21.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ2PR12MB7990 Hi Vikram, On 31/05/2023 22:32, Vikram Garhwal wrote: > Hi Michal, > > On 5/5/23 2:38 AM, Michal Orzel wrote: >> On 03/05/2023 01:36, Vikram Garhwal wrote: >>> >>> Change __unflatten_device_tree() return type to integer so it can propagate >>> memory allocation failure. Add panic() in dt_unflatten_host_device_tree() for >>> memory allocation failure during boot. >>> >>> Signed-off-by: Vikram Garhwal >> I think we are missing a Fixes tag. > Like the below line? > Fixes: fb97eb6 ("xen/arm: Create a hierarchical device tree") Please check docs/process/sending-patches.pandoc The correct format for a Fixes tag should be: Fixes: fb97eb614acf ("xen/arm: Create a hierarchical device tree") ~Michal From xen-devel-bounces@lists.xenproject.org Thu Jun 01 07:16:27 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 07:16:27 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542254.845893 (Exim 4.92) (envelope-from ) id 1q4cXd-0006Fd-0U; Thu, 01 Jun 2023 07:16:13 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542254.845893; Thu, 01 Jun 2023 07:16:12 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4cXc-0006FW-TS; Thu, 01 Jun 2023 07:16:12 +0000 Received: by outflank-mailman (input) for mailman id 542254; Thu, 01 Jun 2023 07:16:11 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4cXb-0006FQ-Rz for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 07:16:11 +0000 Received: from mail-wm1-x329.google.com (mail-wm1-x329.google.com [2a00:1450:4864:20::329]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 2dc3f3eb-004c-11ee-b231-6b7b168915f2; Thu, 01 Jun 2023 09:16:08 +0200 (CEST) Received: by mail-wm1-x329.google.com with SMTP id 5b1f17b1804b1-3f603ff9c02so5247215e9.2 for ; Thu, 01 Jun 2023 00:16:08 -0700 (PDT) Received: from [192.168.69.115] ([176.176.141.224]) by smtp.gmail.com with ESMTPSA id f15-20020a7bcd0f000000b003f4272c2d0csm1185408wmj.36.2023.06.01.00.16.04 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Thu, 01 Jun 2023 00:16:07 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 2dc3f3eb-004c-11ee-b231-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1685603768; x=1688195768; h=content-transfer-encoding:in-reply-to:from:references:cc:to :content-language:subject:user-agent:mime-version:date:message-id :from:to:cc:subject:date:message-id:reply-to; bh=WxzX/yCNlI8j55zMId0+95rQUKgWabv2ID5tlei60QM=; b=Gen2Cia+8jwTVAFZKVgGWlirQvMrtFyXZ9UoEsuR/bvjDIJOGRMO1lVO1gSIX4316Q +OJNvgZk8IX1ihXqQXwqenIpLkmpItGw5/co228wbljIfirJPEqEEgVld+V61ZA3s5zA Cic5VL9KIipJMomumYYWISL9cGH3jPqHF99y/q15gHBv7D12a5Mw/5ZIymC48Sm9y5sS qkuas5BNYbHlymXURf3sSCAO+av/DtT0fuSx5WKZ/JOXOBF75uwl7oSoOb0rAt2dV4es MGwK0yAJHxO7sI6vCYvZEVfTWDmIkQU2ZD82keOoDRTLpHyLMypa+6jxdJ6OWGPlyBA3 5Bjw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1685603768; x=1688195768; h=content-transfer-encoding:in-reply-to:from:references:cc:to :content-language:subject:user-agent:mime-version:date:message-id :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=WxzX/yCNlI8j55zMId0+95rQUKgWabv2ID5tlei60QM=; b=UMdgTtLjZTNlDx4sj8Zbwr+FJZrLFmSJGOoEhw2YASEHZwBZbHrY7ODFxzecD1C3vZ 4F5FJr/qqyAepd3iJyITfI862l0EQd5GWSnzuLbO88pBAO9FzWdK+Px9ZLvbQ2ugFd0O aP3nEbUsd9aAoFGPADMrFS4sShsWWSvonnXrOvfku5IfD1pl4/ivUUUmZAUXx7VRd6Cz h7cPAfmNSPKfHDEFQh6WuzvQkmiXEWViFnUdaara9DZPRquS305NiKYITkDel8RAdTnx vh2riY+IVNT295tVWuKnUnf8toL90EPWOm2TMieLBN8zMQodEfqv+7qvdie2jyTtayM0 Gqhg== X-Gm-Message-State: AC+VfDwAw/dG6Um71CeTN9GtL8fzxKqLvU6KyCraiNVCRVP7buceQlur m/0ONCWGR2/vZ4mKNwUa5yjyuA== X-Google-Smtp-Source: ACHHUZ4hON2fkLvrpZTHSEtZk4pe9Oj8d4QR+Z+nkJfpLOiDJ009Fgvl5JdUmRVI16HmDclpVVxrAQ== X-Received: by 2002:a7b:c5d4:0:b0:3f6:ffe:9ef1 with SMTP id n20-20020a7bc5d4000000b003f60ffe9ef1mr1110012wmk.36.1685603767760; Thu, 01 Jun 2023 00:16:07 -0700 (PDT) Message-ID: <72ccd4c2-7c60-e015-2322-721d09a8334b@linaro.org> Date: Thu, 1 Jun 2023 09:16:03 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH v2 0/2] net: Update MemReentrancyGuard for NIC Content-Language: en-US To: Akihiko Odaki Cc: Mauro Matteo Cascella , P J P , Alexander Bulekov , Dmitry Fleytman , Beniamino Galvani , Peter Maydell , Strahinja Jankovic , Jason Wang , "Edgar E. Iglesias" , Alistair Francis , Stefan Weil , =?UTF-8?Q?C=c3=a9dric_Le_Goater?= , Andrew Jeffery , Joel Stanley , Richard Henderson , Helge Deller , Sriram Yagnaraman , Thomas Huth , Aleksandar Rikalo , Subbaraya Sundeep , Jan Kiszka , Tyrone Ting , Hao Wu , Max Filippov , Jiri Pirko , Daniel Henrique Barboza , David Gibson , Greg Kurz , Harsh Prateek Bora , Sven Schnelle , "Michael S. Tsirkin" , Stefano Stabellini , Anthony Perard , Paul Durrant , Rob Herring , Gerd Hoffmann , qemu-arm@nongnu.org, qemu-devel@nongnu.org, qemu-ppc@nongnu.org, xen-devel@lists.xenproject.org References: <20230601031859.7115-1-akihiko.odaki@daynix.com> From: =?UTF-8?Q?Philippe_Mathieu-Daud=c3=a9?= In-Reply-To: <20230601031859.7115-1-akihiko.odaki@daynix.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit On 1/6/23 05:18, Akihiko Odaki wrote: > Recently MemReentrancyGuard was added to DeviceState to record that the > device is engaging in I/O. The network device backend needs to update it > when delivering a packet to a device. > > This implementation follows what bottom half does, but it does not add > a tracepoint for the case that the network device backend started > delivering a packet to a device which is already engaging in I/O. This > is because such reentrancy frequently happens for > qemu_flush_queued_packets() and is insignificant. > > This series consists of two patches. The first patch makes a bulk change to > add a new parameter to qemu_new_nic() and does not contain behavioral changes. > The second patch actually implements MemReentrancyGuard update. /me look at the 'net' API. So the NetReceive* handlers from NetClientInfo process the HW NIC data flow, independently from the CPUs. IIUC MemReentrancyGuard is supposed to protect reentrancy abuse from CPUs. NetReceive* handlers aren't restricted to any particular API, they just consume blob of data. Looking at e1000_receive_iov(), this data is filled into memory using the pci_dma_rw() API. pci_dma_rw() gets the AddressSpace to use calling pci_get_address_space(), which returns PCIDevice::bus_master_as. Then we use the dma_memory_rw(), followed by address_space_rw(). Beh, I fail to see why there is reentrancy checks from this NIC DMA HW path. Maybe the MemoryRegion API isn't the correct place to check for reentrancy abuse and we should do that at the AddressSpace level, keeping DMA ASes clear and only protecting CPU ASes? From xen-devel-bounces@lists.xenproject.org Thu Jun 01 07:20:26 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 07:20:26 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542258.845903 (Exim 4.92) (envelope-from ) id 1q4cbh-0007fr-HT; Thu, 01 Jun 2023 07:20:25 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542258.845903; Thu, 01 Jun 2023 07:20:25 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4cbh-0007fk-Ek; Thu, 01 Jun 2023 07:20:25 +0000 Received: by outflank-mailman (input) for mailman id 542258; Thu, 01 Jun 2023 07:20:24 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4cbg-0007fe-S4 for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 07:20:24 +0000 Received: from mail-yw1-f175.google.com (mail-yw1-f175.google.com [209.85.128.175]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id c5ad4993-004c-11ee-b231-6b7b168915f2; Thu, 01 Jun 2023 09:20:23 +0200 (CEST) Received: by mail-yw1-f175.google.com with SMTP id 00721157ae682-565e6beb7aaso5623707b3.2 for ; Thu, 01 Jun 2023 00:20:23 -0700 (PDT) Received: from mail-yb1-f175.google.com (mail-yb1-f175.google.com. [209.85.219.175]) by smtp.gmail.com with ESMTPSA id v66-20020a0dd345000000b005618c4fcab6sm6007794ywd.50.2023.06.01.00.20.19 for (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Thu, 01 Jun 2023 00:20:21 -0700 (PDT) Received: by mail-yb1-f175.google.com with SMTP id 3f1490d57ef6-bacf685150cso535472276.3 for ; Thu, 01 Jun 2023 00:20:19 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: c5ad4993-004c-11ee-b231-6b7b168915f2 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1685604022; x=1688196022; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=uahBQ1+NZ4LtBmJlKuzSeHMKUQpvPqnHtI00z7d7Eg4=; b=SSFl7DR4EKo/0bKgNdl6gygA8l2Eyppb20dbC9NTKBuKmmJnmpDe39pUZKF9wwd/w7 /SylQ5tWAFsvi8euO7NtRBrqk7rn7WNWF8OP988/jADWWWnaGsZoVcy1RREfXi/CNq7B pvY9vMGSPuTg5Lm6SCFzsgGtzoUSFK6iQzF0WXU0eFwEnNgJvaktWD+Ly8xh3lxPS3+S 1lRD9rHfNFGTxk1X/7QC56PZhpHcEgJDyKpOtQ/4zPO/ns6p/SiLKuDuJlmgtftY+Jy6 IzZi9fHiLxW85NMS70pA73KGh/gm3+P3gaz5Aak+G4G0cEUudirGSeN1Z9uDntA2mGUK qOFw== X-Gm-Message-State: AC+VfDwhKOEhzXIv5A2LuF9MniR+FwsO8pBAs3NbwRBpayZDwz0f5M9q aCdm0J82oRMF0hDNSRM81/BqFtM13EG72Q== X-Google-Smtp-Source: ACHHUZ5zyhF81iAF/yoCUp4xDiPmdUMDUzTQ1hcNg5fWEQ0+DGRyOROkE0ZUBQQlF/Q7hb9QU5UVTg== X-Received: by 2002:a0d:df54:0:b0:565:a3e6:1b7b with SMTP id i81-20020a0ddf54000000b00565a3e61b7bmr8930018ywe.18.1685604022436; Thu, 01 Jun 2023 00:20:22 -0700 (PDT) X-Received: by 2002:a25:6891:0:b0:ba8:7122:2917 with SMTP id d139-20020a256891000000b00ba871222917mr10052062ybc.0.1685604018484; Thu, 01 Jun 2023 00:20:18 -0700 (PDT) MIME-Version: 1.0 References: <20230531213032.25338-1-vishal.moola@gmail.com> <20230531213032.25338-31-vishal.moola@gmail.com> In-Reply-To: <20230531213032.25338-31-vishal.moola@gmail.com> From: Geert Uytterhoeven Date: Thu, 1 Jun 2023 09:20:05 +0200 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: [PATCH v3 30/34] sh: Convert pte_free_tlb() to use ptdescs To: "Vishal Moola (Oracle)" Cc: Andrew Morton , Matthew Wilcox , linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Yoshinori Sato , John Paul Adrian Glaubitz Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Wed, May 31, 2023 at 11:33=E2=80=AFPM Vishal Moola (Oracle) wrote: > Part of the conversions to replace pgtable constructor/destructors with > ptdesc equivalents. Also cleans up some spacing issues. > > Signed-off-by: Vishal Moola (Oracle) LGTM, so Reviewed-by: Geert Uytterhoeven Gr{oetje,eeting}s, Geert --=20 Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k= .org In personal conversations with technical people, I call myself a hacker. Bu= t when I'm talking to journalists I just say "programmer" or something like t= hat. -- Linus Torvalds From xen-devel-bounces@lists.xenproject.org Thu Jun 01 07:29:23 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 07:29:23 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542263.845916 (Exim 4.92) (envelope-from ) id 1q4ckE-0008Ke-DU; Thu, 01 Jun 2023 07:29:14 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542263.845916; Thu, 01 Jun 2023 07:29:14 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4ckE-0008KX-9P; Thu, 01 Jun 2023 07:29:14 +0000 Received: by outflank-mailman (input) for mailman id 542263; Thu, 01 Jun 2023 07:29:13 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4ckC-0008KR-Um for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 07:29:12 +0000 Received: from outpost1.zedat.fu-berlin.de (outpost1.zedat.fu-berlin.de [130.133.4.66]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 0059735f-004e-11ee-b231-6b7b168915f2; Thu, 01 Jun 2023 09:29:11 +0200 (CEST) Received: from inpost2.zedat.fu-berlin.de ([130.133.4.69]) by outpost.zedat.fu-berlin.de (Exim 4.95) with esmtps (TLS1.3) tls TLS_AES_256_GCM_SHA384 (envelope-from ) id 1q4cjY-001s7N-3r; Thu, 01 Jun 2023 09:28:32 +0200 Received: from p57bd9d78.dip0.t-ipconnect.de ([87.189.157.120] helo=[192.168.178.81]) by inpost2.zedat.fu-berlin.de (Exim 4.95) with esmtpsa (TLS1.3) tls TLS_AES_256_GCM_SHA384 (envelope-from ) id 1q4cjX-002tZZ-RO; Thu, 01 Jun 2023 09:28:32 +0200 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 0059735f-004e-11ee-b231-6b7b168915f2 Message-ID: <025fc34a24e1a1c26b187f15dba86d382d9617eb.camel@physik.fu-berlin.de> Subject: Re: [PATCH v3 30/34] sh: Convert pte_free_tlb() to use ptdescs From: John Paul Adrian Glaubitz To: Geert Uytterhoeven , "Vishal Moola (Oracle)" Cc: Andrew Morton , Matthew Wilcox , linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Yoshinori Sato Date: Thu, 01 Jun 2023 09:28:30 +0200 In-Reply-To: References: <20230531213032.25338-1-vishal.moola@gmail.com> <20230531213032.25338-31-vishal.moola@gmail.com> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable User-Agent: Evolution 3.48.1 MIME-Version: 1.0 X-Original-Sender: glaubitz@physik.fu-berlin.de X-Originating-IP: 87.189.157.120 X-ZEDAT-Hint: PO Hi Geert! On Thu, 2023-06-01 at 09:20 +0200, Geert Uytterhoeven wrote: > On Wed, May 31, 2023 at 11:33=E2=80=AFPM Vishal Moola (Oracle) > wrote: > > Part of the conversions to replace pgtable constructor/destructors with > > ptdesc equivalents. Also cleans up some spacing issues. > >=20 > > Signed-off-by: Vishal Moola (Oracle) >=20 > LGTM, so > Reviewed-by: Geert Uytterhoeven I assume this series is supposed to go through some mm tree? Adrian --=20 .''`. John Paul Adrian Glaubitz : :' : Debian Developer `. `' Physicist `- GPG: 62FF 8A75 84E0 2956 9546 0006 7426 3B37 F5B5 F913 From xen-devel-bounces@lists.xenproject.org Thu Jun 01 07:40:41 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 07:40:41 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542267.845926 (Exim 4.92) (envelope-from ) id 1q4cv4-0002Fo-D4; Thu, 01 Jun 2023 07:40:26 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542267.845926; Thu, 01 Jun 2023 07:40:26 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4cv4-0002Fh-9y; Thu, 01 Jun 2023 07:40:26 +0000 Received: by outflank-mailman (input) for mailman id 542267; Thu, 01 Jun 2023 07:40:24 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4cv2-0001R4-Aa for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 07:40:24 +0000 Received: from mail-yb1-f177.google.com (mail-yb1-f177.google.com [209.85.219.177]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 90bb0400-004f-11ee-b231-6b7b168915f2; Thu, 01 Jun 2023 09:40:23 +0200 (CEST) Received: by mail-yb1-f177.google.com with SMTP id 3f1490d57ef6-b9a6eec8611so2796910276.0 for ; Thu, 01 Jun 2023 00:40:23 -0700 (PDT) Received: from mail-yb1-f171.google.com (mail-yb1-f171.google.com. [209.85.219.171]) by smtp.gmail.com with ESMTPSA id p187-20020a0dffc4000000b00545a08184cesm3332650ywf.94.2023.06.01.00.40.21 for (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Thu, 01 Jun 2023 00:40:21 -0700 (PDT) Received: by mail-yb1-f171.google.com with SMTP id 3f1490d57ef6-b9a6eec8611so2796880276.0 for ; Thu, 01 Jun 2023 00:40:21 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 90bb0400-004f-11ee-b231-6b7b168915f2 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1685605222; x=1688197222; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=+Vy5gwXbACIYw+FA/+yi3OHDGD1kIURAtfeea/c7peI=; b=h266wHCAICRSsZEdOdMeUOBd8a9PQBMmW9BTlGqBSnaUIeerf7YBb5j9bZuIsxFGur dLnuqiJyikvrKGBA22Slv739ojK6u45RDSyY80EeiiGojCPa/3cB9EEwX9aewewtsbur B41khPEnGUXGJIilgfwoSZ7IU58Toa/tQ7EzLIp/tn4JGX27XB7UyenNrmFEIWexm6EZ 7JzQr7j2QLyPswtjd3Dwgh5X5dR86lWzH2gE14Ee57Pj3WJAO2SyOSdN5OUVZZNSEVVp TtN1lU9VxOGUAh9Qlh9S9Cx5ZmzNly1sC7Mywgufz3REu2wwZe8fg8trBO0gitpJfKG0 vWnQ== X-Gm-Message-State: AC+VfDw+YIbb+3oSjZwokTpBY1eoST8SQf/Exl1FFhprSoRG0YRtIH9A /LeUm5hQpHib8mAEzoILstGjxNquDYVP7A== X-Google-Smtp-Source: ACHHUZ5torXLqj0xGp8GVg6G3NWX22V/SmkSZa8JcpBv5+1fSyc61EpRdHl/H4S9p0O71NqJoUnsxg== X-Received: by 2002:a81:6c95:0:b0:561:987e:27a with SMTP id h143-20020a816c95000000b00561987e027amr953304ywc.10.1685605222047; Thu, 01 Jun 2023 00:40:22 -0700 (PDT) X-Received: by 2002:a81:a041:0:b0:565:9f61:c771 with SMTP id x62-20020a81a041000000b005659f61c771mr1176431ywg.9.1685605221248; Thu, 01 Jun 2023 00:40:21 -0700 (PDT) MIME-Version: 1.0 References: <20230531213032.25338-1-vishal.moola@gmail.com> <20230531213032.25338-26-vishal.moola@gmail.com> In-Reply-To: <20230531213032.25338-26-vishal.moola@gmail.com> From: Geert Uytterhoeven Date: Thu, 1 Jun 2023 09:40:07 +0200 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: [PATCH v3 25/34] m68k: Convert various functions to use ptdescs To: "Vishal Moola (Oracle)" Cc: Andrew Morton , Matthew Wilcox , linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Hi Vishal, On Wed, May 31, 2023 at 11:32=E2=80=AFPM Vishal Moola (Oracle) wrote: > As part of the conversions to replace pgtable constructor/destructors wit= h > ptdesc equivalents, convert various page table functions to use ptdescs. > > Some of the functions use the *get*page*() helper functions. Convert > these to use pagetable_alloc() and ptdesc_address() instead to help > standardize page tables further. > > Signed-off-by: Vishal Moola (Oracle) Thanks for your patch! > --- a/arch/m68k/include/asm/mcf_pgalloc.h > +++ b/arch/m68k/include/asm/mcf_pgalloc.h > @@ -7,20 +7,19 @@ > > extern inline void pte_free_kernel(struct mm_struct *mm, pte_t *pte) > { > - free_page((unsigned long) pte); > + pagetable_free(virt_to_ptdesc(pte)); > } > > extern const char bad_pmd_string[]; > > extern inline pte_t *pte_alloc_one_kernel(struct mm_struct *mm) > { > - unsigned long page =3D __get_free_page(GFP_DMA); > + struct ptdesc *ptdesc =3D pagetable_alloc(GFP_DMA | __GFP_ZERO, 0= ); > > - if (!page) > + if (!ptdesc) > return NULL; > > - memset((void *)page, 0, PAGE_SIZE); > - return (pte_t *) (page); > + return (pte_t *) (ptdesc_address(ptdesc)); No need to cast "void *" when returning a different pointer type. > } > > extern inline pmd_t *pmd_alloc_kernel(pgd_t *pgd, unsigned long address) > @@ -35,36 +34,36 @@ extern inline pmd_t *pmd_alloc_kernel(pgd_t *pgd, uns= igned long address) > static inline void __pte_free_tlb(struct mmu_gather *tlb, pgtable_t pgta= ble, > unsigned long address) > { > - struct page *page =3D virt_to_page(pgtable); > + struct ptdesc *ptdesc =3D virt_to_ptdesc(pgtable); > > - pgtable_pte_page_dtor(page); > - __free_page(page); > + pagetable_pte_dtor(ptdesc); > + pagetable_free(ptdesc); > } > > static inline pgtable_t pte_alloc_one(struct mm_struct *mm) > { > - struct page *page =3D alloc_pages(GFP_DMA, 0); > + struct ptdesc *ptdesc =3D pagetable_alloc(GFP_DMA, 0); > pte_t *pte; > > - if (!page) > + if (!ptdesc) > return NULL; > - if (!pgtable_pte_page_ctor(page)) { > - __free_page(page); > + if (!pagetable_pte_ctor(ptdesc)) { > + pagetable_free(ptdesc); > return NULL; > } > > - pte =3D page_address(page); > - clear_page(pte); > + pte =3D ptdesc_address(ptdesc); > + pagetable_clear(pte); > > return pte; > } > > static inline void pte_free(struct mm_struct *mm, pgtable_t pgtable) > { > - struct page *page =3D virt_to_page(pgtable); > + struct ptdesc *ptdesc =3D virt_to_ptdesc(ptdesc); virt_to_ptdesc(pgtable) (You can build this using m5475evb_defconfig) > > - pgtable_pte_page_dtor(page); > - __free_page(page); > + pagetable_pte_dtor(ptdesc); > + pagetable_free(ptdesc); > } > > /* > @@ -75,16 +74,18 @@ static inline void pte_free(struct mm_struct *mm, pgt= able_t pgtable) > > static inline void pgd_free(struct mm_struct *mm, pgd_t *pgd) > { > - free_page((unsigned long) pgd); > + pagetable_free(virt_to_ptdesc(pgd)); > } > > static inline pgd_t *pgd_alloc(struct mm_struct *mm) > { > pgd_t *new_pgd; > + struct ptdesc *ptdesc =3D pagetable_alloc(GFP_DMA | GFP_NOWARN, 0= ); > > - new_pgd =3D (pgd_t *)__get_free_page(GFP_DMA | __GFP_NOWARN); > - if (!new_pgd) > + if (!ptdesc) > return NULL; > + new_pgd =3D (pgd_t *) ptdesc_address(ptdesc); No need to cast "void *" when assigning to a different pointer type. > + > memcpy(new_pgd, swapper_pg_dir, PTRS_PER_PGD * sizeof(pgd_t)); > memset(new_pgd, 0, PAGE_OFFSET >> PGDIR_SHIFT); > return new_pgd; The rest LGTM. Gr{oetje,eeting}s, Geert --=20 Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k= .org In personal conversations with technical people, I call myself a hacker. Bu= t when I'm talking to journalists I just say "programmer" or something like t= hat. -- Linus Torvalds From xen-devel-bounces@lists.xenproject.org Thu Jun 01 07:42:00 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 07:42:00 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542272.845936 (Exim 4.92) (envelope-from ) id 1q4cwP-0002pa-Rg; Thu, 01 Jun 2023 07:41:49 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542272.845936; Thu, 01 Jun 2023 07:41:49 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4cwP-0002pT-O5; Thu, 01 Jun 2023 07:41:49 +0000 Received: by outflank-mailman (input) for mailman id 542272; Thu, 01 Jun 2023 07:41:49 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4cwP-0002ni-5E for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 07:41:49 +0000 Received: from mail-pg1-x52d.google.com (mail-pg1-x52d.google.com [2607:f8b0:4864:20::52d]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id c2b9300e-004f-11ee-8611-37d641c3527e; Thu, 01 Jun 2023 09:41:47 +0200 (CEST) Received: by mail-pg1-x52d.google.com with SMTP id 41be03b00d2f7-517ab9a4a13so501000a12.1 for ; Thu, 01 Jun 2023 00:41:47 -0700 (PDT) Received: from ?IPV6:2400:4050:a840:1e00:78d2:b862:10a7:d486? ([2400:4050:a840:1e00:78d2:b862:10a7:d486]) by smtp.gmail.com with ESMTPSA id h22-20020a62b416000000b0064d1349dc31sm4424818pfn.199.2023.06.01.00.41.38 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Thu, 01 Jun 2023 00:41:45 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: c2b9300e-004f-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=daynix-com.20221208.gappssmtp.com; s=20221208; t=1685605306; x=1688197306; h=content-transfer-encoding:in-reply-to:from:content-language :references:cc:to:subject:user-agent:mime-version:date:message-id :from:to:cc:subject:date:message-id:reply-to; bh=bc1VxBw2ts7gzODbDt725l/y9yXi0D1Tw4esM7ANdJo=; b=YDujPal7wEEBLnpAJsvdWRdpTPTHWkcgLybiafBwUGy8Gv4A9m7mFoizaRlbqOxVAf 03TR1Kk/2g2omrqvungoh3GSuN6YGNnQ6+SC/j2J0RV9XQL4RlXW1yU3OPhywzp3Jf// 9b6khcU6Pts1pUs9oG4fuoQOnQCbreK6yl0+QmtMj5pxtbUdsoixB1RGMWMD7rYbgX9M qFEUyRjOuqJ6OHPGLRC4g1LVzc0fxo5FFO71B3bljyarT6gj2y+dhL21gOSzKxZqqKJX WjvAeU8+st8NK021a35W+pNz1SaePj0A6/zFrLF9k9tA5OTc6g+RSqyHAXZHG0FZ/TDN ZmJA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1685605306; x=1688197306; h=content-transfer-encoding:in-reply-to:from:content-language :references:cc:to:subject:user-agent:mime-version:date:message-id :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=bc1VxBw2ts7gzODbDt725l/y9yXi0D1Tw4esM7ANdJo=; b=dYmo5Q0oaN1yi4xbAsP1FPljdMvo5Np/YY0/ppBPOcPvYOgXKV3aTJnjhDXmHEaEQf f4IQQE9VYA6kdarmNGZ7qVMMZ66N80CTd28n8dCFicUXpyEPnYYoTBIDertPNK+DK80G XnOM/sW5VD3XKi4qne5lGygGH9kJk1LczJA2xKUPoXKsp5z3nceVl1AfO6viGGppNcf7 wwoPkooARAgfKMb8xblrv16aMj5TmFzaeYva9mNSta01/LfL4211Hc7F6iFp2aJJ24lO xBsjlha985+HPHqnuUtemU4PBg0+gJT6rts4ZQ8nm0IsonvGtZomxL8q8MQ2niXmje+b 5DGA== X-Gm-Message-State: AC+VfDzRSH2+0OIlLDcaiOEhwbVfyRbbBci9j/CbTACgFQksbbN59Q4X cR86OP5MuFE+UhYnp3w69IGeNg== X-Google-Smtp-Source: ACHHUZ7TDkTXVGJ/r9kX7PKwjBkqfm4bwdAX6ZtU3aCnPohgVAZ1rbRjP2ABSRQr4SAKEAvK6nYpfA== X-Received: by 2002:a05:6a20:3d0c:b0:10b:4539:fa0a with SMTP id y12-20020a056a203d0c00b0010b4539fa0amr11339542pzi.1.1685605305794; Thu, 01 Jun 2023 00:41:45 -0700 (PDT) Message-ID: <233b42b2-6fbb-3882-6158-d2a82bf88be1@daynix.com> Date: Thu, 1 Jun 2023 16:41:36 +0900 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux aarch64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH v2 0/2] net: Update MemReentrancyGuard for NIC To: =?UTF-8?Q?Philippe_Mathieu-Daud=c3=a9?= Cc: Mauro Matteo Cascella , P J P , Alexander Bulekov , Dmitry Fleytman , Beniamino Galvani , Peter Maydell , Strahinja Jankovic , Jason Wang , "Edgar E. Iglesias" , Alistair Francis , Stefan Weil , =?UTF-8?Q?C=c3=a9dric_Le_Goater?= , Andrew Jeffery , Joel Stanley , Richard Henderson , Helge Deller , Sriram Yagnaraman , Thomas Huth , Aleksandar Rikalo , Subbaraya Sundeep , Jan Kiszka , Tyrone Ting , Hao Wu , Max Filippov , Jiri Pirko , Daniel Henrique Barboza , David Gibson , Greg Kurz , Harsh Prateek Bora , Sven Schnelle , "Michael S. Tsirkin" , Stefano Stabellini , Anthony Perard , Paul Durrant , Rob Herring , Gerd Hoffmann , qemu-arm@nongnu.org, qemu-devel@nongnu.org, qemu-ppc@nongnu.org, xen-devel@lists.xenproject.org References: <20230601031859.7115-1-akihiko.odaki@daynix.com> <72ccd4c2-7c60-e015-2322-721d09a8334b@linaro.org> Content-Language: en-US From: Akihiko Odaki In-Reply-To: <72ccd4c2-7c60-e015-2322-721d09a8334b@linaro.org> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit On 2023/06/01 16:16, Philippe Mathieu-Daudé wrote: > On 1/6/23 05:18, Akihiko Odaki wrote: >> Recently MemReentrancyGuard was added to DeviceState to record that the >> device is engaging in I/O. The network device backend needs to update it >> when delivering a packet to a device. >> >> This implementation follows what bottom half does, but it does not add >> a tracepoint for the case that the network device backend started >> delivering a packet to a device which is already engaging in I/O. This >> is because such reentrancy frequently happens for >> qemu_flush_queued_packets() and is insignificant. >> >> This series consists of two patches. The first patch makes a bulk >> change to >> add a new parameter to qemu_new_nic() and does not contain behavioral >> changes. >> The second patch actually implements MemReentrancyGuard update. > > /me look at the 'net' API. > > So the NetReceive* handlers from NetClientInfo process the HW NIC > data flow, independently from the CPUs. > > IIUC MemReentrancyGuard is supposed to protect reentrancy abuse from > CPUs. > > NetReceive* handlers aren't restricted to any particular API, they > just consume blob of data. Looking at e1000_receive_iov(), this data > is filled into memory using the pci_dma_rw() API. pci_dma_rw() gets > the AddressSpace to use calling pci_get_address_space(), which returns > PCIDevice::bus_master_as. Then we use the dma_memory_rw(), followed > by address_space_rw(). Beh, I fail to see why there is reentrancy > checks from this NIC DMA HW path. > > Maybe the MemoryRegion API isn't the correct place to check for > reentrancy abuse and we should do that at the AddressSpace level, > keeping DMA ASes clear and only protecting CPU ASes? The involvement of CPU is not essential in my understanding. A typical scenario of DMA reentrancy is like the following: 1) The guest configures the DMA destination address register the device has to the address of another device register. 2) The DMA gets triggered. 3) The device performs the DMA, writing its own register. 4) The write causes reentrancy. 5) The re-entered device code corrupts the device state. I guess 2) is done by CPU in most cases, but sometimes it happen with another cause. In fact, the current reentrancy protection code covers the case that bottom half handlers triggers DMA. The intention of this series is to extend the coverage and handles the case that incoming network traffic triggers DMA. The essence of DMA reentrancy is in 3). This happens when the DMA address space contains the MMIO region of the device and there is no involvement of CPU here. From xen-devel-bounces@lists.xenproject.org Thu Jun 01 07:42:36 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 07:42:36 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542275.845945 (Exim 4.92) (envelope-from ) id 1q4cx5-0003KR-48; Thu, 01 Jun 2023 07:42:31 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542275.845945; Thu, 01 Jun 2023 07:42:31 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4cx5-0003KK-1K; Thu, 01 Jun 2023 07:42:31 +0000 Received: by outflank-mailman (input) for mailman id 542275; Thu, 01 Jun 2023 07:42:30 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4cx4-0003K7-AQ for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 07:42:30 +0000 Received: from mail-qv1-f49.google.com (mail-qv1-f49.google.com [209.85.219.49]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id db8c986c-004f-11ee-b231-6b7b168915f2; Thu, 01 Jun 2023 09:42:28 +0200 (CEST) Received: by mail-qv1-f49.google.com with SMTP id 6a1803df08f44-5ed99ebe076so7133476d6.2 for ; Thu, 01 Jun 2023 00:42:28 -0700 (PDT) Received: from mail-qk1-f175.google.com (mail-qk1-f175.google.com. [209.85.222.175]) by smtp.gmail.com with ESMTPSA id em1-20020ad44f81000000b006263afa6ab9sm2709623qvb.144.2023.06.01.00.42.25 for (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Thu, 01 Jun 2023 00:42:25 -0700 (PDT) Received: by mail-qk1-f175.google.com with SMTP id af79cd13be357-75b04e897a5so56834385a.2 for ; Thu, 01 Jun 2023 00:42:25 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: db8c986c-004f-11ee-b231-6b7b168915f2 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1685605347; x=1688197347; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=wC4AZRVcHnRKNLMlbDCAYeJz9LlsudAe96MnAggdWqk=; b=C5/Ob/CZeUXXkrVJM4PCTZGaQdKwvczSNvqx6Xv1rUVUQbocYWg4Ma7lIXVXSydDV5 B//1ogWyy2dl+5Uht+E3OEDQG1viLifHxdaw05sMe29bpjQ/Sw0+5hIcxFjROtA3dO9I YYDpY7RM5lYr1XPZkEL4UvagI2g2pLNoY6pEDZLc79d+47+eVlSWV++2f/BkTY+257Yj dyf+Bblu4IxltImUcZznJjv6xB/0G1dDpq3h1OiFXINdcCPY2+jDgFsoiFfZjY6Rjlj+ vBwhLYpjEBRu3LGoEL8MYNjwbTeXVciYXD9cDwVnDomC5MtMIH8brT5UBYnQNOyPzva2 Cnww== X-Gm-Message-State: AC+VfDz3g5Pw8jz60NVCiynvI7H7hBRRSfb0wz8NwbjMCSNmPc60S5Xc ntDU4uy/fk16sX4pyc/tWSwBK3cZPVb9Mg== X-Google-Smtp-Source: ACHHUZ4Dmglos39wq8mjBVZATTk+28N8PjiJSbpMXLT1CIXiRf+S+XIN7sQMAw+qKtSP60MGHjlHjA== X-Received: by 2002:ad4:5baa:0:b0:626:2668:8ba7 with SMTP id 10-20020ad45baa000000b0062626688ba7mr8212416qvq.41.1685605347632; Thu, 01 Jun 2023 00:42:27 -0700 (PDT) X-Received: by 2002:a05:620a:4890:b0:75b:23a1:3603 with SMTP id ea16-20020a05620a489000b0075b23a13603mr8693674qkb.20.1685605345152; Thu, 01 Jun 2023 00:42:25 -0700 (PDT) MIME-Version: 1.0 References: <20230531213032.25338-1-vishal.moola@gmail.com> <20230531213032.25338-31-vishal.moola@gmail.com> <025fc34a24e1a1c26b187f15dba86d382d9617eb.camel@physik.fu-berlin.de> In-Reply-To: <025fc34a24e1a1c26b187f15dba86d382d9617eb.camel@physik.fu-berlin.de> From: Geert Uytterhoeven Date: Thu, 1 Jun 2023 09:42:11 +0200 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: [PATCH v3 30/34] sh: Convert pte_free_tlb() to use ptdescs To: John Paul Adrian Glaubitz Cc: "Vishal Moola (Oracle)" , Andrew Morton , Matthew Wilcox , linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Yoshinori Sato Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Hi Adrian, On Thu, Jun 1, 2023 at 9:28=E2=80=AFAM John Paul Adrian Glaubitz wrote: > On Thu, 2023-06-01 at 09:20 +0200, Geert Uytterhoeven wrote: > > On Wed, May 31, 2023 at 11:33=E2=80=AFPM Vishal Moola (Oracle) > > wrote: > > > Part of the conversions to replace pgtable constructor/destructors wi= th > > > ptdesc equivalents. Also cleans up some spacing issues. > > > > > > Signed-off-by: Vishal Moola (Oracle) > > > > LGTM, so > > Reviewed-by: Geert Uytterhoeven > > I assume this series is supposed to go through some mm tree? I think so, so your Acked-by would be appreciated... Gr{oetje,eeting}s, Geert --=20 Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k= .org In personal conversations with technical people, I call myself a hacker. Bu= t when I'm talking to journalists I just say "programmer" or something like t= hat. -- Linus Torvalds From xen-devel-bounces@lists.xenproject.org Thu Jun 01 07:46:33 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 07:46:33 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542280.845956 (Exim 4.92) (envelope-from ) id 1q4d0p-00041C-Jj; Thu, 01 Jun 2023 07:46:23 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542280.845956; Thu, 01 Jun 2023 07:46:23 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4d0p-000415-Gk; Thu, 01 Jun 2023 07:46:23 +0000 Received: by outflank-mailman (input) for mailman id 542280; Thu, 01 Jun 2023 07:46:22 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4d0o-00040z-Le for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 07:46:22 +0000 Received: from outpost1.zedat.fu-berlin.de (outpost1.zedat.fu-berlin.de [130.133.4.66]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 65c66204-0050-11ee-8611-37d641c3527e; Thu, 01 Jun 2023 09:46:20 +0200 (CEST) Received: from inpost2.zedat.fu-berlin.de ([130.133.4.69]) by outpost.zedat.fu-berlin.de (Exim 4.95) with esmtps (TLS1.3) tls TLS_AES_256_GCM_SHA384 (envelope-from ) id 1q4d0a-001zrK-5A; Thu, 01 Jun 2023 09:46:08 +0200 Received: from p57bd9d78.dip0.t-ipconnect.de ([87.189.157.120] helo=[192.168.178.81]) by inpost2.zedat.fu-berlin.de (Exim 4.95) with esmtpsa (TLS1.3) tls TLS_AES_256_GCM_SHA384 (envelope-from ) id 1q4d0Z-002wPt-St; Thu, 01 Jun 2023 09:46:08 +0200 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 65c66204-0050-11ee-8611-37d641c3527e Message-ID: Subject: Re: [PATCH v3 30/34] sh: Convert pte_free_tlb() to use ptdescs From: John Paul Adrian Glaubitz To: Geert Uytterhoeven Cc: "Vishal Moola (Oracle)" , Andrew Morton , Matthew Wilcox , linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Yoshinori Sato Date: Thu, 01 Jun 2023 09:46:06 +0200 In-Reply-To: References: <20230531213032.25338-1-vishal.moola@gmail.com> <20230531213032.25338-31-vishal.moola@gmail.com> <025fc34a24e1a1c26b187f15dba86d382d9617eb.camel@physik.fu-berlin.de> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable User-Agent: Evolution 3.48.1 MIME-Version: 1.0 X-Original-Sender: glaubitz@physik.fu-berlin.de X-Originating-IP: 87.189.157.120 X-ZEDAT-Hint: PO On Thu, 2023-06-01 at 09:42 +0200, Geert Uytterhoeven wrote: > Hi Adrian, >=20 > On Thu, Jun 1, 2023 at 9:28=E2=80=AFAM John Paul Adrian Glaubitz > wrote: > > On Thu, 2023-06-01 at 09:20 +0200, Geert Uytterhoeven wrote: > > > On Wed, May 31, 2023 at 11:33=E2=80=AFPM Vishal Moola (Oracle) > > > wrote: > > > > Part of the conversions to replace pgtable constructor/destructors = with > > > > ptdesc equivalents. Also cleans up some spacing issues. > > > >=20 > > > > Signed-off-by: Vishal Moola (Oracle) > > >=20 > > > LGTM, so > > > Reviewed-by: Geert Uytterhoeven > >=20 > > I assume this series is supposed to go through some mm tree? >=20 > I think so, so your Acked-by would be appreciated... OK, I will have a look. Btw, can you have a look at the second series by Artur ("SuperH DMAC fixes")? I haven't had the time for these yet, but I will have time in the weekend. Adrian --=20 .''`. John Paul Adrian Glaubitz : :' : Debian Developer `. `' Physicist `- GPG: 62FF 8A75 84E0 2956 9546 0006 7426 3B37 F5B5 F913 From xen-devel-bounces@lists.xenproject.org Thu Jun 01 07:59:31 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 07:59:31 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542284.845966 (Exim 4.92) (envelope-from ) id 1q4dDL-0005Zq-NN; Thu, 01 Jun 2023 07:59:19 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542284.845966; Thu, 01 Jun 2023 07:59:19 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4dDL-0005Zj-KR; Thu, 01 Jun 2023 07:59:19 +0000 Received: by outflank-mailman (input) for mailman id 542284; Thu, 01 Jun 2023 07:59:18 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4dDK-0005Zb-Ha for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 07:59:18 +0000 Received: from EUR05-AM6-obe.outbound.protection.outlook.com (mail-am6eur05on20621.outbound.protection.outlook.com [2a01:111:f400:7e1b::621]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 34623a6e-0052-11ee-8611-37d641c3527e; Thu, 01 Jun 2023 09:59:16 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by PAXPR04MB9668.eurprd04.prod.outlook.com (2603:10a6:102:243::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.22; Thu, 1 Jun 2023 07:59:14 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6433.024; Thu, 1 Jun 2023 07:59:11 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 34623a6e-0052-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=mvc50qa/kGd9Yn+eALAAtKC7891w8lXp+E7YlpHnyXhcSYH60lSNP+ji5VGaL/f/YN8vpChW2Ip1HDBATxDMGvk2+puVsTObS58bBc63WNuinG6a46DWk7tL4C/7mwhqOiZkU41Filwq2IWnabEyo8XSF3l7XeGuswD/M7kGWT8W3e4rSArHCfs0TyDs+jLUg7lBrCSLe2ceNzQ49UepaUTNZVW3vHzNXv2O8QO7iLltYlWrm+XLdcdWSU6wTawJEPnpAssMSfwzqeXgZGgv8wgSvpdIQw1+LhT6+VD+iSgI7D+eYljpUrtJQNrnasq8JUhmPd0rqdPvbAFgrXILEQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=2MoER1r269wAgXUNhYwrT5v4NEVmiygIQb8BKs0FnO4=; b=PQmkSWsYIu6eJz0knMwkTT8Tpfko4s0+fi33w53UydMfrtxAp7Qrwqsmd5e+UZhbHK9UrpE+kt/yi/bEQlwfUhuV/JuJLiz26umG/VS0BByH2f28FviMJChHRvewp6tFOJNXJazzt9vYdWScJzmoJmN2GchKemIq3x8luDceduhEChyHtx9TrabZQd0AcnpXJK7ti5l48hdo/TtxuW16dEM/ZyFwS6uvhtPlGNBghMlXPeuFQHIEcwdFGF9vE7LjEhNeDh3ZaBhjUB8IMMMJMEtSiH4ia1Ti4FXf9ZhJzSwD4R/gtbMjto9/jYU1LhpCbZ+A9mx4ov31SQQ0EYvnUg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=2MoER1r269wAgXUNhYwrT5v4NEVmiygIQb8BKs0FnO4=; b=JSyeurQIoew+u2JAWE8J8qZDoRwaqDjhpLKEJMgFCqm//9SQBMTZiWVnD5Fuj7Xv8xN1gdTVHrLJQwrAmVTbDvU2tux1uMJMIvdsPisaX+nvmESak2vTqSsXbKThF2C8ly4SRozvWdGnBfK5ncfe6gHkRXVKD8XATOElXn68PKNyxYyi5oEY4gnJsmoba82KhjFGZHee/1lek1VQKjqb7Hfc3xbxq6eJSdJ+7iX8OGGmFXQYCzX3cGUfLy05LxZk5FJaZuaXQHqmcHpmyWdjngC54segfgK+wpRT+dD9e2cMp5LcnmK3V8VRtXynLJcKBbU0y4NaRS0iwmyV7I6A7g== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: Date: Thu, 1 Jun 2023 09:59:09 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH v6 5/6] xen/riscv: introduce an implementation of macros from Content-Language: en-US To: Oleksii Cc: Julien Grall , Andrew Cooper , Stefano Stabellini , Bob Eshleman , Alistair Francis , Connor Davis , xen-devel@lists.xenproject.org References: <92580a6f-e97a-c4a9-435c-bd95a84d4306@suse.com> <4073258b3a3c6a0cb19843f02941d1e62e6f882d.camel@gmail.com> From: Jan Beulich In-Reply-To: <4073258b3a3c6a0cb19843f02941d1e62e6f882d.camel@gmail.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: FR3P281CA0092.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:a1::12) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|PAXPR04MB9668:EE_ X-MS-Office365-Filtering-Correlation-Id: b832eece-e559-46db-e438-08db627615d2 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 6+NlwPPbNNZemeeRMKw+OYTYKYsarXS3KZGxAT6VD1GwbCVdaNrgflB0+dUvDSXHgeh+G+1uKTkXNOjHG5aCif9+GyxUNLam9SzFgkAlN+7RSKFNG7B7yjQXrFpIKlkB8es5i0fam86/1AYL/TCWLOCfxB1nDnhsdkOJWvhLHT4J0tIFI29QgcA3ugl2VEKKoYEm3Fg58LM1H/veaPtKXjK0hIq5FRCS2PQ+UbvGdeIqR/7xReLetGX49XSqiNCfPCrQfq6Dm5XBR04TVdvkQ5j0qQarctyQ9GhzuGA7HsipelTvdTrAWLNhwYfqzPTT3Vt+3OFiTmaVJL+Ax2xk6xnbChe02i6ro9eIPRQ3Fz1VNnA3tE7zjAIlotxcyJJIdb0DxMo8oMxh7rGprDr+gnVtoNt0yj6wKdea5/Jo1rlaWHSG+6A5P35ZD1XI+WwXHAP4l8BFVUQeFRmCoALhqG3madZklSHOyiK2kUEjcEj2zXIunOJqzoAB9SYUb3StQCrp4I32XgX5bUlFNxKAIpW4ehJ5nGCfqLghQ2w+DNVMHPKN+ZhUWulJAg95dCpRj562/sbXloGPtEAu5ebcwnTN8VX/iPnxgStixUbYejjFo59yos7jUBQqfD9gfg1ARLtCMjTedzZRt7EMMk88Fg== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(136003)(376002)(366004)(396003)(39860400002)(346002)(451199021)(4326008)(54906003)(478600001)(31686004)(66946007)(6916009)(66556008)(316002)(66476007)(6512007)(2616005)(26005)(6506007)(8676002)(5660300002)(8936002)(41300700001)(2906002)(186003)(53546011)(83380400001)(66899021)(38100700002)(36756003)(6486002)(86362001)(31696002)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?NE9HQlltR2Z1SkRMdTBwKy9nQUJYZjhwNlE1YmdHMVpQalkzYXhDWUVzUHN4?= =?utf-8?B?aHFMcU9hMTFIQTNDcThVd1I1SWdQTDNUdWJ2WVJkcmM3dEJmVTNaWFpYQW9x?= =?utf-8?B?TzJvYmdIV2s0ZkNJelpyY05WWVZ4ckpmOFlWa1pBRzBmOGFobzdBaFdQS3ov?= =?utf-8?B?VHZqbkgyY0oyVlZ2NzVja083NTMrU2tpMEltY2wwbDNCcjBTOTMwYmJwLzQz?= =?utf-8?B?d1c1NzlKZmZTcHdGdWxqRS9PZU95SlFYUUoxR055YkJwekVtWTdUVUVuTytI?= =?utf-8?B?S3FBcHdBOXcreXRJelBIUk5PMEtaRURsOXQyTXZYdXhpeHp0NWxFTjlHOVAy?= =?utf-8?B?aktqMUN1amVQb0FMRTZYYXhoYTZsN0NobFdDRHM5R1Z6SWpLSnVlNTRWS1ky?= =?utf-8?B?aEVPd0F0UjhOUUNiMytpVDl5MWw1UFRRYzRJKzdzWDFWazhsbmhySDBLcVVV?= =?utf-8?B?eTVvQVp6NGtVOUJyaDM4UjJzbjk3N0RJVjNvMkhEamR1bVp6NzRwRWQreE9T?= =?utf-8?B?SkJvdHBVYWovZFI3TWtvZCtHMlRMRXc0ZTh0QkpXMktiMVNMY2dJSmhjUUM1?= =?utf-8?B?RXFOMFRlelVlcEN6ZElVSzZEVjR3Vy84cWQ0M1IzMVBlS3Yxa2pPbzVTditK?= =?utf-8?B?VXM5cTBqWVpKcU5YWHNsN3h3azU2TlpqdzlFeVJTYlNtTjdXN1dJeml3VDlz?= =?utf-8?B?UzFlM01DengyMWRNQlVVTE8yd0FCZElZWjRoWFdRcG5mVnM5Y3lMbEppRTNC?= =?utf-8?B?ZGY0VGpzL2NCODJHbnpkRzlYbVZGYkt0VWZlZ0kvRXZoK0NUc3I5RGRTbEdo?= =?utf-8?B?SXF6WTRIci9MMFRNSkorSjI3dGJUTjZwbjlVbWhhUlhEVFNBZmc1YVNyQ1Nx?= =?utf-8?B?REpUZllMRHZkRE92SDk1UTQ2eTBRWmVBREZrYUxNQVRBbXlkKzJqUkx0MFNr?= =?utf-8?B?ajlhZHM3eDJ3ckV1SzlUNDRFMkF2TVgvcE43UzJpU0V5b052S01MWnJ5dDN0?= =?utf-8?B?cG9DODErUTNkZVo3dmt4ZlU3UXM5SzN1WXIxYm9kRTgvYmJoYzNVaC9BN0Ny?= =?utf-8?B?dkxsTTZOcERJWEt1bmVJSmpGbkVPMjlNTmZoVDlxa1UzSEcra3NaRVRZR2l1?= =?utf-8?B?bll0MXl5Y1JxNVo2ei9iakVmc0RCd3V3YjllUWgzMXRvVXBnR0hEcURSOW9m?= =?utf-8?B?c3pZWmhMelZ3bWVLWWtpV0N3QmxVeSsrZk5hVytYVENCTzFuZUJnTEQxb3VC?= =?utf-8?B?YVN6WjlrK1gyL0ZoV3JtSUhtN0hSL283SVI1OFByblFuaTBlU283c3RQMGRH?= =?utf-8?B?M1lGKzBUWEV2dDh0K09hVlVwSFlqVVZsTHpMUjA0citGaHAzOGZOY2EzOFZp?= =?utf-8?B?eUJXN092cXo4cm5YZmNkekRyNUFTcmtnRG1hTXFxVFRnZDhPU0VYTDRmd3RN?= =?utf-8?B?TFp0MFlTNThoOW1qSklBOCtjcWtFNEYxL0RHWkxRRE9lMW9XUU8xMTd3VFNM?= =?utf-8?B?WVRKWmNYSCs1Rm9TSE4vYzI4dkhQclVZcHlEQVVYOWd2cUNJU1VleDZHbnpV?= =?utf-8?B?cGl0MnBjQjJRSmpBSXJjb1Z1c2gwZEVVN01PWkJEQXdMRmU0REttWTNoQldq?= =?utf-8?B?RzQ4OGpXdENsY0dodE1IcGRCbWdwN2czTUo2ZTZxQ3hFdlZYbXo4VWM4dXJ0?= =?utf-8?B?UnpVWFppb3lSdGRXcG9pUjIyemZCMTVTeDVhT1ROekl6MXlDTUtWU0Y1bjVk?= =?utf-8?B?WUdObzNjNmYyUUNjTTZ6NnE5SFhCM1JUVGc0c2k0N3dQZFN0L0RpejRHWEEr?= =?utf-8?B?NHFEMnZocFZBaHYzbk1tWlBVUTBMdWV2WjNScStBbVBMYWlYZ2Frbk9RWldu?= =?utf-8?B?Z3c3WTN6RVlIRHd2VUxwc3gzNGJMSkZCSXYzaWVjSlBQZTlFS3I2N1pLVEdk?= =?utf-8?B?L3RtdXhOVWZUVVhNb2hyZ3JZemtyYmVEL05lamgzSXNycDNkVDhFM090RjNT?= =?utf-8?B?Ylk5VmJmZHNvcnpDUWx2NUkzRzJySFNod1dmWXdTMWp1WlFxMWJKQ0xCN09W?= =?utf-8?B?QmdhSWZkMFdsU3ZpS0JIbk56RHlhWnJGekg3Szlid1JrU0JveEVPbUd3UE1N?= =?utf-8?Q?vOGQIcT7j2mjZdPGzDtBCJo0B?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: b832eece-e559-46db-e438-08db627615d2 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Jun 2023 07:59:11.8165 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: NfFMXD1xOKN8LunDDiDo4pa3sIzzAveQZstsFh7YTPAiz/lsdvTu4aqgFUjZwGJriljDLFoKIEq7piF2nRcLnw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB9668 On 31.05.2023 22:06, Oleksii wrote: > On Tue, 2023-05-30 at 18:00 +0200, Jan Beulich wrote: >>> +static uint32_t read_instr(unsigned long pc) >>> +{ >>> +    uint16_t instr16 = *(uint16_t *)pc; >>> + >>> +    if ( GET_INSN_LENGTH(instr16) == 2 ) >>> +        return (uint32_t)instr16; >>> +    else >>> +        return *(uint32_t *)pc; >>> +} >> >> As long as this function is only used on Xen code, it's kind of okay. >> There you/we control whether code can change behind our backs. But as >> soon as you might use this on guest code, the double read is going to >> be a problem > Will it be enough to add a comment that read_instr() should be used > only on Xen code? Or it is needed to introduce some lock? A comment will do for now. A lock would be problematic: It won't help when the function is used on non-Xen code, and since you use this in exception handling you may deadlock unless you carefully use a recursive lock. >> (I think; I wonder how hardware is supposed to deal with >> the situation: Maybe they indeed fetch in 16-bit quantities?). > I thought that it reads amount of bytes corresponded to i-cache size > and then the pipeline tracks whether an instruction is 16 or 32 bit. And what if an insn spans a cacheline boundary? Jan From xen-devel-bounces@lists.xenproject.org Thu Jun 01 08:09:03 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 08:09:03 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542295.845976 (Exim 4.92) (envelope-from ) id 1q4dMd-0007et-0I; Thu, 01 Jun 2023 08:08:55 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542295.845976; Thu, 01 Jun 2023 08:08:54 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4dMc-0007em-TS; Thu, 01 Jun 2023 08:08:54 +0000 Received: by outflank-mailman (input) for mailman id 542295; Thu, 01 Jun 2023 08:08:54 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4dMc-0007eg-CC for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 08:08:54 +0000 Received: from mo4-p00-ob.smtp.rzone.de (mo4-p00-ob.smtp.rzone.de [81.169.146.220]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 8b27a846-0053-11ee-8611-37d641c3527e; Thu, 01 Jun 2023 10:08:51 +0200 (CEST) Received: from sender by smtp.strato.de (RZmta 49.4.0 AUTH) with ESMTPSA id x6987cz5188aQGr (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256 bits)) (Client did not present a certificate); Thu, 1 Jun 2023 10:08:36 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 8b27a846-0053-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; t=1685606917; cv=none; d=strato.com; s=strato-dkim-0002; b=sp8O3BnmaZ3Rvm+SUtXK2EJ6sNfFwqEUcdTDLZ/tXDWjJARWMiBemnNhfM6m0NPoXU +WDeYlRt1EPNXdBAEXiQ+MLxH1RrGpSJosyugdI0v1i2cRZncwwWK7SNo1+hDIvxFgaw nnoD99GYMngrboIzZEPa7a+G0OsZGKzNyXdngkVWLJqqZNjLWmzHWPt6OOlk2Tx1T8tR yInQ0VvMa4fmmQkFyn+RoT9NmAwfyVwafbh0bPpp2O93DPqsihfhvq5y41zbuZw8P9vD CSPNOkgTFbJi9srG7KuUohE5Mlx8fbfDjlteAlo+5gdkteoVYjcN1qGTq8szIf7yrNzZ rg+w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; t=1685606917; s=strato-dkim-0002; d=strato.com; h=Message-Id:Date:Subject:Cc:To:From:Cc:Date:From:Subject:Sender; bh=1hod7D64Ri1wR1/q1jhkmlIlhHTQvlzAxtaOmwee5GI=; b=VN88hp29lRstD101Sdc2zvLzOdFi7QbGT1qUTjRy3/PKSEOaBN5V1t8my1FBoEwBFu EdxVbOToUlQMWBhzGIdXHcHY/PM1igWUYHnZnUo1mYo5LlxY+SKIiFK1ZA7FYjE0TWh4 y5iKIk1MJ2z9MzJYKrSnFFGuQG0dL5F345sIywYBJN4FMFZObtbGveiFAThAVutq7ATi XveN5s/Ry+Rm8l/owfmr+iLliq9YvhflIVQdH0m+CfqQnJ0LXhPmgOCfSaGFSyKN5/kC xLKePV+1pux+hxOHoWksCJdfHlh5UyvBm4pUdjm0wRKaOoJn8x+VK94Bv4a9x5ZzZk3W Hbpw== ARC-Authentication-Results: i=1; strato.com; arc=none; dkim=none X-RZG-CLASS-ID: mo00 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; t=1685606917; s=strato-dkim-0002; d=aepfle.de; h=Message-Id:Date:Subject:Cc:To:From:Cc:Date:From:Subject:Sender; bh=1hod7D64Ri1wR1/q1jhkmlIlhHTQvlzAxtaOmwee5GI=; b=Iom3XnR6U19SLyJ6q859Pt9+BYsw9ag41BjFt1YA+AzruOt4KGIfwY49buUIsDkiXs 1oesqawoK+w0DdwoMQ5rc8vQNU9joig5Qa3SFdmc//7FY6r8+BXtUH3KXpdlj3WWMKf6 Qtc9qp0XvOi4+FzeTwktCjKCSTwe4llbYFLjp8nsjj+ewABBbZMYtYWk8kOAVmIcaxQ6 qbO9Gsnud6NM8PQFPuk1GrnTo5GStG4sv/2XeR6aya8FAgjVihdNWRsuG8Bkcn05tyAn CisVFlak8Cl3EcGSHnxFPFLWmS+74l7oy8Mmxgx77UrEwHHWGPLAIJAQqpkHyUnRVtc+ WFIA== DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; t=1685606917; s=strato-dkim-0003; d=aepfle.de; h=Message-Id:Date:Subject:Cc:To:From:Cc:Date:From:Subject:Sender; bh=1hod7D64Ri1wR1/q1jhkmlIlhHTQvlzAxtaOmwee5GI=; b=hSphYuUd6Ee1fP4927qmUtqiN5Cl7biGTz7jp7LyjdYlfbyB+NXv7SKlWMfnAy1nj/ 6hgcGhMQdgK0EfIup9BQ== X-RZG-AUTH: ":P2EQZWCpfu+qG7CngxMFH1J+3q8wa/QXkBR9MXjAuzpIG0mv9coXAg4xqFv7EJ0tgRX/vKfT/e8Ig6v0dNw4QAWpzMWrRQ==" From: Olaf Hering To: xen-devel@lists.xenproject.org Cc: George Dunlap , Wei Liu , Anthony PERARD Subject: [PATCH v1] xentrace: adjust exit code for --help option Date: Thu, 1 Jun 2023 10:08:33 +0200 Message-Id: <20230601080833.32680-1-olaf@aepfle.de> X-Mailer: git-send-email 2.35.3 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain; charset="us-ascii" Invoking the --help option of any tool should not return with an error, if that tool does indeed have a documented and implemented help option. Adjust the usage() function to exit with either error or success. Handle the existing entry in the option table to call usage accordingly. Adjust the getopt value for help. The char '?' is returned for unknown options. Returning 'h' instead of '?' makes it allows to handle --help. Signed-off-by: Olaf Hering --- tools/xentrace/xentrace.c | 20 ++++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/tools/xentrace/xentrace.c b/tools/xentrace/xentrace.c index 3548255123..be6226f088 100644 --- a/tools/xentrace/xentrace.c +++ b/tools/xentrace/xentrace.c @@ -807,7 +807,7 @@ static void monitor_tbufs(void) const char *program_version = "xentrace v1.2"; const char *program_bug_address = ""; -static void usage(void) +static void usage(int status) { #define USAGE_STR \ "Usage: xentrace [OPTION...] [output file]\n" \ @@ -854,7 +854,7 @@ static void usage(void) printf(USAGE_STR); printf("\nReport bugs to %s\n", program_bug_address); - exit(EXIT_FAILURE); + exit(status); } /* convert the argument string pointed to by arg to a long int representation, @@ -873,7 +873,7 @@ long sargtol(const char *restrict arg, int base) { fprintf(stderr, "Invalid option argument: %s\n", arg); fprintf(stderr, "Error: %s\n\n", strerror(errno)); - usage(); + usage(EXIT_FAILURE); } else if (endp == arg) { @@ -901,7 +901,7 @@ long sargtol(const char *restrict arg, int base) invalid: fprintf(stderr, "Invalid option argument: %s\n\n", arg); - usage(); + usage(EXIT_FAILURE); return 0; /* not actually reached */ } @@ -917,10 +917,10 @@ static long argtol(const char *restrict arg, int base) if (errno != 0) { fprintf(stderr, "Invalid option argument: %s\n", arg); fprintf(stderr, "Error: %s\n\n", strerror(errno)); - usage(); + usage(EXIT_FAILURE); } else if (endp == arg || *endp != '\0') { fprintf(stderr, "Invalid option argument: %s\n\n", arg); - usage(); + usage(EXIT_FAILURE); } return val; @@ -1090,7 +1090,7 @@ static void parse_args(int argc, char **argv) { "discard-buffers", no_argument, 0, 'D' }, { "dont-disable-tracing", no_argument, 0, 'x' }, { "start-disabled", no_argument, 0, 'X' }, - { "help", no_argument, 0, '?' }, + { "help", no_argument, 0, 'h' }, { "version", no_argument, 0, 'V' }, { 0, 0, 0, 0 } }; @@ -1144,8 +1144,12 @@ static void parse_args(int argc, char **argv) opts.memory_buffer = sargtol(optarg, 0); break; + case 'h': + usage(EXIT_SUCCESS); + break; + default: - usage(); + usage(EXIT_FAILURE); } } From xen-devel-bounces@lists.xenproject.org Thu Jun 01 08:13:48 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 08:13:48 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542301.845986 (Exim 4.92) (envelope-from ) id 1q4dRF-0000j1-MN; Thu, 01 Jun 2023 08:13:41 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542301.845986; Thu, 01 Jun 2023 08:13:41 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4dRF-0000iu-Ja; Thu, 01 Jun 2023 08:13:41 +0000 Received: by outflank-mailman (input) for mailman id 542301; Thu, 01 Jun 2023 08:13:40 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4dRE-0000io-Im for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 08:13:40 +0000 Received: from mo4-p01-ob.smtp.rzone.de (mo4-p01-ob.smtp.rzone.de [85.215.255.53]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 36b1cd6b-0054-11ee-b231-6b7b168915f2; Thu, 01 Jun 2023 10:13:39 +0200 (CEST) Received: from sender by smtp.strato.de (RZmta 49.4.0 AUTH) with ESMTPSA id x6987cz518DYQIb (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256 bits)) (Client did not present a certificate); Thu, 1 Jun 2023 10:13:34 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 36b1cd6b-0054-11ee-b231-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; t=1685607214; cv=none; d=strato.com; s=strato-dkim-0002; b=BFEwmTcCjMVWPPh/EmYB3zUW0Gk3/LFlibDOuLovCFmkNzz1KYv6sFENoiu1y2PF/z F/rMqcq9Zq3PKEEABHpCyKw/jN2/6G+DJVZJT9/gSfazQIgDiov/n0X3jm30DPvfZasg RbEETt+fzreiQnp9BA0NaLHyHir+KXk9OdWfcZ4WHLQpha4IIeh+Bql5/090hJMw3fRj a83WWzcC9hiz/N3jI6sF5yScUIxJQmxwGLi3+8vQWSaQtMkV6YfMvKy3vqau2Selu3wA L013MVDK9hP5jbPjfGuBPh1eCFcCl0bve2TlokwhoUaCkacjNTH6hWzZzrOEckpvP5nZ Ia+A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; t=1685607214; s=strato-dkim-0002; d=strato.com; h=Message-Id:Date:Subject:Cc:To:From:Cc:Date:From:Subject:Sender; bh=jfSB96xZmQTSX9f93eRmhAN9QA0aTbS2WwLrDEw5fHE=; b=HFUmJAIRCnyJ+BRkJMfR2kEVbqUYbgRKUQdalYCd8Fdyl+NiU4V16ueK7M4QHKtSqQ bHOAoTkaXVYdB4zJanUTsOHRL1lKOZDJGhYlJzqTFf17Ucng8scYhDqezz1r6va5gu97 H77SOg6C2XsJWWYpFR8fyDCznQTEw90EqSbigWjHwXgGSjR+BgLS1l/yhNBlxpS+bVED qsGxRQChSdEc5DXaUH/cVmnukF/PMPFwi6bJcV3jd4HNYblZeTsaT4Cd7NgLG22D9l14 VnqmwKN8uaMNvy970XDBEXFrURWpJNcLJJe0FhINDbY943Bbans7gmuf5fEoIW/VH5o8 OaRA== ARC-Authentication-Results: i=1; strato.com; arc=none; dkim=none X-RZG-CLASS-ID: mo01 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; t=1685607214; s=strato-dkim-0002; d=aepfle.de; h=Message-Id:Date:Subject:Cc:To:From:Cc:Date:From:Subject:Sender; bh=jfSB96xZmQTSX9f93eRmhAN9QA0aTbS2WwLrDEw5fHE=; b=XWaEWnu+hejeIutyjp13IjgWgiOJ92MamLeCOZ93yWWLnMa4ZNwbCWsXmx82NDtYyd J3SdeG+ytYtpPWRp2ZoyUdtoR8Fql/mhCBb8swkbK/dmweHlFXrBuNakm0exCBbEgHJp PUMgMCbvKMo1A9R8HgmU1c9njuMzn1/Y9mnFxHkBWth7IOVqwq3GcJweBEU7ibBeKgvA l6d4oKoqduNhc1gI/cQ8w7J/cjpYfQx0P+Eh5/vw31D9jpX49k7xhdwshQWe/ZFhuKXn aB5hdqXUohhh56gr+vANA7DpshJWaQdmX621PHvKjCfo6Moi7dj/nXtf9Y6cfoS/ECt7 9vSA== DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; t=1685607214; s=strato-dkim-0003; d=aepfle.de; h=Message-Id:Date:Subject:Cc:To:From:Cc:Date:From:Subject:Sender; bh=jfSB96xZmQTSX9f93eRmhAN9QA0aTbS2WwLrDEw5fHE=; b=LM/XQlG9JEHP7Zl2w0SBFDGleHs5a4MA3DWkdRydWjNf+2yLMaIQ1eIpKl/aEb+vS5 M6dJq5UnLpMQvsIWxuCA== X-RZG-AUTH: ":P2EQZWCpfu+qG7CngxMFH1J+3q8wa/QXkBR9MXjAuzpIG0mv9coXAg4xqFv7EJ0tgRX/vKfT/e8Ig6v0dNw4QAWpzMWrRQ==" From: Olaf Hering To: xen-devel@lists.xenproject.org Cc: George Dunlap , Wei Liu , Anthony PERARD Subject: [PATCH v1] xenalyze: remove unused defines Date: Thu, 1 Jun 2023 10:13:31 +0200 Message-Id: <20230601081331.436-1-olaf@aepfle.de> X-Mailer: git-send-email 2.35.3 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain; charset="us-ascii" These defines are not used by xenalyze. NR_CPUS will not match what was used for building Xen itself. Signed-off-by: Olaf Hering --- tools/xentrace/analyze.h | 13 ------------- 1 file changed, 13 deletions(-) diff --git a/tools/xentrace/analyze.h b/tools/xentrace/analyze.h index 6fefa19639..89217026a7 100644 --- a/tools/xentrace/analyze.h +++ b/tools/xentrace/analyze.h @@ -16,19 +16,6 @@ #define TRC_LOST_RECORDS_END (TRC_GEN + 50) -#define NR_CPUS 128 -#if __x86_64__ -# define BITS_PER_LONG 64 -#else -# define BITS_PER_LONG 32 -#endif - -#define BITS_TO_LONGS(bits) \ - (((bits)+BITS_PER_LONG-1)/BITS_PER_LONG) -#define DECLARE_BITMAP(name,bits) \ - unsigned long name[BITS_TO_LONGS(bits)] -typedef struct cpumask{ DECLARE_BITMAP(bits, NR_CPUS); } cpumask_t; - enum { TRCE_SFLAG_SET_AD, TRCE_SFLAG_SET_A, From xen-devel-bounces@lists.xenproject.org Thu Jun 01 08:17:39 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 08:17:39 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542306.845995 (Exim 4.92) (envelope-from ) id 1q4dUr-0001KT-5y; Thu, 01 Jun 2023 08:17:25 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542306.845995; Thu, 01 Jun 2023 08:17:25 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4dUr-0001KM-3E; Thu, 01 Jun 2023 08:17:25 +0000 Received: by outflank-mailman (input) for mailman id 542306; Thu, 01 Jun 2023 08:17:24 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4dUp-0001KD-VR for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 08:17:23 +0000 Received: from EUR02-AM0-obe.outbound.protection.outlook.com (mail-am0eur02on2062f.outbound.protection.outlook.com [2a01:111:f400:fe13::62f]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id bb73dd43-0054-11ee-8611-37d641c3527e; Thu, 01 Jun 2023 10:17:21 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by AM9PR04MB8617.eurprd04.prod.outlook.com (2603:10a6:20b:438::5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.22; Thu, 1 Jun 2023 08:17:19 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6433.024; Thu, 1 Jun 2023 08:17:19 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: bb73dd43-0054-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=XA7rnaxDuf5kGS2BsHvd+bbn38A7zBnMPuoWrx2v1O0qtavLY70wPKrZEag1+IYwZrXEk0zMERgCA7ucp9sIL1Yvlpbggs4z9wjyeiA3TFx6t1wQLzNxbcsfT1ZtXSEUlYtKAKV7DmhGGMsh8Xbbwp4sXjhWnxT9rC+74QcYRILaJ153UzR7bJauaf4sV9JsJzMKilma5ehJm4UI8N6KYs0vOdGx1+Qp4GThTqlwcUcICez70rqUQrhViy1CXqt5VUR4IGpEaHd5I5HSEjfPWPXoBzK6tyLOrGAf5WkO4Eyo/KhawcTOLl9rzSBBRcJupfx5IBbidPc8eZWEScYVAQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=+3Kyp7rMZRaf+USmq0Sv5Sq9wcr/j8YPvT/OYeQFfqI=; b=AootqJZaxS0rh+OjltmTj+hpMu5DeQVPstXfCuNrj6KUqQGs/GCI4Ldb9itjemBSklt4GSpOkxC8++2freKjWaduzWvQpnYRtSLfDJ8/aTTuK66nQh43XzkTwHhJsYnOVtNUPAnEMffig8S06ZoZuFs38HxuFzcZ6wc0XN4ZTGTEmyWDzumnXmePiaxmV0peQpv3vIcQt13MqrGQURWZHEk1vx6+TXQ8vbzMF26cBsOlhFB16OgqdSfwhMn6oDxmlftBvPqv86bUmRdK/pS1yuhBQ3/fQNwWoOLPJpoeZQoEuhbuRwA0LxElddCOKHMzIYECqSkWN5uESqUoNkMI7g== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=+3Kyp7rMZRaf+USmq0Sv5Sq9wcr/j8YPvT/OYeQFfqI=; b=jDTaWQZfNskgDfiqkSCKrGgyQUZSVkvZM/Ro6B+brDuhcnim5n/IRbP8guL4SpJEnx046AgVHsBPwqShCsmQPPNfRFU6tcRLAwgPjRfE9X9OeIsumiH3Z77JJo2G2It6Fe8XO30nwHRj7yxvSlfCb2YK+BcMfs9RcDN4Ntv/L6RSta8UnwA0/aSRPCh5FKqCYz22FXKLEeUMUUm13Flk5k8Tll0NuJ0P+DUD8aHtCBb3+O17sBTg7dV5Rkpr8SFq5HHRBO/JhtIZjYmqr0Q3IiRSYdUdTgl+5yRojFy/rCdFwr4ooIaD9fA6NRSttGufsFd17s4Tx2AER8eMR7xD2A== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: Date: Thu, 1 Jun 2023 10:17:17 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH v1] xentrace: adjust exit code for --help option Content-Language: en-US To: Olaf Hering Cc: George Dunlap , Wei Liu , Anthony PERARD , xen-devel@lists.xenproject.org References: <20230601080833.32680-1-olaf@aepfle.de> From: Jan Beulich In-Reply-To: <20230601080833.32680-1-olaf@aepfle.de> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR3P281CA0178.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:a0::19) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|AM9PR04MB8617:EE_ X-MS-Office365-Filtering-Correlation-Id: f959990c-ba79-4850-08d7-08db62789dcc X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: OtmH780wK3SPo2CBlx4OTtp/x5MyEumnt/LZLcyAv0PH90ZoBGsO/X9PLZ+LztCx6whph3TvVZaaTI8gZhmHR7R8DShKVp/cB/oIwRkWgLChl1IEYXPm4/0ujxot/JPb46gahFe/pmAMyYFCbi+AV+1BM5KSNf46RqTkQWHHayvNTzrbCskJQb9ZQGhziyHJfRYXkLYIsVwo+n507ZF10Qy5XnCtFd/V1wY/xA9BkC7XIC9Qe3n2oGAqTP+a9HJWZlYe4ZIxLRsZLfdKdPZbwJx9ukW2tmb9bU3lCtP4yY4U3BFd5yvbZ3Avvn1ZCL0DOSXKoIZznF/UNIfGDdUENs4U4Knjbx785rKoMzwiRHmZfoZQGANa/pq4MCOa5PJETVdgS4+Ni4OURxYNN2V9hW3burypvTjShIhI1aQv7G09k2JzLGOr3fdq8beY8GbdndYL19OorZcPXBCfKueNC4Wvw8i4KzB82t4HnBinrN3iJ/ccUVgcgJSXIqLNa4+7u2+Yqg0b8aOFeAV1XKEKn+Io9GY5PbXhiDw55whOpqZRxM2Pst2S4c8Pso/30oVQpu5Uf10CCnrrWQl3Hd/1B9YMkZEmEIKAPjIV3CgUWJ+T7SF5ejzOCybkgz6RiEU+Iuen1JqZngrNF8Kowhc22g== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(396003)(346002)(136003)(366004)(39860400002)(376002)(451199021)(316002)(6486002)(41300700001)(31696002)(6512007)(83380400001)(186003)(53546011)(26005)(6506007)(2906002)(38100700002)(86362001)(2616005)(8936002)(36756003)(5660300002)(4326008)(6916009)(66476007)(478600001)(54906003)(31686004)(8676002)(66556008)(66946007)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?TXpIaDBjQi9KMmpUQy9TdFo4ek1LY0lkY2VlaVdmcGJMQjd1MTRsajBjOW5S?= =?utf-8?B?Wm5nWHVsZjFtYU9nVXlmbFNBZ25ieS9xWVZISVZleFlhN1REVlpyd3ZHUXVZ?= =?utf-8?B?VnlRMGlTejNDVnpHbjRPL3luU1BMc0hEbmlQUEJ1a3ZESHJKUVM0VjJZZmVX?= =?utf-8?B?UkdCaW9xenpMcEJuR2NUczl0RXpGbHZRQTZ5dlZYcCtsL1Q1d2dCZEoyOURE?= =?utf-8?B?NnlZNGp3Y2ljbVB5T0NzY2tMRzc3UjgzLzZ5cjdZWTEzaXo0OGt2OXZXTW1L?= =?utf-8?B?QnZPSzcyTTh6T2l4dnk1eUZ0bHd5VHhqU3phRkFsUHFzUlNTSTJQTVdrNjRn?= =?utf-8?B?MUUzMzYyYlQxd2wzYUpVSkd3ZGVyQ1dTNjBTQ28xWjZtaHNiKzF0eGtWTmFD?= =?utf-8?B?VmxKOXlGcnQvL3NUYkhYS01NUXg5ZlBodWNJMGtmbFZFWVJLTWFjZXF6a0Ft?= =?utf-8?B?cm1nWkhFWnNQY3dyeGV5YnAzZ28vYnJ5STB3bU14d0phbUNxdzAvSCtlTE9Y?= =?utf-8?B?RWVObjRKV1FvTkNsdmx1OTdwYUdOakZQL1ZOUlBqOG91SlpOUmZ5cEVPTlJ6?= =?utf-8?B?bnRmMnV4S1lEUmJiM3BSa0g2Uy9GRFozRWN4L2pnV21YQU13WnNRTy9QY1p6?= =?utf-8?B?eGZTUGQvTURVYlJ4LzlJWkdwL2FOcDVFVlQreGt5M3Iyc1FBZHZITUdWaGlv?= =?utf-8?B?U2pnZ1psWjBIQ3NvZm14ZDdLQ3lSMG1lMU1GMVRLWk9Tc2grWHFNdVBOMXdp?= =?utf-8?B?Sjhwcytva0V3b1N4QjFyOTZtaU5JcEZzWEtFcURYTFNHM1BGZXVzeXNzbmxR?= =?utf-8?B?elJORzJJS08vOEVQallBeUIxczhQZGJPUVdaTjhpMFAxSGtJWnFXNk9CQm9h?= =?utf-8?B?WlVCT1lmUDFkSHM1K1JYdk9ZOFd4VkpXSXZrUnI5R29yQjNRYU0zQnVTS3Vz?= =?utf-8?B?R0JBbWNjN0NhVnNRNVFldmwwbFZxNHo1ZGR4SXlTTXorUnJmWHpiWFhmSGFE?= =?utf-8?B?WjdpaFREWW4vOURJZ2doaE5XeTlubndTUHRPamJKUExFSTVqU1llZGNyTCtz?= =?utf-8?B?K0xGcFk2bnFLdmpobG93YTY5eVcrWjRwMGZ1MmwvYVVWcmN5UTNxclV2WkIz?= =?utf-8?B?eDJnOUF0VnpkbWxObVVtWTd6L3ZUTEVkY0J0ejE4cFN0clBlSm16bGFjbjVX?= =?utf-8?B?cWFGSmdZcWhJc2VEMEZyc3ZmWmZvRng0eC91Z050QXlsVGl2S2JkS01IWjdK?= =?utf-8?B?eVhJN2lmaEtiOGtKUFJ6VDVNeGcwRzNWKzNFM2FzZTduelRqbVlidEtMdXUy?= =?utf-8?B?OXVqQ0JvLzZtbHlaVnJYakwwWVB4MEhlSkZUUGxHZ2ZHVzAzWW9Nc2lmbzNQ?= =?utf-8?B?ZjRCMElGVW1zdkJtK2FqaXNuSTlyWnJ1T2JWZDlXTzlCSzJwQmtHMnZUZUR2?= =?utf-8?B?dkZOaHAzNjlrNzhHaDdDVjMrSFoxd0xpeUxVMFJiVk1QMDZTVEZ4KzVCK09h?= =?utf-8?B?OHZCc1dSS2E4RnNiQlE1WDhzNVk2MEZLRmt5L3lRNCt0QkowanVKR0RObkZl?= =?utf-8?B?akVuWEd3NXd2dTBjeEZudXRvcXd2WUVNTStXbEgrTitJOXJZSE9vVzk4NXpl?= =?utf-8?B?ZHlKWnhXaXNyRnJKWmVuQ1JmcC9RYzV5ME04Z3cyZGhUZi9ZVXN4RTk1aEhr?= =?utf-8?B?VEtkTXhDUjJ4UXlNdnNXQkkzaFZpYi9CakU5YUcyTmY2SFB4czJJVjdkWGNr?= =?utf-8?B?c09qMkFkS0NyZkJvM01ZOFBxOWVTdEVsbk5abWtXL3pWalpSU1ROTWQrenNE?= =?utf-8?B?MEFkRm9SajFYSS9QclFjYk0vYVNiMGFCYmJmeWZpL3NJQnZhQ1pSaWt1NUZs?= =?utf-8?B?QlhObnB6MU9lS3dUMWRxeGNyZUIrSkk2b3g1T0NYQS9JcUdQbENiejJaQzJ5?= =?utf-8?B?MnNXaytLZThSQXMvUE5sNGg5NlE5QkIzK1hCTnhtM1FhS01vTGtlbzkxamgx?= =?utf-8?B?cGVWemdwOTNpOW9KV2NORmprMTlYM3NrM1hhQnBmamlLazNjRnE1YXg0ME92?= =?utf-8?B?bHN5TGx0RDBJc1ZLdk51UnZvT0wvZnVSMzdkQTY0aUgyaWdRL1cxNlh1MHJw?= =?utf-8?Q?fEeIDV4B8lBgmVlRKvJ+nzoYd?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: f959990c-ba79-4850-08d7-08db62789dcc X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Jun 2023 08:17:18.9100 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 0BSEXBEq86pvV9wMGaSl60VxIKQ+TjXm35N+8bX8I94KM6wsgAi69XJvsP0DA7fqz/N1fU/s6NftX7xhUOEgzw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR04MB8617 On 01.06.2023 10:08, Olaf Hering wrote: > Invoking the --help option of any tool should not return with an error, > if that tool does indeed have a documented and implemented help option. > > Adjust the usage() function to exit with either error or success. > Handle the existing entry in the option table to call usage accordingly. > > Adjust the getopt value for help. The char '?' is returned for unknown > options. Returning 'h' instead of '?' makes it allows to handle --help. > > Signed-off-by: Olaf Hering Is this any different from the v1 sent on May 26th? Jan > --- a/tools/xentrace/xentrace.c > +++ b/tools/xentrace/xentrace.c > @@ -807,7 +807,7 @@ static void monitor_tbufs(void) > const char *program_version = "xentrace v1.2"; > const char *program_bug_address = ""; > > -static void usage(void) > +static void usage(int status) > { > #define USAGE_STR \ > "Usage: xentrace [OPTION...] [output file]\n" \ > @@ -854,7 +854,7 @@ static void usage(void) > printf(USAGE_STR); > printf("\nReport bugs to %s\n", program_bug_address); > > - exit(EXIT_FAILURE); > + exit(status); > } > > /* convert the argument string pointed to by arg to a long int representation, > @@ -873,7 +873,7 @@ long sargtol(const char *restrict arg, int base) > { > fprintf(stderr, "Invalid option argument: %s\n", arg); > fprintf(stderr, "Error: %s\n\n", strerror(errno)); > - usage(); > + usage(EXIT_FAILURE); > } > else if (endp == arg) > { > @@ -901,7 +901,7 @@ long sargtol(const char *restrict arg, int base) > > invalid: > fprintf(stderr, "Invalid option argument: %s\n\n", arg); > - usage(); > + usage(EXIT_FAILURE); > return 0; /* not actually reached */ > } > > @@ -917,10 +917,10 @@ static long argtol(const char *restrict arg, int base) > if (errno != 0) { > fprintf(stderr, "Invalid option argument: %s\n", arg); > fprintf(stderr, "Error: %s\n\n", strerror(errno)); > - usage(); > + usage(EXIT_FAILURE); > } else if (endp == arg || *endp != '\0') { > fprintf(stderr, "Invalid option argument: %s\n\n", arg); > - usage(); > + usage(EXIT_FAILURE); > } > > return val; > @@ -1090,7 +1090,7 @@ static void parse_args(int argc, char **argv) > { "discard-buffers", no_argument, 0, 'D' }, > { "dont-disable-tracing", no_argument, 0, 'x' }, > { "start-disabled", no_argument, 0, 'X' }, > - { "help", no_argument, 0, '?' }, > + { "help", no_argument, 0, 'h' }, > { "version", no_argument, 0, 'V' }, > { 0, 0, 0, 0 } > }; > @@ -1144,8 +1144,12 @@ static void parse_args(int argc, char **argv) > opts.memory_buffer = sargtol(optarg, 0); > break; > > + case 'h': > + usage(EXIT_SUCCESS); > + break; > + > default: > - usage(); > + usage(EXIT_FAILURE); > } > } > > From xen-devel-bounces@lists.xenproject.org Thu Jun 01 08:19:17 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 08:19:17 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542309.846005 (Exim 4.92) (envelope-from ) id 1q4dWU-0001tV-IL; Thu, 01 Jun 2023 08:19:06 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542309.846005; Thu, 01 Jun 2023 08:19:06 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4dWU-0001tO-FE; Thu, 01 Jun 2023 08:19:06 +0000 Received: by outflank-mailman (input) for mailman id 542309; Thu, 01 Jun 2023 08:19:05 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4dWT-0001tI-4w for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 08:19:05 +0000 Received: from smtp-out1.suse.de (smtp-out1.suse.de [195.135.220.28]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id f7879566-0054-11ee-8611-37d641c3527e; Thu, 01 Jun 2023 10:19:02 +0200 (CEST) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by smtp-out1.suse.de (Postfix) with ESMTPS id 1E09C2195F; Thu, 1 Jun 2023 08:19:02 +0000 (UTC) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id 88747139B7; Thu, 1 Jun 2023 08:19:01 +0000 (UTC) Received: from dovecot-director2.suse.de ([192.168.254.65]) by imap2.suse-dmz.suse.de with ESMTPSA id gd/RH3VUeGTpfgAAMHmgww (envelope-from ); Thu, 01 Jun 2023 08:19:01 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: f7879566-0054-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1; t=1685607542; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=WkaB/dK8xrG5SL8wE9N8/1S4RV6q2XZjN4rCgCLd8hE=; b=SYvQRgTfg1o6Jc+MhsYnXDrEdiIAqCN+28AB4Ih6MC93GZzV46RJ1/9FDqnMvr5sEDh0pE Zkeo4kK8K2+IoWbBfgYvRPMaYv8oWiF5ldbk3P56lTSgibnRDSdmw7vHZGVerCtOBjXlaK 3TNKX198dlMasClONwSG2jS/+AkawHY= Message-ID: Date: Thu, 1 Jun 2023 10:19:01 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Content-Language: en-US To: Borislav Petkov Cc: linux-kernel@vger.kernel.org, x86@kernel.org, linux-hyperv@vger.kernel.org, linux-doc@vger.kernel.org, mikelley@microsoft.com, Thomas Gleixner , Ingo Molnar , Dave Hansen , "H. Peter Anvin" , "K. Y. Srinivasan" , Haiyang Zhang , Wei Liu , Dexuan Cui , Boris Ostrovsky , xen-devel@lists.xenproject.org, Jonathan Corbet , Andy Lutomirski , Peter Zijlstra References: <20230509201437.GFZFqprc6otRejDPUt@fat_crate.local> <20230509233641.GGZFrZCTDH7VwUMp5R@fat_crate.local> <20230510133024.GBZFuccC1FxIZNKL+8@fat_crate.local> <4c47a11c-0565-678d-3467-e01c5ec16600@suse.com> <20230511163208.GDZF0YiOfxQhSo4RDm@fat_crate.local> <0cd3899b-cf3b-61c1-14ae-60b6b49d14ab@suse.com> <20230530152825.GAZHYWGXAp8PHgN/w0@fat_crate.local> <888f860d-4307-54eb-01da-11f9adf65559@suse.com> <20230531083508.GAZHcGvB68PUAH7f+a@fat_crate.local> <20230531174857.GDZHeIib57h5lT5Vh1@fat_crate.local> From: Juergen Gross Subject: Re: [PATCH v6 00/16] x86/mtrr: fix handling with PAT but without MTRR In-Reply-To: <20230531174857.GDZHeIib57h5lT5Vh1@fat_crate.local> Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="------------TKrpmhFrL3wVlG7bmD5W5KrA" This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --------------TKrpmhFrL3wVlG7bmD5W5KrA Content-Type: multipart/mixed; boundary="------------avHWsmjs7KZwzreMH8jZG9gZ"; protected-headers="v1" From: Juergen Gross To: Borislav Petkov Cc: linux-kernel@vger.kernel.org, x86@kernel.org, linux-hyperv@vger.kernel.org, linux-doc@vger.kernel.org, mikelley@microsoft.com, Thomas Gleixner , Ingo Molnar , Dave Hansen , "H. Peter Anvin" , "K. Y. Srinivasan" , Haiyang Zhang , Wei Liu , Dexuan Cui , Boris Ostrovsky , xen-devel@lists.xenproject.org, Jonathan Corbet , Andy Lutomirski , Peter Zijlstra Message-ID: Subject: Re: [PATCH v6 00/16] x86/mtrr: fix handling with PAT but without MTRR References: <20230509201437.GFZFqprc6otRejDPUt@fat_crate.local> <20230509233641.GGZFrZCTDH7VwUMp5R@fat_crate.local> <20230510133024.GBZFuccC1FxIZNKL+8@fat_crate.local> <4c47a11c-0565-678d-3467-e01c5ec16600@suse.com> <20230511163208.GDZF0YiOfxQhSo4RDm@fat_crate.local> <0cd3899b-cf3b-61c1-14ae-60b6b49d14ab@suse.com> <20230530152825.GAZHYWGXAp8PHgN/w0@fat_crate.local> <888f860d-4307-54eb-01da-11f9adf65559@suse.com> <20230531083508.GAZHcGvB68PUAH7f+a@fat_crate.local> <20230531174857.GDZHeIib57h5lT5Vh1@fat_crate.local> In-Reply-To: <20230531174857.GDZHeIib57h5lT5Vh1@fat_crate.local> --------------avHWsmjs7KZwzreMH8jZG9gZ Content-Type: multipart/mixed; boundary="------------rbANpMXHagpw1nH3ypDTwa0R" --------------rbANpMXHagpw1nH3ypDTwa0R Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: base64 T24gMzEuMDUuMjMgMTk6NDgsIEJvcmlzbGF2IFBldGtvdiB3cm90ZToNCj4gT24gV2VkLCBN YXkgMzEsIDIwMjMgYXQgMDQ6MjA6MDhQTSArMDIwMCwgSnVlcmdlbiBHcm9zcyB3cm90ZToN Cj4+IE9uZSBvdGhlciBub3RlOiB3aHkgZG9lcyBtdHJyX2NsZWFudXAoKSB0aGluayB0aGF0 IHVzaW5nIDggaW5zdGVhZCBvZiA2DQo+PiB2YXJpYWJsZSBNVFJScyB3b3VsZCBiZSBhbiAi b3B0aW1hbCBzZXR0aW5nIj8NCj4gDQo+IE1heWJlIHRoZSBtb3JlIGV4dGVuc2l2ZSBkZWJ1 ZyBvdXRwdXQgYmVsb3cgd291bGQgaGVscCBhbnN3ZXIgdGhhdC4uLg0KDQpQYXRjaCAyIHdh bnRzIHRoaXMgZGlmZiBvbiB0b3A6DQoNCmRpZmYgLS1naXQgYS9hcmNoL3g4Ni9rZXJuZWwv Y3B1L210cnIvZ2VuZXJpYy5jIGIvYXJjaC94ODYva2VybmVsL2NwdS9tdHJyL2dlbmVyaWMu Yw0KaW5kZXggNTliNDhiZDgzODBjLi5jZTI1NGNhODljNjIgMTAwNjQ0DQotLS0gYS9hcmNo L3g4Ni9rZXJuZWwvY3B1L210cnIvZ2VuZXJpYy5jDQorKysgYi9hcmNoL3g4Ni9rZXJuZWwv Y3B1L210cnIvZ2VuZXJpYy5jDQpAQCAtNjU1LDcgKzY1NSw3IEBAIHN0YXRpYyBib29sIHNl dF9tdHJyX3Zhcl9yYW5nZXModW5zaWduZWQgaW50IGluZGV4LCBzdHJ1Y3QgDQptdHJyX3Zh cl9yYW5nZSAqdnIpDQogICAgICAgICBib29sIGNoYW5nZWQgPSBmYWxzZTsNCg0KICAgICAg ICAgcmRtc3IoTVRSUnBoeXNCYXNlX01TUihpbmRleCksIGxvLCBoaSk7DQotICAgICAgIGlm ICgodnItPmJhc2VfbG8gJiBNVFJSX1BIWVNCQVNFX1JTVkQpICE9IChsbyAmIE1UUlJfUEhZ U0JBU0VfUlNWRCkNCisgICAgICAgaWYgKCh2ci0+YmFzZV9sbyAmIH5NVFJSX1BIWVNCQVNF X1JTVkQpICE9IChsbyAmIH5NVFJSX1BIWVNCQVNFX1JTVkQpDQogICAgICAgICAgICAgfHwg KHZyLT5iYXNlX2hpICYgfnBoeXNfaGlfcnN2ZCkgIT0gKGhpICYgfnBoeXNfaGlfcnN2ZCkp IHsNCg0KICAgICAgICAgICAgICAgICBtdHJyX3dybXNyKE1UUlJwaHlzQmFzZV9NU1IoaW5k ZXgpLCB2ci0+YmFzZV9sbywgdnItPmJhc2VfaGkpOw0KQEAgLTY2NCw3ICs2NjQsNyBAQCBz dGF0aWMgYm9vbCBzZXRfbXRycl92YXJfcmFuZ2VzKHVuc2lnbmVkIGludCBpbmRleCwgc3Ry dWN0IA0KbXRycl92YXJfcmFuZ2UgKnZyKQ0KDQogICAgICAgICByZG1zcihNVFJScGh5c01h c2tfTVNSKGluZGV4KSwgbG8sIGhpKTsNCg0KLSAgICAgICBpZiAoKHZyLT5tYXNrX2xvICYg TVRSUl9QSFlTTUFTS19SU1ZEKSAhPSAobG8gJiBNVFJSX1BIWVNNQVNLX1JTVkQpDQorICAg ICAgIGlmICgodnItPm1hc2tfbG8gJiB+TVRSUl9QSFlTTUFTS19SU1ZEKSAhPSAobG8gJiB+ TVRSUl9QSFlTTUFTS19SU1ZEKQ0KICAgICAgICAgICAgIHx8ICh2ci0+bWFza19oaSAmIH5w aHlzX2hpX3JzdmQpICE9IChoaSAmIH5waHlzX2hpX3JzdmQpKSB7DQogICAgICAgICAgICAg ICAgIG10cnJfd3Jtc3IoTVRSUnBoeXNNYXNrX01TUihpbmRleCksIHZyLT5tYXNrX2xvLCB2 ci0+bWFza19oaSk7DQogICAgICAgICAgICAgICAgIGNoYW5nZWQgPSB0cnVlOw0KDQoNCg0K SnVlcmdlbg0K --------------rbANpMXHagpw1nH3ypDTwa0R Content-Type: application/pgp-keys; name="OpenPGP_0xB0DE9DD628BF132F.asc" Content-Disposition: attachment; filename="OpenPGP_0xB0DE9DD628BF132F.asc" Content-Description: OpenPGP public key Content-Transfer-Encoding: quoted-printable -----BEGIN PGP PUBLIC KEY BLOCK----- xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjri oyspZKOBycWxw3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2 kaV2KL9650I1SJvedYm8Of8Zd621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i 1TXkH09XSSI8mEQ/ouNcMvIJNwQpd369y9bfIhWUiVXEK7MlRgUG6MvIj6Y3Am/B BLUVbDa4+gmzDC9ezlZkTZG2t14zWPvxXP3FAp2pkW0xqG7/377qptDmrk42GlSK N4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEBAAHNHEp1ZXJnZW4gR3Jvc3Mg PGpnQHBmdXBmLm5ldD7CwHkEEwECACMFAlOMcBYCGwMHCwkIBwMCAQYVCAIJCgsE FgIDAQIeAQIXgAAKCRCw3p3WKL8TL0KdB/93FcIZ3GCNwFU0u3EjNbNjmXBKDY4F UGNQH2lvWAUy+dnyThpwdtF/jQ6j9RwE8VP0+NXcYpGJDWlNb9/JmYqLiX2Q3Tye vpB0CA3dbBQp0OW0fgCetToGIQrg0MbD1C/sEOv8Mr4NAfbauXjZlvTj30H2jO0u +6WGM6nHwbh2l5O8ZiHkH32iaSTfN7Eu5RnNVUJbvoPHZ8SlM4KWm8rG+lIkGurq qu5gu8q8ZMKdsdGC4bBxdQKDKHEFExLJK/nRPFmAuGlId1E3fe10v5QL+qHI3EIP tyfE7i9Hz6rVwi7lWKgh7pe0ZvatAudZ+JNIlBKptb64FaiIOAWDCx1SzR9KdWVy Z2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+wsB5BBMBAgAjBQJTjHCvAhsDBwsJ CAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey/HmQf/RtI7kv5A2PS4 RF7HoZhPVPogNVbC4YA6lW7DrWf0teC0RR3MzXfy6pJ+7KLgkqMlrAbN/8Dvjoz7 8X+5vhH/rDLa9BuZQlhFmvcGtCF8eR0T1v0nC/nuAFVGy+67q2DH8As3KPu0344T BDpAvr2uYM4tSqxK4DURx5INz4ZZ0WNFHcqsfvlGJALDeE0LhITTd9jLzdDad1pQ SToCnLl6SBJZjDOX9QQcyUigZFtCXFst4dlsvddrxyqT1f17+2cFSdu7+ynLmXBK 7abQ3rwJY8SbRO2iRulogc5vr/RLMMlscDAiDkaFQWLoqHHOdfO9rURssHNN8WkM nQfvUewRz80hSnVlcmdlbiBHcm9zcyA8amdyb3NzQG5vdmVsbC5jb20+wsB5BBMB AgAjBQJTjHDXAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/ Ey8PUQf/ehmgCI9jB9hlgexLvgOtf7PJnFOXgMLdBQgBlVPO3/D9R8LtF9DBAFPN hlrsfIG/SqICoRCqUcJ96Pn3P7UUinFG/I0ECGF4EvTE1jnDkfJZr6jrbjgyoZHi w/4BNwSTL9rWASyLgqlA8u1mf+c2yUwcGhgkRAd1gOwungxcwzwqgljf0N51N5Jf VRHRtyfwq/ge+YEkDGcTU6Y0sPOuj4Dyfm8fJzdfHNQsWq3PnczLVELStJNdapwP OoE+lotufe3AM2vAEYJ9rTz3Cki4JFUsgLkHFqGZarrPGi1eyQcXeluldO3m91NK /1xMI3/+8jbO0tsn1tqSEUGIJi7ox80eSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1 c2UuZGU+wsB5BBMBAgAjBQJTjHDrAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgEC F4AACgkQsN6d1ii/Ey+LhQf9GL45eU5vOowA2u5N3g3OZUEBmDHVVbqMtzwlmNC4 k9Kx39r5s2vcFl4tXqW7g9/ViXYuiDXb0RfUpZiIUW89siKrkzmQ5dM7wRqzgJpJ wK8Bn2MIxAKArekWpiCKvBOB/Cc+3EXE78XdlxLyOi/NrmSGRIov0karw2RzMNOu 5D+jLRZQd1Sv27AR+IP3I8U4aqnhLpwhK7MEy9oCILlgZ1QZe49kpcumcZKORmzB TNh30FVKK1EvmV2xAKDoaEOgQB4iFQLhJCdP1I5aSgM5IVFdn7v5YgEYuJYx37Io N1EblHI//x/e2AaIHpzK5h88NEawQsaNRpNSrcfbFmAg987ATQRTjHAWAQgAyzH6 AOODMBjgfWE9VeCgsrwH3exNAU32gLq2xvjpWnHIs98ndPUDpnoxWQugJ6MpMncr 0xSwFmHEgnSEjK/PAjppgmyc57BwKII3sV4on+gDVFJR6Y8ZRwgnBC5mVM6JjQ5x Dk8WRXljExRfUX9pNhdE5eBOZJrDRoLUmmjDtKzWaDhIg/+1Hzz93X4fCQkNVbVF LELU9bMaLPBG/x5q4iYZ2k2ex6d47YE1ZFdMm6YBYMOljGkZKwYde5ldM9mo45mm we0icXKLkpEdIXKTZeKDO+Hdv1aqFuAcccTg9RXDQjmwhC3yEmrmcfl0+rPghO0I v3OOImwTEe4co3c1mwARAQABwsBfBBgBAgAJBQJTjHAWAhsMAAoJELDendYovxMv Q/gH/1ha96vm4P/L+bQpJwrZ/dneZcmEwTbe8YFsw2V/Buv6Z4Mysln3nQK5ZadD 534CF7TDVft7fC4tU4PONxF5D+/tvgkPfDAfF77zy2AH1vJzQ1fOU8lYFpZXTXIH b+559UqvIB8AdgR3SAJGHHt4RKA0F7f5ipYBBrC6cyXJyyoprT10EMvU8VGiwXvT yJz3fjoYsdFzpWPlJEBRMedCot60g5dmbdrZ5DWClAr0yau47zpWj3enf1tLWaqc suylWsviuGjKGw7KHQd3bxALOknAp4dN3QwBYCKuZ7AddY9yjynVaD5X7nF9nO5B jR/i1DG86lem3iBDXzXsZDn8R38=3D =3D2wuH -----END PGP PUBLIC KEY BLOCK----- --------------rbANpMXHagpw1nH3ypDTwa0R-- --------------avHWsmjs7KZwzreMH8jZG9gZ-- --------------TKrpmhFrL3wVlG7bmD5W5KrA Content-Type: application/pgp-signature; name="OpenPGP_signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="OpenPGP_signature" -----BEGIN PGP SIGNATURE----- wsB5BAABCAAjFiEEhRJncuj2BJSl0Jf3sN6d1ii/Ey8FAmR4VHUFAwAAAAAACgkQsN6d1ii/Ey+J twf/eQjv8nuDSbYV2TCPrcrs+yZ/Jh9nuEt69gAXyJLlg62X3l+NThYbS8jT3yBmlIesvryNqixd W+Q29UtGgdqXjI/SpqWqCaMhNfRWrUFdXPfLZB4tsP8gi/nw/G6c4qvehl2WKOCI0F2LGxHtx+LV Ay+k2smkQaT1w6s4GU3sIcmi/+2Dd+ekm0ugo2aj2lQ2X6JpauyJ5hDqLm+KigQqbiPcaZ0Q7fzq 937YGeNF6h1vkOVSDwWk2yxHlzRZ6b54WMY83z810obsLQnQsITDIMV8DOjDLszsoN3k3nxIQp4O odbvQrE3TePQ8ESO0vxg0K4qwk7LOoo9m0P8YykloQ== =fnFv -----END PGP SIGNATURE----- --------------TKrpmhFrL3wVlG7bmD5W5KrA-- From xen-devel-bounces@lists.xenproject.org Thu Jun 01 08:20:41 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 08:20:41 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542314.846015 (Exim 4.92) (envelope-from ) id 1q4dXq-0003H2-SF; Thu, 01 Jun 2023 08:20:30 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542314.846015; Thu, 01 Jun 2023 08:20:30 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4dXq-0003Gv-PG; Thu, 01 Jun 2023 08:20:30 +0000 Received: by outflank-mailman (input) for mailman id 542314; Thu, 01 Jun 2023 08:20:29 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4dXo-0003Gi-VJ for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 08:20:29 +0000 Received: from mail-yw1-x1132.google.com (mail-yw1-x1132.google.com [2607:f8b0:4864:20::1132]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 29d95d85-0055-11ee-b231-6b7b168915f2; Thu, 01 Jun 2023 10:20:27 +0200 (CEST) Received: by mail-yw1-x1132.google.com with SMTP id 00721157ae682-565ba6aee5fso5776857b3.1 for ; Thu, 01 Jun 2023 01:20:27 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 29d95d85-0055-11ee-b231-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1685607627; x=1688199627; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=tS4a1xOgxMUMLEbnCg0V4q+ycCWx2xlztmESkIXckyo=; b=bIHOxHzjZXokee9j5bbLR5t5pc8c2Z3iggLrV1+hE0XnEXAKfoXhCLHOSa/72NNKfd 6fz4mYEsaohJNpEL4Rs9VL4vNpL+O0IFENkKP8Ed1r56LzcraMW5AYAo4x/ntCtiU2p3 x22qNSqmdrlW4Y/tGkgjrEwyv71XC2UWZFG42WlTnI/gnlPQ9bm7CQBxLeRufsNGf3b3 aSnEcs9elD0+6oKwXRc6fHvLfsfn4GZRVVoYihKOLOoIEu2kuGpVvxaorPdvDNijmjMi d1rL9Zr7ifZGWT0hflvFwiRNteKQuaUR21zo007VMcTBghI8tw53RKKaLOkzxLItE6zV XEtw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1685607627; x=1688199627; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=tS4a1xOgxMUMLEbnCg0V4q+ycCWx2xlztmESkIXckyo=; b=U0SDMB8JePaQYqLv+NM1VxFsOdd4u969G0Sijkzu6Lj2EeWymt6TgbIE5LFu4U6z58 9YZXI3vQm5xwwV9NPRCznOH2XORgHsc77ax0dpYRl1NHBdV5sdehnfVgbhLaGsbj8mw4 +eL+G38U/2KARno//I/brnRQKaQ1LAx2Whe4dP9n9/fW2YTlvj6Dao4DDgdPUKQu3Yyj /DoA7i3/fTcCmsCPKSiqjVSyfPZ3k+H+Q5KlYJWXr5DYRCsF5M78yPOMl/IpUXXqcuVr ujVx3LUj/mm+Ur05G+gR9fWmg5h3wwiPpkxTVXkiETtVciCER7GU5pJkThXIE8pyPuQh ReQQ== X-Gm-Message-State: AC+VfDzJ3nvmPfWCPax8iMhCqFQ1x034IP6F/hIP/GRA6EZzYrs2e4y3 7ZAM1l5Au3p0uFwh1G+bQESkY2nmQXVbS5OxlQg= X-Google-Smtp-Source: ACHHUZ4IZT44NtIfRs/xlbKnWFcG4D7AEEUxUuudHP/RnlDvS1B/rq8axgox+tzLkd9y6rosB3Zw4KNqjFWW/wbAOr8= X-Received: by 2002:a81:7785:0:b0:565:7d7:1356 with SMTP id s127-20020a817785000000b0056507d71356mr8254467ywc.22.1685607626688; Thu, 01 Jun 2023 01:20:26 -0700 (PDT) MIME-Version: 1.0 References: <20230531213032.25338-1-vishal.moola@gmail.com> <20230531213032.25338-26-vishal.moola@gmail.com> In-Reply-To: From: Vishal Moola Date: Thu, 1 Jun 2023 01:20:15 -0700 Message-ID: Subject: Re: [PATCH v3 25/34] m68k: Convert various functions to use ptdescs To: Geert Uytterhoeven Cc: Andrew Morton , Matthew Wilcox , linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Thu, Jun 1, 2023 at 12:40=E2=80=AFAM Geert Uytterhoeven wrote: > > Hi Vishal, > > On Wed, May 31, 2023 at 11:32=E2=80=AFPM Vishal Moola (Oracle) > wrote: > > As part of the conversions to replace pgtable constructor/destructors w= ith > > ptdesc equivalents, convert various page table functions to use ptdescs= . > > > > Some of the functions use the *get*page*() helper functions. Convert > > these to use pagetable_alloc() and ptdesc_address() instead to help > > standardize page tables further. > > > > Signed-off-by: Vishal Moola (Oracle) > > Thanks for your patch! > > > --- a/arch/m68k/include/asm/mcf_pgalloc.h > > +++ b/arch/m68k/include/asm/mcf_pgalloc.h > > @@ -7,20 +7,19 @@ > > > > extern inline void pte_free_kernel(struct mm_struct *mm, pte_t *pte) > > { > > - free_page((unsigned long) pte); > > + pagetable_free(virt_to_ptdesc(pte)); > > } > > > > extern const char bad_pmd_string[]; > > > > extern inline pte_t *pte_alloc_one_kernel(struct mm_struct *mm) > > { > > - unsigned long page =3D __get_free_page(GFP_DMA); > > + struct ptdesc *ptdesc =3D pagetable_alloc(GFP_DMA | __GFP_ZERO,= 0); > > > > - if (!page) > > + if (!ptdesc) > > return NULL; > > > > - memset((void *)page, 0, PAGE_SIZE); > > - return (pte_t *) (page); > > + return (pte_t *) (ptdesc_address(ptdesc)); > > No need to cast "void *" when returning a different pointer type. > > > } > > > > extern inline pmd_t *pmd_alloc_kernel(pgd_t *pgd, unsigned long addres= s) > > @@ -35,36 +34,36 @@ extern inline pmd_t *pmd_alloc_kernel(pgd_t *pgd, u= nsigned long address) > > static inline void __pte_free_tlb(struct mmu_gather *tlb, pgtable_t pg= table, > > unsigned long address) > > { > > - struct page *page =3D virt_to_page(pgtable); > > + struct ptdesc *ptdesc =3D virt_to_ptdesc(pgtable); > > > > - pgtable_pte_page_dtor(page); > > - __free_page(page); > > + pagetable_pte_dtor(ptdesc); > > + pagetable_free(ptdesc); > > } > > > > static inline pgtable_t pte_alloc_one(struct mm_struct *mm) > > { > > - struct page *page =3D alloc_pages(GFP_DMA, 0); > > + struct ptdesc *ptdesc =3D pagetable_alloc(GFP_DMA, 0); > > pte_t *pte; > > > > - if (!page) > > + if (!ptdesc) > > return NULL; > > - if (!pgtable_pte_page_ctor(page)) { > > - __free_page(page); > > + if (!pagetable_pte_ctor(ptdesc)) { > > + pagetable_free(ptdesc); > > return NULL; > > } > > > > - pte =3D page_address(page); > > - clear_page(pte); > > + pte =3D ptdesc_address(ptdesc); > > + pagetable_clear(pte); > > > > return pte; > > } > > > > static inline void pte_free(struct mm_struct *mm, pgtable_t pgtable) > > { > > - struct page *page =3D virt_to_page(pgtable); > > + struct ptdesc *ptdesc =3D virt_to_ptdesc(ptdesc); > > virt_to_ptdesc(pgtable) > > (You can build this using m5475evb_defconfig) > > > > > - pgtable_pte_page_dtor(page); > > - __free_page(page); > > + pagetable_pte_dtor(ptdesc); > > + pagetable_free(ptdesc); > > } > > > > /* > > @@ -75,16 +74,18 @@ static inline void pte_free(struct mm_struct *mm, p= gtable_t pgtable) > > > > static inline void pgd_free(struct mm_struct *mm, pgd_t *pgd) > > { > > - free_page((unsigned long) pgd); > > + pagetable_free(virt_to_ptdesc(pgd)); > > } > > > > static inline pgd_t *pgd_alloc(struct mm_struct *mm) > > { > > pgd_t *new_pgd; > > + struct ptdesc *ptdesc =3D pagetable_alloc(GFP_DMA | GFP_NOWARN,= 0); > > > > - new_pgd =3D (pgd_t *)__get_free_page(GFP_DMA | __GFP_NOWARN); > > - if (!new_pgd) > > + if (!ptdesc) > > return NULL; > > + new_pgd =3D (pgd_t *) ptdesc_address(ptdesc); > > No need to cast "void *" when assigning to a different pointer type. > > > + > > memcpy(new_pgd, swapper_pg_dir, PTRS_PER_PGD * sizeof(pgd_t)); > > memset(new_pgd, 0, PAGE_OFFSET >> PGDIR_SHIFT); > > return new_pgd; > > The rest LGTM. Thanks so much for the review! I'll make those changes in the next version. > Gr{oetje,eeting}s, > > Geert > > -- > Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m6= 8k.org > > In personal conversations with technical people, I call myself a hacker. = But > when I'm talking to journalists I just say "programmer" or something like= that. > -- Linus Torvalds From xen-devel-bounces@lists.xenproject.org Thu Jun 01 08:20:59 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 08:20:59 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542318.846026 (Exim 4.92) (envelope-from ) id 1q4dYJ-0003q7-7q; Thu, 01 Jun 2023 08:20:59 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542318.846026; Thu, 01 Jun 2023 08:20:59 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4dYJ-0003q0-5H; Thu, 01 Jun 2023 08:20:59 +0000 Received: by outflank-mailman (input) for mailman id 542318; Thu, 01 Jun 2023 08:20:57 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4dYH-0003Gi-Oy for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 08:20:57 +0000 Received: from mo4-p01-ob.smtp.rzone.de (mo4-p01-ob.smtp.rzone.de [81.169.146.165]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 3b0d90a9-0055-11ee-b231-6b7b168915f2; Thu, 01 Jun 2023 10:20:56 +0200 (CEST) Received: from sender by smtp.strato.de (RZmta 49.4.0 AUTH) with ESMTPSA id x6987cz518KtQL8 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256 bits)) (Client did not present a certificate); Thu, 1 Jun 2023 10:20:55 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 3b0d90a9-0055-11ee-b231-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; t=1685607655; cv=none; d=strato.com; s=strato-dkim-0002; b=aogfgoOge4+1ehOj2RozXEbT+yxsaGlbLgNbdU+fBAO9GTrQc1fkjs8/XCD7e2aw55 rnb9qmphj3xQiRtVCYbEQ32WRWndWdhKeLrNfk5uRrARFdvK5jFcTZmQLudrlnB3E1cI wVfKlKU5qSUVOeIBBQeINsSKA3Ah33PU0y1YdqN+mCEdL86WWmsFHPY6tta56m9BONK/ oVS7I46H4UKTHDD3AW9Ga8b6L5fAclxAX/9eJbh+bOy5bQyISakDmc0cXjBxdg1skdE1 Upiyd19kYuLlPAH7kJVG0+aqoMJWvDrDwUsxiVZ3PO6Y+ZlpTXBN8RfS8DihzyYAbws8 +nVw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; t=1685607655; s=strato-dkim-0002; d=strato.com; h=References:In-Reply-To:Message-ID:Subject:Cc:To:From:Date:Cc:Date: From:Subject:Sender; bh=roOXRZIUoVjtbh3lM/5HG6gNcY6DDudOnKnbWp+tQeI=; b=o9+sNIHtpitaASjRyBUQYN4HUEcOXw0sAThGguJLwC7CX/UPnczHq0EVMwJqnrR6Ui z10bzWDtPrkUqnry/rS6U162ymy1ZAaK0STM/WpDcQequutE4wACwTrt1fPD1jCTewWl t0tioejaJp45iW6TO6LJWLsNrp0etO9y0hOjM9KMD/byMa21Qut+UNGjZV8Ds7yBx9di KIBwyZppvLTOeIRWW3rSQge870eZJTiYwkU9rCD8myXBlhzijTPNHflDy1kKxh5EXQYN /xnSUNHW01t1Usjc++sqOzRspII1G8aAWwjNr5o3k2OsNJ8YMm0r6DkC8kMRzjaCO1KY Wl+w== ARC-Authentication-Results: i=1; strato.com; arc=none; dkim=none X-RZG-CLASS-ID: mo01 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; t=1685607655; s=strato-dkim-0002; d=aepfle.de; h=References:In-Reply-To:Message-ID:Subject:Cc:To:From:Date:Cc:Date: From:Subject:Sender; bh=roOXRZIUoVjtbh3lM/5HG6gNcY6DDudOnKnbWp+tQeI=; b=dRKamFdQyitTr+JZTFNZkBxMZd9SfxfJA2Cf1Y1zi84UwRL4vAbwxv3ytcCLD0rhrb t7w7AqxiCTQ66mGsfW22M/nPrwf8FXP3Y6qGP+WVnEaygCCdTZ1sL773jEUBeJJ32rIA tmvIZCsCKpYPtLdo3Urdeb6McQyjH6xHSeTAG2iKcsEv4M+djsf499LJEFKD8yU/uo5i D9Ot44iBGL1CQu3GXf1jYDfj1C2gmAU3TVaMVVC0T/eTayaEy9ob8CQayXYNCTeMYlZu vOIR1pvtuEMgmQ5LBoXw2Ow7iE0Aa9mjR70s7B6kYfK1rYIlhm2ySPMov4oVLGvotQLD MRfg== DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; t=1685607655; s=strato-dkim-0003; d=aepfle.de; h=References:In-Reply-To:Message-ID:Subject:Cc:To:From:Date:Cc:Date: From:Subject:Sender; bh=roOXRZIUoVjtbh3lM/5HG6gNcY6DDudOnKnbWp+tQeI=; b=IsAC/dhabJ37kcLsZr7VZlS4IeXfyNeZiPr4rPfaDYyJu7ZdnKfMMN5qRcaSbYOIhk w8JpHogFfYaAyb74M8BQ== X-RZG-AUTH: ":P2EQZWCpfu+qG7CngxMFH1J+3q8wa/QLpd5ylWvMDX3y/OuD5rXVisR4BhOIaRvsld/sN75OpaIeOWAiVTRkMz6wPlUdSg==" Date: Thu, 1 Jun 2023 10:20:41 +0200 From: Olaf Hering To: Jan Beulich Cc: George Dunlap , Wei Liu , Anthony PERARD , xen-devel@lists.xenproject.org Subject: Re: [PATCH v1] xentrace: adjust exit code for --help option Message-ID: <20230601102041.7e3b7ce4.olaf@aepfle.de> In-Reply-To: References: <20230601080833.32680-1-olaf@aepfle.de> X-Mailer: Claws Mail 20230504T161344.b05adb60 hat ein Softwareproblem, kann man nichts machen. MIME-Version: 1.0 Content-Type: multipart/signed; boundary="Sig_/zCs7rYEb2/sPvwiEVHKgFMA"; protocol="application/pgp-signature"; micalg=pgp-sha256 Content-Transfer-Encoding: 7bit --Sig_/zCs7rYEb2/sPvwiEVHKgFMA Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: quoted-printable Thu, 1 Jun 2023 10:17:17 +0200 Jan Beulich : > Is this any different from the v1 sent on May 26th? Yeah, this one still has the bogus commit message. I forgot that this patch was already sent earlier. Please ignore this one. Olaf --Sig_/zCs7rYEb2/sPvwiEVHKgFMA Content-Type: application/pgp-signature Content-Description: Digitale Signatur von OpenPGP -----BEGIN PGP SIGNATURE----- iQIzBAEBCAAdFiEE97o7Um30LT3B+5b/86SN7mm1DoAFAmR4VNkACgkQ86SN7mm1 DoBc8RAAgPCwQHBdhAZ2bYAETeBKc9DtG7u5wyOL9vjQ/0sMF1XUGFIV6v/nOdvy eyChl5Oog2Tn/+pKcBGx3ZV0yVV6ymxxVXvr94sbaYoop80pGydfv3w1vsXHtOP9 mAVEbHNehFICa2+vHDqpA3xbFQm14Ixevq5L1SgR9A6k0yidYOcVP5MOJAF3RcMv z4UZfo8nIBlrNvxHfqJAreGmXYizMjWURsm48kpkc1ZaZZ1yvvLgQy6o3h6LjGmo jzCLs5Qd/kTt7H0H2hdcyx0IQ5my0YGelslKoYjLd+Hf+UZAtYEHqn/SsOBXhJcY xWDEUKKbIkdaogULWcrIgRuficF3zFaeAB83nHUYvtEGwZNKyfzPOBeXFJyoEUSW 6hlw2Cdkn2oESL4Q1IQJU/cO0tz/ZPGwvzb/EdsOhId5YQSVZd/75p8hyRbgTnIT +nMddfbTfdrpxJNa/lsK5gR4HPjCO8aMwbMedYweKtodJc599nXLcz4a6OOxepmC ovxEXWRI/BukSlsL6lCFE/EdgFsrjDaPbX33u22JnmrgAxmE15tXMbGOhfMimhRF 1/QbCujvaynh1M5PhuyNw1H8gWZ7mKjvCeygbHNTPNLTk8kcRg0SbMkQQsOxBoQh +8YNaVQ2Rn98uynaUlYRvsPtXP4vQ0cF/jMtjBUgA9r69qr4uEo= =sNWF -----END PGP SIGNATURE----- --Sig_/zCs7rYEb2/sPvwiEVHKgFMA-- From xen-devel-bounces@lists.xenproject.org Thu Jun 01 08:22:19 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 08:22:19 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542324.846036 (Exim 4.92) (envelope-from ) id 1q4dZZ-0004SH-IA; Thu, 01 Jun 2023 08:22:17 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542324.846036; Thu, 01 Jun 2023 08:22:17 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4dZZ-0004SA-Es; Thu, 01 Jun 2023 08:22:17 +0000 Received: by outflank-mailman (input) for mailman id 542324; Thu, 01 Jun 2023 08:22:15 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4dZX-0004Rm-Rn for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 08:22:15 +0000 Received: from mail-yw1-x1133.google.com (mail-yw1-x1133.google.com [2607:f8b0:4864:20::1133]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 69b8db35-0055-11ee-b231-6b7b168915f2; Thu, 01 Jun 2023 10:22:14 +0200 (CEST) Received: by mail-yw1-x1133.google.com with SMTP id 00721157ae682-5689335d2b6so5063797b3.3 for ; Thu, 01 Jun 2023 01:22:15 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 69b8db35-0055-11ee-b231-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1685607734; x=1688199734; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=F3q8fSv1CYQ8OeBSkoHHq8yQzPVMEdcVj1sJJBohCe0=; b=scnpKoycafdSA6Zmoxe64NtU1IPtpP1XoN7u6BxbHgaNpHHpBaRgfB2X/NbVQI3XUI S43vtnrb0VpUQFKtCtNAL2Z4eQGxKB9jkDmQzBef6OSmzPFkANcNw2nEHbBaxtIGRJFx F2gdbWX0/JO50BjGXzMMRjG/dVaN6/37Aaxe3j2XyiD9NBGl22snChdmfv7CpIBT4YsT wzEsBAOaAGJLasaxdabRza57BmBoAT7cVmGOq5aUEFhtYj/c1WejBdPyTkL2OU+y9vxz zNiBma0es8vOX0CahjWds9KH8J6DH6xHzp6sGGczNoDJQcyp7Q2snP8wt+QQc7Qs4GOa fyBw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1685607734; x=1688199734; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=F3q8fSv1CYQ8OeBSkoHHq8yQzPVMEdcVj1sJJBohCe0=; b=jK/7zikfBO0HrW8s3Ys7USYDbIE1w2mpyErdXtWmcWgDqwaC6CxT7FQZMEUCgYuuiM nHBjQtE0pkel+mLm9sgnimBfoohLOSTq3a9boxO1iij68IS9A8nism9FnHUVU+nCIXFz B6vBlrHYM+l3KBucaUECYg0UQ8Urpmto3lcAKkzDZaLB/HrcrCzSXNUmK9jWYywFm9u8 3uBdLPEpH/wOWQtE4ALOudSE0OljiBjLA1gQduNmDr/OochyN8SzBJPT3pfrl6m01KAw lDYhD/R8EJq5PezKR6dXrhrb5mWKqtvfk7HYPjlOaokFrKbB6acfTefQyj2Yjtu28jRx Q3Ug== X-Gm-Message-State: AC+VfDwkssz93bZvCyvzNfDuMUJGImoFDhvsK6dU81sLCIHxNzbVLi0s 4siFAOaPcMuaKhh5UobEf00mjCqthoGt69OqtAU= X-Google-Smtp-Source: ACHHUZ4BVGpqKx729yAA7sIpRRuJCk9B2q39qd4V84f+TNhLT6e1WTgI1mcqI+pCtHVuJpHfepvjflFti312UIm7bGk= X-Received: by 2002:a0d:f5c2:0:b0:568:d63e:dd2c with SMTP id e185-20020a0df5c2000000b00568d63edd2cmr6202683ywf.11.1685607733835; Thu, 01 Jun 2023 01:22:13 -0700 (PDT) MIME-Version: 1.0 References: <20230531213032.25338-1-vishal.moola@gmail.com> <20230531213032.25338-31-vishal.moola@gmail.com> <025fc34a24e1a1c26b187f15dba86d382d9617eb.camel@physik.fu-berlin.de> In-Reply-To: <025fc34a24e1a1c26b187f15dba86d382d9617eb.camel@physik.fu-berlin.de> From: Vishal Moola Date: Thu, 1 Jun 2023 01:22:03 -0700 Message-ID: Subject: Re: [PATCH v3 30/34] sh: Convert pte_free_tlb() to use ptdescs To: John Paul Adrian Glaubitz Cc: Geert Uytterhoeven , Andrew Morton , Matthew Wilcox , linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Yoshinori Sato Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Thu, Jun 1, 2023 at 12:28=E2=80=AFAM John Paul Adrian Glaubitz wrote: > > Hi Geert! > > On Thu, 2023-06-01 at 09:20 +0200, Geert Uytterhoeven wrote: > > On Wed, May 31, 2023 at 11:33=E2=80=AFPM Vishal Moola (Oracle) > > wrote: > > > Part of the conversions to replace pgtable constructor/destructors wi= th > > > ptdesc equivalents. Also cleans up some spacing issues. > > > > > > Signed-off-by: Vishal Moola (Oracle) > > > > LGTM, so > > Reviewed-by: Geert Uytterhoeven > > I assume this series is supposed to go through some mm tree? Hi Adrian, I was going to have Andrew take this through mm-unstable once it gets enough review. From xen-devel-bounces@lists.xenproject.org Thu Jun 01 08:30:22 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 08:30:22 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542328.846046 (Exim 4.92) (envelope-from ) id 1q4dhE-0005xu-B3; Thu, 01 Jun 2023 08:30:12 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542328.846046; Thu, 01 Jun 2023 08:30:12 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4dhE-0005xn-6d; Thu, 01 Jun 2023 08:30:12 +0000 Received: by outflank-mailman (input) for mailman id 542328; Thu, 01 Jun 2023 08:30:10 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4dhC-0005xh-HS for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 08:30:10 +0000 Received: from EUR03-DBA-obe.outbound.protection.outlook.com (mail-dbaeur03on20615.outbound.protection.outlook.com [2a01:111:f400:fe1a::615]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 848a9659-0056-11ee-b231-6b7b168915f2; Thu, 01 Jun 2023 10:30:09 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by DB8PR04MB6971.eurprd04.prod.outlook.com (2603:10a6:10:113::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6433.21; Thu, 1 Jun 2023 08:30:06 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6433.024; Thu, 1 Jun 2023 08:30:06 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 848a9659-0056-11ee-b231-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=CzLfWot1tHmNHNcweig2G4JP5G06rer9xc1PhXBq4Q0hc5Dl38P5uv1PqZI+43pTEcdMLlq+cvZhI3XaKI/IJenR3lsG4b4WbGP1ReaOvDrzyWnJ+X2keUxcklYfvhhApEbRuyzgY/ce00TE5SOq9Ohu/UGXJZqqGap2zcgE2mgqVYKTB1hpC/HgHAfPCeNohjm2JiqAP7cN3tfj1mqzGLYgEw+DdXe2EsaFyVa4jfCu3XurQOIhpiTGogmsAEmmay/FBiRkMyA7sA5EgQ3fp30+/GmT+BXdsxLG+PL4DYfyiPW2h757xcXI5QddwCuaTdhGt912zlXJfAHJOBvrhA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=7+68SkHRQpN5NmJsCohX6rG1ARTheBpEAZzz9y7lGK4=; b=MwIM8d/0OF58p86QwPtnL+EGccT/IHa1vG2NHabz/m1kZ52KoXi8xN7sUeKonqOskQgBpd+mqL15CvBNE6A3q/BpWtxttz6awd0SzUrAxGhO7ZWMApSTS3cOYfQktXYsyWJ7gIBbs0GzqUJr7wxMgmqgYBVYHToyb67w9VPF6DOQFGqpBijQ5G9WyhZ6dYcnmiWZTiUU5x0vTvmXmp75cykP2FaYZz+Nqt3dNmVE3AbkVif54qGKVWjNdqttdDBYkKumdqeGk4y8u3iAvBwwtQ1RQbzuZ6H8ZP8oEWsutFshh8NKXou36ygp7meq+tAYv1oJOvf7ULIvdeE7NsKWRA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=7+68SkHRQpN5NmJsCohX6rG1ARTheBpEAZzz9y7lGK4=; b=E81SiRXQu8bG76A2EZeABN9FKH9dOCOszlqSig3pd8gYNNe6EG8vnT6l30sIxxVE9wKEb1fxD8ZqfXGa5Rfp/Mj/4OBBZUpRu/qoxJQ+yhorXTUxKl3QCnZQ5H3WsRa23Wgb+b/42Yw37ZKBDTgvHso503LYmFP4UmXKrQVIN7klarm8EmnQCFue3OXEwQo4OzqjdbxllLlDf+fdMfz+1yyXIj/IICmVd193vruEmxAX6JWbBbC/YbDWRplgVbQElorA4uGJ+4efDNTfVtotyxlXUsuGZQF91J7BH6Iv9TuM840E8hRSy50IqkqkUdnbYu7ShMp6xqzJ+5GQSEwKrA== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <7d6ce0e8-d12e-ed32-ef4d-8a90165d5360@suse.com> Date: Thu, 1 Jun 2023 10:30:04 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH] xen/cpu-policy: Add an IBRS -> AUTO_IBRS dependency Content-Language: en-US To: Andrew Cooper Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , Alejandro Vallejo , Xen-devel References: <20230531153028.1224147-1-andrew.cooper3@citrix.com> From: Jan Beulich In-Reply-To: <20230531153028.1224147-1-andrew.cooper3@citrix.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR0P281CA0181.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:ab::8) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|DB8PR04MB6971:EE_ X-MS-Office365-Filtering-Correlation-Id: bdc45f01-1a1d-4c66-a7bd-08db627a6734 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: Ab5cUBq22IWvOrX+6HAZHsdDi7vYtCd7FdPE9ZG7a8QGlgFXy1CiUIgsynH665mkaibvk8ecwwczWguWePicAd9bNTapPG5aFsoSGIHV3PLm8/GmqBJMIiFd4H6PKI+MKzhPoTkoZyDsheG4CasxqKKc0oNdKGItyZxa22ucbyMtQotmSSeCvtqGaF8PkV4Q2Z5dRnvz7kuvIfIuyyBE37LeWDkTjVj/MawJ/fdJ4BUzlwzh11Nl7lNP1Tk7Y5JVnhSSODd32314hrd/8s7Q2bC3LWBYaHfCU1mh+wqwoKLS7GzYAtSVQ636uAQDkk/v5jmrRFRTHOAsAxF3gfFEirboZoyd71Lq2AOWBWMclszO64mhcnO9kq+VLor5WKvjvl6xcCURBABHH1idkXf3o6y+DQ1KMfiXT46yAkl1ISlqOc5jwPB6mSoX2gjqv2souy17/EnoNan0B9pY3WwygZLvYJ7RoBxZdduZdyvL9JyUcLRrNhXnpI63Uo4BjRA2ag1K4FbNWdjQGiccbA3ksR1fbH1BnslvIJp7+++cn7JHJPXaXSFpWyGmoaQbhKo14wND8cGANZ8hUuYbfgAVqRGgJlFqbwF8HL/h+G89RWOWqkb0GoRT20TfhzGXSyW70itzh1ikU+hlTleLBYK5VA== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(396003)(39860400002)(136003)(376002)(366004)(346002)(451199021)(38100700002)(2616005)(41300700001)(31686004)(186003)(6512007)(6506007)(6486002)(26005)(53546011)(54906003)(4326008)(66556008)(66476007)(478600001)(316002)(66946007)(5660300002)(8676002)(6916009)(36756003)(4744005)(2906002)(31696002)(8936002)(86362001)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?TG9jQ2t3eDNPQXBSUkE1K1JVTG9CTHVRRUxyQm9DWVQ4RXVpUkxDODlwb1VD?= =?utf-8?B?eVc3R0RUL1Fwcm1acnFLWk1kc3pneTRaZ0JrVkNzT3BBWkRGMHh0c2w3aGh6?= =?utf-8?B?c3F5eENvdVRtUlFXTERGV1J4bExyOTJRY3NXVVVyQUNRamZ3OUhQRkZpZDdO?= =?utf-8?B?TUU5ZXAxaDRQcjYvd1pabndNWmtKVzh3NFBZU0FsdS9aL1J4a2FJTkNkWVRt?= =?utf-8?B?K00vYm1aMEVZcDlwcTQxUlVwcGQ0bzhrWTVSSlQyc0VFb1owYlBHL2hPSmpQ?= =?utf-8?B?eWFEVXlzY0VSMG8vRytSSzdFRHZDSUl4b3J3U2ljTmcvOW1OTUU3bmx3MzFF?= =?utf-8?B?cU8ySHNMcExheitNWDM3ekkyU1hBOThQMVprTTk5dHdKTWhrbXpZaDA4d0ho?= =?utf-8?B?WXFIeStvTVRLWXB3blJwTjJ3VklIMkJFOUpYWTFmWGhiWjNGeXFUYXIxeE9w?= =?utf-8?B?VFkxWHMxLzNHRXdRRU0xZ0NBeXJSVHQ1bGxjWHhjK1gxR1Exb01HZVQ5ZFVW?= =?utf-8?B?b3R6Z0pzODZmNmpFTDlGa3k4Z0NGd3R0eTBGOUFjQkJveFNoWlB6ZmxmNHZM?= =?utf-8?B?dmllZDRaTFkrZVhOZEw1MXdWaXcxYzdXRXNYaWdIZVN2TVhCQlkyZENOY3Bv?= =?utf-8?B?d0VpQ2hxR3pId3h6TUJXNEp6ZHQ1K1NKWFpKOUJTYVBoWldORVNBNnRpS25B?= =?utf-8?B?TkhnUFBpZnp3UVh2d24yOWlhSUFPSjUvTXR1d2grR2pTbFFEYWc0RFNabHZt?= =?utf-8?B?OHJ1NWQ1KzluRWZVTGczaTFKbm1mR0cxQWNnYXNtUWNyNHExN1hKTWZudXgw?= =?utf-8?B?ZjZuM005UzJraEJOeFZOS1lmYWdZUnMrMHBXYUtDbmlIYXVjVWcyVTR2MElP?= =?utf-8?B?UzM3M0tLcjZoQWMvekd3RlZEenZnUzFuQTQxNkM1RDRYWDVUYnZULzI4T2tw?= =?utf-8?B?TUJZY1hIZmZvcEgxUHRQSUI3MDVJOFJMVVhoaUx5T0pZb24rNWNFamlJUjdl?= =?utf-8?B?TGVjeEk2L0NkUExrT2lsSFROcStOcnV5cnBKc2pYVTR1dFUzVkZvWERiWm1P?= =?utf-8?B?U3E5ZytubU9wQ1FtM1pTUmh6clpjT21uU1lOUmxuVytYZ0FhVkhpYmJuZkhR?= =?utf-8?B?UU5Pa0xOMFFkYXkyVk1tbm84eTlvN216UnVHK29tYUZOZXJhckZIbWFhTE1o?= =?utf-8?B?RnBIUmROYXBockRzeHNTL1lKVTBxV0tFR2RZU1VsS0xnQ3ZuZGR4MFRrOXkx?= =?utf-8?B?SUcvQmZDdDYvZDJrenpYdnVMRkJRVCtBeVFUMjlIMkliRStwNWJJV042VmRs?= =?utf-8?B?bVc1elBOU2pKb1RZc3FOSUpGRnpLYS9ZNm50SklRdWRhZG1SYlRhMGYwNXpR?= =?utf-8?B?MmF3dWFLekVWWjNkKzF3Yzl4UE9WUVFnR0lYYmsxdkhkU0o2OVlTd3FEUWFB?= =?utf-8?B?SFpKdHB6ZU9JN1Y0ZWNZQmcyZlNKQjMvc1ZHL0o0MFA4OXkwNkhRbGZqeFB1?= =?utf-8?B?Ni83c1NUT1FVOEErUUw4a2NvV3l1RWZSaGdXd1dpbmxDd1ovRUlOY1RZWWlQ?= =?utf-8?B?d3JrYlhxeG81SStmUHIyenlDb1lvL2k4UWMrZEZJRkhQNXU4aHErZnpYQlF6?= =?utf-8?B?NHdld2FjTG1JYVlhNXdHQXBsZFFNcjdIYXhuRld2NjFUMEU0eVFBUnlOUGha?= =?utf-8?B?czlBKys4Q3FsL1AzeEJSSEJwRVZpQnpGaHJrTG0zZnhvVDh0QWdCaGNwYXBB?= =?utf-8?B?SXpCODZNN0xocXNYUFkybUN5SU9oYXg3ZkdQVEVXR1pPSjl4NXBKc0Q2d2ZU?= =?utf-8?B?WmhzWEI1bUg4bUZ4dzRXSkEyeXNBSHFqMzJjMktBZy9CWnU5MzhhVjRabUE1?= =?utf-8?B?VXJTTWtBV0lCdDVPWkN4aTZ4VFFwdS9YWk51K0syM240blFFQW5TeWwxTWly?= =?utf-8?B?NC9aMUNGYzZ1V3E0U1lDZk1obU5rNzQwUmpsa2FCSVV5LzVPZFBHUDEvVmF5?= =?utf-8?B?UnlGdmlVSU5Tc0J3Uk5oQjNzOUhUWkh4c1p1aGtMb1lHa011TjJQb2swL0Nz?= =?utf-8?B?NHByN1FISTgyenMrV0w1SXYrN20wdkJEM2QrdElwdk9QdGZEMEZmU1o4dUI1?= =?utf-8?Q?x2+P5oSj/eBFs2KcBASwAtT7c?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: bdc45f01-1a1d-4c66-a7bd-08db627a6734 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Jun 2023 08:30:06.2391 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: kgXwaWsr3+99EquR8b5VVCNQ8d9r2HxL0TG4s2ugbg8WCn4qmuTVrXg0ucbxgI7i2+d7QUxRjnPadSwRu+SaMg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB8PR04MB6971 On 31.05.2023 17:30, Andrew Cooper wrote: > AUTO_IBRS is an extention over regular (AMD) IBRS, and needs hiding if IBRS is > levelled out for any reason. > > Fixes: defaf651631a ("x86/hvm: Expose Automatic IBRS to guests") > Signed-off-by: Andrew Cooper Reviewed-by: Jan Beulich From xen-devel-bounces@lists.xenproject.org Thu Jun 01 08:37:26 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 08:37:26 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542332.846055 (Exim 4.92) (envelope-from ) id 1q4do0-0006ad-03; Thu, 01 Jun 2023 08:37:12 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542332.846055; Thu, 01 Jun 2023 08:37:11 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4dnz-0006aW-Ti; Thu, 01 Jun 2023 08:37:11 +0000 Received: by outflank-mailman (input) for mailman id 542332; Thu, 01 Jun 2023 08:37:10 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4dny-0006aQ-Aj for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 08:37:10 +0000 Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.133.124]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 7da93e36-0057-11ee-8611-37d641c3527e; Thu, 01 Jun 2023 10:37:07 +0200 (CEST) Received: from mimecast-mx02.redhat.com (mimecast-mx02.redhat.com [66.187.233.88]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id us-mta-280-USG_RcDKNOSC-JcN7c_PZQ-1; Thu, 01 Jun 2023 04:37:01 -0400 Received: from smtp.corp.redhat.com (int-mx07.intmail.prod.int.rdu2.redhat.com [10.11.54.7]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 63C7B801585; Thu, 1 Jun 2023 08:37:00 +0000 (UTC) Received: from redhat.com (unknown [10.45.226.165]) by smtp.corp.redhat.com (Postfix) with ESMTPS id EEDAD140E962; Thu, 1 Jun 2023 08:36:57 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 7da93e36-0057-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1685608626; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=llzAElU+/coIQeoN7wL9nawVE/68O7gV+uWIErknun0=; b=Y25F9F5e1xUT/yCzoOVojwqfrEvNV8vg+dSbvGLtPtrru1iLQHL/hMmhKITw/mGuUi4uiW tDPpZ8Iy+1SQX0W4fHpbSKsQSFpNslvrKBOPUZwXBgHcPfTBPaN4YoT4auvqG5tYiG4ftc p3H+Iip8Wvj05R2901JWm7cGhKGik3U= X-MC-Unique: USG_RcDKNOSC-JcN7c_PZQ-1 Date: Thu, 1 Jun 2023 10:36:56 +0200 From: Kevin Wolf To: Stefan Hajnoczi Cc: Paolo Bonzini , eblake@redhat.com, Hanna Reitz , Fam Zheng , sgarzare@redhat.com, qemu-block@nongnu.org, xen-devel@lists.xenproject.org, Julia Suvorova , Stefano Stabellini , Philippe =?iso-8859-1?Q?Mathieu-Daud=E9?= , Paul Durrant , Anthony Perard , "Michael S. Tsirkin" , Aarushi Mehta , qemu-devel@nongnu.org Subject: Re: [PATCH v3 0/6] block: add blk_io_plug_call() API Message-ID: References: <20230530180959.1108766-1-stefanha@redhat.com> <20230531195042.GA1509371@fedora> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="VwdRIpMbxphm9SWD" Content-Disposition: inline In-Reply-To: <20230531195042.GA1509371@fedora> X-Scanned-By: MIMEDefang 3.1 on 10.11.54.7 --VwdRIpMbxphm9SWD Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Am 31.05.2023 um 21:50 hat Stefan Hajnoczi geschrieben: > Hi Kevin, > Do you want to review the thread-local blk_io_plug() patch series or > should I merge it? I haven't reviewed it in detail, but on the high level it looks good to me, and you already got reviews for the details. Acked-by: Kevin Wolf --VwdRIpMbxphm9SWD Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQIzBAEBCAAdFiEE3D3rFZqa+V09dFb+fwmycsiPL9YFAmR4WKgACgkQfwmycsiP L9bLuw/+JrEF/mSl3V9dn1UGqfl63d7JZc7Zt4RQ0VZa/Pto1DcA3itsLomClVXx pzskkdFGt/GsSibCl642QP6fWYKvg5G8JVpelmR9qNHfpwjdyRhSmtTqgfkdONX7 UlyOmlQDEs7eSHYbz6lZPbTE0AVgGzncSxJmr4jyw71nR3qEvf3uilnt5542Z1KH sDwHJat+LGEAebFW6H2DHskP5KfzohCvmB1ojAfZuRawdYEqEyxJPRyDwjl8kWbZ yuq5SDvlYNPx3D1q03vnKWNoZztm/JQNiaEknTsOYLIM1Qa35RnKguZBglefTO48 NDKUBl7Ti9JgLB8kNqkS3rAHxF73U0lZJjYDE0zwZD83npI3VF5hvvdKbW0RKym5 XzDdVKu6YOTnjBmgDAk7p52yPXFopnx72u7B73XjTii8SZuiJkxi0hZYI44Z4Nkx B0Dcf+2i1bWtCYW5qJMmpzpY3s+atj6MyGqrhcNLa4pDk0tcQl4rk8frnJHYRrfq 9Ge+4JGEpnb0lWB5OJTCVB1dsfC0StGcs3ahh21fd6XO2oogakibE9G+jUL+UEWZ +X58VyDIhrXXXMS+CI6iiWp/LTMDTH2Bcy+RQ7Wb+nQ43m2mFCBLd+vYGvPt2xSS cPFq7gxgfbLmzbLc4A71lljCn9NydX8sCpXClRQ5C8TzAzbUnX4= =NFLD -----END PGP SIGNATURE----- --VwdRIpMbxphm9SWD-- From xen-devel-bounces@lists.xenproject.org Thu Jun 01 08:50:43 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 08:50:43 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542336.846066 (Exim 4.92) (envelope-from ) id 1q4e0t-0000Y5-4m; Thu, 01 Jun 2023 08:50:31 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542336.846066; Thu, 01 Jun 2023 08:50:31 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4e0t-0000Xy-1b; Thu, 01 Jun 2023 08:50:31 +0000 Received: by outflank-mailman (input) for mailman id 542336; Thu, 01 Jun 2023 08:50:30 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4e0r-0000Xs-Sq for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 08:50:30 +0000 Received: from NAM04-DM6-obe.outbound.protection.outlook.com (mail-dm6nam04on20623.outbound.protection.outlook.com [2a01:111:f400:7e8b::623]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 59ee93f8-0059-11ee-b231-6b7b168915f2; Thu, 01 Jun 2023 10:50:26 +0200 (CEST) Received: from BN9PR03CA0934.namprd03.prod.outlook.com (2603:10b6:408:108::9) by PH0PR12MB5401.namprd12.prod.outlook.com (2603:10b6:510:d4::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.23; Thu, 1 Jun 2023 08:50:22 +0000 Received: from BN8NAM11FT088.eop-nam11.prod.protection.outlook.com (2603:10b6:408:108:cafe::41) by BN9PR03CA0934.outlook.office365.com (2603:10b6:408:108::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.23 via Frontend Transport; Thu, 1 Jun 2023 08:50:22 +0000 Received: from SATLEXMB04.amd.com (165.204.84.17) by BN8NAM11FT088.mail.protection.outlook.com (10.13.177.81) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6455.23 via Frontend Transport; Thu, 1 Jun 2023 08:50:22 +0000 Received: from SATLEXMB06.amd.com (10.181.40.147) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Thu, 1 Jun 2023 03:50:21 -0500 Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB06.amd.com (10.181.40.147) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Thu, 1 Jun 2023 03:50:21 -0500 Received: from XIR-MICHALO-L1.xilinx.com (10.180.168.240) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server id 15.1.2375.34 via Frontend Transport; Thu, 1 Jun 2023 03:50:20 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 59ee93f8-0059-11ee-b231-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=W1442Zn3ZvZ2m9U42BOmxBV8GGdblfDLYgzX/SxjJTaxp1V3w/oLY60AEcLgPGnJBPeTfNJBJ7iTdUQnr2nWdPy4up5EpV10kEscYWmUYusPPD4xloySmSdUgKOI3v/wyKA6qzBOwc3BBULrTkHszhDpyG3sdqJjpv+eMNtPVD/XzuBn9YBR+zDn1AUT8tctxXsa+j1aJWCvRG7SD9f6d76PeiLC71JjYtgboaa/TF35su2LZqiwLcdoMP2rljBdseNm1n94QYSCcAqx9u7TYsT1XLUDQTHby0SNHSoc09IcesaJObiQBxf7/Eg+9BYeM11bQV8JXVFn4bc/eTalBw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=RhhMDOjNPYL3+25tr9e14rvxZNeuEj3VcU9WF55+zWM=; b=c01EXnI4zewHLEaskLoWb2WWujbK5eQ9U1Ap6pIewUlYdIRQHv8Am6Xf0PxVra6K7JQfGuMY0CtUBBzyc0NGOp6H9KCIJtpHgMWZIISgAjGMBTbPHwdmfIPdYaoYJoIv/5ITDY1GLvCJhyGZtO5iJZvbArcBwri9eY8+uNhWwUJeFbcL4BtCuOp75Zq2MPleqGpBrtoaZLlz+fvA65dIxJ7TehLoVhEC5V98VzcnvBBMLNiZ3Pn25QvNaQzkTJM244EfREIMwcZuxXO3sWOy4Hfadg9YytENZ1JfoCgxxY3YC1lio0nFjGkVlEcgMEbhnfFORsiouiJFkz6Me7kJJg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=RhhMDOjNPYL3+25tr9e14rvxZNeuEj3VcU9WF55+zWM=; b=th7H3NyEbN8KoafaIt1kA1woPkD2BNh43tmaXPygjqcQGFAsrhFf5upiDHM6PjMflx2y66zANx4eBUs4sH9BrCnNTSsGxDhvyJ9FD+UDZ92TgmljOmRrhp0DXSHWvEdCErBRLmHq8WPH6GqxAlllmcaaOhQmXp2DCRsmHRRVOQ0= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C From: Michal Orzel To: CC: Michal Orzel , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk Subject: [PATCH] xen/arm: debug-pl011: Use 32-bit accessors for broader compatibility Date: Thu, 1 Jun 2023 10:50:01 +0200 Message-ID: <20230601085001.1782-1-michal.orzel@amd.com> X-Mailer: git-send-email 2.25.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BN8NAM11FT088:EE_|PH0PR12MB5401:EE_ X-MS-Office365-Filtering-Correlation-Id: 0242eac6-b127-4595-7079-08db627d3c0d X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: hGUabM30yQNiM9GrEJNtSRbOjVrMbG/W1m4CWoXiMbICCmeuK1YRJ3exaM9UW4hEuAM7fDmZRl+ucDhfBMCuP2YIcsdaAnLMIj6V6gkSroNp0N7i+adQSb8Sffjt3epJD1Q3qsTIDB5Zwpnyife9mAAmoL4Ma8ACKmOPG65wQM9riq6YQmNlxRbY/nsXjAsp0o6IQ0U54LYdZWJ9csj0eLOABrjQtX0z1QvDry4afVF+z0k8/7dU/QtL7TG6aHDtbIQbd/rIj0oSXdAhneKhCOcNjWauRcH6HKc4YdZfxP6BVK0OcrbYT7Lj+WPqm8J2CKD5Bu2krqTAlsUJMv2+yx1HovkanhOwDqjJ3ao4EbllX8Ykfdk28tcHfli1ux49GFU2FRkDllsVhYiTXHiSTTu0EB4xNj2knkTmgUjCFVLWk5Rz++fTcYiMWM1wk+IYGbm/Qnc+CoiKYg1DFGRtj0KI58Rz4rUZvGUBLWGTyCsSPrf22ex74hJzphw7GIHlENw+IO9npjEXTTnxNz38XJXhL9hYrLdWyeW1HjYAEhwggoIBViwJU+ulF6AzduB0TVrMO0eLwRRpyHovr6rR0dUdX0RgPA19t6wRdI/1QRt/vMUnvq2bgqSlzzKhVuUdhAWWTncY4S+QktrWT9Nkqiyj/2UBxAIrgYoRwXeb3MBHWNRdlGpaunA0bhfzwtObqm9Z48Aqh+pOHqYG0wQlsAyMbxhOX9IQP0zGVv7Rpo66zmHzm8XVwFbfOtwkK8vqy1aKVbYICy/rMqMhLNZNRg== X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(396003)(136003)(376002)(346002)(39860400002)(451199021)(46966006)(36840700001)(40470700004)(83380400001)(26005)(1076003)(336012)(426003)(41300700001)(6666004)(47076005)(186003)(36860700001)(2616005)(478600001)(40460700003)(54906003)(81166007)(4326008)(6916009)(356005)(70586007)(70206006)(40480700001)(82740400003)(316002)(82310400005)(5660300002)(8676002)(8936002)(44832011)(2906002)(86362001)(36756003)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Jun 2023 08:50:22.0536 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 0242eac6-b127-4595-7079-08db627d3c0d X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com] X-MS-Exchange-CrossTenant-AuthSource: BN8NAM11FT088.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR12MB5401 There are implementations of the PL011 that can only handle 32-bit accesses (i.e. no 16-bit or 8-bit), usually advertised by 'reg-io-width' dt property set to 4. On such UARTs, the current early printk code for arm64 does not work. To fix this issue, make all the accesses to be 32-bit by using ldr, str without a size field. This makes it possible to use early printk on such platforms, while all the other implementations should generally cope with 32-bit accesses. In case they do not, they would already fail as we explicitly use writel/readl in the runtime driver to maintain broader compatibility and to be SBSAv2 compliant. Therefore, this change makes the runtime/early handling consistent (also it matches the arm32 debug-pl011 code). Signed-off-by: Michal Orzel --- xen/arch/arm/arm64/debug-pl011.inc | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/xen/arch/arm/arm64/debug-pl011.inc b/xen/arch/arm/arm64/debug-pl011.inc index 6d60e78c8ba3..80eb8fdc1ec7 100644 --- a/xen/arch/arm/arm64/debug-pl011.inc +++ b/xen/arch/arm/arm64/debug-pl011.inc @@ -25,9 +25,9 @@ */ .macro early_uart_init xb, c mov x\c, #(7372800 / CONFIG_EARLY_UART_PL011_BAUD_RATE % 16) - strh w\c, [\xb, #FBRD] /* -> UARTFBRD (Baud divisor fraction) */ + str w\c, [\xb, #FBRD] /* -> UARTFBRD (Baud divisor fraction) */ mov x\c, #(7372800 / CONFIG_EARLY_UART_PL011_BAUD_RATE / 16) - strh w\c, [\xb, #IBRD] /* -> UARTIBRD (Baud divisor integer) */ + str w\c, [\xb, #IBRD] /* -> UARTIBRD (Baud divisor integer) */ mov x\c, #WLEN_8 /* 8n1 */ str w\c, [\xb, #LCR_H] /* -> UARTLCR_H (Line control) */ ldr x\c, =(RXE | TXE | UARTEN) @@ -41,7 +41,7 @@ */ .macro early_uart_ready xb, c 1: - ldrh w\c, [\xb, #FR] /* <- UARTFR (Flag register) */ + ldr w\c, [\xb, #FR] /* <- UARTFR (Flag register) */ tst w\c, #BUSY /* Check BUSY bit */ b.ne 1b /* Wait for the UART to be ready */ .endm @@ -52,7 +52,7 @@ * wt: register which contains the character to transmit */ .macro early_uart_transmit xb, wt - strb \wt, [\xb, #DR] /* -> UARTDR (Data Register) */ + str \wt, [\xb, #DR] /* -> UARTDR (Data Register) */ .endm /* -- 2.25.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 01 08:56:38 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 08:56:38 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542341.846076 (Exim 4.92) (envelope-from ) id 1q4e6Z-0001Ey-Vn; Thu, 01 Jun 2023 08:56:23 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542341.846076; Thu, 01 Jun 2023 08:56:23 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4e6Z-0001Er-SX; Thu, 01 Jun 2023 08:56:23 +0000 Received: by outflank-mailman (input) for mailman id 542341; Thu, 01 Jun 2023 08:56:22 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4e6Y-0001Ej-Nt for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 08:56:22 +0000 Received: from mail-wm1-x334.google.com (mail-wm1-x334.google.com [2a00:1450:4864:20::334]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 2e17836a-005a-11ee-b231-6b7b168915f2; Thu, 01 Jun 2023 10:56:21 +0200 (CEST) Received: by mail-wm1-x334.google.com with SMTP id 5b1f17b1804b1-3f6ffc2b314so14439075e9.0 for ; Thu, 01 Jun 2023 01:56:21 -0700 (PDT) Received: from [192.168.69.115] ([176.176.141.224]) by smtp.gmail.com with ESMTPSA id a7-20020a05600c224700b003f421979398sm1537847wmm.26.2023.06.01.01.56.18 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Thu, 01 Jun 2023 01:56:20 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 2e17836a-005a-11ee-b231-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1685609781; x=1688201781; h=content-transfer-encoding:in-reply-to:from:references:cc:to :content-language:subject:user-agent:mime-version:date:message-id :from:to:cc:subject:date:message-id:reply-to; bh=OPcIYzogUvkAuZPoOm75OhqrBG7H/WeIx3UuNAUp5fo=; b=FX6eJkI6/zkoli5SwaO19QQzfQhZzeBHLijCM7/sPrm4NI9OhHW9t+FcxPIBhJiY/m O/P6jVqhnrLbZmmZxN/as/m1wSc/IxtdqvZkPC9QgPdztN3nYYMffqOyqUn/BEG0VDfM P2EToh2ekvhHYUfHsXHkjCJuE6gonTAL/QwKumqXUkd+4QDYsaFqwrKOTbIHYkYlCYpl 1/WlWRKYzg71AqKvRRmIefjMRNJdnXaSrF/Mp+ysQfvqA+ZGD7clQLws9JQlFq463kwH Mokl5Sllh2jLO3Hddpx2Ug+3B0+b45xGMPOvdMV0benz0hP7oSebjDPf4FDb1FsegM2u IWqA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1685609781; x=1688201781; h=content-transfer-encoding:in-reply-to:from:references:cc:to :content-language:subject:user-agent:mime-version:date:message-id :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=OPcIYzogUvkAuZPoOm75OhqrBG7H/WeIx3UuNAUp5fo=; b=KMDaxVeYzlztPOEXoqnsGzxU3UjvR0Xx8Ob+oQch3hmj3p20wF4jAksc870YVtvWN/ yn5vOvR+UhX5vJU/k1ueFSmNW3VGP7F8SUd125eYtRox0BELPlCrBovAqpCecEiiX4eG Ttkpseeu+NIWa+n63kGbGhRHOm6WqTUot4+j66G3hURupwMMKKHwz34ll7kiu5HDgodK pda5eeAXZf1j6GvXjA5Gij9CokBzTCxumKtN1utP42gKo+D0VgKNFGpOc5HXzczTMMZv 3kBOoeZNCYeoBkx5XHF8zrJWtE0kAdxNuCpMnMtED0l5Ki/LGwX8/gZapKZutkH/ruCV 0OUg== X-Gm-Message-State: AC+VfDz4Qndlo6zubuacc+bEYapiuUWovrBmRSoK0IhNM1SGD6xdG+P4 eM9mZgCLG5ya6WeKS8Fe7hy9GA== X-Google-Smtp-Source: ACHHUZ5qrcatzjgrO8GKXy9lGrNgCmQz1mWlw+kzyIt9WRRCbvhU9sqM/XTVz/7lLNRR51FSMvcHTg== X-Received: by 2002:a05:600c:218d:b0:3f6:3486:1391 with SMTP id e13-20020a05600c218d00b003f634861391mr915286wme.13.1685609781082; Thu, 01 Jun 2023 01:56:21 -0700 (PDT) Message-ID: Date: Thu, 1 Jun 2023 10:56:17 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH v2 0/2] net: Update MemReentrancyGuard for NIC Content-Language: en-US To: Akihiko Odaki Cc: Mauro Matteo Cascella , P J P , Alexander Bulekov , Dmitry Fleytman , Beniamino Galvani , Peter Maydell , Strahinja Jankovic , Jason Wang , "Edgar E. Iglesias" , Alistair Francis , Stefan Weil , =?UTF-8?Q?C=c3=a9dric_Le_Goater?= , Andrew Jeffery , Joel Stanley , Richard Henderson , Helge Deller , Sriram Yagnaraman , Thomas Huth , Aleksandar Rikalo , Subbaraya Sundeep , Jan Kiszka , Tyrone Ting , Hao Wu , Max Filippov , Jiri Pirko , Daniel Henrique Barboza , David Gibson , Greg Kurz , Harsh Prateek Bora , Sven Schnelle , "Michael S. Tsirkin" , Stefano Stabellini , Anthony Perard , Paul Durrant , Rob Herring , Gerd Hoffmann , qemu-arm@nongnu.org, qemu-devel@nongnu.org, qemu-ppc@nongnu.org, xen-devel@lists.xenproject.org References: <20230601031859.7115-1-akihiko.odaki@daynix.com> <72ccd4c2-7c60-e015-2322-721d09a8334b@linaro.org> <233b42b2-6fbb-3882-6158-d2a82bf88be1@daynix.com> From: =?UTF-8?Q?Philippe_Mathieu-Daud=c3=a9?= In-Reply-To: <233b42b2-6fbb-3882-6158-d2a82bf88be1@daynix.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit On 1/6/23 09:41, Akihiko Odaki wrote: > On 2023/06/01 16:16, Philippe Mathieu-Daudé wrote: >> On 1/6/23 05:18, Akihiko Odaki wrote: >>> Recently MemReentrancyGuard was added to DeviceState to record that the >>> device is engaging in I/O. The network device backend needs to update it >>> when delivering a packet to a device. >>> >>> This implementation follows what bottom half does, but it does not add >>> a tracepoint for the case that the network device backend started >>> delivering a packet to a device which is already engaging in I/O. This >>> is because such reentrancy frequently happens for >>> qemu_flush_queued_packets() and is insignificant. >>> >>> This series consists of two patches. The first patch makes a bulk >>> change to >>> add a new parameter to qemu_new_nic() and does not contain behavioral >>> changes. >>> The second patch actually implements MemReentrancyGuard update. >> >> /me look at the 'net' API. >> >> So the NetReceive* handlers from NetClientInfo process the HW NIC >> data flow, independently from the CPUs. >> >> IIUC MemReentrancyGuard is supposed to protect reentrancy abuse from >> CPUs. >> >> NetReceive* handlers aren't restricted to any particular API, they >> just consume blob of data. Looking at e1000_receive_iov(), this data >> is filled into memory using the pci_dma_rw() API. pci_dma_rw() gets >> the AddressSpace to use calling pci_get_address_space(), which returns >> PCIDevice::bus_master_as. Then we use the dma_memory_rw(), followed >> by address_space_rw(). Beh, I fail to see why there is reentrancy >> checks from this NIC DMA HW path. >> >> Maybe the MemoryRegion API isn't the correct place to check for >> reentrancy abuse and we should do that at the AddressSpace level, >> keeping DMA ASes clear and only protecting CPU ASes? > > The involvement of CPU is not essential in my understanding. A typical > scenario of DMA reentrancy is like the following: > 1) The guest configures the DMA destination address register the device > has to the address of another device register. > 2) The DMA gets triggered. > 3) The device performs the DMA, writing its own register. > 4) The write causes reentrancy. > 5) The re-entered device code corrupts the device state. > > I guess 2) is done by CPU in most cases, but sometimes it happen with > another cause. In fact, the current reentrancy protection code covers > the case that bottom half handlers triggers DMA. The intention of this > series is to extend the coverage and handles the case that incoming > network traffic triggers DMA. > > The essence of DMA reentrancy is in 3). This happens when the DMA > address space contains the MMIO region of the device and there is no > involvement of CPU here. OK, thanks for the explanation. From xen-devel-bounces@lists.xenproject.org Thu Jun 01 09:04:01 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 09:04:01 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542345.846085 (Exim 4.92) (envelope-from ) id 1q4eDr-0002jX-Ox; Thu, 01 Jun 2023 09:03:55 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542345.846085; Thu, 01 Jun 2023 09:03:55 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4eDr-0002jQ-Lu; Thu, 01 Jun 2023 09:03:55 +0000 Received: by outflank-mailman (input) for mailman id 542345; Thu, 01 Jun 2023 09:03:54 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4eDq-0002jK-8p for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 09:03:54 +0000 Received: from EUR05-VI1-obe.outbound.protection.outlook.com (mail-vi1eur05on2060a.outbound.protection.outlook.com [2a01:111:f400:7d00::60a]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 3b162b7f-005b-11ee-b231-6b7b168915f2; Thu, 01 Jun 2023 11:03:53 +0200 (CEST) Received: from AS9PR06CA0434.eurprd06.prod.outlook.com (2603:10a6:20b:49e::16) by PA4PR08MB5902.eurprd08.prod.outlook.com (2603:10a6:102:e0::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.22; Thu, 1 Jun 2023 09:03:46 +0000 Received: from AM7EUR03FT043.eop-EUR03.prod.protection.outlook.com (2603:10a6:20b:49e:cafe::f2) by AS9PR06CA0434.outlook.office365.com (2603:10a6:20b:49e::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.23 via Frontend Transport; Thu, 1 Jun 2023 09:03:46 +0000 Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by AM7EUR03FT043.mail.protection.outlook.com (100.127.140.160) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.22 via Frontend Transport; Thu, 1 Jun 2023 09:03:45 +0000 Received: ("Tessian outbound 5bb4c51d5a1f:v136"); Thu, 01 Jun 2023 09:03:45 +0000 Received: from a6c6412a77dc.2 by 64aa7808-outbound-1.mta.getcheckrecipient.com id C68B641E-0577-4916-B884-3717D278DC75.1; Thu, 01 Jun 2023 09:03:39 +0000 Received: from EUR04-DB3-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id a6c6412a77dc.2 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Thu, 01 Jun 2023 09:03:39 +0000 Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15) by AS8PR08MB9071.eurprd08.prod.outlook.com (2603:10a6:20b:5c1::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6433.24; Thu, 1 Jun 2023 09:03:38 +0000 Received: from AS8PR08MB7991.eurprd08.prod.outlook.com ([fe80::2db3:aa30:7be0:10a6]) by AS8PR08MB7991.eurprd08.prod.outlook.com ([fe80::2db3:aa30:7be0:10a6%4]) with mapi id 15.20.6455.020; Thu, 1 Jun 2023 09:03:37 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 3b162b7f-005b-11ee-b231-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=s6CV/j8U+E9gMXdxA0OUc74xoZEdLbUw1tyrYOXXMWA=; b=cg+86q0zVH5gougVBt5D5EErbnwYtoGPJfxcVnTAlGU+9G2l+NLSLfv0D39R/DsnsTkAHJjq13pW6Chk+X59t1nJbt8y77wG2k8p9Um2imHb29n+Qz0g6bSg1Mu97Fgqu0OmXOxn4mhhDiWr+qbha+fy+/oCAwxB9OdGYy28ccM= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C X-CR-MTA-TID: 64aa7808 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=XSYT0buiI86MvO4LzpWH8SV8u2YrFE48tGcQoALuhe+4x0slQswrNTnscTl28PrpysmlYhptIhgW7txS8vNoUox25YGPwqyUwxdczyBzvgA68/xBKxogAOHBuEFYPxl4QaKz+C6Ubjd4U3m4/9StZaFhE8AT1uSV5zZ08cC/eQ4kEloIPmVSeaaql6Ku//4FfVAxWkb5ss4fHZd1VJTku6483kkmrhwp3czCxebZvYSKni2JivktzEx9BX3YDthb+Vl9nw6gL3ImkyySaqXsuUHSISZmcujoG9PelRl+tXUTXR+QCTBrJ175ljN2FAR2zoh5Uo6EnlcYYDN4vS3SxQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=s6CV/j8U+E9gMXdxA0OUc74xoZEdLbUw1tyrYOXXMWA=; b=Q/Boy0FPwqyxKEoTy75IZSquvAamZ0PvGcCEc1/Oh/wuZFCHEA1N+8kQWNP9etRGhH3bZcN+LA9WG3tQ5j/raFRd2PnE1VkhAq/YlMY6qTf9XCuov3KsFCYwnJcEnO6h0ahwvhTRA3hm/pBsDD/lN8WBsz3Sm2j7nBbdUkJKyQW7kD4jlMBLRFNWJNmvOa2FporeABEFIN4dputl/+AFbq4voELtJazGk/eZKqmiRNxUadBJyFxVRh13cNXR5HBaQEyAX+7FuJ9TWh7obyy7ddKYk0P0nxjGIwAEnHWYqUX/ePQdJpzJxNCkW9eHQaadtk9RfTtQeD7NkDw19edMng== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=s6CV/j8U+E9gMXdxA0OUc74xoZEdLbUw1tyrYOXXMWA=; b=cg+86q0zVH5gougVBt5D5EErbnwYtoGPJfxcVnTAlGU+9G2l+NLSLfv0D39R/DsnsTkAHJjq13pW6Chk+X59t1nJbt8y77wG2k8p9Um2imHb29n+Qz0g6bSg1Mu97Fgqu0OmXOxn4mhhDiWr+qbha+fy+/oCAwxB9OdGYy28ccM= From: Henry Wang To: Michal Orzel , "xen-devel@lists.xenproject.org" CC: Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk Subject: RE: [PATCH] xen/arm: debug-pl011: Use 32-bit accessors for broader compatibility Thread-Topic: [PATCH] xen/arm: debug-pl011: Use 32-bit accessors for broader compatibility Thread-Index: AQHZlGYy5qjjgMoLOEGy4kwMr/2+Ka91pqhg Date: Thu, 1 Jun 2023 09:03:37 +0000 Message-ID: References: <20230601085001.1782-1-michal.orzel@amd.com> In-Reply-To: <20230601085001.1782-1-michal.orzel@amd.com> Accept-Language: zh-CN, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ts-tracking-id: 3936DD0A44DDEF4FB56115EDCCFFDE79.0 x-checkrecipientchecked: true Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-traffictypediagnostic: AS8PR08MB7991:EE_|AS8PR08MB9071:EE_|AM7EUR03FT043:EE_|PA4PR08MB5902:EE_ X-MS-Office365-Filtering-Correlation-Id: 34521431-a7f8-4613-e87f-08db627f1af5 x-checkrecipientrouted: true nodisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: KlUs+c0J/+7dy/zeBgUxc6t4zD7naA46thCqZ/GFnRfh/pmOpSMMLRgop7wmgmwrexkOsK0RKSAkknNr17IfXVDjo4SywWhxkiJB5XVtFrb4O8YECEHaNJRQ+Bnuh4edwsj5R8jKK34wpLxi1Qfam2EVySPYrZofINWsMRyYOHrwyXeeydlWFvQdn+DZEYcTzecCSR2ocf5BXuOMdWNLwxq4PKtO+ydeJmUFS5UhDvETtTlo5Qe7tscw3NF1kF3v/VbNkiMrg52rHOt5HjPYlqD1kwGOIuvyuNVlMTJgeQQ7AEdt70IzBXjY5bI24C6kLQSMnXrJJLWeFmV5+5l1lb/cDDmv1+FgdJEs5P5CaYZ7DK9IQgFsu4bBcq0PPm99P6gd4q6kTWr/cX8lXlgiXMSWQWy5mCvg3JJs3w8Jh2m/X9sT8m3v1affe0dfL68wHtP5RO3cLLOI7vfJOrCXRo+04p8gntYk+GyhQzmyx2RcLkS/Braugwb+XLldDZZgXmreLqz9eFsdpqit0jnZkKLodN8GvuRu/ErfqaDnjlIB56hAhIlOlSmzmtolvPGIvw9XeePpSkIPp237DRiQ06SK3KAaRMbrCT8l2e6zNtYPCSBhbOUC0bsTVbhkhZnI X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB7991.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(396003)(136003)(346002)(366004)(39860400002)(376002)(451199021)(66476007)(66946007)(64756008)(4326008)(66556008)(478600001)(66446008)(5660300002)(8936002)(52536014)(76116006)(71200400001)(110136005)(54906003)(8676002)(38070700005)(316002)(41300700001)(7696005)(55016003)(122000001)(6506007)(83380400001)(9686003)(26005)(38100700002)(2906002)(86362001)(4744005)(186003)(33656002);DIR:OUT;SFP:1101; Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR08MB9071 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: AM7EUR03FT043.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: f5042779-019e-4949-96b6-08db627f1660 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: dMAxCiCh07dNORnouCfc+TSV9VxUqZSbFLPyE+FenWT0h7cm1oSAonMil7KujrY6DkV4I1+MkOssv/X35YdCdKcaOLNHDr0KiagfHBayuiLA+vv0cyN/6BycoYieRDVdFKB9u4oKQAhcwCaF/V2to182cYqOLAMkEsX3NiYEOXMFL7sEUcbwx2JsoY03LJE+hngBxmjUblRkdyHkc8sx3Zd39sYIiow6dmqeBdW5VHX2hAqB1hY9ZHhFbkAaxzGssCU4dBnPCAJB79g9UQcYsK8r1dwlRIgbGB8rt265xeDIdEmRFpswIaXVlx+QjD5cUrdO/qKgvE3quMkQ8QPpnf3o9kC1jjsFXeirJLHOoOOif3saTfqqa0dItO5xm7DyAEoq/3i1K/2CIzyQmtGGXX4AI88vsRW0RseHSSo3ZG5FLpctTjxw6SmyItFaiOxiPitUTAIJAXTynRg+xt6XLRMLnOcuNXxJb7CjOYs7Doy0Wmgm81u/824YS/RKcy2iEu9bcflXso3WuPCFcLxNDw3GGbvnyHkj+sSaFaa7F7eJP5FOsng3xmNmDXb1sb1Prp8e7jFaND4YkJbNxyyObbhLyYqSAJ1PxS7VQoncp7RXFEPiPzqD8uX/kQ4SgcEO3qxQUrmX8zdh/+EUIgbr/K/7/ucKFSdTdGFoyOUVr/2rKbJ7iI8Dorlm9kElqH6JuXCc+Sz/SFk0p10M7zZeBbKbROGYBr1Ob6UJnqqkH5Nb8un4cNi4e0MjFi0sdlYM X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230028)(4636009)(396003)(346002)(376002)(39860400002)(136003)(451199021)(36840700001)(40470700004)(46966006)(478600001)(107886003)(110136005)(54906003)(55016003)(7696005)(40480700001)(40460700003)(52536014)(5660300002)(336012)(8676002)(82310400005)(41300700001)(8936002)(2906002)(33656002)(36860700001)(86362001)(83380400001)(47076005)(9686003)(70206006)(6506007)(70586007)(26005)(316002)(4326008)(356005)(81166007)(186003)(82740400003);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Jun 2023 09:03:45.5124 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 34521431-a7f8-4613-e87f-08db627f1af5 X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: AM7EUR03FT043.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR08MB5902 Hi Michal, > -----Original Message----- > Subject: [PATCH] xen/arm: debug-pl011: Use 32-bit accessors for broader > compatibility >=20 > There are implementations of the PL011 that can only handle 32-bit > accesses (i.e. no 16-bit or 8-bit), usually advertised by 'reg-io-width' > dt property set to 4. On such UARTs, the current early printk code for > arm64 does not work. To fix this issue, make all the accesses to be 32-bi= t > by using ldr, str without a size field. This makes it possible to use > early printk on such platforms, while all the other implementations shoul= d > generally cope with 32-bit accesses. In case they do not, they would > already fail as we explicitly use writel/readl in the runtime driver to > maintain broader compatibility and to be SBSAv2 compliant. Therefore, thi= s > change makes the runtime/early handling consistent (also it matches the > arm32 debug-pl011 code). >=20 > Signed-off-by: Michal Orzel Reviewed-by: Henry Wang Kind regards, Henry From xen-devel-bounces@lists.xenproject.org Thu Jun 01 09:18:12 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 09:18:12 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542349.846096 (Exim 4.92) (envelope-from ) id 1q4eRR-0004Hj-01; Thu, 01 Jun 2023 09:17:57 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542349.846096; Thu, 01 Jun 2023 09:17:56 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4eRQ-0004Hc-ST; Thu, 01 Jun 2023 09:17:56 +0000 Received: by outflank-mailman (input) for mailman id 542349; Thu, 01 Jun 2023 09:17:55 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4eRO-0004HU-NP for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 09:17:55 +0000 Received: from esa6.hc3370-68.iphmx.com (esa6.hc3370-68.iphmx.com [216.71.155.175]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 2e697985-005d-11ee-b231-6b7b168915f2; Thu, 01 Jun 2023 11:17:52 +0200 (CEST) Received: from mail-dm6nam12lp2168.outbound.protection.outlook.com (HELO NAM12-DM6-obe.outbound.protection.outlook.com) ([104.47.59.168]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 01 Jun 2023 05:17:42 -0400 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) by DM4PR03MB6974.namprd03.prod.outlook.com (2603:10b6:8:41::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6433.23; Thu, 1 Jun 2023 09:17:41 +0000 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::192:6bdf:b105:64dd]) by SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::192:6bdf:b105:64dd%3]) with mapi id 15.20.6433.024; Thu, 1 Jun 2023 09:17:41 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 2e697985-005d-11ee-b231-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1685611072; h=date:from:to:cc:subject:message-id:references: content-transfer-encoding:in-reply-to:mime-version; bh=mAKXB4QuJFfeaiz5/vA/KdxQE9JPM6cp6wr6KCV8R5I=; b=BxSFosLfyKCdA0WweAaJhS+shHOzU/SSGHzaj7iNDT5S466hOZ3w+Zw9 Ip1N01wW1YVD5uEecj8YzSGkHBrjnt4A4rlSrS06IFyNwe08MTZierJ00 IasKfCQY3XxARQwXEdD1/WZ4mgXlatSlsiAPtkk9JbO2KialOnero58hE o=; X-IronPort-RemoteIP: 104.47.59.168 X-IronPort-MID: 110525702 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:gwpj3aqzWogI6My/V0Qp+I8QlV5eBmI+ZBIvgKrLsJaIsI4StFCzt garIBmGOfeDNjaheNggat+x8E0C7cODm4VnHQM+qHxjRCMRpZuZCYyVIHmrMnLJJKUvbq7FA +Y2MYCccZ9uHhcwgj/3b9ANeFEljfngqoLUUbKCYWYpA1c/Ek/NsDo788YhmIlknNOlNA2Ev NL2sqX3NUSsnjV5KQr40YrawP9UlKq04GtwUmAWP6gR5weAzyBNVvrzGInqR5fGatgMdgKFb 76rIIGRpgvx4xorA9W5pbf3GmVirmn6ZFXmZtJ+AsBOszAazsAA+v9T2Mk0MC+7vw6hjdFpo OihgLTrIesf0g8gr8xGO/VQO3kW0aSrY9YrK1Dn2SCY5xWun3cBX5yCpaz5VGEV0r8fPI1Ay RAXABEJaxuAgeWJ+quYb85sufgeN9HxJbpK7xmMzRmBZRonabbqZvyQoPN9gnI3jM0IGuvCb c0EbzYpdA7HfxBEJlYQDtQ5gfusgX78NTZfrTp5p4JuuzSVkFM3jemraYSFEjCJbZw9ckKwv GXJ8n6/GhgHHNee1SCE4jSngeqncSbTAdtKSeflqaYw6LGV7kUzBTsvZ12Um6ma1VaPYtVcD 1Ik1QN7+MDe82TuFLERRSaQonSJoxodUNp4CPAh5UeGza+8yxaUAC0IQyBMbPQitdQqXno62 1mRhdTrCDdz9rqPRhq16bO8vT60fy8PIgc/iTQsSAIE55zvpd81hxeWFNJ7Svfr3pvyBC36x C2MoG4mnbIPgMUX1qK9u1fanzaroZuPRQkwjunKYl+YAspCTNbNT+SVBZLztJ6s8K7xooG9g UU5 IronPort-HdrOrdr: A9a23:Zf6PqqN/C3dKEcBcTmKjsMiBIKoaSvp037Eqv3oBMSC9Afbo8f xG+85rqiMc6QxhJE3I/OruBEDuewK/yXcY2/hqAV7mZniahILqFvAo0WKA+UyEJ8SdzJ8/6U 46Sdk3NDSYNzET5qyWjGfYc+rIguP3i5xA7t2uqEuFIzsaEp2Ioz0JbjpyRSZNNXh7LKt8MJ Kd48pBqX6EeW4LB/7LTEXtCNKz2eHjpdbeehgBCAcg6A6SyR2VyJOSKWnr4j4uFwpVx7Es6G 7ElBG8wJ6CnbWU9j/wvlWjmqi/vrPau6x+7Qi3+7tlXgnEu0KRTqRnRrGYuzgxydvfmGrCiO O86ivIIf4DnU/sQg== X-Talos-CUID: 9a23:jSCJ02x3NWo4qeUSQ82yBgU1HsUucXva803JAGqfCVlVdaaNU0aprfY= X-Talos-MUID: 9a23:x9FT2Qt7L1NQtIuP6M2nrRFvEv5a5YuUWGNSiaQ/vMqgKxxfEmLI X-IronPort-AV: E=Sophos;i="6.00,209,1681185600"; d="scan'208";a="110525702" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=TZa1YI6bpyAitJJUWW2v49X1KhWoCIYiqJpckculC7fUa5Y4hdMe4pSNDzk5YyvxySjpjUyx4DhU7gDiI/CkjjIiEJlXiXnWFIQSf2CuulbIPNKJHPDSTIpU0d+S0sxN8ksMgLocvVAO7Grru9sk0KM0Y+haoGKGT4zHYD2a2FfK/9s8C9DKArvSCjrQh31ufwPYzhdNlXXtJGa2T3CP+Sgdlnf2xkmlnpZ19F80GdQbEdkO25KTq6ZdEaggGLbbnHjUdBElx85HObUVR+c8l/cStAVtigJleeGvmnuF0BgxWrydxtC6hogmLm+ctTzdSRqHfQq6LN3p2kyrRdeK7g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=pGL5vgFCFkEo1TBsGjhXa0fOE5fjQn/XNu5TL3fgRpw=; b=U+rgKQOI2Qg4L4wNUpflV1ZqkG0+llwRMzEqocWJkU3o5Bgk/qE4FDD8Yb0YyK4g5Qui80jODd0qJ7bgQmkqqBW1kqFUbyt9K8lp5a3cwJb4htzua6GmBZ6FzyVk9y+QNucz4ykP92n/Frhx2lFiocZwdR5Aggs57eLqPM+kHK+2YCYfF7L7W7Z+RuE6Qbqtq7hl5EMP8Rv0sORMSxwMS54NXXdETXbcATlaadZFqzoY1JbGYsBKFyT4gXvtVY5TEpDaGjCZMuI73XAhOk/l0Kiqmy8tj5xBJD5mby4QQmAvIOym2SQheJgkhtPRJj+944fiFUUG4t+skYL8I+DHNQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=pGL5vgFCFkEo1TBsGjhXa0fOE5fjQn/XNu5TL3fgRpw=; b=cTCRqWJGMAT/TUbsiuUigyCjR+jSPpVZeRQUpNwcR04GXVjMiWQNlRgSm8YPxBwo+UkmROQ0GCsE2AR4ee9dJu/uuA83A1XQAE2QMhhbzQAeuezkKIx6dJC+ajur2Kx+6UqqShX+klv1rSDnMlHEsbJ4e50RBpCgI+Q13Ut3YZQ= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Date: Thu, 1 Jun 2023 11:17:34 +0200 From: Roger Pau =?utf-8?B?TW9ubsOp?= To: Jan Beulich Cc: "xen-devel@lists.xenproject.org" , Andrew Cooper , Wei Liu Subject: Re: [PATCH 1/2] x86/vPIT: re-order functions Message-ID: References: Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: X-ClientProxiedBy: LO3P265CA0027.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:387::17) To SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|DM4PR03MB6974:EE_ X-MS-Office365-Filtering-Correlation-Id: 4f9e2460-e902-4b16-ff64-08db62810c9a X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: PUn2pqis1OXPuVLtV6ZEKiMpRVdTY5Dmp5Gylq+OKXR2IurCspaQwjncczBHd17XIWX/ezKfpSr7tIDJEhtJjZJZpFm6Y5E++sdVhSvyCGW3T9P3d0QfjvrntmyXw15speB3Jg1k2rMCGV2NnD0SH/S82NrvOZddWw5f0taqZ16nQSgsVb6xoZTmJan5/eAANokCr+Tx4jH9t8vsmyxP2ttA29Mu7keOgbJQ7cipfkNJJjGsXUnmiXfnSohrs+zOui4er3aDEBZVeYb2FQkm2hpEve0r/iZrvu2j1YH3HZR9XL5PbKZpvQivJA2edUQM8SeBKfm9h+QQ75OnPtNw2KpbKBZWmHLA24hs+ewstuyzSAhMMdD9siTJH2wapPYjeQ+e39Uq17D2P/hzkdAJVgng5RUpX7oaXrfyzUpYBHcqpWb7QozhwZTTMVxOdkZhmMb44YxLBf9gq0L1BhJdeL7/brb3gkVL3RruJo7blbX2x5JtqX4vEmul/VQo2noGEO0FPCdYNvHaE+MC7wfPbfhsOepAOBIEpxyVdt3YiVvNd7Mn7++DTbgK7EVEgpGO/nV6UgpfxoUzogSw9IOWrZrYLo2jRPpBTYwibxjuca0CSmuBwb/uK5pzacb9u4em X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(7916004)(366004)(396003)(376002)(136003)(346002)(39860400002)(451199021)(83380400001)(2906002)(4744005)(186003)(85182001)(82960400001)(38100700002)(33716001)(8676002)(8936002)(478600001)(66476007)(66556008)(5660300002)(66946007)(6916009)(4326008)(86362001)(6486002)(41300700001)(316002)(6506007)(6666004)(6512007)(9686003)(26005)(54906003)(169823001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?RVdWNWtyK1hYKzB2N3FKbS9HRjR2QWR2Z1hGZzQ4Q3NtUjZwdnkzbnV3UlZ3?= =?utf-8?B?V3haVmhSQ2VGVWNOVllURVMxY2FzWHJzcVc0dzJnSVNMdVJZRVBmenFsUTlp?= =?utf-8?B?ai9VVHRZdUhOb3c2UllEMWtVcDNFU2JvQmFsMDFoNmZsWVdCdE1pMGltTkxL?= =?utf-8?B?YUY1WUhONzJIVGpYc051eWZnN1ZQSFFrbVB6QzhqYWRjZmU5b2dBYzk2WVFk?= =?utf-8?B?ckhydzRpM1JOS0xEWkZGYitRNThDQ25odzRDdDhid1NFMDU4cC9nVVpNeFIx?= =?utf-8?B?bjh5UG9YVGdhc0ppRHFVZ1dMRjZ1SkttcE1hMlBROXlMR3YxM0lsTjhtaTUx?= =?utf-8?B?dGZGbEh3MDR2MmZnOGljZElyTC9yVHVUeGF3VVRGR2dOaWJXZXJSWGt1VmZB?= =?utf-8?B?SExlbnhKSDg1Q3JidGhvNG5udUY3MU5wc2MrZm1JcjF1cXlIZGt3aVc4Snls?= =?utf-8?B?UVoyQkp3NEpaWVNad2FCcHo3QmNPNU1Id3I0RG94M1MxUFZpdzhkQi8yeElO?= =?utf-8?B?dkl3Yi9mWUdyMHVIV0xTZDlYVFpZbHh3dHZnMUpwcGF6eUY4Wit2Zm44RExj?= =?utf-8?B?REhrL1lEREQ0QVN6UGNwVXFMUGlzczNnQklLQXZydXQ2Z1pDQVQ2R3ZpR0Jy?= =?utf-8?B?RXZXdUV4OFlvSFlFY3psQTkweURpRWVxWFV2dnptZVF4MG0yZldHQXAxSUQz?= =?utf-8?B?YUNTdVQrQkhpQlNVbFI0Q0RuSVUwVm1HdVpyQWtKTis5U0kzbC8zanpsdi9n?= =?utf-8?B?UVdCRGZ3R3pBK1JJYUNBTzVUSkREUlF3WDExSDViZG9LVGhVbXRBV3ovYkU3?= =?utf-8?B?dVF6OWZzSkhwRzFUNzRIeFFSTlkzVkJWYml2TjBaTjlGVzVBSWh5cHY0ODJT?= =?utf-8?B?dEs4ZUIwUU9wVzdjcmlic1R2NUFRb2pIR2ZxQVJMc1JPSDB6WkxzOWVQV0J3?= =?utf-8?B?UHRHT2lCZmFJZlIyRzM1SEVIR2lhZHhKWU1EbmhLcWFwdW5WMDl2ci9rUHBP?= =?utf-8?B?ZXJxSU1seUpxakNpUWdQSy9QRDZtc3BQYjEzMWVNRjVSb2grbGVvRVdGOU1D?= =?utf-8?B?L2pmcVhCWHpUUmQxVHBieXpDV2l1RUFVaG8ySk4rWVZwenlLRGJIRnFiS0Fn?= =?utf-8?B?U05QOGtSUWZZczROS25vcXd5THBOWUpWYUdqTzduS1Y2SEdXRTVsT2I4Y3Jq?= =?utf-8?B?ckM2Nk5TSUtvVCs5dUI0M2dtVHoxY2l0bVJicjNEcG9GMmFnUFFJdmx4ZlNm?= =?utf-8?B?MlBBOWRMdTRZUnlNZHU5TGlwUXJwbng2SnY0Ym9ZVGt1UXdyRXBtY0QzUmJM?= =?utf-8?B?QkJMc1JQQTBid2FQV0NlQUtDTUdMUHA0T1RERElxT25KMVVsdTRHblJnZVhm?= =?utf-8?B?U0xMOG5tNFBiZEJyQ05qMVoxVTdYVnBFUnJiUlJXaEoyczlnMWwzMis4WVFa?= =?utf-8?B?NmUwVzI1ZU0xNXNVV2tCdnUvUFdqMWJMMUJWT2ZkTk8zTEoxQjMxOThISFdh?= =?utf-8?B?MUFkM2tQamdJSThEY3VVWitwTndPVjAwWEtlZFVEYUVYcmNpbU9IdU16b2RZ?= =?utf-8?B?NlZnTzhDQ2drZXd1R3N2ZFZkbGJJUVh3eDlnN1RYSDAxSUN2MnhnR3JrYTdo?= =?utf-8?B?RkNuREoxREJ6Nk5lMS96K1hFek12NXZvSnMzV3dSWGpZZFMyNHpVTWlVR3Ju?= =?utf-8?B?OGRNMVU5NjFrYVB1cU5TZDdnbDExck1SNUVmWVI3dzZHSjBHQTM4NmxpeE5T?= =?utf-8?B?RTJCWmhLT2VxbTNJNjNYY0JFTk1lSnFaZ1VDSUcxTW9nVW9jaFRXdkdhbUEv?= =?utf-8?B?TFNIYzFwZFdSTUhMcmpnMU9EM21sVGRxdG5aYk9SbDlpZGNPU1l3S2VVNVZH?= =?utf-8?B?M1ZEOFdqS0tqajBJQVllandFMGdVNUc0bWlvejFVRTRRbEhHN0VWdjJpSGlG?= =?utf-8?B?ajVQeW9UWkZSakp2Sm1vdTRtODJFa2hXVW4xT1FaUVora2xQMFVRcFEyRzgw?= =?utf-8?B?aWZZazhjVTJNZ2NESEdMKytZSFQvVlFtNjJMUVdIUEMyL21VM0krazg2UFdw?= =?utf-8?B?NFUxcEFmNnN4MzlaUGtYMGZEZHllbWpsVHdMQ3NxOElWWU45a1VKNTB2dGpn?= =?utf-8?Q?B0fCUda5jk2tdWpE2U2T/6APS?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: ioVmy+hkpLVi3AHngaQKDi2zbggwkCzrpMPW5PVnTx8o0yq80MtUU70XMCz1UvGKcqFGgMjFyXptQUKVR1Yo+R9HaSo1XqEq6sNzXcSOu3T3BhZdfE2gJp0bDGM79qcaoxHtKcZSr1nuoPhdh26i/Vu4d5wdLp7d+L9jM0tdLb0uMvM0WQ58wlGuUMHRHNiw71Dm+5p6H6kBDObCjzCk8vP44ZgocWy/LwJSbmPc9/0le2hdH7k+Mg/rBLqlvgTsyvNtsfE2+tUUjxMuQMsnzwmKra0Sr1rDN5DAjp/3y5CYDB0jGlh/rjjnnnwdAHBKfGOTmLfQ7uStDB8xosdvsQCJqZBZHPlEL7mQvdFepOwxomqZ0DVYw3IsZFkDX1jDRr7nHmykWQIg/OQiXzt/t80Yk0XVn/MpjkJleqEu/BmJvR/Jat3UnykYD7Rgfmu591LPynuImIjeGs69tRe/sfZC6Ve2VhSK18iV3J7ERdoL8wRIm+mFvxe++dt+m9Z29liYIBD07BZxOKr/GpvP5sA68vh5WfsqYFuI5aKhUxviMGn/mDuaLCFujBZlbRFCVU7l1TeLJuNRez/935SgT1R9Pw873gU5k5QophtXQL/MnGZI69nU6R0nbxcQPKaZfxdtDsPhrYK+gy5LwhpZDRvTMFIcx15N09fHVtYvYs7PjJd+3pZjlMsnTDq1acWwA40ims9UJsdb3ddaHuy4hF14/mHgpdCtynVCx6zSaUTwLsI5+lADr3OjKbx+hmBQzVb/mAr4tkq/gCISQauhuGKGZ+xGSZs6fzOcC3O4hJyqANIdictMwsmpwKDFFTjQ X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 4f9e2460-e902-4b16-ff64-08db62810c9a X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Jun 2023 09:17:40.8184 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 9eTIJQaSfdcFrAAWaZiroRLf7MLwfHHgvfUt5A0bURO4XP3B+GM9XOVwVzRJNFMhd2d9IvZLitS9Qj77BEnoSA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR03MB6974 On Tue, May 30, 2023 at 05:30:02PM +0200, Jan Beulich wrote: > To avoid the need for a forward declaration of pit_load_count() in a > subsequent change, move it earlier in the file (along with its helper > callback). > > Signed-off-by: Jan Beulich Reviewed-by: Roger Pau Monné Just a couple of nits, which you might also noticed but decided to not fix given this is just code movement. > > --- a/xen/arch/x86/emul-i8254.c > +++ b/xen/arch/x86/emul-i8254.c > @@ -87,6 +87,57 @@ static int pit_get_count(PITState *pit, > return counter; > } > > +static void cf_check pit_time_fired(struct vcpu *v, void *priv) Seems like v could be constified? > +{ > + uint64_t *count_load_time = priv; > + TRACE_0D(TRC_HVM_EMUL_PIT_TIMER_CB); > + *count_load_time = get_guest_time(v); > +} > + > +static void pit_load_count(PITState *pit, int channel, int val) > +{ > + u32 period; uint32_t Thanks, Roger. From xen-devel-bounces@lists.xenproject.org Thu Jun 01 09:56:37 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 09:56:37 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542356.846112 (Exim 4.92) (envelope-from ) id 1q4f2a-0000I4-Uv; Thu, 01 Jun 2023 09:56:20 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542356.846112; Thu, 01 Jun 2023 09:56:20 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4f2a-0000Hx-Ru; Thu, 01 Jun 2023 09:56:20 +0000 Received: by outflank-mailman (input) for mailman id 542356; Thu, 01 Jun 2023 09:56:19 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4f2Z-0000Hh-It for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 09:56:19 +0000 Received: from EUR01-DB5-obe.outbound.protection.outlook.com (mail-db5eur01on062a.outbound.protection.outlook.com [2a01:111:f400:fe02::62a]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 8d04fa26-0062-11ee-8611-37d641c3527e; Thu, 01 Jun 2023 11:56:17 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by DBAPR04MB7287.eurprd04.prod.outlook.com (2603:10a6:10:1a4::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.23; Thu, 1 Jun 2023 09:56:15 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6433.024; Thu, 1 Jun 2023 09:56:14 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 8d04fa26-0062-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=YvkiKVf/zzmvs1gBzdSU2jG1dAY1f66KSIrilzKuAD3nziKISkllKqNTZhDPhgOqs4yQtjTFdvYIAapUs4aHy8oT4JxAspdZgSpn8qIXH0ebRrs2vBRLNpu/K4pryKbUlPi+0VGfpbo1GtsaULSgpiGgmIJBsz1jBzBLazH/hZH89iCr+uKolupVNixcrNaKJe6skntTrVCbqx4r8cEcJTENQuJlXSCBPUT5m3nMC0Wqq5nNM7Zd7z7t4ioiDuv4SBa7kxt2ca2K28MXjc/aEHLTK34MNwkg1J4aI/B7yd/TnY3V+TjzFh57UKNkalfbTlMB4F/gVnS+R7v8tRzmgA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=lPxPgAZnECpeEwSholZa3wqfIXi7TDHXi1G01LS/mwk=; b=oGsOJveUTVQdIZdOkQhqHFkusDx0EpbdHkdpMjIRRIPz3MuP2dJ3HHCJ0DUTxXgCLko9Qa1lFANjLc3SsqyS7is2487b7sKff4eEfHiN6wZPDMYuDXwTW4Bx5Z5Jc3pQg36w+sQACQz8vA21eeJpVy3n00uPBUY7OgXBTQO24J9FY0QA5AUEJka+aV79snmL/r/l3WhmuePUle2pRtylT0AJ+ZHJxWZfU8ggR7Lxy2h7hOkACWrFwXP4jIgl+RlEZW9QTOWFTYF7aeUOj8xBlmWKHgJkrFDLI3I9ibnJzj3bVa1tj2hY2H8vyFs2QGK87gQoEW4H6ZU8r88KDcWU6w== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=lPxPgAZnECpeEwSholZa3wqfIXi7TDHXi1G01LS/mwk=; b=Nuh3FdmzOIrb93fD9jJVh64iLH/x+FqHvb4Rvjs5/xLjOPKGgdJspyocSR7GhoaJuUHYjHkXLIQbwzOzvP8ZS8Bkp/q69054fvZ71+MYa/gn3+KRl7Lv42IX5UYGj+NaWLyB59NlH7cAUAEyd40gk2lZqvHIVVX/7YzzOzB78VH1eLKiVE5GHgEntz6hBp/T7yRmvwqA2sAHB/7+Q+Q8Nu2/aU8lwpGGCOYqDv3wOZHZrFuiAtX+8VEL9ZyLuacC8BIKyAx4K0qd6BydscFdl3hKKP2AYXMoQwvWZzM+HQPIT4Ws397upiqH+k+ql8O1CZpP4loJvXyrcdFSdLElWQ== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: Date: Thu, 1 Jun 2023 11:56:12 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH 1/2] x86/vPIT: re-order functions Content-Language: en-US To: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= Cc: "xen-devel@lists.xenproject.org" , Andrew Cooper , Wei Liu References: From: Jan Beulich In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: FR0P281CA0180.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:b4::10) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|DBAPR04MB7287:EE_ X-MS-Office365-Filtering-Correlation-Id: 7f3aac51-0c0e-4fe1-6d77-08db62866fad X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 2+5FkpWB3u1QaUuCFdm+Nv0S7pGEShG+B43VdXeyIuQiMSZ+s37xGYs4Oj9cLkeVa3mdeNF4LerGeuvgwy7Je3uKlCU87faZw7O50W3L9q4JsFG6ppgSDjWQjrvpNDfvaz27EXBC2DfP7mMx7De1Q7ywAv7XhXeiVuVEzSf9XjWZJImVzM8m8sw0H51U6IkTJdlFvhVeH2yXseKBvzxETjbXghuzEX5KFVfFczdvze/zOEjflunzsGcFUhl/ipi0xaWTuwm9x2CbIWpr1RAS68wu6DBj3PbAeWNX7E9BNUnktlZD9OK7/2Euii271AVamilJJijgVUVjdUsbomBH02aD1EWatO1HAL6+dIhFM8GR5hNjgqOpWBvUKImXnZkoBXM40e7z5IBKLikdNqS3CFag6ki6JloH9ETOqLcbAEgu4jduLzqXG6tmVHoSXsDz1KdMERbxQKUD8kQWKlkGUEb3aEf/3lR4FbzLPfp+5mMi6dnCMO1TVRJcSIHlfa/k19NMmfUCiRfPwWjqMXA2D07RXTFi5Wb1B5STYY+NZi0Vi56NJQMQLbOQFHzOcpQch5NJvcQxrfFHxB06eW+Rm0N+j3zOpMSiBuDQTRcjxUG2EaTsQsGhhA5KtFvp/QXW8mnkQa0t8n8hcJYEEq16ib76oQ60QRwzqEoTkbWtQDU= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(366004)(396003)(346002)(376002)(136003)(39860400002)(451199021)(31686004)(83380400001)(4326008)(36756003)(41300700001)(38100700002)(316002)(6486002)(478600001)(26005)(66476007)(6512007)(6506007)(6916009)(66946007)(66556008)(2906002)(8936002)(31696002)(8676002)(5660300002)(54906003)(2616005)(86362001)(186003)(53546011)(169823001)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?QXMzMFZHMjd1c0xMcWNKOVJONDNDTk94QjNHQ2p1MGQrajQwYzZzcmNkalVY?= =?utf-8?B?Z3FkZm1NUGFlRHp3L1ZCbExXZjQzcEtMcEJkYldEN0wyamp4TGE5Uy9SMVJZ?= =?utf-8?B?RGdQVUI2dXZqd2d5ODhRa2ZaNEZaZFMxenpWQmZJdnBseGtiMDI5eUROUzdt?= =?utf-8?B?RWtCOTcxaTVlZUVKVFZrTndFTU1rYnhaVHcxYVd0WDVoNC9HS0xzM3FuUHNT?= =?utf-8?B?bVFGN0RVWnJaZVRKa1RSYit0anRzdW12dXhqZG05ZURWV2pySzJqOStTRTh3?= =?utf-8?B?c21vTDRjeWVNcUdqNUl5RTV2TXZJRzZNNGV6ekMxbkd5RDYybERvbUh1S0hh?= =?utf-8?B?Mkxrem5YUnpJbEpXYlh1TTRhVzFzU3BTZnlpeHo1K21CdWVQVXk5ZUNnaXRI?= =?utf-8?B?ZWlNM2pLeTZiT25ZdjFQL2h4Tkl2bDRxMFlVNFhUOGtaZnFSNjQ1TlE3QVph?= =?utf-8?B?UC82MStDMGRSR1JIMHhIOGpaREJMMTNBQzhuTy9ibDFvbUNFdDFGVnp2M3p6?= =?utf-8?B?aHIzaFcxWE1jbGlOUkZLNFR4M3ZSMU9RbkttamQ4WllGOFo0aEJsSHRoMXU2?= =?utf-8?B?NlcrOWNwSDRKcW5Yc1d0Z1Z3dFdPcnRkeGJVOCtSdzdhWHVTS014REV3eEZX?= =?utf-8?B?VTlQS0NsUEZMbmRjTUprRFN5SkxCc2haUS9BK0Z5N0xvTkpVTFJiNisybDJM?= =?utf-8?B?TjhqRGZid01CUTRwL1gwOXVBM0JUbGdUT3lEalRmVFljbDFzellJZE4yM2p1?= =?utf-8?B?eGU2M3lxcms1MWcwM3BENkhWT0pHL0ZYUTdEZE55RFRLMVhPMUdiQXp1ZzVL?= =?utf-8?B?bXJpUFhZZzhlZXhSVkRhc1MrKzNNLzdNRDNwekZCZ3lnN2JDVEUrNGp6UlJq?= =?utf-8?B?STR5NTQxenN6bFRqenVRdzRubFNJWDZkMnVtaEpSMFdzMTBGd1BjUGgyQ2Y1?= =?utf-8?B?U1ZJN3ZRenU4N016Ui9DanNQTUdpRUlndURwWUZKZDdZLzRMS3o1SlE0TzRN?= =?utf-8?B?aVhtOU5FUUVCdmxNTlgrRkhuWnJtZFNDZ3Bub04vYS82U1c4R2lydjh4c2FP?= =?utf-8?B?RXNiemRzVXBlVHdjNmlqS3pGSDFZQjZ0Vkp0ZHVNSkZ6NGdOeXRiT083ak0r?= =?utf-8?B?NEdFNUtodHI2U0F1TEZqUDRqanRxSDNxdS9pb3c5U3VYTGVrVjRTNlM5RGRI?= =?utf-8?B?b25hbDZRSFJLQmI1WHRQTk1LOE5VT0R3c05zUWhTZythYXl6dlg4UXFCMmEy?= =?utf-8?B?WWZOOGtLOE43S3hSbnVqbExnOHRyVmppQ2x3ZFg3MS82Y015dHVUM3BaN3lL?= =?utf-8?B?MzdwVFBmQ1FKNDJRdUlGdlNheSs2dHZ3bW9ZMjB6ZnVybFRkaEZGM050cUg0?= =?utf-8?B?bW1vMUFCa3JsYkw1QUJmZk1BTm0rODV4MWlqU2pNalFiTDlPT05JaTZQOWlP?= =?utf-8?B?bEt1UHVUcHNQMG9QUU82c0RpekwxNkFYcmw2NkpDSVE1alJ0LzJrV201ZUEx?= =?utf-8?B?MEc2UXU1dEFtd1FwL3hyQ043bXhoWkplRGdYRXRMekVTc1lBMFFtRDhHZjBM?= =?utf-8?B?cU9CelNiVVdBUk9xL2UzTFRpVWtoaDNPdEJCajhzQWtkdGlmQmNjcmYraTBB?= =?utf-8?B?VldyenJhNVFmZ3h0MVE0a1BtMFRTVUpxaHlkWHdTTXZydE9FT21UUWNsUWRy?= =?utf-8?B?Q2FkbEw1cllhbXNFNnAzRi9LeXlhdnBwWUxML3g2cFp5MjRKR2lncFJHZDUx?= =?utf-8?B?a3hmRTZEOVFxRHRoc3NpMS9vV05US1E5RVpkR2lvaml6QnJWRHRiRkdQc2Iv?= =?utf-8?B?TTR1dkdUMnc3WndNUHE1bHZhWS9yTVUyUTVHU3lVT0gyeVpLS2JkZVlhUkNw?= =?utf-8?B?UzRWZ3Y4VXZmQkxGS1M1VDBxd1gwR3JqMlpyZXIxMEtOZzBENkwyR1hNZ3dz?= =?utf-8?B?MFVzazBLQVl5MUZVSjBBazBxcWNSMHBqQU95MFZvVU9LQXd1Nmh3RGtCY09E?= =?utf-8?B?SVF3YWo0d054N05YZGNCcUFMUDV1WFVBcmM0SlRiMHM0VW44L0JQTDBKTEIz?= =?utf-8?B?b2s3QlVTRWJnNFg3LzNWdzZoMnFKREhKMjkzQW5qQjBwYlNlRVFlRUNtTVA5?= =?utf-8?Q?uuM/DAVGxQLRtvgkzCFq9g+yF?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 7f3aac51-0c0e-4fe1-6d77-08db62866fad X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Jun 2023 09:56:14.7276 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: fHG9MKcg9+c9FT7NnH/Nnpe71cVY5/JSk5Zqvarwouq7xh4lI8fDzPcCUroseiijD7E0c7UG/1dfnL5n7W3czw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBAPR04MB7287 On 01.06.2023 11:17, Roger Pau Monné wrote: > On Tue, May 30, 2023 at 05:30:02PM +0200, Jan Beulich wrote: >> To avoid the need for a forward declaration of pit_load_count() in a >> subsequent change, move it earlier in the file (along with its helper >> callback). >> >> Signed-off-by: Jan Beulich > > Reviewed-by: Roger Pau Monné Thanks. > Just a couple of nits, which you might also noticed but decided to not > fix given this is just code movement. Indeed, I meant this to be pure code movement. Nevertheless I'd be happy to take care of style issues, if that's deemed okay in a "pure code movement" patch. However, ... >> --- a/xen/arch/x86/emul-i8254.c >> +++ b/xen/arch/x86/emul-i8254.c >> @@ -87,6 +87,57 @@ static int pit_get_count(PITState *pit, >> return counter; >> } >> >> +static void cf_check pit_time_fired(struct vcpu *v, void *priv) > > Seems like v could be constified? ... the function being used as a callback, I doubt adding const would be possible. Otoh ... >> +{ >> + uint64_t *count_load_time = priv; ... there's a blank line missing here, if I was to go for style adjustments. Jan >> + TRACE_0D(TRC_HVM_EMUL_PIT_TIMER_CB); >> + *count_load_time = get_guest_time(v); >> +} >> + >> +static void pit_load_count(PITState *pit, int channel, int val) >> +{ >> + u32 period; > > uint32_t > > Thanks, Roger. From xen-devel-bounces@lists.xenproject.org Thu Jun 01 10:17:40 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 10:17:40 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542360.846122 (Exim 4.92) (envelope-from ) id 1q4fN8-0002sx-MK; Thu, 01 Jun 2023 10:17:34 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542360.846122; Thu, 01 Jun 2023 10:17:34 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4fN8-0002sq-JX; Thu, 01 Jun 2023 10:17:34 +0000 Received: by outflank-mailman (input) for mailman id 542360; Thu, 01 Jun 2023 10:17:33 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4fN7-0002sV-CC for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 10:17:33 +0000 Received: from EUR03-AM7-obe.outbound.protection.outlook.com (mail-am7eur03on20604.outbound.protection.outlook.com [2a01:111:f400:7eaf::604]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 8373a880-0065-11ee-8611-37d641c3527e; Thu, 01 Jun 2023 12:17:29 +0200 (CEST) Received: from AS9PR04CA0049.eurprd04.prod.outlook.com (2603:10a6:20b:46a::34) by PAXPR08MB6734.eurprd08.prod.outlook.com (2603:10a6:102:13c::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.23; Thu, 1 Jun 2023 10:17:26 +0000 Received: from AM7EUR03FT040.eop-EUR03.prod.protection.outlook.com (2603:10a6:20b:46a:cafe::e) by AS9PR04CA0049.outlook.office365.com (2603:10a6:20b:46a::34) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.23 via Frontend Transport; Thu, 1 Jun 2023 10:17:26 +0000 Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by AM7EUR03FT040.mail.protection.outlook.com (100.127.140.128) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.23 via Frontend Transport; Thu, 1 Jun 2023 10:17:26 +0000 Received: ("Tessian outbound 3570909035da:v136"); Thu, 01 Jun 2023 10:17:26 +0000 Received: from d8e7fbe355c7.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 908E6320-9375-4E14-9173-2472E9284174.1; Thu, 01 Jun 2023 10:17:15 +0000 Received: from EUR02-VI1-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id d8e7fbe355c7.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Thu, 01 Jun 2023 10:17:15 +0000 Received: from AM6PR08MB3784.eurprd08.prod.outlook.com (2603:10a6:20b:85::25) by GV2PR08MB8485.eurprd08.prod.outlook.com (2603:10a6:150:c3::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6433.24; Thu, 1 Jun 2023 10:17:12 +0000 Received: from AM6PR08MB3784.eurprd08.prod.outlook.com ([fe80::5e17:39a6:eec7:c482]) by AM6PR08MB3784.eurprd08.prod.outlook.com ([fe80::5e17:39a6:eec7:c482%4]) with mapi id 15.20.6433.024; Thu, 1 Jun 2023 10:17:12 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 8373a880-0065-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=xkyDZWZ31nZrITU7d2xuGBLuuwf7xzfRD3gl/Prd20k=; b=qukPlmRaCyxFiK+jUhoN/TyBLiRpeAtsX9HoAo+ZIz/SCM87QlCYOJ3Lks+vwiqPBHazlRgFcHoNN9Raq4Dk+nqbIdi+Y20X3hPdXm7hCaf+RLg7qtjgF2RdLURk7HPASxRBexR6719GXS0UumdKLtCpa2yKAeQxCQzJ/VfTO5k= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C X-CheckRecipientChecked: true X-CR-MTA-CID: 53e29a2ac1a8a48f X-CR-MTA-TID: 64aa7808 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Q/mce57q0rHtxI7EH6HzsyckOv+mxhu1zHJlBBA8YcdMEOmatsI565fRLIegBgZiWZlJ/LQMfKTVaFAkpA/6PBMF/O0+iQsjxk93RRlWIuR6oZnw1RIM/D9ZcrgsxYnGKFJw3Ju3FXyAUc6zTNVI7h/s9Qqkv+1GRjnpNnbNlM53Pj0otfI79d5R6tDZEEOGvtruW5msCoF2Qms4NUjuC2TzIZiw9o7R+h0pwJFUUSVkRV9l/AguA6/LOC6sMFY8Vvff+gkTrzr62hCloNphvXka0rCO56yfHgJYZf1Bo5mnqHCQolIMjySpatPdBhsGWQjaRpNQLX+Uz84n8CkoYw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=xkyDZWZ31nZrITU7d2xuGBLuuwf7xzfRD3gl/Prd20k=; b=c89LGdjcGnPcUYiK1n6kWU9+MKuPSSkBg+7H0Sis5bPqsd/4f7Pmctwn6f0DUY2/OZ4IVJN5ATp3QVBf0MpobPSXRGR5IQ3SQ3Kp5UI8dpp0zr374cWiWwZTl7B5ktc42s9wJ9ryYWDLzff/ChNUjlaT1BvJf/rtHC3c6kXeb/kLRuLjRt2my1OE8hAa3F84n/S3i1iFjJeZ4v9Wa7CYJkIeUxnbwrTRnKbhjLy8QpWZ6jGsh85w4bSAQaInLZ/cYkIpgul28gcETAy4pxGVgFwnEwX4Ny8bnw50ZyJ3/7Ei+XinIBpEkNgwUvkYut+vqn1aqx2DUc2xPNNKdmkNAA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=xkyDZWZ31nZrITU7d2xuGBLuuwf7xzfRD3gl/Prd20k=; b=qukPlmRaCyxFiK+jUhoN/TyBLiRpeAtsX9HoAo+ZIz/SCM87QlCYOJ3Lks+vwiqPBHazlRgFcHoNN9Raq4Dk+nqbIdi+Y20X3hPdXm7hCaf+RLg7qtjgF2RdLURk7HPASxRBexR6719GXS0UumdKLtCpa2yKAeQxCQzJ/VfTO5k= From: Bertrand Marquis To: Luca Fancellu CC: Xen-devel , Wei Chen , Stefano Stabellini , Julien Grall , Volodymyr Babchuk Subject: Re: [PATCH v8 05/12] arm/sve: save/restore SVE context switch Thread-Topic: [PATCH v8 05/12] arm/sve: save/restore SVE context switch Thread-Index: AQHZk5D1jJiTqe/exUWY7qvkOxvTtq91vUaA Date: Thu, 1 Jun 2023 10:17:11 +0000 Message-ID: References: <20230531072413.868673-1-luca.fancellu@arm.com> <20230531072413.868673-6-luca.fancellu@arm.com> In-Reply-To: <20230531072413.868673-6-luca.fancellu@arm.com> Accept-Language: en-GB, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-mailer: Apple Mail (2.3731.600.7) Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-traffictypediagnostic: AM6PR08MB3784:EE_|GV2PR08MB8485:EE_|AM7EUR03FT040:EE_|PAXPR08MB6734:EE_ X-MS-Office365-Filtering-Correlation-Id: fec158ef-e194-44a7-dc42-08db628965f7 x-checkrecipientrouted: true nodisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: SB69FafGnBxNrUYxAXVCbrwD8wPztyZfr3EWrQoqIUySr70gT40OYPbNboN1jIdhCiVL7/+LntXcp7cULe1oiOeaZlznjJgYyzGgk3VjsHVQu2lg/eHbD0Q6SIBd+J9sbGNheJI2jnfTR3Q4dKtCkDMjXg2x90a8Vy9bT8u4iZOBZsMK2BdRv9Hd95oza89zXumich8eQOeknBIpfNW56Stoa8YgFO13PyoZS7TGAA2oVsF1s9EFQvUGNYIVauAEh/eM/kZzyO0MZ7Hw9jToroSBjo0tLWE2XxK0BO4QHRSY8HcpBPJ7pfyhXJRlcPWnIXOB+xzBE+ducLbI3rYFgvRoVFEWPnAd+3TlIwaOc7PbvBt3IuZg8iEI699nY4Eu7l5TnshMYduwOQEHipUwi1uYLVEpkhdqtAV8SZSFTxb0sD1YdlAycweRiGUICd7Fdgx9yq3l2zzB2SGTjfNLmHK31ef2FBefohnLffOz1TVlypqHvN0tU67uTVUAt1ohN0gf6B9ZNiaEb9j9TunW4+b6C97ZxvPiqhrH1kZoUgiV1fz0jrqqySAQUlyNB0n0imeFS3c56Cg3TjT3OKqrp+P+U+ui9eRpSD7Mf6wqje3HIi7vR9ifx5VBfgDpQvplLNO29ol2WSXxC95JlrdncQ== X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM6PR08MB3784.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(396003)(136003)(39860400002)(366004)(376002)(346002)(451199021)(66556008)(5660300002)(91956017)(66946007)(41300700001)(66476007)(66446008)(64756008)(76116006)(6862004)(8936002)(37006003)(8676002)(54906003)(478600001)(6506007)(186003)(6512007)(6486002)(316002)(4326008)(6636002)(71200400001)(53546011)(26005)(2616005)(30864003)(2906002)(83380400001)(122000001)(38070700005)(86362001)(33656002)(38100700002)(36756003)(45980500001)(579004);DIR:OUT;SFP:1101; Content-Type: text/plain; charset="us-ascii" Content-ID: <3D8A54C6AE24C94382408B81E01B3B7F@eurprd08.prod.outlook.com> Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: GV2PR08MB8485 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: AM7EUR03FT040.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: 2a33dd33-dd5d-4c23-b789-08db62895d49 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: rA55XiTuc5kV5NCtyXYMUy7A64RB9ytReW10ZPgBlUbVWqlZMH5lMSizsce2lW+Tlaiklsv4uVDHcIVxfAu4KRWa3BQx2kbN0yHPxffBH981eADD3PnpUjXeSD5t1rzeT1h8C6syCPgu7y8yYxs5YFN/2giMlAnvq1C4Kr5ZD4uomE05v2oiZpBp6FOe2BKJKUwLqZVsbSXckX2xENwM6R9bjN4glRyV9/rmIzgMrwXlyA4f5vdxzfK54iG7ov00H3cEBo8o3IPGCzQP41PMx1kDuARJOQdDQLYDTD8ybroM/5Ix140XNxRzixK/WO5RXVCcSBsloFtL5K44UtBq6EFb4k6TpnDAd6NFqjsDiOHLroO14NM/lAX/FFHm21j95yGFTlhu8gLwy5NaGUsjD3c4swhjhTPA8ih/qZR/2nRr0kv+3GqvaPwIqD4CJgud18+nw/6SoMluW1xiZGyDYuk1ktGM8y/xiqg7wA/0S8ywQz5AHAD3kWelj3Cwl3qj5ePYfhyRttxMR7mgxGB68HdYgoAiX7jatllMbN/5DDmIJJaeL0mHVy7OUDCtmGkK2qIRNGuYM78AyvbZt+00fwKObUkRAJKqyvO37IwgtYZ+c90ozRAETpR+1Y5uhhPltecD9mVuXw8OgGAXDH5vSjyhAklU2c3ajGoIV2yeG55r2SMAVKPl4D49+2zW4us8pUc+jFaRgke+zk0uE6pIz2hWpOLgWhj39lAHcR5wJmc= X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230028)(4636009)(346002)(376002)(396003)(136003)(39860400002)(451199021)(36840700001)(46966006)(40470700004)(83380400001)(107886003)(6512007)(26005)(6506007)(53546011)(336012)(41300700001)(47076005)(186003)(6486002)(36860700001)(2616005)(478600001)(40460700003)(54906003)(37006003)(81166007)(6636002)(356005)(4326008)(70206006)(70586007)(40480700001)(82740400003)(82310400005)(316002)(5660300002)(6862004)(8676002)(8936002)(2906002)(30864003)(33656002)(86362001)(36756003);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Jun 2023 10:17:26.3060 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: fec158ef-e194-44a7-dc42-08db628965f7 X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: AM7EUR03FT040.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR08MB6734 Hi Luca, > On 31 May 2023, at 09:24, Luca Fancellu wrote: >=20 > Save/restore context switch for SVE, allocate memory to contain > the Z0-31 registers whose length is maximum 2048 bits each and > FFR who can be maximum 256 bits, the allocated memory depends on > how many bits is the vector length for the domain and how many bits > are supported by the platform. >=20 > Save P0-15 whose length is maximum 256 bits each, in this case the > memory used is from the fpregs field in struct vfp_state, > because V0-31 are part of Z0-31 and this space would have been > unused for SVE domain otherwise. >=20 > Create zcr_el{1,2} fields in arch_vcpu, initialise zcr_el2 on vcpu > creation given the requested vector length and restore it on > context switch, save/restore ZCR_EL1 value as well. >=20 > List import macros from Linux in README.LinuxPrimitives. >=20 > Signed-off-by: Luca Fancellu Reviewed-by: Bertrand Marquis Cheers Bertrand > --- > Changes from v7: > - Fixed comments for sve_context_init and sve_context_free, > protect arch.vfp.sve_zreg_ctx_end, arch.zcr_el1, arch.zcr_el2 > with ifdefs. (Julien) > - Given the changes, dropped Bertrand's R-by > Changes from v6: > - Add comment for explain why sve_save/sve_load are different from > Linux, add macros in xen/arch/arm/README.LinuxPrimitives (Julien) > - Add comments in sve_context_init and sve_context_free, handle the > case where sve_zreg_ctx_end is NULL, move setting of v->arch.zcr_el2 > in sve_context_init (Julien) > - remove stubs for sve_context_* and sve_save_* and rely on compiler > DCE (Jan) > - Add comments for sve_save_ctx/sve_load_ctx (Julien) > Changes from v5: > - use XFREE instead of xfree, keep the headers (Julien) > - Avoid math computation for every save/restore, store the computation > in struct vfp_state once (Bertrand) > - protect access to v->domain->arch.sve_vl inside arch_vcpu_create now > that sve_vl is available only on arm64 > Changes from v4: > - No changes > Changes from v3: > - don't use fixed len types when not needed (Jan) > - now VL is an encoded value, decode it before using. > Changes from v2: > - No changes > Changes from v1: > - No changes > Changes from RFC: > - Moved zcr_el2 field introduction in this patch, restore its > content inside sve_restore_state function. (Julien) > --- > xen/arch/arm/README.LinuxPrimitives | 4 +- > xen/arch/arm/arm64/sve-asm.S | 147 +++++++++++++++++++++++ > xen/arch/arm/arm64/sve.c | 91 ++++++++++++++ > xen/arch/arm/arm64/vfp.c | 79 ++++++------ > xen/arch/arm/domain.c | 6 + > xen/arch/arm/include/asm/arm64/sve.h | 4 + > xen/arch/arm/include/asm/arm64/sysregs.h | 3 + > xen/arch/arm/include/asm/arm64/vfp.h | 16 +++ > xen/arch/arm/include/asm/domain.h | 5 + > 9 files changed, 320 insertions(+), 35 deletions(-) >=20 > diff --git a/xen/arch/arm/README.LinuxPrimitives b/xen/arch/arm/README.Li= nuxPrimitives > index 76c8df29e416..301c0271bbe4 100644 > --- a/xen/arch/arm/README.LinuxPrimitives > +++ b/xen/arch/arm/README.LinuxPrimitives > @@ -69,7 +69,9 @@ SVE assembly macro: last sync @ v6.3.0 (last commit: 45= 7391b03803) > linux/arch/arm64/include/asm/fpsimdmacros.h xen/arch/arm/include/asm/ar= m64/sve-asm.S >=20 > The following macros were taken from Linux: > - _check_general_reg, _check_num, _sve_rdvl > + _check_general_reg, _check_num, _sve_rdvl, __for, _for, _sve_check_z= reg, > + _sve_check_preg, _sve_str_v, _sve_ldr_v, _sve_str_p, _sve_ldr_p, _sv= e_rdffr, > + _sve_wrffr >=20 > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D > arm32 > diff --git a/xen/arch/arm/arm64/sve-asm.S b/xen/arch/arm/arm64/sve-asm.S > index 4d1549344733..59dbefbbb252 100644 > --- a/xen/arch/arm/arm64/sve-asm.S > +++ b/xen/arch/arm/arm64/sve-asm.S > @@ -17,6 +17,18 @@ > .endif > .endm >=20 > +.macro _sve_check_zreg znr > + .if (\znr) < 0 || (\znr) > 31 > + .error "Bad Scalable Vector Extension vector register number \zn= r." > + .endif > +.endm > + > +.macro _sve_check_preg pnr > + .if (\pnr) < 0 || (\pnr) > 15 > + .error "Bad Scalable Vector Extension predicate register number = \pnr." > + .endif > +.endm > + > .macro _check_num n, min, max > .if (\n) < (\min) || (\n) > (\max) > .error "Number \n out of range [\min,\max]" > @@ -26,6 +38,54 @@ > /* SVE instruction encodings for non-SVE-capable assemblers */ > /* (pre binutils 2.28, all kernel capable clang versions support SVE) */ >=20 > +/* STR (vector): STR Z\nz, [X\nxbase, #\offset, MUL VL] */ > +.macro _sve_str_v nz, nxbase, offset=3D0 > + _sve_check_zreg \nz > + _check_general_reg \nxbase > + _check_num (\offset), -0x100, 0xff > + .inst 0xe5804000 \ > + | (\nz) \ > + | ((\nxbase) << 5) \ > + | (((\offset) & 7) << 10) \ > + | (((\offset) & 0x1f8) << 13) > +.endm > + > +/* LDR (vector): LDR Z\nz, [X\nxbase, #\offset, MUL VL] */ > +.macro _sve_ldr_v nz, nxbase, offset=3D0 > + _sve_check_zreg \nz > + _check_general_reg \nxbase > + _check_num (\offset), -0x100, 0xff > + .inst 0x85804000 \ > + | (\nz) \ > + | ((\nxbase) << 5) \ > + | (((\offset) & 7) << 10) \ > + | (((\offset) & 0x1f8) << 13) > +.endm > + > +/* STR (predicate): STR P\np, [X\nxbase, #\offset, MUL VL] */ > +.macro _sve_str_p np, nxbase, offset=3D0 > + _sve_check_preg \np > + _check_general_reg \nxbase > + _check_num (\offset), -0x100, 0xff > + .inst 0xe5800000 \ > + | (\np) \ > + | ((\nxbase) << 5) \ > + | (((\offset) & 7) << 10) \ > + | (((\offset) & 0x1f8) << 13) > +.endm > + > +/* LDR (predicate): LDR P\np, [X\nxbase, #\offset, MUL VL] */ > +.macro _sve_ldr_p np, nxbase, offset=3D0 > + _sve_check_preg \np > + _check_general_reg \nxbase > + _check_num (\offset), -0x100, 0xff > + .inst 0x85800000 \ > + | (\np) \ > + | ((\nxbase) << 5) \ > + | (((\offset) & 7) << 10) \ > + | (((\offset) & 0x1f8) << 13) > +.endm > + > /* RDVL X\nx, #\imm */ > .macro _sve_rdvl nx, imm > _check_general_reg \nx > @@ -35,11 +95,98 @@ > | (((\imm) & 0x3f) << 5) > .endm >=20 > +/* RDFFR (unpredicated): RDFFR P\np.B */ > +.macro _sve_rdffr np > + _sve_check_preg \np > + .inst 0x2519f000 \ > + | (\np) > +.endm > + > +/* WRFFR P\np.B */ > +.macro _sve_wrffr np > + _sve_check_preg \np > + .inst 0x25289000 \ > + | ((\np) << 5) > +.endm > + > +.macro __for from:req, to:req > + .if (\from) =3D=3D (\to) > + _for__body %\from > + .else > + __for %\from, %((\from) + ((\to) - (\from)) / 2) > + __for %((\from) + ((\to) - (\from)) / 2 + 1), %\to > + .endif > +.endm > + > +.macro _for var:req, from:req, to:req, insn:vararg > + .macro _for__body \var:req > + .noaltmacro > + \insn > + .altmacro > + .endm > + > + .altmacro > + __for \from, \to > + .noaltmacro > + > + .purgem _for__body > +.endm > + > +/* > + * sve_save and sve_load are different from the Linux version because th= e > + * buffers to save the context are different from Xen and for example Li= nux > + * is using this macro to save/restore also fpsr and fpcr while we do it= in C > + */ > + > +.macro sve_save nxzffrctx, nxpctx, save_ffr > + _for n, 0, 31, _sve_str_v \n, \nxzffrctx, \n - 32 > + _for n, 0, 15, _sve_str_p \n, \nxpctx, \n > + cbz \save_ffr, 1f > + _sve_rdffr 0 > + _sve_str_p 0, \nxzffrctx > + _sve_ldr_p 0, \nxpctx > + b 2f > +1: > + str xzr, [x\nxzffrctx] // Zero out FFR > +2: > +.endm > + > +.macro sve_load nxzffrctx, nxpctx, restore_ffr > + _for n, 0, 31, _sve_ldr_v \n, \nxzffrctx, \n - 32 > + cbz \restore_ffr, 1f > + _sve_ldr_p 0, \nxzffrctx > + _sve_wrffr 0 > +1: > + _for n, 0, 15, _sve_ldr_p \n, \nxpctx, \n > +.endm > + > /* Gets the current vector register size in bytes */ > GLOBAL(sve_get_hw_vl) > _sve_rdvl 0, 1 > ret >=20 > +/* > + * Save the SVE context > + * > + * x0 - pointer to buffer for Z0-31 + FFR > + * x1 - pointer to buffer for P0-15 > + * x2 - Save FFR if non-zero > + */ > +GLOBAL(sve_save_ctx) > + sve_save 0, 1, x2 > + ret > + > +/* > + * Load the SVE context > + * > + * x0 - pointer to buffer for Z0-31 + FFR > + * x1 - pointer to buffer for P0-15 > + * x2 - Restore FFR if non-zero > + */ > +GLOBAL(sve_load_ctx) > + sve_load 0, 1, x2 > + ret > + > /* > * Local variables: > * mode: ASM > diff --git a/xen/arch/arm/arm64/sve.c b/xen/arch/arm/arm64/sve.c > index a9144e48ef6b..56d8f27ea26a 100644 > --- a/xen/arch/arm/arm64/sve.c > +++ b/xen/arch/arm/arm64/sve.c > @@ -5,6 +5,7 @@ > * Copyright (C) 2022 ARM Ltd. > */ >=20 > +#include > #include > #include > #include > @@ -14,6 +15,25 @@ >=20 > extern unsigned int sve_get_hw_vl(void); >=20 > +/* > + * Save the SVE context > + * > + * sve_ctx - pointer to buffer for Z0-31 + FFR > + * pregs - pointer to buffer for P0-15 > + * save_ffr - Save FFR if non-zero > + */ > +extern void sve_save_ctx(uint64_t *sve_ctx, uint64_t *pregs, int save_ff= r); > + > +/* > + * Load the SVE context > + * > + * sve_ctx - pointer to buffer for Z0-31 + FFR > + * pregs - pointer to buffer for P0-15 > + * restore_ffr - Restore FFR if non-zero > + */ > +extern void sve_load_ctx(uint64_t const *sve_ctx, uint64_t const *pregs, > + int restore_ffr); > + > /* Takes a vector length in bits and returns the ZCR_ELx encoding */ > static inline register_t vl_to_zcr(unsigned int vl) > { > @@ -21,6 +41,21 @@ static inline register_t vl_to_zcr(unsigned int vl) > return ((vl / SVE_VL_MULTIPLE_VAL) - 1U) & ZCR_ELx_LEN_MASK; > } >=20 > +static inline unsigned int sve_zreg_ctx_size(unsigned int vl) > +{ > + /* > + * Z0-31 registers size in bytes is computed from VL that is in bits= , so VL > + * in bytes is VL/8. > + */ > + return (vl / 8U) * 32U; > +} > + > +static inline unsigned int sve_ffrreg_ctx_size(unsigned int vl) > +{ > + /* FFR register size is VL/8, which is in bytes (VL/8)/8 */ > + return (vl / 64U); > +} > + > register_t compute_max_zcr(void) > { > register_t cptr_bits =3D get_default_cptr_flags(); > @@ -61,6 +96,62 @@ unsigned int get_sys_vl_len(void) > SVE_VL_MULTIPLE_VAL; > } >=20 > +int sve_context_init(struct vcpu *v) > +{ > + unsigned int sve_vl_bits =3D sve_decode_vl(v->domain->arch.sve_vl); > + uint64_t *ctx =3D _xzalloc(sve_zreg_ctx_size(sve_vl_bits) + > + sve_ffrreg_ctx_size(sve_vl_bits), > + L1_CACHE_BYTES); > + > + if ( !ctx ) > + return -ENOMEM; > + > + /* > + * Points to the end of Z0-Z31 memory, just before FFR memory, to be= kept in > + * sync with sve_context_free(). > + */ > + v->arch.vfp.sve_zreg_ctx_end =3D ctx + > + (sve_zreg_ctx_size(sve_vl_bits) / sizeof(uint64_t)); > + > + v->arch.zcr_el2 =3D vl_to_zcr(sve_vl_bits); > + > + return 0; > +} > + > +void sve_context_free(struct vcpu *v) > +{ > + unsigned int sve_vl_bits; > + > + if ( v->arch.vfp.sve_zreg_ctx_end ) > + return; > + > + sve_vl_bits =3D sve_decode_vl(v->domain->arch.sve_vl); > + > + /* > + * Currenly points to the end of Z0-Z31 memory which is not the star= t of > + * the buffer. To be kept in sync with the sve_context_init(). > + */ > + v->arch.vfp.sve_zreg_ctx_end -=3D > + (sve_zreg_ctx_size(sve_vl_bits) / sizeof(uint64_t)); > + > + XFREE(v->arch.vfp.sve_zreg_ctx_end); > +} > + > +void sve_save_state(struct vcpu *v) > +{ > + v->arch.zcr_el1 =3D READ_SYSREG(ZCR_EL1); > + > + sve_save_ctx(v->arch.vfp.sve_zreg_ctx_end, v->arch.vfp.fpregs, 1); > +} > + > +void sve_restore_state(struct vcpu *v) > +{ > + WRITE_SYSREG(v->arch.zcr_el1, ZCR_EL1); > + WRITE_SYSREG(v->arch.zcr_el2, ZCR_EL2); > + > + sve_load_ctx(v->arch.vfp.sve_zreg_ctx_end, v->arch.vfp.fpregs, 1); > +} > + > /* > * Local variables: > * mode: C > diff --git a/xen/arch/arm/arm64/vfp.c b/xen/arch/arm/arm64/vfp.c > index 47885e76baae..2d0d7c2e6ddb 100644 > --- a/xen/arch/arm/arm64/vfp.c > +++ b/xen/arch/arm/arm64/vfp.c > @@ -2,29 +2,35 @@ > #include > #include > #include > +#include >=20 > void vfp_save_state(struct vcpu *v) > { > if ( !cpu_has_fp ) > return; >=20 > - asm volatile("stp q0, q1, [%1, #16 * 0]\n\t" > - "stp q2, q3, [%1, #16 * 2]\n\t" > - "stp q4, q5, [%1, #16 * 4]\n\t" > - "stp q6, q7, [%1, #16 * 6]\n\t" > - "stp q8, q9, [%1, #16 * 8]\n\t" > - "stp q10, q11, [%1, #16 * 10]\n\t" > - "stp q12, q13, [%1, #16 * 12]\n\t" > - "stp q14, q15, [%1, #16 * 14]\n\t" > - "stp q16, q17, [%1, #16 * 16]\n\t" > - "stp q18, q19, [%1, #16 * 18]\n\t" > - "stp q20, q21, [%1, #16 * 20]\n\t" > - "stp q22, q23, [%1, #16 * 22]\n\t" > - "stp q24, q25, [%1, #16 * 24]\n\t" > - "stp q26, q27, [%1, #16 * 26]\n\t" > - "stp q28, q29, [%1, #16 * 28]\n\t" > - "stp q30, q31, [%1, #16 * 30]\n\t" > - : "=3DQ" (*v->arch.vfp.fpregs) : "r" (v->arch.vfp.fpreg= s)); > + if ( is_sve_domain(v->domain) ) > + sve_save_state(v); > + else > + { > + asm volatile("stp q0, q1, [%1, #16 * 0]\n\t" > + "stp q2, q3, [%1, #16 * 2]\n\t" > + "stp q4, q5, [%1, #16 * 4]\n\t" > + "stp q6, q7, [%1, #16 * 6]\n\t" > + "stp q8, q9, [%1, #16 * 8]\n\t" > + "stp q10, q11, [%1, #16 * 10]\n\t" > + "stp q12, q13, [%1, #16 * 12]\n\t" > + "stp q14, q15, [%1, #16 * 14]\n\t" > + "stp q16, q17, [%1, #16 * 16]\n\t" > + "stp q18, q19, [%1, #16 * 18]\n\t" > + "stp q20, q21, [%1, #16 * 20]\n\t" > + "stp q22, q23, [%1, #16 * 22]\n\t" > + "stp q24, q25, [%1, #16 * 24]\n\t" > + "stp q26, q27, [%1, #16 * 26]\n\t" > + "stp q28, q29, [%1, #16 * 28]\n\t" > + "stp q30, q31, [%1, #16 * 30]\n\t" > + : "=3DQ" (*v->arch.vfp.fpregs) : "r" (v->arch.vfp.f= pregs)); > + } >=20 > v->arch.vfp.fpsr =3D READ_SYSREG(FPSR); > v->arch.vfp.fpcr =3D READ_SYSREG(FPCR); > @@ -37,23 +43,28 @@ void vfp_restore_state(struct vcpu *v) > if ( !cpu_has_fp ) > return; >=20 > - asm volatile("ldp q0, q1, [%1, #16 * 0]\n\t" > - "ldp q2, q3, [%1, #16 * 2]\n\t" > - "ldp q4, q5, [%1, #16 * 4]\n\t" > - "ldp q6, q7, [%1, #16 * 6]\n\t" > - "ldp q8, q9, [%1, #16 * 8]\n\t" > - "ldp q10, q11, [%1, #16 * 10]\n\t" > - "ldp q12, q13, [%1, #16 * 12]\n\t" > - "ldp q14, q15, [%1, #16 * 14]\n\t" > - "ldp q16, q17, [%1, #16 * 16]\n\t" > - "ldp q18, q19, [%1, #16 * 18]\n\t" > - "ldp q20, q21, [%1, #16 * 20]\n\t" > - "ldp q22, q23, [%1, #16 * 22]\n\t" > - "ldp q24, q25, [%1, #16 * 24]\n\t" > - "ldp q26, q27, [%1, #16 * 26]\n\t" > - "ldp q28, q29, [%1, #16 * 28]\n\t" > - "ldp q30, q31, [%1, #16 * 30]\n\t" > - : : "Q" (*v->arch.vfp.fpregs), "r" (v->arch.vfp.fpregs)= ); > + if ( is_sve_domain(v->domain) ) > + sve_restore_state(v); > + else > + { > + asm volatile("ldp q0, q1, [%1, #16 * 0]\n\t" > + "ldp q2, q3, [%1, #16 * 2]\n\t" > + "ldp q4, q5, [%1, #16 * 4]\n\t" > + "ldp q6, q7, [%1, #16 * 6]\n\t" > + "ldp q8, q9, [%1, #16 * 8]\n\t" > + "ldp q10, q11, [%1, #16 * 10]\n\t" > + "ldp q12, q13, [%1, #16 * 12]\n\t" > + "ldp q14, q15, [%1, #16 * 14]\n\t" > + "ldp q16, q17, [%1, #16 * 16]\n\t" > + "ldp q18, q19, [%1, #16 * 18]\n\t" > + "ldp q20, q21, [%1, #16 * 20]\n\t" > + "ldp q22, q23, [%1, #16 * 22]\n\t" > + "ldp q24, q25, [%1, #16 * 24]\n\t" > + "ldp q26, q27, [%1, #16 * 26]\n\t" > + "ldp q28, q29, [%1, #16 * 28]\n\t" > + "ldp q30, q31, [%1, #16 * 30]\n\t" > + : : "Q" (*v->arch.vfp.fpregs), "r" (v->arch.vfp.fpr= egs)); > + } >=20 > WRITE_SYSREG(v->arch.vfp.fpsr, FPSR); > WRITE_SYSREG(v->arch.vfp.fpcr, FPCR); > diff --git a/xen/arch/arm/domain.c b/xen/arch/arm/domain.c > index 6c22551b0ed2..add9929b7943 100644 > --- a/xen/arch/arm/domain.c > +++ b/xen/arch/arm/domain.c > @@ -557,7 +557,11 @@ int arch_vcpu_create(struct vcpu *v) >=20 > v->arch.cptr_el2 =3D get_default_cptr_flags(); > if ( is_sve_domain(v->domain) ) > + { > + if ( (rc =3D sve_context_init(v)) !=3D 0 ) > + goto fail; > v->arch.cptr_el2 &=3D ~HCPTR_CP(8); > + } >=20 > v->arch.hcr_el2 =3D get_default_hcr_flags(); >=20 > @@ -587,6 +591,8 @@ fail: >=20 > void arch_vcpu_destroy(struct vcpu *v) > { > + if ( is_sve_domain(v->domain) ) > + sve_context_free(v); > vcpu_timer_destroy(v); > vcpu_vgic_free(v); > free_xenheap_pages(v->arch.stack, STACK_ORDER); > diff --git a/xen/arch/arm/include/asm/arm64/sve.h b/xen/arch/arm/include/= asm/arm64/sve.h > index 4b63412727fc..65b46685d263 100644 > --- a/xen/arch/arm/include/asm/arm64/sve.h > +++ b/xen/arch/arm/include/asm/arm64/sve.h > @@ -22,6 +22,10 @@ static inline unsigned int sve_decode_vl(unsigned int = sve_vl) > } >=20 > register_t compute_max_zcr(void); > +int sve_context_init(struct vcpu *v); > +void sve_context_free(struct vcpu *v); > +void sve_save_state(struct vcpu *v); > +void sve_restore_state(struct vcpu *v); >=20 > #ifdef CONFIG_ARM64_SVE >=20 > diff --git a/xen/arch/arm/include/asm/arm64/sysregs.h b/xen/arch/arm/incl= ude/asm/arm64/sysregs.h > index 4cabb9eb4d5e..3fdeb9d8cdef 100644 > --- a/xen/arch/arm/include/asm/arm64/sysregs.h > +++ b/xen/arch/arm/include/asm/arm64/sysregs.h > @@ -88,6 +88,9 @@ > #ifndef ID_AA64ISAR2_EL1 > #define ID_AA64ISAR2_EL1 S3_0_C0_C6_2 > #endif > +#ifndef ZCR_EL1 > +#define ZCR_EL1 S3_0_C1_C2_0 > +#endif >=20 > /* ID registers (imported from arm64/include/asm/sysreg.h in Linux) */ >=20 > diff --git a/xen/arch/arm/include/asm/arm64/vfp.h b/xen/arch/arm/include/= asm/arm64/vfp.h > index e6e8c363bc16..4b399ccbfb31 100644 > --- a/xen/arch/arm/include/asm/arm64/vfp.h > +++ b/xen/arch/arm/include/asm/arm64/vfp.h > @@ -6,7 +6,23 @@ >=20 > struct vfp_state > { > + /* > + * When SVE is enabled for the guest, fpregs memory will be used to > + * save/restore P0-P15 registers, otherwise it will be used for the = V0-V31 > + * registers. > + */ > uint64_t fpregs[64] __vfp_aligned; > + > +#ifdef CONFIG_ARM64_SVE > + /* > + * When SVE is enabled for the guest, sve_zreg_ctx_end points to mem= ory > + * where Z0-Z31 registers and FFR can be saved/restored, it points a= t the > + * end of the Z0-Z31 space and at the beginning of the FFR space, it= 's done > + * like that to ease the save/restore assembly operations. > + */ > + uint64_t *sve_zreg_ctx_end; > +#endif > + > register_t fpcr; > register_t fpexc32_el2; > register_t fpsr; > diff --git a/xen/arch/arm/include/asm/domain.h b/xen/arch/arm/include/asm= /domain.h > index 331da0f3bcc3..99e798ffff68 100644 > --- a/xen/arch/arm/include/asm/domain.h > +++ b/xen/arch/arm/include/asm/domain.h > @@ -195,6 +195,11 @@ struct arch_vcpu > register_t tpidrro_el0; >=20 > /* HYP configuration */ > +#ifdef CONFIG_ARM64_SVE > + register_t zcr_el1; > + register_t zcr_el2; > +#endif > + > register_t cptr_el2; > register_t hcr_el2; > register_t mdcr_el2; > --=20 > 2.34.1 >=20 From xen-devel-bounces@lists.xenproject.org Thu Jun 01 10:20:20 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 10:20:20 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542365.846132 (Exim 4.92) (envelope-from ) id 1q4fPi-0004Lq-7T; Thu, 01 Jun 2023 10:20:14 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542365.846132; Thu, 01 Jun 2023 10:20:14 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4fPi-0004Lh-3p; Thu, 01 Jun 2023 10:20:14 +0000 Received: by outflank-mailman (input) for mailman id 542365; Thu, 01 Jun 2023 10:20:12 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4fPg-0004LZ-IL for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 10:20:12 +0000 Received: from EUR05-VI1-obe.outbound.protection.outlook.com (mail-vi1eur05on20608.outbound.protection.outlook.com [2a01:111:f400:7d00::608]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id e344bdc8-0065-11ee-8611-37d641c3527e; Thu, 01 Jun 2023 12:20:10 +0200 (CEST) Received: from AS9PR0301CA0042.eurprd03.prod.outlook.com (2603:10a6:20b:469::10) by AS8PR08MB6663.eurprd08.prod.outlook.com (2603:10a6:20b:39b::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.22; Thu, 1 Jun 2023 10:20:07 +0000 Received: from AM7EUR03FT028.eop-EUR03.prod.protection.outlook.com (2603:10a6:20b:469:cafe::7b) by AS9PR0301CA0042.outlook.office365.com (2603:10a6:20b:469::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.22 via Frontend Transport; Thu, 1 Jun 2023 10:20:07 +0000 Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by AM7EUR03FT028.mail.protection.outlook.com (100.127.140.192) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.23 via Frontend Transport; Thu, 1 Jun 2023 10:20:06 +0000 Received: ("Tessian outbound 3570909035da:v136"); Thu, 01 Jun 2023 10:20:05 +0000 Received: from 1442fab48683.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 2DF7E1DB-AB0B-48BB-8D91-AD1095B941EE.1; Thu, 01 Jun 2023 10:19:58 +0000 Received: from EUR02-VI1-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 1442fab48683.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Thu, 01 Jun 2023 10:19:58 +0000 Received: from AM6PR08MB3784.eurprd08.prod.outlook.com (2603:10a6:20b:85::25) by GV2PR08MB8485.eurprd08.prod.outlook.com (2603:10a6:150:c3::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6433.24; Thu, 1 Jun 2023 10:19:56 +0000 Received: from AM6PR08MB3784.eurprd08.prod.outlook.com ([fe80::5e17:39a6:eec7:c482]) by AM6PR08MB3784.eurprd08.prod.outlook.com ([fe80::5e17:39a6:eec7:c482%4]) with mapi id 15.20.6433.024; Thu, 1 Jun 2023 10:19:56 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: e344bdc8-0065-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=qDSXjp4bSx13miiCTd8tWiHg6I++lq19hJ5GR3XBnQw=; b=viLR2kEQfQS3zdED/WUoCYeTB7ZLqOg0+l35gsQxf4L4cxu/AqgOvC6PUuLxQsjF2l/188ccF/2kS0hVc2n5Jydc3SBXQbsfY8UTHMPAmbPAQdYmVGa+kYToI04mn9feL2dhsRIjGQif/rMqDjgECXu2IAOyG2RJhe7tc/XMsyU= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C X-CheckRecipientChecked: true X-CR-MTA-CID: 058d1f80af9b0023 X-CR-MTA-TID: 64aa7808 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=fXH0Ye/WY5bcJ8dlTSAL4YuhghqGS71V5/saXJ/gfGD5+7Kxpufxm2ycKL4m77clSQ1GhyF56Y097FxkzbqWobJQGBoUgC5uQt3juTSUcGfwNSPvBRAY51UyLknJpfeE/WyX1VlM59v2Qfs2nOwX80WhIvPontZd+d7aZ6QNEKtqko0lXXRoVsL/xcP83YVdCyzAOLNHhxImMccr9goltnMjtqnSUQUVvAu2bkOeyprSN05R4jrNUf2nFKyc0nZ9AkgszU/oWYGzQUyFkVuVYoLKAfdi2JtOZLXwBOKaV+8PKh2gq9+5lHq73DGkZYRn4O67Y1Pbkl6N0JMBZl03Fg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=qDSXjp4bSx13miiCTd8tWiHg6I++lq19hJ5GR3XBnQw=; b=l0xt3uKTrGzy8136nUcFWPoyfb9OiNnwSUifyy98WYkCwW77jw+zePfSAulSz5ruarghaNrW0ddcfiuTnCyc0ADP45H8HAP2cMWGdc5lCIDmv/b4s0/3Y6XvU5XQWQQo5yZzG8ZyVCKVAQrcQt8RJyx5mZ1H0h9nrxjdXBfYWsXAke1g8+RY+v/ieJS0ks21pWkO7ov2jiAfE1m2zTsXciGu/YtSs19ADhUsjNLE+xfYnq05/JO4GQhHA6bNCS5BpzyWG0+VI6pjZuhLWjDSKh/lj836H7gk97cwVfH+G02ssMnXtIdAQcEgVlOg1PAN276lN3aNn81sHgp6o7exvQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=qDSXjp4bSx13miiCTd8tWiHg6I++lq19hJ5GR3XBnQw=; b=viLR2kEQfQS3zdED/WUoCYeTB7ZLqOg0+l35gsQxf4L4cxu/AqgOvC6PUuLxQsjF2l/188ccF/2kS0hVc2n5Jydc3SBXQbsfY8UTHMPAmbPAQdYmVGa+kYToI04mn9feL2dhsRIjGQif/rMqDjgECXu2IAOyG2RJhe7tc/XMsyU= From: Bertrand Marquis To: Michal Orzel CC: Xen-devel , Stefano Stabellini , Julien Grall , Volodymyr Babchuk Subject: Re: [PATCH] xen/arm: debug-pl011: Use 32-bit accessors for broader compatibility Thread-Topic: [PATCH] xen/arm: debug-pl011: Use 32-bit accessors for broader compatibility Thread-Index: AQHZlGYjy4NMkXD17k+UGeM9r1SDJq91vGMA Date: Thu, 1 Jun 2023 10:19:56 +0000 Message-ID: <7C760D1D-DAAE-48AC-8B2B-E6140452BE4A@arm.com> References: <20230601085001.1782-1-michal.orzel@amd.com> In-Reply-To: <20230601085001.1782-1-michal.orzel@amd.com> Accept-Language: en-GB, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-mailer: Apple Mail (2.3731.600.7) Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-traffictypediagnostic: AM6PR08MB3784:EE_|GV2PR08MB8485:EE_|AM7EUR03FT028:EE_|AS8PR08MB6663:EE_ X-MS-Office365-Filtering-Correlation-Id: 75fda120-f99b-4532-0836-08db6289c542 x-checkrecipientrouted: true nodisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: sQ0v/Zy8GRMOSTDahXRrixkNcE7j9B3/feDOzomUs9cQKK6mwvdHCJXD+WqbqP8sOE3RsrWVqH9k1kQUL77iKsGbvF4g4cn8jR2C+Te8f6kol3PAAx29Q7q1Qb3vYluiyVfkwCh6By9p58nz4Ox0NLTVSpbl4F2ySGrvQOXHtNcCKVjAIGsdnTwXfwVZlA45OA3edDgjTxzkp1JFrouxnlmY1TM91Ju9NVpJq/cI9j860i/wv39SZbxvuyhWMtWLjratQaMhNKJGjIwHdPvKG2uRFMxgIFHK1r/qWNYrg6xCNhxZPR09reHFXKp4N6dRtw54l4KWX+by0OxvXXFArZLR44laTmRfdNcBhCF7/d+CuWJCnODtbKXQBlSTewpO2Pr4r2LMv09woHef5YG90ydiFPNnhxH+EZBD17YOtvGVaZK4gcZk3irgtSthY1FXAeBeNyq7MivERo+y/h3mEjEHqy0kroc0hFLNVII9veEtCM5WI/Z2cv6eD5XrFQNJhj3xCZnRVRHrbfsKt66i5OBIEiFIFjfnYBsILfiDDYroV5xTWpfj7+cyekcRFv0NsdB40cht7HpM78zylp2gtwb0cuDHv1Ro37kjHofOIlZzoVj0IXrtTLsQYlQlX5Zc9M8ibqDN0Nm1mR44WWXe9w== X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM6PR08MB3784.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(396003)(136003)(39860400002)(366004)(376002)(346002)(451199021)(66556008)(5660300002)(91956017)(66946007)(41300700001)(66476007)(66446008)(64756008)(76116006)(8936002)(8676002)(54906003)(478600001)(6506007)(186003)(6512007)(6486002)(316002)(6916009)(4326008)(71200400001)(53546011)(26005)(2616005)(2906002)(83380400001)(122000001)(38070700005)(86362001)(33656002)(38100700002)(36756003)(45980500001);DIR:OUT;SFP:1101; Content-Type: text/plain; charset="us-ascii" Content-ID: <41455013364BF945B1BF490B731F9781@eurprd08.prod.outlook.com> Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: GV2PR08MB8485 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: AM7EUR03FT028.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: 02ff0a11-6e73-4321-4c91-08db6289bf42 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: IrfjBLWmrzAIcn7Gv3s8LcuAgKqJED0gWj+5Ik6xKeLYHxciO5gjI/rJ1tfblzp4qE+NPwYNJb7VdFIfdpoNE8Qq/ajHQZqkVCDUAiTmfzusnrHNEKerDt7nfBVvZHe7xcyiuB9w9pWOHHflsXN8gHi3vBBpCghpYwNT9xlhqaZJ0zfIy7bWR8CGiDG0e3Bk1ab+S8pDQiYv49yX3gdyJIQMOrzd97YSvc5iyyLm2/FFmpszQd+1LJLRZV3yJGdobipulhdJ1Am31ONIkiWosROCjS4JPDmF4VRuAFvHpSZiy3cwONRb2XA3Vpl7mP20hTjYTCZCmYWHQHVgEwL19/gKYxYL+g1siDoQL7aHaEFDiGW8zS7A9R4CbVta/894ItJwblbe//6Qy9u87DbwNXyM5FyKCtHFK2o1THILjzI9oNHT/Tz8A8XqrYo/GLr6SRtjZqeiSwASv2nOd2l+RYwyob3N6NYIw8FMzXrQxZp6y5zwKkpSGZ8+TvRa3aMVZ4fzLMpkJ100veLhGy40ugxm5ZYKWFaA16SGds9FIAa7NbforsJIsdAhQ9TESNRARZ/J6yIjPesgGKUph//WHYgcwEBhJfA0qLRyZPImlbGP9Zud5O47sTRNsf7x91oh32joflB+4wAP+anbuJLlR42YP//1f7gnOUiNNwqQJ/jbAFSY9ZRGJUT7+IM+vRHaJO8avM/5FJZBGSNSb9JVhsPjWluWS2vsYH+rLWpqCN2MzNWkWNnMRnqf0QvrIah4 X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230028)(4636009)(376002)(396003)(39860400002)(346002)(136003)(451199021)(40470700004)(46966006)(36840700001)(40460700003)(107886003)(6486002)(47076005)(36860700001)(83380400001)(2616005)(336012)(82310400005)(36756003)(356005)(86362001)(81166007)(53546011)(6506007)(6512007)(33656002)(82740400003)(26005)(186003)(40480700001)(70206006)(70586007)(2906002)(4326008)(54906003)(6862004)(8936002)(8676002)(5660300002)(41300700001)(478600001)(316002);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Jun 2023 10:20:06.1912 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 75fda120-f99b-4532-0836-08db6289c542 X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: AM7EUR03FT028.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR08MB6663 Hi Michal, > On 1 Jun 2023, at 10:50, Michal Orzel wrote: >=20 > There are implementations of the PL011 that can only handle 32-bit > accesses (i.e. no 16-bit or 8-bit), usually advertised by 'reg-io-width' > dt property set to 4. On such UARTs, the current early printk code for > arm64 does not work. To fix this issue, make all the accesses to be 32-bi= t > by using ldr, str without a size field. This makes it possible to use > early printk on such platforms, while all the other implementations shoul= d > generally cope with 32-bit accesses. In case they do not, they would > already fail as we explicitly use writel/readl in the runtime driver to > maintain broader compatibility and to be SBSAv2 compliant. Therefore, thi= s > change makes the runtime/early handling consistent (also it matches the > arm32 debug-pl011 code). >=20 > Signed-off-by: Michal Orzel > --- > xen/arch/arm/arm64/debug-pl011.inc | 8 ++++---- > 1 file changed, 4 insertions(+), 4 deletions(-) >=20 > diff --git a/xen/arch/arm/arm64/debug-pl011.inc b/xen/arch/arm/arm64/debu= g-pl011.inc > index 6d60e78c8ba3..80eb8fdc1ec7 100644 > --- a/xen/arch/arm/arm64/debug-pl011.inc > +++ b/xen/arch/arm/arm64/debug-pl011.inc > @@ -25,9 +25,9 @@ > */ > .macro early_uart_init xb, c > mov x\c, #(7372800 / CONFIG_EARLY_UART_PL011_BAUD_RATE % 16) > - strh w\c, [\xb, #FBRD] /* -> UARTFBRD (Baud divisor fracti= on) */ > + str w\c, [\xb, #FBRD] /* -> UARTFBRD (Baud divisor fracti= on) */ > mov x\c, #(7372800 / CONFIG_EARLY_UART_PL011_BAUD_RATE / 16) > - strh w\c, [\xb, #IBRD] /* -> UARTIBRD (Baud divisor intege= r) */ > + str w\c, [\xb, #IBRD] /* -> UARTIBRD (Baud divisor intege= r) */ > mov x\c, #WLEN_8 /* 8n1 */ > str w\c, [\xb, #LCR_H] /* -> UARTLCR_H (Line control) */ > ldr x\c, =3D(RXE | TXE | UARTEN) > @@ -41,7 +41,7 @@ > */ > .macro early_uart_ready xb, c > 1: > - ldrh w\c, [\xb, #FR] /* <- UARTFR (Flag register) */ > + ldr w\c, [\xb, #FR] /* <- UARTFR (Flag register) */ > tst w\c, #BUSY /* Check BUSY bit */ > b.ne 1b /* Wait for the UART to be ready */ > .endm > @@ -52,7 +52,7 @@ > * wt: register which contains the character to transmit > */ > .macro early_uart_transmit xb, wt > - strb \wt, [\xb, #DR] /* -> UARTDR (Data Register) */ > + str \wt, [\xb, #DR] /* -> UARTDR (Data Register) */ Is it really ok to drop the 8bit access here ? Regards Bertrand > .endm >=20 > /* > --=20 > 2.25.1 >=20 From xen-devel-bounces@lists.xenproject.org Thu Jun 01 10:31:20 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 10:31:20 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542370.846145 (Exim 4.92) (envelope-from ) id 1q4faI-0005tX-8D; Thu, 01 Jun 2023 10:31:10 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542370.846145; Thu, 01 Jun 2023 10:31:10 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4faI-0005tQ-50; Thu, 01 Jun 2023 10:31:10 +0000 Received: by outflank-mailman (input) for mailman id 542370; Thu, 01 Jun 2023 10:31:09 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4faH-0005tK-Ch for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 10:31:09 +0000 Received: from NAM11-DM6-obe.outbound.protection.outlook.com (mail-dm6nam11on20603.outbound.protection.outlook.com [2a01:111:f400:7eaa::603]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 695f2990-0067-11ee-b231-6b7b168915f2; Thu, 01 Jun 2023 12:31:05 +0200 (CEST) Received: from MW4PR04CA0192.namprd04.prod.outlook.com (2603:10b6:303:86::17) by CY8PR12MB8316.namprd12.prod.outlook.com (2603:10b6:930:7a::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.23; Thu, 1 Jun 2023 10:31:02 +0000 Received: from CO1NAM11FT067.eop-nam11.prod.protection.outlook.com (2603:10b6:303:86:cafe::a7) by MW4PR04CA0192.outlook.office365.com (2603:10b6:303:86::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.23 via Frontend Transport; Thu, 1 Jun 2023 10:31:01 +0000 Received: from SATLEXMB03.amd.com (165.204.84.17) by CO1NAM11FT067.mail.protection.outlook.com (10.13.174.212) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6455.23 via Frontend Transport; Thu, 1 Jun 2023 10:31:01 +0000 Received: from SATLEXMB06.amd.com (10.181.40.147) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Thu, 1 Jun 2023 05:30:58 -0500 Received: from SATLEXMB04.amd.com (10.181.40.145) by SATLEXMB06.amd.com (10.181.40.147) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Thu, 1 Jun 2023 05:30:58 -0500 Received: from [10.71.193.39] (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server id 15.1.2375.34 via Frontend Transport; Thu, 1 Jun 2023 05:30:57 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 695f2990-0067-11ee-b231-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Waw5kKXBmiCw953veVhWJVRBf35TBX6zeqtJagSrBdBEvFkmhHa1kGrgAC5uN8t5F3qWl6Zqc9w6sHEnuJiNtuTCE/EK5lSWpD4W46IPimLeXs8lyIZKK2AcFiSPOjZJN99m+z66UGIUpA4D5Q/AsiX8tmpz+MfXDpzInZTGXJJB2AnCn8zVMDZ9Vzgn4Hi0TWmbb72VwTHqMhzDj9leld8WthH3ArrdnMyBbp+rv2P9u/i94gcEH6C0zjUaN2duQnZ9ckCyngunWNuhqsGOPMdeDCHRD03uzRof5YiYBQMOHYmis+A1WjnQUaB2bgD37caYP4DYDvpoYTg3R0y2bA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=6IHD0xMyFuB1q0A+hkVK4fZ4Tjh+PEyfRSw1tb56v1Y=; b=nQ9WMF0EI9F3MQrf2dcpTrQsp/dgv4WX8wyKzrmiTzHCtZ7E9xssV3E5eX8AX4CljjHUKGW7OySCZ9eVtvz4EBNxz5Ihsoi/QQbTAyZ6yx+cz3UVDB/8eQzCj4kpun1HugKATGpB56oguhoqzip8EgZEs39B34SNGjjHj2Jyyq+42MPk3RG/IsRawB+tYNH4R4FiXMZqivozGoqDXFJnNa1eE73rgYk0BVikMoYIox36bv69qRXaqZmn9LKNaQ0iChaULmKLLbHwqdPBi7VvGBQDT+oBUMto40LzLKUhKLIuyvtEwp5wt5bocaOnbs0lxzud1hiepMjyfD8RpToJuQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=arm.com smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=6IHD0xMyFuB1q0A+hkVK4fZ4Tjh+PEyfRSw1tb56v1Y=; b=VUNddt+vytfWwDCBQV0rT5t2Kx7wVfC+a+WWFshTwzCLtpz8Z5W5cG1AlV/ykcNh+nkXsKQfoo75k+IiqeWC1yzL9343YJiotLdRqXtKji0fvfKi/F4X6hEVWkXZroBwdnoIG0o5FbjxrLSLcI2/NkyYLMDQ3evjmMbRefRLSdU= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C Message-ID: <73a143ee-8301-e0c0-a3fc-83ec10441c4c@amd.com> Date: Thu, 1 Jun 2023 12:30:51 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH] xen/arm: debug-pl011: Use 32-bit accessors for broader compatibility Content-Language: en-US To: Bertrand Marquis CC: Xen-devel , Stefano Stabellini , Julien Grall , Volodymyr Babchuk References: <20230601085001.1782-1-michal.orzel@amd.com> <7C760D1D-DAAE-48AC-8B2B-E6140452BE4A@arm.com> From: Michal Orzel In-Reply-To: <7C760D1D-DAAE-48AC-8B2B-E6140452BE4A@arm.com> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO1NAM11FT067:EE_|CY8PR12MB8316:EE_ X-MS-Office365-Filtering-Correlation-Id: ec1a35b9-b443-4659-db5f-08db628b4bf9 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: C6LvbDQITnwhSPqj9bl9tDbldHhKzITKOJtxIMFf3Nr2IInxfEsTkJbPTwUbJd++nT7hjKe+J5Xe38rJ75PEMGFW+48EMZMgl5xngeuo/HyNVR69MtjAGvC926PyDo6a0X8Oi+KzBlKPWOuhz6hjca5weiC4zsgCdMqKBaPE/ppbYDRt+/wviwEl6hqWksTAUb8wg22Q6Kd92RxRrOGwQtCwmIEvKapKSUbFuuc+UiIs/YzA0dHEyGObsrnVs3mjIF2N/E4HQ+KZ1kpDVRbZcND5kCtHSvcIhB0PSvy4PRRgiZYybTzRJiBA7NExRBe6jgdcivwcDsV+TfqlhLdFeQ03O+X3Pum7dBjdiPCHR/eavBK9z9edWkO7TpaqiRGGgnIDgN7LJbiokQsqM6Z0FK+Jpwk5Cn4neD37iKcCrBN91Mu6hXKg7+xyx3dB5m29vaod7iC23vWv1DTHNLcVHbi69iiewunW3CX5a2u1dDDWhb9UEx/NyW7WZQa/PDM+Y8EBZp4zkeL9JJEAQXOXKWFMgXMXHGWS6iSKf7LbBZM47oyxiQTg4ZzUi5YrPpQicXHTZfzL9xP7hik9yZVyPzHJ6IMzbJGN0rrdRytodvxJt0IIasl1VqqhaZmh1I02VcN6hFT0AfqSQSDhrPikKdR1O4NOa2a2ibcaLX8OMgf4Sc3EwJViTE2XN67AIjSxAth1g3DPOwlUrRS+sw6KA6pjrQ8wyjp4UpXnoBf1mnOPZNSizo/p1cDfLN4BnSoCiB8wRBjpteWDKV4Dz47q3AhDSCc5Pix2xldHRTdYao5IWTBAjP96ltrUE/aquB3a X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(346002)(396003)(376002)(136003)(451199021)(36840700001)(40470700004)(46966006)(82740400003)(81166007)(36756003)(356005)(86362001)(31696002)(82310400005)(31686004)(40460700003)(8676002)(41300700001)(5660300002)(26005)(44832011)(53546011)(40480700001)(2906002)(186003)(336012)(426003)(47076005)(2616005)(83380400001)(6666004)(70586007)(316002)(70206006)(54906003)(478600001)(16576012)(8936002)(36860700001)(4326008)(6916009)(43740500002)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Jun 2023 10:31:01.6136 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: ec1a35b9-b443-4659-db5f-08db628b4bf9 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com] X-MS-Exchange-CrossTenant-AuthSource: CO1NAM11FT067.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY8PR12MB8316 Hi Bertrand, On 01/06/2023 12:19, Bertrand Marquis wrote: > > > Hi Michal, > >> On 1 Jun 2023, at 10:50, Michal Orzel wrote: >> >> There are implementations of the PL011 that can only handle 32-bit >> accesses (i.e. no 16-bit or 8-bit), usually advertised by 'reg-io-width' >> dt property set to 4. On such UARTs, the current early printk code for >> arm64 does not work. To fix this issue, make all the accesses to be 32-bit >> by using ldr, str without a size field. This makes it possible to use >> early printk on such platforms, while all the other implementations should >> generally cope with 32-bit accesses. In case they do not, they would >> already fail as we explicitly use writel/readl in the runtime driver to >> maintain broader compatibility and to be SBSAv2 compliant. Therefore, this >> change makes the runtime/early handling consistent (also it matches the >> arm32 debug-pl011 code). >> >> Signed-off-by: Michal Orzel >> --- >> xen/arch/arm/arm64/debug-pl011.inc | 8 ++++---- >> 1 file changed, 4 insertions(+), 4 deletions(-) >> >> diff --git a/xen/arch/arm/arm64/debug-pl011.inc b/xen/arch/arm/arm64/debug-pl011.inc >> index 6d60e78c8ba3..80eb8fdc1ec7 100644 >> --- a/xen/arch/arm/arm64/debug-pl011.inc >> +++ b/xen/arch/arm/arm64/debug-pl011.inc >> @@ -25,9 +25,9 @@ >> */ >> .macro early_uart_init xb, c >> mov x\c, #(7372800 / CONFIG_EARLY_UART_PL011_BAUD_RATE % 16) >> - strh w\c, [\xb, #FBRD] /* -> UARTFBRD (Baud divisor fraction) */ >> + str w\c, [\xb, #FBRD] /* -> UARTFBRD (Baud divisor fraction) */ >> mov x\c, #(7372800 / CONFIG_EARLY_UART_PL011_BAUD_RATE / 16) >> - strh w\c, [\xb, #IBRD] /* -> UARTIBRD (Baud divisor integer) */ >> + str w\c, [\xb, #IBRD] /* -> UARTIBRD (Baud divisor integer) */ >> mov x\c, #WLEN_8 /* 8n1 */ >> str w\c, [\xb, #LCR_H] /* -> UARTLCR_H (Line control) */ >> ldr x\c, =(RXE | TXE | UARTEN) >> @@ -41,7 +41,7 @@ >> */ >> .macro early_uart_ready xb, c >> 1: >> - ldrh w\c, [\xb, #FR] /* <- UARTFR (Flag register) */ >> + ldr w\c, [\xb, #FR] /* <- UARTFR (Flag register) */ >> tst w\c, #BUSY /* Check BUSY bit */ >> b.ne 1b /* Wait for the UART to be ready */ >> .endm >> @@ -52,7 +52,7 @@ >> * wt: register which contains the character to transmit >> */ >> .macro early_uart_transmit xb, wt >> - strb \wt, [\xb, #DR] /* -> UARTDR (Data Register) */ >> + str \wt, [\xb, #DR] /* -> UARTDR (Data Register) */ > > Is it really ok to drop the 8bit access here ? It is not only ok, it is necessary. Otherwise it won't work on the above mentioned UARTs (they can only perform 32-bit access). And following to what I wrote in commit msg: - we use str already in arm32 which results in 32-bit access - we use reald/writel that end up as str/ldr in runtime driver - we are down to SBSAv2 spec that runtime driver follows (meaning we can use early printk for SBSA too) - this way we support broader list of PL011s consistently (i.e. both early and runtime driver works as oppose to only runtime) Also, before every early_uart_transmit we use ldrb (to convert to char) which means that the rest of the \wt register (8:31) is zero extended. ~Michal From xen-devel-bounces@lists.xenproject.org Thu Jun 01 10:35:35 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 10:35:35 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542374.846155 (Exim 4.92) (envelope-from ) id 1q4feO-0006WC-N8; Thu, 01 Jun 2023 10:35:24 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542374.846155; Thu, 01 Jun 2023 10:35:24 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4feO-0006W5-Js; Thu, 01 Jun 2023 10:35:24 +0000 Received: by outflank-mailman (input) for mailman id 542374; Thu, 01 Jun 2023 10:35:23 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4feN-0006Vz-IY for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 10:35:23 +0000 Received: from EUR05-DB8-obe.outbound.protection.outlook.com (mail-db8eur05on20604.outbound.protection.outlook.com [2a01:111:f400:7e1a::604]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 024b9ab3-0068-11ee-8611-37d641c3527e; Thu, 01 Jun 2023 12:35:21 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by DB9PR04MB9819.eurprd04.prod.outlook.com (2603:10a6:10:4c0::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6433.24; Thu, 1 Jun 2023 10:35:19 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6433.024; Thu, 1 Jun 2023 10:35:18 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 024b9ab3-0068-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Rxw8QdmVdRVlxrYA6OYOL65OB4kKaGvegHBAdyZYOYSN/98I6acWHbTDrQdJhvKppNmtfKk4XCW8S14xHtVCGNHIOCRkMy7nHE9yFha6kDqcFlC2yJtD5tFJMv4MJAAJjD5a33Dd31NJMlhV5zVYI1i+GbhTOMCbaNHXw8xD5TBe8s1D1XIjpxAC873vjmnVnXjvNfpAqG+KdXLjzZodph7kcjrNrDIcL09lIXfnCZ59I4mmf6+XCHfWpfnESlnjqx1LwbcEve/6dmKlLzRj/mXM3VU78o4LW89h2GNzXdX5fh9o/oksgAb/PlERpbbfm/fsIpSzLz8FpKtjVRZxAw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=ffrw5v4J7yvFKFiJO2e4jw+fR9aRSKdWTfCUygVk6jk=; b=g0b39D8MVwnp296bhnXQk+Gxc5ggNbkJjTaQsOmmD2iCn4MVN+JL1wkt5MP24m2Ah7+SoWeYlHIFb/ShYpljjfWl3NtgVncVzHWBu17GJUN/qEutHYcTn7T6UqIzL1AI6YooyOcxQwPUFEcGiW9ayGWulsyIzFuQwmAsk5JbeJGzPGyUDRcVUw6PbNy1dIhsztXKCVv2KILZYGwhODLT9AyhfAJ7lWH+FX0kgnYfYCbx1/sakZqopYiKTCKIfvpp4byMPxx3AxKrmuAsECgcC9mAqkU0h42BEWlQtz7qvPR8K+Y7FSfciSTm2ZIKUwOq0M3HJ0ZUbD/KHUrTa6vX2A== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=ffrw5v4J7yvFKFiJO2e4jw+fR9aRSKdWTfCUygVk6jk=; b=UwbjT3bBclbcawU0yG4g8CN7yBoez6iEt8WQ81lFmGCNCQ1GA/EmoBEMETncAa6WGzB/rbbe5zrQBV+vFGPDLw/tvDIIaj2w8uvbZdAndMhMxCD5/pu3JvwrcrLZMjAPV8TWbqkFc4a/UBW1OZtkpoB1u2t811uOpghkejD4R2RjanYg7AaCIMHSXCnhXsjUEgcfEwHxHZagq5fHdpYcclh6DsR8zQwVvidhQxojdFHtxMaYmLHOwuo8LMYaInUGZtTIaDqE9uzYAqxpsC7rfgXfhteWyvMD262mRAkw+4+rch1DmrPAVHgkN+G7QgapJF2b94zMYieteJaTvM13kw== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <46c33f3f-7911-25d9-4236-cbee661e9242@suse.com> Date: Thu, 1 Jun 2023 12:35:16 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH v2 3/3] x86: Add support for AMD's Automatic IBRS Content-Language: en-US To: Alejandro Vallejo Cc: Andrew Cooper , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , Xen-devel References: <20230530135854.1517-1-alejandro.vallejo@cloud.com> <20230530135854.1517-4-alejandro.vallejo@cloud.com> From: Jan Beulich In-Reply-To: <20230530135854.1517-4-alejandro.vallejo@cloud.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR3P281CA0049.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:4a::22) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|DB9PR04MB9819:EE_ X-MS-Office365-Filtering-Correlation-Id: 0ff3acf7-f00c-42e0-33f1-08db628be4c7 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: JMIW0jzPimrfL65RvSVxALCxLBD6NRto7dTZffavtbXkZ7E2lncGvmbFLDsE4MdPHc6AEoM+tTrUlLe0OcLrIrK/401VHTauyoGNk1md30S87ix6no5ZXT910ruCt8WJhZ0uiYFW/is5PZ6z3xYuRaDK6BSLabj7XkBcwiQBKcpggGn5XHrx1Al+1ZqSb9HOETTbJumxnavXctLS/hrYt6QR9antKjft4OndvZZyej+ATw6P/a8Q/XVLrqh+NcSVSITrdZe6WlIwwbf6ZNH17HvqWprLZvpZTb5UzvJPKAF9GEt4fVbRid7n1qopchrJRX8FiRfSg3NPasOpDbxEsYjX3QSnHJUQsMgzQf43jUXs+wal1TKcFz/T2LujFACAxc1BX56EAMBblMHAoeofJNklusQs+j4f2VHAiezoStjuP9yJ0DcHSPM2/J8Tzxy1Ark9b+VIyB2NL9VrEQrY8INatzmg+shX0ho1OJAaVVLEsDATr0AnvxLdB6fcFNowa2e3wknz9UnXrpTLmkf7A7iFVW4AaY8jktJN43cTsWoM8pjf+R1u/590HeI65R2fDx6jVThRiv16iE/Lb0QRxfA5hJS3KXfKUVwkCp3o/KpTxL0LbILB/W2OEzXfz8t8FRqpBcLpbzgjawRLLLqA6A== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(396003)(376002)(346002)(39860400002)(136003)(366004)(451199021)(8936002)(2616005)(83380400001)(186003)(6916009)(4326008)(2906002)(66946007)(66556008)(66476007)(478600001)(54906003)(316002)(6506007)(53546011)(6512007)(5660300002)(26005)(8676002)(41300700001)(6486002)(38100700002)(31696002)(86362001)(36756003)(31686004)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?aFFudkhsWm9ad1Ayd3UwZml5cmZ5Yk9ZbE1OOUMvQUdvUGJHaHdKME1yL0lD?= =?utf-8?B?SVpHWCtYalh0K0tidk8yZFFjRU5YenhhRU9RbnN6eDYyWk5qRTVWRmZWM1VK?= =?utf-8?B?WjFCUW9Wci9CTmErYjlkTlI3MnA5TlBTR3dUbFV5MENyUFE1WFR4UjdyYkF2?= =?utf-8?B?QWxKM1lTaUVxNCt2bXB3b3gxSHF6QmlKQUdoV0p2dWltaVRxOEhhUUc5MmtQ?= =?utf-8?B?by9nMDIvVG1VNWRscjduendRQlVRQlJ2dGpHQ1VuZ3A5Y24rY0NEbWJJQ3ZT?= =?utf-8?B?eDRtYU5RWW9rY3ZFUVMyL1I1RGoxU0FENVJVYXVvRW1LTVBkVTYrL09WeVBJ?= =?utf-8?B?MFZMaGtNbDVLUjBuZTErbFpLaldId3N2VDI5TittVFNWdUpId3ZSSjBaQlE4?= =?utf-8?B?Q2ZLdDlvbVZLanUrVXNZQnl0Mll3ZWhZdzR2ZlM4cU1SSWVqV2RZN0c4cVFa?= =?utf-8?B?TzByb3A3RlBJVU42OGNSbmllOEFwS2xjQmV5ekYwdUpZMVcrcmJqV254dThr?= =?utf-8?B?aFhzNXB5YUdETi9YVWRmaFFVTW9oamFrVkF6QVNpMTcwRXFnZ0ZDaU50UjlD?= =?utf-8?B?NSszaCtESmltckVzR1p5cDliMms2dXlRUjB3SW10bXVhM0dNMXFJU3BWK3lD?= =?utf-8?B?MzJUaHlqMWErM01HN1pOYUtTd2xyd09WWHJDZys2RGxPNEJucU1VcW1EZEUw?= =?utf-8?B?S2NMdmszU0ZtcGxSejErVzM0SWRkeGhwakVFMTZ5N1lHNld4bUkzLzBKRnRU?= =?utf-8?B?dWl2dEYzOVFKb0hmYnBTWmlNYlc5SWszdTRGaTRyd05yTlhqMnV4SFZwWCt2?= =?utf-8?B?U2dzZG5HRE5nUUc2ck5QSTcrSURhK1BqcU5xTWUwUTgrQTdGVGd2c3NxeG1o?= =?utf-8?B?QmNQN2Q5UXNLdWhQU1c1TTE4V0FYS3Bab2FZb2RVMmpjWmRoVHVFRkM4ZDVs?= =?utf-8?B?TWRxSzk5MGpWVHVDcEJVQnkrOXBJOXNZTGplb05EZlU4VVRUUVBjQlZmbU9L?= =?utf-8?B?UzhOenNUSURRUWdZVFRTZ2FqN3BEMlA1TEtGUWdIaExLaGd2MmNoYndtV1Zq?= =?utf-8?B?SkY0MXhUT0tHdFhSakFyalp2bloxQmVmRngyTkN4eGFtbHQzZUVBTTMyVDBi?= =?utf-8?B?VlZ0VU5KblFhR09IVW95eUdNK0dYVTliK254ZldWa0UrYmcva0pEV2Yzb1BZ?= =?utf-8?B?bFpUYXR6cFh5c0xRZFh2SWFJRTFhOERaOTdVcGo5ZDlvOEVpMjF4NVA5dk9J?= =?utf-8?B?Z2hTMnN5WVRRMy9uRGxVVmRralN0aGwrNHozbGJRTU1kU2ZwaDZGd2hIZXZT?= =?utf-8?B?OWNkS3pXZVFzNG1Sb2M2NFJXRG13L2pZbHBDcVFDeG4xT25yTDBPYnFGWU8y?= =?utf-8?B?MW5TNVR1dVFsbU9zVnRLV09ERVNvTlFHYkUxRVVoWkhObVE4b2JvSGU4blEr?= =?utf-8?B?b1FFZmtIbVVWVk14aGt3SjBkQWhBaXVFZnZBck41aXd6QngrNndmUDZwU1ZN?= =?utf-8?B?QWZ5OFlaRlg3R0lRUlp4VlNWaGFJQzhDdjJqbTU0OGlSb3MxbFdadnlDc1JL?= =?utf-8?B?NTZxLzJybG9KSElKc3RKM2czdE5XWlVIK2pXcU9QWE9UMHBXMjJLVXRyRTV3?= =?utf-8?B?UXlqN29Pb2RVdEh5K29JVXBxTXVtME5SVFBMdWdWS2ZTTDB6YUF0ckk3U1Ir?= =?utf-8?B?TUIvcDlITGtNZENCQW1lQnB4SFl2bVRtbjhVdWhtRUdhcDBqUFBua0xYQmR1?= =?utf-8?B?VzdLQjIwcmxHVU01WXhLaHB1Nk1KVDh6RUdMVWthM21QSUcrYkNZUHdmbHhV?= =?utf-8?B?UzNkV1NXdWlIbUpPWWpIaFo0RlFqTWdKNkhZejZRZlBJMnE3cTZSSllhM2Jq?= =?utf-8?B?N2x5RkdQbzNwSHk1YytGbFdFSG1YUkNKOFlRWEdmM3JhUXJ0ZVhQb0VOYXBU?= =?utf-8?B?ZE8ramhiZXl6VjBpL3pqbWtiOWthcEdxMWUzRXo4VWdPaFByWHFrYzlsbCt0?= =?utf-8?B?S0c4R1JydVlrQm0yUE1hbEhoRGF4cE03RzNjdkVYRlFwTm9oTWIvd3J0UmVK?= =?utf-8?B?UWV6amFnZU9yWXdhaEtKQlpkdXU2SWdpWEkvMkVaU01vdG1uL1ZjMGRvMXFo?= =?utf-8?Q?mS5rDQWZn613YdifIFlQMZXlP?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 0ff3acf7-f00c-42e0-33f1-08db628be4c7 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Jun 2023 10:35:18.2537 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: XPXrJkQX7Je5wcQCdrGGqt+5LVh2uPlH5iY+WIODoFWNLG1cgH0YLb/2KG9uenGViBY8ECplO8HKUDnRZB3Hug== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR04MB9819 On 30.05.2023 15:58, Alejandro Vallejo wrote: > @@ -1150,15 +1155,20 @@ void __init init_speculation_mitigations(void) > } > else > { > - /* > - * Evaluate the safest Branch Target Injection mitigations to use. > - * First, begin with compiler-aided mitigations. > - */ This is the only place where BTI is spelled out, so ... > - if ( IS_ENABLED(CONFIG_INDIRECT_THUNK) ) > + /* Evaluate the safest BTI mitigations with lowest overhead */ ... I'd like to ask that you replace the acronym here. Then Reviewed-by: Jan Beulich > @@ -1357,7 +1367,9 @@ void __init init_speculation_mitigations(void) > */ > if ( opt_rsb_hvm ) > { > - setup_force_cpu_cap(X86_FEATURE_SC_RSB_HVM); > + /* Automatic IBRS wipes the RSB for us on VMEXIT */ > + if ( !(ibrs && cpu_has_auto_ibrs) ) > + setup_force_cpu_cap(X86_FEATURE_SC_RSB_HVM); I'll need to remember to adjust "x86: limit issuing of IBPB during context switch" once this change has gone in, as there's a use of the bit for other than alternatives patching. Jan From xen-devel-bounces@lists.xenproject.org Thu Jun 01 10:37:24 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 10:37:24 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542380.846167 (Exim 4.92) (envelope-from ) id 1q4fg6-00078D-6W; Thu, 01 Jun 2023 10:37:10 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542380.846167; Thu, 01 Jun 2023 10:37:10 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4fg6-000786-3c; Thu, 01 Jun 2023 10:37:10 +0000 Received: by outflank-mailman (input) for mailman id 542380; Thu, 01 Jun 2023 10:37:08 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4fg4-00077y-AL for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 10:37:08 +0000 Received: from esa2.hc3370-68.iphmx.com (esa2.hc3370-68.iphmx.com [216.71.145.153]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 3fa0e7e4-0068-11ee-8611-37d641c3527e; Thu, 01 Jun 2023 12:37:05 +0200 (CEST) Received: from mail-dm6nam04lp2040.outbound.protection.outlook.com (HELO NAM04-DM6-obe.outbound.protection.outlook.com) ([104.47.73.40]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 01 Jun 2023 06:37:03 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by DM4PR03MB6048.namprd03.prod.outlook.com (2603:10b6:5:393::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.23; Thu, 1 Jun 2023 10:37:01 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::10bb:98bc:e36d:36ab]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::10bb:98bc:e36d:36ab%3]) with mapi id 15.20.6455.020; Thu, 1 Jun 2023 10:37:00 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 3fa0e7e4-0068-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1685615825; h=message-id:date:from:subject:to:cc:references: in-reply-to:content-transfer-encoding:mime-version; bh=HkasCAvrZGwtSy9P6HI5t1g/hlGjvpCrPQIAe5ETJZU=; b=gD4Ta1s0Vymkc3mfxc9aNEc+/PC3yqxsL40Hj3yIKikt4IBdxIXqHvag qfvGxtmWNGhTa/p18nSwTBFisFJ3KX2NIXkCf0uGnSnWp6gXtjkU2h3rN PqBraiSjN4l/s26zpD8Cr+4L39M6Y8PgfdjNEG1DDdAUfUa/qO0a6UDxV o=; X-IronPort-RemoteIP: 104.47.73.40 X-IronPort-MID: 111093337 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:nHrdjKv4JmIssCB93WcE2rdqyefnVJdfMUV32f8akzHdYApBsoF/q tZmKWCDO/6LZDCnc4gkb4rl80oF65/cnYVqHQs6+X0wF38R+JbJXdiXEBz9bniYRiHhoOCLz O1FM4Wdc5pkJpP4jk3wWlQ0hSAkjclkfpKlVKiffHg3HVQ+IMsYoUoLs/YjhYJ1isSODQqIu Nfjy+XSI1bg0DNvWo4uw/vrRChH4rKq4Fv0gnRkPaoQ5AGGziFPZH4iDfrZw0XQE9E88tGSH 44v/JnhlkvF8hEkDM+Sk7qTWiXmlZaLYGBiIlIPM0STqkAqSh4ai87XB9JFAatjsB2bnsgZ9 Tl4ncfYpTHFnEH7sL91vxFwS0mSNEDdkVPNCSDXXce7lyUqf5ZwqhnH4Y5f0YAwo45K7W9yG fMwIRcjcEyk1ryM/bfmZ9NNjeAYEOjiBdZK0p1g5Wmx4fcOZ7nmG/mPyfoGmTA6i4ZJAOrUY NcfZXx3dhPcbhZTO1ARTpUjgOOvgXq5eDpdwL6XjfNvvy6Pk0oui/6xaLI5efTTLSlRtm+eq njL4CLSBRYCOcbE4TGE7mitlqnEmiaTtIc6TeThrq8x2wbMroAVIAY0eVrl8MilsGevQcNcC m4zww4EobdnoSRHSfG4BXVUukWsvBQRRt5RGO0S8xyWx+zf5APxLmEAQzxIbtA8s4koTDgu2 12Ot9jtAiFj9raSTBq16bO8vT60fy8PIgcqdSICCAcI/dTniIUylQ7UCMZuFravid/4Ei22x CqFxBXSnJ0WhM8Pkqm+o1bOhmrwooCTFlJtoALKQmii8wV1Ipa/YJCl4kTa6vAGK5uFSl6Gv z4PnM32AP0yMKxhXRelGI0ldIxFLd7cWNEAqTaDx6Ucygk= IronPort-HdrOrdr: A9a23:JkgQqKxtNh8vnzb2EjbkKrPwIr1zdoMgy1knxilNoH1uHvBw8v rEoB1173DJYVoqNk3I++rhBEDwexLhHPdOiOF6UItKNzOW21dAQrsSiLfK8nnNHDD/6/4Y9Y oISdkbNDQoNykZsfrH X-Talos-CUID: 9a23:oWKlpm0xOxks+Vlr/xS7+rxfE+cLbCH6nSnqHkrlJFxIQ5mudX6ZwfYx X-Talos-MUID: 9a23:tqzUUgjGn5zsE6v+PKYnSMMpL+VE4vr/OVw3uIQcqsqlFwtJHx2Rk2Hi X-IronPort-AV: E=Sophos;i="6.00,209,1681185600"; d="scan'208";a="111093337" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=dXU+h/C54jmxBxPOR0Ql/SLVYTpQoD59YJg1d/gMsNRRiqmiv2yzwulCUT7ACqPt+fOwQDFgEU6x7lW1797lURWJLdzDfnBRRQpix8LSHRiwhHpn75gVoH+sWHd/jS2f7/ToWMfePTSd26X+kPCsYsYsKqRDAe5V98q284JWZ0W95vep6SN1hpro56k4pOCg5GTeRR2fiomv+l4A5cedRilApR4qdPvVkli36LYZhJcZwSCkLhDzUn8U/bTG9io48i36OvAxefriKlOtzzw4ijwRCT850P/e7Y6bhejcgXgyYo69cgEKBDOXKy3lHHI0Rjzpa6hGlgXfqYdJxjzkFA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=r6uMrUtOjclKHrAMyV/2RStXcsqO2auA9OKTC4MZnNA=; b=Rp3TTt6JWClppcXla86e+oYMrh24mXKgeIQ7VciaAbOsxZr7V3frbGn96HtGh3uhzINUlan9dALLtTbrcJ8LMABoBagPY4cE5zywf+yHrMkxg4fIU2YqoMO66dcJVT5vN66g3eBkgfHvuf/4hVXGZNNsfPNdgTbC9SdrYfYxARiSL+iYN3AjE1aKuBEkOm9OBDosNjtm5D6Cibx2966JnNbl6gdx36N56EhQVLGuheM9aHEwtYmz50KVvCKKLXHYfnSqF+IigKub3qBgmeHjNbPmL0G3Z3rL5gATH9C/DQa+ddXLnjIhpKee3WX3KknJoK6SaCJEai6DKL/SlwRPhg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=r6uMrUtOjclKHrAMyV/2RStXcsqO2auA9OKTC4MZnNA=; b=h4Gkcxh45m3bveWyWgoCkkITSv3pB9b+xSmOhpJduo1ghF1ECMTFqpyl9Hl66UG5pmMyO8QkP2r3bnrCILkMaBCxlLj+nAcLAMsKvTf05VpMAzf7EEaTQb+Uq7e978H/90Xc89W5v/M5O/LXsqvNkjHFGt1ZHBqGeQJBqHRQghQ= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: Date: Thu, 1 Jun 2023 11:36:53 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 From: Andrew Cooper Subject: Re: [PATCH v2 3/3] x86: Add support for AMD's Automatic IBRS Content-Language: en-GB To: Jan Beulich , Alejandro Vallejo Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , Xen-devel References: <20230530135854.1517-1-alejandro.vallejo@cloud.com> <20230530135854.1517-4-alejandro.vallejo@cloud.com> <46c33f3f-7911-25d9-4236-cbee661e9242@suse.com> In-Reply-To: <46c33f3f-7911-25d9-4236-cbee661e9242@suse.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO2P265CA0227.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:b::23) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|DM4PR03MB6048:EE_ X-MS-Office365-Filtering-Correlation-Id: a96a44dd-5982-413d-a3ee-08db628c2146 X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: kjHmpZWcPJKxGZtWCPAtgFzFU0yIFpRSGxQESdMLmtaD2omgPf20P5u+/rP69ZGhxK6DymgNvucWCXREoe5b+C9MXC5RuIqCKY7G0bKe5zz/5YTWuDcYq8HVbGzuHJ8MROm31SOMKxdj8Bf0fBZ4bZnAGhAWUSFO0G0nQBz6+JZG+IsLYyQwN9gGcTBpPn+j78H4bYTZQwaQj44CPWPpZPXSt+AJNQO9wcz0EKKkzGgE4Qc9j7qLy+kuoxmdVHOilE4G7IC8n87Gtu1JkmR4mTJlwrV0kPtOHKtgSfzCAAFvM12spJxL23wFXIv1A/bqY9fR4uHuDrgvK2kLg6kaZmGt32AKQQz7ebViWwBRU21mia6gvSVlSt1Jy+U7f2KL2lVGKhpFShoVkYt5Hf2gNimahol/3b5X9Uk2az4v70h1IF6xkJGxhvkF45hbUnfGEl7iPHEnGytcf7k7aa73lQP6Hq1tcqxxbMco2BnnykogTTp+d42P9pU18oFycNQbSPqErOLjtlCI7ZYDoNBXnoJdqdF9PLBh63PxN7ddDtYzkPGAWYdKAYeYuZELvPvrreZ8DOp4o+jCcG1ae+xbqPRxlyifrNhRuTEJImvD1/w2OY76e+7/hLFMe8ZvSum6NoiIhBzye7yPDjjuDmxifQ== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(376002)(366004)(136003)(396003)(346002)(451199021)(31696002)(86362001)(5660300002)(8936002)(8676002)(31686004)(2906002)(38100700002)(4326008)(316002)(82960400001)(66476007)(66946007)(66556008)(110136005)(54906003)(478600001)(6666004)(41300700001)(26005)(6506007)(53546011)(6512007)(2616005)(83380400001)(6486002)(186003)(36756003)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?cmZ6emtKOUdXNU42THUzNzdwVm5IVzdMQW84WXhWOENCaFlpd3ozNDNwT3pz?= =?utf-8?B?UXNIM2ErVEpycElTZG5MU001cjRtNU9iRUtPaWJGczZyd1liTy9NZEJwdlpi?= =?utf-8?B?RDlqVEhCV3hCb21FbXBOd3J3V2ZxUjROL0VVZE14U1dYTEtINzYvVFFzdmRI?= =?utf-8?B?TDJDeEYyaXF3ZHVOeXRMWDByTU5TeERHSVFncFljc1U2Um5BeU1SMUR3Ykc5?= =?utf-8?B?dXlYaytTYkJ3SE1LZWhoSENsNmk5bnhycTNDL2xzcWsvcUd3aDVNQUJxU09v?= =?utf-8?B?TGtzWmJtanBHNUp0SnBPQmVRVHhWQXRSamt6aTNIQjhmM1BjZVBISWJ4Ylhj?= =?utf-8?B?Q242QXgya3JqQ3grWG5pWUdpaDRvTVdpUm84TkcyQVY0K2JaR24rdmVsSlpq?= =?utf-8?B?akhJbmRJdTZUU3ZxLzdia1lBN255ZUJXK0VUOVJIUFZpV1VrZUY2cG1XUllz?= =?utf-8?B?UElBbTlHOUdxa2ZqWEVaR2dkYkZEOUx5SVZnTW00WEt0dWVaN2RqNlh3a0ZZ?= =?utf-8?B?eFZjbjk1ZFJxeHZsM3IrY1JLWjRidit1c2Q0Zi9OeHFxcG9FcUNmZTNzWmFS?= =?utf-8?B?cXpxc01MaHNOWXF2ZExPOGx2RUVuRTVJK0NQQjVxaHVoU1VlaHpIRjBVU3Y5?= =?utf-8?B?YWp4bTQrSXd3QVJKNjhMZnp6Um9PaGdMT0xwSlFMN1pxblBhVldxQnYwSVdN?= =?utf-8?B?R2NmZWo3M3Fjc0lyQVlIVy9URlBFUTl2UURFUnY3T09zR3Q1cWJEb2Q4MjRx?= =?utf-8?B?T0RrTWJyVmVLS2dyNHB5SUhLZGxRQWxyQVAzYkkzc3BLOE4wK3hteDlLeE81?= =?utf-8?B?N0xNSjVZbFBIN2I2Y3hvREgvcUJhbnRQZ2xvL0EwL2RpMzVlaVdUbE5HTWJV?= =?utf-8?B?OTFCalpIQnNRYnJnRUt6Vm9xdytMczRSY1IxLzdDMnZRLzN6UGtSVFZVOWxN?= =?utf-8?B?UWdXam45ZWFlT3Z5UUJNTWtrK0IxeHNNdFhxa0YzejI1RC9GMUpvTEhNV2ZV?= =?utf-8?B?eTN0MTBjZVZoTkZZcTdHUmVrUklUTVQ4SWxpTU82alRnTTdLdURERDNkanpq?= =?utf-8?B?c0xTUUxPMFZUcXlCTFo1TjZYWjZtamlPVXRBNlhpQytWaEF5MTRzWThTQ0F2?= =?utf-8?B?VlZuSDByYmxxMUJLeCtKdWFIbVdKSVJ4N0sxcnI4UlNCaGJGNGcyYnBRN2ZD?= =?utf-8?B?ZkZVTmJqRmNOUkJCZ0N0NENza2lvN1ZiNUU3aTQvZFVnNmZSQnhtcGV6RVF0?= =?utf-8?B?RE51UVBOWU83bFdGcHZIcEY3L0R5L0tmZksyNmYwZWY1U044cGxtSXdZaENN?= =?utf-8?B?b0VDcjU0dG1oSFlBZ28zMkxZOS9mTmtrRm9KaVcyQUorMTlqTnZ3L2R1US9L?= =?utf-8?B?TUdRd3BONi8zUC9BWFROTmxrOS9zS2h5cGVHQWZ4WmVZc2ZIc3VQVmticWFX?= =?utf-8?B?Y1d5bkozOUJRMmFOc3NMdUFUeFQ0S1BRNzV4VG5PUXhQQmZER3lyRENBclIx?= =?utf-8?B?b0JkdHNQTjB5T0JkSmpyK05QZHc5VjVZNFF5dDVrTk0veE5SUVhwdWlMUHVh?= =?utf-8?B?bnZ4WWVydGRxeDllbWROSkhmR0c0YW5jbUdNUW1KQUNITWw3WkVEc3RtdFJy?= =?utf-8?B?d0FweE01MjFleDJKWXFLV205aUxaa3Q0b0VnKzVPRXFWT1AyaDJMUkdGMXRH?= =?utf-8?B?NmhqdTVjOGVqa2xqSEd2emVUU1JhMlh2bVd0N3FGZHJPQnVtUEpIVlpRNk1s?= =?utf-8?B?RVY4MEJJN2FhTncxUEVEelRRdHV0bUQ1NElBQVYwbHlkS0ppYitFY0ZOTkND?= =?utf-8?B?eWlJbFVvenZ0ZmhNNVc0ZWVINEVmeWU5eHJyY01WcXJFV1Z4Zml4ZjQ3QU5U?= =?utf-8?B?TStqa0p5THNkREQvRlhCczhiOFh6TVJCb2svZGtCajZNSjZwcHVHUDViRmFC?= =?utf-8?B?UFF0YTdUcWo1SHFTWG5PemlhYjdNUkNSMVFMSlZ3WjUvQmIwRFNPZlRaTDd1?= =?utf-8?B?d3hLU25DeVV6OXpGczRpYURnMFNLSDZ3K3gyR0kyM1lkb1QwRXNmSWpYVU9Z?= =?utf-8?B?UnVvZGhwK3c2Uks5S0E2WDVONEZzdGlXdXUzUis1cmFscjNQaDQ0ZXFjaTlC?= =?utf-8?B?YXVGVlg3bitnVkViYVBmLzB6L0dQK25HMGNVTmxlYTBtbFY5WWt4V2Y5Q3dZ?= =?utf-8?B?Q3c9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: eRTjsgU+3ERXLPyT0EG9qJpgyRv2S6rzKU8XNBf+g3sBwMzDnqUXzeMVyvkWgeWiqFJ+6W5VQHBCGBCj3WO4HnyWdeSqfoUX5ZvyIPqO0pxl5jpNxpyj8faesZTIvsvysgHGafv4aaOAp125flWWkwwPiwb7mqXhBXJ2Yi7/ETtssP36EL/PahXhOhuGhAoWjja+sVl4TiUs6nNo2ZmE/kn8yLoq+QDq2vVluzJ3j9I7TPEsuVYYRuvw4x4s3V9f/Ef51ruPDN7KO57Ib+AQnhGJiowqHn8QYa4scqHTLDZ4uVJXZn2+LCAE0uc0Cuqk1UcWED2xpZ7hMRPUtCNqITLz+0/MuIj3ERZcqMvCQBHT+87mjZ3wWUjvRGrrREH3NYQfMjsd4tVFaTLmSuFeprPRW4UDuewVTNuqPemrcnlcy54asSW+TqeS4z13omBmnN/VA6gGSUG60vfxccyLgETHQ66gvksBJXQmL5JUky76nGReXK+HItqyZnYeCU127yLfKle/BZZhQzz1qqE/BiNUu03IrZ1iqPxtxgkabZJ6HFte+nJ2blFO9CU1UtV39wQ8RDyHk82DU0Bj8hjlDTfjFDUs8UpDa4LSpzYd8fntn/WvWg9cmbGDmzbKnXrKD0HEzG4uESu2mk1ZU2+d7yQNdncsMY5uzysNox5hyI3ZEFLW6O8SXhXl9aozIIH1n0fn65hQE7tnCpydEdCg2ebOW2XJY0o6KdW22khacTLz3H0seNw7ihV6pMUKQeuohz+YdIGnw4Fz2e+hmYc9RK+t9rFlR4dguCko51x5QUmDrpx+bMppkQK9eOie3dsYhinEVVFCyfQ9LAVtvbiUW83ruJwBFZ8OsTp+9QzbBFQ= X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: a96a44dd-5982-413d-a3ee-08db628c2146 X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Jun 2023 10:37:00.6466 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: XgIYDUnee/vVirdzMkYMQNRQ7sK9UH+2hNi3BO2gd+rXqHbmw789nI6868WH7q+kY2ytkyXVe8H0vXovJeol4S0xR1f2lYLB40q+vE/IxBk= X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR03MB6048 On 01/06/2023 11:35 am, Jan Beulich wrote: > On 30.05.2023 15:58, Alejandro Vallejo wrote: >> @@ -1150,15 +1155,20 @@ void __init init_speculation_mitigations(void) >> } >> else >> { >> - /* >> - * Evaluate the safest Branch Target Injection mitigations to use. >> - * First, begin with compiler-aided mitigations. >> - */ > This is the only place where BTI is spelled out, so ... > >> - if ( IS_ENABLED(CONFIG_INDIRECT_THUNK) ) >> + /* Evaluate the safest BTI mitigations with lowest overhead */ > ... I'd like to ask that you replace the acronym here. Then > Reviewed-by: Jan Beulich > >> @@ -1357,7 +1367,9 @@ void __init init_speculation_mitigations(void) >> */ >> if ( opt_rsb_hvm ) >> { >> - setup_force_cpu_cap(X86_FEATURE_SC_RSB_HVM); >> + /* Automatic IBRS wipes the RSB for us on VMEXIT */ >> + if ( !(ibrs && cpu_has_auto_ibrs) ) >> + setup_force_cpu_cap(X86_FEATURE_SC_RSB_HVM); > I'll need to remember to adjust "x86: limit issuing of IBPB during context > switch" once this change has gone in, as there's a use of the bit for > other than alternatives patching. Please hold off for the moment.  I think I've got a cleanup patch in mind which ought to simplify this substantially, but I'll need a bit of time to experiment. ~Andrew From xen-devel-bounces@lists.xenproject.org Thu Jun 01 10:52:51 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 10:52:51 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542386.846188 (Exim 4.92) (envelope-from ) id 1q4fv4-0001OP-Mt; Thu, 01 Jun 2023 10:52:38 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542386.846188; Thu, 01 Jun 2023 10:52:38 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4fv4-0001OI-K4; Thu, 01 Jun 2023 10:52:38 +0000 Received: by outflank-mailman (input) for mailman id 542386; Thu, 01 Jun 2023 10:52:37 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4fv3-0001JY-CD for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 10:52:37 +0000 Received: from EUR01-HE1-obe.outbound.protection.outlook.com (mail-he1eur01on2085.outbound.protection.outlook.com [40.107.13.85]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 6a61786e-006a-11ee-8611-37d641c3527e; Thu, 01 Jun 2023 12:52:34 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by PAXPR04MB8144.eurprd04.prod.outlook.com (2603:10a6:102:1cc::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.23; Thu, 1 Jun 2023 10:52:04 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6433.024; Thu, 1 Jun 2023 10:52:04 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 6a61786e-006a-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=T3mxKvLyIDT/It+kEUk9Yy8wZIj4EbekIslN/4X0Q+u78et1PNFJSAX9Dwr139Pqd92FAWJxgMwUSR8iPZU1FwvjoYNMpsJnd3AukuVXwlDsQUD7zTKdiW18+N5A2NnQx1Q7Gg6jhX99D7u5/b8P88DYuB5Jr/OGpUZCJZcQA01ZuBsJ/KmX70iNcBmUZ7DeaBDk6cZ6cBeRzLSHcP6DMEpVXUGCWauWKC95gijyQLnhvXgu6O+/YOLRmGWSPGkNpRgUYULaNh60Me99UImHtVg+BaF/eK3x/y+ITTHySqEaVWNYS7+YhCGz8+oe+Hj7iI0KqPyzTGuaBorHyDvipQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=N5qe1jyLKYLDYNrMU8v8+SZKQGDxs/cDgRGtUtj4itw=; b=WP6kAeKbw/B9+GX1Tur3kUQRB778bnzHFwSW0yEgwfhg+YwfnCAxPS+mbzbzdn0sX69G8Z+R98OgcIXkls+vKUCVHWeaIO0Mt/eTO0jFuhY/Xug0dNLzTXMPHhe8Ia2DBBiWIBMrd+XlcTcb8edaqml19aXBWt0Mgcj6GYTnnIiqdicc6Eefm2rGQ1NQMcGW00weKBizfSyRHITMIFxeuq/+hIQgAL1suVjVuhjFvpeP0VWl1PVLaB+wgxRUcpMEk+GR49lMZovxyJVl/hOc16RSJrC5UB3R9F5zm+QzfyF62tGxgtPimvcFbjFDWJlwoP6ZYAqgQKwE6Qa60bKhIA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=N5qe1jyLKYLDYNrMU8v8+SZKQGDxs/cDgRGtUtj4itw=; b=A7VT+oEKzZBx6vqm0/xf0Ozy5I7s47XlWb+EuE6L9aUauqfwVLupq1Dz8B+stjlv+cVq1xBEiYnmk0fZ41uf1y3RYcoM7XPaM1+dRSAYAcSq+q4d1QnmQcAqb4V4hjnvygpD+Njfv1jj53tyrWcLZIURoUhayJCoWmjlC849HTdLoS3FRu4SrHUHERjqHS1egGZjSHptAAuNDqVga6uuyaUKvbLAX4/YUe6vzcWZdSvqLEyXmIiW4suP17M9wk5OUbC5YkW+0Uw2Fq8rninWdbkHsgz+mb4QWGPTbi6KIi4gwvnCkzohIF/EenrPyfFFDS499hjKIkvYmsDyugq3eA== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <6d323d34-66ff-1608-1d91-9f7de78ad53b@suse.com> Date: Thu, 1 Jun 2023 12:52:02 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Ping: [PATCH v2 2/2] build: use $(dot-target) Content-Language: en-US From: Jan Beulich To: Andrew Cooper , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Julien Grall , Stefano Stabellini , Bertrand Marquis Cc: Wei Liu , Volodymyr Babchuk , "xen-devel@lists.xenproject.org" , Anthony Perard References: <9bc7544b-659f-4c09-f54d-647641483605@suse.com> In-Reply-To: <9bc7544b-659f-4c09-f54d-647641483605@suse.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR3P281CA0078.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:1f::19) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|PAXPR04MB8144:EE_ X-MS-Office365-Filtering-Correlation-Id: cf4c0550-7535-4650-2a5c-08db628e3c96 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: L6G7KHB7K8oq7cCB/0BGLWxa5nGKmimg2dmlnkcwhvtaSBxuftZ5LW0+QVRQLFFRm+JuPjh3BdMIvZ690tMx1udnlRyAGO/1klErdtHoLID+lrIgpXfYaWrQrRgDXl/CmcaE93m7lZX42Mp5tmNgkH+B1mJaOAIu3/GT+Fe4TDhd8fh6p1mhHXqhqi9b9yJfi630RXzIAGjGiJ1AFfd+935BSbIajcmICi8AWiMvekY64scfJheQIB/s4OsG0l9kWGhobejHZJGE0OE6AWGT2+kBz4ezuWAMT8CYi6WIY0edmjEJVFQiflleUwIxZRKm057j/wKb7pReDIpj2MaqM/zdzFtoSuLxVEWlBztEt6A30POFPa6oXODyaibijYvkW7ReXkY89LpOWr5IItRvGGv8H3rsTJrab+XAWGowjKbJfnxyZgGpiHQa4ofK7mRTTRxqtrV5PF46vWlMWYx9R2/4IRaEGri4WsYPNNnnnlW8DhNt/KFSLP2PLMRMxzSbEnTY7jB7oUp/0dCKrsnbr+3o7E9X6HvcO3sFg9DVR5SDRiniVOmdZ3Hdwl1N7x7UgmAeT5UUqs4shesWT0i3WuelFh8jB9eH1vDDuCP1ca8P4f8MZu5/TqeEXrQNB9qnZ/BPc2qYBSh0sEn4mjjV9w== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(396003)(346002)(136003)(366004)(39860400002)(376002)(451199021)(31686004)(26005)(6506007)(6512007)(53546011)(41300700001)(38100700002)(186003)(6486002)(2616005)(478600001)(54906003)(110136005)(4326008)(66556008)(66476007)(66946007)(316002)(2906002)(5660300002)(8676002)(8936002)(86362001)(31696002)(36756003)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?clJDRlByeitmR2c4VUFHSHNkbURiaG1HMHhoVFdhUkswWThta3QrM3doNFFj?= =?utf-8?B?b1hlU3lGblkzVXI1ZThONUJxQ2w4Sm1ieGZ0R0lzZ1hpWWRKbEMwTWdRelFN?= =?utf-8?B?dDl0VG9KV00yZlloVlI2dEQ1Nmo0S3pTYy9URTE2aTBiemZYUVc3WUsyekJT?= =?utf-8?B?SXBMVk1CcEVBM004MDR4WFowUkZ4dkkzMWNpTlJ4V1h5aGJlWE0zWTJMVFRS?= =?utf-8?B?WUpKOGJqMzFkaExzcndTT0p4WEpUNDI1UzJLRmNSQllsNUgrdG1BQlR5Y3NJ?= =?utf-8?B?V0c5MnJTYitrK2JrOVpLd3RPemdScENkSUVYbGtJa3FYQmZZNXZIbUJqeWti?= =?utf-8?B?RG84dndzdW9FYlFVMXJDWjNzSG9tVG5udnpYbjdoTTZvQ1lpV05hbG5UT0JS?= =?utf-8?B?ZjBuR2VneVMrM2Vaa09ySkp5SGpJRzV0M1YycG9xYXBwZGRmdzZKRWFIRnhZ?= =?utf-8?B?alk3MXRNdnRCK3VvNThhTURtaEd2akEyQjRFZFkwVTJSV3FKZWdpczAzY3U3?= =?utf-8?B?RmpyQ29FZlZETmlGZE1WZTRpMTJSSE4yMnVoUWc2ZEs3Q3FVU3dUVFJQUjNm?= =?utf-8?B?REpVT09kR04rWTVNR2xFYVJTSVFvZldDWXV4Z2pVZlNveTI5YzBWUDVkaVhk?= =?utf-8?B?RUhRUmVNQXMxdXFQU2hpcEZZb3JpM29jMmZNVEgrb0pwZ3R3bGpBVW53dTZW?= =?utf-8?B?SlN6WTVzWEcwMDVZQU5MYnF3dTUrcytCOGt5T3VxTzJ2djJRTi85TDN2T1h2?= =?utf-8?B?OXMrNUhDdHFkc2pPeXNaNWJjd1JsdEZTRWVzbEljNHZHV20wQW1XZ3BjS21y?= =?utf-8?B?OWdHckFWbE1SZGFHREJ6OUhuKzlXUysvVHQ5dWJMemt3NlFJQzBiQkJpcG1w?= =?utf-8?B?aldTU3V3NlBXZkdhL1BzbjJ2SU51MUhVRFVFc1dFQkRWdmRjWno5Z2N5WWJy?= =?utf-8?B?R0JLY1VZcW9kVnU3Z3JNYitQbTdkbW9Gck1uR2N5Y3l4Ukdhd1VBNXJRMmtS?= =?utf-8?B?Y2tDckpRbEduMURhaU8yQXZUTzNJL3c5aVZZbWRCdXZaZVlFTFBLc3BwY1p6?= =?utf-8?B?aHVQdC9XL1Z4bm5icC95SWg1anNWc2tJY1Q4S3IzUkl4UjFmZnk0a3REUHUv?= =?utf-8?B?U25QSnRJNk1FUmVxa3Rxb01HdXhScE1lSS9wd0VWOUxIOGRDc1VVVWRqbmYr?= =?utf-8?B?c28vYmlLZ3pSVlpCbGppRkwvbUprcWIxbWNsUTJUWWhPdUxsTDQ1S2kzRnBn?= =?utf-8?B?V0kxenZTMTdEODBpZ0h6TGREMW9SQkx3MTR1TzZ2UXkzTmlUNE41SnR6cFBE?= =?utf-8?B?TC9XQklvSXRZcHR2em9NaGFCZkVuS2sxblUrTFgwMmh1ajFBOGN5eFV0Zm5Q?= =?utf-8?B?QkJHWkhNSVlrK3ZYS2pTdFpMNldOZ2x3S0YvWFBnbzd3dWdPTkEyZmlXYWJ1?= =?utf-8?B?UFhYcVRic2RNRUI1NTBXUVJKc1YxTURWNEhtQ2dOakhxR3picHpZQ1ZIMHc3?= =?utf-8?B?Sk10clRPU0ZpNjBWbVJjdnk0QUUzNXlVSmpDM0hVQi9COWRlTzNZazlsbGNJ?= =?utf-8?B?U1FOalIyZS8wazFSUUNoM0N2LzVHb2JWNWN4OHFFZWt3dHdiZ0x2YTZnMXh5?= =?utf-8?B?QlJ1aGJDTDQxZHVWdS9QU20zeDhhZmt0Q0l6a3JhaDkvK055YThpdUl0OTAx?= =?utf-8?B?RjdPeTljeWlsUVpkb0ZILzBFZ3RtV1ZsL0Y4SndwZVJlT0ZyQVZUOVd1ejFK?= =?utf-8?B?Mk9xSHJieWdzNVI3ZGpneG9Ja1pPNWtDWHJDZyt5Z0NITHNKQ29vRVcrd2VM?= =?utf-8?B?WjdxNHRUS1MrVWlVdHBGam1RMmQ0WHUvQ1g1WjRSRGdvSlFoNkFaeG5OSkZq?= =?utf-8?B?VFVSdnNmWTJwUmFiNzdSMkt3NkRrZ1Z0RTZvZU80U2FZQ3pIQkZGNWIxLzA4?= =?utf-8?B?blhCQ0Fadk9nMmtWSHhrTkNOZWpldWxvNVgvcTF2dDBoaEhuUndzTk1ES1lx?= =?utf-8?B?Q2IwaFJSSEQzLzhpNTY3VkVhcUdka1BJd0dIRHRKM2JYTzhjQ1FtYTVtNWcz?= =?utf-8?B?SWtGTUlaNHlWeTFXTmk0U0NmVUYyUVdYb3hrS2xEYkZGcEdWa0gwSjZwdXcz?= =?utf-8?Q?Iuf9IUmA90QUs0rUr0Q2LzVxc?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: cf4c0550-7535-4650-2a5c-08db628e3c96 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Jun 2023 10:52:04.6420 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: W66PApC3MKk6AerCBl67njdisdm2nkZpm+QvaJY0QHsaF5v+va7ttkX0mGfGxnZqGXyTcFj5hBEqojkzElbcYQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB8144 On 08.05.2023 14:58, Jan Beulich wrote: > While slightly longer, I agree with Andrew that using it helps > readability. Where touching them anyway, also wrap some overly long > lines. > > Suggested-by: Andrew Cooper > Signed-off-by: Jan Beulich I didn't expect this was controversial, so - any chance of an ack or two? Thanks, Jan > --- a/xen/arch/arm/Makefile > +++ b/xen/arch/arm/Makefile > @@ -93,17 +93,19 @@ endif > > $(TARGET)-syms: $(objtree)/prelink.o $(obj)/xen.lds > $(LD) $(XEN_LDFLAGS) -T $(obj)/xen.lds -N $< \ > - $(objtree)/common/symbols-dummy.o -o $(@D)/.$(@F).0 > - $(NM) -pa --format=sysv $(@D)/.$(@F).0 \ > - | $(objtree)/tools/symbols $(all_symbols) --sysv --sort >$(@D)/.$(@F).0.S > - $(MAKE) $(build)=$(@D) $(@D)/.$(@F).0.o > + $(objtree)/common/symbols-dummy.o -o $(dot-target).0 > + $(NM) -pa --format=sysv $(dot-target).0 \ > + | $(objtree)/tools/symbols $(all_symbols) --sysv --sort \ > + > $(dot-target).0.S > + $(MAKE) $(build)=$(@D) $(dot-target).0.o > $(LD) $(XEN_LDFLAGS) -T $(obj)/xen.lds -N $< \ > - $(@D)/.$(@F).0.o -o $(@D)/.$(@F).1 > - $(NM) -pa --format=sysv $(@D)/.$(@F).1 \ > - | $(objtree)/tools/symbols $(all_symbols) --sysv --sort >$(@D)/.$(@F).1.S > - $(MAKE) $(build)=$(@D) $(@D)/.$(@F).1.o > + $(dot-target).0.o -o $(dot-target).1 > + $(NM) -pa --format=sysv $(dot-target).1 \ > + | $(objtree)/tools/symbols $(all_symbols) --sysv --sort \ > + > $(dot-target).1.S > + $(MAKE) $(build)=$(@D) $(dot-target).1.o > $(LD) $(XEN_LDFLAGS) -T $(obj)/xen.lds -N $< $(build_id_linker) \ > - $(@D)/.$(@F).1.o -o $@ > + $(dot-target).1.o -o $@ > $(NM) -pa --format=sysv $@ \ > | $(objtree)/tools/symbols --all-symbols --xensyms --sysv --sort \ > > $@.map > --- a/xen/arch/x86/Makefile > +++ b/xen/arch/x86/Makefile > @@ -123,7 +123,7 @@ syms-warn-dup-$(CONFIG_ENFORCE_UNIQUE_SY > > orphan-handling-$(call ld-option,--orphan-handling=warn) += --orphan-handling=warn > > -$(TARGET): TMP = $(@D)/.$(@F).elf32 > +$(TARGET): TMP = $(dot-target).elf32 > $(TARGET): $(TARGET)-syms $(efi-y) $(obj)/boot/mkelf32 > $(obj)/boot/mkelf32 $(notes_phdrs) $(TARGET)-syms $(TMP) $(XEN_IMG_OFFSET) \ > `$(NM) $(TARGET)-syms | sed -ne 's/^\([^ ]*\) . __2M_rwdata_end$$/0x\1/p'` > @@ -137,23 +137,23 @@ CFLAGS-$(XEN_BUILD_EFI) += -DXEN_BUILD_E > > $(TARGET)-syms: $(objtree)/prelink.o $(obj)/xen.lds > $(LD) $(XEN_LDFLAGS) -T $(obj)/xen.lds -N $< $(build_id_linker) \ > - $(objtree)/common/symbols-dummy.o -o $(@D)/.$(@F).0 > - $(NM) -pa --format=sysv $(@D)/.$(@F).0 \ > + $(objtree)/common/symbols-dummy.o -o $(dot-target).0 > + $(NM) -pa --format=sysv $(dot-target).0 \ > | $(objtree)/tools/symbols $(all_symbols) --sysv --sort \ > - >$(@D)/.$(@F).0.S > - $(MAKE) $(build)=$(@D) $(@D)/.$(@F).0.o > + > $(dot-target).0.S > + $(MAKE) $(build)=$(@D) $(dot-target).0.o > $(LD) $(XEN_LDFLAGS) -T $(obj)/xen.lds -N $< $(build_id_linker) \ > - $(@D)/.$(@F).0.o -o $(@D)/.$(@F).1 > - $(NM) -pa --format=sysv $(@D)/.$(@F).1 \ > + $(dot-target).0.o -o $(dot-target).1 > + $(NM) -pa --format=sysv $(dot-target).1 \ > | $(objtree)/tools/symbols $(all_symbols) --sysv --sort $(syms-warn-dup-y) \ > - >$(@D)/.$(@F).1.S > - $(MAKE) $(build)=$(@D) $(@D)/.$(@F).1.o > + > $(dot-target).1.S > + $(MAKE) $(build)=$(@D) $(dot-target).1.o > $(LD) $(XEN_LDFLAGS) -T $(obj)/xen.lds -N $< $(build_id_linker) \ > - $(orphan-handling-y) $(@D)/.$(@F).1.o -o $@ > + $(orphan-handling-y) $(dot-target).1.o -o $@ > $(NM) -pa --format=sysv $@ \ > | $(objtree)/tools/symbols --all-symbols --xensyms --sysv --sort \ > > $@.map > - rm -f $(@D)/.$(@F).[0-9]* $(@D)/..$(@F).[0-9]* > + rm -f $(dot-target).[0-9]* $(@D)/..$(@F).[0-9]* > ifeq ($(CONFIG_XEN_IBT),y) > $(SHELL) $(srctree)/tools/check-endbr.sh $@ > endif > @@ -210,27 +210,34 @@ ifeq ($(CONFIG_DEBUG_INFO),y) > endif > $(foreach base, $(VIRT_BASE) $(ALT_BASE), \ > $(LD) $(call EFI_LDFLAGS,$(base)) -T $(obj)/efi.lds -N $< $(relocs-dummy) \ > - $(objtree)/common/symbols-dummy.o $(note_file_option) -o $(@D)/.$(@F).$(base).0 &&) : > - $(MKRELOC) $(foreach base,$(VIRT_BASE) $(ALT_BASE),$(@D)/.$(@F).$(base).0) >$(@D)/.$(@F).0r.S > - $(NM) -pa --format=sysv $(@D)/.$(@F).$(VIRT_BASE).0 \ > - | $(objtree)/tools/symbols $(all_symbols) --sysv --sort >$(@D)/.$(@F).0s.S > + $(objtree)/common/symbols-dummy.o $(note_file_option) \ > + -o $(dot-target).$(base).0 &&) : > + $(MKRELOC) $(foreach base,$(VIRT_BASE) $(ALT_BASE),$(dot-target).$(base).0) \ > + > $(dot-target).0r.S > + $(NM) -pa --format=sysv $(dot-target).$(VIRT_BASE).0 \ > + | $(objtree)/tools/symbols $(all_symbols) --sysv --sort \ > + > $(dot-target).0s.S > $(MAKE) $(build)=$(@D) .$(@F).0r.o .$(@F).0s.o > $(foreach base, $(VIRT_BASE) $(ALT_BASE), \ > $(LD) $(call EFI_LDFLAGS,$(base)) -T $(obj)/efi.lds -N $< \ > - $(@D)/.$(@F).0r.o $(@D)/.$(@F).0s.o $(note_file_option) -o $(@D)/.$(@F).$(base).1 &&) : > - $(MKRELOC) $(foreach base,$(VIRT_BASE) $(ALT_BASE),$(@D)/.$(@F).$(base).1) >$(@D)/.$(@F).1r.S > - $(NM) -pa --format=sysv $(@D)/.$(@F).$(VIRT_BASE).1 \ > - | $(objtree)/tools/symbols $(all_symbols) --sysv --sort >$(@D)/.$(@F).1s.S > + $(dot-target).0r.o $(dot-target).0s.o $(note_file_option) \ > + -o $(dot-target).$(base).1 &&) : > + $(MKRELOC) $(foreach base,$(VIRT_BASE) $(ALT_BASE),$(dot-target).$(base).1) \ > + > $(dot-target).1r.S > + $(NM) -pa --format=sysv $(dot-target).$(VIRT_BASE).1 \ > + | $(objtree)/tools/symbols $(all_symbols) --sysv --sort \ > + > $(dot-target).1s.S > $(MAKE) $(build)=$(@D) .$(@F).1r.o .$(@F).1s.o > $(LD) $(call EFI_LDFLAGS,$(VIRT_BASE)) -T $(obj)/efi.lds -N $< \ > - $(@D)/.$(@F).1r.o $(@D)/.$(@F).1s.o $(orphan-handling-y) $(note_file_option) -o $@ > + $(dot-target).1r.o $(dot-target).1s.o $(orphan-handling-y) \ > + $(note_file_option) -o $@ > $(NM) -pa --format=sysv $@ \ > | $(objtree)/tools/symbols --all-symbols --xensyms --sysv --sort \ > > $@.map > ifeq ($(CONFIG_DEBUG_INFO),y) > $(if $(filter --strip-debug,$(EFI_LDFLAGS)),:$(space))$(OBJCOPY) -O elf64-x86-64 $@ $@.elf > endif > - rm -f $(@D)/.$(@F).[0-9]* $(@D)/..$(@F).[0-9]* > + rm -f $(dot-target).[0-9]* $(@D)/..$(@F).[0-9]* > ifeq ($(CONFIG_XEN_IBT),y) > $(SHELL) $(srctree)/tools/check-endbr.sh $@ > endif > > From xen-devel-bounces@lists.xenproject.org Thu Jun 01 10:52:52 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 10:52:52 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542384.846178 (Exim 4.92) (envelope-from ) id 1q4fv2-00019P-G3; Thu, 01 Jun 2023 10:52:36 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542384.846178; Thu, 01 Jun 2023 10:52:36 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4fv2-00019I-DK; Thu, 01 Jun 2023 10:52:36 +0000 Received: by outflank-mailman (input) for mailman id 542384; Thu, 01 Jun 2023 10:52:34 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4fv0-000198-HS; Thu, 01 Jun 2023 10:52:34 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4fv0-0006ik-6k; Thu, 01 Jun 2023 10:52:34 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4fuz-0005Bn-Rs; Thu, 01 Jun 2023 10:52:33 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q4fuz-0002Ka-RL; Thu, 01 Jun 2023 10:52:33 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=NgY8gYwNfsS+aYewhIx2JXCn2wF4roWse+rGsJR6iFY=; b=oAVnJQCu63UQE/NZyiL5Em/sKE XTfI6bkX6zoglp/pODiRGmeBasGgAZLyC/FkzVP3H8l7IQFL0MDoWI4MWLpNnvqKHJpBgpyr5/Nbe r2ANZzFqR/axOzzvbyIumwwmqJZ1Y6nuOkrsiu9YaV469zZVdzZld0gtwSWwNdrFO6BI=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [ovmf test] 181072: all pass - PUSHED X-Osstest-Versions-This: ovmf=c1e853769046b322690ad336fdb98966757e7414 X-Osstest-Versions-That: ovmf=9f12d6b6ecf8ffe9cd4d93fe0976fdbaf2ded4f0 From: osstest service owner Date: Thu, 01 Jun 2023 10:52:33 +0000 flight 181072 ovmf real [real] http://logs.test-lab.xenproject.org/osstest/logs/181072/ Perfect :-) All tests in this flight passed as required version targeted for testing: ovmf c1e853769046b322690ad336fdb98966757e7414 baseline version: ovmf 9f12d6b6ecf8ffe9cd4d93fe0976fdbaf2ded4f0 Last test of basis 181036 2023-05-31 13:10:43 Z 0 days Testing same since 181072 2023-06-01 09:10:44 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Gerd Hoffmann jobs: build-amd64-xsm pass build-i386-xsm pass build-amd64 pass build-i386 pass build-amd64-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-i386-pvops pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Pushing revision : To xenbits.xen.org:/home/xen/git/osstest/ovmf.git 9f12d6b6ec..c1e8537690 c1e853769046b322690ad336fdb98966757e7414 -> xen-tested-master From xen-devel-bounces@lists.xenproject.org Thu Jun 01 10:54:48 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 10:54:48 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542395.846197 (Exim 4.92) (envelope-from ) id 1q4fx9-0002JU-Af; Thu, 01 Jun 2023 10:54:47 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542395.846197; Thu, 01 Jun 2023 10:54:47 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4fx9-0002JN-85; Thu, 01 Jun 2023 10:54:47 +0000 Received: by outflank-mailman (input) for mailman id 542395; Thu, 01 Jun 2023 10:54:46 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4fx8-0002JH-Bl for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 10:54:46 +0000 Received: from esa2.hc3370-68.iphmx.com (esa2.hc3370-68.iphmx.com [216.71.145.153]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id b70a5dc6-006a-11ee-b231-6b7b168915f2; Thu, 01 Jun 2023 12:54:44 +0200 (CEST) Received: from mail-bn8nam11lp2168.outbound.protection.outlook.com (HELO NAM11-BN8-obe.outbound.protection.outlook.com) ([104.47.58.168]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 01 Jun 2023 06:54:41 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by PH7PR03MB7105.namprd03.prod.outlook.com (2603:10b6:510:2b8::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.23; Thu, 1 Jun 2023 10:54:36 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::10bb:98bc:e36d:36ab]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::10bb:98bc:e36d:36ab%3]) with mapi id 15.20.6455.020; Thu, 1 Jun 2023 10:54:36 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: b70a5dc6-006a-11ee-b231-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1685616884; h=message-id:date:from:subject:to:cc:references: in-reply-to:content-transfer-encoding:mime-version; bh=Jwe6ZtnN40qjWXcllSwZFjd4swt/6oDjIqEonf2FNvM=; b=gSRG7hYpKtPkOBbyoKSP00NTUU+b8aZFJwpMZ8nAik3V//xhW6m3Q1xm eIlkUx0Y3c+nImWWPPgj8UpKTtCcMtjc/TFO61mstgtkNODLj9P+r3gCs JSzFUVcvYy2pFnMzrgR2euK3d0mtVWjL8Xlao5IR/+hNbH/bs4oUsQrnv Q=; X-IronPort-RemoteIP: 104.47.58.168 X-IronPort-MID: 111095026 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:Nn6HX6yZcOTokjgCgWR6t+f3xyrEfRIJ4+MujC+fZmUNrF6WrkUEy WAcC2mHM/yJZTDyKNwlPIy+8BxX6JXUz9NiTFc9riAxQypGp/SeCIXCJC8cHc8wwu7rFxs7s ppEOrEsCOhuExcwcz/0auCJQUFUjP3OHfykTrafYEidfCc8IA85kxVvhuUltYBhhNm9Emult Mj75sbSIzdJ4RYtWo4vw/zF8EsHUMja4mtC5QRgPakT5jcyqlFOZH4hDfDpR5fHatE88t6SH 47r0Ly/92XFyBYhYvvNfmHTKxBirhb6ZGBiu1IOM0SQqkEqSh8ai87XAME0e0ZP4whlqvgqo Dl7WT5cfi9yVkHEsLx1vxC1iEiSN4UekFPMCSDXXcB+UyQq2pYjqhljJBheAGEWxgp4KUZV0 ew3MQJXVze4l8iI+py5d6pSo8t2eaEHPKtH0p1h5RfwKK9/BLrlE+DN79Ie2yosjMdTG/qYf 9AedTdkcBXHZVtIJ0sTD5U92uyvgxETcRUB8A7T+fVxvjiVlVIhuFTuGIO9ltiibMNZhEuH4 EnB+Hz0GEoyP92D0zuVtHmrg4cjmAuiAdtKReDgrKACbFu73nA0VT1PXEqCvd65qhWDBfsPG 34Gw397xUQ13AnxJjXnZDWxpHOGtxgQQd0WDeQ+7AyPzYLf5wGECi4PSTspQMwrsoo6SCIn0 neNnsj1Hnp/vbuNU3Wf+7yI6zSoNkA9L2UPeCsFRgst+MT4rcc4iRenZslnOL64iJvyAz6Y/ tyRhC03hrFWh8hb0ay+pAnDm2j1+MiPSRMp7ALKWG7j9hl+eIOue42v7x7c8OpEK4GaCFKGu RDohvSj0QzHNrnV/ATlfQnHNOvBCyqtWNEEvWNSIg== IronPort-HdrOrdr: A9a23:4rOl7K2finzoFJqs4YKK9gqjBKMkLtp133Aq2lEZdPU1SKGlfq WV954mPHDP+VUssQ4b6LK90cW7L080lqQY3WByB9eftWDd0QOVxepZgrcKrQeAJ8T2zJ856Z td X-Talos-CUID: =?us-ascii?q?9a23=3AonpMoWmYRTNH8Rsk+I1ydKIV9xXXOVrG6Gf/On3?= =?us-ascii?q?iMEFSWJerc3GSxeBatsU7zg=3D=3D?= X-Talos-MUID: 9a23:KydPMwnR0NmzhROdNmzSdnp6KOA1w/2nGXkRtpUm4PTaHHxACSWk2WE= X-IronPort-AV: E=Sophos;i="6.00,209,1681185600"; d="scan'208";a="111095026" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=lsNs5p5207mPa73tY3a+fn/T6QykI2ae9H41OCvUuB/vpNeMmEN8YqPvb3vQp+dArC6LZLIqi5jPdVUbXQoAG38I+qFLgovOWLmfNH0HH1DgQ3BELUkub4xBEDC8GUod1wuSEWU4k9A1CziAyPaZnvu70qH17uDsNTyKjefDvM+8dNbWaxNDKZKT4lGF7zDOLCeiJ3FLnFowBlBqJP165yjIMqZqEGbPV9SaU2ir1VEQaR8oq6MRjshA+nBwEMX/I6VQubQhgyPu0zSeDwKjVpGqezCJFmPjUhoWwRqYNpm2T/P1LDUDws7oVor2T6B34RAKF0jolA/RMiJdlF2hyg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=7iCHkhEgZK6Nu5+eGx1P400PbN8WLgPCnJNN0Rk7HTI=; b=VhxO9Gko0VkusGbhnM5BbhyR7AQ2Y7715sKMPoY5/4zfqZZ7Tu7WcvNy37jhOiAmnfgISnIHZ7pigUUFPoRk2gDlEZ9QG3CXqCRJXHzBujuCnnmzvesW3cZ5szvwHdLWoUc2JxSAa3fxRYg3Jhj8X+FfvKMug1g12pcHPtKliP1KAj4JK0fzxqLNHwG7KXPnzB04j+i72s38P3lRH8RVBMbbIPLAGe3YgWpxx0OF71cqbSzMeAeSVdcp6JkM7AQSQBkKUnNunWjF0Tr8x//F04Qu6xqfXaqW2T4fXBarJgBF2nzDDXaQFJVwMgPKtC0SaVkiZfidJIx0zaTJJOcUWA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=7iCHkhEgZK6Nu5+eGx1P400PbN8WLgPCnJNN0Rk7HTI=; b=FqYoO2YklVsEF0UO2eStHdTeSj8FMB9wyk2dIiCAX6nS1MY3y6YJdvKHoVgvQcHxVBjJ1n1JnNuCjnJkoAc7p6/LTCL5kIfMfrxp79xE+mdfBvymbhs+Lg3NX+YqtgkIwH+Gm2O4/1Sw7ZCzILGCulfsNsw69zn3+oJWbl22qLg= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: <83324533-38da-b5bc-875e-a161d7501eb5@citrix.com> Date: Thu, 1 Jun 2023 11:54:31 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 From: Andrew Cooper Subject: Re: [PATCH] x86/microcode: Prevent attempting updates known to fail Content-Language: en-GB To: Alejandro Vallejo , Xen-devel Cc: Jan Beulich , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu References: <20230531175119.10830-1-alejandro.vallejo@cloud.com> In-Reply-To: <20230531175119.10830-1-alejandro.vallejo@cloud.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO6P123CA0056.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:310::13) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|PH7PR03MB7105:EE_ X-MS-Office365-Filtering-Correlation-Id: 1c172408-8f58-48d7-837b-08db628e96cb X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: x8HBafVHShlrKNSFPBy0iJZLr5T48cqbx0ZXe/MHZELbwO8MnExc6AWSIhNTF60jVlhx7i9mxlZTsXVo73nvIOlyFGLo0wrQhA2Mmf3fve69EkQuAqrDi385r/nMXKmNX5/STaYhzz7bc9ikgaPblYt9+wBFUdW90DJMHhUE2z93/xIt4oKWlA2UA9mlPEHLBLwOPx9J5mKvRemITd2FIVpML2AI7mWkt6e26CrjMaR9b/tA4ZVj/5h5TcbKX5QyCPtq15v6xXVTSvXsoHoprS8vVwFG34Mi3QZ2S3f6ywnIWHuo7nd43nYv9N12XDO9clvDdn5RJsIdw7aypOO7LNOrIIC+dtzpyc73qyl9nCbUAOPW7IDgYMWovnHzEHNwJPnsAIuZe8ICaxQwxY2DXAhV+hfKJMoqTuF/CcDLxrYSJxXHcWwBNwVnxh21JeNm9IOJqNmKwwVuWwPwk2myr8nKbwekXkCch+CdO6Z46XS1jtj11/6yrDxix7p4iMiHOWb59VvjXLK9yUl0pxjPdk9Hwb2UTnIrwVCXbSr5GT6tH/rxfCP0D+Tcxt1m00y5ciJvgM6xgoE127qj5cfhyXSsoiJ6lD0+69GsEfOcMK2S8bX0vYmVZrGaMTWw0HiV2XkYJVQIsSpdAqecWJJcxw== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(376002)(39860400002)(366004)(136003)(396003)(346002)(451199021)(2906002)(15650500001)(8676002)(8936002)(83380400001)(41300700001)(38100700002)(4326008)(36756003)(2616005)(316002)(31686004)(6486002)(66946007)(82960400001)(66476007)(66556008)(31696002)(26005)(86362001)(110136005)(54906003)(6666004)(5660300002)(186003)(6512007)(53546011)(6506007)(478600001)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?R1A5MFNRbHZrNGRnTW9VWkx4RUN4aEFDYXpjdWdJUGczZkIvVVgwZ2w4eUxa?= =?utf-8?B?V2pHL0VyTzN0aU50VFZ3bTMwK0NRVjVpQ1dBcXBNNVIyaFUvWGVIU0xQeUQr?= =?utf-8?B?d1NXUEhTUlpuT21tTyswcEFWRGZxUnA3WTZlbVQva0xsL212Rmt2ZEkyTVF0?= =?utf-8?B?c3ZyU1JjbGl5ejN4bTFIZmlKcFZHaDdkQTlKbUM2ckZDL0lFMUErY1BSYjFp?= =?utf-8?B?eXYva3RHU2RaNmhncE9YdkVFVU1MZjRZQXNUR0ZEbTZsNUR3T25JeUFXMDI0?= =?utf-8?B?RExxTTFGU1ZUOUUvNXhMZ0tCbzFMRi9LN0hQMEFVc05KMkFFRXpKbG4zQU05?= =?utf-8?B?NCtoajRmd1NJSndXQmI1ZGV5eUlYN09yUklxcFZTeFU3R3liTTY5VU00TEow?= =?utf-8?B?bzltbDFhQmhibjVXSi9TSzRrTW1kb1VHa0tOQWpTYjZhK1B2UDhPa3dNM3NJ?= =?utf-8?B?Z0pzSFlPYjVkN0pBdWpHQjgvd3pTbjNtNzFaRmdXdDhHRWQrb0thVG1qQTVP?= =?utf-8?B?WHVwY2xkZmhHZXJERHFVVy9ob0JHdktqSVpJb2QwaklzSW5zb0F5QlI0VGpG?= =?utf-8?B?N0I4R2wxYXZSTnIxSTNKSFJDVUcyR21SMk5FTDQ3VFZYZ3VyVFdVbVNvUTNq?= =?utf-8?B?VEpnRHZtSENwRFQ3Tm9LcHQ1QVFtczlkc1k5ckpPY0J6ODVnc0hhVktJQ3U4?= =?utf-8?B?bVZNK2w2Y1lIL3UvQ052M2x5Y25jd1hOS2N5aFVrSlViRXdIcnltVldxYWVv?= =?utf-8?B?S0psT0RaZENoVThvZWJlcUo4MzJMN1AvQ3ZvcnVXSnlVVXlHaytEeFJJV3VV?= =?utf-8?B?cHlvQzRkLytwMTE5ZzZ1R2loUE5FNjN5eGtZdjhiekg0RzBIdzRyVFg2dmtl?= =?utf-8?B?QVMrTWFiRWVrTHdRZGJBMXFzdHZha00wakZYSXpRZGlYazIwR0JST0VTMHhT?= =?utf-8?B?SlQ5MXFWOUM0enc4bTNBMzRsb25DZjZWbGxzRDJlWmowTzZURFZQWmxvVEtx?= =?utf-8?B?SmtDdGxkZllQNTJGSUU1bDdLeWRzSEtvL1F3UmM3aXR2aW1IWXZIcUUybzNZ?= =?utf-8?B?ZmgxWjhuSExveDkwL3ZGRFZKcEU2TXhMTFpKY3hDUmc3d1pTQXJ5SFVLMS9U?= =?utf-8?B?NUJRbkw2cEZFRmlJZ2orM211QVI2ZnZ4elExcjczY2FzSFlYcWh6WHE2TlI3?= =?utf-8?B?d053V3Y1WTFkckwrYjFZYlk5ZGsrTVVURDBXOUJSd1J6T095L0o4b0g1bU5p?= =?utf-8?B?OGhleERyZGNrZVZjOVVWcHhZTzB2WHZlanczT2UzUlp6ODltOEROUzN1T3dv?= =?utf-8?B?V3dCNDAxQi9icysrTFhDNDdiTHRSMHZuU3N5bXBCcFhVOVFtV0ptTy9kbEVY?= =?utf-8?B?T3NTcm1pR084SklKMFBMZjZlV3lXREVIWDFaVjdKWkJ2eGJzcnVUeXdwWlhE?= =?utf-8?B?T0hhUVgxR0dnc2VzcFBZcmVGbXFSLzlOR25JSkNsaTZ6dUV0YkpFV3kyVmVu?= =?utf-8?B?dWJPYlV2SXY5NFBsQ1FSWm5iTDlubzVnSWQ2N0E5TlhQQkN3dFNKWStYRlNY?= =?utf-8?B?ZzZGcUdCTjBJdEZKS0Z1Mm05ZktOV242ZjZubGc1amM0UmczQndJMDRFSXlX?= =?utf-8?B?Z0hnRUlDY2pzR0wyZWRUeW5POE1YKzNacm42b1dLTWNvc05RTWtDZnN6amh4?= =?utf-8?B?SlI4Rnd5K3p6ZXdncTQwTFV1SUVoWnIyUS8wSU55TlFDMUVtUk9qdW5DVWFW?= =?utf-8?B?bmg0bnUzOUlHbmh0aS9KeC8xTEphVjNpalgzaXJUd0VvSXRidHlUY3lZNVU2?= =?utf-8?B?bmxtc2ZUMzZ4aWkxZFhyZjhrK3NDYVF3VUFwUmMwTnE2NmRxL3NqUDFYR0hi?= =?utf-8?B?T2pXZnM5RzZEK0ZKM3FUSUtBQTlqYVR1YW9PTVdUMnFuNWdPME9FdVN3cGpJ?= =?utf-8?B?YmdTY21HNFJZVkh2aXY0dGdXc05MK2V3SzNnU2JKN0dYZ1lpK2lQWXhkR1Ey?= =?utf-8?B?MFRmUE1rTTljTExkSTNpTUY0RFFxZkgrMisxZXFWRGFYQlB1NFZnU24zWHJY?= =?utf-8?B?bkJoNXF5TTRhbUdxNnkrT0FnT05LOGFNZ0djNEZOYjMrdjhHZytwVU5QZlJS?= =?utf-8?B?WDZvcEZOdEFaRGY4aWx5K3MxWUtuRnd3UlN0cVNvSzhGTlpneXNjS3lZT2Vp?= =?utf-8?B?NGc9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: KR7f+7jBNz4f/xZaHQVKjYS/InS8By4SUdhjyDclamgykm4AM/Bg7pRyuxJK1PdeEhulgrDfAEPOltpUem49i9u1jNNG0LQ9uQglsFxxMPNB3Jy01XEuZunA06TP1bML2NgfWKHfM5NwEo//bsbZJcdjvG/lPLP9KWOlMtOfvkjr34+vYYd5WQ+vbVvCxljmUKhNZdMtEkTrtSD1nZ4bP5cd01sT5phTEFh/9rN9mptSuAa9NB+/49vcQtX3FZ+eUqh8jrWNcxscFPM8GNvvX4my+DNHRzwRPs1PfeXAtEWm2GXg6dWOBQOL5Yf1toYesRaXyQIn7ZRQlz+3cNcXAeDxhrRJdksOGIPVxHOl5hL4ZQ0x18thZXvh8/NNsuRm1/COqPhMJ6m/A0Ex9klD0QUxblsSceoOX2RBOVa9WYf6noSyv8sXPhdktDeQk8TiYQ43GlpABDoa5GKl5fRegd9yznzqMgffKhlbLweyiF2LylpNJgm3DHg2K4Vv3UqJ9cB9rzV2DbaaDDb+3QqR04sqa3AeyZl8+U2GJOEtEI0xgJ5MfDylbTdUMd0fd7sNpJZKyIZIedwtOozHOhqxWPmY1ZR7226euggfFprtyJ+0sl6jFvyAp1vcNf7CxmrQiG/WZ+K+HlKfuEPwLX/09KZ2AXlD1gjafWkicIkbxDaCyIr2eJOgoxbVruHD9DYolEKm3Yu8LOS7bgfwCoqMxC+o1fp33oQzEorOEHYuPco+x6wHRUGSWOP6g203o9oQ/rxjjianfZY/26nyvRP5QnMssXwDXLSnERp5RZ4psRB5UxlI3BAKq1W7hY7Z+vfweWHbpC6SvBAAJUxmGg95Rz4QooRPPkPjv3MmV26apn4= X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 1c172408-8f58-48d7-837b-08db628e96cb X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Jun 2023 10:54:36.0910 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: htQtj3cR2nJLB6R9BIkYPtcBba+Vw2kS73caobEuUgMusmkHeWHo9/ySVcmTnAJBJXnw4H7eKfINNL1cxA1jTT3GUDsuqEpyTCD6RG3DTSs= X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH7PR03MB7105 On 31/05/2023 6:51 pm, Alejandro Vallejo wrote: > diff --git a/xen/arch/x86/cpu/microcode/core.c b/xen/arch/x86/cpu/microcode/core.c > index cd456c476f..e507945932 100644 > --- a/xen/arch/x86/cpu/microcode/core.c > +++ b/xen/arch/x86/cpu/microcode/core.c > @@ -697,6 +697,17 @@ static long cf_check microcode_update_helper(void *data) > return ret; > } > > +static bool this_cpu_can_install_update(void) > +{ > + uint64_t mcu_ctrl; > + > + if ( !cpu_has_mcu_ctrl ) > + return true; > + > + rdmsrl(MSR_MCU_CONTROL, mcu_ctrl); > + return !(mcu_ctrl & MCU_CONTROL_DIS_MCU_LOAD); > +} > + > int microcode_update(XEN_GUEST_HANDLE(const_void) buf, unsigned long len) > { > int ret; > @@ -708,6 +719,22 @@ int microcode_update(XEN_GUEST_HANDLE(const_void) buf, unsigned long len) > if ( !ucode_ops.apply_microcode ) > return -EINVAL; > > + if ( !this_cpu_can_install_update() ) > + { > + /* > + * This CPU can't install microcode, so it makes no sense to try to > + * go on. We're implicitly trusting firmware sanity in that all > + * CPUs are expected to have a homogeneous setting. If, for some > + * reason, another CPU happens to be locked down when this one > + * isn't then unpleasantness will follow. In particular, some CPUs > + * will be updated while others will not. A very stern message will > + * be displayed in xl-dmesg that case, strongly advising to reboot the > + * machine. > + */ > + printk("WARNING: microcode not installed due to DIS_MCU_LOAD=1"); > + return -EACCES; > + } I had something else in mind here.  Right now, this will read MSR_MCU_CONTROL and emit a printk() on every microcode load, which will be every AP, and every time the user uses the xen-ucode tool. Instead, I recommend the following: 1) One patch moving the early-cpuid/msr read from tsx_init() into early_microcode_init(), adjusting the comment as it goes.  No point duplicating that logic, and we need it earlier on boot now. 2) This patch, adjusting early_microcode_init() only.  Have a printk() saying "microcode loading disabled by firmware" and avoid filling in ucode_ops.  Every other part of ucode handling understands "loading not available". In terms of the commit message, you should call out the usecase explicitly.  This feature is intended for baremetal clouds where the platform owner doesn't trust the tenant to choose the microcode version in use. Also, I'm really not sure what your 3rd paragraph is trying to say. ~Andrew From xen-devel-bounces@lists.xenproject.org Thu Jun 01 10:55:42 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 10:55:42 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542399.846208 (Exim 4.92) (envelope-from ) id 1q4fy1-0002sf-KA; Thu, 01 Jun 2023 10:55:41 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542399.846208; Thu, 01 Jun 2023 10:55:41 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4fy1-0002sY-H6; Thu, 01 Jun 2023 10:55:41 +0000 Received: by outflank-mailman (input) for mailman id 542399; Thu, 01 Jun 2023 10:55:40 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4fy0-0002oj-S7 for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 10:55:40 +0000 Received: from EUR03-AM7-obe.outbound.protection.outlook.com (mail-am7eur03on20604.outbound.protection.outlook.com [2a01:111:f400:7eaf::604]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id d83a56c9-006a-11ee-8611-37d641c3527e; Thu, 01 Jun 2023 12:55:39 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by PAXPR04MB8391.eurprd04.prod.outlook.com (2603:10a6:102:1c4::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6433.24; Thu, 1 Jun 2023 10:55:36 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6433.024; Thu, 1 Jun 2023 10:55:35 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: d83a56c9-006a-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=JptmkSkUj3VEK3ru1blj2zJ5pcoTeUCROYQhpTmSS5LWkBjUaabi0scVmqN0qGDZBs+ht4u/9PQOkch4b3t8PddVETBZpQARSL6Nqe0tVIQ9Vnckj1gFuUbduzoxWWQNSp+uhCH4CkaKhzeV+xgd5VQJjLPqkB5DvZA3al8Gb7Ax8o14MbGklKAO9SIzBYYwCr8Wft8qLdizIMtmnIgjYxGFS1K7NQzyS9XnmgxOugejo5UQ+g4L2pr0ZKJ1KgpuijKmMKmjSEL2wpyX53/brkmFddLUCXUbMORYAIbJyJxsvktiDY1EtIppGi4frGE6RcyWuKDJ+7J24OKba7+cOw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=fPaLZ3eIEWCN6qynQ1yJDPYU+BI/6mruV4wlPONjL4c=; b=V9OoUAKh4bIMuAuFIdyFvSWW8h9IMeIxY01b9566B8gAry3zdF44xWtfS3Dv53b4tSQGb5rM8TYEqTID2JNJJ0Mey7NLdni7oVIZatnJS8Uwfhx3HVZmV45am80W5Z1iZjkqWmtXyMIEXgUDJOEiPtpADikAdNn4EL7xEa53ZAJNcnhvypO6IheurTgzbI+pgxRz6nYNUaaoh9zvwGLGgke/BXr/VWEMbTLckWydMMk5DmrvQo+U/CqOB29OxqjchFskejzTF4MymX57wqJJ1oZop4PQljYL8hJGzeu4KK+2wf7mbjp3jY6UmPClf/hvrMCqSJYK6gQJJD4YeMbzvA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=fPaLZ3eIEWCN6qynQ1yJDPYU+BI/6mruV4wlPONjL4c=; b=tkZw4HF7uwJ9JYvcLcbxE0A2RpvoQbDKKYYowNRMqgz9lWu6QVECkf75GMYsKvaQx3KKPnQmDt519fLIw6msYRIkOj7qHsdyT69zdmFyr6+FyPy2AJ494OK1kRK/lxijo2JrNGmAez7EgpdQTUBoXTJUEatqAPRWtSp+KVqIyRcFGSRwC+L5/nC36n3B25rMq5i1urVk3khM8adqP9lo2H1SvtVsF/VnbQNrF0t2uLA76sMVodUdi1M+DMdwYOP6BiCxT8syI6upxsPf9sfmj646VgSJtmGYnCvK+ZxHHnrXs2OsEyofllu3iDGxuPJBdh8kanqF9EId47IyTNiyOA== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <924a6ee3-8d3e-a3e0-067a-8295be72e2d7@suse.com> Date: Thu, 1 Jun 2023 12:55:33 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Ping: [PATCH v2] x86emul: avoid triggering event related assertions Content-Language: en-US From: Jan Beulich To: Andrew Cooper , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= Cc: Wei Liu , "xen-devel@lists.xenproject.org" References: In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR2P281CA0007.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:a::17) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|PAXPR04MB8391:EE_ X-MS-Office365-Filtering-Correlation-Id: a9d3d0cd-cd5c-4194-129c-08db628eba83 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: IFklEDcetU/6tOY0lcq/EuRk6eLAlnWUC76X4bLZvrxceU5vatfscQVI4eunOdDCLqzo11RRQeWZUTP7l2eNJf4TT35JtFhExqfEUpnxOj6pNx9vv73ljpskRPjRsUOu28n1nWdrYXVMkvKxhac28eJ5cfYczVV+MyO4cc5e8shzC+zG4BQlRgyzlOv9vPGIbjELjtm4Q0W6/WQLcFzNeZ6Yralxt6GbDXszGT6ZPLjjUu75jtJ0Kbn80gGOAF362GXywcppm+IMhUgo6UMOZHm3UfSUIkhnDDMUen9nBYKUtnaUMPvQQ8YaATZETbUXaGULDGyt46XJl/9TsEMyWpYmIK1aErHx9OBUNARumK4jOegEUirkG+u63PV3uVYVm2r6nV3PzQdc6GSoSfb0iJHrH1DdY3gwUNy6H1/LCv4eiLzhqI+81ycCmiZjfC6Aw34hnCBWadbDOM2+55QsQhw2vX+BYLUPVy5nrcCTZYH89NYPksxWaZTR5lsKH32IHjgzFEl8K3bPVtHwalORw8h0S/qJYY6o4MI7bq2NYqVou1aJa9/vrahe7CHv9b8hkoeCM/MAy7IkinZzgppbJ08mq0w5asejyR3JMo6FEhv7yvUoU0VFfnzI3rACsvf4Ltaoh6scwB93PM5yaQ4ZLg== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(396003)(376002)(346002)(39860400002)(136003)(366004)(451199021)(8936002)(2616005)(83380400001)(186003)(4326008)(2906002)(66946007)(66556008)(66476007)(478600001)(54906003)(316002)(110136005)(6506007)(53546011)(6512007)(5660300002)(26005)(8676002)(41300700001)(6486002)(38100700002)(31696002)(86362001)(36756003)(31686004)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?MHgycVZ3WlgyOXF0TW5nbC9YeEpWd2hUaHp5OUpTa0xWN0JISjB3NGhDREU0?= =?utf-8?B?YjNYNkRsbWNuTWJYM3R0VVZUZDEvQm5aSUMwRDFXdU16VDhubXpNcmRqaXNu?= =?utf-8?B?QndDTnhhNm1jTGhyNTZxMzdqWFplQzFXSVdpVGlKSnRhTEVabjV2SW5oRDI4?= =?utf-8?B?eHk5L1F1WURpRGN5UjhGR2JkQ0lFd0dWQzlkV2lUeU1qS0g5T3hMVXZ1dDZC?= =?utf-8?B?QlQzVFMvQnZGQWhhRkllN3diUThST0ltc24zWUpwdzc2VU5aNU43YkVqeE10?= =?utf-8?B?LzJtMmx1NkFFRisyUnBWMUdIOTB1NDE4em01cTJ4YUwyUHA5R3NuRzUyVmVN?= =?utf-8?B?OUxTWDNtVHo4RUxLWHZ1d1QyM1VGbWtCcWZnOFpaa2RCRHUrNEphZFg2bEIw?= =?utf-8?B?RXdOcGZVTkczNm44eXJnR0JmdWFHd1ZFRHBzcE42TXV4Wk9qRkIrUEQrRnYr?= =?utf-8?B?ZnBpU1d3QTMvUkp5YjVQNG1qK0VQY0p6QWZRS3JncnhWRnRNOUE3SllKZjQw?= =?utf-8?B?N2hqVjcwYXA4alA5eUF0OVpKRVhZR1lkRTV0ZWRnMnJvUzNIb2d2aHd6QXZH?= =?utf-8?B?U3M4UVRvdnVwbFRVazExUU9sR2lCaVNwU2QwamZlUmNCeU9SRUZ3UDR4dVc2?= =?utf-8?B?TTNQajBQT0xlS3h4dEFSR3d4OTJXa2RRRnhRYlI1K3A5Y1daeFF4Z25ULzJR?= =?utf-8?B?dHQxUGJIdmZLNGtpV29DRGtuSEhyeG5KUzVRNUg1YnB6RmlCN2IrZE4zRXZ3?= =?utf-8?B?TkdubDFraG9na2Q4dGl2M0pTemRzNTB3RitPWE1tYXY4YXJiSGRGYVRRRFg0?= =?utf-8?B?cnFOcGt5OCtFRnYwUjJ5OWYyMlBzWXN5WWQ1VE9aUWF5eW9zWHZMZm9pdG1W?= =?utf-8?B?WkJCdTJKTXZ6Rkl6MDducElIeDhmMXlrQnRKbTRhTmFEYkJQM2JZdFZBVWhz?= =?utf-8?B?RjVxbThYcjNyaUVVQUN5dmoweHphd2xDL1dMUkNML1RrNVhsa0UrVFk5L0lZ?= =?utf-8?B?Ly9Ka3RST1pHZ0MxTTBvQ2pqdDR5SHhLUzFPazFNQjN4MURqVDJPeE1pVFpW?= =?utf-8?B?aVlZMXZUSVkrNW1yT0h2VUFaMFpNVTlWN1lCOE10Ryt0MUtDem5sK2RRMHlR?= =?utf-8?B?cDF0N3ZxWktxQ2pWb0hvOXdmVkJhWVZBWjViUHpMVDdDVEx5OS9USUpYbUJn?= =?utf-8?B?ZzZqN0dIZmxBazRTZ09TeDd3R2FaTG5JWDRvVHJWOHYrWCtLdU9XYy9aWkRZ?= =?utf-8?B?WWloSm9zRlJKMmg4N3k3czZtOHErL3dtSEM2dXFTUEY0Q0l0K1R0VlBRYnJJ?= =?utf-8?B?KzF5M2ZKMWxtVU5idVVKV2lXQXozQnBwZ2ZDVjlNV0I1L01adlBpYU1BemZw?= =?utf-8?B?ZXE0bk4waWc4NFR6aGR0OWtBMnpaY0VrSldpTjNpbEw0RHVoWmZJVmNqczBH?= =?utf-8?B?a0h6QWFydFo0NFZCaXhiUFlpT3BMNTB6REd2cCt1ZlMyaFdNVGlHVWNXVkhL?= =?utf-8?B?Z29nZkxyVHVxUjlOZ2pLOCs2TmR5SHFmUENEajgxNlFkQURpb2ZqbGEzSUNL?= =?utf-8?B?RGxNRTMrQ1J4MnFSTlFLdnZaaXhCT1VJM0o3QnlVbWhPckJPOERQejJqMkNG?= =?utf-8?B?SjlEL0VZRmVzVVNOVlFOakV5ZDh0Qkpudm1KRlBQMUkvUGtTazkySGxac2Jp?= =?utf-8?B?YmRTY1NzTkJnZitKaGtFckJ3WnhOOWZiN0dJQVJOOUwwQWRIYytTS0lpU3pU?= =?utf-8?B?WjJhREFQMm1NT1pJN2Q4S2c1SUUyMUZBcGtVbS81OUtELzE1MXo4RzdRZmt1?= =?utf-8?B?YzduMkRlVnZka1JES0o1NVljN2xlY1JlK1BvV2NuR2REQmdiWExzSHZiSGNQ?= =?utf-8?B?MVZySDNhN2JjaFF6eDU5eDB6RlhwSWpMNnZXZGZaZDN4b3ZwOHlJcWliOCti?= =?utf-8?B?bWN5MjVSMzQ5YlVwWUdTeC9aYS9GT3V3VjVzUUhheEJtL3BDRUpvcUNSV2VL?= =?utf-8?B?dXJLcmhWdjIva3RDdXhnTnp0SVR0b011b01zcElMcGEzamxpbDJ4cDYyZFhK?= =?utf-8?B?MXVtSGQxdExNMFNCS2xxNStSYlVpVlVRanlraHJsUnNEZVRhdWVzdVV6OFl6?= =?utf-8?Q?TXBnmUdYvrfe0IOam4YosxdfD?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: a9d3d0cd-cd5c-4194-129c-08db628eba83 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Jun 2023 10:55:35.8672 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: FrtADA+x1msVE7ehKSKFG0nwrv5JXRMq2WqDAU5TgNwQ0B8S2KppqNscYfbeQjaMRqWEhmJ1gzE2dDrbYc6OTg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB8391 On 17.04.2023 14:23, Jan Beulich wrote: > The assertion at the end of x86_emulate_wrapper() as well as the ones > in x86_emul_{hw_exception,pagefault}() can trigger if we ignore > X86EMUL_EXCEPTION coming back from certain hook functions. Squash > exceptions when merely probing MSRs, plus on SWAPGS'es "best effort" > error handling path. > > In adjust_bnd() add another assertion after the read_xcr(0, ...) > invocation, paralleling the one in x86emul_get_fpu() - XCR0 reads should > never fault when XSAVE is (implicitly) known to be available. > > Also update the respective comment in x86_emulate_wrapper(). > > Fixes: 14a6be89ec04 ("x86emul: correct EFLAGS.TF handling") > Fixes: cb2626c75813 ("x86emul: conditionally clear BNDn for branches") > Fixes: 6eb43fcf8a0b ("x86emul: support SWAPGS") > Reported-by: AFL > Signed-off-by: Jan Beulich I think this, addressing a real issue observed with the fuzzer, would be quite nice to go in rather sooner than later. Jan > --- > EFER reads won't fault in any of the handlers we have, so in principle > the respective check could be omitted (and hence has no Fixes: tag). > Thoughts? > > The Fixes: tags are for the commits introducing the affected code; I'm > not entirely sure whether the raising of exceptions from hook functions > actually pre-dates them, but even if not the issues were at least latent > ones already before. > --- > v2: Also update the respective comment in x86_emulate_wrapper(). > > --- a/xen/arch/x86/x86_emulate/0f01.c > +++ b/xen/arch/x86/x86_emulate/0f01.c > @@ -200,8 +200,10 @@ int x86emul_0f01(struct x86_emulate_stat > if ( (rc = ops->write_segment(x86_seg_gs, &sreg, > ctxt)) != X86EMUL_OKAY ) > { > - /* Best effort unwind (i.e. no error checking). */ > - ops->write_msr(MSR_SHADOW_GS_BASE, msr_val, ctxt); > + /* Best effort unwind (i.e. no real error checking). */ > + if ( ops->write_msr(MSR_SHADOW_GS_BASE, msr_val, > + ctxt) == X86EMUL_EXCEPTION ) > + x86_emul_reset_event(ctxt); > goto done; > } > break; > --- a/xen/arch/x86/x86_emulate/0fae.c > +++ b/xen/arch/x86/x86_emulate/0fae.c > @@ -55,7 +55,10 @@ int x86emul_0fae(struct x86_emulate_stat > cr4 = X86_CR4_OSFXSR; > if ( !ops->read_msr || > ops->read_msr(MSR_EFER, &msr_val, ctxt) != X86EMUL_OKAY ) > + { > + x86_emul_reset_event(ctxt); > msr_val = 0; > + } > if ( !(cr4 & X86_CR4_OSFXSR) || > (mode_64bit() && mode_ring0() && (msr_val & EFER_FFXSE)) ) > s->op_bytes = offsetof(struct x86_fxsr, xmm[0]); > --- a/xen/arch/x86/x86_emulate/x86_emulate.c > +++ b/xen/arch/x86/x86_emulate/x86_emulate.c > @@ -1143,10 +1143,18 @@ static bool is_branch_step(struct x86_em > const struct x86_emulate_ops *ops) > { > uint64_t debugctl; > + int rc = X86EMUL_UNHANDLEABLE; > > - return ops->read_msr && > - ops->read_msr(MSR_IA32_DEBUGCTLMSR, &debugctl, ctxt) == X86EMUL_OKAY && > - (debugctl & IA32_DEBUGCTLMSR_BTF); > + if ( !ops->read_msr || > + (rc = ops->read_msr(MSR_IA32_DEBUGCTLMSR, &debugctl, > + ctxt)) != X86EMUL_OKAY ) > + { > + if ( rc == X86EMUL_EXCEPTION ) > + x86_emul_reset_event(ctxt); > + debugctl = 0; > + } > + > + return debugctl & IA32_DEBUGCTLMSR_BTF; > } > > static void adjust_bnd(struct x86_emulate_ctxt *ctxt, > @@ -1160,13 +1168,21 @@ static void adjust_bnd(struct x86_emulat > > if ( !ops->read_xcr || ops->read_xcr(0, &xcr0, ctxt) != X86EMUL_OKAY || > !(xcr0 & X86_XCR0_BNDREGS) || !(xcr0 & X86_XCR0_BNDCSR) ) > + { > + ASSERT(!ctxt->event_pending); > return; > + } > > if ( !mode_ring0() ) > bndcfg = read_bndcfgu(); > else if ( !ops->read_msr || > - ops->read_msr(MSR_IA32_BNDCFGS, &bndcfg, ctxt) != X86EMUL_OKAY ) > + (rc = ops->read_msr(MSR_IA32_BNDCFGS, &bndcfg, > + ctxt)) != X86EMUL_OKAY ) > + { > + if ( rc == X86EMUL_EXCEPTION ) > + x86_emul_reset_event(ctxt); > return; > + } > if ( (bndcfg & IA32_BNDCFGS_ENABLE) && !(bndcfg & IA32_BNDCFGS_PRESERVE) ) > { > /* > @@ -8395,7 +8411,9 @@ int x86_emulate_wrapper( > * An event being pending should exactly match returning > * X86EMUL_EXCEPTION. (If this trips, the chances are a codepath has > * called hvm_inject_hw_exception() rather than using > - * x86_emul_hw_exception().) > + * x86_emul_hw_exception(), or the invocation of a hook has caused an > + * exception to be raised, while the caller was only checking for > + * success/failure.) > */ > ASSERT(ctxt->event_pending == (rc == X86EMUL_EXCEPTION)); > > From xen-devel-bounces@lists.xenproject.org Thu Jun 01 10:58:14 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 10:58:14 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542403.846217 (Exim 4.92) (envelope-from ) id 1q4g0J-0003Um-0B; Thu, 01 Jun 2023 10:58:03 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542403.846217; Thu, 01 Jun 2023 10:58:02 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4g0I-0003Uf-TV; Thu, 01 Jun 2023 10:58:02 +0000 Received: by outflank-mailman (input) for mailman id 542403; Thu, 01 Jun 2023 10:58:01 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4g0H-0003UZ-KZ for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 10:58:01 +0000 Received: from EUR03-DBA-obe.outbound.protection.outlook.com (mail-dbaeur03on20630.outbound.protection.outlook.com [2a01:111:f400:fe1a::630]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 2c38f91d-006b-11ee-b231-6b7b168915f2; Thu, 01 Jun 2023 12:58:00 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by PAWPR04MB9957.eurprd04.prod.outlook.com (2603:10a6:102:385::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6433.24; Thu, 1 Jun 2023 10:57:57 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6433.024; Thu, 1 Jun 2023 10:57:57 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 2c38f91d-006b-11ee-b231-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=kE6cDovx27a+yXTkOBkf0xfI14zLEkP1S4DeFUVlCCwUUQpK7l3FGEDfllYq9WCQd3qnVz61/ogU5TpYjyBNCuPDi4auU/NPRZ4ClQEMhoEVs81ib3D880CUD/DuWCDBHBPiP5j0zZxuomdRXvzRwnNkyRv4L2tsQ1VzA5s6Ji6xI+oclvR08/beUOOvJgUGkNA9zaY8d6B7+QxBvin2FhmS9FSQBW8IqsAwJ9t7LrLncPMdD4aKKDRskoAZsgmdhGyRKi8rkkjbpkoPVLzrb5Gzo8HVQw2PG01OWMprB8Lqe4Y/stAy74fO+PHHfseckzsfRyr/RWwrvQNGddtmaQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=hMhALOEjyfOey7mcVHlpBF5AEhNg87lIyB9OgzmwrFw=; b=gkFwS3JR2heiTGhbCtr8993daZB/j7tKooJl867Fewta8+zybXIVgVo+nQbQ0fOBWrnPoiv6dRqQBlhvfpTu3Jw7vSZxNN+bd+lIP1qEkpZEWm/C4SDkxpiXoC30v9LRF4EBcrTTjjY/yK6hycu999nnaFZcsjzs536T6pDBx6T50bTr284NHzHEqhiSXKpjrWMrKYM/Q2Kgfn1c/iHHIZCA65wt5dXV2l/lSDgwqkVxFuSHnC1Y97Irjg/MvtJsB/gRoMs+HXK7vGWEri5gTKAT15LqQ37iS1I5caNw9qWvv3D4jiYMT+Qww5kWKBs5JUm9JcrrlSG4qm3BXUlm7w== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=hMhALOEjyfOey7mcVHlpBF5AEhNg87lIyB9OgzmwrFw=; b=l9qyXrfT+L1MvAFeFY3q0zw7WtMFvClDgErB+6SRvFt0jbuFHryVYjIWnFjpetpvpcOsI9mkh9H5sZfg0Ik+Bg2OqXtTsyT+ASS86WmbOimTRYExDHKEQKhTxYu8ARGePSSWcvdK9UzE9ORZzagPUbCoLRclbMQmWIWx9nKcqanpbE516cWjrkzCuOzyRm173tSt+MwMMOq2Lx+kkyiqSTF1tr7ed/yK6TtSt6/sxfj+8s3nlJi6h1Y7zw3/jHQSo6JpqLZiRvTCtyRMnh23DyQ4aNNW3Tx11Pz/8zJd9mLLAGBODBXyY9HTFS4VANF26xQYxiE0hPeuyIHtzMu77g== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: Date: Thu, 1 Jun 2023 12:57:56 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH] MAINTAINERS: remove xenstore related files from LIBS Content-Language: en-US To: Anthony Perard , Wei Liu Cc: Andrew Cooper , George Dunlap , Julien Grall , Stefano Stabellini , xen-devel@lists.xenproject.org, Juergen Gross References: <20230522160008.27779-1-jgross@suse.com> From: Jan Beulich In-Reply-To: <20230522160008.27779-1-jgross@suse.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR2P281CA0169.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:99::10) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|PAWPR04MB9957:EE_ X-MS-Office365-Filtering-Correlation-Id: 7a2e0a5e-d22a-4b1d-2d49-08db628f0f06 X-LD-Processed: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: s0GJHwW13QiYd7KDom3H/dljzbhFRVNxJZPhf2SiIrHZJEhAViFFqeA3JTPYU+jhXget79sCI+pnx2kqOEJ5FU5vjo5KykPLru9RuGXda0OQA6u0SNezxTTr0uITn1IaMyHXHlBsX3Nni7pxkoJAKPRqhsiLcv8XwSEFiY/0jgAiB7GosV/9RDqgJQxQZfihcdHyWLP8RRFnzRBJaykfBqL9ZOzPbc/NsNgqnxOPjljapzq0YBkj8SxZ2yDczh09JBWJOcWJtb8/0iSTy+DfkwgPzGGJQcMw6lZ5uyH9Jp6N5DrSaUW8GLZV6jbwY4PUrJeZfm5KHGloNatVcXICfaD63w/DgPryXV9EWx26zYW9HFD5u+K3O7U5yC8HfrPp4yjp2GnbVpSixlaCmzDI8sR3TF6FRXZJq2IWUV/dpEb6aX37p6DNrY+8tq0wjrhHQn8Pd9DlukJoSqUbP6IxiDsIL/s/EE3/MGwMfiekApAGp1CmhDGkBk5CjoVPafqs5bY1lLizLH17HiI6UFId2+iSeRqwgSbhXnrluWPbpcvEmeWueyYgx+uzmAiNhPevPtZhEZmnlbuTf4Iyz9Ibo1gz9/duqXaYI8AlMh3LPhhAICFbPrLS/ZBhlQSnYkru5ZZzWcDhg2bZE5zt3Qov+Q== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(396003)(366004)(39860400002)(136003)(376002)(346002)(451199021)(6486002)(316002)(5660300002)(2616005)(41300700001)(8936002)(31696002)(86362001)(8676002)(478600001)(107886003)(38100700002)(186003)(6512007)(6506007)(26005)(36756003)(53546011)(54906003)(31686004)(110136005)(4326008)(4744005)(66946007)(66556008)(66476007)(2906002)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?bEFGOGNkR1pHT2JMS0VOaVJ0RHJIVmtmRlFHMGJ1Nmc5cGowT0s1RllOQ3gx?= =?utf-8?B?VWJtTW9zdEh4VENQa01vMHQvcytWaFlacVpDZk5KY3RqTzFhTmxEM2VuVXdN?= =?utf-8?B?am1LUmtHYnlMZXpQaDkvUUNxc1BDSlUvZ2ZRMytLWlFIV1RaSVFiWnRJdGVM?= =?utf-8?B?Rkp1NEp5SERoMXFTaXlQd1ZBVUVyOHJTOXpXS01jZE5xNTBhWFVDL0V0WXZq?= =?utf-8?B?WWpkVm9KY3pKM0NjRTZTNkxVRDZJLzlnNWNUNTNycVBOUnl2UzJWWTlnek4z?= =?utf-8?B?Tzc0ZHY0cWZkZUpaNVBHbEhpbzl5VjB0dWlBSHJlelBXLzBYN1RwU1crOFNM?= =?utf-8?B?QkZoVkhpNnRNa1E4dXpGLzllcEt6d1lLUHNOTHNRbDkrdktVK0NwZEl3eVIx?= =?utf-8?B?YnZFUkdDZDBtUkp6aGcxcG10Rk03bDlMNjA2QU1iV3lrdmg4WFJ4QTIvZlVL?= =?utf-8?B?TXE3RmlCeDNWR3V2K0xOempnd3p1ZlN6TGExeDBwQ2dudnJWZllOVzg4L2pG?= =?utf-8?B?RGxEcHZ5VTF3c2lZYUQ1ejdBbDk0eGlYSUFnZHBLYmVBL3lyQ0NrYXZvSDVV?= =?utf-8?B?OXcyb1lVcnV1WGh0U2E2OHN1UHhoVlpWUHF0OVJzTHF0dnpDSXI1Zzhtakg3?= =?utf-8?B?Zk8xbmlQanhZVFZFaVkyejdBbXFOWER6SFYyODQwSFRObnEyWUFQeS9iN29Q?= =?utf-8?B?TjA1bHNJamFlck0ydHdCZzcxaHpsVDk0L0taNWhSUTRRRXRqNktnSmI5R0Yz?= =?utf-8?B?RWhyNUE0aU9wbTU2NFpnYVYzU1Q1ZlVYSFhoc3BiOGhWamhlc3l2cW52WGNW?= =?utf-8?B?blZ1ZFRGRWNtRUJvZERCTmw4MjA5QkhSMEdCNFlhZmpyOVozSnNMOXloc3hi?= =?utf-8?B?NmdSSllubGpqaXpwMzRleHduMkJNWjdvUTlBYS9iRldianNnTnkvS2s2dm13?= =?utf-8?B?VjNvWFEwclprR3VjemhvZE5UOGRVeGNBOE82WG94VzhPVWM1T3QvVkFJVGhi?= =?utf-8?B?b1NvZ2U5bUZkUWZQRiswM3YvNkNOWEZ4MndncW1xYyszdElqcDBlU29hS3Y0?= =?utf-8?B?UjE1L3pYTEpzUG9tNVFYWHZORnN2clZ4dGZ3TWM0RDRSL3VRUUppdlE3Sk05?= =?utf-8?B?UUpEZXRTNU5EeklSQjJsY0pQOVNXOWdWdnFWVzF5SlFHR0NkQndlY0J3UWpP?= =?utf-8?B?eFVoaUJpTVVNMTI4em45K2VWUmF4RExFZVI0dmM3d2UxZUFJUy9rMzNqWDNF?= =?utf-8?B?MlF4S0hEUFdHRG5RZFFRMGM5QW1EZExLeWFqZWRRMlFTdUlaNTBzWWJ0S2sw?= =?utf-8?B?S09PT0JkUDZmTDNuOWdnYTdjT3d1a0tOMFZ2RkFrQktUd1lGcURyWXVFK1Zk?= =?utf-8?B?ck9xS0NOZFRJdWNqT2dkSlZHOVM3QzhIZFkvR1FaeWZDR3o3cE5laVllcUpL?= =?utf-8?B?VmhuSllHTWNRbzBnM1J1UHZSZGZSNmF1RXlWbFZYYWVKY2F5SGZ1YndYSDVw?= =?utf-8?B?RWdMWGh2OU9reFRNSTZUdDZ5N1ZPaCtRaXJSdUI4VGpCMzZYQnFLZHNRQlBK?= =?utf-8?B?MFI1TWpFOGFDdWxkWGRKU25saHdrQjJDNGlDd3hScDlCMFprcnRJRUk2aEhM?= =?utf-8?B?ZEhwV0tPVjc5eUJhSDg5TlBtclNpMzFQSEJ4S2VEdy9pMTZ2Uk0vQVVnSGZX?= =?utf-8?B?TGZhZ1QyeWV0aXNLVjJmR0tFUThiS0lSZzBiMzd4UWkzZkdzS0xtODFJSm9O?= =?utf-8?B?bCtLanpnbXljbklYRWxRVUJYNnYyVmIzd0M0aGIxR0lZQUZZT3NEZDVwdVRh?= =?utf-8?B?dVkxZTdITUwwKy80WWdyYmdjZ2I3cXNwOW1mZ1hHVDZOUjNXMEY0aG1aRWRO?= =?utf-8?B?bHZGMjV0aStUR3hNTDkvVk1rMnpqQksvbDVDNzc5VHpkTkxyeXpOWURyQU40?= =?utf-8?B?eWJOZWxYWTc5cXNWQi9ITVZsbFZXMzhoRFVDamF5bTl0WmF5WDUxWE5IcTYw?= =?utf-8?B?Vkh5NlJPQXBKYTRrazNKU21Ta2M4aGpNRjVYcUIrVkJmOEpaUFhnZ0RNWFd5?= =?utf-8?B?QlUwZnJPKzBXdzNmaEx6S1NYUVRZMlA2NTJUaEFRL0FMRjNwZ0NNMnBUSmd3?= =?utf-8?Q?aBSm4zuCEVoI7OFym9+3TXzvp?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 7a2e0a5e-d22a-4b1d-2d49-08db628f0f06 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Jun 2023 10:57:57.7003 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: Aq91BGgf+AbSNnzUekaFYi13UjzxJ4eNHzBHz+UTvzjrBRtwyTa9c4p3qGmjuSVOpHuUK2+bqV1UywyNSyPpmQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAWPR04MB9957 On 22.05.2023 18:00, Juergen Gross wrote: > There is no need to have the Xenstore headers listed in the LIBS > section now that they have been added to the XENSTORE section. > > Suggested-by: Jan Beulich > Signed-off-by: Juergen Gross Anthony, Wei, since this is taking away things from an area you're the maintainers for, I think it would best be acked by you. Jan > --- a/MAINTAINERS > +++ b/MAINTAINERS > @@ -411,8 +411,6 @@ F: tools/include/xengnttab.h > F: tools/include/xenguest.h > F: tools/include/xenhypfs.h > F: tools/include/xenstat.h > -F: tools/include/xenstore*.h > -F: tools/include/xenstore-compat/*.h > F: tools/include/xentoolcore*.h > F: tools/include/xentoollog.h > F: tools/libs/ From xen-devel-bounces@lists.xenproject.org Thu Jun 01 11:13:05 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 11:13:05 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542408.846229 (Exim 4.92) (envelope-from ) id 1q4gEb-0005yW-9a; Thu, 01 Jun 2023 11:12:49 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542408.846229; Thu, 01 Jun 2023 11:12:49 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4gEb-0005yP-4z; Thu, 01 Jun 2023 11:12:49 +0000 Received: by outflank-mailman (input) for mailman id 542408; Thu, 01 Jun 2023 11:12:47 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4gEZ-0005y3-HU for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 11:12:47 +0000 Received: from mail-lj1-x229.google.com (mail-lj1-x229.google.com [2a00:1450:4864:20::229]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 3c61ff18-006d-11ee-b231-6b7b168915f2; Thu, 01 Jun 2023 13:12:46 +0200 (CEST) Received: by mail-lj1-x229.google.com with SMTP id 38308e7fff4ca-2b1a6a8e851so1843541fa.2 for ; Thu, 01 Jun 2023 04:12:46 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 3c61ff18-006d-11ee-b231-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1685617965; x=1688209965; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=qofz0hv4X7M+Q5bS6a11XmenLDXkc2fOL5tpkf9bWU0=; b=LqI+tAo+fouFe8SqblQ/2T649XwugOCBkJAbKCRaQjQnn2nkgQJBisPfTXzhKaE/B3 2JX6cuF0jLDCstq/dahd1ja7MYUlTzTR85mvOg1z8L/N8eIhEQlNqz/YnRnyjXP2LFZ2 6TSazWQVfXJygRFD3MdHZDCVXm+gqnPLFr0Ul9Bd4Q5sskul+dreLty4FLoLtJmZZLbx p9FYeI6fJWtsvutyZsAvThxMryGLnTLtisY+UbjpfmFrEb2Ks+QYIAEtwllUpSpviiVC hBupXaJpaeoO3XK/NfaBOqzcNiD8qLpmI+RO2+4xxJcNQUoGy1Y+cdwGAN8DPzlOkuLd d4Xw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1685617965; x=1688209965; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=qofz0hv4X7M+Q5bS6a11XmenLDXkc2fOL5tpkf9bWU0=; b=QfRT0I7DpBq8VlqzdPM4gwXAm3NV3bN6KrY1P25gKg05PXcnbdn5InRa5d3HfO4MYX 1TmIgbDekJpDJAF3+cMXLjDyIJXyrKbWn2g2q43cuOan5ySxjwd8Bb/DzX9mbpssGZ8z aGNmHrliE2KFh4qXmpnF9ez8ro+IldrjbisgiTkcJVUF+kBO0Y4VCPkr+NbPqoYB5KxK xZtMtfTuCJx9k879J2KMaQhDc1eGbTWvQTCYPeztMajPYu5iYjbL9o9hFHdfxTjTEBPm gqepvvKGRiEfliuSlur9/z88qtxlj6wvNib9ypuGJb3W8qHmAfIvFuhOsnFQ5pLT0XBG aphQ== X-Gm-Message-State: AC+VfDxQZQmFIb1A+aox6VZLCkmhH2NMRlWztEQJXp0yz+eGMkdocL1/ XuEVTF2tSA2+x/B3TbOjzGOz/6tIP32C/KX6VzM= X-Google-Smtp-Source: ACHHUZ7KIPOufvAgPNWZKY7VfVR9sAomuzjzDRRw5/8WsTtlIcxvhrKgFvzdRAyEBv8/tlwMpQ1SiPIkYROZMwMbdjE= X-Received: by 2002:a2e:a445:0:b0:2a9:ee54:9fad with SMTP id v5-20020a2ea445000000b002a9ee549fadmr4387012ljn.7.1685617965168; Thu, 01 Jun 2023 04:12:45 -0700 (PDT) MIME-Version: 1.0 References: <20230601085001.1782-1-michal.orzel@amd.com> <7C760D1D-DAAE-48AC-8B2B-E6140452BE4A@arm.com> <73a143ee-8301-e0c0-a3fc-83ec10441c4c@amd.com> In-Reply-To: <73a143ee-8301-e0c0-a3fc-83ec10441c4c@amd.com> From: Julien Grall Date: Thu, 1 Jun 2023 13:12:33 +0200 Message-ID: Subject: Re: [PATCH] xen/arm: debug-pl011: Use 32-bit accessors for broader compatibility To: Michal Orzel Cc: Bertrand Marquis , Stefano Stabellini , Volodymyr Babchuk , Xen-devel Content-Type: multipart/alternative; boundary="0000000000000a7e3105fd0f847b" --0000000000000a7e3105fd0f847b Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Hi, Sorry for the formatting. On Thu, 1 Jun 2023 at 12:31, Michal Orzel wrote: > Hi Bertrand, > > On 01/06/2023 12:19, Bertrand Marquis wrote: > > > > > > Hi Michal, > > > >> On 1 Jun 2023, at 10:50, Michal Orzel wrote: > >> > >> There are implementations of the PL011 that can only handle 32-bit > >> accesses (i.e. no 16-bit or 8-bit), usually advertised by 'reg-io-widt= h' > >> dt property set to 4. On such UARTs, the current early printk code for > >> arm64 does not work. To fix this issue, make all the accesses to be > 32-bit > >> by using ldr, str without a size field. This makes it possible to use > >> early printk on such platforms, while all the other implementations > should > >> generally cope with 32-bit accesses. In case they do not, they would > >> already fail as we explicitly use writel/readl in the runtime driver t= o > >> maintain broader compatibility and to be SBSAv2 compliant. Therefore, > this > >> change makes the runtime/early handling consistent (also it matches th= e > >> arm32 debug-pl011 code). > >> > >> Signed-off-by: Michal Orzel > >> --- > >> xen/arch/arm/arm64/debug-pl011.inc | 8 ++++---- > >> 1 file changed, 4 insertions(+), 4 deletions(-) > >> > >> diff --git a/xen/arch/arm/arm64/debug-pl011.inc > b/xen/arch/arm/arm64/debug-pl011.inc > >> index 6d60e78c8ba3..80eb8fdc1ec7 100644 > >> --- a/xen/arch/arm/arm64/debug-pl011.inc > >> +++ b/xen/arch/arm/arm64/debug-pl011.inc > >> @@ -25,9 +25,9 @@ > >> */ > >> .macro early_uart_init xb, c > >> mov x\c, #(7372800 / CONFIG_EARLY_UART_PL011_BAUD_RATE % 16) > >> - strh w\c, [\xb, #FBRD] /* -> UARTFBRD (Baud divisor > fraction) */ > >> + str w\c, [\xb, #FBRD] /* -> UARTFBRD (Baud divisor > fraction) */ > >> mov x\c, #(7372800 / CONFIG_EARLY_UART_PL011_BAUD_RATE / 16) > >> - strh w\c, [\xb, #IBRD] /* -> UARTIBRD (Baud divisor > integer) */ > >> + str w\c, [\xb, #IBRD] /* -> UARTIBRD (Baud divisor > integer) */ > >> mov x\c, #WLEN_8 /* 8n1 */ > >> str w\c, [\xb, #LCR_H] /* -> UARTLCR_H (Line control) */ > >> ldr x\c, =3D(RXE | TXE | UARTEN) > >> @@ -41,7 +41,7 @@ > >> */ > >> .macro early_uart_ready xb, c > >> 1: > >> - ldrh w\c, [\xb, #FR] /* <- UARTFR (Flag register) */ > >> + ldr w\c, [\xb, #FR] /* <- UARTFR (Flag register) */ > >> tst w\c, #BUSY /* Check BUSY bit */ > >> b.ne 1b /* Wait for the UART to be ready > */ > >> .endm > >> @@ -52,7 +52,7 @@ > >> * wt: register which contains the character to transmit > >> */ > >> .macro early_uart_transmit xb, wt > >> - strb \wt, [\xb, #DR] /* -> UARTDR (Data Register) */ > >> + str \wt, [\xb, #DR] /* -> UARTDR (Data Register) */ > > > > Is it really ok to drop the 8bit access here ? > It is not only ok, it is necessary. Otherwise it won't work on the above > mentioned UARTs (they can only perform 32-bit access). IIRC some compilers will complain because you use wN with =E2=80=9Cstr=E2= =80=9D. > And following to what I wrote in commit msg: > - we use str already in arm32 which results in 32-bit access > - we use reald/writel that end up as str/ldr in runtime driver > - we are down to SBSAv2 spec that runtime driver follows (meaning we can > use early printk for SBSA too) The runtime driver is meant to follow the PL011 spec first and may have some adaptation for SBSA. > - this way we support broader list of PL011s consistently (i.e. both earl= y > and runtime driver works as oppose to only runtime) I am not sure I agree here. You are focussing on HW that only support 32-bit access. And, AFAICT this shouldn=E2=80=99t be the norm. I think it would be best if we have an option to select the width supported and modify the code accordingly. And yes, I know that there might be some issues in the runtime driver. But they can be handled separately. With that we don=E2=80=99t promote a behavi= our that AFAICT is not meant to be normal. > > Also, before every early_uart_transmit we use ldrb (to convert to char) > which means that the rest of the \wt register (8:31) is zero extended. > > ~Michal > --0000000000000a7e3105fd0f847b Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Hi,

So= rry for the formatting.

On Thu, 1 Jun 2023 at 12:31, Michal Orzel <= ;michal.orzel@amd.com> wrote= :
Hi Bertrand,

On 01/06/2023 12:19, Bertrand Marquis wrote:
>
>
> Hi Michal,
>
>> On 1 Jun 2023, at 10:50, Michal Orzel <michal.orzel@amd.com> wrote:
>>
>> There are implementations of the PL011 that can only handle 32-bit=
>> accesses (i.e. no 16-bit or 8-bit), usually advertised by 'reg= -io-width'
>> dt property set to 4. On such UARTs, the current early printk code= for
>> arm64 does not work. To fix this issue, make all the accesses to b= e 32-bit
>> by using ldr, str without a size field. This makes it possible to = use
>> early printk on such platforms, while all the other implementation= s should
>> generally cope with 32-bit accesses. In case they do not, they wou= ld
>> already fail as we explicitly use writel/readl in the runtime driv= er to
>> maintain broader compatibility and to be SBSAv2 compliant. Therefo= re, this
>> change makes the runtime/early handling consistent (also it matche= s the
>> arm32 debug-pl011 code).
>>
>> Signed-off-by: Michal Orzel <michal.orzel@amd.com>
>> ---
>> xen/arch/arm/arm64/debug-pl011.inc | 8 ++++----
>> 1 file changed, 4 insertions(+), 4 deletions(-)
>>
>> diff --git a/xen/arch/arm/arm64/debug-pl011.inc b/xen/arch/arm/arm= 64/debug-pl011.inc
>> index 6d60e78c8ba3..80eb8fdc1ec7 100644
>> --- a/xen/arch/arm/arm64/debug-pl011.inc
>> +++ b/xen/arch/arm/arm64/debug-pl011.inc
>> @@ -25,9 +25,9 @@
>>=C2=A0 */
>> .macro early_uart_init xb, c
>>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0mov=C2=A0 =C2=A0x\c, #(7372800 / = CONFIG_EARLY_UART_PL011_BAUD_RATE % 16)
>> -=C2=A0 =C2=A0 =C2=A0 =C2=A0 strh=C2=A0 w\c, [\xb, #FBRD]=C2=A0 = =C2=A0 =C2=A0 /* -> UARTFBRD (Baud divisor fraction) */
>> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 str=C2=A0 =C2=A0w\c, [\xb, #FBRD]=C2= =A0 =C2=A0 =C2=A0 /* -> UARTFBRD (Baud divisor fraction) */
>>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0mov=C2=A0 =C2=A0x\c, #(7372800 / = CONFIG_EARLY_UART_PL011_BAUD_RATE / 16)
>> -=C2=A0 =C2=A0 =C2=A0 =C2=A0 strh=C2=A0 w\c, [\xb, #IBRD]=C2=A0 = =C2=A0 =C2=A0 /* -> UARTIBRD (Baud divisor integer) */
>> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 str=C2=A0 =C2=A0w\c, [\xb, #IBRD]=C2= =A0 =C2=A0 =C2=A0 /* -> UARTIBRD (Baud divisor integer) */
>>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0mov=C2=A0 =C2=A0x\c, #WLEN_8=C2= =A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0/* 8n1 */
>>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0str=C2=A0 =C2=A0w\c, [\xb, #LCR_H= ]=C2=A0 =C2=A0 =C2=A0/* -> UARTLCR_H (Line control) */
>>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0ldr=C2=A0 =C2=A0x\c, =3D(RXE | TX= E | UARTEN)
>> @@ -41,7 +41,7 @@
>>=C2=A0 */
>> .macro early_uart_ready xb, c
>> 1:
>> -=C2=A0 =C2=A0 =C2=A0 =C2=A0 ldrh=C2=A0 w\c, [\xb, #FR]=C2=A0 =C2= =A0 =C2=A0 =C2=A0 /* <- UARTFR (Flag register) */
>> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 ldr=C2=A0 =C2=A0w\c, [\xb, #FR]=C2=A0= =C2=A0 =C2=A0 =C2=A0 /* <- UARTFR (Flag register) */
>>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0tst=C2=A0 =C2=A0w\c, #BUSY=C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0/* Check BUSY bit */
>>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0b.ne=C2=A0 1b=C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0/* Wait for the UART to be = ready */
>> .endm
>> @@ -52,7 +52,7 @@
>>=C2=A0 * wt: register which contains the character to transmit
>>=C2=A0 */
>> .macro early_uart_transmit xb, wt
>> -=C2=A0 =C2=A0 =C2=A0 =C2=A0 strb=C2=A0 \wt, [\xb, #DR]=C2=A0 =C2= =A0 =C2=A0 =C2=A0 /* -> UARTDR (Data Register) */
>> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 str=C2=A0 =C2=A0\wt, [\xb, #DR]=C2=A0= =C2=A0 =C2=A0 =C2=A0 /* -> UARTDR (Data Register) */
>
> Is it really ok to drop the 8bit access here ?
It is not only ok, it is necessary. Otherwise it won't work on the abov= e mentioned UARTs (they can only perform 32-bit access).

IIRC some compilers will complain b= ecause you use wN with =E2=80=9Cstr=E2=80=9D.


And following to what I wrote in commit msg:
- we use str already in arm32 which results in 32-bit access

- we use reald/writel that end up as str/ldr in runtime driver=

- we are down to SBSAv2 spec that runtime driver follows (meaning we can us= e early printk for SBSA too)

The runtime driver is meant to follow the PL011 spec first and = may have some adaptation for SBSA.


- this way we support broader list of PL011s consistently (i.e. both early = and runtime driver works as oppose to only runtime)

=C2=A0I am not sure I agree here. You ar= e focussing on HW that only support 32-bit access. And, AFAICT this shouldn= =E2=80=99t be the norm.

= I think it would be best if we have an option to select the width supported= and modify the code accordingly.

And yes, I know that there might be some issues in the runtime dr= iver. But they can be handled separately. With that we don=E2=80=99t promot= e a behaviour that AFAICT is not meant to be normal.



Also, before every early_uart_transmit we use ldrb (to convert to char) whi= ch means that the rest of the \wt register (8:31) is zero extended.

~Michal
--0000000000000a7e3105fd0f847b-- From xen-devel-bounces@lists.xenproject.org Thu Jun 01 11:17:37 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 11:17:37 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542412.846238 (Exim 4.92) (envelope-from ) id 1q4gJE-0006a7-PW; Thu, 01 Jun 2023 11:17:36 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542412.846238; Thu, 01 Jun 2023 11:17:36 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4gJE-0006a0-Mq; Thu, 01 Jun 2023 11:17:36 +0000 Received: by outflank-mailman (input) for mailman id 542412; Thu, 01 Jun 2023 11:17:35 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4gJD-0006Zu-NW for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 11:17:35 +0000 Received: from mail-pj1-x1032.google.com (mail-pj1-x1032.google.com [2607:f8b0:4864:20::1032]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id e7e01dc3-006d-11ee-b231-6b7b168915f2; Thu, 01 Jun 2023 13:17:34 +0200 (CEST) Received: by mail-pj1-x1032.google.com with SMTP id 98e67ed59e1d1-256712d65ceso218257a91.1 for ; Thu, 01 Jun 2023 04:17:34 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: e7e01dc3-006d-11ee-b231-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1685618253; x=1688210253; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=3KLMivggFERHTUQ4oKDCdCn/4yto409QZ31zuIfVcxw=; b=MeUm9YdyFvQ+EmzMauQm3DwWlQ0uGm51kMyqs4PhBgH/mijyrQiG2NopdYymwRbJxY WBb3Tf1Ln6XZqKWhH5S7yQhGi9LLiabQOTeQ8Pbm6c1NX2Xy4WY3/v4jgXe5Wm7qcbDH yEY3HNSHJGimYiFdpPz7nmg67nUmGWb4PamYB7ge/Vdfq0ytqPkY0wlqmD8GxJ3QU2ha YMgYHSJ7Qpd2tGHgPxbotFgYnGiJWb6n/hwdCwf80mscrhqXd4SxH5LEbISu95zojTnv WNtxh7RS0s5xKaXlqlboISfHSVYLF8kc+uAACZeNu+Oizk+CGC+kRe6EXEKAHfyfkH5e ZLFg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1685618253; x=1688210253; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=3KLMivggFERHTUQ4oKDCdCn/4yto409QZ31zuIfVcxw=; b=dACHXyPjcVoRxFS9bPvk1a8fpIEMknxZgRZLwOvea8eD4ao6QzmQ3BgbFbo2iQOAda dbQI/Ah6A1KPzwFVORytO6r8GnCGOJ2Gy/WDULvi0WsrtT89dXblGQNn57wRLMRL9Csp ExrmgQtn/VAAkryfobQw5KvhYB8UKnCXdAXNy72Qp7Goxstjf8PJUTOdb87AliiEODnK IrHhwAW7gmUuL3tNeZ66Wzfy1suQjzak7/H2KGd864EYCUnUte9UtxYIheilCU0prTN7 yb9dUdnH6AjYuewhC/+3UR+9T92OW8nBKhEUj56mxwOMkTromabs/oSFqvTb4dsTspvT MFlw== X-Gm-Message-State: AC+VfDxdz8Bl5Ub2X+DD6SX+2SrEJExqymPI2e0rmOBGPijxcnglkZnl cSYENkKcRjwg+RUcNE3e+gE53LFMqSg2fO5M3sQ= X-Google-Smtp-Source: ACHHUZ7nalKosql0wqoA6eLZQyCHzFFB2nLyOpniZjsGzpomunYZZ7UC7Kcp/mX27yNINR6qH69ddmRyUjrovwtppOk= X-Received: by 2002:a17:90a:9f01:b0:253:50d0:a39d with SMTP id n1-20020a17090a9f0100b0025350d0a39dmr5508485pjp.48.1685618252985; Thu, 01 Jun 2023 04:17:32 -0700 (PDT) MIME-Version: 1.0 References: In-Reply-To: From: Jonas Gorski Date: Thu, 1 Jun 2023 13:17:21 +0200 Message-ID: Subject: Re: [PATCH v8 0/7] Add pci_dev_for_each_resource() helper and update users To: Bjorn Helgaas Cc: Andy Shevchenko , =?UTF-8?Q?Krzysztof_Wilczy=C5=84ski?= , linux-pci@vger.kernel.org, linux-kernel@vger.kernel.org, =?UTF-8?B?TWlja2HDq2wgU2FsYcO8bg==?= , Rich Felker , linux-sh@vger.kernel.org, Dominik Brodowski , Andrew Lunn , sparclinux@vger.kernel.org, Stefano Stabellini , Yoshinori Sato , Gregory Clement , "Rafael J. Wysocki" , Russell King , linux-acpi@vger.kernel.org, Miguel Ojeda , xen-devel@lists.xenproject.org, Matt Turner , Anatolij Gustschin , Sebastian Hesselbarth , Arnd Bergmann , Niklas Schnelle , Richard Henderson , Nicholas Piggin , Ivan Kokshaysky , John Paul Adrian Glaubitz , Bjorn Helgaas , Mika Westerberg , linux-arm-kernel@lists.infradead.org, Juergen Gross , Thomas Bogendoerfer , =?UTF-8?Q?Philippe_Mathieu=2DDaud=C3=A9?= , linuxppc-dev@lists.ozlabs.org, Randy Dunlap , linux-mips@vger.kernel.org, Oleksandr Tyshchenko , linux-alpha@vger.kernel.org, =?UTF-8?Q?Pali_Roh=C3=A1r?= , "David S. Miller" , "Maciej W. Rozycki" Content-Type: text/plain; charset="UTF-8" On Wed, 31 May 2023 at 23:30, Bjorn Helgaas wrote: > > On Wed, May 31, 2023 at 08:48:35PM +0200, Jonas Gorski wrote: > > ... > > > Looking at the code I understand where coverity is coming from: > > > > #define __pci_dev_for_each_res0(dev, res, ...) \ > > for (unsigned int __b = 0; \ > > res = pci_resource_n(dev, __b), __b < PCI_NUM_RESOURCES; \ > > __b++) > > > > res will be assigned before __b is checked for being less than > > PCI_NUM_RESOURCES, making it point to behind the array at the end of > > the last loop iteration. > > > > Rewriting the test expression as > > > > __b < PCI_NUM_RESOURCES && (res = pci_resource_n(dev, __b)); > > > > should avoid the (coverity) warning by making use of lazy evaluation. > > > > It probably makes the code slightly less performant as res will now be > > checked for being not NULL (which will always be true), but I doubt it > > will be significant (or in any hot paths). > > Thanks a lot for looking into this! I think you're right, and I think > the rewritten expression is more logical as well. Do you want to post > a patch for it? Not sure when I'll come around to, so I have no strong feeling here. So feel free to just borrow my suggestion, especially since I won't be able to test it (don't have a kernel tree ready I can build and boot). Also looking more closely at the Coverity output, I think it might not handle the comma operator well in the loop condition: > 11. incr: Incrementing __b. The value of __b may now be up to 17. > 12. alias: Assigning: r = &pdev->resource[__b]. r may now point to as high as element 17 of pdev->resource (which consists of 17 64-byte elements). > 13. Condition __b < PCI_NUM_RESOURCES, taking true branch. > 14. Condition (r = &pdev->resource[__b]) , (__b < PCI_NUM_RESOURCES), taking true branch. 13 If __b is 17 ( = PCI_NUM_RESOURCES) we wouldn't taking the true branch, but somehow Coverity thinks that we do. No idea if it is worth reporting to Coverity. The changed condition statement should hopefully silence the warning though. Regards Jonas From xen-devel-bounces@lists.xenproject.org Thu Jun 01 11:49:17 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 11:49:17 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542416.846248 (Exim 4.92) (envelope-from ) id 1q4gne-0001aK-7c; Thu, 01 Jun 2023 11:49:02 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542416.846248; Thu, 01 Jun 2023 11:49:02 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4gne-0001aD-4n; Thu, 01 Jun 2023 11:49:02 +0000 Received: by outflank-mailman (input) for mailman id 542416; Thu, 01 Jun 2023 11:49:01 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4gnc-0001a7-PX for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 11:49:01 +0000 Received: from esa6.hc3370-68.iphmx.com (esa6.hc3370-68.iphmx.com [216.71.155.175]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 49dfb681-0072-11ee-8611-37d641c3527e; Thu, 01 Jun 2023 13:48:57 +0200 (CEST) Received: from mail-bn7nam10lp2102.outbound.protection.outlook.com (HELO NAM10-BN7-obe.outbound.protection.outlook.com) ([104.47.70.102]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 01 Jun 2023 07:48:49 -0400 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) by SJ0PR03MB5711.namprd03.prod.outlook.com (2603:10b6:a03:2d6::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6433.24; Thu, 1 Jun 2023 11:48:44 +0000 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::192:6bdf:b105:64dd]) by SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::192:6bdf:b105:64dd%3]) with mapi id 15.20.6433.024; Thu, 1 Jun 2023 11:48:44 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 49dfb681-0072-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1685620137; h=date:from:to:cc:subject:message-id:references: in-reply-to:mime-version; bh=2uKlIzqwEkjSGvU8GxUjZI8/i7gemQqlgWMqB5xqL+g=; b=LKqSt9OCptkbv5VlzsYcdgGfFYM1qDcA5CN+UcFtH6k/fUTal4MHFlFL iloVfRaBIlHoY7VpsA5x7dP561WTDeT0uUZN8X3N1Iu3CwhFQoRPYRTv8 jqkwWteXm/DKvWLNfxvgcJ75NYiy/5dQ4cJmrqcJ7ZLgCTTaUOiygh9l0 0=; X-IronPort-RemoteIP: 104.47.70.102 X-IronPort-MID: 110541804 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:zmYdua4QAsNmEFtglyTKNQxRtB7GchMFZxGqfqrLsTDasY5as4F+v mIfXG7UafyONDH3fY0lYYXnoUIG6sKDyIdnTwBoqCs2Hi5G8cbLO4+Ufxz6V8+wwm8vb2o8t plDNYOQRCwQZiWBzvt4GuG59RGQ7YnRGvynTraCYnsrLeNdYH9JoQp5nOIkiZJfj9G8Agec0 fv/uMSaM1K+s9JOGjt8B5mr9lU35JwehBtC5gZlPa4T5QeF/5UoJMl3yZ+ZfiOQrrZ8RoZWd 86bpJml82XQ+QsaC9/Nut4XpWVTH9Y+lSDX4pZnc/DKbipq/0Te4Y5iXBYoUm9Fii3hojxE4 I4lWapc6+seFvakdOw1C3G0GszlVEFM0OevzXOX6aR/w6BaGpdFLjoH4EweZOUlFuhL7W5m3 KYGNRMfLSq6pvOU/r78FfZ1g+gYI5y+VG8fkikIITDxK98DGMiGaYOVoNhS0XE3m9xEGuvYa 4wBcz1zYR/cYhpJfFAKFJY5m+TujX76G9FagAvN+exrvC6MlEooiOKF3Nn9I7RmQe1PmUmVv CTe9nnRCRAGLt2PjzGC9xpAg8eWxHumBNtCTOHQGvhCkHC+3TExCCIsb3Tn/PC/jlWHaf4PN BlBksYphe1onKCxdfH/VRClpH+PvjYHRsFdVeY97Wml2qfSpgqUGGUAZjpAc8A98t87QyQw0 V2ElM+vAiZg2JWKTVqN+7HSqim9URX5NkcHbC4ACAEDvN/qpdhrigqVF445VqmoktfyBDf8h SiQqzQzjKkSishN0Lin+VfAgHSnoZ2hohMJ2zg7l1mNtmtRDLNJraTxgbQHxZ6s9Lqkc2Q= IronPort-HdrOrdr: A9a23:88bUR6gD5KBn5KeAFWTkgmB0aXBQXrkji2hC6mlwRA09TyX4ra CTdZEgviMc5wx9ZJhNo7q90cq7IE80i6Qb3WB5B97LYOCMggeVxe9Zg7ff/w== X-Talos-CUID: 9a23:BAkVI2xXvmlpiVGPSK/5BgU9QN44UW+e9k7xMm2GBSE2V6SQZWSfrfY= X-Talos-MUID: 9a23:EB93fQqBnMggQ0Zkf94ezyFPGdw1waSRMnoizcgPvc2fDB5cayjI2Q== X-IronPort-AV: E=Sophos;i="6.00,210,1681185600"; d="scan'208";a="110541804" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=FY6YFbMmpOi78Z+NrLKJkKGSEIPcHYjuVFzchglaZMxk9spBO4R1inFcL0CSlJtxYDvGjZzfxopM3I/Ikv3tcgXZH0uAQ6zven/Xf2++5kJn5gArZ9WFCOwZUY5oYSMb19EfHbl+qydkAa7bin1FeFL/LLqzwyHO3yC3pOg0jYdOOHu0is49gR63SxHJNFhkfUuaOQ655Rr+ksJarqqxcOzcku1WI6Tkzhpi8AykyHlZwpY7m3h3rAQ62gK2JQcvISnc3kjh5Y7wcZMyd6SQG6bovujPBltrHWvz5oV+XPWllzHRmcn/mFo1fr6PP+KPbWi57C789T+7WUG3ybalmA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=tToSUdSCbOvnHB2O9LkNMXWIiRBIIw5xDKVTTFw/dkY=; b=CiH6ZMh1Jog8RKLXBxgFntKK6eW+BcAe8u0ij8mNNdHTT7BiYxsdydwRNy4thWIOWDTyUI3U/go4iCEBeNsi+YLAVxqhD67H0HjBn+waNmQ1Mw1Lo4IqSs+3uyOlp/RGas8ZS71Qg3a8NvUEXeoQDIPoNSbYVbsr7JEYa+x+yqb8XTGvj/48ZG/ciYBiT5uMF5omaOu1tM2IVNuQ5jth8Rea8rYOR/2lKqTcidNXClJWbarezeFsPcyQtv+oznbT9zP2EX34nR/LB2Mot4lJrtX4DRttt5k5+njFVEHPhLsuEePYDsTm79iXY5M8AcerseorXU9uGMSgu5xTsnL8kQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=tToSUdSCbOvnHB2O9LkNMXWIiRBIIw5xDKVTTFw/dkY=; b=xNqfTQPCXCuGlrg6dfhu42qoIRnWjNLHZZBgqefSjDUxePEUxTr9SDXndlMscOJmvSP/FNUX0pOYYQnh+LbcP5UtfiB5aA2lPrQK5Co/B+YIE/MNnarFDpHKizUqKkPOjMnd9p6601iwSUrXqFnSqU3OHWACcQHFUcIrILSfmKk= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Date: Thu, 1 Jun 2023 13:48:38 +0200 From: Roger Pau =?utf-8?B?TW9ubsOp?= To: Jan Beulich Cc: "xen-devel@lists.xenproject.org" , Andrew Cooper , Wei Liu Subject: Re: [PATCH 2/2] x86/vPIT: account for "counter stopped" time Message-ID: References: <355c5379-ea9e-582c-0131-816204eb3ace@suse.com> Content-Type: text/plain; charset=utf-8 Content-Disposition: inline In-Reply-To: <355c5379-ea9e-582c-0131-816204eb3ace@suse.com> X-ClientProxiedBy: LO4P123CA0482.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:1a8::19) To SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|SJ0PR03MB5711:EE_ X-MS-Office365-Filtering-Correlation-Id: c6cbb7af-584a-40bc-7505-08db629626d4 X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: QMXTJ8n4fyFnZmLus/p96AWG2qM9xQSQ996AH1fGWeGlZ80nzU6GGsYOvNK8QjZaDiyiFRUalGspOPWXgiINXowGRSeNtuNdhjSgl0x0JZRMZDKW8YUgWn6Mfmfshuu3vAxoued6SQSxjPHqJaKAERmFZxrwCxw3UKHBzgR4YyirUiM1BglJXCpRKw8hogy5rM8YABaQAUZHSbXH4PcTyCdzKBHcjoBbNA0OTmgsoz6ETicSkiDpK8Nhfpn5foIH+GbdJFdTLlnmB6e4DHM/lX0czdRR5XpPhOckuvPQ2wQYbMkfcPwCPwYZUx0isWIajz8xA15RO4xyWtAKfGDlklu700e4uqoeYceek1LHOq2Qi2ulAFi8tv4P/Qg+WZ1vcEubY50qOc0DRs3v2ZlQ6XLugypu5OsveFvTd5VTl3lc2Xa8+qrN/7XetcpJ8SBNLsM2lOo+jPnnIpI7MvBaDQRDy69X7dm66jEmLxfUkydQNnSOMoNZWfws6GbTDFFv2lRhQBnoAGDtl0kEq6MG7THmWQCAIp/5pOQEU222WgHEd4khyna2mFciuRLWXSWaFpjiJiz0+uFzflyIhqfSHZLG4pKBb2/htFG06PBTwng= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(7916004)(39860400002)(366004)(136003)(396003)(346002)(376002)(451199021)(54906003)(5660300002)(8936002)(316002)(8676002)(2906002)(6916009)(66946007)(4326008)(66476007)(66556008)(41300700001)(478600001)(66899021)(15650500001)(6486002)(966005)(6666004)(6506007)(33716001)(9686003)(6512007)(186003)(26005)(83380400001)(85182001)(86362001)(82960400001)(38100700002)(21314003);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?d0xDYkpjRk5xdzVsMmUwVTJJeWZmR01HZUhRbWVyQnAxYUV3UDVLSzJ3YTFB?= =?utf-8?B?QlpTZnlheCtSd1h3cjNoOGg1ekFFSTVIWUFsS3BkdjdncnEyQVV3aERNelpL?= =?utf-8?B?UTZMOHI5SFI5bW9LNVFValBtL3kwVUlUK2k5WXBMeFBkZWpSQyswZXJ0dEtO?= =?utf-8?B?VXFOREJmWXUyZ0x4ejBaeklNaCtDclptRlFRa1FwcXdPby8za1hySnhuVG5U?= =?utf-8?B?M1hYZUR6clBOZGdrRlpEWmEwK2h2ZUdPUUVyaGViNXVNamozRTVRK1JGQi9M?= =?utf-8?B?dzZ1cTZhZEEvQUpIQ3FOclg2MEl5MVRRWTZtUWgxR1Y5Qkc2UUo0TW45aE5L?= =?utf-8?B?YzJsOEdpODZ0cHcyNFloTXVLK0FwVHgzaWhETjloeUhvN1hUM0NyVDZpdFFM?= =?utf-8?B?NDgreGNJR2NEYjFjUVR1L2lWZUxaSjRnVDBERnZ2NzczZWxKZW95OEVGbytz?= =?utf-8?B?MzV6cXduMjBOK0lxWjFHRklZMEc5MkFxSUg4eUEwUmhGVnk2ajZxcVlsYnky?= =?utf-8?B?RTRjS0hyRU8xanN5Q3RaaFVQdGRNTWxteEJvMmtXSHc5SXc4TnRtRjUxeHc2?= =?utf-8?B?YkVTaHVFRkY1VCtUL2dVTnp0ejUwVEhDdjFIQ241cnNVZVl6ZEFaMmdiOGx6?= =?utf-8?B?TXNTL3dURndxUW9JWHFVRE9obWtud1pqZHhaK052VG1mL0pZMlMybFUwUFc1?= =?utf-8?B?VGxRaXIvcFg3VFZhanpyUDljbER6b1oyV1VmRTk4cVFpSGxCOFpTSzJKK2Nw?= =?utf-8?B?eTdkdWhHdk4ra3dLREVwV1VSSkFya1JIdmtXa3dvbWxSVVE2Sy8vdnVLUmIw?= =?utf-8?B?RXZMdnp1Z01KK3BIMitKUlBaa3FraWFuY3VzQjVQVzhTVG1FNFBUUVcybDRz?= =?utf-8?B?elp2NmdsOVpLWXR0VmVpcGxaalcyVFNYdVV0eVJ0OEF3Mytsc0Z4NVlnV2dB?= =?utf-8?B?d2h6RmRvYXdVdGRMS3JMaHZHSmxOcmFyOUZFckJHK1UrNzQrY2lWRytSTmR3?= =?utf-8?B?R0F5U1YwN1JVYTFUM2ZhRm03aVk4cU4yTGlLdFZlanNzTWs1NGdFOGhMSCtu?= =?utf-8?B?MVRKWlZ3aUkyU3ZNcVJUZmlpN2lWVTNuc0JLcE1LQUNkVDRxQjhPOWd1V3hI?= =?utf-8?B?UHdWYkdGam42UmRJVUpCbVp0UjdVMXF2Vy9VNVE3QUxWQU1jck54UUpwZ2t3?= =?utf-8?B?d3Vsai9LRi84SnZ2TlVkZFpTMlJMUG1IaExKUTN3NWErTWxZYXE5K2JGRElv?= =?utf-8?B?cWR0OWZsT1o0UG5wdXRpRE9Tc2VPQ1Q2ZmZUVjZrUHpzUFhqWllHTGY0Nk1F?= =?utf-8?B?aTVXdjBJQlJuTXc5YUdOWkIxM3NWandKRVVqVDJaczVRUWFqeVYyMlpnaVQ4?= =?utf-8?B?L3BGbHZWd2tGR3lNeFlGb3NiS0NkQzZ1MFV2Wk9WVU9kcUFIMmcwZ2pSa3lu?= =?utf-8?B?a2dvY3ZvTGhxRytyckYvTkFuejJLZEJUblVUWW9xRGZTN3J4b1FBeS9DQ2g1?= =?utf-8?B?bW5kUzYrK3pzYlQ0ZlozTFh5Wkk0cG9SSHUzSGd2MGhVRUpBR0puZ0phK292?= =?utf-8?B?RWZUUHE2QnVVSk54TFg0RHFXTEJ2VVN2Tmk5QnU3OUt2TGJYdVRTenNMWnhp?= =?utf-8?B?cGdSVTI0S1VEaUI0RVhyN2FRRElrdTQ4Q3FDK05jSGJuRFBBVmxWY3I1K2ps?= =?utf-8?B?Y1FhM3FlSjRIR3BRNnVJQVRPVHRmenU5YVBkRG1rRXdxNG41eVNVWGNBbmRz?= =?utf-8?B?K0lFY0t5bENOcDdOZUxyR2Uvbk1ya3V4TFVOUDdoOU5ZbmtHL3gyTFhSaTA2?= =?utf-8?B?cGZidFdvTFVidnZUZ2ZsZjFtcG1ZenZoM3BuekowTHVjYjZEOVgwaXExUzds?= =?utf-8?B?LzlyRVFnYjdjQ2ZYTFBET1I1NzNmc2Y3OVZMdjVGUTd0a1AwVmw3bVhBUVhS?= =?utf-8?B?MmxCcTQ0cmN0OWFUTHhRaVpMVWUwVy8zWXhXcy8xaVM3Ums1T2ZYV2JxSkJo?= =?utf-8?B?TGNTTXJ2SGgxOXJEYVgrMjZOa20vM3MzSkVJM2hmS3RvS3lhUjRwLzZvR041?= =?utf-8?B?Ky8wUnRTbDh2c0pnSTRKbGlpMUFUVGRSVlVKQ0Q3d1NGdVY2eEhMMnI4SmNS?= =?utf-8?Q?8LeEKC5CypbiPBtiYUjOYu7YZ?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: YUppIjDdt8pSh1C8Mygd8T2Kh84Dcn0f0tcNKaPg7K5+fVAVlFho2fWwE9fXuTf+Xa6+iP6Ne2mjRqQ4e4/tf7gB3TcoPHFQdyb7f9sz3n//5rhTzVudy1PGarOJUiVPYAQc4K24Cm82q7dHAMbK3gFsU6LuNo9wxEOJPkM3jrC61OKSk273YlsNIv1kRmFzWs/ghKsoUnc4jlSlp75W9wZramLGg+R6EKcXVGDb/b8Ql5zmwrNuP1KiVB2B5oRPuUjHWojQz6POF1qqX8j+HvhBUy7DLCfxoRQubS6OLQk9pbi0rN3P/73hl/5ZUeadZkL5G8gXo/tHq3XGRrBSGtuK20cCpD2AwQgsxgEOEnUK1rDOFPvu88Oo+1jG0YW+2TIWb5jXt8VCC+xTvKxhNBWD6jjVnnwuwN0kd9L8ZL2YhWXN3M0EQLeitNm/NcaVKccZbGL8eyckvSWdLRMIu810yb/HvTHItfnNh8LurTflMT1KWN56gDvFNL4OkpbsHs+edBXOee8sUPptVDQm22AKOfX/eZ8RPTD60VwWUMfcJBL7sbhPDr9fga4i2kurI3PL9ECG0KL0FeLgzue+HnjopNPezq+Xxv08N06uCLczs/gRoSkSi1sq3nWMmcBR/9NLWP6jvIrG96x8jIBmZc/IyKXVWSRFKtZHjCnQeVAnJ2XQYdcANu2k/Mjot1LxFv1VUC1ou4aaC1pFFBRkIz3O/zr9py20b8EwC7cAl+F4oS6ovneq25UWU3UZz/qVgaGUSpaUWsjfjfIcLDVjDE/0lOwAYzzYAGdXuuA7XgF7ljKghRkMcufIzQAFX0VS X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: c6cbb7af-584a-40bc-7505-08db629626d4 X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Jun 2023 11:48:44.1906 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: iwA4YxXvRWiXnEBHU6fRfpeI3mauvxESxoDCFMxhBJMPwGMH1IdH4kEhjeJijA+7SE6LB3r1DNrq58jIZyPPUA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR03MB5711 On Tue, May 30, 2023 at 05:30:40PM +0200, Jan Beulich wrote: > For an approach like that used in "x86: detect PIT aliasing on ports > other than 0x4[0-3]" [1] to work, channel 2 may not (appear to) continue > counting when "gate" is low. Record the time when "gate" goes low, and > adjust pit_get_{count,out}() accordingly. Additionally for most of the > modes a rising edge of "gate" doesn't mean just "resume counting", but > "initiate counting", i.e. specifically the reloading of the counter with > its init value. > > No special handling for state save/load: See the comment near the end of > pit_load(). > > [1] https://lists.xen.org/archives/html/xen-devel/2023-05/msg00898.html > > Signed-off-by: Jan Beulich > --- > TBD: "gate" can only ever be low for chan2 (with "x86/vPIT: check/bound > values loaded from state save record" [2] in place), so in > principle we could get away without a new pair of arrays, but just > two individual fields. At the expense of more special casing in > code. Hm, I guess we could rename to pit_set_gate_ch2 and remove the ch parameter. That would be OK for me. > TBD: Should we deal with other aspects of "gate low" in pit_get_out() > here as well, right away? I was hoping to get away without ... > (Note how the two functions also disagree in their placement of the > "default" labels, even if that's largely benign when taking into > account that modes 6 and 7 are transformed to 2 and 3 respectively > by pit_load(). A difference would occur only before the guest first > sets the mode, as pit_reset() sets it to 7.) I'm in general afraid of doing changes here (apart from bugfixes) because we don't really have a good way to test them AFAIK, maybe you do have some XTF or similar tests to exercise those paths? > Other observations: > - Loading of new counts occurs too early in some of the modes (2/3: at > end of current sequence or when gate goes high; 1/5: only when gate > goes high). > - BCD counting doesn't appear to be properly supported either (at least > that's mentioned in the public header). > > [2] https://lists.xen.org/archives/html/xen-devel/2023-05/msg00887.html > > --- a/xen/arch/x86/emul-i8254.c > +++ b/xen/arch/x86/emul-i8254.c > @@ -65,7 +65,10 @@ static int pit_get_count(PITState *pit, > > ASSERT(spin_is_locked(&pit->lock)); > > - d = muldiv64(get_guest_time(v) - pit->count_load_time[channel], > + d = pit->hw.channels[channel].gate || (c->mode & 3) == 1 > + ? get_guest_time(v) - pit->count_load_time[channel] > + : pit->count_stop_time[channel]; > + d = muldiv64(d - pit->stopped_time[channel], > PIT_FREQ, SYSTEM_TIME_HZ); > > switch ( c->mode ) > @@ -109,6 +112,7 @@ static void pit_load_count(PITState *pit > pit->count_load_time[channel] = 0; > else > pit->count_load_time[channel] = get_guest_time(v); > + pit->stopped_time[channel] = 0; Don't you need to also set count_stop_time == count_load_time in case the counter is disabled? (s->gate == 0). > s->count = val; > period = DIV_ROUND(val * SYSTEM_TIME_HZ, PIT_FREQ); > > @@ -147,7 +151,10 @@ static int pit_get_out(PITState *pit, in > > ASSERT(spin_is_locked(&pit->lock)); > > - d = muldiv64(get_guest_time(v) - pit->count_load_time[channel], > + d = pit->hw.channels[channel].gate || (s->mode & 3) == 1 > + ? get_guest_time(v) - pit->count_load_time[channel] > + : pit->count_stop_time[channel]; > + d = muldiv64(d - pit->stopped_time[channel], > PIT_FREQ, SYSTEM_TIME_HZ); > > switch ( s->mode ) > @@ -181,22 +188,39 @@ static void pit_set_gate(PITState *pit, > > ASSERT(spin_is_locked(&pit->lock)); > > - switch ( s->mode ) > - { > - default: > - case 0: > - case 4: > - /* XXX: just disable/enable counting */ > - break; > - case 1: > - case 5: > - case 2: > - case 3: > - /* Restart counting on rising edge. */ > - if ( s->gate < val ) > - pit->count_load_time[channel] = get_guest_time(v); > - break; > - } > + if ( s->gate > val ) > + switch ( s->mode ) > + { > + case 0: > + case 2: > + case 3: > + case 4: > + /* Disable counting. */ > + if ( !channel ) > + destroy_periodic_time(&pit->pt0); > + pit->count_stop_time[channel] = get_guest_time(v); > + break; > + } > + > + if ( s->gate < val ) Shouldn't this be an else if? Thanks, Roger. From xen-devel-bounces@lists.xenproject.org Thu Jun 01 11:49:17 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 11:49:17 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542417.846258 (Exim 4.92) (envelope-from ) id 1q4gng-0001pT-KY; Thu, 01 Jun 2023 11:49:04 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542417.846258; Thu, 01 Jun 2023 11:49:04 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4gng-0001pM-Gc; Thu, 01 Jun 2023 11:49:04 +0000 Received: by outflank-mailman (input) for mailman id 542417; Thu, 01 Jun 2023 11:49:03 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4gnf-0001lc-6s for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 11:49:03 +0000 Received: from NAM04-MW2-obe.outbound.protection.outlook.com (mail-mw2nam04on20622.outbound.protection.outlook.com [2a01:111:f400:7e8c::622]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 4bf8c047-0072-11ee-b231-6b7b168915f2; Thu, 01 Jun 2023 13:49:01 +0200 (CEST) Received: from BN9PR03CA0480.namprd03.prod.outlook.com (2603:10b6:408:139::35) by BY5PR12MB4259.namprd12.prod.outlook.com (2603:10b6:a03:202::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.22; Thu, 1 Jun 2023 11:48:56 +0000 Received: from BN8NAM11FT005.eop-nam11.prod.protection.outlook.com (2603:10b6:408:139:cafe::9) by BN9PR03CA0480.outlook.office365.com (2603:10b6:408:139::35) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.23 via Frontend Transport; Thu, 1 Jun 2023 11:48:56 +0000 Received: from SATLEXMB03.amd.com (165.204.84.17) by BN8NAM11FT005.mail.protection.outlook.com (10.13.176.69) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6455.23 via Frontend Transport; Thu, 1 Jun 2023 11:48:56 +0000 Received: from SATLEXMB08.amd.com (10.181.40.132) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Thu, 1 Jun 2023 06:48:56 -0500 Received: from SATLEXMB04.amd.com (10.181.40.145) by SATLEXMB08.amd.com (10.181.40.132) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Thu, 1 Jun 2023 04:48:55 -0700 Received: from [10.71.193.39] (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server id 15.1.2375.34 via Frontend Transport; Thu, 1 Jun 2023 06:48:54 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 4bf8c047-0072-11ee-b231-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=CaOgXT2SENJ+9E1CrgyFXq2bm6xPmXHEMLbnTKG+O0lGp91n52YpAHTx2GNZAQf5hfw65FSFOIp2g4jZhWLk9V9AoobJYabyZvruBfcm4tlv4szbvSG5rEQQlAiOFEmU23qq9uJ72El5xVLOlxp/goOJG1bcpMfDtpVMR/fOZaYqSmAGAxFkp/zfaul65jjx/XLzIFTaUhsDWxRKIsFtz3mf5D/+f+pU2hQtcKOQbj4naZpT0EYCH0l68+6dFCMHxKurwdfXkPO99XPEjMK+4RBmjgJ9Ta7b9NsBkaifI4eNG2cbDZfPQm4SJFX9Lh/zr1lbSPTonc86ZzjLmDgp9Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=uwY0cRq5yi/CyxEQ7rTTlWH1c9ghdBx9hVPEYMUHfHQ=; b=XkNNEoBwz84Kntjf8eOmBKliMqq1JIQIBNPZsjudc8Oqq75f/1Favg8H5DnoZ43pVOw8+0gBSW/2QxzzCAcRaKDLLI5pNDyVpQWVMt/mFAxrG1C6i/LkzMFmp9BcXThXBrQ5jIxTVmtvNH2wY64bn/gZ8Efx3nb4N+YQTTk0GcqeD5FIM31xEZhPdpWeiw2p0hxUu4yJ0W0c+PA1n7Z4PSa21TUTbmvnxBfYL4HIdHndfBMfY1Z2/qgtJZKLaIu4IaAU510GadAoK8oJpeoU7j9wdjWkfRSyBupfICYxBKLmkV2VYLMAI96t4oMloX8UliEqnw+12zfHfsl8HWKqMw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=gmail.com smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=uwY0cRq5yi/CyxEQ7rTTlWH1c9ghdBx9hVPEYMUHfHQ=; b=AM43o2DYgJ9JeZV3wQn3T/kxj5P334sfjouogLmSL5U4oBgUHyAgwXrec4ZP82uJUee08saso2zeTYxjUGI7gFXi+binwnzD7YI0s0qES4HOLSgcWjyMVLEyZzVNlJedrjMglo5HVU7D4w13ti2cqERILmIUaXnKfZCAw+JjIjo= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C Message-ID: <703ccd1b-1908-4f5b-3b48-e02d317a2090@amd.com> Date: Thu, 1 Jun 2023 13:48:54 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH] xen/arm: debug-pl011: Use 32-bit accessors for broader compatibility Content-Language: en-US To: Julien Grall CC: Bertrand Marquis , Stefano Stabellini , Volodymyr Babchuk , Xen-devel References: <20230601085001.1782-1-michal.orzel@amd.com> <7C760D1D-DAAE-48AC-8B2B-E6140452BE4A@arm.com> <73a143ee-8301-e0c0-a3fc-83ec10441c4c@amd.com> From: Michal Orzel In-Reply-To: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BN8NAM11FT005:EE_|BY5PR12MB4259:EE_ X-MS-Office365-Filtering-Correlation-Id: b655b705-f8e8-4bcf-36c2-08db62962e35 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: SnfQ0RmhINA9wficcgvjoQrJXe2w1MpLfk7a6PNdMenz1Lqx6T/Ij45JHPGYvXgzOx6RIlBuoGbHxMjThzi+FERMLg1z+JB/5g2HmdpZoiwDH+/gMnza2UndPMVFGb+L7cvOcbOY2IAI2Ij9JaJkBPOMosBgjFjVOWIxV5QUJV0Ym4p6rIJuYj1ESDkPgnpK0jrroOsTplIJBZgWN9HK7ay+rw730aZ6XJC1gqFni2AMK4oUB78SKyU7vSgsX8lO/8tTDTl/UgCy+ul+gdnTYb00243U/vjh4yjiQTFPeEothy8QDKDfR35NXbHvG5i460eN1zOWlXBesAgRJZelfQf0ZnQklhoSpHAUPs/gu/RQzSETfqoPHdeGSubnkNIvCZijwCQ5i4Oyv8dXNt8RCs1csueFxhnS7pDrIlrsNFhve4s6HqqMv37JWscA2kQcT96VwVxMisfwyeTeMYP4NYvASUGmheSmOa3MokQVQPcuRSddB28QKrYpuIxlegDb/225f4hsTE7uGjQozpu4f+og2qB15mXU39yrQL3sm7Ryr44vdL3w5i4EIWAUa9TAXNsvisJlWCb5cHlYpvb6rnaMotOAhCJd1c2yELXGriXj7zft50zAfYavHmr64aO9uVoJOIVwKgNIwawGFLnJAcQaSN4ZyMaFwGyryWsUUK+ASfZz72lyc6YmqP7i31TTNP8Yd14cX+TEguEs1fi/33ld2SUTBZnUvqQ+vAXwuP/XnUab3zPGO+dcyRtV2a95kX8kxrllnUKQP3VLmLfoXnODgEZP9b/3dvMcN/e4YNw= X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(396003)(376002)(39860400002)(136003)(346002)(451199021)(40470700004)(36840700001)(46966006)(41300700001)(40460700003)(5660300002)(186003)(82310400005)(8936002)(40480700001)(8676002)(53546011)(36756003)(6916009)(36860700001)(26005)(4326008)(16576012)(356005)(44832011)(81166007)(316002)(2906002)(54906003)(70206006)(83380400001)(70586007)(31686004)(426003)(47076005)(336012)(478600001)(2616005)(31696002)(82740400003)(86362001)(43740500002)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Jun 2023 11:48:56.2444 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: b655b705-f8e8-4bcf-36c2-08db62962e35 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com] X-MS-Exchange-CrossTenant-AuthSource: BN8NAM11FT005.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY5PR12MB4259 Hi Julien, On 01/06/2023 13:12, Julien Grall wrote: > > > > Hi, > > Sorry for the formatting. > > On Thu, 1 Jun 2023 at 12:31, Michal Orzel > wrote: > > Hi Bertrand, > > On 01/06/2023 12:19, Bertrand Marquis wrote: > > > > > > Hi Michal, > > > >> On 1 Jun 2023, at 10:50, Michal Orzel > wrote: > >> > >> There are implementations of the PL011 that can only handle 32-bit > >> accesses (i.e. no 16-bit or 8-bit), usually advertised by 'reg-io-width' > >> dt property set to 4. On such UARTs, the current early printk code for > >> arm64 does not work. To fix this issue, make all the accesses to be 32-bit > >> by using ldr, str without a size field. This makes it possible to use > >> early printk on such platforms, while all the other implementations should > >> generally cope with 32-bit accesses. In case they do not, they would > >> already fail as we explicitly use writel/readl in the runtime driver to > >> maintain broader compatibility and to be SBSAv2 compliant. Therefore, this > >> change makes the runtime/early handling consistent (also it matches the > >> arm32 debug-pl011 code). > >> > >> Signed-off-by: Michal Orzel > > >> --- > >> xen/arch/arm/arm64/debug-pl011.inc | 8 ++++---- > >> 1 file changed, 4 insertions(+), 4 deletions(-) > >> > >> diff --git a/xen/arch/arm/arm64/debug-pl011.inc b/xen/arch/arm/arm64/debug-pl011.inc > >> index 6d60e78c8ba3..80eb8fdc1ec7 100644 > >> --- a/xen/arch/arm/arm64/debug-pl011.inc > >> +++ b/xen/arch/arm/arm64/debug-pl011.inc > >> @@ -25,9 +25,9 @@ > >>  */ > >> .macro early_uart_init xb, c > >>         mov   x\c, #(7372800 / CONFIG_EARLY_UART_PL011_BAUD_RATE % 16) > >> -        strh  w\c, [\xb, #FBRD]      /* -> UARTFBRD (Baud divisor fraction) */ > >> +        str   w\c, [\xb, #FBRD]      /* -> UARTFBRD (Baud divisor fraction) */ > >>         mov   x\c, #(7372800 / CONFIG_EARLY_UART_PL011_BAUD_RATE / 16) > >> -        strh  w\c, [\xb, #IBRD]      /* -> UARTIBRD (Baud divisor integer) */ > >> +        str   w\c, [\xb, #IBRD]      /* -> UARTIBRD (Baud divisor integer) */ > >>         mov   x\c, #WLEN_8           /* 8n1 */ > >>         str   w\c, [\xb, #LCR_H]     /* -> UARTLCR_H (Line control) */ > >>         ldr   x\c, =(RXE | TXE | UARTEN) > >> @@ -41,7 +41,7 @@ > >>  */ > >> .macro early_uart_ready xb, c > >> 1: > >> -        ldrh  w\c, [\xb, #FR]        /* <- UARTFR (Flag register) */ > >> +        ldr   w\c, [\xb, #FR]        /* <- UARTFR (Flag register) */ > >>         tst   w\c, #BUSY             /* Check BUSY bit */ > >>         b.ne   1b                     /* Wait for the UART to be ready */ > >> .endm > >> @@ -52,7 +52,7 @@ > >>  * wt: register which contains the character to transmit > >>  */ > >> .macro early_uart_transmit xb, wt > >> -        strb  \wt, [\xb, #DR]        /* -> UARTDR (Data Register) */ > >> +        str   \wt, [\xb, #DR]        /* -> UARTDR (Data Register) */ > > > > Is it really ok to drop the 8bit access here ? > It is not only ok, it is necessary. Otherwise it won't work on the above mentioned UARTs (they can only perform 32-bit access). > > > IIRC some compilers will complain because you use wN with “str”. Hmm, I would expect it to be totally ok as the size is determined by the reg name. Any reference? > > > And following to what I wrote in commit msg: > - we use str already in arm32 which results in 32-bit access > > > - we use reald/writel that end up as str/ldr in runtime driver > > > - we are down to SBSAv2 spec that runtime driver follows (meaning we can use early printk for SBSA too) > > > The runtime driver is meant to follow the PL011 spec first and may have some adaptation for SBSA. > > > - this way we support broader list of PL011s consistently (i.e. both early and runtime driver works as oppose to only runtime) > > >  I am not sure I agree here. You are focussing on HW that only support 32-bit access. And, AFAICT this shouldn’t be the norm. I'm focusing on supporting wider range of devices. At the moment Xen PL011 runtime makes 32-bit accesses while early code makes 8/16-bit accesses (arm32 uses 32-bit only as well). So my patch can only improve things and not make them worse. In case of some very old legacy device that cannot cope with 32-bit accesses, such device would not work anyway with the runtime driver. Also, while I'm aware of platforms with 32-bit only UART and the normal one that can cope with 32-bit as well, I'm not aware of any legacy one that cannot do that. Adding a config option like EARLY_UART_PL011_MMIO32 would be ok but it would require to also modify arm32 early printk and runtime driver. Not mentioning things that we somehow do not want to look at like hardcoded 7372800 HZ frequency for early_uart_init we can just pray to match the HW UART clock or other not PL011 spec things (i.e. incorrect FIFO size for most modern UARTs). But if this is what you require, I'm somewhat forced to do so just so that our devices can be supported. ~Michal From xen-devel-bounces@lists.xenproject.org Thu Jun 01 11:50:56 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 11:50:56 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542425.846268 (Exim 4.92) (envelope-from ) id 1q4gpJ-0003Yq-VS; Thu, 01 Jun 2023 11:50:45 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542425.846268; Thu, 01 Jun 2023 11:50:45 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4gpJ-0003Yj-Sh; Thu, 01 Jun 2023 11:50:45 +0000 Received: by outflank-mailman (input) for mailman id 542425; Thu, 01 Jun 2023 11:50:44 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4gpI-0003Yd-5i for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 11:50:44 +0000 Received: from esa6.hc3370-68.iphmx.com (esa6.hc3370-68.iphmx.com [216.71.155.175]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 88b7fdd6-0072-11ee-b231-6b7b168915f2; Thu, 01 Jun 2023 13:50:42 +0200 (CEST) Received: from mail-dm6nam10lp2108.outbound.protection.outlook.com (HELO NAM10-DM6-obe.outbound.protection.outlook.com) ([104.47.58.108]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 01 Jun 2023 07:50:40 -0400 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) by DS7PR03MB5478.namprd03.prod.outlook.com (2603:10b6:5:2c7::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6433.24; Thu, 1 Jun 2023 11:50:39 +0000 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::192:6bdf:b105:64dd]) by SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::192:6bdf:b105:64dd%3]) with mapi id 15.20.6433.024; Thu, 1 Jun 2023 11:50:39 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 88b7fdd6-0072-11ee-b231-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1685620242; h=date:from:to:cc:subject:message-id:references: content-transfer-encoding:in-reply-to:mime-version; bh=kIIX5L576OT6ux2p/dIWfslNIOHQfxGlkj91okEyvIQ=; b=a3eycGApy3LsFENeBq4zdXKHjQRijQx96ZUsF3GKcvPe38ky3EzjWn4Y IRBgQI+fOm6SE6NYEbIC0PcmRcWNDkKw/E3maqWvWTMg7mIQDd2RY5A4i ot6K4b9pAorbsXWIT/GJU2EAhWHuCQeNc+nr6WI3qx3q2F9oKAzul/Jip E=; X-IronPort-RemoteIP: 104.47.58.108 X-IronPort-MID: 110541988 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:46KQPKpnNHV6mmGMx+izx1jvV5BeBmI+ZBIvgKrLsJaIsI4StFCzt garIBmHbPqIZzT1KI9/bYvl8UhTvZ+GydIyTQtspSwwHitApJuZCYyVIHmrMnLJJKUvbq7FA +Y2MYCccZ9uHhcwgj/3b9ANeFEljfngqoLUUbKCYWYpA1c/Ek/NsDo788YhmIlknNOlNA2Ev NL2sqX3NUSsnjV5KQr40YrawP9UlKq04GtwUmAWP6gR5weAzyBNV/rzGInqR5fGatgMdgKFb 76rIIGRpgvx4xorA9W5pbf3GmVirmn6ZFXmZtJ+AsBOszAazsAA+v9T2Mk0MC+7vw6hjdFpo OihgLTrIesf0g8gr8xGO/VQO3kW0aSrY9YrK1Dn2SCY5xWun3cBX5yCpaz5VGEV0r8fPI1Ay RAXAD8sagKGhNuO+fWmE7g8o/QBFcfCOoxK7xmMzRmBZRonabbqZvySoPN9gnI3jM0IGuvCb c0EbzYpdA7HfxBEJlYQDtQ5gfusgX78NTZfrTp5p4JuuzSVkFM3jeiraYKFEjCJbZw9ckKwv GXJ8n6/GhgHHNee1SCE4jSngeqncSbTAdtKSeHhp6466LGV7lEYTxpRegO4mOCgzWygQOMHE WYk3BN7+MDe82TuFLERRSaQonSJoxodUNp4CPAh5UeGza+8yxaUAC0IQyBMbPQitdQqXno62 1mRhdTrCDdz9rqPRhq16bO8vT60fy8PIgc/iTQsSAIE55zvpd81hxeWFtJ7Svft3pvyBC36x C2MoG4mnbIPgMUX1qK9u1fanzaroZuPRQkwjunKYl+YAspCTNbNT+SVBZLzt56s8K7xooG9g UU5 IronPort-HdrOrdr: A9a23:RKGPNKyCB5U+F5OlceE9KrPxS+gkLtp133Aq2lEZdPULSKGlfp GV9sjziyWetN9wYh4dcB67Scy9qFfnhOZICO4qTMyftWjdyRKVxeRZgbcKrAeBJ8STzJ8/6U 4kSdkFNDSSNykEsS+Z2njeLz9I+rDunsGVbKXlvhFQpGlRGt1dBmxCe2Km+yNNNWt77c1TLu vg2iMLnUvoRZxRBf7LdUUtbqzmnZnmhZjmaRkJC1oO7xSPtyqh7PrXAgWVxRAXVhJI2PMH/X LemwL0y62/u7XjoyWsmlP73tBzop/M29FDDMuDhow8LSjtsB+hYMBMSqCPpzc8pcCo8RIPnM PXqxktEsxv4zf6f32zozHqxw78uQxeoUPK+Bu9uz/OsMb5TDU1B45ogp9YSALQ7w4FsMtn2K xG8mqFv94PZCmw1xjV1pztbVVHh0C0qX0tnao6iGFea5IXbPt0oZYE9E1YPZ8cFGbR6ZwhEs NpEMbAjcwmOW+yXjT8hC1C0dasVnM8ElOvRVUDgNWc13xskHVw3yIjtbgit0ZF0Kh4Z4hP5u zCPKgtvqpJVNUqYaV0A/pEaderC0TWKCi8cV66EBDCLuUqKnjNo5n47PEe/+exYqEFy5M0hd DoTE5Yj2gvYEjjYPf+kqGjyiq9A1lVYA6diP23v/NCy/jBrfvQQGK+oWkV4oudS651OLyeZx 6xUKgmdsMLY1GeXrqh5DeOK6W6GUNuLvH9hexLKm5mgvi7XbEC5darBsr7Ff7KLQsOfF/ZLz 8qYAXTTf8wnHxDHEWIzCTsZw== X-Talos-CUID: 9a23:1HG7NWMLmXMZj+5DVwhj5ksXI/gcNWCEnSf1E22BB09vR+jA X-Talos-MUID: 9a23:jHBPgwunc3aIMg6TCM2nuTolM4BHu6eXEVlKs4sdipG+HxxWAmLI X-IronPort-AV: E=Sophos;i="6.00,210,1681185600"; d="scan'208";a="110541988" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=AYulKnFJaXQ9AokybLzD+MUTal5zhcKOIz7xbSAzCdr+s28EiltV3MSiAPoyt9LK6k5w5nB3stbeyvt45KJsQdi3c2ZVrSVhWahX0ONP0xTkcTEUJIQ2rnc+L8QFKJDAV6QSJOkcfx5Sawg8WQJesCyqmmJO3QTuxmwJre8HPiL8UL2jULoT70Ks8pC+nIzOa/ompz9gEIAql5KlWFdBZ0KQnZIBm29oxIQU4ZmiYOwM90dOHCTCkw2b9So/ghKnlQJQ0wajyUTBTTgUoaqAjev4CpBrXM+dpgJ/uYll4HeaP2j6xp5TqQJQI40z9RM2tYZXaC2w8V8hWVSLE3jhug== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=xGzawwoC9UY5qFe214NgHVjE2gGttr1uXclxyjAc6rU=; b=KMXRQPqP6RTlnrvgnx/5iV7oeIbkKaJmbb9GC9Xh9K+AzF5zdDXemB832cYFY+2FD5hq4ABsQDjRnhQcASbu078RL2ZRnGZLfxDyQC4Z6JsxDZ4pnF4cBOK4Gv33QOPBMLoQIiwb5GZwPA4VGbt03zwXyptUotQVXSJQZoHS4iHh37eWfpzACLfUjNilU8mOSSUYrrGFyZ8fHTPEUj10cvaINy1UTObQaA+0Mldw0+LjzJ5RSB94zo9OR9DsoYW1MQ7xHERma7n0jYr21oZ6ubGu1sBtyEEQzIi7pU4Sd940s8ZcmvwtiVhl2dFYLKvis1vP3+dG+4gAIe0dfpJE2g== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=xGzawwoC9UY5qFe214NgHVjE2gGttr1uXclxyjAc6rU=; b=LJBXWakY8Snvo/2NWov4ELf6yvVuEZNPezQJSkqDp+vq/zDa7er1fiV2m1lotzZFGsuM2XEaW2jWbu3/ru9NF8FNAtMeKk6o/nUA47ueplBiPP9YG1A9InDLVOn8agKo9nZulEet7T6GFFJQM4qkpPYqcCIcZhJvJENk51+Tjts= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Date: Thu, 1 Jun 2023 13:50:33 +0200 From: Roger Pau =?utf-8?B?TW9ubsOp?= To: Jan Beulich Cc: "xen-devel@lists.xenproject.org" , Andrew Cooper , Wei Liu Subject: Re: [PATCH 1/2] x86/vPIT: re-order functions Message-ID: References: Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: X-ClientProxiedBy: LO4P123CA0352.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:18d::15) To SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|DS7PR03MB5478:EE_ X-MS-Office365-Filtering-Correlation-Id: 8972d64a-337d-4841-c18a-08db62966b49 X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: lHKbjYe4x2KHdRdotR6qcbpcCuubbCjmH8cfB+yBnT5kKqImATJvBjInL/5+Vp4RVLx3EUoHVA5p2pxvbEzV8IjhcQBx8+PMcXtugQM4GKP4tIuipKkpLYW0qBSJ+yBoBwYAwFN32yLlhKFzS0CMdCENGdaVpDu8017yYHRgBr3keVP/oEbHLxJNTqQxupuj4w3Kb4ijRWlmtlz/WU/1iVX1FQPAtekeSRgJof8cWNp6LoqFFfFjLc6ualr9scp1Yn88O8QQCixl2+0CZDeENhjBd66VPiI+pa/xbkusp4O+814ckVA+Sydxv0Yrwcl1YGVqNTnSJF1q0JW+ZMtjqW7a058XrxWkpDhk6p/iH8rISr6hKdw2BOl+yzDsgPpS89gWjZcXRGF3hbSztzmsFWOkJzEHL8P8ACE1S+3D+YwENMF9886F3t4X80uoGtxDczEdOPT2gerdp7zknitF5yzuzNzaJnmmzZpycXXm5GG9YYCoOaTuLy/zF8uVNN76S/uhFSC+kVJrXnahgHUyxQY9CimhnBxUl3kaEZg6SPQpZJZ9Gw8u2S1rm9EDtRVsagCI5t5l/FcLmctnPczbBfpaATyS+CP/pXhJw4wcKqg= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(7916004)(346002)(396003)(366004)(39860400002)(376002)(136003)(451199021)(83380400001)(33716001)(85182001)(4326008)(82960400001)(41300700001)(38100700002)(316002)(8676002)(6666004)(53546011)(66476007)(9686003)(6506007)(6512007)(26005)(66946007)(6486002)(6916009)(66556008)(86362001)(2906002)(8936002)(54906003)(5660300002)(478600001)(186003)(169823001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?MVFaMS9oSkFOdjRiMFN0OGFjSVFvb2dHejc4Q0RKVTVZY05jTWpNNTNub0tR?= =?utf-8?B?ZWN3NkR6Z292UVJ1VE8yV0JtWGcvbDlrZVBMU1g2bUVTdWhCWWloRHo4SVZ4?= =?utf-8?B?Rks5R3hrWEcwblpqa2kxcjl2UUdOVFo4by9iOXNva2tCc0JkRjZWQmNNV1px?= =?utf-8?B?U0d1NEc1SDJqM2I5akQ2SjRpLy9rckpJYXpKdlpNZDlpR0pJcXB2WEVqQWRY?= =?utf-8?B?UHVoc3czMEhHUURwZ3dISnFMNjBFOGgyQXB1SGsrblg3cnpsYWxQeTh2M2lq?= =?utf-8?B?M01zS3ZQeEplOEFaZmxLKzlJU0lQQmRrZ3NhbHlodkdKZFBnclAzeklkV08w?= =?utf-8?B?VSt3Ty9OR2plejYwS1hKTUp2bHAycHV4cDYwbUsxU0FPZDBoMXdIYUp0V2ZT?= =?utf-8?B?WlUxem1mTSs0V3Y3UzJRbWEzNkpRNEQzbllMR0EzTTNBYmgzL0gvQmVjYzgw?= =?utf-8?B?RW00VEVEdSs1NkFLd2hLK0RnN1NMa3VKWDhkd1V0Ujhzd1hmVHhFVDByU2M1?= =?utf-8?B?REc4Yk4vbm5YK09wa0xsQjQwdFVZWm5xRUxlcGFna0dWam9ucDFESEdybWpa?= =?utf-8?B?WW0zZUQwemIweC9oTHVBT21wUFh4K1kxL01xV0xZeENqT0M3c1l3MkZqNkth?= =?utf-8?B?OUVuQmJKWTRwbVRNdGplelh2dnJDYlBHU2s1dnlYK0YyejhQU3dNaHBnOFow?= =?utf-8?B?SFliRFVBVW9DOWZYTkpIdnRGZzVXbDFvQXNmeFVBODYzWE5wd2t6Y3ZoSVFD?= =?utf-8?B?MGw0WVRsZTNTdE1CMWJFRzNBa1NjbDh1WHA4RGJuNGhqUVlNV1dSa2RvWjNo?= =?utf-8?B?VEN0NzhWNWZYNk40dzMzRUpjd0RMWk9jUWUwdmtPblFZb2dRQ1N5a0VlcHdS?= =?utf-8?B?REVGQzdDYjBsN3lobHZwU21qSjM1c1F4VWhBSmhndXY5K2RCN3lMY3ZNY0M1?= =?utf-8?B?TVlIdGlJQTVTL2dpOERxaVJnc1VYeDh6VFZBcG5HbUdiRUJtY2NBZUVzbWVz?= =?utf-8?B?Z1NVdnJsbS8vNWZXRzVmL0hFV3NaTVd1WlpiU25ZRTJIay9NMStLUTlQNUk3?= =?utf-8?B?VDVtY09PZlcwc0JtSnpraXdWZUpOVUtKQVlmNGJoelVEYlZ6ODM3a1ZNMVEy?= =?utf-8?B?TnV0dXdrRU1PQWl0L3psd0tHRXhmYlliK0lPWFFCWlNobHZwdzhyVmxwL01U?= =?utf-8?B?RC9JYWREcmZ4WmlsRWdHMk5sT1htQUFOdDBHZnpPTkdIZnovSDVwaVNFQysz?= =?utf-8?B?TCtnVm1OWE1raVl6VHRwVzlyeHN4WHd6V2NoRk9rdXRUN1NhSHh2VnRKcmFv?= =?utf-8?B?YmFNZVdZRXYza2FsZFgzazZHUm02RHB1Q1lxUWFidVNaSUJrTFFBV3dBczgx?= =?utf-8?B?UW0yZnJVcU5aY0tiK0NuQndIVnhBZzdxbDZvNGRpbEpuWExyYitocmFPU1dV?= =?utf-8?B?S2JhaGdDZ2ZlS0UzdTU5RXV4Z3RGZzliK05vQ0IxYzFtUXBFMWN3WVJLa3Jw?= =?utf-8?B?VUR5NG9kU2xkRlBlQksvMFVuTFhWTUFSLzVFb3g5aG9ZZzRpRThSQXozaFIv?= =?utf-8?B?dTd2MjduTG9BYnhNMzdPcW8xUGFkZGlobU00VEN3Rlp2dzVUN211YkF1cVVY?= =?utf-8?B?YXYvZkE1NTcwZHZxc21lR3haSE1TQ2V5N2pGbm9PQ2N6Vm5aeVE0QnlZcnpq?= =?utf-8?B?eEJBNkx4bTF4MUZqOG01UmxWbGhRdU9iWVFWaGpYUncya3FZTmtLVXRJa3F3?= =?utf-8?B?dUorcFR2U1BUVUpGWnpZYUNadTBTb240a2hobjc5cFltKzc3RlNvSzlOVXZW?= =?utf-8?B?UnZCRzRKbDdtYWZtRjc4NGRQdWF5bGVJbTJMdnVPNFUrQ2p0UlcveFFVaUJv?= =?utf-8?B?blFtODdxbjFwWXJLQVBtVGNIdnVlL1ZIS3pJUkxURWdVWFF4bStyR1hkSktv?= =?utf-8?B?em1aM0xpU0dtNGJBczVLY0tGdVROR3phV1U4MXByMmx0Y3NrdkgvOGErM2Jo?= =?utf-8?B?WWhtbVB6QkYwb3YvMGt1VkpUOTJwMnl3YTdqbGtidlRjUTc0Vk1RMmR5RVRE?= =?utf-8?B?RC9PQ2FBZVliQjhJQ2RJbHc0TkIwdXQwaVMyTnV5M1pwbVlUeStiYmFxMHov?= =?utf-8?B?bUFLa2JEZFVIMk1tcnJwdnNlS3BUVlRzTTNLczJpTUsyVGd1dzcwTlBxMWVY?= =?utf-8?B?TWc9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: 9CwwbUxEcwWwumHmaN9pYGWzwbP34NTKAB1oqqbDxDwBfcX8LfcKFFSPxe34Rg0JfB2ENdSuFqU0XOEPhX3eWXtiYn6i0Ss0nrO1o9LWV8cSr+UWThoPYutDhQBXjxANFDHDK1BhM1gW4iAloqzI90AqlylWfUmNeYzOk2/5H4iX9KwMcvTNzd46bzyYeD5W9VH+B/yo85ids8+ZLQoGTHYatLR4Q2v71BMZCyT1fp/gO8feffP0ny/6MKRB67EpGNGf1YUmhnVOC/p5w5lMs9/FLz98neS/Npr0CdgF2BFYBx3VTkShohV4PVaKGW2H5avg/6MKKZ+F+uxwCLluqaFcvOyeV+f/vROfyATeoavA7ACGLWXYsEBBbQZAyAQ1B168Imn5Rsjid+uRzgls97hf+7Wrh/zcJqB32R/ecIiMd8pNM+eBJn3jiEftLRTNbvYQt8t2xvVU6huNZku989E4yZQX2BGhg7paMEefb2TzmKLYfQp4oIcvgbZDlgeBdQdqQr3XZd2Huiyf+711rbBtI+ulK018rcrZeII1WTg9KQLTvccowd1VHNRMDB5sibPPL+vwhTW1uK0a98babUUVNYpb56tFQOOWHalyVKMTP6CpgGW6wCs9TzIrHb9YGr9uuKFilAiCqJobZD4qVUDMSVmaGwV+E+DtTf3RhjD+Gj8r6tfAsKZjl56Mpx8vONObBjaZw5tgsMAz5CYrnZMBbDf+R14+aLPbZKcRSzz+mW9VUpGNADsw+OpXV9Rxc7K/mZFgBI6CJfxrFdBtV0j9bPfG7lN0Q4J8bdJ3jQxqn0odkLT0FC1w0HfEjVSo X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 8972d64a-337d-4841-c18a-08db62966b49 X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Jun 2023 11:50:39.0241 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: /flM1lcXoiL1j6nS9cYEUUf9EJdPjNUow+qrrcyNSAzDDXHQKZraxUR0armQ7BRP6/hRKS4KFD1f2ki00devQQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR03MB5478 On Thu, Jun 01, 2023 at 11:56:12AM +0200, Jan Beulich wrote: > On 01.06.2023 11:17, Roger Pau Monné wrote: > > On Tue, May 30, 2023 at 05:30:02PM +0200, Jan Beulich wrote: > >> To avoid the need for a forward declaration of pit_load_count() in a > >> subsequent change, move it earlier in the file (along with its helper > >> callback). > >> > >> Signed-off-by: Jan Beulich > > > > Reviewed-by: Roger Pau Monné > > Thanks. > > > Just a couple of nits, which you might also noticed but decided to not > > fix given this is just code movement. > > Indeed, I meant this to be pure code movement. Nevertheless I'd be happy > to take care of style issues, if that's deemed okay in a "pure code > movement" patch. However, ... It's just small style issues, so it would be OK for me. > >> --- a/xen/arch/x86/emul-i8254.c > >> +++ b/xen/arch/x86/emul-i8254.c > >> @@ -87,6 +87,57 @@ static int pit_get_count(PITState *pit, > >> return counter; > >> } > >> > >> +static void cf_check pit_time_fired(struct vcpu *v, void *priv) > > > > Seems like v could be constified? > > ... the function being used as a callback, I doubt adding const would > be possible. Otoh ... Oh, I see. > >> +{ > >> + uint64_t *count_load_time = priv; > > ... there's a blank line missing here, if I was to go for style > adjustments. Sure. Thanks, Roger. From xen-devel-bounces@lists.xenproject.org Thu Jun 01 11:53:13 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 11:53:13 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542429.846278 (Exim 4.92) (envelope-from ) id 1q4grW-0004AA-BS; Thu, 01 Jun 2023 11:53:02 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542429.846278; Thu, 01 Jun 2023 11:53:02 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4grW-0004A3-7L; Thu, 01 Jun 2023 11:53:02 +0000 Received: by outflank-mailman (input) for mailman id 542429; Thu, 01 Jun 2023 11:53:00 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4grU-00049t-6N; Thu, 01 Jun 2023 11:53:00 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4grT-00086d-Ox; Thu, 01 Jun 2023 11:52:59 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4grT-0000EU-FJ; Thu, 01 Jun 2023 11:52:59 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q4grT-0004QI-Ep; Thu, 01 Jun 2023 11:52:59 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=sTy9tpUpOxMSGKmbr+j1hxMJgyZApMMG9k/M+/bIjBc=; b=RwAit6LafYIxORoUMFuZoPDcKT 2F60cz9aUwEqD36VhnI0xJ4o3Ed9DGjK47y32IV5sv4V1qdBmjpPJuksKuieiLphadrBlvX2HRkDX CChrL61xzpvh667cBFki7D485Dw+Rp+yR8mel9SPgRm9rpuX5/y6n3t1RjkaVqt9qEi0=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable test] 181061: regressions - FAIL X-Osstest-Failures: xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:windows-install:fail:regression xen-unstable:test-amd64-i386-xl-qemut-debianhvm-i386-xsm:xen-install:fail:heisenbug xen-unstable:test-amd64-amd64-pair:guest-migrate/dst_host/src_host/debian.repeat:fail:heisenbug xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking X-Osstest-Versions-This: xen=dc98fa74446e5abe417e5ba9a6a632b50444cfa1 X-Osstest-Versions-That: xen=94200e1bae07e725cc07238c11569c5cab7befb7 From: osstest service owner Date: Thu, 01 Jun 2023 11:52:59 +0000 flight 181061 xen-unstable real [real] flight 181071 xen-unstable real-retest [real] http://logs.test-lab.xenproject.org/osstest/logs/181061/ http://logs.test-lab.xenproject.org/osstest/logs/181071/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: test-amd64-amd64-xl-qemuu-win7-amd64 12 windows-install fail REGR. vs. 181027 Tests which are failing intermittently (not blocking): test-amd64-i386-xl-qemut-debianhvm-i386-xsm 7 xen-install fail pass in 181071-retest test-amd64-amd64-pair 28 guest-migrate/dst_host/src_host/debian.repeat fail pass in 181071-retest Tests which did not succeed, but are not blocking: test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 181027 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop fail like 181027 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 181027 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 181027 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop fail like 181027 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop fail like 181027 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail like 181027 test-armhf-armhf-libvirt 16 saverestore-support-check fail like 181027 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail like 181027 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 181027 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop fail like 181027 test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-i386-xl-pvshim 14 guest-start fail never pass test-amd64-i386-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-armhf-armhf-xl-multivcpu 15 migrate-support-check fail never pass test-armhf-armhf-xl-multivcpu 16 saverestore-support-check fail never pass test-armhf-armhf-xl-credit2 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit2 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-armhf-armhf-xl 15 migrate-support-check fail never pass test-armhf-armhf-xl 16 saverestore-support-check fail never pass test-amd64-i386-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass test-amd64-i386-libvirt 15 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 15 saverestore-support-check fail never pass test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 15 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt 15 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 15 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt-raw 14 migrate-support-check fail never pass version targeted for testing: xen dc98fa74446e5abe417e5ba9a6a632b50444cfa1 baseline version: xen 94200e1bae07e725cc07238c11569c5cab7befb7 Last test of basis 181027 2023-05-31 08:39:08 Z 1 days Testing same since 181061 2023-05-31 23:38:33 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Bobby Eshleman George Dunlap Jan Beulich Juergen Gross Olaf Hering Oleksii Kurochko Roger Pau Monné Stefano Stabellini jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64-xtf pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-prev pass build-i386-prev pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-xtf-amd64-amd64-1 pass test-xtf-amd64-amd64-2 pass test-xtf-amd64-amd64-3 pass test-xtf-amd64-amd64-4 pass test-xtf-amd64-amd64-5 pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl pass test-amd64-i386-xl pass test-amd64-coresched-i386-xl pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-i386-xl-qemut-debianhvm-i386-xsm fail test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-i386-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-i386-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-i386-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-i386-qemut-rhel6hvm-amd pass test-amd64-i386-qemuu-rhel6hvm-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-i386-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-freebsd10-amd64 pass test-amd64-amd64-qemuu-freebsd11-amd64 pass test-amd64-amd64-qemuu-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-i386-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-i386-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-i386-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-amd64-i386-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale pass test-amd64-amd64-examine-bios pass test-amd64-i386-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 pass test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 pass test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine pass test-amd64-i386-examine pass test-amd64-i386-freebsd10-i386 pass test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-i386-qemut-rhel6hvm-intel pass test-amd64-i386-qemuu-rhel6hvm-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt pass test-amd64-i386-libvirt pass test-amd64-amd64-livepatch pass test-amd64-i386-livepatch pass test-amd64-amd64-migrupgrade pass test-amd64-i386-migrupgrade pass test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu pass test-amd64-amd64-pair fail test-amd64-i386-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-i386-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-i386-xl-pvshim fail test-amd64-amd64-pygrub pass test-armhf-armhf-libvirt-qcow2 pass test-amd64-amd64-xl-qcow2 pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw pass test-amd64-i386-libvirt-raw pass test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds pass test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-amd64-i386-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-i386-examine-uefi pass test-amd64-amd64-libvirt-vhd pass test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd pass test-amd64-i386-xl-vhd pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. ------------------------------------------------------------ commit dc98fa74446e5abe417e5ba9a6a632b50444cfa1 Author: Olaf Hering Date: Wed May 31 17:06:58 2023 +0100 xentrace: close output file in the function which opened it Signed-off-by: Olaf Hering Reviewed-by: George Dunlap commit f53c498276588c2aced36d5baa61e4a24e8d1bf8 Author: Olaf Hering Date: Wed May 31 17:06:56 2023 +0100 xentrace: remove return value from monitor_tbufs The program is structured so that fatal errors cause exit() to be called directly, rather than being passed up the stack; returning a value here may mislead people into believing otherwise. Signed-off-by: Olaf Hering Reviewed-by: George Dunlap commit 0e0d3c00bc098e41b82a4073e3d3f5432fb9b0c6 Author: George Dunlap Date: Wed May 31 17:06:55 2023 +0100 xentrace: allow xentrace to write to stdout The output file is optional. In case it is missing, xentrace is supposed to write to stdout - unless it is a tty, which is checked prior using it. Signed-off-by: Olaf Hering Acked-by: George Dunlap commit 04f25e9048c375898430a58e1c570806896252cb Author: Jan Beulich Date: Wed May 31 16:04:30 2023 +0200 vPCI: fix test harness build The earlier commit introduced two uses of is_hardware_domain(). Fixes: 465217b0f872 ("vPCI: account for hidden devices") Reported-by: Andrew Cooper Signed-off-by: Jan Beulich Acked-by: Roger Pau Monné commit 7a2f0ba0d08562fc09c6dd865c6cb3468185be1f Author: Jan Beulich Date: Wed May 31 16:04:12 2023 +0200 vPCI: add test harness entry to ./MAINTAINERS Signed-off-by: Jan Beulich Acked-by: Roger Pau Monné commit 465217b0f872602b4084a1b0fa2ef75377cb3589 Author: Jan Beulich Date: Wed May 31 12:01:11 2023 +0200 vPCI: account for hidden devices Hidden devices (e.g. an add-in PCI serial card used for Xen's serial console) are associated with DomXEN, not Dom0. This means that while looking for overlapping BARs such devices cannot be found on Dom0's list of devices; DomXEN's list also needs to be scanned. Suppress vPCI init altogether for r/o devices (which constitute a subset of hidden ones). Signed-off-by: Jan Beulich Reviewed-by: Roger Pau Monné Tested-by: Stefano Stabellini commit 445fdc641e304ff41a544f8f5926a13b604c08ad Author: Juergen Gross Date: Wed May 31 12:00:40 2023 +0200 xen/include/public: fix 9pfs xenstore path description In xen/include/public/io/9pfs.h the name of the Xenstore backend node "security-model" should be "security_model", as this is how the Xen tools are creating it and qemu is reading it. Fixes: ad58142e73a9 ("xen/public: move xenstore related doc into 9pfs.h") Fixes: cf1d2d22fdfd ("docs/misc: Xen transport for 9pfs") Signed-off-by: Juergen Gross Reviewed-by: Jason Andryuk Acked-by: Stefano Stabellini commit 0f80a46ffa6bfd5d111fc2e64ee5983513627e4d Author: Oleksii Kurochko Date: Wed May 31 12:00:13 2023 +0200 xen/riscv: remove dummy_bss variable After introduction of initial pagetables there is no any sense in dummy_bss variable as bss section will not be empty anymore. Signed-off-by: Oleksii Kurochko Acked-by: Bobby Eshleman commit 0d74fc2b2f85586ceb5672aedc79c666e529381d Author: Oleksii Kurochko Date: Wed May 31 12:00:05 2023 +0200 xen/riscv: setup initial pagetables The patch does two thing: 1. Setup initial pagetables. 2. Enable MMU which end up with code in cont_after_mmu_is_enabled() Signed-off-by: Oleksii Kurochko Acked-by: Bobby Eshleman commit ec337ce2e972b70619f5a076b20910a2ff4fea7a Author: Oleksii Kurochko Date: Wed May 31 11:59:53 2023 +0200 xen/riscv: align __bss_start bss clear cycle requires proper alignment of __bss_start. ALIGN(PAGE_SIZE) before "*(.bss.page_aligned)" in xen.lds.S was removed as any contribution to "*(.bss.page_aligned)" have to specify proper aligntment themselves. Fixes: cfa0409f7cbb ("xen/riscv: initialize .bss section") Signed-off-by: Oleksii Kurochko Reviewed-by: Jan Beulich Acked-by: Bobby Eshleman commit e66003e7be1996c9dd8daca54ba34ad5bb58d668 Author: Oleksii Kurochko Date: Wed May 31 11:55:58 2023 +0200 xen/riscv: introduce setup_initial_pages The idea was taken from xvisor but the following changes were done: * Use only a minimal part of the code enough to enable MMU * rename {_}setup_initial_pagetables functions * add an argument for setup_initial_mapping to have an opportunity to make set PTE flags. * update setup_initial_pagetables function to map sections with correct PTE flags. * Rewrite enable_mmu() to C. * map linker addresses range to load addresses range without 1:1 mapping. It will be 1:1 only in case when load_start_addr is equal to linker_start_addr. * add safety checks such as: * Xen size is less than page size * linker addresses range doesn't overlap load addresses range * Rework macros {THIRD,SECOND,FIRST,ZEROETH}_{SHIFT,MASK} * change PTE_LEAF_DEFAULT to RW instead of RWX. * Remove phys_offset as it is not used now * Remove alignment of {map, pa}_start &= XEN_PT_LEVEL_MAP_MASK(0); in setup_inital_mapping() as they should be already aligned. Make a check that {map_pa}_start are aligned. * Remove clear_pagetables() as initial pagetables will be zeroed during bss initialization * Remove __attribute__((section(".entry")) for setup_initial_pagetables() as there is no such section in xen.lds.S * Update the argument of pte_is_valid() to "const pte_t *p" * Add check that Xen's load address is aligned at 4k boundary * Refactor setup_initial_pagetables() so it is mapping linker address range to load address range. After setup needed permissions for specific section ( such as .text, .rodata, etc ) otherwise RW permission will be set by default. * Add function to check that requested SATP_MODE is supported Origin: git@github.com:xvisor/xvisor.git 9be2fdd7 Signed-off-by: Oleksii Kurochko Reviewed-by: Jan Beulich Acked-by: Bobby Eshleman commit efadb18dd58abaa0c6102e04f1c25ac94c273853 Author: Oleksii Kurochko Date: Wed May 31 11:55:46 2023 +0200 xen/riscv: add VM space layout Also it was added explanation about ignoring of top VA bits Signed-off-by: Oleksii Kurochko Acked-by: Bobby Eshleman (qemu changes not included) From xen-devel-bounces@lists.xenproject.org Thu Jun 01 12:01:46 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 12:01:46 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542436.846288 (Exim 4.92) (envelope-from ) id 1q4gzl-0005kt-HC; Thu, 01 Jun 2023 12:01:33 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542436.846288; Thu, 01 Jun 2023 12:01:33 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4gzl-0005km-Cd; Thu, 01 Jun 2023 12:01:33 +0000 Received: by outflank-mailman (input) for mailman id 542436; Thu, 01 Jun 2023 12:01:32 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4gzk-0005ke-2A for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 12:01:32 +0000 Received: from EUR01-HE1-obe.outbound.protection.outlook.com (mail-he1eur01on2049.outbound.protection.outlook.com [40.107.13.49]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 0b1b4a72-0074-11ee-b231-6b7b168915f2; Thu, 01 Jun 2023 14:01:29 +0200 (CEST) Received: from DUZPR01CA0035.eurprd01.prod.exchangelabs.com (2603:10a6:10:468::13) by AS8PR08MB10196.eurprd08.prod.outlook.com (2603:10a6:20b:62b::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6433.24; Thu, 1 Jun 2023 12:00:59 +0000 Received: from DBAEUR03FT021.eop-EUR03.prod.protection.outlook.com (2603:10a6:10:468:cafe::a0) by DUZPR01CA0035.outlook.office365.com (2603:10a6:10:468::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.23 via Frontend Transport; Thu, 1 Jun 2023 12:00:59 +0000 Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by DBAEUR03FT021.mail.protection.outlook.com (100.127.142.184) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.23 via Frontend Transport; Thu, 1 Jun 2023 12:00:59 +0000 Received: ("Tessian outbound 8b05220b4215:v136"); Thu, 01 Jun 2023 12:00:59 +0000 Received: from d5087a6bcbdc.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 30B99B84-1A62-4280-BFB6-B5AD942AAA38.1; Thu, 01 Jun 2023 12:00:52 +0000 Received: from EUR05-VI1-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id d5087a6bcbdc.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Thu, 01 Jun 2023 12:00:52 +0000 Received: from AM6PR08MB3784.eurprd08.prod.outlook.com (2603:10a6:20b:85::25) by PA4PR08MB6048.eurprd08.prod.outlook.com (2603:10a6:102:e6::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.22; Thu, 1 Jun 2023 12:00:49 +0000 Received: from AM6PR08MB3784.eurprd08.prod.outlook.com ([fe80::5e17:39a6:eec7:c482]) by AM6PR08MB3784.eurprd08.prod.outlook.com ([fe80::5e17:39a6:eec7:c482%4]) with mapi id 15.20.6433.024; Thu, 1 Jun 2023 12:00:49 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 0b1b4a72-0074-11ee-b231-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=EAY98YQ51HlCVa8oaoeam8OUJUB5AUWMxdbhcX+TJqE=; b=hmIGza2VMH6CCz+zqPTAq3B5EsZWoWLK0jVNg84yThfLgDL0o4y8bzppiYoJRX6GpfExsETw8nY1wkoVEiaEum2ScgjFmACkqjAi8OOpIySIGj5AedhxK9bcN4y4RaCHh6RA3ro+us3wcmRjvMM0c0w1y6i6I0zAqUf5NzFkmQU= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C X-CheckRecipientChecked: true X-CR-MTA-CID: 7cd164d6b44ab823 X-CR-MTA-TID: 64aa7808 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=h2Qb6r3VoIuy1CsOndPFbm6eZBCKlF0dxVJxXPB/hPSwJP7epzi2vlTOAkWSC51h+/rO850yvEqvd123U/m3YoyfIiJcEejU0S0WFtE7rU6WuhJSM+tbZavkK4GrRFp0eGwlVRC0Ig8FQiD1eWmtrlHXts2VejMpk0aWLVg0nntD3ogIvLNKBmDauBYHtrYdMqOYwDctiXDBY6o1DHK3oGk1JMC1WusElhxtaDPMNaLiOxcRVAug8T4inR3zpwyP+Q8bLfy82RoIWLmQ40+vIQVWVRxYHka/UiZBdXbFZlswD+TuGg/CJlTs5T2MDiOT+/BP2CYZLcMo+j8VYUHxYg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=EAY98YQ51HlCVa8oaoeam8OUJUB5AUWMxdbhcX+TJqE=; b=UC6ewO/GhJPHaR5BDh6yaTtAE7Ma7IsndbYEr4nQ9dpRdM32fPNcXTmDeuj0RL6T2DORJ7Bg10QEf262XlLOOJOgsO3FfcW3PGqlTdwPZmTS8Uy05RF6ycCVB58xyR4fOI7tPam0w/gd7aDZT99Bz7PyB4pf7e2U6UQcyKotLBbiSVP+ngvqsBDk32RSGTdmDUAj4rbNJYgg0xekFPo0RSL+5Vm0+2yVFmu7G4VzfKUFs779WtIIGFDUC2Gx0tzQh82of0q89seLHyYs2pBZ3boIP0wkQWa+SZKt2kb9EMGa9pYbV5Ob6dSagqBz35VBx+ZCpewdLwDPmpIaTrGNRQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=EAY98YQ51HlCVa8oaoeam8OUJUB5AUWMxdbhcX+TJqE=; b=hmIGza2VMH6CCz+zqPTAq3B5EsZWoWLK0jVNg84yThfLgDL0o4y8bzppiYoJRX6GpfExsETw8nY1wkoVEiaEum2ScgjFmACkqjAi8OOpIySIGj5AedhxK9bcN4y4RaCHh6RA3ro+us3wcmRjvMM0c0w1y6i6I0zAqUf5NzFkmQU= From: Bertrand Marquis To: Jan Beulich CC: Andrew Cooper , =?iso-8859-1?Q?Roger_Pau_Monn=E9?= , Julien Grall , Stefano Stabellini , Wei Liu , Volodymyr Babchuk , "xen-devel@lists.xenproject.org" , Anthony Perard Subject: Re: Ping: [PATCH v2 2/2] build: use $(dot-target) Thread-Topic: Ping: [PATCH v2 2/2] build: use $(dot-target) Thread-Index: AQHZgazgm2DvchatnEajUXqi97mBwK916tcAgAATKwA= Date: Thu, 1 Jun 2023 12:00:49 +0000 Message-ID: <28E1491F-9A18-455F-9948-4DBD93F71B69@arm.com> References: <9bc7544b-659f-4c09-f54d-647641483605@suse.com> <6d323d34-66ff-1608-1d91-9f7de78ad53b@suse.com> In-Reply-To: <6d323d34-66ff-1608-1d91-9f7de78ad53b@suse.com> Accept-Language: en-GB, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-mailer: Apple Mail (2.3731.600.7) Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-traffictypediagnostic: AM6PR08MB3784:EE_|PA4PR08MB6048:EE_|DBAEUR03FT021:EE_|AS8PR08MB10196:EE_ X-MS-Office365-Filtering-Correlation-Id: 0fed84e2-4010-4366-2fc0-08db6297dd3a x-checkrecipientrouted: true nodisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: UTlhDdQ45bcGYMnc1wFEZZC1jaBz4ajpUqR7ongHpfVckODVmp63YvGsrncA6UI4HkooE2rmNqwwUqLUoTXBoIokqIpPxNushysrWddJFNaHVpyd56W+364P5XbbkwtdibwpRG2Mj6ZDAV3q7z7eSDbDyHQsM6EoJBJqza5n46/NRRx/4HFQ2I3DKxJ6/JNULpZEVl+jTCH6TeAW4CAvsAGw7qmbgUyn7alzg6co/MB14Sv0ti3wa9zM1i61C0bq6OvSekNIuc0e8UfUlR3p2gguTl8LrbpEyNodk2jEA038LJQcr+TAfDem2r4B4ccD9XXEsRBPrqOOKywWunu67EnliIAgBLXkqnF6iwwM4d/8xZqQwbUQ+hVIyoQ5ChsE6Qmg0i2uZyIPRIHGs+Z980d6m37q6gKgJUCtYW0eW+AIoImf6/GDyavmidGepTeGYRp9fBiKhV9WlZ8Lpo/PkwocgyihGtPnMYRJHh1Kd/3f6g1umtN4xvJS4DETvwkJ1rNlK5HrC2v+x8cyMvHdfa+JGwRMvkwf7+HfsHCReSJry7Gs2S+jJJvkj4dH85GITC25vxmZ5vu/2TsBcSnDfF9XfVvJe7tyRaB3SsLB8cffvlmrpDUyglAQcAomtVVwNE+2ZcresW+ZOqsDwzM2OQ== X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM6PR08MB3784.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(346002)(396003)(39860400002)(376002)(366004)(136003)(451199021)(54906003)(4326008)(8676002)(8936002)(2906002)(66946007)(6916009)(76116006)(91956017)(66476007)(66446008)(66556008)(64756008)(478600001)(41300700001)(5660300002)(316002)(71200400001)(6486002)(122000001)(6506007)(6512007)(53546011)(186003)(26005)(33656002)(36756003)(86362001)(2616005)(38070700005)(38100700002)(45980500001);DIR:OUT;SFP:1101; Content-Type: text/plain; charset="iso-8859-1" Content-ID: Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR08MB6048 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: DBAEUR03FT021.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: e4b15ab6-6835-4c2a-9576-08db6297d723 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: vG1eiCHeO6k532LttZBAnJ6G5bPZ/AZ77X6vSFatBJnefrpgp4VxNqlDe3bp3eQtJ/Epy3PD7nnRQnq8NzQWLtiRhOIr2h2K3s0Iy3yIVhOSw4er40eZhpobPD/IFlZba7hCVUYmiwSj+V8upRDkCWdLUVQS4K57INohNe6p5MmGek61b0LSOK3a98pirdpxaspsX1vIMXRUiJ5qpjkO6NqDL8oEPCF7yO8f2zjPPag+MWMeC2FZfdSyVaZC2rJ3eKXE2LW1eyGUmbB78t0gkGKeSR6tPacQWVc5a724UxBorsdgb24XgXKIAdOyj4OifHu331HNcBlT+ifB8nHOTZHt93zjtls1ur+nazyG9kiv2h0TQ9e/N9J39v1j3j3A2Lm7NJXAGwVHI9/Ux1/wa+T3xYAU2CdRfYgLX5Z+fqhEvUfophTyro99LVvw7myhMR6eO1FZVf7hhMyAnP16SMMUMtjVPo9qFsF3Ly5nvsvcqnnjv4pHMW+5ngA3mHAzH4s2pXt8uCHz3fJWSo9Nl5oYePpm9YJ054BOsi+RaiGvTM0oIffkbU6cgmkuXVkZhtPKQWMEJlOBZTAhNE8o56uXKFCpS8t+cOlqxkmmRCeXPdLm7rQ34V4JxkfKlemBgApwpbhZ6R4BxJQVe+EO+h6+2mbdfPMB3bx9+6WIR7cJxdlP7N87w32Uc/uGigRI9HbOIsOjtwHrrUkjIDBFV35xsl6SPAf23E8oJJBBYF+nm4HmrR/Eo882JTrugeb0 X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230028)(4636009)(396003)(376002)(346002)(39860400002)(136003)(451199021)(46966006)(40470700004)(36840700001)(6862004)(8936002)(40460700003)(336012)(2616005)(47076005)(186003)(36860700001)(4326008)(2906002)(70586007)(70206006)(478600001)(54906003)(316002)(6506007)(53546011)(6512007)(5660300002)(107886003)(26005)(8676002)(41300700001)(6486002)(40480700001)(356005)(81166007)(82740400003)(33656002)(82310400005)(86362001)(36756003);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Jun 2023 12:00:59.4218 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 0fed84e2-4010-4366-2fc0-08db6297dd3a X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: DBAEUR03FT021.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR08MB10196 Hi Jan, > On 1 Jun 2023, at 12:52, Jan Beulich wrote: >=20 > On 08.05.2023 14:58, Jan Beulich wrote: >> While slightly longer, I agree with Andrew that using it helps >> readability. Where touching them anyway, also wrap some overly long >> lines. >>=20 >> Suggested-by: Andrew Cooper >> Signed-off-by: Jan Beulich >=20 > I didn't expect this was controversial, so - any chance of an ack or two? >=20 > Thanks, Jan Reviewed-by: Bertrand Marquis Cheers Bertrand >=20 >> --- a/xen/arch/arm/Makefile >> +++ b/xen/arch/arm/Makefile >> @@ -93,17 +93,19 @@ endif >>=20 >> $(TARGET)-syms: $(objtree)/prelink.o $(obj)/xen.lds >> $(LD) $(XEN_LDFLAGS) -T $(obj)/xen.lds -N $< \ >> - $(objtree)/common/symbols-dummy.o -o $(@D)/.$(@F).0 >> - $(NM) -pa --format=3Dsysv $(@D)/.$(@F).0 \ >> - | $(objtree)/tools/symbols $(all_symbols) --sysv --sort >$(@D)/.$(@F).= 0.S >> - $(MAKE) $(build)=3D$(@D) $(@D)/.$(@F).0.o >> + $(objtree)/common/symbols-dummy.o -o $(dot-target).0 >> + $(NM) -pa --format=3Dsysv $(dot-target).0 \ >> + | $(objtree)/tools/symbols $(all_symbols) --sysv --sort \ >> + > $(dot-target).0.S >> + $(MAKE) $(build)=3D$(@D) $(dot-target).0.o >> $(LD) $(XEN_LDFLAGS) -T $(obj)/xen.lds -N $< \ >> - $(@D)/.$(@F).0.o -o $(@D)/.$(@F).1 >> - $(NM) -pa --format=3Dsysv $(@D)/.$(@F).1 \ >> - | $(objtree)/tools/symbols $(all_symbols) --sysv --sort >$(@D)/.$(@F).= 1.S >> - $(MAKE) $(build)=3D$(@D) $(@D)/.$(@F).1.o >> + $(dot-target).0.o -o $(dot-target).1 >> + $(NM) -pa --format=3Dsysv $(dot-target).1 \ >> + | $(objtree)/tools/symbols $(all_symbols) --sysv --sort \ >> + > $(dot-target).1.S >> + $(MAKE) $(build)=3D$(@D) $(dot-target).1.o >> $(LD) $(XEN_LDFLAGS) -T $(obj)/xen.lds -N $< $(build_id_linker) \ >> - $(@D)/.$(@F).1.o -o $@ >> + $(dot-target).1.o -o $@ >> $(NM) -pa --format=3Dsysv $@ \ >> | $(objtree)/tools/symbols --all-symbols --xensyms --sysv --sort \ >> > $@.map >> --- a/xen/arch/x86/Makefile >> +++ b/xen/arch/x86/Makefile >> @@ -123,7 +123,7 @@ syms-warn-dup-$(CONFIG_ENFORCE_UNIQUE_SY >>=20 >> orphan-handling-$(call ld-option,--orphan-handling=3Dwarn) +=3D --orphan= -handling=3Dwarn >>=20 >> -$(TARGET): TMP =3D $(@D)/.$(@F).elf32 >> +$(TARGET): TMP =3D $(dot-target).elf32 >> $(TARGET): $(TARGET)-syms $(efi-y) $(obj)/boot/mkelf32 >> $(obj)/boot/mkelf32 $(notes_phdrs) $(TARGET)-syms $(TMP) $(XEN_IMG_OFFSE= T) \ >> `$(NM) $(TARGET)-syms | sed -ne 's/^\([^ ]*\) . __2M_rwdat= a_end$$/0x\1/p'` >> @@ -137,23 +137,23 @@ CFLAGS-$(XEN_BUILD_EFI) +=3D -DXEN_BUILD_E >>=20 >> $(TARGET)-syms: $(objtree)/prelink.o $(obj)/xen.lds >> $(LD) $(XEN_LDFLAGS) -T $(obj)/xen.lds -N $< $(build_id_linker) \ >> - $(objtree)/common/symbols-dummy.o -o $(@D)/.$(@F).0 >> - $(NM) -pa --format=3Dsysv $(@D)/.$(@F).0 \ >> + $(objtree)/common/symbols-dummy.o -o $(dot-target).0 >> + $(NM) -pa --format=3Dsysv $(dot-target).0 \ >> | $(objtree)/tools/symbols $(all_symbols) --sysv --sort \ >> - >$(@D)/.$(@F).0.S >> - $(MAKE) $(build)=3D$(@D) $(@D)/.$(@F).0.o >> + > $(dot-target).0.S >> + $(MAKE) $(build)=3D$(@D) $(dot-target).0.o >> $(LD) $(XEN_LDFLAGS) -T $(obj)/xen.lds -N $< $(build_id_linker) \ >> - $(@D)/.$(@F).0.o -o $(@D)/.$(@F).1 >> - $(NM) -pa --format=3Dsysv $(@D)/.$(@F).1 \ >> + $(dot-target).0.o -o $(dot-target).1 >> + $(NM) -pa --format=3Dsysv $(dot-target).1 \ >> | $(objtree)/tools/symbols $(all_symbols) --sysv --sort $(syms-warn-dup-= y) \ >> - >$(@D)/.$(@F).1.S >> - $(MAKE) $(build)=3D$(@D) $(@D)/.$(@F).1.o >> + > $(dot-target).1.S >> + $(MAKE) $(build)=3D$(@D) $(dot-target).1.o >> $(LD) $(XEN_LDFLAGS) -T $(obj)/xen.lds -N $< $(build_id_linker) \ >> - $(orphan-handling-y) $(@D)/.$(@F).1.o -o $@ >> + $(orphan-handling-y) $(dot-target).1.o -o $@ >> $(NM) -pa --format=3Dsysv $@ \ >> | $(objtree)/tools/symbols --all-symbols --xensyms --sysv --sort \ >> > $@.map >> - rm -f $(@D)/.$(@F).[0-9]* $(@D)/..$(@F).[0-9]* >> + rm -f $(dot-target).[0-9]* $(@D)/..$(@F).[0-9]* >> ifeq ($(CONFIG_XEN_IBT),y) >> $(SHELL) $(srctree)/tools/check-endbr.sh $@ >> endif >> @@ -210,27 +210,34 @@ ifeq ($(CONFIG_DEBUG_INFO),y) >> endif >> $(foreach base, $(VIRT_BASE) $(ALT_BASE), \ >> $(LD) $(call EFI_LDFLAGS,$(base)) -T $(obj)/efi.lds -N $< $(rel= ocs-dummy) \ >> - $(objtree)/common/symbols-dummy.o $(note_file_option) -= o $(@D)/.$(@F).$(base).0 &&) : >> - $(MKRELOC) $(foreach base,$(VIRT_BASE) $(ALT_BASE),$(@D)/.$(@F).$(base= ).0) >$(@D)/.$(@F).0r.S >> - $(NM) -pa --format=3Dsysv $(@D)/.$(@F).$(VIRT_BASE).0 \ >> - | $(objtree)/tools/symbols $(all_symbols) --sysv --sort >$(@D)/.$(@F).= 0s.S >> + $(objtree)/common/symbols-dummy.o $(note_file_option) \ >> + -o $(dot-target).$(base).0 &&) : >> + $(MKRELOC) $(foreach base,$(VIRT_BASE) $(ALT_BASE),$(dot-target).$(bas= e).0) \ >> + > $(dot-target).0r.S >> + $(NM) -pa --format=3Dsysv $(dot-target).$(VIRT_BASE).0 \ >> + | $(objtree)/tools/symbols $(all_symbols) --sysv --sort \ >> + > $(dot-target).0s.S >> $(MAKE) $(build)=3D$(@D) .$(@F).0r.o .$(@F).0s.o >> $(foreach base, $(VIRT_BASE) $(ALT_BASE), \ >> $(LD) $(call EFI_LDFLAGS,$(base)) -T $(obj)/efi.lds -N $< \ >> - $(@D)/.$(@F).0r.o $(@D)/.$(@F).0s.o $(note_file_option)= -o $(@D)/.$(@F).$(base).1 &&) : >> - $(MKRELOC) $(foreach base,$(VIRT_BASE) $(ALT_BASE),$(@D)/.$(@F).$(base= ).1) >$(@D)/.$(@F).1r.S >> - $(NM) -pa --format=3Dsysv $(@D)/.$(@F).$(VIRT_BASE).1 \ >> - | $(objtree)/tools/symbols $(all_symbols) --sysv --sort >$(@D)/.$(@F).= 1s.S >> + $(dot-target).0r.o $(dot-target).0s.o $(note_file_optio= n) \ >> + -o $(dot-target).$(base).1 &&) : >> + $(MKRELOC) $(foreach base,$(VIRT_BASE) $(ALT_BASE),$(dot-target).$(bas= e).1) \ >> + > $(dot-target).1r.S >> + $(NM) -pa --format=3Dsysv $(dot-target).$(VIRT_BASE).1 \ >> + | $(objtree)/tools/symbols $(all_symbols) --sysv --sort \ >> + > $(dot-target).1s.S >> $(MAKE) $(build)=3D$(@D) .$(@F).1r.o .$(@F).1s.o >> $(LD) $(call EFI_LDFLAGS,$(VIRT_BASE)) -T $(obj)/efi.lds -N $< \ >> - $(@D)/.$(@F).1r.o $(@D)/.$(@F).1s.o $(orphan-handling-y) $(note_f= ile_option) -o $@ >> + $(dot-target).1r.o $(dot-target).1s.o $(orphan-handling-y) \ >> + $(note_file_option) -o $@ >> $(NM) -pa --format=3Dsysv $@ \ >> | $(objtree)/tools/symbols --all-symbols --xensyms --sysv --sort \ >> > $@.map >> ifeq ($(CONFIG_DEBUG_INFO),y) >> $(if $(filter --strip-debug,$(EFI_LDFLAGS)),:$(space))$(OBJCOPY) -O elf6= 4-x86-64 $@ $@.elf >> endif >> - rm -f $(@D)/.$(@F).[0-9]* $(@D)/..$(@F).[0-9]* >> + rm -f $(dot-target).[0-9]* $(@D)/..$(@F).[0-9]* >> ifeq ($(CONFIG_XEN_IBT),y) >> $(SHELL) $(srctree)/tools/check-endbr.sh $@ >> endif >>=20 >>=20 >=20 From xen-devel-bounces@lists.xenproject.org Thu Jun 01 12:18:12 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 12:18:12 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542442.846303 (Exim 4.92) (envelope-from ) id 1q4hFc-0007Li-W4; Thu, 01 Jun 2023 12:17:56 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542442.846303; Thu, 01 Jun 2023 12:17:56 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4hFc-0007Lb-Sw; Thu, 01 Jun 2023 12:17:56 +0000 Received: by outflank-mailman (input) for mailman id 542442; Thu, 01 Jun 2023 12:17:55 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4hFb-0007LV-KD for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 12:17:55 +0000 Received: from mail-lf1-x12e.google.com (mail-lf1-x12e.google.com [2a00:1450:4864:20::12e]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 55d606ea-0076-11ee-b231-6b7b168915f2; Thu, 01 Jun 2023 14:17:54 +0200 (CEST) Received: by mail-lf1-x12e.google.com with SMTP id 2adb3069b0e04-4f3bb61f860so887561e87.3 for ; Thu, 01 Jun 2023 05:17:54 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 55d606ea-0076-11ee-b231-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1685621874; x=1688213874; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=Qs9+tnXanwgcK4qrGEwkuBM1Q57MST68fw5CtbuJTMA=; b=BZRYUIQEgP44d4XsCczLEwM1p1QtOJFSxg5kb+asid/w7gjG6XYreSQxEw9mLT9I0K pixvcNs+Xd8FZbmKtEp/gKCd49cVTvd62UzSt2Me/ouRIzX25TbInUfmyTu/uk+V9HQn UOwu/ZIxCaBlkdGm4qw4TD6/55rzFRoDZTkH8HjFa7hAP8/RiR4XemQXR0PdFXc60TEd 5BuFKwgJB8IeB99971ChO+fhdiyyZ3OS0TGaH+AFPY30uiYOMQ7PwQchsRyzSoDfdRFA E2JSPvX46RxAgf8J+QIjL9CEPhSF1Wt+JPPZiKLJfIqjDB2dvTe4p6eHOJXgYRwRz/ua Qpew== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1685621874; x=1688213874; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=Qs9+tnXanwgcK4qrGEwkuBM1Q57MST68fw5CtbuJTMA=; b=F88BuilfQl1pvx0NOR5bzK3LNyd9wEb/oGTIiMs9kksjPt/z39YG1SeUQk5eAfFZT3 RoxKqMQobiIGFTrXFP9dJqRuglkHdPXVXyMatWSRrTMIKfFutR9qyF0B6bhL5oTTVI03 LdEFP/xKcZtcNk8pflXLZDnUBSOfLFCuyr5Q0D31y6gXv3Unj+WUAxhdEpsVJigLZuaF +5IEE2wJc6Wr8v7WKAadVJm73auMu5/SexpTsRLo60G0ekBiKREQN5a7tZSM8h4iV/k1 KuElzUPJlQgLwwLMxOvi7KgajoApoxNiDe73gvOJa9ZdWF/zFGNd97Ec6zi0UaUepw4s MMmw== X-Gm-Message-State: AC+VfDyV050DpW9zlbYhxQJ+A22+0yxsinGwyxNOYK9utrcjWj2Ky7u4 ydZ7Q8nOvUSkX4yoMpM3bYoAD/B4smDRaUjinUU= X-Google-Smtp-Source: ACHHUZ5eW811q473omos35ztfVZRcrdG7RLAhpwH316mBd2kSZdFT+vw5sKYKRoeMO6EY695sHz9J2iSgJblU5OAED4= X-Received: by 2002:ac2:5dd3:0:b0:4f3:a0f0:7c4e with SMTP id x19-20020ac25dd3000000b004f3a0f07c4emr1432427lfq.35.1685621873377; Thu, 01 Jun 2023 05:17:53 -0700 (PDT) MIME-Version: 1.0 References: <20230601085001.1782-1-michal.orzel@amd.com> <7C760D1D-DAAE-48AC-8B2B-E6140452BE4A@arm.com> <73a143ee-8301-e0c0-a3fc-83ec10441c4c@amd.com> <703ccd1b-1908-4f5b-3b48-e02d317a2090@amd.com> In-Reply-To: <703ccd1b-1908-4f5b-3b48-e02d317a2090@amd.com> From: Julien Grall Date: Thu, 1 Jun 2023 14:17:41 +0200 Message-ID: Subject: Re: [PATCH] xen/arm: debug-pl011: Use 32-bit accessors for broader compatibility To: Michal Orzel Cc: Bertrand Marquis , Stefano Stabellini , Volodymyr Babchuk , Xen-devel Content-Type: multipart/alternative; boundary="000000000000fd06dc05fd106c10" --000000000000fd06dc05fd106c10 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Thu, 1 Jun 2023 at 13:48, Michal Orzel wrote: > Hi Julien, > > On 01/06/2023 13:12, Julien Grall wrote: > > > > > > > > Hi, > > > > Sorry for the formatting. > > > > On Thu, 1 Jun 2023 at 12:31, Michal Orzel michal.orzel@amd.com>> wrote: > > > > Hi Bertrand, > > > > On 01/06/2023 12:19, Bertrand Marquis wrote: > > > > > > > > > Hi Michal, > > > > > >> On 1 Jun 2023, at 10:50, Michal Orzel > wrote: > > >> > > >> There are implementations of the PL011 that can only handle 32-b= it > > >> accesses (i.e. no 16-bit or 8-bit), usually advertised by > 'reg-io-width' > > >> dt property set to 4. On such UARTs, the current early printk > code for > > >> arm64 does not work. To fix this issue, make all the accesses to > be 32-bit > > >> by using ldr, str without a size field. This makes it possible t= o > use > > >> early printk on such platforms, while all the other > implementations should > > >> generally cope with 32-bit accesses. In case they do not, they > would > > >> already fail as we explicitly use writel/readl in the runtime > driver to > > >> maintain broader compatibility and to be SBSAv2 compliant. > Therefore, this > > >> change makes the runtime/early handling consistent (also it > matches the > > >> arm32 debug-pl011 code). > > >> > > >> Signed-off-by: Michal Orzel michal.orzel@amd.com>> > > >> --- > > >> xen/arch/arm/arm64/debug-pl011.inc | 8 ++++---- > > >> 1 file changed, 4 insertions(+), 4 deletions(-) > > >> > > >> diff --git a/xen/arch/arm/arm64/debug-pl011.inc > b/xen/arch/arm/arm64/debug-pl011.inc > > >> index 6d60e78c8ba3..80eb8fdc1ec7 100644 > > >> --- a/xen/arch/arm/arm64/debug-pl011.inc > > >> +++ b/xen/arch/arm/arm64/debug-pl011.inc > > >> @@ -25,9 +25,9 @@ > > >> */ > > >> .macro early_uart_init xb, c > > >> mov x\c, #(7372800 / CONFIG_EARLY_UART_PL011_BAUD_RATE > % 16) > > >> - strh w\c, [\xb, #FBRD] /* -> UARTFBRD (Baud > divisor fraction) */ > > >> + str w\c, [\xb, #FBRD] /* -> UARTFBRD (Baud > divisor fraction) */ > > >> mov x\c, #(7372800 / CONFIG_EARLY_UART_PL011_BAUD_RATE > / 16) > > >> - strh w\c, [\xb, #IBRD] /* -> UARTIBRD (Baud > divisor integer) */ > > >> + str w\c, [\xb, #IBRD] /* -> UARTIBRD (Baud > divisor integer) */ > > >> mov x\c, #WLEN_8 /* 8n1 */ > > >> str w\c, [\xb, #LCR_H] /* -> UARTLCR_H (Line > control) */ > > >> ldr x\c, =3D(RXE | TXE | UARTEN) > > >> @@ -41,7 +41,7 @@ > > >> */ > > >> .macro early_uart_ready xb, c > > >> 1: > > >> - ldrh w\c, [\xb, #FR] /* <- UARTFR (Flag > register) */ > > >> + ldr w\c, [\xb, #FR] /* <- UARTFR (Flag > register) */ > > >> tst w\c, #BUSY /* Check BUSY bit */ > > >> b.ne 1b /* Wait for > the UART to be ready */ > > >> .endm > > >> @@ -52,7 +52,7 @@ > > >> * wt: register which contains the character to transmit > > >> */ > > >> .macro early_uart_transmit xb, wt > > >> - strb \wt, [\xb, #DR] /* -> UARTDR (Data > Register) */ > > >> + str \wt, [\xb, #DR] /* -> UARTDR (Data > Register) */ > > > > > > Is it really ok to drop the 8bit access here ? > > It is not only ok, it is necessary. Otherwise it won't work on the > above mentioned UARTs (they can only perform 32-bit access). > > > > > > IIRC some compilers will complain because you use wN with =E2=80=9Cstr= =E2=80=9D. > Hmm, I would expect it to be totally ok as the size is determined by the > reg name. Any reference? I don=E2=80=99t have the spec with me. I will have a look on Monday and rep= ly back here. > > > > > > > And following to what I wrote in commit msg: > > - we use str already in arm32 which results in 32-bit access > > > > > > - we use reald/writel that end up as str/ldr in runtime driver > > > > > > - we are down to SBSAv2 spec that runtime driver follows (meaning w= e > can use early printk for SBSA too) > > > > > > The runtime driver is meant to follow the PL011 spec first and may have > some adaptation for SBSA. > > > > > > - this way we support broader list of PL011s consistently (i.e. bot= h > early and runtime driver works as oppose to only runtime) > > > > > > I am not sure I agree here. You are focussing on HW that only support > 32-bit access. And, AFAICT this shouldn=E2=80=99t be the norm. > I'm focusing on supporting wider range of devices. > At the moment Xen PL011 runtime makes 32-bit accesses while early code > makes 8/16-bit accesses (arm32 uses 32-bit only as well). > So my patch can only improve things and not make them worse. In case of > some very old legacy device that cannot cope with 32-bit accesses, > such device would not work anyway with the runtime driver. It depends how you approach the problem. From my POV, a user that can=E2=80= =99t see logs will likely try to enable the early UART. Then they could debug the runtime driver. With your proposal, this would even be broken. Also, while I'm aware of platforms with 32-bit only UART and the normal one > that can cope with 32-bit as well, I'm not aware of any legacy one that > cannot do that. I am under the impression that the default behaviour on Linux is to use non 32-big access. I would not want to diverge from that. > > Adding a config option like EARLY_UART_PL011_MMIO32 would be ok but it > would require to also modify arm32 early printk and runtime driver. I don=E2=80=99t view it as a requirement. It would be OK to have it only av= ailable for 64-but at the beginning. Same for the runtime. > Not mentioning things that we somehow do not want to look at like > hardcoded 7372800 HZ frequency for early_uart_init we can just pray > to match the HW UART clock or other not PL011 spec things (i.e. incorrect > FIFO size for most modern UARTs). I am aware of this issue but I don=E2=80=99t understand how this is related= to this discussion. My only request is you don=E2=80=99t break the existing behavior of the ear= ly PL011 driver on arm64. > > But if this is what you require, I'm somewhat forced to do so just so tha= t > our devices can be supported. See above. > > ~Michal > --000000000000fd06dc05fd106c10 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable


On Thu, 1 Jun 2023 at 13:48, Michal Orzel <michal.orzel@amd.com> wrote:
Hi Julien,

On 01/06/2023 13:12, Julien Grall wrote:
>=C2=A0 =C2=A0 =C2=A0 =C2=A0
>
>
> Hi,
>
> Sorry for the formatting.
>
> On Thu, 1 Jun 2023 at 12:31, Michal Orzel <michal.orzel@amd.com <mailto:michal.orzel@amd.com>> wrote:
>
>=C2=A0 =C2=A0 =C2=A0Hi Bertrand,
>
>=C2=A0 =C2=A0 =C2=A0On 01/06/2023 12:19, Bertrand Marquis wrote:
>=C2=A0 =C2=A0 =C2=A0>
>=C2=A0 =C2=A0 =C2=A0>
>=C2=A0 =C2=A0 =C2=A0> Hi Michal,
>=C2=A0 =C2=A0 =C2=A0>
>=C2=A0 =C2=A0 =C2=A0>> On 1 Jun 2023, at 10:50, Michal Orzel <=
michal.orzel@amd.= com <mailto:michal.orzel@amd.com>> wrote:
>=C2=A0 =C2=A0 =C2=A0>>
>=C2=A0 =C2=A0 =C2=A0>> There are implementations of the PL011 tha= t can only handle 32-bit
>=C2=A0 =C2=A0 =C2=A0>> accesses (i.e. no 16-bit or 8-bit), usuall= y advertised by 'reg-io-width'
>=C2=A0 =C2=A0 =C2=A0>> dt property set to 4. On such UARTs, the c= urrent early printk code for
>=C2=A0 =C2=A0 =C2=A0>> arm64 does not work. To fix this issue, ma= ke all the accesses to be 32-bit
>=C2=A0 =C2=A0 =C2=A0>> by using ldr, str without a size field. Th= is makes it possible to use
>=C2=A0 =C2=A0 =C2=A0>> early printk on such platforms, while all = the other implementations should
>=C2=A0 =C2=A0 =C2=A0>> generally cope with 32-bit accesses. In ca= se they do not, they would
>=C2=A0 =C2=A0 =C2=A0>> already fail as we explicitly use writel/r= eadl in the runtime driver to
>=C2=A0 =C2=A0 =C2=A0>> maintain broader compatibility and to be S= BSAv2 compliant. Therefore, this
>=C2=A0 =C2=A0 =C2=A0>> change makes the runtime/early handling co= nsistent (also it matches the
>=C2=A0 =C2=A0 =C2=A0>> arm32 debug-pl011 code).
>=C2=A0 =C2=A0 =C2=A0>>
>=C2=A0 =C2=A0 =C2=A0>> Signed-off-by: Michal Orzel <michal.orzel@amd.com &l= t;mailto:michal.o= rzel@amd.com>>
>=C2=A0 =C2=A0 =C2=A0>> ---
>=C2=A0 =C2=A0 =C2=A0>> xen/arch/arm/arm64/debug-pl011.inc | 8 +++= +----
>=C2=A0 =C2=A0 =C2=A0>> 1 file changed, 4 insertions(+), 4 deletio= ns(-)
>=C2=A0 =C2=A0 =C2=A0>>
>=C2=A0 =C2=A0 =C2=A0>> diff --git a/xen/arch/arm/arm64/debug-pl01= 1.inc b/xen/arch/arm/arm64/debug-pl011.inc
>=C2=A0 =C2=A0 =C2=A0>> index 6d60e78c8ba3..80eb8fdc1ec7 100644 >=C2=A0 =C2=A0 =C2=A0>> --- a/xen/arch/arm/arm64/debug-pl011.inc >=C2=A0 =C2=A0 =C2=A0>> +++ b/xen/arch/arm/arm64/debug-pl011.inc >=C2=A0 =C2=A0 =C2=A0>> @@ -25,9 +25,9 @@
>=C2=A0 =C2=A0 =C2=A0>>=C2=A0 */
>=C2=A0 =C2=A0 =C2=A0>> .macro early_uart_init xb, c
>=C2=A0 =C2=A0 =C2=A0>>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0mov=C2=A0= =C2=A0x\c, #(7372800 / CONFIG_EARLY_UART_PL011_BAUD_RATE % 16)
>=C2=A0 =C2=A0 =C2=A0>> -=C2=A0 =C2=A0 =C2=A0 =C2=A0 strh=C2=A0 w\= c, [\xb, #FBRD]=C2=A0 =C2=A0 =C2=A0 /* -> UARTFBRD (Baud divisor fractio= n) */
>=C2=A0 =C2=A0 =C2=A0>> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 str=C2=A0 =C2= =A0w\c, [\xb, #FBRD]=C2=A0 =C2=A0 =C2=A0 /* -> UARTFBRD (Baud divisor fr= action) */
>=C2=A0 =C2=A0 =C2=A0>>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0mov=C2=A0= =C2=A0x\c, #(7372800 / CONFIG_EARLY_UART_PL011_BAUD_RATE / 16)
>=C2=A0 =C2=A0 =C2=A0>> -=C2=A0 =C2=A0 =C2=A0 =C2=A0 strh=C2=A0 w\= c, [\xb, #IBRD]=C2=A0 =C2=A0 =C2=A0 /* -> UARTIBRD (Baud divisor integer= ) */
>=C2=A0 =C2=A0 =C2=A0>> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 str=C2=A0 =C2= =A0w\c, [\xb, #IBRD]=C2=A0 =C2=A0 =C2=A0 /* -> UARTIBRD (Baud divisor in= teger) */
>=C2=A0 =C2=A0 =C2=A0>>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0mov=C2=A0= =C2=A0x\c, #WLEN_8=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0/* 8n1 */
>=C2=A0 =C2=A0 =C2=A0>>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0str=C2=A0= =C2=A0w\c, [\xb, #LCR_H]=C2=A0 =C2=A0 =C2=A0/* -> UARTLCR_H (Line contr= ol) */
>=C2=A0 =C2=A0 =C2=A0>>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0ldr=C2=A0= =C2=A0x\c, =3D(RXE | TXE | UARTEN)
>=C2=A0 =C2=A0 =C2=A0>> @@ -41,7 +41,7 @@
>=C2=A0 =C2=A0 =C2=A0>>=C2=A0 */
>=C2=A0 =C2=A0 =C2=A0>> .macro early_uart_ready xb, c
>=C2=A0 =C2=A0 =C2=A0>> 1:
>=C2=A0 =C2=A0 =C2=A0>> -=C2=A0 =C2=A0 =C2=A0 =C2=A0 ldrh=C2=A0 w\= c, [\xb, #FR]=C2=A0 =C2=A0 =C2=A0 =C2=A0 /* <- UARTFR (Flag register) */=
>=C2=A0 =C2=A0 =C2=A0>> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 ldr=C2=A0 =C2= =A0w\c, [\xb, #FR]=C2=A0 =C2=A0 =C2=A0 =C2=A0 /* <- UARTFR (Flag registe= r) */
>=C2=A0 =C2=A0 =C2=A0>>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0tst=C2=A0= =C2=A0w\c, #BUSY=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0/* Check B= USY bit */
>=C2=A0 =C2=A0 =C2=A0>>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0b.ne <http://b.ne>= =C2=A0 1b=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0/* Wait for the UART to be ready */
>=C2=A0 =C2=A0 =C2=A0>> .endm
>=C2=A0 =C2=A0 =C2=A0>> @@ -52,7 +52,7 @@
>=C2=A0 =C2=A0 =C2=A0>>=C2=A0 * wt: register which contains the ch= aracter to transmit
>=C2=A0 =C2=A0 =C2=A0>>=C2=A0 */
>=C2=A0 =C2=A0 =C2=A0>> .macro early_uart_transmit xb, wt
>=C2=A0 =C2=A0 =C2=A0>> -=C2=A0 =C2=A0 =C2=A0 =C2=A0 strb=C2=A0 \w= t, [\xb, #DR]=C2=A0 =C2=A0 =C2=A0 =C2=A0 /* -> UARTDR (Data Register) */=
>=C2=A0 =C2=A0 =C2=A0>> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 str=C2=A0 =C2= =A0\wt, [\xb, #DR]=C2=A0 =C2=A0 =C2=A0 =C2=A0 /* -> UARTDR (Data Registe= r) */
>=C2=A0 =C2=A0 =C2=A0>
>=C2=A0 =C2=A0 =C2=A0> Is it really ok to drop the 8bit access here ?=
>=C2=A0 =C2=A0 =C2=A0It is not only ok, it is necessary. Otherwise it wo= n't work on the above mentioned UARTs (they can only perform 32-bit acc= ess).
>
>
> IIRC some compilers will complain because you use wN with =E2=80=9Cstr= =E2=80=9D.
Hmm, I would expect it to be totally ok as the size is determined by the re= g name. Any reference?

I don=E2=80=99t have the spec with me. I will have a look on Monday a= nd reply back here.



>
>
>=C2=A0 =C2=A0 =C2=A0And following to what I wrote in commit msg:
>=C2=A0 =C2=A0 =C2=A0- we use str already in arm32 which results in 32-b= it access
>
>
>=C2=A0 =C2=A0 =C2=A0- we use reald/writel that end up as str/ldr in run= time driver
>
>
>=C2=A0 =C2=A0 =C2=A0- we are down to SBSAv2 spec that runtime driver fo= llows (meaning we can use early printk for SBSA too)
>
>
> The runtime driver is meant to follow the PL011 spec first and may hav= e some adaptation for SBSA.
>
>
>=C2=A0 =C2=A0 =C2=A0- this way we support broader list of PL011s consis= tently (i.e. both early and runtime driver works as oppose to only runtime)=
>
>
> =C2=A0I am not sure I agree here. You are focussing on HW that only su= pport 32-bit access. And, AFAICT this shouldn=E2=80=99t be the norm.
I'm focusing on supporting wider range of devices.
At the moment Xen PL011 runtime makes 32-bit accesses while early code make= s 8/16-bit accesses (arm32 uses 32-bit only as well).
So my patch can only improve things and not make them worse. In case of som= e very old legacy device that cannot cope with 32-bit accesses,
such device would not work anyway with the runtime driver.

It depends how you approach the p= roblem. From my POV, a user that can=E2=80=99t see logs will likely try to = enable the early UART. Then they could debug the runtime driver. With your = proposal, this would even be broken.

Also, while I'm aware of platforms with 32-bit= only UART and the normal one
that can cope with 32-bit as well, I'm not aware of any legacy one that= cannot do that.

= I am under the impression that the default behaviour on Linux is to use non= 32-big access. I would not want to diverge from that.



Adding a config option like EARLY_UART_PL011_MMIO32 would be ok but it woul= d require to also modify arm32 early printk and runtime driver.

I don=E2=80=99t view it as a requirement. It would be OK to = have it only available for 64-but at the beginning. Same for the runtime.


Not mentioning things that we somehow do not want to look at like hardcoded= 7372800 HZ frequency for early_uart_init we can just pray
to match the HW UART clock or other not PL011 spec things (i.e. incorrect F= IFO size for most modern UARTs).

I am aware of this issue but I don=E2=80=99t understand how= this is related to this discussion.

My only request is you don=E2=80=99t break the existing behavi= or of the early PL011 driver on arm64.



But if this is what you require, I'm somewhat forced to do so just so t= hat our devices can be supported.

<= div dir=3D"auto">See above.=C2=A0



~Michal
--000000000000fd06dc05fd106c10-- From xen-devel-bounces@lists.xenproject.org Thu Jun 01 12:27:37 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 12:27:37 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542448.846317 (Exim 4.92) (envelope-from ) id 1q4hOl-0000U6-0n; Thu, 01 Jun 2023 12:27:23 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542448.846317; Thu, 01 Jun 2023 12:27:22 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4hOk-0000Tz-U5; Thu, 01 Jun 2023 12:27:22 +0000 Received: by outflank-mailman (input) for mailman id 542448; Thu, 01 Jun 2023 12:27:21 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4hOj-0000Tp-Mx; Thu, 01 Jun 2023 12:27:21 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4hOj-0000PN-IA; Thu, 01 Jun 2023 12:27:21 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4hOj-00019I-82; Thu, 01 Jun 2023 12:27:21 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q4hOj-0001sq-7c; Thu, 01 Jun 2023 12:27:21 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=G75tceD/bfuY1djFg2KD4a2VUDUwZBhlQ2qsQVL2kMg=; b=uSTpK6lpyVTSQ6a3Sgjv/JHB37 0AawVVywW/Npb29luMGY417Ukop+LTamtg2nLM7sPSyr+P9l8J6mrEX03mp/TEmdKexebjSLKmU5t 1oGHbMyIUj9pVRCtiFBMk2fsK3G674EKRVZ/Xpdc4chJM+yTdo+3mUzUV4FhQ4+wA6ZU=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable-smoke test] 181074: tolerable all pass - PUSHED X-Osstest-Failures: xen-unstable-smoke:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking xen-unstable-smoke:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking xen-unstable-smoke:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking xen-unstable-smoke:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking xen-unstable-smoke:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: xen=59d0bf62861f5c9b317ccf89f8b5c8b4d19927ad X-Osstest-Versions-That: xen=dc98fa74446e5abe417e5ba9a6a632b50444cfa1 From: osstest service owner Date: Thu, 01 Jun 2023 12:27:21 +0000 flight 181074 xen-unstable-smoke real [real] http://logs.test-lab.xenproject.org/osstest/logs/181074/ Failures :-/ but no regressions. Tests which did not succeed, but are not blocking: test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-armhf-armhf-xl 15 migrate-support-check fail never pass test-armhf-armhf-xl 16 saverestore-support-check fail never pass version targeted for testing: xen 59d0bf62861f5c9b317ccf89f8b5c8b4d19927ad baseline version: xen dc98fa74446e5abe417e5ba9a6a632b50444cfa1 Last test of basis 181054 2023-05-31 19:00:25 Z 0 days Testing same since 181074 2023-06-01 10:00:27 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Andrew Cooper Jan Beulich jobs: build-arm64-xsm pass build-amd64 pass build-armhf pass build-amd64-libvirt pass test-armhf-armhf-xl pass test-arm64-arm64-xl-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-libvirt pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Pushing revision : To xenbits.xen.org:/home/xen/git/xen.git dc98fa7444..59d0bf6286 59d0bf62861f5c9b317ccf89f8b5c8b4d19927ad -> smoke From xen-devel-bounces@lists.xenproject.org Thu Jun 01 12:38:39 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 12:38:39 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542454.846327 (Exim 4.92) (envelope-from ) id 1q4hZT-000233-Va; Thu, 01 Jun 2023 12:38:27 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542454.846327; Thu, 01 Jun 2023 12:38:27 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4hZT-00022w-Sn; Thu, 01 Jun 2023 12:38:27 +0000 Received: by outflank-mailman (input) for mailman id 542454; Thu, 01 Jun 2023 12:38:26 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4hZS-00022q-Px for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 12:38:26 +0000 Received: from NAM12-MW2-obe.outbound.protection.outlook.com (mail-mw2nam12on20614.outbound.protection.outlook.com [2a01:111:f400:fe5a::614]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 31eeb0a1-0079-11ee-b231-6b7b168915f2; Thu, 01 Jun 2023 14:38:24 +0200 (CEST) Received: from MW4PR04CA0145.namprd04.prod.outlook.com (2603:10b6:303:84::30) by PH7PR12MB6659.namprd12.prod.outlook.com (2603:10b6:510:210::5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6433.23; Thu, 1 Jun 2023 12:38:19 +0000 Received: from CO1NAM11FT051.eop-nam11.prod.protection.outlook.com (2603:10b6:303:84:cafe::ce) by MW4PR04CA0145.outlook.office365.com (2603:10b6:303:84::30) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.23 via Frontend Transport; Thu, 1 Jun 2023 12:38:18 +0000 Received: from SATLEXMB04.amd.com (165.204.84.17) by CO1NAM11FT051.mail.protection.outlook.com (10.13.174.114) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6455.24 via Frontend Transport; Thu, 1 Jun 2023 12:38:18 +0000 Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Thu, 1 Jun 2023 07:38:17 -0500 Received: from [10.71.193.39] (10.180.168.240) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server id 15.1.2375.34 via Frontend Transport; Thu, 1 Jun 2023 07:38:16 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 31eeb0a1-0079-11ee-b231-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Kr+xhwWsDl0rdPBWUh8k7ddfTqorCBOgYmqvp3SexkZUcxqiXx6eHhHndUHe2a74DwSnD+AbnGmb4Y9Jk9iX4hY9+0obmXDE/Xo8JouCExxTtxGHVhIjmTmOGhrxw12ZAn2GHH/CtxiZaD4Hw4FlXE+x995B1rP7ZqIHwLB16LUXuQPzmUQ4b3+B63hOVR0kSa55G0G1ZBOPLz8gMQ1liOmvuu1rCcdD7l136i+dp8kDJTHQfWquyj/VLTaYLRoJpMe6PDXv8BiwKN4bpMOPKWXk+61cpCbuhWfiqQlib+YYfBe3KLzvZfy2lsk2A3z9c2yC6oHHojPNsjhB4hCaYA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=gAd2bTMII8cogo7mKeqLKXCFn0VtUzbGe3XIypelxc8=; b=Zxsiz7nGZUcHDSulqYHshFy06TZuE+213HwoaxFsb4fey5mMmW/YcpBFAX715VZhYc8FCSTxaERURMGkJ3JJ1aK1jiQxA+hGCmq25krjyzw0qNXrteC3nTRK2oe0WqeWmCXiF4QXdVqk9E7qx50tBioNIav52381rFLhJ0gvaItUQLhaSCGY0JH28EhaVVxEwzrAbxuDa7kNa+Pp/rN8Y525rarNfxi6XEO0rErWJbPCVobwLlZLqSs1CinbKEiinMVlyUPSzxuvl51cX77uxjXikCzJtArU+UOZ9oe6Apv0fcmR51IfS5NkNDI08wxLyGfZpcsHkJ2snT/60uDCeA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=gmail.com smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=gAd2bTMII8cogo7mKeqLKXCFn0VtUzbGe3XIypelxc8=; b=OXuFq0z7n0vaIQo/RoGAqu9S0lYDzrdmsxf3qjMpdamLEXuGZ0D2OhSiFrClqpQyNG83D+0fksvnxpDc8tYxAWgI2lMnyZYXQnbKR1exPp1wTKq0qKOfEqvZxgGob7Ix7Qcd25XfaJ2uQn3iT7ioRGGXjNCjfxgwMCYsnbR5320= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C Message-ID: Date: Thu, 1 Jun 2023 14:38:16 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH] xen/arm: debug-pl011: Use 32-bit accessors for broader compatibility Content-Language: en-US To: Julien Grall CC: Bertrand Marquis , Stefano Stabellini , Volodymyr Babchuk , Xen-devel References: <20230601085001.1782-1-michal.orzel@amd.com> <7C760D1D-DAAE-48AC-8B2B-E6140452BE4A@arm.com> <73a143ee-8301-e0c0-a3fc-83ec10441c4c@amd.com> <703ccd1b-1908-4f5b-3b48-e02d317a2090@amd.com> From: Michal Orzel In-Reply-To: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO1NAM11FT051:EE_|PH7PR12MB6659:EE_ X-MS-Office365-Filtering-Correlation-Id: 64b5b303-f4ee-4378-ea2f-08db629d13de X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 9kuK9T1ColFTLgRgR5LWBJLsIKvRiOeglHTgC3vMRkL/V6Q0p9utpJ1jexHMMxa+558zpW6+Oeyz5A0T+Axr1JOx+Gpq60bxVvifAHpKx+6Maz+nPGEhqtVDzXZH/mhYTogTYNG/3t9bJX73xutnvMciQp/yl0/hWyHNeAZVhKYy1ZTrLuozQNKGpoHUhS3Yrwl+VlLl2nCiDRAjw008wzjv3ydqbFngAyhf65RB/yjaEwk/kOk0yAHZK+t59EYl3hzdVPtgh1zoQG3PozK4P4pmFPWF36I0r2h5PuHFUPKYuf7bO6LhLk7Ukv7bO45psJFq+5gucgExdzG37MWdTie0dCSnBHwIHeG4tm84KT4DA6VLqO/BmP0+n07F1OZJY2ZXOjvbB0ojM6OoOzGrxvKbK50bjfZkxyqspY32V7XeGvccB8S2pAGYQgN0Z7QxszY6Zk0yoSEq4vm/AYCiYx9OavW2X04xdp82YlypHML1VHzmyiSZ87mOGXByqtQ6XwQsNxywzpgRghBmEMtEhtcHtpqlYC44kKm5OPkj2kp98KcmnG8hK7uPI87NJc22mr6zDKXBM8Ox15ao/PmSXSv3Tjhc0bYN2bJOhx9YZV5D02fPg7iALR56onaSN3blu7pmErREH0ScGpbTpWJhrlek5y7fnYCnZD79lWqBuuTva9bYs9KEegYTp7I6DfFO7esSBIAfJy70E5gGU5y2KH7eJorEu5+l+9t9Gno8fviLv7sqXFZ16mh50V3pvTNxFEgBrTnUZMhKp1E8mWJaq9YKF9HVBL0csSaisQZwSJA= X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(376002)(136003)(396003)(39860400002)(346002)(451199021)(36840700001)(46966006)(40470700004)(81166007)(2906002)(31686004)(336012)(356005)(31696002)(86362001)(82310400005)(41300700001)(8936002)(186003)(8676002)(82740400003)(2616005)(478600001)(53546011)(426003)(26005)(16576012)(54906003)(316002)(47076005)(83380400001)(6916009)(70586007)(70206006)(4326008)(36756003)(36860700001)(44832011)(5660300002)(40460700003)(40480700001)(36900700001)(43740500002);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Jun 2023 12:38:18.4414 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 64b5b303-f4ee-4378-ea2f-08db629d13de X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com] X-MS-Exchange-CrossTenant-AuthSource: CO1NAM11FT051.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH7PR12MB6659 On 01/06/2023 14:17, Julien Grall wrote: > > > > > > On Thu, 1 Jun 2023 at 13:48, Michal Orzel > wrote: > > Hi Julien, > > On 01/06/2023 13:12, Julien Grall wrote: > >        > > > > > > Hi, > > > > Sorry for the formatting. > > > > On Thu, 1 Jun 2023 at 12:31, Michal Orzel >> wrote: > > > >     Hi Bertrand, > > > >     On 01/06/2023 12:19, Bertrand Marquis wrote: > >     > > >     > > >     > Hi Michal, > >     > > >     >> On 1 Jun 2023, at 10:50, Michal Orzel >> wrote: > >     >> > >     >> There are implementations of the PL011 that can only handle 32-bit > >     >> accesses (i.e. no 16-bit or 8-bit), usually advertised by 'reg-io-width' > >     >> dt property set to 4. On such UARTs, the current early printk code for > >     >> arm64 does not work. To fix this issue, make all the accesses to be 32-bit > >     >> by using ldr, str without a size field. This makes it possible to use > >     >> early printk on such platforms, while all the other implementations should > >     >> generally cope with 32-bit accesses. In case they do not, they would > >     >> already fail as we explicitly use writel/readl in the runtime driver to > >     >> maintain broader compatibility and to be SBSAv2 compliant. Therefore, this > >     >> change makes the runtime/early handling consistent (also it matches the > >     >> arm32 debug-pl011 code). > >     >> > >     >> Signed-off-by: Michal Orzel >> > >     >> --- > >     >> xen/arch/arm/arm64/debug-pl011.inc | 8 ++++---- > >     >> 1 file changed, 4 insertions(+), 4 deletions(-) > >     >> > >     >> diff --git a/xen/arch/arm/arm64/debug-pl011.inc b/xen/arch/arm/arm64/debug-pl011.inc > >     >> index 6d60e78c8ba3..80eb8fdc1ec7 100644 > >     >> --- a/xen/arch/arm/arm64/debug-pl011.inc > >     >> +++ b/xen/arch/arm/arm64/debug-pl011.inc > >     >> @@ -25,9 +25,9 @@ > >     >>  */ > >     >> .macro early_uart_init xb, c > >     >>         mov   x\c, #(7372800 / CONFIG_EARLY_UART_PL011_BAUD_RATE % 16) > >     >> -        strh  w\c, [\xb, #FBRD]      /* -> UARTFBRD (Baud divisor fraction) */ > >     >> +        str   w\c, [\xb, #FBRD]      /* -> UARTFBRD (Baud divisor fraction) */ > >     >>         mov   x\c, #(7372800 / CONFIG_EARLY_UART_PL011_BAUD_RATE / 16) > >     >> -        strh  w\c, [\xb, #IBRD]      /* -> UARTIBRD (Baud divisor integer) */ > >     >> +        str   w\c, [\xb, #IBRD]      /* -> UARTIBRD (Baud divisor integer) */ > >     >>         mov   x\c, #WLEN_8           /* 8n1 */ > >     >>         str   w\c, [\xb, #LCR_H]     /* -> UARTLCR_H (Line control) */ > >     >>         ldr   x\c, =(RXE | TXE | UARTEN) > >     >> @@ -41,7 +41,7 @@ > >     >>  */ > >     >> .macro early_uart_ready xb, c > >     >> 1: > >     >> -        ldrh  w\c, [\xb, #FR]        /* <- UARTFR (Flag register) */ > >     >> +        ldr   w\c, [\xb, #FR]        /* <- UARTFR (Flag register) */ > >     >>         tst   w\c, #BUSY             /* Check BUSY bit */ > >     >>         b.ne >  1b                     /* Wait for the UART to be ready */ > >     >> .endm > >     >> @@ -52,7 +52,7 @@ > >     >>  * wt: register which contains the character to transmit > >     >>  */ > >     >> .macro early_uart_transmit xb, wt > >     >> -        strb  \wt, [\xb, #DR]        /* -> UARTDR (Data Register) */ > >     >> +        str   \wt, [\xb, #DR]        /* -> UARTDR (Data Register) */ > >     > > >     > Is it really ok to drop the 8bit access here ? > >     It is not only ok, it is necessary. Otherwise it won't work on the above mentioned UARTs (they can only perform 32-bit access). > > > > > > IIRC some compilers will complain because you use wN with “str”. > Hmm, I would expect it to be totally ok as the size is determined by the reg name. Any reference? > > > I don’t have the spec with me. I will have a look on Monday and reply back here. > > > > > > > > >     And following to what I wrote in commit msg: > >     - we use str already in arm32 which results in 32-bit access > > > > > >     - we use reald/writel that end up as str/ldr in runtime driver > > > > > >     - we are down to SBSAv2 spec that runtime driver follows (meaning we can use early printk for SBSA too) > > > > > > The runtime driver is meant to follow the PL011 spec first and may have some adaptation for SBSA. > > > > > >     - this way we support broader list of PL011s consistently (i.e. both early and runtime driver works as oppose to only runtime) > > > > > >  I am not sure I agree here. You are focussing on HW that only support 32-bit access. And, AFAICT this shouldn’t be the norm. > I'm focusing on supporting wider range of devices. > At the moment Xen PL011 runtime makes 32-bit accesses while early code makes 8/16-bit accesses (arm32 uses 32-bit only as well). > So my patch can only improve things and not make them worse. In case of some very old legacy device that cannot cope with 32-bit accesses, > such device would not work anyway with the runtime driver. > > > It depends how you approach the problem. From my POV, a user that can’t see logs will likely try to enable the early UART. Then they could debug the runtime driver. With your proposal, this would even be broken. > > Also, while I'm aware of platforms with 32-bit only UART and the normal one > that can cope with 32-bit as well, I'm not aware of any legacy one that cannot do that. > > > I am under the impression that the default behaviour on Linux is to use non 32-big access. I would not want to diverge from that. > > > > Adding a config option like EARLY_UART_PL011_MMIO32 would be ok but it would require to also modify arm32 early printk and runtime driver. > > > I don’t view it as a requirement. It would be OK to have it only available for 64-but at the beginning. Same for the runtime. > > > Not mentioning things that we somehow do not want to look at like hardcoded 7372800 HZ frequency for early_uart_init we can just pray > to match the HW UART clock or other not PL011 spec things (i.e. incorrect FIFO size for most modern UARTs). > > > I am aware of this issue but I don’t understand how this is related to this discussion. > > My only request is you don’t break the existing behavior of the early PL011 driver on arm64. I understand your concern about legacy devices and that you do not want to break the existing code on arm64. But please correct me if I'm wrong. These two lines: str w\c, [\xb, #LCR_H] str w\c, [\xb, #CR] already make 32-bit accesses, meaning our early driver does not support legacy devices anyway. You can say it is part of early_uart_init that is not often used but still you cannot really say that our current code supports such devices. Anyway, I will then first prepare a fix for the current code and then add support for mmio32 only. ~Michal From xen-devel-bounces@lists.xenproject.org Thu Jun 01 12:49:07 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 12:49:07 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542458.846337 (Exim 4.92) (envelope-from ) id 1q4hjX-0003YZ-Vc; Thu, 01 Jun 2023 12:48:51 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542458.846337; Thu, 01 Jun 2023 12:48:51 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4hjX-0003YS-Rt; Thu, 01 Jun 2023 12:48:51 +0000 Received: by outflank-mailman (input) for mailman id 542458; Thu, 01 Jun 2023 12:48:50 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4hjW-0003YL-93 for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 12:48:50 +0000 Received: from mail.skyhub.de (mail.skyhub.de [5.9.137.197]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id a7400631-007a-11ee-b231-6b7b168915f2; Thu, 01 Jun 2023 14:48:49 +0200 (CEST) Received: from zn.tnic (pd9530d32.dip0.t-ipconnect.de [217.83.13.50]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.skyhub.de (SuperMail on ZX Spectrum 128k) with ESMTPSA id 282DA1EC0478; Thu, 1 Jun 2023 14:48:48 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: a7400631-007a-11ee-b231-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=alien8.de; s=dkim; t=1685623728; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:in-reply-to:in-reply-to: references:references; bh=YmFiCbebQ6IXGcfBHVIHPePS7JhZlOwIY9i/4sf8dmg=; b=V+jzs4R9Df7/I2Plut7u9DRpge6wgDMFzFR3iMwoolyeMNP+EwomwZy+5ZOiPGorThqbJ+ zGIY9KNBMBcqT447x/PtciLYFc8vbkD2vehfaY+K7ieI+jueySooXbsq1kDU3O9A+wFPgO /ltT/MatCa58ljs9Rt4cX8o75p9QK0A= Date: Thu, 1 Jun 2023 14:48:44 +0200 From: Borislav Petkov To: Juergen Gross Cc: linux-kernel@vger.kernel.org, x86@kernel.org, linux-hyperv@vger.kernel.org, linux-doc@vger.kernel.org, mikelley@microsoft.com, Thomas Gleixner , Ingo Molnar , Dave Hansen , "H. Peter Anvin" , "K. Y. Srinivasan" , Haiyang Zhang , Wei Liu , Dexuan Cui , Boris Ostrovsky , xen-devel@lists.xenproject.org, Jonathan Corbet , Andy Lutomirski , Peter Zijlstra Subject: Re: [PATCH v6 00/16] x86/mtrr: fix handling with PAT but without MTRR Message-ID: <20230601124844.GBZHiTrDQk+F3lbzGO@fat_crate.local> References: <20230510133024.GBZFuccC1FxIZNKL+8@fat_crate.local> <4c47a11c-0565-678d-3467-e01c5ec16600@suse.com> <20230511163208.GDZF0YiOfxQhSo4RDm@fat_crate.local> <0cd3899b-cf3b-61c1-14ae-60b6b49d14ab@suse.com> <20230530152825.GAZHYWGXAp8PHgN/w0@fat_crate.local> <888f860d-4307-54eb-01da-11f9adf65559@suse.com> <20230531083508.GAZHcGvB68PUAH7f+a@fat_crate.local> <20230531174857.GDZHeIib57h5lT5Vh1@fat_crate.local> <6700dc14-98fa-232d-5f8c-68a418849671@suse.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline In-Reply-To: <6700dc14-98fa-232d-5f8c-68a418849671@suse.com> On Thu, Jun 01, 2023 at 08:39:17AM +0200, Juergen Gross wrote: > Does this translate to: "we should remove that cleanup crap"? I'd be > positive to that. :-) Why, what's wrong with that thing? -- Regards/Gruss, Boris. https://people.kernel.org/tglx/notes-about-netiquette From xen-devel-bounces@lists.xenproject.org Thu Jun 01 12:53:31 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 12:53:31 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542463.846347 (Exim 4.92) (envelope-from ) id 1q4hnx-0004yi-FF; Thu, 01 Jun 2023 12:53:25 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542463.846347; Thu, 01 Jun 2023 12:53:25 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4hnx-0004yb-CA; Thu, 01 Jun 2023 12:53:25 +0000 Received: by outflank-mailman (input) for mailman id 542463; Thu, 01 Jun 2023 12:53:23 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4hnv-0004yV-GP for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 12:53:23 +0000 Received: from smtp-out2.suse.de (smtp-out2.suse.de [2001:67c:2178:6::1d]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 4a1efa0c-007b-11ee-b231-6b7b168915f2; Thu, 01 Jun 2023 14:53:22 +0200 (CEST) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by smtp-out2.suse.de (Postfix) with ESMTPS id 980B01F86C; Thu, 1 Jun 2023 12:53:21 +0000 (UTC) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id EF0D0139B7; Thu, 1 Jun 2023 12:53:20 +0000 (UTC) Received: from dovecot-director2.suse.de ([192.168.254.65]) by imap2.suse-dmz.suse.de with ESMTPSA id o+/jOMCUeGTrGQAAMHmgww (envelope-from ); Thu, 01 Jun 2023 12:53:20 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 4a1efa0c-007b-11ee-b231-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1; t=1685624001; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=1GpS19ZqsoBfrfSMjUhDc1t9f/kMOX3QizgwqenZt7k=; b=Lcc6S79z/wB+hVF3dIJydM+hEqJ6f/5Rer4ghDkUY5NF5jyggpOTSLsEggGrkOZZ5SjTAq eAP4jZqp3YOU4fUH0b099X8gBGHV+juLA+7bk9YSAQkYGLmcOgUbyNobE6M9K+rzcb2pch EuYjYj6Yn4ONKTQM2c7BJ4MpPULh+6s= Message-ID: Date: Thu, 1 Jun 2023 14:53:20 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH v6 00/16] x86/mtrr: fix handling with PAT but without MTRR Content-Language: en-US To: Borislav Petkov Cc: linux-kernel@vger.kernel.org, x86@kernel.org, linux-hyperv@vger.kernel.org, linux-doc@vger.kernel.org, mikelley@microsoft.com, Thomas Gleixner , Ingo Molnar , Dave Hansen , "H. Peter Anvin" , "K. Y. Srinivasan" , Haiyang Zhang , Wei Liu , Dexuan Cui , Boris Ostrovsky , xen-devel@lists.xenproject.org, Jonathan Corbet , Andy Lutomirski , Peter Zijlstra References: <20230510133024.GBZFuccC1FxIZNKL+8@fat_crate.local> <4c47a11c-0565-678d-3467-e01c5ec16600@suse.com> <20230511163208.GDZF0YiOfxQhSo4RDm@fat_crate.local> <0cd3899b-cf3b-61c1-14ae-60b6b49d14ab@suse.com> <20230530152825.GAZHYWGXAp8PHgN/w0@fat_crate.local> <888f860d-4307-54eb-01da-11f9adf65559@suse.com> <20230531083508.GAZHcGvB68PUAH7f+a@fat_crate.local> <20230531174857.GDZHeIib57h5lT5Vh1@fat_crate.local> <6700dc14-98fa-232d-5f8c-68a418849671@suse.com> <20230601124844.GBZHiTrDQk+F3lbzGO@fat_crate.local> From: Juergen Gross In-Reply-To: <20230601124844.GBZHiTrDQk+F3lbzGO@fat_crate.local> Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="------------glPx74KYkbS4FWu7wZ5OyisT" This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --------------glPx74KYkbS4FWu7wZ5OyisT Content-Type: multipart/mixed; boundary="------------8XCU7dYDU8FOpXMIWeFEpAcb"; protected-headers="v1" From: Juergen Gross To: Borislav Petkov Cc: linux-kernel@vger.kernel.org, x86@kernel.org, linux-hyperv@vger.kernel.org, linux-doc@vger.kernel.org, mikelley@microsoft.com, Thomas Gleixner , Ingo Molnar , Dave Hansen , "H. Peter Anvin" , "K. Y. Srinivasan" , Haiyang Zhang , Wei Liu , Dexuan Cui , Boris Ostrovsky , xen-devel@lists.xenproject.org, Jonathan Corbet , Andy Lutomirski , Peter Zijlstra Message-ID: Subject: Re: [PATCH v6 00/16] x86/mtrr: fix handling with PAT but without MTRR References: <20230510133024.GBZFuccC1FxIZNKL+8@fat_crate.local> <4c47a11c-0565-678d-3467-e01c5ec16600@suse.com> <20230511163208.GDZF0YiOfxQhSo4RDm@fat_crate.local> <0cd3899b-cf3b-61c1-14ae-60b6b49d14ab@suse.com> <20230530152825.GAZHYWGXAp8PHgN/w0@fat_crate.local> <888f860d-4307-54eb-01da-11f9adf65559@suse.com> <20230531083508.GAZHcGvB68PUAH7f+a@fat_crate.local> <20230531174857.GDZHeIib57h5lT5Vh1@fat_crate.local> <6700dc14-98fa-232d-5f8c-68a418849671@suse.com> <20230601124844.GBZHiTrDQk+F3lbzGO@fat_crate.local> In-Reply-To: <20230601124844.GBZHiTrDQk+F3lbzGO@fat_crate.local> --------------8XCU7dYDU8FOpXMIWeFEpAcb Content-Type: multipart/mixed; boundary="------------YzAsQx0reJf6zau9OVFEU2qd" --------------YzAsQx0reJf6zau9OVFEU2qd Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: base64 T24gMDEuMDYuMjMgMTQ6NDgsIEJvcmlzbGF2IFBldGtvdiB3cm90ZToNCj4gT24gVGh1LCBK dW4gMDEsIDIwMjMgYXQgMDg6Mzk6MTdBTSArMDIwMCwgSnVlcmdlbiBHcm9zcyB3cm90ZToN Cj4+IERvZXMgdGhpcyB0cmFuc2xhdGUgdG86ICJ3ZSBzaG91bGQgcmVtb3ZlIHRoYXQgY2xl YW51cCBjcmFwIj8gSSdkIGJlDQo+PiBwb3NpdGl2ZSB0byB0aGF0LiA6LSkNCj4gDQo+IFdo eSwgd2hhdCdzIHdyb25nIHdpdGggdGhhdCB0aGluZz8NCj4gDQoNCldoeSBkbyB5b3UgbmVl ZCBpdCBpZiB5b3UgZG9uJ3QgdGhpbmsgYWRkaW5nIE1UUlJzIGR5bmFtaWNhbGx5IGlzDQpp bXBvcnRhbnQ/DQoNCkhhdmluZyBhIHN1Yi1vcHRpbWFsIE1UUlIgc2V0dXAgZG9lc24ndCBt YXR0ZXIgdW5sZXNzIHlvdSBhcmUgcnVubmluZw0Kb3V0IG9mIE1UUlJzIHRvIHVzZS4gV2hl biB5b3UgYXJlIG5vdCBhZGRpbmcgTVRSUnMsIHlvdSBjYW4ndCBydW4gb3V0DQpvZiB0aGVt Lg0KDQpUaGlzIGluIHR1cm4gbWVhbnMgeW91IGRvbid0IG5lZWQgbXRycl9jbGVhbnVwKCku DQoNCg0KSnVlcmdlbg0K --------------YzAsQx0reJf6zau9OVFEU2qd Content-Type: application/pgp-keys; name="OpenPGP_0xB0DE9DD628BF132F.asc" Content-Disposition: attachment; filename="OpenPGP_0xB0DE9DD628BF132F.asc" Content-Description: OpenPGP public key Content-Transfer-Encoding: quoted-printable -----BEGIN PGP PUBLIC KEY BLOCK----- xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjri oyspZKOBycWxw3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2 kaV2KL9650I1SJvedYm8Of8Zd621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i 1TXkH09XSSI8mEQ/ouNcMvIJNwQpd369y9bfIhWUiVXEK7MlRgUG6MvIj6Y3Am/B BLUVbDa4+gmzDC9ezlZkTZG2t14zWPvxXP3FAp2pkW0xqG7/377qptDmrk42GlSK N4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEBAAHNHEp1ZXJnZW4gR3Jvc3Mg PGpnQHBmdXBmLm5ldD7CwHkEEwECACMFAlOMcBYCGwMHCwkIBwMCAQYVCAIJCgsE FgIDAQIeAQIXgAAKCRCw3p3WKL8TL0KdB/93FcIZ3GCNwFU0u3EjNbNjmXBKDY4F UGNQH2lvWAUy+dnyThpwdtF/jQ6j9RwE8VP0+NXcYpGJDWlNb9/JmYqLiX2Q3Tye vpB0CA3dbBQp0OW0fgCetToGIQrg0MbD1C/sEOv8Mr4NAfbauXjZlvTj30H2jO0u +6WGM6nHwbh2l5O8ZiHkH32iaSTfN7Eu5RnNVUJbvoPHZ8SlM4KWm8rG+lIkGurq qu5gu8q8ZMKdsdGC4bBxdQKDKHEFExLJK/nRPFmAuGlId1E3fe10v5QL+qHI3EIP tyfE7i9Hz6rVwi7lWKgh7pe0ZvatAudZ+JNIlBKptb64FaiIOAWDCx1SzR9KdWVy Z2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+wsB5BBMBAgAjBQJTjHCvAhsDBwsJ CAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey/HmQf/RtI7kv5A2PS4 RF7HoZhPVPogNVbC4YA6lW7DrWf0teC0RR3MzXfy6pJ+7KLgkqMlrAbN/8Dvjoz7 8X+5vhH/rDLa9BuZQlhFmvcGtCF8eR0T1v0nC/nuAFVGy+67q2DH8As3KPu0344T BDpAvr2uYM4tSqxK4DURx5INz4ZZ0WNFHcqsfvlGJALDeE0LhITTd9jLzdDad1pQ SToCnLl6SBJZjDOX9QQcyUigZFtCXFst4dlsvddrxyqT1f17+2cFSdu7+ynLmXBK 7abQ3rwJY8SbRO2iRulogc5vr/RLMMlscDAiDkaFQWLoqHHOdfO9rURssHNN8WkM nQfvUewRz80hSnVlcmdlbiBHcm9zcyA8amdyb3NzQG5vdmVsbC5jb20+wsB5BBMB AgAjBQJTjHDXAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/ Ey8PUQf/ehmgCI9jB9hlgexLvgOtf7PJnFOXgMLdBQgBlVPO3/D9R8LtF9DBAFPN hlrsfIG/SqICoRCqUcJ96Pn3P7UUinFG/I0ECGF4EvTE1jnDkfJZr6jrbjgyoZHi w/4BNwSTL9rWASyLgqlA8u1mf+c2yUwcGhgkRAd1gOwungxcwzwqgljf0N51N5Jf VRHRtyfwq/ge+YEkDGcTU6Y0sPOuj4Dyfm8fJzdfHNQsWq3PnczLVELStJNdapwP OoE+lotufe3AM2vAEYJ9rTz3Cki4JFUsgLkHFqGZarrPGi1eyQcXeluldO3m91NK /1xMI3/+8jbO0tsn1tqSEUGIJi7ox80eSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1 c2UuZGU+wsB5BBMBAgAjBQJTjHDrAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgEC F4AACgkQsN6d1ii/Ey+LhQf9GL45eU5vOowA2u5N3g3OZUEBmDHVVbqMtzwlmNC4 k9Kx39r5s2vcFl4tXqW7g9/ViXYuiDXb0RfUpZiIUW89siKrkzmQ5dM7wRqzgJpJ wK8Bn2MIxAKArekWpiCKvBOB/Cc+3EXE78XdlxLyOi/NrmSGRIov0karw2RzMNOu 5D+jLRZQd1Sv27AR+IP3I8U4aqnhLpwhK7MEy9oCILlgZ1QZe49kpcumcZKORmzB TNh30FVKK1EvmV2xAKDoaEOgQB4iFQLhJCdP1I5aSgM5IVFdn7v5YgEYuJYx37Io N1EblHI//x/e2AaIHpzK5h88NEawQsaNRpNSrcfbFmAg987ATQRTjHAWAQgAyzH6 AOODMBjgfWE9VeCgsrwH3exNAU32gLq2xvjpWnHIs98ndPUDpnoxWQugJ6MpMncr 0xSwFmHEgnSEjK/PAjppgmyc57BwKII3sV4on+gDVFJR6Y8ZRwgnBC5mVM6JjQ5x Dk8WRXljExRfUX9pNhdE5eBOZJrDRoLUmmjDtKzWaDhIg/+1Hzz93X4fCQkNVbVF LELU9bMaLPBG/x5q4iYZ2k2ex6d47YE1ZFdMm6YBYMOljGkZKwYde5ldM9mo45mm we0icXKLkpEdIXKTZeKDO+Hdv1aqFuAcccTg9RXDQjmwhC3yEmrmcfl0+rPghO0I v3OOImwTEe4co3c1mwARAQABwsBfBBgBAgAJBQJTjHAWAhsMAAoJELDendYovxMv Q/gH/1ha96vm4P/L+bQpJwrZ/dneZcmEwTbe8YFsw2V/Buv6Z4Mysln3nQK5ZadD 534CF7TDVft7fC4tU4PONxF5D+/tvgkPfDAfF77zy2AH1vJzQ1fOU8lYFpZXTXIH b+559UqvIB8AdgR3SAJGHHt4RKA0F7f5ipYBBrC6cyXJyyoprT10EMvU8VGiwXvT yJz3fjoYsdFzpWPlJEBRMedCot60g5dmbdrZ5DWClAr0yau47zpWj3enf1tLWaqc suylWsviuGjKGw7KHQd3bxALOknAp4dN3QwBYCKuZ7AddY9yjynVaD5X7nF9nO5B jR/i1DG86lem3iBDXzXsZDn8R38=3D =3D2wuH -----END PGP PUBLIC KEY BLOCK----- --------------YzAsQx0reJf6zau9OVFEU2qd-- --------------8XCU7dYDU8FOpXMIWeFEpAcb-- --------------glPx74KYkbS4FWu7wZ5OyisT Content-Type: application/pgp-signature; name="OpenPGP_signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="OpenPGP_signature" -----BEGIN PGP SIGNATURE----- wsB5BAABCAAjFiEEhRJncuj2BJSl0Jf3sN6d1ii/Ey8FAmR4lMAFAwAAAAAACgkQsN6d1ii/Ey/q ogf8DWRYN0MvTXCw5FuBFQP73oNhAPrDKv/W1fX3czxVSBMXqls1dcWhHBznVR+w3Zye9itxeSsR g/mAx8SjZFcDm+WB/T0muZs4iCh8ftPAydZzO50ahqNikZzudPei3p1G+SrXUb9jPXtMOeaN5LbU HZxgJ2XIDpmlaIw9862yxobGS4EQqjYGxWYg217fxEx8NveZ5WWtAkb+NTsxJtQ9r2XFZuQrGUPQ kuQ8Rhns+OxcFCzEwEaCg8mIgqUcrchQeRur30ZroPn4LTb6ufqdpu2bLIeYHEpR8d5Q4c3E/JS2 Zh9NavBuXglcXVS5uN93T77Hm8/6OnsF382kXXAttQ== =+P98 -----END PGP SIGNATURE----- --------------glPx74KYkbS4FWu7wZ5OyisT-- From xen-devel-bounces@lists.xenproject.org Thu Jun 01 13:02:21 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 13:02:21 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542468.846356 (Exim 4.92) (envelope-from ) id 1q4hwP-0006Ym-E1; Thu, 01 Jun 2023 13:02:09 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542468.846356; Thu, 01 Jun 2023 13:02:09 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4hwP-0006Yf-AW; Thu, 01 Jun 2023 13:02:09 +0000 Received: by outflank-mailman (input) for mailman id 542468; Thu, 01 Jun 2023 13:02:08 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4hwN-0006YZ-Uw for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 13:02:08 +0000 Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.129.124]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 809a90e4-007c-11ee-b231-6b7b168915f2; Thu, 01 Jun 2023 15:02:04 +0200 (CEST) Received: from mimecast-mx02.redhat.com (mimecast-mx02.redhat.com [66.187.233.88]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id us-mta-607--nc5GY8eOiuW2vQmY4_7kg-1; Thu, 01 Jun 2023 09:02:00 -0400 Received: from smtp.corp.redhat.com (int-mx09.intmail.prod.int.rdu2.redhat.com [10.11.54.9]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id D4EE0803C99; Thu, 1 Jun 2023 13:01:59 +0000 (UTC) Received: from localhost (unknown [10.39.194.5]) by smtp.corp.redhat.com (Postfix) with ESMTP id 450CB400F17; Thu, 1 Jun 2023 13:01:59 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 809a90e4-007c-11ee-b231-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1685624522; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=QboDf9paz2VtErB2nR94ZAPz+TKHWRCWhSaiL0KRaBA=; b=a13BDCQe2WdN7oS+JY2jaF7T0/HNVPsj9zFF42EUaupOOCGhHa1/y90mKns3LfYMuKqJ6A WmEZvN8brN2IqgRO8kJKFIuqPiKwNt/mcvmZTNhIdEGJuHWS7WtYw/CmaiW8cONkdKwTnz DI40wb2GhRh0HUa/yewEJuzFHO7+8YE= X-MC-Unique: -nc5GY8eOiuW2vQmY4_7kg-1 Date: Thu, 1 Jun 2023 09:01:57 -0400 From: Stefan Hajnoczi To: qemu-devel@nongnu.org Cc: Paolo Bonzini , eblake@redhat.com, Hanna Reitz , Fam Zheng , sgarzare@redhat.com, qemu-block@nongnu.org, xen-devel@lists.xenproject.org, Julia Suvorova , Stefano Stabellini , Philippe =?iso-8859-1?Q?Mathieu-Daud=E9?= , Paul Durrant , Kevin Wolf , Anthony Perard , "Michael S. Tsirkin" , Aarushi Mehta Subject: Re: [PATCH v3 0/6] block: add blk_io_plug_call() API Message-ID: <20230601130157.GB1538357@fedora> References: <20230530180959.1108766-1-stefanha@redhat.com> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="+rqeetX7bJGZaj5e" Content-Disposition: inline In-Reply-To: <20230530180959.1108766-1-stefanha@redhat.com> X-Scanned-By: MIMEDefang 3.1 on 10.11.54.9 --+rqeetX7bJGZaj5e Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Tue, May 30, 2023 at 02:09:53PM -0400, Stefan Hajnoczi wrote: > v3 > - Patch 5: Mention why dev_max_batch condition was dropped [Stefano] > v2 > - Patch 1: "is not be freed" -> "is not freed" [Eric] > - Patch 2: Remove unused nvme_process_completion_queue_plugged trace event > [Stefano] > - Patch 3: Add missing #include and fix blkio_unplug_fn() prototype [Stef= ano] > - Patch 4: Removed whitespace hunk [Eric] >=20 > The existing blk_io_plug() API is not block layer multi-queue friendly be= cause > the plug state is per-BlockDriverState. >=20 > Change blk_io_plug()'s implementation so it is thread-local. This is done= by > introducing the blk_io_plug_call() function that block drivers use to bat= ch > calls while plugged. It is relatively easy to convert block drivers from > .bdrv_co_io_plug() to blk_io_plug_call(). >=20 > Random read 4KB performance with virtio-blk on a host NVMe block device: >=20 > iodepth iops change vs today > 1 45612 -4% > 2 87967 +2% > 4 129872 +0% > 8 171096 -3% > 16 194508 -4% > 32 208947 -1% > 64 217647 +0% > 128 229629 +0% >=20 > The results are within the noise for these benchmarks. This is to be expe= cted > because the plugging behavior for a single thread hasn't changed in this = patch > series, only that the state is thread-local now. >=20 > The following graph compares several approaches: > https://vmsplice.net/~stefan/blk_io_plug-thread-local.png > - v7.2.0: before most of the multi-queue block layer changes landed. > - with-blk_io_plug: today's post-8.0.0 QEMU. > - blk_io_plug-thread-local: this patch series. > - no-blk_io_plug: what happens when we simply remove plugging? > - call-after-dispatch: what if we integrate plugging into the event loop?= I > decided against this approach in the end because it's more likely to > introduce performance regressions since I/O submission is deferred unti= l the > end of the event loop iteration. >=20 > Aside from the no-blk_io_plug case, which bottlenecks much earlier than t= he > others, we see that all plugging approaches are more or less equivalent i= n this > benchmark. It is also clear that QEMU 8.0.0 has lower performance than 7.= 2.0. >=20 > The Ansible playbook, fio results, and a Jupyter notebook are available h= ere: > https://github.com/stefanha/qemu-perf/tree/remove-blk_io_plug >=20 > Stefan Hajnoczi (6): > block: add blk_io_plug_call() API > block/nvme: convert to blk_io_plug_call() API > block/blkio: convert to blk_io_plug_call() API > block/io_uring: convert to blk_io_plug_call() API > block/linux-aio: convert to blk_io_plug_call() API > block: remove bdrv_co_io_plug() API >=20 > MAINTAINERS | 1 + > include/block/block-io.h | 3 - > include/block/block_int-common.h | 11 --- > include/block/raw-aio.h | 14 --- > include/sysemu/block-backend-io.h | 13 +-- > block/blkio.c | 43 ++++---- > block/block-backend.c | 22 ----- > block/file-posix.c | 38 ------- > block/io.c | 37 ------- > block/io_uring.c | 44 ++++----- > block/linux-aio.c | 41 +++----- > block/nvme.c | 44 +++------ > block/plug.c | 159 ++++++++++++++++++++++++++++++ > hw/block/dataplane/xen-block.c | 8 +- > hw/block/virtio-blk.c | 4 +- > hw/scsi/virtio-scsi.c | 6 +- > block/meson.build | 1 + > block/trace-events | 6 +- > 18 files changed, 239 insertions(+), 256 deletions(-) > create mode 100644 block/plug.c >=20 > --=20 > 2.40.1 >=20 Thanks, applied to my block tree: https://gitlab.com/stefanha/qemu/commits/block Stefan --+rqeetX7bJGZaj5e Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQEzBAEBCAAdFiEEhpWov9P5fNqsNXdanKSrs4Grc8gFAmR4lsUACgkQnKSrs4Gr c8hKywf6Ai2z8xv51+za7a/ioPSmYCxE+4OzREj4aifqUETMKNTd5V4vS3Ee4Zy1 Ab/olnSS3uMy4XXM53+gEeegrXZwIRBx/8f60zTsVnYJSDTKjKfp5+muGOVjCCgI ejDkkuuHCdD2dmuCSBoD2FR4AQhzkImOTEo0l50GXUe2ORa7EA5Yr82WHI74LZQM mwH8nYhjjNOXyMq3WY1ibRkwMfDKvf9ZOFBTAsRXR2ibFR0G8xQ5V4j8x0EJ1OSp 20vrK/R+c3R+9QC7DgiSteb3BTFxIwMiAc8IJ4d2mpfkG7sRjCfuUpS7FcGKNAUj otBYNx/Hsgk7UghmZb1y5Z2Gi7yOwA== =gggu -----END PGP SIGNATURE----- --+rqeetX7bJGZaj5e-- From xen-devel-bounces@lists.xenproject.org Thu Jun 01 13:05:51 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 13:05:51 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542472.846367 (Exim 4.92) (envelope-from ) id 1q4hzn-00079M-TU; Thu, 01 Jun 2023 13:05:39 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542472.846367; Thu, 01 Jun 2023 13:05:39 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4hzn-00079C-PU; Thu, 01 Jun 2023 13:05:39 +0000 Received: by outflank-mailman (input) for mailman id 542472; Thu, 01 Jun 2023 13:05:38 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4hzm-000791-7S for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 13:05:38 +0000 Received: from esa1.hc3370-68.iphmx.com (esa1.hc3370-68.iphmx.com [216.71.145.142]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id fd13a2c7-007c-11ee-8611-37d641c3527e; Thu, 01 Jun 2023 15:05:33 +0200 (CEST) Received: from mail-co1nam11lp2168.outbound.protection.outlook.com (HELO NAM11-CO1-obe.outbound.protection.outlook.com) ([104.47.56.168]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 01 Jun 2023 09:05:29 -0400 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) by BY5PR03MB5347.namprd03.prod.outlook.com (2603:10b6:a03:218::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.23; Thu, 1 Jun 2023 13:05:28 +0000 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::192:6bdf:b105:64dd]) by SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::192:6bdf:b105:64dd%3]) with mapi id 15.20.6433.024; Thu, 1 Jun 2023 13:05:28 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: fd13a2c7-007c-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1685624732; h=from:to:cc:subject:date:message-id: content-transfer-encoding:mime-version; bh=3A/z6pMBM6dgseGzIcYV6+lyHTi0G1UcoKt9X7xxpOY=; b=WMJjxgFLNn15NTSzjwsWVPV85IcqvOonNVMqu2wBWWM0cbCqd2H7NNpL 8xLkjW8fDIppR7JqOb5bTw+EUK9YkYJb9LMD867hr4gislZMCxE3c5O/u yIKVVX1XxlecNogGgW6CdI1gIiZ/BpP4gszJygcosDSxm7F1CyZaMjoTS I=; X-IronPort-RemoteIP: 104.47.56.168 X-IronPort-MID: 111630270 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:if9BEq7w1RAFeJalJ8ZwOgxRtPbGchMFZxGqfqrLsTDasY5as4F+v jMaDTjXPP2CZ2f9f4gibY7np0oD7JTXmNUySANvpHhmHi5G8cbLO4+Ufxz6V8+wwm8vb2o8t plDNYOQRCwQZiWBzvt4GuG59RGQ7YnRGvynTraCYnsrLeNdYH9JoQp5nOIkiZJfj9G8Agec0 fv/uMSaM1K+s9JOGjt8B5mr9lU35JwehBtC5gZlPa4T5QeF/5UoJMl3yZ+ZfiOQrrZ8RoZWd 86bpJml82XQ+QsaC9/Nut4XpWVTH9Y+lSDX4pZnc/DKbipq/0Te4Y5iXBYoUm9Fii3hojxE4 I4lWapc6+seFvakdOw1C3G0GszlVEFM0OevzXOX6aR/w6BaGpdFLjoH4EweZOUlFuhL7W5m7 qU0FTwMSBu4p9mc8LaRdPlnlMBzBZy+VG8fkikIITDxK98DGMmGaIKToNhS0XE3m9xEGuvYa 4wBcz1zYR/cYhpJfFAKFJY5m+TujX76G9FagAvN+exrvC6OkkoojuiF3Nn9I7RmQe1PmUmVv CTe9nnRCRAGLt2PjzGC9xpAg8eWxHqlA9pIS+XQGvhChle9mkMqDjAqUVq45qmaiV6PAtN1J BlBksYphe1onKCxdfHtUhv9rHOasxo0X9tLD/Z8+AyL0rDT4QuSGi4DVDEpQN4sudIyRDcq/ kSUhN6vDjtq2JWKTVqN+7HSqim9UQAXMGsDaCksXQYDpd75r+kblQnTR9xuFKq0iNzdGjzqx T2O6i8kiN0uYdUj0qy6+RXMhGuqr52QFwotvFyJDiSi8x9zY5Oja8qw81/H4P1cLYGfCF6co HwDnMvY5+cLZX2QqBGwrCw2NOnBz5643Pf02DaDw7FJG+yRxkOe IronPort-HdrOrdr: A9a23:Cdwaiaut9dali3K6Pf3GMtVT7skDFdV00zEX/kB9WHVpm62j9/ xG+c5x6faaslsssR0b8+xoW5PgfZqjz/FICOAqVN+ftWLd1FdAQrsN0bff X-Talos-CUID: =?us-ascii?q?9a23=3Ap4cGqmpyoBL5f5QGIBpLuPbmUdt8XkDRzVHbGG+?= =?us-ascii?q?DI1ZtYoOFQk2UqIoxxg=3D=3D?= X-Talos-MUID: 9a23:Ot8JBQkGTDkY+JPnGB2fdnpkPuk0zJ2oJXwJkJZB6+qHJR0pOh2S2WE= X-IronPort-AV: E=Sophos;i="6.00,210,1681185600"; d="scan'208";a="111630270" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=WMAf2XrajjeXSrkpCmxXZSlzwE3Ttk2bjAUH+NYFFPsPueP94p3K3Ox39fcY2gKlJE9SNVmWuUopkqr1nJBhSy+OSta2ysSb43CFG1p1DzqAMoqCAD71SCE8zeUBX3lOTlOqQMDn+4QH71D+pGLYfD9AdRdpbWf/g1BOCXHhDbx7z84uEV0K8WtXqnmJwrxXcFXwpMP90dEAkL5EFJdPbTrLb7++OCPaBZs88LCD0vYWvFe3uc2tgk78Sw1dw0P7nN0m/UhV+ci7zlaXKTbkiK0z9VOmV0L4zPOtKmLVmLXDo4qK2q32cy9O2djZoqx0jVDvJm4nGB7j/fBJVw05zw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=eXXnRm+6U+AjsKIIcrkp7f+XMhptVWCTZpd5PCjoEYU=; b=J4P6RXaip1hpgZ0xw9M/Mw1ndqwkd+E7wFcUcn/K3pr12we9RYic66uvt2FvvCAL591y1AJnJw3/uTdtsFmHxwQoxxgDhv+T6687O+whWoKDvFwgcoQuHQxthjCWU81QfkHYkuEY0bttlLiyKUcv0Moh+uApcT/9wxADNeoJqM8CsfqBU4ZnZtVDDvKQBg6KX0G1gbyXBsnYIe0NEZJaoYWdvQuOHwNvEISZlQ8V7aQv+wYfMw0uX1dKUZ2cQp/dX4/CvborRkky5ttXQPI7Nnlr/F7uIr7Kyy8MCmA3xjC3ZZrPitGJ21YT2uMnw35tvSx76FclBZZZs9a8vQ5dDw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=eXXnRm+6U+AjsKIIcrkp7f+XMhptVWCTZpd5PCjoEYU=; b=vZEgbdXp+LpzbMJtjfj6WxjaSLKzvk4GmU1pBr0126o+8hP6GlDzlO++4M90t5HBAoXmPKDIV80EIFNqurItya8bifzv3YP2VkXXN/U2jYEzSFHDLSkErEIj9QKxZdB5w04QXljlbc7poJ99Alox2k6AWSY0SK0XcroAb7oJJmU= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; From: Roger Pau Monne To: xen-devel@lists.xenproject.org Cc: Roger Pau Monne , Jan Beulich , Andrew Cooper , Wei Liu , George Dunlap , Julien Grall , Stefano Stabellini Subject: [PATCH v3 0/3] x86/gfx: early boot improvements Date: Thu, 1 Jun 2023 15:05:15 +0200 Message-Id: <20230601130518.48874-1-roger.pau@citrix.com> X-Mailer: git-send-email 2.40.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO4P265CA0215.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:33a::15) To SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|BY5PR03MB5347:EE_ X-MS-Office365-Filtering-Correlation-Id: 5912c0f1-2672-4f81-9b89-08db62a0deed X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: y7bV+MeEwh/UU7xs/yTwa4+Nx0d+d76TSzpwkpqT1lxQaYfSbbAoc0bQTEHNqgA3Rnjb1HLewOlI6xDtGKYS4MziUP2mAuXF3+lpp8sDTynYIZhdTyo8GqdRq8+9ndns6WieWD0oIfgziEzyMQMaA/xKYYOeRD8jOx1Ay8xPcq0O31N3Ap+LQ7WPPPSm/fY2rG7uSv8W63OOTWCu7+i80nrUuSg66VAxE9Jkyee5tHEk830PV9erUccAtsfEqmYLXfl2n5AEmYd8RFYeA9ELLTdvHzTH0AgJ05OvZap6G3Dqu7YpyDBk3BG+RJAgNw3KHJpFaGWXGEqS3Xk0LPlY/24XP3WOM6wzUDk1apv9gPg+1lawCU60iMb185TFIDuUPzA76ZRJWg6qN4F1WEOriIX0sV+AL6LFAF6Um+QUPifHfnYeMpG2lqAR4mvz4F+xzKU5QBr2Qn1Z+ndfVn8CYEELlb8MsXM2M4regVvyYxeYaQiMxcPIkmZSL/SXeIOez4NnMdJi2ttCA93Y6SHbeGTEbII/mZIJUpDVkGodobG7hfL6fJljY072VBX26zbW X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(376002)(396003)(136003)(39860400002)(346002)(366004)(451199021)(83380400001)(66556008)(6506007)(66946007)(66476007)(6916009)(6512007)(26005)(6666004)(1076003)(54906003)(2616005)(186003)(86362001)(6486002)(4744005)(2906002)(8936002)(5660300002)(478600001)(8676002)(36756003)(82960400001)(4326008)(41300700001)(38100700002)(316002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?UFJKcW11MnV4VFpCd1VFQlF0bUVnUGlYT0ZiU1N6YjBzcFpvL2dqaERzemJh?= =?utf-8?B?ckYybk9IMVloNkpxQ0FFYVVvZm9PUmtWVnA1ZEhvaFRnMDdteVNiK25BUHh2?= =?utf-8?B?L1o3RmIyUjFvNmFHSllzN2RrK0hIdnpjaEpLUVp6QU5aZ1Bidk8xM0srZ2ZG?= =?utf-8?B?YXc4R240a0c3WldKUXFESDAycDVjekNsc2xNczJrWmg0YTFNcnp2cHFhRkla?= =?utf-8?B?b2ptVHQ0cG85YW5tNkM1Z2Y1ZEsxM21RZXdId3ppSS8zNGNmUEJpRkozcnMv?= =?utf-8?B?RE1rOGhoTC9ZM0pTRXoxdDFEcjhjZjJGUVRsRmM0U1pQRktaeEU5SmRZaUdu?= =?utf-8?B?aVNqbFVvM0tlSnF3KytnNm1QNEpXenhHTUd2WTZCSGZmNCt1ayswWXMyUjhE?= =?utf-8?B?RElsaGF5QldQemVLOUx6SnBCNkJWQ1J6bjVBREtxZTZodnFpdFQ3akZQRTBF?= =?utf-8?B?akQxMEk4eFVZMTZEZkJJay9EQk0yWXZsdlhwajlYTUFsZUhubzNheklndGF0?= =?utf-8?B?OGpLcy9CZEhlL2ZTNXZlandWWEpUTFIzeDFMY25sV1drQkM0UU12ZjdaVWN5?= =?utf-8?B?VldqTWttUXpaWjFWVXdTeFIzQ3MzS2pvRE1oSkNzeHYrV0dmMlpPY0JWTkpC?= =?utf-8?B?Rm5wMnFHMVdjR1Z1Ykw0RUtScGt4S3RjQnprQTg0RW1BbzBmdWJ1bkM3bnRu?= =?utf-8?B?eTBza2ZMTGdxN3BZajFkV0g0NlA5cXVUditESGtiZ29GRXlBWE11VUZUai9Q?= =?utf-8?B?bDNpb1E2QXlTelJITzlLVWp4R1RZMktod0h0RlpQbS9sa3U5Rmw5STVxZDhX?= =?utf-8?B?cEZiNTRKUDdLYWI3dDYrTCs3ZXc4d3Z3RmRZTEpmSTR5bXlhQ0NnZHNLNHpY?= =?utf-8?B?T2RZTEt1d2tPWitOOVNjd0ltdUF6enNPNzFlSk9LMkhwY0xXSkJIaU5qTU5P?= =?utf-8?B?RS8xM1Zic0xGUUp4N3M5N1hjMUcyR1FaRGRBZXo2SFh1YVZEcGpkbFE3L1F3?= =?utf-8?B?T0VoYmdMb3BsZzlOUkN4eTA1MkxIbjdhZ1MzeXlQdDZWVURXM01hZ2I5S1gr?= =?utf-8?B?UHNvR0xsdTBCT0V4d1RQVXdpeWpQdHJKNWFheTdpakFublVpOHdFaHhkbXFH?= =?utf-8?B?UnZWaXp1MVA1WStxN25Vb2krY2Foa1VJWk1MWHZPeUxJQllvRVE2ZGxTb3c0?= =?utf-8?B?MzRYaWRad1N0cFI2OVhGTk1kNGczNlhsbXUzdmtWU2NLSmtEZTNxQnFLUE5x?= =?utf-8?B?dlFRbUQ4RXdWYkcvRUJtamwvWnQ3UjFoSmhBNUFpb0krNWdNcmg4S3dQaCtW?= =?utf-8?B?clZ6SElkTDNIOXhIWGpGYnUxcFFoOTgrR0xXR0U5L2ZHc3ZQWXdiTmd1dzdU?= =?utf-8?B?M212SmxEcjltU2RvM09QekxHazZZb05KS21WVVpCeEdhNHFRK2ROMXpuN29w?= =?utf-8?B?bW5uRmxkdVkrb2RTK1JjTy9WaGNNeVdhTEUxSzg0NE1xVUdZREFuRG5TQnA4?= =?utf-8?B?VnJubXNwUjZuQUFFU2VyTC9rYXZhSWIrNGlBYnpBT0ZVS1kxN0NsOGk3b0Vz?= =?utf-8?B?QnRJM1UyQkloMFY5Szc4SmVjM1JySi9vaWFLTzNzNW9reElPWWF6V2h1bTBB?= =?utf-8?B?Y2d5ZU5ydnpYWUNCSHNwaGJIWTBrTjVxQnZaTHNOVnloNFNONEMralpHeWhE?= =?utf-8?B?MDFDTlZWL3BLNk44NVM4ZkdkL3lldXhBRTArd1BncGliS0gzN0svQ25sU29F?= =?utf-8?B?Y09xeWJrMXExc05uY3F6R3Fpd2N5bWtLY0p3WDArMUg5VlF2aEdoSGtNeXVO?= =?utf-8?B?c01RUi9JSFJKRjlXSk9GMk9rc1p6L1R5c241MnVzeWJoOFRpU3o1K21vS1Iw?= =?utf-8?B?OStXU1EyVFJCNUFFNGxRK1pqVnhyUGcwVDg0V1lZazJaSUEzRkNDNEZMYVlO?= =?utf-8?B?QVZOYzhmckZydVIvdENGdEFYZ2lRVE8ydGRqWFNKTGd5NjNxZzdOS0w5WENP?= =?utf-8?B?Z012cEFEVFRsc1BBNDZSUGNuUjd3VSsxSU1VVVNXRU83K2NwdU9VTldneGVv?= =?utf-8?B?OW9pM3pQUmxER3o1V3FiSnp4MlhyLzRvbWhBWlR0bWdYdHhEUG8yNlo4TUpU?= =?utf-8?Q?6DPOZMjzUVOXSKtkGMO3uHwkI?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: iLev7O2Kw1h3mTrHB8S7/o0mXLxDvsMmAcwSZnYwZyTwpsa2z4JQI12YmMDjcJYKDUYAoeHoPqLNjHpFd3FGxzxPnCVja1cgC96yetiLb8YkQ5N59/0tuqf+O9sYCI/iYo+sHNwpdmfC7ez7qb2cVMSD/BE7PKI5NaPfFwMT6rRFyznq+jVXmBXr2tjIuUcD5FTMlngJKUR527QHUkxL3mmyAYQLrfIgrQrQuRQkJWuSx8P4OLPx+9Dx7zNL1QIF82ABXVImLg/kQD/RNzvSow25b83/qwUjY3sN9b1cecvEh2ulDMQ0vtQZahJ+q9kUTBVQHePG9hMDFponMsiLD5wrUBbqY39R+AHFoqK3i2uV8ubySSTNde12PSvWgHysYPjqDvfiXJy/Cq+qS6QBRKM5rtH5Q+CdHN1o6b3nk45kh48S9ZXK8QV0MEoRJ63+q08KPw7ku+Jdw3AdA9+u9Uve6JrL3Zk0ek6jhfVlqwrXEK1yUDO3L3lkdFTX/8MiXe6i1VwdeTH9Rrn0sncuXSTxAtTbjOJ0sUBtJ+NHMa6I+60vNpgEpBbE7ZqU3vK6ZLuzHuSuWeFUsu05vIb+xHaIfanG7NhaMI1PgMEmIc3AUneTIAWN2XYdN7j5MSa1fEC3T91FgyllQTTJvvfGkdnhlKWWn1kC6cnB4rPhT6b2egMGUs/C5vtyf9tynkMKcTpFUl1rLzCH4vgp/xXtKvpwiukFKKVwEBtHtL9VmT/FxSjdrGNr556vnuimMhUgvriDkoilTCBxdnIHdxGTx0LlmPphOgKVjaInfLxLQIGLYb6Rpa/wwQEQJI1lF/5I+iwm6TjxMYKFBej2rVmCmh1ChOMM/ZDGjbad023gGQw= X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 5912c0f1-2672-4f81-9b89-08db62a0deed X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Jun 2023 13:05:27.9711 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 4FkGl7n4IbIAdzKKYYrBvqkIP0y71g3pMdEhrKsnSotnroRBv5jc5UOFvUsIrCwfUwEMXezO6XfCLkYT+xa65Q== X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY5PR03MB5347 Hello, The following series contains some fixes and improvements related to graphics usage when booting Xen. Proposed patches fix some shortcomings when using multiboot2, like the ignoring of the vga= parameter and forcefully switching the console to the maximum supported resolution. Thanks, Roger. Roger Pau Monne (3): multiboot2: parse vga= option when setting GOP mode multiboot2: do not set StdOut mode unconditionally cmdline: parse multiple instances of the vga option docs/misc/xen-command-line.pandoc | 3 ++ xen/arch/x86/boot/cmdline.c | 85 +++++++++++++++---------------- xen/arch/x86/boot/head.S | 13 ++++- xen/arch/x86/efi/efi-boot.h | 69 +++++++++++++++++++++++-- xen/arch/x86/x86_64/asm-offsets.c | 1 + 5 files changed, 123 insertions(+), 48 deletions(-) -- 2.40.0 From xen-devel-bounces@lists.xenproject.org Thu Jun 01 13:05:51 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 13:05:51 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542473.846376 (Exim 4.92) (envelope-from ) id 1q4hzp-0007OO-58; Thu, 01 Jun 2023 13:05:41 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542473.846376; Thu, 01 Jun 2023 13:05:41 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4hzp-0007OH-2O; Thu, 01 Jun 2023 13:05:41 +0000 Received: by outflank-mailman (input) for mailman id 542473; Thu, 01 Jun 2023 13:05:39 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4hzn-000791-Kr for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 13:05:39 +0000 Received: from esa1.hc3370-68.iphmx.com (esa1.hc3370-68.iphmx.com [216.71.145.142]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 004cf82e-007d-11ee-8611-37d641c3527e; Thu, 01 Jun 2023 15:05:37 +0200 (CEST) Received: from mail-co1nam11lp2171.outbound.protection.outlook.com (HELO NAM11-CO1-obe.outbound.protection.outlook.com) ([104.47.56.171]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 01 Jun 2023 09:05:35 -0400 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) by BY5PR03MB5347.namprd03.prod.outlook.com (2603:10b6:a03:218::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.23; Thu, 1 Jun 2023 13:05:34 +0000 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::192:6bdf:b105:64dd]) by SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::192:6bdf:b105:64dd%3]) with mapi id 15.20.6433.024; Thu, 1 Jun 2023 13:05:34 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 004cf82e-007d-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1685624736; h=from:to:cc:subject:date:message-id:in-reply-to: references:content-transfer-encoding:mime-version; bh=VJSlJaIKoPPgvsYBl22uXLchS+5rz42OA2KQbvnlRFU=; b=YTyaouC08aSWEi161KeJYaM+lM6bhGHUoV8n5WFfEHy1o6G4mwVzUa3F s34ofqfeK/TiOEJgFbUwjVBiy11Esh/ZoP9760PdCSS8WkwVmMoNY1b1K NuMv2fU5hof7tfhT4v6lENxsrWCyRmfJ7i1DkKsLgxGOUYkNWuqSgn0OF 0=; X-IronPort-RemoteIP: 104.47.56.171 X-IronPort-MID: 111630301 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:6oETfaCnWmwkRhVW/w/iw5YqxClBgxIJ4kV8jS/XYbTApGgk1jABz mcaW2CEPKzfMTCjKowkOomwoEIHvMOEz4dqQQY4rX1jcSlH+JHPbTi7wuUcHAvJd5GeExg3h yk6QoOdRCzhZiaE/n9BCpC48T8nk/nOHuGmYAL9EngZbRd+Tys8gg5Ulec8g4p56fC0GArIs t7pyyHlEAbNNwVcbCRMs8pvlDs15K6p4G1A5wRlDRx2lAS2e0c9Xcp3yZ6ZdxMUcqEMdsamS uDKyq2O/2+x13/B3fv8z94X2mVTKlLjFVDmZkh+AsBOsTAbzsAG6Y4pNeJ0VKtio27hc+ada jl6ncfYpQ8BZsUgkQmGOvVSO3kW0aZuoNcrLZUj2CA6IoKvn3bEmp1T4E8K0YIwx89OKH1l5 /AjFTEPVCGItuia+rCgc7w57igjBJGD0II3nFhFlGicJtF/BJfJTuPN+MNS2yo2ioZWB/HCa sEFaD1pKhPdfxlIPVRRA5U79AuqriCnL3sE9xTI++xuvDG7IA9ZidABNPLPfdOHX4NNl1uwr WPa5WXpRBodMbRzzBLcqyvy3beUxXqTtIQ6EI28z6A1jHmq2TJCMUAXdV2ymePklRvrMz5YA wlOksY0loAi+UruQtTjUhmQpH+fogVaS9dWC/c96gyG1uzT+QnxLmoOQyNFadcmnNQrXjFs3 ViM9/v2ARR/vbvTTmiSnop4thu3MCkRaGQFPCkNSFJc58G5+d5qyBXSUtxkDai5yMXvHi39y CyLqy54gKgPickM1OOw+lWvby+Qm6UlhzUdvm3/Nl9JJCsjDGJ5T+REMWTm0Ms= IronPort-HdrOrdr: A9a23:bBqjx6sVyPVT9PMsL7V9Apbo7skDsNV00zEX/kB9WHVpm6yj+v xG/c5rsSMc7Qx6ZJhOo7+90cW7L080lqQFhLX5X43SPzUO0VHARO1fBO3ZogEIcxeUygc379 YDT0ERMr3N5VgRt7eG3CCIV+wO7fPC2pqO7N2uqEuET2tRGt1dB9ESMHflLqV0LjM2e6bQDP Cnl6x6T6LLQwVsUiy8bEN1JtQq97Xw5erbiQdtPW9d1DWz X-Talos-CUID: 9a23:waFGbm2rsg0wj4W/92kHXrxfJ+kcW2H23nvrHk66M1diebe5c12LwfYx X-Talos-MUID: 9a23:LaqLawQDt016gE3zRXTotDVbaphkx52xVhE0zJQmvcC8L3FvbmI= X-IronPort-AV: E=Sophos;i="6.00,210,1681185600"; d="scan'208";a="111630301" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=E8TAHZ56SXzkWbisjomQ8P/3nAEwLj1miAQWtQUXNMRorH1a0+GS2tnc9+tz8jjjwye/poEwdsv84m4EOiHSApv1IygsFm3m1pbY7pn9k2AuHx9QQKKfl8z8GUv17aCX67Dq+6Z7gYV2GjLhbMFaAVhseOFtKPe9E7uCBwdJxwViNE+LKUBYyjdAZkkMN7HvqQaS4+R0PnQnvtBKSmStI68iVVdkJyWASlb2/NmzfWzkDgPLzSrvTBi7bvvendmgW5Qr96CBczUYjPbYVQOQbZu6sQjWJE/TSqGayOSvLVzZ+YxFeeZJKLj1C1GZtHEnu1pqrznAL1cyHoUrx0rjpQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=M7VopqNXdUxcJxKf8MHX3XuEw2geRVIEfFA9FplnD9E=; b=i3eDJlmPfmi201BA9ptj9OJ1kfcJ2vnv8btkaVYcuxL/sRX0CxkVbaNLCQArk1NvOJ4GgeD4TaQSuINHrjmyO71j9eYIWdp/FCVZYgxurLiVazCxHOqTstQ6j50p4Z60CpeXoIvqZk6lNLNpWHOPFv7J3op8aH3W9tGI5gQ0wUW/QkCjMzqexoWG0nPhNWUHjcPL87o0LKPdxYZio7clArNztSqges1eOXnOOsKetZIyL8winscbVakoGtsPV1CSXOA+FH5+Jtr3gpuq5h8ac7hsJnhBfgd+sCadE6AJ3Z9be/8mgABQ5S2OSnJb2opUsKtAnmJRmP1aATdSE2VTeQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=M7VopqNXdUxcJxKf8MHX3XuEw2geRVIEfFA9FplnD9E=; b=BewzPtr3s1eQZjAplDqsSA9q04jG45kP8W7RJ/QJvnMPN17S5fBwuHX3A0vJEGglROhuWUhYdooWk1Kb8yj0mo65UFlq7iINtkBxIBjUUUxj5Hh2UZeB2SHUZu9rtua7qUEyDoowZiU9oeDB1mKXqiXm6o62mrEn80bYfDeX1tU= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; From: Roger Pau Monne To: xen-devel@lists.xenproject.org Cc: Roger Pau Monne , Jan Beulich , Andrew Cooper , Wei Liu Subject: [PATCH v3 1/3] multiboot2: parse vga= option when setting GOP mode Date: Thu, 1 Jun 2023 15:05:16 +0200 Message-Id: <20230601130518.48874-2-roger.pau@citrix.com> X-Mailer: git-send-email 2.40.0 In-Reply-To: <20230601130518.48874-1-roger.pau@citrix.com> References: <20230601130518.48874-1-roger.pau@citrix.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO2P265CA0122.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:9f::14) To SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|BY5PR03MB5347:EE_ X-MS-Office365-Filtering-Correlation-Id: f97cdd91-99c8-408e-a412-08db62a0e2b0 X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: EE0MyN5mS2B7AoRGrrfpj18UFxOcObDP6OfiPqx5D7145n9oP4BzpVBecJOTMHCrU0FOSQOjpQJjXH7Wt1w8EpKVUb/qc3qM4MJUezg8i00BotiBCxgYe+yPWb0+oEQUg9pPQlGRLRZCqOXm+agxWsK3XqSHV0ZCcmwR/HSZ+vc2VEC3uQTvAEaMGjK9XdY/nf+9HFt8pQeIJxTQYYCbjZjBYZZv9r5R+ppLk3WphFtj5L1DToMxeSk7sJFsw0fu0AIx5PISEEmec8qN+qinPsHAwdSIWgIoFOiDAR8yik6R93ID9Y++OMcSh9recVYmwIKffN7G13jLf3oebSTGO+VoT2+qn1c0i/wIc9AalPS7M9ue3bJhbehqs1ThQKP0o1jt4SDd+7Qb9Mn9M3JZxTVskJHc2CsBspDfd6Tsk5qDNNoX3FlzG82i4fAUr9TLtBUgAKyIDvJJV2bVxR/5hQGQpQbMn4e91VrDpN8OzgfOW0UQp3JHXouC3mY50QyJ6ofwWITDzFMre7/+WfXnct/IUlbmmwdluqTaLY25UOC5SHO4xQc3AniRigKY6mfG X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(376002)(396003)(136003)(39860400002)(346002)(366004)(451199021)(83380400001)(66556008)(6506007)(66946007)(66476007)(6916009)(6512007)(26005)(6666004)(1076003)(54906003)(2616005)(186003)(86362001)(6486002)(2906002)(8936002)(5660300002)(478600001)(8676002)(36756003)(82960400001)(4326008)(41300700001)(38100700002)(316002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?bUNXeHg1VnFVcmJ1ckpjMnpHYThvTTl1Sm9lOEY0RW9jb244QlhTVFZtSDhw?= =?utf-8?B?cGZONXo4M3BNOHZad2xYTHJuTDBOR1dXRjJyS3RoZ3VqL1ROOUFFN0NoeEd0?= =?utf-8?B?OFlhQSsyOWNHOWh5YzI1dDVlTXc1Q1V0cmdRdW8xdzFteFoyUFl6N243N2RF?= =?utf-8?B?M2xxMStFcnVHcE5mR2VybUk0NUVQTVUxTW1TR1cycnFuQWFwMEUxaG5OeGl2?= =?utf-8?B?Y0RtcVlLT2puN1NLaDNidUJjdG0zK1hDdXlhN2tNM3VFNVpFeWozWGhud3FG?= =?utf-8?B?YkxyOHJ6VUxRYVcydzVHb2ZUQVVrcG1oUDZHa1piQk05aW1aRkFqck8rVTJ6?= =?utf-8?B?NHBTbEVNY2YvVGlwSndseUFpdlFBSFZkNEovdjNkYko2R2pCYnpqZ0NtM3Vn?= =?utf-8?B?SFhCcE1rek5OMDkrMzdpOHcwa2F0OWlnOXh6K255QUdvSXdGa0wxWnVzWTI1?= =?utf-8?B?WjQrYVVMUC80aFB2cStXOG4xY1hBMUV0QXk4ZFh5TDllR2NTUHhTMUNIYnBS?= =?utf-8?B?SlNSUUk3cys3d3VmU0pvanFlSWd2eEJ2SE90TS90ankyOEFib2E4WWZtd202?= =?utf-8?B?dGZlSGtqcmt6bVRIaE8wdGNKY0VHN2lNKzFGd0V0NlpWNkV4QWxyY2ZtWjc5?= =?utf-8?B?TW9DL0kramRsbFRPNEdYMGJFQ0RRUllSTjV4aVZtSmNvSjNEcjBHOThiSk52?= =?utf-8?B?UERaWGoyZXFKaGIxWjJ0TEJxTmJ5UlY0RHNTZGxOSGVQUGpld0I3aXlQR0dj?= =?utf-8?B?eVdIUFdaNzVLa05GZ3o3cE5ZeWFndmhnMG80Zk9MaW1IQVJKQVAyUVFTWEl4?= =?utf-8?B?Vk92Ym0wcUFDMjhaOWlINHVoSXBWN2l2YkU3ekVublV2bW03cnptcnZWUUc1?= =?utf-8?B?SjNia21RYkNoNEhOdDBnSVRLRkFiUGJPNHVXSzJ3N0VYOGp3NjY4enYvait1?= =?utf-8?B?ellGMmNrbzhORG00cG00OWRPUU5NcWdMRzVCM0psZGMrY1YzWm5FQUs4K2k1?= =?utf-8?B?Q3paSkZTMTQ5alVENWRSblhkV1UvY3JGeGgvdkxxS2VMa1puUGx6cTFDTUFo?= =?utf-8?B?OS9ieDlNR3lKRHVKZ0VsNW1aZXRhRmE2QkFZbUFvRkttbnpvMVFWUDZncFR5?= =?utf-8?B?RkxhUm5CN1JiZXhaMUd1aTVYNGEyRDNjdG5TVDdqMXdsWURTOS8wbURoS3Ez?= =?utf-8?B?bCsxOE8xRDF3N2J2ZG44M2dZK0FVQ2VPU1E1c3c2WHlIVml1eWtvUkRGMTBU?= =?utf-8?B?enhGZ3UxczcxYVdWMHp4YldWMDZuci9wWk9ZSC8vdjRlWUp1UVRsbHBDUCtv?= =?utf-8?B?cXFlRUx4dENhaTFSUE9FQjhXdHkwTXhkU2s3TFp4czdaZVh0Q3U3MlRWcjJV?= =?utf-8?B?SnRrenFkTWVHMU9pbzEvK3pHcTVBbzQzbnFJOFI2Q1dkU1ZvSUJ3UHpZRk1X?= =?utf-8?B?b1QwZHNCUlIwdXhrOXBKWE1PYWZDRFIzTDk2QWVqV3NiMnA1YkpRWUp2bXk5?= =?utf-8?B?bkdWWS8xanE4SmdmNlhlQzlyVnRnK0w5dDkvK0NDVXE1UmVDWEFlTk1aQUt1?= =?utf-8?B?akhIQUgrYzB0ZjNoOVlqZHo5djltbm11cmRtWDZYejJOeFIvaFAyYzZMWjNh?= =?utf-8?B?K0Nldi9oeVlOd0RVckoyV3RyREpzaFFvT2NEVjRLSzFMalUxb1luWmM5NkpK?= =?utf-8?B?QWg0VVdVSGRJMzB4V08zRlk4LzdnMjFwQVRnSHNwZVhNS2VTNWFoTjlrUWc3?= =?utf-8?B?UE9HTnZmZ2dyQmhRZkp0UHlGSGhGbWRRSFpWZnVHWmZOYmUvK1g4czJGNmtl?= =?utf-8?B?Um1naWV6dVhjT3dSaVhHcEdKOUpWQ1l4a2IxdmY4UWVMS1IzRXQ4ZDcySzdU?= =?utf-8?B?bk4rNWpmMGkzMTExSUdCYS9ERDdoeXIyZlVHV1hsZ0ViSlJWNW9NNEp5djZm?= =?utf-8?B?cHhRa203ZUxrWkRieHVTMWhMN1RZZEhGTTJ5SjJDUGNualNnYVNyN3FqV0pM?= =?utf-8?B?ZExmNS9OUTRnYkhxQnhrUGozK3BmNTlaaFJoaitvOEZnYndobnBFTnpNTWxx?= =?utf-8?B?M1lyYTJ3MW5qNEFyVnNpMWN4SWNmdSswYnhxSDZkZ2pLb2J0OU1sMnlSNnQ3?= =?utf-8?B?blRTR2pKOExEd01meExNdk9rY0JiSUY2eThQaDdQYmh6RVJrT1d1M0NibzEv?= =?utf-8?B?NWc9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: 0rBDMDZaKbfPrYQfI+FYg82aPTWcUsHFkTY/l56RquOgJPi1JBMRlnFgZMBL20lylKuxuDrwPh5ljgQRMgvN1Pcz/QroIjtxNRkG3zNvkiv7jPUSCmqzl1ysvfHD3OUQJ23tzCKcNCR0wUmwSYm17tmgEvH0zLGZuHxSgDyI4tefeS5EbPYRncWsPpVUlDEXP+EVgM5gCVFf1i0Tjx0+A+V/I+qG2t7i3KpKV0RlJIKrbR5VpBsn45BHH22ezqLGRk/5ZwgsT2qXHAXGE7qKUQbcSav2tKBS72zHLGGMYylIDH4hr9S9+iRfP2E0eG9VcKIO29CTQUxLRT2GYuqZk2zd5P+fEo8C7a90zi2L9oNJ4GeLWwumAEYjzsOM8goTxkE6JFjZT6Q8AczcSnUWtNwZW9LWVEJ00RcO+EpqGprYnRsKTOgR5XIyj/PyXb69EWznD7xi8g6iEf+vcBJWl6MRDblIWSFhRgzVjuzWvPngTw0iUF2QcdzOv4AqBwFjsVItWFebF4OZ6VHOe1zDqvVfA7ONbB9X+fmb1G116h3pvkcJFt6p/vwc/4iyHmYIXfubYz2Ls6kxyHQ27hs+KZZOM3pd7zXDnGNc847Vy0hFKwJgq8Fllrnvh/On5v1v3pXh/qb9t3js2Q8fmR6WpK/YKZccsZgAs7/n9JY7FIDJtpt6fZBR2GC71f9cB2AYUtlkEN8LfaVPvgxfufivYdE/ldU3CMdVZcjHkV8YIcsOtn2T5Kzkl4ghji5FDvGHuMCCseTDiaDFuM1IBH/w7dz8W7fL0s6AaTKw7oCOMDWW4vdO1blb99Gcrq10t7GS X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: f97cdd91-99c8-408e-a412-08db62a0e2b0 X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Jun 2023 13:05:34.3158 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: c6aN9hYmRcqUdhOXnWkyutB9xy4vWvi2phZGfAaT3qFgYerL1SB2sUa6skhwT6/3lTazQmBrsnrcLgvReTXJtA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY5PR03MB5347 Introduce support for passing the command line to the efi_multiboot2() helper, and parse the vga= option if present. Add support for the 'gfx' and 'current' vga options, ignore the 'keep' option, and print a warning message about other options not being currently implemented. Signed-off-by: Roger Pau Monné --- Changes since v2: - Do not parse console=. - Allow width or height to be 0 as long as the gfx- option is well formed. Changes since v1: - Do not return the last occurrence of a command line. - Rearrange the code for assembly processing of the cmdline and use lea. - Merge patches handling console= and vga= together. --- xen/arch/x86/boot/head.S | 13 ++++++- xen/arch/x86/efi/efi-boot.h | 61 ++++++++++++++++++++++++++++++- xen/arch/x86/x86_64/asm-offsets.c | 1 + 3 files changed, 71 insertions(+), 4 deletions(-) diff --git a/xen/arch/x86/boot/head.S b/xen/arch/x86/boot/head.S index 09bebf8635d0..aa443574d26f 100644 --- a/xen/arch/x86/boot/head.S +++ b/xen/arch/x86/boot/head.S @@ -226,9 +226,10 @@ __efi64_mb2_start: jmp x86_32_switch .Lefi_multiboot2_proto: - /* Zero EFI SystemTable and EFI ImageHandle addresses. */ + /* Zero EFI SystemTable, EFI ImageHandle addresses and cmdline. */ xor %esi,%esi xor %edi,%edi + xor %edx,%edx /* Skip Multiboot2 information fixed part. */ lea (MB2_fixed_sizeof+MULTIBOOT2_TAG_ALIGN-1)(%rbx),%ecx @@ -266,6 +267,13 @@ __efi64_mb2_start: cmove MB2_efi64_ih(%rcx),%rdi je .Lefi_mb2_next_tag + /* Get command line from Multiboot2 information. */ + cmpl $MULTIBOOT2_TAG_TYPE_CMDLINE,MB2_tag_type(%rcx) + jne .Lno_cmdline + lea MB2_tag_string(%rcx),%rdx + jmp .Lefi_mb2_next_tag +.Lno_cmdline: + /* Is it the end of Multiboot2 information? */ cmpl $MULTIBOOT2_TAG_TYPE_END,MB2_tag_type(%rcx) je .Lrun_bs @@ -329,7 +337,8 @@ __efi64_mb2_start: /* * efi_multiboot2() is called according to System V AMD64 ABI: - * - IN: %rdi - EFI ImageHandle, %rsi - EFI SystemTable. + * - IN: %rdi - EFI ImageHandle, %rsi - EFI SystemTable, + * %rdx - MB2 cmdline */ call efi_multiboot2 diff --git a/xen/arch/x86/efi/efi-boot.h b/xen/arch/x86/efi/efi-boot.h index c94e53d139a3..003ef037bf07 100644 --- a/xen/arch/x86/efi/efi-boot.h +++ b/xen/arch/x86/efi/efi-boot.h @@ -786,7 +786,30 @@ static bool __init efi_arch_use_config_file(EFI_SYSTEM_TABLE *SystemTable) static void __init efi_arch_flush_dcache_area(const void *vaddr, UINTN size) { } -void __init efi_multiboot2(EFI_HANDLE ImageHandle, EFI_SYSTEM_TABLE *SystemTable) +/* Return the first occurrence of opt in cmd. */ +static const char __init *get_option(const char *cmd, const char *opt) +{ + const char *s = cmd, *o = NULL; + + if ( !cmd || !opt ) + return NULL; + + while ( (s = strstr(s, opt)) != NULL ) + { + if ( s == cmd || *(s - 1) == ' ' ) + { + o = s + strlen(opt); + break; + } + + s += strlen(opt); + } + + return o; +} + +void __init efi_multiboot2(EFI_HANDLE ImageHandle, EFI_SYSTEM_TABLE *SystemTable, + const char *cmdline) { EFI_GRAPHICS_OUTPUT_PROTOCOL *gop; EFI_HANDLE gop_handle; @@ -807,7 +830,41 @@ void __init efi_multiboot2(EFI_HANDLE ImageHandle, EFI_SYSTEM_TABLE *SystemTable if ( gop ) { - gop_mode = efi_find_gop_mode(gop, 0, 0, 0); + const char *last = cmdline; + unsigned int width = 0, height = 0, depth = 0; + bool keep_current = false; + + while ( (last = get_option(last, "vga=")) != NULL ) + { + if ( !strncmp(last, "gfx-", 4) ) + { + width = simple_strtoul(last + 4, &last, 10); + if ( *last == 'x' ) + height = simple_strtoul(last + 1, &last, 10); + if ( *last == 'x' ) + depth = simple_strtoul(last + 1, &last, 10); + if ( *last != ' ' && *last != '\t' && *last != '\0' && + *last != ',' ) + width = height = depth = 0; + keep_current = false; + } + else if ( !strncmp(last, "current", 7) ) + keep_current = true; + else if ( !strncmp(last, "keep", 4) ) + { + /* Ignore. */ + } + else + { + /* Fallback to defaults if unimplemented. */ + width = height = depth = 0; + keep_current = false; + PrintStr(L"Warning: Cannot use selected vga option.\r\n"); + } + } + + if ( !keep_current ) + gop_mode = efi_find_gop_mode(gop, width, height, depth); efi_arch_edid(gop_handle); } diff --git a/xen/arch/x86/x86_64/asm-offsets.c b/xen/arch/x86/x86_64/asm-offsets.c index 287dac101ad4..fbd6c54188db 100644 --- a/xen/arch/x86/x86_64/asm-offsets.c +++ b/xen/arch/x86/x86_64/asm-offsets.c @@ -175,6 +175,7 @@ void __dummy__(void) OFFSET(MB2_mem_lower, multiboot2_tag_basic_meminfo_t, mem_lower); OFFSET(MB2_efi64_st, multiboot2_tag_efi64_t, pointer); OFFSET(MB2_efi64_ih, multiboot2_tag_efi64_ih_t, pointer); + OFFSET(MB2_tag_string, multiboot2_tag_string_t, string); BLANK(); OFFSET(DOMAIN_vm_assist, struct domain, vm_assist); -- 2.40.0 From xen-devel-bounces@lists.xenproject.org Thu Jun 01 13:05:57 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 13:05:57 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542474.846387 (Exim 4.92) (envelope-from ) id 1q4hzv-0007hX-JO; Thu, 01 Jun 2023 13:05:47 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542474.846387; Thu, 01 Jun 2023 13:05:47 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4hzv-0007hO-GC; Thu, 01 Jun 2023 13:05:47 +0000 Received: by outflank-mailman (input) for mailman id 542474; Thu, 01 Jun 2023 13:05:46 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4hzu-000791-TG for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 13:05:46 +0000 Received: from esa1.hc3370-68.iphmx.com (esa1.hc3370-68.iphmx.com [216.71.145.142]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 04ac05f0-007d-11ee-8611-37d641c3527e; Thu, 01 Jun 2023 15:05:44 +0200 (CEST) Received: from mail-co1nam11lp2175.outbound.protection.outlook.com (HELO NAM11-CO1-obe.outbound.protection.outlook.com) ([104.47.56.175]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 01 Jun 2023 09:05:42 -0400 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) by BY5PR03MB5347.namprd03.prod.outlook.com (2603:10b6:a03:218::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.23; Thu, 1 Jun 2023 13:05:41 +0000 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::192:6bdf:b105:64dd]) by SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::192:6bdf:b105:64dd%3]) with mapi id 15.20.6433.024; Thu, 1 Jun 2023 13:05:40 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 04ac05f0-007d-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1685624743; h=from:to:cc:subject:date:message-id:in-reply-to: references:content-transfer-encoding:mime-version; bh=2n4arSTk5wOc7VPil1Qh67QOY54kclXss/Gd1eaIT84=; b=HlUFtaGJGvRgRZWVHAA3HTH9Iv7o0U0r0yDTSKyRHRzeyXR+LZzv1Twy REWeNSXWQ2gQES1ek+PquAvt5S9g2AQk+cmtoue+4ZSdmkV/UdvNuKDU9 wH3UgsZ7a9jdEuKJRiCDJiGT/84INuSJFdbBau1MrCLVcGPAA7gDlFSx7 Q=; X-IronPort-RemoteIP: 104.47.56.175 X-IronPort-MID: 111630318 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:NIAHTqzQXJ+7ggatqHN6t+cRxyrEfRIJ4+MujC+fZmUNrF6WrkUFy mcdD2nSbP7ZNjP8KtoiO9zl8RkCuZ6BnIVqSQA+qCAxQypGp/SeCIXCJC8cHc8wwu7rFxs7s ppEOrEsCOhuExcwcz/0auCJQUFUjP3OHfykTrafYEidfCc8IA85kxVvhuUltYBhhNm9Emult Mj75sbSIzdJ4RYtWo4vw/zF8EsHUMja4mtC5QRgPakT5zcyqlFOZH4hDfDpR5fHatE88t6SH 47r0Ly/92XFyBYhYvvNfmHTKxBirhb6ZGBiu1IOM0SQqkEqSh8ai87XAME0e0ZP4whlqvgqo Dl7WT5cfi9yVkHEsLx1vxC1iEiSN4UekFPMCSDXXcB+UyQq2pYjqhljJBheAGEWxgp4KUwS0 fcjNT8zVDqoo/iy7LSrZK50ne12eaEHPKtH0p1h5RfwKK9/BLvkGuDN79Ie2yosjMdTG/qYf 9AedTdkcBXHZVtIJ0sTD5U92uyvgxETcRUB8A7T+fVxvjaVlVMsuFTuGIO9ltiiX8Jak1zev mvb12/4HgsbJJqUzj/tHneE37aWw3ijA9tCfFG+3sZxo0WOnCs1MhkLCX/8h76AiVa8Y+sKf iT4/QJr98De7neDXtT7GhG1vnOAlhodQMZLVf037hmXzajZ6BrfAXILJhZDYtE7sM49RRQxy 0SE2djuAFRHr7m9WX+bsLCOoluP1TM9KGYDYWoPSlID6ty6+YUr1EuQE5BkDbK/icDzFXfo2 TeWoSMihrIVy8kWy6G8+lOBiDWpznTUcjMICszsdjrNxmtEiESNPORENXCzAS58Ebuk IronPort-HdrOrdr: A9a23:U1H52K/Rb0+nZ4nv6sZuk+C7I+orL9Y04lQ7vn2ZKCY0TiX8ra uTdZsguCMc5Ax6ZJhCo7G90de7Lk80nKQdibX5Vo3PYOCJggWVEL0= X-Talos-CUID: =?us-ascii?q?9a23=3AXJ8zdmvdWRy9gSpIsYDcSOnG6IsILlnW92rfHXW?= =?us-ascii?q?SIkJzTJGTWXHX4LhNxp8=3D?= X-Talos-MUID: =?us-ascii?q?9a23=3AiD3Hiw0VmtDthnDaEU/45BrWzjUj27+NEF1X1rM?= =?us-ascii?q?8v9TYEWtWfA6elDaPe9py?= X-IronPort-AV: E=Sophos;i="6.00,210,1681185600"; d="scan'208";a="111630318" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=ZdFP7Y4KfV+NDzPLGrYPLd3tIQIw9IhQg3Yt0C2jGP7Hi8sdafseRjTGTiVl7NfuxYYqYBwuTMgr4Am769ufQ4wrwf+HO+wD44d/3BX7QG6YdAjgsIk2qW7oIWBxCnDGJCecAEOyFyT3u1jNgQeMcQdfzRQR6GpmiWJ2R4gcYdNrB74qfsm1mNid/DSU39+4izrFHOMuex06IHmxfAJnpo8lNCgyqifgQhK/iRzMLqgpk0b6JDaW5n0CPx9zF7KBOmtNtNgww8CbAnEL753EXy/FR3sqFayWAPaL7sCCSzouv49HB+7P1xeGZ2/ycgn668ZyoAOpHEGmBuOswsp7EQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=acbPmQOHVXpOvt2zjOfNJijiZJW8uhg4HOcOyYQ+YRY=; b=UaLR9SfeSKKw0YbAec20gg/R/NGc5xZKGYgSnj5y1Rxag7tuGs3v0FER87TpePVPbzgfxu9dZP0I4FFgJUcJcQh5x20svgcB7aO8cz1r67quAasVZf5qE4CxErAkGgr4slIaihjcHG5fBHAjmDZK7tZxfoNSZz1Jfo+1oCDpTUHSz2xtcVFd3Jj+in46dQNvrOGoNzzTkz4KiMzgl+yy0CdxNzIzPB/VqDjdoLqdHy1hY4cyw4PLHqBWcwqVgOxjt1ITbQY8BJRwKAIhwqwhNl5D/1o0JQ9DRYRpzTb7MNLF8xoKArqpUESoWKjmEEzk8PojR1YEZI5umEzIp/W1OA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=acbPmQOHVXpOvt2zjOfNJijiZJW8uhg4HOcOyYQ+YRY=; b=YNh3q+3stYWEbKxGJlxFnptpKng2ulBvt4icQN/t8ZhKEPWa6BSlwjOHVgmu1v8+2CBa/z+rXeepxPQ3ycrRMXwlm3nbUqlqp40jzVWn6caHsmF+l45ZLXfRLcti5M7ykOUlLA0nvZH7bgFt1Hr6Q+bHulS5Sl5NTwhr67+fX1g= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; From: Roger Pau Monne To: xen-devel@lists.xenproject.org Cc: Roger Pau Monne , Jan Beulich , Andrew Cooper , Wei Liu Subject: [PATCH v3 2/3] multiboot2: do not set StdOut mode unconditionally Date: Thu, 1 Jun 2023 15:05:17 +0200 Message-Id: <20230601130518.48874-3-roger.pau@citrix.com> X-Mailer: git-send-email 2.40.0 In-Reply-To: <20230601130518.48874-1-roger.pau@citrix.com> References: <20230601130518.48874-1-roger.pau@citrix.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO2P265CA0274.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:a1::22) To SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|BY5PR03MB5347:EE_ X-MS-Office365-Filtering-Correlation-Id: 13ae71b5-56d6-459a-ee07-08db62a0e630 X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 63UdwiJ1BfwMcMUnQegRv/Yzb4xrnaM2F+VGfruMePiq1PRQxr+YuEZKbV4Ac/5V7AMYxXFEGX3WJnOi9OFEaX7Us0LNTaMbOyNilc/Xbt/13Md1sBkxaDOyp7KzPYVg59g2k9wx89VXHmeGOkBc77JCjqH9Q4vBw7b43JN17RoDTBA0YQBNJtOjk5PH7ZQxM/oVSXGO9N4VJ0zTD1zsU20Q9TtXuUwRGjqEXurQdR1iJKopAQnyk1GXH63LDw1lzpdLlGG/+Uz4zpJbE4LJ2SjoSpEBbzvZDaPRDr5no0x71XlOSWDJ3wIgucTOAS9kexck0cZ0OuRI4cea5rBdioNoxr0ppp0tSDHrz1EAJEIf7pmLJKy/Ou/HiTvJbaXE8TIm3kZUyLjibqviXmHPpAMHtaDDTXmatwhf+mpwaCPJBoBkUR3rMoQwzT11/V8P5nT71qRTp+7iSH6lrYOdAG2MulTDcgSmMGSCsbAX2e+aTaWxrzJE+A9Je1MIQN0pUvBvVuFHwnvxw73hVBCBfpssQFN2GEiHSqWUqVNuFFd6Yut3SkEMRQP2x0uoKe4J X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(376002)(396003)(136003)(39860400002)(346002)(366004)(451199021)(83380400001)(66556008)(6506007)(66946007)(66476007)(6916009)(6512007)(26005)(6666004)(1076003)(54906003)(2616005)(186003)(86362001)(6486002)(2906002)(8936002)(5660300002)(478600001)(8676002)(36756003)(82960400001)(4326008)(41300700001)(38100700002)(316002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?VU9EbnZCdlM2WmloNjFKQ3FyekI2MFpINEV1c3hjYWpvNjZGdTBtN2kzNk5u?= =?utf-8?B?MHZyZUtwamtPRTVyL1FZb1FCVzRjbzRKSEt3Yk5hTjl6NVQ0eTR3eVcveGNB?= =?utf-8?B?MTV6UDZaaDJleUdvSk1mMkg1ZzRxM09GLzJXNFJDaEZTb3RFN0xVbTR6UDAv?= =?utf-8?B?V25OWmVrOG1jZE9DUU4vUlR2SWhZMVZLZ0J5WUt5ZGpyUi9zc1FVei85ODBn?= =?utf-8?B?Y3pkdEpZem5CWUtwcUI1RkVsUmJRQllSN3RaUG90M2RtZno3aVh4Vzlsclhw?= =?utf-8?B?U2lnZ0FWY1lVNTRlOVdCSjBGQm53OU1YTFBmM3AxK0VveXBPbUgvNlJkMEdI?= =?utf-8?B?RlFTM1RubEZ1NGNOR1R0SmU0TmRseWRVNEZNVlBET1J3dFZlYnVPRm1nUGoy?= =?utf-8?B?VjJQMEJ5WGpXakVWdE0wZEJDaE9adlFMTXZWYVZaUDlvbE8za1ZXY3lRMkx3?= =?utf-8?B?UlRPaUtjVU9PdDBPQU1LNzJjOCszZmgrbUNjM0Z4c0hPd0lSQTFORTU1L01Q?= =?utf-8?B?Vk1zRGNRS0JBam5aaDh5WFJmbk5lazFNMy8zdldodHhQb1AwdXFJdm8xbFRB?= =?utf-8?B?R043L25Fb0ovOEo4OEljVTJMemVOOVlYU0hUa285T3RYT2Y5WmR2UlRzMWtl?= =?utf-8?B?WllCbytYbU4ySWtDNzlycWtMSWU1TEVOUVNObER3ZW5WS1FpeVo0dHJxSnQw?= =?utf-8?B?cUhJMDRSQk5oQ0QvVmFhckRZY0Qybmt5Z1ZNdUl1aENzM3JEbmJHa1Q4M0NJ?= =?utf-8?B?MUkwbDNmaDcyelFBcHd1SXdaS2ZObUlWdU8zdGJTTG51VG1zUnNzVFVpVU9F?= =?utf-8?B?R3hwUzNrOUUxc2w0Mlh4NEt2cDYxUVBaaFk5YnlabWJnT2o4WWJPMThkVWhO?= =?utf-8?B?eWNrYWxuaGpiOXFyR1NzK25zbXI2M3RGbFZoZFZ4QzVzT3dmS1hEeVJhdzNr?= =?utf-8?B?UFZSOXIxbmJjdFozenpuQlpkVC9RVXFob1VMYkxJaDhzOGRVa3RkblptZHhL?= =?utf-8?B?dmQ0aHlQUG9KVFRWK2wwbTdTSjdhRVY2SFRlUExoNW4zNW9NSHVoMzlhQ1dw?= =?utf-8?B?dVpvSmpoMEk3NndsSHpmSjd2UjYxNXlVUkgvY3R5RVh6YnJqb2cxZUxSOTEv?= =?utf-8?B?V0JnTEY3WVRVRnpHdjVwWHA3ZzJuY2o0S0hsMEdYSHdSY3hONW1wSkhlQ0xN?= =?utf-8?B?T0tzY3JEV0JTczd5RVFtS2Z0VVBkNk5JdXJ4V2pvd0UwSlhtKzFtMGpxbmJk?= =?utf-8?B?azA5UU45azNEbWlFM002dUcvSzBhK1hBRWpQeWlZMFZBWHV4OG1JeThZNHB5?= =?utf-8?B?MmVCRktCYVdLSC9NakZyQnhTT2VEQ0FMWkJ6dHZvMnh6Q0pxdTlmWWxZbitX?= =?utf-8?B?ZmdrZ2dDa29kM0Q1N2JuMDc2KzBCb3NvbDZRMlBCdTBRd3N1R1dDQUt5Yld5?= =?utf-8?B?bUl2QVE3WEhpVTlJMzdLakRJNFcyNUNkNTMrV2l3NFFhRXI0cUJ5WURwMHY5?= =?utf-8?B?cWd2dCtxR3BJdy8rOFdvY2o5NVV4aStmelhsejZOK3IwMW9uUjMwbHhzaW4y?= =?utf-8?B?M0ZlQ1RXUUxjd2NqTFBZRDdHZHJaZytRSllsMHIrRXlQeTQzZHR3d0pJd1Z3?= =?utf-8?B?UmlSUThieTVlWktma1FCVUk2SGdWYjZPZkR1anBBQ0ZjUHNwVjVZNjRsVXNQ?= =?utf-8?B?N0R0aldUeGU5a09aQ0J1QmRCWTVTVm1lYmswSVBLR1ViVVpXNFE5SHpsY2pE?= =?utf-8?B?Rk1naGpIUlBja01jNlhUZkpNQmpjSDRPbUVaSU9LYmN1Ym1LSS9Ma3FPSnlw?= =?utf-8?B?WjFXMVgxRmorVVM3S1BDaElpWXEvTmNDaVVPSjA4NFVTQUNBUmxkNFlGY1hK?= =?utf-8?B?OVQ0b2dSOGtveDMrT2w0YWJSanlLSDRIdGw4WC8xMnRKeVFSZzcxNURFaTEx?= =?utf-8?B?M25ITjVmNUl5WXdFc203Nzlab09PdkNnWWJxa1Z2S3YrcWc5bGJPODV2cGZL?= =?utf-8?B?YWFZaElHWG1pd21OZmgxYmJHSlRFRHgvV2hObUhMNDdZeFZiN0RmTC9hclBR?= =?utf-8?B?alNneGpvOXJOTWo5Njh2T2d5ekZDVmVlTlduNzRzL1BpYWgvUUpBZkZzSFRr?= =?utf-8?B?bGkyNmRPN0l1OGcvbGs4bDBLeWprU294bm00T2ZUVEV0VHA3RFZTa00rUmVm?= =?utf-8?B?TWc9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: vHlw5jpgioz598SzX6YV7Qvz20IQ7BBIxFEn/HYVXsTL5FWfjLu15x9Pgv8zAOFBdsO4TijaCtzK/336rnh4VWt7btMpD2Cf15pOMkRob+O8biLGZIoZCCPbDurmnwTfVFC7oWdgLyfDCGBFiRshdoOzKImgdtfQDngiuinrnxbgoL0m8q+MUmT350KExhgZaNiajQgSu+2W46bOQUu7WyvfquBm1pYGgLh/vdbs6nC/tDJUnb37owNNjn2gQoXr/+8/8p5gf9KOPZUrBFCHP9o/+oCS2SVszqQffKJS0OqX9UgCzsPhb6ZNqZ+IN+jgqq0nx2qh1eu5PxYrpFXQOluRCVQLCoEctnbQnhSmrEns/yKfgyMXsa4MPXd+WOEiJFWhiInythg25k27lcCxMZcrwaY8xOzf6v+DbTBmZWJUNM7LaXRTdjnYVoyMfQ96E50hVyvdg5PUWT8CJKLdp2jedSLxT/Os0hpEMAOGqfNb0W8UkVHMO/RF6LKvfYAFoklzqezNV9TivBIb6qxmkh+g/BW8XgfFIo5PbxAh5SJgqpBjqltg46LHlabMevEM7wcnzpBn5jI12LekWD7t9slyYp0n3TEiPvxeVToiJBT/koeSF9BZN+fAD9kpQh5FCQiWy6AjgXntI2ThbKdMv0Hc1ga/oYSYy4PBzXzbzx2f9B/0M9l4dvKzbCMNm3CSddYAiB2um6wDHJsPmGHUAbysZiInRUQUxus/fTNQ+ixljlXeIkogcrLTzWC7b2mRX0rHSDSYUBzjQMYGVZ4f0VXarbQuCaVZe5ZBbqKOmMZYk/6WPfSkjskK/H8NMpYN X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 13ae71b5-56d6-459a-ee07-08db62a0e630 X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Jun 2023 13:05:40.2056 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: xRY98+i0MpgKWAaI4sHeg6W1oeMN3t8NFgssOeX5Ooy/Ow3AtNRBezt4DM5zWz5rRWeW3ZhzLqQ3g7ixCYv/rw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY5PR03MB5347 Only initialize StdOut if the current StdOut mode is unusable. This avoids forcefully switching StdOut to the maximum supported resolution, and thus very likely changing the GOP mode without having first parsed the command line options. Signed-off-by: Roger Pau Monné --- The code is very similar to the approach suggested by Jan, please let me know if you would be OK with your suggested-by tag added. --- Changes since v2: - Use approach suggested by Jan. Changes since v1: - New in this version. --- xen/arch/x86/efi/efi-boot.h | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/xen/arch/x86/efi/efi-boot.h b/xen/arch/x86/efi/efi-boot.h index 003ef037bf07..5314f4293b12 100644 --- a/xen/arch/x86/efi/efi-boot.h +++ b/xen/arch/x86/efi/efi-boot.h @@ -820,7 +820,13 @@ void __init efi_multiboot2(EFI_HANDLE ImageHandle, EFI_SYSTEM_TABLE *SystemTable efi_init(ImageHandle, SystemTable); - efi_console_set_mode(); + if ( StdOut->QueryMode(StdOut, StdOut->Mode->Mode, + &cols, &rows) != EFI_SUCCESS ) + /* + * If active StdOut mode is invalid init ConOut (StdOut) to the max + * supported size. + */ + efi_console_set_mode(); if ( StdOut->QueryMode(StdOut, StdOut->Mode->Mode, &cols, &rows) == EFI_SUCCESS ) -- 2.40.0 From xen-devel-bounces@lists.xenproject.org Thu Jun 01 13:06:03 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 13:06:03 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542475.846397 (Exim 4.92) (envelope-from ) id 1q4i00-00081w-Sh; Thu, 01 Jun 2023 13:05:52 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542475.846397; Thu, 01 Jun 2023 13:05:52 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4i00-00081p-Pe; Thu, 01 Jun 2023 13:05:52 +0000 Received: by outflank-mailman (input) for mailman id 542475; Thu, 01 Jun 2023 13:05:51 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4hzz-000791-Bo for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 13:05:51 +0000 Received: from esa1.hc3370-68.iphmx.com (esa1.hc3370-68.iphmx.com [216.71.145.142]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 07495e7c-007d-11ee-8611-37d641c3527e; Thu, 01 Jun 2023 15:05:49 +0200 (CEST) Received: from mail-co1nam11lp2174.outbound.protection.outlook.com (HELO NAM11-CO1-obe.outbound.protection.outlook.com) ([104.47.56.174]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 01 Jun 2023 09:05:46 -0400 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) by BY5PR03MB5347.namprd03.prod.outlook.com (2603:10b6:a03:218::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.23; Thu, 1 Jun 2023 13:05:46 +0000 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::192:6bdf:b105:64dd]) by SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::192:6bdf:b105:64dd%3]) with mapi id 15.20.6433.024; Thu, 1 Jun 2023 13:05:46 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 07495e7c-007d-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1685624747; h=from:to:cc:subject:date:message-id:in-reply-to: references:content-transfer-encoding:mime-version; bh=YiFXxxhSMY7woCbFVIdA3BMiFbtD4MR4evhag1LgFWQ=; b=DB4C2g/FifApaF7tJ6IR9ESLp0mfd9woBng//OqNkG5renA/zNXIwOYK jr3bN6FzwanXBWRQJijb1LhKW/ETY3ajcINMa2SwhPqHwar38vHL7U9rf 7W2T2hNCpAEiAyPRR7llFKf6HbHuB5h3zpPPHo9p7nYKwIKmemg4uQw2N E=; X-IronPort-RemoteIP: 104.47.56.174 X-IronPort-MID: 111630327 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:rxmOO6q/FUQE9DJJWRLGShzK2YVeBmLWZBIvgKrLsJaIsI4StFCzt garIBmPPKyLNjPyed9wbtuy/U4H75GDnNJrQAZs/isxES8T9puZCYyVIHmrMnLJJKUvbq7FA +Y2MYCccZ9uHhcwgj/3b9ANeFEljfngqoLUUbKCYWYpA1c/Ek/NsDo788YhmIlknNOlNA2Ev NL2sqX3NUSsnjV5KQr40YrawP9UlKq04GtwUmAWP6gR5weAzyBNV/rzGInqR5fGatgMdgKFb 76rIIGRpgvx4xorA9W5pbf3GmVirmn6ZFXmZtJ+AsBOszAazsAA+v9T2Mk0MC+7vw6hjdFpo OihgLTrIesf0g8gr8xGO/VQO3kW0aSrY9YrK1Dn2SCY5xWun3cBX5yCpaz5VGEV0r8fPI1Ay RAXAA0sUiyzwNqq/L/lTuNMv58pHuX3ZqpK7xmMzRmBZRonabbqZvyToPR/hXI3jM0IGuvCb c0EbzYpdA7HfxBEJlYQDtQ5gfusgX78NTZfrTp5p4JuuzSVkFM3jearaYWJEjCJbZw9ckKwv GXJ8n6/GhgHHNee1SCE4jSngeqncSbTAdtLSubgraQ16LGV7kI1LDc7bASgm9agoB6RRsBzL lAK5RN7+MDe82TuFLERRSaQsHOC+xIRRddUO+k78x2WjLrZ5R6DAWoJRSIHb8Yp3Oc0TzE30 l6Cn/vyGCdi9raSTBq19KqQrD60ETgYKykFfyBsZRAe/9DprYU3jxTOZtVuCqi4ipvyAz6Y6 y+OhDgzgfMUl8Fj6kmg1VXOgjbprZ+QSAcwv1zTRjj8sV8/Y5O5bYu171Sd9exHMIuSUliGu j4DhtSa6+cNS5qKkURhXdkwIV1g3N7dWBW0vLKlN8BJG+iFk5J7Qb1t3Q== IronPort-HdrOrdr: A9a23:v0QoKay4GwV3QCbkybN3KrPwF71zdoMgy1knxilNoH1uA7Wlfq WV98jzuiWE7wr5NEtQ+uxoQZPhfZq+z+8S3WByB9qftWDd0QPDEGgF1/qB/9SKIVybygcy79 YET0FIMrHN5IlB7PoTsWGDferJnrG8n5yVuQ== X-Talos-CUID: =?us-ascii?q?9a23=3AUl4b3Wp/Ug+6TovZbMbDWv7mUf0ETkHti0/MH0L?= =?us-ascii?q?mDWxJceafe3OMoooxxg=3D=3D?= X-Talos-MUID: =?us-ascii?q?9a23=3Az7PmVQ0t1SubcmvlCmGdKpz/pDUjzYKKIm00zo4?= =?us-ascii?q?8lNCuZQNtKRuYkCqoe9py?= X-IronPort-AV: E=Sophos;i="6.00,210,1681185600"; d="scan'208";a="111630327" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=dOkryvORN9wobYipfIS4SvcvfWwj9TL8CNxxGA73WWPmOiWPXs4d9/kHfdy8PxVlEp9eCLs2RajjkRQmTG4DI9X+13GFrwF32q+ky+QlmmPzpIzr8yjmme4qCSNNhSMSpMQS3sYNx6EUyDmKcaB9Bbk6R/0Xz7V8f3i6tXcP70SidwiWOMwdjlho9xRFOUgsj/E195HFCauuULE1ts+DB5Tdj/6FnW+AasSJ7QRHwr5XajTSPhB+XRmU0Ijcir2gR2SPoiRo1IGY+r4lkANUk6vRYxRfR37CJYTYGhs1yEgx3z1aShX2mN/cQ0hb9jzS2qwfNZ0uVmDTo9LChYjsWw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=5KbyhxApTsmQyQClBvfFt4PODwfZzCgM7GeO38igh0w=; b=No8rhiwd4u1IGjd1q+0/SltKscKPmzpXtj6A3WbZmAIPD6mCgOXQlEBZtcgDMFqHm9p+VKya9DtXLzSJYClsegr++OXagd/10dgB81i3ql52uQ3Ha8NX9F9S2rSenArRZo3jKyzpOlwS9R/MbfdF5jY6wZwH9j2bX2KzpDqijG4/m14PgKbwqZaGWTGcUqvuV/UpcFBbkK95fXMVK5dBfwXgcrCMpAwFbzhnnVGzOaMPFKMpdIhWlNjvPEOBTcA6asEdCUwOw43eyqpbinuSLIYPBXHCxK1q97U/Gky8Qk9WFgiG/0btbfpuTv/KDhmpmzUuiHvX+FY+16n8RxVadQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=5KbyhxApTsmQyQClBvfFt4PODwfZzCgM7GeO38igh0w=; b=wj/FNlRx1A+fBuoPRYNVQpluh/xiUX5cgvlvhIM9SrXDd/+tHefP92BQSGSMrsN+hQkfAeo6xlZ/gfdb9Hhbab1xd0eCBc8GcN4mB2JVadjX+hIb1FmMXu85dmo3g4Ubo0bqxLXVvHZ9hdApb6g7FtzDk37c48Qit+CQRajtUhU= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; From: Roger Pau Monne To: xen-devel@lists.xenproject.org Cc: Roger Pau Monne , Andrew Cooper , George Dunlap , Jan Beulich , Julien Grall , Stefano Stabellini , Wei Liu Subject: [PATCH v3 3/3] cmdline: parse multiple instances of the vga option Date: Thu, 1 Jun 2023 15:05:18 +0200 Message-Id: <20230601130518.48874-4-roger.pau@citrix.com> X-Mailer: git-send-email 2.40.0 In-Reply-To: <20230601130518.48874-1-roger.pau@citrix.com> References: <20230601130518.48874-1-roger.pau@citrix.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO4P123CA0661.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:316::15) To SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|BY5PR03MB5347:EE_ X-MS-Office365-Filtering-Correlation-Id: 07b4fb5a-f66b-4a20-25f8-08db62a0e99e X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 4X5ZvqegZ1e2DbKCGC32QUEkjXQo4XEUJ38p/Z3DhzTnY2SbZXXm6v1qB0AC1xW0ViqghtsjGWI04C4RQsA427DFBHoh/CRj3KsIJGJJhSp6Yo6xBx8wq8tsO5lVFDLZXU/SQKPFaq9cBTqRHhv4B96wIF5jWepO5QgXykiFbojGCECh2Aui9h+Mj7RaZNppQqWOxPNB+acmi3UHQE8eqp6m23f9ETmuHhzSFQD3JCvaUvUt6vIGxiq/ViItsoEPn7lY7TzqN65Fs0Brfh/JjQpWEHny7HwAFzR/GdKNqcekKYKcSTR0/gamsa/aNWPEqGcMdpMoq5Ga8wec+HVMyBFtdm/89PemqfCgL/7MVv/p9dAGTujvOBGPIIkj6fhxCmOTeXXFBAshuoebeIkLpWJ4FH1LsnaODAeQR+N6jBav/T5Wzzven5UDvV3OT+DWPxGAme4+I6ZL3eGeMHHjTER7DGpowN2WUQpClbQ+aORsk5hSUQlHKe9+DP1UArJhDzItuxdW0gCqvoZgweAJvH8y+PAqiefAmJBrfEMmeK1O0jzXi2XeVYzVX2qy39bi X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(376002)(396003)(136003)(39860400002)(346002)(366004)(451199021)(83380400001)(66556008)(6506007)(66946007)(66476007)(6916009)(6512007)(26005)(6666004)(1076003)(54906003)(2616005)(186003)(86362001)(6486002)(2906002)(8936002)(5660300002)(478600001)(8676002)(36756003)(82960400001)(4326008)(41300700001)(38100700002)(316002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?a3dtUXNKSjlJRlg0cCtsbnova3pQTE4rQWZsV1QxUngwVS9pSWowU1ZyUUtX?= =?utf-8?B?SEp4UDFoSkJLK3h0WmMvNFZMY0hkSm5na1M2bHV0ZmRDWDhXME1ZTzBRaStj?= =?utf-8?B?bjV1bGN0WlRlNWplN0piM2JVVnljTm9WOGNmWk1VbUZDQytjVFhyYi9ONXNY?= =?utf-8?B?cDg3blNkK01mQ3lQcXQ3UDd4bnF2UWFubHVGQ3pPWnBwd0ZZS0VzQmZIbkhM?= =?utf-8?B?RE83TnJST0NCVnNxWW9tY29ZWlk1bXU1U1p1VTdRVVZ2eSs1RjZFMVZTeHhw?= =?utf-8?B?U0svUjA1TG54TlFiNWtkQWRURGFoSEpyakxKYWlBY3AvZmtsdkpDRzFWdS9Z?= =?utf-8?B?UzJ3UHRkNjFRd1ZVR0l0ZjY5NGR0TjBzWDNkNXhBc0IzVGpPVG1nQWxsYllP?= =?utf-8?B?VXBONlYxTTRCK1FQOTM5aWMrMmxTdERTQUZldXlac1NkZm9TRU44ZzY1WnRS?= =?utf-8?B?VXVONW5qM2UxV2NUOVdwOWQvRzVxU3NMT2NTcmQ2Nm8vY2dnbVpVTFR0QnBI?= =?utf-8?B?eWxqNkVzREwzbk5FVEpRbjQ2aDBkcVRyWjVEb0NQWXZXcWZkODU5VXhqVlFj?= =?utf-8?B?a21TVnVEZVQ4eW5EaGR1TFVWVExObFkxRTN4aGF0ZEVSS2NaQ0toOXQvYlgy?= =?utf-8?B?N01RK1JQM3hkN3hIMS94U0NCQkl6U1RDOWVKOWJyK0VvNFRLSzRTdlcwSmpn?= =?utf-8?B?YmljUEJGWmdqaFFYSFRHR1Z1Uk5yMjlmT3gvOHUyb1ZHK1VHL0JMZlo1M0xM?= =?utf-8?B?QjNYbmtpek1XMWZZWS9PZkpzdXBDeFZMM0gzb0ZMV0dwZ2VXUUxqTnVBa3lI?= =?utf-8?B?Q2htR05wM2FBZnQ3MHJ0aGFhNXBxSXkwNlkyZ2syQ0JqdWh6QlljckI4MGhD?= =?utf-8?B?U1M2bXpnbXh1aVpzZ256dlcwVUVTKzNCUzgrOWt1TytnZ1l4d3hMbHRxdzRs?= =?utf-8?B?RzlCNFFKVUxvRFlxTk90STBwbS92NkJmeDJtZnpteVlCdDdocVBiRmVUUDBw?= =?utf-8?B?R0tpVTJScVVFcUdDRE83QWE4UVVkVDJhbzhPWllhaGxPZGsvclZDTXBjWFBk?= =?utf-8?B?NFRIOEIxOFMxYUZzZzlwdS9xSUs1NDF0RDBkQkloTHNzZmwyZGhocXdYbWRv?= =?utf-8?B?c3E3d0E2VS9QUHBPeUV4eFl2ZFBab0o5dE1MWEpidGU1cjdCcUVuZjFHR051?= =?utf-8?B?cGRtOWNGeEo3WUdSZ2pVNUdzVXlTZlU0aU91dkJPN0xGOEVXbmRvamtiNlph?= =?utf-8?B?ZEFoK2dPRU94Q0tiQWRQMUFXNnJFNXhRLzA4ME5pK0IzR2Irc1Z6ZWZDVG5v?= =?utf-8?B?V000Y2s2NVd6dGRBVEc4OGdGeEdVanpzNjRiTWpaTDg0c1dRbFBtcUN0L0o0?= =?utf-8?B?a1d1OGhnSU1nWFRoSVR4R05yU2QzMG03SGtCZmpURU5FdUtkWlZ0b3c4TVhZ?= =?utf-8?B?cXJGWnZ2M1hRTlh0NlczMjdKQXJkbXhQOThZbUlLQy92U0p0dm1VeWliN0pN?= =?utf-8?B?T09YdGJnR1ZFRmJQc2Z4UW9jVysyR2VTUXZyd1hpOHRLRktEYXdkYSs1MDI3?= =?utf-8?B?WVNDUmpkanZKcmRrei9KZnNzR29waUJjY2dwU3JwNGZxMHFOM2tJMk1oWEox?= =?utf-8?B?aml2RzVROHlQdEpZMmlCcGE1RjNuVTFGT0piOXdTb3VXd2VCbkFxVmxsVWZt?= =?utf-8?B?Rzg5U3UyMzMzdnl5eXlDU1VxejZzWEZEcWIyZlBWVFptZHZFamYrWDhNQ0tK?= =?utf-8?B?Y1pqRVNsRnRKSXk3T01jVHVVa3BqQTV1VzlvYjZSM0QvYmlKQjJ3ZnFVeDBa?= =?utf-8?B?YjVxbjZ3c2w0K2ZKby9JSkZDRkt2ejlMWlVMNzVVaEhVaWtVVXBPMzhFN1Ew?= =?utf-8?B?dUFjMkZYM3VwWnpjeGQxUCthYVR2dWltS0o3VW44NE1GZGd3dHJJM09VbTVk?= =?utf-8?B?RjY4dnloVSszNEFyYlk2M2ZrQTZyS3VPSzVYM090TlJkeE5KT2c4OE4xMjRI?= =?utf-8?B?VDllbEhrNDZKazJUYWt5MExoMWhHNlhzU0JLR2NPWnpiYUJKaERzdTU0aldi?= =?utf-8?B?ZFlzZlFmdXJ6dGZYTnRqd3Y4dktrVnJ2YllKOUNrNi9LZ0MzRFk5ZkdDWUlM?= =?utf-8?B?NXp4SngzaGpLSnZMUG9lVVVVSUFRTndyZTIrRVZlZjhnaElqay8wUzV6dUNk?= =?utf-8?B?YWc9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: JeQy0UGDCwCxdab9G6dugZZj44vWGV/8WNhVkIgrSGy/JAD9QwdP6oF4ZDZ7ZsbvHYj8/6uquKrk2mhLWae7weuLbxKARu7CUEMY1hWB5RAofCWvkmXPPS3bCislU1mYfWxd1R/kO9gVUYIFO3/jtpxwvJKb22OsOgQkIsuGvb8X03pFWtdFy2g68gfjiF9fXInvZMAn6H995UwnnVxq5lLVdp+bTXpDZdqgtY9ww2sN70vDz5b2b+GZ5hoSxTUOZLvO1oFNNieGmntFiC52nlsBFCHkVzW7lhx7p52T1/f1Y1wJY9qxJk5YXX2c3/xv64D3dt3BIXjBGZykvDJeFI1cRRyx4b0EIM1zsn9B4MZl9E9XWyJisCS0rz+tPBzr2WDiq02a9QXYvcMTgXZGtJWgek8x1Jt5jMED1SfV4QqOO/IQXnoEfyKcOy16VI7g8qos+MmBxSCT0lajmHFVwY1p6Q7b8CKUOvjh2FnUUOfmfEvJCWcRWXWljCDwY1ZhxpvvCSTDNrHIJZwHMQUONA9G6Ox+1B061R4/1wxT8cPckhXZBbCOs4Ow/MVJswfUYc3eNKpnoh64shEZg/tMCgXCK+f/bgF3ZJAxeGblHnToAcfbKEQSFmbBcbYGsV6AGnyQ7lE22q13510h14FM8r8j5xgTT8NXWv8pJCLqCP3mgpHLqbyDkBz/FjP4CSnIMCbGOAbzC+4dDFrawUqPbc32rsIeFTYNtuQc87sSE7K7FErzybZSBvxyXXN8oLxS31tRYIjsm9DWWW2NrhyQKykYTsQtgsEIBvfmUlQIQlb9DP3maOBS0DXkiMzu0QxfnOjbDpMUomRHxihW44r9TLUljw2FncyNJiUWtp5bnzY= X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 07b4fb5a-f66b-4a20-25f8-08db62a0e99e X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Jun 2023 13:05:45.9844 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: sbYvD5B90rU1cWYOzJL5StUmp7WoDnXYgHwD0lkY4XuEo3Gt2r8Ph089zwI6DI7HtcKVah80IVwAuagabx/GmA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY5PR03MB5347 Parse all instances of the vga= option on the command line, in order to always enforce the last selection on the command line. Note that it's not safe to parse just the last occurrence of the vga= option, as then a command line with `vga=current vga=keep` would result in current being ignored. Adjust the command line documentation to describe the new behavior. Signed-off-by: Roger Pau Monné --- Changes since v2: - New in this version. --- Build tested only, as I don't have a system that does legacy boot and has VGA output I can check. It's mostly encapsulating the current code inside of a while loop and adding an extra else if for the "ask" option, there's a lot of indentation changes. --- docs/misc/xen-command-line.pandoc | 3 ++ xen/arch/x86/boot/cmdline.c | 85 +++++++++++++++---------------- 2 files changed, 45 insertions(+), 43 deletions(-) diff --git a/docs/misc/xen-command-line.pandoc b/docs/misc/xen-command-line.pandoc index e0b89b7d3319..8cf2f3423d47 100644 --- a/docs/misc/xen-command-line.pandoc +++ b/docs/misc/xen-command-line.pandoc @@ -2628,6 +2628,9 @@ with the specified width, height and depth. `ask` option. (N.B menu modes are displayed in hex, so `` should be a hexadecimal number) +Note that all the occurrences of the vga option in the command line are parsed, +and hence later occurrences can overwrite selections done by prior ones. + The optional `keep` parameter causes Xen to continue using the vga console even after dom0 has been started. The default behaviour is to relinquish control to dom0. diff --git a/xen/arch/x86/boot/cmdline.c b/xen/arch/x86/boot/cmdline.c index fc11c6d3c5c4..511e77e0c2b5 100644 --- a/xen/arch/x86/boot/cmdline.c +++ b/xen/arch/x86/boot/cmdline.c @@ -277,59 +277,58 @@ static u16 rows2vmode(unsigned int rows) static void vga_parse(const char *cmdline, early_boot_opts_t *ebo) { - const char *c; - unsigned int tmp, vesa_depth, vesa_height, vesa_width; - - c = find_opt(cmdline, "vga=", true); - - if ( !c ) - return; + const char *c = cmdline; - ebo->boot_vid_mode = ASK_VGA; - - if ( !strmaxcmp(c, "current", delim_chars_comma) ) - ebo->boot_vid_mode = VIDEO_CURRENT_MODE; - else if ( !strsubcmp(c, "text-80x") ) - { - c += strlen("text-80x"); - ebo->boot_vid_mode = rows2vmode(strtoui(c, delim_chars_comma, NULL)); - } - else if ( !strsubcmp(c, "gfx-") ) + while ( (c = find_opt(c, "vga=", true)) != NULL ) { - vesa_width = strtoui(c + strlen("gfx-"), "x", &c); + unsigned int tmp, vesa_depth, vesa_height, vesa_width; - if ( vesa_width > U16_MAX ) - return; + if ( !strmaxcmp(c, "current", delim_chars_comma) ) + ebo->boot_vid_mode = VIDEO_CURRENT_MODE; + else if ( !strsubcmp(c, "text-80x") ) + { + c += strlen("text-80x"); + ebo->boot_vid_mode = rows2vmode(strtoui(c, delim_chars_comma, NULL)); + } + else if ( !strsubcmp(c, "gfx-") ) + { + vesa_width = strtoui(c + strlen("gfx-"), "x", &c); - /* - * Increment c outside of strtoui() because otherwise some - * compiler may complain with following message: - * warning: operation on 'c' may be undefined. - */ - ++c; - vesa_height = strtoui(c, "x", &c); + if ( vesa_width > U16_MAX ) + return; - if ( vesa_height > U16_MAX ) - return; + /* + * Increment c outside of strtoui() because otherwise some + * compiler may complain with following message: + * warning: operation on 'c' may be undefined. + */ + ++c; + vesa_height = strtoui(c, "x", &c); - vesa_depth = strtoui(++c, delim_chars_comma, NULL); + if ( vesa_height > U16_MAX ) + return; - if ( vesa_depth > U16_MAX ) - return; + vesa_depth = strtoui(++c, delim_chars_comma, NULL); - ebo->vesa_width = vesa_width; - ebo->vesa_height = vesa_height; - ebo->vesa_depth = vesa_depth; - ebo->boot_vid_mode = VIDEO_VESA_BY_SIZE; - } - else if ( !strsubcmp(c, "mode-") ) - { - tmp = strtoui(c + strlen("mode-"), delim_chars_comma, NULL); + if ( vesa_depth > U16_MAX ) + return; - if ( tmp > U16_MAX ) - return; + ebo->vesa_width = vesa_width; + ebo->vesa_height = vesa_height; + ebo->vesa_depth = vesa_depth; + ebo->boot_vid_mode = VIDEO_VESA_BY_SIZE; + } + else if ( !strsubcmp(c, "mode-") ) + { + tmp = strtoui(c + strlen("mode-"), delim_chars_comma, NULL); - ebo->boot_vid_mode = tmp; + if ( tmp > U16_MAX ) + return; + + ebo->boot_vid_mode = tmp; + } + else if ( !strsubcmp(c, "ask") ) + ebo->boot_vid_mode = ASK_VGA; } } #endif -- 2.40.0 From xen-devel-bounces@lists.xenproject.org Thu Jun 01 13:07:24 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 13:07:24 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542490.846407 (Exim 4.92) (envelope-from ) id 1q4i1H-0000zT-B5; Thu, 01 Jun 2023 13:07:11 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542490.846407; Thu, 01 Jun 2023 13:07:11 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4i1H-0000zM-7e; Thu, 01 Jun 2023 13:07:11 +0000 Received: by outflank-mailman (input) for mailman id 542490; Thu, 01 Jun 2023 13:07:09 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4i1F-0000z4-M2; Thu, 01 Jun 2023 13:07:09 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4i1F-0001Jk-II; Thu, 01 Jun 2023 13:07:09 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4i1E-0002RA-F4; Thu, 01 Jun 2023 13:07:08 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q4i1E-00032p-Ea; Thu, 01 Jun 2023 13:07:08 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=xEwLbIqsRL8oEYpgsuO9d4aWmeXj3m5G9BOML9tTgw8=; b=Q751KtItUfa7XBC9VCD6JLPj7v 3/1MIEx/ail20ead7E+y4+PRAJCc8Z0KVgBL6Fm7xlMcOumYd63tCk8eZKsHCKUMPDBWY59jzpvOh 0/inAVNk9mVedefeJZLf9lzW38JI0t1q+OfxARQmzsTDd7hZxrLdTm7PQXKIfyRahFCw=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [ovmf test] 181076: all pass - PUSHED X-Osstest-Versions-This: ovmf=1df6658bcbc4cade29a8763808a9804e5d449046 X-Osstest-Versions-That: ovmf=c1e853769046b322690ad336fdb98966757e7414 From: osstest service owner Date: Thu, 01 Jun 2023 13:07:08 +0000 flight 181076 ovmf real [real] http://logs.test-lab.xenproject.org/osstest/logs/181076/ Perfect :-) All tests in this flight passed as required version targeted for testing: ovmf 1df6658bcbc4cade29a8763808a9804e5d449046 baseline version: ovmf c1e853769046b322690ad336fdb98966757e7414 Last test of basis 181072 2023-06-01 09:10:44 Z 0 days Testing same since 181076 2023-06-01 11:12:17 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Gerd Hoffmann Liming Gao Sunil V L jobs: build-amd64-xsm pass build-i386-xsm pass build-amd64 pass build-i386 pass build-amd64-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-i386-pvops pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Pushing revision : To xenbits.xen.org:/home/xen/git/osstest/ovmf.git c1e8537690..1df6658bcb 1df6658bcbc4cade29a8763808a9804e5d449046 -> xen-tested-master From xen-devel-bounces@lists.xenproject.org Thu Jun 01 13:11:12 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 13:11:12 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542496.846418 (Exim 4.92) (envelope-from ) id 1q4i53-0002Vo-Sk; Thu, 01 Jun 2023 13:11:05 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542496.846418; Thu, 01 Jun 2023 13:11:05 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4i53-0002Vh-Ng; Thu, 01 Jun 2023 13:11:05 +0000 Received: by outflank-mailman (input) for mailman id 542496; Thu, 01 Jun 2023 13:11:04 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4i52-0002Vb-U4 for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 13:11:04 +0000 Received: from smtp-out1.suse.de (smtp-out1.suse.de [2001:67c:2178:6::1c]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id c13fd77d-007d-11ee-8611-37d641c3527e; Thu, 01 Jun 2023 15:11:01 +0200 (CEST) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by smtp-out1.suse.de (Postfix) with ESMTPS id 71D6C2191E; Thu, 1 Jun 2023 13:11:00 +0000 (UTC) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id DEFFC13441; Thu, 1 Jun 2023 13:10:59 +0000 (UTC) Received: from dovecot-director2.suse.de ([192.168.254.65]) by imap2.suse-dmz.suse.de with ESMTPSA id EIoMNOOYeGSoIwAAMHmgww (envelope-from ); Thu, 01 Jun 2023 13:10:59 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: c13fd77d-007d-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1; t=1685625060; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=Vr62W274cXGwQ8+W+lAGpQ6yZZzLPVRhoHaedh9+CgI=; b=aOUlSr6MvAAKaXEBDIy7IxVpKxkl5FFa03HagOrYGuyQG/1+5dqQiPMwpZvSLBYxELQSCv bjtKFHk42xQAI2uXbXeorKwOG5uf3ujWXbvpQmq3YfH4lJ1YajjYFwi0fs9X2x66K/ywZv Mh8hQ6C4D3szEuDFJz6mP+UB7UNB6Pk= Message-ID: Date: Thu, 1 Jun 2023 15:10:59 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH v6 00/16] x86/mtrr: fix handling with PAT but without MTRR Content-Language: en-US To: Borislav Petkov Cc: linux-kernel@vger.kernel.org, x86@kernel.org, linux-hyperv@vger.kernel.org, linux-doc@vger.kernel.org, mikelley@microsoft.com, Thomas Gleixner , Ingo Molnar , Dave Hansen , "H. Peter Anvin" , "K. Y. Srinivasan" , Haiyang Zhang , Wei Liu , Dexuan Cui , Boris Ostrovsky , xen-devel@lists.xenproject.org, Jonathan Corbet , Andy Lutomirski , Peter Zijlstra References: <20230509201437.GFZFqprc6otRejDPUt@fat_crate.local> <20230509233641.GGZFrZCTDH7VwUMp5R@fat_crate.local> <20230510133024.GBZFuccC1FxIZNKL+8@fat_crate.local> <4c47a11c-0565-678d-3467-e01c5ec16600@suse.com> <20230511163208.GDZF0YiOfxQhSo4RDm@fat_crate.local> <0cd3899b-cf3b-61c1-14ae-60b6b49d14ab@suse.com> <20230530152825.GAZHYWGXAp8PHgN/w0@fat_crate.local> <888f860d-4307-54eb-01da-11f9adf65559@suse.com> <20230531083508.GAZHcGvB68PUAH7f+a@fat_crate.local> <20230531174857.GDZHeIib57h5lT5Vh1@fat_crate.local> From: Juergen Gross In-Reply-To: <20230531174857.GDZHeIib57h5lT5Vh1@fat_crate.local> Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="------------Me2DONSdYXHZk4ld00WCHwyU" This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --------------Me2DONSdYXHZk4ld00WCHwyU Content-Type: multipart/mixed; boundary="------------7rrFzZroE9mvl6SWtGrJbP0b"; protected-headers="v1" From: Juergen Gross To: Borislav Petkov Cc: linux-kernel@vger.kernel.org, x86@kernel.org, linux-hyperv@vger.kernel.org, linux-doc@vger.kernel.org, mikelley@microsoft.com, Thomas Gleixner , Ingo Molnar , Dave Hansen , "H. Peter Anvin" , "K. Y. Srinivasan" , Haiyang Zhang , Wei Liu , Dexuan Cui , Boris Ostrovsky , xen-devel@lists.xenproject.org, Jonathan Corbet , Andy Lutomirski , Peter Zijlstra Message-ID: Subject: Re: [PATCH v6 00/16] x86/mtrr: fix handling with PAT but without MTRR References: <20230509201437.GFZFqprc6otRejDPUt@fat_crate.local> <20230509233641.GGZFrZCTDH7VwUMp5R@fat_crate.local> <20230510133024.GBZFuccC1FxIZNKL+8@fat_crate.local> <4c47a11c-0565-678d-3467-e01c5ec16600@suse.com> <20230511163208.GDZF0YiOfxQhSo4RDm@fat_crate.local> <0cd3899b-cf3b-61c1-14ae-60b6b49d14ab@suse.com> <20230530152825.GAZHYWGXAp8PHgN/w0@fat_crate.local> <888f860d-4307-54eb-01da-11f9adf65559@suse.com> <20230531083508.GAZHcGvB68PUAH7f+a@fat_crate.local> <20230531174857.GDZHeIib57h5lT5Vh1@fat_crate.local> In-Reply-To: <20230531174857.GDZHeIib57h5lT5Vh1@fat_crate.local> --------------7rrFzZroE9mvl6SWtGrJbP0b Content-Type: multipart/mixed; boundary="------------589veGrPJrwdjA0vG5RF5qDL" --------------589veGrPJrwdjA0vG5RF5qDL Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: base64 T24gMzEuMDUuMjMgMTk6NDgsIEJvcmlzbGF2IFBldGtvdiB3cm90ZToNCj4gT24gV2VkLCBN YXkgMzEsIDIwMjMgYXQgMDQ6MjA6MDhQTSArMDIwMCwgSnVlcmdlbiBHcm9zcyB3cm90ZToN Cj4+IE9uZSBvdGhlciBub3RlOiB3aHkgZG9lcyBtdHJyX2NsZWFudXAoKSB0aGluayB0aGF0 IHVzaW5nIDggaW5zdGVhZCBvZiA2DQo+PiB2YXJpYWJsZSBNVFJScyB3b3VsZCBiZSBhbiAi b3B0aW1hbCBzZXR0aW5nIj8NCj4gDQo+IE1heWJlIHRoZSBtb3JlIGV4dGVuc2l2ZSBkZWJ1 ZyBvdXRwdXQgYmVsb3cgd291bGQgaGVscCBhbnN3ZXIgdGhhdC4uLg0KPiANCj4+IElNTyBp dCBzaG91bGQgcmVwbGFjZSB0aGUgb3JpZ2luYWwgc2V0dXAgb25seSBpbiBjYXNlIGl0IGlz IHVzaW5nIF9sZXNzXw0KPj4gTVRSUnMgdGhhbiBiZWZvcmUuDQo+IA0KPiBSaWdodC4NCg0K VGhlIGF0dGFjaGVkIHBhdGNoIHdpbGwgZG8gdGhhdC4NCg0KDQpKdWVyZ2VuDQoNCg== --------------589veGrPJrwdjA0vG5RF5qDL Content-Type: text/x-patch; charset=UTF-8; name="v7-0001-x86-mtrr-Let-mtrr_cleanup-not-increase-number-of-.patch" Content-Disposition: attachment; filename*0="v7-0001-x86-mtrr-Let-mtrr_cleanup-not-increase-number-of-.pa"; filename*1="tch" Content-Transfer-Encoding: base64 RnJvbSA3OTg5ZWY5ODIyMTE1YTcwOGZjMmJhM2Y3NzQwODg4YTM1MGNiNDBmIE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBKdWVyZ2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+ CkRhdGU6IFRodSwgMSBKdW4gMjAyMyAxNDo0MDo1OCArMDIwMApTdWJqZWN0OiBbUEFUQ0gg djddIHg4Ni9tdHJyOiBMZXQgbXRycl9jbGVhbnVwKCkgbm90IGluY3JlYXNlIG51bWJlciBv ZiB1c2VkCiBNVFJScwoKVG9kYXkgbXRycl9jbGVhbnVwKCkgd2lsbCBhbHdheXMgdXNlIHRo ZSBiZXN0IGZvdW5kIGFsdGVybmF0aXZlIE1UUlIKc2V0dGluZywgZXZlbiBpZiB0aGlzIHNl dHRpbmcgaXMgdXNpbmcgbW9yZSB2YXJpYWJsZSBNVFJScyB0aGFuIHRoZQpCSU9TIHByb3Zp ZGVkIHNldHVwLgoKQWRkIGEgY2hlY2sgdGhhdCBvbmx5IHNldHRpbmdzIHdpdGggbGVzcyB2 YXJpYWJsZSBNVFJScyBhcmUgdXNlZC4KClNpZ25lZC1vZmYtYnk6IEp1ZXJnZW4gR3Jvc3Mg PGpncm9zc0BzdXNlLmNvbT4KLS0tClY3OgotIG5ldyBwYXRjaAotLS0KIGFyY2gveDg2L2tl cm5lbC9jcHUvbXRyci9jbGVhbnVwLmMgfCAxNiArKysrKysrKysrKysrLS0tCiAxIGZpbGUg Y2hhbmdlZCwgMTMgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQg YS9hcmNoL3g4Ni9rZXJuZWwvY3B1L210cnIvY2xlYW51cC5jIGIvYXJjaC94ODYva2VybmVs L2NwdS9tdHJyL2NsZWFudXAuYwppbmRleCBhN2NiNWQzMmQwM2QuLmE1ZDMzMTcyMjA5MiAx MDA2NDQKLS0tIGEvYXJjaC94ODYva2VybmVsL2NwdS9tdHJyL2NsZWFudXAuYworKysgYi9h cmNoL3g4Ni9rZXJuZWwvY3B1L210cnIvY2xlYW51cC5jCkBAIC01NjcsNyArNTY3LDcgQEAg c3RhdGljIGludCBfX2luaXQgbXRycl9uZWVkX2NsZWFudXAodm9pZCkKIAkgICAgbnVtX3Zh cl9yYW5nZXMgLSBudW1bTVRSUl9OVU1fVFlQRVNdKQogCQlyZXR1cm4gMDsKIAotCXJldHVy biAxOworCXJldHVybiBudW1fdmFyX3JhbmdlcyAtIG51bVtNVFJSX05VTV9UWVBFU107CiB9 CiAKIHN0YXRpYyB1bnNpZ25lZCBsb25nIF9faW5pdGRhdGEgcmFuZ2Vfc3VtczsKQEAgLTY3 Myw2ICs2NzMsNyBAQCBpbnQgX19pbml0IG10cnJfY2xlYW51cCh2b2lkKQogCXU2NCBjaHVu a19zaXplLCBncmFuX3NpemU7CiAJbXRycl90eXBlIHR5cGU7CiAJaW50IGluZGV4X2dvb2Q7 CisJaW50IG51bV91c2VkOwogCWludCBpOwogCiAJaWYgKCFjcHVfZmVhdHVyZV9lbmFibGVk KFg4Nl9GRUFUVVJFX01UUlIpIHx8IGVuYWJsZV9tdHJyX2NsZWFudXAgPCAxKQpAQCAtNjkz LDcgKzY5NCw4IEBAIGludCBfX2luaXQgbXRycl9jbGVhbnVwKHZvaWQpCiAJfQogCiAJLyog Q2hlY2sgaWYgd2UgbmVlZCBoYW5kbGUgaXQgYW5kIGNhbiBoYW5kbGUgaXQ6ICovCi0JaWYg KCFtdHJyX25lZWRfY2xlYW51cCgpKQorCW51bV91c2VkID0gbXRycl9uZWVkX2NsZWFudXAo KTsKKwlpZiAoIW51bV91c2VkKQogCQlyZXR1cm4gMDsKIAogCS8qIFByaW50IG9yaWdpbmFs IHZhciBNVFJScyBhdCBmaXJzdCwgZm9yIGRlYnVnZ2luZzogKi8KQEAgLTcyOCw2ICs3MzAs MTAgQEAgaW50IF9faW5pdCBtdHJyX2NsZWFudXAodm9pZCkKIAkJbXRycl9wcmludF9vdXRf b25lX3Jlc3VsdChpKTsKIAogCQlpZiAoIXJlc3VsdFtpXS5iYWQpIHsKKwkJCWlmIChyZXN1 bHRbaV0ubnVtX3JlZyA+PSBudW1fdXNlZCkgeworCQkJCURwcmludGsoIkJJT1MgcHJvdmlk ZWQgTVRSUiBzZXR0aW5nIGlzIGJldHRlciB0aGFuIGZvdW5kIG9uZVxuIik7CisJCQkJcmV0 dXJuIDA7CisJCQl9CiAJCQlzZXRfdmFyX210cnJfYWxsKCk7CiAJCQlEcHJpbnRrKCJOZXcg dmFyaWFibGUgTVRSUnNcbiIpOwogCQkJcHJpbnRfb3V0X210cnJfcmFuZ2Vfc3RhdGUoKTsK QEAgLTc2Miw4ICs3NjgsMTIgQEAgaW50IF9faW5pdCBtdHJyX2NsZWFudXAodm9pZCkKIAlp bmRleF9nb29kID0gbXRycl9zZWFyY2hfb3B0aW1hbF9pbmRleCgpOwogCiAJaWYgKGluZGV4 X2dvb2QgIT0gLTEpIHsKLQkJcHJfaW5mbygiRm91bmQgb3B0aW1hbCBzZXR0aW5nIGZvciBt dHJyIGNsZWFuIHVwXG4iKTsKIAkJaSA9IGluZGV4X2dvb2Q7CisJCWlmIChyZXN1bHRbaV0u bnVtX3JlZyA+PSBudW1fdXNlZCkgeworCQkJRHByaW50aygiQklPUyBwcm92aWRlZCBNVFJS IHNldHRpbmcgaXMgYmV0dGVyIHRoYW4gZm91bmQgb25lXG4iKTsKKwkJCXJldHVybiAwOwor CQl9CisJCXByX2luZm8oIkZvdW5kIG9wdGltYWwgc2V0dGluZyBmb3IgbXRyciBjbGVhbiB1 cFxuIik7CiAJCW10cnJfcHJpbnRfb3V0X29uZV9yZXN1bHQoaSk7CiAKIAkJLyogQ29udmVy dCByYW5nZXMgdG8gdmFyIHJhbmdlcyBzdGF0ZTogKi8KLS0gCjIuMzUuMwoK --------------589veGrPJrwdjA0vG5RF5qDL Content-Type: application/pgp-keys; name="OpenPGP_0xB0DE9DD628BF132F.asc" Content-Disposition: attachment; filename="OpenPGP_0xB0DE9DD628BF132F.asc" Content-Description: OpenPGP public key Content-Transfer-Encoding: quoted-printable -----BEGIN PGP PUBLIC KEY BLOCK----- xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjri oyspZKOBycWxw3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2 kaV2KL9650I1SJvedYm8Of8Zd621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i 1TXkH09XSSI8mEQ/ouNcMvIJNwQpd369y9bfIhWUiVXEK7MlRgUG6MvIj6Y3Am/B BLUVbDa4+gmzDC9ezlZkTZG2t14zWPvxXP3FAp2pkW0xqG7/377qptDmrk42GlSK N4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEBAAHNHEp1ZXJnZW4gR3Jvc3Mg PGpnQHBmdXBmLm5ldD7CwHkEEwECACMFAlOMcBYCGwMHCwkIBwMCAQYVCAIJCgsE FgIDAQIeAQIXgAAKCRCw3p3WKL8TL0KdB/93FcIZ3GCNwFU0u3EjNbNjmXBKDY4F UGNQH2lvWAUy+dnyThpwdtF/jQ6j9RwE8VP0+NXcYpGJDWlNb9/JmYqLiX2Q3Tye vpB0CA3dbBQp0OW0fgCetToGIQrg0MbD1C/sEOv8Mr4NAfbauXjZlvTj30H2jO0u +6WGM6nHwbh2l5O8ZiHkH32iaSTfN7Eu5RnNVUJbvoPHZ8SlM4KWm8rG+lIkGurq qu5gu8q8ZMKdsdGC4bBxdQKDKHEFExLJK/nRPFmAuGlId1E3fe10v5QL+qHI3EIP tyfE7i9Hz6rVwi7lWKgh7pe0ZvatAudZ+JNIlBKptb64FaiIOAWDCx1SzR9KdWVy Z2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+wsB5BBMBAgAjBQJTjHCvAhsDBwsJ CAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey/HmQf/RtI7kv5A2PS4 RF7HoZhPVPogNVbC4YA6lW7DrWf0teC0RR3MzXfy6pJ+7KLgkqMlrAbN/8Dvjoz7 8X+5vhH/rDLa9BuZQlhFmvcGtCF8eR0T1v0nC/nuAFVGy+67q2DH8As3KPu0344T BDpAvr2uYM4tSqxK4DURx5INz4ZZ0WNFHcqsfvlGJALDeE0LhITTd9jLzdDad1pQ SToCnLl6SBJZjDOX9QQcyUigZFtCXFst4dlsvddrxyqT1f17+2cFSdu7+ynLmXBK 7abQ3rwJY8SbRO2iRulogc5vr/RLMMlscDAiDkaFQWLoqHHOdfO9rURssHNN8WkM nQfvUewRz80hSnVlcmdlbiBHcm9zcyA8amdyb3NzQG5vdmVsbC5jb20+wsB5BBMB AgAjBQJTjHDXAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/ Ey8PUQf/ehmgCI9jB9hlgexLvgOtf7PJnFOXgMLdBQgBlVPO3/D9R8LtF9DBAFPN hlrsfIG/SqICoRCqUcJ96Pn3P7UUinFG/I0ECGF4EvTE1jnDkfJZr6jrbjgyoZHi w/4BNwSTL9rWASyLgqlA8u1mf+c2yUwcGhgkRAd1gOwungxcwzwqgljf0N51N5Jf VRHRtyfwq/ge+YEkDGcTU6Y0sPOuj4Dyfm8fJzdfHNQsWq3PnczLVELStJNdapwP OoE+lotufe3AM2vAEYJ9rTz3Cki4JFUsgLkHFqGZarrPGi1eyQcXeluldO3m91NK /1xMI3/+8jbO0tsn1tqSEUGIJi7ox80eSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1 c2UuZGU+wsB5BBMBAgAjBQJTjHDrAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgEC F4AACgkQsN6d1ii/Ey+LhQf9GL45eU5vOowA2u5N3g3OZUEBmDHVVbqMtzwlmNC4 k9Kx39r5s2vcFl4tXqW7g9/ViXYuiDXb0RfUpZiIUW89siKrkzmQ5dM7wRqzgJpJ wK8Bn2MIxAKArekWpiCKvBOB/Cc+3EXE78XdlxLyOi/NrmSGRIov0karw2RzMNOu 5D+jLRZQd1Sv27AR+IP3I8U4aqnhLpwhK7MEy9oCILlgZ1QZe49kpcumcZKORmzB TNh30FVKK1EvmV2xAKDoaEOgQB4iFQLhJCdP1I5aSgM5IVFdn7v5YgEYuJYx37Io N1EblHI//x/e2AaIHpzK5h88NEawQsaNRpNSrcfbFmAg987ATQRTjHAWAQgAyzH6 AOODMBjgfWE9VeCgsrwH3exNAU32gLq2xvjpWnHIs98ndPUDpnoxWQugJ6MpMncr 0xSwFmHEgnSEjK/PAjppgmyc57BwKII3sV4on+gDVFJR6Y8ZRwgnBC5mVM6JjQ5x Dk8WRXljExRfUX9pNhdE5eBOZJrDRoLUmmjDtKzWaDhIg/+1Hzz93X4fCQkNVbVF LELU9bMaLPBG/x5q4iYZ2k2ex6d47YE1ZFdMm6YBYMOljGkZKwYde5ldM9mo45mm we0icXKLkpEdIXKTZeKDO+Hdv1aqFuAcccTg9RXDQjmwhC3yEmrmcfl0+rPghO0I v3OOImwTEe4co3c1mwARAQABwsBfBBgBAgAJBQJTjHAWAhsMAAoJELDendYovxMv Q/gH/1ha96vm4P/L+bQpJwrZ/dneZcmEwTbe8YFsw2V/Buv6Z4Mysln3nQK5ZadD 534CF7TDVft7fC4tU4PONxF5D+/tvgkPfDAfF77zy2AH1vJzQ1fOU8lYFpZXTXIH b+559UqvIB8AdgR3SAJGHHt4RKA0F7f5ipYBBrC6cyXJyyoprT10EMvU8VGiwXvT yJz3fjoYsdFzpWPlJEBRMedCot60g5dmbdrZ5DWClAr0yau47zpWj3enf1tLWaqc suylWsviuGjKGw7KHQd3bxALOknAp4dN3QwBYCKuZ7AddY9yjynVaD5X7nF9nO5B jR/i1DG86lem3iBDXzXsZDn8R38=3D =3D2wuH -----END PGP PUBLIC KEY BLOCK----- --------------589veGrPJrwdjA0vG5RF5qDL-- --------------7rrFzZroE9mvl6SWtGrJbP0b-- --------------Me2DONSdYXHZk4ld00WCHwyU Content-Type: application/pgp-signature; name="OpenPGP_signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="OpenPGP_signature" -----BEGIN PGP SIGNATURE----- wsB5BAABCAAjFiEEhRJncuj2BJSl0Jf3sN6d1ii/Ey8FAmR4mOMFAwAAAAAACgkQsN6d1ii/Ey++ cgf+LkzsFtcV7YcNisTcySgsQZOL5dMBOUhTeLzx9eo3IUoPy9y1vlhTT1KZS5zJYU+hPZE17SS2 e+zpOx/qJ0ocnJjqdWes766KrXUjsrIobPSHMWEoEH3uR6XIh0VZuQpzzFaH7bcNJ4SIJUoXt1Oc U6jnPx/dAbmdHCptUsS6PMaodx+faq6CvJn8Ql+d3XTDsWQNB0Y7yOTDvBlgzvaTcy2PhaGxiCBj 7ygFQDLTo2CmCr6K88i2NfblmC2wo/oVQlebw6cq5JmiZqziZbjs1+nNw67zsZSF4FGq1/3Fuhe8 PpSdDx0B87h/iNB8BGKser1DHNtctNwA/QA2y6L0uQ== =JaUs -----END PGP SIGNATURE----- --------------Me2DONSdYXHZk4ld00WCHwyU-- From xen-devel-bounces@lists.xenproject.org Thu Jun 01 13:15:19 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 13:15:19 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542500.846427 (Exim 4.92) (envelope-from ) id 1q4i90-000374-BC; Thu, 01 Jun 2023 13:15:10 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542500.846427; Thu, 01 Jun 2023 13:15:10 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4i90-00036x-7a; Thu, 01 Jun 2023 13:15:10 +0000 Received: by outflank-mailman (input) for mailman id 542500; Thu, 01 Jun 2023 13:15:08 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4i8y-00036r-EY for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 13:15:08 +0000 Received: from esa5.hc3370-68.iphmx.com (esa5.hc3370-68.iphmx.com [216.71.155.168]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 51ec8df0-007e-11ee-8611-37d641c3527e; Thu, 01 Jun 2023 15:15:05 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 51ec8df0-007e-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1685625304; h=date:from:to:cc:subject:message-id:references: mime-version:in-reply-to; bh=LtaZnpVwq0U+IbF3XhGM6LM9pm6zZpA7PnmByZxaeSU=; b=VOs3IfX+LXmScYspJXyz09HwUzE9GEB0w4dbl7If+WO7l11zu5kZ75Fh 1qnrI5C1Cu66zvl4WTInpAjou0fCEM3uegukfV5dJAMGkTVfXHIWh51TI PSs0/y1GWLyC4MHFV7Rlr4EWGr8IKTNRqp41C0f2pcTq6kjLXZSTJNGF+ I=; Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none X-SBRS: 4.0 X-MesageID: 109978862 X-Ironport-Server: esa5.hc3370-68.iphmx.com X-Remote-IP: 162.221.156.123 X-Policy: $RELAYED IronPort-Data: A9a23:0xUl0q12zNpIeE6P2/bD5TNxkn2cJEfYwER7XKvMYLTBsI5bpzVUm mEZD2/QOa6DY2agKYwlPt+/9kIF68LQnYJgHQZkpC1hF35El5HIVI+TRqvS04F+DeWYFR46s J9OAjXkBJppJpMJjk71atANlVEliefTAOK6ULWeUsxIbVcMYD87jh5+kPIOjIdtgNyoayuAo tq3qMDEULOf82cc3lk8teTb8HuDgNyo4GlD5gJmPKgQ1LPjvyJ94Kw3dPnZw0TQGuG4LsbiL 87fwbew+H/u/htFIrtJRZ6iLyXm6paLVeS/oiI+t5qK23CulQRrukoPD9IOaF8/ttm8t4sZJ OOhF3CHYVxB0qXkwIzxWvTDes10FfUuFLTveRBTvSEPpqFvnrSFL/hGVSkL0YMkFulfUXpE9 /kUKxkxRRWEt9q48O6fafBHv5F2RCXrFNt3VnBIyDjYCbAtQIzZQrWM7thdtNsyrpkQR7CEP ZNfMGcxKk2aOHWjOX9OYH46tO6umnn4dSwesF+PrLA7y2PS0BZwwP7mN9+9ltmiHJ0EzxnI9 jycl4j/Kj44JPK86mSsyGOprevLjTr1aIEoFZTto5aGh3XMnzdOWXX6T2CTo/O0l0q/UNJ3M FEP92wlqq1a3FOvZsnwWVu/unHslhwBX9tdFcUq5QfLzbDbiy6CHXQNRDNFbN0gtec1SCYs2 1vPmMnmbRR/vbvQRX+D+7O8qTKpJTNTPWIEfTUDTwYO/5/kuo5bphDAVNF4C4auk8b4Xzr3x liipTAznbwJgeYX1q+w+hbMhDfEm3TSZldrvEONBDvjt14nItf/PORE9GQ3894QN4ybS1WCl UQvns+u1O4+UbWujQe0FbBl8K6S296JNzjVgFhKFpYn9iiw93PLQb288A2SN28ybJ9aJGaBj Fv7/FoIucQNZCfCgbpfOdrZNig88UT3+T0JvNjwZ8EGXJV+fRTvEMpGNR/JhDCFfKTBfMgC1 XannSSEVCdy5UdPlmDeqwIhPVgDmEgDKZv7H8yT8vhe+eP2iISpYbkEKkCSSesy8bmJpg7Ym /4GaZvXlkgAALCmOnSHmWL2EbzsBSJhbXwRg5UGHtNv3yI8QD1xYxMv6e5Jl3NZc1R9yb6To yDVtr5ww1vjn3zXQThmmVg6AI4Dqa1X9CphVQR1ZAbA5pTWSdr3hEvpX8dtLOZPGS0K5aIcc sTpjO3bWawRGmSWpm1BBXQ/xaQ7HCmWacu1F3LNSFACk1RIHWQlJveMktPTyRQz IronPort-HdrOrdr: A9a23:w8QuqqhFCp7aOyftLgOEFn+LFnBQXtoji2hC6mlwRA09TySZ// rBoB0+726RtN9xYgBEpTnuAsS9qB/nmaKdpLNhWotKPzOW2ldATrsD0WKK+VSJcEfDH6xmpM RdmsBFebvN5DNB7PoSjjPWL+od X-Talos-CUID: 9a23:pmKi+G2q8GAwSAlx5hCNxbxfStsvcHjRz17sCEq/OV5neOGxaka7wfYx X-Talos-MUID: 9a23:IQG+6QSaPbr5t444RXTDpiFMF+Q2yp6/DWsJlYUftfmHDy1ZbmI= X-IronPort-AV: E=Sophos;i="6.00,210,1681185600"; d="scan'208";a="109978862" Date: Thu, 1 Jun 2023 14:14:49 +0100 From: Anthony PERARD To: Jan Beulich CC: Wei Liu , Andrew Cooper , "George Dunlap" , Julien Grall , "Stefano Stabellini" , , Juergen Gross Subject: Re: [PATCH] MAINTAINERS: remove xenstore related files from LIBS Message-ID: References: <20230522160008.27779-1-jgross@suse.com> MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Disposition: inline In-Reply-To: On Thu, Jun 01, 2023 at 12:57:56PM +0200, Jan Beulich wrote: > On 22.05.2023 18:00, Juergen Gross wrote: > > There is no need to have the Xenstore headers listed in the LIBS > > section now that they have been added to the XENSTORE section. > > > > Suggested-by: Jan Beulich > > Signed-off-by: Juergen Gross > > Anthony, Wei, > > since this is taking away things from an area you're the maintainers for, > I think it would best be acked by you. Acked-by: Anthony PERARD Thanks, -- Anthony PERARD From xen-devel-bounces@lists.xenproject.org Thu Jun 01 13:20:36 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 13:20:36 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542506.846437 (Exim 4.92) (envelope-from ) id 1q4iE7-0004Yp-Vk; Thu, 01 Jun 2023 13:20:27 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542506.846437; Thu, 01 Jun 2023 13:20:27 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4iE7-0004Yi-S4; Thu, 01 Jun 2023 13:20:27 +0000 Received: by outflank-mailman (input) for mailman id 542506; Thu, 01 Jun 2023 13:20:26 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4iE6-0004YX-Kw; Thu, 01 Jun 2023 13:20:26 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4iE6-0001i8-C9; Thu, 01 Jun 2023 13:20:26 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4iE6-0002vP-2K; Thu, 01 Jun 2023 13:20:26 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q4iE6-0008Qs-1W; Thu, 01 Jun 2023 13:20:26 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=xdcfwxMwSHWG6euaqJGwfTovKDpr7y7gjIfVoaUgGI0=; b=hOYhGBjh7KOkhkhRao3lry3Knj A/0o+JSvoxH2HZWRBI4iq/juAaewRJYFZNPtfPD0NB4eQ3ITPitMqPTOy+BjBzc1ff6MltDZoyST4 82b+EDf6J0sh/3T9BKqvydfGTJctxljd10P6S2u8pXIJdMmkpZj7MxHQiIPcCjoxF9hk=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [linux-linus test] 181063: regressions - FAIL X-Osstest-Failures: linux-linus:test-armhf-armhf-xl-credit1:xen-boot:fail:regression linux-linus:test-amd64-amd64-libvirt-qcow2:guest-start/debian.repeat:fail:heisenbug linux-linus:test-armhf-armhf-examine:reboot:fail:nonblocking linux-linus:test-armhf-armhf-xl-arndale:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking linux-linus:test-armhf-armhf-xl-credit2:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking linux-linus:test-armhf-armhf-xl-multivcpu:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-raw:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-qcow2:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-vhd:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-rtds:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-qcow2:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-raw:migrate-support-check:fail:nonblocking X-Osstest-Versions-This: linux=929ed21dfdb6ee94391db51c9eedb63314ef6847 X-Osstest-Versions-That: linux=6c538e1adbfc696ac4747fb10d63e704344f763d From: osstest service owner Date: Thu, 01 Jun 2023 13:20:26 +0000 flight 181063 linux-linus real [real] flight 181077 linux-linus real-retest [real] http://logs.test-lab.xenproject.org/osstest/logs/181063/ http://logs.test-lab.xenproject.org/osstest/logs/181077/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: test-armhf-armhf-xl-credit1 8 xen-boot fail REGR. vs. 180278 Tests which are failing intermittently (not blocking): test-amd64-amd64-libvirt-qcow2 19 guest-start/debian.repeat fail pass in 181077-retest Tests which did not succeed, but are not blocking: test-armhf-armhf-examine 8 reboot fail like 180278 test-armhf-armhf-xl-arndale 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 180278 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 180278 test-armhf-armhf-xl-credit2 8 xen-boot fail like 180278 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 180278 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 180278 test-armhf-armhf-xl-multivcpu 8 xen-boot fail like 180278 test-armhf-armhf-libvirt-raw 8 xen-boot fail like 180278 test-armhf-armhf-libvirt 8 xen-boot fail like 180278 test-armhf-armhf-libvirt-qcow2 8 xen-boot fail like 180278 test-armhf-armhf-xl 8 xen-boot fail like 180278 test-armhf-armhf-xl-vhd 8 xen-boot fail like 180278 test-armhf-armhf-xl-rtds 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 180278 test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qcow2 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass test-amd64-amd64-libvirt-raw 14 migrate-support-check fail never pass version targeted for testing: linux 929ed21dfdb6ee94391db51c9eedb63314ef6847 baseline version: linux 6c538e1adbfc696ac4747fb10d63e704344f763d Last test of basis 180278 2023-04-16 19:41:46 Z 45 days Failing since 180281 2023-04-17 06:24:36 Z 45 days 85 attempts Testing same since 181063 2023-06-01 00:42:42 Z 0 days 1 attempts ------------------------------------------------------------ 2563 people touched revisions under test, not listing them all jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl fail test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-freebsd11-amd64 pass test-amd64-amd64-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale fail test-amd64-amd64-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 fail test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 fail test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine fail test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt fail test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu fail test-amd64-amd64-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-amd64-pygrub pass test-amd64-amd64-libvirt-qcow2 fail test-armhf-armhf-libvirt-qcow2 fail test-amd64-amd64-libvirt-raw pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw fail test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds fail test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-amd64-xl-vhd pass test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd fail ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 324490 lines long.) From xen-devel-bounces@lists.xenproject.org Thu Jun 01 13:20:37 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 13:20:37 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542504.846446 (Exim 4.92) (envelope-from ) id 1q4iE9-0004nx-9v; Thu, 01 Jun 2023 13:20:29 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542504.846446; Thu, 01 Jun 2023 13:20:29 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4iE9-0004nq-7C; Thu, 01 Jun 2023 13:20:29 +0000 Received: by outflank-mailman (input) for mailman id 542504; Thu, 01 Jun 2023 13:19:41 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4iDN-0003hU-Mz for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 13:19:41 +0000 Received: from mx0b-001b2d01.pphosted.com (mx0b-001b2d01.pphosted.com [148.163.158.5]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id f5f60853-007e-11ee-b231-6b7b168915f2; Thu, 01 Jun 2023 15:19:39 +0200 (CEST) Received: from pps.filterd (m0353723.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 351DDSRk018568; Thu, 1 Jun 2023 13:19:10 GMT Received: from pps.reinject (localhost [127.0.0.1]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 3qxv1b0a39-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Thu, 01 Jun 2023 13:19:09 +0000 Received: from m0353723.ppops.net (m0353723.ppops.net [127.0.0.1]) by pps.reinject (8.17.1.5/8.17.1.5) with ESMTP id 351DFUru001084; Thu, 1 Jun 2023 13:19:09 GMT Received: from ppma05fra.de.ibm.com (6c.4a.5195.ip4.static.sl-reverse.com [149.81.74.108]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 3qxv1b0a25-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Thu, 01 Jun 2023 13:19:08 +0000 Received: from pps.filterd (ppma05fra.de.ibm.com [127.0.0.1]) by ppma05fra.de.ibm.com (8.17.1.19/8.17.1.19) with ESMTP id 351Ac6ca009714; Thu, 1 Jun 2023 13:19:07 GMT Received: from smtprelay03.fra02v.mail.ibm.com ([9.218.2.224]) by ppma05fra.de.ibm.com (PPS) with ESMTPS id 3qu9g5a49c-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Thu, 01 Jun 2023 13:19:06 +0000 Received: from smtpav02.fra02v.mail.ibm.com (smtpav02.fra02v.mail.ibm.com [10.20.54.101]) by smtprelay03.fra02v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 351DJ3fS23134818 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Thu, 1 Jun 2023 13:19:03 GMT Received: from smtpav02.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 330772004F; Thu, 1 Jun 2023 13:19:03 +0000 (GMT) Received: from smtpav02.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 7D8E420040; Thu, 1 Jun 2023 13:19:02 +0000 (GMT) Received: from thinkpad-T15 (unknown [9.152.212.238]) by smtpav02.fra02v.mail.ibm.com (Postfix) with ESMTP; Thu, 1 Jun 2023 13:19:02 +0000 (GMT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: f5f60853-007e-11ee-b231-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ibm.com; h=date : from : to : cc : subject : message-id : in-reply-to : references : content-type : content-transfer-encoding : mime-version; s=pp1; bh=tTBWxMHAGeJlpPAzqjw4yCDaupaYk6+WOuZ0r7RHXlQ=; b=S/K5bR2wzWD8jF0s2LtK3vF/J1ec5Pw9lqbPdCL6ZXZARzxk77m6XthOAVrzcENBYS/e ov9SEtmnnKsZTXa99Jk5hlMimhCPtmwo+YCJttdvMRkZI8Kj3tec3MJCAkANML7vJgEN mm82HHoVVpteTT1109f2h3OEi5Dtya1+qWK/izBLKcrhp4adRtqmgRrMH7o6BtITpGsV XQajjlwcskrHiNYJ0m2IzKlfajqLyEOsVlAvnpMojNTW61NI6Y/l6FXM9CcrwKrRoiRU 5yYyiViugHG/GJk6Dj84G7GFPGbzxZudOaESQkF8/B03VEx03rqx3lIPkJn/GXcV7VmA dQ== Date: Thu, 1 Jun 2023 15:19:00 +0200 From: Gerald Schaefer To: "Vishal Moola (Oracle)" Cc: Andrew Morton , Matthew Wilcox , linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, David Hildenbrand , Claudio Imbrenda , Alexander Gordeev , Vasily Gorbik , Heiko Carstens , Hugh Dickins , Christian Borntraeger Subject: Re: [PATCH v3 03/34] s390: Use pt_frag_refcount for pagetables Message-ID: <20230601151900.6f184e8c@thinkpad-T15> In-Reply-To: <20230531213032.25338-4-vishal.moola@gmail.com> References: <20230531213032.25338-1-vishal.moola@gmail.com> <20230531213032.25338-4-vishal.moola@gmail.com> X-Mailer: Claws Mail 4.1.1 (GTK 3.24.37; x86_64-redhat-linux-gnu) Content-Type: text/plain; charset=US-ASCII X-TM-AS-GCONF: 00 X-Proofpoint-ORIG-GUID: NZnx_8FojkhNAEEWitWpik8jaNZSNqYi X-Proofpoint-GUID: URInLnYnsG8BZV2VGVY1OnfgESTv3EvD Content-Transfer-Encoding: 7bit X-Proofpoint-UnRewURL: 0 URL was un-rewritten MIME-Version: 1.0 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.254,Aquarius:18.0.957,Hydra:6.0.573,FMLib:17.11.176.26 definitions=2023-06-01_08,2023-05-31_03,2023-05-22_02 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 clxscore=1011 spamscore=0 adultscore=0 priorityscore=1501 lowpriorityscore=0 suspectscore=0 impostorscore=0 bulkscore=0 mlxscore=0 phishscore=0 mlxlogscore=692 malwarescore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2304280000 definitions=main-2306010115 On Wed, 31 May 2023 14:30:01 -0700 "Vishal Moola (Oracle)" wrote: > s390 currently uses _refcount to identify fragmented page tables. > The page table struct already has a member pt_frag_refcount used by > powerpc, so have s390 use that instead of the _refcount field as well. > This improves the safety for _refcount and the page table tracking. > > This also allows us to simplify the tracking since we can once again use > the lower byte of pt_frag_refcount instead of the upper byte of _refcount. This would conflict with s390 impact of pte_free_defer() work from Hugh Dickins https://lore.kernel.org/lkml/35e983f5-7ed3-b310-d949-9ae8b130cdab@google.com/ https://lore.kernel.org/lkml/6dd63b39-e71f-2e8b-7e0-83e02f3bcb39@google.com/ There he uses pt_frag_refcount, or rather pt_mm in the same union, to save the mm_struct for deferred pte_free(). I still need to look closer into both of your patch series, but so far it seems that you have no hard functional requirement to switch from _refcount to pt_frag_refcount here, for s390. If this is correct, and you do not e.g. need this to make some other use of _refcount, I would suggest to drop this patch. From xen-devel-bounces@lists.xenproject.org Thu Jun 01 13:22:51 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 13:22:51 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542516.846456 (Exim 4.92) (envelope-from ) id 1q4iGG-0005hz-M1; Thu, 01 Jun 2023 13:22:40 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542516.846456; Thu, 01 Jun 2023 13:22:40 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4iGG-0005hs-J6; Thu, 01 Jun 2023 13:22:40 +0000 Received: by outflank-mailman (input) for mailman id 542516; Thu, 01 Jun 2023 13:22:38 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4iGE-0005hk-QO for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 13:22:38 +0000 Received: from mail.skyhub.de (mail.skyhub.de [5.9.137.197]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 609f5dae-007f-11ee-b231-6b7b168915f2; Thu, 01 Jun 2023 15:22:37 +0200 (CEST) Received: from zn.tnic (pd9530d32.dip0.t-ipconnect.de [217.83.13.50]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.skyhub.de (SuperMail on ZX Spectrum 128k) with ESMTPSA id 413151EC0666; Thu, 1 Jun 2023 15:22:37 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 609f5dae-007f-11ee-b231-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=alien8.de; s=dkim; t=1685625757; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:in-reply-to:in-reply-to: references:references; bh=r6aKcCYiZfeNSg7AYXaV6yxEnhgV2s078AKO0nNSYc0=; b=mNZJ8IV9dhL1ItC3UqzPsUojX/DtL03jmAR+HdLBczetXLr3kxBzSBsX8HGc/BFPdEinZq cXx2PAj2Vwbz8rz6XrkqbeQB6Hu2uRi02ZerCY4oShZ3GvuUCZBJm1Nrc78Jw6eS3MwCc1 SoV/Z3q9GRz1umr/jaSjzwigA8IAi9Q= Date: Thu, 1 Jun 2023 15:22:33 +0200 From: Borislav Petkov To: Juergen Gross Cc: linux-kernel@vger.kernel.org, x86@kernel.org, linux-hyperv@vger.kernel.org, linux-doc@vger.kernel.org, mikelley@microsoft.com, Thomas Gleixner , Ingo Molnar , Dave Hansen , "H. Peter Anvin" , "K. Y. Srinivasan" , Haiyang Zhang , Wei Liu , Dexuan Cui , Boris Ostrovsky , xen-devel@lists.xenproject.org, Jonathan Corbet , Andy Lutomirski , Peter Zijlstra Subject: Re: [PATCH v6 00/16] x86/mtrr: fix handling with PAT but without MTRR Message-ID: <20230601132233.GCZHibmemkxYxvTjSu@fat_crate.local> References: <20230510133024.GBZFuccC1FxIZNKL+8@fat_crate.local> <4c47a11c-0565-678d-3467-e01c5ec16600@suse.com> <20230511163208.GDZF0YiOfxQhSo4RDm@fat_crate.local> <0cd3899b-cf3b-61c1-14ae-60b6b49d14ab@suse.com> <20230530152825.GAZHYWGXAp8PHgN/w0@fat_crate.local> <888f860d-4307-54eb-01da-11f9adf65559@suse.com> <20230531083508.GAZHcGvB68PUAH7f+a@fat_crate.local> <20230531174857.GDZHeIib57h5lT5Vh1@fat_crate.local> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline In-Reply-To: On Thu, Jun 01, 2023 at 10:19:01AM +0200, Juergen Gross wrote: > Patch 2 wants this diff on top: Obviously. :-) That fixes it, thx. Now lemme restart testing. -- Regards/Gruss, Boris. https://people.kernel.org/tglx/notes-about-netiquette From xen-devel-bounces@lists.xenproject.org Thu Jun 01 14:07:40 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 14:07:40 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542522.846469 (Exim 4.92) (envelope-from ) id 1q4ixc-0001vo-UL; Thu, 01 Jun 2023 14:07:28 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542522.846469; Thu, 01 Jun 2023 14:07:28 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4ixc-0001vh-Rf; Thu, 01 Jun 2023 14:07:28 +0000 Received: by outflank-mailman (input) for mailman id 542522; Thu, 01 Jun 2023 14:07:28 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4ixc-0001vZ-Ce for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 14:07:28 +0000 Received: from EUR04-HE1-obe.outbound.protection.outlook.com (mail-he1eur04on2077.outbound.protection.outlook.com [40.107.7.77]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id a1d80785-0085-11ee-8611-37d641c3527e; Thu, 01 Jun 2023 16:07:24 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by AM8PR04MB7300.eurprd04.prod.outlook.com (2603:10a6:20b:1c7::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.23; Thu, 1 Jun 2023 14:06:55 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6433.024; Thu, 1 Jun 2023 14:06:54 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: a1d80785-0085-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=hPyib4fYgA8fSBaimWVBuU9a8MTxAtDdqHTpmIElQiFL2OWJF93AJsRumpU76qt9lchu28J40XvHpYuNo2xMX5CJ48CuTN1OHVvh4MC+3ZjJUHzgdGglqf8qyL9WhhYWU5YePAVvvBn7oL6ofGP0opoko3HafQekyzbYNRn0gzp6Ef30+fIC4vbplpJAvY7OobC8kEW9v9DjL8QeNoIhTBaapuemwIGgvOXSSoV/gxe0Dhrt7Rdm+Ak+b1u+xKurIqgNJYU+DmeQh9KmKBG0VUi9wGOrCpCIf8+GQF203Ctv1QbHlVVYhrqBUeNyhWBPgJ+gCviLpBlwEyt8CRAlCw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=cag0FQovFb8An+lX5p2ZebBddZmR0g8ibj2elL7Tss8=; b=jU3hkya6qVVY8aKfykcWlhlXo/1fOGZVluRi8tkBj/epVkxixPSWbfWD/wqEW2pH7Aq5nexXPdQgoeR0utpWnuZ6oQtMwsY4RAJcL7kfP03tV1l0wtAq5MHZjN7iFTNmaNxe645CGhcHE4r4Ge2lprX5+3ttF2xzlXrvbTjxZFzqFTxxMwAp8DkAlWQYjNJXtuM4GsfP4TcCcAWIf80z5V9/FwzdCacbPGSdt9f3AK06OgalVyGEgKK91D2TuXQDdh5khle9cNnTK0mFG9FD4xjnDOSL0t4gm+BP+3enlzkZqjfA8G3snWOry/rg/JCPCn11D8o/MtGqPl80SHfvHA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=cag0FQovFb8An+lX5p2ZebBddZmR0g8ibj2elL7Tss8=; b=DTikRPm5XSOrXrV0RV98YBAl1uzGrVFzmgjgauwe8EgBz8VVh06qzSWyARyB9vD6TcAht6CZHlS1JJWOh+EWc3GwSspNJ75u8oLMdMnC38rF6XkG6Hxx7g9ef2H3/vrhjS3sGJXz31MlFatQJl8g7FcNWM5sF9LBr66FlCj1EeYh7ZTm226aAW2K5vaJYP3ev1AAhFaE+2GMaFHfHqfmBXUm5NHT8S2BtXzFp+bktIzPQalMkCLfMDB1ENT+qGjUSHwXq5umy9TKllp+GtThw7EzSEdW19fpt9b9wd+BjpVvqVuZKylCETCUM+QXfZMCNC1Jj9VqnlcH+tUy04SA/A== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: Date: Thu, 1 Jun 2023 16:06:53 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH 1/2] x86/vPIT: re-order functions Content-Language: en-US To: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= Cc: "xen-devel@lists.xenproject.org" , Andrew Cooper , Wei Liu References: From: Jan Beulich In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: FR2P281CA0071.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:9a::6) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|AM8PR04MB7300:EE_ X-MS-Office365-Filtering-Correlation-Id: 808d2d10-6e3c-442c-e649-08db62a9745d X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: q3xudIi0J9izKpk/MXporLBYNVkB2swmNnm0OkD3MLvuhn2SXXleYPnnv5q6cwFC5Ia5tcGSNrT8tvvIB199yYPX/K5sqIqqTsLdz5QY471nwHr8bZXKXsOWwS6tzF++HyfCtRnzSh33zmMpo8Rv/UNdAVCU2yG7q/ESFPN/HZDBqxcACmOET3yD/9eODMKqR7TRd41zqa0/8Ej65Xhg30uPy0J3uqHhw9jCd91UJ4GKZiGGy7dwhFXpb+tLd1v8ie8+j7YsNk23rv65yP2nGe0jxGllchrRIPVlzoBOceIvQWI8cVnw6dOmh3u37hzS9ooilyh5TMxMKN+BFKkPomH9qD25gtRiye91ZyQhSXaTr4JFbEr913Z84k+ayfEbY6Y0DEiqhlgeVx+wjHQMv9IJGfcOtKKTpjmqBf6GJHmsbkatOy0FabG3AD8lN6yGbWkJWVidyOJTtm0jyu5PHnKy4TyZwTtohg3xTPhbIUI4e8E4Mkm8gFRYAAbTpk0vJ5HVZOPioW+JJUcEGZ0ADhSbYyWGMZeExMgSCNRqkUFvwG+VqguX4/V46C/HGuUeIpmPOWaV8hg2jc4ccMmvJShzHQBFqvl11PC4x9gEl6jWik984f51GjqL0eYIwCW76txrgzTtlNPXlN1ElGxySMaxR29dfTUTcEA5VKcoCs7adGjAVpBbY3FiMp25hDyz X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(136003)(396003)(346002)(366004)(376002)(39860400002)(451199021)(2906002)(6506007)(2616005)(54906003)(186003)(6486002)(86362001)(36756003)(31696002)(6512007)(26005)(53546011)(478600001)(4326008)(6916009)(5660300002)(8676002)(8936002)(66476007)(83380400001)(316002)(66946007)(41300700001)(66556008)(31686004)(38100700002)(169823001)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?WTFmUW9RODlVTmhud0NtS3lGYzhjaDdLS2tTZmxjU0NTNWNuRTFzU2FBeGND?= =?utf-8?B?clNrMTdJcFRMU09jaEhvMXZyWnlXWkQwaWV3V2VCVUYzMlREbE9keGVKWmEy?= =?utf-8?B?ejlWT2ZGTE1kR1RRQmZjQ3pmdU5kU3Q0TEJ5UVhoMDV2WHRsUWtxb2NhUHFW?= =?utf-8?B?a0tTS0d6UGZoSzRWT2ZXSFd2NWtqcGhOTU9NSVBHUmh6TEpLV0xTZm45VExp?= =?utf-8?B?N2Z1ZHBEODFFU1hJSzNZeWY1T3REVXFiY0UyYTVXbzZvRmhacHR2cjZoWHRT?= =?utf-8?B?Z1B0eHFmL0JyY0JSaDNSVFFhY04rTldUYXFtUFBkU3IyUHlMK3VoTjJ4d3NG?= =?utf-8?B?WEFSb2YrMDdRTWwwZ0VFTjNCZHBtTDRPZkg5M1JSQlE2SnBrZldhTWVSQi92?= =?utf-8?B?YTJwdHQweTI3VXUxQldFYVlDRVBKcCs4MWUxeHI3Tjd3TVV6VDg0emk1ZDA2?= =?utf-8?B?czZCQVBzbEE2MUlsemcxRkliUDRyV0hJdkJ5K2l4VGNVdjZKZWN0V2I4bnhs?= =?utf-8?B?azUrMjhmVmUwVWw4NmtGY05hYm1JMlo3ZURhaW41SnQ4SzRuc3R5eUtlZERB?= =?utf-8?B?WVgvL0xlRWdqYVBabUVCSTVrdGZWbmVJWXFxY0V3SURnckZyd0hRSEFKazdO?= =?utf-8?B?MjU2WUUxb1FpNVJHajR1KzRRKzBJUUtFakhKOHB6OUxlOVVBS3lVUUoxc3V1?= =?utf-8?B?S1lLS2plZmpoMmpqK0tkNmlhVWZULzIxRDNCRmRkdDhUbkRCSXY1SlBScUtX?= =?utf-8?B?eWZtdmNEejgzT2pYVzE4YmNpdDVhVFY5OFNSaXhSWTZYZ0sxN2luakMwMlJw?= =?utf-8?B?cTdLUll0bjl1aFJoQmhLZWdYc2h0djErSHBhWEVMc2tyN1ovTnlKMG8xTmZi?= =?utf-8?B?a3hsQWZUUDdMQlllUHUvamRyUm1jd3ZNeG13UHcvUnd3NnUrY3JJTTFzVW4z?= =?utf-8?B?TWk2a0MrOFpSK2M1c1hMSlROckdJZWh3SWVEWFdFR3RHT0RXeWQ0SXpWck5t?= =?utf-8?B?cTQrZFJEVXVsYU1GQUhmamEyOWErTXNBd3pRSDVHcDVrRlMrL2k5QysrQW5D?= =?utf-8?B?VDlwemJwb1NKdkJ1b3pWa00yaXhuRDk2QkthL0tWNUFYNEo1bi84NWR5WG1L?= =?utf-8?B?b2FkVXFLQ2d6Rm9aOUpJNjM0SEVYUityYkQ4aFNvQnk3R0UzMkdudDJ6VVBr?= =?utf-8?B?ekhDU2xEZDJ1UmF6TEhiTXpTaDNCVHZxakx5elAvclhmUTBwQWlJMG02aDBL?= =?utf-8?B?dG5LNXdyTlR4enRIWGxUZUNXRDBFdVJMSk1pN2pvZmttbVdDTGcvKzhaeEVC?= =?utf-8?B?UWgyK2Urbmt5MTBJSGdBVWhML3ZKY0g1cHNHcDFKUDJ6Q0M0Y1RIdS9xaE5E?= =?utf-8?B?amhSQ2RHRytMR3FMY2V4Z05yUzZpVUpaYkVpalpuOExreWFnWHhBMUZWOTlR?= =?utf-8?B?eWFWSkFzZFFaRVdSNDYrbkxQY01LbzNIQlNtZWhTaE1yVEFDSkxOU3FRMTFE?= =?utf-8?B?WS9OcXRXWDFCZnowL2hXQm4rZVdCSTlYQnBGRFlGZGlVcGVudVRiOGtLR0c1?= =?utf-8?B?eGE2WTdDRGh4NGVOd1NxODY5OHpPNDl3MDZnR25Eb0JZanlxS1RLN3lVL2tY?= =?utf-8?B?YzNMNCtKTENwY2tjenZFU2hZQ3FBU3M4UTNrdDVtOFFwYjBYMnZrUU9Vb0NY?= =?utf-8?B?ZzZQWFNaSW5wWkpvL251OElhR3o5UThrZXRuUm1VZHdSOG83c0s3azFiOHk0?= =?utf-8?B?WVpJNklDcmkzTTg0RmQvUjYxNWtnUkJyRkxkc2NSWlp1OEduMTlEY1YzNjRp?= =?utf-8?B?ZnRSa2ZlTjFYMlZYZWlHM3E1M3BTOFI5ekZqWWYyT0JCRG44M2drcURJMGpx?= =?utf-8?B?bUNGaEVEU0t2cUdQM0hiclc3TUhoblBEelA3QkFZK0pGaC80bW5EbkhCMzVW?= =?utf-8?B?bWVFRDJZZlIweGs5djJ6ZTJVVHYyQ1BNRVRXM2srSjFNamhsZWtGWlBQNSty?= =?utf-8?B?SU9SdnZ4RUNHc2F2ampnTEhDOURxVnJNaUZmaUpwaFRCL0RTVFY1dmd6a0c4?= =?utf-8?B?Y05yeTZOM0pXcmZ0U2d3cHhPTUw4R3BYM2pTRGduQ09KM2JWVXA0bzRzakRB?= =?utf-8?Q?amdEI3rN18mKDlK7J+pxqes7O?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 808d2d10-6e3c-442c-e649-08db62a9745d X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Jun 2023 14:06:54.6573 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 9PrGEu1SfNLPO2m9TeQwvYzrhS0O1XwhFiYVwL0faHi643icttl9lSaVr+mzbeT/ZyG02feYyhUIXju91uPleQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM8PR04MB7300 On 01.06.2023 13:50, Roger Pau Monné wrote: > On Thu, Jun 01, 2023 at 11:56:12AM +0200, Jan Beulich wrote: >> On 01.06.2023 11:17, Roger Pau Monné wrote: >>> On Tue, May 30, 2023 at 05:30:02PM +0200, Jan Beulich wrote: >>>> To avoid the need for a forward declaration of pit_load_count() in a >>>> subsequent change, move it earlier in the file (along with its helper >>>> callback). >>>> >>>> Signed-off-by: Jan Beulich >>> >>> Reviewed-by: Roger Pau Monné >> >> Thanks. >> >>> Just a couple of nits, which you might also noticed but decided to not >>> fix given this is just code movement. >> >> Indeed, I meant this to be pure code movement. Nevertheless I'd be happy >> to take care of style issues, if that's deemed okay in a "pure code >> movement" patch. However, ... > > It's just small style issues, so it would be OK for me. So I've done the obvious ones. There's a further signed/unsigned issue which isn't quite as clear whether to take care of "on the fly": The function's 2nd and 3rd parameters both ought to be unsigned, yet throughout the full file the same issue exists many more times. So I guess I'll leave those untouched for now. Jan From xen-devel-bounces@lists.xenproject.org Thu Jun 01 14:20:34 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 14:20:34 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542527.846484 (Exim 4.92) (envelope-from ) id 1q4jA4-0004L3-28; Thu, 01 Jun 2023 14:20:20 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542527.846484; Thu, 01 Jun 2023 14:20:20 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4jA3-0004Kw-TW; Thu, 01 Jun 2023 14:20:19 +0000 Received: by outflank-mailman (input) for mailman id 542527; Thu, 01 Jun 2023 14:20:18 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4jA2-0004Kq-PD for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 14:20:18 +0000 Received: from EUR05-DB8-obe.outbound.protection.outlook.com (mail-db8eur05on2060f.outbound.protection.outlook.com [2a01:111:f400:7e1a::60f]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 6e7c4813-0087-11ee-b231-6b7b168915f2; Thu, 01 Jun 2023 16:20:17 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by AS4PR04MB9651.eurprd04.prod.outlook.com (2603:10a6:20b:4ce::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6433.24; Thu, 1 Jun 2023 14:20:15 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6433.024; Thu, 1 Jun 2023 14:20:15 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 6e7c4813-0087-11ee-b231-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=ih8APQJfG5uF2D2dIfYGERrzTfFdESHXY84HyLFCNa3J/gW3LoVYop7KfOphot41M9EN1S0jBeHlzQVXtGmKKysqOza3oJkucXXY67/GXAzdLUw3K4KNs6ixeX8e+8S+0uJD0+6AihGwvJKbnkNezqgohiuHsV2GlUkMLeg6a7aQ1MDK23jVGpvpWM4/uDe8FfvZrUnpemRKQU54gGiYy0KJgegeXMWNCkBON3qwIYA6T5r15MIqSpQbKdUjiohLcmLxARnTyfpXA66owgf4e3NinV8a438gFxlYHKTitJUwXmHI+j3MH4R/M5fbN9K+1BjzRfYy5eXl01OTEj006g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=Vl3lVP972xpfP1QGMljk3yfCfhHBHoJcVBg7B0MeAPM=; b=arqUvxtbrTCbBcc3Ymz0Fx4YVLIBzZh3e4rSzdlgvCCU6OfK7WPjhkcqOB/Gr9j60gPm2bSyITkTVqxLNkZRnJAqIxurbFDJLzx4VVZ7XbPN/5+eRzlI3ycsYKjc4sjIxp+eIxEoyTIlShjKharSGvrn6b/2p7zjoRLRZFW1ZpaI5aa6QaoutZTILc3cwWw6G6MQXLxjWnuxHROUs3/Mx5inTmMV6esYPe9ar0d2dtobebCAD6VQz89645uf2ocI3sDM5KgnBmbUDiwc358D43vyEbGfGBFf0nmpU4C8IQ0AWxbyxA22ZDi5MAXK32dMjGjA119ryh6TqsJPR9cU9g== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Vl3lVP972xpfP1QGMljk3yfCfhHBHoJcVBg7B0MeAPM=; b=1erxI7+I5PdTsh1Znoen0OmfgiO5hcxvCSfqFPGUFk+tzCXqowSvPW/nmlo61QH5IZ1RYH4Chc3VcFdVbHdw7OqgmfPzxSRnPDOFGY27sddi6WIuq3x5gb6CGzXtnSxdntlyVrzzN/jrGwv8vV01aHi3Z4jYtUiYu2esMBxd4zaimzVPBgJBlVh3qXdBPdISEEHIyLRfDh0UCCvdqeFROcO3VkZWrxnnyZwu/U9pXeeAs3Gtep6at9FiyNkGB68Px2iwiHkty9EkF/IA1/AmL+UrdXztaq8xHcewYBN4LXmVcNXgZ+cjyQnnZRpYnu4k74yTNaHx33urkZ4ZiCLiQA== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: Date: Thu, 1 Jun 2023 16:20:13 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH 2/2] x86/vPIT: account for "counter stopped" time Content-Language: en-US To: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= Cc: "xen-devel@lists.xenproject.org" , Andrew Cooper , Wei Liu References: <355c5379-ea9e-582c-0131-816204eb3ace@suse.com> From: Jan Beulich In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: FR3P281CA0140.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:95::12) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|AS4PR04MB9651:EE_ X-MS-Office365-Filtering-Correlation-Id: c7a35b40-7f46-4e09-5bf2-08db62ab51a1 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: MLHMLsAdHT730gABz7n+8ZyF/70XoML4vOHS6LSHjC8UWvgJ1LSzE7BAKN0LRuRp3VN57/Rn72oRMommJY4p/Dg+8dZo9pJyPLsZK/zFISpG4zRSAyaZbZdZ/0w8yHK/9ozWwgoVQt6ebLd4zQN2e8VHU79Jjv8Dm8OycpuhwGNenb2VBqE4Qf7sh57tzvC9UfPoIIQRIap/uO2RFg4+r5aaTiuHSEXsKjgbTPQr4Ktq54Y3gnGsfGo2mzCijKeOE+fc0Fx56UAh0wATBz0but/v+152LtZ/0z+LjnGxPYKnYFYuq4R+w0cDuvGhRqfmXnPalB9PEMLEpdYgH7DlpbusyHa4Hrmmxjp8pbguT2ZyD0DxyTWEcXIa2i+VFYVkzT0nPT3ummhNq9wgRXSPphgoc1jWoiUBD1c7O/ZVc18lq9A1I6JKrDUZFUTNWnH2tgnKDgvmR8+YMngmswRNREtTyxzOCTlNn3HCIFDRidt4gGxThosqsy9BE9qZJ4+pYWjC4Ieim0dYWgBE/DcqRMPh8ZHXxBsI9+s5drc9cEQg1VLxwP7u5Zc9LkEpV7swQHPvxnry8LmX9ees8RLxeHf4CrJlipEAmoVuGwN/ZXXtBtKux3/9exzmVnabut+pmjR7IA/y4JBT9S85ziWlQoVOY/cbDuxU9Qjf3barJY8= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(366004)(396003)(346002)(376002)(39860400002)(136003)(451199021)(6486002)(41300700001)(2616005)(38100700002)(31696002)(86362001)(53546011)(83380400001)(6506007)(186003)(6512007)(2906002)(26005)(15650500001)(8936002)(5660300002)(36756003)(66946007)(66556008)(66476007)(4326008)(316002)(8676002)(54906003)(6916009)(478600001)(66899021)(31686004)(21314003)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?SFEwN21xUWRiWjVVTzI0NTdRU1RtS3pRSXhycDBOTXdrR3YyTmIvTXRCL05y?= =?utf-8?B?b0NlMGFzYy9ya3VDa0tJTWJjSTg0M3krVklBaUYyOHdZT1N6QWRXVW9UR25r?= =?utf-8?B?V1F1cHd0SjNsTm1ESGQvV3VpZ3VTRmtMVFhrLzhPTFpld2huSzIyTUZqN3Nh?= =?utf-8?B?YldBZW80SURuUENsVmszbEFYRHpYQmtpeTZqSnY2YU9YQjd4VUcxMVJPZ0Y5?= =?utf-8?B?VXkvOVh1UGw5RGE5b0RVNWlwZHZtVmp3SU1GOHB5UU5vTkVEWEc2c1g1MzlN?= =?utf-8?B?c3BpUk15TDZkLzVVQmZyL3VtMXZwRE5rQUsrUFJxcENnamZuT21VdnpUQ1Qy?= =?utf-8?B?RGRRQnlLV3NmVDhZSnpmaDFoMmdwaE9xRG5IVE5RUnQyR0hnbHNGTERtUGNt?= =?utf-8?B?Z3JCL2FIeWhNR091SlJ2MDRnb2lWenZHckExcUtTR3QwcmNzaU9jVGZEOHBa?= =?utf-8?B?RG82dWVzamEzQzhDNXRBcXpZdXBydTdpMCtjV2xuNHRqYWdsYnJWeGlzaFYz?= =?utf-8?B?am1GdENFRk5VQ0wzUmVlZ05raFRBVERXbHlOK3BwYU5CaURETHQ0T2RFejZX?= =?utf-8?B?VDI5UVJqUnlSdWFlMDZtYXlHU2NpLzFIbmwyU2tIWjI3THY3QUZmeXUxOE5v?= =?utf-8?B?UnNNSmo0NWJaZEQ0UGVtWWY2L2NkTjgyRnhjWEFZMVN0NWJsQ1JlbkVNSXZ5?= =?utf-8?B?WldoR01jSzZBZU5Gb2ZtT3NGOU5Edjlsb0NvT0NWV1h5cXVRbFRoY0tBWlFn?= =?utf-8?B?WjBLKy9kT1JUUUgvWmNYZ0dlbjhDK1BDZW5nQ00wNmRBMGZhUmJTOUhPVzhm?= =?utf-8?B?V3dVcG05b2dITmdpS05PTExkeFZrVDhmRlloNWFDNFB2blN2V2pxRnhrenJT?= =?utf-8?B?NDBXZzlDOElLNmhXVHJLOVluRDJ1REpIRWtrWWJ4bW0vV2lXVHV2TmdjQ21v?= =?utf-8?B?cUpOd3FVTzVUSXIwYWt4c2h1T3h0aXNqaHBKdEU1RVFDTTl4MDhnblhYbVdO?= =?utf-8?B?RmZjSTBIam5hWmRyS2tKWUJjcDZpR3ZpVERIQkUzZm00Z24zMXFMZ0xMQk9r?= =?utf-8?B?QXdvc0hIakRHR1VzdzdMSWNnNThhSUxFUkFITUpsM2V1QmpaNFZkQVBSVTRG?= =?utf-8?B?V1VwcW4rZiszY0NHanVxOEN6ZDQwSzY0YzdWdmZMeCtHQ0JZQmNkY1h6RFNI?= =?utf-8?B?eTFGekRFTC8yYU9NcS9nWFYxSDlpdmkxaW04eGdvR1Zja2tjcTBFb2hOMEdN?= =?utf-8?B?R0U5K29NeFQ2TUNSakZGdHFqc3p4RFhGL0IxblZ6UHhuVDlBNG83dU82RWpi?= =?utf-8?B?eFJEeGZFdnQ3aW9oTkE0ZUFjbzREbjY3TWJEOEhncGVBWDRJUE9Nb3Z6bnRp?= =?utf-8?B?V2JIOUtHcytmNmZsNTRwNGg2TUtib1djN3l3RldvQjBqS2UrcEZGTjNiNTVr?= =?utf-8?B?QTZML01vcjVhU1RJandZbitMeko2a3dZTWN2WWQ3TXBhMlNtZWRUNnlrSEx3?= =?utf-8?B?WkpqcjNRYTA2WVJMVWJ6T1NONHU3ZGQzNzdmNmdkSzBZdE56dDZYeGtKMjZD?= =?utf-8?B?THkwbW9PNTIza0lsVU0zNktNQ0VBenNmZTE0VzlvQjVpczM5anZXMWsvWEtL?= =?utf-8?B?YnQ5UkIvNUc1cWE3ZFZnTC9BbmxDaGJNeXg0aFdHOE1WQ1IvTDdKcXh2Mkpj?= =?utf-8?B?ZHhhclBVN0E5ZzRqZkhwUzhTdXZxb0FSOVJGN3hNYUtEY2lGdnAzcG91ZFBG?= =?utf-8?B?anpXSGhZQ1VUM0F6b2xkZUUyek1wa3JWRzlZVWNvUzRLa0cwRURGOHhraHdB?= =?utf-8?B?TFJKRndjQlRXUTE5dStXcXZ5L0E4TUJOc2gyem94Z3VVcC9xS2YwYTR2ZnNy?= =?utf-8?B?QVBtenpSTlByOXo5bG81cXlTZWQwaHo3TDQ3SUhNaGZUUjh5NUlxemRvN0o1?= =?utf-8?B?ZStRV0hQbVdqaGYycTNRNnB0Z2VZbm1uUDhLeGRhc29GK1RZMVBvWU1ybTNk?= =?utf-8?B?djdkOElsWUJnTzF2TXh1dWhZSmltVzB6L1JBaXRaM1h1WU1TY1ZQemtFSFNq?= =?utf-8?B?VnV2bWtkeVU3Y3lSMU9acUk3VlM3cjJnbStJVXJCTkVEb1dhUS91UkZWYWZG?= =?utf-8?Q?CoOFKC5rVBZQvSgciCa95+p0Z?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: c7a35b40-7f46-4e09-5bf2-08db62ab51a1 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Jun 2023 14:20:15.2776 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: U6rkF1IDolNh0rvpdPGwAsVuSkbJd4i9SGb5Srp88jzufuaAf2D6E4YYzh3hW0/CWCJx4OzYtZNw/d0GCHm8/w== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS4PR04MB9651 On 01.06.2023 13:48, Roger Pau Monné wrote: > On Tue, May 30, 2023 at 05:30:40PM +0200, Jan Beulich wrote: >> TBD: "gate" can only ever be low for chan2 (with "x86/vPIT: check/bound >> values loaded from state save record" [2] in place), so in >> principle we could get away without a new pair of arrays, but just >> two individual fields. At the expense of more special casing in >> code. > > Hm, I guess we could rename to pit_set_gate_ch2 and remove the ch > parameter. That would be OK for me. Well, simplifying the function is the less ugly part, so I'd be okay doing that. But doing _just_ that feels wrong: Why would we make the function less general when we still maintain all the data also for the other channels, just that we don't update it. My concern was really towards the further special casing of channel 2 that would be required if I didn't introduce two new arrays, but just two new fields. >> TBD: Should we deal with other aspects of "gate low" in pit_get_out() >> here as well, right away? I was hoping to get away without ... >> (Note how the two functions also disagree in their placement of the >> "default" labels, even if that's largely benign when taking into >> account that modes 6 and 7 are transformed to 2 and 3 respectively >> by pit_load(). A difference would occur only before the guest first >> sets the mode, as pit_reset() sets it to 7.) > > I'm in general afraid of doing changes here (apart from bugfixes) > because we don't really have a good way to test them AFAIK, Right, hence why I'm asking. > maybe you > do have some XTF or similar tests to exercise those paths? I did consider making something, but I can't go the route of "try it directly and then compare with emulation results". Yet without that I'm not sure such a test (and the time spent putting it together) are worth it, the more that without being able to compare I might also end up testing some wrong behavior, simply because of not properly understanding the somewhat scarce documentation that's available. (I already had to resort to 30 years old hardcopy documentation to at least stand a chance of getting things right.) >> Other observations: >> - Loading of new counts occurs too early in some of the modes (2/3: at >> end of current sequence or when gate goes high; 1/5: only when gate >> goes high). Because of this ... >> @@ -109,6 +112,7 @@ static void pit_load_count(PITState *pit >> pit->count_load_time[channel] = 0; >> else >> pit->count_load_time[channel] = get_guest_time(v); >> + pit->stopped_time[channel] = 0; > > Don't you need to also set count_stop_time == count_load_time in case > the counter is disabled? (s->gate == 0). ... I think you're right, and I should do so unconditionally. In principle I think this would need to be mode dependent. >> @@ -181,22 +188,39 @@ static void pit_set_gate(PITState *pit, >> >> ASSERT(spin_is_locked(&pit->lock)); >> >> - switch ( s->mode ) >> - { >> - default: >> - case 0: >> - case 4: >> - /* XXX: just disable/enable counting */ >> - break; >> - case 1: >> - case 5: >> - case 2: >> - case 3: >> - /* Restart counting on rising edge. */ >> - if ( s->gate < val ) >> - pit->count_load_time[channel] = get_guest_time(v); >> - break; >> - } >> + if ( s->gate > val ) >> + switch ( s->mode ) >> + { >> + case 0: >> + case 2: >> + case 3: >> + case 4: >> + /* Disable counting. */ >> + if ( !channel ) >> + destroy_periodic_time(&pit->pt0); >> + pit->count_stop_time[channel] = get_guest_time(v); >> + break; >> + } >> + >> + if ( s->gate < val ) > > Shouldn't this be an else if? They could, but they don't need to be. I ended up thinking that with the blank line between both if()s things read slightly better. If you're pretty convinced that's unhelpful, I'd be willing to adjust. Jan From xen-devel-bounces@lists.xenproject.org Thu Jun 01 14:24:48 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 14:24:48 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542532.846492 (Exim 4.92) (envelope-from ) id 1q4jEL-0004zV-K3; Thu, 01 Jun 2023 14:24:45 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542532.846492; Thu, 01 Jun 2023 14:24:45 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4jEL-0004zO-HK; Thu, 01 Jun 2023 14:24:45 +0000 Received: by outflank-mailman (input) for mailman id 542532; Thu, 01 Jun 2023 14:24:44 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4jEJ-0004zH-NB for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 14:24:44 +0000 Received: from mga06.intel.com (mga06b.intel.com [134.134.136.31]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 09796169-0088-11ee-8611-37d641c3527e; Thu, 01 Jun 2023 16:24:39 +0200 (CEST) Received: from orsmga003.jf.intel.com ([10.7.209.27]) by orsmga104.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 01 Jun 2023 07:19:22 -0700 Received: from lkp-server01.sh.intel.com (HELO fb1ced2c09fb) ([10.239.97.150]) by orsmga003.jf.intel.com with ESMTP; 01 Jun 2023 07:19:17 -0700 Received: from kbuild by fb1ced2c09fb with local (Exim 4.96) (envelope-from ) id 1q4j92-0002Lp-1h; Thu, 01 Jun 2023 14:19:16 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 09796169-0088-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1685629479; x=1717165479; h=date:from:to:cc:subject:message-id:references: mime-version:in-reply-to; bh=BaD1zw6V2jf+wne8NUiF1WEc49QRybnZ2yKptn30Dmk=; b=YJfiF7rvrLcgJXJdnaNRWkwcXMfHOE+NIc+2qd+y1QlRuthMGamNHY// /n5XdKoJT2oajceIk4CtyOj6IqngEe6GT/ZxzRlkKtqoDqN6d0Tv//Z6e zaGiM7HLzmTXsUkMPPVM5xf+VbcpL5PEnwxT3kMESuDaULxlJCbu6DpL6 InwNiV/sWn79B3YVRvi0aR5iXYSo3HjRGQERD/AcJdKo65pud1Y3vcLfN w5Tjdu/5x+3EuE4Oq9wOzLesXDEkCaEz2nYeLsNr5iCeAI38MSAYoHObD LGThcjp0q5wLgQzeWz8IvDbri0i7d/TtL0SiskPJHk6EHcqRRiP7PAL1d g==; X-IronPort-AV: E=McAfee;i="6600,9927,10728"; a="419088777" X-IronPort-AV: E=Sophos;i="6.00,210,1681196400"; d="scan'208";a="419088777" X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10728"; a="657813870" X-IronPort-AV: E=Sophos;i="6.00,210,1681196400"; d="scan'208";a="657813870" Date: Thu, 1 Jun 2023 22:18:18 +0800 From: kernel test robot To: "Vishal Moola (Oracle)" , Andrew Morton , Matthew Wilcox Cc: oe-kbuild-all@lists.linux.dev, Linux Memory Management List , linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, "Vishal Moola (Oracle)" , Geert Uytterhoeven Subject: Re: [PATCH v3 25/34] m68k: Convert various functions to use ptdescs Message-ID: <202306011704.i8xMWKPl-lkp@intel.com> References: <20230531213032.25338-26-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20230531213032.25338-26-vishal.moola@gmail.com> Hi Vishal, kernel test robot noticed the following build errors: [auto build test ERROR on next-20230531] [cannot apply to akpm-mm/mm-everything s390/features powerpc/next powerpc/fixes geert-m68k/for-next geert-m68k/for-linus linus/master v6.4-rc4 v6.4-rc3 v6.4-rc2 v6.4-rc4] [If your patch is applied to the wrong git tree, kindly drop us a note. And when submitting patch, we suggest to use '--base' as documented in https://git-scm.com/docs/git-format-patch#_base_tree_information] url: https://github.com/intel-lab-lkp/linux/commits/Vishal-Moola-Oracle/mm-Add-PAGE_TYPE_OP-folio-functions/20230601-053454 base: next-20230531 patch link: https://lore.kernel.org/r/20230531213032.25338-26-vishal.moola%40gmail.com patch subject: [PATCH v3 25/34] m68k: Convert various functions to use ptdescs config: m68k-randconfig-r002-20230531 (https://download.01.org/0day-ci/archive/20230601/202306011704.i8xMWKPl-lkp@intel.com/config) compiler: m68k-linux-gcc (GCC) 12.3.0 reproduce (this is a W=1 build): mkdir -p ~/bin wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross chmod +x ~/bin/make.cross # https://github.com/intel-lab-lkp/linux/commit/915ab62dc3315fe0a0544fccb4ee5f3ee32694b5 git remote add linux-review https://github.com/intel-lab-lkp/linux git fetch --no-tags linux-review Vishal-Moola-Oracle/mm-Add-PAGE_TYPE_OP-folio-functions/20230601-053454 git checkout 915ab62dc3315fe0a0544fccb4ee5f3ee32694b5 # save the config file mkdir build_dir && cp config build_dir/.config COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-12.3.0 ~/bin/make.cross W=1 O=build_dir ARCH=m68k olddefconfig COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-12.3.0 ~/bin/make.cross W=1 O=build_dir ARCH=m68k SHELL=/bin/bash arch/m68k/mm/ If you fix the issue, kindly add following tag where applicable | Reported-by: kernel test robot | Closes: https://lore.kernel.org/oe-kbuild-all/202306011704.i8xMWKPl-lkp@intel.com/ All error/warnings (new ones prefixed by >>): In file included from arch/m68k/include/asm/pgalloc.h:12, from arch/m68k/mm/init.c:26: arch/m68k/include/asm/mcf_pgalloc.h: In function 'pgd_alloc': >> arch/m68k/include/asm/mcf_pgalloc.h:83:59: error: 'GFP_NOWARN' undeclared (first use in this function); did you mean 'GFP_NOWAIT'? 83 | struct ptdesc *ptdesc = pagetable_alloc(GFP_DMA | GFP_NOWARN, 0); | ^~~~~~~~~~ | GFP_NOWAIT arch/m68k/include/asm/mcf_pgalloc.h:83:59: note: each undeclared identifier is reported only once for each function it appears in arch/m68k/include/asm/mcf_pgalloc.h: At top level: >> arch/m68k/include/asm/mcf_pgalloc.h:22:27: warning: 'ptdesc_address' is static but used in inline function 'pte_alloc_one_kernel' which is not static 22 | return (pte_t *) (ptdesc_address(ptdesc)); | ^~~~~~~~~~~~~~ >> arch/m68k/include/asm/mcf_pgalloc.h:17:33: warning: 'pagetable_alloc' is static but used in inline function 'pte_alloc_one_kernel' which is not static 17 | struct ptdesc *ptdesc = pagetable_alloc(GFP_DMA | __GFP_ZERO, 0); | ^~~~~~~~~~~~~~~ >> arch/m68k/include/asm/mcf_pgalloc.h:10:24: warning: 'virt_to_ptdesc' is static but used in inline function 'pte_free_kernel' which is not static 10 | pagetable_free(virt_to_ptdesc(pte)); | ^~~~~~~~~~~~~~ >> arch/m68k/include/asm/mcf_pgalloc.h:10:9: warning: 'pagetable_free' is static but used in inline function 'pte_free_kernel' which is not static 10 | pagetable_free(virt_to_ptdesc(pte)); | ^~~~~~~~~~~~~~ -- In file included from arch/m68k/mm/mcfmmu.c:21: arch/m68k/include/asm/mcf_pgalloc.h: In function 'pgd_alloc': >> arch/m68k/include/asm/mcf_pgalloc.h:83:59: error: 'GFP_NOWARN' undeclared (first use in this function); did you mean 'GFP_NOWAIT'? 83 | struct ptdesc *ptdesc = pagetable_alloc(GFP_DMA | GFP_NOWARN, 0); | ^~~~~~~~~~ | GFP_NOWAIT arch/m68k/include/asm/mcf_pgalloc.h:83:59: note: each undeclared identifier is reported only once for each function it appears in arch/m68k/mm/mcfmmu.c: At top level: arch/m68k/mm/mcfmmu.c:36:13: warning: no previous prototype for 'paging_init' [-Wmissing-prototypes] 36 | void __init paging_init(void) | ^~~~~~~~~~~ arch/m68k/mm/mcfmmu.c: In function 'paging_init': arch/m68k/mm/mcfmmu.c:41:37: warning: variable 'bootmem_end' set but not used [-Wunused-but-set-variable] 41 | unsigned long next_pgtable, bootmem_end; | ^~~~~~~~~~~ arch/m68k/include/asm/mcf_pgalloc.h: At top level: >> arch/m68k/include/asm/mcf_pgalloc.h:22:27: warning: 'ptdesc_address' is static but used in inline function 'pte_alloc_one_kernel' which is not static 22 | return (pte_t *) (ptdesc_address(ptdesc)); | ^~~~~~~~~~~~~~ >> arch/m68k/include/asm/mcf_pgalloc.h:17:33: warning: 'pagetable_alloc' is static but used in inline function 'pte_alloc_one_kernel' which is not static 17 | struct ptdesc *ptdesc = pagetable_alloc(GFP_DMA | __GFP_ZERO, 0); | ^~~~~~~~~~~~~~~ >> arch/m68k/include/asm/mcf_pgalloc.h:10:24: warning: 'virt_to_ptdesc' is static but used in inline function 'pte_free_kernel' which is not static 10 | pagetable_free(virt_to_ptdesc(pte)); | ^~~~~~~~~~~~~~ >> arch/m68k/include/asm/mcf_pgalloc.h:10:9: warning: 'pagetable_free' is static but used in inline function 'pte_free_kernel' which is not static 10 | pagetable_free(virt_to_ptdesc(pte)); | ^~~~~~~~~~~~~~ vim +83 arch/m68k/include/asm/mcf_pgalloc.h 7 8 extern inline void pte_free_kernel(struct mm_struct *mm, pte_t *pte) 9 { > 10 pagetable_free(virt_to_ptdesc(pte)); 11 } 12 13 extern const char bad_pmd_string[]; 14 15 extern inline pte_t *pte_alloc_one_kernel(struct mm_struct *mm) 16 { > 17 struct ptdesc *ptdesc = pagetable_alloc(GFP_DMA | __GFP_ZERO, 0); 18 19 if (!ptdesc) 20 return NULL; 21 > 22 return (pte_t *) (ptdesc_address(ptdesc)); 23 } 24 25 extern inline pmd_t *pmd_alloc_kernel(pgd_t *pgd, unsigned long address) 26 { 27 return (pmd_t *) pgd; 28 } 29 30 #define pmd_populate(mm, pmd, pte) (pmd_val(*pmd) = (unsigned long)(pte)) 31 32 #define pmd_populate_kernel pmd_populate 33 34 static inline void __pte_free_tlb(struct mmu_gather *tlb, pgtable_t pgtable, 35 unsigned long address) 36 { 37 struct ptdesc *ptdesc = virt_to_ptdesc(pgtable); 38 39 pagetable_pte_dtor(ptdesc); 40 pagetable_free(ptdesc); 41 } 42 43 static inline pgtable_t pte_alloc_one(struct mm_struct *mm) 44 { 45 struct ptdesc *ptdesc = pagetable_alloc(GFP_DMA, 0); 46 pte_t *pte; 47 48 if (!ptdesc) 49 return NULL; 50 if (!pagetable_pte_ctor(ptdesc)) { 51 pagetable_free(ptdesc); 52 return NULL; 53 } 54 55 pte = ptdesc_address(ptdesc); 56 pagetable_clear(pte); 57 58 return pte; 59 } 60 61 static inline void pte_free(struct mm_struct *mm, pgtable_t pgtable) 62 { 63 struct ptdesc *ptdesc = virt_to_ptdesc(ptdesc); 64 65 pagetable_pte_dtor(ptdesc); 66 pagetable_free(ptdesc); 67 } 68 69 /* 70 * In our implementation, each pgd entry contains 1 pmd that is never allocated 71 * or freed. pgd_present is always 1, so this should never be called. -NL 72 */ 73 #define pmd_free(mm, pmd) BUG() 74 75 static inline void pgd_free(struct mm_struct *mm, pgd_t *pgd) 76 { 77 pagetable_free(virt_to_ptdesc(pgd)); 78 } 79 80 static inline pgd_t *pgd_alloc(struct mm_struct *mm) 81 { 82 pgd_t *new_pgd; > 83 struct ptdesc *ptdesc = pagetable_alloc(GFP_DMA | GFP_NOWARN, 0); 84 85 if (!ptdesc) 86 return NULL; 87 new_pgd = (pgd_t *) ptdesc_address(ptdesc); 88 89 memcpy(new_pgd, swapper_pg_dir, PTRS_PER_PGD * sizeof(pgd_t)); 90 memset(new_pgd, 0, PAGE_OFFSET >> PGDIR_SHIFT); 91 return new_pgd; 92 } 93 -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki From xen-devel-bounces@lists.xenproject.org Thu Jun 01 14:26:31 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 14:26:31 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542536.846502 (Exim 4.92) (envelope-from ) id 1q4jFn-0005YM-UD; Thu, 01 Jun 2023 14:26:15 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542536.846502; Thu, 01 Jun 2023 14:26:15 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4jFn-0005YF-RP; Thu, 01 Jun 2023 14:26:15 +0000 Received: by outflank-mailman (input) for mailman id 542536; Thu, 01 Jun 2023 14:26:14 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4jFm-0005Y3-8W; Thu, 01 Jun 2023 14:26:14 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4jFl-0003En-Tj; Thu, 01 Jun 2023 14:26:13 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4jFl-0006aq-HK; Thu, 01 Jun 2023 14:26:13 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q4jFl-00088W-Ge; Thu, 01 Jun 2023 14:26:13 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=p5UGjd05HWj/1DjhJwok9s7cnwafa+7EqOUVl+AMiew=; b=AXYRBGtL2mIv8Ohri15Mg/AQ5b 7lULSTV8nBcBSatnsUoA1UBCi75JHAkC8Cn/Iv+OArSSbteLeyWj9ys5Nlnxq6RwXacGnEMyLm3cd f3v2qEunAqR3i7daeRvSgKoOnrOOVuM28Xc/N8+lkybZLuiYHs1SadQ0EBGZbaqyg+vk=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [libvirt test] 181066: tolerable all pass - PUSHED X-Osstest-Failures: libvirt:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking libvirt:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking libvirt:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking libvirt:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking libvirt:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking libvirt:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking libvirt:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt:saverestore-support-check:fail:nonblocking libvirt:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking libvirt:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking libvirt:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking libvirt:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-qcow2:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-qcow2:saverestore-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking libvirt:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking libvirt:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking libvirt:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking X-Osstest-Versions-This: libvirt=c47e17689e3309e544b59f5a9eb7b9d668967787 X-Osstest-Versions-That: libvirt=9222f35dc6917f00d166be3bb69ac4e5ff8536f0 From: osstest service owner Date: Thu, 01 Jun 2023 14:26:13 +0000 flight 181066 libvirt real [real] http://logs.test-lab.xenproject.org/osstest/logs/181066/ Failures :-/ but no regressions. Tests which did not succeed, but are not blocking: test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail like 181023 test-armhf-armhf-libvirt 16 saverestore-support-check fail like 181023 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail like 181023 test-amd64-i386-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-i386-libvirt 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-i386-libvirt-raw 14 migrate-support-check fail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-qcow2 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-qcow2 15 saverestore-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail never pass test-armhf-armhf-libvirt 15 migrate-support-check fail never pass test-armhf-armhf-libvirt-raw 14 migrate-support-check fail never pass version targeted for testing: libvirt c47e17689e3309e544b59f5a9eb7b9d668967787 baseline version: libvirt 9222f35dc6917f00d166be3bb69ac4e5ff8536f0 Last test of basis 181023 2023-05-31 04:21:47 Z 1 days Testing same since 181066 2023-06-01 04:18:54 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Michal Privoznik jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-i386-libvirt-xsm pass test-amd64-amd64-libvirt pass test-arm64-arm64-libvirt pass test-armhf-armhf-libvirt pass test-amd64-i386-libvirt pass test-amd64-amd64-libvirt-pair pass test-amd64-i386-libvirt-pair pass test-arm64-arm64-libvirt-qcow2 pass test-armhf-armhf-libvirt-qcow2 pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw pass test-amd64-i386-libvirt-raw pass test-amd64-amd64-libvirt-vhd pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Pushing revision : To xenbits.xen.org:/home/xen/git/libvirt.git 9222f35dc6..c47e17689e c47e17689e3309e544b59f5a9eb7b9d668967787 -> xen-tested-master From xen-devel-bounces@lists.xenproject.org Thu Jun 01 14:28:02 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 14:28:02 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542542.846512 (Exim 4.92) (envelope-from ) id 1q4jHL-000674-9K; Thu, 01 Jun 2023 14:27:51 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542542.846512; Thu, 01 Jun 2023 14:27:51 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4jHL-00066x-6d; Thu, 01 Jun 2023 14:27:51 +0000 Received: by outflank-mailman (input) for mailman id 542542; Thu, 01 Jun 2023 14:27:49 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4jHJ-00066T-8u for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 14:27:49 +0000 Received: from mo4-p00-ob.smtp.rzone.de (mo4-p00-ob.smtp.rzone.de [81.169.146.161]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 7af4ff6a-0088-11ee-b231-6b7b168915f2; Thu, 01 Jun 2023 16:27:47 +0200 (CEST) Received: from sender by smtp.strato.de (RZmta 49.5.3 AUTH) with ESMTPSA id L38909z51ERk1Sj (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256 bits)) (Client did not present a certificate) for ; Thu, 1 Jun 2023 16:27:46 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 7af4ff6a-0088-11ee-b231-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; t=1685629666; cv=none; d=strato.com; s=strato-dkim-0002; b=kLRbnXb4ukrcOwOt6BFcZsx17WvG5KlRSOkeRO4Z9wYN9vbqdn8jPyreg7rA6kHC/J 8Sz5kh51Wa69QcQZbqrzUh6eCvI8iZ/eKL+pCpCPzNK0q2zu+g38coMSTtOemg3PNmpt BpRSsM4Csf4CUwgF9rO2vqICdfE+SQl9Ds7YEl89wAKa0SFSLuiUJpqkCV9kEntFqG6/ ly2jHsgdIpMm3xs2D87cMkPV6+ylRn4ZY6Yg3NNEIgMUz60J/gHCwbFnglaA7JgnUR9p nMaloIrn/+qsPAUYm5Vn3tS+GYegnLrP0XS+mV4ZLn0GkeUhW+lu6xpmgEKy4nFm1nM3 gWQA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; t=1685629666; s=strato-dkim-0002; d=strato.com; h=Message-Id:Date:Subject:To:From:Cc:Date:From:Subject:Sender; bh=lWE44nLJoiGIiT9RDeVM4y1K+t+GFD3SlXFMd8iQ6wE=; b=aHdrjI5ky9lUh3axojeqZhVUI9eQEvTUwnpKpHjW6TSKmWBAvLc/fjGCi/65Ps4DnL ZBK8gOtB4rNjlyX8GpmaoIFWFRzlggcrhJzIhboJkifXfrE1T+v2i1PYvK7Flgy9xnpb NDly7xDJMAJRRrqbqVTzrVUhJWRhNhnwL13A1fnnI2UpL6sBRC9LmzejVsFbJ9X25fvZ cobx4JbBViTlppMV9CmgHCGC5w3BN3LW4wcurPD8Sph9eUUIFs8oyvlV+p30gFhJjiLm 9x80GfxyTuufZzmkUbn5V32dDGnJErbLGTv4PTWouEt99J2/rYfSBtHNg58Ca3M73Yb0 2QyA== ARC-Authentication-Results: i=1; strato.com; arc=none; dkim=none X-RZG-CLASS-ID: mo00 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; t=1685629666; s=strato-dkim-0002; d=aepfle.de; h=Message-Id:Date:Subject:To:From:Cc:Date:From:Subject:Sender; bh=lWE44nLJoiGIiT9RDeVM4y1K+t+GFD3SlXFMd8iQ6wE=; b=eAtVVnZTGxYVkhi8DopcR2nsO6MdeeQ7mCcUpzkgezkHVI8YM3w+Ur1PgUJGuP7DN6 8zT5E3ETrd6DODAzZXFYnDCoagz1PfIcWHhoL+q9yDClO5eYuVBCqMZPYDyk7aXvahhy yz9mSw4iyQ4XTLL9Whhq/tG0Z9ggMkML8liLPkkX1fm+1c2Gd76db0P42WTSqcEoFNSx wX9+kL1IMEoErgm0GQoumitJZPpf5zfso8RgsDlSbrq4yEZvhniHGFA4S3Q7rkHEz00i dBzJdrWOtXIFpW12O1vvrAxDGLf6v7S4XfFVWPyX/HqtJwaFEvmwhkgCQNZyK7VzMrxO ybPQ== DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; t=1685629666; s=strato-dkim-0003; d=aepfle.de; h=Message-Id:Date:Subject:To:From:Cc:Date:From:Subject:Sender; bh=lWE44nLJoiGIiT9RDeVM4y1K+t+GFD3SlXFMd8iQ6wE=; b=O9Blas3s2oBWoKMCDrtmVccs2JW/0uC9IjVgtDFlhFQXuEF299sZodS6t1DLeonOLk IuO/fF7tYpJ0BTHsFfBw== X-RZG-AUTH: ":P2EQZWCpfu+qG7CngxMFH1J+3q8wa/QXkBR9MXjAuzpIG0mv9coXAg4xqFv7EJ0tgRX/vKfT/e8Ig6v0dNw4QAWpzMWrRQ==" From: Olaf Hering To: xen-devel@lists.xenproject.org Subject: [PATCH v1 0/7] xentrace changes Date: Thu, 1 Jun 2023 16:27:35 +0200 Message-Id: <20230601142742.15489-1-olaf@aepfle.de> X-Mailer: git-send-email 2.35.3 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain; charset="us-ascii" Olaf Hering (7): xentrace: remove unimplemented option from man page xentrace: use correct output format for pit and rtc xenalyze: sync with vmx.h, use EXIT_REASON_PENDING_VIRT_INTR xenalyze: sync with vmx.h, use EXIT_REASON_VMXOFF xenalyze: sync with vmx.h, use EXIT_REASON_VMXON xenalyze: sync with vmx.h, use EXIT_REASON_MCE_DURING_VMENTRY xenalyze: handle more potential exit reason values from vmx.h docs/man/xentrace.8.pod | 4 ---- tools/xentrace/formats | 4 ++-- tools/xentrace/xenalyze.c | 46 ++++++++++++++++++++++++++++----------- 3 files changed, 35 insertions(+), 19 deletions(-) From xen-devel-bounces@lists.xenproject.org Thu Jun 01 14:28:14 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 14:28:14 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542544.846523 (Exim 4.92) (envelope-from ) id 1q4jHY-0006Pe-IM; Thu, 01 Jun 2023 14:28:04 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542544.846523; Thu, 01 Jun 2023 14:28:04 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4jHY-0006PX-Eb; Thu, 01 Jun 2023 14:28:04 +0000 Received: by outflank-mailman (input) for mailman id 542544; Thu, 01 Jun 2023 14:28:03 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4jHX-0006Od-6m for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 14:28:03 +0000 Received: from mo4-p00-ob.smtp.rzone.de (mo4-p00-ob.smtp.rzone.de [85.215.255.23]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 8354966e-0088-11ee-8611-37d641c3527e; Thu, 01 Jun 2023 16:28:01 +0200 (CEST) Received: from sender by smtp.strato.de (RZmta 49.5.3 AUTH) with ESMTPSA id L38909z51ERr1Sk (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256 bits)) (Client did not present a certificate); Thu, 1 Jun 2023 16:27:53 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 8354966e-0088-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; t=1685629673; cv=none; d=strato.com; s=strato-dkim-0002; b=sJriocoYi7qieJcktu3vYQ1uYhv59B5RhT5eGihspvpS/Qr5KvXZbJEqpbPt9+dHOb 11WkBJhC8ta5pyMFYj5o5VM/EpUNAgXlVGo2e0P+y76vOrHTGkNCdNuL9mWQ2TdOHnyo xHIDVoMAdBbM0OKN3LZEXsHGIsaLCEfZLUyeLKEFoOf1qn3qIKhlFfrkBYoL6P41RfQG +BMbVPkizCipYeXhQkr1bzsbKSMn54iJT2GAFgyc840XldxA1HC7tKl1qZ7Sw3BOfw4N SFe986SMN3qmJ51xSOPGRGBeK6+xD6m9JLRaB03u6eU0J6KpDdokGcGw9fp3RPhXweFg KPpw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; t=1685629673; s=strato-dkim-0002; d=strato.com; h=References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:Cc:Date: From:Subject:Sender; bh=yHH/K7mLKUIuVEhep20I7pu3fZbR52QQbMM0Cljd+e4=; b=XRgIqSKsXdDVi8I6JweiJyqIEj5kEPp6r3FYeyOEJgzmYm9wj6faBbNmN0ongQPcO2 eBUwRLsjjEDQfQaFPfBHfOmHsV14RI3KXfFBgV7mEQF0JfLFjcMoiBLELc09MSqV3EFq 6kFa0PP7W9hhy6X7jIgwIq3ppxN9J0QvGdMDMwL4XnXEeoHyrzxIixD9Igkbx0uqKbZi dvuSg/syyYQeWWF6glmcTXOd3ZhXqeVl45bd6roVKOAIROVCLAE+eFaY+JidoRSpyQ/e EJtSPmWck1275GOhltziklOa9adsGDLnYx7OklcjZKFnsYOxf9e/DES59bdXHh/hRNo2 782w== ARC-Authentication-Results: i=1; strato.com; arc=none; dkim=none X-RZG-CLASS-ID: mo00 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; t=1685629673; s=strato-dkim-0002; d=aepfle.de; h=References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:Cc:Date: From:Subject:Sender; bh=yHH/K7mLKUIuVEhep20I7pu3fZbR52QQbMM0Cljd+e4=; b=NUxyFsZvRq9KzWZcs8dNGLUTBfCJ2RkB0lnGJy/vAsTmmvBd0yoMnFOhQmebo1k1Ow LDJc520CDRnGGAGv1Yb3dmx8TUtGaKTI9sn1rMY4jMMQxhEfHyiC22ob6AlUoAZkX9La iXeqQe76DmQCNUOw+SWeKxsAlhjE19s6YWBTPDY9C6sDTEoQCXhhmyYjXVpWTbn8T5bI fhm56mL6C7lfoVzqrT+yw9uOJRmQDAsllONOXi1oUiSffhqPg037Fd1iRSEYHQGZspAc mkTZlSRiWg2q6e8SWd78Dky8XosBL8ta9cyGmtLQNPiKdUthNY1AYBZ/FAn7AO+cvl+n UmtQ== DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; t=1685629673; s=strato-dkim-0003; d=aepfle.de; h=References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:Cc:Date: From:Subject:Sender; bh=yHH/K7mLKUIuVEhep20I7pu3fZbR52QQbMM0Cljd+e4=; b=7S/bqvTDfDoEkI4pHVWxU2Ga0h711EvwcxLawl/g9cxzTxAEA0DenCl77W6Ej0mBaE rR4oUUQORzhqpn0azACg== X-RZG-AUTH: ":P2EQZWCpfu+qG7CngxMFH1J+3q8wa/QXkBR9MXjAuzpIG0mv9coXAg4xqFv7EJ0tgRX/vKfT/e8Ig6v0dNw4QAWpzMWrRQ==" From: Olaf Hering To: xen-devel@lists.xenproject.org Cc: Wei Liu , Anthony PERARD Subject: [PATCH v1 1/7] xentrace: remove unimplemented option from man page Date: Thu, 1 Jun 2023 16:27:36 +0200 Message-Id: <20230601142742.15489-2-olaf@aepfle.de> X-Mailer: git-send-email 2.35.3 In-Reply-To: <20230601142742.15489-1-olaf@aepfle.de> References: <20230601142742.15489-1-olaf@aepfle.de> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain; charset="us-ascii" The documented option --usage worked because every unknown option showed the help. Signed-off-by: Olaf Hering --- docs/man/xentrace.8.pod | 4 ---- 1 file changed, 4 deletions(-) diff --git a/docs/man/xentrace.8.pod b/docs/man/xentrace.8.pod index 69aef05f65..4c174a84c0 100644 --- a/docs/man/xentrace.8.pod +++ b/docs/man/xentrace.8.pod @@ -69,10 +69,6 @@ set event capture mask. If not specified the TRC_ALL will be used. =item B<-?>, B<--help> -Give this help list - -=item B<--usage> - Give a short usage message =item B<-V>, B<--version> From xen-devel-bounces@lists.xenproject.org Thu Jun 01 14:28:18 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 14:28:18 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542545.846532 (Exim 4.92) (envelope-from ) id 1q4jHb-0006iU-Uz; Thu, 01 Jun 2023 14:28:07 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542545.846532; Thu, 01 Jun 2023 14:28:07 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4jHb-0006iJ-Rv; Thu, 01 Jun 2023 14:28:07 +0000 Received: by outflank-mailman (input) for mailman id 542545; Thu, 01 Jun 2023 14:28:07 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4jHb-00066T-3W for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 14:28:07 +0000 Received: from mo4-p01-ob.smtp.rzone.de (mo4-p01-ob.smtp.rzone.de [85.215.255.54]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 8621ad0a-0088-11ee-b231-6b7b168915f2; Thu, 01 Jun 2023 16:28:06 +0200 (CEST) Received: from sender by smtp.strato.de (RZmta 49.5.3 AUTH) with ESMTPSA id L38909z51ERw1Sm (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256 bits)) (Client did not present a certificate); Thu, 1 Jun 2023 16:27:58 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 8621ad0a-0088-11ee-b231-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; t=1685629678; cv=none; d=strato.com; s=strato-dkim-0002; b=r/eu1fIER1wPtZpC+xC77N6N7DJLuru5V1w9oFBuvxjO5WUkg8NrG4CtdMC5BcCLO+ A6k7twbEcn6oKNcybOKlsc3AKnbfz7LGXC+JTLuenYilG2jbmyP4wS1e0LsQnsi+Ijmr wYQrXcopUZYpgGyae55grBaS10fh2ASOcF5OjVwMwnH0DJGC2xoRmWRTnYjTxllde9nF iX8s71tIXigDG2ayhNrt0v1utwjcrkVzCMvivlM6SxDdf9fm3xETwBhEcYlC1mNAR5Bd zgIhe3oKLd/phROPzvWAOtzff7ipGsuATRxIv7HslBIVKhum/+azFuqa/mXOtSBfz3uS 3GWA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; t=1685629678; s=strato-dkim-0002; d=strato.com; h=References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:Cc:Date: From:Subject:Sender; bh=Ycz8f4S+YBpjwDakc+Obg3kVrNZi3RzeWmvuw/COUYA=; b=bpf85c1++ih3Ove1r592do1uITxcPaD31yENAjapJ9D5EcO0doWfqZ8TExpczXA5N7 ospyr40816WHbdGMbCPWHaOJsU4sDhc2q2aXz7dQPuFb/dj0zZj1L59Lll24NZ7FlaDX 12zNCcOEgt02alAoH4vretWqQPz6xFGdvBe9jnHLsgMSIqvDPb6tsU519g5WC0hRmp6I oZElnIGXCf1yXK6gO4epLDPLxFoiNU3UkTKBzAVj7PWfTh2MOQ+FVYACa3s37VHnrlqC UU6XGiNT/ha8vVOy++JY0RGsnGeqpTZly4EVxGrlvSktKGRCyC2pPbeiml/AhYrN5R0F U6Jg== ARC-Authentication-Results: i=1; strato.com; arc=none; dkim=none X-RZG-CLASS-ID: mo01 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; t=1685629678; s=strato-dkim-0002; d=aepfle.de; h=References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:Cc:Date: From:Subject:Sender; bh=Ycz8f4S+YBpjwDakc+Obg3kVrNZi3RzeWmvuw/COUYA=; b=PFTAfY8BdVyFK3M5hmk0NxfmH0KBGS3IvFEy8DSDdbJ5ydt5H4UtVfEnwDkFamiTzK XvEH0JCTlaUJspRrwSAOik+HkOCrWtWjHK90Xut8HvHunEKULxNZLr4PC748Y/tRhZiS HdfZERiDTkBy6vbQJO0in4xsbEHnUytI4JdWJnWIfgQeuPTsuuOumPYVNYskxDC7azlA gA8QrJn0XLUzAXcPAVY2phzUmK+voH1ZdUMcKeRFiDzotI8qPolEfWqiFOfhLYRzmo6O 1ewt8W9Oeo43CzQTZ/UvJbOrBJ+G+O27b6JKwd9ZbXB0gQs5LzfW9q3z3ckxsiM+6Sjc rC5w== DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; t=1685629678; s=strato-dkim-0003; d=aepfle.de; h=References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:Cc:Date: From:Subject:Sender; bh=Ycz8f4S+YBpjwDakc+Obg3kVrNZi3RzeWmvuw/COUYA=; b=jPeOf2U4nhZ/BQZKRx1Hm0HaDs/pgr8xOyOlw2IYdmDb/XGB/XBveXnMUgq4EVNnlN ccz9cwRMgObZnfiWYQBg== X-RZG-AUTH: ":P2EQZWCpfu+qG7CngxMFH1J+3q8wa/QXkBR9MXjAuzpIG0mv9coXAg4xqFv7EJ0tgRX/vKfT/e8Ig6v0dNw4QAWpzMWrRQ==" From: Olaf Hering To: xen-devel@lists.xenproject.org Cc: George Dunlap , Wei Liu , Anthony PERARD Subject: [PATCH v1 2/7] xentrace: use correct output format for pit and rtc Date: Thu, 1 Jun 2023 16:27:37 +0200 Message-Id: <20230601142742.15489-3-olaf@aepfle.de> X-Mailer: git-send-email 2.35.3 In-Reply-To: <20230601142742.15489-1-olaf@aepfle.de> References: <20230601142742.15489-1-olaf@aepfle.de> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain; charset="us-ascii" The input values were always 32bit. Fixes 55ee5dea32 ("xentrace: add TRC_HVM_EMUL") Signed-off-by: Olaf Hering --- tools/xentrace/formats | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tools/xentrace/formats b/tools/xentrace/formats index 0fcc327a40..afb5ee0112 100644 --- a/tools/xentrace/formats +++ b/tools/xentrace/formats @@ -211,8 +211,8 @@ 0x00802008 CPU%(cpu)d %(tsc)d (+%(reltsc)8d) do_irq [ irq = %(1)d, began = %(2)dus, ended = %(3)dus ] 0x00084001 CPU%(cpu)d %(tsc)d (+%(reltsc)8d) hpet create [ tn = %(1)d, irq = %(2)d, delta = 0x%(4)08x%(3)08x, period = 0x%(6)08x%(5)08x ] -0x00084002 CPU%(cpu)d %(tsc)d (+%(reltsc)8d) pit create [ delta = 0x%(1)016x, period = 0x%(2)016x ] -0x00084003 CPU%(cpu)d %(tsc)d (+%(reltsc)8d) rtc create [ delta = 0x%(1)016x , period = 0x%(2)016x ] +0x00084002 CPU%(cpu)d %(tsc)d (+%(reltsc)8d) pit create [ delta = 0x%(1)08x, period = 0x%(2)08x ] +0x00084003 CPU%(cpu)d %(tsc)d (+%(reltsc)8d) rtc create [ delta = 0x%(1)08x, period = 0x%(2)08x ] 0x00084004 CPU%(cpu)d %(tsc)d (+%(reltsc)8d) vlapic create [ delta = 0x%(2)08x%(1)08x , period = 0x%(4)08x%(3)08x, irq = %(5)d ] 0x00084005 CPU%(cpu)d %(tsc)d (+%(reltsc)8d) hpet destroy [ tn = %(1)d ] 0x00084006 CPU%(cpu)d %(tsc)d (+%(reltsc)8d) pit destroy [ ] From xen-devel-bounces@lists.xenproject.org Thu Jun 01 14:28:18 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 14:28:18 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542546.846542 (Exim 4.92) (envelope-from ) id 1q4jHd-000709-6m; Thu, 01 Jun 2023 14:28:09 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542546.846542; Thu, 01 Jun 2023 14:28:09 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4jHd-000702-3t; Thu, 01 Jun 2023 14:28:09 +0000 Received: by outflank-mailman (input) for mailman id 542546; Thu, 01 Jun 2023 14:28:08 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4jHc-00066T-59 for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 14:28:08 +0000 Received: from mo4-p01-ob.smtp.rzone.de (mo4-p01-ob.smtp.rzone.de [81.169.146.165]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 86e6c215-0088-11ee-b231-6b7b168915f2; Thu, 01 Jun 2023 16:28:07 +0200 (CEST) Received: from sender by smtp.strato.de (RZmta 49.5.3 AUTH) with ESMTPSA id L38909z51ES11So (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256 bits)) (Client did not present a certificate); Thu, 1 Jun 2023 16:28:01 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 86e6c215-0088-11ee-b231-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; t=1685629681; cv=none; d=strato.com; s=strato-dkim-0002; b=RdU2wH2wP6gPwbVMH62EKme8z/QCnUaXOiHFqncxlGmIdDBvPrbQourb0aBlOgOH/V obEQFi3tltEgdnzIzBgndNvHBHtH5tXZ0ovBWCdbGXBvgz/+pejT5xN5BaJjHBypQ7AQ 5ZFXDh0YBj01CetBE82YDSTEhuH/wYsqlPU8mq2E0T3TR4XoqYpzGn2KAJbNln5WjRzi FLGFH4qIhYJG20bxyNK6+8QJvJxyF0tHqFUUdRfmPZ2UrAymCc1euy6GTpBbm2S1np75 DyoL4cv6zRYZTzWQdnpegGYyrtPTiMF9/1IyMQ2KwI04mWUQaFZEZcndXlylUS3XmRqh coSQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; t=1685629681; s=strato-dkim-0002; d=strato.com; h=References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:Cc:Date: From:Subject:Sender; bh=j6XBpMmDw+ppBy9pdGC4zIeWbEgfy6izbkgl65jdiEw=; b=qJMe87sKlyuMaZB4GpR5nWLyeFEz1xReFafLn9OtuY39fPVQK43uqR6HucyloRHzak r6iCLwWfGCbYkzg7zSNfTvpHF26kogC4aRlvVPdo2fSMHryaDig66ZK4iqW8LH1e6jTr 3KQbmuij/f24Zdvw0n4Yb1U0f7SsQnlKHXoKkgQ8rfOh4G6xbuMRF21X6eRWlk4RJKgW U90i698cXEHjZSLv2NRTXgfLxAEANirPVD3RjzX/yde1YZjhoHCXu4XtKQJjN6RiO7X0 NsctqvyZph6HpnMbOeuVM6A48fEoAAPm9pzuUFWvJEai3OBP6zFjWWllNyJe5KEPMp65 djzA== ARC-Authentication-Results: i=1; strato.com; arc=none; dkim=none X-RZG-CLASS-ID: mo01 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; t=1685629681; s=strato-dkim-0002; d=aepfle.de; h=References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:Cc:Date: From:Subject:Sender; bh=j6XBpMmDw+ppBy9pdGC4zIeWbEgfy6izbkgl65jdiEw=; b=hYFBOR4+N24HBqH7GBW6Qcmj2MK/zxJ9kFTOQdnTwbDB/1DXy0aiRbWO5jxKEAUXMJ Mp6v9zgB3pI8BJPKILRaLTj0qYFOkueRgX46SBJW0eUdj9fOsP9n1prpVEOOg80itDOV px4cA+qv1FZTYBpRhQmQBoKH1+yLG53dwArkJwdv5QSDAZYeXl6dG0rlMN8bQ1Cvc2Cf 1P2wXENH7yWKVZb8JiMR1rfeBOR7V6RosILrNT+XkQ0oV2HADWLHXAhcGCcI+NijkhbQ iNBlpxlDIPBuCuDwhfCdPhl6VSHV9cXPO1+lPop66vGMqhaIGCturjJhMuR4qCCUbMLi pRdw== DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; t=1685629681; s=strato-dkim-0003; d=aepfle.de; h=References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:Cc:Date: From:Subject:Sender; bh=j6XBpMmDw+ppBy9pdGC4zIeWbEgfy6izbkgl65jdiEw=; b=5nc3yv1RMR484ne3P7YoKcYcBhohN8FvCgQkyKZruYSi2v0xkJZQS8/d5kaiy17XMX rAUTrvjMRd1xYKEWQTAg== X-RZG-AUTH: ":P2EQZWCpfu+qG7CngxMFH1J+3q8wa/QXkBR9MXjAuzpIG0mv9coXAg4xqFv7EJ0tgRX/vKfT/e8Ig6v0dNw4QAWpzMWrRQ==" From: Olaf Hering To: xen-devel@lists.xenproject.org Cc: George Dunlap , Wei Liu , Anthony PERARD Subject: [PATCH v1 3/7] xenalyze: sync with vmx.h, use EXIT_REASON_PENDING_VIRT_INTR Date: Thu, 1 Jun 2023 16:27:38 +0200 Message-Id: <20230601142742.15489-4-olaf@aepfle.de> X-Mailer: git-send-email 2.35.3 In-Reply-To: <20230601142742.15489-1-olaf@aepfle.de> References: <20230601142742.15489-1-olaf@aepfle.de> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain; charset="us-ascii" Signed-off-by: Olaf Hering --- tools/xentrace/xenalyze.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/tools/xentrace/xenalyze.c b/tools/xentrace/xenalyze.c index a50538e9a8..1cae055ef4 100644 --- a/tools/xentrace/xenalyze.c +++ b/tools/xentrace/xenalyze.c @@ -447,7 +447,7 @@ struct { #define EXIT_REASON_SIPI 4 #define EXIT_REASON_IO_SMI 5 #define EXIT_REASON_OTHER_SMI 6 -#define EXIT_REASON_PENDING_INTERRUPT 7 +#define EXIT_REASON_PENDING_VIRT_INTR 7 #define EXIT_REASON_PENDING_VIRT_NMI 8 #define EXIT_REASON_TASK_SWITCH 9 #define EXIT_REASON_CPUID 10 @@ -503,7 +503,7 @@ const char * hvm_vmx_exit_reason_name[HVM_VMX_EXIT_REASON_MAX] = { [EXIT_REASON_SIPI]="SIPI", [EXIT_REASON_IO_SMI]="IO_SMI", [EXIT_REASON_OTHER_SMI]="OTHER_SMI", - [EXIT_REASON_PENDING_INTERRUPT]="PENDING_INTERRUPT", + [EXIT_REASON_PENDING_VIRT_INTR]="PENDING_VIRT_INTR", [EXIT_REASON_PENDING_VIRT_NMI]="PENDING_VIRT_NMI", [EXIT_REASON_TASK_SWITCH]="TASK_SWITCH", [EXIT_REASON_CPUID]="CPUID", @@ -4632,7 +4632,7 @@ void hvm_generic_postprocess(struct hvm_data *h) switch(h->exit_reason) { /* These just need us to go through the return path */ - case EXIT_REASON_PENDING_INTERRUPT: + case EXIT_REASON_PENDING_VIRT_INTR: case EXIT_REASON_TPR_BELOW_THRESHOLD: /* Not much to log now; may need later */ case EXIT_REASON_WBINVD: From xen-devel-bounces@lists.xenproject.org Thu Jun 01 14:28:18 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 14:28:18 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542550.846563 (Exim 4.92) (envelope-from ) id 1q4jHm-0007pB-PK; Thu, 01 Jun 2023 14:28:18 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542550.846563; Thu, 01 Jun 2023 14:28:18 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4jHm-0007ol-LM; Thu, 01 Jun 2023 14:28:18 +0000 Received: by outflank-mailman (input) for mailman id 542550; Thu, 01 Jun 2023 14:28:17 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4jHl-00066T-5b for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 14:28:17 +0000 Received: from mo4-p02-ob.smtp.rzone.de (mo4-p02-ob.smtp.rzone.de [85.215.255.84]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 8bf95890-0088-11ee-b231-6b7b168915f2; Thu, 01 Jun 2023 16:28:16 +0200 (CEST) Received: from sender by smtp.strato.de (RZmta 49.5.3 AUTH) with ESMTPSA id L38909z51ES81Ss (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256 bits)) (Client did not present a certificate); Thu, 1 Jun 2023 16:28:08 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 8bf95890-0088-11ee-b231-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; t=1685629688; cv=none; d=strato.com; s=strato-dkim-0002; b=Ove1LYdv1F1zZ8/lpMv+lHx1waTDajyudAE3Xrpyk4C2HjAve37r3cRDF98o0ntc0u bdXFL8YECsCHmA1IuezW0oDoMPgW065xk+a3adcAeLXimYUVmYP9zsJjP3oQ7bknsyK0 F144FoHuLno6y9+ZhUqL+pAa4IrV70aRzCvTZZzd+YDliwBH1r5bAfXV+3ifV/X9Ho10 rQ8aW5cnTjoGryRs9xV7NiShLv6gDE0sjkzOaavHcfMgztDfggWVOYdPC69A893uVlmO fnqmQJf/hQpUxh26yqSg1Eshb6xckb3t55VktBMeaMcwqHIXRG4BycsEqUyh/I9VCLfI R4HQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; t=1685629688; s=strato-dkim-0002; d=strato.com; h=References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:Cc:Date: From:Subject:Sender; bh=I9MWc2n55o6vA3siJudYHwyC8auPsBD7aRozeGWe0dM=; b=mq/+ErMzu2+6i9NEILZZPJ7nqq7VT6lecnh/JfELPWoo6EVWSQZU7V2xWiputaU61Q NgPG8WKD25fVyJ9dhCko0Llt/q3pU/ytTvfaxt8esBZESBBn+bNSpPbgtoomprxJ9QCY RqTY2t5JbruDR+QiwO0GcsSPVHTDDdXzN4gvcNYctnI8Yc8+nV93WQWmQfhBSKR2JJRv 5YlaimMfNxen2cwOnU+e6SqZd+3lVhpElx3g+pAx/icABy0TnlDi/Nw2ZFFPl6Gd1wDK XUlJrCV14umHPZt46IUD5Fky+7b07RWaekKdcSf//qWuSE9+MkyNBsGVZ144geqCDjJO +yIA== ARC-Authentication-Results: i=1; strato.com; arc=none; dkim=none X-RZG-CLASS-ID: mo02 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; t=1685629688; s=strato-dkim-0002; d=aepfle.de; h=References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:Cc:Date: From:Subject:Sender; bh=I9MWc2n55o6vA3siJudYHwyC8auPsBD7aRozeGWe0dM=; b=g7vJ6BhztBPcl21ZmU7lSi66ztSigfRoQDag53c4QRS3Oh957a19IJXq+ItyeDLZzg upmWrSALfglNvS2fs/oGPx+H5MZT1KN7nbVXAnlez4VYodneFcxbFf3InQc3WC+bc3rN 9Q8aMeLJrt8Kl47Y9rTTR3NtMa7yrEfaG9clJLyCPMneaCSl7kDBR7yU7sJSBnkio5Z2 K8sIMPjcxXJMFDewZNqGH3wbraiTmbac4H6crKXMtnHYTHWtubWIFvKbN53qFpx+4d1w ozO/bJJHkuPQz3TxhRWP/eGkBY5sdQrhnEJmUKrB2H+d+SF+FHwrkB1NTi6/aYK5/J7H FKUA== DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; t=1685629688; s=strato-dkim-0003; d=aepfle.de; h=References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:Cc:Date: From:Subject:Sender; bh=I9MWc2n55o6vA3siJudYHwyC8auPsBD7aRozeGWe0dM=; b=xludnOnizQuRw6Sf+zLW9P6bkBSgGunnb0O7nbaGDdBauEjDLDeCarcfaGOC9ODjo+ pi0FaES0IxFOq9GqMlAw== X-RZG-AUTH: ":P2EQZWCpfu+qG7CngxMFH1J+3q8wa/QXkBR9MXjAuzpIG0mv9coXAg4xqFv7EJ0tgRX/vKfT/e8Ig6v0dNw4QAWpzMWrRQ==" From: Olaf Hering To: xen-devel@lists.xenproject.org Cc: George Dunlap , Wei Liu , Anthony PERARD Subject: [PATCH v1 6/7] xenalyze: sync with vmx.h, use EXIT_REASON_MCE_DURING_VMENTRY Date: Thu, 1 Jun 2023 16:27:41 +0200 Message-Id: <20230601142742.15489-7-olaf@aepfle.de> X-Mailer: git-send-email 2.35.3 In-Reply-To: <20230601142742.15489-1-olaf@aepfle.de> References: <20230601142742.15489-1-olaf@aepfle.de> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain; charset="us-ascii" Signed-off-by: Olaf Hering --- tools/xentrace/xenalyze.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tools/xentrace/xenalyze.c b/tools/xentrace/xenalyze.c index 88c3d5f873..9635ff453a 100644 --- a/tools/xentrace/xenalyze.c +++ b/tools/xentrace/xenalyze.c @@ -479,7 +479,7 @@ struct { #define EXIT_REASON_MONITOR_TRAP_FLAG 37 #define EXIT_REASON_MONITOR_INSTRUCTION 39 #define EXIT_REASON_PAUSE_INSTRUCTION 40 -#define EXIT_REASON_MACHINE_CHECK 41 +#define EXIT_REASON_MCE_DURING_VMENTRY 41 #define EXIT_REASON_TPR_BELOW_THRESHOLD 43 #define EXIT_REASON_APIC_ACCESS 44 #define EXIT_REASON_ACCESS_GDTR_OR_IDTR 46 @@ -535,7 +535,7 @@ const char * hvm_vmx_exit_reason_name[HVM_VMX_EXIT_REASON_MAX] = { [EXIT_REASON_MONITOR_TRAP_FLAG]="MONITOR_TRAP_FLAG", [EXIT_REASON_MONITOR_INSTRUCTION]="MONITOR_INSTRUCTION", [EXIT_REASON_PAUSE_INSTRUCTION]="PAUSE_INSTRUCTION", - [EXIT_REASON_MACHINE_CHECK]="MACHINE_CHECK", + [EXIT_REASON_MCE_DURING_VMENTRY]="MCE_DURING_VMENTRY", [EXIT_REASON_TPR_BELOW_THRESHOLD]="TPR_BELOW_THRESHOLD", [EXIT_REASON_APIC_ACCESS]="APIC_ACCESS", [EXIT_REASON_EPT_VIOLATION]="EPT_VIOLATION", From xen-devel-bounces@lists.xenproject.org Thu Jun 01 14:28:19 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 14:28:19 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542547.846553 (Exim 4.92) (envelope-from ) id 1q4jHf-0007Jy-Ff; Thu, 01 Jun 2023 14:28:11 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542547.846553; Thu, 01 Jun 2023 14:28:11 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4jHf-0007Jr-Bo; Thu, 01 Jun 2023 14:28:11 +0000 Received: by outflank-mailman (input) for mailman id 542547; Thu, 01 Jun 2023 14:28:09 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4jHd-0006Od-FO for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 14:28:09 +0000 Received: from mo4-p01-ob.smtp.rzone.de (mo4-p01-ob.smtp.rzone.de [81.169.146.165]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 8706b633-0088-11ee-8611-37d641c3527e; Thu, 01 Jun 2023 16:28:07 +0200 (CEST) Received: from sender by smtp.strato.de (RZmta 49.5.3 AUTH) with ESMTPSA id L38909z51ES31Sp (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256 bits)) (Client did not present a certificate); Thu, 1 Jun 2023 16:28:03 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 8706b633-0088-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; t=1685629683; cv=none; d=strato.com; s=strato-dkim-0002; b=V2AqSPRTo2ADTBlHivIVmoTl6fbKn6rALIEKD0CK1dgvAg5Eym3dYkbWjRJXmvg4ZQ 3lpQuVHF8f5/wOufxMZ9gcH4Kk2fZaQW1hPrAycUd2m2pE3ihewnB1PizLVnzz9YXhNE +L74NdAkQln/4Nt4W6ESDQeO1ZsvJMTAnGaTtPHiZlUduY7C5iTiK2te5fCpU3HkJn2J KhLf+lM1CeWE7T26SGAZ9Sm9dDO3LP8OGpGPHtTFW58TsXPgvwkWWHuWwfO3nVCNbG24 0CqRMhT5Emn+SD1x+8Klghz+0doOIPFxL0576CLTlJVsZXN3b0si9al26gReeUbtRdq0 oYDw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; t=1685629683; s=strato-dkim-0002; d=strato.com; h=References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:Cc:Date: From:Subject:Sender; bh=xbEvrUB85PE48j/FXd9UoILkjnq6sVytJsciS71Vlqk=; b=aAZILsivoofiPA8eOXvwifi1Qtilm4q5oGH1VeuW/rS7lsfklpZBCKbXw4r0l53X9N AcmfmPztGQgZKaUB29h2QfgvN426qUO6oEFsLQaJAybU7UDhPJOmTXJDpZmLd7KXyWQC hi40pvhocxOrG5hQAxbs9TQUcBErT0YaKjRcw54VNP4MQbTKQpK5jcf6zQ15yr5Zn3NP Pc4l9dDN0YvwnG0ANYBHJ75Ayu1Ee43MRvMH3d6tlAdU3W1cQGIOhqEeD6QYx8HckEXX flEuSVm4pA8pvTjjtNl1Ac0EkfYtaIl3WC9BA25+N3SD3jX3W+26DGTrTfu02ll7vinB tCAQ== ARC-Authentication-Results: i=1; strato.com; arc=none; dkim=none X-RZG-CLASS-ID: mo01 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; t=1685629683; s=strato-dkim-0002; d=aepfle.de; h=References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:Cc:Date: From:Subject:Sender; bh=xbEvrUB85PE48j/FXd9UoILkjnq6sVytJsciS71Vlqk=; b=Vy38Eq7x8yzBr6kdTpvniKyWwah/aYicFwoiOz4B/PEZ/Rtsdr/e9Kl2/auVpXXmnJ WzgVcsY+iWBH2GNvYUOzzpPzT1QxQImcMfxr9YwTkU6bffB+6O0oPGS4jl3dXY19zZHM g76kX+eBCbEhyC8lJldCHMe0oVSP7+7JKno0sFVOYzDW7PUgLeiUO9arnPwLM0Q5rCRW i74z0nqGeNiK4MIczK7UjiTPnoFmEQUfiHetkEmmYNiF+Vb0uLQqm4p7sKLB5hDt9h7m nJ6eh1ftIOJ5me7RigoKrQrYnlgh7gONyDvsPKmBMK32L2f+W3dnrpCMnA1gY1vAl2NW ReMw== DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; t=1685629683; s=strato-dkim-0003; d=aepfle.de; h=References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:Cc:Date: From:Subject:Sender; bh=xbEvrUB85PE48j/FXd9UoILkjnq6sVytJsciS71Vlqk=; b=Hs4rrx8I/RUD3nHSaz4jwvkmnxPToiqLb3RE+rmgtd9E3E3/6FbO9v16KJA7hqOStc ptaaTYlPfqpkfBqWK5BQ== X-RZG-AUTH: ":P2EQZWCpfu+qG7CngxMFH1J+3q8wa/QXkBR9MXjAuzpIG0mv9coXAg4xqFv7EJ0tgRX/vKfT/e8Ig6v0dNw4QAWpzMWrRQ==" From: Olaf Hering To: xen-devel@lists.xenproject.org Cc: George Dunlap , Wei Liu , Anthony PERARD Subject: [PATCH v1 4/7] xenalyze: sync with vmx.h, use EXIT_REASON_VMXOFF Date: Thu, 1 Jun 2023 16:27:39 +0200 Message-Id: <20230601142742.15489-5-olaf@aepfle.de> X-Mailer: git-send-email 2.35.3 In-Reply-To: <20230601142742.15489-1-olaf@aepfle.de> References: <20230601142742.15489-1-olaf@aepfle.de> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain; charset="us-ascii" Signed-off-by: Olaf Hering --- tools/xentrace/xenalyze.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tools/xentrace/xenalyze.c b/tools/xentrace/xenalyze.c index 1cae055ef4..d2e6c77590 100644 --- a/tools/xentrace/xenalyze.c +++ b/tools/xentrace/xenalyze.c @@ -466,7 +466,7 @@ struct { #define EXIT_REASON_VMREAD 23 #define EXIT_REASON_VMRESUME 24 #define EXIT_REASON_VMWRITE 25 -#define EXIT_REASON_VMOFF 26 +#define EXIT_REASON_VMXOFF 26 #define EXIT_REASON_VMON 27 #define EXIT_REASON_CR_ACCESS 28 #define EXIT_REASON_DR_ACCESS 29 @@ -522,7 +522,7 @@ const char * hvm_vmx_exit_reason_name[HVM_VMX_EXIT_REASON_MAX] = { [EXIT_REASON_VMREAD]="VMREAD", [EXIT_REASON_VMRESUME]="VMRESUME", [EXIT_REASON_VMWRITE]="VMWRITE", - [EXIT_REASON_VMOFF]="VMOFF", + [EXIT_REASON_VMXOFF]="VMXOFF", [EXIT_REASON_VMON]="VMON", [EXIT_REASON_CR_ACCESS]="CR_ACCESS", [EXIT_REASON_DR_ACCESS]="DR_ACCESS", From xen-devel-bounces@lists.xenproject.org Thu Jun 01 14:28:19 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 14:28:19 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542551.846567 (Exim 4.92) (envelope-from ) id 1q4jHn-0007sk-67; Thu, 01 Jun 2023 14:28:19 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542551.846567; Thu, 01 Jun 2023 14:28:19 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4jHn-0007sQ-05; Thu, 01 Jun 2023 14:28:19 +0000 Received: by outflank-mailman (input) for mailman id 542551; Thu, 01 Jun 2023 14:28:18 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4jHm-00066T-48 for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 14:28:18 +0000 Received: from mo4-p01-ob.smtp.rzone.de (mo4-p01-ob.smtp.rzone.de [85.215.255.51]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 8be95341-0088-11ee-b231-6b7b168915f2; Thu, 01 Jun 2023 16:28:16 +0200 (CEST) Received: from sender by smtp.strato.de (RZmta 49.5.3 AUTH) with ESMTPSA id L38909z51ES51Sr (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256 bits)) (Client did not present a certificate); Thu, 1 Jun 2023 16:28:05 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 8be95341-0088-11ee-b231-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; t=1685629685; cv=none; d=strato.com; s=strato-dkim-0002; b=SIOUw3EQmua1o2yYjwPMmZJASr8qKyB18adecfXyJTcidVR5teLqazBGF7tfTPWRCc ukgfcn2V5Q3ywavto+O4Br7if/vxBYUeh2MvFzzXTT6diYInabhG8d5qNjNUEZETN0ae qrxG1DkmFsHg9WRN9+lxN+6UxGZ6IBbljCCC7a9FIRcF5WUF2x4zMW+p/py7KokbxHNI E9JFGSS7APuuemkE6rXhWay6CBGLDF8S+1iN632dvMvL2NQ/x0ttb29QfCzFGH6mH+1U djVnGtw2lCSwoFFkLt804D65dvg52datdUbXnk+gJU/KYu1F088AauA44PnFDFFwG7g9 Zgtg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; t=1685629685; s=strato-dkim-0002; d=strato.com; h=References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:Cc:Date: From:Subject:Sender; bh=sEjTVHfAtskHvr19kdJi/74vu4hsTpqgsbMYJvEi80s=; b=hBziwFjJ1c9zxmW61CjU+NHyP9ICF3LDN4/Xlo8yc/tQNWV8ysN6ZIPJFyXGPPV6ry 617XZfslMvpSgDdi5ykSeF1l/Hto/HT58y2QW3A+VqAcibxJz5WmftOAeBWgYOm80NND vmL7EEDxxt/omdoU8uAuGAAnaM4kmxe+Z4NrFhjD5SIURzjRe0xhJXMaVcF0ouiUBhAW ChV6TSWt8K6xK711Sz6rKk8MUx1mo4fO1xbmi2iQVgH0zuolUPb/0CZwkJJPA/0GUu/b inCNtgsxAvVLf1EpMoYPdqM1tZBtCtMcblt9Ft9osoXiNJq3FGpBR1SCGofRdABmz86q Jb/w== ARC-Authentication-Results: i=1; strato.com; arc=none; dkim=none X-RZG-CLASS-ID: mo01 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; t=1685629685; s=strato-dkim-0002; d=aepfle.de; h=References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:Cc:Date: From:Subject:Sender; bh=sEjTVHfAtskHvr19kdJi/74vu4hsTpqgsbMYJvEi80s=; b=pMDxacqZHLaasY15wAueKT5OUZfIcZFvAp/ugSYRXXJmoyHChGM90QDbqPM+KxDGeA NWf29QfrGqCCZCkG8Z2D2amnxx37jcE1/3E1cljR3MfMJCn1jtebbZJNAYh4tQRLirEy 5EMW+C5YcTkLLEVQOTGWYC3svm2q9Vz1ZlHSUr5o08ps+nnpmRqkSx05mDkmqyQlj61z tsmRqxT38J1EDRRMx10VL8Ykahs4klBKMtkCgyr0HcBYcyiG1vzRiUAmw/JmFuLfBxCm kjRFrUUCUXmkk5fboN6DP+uGQfmyksQV4C2z62mr8wRJYmms7eBKLmlX6jdBGkL/aWBV CL8w== DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; t=1685629685; s=strato-dkim-0003; d=aepfle.de; h=References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:Cc:Date: From:Subject:Sender; bh=sEjTVHfAtskHvr19kdJi/74vu4hsTpqgsbMYJvEi80s=; b=JgS/g5VBquZoEB8kWoy9QgyeV88159RDKDae9L7Wu1jJ7QTw7bkEXRCsAts8ZzK2Qi JgSlEuQqoD5MMygOYfDA== X-RZG-AUTH: ":P2EQZWCpfu+qG7CngxMFH1J+3q8wa/QXkBR9MXjAuzpIG0mv9coXAg4xqFv7EJ0tgRX/vKfT/e8Ig6v0dNw4QAWpzMWrRQ==" From: Olaf Hering To: xen-devel@lists.xenproject.org Cc: George Dunlap , Wei Liu , Anthony PERARD Subject: [PATCH v1 5/7] xenalyze: sync with vmx.h, use EXIT_REASON_VMXON Date: Thu, 1 Jun 2023 16:27:40 +0200 Message-Id: <20230601142742.15489-6-olaf@aepfle.de> X-Mailer: git-send-email 2.35.3 In-Reply-To: <20230601142742.15489-1-olaf@aepfle.de> References: <20230601142742.15489-1-olaf@aepfle.de> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain; charset="us-ascii" Signed-off-by: Olaf Hering --- tools/xentrace/xenalyze.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tools/xentrace/xenalyze.c b/tools/xentrace/xenalyze.c index d2e6c77590..88c3d5f873 100644 --- a/tools/xentrace/xenalyze.c +++ b/tools/xentrace/xenalyze.c @@ -467,7 +467,7 @@ struct { #define EXIT_REASON_VMRESUME 24 #define EXIT_REASON_VMWRITE 25 #define EXIT_REASON_VMXOFF 26 -#define EXIT_REASON_VMON 27 +#define EXIT_REASON_VMXON 27 #define EXIT_REASON_CR_ACCESS 28 #define EXIT_REASON_DR_ACCESS 29 #define EXIT_REASON_IO_INSTRUCTION 30 @@ -523,7 +523,7 @@ const char * hvm_vmx_exit_reason_name[HVM_VMX_EXIT_REASON_MAX] = { [EXIT_REASON_VMRESUME]="VMRESUME", [EXIT_REASON_VMWRITE]="VMWRITE", [EXIT_REASON_VMXOFF]="VMXOFF", - [EXIT_REASON_VMON]="VMON", + [EXIT_REASON_VMXON]="VMXON", [EXIT_REASON_CR_ACCESS]="CR_ACCESS", [EXIT_REASON_DR_ACCESS]="DR_ACCESS", [EXIT_REASON_IO_INSTRUCTION]="IO_INSTRUCTION", From xen-devel-bounces@lists.xenproject.org Thu Jun 01 14:28:19 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 14:28:19 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542552.846571 (Exim 4.92) (envelope-from ) id 1q4jHn-0007xj-GU; Thu, 01 Jun 2023 14:28:19 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542552.846571; Thu, 01 Jun 2023 14:28:19 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4jHn-0007vu-Co; Thu, 01 Jun 2023 14:28:19 +0000 Received: by outflank-mailman (input) for mailman id 542552; Thu, 01 Jun 2023 14:28:18 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4jHm-0006Od-C5 for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 14:28:18 +0000 Received: from mo4-p02-ob.smtp.rzone.de (mo4-p02-ob.smtp.rzone.de [81.169.146.171]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 8c62c1b9-0088-11ee-8611-37d641c3527e; Thu, 01 Jun 2023 16:28:16 +0200 (CEST) Received: from sender by smtp.strato.de (RZmta 49.5.3 AUTH) with ESMTPSA id L38909z51ESD1St (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256 bits)) (Client did not present a certificate); Thu, 1 Jun 2023 16:28:13 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 8c62c1b9-0088-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; t=1685629693; cv=none; d=strato.com; s=strato-dkim-0002; b=GXTCs3A3z/A4tDwzDgPrnzO+QXZJFyTjXNCa1tFuCTDuaccbOzVIm/ileLQVJZZ/vY h1qJxVvDz9wWobfX6jIDmd8z3qiWNqI5CgxyEt2O5/U4Dm+8oPy1qaioPW2Svfp0UjLG RP29REsdwzf/AtB5S4Ppty1xr05YIHbFOfkpn16JAWVm+OinGN3fNw8rQRnTGu6ViXM3 ui/hZN3N5Gr70YVMLb5iv6nKYPGLqP8fAPbbxoHLhnqNe2kWifE8pOeo5HxzlBW3Hypn wkwnRIy3O0b0WIFDN1BLlxruCPt9cqr68/ILTG0pAd5wtN21n/83ILG819QAvbYR2Hw4 iVtg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; t=1685629693; s=strato-dkim-0002; d=strato.com; h=References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:Cc:Date: From:Subject:Sender; bh=SQPnzeSPdSzTN5oSP1cg888bULG0jZM8rNP+r5k/y38=; b=bRSqTxPWEgX+Q3mndArTMg/ytsqLcaVXZzI07FNpQPol2GmOXF3SXxHcX5bkJtDw/Q 3p2t0Vn84Sy+/uH4CODaowGkPhunRyWuIdZqDWYtPUbdLmUXUTYIy36X1vE4uAcnttB2 8B3ggFm8C1tCGxRlorGqyRhj4eJoUIEckZICUenGoAcPATuRCPUtE6MHg2BtWzyqndgg iGNs0ZZqFtglPNqopPS5GJNvSYtCd8rSaxcf9+Y8Y6JoAlKKIThtNCVIlv7ULwqSoW/Y tWwr5ilRH0v1ugpqf0wNRf15P0THto1t3Mz+MqAIHAxJ4ItrMKLomTMoraeidsWS/iC0 9eHA== ARC-Authentication-Results: i=1; strato.com; arc=none; dkim=none X-RZG-CLASS-ID: mo02 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; t=1685629693; s=strato-dkim-0002; d=aepfle.de; h=References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:Cc:Date: From:Subject:Sender; bh=SQPnzeSPdSzTN5oSP1cg888bULG0jZM8rNP+r5k/y38=; b=DLoJ7ayIeAIhsPq6GiRv8vPJw62l1ovEXlAlB247dZDRqFaBI79x4Q+tFhQf80TD7m u68Swltnp5PROnmexmB9go+sZygFQ9LKOoWr3rJv8MbMH/+cJkbsXzn5xBebTPkHT08h zuH46ynq1qNh3p+zHCUKP4E64mAidq/4tDJYOFNRP1/S405kmtnrI9ssIKAnBBCHDOKn 0bXKNWFpUFdhjpMifZEtlX7nYyGBBu9FnQR0H8eP8OWytdk3x5VKmA67TlIG9XautjAx OH8GJeGW3hOwlHJ5KcZlQ3+lQeYCn7wWWr3prWRlGzsZphIOKgWwny2D0c5XfiUnZzkX 7a6A== DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; t=1685629693; s=strato-dkim-0003; d=aepfle.de; h=References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:Cc:Date: From:Subject:Sender; bh=SQPnzeSPdSzTN5oSP1cg888bULG0jZM8rNP+r5k/y38=; b=GiPtReQAZDCrkIY7YgLqP1fmV57RMM38WKtlA6L4snx7wsYCuFq2nAlqzJbTRYl1mB xKU0mqEOEeYs5hECXxDA== X-RZG-AUTH: ":P2EQZWCpfu+qG7CngxMFH1J+3q8wa/QXkBR9MXjAuzpIG0mv9coXAg4xqFv7EJ0tgRX/vKfT/e8Ig6v0dNw4QAWpzMWrRQ==" From: Olaf Hering To: xen-devel@lists.xenproject.org Cc: George Dunlap , Wei Liu , Anthony PERARD Subject: [PATCH v1 7/7] xenalyze: handle more potential exit reason values from vmx.h Date: Thu, 1 Jun 2023 16:27:42 +0200 Message-Id: <20230601142742.15489-8-olaf@aepfle.de> X-Mailer: git-send-email 2.35.3 In-Reply-To: <20230601142742.15489-1-olaf@aepfle.de> References: <20230601142742.15489-1-olaf@aepfle.de> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain; charset="us-ascii" Copy and use more constants from vmx.h, to turn numbers into strings. Adjust the REASON_MAX value accordingly. Remove the size constraint from string array, the compiler will grow it as needed. Signed-off-by: Olaf Hering --- tools/xentrace/xenalyze.c | 28 ++++++++++++++++++++++++---- 1 file changed, 24 insertions(+), 4 deletions(-) diff --git a/tools/xentrace/xenalyze.c b/tools/xentrace/xenalyze.c index 9635ff453a..9af17d45bf 100644 --- a/tools/xentrace/xenalyze.c +++ b/tools/xentrace/xenalyze.c @@ -482,6 +482,7 @@ struct { #define EXIT_REASON_MCE_DURING_VMENTRY 41 #define EXIT_REASON_TPR_BELOW_THRESHOLD 43 #define EXIT_REASON_APIC_ACCESS 44 +#define EXIT_REASON_EOI_INDUCED 45 #define EXIT_REASON_ACCESS_GDTR_OR_IDTR 46 #define EXIT_REASON_ACCESS_LDTR_OR_TR 47 #define EXIT_REASON_EPT_VIOLATION 48 @@ -492,10 +493,18 @@ struct { #define EXIT_REASON_INVVPID 53 #define EXIT_REASON_WBINVD 54 #define EXIT_REASON_XSETBV 55 - -#define HVM_VMX_EXIT_REASON_MAX (EXIT_REASON_XSETBV+1) - -const char * hvm_vmx_exit_reason_name[HVM_VMX_EXIT_REASON_MAX] = { +#define EXIT_REASON_APIC_WRITE 56 +#define EXIT_REASON_INVPCID 58 +#define EXIT_REASON_VMFUNC 59 +#define EXIT_REASON_PML_FULL 62 +#define EXIT_REASON_XSAVES 63 +#define EXIT_REASON_XRSTORS 64 +#define EXIT_REASON_BUS_LOCK 74 +#define EXIT_REASON_NOTIFY 75 + +#define HVM_VMX_EXIT_REASON_MAX (EXIT_REASON_NOTIFY+1) + +const char * hvm_vmx_exit_reason_name[] = { [EXIT_REASON_EXCEPTION_NMI]="EXCEPTION_NMI", [EXIT_REASON_EXTERNAL_INTERRUPT]="EXTERNAL_INTERRUPT", [EXIT_REASON_TRIPLE_FAULT]="TRIPLE_FAULT", @@ -538,6 +547,9 @@ const char * hvm_vmx_exit_reason_name[HVM_VMX_EXIT_REASON_MAX] = { [EXIT_REASON_MCE_DURING_VMENTRY]="MCE_DURING_VMENTRY", [EXIT_REASON_TPR_BELOW_THRESHOLD]="TPR_BELOW_THRESHOLD", [EXIT_REASON_APIC_ACCESS]="APIC_ACCESS", + [EXIT_REASON_EOI_INDUCED]="EOI_INDUCED", + [EXIT_REASON_ACCESS_GDTR_OR_IDTR]="ACCESS_GDTR_OR_IDTR", + [EXIT_REASON_ACCESS_LDTR_OR_TR]="ACCESS_LDTR_OR_TR", [EXIT_REASON_EPT_VIOLATION]="EPT_VIOLATION", [EXIT_REASON_EPT_MISCONFIG]="EPT_MISCONFIG", [EXIT_REASON_INVEPT]="INVEPT", @@ -546,6 +558,14 @@ const char * hvm_vmx_exit_reason_name[HVM_VMX_EXIT_REASON_MAX] = { [EXIT_REASON_INVVPID]="INVVPID", [EXIT_REASON_WBINVD]="WBINVD", [EXIT_REASON_XSETBV]="XSETBV", + [EXIT_REASON_APIC_WRITE]="APIC_WRITE", + [EXIT_REASON_INVPCID]="INVPCID", + [EXIT_REASON_VMFUNC]="VMFUNC", + [EXIT_REASON_PML_FULL]="PML_FULL", + [EXIT_REASON_XSAVES]="XSAVES", + [EXIT_REASON_XRSTORS]="XRSTORS", + [EXIT_REASON_BUS_LOCK]="BUS_LOCK", + [EXIT_REASON_NOTIFY]="NOTIFY", }; /* SVM data */ From xen-devel-bounces@lists.xenproject.org Thu Jun 01 14:33:30 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 14:33:30 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542578.846593 (Exim 4.92) (envelope-from ) id 1q4jMd-00039D-Lo; Thu, 01 Jun 2023 14:33:19 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542578.846593; Thu, 01 Jun 2023 14:33:19 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4jMd-000396-IR; Thu, 01 Jun 2023 14:33:19 +0000 Received: by outflank-mailman (input) for mailman id 542578; Thu, 01 Jun 2023 14:33:18 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4jMc-000390-4U for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 14:33:18 +0000 Received: from mail.skyhub.de (mail.skyhub.de [5.9.137.197]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 3ed1d6a6-0089-11ee-8611-37d641c3527e; Thu, 01 Jun 2023 16:33:16 +0200 (CEST) Received: from zn.tnic (pd9530d32.dip0.t-ipconnect.de [217.83.13.50]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.skyhub.de (SuperMail on ZX Spectrum 128k) with ESMTPSA id 4882C1EC069A; Thu, 1 Jun 2023 16:33:15 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 3ed1d6a6-0089-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=alien8.de; s=dkim; t=1685629995; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:in-reply-to:in-reply-to: references:references; bh=lZvBDmaGdPU2hmTnAnT0K3Zl9tT18jWXHccNTnt+nRc=; b=YBmEepH7K+BiKRZpTNdft93h2Mn4e7UMAk+58tsTmAYPmgp0qXRA36/DLLLTFUL85dDJgh sHJHQvRxMmEXu2MXp9aAJvFI8wCY8Q//2limBAbLcjdnaKlKpm12BIbuNljjVReVQnmg2n qFM4zQSKPgSZlkAh4y/xeV48F7eNc0k= Date: Thu, 1 Jun 2023 16:33:10 +0200 From: Borislav Petkov To: Juergen Gross Cc: linux-kernel@vger.kernel.org, x86@kernel.org, linux-hyperv@vger.kernel.org, linux-doc@vger.kernel.org, mikelley@microsoft.com, Thomas Gleixner , Ingo Molnar , Dave Hansen , "H. Peter Anvin" , "K. Y. Srinivasan" , Haiyang Zhang , Wei Liu , Dexuan Cui , Boris Ostrovsky , xen-devel@lists.xenproject.org, Jonathan Corbet , Andy Lutomirski , Peter Zijlstra Subject: Re: [PATCH v6 00/16] x86/mtrr: fix handling with PAT but without MTRR Message-ID: <20230601143310.GDZHisJlbH5myXGQ8d@fat_crate.local> References: <4c47a11c-0565-678d-3467-e01c5ec16600@suse.com> <20230511163208.GDZF0YiOfxQhSo4RDm@fat_crate.local> <0cd3899b-cf3b-61c1-14ae-60b6b49d14ab@suse.com> <20230530152825.GAZHYWGXAp8PHgN/w0@fat_crate.local> <888f860d-4307-54eb-01da-11f9adf65559@suse.com> <20230531083508.GAZHcGvB68PUAH7f+a@fat_crate.local> <20230531174857.GDZHeIib57h5lT5Vh1@fat_crate.local> <20230601132233.GCZHibmemkxYxvTjSu@fat_crate.local> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline In-Reply-To: <20230601132233.GCZHibmemkxYxvTjSu@fat_crate.local> On Thu, Jun 01, 2023 at 03:22:33PM +0200, Borislav Petkov wrote: > Now lemme restart testing. This is from another box, with the latest changes incorporated: https://git.kernel.org/pub/scm/linux/kernel/git/bp/bp.git/log/?h=rc1-mtrr --- proc-mtrr.before 2011-03-04 01:03:35.243994733 +0100 +++ proc-mtrr.after 2023-06-01 16:28:54.959999456 +0200 @@ -1,3 +1,3 @@ reg00: base=0x000000000 ( 0MB), size= 2048MB, count=1: write-back reg01: base=0x080000000 ( 2048MB), size= 1024MB, count=1: write-back -reg02: base=0x0c0000000 ( 3072MB), size= 256MB, count=1: write-back +reg02: base=0x0c0000000 ( 3072MB), size= 128MB, count=1: write-back Want mtrr=debug output again? -- Regards/Gruss, Boris. https://people.kernel.org/tglx/notes-about-netiquette From xen-devel-bounces@lists.xenproject.org Thu Jun 01 14:34:17 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 14:34:17 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542583.846603 (Exim 4.92) (envelope-from ) id 1q4jNY-0003fF-V7; Thu, 01 Jun 2023 14:34:16 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542583.846603; Thu, 01 Jun 2023 14:34:16 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4jNY-0003f8-SC; Thu, 01 Jun 2023 14:34:16 +0000 Received: by outflank-mailman (input) for mailman id 542583; Thu, 01 Jun 2023 14:34:15 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4jNX-000390-MA for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 14:34:15 +0000 Received: from smtp-out2.suse.de (smtp-out2.suse.de [195.135.220.29]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 61518b82-0089-11ee-8611-37d641c3527e; Thu, 01 Jun 2023 16:34:14 +0200 (CEST) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by smtp-out2.suse.de (Postfix) with ESMTPS id 7E3AE1FDA9; Thu, 1 Jun 2023 14:34:13 +0000 (UTC) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id 676AA139B7; Thu, 1 Jun 2023 14:34:12 +0000 (UTC) Received: from dovecot-director2.suse.de ([192.168.254.65]) by imap2.suse-dmz.suse.de with ESMTPSA id g+NjF2SseGTjTwAAMHmgww (envelope-from ); Thu, 01 Jun 2023 14:34:12 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 61518b82-0089-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1; t=1685630053; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=IAdeXSJabeGGKNsb03xa8D/XXWlEFIu9Z5QHMJ3Opgk=; b=l4JdkqJy5rwpZ4iwWO860llEQcsNzfi4rq7KMSN0F1HOElNFVvZVe1lV5acQkScEgI6Lde d/cFhvOEOQvfjpvkylifiq2H5Qt7MX+fUQuhOsTNnD9mkd2NL2kSPlT+0oKRTx7yZdUS8u cXVtkt0ACT13nDjOcVUmV3ew2A5DNEU= Message-ID: <57f6c455-4e62-963e-aae5-49abf7461d27@suse.com> Date: Thu, 1 Jun 2023 16:34:11 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH v6 00/16] x86/mtrr: fix handling with PAT but without MTRR Content-Language: en-US To: Borislav Petkov Cc: linux-kernel@vger.kernel.org, x86@kernel.org, linux-hyperv@vger.kernel.org, linux-doc@vger.kernel.org, mikelley@microsoft.com, Thomas Gleixner , Ingo Molnar , Dave Hansen , "H. Peter Anvin" , "K. Y. Srinivasan" , Haiyang Zhang , Wei Liu , Dexuan Cui , Boris Ostrovsky , xen-devel@lists.xenproject.org, Jonathan Corbet , Andy Lutomirski , Peter Zijlstra References: <4c47a11c-0565-678d-3467-e01c5ec16600@suse.com> <20230511163208.GDZF0YiOfxQhSo4RDm@fat_crate.local> <0cd3899b-cf3b-61c1-14ae-60b6b49d14ab@suse.com> <20230530152825.GAZHYWGXAp8PHgN/w0@fat_crate.local> <888f860d-4307-54eb-01da-11f9adf65559@suse.com> <20230531083508.GAZHcGvB68PUAH7f+a@fat_crate.local> <20230531174857.GDZHeIib57h5lT5Vh1@fat_crate.local> <20230601132233.GCZHibmemkxYxvTjSu@fat_crate.local> <20230601143310.GDZHisJlbH5myXGQ8d@fat_crate.local> From: Juergen Gross In-Reply-To: <20230601143310.GDZHisJlbH5myXGQ8d@fat_crate.local> Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="------------C1TJCTAVxCUY0FrAmz00Gqqp" This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --------------C1TJCTAVxCUY0FrAmz00Gqqp Content-Type: multipart/mixed; boundary="------------NDYxO4taDq5YOM91RgNBPax0"; protected-headers="v1" From: Juergen Gross To: Borislav Petkov Cc: linux-kernel@vger.kernel.org, x86@kernel.org, linux-hyperv@vger.kernel.org, linux-doc@vger.kernel.org, mikelley@microsoft.com, Thomas Gleixner , Ingo Molnar , Dave Hansen , "H. Peter Anvin" , "K. Y. Srinivasan" , Haiyang Zhang , Wei Liu , Dexuan Cui , Boris Ostrovsky , xen-devel@lists.xenproject.org, Jonathan Corbet , Andy Lutomirski , Peter Zijlstra Message-ID: <57f6c455-4e62-963e-aae5-49abf7461d27@suse.com> Subject: Re: [PATCH v6 00/16] x86/mtrr: fix handling with PAT but without MTRR References: <4c47a11c-0565-678d-3467-e01c5ec16600@suse.com> <20230511163208.GDZF0YiOfxQhSo4RDm@fat_crate.local> <0cd3899b-cf3b-61c1-14ae-60b6b49d14ab@suse.com> <20230530152825.GAZHYWGXAp8PHgN/w0@fat_crate.local> <888f860d-4307-54eb-01da-11f9adf65559@suse.com> <20230531083508.GAZHcGvB68PUAH7f+a@fat_crate.local> <20230531174857.GDZHeIib57h5lT5Vh1@fat_crate.local> <20230601132233.GCZHibmemkxYxvTjSu@fat_crate.local> <20230601143310.GDZHisJlbH5myXGQ8d@fat_crate.local> In-Reply-To: <20230601143310.GDZHisJlbH5myXGQ8d@fat_crate.local> --------------NDYxO4taDq5YOM91RgNBPax0 Content-Type: multipart/mixed; boundary="------------02vIfnJHs0QvCdX0zN9z7j9g" --------------02vIfnJHs0QvCdX0zN9z7j9g Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: base64 T24gMDEuMDYuMjMgMTY6MzMsIEJvcmlzbGF2IFBldGtvdiB3cm90ZToNCj4gT24gVGh1LCBK dW4gMDEsIDIwMjMgYXQgMDM6MjI6MzNQTSArMDIwMCwgQm9yaXNsYXYgUGV0a292IHdyb3Rl Og0KPj4gTm93IGxlbW1lIHJlc3RhcnQgdGVzdGluZy4NCj4gDQo+IFRoaXMgaXMgZnJvbSBh bm90aGVyIGJveCwgd2l0aCB0aGUgbGF0ZXN0IGNoYW5nZXMgaW5jb3Jwb3JhdGVkOg0KPiAN Cj4gaHR0cHM6Ly9naXQua2VybmVsLm9yZy9wdWIvc2NtL2xpbnV4L2tlcm5lbC9naXQvYnAv YnAuZ2l0L2xvZy8/aD1yYzEtbXRycg0KPiANCj4gLS0tIHByb2MtbXRyci5iZWZvcmUgICAg MjAxMS0wMy0wNCAwMTowMzozNS4yNDM5OTQ3MzMgKzAxMDANCj4gKysrIHByb2MtbXRyci5h ZnRlciAgICAgMjAyMy0wNi0wMSAxNjoyODo1NC45NTk5OTk0NTYgKzAyMDANCj4gQEAgLTEs MyArMSwzIEBADQo+ICAgcmVnMDA6IGJhc2U9MHgwMDAwMDAwMDAgKCAgICAwTUIpLCBzaXpl PSAyMDQ4TUIsIGNvdW50PTE6IHdyaXRlLWJhY2sNCj4gICByZWcwMTogYmFzZT0weDA4MDAw MDAwMCAoIDIwNDhNQiksIHNpemU9IDEwMjRNQiwgY291bnQ9MTogd3JpdGUtYmFjaw0KPiAt cmVnMDI6IGJhc2U9MHgwYzAwMDAwMDAgKCAzMDcyTUIpLCBzaXplPSAgMjU2TUIsIGNvdW50 PTE6IHdyaXRlLWJhY2sNCj4gK3JlZzAyOiBiYXNlPTB4MGMwMDAwMDAwICggMzA3Mk1CKSwg c2l6ZT0gIDEyOE1CLCBjb3VudD0xOiB3cml0ZS1iYWNrDQo+IA0KPiBXYW50IG10cnI9ZGVi dWcgb3V0cHV0IGFnYWluPw0KPiANCg0KWWVzLCBwbGVhc2UNCg0KDQpKdWVyZ2VuDQo= --------------02vIfnJHs0QvCdX0zN9z7j9g Content-Type: application/pgp-keys; name="OpenPGP_0xB0DE9DD628BF132F.asc" Content-Disposition: attachment; filename="OpenPGP_0xB0DE9DD628BF132F.asc" Content-Description: OpenPGP public key Content-Transfer-Encoding: quoted-printable -----BEGIN PGP PUBLIC KEY BLOCK----- xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjri oyspZKOBycWxw3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2 kaV2KL9650I1SJvedYm8Of8Zd621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i 1TXkH09XSSI8mEQ/ouNcMvIJNwQpd369y9bfIhWUiVXEK7MlRgUG6MvIj6Y3Am/B BLUVbDa4+gmzDC9ezlZkTZG2t14zWPvxXP3FAp2pkW0xqG7/377qptDmrk42GlSK N4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEBAAHNHEp1ZXJnZW4gR3Jvc3Mg PGpnQHBmdXBmLm5ldD7CwHkEEwECACMFAlOMcBYCGwMHCwkIBwMCAQYVCAIJCgsE FgIDAQIeAQIXgAAKCRCw3p3WKL8TL0KdB/93FcIZ3GCNwFU0u3EjNbNjmXBKDY4F UGNQH2lvWAUy+dnyThpwdtF/jQ6j9RwE8VP0+NXcYpGJDWlNb9/JmYqLiX2Q3Tye vpB0CA3dbBQp0OW0fgCetToGIQrg0MbD1C/sEOv8Mr4NAfbauXjZlvTj30H2jO0u +6WGM6nHwbh2l5O8ZiHkH32iaSTfN7Eu5RnNVUJbvoPHZ8SlM4KWm8rG+lIkGurq qu5gu8q8ZMKdsdGC4bBxdQKDKHEFExLJK/nRPFmAuGlId1E3fe10v5QL+qHI3EIP tyfE7i9Hz6rVwi7lWKgh7pe0ZvatAudZ+JNIlBKptb64FaiIOAWDCx1SzR9KdWVy Z2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+wsB5BBMBAgAjBQJTjHCvAhsDBwsJ CAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey/HmQf/RtI7kv5A2PS4 RF7HoZhPVPogNVbC4YA6lW7DrWf0teC0RR3MzXfy6pJ+7KLgkqMlrAbN/8Dvjoz7 8X+5vhH/rDLa9BuZQlhFmvcGtCF8eR0T1v0nC/nuAFVGy+67q2DH8As3KPu0344T BDpAvr2uYM4tSqxK4DURx5INz4ZZ0WNFHcqsfvlGJALDeE0LhITTd9jLzdDad1pQ SToCnLl6SBJZjDOX9QQcyUigZFtCXFst4dlsvddrxyqT1f17+2cFSdu7+ynLmXBK 7abQ3rwJY8SbRO2iRulogc5vr/RLMMlscDAiDkaFQWLoqHHOdfO9rURssHNN8WkM nQfvUewRz80hSnVlcmdlbiBHcm9zcyA8amdyb3NzQG5vdmVsbC5jb20+wsB5BBMB AgAjBQJTjHDXAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/ Ey8PUQf/ehmgCI9jB9hlgexLvgOtf7PJnFOXgMLdBQgBlVPO3/D9R8LtF9DBAFPN hlrsfIG/SqICoRCqUcJ96Pn3P7UUinFG/I0ECGF4EvTE1jnDkfJZr6jrbjgyoZHi w/4BNwSTL9rWASyLgqlA8u1mf+c2yUwcGhgkRAd1gOwungxcwzwqgljf0N51N5Jf VRHRtyfwq/ge+YEkDGcTU6Y0sPOuj4Dyfm8fJzdfHNQsWq3PnczLVELStJNdapwP OoE+lotufe3AM2vAEYJ9rTz3Cki4JFUsgLkHFqGZarrPGi1eyQcXeluldO3m91NK /1xMI3/+8jbO0tsn1tqSEUGIJi7ox80eSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1 c2UuZGU+wsB5BBMBAgAjBQJTjHDrAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgEC F4AACgkQsN6d1ii/Ey+LhQf9GL45eU5vOowA2u5N3g3OZUEBmDHVVbqMtzwlmNC4 k9Kx39r5s2vcFl4tXqW7g9/ViXYuiDXb0RfUpZiIUW89siKrkzmQ5dM7wRqzgJpJ wK8Bn2MIxAKArekWpiCKvBOB/Cc+3EXE78XdlxLyOi/NrmSGRIov0karw2RzMNOu 5D+jLRZQd1Sv27AR+IP3I8U4aqnhLpwhK7MEy9oCILlgZ1QZe49kpcumcZKORmzB TNh30FVKK1EvmV2xAKDoaEOgQB4iFQLhJCdP1I5aSgM5IVFdn7v5YgEYuJYx37Io N1EblHI//x/e2AaIHpzK5h88NEawQsaNRpNSrcfbFmAg987ATQRTjHAWAQgAyzH6 AOODMBjgfWE9VeCgsrwH3exNAU32gLq2xvjpWnHIs98ndPUDpnoxWQugJ6MpMncr 0xSwFmHEgnSEjK/PAjppgmyc57BwKII3sV4on+gDVFJR6Y8ZRwgnBC5mVM6JjQ5x Dk8WRXljExRfUX9pNhdE5eBOZJrDRoLUmmjDtKzWaDhIg/+1Hzz93X4fCQkNVbVF LELU9bMaLPBG/x5q4iYZ2k2ex6d47YE1ZFdMm6YBYMOljGkZKwYde5ldM9mo45mm we0icXKLkpEdIXKTZeKDO+Hdv1aqFuAcccTg9RXDQjmwhC3yEmrmcfl0+rPghO0I v3OOImwTEe4co3c1mwARAQABwsBfBBgBAgAJBQJTjHAWAhsMAAoJELDendYovxMv Q/gH/1ha96vm4P/L+bQpJwrZ/dneZcmEwTbe8YFsw2V/Buv6Z4Mysln3nQK5ZadD 534CF7TDVft7fC4tU4PONxF5D+/tvgkPfDAfF77zy2AH1vJzQ1fOU8lYFpZXTXIH b+559UqvIB8AdgR3SAJGHHt4RKA0F7f5ipYBBrC6cyXJyyoprT10EMvU8VGiwXvT yJz3fjoYsdFzpWPlJEBRMedCot60g5dmbdrZ5DWClAr0yau47zpWj3enf1tLWaqc suylWsviuGjKGw7KHQd3bxALOknAp4dN3QwBYCKuZ7AddY9yjynVaD5X7nF9nO5B jR/i1DG86lem3iBDXzXsZDn8R38=3D =3D2wuH -----END PGP PUBLIC KEY BLOCK----- --------------02vIfnJHs0QvCdX0zN9z7j9g-- --------------NDYxO4taDq5YOM91RgNBPax0-- --------------C1TJCTAVxCUY0FrAmz00Gqqp Content-Type: application/pgp-signature; name="OpenPGP_signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="OpenPGP_signature" -----BEGIN PGP SIGNATURE----- wsB5BAABCAAjFiEEhRJncuj2BJSl0Jf3sN6d1ii/Ey8FAmR4rGQFAwAAAAAACgkQsN6d1ii/Ey/x MAf9GZ/T8pb6wAxfvYqCDNKdUzl3D1fXrPkS3u6l/Vj2NHKre0u1b+cUNHDlwF3PwoAkI43OLQ1S GhTaKIrbEKqIdXStfbMez5F8zpNJa6bBhEDzYUsKaDSK4iq2imLXTLQ9oUS33kq+79R/ip1A27ih J7hZcr6JQyD8QHDqHDzDc6av271b7Tpk90qt53PJqGoWlkmiLEEMT4r4Q5QBGsyKMORH24VRS0Pl d/sS68BzaWwaNt78wizf5lhac0Ldtn79b9yM5BlxFJmD9x1PiRrJxo9B1aD1tQxj3qMLYGgZ9jxz t8pFc/216+o3O43qws6x+s2kTVoDFDJskjtcg/tGBQ== =lKYI -----END PGP SIGNATURE----- --------------C1TJCTAVxCUY0FrAmz00Gqqp-- From xen-devel-bounces@lists.xenproject.org Thu Jun 01 14:38:39 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 14:38:39 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542592.846613 (Exim 4.92) (envelope-from ) id 1q4jRZ-0004Li-FX; Thu, 01 Jun 2023 14:38:25 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542592.846613; Thu, 01 Jun 2023 14:38:25 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4jRZ-0004Lb-C1; Thu, 01 Jun 2023 14:38:25 +0000 Received: by outflank-mailman (input) for mailman id 542592; Thu, 01 Jun 2023 14:38:23 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4jRX-0004LV-FA for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 14:38:23 +0000 Received: from esa5.hc3370-68.iphmx.com (esa5.hc3370-68.iphmx.com [216.71.155.168]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id f3da69a4-0089-11ee-b231-6b7b168915f2; Thu, 01 Jun 2023 16:38:21 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: f3da69a4-0089-11ee-b231-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1685630301; h=from:to:cc:subject:date:message-id:mime-version: content-transfer-encoding; bh=cS9WCOWJlS5yb6BIhP47joZYK01KQc2UU5TXtJ5OnQ0=; b=QowgW3k9uFKmLtO2VDJpJU9RKHsQrz5NC8tnvFbxe9cZgUkUSMUutsgg acZHviKkAhFHpbxLJ4L7ggVmd369dPHNOChNwcp4JRaje7fwpATtQtBOP v6CAHyY6+7Q6ngncP7BbXxjOeOIF2tx1xIFl6LJpRcD8S3KHB9F9b8typ I=; Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none X-SBRS: 4.0 X-MesageID: 109990665 X-Ironport-Server: esa5.hc3370-68.iphmx.com X-Remote-IP: 162.221.156.123 X-Policy: $RELAYED IronPort-Data: A9a23:JYjSFKmKBY8ZpHFx8V29bJLo5gydJkRdPkR7XQ2eYbSJt1+Wr1Gzt xJLXjyOO66PY2LzKY9wYY2y/E8PupCGzN9rSQE9qH89QiMWpZLJC+rCIxarNUt+DCFhoGFPt JxCN4aafKjYaleG+39B55C49SEUOZmgH+a6U6icfHgqH2eIcQ954Tp7gek1n4V0ttawBgKJq LvartbWfVSowFaYCEpNg064gE0p5KyaVA8w5ARkPqgV5AaGzBH5MbpETU2PByqgKmVrNrbSq 9brlNmR4m7f9hExPdKp+p6TnpoiG+O60aCm0xK6aoD66vRwjnVaPpUTbZLwXXx/mTSR9+2d/ f0W3XCGpaXFCYWX8AgVe0Ew/yiTpsSq8pefSZS0mZT7I0Er7xIAahihZa07FdRwxwp5PY1B3 aUUIhZSch2Ivu6V64unQdJr28McJta+aevzulk4pd3YJfMvQJSFSKTW/95Imjw3g6iiH96HO ZBfM2A2Kk2dPVsWYAx/5JEWxY9EglHWdTFCpU3Tjq0w+2XJlyR60aT3McqTcduPLSlQth/A9 zOXpzqnX3n2MvSw6yGj+Synwdbyuh7bdq1JTpSf/8Vl1Qj7Kms7V0RNCArTTeOCol6zXZdTJ lIZ/gIqrLMu7wq7Q9/lRRq6rXWY+BkGVLJ4Mcc39QWMwar8+BuCCy4PSTspQMMinN87Q3otz FDhoj/yLWUx6vvPEyvbr+rK62roYkD5MFPuewddQQEjvMXuq7g/rTn2Ut1YF/OysdfqTGSYL y+xkAAygLAajMgu3qq9/Ezajz/EmqUlXjLZ9S2MADv7s1oRiJqNItXxtAOFtaoowJOxFAHpg ZQSpySJAAni57mpnTfFfugCFarBCx2tYGyF2g4H83XMGl2QF5+fkWJ4uWAWyKRBaJxsldrVj Kj752tsCGd7ZifCUEOOS9vZ5z4W5abhD8/5cfvfc8BDZJN8HCfeonEzOBPPjz21yBV8+U3aB Xt9WZz2ZZr9If02pAdaus9HieN7rszA7T67qW/HI+SPjuPFOS/9pUYtO1qSdOEphJ5oUy2Mm +uzw/Cikk0FOMWnO3m/zGLmBQxSRZTNLcys+pM/my/qClYOJVzN/NeKmut/K9w0wv0J/goKl 1nkMnJlJJPErSWvAW23hrpLM9sDgb4XQaoHABER IronPort-HdrOrdr: A9a23:XIuZS6jQCNLYvOe12cluiBsrK3BQX6p23DAbv31ZSRFFG/FwyP re+cjzhCWE6gr5BktQ+uxoYJPwMk80laQZ3WEQVY3SJzUOy1HYXr2KjLGSgwEIfheVh4pgPM hbAtdD4bHLfCFHZIPBkXmF+rUbsZq6GcKT9JnjJh5WJGkAB84PjmcJbXf8LqQ1fng2OXNTLu vn2iMznUvdRZ1hVLXHOpBqZZm6m/T70LbdJTIWDR8u7weDyRmy7qThLhSe1hACFxtS3LYL6w H+4knEz5Tml8v+5g7X1mfV4ZgTssDm0MF/CMuFjdVQAinwizyveJ9qV9S5zXQISaCUmREXee v30k4d1vdImivsl6aO0EDQMjzboXATArnZuAWlaDXY0JHErXkBer98bMpiA2/kAgwbzZNB+Z MO5nmesZVPCxPGgWDS2/jkPisayHackD4aiugUgGVYUYwCLJlrjaJa0n90Pf47bX3HAKZOKp g/MCgZ3ocLAAKnRmGcsW91zNO2WHMvWh+AX0gZo8SQlyNbhXZj0iIjtYMid9g7hdoAorR/lq n5255T5f1zZ95Tabg4CPYKQMOxBGCISRXQMHiKKVCiEK0cIXrCp5P+/b1wvYiRCd015Yp3nI 6EXEJTtGY0dU6rAcqS3IdT+hSIRGmmRzzixsxX+pA8sLzhQ7jgNzGFVTkV4oWdiuRaBteeV+ e4OZpQDfOmJWzyGZxR1wm7QJVWIWl2arxehj/6YSPEnivmEPyiigWASoelGFPEK0dTZl/C X-Talos-CUID: 9a23:rsQqhWzwFcaGEM7briKABgVNFsoDLWHQx07cAGSBFW1ST+CSdlWPrfY= X-Talos-MUID: 9a23:iFPG3gYvRO4GIeBTmB33ojo8P4BR3oOTKG4iys8vnMC/Onkl X-IronPort-AV: E=Sophos;i="6.00,210,1681185600"; d="scan'208";a="109990665" From: Andrew Cooper To: Xen-devel CC: Andrew Cooper , Jan Beulich , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Wei Liu , Alejandro Vallejo Subject: [PATCH] x86/ucode: Exit early from early_update_cache() if loading not available Date: Thu, 1 Jun 2023 15:38:13 +0100 Message-ID: <20230601143813.1553740-1-andrew.cooper3@citrix.com> X-Mailer: git-send-email 2.30.2 MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit If for any reason early_microcode_init() concludes that no microcode loading is available, early_update_cache() will fall over a NULL function pointer: (XEN) Xen call trace: (XEN) [] R show_code+0x91/0x18f (XEN) [] F show_execution_state+0x2d/0x1fc (XEN) [] F fatal_trap+0x87/0x19a (XEN) [] F init_idt_traps+0/0x1bd (XEN) [] F early_page_fault+0x8f/0x94 (XEN) [<0000000000000000>] F 0000000000000000 (XEN) [] F arch/x86/cpu/microcode/core.c#early_update_cache+0x11/0x74 (XEN) [] F microcode_init_cache+0x5a/0x5c (XEN) [] F __start_xen+0x1e11/0x27ee (XEN) [] F __high_start+0x94/0xa0 which is actually parse_blob()'s use of ucode_ops.collect_cpu_info. Skip trying to cache anything if microcode loading is unavailable. Fixes: dc380df12acf ("x86/ucode: load microcode earlier on boot CPU") Signed-off-by: Andrew Cooper --- CC: Jan Beulich CC: Roger Pau Monné CC: Wei Liu CC: Alejandro Vallejo Found while doing something unrelated, but this is going to interact poorly with MCU_CONTROL_DIS_MCU_LOAD. --- xen/arch/x86/cpu/microcode/core.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/xen/arch/x86/cpu/microcode/core.c b/xen/arch/x86/cpu/microcode/core.c index 5a5c0a8c70db..9029301107d6 100644 --- a/xen/arch/x86/cpu/microcode/core.c +++ b/xen/arch/x86/cpu/microcode/core.c @@ -789,6 +789,9 @@ int __init microcode_init_cache(unsigned long *module_map, { int rc = 0; + if ( !ucode_ops.apply_microcode ) + return -ENODEV; + if ( ucode_scan ) /* Need to rescan the modules because they might have been relocated */ microcode_scan_module(module_map, mbi); base-commit: 59d0bf62861f5c9b317ccf89f8b5c8b4d19927ad prerequisite-patch-id: c3f6ae7def85b63808449493e3b5185bc40c405d prerequisite-patch-id: 59a20dfb4778c62bf512f746e36b1bea0949b0a8 prerequisite-patch-id: a70c8dd42245affe402b08cacd5872b5a32a6d69 prerequisite-patch-id: 3efc26e008858670286c173f77f8ec34ddfd9df1 prerequisite-patch-id: 5f6ddddf7dd6029f401d13bbb87ac3bb88c15700 prerequisite-patch-id: 4133b7d49c978a89042e95f899f46c4ec4ac4498 prerequisite-patch-id: d2d3a24a650f6b1b50e279be158cdd097eb43a4b prerequisite-patch-id: 358299b6b56983e3c069ea1f30e7cf214b0a2c54 prerequisite-patch-id: b17530cf5672ada3e7792606b7a3bef55c8aa372 prerequisite-patch-id: e9bc40cc80e61b24d90eeb7097cd9b703f0170a6 -- 2.30.2 From xen-devel-bounces@lists.xenproject.org Thu Jun 01 14:49:01 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 14:49:01 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542600.846653 (Exim 4.92) (envelope-from ) id 1q4jbo-0006cl-9G; Thu, 01 Jun 2023 14:49:00 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542600.846653; Thu, 01 Jun 2023 14:49:00 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4jbo-0006ce-6Q; Thu, 01 Jun 2023 14:49:00 +0000 Received: by outflank-mailman (input) for mailman id 542600; Thu, 01 Jun 2023 14:48:58 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4jbm-0005t4-Py for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 14:48:58 +0000 Received: from esa4.hc3370-68.iphmx.com (esa4.hc3370-68.iphmx.com [216.71.155.144]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 6f7be821-008b-11ee-8611-37d641c3527e; Thu, 01 Jun 2023 16:48:56 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 6f7be821-008b-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1685630936; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=0Huqnszf3sCeFY36VmVwYFe6YJQ79qu8pbuCZc31GcY=; b=ThLVIgkcCQgUucE+PbmfD90P8Pr4ewj31zBlJeKT5iIda3FzY1XJxN6Y UP7KwmYV7SqjxBzwMeB4+1jdW3lAQLjRXwPExG9vJpGnA0SbVT31K/7BE yYMNBYX7KhPFv5++vy875Ya29oVcWlM0CnsJ/cB6+QxkLVSA03e4VyC0F 8=; Authentication-Results: esa4.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none X-SBRS: 4.0 X-MesageID: 113728657 X-Ironport-Server: esa4.hc3370-68.iphmx.com X-Remote-IP: 162.221.156.123 X-Policy: $RELAYED IronPort-Data: A9a23:6Z+78q5pkiOxUOH8adAHDQxRtCTHchMFZxGqfqrLsTDasY5as4F+v jFOXm+AbvaLYjT1fYhyO42w9E8CvpPRyoAyGgU6pCwyHi5G8cbLO4+Ufxz6V8+wwm8vb2o8t plDNYOQRCwQZiWBzvt4GuG59RGQ7YnRGvynTraCYnsrLeNdYH9JoQp5nOIkiZJfj9G8Agec0 fv/uMSaM1K+s9JOGjt8B5mr9lU35JwehBtC5gZlPa4T5QeF/5UoJMl3yZ+ZfiOQrrZ8RoZWd 86bpJml82XQ+QsaC9/Nut4XpWVTH9Y+lSDX4pZnc/DKbipq/0Te4Y5iXBYoUm9Fii3hojxE4 I4lWapc6+seFvakdOw1C3G0GszlVEFM0OevzXOX6aR/w6BaGpdFLjoH4EweZOUlFuhL7W5m7 P8HBypKSzW/tcmTnLulYPQ22+0sM5y+VG8fkikIITDxCP8nRdbIQrnQ5M8e1zA17ixMNa+AP YxDM2MpNUmeJUQVYT/7C7pn9AusrlD5fydVtxS+oq0v7nKI5AdwzKLsIJzefdniqcB9xx/D+ TiWoTmmav0cHOzD+xmJ6lOuurXKkX/4doM1KJOezsc/1TV/wURMUUZLBDNXu8KRmkO4Ht5SN UEQ0i4vtrQpslymSMHnWB+1q2LCuQQTM/JyOeAn7ACGyoLP/h2UQGMDS1Zpd9gOpMIwAzsw2 Te0c8jBXGI19ufPEDTEq+nS9GnpUcQIEYMcTTYHUiQfpPzGnLMYq07GUPx+SvOcgcKgTFkc3 Au2hCQ5grwSi+sC2KO64U3LjlqQm3TZcuImzl6JBzz4t2uVcKbgPtX1sgaDsZ6sOa7DFjG8U G44d99yBQzkJbWEj2SzTeoEB9lFDN7VYWSH0TaD83TMnglBGkJPn6gJsVmSx28zaK7onAMFh 2eN0T69HLcJYBOXgVZfOupd8fgCw6n6DsjCXfvJdNdIaZUZXFbZrHwzOBHAgji1zRhEfUQD1 XGzK5zE4ZEyUPUP8dZLb71Fje9DKt4WmAs/uqwXPzz4iOHDNRZ5uJ8OMUeUb/BR0U93iFy9z jqrDOPTk083eLSnMkHqHXs7cQhiwY4TWcqn9KS6t4erfmJbJY3WI6SKme1xK904xvg9eyWh1 ijVZ3K0AWHX3RXvQThmoFg/AF8zdf6TdU4GABE= IronPort-HdrOrdr: A9a23:srP37aldqolmakWOKiRMBtaA14vpDfOnimdD5ihNYBxZY6Wkfp +V8cjzhCWftN9OYhodcIi7SdC9qXO1z+8X3WBjB8bbYOCGghrhEGgG1+ffKlLbakrDH4JmtJ uIEJIOQ+EYb2IK6/oSiTPQe7lP/DDtytHLuQ6q9QYIcegcUdAE0+4WMGamO3wzYDMDKYsyFZ Ka6MYCjSGnY24rYsOyAWRAd/TfpvXQ/aiWLCIuNloC0k2jnDmo4Ln1H1yzxREFSQ5Cxr8k7C zsjxH53KO+qPu2oyWsm1M7rq4m1+cJ+OEzRfBkufJlagkETTzYJ7iJbofy8gzdZtvfqmrC3u O85ivIdP4DkE85NlvF2ycFnTOQmgrGokWStWNxjRbY0LHEbSN/BMxbiY1DdBzFr0ImodFnya pOm3mUrpxNEHr77VPADnfzJmFXf2eP0A8feNQo/ghieJpbbKUUoZ0U/UtTHptFFCXm6Jo/GO 0rCM3H/v5ZfV6Tcnic5wBUsZWRd2V2Gg3DTlkJu8ST3TQTlHdlz1EAzMhamnsb7poyR5RN+u yBOKV1k7NFSNMQcMtGdZE8aNryDnaITQPHMWqUL1iiHKYbO2jVo5qy+7kx7PHCQu178HLzou WzbLp1jx9CR6u1M7zw4HRiyGGyfFmA X-Talos-CUID: 9a23:1kdhTmF3Hcaf1Q6lqmJ+91E7AIcAV0Hv51KMKlGSFDw0YbKKHAo= X-Talos-MUID: =?us-ascii?q?9a23=3AkuKL2Q7X4UQgx3yuUPcor6FqxoxYv5aNBFgsk6l?= =?us-ascii?q?cvsXYNgJxHAuzqgyOF9o=3D?= X-IronPort-AV: E=Sophos;i="6.00,210,1681185600"; d="scan'208";a="113728657" From: Andrew Cooper To: Xen-devel CC: Andrew Cooper , Jan Beulich , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Wei Liu Subject: [PATCH v2 3/3] x86/cpu-policy: Derive RSBA/RRSBA for guest policies Date: Thu, 1 Jun 2023 15:48:45 +0100 Message-ID: <20230601144845.1554589-4-andrew.cooper3@citrix.com> X-Mailer: git-send-email 2.30.2 In-Reply-To: <20230601144845.1554589-1-andrew.cooper3@citrix.com> References: <20230601144845.1554589-1-andrew.cooper3@citrix.com> MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit The RSBA bit, "RSB Alternative", means that the RSB may use alternative predictors when empty. From a practical point of view, this mean "Retpoline not safe". Enhanced IBRS (officially IBRS_ALL in Intel's docs, previously IBRS_ATT) is a statement that IBRS is implemented in hardware (as opposed to the form retrofitted to existing CPUs in microcode). The RRSBA bit, "Restricted-RSBA", is a combination of RSBA, and the eIBRS property that predictions are tagged with the mode in which they were learnt. Therefore, it means "when eIBRS is active, the RSB may fall back to alternative predictors but restricted to the current prediction mode". As such, it's stronger statement than RSBA, but still means "Retpoline not safe". CPUs are not expected to enumerate both RSBA and RRSBA. Add feature dependencies for EIBRS and RRSBA. While technically they're not linked, absolutely nothing good can of letting the guest see RRSBA without EIBRS. Nor can anything good come of a guest seeing EIBRS without IBRSB. Furthermore, we use this dependency to simplify the max derivation logic. The max policies gets RSBA and RRSBA unconditionally set (with the EIBRS dependency maybe hiding RRSBA). We can run any VM, even if it has been told "somewhere you might run, Retpoline isn't safe". The default policies are more complicated. A guest shouldn't see both bits, but it needs to see one if the current host suffers from any form of RSBA, and which bit it needs to see depends on whether eIBRS is visible or not. Therefore, the calculation must be performed after sanitise_featureset(). Finally, apply the same logic in recalculate_cpuid_policy(), as we do for other safety settings while we're still overhauling the toolstack logic in this area. Signed-off-by: Andrew Cooper --- CC: Jan Beulich CC: Roger Pau Monné CC: Wei Liu v2: * Expand/adjust the comment for the max features. * Rewrite the default feature derivation in light of new information. * Fix up in recalculate_cpuid_policy() too. --- xen/arch/x86/cpu-policy.c | 53 +++++++++++++++++++++ xen/include/public/arch-x86/cpufeatureset.h | 4 +- xen/tools/gen-cpuid.py | 5 +- 3 files changed, 59 insertions(+), 3 deletions(-) diff --git a/xen/arch/x86/cpu-policy.c b/xen/arch/x86/cpu-policy.c index ee256ff5a137..f3bcb1ea4101 100644 --- a/xen/arch/x86/cpu-policy.c +++ b/xen/arch/x86/cpu-policy.c @@ -423,8 +423,17 @@ static void __init guest_common_max_feature_adjustments(uint32_t *fs) * Retpoline not safe)", so these need to be visible to a guest in all * cases, even when it's only some other server in the pool which * suffers the identified behaviour. + * + * We can always run any VM which has previously (or will + * subsequently) run on hardware where Retpoline is not safe. + * Note: + * - The dependency logic may hide RRSBA for other reasons. + * - The max policy does not contitute a sensible configuration to + * run a guest in. */ __set_bit(X86_FEATURE_ARCH_CAPS, fs); + __set_bit(X86_FEATURE_RSBA, fs); + __set_bit(X86_FEATURE_RRSBA, fs); } } @@ -532,6 +541,21 @@ static void __init calculate_pv_def_policy(void) guest_common_default_feature_adjustments(fs); sanitise_featureset(fs); + + /* + * If the host suffers from RSBA of any form, and the guest can see + * MSR_ARCH_CAPS, reflect the appropriate RSBA/RRSBA property to the guest + * depending on the visibility of eIBRS. + */ + if ( test_bit(X86_FEATURE_ARCH_CAPS, fs) && + (cpu_has_rsba || cpu_has_rrsba) ) + { + bool eibrs = test_bit(X86_FEATURE_EIBRS, fs); + + __set_bit(eibrs ? X86_FEATURE_RRSBA + : X86_FEATURE_RSBA, fs); + } + x86_cpu_featureset_to_policy(fs, p); recalculate_xstate(p); } @@ -664,6 +688,21 @@ static void __init calculate_hvm_def_policy(void) __set_bit(X86_FEATURE_VIRT_SSBD, fs); sanitise_featureset(fs); + + /* + * If the host suffers from RSBA of any form, and the guest can see + * MSR_ARCH_CAPS, reflect the appropriate RSBA/RRSBA property to the guest + * depending on the visibility of eIBRS. + */ + if ( test_bit(X86_FEATURE_ARCH_CAPS, fs) && + (cpu_has_rsba || cpu_has_rrsba) ) + { + bool eibrs = test_bit(X86_FEATURE_EIBRS, fs); + + __set_bit(eibrs ? X86_FEATURE_RRSBA + : X86_FEATURE_RSBA, fs); + } + x86_cpu_featureset_to_policy(fs, p); recalculate_xstate(p); } @@ -786,6 +825,20 @@ void recalculate_cpuid_policy(struct domain *d) sanitise_featureset(fs); + /* + * If the host suffers from RSBA of any form, and the guest can see + * MSR_ARCH_CAPS, reflect the appropriate RSBA/RRSBA property to the guest + * depending on the visibility of eIBRS. + */ + if ( test_bit(X86_FEATURE_ARCH_CAPS, fs) && + (cpu_has_rsba || cpu_has_rrsba) ) + { + bool eibrs = test_bit(X86_FEATURE_EIBRS, fs); + + __set_bit(eibrs ? X86_FEATURE_RRSBA + : X86_FEATURE_RSBA, fs); + } + /* Fold host's FDP_EXCP_ONLY and NO_FPU_SEL into guest's view. */ fs[FEATURESET_7b0] &= ~(cpufeat_mask(X86_FEATURE_FDP_EXCP_ONLY) | cpufeat_mask(X86_FEATURE_NO_FPU_SEL)); diff --git a/xen/include/public/arch-x86/cpufeatureset.h b/xen/include/public/arch-x86/cpufeatureset.h index 4edf9aba7ff6..a0e46138d763 100644 --- a/xen/include/public/arch-x86/cpufeatureset.h +++ b/xen/include/public/arch-x86/cpufeatureset.h @@ -311,7 +311,7 @@ XEN_CPUFEATURE(CET_SSS, 15*32+18) /* CET Supervisor Shadow Stacks s /* Intel-defined CPU features, MSR_ARCH_CAPS 0x10a.eax, word 16 */ XEN_CPUFEATURE(RDCL_NO, 16*32+ 0) /*A No Rogue Data Cache Load (Meltdown) */ XEN_CPUFEATURE(EIBRS, 16*32+ 1) /*A Enhanced IBRS */ -XEN_CPUFEATURE(RSBA, 16*32+ 2) /*!A RSB Alternative (Retpoline not safe) */ +XEN_CPUFEATURE(RSBA, 16*32+ 2) /*! RSB Alternative (Retpoline not safe) */ XEN_CPUFEATURE(SKIP_L1DFL, 16*32+ 3) /* Don't need to flush L1D on VMEntry */ XEN_CPUFEATURE(INTEL_SSB_NO, 16*32+ 4) /*A No Speculative Store Bypass */ XEN_CPUFEATURE(MDS_NO, 16*32+ 5) /*A No Microarchitectural Data Sampling */ @@ -327,7 +327,7 @@ XEN_CPUFEATURE(FBSDP_NO, 16*32+14) /*A No Fill Buffer Stale Data Prop XEN_CPUFEATURE(PSDP_NO, 16*32+15) /*A No Primary Stale Data Propagation */ XEN_CPUFEATURE(FB_CLEAR, 16*32+17) /*A Fill Buffers cleared by VERW */ XEN_CPUFEATURE(FB_CLEAR_CTRL, 16*32+18) /* MSR_OPT_CPU_CTRL.FB_CLEAR_DIS */ -XEN_CPUFEATURE(RRSBA, 16*32+19) /*!A Restricted RSB Alternative */ +XEN_CPUFEATURE(RRSBA, 16*32+19) /*! Restricted RSB Alternative */ XEN_CPUFEATURE(BHI_NO, 16*32+20) /*A No Branch History Injection */ XEN_CPUFEATURE(XAPIC_STATUS, 16*32+21) /* MSR_XAPIC_DISABLE_STATUS */ XEN_CPUFEATURE(OVRCLK_STATUS, 16*32+23) /* MSR_OVERCLOCKING_STATUS */ diff --git a/xen/tools/gen-cpuid.py b/xen/tools/gen-cpuid.py index 973fcc1c64e8..72cf11654ba9 100755 --- a/xen/tools/gen-cpuid.py +++ b/xen/tools/gen-cpuid.py @@ -318,7 +318,7 @@ def crunch_numbers(state): # IBRSB/IBRS, and we pass this MSR directly to guests. Treating them # as dependent features simplifies Xen's logic, and prevents the guest # from seeing implausible configurations. - IBRSB: [STIBP, SSBD, INTEL_PSFD], + IBRSB: [STIBP, SSBD, INTEL_PSFD, EIBRS], IBRS: [AMD_STIBP, AMD_SSBD, PSFD, AUTO_IBRS, IBRS_ALWAYS, IBRS_FAST, IBRS_SAME_MODE], AMD_STIBP: [STIBP_ALWAYS], @@ -328,6 +328,9 @@ def crunch_numbers(state): # The ARCH_CAPS CPUID bit enumerates the availability of the whole register. ARCH_CAPS: list(range(RDCL_NO, RDCL_NO + 64)), + + # The behaviour described by RRSBA depend on eIBRS being active. + EIBRS: [RRSBA], } deep_features = tuple(sorted(deps.keys())) -- 2.30.2 From xen-devel-bounces@lists.xenproject.org Thu Jun 01 14:49:01 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 14:49:01 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542597.846623 (Exim 4.92) (envelope-from ) id 1q4jbl-0005tM-Ds; Thu, 01 Jun 2023 14:48:57 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542597.846623; Thu, 01 Jun 2023 14:48:57 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4jbl-0005tF-AR; Thu, 01 Jun 2023 14:48:57 +0000 Received: by outflank-mailman (input) for mailman id 542597; Thu, 01 Jun 2023 14:48:55 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4jbj-0005t4-G4 for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 14:48:55 +0000 Received: from esa2.hc3370-68.iphmx.com (esa2.hc3370-68.iphmx.com [216.71.145.153]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 6c356c00-008b-11ee-8611-37d641c3527e; Thu, 01 Jun 2023 16:48:52 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 6c356c00-008b-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1685630932; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=IcofpnS6XGYluTyt2W7nbS+cq7NfLxqLKtySG8hnQ+Y=; b=Vfj86GDiCMxVhqzvivBvpHPZvXDxLqK1x7wTNvjrYVDf7SFSipech996 acS3+SmmGAL3BY5KqUnMXIv4db4/uN5Z8J+VItoKd0vbb9T3gFGA+5uzL CD0toHi3VtP6SWOc84uTqtFaSB862fivCvoK8IsyODlEHk+yHfRPsO+xz 8=; Authentication-Results: esa2.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none X-SBRS: 4.0 X-MesageID: 111123534 X-Ironport-Server: esa2.hc3370-68.iphmx.com X-Remote-IP: 162.221.156.123 X-Policy: $RELAYED IronPort-Data: A9a23:rgLZB6JfgrxzOSzEFE+RzZUlxSXFcZb7ZxGr2PjKsXjdYENS0WQEy mYXCGyPOfrZYjP2KIskPIW/pk8PvpXQzoBlQVRlqX01Q3x08seUXt7xwmUcnc+xBpaaEB84t ZV2hv3odp1coqr0/0/1WlTZhSAgk/rOHvykU7Ss1hlZHWdMUD0mhQ9oh9k3i4tphcnRKw6Ws Jb5rta31GWNglaYCUpKrfrbwP9TlK6q4mhA4ARnPasjUGL2zBH5MrpOfcldEFOgKmVkNrbSb /rOyri/4lTY838FYj9yuu+mGqGiaue60Tmm0hK6aYD76vRxjnVaPpIAHOgdcS9qZwChxLid/ jnvWauYEm/FNoWU8AgUvoIx/ytWZcWq85efSZSzXFD6I+QrvBIAzt03ZHzaM7H09c5QGnkW3 /YXBQsASVeBnt+ZwLfnZNlV05FLwMnDZOvzu1llxDDdS/0nXYrCU+PB4towMDUY354UW6yEP oxANGQpNU6bC/FMEg5/5JYWteGknHTgNRZfr0qYv/Ef6GnP1g1hlrPqNbI5f/TTHJwMxB3F/ T6uE2LRUzYhH9Hclya8rVWBpt73wiXkA7sNG+jtnhJtqALKnTFCYPEMbnOrrP/8hkOgVtZ3L 00P5jFovaU07FasTNT2Q1u/unHsljw2VsdUEuY6wBqQ0aeS6AGcbkAbShZRZdpgs9U5LQHGz XfQwYmvX2Y29uTIFzTErOz8QS6O1TY9CnQaPQUOQiY+7v6kopgOoRLKEvhTKfvg5jHqIg3Yz zePpSk4orwci88Xyqm2lWz6byKQSovhFVBsuFiONo6xxkYgPdP+OdT0gbTOxawYRLt1WGVtq 5TtdyK2yOkVRa+AmyWWKAnmNOH4vq3VWNEwbLMGInXAy9hP0yfyFWyzyGskTKuMDirjUWGBX aMrkVkNjKK/xVPzBUONX6q/Ct4x0Y/rHsn/W/bfY7JmO8YhKVLao3EzPRbNjwgBdXTAd4llY /93lu71XB4n5VlPlmLqF4/xL5d2rszB+Y8jbc+ilEn2uVZvTHWUVa0EIDOzghMRtcu5TPHu2 48HbaOikkwPONASlwGLqeb/23hWdylkbX03wuQLHtO+zv1OQzp5Va+BkO54J+SIXc19z4/1w 510YWcAoHKXuJENAV7ihqxLAF83YatCkA== IronPort-HdrOrdr: A9a23:i/bT46xvZcdN2Lvrb5FrKrPw3L1zdoMgy1knxilNoHxuH/Bw9v re+8jzsCWftN9/Yh4dcLy7VpVoBEmslqKdgrNhWYtKPjOHhILAFugLgbcKgQeQeREWntQ36U 4KSdkaNDSfNzlHZcaR2njFLz4jquP3j5xBU43lvglQpQIBUdAQ0+9gYDzrdHGf3GN9dOAE/J z33Ls/mxOQPU45Q+6cHXc/U+3Kt7Tw5e/biU5vPW9e1OGW5wnYk4LHLw== X-Talos-CUID: =?us-ascii?q?9a23=3AnrwEImnAi6tmRg+LuSy9AAVXZNDXOVrG1C/6KUC?= =?us-ascii?q?VMmtOD7+MdHCQ/f9Ko/M7zg=3D=3D?= X-Talos-MUID: 9a23:JXvoWAsmyXPyJfR/x82n1RZZH8orvbiXV2cgsaQ+5M+bbhVvNGLI X-IronPort-AV: E=Sophos;i="6.00,210,1681185600"; d="scan'208";a="111123534" From: Andrew Cooper To: Xen-devel CC: Andrew Cooper , Jan Beulich , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Wei Liu Subject: [PATCH v2 1/3] x86/spec-ctrl: Rename retpoline_safe() to retpoline_calculations() Date: Thu, 1 Jun 2023 15:48:43 +0100 Message-ID: <20230601144845.1554589-2-andrew.cooper3@citrix.com> X-Mailer: git-send-email 2.30.2 In-Reply-To: <20230601144845.1554589-1-andrew.cooper3@citrix.com> References: <20230601144845.1554589-1-andrew.cooper3@citrix.com> MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit This is prep work, split out to simply the diff on the following change. * Rename to retpoline_calculations(), and call unconditionally. It is shortly going to synthesise missing enumerations required for guest safety. * For the model check switch statement, store the result in a variable and break rather than returning directly. No functional change. Signed-off-by: Andrew Cooper --- CC: Jan Beulich CC: Roger Pau Monné CC: Wei Liu v2: * Extend the 'safe' variable to the entire switch statement. --- xen/arch/x86/spec_ctrl.c | 41 +++++++++++++++++++++++++--------------- 1 file changed, 26 insertions(+), 15 deletions(-) diff --git a/xen/arch/x86/spec_ctrl.c b/xen/arch/x86/spec_ctrl.c index cd5ea6aa52d9..daee61900afa 100644 --- a/xen/arch/x86/spec_ctrl.c +++ b/xen/arch/x86/spec_ctrl.c @@ -580,9 +580,10 @@ static bool __init check_smt_enabled(void) } /* Calculate whether Retpoline is known-safe on this CPU. */ -static bool __init retpoline_safe(void) +static bool __init retpoline_calculations(void) { unsigned int ucode_rev = this_cpu(cpu_sig).rev; + bool safe = false; if ( boot_cpu_data.x86_vendor & (X86_VENDOR_AMD | X86_VENDOR_HYGON) ) return true; @@ -620,29 +621,31 @@ static bool __init retpoline_safe(void) case 0x3f: /* Haswell EX/EP */ case 0x45: /* Haswell D */ case 0x46: /* Haswell H */ - return true; + safe = true; + break; /* * Broadwell processors are retpoline-safe after specific microcode * versions. */ case 0x3d: /* Broadwell */ - return ucode_rev >= 0x2a; + safe = ucode_rev >= 0x2a; break; case 0x47: /* Broadwell H */ - return ucode_rev >= 0x1d; + safe = ucode_rev >= 0x1d; break; case 0x4f: /* Broadwell EP/EX */ - return ucode_rev >= 0xb000021; + safe = ucode_rev >= 0xb000021; break; case 0x56: /* Broadwell D */ switch ( boot_cpu_data.x86_mask ) { - case 2: return ucode_rev >= 0x15; - case 3: return ucode_rev >= 0x7000012; - case 4: return ucode_rev >= 0xf000011; - case 5: return ucode_rev >= 0xe000009; + case 2: safe = ucode_rev >= 0x15; break; + case 3: safe = ucode_rev >= 0x7000012; break; + case 4: safe = ucode_rev >= 0xf000011; break; + case 5: safe = ucode_rev >= 0xe000009; break; default: printk("Unrecognised CPU stepping %#x - assuming not reptpoline safe\n", boot_cpu_data.x86_mask); - return false; + safe = false; + break; } break; @@ -656,7 +659,8 @@ static bool __init retpoline_safe(void) case 0x67: /* Cannonlake? */ case 0x8e: /* Kabylake M */ case 0x9e: /* Kabylake D */ - return false; + safe = false; + break; /* * Atom processors before Goldmont Plus/Gemini Lake are retpoline-safe. @@ -675,13 +679,17 @@ static bool __init retpoline_safe(void) case 0x5c: /* Goldmont */ case 0x5f: /* Denverton */ case 0x85: /* Knights Mill */ - return true; + safe = true; + break; default: printk("Unrecognised CPU model %#x - assuming not reptpoline safe\n", boot_cpu_data.x86_model); - return false; + safe = false; + break; } + + return safe; } /* @@ -1114,7 +1122,7 @@ void __init init_speculation_mitigations(void) { enum ind_thunk thunk = THUNK_DEFAULT; bool has_spec_ctrl, ibrs = false, hw_smt_enabled; - bool cpu_has_bug_taa; + bool cpu_has_bug_taa, retpoline_safe; hw_smt_enabled = check_smt_enabled(); @@ -1140,6 +1148,9 @@ void __init init_speculation_mitigations(void) thunk = THUNK_JMP; } + /* Determine if retpoline is safe on this CPU. */ + retpoline_safe = retpoline_calculations(); + /* * Has the user specified any custom BTI mitigations? If so, follow their * instructions exactly and disable all heuristics. @@ -1161,7 +1172,7 @@ void __init init_speculation_mitigations(void) * On all hardware, we'd like to use retpoline in preference to * IBRS, but only if it is safe on this hardware. */ - if ( retpoline_safe() ) + if ( retpoline_safe ) thunk = THUNK_RETPOLINE; else if ( has_spec_ctrl ) ibrs = true; -- 2.30.2 From xen-devel-bounces@lists.xenproject.org Thu Jun 01 14:49:01 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 14:49:01 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542599.846643 (Exim 4.92) (envelope-from ) id 1q4jbn-0006NK-21; Thu, 01 Jun 2023 14:48:59 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542599.846643; Thu, 01 Jun 2023 14:48:59 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4jbm-0006NC-VQ; Thu, 01 Jun 2023 14:48:58 +0000 Received: by outflank-mailman (input) for mailman id 542599; Thu, 01 Jun 2023 14:48:57 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4jbl-0005t4-F7 for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 14:48:57 +0000 Received: from esa2.hc3370-68.iphmx.com (esa2.hc3370-68.iphmx.com [216.71.145.153]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 6e93d0fc-008b-11ee-8611-37d641c3527e; Thu, 01 Jun 2023 16:48:55 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 6e93d0fc-008b-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1685630935; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=4fvPFTN01BOhGOiMjRrOl+jDQlX0oz34/lNnkFP6f1o=; b=AapmWM7nj3czncNMLMTeBt/y/3VVaC5Fk24jJRX8OZMW9JMQWdwaeWTD 5ixtnGu6brNGK7lEPUtkQkI/qUso61m/8cDjP2jw26qxxHUmEviNmVN4R gpcCp4wbmtRTNO7YdVVxe++RvyeETcII1cso8BEaIP+JnBLwdsdgWKdKH I=; Authentication-Results: esa2.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none X-SBRS: 4.0 X-MesageID: 111123535 X-Ironport-Server: esa2.hc3370-68.iphmx.com X-Remote-IP: 162.221.156.123 X-Policy: $RELAYED IronPort-Data: A9a23:Y+K1nKITCehldSijFE+RzZUlxSXFcZb7ZxGr2PjKsXjdYENShWAOz GMaDz+FP/iDYmukLdB2aIWzoBhVvMPVy9RiQARlqX01Q3x08seUXt7xwmUcnc+xBpaaEB84t ZV2hv3odp1coqr0/0/1WlTZhSAgk/rOHvykU7Ss1hlZHWdMUD0mhQ9oh9k3i4tphcnRKw6Ws Jb5rta31GWNglaYCUpKrfrbwP9TlK6q4mhA4ARnPasjUGL2zBH5MrpOfcldEFOgKmVkNrbSb /rOyri/4lTY838FYj9yuu+mGqGiaue60Tmm0hK6aYD76vRxjnVaPpIAHOgdcS9qZwChxLid/ jnvWauYEm/FNoWU8AgUvoIx/ytWZcWq85efSZSzXFD6I+QrvBIAzt03ZHzaM7H09c5QGnkW3 /YXBQsASVeBnt+ZwLfnZNlV05FLwMnDZOvzu1llxDDdS/0nXYrCU+PB4towMDUY354UW6yEP oxANGQpNU6bC/FMEg5/5JYWteGknHTgNRZfr0qYv/Ef6GnP1g1hlrPqNbI5f/TTHJwMxB3F/ T+uE2LRGEkQO9K+8ii+4HOGiu3vg3rwH6EJPejtnhJtqALKnTFCYPEMbnOrrP/8hkOgVtZ3L 00P5jFovaU07FasTNT2Q1u/unHsljw2VsdUEuY6wBqQ0aeS6AGcbkAbShZRZdpgs9U5LQHGz XfQwYmvX2Y29uTIFzTErOz8QS6O1TY9CnQaPQUOQiY+7v6kopgOoRLKEvhTKfvg5jHqIg3Yz zePpSk4orwci88Xyqm2lWz6byKQSovhFVBsuFiONo6xxkYgPdP+OdT0gbTOxawYRLt1WGVtq 5TtdyK2yOkVRa+AmyWWKAnmNOH4vq3VWNEwbLMGInXAy9hP0yfyFWyzyGskTKuMDirjUWGBX aMrkVkNjKK/xVPzBUONX6q/Ct4x0Y/rHsn/W/bfY7JmO8YhKVLao3EzPRbNjwgBdXTAd4llY /93lu71XB4n5VlPlmLqF4/xL5d2rszB+Y8jbc+ilEn2uVZvTHWUVa0EIDOzghMRtcu5TPHu2 48HbaOikkwPONASlwGLqeb/23hWdylkbX03wuQLHtO+zv1OQzp5Va+BkO54J+SIXc19z4/1w 510YWcAoHKXuJENAV7ihqxLAF83YatCkA== IronPort-HdrOrdr: A9a23:iueOjaMUt1U+o8BcTjGjsMiBIKoaSvp037BK7S1MoH1uA6ulfq WV9sjzuiWatN98Yh8dcJW7Scq9qBDnhPpICOsqXYtKNTOO0AeVxcNZnOnfKlXbcBEWndQtsJ uIHZIeNDXxZ2IK8foT4mODYqkdKA/sytHXuQ/cpU0dPD2Dc8tbnmFE4p7wKDwNeOFBb6BJba a01458iBeLX28YVci/DmltZZm/mzWa/KiWGSLvHnQcmXKzsQ8= X-Talos-CUID: 9a23:MEpBj2zb1RQjoUzPsYl6BgUzAdh9WHfS4UzdBAi6EFtGSLjJZ2+prfY= X-Talos-MUID: =?us-ascii?q?9a23=3AnIQMxwx87zXHzQbFYOzgqDDv48CaqL72Ak8DsK4?= =?us-ascii?q?UgNuFHyByGynEh3OUWaZyfw=3D=3D?= X-IronPort-AV: E=Sophos;i="6.00,210,1681185600"; d="scan'208";a="111123535" From: Andrew Cooper To: Xen-devel CC: Andrew Cooper , Jan Beulich , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Wei Liu Subject: [PATCH v2 2/3] x86/spec-ctrl: Fix up the RSBA/RRSBA bits as appropriate Date: Thu, 1 Jun 2023 15:48:44 +0100 Message-ID: <20230601144845.1554589-3-andrew.cooper3@citrix.com> X-Mailer: git-send-email 2.30.2 In-Reply-To: <20230601144845.1554589-1-andrew.cooper3@citrix.com> References: <20230601144845.1554589-1-andrew.cooper3@citrix.com> MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit In order to level a VM safely for migration, the toolstack needs to know the RSBA/RRSBA properties of the CPU, whether or not they happen to be enumerated. See the code comment for details. Signed-off-by: Andrew Cooper --- CC: Jan Beulich CC: Roger Pau Monné CC: Wei Liu v2: * Rewrite almost from scratch. --- xen/arch/x86/include/asm/cpufeature.h | 1 + xen/arch/x86/spec_ctrl.c | 92 +++++++++++++++++++++++++-- 2 files changed, 88 insertions(+), 5 deletions(-) diff --git a/xen/arch/x86/include/asm/cpufeature.h b/xen/arch/x86/include/asm/cpufeature.h index ace31e3b1f1a..e2cb8f3cc728 100644 --- a/xen/arch/x86/include/asm/cpufeature.h +++ b/xen/arch/x86/include/asm/cpufeature.h @@ -193,6 +193,7 @@ static inline bool boot_cpu_has(unsigned int feat) #define cpu_has_tsx_ctrl boot_cpu_has(X86_FEATURE_TSX_CTRL) #define cpu_has_taa_no boot_cpu_has(X86_FEATURE_TAA_NO) #define cpu_has_fb_clear boot_cpu_has(X86_FEATURE_FB_CLEAR) +#define cpu_has_rrsba boot_cpu_has(X86_FEATURE_RRSBA) /* Synthesized. */ #define cpu_has_arch_perfmon boot_cpu_has(X86_FEATURE_ARCH_PERFMON) diff --git a/xen/arch/x86/spec_ctrl.c b/xen/arch/x86/spec_ctrl.c index daee61900afa..29ed410da47a 100644 --- a/xen/arch/x86/spec_ctrl.c +++ b/xen/arch/x86/spec_ctrl.c @@ -579,7 +579,10 @@ static bool __init check_smt_enabled(void) return false; } -/* Calculate whether Retpoline is known-safe on this CPU. */ +/* + * Calculate whether Retpoline is known-safe on this CPU. Fix up the + * RSBA/RRSBA bits as necessary. + */ static bool __init retpoline_calculations(void) { unsigned int ucode_rev = this_cpu(cpu_sig).rev; @@ -593,15 +596,85 @@ static bool __init retpoline_calculations(void) return false; /* - * RSBA may be set by a hypervisor to indicate that we may move to a - * processor which isn't retpoline-safe. + * The meaning of the RSBA and RRSBA bits have evolved over time. The + * agreed upon meaning at the time of writing (May 2023) is thus: + * + * - RSBA (RSB Alternative) means that an RSB may fall back to an + * alternative predictor on underflow. Skylake uarch and later all have + * this property. Broadwell too, when running microcode versions prior + * to Jan 2018. + * + * - All eIBRS-capable processors suffer RSBA, but eIBRS also introduces + * tagging of predictions with the mode in which they were learned. So + * when eIBRS is active, RSBA becomes RRSBA (Restricted RSBA). + * + * - CPUs are not expected to enumerate both RSBA and RRSBA. + * + * Some parts (Broadwell) are not expected to ever enumerate this + * behaviour directly. Other parts have differing enumeration with + * microcode version. Fix up Xen's idea, so we can advertise them safely + * to guests, and so toolstacks can level a VM safety for migration. + * + * The following states exist: + * + * | | RSBA | EIBRS | RRSBA | Notes | Action | + * |---+------+-------+-------+--------------------+---------------| + * | 1 | 0 | 0 | 0 | OK (older parts) | Maybe +RSBA | + * | 2 | 0 | 0 | 1 | Broken | +RSBA, -RRSBA | + * | 3 | 0 | 1 | 0 | OK (pre-Aug ucode) | +RRSBA | + * | 4 | 0 | 1 | 1 | OK | | + * | 5 | 1 | 0 | 0 | OK | | + * | 6 | 1 | 0 | 1 | Broken | -RRSBA | + * | 7 | 1 | 1 | 0 | Broken | -RSBA, +RRSBA | + * | 8 | 1 | 1 | 1 | Broken | -RSBA | * + * However, we doesn't need perfect adherence to the spec. Identify the + * broken cases (so we stand a chance of spotting violated assumptions), + * and fix up Rows 1 and 3 so Xen can use RSBA || RRSBA to identify + * "alternative predictors potentially in use". + */ + if ( cpu_has_eibrs ? cpu_has_rsba /* Rows 7, 8 */ + : cpu_has_rrsba /* Rows 2, 6 */ ) + printk(XENLOG_ERR + "FIRMWARE BUG: CPU %02x-%02x-%02x, ucode 0x%08x: RSBA %u, EIBRS %u, RRSBA %u\n", + boot_cpu_data.x86, boot_cpu_data.x86_model, + boot_cpu_data.x86_mask, ucode_rev, + cpu_has_rsba, cpu_has_eibrs, cpu_has_rrsba); + + /* * Processors offering Enhanced IBRS are not guarenteed to be * repoline-safe. */ - if ( cpu_has_rsba || cpu_has_eibrs ) + if ( cpu_has_eibrs ) + { + /* + * Prior to the August 2023 microcode, many eIBRS-capable parts did + * not enumerate RRSBA. + */ + if ( !cpu_has_rrsba ) + setup_force_cpu_cap(X86_FEATURE_RRSBA); + + return false; + } + + /* + * RSBA is explicitly enumerated in some cases, but may also be set by a + * hypervisor to indicate that we may move to a processor which isn't + * retpoline-safe. + */ + if ( cpu_has_rsba ) return false; + /* + * At this point, we've filtered all the legal RSBA || RRSBA cases (or the + * known non-ideal cases). If ARCH_CAPS is visible, trust the absence of + * RSBA || RRSBA. There's no known microcode which advertises ARCH_CAPS + * without RSBA or EIBRS, and if we're virtualised we can't rely the model + * check anyway. + */ + if ( cpu_has_arch_caps ) + return true; + switch ( boot_cpu_data.x86_model ) { case 0x17: /* Penryn */ @@ -689,6 +762,15 @@ static bool __init retpoline_calculations(void) break; } + if ( !safe ) + { + /* + * Note: the eIBRS-capable parts are filtered out earlier, so the + * remainder here are the ones which suffer only RSBA behaviour. + */ + setup_force_cpu_cap(X86_FEATURE_RSBA); + } + return safe; } @@ -1148,7 +1230,7 @@ void __init init_speculation_mitigations(void) thunk = THUNK_JMP; } - /* Determine if retpoline is safe on this CPU. */ + /* Determine if retpoline is safe on this CPU. Fix up RSBA/RRSBA enumerations. */ retpoline_safe = retpoline_calculations(); /* -- 2.30.2 From xen-devel-bounces@lists.xenproject.org Thu Jun 01 14:49:04 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 14:49:04 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542598.846629 (Exim 4.92) (envelope-from ) id 1q4jbl-0005ys-Qi; Thu, 01 Jun 2023 14:48:57 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542598.846629; Thu, 01 Jun 2023 14:48:57 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4jbl-0005xL-MZ; Thu, 01 Jun 2023 14:48:57 +0000 Received: by outflank-mailman (input) for mailman id 542598; Thu, 01 Jun 2023 14:48:56 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4jbk-0005t4-FO for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 14:48:56 +0000 Received: from esa4.hc3370-68.iphmx.com (esa4.hc3370-68.iphmx.com [216.71.155.144]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 6d7ab5a2-008b-11ee-8611-37d641c3527e; Thu, 01 Jun 2023 16:48:54 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 6d7ab5a2-008b-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1685630934; h=from:to:cc:subject:date:message-id:mime-version: content-transfer-encoding; bh=s55Bg1RE/VtrmSUQ06M8Ht8TG3TDHN6a4seG18aiU7U=; b=hp+yhK932vPBwDQI/TQQvY1/Ueb8Q6/omS3Fc74H4paMh6Q8rS5DlujN bFiNJp5Lkd24Rbh+7ZVdEpvhJjxpNxs4umaX4oEFaeOg6WS8Q6gTEMNuv y/SkAm85U8MUj2mp2MiBd/WNnhbUP862G4+UutQv6XfBTNGTQNmfmht10 I=; Authentication-Results: esa4.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none X-SBRS: 4.0 X-MesageID: 113728656 X-Ironport-Server: esa4.hc3370-68.iphmx.com X-Remote-IP: 162.221.156.123 X-Policy: $RELAYED IronPort-Data: A9a23:rfGT8K+g8p3YTwSeBBYbDrUDnH6TJUtcMsCJ2f8bNWPcYEJGY0x3y GIfXm3Qa/iCZWSmLYhyati09koGv5DVnNZgGVRpqys8E34SpcT7XtnIdU2Y0wF+jCHgZBk+s 5hBMImowOQcFCK0SsKFa+C5xZVE/fjUAOG6UKicYXoZqTZMEE8JkQhkl/MynrlmiN24BxLlk d7pqojUNUTNNwRcawr40Ird7ks31BjOkGlA5AdmO6gS5AS2e0Q9V/rzG4ngdxMUfaEMdgKKb 76r5K20+Grf4yAsBruN+losWhRXKlJ6FVHmZkt+A8BOsDAbzsAB+v9T2M4nQVVWk120c+VZk 72hg3ASpTABZcUgkMxFO/VR/roX0aduoNcrKlDn2SCfItGvn9IBDJyCAWlvVbD09NqbDklX9 uM3MncoSyyxrMfqyayRV7Mxr8s8eZyD0IM34hmMzBncBPciB5vCX7/L9ZlT2zJYasJmRKiEI ZBDMHw2MUqGOkcUUrsUIMtWcOOAr3/zaTBH7nmSorI6+TP7xw1tyrn9dtHSf7RmQO0Mxx3H/ DKYojqR7hcyOICU0TDZ/GqQrObzzXnnYNg8JLKo6as/6LGU7jNKU0BHPbehmtGph0j7V99BJ kg8/is1sbN05EGtVsP6XRCzvDiDpBF0c/h6HvA+6QqN4rHJ+AvfDW8BJhZebPQ2uclwQiYlv mJlhPuwW2Yp6ufMDyvAqPHN92ja1TUpwXEqfCwbYhFCxvzfkqoW0hvRZMs5TYe6kYigcd3v+ AyioC87jrQVqMcE0aSn4FzK6w6RSoj1oh0dvVuOAD/8hu9tTMv8PtHztwCHhRpVBNzBJmRtq kTojCR3AAomKZiW3BKAT+wWdF1Cz6bUaWaM6bKD8nRIythMx5JBVdkBiN2dDB0zWirhRdMOS BG7hO+pzMUPVEZGlIcuC25LN+wkzLL7CfPuXe3OY9xFb/BZLVHXoXwzOh7NhziwwCDAdJ3T3 7/BK65A6l5DWMxaIMeeHb9BgdfHOAhjrY8seXwL50v+iufPDJJkYbwELEGPfogEAFCs+W3oH yJkH5LSkX13CbSuChQ7BKZPdTjm21BnX8GpwyGWH8bfSjdb9JYJUKSJn+NxKtE8w8y4VI7gp xmAZ6OR83Kn7VWvFOlAQiwLhG/HNXqnkU8GAA== IronPort-HdrOrdr: A9a23:kJVDcqPQnjCvfcBcT0r155DYdb4zR+YMi2TDiHoddfUFSKalfp 6V98jzjSWE8Qr4WBkb6LO90dq7MAvhHP9OkMEs1NKZMDUO11HYS72KgbGC/9SCIVy0ygc+79 YHT0EWMrSZYjZHZK3BkWuF+qMbsb26GdeT9ILjJhlWLT1CWuVF1UNUGwybGkp5SE1tHpwiDq eR4cJBun6JZWkXRt7TPAhJY8Hz4/nw0L72ax8PABAqrCOUiymz1bL8Gx+Emj8DTjJ0x6s4+2 StqX202kzjiYD19vbv7R6T031koqqg9jKFPr3OtiEhEESjtu9vXvUiZ1TNhkFxnAjl0idQrD CFmWZbAy000QKaQoj9m2qQ5+HtvQxelkPK2BuWh2Durtf+Qy9/A81dhZhBeh+c8EY4uspguZ g7qF5xGKAnfS8osR6NkuQgbSsa4nacsD4ni6oennZfWYwRZPtYqpEe5lpcFNMFEDjh4I4qHe FyBIWEjcwmOG+yfjTcpC1i0dasVnM8ElOPRVUDoNWc13xTkGpix0UVycQDljML9Y47SZND++ PYW54Y4o1mX4sTd+ZwFe0BScy4BijERg/NKnubJRD9GKQOKxv22uzKCXUOlZKXkbAzveoPcc 76ISxlXEYJCjzTNfE= X-Talos-CUID: 9a23:e3DjSmC/6YAsPyr6EzBk62EOXeUATk/26SvZPWWlUztAR6LAHA== X-Talos-MUID: 9a23:V654/QrbQW/+RnabX08ezz0+P99iv6q2NGoErcVcp/HeGxx/KyjI2Q== X-IronPort-AV: E=Sophos;i="6.00,210,1681185600"; d="scan'208";a="113728656" From: Andrew Cooper To: Xen-devel CC: Andrew Cooper , Jan Beulich , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Wei Liu Subject: [PATCH v2 0/3] x86: RSBA and RRSBA handling Date: Thu, 1 Jun 2023 15:48:42 +0100 Message-ID: <20230601144845.1554589-1-andrew.cooper3@citrix.com> X-Mailer: git-send-email 2.30.2 MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit This series deals with the hanlding of the RSBA and RRSBA bits across all parts and all mistakes encountered in various microcode versions. There are substantial changes from v1, following a clarification from Intel. Importantly, CPUs are not expected to enumerate both RSBA and RRSBA, therefore we should do the same for VMs. Andrew Cooper (3): x86/spec-ctrl: Rename retpoline_safe() to retpoline_calculations() x86/spec-ctrl: Fix up the RSBA/RRSBA bits as appropriate x86/cpu-policy: Derive RSBA/RRSBA for guest policies xen/arch/x86/cpu-policy.c | 53 ++++++++ xen/arch/x86/include/asm/cpufeature.h | 1 + xen/arch/x86/spec_ctrl.c | 131 +++++++++++++++++--- xen/include/public/arch-x86/cpufeatureset.h | 4 +- xen/tools/gen-cpuid.py | 5 +- 5 files changed, 172 insertions(+), 22 deletions(-) -- 2.30.2 From xen-devel-bounces@lists.xenproject.org Thu Jun 01 14:51:25 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 14:51:25 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542614.846663 (Exim 4.92) (envelope-from ) id 1q4je8-0000YO-Nh; Thu, 01 Jun 2023 14:51:24 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542614.846663; Thu, 01 Jun 2023 14:51:24 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4je8-0000YH-KH; Thu, 01 Jun 2023 14:51:24 +0000 Received: by outflank-mailman (input) for mailman id 542614; Thu, 01 Jun 2023 14:51:22 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4je6-0000Xy-N8 for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 14:51:22 +0000 Received: from EUR02-DB5-obe.outbound.protection.outlook.com (mail-db5eur02on20627.outbound.protection.outlook.com [2a01:111:f400:fe12::627]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id c5a318a3-008b-11ee-b231-6b7b168915f2; Thu, 01 Jun 2023 16:51:21 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by DU0PR04MB9345.eurprd04.prod.outlook.com (2603:10a6:10:355::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.22; Thu, 1 Jun 2023 14:51:19 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6433.024; Thu, 1 Jun 2023 14:51:19 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: c5a318a3-008b-11ee-b231-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=CFA/RqTyi2jYw56JJ2wurf7M537mfGA4JUQuSvkohvk1s2B3SbVqWkCrOWyEVtlphBAynucchNhNW3jCvfgfYYzKuw15yKE1/d/jKrN4xBoBMhT3TLtUe9VNoCZnlTg79l/4mBLoIlEFWEJF8AAXyJssWzuUm8/nQ9+fZSdBviUVf+icZze7d23NOwdwxX4RJRurb4m3vs1n15/EkWyaMYXZifP+7P2nCieSwPg3FBNKfl4N7gClnBNQMu25msOnCd7hEqSXPnTYtq+D5Z5ME7QmV3LnzUyLwbmr8GNcpbW/zX6GLYkWjXWo5eeVbH94y7rjqZnP68XAH0ST22GJFg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=eryvMzI/DJ8unn5X+bS0BiBjuwp23BFLNcWOOSyQKL4=; b=BnXg7OtFyf+mgvC88O93DVDjoIAy3UG5XsWOGhUZINSPvoD+smXuy/1U3jvpPtPct/rbcSUQ6HQ3uB5CVKkMjPt5OXJV1bIAkG5mlmPp7ftHE9cNuyqDr19foG4mO+Tfy9TLzbsonfU7/buxnyfxH/aUgQl1cq3H5bsDaVFmJkdY3CO6F4L7J3kh8xEm5/7nr1ojKn5ZrGp1OCfAPpDkLDUpECiWeJ4glGOWTnIO2tTorjS5tkEVfPUDgnCfoU31znvLk4j+iGZzIno3YcVRWuCaEfJPCBZdNDkNoFRbi+VBH2vJERo1XzoTI306RFea5Rttq7/pnyL6e0vYkPuVyg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=eryvMzI/DJ8unn5X+bS0BiBjuwp23BFLNcWOOSyQKL4=; b=GdawOlj6D+pwAQ+CDiJzkqcDvEPzy//IobG2Pl8hE4APiH5+rNd40ykh+bn7AbEpaQ5fZKZRKbmAg/y6YO1QlGI8GUcZP+lgjVumMsEJGhXI7UybZ1zQxzo2TM+FS9/qjodz5c90uTUJvVgRFAEMMwUckZwQMtNQNa3qpInekYuXRLBJsV/j2SOEue+8o/+bNphRK6BMRiNH7hR0QLqqFb0DBF/vg1KQaVoJZyThZxEDlJO9e/bT0kFUhklNaQ6H/mnwx9bqaJ+ioJ+Gv3TxT25IC7wPlsETIxrQjZ9vt7KsUdkOtWpWSPBMepiHy53qZlTf8ZyP7Yhl8ZeDNjzOeA== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <47610aec-3cb7-ca21-cd84-834b0728f29e@suse.com> Date: Thu, 1 Jun 2023 16:51:17 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH] x86/ucode: Exit early from early_update_cache() if loading not available Content-Language: en-US To: Andrew Cooper Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , Alejandro Vallejo , Xen-devel References: <20230601143813.1553740-1-andrew.cooper3@citrix.com> From: Jan Beulich In-Reply-To: <20230601143813.1553740-1-andrew.cooper3@citrix.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR3P281CA0201.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:a5::13) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|DU0PR04MB9345:EE_ X-MS-Office365-Filtering-Correlation-Id: 04ef2d9f-5337-4081-3f22-08db62afa86c X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: Abv3gYZ7iYVo+Od2vABwtzClToz/QjG7ERLgxhXafwWZzORWhujMJcWzsFhDT0Znq9H4/vuJBv6B1tV52KH9LnDDtYr3BCtBJL84YWk3c+mRyGxCCcjIGtbej3zMQ2pSNXzDg3FkMb7Cj90TySusuT2wDgqB7Ab/HiUfwbFQBXA2xOePHRbYAt6umsY3jRTXphbDS392FbmnagiUZoXnbOG1DoxNFuCKWAyczMtXM0f1fiOKH5vxbS1VsSYQqCADCYaOHQK5skKG251rbKZusSCP90wdy543Jg0vsmrRju4KdRqJuvjhAHJqD/3nKBy7EvF+841n5yxmN8ijHduDz+0kl3zuiY8F0zV43/HpYXXQZA2kzEKYnP1715N4X2XrSnvx9sF/NZQCzqXD+AR3j7lD+PVjnpTaT+Hj3wuRqsYJWrThii2BSEXi/4Gt4sSQICDxNN1WR3i0bUc5B546qep4MfpHan54+gCksT4IWqXkPqruoTPXI8EY47GMJL1qty9+uUh3pC0WgjAggH6UWZMqKD3E6dloSzihGLFlX7gvUSLe2ZAAatuarXxtvZ+sTxOb41TM1rIDx1k40VQUzt+3XROyeo1QQFqOtjoqQxgLFEiMcrOoJbttFFwebs3rVYswrwhOPl3xCRHJHyKLiw== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(366004)(136003)(346002)(396003)(376002)(39860400002)(451199021)(66556008)(6916009)(66946007)(66476007)(31686004)(4326008)(316002)(41300700001)(54906003)(8676002)(2906002)(8936002)(5660300002)(6486002)(478600001)(36756003)(53546011)(26005)(6512007)(186003)(83380400001)(2616005)(31696002)(86362001)(6506007)(38100700002)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?a2NOYnpsN1laTk0xanZzTmlVZlFsdEx3TU9hcVhHamxKUjFRSzRvN0l5M1lH?= =?utf-8?B?TVdEK1BMSk9jd3hpMnVKZE9mdDN5UzFMZk1RV2dCamkrNlViWFdaY2p4QVN0?= =?utf-8?B?NlE0dTJMdmxtbm0xMEtTdjgzQ0czZzhXKzdLM3N4MnFSMzdwQ2MreVA4UVJ0?= =?utf-8?B?bWxNNmFadmZacFlQTThQWlFYd3lLdGlHdjAxaFRWR3UwcUhMWmorYjNDSWti?= =?utf-8?B?OVU1NG42YWZYeEVLbXFDM0tlczJkRHB3K2VzNTllYWZMVXJqSG9MakpLWlQ2?= =?utf-8?B?WC9HREJWZW9mYnZPKzh1azN5RU5SaXBiNEVXRlpjcjVwcmdjRUI2OGhURldI?= =?utf-8?B?dmVuL05CSlRBSSsvWmJFdVFjNFJuamo5bk84MDZQN1lOS3ZYZi9zSXhVc1dI?= =?utf-8?B?UDZhTTRleHIva2ZINk5QeUNjOE1PM0JOY2QzRDVqU3Qvb240aWQzWmRkZWN6?= =?utf-8?B?MENVRnJBTXBPUW00VGhmR2JUdExkN2JBRmlmM1Z1a040SmdKMnBjbUNNekND?= =?utf-8?B?c1hmMTJRK2NhOEdycERCNlRRUjBoSGFEeEIyUm5BMWZKVmQ0RXRQdVp1eGVI?= =?utf-8?B?bzZEb1RBRXlLVXdpbnozYnRBQ0RMY3JtY1dsS013OVJQaDhtU1E0dmVHZWVM?= =?utf-8?B?dXFXMEVqQUNsT0E3aG9NVzNuaTlyVlZpOHN4SGNRek9vdlB5YU9uV3Fqd2xq?= =?utf-8?B?cmtCYmZWSkhuS1FjZGswK0hmQWpmNVhubTZncm01NlNWUHN2YzR2UzUzSmxF?= =?utf-8?B?Mmdvb2RTZ1RUbGlrSXMyekp4Sms4OUhmdHdEbjFxM05sV1VPQzZKckQ0di85?= =?utf-8?B?WmRGcElqMGJVYUFRWkZ2a3pWei9sdU1JWFFveXRTZUdQb1Fhek5neGN0aXBQ?= =?utf-8?B?QTZmcU9kbmpUcXVrYzFMbUVrMFlkUkE0bTdyRjNKckp1V2FqSU9IR0R4YW5m?= =?utf-8?B?b2hPK0Z1eFZRUlo3WFhQcnF3SWVETnYxMG14elZDaDVJNVBBOTZRMWdQb21j?= =?utf-8?B?RW9rSXpBTVEvMml3UWxzdXhWeFVwdWVVa3FkOUNMMGFQU3J6aWpxa2lsTHBY?= =?utf-8?B?TTlDU25rYmREV3RxT283OS96WDlSMm4wcUhKcXh6WTBHRkhGaGNHc1FHclNJ?= =?utf-8?B?QmdDSGd1dUtDM05UVjlrMXl5czMzWThpQVV4Q1ZNV2xBNWxBTXFSNWVzUXNa?= =?utf-8?B?N1gwcU1OUkNReXRqZDVYMFYxTFMweExabzllNlIyVzRwc1VBd21VYllMN080?= =?utf-8?B?Ri84bXljNUN3OXlQaXI4Z1RvRTBzU2l3a1c5TUtOcWY1UUhHNGp2TFNaSzJi?= =?utf-8?B?ZDYrSy9ER1BvckZWYklKUkZDMXNZd3hCQ3pDTVZzZWI5RVpwTXRDRUdETE9m?= =?utf-8?B?MUJqTXp3NHRtYldnczY3Ni9sSDhCZFBYM2Q3Ukc2d212OTlsRjk3TFhvdjFn?= =?utf-8?B?ZFhPNnZCZTdsNVF2dENxY2hEaUg0TVd3VURwSjd4cnVjY1pmNEc0cmhuUGhs?= =?utf-8?B?RStZUk5keG5ZSmN1aVIydUhDRUFVdVFvSi9EWkJndEpibEk1d3hVVlJIYUlj?= =?utf-8?B?TXhYKzNhUHNNK09HdGkvZ2pmRFJmMVRLNHdRay9FTTZtLzhMNDFORTFqS2V1?= =?utf-8?B?VVFPZTVzSDcrcG5JYjRhelYvb1ZyaG04MHZJcmZIZDJvWXN6cHFhWGFlL3Qz?= =?utf-8?B?UVBnK0dRNko0YVdoNDFnMy9QbWR0YXk3amYwcHplSElmRkxYaUxMcDZpSi8v?= =?utf-8?B?dlpoZXlUVkRtbjhWSzVTT3dHNm5PelJMWlEzRSs3em4rdlVLaXdzeGdXSTNq?= =?utf-8?B?SjMwN3JhSld0dGgzTENENTdxYnRrNUxieVRtVTVoYnJSaWZwZ3VxZTNhM3FV?= =?utf-8?B?cUpvOHRKdVNJNm1LUkdGUkxpZjZQbWx1cSswazEzZnlmczBXQkNJajUxVEo0?= =?utf-8?B?OFIzbExpeTBicFpUcXZweXV0UW0relFUZTBrSVZsdDExRkJVM3p0U0FyUnpv?= =?utf-8?B?RS8yWDhIbFlwUjRLemRPV3ByUWRXUU1sYXBJSUVKenJOaDJHVVJMN0ZJRnJ5?= =?utf-8?B?MXNubmo2TmIrMEF3dS9yWDdMdFhaOGliTTFvSTA5eFR2cmlyR2tDalBWeGIz?= =?utf-8?Q?kimev2nn7qbsTf1djEHvy3bhJ?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 04ef2d9f-5337-4081-3f22-08db62afa86c X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Jun 2023 14:51:18.9438 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: WNOOtjt3sxP1vTQXZl2AjH/clzFv40iXHfiwlmdJZ23wkUnyEInabw6Tn5IfcvAysnTyNC5ohlDo2otkZ5WDBA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU0PR04MB9345 On 01.06.2023 16:38, Andrew Cooper wrote: > If for any reason early_microcode_init() concludes that no microcode loading > is available, early_update_cache() will fall over a NULL function pointer: > > (XEN) Xen call trace: > (XEN) [] R show_code+0x91/0x18f > (XEN) [] F show_execution_state+0x2d/0x1fc > (XEN) [] F fatal_trap+0x87/0x19a > (XEN) [] F init_idt_traps+0/0x1bd > (XEN) [] F early_page_fault+0x8f/0x94 > (XEN) [<0000000000000000>] F 0000000000000000 > (XEN) [] F arch/x86/cpu/microcode/core.c#early_update_cache+0x11/0x74 > (XEN) [] F microcode_init_cache+0x5a/0x5c > (XEN) [] F __start_xen+0x1e11/0x27ee > (XEN) [] F __high_start+0x94/0xa0 > > which is actually parse_blob()'s use of ucode_ops.collect_cpu_info. > > Skip trying to cache anything if microcode loading is unavailable. > > Fixes: dc380df12acf ("x86/ucode: load microcode earlier on boot CPU") > Signed-off-by: Andrew Cooper Reviewed-by: Jan Beulich From xen-devel-bounces@lists.xenproject.org Thu Jun 01 15:26:24 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 15:26:24 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542620.846684 (Exim 4.92) (envelope-from ) id 1q4kBl-0004Sa-RB; Thu, 01 Jun 2023 15:26:09 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542620.846684; Thu, 01 Jun 2023 15:26:09 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4kBl-0004ST-LT; Thu, 01 Jun 2023 15:26:09 +0000 Received: by outflank-mailman (input) for mailman id 542620; Thu, 01 Jun 2023 15:26:08 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4kBk-0004Rb-HD for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 15:26:08 +0000 Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.129.124]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 9f801383-0090-11ee-b231-6b7b168915f2; Thu, 01 Jun 2023 17:26:05 +0200 (CEST) Received: from mimecast-mx02.redhat.com (mimecast-mx02.redhat.com [66.187.233.88]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id us-mta-227-lWN_D032PEW-zCcOIkDfhw-1; Thu, 01 Jun 2023 11:25:59 -0400 Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.rdu2.redhat.com [10.11.54.6]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 27AEA800159; Thu, 1 Jun 2023 15:25:59 +0000 (UTC) Received: from localhost (unknown [10.39.194.5]) by smtp.corp.redhat.com (Postfix) with ESMTP id 8A0932166B27; Thu, 1 Jun 2023 15:25:58 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 9f801383-0090-11ee-b231-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1685633164; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=56sRbxTeLa9JZmQN0B8QX1cUKslR1+CU7IhQ7z+Xw5c=; b=HvNDpY1i0uwe9nhgCXmysny06ANPuohRStW3BbBDV8U+Uw0Rgk2RV0fNfuS4imEE8hYhSQ dzhZYm/4v7VPgW7PEYZbBWYhEMFDE3Pl3VTixVmLHUgX9cTheucanO9YeFZFQWOR6UwoEL ruCWiQn3/coEXU0JVu7//anVL9ViOU4= X-MC-Unique: lWN_D032PEW-zCcOIkDfhw-1 From: Stefan Hajnoczi To: qemu-devel@nongnu.org Cc: qemu-block@nongnu.org, Stefano Stabellini , Aarushi Mehta , Anthony Perard , Thomas Huth , Julia Suvorova , Paolo Bonzini , Fam Zheng , Hanna Reitz , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Stefano Garzarella , "Michael S. Tsirkin" , =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= , Markus Armbruster , Cornelia Huck , =?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= , xen-devel@lists.xenproject.org, Paul Durrant , Kevin Wolf , Richard Henderson , Eric Blake , Stefan Hajnoczi , Raphael Norwitz , kvm@vger.kernel.org Subject: [PULL 2/8] block/nvme: convert to blk_io_plug_call() API Date: Thu, 1 Jun 2023 11:25:46 -0400 Message-Id: <20230601152552.1603119-3-stefanha@redhat.com> In-Reply-To: <20230601152552.1603119-1-stefanha@redhat.com> References: <20230601152552.1603119-1-stefanha@redhat.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Scanned-By: MIMEDefang 3.1 on 10.11.54.6 Stop using the .bdrv_co_io_plug() API because it is not multi-queue block layer friendly. Use the new blk_io_plug_call() API to batch I/O submission instead. Signed-off-by: Stefan Hajnoczi Reviewed-by: Eric Blake Reviewed-by: Stefano Garzarella Acked-by: Kevin Wolf Message-id: 20230530180959.1108766-3-stefanha@redhat.com Signed-off-by: Stefan Hajnoczi --- block/nvme.c | 44 ++++++++++++-------------------------------- block/trace-events | 1 - 2 files changed, 12 insertions(+), 33 deletions(-) diff --git a/block/nvme.c b/block/nvme.c index 17937d398d..7ca85bc44a 100644 --- a/block/nvme.c +++ b/block/nvme.c @@ -25,6 +25,7 @@ #include "qemu/vfio-helpers.h" #include "block/block-io.h" #include "block/block_int.h" +#include "sysemu/block-backend.h" #include "sysemu/replay.h" #include "trace.h" @@ -119,7 +120,6 @@ struct BDRVNVMeState { int blkshift; uint64_t max_transfer; - bool plugged; bool supports_write_zeroes; bool supports_discard; @@ -282,7 +282,7 @@ static void nvme_kick(NVMeQueuePair *q) { BDRVNVMeState *s = q->s; - if (s->plugged || !q->need_kick) { + if (!q->need_kick) { return; } trace_nvme_kick(s, q->index); @@ -387,10 +387,6 @@ static bool nvme_process_completion(NVMeQueuePair *q) NvmeCqe *c; trace_nvme_process_completion(s, q->index, q->inflight); - if (s->plugged) { - trace_nvme_process_completion_queue_plugged(s, q->index); - return false; - } /* * Support re-entrancy when a request cb() function invokes aio_poll(). @@ -480,6 +476,15 @@ static void nvme_trace_command(const NvmeCmd *cmd) } } +static void nvme_unplug_fn(void *opaque) +{ + NVMeQueuePair *q = opaque; + + QEMU_LOCK_GUARD(&q->lock); + nvme_kick(q); + nvme_process_completion(q); +} + static void nvme_submit_command(NVMeQueuePair *q, NVMeRequest *req, NvmeCmd *cmd, BlockCompletionFunc cb, void *opaque) @@ -496,8 +501,7 @@ static void nvme_submit_command(NVMeQueuePair *q, NVMeRequest *req, q->sq.tail * NVME_SQ_ENTRY_BYTES, cmd, sizeof(*cmd)); q->sq.tail = (q->sq.tail + 1) % NVME_QUEUE_SIZE; q->need_kick++; - nvme_kick(q); - nvme_process_completion(q); + blk_io_plug_call(nvme_unplug_fn, q); qemu_mutex_unlock(&q->lock); } @@ -1567,27 +1571,6 @@ static void nvme_attach_aio_context(BlockDriverState *bs, } } -static void coroutine_fn nvme_co_io_plug(BlockDriverState *bs) -{ - BDRVNVMeState *s = bs->opaque; - assert(!s->plugged); - s->plugged = true; -} - -static void coroutine_fn nvme_co_io_unplug(BlockDriverState *bs) -{ - BDRVNVMeState *s = bs->opaque; - assert(s->plugged); - s->plugged = false; - for (unsigned i = INDEX_IO(0); i < s->queue_count; i++) { - NVMeQueuePair *q = s->queues[i]; - qemu_mutex_lock(&q->lock); - nvme_kick(q); - nvme_process_completion(q); - qemu_mutex_unlock(&q->lock); - } -} - static bool nvme_register_buf(BlockDriverState *bs, void *host, size_t size, Error **errp) { @@ -1664,9 +1647,6 @@ static BlockDriver bdrv_nvme = { .bdrv_detach_aio_context = nvme_detach_aio_context, .bdrv_attach_aio_context = nvme_attach_aio_context, - .bdrv_co_io_plug = nvme_co_io_plug, - .bdrv_co_io_unplug = nvme_co_io_unplug, - .bdrv_register_buf = nvme_register_buf, .bdrv_unregister_buf = nvme_unregister_buf, }; diff --git a/block/trace-events b/block/trace-events index 32665158d6..048ad27519 100644 --- a/block/trace-events +++ b/block/trace-events @@ -141,7 +141,6 @@ nvme_kick(void *s, unsigned q_index) "s %p q #%u" nvme_dma_flush_queue_wait(void *s) "s %p" nvme_error(int cmd_specific, int sq_head, int sqid, int cid, int status) "cmd_specific %d sq_head %d sqid %d cid %d status 0x%x" nvme_process_completion(void *s, unsigned q_index, int inflight) "s %p q #%u inflight %d" -nvme_process_completion_queue_plugged(void *s, unsigned q_index) "s %p q #%u" nvme_complete_command(void *s, unsigned q_index, int cid) "s %p q #%u cid %d" nvme_submit_command(void *s, unsigned q_index, int cid) "s %p q #%u cid %d" nvme_submit_command_raw(int c0, int c1, int c2, int c3, int c4, int c5, int c6, int c7) "%02x %02x %02x %02x %02x %02x %02x %02x" -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 01 15:26:24 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 15:26:24 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542619.846673 (Exim 4.92) (envelope-from ) id 1q4kBg-0004Cx-Gq; Thu, 01 Jun 2023 15:26:04 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542619.846673; Thu, 01 Jun 2023 15:26:04 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4kBg-0004Cq-Da; Thu, 01 Jun 2023 15:26:04 +0000 Received: by outflank-mailman (input) for mailman id 542619; Thu, 01 Jun 2023 15:26:03 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4kBf-0004Ci-1P for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 15:26:03 +0000 Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.129.124]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 9b7eb5e0-0090-11ee-8611-37d641c3527e; Thu, 01 Jun 2023 17:25:58 +0200 (CEST) Received: from mimecast-mx02.redhat.com (mimecast-mx02.redhat.com [66.187.233.88]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id us-mta-277-5FE_cTMtMk-QY0HLTJnTJQ-1; Thu, 01 Jun 2023 11:25:56 -0400 Received: from smtp.corp.redhat.com (int-mx05.intmail.prod.int.rdu2.redhat.com [10.11.54.5]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 2D09B806105; Thu, 1 Jun 2023 15:25:55 +0000 (UTC) Received: from localhost (unknown [10.39.194.5]) by smtp.corp.redhat.com (Postfix) with ESMTP id 4A1CB8162; Thu, 1 Jun 2023 15:25:54 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 9b7eb5e0-0090-11ee-8611-37d641c3527e X-MC-Unique: 5FE_cTMtMk-QY0HLTJnTJQ-1 From: Stefan Hajnoczi To: qemu-devel@nongnu.org Cc: qemu-block@nongnu.org, Stefano Stabellini , Aarushi Mehta , Anthony Perard , Thomas Huth , Julia Suvorova , Paolo Bonzini , Fam Zheng , Hanna Reitz , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Stefano Garzarella , "Michael S. Tsirkin" , =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= , Markus Armbruster , Cornelia Huck , =?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= , xen-devel@lists.xenproject.org, Paul Durrant , Kevin Wolf , Richard Henderson , Eric Blake , Stefan Hajnoczi , Raphael Norwitz , kvm@vger.kernel.org Subject: [PULL 0/8] Block patches Date: Thu, 1 Jun 2023 11:25:44 -0400 Message-Id: <20230601152552.1603119-1-stefanha@redhat.com> Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Scanned-By: MIMEDefang 3.1 on 10.11.54.5 The following changes since commit c6a5fc2ac76c5ab709896ee1b0edd33685a67ed1: decodetree: Add --output-null for meson testing (2023-05-31 19:56:42 -0700) are available in the Git repository at: https://gitlab.com/stefanha/qemu.git tags/block-pull-request for you to fetch changes up to 98b126f5e3228a346c774e569e26689943b401dd: qapi: add '@fdset' feature for BlockdevOptionsVirtioBlkVhostVdpa (2023-06-01 11:08:21 -0400) ---------------------------------------------------------------- Pull request - Stefano Garzarella's blkio block driver 'fd' parameter - My thread-local blk_io_plug() series ---------------------------------------------------------------- Stefan Hajnoczi (6): block: add blk_io_plug_call() API block/nvme: convert to blk_io_plug_call() API block/blkio: convert to blk_io_plug_call() API block/io_uring: convert to blk_io_plug_call() API block/linux-aio: convert to blk_io_plug_call() API block: remove bdrv_co_io_plug() API Stefano Garzarella (2): block/blkio: use qemu_open() to support fd passing for virtio-blk qapi: add '@fdset' feature for BlockdevOptionsVirtioBlkVhostVdpa MAINTAINERS | 1 + qapi/block-core.json | 6 ++ meson.build | 4 + include/block/block-io.h | 3 - include/block/block_int-common.h | 11 --- include/block/raw-aio.h | 14 --- include/sysemu/block-backend-io.h | 13 +-- block/blkio.c | 96 ++++++++++++------ block/block-backend.c | 22 ----- block/file-posix.c | 38 ------- block/io.c | 37 ------- block/io_uring.c | 44 ++++----- block/linux-aio.c | 41 +++----- block/nvme.c | 44 +++------ block/plug.c | 159 ++++++++++++++++++++++++++++++ hw/block/dataplane/xen-block.c | 8 +- hw/block/virtio-blk.c | 4 +- hw/scsi/virtio-scsi.c | 6 +- block/meson.build | 1 + block/trace-events | 6 +- 20 files changed, 293 insertions(+), 265 deletions(-) create mode 100644 block/plug.c -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 01 15:26:24 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 15:26:24 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542622.846702 (Exim 4.92) (envelope-from ) id 1q4kBn-0004xV-Ag; Thu, 01 Jun 2023 15:26:11 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542622.846702; Thu, 01 Jun 2023 15:26:11 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4kBn-0004xO-7i; Thu, 01 Jun 2023 15:26:11 +0000 Received: by outflank-mailman (input) for mailman id 542622; Thu, 01 Jun 2023 15:26:09 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4kBl-0004Rb-7f for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 15:26:09 +0000 Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.129.124]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id a1383b12-0090-11ee-b231-6b7b168915f2; Thu, 01 Jun 2023 17:26:08 +0200 (CEST) Received: from mimecast-mx02.redhat.com (mx3-rdu2.redhat.com [66.187.233.73]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id us-mta-313-2vgpgg3mPcSjbZVrWqxdXw-1; Thu, 01 Jun 2023 11:26:04 -0400 Received: from smtp.corp.redhat.com (int-mx05.intmail.prod.int.rdu2.redhat.com [10.11.54.5]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 382503C397F2; Thu, 1 Jun 2023 15:26:03 +0000 (UTC) Received: from localhost (unknown [10.39.194.5]) by smtp.corp.redhat.com (Postfix) with ESMTP id 94ACA8162; Thu, 1 Jun 2023 15:26:02 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: a1383b12-0090-11ee-b231-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1685633167; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=isHwy///XBfEj9leDzUcC4RkN1ck1qXgOorGTTirv6Q=; b=a3nxDyurx+vnomk1yWYTNfjxmaGpgI4tl6gQS0eJ1m2plHachKBHJJVXS3U0BmI9D2rTpv 6fW7MSdj0ErOmKfQ3FOKc0iMC58Oat/YHFaxL7EOj7XXQh/VpBCKQr30pLUHieP9+wK1iF jneXjyQyWvDkrsKXAlsnSufF6a1aD20= X-MC-Unique: 2vgpgg3mPcSjbZVrWqxdXw-1 From: Stefan Hajnoczi To: qemu-devel@nongnu.org Cc: qemu-block@nongnu.org, Stefano Stabellini , Aarushi Mehta , Anthony Perard , Thomas Huth , Julia Suvorova , Paolo Bonzini , Fam Zheng , Hanna Reitz , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Stefano Garzarella , "Michael S. Tsirkin" , =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= , Markus Armbruster , Cornelia Huck , =?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= , xen-devel@lists.xenproject.org, Paul Durrant , Kevin Wolf , Richard Henderson , Eric Blake , Stefan Hajnoczi , Raphael Norwitz , kvm@vger.kernel.org Subject: [PULL 4/8] block/io_uring: convert to blk_io_plug_call() API Date: Thu, 1 Jun 2023 11:25:48 -0400 Message-Id: <20230601152552.1603119-5-stefanha@redhat.com> In-Reply-To: <20230601152552.1603119-1-stefanha@redhat.com> References: <20230601152552.1603119-1-stefanha@redhat.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Scanned-By: MIMEDefang 3.1 on 10.11.54.5 Stop using the .bdrv_co_io_plug() API because it is not multi-queue block layer friendly. Use the new blk_io_plug_call() API to batch I/O submission instead. Signed-off-by: Stefan Hajnoczi Reviewed-by: Eric Blake Reviewed-by: Stefano Garzarella Acked-by: Kevin Wolf Message-id: 20230530180959.1108766-5-stefanha@redhat.com Signed-off-by: Stefan Hajnoczi --- include/block/raw-aio.h | 7 ------- block/file-posix.c | 10 ---------- block/io_uring.c | 44 ++++++++++++++++------------------------- block/trace-events | 5 ++--- 4 files changed, 19 insertions(+), 47 deletions(-) diff --git a/include/block/raw-aio.h b/include/block/raw-aio.h index 0fe85ade77..da60ca13ef 100644 --- a/include/block/raw-aio.h +++ b/include/block/raw-aio.h @@ -81,13 +81,6 @@ int coroutine_fn luring_co_submit(BlockDriverState *bs, int fd, uint64_t offset, QEMUIOVector *qiov, int type); void luring_detach_aio_context(LuringState *s, AioContext *old_context); void luring_attach_aio_context(LuringState *s, AioContext *new_context); - -/* - * luring_io_plug/unplug work in the thread's current AioContext, therefore the - * caller must ensure that they are paired in the same IOThread. - */ -void luring_io_plug(void); -void luring_io_unplug(void); #endif #ifdef _WIN32 diff --git a/block/file-posix.c b/block/file-posix.c index 0ab158efba..7baa8491dd 100644 --- a/block/file-posix.c +++ b/block/file-posix.c @@ -2558,11 +2558,6 @@ static void coroutine_fn raw_co_io_plug(BlockDriverState *bs) laio_io_plug(); } #endif -#ifdef CONFIG_LINUX_IO_URING - if (s->use_linux_io_uring) { - luring_io_plug(); - } -#endif } static void coroutine_fn raw_co_io_unplug(BlockDriverState *bs) @@ -2573,11 +2568,6 @@ static void coroutine_fn raw_co_io_unplug(BlockDriverState *bs) laio_io_unplug(s->aio_max_batch); } #endif -#ifdef CONFIG_LINUX_IO_URING - if (s->use_linux_io_uring) { - luring_io_unplug(); - } -#endif } static int coroutine_fn raw_co_flush_to_disk(BlockDriverState *bs) diff --git a/block/io_uring.c b/block/io_uring.c index 3a77480e16..69d9820928 100644 --- a/block/io_uring.c +++ b/block/io_uring.c @@ -16,6 +16,7 @@ #include "block/raw-aio.h" #include "qemu/coroutine.h" #include "qapi/error.h" +#include "sysemu/block-backend.h" #include "trace.h" /* Only used for assertions. */ @@ -41,7 +42,6 @@ typedef struct LuringAIOCB { } LuringAIOCB; typedef struct LuringQueue { - int plugged; unsigned int in_queue; unsigned int in_flight; bool blocked; @@ -267,7 +267,7 @@ static void luring_process_completions_and_submit(LuringState *s) { luring_process_completions(s); - if (!s->io_q.plugged && s->io_q.in_queue > 0) { + if (s->io_q.in_queue > 0) { ioq_submit(s); } } @@ -301,29 +301,17 @@ static void qemu_luring_poll_ready(void *opaque) static void ioq_init(LuringQueue *io_q) { QSIMPLEQ_INIT(&io_q->submit_queue); - io_q->plugged = 0; io_q->in_queue = 0; io_q->in_flight = 0; io_q->blocked = false; } -void luring_io_plug(void) +static void luring_unplug_fn(void *opaque) { - AioContext *ctx = qemu_get_current_aio_context(); - LuringState *s = aio_get_linux_io_uring(ctx); - trace_luring_io_plug(s); - s->io_q.plugged++; -} - -void luring_io_unplug(void) -{ - AioContext *ctx = qemu_get_current_aio_context(); - LuringState *s = aio_get_linux_io_uring(ctx); - assert(s->io_q.plugged); - trace_luring_io_unplug(s, s->io_q.blocked, s->io_q.plugged, - s->io_q.in_queue, s->io_q.in_flight); - if (--s->io_q.plugged == 0 && - !s->io_q.blocked && s->io_q.in_queue > 0) { + LuringState *s = opaque; + trace_luring_unplug_fn(s, s->io_q.blocked, s->io_q.in_queue, + s->io_q.in_flight); + if (!s->io_q.blocked && s->io_q.in_queue > 0) { ioq_submit(s); } } @@ -370,14 +358,16 @@ static int luring_do_submit(int fd, LuringAIOCB *luringcb, LuringState *s, QSIMPLEQ_INSERT_TAIL(&s->io_q.submit_queue, luringcb, next); s->io_q.in_queue++; - trace_luring_do_submit(s, s->io_q.blocked, s->io_q.plugged, - s->io_q.in_queue, s->io_q.in_flight); - if (!s->io_q.blocked && - (!s->io_q.plugged || - s->io_q.in_flight + s->io_q.in_queue >= MAX_ENTRIES)) { - ret = ioq_submit(s); - trace_luring_do_submit_done(s, ret); - return ret; + trace_luring_do_submit(s, s->io_q.blocked, s->io_q.in_queue, + s->io_q.in_flight); + if (!s->io_q.blocked) { + if (s->io_q.in_flight + s->io_q.in_queue >= MAX_ENTRIES) { + ret = ioq_submit(s); + trace_luring_do_submit_done(s, ret); + return ret; + } + + blk_io_plug_call(luring_unplug_fn, s); } return 0; } diff --git a/block/trace-events b/block/trace-events index 048ad27519..6f121b7636 100644 --- a/block/trace-events +++ b/block/trace-events @@ -64,9 +64,8 @@ file_paio_submit(void *acb, void *opaque, int64_t offset, int count, int type) " # io_uring.c luring_init_state(void *s, size_t size) "s %p size %zu" luring_cleanup_state(void *s) "%p freed" -luring_io_plug(void *s) "LuringState %p plug" -luring_io_unplug(void *s, int blocked, int plugged, int queued, int inflight) "LuringState %p blocked %d plugged %d queued %d inflight %d" -luring_do_submit(void *s, int blocked, int plugged, int queued, int inflight) "LuringState %p blocked %d plugged %d queued %d inflight %d" +luring_unplug_fn(void *s, int blocked, int queued, int inflight) "LuringState %p blocked %d queued %d inflight %d" +luring_do_submit(void *s, int blocked, int queued, int inflight) "LuringState %p blocked %d queued %d inflight %d" luring_do_submit_done(void *s, int ret) "LuringState %p submitted to kernel %d" luring_co_submit(void *bs, void *s, void *luringcb, int fd, uint64_t offset, size_t nbytes, int type) "bs %p s %p luringcb %p fd %d offset %" PRId64 " nbytes %zd type %d" luring_process_completion(void *s, void *aiocb, int ret) "LuringState %p luringcb %p ret %d" -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 01 15:26:24 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 15:26:24 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542623.846710 (Exim 4.92) (envelope-from ) id 1q4kBn-00055E-RV; Thu, 01 Jun 2023 15:26:11 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542623.846710; Thu, 01 Jun 2023 15:26:11 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4kBn-00052m-NK; Thu, 01 Jun 2023 15:26:11 +0000 Received: by outflank-mailman (input) for mailman id 542623; Thu, 01 Jun 2023 15:26:10 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4kBm-0004Ci-8i for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 15:26:10 +0000 Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.129.124]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id a1290bf8-0090-11ee-8611-37d641c3527e; Thu, 01 Jun 2023 17:26:08 +0200 (CEST) Received: from mimecast-mx02.redhat.com (mimecast-mx02.redhat.com [66.187.233.88]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id us-mta-29-8xRkLrphPXe219NBEoZYwg-1; Thu, 01 Jun 2023 11:26:06 -0400 Received: from smtp.corp.redhat.com (int-mx02.intmail.prod.int.rdu2.redhat.com [10.11.54.2]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 49B5E85829A; Thu, 1 Jun 2023 15:26:05 +0000 (UTC) Received: from localhost (unknown [10.39.194.5]) by smtp.corp.redhat.com (Postfix) with ESMTP id 8AA1040C6EC4; Thu, 1 Jun 2023 15:26:04 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: a1290bf8-0090-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1685633167; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=c2lndZBb5pLwi3SunbidGAiBTlv7HE8p3pWS3Fk2JpE=; b=UkZWt/sGrOK8G7sMXJW8rCV6W++/XsGirnGWefTjhe9l+aRMfa2QJj/eoFoothb+kndGi1 zwD23cgB/1EIeBDapDH81WZMsqFQYWGgN61+0IRdL5w7x+8DtPFHWBV8oUZFHz7GJCv+r8 Qd0HK/Y6/iGCrA5ijO0I/EPVs36kKR8= X-MC-Unique: 8xRkLrphPXe219NBEoZYwg-1 From: Stefan Hajnoczi To: qemu-devel@nongnu.org Cc: qemu-block@nongnu.org, Stefano Stabellini , Aarushi Mehta , Anthony Perard , Thomas Huth , Julia Suvorova , Paolo Bonzini , Fam Zheng , Hanna Reitz , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Stefano Garzarella , "Michael S. Tsirkin" , =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= , Markus Armbruster , Cornelia Huck , =?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= , xen-devel@lists.xenproject.org, Paul Durrant , Kevin Wolf , Richard Henderson , Eric Blake , Stefan Hajnoczi , Raphael Norwitz , kvm@vger.kernel.org Subject: [PULL 5/8] block/linux-aio: convert to blk_io_plug_call() API Date: Thu, 1 Jun 2023 11:25:49 -0400 Message-Id: <20230601152552.1603119-6-stefanha@redhat.com> In-Reply-To: <20230601152552.1603119-1-stefanha@redhat.com> References: <20230601152552.1603119-1-stefanha@redhat.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Scanned-By: MIMEDefang 3.1 on 10.11.54.2 Stop using the .bdrv_co_io_plug() API because it is not multi-queue block layer friendly. Use the new blk_io_plug_call() API to batch I/O submission instead. Note that a dev_max_batch check is dropped in laio_io_unplug() because the semantics of unplug_fn() are different from .bdrv_co_unplug(): 1. unplug_fn() is only called when the last blk_io_unplug() call occurs, not every time blk_io_unplug() is called. 2. unplug_fn() is per-thread, not per-BlockDriverState, so there is no way to get per-BlockDriverState fields like dev_max_batch. Therefore this condition cannot be moved to laio_unplug_fn(). It is not obvious that this condition affects performance in practice, so I am removing it instead of trying to come up with a more complex mechanism to preserve the condition. Signed-off-by: Stefan Hajnoczi Reviewed-by: Eric Blake Acked-by: Kevin Wolf Reviewed-by: Stefano Garzarella Message-id: 20230530180959.1108766-6-stefanha@redhat.com Signed-off-by: Stefan Hajnoczi --- include/block/raw-aio.h | 7 ------- block/file-posix.c | 28 ---------------------------- block/linux-aio.c | 41 +++++++++++------------------------------ 3 files changed, 11 insertions(+), 65 deletions(-) diff --git a/include/block/raw-aio.h b/include/block/raw-aio.h index da60ca13ef..0f63c2800c 100644 --- a/include/block/raw-aio.h +++ b/include/block/raw-aio.h @@ -62,13 +62,6 @@ int coroutine_fn laio_co_submit(int fd, uint64_t offset, QEMUIOVector *qiov, void laio_detach_aio_context(LinuxAioState *s, AioContext *old_context); void laio_attach_aio_context(LinuxAioState *s, AioContext *new_context); - -/* - * laio_io_plug/unplug work in the thread's current AioContext, therefore the - * caller must ensure that they are paired in the same IOThread. - */ -void laio_io_plug(void); -void laio_io_unplug(uint64_t dev_max_batch); #endif /* io_uring.c - Linux io_uring implementation */ #ifdef CONFIG_LINUX_IO_URING diff --git a/block/file-posix.c b/block/file-posix.c index 7baa8491dd..ac1ed54811 100644 --- a/block/file-posix.c +++ b/block/file-posix.c @@ -2550,26 +2550,6 @@ static int coroutine_fn raw_co_pwritev(BlockDriverState *bs, int64_t offset, return raw_co_prw(bs, offset, bytes, qiov, QEMU_AIO_WRITE); } -static void coroutine_fn raw_co_io_plug(BlockDriverState *bs) -{ - BDRVRawState __attribute__((unused)) *s = bs->opaque; -#ifdef CONFIG_LINUX_AIO - if (s->use_linux_aio) { - laio_io_plug(); - } -#endif -} - -static void coroutine_fn raw_co_io_unplug(BlockDriverState *bs) -{ - BDRVRawState __attribute__((unused)) *s = bs->opaque; -#ifdef CONFIG_LINUX_AIO - if (s->use_linux_aio) { - laio_io_unplug(s->aio_max_batch); - } -#endif -} - static int coroutine_fn raw_co_flush_to_disk(BlockDriverState *bs) { BDRVRawState *s = bs->opaque; @@ -3914,8 +3894,6 @@ BlockDriver bdrv_file = { .bdrv_co_copy_range_from = raw_co_copy_range_from, .bdrv_co_copy_range_to = raw_co_copy_range_to, .bdrv_refresh_limits = raw_refresh_limits, - .bdrv_co_io_plug = raw_co_io_plug, - .bdrv_co_io_unplug = raw_co_io_unplug, .bdrv_attach_aio_context = raw_aio_attach_aio_context, .bdrv_co_truncate = raw_co_truncate, @@ -4286,8 +4264,6 @@ static BlockDriver bdrv_host_device = { .bdrv_co_copy_range_from = raw_co_copy_range_from, .bdrv_co_copy_range_to = raw_co_copy_range_to, .bdrv_refresh_limits = raw_refresh_limits, - .bdrv_co_io_plug = raw_co_io_plug, - .bdrv_co_io_unplug = raw_co_io_unplug, .bdrv_attach_aio_context = raw_aio_attach_aio_context, .bdrv_co_truncate = raw_co_truncate, @@ -4424,8 +4400,6 @@ static BlockDriver bdrv_host_cdrom = { .bdrv_co_pwritev = raw_co_pwritev, .bdrv_co_flush_to_disk = raw_co_flush_to_disk, .bdrv_refresh_limits = cdrom_refresh_limits, - .bdrv_co_io_plug = raw_co_io_plug, - .bdrv_co_io_unplug = raw_co_io_unplug, .bdrv_attach_aio_context = raw_aio_attach_aio_context, .bdrv_co_truncate = raw_co_truncate, @@ -4552,8 +4526,6 @@ static BlockDriver bdrv_host_cdrom = { .bdrv_co_pwritev = raw_co_pwritev, .bdrv_co_flush_to_disk = raw_co_flush_to_disk, .bdrv_refresh_limits = cdrom_refresh_limits, - .bdrv_co_io_plug = raw_co_io_plug, - .bdrv_co_io_unplug = raw_co_io_unplug, .bdrv_attach_aio_context = raw_aio_attach_aio_context, .bdrv_co_truncate = raw_co_truncate, diff --git a/block/linux-aio.c b/block/linux-aio.c index 916f001e32..561c71a9ae 100644 --- a/block/linux-aio.c +++ b/block/linux-aio.c @@ -15,6 +15,7 @@ #include "qemu/event_notifier.h" #include "qemu/coroutine.h" #include "qapi/error.h" +#include "sysemu/block-backend.h" /* Only used for assertions. */ #include "qemu/coroutine_int.h" @@ -46,7 +47,6 @@ struct qemu_laiocb { }; typedef struct { - int plugged; unsigned int in_queue; unsigned int in_flight; bool blocked; @@ -236,7 +236,7 @@ static void qemu_laio_process_completions_and_submit(LinuxAioState *s) { qemu_laio_process_completions(s); - if (!s->io_q.plugged && !QSIMPLEQ_EMPTY(&s->io_q.pending)) { + if (!QSIMPLEQ_EMPTY(&s->io_q.pending)) { ioq_submit(s); } } @@ -277,7 +277,6 @@ static void qemu_laio_poll_ready(EventNotifier *opaque) static void ioq_init(LaioQueue *io_q) { QSIMPLEQ_INIT(&io_q->pending); - io_q->plugged = 0; io_q->in_queue = 0; io_q->in_flight = 0; io_q->blocked = false; @@ -354,31 +353,11 @@ static uint64_t laio_max_batch(LinuxAioState *s, uint64_t dev_max_batch) return max_batch; } -void laio_io_plug(void) +static void laio_unplug_fn(void *opaque) { - AioContext *ctx = qemu_get_current_aio_context(); - LinuxAioState *s = aio_get_linux_aio(ctx); + LinuxAioState *s = opaque; - s->io_q.plugged++; -} - -void laio_io_unplug(uint64_t dev_max_batch) -{ - AioContext *ctx = qemu_get_current_aio_context(); - LinuxAioState *s = aio_get_linux_aio(ctx); - - assert(s->io_q.plugged); - s->io_q.plugged--; - - /* - * Why max batch checking is performed here: - * Another BDS may have queued requests with a higher dev_max_batch and - * therefore in_queue could now exceed our dev_max_batch. Re-check the max - * batch so we can honor our device's dev_max_batch. - */ - if (s->io_q.in_queue >= laio_max_batch(s, dev_max_batch) || - (!s->io_q.plugged && - !s->io_q.blocked && !QSIMPLEQ_EMPTY(&s->io_q.pending))) { + if (!s->io_q.blocked && !QSIMPLEQ_EMPTY(&s->io_q.pending)) { ioq_submit(s); } } @@ -410,10 +389,12 @@ static int laio_do_submit(int fd, struct qemu_laiocb *laiocb, off_t offset, QSIMPLEQ_INSERT_TAIL(&s->io_q.pending, laiocb, next); s->io_q.in_queue++; - if (!s->io_q.blocked && - (!s->io_q.plugged || - s->io_q.in_queue >= laio_max_batch(s, dev_max_batch))) { - ioq_submit(s); + if (!s->io_q.blocked) { + if (s->io_q.in_queue >= laio_max_batch(s, dev_max_batch)) { + ioq_submit(s); + } else { + blk_io_plug_call(laio_unplug_fn, s); + } } return 0; -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 01 15:26:24 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 15:26:24 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542624.846723 (Exim 4.92) (envelope-from ) id 1q4kBp-0005Rq-52; Thu, 01 Jun 2023 15:26:13 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542624.846723; Thu, 01 Jun 2023 15:26:13 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4kBo-0005Rh-W6; Thu, 01 Jun 2023 15:26:12 +0000 Received: by outflank-mailman (input) for mailman id 542624; Thu, 01 Jun 2023 15:26:12 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4kBo-0004Ci-3d for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 15:26:12 +0000 Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.129.124]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id a26a0bd0-0090-11ee-8611-37d641c3527e; Thu, 01 Jun 2023 17:26:10 +0200 (CEST) Received: from mimecast-mx02.redhat.com (mx3-rdu2.redhat.com [66.187.233.73]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id us-mta-307-lczibXIIP_WCrqNM8ZWL6A-1; Thu, 01 Jun 2023 11:26:08 -0400 Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.rdu2.redhat.com [10.11.54.6]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 6140A3823A28; Thu, 1 Jun 2023 15:26:07 +0000 (UTC) Received: from localhost (unknown [10.39.194.5]) by smtp.corp.redhat.com (Postfix) with ESMTP id C73522166B25; Thu, 1 Jun 2023 15:26:06 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: a26a0bd0-0090-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1685633169; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=MBeGNWL9b7nl56yHjfm0zojV1HoxshEgnMZCDHHylAU=; b=LyPk4dI/cDdrCQjQBUSX2TTGVG9gs4tJaiaasJGSCwlqqOEWzZ4OltEHmNsTRrHBsIP0VP 2RrSS5NNAohhdgTOVPZbyE2hhfva19bj/NENG83GqHPiMlbqVpeS6aayEpa1gNreEJgA08 CAStz4ck5eho+5+nbHXm501qtSQiws4= X-MC-Unique: lczibXIIP_WCrqNM8ZWL6A-1 From: Stefan Hajnoczi To: qemu-devel@nongnu.org Cc: qemu-block@nongnu.org, Stefano Stabellini , Aarushi Mehta , Anthony Perard , Thomas Huth , Julia Suvorova , Paolo Bonzini , Fam Zheng , Hanna Reitz , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Stefano Garzarella , "Michael S. Tsirkin" , =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= , Markus Armbruster , Cornelia Huck , =?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= , xen-devel@lists.xenproject.org, Paul Durrant , Kevin Wolf , Richard Henderson , Eric Blake , Stefan Hajnoczi , Raphael Norwitz , kvm@vger.kernel.org Subject: [PULL 6/8] block: remove bdrv_co_io_plug() API Date: Thu, 1 Jun 2023 11:25:50 -0400 Message-Id: <20230601152552.1603119-7-stefanha@redhat.com> In-Reply-To: <20230601152552.1603119-1-stefanha@redhat.com> References: <20230601152552.1603119-1-stefanha@redhat.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Scanned-By: MIMEDefang 3.1 on 10.11.54.6 No block driver implements .bdrv_co_io_plug() anymore. Get rid of the function pointers. Signed-off-by: Stefan Hajnoczi Reviewed-by: Eric Blake Reviewed-by: Stefano Garzarella Acked-by: Kevin Wolf Message-id: 20230530180959.1108766-7-stefanha@redhat.com Signed-off-by: Stefan Hajnoczi --- include/block/block-io.h | 3 --- include/block/block_int-common.h | 11 ---------- block/io.c | 37 -------------------------------- 3 files changed, 51 deletions(-) diff --git a/include/block/block-io.h b/include/block/block-io.h index a27e471a87..43af816d75 100644 --- a/include/block/block-io.h +++ b/include/block/block-io.h @@ -259,9 +259,6 @@ void coroutine_fn bdrv_co_leave(BlockDriverState *bs, AioContext *old_ctx); AioContext *child_of_bds_get_parent_aio_context(BdrvChild *c); -void coroutine_fn GRAPH_RDLOCK bdrv_co_io_plug(BlockDriverState *bs); -void coroutine_fn GRAPH_RDLOCK bdrv_co_io_unplug(BlockDriverState *bs); - bool coroutine_fn GRAPH_RDLOCK bdrv_co_can_store_new_dirty_bitmap(BlockDriverState *bs, const char *name, uint32_t granularity, Error **errp); diff --git a/include/block/block_int-common.h b/include/block/block_int-common.h index b1cbc1e00c..74195c3004 100644 --- a/include/block/block_int-common.h +++ b/include/block/block_int-common.h @@ -768,11 +768,6 @@ struct BlockDriver { void coroutine_fn GRAPH_RDLOCK_PTR (*bdrv_co_debug_event)( BlockDriverState *bs, BlkdebugEvent event); - /* io queue for linux-aio */ - void coroutine_fn GRAPH_RDLOCK_PTR (*bdrv_co_io_plug)(BlockDriverState *bs); - void coroutine_fn GRAPH_RDLOCK_PTR (*bdrv_co_io_unplug)( - BlockDriverState *bs); - bool (*bdrv_supports_persistent_dirty_bitmap)(BlockDriverState *bs); bool coroutine_fn GRAPH_RDLOCK_PTR (*bdrv_co_can_store_new_dirty_bitmap)( @@ -1227,12 +1222,6 @@ struct BlockDriverState { unsigned int in_flight; unsigned int serialising_in_flight; - /* - * counter for nested bdrv_io_plug. - * Accessed with atomic ops. - */ - unsigned io_plugged; - /* do we need to tell the quest if we have a volatile write cache? */ int enable_write_cache; diff --git a/block/io.c b/block/io.c index 540bf8d26d..f2dfc7c405 100644 --- a/block/io.c +++ b/block/io.c @@ -3223,43 +3223,6 @@ void *qemu_try_blockalign0(BlockDriverState *bs, size_t size) return mem; } -void coroutine_fn bdrv_co_io_plug(BlockDriverState *bs) -{ - BdrvChild *child; - IO_CODE(); - assert_bdrv_graph_readable(); - - QLIST_FOREACH(child, &bs->children, next) { - bdrv_co_io_plug(child->bs); - } - - if (qatomic_fetch_inc(&bs->io_plugged) == 0) { - BlockDriver *drv = bs->drv; - if (drv && drv->bdrv_co_io_plug) { - drv->bdrv_co_io_plug(bs); - } - } -} - -void coroutine_fn bdrv_co_io_unplug(BlockDriverState *bs) -{ - BdrvChild *child; - IO_CODE(); - assert_bdrv_graph_readable(); - - assert(bs->io_plugged); - if (qatomic_fetch_dec(&bs->io_plugged) == 1) { - BlockDriver *drv = bs->drv; - if (drv && drv->bdrv_co_io_unplug) { - drv->bdrv_co_io_unplug(bs); - } - } - - QLIST_FOREACH(child, &bs->children, next) { - bdrv_co_io_unplug(child->bs); - } -} - /* Helper that undoes bdrv_register_buf() when it fails partway through */ static void GRAPH_RDLOCK bdrv_register_buf_rollback(BlockDriverState *bs, void *host, size_t size, -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 01 15:26:24 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 15:26:24 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542621.846688 (Exim 4.92) (envelope-from ) id 1q4kBm-0004XC-3G; Thu, 01 Jun 2023 15:26:10 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542621.846688; Thu, 01 Jun 2023 15:26:10 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4kBl-0004V4-UN; Thu, 01 Jun 2023 15:26:09 +0000 Received: by outflank-mailman (input) for mailman id 542621; Thu, 01 Jun 2023 15:26:08 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4kBk-0004Ci-Tx for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 15:26:08 +0000 Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.129.124]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id a03d6f65-0090-11ee-8611-37d641c3527e; Thu, 01 Jun 2023 17:26:06 +0200 (CEST) Received: from mimecast-mx02.redhat.com (mx3-rdu2.redhat.com [66.187.233.73]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id us-mta-623-0oUwZqO3Oui-d_EN81nNuQ-1; Thu, 01 Jun 2023 11:26:02 -0400 Received: from smtp.corp.redhat.com (int-mx10.intmail.prod.int.rdu2.redhat.com [10.11.54.10]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 41EFA3823A0B; Thu, 1 Jun 2023 15:26:01 +0000 (UTC) Received: from localhost (unknown [10.39.194.5]) by smtp.corp.redhat.com (Postfix) with ESMTP id AC307492B0B; Thu, 1 Jun 2023 15:26:00 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: a03d6f65-0090-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1685633165; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=/KanOY4J9dCjz5B75DsOt8HVMCuzZufc1fAM7/vf+jo=; b=i++zqTMnIT2Us4lmasLQe10jwoG00paL3Lu0w5jgelSxs//WP/Xb/GL5fa//T9CQzGGz6H OnU4RibBxESdQdSzfnsWxzpT0klam6+mUQypEu8vgnbY0muPnssS+PcZS8TWuLzi/RLkp1 3SDMS6yj42BZCLUnRFaovlJmhjL07jI= X-MC-Unique: 0oUwZqO3Oui-d_EN81nNuQ-1 From: Stefan Hajnoczi To: qemu-devel@nongnu.org Cc: qemu-block@nongnu.org, Stefano Stabellini , Aarushi Mehta , Anthony Perard , Thomas Huth , Julia Suvorova , Paolo Bonzini , Fam Zheng , Hanna Reitz , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Stefano Garzarella , "Michael S. Tsirkin" , =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= , Markus Armbruster , Cornelia Huck , =?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= , xen-devel@lists.xenproject.org, Paul Durrant , Kevin Wolf , Richard Henderson , Eric Blake , Stefan Hajnoczi , Raphael Norwitz , kvm@vger.kernel.org Subject: [PULL 3/8] block/blkio: convert to blk_io_plug_call() API Date: Thu, 1 Jun 2023 11:25:47 -0400 Message-Id: <20230601152552.1603119-4-stefanha@redhat.com> In-Reply-To: <20230601152552.1603119-1-stefanha@redhat.com> References: <20230601152552.1603119-1-stefanha@redhat.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Scanned-By: MIMEDefang 3.1 on 10.11.54.10 Stop using the .bdrv_co_io_plug() API because it is not multi-queue block layer friendly. Use the new blk_io_plug_call() API to batch I/O submission instead. Signed-off-by: Stefan Hajnoczi Reviewed-by: Eric Blake Reviewed-by: Stefano Garzarella Acked-by: Kevin Wolf Message-id: 20230530180959.1108766-4-stefanha@redhat.com Signed-off-by: Stefan Hajnoczi --- block/blkio.c | 43 ++++++++++++++++++++++++------------------- 1 file changed, 24 insertions(+), 19 deletions(-) diff --git a/block/blkio.c b/block/blkio.c index 72117fa005..11be8787a3 100644 --- a/block/blkio.c +++ b/block/blkio.c @@ -17,6 +17,7 @@ #include "qemu/error-report.h" #include "qapi/qmp/qdict.h" #include "qemu/module.h" +#include "sysemu/block-backend.h" #include "exec/memory.h" /* for ram_block_discard_disable() */ #include "block/block-io.h" @@ -320,16 +321,30 @@ static void blkio_detach_aio_context(BlockDriverState *bs) NULL, NULL, NULL); } -/* Call with s->blkio_lock held to submit I/O after enqueuing a new request */ -static void blkio_submit_io(BlockDriverState *bs) +/* + * Called by blk_io_unplug() or immediately if not plugged. Called without + * blkio_lock. + */ +static void blkio_unplug_fn(void *opaque) { - if (qatomic_read(&bs->io_plugged) == 0) { - BDRVBlkioState *s = bs->opaque; + BDRVBlkioState *s = opaque; + WITH_QEMU_LOCK_GUARD(&s->blkio_lock) { blkioq_do_io(s->blkioq, NULL, 0, 0, NULL); } } +/* + * Schedule I/O submission after enqueuing a new request. Called without + * blkio_lock. + */ +static void blkio_submit_io(BlockDriverState *bs) +{ + BDRVBlkioState *s = bs->opaque; + + blk_io_plug_call(blkio_unplug_fn, s); +} + static int coroutine_fn blkio_co_pdiscard(BlockDriverState *bs, int64_t offset, int64_t bytes) { @@ -340,9 +355,9 @@ blkio_co_pdiscard(BlockDriverState *bs, int64_t offset, int64_t bytes) WITH_QEMU_LOCK_GUARD(&s->blkio_lock) { blkioq_discard(s->blkioq, offset, bytes, &cod, 0); - blkio_submit_io(bs); } + blkio_submit_io(bs); qemu_coroutine_yield(); return cod.ret; } @@ -373,9 +388,9 @@ blkio_co_preadv(BlockDriverState *bs, int64_t offset, int64_t bytes, WITH_QEMU_LOCK_GUARD(&s->blkio_lock) { blkioq_readv(s->blkioq, offset, iov, iovcnt, &cod, 0); - blkio_submit_io(bs); } + blkio_submit_io(bs); qemu_coroutine_yield(); if (use_bounce_buffer) { @@ -418,9 +433,9 @@ static int coroutine_fn blkio_co_pwritev(BlockDriverState *bs, int64_t offset, WITH_QEMU_LOCK_GUARD(&s->blkio_lock) { blkioq_writev(s->blkioq, offset, iov, iovcnt, &cod, blkio_flags); - blkio_submit_io(bs); } + blkio_submit_io(bs); qemu_coroutine_yield(); if (use_bounce_buffer) { @@ -439,9 +454,9 @@ static int coroutine_fn blkio_co_flush(BlockDriverState *bs) WITH_QEMU_LOCK_GUARD(&s->blkio_lock) { blkioq_flush(s->blkioq, &cod, 0); - blkio_submit_io(bs); } + blkio_submit_io(bs); qemu_coroutine_yield(); return cod.ret; } @@ -467,22 +482,13 @@ static int coroutine_fn blkio_co_pwrite_zeroes(BlockDriverState *bs, WITH_QEMU_LOCK_GUARD(&s->blkio_lock) { blkioq_write_zeroes(s->blkioq, offset, bytes, &cod, blkio_flags); - blkio_submit_io(bs); } + blkio_submit_io(bs); qemu_coroutine_yield(); return cod.ret; } -static void coroutine_fn blkio_co_io_unplug(BlockDriverState *bs) -{ - BDRVBlkioState *s = bs->opaque; - - WITH_QEMU_LOCK_GUARD(&s->blkio_lock) { - blkio_submit_io(bs); - } -} - typedef enum { BMRR_OK, BMRR_SKIP, @@ -1004,7 +1010,6 @@ static void blkio_refresh_limits(BlockDriverState *bs, Error **errp) .bdrv_co_pwritev = blkio_co_pwritev, \ .bdrv_co_flush_to_disk = blkio_co_flush, \ .bdrv_co_pwrite_zeroes = blkio_co_pwrite_zeroes, \ - .bdrv_co_io_unplug = blkio_co_io_unplug, \ .bdrv_refresh_limits = blkio_refresh_limits, \ .bdrv_register_buf = blkio_register_buf, \ .bdrv_unregister_buf = blkio_unregister_buf, \ -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 01 15:26:27 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 15:26:27 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542625.846733 (Exim 4.92) (envelope-from ) id 1q4kBt-0005q1-Cu; Thu, 01 Jun 2023 15:26:17 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542625.846733; Thu, 01 Jun 2023 15:26:17 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4kBt-0005pn-91; Thu, 01 Jun 2023 15:26:17 +0000 Received: by outflank-mailman (input) for mailman id 542625; Thu, 01 Jun 2023 15:26:15 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4kBr-0004Rb-HB for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 15:26:15 +0000 Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.129.124]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id a4ffc933-0090-11ee-b231-6b7b168915f2; Thu, 01 Jun 2023 17:26:14 +0200 (CEST) Received: from mimecast-mx02.redhat.com (mx3-rdu2.redhat.com [66.187.233.73]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id us-mta-341-uDT_KEXNMA2D1W8fWckpaA-1; Thu, 01 Jun 2023 11:26:10 -0400 Received: from smtp.corp.redhat.com (int-mx03.intmail.prod.int.rdu2.redhat.com [10.11.54.3]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 4B4333823A15; Thu, 1 Jun 2023 15:26:09 +0000 (UTC) Received: from localhost (unknown [10.39.194.5]) by smtp.corp.redhat.com (Postfix) with ESMTP id A8F5A112132C; Thu, 1 Jun 2023 15:26:08 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: a4ffc933-0090-11ee-b231-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1685633173; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=+2jIiSec093zxYLQEOwE5JssP3b16O/dNh3vcZRftBM=; b=D5SvOMUkQYxtKKuoo7d8aPj1lek+3p1KfQlEkt5E3FSWFl3luku9Mtw9Q/NLYnfOBESB/D HsOcGe2Bp/EYNwpf1dDt4Eb28xn4OkWr0JaG2a0UXOOYSDqlPpoGlgtKwX8pR9XTNItigK nDU2gQurIdbJSFMCw2jBbbx2fwG4oFI= X-MC-Unique: uDT_KEXNMA2D1W8fWckpaA-1 From: Stefan Hajnoczi To: qemu-devel@nongnu.org Cc: qemu-block@nongnu.org, Stefano Stabellini , Aarushi Mehta , Anthony Perard , Thomas Huth , Julia Suvorova , Paolo Bonzini , Fam Zheng , Hanna Reitz , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Stefano Garzarella , "Michael S. Tsirkin" , =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= , Markus Armbruster , Cornelia Huck , =?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= , xen-devel@lists.xenproject.org, Paul Durrant , Kevin Wolf , Richard Henderson , Eric Blake , Stefan Hajnoczi , Raphael Norwitz , kvm@vger.kernel.org Subject: [PULL 7/8] block/blkio: use qemu_open() to support fd passing for virtio-blk Date: Thu, 1 Jun 2023 11:25:51 -0400 Message-Id: <20230601152552.1603119-8-stefanha@redhat.com> In-Reply-To: <20230601152552.1603119-1-stefanha@redhat.com> References: <20230601152552.1603119-1-stefanha@redhat.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Scanned-By: MIMEDefang 3.1 on 10.11.54.3 From: Stefano Garzarella Some virtio-blk drivers (e.g. virtio-blk-vhost-vdpa) supports the fd passing. Let's expose this to the user, so the management layer can pass the file descriptor of an already opened path. If the libblkio virtio-blk driver supports fd passing, let's always use qemu_open() to open the `path`, so we can handle fd passing from the management layer through the "/dev/fdset/N" special path. Reviewed-by: Stefan Hajnoczi Signed-off-by: Stefano Garzarella Message-id: 20230530071941.8954-2-sgarzare@redhat.com Signed-off-by: Stefan Hajnoczi --- block/blkio.c | 53 ++++++++++++++++++++++++++++++++++++++++++--------- 1 file changed, 44 insertions(+), 9 deletions(-) diff --git a/block/blkio.c b/block/blkio.c index 11be8787a3..527323d625 100644 --- a/block/blkio.c +++ b/block/blkio.c @@ -673,25 +673,60 @@ static int blkio_virtio_blk_common_open(BlockDriverState *bs, { const char *path = qdict_get_try_str(options, "path"); BDRVBlkioState *s = bs->opaque; - int ret; + bool fd_supported = false; + int fd, ret; if (!path) { error_setg(errp, "missing 'path' option"); return -EINVAL; } - ret = blkio_set_str(s->blkio, "path", path); - qdict_del(options, "path"); - if (ret < 0) { - error_setg_errno(errp, -ret, "failed to set path: %s", - blkio_get_error_msg()); - return ret; - } - if (!(flags & BDRV_O_NOCACHE)) { error_setg(errp, "cache.direct=off is not supported"); return -EINVAL; } + + if (blkio_get_int(s->blkio, "fd", &fd) == 0) { + fd_supported = true; + } + + /* + * If the libblkio driver supports fd passing, let's always use qemu_open() + * to open the `path`, so we can handle fd passing from the management + * layer through the "/dev/fdset/N" special path. + */ + if (fd_supported) { + int open_flags; + + if (flags & BDRV_O_RDWR) { + open_flags = O_RDWR; + } else { + open_flags = O_RDONLY; + } + + fd = qemu_open(path, open_flags, errp); + if (fd < 0) { + return -EINVAL; + } + + ret = blkio_set_int(s->blkio, "fd", fd); + if (ret < 0) { + error_setg_errno(errp, -ret, "failed to set fd: %s", + blkio_get_error_msg()); + qemu_close(fd); + return ret; + } + } else { + ret = blkio_set_str(s->blkio, "path", path); + if (ret < 0) { + error_setg_errno(errp, -ret, "failed to set path: %s", + blkio_get_error_msg()); + return ret; + } + } + + qdict_del(options, "path"); + return 0; } -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 01 15:26:28 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 15:26:28 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542626.846740 (Exim 4.92) (envelope-from ) id 1q4kBt-0005tt-Ts; Thu, 01 Jun 2023 15:26:17 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542626.846740; Thu, 01 Jun 2023 15:26:17 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4kBt-0005tC-K9; Thu, 01 Jun 2023 15:26:17 +0000 Received: by outflank-mailman (input) for mailman id 542626; Thu, 01 Jun 2023 15:26:16 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4kBs-0004Rb-HQ for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 15:26:16 +0000 Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.129.124]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id a535f5d2-0090-11ee-b231-6b7b168915f2; Thu, 01 Jun 2023 17:26:15 +0200 (CEST) Received: from mimecast-mx02.redhat.com (mimecast-mx02.redhat.com [66.187.233.88]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id us-mta-437-A75QHkCMNk6EcxhtamKjMA-1; Thu, 01 Jun 2023 11:26:12 -0400 Received: from smtp.corp.redhat.com (int-mx10.intmail.prod.int.rdu2.redhat.com [10.11.54.10]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 27CDE817050; Thu, 1 Jun 2023 15:26:11 +0000 (UTC) Received: from localhost (unknown [10.39.194.5]) by smtp.corp.redhat.com (Postfix) with ESMTP id 9F5AF492B0A; Thu, 1 Jun 2023 15:26:10 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: a535f5d2-0090-11ee-b231-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1685633174; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=nZ5BNX4c5KUjeA09sd5fBjLXzeUNTb+dTFMcgwON1rg=; b=BFHsDHUkIrWf3l41Zyu7jxYurU3jZ8bY0FMP1m8w2SypsGhcCvPwDUrJOJ6XF5qRp5vshj hg2dleZ7RzAavlkJhmW+PP8E1eK/zLI87GQW1kVoB3c0O84KZilBDnXhjeIRxIaa/h0dh5 CfsVXjySxHFrDloptWNkvZsVL/UVGxc= X-MC-Unique: A75QHkCMNk6EcxhtamKjMA-1 From: Stefan Hajnoczi To: qemu-devel@nongnu.org Cc: qemu-block@nongnu.org, Stefano Stabellini , Aarushi Mehta , Anthony Perard , Thomas Huth , Julia Suvorova , Paolo Bonzini , Fam Zheng , Hanna Reitz , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Stefano Garzarella , "Michael S. Tsirkin" , =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= , Markus Armbruster , Cornelia Huck , =?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= , xen-devel@lists.xenproject.org, Paul Durrant , Kevin Wolf , Richard Henderson , Eric Blake , Stefan Hajnoczi , Raphael Norwitz , kvm@vger.kernel.org Subject: [PULL 8/8] qapi: add '@fdset' feature for BlockdevOptionsVirtioBlkVhostVdpa Date: Thu, 1 Jun 2023 11:25:52 -0400 Message-Id: <20230601152552.1603119-9-stefanha@redhat.com> In-Reply-To: <20230601152552.1603119-1-stefanha@redhat.com> References: <20230601152552.1603119-1-stefanha@redhat.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Scanned-By: MIMEDefang 3.1 on 10.11.54.10 From: Stefano Garzarella The virtio-blk-vhost-vdpa driver in libblkio 1.3.0 supports the fd passing through the new 'fd' property. Since now we are using qemu_open() on '@path' if the virtio-blk driver supports the fd passing, let's announce it. In this way, the management layer can pass the file descriptor of an already opened vhost-vdpa character device. This is useful especially when the device can only be accessed with certain privileges. Add the '@fdset' feature only when the virtio-blk-vhost-vdpa driver in libblkio supports it. Suggested-by: Markus Armbruster Reviewed-by: Stefan Hajnoczi Signed-off-by: Stefano Garzarella Message-id: 20230530071941.8954-3-sgarzare@redhat.com Signed-off-by: Stefan Hajnoczi --- qapi/block-core.json | 6 ++++++ meson.build | 4 ++++ 2 files changed, 10 insertions(+) diff --git a/qapi/block-core.json b/qapi/block-core.json index 98d9116dae..4bf89171c6 100644 --- a/qapi/block-core.json +++ b/qapi/block-core.json @@ -3955,10 +3955,16 @@ # # @path: path to the vhost-vdpa character device. # +# Features: +# @fdset: Member @path supports the special "/dev/fdset/N" path +# (since 8.1) +# # Since: 7.2 ## { 'struct': 'BlockdevOptionsVirtioBlkVhostVdpa', 'data': { 'path': 'str' }, + 'features': [ { 'name' :'fdset', + 'if': 'CONFIG_BLKIO_VHOST_VDPA_FD' } ], 'if': 'CONFIG_BLKIO' } ## diff --git a/meson.build b/meson.build index bc76ea96bf..a61d3e9b06 100644 --- a/meson.build +++ b/meson.build @@ -2106,6 +2106,10 @@ config_host_data.set('CONFIG_LZO', lzo.found()) config_host_data.set('CONFIG_MPATH', mpathpersist.found()) config_host_data.set('CONFIG_MPATH_NEW_API', mpathpersist_new_api) config_host_data.set('CONFIG_BLKIO', blkio.found()) +if blkio.found() + config_host_data.set('CONFIG_BLKIO_VHOST_VDPA_FD', + blkio.version().version_compare('>=1.3.0')) +endif config_host_data.set('CONFIG_CURL', curl.found()) config_host_data.set('CONFIG_CURSES', curses.found()) config_host_data.set('CONFIG_GBM', gbm.found()) -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 01 15:28:15 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 15:28:15 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542653.846753 (Exim 4.92) (envelope-from ) id 1q4kDg-0000Bh-Cc; Thu, 01 Jun 2023 15:28:08 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542653.846753; Thu, 01 Jun 2023 15:28:08 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4kDg-0000Ba-9Y; Thu, 01 Jun 2023 15:28:08 +0000 Received: by outflank-mailman (input) for mailman id 542653; Thu, 01 Jun 2023 15:28:07 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4kDe-0000BF-SK for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 15:28:06 +0000 Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.133.124]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id e5d8cba0-0090-11ee-b231-6b7b168915f2; Thu, 01 Jun 2023 17:28:04 +0200 (CEST) Received: from mimecast-mx02.redhat.com (mimecast-mx02.redhat.com [66.187.233.88]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id us-mta-608-97tanEttN06cpnPrWUSb1A-1; Thu, 01 Jun 2023 11:26:19 -0400 Received: from smtp.corp.redhat.com (int-mx04.intmail.prod.int.rdu2.redhat.com [10.11.54.4]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 3741C803CA2; Thu, 1 Jun 2023 15:25:57 +0000 (UTC) Received: from localhost (unknown [10.39.194.5]) by smtp.corp.redhat.com (Postfix) with ESMTP id 7572F20296C6; Thu, 1 Jun 2023 15:25:56 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: e5d8cba0-0090-11ee-b231-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1685633279; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=LUW/UViDGW02kQ/3j6Afz3hRTQNvXIZflOpv+pi7CHk=; b=E46T0qT461qMVdNDd7w3os7OwHIM0XE1PNJ2Ee9R3opPeQCQD9YGtWH3m1xiFhnstCJHeW BJuxyayJBGGDGFl9NiGtD4xnAu3l8Pj53tqtC7oC4EhIiKqBdN29g8oPuOO94jMNveI+Kp AXsjI3TKDgHl/GGJN6328KI5o6ojvi4= X-MC-Unique: 97tanEttN06cpnPrWUSb1A-1 From: Stefan Hajnoczi To: qemu-devel@nongnu.org Cc: qemu-block@nongnu.org, Stefano Stabellini , Aarushi Mehta , Anthony Perard , Thomas Huth , Julia Suvorova , Paolo Bonzini , Fam Zheng , Hanna Reitz , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Stefano Garzarella , "Michael S. Tsirkin" , =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= , Markus Armbruster , Cornelia Huck , =?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= , xen-devel@lists.xenproject.org, Paul Durrant , Kevin Wolf , Richard Henderson , Eric Blake , Stefan Hajnoczi , Raphael Norwitz , kvm@vger.kernel.org Subject: [PULL 1/8] block: add blk_io_plug_call() API Date: Thu, 1 Jun 2023 11:25:45 -0400 Message-Id: <20230601152552.1603119-2-stefanha@redhat.com> In-Reply-To: <20230601152552.1603119-1-stefanha@redhat.com> References: <20230601152552.1603119-1-stefanha@redhat.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Scanned-By: MIMEDefang 3.1 on 10.11.54.4 Introduce a new API for thread-local blk_io_plug() that does not traverse the block graph. The goal is to make blk_io_plug() multi-queue friendly. Instead of having block drivers track whether or not we're in a plugged section, provide an API that allows them to defer a function call until we're unplugged: blk_io_plug_call(fn, opaque). If blk_io_plug_call() is called multiple times with the same fn/opaque pair, then fn() is only called once at the end of the function - resulting in batching. This patch introduces the API and changes blk_io_plug()/blk_io_unplug(). blk_io_plug()/blk_io_unplug() no longer require a BlockBackend argument because the plug state is now thread-local. Later patches convert block drivers to blk_io_plug_call() and then we can finally remove .bdrv_co_io_plug() once all block drivers have been converted. Signed-off-by: Stefan Hajnoczi Reviewed-by: Eric Blake Reviewed-by: Stefano Garzarella Acked-by: Kevin Wolf Message-id: 20230530180959.1108766-2-stefanha@redhat.com Signed-off-by: Stefan Hajnoczi --- MAINTAINERS | 1 + include/sysemu/block-backend-io.h | 13 +-- block/block-backend.c | 22 ----- block/plug.c | 159 ++++++++++++++++++++++++++++++ hw/block/dataplane/xen-block.c | 8 +- hw/block/virtio-blk.c | 4 +- hw/scsi/virtio-scsi.c | 6 +- block/meson.build | 1 + 8 files changed, 173 insertions(+), 41 deletions(-) create mode 100644 block/plug.c diff --git a/MAINTAINERS b/MAINTAINERS index 4b025a7b63..89f274f85e 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -2650,6 +2650,7 @@ F: util/aio-*.c F: util/aio-*.h F: util/fdmon-*.c F: block/io.c +F: block/plug.c F: migration/block* F: include/block/aio.h F: include/block/aio-wait.h diff --git a/include/sysemu/block-backend-io.h b/include/sysemu/block-backend-io.h index d62a7ee773..be4dcef59d 100644 --- a/include/sysemu/block-backend-io.h +++ b/include/sysemu/block-backend-io.h @@ -100,16 +100,9 @@ void blk_iostatus_set_err(BlockBackend *blk, int error); int blk_get_max_iov(BlockBackend *blk); int blk_get_max_hw_iov(BlockBackend *blk); -/* - * blk_io_plug/unplug are thread-local operations. This means that multiple - * IOThreads can simultaneously call plug/unplug, but the caller must ensure - * that each unplug() is called in the same IOThread of the matching plug(). - */ -void coroutine_fn blk_co_io_plug(BlockBackend *blk); -void co_wrapper blk_io_plug(BlockBackend *blk); - -void coroutine_fn blk_co_io_unplug(BlockBackend *blk); -void co_wrapper blk_io_unplug(BlockBackend *blk); +void blk_io_plug(void); +void blk_io_unplug(void); +void blk_io_plug_call(void (*fn)(void *), void *opaque); AioContext *blk_get_aio_context(BlockBackend *blk); BlockAcctStats *blk_get_stats(BlockBackend *blk); diff --git a/block/block-backend.c b/block/block-backend.c index 241f643507..4009ed5fed 100644 --- a/block/block-backend.c +++ b/block/block-backend.c @@ -2582,28 +2582,6 @@ void blk_add_insert_bs_notifier(BlockBackend *blk, Notifier *notify) notifier_list_add(&blk->insert_bs_notifiers, notify); } -void coroutine_fn blk_co_io_plug(BlockBackend *blk) -{ - BlockDriverState *bs = blk_bs(blk); - IO_CODE(); - GRAPH_RDLOCK_GUARD(); - - if (bs) { - bdrv_co_io_plug(bs); - } -} - -void coroutine_fn blk_co_io_unplug(BlockBackend *blk) -{ - BlockDriverState *bs = blk_bs(blk); - IO_CODE(); - GRAPH_RDLOCK_GUARD(); - - if (bs) { - bdrv_co_io_unplug(bs); - } -} - BlockAcctStats *blk_get_stats(BlockBackend *blk) { IO_CODE(); diff --git a/block/plug.c b/block/plug.c new file mode 100644 index 0000000000..98a155d2f4 --- /dev/null +++ b/block/plug.c @@ -0,0 +1,159 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ +/* + * Block I/O plugging + * + * Copyright Red Hat. + * + * This API defers a function call within a blk_io_plug()/blk_io_unplug() + * section, allowing multiple calls to batch up. This is a performance + * optimization that is used in the block layer to submit several I/O requests + * at once instead of individually: + * + * blk_io_plug(); <-- start of plugged region + * ... + * blk_io_plug_call(my_func, my_obj); <-- deferred my_func(my_obj) call + * blk_io_plug_call(my_func, my_obj); <-- another + * blk_io_plug_call(my_func, my_obj); <-- another + * ... + * blk_io_unplug(); <-- end of plugged region, my_func(my_obj) is called once + * + * This code is actually generic and not tied to the block layer. If another + * subsystem needs this functionality, it could be renamed. + */ + +#include "qemu/osdep.h" +#include "qemu/coroutine-tls.h" +#include "qemu/notify.h" +#include "qemu/thread.h" +#include "sysemu/block-backend.h" + +/* A function call that has been deferred until unplug() */ +typedef struct { + void (*fn)(void *); + void *opaque; +} UnplugFn; + +/* Per-thread state */ +typedef struct { + unsigned count; /* how many times has plug() been called? */ + GArray *unplug_fns; /* functions to call at unplug time */ +} Plug; + +/* Use get_ptr_plug() to fetch this thread-local value */ +QEMU_DEFINE_STATIC_CO_TLS(Plug, plug); + +/* Called at thread cleanup time */ +static void blk_io_plug_atexit(Notifier *n, void *value) +{ + Plug *plug = get_ptr_plug(); + g_array_free(plug->unplug_fns, TRUE); +} + +/* This won't involve coroutines, so use __thread */ +static __thread Notifier blk_io_plug_atexit_notifier; + +/** + * blk_io_plug_call: + * @fn: a function pointer to be invoked + * @opaque: a user-defined argument to @fn() + * + * Call @fn(@opaque) immediately if not within a blk_io_plug()/blk_io_unplug() + * section. + * + * Otherwise defer the call until the end of the outermost + * blk_io_plug()/blk_io_unplug() section in this thread. If the same + * @fn/@opaque pair has already been deferred, it will only be called once upon + * blk_io_unplug() so that accumulated calls are batched into a single call. + * + * The caller must ensure that @opaque is not freed before @fn() is invoked. + */ +void blk_io_plug_call(void (*fn)(void *), void *opaque) +{ + Plug *plug = get_ptr_plug(); + + /* Call immediately if we're not plugged */ + if (plug->count == 0) { + fn(opaque); + return; + } + + GArray *array = plug->unplug_fns; + if (!array) { + array = g_array_new(FALSE, FALSE, sizeof(UnplugFn)); + plug->unplug_fns = array; + blk_io_plug_atexit_notifier.notify = blk_io_plug_atexit; + qemu_thread_atexit_add(&blk_io_plug_atexit_notifier); + } + + UnplugFn *fns = (UnplugFn *)array->data; + UnplugFn new_fn = { + .fn = fn, + .opaque = opaque, + }; + + /* + * There won't be many, so do a linear search. If this becomes a bottleneck + * then a binary search (glib 2.62+) or different data structure could be + * used. + */ + for (guint i = 0; i < array->len; i++) { + if (memcmp(&fns[i], &new_fn, sizeof(new_fn)) == 0) { + return; /* already exists */ + } + } + + g_array_append_val(array, new_fn); +} + +/** + * blk_io_plug: Defer blk_io_plug_call() functions until blk_io_unplug() + * + * blk_io_plug/unplug are thread-local operations. This means that multiple + * threads can simultaneously call plug/unplug, but the caller must ensure that + * each unplug() is called in the same thread of the matching plug(). + * + * Nesting is supported. blk_io_plug_call() functions are only called at the + * outermost blk_io_unplug(). + */ +void blk_io_plug(void) +{ + Plug *plug = get_ptr_plug(); + + assert(plug->count < UINT32_MAX); + + plug->count++; +} + +/** + * blk_io_unplug: Run any pending blk_io_plug_call() functions + * + * There must have been a matching blk_io_plug() call in the same thread prior + * to this blk_io_unplug() call. + */ +void blk_io_unplug(void) +{ + Plug *plug = get_ptr_plug(); + + assert(plug->count > 0); + + if (--plug->count > 0) { + return; + } + + GArray *array = plug->unplug_fns; + if (!array) { + return; + } + + UnplugFn *fns = (UnplugFn *)array->data; + + for (guint i = 0; i < array->len; i++) { + fns[i].fn(fns[i].opaque); + } + + /* + * This resets the array without freeing memory so that appending is cheap + * in the future. + */ + g_array_set_size(array, 0); +} diff --git a/hw/block/dataplane/xen-block.c b/hw/block/dataplane/xen-block.c index 2597f38805..3b6f2b0aa2 100644 --- a/hw/block/dataplane/xen-block.c +++ b/hw/block/dataplane/xen-block.c @@ -537,7 +537,7 @@ static bool xen_block_handle_requests(XenBlockDataPlane *dataplane) * is below us. */ if (inflight_atstart > IO_PLUG_THRESHOLD) { - blk_io_plug(dataplane->blk); + blk_io_plug(); } while (rc != rp) { /* pull request from ring */ @@ -577,12 +577,12 @@ static bool xen_block_handle_requests(XenBlockDataPlane *dataplane) if (inflight_atstart > IO_PLUG_THRESHOLD && batched >= inflight_atstart) { - blk_io_unplug(dataplane->blk); + blk_io_unplug(); } xen_block_do_aio(request); if (inflight_atstart > IO_PLUG_THRESHOLD) { if (batched >= inflight_atstart) { - blk_io_plug(dataplane->blk); + blk_io_plug(); batched = 0; } else { batched++; @@ -590,7 +590,7 @@ static bool xen_block_handle_requests(XenBlockDataPlane *dataplane) } } if (inflight_atstart > IO_PLUG_THRESHOLD) { - blk_io_unplug(dataplane->blk); + blk_io_unplug(); } return done_something; diff --git a/hw/block/virtio-blk.c b/hw/block/virtio-blk.c index 4ca66b5860..39e7f23fab 100644 --- a/hw/block/virtio-blk.c +++ b/hw/block/virtio-blk.c @@ -1134,7 +1134,7 @@ void virtio_blk_handle_vq(VirtIOBlock *s, VirtQueue *vq) bool suppress_notifications = virtio_queue_get_notification(vq); aio_context_acquire(blk_get_aio_context(s->blk)); - blk_io_plug(s->blk); + blk_io_plug(); do { if (suppress_notifications) { @@ -1158,7 +1158,7 @@ void virtio_blk_handle_vq(VirtIOBlock *s, VirtQueue *vq) virtio_blk_submit_multireq(s, &mrb); } - blk_io_unplug(s->blk); + blk_io_unplug(); aio_context_release(blk_get_aio_context(s->blk)); } diff --git a/hw/scsi/virtio-scsi.c b/hw/scsi/virtio-scsi.c index 4a8849cc7e..9c8ef0aaa6 100644 --- a/hw/scsi/virtio-scsi.c +++ b/hw/scsi/virtio-scsi.c @@ -799,7 +799,7 @@ static int virtio_scsi_handle_cmd_req_prepare(VirtIOSCSI *s, VirtIOSCSIReq *req) return -ENOBUFS; } scsi_req_ref(req->sreq); - blk_io_plug(d->conf.blk); + blk_io_plug(); object_unref(OBJECT(d)); return 0; } @@ -810,7 +810,7 @@ static void virtio_scsi_handle_cmd_req_submit(VirtIOSCSI *s, VirtIOSCSIReq *req) if (scsi_req_enqueue(sreq)) { scsi_req_continue(sreq); } - blk_io_unplug(sreq->dev->conf.blk); + blk_io_unplug(); scsi_req_unref(sreq); } @@ -836,7 +836,7 @@ static void virtio_scsi_handle_cmd_vq(VirtIOSCSI *s, VirtQueue *vq) while (!QTAILQ_EMPTY(&reqs)) { req = QTAILQ_FIRST(&reqs); QTAILQ_REMOVE(&reqs, req, next); - blk_io_unplug(req->sreq->dev->conf.blk); + blk_io_unplug(); scsi_req_unref(req->sreq); virtqueue_detach_element(req->vq, &req->elem, 0); virtio_scsi_free_req(req); diff --git a/block/meson.build b/block/meson.build index 486dda8b85..fb4332bd66 100644 --- a/block/meson.build +++ b/block/meson.build @@ -23,6 +23,7 @@ block_ss.add(files( 'mirror.c', 'nbd.c', 'null.c', + 'plug.c', 'qapi.c', 'qcow2-bitmap.c', 'qcow2-cache.c', -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 01 15:42:47 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 15:42:47 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542659.846766 (Exim 4.92) (envelope-from ) id 1q4kRb-0002kp-KS; Thu, 01 Jun 2023 15:42:31 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542659.846766; Thu, 01 Jun 2023 15:42:31 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4kRb-0002ki-HB; Thu, 01 Jun 2023 15:42:31 +0000 Received: by outflank-mailman (input) for mailman id 542659; Thu, 01 Jun 2023 15:42:29 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4kRZ-0002kc-CK for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 15:42:29 +0000 Received: from esa3.hc3370-68.iphmx.com (esa3.hc3370-68.iphmx.com [216.71.145.155]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id e87d0a1a-0092-11ee-b231-6b7b168915f2; Thu, 01 Jun 2023 17:42:27 +0200 (CEST) Received: from mail-bn8nam12lp2172.outbound.protection.outlook.com (HELO NAM12-BN8-obe.outbound.protection.outlook.com) ([104.47.55.172]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 01 Jun 2023 11:42:24 -0400 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) by BN9PR03MB6009.namprd03.prod.outlook.com (2603:10b6:408:132::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6433.23; Thu, 1 Jun 2023 15:42:22 +0000 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::192:6bdf:b105:64dd]) by SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::192:6bdf:b105:64dd%3]) with mapi id 15.20.6433.024; Thu, 1 Jun 2023 15:42:22 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: e87d0a1a-0092-11ee-b231-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1685634147; h=date:from:to:cc:subject:message-id:references: in-reply-to:mime-version; bh=g9IlkNFI+IQzSNwJVA+WOSizVbuvOTDfmd+6767ZHd4=; b=IUa/dIzVcBfQh5wpY2qSF83a4Pzdsf1AZew4kuQxIh3Ji2KoAreDyDzd KJIpRcyUcdHsCQ2txz1aihy4Q120ydFMvkMY8UjZpOvWuT5J18YJUGhC/ /XWiPFmGz+ybu1zTmIRnophbordHWnSpeC/SgZe90BJJ5qR93NQhwQOGP w=; X-IronPort-RemoteIP: 104.47.55.172 X-IronPort-MID: 111263211 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:yv5S5qlouiB0dsElYGKMDzHo5gxgJ0RdPkR7XQ2eYbSJt1+Wr1Gzt xJKWTiBaP6CYDT8KtknOoq/80xX7JTRmt4xGwE6rS4wRSMWpZLJC+rCIxarNUt+DCFhoGFPt JxCN4aafKjYaleG+39B55C49SEUOZmgH+a6U6icfHgqH2eIcQ954Tp7gek1n4V0ttawBgKJq LvartbWfVSowFaYCEpNg064gE0p5KyaVA8w5ARkPqgV5AaGzBH5MbpETU2PByqgKmVrNrbSq 9brlNmR4m7f9hExPdKp+p6TnpoiG+O60aCm0xK6aoD66vRwjnVaPpUTbZLwXXx/mTSR9+2d/ f0W3XCGpaXFCYWX8AgVe0Ew/yiTpsSq8pefSZS0mZT7I0Er7xIAahihZa07FdRwxwp5PY1B3 dIYFw1WaDecu9i78rGaF+Vq2+8SNvC+aevzulk4pd3YJdAPZMmZBo/stZpf1jp2gd1SF/HDY cZfcSBocBnLfxxIPBEQFY46m+CrwHL4dlW0qnrM/fZxvzeVkVE3iee3WDbWUoXiqcF9hEGXq 3iA523kKhobKMae2XyO9XfEaurnxHqiAtxJTuThnhJsqFmd9nRPNR43bAW28cv6llWBW/Buc UNBr0LCqoB3riRHVOLVWAajvHOfolsVV99RFcUq5QeV0K3W7g2FQG8eQVZpeNEg8cM7WzEu/ luIhM/yQyxitqWPTnCQ/avSqim9UQAfIHUefyYCQU0A6sP6vYAophvVS5BoF6vdpt/oHTD9x RiaoS54gK8c5eYQzLmy913DhzOqp7DKQxQz6wGRWXiqhj6Vf6agbo2srFLdvfBJKd/DSkHb5 Sde3c+D8OoJEJeB0jSXR/kAF62o4PDDNyDAhVloHN8q8DHFF2OfQL28KQpWfC9BWvvosxewC KMPkWu9PKNuAUY= IronPort-HdrOrdr: A9a23:qBzPvaGwIz1c64o6pLqE5seALOsnbusQ8zAXPiFKJSC9F/byqy nAppsmPHPP5gr5OktBpTnwAsi9qBrnnPYejLX5Vo3SPzUO1lHYSb1K3M/PxCDhBj271sM179 YFT0GmMqyTMWRH X-Talos-CUID: 9a23:MvUFbW+t8sbjRu7djSeVv2AUJf1+dFrC8E3dEUyZVGpvFZakU2bFrQ== X-Talos-MUID: 9a23:tSvEfAbHu43gWuBTszHcnG1fN+ZRvan+OgMRiqoGmfjeOnkl X-IronPort-AV: E=Sophos;i="6.00,210,1681185600"; d="scan'208";a="111263211" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=P0hhEAZ2i2BeBkK4AxJTeKJEFDvCjOwC8IPdluBg2XsAOlDIH9i+3yKA1CUbz/jLknAKTgoIOUSIjumf63wlAUHjGTxgEKGvzfG/doO1AuGyvL4Ooe4YwUeo9gFq8fONogtaFDdn3qPn7klB2DjGeKaxVgnkxBErlfCvf/NkBwlvxyinT4UfLVFe/LW+aXyjKmQPwaGlDM0mjYN5k3cQYRm6iJbT9UDh8IlDRtnSlq15kJk+Hv5ES7BQZ3EjRrZuZKDZCJfwUrbiX5qg4h1LH9+0J3chK5Cnng29cu4ler5NCScAQfe+xTFAeVDvmjLGz/SpVuCqVQdkNrqPfq1kcA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=vg5rDJdS7bIEO8PJ3knkH09wu6bNH/wmHA1jfhy93X0=; b=lcRuyl7T8IK4UhZC28y1WUFD/+nG82LSm1/4oXcNYXdbPFiyM3o+Oo9+xxXyp13MwMmHUA8sUkIjrISIesHqeZoWSGfASMEZuIyrhHrkRE8+lXDi1WwhyrP8X5VZmuMIx81kIdf7kuk9mJyRvrMMggPCbRMAgKpLFXM2l5bvHVanE9/v7UwVuWbbXOCEOJpn6j0773+Qq5iiJxx81aWby6vynZyatWw8Q87wa1uYsfwCl2YfTH0cheTrhu2XlVH5cZdRXv3OWk8s5R2EynX4ZJ4y2i6n+b/E+mAuUVGxjzJJece7rOctTLu4Yhn8mnDMqzK+Ryuh6djweefB9D6DHQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=vg5rDJdS7bIEO8PJ3knkH09wu6bNH/wmHA1jfhy93X0=; b=K8OalYrPWfa1K/YQueudqYvB6zEmx4P1i9cnfMAecrqK0ILZ/jfUT9L/eZ8bbIx0+y5L1GxeuISYgtkHqsw2QDdiPP9sJ8Rhh+oyJ2G2KxDqBUT7qfzbfzAdG9XKfQXLPH4SEFpksZ3mWLHSFjLqx8xVddk8L7Pb4SoEiV1jmr0= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Date: Thu, 1 Jun 2023 17:42:14 +0200 From: Roger Pau =?utf-8?B?TW9ubsOp?= To: osstest service owner Cc: xen-devel@lists.xenproject.org, Bertrand Marquis , Julien Grall , Stefano Stabellini Subject: Re: [linux-linus test] 181063: regressions - FAIL Message-ID: References: Content-Type: text/plain; charset=utf-8 Content-Disposition: inline In-Reply-To: X-ClientProxiedBy: LO2P265CA0047.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:61::35) To SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|BN9PR03MB6009:EE_ X-MS-Office365-Filtering-Correlation-Id: 3aac741f-67fe-4585-3c31-08db62b6c9c1 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: rJpR62V7zhrtuatdFP8usQAveb/3qMOd157arARCCvgyCVDET9cyW2c2BHQ8yMmy1MKcKwxaeKnMzxgcAa00pyXg2JvfvfPNRc7Y7eKz9FEqzhbWIm2udUrRpJnJgnQnWRdrRtWQohDoijxTxzvvoBgXdhl+WmsMamVV/ooy2U80QTPkvxUMeOJojaN72wJWoixbuKBwuwm8an+mRZMcVYHW7QDsf9H0hONDayu4LaPGKEO0MKLGxN4yeLnO5duFeK7UBqebOC3kwW4kEkPCBeEETDF7tCMr6EtQt7w4e3o1Ww8wVWUrFz1axGqsPKAMp9tMK7SLxvz1RHyERyoryN/OlrB5xapgRos6cu0XOPdXkLog1BX6NZ8pLgaFG2afO81G3j4sqrvMgG6rN/OSeJpmS9to09I8ZGe8C4JvJ0U2rx/UMr85DgBcWPOUcyvn4mIQfit8s98NGCwViCcIyFeAvoWudwz5AR8TaByGfSpwsXi7Pg8NAwI38K86t/XfCZbbMUC9jvC9Xjc8FclI3UGOs4iriM+mcdJvNiaJjUw= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(7916004)(346002)(136003)(376002)(39860400002)(396003)(366004)(451199021)(6512007)(9686003)(83380400001)(26005)(6506007)(186003)(82960400001)(8936002)(54906003)(5660300002)(8676002)(478600001)(38100700002)(4744005)(2906002)(966005)(33716001)(41300700001)(86362001)(6486002)(66946007)(316002)(6666004)(85182001)(66556008)(66476007)(6916009)(4326008);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?MDRuSE5HU3pKblMzbzEyekM1K05sSkV3RS9abXN3TDBpdXVjdE5DeDFqNlo2?= =?utf-8?B?S29xQVkwT256cFpDcWFoWjhOdkRLNzhma05oeG9GZ253QW1EQnJUUWtVTFZQ?= =?utf-8?B?ZnppT2FhZVptbGhGZTZNYTVjZC92UHFhMXNaZFd2akU1NTVKc0lQK0o3VGE5?= =?utf-8?B?TGswMEF2amhjd2ZvZjk5NEVhVzEyVTZZMldwWGhyZnVoV01pVUpSamxjbmdM?= =?utf-8?B?YVZzd2sxRmRrYnlmTWxIVDFXTjczcjBiMHFRWEhuSVhFZDgyeVZnTWNSR2hZ?= =?utf-8?B?T0pydVB2MDJnTXNhbWNBWjRtUTFJUGFscXI1M3lQR3YySU56Z2lQMSs4UjZi?= =?utf-8?B?aGhoazcrWlFXZ1Vxc2xic1RHR1Z2a3M5VFU2VXp1N3FQWW81TTJ2N1QzcGZx?= =?utf-8?B?aHVJR3RUb1kxVkNsajlmdWMrNGVacnp0QVg4UzArS202akhJTUNKMHJrRzg4?= =?utf-8?B?ZzNyd0ZKc3FIVjNoU3loLzAwbXdpWStDUVVjSThrcHZJakJmNXFMSVQ0UjlO?= =?utf-8?B?Z0tuS2sycVYxUzRmUGphNEdQQnNvSmMxUkdJZGtjWHhlTFZWRWtYMG5SMTcv?= =?utf-8?B?VFRiQTU2WldzajRNWXJyVTFhMkNCUml1L3BKY01pdzlWMDZtVWloTUlBRnhk?= =?utf-8?B?cENXd3pUWkM3V0J5TEpPN3d2TC9Ub3hISEs3bVNQQ2kxcTN6d1hyMXduZ3d0?= =?utf-8?B?NXdXU1lQd29JL2FGaEpqNEFrdEpnenUrRUxUNThtRVRtOXJPWVRzQXpsQkRE?= =?utf-8?B?dHhxUDV4VHZLY0R3VWlkM2s2M3BaN3gwd2pQQkE5di80UHA5c1pHTUc3eElW?= =?utf-8?B?dEp1czJibHc2dTNOOG9KbVFVQjRUWEk2czhrajNJSlpyeFZiNy9OU3ovZGEw?= =?utf-8?B?ajdHM09FLzEwMVZabS85UnFMNVpBaytxVVFMc3JUOCsrSkNiQndwUzRXMng1?= =?utf-8?B?Rk5MM0YrcVdjb0NrZGVvS1JTVjl0eGpVY1VWa0QrSmQyVERST2pza2hzdWUx?= =?utf-8?B?Z3NIYWk0eXJMcE5Ubng2bUp6akxUNUp0YVdyRVRNZ01WQ1NFY3B2VHhDOWtj?= =?utf-8?B?UlkxRHFVLzhwTTdsalF4NWtHREgvSGsrMXU2SUkvaFh6UHJKSTAvbkZWUjYw?= =?utf-8?B?T2FwNStzWi9wamE5MzZLc0RLK2FDUm03NUNtU0RkcG16K05mdUtvK3kwM1JQ?= =?utf-8?B?a3hQQ2h1VS9nU0VIcno1WUYzNnVjTThQRm9GNDNSSnN6ejBPelRkVk0rTnRY?= =?utf-8?B?dFMyZ0dmeElyZnFHejNTaC94TU5CRXVoTUc2WHF4dlhnWngybHZ2bHRQSDlX?= =?utf-8?B?ekREUzBkQ21tTk1rcW1ia05KTk5mMmFCdFFPd3V1eHJwVERCZmFFUmc4OEhB?= =?utf-8?B?dGp3NHZ4WjF4cTV6K01ESFdyWm9CcEpwRTlyS3UvZ1MyYUQ1bEZJSmwwcEg4?= =?utf-8?B?b2w5ZWNaZjNFUXZHczI1MHZnY2RubGxqK1F1QTFnaWV5ZEpJUStRMG5Jemtx?= =?utf-8?B?M1RqeWM2NlMrVW9jdHlVdHcvSk05RW42TUZtYlJBQm15MWNpdUdTdWZ5TmRy?= =?utf-8?B?aVI4U1VCMTdScDUvalJHR05EQm9XUVBCSVpRRmw3T0szY3laY2lIRzFkYkJk?= =?utf-8?B?WE9SeUpKZkZMNkNxWk9rWWtjK1ZVb0FvdTlwWnhyWTV1aFVFNlZ3NlljZUYz?= =?utf-8?B?RHR6Wmd2NjAxUnJhS1p4VVE2QlBGbHRJay9hRjh5TmhZVDZLbEkzMndDKzVV?= =?utf-8?B?RGZIUkloMlpWMWx5THBQWFM4RjRSd3F1SDQzeGtQRnZtdUUvMzQzSUVUcWl3?= =?utf-8?B?L1h2bFBPT3lkM3Z0cmFyZW1sNFJGREluZy91RTY4akJ2RUFOUXhsdTNXVEdx?= =?utf-8?B?dUtkeUcwdzZUZVVPK0puNmxybnpEM3gyV0ZxMnNaQmZVNWVJR1VQMUtsWHJT?= =?utf-8?B?Njc2clhqcmk1TUR6ZGc4RncrZFgxQUFaaCs1STJrZ3B5bi9HeE1ZQjJpTnh5?= =?utf-8?B?Q3BabVVMWHJ1VncrVXR6TUZPdklQQnZDMU44M3R5VjBtOW1pZDBUZVFSanJy?= =?utf-8?B?U0oyOEpMTCtacEJ6aHBlSzhSMEl2ZUQweXFUdk94R3dtdU0xSEZHOE5wc0dN?= =?utf-8?B?N2hMN2pnS3ZERTJDL3FKYVhzTlAzQTNLU01RRHR5ejVmYlRjZ0xHTE1mdjlh?= =?utf-8?B?MGc9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: ypyESAMKbFDDsGKSOWVTscjAh2fGFG6tMK1Rc2ap0ssEwfMMmFIUux1h+QK2OODUonT3iVNnLDqsbNT4/jH7cHxmfyzFTMKIHOIeabb7XAkJMsn9c4Im7NuuDOLcY8RnPdD7fXcS7+dAh0fk0FY+aWFhBKcOox5ST6fMnsFUreiqu4rZKJCU4KOxHmulnjvoG0PqUgrXwkj5DnarwIyKBoJSFpB7jIqURPRNTT/vdb/PdaDVKUvhGdH8sD1/GJY/OaTZfuMXlTQtvIdWoFDPRfzzQpq9CQXbKNkgtCDOLTPrTZmilmH5kyRu4rt+zmW3CCTOIVB3Z2/2AMYcJSXr/uOhhJWeE4Y42QOtJnRfW+sBg18CTsBHitLBf0ljS+9ZMGAcQHG8kF75kM5AoCN0Uu0WYtaP0qWAC0RoTE29BYcw0Phb1pXCLtpD3RzD3FoI73pQuwetj8cZ/J9tq1Ov2+8UASwHYy7kzDT26C4dtGmBFeMWA73tjaoDvq8GRsM3x4ZW5YQ+6ar6WPUw5IO0DK8uzdi2StPhZHr1WHALTGJBelS8WPnxFz5Q9oZFrYKOR8FjuiaiPV7xfNK79LNfl0bMyRQTP9/BGag4DHKqT8WrHeFkhsb+Rc2Gi0hhlqEbYFFqmFHOUO7CI6k+z06rZLS6SkfoEiKWJw9ur2mtVJ7UUmBncyeiWGOhXu1/W2pQ/CTWk1+Bl+FsaJ6KBi005KXHOO/MmDxFM1Z0jSWZCYK6uYV3vyCFOuxhLqgQyZMF8H/mqe8xr8FJW1QZKNI/uAUWrvibPRYNJNsAndiW3u37/dGdwDHbvgiBIQN7O0rvkUaY0h+hHX+XrsB2JPfE4DgFT6yfvUPnfN81cU7Vk6TWUav6tb4I/l2jFmrNJX2D X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 3aac741f-67fe-4585-3c31-08db62b6c9c1 X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Jun 2023 15:42:21.9890 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: f8GW+TsyfawUbHzccGzHjEvDxCh+XCghhDIhKfSPHpA3N3w5MTidrhbITc7ugkomzViFte8Rfi991ZMMTtFYFQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN9PR03MB6009 On Thu, Jun 01, 2023 at 01:20:26PM +0000, osstest service owner wrote: > flight 181063 linux-linus real [real] > flight 181077 linux-linus real-retest [real] > http://logs.test-lab.xenproject.org/osstest/logs/181063/ > http://logs.test-lab.xenproject.org/osstest/logs/181077/ > > Regressions :-( > > Tests which did not succeed and are blocking, > including tests which could not be run: > test-armhf-armhf-xl-credit1 8 xen-boot fail REGR. vs. 180278 History for the test: http://logs.test-lab.xenproject.org/osstest/results/history/test-armhf-armhf-xl/linux-linus.html Last working flight seems to be 173462, that was using hash 9d84bb40bcb3. First failure is 173462, which is hash e8bc52cb8df8. Roger. From xen-devel-bounces@lists.xenproject.org Thu Jun 01 16:26:32 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 16:26:32 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542666.846784 (Exim 4.92) (envelope-from ) id 1q4l7u-0007l7-WC; Thu, 01 Jun 2023 16:26:14 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542666.846784; Thu, 01 Jun 2023 16:26:14 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4l7u-0007l0-TV; Thu, 01 Jun 2023 16:26:14 +0000 Received: by outflank-mailman (input) for mailman id 542666; Thu, 01 Jun 2023 16:26:13 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4l7t-0007ku-Ae for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 16:26:13 +0000 Received: from mga11.intel.com (mga11.intel.com [192.55.52.93]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id ffb6f3e3-0098-11ee-8611-37d641c3527e; Thu, 01 Jun 2023 18:26:03 +0200 (CEST) Received: from orsmga001.jf.intel.com ([10.7.209.18]) by fmsmga102.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 01 Jun 2023 09:26:00 -0700 Received: from smile.fi.intel.com ([10.237.72.54]) by orsmga001.jf.intel.com with ESMTP; 01 Jun 2023 09:25:50 -0700 Received: from andy by smile.fi.intel.com with local (Exim 4.96) (envelope-from ) id 1q4l7S-000SYH-2G; Thu, 01 Jun 2023 19:25:46 +0300 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: ffb6f3e3-0098-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1685636764; x=1717172764; h=date:from:to:cc:subject:message-id:references: mime-version:in-reply-to; bh=q1NNNfNs1qkINp4+7F0o+S22gLPh78FVwhQOR7EmNDk=; b=A650K9DDlM7WKsXZBUfBswm99ZyRhlvbRXT3+irw74KBNDtJWSEUHG4W OE7gWS6+F1yJ6nge2hhrT3+Cr5zOEW36gr6vPKaNa1sxhLaAoNWyVt+0M 8rz+72PUT/+uX6UZGvlI8sO3ZCNFKbsckV81Nd87ZMil1fenkiMlDRXHd nto/1LJ2mE/QnazX9t0ZHLQub3zNZt8hcwbwJe0Sq1tjn4t0NyOesAnqL G4Qg9Q+wZLejsyQxnBQHHN/i0fWTMuSeH40gtqdRniBKqs/8FOviZNiQ5 zJcioT6nN2n1tiDhxPrTa8Ec48Ukn/jwEstGeDLQCEFJ/KUiYtExuvEPq A==; X-IronPort-AV: E=McAfee;i="6600,9927,10728"; a="353103087" X-IronPort-AV: E=Sophos;i="6.00,210,1681196400"; d="scan'208";a="353103087" X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10728"; a="740424758" X-IronPort-AV: E=Sophos;i="6.00,210,1681196400"; d="scan'208";a="740424758" Date: Thu, 1 Jun 2023 19:25:46 +0300 From: Andy Shevchenko To: Jonas Gorski Cc: Bjorn Helgaas , Krzysztof =?utf-8?Q?Wilczy=C5=84ski?= , Rich Felker , linux-sh@vger.kernel.org, linux-pci@vger.kernel.org, Dominik Brodowski , linux-kernel@vger.kernel.org, =?iso-8859-1?Q?Micka=EBl_Sala=FCn?= , Andrew Lunn , sparclinux@vger.kernel.org, Stefano Stabellini , Yoshinori Sato , Gregory Clement , "Rafael J. Wysocki" , Russell King , linux-acpi@vger.kernel.org, Miguel Ojeda , xen-devel@lists.xenproject.org, Matt Turner , Anatolij Gustschin , Sebastian Hesselbarth , Arnd Bergmann , Niklas Schnelle , Richard Henderson , Nicholas Piggin , Ivan Kokshaysky , John Paul Adrian Glaubitz , Bjorn Helgaas , Mika Westerberg , linux-arm-kernel@lists.infradead.org, Juergen Gross , Thomas Bogendoerfer , Philippe =?iso-8859-1?Q?Mathieu-Daud=E9?= , linuxppc-dev@lists.ozlabs.org, Randy Dunlap , linux-mips@vger.kernel.org, Oleksandr Tyshchenko , linux-alpha@vger.kernel.org, Pali =?iso-8859-1?Q?Roh=E1r?= , "David S. Miller" , "Maciej W. Rozycki" Subject: Re: [PATCH v8 0/7] Add pci_dev_for_each_resource() helper and update users Message-ID: References: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: Organization: Intel Finland Oy - BIC 0357606-4 - Westendinkatu 7, 02160 Espoo On Wed, May 31, 2023 at 08:48:35PM +0200, Jonas Gorski wrote: > On Tue, 30 May 2023 at 23:34, Bjorn Helgaas wrote: > > On Fri, May 12, 2023 at 02:48:51PM -0500, Bjorn Helgaas wrote: > > > On Fri, May 12, 2023 at 01:56:29PM +0300, Andy Shevchenko wrote: > > > > On Tue, May 09, 2023 at 01:21:22PM -0500, Bjorn Helgaas wrote: > > > > > On Tue, Apr 04, 2023 at 11:11:01AM -0500, Bjorn Helgaas wrote: > > > > > > On Thu, Mar 30, 2023 at 07:24:27PM +0300, Andy Shevchenko wrote: > > > > > > > Provide two new helper macros to iterate over PCI device resources and > > > > > > > convert users. > > > > > > > > > > > Applied 2-7 to pci/resource for v6.4, thanks, I really like this! > > > > > > > > > > This is 09cc90063240 ("PCI: Introduce pci_dev_for_each_resource()") > > > > > upstream now. > > > > > > > > > > Coverity complains about each use, > > > > > > > > It needs more clarification here. Use of reduced variant of the > > > > macro or all of them? If the former one, then I can speculate that > > > > Coverity (famous for false positives) simply doesn't understand `for > > > > (type var; var ...)` code. > > > > > > True, Coverity finds false positives. It flagged every use in > > > drivers/pci and drivers/pnp. It didn't mention the arch/alpha, arm, > > > mips, powerpc, sh, or sparc uses, but I think it just didn't look at > > > those. > > > > > > It flagged both: > > > > > > pbus_size_io pci_dev_for_each_resource(dev, r) > > > pbus_size_mem pci_dev_for_each_resource(dev, r, i) > > > > > > Here's a spreadsheet with a few more details (unfortunately I don't > > > know how to make it dump the actual line numbers or analysis like I > > > pasted below, so "pci_dev_for_each_resource" doesn't appear). These > > > are mostly in the "Drivers-PCI" component. > > > > > > https://docs.google.com/spreadsheets/d/1ohOJwxqXXoDUA0gwopgk-z-6ArLvhN7AZn4mIlDkHhQ/edit?usp=sharing > > > > > > These particular reports are in the "High Impact Outstanding" tab. > > > > Where are we at? Are we going to ignore this because some Coverity > > reports are false positives? > > Looking at the code I understand where coverity is coming from: > > #define __pci_dev_for_each_res0(dev, res, ...) \ > for (unsigned int __b = 0; \ > res = pci_resource_n(dev, __b), __b < PCI_NUM_RESOURCES; \ > __b++) > > res will be assigned before __b is checked for being less than > PCI_NUM_RESOURCES, making it point to behind the array at the end of > the last loop iteration. Which is fine and you stumbled over the same mistake I made, that's why the documentation has been added to describe why the heck this macro is written the way it's written. Coverity sucks. > Rewriting the test expression as > > __b < PCI_NUM_RESOURCES && (res = pci_resource_n(dev, __b)); > > should avoid the (coverity) warning by making use of lazy evaluation. Obviously NAK. > It probably makes the code slightly less performant as res will now be > checked for being not NULL (which will always be true), but I doubt it > will be significant (or in any hot paths). -- With Best Regards, Andy Shevchenko From xen-devel-bounces@lists.xenproject.org Thu Jun 01 16:28:00 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 16:28:00 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542671.846795 (Exim 4.92) (envelope-from ) id 1q4l9R-0008Ls-D0; Thu, 01 Jun 2023 16:27:49 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542671.846795; Thu, 01 Jun 2023 16:27:49 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4l9R-0008Ll-AB; Thu, 01 Jun 2023 16:27:49 +0000 Received: by outflank-mailman (input) for mailman id 542671; Thu, 01 Jun 2023 16:27:48 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4l9Q-0008Lf-Or for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 16:27:48 +0000 Received: from mga02.intel.com (mga02.intel.com [134.134.136.20]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 3cfaf302-0099-11ee-b231-6b7b168915f2; Thu, 01 Jun 2023 18:27:47 +0200 (CEST) Received: from orsmga003.jf.intel.com ([10.7.209.27]) by orsmga101.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 01 Jun 2023 09:27:44 -0700 Received: from smile.fi.intel.com ([10.237.72.54]) by orsmga003.jf.intel.com with ESMTP; 01 Jun 2023 09:27:34 -0700 Received: from andy by smile.fi.intel.com with local (Exim 4.96) (envelope-from ) id 1q4l98-000SZF-0S; Thu, 01 Jun 2023 19:27:30 +0300 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 3cfaf302-0099-11ee-b231-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1685636867; x=1717172867; h=date:from:to:cc:subject:message-id:references: mime-version:in-reply-to; bh=Re3XUbJYE5wz7BKtwG+m2aCGFJz7ak2dDNPkBnP/kmg=; b=Vhg9aNMirc2ghSlR9tRGN/UnIGqJYm0CjLxYuRR+OMiS4t98RAqgbdA7 zV+SagJcNjP3867v7FzUgVl6GEfpI8IrLBN4NPoEvZjeOMTPpEOGubz3H CmSeJ7vcTmEhtnwf33taHDLEaiffOtUkzoZbT7tegeABRf6vJxUeNM29k DcPl6cFchEj8VdgbzkPTA6wsM2bgX49aVUxTA+mh3gJul4RiN7wNQF3GH fbM3HlTTv7G5jp5yEDp547VkiAmgtyqN2J6heUdO7WAbj5dbVloVTdiZD cGDX3Pgpv5OZIQayTtdMrf2z9U9G6cf133b/Wpr3XHK4TpJoepWGd2jEj g==; X-IronPort-AV: E=McAfee;i="6600,9927,10728"; a="345169928" X-IronPort-AV: E=Sophos;i="6.00,210,1681196400"; d="scan'208";a="345169928" X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10728"; a="657859553" X-IronPort-AV: E=Sophos;i="6.00,210,1681196400"; d="scan'208";a="657859553" Date: Thu, 1 Jun 2023 19:27:29 +0300 From: Andy Shevchenko To: Jonas Gorski Cc: Bjorn Helgaas , Krzysztof =?utf-8?Q?Wilczy=C5=84ski?= , Rich Felker , linux-sh@vger.kernel.org, linux-pci@vger.kernel.org, Dominik Brodowski , linux-kernel@vger.kernel.org, =?iso-8859-1?Q?Micka=EBl_Sala=FCn?= , Andrew Lunn , sparclinux@vger.kernel.org, Stefano Stabellini , Yoshinori Sato , Gregory Clement , "Rafael J. Wysocki" , Russell King , linux-acpi@vger.kernel.org, Miguel Ojeda , xen-devel@lists.xenproject.org, Matt Turner , Anatolij Gustschin , Sebastian Hesselbarth , Arnd Bergmann , Niklas Schnelle , Richard Henderson , Nicholas Piggin , Ivan Kokshaysky , John Paul Adrian Glaubitz , Bjorn Helgaas , Mika Westerberg , linux-arm-kernel@lists.infradead.org, Juergen Gross , Thomas Bogendoerfer , Philippe =?iso-8859-1?Q?Mathieu-Daud=E9?= , linuxppc-dev@lists.ozlabs.org, Randy Dunlap , linux-mips@vger.kernel.org, Oleksandr Tyshchenko , linux-alpha@vger.kernel.org, Pali =?iso-8859-1?Q?Roh=E1r?= , "David S. Miller" , "Maciej W. Rozycki" Subject: Re: [PATCH v8 0/7] Add pci_dev_for_each_resource() helper and update users Message-ID: References: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: Organization: Intel Finland Oy - BIC 0357606-4 - Westendinkatu 7, 02160 Espoo On Thu, Jun 01, 2023 at 07:25:46PM +0300, Andy Shevchenko wrote: > On Wed, May 31, 2023 at 08:48:35PM +0200, Jonas Gorski wrote: > > On Tue, 30 May 2023 at 23:34, Bjorn Helgaas wrote: > > > On Fri, May 12, 2023 at 02:48:51PM -0500, Bjorn Helgaas wrote: ... > > > Where are we at? Are we going to ignore this because some Coverity > > > reports are false positives? > > > > Looking at the code I understand where coverity is coming from: > > > > #define __pci_dev_for_each_res0(dev, res, ...) \ > > for (unsigned int __b = 0; \ > > res = pci_resource_n(dev, __b), __b < PCI_NUM_RESOURCES; \ > > __b++) > > > > res will be assigned before __b is checked for being less than > > PCI_NUM_RESOURCES, making it point to behind the array at the end of > > the last loop iteration. > > Which is fine and you stumbled over the same mistake I made, that's why the > documentation has been added to describe why the heck this macro is written > the way it's written. > > Coverity sucks. > > > Rewriting the test expression as > > > > __b < PCI_NUM_RESOURCES && (res = pci_resource_n(dev, __b)); > > > > should avoid the (coverity) warning by making use of lazy evaluation. > > Obviously NAK. > > > It probably makes the code slightly less performant as res will now be > > checked for being not NULL (which will always be true), but I doubt it > > will be significant (or in any hot paths). Oh my god, I mistakenly read this as bus macro, sorry for my rant, it's simply wrong. -- With Best Regards, Andy Shevchenko From xen-devel-bounces@lists.xenproject.org Thu Jun 01 16:36:28 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 16:36:28 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542676.846804 (Exim 4.92) (envelope-from ) id 1q4lHa-0001SH-71; Thu, 01 Jun 2023 16:36:14 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542676.846804; Thu, 01 Jun 2023 16:36:14 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4lHa-0001SA-4O; Thu, 01 Jun 2023 16:36:14 +0000 Received: by outflank-mailman (input) for mailman id 542676; Thu, 01 Jun 2023 16:36:13 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4lHZ-0001S4-8m for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 16:36:13 +0000 Received: from mail-wr1-x430.google.com (mail-wr1-x430.google.com [2a00:1450:4864:20::430]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 689a8c59-009a-11ee-8611-37d641c3527e; Thu, 01 Jun 2023 18:36:07 +0200 (CEST) Received: by mail-wr1-x430.google.com with SMTP id ffacd0b85a97d-30af159b433so1073055f8f.3 for ; Thu, 01 Jun 2023 09:36:07 -0700 (PDT) Received: from EMEAENGAAD19049. (default-46-102-197-194.interdsl.co.uk. [46.102.197.194]) by smtp.gmail.com with ESMTPSA id y10-20020a7bcd8a000000b003f4ecf1fcbcsm2868172wmj.22.2023.06.01.09.36.06 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 01 Jun 2023 09:36:06 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 689a8c59-009a-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cloud.com; s=cloud; t=1685637367; x=1688229367; h=in-reply-to:content-disposition:mime-version:references:subject:cc :to:from:date:message-id:from:to:cc:subject:date:message-id:reply-to; bh=iah28SeMegZsgxJEkqt971vHwWhkPQuGbC3bMiLoC08=; b=QHC3z1cTvIDg9F0IQ3QAjvRh9SP4BmflicjeJOt2LW0b9jLd7MEgnrfJAL0Kvd5kOB x7dro4coPWopa8tqTNcxp0+g7uxb7OhO1+Cl5tEWXhywWlHoXFKDBBAUlOurDvq0VFK8 eCgCl0ix90eMTuhw00tqhHP4IUIQfREaWNyFY= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1685637367; x=1688229367; h=in-reply-to:content-disposition:mime-version:references:subject:cc :to:from:date:message-id:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=iah28SeMegZsgxJEkqt971vHwWhkPQuGbC3bMiLoC08=; b=YclaFh9jpmP4fcIpFgRs+jmTf33POO3OAqgpb+eqy10RLgK1HgWzhc89AHQfrqikDf XdZvyAjDl1Ez1oP2MO4Pyhgdv9JZ9JusXZaa0O/eFiL3D5XCYDkm8wFKvXmfbo29qckZ ElROziQ9Yv78b6BA8QOpSl/6DNIqua4+80zckva96bmln4cIiHVXltTGZpZcVa9zP7mG Rq1l4kBI7PKb9ykujRPN8N7j7DmUGOwX4iZifNsuNyi2yxf+IcV+qBYxrAoP4fKSzKZ9 Ctu70Amvc+ZJxhb2ZDou6WKGkGlAEPS7xvcz+UYlCEoFOcFyzKwthQ5pn4mFGgpimlz/ 7x/w== X-Gm-Message-State: AC+VfDzyvikBNhFdrd/DGexzbu9qIknCRhJ+oAiDt46ZHb0LiI2AFQn6 BlEA1UMBQQqv68/OxHn7Y2oILw== X-Google-Smtp-Source: ACHHUZ5SYigm6NWnzPQ9/AjR+UddaUI8I7RMfHNI5LP/ClRMqwV9fOv72f7/iVfSmsF39ecU7/yvDg== X-Received: by 2002:a5d:4651:0:b0:306:35d2:c33a with SMTP id j17-20020a5d4651000000b0030635d2c33amr2453301wrs.50.1685637367177; Thu, 01 Jun 2023 09:36:07 -0700 (PDT) Message-ID: <6478c8f6.7b0a0220.12968.ab68@mx.google.com> X-Google-Original-Message-ID: Date: Thu, 1 Jun 2023 17:36:05 +0100 From: Alejandro Vallejo To: Andrew Cooper Cc: Xen-devel , Jan Beulich , Roger Pau =?iso-8859-1?Q?Monn=E9?= , Wei Liu Subject: Re: [PATCH] x86/ucode: Exit early from early_update_cache() if loading not available References: <20230601143813.1553740-1-andrew.cooper3@citrix.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20230601143813.1553740-1-andrew.cooper3@citrix.com> On Thu, Jun 01, 2023 at 03:38:13PM +0100, Andrew Cooper wrote: > If for any reason early_microcode_init() concludes that no microcode loading > is available, early_update_cache() will fall over a NULL function pointer: > > (XEN) Xen call trace: > (XEN) [] R show_code+0x91/0x18f > (XEN) [] F show_execution_state+0x2d/0x1fc > (XEN) [] F fatal_trap+0x87/0x19a > (XEN) [] F init_idt_traps+0/0x1bd > (XEN) [] F early_page_fault+0x8f/0x94 > (XEN) [<0000000000000000>] F 0000000000000000 > (XEN) [] F arch/x86/cpu/microcode/core.c#early_update_cache+0x11/0x74 > (XEN) [] F microcode_init_cache+0x5a/0x5c > (XEN) [] F __start_xen+0x1e11/0x27ee > (XEN) [] F __high_start+0x94/0xa0 > > which is actually parse_blob()'s use of ucode_ops.collect_cpu_info. > > Skip trying to cache anything if microcode loading is unavailable. > [...] > --- > xen/arch/x86/cpu/microcode/core.c | 3 +++ > 1 file changed, 3 insertions(+) > > diff --git a/xen/arch/x86/cpu/microcode/core.c b/xen/arch/x86/cpu/microcode/core.c > index 5a5c0a8c70db..9029301107d6 100644 > --- a/xen/arch/x86/cpu/microcode/core.c > +++ b/xen/arch/x86/cpu/microcode/core.c > @@ -789,6 +789,9 @@ int __init microcode_init_cache(unsigned long *module_map, > { > int rc = 0; > > + if ( !ucode_ops.apply_microcode ) > + return -ENODEV; > + > if ( ucode_scan ) > /* Need to rescan the modules because they might have been relocated */ > microcode_scan_module(module_map, mbi); Ugh. These bugs are forever. IMO, it would be helpful to have a default set of stubs (ucode_ops_default?) that unconditionally return -ENODEV when called. At least the whole system won't crash under our feet if we forgot an "if ( !ucode_ops.foo ) return -1". It's still imperfect but there's far less room for errors. Alejandro From xen-devel-bounces@lists.xenproject.org Thu Jun 01 16:56:55 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 16:56:55 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542680.846814 (Exim 4.92) (envelope-from ) id 1q4lbM-0003uC-Q5; Thu, 01 Jun 2023 16:56:40 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542680.846814; Thu, 01 Jun 2023 16:56:40 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4lbM-0003u5-NJ; Thu, 01 Jun 2023 16:56:40 +0000 Received: by outflank-mailman (input) for mailman id 542680; Thu, 01 Jun 2023 16:56:39 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4lbL-0003tv-Ce; Thu, 01 Jun 2023 16:56:39 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4lbL-0007EZ-4T; Thu, 01 Jun 2023 16:56:39 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4lbK-0001Ln-UR; Thu, 01 Jun 2023 16:56:38 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q4lbK-0005p6-U2; Thu, 01 Jun 2023 16:56:38 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=F/NrATzWyvOKdg2a9+cuqpug4w/rw8QC19H8bOO4HEM=; b=YxNF2hq6KTmGODfMCadvInyHIs 0ApKvzg2xLn38/enw2HJLF+6xw8iG7PAOVVzTtiemidreHT9MJ6lBCC4XHkO4xv5HxLFhXn+PNG+w ix2WthGmAe92SFXw4jYB/0978C6vp8qqK1Vb2p6ghJIMdoEbbWIPSeZmwIVWtLVepy44=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [ovmf test] 181081: all pass - PUSHED X-Osstest-Versions-This: ovmf=15f83fa36442eaa272300b31699b3b82ce7e07a9 X-Osstest-Versions-That: ovmf=1df6658bcbc4cade29a8763808a9804e5d449046 From: osstest service owner Date: Thu, 01 Jun 2023 16:56:38 +0000 flight 181081 ovmf real [real] http://logs.test-lab.xenproject.org/osstest/logs/181081/ Perfect :-) All tests in this flight passed as required version targeted for testing: ovmf 15f83fa36442eaa272300b31699b3b82ce7e07a9 baseline version: ovmf 1df6658bcbc4cade29a8763808a9804e5d449046 Last test of basis 181076 2023-06-01 11:12:17 Z 0 days Testing same since 181081 2023-06-01 13:15:20 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Ard Biesheuvel Gerd Hoffmann jobs: build-amd64-xsm pass build-i386-xsm pass build-amd64 pass build-i386 pass build-amd64-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-i386-pvops pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Pushing revision : To xenbits.xen.org:/home/xen/git/osstest/ovmf.git 1df6658bcb..15f83fa364 15f83fa36442eaa272300b31699b3b82ce7e07a9 -> xen-tested-master From xen-devel-bounces@lists.xenproject.org Thu Jun 01 16:57:54 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 16:57:54 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542687.846828 (Exim 4.92) (envelope-from ) id 1q4lcO-0004R4-4B; Thu, 01 Jun 2023 16:57:44 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542687.846828; Thu, 01 Jun 2023 16:57:44 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4lcO-0004Qx-1R; Thu, 01 Jun 2023 16:57:44 +0000 Received: by outflank-mailman (input) for mailman id 542687; Thu, 01 Jun 2023 16:57:42 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4lcM-0004MB-3B for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 16:57:42 +0000 Received: from mga18.intel.com (mga18.intel.com [134.134.136.126]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 68d51787-009d-11ee-8611-37d641c3527e; Thu, 01 Jun 2023 18:57:38 +0200 (CEST) Received: from orsmga008.jf.intel.com ([10.7.209.65]) by orsmga106.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 01 Jun 2023 09:57:31 -0700 Received: from jdboswor-mobl.amr.corp.intel.com (HELO [10.212.227.45]) ([10.212.227.45]) by orsmga008-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 01 Jun 2023 09:57:30 -0700 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 68d51787-009d-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1685638658; x=1717174658; h=message-id:date:mime-version:subject:to:cc:references: from:in-reply-to:content-transfer-encoding; bh=fwWF/Gy9Rnn01MNcEZTbrQhC277/QH+VMbqZkWIZ3UU=; b=R1/e2XqFM6uEcMfPqeHGHsb0j1wd5NpOP2dlDG+5r9semtvLC15DMP0g jWndZo/rpdtbuY10A6b+SrcUngqk6DTGhXX22iHWofIyZNyKWM3nFoSNl nOwtzN5V6qSx2+1RTzqB42rVgqVq+cSnZNzUDvGx56b5xRGZffBM5w5CB bv/yIZiRKzjPKkXDNgo3ht/IYCb9m/vKgZLxn9xnzkFszucDYCAW/4XKh aPYHGygam/VOcPq+9tOIn8IJ/dOOFIV3tbpBPNsNK6QJC2+NsdorTUmJs MfArhaqap+O/MqXMmWaUJPFKOuG6Oe4TSH0z6Y2MIEiIaE4StsFDrYckr Q==; X-IronPort-AV: E=McAfee;i="6600,9927,10728"; a="340237758" X-IronPort-AV: E=Sophos;i="6.00,210,1681196400"; d="scan'208";a="340237758" X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10728"; a="737181505" X-IronPort-AV: E=Sophos;i="6.00,210,1681196400"; d="scan'208";a="737181505" Message-ID: <5aae0317-72cf-fc3c-6ce3-7e1fe1d6b699@intel.com> Date: Thu, 1 Jun 2023 09:57:30 -0700 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH v2] iscsi_ibft: Fix finding the iBFT under Xen Dom 0 Content-Language: en-US To: Ross Lagerwall , linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org Cc: Jan Beulich , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , x86@kernel.org, Juergen Gross , Boris Ostrovsky , Peter Jones , Konrad Rzeszutek Wilk References: <20230530150106.2703849-1-ross.lagerwall@citrix.com> From: Dave Hansen In-Reply-To: <20230530150106.2703849-1-ross.lagerwall@citrix.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit On 5/30/23 08:01, Ross Lagerwall wrote: > Since firmware doesn't indicate the iBFT in the E820, add a reserved > region so that it gets identity mapped when running as Dom 0 so that it > is possible to search for it. Move the call to reserve_ibft_region() > later so that it is called after the Xen identity mapping adjustments > are applied. > > Finally, instead of using isa_bus_to_virt() which doesn't do the right > thing under Xen, use early_memremap() like the dmi_scan code does. This is connecting Xen, iSCSI and x86. Some background here would be *really* nice for dummies like me that deal heavily in only one of those three. One or two sentences like this: Firmware can provide an iSCSI-specific table called the iBFT which helps the OS boot from iSCSI devices. can go a long way for dummies like me. As could some background about why this: ... add a reserved region so that it gets identity mapped when running as Dom 0 so that it is possible to search for it. These are all English words, but off the top of my head, I have no idea why reserved regions get identity mapped when running as Dom 0 or why that makes it possible to search. The addresses and size here: > +#ifdef CONFIG_ISCSI_IBFT_FIND > + /* Reserve 0.5 MiB to 1 MiB region so iBFT can be found */ > + xen_e820_table.entries[xen_e820_table.nr_entries].addr = 0x80000; > + xen_e820_table.entries[xen_e820_table.nr_entries].size = 0x80000; > + xen_e820_table.entries[xen_e820_table.nr_entries].type = E820_TYPE_RESERVED; > + xen_e820_table.nr_entries++; > +#endif also appear to be conjured out of thin air. As does the move of: > + reserve_ibft_region(); I'm sure I can go figure this all out with some research. But, I'd really appreciate some extra effort from you in this changelog to save me the time. I bet you can explain it a lot more efficiently than I can go figure it out. From xen-devel-bounces@lists.xenproject.org Thu Jun 01 17:09:09 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 17:09:09 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542692.846841 (Exim 4.92) (envelope-from ) id 1q4lnL-00065H-7f; Thu, 01 Jun 2023 17:09:03 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542692.846841; Thu, 01 Jun 2023 17:09:03 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4lnL-00065A-3h; Thu, 01 Jun 2023 17:09:03 +0000 Received: by outflank-mailman (input) for mailman id 542692; Thu, 01 Jun 2023 17:09:01 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4lnJ-000652-Pa for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 17:09:01 +0000 Received: from mga03.intel.com (mga03.intel.com [134.134.136.65]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id fdb38d9e-009e-11ee-b231-6b7b168915f2; Thu, 01 Jun 2023 19:08:58 +0200 (CEST) Received: from orsmga003.jf.intel.com ([10.7.209.27]) by orsmga103.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 01 Jun 2023 10:08:41 -0700 Received: from jdboswor-mobl.amr.corp.intel.com (HELO [10.212.227.45]) ([10.212.227.45]) by orsmga003-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 01 Jun 2023 10:08:41 -0700 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: fdb38d9e-009e-11ee-b231-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1685639338; x=1717175338; h=message-id:date:mime-version:subject:to:cc:references: from:in-reply-to:content-transfer-encoding; bh=TR5fGtwRtA3BECP2nBOSsf+c8VaVhidSV/NOHGkaUvg=; b=nwoVa4bwlJkW5VmsCHL1+w5KHdAN94uv7Bd33Vc13QJtA820Ac6hEk7b Cwj1sXdqpF0D9XgDxTKb2KQBVKQrzMmeXVmPzrzIlmJp3S0WDjZpcUscV dlVyxCth3hIxIBrO2MLfumsUs6rHmWL0l+AlyAYg0GgSE7BL4hcYxGsYh L2f+9nE0g9xbqC8/qg28xCU9xXHh2tExPZ2y2GQ0unu84GWnAzkhXUZ9Q x4SRu9zqXMzb4VNpDQpHsttaYpg4zK6b9e3AaxBaY0AO6sHlbFRHhZ57W Yfl485QuIP+gXNbvdCbcBPgc0PVJCbvXBdR3uvK25SjjfLPdsbtJ9dA9F Q==; X-IronPort-AV: E=McAfee;i="6600,9927,10728"; a="358919585" X-IronPort-AV: E=Sophos;i="6.00,210,1681196400"; d="scan'208";a="358919585" X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10728"; a="657873151" X-IronPort-AV: E=Sophos;i="6.00,210,1681196400"; d="scan'208";a="657873151" Message-ID: Date: Thu, 1 Jun 2023 10:08:41 -0700 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH v2] iscsi_ibft: Fix finding the iBFT under Xen Dom 0 Content-Language: en-US To: Ross Lagerwall , linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org Cc: Jan Beulich , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , x86@kernel.org, Juergen Gross , Boris Ostrovsky , Peter Jones , Konrad Rzeszutek Wilk References: <20230530150106.2703849-1-ross.lagerwall@citrix.com> <5aae0317-72cf-fc3c-6ce3-7e1fe1d6b699@intel.com> From: Dave Hansen In-Reply-To: <5aae0317-72cf-fc3c-6ce3-7e1fe1d6b699@intel.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit On 6/1/23 09:57, Dave Hansen wrote: > On 5/30/23 08:01, Ross Lagerwall wrote: >> Since firmware doesn't indicate the iBFT in the E820, add a reserved >> region so that it gets identity mapped when running as Dom 0 so that it >> is possible to search for it. Move the call to reserve_ibft_region() >> later so that it is called after the Xen identity mapping adjustments >> are applied. Oh, and one more thing: What is the end user visible effect of this problem and of your solution? Do Xen Dom 0 systems fail to find their boot iSCSI volume and refuse to boot? I take it after this patch that they can boot again. From xen-devel-bounces@lists.xenproject.org Thu Jun 01 17:43:59 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 17:43:59 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542696.846850 (Exim 4.92) (envelope-from ) id 1q4mKn-0001xS-Re; Thu, 01 Jun 2023 17:43:37 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542696.846850; Thu, 01 Jun 2023 17:43:37 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4mKn-0001xL-Oc; Thu, 01 Jun 2023 17:43:37 +0000 Received: by outflank-mailman (input) for mailman id 542696; Thu, 01 Jun 2023 17:43:36 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4mKl-0001xF-UX for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 17:43:35 +0000 Received: from mail-wr1-x430.google.com (mail-wr1-x430.google.com [2a00:1450:4864:20::430]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id d235581e-00a3-11ee-8611-37d641c3527e; Thu, 01 Jun 2023 19:43:30 +0200 (CEST) Received: by mail-wr1-x430.google.com with SMTP id ffacd0b85a97d-30aeee7c8a0so942767f8f.1 for ; Thu, 01 Jun 2023 10:43:30 -0700 (PDT) Received: from localhost.localdomain (default-46-102-197-194.interdsl.co.uk. [46.102.197.194]) by smtp.gmail.com with ESMTPSA id h12-20020a5d6e0c000000b002ca864b807csm11149310wrz.0.2023.06.01.10.43.28 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 01 Jun 2023 10:43:29 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: d235581e-00a3-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cloud.com; s=cloud; t=1685641409; x=1688233409; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=UWNQNSoIT/qncl/3Jg92282yi87AP2Clk3QevAJ37uU=; b=f96PSfWE9d8KbrTJBBBwjtTP0OJpyDZDAumXu6ietkLhhZQQJzbN3JpNmmYs14g4xU orPAZdpykNQExiFj4XkRaDi1bcY5hfhBc/zTJnzuKcHI6i0DtYr9ywJKTXk7N77/yd9A QFuthETfSeL1TAySku7piEuel9033LHfqif+Q= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1685641409; x=1688233409; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=UWNQNSoIT/qncl/3Jg92282yi87AP2Clk3QevAJ37uU=; b=J2EDOwUg42cl7PUH6CrgWcIcOzOTZqYY1ZY3kRX5HB3BAW2WgUC9Rh4jRUj5PC6ooa Vqugh/8Pf6XyLNG2a9HjhhpW2/id1W7j1RYXfJ+wzbfIYR2SMUd73SubsFjC8o/Tu3fu +aFb28Zr0zxKQqSAs1GGVgvGh5M9hkfXxEoLwty/9v191vGRymSoTb7FOvigkHV4DDci k6ZImqacYNwTD+ojI7RbefYVP7r7NAjck27fF/Lgn/wSRzXrF/Incrx1x7NKLtbg59dD OVeE5JkCaObUHpRY2KyWK2L48jnWXJEw77DjhYRiIZrbKzHbNBQxN4T508apV89q9hrQ OcVA== X-Gm-Message-State: AC+VfDy8C/229K3nMeM2So+2SMpAI0AKSul6Wn3rBxIvm413i+vE7YXn wODERFdcVKnwoaPrvkmhAZyk16CoMjEhMr7yNLM= X-Google-Smtp-Source: ACHHUZ7BBhLORWD4m+5oN9xiYbRt74+jV/FmGuRpjvo2BeFWX21fOG1hSjL27Xw3r7zAAFwOJTdHNA== X-Received: by 2002:adf:fa42:0:b0:30a:d944:b765 with SMTP id y2-20020adffa42000000b0030ad944b765mr2436047wrr.15.1685641409659; Thu, 01 Jun 2023 10:43:29 -0700 (PDT) From: Alejandro Vallejo To: Xen-devel Cc: Alejandro Vallejo , Jan Beulich , Andrew Cooper , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Wei Liu Subject: [PATCH] x86: Add Kconfig option to require NX bit support Date: Thu, 1 Jun 2023 18:43:27 +0100 Message-Id: <20230601174327.11401-1-alejandro.vallejo@cloud.com> X-Mailer: git-send-email 2.34.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit This allows replacing many instances of runtime checks with folded constants. The patch asserts support for the NX bit in PTEs at boot time and if so short-circuits cpu_has_nx to 1. This has several knock-on effects that improve codegen: * _PAGE_NX matches _PAGE_NX_BIT, optimising the macro to a constant. * Many PAGE_HYPERVISOR_X are also folded into constants * A few if ( cpu_has_nx ) statements are optimised out We save 2.5KiB off the text section and remove the runtime dependency for applying NX, which hardens our security posture. The config option defaults to OFF for compatibility with previous behaviour. Signed-off-by: Alejandro Vallejo --- xen/arch/x86/Kconfig | 10 ++++++++++ xen/arch/x86/boot/head.S | 19 ++++++++++++++++--- xen/arch/x86/boot/trampoline.S | 3 ++- xen/arch/x86/efi/efi-boot.h | 9 +++++++++ xen/arch/x86/include/asm/cpufeature.h | 3 ++- 5 files changed, 39 insertions(+), 5 deletions(-) diff --git a/xen/arch/x86/Kconfig b/xen/arch/x86/Kconfig index 406445a358..0983915372 100644 --- a/xen/arch/x86/Kconfig +++ b/xen/arch/x86/Kconfig @@ -307,6 +307,16 @@ config MEM_SHARING bool "Xen memory sharing support (UNSUPPORTED)" if UNSUPPORTED depends on HVM +config REQUIRE_NX_BIT + def_bool n + prompt "Require NX bit support" + ---help--- + Makes Xen require NX bit support on page table entries. This + allows the resulting code to have folded constants where + otherwise branches are required, yielding a smaller binary as a + result. Requiring NX trades compatibility with older CPUs for + improvements in speed and code size. + endmenu source "common/Kconfig" diff --git a/xen/arch/x86/boot/head.S b/xen/arch/x86/boot/head.S index 09bebf8635..8414266281 100644 --- a/xen/arch/x86/boot/head.S +++ b/xen/arch/x86/boot/head.S @@ -123,6 +123,7 @@ multiboot2_header: .Lbad_ldr_nih: .asciz "ERR: EFI ImageHandle is not provided by bootloader!" .Lbad_efi_msg: .asciz "ERR: EFI IA-32 platforms are not supported!" .Lbag_alg_msg: .asciz "ERR: Xen must be loaded at a 2Mb boundary!" +.Lno_nx_bit_msg: .asciz "ERR: Not an NX-bit capable CPU!" .section .init.data, "aw", @progbits .align 4 @@ -151,6 +152,11 @@ not_multiboot: .Lnot_aligned: add $sym_offs(.Lbag_alg_msg),%esi # Error message jmp .Lget_vtb +#if IS_ENABLED(CONFIG_REQUIRE_NX_BIT) +no_nx_bit: + add $sym_offs(.Lno_nx_bit_msg),%esi # Error message + jmp .Lget_vtb +#endif .Lmb2_no_st: /* * Here we are on EFI platform. vga_text_buffer was zapped earlier @@ -647,11 +653,18 @@ trampoline_setup: cpuid 1: mov %edx, CPUINFO_FEATURE_OFFSET(X86_FEATURE_LM) + sym_esi(boot_cpu_data) - /* Check for NX. Adjust EFER setting if available. */ + /* + * Check for NX: + * - If Xen was compiled requiring it simply assert it's + * supported. The trampoline already has the right constant. + * - Otherwise, update the trampoline EFER mask accordingly. + */ bt $cpufeat_bit(X86_FEATURE_NX), %edx - jnc 1f + jnc no_nx_bit +#if !IS_ENABLED(CONFIG_REQUIRE_NX_BIT) orb $EFER_NXE >> 8, 1 + sym_esi(trampoline_efer) -1: +no_nx_bit: +#endif /* Check for availability of long mode. */ bt $cpufeat_bit(X86_FEATURE_LM),%edx diff --git a/xen/arch/x86/boot/trampoline.S b/xen/arch/x86/boot/trampoline.S index c6005fa33d..b964031085 100644 --- a/xen/arch/x86/boot/trampoline.S +++ b/xen/arch/x86/boot/trampoline.S @@ -147,7 +147,8 @@ GLOBAL(trampoline_misc_enable_off) /* EFER OR-mask for boot paths. SCE conditional on PV support, NX added when available. */ GLOBAL(trampoline_efer) - .long EFER_LME | (EFER_SCE * IS_ENABLED(CONFIG_PV)) + .long EFER_LME | (EFER_SCE * IS_ENABLED(CONFIG_PV)) | \ + (EFER_NXE * IS_ENABLED(CONFIG_REQUIRE_NX_BIT)) GLOBAL(trampoline_xen_phys_start) .long 0 diff --git a/xen/arch/x86/efi/efi-boot.h b/xen/arch/x86/efi/efi-boot.h index c94e53d139..641d6996c9 100644 --- a/xen/arch/x86/efi/efi-boot.h +++ b/xen/arch/x86/efi/efi-boot.h @@ -751,6 +751,15 @@ static void __init efi_arch_cpu(void) { caps[FEATURESET_e1d] = cpuid_edx(0x80000001); + /* + * This check purposefully doesn't use cpu_has_nx because + * cpu_has_nx bypasses the boot_cpu_data read if Xen was compiled + * with CONFIG_REQUIRE_NX_BIT + */ + if ( IS_ENABLED(CONFIG_REQUIRE_NX_BIT) && + !boot_cpu_has(X86_FEATURE_NX) ) + blexit(L"This Xen build requires NX bit support"); + if ( cpu_has_nx ) trampoline_efer |= EFER_NXE; } diff --git a/xen/arch/x86/include/asm/cpufeature.h b/xen/arch/x86/include/asm/cpufeature.h index ace31e3b1f..166f480bbc 100644 --- a/xen/arch/x86/include/asm/cpufeature.h +++ b/xen/arch/x86/include/asm/cpufeature.h @@ -91,7 +91,8 @@ static inline bool boot_cpu_has(unsigned int feat) #define cpu_has_hypervisor boot_cpu_has(X86_FEATURE_HYPERVISOR) /* CPUID level 0x80000001.edx */ -#define cpu_has_nx boot_cpu_has(X86_FEATURE_NX) +#define cpu_has_nx (IS_ENABLED(CONFIG_REQUIRE_NX_BIT) || \ + boot_cpu_has(X86_FEATURE_NX)) #define cpu_has_page1gb boot_cpu_has(X86_FEATURE_PAGE1GB) #define cpu_has_rdtscp boot_cpu_has(X86_FEATURE_RDTSCP) #define cpu_has_3dnow_ext boot_cpu_has(X86_FEATURE_3DNOWEXT) -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 01 18:06:30 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 18:06:30 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542702.846864 (Exim 4.92) (envelope-from ) id 1q4mgg-0004bo-RN; Thu, 01 Jun 2023 18:06:14 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542702.846864; Thu, 01 Jun 2023 18:06:14 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4mgg-0004bh-O1; Thu, 01 Jun 2023 18:06:14 +0000 Received: by outflank-mailman (input) for mailman id 542702; Thu, 01 Jun 2023 18:06:14 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4mgf-0004bb-O0 for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 18:06:14 +0000 Received: from esa1.hc3370-68.iphmx.com (esa1.hc3370-68.iphmx.com [216.71.145.142]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id f902f50e-00a6-11ee-b231-6b7b168915f2; Thu, 01 Jun 2023 20:06:05 +0200 (CEST) Received: from mail-dm6nam11lp2177.outbound.protection.outlook.com (HELO NAM11-DM6-obe.outbound.protection.outlook.com) ([104.47.57.177]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 01 Jun 2023 14:06:01 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by BY5PR03MB5169.namprd03.prod.outlook.com (2603:10b6:a03:219::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.24; Thu, 1 Jun 2023 18:05:59 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::10bb:98bc:e36d:36ab]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::10bb:98bc:e36d:36ab%3]) with mapi id 15.20.6455.020; Thu, 1 Jun 2023 18:05:59 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: f902f50e-00a6-11ee-b231-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1685642765; h=message-id:date:subject:to:cc:references:from: in-reply-to:content-transfer-encoding:mime-version; bh=0zFMCXucLysOYa0FF0t1njk1seLv5p9jq/CettK7p34=; b=Dt+MWR4fzE/TjBBGycy6rHQWZF+jV/W2U1Gda4BgobDTYATIL7Pr8Cfs HCMWXod0O/lHK2zsi+egqiUAknh5YFwadgP8gyRRkio7acAt8PInnvDPW syeGPjEmd/5iyvbfOQ277bwQMxQBOVEpXjdZg8TcMhRMnK10Ze0unkK06 Q=; X-IronPort-RemoteIP: 104.47.57.177 X-IronPort-MID: 111673884 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:00/djK1yPK0rR4PlEvbD5dNxkn2cJEfYwER7XKvMYLTBsI5bpzcCx jAXD2rUOviPYjaketgga4m29R8BvcXVx9IxTAttpC1hF35El5HIVI+TRqvS04F+DeWYFR46s J9OAjXkBJppJpMJjk71atANlVEliefTAOK6ULWeUsxIbVcMYD87jh5+kPIOjIdtgNyoayuAo tq3qMDEULOf82cc3lk8teTb8HuDgNyo4GlD5gJmPKgQ1LPjvyJ94Kw3dPnZw0TQGuG4LsbiL 87fwbew+H/u/htFIrtJRZ6iLyXm6paLVeS/oiI+t5qK23CulQRrukoPD9IOaF8/ttm8t4sZJ OOhF3CHYVxB0qXkwIzxWvTDes10FfUuFLTveRBTvSEPpqFvnrSFL/hGVSkL0YMkFulfOjoR6 sMoNW00RDODgu6H34niQ7Jtv5F2RCXrFNt3VnBI6xj8VK9jbbWdBqLA6JlfwSs6gd1IEbDGf c0FZDFzbRPGJRpSJlMQD5F4l+Ct7pX9W2QA9BTJ+uxqvC6Kk1MZPLvFabI5fvSjQ8lPk1nej WXB52njWTkRNcCFyCrD+XWp7gPKtXqiAdxNT+3oqpaGhnWy+S8JLDhIdGK0rN6o0228Qt92F GAtr39GQa8asRbDosPGdxGxvnPCvhcaQNdWO+w89AyJjKHT5m6xAmkCUy4Ea9E8ssIybSIl2 0XPnN7zAzFr9rqPRhq15rqS6D+/JyURBWsDfjMfCxsI5cH5p4M+hQ6JScxseIa3hNDoHTD7w xiRsTMzwb4UiKYjy6q/7XjDgjSxuoLOSA8loAnaNkqg7wV2Y6a/aoCo4ESd5vFFRK6TVnGIu HkJnZjY4O1mJZ2EiiHLQOwLB7yvz/KENiDMx19pA5QlsT+q/haLbdAOyDJzPkFkNoADYzCBS E3cowRK/7dIIWCnK6RwZuqZAcMwzLOmEs/5TPfKddlfSp9rfQSD8WdlYkv493jvl04hioklN JubeNrqBnEfYYxkyzysTus10rIxwC06g2TJSvjGIw+P1LOfYDuZTOkDOV7XN+Qhtvrb/0PS7 spVMNaMx1NHSuribyLL8IkVa1cXMXw8ApOwoMtSHgKeHjdb9KgaI6e56dscl0ZNxcy5Ss+gE qmBZ3Jl IronPort-HdrOrdr: A9a23:HmAbsKA8Bb4N6pflHemH55DYdb4zR+YMi2TDtnoBLCC9F/bz+v xG88526faZslkssQgb6Km90cq7MBHhHPxOgbX5VI3KNDUO3lHHEGgI1/qA/9SPIUzDH9lmpM NdmvhFY+EY1WIK9voSOjPIderIHeP3l5xAWd2ut0uFkzsaEZ1d0w== X-Talos-CUID: 9a23:jn5zD26q/h9WlVyypNsszxVLBf8VbyDk5lTQJkOJFl0wQeaUcArF X-Talos-MUID: 9a23:3jdj+QuOExBAK4GFys2npQ4hLuNNvYWXB00qgMwludCJHBNcAmLI X-IronPort-AV: E=Sophos;i="6.00,210,1681185600"; d="scan'208";a="111673884" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=ELI7ns5NGdVDGPhvN2kGrigykKbza1J0ZRAjyrpY7zIb9+f2JlEv4r53fM49yMIaJUmgckraAh+8sBJI9gzZGmD+kNfO3qgfQX/Tk9nURIH0pO5rx08CRupIWGrXLJ2Vg7e7u0Hypj72S/l9ju1ykgAxT7K5YVIfubERFxNzan8CgCh3xJY+w70oSVtJxr6Lbz1rtgR8+l88d6hg4HdV64L12rpc/Pct0n2KFzNYv+NdNOPK6ZxYyKf7+Xx8GK0oQey3RhXaV9ml2d1JBFHUjDof7QtdlqD5LOBWHQCT/CydqpQSufUcxz6490k89JhwLoIi8y30fDRfoyQ7dQ0P5Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=Pi7uD2ND6XW8mRc8inwQz8CFapHmqDbZDow354ZJhg0=; b=ItIKHk6CJ/hxpZ6IfcyPHI2/vbz6YCM2wAg1fzhThebRMV6N8RpJZGP9/KtXMwfD1gjQqul5zvIX5r1/wiaofDk1WLL94g+IJWnGyWHP47tHXndpzbhkbyAEZR8jpcNRjYU962d1yxUl5D/C8EWWc8bbV7etAkyN19EpWGkZd7wdKTwS7EoXI4dZAn4WPjCbt3QOl970T+5hSwWtSpiERyX5SuJZOOfvwBZ+lTorYlXvU9b3E5feXdBf3CvRAwtqkNxXrMCVNRLsRNf9gKbzCaUfZEZ/7wQ4ucHTcVGCofW3TgAv1bD1F96JNyOgoPuBzTpMgV0VCnbmFDp0p8xiMg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Pi7uD2ND6XW8mRc8inwQz8CFapHmqDbZDow354ZJhg0=; b=lW4w+HBVR8KA9yql4FbzuSBKXLER6GzhH7xPRSrQdzN9U8/NugH3X/vCNihB7v8bncGLCruer7haqwXzdLhlHl1I3fSMGMh+SVxbt8a3FKiVa7JavVxsaBrGewbdQI+1qp2qVuWPKU/2zJBHxcPPELTHBMQpjM6qKW+CUrO82xw= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: <5d1de7cf-495d-18bb-d4c2-227d9182a0e9@citrix.com> Date: Thu, 1 Jun 2023 19:05:50 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH v2] iscsi_ibft: Fix finding the iBFT under Xen Dom 0 Content-Language: en-GB To: Dave Hansen , Ross Lagerwall , linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org Cc: Jan Beulich , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , x86@kernel.org, Juergen Gross , Boris Ostrovsky , Peter Jones , Konrad Rzeszutek Wilk References: <20230530150106.2703849-1-ross.lagerwall@citrix.com> <5aae0317-72cf-fc3c-6ce3-7e1fe1d6b699@intel.com> From: Andrew Cooper In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO4P123CA0136.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:193::15) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|BY5PR03MB5169:EE_ X-MS-Office365-Filtering-Correlation-Id: aaa203f6-712f-4f34-b66b-08db62cada11 X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: wv5Ia9cOKCrDYsIderCc2PsH9N+IAFgpVtrAwo27OrTwXGI/lr/OPpaIHly4wU85tYsTngup7tuKbhL0XtVGFenrNIr64O2Rw8hrM4bAQvm0EsS0MQ5DkRH1Li6Jl3MHHttQqBYsJApKScm0rIJhx3vG+fduyWyvR8AskT7FlnOati2glIEY/9wUcJSZtYlnt7h8MtwwWbkL6qGltCE03/Ux3T1orV152FLJOJ4e7zFPIhiEuVdRiwDx9NeqW27alf6N08C3mkC9+iW7zDu1JCoO95RYIMkYCMgZOmmLjfK1PRqdEr4SdZ/dwDqrobAmN74udRZSChAV3k7pM5Fsr4VyyNL7VU7+M1MT4liTwc/bHJwg4cygZFoavK5xDrfoMmnv29Q3xA24seZ7hfQzVSQ5ZnmiNmTEVc3pCy/FGCsKaX8eurs0Msz7uGJ1kaTZ5pvNW7ESWLXzpQaAQ4TXNIzfwTFwZ4q9ZRxWL6yI7hF9h44LswT91c1qmVIH7aMkDvFk6k5sj9mCCGr+5VnV6joy3TgowZxWTyIbxEHcqeQFQ/LW7/AYiqN+EhJYP8kaUKfLPlMptmih70aYsDIL9W3pPu/bM7reg6nCE0lcZoB+qrco4VUJip5ixiSnhJmkFSDOP1K568jwbrFzsCriDg== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(376002)(366004)(396003)(136003)(346002)(451199021)(36756003)(2906002)(31696002)(86362001)(7416002)(5660300002)(31686004)(83380400001)(6666004)(6486002)(186003)(6506007)(26005)(6512007)(53546011)(82960400001)(478600001)(110136005)(54906003)(66476007)(66946007)(66556008)(41300700001)(4326008)(2616005)(38100700002)(316002)(8936002)(8676002)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?TER4Wkk0WUsxN21CRlJvayt3dHZHQnJvdkVlM2RyUnNQeTlMWDVHOHFXUExl?= =?utf-8?B?V05JRnRnTUx6ajQ4TFd0a2NzcWhBTkVxQW1oa1JlbW9iZWU3c0ozVGhsOStZ?= =?utf-8?B?WmdMRUdVVjhydnd2UHF3UkkrS0tTL1NwMFh4eUxncitWUkRMR1hNNThEWWU2?= =?utf-8?B?aVkyZFpab1RyNUY0bTE0eEFVZUhOTXFWVktZZER5N1RLRTRMdmlGMVBoMGZ6?= =?utf-8?B?YUJsSXJ1WWEyWnpNRmRmVGZFTnp6QkoxdENKRk11L1JFbzkvZTlnN2UxamlY?= =?utf-8?B?STJKb0JMcXdXQnNzYlRTUzhXTGdJcTNYTDdtWE1OOVRMdkEydnBuTE9nb2Zx?= =?utf-8?B?Q2UrMDdITWlvWUpRcW5OTFJyYVZXTFoxRmRWZFN2RXhEblE5dXUwUVF4eW56?= =?utf-8?B?MWZ1RExRL0NpbXZNSFp6bVBFeGhsbDVRc250dXZqM3E0K0p4RHFDUHQ0THBW?= =?utf-8?B?enNYczRtQW9kVitOaFpsUjVwRXlRUUtVNmJ3WjB3K0RFdXliYWhmUDJxYWY4?= =?utf-8?B?Y1NqakpncGlndHhsT1RwWmVxY3FMZi9RZDRHTUpkZ0E4dm9hTTh4dVJYMkxx?= =?utf-8?B?dFl2emFQVElzNmJrMkIvMldxTWZqcFVOSEVLejNqL252QXN3ZzVFeTRMdnlV?= =?utf-8?B?a1pDN1Bydy9ZVzg3b1ZpUGdjaVVUZEZIZW9KcFRUVWg4M2YyTHh6TkFwRWxO?= =?utf-8?B?YVhCTlVoaWlvTnZyUjYzMEhlM2liR2VwWmRLQjBac3VLUTdaWGRYakJqSHZR?= =?utf-8?B?QnVjR2tiSE1wZnExWTByek9lMkdldGMxVitkTGd2TEsrT2xIcDNwdG4raVdE?= =?utf-8?B?c1BZNXdxZ1ZXOUk0b3FhNGV0WnBqWWV5Z01GdGNMNVIxWFdNN3dBeStFbVda?= =?utf-8?B?ZUtkZ1VycGVLTU5uRGdXc3JWV2hSYW1hV1ZpMUFqRW1KUG50eTc1YWRoSVJO?= =?utf-8?B?aDIxS3RWckU1alpJRUhPTlp6Tkc3L1c5dnIzK1ExZVdobFlubThKK2hTanhE?= =?utf-8?B?bTYzaXZxU2Y3Yk12ZldBNDZ2aWlTblF4aUNxZXBSaXVib01WZlM5THBFNXQz?= =?utf-8?B?ZzNidXRRa0pJRUYyK3BhSTJEMjA3aU9KT1gzSjFKRStUdlRGdTdZVUFqSlph?= =?utf-8?B?NkxkbUxNODlUbzZNOUVheGxJOUhHRWt4M3JWUStPN1ZnOVYvMTd0VFdjdERZ?= =?utf-8?B?dHZkeFM5cThMaXR3SStsckF6QS9FTU9tNmZLRFNkc2hTek96cEtjUzZ6UmZo?= =?utf-8?B?VFQxNFk4dXNHdnBoczhNbFp1VDIwVlZBTFkweGVBRWw4K0FzTllJckZGQVVJ?= =?utf-8?B?bVh2aUNUWGw5ZCtRK2xLVlllZzdFbm55SU1OQW5GSzl4ZEpDYW5zVmxTdWVD?= =?utf-8?B?SVpGK0s0eENhcEJ6R1FvVS9mRnFrMUdZMVd4YmpVMDJGdFBWcERjQUYxOUpU?= =?utf-8?B?SDI3aHZ4QlRMcHhqWm1JaWorbUd5d05DZndDbzJJZjFUR0sweUZCNk9pUGZz?= =?utf-8?B?Z1BCbmp0UnpQT3IwR0UweUlLd29ocEJMSFk2T3hsOHp4cTczRFI4azdBWjdv?= =?utf-8?B?L3I2UDBqdEIyY2FVR25FeHFsSEwvbVFBK056TE00RG5iQnBZV1B2dDZoUjZR?= =?utf-8?B?VytRMGZTeGRoeXdTUGtXWHZKME1NUWRYMEQ2Zkttcy8wb3VEUTlLK2d0VWlx?= =?utf-8?B?RG4yNnp0akRnMkQ2TTN4NFJZa2Q4LzRPeXdmM3hOdENNTUJQODhLRFR0SXJi?= =?utf-8?B?UzF0S1dYbUFtMldxdXBncUFKSWQ1eWFVdkN2MXliWlhFSExHZE1kSWdpLzVs?= =?utf-8?B?bEdmOERFOXV3ZjE2RUQ4ZWxhRTRaZllnZ1VXejZIdmpaL3Bmd05UMzJkMTBl?= =?utf-8?B?amVVK29oeDNybitZOFpLbWFaSTdmSUdtVFQzSzdkVVN5aWhvWWlHcnIxZmlv?= =?utf-8?B?SUs3RUhKS2MrQlpEaktHOXBDTHplbjdvM2ZRcVZWa2RrTzRMS0Z1ZXkyOVVU?= =?utf-8?B?bmRsVy9GaGcyRTFzR3hWcDF1RXpKc0d0czVYQlU1ZEJqUC9QbUdUSVdSSTdk?= =?utf-8?B?YUtYT21leFJxbzN5c3pTVVNSeFNROTRlNm9MV3B1NmJzSzRvSnQveG9CNXVI?= =?utf-8?B?aWVDOXozcWE4aW1BUTFicllXdTlGeXNiY1lwMUFiL2Y3cGdvMndyN20vWmt0?= =?utf-8?B?T2c9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: =?utf-8?B?bUdkeU5OQmZLRE42Y0o0MU50d0FUR0V5QkhhU3NTVmZhcEhVbHBXdmNxVG9q?= =?utf-8?B?T1NRQTVNM1hPbCtVendkT3l0UmdWRGJONnorL0JSc09sa1MrWW5kaDJBSmVv?= =?utf-8?B?WkRXQVJzQkZOTk1OZy8vc3V1VVZzSjhiU3ljbkJOUjJFb2R4NHpyRUc5a0J6?= =?utf-8?B?YmZseFhzV1hRK2w2T1lEN05mSzVodTg5QTlzdkJYV2NnZTBESGd6ZURxdXE5?= =?utf-8?B?bGMrdUlTZkF3VXppRXNacitzYTdCbVpwcTNsT3ZWbHhUY21HZWMzRHFteUh2?= =?utf-8?B?YzQ1Z1NRdHJROThqazZiME5iSVBYd2kyZ1Vjc1ZRRldHSWVkSHJCTWtiTXJk?= =?utf-8?B?WUg2MGI5SGdvbEg4L2NIdzhXNm9pam95b1pYcEk5NEoyaVFTOWZ4WFNrZnd3?= =?utf-8?B?M05IbnZwNXV6dnovUGY3Z2x6dEtkVTloc2lPRG5mMWZsTi9kOU9QR0cyZVRK?= =?utf-8?B?K1BFSERveDM4a050eFFpMkhWRWIvMkU0QmxFVnBSM3JUclU3cnlYZXFYWjNP?= =?utf-8?B?amhqb0N6MXBudmRjT0FUaXB1M1pvdCtoNTJib0xrSWZPVktORjZmbUlsekg1?= =?utf-8?B?dTFxY2JxMUk4RW1HcWtjSS9JK1B3WENVTVlac3o1aTIyVkF0SjFhSXBzNzV1?= =?utf-8?B?U3pncXk1R21XMVJpbnRldHFTSmpkdURxa2xCZGc5R2FvaTlWdnVEWUtmdjNZ?= =?utf-8?B?QjlXcnVVci8xdTFQWnUydjdjaG5XeU5TWllndTBIbkh2THhOZDdPWXZWY2JT?= =?utf-8?B?NFBaZmE4ZXZhaTBhbHBDM1hBa3ZBaVBINWx6WFU0UDBkUmI2bVdZVWlid1h2?= =?utf-8?B?OENuZWs0MUduU1R5bVR5Y2c0eTZ0RnhxRDluWm84S1FSTkw2cGlzWTMwY2VC?= =?utf-8?B?RTRRYml1UUxSNkViQ2V5RnZQUVZWeXZRVm9DSXNQZEVWaDNQb0QvajFwc3dv?= =?utf-8?B?L0pmYkRvRkVRRnUxMWZYd3M2ZjF5ek4xL1JaUDAxV2JyRHNGVW56SGtlbSt0?= =?utf-8?B?ZGhMejlpS2J0enNZd0h1UWE4Tmh3SmM2QXhjeng1L205WndNMXJWaisrTGVS?= =?utf-8?B?cGptOStHNlg2RmNKUkZidWUvOG01Vjg1TVZGdW95U2hNMDkyUFN4RVdqRWJj?= =?utf-8?B?blZpYTFNSnVVTEF4RmFhTmcwU1pIcGEvUUN1RHorTVJIc2htSG9VNXFWOVNS?= =?utf-8?B?ZmV6ZjA3b1diY0NiVjB4R1duRkpPaVNhcjQ3aHlTVWNUM2V5TSttRmZ3SUdX?= =?utf-8?B?NHNRL0ZSeXBadkVJb2E5Ujk3OHIxMzVWRFlBTEZJNjN5MHNBZVRvc2tRYWZj?= =?utf-8?B?OHZhQVk0SWpBbFYxcTJBM0xXU3d3elhOcitRaHNPT1lidnBFbnJVUXNFZDlr?= =?utf-8?B?Q2ZPVk9qMEZic3dlUFpSMkNjK1dYdmprSE1RTjJMbTMrRTVkWk9MUCtkNno3?= =?utf-8?Q?4C5OG9Wh?= X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: aaa203f6-712f-4f34-b66b-08db62cada11 X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Jun 2023 18:05:58.8852 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: ZH33+koBq382yyUXjXguNwGkW0A1bHcUaWLZRke5lMKWxIanF+vMWKAKFi93h1RuNBnSIUWb72eHWaE3tohjGHTYiSaSDHfez0ieYraPZn0= X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY5PR03MB5169 On 01/06/2023 6:08 pm, Dave Hansen wrote: > On 6/1/23 09:57, Dave Hansen wrote: >> On 5/30/23 08:01, Ross Lagerwall wrote: >>> Since firmware doesn't indicate the iBFT in the E820, add a reserved >>> region so that it gets identity mapped when running as Dom 0 so that it >>> is possible to search for it. Move the call to reserve_ibft_region() >>> later so that it is called after the Xen identity mapping adjustments >>> are applied. > Oh, and one more thing: > > What is the end user visible effect of this problem and of your solution? > > Do Xen Dom 0 systems fail to find their boot iSCSI volume and refuse to > boot? I take it after this patch that they can boot again. > Yeah, this isn't as clear as it could be.  In short... The iBFT suffers from the same problem as legacy ACPI RDSP.  You've got to search lowmem for a magic marker to find it. Xen dom0 is just a VM with root-like perms.  Anything it wants an identity map of, it has to ask for.  And because dom0 is commonly sharing ownership of hardware, it requests identity mappings for everything reserved in the E820 table. The consequence of not having this patch is that if you try iSCSI boot under Xen, dom0 can't find it's filesystem, because it can't get at the iSCSI initiator. ~Andrew From xen-devel-bounces@lists.xenproject.org Thu Jun 01 18:25:22 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 18:25:22 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542708.846880 (Exim 4.92) (envelope-from ) id 1q4mz7-00078H-CQ; Thu, 01 Jun 2023 18:25:17 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542708.846880; Thu, 01 Jun 2023 18:25:17 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4mz7-00078A-9J; Thu, 01 Jun 2023 18:25:17 +0000 Received: by outflank-mailman (input) for mailman id 542708; Thu, 01 Jun 2023 18:25:16 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4mz5-000780-VT; Thu, 01 Jun 2023 18:25:15 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4mz5-0000pi-T4; Thu, 01 Jun 2023 18:25:15 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4mz5-0005tr-I1; Thu, 01 Jun 2023 18:25:15 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q4mz5-0004rq-Ha; Thu, 01 Jun 2023 18:25:15 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=bQqcD8Bh5cLWmy0kMtnZw9IZxEGu4cCgtY5QwTH4GjA=; b=JdO5GRnzcapz3eLTErf29Z8MN8 tms3S9t0axAl3Nr2WpdQhHWt7ZvfwQnc39uRuXJSIwNyJnyAfLTWUYk2DXzluMzwzGgqtJeVVtkI5 SfeGTiAAqm7b+iz94NctJh4/l3AKfV8CuQ/i2ag7DG8+qUIWGvDYS4wNJp86z0efvKoY=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [qemu-mainline test] 181068: regressions - FAIL X-Osstest-Failures: qemu-mainline:test-amd64-i386-libvirt-pair:xen-install/dst_host:fail:regression qemu-mainline:test-amd64-amd64-libvirt-pair:leak-check/check/src_host:fail:regression qemu-mainline:test-amd64-amd64-libvirt-pair:leak-check/check/dst_host:fail:regression qemu-mainline:test-amd64-i386-libvirt:leak-check/check:fail:regression qemu-mainline:test-amd64-amd64-libvirt-xsm:leak-check/check:fail:regression qemu-mainline:build-arm64-xsm:xen-build:fail:regression qemu-mainline:build-arm64:xen-build:fail:regression qemu-mainline:test-amd64-amd64-libvirt:leak-check/check:fail:regression qemu-mainline:test-amd64-i386-libvirt-xsm:leak-check/check:fail:regression qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:leak-check/check:fail:regression qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:leak-check/check:fail:regression qemu-mainline:test-amd64-amd64-libvirt-vhd:leak-check/check:fail:regression qemu-mainline:test-amd64-i386-xl-vhd:leak-check/check:fail:regression qemu-mainline:test-amd64-i386-libvirt-raw:leak-check/check:fail:regression qemu-mainline:test-amd64-amd64-xl-qcow2:leak-check/check:fail:regression qemu-mainline:test-armhf-armhf-libvirt:leak-check/check:fail:regression qemu-mainline:test-armhf-armhf-libvirt-qcow2:leak-check/check:fail:regression qemu-mainline:test-armhf-armhf-libvirt-raw:leak-check/check:fail:regression qemu-mainline:test-armhf-armhf-xl-vhd:leak-check/check:fail:regression qemu-mainline:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:build-arm64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking qemu-mainline:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking qemu-mainline:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking qemu-mainline:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking qemu-mainline:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking qemu-mainline:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking qemu-mainline:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking qemu-mainline:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking qemu-mainline:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking qemu-mainline:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: qemuu=c6a5fc2ac76c5ab709896ee1b0edd33685a67ed1 X-Osstest-Versions-That: qemuu=6972ef1440a9d685482d78672620a7482f2bd09a From: osstest service owner Date: Thu, 01 Jun 2023 18:25:15 +0000 flight 181068 qemu-mainline real [real] http://logs.test-lab.xenproject.org/osstest/logs/181068/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: test-amd64-i386-libvirt-pair 11 xen-install/dst_host fail REGR. vs. 180691 test-amd64-amd64-libvirt-pair 30 leak-check/check/src_host fail REGR. vs. 180691 test-amd64-amd64-libvirt-pair 31 leak-check/check/dst_host fail REGR. vs. 180691 test-amd64-i386-libvirt 23 leak-check/check fail REGR. vs. 180691 test-amd64-amd64-libvirt-xsm 23 leak-check/check fail REGR. vs. 180691 build-arm64-xsm 6 xen-build fail REGR. vs. 180691 build-arm64 6 xen-build fail REGR. vs. 180691 test-amd64-amd64-libvirt 23 leak-check/check fail REGR. vs. 180691 test-amd64-i386-libvirt-xsm 23 leak-check/check fail REGR. vs. 180691 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 21 leak-check/check fail REGR. vs. 180691 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 21 leak-check/check fail REGR. vs. 180691 test-amd64-amd64-libvirt-vhd 22 leak-check/check fail REGR. vs. 180691 test-amd64-i386-xl-vhd 24 leak-check/check fail REGR. vs. 180691 test-amd64-i386-libvirt-raw 22 leak-check/check fail REGR. vs. 180691 test-amd64-amd64-xl-qcow2 24 leak-check/check fail REGR. vs. 180691 test-armhf-armhf-libvirt 21 leak-check/check fail REGR. vs. 180691 test-armhf-armhf-libvirt-qcow2 20 leak-check/check fail REGR. vs. 180691 test-armhf-armhf-libvirt-raw 20 leak-check/check fail REGR. vs. 180691 test-armhf-armhf-xl-vhd 20 leak-check/check fail REGR. vs. 180691 Tests which did not succeed, but are not blocking: test-arm64-arm64-libvirt-raw 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-xsm 1 build-check(1) blocked n/a test-arm64-arm64-xl 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit1 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit2 1 build-check(1) blocked n/a test-arm64-arm64-xl-thunderx 1 build-check(1) blocked n/a test-arm64-arm64-xl-vhd 1 build-check(1) blocked n/a test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a build-arm64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 180691 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 180691 test-armhf-armhf-libvirt 16 saverestore-support-check fail like 180691 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail like 180691 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop fail like 180691 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail like 180691 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 180691 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop fail like 180691 test-amd64-i386-xl-pvshim 14 guest-start fail never pass test-amd64-i386-libvirt 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-i386-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-credit2 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit2 16 saverestore-support-check fail never pass test-amd64-i386-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-libvirt 15 migrate-support-check fail never pass test-armhf-armhf-xl 15 migrate-support-check fail never pass test-armhf-armhf-xl 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 15 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 16 saverestore-support-check fail never pass test-armhf-armhf-xl-multivcpu 15 migrate-support-check fail never pass test-armhf-armhf-xl-multivcpu 16 saverestore-support-check fail never pass test-armhf-armhf-xl-arndale 15 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 15 saverestore-support-check fail never pass version targeted for testing: qemuu c6a5fc2ac76c5ab709896ee1b0edd33685a67ed1 baseline version: qemuu 6972ef1440a9d685482d78672620a7482f2bd09a Last test of basis 180691 2023-05-17 10:45:22 Z 15 days Failing since 180699 2023-05-18 07:21:24 Z 14 days 53 attempts Testing same since 181068 2023-06-01 04:43:20 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Afonso Bordado Akihiko Odaki Akihiro Suda Alex Bennée Alex Williamson Alexander Bulekov Alexander Graf Alistair Francis Ani Sinha Ani Sinha Anton Johansson BALATON Zoltan Bernhard Beschow Bin Meng Brian Cain Brice Goglin Camilla Conte Cindy Lu Clément Chigot Cornelia Huck Cédric Le Goater Cédric Le Goater Daniel Henrique Barboza Daniel P. Berrangé Daniil Kovalev David Hildenbrand Emanuele Giuseppe Esposito Enze Li Eric Auger Eric Blake Eric DeVolder Erico Nunes Eugenio Pérez Fabiano Rosas Fan Ni Fiona Ebner Francisco Iglesias Gavin Shan Gregory Price Gregory Price Hao Zeng Hawkins Jiawei Igor Mammedov Ira Weiny Jason Wang Jean-Philippe Brucker John Snow Jonathan Cameron Juan Quintela Kevin Wolf Laurent Vivier Lei Yang Leonardo Bras Maksim Davydov Marc-André Lureau Marcin Juszkiewicz Marco Liebel Mark Cave-Ayland Markus Armbruster Matheus Tavares Bernardino Mauro Matteo Cascella Michael S. Tsirkin Michael Tokarev Mostafa Saleh Nicholas Piggin Nicolas Saenz Julienne Palmer Dabbelt Paolo Bonzini Peter Maydell Peter Xu Philippe Mathieu-Daudé Raghu H Rene Engel Richard Henderson Richard Purdie Ricky Zhou Ryan Wendland Sebastian Ott Sergio Lopez Sid Manning Song Gao Stefan Hajnoczi Steve Sistare Taylor Simpson Thomas Huth Thomas Weißschuh timothee.cocault@gmail.com Timothée Cocault Tommy Wu Viktor Prutyanov Vitaly Cheptsov Vivek Kasireddy Vladimir Sementsov-Ogievskiy Volker Rümelin Xinyu Li Zeng Hao Zhenyu Zhang Zhenzhong Duan jobs: build-amd64-xsm pass build-arm64-xsm fail build-i386-xsm pass build-amd64 pass build-arm64 fail build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt blocked build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl blocked test-armhf-armhf-xl pass test-amd64-i386-xl pass test-amd64-coresched-i386-xl pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm fail test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm fail test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-i386-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm fail test-arm64-arm64-libvirt-xsm blocked test-amd64-i386-libvirt-xsm fail test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm blocked test-amd64-i386-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-i386-qemuu-rhel6hvm-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-freebsd10-amd64 pass test-amd64-amd64-qemuu-freebsd11-amd64 pass test-amd64-amd64-qemuu-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-i386-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-amd64-i386-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 blocked test-armhf-armhf-xl-credit1 pass test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 blocked test-armhf-armhf-xl-credit2 pass test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-i386-freebsd10-i386 pass test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-i386-qemuu-rhel6hvm-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt fail test-armhf-armhf-libvirt fail test-amd64-i386-libvirt fail test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu pass test-amd64-amd64-pair pass test-amd64-i386-pair pass test-amd64-amd64-libvirt-pair fail test-amd64-i386-libvirt-pair fail test-amd64-amd64-xl-pvshim pass test-amd64-i386-xl-pvshim fail test-amd64-amd64-pygrub pass test-armhf-armhf-libvirt-qcow2 fail test-amd64-amd64-xl-qcow2 fail test-arm64-arm64-libvirt-raw blocked test-armhf-armhf-libvirt-raw fail test-amd64-i386-libvirt-raw fail test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds pass test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-amd64-i386-xl-shadow pass test-arm64-arm64-xl-thunderx blocked test-amd64-amd64-libvirt-vhd fail test-arm64-arm64-xl-vhd blocked test-armhf-armhf-xl-vhd fail test-amd64-i386-xl-vhd fail ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 10970 lines long.) From xen-devel-bounces@lists.xenproject.org Thu Jun 01 19:33:24 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 19:33:24 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542717.846896 (Exim 4.92) (envelope-from ) id 1q4o2r-0005yo-BG; Thu, 01 Jun 2023 19:33:13 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542717.846896; Thu, 01 Jun 2023 19:33:13 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4o2r-0005yh-7i; Thu, 01 Jun 2023 19:33:13 +0000 Received: by outflank-mailman (input) for mailman id 542717; Thu, 01 Jun 2023 19:33:12 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4o2q-0005yU-77; Thu, 01 Jun 2023 19:33:12 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4o2q-0002Fv-5P; Thu, 01 Jun 2023 19:33:12 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4o2p-0000hA-Rp; Thu, 01 Jun 2023 19:33:11 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q4o2p-0004uM-RI; Thu, 01 Jun 2023 19:33:11 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=tfG1Y8xtFq2lhOB5OnnY4JOJeNqKG0PH/PG5NDxcRF4=; b=ANyUVS0bAAR9fIdDvgRKQvAon4 96rQItUd4Yd740qJhtoyZCHySZJX5bpF5DeJtjGZLkUvDmatF2ZqNKykBmKjXoYqfKcOwf/zOwgRy ycOBLxMqdk56aOFd+DLGn9VjSyw7PDOBSlZJekov8mZ8V2V+uoCTDmMI7rvZeZad09J4=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [ovmf test] 181087: all pass - PUSHED X-Osstest-Versions-This: ovmf=ded1d5414b5a0161de8fcf234b7fb200fb59fb2c X-Osstest-Versions-That: ovmf=15f83fa36442eaa272300b31699b3b82ce7e07a9 From: osstest service owner Date: Thu, 01 Jun 2023 19:33:11 +0000 flight 181087 ovmf real [real] http://logs.test-lab.xenproject.org/osstest/logs/181087/ Perfect :-) All tests in this flight passed as required version targeted for testing: ovmf ded1d5414b5a0161de8fcf234b7fb200fb59fb2c baseline version: ovmf 15f83fa36442eaa272300b31699b3b82ce7e07a9 Last test of basis 181081 2023-06-01 13:15:20 Z 0 days Testing same since 181087 2023-06-01 17:10:49 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Neil Jones Sami Mujawar jobs: build-amd64-xsm pass build-i386-xsm pass build-amd64 pass build-i386 pass build-amd64-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-i386-pvops pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Pushing revision : To xenbits.xen.org:/home/xen/git/osstest/ovmf.git 15f83fa364..ded1d5414b ded1d5414b5a0161de8fcf234b7fb200fb59fb2c -> xen-tested-master From xen-devel-bounces@lists.xenproject.org Thu Jun 01 19:52:02 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 19:52:02 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542723.846906 (Exim 4.92) (envelope-from ) id 1q4oKt-0008Pr-Rl; Thu, 01 Jun 2023 19:51:51 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542723.846906; Thu, 01 Jun 2023 19:51:51 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4oKt-0008Pk-P6; Thu, 01 Jun 2023 19:51:51 +0000 Received: by outflank-mailman (input) for mailman id 542723; Thu, 01 Jun 2023 19:51:50 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4oKs-0008Pe-8R for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 19:51:50 +0000 Received: from mail-lj1-x22b.google.com (mail-lj1-x22b.google.com [2a00:1450:4864:20::22b]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id befbe5d9-00b5-11ee-b231-6b7b168915f2; Thu, 01 Jun 2023 21:51:48 +0200 (CEST) Received: by mail-lj1-x22b.google.com with SMTP id 38308e7fff4ca-2af20198f20so18067351fa.0 for ; Thu, 01 Jun 2023 12:51:48 -0700 (PDT) Received: from [192.168.202.197] ([94.75.70.14]) by smtp.gmail.com with ESMTPSA id f4-20020a2e9184000000b002adbe01cd69sm3891398ljg.9.2023.06.01.12.51.47 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 01 Jun 2023 12:51:47 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: befbe5d9-00b5-11ee-b231-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1685649108; x=1688241108; h=mime-version:user-agent:content-transfer-encoding:references :in-reply-to:date:cc:to:from:subject:message-id:from:to:cc:subject :date:message-id:reply-to; bh=vD9QOCW+QqdE5WxU03QUm5j26ZrZ70ogCEnRpo6RCHs=; b=d7hkl7LvWYJgQ8emAn7HAL/gBGhdlcDF7Z7vN7MNGYr9jq8XxH7Yf8BMfXGW9Gc29T bLvqKArrgsr2rxZ4F/QYRJFEKpsFj8gndeNiosMGSpcaV8p3HzN3zPSlJn8X/jls/0Zk nDrFdORh8Cztz294ZsXcemwgGVlP+kH5P6lxaMcRTT+e9xrVZ+bGWLsTpPwAkDCclc37 m9xxi4Uhv00o99S02Emqd9xbLyMtf9jBjk7VoUR0pU8bz0tLnTswBmRUipQFE/B2WTmU TpEEGYubkueM/m9lO3tqmYLbjsGN4ARgxOsuyj53Ptv8M4gJY2oxDFZrihZ/4xpVq9pl jPSw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1685649108; x=1688241108; h=mime-version:user-agent:content-transfer-encoding:references :in-reply-to:date:cc:to:from:subject:message-id:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=vD9QOCW+QqdE5WxU03QUm5j26ZrZ70ogCEnRpo6RCHs=; b=F//rpJJT8e0kTa/9DWw7tz/wZJdK2T3aS08SJOyzyA2VsRZ6oDAqO6RoNycJX3Uoew imQKS6Kc+VZ6u138W5v8CJ7JhDCKfICs9NleFvyW6gMLsPiJTWXxcShysgZtSQbRYGGE giCq2KVoyh4U3dHt09Jy5LhZ4/bCVwZFrjL8M027fSIo/EYULAncfMhk0bfqWYxZD7O7 lB4BQEN4iXJ+M9fYVIHY9tvbgaljFRMs/pi9wctzPTRu4DxDsn37YEFudhRJJtaa8lhf xtygMxTIERzPrh9tD1YVltxck2N7WdxizZyi3Ukj3/EeYxXnD712mk4cO/Et473LYiwZ PuFA== X-Gm-Message-State: AC+VfDw2k8K6B58yxclnn1juXmonOzZyiK1que7FZVB92OeGURFvj4bC pTqt0U3gO/0HdFQd8EqnloA= X-Google-Smtp-Source: ACHHUZ4CMB42TKWJCFKCGKzc5OjSm3l6S7MNugJ3bVMf+vlcxaJxylYoQsOJ2EUDKQdXUmwO+u95RA== X-Received: by 2002:a2e:b0e8:0:b0:2ac:8402:2eca with SMTP id h8-20020a2eb0e8000000b002ac84022ecamr265967ljl.28.1685649108068; Thu, 01 Jun 2023 12:51:48 -0700 (PDT) Message-ID: <320af8556c4c93ac9c4840ea30c071a9d4f5d206.camel@gmail.com> Subject: Re: [PATCH v6 5/6] xen/riscv: introduce an implementation of macros from From: Oleksii To: Jan Beulich Cc: Julien Grall , Andrew Cooper , Stefano Stabellini , Bob Eshleman , Alistair Francis , Connor Davis , xen-devel@lists.xenproject.org Date: Thu, 01 Jun 2023 22:51:46 +0300 In-Reply-To: References: <92580a6f-e97a-c4a9-435c-bd95a84d4306@suse.com> <4073258b3a3c6a0cb19843f02941d1e62e6f882d.camel@gmail.com> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable User-Agent: Evolution 3.48.2 (3.48.2-1.fc38) MIME-Version: 1.0 On Thu, 2023-06-01 at 09:59 +0200, Jan Beulich wrote: > On 31.05.2023 22:06, Oleksii wrote: > > On Tue, 2023-05-30 at 18:00 +0200, Jan Beulich wrote: > > > > +static uint32_t read_instr(unsigned long pc) > > > > +{ > > > > +=C2=A0=C2=A0=C2=A0 uint16_t instr16 =3D *(uint16_t *)pc; > > > > + > > > > +=C2=A0=C2=A0=C2=A0 if ( GET_INSN_LENGTH(instr16) =3D=3D 2 ) > > > > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 return (uint32_t)instr1= 6; > > > > +=C2=A0=C2=A0=C2=A0 else > > > > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 return *(uint32_t *)pc; > > > > +} > > >=20 > > > As long as this function is only used on Xen code, it's kind of > > > okay. > > > There you/we control whether code can change behind our backs. > > > But as > > > soon as you might use this on guest code, the double read is > > > going to > > > be a problem > > Will it be enough to add a comment that read_instr() should be used > > only on Xen code? Or it is needed to introduce some lock? >=20 > A comment will do for now. A lock would be problematic: It won't help > when the function is used on non-Xen code, and since you use this in > exception handling you may deadlock unless you carefully use a > recursive lock. Then I'll add a comment. >=20 > > > (I think; I wonder how hardware is supposed to deal with > > > the situation: Maybe they indeed fetch in 16-bit quantities?). > > I thought that it reads amount of bytes corresponded to i-cache > > size > > and then the pipeline tracks whether an instruction is 16=C2=A0 or 32 > > bit. >=20 > And what if an insn spans a cacheline boundary? I think it is CPU specific, but your original assumption ( about 16-bit fetching ) was probably right. In RISC-V ISA doc [1] I found the following in chapter 1.2: The base RISC-V ISA has fixed-length 32-bit instructions that must be naturally aligned on 32-bit boundaries. However, the standard RISC-V=20 encoding scheme is designed to support ISA extensions with variable- length instructions, where each instruction can be any number of 16-bit instruction parcels in length, and parcels are naturally aligned on 16- bit boundaries. The standard compressed ISA extension described in=20 Chapter 12 reduces code size by providing compressed 16-bit instructions and relaxes the alignment constraints to allow all instructions (16 bit and 32 bit) to be aligned on any 16-bit boundary to improve code density. It sounds like h/w reads 16-bit and then based on the first bits decides if it is needed to read more 16-bit parcels. [1] https://riscv.org/wp-content/uploads/2017/05/riscv-spec-v2.2.pdf From xen-devel-bounces@lists.xenproject.org Thu Jun 01 20:44:03 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 20:44:03 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542729.846921 (Exim 4.92) (envelope-from ) id 1q4p90-0005Mw-Ls; Thu, 01 Jun 2023 20:43:38 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542729.846921; Thu, 01 Jun 2023 20:43:38 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4p90-0005Mp-JE; Thu, 01 Jun 2023 20:43:38 +0000 Received: by outflank-mailman (input) for mailman id 542729; Thu, 01 Jun 2023 20:43:36 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4p8y-0005Mj-P9 for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 20:43:36 +0000 Received: from mail-yw1-x112c.google.com (mail-yw1-x112c.google.com [2607:f8b0:4864:20::112c]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id f87521dc-00bc-11ee-8611-37d641c3527e; Thu, 01 Jun 2023 22:43:32 +0200 (CEST) Received: by mail-yw1-x112c.google.com with SMTP id 00721157ae682-565ba53f434so13144557b3.3 for ; Thu, 01 Jun 2023 13:43:32 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: f87521dc-00bc-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1685652211; x=1688244211; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=F1D8lVOaAVBWbT9t2RmOD+26281abLHxtrNSt32Ap24=; b=qLgbJbj5g8WGk9vr+h5GU3VAGYoZuUQfYy+Jk03a6BWdaBQStekzq99EEhSRb/apVE r1wG5klq4xTuvlp4fzfvGwGvXsPOH5Z+EGzZ3xDm5VuokYBfnX2Z7EeXpvrNqoMOmFfA JBLO6CGLz8pEI44d71tWawLxUIyiVrcZLnzOInnX4NDx0adjPFt4WqdjoFpvwTeJeP42 YdR8VtfFc5+TjUwWFHzsShyWmg/NGqDFZTc1nDT9EKaeGOrhYp9pTMhkn6c++xEXcw0Z 7/JenW6z+3FLVb69Ur5a6g5NHDXYEBFsl6KltuWvHl5pgiI7Ar5zj9KICtB4zwOfTiPP PMcg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1685652211; x=1688244211; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=F1D8lVOaAVBWbT9t2RmOD+26281abLHxtrNSt32Ap24=; b=WOCfScc07ohUUNF8CAwVrYjyuNZs4t/au85IQuZZ9VGvuSbkMA8lYIkxpm+EOLYyai 1tbjV9l6ApXrygZEgesfZtwW1WUyDl/1pL9RZKu8r4og2fm1HqB02XA9KLLqnVnR7p9U efBhGOug1akUnfW/eClBUTc3EWCJTJ/rzrMgLCrDNv5aAh5KE1leIHvkV/SWGGHZz1rF ++sZI78TbKTF/N4qCzvjihJVLLTdK6Jsm/UOS8xfPW6PGkC7LnsWv4Sv9Oauaon1nlN2 PU7Q6/MAGLB5q30v67ce/H9CGHkuGKBI9hzUHAtmibYKeyaGq5Itekb4JIUDlfAYmEMs 4XoA== X-Gm-Message-State: AC+VfDx5qqLIdCUfEau5jNF6PDbCRIDpohEyrZjHld87DmAn8xkcAP6p 0r0pXv0QjMDFb3z4TSfSedkUmS5LbDKTIj3Seck= X-Google-Smtp-Source: ACHHUZ5DfuhGus+PqmBDfDw3I8CUwiopOPmtEZnOXp6mFa4otjE0OnORW5aklQp2qVjtyKAx2ImFFxSDC1ok71Q6xew= X-Received: by 2002:a0d:e84b:0:b0:565:f045:18c3 with SMTP id r72-20020a0de84b000000b00565f04518c3mr10614817ywe.20.1685652211220; Thu, 01 Jun 2023 13:43:31 -0700 (PDT) MIME-Version: 1.0 References: <20230531213032.25338-1-vishal.moola@gmail.com> <20230531213032.25338-4-vishal.moola@gmail.com> <20230601151900.6f184e8c@thinkpad-T15> In-Reply-To: <20230601151900.6f184e8c@thinkpad-T15> From: Vishal Moola Date: Thu, 1 Jun 2023 13:43:20 -0700 Message-ID: Subject: Re: [PATCH v3 03/34] s390: Use pt_frag_refcount for pagetables To: Gerald Schaefer Cc: Andrew Morton , Matthew Wilcox , linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, David Hildenbrand , Claudio Imbrenda , Alexander Gordeev , Vasily Gorbik , Heiko Carstens , Hugh Dickins , Christian Borntraeger Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Thu, Jun 1, 2023 at 6:19=E2=80=AFAM Gerald Schaefer wrote: > > On Wed, 31 May 2023 14:30:01 -0700 > "Vishal Moola (Oracle)" wrote: > > > s390 currently uses _refcount to identify fragmented page tables. > > The page table struct already has a member pt_frag_refcount used by > > powerpc, so have s390 use that instead of the _refcount field as well. > > This improves the safety for _refcount and the page table tracking. > > > > This also allows us to simplify the tracking since we can once again us= e > > the lower byte of pt_frag_refcount instead of the upper byte of _refcou= nt. > > This would conflict with s390 impact of pte_free_defer() work from Hugh D= ickins > https://lore.kernel.org/lkml/35e983f5-7ed3-b310-d949-9ae8b130cdab@google.= com/ > https://lore.kernel.org/lkml/6dd63b39-e71f-2e8b-7e0-83e02f3bcb39@google.c= om/ > > There he uses pt_frag_refcount, or rather pt_mm in the same union, to sav= e > the mm_struct for deferred pte_free(). > > I still need to look closer into both of your patch series, but so far it > seems that you have no hard functional requirement to switch from _refcou= nt > to pt_frag_refcount here, for s390. > > If this is correct, and you do not e.g. need this to make some other use > of _refcount, I would suggest to drop this patch. The goal of this preparation patch is to consolidate s390's usage of struct page fields so that struct ptdesc can be smaller. Its not particular= ly mandatory; leaving _refcount in ptdesc only increases the struct by 8 bytes and can always be changed later. However it is a little annoying since s390 is the only architecture that egregiously uses space throughout struct page for their page tables, rather than just the page table struct. For example, s390 gmap uses page->index which also aliases with pt_mm and pt_frag_refcount. I'm not sure if/how gmap page tables interact with s390 process page tables at all, but if it does that could potentially cause problems with Hugh's patch as well :( I can add _refcount to ptdesc if we would like, but I still prefer if s390 could be simplified instead. From xen-devel-bounces@lists.xenproject.org Thu Jun 01 21:48:44 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 21:48:44 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542746.846979 (Exim 4.92) (envelope-from ) id 1q4q9s-0003qs-Tn; Thu, 01 Jun 2023 21:48:36 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542746.846979; Thu, 01 Jun 2023 21:48:36 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4q9s-0003ql-RH; Thu, 01 Jun 2023 21:48:36 +0000 Received: by outflank-mailman (input) for mailman id 542746; Thu, 01 Jun 2023 21:48:36 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4q9r-0003qa-Oe for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 21:48:36 +0000 Received: from out3-smtp.messagingengine.com (out3-smtp.messagingengine.com [66.111.4.27]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 0c6fac26-00c6-11ee-b231-6b7b168915f2; Thu, 01 Jun 2023 23:48:33 +0200 (CEST) Received: from compute4.internal (compute4.nyi.internal [10.202.2.44]) by mailout.nyi.internal (Postfix) with ESMTP id 6CF635C019F; Thu, 1 Jun 2023 17:48:30 -0400 (EDT) Received: from mailfrontend2 ([10.202.2.163]) by compute4.internal (MEProxy); Thu, 01 Jun 2023 17:48:30 -0400 Received: by mail.messagingengine.com (Postfix) with ESMTPA; Thu, 1 Jun 2023 17:48:29 -0400 (EDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 0c6fac26-00c6-11ee-b231-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= invisiblethingslab.com; h=cc:cc:content-transfer-encoding :content-type:date:date:from:from:in-reply-to:message-id :mime-version:reply-to:sender:subject:subject:to:to; s=fm1; t= 1685656110; x=1685742510; bh=bdCjoPxZZnywq2ne1+ZsCnnZgLbVMiaq/28 6mmmutp8=; b=I0u/vVfS+aQQ+0NyvrXyNE7UrhtCpWYEUyH1yA0k/YaGnrGS1c4 01wX2m+YKT/91fE3cXoj2QWpReEjBxmHwt5e3iLj/NGc6cCtFq3rH3pg3YkB0uBn 1yOG7XVTHtywUBGOD7jcMvEfhcFn2XycCQ94zyBmXtvcbFAzjgCaYRINelnUIKry x8FM/Mb5Vusn8uNuo2jGxB4PXKixN2Phe7XX7Dv4WDgWxC+YSuPAB+1930fxc+CA UnVyPVrdlCOILz/V7KB8Wzxh36K1FArblj5uzC/CuaywBwsWuysCIdg9W5lHIY1f qbLdhltA9X6KZBNUAxp1PAFLsnHenkY2v2Q== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-transfer-encoding :content-type:date:date:feedback-id:feedback-id:from:from :in-reply-to:message-id:mime-version:reply-to:sender:subject :subject:to:to:x-me-proxy:x-me-proxy:x-me-sender:x-me-sender :x-sasl-enc; s=fm1; t=1685656110; x=1685742510; bh=bdCjoPxZZnywq 2ne1+ZsCnnZgLbVMiaq/286mmmutp8=; b=nvwzhuTV4f1CsVyy62FIihquWO3e0 KQQQjF3F4jxnPqzwepUo1AHzpLTusGT/UKSoj1LyX8P+/aO37Bpx8rJ3a9unNBQS QUKindqIqfnlk9gYOA77MYLpc3RjggpZv4FagjqKDzSvKaeDYUEdlZkeBqsdVrqX DwC3qhTc9+H0bwmwqMGne4mvbFzgcNidqo9TaXfjw4Pi/kmoAY2bpPR8jC7Czfkf yTDFOqv+QX/WkQCGZlCdt6cglPlOVqYaiOz9lQifAoj1p0ynbx8JlumKVndpucH7 IeBZR7GsMxR+Wzk8YHyGTFaZzdNlCLOp6W4ntfVY3O7kqGTEmbrdgcZXA== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvhedrfeelvddgtddvucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne cujfgurhephffvvefufffkofgggfestdekredtredttdenucfhrhhomhepffgvmhhiucfo rghrihgvucfqsggvnhhouhhruceouggvmhhisehinhhvihhsihgslhgvthhhihhnghhslh grsgdrtghomheqnecuggftrfgrthhtvghrnhepvdefgeekvdekgfffgeekhfeijedtffek hefhleehfeejueetgfelgefgtdevieelnecuvehluhhsthgvrhfuihiivgeptdenucfrrg hrrghmpehmrghilhhfrhhomhepuggvmhhisehinhhvihhsihgslhgvthhhihhnghhslhgr sgdrtghomh X-ME-Proxy: Feedback-ID: iac594737:Fastmail From: Demi Marie Obenour To: =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Jens Axboe Cc: Demi Marie Obenour , =?UTF-8?q?Marek=20Marczykowski-G=C3=B3recki?= , xen-devel@lists.xenproject.org, linux-block@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH 0/2] xen/blkback: support delete-on-close block devices Date: Thu, 1 Jun 2023 17:48:21 -0400 Message-Id: <20230601214823.1701-1-demi@invisiblethingslab.com> X-Mailer: git-send-email 2.40.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit These two patches allow userspace to provide an expected diskseq of a block device and discover when blkback has opened the device. Together, these features allow using blkback with delete-on-close block devices, such as loop devices with autoclear set. Demi Marie Obenour (2): xen-blkback: Implement diskseq checks xen-blkback: Inform userspace that device has been opened drivers/block/xen-blkback/xenbus.c | 147 ++++++++++++++++++++++++----- 1 file changed, 124 insertions(+), 23 deletions(-) -- Sincerely, Demi Marie Obenour (she/her/hers) Invisible Things Lab From xen-devel-bounces@lists.xenproject.org Thu Jun 01 21:48:44 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 21:48:44 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542747.846991 (Exim 4.92) (envelope-from ) id 1q4q9u-00045c-7a; Thu, 01 Jun 2023 21:48:38 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542747.846991; Thu, 01 Jun 2023 21:48:38 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4q9u-00045V-21; Thu, 01 Jun 2023 21:48:38 +0000 Received: by outflank-mailman (input) for mailman id 542747; Thu, 01 Jun 2023 21:48:36 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4q9s-0003qa-ED for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 21:48:36 +0000 Received: from out3-smtp.messagingengine.com (out3-smtp.messagingengine.com [66.111.4.27]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 0ec75016-00c6-11ee-b231-6b7b168915f2; Thu, 01 Jun 2023 23:48:35 +0200 (CEST) Received: from compute4.internal (compute4.nyi.internal [10.202.2.44]) by mailout.nyi.internal (Postfix) with ESMTP id 7BAED5C01A3; Thu, 1 Jun 2023 17:48:34 -0400 (EDT) Received: from mailfrontend2 ([10.202.2.163]) by compute4.internal (MEProxy); Thu, 01 Jun 2023 17:48:34 -0400 Received: by mail.messagingengine.com (Postfix) with ESMTPA; Thu, 1 Jun 2023 17:48:33 -0400 (EDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 0ec75016-00c6-11ee-b231-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= invisiblethingslab.com; h=cc:cc:content-transfer-encoding :content-type:date:date:from:from:in-reply-to:in-reply-to :message-id:mime-version:references:reply-to:sender:subject :subject:to:to; s=fm1; t=1685656114; x=1685742514; bh=/ceYfrFEiY puOEzUpc708tuWKW8Bpfbqx/MGT13F/ic=; b=pEQVwivCtKSIpnnVWyl0qP+rHf wPJW/rTpMLu3K1l6wwlXDGP9UX80lL33h6FL1YwNd5pNXE5H+EuMpkNGlny4YEKR kfonkVrJqyLi3OO8X17gUfMWD0O23JgH37DrdQAlG3VBrzKFNl0Y+s9xiwsTZADl i92YhiGkiJmSVmH8Swd/RHcEDn8MnDnNFjvzqnVpGd7SKPmABkL9pqwmUhbpVOXz y7peMFpTOPTp83A9mfL016h9FBDdk6DU3K73c4PBJngqXB5Rgg+agxPu/TiqHfdj Bz7H3HmTOvQa2g0s1XnqKwllPkGTn05zgrvWLEZJH3WxDI0W0gSAKSm9Im3g== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-transfer-encoding :content-type:date:date:feedback-id:feedback-id:from:from :in-reply-to:in-reply-to:message-id:mime-version:references :reply-to:sender:subject:subject:to:to:x-me-proxy:x-me-proxy :x-me-sender:x-me-sender:x-sasl-enc; s=fm1; t=1685656114; x= 1685742514; bh=/ceYfrFEiYpuOEzUpc708tuWKW8Bpfbqx/MGT13F/ic=; b=U xIKiEWBCHGFMG5NZxOXdwiJwb3/lK3/JpB9Vv1Hl7fPrCBeS0F99jTphL0PHZjLz xUNI2qvB2J2AM54zwE6BoW+k4Q68Ja/ssWGsCPa5BBeFs3V09KHogiQl0v4kRhln thQz6IOIKfiDXWejvhMmkwRo/bEe6bDvFu8K6QrW3klEIJq8eSjQ1y5gH+72tVUj FHckrqCwUzpDhu2p6u27WxwlxuWz26/mzG+BOBg8VvDttZUM4PCZof29kEqM+iwp /kMu+HP1AREYUaPF1JzjGxOrr6rNGELCCEMS3stLBJDq2Wa4hLyZYmUQfTlxGn0Y KUxqi3+DjKvNPHlGLCYhA== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvhedrfeelvddgtddvucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne cujfgurhephffvvefufffkofgjfhgggfestdekredtredttdenucfhrhhomhepffgvmhhi ucforghrihgvucfqsggvnhhouhhruceouggvmhhisehinhhvihhsihgslhgvthhhihhngh hslhgrsgdrtghomheqnecuggftrfgrthhtvghrnhepjeffjefggfeugeduvedvjeekgfeh gffhhfffjeetkeelueefffetfffhtdduheetnecuvehluhhsthgvrhfuihiivgeptdenuc frrghrrghmpehmrghilhhfrhhomhepuggvmhhisehinhhvihhsihgslhgvthhhihhnghhs lhgrsgdrtghomh X-ME-Proxy: Feedback-ID: iac594737:Fastmail From: Demi Marie Obenour To: =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Jens Axboe Cc: Demi Marie Obenour , =?UTF-8?q?Marek=20Marczykowski-G=C3=B3recki?= , xen-devel@lists.xenproject.org, linux-block@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH 2/2] xen-blkback: Inform userspace that device has been opened Date: Thu, 1 Jun 2023 17:48:23 -0400 Message-Id: <20230601214823.1701-3-demi@invisiblethingslab.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230601214823.1701-1-demi@invisiblethingslab.com> References: <20230601214823.1701-1-demi@invisiblethingslab.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Set "opened" to "0" before the hotplug script is called. Once the device node has been opened, set "opened" to "1". "opened" is used exclusively by userspace. It serves two purposes: 1. It tells userspace that the diskseq Xenstore entry is supported. 2. It tells userspace that it can wait for "opened" to be set to 1. Once "opened" is 1, blkback has a reference to the device, so userspace doesn't need to keep one. Together, these changes allow userspace to use block devices with delete-on-close behavior, such as loop devices with the autoclear flag set. Signed-off-by: Demi Marie Obenour --- drivers/block/xen-blkback/xenbus.c | 35 ++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/drivers/block/xen-blkback/xenbus.c b/drivers/block/xen-blkback/xenbus.c index 9c3eb148fbd802c74e626c3d7bcd69dcb09bd921..519a78aa9073d1faa1dce5c1b36e95ae58da534b 100644 --- a/drivers/block/xen-blkback/xenbus.c +++ b/drivers/block/xen-blkback/xenbus.c @@ -3,6 +3,20 @@ Copyright (C) 2005 Rusty Russell Copyright (C) 2005 XenSource Ltd +In addition to the Xenstore nodes required by the Xen block device +specification, this implementation of blkback uses a new Xenstore +node: "opened". blkback sets "opened" to "0" before the hotplug script +is called. Once the device node has been opened, blkback sets "opened" +to "1". + +"opened" is read exclusively by userspace. It serves two purposes: + +1. It tells userspace that diskseq@major:minor syntax for "physical-device" is + supported. + +2. It tells userspace that it can wait for "opened" to be set to 1 after writing + "physical-device". Once "opened" is 1, blkback has a reference to the + device, so userspace doesn't need to keep one. */ @@ -699,6 +713,14 @@ static int xen_blkbk_probe(struct xenbus_device *dev, if (err) pr_warn("%s write out 'max-ring-page-order' failed\n", __func__); + /* + * This informs userspace that the "opened" node will be set to "1" when + * the device has been opened successfully. + */ + err = xenbus_write(XBT_NIL, dev->nodename, "opened", "0"); + if (err) + goto fail; + err = xenbus_switch_state(dev, XenbusStateInitWait); if (err) goto fail; @@ -826,6 +848,19 @@ static void backend_changed(struct xenbus_watch *watch, goto fail; } + /* + * Tell userspace that the device has been opened and that blkback has a + * reference to it. Userspace can then close the device or mark it as + * delete-on-close, knowing that blkback will keep the device open as + * long as necessary. + */ + err = xenbus_write(XBT_NIL, dev->nodename, "opened", "1"); + if (err) { + xenbus_dev_fatal(dev, err, "%s: notifying userspace device has been opened", + dev->nodename); + goto free_vbd; + } + err = xenvbd_sysfs_addif(dev); if (err) { xenbus_dev_fatal(dev, err, "creating sysfs entries"); -- Sincerely, Demi Marie Obenour (she/her/hers) Invisible Things Lab From xen-devel-bounces@lists.xenproject.org Thu Jun 01 21:48:44 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 21:48:44 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542749.847006 (Exim 4.92) (envelope-from ) id 1q4q9w-0004Od-2y; Thu, 01 Jun 2023 21:48:40 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542749.847006; Thu, 01 Jun 2023 21:48:40 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4q9v-0004OB-P9; Thu, 01 Jun 2023 21:48:39 +0000 Received: by outflank-mailman (input) for mailman id 542749; Thu, 01 Jun 2023 21:48:38 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4q9u-0003ze-AG for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 21:48:38 +0000 Received: from out3-smtp.messagingengine.com (out3-smtp.messagingengine.com [66.111.4.27]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 0df304e1-00c6-11ee-8611-37d641c3527e; Thu, 01 Jun 2023 23:48:34 +0200 (CEST) Received: from compute3.internal (compute3.nyi.internal [10.202.2.43]) by mailout.nyi.internal (Postfix) with ESMTP id 101F55C0196; Thu, 1 Jun 2023 17:48:33 -0400 (EDT) Received: from mailfrontend2 ([10.202.2.163]) by compute3.internal (MEProxy); Thu, 01 Jun 2023 17:48:33 -0400 Received: by mail.messagingengine.com (Postfix) with ESMTPA; Thu, 1 Jun 2023 17:48:32 -0400 (EDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 0df304e1-00c6-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= invisiblethingslab.com; h=cc:cc:content-transfer-encoding :content-type:date:date:from:from:in-reply-to:in-reply-to :message-id:mime-version:references:reply-to:sender:subject :subject:to:to; s=fm1; t=1685656113; x=1685742513; bh=KqvPH9pDDf rZerL/j1Q0a8RK2jTSm93zECezjcEfZ7Y=; b=PhGNaxRwheqgbYSVaXU75pFKw2 6MGTNaRUtrwir0W9wwvwQ0fEbeDSYwccxCit81zpBGFIz1J2MyvsJphlcw3O6cjl ETmq9Spmk/VIkE5vAet7+10uyDswVQjcvD0oO1/f/MrvWLljpd1MmKfV0R0N3jQ+ qEroWWUgVcB09PTiNaFQLnLqqThnpQ7WX9P5KRA/Q6Ki/3IAoP6ROhP0v0vzuebl jW+AnQMCg64nuru4QVSBS76ola9YvwzJjpy6TsRgBbg9/qW9f54zasEyDyR8X+gE teYfc8Ead4FtC9G/mqPk3RqICvy5hHM0jYnnoNO9KC1u2ohApIASi1XuY5lw== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-transfer-encoding :content-type:date:date:feedback-id:feedback-id:from:from :in-reply-to:in-reply-to:message-id:mime-version:references :reply-to:sender:subject:subject:to:to:x-me-proxy:x-me-proxy :x-me-sender:x-me-sender:x-sasl-enc; s=fm1; t=1685656113; x= 1685742513; bh=KqvPH9pDDfrZerL/j1Q0a8RK2jTSm93zECezjcEfZ7Y=; b=l pMBma0YclrB4aMeW+ve6wNTxXVlURGumwBt/LHcnMqY+i50kjHcj5COrD2FOIfh8 GH25Wnh/bo/6dbhVlZeiU9XdQH0Q/D2u7WkvqUfiEWcVX2uQhKIM/Gtqb6lsi9+n H5eUBRs8lyi+EIUOpG8YiFrRERtDsYMZZtyhRfD7HZaEMZQh5Ivbd4pFC4Dc9r91 HjwdPF26FcVuja/OVmDzO1XLCD0CswZGLmaJY3t0NRLjJDFfKCmLJrqRG7AdlkoJ FT3HA0ssnXWLr97XazuqMgkWVLGX1nKJnDDL+cFSEp8P+a6Bd9USjnZCySzhR3pU c8nC+NiWw8GH8KlQyjIzg== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvhedrfeelvddgtddvucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne cujfgurhephffvvefufffkofgjfhgggfestdekredtredttdenucfhrhhomhepffgvmhhi ucforghrihgvucfqsggvnhhouhhruceouggvmhhisehinhhvihhsihgslhgvthhhihhngh hslhgrsgdrtghomheqnecuggftrfgrthhtvghrnhepjeffjefggfeugeduvedvjeekgfeh gffhhfffjeetkeelueefffetfffhtdduheetnecuvehluhhsthgvrhfuihiivgeptdenuc frrghrrghmpehmrghilhhfrhhomhepuggvmhhisehinhhvihhsihgslhgvthhhihhnghhs lhgrsgdrtghomh X-ME-Proxy: Feedback-ID: iac594737:Fastmail From: Demi Marie Obenour To: =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Jens Axboe Cc: Demi Marie Obenour , =?UTF-8?q?Marek=20Marczykowski-G=C3=B3recki?= , xen-devel@lists.xenproject.org, linux-block@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH 1/2] xen-blkback: Implement diskseq checks Date: Thu, 1 Jun 2023 17:48:22 -0400 Message-Id: <20230601214823.1701-2-demi@invisiblethingslab.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230601214823.1701-1-demi@invisiblethingslab.com> References: <20230601214823.1701-1-demi@invisiblethingslab.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit This allows specifying a disk sequence number in XenStore. If it does not match the disk sequence number of the underlying device, the device will not be exported and a warning will be logged. Userspace can use this to eliminate race conditions due to major/minor number reuse. Old kernels do not support the new syntax, but a later patch will allow userspace to discover that the new syntax is supported. Signed-off-by: Demi Marie Obenour --- drivers/block/xen-blkback/xenbus.c | 112 +++++++++++++++++++++++------ 1 file changed, 89 insertions(+), 23 deletions(-) diff --git a/drivers/block/xen-blkback/xenbus.c b/drivers/block/xen-blkback/xenbus.c index 4807af1d58059394d7a992335dabaf2bc3901721..9c3eb148fbd802c74e626c3d7bcd69dcb09bd921 100644 --- a/drivers/block/xen-blkback/xenbus.c +++ b/drivers/block/xen-blkback/xenbus.c @@ -24,6 +24,7 @@ struct backend_info { struct xenbus_watch backend_watch; unsigned major; unsigned minor; + unsigned long long diskseq; char *mode; }; @@ -479,7 +480,7 @@ static void xen_vbd_free(struct xen_vbd *vbd) static int xen_vbd_create(struct xen_blkif *blkif, blkif_vdev_t handle, unsigned major, unsigned minor, int readonly, - int cdrom) + bool cdrom, u64 diskseq) { struct xen_vbd *vbd; struct block_device *bdev; @@ -507,6 +508,26 @@ static int xen_vbd_create(struct xen_blkif *blkif, blkif_vdev_t handle, xen_vbd_free(vbd); return -ENOENT; } + + if (diskseq) { + struct gendisk *disk = bdev->bd_disk; + + if (unlikely(disk == NULL)) { + pr_err("%s: device %08x has no gendisk\n", + __func__, vbd->pdevice); + xen_vbd_free(vbd); + return -EFAULT; + } + + if (unlikely(disk->diskseq != diskseq)) { + pr_warn("%s: device %08x has incorrect sequence " + "number 0x%llx (expected 0x%llx)\n", + __func__, vbd->pdevice, disk->diskseq, diskseq); + xen_vbd_free(vbd); + return -ENODEV; + } + } + vbd->size = vbd_sz(vbd); if (cdrom || disk_to_cdi(vbd->bdev->bd_disk)) @@ -707,6 +728,9 @@ static void backend_changed(struct xenbus_watch *watch, int cdrom = 0; unsigned long handle; char *device_type; + char *diskseq_str = NULL; + int diskseq_len; + unsigned long long diskseq; pr_debug("%s %p %d\n", __func__, dev, dev->otherend_id); @@ -725,10 +749,46 @@ static void backend_changed(struct xenbus_watch *watch, return; } - if (be->major | be->minor) { - if (be->major != major || be->minor != minor) - pr_warn("changing physical device (from %x:%x to %x:%x) not supported.\n", - be->major, be->minor, major, minor); + diskseq_str = xenbus_read(XBT_NIL, dev->nodename, "diskseq", &diskseq_len); + if (IS_ERR(diskseq_str)) { + int err = PTR_ERR(diskseq_str); + diskseq_str = NULL; + + /* + * If this does not exist, it means legacy userspace that does not + * support diskseq. + */ + if (unlikely(!XENBUS_EXIST_ERR(err))) { + xenbus_dev_fatal(dev, err, "reading diskseq"); + return; + } + diskseq = 0; + } else if (diskseq_len <= 0) { + xenbus_dev_fatal(dev, -EFAULT, "diskseq must not be empty"); + goto fail; + } else if (diskseq_len > 16) { + xenbus_dev_fatal(dev, -ERANGE, "diskseq too long: got %d but limit is 16", + diskseq_len); + goto fail; + } else if (diskseq_str[0] == '0') { + xenbus_dev_fatal(dev, -ERANGE, "diskseq must not start with '0'"); + goto fail; + } else { + char *diskseq_end; + diskseq = simple_strtoull(diskseq_str, &diskseq_end, 16); + if (diskseq_end != diskseq_str + diskseq_len) { + xenbus_dev_fatal(dev, -EINVAL, "invalid diskseq"); + goto fail; + } + kfree(diskseq_str); + diskseq_str = NULL; + } + + if (be->major | be->minor | be->diskseq) { + if (be->major != major || be->minor != minor || be->diskseq != diskseq) + pr_warn("changing physical device (from %x:%x:%llx to %x:%x:%llx)" + " not supported.\n", + be->major, be->minor, be->diskseq, major, minor, diskseq); return; } @@ -756,29 +816,35 @@ static void backend_changed(struct xenbus_watch *watch, be->major = major; be->minor = minor; + be->diskseq = diskseq; err = xen_vbd_create(be->blkif, handle, major, minor, - !strchr(be->mode, 'w'), cdrom); - - if (err) - xenbus_dev_fatal(dev, err, "creating vbd structure"); - else { - err = xenvbd_sysfs_addif(dev); - if (err) { - xen_vbd_free(&be->blkif->vbd); - xenbus_dev_fatal(dev, err, "creating sysfs entries"); - } - } + !strchr(be->mode, 'w'), cdrom, diskseq); if (err) { - kfree(be->mode); - be->mode = NULL; - be->major = 0; - be->minor = 0; - } else { - /* We're potentially connected now */ - xen_update_blkif_status(be->blkif); + xenbus_dev_fatal(dev, err, "creating vbd structure"); + goto fail; } + + err = xenvbd_sysfs_addif(dev); + if (err) { + xenbus_dev_fatal(dev, err, "creating sysfs entries"); + goto free_vbd; + } + + /* We're potentially connected now */ + xen_update_blkif_status(be->blkif); + return; + +free_vbd: + xen_vbd_free(&be->blkif->vbd); +fail: + kfree(diskseq_str); + kfree(be->mode); + be->mode = NULL; + be->major = 0; + be->minor = 0; + be->diskseq = 0; } /* -- Sincerely, Demi Marie Obenour (she/her/hers) Invisible Things Lab From xen-devel-bounces@lists.xenproject.org Thu Jun 01 21:48:46 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 21:48:46 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542748.847000 (Exim 4.92) (envelope-from ) id 1q4q9v-0004L4-Iy; Thu, 01 Jun 2023 21:48:39 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542748.847000; Thu, 01 Jun 2023 21:48:39 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4q9v-0004Ks-FW; Thu, 01 Jun 2023 21:48:39 +0000 Received: by outflank-mailman (input) for mailman id 542748; Thu, 01 Jun 2023 21:48:38 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4q9u-00045w-5b; Thu, 01 Jun 2023 21:48:38 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4q9u-0005M7-3C; Thu, 01 Jun 2023 21:48:38 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4q9t-0008Il-IJ; Thu, 01 Jun 2023 21:48:37 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q4q9t-00071f-Hh; Thu, 01 Jun 2023 21:48:37 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=zULkapbGl4m6v7s9BRjMnIVsbQPRcL31Kl5XAe3Xbic=; b=RgLzjoyHQAeU/nGrXKD0GfC3X9 U1mtGQ7v7yHZYQg5BcMe1SxdNKaSZnc3yNX2ISL3bMpuz7rFo917FBTtblP7qGPgzmSpkPiXy/FUk I8ha/Eg6W3Lsh2sMUeY9JrQK5fvIaImvhleM+QMLwBfCE4Y6JmNx2NH1JtKEtWedR5Zw=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable test] 181079: tolerable FAIL - PUSHED X-Osstest-Failures: xen-unstable:test-amd64-i386-xl-qemut-debianhvm-i386-xsm:xen-install:fail:heisenbug xen-unstable:test-amd64-amd64-pair:guest-migrate/dst_host/src_host/debian.repeat:fail:heisenbug xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:windows-install:fail:heisenbug xen-unstable:test-amd64-i386-qemuu-rhel6hvm-intel:guest-start/redhat.repeat:fail:heisenbug xen-unstable:test-amd64-amd64-xl-qcow2:guest-start/debian.repeat:fail:heisenbug xen-unstable:test-amd64-i386-xl-vhd:guest-start/debian.repeat:fail:heisenbug xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking X-Osstest-Versions-This: xen=dc98fa74446e5abe417e5ba9a6a632b50444cfa1 X-Osstest-Versions-That: xen=94200e1bae07e725cc07238c11569c5cab7befb7 From: osstest service owner Date: Thu, 01 Jun 2023 21:48:37 +0000 flight 181079 xen-unstable real [real] http://logs.test-lab.xenproject.org/osstest/logs/181079/ Failures :-/ but no regressions. Tests which are failing intermittently (not blocking): test-amd64-i386-xl-qemut-debianhvm-i386-xsm 7 xen-install fail in 181061 pass in 181079 test-amd64-amd64-pair 28 guest-migrate/dst_host/src_host/debian.repeat fail in 181061 pass in 181079 test-amd64-amd64-xl-qemuu-win7-amd64 12 windows-install fail in 181061 pass in 181079 test-amd64-i386-qemuu-rhel6hvm-intel 14 guest-start/redhat.repeat fail pass in 181061 test-amd64-amd64-xl-qcow2 21 guest-start/debian.repeat fail pass in 181061 test-amd64-i386-xl-vhd 21 guest-start/debian.repeat fail pass in 181061 Tests which did not succeed, but are not blocking: test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 181027 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop fail like 181027 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 181027 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 181027 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop fail like 181027 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop fail like 181027 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail like 181027 test-armhf-armhf-libvirt 16 saverestore-support-check fail like 181027 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail like 181027 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 181027 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop fail like 181027 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 181027 test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-i386-xl-pvshim 14 guest-start fail never pass test-amd64-i386-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-armhf-armhf-xl-multivcpu 15 migrate-support-check fail never pass test-armhf-armhf-xl-multivcpu 16 saverestore-support-check fail never pass test-armhf-armhf-xl-credit2 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit2 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-armhf-armhf-xl 15 migrate-support-check fail never pass test-armhf-armhf-xl 16 saverestore-support-check fail never pass test-amd64-i386-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass test-amd64-i386-libvirt 15 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 15 saverestore-support-check fail never pass test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 15 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt 15 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 15 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt-raw 14 migrate-support-check fail never pass version targeted for testing: xen dc98fa74446e5abe417e5ba9a6a632b50444cfa1 baseline version: xen 94200e1bae07e725cc07238c11569c5cab7befb7 Last test of basis 181027 2023-05-31 08:39:08 Z 1 days Testing same since 181061 2023-05-31 23:38:33 Z 0 days 2 attempts ------------------------------------------------------------ People who touched revisions under test: Bobby Eshleman George Dunlap Jan Beulich Juergen Gross Olaf Hering Oleksii Kurochko Roger Pau Monné Stefano Stabellini jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64-xtf pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-prev pass build-i386-prev pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-xtf-amd64-amd64-1 pass test-xtf-amd64-amd64-2 pass test-xtf-amd64-amd64-3 pass test-xtf-amd64-amd64-4 pass test-xtf-amd64-amd64-5 pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl pass test-amd64-i386-xl pass test-amd64-coresched-i386-xl pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-i386-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-i386-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-i386-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-i386-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-i386-qemut-rhel6hvm-amd pass test-amd64-i386-qemuu-rhel6hvm-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-i386-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-freebsd10-amd64 pass test-amd64-amd64-qemuu-freebsd11-amd64 pass test-amd64-amd64-qemuu-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-i386-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-i386-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-i386-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-amd64-i386-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale pass test-amd64-amd64-examine-bios pass test-amd64-i386-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 pass test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 pass test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine pass test-amd64-i386-examine pass test-amd64-i386-freebsd10-i386 pass test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-i386-qemut-rhel6hvm-intel pass test-amd64-i386-qemuu-rhel6hvm-intel fail test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt pass test-amd64-i386-libvirt pass test-amd64-amd64-livepatch pass test-amd64-i386-livepatch pass test-amd64-amd64-migrupgrade pass test-amd64-i386-migrupgrade pass test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu pass test-amd64-amd64-pair pass test-amd64-i386-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-i386-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-i386-xl-pvshim fail test-amd64-amd64-pygrub pass test-armhf-armhf-libvirt-qcow2 pass test-amd64-amd64-xl-qcow2 fail test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw pass test-amd64-i386-libvirt-raw pass test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds pass test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-amd64-i386-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-i386-examine-uefi pass test-amd64-amd64-libvirt-vhd pass test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd pass test-amd64-i386-xl-vhd fail ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Pushing revision : To xenbits.xen.org:/home/xen/git/xen.git 94200e1bae..dc98fa7444 dc98fa74446e5abe417e5ba9a6a632b50444cfa1 -> master From xen-devel-bounces@lists.xenproject.org Thu Jun 01 21:52:30 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 21:52:30 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542769.847020 (Exim 4.92) (envelope-from ) id 1q4qDc-00072b-Q1; Thu, 01 Jun 2023 21:52:28 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542769.847020; Thu, 01 Jun 2023 21:52:28 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4qDc-00072U-LA; Thu, 01 Jun 2023 21:52:28 +0000 Received: by outflank-mailman (input) for mailman id 542769; Thu, 01 Jun 2023 21:52:27 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4qDa-00072O-VB for xen-devel@lists.xenproject.org; Thu, 01 Jun 2023 21:52:27 +0000 Received: from smtp-190d.mail.infomaniak.ch (smtp-190d.mail.infomaniak.ch [185.125.25.13]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 97f21cad-00c6-11ee-b231-6b7b168915f2; Thu, 01 Jun 2023 23:52:25 +0200 (CEST) Received: from smtp-3-0001.mail.infomaniak.ch (unknown [10.4.36.108]) by smtp-2-3000.mail.infomaniak.ch (Postfix) with ESMTPS id 4QXKc77569zMqSL0; Thu, 1 Jun 2023 23:52:23 +0200 (CEST) Received: from unknown by smtp-3-0001.mail.infomaniak.ch (Postfix) with ESMTPA id 4QXKc326PxzMpyf6; Thu, 1 Jun 2023 23:52:19 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 97f21cad-00c6-11ee-b231-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=digikod.net; s=20191114; t=1685656343; bh=Y4IDHny7hGy+XnSKBvFZqlpnWAHCn1rWumxGCLA50bQ=; h=Date:Subject:From:To:Cc:References:In-Reply-To:From; b=H6zZL510qVdfzZeh/i5GoA9yME1fspu+DZZ0Oi5ZVA8yOwTq7CQKGpshOTn5FYk2m fNE71TN9vpCm+pbkovBsqfYJ/zEMqsdW5HgzDcg4v5qxa6E4ngCPALSTCeNgrwWESi 5/j+zhczJVB0aePMSXY+seCsa5XOfmyxFayW64i8= Message-ID: <9a4edc66-a0a3-73e4-09c5-db68d4cfbb68@digikod.net> Date: Thu, 1 Jun 2023 23:52:18 +0200 MIME-Version: 1.0 User-Agent: Subject: Re: [ANNOUNCE] KVM Microconference at LPC 2023 Content-Language: en-US From: =?UTF-8?Q?Micka=c3=abl_Sala=c3=bcn?= To: Paolo Bonzini , James Morris Cc: Sean Christopherson , Marc Zyngier , Borislav Petkov , Dave Hansen , "H . Peter Anvin" , Ingo Molnar , Kees Cook , Thomas Gleixner , Vitaly Kuznetsov , Wanpeng Li , Alexander Graf , Forrest Yuan Yu , John Andersen , Liran Alon , "Madhavan T . Venkataraman" , Marian Rotariu , =?UTF-8?Q?Mihai_Don=c8=9bu?= , =?UTF-8?B?TmljdciZb3IgQ8OuyJt1?= , Rick Edgecombe , Thara Gopinath , Will Deacon , Zahra Tarkhani , =?UTF-8?Q?=c8=98tefan_=c8=98icleru?= , dev@lists.cloudhypervisor.org, kvm@vger.kernel.org, linux-hardening@vger.kernel.org, linux-hyperv@vger.kernel.org, linux-kernel@vger.kernel.org, linux-security-module@vger.kernel.org, qemu-devel@nongnu.org, virtualization@lists.linux-foundation.org, x86@kernel.org, xen-devel@lists.xenproject.org References: <2f19f26e-20e5-8198-294e-27ea665b706f@redhat.com> <4142c8dc-5385-fb1d-4f8b-2a98bb3f99af@digikod.net> In-Reply-To: <4142c8dc-5385-fb1d-4f8b-2a98bb3f99af@digikod.net> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-Infomaniak-Routing: alpha Hi, What is the status of this microconference proposal? We'd be happy to talk about Heki [1] and potentially other hypervisor supports. Regards, Mickaël [1] https://lore.kernel.org/all/20230505152046.6575-1-mic@digikod.net/ On 26/05/2023 18:09, Mickaël Salaün wrote: > See James Morris's proposal here: > https://lore.kernel.org/all/17f62cb1-a5de-2020-2041-359b8e96b8c0@linux.microsoft.com/ > > On 26/05/2023 04:36, James Morris wrote: > > [Side topic] > > > > Would folks be interested in a Linux Plumbers Conference MC on this > > topic generally, across different hypervisors, VMMs, and architectures? > > > > If so, please let me know who the key folk would be and we can try > writing > > up an MC proposal. > > The fine-grain memory management proposal from James Gowans looks > interesting, especially the "side-car" virtual machines: > https://lore.kernel.org/all/88db2d9cb42e471692ff1feb0b9ca855906a9d95.camel@amazon.com/ > > > On 09/05/2023 11:55, Paolo Bonzini wrote: >> Hi all! >> >> We are planning on submitting a CFP to host a KVM Microconference at >> Linux Plumbers Conference 2023. To help justify the proposal, we would >> like to gather a list of folks that would likely attend, and crowdsource >> a list of topics to include in the proposal. >> >> For both this year and future years, the intent is that a KVM >> Microconference will complement KVM Forum, *NOT* supplant it. As you >> probably noticed, KVM Forum is going through a somewhat radical change in >> how it's organized; the conference is now free and (with some help from >> Red Hat) organized directly by the KVM and QEMU communities. Despite the >> unexpected changes and some teething pains, community response to KVM >> Forum continues to be overwhelmingly positive! KVM Forum will remain >> the venue of choice for KVM/userspace collaboration, for educational >> content covering both KVM and userspace, and to discuss new features in >> QEMU and other userspace projects. >> >> At least on the x86 side, however, the success of KVM Forum led us >> virtualization folks to operate in relative isolation. KVM depends on >> and impacts multiple subsystems (MM, scheduler, perf) in profound ways, >> and recently we’ve seen more and more ideas/features that require >> non-trivial changes outside KVM and buy-in from stakeholders that >> (typically) do not attend KVM Forum. Linux Plumbers Conference is a >> natural place to establish such collaboration within the kernel. >> >> Therefore, the aim of the KVM Microconference will be: >> * to provide a setting in which to discuss KVM and kernel internals >> * to increase collaboration and reduce friction with other subsystems >> * to discuss system virtualization issues that require coordination with >> other subsystems (such as VFIO, or guest support in arch/) >> >> Below is a rough draft of the planned CFP submission. >> >> Thanks! >> >> Paolo Bonzini (KVM Maintainer) >> Sean Christopherson (KVM x86 Co-Maintainer) >> Marc Zyngier (KVM ARM Co-Maintainer) >> >> >> =================== >> KVM Microconference >> =================== >> >> KVM (Kernel-based Virtual Machine) enables the use of hardware features >> to improve the efficiency, performance, and security of virtual machines >> created and managed by userspace. KVM was originally developed to host >> and accelerate "full" virtual machines running a traditional kernel and >> operating system, but has long since expanded to cover a wide array of use >> cases, e.g. hosting real time workloads, sandboxing untrusted workloads, >> deprivileging third party code, reducing the trusted computed base of >> security sensitive workloads, etc. As KVM's use cases have grown, so too >> have the requirements placed on KVM and the interactions between it and >> other kernel subsystems. >> >> The KVM Microconference will focus on how to evolve KVM and adjacent >> subsystems in order to satisfy new and upcoming requirements: serving >> guest memory that cannot be accessed by host userspace[1], providing >> accurate, feature-rich PMU/perf virtualization in cloud VMs[2], etc. >> >> >> Potential Topics: >> - Serving inaccessible/unmappable memory for KVM guests (protected VMs) >> - Optimizing mmu_notifiers, e.g. reducing TLB flushes and spurious zapping >> - Supporting multiple KVM modules (for non-disruptive upgrades) >> - Improving and hardening KVM+perf interactions >> - Implementing arch-agnostic abstractions in KVM (e.g. MMU) >> - Defining KVM requirements for hardware vendors >> - Utilizing "fault" injection to increase test coverage of edge cases >> - KVM vs VFIO (e.g. memory types, a rather hot topic on the ARM side) >> >> >> Key Attendees: >> - Paolo Bonzini (KVM Maintainer) >> - Sean Christopherson (KVM x86 Co-Maintainer) >> - Your name could be here! >> >> [1] https://lore.kernel.org/all/20221202061347.1070246-1-chao.p.peng@linux.intel.com >> [2] https://lore.kernel.org/all/CALMp9eRBOmwz=mspp0m5Q093K3rMUeAsF3vEL39MGV5Br9wEQQ@mail.gmail.com >> >> From xen-devel-bounces@lists.xenproject.org Thu Jun 01 22:30:04 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 01 Jun 2023 22:30:04 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542775.847036 (Exim 4.92) (envelope-from ) id 1q4qnk-0002Jr-Le; Thu, 01 Jun 2023 22:29:48 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542775.847036; Thu, 01 Jun 2023 22:29:48 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4qnk-0002Jk-IY; Thu, 01 Jun 2023 22:29:48 +0000 Received: by outflank-mailman (input) for mailman id 542775; Thu, 01 Jun 2023 22:29:47 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4qnj-0002Ja-P1; Thu, 01 Jun 2023 22:29:47 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4qnj-0006JI-Hr; Thu, 01 Jun 2023 22:29:47 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4qnj-00018L-AP; Thu, 01 Jun 2023 22:29:47 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q4qnj-00008G-9u; Thu, 01 Jun 2023 22:29:47 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=+0YKojVoKfAxWDoxBugQBveb5VAKfZ/GZCs36EObBWI=; b=27bMYDjWICLAE3s7XYzlOLnXEF dqZ8CAL8c9OnXmt1k3Y7a0x4yY2jobgAEDM2Q1AJc1T7cNsXAhfFu/RKQPgiuOK74G/3OyoxNKSA9 x+xvhjYC0ghxttgoRY+zy1nve+UBJ8kk5FbbheNtppDUDIT7d4Yi48u8H52W547sfavk=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [ovmf test] 181091: all pass - PUSHED X-Osstest-Versions-This: ovmf=41abf00bf98e36830974bd669ab7ec3679bd5e67 X-Osstest-Versions-That: ovmf=ded1d5414b5a0161de8fcf234b7fb200fb59fb2c From: osstest service owner Date: Thu, 01 Jun 2023 22:29:47 +0000 flight 181091 ovmf real [real] http://logs.test-lab.xenproject.org/osstest/logs/181091/ Perfect :-) All tests in this flight passed as required version targeted for testing: ovmf 41abf00bf98e36830974bd669ab7ec3679bd5e67 baseline version: ovmf ded1d5414b5a0161de8fcf234b7fb200fb59fb2c Last test of basis 181087 2023-06-01 17:10:49 Z 0 days Testing same since 181091 2023-06-01 19:43:55 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Anthony PERARD Ard Biesheuvel Corvin Köhne Gerd Hoffmann Pedro Falcato Peter Grehan jobs: build-amd64-xsm pass build-i386-xsm pass build-amd64 pass build-i386 pass build-amd64-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-i386-pvops pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Pushing revision : To xenbits.xen.org:/home/xen/git/osstest/ovmf.git ded1d5414b..41abf00bf9 41abf00bf98e36830974bd669ab7ec3679bd5e67 -> xen-tested-master From xen-devel-bounces@lists.xenproject.org Fri Jun 02 00:24:17 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 02 Jun 2023 00:24:17 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542783.847052 (Exim 4.92) (envelope-from ) id 1q4saF-0006cc-Jm; Fri, 02 Jun 2023 00:23:59 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542783.847052; Fri, 02 Jun 2023 00:23:59 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4saF-0006cV-H5; Fri, 02 Jun 2023 00:23:59 +0000 Received: by outflank-mailman (input) for mailman id 542783; Fri, 02 Jun 2023 00:23:58 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4saE-0006cP-T1 for xen-devel@lists.xenproject.org; Fri, 02 Jun 2023 00:23:58 +0000 Received: from mail-pg1-x54a.google.com (mail-pg1-x54a.google.com [2607:f8b0:4864:20::54a]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id c28905d3-00db-11ee-b231-6b7b168915f2; Fri, 02 Jun 2023 02:23:56 +0200 (CEST) Received: by mail-pg1-x54a.google.com with SMTP id 41be03b00d2f7-53f6e194e7bso1351740a12.1 for ; Thu, 01 Jun 2023 17:23:56 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: c28905d3-00db-11ee-b231-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20221208; t=1685665435; x=1688257435; h=content-transfer-encoding:cc:to:from:subject:message-id:references :mime-version:in-reply-to:date:from:to:cc:subject:date:message-id :reply-to; bh=kfVTz/MFdf1BdTl2DJtaA5MVU5d+x7qUPBQRynuzbEs=; b=lsng6iSxrqz9R88Q59ewsOGcDaYkTH4vRqDXC5iFszzkH/L48SReX+ccLn2qqVohKu SqRTT3wIMGLiTNYWwIKvQpUQy1rlArmCydKGFHXCUSm4HDybF/yCCEi4ngNdiHPHHIAO IvE9MObzfShr0WlQx7CjRaOodhTuihevv7Kvb25V0NnX+aCj6e89Z3iKFeAL+lLhSweK djWxmTAZR53Gd6ZwAEJJraDzBmWjEDJjAVLEUoTCsaFeXmgf0aQGIJKaiMkaQzmwqMTm MDcuVqxl1ntCRLEQ+YYvdB2O6IC0xaDBz4EXjfHWwXcBoneakB4xjWXpWdEkTnS2DRwX Al0A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1685665435; x=1688257435; h=content-transfer-encoding:cc:to:from:subject:message-id:references :mime-version:in-reply-to:date:x-gm-message-state:from:to:cc:subject :date:message-id:reply-to; bh=kfVTz/MFdf1BdTl2DJtaA5MVU5d+x7qUPBQRynuzbEs=; b=lBx3JCYvp8KO0YJ/yukRGgwqh/T0bLsKL5hLCBhdo2U84QzqjekKDIECcFsF/8zJ5D MIFX3jz+xxgNecia1wjOd1OJ2Yq2ex1pBeuTkGJWewxNZDAqLm+1Fy4NzDZxt6yb0aVp ETt61KEXFbH14u96hnQVZCPeYGS8SjN9v4NvcupFF0Rqqgx8M/oSorR0mHc7NJWN4zXq oYIrqXYfknlq4JQx/TVhGm1EAx3pAlu2VCHgIccoBOod5uH/1Tb0q2MXqG1UG7ZE6MT9 rzb8fsSIXlBKs3GzkujidxyW97zV+27h152dQHrkf28oOezPnsEfBqNwnvetTq016caT K7Bg== X-Gm-Message-State: AC+VfDyG7cl8p6UN/D+iZ6OM813pKDca75WcLmF7dxnLe9D/f7kfz6Ko sao3pVF8FSE4AFHc5NX5aGRrlOJcB6I= X-Google-Smtp-Source: ACHHUZ4sKaezOgXXrB+dL2dh8BcQkqJaicrwtBGNqgWl2x1iGIzS7OMmnpETOlVJ/dFfp6qtQmgVV4r4kJ8= X-Received: from zagreus.c.googlers.com ([fda3:e722:ac3:cc00:7f:e700:c0a8:5c37]) (user=seanjc job=sendgmr) by 2002:a63:fd47:0:b0:53f:5067:64ec with SMTP id m7-20020a63fd47000000b0053f506764ecmr2104111pgj.0.1685665434956; Thu, 01 Jun 2023 17:23:54 -0700 (PDT) Date: Thu, 1 Jun 2023 17:23:53 -0700 In-Reply-To: <9a4edc66-a0a3-73e4-09c5-db68d4cfbb68@digikod.net> Mime-Version: 1.0 References: <2f19f26e-20e5-8198-294e-27ea665b706f@redhat.com> <4142c8dc-5385-fb1d-4f8b-2a98bb3f99af@digikod.net> <9a4edc66-a0a3-73e4-09c5-db68d4cfbb68@digikod.net> Message-ID: Subject: Re: [ANNOUNCE] KVM Microconference at LPC 2023 From: Sean Christopherson To: "=?iso-8859-1?Q?Micka=EBl_Sala=FCn?=" Cc: Paolo Bonzini , James Morris , Marc Zyngier , Borislav Petkov , Dave Hansen , "H . Peter Anvin" , Ingo Molnar , Kees Cook , Thomas Gleixner , Vitaly Kuznetsov , Wanpeng Li , Alexander Graf , Forrest Yuan Yu , John Andersen , Liran Alon , "Madhavan T . Venkataraman" , Marian Rotariu , "Mihai =?utf-8?B?RG9uyJt1?=" , "=?utf-8?B?TmljdciZb3IgQ8OuyJt1?=" , Rick Edgecombe , Thara Gopinath , Will Deacon , Zahra Tarkhani , "=?utf-8?Q?=C8=98tefan_=C8=98icleru?=" , dev@lists.cloudhypervisor.org, kvm@vger.kernel.org, linux-hardening@vger.kernel.org, linux-hyperv@vger.kernel.org, linux-kernel@vger.kernel.org, linux-security-module@vger.kernel.org, qemu-devel@nongnu.org, virtualization@lists.linux-foundation.org, x86@kernel.org, xen-devel@lists.xenproject.org Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable On Thu, Jun 01, 2023, Micka=EF=BF=BDl Sala=EF=BF=BDn wrote: > Hi, >=20 > What is the status of this microconference proposal? We'd be happy to tal= k > about Heki [1] and potentially other hypervisor supports. Proposal submitted (deadline is/was today), now we wait :-) IIUC, we shoul= d find out rather quickly whether or not the KVM MC is a go. From xen-devel-bounces@lists.xenproject.org Fri Jun 02 00:48:53 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 02 Jun 2023 00:48:53 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542787.847062 (Exim 4.92) (envelope-from ) id 1q4syF-0000iu-Hl; Fri, 02 Jun 2023 00:48:47 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542787.847062; Fri, 02 Jun 2023 00:48:47 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4syF-0000in-Ex; Fri, 02 Jun 2023 00:48:47 +0000 Received: by outflank-mailman (input) for mailman id 542787; Fri, 02 Jun 2023 00:48:46 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4syE-0000if-G1 for xen-devel@lists.xenproject.org; Fri, 02 Jun 2023 00:48:46 +0000 Received: from NAM02-SN1-obe.outbound.protection.outlook.com (mail-sn1nam02on2062d.outbound.protection.outlook.com [2a01:111:f400:7ea9::62d]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 3963e6b6-00df-11ee-b231-6b7b168915f2; Fri, 02 Jun 2023 02:48:44 +0200 (CEST) Received: from MW4PR04CA0052.namprd04.prod.outlook.com (2603:10b6:303:6a::27) by PH7PR12MB7017.namprd12.prod.outlook.com (2603:10b6:510:1b7::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6433.26; Fri, 2 Jun 2023 00:48:40 +0000 Received: from CO1NAM11FT103.eop-nam11.prod.protection.outlook.com (2603:10b6:303:6a:cafe::e4) by MW4PR04CA0052.outlook.office365.com (2603:10b6:303:6a::27) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.23 via Frontend Transport; Fri, 2 Jun 2023 00:48:40 +0000 Received: from SATLEXMB03.amd.com (165.204.84.17) by CO1NAM11FT103.mail.protection.outlook.com (10.13.174.252) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6455.24 via Frontend Transport; Fri, 2 Jun 2023 00:48:38 +0000 Received: from SATLEXMB05.amd.com (10.181.40.146) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Thu, 1 Jun 2023 19:48:37 -0500 Received: from SATLEXMB04.amd.com (10.181.40.145) by SATLEXMB05.amd.com (10.181.40.146) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Thu, 1 Jun 2023 19:48:37 -0500 Received: from xsjfnuv50.xilinx.com (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server id 15.1.2375.34 via Frontend Transport; Thu, 1 Jun 2023 19:48:36 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 3963e6b6-00df-11ee-b231-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=acgTgwVw4jEcVK2nvqKPly9XHp06o1H0Lp1YLKlyGTyw4HQ0/2wRb/LQRKIgpgN7MvLVFNeH7GxCBkF27tpui0w85SvlJXcBpBVfkrlubMj6LD3yRzcVCyTrpqHiowv1SUktoKjkTf7KdKTziJrQEg2WXy7QwEN1D6j/BnWau0lTv4Q+ww9OG6G3du2AnPActS+NG7sGrBTG8N6oI5DY2uagKnWDp17tyHN7HiljChIDiAodONMU5LritkeX6O4lp4WJMMHhoU1shhmsmi9iqVSlAuurA3Jj1haIOqmJeuU5/0vyFsD1ufXAPNNQ0yYYNmH/5F2HZbMj+SIu7t+uFw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=sIeTXt9ePU8RwR3s7ErGAQbHzXr24xG75zzGHq385rY=; b=JayHxTPgMLODqKOqKUuXDeu41ju9hwgEoLIQVWzCnbJWkhXr1a44Nr0E4ZHfulufRoN1gCR6ditxRy4/dZmaH/rt3Q75WofATEngVEugsl2mFTMmA0J1rJzK8ehRLeGBmhVkKrIAI07IlJOgHPyON2/4fSecQ8zrfP7gVr+GD/UNQNbaMSac5FdQP0dezuy38V3GwuaSfzQU1qYkzatrap9NCn3J62n49IwKC2tmstX6AN8XbkILfcwGsjUyPXfL8Btv2XumTrUqnBEiNabWArhK24+sHoNM3fkoygpth6shIIMXikUEcBos9/nb0iCEjeAfYndhCcPuqlPRsZsDJQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=sIeTXt9ePU8RwR3s7ErGAQbHzXr24xG75zzGHq385rY=; b=3+Z638EBJoGevThHb4+hWSjcIbc0tDe2zpMYUQbMKOpmxLEv1LkMGMDfT9RuNXVrMl3/hGF0HLghK+2T3w0EDwiGTp8yKpyWeSR5LYtusj9DPI/iFXzNpBbBp3loljiELVf7zugXioEctITTXWA3592X4wVmWjrTsPDGuF9Xetw= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C From: Vikram Garhwal To: CC: , , , , Julien Grall , Bertrand Marquis , Volodymyr Babchuk , Henry Wang , "Community Manager" , Andrew Cooper , George Dunlap , "Wei Liu" , Paul Durrant , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Rahul Singh , Anthony PERARD , "Juergen Gross" Subject: [XEN][PATCH v7 00/19] dynamic node programming using overlay dtbo Date: Thu, 1 Jun 2023 17:48:05 -0700 Message-ID: <20230602004824.20731-1-vikram.garhwal@amd.com> X-Mailer: git-send-email 2.17.1 MIME-Version: 1.0 Content-Type: text/plain X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO1NAM11FT103:EE_|PH7PR12MB7017:EE_ X-MS-Office365-Filtering-Correlation-Id: ad380a77-a78e-4da3-de68-08db63031af2 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: KymmPPaDjqycovfErW5bJw4nbqB7Q1o03wjtpkKro73URbZHNE1DHZNZNknnnHxxPzEomUmSOzirV8x3v5qesj+APYcwtXyWItx7cv2+zfS+6iArdKVoO9f+j0ti6NFGGGWXp6qj3PULb1WZL+jE1v/A2jAgYukf07EkkckAmWMx9Q3Hz0MB/HjgBi1zzkBk6S5J4hXPEm1DI+lKFJa3HIEvRjDcvwJYngVc/m4fflQDkB2+N6LC8UeToRXMLK+PXKCb3LUUeDJzAX84TsR5I6rqJRPr1M/ljOvWu3986vUEgpUcDsMzG43ew22FCuqk86TMN+dqcsoOuhK9RtxgiUectqAQpMqW7KWXki9upJi9nEP/h7B6wzluWuSnzEFds30c0/8mzdYVORHzqUccWkrHdTCzoLo/QsSyoac571Nsh+eM4xmwT1tiC6TmLBsj2J7+o0EwIHJzsDRtmwg8TbswKSC0X7ov6Lx9b1swlCvziqOXnayQsVj1IbpnGlk9EHeQRn30Yz65Bek7JH4oUuA8QSDUrodd7pLKoplh4z+LSWDm/qXCgHEVupKJCKwB/b4rX2GAhNVtj54IasGosUdFKu09wsKq1qpRZvwe6xECs3iF8/2UQD6BS9qaMBybsTu4bSiNSya4ynXH1WroNo41ni2kI5Z/sDuWBhukNOFLg7/Bd+DYbpDTXEx+DOmT49is2ETrJxc9Nk0N3p7nU8eheHl+jMRSjwJlmunLlc7DjBEbSeEBlLHNoR41/Wo6ysu1DokLWmmo6mMxNyn7tg== X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(376002)(136003)(396003)(346002)(39860400002)(451199021)(46966006)(36840700001)(40470700004)(44832011)(82740400003)(356005)(82310400005)(81166007)(40460700003)(86362001)(54906003)(478600001)(6916009)(70586007)(70206006)(4326008)(36756003)(40480700001)(6666004)(186003)(26005)(1076003)(8676002)(8936002)(5660300002)(7416002)(2906002)(316002)(2616005)(47076005)(36860700001)(41300700001)(336012)(83380400001)(426003)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Jun 2023 00:48:38.9670 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: ad380a77-a78e-4da3-de68-08db63031af2 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com] X-MS-Exchange-CrossTenant-AuthSource: CO1NAM11FT103.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH7PR12MB7017 Hi, This patch series is for introducing dynamic programming i.e. add/remove the devices during run time. Using "xl dt_overlay" a device can be added/removed with dtbo. For adding a node using dynamic programming: 1. flatten device tree overlay node will be added to a fdt 2. Updated fdt will be unflattened to a new dt_host_new 3. Extract the newly added node information from dt_host_new 4. Add the added node under correct parent in original dt_host. 3. Map/Permit interrupt and iomem region as required. For removing a node: 1. Find the node with given path. 2. Check if the node is used by any of domus. Removes the node only when it's not used by any domain. 3. Removes IRQ permissions and MMIO access. 5. Find the node in dt_host and delete the device node entry from dt_host. 6. Free the overlay_tracker entry which means free dt_host_new also(created in adding node step). The main purpose of this series to address first part of the dynamic programming i.e. making Xen aware of new device tree node which means updating the dt_host with overlay node information. Here we are adding/removing node from dt_host, and checking/set IOMMU and IRQ permission but never mapping them to any domain. Right now, mapping/Un-mapping will happen only when a new domU is created/destroyed using "xl create". To map IOREQ and IOMMU during runtime, there will be another small series after this one where we will do the actual IOMMU and IRQ mapping to a running domain and will call unmap_mmio_regions() to remove the mapping. Change Log: v5 -> v6: Add separate patch for memory allocation failure in __unflatten_device_tree(). Move __unflatten_device_tree() function type changes to single patch. Add error propagation for failures in unflatten_dt_node. Change CONFIG_OVERLAY_DTB status to "ARM: Tech Preview". xen/smmu: Add remove_device callback for smmu_iommu ops: Added check to see if device is currently used. common/device_tree: Add rwlock for dt_host: Addressed feedback from Henry to rearrange code. xen/arm: Implement device tree node removal functionalities: Changed file name to dash format. Addressed Michal's comments. Rectified formatting related errors pointed by Michal. v4 -> v5: Split patch 01/16 to two patches. One with function type changes and another with changes inside unflatten_device_tree(). Change dt_overlay xl command to dt-overlay. Protect overlay functionality with CONFIG(arm). Fix rwlock issues. Move include "device_tree.h" to c file where arch_cpu_init() is called and forward declare dt_device_node. This was done to avoid circular deps b/w device_tree.h and rwlock.h Address Michal's comment on coding style. v3 -> v4: Add support for adding node's children. Add rwlock to dt_host functions. Corrected fdt size issue when applying overlay into it. Add memory allocation fail handling for unflatten_device_tree(). Changed xl overlay to xl dt_overlay. Correct commit messages. Addressed code issue from v3 review. v2 -> v3: Moved overlay functionalities to dt_overlay.c file. Renamed XEN_SYSCTL_overlay to XEN_SYSCTL_dt_overlay. Add dt_* prefix to overlay_add/remove_nodes. Added dtdevs_lock to protect iommu_add_dt_device(). For iommu, moved spin_lock to caller. Address code issue from v2 review. v1 -> v2: Add support for multiple node addition/removal using dtbo. Replaced fpga-add and fpga-remove with one hypercall overlay_op. Moved common domain_build.c function to device.c Add OVERLAY_DTB configuration. Renamed overlay_get_target() to fdt_overlay_get_target(). Split remove_device patch into two patches. Moved overlay_add/remove code to sysctl and changed it from domctl to sysctl. Added all overlay code under CONFIG_OVERLAY_DTB Renamed all tool domains fpga function to overlay Addressed code issues from v1 review. Regards, Vikram Vikram Garhwal (19): common/device_tree: handle memory allocation failure in __unflatten_device_tree() common/device_tree.c: unflatten_device_tree() propagate errors xen/arm/device: Remove __init from function type common/device_tree: change __unflatten_device_tree() type xen/arm: Add CONFIG_OVERLAY_DTB libfdt: Keep fdt functions after init for CONFIG_OVERLAY_DTB. libfdt: overlay: change overlay_get_target() xen/device-tree: Add device_tree_find_node_by_path() to find nodes in device tree xen/iommu: Move spin_lock from iommu_dt_device_is_assigned to caller xen/iommu: protect iommu_add_dt_device() with dtdevs_lock xen/iommu: Introduce iommu_remove_dt_device() xen/smmu: Add remove_device callback for smmu_iommu ops asm/smp.h: Fix circular dependency for device_tree.h and rwlock.h common/device_tree: Add rwlock for dt_host xen/arm: Implement device tree node removal functionalities xen/arm: Implement device tree node addition functionalities tools/libs/ctrl: Implement new xc interfaces for dt overlay tools/libs/light: Implement new libxl functions for device tree overlay ops tools/xl: Add new xl command overlay for device tree overlay support CHANGELOG.md | 2 + SUPPORT.md | 6 + tools/include/libxl.h | 11 + tools/include/xenctrl.h | 5 + tools/libs/ctrl/Makefile.common | 1 + tools/libs/ctrl/xc_dt_overlay.c | 51 ++ tools/libs/light/Makefile | 3 + tools/libs/light/libxl_dt_overlay.c | 71 ++ tools/xl/xl.h | 1 + tools/xl/xl_cmdtable.c | 6 + tools/xl/xl_vmcontrol.c | 52 ++ xen/arch/arm/Kconfig | 5 + xen/arch/arm/device.c | 149 ++++ xen/arch/arm/domain_build.c | 147 ---- xen/arch/arm/include/asm/domain_build.h | 2 - xen/arch/arm/include/asm/setup.h | 6 + xen/arch/arm/include/asm/smp.h | 3 +- xen/arch/arm/smpboot.c | 1 + xen/arch/arm/sysctl.c | 16 +- xen/common/Makefile | 1 + xen/common/device_tree.c | 52 +- xen/common/dt-overlay.c | 953 ++++++++++++++++++++++++ xen/common/libfdt/Makefile | 4 + xen/common/libfdt/fdt_overlay.c | 29 +- xen/common/libfdt/version.lds | 1 + xen/drivers/passthrough/arm/smmu.c | 59 ++ xen/drivers/passthrough/device_tree.c | 85 ++- xen/include/public/sysctl.h | 24 + xen/include/xen/device_tree.h | 29 +- xen/include/xen/dt-overlay.h | 59 ++ xen/include/xen/iommu-private.h | 27 + xen/include/xen/iommu.h | 2 + xen/include/xen/libfdt/libfdt.h | 18 + 33 files changed, 1687 insertions(+), 194 deletions(-) create mode 100644 tools/libs/ctrl/xc_dt_overlay.c create mode 100644 tools/libs/light/libxl_dt_overlay.c create mode 100644 xen/common/dt-overlay.c create mode 100644 xen/include/xen/dt-overlay.h create mode 100644 xen/include/xen/iommu-private.h -- 2.17.1 From xen-devel-bounces@lists.xenproject.org Fri Jun 02 00:48:55 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 02 Jun 2023 00:48:55 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542788.847072 (Exim 4.92) (envelope-from ) id 1q4syM-0000zj-Tl; Fri, 02 Jun 2023 00:48:54 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542788.847072; Fri, 02 Jun 2023 00:48:54 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4syM-0000zc-Qd; Fri, 02 Jun 2023 00:48:54 +0000 Received: by outflank-mailman (input) for mailman id 542788; Fri, 02 Jun 2023 00:48:54 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4syM-0000if-1a for xen-devel@lists.xenproject.org; Fri, 02 Jun 2023 00:48:54 +0000 Received: from NAM04-BN8-obe.outbound.protection.outlook.com (mail-bn8nam04on20628.outbound.protection.outlook.com [2a01:111:f400:7e8d::628]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 3ee731f0-00df-11ee-b231-6b7b168915f2; Fri, 02 Jun 2023 02:48:53 +0200 (CEST) Received: from DS7PR03CA0085.namprd03.prod.outlook.com (2603:10b6:5:3bb::30) by PH8PR12MB6889.namprd12.prod.outlook.com (2603:10b6:510:1c9::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.23; Fri, 2 Jun 2023 00:48:49 +0000 Received: from DM6NAM11FT061.eop-nam11.prod.protection.outlook.com (2603:10b6:5:3bb:cafe::82) by DS7PR03CA0085.outlook.office365.com (2603:10b6:5:3bb::30) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.23 via Frontend Transport; Fri, 2 Jun 2023 00:48:49 +0000 Received: from SATLEXMB04.amd.com (165.204.84.17) by DM6NAM11FT061.mail.protection.outlook.com (10.13.173.138) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6455.24 via Frontend Transport; Fri, 2 Jun 2023 00:48:48 +0000 Received: from SATLEXMB07.amd.com (10.181.41.45) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Thu, 1 Jun 2023 19:48:48 -0500 Received: from SATLEXMB04.amd.com (10.181.40.145) by SATLEXMB07.amd.com (10.181.41.45) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Thu, 1 Jun 2023 17:48:47 -0700 Received: from xsjfnuv50.xilinx.com (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server id 15.1.2375.34 via Frontend Transport; Thu, 1 Jun 2023 19:48:47 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 3ee731f0-00df-11ee-b231-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=kDp8mpEodeIBrQv5uBUhgQQwxa/WVdkpPbP8B1ILsrMpnzTN56rC1O3W5wJOt+zKji2JgUce1Io0Jl2aL/mGusxvfTdHBT9+fclvMIp/1ml1WwDiB8njpYXtC3RLdXHlk8qnSnpQM0PxDvVSmuoFgv+llilZZOXyAtLynbNcG3lq2mpddIdxfsWY2rIiAT6IXjkSel6EyJ8T8lIVLvMfE5aOiS25i1Ik6NiOurFUw74jEnY01bbdgtt4Coy+rdpW9rU3DVJTzJtAjy2YWCDmTbo+Dwt0zedoHR9JkznDuX3JPcbHTWyG/2kE9LNCQfyYE51Rd5hnvpAWbmA49y1wYQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=W+0OsyLFwBeugffTn17WHc7QEkMtS0NECm0n9tJPKNc=; b=YVO01YQOamasTgM5JrGSkpf5v6s6Re8T0F09UxQKN6WE+IpuDZyAgD9Ju6RsU1F8T+DHjjros9PYDySFJPiquiz1e8G+kRcwGrwKNE+OvvJL2WSttqSY6yCqIFGAKV6As6nSuFcTvwf1bo06KjRhWjYKW+2wvh6J2pkErtb2U1KAkL4kUh6IdpTuydGPDhMmR7/aKUYqLi/cwAMYpARCCbAvPrGqIOIVJR9idACUAL379dwkcOXgQ+Lh0Amubt0AtSz/kqIfj8oFnj5pLVb/3ybF4NS0M2ltJwFJjPzfYbQsyAPzpgAQbUyX/LMd0pXjxh8jxqAsWGdm/krJNXPwOg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=W+0OsyLFwBeugffTn17WHc7QEkMtS0NECm0n9tJPKNc=; b=bSqu9jRShA3zWj6FbDpSgQ3NPP0Tcpw/x+kQhL/xFseZlZc+3tleitDn4hhe9NvQs32IKQM9FT3So5a5DGq8pVDDYSfl3y62t0S5VbSxQNFGxKR7Kl8JwY2Kcfem8YYjMJQhr/CD1w47ZgyLxnOn1MStIF/PKKX3lgkhZ1pBuYw= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C From: Vikram Garhwal To: CC: , , , , Julien Grall Subject: [XEN][PATCH v7 04/19] common/device_tree: change __unflatten_device_tree() type Date: Thu, 1 Jun 2023 17:48:09 -0700 Message-ID: <20230602004824.20731-5-vikram.garhwal@amd.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20230602004824.20731-1-vikram.garhwal@amd.com> References: <20230602004824.20731-1-vikram.garhwal@amd.com> MIME-Version: 1.0 Content-Type: text/plain X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DM6NAM11FT061:EE_|PH8PR12MB6889:EE_ X-MS-Office365-Filtering-Correlation-Id: b56a2613-955e-4a5f-50b5-08db63032091 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 9xnPtvt7yJGOkewHJbN0eNRxrBjfq0XMuUvtmLtpixNcLupZRE4LYdidNbWhylYmuNAsfJf6asnb56picysXjYsCHkK/k9bmrIWwGJsto0dXiIUZ0gNV7Loe94qRZ2k99dqhYhOXDt01HIQMHUXOl8CcTawB58mB34f3w9122DWKrf2RbHMlkOmNH8xsSTpF4I3uflVP/pT27Gwqf8Ak7tGfWopw5AmKJSCvF8O5jbiWuRnwwzDRp1hOTeqMjSn6t0BdODvUoFIB2WXKVRRxyCA1kzgqa5/vJgdcMK3/t1omiAXwHANnOSef2MQVLmJ9CVJxfs4GkzbeG2T1B89f53P+ppffR3hpDwgdbLQ3BVQBtXjW/YClMZiMzscsy1VlG9h2xvpTKxDFBBKI15O2dg7KRtozHEE5pB2jGX6boNXj8T0XkPZ5Bpz+eAWD9nJJglS7rguDWqvw8ptpUhlLp4KpPuCkeoIQ823pxThMnwMcYwjKzaq5UH9Xl+jJmsvwLwx0I5o0P0mtg24xNoh1L6K9xwL+GVfldTIxwFBoUGBA9opps4dsZktVXiY3bW8KGqyifKiESew2zcKM05173oLllT9wRJAW/GzEbPYcPGGWUl7IFhCbYqeVqHaCvZk711/6LbGc1XQu//DJz1/bOtwr3YiD0Ixa05C90S2TrF/Knwpw1yR1cZWQdVLyH7VOjSdByWVfBYc9ksE7U6aYVU35iCCkFfyt815RxpfK58da9O2FvaRWKNe5vJ4OvCC2Y74KvHntCMj4Lg+kh6YIdw== X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(396003)(39860400002)(136003)(376002)(346002)(451199021)(40470700004)(46966006)(36840700001)(356005)(40460700003)(2616005)(6916009)(4326008)(70586007)(70206006)(81166007)(26005)(1076003)(54906003)(186003)(82740400003)(40480700001)(2906002)(41300700001)(5660300002)(478600001)(82310400005)(44832011)(36860700001)(47076005)(6666004)(36756003)(83380400001)(8676002)(316002)(8936002)(86362001)(426003)(336012)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Jun 2023 00:48:48.4721 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: b56a2613-955e-4a5f-50b5-08db63032091 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com] X-MS-Exchange-CrossTenant-AuthSource: DM6NAM11FT061.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH8PR12MB6889 Following changes are done to __unflatten_device_tree(): 1. __unflatten_device_tree() is renamed to unflatten_device_tree(). 2. Remove __init and static function type. Signed-off-by: Vikram Garhwal Reviewed-by: Henry Wang --- xen/common/device_tree.c | 9 ++++----- xen/include/xen/device_tree.h | 5 +++++ 2 files changed, 9 insertions(+), 5 deletions(-) diff --git a/xen/common/device_tree.c b/xen/common/device_tree.c index bbdab07596..16b4b4e946 100644 --- a/xen/common/device_tree.c +++ b/xen/common/device_tree.c @@ -2083,7 +2083,7 @@ static unsigned long unflatten_dt_node(const void *fdt, } /** - * __unflatten_device_tree - create tree of device_nodes from flat blob + * unflatten_device_tree - create tree of device_nodes from flat blob * * unflattens a device-tree, creating the * tree of struct device_node. It also fills the "name" and "type" @@ -2092,8 +2092,7 @@ static unsigned long unflatten_dt_node(const void *fdt, * @fdt: The fdt to expand * @mynodes: The device_node tree created by the call */ -static int __init __unflatten_device_tree(const void *fdt, - struct dt_device_node **mynodes) +int unflatten_device_tree(const void *fdt, struct dt_device_node **mynodes) { unsigned long start, mem, size; struct dt_device_node **allnextp = mynodes; @@ -2230,10 +2229,10 @@ dt_find_interrupt_controller(const struct dt_device_match *matches) void __init dt_unflatten_host_device_tree(void) { - int error = __unflatten_device_tree(device_tree_flattened, &dt_host); + int error = unflatten_device_tree(device_tree_flattened, &dt_host); if ( error ) - panic("__unflatten_device_tree failed with error %d\n", error); + panic("unflatten_device_tree failed with error %d\n", error); dt_alias_scan(); } diff --git a/xen/include/xen/device_tree.h b/xen/include/xen/device_tree.h index c2eada7489..2c35c0d391 100644 --- a/xen/include/xen/device_tree.h +++ b/xen/include/xen/device_tree.h @@ -178,6 +178,11 @@ int device_tree_for_each_node(const void *fdt, int node, */ void dt_unflatten_host_device_tree(void); +/** + * unflatten any device tree. + */ +int unflatten_device_tree(const void *fdt, struct dt_device_node **mynodes); + /** * IRQ translation callback * TODO: For the moment we assume that we only have ONE -- 2.17.1 From xen-devel-bounces@lists.xenproject.org Fri Jun 02 00:48:58 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 02 Jun 2023 00:48:58 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542789.847082 (Exim 4.92) (envelope-from ) id 1q4syQ-0001HR-5O; Fri, 02 Jun 2023 00:48:58 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542789.847082; Fri, 02 Jun 2023 00:48:58 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4syQ-0001HE-2U; Fri, 02 Jun 2023 00:48:58 +0000 Received: by outflank-mailman (input) for mailman id 542789; Fri, 02 Jun 2023 00:48:56 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4syO-0000if-FO for xen-devel@lists.xenproject.org; Fri, 02 Jun 2023 00:48:56 +0000 Received: from NAM12-BN8-obe.outbound.protection.outlook.com (mail-bn8nam12on20615.outbound.protection.outlook.com [2a01:111:f400:fe5b::615]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 40386ace-00df-11ee-b231-6b7b168915f2; Fri, 02 Jun 2023 02:48:55 +0200 (CEST) Received: from MW4PR04CA0053.namprd04.prod.outlook.com (2603:10b6:303:6a::28) by IA0PR12MB8352.namprd12.prod.outlook.com (2603:10b6:208:3dd::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.24; Fri, 2 Jun 2023 00:48:52 +0000 Received: from CO1NAM11FT088.eop-nam11.prod.protection.outlook.com (2603:10b6:303:6a:cafe::69) by MW4PR04CA0053.outlook.office365.com (2603:10b6:303:6a::28) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.23 via Frontend Transport; Fri, 2 Jun 2023 00:48:52 +0000 Received: from SATLEXMB03.amd.com (165.204.84.17) by CO1NAM11FT088.mail.protection.outlook.com (10.13.175.131) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6455.24 via Frontend Transport; Fri, 2 Jun 2023 00:48:52 +0000 Received: from SATLEXMB07.amd.com (10.181.41.45) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Thu, 1 Jun 2023 19:48:51 -0500 Received: from SATLEXMB04.amd.com (10.181.40.145) by SATLEXMB07.amd.com (10.181.41.45) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Thu, 1 Jun 2023 17:48:51 -0700 Received: from xsjfnuv50.xilinx.com (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server id 15.1.2375.34 via Frontend Transport; Thu, 1 Jun 2023 19:48:51 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 40386ace-00df-11ee-b231-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=U11Fk2KsMWo+2lPhDY3uk8uCFVOius0ag6npTVCUO6xaQlpIMA16caiJetPB6TWUJW4QuMSRHD+JixfLjGkJ3P7l0keSvCEfC7HrJ3TEYgV/CsL+MlaT7vJnh/OULoeMxlhAucPDT151OT9lE1GfXbb1vt0HpTkliKVuw9N1NHqF4JL+M4x4MJLuKQG013wrO/N14IlVpAp9CK5WxQZug8LBYK0l5eX2sdXA9oMAm+ZgSRNehZSYqWmSWcStmEjv0JhtHsg8nvtM2c4fZzGnxVX7j4x43+280/wLJfEodtlT5ronu8Ff1jFoCxqBPzoGSWJbFi+MD2un+74mce5/mA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=KBFUC7bBO53GfeOJbg8EGgk2RkSd5j7Jb685AIjqUEE=; b=Rz8eoGSljynJbzelfqgzuA+n6xhqXDeeSYxNXAl43vLNBE19ZrHsPqnn1on7CtRoAAwGb9CDXsrBsPs1BVRArnxjelRbnWGHEcb0u0c0Xf0hhG7Sin+6I8HszWgUM81H7o5P6G4Iyw/1X7WSF9B85IOSXqjyCWi003++i+ftV6pn9QmJw4FZyTAZ8hIGOr8dXmwLZ3c0KIYhT1QQKY4bDnQ3CFo00h8jp1IbsC2DCkaROBq4wuCvaNFBJmC2TnpS/jzT5n6nJhDvU3lsU+EMzpvml6E9O4wz0wfq/zlYwifUE5wJdYS0+tEThIwtr3AM54GVnB6VRWiJ3pjJe3Bn9A== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=KBFUC7bBO53GfeOJbg8EGgk2RkSd5j7Jb685AIjqUEE=; b=lihDbixGeS3gsx7i09AqY2b5fcCJeEStvF9p+8oqaa1kWratGo//P8rPjRbx9UPcfBkpuuQLwFT5gndSrRGB5/L1eWijftnnomxnwTLDVp5+B6hMNcDfqJWj1HU1IZri1f97ywNIPTV33BBxRPTskVJDIMjIjWNfq647LGPorp4= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C From: Vikram Garhwal To: CC: , , , , Julien Grall Subject: [XEN][PATCH v7 08/19] xen/device-tree: Add device_tree_find_node_by_path() to find nodes in device tree Date: Thu, 1 Jun 2023 17:48:13 -0700 Message-ID: <20230602004824.20731-9-vikram.garhwal@amd.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20230602004824.20731-1-vikram.garhwal@amd.com> References: <20230602004824.20731-1-vikram.garhwal@amd.com> MIME-Version: 1.0 Content-Type: text/plain X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO1NAM11FT088:EE_|IA0PR12MB8352:EE_ X-MS-Office365-Filtering-Correlation-Id: bb67910d-c2c0-4766-9edc-08db63032312 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: Efkh05TJGh+0BR4M5S+17dbeAuR5r3XtOlHBXKsDvg2DvwMC8IvjkpjQk0wIu+vougJTc8/68n+2cc5QjJo7TElMae578b5LN0j1WYpqCAz6SrOlKERD9YFayQ9PJnu9NALcYuEJF4XJOKIHvw7pKeoeZ3v75WV6e2GNkY15xvorsELUJG4E4v21hNPnYTAtAqcJc3sPjK1GsCD69LeJUal3fjYjvQT0xZrQkgwUWB9CKoZCFsfEHVGaP4Xa4ITo6E/YCZESUdtrR5KPheOHWCnmIUdmSwmpdzSN9CNSS09Mw5y7AODrs3lNLotIyeS+q3EG1PhElf4TQN/YVv2OKO3r+zVViSdz82VDSSjmI1+v6GvzroBVIS1O0Ud7YaFSyUKm3L2jcB1cR2DOnkYMCcSyT58xPuwmdPiwF1nR+/tEfEBqdKeRTsrJdUwyJF9pSuU/XCb6LhBKwU7I0FC2jNprV/zpXdGVyzWOjb4iTv6TEoRU/ZFEK05A/Wr07yg3lEbsigH5wECdUqygymng3MU3KY8aC6y7A4LxlDRsy2l8Ui+bmkpUzFi8PWgjk2fctmAoGlfUd7SBqSUVV2ObpdcTwGH0qbrphk6Bh/wruZDy3RyjKqo9HIt6ILVRSCmYxeExu4ODooFfAFjGzMGORBPFSWkyX1YljI1L8muu73p4+KIZJfosrtmqc7/Y918v1eBYzc5p3Ev8yXgihprGMXWY3tE84S8T3HAUWPsu/LrdozJWzY0bOPz18o3mWZyAJPWSRAG0ZWh5+fGYxvP7eL2zgANC8IkF/9vEoLMJHVU= X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(396003)(136003)(376002)(346002)(451199021)(46966006)(40470700004)(36840700001)(40460700003)(1076003)(186003)(26005)(6666004)(47076005)(36860700001)(2616005)(83380400001)(41300700001)(336012)(426003)(316002)(2906002)(44832011)(5660300002)(8936002)(8676002)(478600001)(70206006)(70586007)(6916009)(54906003)(86362001)(40480700001)(36756003)(4326008)(82740400003)(81166007)(82310400005)(356005)(37363002)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Jun 2023 00:48:52.5969 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: bb67910d-c2c0-4766-9edc-08db63032312 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com] X-MS-Exchange-CrossTenant-AuthSource: CO1NAM11FT088.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: IA0PR12MB8352 Add device_tree_find_node_by_path() to find a matching node with path for a dt_device_node. Reason behind this function: Each time overlay nodes are added using .dtbo, a new fdt(memcpy of device_tree_flattened) is created and updated with overlay nodes. This updated fdt is further unflattened to a dt_host_new. Next, we need to find the overlay nodes in dt_host_new, find the overlay node's parent in dt_host and add the nodes as child under their parent in the dt_host. Thus we need this function to search for node in different unflattened device trees. Also, make dt_find_node_by_path() static inline. Signed-off-by: Vikram Garhwal --- Changes from v6: Rename "dt_node" to "from" --- xen/common/device_tree.c | 6 ++++-- xen/include/xen/device_tree.h | 18 ++++++++++++++++-- 2 files changed, 20 insertions(+), 4 deletions(-) diff --git a/xen/common/device_tree.c b/xen/common/device_tree.c index 16b4b4e946..c5250a1644 100644 --- a/xen/common/device_tree.c +++ b/xen/common/device_tree.c @@ -358,11 +358,13 @@ struct dt_device_node *dt_find_node_by_type(struct dt_device_node *from, return np; } -struct dt_device_node *dt_find_node_by_path(const char *path) +struct dt_device_node * + device_tree_find_node_by_path(struct dt_device_node *from, + const char *path) { struct dt_device_node *np; - dt_for_each_device_node(dt_host, np) + dt_for_each_device_node(from, np) if ( np->full_name && (dt_node_cmp(np->full_name, path) == 0) ) break; diff --git a/xen/include/xen/device_tree.h b/xen/include/xen/device_tree.h index 2c35c0d391..e239f7de26 100644 --- a/xen/include/xen/device_tree.h +++ b/xen/include/xen/device_tree.h @@ -561,13 +561,27 @@ struct dt_device_node *dt_find_node_by_type(struct dt_device_node *from, struct dt_device_node *dt_find_node_by_alias(const char *alias); /** - * dt_find_node_by_path - Find a node matching a full DT path + * device_tree_find_node_by_path - Generic function to find a node matching the + * full DT path for any given unflatten device tree + * @from: The device tree node to start searching from * @path: The full path to match * * Returns a node pointer. */ -struct dt_device_node *dt_find_node_by_path(const char *path); +struct dt_device_node * + device_tree_find_node_by_path(struct dt_device_node *from, + const char *path); +/** + * dt_find_node_by_path - Find a node matching a full DT path in dt_host + * @path: The full path to match + * + * Returns a node pointer. + */ +static inline struct dt_device_node *dt_find_node_by_path(const char *path) +{ + return device_tree_find_node_by_path(dt_host, path); +} /** * dt_find_node_by_gpath - Same as dt_find_node_by_path but retrieve the -- 2.17.1 From xen-devel-bounces@lists.xenproject.org Fri Jun 02 00:48:58 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 02 Jun 2023 00:48:58 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542790.847087 (Exim 4.92) (envelope-from ) id 1q4syQ-0001KM-Gb; Fri, 02 Jun 2023 00:48:58 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542790.847087; Fri, 02 Jun 2023 00:48:58 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4syQ-0001Jl-Ak; Fri, 02 Jun 2023 00:48:58 +0000 Received: by outflank-mailman (input) for mailman id 542790; Fri, 02 Jun 2023 00:48:56 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4syO-00018B-FQ for xen-devel@lists.xenproject.org; Fri, 02 Jun 2023 00:48:56 +0000 Received: from NAM12-DM6-obe.outbound.protection.outlook.com (mail-dm6nam12on2061b.outbound.protection.outlook.com [2a01:111:f400:fe59::61b]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 3e527222-00df-11ee-8611-37d641c3527e; Fri, 02 Jun 2023 02:48:52 +0200 (CEST) Received: from MW4P222CA0021.NAMP222.PROD.OUTLOOK.COM (2603:10b6:303:114::26) by IA1PR12MB6138.namprd12.prod.outlook.com (2603:10b6:208:3ea::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.23; Fri, 2 Jun 2023 00:48:48 +0000 Received: from CO1NAM11FT003.eop-nam11.prod.protection.outlook.com (2603:10b6:303:114:cafe::9c) by MW4P222CA0021.outlook.office365.com (2603:10b6:303:114::26) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.23 via Frontend Transport; Fri, 2 Jun 2023 00:48:47 +0000 Received: from SATLEXMB03.amd.com (165.204.84.17) by CO1NAM11FT003.mail.protection.outlook.com (10.13.175.93) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6455.24 via Frontend Transport; Fri, 2 Jun 2023 00:48:47 +0000 Received: from SATLEXMB07.amd.com (10.181.41.45) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Thu, 1 Jun 2023 19:48:47 -0500 Received: from SATLEXMB04.amd.com (10.181.40.145) by SATLEXMB07.amd.com (10.181.41.45) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Thu, 1 Jun 2023 17:48:46 -0700 Received: from xsjfnuv50.xilinx.com (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server id 15.1.2375.34 via Frontend Transport; Thu, 1 Jun 2023 19:48:46 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 3e527222-00df-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=lyEmD+3iU4MWJbXUNb41RHbbwjQK17goTU4yO56nF84wYsaxIaFsmXIr4f07uJTGOtFuCSKnjEg1okwCLqg5MgsjriprcuzAGB3NY60Ve5EC5bEzUohWgImLf+9QVwLvLEU7e0N7KB4CIwOuFaH+bOg4ssWS6id/6UgElVaKz7JOLGRyZ4XzQxvmd2Qv4RkWA3IKSxHhZ+ad5IIGm5b0UjEkY5DP/YU1butMYBGgmx2SDK8hC6r/fUWOSIxvWURJF7tFv3eByXJKkZEsmwSOZ98+qZn2gkHAty4jeuTU7/+LJdPD8MTjo8cXCJl+FZPsoWOGpcAUDtPyLaVLwHtm2Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=CQRwLgkTtNFvjNjXMq1Mf9/HDNmOjTI+SOtwexM1tMs=; b=TuaIC6HRWCaMM4dq19wY3Pu0zKG8AH4cLyjGPbUYXEyuBmQP3W1Si9jbNU932RJvWfn4p9vJK+dk4dOCXS9m4qMub4whAPVlON4KLVIKpjJCJlD3U3G9Mgqbpt4VPo+SIL+pL7Tm84+14cHrJnao8AVh5CfF8CNXz/uDerAvlYEsQDjhwHT6lno8kG7S8Dhqq0Yuz3LNwNhbhWbLjq8I/NUqZ3D9ySo2mL5vLpnpUju2DkuoACsDcTFQqEm/3hS93T9UXDaudloE4xI9xYc4RuDWNAveCM4Lg9qKXW1vW5eqVGFCc1ykhzK+E/9jf24XiAt3q+UIAFfxq4u2C0ANHw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=CQRwLgkTtNFvjNjXMq1Mf9/HDNmOjTI+SOtwexM1tMs=; b=mn5vfITVaXuTx1JZMnWLoHCMrJQmV7RgV5kMXBzyuApOQs0b1N6x+G0io8q8qs8hu2V6ln868BR1mQ7EUW0dGV4cHY04O47sHZIvbiZ/ErUnzyptaNv6H0m2IzZYyNFkwqF0vZeiHqJriw4DX6o5UaKz0hWvxxBCD046ufAMMN8= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C From: Vikram Garhwal To: CC: , , , , Julien Grall , Bertrand Marquis , Volodymyr Babchuk Subject: [XEN][PATCH v7 03/19] xen/arm/device: Remove __init from function type Date: Thu, 1 Jun 2023 17:48:08 -0700 Message-ID: <20230602004824.20731-4-vikram.garhwal@amd.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20230602004824.20731-1-vikram.garhwal@amd.com> References: <20230602004824.20731-1-vikram.garhwal@amd.com> MIME-Version: 1.0 Content-Type: text/plain X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO1NAM11FT003:EE_|IA1PR12MB6138:EE_ X-MS-Office365-Filtering-Correlation-Id: d0e4d7fd-cc80-429b-ac43-08db63032037 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 4hVx4MuVlxyQLt6wFHSaBFd3TqN2I0IRWS38cPdBjXh5MiDNzrn7FfXn5tkenY0ehW/Z86rDvuMW6JNtlD8z9k32g8md74vtKMxRtSt8mXYfkO2zfjAhpUIVvNEq/03NCF6IuVvKJGHdXgfqPK1DwOKkK3ZWXsb3MfSJFF6ZtvIj/uS8EF+5BIBtU8insb7NnbCiMAHG6mfBi5Y1BYvTJLw5SA3pIVO3Zz1zK9YRkzmrZ09iuJBSvWXO78/jU8FFX9dmeubqbmALfwkK2VKg9Ehnpax+S0gGpFiObUmDK0g30vVmlV3Fs9hvWGMS8vJqtJOwkY7AuPaPEZ/cMy+OXWcw7YRyUVKVkKRsS+ATeBrLIbqUvQkEO3JiqVYakh01z5NYMHZXgoUjgONUgutZTiFenU6cx/t1VTjrIa64FzsNii4SojJbWz+OaFSREkEPHvTNy1eBPlPK2an4KV4IEZk+Ei4T3UA2/47lYcldL71VJ3zd2LdhDdKH/tUTTdNzgQeIyN8QBckh6fijpYPfyM1d8eLsbuRzuuqTtlkeg6FeiO+yGvn0qcJjaWiHAQEPJcPeVX+FTUeFvAFqd/S999FnYSZsXh+bRrfNZu+pog/VFcOZ4J/KwqjRd8u6uAnx0nxpIhUnTFuqeKxgTr5cPl8z3FodWphZ7HeBEURxSQf6AT//cF8cgJ2ZBh4fcd/Lr4Rr1qsfr1YxDjFLcNNidyRYEW53lBRqLtD0ZNKln6Yl9CUe0AIKG4HPRy2AruJHhYaxCPeEaqXeXyYUulxkuA== X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(396003)(39860400002)(136003)(376002)(346002)(451199021)(40470700004)(46966006)(36840700001)(356005)(40460700003)(2616005)(6916009)(4326008)(70586007)(70206006)(81166007)(26005)(1076003)(54906003)(186003)(82740400003)(40480700001)(2906002)(41300700001)(30864003)(5660300002)(478600001)(82310400005)(44832011)(36860700001)(47076005)(6666004)(36756003)(83380400001)(8676002)(316002)(8936002)(86362001)(426003)(336012)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Jun 2023 00:48:47.8222 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: d0e4d7fd-cc80-429b-ac43-08db63032037 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com] X-MS-Exchange-CrossTenant-AuthSource: CO1NAM11FT003.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: IA1PR12MB6138 Remove __init from following function to access during runtime: 1. map_irq_to_domain() 2. handle_device_interrupts() 3. map_range_to_domain() 4. unflatten_dt_node() Move map_irq_to_domain() prototype from domain_build.h to setup.h. To avoid breaking the build, following changes are also done: 1. Move map_irq_to_domain(), handle_device_interrupts() and map_range_to_domain() to device.c. After removing __init type, these functions are not specific to domain building, so moving them out of domain_build.c to device.c. 2. Remove static type from handle_device_interrupt(). Overall, these changes are done to support the dynamic programming of a nodes where an overlay node will be added to fdt and unflattened node will be added to dt_host. Furthermore, IRQ and mmio mapping will be done for the added node. Signed-off-by: Vikram Garhwal Reviewed-by: Michal Orzel --- xen/arch/arm/device.c | 149 ++++++++++++++++++++++++ xen/arch/arm/domain_build.c | 147 ----------------------- xen/arch/arm/include/asm/domain_build.h | 2 - xen/arch/arm/include/asm/setup.h | 6 + xen/common/device_tree.c | 12 +- 5 files changed, 161 insertions(+), 155 deletions(-) diff --git a/xen/arch/arm/device.c b/xen/arch/arm/device.c index ca8539dee5..1652d765bd 100644 --- a/xen/arch/arm/device.c +++ b/xen/arch/arm/device.c @@ -9,8 +9,10 @@ */ #include +#include #include #include +#include #include extern const struct device_desc _sdevice[], _edevice[]; @@ -75,6 +77,153 @@ enum device_class device_get_class(const struct dt_device_node *dev) return DEVICE_UNKNOWN; } +int map_irq_to_domain(struct domain *d, unsigned int irq, + bool need_mapping, const char *devname) +{ + int res; + + res = irq_permit_access(d, irq); + if ( res ) + { + printk(XENLOG_ERR "Unable to permit to %pd access to IRQ %u\n", d, irq); + return res; + } + + if ( need_mapping ) + { + /* + * Checking the return of vgic_reserve_virq is not + * necessary. It should not fail except when we try to map + * the IRQ twice. This can legitimately happen if the IRQ is shared + */ + vgic_reserve_virq(d, irq); + + res = route_irq_to_guest(d, irq, irq, devname); + if ( res < 0 ) + { + printk(XENLOG_ERR "Unable to map IRQ%u to %pd\n", irq, d); + return res; + } + } + + dt_dprintk(" - IRQ: %u\n", irq); + return 0; +} + +int map_range_to_domain(const struct dt_device_node *dev, + uint64_t addr, uint64_t len, void *data) +{ + struct map_range_data *mr_data = data; + struct domain *d = mr_data->d; + int res; + + if ( (addr != (paddr_t)addr) || (((paddr_t)~0 - addr) < len) ) + { + printk(XENLOG_ERR "%s: [0x%"PRIx64", 0x%"PRIx64"] exceeds the maximum allowed PA width (%u bits)", + dt_node_full_name(dev), addr, (addr + len), PADDR_BITS); + return -ERANGE; + } + + /* + * reserved-memory regions are RAM carved out for a special purpose. + * They are not MMIO and therefore a domain should not be able to + * manage them via the IOMEM interface. + */ + if ( strncasecmp(dt_node_full_name(dev), "/reserved-memory/", + strlen("/reserved-memory/")) != 0 ) + { + res = iomem_permit_access(d, paddr_to_pfn(addr), + paddr_to_pfn(PAGE_ALIGN(addr + len - 1))); + if ( res ) + { + printk(XENLOG_ERR "Unable to permit to dom%d access to" + " 0x%"PRIx64" - 0x%"PRIx64"\n", + d->domain_id, + addr & PAGE_MASK, PAGE_ALIGN(addr + len) - 1); + return res; + } + } + + if ( !mr_data->skip_mapping ) + { + res = map_regions_p2mt(d, + gaddr_to_gfn(addr), + PFN_UP(len), + maddr_to_mfn(addr), + mr_data->p2mt); + + if ( res < 0 ) + { + printk(XENLOG_ERR "Unable to map 0x%"PRIx64 + " - 0x%"PRIx64" in domain %d\n", + addr & PAGE_MASK, PAGE_ALIGN(addr + len) - 1, + d->domain_id); + return res; + } + } + + dt_dprintk(" - MMIO: %010"PRIx64" - %010"PRIx64" P2MType=%x\n", + addr, addr + len, mr_data->p2mt); + + return 0; +} + +/* + * handle_device_interrupts retrieves the interrupts configuration from + * a device tree node and maps those interrupts to the target domain. + * + * Returns: + * < 0 error + * 0 success + */ +int handle_device_interrupts(struct domain *d, + struct dt_device_node *dev, + bool need_mapping) +{ + unsigned int i, nirq; + int res; + struct dt_raw_irq rirq; + + nirq = dt_number_of_irq(dev); + + /* Give permission and map IRQs */ + for ( i = 0; i < nirq; i++ ) + { + res = dt_device_get_raw_irq(dev, i, &rirq); + if ( res ) + { + printk(XENLOG_ERR "Unable to retrieve irq %u for %s\n", + i, dt_node_full_name(dev)); + return res; + } + + /* + * Don't map IRQ that have no physical meaning + * ie: IRQ whose controller is not the GIC + */ + if ( rirq.controller != dt_interrupt_controller ) + { + dt_dprintk("irq %u not connected to primary controller. Connected to %s\n", + i, dt_node_full_name(rirq.controller)); + continue; + } + + res = platform_get_irq(dev, i); + if ( res < 0 ) + { + printk(XENLOG_ERR "Unable to get irq %u for %s\n", + i, dt_node_full_name(dev)); + return res; + } + + res = map_irq_to_domain(d, res, need_mapping, dt_node_name(dev)); + if ( res ) + return res; + } + + return 0; +} + /* * Local variables: * mode: C diff --git a/xen/arch/arm/domain_build.c b/xen/arch/arm/domain_build.c index 3f4558ade6..8bcd73dfcf 100644 --- a/xen/arch/arm/domain_build.c +++ b/xen/arch/arm/domain_build.c @@ -2271,39 +2271,6 @@ int __init make_chosen_node(const struct kernel_info *kinfo) return res; } -int __init map_irq_to_domain(struct domain *d, unsigned int irq, - bool need_mapping, const char *devname) -{ - int res; - - res = irq_permit_access(d, irq); - if ( res ) - { - printk(XENLOG_ERR "Unable to permit to %pd access to IRQ %u\n", d, irq); - return res; - } - - if ( need_mapping ) - { - /* - * Checking the return of vgic_reserve_virq is not - * necessary. It should not fail except when we try to map - * the IRQ twice. This can legitimately happen if the IRQ is shared - */ - vgic_reserve_virq(d, irq); - - res = route_irq_to_guest(d, irq, irq, devname); - if ( res < 0 ) - { - printk(XENLOG_ERR "Unable to map IRQ%u to %pd\n", irq, d); - return res; - } - } - - dt_dprintk(" - IRQ: %u\n", irq); - return 0; -} - static int __init map_dt_irq_to_domain(const struct dt_device_node *dev, const struct dt_irq *dt_irq, void *data) @@ -2333,64 +2300,6 @@ static int __init map_dt_irq_to_domain(const struct dt_device_node *dev, return res; } -int __init map_range_to_domain(const struct dt_device_node *dev, - uint64_t addr, uint64_t len, void *data) -{ - struct map_range_data *mr_data = data; - struct domain *d = mr_data->d; - int res; - - if ( (addr != (paddr_t)addr) || (((paddr_t)~0 - addr) < len) ) - { - printk(XENLOG_ERR "%s: [0x%"PRIx64", 0x%"PRIx64"] exceeds the maximum allowed PA width (%u bits)", - dt_node_full_name(dev), addr, (addr + len), PADDR_BITS); - return -ERANGE; - } - - /* - * reserved-memory regions are RAM carved out for a special purpose. - * They are not MMIO and therefore a domain should not be able to - * manage them via the IOMEM interface. - */ - if ( strncasecmp(dt_node_full_name(dev), "/reserved-memory/", - strlen("/reserved-memory/")) != 0 ) - { - res = iomem_permit_access(d, paddr_to_pfn(addr), - paddr_to_pfn(PAGE_ALIGN(addr + len - 1))); - if ( res ) - { - printk(XENLOG_ERR "Unable to permit to dom%d access to" - " 0x%"PRIx64" - 0x%"PRIx64"\n", - d->domain_id, - addr & PAGE_MASK, PAGE_ALIGN(addr + len) - 1); - return res; - } - } - - if ( !mr_data->skip_mapping ) - { - res = map_regions_p2mt(d, - gaddr_to_gfn(addr), - PFN_UP(len), - maddr_to_mfn(addr), - mr_data->p2mt); - - if ( res < 0 ) - { - printk(XENLOG_ERR "Unable to map 0x%"PRIx64 - " - 0x%"PRIx64" in domain %d\n", - addr & PAGE_MASK, PAGE_ALIGN(addr + len) - 1, - d->domain_id); - return res; - } - } - - dt_dprintk(" - MMIO: %010"PRIx64" - %010"PRIx64" P2MType=%x\n", - addr, addr + len, mr_data->p2mt); - - return 0; -} - /* * For a node which describes a discoverable bus (such as a PCI bus) * then we may need to perform additional mappings in order to make @@ -2418,62 +2327,6 @@ static int __init map_device_children(const struct dt_device_node *dev, return 0; } -/* - * handle_device_interrupts retrieves the interrupts configuration from - * a device tree node and maps those interrupts to the target domain. - * - * Returns: - * < 0 error - * 0 success - */ -static int __init handle_device_interrupts(struct domain *d, - struct dt_device_node *dev, - bool need_mapping) -{ - unsigned int i, nirq; - int res; - struct dt_raw_irq rirq; - - nirq = dt_number_of_irq(dev); - - /* Give permission and map IRQs */ - for ( i = 0; i < nirq; i++ ) - { - res = dt_device_get_raw_irq(dev, i, &rirq); - if ( res ) - { - printk(XENLOG_ERR "Unable to retrieve irq %u for %s\n", - i, dt_node_full_name(dev)); - return res; - } - - /* - * Don't map IRQ that have no physical meaning - * ie: IRQ whose controller is not the GIC - */ - if ( rirq.controller != dt_interrupt_controller ) - { - dt_dprintk("irq %u not connected to primary controller. Connected to %s\n", - i, dt_node_full_name(rirq.controller)); - continue; - } - - res = platform_get_irq(dev, i); - if ( res < 0 ) - { - printk(XENLOG_ERR "Unable to get irq %u for %s\n", - i, dt_node_full_name(dev)); - return res; - } - - res = map_irq_to_domain(d, res, need_mapping, dt_node_name(dev)); - if ( res ) - return res; - } - - return 0; -} - /* * For a given device node: * - Give permission to the guest to manage IRQ and MMIO range diff --git a/xen/arch/arm/include/asm/domain_build.h b/xen/arch/arm/include/asm/domain_build.h index 34ceddc995..b9329c9ee0 100644 --- a/xen/arch/arm/include/asm/domain_build.h +++ b/xen/arch/arm/include/asm/domain_build.h @@ -4,8 +4,6 @@ #include #include -int map_irq_to_domain(struct domain *d, unsigned int irq, - bool need_mapping, const char *devname); int make_chosen_node(const struct kernel_info *kinfo); void evtchn_allocate(struct domain *d); diff --git a/xen/arch/arm/include/asm/setup.h b/xen/arch/arm/include/asm/setup.h index 19dc637d55..f532332d6c 100644 --- a/xen/arch/arm/include/asm/setup.h +++ b/xen/arch/arm/include/asm/setup.h @@ -165,9 +165,15 @@ void device_tree_get_reg(const __be32 **cell, uint32_t address_cells, u32 device_tree_get_u32(const void *fdt, int node, const char *prop_name, u32 dflt); +int handle_device_interrupts(struct domain *d, struct dt_device_node *dev, + bool need_mapping); + int map_range_to_domain(const struct dt_device_node *dev, uint64_t addr, uint64_t len, void *data); +int map_irq_to_domain(struct domain *d, unsigned int irq, + bool need_mapping, const char *devname); + extern lpae_t boot_pgtable[XEN_PT_LPAE_ENTRIES]; #ifdef CONFIG_ARM_64 diff --git a/xen/common/device_tree.c b/xen/common/device_tree.c index 117ccccb09..bbdab07596 100644 --- a/xen/common/device_tree.c +++ b/xen/common/device_tree.c @@ -1847,12 +1847,12 @@ int dt_count_phandle_with_args(const struct dt_device_node *np, * @allnextpp: pointer to ->allnext from last allocated device_node * @fpsize: Size of the node path up at the current depth. */ -static unsigned long __init unflatten_dt_node(const void *fdt, - unsigned long mem, - unsigned long *p, - struct dt_device_node *dad, - struct dt_device_node ***allnextpp, - unsigned long fpsize) +static unsigned long unflatten_dt_node(const void *fdt, + unsigned long mem, + unsigned long *p, + struct dt_device_node *dad, + struct dt_device_node ***allnextpp, + unsigned long fpsize) { struct dt_device_node *np; struct dt_property *pp, **prev_pp = NULL; -- 2.17.1 From xen-devel-bounces@lists.xenproject.org Fri Jun 02 00:48:59 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 02 Jun 2023 00:48:59 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542791.847092 (Exim 4.92) (envelope-from ) id 1q4syQ-0001PJ-TB; Fri, 02 Jun 2023 00:48:58 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542791.847092; Fri, 02 Jun 2023 00:48:58 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4syQ-0001Nm-MA; Fri, 02 Jun 2023 00:48:58 +0000 Received: by outflank-mailman (input) for mailman id 542791; Fri, 02 Jun 2023 00:48:56 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4syO-00018B-Pq for xen-devel@lists.xenproject.org; Fri, 02 Jun 2023 00:48:56 +0000 Received: from NAM04-MW2-obe.outbound.protection.outlook.com (mail-mw2nam04on20613.outbound.protection.outlook.com [2a01:111:f400:7e8c::613]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 3e421de4-00df-11ee-8611-37d641c3527e; Fri, 02 Jun 2023 02:48:53 +0200 (CEST) Received: from DS7PR07CA0008.namprd07.prod.outlook.com (2603:10b6:5:3af::21) by DM6PR12MB4861.namprd12.prod.outlook.com (2603:10b6:5:1bd::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.22; Fri, 2 Jun 2023 00:48:47 +0000 Received: from DM6NAM11FT089.eop-nam11.prod.protection.outlook.com (2603:10b6:5:3af:cafe::e8) by DS7PR07CA0008.outlook.office365.com (2603:10b6:5:3af::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.23 via Frontend Transport; Fri, 2 Jun 2023 00:48:47 +0000 Received: from SATLEXMB04.amd.com (165.204.84.17) by DM6NAM11FT089.mail.protection.outlook.com (10.13.173.82) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6455.24 via Frontend Transport; Fri, 2 Jun 2023 00:48:46 +0000 Received: from SATLEXMB07.amd.com (10.181.41.45) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Thu, 1 Jun 2023 19:48:46 -0500 Received: from SATLEXMB04.amd.com (10.181.40.145) by SATLEXMB07.amd.com (10.181.41.45) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Thu, 1 Jun 2023 17:48:45 -0700 Received: from xsjfnuv50.xilinx.com (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server id 15.1.2375.34 via Frontend Transport; Thu, 1 Jun 2023 19:48:45 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 3e421de4-00df-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=MmNZcbMqkH/CWS7pVUpCKUcF3m+Kgx3L3ZW+5Fqyiv2DrlDTfpwHPOkvixRzSfgADWqbpL+GaIlrI79Drkjx6aZVg8PYFJClR6JgDXHPSMDeDLizOj0zf5Sm+6vXTXMYNjxn2DBaTmPN0Z6XfKGFjvCftd53hmD0k7CbbAI7VvaTwrsvRJdgzkggTQQqrvKUtQwb/OnjfHjslu1Ky/0CGE25UcYSf6dU2Z/NtvhmtEqxOjMS0VdAHHLwZhL3I8IY29cQNZHhJdplQC9vtOeWKFZzXMhYgzB+wOShF8CpaNhir/RNaU1YVNd9pEDQx2UWUJ5Q7U8ZTpLnIODAJ8PylA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=DQpG5gl8tjfgQA0nY9ZK0fMXg1D/2bl66ZjFs1Y7jAg=; b=oU1oT1hMDMGW2m3OhQevwgtA3gFKvtsABteio/dWRBnSKR4x2QYsNmKYZaHvwDgUyIvVPFoqzvoyLfsSg48U0VQ74NvMGwEH04J3RmiPTslSvxwcoYaLLN8z1EwXsROnQEOT177m6V1yT0Nbx3+Y0aiO1/9yOSg4bnDnVvx8QqVJbd8kU3vgAFwJsb4l1GbRiA7UQwesapHsUsrMY2NLd9fViZVCeR2dJTfOdPlwxtcAX7z1WSYD9l0bUwMwZPLCZSwqmIaDyJieWY0DNy2vrNbDydMBZJLDBQONYE6K4SRwlaVSwtpEBMXp23PV5y7iQzP4yoh52ABeN/ryKusuJw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=DQpG5gl8tjfgQA0nY9ZK0fMXg1D/2bl66ZjFs1Y7jAg=; b=mphWWZLOegKaL+lfl3uUFuLCgZB5TsT1zHsnh9Tbb7DvUo9QqXVtntQl7+c3DiZmzB9VLXmqKxNlLkAF4zY4SEoV2ZpoklhrONrzbW/yeJQezo4t0ZzCRPZ+ikvFEPsjGWWCLT95QpYao7VRasy+VI3RW3rooL2NWIBd9AsrUD4= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C From: Vikram Garhwal To: CC: , , , , Julien Grall Subject: [XEN][PATCH v7 02/19] common/device_tree.c: unflatten_device_tree() propagate errors Date: Thu, 1 Jun 2023 17:48:07 -0700 Message-ID: <20230602004824.20731-3-vikram.garhwal@amd.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20230602004824.20731-1-vikram.garhwal@amd.com> References: <20230602004824.20731-1-vikram.garhwal@amd.com> MIME-Version: 1.0 Content-Type: text/plain X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DM6NAM11FT089:EE_|DM6PR12MB4861:EE_ X-MS-Office365-Filtering-Correlation-Id: 2536a6fc-905d-4c67-2595-08db63031f86 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: l0kEec3x1PBIRSkp6AIwnBj5sR377grKmkNuMDHsyyOUoNtt/x2Mu2B1lFiww80KkfpMmryFMPM4cwVoMH52iI50vPJJQ0xcpiJZVYqF4/a0eu9k3CL3yWnxn+F5+PXckjSvNj0jFcACxBxpFS7bgmA1kMxFNXhXwQ1XuF5MgWk8xEmR/rw2YGKy2tvTmapmDuIzPPG4gFL3SCyWnDbcokdUnJChM7yL3LozEdIsiYrtjUgGrqdmO/tCXm101AlhfUNZ2lfK68bdPvZmzcFPDDY2IBntmsCl6QRIqBmMtFnco32QLdsY4UtH9JOqjTilVMu5NHb/LGBKoodHkUCQp1N2wRNWZHxJSQtVIzAKIy53IBvp0MWmzes3UrV1sy5+EdjKq0taY6MwfCJgDZ4oRNZmTXWWQcn3htHLAOg+EfSDLeY4J0QsYDlqdtkIJOt/kE+HudgWw1Y9XOHjeOhEMM7vkXFJfD5MFO5C8ZFSanZkKoYgu9L+7ZqWDLk06Kjr9KNm6FTtX3PAeFneiWXoT1WjDNLuHqaAjrIK3ZUZUYnWS0O5+S5RnM59+Jsr34Lq8/zqkmsMXNnGTsNyCMtBG1y7j8I6HLFg55MXZy1Vo35j2eFSbl4h0IG46TPvIgZxNkwfmmxYyVZkdMf/Z+VCz+UgH8DpvHCcdizuTtvyKWcdp3e6i/y2j4RBcuTT0l9ctbSlSYmIcJYE6o82ZIYBvLYx9BWtKOrK4gJziDLVG+g0gEPN1s0lk+WiCytMXfu+etwf5CuRwOwOQDw6ak7tCQ== X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(136003)(39860400002)(346002)(396003)(376002)(451199021)(40470700004)(36840700001)(46966006)(186003)(40480700001)(6666004)(40460700003)(26005)(1076003)(316002)(478600001)(70206006)(70586007)(4326008)(6916009)(82310400005)(86362001)(8676002)(8936002)(82740400003)(5660300002)(356005)(41300700001)(81166007)(44832011)(47076005)(2906002)(36756003)(54906003)(36860700001)(426003)(2616005)(336012)(83380400001)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Jun 2023 00:48:46.7212 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 2536a6fc-905d-4c67-2595-08db63031f86 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com] X-MS-Exchange-CrossTenant-AuthSource: DM6NAM11FT089.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR12MB4861 This will be useful in dynamic node programming when new dt nodes are unflattend during runtime. Invalid device tree node related errors should be propagated back to the caller. Signed-off-by: Vikram Garhwal Reviewed-by: Henry Wang --- xen/common/device_tree.c | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/xen/common/device_tree.c b/xen/common/device_tree.c index dfdb10e488..117ccccb09 100644 --- a/xen/common/device_tree.c +++ b/xen/common/device_tree.c @@ -2108,6 +2108,9 @@ static int __init __unflatten_device_tree(const void *fdt, /* First pass, scan for size */ start = ((unsigned long)fdt) + fdt_off_dt_struct(fdt); size = unflatten_dt_node(fdt, 0, &start, NULL, NULL, 0); + if ( !size ) + return -EINVAL; + size = (size | 3) + 1; dt_dprintk(" size is %#lx allocating...\n", size); @@ -2125,11 +2128,19 @@ static int __init __unflatten_device_tree(const void *fdt, start = ((unsigned long)fdt) + fdt_off_dt_struct(fdt); unflatten_dt_node(fdt, mem, &start, NULL, &allnextp, 0); if ( be32_to_cpup((__be32 *)start) != FDT_END ) - printk(XENLOG_WARNING "Weird tag at end of tree: %08x\n", + { + printk(XENLOG_ERR "Weird tag at end of tree: %08x\n", *((u32 *)start)); + return -EINVAL; + } + if ( be32_to_cpu(((__be32 *)mem)[size / 4]) != 0xdeadbeef ) - printk(XENLOG_WARNING "End of tree marker overwritten: %08x\n", + { + printk(XENLOG_ERR "End of tree marker overwritten: %08x\n", be32_to_cpu(((__be32 *)mem)[size / 4])); + return -EINVAL; + } + *allnextp = NULL; dt_dprintk(" <- unflatten_device_tree()\n"); -- 2.17.1 From xen-devel-bounces@lists.xenproject.org Fri Jun 02 00:48:59 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 02 Jun 2023 00:48:59 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542792.847101 (Exim 4.92) (envelope-from ) id 1q4syR-0001ae-FW; Fri, 02 Jun 2023 00:48:59 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542792.847101; Fri, 02 Jun 2023 00:48:59 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4syR-0001Zj-4v; Fri, 02 Jun 2023 00:48:59 +0000 Received: by outflank-mailman (input) for mailman id 542792; Fri, 02 Jun 2023 00:48:57 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4syP-00018B-9F for xen-devel@lists.xenproject.org; Fri, 02 Jun 2023 00:48:57 +0000 Received: from NAM04-MW2-obe.outbound.protection.outlook.com (mail-mw2nam04on2062b.outbound.protection.outlook.com [2a01:111:f400:7e8c::62b]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 40307ee2-00df-11ee-8611-37d641c3527e; Fri, 02 Jun 2023 02:48:55 +0200 (CEST) Received: from DM6PR12CA0018.namprd12.prod.outlook.com (2603:10b6:5:1c0::31) by BN9PR12MB5163.namprd12.prod.outlook.com (2603:10b6:408:11c::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6433.26; Fri, 2 Jun 2023 00:48:51 +0000 Received: from DM6NAM11FT058.eop-nam11.prod.protection.outlook.com (2603:10b6:5:1c0:cafe::3e) by DM6PR12CA0018.outlook.office365.com (2603:10b6:5:1c0::31) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.23 via Frontend Transport; Fri, 2 Jun 2023 00:48:50 +0000 Received: from SATLEXMB04.amd.com (165.204.84.17) by DM6NAM11FT058.mail.protection.outlook.com (10.13.172.216) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6455.24 via Frontend Transport; Fri, 2 Jun 2023 00:48:50 +0000 Received: from SATLEXMB07.amd.com (10.181.41.45) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Thu, 1 Jun 2023 19:48:50 -0500 Received: from SATLEXMB04.amd.com (10.181.40.145) by SATLEXMB07.amd.com (10.181.41.45) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Thu, 1 Jun 2023 17:48:49 -0700 Received: from xsjfnuv50.xilinx.com (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server id 15.1.2375.34 via Frontend Transport; Thu, 1 Jun 2023 19:48:49 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 40307ee2-00df-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=bBgdIyNx1lErEsqHUSihRG7XOhpgomU+O0DXYoEyE3UAjpE38BXonyk4/vzFUe4uXRRpMLabQKok/vU69nswDKAwdACmp6rquxo2INI6EbpMp6qSoGSdOKBeKnksGKKZooXGriS5N/ze8efLJRoqjTZBdEPyriiI1INEr51K59yqK4AKgZDeqxioV5VnwLMnmQvnqwgSBmVy1TRV6GjBxklVIsb2Ijylt3WIRF2O+1IjoHuExpBDVIM+w3U3smmKZzavz49Sa3XBxHK0ofIbXJzJx4xCWetCWJ6/lPxxt+347hWwZV5ACzApyfLSvKHF3DGeiAhTnMSBXIvS0Q9qJQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=+aOH8wbfxJ3CDB9n8z4otIPVVDXaY3ZnHxlpPeTlbO8=; b=P4kPavBZ8MkGS1uEWTtSnvjYtqV3Eu6zW4EZDm5kfv8Tv9ZwYkHlrUPF6tYubk7ZnJi4Swg8ruzLfnO9abM0lKTWl8FZEdptrgd2wxZ3b3qng1xWDBJ/+ouNquSaClcKPKweIuP7JC56Jwni010TvQS1tcnOJFjr+xJVsfVW2pSWeNeODfEhEgPhJard/QM0HIsGY26MY3Jnclmjd04azp1QQ+eLsNKLrQ7ouBpGSQlz7oz9HeIjFgCerRdU3lVw5Hj/9GW+ASXpp/WAvx/gOFtFEOWk3V4chlAZ3HAXFfmODzTUBNkb68zxqf68/JfDKvZ7gLpW7MgLEgmSxy5MYg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=+aOH8wbfxJ3CDB9n8z4otIPVVDXaY3ZnHxlpPeTlbO8=; b=L8kfweqG9wzxNi+4XwPRAqKBDHJ0GjmPGlf34fxd0YTmHQQyIXeBIlRdA4dZsuX21CZQIxh1qgi9yqEi8qHqjDcdIKrfvFzmqXpk+R2ghJyY4ZNhJBuiCFhE5/PaPFq7xYigyXq4D2gatC7iGiPwdvqXuGDeGp66lSQHt8jjkVE= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C From: Vikram Garhwal To: CC: , , , , Julien Grall Subject: [XEN][PATCH v7 06/19] libfdt: Keep fdt functions after init for CONFIG_OVERLAY_DTB. Date: Thu, 1 Jun 2023 17:48:11 -0700 Message-ID: <20230602004824.20731-7-vikram.garhwal@amd.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20230602004824.20731-1-vikram.garhwal@amd.com> References: <20230602004824.20731-1-vikram.garhwal@amd.com> MIME-Version: 1.0 Content-Type: text/plain X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DM6NAM11FT058:EE_|BN9PR12MB5163:EE_ X-MS-Office365-Filtering-Correlation-Id: cbdab297-8486-4c84-ed80-08db630321ce X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: bQdRVhgx3JNVKksLG2YJ0P5KsJp+9nt/MgflSR3ZxkNC5wCn1Lszc4GB/IBo0iZ5Wa9MgdZZZbv7HUTN1FPYqFStWFK4M5Ty5l6D0K2F6Q1YWPDEuAf38Eb+LR+QH3VJvk1a8DSIM9FmTIF9ca7vdzTThX5ySGVleL0vAb0GzbOiN9R+vadbICwNN5s0yxVo9ISLA6hQync7FhcclnYFQ7+dwt+/aIP/EwyWXorlRiO16eM7Klvij/p9Vmeb0rbu/bpcudcMBTiRR+xbKEOl6r/tz85mlv9Ry2VUZwzYOH0/LbiWIwd5j5qYg6GgWonxJrTmL1DDGe+YUmXCvvQkdYhh2hEMUa+Z33eC5wv3WPDr13CKXJtmazzzNOYB+FuzkVsLDCCFnHMQbVchLiayz02HqI7vvdv0q4TyrYe2t5JwXBPnSLj9KYfkl7gYtVtvgFm6SG+cZtHxI3JZcY7JDVlv/qc1FzUeFegqNATuXcCqXZOQp/Qw5p2ofOZZGe3ZiNfICsbSfgyrIxeMOwGFiLmwNCgp5VsFEQmSUvNvJf19d/KgjdKTtUds2sXQcGR5zzth/UlkkJ6mHqboTQakI9qO8DFG5jvv9J66jHPJOvHgNEjAbRt+uFa9jCAA6tXJeiPEx9Ko46KihHPnznneBZIghmjhTvt6BZIttbmM/a09GoA/2U8Q+xo4A2iG71rLq+cFsb/PnWXUdVLJPzkygq0iFqEPGI1bxikynCZMaedaoRp66+H867xhICeobwQH/W0lLOBWTFQbLPaO+aPWxA== X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(376002)(346002)(136003)(39860400002)(396003)(451199021)(36840700001)(46966006)(40470700004)(40460700003)(36860700001)(82740400003)(5660300002)(81166007)(356005)(8676002)(8936002)(1076003)(426003)(336012)(83380400001)(2906002)(26005)(2616005)(4744005)(47076005)(44832011)(40480700001)(6916009)(6666004)(316002)(70206006)(4326008)(41300700001)(70586007)(86362001)(82310400005)(36756003)(186003)(478600001)(54906003)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Jun 2023 00:48:50.5537 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: cbdab297-8486-4c84-ed80-08db630321ce X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com] X-MS-Exchange-CrossTenant-AuthSource: DM6NAM11FT058.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN9PR12MB5163 This is done to access fdt library function which are required for adding device tree overlay nodes for dynamic programming of nodes. Signed-off-by: Vikram Garhwal Acked-by: Julien Grall --- xen/common/libfdt/Makefile | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/xen/common/libfdt/Makefile b/xen/common/libfdt/Makefile index 75aaefa2e3..d50487aa6e 100644 --- a/xen/common/libfdt/Makefile +++ b/xen/common/libfdt/Makefile @@ -1,7 +1,11 @@ include $(src)/Makefile.libfdt SECTIONS := text data $(SPECIAL_DATA_SECTIONS) + +# For CONFIG_OVERLAY_DTB, libfdt functionalities will be needed during runtime. +ifneq ($(CONFIG_OVERLAY_DTB),y) OBJCOPYFLAGS := $(foreach s,$(SECTIONS),--rename-section .$(s)=.init.$(s)) +endif obj-y += libfdt.o nocov-y += libfdt.o -- 2.17.1 From xen-devel-bounces@lists.xenproject.org Fri Jun 02 00:49:00 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 02 Jun 2023 00:49:00 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542793.847109 (Exim 4.92) (envelope-from ) id 1q4syS-0001oU-1o; Fri, 02 Jun 2023 00:49:00 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542793.847109; Fri, 02 Jun 2023 00:48:59 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4syR-0001ik-Pv; Fri, 02 Jun 2023 00:48:59 +0000 Received: by outflank-mailman (input) for mailman id 542793; Fri, 02 Jun 2023 00:48:58 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4syQ-00018B-9Y for xen-devel@lists.xenproject.org; Fri, 02 Jun 2023 00:48:58 +0000 Received: from NAM10-MW2-obe.outbound.protection.outlook.com (mail-mw2nam10on20615.outbound.protection.outlook.com [2a01:111:f400:7e89::615]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 3fd8da53-00df-11ee-8611-37d641c3527e; Fri, 02 Jun 2023 02:48:55 +0200 (CEST) Received: from MW4PR04CA0042.namprd04.prod.outlook.com (2603:10b6:303:6a::17) by SN7PR12MB7836.namprd12.prod.outlook.com (2603:10b6:806:34e::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6433.24; Fri, 2 Jun 2023 00:48:51 +0000 Received: from CO1NAM11FT088.eop-nam11.prod.protection.outlook.com (2603:10b6:303:6a:cafe::25) by MW4PR04CA0042.outlook.office365.com (2603:10b6:303:6a::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.23 via Frontend Transport; Fri, 2 Jun 2023 00:48:51 +0000 Received: from SATLEXMB03.amd.com (165.204.84.17) by CO1NAM11FT088.mail.protection.outlook.com (10.13.175.131) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6455.24 via Frontend Transport; Fri, 2 Jun 2023 00:48:50 +0000 Received: from SATLEXMB07.amd.com (10.181.41.45) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Thu, 1 Jun 2023 19:48:49 -0500 Received: from SATLEXMB04.amd.com (10.181.40.145) by SATLEXMB07.amd.com (10.181.41.45) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Thu, 1 Jun 2023 17:48:49 -0700 Received: from xsjfnuv50.xilinx.com (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server id 15.1.2375.34 via Frontend Transport; Thu, 1 Jun 2023 19:48:48 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 3fd8da53-00df-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=h6M1iwZcMfs60vHw8iRltTEBq2AlhOPemegq9OS4h/++GVDODLGB4zwPPxR43uKFG+5oMZfW1nXYWKtm37L/FPVGkzl+Bn6UrrBTyWm02K9og7omzsl5Nmlg9qxXkKnRIewa2U4Rydu7cXPqPlgvJS6e9tce8biSdsKYa8SFimT/mLPU3bwliYfVa2GmdL8jFljQX46R9tUbt15NIgfJMqG28wdRoUSHrRhcH4aiXrwx1kdU+TLZJUinrPhRjqF5V0q6vh/foG2ugGxmsNd8Oe4rnrVv+hq7rVjStCQ5wOSUdzOS94zjZtwpw5Y79y+eBm+Hq1Nc/TcsqjLbftnMnQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=zCSUaAfJqaOws8smne3UwBpw/ZTPHQ6ZelbN3iVgJI8=; b=SJbpg/wD3mlB3YSPIOzHR3Uq+Y57pWyOqpfoMLsITk15DwEkhrMyQBYitt7HCiCPmtQBsGAp9K13xPTN1lE2P2TP5Fmg6JMmtdUxxER72iydmzkxf6dkOXNEp1+F4dPwb63bvbzg7LVFgEmQZA+zB+g8bv838lNZGAmfnOUbrSXU3BdQhcNvvmcnKbEgQeokc8ZcErhQJaAEVtz1f5wR2KtVVyCZ0UmiOWTgB/wdgRS+31A1d2enMoKGyuH24xJSbgzJZfWMpGTRjhpJ0CEGmegA5uZm0sqddkVHFwmZxXK55AgiRU9Zjl80i8rE5/xZ3Ea1B40OITEmAFI6ebWEfw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=zCSUaAfJqaOws8smne3UwBpw/ZTPHQ6ZelbN3iVgJI8=; b=T/ua7MgIubMBmjH1nls8jPH1KTSqI1O+AwYe6PMuyuky8X2uiDfS/tW24Mm6CHDR2DFojq4n2DWUZEVSAzfnYgrzH0HtPQy8+gjByKamY2k6pUUIU3V7nkxCKyQwY1XNsg4z0DS5NVILESvKnu+FIHlurrWWysW97/caqJCK2E8= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C From: Vikram Garhwal To: CC: , , , , Henry Wang , Community Manager , Andrew Cooper , George Dunlap , Julien Grall , Wei Liu , Bertrand Marquis , Volodymyr Babchuk Subject: [XEN][PATCH v7 05/19] xen/arm: Add CONFIG_OVERLAY_DTB Date: Thu, 1 Jun 2023 17:48:10 -0700 Message-ID: <20230602004824.20731-6-vikram.garhwal@amd.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20230602004824.20731-1-vikram.garhwal@amd.com> References: <20230602004824.20731-1-vikram.garhwal@amd.com> MIME-Version: 1.0 Content-Type: text/plain X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO1NAM11FT088:EE_|SN7PR12MB7836:EE_ X-MS-Office365-Filtering-Correlation-Id: a2c66782-6ae8-47bb-41d7-08db63032189 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 7Ox87FTOGBLOjSDuH+KjMkkBMIG0cPwYI8KDCQTcP1eS4wWzQAs5sVEGz66QPwA9erkUwv+VwlVRVRhtSGHP+HSRMPUSme77gGIBxjDAnRqHLuqDALD7tfTHoOlhIddPjBp1pqDrPpNXWemO3zO9+Vcr6fn2DjbH9dxmMjgSQ5OBH/IYpqM27tXOr3zmZtcFVKJ683skTtYpsEjJCs1zJN21VuqndLTLv+Ys7C4d8BoPeH1p9p35fvk1hkFD37MD7uOT+5d7BkW9xK4b4mhmhryuaCFn8UwtohRO6b4OvCVIVXTuLvBE6+y7jD//wxBahStPOMicTrzdIJVYhpk3aUy4dOwN6aDwr3Gg2L8PmE/39bZqRcrD7d++1lHh3v3UBAeGaOJ5kFzeEMewMBbOkOybkM0vkIPLuC1a8K/PYaJeVUxEQ0ERmiQvA1gG5tCTVnl6DThKmUBDMmo3q448TPD+RiHHLvY7JbZLNhohREAytIA9JCEl2XV15nwbrhCE4BriJBLbxpDM+hepxYtmW3uMj2UNVpP1wurydEjhFQYadJYG+wFLh3zxCaqSaLlxO7NEBhj3ZQ4OMQiCcGs6W33QkYJKRHZuV/IslNLOUHzCZ1K3dw2qnGQOqhen1kJz+z+2LBVnojqWPzW70E0SckRX74YoZlTGjgJQCGXE5zAS06w4UCeHmUqaFPHB1JapABpSm+9Fk04yiQs+fXt58t2URGL2pp96OeJZ4/aYj01Ds+pdS3Ok/xQCtUo8nJzZ X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(396003)(39860400002)(346002)(376002)(136003)(451199021)(40470700004)(46966006)(36840700001)(82740400003)(356005)(81166007)(36756003)(82310400005)(86362001)(40480700001)(40460700003)(41300700001)(7416002)(8936002)(44832011)(26005)(1076003)(5660300002)(4001150100001)(186003)(426003)(2616005)(6666004)(336012)(47076005)(8676002)(83380400001)(54906003)(70206006)(316002)(478600001)(36860700001)(4326008)(6916009)(2906002)(70586007)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Jun 2023 00:48:50.0346 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: a2c66782-6ae8-47bb-41d7-08db63032189 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com] X-MS-Exchange-CrossTenant-AuthSource: CO1NAM11FT088.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN7PR12MB7836 Introduce a config option where the user can enable support for adding/removing device tree nodes using a device tree binary overlay. Update SUPPORT.md and CHANGELOG.md to state the Device Tree Overlays support for Arm. Signed-off-by: Vikram Garhwal --- Changes from v6: Add CHANGELOG and SUPPORT.md entries. --- CHANGELOG.md | 2 ++ SUPPORT.md | 6 ++++++ xen/arch/arm/Kconfig | 5 +++++ 3 files changed, 13 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 5bfd3aa5c0..a137fce576 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -20,6 +20,8 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) - Bus-lock detection, used by Xen to mitigate (by rate-limiting) the system wide impact of a guest misusing atomic instructions. - xl/libxl can customize SMBIOS strings for HVM guests. + - On Arm, support for dynamic addition/removal of Xen device tree nodes using + a device tree overlay binary(.dtbo). ## [4.17.0](https://xenbits.xen.org/gitweb/?p=xen.git;a=shortlog;h=RELEASE-4.17.0) - 2022-12-12 diff --git a/SUPPORT.md b/SUPPORT.md index 6dbed9d5d0..6b27d43cc6 100644 --- a/SUPPORT.md +++ b/SUPPORT.md @@ -832,6 +832,12 @@ No support for QEMU backends in a 16K or 64K domain. Status: Supported +### Device Tree Overlays + +Add/Remove device tree nodes using a device tree overlay binary(.dtbo). + + Status, ARM: Experimental + ### ARM: Guest ACPI support Status: Supported diff --git a/xen/arch/arm/Kconfig b/xen/arch/arm/Kconfig index 239d3aed3c..1fe3d698a5 100644 --- a/xen/arch/arm/Kconfig +++ b/xen/arch/arm/Kconfig @@ -53,6 +53,11 @@ config HAS_ITS bool "GICv3 ITS MSI controller support (UNSUPPORTED)" if UNSUPPORTED depends on GICV3 && !NEW_VGIC && !ARM_32 +config OVERLAY_DTB + bool "DTB overlay support (UNSUPPORTED)" if UNSUPPORTED + help + Dynamic addition/removal of Xen device tree nodes using a dtbo. + config HVM def_bool y -- 2.17.1 From xen-devel-bounces@lists.xenproject.org Fri Jun 02 00:49:01 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 02 Jun 2023 00:49:01 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542794.847125 (Exim 4.92) (envelope-from ) id 1q4syT-0002Lv-LS; Fri, 02 Jun 2023 00:49:01 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542794.847125; Fri, 02 Jun 2023 00:49:01 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4syT-0002J8-EN; Fri, 02 Jun 2023 00:49:01 +0000 Received: by outflank-mailman (input) for mailman id 542794; Fri, 02 Jun 2023 00:48:59 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4syR-00018B-9d for xen-devel@lists.xenproject.org; Fri, 02 Jun 2023 00:48:59 +0000 Received: from NAM11-BN8-obe.outbound.protection.outlook.com (mail-bn8nam11on20601.outbound.protection.outlook.com [2a01:111:f400:7eae::601]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 40de3d1e-00df-11ee-8611-37d641c3527e; Fri, 02 Jun 2023 02:48:56 +0200 (CEST) Received: from MW4PR04CA0046.namprd04.prod.outlook.com (2603:10b6:303:6a::21) by BL1PR12MB5048.namprd12.prod.outlook.com (2603:10b6:208:30a::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.24; Fri, 2 Jun 2023 00:48:52 +0000 Received: from CO1NAM11FT088.eop-nam11.prod.protection.outlook.com (2603:10b6:303:6a:cafe::7) by MW4PR04CA0046.outlook.office365.com (2603:10b6:303:6a::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.23 via Frontend Transport; Fri, 2 Jun 2023 00:48:51 +0000 Received: from SATLEXMB03.amd.com (165.204.84.17) by CO1NAM11FT088.mail.protection.outlook.com (10.13.175.131) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6455.24 via Frontend Transport; Fri, 2 Jun 2023 00:48:51 +0000 Received: from SATLEXMB07.amd.com (10.181.41.45) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Thu, 1 Jun 2023 19:48:51 -0500 Received: from SATLEXMB04.amd.com (10.181.40.145) by SATLEXMB07.amd.com (10.181.41.45) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Thu, 1 Jun 2023 17:48:50 -0700 Received: from xsjfnuv50.xilinx.com (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server id 15.1.2375.34 via Frontend Transport; Thu, 1 Jun 2023 19:48:50 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 40de3d1e-00df-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=LRK7g040+o5EeNmwfU8zGctYOKf+0NpEsP704MJtF8O7rYZbyehfnsuWNlM8F7M3IrrnJytSHhw4qtP5Eorqjk+kALUXZbLItt3JgKWE3gpo/+70hrPeJdwFfFbbs24/TLaZ/B7izUsbSz/y0yczxzTuSwVzX+RhBbMxTNkNO3S0t5TCQshp/h23WLWem+vzf0O2r9bjE/HGNJ9aC/PypYNBj3FrKveUNyjArA1RlUWgQvL/DKyLqcWWYzz4/K3GoyDpPxKpvEno4qnKiz6IRb4ySAWc5IpO29cR8dMDcPXo/fzjCDILeKDWoItBg4EBzvVB0N0IipUOfTQ1u6p6/w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=lx/xCOBK4s/DsWiUaFjcYyQMa2MfFrJ7M3OaqU88+qU=; b=DeuCeUfRocQ18g3TwpqBvo118j/teYKqroeuy4P9x+s56cpRQAbdRr8c99OGgTeBOiHyGRjh/K/2cNqKIQrHeXGfbKjy9YXh08LbJ0C44GWQWh5uAu9+prpMVF9B6NPmIcouL+rQy5mKMVERz8fdEgDxU6SUgQGkRsZ4T7+INNfOUSy5e7wAGwmoAX6w/bCgQB56b80USk9/jYEYFGTqlZw/dJRWjcKM9d4OSZipyPFKI9/UeyAQaseX3Goh94dMVa9utFGXVjRCe+N9iuNcWWUtnQq+b3+GuvW/Vg25vTQ02BsnmPe9W0+p723Bwra9tJn/jQJyx8voj+aQSb1gLg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=lx/xCOBK4s/DsWiUaFjcYyQMa2MfFrJ7M3OaqU88+qU=; b=jhL0v8sRcRT300kpM1qA+B7d2QwiITmtWT1eSUdVqtNe7ojBkPHplQrqyTApRvAUrEhputZKrWw6Z/69Q7yAjlx3zpK2CkFAH8I1+aPLAsB3WXUHHWMio0yx+BcfkLiVIL/PaGcJ/Uy4O60vkeah0ZUJJcbhuwG82en/7h+RMGo= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C From: Vikram Garhwal To: CC: , , , , Julien Grall , Vikram Garhwal , David Gibson Subject: [XEN][PATCH v7 07/19] libfdt: overlay: change overlay_get_target() Date: Thu, 1 Jun 2023 17:48:12 -0700 Message-ID: <20230602004824.20731-8-vikram.garhwal@amd.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20230602004824.20731-1-vikram.garhwal@amd.com> References: <20230602004824.20731-1-vikram.garhwal@amd.com> MIME-Version: 1.0 Content-Type: text/plain X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO1NAM11FT088:EE_|BL1PR12MB5048:EE_ X-MS-Office365-Filtering-Correlation-Id: d0e45d44-01cc-41c5-81d0-08db63032270 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: XLhfVHHsk1dZomPCzVBzcsOlnXv47QzSsnZVfCnXKuJYktuIz4oOBmkd5LlApvxCcQCZZpiC0NKza/vbcZtPLRB9o/W8PnYT6D8NmIAUV2Ht6QRnvLeFZJFJ1h2C/La2IMSYONlvHA/Itub2LG5g6EGMcPF+izOA6c8OhgZecQGG2c309OhKdZcLB95WCSRPVbCIPtQQXJaEflbMmlqrF7WjYV7Bk2eD9v6VwEhzOlUx/ji/+kPiJavmmaZHl4+4W4EwxdJpw10dw9Ae45/9+dzPWeboipBjkvegxgzc2I2Jl9eteb+hzmsx70utAinCXbtLeflQbVfT/gfjzjp6Z3AzlAVelik56fwX4zAP1QRGAYRyUZPUiYjyjzRWQ1R6CUH50uQ2ucMA0fD/ylQzw5XnU4xAVgyJEunCRjYUPpoSgyhyHVle2rrK6t04NW2NRc3CruD2tluiX4lmQQJSxu2U3xV+nhzZ3R42GrRKlkXZowPfzlDl2g2jlAFqbuy0R5vp2/Cu7SRquPfPbm1mgCqpRcP2BAqh78HcMUNblBcON8DD+YV3kViVHyaM/2K82OKAlqngg4sk4fHYCiVnYms0n8OS98H2yf6/0l5ApPOJGJ5se2D1TnDrSAhTGzxpQBd0nsWO3tyExkE6VoeXhtEDsXglxl9xFR4a3V6ZVuq1Kih6p2GYinoWmiUiKRwKRXkz8vz4U9ePTCTUAVVrU66+AFJB3dclS/YkVw7UVdm4J5Hi/xG5X35H5FPd/stKku32C64cnmcTsfSXmjv6xQ== X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(396003)(346002)(376002)(39860400002)(136003)(451199021)(40470700004)(46966006)(36840700001)(82740400003)(356005)(82310400005)(81166007)(40460700003)(86362001)(54906003)(478600001)(70586007)(70206006)(6916009)(36756003)(40480700001)(4326008)(6666004)(186003)(26005)(1076003)(8676002)(8936002)(5660300002)(44832011)(36860700001)(47076005)(316002)(2616005)(426003)(336012)(41300700001)(83380400001)(2906002)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Jun 2023 00:48:51.5345 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: d0e45d44-01cc-41c5-81d0-08db63032270 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com] X-MS-Exchange-CrossTenant-AuthSource: CO1NAM11FT088.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: BL1PR12MB5048 Rename overlay_get_target() to fdt_overlay_target_offset() and remove static function type. This is done to get the target path for the overlay nodes which is very useful in many cases. For example, Xen hypervisor needs it when applying overlays because Xen needs to do further processing of the overlay nodes, e.g. mapping of resources(IRQs and IOMMUs) to other VMs, creation of SMMU pagetables, etc. Signed-off-by: Vikram Garhwal Message-Id: <1637204036-382159-2-git-send-email-fnu.vikram@xilinx.com> Signed-off-by: David Gibson Origin: git://git.kernel.org/pub/scm/utils/dtc/dtc.git 45f3d1a095dd Signed-off-by: Vikram Garhwal Reviewed-by: Michal Orzel Reviewed-by: Henry Wang --- xen/common/libfdt/fdt_overlay.c | 29 +++++++---------------------- xen/common/libfdt/version.lds | 1 + xen/include/xen/libfdt/libfdt.h | 18 ++++++++++++++++++ 3 files changed, 26 insertions(+), 22 deletions(-) diff --git a/xen/common/libfdt/fdt_overlay.c b/xen/common/libfdt/fdt_overlay.c index 7b95e2b639..acf0c4c2a6 100644 --- a/xen/common/libfdt/fdt_overlay.c +++ b/xen/common/libfdt/fdt_overlay.c @@ -41,37 +41,22 @@ static uint32_t overlay_get_target_phandle(const void *fdto, int fragment) return fdt32_to_cpu(*val); } -/** - * overlay_get_target - retrieves the offset of a fragment's target - * @fdt: Base device tree blob - * @fdto: Device tree overlay blob - * @fragment: node offset of the fragment in the overlay - * @pathp: pointer which receives the path of the target (or NULL) - * - * overlay_get_target() retrieves the target offset in the base - * device tree of a fragment, no matter how the actual targeting is - * done (through a phandle or a path) - * - * returns: - * the targeted node offset in the base device tree - * Negative error code on error - */ -static int overlay_get_target(const void *fdt, const void *fdto, - int fragment, char const **pathp) +int fdt_overlay_target_offset(const void *fdt, const void *fdto, + int fragment_offset, char const **pathp) { uint32_t phandle; const char *path = NULL; int path_len = 0, ret; /* Try first to do a phandle based lookup */ - phandle = overlay_get_target_phandle(fdto, fragment); + phandle = overlay_get_target_phandle(fdto, fragment_offset); if (phandle == (uint32_t)-1) return -FDT_ERR_BADPHANDLE; /* no phandle, try path */ if (!phandle) { /* And then a path based lookup */ - path = fdt_getprop(fdto, fragment, "target-path", &path_len); + path = fdt_getprop(fdto, fragment_offset, "target-path", &path_len); if (path) ret = fdt_path_offset(fdt, path); else @@ -638,7 +623,7 @@ static int overlay_merge(void *fdt, void *fdto) if (overlay < 0) return overlay; - target = overlay_get_target(fdt, fdto, fragment, NULL); + target = fdt_overlay_target_offset(fdt, fdto, fragment, NULL); if (target < 0) return target; @@ -781,7 +766,7 @@ static int overlay_symbol_update(void *fdt, void *fdto) return -FDT_ERR_BADOVERLAY; /* get the target of the fragment */ - ret = overlay_get_target(fdt, fdto, fragment, &target_path); + ret = fdt_overlay_target_offset(fdt, fdto, fragment, &target_path); if (ret < 0) return ret; target = ret; @@ -803,7 +788,7 @@ static int overlay_symbol_update(void *fdt, void *fdto) if (!target_path) { /* again in case setprop_placeholder changed it */ - ret = overlay_get_target(fdt, fdto, fragment, &target_path); + ret = fdt_overlay_target_offset(fdt, fdto, fragment, &target_path); if (ret < 0) return ret; target = ret; diff --git a/xen/common/libfdt/version.lds b/xen/common/libfdt/version.lds index 7ab85f1d9d..cbce5d4a8b 100644 --- a/xen/common/libfdt/version.lds +++ b/xen/common/libfdt/version.lds @@ -77,6 +77,7 @@ LIBFDT_1.2 { fdt_appendprop_addrrange; fdt_setprop_inplace_namelen_partial; fdt_create_with_flags; + fdt_overlay_target_offset; local: *; }; diff --git a/xen/include/xen/libfdt/libfdt.h b/xen/include/xen/libfdt/libfdt.h index c71689e2be..fabddbee8c 100644 --- a/xen/include/xen/libfdt/libfdt.h +++ b/xen/include/xen/libfdt/libfdt.h @@ -2109,6 +2109,24 @@ int fdt_del_node(void *fdt, int nodeoffset); */ int fdt_overlay_apply(void *fdt, void *fdto); +/** + * fdt_overlay_target_offset - retrieves the offset of a fragment's target + * @fdt: Base device tree blob + * @fdto: Device tree overlay blob + * @fragment_offset: node offset of the fragment in the overlay + * @pathp: pointer which receives the path of the target (or NULL) + * + * fdt_overlay_target_offset() retrieves the target offset in the base + * device tree of a fragment, no matter how the actual targeting is + * done (through a phandle or a path) + * + * returns: + * the targeted node offset in the base device tree + * Negative error code on error + */ +int fdt_overlay_target_offset(const void *fdt, const void *fdto, + int fragment_offset, char const **pathp); + /**********************************************************************/ /* Debugging / informational functions */ /**********************************************************************/ -- 2.17.1 From xen-devel-bounces@lists.xenproject.org Fri Jun 02 00:49:02 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 02 Jun 2023 00:49:02 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542795.847134 (Exim 4.92) (envelope-from ) id 1q4syU-0002U5-HJ; Fri, 02 Jun 2023 00:49:02 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542795.847134; Fri, 02 Jun 2023 00:49:02 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4syU-0002SL-09; Fri, 02 Jun 2023 00:49:02 +0000 Received: by outflank-mailman (input) for mailman id 542795; Fri, 02 Jun 2023 00:49:00 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4syR-0000if-Vm for xen-devel@lists.xenproject.org; Fri, 02 Jun 2023 00:48:59 +0000 Received: from NAM11-BN8-obe.outbound.protection.outlook.com (mail-bn8nam11on20601.outbound.protection.outlook.com [2a01:111:f400:7eae::601]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 42a065cc-00df-11ee-b231-6b7b168915f2; Fri, 02 Jun 2023 02:48:59 +0200 (CEST) Received: from MW4PR04CA0100.namprd04.prod.outlook.com (2603:10b6:303:83::15) by CY5PR12MB6348.namprd12.prod.outlook.com (2603:10b6:930:f::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6433.26; Fri, 2 Jun 2023 00:48:55 +0000 Received: from CO1NAM11FT112.eop-nam11.prod.protection.outlook.com (2603:10b6:303:83:cafe::18) by MW4PR04CA0100.outlook.office365.com (2603:10b6:303:83::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.23 via Frontend Transport; Fri, 2 Jun 2023 00:48:55 +0000 Received: from SATLEXMB03.amd.com (165.204.84.17) by CO1NAM11FT112.mail.protection.outlook.com (10.13.174.213) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6455.24 via Frontend Transport; Fri, 2 Jun 2023 00:48:54 +0000 Received: from SATLEXMB07.amd.com (10.181.41.45) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Thu, 1 Jun 2023 19:48:53 -0500 Received: from SATLEXMB04.amd.com (10.181.40.145) by SATLEXMB07.amd.com (10.181.41.45) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Thu, 1 Jun 2023 17:48:53 -0700 Received: from xsjfnuv50.xilinx.com (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server id 15.1.2375.34 via Frontend Transport; Thu, 1 Jun 2023 19:48:52 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 42a065cc-00df-11ee-b231-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=A4cBnT6q+KCIPafdlLM5CP4yDXsWNCLlnwOUHQi838ItqG4KKEXYEfgUwxiQOg4ncgn+82spxRpBw1a52c0+815CHq6MzPswm541Ue5BY+tBhuHQwte0o/xWeGleIBxx/AAjsO0fKkJxE2ekt5Xugst+uuymCivEbsLOWhxKeI05lPBiZmujsWUkmN2LEkgQ4vOmupnPh1VsycMA7QZzYk9bArRqodbWtKpuHoJIUQvq5+4ahRAtor/wcA5kutsiBnD7y+scQpn1xwORAC2qYkrIFaVscx3aP8DZmpzLVzZm0gq7CrVAqghdDCfc38bx8IQXSjirxYs1KyUU05IUUQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=BBHXZIlMJGJe8+ipovZgPxAdAwa+jzzdQSk6DYH6FhU=; b=GUO4jqSsFNN/hMrXISeoCBViXMnlvRDzIBg54qDYOJbbWGY6jPwZpXX+g2ZWCf9wGg4zfzLok8jsvQe9ownirPa7yUS9Z95GzupKXz21UvSXYxXQA6q7wN9R2fuUHCFdyNMqtGZeooZ+0Jtf4aghHTww1/EkbUA6U33t/zq0I4JIQ153s2G64PJgUTMAggCa21ptExsOj88kRzbYLeXTMedH6mgbj86Qs9xuGAIfSTiKazFBzztO1QOSjqv9xZmI0VVW5z4x2e/Qnde/8KRp3/16rJ1wU6MaCmZqdakMAIaTR5X/7LHYLKDZ3vjQMBLfDs+8C5LuAPWO6Wsl+Fo6yw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=BBHXZIlMJGJe8+ipovZgPxAdAwa+jzzdQSk6DYH6FhU=; b=PFFvMVYnFBE+piBZe+QnuwfdMwW910NdGfoo1Mbo/yiuqYe5lCNG25zkZ94j9C9WD1a8OA2TxYMQSQXXeiAeILwl1kNWa13Uc0AEsJzcA7Bz3kou4fqb2XQJv6jKH7s7NfWibGrGok/Y35YbCyWI/4WRTjyZHoLLVhmStkYo62E= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C From: Vikram Garhwal To: CC: , , , , Julien Grall Subject: [XEN][PATCH v7 10/19] xen/iommu: protect iommu_add_dt_device() with dtdevs_lock Date: Thu, 1 Jun 2023 17:48:15 -0700 Message-ID: <20230602004824.20731-11-vikram.garhwal@amd.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20230602004824.20731-1-vikram.garhwal@amd.com> References: <20230602004824.20731-1-vikram.garhwal@amd.com> MIME-Version: 1.0 Content-Type: text/plain X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO1NAM11FT112:EE_|CY5PR12MB6348:EE_ X-MS-Office365-Filtering-Correlation-Id: c0e6cfb0-1bda-4842-c504-08db6303240f X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: eIH0Ww/uRi8IVsPEDXrW4RM+t/vLeRT/ogEO/LQTmYuCZqt0zuW2METsp8k5sTNcmDW9Pj3qmCVKFRfxapzsc2/bbqnXLl7i9q2n9ao3mdB6Qg2o79+zH4/L7NalXqgF8OzezalyAjN+Z94K8gEBDoIy/Hhy53XFkuFaoNkYI8KtuHtc26gStAU4bLEd8UTcEl1KXFnS2dthZcg/fGmbbRGLr9J5ibS004Po9mDjimET35CZSy4hIBxycH1zq1GJAm/f+LUblJVQ2I3UTHT/KobLYpn2X38ZyvF5zN/ZdkbRrQ2+HctZCvobF+w5VcU7UzHWzbRuV545M4QM1WyeK1iCXdMrLviBAFuUY38DKnMQPeOBL8SCfwjQ2wiIBUypX9ArFXecnyeua+OPYssowo1F5fHLvWbj9ulbEclZ8xytoi9kHb0S+4fZhf9x2wF6y8uHEjLEXNQnzPI+T23k2+wDtzB1d8vamVYxuCG2p0b3k3v7KXNjKvHXg7FQpzT8bhokrbg8BVEyjOv2xqT3KcTr9Ov6nDFFEPetf9yf4rWclTWL+J5UcVmYBnuG2eWhKumns8TtmrZP+28eK/bx0cOI4V8TaXkBhvEegm51zNNdWcCx3O8uCpjher3O3GhtMyy2P9e/Lapv5CzBTygFZ6mxNVjoluxrOey5f2Ga0JkxoSsZM/KqdeCazjyRejjvAogzy9wy1EoAQ54QWj/2GDZWch4tHytbCGahfGE3FTOA6O0BUa91VH3QQeMyKtou0vUzwtlCntUGFXbEeGtHEg== X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(136003)(396003)(346002)(376002)(451199021)(40470700004)(36840700001)(46966006)(83380400001)(186003)(41300700001)(336012)(426003)(6666004)(36860700001)(2616005)(47076005)(1076003)(26005)(40460700003)(478600001)(54906003)(6916009)(70586007)(81166007)(356005)(70206006)(4326008)(40480700001)(82310400005)(82740400003)(316002)(44832011)(8676002)(8936002)(5660300002)(86362001)(2906002)(36756003)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Jun 2023 00:48:54.2715 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: c0e6cfb0-1bda-4842-c504-08db6303240f X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com] X-MS-Exchange-CrossTenant-AuthSource: CO1NAM11FT112.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY5PR12MB6348 Protect iommu_add_dt_device() with dtdevs_lock to prevent concurrent access add. Signed-off-by: Vikram Garhwal Reviewed-by: Luca Fancellu Reviewed-by: Michal Orzel --- xen/drivers/passthrough/device_tree.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/xen/drivers/passthrough/device_tree.c b/xen/drivers/passthrough/device_tree.c index 52e370db01..8cc413f867 100644 --- a/xen/drivers/passthrough/device_tree.c +++ b/xen/drivers/passthrough/device_tree.c @@ -146,6 +146,8 @@ int iommu_add_dt_device(struct dt_device_node *np) if ( dev_iommu_fwspec_get(dev) ) return 0; + spin_lock(&dtdevs_lock); + /* * According to the Documentation/devicetree/bindings/iommu/iommu.txt * from Linux. @@ -158,7 +160,10 @@ int iommu_add_dt_device(struct dt_device_node *np) * these callback implemented. */ if ( !ops->add_device || !ops->dt_xlate ) - return -EINVAL; + { + rc = -EINVAL; + goto fail; + } if ( !dt_device_is_available(iommu_spec.np) ) break; @@ -189,6 +194,8 @@ int iommu_add_dt_device(struct dt_device_node *np) if ( rc < 0 ) iommu_fwspec_free(dev); +fail: + spin_unlock(&dtdevs_lock); return rc; } -- 2.17.1 From xen-devel-bounces@lists.xenproject.org Fri Jun 02 00:49:03 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 02 Jun 2023 00:49:03 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542796.847142 (Exim 4.92) (envelope-from ) id 1q4syV-0002hW-Bn; Fri, 02 Jun 2023 00:49:03 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542796.847142; Fri, 02 Jun 2023 00:49:03 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4syU-0002ei-UM; Fri, 02 Jun 2023 00:49:02 +0000 Received: by outflank-mailman (input) for mailman id 542796; Fri, 02 Jun 2023 00:49:00 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4syS-00018B-9x for xen-devel@lists.xenproject.org; Fri, 02 Jun 2023 00:49:00 +0000 Received: from NAM12-MW2-obe.outbound.protection.outlook.com (mail-mw2nam12on20612.outbound.protection.outlook.com [2a01:111:f400:fe5a::612]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 4128b33c-00df-11ee-8611-37d641c3527e; Fri, 02 Jun 2023 02:48:57 +0200 (CEST) Received: from MW4P222CA0007.NAMP222.PROD.OUTLOOK.COM (2603:10b6:303:114::12) by SJ0PR12MB6880.namprd12.prod.outlook.com (2603:10b6:a03:485::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6433.21; Fri, 2 Jun 2023 00:48:47 +0000 Received: from CO1NAM11FT003.eop-nam11.prod.protection.outlook.com (2603:10b6:303:114:cafe::5) by MW4P222CA0007.outlook.office365.com (2603:10b6:303:114::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.23 via Frontend Transport; Fri, 2 Jun 2023 00:48:47 +0000 Received: from SATLEXMB03.amd.com (165.204.84.17) by CO1NAM11FT003.mail.protection.outlook.com (10.13.175.93) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6455.24 via Frontend Transport; Fri, 2 Jun 2023 00:48:46 +0000 Received: from SATLEXMB07.amd.com (10.181.41.45) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Thu, 1 Jun 2023 19:48:45 -0500 Received: from SATLEXMB04.amd.com (10.181.40.145) by SATLEXMB07.amd.com (10.181.41.45) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Thu, 1 Jun 2023 17:48:45 -0700 Received: from xsjfnuv50.xilinx.com (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server id 15.1.2375.34 via Frontend Transport; Thu, 1 Jun 2023 19:48:44 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 4128b33c-00df-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=ffYa3WlRtU+77/+yYuUP2S74YLoZuE8mEMXM+IXw8bPddd8ImRkWXyfWbAe3aNN9L6I4PexpRj17EHTUzuY7d0F8aiu7RK12Al3inyeeewhJY1ebzkhxTY/9TEgpabZARe6zztPpZcBiq4xG2miQm7Oz7lioYdPZ08/gzNgz6U99JtlNw/spIq7azqqAZVpiQarZPjKlokGDv/l9IDnuBuEtHHUyY6QzOzZtocFlBGBDHEcSeK0akDtm+U7IPdl7JI7JOppmo4TJQW4yM/R7fol1YZpr+pDtaF37NhgGCKNADHXmxweWInwp8rEFIwqsV7axH9PhhUSIFVLieT2ZeA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=+hpi4GzxVUT91hfToDu51Ag2FWYqgV+Aa/GRAQWx9hg=; b=iMeH+0XM4CGz+aHOiSj2X4e7RBbyP2pePNksY01+JMXX6WLlLeXgEqmoxka8JCJXrvIWFSxMECW08q4+REY65aHKi0+2hqo4f5hCc2X4IN/THgkfd6HmJd8QBo3Ornc3stGDBRC0HxBBGeK8eb7sMxo2pxvkzYIoyxMLcNV1NYfAhdVtPG5FgTUGy86F//azeCzpx4m7rm3xQGpJh1u+tAKKPeSKImj8Q6ykwfeJ3it04q/ebFXr3gJ9RAmrtqM8DasMF+9PSnf9PkOJZGpbf0q3rz+9ET8SMXrjnMo8zrGyD8bgwC6y4S0pbu+NSw3yzrPgJxCVoMCnS4RhK74hEQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=+hpi4GzxVUT91hfToDu51Ag2FWYqgV+Aa/GRAQWx9hg=; b=48YdkSEqLfOouJKojlJK7vDW4Rd5DKXsv9l5G2opAsGMpNyny41aBPzDzGBr43g4aQEbWCI5paiqdSX1YEUnFq6SdXGkxAIo1n/ULCvbIwzM7IMd08AbNkyG3LPNTGBrHUIqVfSeTJqWAlMBqRdMp3mjn0hDKsjjZWJ+LmjwR+E= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C From: Vikram Garhwal To: CC: , , , , Julien Grall Subject: [XEN][PATCH v7 01/19] common/device_tree: handle memory allocation failure in __unflatten_device_tree() Date: Thu, 1 Jun 2023 17:48:06 -0700 Message-ID: <20230602004824.20731-2-vikram.garhwal@amd.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20230602004824.20731-1-vikram.garhwal@amd.com> References: <20230602004824.20731-1-vikram.garhwal@amd.com> MIME-Version: 1.0 Content-Type: text/plain X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO1NAM11FT003:EE_|SJ0PR12MB6880:EE_ X-MS-Office365-Filtering-Correlation-Id: f652c363-7d88-42dc-6e5e-08db63031f31 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: nchpwUSPMqgyCLreph5U2KdLnH3dAzIASVUpvDdJEVm/3yG5+r3iDMG3H+qqQl4PRZiAWFcr3xIo+EdfSt4xv2W8Rb5Ou9zvxhVHl3+elirurJm3v69rJk+VELW5/zpD589TnrW8a6a1JqJg0ZfAPi0g1BzhoGB6d6j7DOoSRLuOQ88Xv4Uzg1EJmIdEYYObuvfw9sLof83DZOGlNj9VhiKUtkbRMk3qNH3f+Ceaf7B1JROYLa1jkbbTdcWSJVyYPbI1RFjzC+NXIDZotPw3X7ft/aaQaul+Q0yxuKnRB2VtA6efwQF2HVjZSNzitnBhRO49Yh/5sXSKwfn3UD0EQhXC2QbNOEOW3aCYp2oei4rx0B33J5SFT0VNE8EgEzVq/C53oUQttA+W+h4wifeBgS+2o27zkiwX5QB/49u+2DHcG334TxuJ9Xbg5OEVqaNJ5C0VTdaDLomFk2EgtgGXmcVkm6335GGE+Zm3AweQkgXgBiqqs++Ai1dC3aSrspp3hTgifD4JqUeAhtp9w/KljVZ72sDR5xC1dvaNa13eJEFdl6Idnmmn4Xzj3wnXQsaQFDGaW+CK6SVHe9lnh/Le0+xN5D/QfC14rQaQutCS1L24+IMkGejOo+6GLcXmiUccOonhn1SXEtr6xFM+S5T4y5eANlCq/Yb+nDHpcu+OpeO1CHKocp4eeCx7TDNXqRFpVHIBDsn6Vrrvn89BpXMHmfFQlzrn6poMf843skxQVJZulJoU2+wjjk5EKzXfKht6umV3OSfwfKy2Ww5VaUqoFA== X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(346002)(376002)(39860400002)(396003)(136003)(451199021)(36840700001)(40470700004)(46966006)(40460700003)(26005)(1076003)(186003)(6666004)(36860700001)(2616005)(83380400001)(336012)(47076005)(426003)(41300700001)(316002)(2906002)(44832011)(8936002)(5660300002)(8676002)(478600001)(6916009)(4326008)(70586007)(70206006)(54906003)(36756003)(40480700001)(86362001)(82740400003)(356005)(81166007)(82310400005)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Jun 2023 00:48:46.1035 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: f652c363-7d88-42dc-6e5e-08db63031f31 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com] X-MS-Exchange-CrossTenant-AuthSource: CO1NAM11FT003.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR12MB6880 Change __unflatten_device_tree() return type to integer so it can propagate memory allocation failure. Add panic() in dt_unflatten_host_device_tree() for memory allocation failure during boot. Fixes: fb97eb614acf ("xen/arm: Create a hierarchical device tree") Signed-off-by: Vikram Garhwal Reviewed-by: Henry Wang --- xen/common/device_tree.c | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/xen/common/device_tree.c b/xen/common/device_tree.c index 8da1052911..dfdb10e488 100644 --- a/xen/common/device_tree.c +++ b/xen/common/device_tree.c @@ -2092,8 +2092,8 @@ static unsigned long __init unflatten_dt_node(const void *fdt, * @fdt: The fdt to expand * @mynodes: The device_node tree created by the call */ -static void __init __unflatten_device_tree(const void *fdt, - struct dt_device_node **mynodes) +static int __init __unflatten_device_tree(const void *fdt, + struct dt_device_node **mynodes) { unsigned long start, mem, size; struct dt_device_node **allnextp = mynodes; @@ -2114,6 +2114,8 @@ static void __init __unflatten_device_tree(const void *fdt, /* Allocate memory for the expanded device tree */ mem = (unsigned long)_xmalloc (size + 4, __alignof__(struct dt_device_node)); + if ( !mem ) + return -ENOMEM; ((__be32 *)mem)[size / 4] = cpu_to_be32(0xdeadbeef); @@ -2131,6 +2133,8 @@ static void __init __unflatten_device_tree(const void *fdt, *allnextp = NULL; dt_dprintk(" <- unflatten_device_tree()\n"); + + return 0; } static void dt_alias_add(struct dt_alias_prop *ap, @@ -2215,7 +2219,11 @@ dt_find_interrupt_controller(const struct dt_device_match *matches) void __init dt_unflatten_host_device_tree(void) { - __unflatten_device_tree(device_tree_flattened, &dt_host); + int error = __unflatten_device_tree(device_tree_flattened, &dt_host); + + if ( error ) + panic("__unflatten_device_tree failed with error %d\n", error); + dt_alias_scan(); } -- 2.17.1 From xen-devel-bounces@lists.xenproject.org Fri Jun 02 00:49:05 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 02 Jun 2023 00:49:05 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542797.847151 (Exim 4.92) (envelope-from ) id 1q4syW-000350-Th; Fri, 02 Jun 2023 00:49:04 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542797.847151; Fri, 02 Jun 2023 00:49:04 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4syW-0002zU-B4; Fri, 02 Jun 2023 00:49:04 +0000 Received: by outflank-mailman (input) for mailman id 542797; Fri, 02 Jun 2023 00:49:01 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4syS-0000if-Vw for xen-devel@lists.xenproject.org; Fri, 02 Jun 2023 00:49:00 +0000 Received: from NAM11-BN8-obe.outbound.protection.outlook.com (mail-bn8nam11on20600.outbound.protection.outlook.com [2a01:111:f400:7eae::600]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 4316075a-00df-11ee-b231-6b7b168915f2; Fri, 02 Jun 2023 02:48:59 +0200 (CEST) Received: from DM6PR03CA0074.namprd03.prod.outlook.com (2603:10b6:5:333::7) by BL1PR12MB5753.namprd12.prod.outlook.com (2603:10b6:208:390::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6433.23; Fri, 2 Jun 2023 00:48:56 +0000 Received: from DM6NAM11FT053.eop-nam11.prod.protection.outlook.com (2603:10b6:5:333:cafe::95) by DM6PR03CA0074.outlook.office365.com (2603:10b6:5:333::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.23 via Frontend Transport; Fri, 2 Jun 2023 00:48:56 +0000 Received: from SATLEXMB04.amd.com (165.204.84.17) by DM6NAM11FT053.mail.protection.outlook.com (10.13.173.74) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6455.24 via Frontend Transport; Fri, 2 Jun 2023 00:48:56 +0000 Received: from SATLEXMB08.amd.com (10.181.40.132) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Thu, 1 Jun 2023 19:48:55 -0500 Received: from SATLEXMB04.amd.com (10.181.40.145) by SATLEXMB08.amd.com (10.181.40.132) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Thu, 1 Jun 2023 17:48:55 -0700 Received: from xsjfnuv50.xilinx.com (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server id 15.1.2375.34 via Frontend Transport; Thu, 1 Jun 2023 19:48:54 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 4316075a-00df-11ee-b231-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=L26MiYxe1R9ZduPra0t4svbywQKYqhNTWmixJ5taaF5zewdJjHqDAmfKKl6aNoU71q70S4kEoRx5yKFaYKobDBkELfOQzPBePb9dIGNIF3klLyCPcJO6oCyWrTMGmiUSj0B1LBuOUYuRuXFvc0HC/+TNGBek4HamH4uDB/qdy/GAo/EbkxcRy66txfU3BX92X4qIzLqxAZfZAaBTZYMek9gq+UnRRJ4d+nVXVjmedtvNt3+v0mVFnsdoe7QAEQ6YzGA6uCH4K+AOlJ9w6HQ4BqqUisM7LLTR4vOKNP6yDEgymtYuQiKcIHrAS3a+yt1Aokx7bTixiq7UmSTY2+MtrQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=x8f6Wjw45ONksBxgsuuhCKdaU9dyqrhh4lFwNBN7Yrs=; b=I4Q7k9x+ahBWBVj3K0eqhewn44sxhfRHxqvLBiaQsn7/4u9Sp0Zd87He1Zh+lTIVWaccV6zbPVA9TookyuWKgWyx3UDOBN5rPyP4e9dkPiwM293R8whvDNdHFlqZdH0UlOjSZG3hck45Qao1HV0MzaZ47xdBz9dKJ25z6kIeejmm9MllWFn5rjGqpyzBbye9wIutvKwkjg9MqaHx3/Pw3D9vtEMbFv3uj5DmU58yt8LEd94KqaCF2BLUKZ1wKkyU6Gvvqov8xh0x4hsPPzPA9jbiHP/29o0v76mEbxgfwkwIsi0w4ua0fBGJHRLZSEcpVMUJ9h9okfa+r29UKFfxCw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=x8f6Wjw45ONksBxgsuuhCKdaU9dyqrhh4lFwNBN7Yrs=; b=I1HKJHIsQVNgT4GI25U2DhS0jmwfhJmgHWR4o9Db05sRqcz+fmfzAwM9ykDv0geCRtfAW/UM7F8nFQ5mWTZ8GyWa7XM/p/elv7q8KfYwdC++gLrET43/jgWkExh82zjb+LerGc3TTtvsii3p18C/AaigZ28Mb2jcETEL19ZyAeA= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C From: Vikram Garhwal To: CC: , , , , Julien Grall , Rahul Singh , Bertrand Marquis , Volodymyr Babchuk Subject: [XEN][PATCH v7 12/19] xen/smmu: Add remove_device callback for smmu_iommu ops Date: Thu, 1 Jun 2023 17:48:17 -0700 Message-ID: <20230602004824.20731-13-vikram.garhwal@amd.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20230602004824.20731-1-vikram.garhwal@amd.com> References: <20230602004824.20731-1-vikram.garhwal@amd.com> MIME-Version: 1.0 Content-Type: text/plain X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DM6NAM11FT053:EE_|BL1PR12MB5753:EE_ X-MS-Office365-Filtering-Correlation-Id: ceb94667-5c61-4736-1876-08db63032518 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: VnnBptogcLG1GiuYNmXTDIatpv8PWVsbLqJ8+bSGaCJ4QllWDPJSmP1N7QIhBShCDg2EBJ27+3gSU58y1pPesmXd4WU34uR/OBhT4TFLpYCUlDRjqQUyoeLZvgB8Qfp0lVXtU1fPbEIL+Qk5cO1cmQuKHrSldQbYo35JwrsFS74mvssy5ObM7f6JKHFcJAkm5uq4JoXnn5bJhGrO+fDoxUY5J6NC3+z77vNDojapMoerNB7En7rcPHVNmF84DH21JP56kBtqDdd7Z62oFRQnJyE0q3n060aJDwW6sETUvO1ZsL2hIz5f3DpNufLgzBWhwzUXILi9ZtuO9EKdK4sAHtZlILBWoS0qefligC04y0fqTd8qU6ifQbxqqsMnHuhcpPiddDMQMtYQd2Nt12ABM68ifjno++7QNDaT9Hpxaqed94Qbr7MUWVYHHzG4rd5Tjq8WYEXH0V4u02+9u1B2wO8MrLdsY0hMn2OaEYVpASftTig8yLrxVojyDtYUkW6GwLmUyua1uktPz3Y7thLtWp4OcrtPdS15n/qw39zs1lzju+vtn1x0gofV2YTBzeKwMGyIbjIb4C8FGoNdz3eRgwoTrpF0nq+987vzrmBGFbokWG25NoZwY9Xg82/XZFMUUmsPe/JHKX+iX3CDsQALsvs50gy991YwqtQ/BQzZou9hE7/GtR+zNNiYSDJkp8RzKC31fsuRFY95l42O1FZ824l5WlaV10pv/G3pM7BWYNIMkpFS6DXeRVxZrFFLAMpYi/uDXsJvqYP7Fr3GM7boyQ== X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(376002)(136003)(346002)(396003)(451199021)(46966006)(40470700004)(36840700001)(1076003)(186003)(2906002)(36860700001)(36756003)(2616005)(336012)(83380400001)(40480700001)(40460700003)(426003)(4326008)(47076005)(316002)(6916009)(6666004)(70586007)(70206006)(41300700001)(54906003)(82740400003)(81166007)(356005)(478600001)(44832011)(8936002)(26005)(82310400005)(86362001)(5660300002)(8676002)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Jun 2023 00:48:56.0663 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: ceb94667-5c61-4736-1876-08db63032518 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com] X-MS-Exchange-CrossTenant-AuthSource: DM6NAM11FT053.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: BL1PR12MB5753 Add remove_device callback for removing the device entry from smmu-master using following steps: 1. Find if SMMU master exists for the device node. 2. Check if device is currently in use. 3. Remove the SMMU master. Signed-off-by: Vikram Garhwal Reviewed-by: Luca Fancellu Reviewed-by: Michal Orzel --- xen/drivers/passthrough/arm/smmu.c | 59 ++++++++++++++++++++++++++++++ 1 file changed, 59 insertions(+) diff --git a/xen/drivers/passthrough/arm/smmu.c b/xen/drivers/passthrough/arm/smmu.c index c37fa9af13..fdef6e7a7d 100644 --- a/xen/drivers/passthrough/arm/smmu.c +++ b/xen/drivers/passthrough/arm/smmu.c @@ -44,6 +44,7 @@ #include #include #include +#include #include #include #include @@ -815,6 +816,19 @@ static int insert_smmu_master(struct arm_smmu_device *smmu, return 0; } +static int remove_smmu_master(struct arm_smmu_device *smmu, + struct arm_smmu_master *master) +{ + if (!smmu->masters.rb_node) { + ASSERT_UNREACHABLE(); + return -ENOENT; + } + + rb_erase(&master->node, &smmu->masters); + + return 0; +} + static int arm_smmu_dt_add_device_legacy(struct arm_smmu_device *smmu, struct device *dev, struct iommu_fwspec *fwspec) @@ -852,6 +866,34 @@ static int arm_smmu_dt_add_device_legacy(struct arm_smmu_device *smmu, return insert_smmu_master(smmu, master); } +static int arm_smmu_dt_remove_device_legacy(struct arm_smmu_device *smmu, + struct device *dev) +{ + struct arm_smmu_master *master; + struct device_node *dev_node = dev_get_dev_node(dev); + int ret; + + master = find_smmu_master(smmu, dev_node); + if (master == NULL) { + dev_err(dev, + "No registrations found for master device %s\n", + dev_node->name); + return -EINVAL; + } + + if (iommu_dt_device_is_assigned_locked(dev_to_dt(dev))) + return -EBUSY; + + ret = remove_smmu_master(smmu, master); + if (ret) + return ret; + + dev_node->is_protected = false; + + kfree(master); + return 0; +} + static int register_smmu_master(struct arm_smmu_device *smmu, struct device *dev, struct of_phandle_args *masterspec) @@ -875,6 +917,22 @@ static int register_smmu_master(struct arm_smmu_device *smmu, fwspec); } +static int arm_smmu_dt_remove_device_generic(u8 devfn, struct device *dev) +{ + struct arm_smmu_device *smmu; + struct iommu_fwspec *fwspec; + + fwspec = dev_iommu_fwspec_get(dev); + if (fwspec == NULL) + return -ENXIO; + + smmu = find_smmu(fwspec->iommu_dev); + if (smmu == NULL) + return -ENXIO; + + return arm_smmu_dt_remove_device_legacy(smmu, dev); +} + static int arm_smmu_dt_add_device_generic(u8 devfn, struct device *dev) { struct arm_smmu_device *smmu; @@ -2859,6 +2917,7 @@ static const struct iommu_ops arm_smmu_iommu_ops = { .init = arm_smmu_iommu_domain_init, .hwdom_init = arch_iommu_hwdom_init, .add_device = arm_smmu_dt_add_device_generic, + .remove_device = arm_smmu_dt_remove_device_generic, .teardown = arm_smmu_iommu_domain_teardown, .iotlb_flush = arm_smmu_iotlb_flush, .assign_device = arm_smmu_assign_dev, -- 2.17.1 From xen-devel-bounces@lists.xenproject.org Fri Jun 02 00:49:06 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 02 Jun 2023 00:49:06 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542798.847158 (Exim 4.92) (envelope-from ) id 1q4syX-0003EC-Ll; Fri, 02 Jun 2023 00:49:05 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542798.847158; Fri, 02 Jun 2023 00:49:05 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4syX-0003C0-5p; Fri, 02 Jun 2023 00:49:05 +0000 Received: by outflank-mailman (input) for mailman id 542798; Fri, 02 Jun 2023 00:49:01 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4syT-00018B-9y for xen-devel@lists.xenproject.org; Fri, 02 Jun 2023 00:49:01 +0000 Received: from NAM12-BN8-obe.outbound.protection.outlook.com (mail-bn8nam12on20619.outbound.protection.outlook.com [2a01:111:f400:fe5b::619]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 42925077-00df-11ee-8611-37d641c3527e; Fri, 02 Jun 2023 02:48:59 +0200 (CEST) Received: from MW4PR04CA0097.namprd04.prod.outlook.com (2603:10b6:303:83::12) by MN2PR12MB4582.namprd12.prod.outlook.com (2603:10b6:208:26b::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6433.26; Fri, 2 Jun 2023 00:48:56 +0000 Received: from CO1NAM11FT112.eop-nam11.prod.protection.outlook.com (2603:10b6:303:83:cafe::ca) by MW4PR04CA0097.outlook.office365.com (2603:10b6:303:83::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.23 via Frontend Transport; Fri, 2 Jun 2023 00:48:55 +0000 Received: from SATLEXMB03.amd.com (165.204.84.17) by CO1NAM11FT112.mail.protection.outlook.com (10.13.174.213) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6455.24 via Frontend Transport; Fri, 2 Jun 2023 00:48:55 +0000 Received: from SATLEXMB08.amd.com (10.181.40.132) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Thu, 1 Jun 2023 19:48:54 -0500 Received: from SATLEXMB04.amd.com (10.181.40.145) by SATLEXMB08.amd.com (10.181.40.132) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Thu, 1 Jun 2023 17:48:54 -0700 Received: from xsjfnuv50.xilinx.com (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server id 15.1.2375.34 via Frontend Transport; Thu, 1 Jun 2023 19:48:53 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 42925077-00df-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=LbdfTIhNv4OLVWrNP5mYWLnmWofmDkgClqNefvtthr79xyZ28ZsxXCnY4kcldDZEf8yM1qq89z3IbzJ+X3y+XUVuLHaL1RotX8X1wpROsprrFEHwRPA5Gr0yq2fyRUjmFQvhGWnqRWwyHQcqVxxti4dRiG7WR4SxXp1bmBek0AdGSFk4aMKhSgkm8Z6V0bK307l82o4rN0f239mWUx8oHwJhJGLOrrlr1cFOVF1HuNnsAGc52FQcgulF3KPzWdnwlzWjPCIBC7Omo8Lfk88N6WGe5IagPqiw7sdEm7SvyZvKomJS3AFtjp5cbiqgzeqvQj/Mk1nAwbC+kQfdMXUDHg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=SyXqOAFxYRECrwE1b2BNmdAgZBkIMTgn0iP+i+1WDJY=; b=mzxWwgBMuYOdSW4Nhj0pGETvue30ztZlHlSdBVGkmzn1M1unGKnb7WweFKCErXnwWMyXu/et2ZXRsik8tVwp2ZQIkHaxtxSHmmvTF7XAGpZxaq4Ay5G8eDLvPy59XZhgc8n/Pda2lKoonToqPu/GaeLtnhZ5CxknKMAH0raojAfKYVqfmbPA4/OvrVzn7tGkm6RgUGQ910HnqVOSWOfo9HX289x1vUpxwjr4RSOkpC/vCvI9Ab/5I5m1jVqMV0Kx+r37JYFYsyW6diWNO89faeg5colfidl2gFVVfp5eUbJjP1Qm1VxhUSrERHi7x+wyd6xDCFjgbX4m/EiJrrdf0g== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=SyXqOAFxYRECrwE1b2BNmdAgZBkIMTgn0iP+i+1WDJY=; b=UOO0h68uhzaEulaqDNYowPGBsD6CpGzSxt/9iZSUiuoWY1fH9w6QcEMpsauG/uEev2Q5Dff9tza128cHgm+mH8kTd/HP10oFyEFgUf2F4gzFARvk5grBsUKMwYwbeUMWK4xDltoueHOn0uNHDc0/blZaZAftBvaqNCA4Ilae+Cw= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C From: Vikram Garhwal To: CC: , , , , Julien Grall , Paul Durrant , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= Subject: [XEN][PATCH v7 11/19] xen/iommu: Introduce iommu_remove_dt_device() Date: Thu, 1 Jun 2023 17:48:16 -0700 Message-ID: <20230602004824.20731-12-vikram.garhwal@amd.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20230602004824.20731-1-vikram.garhwal@amd.com> References: <20230602004824.20731-1-vikram.garhwal@amd.com> MIME-Version: 1.0 Content-Type: text/plain X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO1NAM11FT112:EE_|MN2PR12MB4582:EE_ X-MS-Office365-Filtering-Correlation-Id: 68f3fd61-e29e-416e-f561-08db630324c4 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: RAFsIcHVmsqwTvrA2ibNNgBwwG/WvKLzhRa6ZoKASaEMTgwCHMuY559yXcLx7LLzzx+juoWkHXpnZuFVp60Ui7yRaPX+OVtHSh4+qCCfzobnm/KABYZ8arMzbLdDCFi+IHL7uDVzWDR7ObN7A2wJ9Vc2Znt3HtWYLp6wQ0QYQV6s9B97GV6sHc043YT6gSaWO0ant9mtHfMo5zNpCRRt5hyK/H2Vq7LZ8RS8Duo3NilpRhqsCliGExSsEClnID76Ia7rhMnkbxpp3DY97mWZ00w+r8jDItIXzN1Tz7MCZg5IzdCLlA1zukhDQ3ENIgoio+uz+SRXSkhq2SNHNn7y3ZjEsLf7G4L+GRdA9BALrzLG3m0Lp5XfWVwLwsV5xpHFifrKPgBqmAT2zEKfb+1S+LKt0Ano0ZQlUTTmg/rZFXJnu1UtF6YwXKMgbruqGw6TPh7zxeLyZjFmjVajRGozgCY2dQQXMzMi4lFFAAkrY/3rlkeLW5SRHeWbT4yBEpj6Xvk1/s0ffux7zlV96AwFmeEzMGWl1q2L3qdUI/6qnIn+KqKcEzBUUYN4xL0sTWP+om3q5ORCSmRt1cWsgc8RLTwGDNQfQ0yQULtGmI4C8BVzdx4Y/n8dsxCBbg55ah6VZ9ZvTcrNi48t4F4T4ody8uX1Z6XS55E8vHzGQdX03c6FNxOU5kwNUbEWseLkveeUHo+7GA7uS8zSVYE0kZcbmXURVFaGL0WqQyX0k/W+S75V445h/yELsF5OES7LqOzYdaGMA9lfPKlOQzFgn/zvzw== X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(376002)(346002)(136003)(39860400002)(396003)(451199021)(36840700001)(46966006)(40470700004)(40460700003)(36860700001)(82740400003)(5660300002)(81166007)(356005)(8676002)(8936002)(1076003)(426003)(336012)(83380400001)(2906002)(26005)(2616005)(47076005)(44832011)(40480700001)(6916009)(6666004)(316002)(70206006)(4326008)(41300700001)(70586007)(86362001)(82310400005)(36756003)(186003)(478600001)(54906003)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Jun 2023 00:48:55.4590 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 68f3fd61-e29e-416e-f561-08db630324c4 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com] X-MS-Exchange-CrossTenant-AuthSource: CO1NAM11FT112.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN2PR12MB4582 Remove master device from the IOMMU. This will be helpful when removing the overlay nodes using dynamic programming during run time. Signed-off-by: Vikram Garhwal Reviewed-by: Michal Orzel Acked-by: Jan Beulich --- xen/drivers/passthrough/device_tree.c | 41 +++++++++++++++++++++++++++ xen/include/xen/iommu.h | 2 ++ 2 files changed, 43 insertions(+) diff --git a/xen/drivers/passthrough/device_tree.c b/xen/drivers/passthrough/device_tree.c index 8cc413f867..301a5bcd97 100644 --- a/xen/drivers/passthrough/device_tree.c +++ b/xen/drivers/passthrough/device_tree.c @@ -126,6 +126,47 @@ int iommu_release_dt_devices(struct domain *d) return 0; } +int iommu_remove_dt_device(struct dt_device_node *np) +{ + const struct iommu_ops *ops = iommu_get_ops(); + struct device *dev = dt_to_dev(np); + int rc; + + if ( !ops ) + return -EOPNOTSUPP; + + spin_lock(&dtdevs_lock); + + if ( iommu_dt_device_is_assigned_locked(np) ) + { + rc = -EBUSY; + goto fail; + } + + /* + * The driver which supports generic IOMMU DT bindings must have this + * callback implemented. + */ + if ( !ops->remove_device ) + { + rc = -EOPNOTSUPP; + goto fail; + } + + /* + * Remove master device from the IOMMU if latter is present and available. + * The driver is responsible for removing is_protected flag. + */ + rc = ops->remove_device(0, dev); + + if ( !rc ) + iommu_fwspec_free(dev); + +fail: + spin_unlock(&dtdevs_lock); + return rc; +} + int iommu_add_dt_device(struct dt_device_node *np) { const struct iommu_ops *ops = iommu_get_ops(); diff --git a/xen/include/xen/iommu.h b/xen/include/xen/iommu.h index 405db59971..0d7924821b 100644 --- a/xen/include/xen/iommu.h +++ b/xen/include/xen/iommu.h @@ -229,6 +229,8 @@ int iommu_release_dt_devices(struct domain *d); */ int iommu_add_dt_device(struct dt_device_node *np); +int iommu_remove_dt_device(struct dt_device_node *np); + int iommu_do_dt_domctl(struct xen_domctl *, struct domain *, XEN_GUEST_HANDLE_PARAM(xen_domctl_t)); -- 2.17.1 From xen-devel-bounces@lists.xenproject.org Fri Jun 02 00:49:08 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 02 Jun 2023 00:49:08 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542799.847170 (Exim 4.92) (envelope-from ) id 1q4syZ-0003cF-PK; Fri, 02 Jun 2023 00:49:07 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542799.847170; Fri, 02 Jun 2023 00:49:07 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4syY-0003Z8-V8; Fri, 02 Jun 2023 00:49:06 +0000 Received: by outflank-mailman (input) for mailman id 542799; Fri, 02 Jun 2023 00:49:02 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4syU-00018B-AB for xen-devel@lists.xenproject.org; Fri, 02 Jun 2023 00:49:02 +0000 Received: from NAM11-DM6-obe.outbound.protection.outlook.com (mail-dm6nam11on2061e.outbound.protection.outlook.com [2a01:111:f400:7eaa::61e]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 42edd0b9-00df-11ee-8611-37d641c3527e; Fri, 02 Jun 2023 02:48:59 +0200 (CEST) Received: from DM6PR06CA0028.namprd06.prod.outlook.com (2603:10b6:5:120::41) by DS0PR12MB6439.namprd12.prod.outlook.com (2603:10b6:8:c9::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.23; Fri, 2 Jun 2023 00:48:54 +0000 Received: from DM6NAM11FT052.eop-nam11.prod.protection.outlook.com (2603:10b6:5:120:cafe::16) by DM6PR06CA0028.outlook.office365.com (2603:10b6:5:120::41) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.24 via Frontend Transport; Fri, 2 Jun 2023 00:48:54 +0000 Received: from SATLEXMB04.amd.com (165.204.84.17) by DM6NAM11FT052.mail.protection.outlook.com (10.13.172.111) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6455.24 via Frontend Transport; Fri, 2 Jun 2023 00:48:54 +0000 Received: from SATLEXMB07.amd.com (10.181.41.45) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Thu, 1 Jun 2023 19:48:52 -0500 Received: from SATLEXMB04.amd.com (10.181.40.145) by SATLEXMB07.amd.com (10.181.41.45) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Thu, 1 Jun 2023 17:48:52 -0700 Received: from xsjfnuv50.xilinx.com (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server id 15.1.2375.34 via Frontend Transport; Thu, 1 Jun 2023 19:48:51 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 42edd0b9-00df-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=G1dreupGVujvSg/z+Wqao6TRb24z6Eo5sPR42CqhbGe2reI8sJ9DUnie7v4Jp/Vk3coLPf7VWT941Vj+GoCvX9VuOlUfBzWbOLJD2EeN+bMpDWF6xfB/1kFeVYNVj6kb3Y952Oqc4VRfbfpXHFtUEqoaOq4pTNV4EoJl6/QbyAhvmiK5FHdoSHAKO6slyV135DRYpy7NTxKSvYcHan2vjeDoUaffcCy+BZ/MKGpoPWaXDCzC/GclrnEKmKr8Sd7F49z+havEQ85ZCrB55efaQKDs+Pxhu0t50RIsE3iDJlOn8i2eYYaknkqcATt7A4W99EfGYpeD/u1jMyYTWhg9pg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=vBab6IziVUb8VqAgLKyxqLfCTUlQNBsFeFHWzmZz53Q=; b=lUCbA0cVQvu+JGz77SuhGKpUuFxm0vMmT1xi+oLSf7TwkcbrOSZpRZZ/YiR/7apFYlKRPmbHMzFOoC5ETcLzwvlTnFQJ90ipKWBDDUJjQAhUiEA61+dn/IJyJV7qRhrFwVLkuomcDCoyJ+wEzyIgHwzVASSKWcOABvJK4eLjueJUU+VoqECDrIPIEmoxPwjEOHestXj7K9DvIt4ZiFTOtwFACnJV/xKxyD06J9YlyWNgClxcLIRaURXZ9lLvZ2ugxJ+em9+LMKGQunLreVuaux3hcv/VSwjKpbIdRtMdkenkv+1aCOKl6f/MHzFl1j7HsIUNQow+iNukm3yvR+yIyA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=vBab6IziVUb8VqAgLKyxqLfCTUlQNBsFeFHWzmZz53Q=; b=4uc+/KsJhACoD8vcNwCd5CEbLUxco53XCTLFNFkQIxIoXwo6amGGz9fYYpZcxGvxXC+lpNHfw61koA3Mouf7DBHO2w06GGFLfRDBaHdFVciIVCqYIJ+eUMS0PONUa7Vy49uJFdKp0M+Xw0lcDBF4FnrwdjbPijfdJxlaVuskeR8= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C From: Vikram Garhwal To: CC: , , , , Julien Grall , Andrew Cooper , George Dunlap , Wei Liu Subject: [XEN][PATCH v7 09/19] xen/iommu: Move spin_lock from iommu_dt_device_is_assigned to caller Date: Thu, 1 Jun 2023 17:48:14 -0700 Message-ID: <20230602004824.20731-10-vikram.garhwal@amd.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20230602004824.20731-1-vikram.garhwal@amd.com> References: <20230602004824.20731-1-vikram.garhwal@amd.com> MIME-Version: 1.0 Content-Type: text/plain X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DM6NAM11FT052:EE_|DS0PR12MB6439:EE_ X-MS-Office365-Filtering-Correlation-Id: c22cd97e-2869-4017-2b83-08db630323f0 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 2figlig/kEBWEXIlqMT7DFbL03nzTvTlqiYQPY3FY3AWx0nTwM6Y8NcETmvUuHbj3bVC6obAdyaYdJhzDX5dFDkdApkZ2+PZn7sInpguOK+EmBCB7mXPW4H3YuPGUJDmX89+vDBKGPDLt2ZfPFngDO2XMy2blHWKWIcm64k/wbohEXN0MxTpPZ7uzbTOfwqBElb/bobXYsaTqlrUqbNpmBUhxXigbh6jkWu1B4fdw8/f3DW98vmbBcLjFnpl2QlCej3utnOCFWNKit1G2oZWs1LbNQsM3QNdx3ceIX0JBImiGvM1DFuYbEBDTu73fho80uWrqqEJ/ivbeRgPytvN78J1jqtloHPwoOcsvf3OlaeF22Uft3lSYjbJbSnu9f7RTNBua7MXDzEttMvAr8vAgv/5UKcsB38MFSmiwjtGDwSc48MOdXVPQCYgiwjfaXnfBCwZStaTf6dXzCi/y9k+LFFjSqR8adJwKNGiqai7burq7LV/L5bru9ZnkXQzfYFonehQdH992ErjzWC7iRA/MySpBc2JPe317SdRlPvJy4sieeZZaP6QxAXP3x7xeDvaLF14tp/1wQo7hL7RpJlPkIAw/nGHzAzLMfqrwZBqj5raTsvuX7tz21cxlK1jAUQTR6ewPT9bPgiY7A/YeXHHHuw+lDtujOUOyeVc11x7e53cVJrZa4WVgJHJlwn8uAt07Yg1Gr+mibnkNaq7GCvZjtxPbvCw/h+gBXQBxTe5DjLFk1rvvkxKSYsWlf43YWIeYHZsA4PiKCWye431AXK9Rg== X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(346002)(136003)(396003)(376002)(451199021)(36840700001)(46966006)(40470700004)(54906003)(40460700003)(478600001)(44832011)(8676002)(8936002)(5660300002)(36756003)(86362001)(2906002)(81166007)(4326008)(6916009)(356005)(70586007)(70206006)(82310400005)(316002)(40480700001)(82740400003)(41300700001)(426003)(336012)(83380400001)(1076003)(26005)(2616005)(36860700001)(186003)(6666004)(47076005)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Jun 2023 00:48:54.1270 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: c22cd97e-2869-4017-2b83-08db630323f0 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com] X-MS-Exchange-CrossTenant-AuthSource: DM6NAM11FT052.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS0PR12MB6439 Rename iommu_dt_device_is_assigned() to iommu_dt_device_is_assigned_locked(). Remove static type so this can also be used by SMMU drivers to check if the device is being used before removing. Moving spin_lock to caller was done to prevent the concurrent access to iommu_dt_device_is_assigned while doing add/remove/assign/deassign. Signed-off-by: Vikram Garhwal --- Changes from v6: Created a private header and moved iommu_dt_device_is_assigned() to header. --- xen/drivers/passthrough/device_tree.c | 20 ++++++++++++++++---- xen/include/xen/iommu-private.h | 27 +++++++++++++++++++++++++++ 2 files changed, 43 insertions(+), 4 deletions(-) create mode 100644 xen/include/xen/iommu-private.h diff --git a/xen/drivers/passthrough/device_tree.c b/xen/drivers/passthrough/device_tree.c index 1c32d7b50c..52e370db01 100644 --- a/xen/drivers/passthrough/device_tree.c +++ b/xen/drivers/passthrough/device_tree.c @@ -18,6 +18,7 @@ #include #include #include +#include #include #include #include @@ -83,16 +84,14 @@ fail: return rc; } -static bool_t iommu_dt_device_is_assigned(const struct dt_device_node *dev) +bool_t iommu_dt_device_is_assigned_locked(const struct dt_device_node *dev) { bool_t assigned = 0; if ( !dt_device_is_protected(dev) ) return 0; - spin_lock(&dtdevs_lock); assigned = !list_empty(&dev->domain_list); - spin_unlock(&dtdevs_lock); return assigned; } @@ -213,27 +212,40 @@ int iommu_do_dt_domctl(struct xen_domctl *domctl, struct domain *d, if ( (d && d->is_dying) || domctl->u.assign_device.flags ) break; + spin_lock(&dtdevs_lock); + ret = dt_find_node_by_gpath(domctl->u.assign_device.u.dt.path, domctl->u.assign_device.u.dt.size, &dev); if ( ret ) + { + spin_unlock(&dtdevs_lock); break; + } ret = xsm_assign_dtdevice(XSM_HOOK, d, dt_node_full_name(dev)); if ( ret ) + { + spin_unlock(&dtdevs_lock); break; + } if ( domctl->cmd == XEN_DOMCTL_test_assign_device ) { - if ( iommu_dt_device_is_assigned(dev) ) + + if ( iommu_dt_device_is_assigned_locked(dev) ) { printk(XENLOG_G_ERR "%s already assigned.\n", dt_node_full_name(dev)); ret = -EINVAL; } + + spin_unlock(&dtdevs_lock); break; } + spin_unlock(&dtdevs_lock); + if ( d == dom_io ) return -EINVAL; diff --git a/xen/include/xen/iommu-private.h b/xen/include/xen/iommu-private.h new file mode 100644 index 0000000000..5615decaff --- /dev/null +++ b/xen/include/xen/iommu-private.h @@ -0,0 +1,27 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ + /* + * xen/iommu-private.h + * + * + * Copyright (C) 2023, Advanced Micro Devices, Inc. All Rights Reserved. + * Written by Vikram Garhwal + * + */ +#ifndef __XEN_IOMMU_PRIVATE_H__ +#define __XEN_IOMMU_PRIVATE_H__ + +#ifdef CONFIG_HAS_DEVICE_TREE +#include +bool_t iommu_dt_device_is_assigned_locked(const struct dt_device_node *dev); +#endif + +#endif /* __XEN_IOMMU_PRIVATE_H__ */ +/* + * Local variables: + * mode: C + * c-file-style: "BSD" + * c-basic-offset: 4 + * tab-width: 4 + * indent-tabs-mode: nil + * End: + */ -- 2.17.1 From xen-devel-bounces@lists.xenproject.org Fri Jun 02 00:49:09 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 02 Jun 2023 00:49:09 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542800.847175 (Exim 4.92) (envelope-from ) id 1q4sya-0003nh-TK; Fri, 02 Jun 2023 00:49:08 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542800.847175; Fri, 02 Jun 2023 00:49:08 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4sya-0003it-1H; Fri, 02 Jun 2023 00:49:08 +0000 Received: by outflank-mailman (input) for mailman id 542800; Fri, 02 Jun 2023 00:49:03 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4syV-00018B-AF for xen-devel@lists.xenproject.org; Fri, 02 Jun 2023 00:49:03 +0000 Received: from NAM11-BN8-obe.outbound.protection.outlook.com (mail-bn8nam11on20600.outbound.protection.outlook.com [2a01:111:f400:7eae::600]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 441e66ef-00df-11ee-8611-37d641c3527e; Fri, 02 Jun 2023 02:49:01 +0200 (CEST) Received: from BYAPR21CA0022.namprd21.prod.outlook.com (2603:10b6:a03:114::32) by IA1PR12MB8237.namprd12.prod.outlook.com (2603:10b6:208:3f3::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.22; Fri, 2 Jun 2023 00:48:58 +0000 Received: from DM6NAM11FT027.eop-nam11.prod.protection.outlook.com (2603:10b6:a03:114:cafe::82) by BYAPR21CA0022.outlook.office365.com (2603:10b6:a03:114::32) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.9 via Frontend Transport; Fri, 2 Jun 2023 00:48:58 +0000 Received: from SATLEXMB04.amd.com (165.204.84.17) by DM6NAM11FT027.mail.protection.outlook.com (10.13.172.205) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6455.24 via Frontend Transport; Fri, 2 Jun 2023 00:48:57 +0000 Received: from SATLEXMB08.amd.com (10.181.40.132) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Thu, 1 Jun 2023 19:48:57 -0500 Received: from SATLEXMB04.amd.com (10.181.40.145) by SATLEXMB08.amd.com (10.181.40.132) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Thu, 1 Jun 2023 17:48:57 -0700 Received: from xsjfnuv50.xilinx.com (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server id 15.1.2375.34 via Frontend Transport; Thu, 1 Jun 2023 19:48:56 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 441e66ef-00df-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=PT6FhhSe+0SPWpD+oZ4JGLeC5eTPAnQNRAJ+QKCbTp/C8LHo6MmOOPyJP+cSkSDvk4IkFfVU750ONdrkyMMpR3pJMQGx5pP05M3ZdAN6HXomdSqGHJaGuTdvK32IpqVy/0DUVsjQO8Mx/HBd1ZOjgRTwJkMkxv7HIfnPH+4Jct6Jr+yVLGgkVN8hY88WhbV1IQ8aDgOE9LAJoGGHsW8AkCFpmOHNTlzPTvTZ0q+P4pjVqAnjKfu1AqoGfCyG4j8koSRVGJKR5tRTZQrQJIrXSTiEpAJiFmkwMv0Y+6BfG3SyYyHu9aORlnRmUMN+a/k4wOOJWUMaon0F13SIiIqMvQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=uZPtY0Lq1veAssh7dnLe/7/35DwjQ+2mSJmqdDyTing=; b=IZc/P8PKYmkZBYBtCot8IEE0Yy02aUVyg4ly4RhaIgLe3qI9s2vXx8S7AkB+5/btbmu6hhXSzLyiad16ocn9iYprRisMVbkYqUlQaAH9xYx/H8Bv1LnduoRG4FCgpxi6KB5MQS+Y5B30EBCCQP4PsTsFxtBRBNITpmmBEd4IJQz9J4DgHO8hK/9hqUBfZw8Z2pmt/rEH6Gu9WsEbkHbaVPHXeCfXCX8A8kGK2/Vc58Y6+Z/GP9NfeYMsU4/hSBNHYSG3F8l+V/cr18kofwpln5Hkip2aagHFfxGQXbzzWQbsV6fH8qI40lJ+ZCAEW7X7NkePAmymNUb/VVwIzTx+QQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=uZPtY0Lq1veAssh7dnLe/7/35DwjQ+2mSJmqdDyTing=; b=egWQzMpwD0j5E+Z7jzXk2aaI9yhVGYNL9D/lFqFyhiGJo3zrjLn2clUKFQiw3/bVSAsnpy7YY7d9eU2cHA2Z5XFy3ajpDFyOmhM0f5cEUTXSdvHLvwyxczdWW6PzYj6Za/tg5vPcc0P9ycxfYzYxJSNpRJ1VTlFfyq1Z/AtIhJI= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C From: Vikram Garhwal To: CC: , , , , Julien Grall Subject: [XEN][PATCH v7 14/19] common/device_tree: Add rwlock for dt_host Date: Thu, 1 Jun 2023 17:48:19 -0700 Message-ID: <20230602004824.20731-15-vikram.garhwal@amd.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20230602004824.20731-1-vikram.garhwal@amd.com> References: <20230602004824.20731-1-vikram.garhwal@amd.com> MIME-Version: 1.0 Content-Type: text/plain X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DM6NAM11FT027:EE_|IA1PR12MB8237:EE_ X-MS-Office365-Filtering-Correlation-Id: bc50556f-839f-4c2f-19bb-08db6303262f X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 06MA3nPPPXxc9L1rv4PGzDhESbrLTwpWtC3d3855GTpgJI5pDuwskJJerPp1zjcg7z6/xQW1wVHqXxzWJEnDtgHmWCMu2uf+EWIgzOYYZUSJ35Dq1E8sRVaLWFGIqt4JikmuvL/M5up6zZeia2AAMvyByUj9VrHvWHsPa+CMucuLOmHbBv31voHu9Hligd3oUK5rMZoAoduLPecHSYlzDDPXLY7zPTJT2ZNbYCShdUUYBfPse0rFOATpOsCgkOsN1McLjFPqwkzZht7CeUaT6qhpY0NpIUFYOktaskB6LDLM17/cXbmG+9M9cxV2hXA3JjP/iN5ktJzeENFwTGrIar2kRBsAupVFKlshD9YHLBxXT82i0DFFgaml4g377oP/4JhZBkhHMXq6wsrx3r2ot2EAf7WO/qchIcypxgAQwBj3f8psOGv7dyHK11bOQZMLKFy30UVnQP2J8s23bcCHN5TqHWurrse1EBStB4bfx6EXX/BesFBtWEFSvq58cEKB41L3EhnXG5JejXTZ3+vuk9YgRVv5gLXFPGs+1CiiMsVPY9e4YQzFd8jwK0Q7dJu4fV+H1jirR8IVPzuJ+MMRtSls3JY0d4G9Y0WK97K0EsMp4tCyzXfLoW7sbl1NmWK++l44PMVDKuDcn6hi/q8f6V9W/TdyGTyZ4ia+Yn4N4qdmVTUUX/Jem8oljdDKdKvdk3dXzYwehdM/c3Zz22xAqtsf3TFVAnOBlE6JOOmyOnGqbP47m+e/iVQ1uolbs5l+Ef7otiRI95v7O9OHKHF0HA== X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(396003)(346002)(136003)(39860400002)(376002)(451199021)(36840700001)(40470700004)(46966006)(44832011)(4326008)(6916009)(70586007)(70206006)(8676002)(41300700001)(316002)(54906003)(8936002)(2906002)(5660300002)(36860700001)(40460700003)(82310400005)(6666004)(478600001)(40480700001)(1076003)(356005)(26005)(36756003)(83380400001)(186003)(426003)(47076005)(336012)(81166007)(82740400003)(2616005)(86362001)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Jun 2023 00:48:57.8792 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: bc50556f-839f-4c2f-19bb-08db6303262f X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com] X-MS-Exchange-CrossTenant-AuthSource: DM6NAM11FT027.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: IA1PR12MB8237 Dynamic programming ops will modify the dt_host and there might be other function which are browsing the dt_host at the same time. To avoid the race conditions, adding rwlock for browsing the dt_host during runtime. Reason behind adding rwlock instead of spinlock: For now, dynamic programming is the sole modifier of dt_host in Xen during run time. All other access functions like iommu_release_dt_device() are just reading the dt_host during run-time. So, there is a need to protect others from browsing the dt_host while dynamic programming is modifying it. rwlock is better suitable for this task as spinlock won't be able to differentiate between read and write access. Signed-off-by: Vikram Garhwal --- Changes from v6: Remove redundant "read_unlock(&dt_host->lock);" in the following case: XEN_DOMCTL_deassign_device --- xen/common/device_tree.c | 4 ++++ xen/drivers/passthrough/device_tree.c | 15 +++++++++++++++ xen/include/xen/device_tree.h | 6 ++++++ 3 files changed, 25 insertions(+) diff --git a/xen/common/device_tree.c b/xen/common/device_tree.c index c5250a1644..c8fcdf8fa1 100644 --- a/xen/common/device_tree.c +++ b/xen/common/device_tree.c @@ -2146,7 +2146,11 @@ int unflatten_device_tree(const void *fdt, struct dt_device_node **mynodes) dt_dprintk(" <- unflatten_device_tree()\n"); + /* Init r/w lock for host device tree. */ + rwlock_init(&dt_host->lock); + return 0; + } static void dt_alias_add(struct dt_alias_prop *ap, diff --git a/xen/drivers/passthrough/device_tree.c b/xen/drivers/passthrough/device_tree.c index 301a5bcd97..f4d9deb624 100644 --- a/xen/drivers/passthrough/device_tree.c +++ b/xen/drivers/passthrough/device_tree.c @@ -112,6 +112,8 @@ int iommu_release_dt_devices(struct domain *d) if ( !is_iommu_enabled(d) ) return 0; + read_lock(&dt_host->lock); + list_for_each_entry_safe(dev, _dev, &hd->dt_devices, domain_list) { rc = iommu_deassign_dt_device(d, dev); @@ -119,10 +121,14 @@ int iommu_release_dt_devices(struct domain *d) { dprintk(XENLOG_ERR, "Failed to deassign %s in domain %u\n", dt_node_full_name(dev), d->domain_id); + + read_unlock(&dt_host->lock); return rc; } } + read_unlock(&dt_host->lock); + return 0; } @@ -246,6 +252,8 @@ int iommu_do_dt_domctl(struct xen_domctl *domctl, struct domain *d, int ret; struct dt_device_node *dev; + read_lock(&dt_host->lock); + switch ( domctl->cmd ) { case XEN_DOMCTL_assign_device: @@ -295,7 +303,10 @@ int iommu_do_dt_domctl(struct xen_domctl *domctl, struct domain *d, spin_unlock(&dtdevs_lock); if ( d == dom_io ) + { + read_unlock(&dt_host->lock); return -EINVAL; + } ret = iommu_add_dt_device(dev); if ( ret < 0 ) @@ -333,7 +344,10 @@ int iommu_do_dt_domctl(struct xen_domctl *domctl, struct domain *d, break; if ( d == dom_io ) + { + read_unlock(&dt_host->lock); return -EINVAL; + } ret = iommu_deassign_dt_device(d, dev); @@ -348,5 +362,6 @@ int iommu_do_dt_domctl(struct xen_domctl *domctl, struct domain *d, break; } + read_unlock(&dt_host->lock); return ret; } diff --git a/xen/include/xen/device_tree.h b/xen/include/xen/device_tree.h index e239f7de26..dee40d2ea3 100644 --- a/xen/include/xen/device_tree.h +++ b/xen/include/xen/device_tree.h @@ -18,6 +18,7 @@ #include #include #include +#include #define DEVICE_TREE_MAX_DEPTH 16 @@ -106,6 +107,11 @@ struct dt_device_node { struct list_head domain_list; struct device dev; + + /* + * Lock that protects r/w updates to unflattened device tree i.e. dt_host. + */ + rwlock_t lock; }; #define dt_to_dev(dt_node) (&(dt_node)->dev) -- 2.17.1 From xen-devel-bounces@lists.xenproject.org Fri Jun 02 00:49:10 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 02 Jun 2023 00:49:10 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542801.847182 (Exim 4.92) (envelope-from ) id 1q4syc-00041z-3X; Fri, 02 Jun 2023 00:49:10 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542801.847182; Fri, 02 Jun 2023 00:49:09 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4syb-0003xM-0d; Fri, 02 Jun 2023 00:49:09 +0000 Received: by outflank-mailman (input) for mailman id 542801; Fri, 02 Jun 2023 00:49:04 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4syW-0000if-K3 for xen-devel@lists.xenproject.org; Fri, 02 Jun 2023 00:49:04 +0000 Received: from NAM04-BN8-obe.outbound.protection.outlook.com (mail-bn8nam04on20609.outbound.protection.outlook.com [2a01:111:f400:7e8d::609]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 44930436-00df-11ee-b231-6b7b168915f2; Fri, 02 Jun 2023 02:49:03 +0200 (CEST) Received: from MW2PR2101CA0010.namprd21.prod.outlook.com (2603:10b6:302:1::23) by PH0PR12MB5433.namprd12.prod.outlook.com (2603:10b6:510:e1::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.23; Fri, 2 Jun 2023 00:48:59 +0000 Received: from CO1NAM11FT033.eop-nam11.prod.protection.outlook.com (2603:10b6:302:1:cafe::93) by MW2PR2101CA0010.outlook.office365.com (2603:10b6:302:1::23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.9 via Frontend Transport; Fri, 2 Jun 2023 00:48:59 +0000 Received: from SATLEXMB03.amd.com (165.204.84.17) by CO1NAM11FT033.mail.protection.outlook.com (10.13.174.247) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6455.24 via Frontend Transport; Fri, 2 Jun 2023 00:48:59 +0000 Received: from SATLEXMB08.amd.com (10.181.40.132) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Thu, 1 Jun 2023 19:48:58 -0500 Received: from SATLEXMB04.amd.com (10.181.40.145) by SATLEXMB08.amd.com (10.181.40.132) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Thu, 1 Jun 2023 17:48:58 -0700 Received: from xsjfnuv50.xilinx.com (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server id 15.1.2375.34 via Frontend Transport; Thu, 1 Jun 2023 19:48:57 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 44930436-00df-11ee-b231-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=L5tDJtalXFdupYiYrMBWweqUS9scpUpkFpMuYVhJcslL6NEbaxL5pqj2/u9voM3sfM4gL3dOcih9uKlbL6hHoFPw7WJXMEMGqR+uwwZoIS5IYvHqZTln7GckWG/TB8juc/daOkt9EWUf6kIUR6jOmJJwTf/FRNS0QiQksxUQoOfK21I14Yz2J1hOY/X5WVUasVF0dAVGiPrJG3Ixx1SEfOCMk6yOAVRWEWoNtukiFNlhk9YKk3Y8SLUDO32QJ3vxSKSezAc7S3G4pQ9kd9OqqjgN+PMZb/xJ1FulJcFFImYDw8VDorub0e3lhMDsVxqPPXAcQ+5NKJJsRHO10z74vw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=ZACCJSYeVg7JvgHrjij92Ypwo4mpte2CHes014k364Q=; b=iosJ7SXAHnjgSJb33btxlHwqyBRzGUjEI8yniwfnrbz1IR5ZWMck9CcbWR4EigCcuQALeZDcZOe362uDQJLAfv5bqmO9eDLhIizyL+EZ2FIjBKdGePDJ13SuV+mejATRFgXGf6GxA7lErfhnMvC9IDRObNWYJq2cI7eKUDPaa/j2Gwt1XP0RwXdqlbG2x9lPVr8L3hHa2L8AYAs0OgIUnmIK89ZWhLRaadBXy8540MBqKtnZcwBTJ57+gTpZAe09+bztu4Yq1zzX+UqVOis4Qu5d7AUk5urkS45nDm8NB/cRz9X6SaRlxlCBKIlZ7QvZnRusOHWLZV7R8Jg6127FdQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=ZACCJSYeVg7JvgHrjij92Ypwo4mpte2CHes014k364Q=; b=5ROhODmnHeX6JV9CZLRkiff9I8EFy+PWEJPuhYvuyrofT3JfGCDXcCCkN/bkMvYt2R7J4kvMwU55PaeYOcmSg4tMI2Z1WQmjT2K6agYYyFFVamJ1DXiD+9UA7NmJEC+JBrUjjDkqA9gFifdeTd1FnGe5AXfzVrXrQ2D7GtjuCQo= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C From: Vikram Garhwal To: CC: , , , , Julien Grall , Bertrand Marquis , Volodymyr Babchuk , Andrew Cooper , George Dunlap , Wei Liu Subject: [XEN][PATCH v7 15/19] xen/arm: Implement device tree node removal functionalities Date: Thu, 1 Jun 2023 17:48:20 -0700 Message-ID: <20230602004824.20731-16-vikram.garhwal@amd.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20230602004824.20731-1-vikram.garhwal@amd.com> References: <20230602004824.20731-1-vikram.garhwal@amd.com> MIME-Version: 1.0 Content-Type: text/plain X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO1NAM11FT033:EE_|PH0PR12MB5433:EE_ X-MS-Office365-Filtering-Correlation-Id: 6e8cf8c8-b245-4d92-51d3-08db63032705 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: QN5LlC3kSI0d5+U3zWOKZke362Z+VGzIyUl6YXHNnO23MOkQcOMYEeBLZCKMgAGquC5fDdXnGQj3aitoVZzLtIbiY9aRkZg9JL9a/FO4oCcZOB3N+8gP+Jd5h9eC2mK59tkt5SFaVyvTTdJxN0nJvyW1+W+vnwkmH4ANrJO1Xf4YbrBp+0etdZr1sIaMTeXq4lqedqLGAJdKrNUe+26ytJIgOIToxpucXANEpF8s/jfRfSQwSqOwc+vaDVGczLfPpobpfMXqWjrxdZw/2NPfv4A6f1do/s6o02NyQf30jAmYe14L38SekIbXa6x3KFDy4L1dKVCdfTIy0g3qyxJp8FLY6IigwnNJGnqGULWWdea3VbFXc/ByOrAWMwoy2kNQzIfMEJlxW5zAWCarOCuKcK02Df/yyclM8VFWTs8d3zFFj5ae4RJVKNg/oe7DucFCXATjXPfhhNaylR6VUY7snTO2wN55Mr3NTfJFVroBUUqCoT9woVnNo/oqzBZkMdi4SiT0gmn9dsJYeRtYqXdnfy8D0D8ofjSFvWWnWVYL+Ig2iiAaksGhqz+nkbYLXYG5Cno1L0ohBxwGtKXrkaYNhe9mfb0B3MzoqPWWxkOFeGJjNMdUgMumaa9uY5MgHKKKUCx7dauPzRez4YTZJhj6n9N1pUsy3WJPCi47D6wJfI/XsPDOKsXyCY2m1RcVvjyDCHHfLyC7CRciDe1EnvnN2uv2Kk6qI6DlNzFcVkEtk2YaPIHElWOz1DiSF11kpmceukKLn5YNO2+F5u4P7ri0YA== X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(396003)(136003)(376002)(39860400002)(346002)(451199021)(46966006)(36840700001)(40470700004)(40460700003)(336012)(426003)(47076005)(83380400001)(30864003)(2616005)(186003)(36860700001)(6916009)(4326008)(70206006)(70586007)(316002)(54906003)(478600001)(6666004)(8676002)(2906002)(1076003)(44832011)(5660300002)(26005)(41300700001)(8936002)(40480700001)(356005)(81166007)(36756003)(82740400003)(82310400005)(86362001)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Jun 2023 00:48:59.2362 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 6e8cf8c8-b245-4d92-51d3-08db63032705 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com] X-MS-Exchange-CrossTenant-AuthSource: CO1NAM11FT033.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR12MB5433 Introduce sysctl XEN_SYSCTL_dt_overlay to remove device-tree nodes added using device tree overlay. xl dt-overlay remove file.dtbo: Removes all the nodes in a given dtbo. First, removes IRQ permissions and MMIO accesses. Next, it finds the nodes in dt_host and delete the device node entries from dt_host. The nodes get removed only if it is not used by any of dom0 or domio. Also, added overlay_track struct to keep the track of added node through device tree overlay. overlay_track has dt_host_new which is unflattened form of updated fdt and name of overlay nodes. When a node is removed, we also free the memory used by overlay_track for the particular overlay node. Nested overlay removal is supported in sequential manner only i.e. if overlay_child nests under overlay_parent, it is assumed that user first removes overlay_child and then removes overlay_parent. Signed-off-by: Vikram Garhwal --- Changes from v6: Add explicit padding for xen_system_dt_overlay{} Update license. Rearrange xfree in dt_sysctl() Update overlay_track struct comment with relevant message. Fix missing xen/errno.h for builds without CONFIG_OVERLAY_DTB cases. Fix header formatting. --- xen/arch/arm/sysctl.c | 16 +- xen/common/Makefile | 1 + xen/common/dt-overlay.c | 420 +++++++++++++++++++++++++++++++++++ xen/include/public/sysctl.h | 24 ++ xen/include/xen/dt-overlay.h | 59 +++++ 5 files changed, 519 insertions(+), 1 deletion(-) create mode 100644 xen/common/dt-overlay.c create mode 100644 xen/include/xen/dt-overlay.h diff --git a/xen/arch/arm/sysctl.c b/xen/arch/arm/sysctl.c index b0a78a8b10..8b813c970f 100644 --- a/xen/arch/arm/sysctl.c +++ b/xen/arch/arm/sysctl.c @@ -9,6 +9,7 @@ #include #include +#include #include #include #include @@ -21,7 +22,20 @@ void arch_do_physinfo(struct xen_sysctl_physinfo *pi) long arch_do_sysctl(struct xen_sysctl *sysctl, XEN_GUEST_HANDLE_PARAM(xen_sysctl_t) u_sysctl) { - return -ENOSYS; + long ret; + + switch ( sysctl->cmd ) + { + case XEN_SYSCTL_dt_overlay: + ret = dt_sysctl(&sysctl->u.dt_overlay); + break; + + default: + ret = -ENOSYS; + break; + } + + return ret; } /* diff --git a/xen/common/Makefile b/xen/common/Makefile index 46049eac35..e7e96b1087 100644 --- a/xen/common/Makefile +++ b/xen/common/Makefile @@ -8,6 +8,7 @@ obj-$(CONFIG_DEBUG_TRACE) += debugtrace.o obj-$(CONFIG_HAS_DEVICE_TREE) += device_tree.o obj-$(CONFIG_IOREQ_SERVER) += dm.o obj-y += domain.o +obj-$(CONFIG_OVERLAY_DTB) += dt-overlay.o obj-y += event_2l.o obj-y += event_channel.o obj-y += event_fifo.o diff --git a/xen/common/dt-overlay.c b/xen/common/dt-overlay.c new file mode 100644 index 0000000000..b2a7e441df --- /dev/null +++ b/xen/common/dt-overlay.c @@ -0,0 +1,420 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ +/* + * xen/common/dt-overlay.c + * + * Device tree overlay support in Xen. + * + * Copyright (C) 2023, Advanced Micro Devices, Inc. All Rights Reserved. + * Written by Vikram Garhwal + * + */ +#include +#include +#include +#include +#include + +static LIST_HEAD(overlay_tracker); +static DEFINE_SPINLOCK(overlay_lock); + +/* Find last descendants of the device_node. */ +static struct dt_device_node * + find_last_descendants_node(struct dt_device_node *device_node) +{ + struct dt_device_node *child_node; + + for ( child_node = device_node->child; child_node->sibling != NULL; + child_node = child_node->sibling ); + + /* If last child_node also have children. */ + if ( child_node->child ) + child_node = find_last_descendants_node(child_node); + + return child_node; +} + +static int dt_overlay_remove_node(struct dt_device_node *device_node) +{ + struct dt_device_node *np; + struct dt_device_node *parent_node; + struct dt_device_node *device_node_last_descendant = device_node->child; + + parent_node = device_node->parent; + + if ( parent_node == NULL ) + { + dt_dprintk("%s's parent node not found\n", device_node->name); + return -EFAULT; + } + + np = parent_node->child; + + if ( np == NULL ) + { + dt_dprintk("parent node %s's not found\n", parent_node->name); + return -EFAULT; + } + + /* If node to be removed is only child node or first child. */ + if ( !dt_node_cmp(np->full_name, device_node->full_name) ) + { + parent_node->child = np->sibling; + + /* + * Iterate over all child nodes of device_node. Given that we are + * removing parent node, we need to remove all it's descendants too. + */ + if ( device_node_last_descendant ) + { + device_node_last_descendant = + find_last_descendants_node(device_node); + parent_node->allnext = device_node_last_descendant->allnext; + } + else + parent_node->allnext = np->allnext; + + return 0; + } + + for ( np = parent_node->child; np->sibling != NULL; np = np->sibling ) + { + if ( !dt_node_cmp(np->sibling->full_name, device_node->full_name) ) + { + /* Found the node. Now we remove it. */ + np->sibling = np->sibling->sibling; + + if ( np->child ) + np = find_last_descendants_node(np); + + /* + * Iterate over all child nodes of device_node. Given that we are + * removing parent node, we need to remove all it's descendants too. + */ + if ( device_node_last_descendant ) + device_node_last_descendant = + find_last_descendants_node(device_node); + + if ( device_node_last_descendant ) + np->allnext = device_node_last_descendant->allnext; + else + np->allnext = np->allnext->allnext; + + break; + } + } + + return 0; +} + +/* Basic sanity check for the dtbo tool stack provided to Xen. */ +static int check_overlay_fdt(const void *overlay_fdt, uint32_t overlay_fdt_size) +{ + if ( (fdt_totalsize(overlay_fdt) != overlay_fdt_size) || + fdt_check_header(overlay_fdt) ) + { + printk(XENLOG_ERR "The overlay FDT is not a valid Flat Device Tree\n"); + return -EINVAL; + } + + return 0; +} + +/* Count number of nodes till one level of __overlay__ tag. */ +static unsigned int overlay_node_count(const void *overlay_fdt) +{ + unsigned int num_overlay_nodes = 0; + int fragment; + + fdt_for_each_subnode(fragment, overlay_fdt, 0) + { + int subnode; + int overlay; + + overlay = fdt_subnode_offset(overlay_fdt, fragment, "__overlay__"); + + /* + * overlay value can be < 0. But fdt_for_each_subnode() loop checks for + * overlay >= 0. So, no need for a overlay>=0 check here. + */ + fdt_for_each_subnode(subnode, overlay_fdt, overlay) + { + num_overlay_nodes++; + } + } + + return num_overlay_nodes; +} + +static int handle_remove_irq_iommu(struct dt_device_node *device_node) +{ + int rc = 0; + struct domain *d = hardware_domain; + domid_t domid; + unsigned int naddr, len; + unsigned int i, nirq; + + domid = dt_device_used_by(device_node); + + dt_dprintk("Checking if node %s is used by any domain\n", + device_node->full_name); + + /* Remove the node if only it's assigned to domain 0 or domain io. */ + if ( domid != 0 && domid != DOMID_IO ) + { + printk(XENLOG_ERR "Device %s is being used by domain %u. Removing nodes failed\n", + device_node->full_name, domid); + return -EINVAL; + } + + dt_dprintk("Removing node: %s\n", device_node->full_name); + + nirq = dt_number_of_irq(device_node); + + /* Remove IRQ permission */ + for ( i = 0; i < nirq; i++ ) + { + rc = platform_get_irq(device_node, i); + if ( rc < 0 ) + { + printk(XENLOG_ERR "Failed to get IRQ num for device node %s\n", + device_node->full_name); + return -EINVAL; + } + + if ( irq_access_permitted(d, rc) == false ) + { + printk(XENLOG_ERR "IRQ %d is not routed to domain %u\n", rc, + domid); + return -EINVAL; + } + /* + * TODO: We don't handle shared IRQs for now. So, it is assumed that + * the IRQs was not shared with another devices. + */ + rc = irq_deny_access(d, rc); + if ( rc ) + { + printk(XENLOG_ERR "unable to revoke access for irq %u for %s\n", + i, device_node->full_name); + return rc; + } + } + + /* Check if iommu property exists. */ + if ( dt_get_property(device_node, "iommus", &len) ) + { + rc = iommu_remove_dt_device(device_node); + if ( rc != 0 && rc != -ENXIO ) + return rc; + } + + naddr = dt_number_of_address(device_node); + + /* Remove mmio access. */ + for ( i = 0; i < naddr; i++ ) + { + uint64_t addr, size; + + rc = dt_device_get_address(device_node, i, &addr, &size); + if ( rc ) + { + printk(XENLOG_ERR "Unable to retrieve address %u for %s\n", + i, dt_node_full_name(device_node)); + return rc; + } + + rc = iomem_deny_access(d, paddr_to_pfn(addr), + paddr_to_pfn(PAGE_ALIGN(addr + size - 1))); + if ( rc ) + { + printk(XENLOG_ERR "Unable to remove dom%d access to" + " 0x%"PRIx64" - 0x%"PRIx64"\n", + d->domain_id, + addr & PAGE_MASK, PAGE_ALIGN(addr + size) - 1); + return rc; + } + + } + + return rc; +} + +/* Removes all descendants of the given node. */ +static int remove_all_descendant_nodes(struct dt_device_node *device_node) +{ + int rc = 0; + struct dt_device_node *child_node; + + for ( child_node = device_node->child; child_node != NULL; + child_node = child_node->sibling ) + { + if ( child_node->child ) + remove_all_descendant_nodes(child_node); + + rc = handle_remove_irq_iommu(child_node); + if ( rc ) + return rc; + } + + return rc; +} + +/* Remove nodes from dt_host. */ +static int remove_nodes(const struct overlay_track *tracker) +{ + int rc = 0; + struct dt_device_node *overlay_node; + unsigned int j; + + for ( j = 0; j < tracker->num_nodes; j++ ) + { + overlay_node = (struct dt_device_node *)tracker->nodes_address[j]; + if ( overlay_node == NULL ) + { + printk(XENLOG_ERR "Device %s is not present in the tree. Removing nodes failed\n", + overlay_node->full_name); + return -EINVAL; + } + + rc = remove_all_descendant_nodes(overlay_node); + + /* All children nodes are unmapped. Now remove the node itself. */ + rc = handle_remove_irq_iommu(overlay_node); + if ( rc ) + return rc; + + read_lock(&dt_host->lock); + + rc = dt_overlay_remove_node(overlay_node); + if ( rc ) + { + read_unlock(&dt_host->lock); + + return rc; + } + + read_unlock(&dt_host->lock); + } + + return rc; +} + +/* + * First finds the device node to remove. Check if the device is being used by + * any dom and finally remove it from dt_host. IOMMU is already being taken care + * while destroying the domain. + */ +static long handle_remove_overlay_nodes(void *overlay_fdt, + uint32_t overlay_fdt_size) +{ + int rc; + struct overlay_track *entry, *temp, *track; + bool found_entry = false; + + rc = check_overlay_fdt(overlay_fdt, overlay_fdt_size); + if ( rc ) + return rc; + + if ( overlay_node_count(overlay_fdt) == 0 ) + return -EINVAL; + + spin_lock(&overlay_lock); + + /* + * First check if dtbo is correct i.e. it should one of the dtbo which was + * used when dynamically adding the node. + * Limitation: Cases with same node names but different property are not + * supported currently. We are relying on user to provide the same dtbo + * as it was used when adding the nodes. + */ + list_for_each_entry_safe( entry, temp, &overlay_tracker, entry ) + { + if ( memcmp(entry->overlay_fdt, overlay_fdt, overlay_fdt_size) == 0 ) + { + track = entry; + found_entry = true; + break; + } + } + + if ( found_entry == false ) + { + rc = -EINVAL; + + printk(XENLOG_ERR "Cannot find any matching tracker with input dtbo." + " Removing nodes is supported only for prior added dtbo.\n"); + goto out; + + } + + rc = remove_nodes(entry); + if ( rc ) + { + printk(XENLOG_ERR "Removing node failed\n"); + goto out; + } + + list_del(&entry->entry); + + xfree(entry->dt_host_new); + xfree(entry->fdt); + xfree(entry->overlay_fdt); + + xfree(entry->nodes_address); + + xfree(entry); + +out: + spin_unlock(&overlay_lock); + return rc; +} + +long dt_sysctl(struct xen_sysctl_dt_overlay *op) +{ + long ret; + void *overlay_fdt; + + if ( op->overlay_fdt_size == 0 || op->overlay_fdt_size > KB(500) ) + return -EINVAL; + + if ( op->pad[0] || op->pad[1] || op->pad[2] ) + return -EINVAL; + + overlay_fdt = xmalloc_bytes(op->overlay_fdt_size); + + if ( overlay_fdt == NULL ) + return -ENOMEM; + + ret = copy_from_guest(overlay_fdt, op->overlay_fdt, op->overlay_fdt_size); + if ( ret ) + { + gprintk(XENLOG_ERR, "copy from guest failed\n"); + xfree(overlay_fdt); + + return -EFAULT; + } + + switch ( op->overlay_op ) + { + case XEN_SYSCTL_DT_OVERLAY_REMOVE: + ret = handle_remove_overlay_nodes(overlay_fdt, op->overlay_fdt_size); + + break; + + default: + break; + } + + xfree(overlay_fdt); + + return ret; +} + +/* + * Local variables: + * mode: C + * c-file-style: "BSD" + * c-basic-offset: 4 + * indent-tabs-mode: nil + * End: + */ diff --git a/xen/include/public/sysctl.h b/xen/include/public/sysctl.h index 2b24d6bfd0..ff54607617 100644 --- a/xen/include/public/sysctl.h +++ b/xen/include/public/sysctl.h @@ -1057,6 +1057,25 @@ typedef struct xen_sysctl_cpu_policy xen_sysctl_cpu_policy_t; DEFINE_XEN_GUEST_HANDLE(xen_sysctl_cpu_policy_t); #endif +#if defined(__arm__) || defined (__aarch64__) +/* + * XEN_SYSCTL_dt_overlay + * Performs addition/removal of device tree nodes under parent node using dtbo. + * This does in three steps: + * - Adds/Removes the nodes from dt_host. + * - Adds/Removes IRQ permission for the nodes. + * - Adds/Removes MMIO accesses. + */ +struct xen_sysctl_dt_overlay { + XEN_GUEST_HANDLE_64(void) overlay_fdt; /* IN: overlay fdt. */ + uint32_t overlay_fdt_size; /* IN: Overlay dtb size. */ +#define XEN_SYSCTL_DT_OVERLAY_ADD 1 +#define XEN_SYSCTL_DT_OVERLAY_REMOVE 2 + uint8_t overlay_op; /* IN: Add or remove. */ + uint8_t pad[3]; /* IN: Must be zero. */ +}; +#endif + struct xen_sysctl { uint32_t cmd; #define XEN_SYSCTL_readconsole 1 @@ -1087,6 +1106,7 @@ struct xen_sysctl { #define XEN_SYSCTL_livepatch_op 27 /* #define XEN_SYSCTL_set_parameter 28 */ #define XEN_SYSCTL_get_cpu_policy 29 +#define XEN_SYSCTL_dt_overlay 30 uint32_t interface_version; /* XEN_SYSCTL_INTERFACE_VERSION */ union { struct xen_sysctl_readconsole readconsole; @@ -1117,6 +1137,10 @@ struct xen_sysctl { #if defined(__i386__) || defined(__x86_64__) struct xen_sysctl_cpu_policy cpu_policy; #endif + +#if defined(__arm__) || defined (__aarch64__) + struct xen_sysctl_dt_overlay dt_overlay; +#endif uint8_t pad[128]; } u; }; diff --git a/xen/include/xen/dt-overlay.h b/xen/include/xen/dt-overlay.h new file mode 100644 index 0000000000..43fa5a02a0 --- /dev/null +++ b/xen/include/xen/dt-overlay.h @@ -0,0 +1,59 @@ + /* SPDX-License-Identifier: GPL-2.0-only */ + /* + * xen/dt-overlay.h + * + * Device tree overlay support in Xen. + * + * Copyright (C) 2023, Advanced Micro Devices, Inc. All Rights Reserved. + * Written by Vikram Garhwal + * + */ +#ifndef __XEN_DT_OVERLAY_H__ +#define __XEN_DT_OVERLAY_H__ + +#include +#include +#include +#include + +/* + * overlay_track describes information about added nodes through dtbo. + * @entry: List pointer. + * @dt_host_new: Pointer to the updated dt_host_new which is unflattened from + the 'updated fdt'. + * @fdt: Stores the fdt. + * @overlay_fdt: Stores a copy of input overlay_fdt. + * @nodes_address: Stores each overlay_node's address. + * @num_nodes: Total number of nodes in overlay dtb. + */ +struct overlay_track { + struct list_head entry; + struct dt_device_node *dt_host_new; + void *fdt; + void *overlay_fdt; + unsigned long *nodes_address; + unsigned int num_nodes; +}; + +struct xen_sysctl_dt_overlay; + +#ifdef CONFIG_OVERLAY_DTB +long dt_sysctl(struct xen_sysctl_dt_overlay *op); +#else +#include +static inline long dt_sysctl(struct xen_sysctl_dt_overlay *op) +{ + return -EOPNOTSUPP; +} +#endif + +#endif /* __XEN_DT_OVERLAY_H__ */ +/* + * Local variables: + * mode: C + * c-file-style: "BSD" + * c-basic-offset: 4 + * tab-width: 4 + * indent-tabs-mode: nil + * End: + */ -- 2.17.1 From xen-devel-bounces@lists.xenproject.org Fri Jun 02 00:49:12 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 02 Jun 2023 00:49:12 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542802.847192 (Exim 4.92) (envelope-from ) id 1q4sye-0004WK-K4; Fri, 02 Jun 2023 00:49:12 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542802.847192; Fri, 02 Jun 2023 00:49:12 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4syd-0004Q4-73; Fri, 02 Jun 2023 00:49:11 +0000 Received: by outflank-mailman (input) for mailman id 542802; Fri, 02 Jun 2023 00:49:06 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4syX-0000if-KF for xen-devel@lists.xenproject.org; Fri, 02 Jun 2023 00:49:05 +0000 Received: from NAM10-DM6-obe.outbound.protection.outlook.com (mail-dm6nam10on2062b.outbound.protection.outlook.com [2a01:111:f400:7e88::62b]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 44b714f6-00df-11ee-b231-6b7b168915f2; Fri, 02 Jun 2023 02:49:03 +0200 (CEST) Received: from DM6PR06CA0076.namprd06.prod.outlook.com (2603:10b6:5:336::9) by DS0PR12MB8815.namprd12.prod.outlook.com (2603:10b6:8:14f::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.23; Fri, 2 Jun 2023 00:49:00 +0000 Received: from DM6NAM11FT028.eop-nam11.prod.protection.outlook.com (2603:10b6:5:336:cafe::c9) by DM6PR06CA0076.outlook.office365.com (2603:10b6:5:336::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.24 via Frontend Transport; Fri, 2 Jun 2023 00:49:00 +0000 Received: from SATLEXMB04.amd.com (165.204.84.17) by DM6NAM11FT028.mail.protection.outlook.com (10.13.173.140) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6455.24 via Frontend Transport; Fri, 2 Jun 2023 00:49:00 +0000 Received: from SATLEXMB08.amd.com (10.181.40.132) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Thu, 1 Jun 2023 19:48:59 -0500 Received: from SATLEXMB04.amd.com (10.181.40.145) by SATLEXMB08.amd.com (10.181.40.132) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Thu, 1 Jun 2023 17:48:59 -0700 Received: from xsjfnuv50.xilinx.com (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server id 15.1.2375.34 via Frontend Transport; Thu, 1 Jun 2023 19:48:58 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 44b714f6-00df-11ee-b231-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=LBt9/TAmfGby1GHLGSdfMnmlFxbUXILygyrDIj0wSdeTaVLu9jLRp+G3aC8vqq5TOE8Cmtc8e1kyS6nUpygVUbtQs8bDMaTR9ifH1VMZwuDBxihlKrPZtjmauAMohmCILPhin5IFAuUqmyy8J57tkmMyr/7imirS1FEBYvW7EMipERkIFblmKfb7zpRVeWM+VHSAFYTUy6tvnv/zFCCgIF2NuUatjwrTM63YOVPyeSlafzhbtSUQNmQ9Mdzm36pdQ8qS2BghnmcptOGVoCDmeuUAN+yPCPws77apGLzhKRSw3aztRsHtPcYAYJWgnsJsF0P6GWO0Tu7rUo5IbCCL1g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=d1CA76xInbIr4hE8UWeQAMGW5FdBn6s0KkNux42XsEg=; b=UMIKE3Xr1I8kljc6mwrFLKsZJ+yE77EPkRIyCAv/SshEmzIlXR/J7NcKCgNTIs0IefJRc2J820G3kvDwqSPECSUZh2NgqWBT92bCaXrvfMT5WFFQT4GhjBx01+lEYWyTIy8J47OD4p0Hl6oqYmFT2d/a2+G4atdevHmY8KiS6BKg+RKv/noE+MsUhCGc7ZsS5FWZG88j5uA0e0ys7gmkuDtOek/m5rwvo0DAK6hvwd0zc0RkqqD6SM7iVlf266hztWYvZgwBbCKMkXkdYA3F0Dc/au0zEPZ24lnka2wMfNocZFQieEuisOD7NDjH65HSU4U5tjTY/hjP/UIvaVSFbg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=d1CA76xInbIr4hE8UWeQAMGW5FdBn6s0KkNux42XsEg=; b=5YZCiXEcIcc/skE2I50ZcFa3pZBPn7CnrdRetwiyhQSK4SK5yrMBVqwAjMwA0IuoCwbyR3AIETWfD5psAGS5BKX6+MggWSGyf8hWKTi2gZBmdfxq5cm/+AJxSE9l349ualBqe4fxSijbAjL9cfSxXZYlihGmEDCuSVMF4fVAsdY= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C From: Vikram Garhwal To: CC: , , , , Andrew Cooper , George Dunlap , Julien Grall , Wei Liu Subject: [XEN][PATCH v7 16/19] xen/arm: Implement device tree node addition functionalities Date: Thu, 1 Jun 2023 17:48:21 -0700 Message-ID: <20230602004824.20731-17-vikram.garhwal@amd.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20230602004824.20731-1-vikram.garhwal@amd.com> References: <20230602004824.20731-1-vikram.garhwal@amd.com> MIME-Version: 1.0 Content-Type: text/plain X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DM6NAM11FT028:EE_|DS0PR12MB8815:EE_ X-MS-Office365-Filtering-Correlation-Id: 61ed6f1f-2a60-4eda-f4e0-08db63032788 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: IAI3SYTR8xwIBtHmoRBc97aECGtJ0Fo+9VBEvDeJGf8O309xMa34AIKIyY7PS+X5yOvizcsSRZ6i/8E6Ap8EuFq7jG62k4duADsHRckJOItCQ6kMRt0agBOuDLcMTTVCuQ4jfkCQqT9E/G/BFyT7UvBH9IaI9EdRTPfDTx4myvtmbgsOy0LF/aw72RIrL3Lu6rYYk4R06wdgDqfKG2sB9U2DbHizwDfgsyknXPw8Ml+g9/5j6sIcgMv0NXSpkwkuAorvrsH5POnYn96IvdsRfcUa11uQTeymgE3YWqfxNUSG5CpjsYE5w1/HG7oweiH29vVcpDrsd9MfCOc04/k2HzZJQZQXhhKTuQ5HqGZqn619echqiz+6+7vlcIKGiBgxPCMGucoXb5HqPmKwkvfyW/Ecp176zjELQiwVqNcqbUtBLqKWeNaKpkSTcV5/8tBIL0yrvOpDzk3O+awwdVeeLi7HDO27abI/BkBkgO314w6u/PzMpO7/XI3KseB6QlftuUQb2gEFrdxKM9WnyN2zSUGETWuvK+TsjG/naZ843YpaFtTebxCNrIXK0FGiWAqlkDWWFgJAkMIW3pz40DssGxHHG/IwAYmV8DoNCnGw/ODXN9s2vwtxQLlQe9+dtBVMR/d7TNgMIWH6GmqQU0Zmfc/dVUZWtucgooxhhL8EiEF37Oik99qoylIIqF7YEKArCjvVb10TgsK6RxDJPTyAVXhdCzozsYmyjoYIwArsjxnbc1CV7dOi2syWCIH6gRCckOpsuAaA+PBp24maZ9MrNw== X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(376002)(346002)(136003)(39860400002)(396003)(451199021)(36840700001)(40470700004)(46966006)(186003)(426003)(336012)(44832011)(2616005)(1076003)(5660300002)(83380400001)(26005)(8676002)(30864003)(47076005)(8936002)(2906002)(66899021)(36860700001)(40460700003)(4326008)(54906003)(40480700001)(6916009)(41300700001)(6666004)(356005)(36756003)(82310400005)(82740400003)(81166007)(316002)(478600001)(70586007)(86362001)(70206006)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Jun 2023 00:49:00.1614 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 61ed6f1f-2a60-4eda-f4e0-08db63032788 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com] X-MS-Exchange-CrossTenant-AuthSource: DM6NAM11FT028.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS0PR12MB8815 Update sysctl XEN_SYSCTL_dt_overlay to enable support for dtbo nodes addition using device tree overlay. xl dt-overlay add file.dtbo: Each time overlay nodes are added using .dtbo, a new fdt(memcpy of device_tree_flattened) is created and updated with overlay nodes. This updated fdt is further unflattened to a dt_host_new. Next, it checks if any of the overlay nodes already exists in the dt_host. If overlay nodes doesn't exist then find the overlay nodes in dt_host_new, find the overlay node's parent in dt_host and add the nodes as child under their parent in the dt_host. The node is attached as the last node under target parent. Finally, add IRQs, add device to IOMMUs, set permissions and map MMIO for the overlay node. When a node is added using overlay, a new entry is allocated in the overlay_track to keep the track of memory allocation due to addition of overlay node. This is helpful for freeing the memory allocated when a device tree node is removed. The main purpose of this to address first part of dynamic programming i.e. making xen aware of new device tree node which means updating the dt_host with overlay node information. Here we are adding/removing node from dt_host, and checking/setting IOMMU and IRQ permission but never mapping them to any domain. Right now, mapping/Un-mapping will happen only when a new domU is created/destroyed using "xl create". Signed-off-by: Vikram Garhwal --- Changes from v6: Fix comment style and add comment regarding false flag in irq mapping. Move malloc for nodes_full_path to handle_add_overlay_nodes. Move node_num define to start of overlay_get_nodes_info(). Remove "domain *d" from handle_add_irq_iommu(). Fix error handling for handle_add_irq_iommu(). Split handle_add_overlay_nodes to two functions. Create a separate function for freeing nodes_full_path. Fix xfree for dt_sysctl. --- xen/common/dt-overlay.c | 533 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 533 insertions(+) diff --git a/xen/common/dt-overlay.c b/xen/common/dt-overlay.c index b2a7e441df..12b6b010ef 100644 --- a/xen/common/dt-overlay.c +++ b/xen/common/dt-overlay.c @@ -33,6 +33,25 @@ static struct dt_device_node * return child_node; } +/* + * Returns next node to the input node. If node has children then return + * last descendant's next node. +*/ +static struct dt_device_node * +dt_find_next_node(struct dt_device_node *dt, const struct dt_device_node *node) +{ + struct dt_device_node *np; + + dt_for_each_device_node(dt, np) + if ( np == node ) + break; + + if ( np->child ) + np = find_last_descendants_node(np); + + return np->allnext; +} + static int dt_overlay_remove_node(struct dt_device_node *device_node) { struct dt_device_node *np; @@ -106,6 +125,78 @@ static int dt_overlay_remove_node(struct dt_device_node *device_node) return 0; } +static int dt_overlay_add_node(struct dt_device_node *device_node, + const char *parent_node_path) +{ + struct dt_device_node *parent_node; + struct dt_device_node *next_node; + + parent_node = dt_find_node_by_path(parent_node_path); + + if ( parent_node == NULL ) + { + dt_dprintk("Parent node %s not found. Overlay node will not be added\n", + parent_node_path); + return -EINVAL; + } + + /* If parent has no child. */ + if ( parent_node->child == NULL ) + { + next_node = parent_node->allnext; + device_node->parent = parent_node; + parent_node->allnext = device_node; + parent_node->child = device_node; + } + else + { + struct dt_device_node *np; + /* + * If parent has at least one child node. + * Iterate to the last child node of parent. + */ + for ( np = parent_node->child; np->sibling != NULL; np = np->sibling ); + + /* Iterate over all child nodes of np node. */ + if ( np->child ) + { + struct dt_device_node *np_last_descendant; + + np_last_descendant = find_last_descendants_node(np); + + next_node = np_last_descendant->allnext; + np_last_descendant->allnext = device_node; + } + else + { + next_node = np->allnext; + np->allnext = device_node; + } + + device_node->parent = parent_node; + np->sibling = device_node; + np->sibling->sibling = NULL; + } + + /* Iterate over all child nodes of device_node to add children too. */ + if ( device_node->child ) + { + struct dt_device_node *device_node_last_descendant; + + device_node_last_descendant = find_last_descendants_node(device_node); + + /* Plug next_node at the end of last children of device_node. */ + device_node_last_descendant->allnext = next_node; + } + else + { + /* Now plug next_node at the end of device_node. */ + device_node->allnext = next_node; + } + + return 0; +} + /* Basic sanity check for the dtbo tool stack provided to Xen. */ static int check_overlay_fdt(const void *overlay_fdt, uint32_t overlay_fdt_size) { @@ -145,6 +236,76 @@ static unsigned int overlay_node_count(const void *overlay_fdt) return num_overlay_nodes; } +/* + * overlay_get_nodes_info gets full name with path for all the nodes which + * are in one level of __overlay__ tag. This is useful when checking node for + * duplication i.e. dtbo tries to add nodes which already exists in device tree. + */ +static int overlay_get_nodes_info(const void *fdto, char **nodes_full_path) +{ + int fragment; + unsigned int node_num = 0; + + fdt_for_each_subnode(fragment, fdto, 0) + { + int target; + int overlay; + int subnode; + const char *target_path; + + target = fdt_overlay_target_offset(device_tree_flattened, fdto, + fragment, &target_path); + if ( target < 0 ) + return target; + + if ( target_path == NULL ) + return -EINVAL; + + overlay = fdt_subnode_offset(fdto, fragment, "__overlay__"); + + /* + * overlay value can be < 0. But fdt_for_each_subnode() loop checks for + * overlay >= 0. So, no need for a overlay>=0 check here. + */ + fdt_for_each_subnode(subnode, fdto, overlay) + { + const char *node_name = NULL; + int node_name_len; + unsigned int target_path_len = strlen(target_path); + unsigned int node_full_name_len; + + node_name = fdt_get_name(fdto, subnode, &node_name_len); + + if ( node_name == NULL ) + return node_name_len; + + /* + * Magic number 2 is for adding '/' and '\0'. This is done to keep + * the node_full_path in the correct full node name format. + */ + node_full_name_len = target_path_len + node_name_len + 2; + + nodes_full_path[node_num] = xmalloc_bytes(node_full_name_len); + + if ( nodes_full_path[node_num] == NULL ) + return -ENOMEM; + + memcpy(nodes_full_path[node_num], target_path, target_path_len); + + nodes_full_path[node_num][target_path_len] = '/'; + + memcpy(nodes_full_path[node_num] + target_path_len + 1, + node_name, node_name_len); + + nodes_full_path[node_num][node_full_name_len - 1] = '\0'; + + node_num++; + } + } + + return 0; +} + static int handle_remove_irq_iommu(struct dt_device_node *device_node) { int rc = 0; @@ -369,6 +530,373 @@ out: return rc; } +/* + * Handles IRQ and IOMMU mapping for the overlay_node and all descendants of the + * overlay_node. + */ +static int handle_add_irq_iommu(struct dt_device_node *overlay_node) +{ + int rc; + unsigned int naddr, i, len; + struct dt_device_node *np; + + /* + * First let's handle the interrupts. + * For now, need_mapping is set to false which means it will only permit IRQ + * access to hardware_domain using irq_permit_access() but will never route + * as route_irq_to_guest() will not be called with false flag. + */ + rc = handle_device_interrupts(hardware_domain, overlay_node, false); + if ( rc < 0 ) + { + printk(XENLOG_ERR "Failed to retrieve interrupts configuration\n"); + return rc; + } + + /* Check if iommu property exists. */ + if ( dt_get_property(overlay_node, "iommus", &len) ) + { + /* Add device to IOMMUs. */ + rc = iommu_add_dt_device(overlay_node); + if ( rc < 0 ) + { + printk(XENLOG_ERR "Failed to add %s to the IOMMU\n", + dt_node_full_name(overlay_node)); + return rc; + } + } + + /* Set permissions. */ + naddr = dt_number_of_address(overlay_node); + + dt_dprintk("%s naddr = %u\n", dt_node_full_name(overlay_node), naddr); + + /* Give permission to map MMIOs */ + for ( i = 0; i < naddr; i++ ) + { + uint64_t addr, size; + + /* + * For now, we skip_mapping which means it will only permit iomem access + * to hardware_domain using iomem_permit_access() but will never map as + * map_range_p2mt() will not be called. + */ + struct map_range_data mr_data = { .d = hardware_domain, + .p2mt = p2m_mmio_direct_c, + .skip_mapping = true + }; + + rc = dt_device_get_address(overlay_node, i, &addr, &size); + if ( rc ) + { + printk(XENLOG_ERR "Unable to retrieve address %u for %s\n", + i, dt_node_full_name(overlay_node)); + return rc; + } + + rc = map_range_to_domain(overlay_node, addr, size, &mr_data); + if ( rc ) + return rc; + } + + /* Map IRQ and IOMMU for overlay_node's children. */ + for ( np = overlay_node->child; np != NULL; np = np->sibling ) + { + rc = handle_add_irq_iommu(np); + if ( rc ) + { + printk(XENLOG_ERR "Adding IRQ and IOMMU failed\n"); + return rc; + } + } + + return rc; +} + +static void free_nodes_full_path(int num_nodes, char **nodes_full_path) +{ + int i; + + if ( nodes_full_path != NULL ) + { + for ( i = 0; i < num_nodes && nodes_full_path[i] != NULL; + i++ ) + { + xfree(nodes_full_path[i]); + } + xfree(nodes_full_path); + } + + return; +} + +static long add_nodes(struct overlay_track *tr, char **nodes_full_path) + +{ + int j, rc; + struct dt_device_node *overlay_node; + + for ( j = 0; j < tr->num_nodes; j++ ) + { + struct dt_device_node *prev_node, *next_node; + + dt_dprintk("Adding node: %s\n", nodes_full_path[j]); + + /* Find the newly added node in tr->dt_host_new by it's full path. */ + overlay_node = device_tree_find_node_by_path(tr->dt_host_new, + nodes_full_path[j]); + if ( overlay_node == NULL ) + { + /* Sanity check. But code will never come here. */ + ASSERT_UNREACHABLE(); + return -EFAULT; + } + + /* + * Find previous and next node to overlay_node in dt_host_new. We will + * need these nodes to fix the dt_host_new mapping. When overlay_node is + * take out of dt_host_new tree and added to dt_host, link between + * previous node and next_node is broken. We will need to refresh + * dt_host_new with correct linking for any other overlay nodes + * extraction in future. + */ + dt_for_each_device_node(tr->dt_host_new, prev_node) + if ( prev_node->allnext == overlay_node ) + break; + + next_node = dt_find_next_node(tr->dt_host_new, overlay_node); + + read_lock(&dt_host->lock); + + /* Add the node to dt_host. */ + rc = dt_overlay_add_node(overlay_node, overlay_node->parent->full_name); + if ( rc ) + { + read_unlock(&dt_host->lock); + + /* Node not added in dt_host. */ + return rc; + } + + read_unlock(&dt_host->lock); + + prev_node->allnext = next_node; + + overlay_node = dt_find_node_by_path(overlay_node->full_name); + if ( overlay_node == NULL ) + { + /* Sanity check. But code will never come here. */ + ASSERT_UNREACHABLE(); + return -EFAULT; + } + + rc = handle_add_irq_iommu(overlay_node); + if ( rc ) + { + printk(XENLOG_ERR "Adding IRQ and IOMMU failed\n"); + return rc; + } + + /* Keep overlay_node address in tracker. */ + tr->nodes_address[j] = (unsigned long)overlay_node; + } + + return 0; +} +/* + * Adds device tree nodes under target node. + * We use tr->dt_host_new to unflatten the updated device_tree_flattened. This + * is done to avoid the removal of device_tree generation, iomem regions mapping + * to hardware domain done by handle_node(). + */ +static long handle_add_overlay_nodes(void *overlay_fdt, + uint32_t overlay_fdt_size) +{ + int rc, j; + struct dt_device_node *overlay_node; + struct overlay_track *tr = NULL; + char **nodes_full_path = NULL; + unsigned int new_fdt_size; + + tr = xzalloc(struct overlay_track); + if ( tr == NULL ) + return -ENOMEM; + + new_fdt_size = fdt_totalsize(device_tree_flattened) + + fdt_totalsize(overlay_fdt); + + tr->fdt = xzalloc_bytes(new_fdt_size); + if ( tr->fdt == NULL ) + { + xfree(tr); + return -ENOMEM; + } + + tr->num_nodes = overlay_node_count(overlay_fdt); + if ( tr->num_nodes == 0 ) + { + xfree(tr->fdt); + xfree(tr); + return -ENOMEM; + } + + tr->nodes_address = xzalloc_bytes(tr->num_nodes * sizeof(unsigned long)); + if ( tr->nodes_address == NULL ) + { + xfree(tr->fdt); + xfree(tr); + return -ENOMEM; + } + + rc = check_overlay_fdt(overlay_fdt, overlay_fdt_size); + if ( rc ) + { + xfree(tr->nodes_address); + xfree(tr->fdt); + xfree(tr); + return rc; + } + + /* + * Keep a copy of overlay_fdt as fdt_overlay_apply will change the input + * overlay's content(magic) when applying overlay. + */ + tr->overlay_fdt = xzalloc_bytes(overlay_fdt_size); + if ( tr->overlay_fdt == NULL ) + { + xfree(tr->nodes_address); + xfree(tr->fdt); + xfree(tr); + return -ENOMEM; + } + + memcpy(tr->overlay_fdt, overlay_fdt, overlay_fdt_size); + + spin_lock(&overlay_lock); + + memcpy(tr->fdt, device_tree_flattened, + fdt_totalsize(device_tree_flattened)); + + /* Open tr->fdt with more space to accommodate the overlay_fdt. */ + rc = fdt_open_into(tr->fdt, tr->fdt, new_fdt_size); + if ( rc ) + { + printk(XENLOG_ERR "Increasing fdt size to accommodate overlay_fdt failed with error %d\n", + rc); + goto err; + } + + nodes_full_path = xzalloc_bytes(tr->num_nodes * sizeof(char *)); + if ( nodes_full_path == NULL ) + { + rc = -ENOMEM; + goto err; + } + + /* + * overlay_get_nodes_info is called to get the node information from dtbo. + * This is done before fdt_overlay_apply() because the overlay apply will + * erase the magic of overlay_fdt. + */ + rc = overlay_get_nodes_info(overlay_fdt, nodes_full_path); + if ( rc ) + { + printk(XENLOG_ERR "Getting nodes information failed with error %d\n", + rc); + goto err; + } + + rc = fdt_overlay_apply(tr->fdt, overlay_fdt); + if ( rc ) + { + printk(XENLOG_ERR "Adding overlay node failed with error %d\n", rc); + goto err; + } + + /* + * Check if any of the node already exists in dt_host. If node already exits + * we can return here as this overlay_fdt is not suitable for overlay ops. + */ + for ( j = 0; j < tr->num_nodes; j++ ) + { + overlay_node = dt_find_node_by_path(nodes_full_path[j]); + if ( overlay_node != NULL ) + { + printk(XENLOG_ERR "node %s exists in device tree\n", + nodes_full_path[j]); + rc = -EINVAL; + goto err; + } + } + + /* Unflatten the tr->fdt into a new dt_host. */ + rc = unflatten_device_tree(tr->fdt, &tr->dt_host_new); + if ( rc ) + { + printk(XENLOG_ERR "unflatten_device_tree failed with error %d\n", rc); + goto err; + } + + rc = add_nodes(tr, nodes_full_path); + if ( rc ) + { + printk(XENLOG_ERR "Adding nodes failed. Removing the partially added nodes.\n"); + goto remove_node; + } + + INIT_LIST_HEAD(&tr->entry); + list_add_tail(&tr->entry, &overlay_tracker); + + spin_unlock(&overlay_lock); + + free_nodes_full_path(tr->num_nodes, nodes_full_path); + + return rc; + +/* + * Failure case. We need to remove the nodes, free tracker(if tr exists) and + * tr->dt_host_new. + */ +remove_node: + tr->num_nodes = j; + rc = remove_nodes(tr); + + if ( rc ) + { + /* + * User needs to provide right overlay. Incorrect node information + * example parent node doesn't exist in dt_host etc can cause memory + * leaks as removing_nodes() will fail and this means nodes memory is + * not freed from tracker. Which may cause memory leaks. Ideally, these + * device tree related mistakes will be caught by fdt_overlay_apply() + * but given that we don't manage that code keeping this warning message + * is better here. + */ + printk(XENLOG_ERR "Removing node failed.\n"); + spin_unlock(&overlay_lock); + + free_nodes_full_path(tr->num_nodes, nodes_full_path); + + return rc; + } + +err: + spin_unlock(&overlay_lock); + + if ( tr->dt_host_new ) + xfree(tr->dt_host_new); + + xfree(tr->overlay_fdt); + xfree(tr->nodes_address); + xfree(tr->fdt); + + free_nodes_full_path(tr->num_nodes, nodes_full_path); + + xfree(tr); + + return rc; +} + long dt_sysctl(struct xen_sysctl_dt_overlay *op) { long ret; @@ -396,6 +924,11 @@ long dt_sysctl(struct xen_sysctl_dt_overlay *op) switch ( op->overlay_op ) { + case XEN_SYSCTL_DT_OVERLAY_ADD: + ret = handle_add_overlay_nodes(overlay_fdt, op->overlay_fdt_size); + + break; + case XEN_SYSCTL_DT_OVERLAY_REMOVE: ret = handle_remove_overlay_nodes(overlay_fdt, op->overlay_fdt_size); -- 2.17.1 From xen-devel-bounces@lists.xenproject.org Fri Jun 02 00:49:15 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 02 Jun 2023 00:49:15 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542803.847198 (Exim 4.92) (envelope-from ) id 1q4syg-00051j-E0; Fri, 02 Jun 2023 00:49:14 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542803.847198; Fri, 02 Jun 2023 00:49:14 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4syf-0004u3-77; Fri, 02 Jun 2023 00:49:13 +0000 Received: by outflank-mailman (input) for mailman id 542803; Fri, 02 Jun 2023 00:49:06 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4syY-00018B-26 for xen-devel@lists.xenproject.org; Fri, 02 Jun 2023 00:49:06 +0000 Received: from NAM12-DM6-obe.outbound.protection.outlook.com (mail-dm6nam12on20616.outbound.protection.outlook.com [2a01:111:f400:fe59::616]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 450f7372-00df-11ee-8611-37d641c3527e; Fri, 02 Jun 2023 02:49:04 +0200 (CEST) Received: from MW2PR2101CA0034.namprd21.prod.outlook.com (2603:10b6:302:1::47) by SA0PR12MB4461.namprd12.prod.outlook.com (2603:10b6:806:9c::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.24; Fri, 2 Jun 2023 00:48:58 +0000 Received: from CO1NAM11FT033.eop-nam11.prod.protection.outlook.com (2603:10b6:302:1:cafe::1e) by MW2PR2101CA0034.outlook.office365.com (2603:10b6:302:1::47) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.9 via Frontend Transport; Fri, 2 Jun 2023 00:48:58 +0000 Received: from SATLEXMB03.amd.com (165.204.84.17) by CO1NAM11FT033.mail.protection.outlook.com (10.13.174.247) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6455.24 via Frontend Transport; Fri, 2 Jun 2023 00:48:57 +0000 Received: from SATLEXMB08.amd.com (10.181.40.132) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Thu, 1 Jun 2023 19:48:56 -0500 Received: from SATLEXMB04.amd.com (10.181.40.145) by SATLEXMB08.amd.com (10.181.40.132) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Thu, 1 Jun 2023 17:48:56 -0700 Received: from xsjfnuv50.xilinx.com (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server id 15.1.2375.34 via Frontend Transport; Thu, 1 Jun 2023 19:48:55 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 450f7372-00df-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=YP37zK1MTTnTIgBCY2xm9N1z2hnqLOVeWBQM1RnZhlDCKqm7YLOUoMJhQqDtKJ+oeoVU6UaidbwiqIeNkx73m7sBSp0v7mKYjSoArwukXZTyq9Q4I8+W4VOC7NQP1HbR3RKMS3BPhNrnnXWTkgH2lNFiL16DMCfyUcXbyCduLT6ocZsxZSQ+hngFKs6eO/tLC+LkzFLNYWGagsPYvm4IrEb/otucI4jrpwTdX0KzhaacwNKLflfk46s0lCsDHmqMqXMTxp9QHV22/+2VccM6ZXmrymxet/D0vAqKMlqRFPbwRP3F8yN+2yozDyNC56adV3qF93LZRLmgznhNRYlgEQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=cw3ZgAJufScS/YkBvxCBzP/nR/M5kVzAUuLpS4HefHs=; b=KscL3NRo1r76NTawraKYvZ8y8qLHIA8/tZAqJFqGCTuIs2vZR+BmHd8KYJt0npWP2ti+pmG2O/h4dU7QnRaJQzdrZb/VSsoZSHI2f7/BRNV0PG3mowPorYfj5s1XEOfAgvycMFwB9kKgARBY0SYREIsai9PfM+BNWXKCYvEn2qyL3TwT23ZY0n65vXxz+oi5M/+1QWBPtarY8L5qYtJ6YotKNcHj/jpjy4uFn8/RezFPlERGYCvMJ4HT/rV8N+PpDyBHjyPJD9sEBQ4him02LEarHIgGO4jB+xBJ/YzgZprJHfkNkAhtyaGmdYyt0eTWHaOuLriqVWaHNtbuYzd2kw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=cw3ZgAJufScS/YkBvxCBzP/nR/M5kVzAUuLpS4HefHs=; b=e2PvS7RH3KA7nkhzhc8PiQrZBFUyBR8V9z3ZBsBTyK3RlLP05B5frXOrxE5UZzneXKBDaM8QzlJamqkpgKq6qegiEGKW7QyPcbJKVXQmls/LJZnz2QUIAYF9HJFp47Z1uVodYbFVgMNMuCKXv+Zvy6S3iy3I6Io/9cCyOsPyUGg= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C From: Vikram Garhwal To: CC: , , , , Julien Grall , Bertrand Marquis , Volodymyr Babchuk Subject: [XEN][PATCH v7 13/19] asm/smp.h: Fix circular dependency for device_tree.h and rwlock.h Date: Thu, 1 Jun 2023 17:48:18 -0700 Message-ID: <20230602004824.20731-14-vikram.garhwal@amd.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20230602004824.20731-1-vikram.garhwal@amd.com> References: <20230602004824.20731-1-vikram.garhwal@amd.com> MIME-Version: 1.0 Content-Type: text/plain X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO1NAM11FT033:EE_|SA0PR12MB4461:EE_ X-MS-Office365-Filtering-Correlation-Id: 4631094a-a250-4563-8928-08db63032614 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: zxbrzXF9KkBZyucInPXuc2bP+Ix2YLZuSl02O98SMb0XzVjacZ/vkAiHgEvtU4zmg5Om/101L6PAqNtEOeNxcTAalr8ds/hoYnQBKPvBX5hl5i2V5T3S7WmW1jyO0vuwQRgPR7eQ8f1p4zvtbMnE6cH4wuGYggkFtqx7kcXQdaocUC4IaIsYWTbfKR002kWQKqzJ6rg9i2TLbtRQenbhm4vGe0fQ5pAe9tY3TkGfNu9TyivdO61s47dvqKbZD18GY8/l6LXdVjTKUkZ2Tr/qpQpyt2uvpSpksTNiILL6AIaoYIPVIrzgfEuqRE3Ru/UMHd95uqxEANVRDul/G2auGy7DBDrUFVh7uyQgMZPFTE6//7o68oF0yd/xsf1vu8EdNlWNUNMAT6YUWZUrhsp1Z1dJANYwxbUXsdWwsJOhoO1djSuOCYLS5mn5ExbC+QTgWtOQqbFKpC0OucZudvwb0Ng8H7C7xOTT4WcF/ktOWOKvy+yDfQYXp6+uYQGCBjTOXIlRliuETh+5l5SgRHkCruK93VYd/dSGfaAEaoFbpfHUPYqh1PO9EruEEW6rwd85R4KOqC2XLrxrNo4PB/6eeWsnHhC3Tr4h6e5a8DY0HRgoNiaChn1TCRW9Vyo6hEpfGz/kwuzsFsbqKHtQM1ZBPtv3e3ntRUUJpcp+uHykWWVk5olRcbpqVgF4RtlKA6aK/LGGeHGfttR6gS+Wcxo56SSfwsVBjdX+JIwOg28h9KwENrIBBLbxSNo+1xU3Bwa1T7sOYZNuzIcBYOP/xHFXEg== X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(376002)(136003)(346002)(39860400002)(396003)(451199021)(46966006)(40470700004)(36840700001)(47076005)(36860700001)(336012)(426003)(83380400001)(40480700001)(356005)(70586007)(70206006)(26005)(6666004)(1076003)(6916009)(478600001)(2616005)(54906003)(186003)(86362001)(2906002)(44832011)(8936002)(40460700003)(5660300002)(8676002)(36756003)(41300700001)(81166007)(4326008)(82740400003)(316002)(82310400005)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Jun 2023 00:48:57.6114 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 4631094a-a250-4563-8928-08db63032614 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com] X-MS-Exchange-CrossTenant-AuthSource: CO1NAM11FT033.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA0PR12MB4461 Dynamic programming ops will modify the dt_host and there might be other function which are browsing the dt_host at the same time. To avoid the race conditions, adding rwlock for browsing the dt_host. But adding rwlock in device_tree.h causes following circular dependency: device_tree.h->rwlock.h->smp.h->asm/smp.h->device_tree.h To fix this, removed the "#include and forward declared "struct dt_device_node". Signed-off-by: Vikram Garhwal Reviewed-by: Henry Wang Reviewed-by: Michal Orzel --- xen/arch/arm/include/asm/smp.h | 3 ++- xen/arch/arm/smpboot.c | 1 + 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/xen/arch/arm/include/asm/smp.h b/xen/arch/arm/include/asm/smp.h index a37ca55bff..b12949ba8a 100644 --- a/xen/arch/arm/include/asm/smp.h +++ b/xen/arch/arm/include/asm/smp.h @@ -3,13 +3,14 @@ #ifndef __ASSEMBLY__ #include -#include #include #endif DECLARE_PER_CPU(cpumask_var_t, cpu_sibling_mask); DECLARE_PER_CPU(cpumask_var_t, cpu_core_mask); +struct dt_device_node; + #define cpu_is_offline(cpu) unlikely(!cpu_online(cpu)) #define smp_processor_id() get_processor_id() diff --git a/xen/arch/arm/smpboot.c b/xen/arch/arm/smpboot.c index e107b86b7b..eeb76cd551 100644 --- a/xen/arch/arm/smpboot.c +++ b/xen/arch/arm/smpboot.c @@ -10,6 +10,7 @@ #include #include #include +#include #include #include #include -- 2.17.1 From xen-devel-bounces@lists.xenproject.org Fri Jun 02 00:49:17 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 02 Jun 2023 00:49:17 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542805.847210 (Exim 4.92) (envelope-from ) id 1q4syi-0005Nq-PW; Fri, 02 Jun 2023 00:49:16 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542805.847210; Fri, 02 Jun 2023 00:49:16 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4syh-0005Im-Dw; Fri, 02 Jun 2023 00:49:15 +0000 Received: by outflank-mailman (input) for mailman id 542805; Fri, 02 Jun 2023 00:49:07 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4syZ-0000if-L4 for xen-devel@lists.xenproject.org; Fri, 02 Jun 2023 00:49:07 +0000 Received: from NAM02-SN1-obe.outbound.protection.outlook.com (mail-sn1nam02on20630.outbound.protection.outlook.com [2a01:111:f400:7ea9::630]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 4647b034-00df-11ee-b231-6b7b168915f2; Fri, 02 Jun 2023 02:49:06 +0200 (CEST) Received: from MW4P222CA0008.NAMP222.PROD.OUTLOOK.COM (2603:10b6:303:114::13) by CH0PR12MB5187.namprd12.prod.outlook.com (2603:10b6:610:ba::5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.22; Fri, 2 Jun 2023 00:49:03 +0000 Received: from CO1NAM11FT110.eop-nam11.prod.protection.outlook.com (2603:10b6:303:114:cafe::aa) by MW4P222CA0008.outlook.office365.com (2603:10b6:303:114::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.23 via Frontend Transport; Fri, 2 Jun 2023 00:49:03 +0000 Received: from SATLEXMB03.amd.com (165.204.84.17) by CO1NAM11FT110.mail.protection.outlook.com (10.13.175.125) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6455.24 via Frontend Transport; Fri, 2 Jun 2023 00:49:03 +0000 Received: from SATLEXMB07.amd.com (10.181.41.45) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Thu, 1 Jun 2023 19:49:02 -0500 Received: from SATLEXMB04.amd.com (10.181.40.145) by SATLEXMB07.amd.com (10.181.41.45) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Thu, 1 Jun 2023 17:49:02 -0700 Received: from xsjfnuv50.xilinx.com (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server id 15.1.2375.34 via Frontend Transport; Thu, 1 Jun 2023 19:49:01 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 4647b034-00df-11ee-b231-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Rp8pHoRg8ed/ajxYTfWD92SqZMZrLCBcZN3UWy+ptnHfLsDX+ICStJkKoY/yryHXNMDHBTJkJ3WmKtnn/NsT6U4wZFCq5Pg8WZGriDRMI/CWejHLmGXbr9ElkA80o5bt3aQVXe7NXLuNfdJr6NrtTs5aCLz/05yQv/v6I+/tRFDNxIn69gkoEThqmRJ+wsztuXZudgJ8fLnnKJ9jlUb7oPZow2xtJ2IZwy4JMvBcR7btU+TMviyQlAMUdhaRk0v1q/KX5h6nSJl5rfH3jbMDiHzamSyhJFdGd+y8iPMZthqVDpWwkGR82NhzoVQZhB5L1boI9mPgP/M80FiC6L4OWQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=82cXKCd9pIjt4k7d+0pxA09Bfm65PUipqTwwDD6EGDA=; b=Pn2x5FXILpdvqOf2hmUNCzmraeWDHN64/T51cK0kPKh/JmWsLHo4wfwxp8ONazBlYnG9LNYm01Dj5j7AqUvRup8AW6/cC8I9jHts+OcYMmsFvzfUh2qJTScHaUgFMwWGYDXWMtwZceFnk5iR9AMdSDchFXsLpmwmtR/u1mjumWQhToKPS1NtVlodD5wtmoHWh8RmdWO5OVc8Eml/BknEQoU0SAG+6JOVcdDUP+3H+86cZTzBnP1ShBh/ZYLU0CyOSqIN+kq4rRMgmRWgka0PvAZGH4RzhtVJozQVPMvMVN7jlQeFgCzH0N7DmxK+BplBhRfMGTSWeF21t6bIDwjiGQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=82cXKCd9pIjt4k7d+0pxA09Bfm65PUipqTwwDD6EGDA=; b=2jU3mT6+M6dDk79F9dnowrh5R/zXyXisroar1oIaklo5yJoPayg7i7I+5vuCqcO1b5PX5yIaJkBdyP0rNEIZyeDD27AOohgfCm7xA+k64rgkijryZHZcoQUVqC6HwIRiH1r4SQk5QkPTVbW6GkLtaFJurqEulU8xAf6JkZ7G3PA= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C From: Vikram Garhwal To: CC: , , , , Wei Liu , "Anthony PERARD" Subject: [XEN][PATCH v7 19/19] tools/xl: Add new xl command overlay for device tree overlay support Date: Thu, 1 Jun 2023 17:48:24 -0700 Message-ID: <20230602004824.20731-20-vikram.garhwal@amd.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20230602004824.20731-1-vikram.garhwal@amd.com> References: <20230602004824.20731-1-vikram.garhwal@amd.com> MIME-Version: 1.0 Content-Type: text/plain X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO1NAM11FT110:EE_|CH0PR12MB5187:EE_ X-MS-Office365-Filtering-Correlation-Id: a087ca27-b981-4a87-a051-08db6303294d X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: vemutuTFnXRVmPffSDPBvLSvxxFt9Ce10+r2J5sVaRJ4LgzzAfBykLUDJOyJdvWa7P5ldy21TcqJ9MTYqvDdrsyDXu638qCl8yVPifuaMmtdD5fCe/C/LMoGvC9VhiqAdq6fPLAUoiAqph2WHA7ZfRV7guLGcxoxbqA5uuFBMwfmLymK2AZEKr1tGMKtyphiB+w3LURsqyt0SvIr8GLFSoZjYWAWPniseoDdC0ySePzxeWvQq3gPmVa7ifYOtAKCvgngutohGzp+Z+RYzba0OpHtW181sb6pNQSlwuT0qFJqRXj4msRH7adENLZIgtmriYTRwJ9KlenGRTiQZNPbpLeBzxoZq1JsVV/a12BAwUr4m25basXfOA8qvWPQgWN05JV1rbh3+tkG5geZVBNSIZWpW0mwL5qN09ZrmPmE2+HRIwXAPDq+JbTFsbdmTXdACJOc6iKDHerS105eYnshgVCUMvlgFZjKdv2qVSbXtCpciPzTtlAuxUFHWAYwwloLwT2WQ4JB3ukKRsjPNcJ+kuMUpZ6aBbsUNmwx/aXcRZKpAvK2/PD72dJS+61KEUHpL16qS8dy4qHKlKRlwZPuTV3kaKGj4eIaROPdPjze/50XnznDbEuGuLOjiUgITsOFnSM4Bn6vBsWyWKqb8ziz66uEShgFzj6WesNhY8GZScon1YoiSP1gXBLWljlW/zmWUj4yfwMPpnkwGL21VoXT0MFnC5qHXJkQMaR4Swyi+YcqYc158CO5DYrZieMih9xvvRdcprWt8t9SAz2gZ1FQBg== X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(136003)(346002)(376002)(39860400002)(396003)(451199021)(40470700004)(46966006)(36840700001)(54906003)(8936002)(8676002)(2906002)(4326008)(6916009)(70206006)(70586007)(316002)(41300700001)(44832011)(5660300002)(478600001)(6666004)(40460700003)(82740400003)(81166007)(1076003)(40480700001)(186003)(26005)(426003)(47076005)(36860700001)(356005)(86362001)(83380400001)(336012)(2616005)(36756003)(82310400005)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Jun 2023 00:49:03.0499 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: a087ca27-b981-4a87-a051-08db6303294d X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com] X-MS-Exchange-CrossTenant-AuthSource: CO1NAM11FT110.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH0PR12MB5187 Signed-off-by: Vikram Garhwal Reviewed-by: Anthony PERARD --- tools/xl/xl.h | 1 + tools/xl/xl_cmdtable.c | 6 +++++ tools/xl/xl_vmcontrol.c | 52 +++++++++++++++++++++++++++++++++++++++++ 3 files changed, 59 insertions(+) diff --git a/tools/xl/xl.h b/tools/xl/xl.h index 72538d6a81..a923daccd3 100644 --- a/tools/xl/xl.h +++ b/tools/xl/xl.h @@ -138,6 +138,7 @@ int main_shutdown(int argc, char **argv); int main_reboot(int argc, char **argv); int main_list(int argc, char **argv); int main_vm_list(int argc, char **argv); +int main_dt_overlay(int argc, char **argv); int main_create(int argc, char **argv); int main_config_update(int argc, char **argv); int main_button_press(int argc, char **argv); diff --git a/tools/xl/xl_cmdtable.c b/tools/xl/xl_cmdtable.c index ccf4d83584..db0acff62a 100644 --- a/tools/xl/xl_cmdtable.c +++ b/tools/xl/xl_cmdtable.c @@ -630,6 +630,12 @@ const struct cmd_spec cmd_table[] = { "Issue a qemu monitor command to the device model of a domain", " ", }, + { "dt-overlay", + &main_dt_overlay, 0, 1, + "Add/Remove a device tree overlay", + "add/remove <.dtbo>" + "-h print this help\n" + }, }; const int cmdtable_len = ARRAY_SIZE(cmd_table); diff --git a/tools/xl/xl_vmcontrol.c b/tools/xl/xl_vmcontrol.c index 5518c78dc6..de56e00d8b 100644 --- a/tools/xl/xl_vmcontrol.c +++ b/tools/xl/xl_vmcontrol.c @@ -1265,6 +1265,58 @@ int main_create(int argc, char **argv) return 0; } +int main_dt_overlay(int argc, char **argv) +{ + const char *overlay_ops = NULL; + const char *overlay_config_file = NULL; + void *overlay_dtb = NULL; + int rc; + uint8_t op; + int overlay_dtb_size = 0; + const int overlay_add_op = 1; + const int overlay_remove_op = 2; + + if (argc < 2) { + help("dt_overlay"); + return EXIT_FAILURE; + } + + overlay_ops = argv[1]; + overlay_config_file = argv[2]; + + if (strcmp(overlay_ops, "add") == 0) + op = overlay_add_op; + else if (strcmp(overlay_ops, "remove") == 0) + op = overlay_remove_op; + else { + fprintf(stderr, "Invalid dt overlay operation\n"); + return EXIT_FAILURE; + } + + if (overlay_config_file) { + rc = libxl_read_file_contents(ctx, overlay_config_file, + &overlay_dtb, &overlay_dtb_size); + + if (rc) { + fprintf(stderr, "failed to read the overlay device tree file %s\n", + overlay_config_file); + free(overlay_dtb); + return ERROR_FAIL; + } + } else { + fprintf(stderr, "overlay dtbo file not provided\n"); + return ERROR_FAIL; + } + + rc = libxl_dt_overlay(ctx, overlay_dtb, overlay_dtb_size, op); + + free(overlay_dtb); + + if (rc) + return EXIT_FAILURE; + + return rc; +} /* * Local variables: * mode: C -- 2.17.1 From xen-devel-bounces@lists.xenproject.org Fri Jun 02 00:49:18 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 02 Jun 2023 00:49:18 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542806.847219 (Exim 4.92) (envelope-from ) id 1q4syk-0005rp-8i; Fri, 02 Jun 2023 00:49:18 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542806.847219; Fri, 02 Jun 2023 00:49:17 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4syj-0005im-30; Fri, 02 Jun 2023 00:49:17 +0000 Received: by outflank-mailman (input) for mailman id 542806; Fri, 02 Jun 2023 00:49:09 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4sya-0000if-LA for xen-devel@lists.xenproject.org; Fri, 02 Jun 2023 00:49:08 +0000 Received: from NAM10-MW2-obe.outbound.protection.outlook.com (mail-mw2nam10on2061f.outbound.protection.outlook.com [2a01:111:f400:7e89::61f]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 4672f294-00df-11ee-b231-6b7b168915f2; Fri, 02 Jun 2023 02:49:07 +0200 (CEST) Received: from DM6PR06CA0073.namprd06.prod.outlook.com (2603:10b6:5:336::6) by DS7PR12MB6216.namprd12.prod.outlook.com (2603:10b6:8:94::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.23; Fri, 2 Jun 2023 00:49:03 +0000 Received: from DM6NAM11FT028.eop-nam11.prod.protection.outlook.com (2603:10b6:5:336:cafe::8) by DM6PR06CA0073.outlook.office365.com (2603:10b6:5:336::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.23 via Frontend Transport; Fri, 2 Jun 2023 00:49:03 +0000 Received: from SATLEXMB04.amd.com (165.204.84.17) by DM6NAM11FT028.mail.protection.outlook.com (10.13.173.140) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6455.24 via Frontend Transport; Fri, 2 Jun 2023 00:49:03 +0000 Received: from SATLEXMB07.amd.com (10.181.41.45) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Thu, 1 Jun 2023 19:49:01 -0500 Received: from SATLEXMB04.amd.com (10.181.40.145) by SATLEXMB07.amd.com (10.181.41.45) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Thu, 1 Jun 2023 17:49:01 -0700 Received: from xsjfnuv50.xilinx.com (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server id 15.1.2375.34 via Frontend Transport; Thu, 1 Jun 2023 19:49:00 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 4672f294-00df-11ee-b231-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=QtkySiu92kbpUP5+5t4mKoHZjPr8zWEEIAy1VXBmeRb0Wy4ypXck61NzGoCCM0Fojjgz2kifPC6u38dI0fMpfE28OXLCaRfLcd80hfUNWqqmKFM9ENdyZYYtNpgv5Gb0Eb3AUFNzcr6dNdxdakxjQggQpeLcXvKa8pwyHKl0DndWBlGrSuAtAfV601rgm54k4vpVPzYzO5OZtj4lUlDVAs0UPfMvMuUE6CbCeYMnxgOANNrQVWB+Z1qWqvNyT+aPXf6Pve4gcBtP31cqrc84tmx0JjVizhOPKu6A2giRfc8gKUzXuwm46uSADddIXg+NgS6Yc/KDQQyHnUbdvBkWkw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=COSto2fMoVPbrVEP8xV0305ulVdAAdS/6g5EZut49Do=; b=j2v3qN7cor5hAuiOEbLvboSVUfsDnqnqraL/G0XrqiTWV9IGRQnVmByckraNVwJrx9HBUsbMlNkMhRgQf1E1/AKZtkT+KYCRvY1N2GGhOpKfHy4a7Ufq4IZvsY+Wf+mTxbFJrBrtTsMdp0Dg3a95S0IAlkaeJjHZpWLhnlRX8T6pq3sEVZI4IOEUx6FXr5PF+1ArVqz6ftDBcS/bec3otrcwftw8nSMVU7dMAprvTdAiCv13frmnsM28gDY/aRrfNyNxkteLRqLn34U4bFX0i5LDCwuEdhWgEuLJ7q2+L+3AzHALr6RR43eqSx0dg+smfbgfEGv8jFg+b1EuMJ8uoQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=COSto2fMoVPbrVEP8xV0305ulVdAAdS/6g5EZut49Do=; b=t1Xf7E+3jv0LytBWnyx+7CZCGHBOWwontdnoRTv0TWtANlyMv6Etb4jkurgQaomJjQ7z+3NKqQu/D4hoAtJ9SfemNhXgEbBxrxCHBA0lk1FBruKvqGO0HJIuBSCbKdHhSVYZPGpd/E4XRc2AM8iDid5ZUlbC6lw55qoKJMgvIjY= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C From: Vikram Garhwal To: CC: , , , , Wei Liu , "Anthony PERARD" , Juergen Gross Subject: [XEN][PATCH v7 18/19] tools/libs/light: Implement new libxl functions for device tree overlay ops Date: Thu, 1 Jun 2023 17:48:23 -0700 Message-ID: <20230602004824.20731-19-vikram.garhwal@amd.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20230602004824.20731-1-vikram.garhwal@amd.com> References: <20230602004824.20731-1-vikram.garhwal@amd.com> MIME-Version: 1.0 Content-Type: text/plain X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DM6NAM11FT028:EE_|DS7PR12MB6216:EE_ X-MS-Office365-Filtering-Correlation-Id: d698fe06-80c2-4ea7-8868-08db6303294b X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: xtvCz6rMCYb/uOeBt29yv/HDcJ0NqicELGOsT3V13EoNcQAIy9JHi1+7/1RAp6kRxHIGoOT6nW8l9f0BtzrCSxQ5Eze21OeoVHV1wKecOaoTujqFRaR1/8gQXRgPMsayBlV9t1J0/WDXovM7HkbT7R90I7Vit4Te1UMRif3nfTictj9wLdAjq1RpNDcqH/1L8PAvpfTjBSnvExabByaw+j7SsN+VOf7XdXycC3f4d0EHgpyWFPJYQEtHvBUg+r9sxJCVhTa6+myzXLc+npr9QgDjZGouJPAXpEn1ZmpOEoBnS84I8dkoOHi/oCd2i6XwgTdRjrugbs5xkvVLt2r+ZGoRKJikqFGOFOMe4kMF3LD50WriSTnjKk2hZKMewHtR8EuWNadMEzCI0iLo1XYR4kYriekUhNPjy84/rj9OeUO7UY1O9YfWef5XPHfkI7dG49NYet6djoLnvNrO3nhmIHNI3c8DrJ/deQT3lB/yAbHuqiBkcVZTjsBxd2vnynt8xPxW0Q6YG9nFZ4eFZJqEMh9hKs24tHW9xrSgxTUJTLFbR/6IPdQD3taBK/OBpwuFi0Fy0xpf6YjC3Wkb47zu65fWeCAbSyOr9S67XUlNbpKHai/j/ceOH22j1hnaRyJ7WeDbRAPEC9rJ64CqiWnWFwKNrXHxYzZ982eq89ucow1OK4fc1yPaIiUp1IiFtbMTlDVDCVHgwKxK8dM3+VaWUx0eIe7QLRZyJ0H2RInPDB60TZIKT6FsjXSnruk8Fw2UkodgPptSlqqwVO/wUtd1UMh9XGcGurXsLdwCvaoJAAI= X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(136003)(346002)(376002)(396003)(451199021)(40470700004)(46966006)(36840700001)(41300700001)(316002)(44832011)(5660300002)(2906002)(54906003)(478600001)(70586007)(8676002)(70206006)(6916009)(4326008)(8936002)(6666004)(40460700003)(82740400003)(356005)(81166007)(40480700001)(1076003)(186003)(26005)(336012)(47076005)(426003)(36860700001)(36756003)(86362001)(82310400005)(2616005)(2004002)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Jun 2023 00:49:03.0987 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: d698fe06-80c2-4ea7-8868-08db6303294b X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com] X-MS-Exchange-CrossTenant-AuthSource: DM6NAM11FT028.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR12MB6216 Signed-off-by: Vikram Garhwal Reviewed-by: Anthony PERARD --- tools/include/libxl.h | 11 +++++ tools/libs/light/Makefile | 3 ++ tools/libs/light/libxl_dt_overlay.c | 71 +++++++++++++++++++++++++++++ 3 files changed, 85 insertions(+) create mode 100644 tools/libs/light/libxl_dt_overlay.c diff --git a/tools/include/libxl.h b/tools/include/libxl.h index cfa1a19131..1c5e8abaae 100644 --- a/tools/include/libxl.h +++ b/tools/include/libxl.h @@ -250,6 +250,12 @@ */ #define LIBXL_HAVE_DEVICETREE_PASSTHROUGH 1 +#if defined(__arm__) || defined(__aarch64__) +/** + * This means Device Tree Overlay is supported. + */ +#define LIBXL_HAVE_DT_OVERLAY 1 +#endif /* * libxl_domain_build_info has device_model_user to specify the user to * run the device model with. See docs/misc/qemu-deprivilege.txt. @@ -2453,6 +2459,11 @@ libxl_device_pci *libxl_device_pci_list(libxl_ctx *ctx, uint32_t domid, int *num); void libxl_device_pci_list_free(libxl_device_pci* list, int num); +#if defined(__arm__) || defined(__aarch64__) +int libxl_dt_overlay(libxl_ctx *ctx, void *overlay, + uint32_t overlay_size, uint8_t overlay_op); +#endif + /* * Turns the current process into a backend device service daemon * for a driver domain. diff --git a/tools/libs/light/Makefile b/tools/libs/light/Makefile index 5d7ff94b05..ba4c1b7933 100644 --- a/tools/libs/light/Makefile +++ b/tools/libs/light/Makefile @@ -112,6 +112,9 @@ OBJS-y += _libxl_types.o OBJS-y += libxl_flask.o OBJS-y += _libxl_types_internal.o +# Device tree overlay is enabled only for ARM architecture. +OBJS-$(CONFIG_ARM) += libxl_dt_overlay.o + ifeq ($(CONFIG_LIBNL),y) CFLAGS_LIBXL += $(LIBNL3_CFLAGS) endif diff --git a/tools/libs/light/libxl_dt_overlay.c b/tools/libs/light/libxl_dt_overlay.c new file mode 100644 index 0000000000..a6c709a6dc --- /dev/null +++ b/tools/libs/light/libxl_dt_overlay.c @@ -0,0 +1,71 @@ +/* + * Copyright (C) 2021 Xilinx Inc. + * Author Vikram Garhwal + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License as published + * by the Free Software Foundation; version 2.1 only. with the special + * exception on linking described in file LICENSE. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License for more details. + */ + +#include "libxl_osdeps.h" /* must come before any other headers */ +#include "libxl_internal.h" +#include +#include + +static int check_overlay_fdt(libxl__gc *gc, void *fdt, size_t size) +{ + int r; + + if (fdt_magic(fdt) != FDT_MAGIC) { + LOG(ERROR, "Overlay FDT is not a valid Flat Device Tree"); + return ERROR_FAIL; + } + + r = fdt_check_header(fdt); + if (r) { + LOG(ERROR, "Failed to check the overlay FDT (%d)", r); + return ERROR_FAIL; + } + + if (fdt_totalsize(fdt) > size) { + LOG(ERROR, "Overlay FDT totalsize is too big"); + return ERROR_FAIL; + } + + return 0; +} + +int libxl_dt_overlay(libxl_ctx *ctx, void *overlay_dt, uint32_t overlay_dt_size, + uint8_t overlay_op) +{ + int rc; + int r; + GC_INIT(ctx); + + if (check_overlay_fdt(gc, overlay_dt, overlay_dt_size)) { + LOG(ERROR, "Overlay DTB check failed"); + rc = ERROR_FAIL; + goto out; + } else { + LOG(DEBUG, "Overlay DTB check passed"); + rc = 0; + } + + r = xc_dt_overlay(ctx->xch, overlay_dt, overlay_dt_size, overlay_op); + + if (r) { + LOG(ERROR, "%s: Adding/Removing overlay dtb failed.", __func__); + rc = ERROR_FAIL; + } + +out: + GC_FREE; + return rc; +} + -- 2.17.1 From xen-devel-bounces@lists.xenproject.org Fri Jun 02 00:57:48 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 02 Jun 2023 00:57:48 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542853.847262 (Exim 4.92) (envelope-from ) id 1q4t6m-0004JR-Ss; Fri, 02 Jun 2023 00:57:36 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542853.847262; Fri, 02 Jun 2023 00:57:36 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4t6m-0004JG-PS; Fri, 02 Jun 2023 00:57:36 +0000 Received: by outflank-mailman (input) for mailman id 542853; Fri, 02 Jun 2023 00:57:35 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4syZ-00018B-8O for xen-devel@lists.xenproject.org; Fri, 02 Jun 2023 00:49:07 +0000 Received: from NAM10-DM6-obe.outbound.protection.outlook.com (mail-dm6nam10on20623.outbound.protection.outlook.com [2a01:111:f400:7e88::623]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 4675de5e-00df-11ee-8611-37d641c3527e; Fri, 02 Jun 2023 02:49:05 +0200 (CEST) Received: from MW4P222CA0025.NAMP222.PROD.OUTLOOK.COM (2603:10b6:303:114::30) by DM4PR12MB5358.namprd12.prod.outlook.com (2603:10b6:5:39c::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.23; Fri, 2 Jun 2023 00:49:02 +0000 Received: from CO1NAM11FT110.eop-nam11.prod.protection.outlook.com (2603:10b6:303:114:cafe::8b) by MW4P222CA0025.outlook.office365.com (2603:10b6:303:114::30) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.23 via Frontend Transport; Fri, 2 Jun 2023 00:49:02 +0000 Received: from SATLEXMB03.amd.com (165.204.84.17) by CO1NAM11FT110.mail.protection.outlook.com (10.13.175.125) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6455.24 via Frontend Transport; Fri, 2 Jun 2023 00:49:01 +0000 Received: from SATLEXMB08.amd.com (10.181.40.132) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Thu, 1 Jun 2023 19:49:00 -0500 Received: from SATLEXMB04.amd.com (10.181.40.145) by SATLEXMB08.amd.com (10.181.40.132) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Thu, 1 Jun 2023 17:49:00 -0700 Received: from xsjfnuv50.xilinx.com (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server id 15.1.2375.34 via Frontend Transport; Thu, 1 Jun 2023 19:48:59 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 4675de5e-00df-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=TauGtZi1ivIHOeFQ3l6inG9iV6k3zV2VA73TNg8zza5eqMjxBMKpz8tWk/qS+CHi+t/mM9vLOTcv7qszMss/jdEuAiU41BZwEOkd0IEFSGLfscIY+YpIGabZJoI5xfnNJCX2N3OdMrb/72m7z5ONJsd4d5/t106i/S80ueEXS7knnMEaiEdrhRQCz7YBTGWWWHmfeRvG7rsPoO+m29YISiXuhAbMJ7950kAYsdWpXRLC1Kik096HZWpdElGJ3+gdmcSEP8QitNwumWPfB7Hc+dXV/b6O4dxf+9VLyPFCjcQ7v2V4jESkUxvBzZfWLSChhClTBdp/Z0Xqe/j9q4RWGw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=KZGk9VcPBJGLjL1ph26BvCEzkwM9dKWSwelsy6V24KU=; b=hX+H4m41p2e34ujKPSZ+Doykr3pOBI5eJCK3C5/6z9GLoESDWwZEsGEAeO+OSu0ljqMP7C/z1eZSc17WEcQlKFR2XiCjYocyC54wV8GazCj4qUMl4oZb3KkUzTWzSWX3pgPnMcO3VwzPzupepM9aJSwGgVIeFVQSaexjPx9abHj8GYxm/D8JjCct3Mnv22oR1RVj/zjKUETxvTEwFOSlJTBKUWjAo6zgIbTfoTcuqea1NBMOFTsyAft9DNXtHvRh/Tzf6EqlZx73QfkFFaWBO7nM48mq/ZxKCWapuewCJFtFcvq7zfCyPzsyeN+CX5+7MVkfWDs3maPvs7VGFz3AXw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=KZGk9VcPBJGLjL1ph26BvCEzkwM9dKWSwelsy6V24KU=; b=dWPT2bYrFbENwMIvJLlkzUxMzkDFfe1dRX9sM6f2uFLctJKFhNj3Coc2cK6+OGhl5nR152wiRnShIY92V1EZsAQBDW7Arc9eDz6C4uryNwZTUNrRfDyYOAC+ylOSMbgUYwp0pyJy9rqHJ/AJ0e2yZV0mm6l3xsOfTk24nKvknmo= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C From: Vikram Garhwal To: CC: , , , , Wei Liu , "Anthony PERARD" , Juergen Gross Subject: [XEN][PATCH v7 17/19] tools/libs/ctrl: Implement new xc interfaces for dt overlay Date: Thu, 1 Jun 2023 17:48:22 -0700 Message-ID: <20230602004824.20731-18-vikram.garhwal@amd.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20230602004824.20731-1-vikram.garhwal@amd.com> References: <20230602004824.20731-1-vikram.garhwal@amd.com> MIME-Version: 1.0 Content-Type: text/plain X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO1NAM11FT110:EE_|DM4PR12MB5358:EE_ X-MS-Office365-Filtering-Correlation-Id: 90157362-c37e-483b-0007-08db63032845 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 9PpV3p1v7aloBea8/vLI+nUSwJj4tWOT8cxE2OWrNSrDEnA++NiYzMzM1G0flPrEGa47ybWsz98DFhiLykZw0myxcTbOmBguo4V6NbDO6nc3WE6doXt7HP1RJNZN8fVAQ/yk80EojmVUGUpXzYXrSrWRCaqE1KOkKEsLf9f/RUbGOv4IJmQozDvzlcScJPnoGBbzx6Gj/lOPcQwjQ9x4Ez+v85TI4g56lbTxTR8Xtg1hatd/1MK+scqJS7kcuaO4MJBFgt4Zc0erDQkCaxr5GttkQTivPO0QhfjBXIMMrT8SDY0pR6mJKb19Lf+UeGkMA+w7vdgVL2SoqCTqVw73HYICNDAjoKSGzrolLCC135+J88lR7/MsQ7V0fNG7rQmsQfWxudG+2bsTVagePKCr/vdqrEv4h5ntdbUSJVKmT7FuV3pdvs+sNsuLwYU9aqp9yBYzqi+2T6bm5K99ZJrWJCXOpO5E6/4Md70TJ8nbLf6xw+XFAJ+G+x16TxTFCw/LsqcXm8wBZ9vSjNhzu8IiXdhh6aKl4PYMprhKjN4wL82h21om9hsdPgRwlq1OCbq0p6f4YRejte5yo1ONi3eSLCNrtfdEhSAr6I9kRxiidNyNIU5kQU8oWH5cY3D04YTj+iJJRP8X+J1hMLeEhUiHyS1GyuvHngT4i9xdLbs3ptZO4UGsxa9C5OZb33tVZChAu7Ouk8EGK6RsHDcLpe3Hxzk5pKb8gSW1Y7bJ+/jo1m4SnZlZo4JNzIlkFmKJQvv8xR4qShXmM66UCKVH35P9tQ== X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(346002)(376002)(136003)(396003)(451199021)(40470700004)(46966006)(36840700001)(81166007)(82740400003)(36756003)(356005)(86362001)(82310400005)(40460700003)(41300700001)(8676002)(8936002)(2906002)(1076003)(44832011)(5660300002)(26005)(40480700001)(186003)(2616005)(336012)(426003)(47076005)(70586007)(478600001)(70206006)(54906003)(316002)(36860700001)(4326008)(6916009)(6666004)(2004002)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Jun 2023 00:49:01.3157 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 90157362-c37e-483b-0007-08db63032845 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com] X-MS-Exchange-CrossTenant-AuthSource: CO1NAM11FT110.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR12MB5358 xc_dt_overlay() sends the device tree binary overlay, size of .dtbo and overlay operation type i.e. add or remove to xen. Signed-off-by: Vikram Garhwal --- tools/include/xenctrl.h | 5 ++++ tools/libs/ctrl/Makefile.common | 1 + tools/libs/ctrl/xc_dt_overlay.c | 51 +++++++++++++++++++++++++++++++++ 3 files changed, 57 insertions(+) create mode 100644 tools/libs/ctrl/xc_dt_overlay.c diff --git a/tools/include/xenctrl.h b/tools/include/xenctrl.h index dba33d5d0f..411f7ef04b 100644 --- a/tools/include/xenctrl.h +++ b/tools/include/xenctrl.h @@ -2626,6 +2626,11 @@ int xc_livepatch_replace(xc_interface *xch, char *name, uint32_t timeout, uint32 int xc_domain_cacheflush(xc_interface *xch, uint32_t domid, xen_pfn_t start_pfn, xen_pfn_t nr_pfns); +#if defined(__arm__) || defined(__aarch64__) +int xc_dt_overlay(xc_interface *xch, void *overlay_fdt, + uint32_t overlay_fdt_size, uint8_t overlay_op); +#endif + /* Compat shims */ #include "xenctrl_compat.h" diff --git a/tools/libs/ctrl/Makefile.common b/tools/libs/ctrl/Makefile.common index 0a09c28fd3..247afbe5f9 100644 --- a/tools/libs/ctrl/Makefile.common +++ b/tools/libs/ctrl/Makefile.common @@ -24,6 +24,7 @@ OBJS-y += xc_hcall_buf.o OBJS-y += xc_foreign_memory.o OBJS-y += xc_kexec.o OBJS-y += xc_resource.o +OBJS-$(CONFIG_ARM) += xc_dt_overlay.o OBJS-$(CONFIG_X86) += xc_psr.o OBJS-$(CONFIG_X86) += xc_pagetab.o OBJS-$(CONFIG_Linux) += xc_linux.o diff --git a/tools/libs/ctrl/xc_dt_overlay.c b/tools/libs/ctrl/xc_dt_overlay.c new file mode 100644 index 0000000000..58283b9ef6 --- /dev/null +++ b/tools/libs/ctrl/xc_dt_overlay.c @@ -0,0 +1,51 @@ +/* + * + * Device Tree Overlay functions. + * Copyright (C) 2021 Xilinx Inc. + * Author Vikram Garhwal + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; + * version 2.1 of the License. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; If not, see . + */ + +#include "xc_private.h" + +int xc_dt_overlay(xc_interface *xch, void *overlay_fdt, + uint32_t overlay_fdt_size, uint8_t overlay_op) +{ + int err; + DECLARE_SYSCTL; + + DECLARE_HYPERCALL_BOUNCE(overlay_fdt, overlay_fdt_size, + XC_HYPERCALL_BUFFER_BOUNCE_IN); + + if ( (err = xc_hypercall_bounce_pre(xch, overlay_fdt)) ) + goto err; + + sysctl.cmd = XEN_SYSCTL_dt_overlay; + sysctl.u.dt_overlay.overlay_op = overlay_op; + sysctl.u.dt_overlay.overlay_fdt_size = overlay_fdt_size; + sysctl.u.dt_overlay.pad[0]= 0; + sysctl.u.dt_overlay.pad[1]= 0; + sysctl.u.dt_overlay.pad[2]= 0; + + set_xen_guest_handle(sysctl.u.dt_overlay.overlay_fdt, overlay_fdt); + + if ( (err = do_sysctl(xch, &sysctl)) != 0 ) + PERROR("%s failed", __func__); + +err: + xc_hypercall_bounce_post(xch, overlay_fdt); + + return err; +} -- 2.17.1 From xen-devel-bounces@lists.xenproject.org Fri Jun 02 00:57:49 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 02 Jun 2023 00:57:49 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542845.847252 (Exim 4.92) (envelope-from ) id 1q4t6k-00042I-KO; Fri, 02 Jun 2023 00:57:34 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542845.847252; Fri, 02 Jun 2023 00:57:34 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4t6k-00042B-Hb; Fri, 02 Jun 2023 00:57:34 +0000 Received: by outflank-mailman (input) for mailman id 542845; Fri, 02 Jun 2023 00:57:33 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4syd-0000if-Si for xen-devel@lists.xenproject.org; Fri, 02 Jun 2023 00:49:11 +0000 Received: from NAM10-MW2-obe.outbound.protection.outlook.com (mail-mw2nam10on2060c.outbound.protection.outlook.com [2a01:111:f400:7e89::60c]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 48dc99f3-00df-11ee-b231-6b7b168915f2; Fri, 02 Jun 2023 02:49:10 +0200 (CEST) Received: from MW3PR12MB4409.namprd12.prod.outlook.com (2603:10b6:303:2d::23) by CYYPR12MB8853.namprd12.prod.outlook.com (2603:10b6:930:cb::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.23; Fri, 2 Jun 2023 00:49:07 +0000 Received: from MW3PR12MB4409.namprd12.prod.outlook.com ([fe80::246d:4776:b460:9277]) by MW3PR12MB4409.namprd12.prod.outlook.com ([fe80::246d:4776:b460:9277%5]) with mapi id 15.20.6455.024; Fri, 2 Jun 2023 00:49:07 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 48dc99f3-00df-11ee-b231-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=hngBPtQmeJ0z29HFPi2HgDcbIcPHw7wV+9aUZs1spDlIjTf6QsUIUUQ/8PKji0LjludRMnEXg4Uuh/kKVo6tgpayTW7gX81NtGMy8uUxHZAUIiKBlUyC+Hn3Jz1VxNohSvFZ80/K3IPYhIOBPSRbuXkn0PggWRk0ah9ZwSiVgovfArDBj0SdoUl5WLvg3h9ymAn+mzB8l7t6xDuX09vbchoZqYxYFe7duYI2gjZ+UH7YOHGJlIb4SikqxU67tQRQXHHr7zT5DSZj0OQfbS3jqCKuKtD+0LkDNaxQAMIPo/+h7UYumcVg7B+77eMR5SnadfxIQ8pzm6EChZdXfthdVw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=xpXz5tHOpU7JIAJC98vhbLHugQakyZ74eqD1hZu2XEo=; b=Pz1wI9RCA6kjjlmhBqXLUNMmf/y5/9P5atPOFVX4tGSQznz4ggimDdv0p2OCRBGCAMA5StIEiXa4rZ9y0761sAporDEHQspFCshgVccIoOxyi0A5VrPvF9rG5e6/NCol1IH4NiJJS4GWJzaNSM3IW2eav5cogjPpo9tsisA43uX/rDk5daRa2/yYWv5nnm14WyCssWVUQvxpUEjHKD5bVHyZVQ3ytrPdRaXdMZAH1nft/dpUiFfHynBsKxfiAvdsk/nr2C03lgeEfDkBnBcyhHrqTI5miRJkhlLF3owXw6BpNO4RBRY2LqQy28O3bREMEeckPd4NJxnjJCJ9e+1i7A== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass header.d=amd.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=xpXz5tHOpU7JIAJC98vhbLHugQakyZ74eqD1hZu2XEo=; b=SxJL4rUoR3G4V/1JjzaA3iJPYFQTXFoow/mz9msH7oIL/FpWvbPKFiKKlXcodi0VAXoa+RhVpm+6QiPqmQ4KUzzx8pSACCTRQcUeVge5Ab9BlNDe1BxM+T4gT2fFgP/rj2vGMQvCNU/J4PnhodhRXXy2PIr7sEwAEfo+t5BepzY= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=amd.com; Message-ID: <06a4e9fb-ceb1-f9a8-482a-df99a74b6aca@amd.com> Date: Thu, 1 Jun 2023 17:49:05 -0700 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.11.2 Subject: Re: [XEN][PATCH v6 17/19] tools/libs/ctrl: Implement new xc interfaces for dt overlay Content-Language: en-US To: Anthony PERARD Cc: xen-devel@lists.xenproject.org, sstabellini@kernel.org, michal.orzel@amd.com, Wei Liu , Juergen Gross References: <20230502233650.20121-1-vikram.garhwal@amd.com> <20230502233650.20121-18-vikram.garhwal@amd.com> <8a78ce55-a677-4006-b04b-8fc600b3f75e@perard> From: Vikram Garhwal In-Reply-To: <8a78ce55-a677-4006-b04b-8fc600b3f75e@perard> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-ClientProxiedBy: BYAPR07CA0067.namprd07.prod.outlook.com (2603:10b6:a03:60::44) To MW3PR12MB4409.namprd12.prod.outlook.com (2603:10b6:303:2d::23) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: MW3PR12MB4409:EE_|CYYPR12MB8853:EE_ X-MS-Office365-Filtering-Correlation-Id: efc51270-3aee-4310-5409-08db63032bbf X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: c2e3XtJ04CkcL+3w49GzNFBIc/QlM8MUHWpHTSCWIwAd08BpBAOffphBFTi9HQ1NKnCz+D18M3l6yeEzx39CIo08PUUTjIEpjYxhCUS0EiJHj6m+gC0f/D6nPCNbMrtMXpF4k0neIWxuLW1l0uwGoS1pRcOkF3eJs25aCPxl0srvnzptkn4Nl2oA/4P5g9aYsysarmNZ3myrmU5skayR6Pe11If6gopVXiYSN51NF1mzOEg3zgoBZ5/ZDH3bTdchf1+csMF2zsZvKqC3nfRJZ2Ezce71BP7vl1fIoWitNzK8qS46I7P13ZhlxWslNg/7y7vqOlcA2CK9VJk0n7mGb37k7QuCGM5KiKLVHyZVyWxong/toVmnfgncZZthSRH2w7kSSsF5jLH9EASkR6i7g9suLqgTw0Wk1xz5QVj2KFaS2zH82As7/Eqp+I704avJQF+Hiwxx36DYV3HJdEu88id+nIctGN4poi/2wydggc4QlL7kIRlE58qvFwBKpZFboccQD7I0ZLOKgGmClYsDSdiuNAnHT/fyeq0RiKbT0KAMWccE1BTfQZ4ay1yDls+XOsi6jTECO4L+aCNy1ExJoSBCmIyE0tx8mh4mUXiNWAgXd0Uhlzp3XAZWGlLOjgtqCoOWCgfhkAiuSBuSG4JwFw== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MW3PR12MB4409.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(366004)(346002)(376002)(136003)(396003)(451199021)(36756003)(38100700002)(86362001)(31696002)(31686004)(41300700001)(8676002)(8936002)(2906002)(53546011)(6506007)(6512007)(44832011)(5660300002)(26005)(4744005)(186003)(2616005)(66476007)(66556008)(6486002)(478600001)(66946007)(54906003)(316002)(4326008)(6916009)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?UXdOS0hsQkVaS2dTQVZyUXM1SDI3Sjg2aW53Umh3SnVvM2RQYmFhTVhuVTZo?= =?utf-8?B?d1MvVUcwaUp3VUttbUhyaHFKUEErc1NLQW5uZUs1OFRxRnBDblBhaTBFdUhN?= =?utf-8?B?UDloT3drZnVtZ0RPbXhMOS83ankyU2R0bVJnTDAzZFZyU2xYNFFRRXZJVnVk?= =?utf-8?B?S0RPZEpwQi9aNXBYNzhYZlJKajBRNm8yN2NLVmZHRUhqNnYvQ3plMURFMFRE?= =?utf-8?B?L0hMSEVOTEt6Zndzd2hqM0k0blppT1VobEV1VEVRekdmZmpKSmZWbzMxWmNY?= =?utf-8?B?Zkh0TjgxS2NZeldpdDVyQUg4V1ZqZ2tHNzZyTHpRcENOUGhiK2xWejBKWW1l?= =?utf-8?B?ZWJHb0lnQURjRjF2ZC9heWtHenZQOXRuK3pKNFhOM3VBZjFkbU0xT1A3ZDJH?= =?utf-8?B?ay9vdEZTbHd0aXU5UkdpcUtSMGJKaFpyeXdiMlpmQkQrcnJwUVJBSytrUmZU?= =?utf-8?B?TDZDTUk2ellid2RNT1k3aWdJcTVvbVduako0VWw4VjByRXlvUEY3bVZWa2Qv?= =?utf-8?B?cGRONGplNEcwSG5uL3pTSEI0UTUrNENQRkllV3pqamVVbC9uQjA3SGgwZWNl?= =?utf-8?B?N2hwYUIrenhBN2FYZ2tqTmRlZktic25kWk9EMnlwdEJjV2p0OHJKQlVaWTBW?= =?utf-8?B?UFhOZmtXQ2xnOFJzSG5LaWRFck5nbDh1RVhIRTdvcmJFandIVnVNTGNKK2t0?= =?utf-8?B?VmpHUVhPNFd6TUV3YXJzT3BocEV1clFiTzhuV3RaVTVyOGlFeCt4T2RKVG5p?= =?utf-8?B?Uk5wMnlNTzloVmhXd0JZUzJVTUNZTEgyL2RZYWhzRHh6ZzRlZjRQbVNIZk1y?= =?utf-8?B?TmZHTHRjRVE4Y3d3U0NCbXlvWWpta25BdWFya3dqaUVpYVhRMTRhbEV5dEU1?= =?utf-8?B?R2NJQU5KY2diRExMaUoyZlNZbU1hRU1HQXNVZ09ZOHBRVDZvaHBjSExWM2ZP?= =?utf-8?B?ZjlmVGZEd1lMM3czU3oraVZha0pGR0FNLzFWcHBydmFMTW9hVVB6UytXaldK?= =?utf-8?B?aTVMVXRENVFVQS8vdjF5Tnh1TnBCMXVaYjZmdzl0Wng4YWZqdlE2cFJsTzk5?= =?utf-8?B?RUI5L3krRjFycnlIbVM4T2prT1VDUG81b0NiZWc1VjBOVDlJOXB2ZVZNWHFw?= =?utf-8?B?NjJKYStoeC9pTXBNMkhRSHNiQjVlUEloS2luRUNGWXZNa28rV2xyYkZ3VVBT?= =?utf-8?B?bUtVKzhxRVgzMHdvdzI0WGE5OTRabklVUnQ3M0dzdjhSbDdyNHJZWHJQY1Jp?= =?utf-8?B?Mit6eVBNN3VkRytIa1c2OFJVYkdOZjlqZE5BMHNQajhKdERJbCtGMEJneDJN?= =?utf-8?B?S2puRW5SUHVsdzVCMWxUSzV2UU5iYnNMNjgvTytKd2NkWGJYZzU5NDI4ZmZ1?= =?utf-8?B?dDZXejhuNEEwcUtIUEVjcXcrSUxFdDNtdUx0VlFETFZUaGJ5U0dCV3VxOGd4?= =?utf-8?B?NjZmb29YY1BERFVUZmJYeE5ZSlBWemMyWDg2bjhQNTFuL1E3aytLRnAzUXFS?= =?utf-8?B?cWduZmdIWGFNbnFtS3AzanQ0QVBjK3k1UVRPQ1c1cmNLMitwd042a3JVT245?= =?utf-8?B?ejVDcERxWHlPcWVzRFI4NjBjRVByWkpmZjNLUUZuRi9rSGpMM1IyVjgvNFpH?= =?utf-8?B?TjM3VkdOWStwSDAyQUh6RlpkYzJrTXF3ZU44dzh2ZHlpSzhUUS82UkZBakN1?= =?utf-8?B?SnY2aXNycmo3WmUvcjBWY2VwdnZqRS85dWRhNllSb0xGd2J4RmJYQmhmSDR3?= =?utf-8?B?cG0wQWZBbHFYdFZWcDU4aXFOTWVYUjREUGVFdlBORzVPbkZwdktTaWtkUXdW?= =?utf-8?B?Z3NUUGYwN3VJd3hHdHdzRS9MYm1pTnZaOVdZRkNaT0l1T0EwaThwdDNrcytM?= =?utf-8?B?MDVOMytJM09hdXhnMUlEaTFoTVExSXZQSVU3bkNTWjNSbjljQW16NDN0T2l6?= =?utf-8?B?NFBJV1N1bFFLVjNYbVZnRVdtaTlPeGdueGdJbTVVWXpnM2Z5Nm9JL2F5Y3hY?= =?utf-8?B?T0tlWGlIMzBNcFh5NGY0MHY1SWkrclVCMkxnZEVubk0xdFNNZGllMGVnZzk4?= =?utf-8?B?ekp1MHNzMTZpZ3plRERLUDZxQkZwVXBRY2ZWNDZQczg4bGNSLy9oV3V1bFhV?= =?utf-8?Q?Fl1Wm1fd1EAvB9XSef6B61Y1N?= X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-Network-Message-Id: efc51270-3aee-4310-5409-08db63032bbf X-MS-Exchange-CrossTenant-AuthSource: MW3PR12MB4409.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Jun 2023 00:49:07.4559 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 6OqR//h/Tb7/nG9rkYoJQhxQH4gqwntGo1P+G7TD8Gr+TH+I5hPo0/DZMYjln6on4RgIqU6XjyPuR7crzwzKsw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: CYYPR12MB8853 Hi Anthony, On 5/18/23 9:01 AM, Anthony PERARD wrote: > On Tue, May 02, 2023 at 04:36:48PM -0700, Vikram Garhwal wrote: >> xc_dt_overlay() sends the device tree binary overlay, size of .dtbo and overlay >> operation type i.e. add or remove to xen. >> >> Signed-off-by: Vikram Garhwal > Reviewed-by: Anthony PERARD Thanks for reviewing this one. Can you please re-review this patch for v7 version? I added small padding change as per Jan' s comment on 15/19 patch and that changed this patch too. > > Thanks, > From xen-devel-bounces@lists.xenproject.org Fri Jun 02 00:57:50 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 02 Jun 2023 00:57:50 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542869.847272 (Exim 4.92) (envelope-from ) id 1q4t6q-0004cG-5p; Fri, 02 Jun 2023 00:57:40 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542869.847272; Fri, 02 Jun 2023 00:57:40 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4t6q-0004c9-0l; Fri, 02 Jun 2023 00:57:40 +0000 Received: by outflank-mailman (input) for mailman id 542869; Fri, 02 Jun 2023 00:57:38 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4syu-00018B-GP for xen-devel@lists.xenproject.org; Fri, 02 Jun 2023 00:49:28 +0000 Received: from NAM12-BN8-obe.outbound.protection.outlook.com (mail-bn8nam12on20609.outbound.protection.outlook.com [2a01:111:f400:fe5b::609]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 52270aa4-00df-11ee-8611-37d641c3527e; Fri, 02 Jun 2023 02:49:26 +0200 (CEST) Received: from MW3PR12MB4409.namprd12.prod.outlook.com (2603:10b6:303:2d::23) by CYYPR12MB8853.namprd12.prod.outlook.com (2603:10b6:930:cb::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.23; Fri, 2 Jun 2023 00:49:22 +0000 Received: from MW3PR12MB4409.namprd12.prod.outlook.com ([fe80::246d:4776:b460:9277]) by MW3PR12MB4409.namprd12.prod.outlook.com ([fe80::246d:4776:b460:9277%5]) with mapi id 15.20.6455.024; Fri, 2 Jun 2023 00:49:22 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 52270aa4-00df-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=DoEOKmpTchvaQTQlppGQTRJJ+A+pWP2neCSN2FQWCY9080ITXpX29u9ur/HQqVcmEjhHLSzWQB/QVIW2Vdve+H+DZPHuXMlYSU9RPeuRm/cX3nFIxX3rKgZiGM/1onB9rE2uKVXysU3aDPjjZV2aUcBmErTql2QE6gwEDAb+0vGO73rp35QdJXt8bJq24rkFHyO72d3f9sqGEVTmh8J8TO4zj8ckc7ZAs++l6/xy6hF1Qbx7pCgDE1Fw3mVMN5PM3Y/Y2i8YnJlFy0xwAtwwVYwqzMfsIS/vdEGpiU+BiX3O7DV4Sih4rqQ/QDnF2QONbsO653YVnbLQRi7yY2rH9g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=pjHAUFOEL6gSTDQmQdF8t3vtqEdVfFrFldH0mIAkjDI=; b=HXpIBRQoIf+75E4QLOso35u3cBfAGm74RjoyyQpOgn0zUX5gLz2Du1+94wrJvmT1TydLQlPNe4zPtDlT5mYWXwRzEGwYwIc4vJJUJDEWdDQS9Fdj1nVXx5wINkKSwR/mSsB8LAOutyfkKYLAD7EN3n22ZsjfAERmuPI83bzKd0oY9lWACFM978mSqXA9OeoeQQ8G6zwUHB9xXbGzMJgyhFK+Fbi9TGCEa8aa5C+rAk3GdpL0Ik7QUs2SBfRJjILDRB7OIpmmXlcRwD3NXdSKUO1WbcCKBOBoU+gqfB0LeSi2VzO24aIQbPifUm/off4o8APDE2tOTXJ8A79jh4Oy5w== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass header.d=amd.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=pjHAUFOEL6gSTDQmQdF8t3vtqEdVfFrFldH0mIAkjDI=; b=UmuvHNyrEHcPVe4bhtt+CP1KSZEttcUVPiV6BeLUU95bXmzmBjR4NOZBzL/GFvzn6bfijOXjl4870Sl2clB7sQ4qW35opXwfsrSlQDryuvOxzhTiJBQA+C346NA5ZrGv2cNkI9ZJbsyfITm7ucEtHqAi1Ww7iKtbrg9t+m8HlSs= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=amd.com; Message-ID: Date: Thu, 1 Jun 2023 17:49:20 -0700 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.11.2 Subject: Re: [XEN][PATCH v6 16/19] xen/arm: Implement device tree node addition functionalities Content-Language: en-US To: Michal Orzel , xen-devel@lists.xenproject.org Cc: sstabellini@kernel.org, Andrew Cooper , George Dunlap , Jan Beulich , Julien Grall , Wei Liu References: <20230502233650.20121-1-vikram.garhwal@amd.com> <20230502233650.20121-17-vikram.garhwal@amd.com> <27af742a-c8c2-006e-fcd8-bbad116e1908@amd.com> From: Vikram Garhwal In-Reply-To: <27af742a-c8c2-006e-fcd8-bbad116e1908@amd.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-ClientProxiedBy: BYAPR07CA0038.namprd07.prod.outlook.com (2603:10b6:a03:60::15) To MW3PR12MB4409.namprd12.prod.outlook.com (2603:10b6:303:2d::23) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: MW3PR12MB4409:EE_|CYYPR12MB8853:EE_ X-MS-Office365-Filtering-Correlation-Id: 09dbbf1b-9ff1-4532-2f04-08db630334c5 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: wbz+jZMkOpEKmQ/DRwpkuZ9ZqQzxwYMoZoQV0wKO7vj1FD8WBowpKRx/s5U3krF1QixyqeFzpAFuWOaCw7AXBQ//TcGekEKkp6mSqNNymR5DmRFNj0oZcUmdfTgJCRTzDTIGBCPgrVhJkczLe+j3HXrRP/T3j7dFouF2INsyG8QqYYrHm3P86RkJ6J1YWk+MTixur3uRvwo5eooPH2i1mSJEt3Cd43Z8uNXbktOXlByD0CFR2GXtwQu314hyV5dOkH3V/Y57W2e82YVQ2/Ep/R37abjm1OvPG3o1cf2wkn5yyKUKo/dKFtRoc4yC87UUXLswifq0Y3EbP8YOlmLRd2KMUFLu4T784Q63tFkiiN1ICTWpDyDhCzBCh90c3vl2lMic1qeaU1n6SStyP42fnxm6OrzOAffsq2vz10qNm0KvSn8mWtFuutfGgotYw1+AS7TyHJOzQNxIXuix99voMxcPltIAd7M8uMf9HezPSI0nA/JWvCAt4jZtS0mOTUXYVq80zRhN3+mxKWYStq87tGE921pUX3/iSNKhF6SWfPUY+t7UXjtna9IlL7dBgIBl836ks7CAHhQpmHCX0iQhRYUfgtoeNWATkgprecfGgne4JTfbjDQ5EyYGlg1M0gARpIMJx1xX19m23Y7cs74hxw== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MW3PR12MB4409.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(366004)(346002)(376002)(136003)(396003)(451199021)(36756003)(38100700002)(86362001)(31696002)(66899021)(31686004)(41300700001)(8676002)(8936002)(30864003)(2906002)(53546011)(6506007)(6512007)(44832011)(5660300002)(26005)(186003)(2616005)(83380400001)(66476007)(66556008)(6486002)(478600001)(66946007)(54906003)(316002)(4326008)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?SHFxbUhDY3QzL2lPY2FCT1l0WGhJYkk0OXhmaHZjRXl1SVY4d0w0ZVdDVFdL?= =?utf-8?B?Y0VnNjVPT1pmWHpIWE56cm5nLzl0dW5obkJucXhYR1ljN1lwVG5XRTNxb20r?= =?utf-8?B?R2dJeGg1YUV5ODl6cFhpY2k3VGZXQ295SHVSOGtPMWxuOVg3MEY1QUFPM2ZY?= =?utf-8?B?MS9pUldZeCtGQkhSb3I4ajR0a0t2Z3VnNmJJM1Z4eld6eURSbzNQTHJiZTF5?= =?utf-8?B?ZGt3eDVyanB2WmJxcnNFU2oyVk5VZVdPVklJcVgrM1NKNlBBcVBGcklLZEhF?= =?utf-8?B?MDFvdlVHT3dUYmVjS0VJLzBDWGRhSUFmWHhiODBQZ0dwd29WditSVW1FM2NL?= =?utf-8?B?NUt1Y3pCZml4eGJ0UmdBZHFzU3EyTXZ6V0R4TGQzeS9OVmF0TjNvWFV6aFNR?= =?utf-8?B?Z2hhZUlLdGlDeXIybDlzaTFNK2lmNWM5S3F2VjFObXhKcGFpVzA0TVZEVWFm?= =?utf-8?B?ZmE2MTFuYWJZcnk4TFhYa0tpd25TMm1YS2N6M2IrdmZDekprYnJxMDRFQ21x?= =?utf-8?B?QjZYTnpyUi9oUnNOcTF5M3hMWEJVZDdIUm1ITytoeXQrZWxQbjkxRXpmNk1N?= =?utf-8?B?UmV3ano1RFpUbVZrMjV0cC9TNG9pQjBXOUcxM1p0QU5ZSGl4VjF1VStXRk8x?= =?utf-8?B?bWppTUp2dzV3TXdXaDBCbnRpSTRsb3RpYUZMLzBTLytXdWJMc2ZERHhIZEsy?= =?utf-8?B?emVVeFBwRjRPbVR5Q091emJpQjdlVDFQS1dOVFRuRGFTSXhmQmdFY3FGcHJa?= =?utf-8?B?dVZpRS9UVVplOWt0QnhMZlVTNVJJK3YxZkRwWW5QMUtHYTJNM25jUnRwRTlR?= =?utf-8?B?M0hrcjZ3UHh5OHNsZWlGSFJZVGdFaEZBWkdIeGM1d0xUSjZVZFR3elFpb0g4?= =?utf-8?B?NVFEVkpzUVhjTGZDMEgxRy9pZloxNVo4YUVIMjVBa3V6RDJ5d1NhbkpxeEhO?= =?utf-8?B?Vlh5Q1A0bmF3RnlMSVB5Y2hISE1xM211ZndQS1ltdVcvZWtnb2ZCSm9RSTBM?= =?utf-8?B?dDBrdFRzK3pvOVpFTWt5SlVZTU5ZeGtHUU15eTkxRzNPZllYbzQ2VjJFY1lH?= =?utf-8?B?blRXMHhHSXRyelhqdVIySEd1ZFhKd1pvSjB6TXRXMmxZTEtrdGxIV002ekNR?= =?utf-8?B?NVJNclk0bldOcCtDRm5WOEkxN2Fsd0JGeURjc2Rab1RhZW15UEpCQzhYUWFE?= =?utf-8?B?aTJjZHBmYjBHNVFJdm9YY295U3B0TGRENHY5N1VKZ2N0S2w3dzlPdnVxOFVa?= =?utf-8?B?VFp1UVdldGVrWGN1NkZhQkFkNDQzdTA4T2VzVHRQOEhZTnluQWRGQkFpNW0z?= =?utf-8?B?dEs2Lzd6WDMyeDEycWtkb29mRFl0amNHQ29YVVg5N2lnN1A4dUpxSVVZSEVW?= =?utf-8?B?MytBM3pueEVISi85R3FYaUNZdGpmVHptV280YXkvVVZqYURrL3pNcTBLRllm?= =?utf-8?B?elluMDQyY2k1cS92ZWQ5cnpCSnFwRUx3YzI0RGJFUEdBSFNuWUtrUXVzR0FS?= =?utf-8?B?eUVFelUzcW8rSkJrUkxGbjYwSUZldHZYNGx2dHJGWmNpVTJDdFMxVGhZVHk4?= =?utf-8?B?QkI1dlZSbVNRdzBuL0x0N094VEZaQUQzdGhhdFdYRURFWWpscE9CeEZhRlI2?= =?utf-8?B?SFYrUzNiRkpKaXBXNG54VXhjYi9LY0hyak9PaUNVRCtyaGw1Y3VXZFNITm5Z?= =?utf-8?B?NjBNMVMxY0FpeitxeFpOaktPMmVtUjk0L0xBdjk3bE10dG05TjVnOGRTaFRn?= =?utf-8?B?NnFNU3VRM0pNRU5oYXFORU5XcWJQMldkZlU3cy9senhzMytwR09QTVR5Umw5?= =?utf-8?B?VnUxbzFBakdNeXpzZmoybG5ka3RGT1JQVDR4Z2F5Y25zeG9QSkx2NnhTUlE1?= =?utf-8?B?L2tCRTlBMXpkVE5ueUV2M2NWNExGQ2QrNTRiY1hxTjN0ZnBVT29PenFGeWJq?= =?utf-8?B?RlRycnBwbDQrWjFEb2VQR1BHeWhzSnZLWFpWdDE1dVdiWHdxbXVhUXhZYXZw?= =?utf-8?B?eDRNQmRzWFIyZjNSNG80ekROUzFCSnM0eDBESFhlMHVRc0d4TlFqVG5vNGRB?= =?utf-8?B?ODZ1V250R0VhelNOcFFyT21WVm9yN3lzMlY2L2RqcHJzZy9sRHltK2lRaS9s?= =?utf-8?Q?WN8WTXfhqWh7XJcZvCOSYCLn1?= X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-Network-Message-Id: 09dbbf1b-9ff1-4532-2f04-08db630334c5 X-MS-Exchange-CrossTenant-AuthSource: MW3PR12MB4409.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Jun 2023 00:49:22.7272 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: bAxwsdEoNgbojNbWbjWQfCPAAvURoz5sSSwb4v0bbCIbYRPro9rCW4G73Lsod91gbeo8Kl3w/sB1DFQonOtC5w== X-MS-Exchange-Transport-CrossTenantHeadersStamped: CYYPR12MB8853 Hi Michal, On 5/10/23 3:18 AM, Michal Orzel wrote: > > On 03/05/2023 01:36, Vikram Garhwal wrote: >> Update sysctl XEN_SYSCTL_dt_overlay to enable support for dtbo nodes addition >> using device tree overlay. >> >> xl dt-overlay add file.dtbo: >> Each time overlay nodes are added using .dtbo, a new fdt(memcpy of >> device_tree_flattened) is created and updated with overlay nodes. This >> updated fdt is further unflattened to a dt_host_new. Next, it checks if any >> of the overlay nodes already exists in the dt_host. If overlay nodes doesn't >> exist then find the overlay nodes in dt_host_new, find the overlay node's >> parent in dt_host and add the nodes as child under their parent in the >> dt_host. The node is attached as the last node under target parent. >> >> Finally, add IRQs, add device to IOMMUs, set permissions and map MMIO for the >> overlay node. >> >> When a node is added using overlay, a new entry is allocated in the >> overlay_track to keep the track of memory allocation due to addition of overlay >> node. This is helpful for freeing the memory allocated when a device tree node >> is removed. >> >> The main purpose of this to address first part of dynamic programming i.e. >> making xen aware of new device tree node which means updating the dt_host with >> overlay node information. Here we are adding/removing node from dt_host, and >> checking/setting IOMMU and IRQ permission but never mapping them to any domain. >> Right now, mapping/Un-mapping will happen only when a new domU is >> created/destroyed using "xl create". >> >> Signed-off-by: Vikram Garhwal >> --- >> xen/common/dt-overlay.c | 510 ++++++++++++++++++++++++++++++++++++++++ >> 1 file changed, 510 insertions(+) >> >> diff --git a/xen/common/dt-overlay.c b/xen/common/dt-overlay.c >> index b89cceab84..09ea46111b 100644 >> --- a/xen/common/dt-overlay.c >> +++ b/xen/common/dt-overlay.c >> @@ -33,6 +33,25 @@ static struct dt_device_node * >> return child_node; >> } >> >> +/* >> + * Returns next node to the input node. If node has children then return >> + * last descendant's next node. >> +*/ >> +static struct dt_device_node * >> +dt_find_next_node(struct dt_device_node *dt, const struct dt_device_node *node) >> +{ >> + struct dt_device_node *np; >> + >> + dt_for_each_device_node(dt, np) >> + if ( np == node ) >> + break; >> + >> + if ( np->child ) >> + np = find_last_descendants_node(np); >> + >> + return np->allnext; >> +} >> + >> static int dt_overlay_remove_node(struct dt_device_node *device_node) >> { >> struct dt_device_node *np; >> @@ -106,6 +125,76 @@ static int dt_overlay_remove_node(struct dt_device_node *device_node) >> return 0; >> } >> >> +static int dt_overlay_add_node(struct dt_device_node *device_node, >> + const char *parent_node_path) >> +{ >> + struct dt_device_node *parent_node; >> + struct dt_device_node *next_node; >> + >> + parent_node = dt_find_node_by_path(parent_node_path); >> + >> + if ( parent_node == NULL ) >> + { >> + dt_dprintk("Parent node %s not found. Overlay node will not be added\n", >> + parent_node_path); >> + return -EINVAL; >> + } >> + >> + /* If parent has no child. */ >> + if ( parent_node->child == NULL ) >> + { >> + next_node = parent_node->allnext; >> + device_node->parent = parent_node; >> + parent_node->allnext = device_node; >> + parent_node->child = device_node; >> + } >> + else >> + { >> + struct dt_device_node *np; >> + /* If parent has at least one child node. > incorrect comment style, should be: > /* > * > */ Changed this in v7. > >> + * Iterate to the last child node of parent. >> + */ >> + for ( np = parent_node->child; np->sibling != NULL; np = np->sibling ); >> + >> + /* Iterate over all child nodes of np node. */ >> + if ( np->child ) >> + { >> + struct dt_device_node *np_last_descendant; >> + >> + np_last_descendant = find_last_descendants_node(np); >> + >> + next_node = np_last_descendant->allnext; >> + np_last_descendant->allnext = device_node; >> + } >> + else >> + { >> + next_node = np->allnext; >> + np->allnext = device_node; >> + } >> + >> + device_node->parent = parent_node; >> + np->sibling = device_node; >> + np->sibling->sibling = NULL; >> + } >> + >> + /* Iterate over all child nodes of device_node to add children too. */ >> + if ( device_node->child ) >> + { >> + struct dt_device_node *device_node_last_descendant; >> + >> + device_node_last_descendant = find_last_descendants_node(device_node); > empty line > >> + /* Plug next_node at the end of last children of device_node. */ >> + device_node_last_descendant->allnext = next_node; >> + } >> + else >> + { >> + /* Now plug next_node at the end of device_node. */ >> + device_node->allnext = next_node; >> + } >> + >> + return 0; >> +} >> + >> /* Basic sanity check for the dtbo tool stack provided to Xen. */ >> static int check_overlay_fdt(const void *overlay_fdt, uint32_t overlay_fdt_size) >> { >> @@ -145,6 +234,82 @@ static unsigned int overlay_node_count(const void *overlay_fdt) >> return num_overlay_nodes; >> } >> >> +/* >> + * overlay_get_nodes_info gets full name with path for all the nodes which >> + * are in one level of __overlay__ tag. This is useful when checking node for >> + * duplication i.e. dtbo tries to add nodes which already exists in device tree. >> + */ >> +static int overlay_get_nodes_info(const void *fdto, char ***nodes_full_path, >> + unsigned int num_overlay_nodes) >> +{ >> + int fragment; >> + >> + *nodes_full_path = xzalloc_bytes(num_overlay_nodes * sizeof(char *)); > You are not freeing memory in this function in case of an error and rely on a caller > to free the memory allocated by this function. Wouldn't it be better to allocate this > from handle_add_overlay_nodes()? Changed this in v7. > >> + >> + if ( *nodes_full_path == NULL ) >> + return -ENOMEM; >> + >> + fdt_for_each_subnode(fragment, fdto, 0) >> + { >> + int target; >> + int overlay; >> + int subnode; >> + const char *target_path; >> + >> + target = fdt_overlay_target_offset(device_tree_flattened, fdto, >> + fragment, &target_path); >> + if ( target < 0 ) >> + return target; >> + >> + if ( target_path == NULL ) >> + return -EINVAL; >> + >> + overlay = fdt_subnode_offset(fdto, fragment, "__overlay__"); >> + >> + /* >> + * overlay value can be < 0. But fdt_for_each_subnode() loop checks for >> + * overlay >= 0. So, no need for a overlay>=0 check here. >> + */ >> + fdt_for_each_subnode(subnode, fdto, overlay) >> + { >> + const char *node_name = NULL; >> + int node_name_len; >> + unsigned int target_path_len = strlen(target_path); >> + unsigned int node_full_name_len; >> + unsigned int node_num = 0; > How this is supposed to work given that on each iteration you are setting this to 0 > and at the end of the iteration you increment it? It will then always be 0. Yeah, this will work only for one node. I moved it here because of a comment in v4 but it's wrong. Corrected it now. Thanks for catching this! >> + >> + node_name = fdt_get_name(fdto, subnode, &node_name_len); >> + >> + if ( node_name == NULL ) >> + return node_name_len; >> + >> + /* >> + * Magic number 2 is for adding '/' and '\0'. This is done to keep >> + * the node_full_path in the correct full node name format. >> + */ >> + node_full_name_len = target_path_len + node_name_len + 2; >> + >> + (*nodes_full_path)[node_num] = xmalloc_bytes(node_full_name_len); >> + >> + if ( (*nodes_full_path)[node_num] == NULL ) >> + return -ENOMEM; >> + >> + memcpy((*nodes_full_path)[node_num], target_path, target_path_len); >> + >> + (*nodes_full_path)[node_num][target_path_len] = '/'; >> + >> + memcpy((*nodes_full_path)[node_num] + target_path_len + 1, >> + node_name, node_name_len); >> + >> + (*nodes_full_path)[node_num][node_full_name_len - 1] = '\0'; >> + >> + node_num++; >> + } >> + } >> + >> + return 0; >> +} >> + >> static int handle_remove_irq_iommu(struct dt_device_node *device_node) >> { >> int rc = 0; >> @@ -371,6 +536,344 @@ out: >> return rc; >> } >> >> +/* >> + * Handles IRQ and IOMMU mapping for the overlay_node and all descendants of the >> + * overlay_node. >> + */ >> +static int handle_add_irq_iommu(struct domain *d, > If you only allow adding nodes to hwdom, what's the point of this parameter? > This is not consitent with function that does removing. Remove domain *d part for this series. This was something added for assigning the node to a running domain but while splitting  the series into two part(check 00/19 patch) i didn't remove it. Removed it in all the places. > >> + struct dt_device_node *overlay_node) >> +{ >> + int rc; >> + unsigned int naddr, i, len; >> + struct dt_device_node *np; >> + >> + /* First let's handle the interrupts. */ >> + rc = handle_device_interrupts(d, overlay_node, false); > Similarily to your comment about skip_mapping, it would be welcome to explain why false here. Done! > >> + if ( rc < 0 ) >> + { >> + printk(XENLOG_ERR "Failed to retrieve interrupts configuration\n"); >> + return rc; >> + } >> + >> + /* Check if iommu property exists. */ >> + if ( dt_get_property(overlay_node, "iommus", &len) ) >> + { >> + /* Add device to IOMMUs. */ >> + rc = iommu_add_dt_device(overlay_node); >> + if ( rc < 0 ) >> + { >> + printk(XENLOG_ERR "Failed to add %s to the IOMMU\n", >> + dt_node_full_name(overlay_node)); >> + return rc; >> + } >> + } >> + >> + /* Set permissions. */ >> + naddr = dt_number_of_address(overlay_node); >> + >> + dt_dprintk("%s naddr = %u\n", dt_node_full_name(overlay_node), naddr); >> + >> + /* Give permission to map MMIOs */ >> + for ( i = 0; i < naddr; i++ ) >> + { >> + uint64_t addr, size; > Make sure to check Ayan's 32-bit paddr series status as it impacts parts of your code. So, In staging, I cannot see any change for dt_device_get_address() which we using in these patches. That function still uses uint64_t addr instead of paddr_t. Did i misread your comment? > >> + >> + /* >> + * For now, we skip_mapping which means it will only permit iomem access >> + * to hardware_domain using iomem_permit_access() but will never map as >> + * map_range_p2mt() will not be called. >> + */ >> + struct map_range_data mr_data = { .d = d, >> + .p2mt = p2m_mmio_direct_c, >> + .skip_mapping = true >> + }; >> + >> + rc = dt_device_get_address(overlay_node, i, &addr, &size); >> + if ( rc ) >> + { >> + printk(XENLOG_ERR "Unable to retrieve address %u for %s\n", >> + i, dt_node_full_name(overlay_node)); >> + return rc; >> + } >> + >> + rc = map_range_to_domain(overlay_node, addr, size, &mr_data); >> + if ( rc ) >> + return rc; >> + } >> + >> + /* Map IRQ and IOMMU for overlay_node's children. */ >> + for ( np = overlay_node->child; np != NULL; np = np->sibling ) >> + { >> + rc = handle_add_irq_iommu(d, np); >> + if ( rc ) >> + { >> + printk(XENLOG_ERR "Adding IRQ and IOMMU failed\n"); >> + return rc; >> + } >> + } >> + >> + return rc; >> +} >> + >> +/* >> + * Adds device tree nodes under target node. >> + * We use tr->dt_host_new to unflatten the updated device_tree_flattened. This >> + * is done to avoid the removal of device_tree generation, iomem regions mapping >> + * to hardware domain done by handle_node(). >> + */ >> +static long handle_add_overlay_nodes(void *overlay_fdt, >> + uint32_t overlay_fdt_size) >> +{ >> + int rc, j, i; >> + struct dt_device_node *overlay_node; >> + struct overlay_track *tr = NULL; >> + char **nodes_full_path = NULL; >> + unsigned int new_fdt_size; >> + >> + tr = xzalloc(struct overlay_track); >> + if ( tr == NULL ) >> + return -ENOMEM; >> + >> + new_fdt_size = fdt_totalsize(device_tree_flattened) + >> + fdt_totalsize(overlay_fdt); >> + >> + tr->fdt = xzalloc_bytes(new_fdt_size); >> + if ( tr->fdt == NULL ) >> + { >> + xfree(tr); >> + return -ENOMEM; >> + } >> + >> + tr->num_nodes = overlay_node_count(overlay_fdt); >> + if ( tr->num_nodes == 0 ) >> + { >> + xfree(tr->fdt); >> + xfree(tr); >> + return -ENOMEM; >> + } >> + >> + tr->nodes_address = xzalloc_bytes(tr->num_nodes * sizeof(unsigned long)); >> + if ( tr->nodes_address == NULL ) >> + { >> + xfree(tr->fdt); >> + xfree(tr); >> + return -ENOMEM; >> + } >> + >> + rc = check_overlay_fdt(overlay_fdt, overlay_fdt_size); >> + if ( rc ) >> + { >> + xfree(tr->nodes_address); >> + xfree(tr->fdt); >> + xfree(tr); >> + return rc; >> + } >> + >> + /* >> + * Keep a copy of overlay_fdt as fdt_overlay_apply will change the input >> + * overlay's content(magic) when applying overlay. >> + */ >> + tr->overlay_fdt = xzalloc_bytes(overlay_fdt_size); >> + if ( tr->overlay_fdt == NULL ) >> + { >> + xfree(tr->nodes_address); >> + xfree(tr->fdt); >> + xfree(tr); >> + return -ENOMEM; >> + } >> + >> + memcpy(tr->overlay_fdt, overlay_fdt, overlay_fdt_size); >> + >> + spin_lock(&overlay_lock); >> + >> + memcpy(tr->fdt, device_tree_flattened, >> + fdt_totalsize(device_tree_flattened)); >> + >> + /* Open tr->fdt with more space to accommodate the overlay_fdt. */ >> + rc = fdt_open_into(tr->fdt, tr->fdt, new_fdt_size); >> + if ( rc ) >> + { >> + printk(XENLOG_ERR "Increasing tr->fdt size failed with error %d\n", > User does not know what tr->fdt is and it's better to be more user friendly. Done > >> + rc); >> + goto err; >> + } >> + >> + /* >> + * overlay_get_nodes_info is called to get the node information from dtbo. >> + * This is done before fdt_overlay_apply() because the overlay apply will >> + * erase the magic of overlay_fdt. >> + */ >> + rc = overlay_get_nodes_info(overlay_fdt, &nodes_full_path, >> + tr->num_nodes); >> + if ( rc ) >> + { >> + printk(XENLOG_ERR "Getting nodes information failed with error %d\n", >> + rc); >> + goto err; >> + } >> + >> + rc = fdt_overlay_apply(tr->fdt, overlay_fdt); >> + if ( rc ) >> + { >> + printk(XENLOG_ERR "Adding overlay node failed with error %d\n", rc); >> + goto err; >> + } >> + >> + /* >> + * Check if any of the node already exists in dt_host. If node already exits >> + * we can return here as this overlay_fdt is not suitable for overlay ops. >> + */ >> + for ( j = 0; j < tr->num_nodes; j++ ) >> + { >> + overlay_node = dt_find_node_by_path(nodes_full_path[j]); >> + if ( overlay_node != NULL ) >> + { >> + printk(XENLOG_ERR "node %s exists in device tree\n", >> + nodes_full_path[j]); >> + rc = -EINVAL; >> + goto err; >> + } >> + } >> + >> + /* Unflatten the tr->fdt into a new dt_host. */ >> + rc = unflatten_device_tree(tr->fdt, &tr->dt_host_new); >> + if ( rc ) >> + { >> + printk(XENLOG_ERR "unflatten_device_tree failed with error %d\n", rc); >> + goto err; >> + } >> + >> + for ( j = 0; j < tr->num_nodes; j++ ) >> + { >> + struct dt_device_node *prev_node, *next_node; >> + >> + dt_dprintk("Adding node: %s\n", nodes_full_path[j]); >> + >> + /* Find the newly added node in tr->dt_host_new by it's full path. */ >> + overlay_node = device_tree_find_node_by_path(tr->dt_host_new, >> + nodes_full_path[j]); >> + if ( overlay_node == NULL ) >> + { >> + /* Sanity check. But code will never come here. */ >> + ASSERT_UNREACHABLE(); >> + goto remove_node; >> + } >> + >> + /* >> + * Find previous and next node to overlay_node in dt_host_new. We will >> + * need these nodes to fix the dt_host_new mapping. When overlay_node is >> + * take out of dt_host_new tree and added to dt_host, link between >> + * previous node and next_node is broken. We will need to refresh >> + * dt_host_new with correct linking for any other overlay nodes >> + * extraction in future. >> + */ >> + dt_for_each_device_node(tr->dt_host_new, prev_node) >> + if ( prev_node->allnext == overlay_node ) >> + break; >> + >> + next_node = dt_find_next_node(tr->dt_host_new, overlay_node); >> + >> + read_lock(&dt_host->lock); >> + >> + /* Add the node to dt_host. */ >> + rc = dt_overlay_add_node(overlay_node, overlay_node->parent->full_name); >> + if ( rc ) >> + { >> + read_unlock(&dt_host->lock); >> + >> + /* Node not added in dt_host. */ >> + goto remove_node; >> + } >> + >> + read_unlock(&dt_host->lock); >> + >> + prev_node->allnext = next_node; >> + >> + overlay_node = dt_find_node_by_path(overlay_node->full_name); >> + if ( overlay_node == NULL ) >> + { >> + /* Sanity check. But code will never come here. */ >> + ASSERT_UNREACHABLE(); >> + goto remove_node; >> + } >> + >> + rc = handle_add_irq_iommu(hardware_domain, overlay_node); >> + if ( rc ) >> + { >> + printk(XENLOG_ERR "Adding IRQ and IOMMU failed\n"); >> + return rc; > This is definitely wrong as you will return with spinlock held and memory not freed. Fixed it.  And also split this function into two parts for better read > >> + } >> + >> + /* Keep overlay_node address in tracker. */ >> + tr->nodes_address[j] = (unsigned long)overlay_node; >> + } >> + >> + INIT_LIST_HEAD(&tr->entry); >> + list_add_tail(&tr->entry, &overlay_tracker); >> + >> + spin_unlock(&overlay_lock); >> + >> + if ( nodes_full_path != NULL ) >> + { >> + for ( i = 0; i < tr->num_nodes && nodes_full_path[i] != NULL; >> + i++ ) >> + { >> + xfree(nodes_full_path[i]); >> + } >> + xfree(nodes_full_path); >> + } > This block of code is identical to the one at the end so some cleanup is necessary. Created a common function for this as this will happen in three places. I missed freeing memory in remove_node failure cases. > >> + >> + return rc; >> + >> +/* >> + * Failure case. We need to remove the nodes, free tracker(if tr exists) and >> + * tr->dt_host_new. >> + */ >> +remove_node: >> + tr->num_nodes = j; >> + rc = remove_nodes(tr); >> + >> + if ( rc ) >> + { >> + /* >> + * User needs to provide right overlay. Incorrect node information >> + * example parent node doesn't exist in dt_host etc can cause memory >> + * leaks as removing_nodes() will fail and this means nodes memory is >> + * not freed from tracker. Which may cause memory leaks. Ideally, these >> + * device tree related mistakes will be caught by fdt_overlay_apply() >> + * but given that we don't manage that code keeping this warning message >> + * is better here. >> + */ >> + printk(XENLOG_ERR "Removing node failed.\n"); >> + spin_unlock(&overlay_lock); >> + return rc; >> + } >> + >> +err: >> + spin_unlock(&overlay_lock); >> + >> + if ( tr->dt_host_new ) >> + xfree(tr->dt_host_new); >> + >> + xfree(tr->overlay_fdt); >> + xfree(tr->nodes_address); >> + xfree(tr->fdt); >> + >> + if ( nodes_full_path != NULL ) >> + { >> + for ( i = 0; i < tr->num_nodes && nodes_full_path[i] != NULL; >> + i++ ) >> + { >> + xfree(nodes_full_path[i]); >> + } >> + xfree(nodes_full_path); >> + } >> + >> + xfree(tr); >> + >> + return rc; >> +} >> + >> long dt_sysctl(struct xen_sysctl_dt_overlay *op) >> { >> long ret; >> @@ -395,6 +898,13 @@ long dt_sysctl(struct xen_sysctl_dt_overlay *op) >> >> switch ( op->overlay_op ) >> { >> + case XEN_SYSCTL_DT_OVERLAY_ADD: >> + ret = handle_add_overlay_nodes(overlay_fdt, op->overlay_fdt_size); >> + if ( ret ) >> + xfree(overlay_fdt); > See my comment about xfree in previous patch  I am sending v7 with fix for 15/19 patches also. Please review that. > >> + >> + break; >> + >> case XEN_SYSCTL_DT_OVERLAY_REMOVE: >> ret = handle_remove_overlay_nodes(overlay_fdt, op->overlay_fdt_size); >> xfree(overlay_fdt); > ~Michal From xen-devel-bounces@lists.xenproject.org Fri Jun 02 01:05:10 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 02 Jun 2023 01:05:10 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542883.847283 (Exim 4.92) (envelope-from ) id 1q4tDr-0007Jb-1T; Fri, 02 Jun 2023 01:04:55 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542883.847283; Fri, 02 Jun 2023 01:04:55 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4tDq-0007JU-Sr; Fri, 02 Jun 2023 01:04:54 +0000 Received: by outflank-mailman (input) for mailman id 542883; Fri, 02 Jun 2023 01:04:54 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4tDq-0007JK-Bm; Fri, 02 Jun 2023 01:04:54 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4tDq-0002ZA-7X; Fri, 02 Jun 2023 01:04:54 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4tDp-0001JI-Ok; Fri, 02 Jun 2023 01:04:53 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q4tDp-0006av-OK; Fri, 02 Jun 2023 01:04:53 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=Y9exbyVU6IO35ktK2C52PRW/+7OkEtXT94w8mmA7U1A=; b=WijXglj3jc5r2aw6DQq3XMp8D/ yWkva9FqPMn3JvB/nSJ+AWPcKQkflt9IBlrRQD3J3QMeukmeAE2bWwe/JosijuLGFfYHxzopOej8U T9/PfcFxhnKoZ/fpvcKH0oh3yRKZahUwreg78+zY4Wpvf3gpLCnAL8SCzg8yi4vbFyzg=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable-smoke test] 181093: tolerable all pass - PUSHED X-Osstest-Failures: xen-unstable-smoke:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking xen-unstable-smoke:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking xen-unstable-smoke:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking xen-unstable-smoke:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking xen-unstable-smoke:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: xen=71226054f28ad98ab214b56a15899e8f62a7bca8 X-Osstest-Versions-That: xen=59d0bf62861f5c9b317ccf89f8b5c8b4d19927ad From: osstest service owner Date: Fri, 02 Jun 2023 01:04:53 +0000 flight 181093 xen-unstable-smoke real [real] http://logs.test-lab.xenproject.org/osstest/logs/181093/ Failures :-/ but no regressions. Tests which did not succeed, but are not blocking: test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-armhf-armhf-xl 15 migrate-support-check fail never pass test-armhf-armhf-xl 16 saverestore-support-check fail never pass version targeted for testing: xen 71226054f28ad98ab214b56a15899e8f62a7bca8 baseline version: xen 59d0bf62861f5c9b317ccf89f8b5c8b4d19927ad Last test of basis 181074 2023-06-01 10:00:27 Z 0 days Testing same since 181093 2023-06-01 21:00:28 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Andrew Cooper jobs: build-arm64-xsm pass build-amd64 pass build-armhf pass build-amd64-libvirt pass test-armhf-armhf-xl pass test-arm64-arm64-xl-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-libvirt pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Pushing revision : To xenbits.xen.org:/home/xen/git/xen.git 59d0bf6286..71226054f2 71226054f28ad98ab214b56a15899e8f62a7bca8 -> smoke From xen-devel-bounces@lists.xenproject.org Fri Jun 02 01:44:31 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 02 Jun 2023 01:44:31 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542891.847298 (Exim 4.92) (envelope-from ) id 1q4tpq-0003FQ-Vi; Fri, 02 Jun 2023 01:44:10 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542891.847298; Fri, 02 Jun 2023 01:44:10 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4tpq-0003FI-Rb; Fri, 02 Jun 2023 01:44:10 +0000 Received: by outflank-mailman (input) for mailman id 542891; Fri, 02 Jun 2023 01:44:10 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4tpp-0003FC-T2 for xen-devel@lists.xenproject.org; Fri, 02 Jun 2023 01:44:10 +0000 Received: from EUR04-DB3-obe.outbound.protection.outlook.com (mail-db3eur04on061f.outbound.protection.outlook.com [2a01:111:f400:fe0c::61f]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id f6deed55-00e6-11ee-b231-6b7b168915f2; Fri, 02 Jun 2023 03:44:08 +0200 (CEST) Received: from DUZPR01CA0297.eurprd01.prod.exchangelabs.com (2603:10a6:10:4b7::8) by AS8PR08MB9742.eurprd08.prod.outlook.com (2603:10a6:20b:616::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6433.26; Fri, 2 Jun 2023 01:43:55 +0000 Received: from DBAEUR03FT047.eop-EUR03.prod.protection.outlook.com (2603:10a6:10:4b7:cafe::16) by DUZPR01CA0297.outlook.office365.com (2603:10a6:10:4b7::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.24 via Frontend Transport; Fri, 2 Jun 2023 01:43:55 +0000 Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by DBAEUR03FT047.mail.protection.outlook.com (100.127.143.25) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.22 via Frontend Transport; Fri, 2 Jun 2023 01:43:55 +0000 Received: ("Tessian outbound 3a01b65b5aad:v136"); Fri, 02 Jun 2023 01:43:55 +0000 Received: from e23f732a91cd.2 by 64aa7808-outbound-1.mta.getcheckrecipient.com id E64B3481-BCE8-4968-8D44-4259F3D7B628.1; Fri, 02 Jun 2023 01:43:44 +0000 Received: from EUR01-HE1-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id e23f732a91cd.2 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Fri, 02 Jun 2023 01:43:44 +0000 Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15) by AS2PR08MB9045.eurprd08.prod.outlook.com (2603:10a6:20b:5fd::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.23; Fri, 2 Jun 2023 01:43:41 +0000 Received: from AS8PR08MB7991.eurprd08.prod.outlook.com ([fe80::2db3:aa30:7be0:10a6]) by AS8PR08MB7991.eurprd08.prod.outlook.com ([fe80::2db3:aa30:7be0:10a6%4]) with mapi id 15.20.6455.020; Fri, 2 Jun 2023 01:43:41 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: f6deed55-00e6-11ee-b231-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=VqLQc7+XJQ+lNNW2giUUezIhMcr0SUd5NLayZ3mcbpM=; b=HXE9fxTGiXtF0mcKzk6of9zkjidZR3XCJ71dAjRXQa94ZoSZAj0X32CHjdREWRiobHkyCnVzCwtWjD9m4+pKJqFq6qeFzv4jSh4PINyavc7g/2kCBgMp7zAVaQpU0hqd1ORIpgWTXx6gZEJJoBPPnYx/Y+1mVzC6OZkHYJZf7Jk= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C X-CR-MTA-TID: 64aa7808 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=etDFiuZ2mVTU3mZhDfxWYUpbf7AF7KLeYqsllKvpT00IMTvO615rlkRnKqxukqKDBJaLMY+eIBJlTNqNhmnGaUsH01nP9BNa5OoYBevtMDG9TL4qudpiZjzqyBX8U9vk8ixCFEVrsrcUkAdmd++NJxKN4bW9dJQUj0w4d3VZ7qyo5vmrImFkQgG3jXMdO8xFNjacULh3xLY+BXUX5Gg8Wb/Rt5lHojuM0g/rWu/KiDrCTZoiwLmjBSdqkhf4IgRzfWqNF1CrU//iAZambZ8KXxj0IolBFXFgInLzjPpJgcnk8LKIPJoJ2gIJdpdVZyCMMTabBoteI9NAohtYjdzvxA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=VqLQc7+XJQ+lNNW2giUUezIhMcr0SUd5NLayZ3mcbpM=; b=JE8DeHxAB15QMmLQ8o/2i2dZ8wpMWHvA89l/NkktUaDGKuAzMiKk/SkZ64Fr0P2jnsC8pGoqdPzYX1cyzHVkEoYVWp3DABiuVFGl3ihjLVVhj+x/Q6ho0CO8JQLlgBMSF7mHFvOgJUYWoidGJkdy7BqIZNePF0UWDJky2EzO6kPnWVllh0TepcisuRloTao2pxb9Jl2+Hsi6oZjtBkwUkhoWTKeq3b0FPjRpo81Pnb0re8VV/TdwH3JPX+qVYnLShIe+NhxjctxEl84xtWz/F6Ywam0XxmWhohvHaAOvpjrwiI9o3TAbYFZn6zxgUqjQx0vuiqiegNK/VIi/5u+qUw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=VqLQc7+XJQ+lNNW2giUUezIhMcr0SUd5NLayZ3mcbpM=; b=HXE9fxTGiXtF0mcKzk6of9zkjidZR3XCJ71dAjRXQa94ZoSZAj0X32CHjdREWRiobHkyCnVzCwtWjD9m4+pKJqFq6qeFzv4jSh4PINyavc7g/2kCBgMp7zAVaQpU0hqd1ORIpgWTXx6gZEJJoBPPnYx/Y+1mVzC6OZkHYJZf7Jk= From: Henry Wang To: Vikram Garhwal , "xen-devel@lists.xenproject.org" CC: "michal.orzel@amd.com" , "sstabellini@kernel.org" , "jbeulich@suse.com" , Community Manager , Andrew Cooper , George Dunlap , Julien Grall , Wei Liu , Bertrand Marquis , Volodymyr Babchuk Subject: RE: [XEN][PATCH v7 05/19] xen/arm: Add CONFIG_OVERLAY_DTB Thread-Topic: [XEN][PATCH v7 05/19] xen/arm: Add CONFIG_OVERLAY_DTB Thread-Index: AQHZlOwO5+EbGXwbJkOX7UD3KKfC8q92vT8g Date: Fri, 2 Jun 2023 01:43:41 +0000 Message-ID: References: <20230602004824.20731-1-vikram.garhwal@amd.com> <20230602004824.20731-6-vikram.garhwal@amd.com> In-Reply-To: <20230602004824.20731-6-vikram.garhwal@amd.com> Accept-Language: zh-CN, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ts-tracking-id: F96DBBDA2093174E80BAC3FD285AA10F.0 x-checkrecipientchecked: true Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-traffictypediagnostic: AS8PR08MB7991:EE_|AS2PR08MB9045:EE_|DBAEUR03FT047:EE_|AS8PR08MB9742:EE_ X-MS-Office365-Filtering-Correlation-Id: d207650b-fb31-417c-bf55-08db630ad380 x-checkrecipientrouted: true nodisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: V26nZYCdV89sh5RjjQTwLrvN9X+OrZHecqMcK4gqw4dyVz3sqyFtx1QoIOKnPkOUtHuxK6igFX6C51VXkq1JeVguHrB/Ai4XUfl3I//zsZRFSrwacaWq2ZtDyCi2OoBxOTU+W9MuMuTR1qcBst3WRlbhwSmR1oK+UuTa5Sht1Plrot08xc66LrSImeiNf5NSApsr6UMnb7Bd6wnK2TsGgVGsVnhcmE+gZfhTdDUeigqPZfZPnoaFOOFhlS5wkWdksilOCKU7OsTSU4zAJUmZbUCAQzl+A5VSn/9SzgGdcdmubUbUJ+yB71RGVt5UQIlIR7shuHCNusmEVWk1F8bCBDA2UFYj7Pd1HlKCmt2N1C8J56AZa44AVehdmlMK3jcUjb/f8cv7xhVRe+3up+x5x0lkVukB1FAQpmapK/WjPldNAE8KPBj4N4341pdARBuk2JDig/kqV1rRjbAlmh4wr4eykX58jQiSK1/TLDJForFKbLJ1dRbpooJFHDNHrZ0pbmL9gBcV9htvd208qVY2tF05ac4vDWanNR0pcsbwrkn5mAVV6O8aDBa8VAlQd+F23OTiuf6ZNKh9QpT/POZmnhJSdchOvaHnEnNkIkucoqF7MDg1MpKMywu5rP84qeXc X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB7991.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(396003)(346002)(39860400002)(366004)(136003)(376002)(451199021)(122000001)(38100700002)(86362001)(38070700005)(33656002)(8936002)(76116006)(52536014)(8676002)(7416002)(26005)(6506007)(5660300002)(9686003)(55016003)(41300700001)(2906002)(186003)(4744005)(83380400001)(66556008)(7696005)(66446008)(66946007)(71200400001)(66476007)(316002)(110136005)(54906003)(478600001)(64756008)(4326008);DIR:OUT;SFP:1101; Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS2PR08MB9045 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: DBAEUR03FT047.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: dcdb2ae2-c570-4f39-7759-08db630acb5d X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: o2fnD3fcjhmQSwff0WpuNjMPt4zkAJGHa9o8wvAMJwJ54Q/pxRmzmLqlBcrxncEj8OUJWurnuiCLGQwpZmM3K0T8cufsOY5ZrpDwKcDN5dXiUHn1TFvzMl18D5XuGyjLB+ZfJXUz9M56zblVrZKAXxPqIkC4Ca0xXBYR/GV0R91hjTpVhB4hk2b4Mntz9gJPYUcYBonKYjKWXvbmiN//OoleVkGxD20EmBop5CdIL9hcx6EelkV41+t2iIYVKTdTn5tA35HFLcOZsX3TGmIKpTAf97PLEul9ABrsdVnuCsX4kAEiDVSxgaR5XLm/fR8crxIiE8pTzJDXRjKhPN9QlRB0gTgL8HmexaAmFp8VO7w9AoWZaUJiAV2jsG/sOebXNbCqvyO3jb/GYX95hRnrI41XnfQYI79ISYjpAF3KDH4LH80K7xf9BlU0sibF6/q9ndlo1UEwaP4qzMiLhG2ScMZ/L+w024tf8GzVH3BsCtzE768TUEs39kzRiCGAEIxKxnl5FnsyBd346qLmv3ZPzCYlcw8hd2uSfU18LZKASCsRZiqmI0GQ2rga6+CNDJj4V0lCpCGpVQDBc8Vpl5Rlzx9aoPCO8vAVQVeNel6h8oW4/FgiPVEoWcim26DXsKqAMGagJKfAGHVsip+c7V9JJhT5j05awploOnBB2RsLDCahpwqOQ6c2McT1aqRZBi5n4cukqePzsagKGyW1M/ZRdELCcqDc8FHspH8U5xpGUklilKidrgp5kGnV0/TlL+9M X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230028)(4636009)(346002)(396003)(376002)(39860400002)(136003)(451199021)(46966006)(40470700004)(36840700001)(40460700003)(6506007)(186003)(26005)(107886003)(9686003)(47076005)(36860700001)(41300700001)(83380400001)(4744005)(336012)(52536014)(316002)(2906002)(5660300002)(8936002)(8676002)(7696005)(54906003)(478600001)(70586007)(70206006)(110136005)(86362001)(55016003)(40480700001)(33656002)(4326008)(356005)(82740400003)(81166007)(82310400005);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Jun 2023 01:43:55.2153 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: d207650b-fb31-417c-bf55-08db630ad380 X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: DBAEUR03FT047.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR08MB9742 Hi Vikram, > -----Original Message----- > Subject: [XEN][PATCH v7 05/19] xen/arm: Add CONFIG_OVERLAY_DTB >=20 > Introduce a config option where the user can enable support for > adding/removing > device tree nodes using a device tree binary overlay. >=20 > Update SUPPORT.md and CHANGELOG.md to state the Device Tree Overlays > support for > Arm. >=20 > Signed-off-by: Vikram Garhwal Acked-by: Henry Wang # CHANGELOG Kind regards, Henry From xen-devel-bounces@lists.xenproject.org Fri Jun 02 01:53:14 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 02 Jun 2023 01:53:14 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542895.847308 (Exim 4.92) (envelope-from ) id 1q4tyX-0004jT-QA; Fri, 02 Jun 2023 01:53:09 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542895.847308; Fri, 02 Jun 2023 01:53:09 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4tyX-0004jM-N2; Fri, 02 Jun 2023 01:53:09 +0000 Received: by outflank-mailman (input) for mailman id 542895; Fri, 02 Jun 2023 01:53:08 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4tyW-0004jG-Tm for xen-devel@lists.xenproject.org; Fri, 02 Jun 2023 01:53:08 +0000 Received: from EUR01-VE1-obe.outbound.protection.outlook.com (mail-ve1eur01on060d.outbound.protection.outlook.com [2a01:111:f400:fe1f::60d]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 381e0b54-00e8-11ee-b231-6b7b168915f2; Fri, 02 Jun 2023 03:53:07 +0200 (CEST) Received: from DB6PR07CA0198.eurprd07.prod.outlook.com (2603:10a6:6:42::28) by DBAPR08MB5831.eurprd08.prod.outlook.com (2603:10a6:10:1a8::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.23; Fri, 2 Jun 2023 01:52:58 +0000 Received: from DBAEUR03FT040.eop-EUR03.prod.protection.outlook.com (2603:10a6:6:42:cafe::d8) by DB6PR07CA0198.outlook.office365.com (2603:10a6:6:42::28) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.10 via Frontend Transport; Fri, 2 Jun 2023 01:52:58 +0000 Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by DBAEUR03FT040.mail.protection.outlook.com (100.127.142.157) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.24 via Frontend Transport; Fri, 2 Jun 2023 01:52:58 +0000 Received: ("Tessian outbound 5bb4c51d5a1f:v136"); Fri, 02 Jun 2023 01:52:58 +0000 Received: from 6828480bf95f.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 317D623A-891D-4CD0-9CC0-1E933FA89A42.1; Fri, 02 Jun 2023 01:52:51 +0000 Received: from EUR01-HE1-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 6828480bf95f.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Fri, 02 Jun 2023 01:52:51 +0000 Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15) by PAVPR08MB9507.eurprd08.prod.outlook.com (2603:10a6:102:313::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.22; Fri, 2 Jun 2023 01:52:47 +0000 Received: from AS8PR08MB7991.eurprd08.prod.outlook.com ([fe80::2db3:aa30:7be0:10a6]) by AS8PR08MB7991.eurprd08.prod.outlook.com ([fe80::2db3:aa30:7be0:10a6%4]) with mapi id 15.20.6455.020; Fri, 2 Jun 2023 01:52:47 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 381e0b54-00e8-11ee-b231-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=K0NQxd+XEjJNS+8C5C/l9cvvYxaMlDQrPrSDsYlk538=; b=QWdkUgA4NH8qEpn53QuqHeTA8mIvz+e59OXR34DL2Iid6Iq6lLZCLVPNx7XCIB53RGNRuA11lymKFoXi/y/1jZVVPdRfNDKsHnU22owysjeqMttBn5GjJw7OTfwA6DVWL5dJjjoBMovQNfABAlzaB9tOc6gcZKONUA6pgrkXv/A= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C X-CR-MTA-TID: 64aa7808 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=KQWCNbo5svX3B5l4BppP9kOysnk/MLh1AVqJv36ifj/H724fruW4S/ivW1rRR+Cn9Y1DNVW9Zp4sbnCfa2x18EWT2x+kxs2qlMC/v/SqwmAfTCyrAaiXEczJPZhGRB2CMF+VBMHxquv+pVypoR37NqSm72CPC4v0BgukmTltZeFkt7v8wGWmrZUssj2LvW9HYU4+oLBcwsU3Ze022HNMDWdjcac0e/vf1c+hxPyvSbibw5Tih3ZWDXEkiga43RS287O7kfn/g/O5f/vhUX58/DON8DAbT1ZoIXAM/jFideXrLJGlJxtwFwlFPVzLWD8CadXFfXwrhNo9ToAHqDOzaQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=K0NQxd+XEjJNS+8C5C/l9cvvYxaMlDQrPrSDsYlk538=; b=YUT7KQRJACGoAwLn6F6CJIjobiJVBYyrP30Uq1OAn6q6KUQhJE6K363D/Y0Ohyxsvrmzt5bsj/EaQJNyAjGGr6GkV5VXwiLzCU64/+NeIvY3klyaYvcZV5z9Gs3LHA7DtiAyNI9XUIKNZFvpGmeSLsmW8G86R6j/VFMSlyV7Lskp9F6lF5Gc+YncUQUJMSHGiYoJcZ+flfI5TLLFLiE26gYt56D0I0s1MvY15BGrl2JM74CLKab1Fd1D5cqRSr9/QtJ7rVJbliqOYizSNQxJMq7RT5OE/KcxyBEZ/V9m0wI2fWYMnRCx693AUxoFAwWaVeLtXo/1ygevHInxg+R1+g== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=K0NQxd+XEjJNS+8C5C/l9cvvYxaMlDQrPrSDsYlk538=; b=QWdkUgA4NH8qEpn53QuqHeTA8mIvz+e59OXR34DL2Iid6Iq6lLZCLVPNx7XCIB53RGNRuA11lymKFoXi/y/1jZVVPdRfNDKsHnU22owysjeqMttBn5GjJw7OTfwA6DVWL5dJjjoBMovQNfABAlzaB9tOc6gcZKONUA6pgrkXv/A= From: Henry Wang To: Vikram Garhwal , "xen-devel@lists.xenproject.org" CC: "michal.orzel@amd.com" , "sstabellini@kernel.org" , "jbeulich@suse.com" , Julien Grall Subject: RE: [XEN][PATCH v7 08/19] xen/device-tree: Add device_tree_find_node_by_path() to find nodes in device tree Thread-Topic: [XEN][PATCH v7 08/19] xen/device-tree: Add device_tree_find_node_by_path() to find nodes in device tree Thread-Index: AQHZlOwR4Ipv6iy3bEahGOYsyZBxb692vxnQ Date: Fri, 2 Jun 2023 01:52:47 +0000 Message-ID: References: <20230602004824.20731-1-vikram.garhwal@amd.com> <20230602004824.20731-9-vikram.garhwal@amd.com> In-Reply-To: <20230602004824.20731-9-vikram.garhwal@amd.com> Accept-Language: zh-CN, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ts-tracking-id: 71651548EC30EE41BFB5C27F72EE5D50.0 x-checkrecipientchecked: true Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-traffictypediagnostic: AS8PR08MB7991:EE_|PAVPR08MB9507:EE_|DBAEUR03FT040:EE_|DBAPR08MB5831:EE_ X-MS-Office365-Filtering-Correlation-Id: aa69aaed-06ae-4b28-6e68-08db630c1729 x-checkrecipientrouted: true nodisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: 5olP8utBu08OMclmZ3I9WmHsxKd/W+/vTftfS1NfykbJMGXUoc8gQTE2KjhXQwPlTIJqwpHzzG17B2L85P/UtSalG5D2pcSVd/yESkQ5s/k1fnCZkPsQ9ahiELSZvH/rzepxQciu7RnO74E+q0Dj7Oax8EpzaL6AsZVamdTGODIX0twJhtwHzusOaF3bnJf9n5I6i1Z1N3pDYFauwUK9rViOo+aV/fz9tz+YGxxtS58jD3/9tj17Q0NDd5fN0AxfJtOs2QtqP2U1y3ZpZ/BIbe0aUdFMQwxDTHor2B/0uhVAAA0rCM4GQXaA1j1nbgFBZmVoZQb0KD4PzLUj5abIjWImq+wxKckcsbOhWkkdtMzXpta9+j2wGFl9ofdffK9XOA3UdSdv1qIM1/uDA7ZusnadyTsRKZlhpY3kJFpPTCFNN3azefBFKqlgmcMSGfTgxeQ/g1IeKnckClZLSIiHso4ZxgOfwCsMQk/TsDJRNF2hpZM2tJZNhOFwhYIzU7m4kM79MqR5zC9cH5fO4/gjELDt2FpVOtHS3JEz0V9HKbEYIoVaToB/hYLqTvMKwrsJAqaRgXYaf8gUcBPFMDKwEorfi/PzPo87GXqLxLIhHriZga+mDCuzYJKAUQbuqt8RBXpbaSJLLlXBe58zGr4rRA== X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB7991.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(396003)(136003)(366004)(376002)(39860400002)(346002)(451199021)(52536014)(54906003)(66556008)(71200400001)(110136005)(316002)(478600001)(4326008)(76116006)(66476007)(66446008)(66946007)(64756008)(9686003)(26005)(6506007)(8936002)(5660300002)(2906002)(41300700001)(8676002)(186003)(83380400001)(122000001)(38070700005)(38100700002)(7696005)(33656002)(55016003)(86362001)(37363002);DIR:OUT;SFP:1101; Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAVPR08MB9507 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: DBAEUR03FT040.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: 81a822dc-b7ef-4f66-8da0-08db630c10f5 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: UzkKbv57H+iHN83bzaVilpDYgPvzZrT1za667Dx3TPrdo7I3OwO2uXWIGh5bNKHyU7Selxvt7Xu3aHdnjxLJ94g2L/7AVwruXF99GX3TtfNtJ2nOm/dQriKraqUCx6NB7+CZiohZqBZdG8IGYjnh69/pQ8jsGgHOT+Zq1S+E6MAckry7Z0VL2MjfEmJcz853br+MbbnF2QFyEq7ZnRmR4iOulcgxl08yHUEIWNVRA8CsqGGiAc+sBAOwrDsZo5nS1L+W00Zl+k7eiA3roAP//aPHrf658MirgdwlxebYV/pZKBoL5TqaJrveEE6YdHD8EQQRO1eDee65akVnuLHz4qMKGl9saKPsqLw49wIeIdw2fO6K8jKoyFQzv/LlK7Od5Ad+dnRya5+RnKV3ZaOkr7o2IVAljh76cj9CLUyq/KxWhOUDnefvz/i6ffZ0wzeJvbzNUTRRvouWjBwUQInq5mHrJyDsWXCvavEETXx/+O15qAGOojRH4InApDopx6wwZhIXR6zmCy9z9GoumcZ5l6GwQ74XJZeWLwzloDZb4l/OMtSVsCPX2fG0psrqB7ymvSgYw+uzbLREkHYtlqIDxJUhH3NMDiqgVzbLhxIAftg826Q88xriC/Xykg3IbsGGlcpTAHJposhN60nyedCmYLJn9QSNJn18JEptAP7hwSaKDqvbnJ5l9y3emjzBhg6hDHGkQ+BRYqlPbkYNJdDqdvACDNumR7yG3CLJVR5DRtlE5tXEnnt4xHnDMR4lI/+bubkxKLHB1RCow2XBiBWCIg== X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230028)(4636009)(136003)(396003)(39860400002)(346002)(376002)(451199021)(46966006)(40470700004)(36840700001)(40480700001)(356005)(70586007)(70206006)(336012)(82740400003)(40460700003)(55016003)(26005)(6506007)(186003)(478600001)(9686003)(8936002)(33656002)(41300700001)(82310400005)(7696005)(8676002)(86362001)(2906002)(52536014)(5660300002)(81166007)(4326008)(316002)(83380400001)(36860700001)(110136005)(54906003)(47076005)(37363002);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Jun 2023 01:52:58.2249 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: aa69aaed-06ae-4b28-6e68-08db630c1729 X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: DBAEUR03FT040.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBAPR08MB5831 Hi Vikram, > -----Original Message----- > Subject: [XEN][PATCH v7 08/19] xen/device-tree: Add > device_tree_find_node_by_path() to find nodes in device tree >=20 > Add device_tree_find_node_by_path() to find a matching node with path for > a > dt_device_node. >=20 > Reason behind this function: > Each time overlay nodes are added using .dtbo, a new fdt(memcpy of > device_tree_flattened) is created and updated with overlay nodes. Thi= s > updated fdt is further unflattened to a dt_host_new. Next, we need to= find > the overlay nodes in dt_host_new, find the overlay node's parent in d= t_host > and add the nodes as child under their parent in the dt_host. Thus we= need > this function to search for node in different unflattened device tree= s. >=20 > Also, make dt_find_node_by_path() static inline. >=20 > Signed-off-by: Vikram Garhwal >=20 > --- > Changes from v6: > Rename "dt_node" to "from" > --- > xen/common/device_tree.c | 6 ++++-- > xen/include/xen/device_tree.h | 18 ++++++++++++++++-- > 2 files changed, 20 insertions(+), 4 deletions(-) >=20 > diff --git a/xen/common/device_tree.c b/xen/common/device_tree.c > index 16b4b4e946..c5250a1644 100644 > --- a/xen/common/device_tree.c > +++ b/xen/common/device_tree.c > @@ -358,11 +358,13 @@ struct dt_device_node > *dt_find_node_by_type(struct dt_device_node *from, > return np; > } >=20 > -struct dt_device_node *dt_find_node_by_path(const char *path) > +struct dt_device_node * > + device_tree_find_node_by_path(struct dt_device_node = *from, > + const char *path) NIT: I found that the indentation here is a bit strange to me. I personally= would write like: struct dt_device_node * device_tree_find_node_by_path(struct dt_device_node *from, char *path) [...] > -struct dt_device_node *dt_find_node_by_path(const char *path); > +struct dt_device_node * > + device_tree_find_node_by_path(struct dt_device_node = *from, > + const char *path); Same here. But anyway, the content of this patch looks good to me and I confirm you've addressed the comment of mine and Michal's in v6, so: Reviewed-by: Henry Wang Kind regards, Henry From xen-devel-bounces@lists.xenproject.org Fri Jun 02 01:58:51 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 02 Jun 2023 01:58:51 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542900.847318 (Exim 4.92) (envelope-from ) id 1q4u3t-0005PG-Hu; Fri, 02 Jun 2023 01:58:41 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542900.847318; Fri, 02 Jun 2023 01:58:41 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4u3t-0005P9-Eo; Fri, 02 Jun 2023 01:58:41 +0000 Received: by outflank-mailman (input) for mailman id 542900; Fri, 02 Jun 2023 01:58:40 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4u3s-0005P3-Er for xen-devel@lists.xenproject.org; Fri, 02 Jun 2023 01:58:40 +0000 Received: from EUR04-DB3-obe.outbound.protection.outlook.com (mail-db3eur04on0629.outbound.protection.outlook.com [2a01:111:f400:fe0c::629]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id fd94c0bd-00e8-11ee-b231-6b7b168915f2; Fri, 02 Jun 2023 03:58:38 +0200 (CEST) Received: from AM5PR0201CA0004.eurprd02.prod.outlook.com (2603:10a6:203:3d::14) by AS4PR08MB7653.eurprd08.prod.outlook.com (2603:10a6:20b:4cf::5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6433.26; Fri, 2 Jun 2023 01:58:35 +0000 Received: from AM7EUR03FT046.eop-EUR03.prod.protection.outlook.com (2603:10a6:203:3d:cafe::a4) by AM5PR0201CA0004.outlook.office365.com (2603:10a6:203:3d::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.23 via Frontend Transport; Fri, 2 Jun 2023 01:58:35 +0000 Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by AM7EUR03FT046.mail.protection.outlook.com (100.127.140.78) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.10 via Frontend Transport; Fri, 2 Jun 2023 01:58:35 +0000 Received: ("Tessian outbound 8b05220b4215:v136"); Fri, 02 Jun 2023 01:58:35 +0000 Received: from 7980f28d47d3.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 7A7A23AF-BD66-4B3A-80C7-4AE51976150D.1; Fri, 02 Jun 2023 01:58:28 +0000 Received: from EUR02-AM0-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 7980f28d47d3.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Fri, 02 Jun 2023 01:58:28 +0000 Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15) by AS2PR08MB8832.eurprd08.prod.outlook.com (2603:10a6:20b:5e6::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.23; Fri, 2 Jun 2023 01:58:26 +0000 Received: from AS8PR08MB7991.eurprd08.prod.outlook.com ([fe80::2db3:aa30:7be0:10a6]) by AS8PR08MB7991.eurprd08.prod.outlook.com ([fe80::2db3:aa30:7be0:10a6%4]) with mapi id 15.20.6455.020; Fri, 2 Jun 2023 01:58:26 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: fd94c0bd-00e8-11ee-b231-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=v6HTBq2BtnCXTO9LEis8hpg7lMj2+rcpyw1lBs0GN7I=; b=ygXelLs82LJDaU1A7zKnoiNG5IrTCA5cnuyMVfCO6oPWl8rSLBtlea8w/6FmPuQgJtPQ6hM8szIZsdR5qNa6WlP+/mcuyKmk9hmeO0Oqxpa6x7CxIFL+sbCpQmrmC32CbTVNYsL70B8jPtIQ+xsZqwTRvsygDrGUZeC2e636kgc= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C X-CR-MTA-TID: 64aa7808 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Ff5UF5Ggr95yP4h6iHogJxyKMFqr9vw8hxZ+4qBQfwP8+h7Bn6+qk1/xnPEYn1GKMvtfYU8t7AjlvPRYol/Vo/Pokh/49H3753tf5vgpxoZz3CTovvcOcMpWqFGoCrpw8uNNtuXKgbZVhWfg0392P6xm6HNXF0/t6WV7qa0u+7bp9nbgICcuk83pkm1pWPqBYDJquY071jKo7Ms0xtIBWs2qfuCII628gBZyzyeitv0cA689aJk5epvR84FQHvzJcXXf4/U7nR6KW4UWEFYwz159r0GiypeMgYNJzzku1VTWAPDA8lEbH3mdrohYvzusek4cktAvIXN/kg20Dg2C8A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=v6HTBq2BtnCXTO9LEis8hpg7lMj2+rcpyw1lBs0GN7I=; b=XktVANklJcKKHDVw5ioVMrfXu6nmhQ09XGQKoc3sFDc9AU6DABzzJ3jjQ0xYQyDOAWHS+okNACc7vWET9lqtG39NpcEjOHcEmfez7165KX/aPIKtQUCuIOSk3sNEyJK3L0qGEB9lpYaY5RT7vjjS5861WrGdXX3AxyXtSRar+FSM0u61C9wSO7nMl4m0r5sg7LgnocywsJojSqssydHKt9wAc2hZQtBYhEgN84Qp9RlQ5nqztMKZPupVFGHpJsLt3R4PnhpKiEqESVPEiLjFNG0NGMQ5ed1XM4KnRW/BqTWekdS0i0WkOb2oIfQ5K/GVA8XNO7D1fazpzMDVaEXaRA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=v6HTBq2BtnCXTO9LEis8hpg7lMj2+rcpyw1lBs0GN7I=; b=ygXelLs82LJDaU1A7zKnoiNG5IrTCA5cnuyMVfCO6oPWl8rSLBtlea8w/6FmPuQgJtPQ6hM8szIZsdR5qNa6WlP+/mcuyKmk9hmeO0Oqxpa6x7CxIFL+sbCpQmrmC32CbTVNYsL70B8jPtIQ+xsZqwTRvsygDrGUZeC2e636kgc= From: Henry Wang To: Vikram Garhwal , "xen-devel@lists.xenproject.org" CC: "michal.orzel@amd.com" , "sstabellini@kernel.org" , "jbeulich@suse.com" , Julien Grall Subject: RE: [XEN][PATCH v7 14/19] common/device_tree: Add rwlock for dt_host Thread-Topic: [XEN][PATCH v7 14/19] common/device_tree: Add rwlock for dt_host Thread-Index: AQHZlOwaX4LVBFA07UiCkT/feXB9lq92wX/Q Date: Fri, 2 Jun 2023 01:58:25 +0000 Message-ID: References: <20230602004824.20731-1-vikram.garhwal@amd.com> <20230602004824.20731-15-vikram.garhwal@amd.com> In-Reply-To: <20230602004824.20731-15-vikram.garhwal@amd.com> Accept-Language: zh-CN, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ts-tracking-id: 0FC1BC7B3E393F4BA3AE2973372BE4F5.0 x-checkrecipientchecked: true Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-traffictypediagnostic: AS8PR08MB7991:EE_|AS2PR08MB8832:EE_|AM7EUR03FT046:EE_|AS4PR08MB7653:EE_ X-MS-Office365-Filtering-Correlation-Id: 7341cc02-9da6-406a-09b0-08db630ce023 x-checkrecipientrouted: true nodisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: xkICVglXSJTqOn49r2zGuAJdsw8XAzDcbIgNMDTb3OJEnUje5eKS9qWO5+skSQutRUt8MzVdnWhzeeHDOXG4V5kLlIc9y0SjQuIhBP4YPE+Qwc+ZjFLbAZrCgZiZTxenIMdP18PNjqACPeCVC+fLqcQATdpRW8bgxxB6mF71G9lvZHTHgb5BbWUMkssIRJmRjDdwSA82VBiSyj2AqEENY3kge6r0CIbUq/9u6Nx8IzWTT52sbRioRbRq6LdYNG+QqawDRuUTTWWVQ/c9VRHNx52JnvBIUMrNkAzsk5hFyC4lZUHwEdce+ZTAjkDr2i/wUb/QcC2JOalltv1WE5Gok7oLxHLRODCmRhxtjZFgQ60Hzsl1uOo0vX7og34GM+Vd/lsElHgDdxbR1lc7KMBqCKrN+ccECT71XSBvsOXssk9iCcRXEF1aM6YOsnP0GY0h1qCU6bw2J2qY9sjP+daXqysKCrIlr/HveiE8zkK3VOGzL51kN5RhTpkRnfPrDIwC6LJ5H75XwBYBvpyjZlCCaJhAtqkmoycfuAFcHpi74PjC2f7+f5Q3RZyI07HGF1Biyf5+ioBGnxiyXIt5XgnPKV/qTdQa3VqKL0rVBirCbqWFVemKdY02G12DKM1QV5ie X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB7991.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(396003)(366004)(376002)(136003)(346002)(39860400002)(451199021)(86362001)(110136005)(186003)(54906003)(71200400001)(478600001)(55016003)(7696005)(6506007)(9686003)(26005)(41300700001)(38100700002)(8676002)(8936002)(33656002)(83380400001)(316002)(2906002)(38070700005)(4744005)(52536014)(5660300002)(66476007)(64756008)(76116006)(66556008)(66446008)(66946007)(4326008)(122000001);DIR:OUT;SFP:1101; Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS2PR08MB8832 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: AM7EUR03FT046.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: ac05e5ad-f007-4813-4a7f-08db630cda86 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: OXSBxMTg+Ew9yJq7/vw5f8aJFdItn/apr73WrGKcF0JGFioxzMArHpYb/o91wmT+/tRQ1oaSvhLFV1TeNEwzD6YAcjvvtZhxyqzvbegHe/fKf9Mn7bKXvnq87+11I52ZCn4JEMvBUGcd2OxxYLxo/vWLQg/8A112vMQAtmU15Jki4oOMMA6m3aCskqWPC3p+ZSRhMPCS/LvCrUVM5bgFdMbznELIW7YeAXWR6i93bpVlLVZyWduGhkZGFdfBp9MRnXN4tjbukt+3HiD4Vgab0KOvCjVWeUzNlmIyQ1e1nSwrFIJ525H4Hi5iCw+D1TpLbw0ffQny5ojoXa1w7f59fwlQHggnRwpugSs+Uemrszyk8SoU+ivuYX2aUTRsTuSyRaCUDLjHrUCsr89ZKwRpOSzvO1fwz8xIb8yKfKB/xeHv0wvd5CQpCNJt5ZE0tmc+2V4XqGBx+sw9WrNaSy2OxhXQ/obNMEAufmsPIXlxAyKfwoikTQXj06EsmGPQpamtKR52c54fCHZJR/7VMIO00jFHfp5b4sGeV+qbWgZJqisKhOTdO7TxcMB3myGo/sKxHQB9XCNBokG/jTvMzLe3H60nxvpeO1rm9M1e8OKbsuIV2qANytjxNFA1DXPeZuYWP/Z3q3t+tHJVNuQm7E83bpm0Or7u3eOD4wXrBkhrjtVM6Id7s53aIqSOSsswjJaIs3Km/6K6RZ82DhSqVBjzsBlpAU7b7QtAHl9EKgnAV15Uwzs1hLVL9DMbPanvpuYe X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230028)(4636009)(346002)(396003)(376002)(39860400002)(136003)(451199021)(36840700001)(46966006)(40470700004)(82310400005)(47076005)(36860700001)(55016003)(83380400001)(40480700001)(336012)(82740400003)(4326008)(81166007)(356005)(41300700001)(316002)(33656002)(7696005)(6506007)(26005)(9686003)(70206006)(70586007)(52536014)(40460700003)(2906002)(4744005)(8676002)(8936002)(5660300002)(54906003)(110136005)(478600001)(86362001)(186003);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Jun 2023 01:58:35.3738 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 7341cc02-9da6-406a-09b0-08db630ce023 X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: AM7EUR03FT046.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS4PR08MB7653 Hi Vikram, > -----Original Message----- > Subject: [XEN][PATCH v7 14/19] common/device_tree: Add rwlock for dt_host >=20 > Dynamic programming ops will modify the dt_host and there might be other > function which are browsing the dt_host at the same time. To avoid the r= ace > conditions, adding rwlock for browsing the dt_host during runtime. >=20 > Reason behind adding rwlock instead of spinlock: > For now, dynamic programming is the sole modifier of dt_host in Xen > during > run time. All other access functions like iommu_release_dt_device= () are > just reading the dt_host during run-time. So, there is a need to = protect > others from browsing the dt_host while dynamic programming is > modifying > it. rwlock is better suitable for this task as spinlock won't be = able to > differentiate between read and write access. >=20 > Signed-off-by: Vikram Garhwal Reviewed-by: Henry Wang Kind regards, Henry From xen-devel-bounces@lists.xenproject.org Fri Jun 02 03:21:39 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 02 Jun 2023 03:21:39 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542906.847334 (Exim 4.92) (envelope-from ) id 1q4vLt-0006K5-HX; Fri, 02 Jun 2023 03:21:21 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542906.847334; Fri, 02 Jun 2023 03:21:21 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4vLt-0006Jy-Df; Fri, 02 Jun 2023 03:21:21 +0000 Received: by outflank-mailman (input) for mailman id 542906; Fri, 02 Jun 2023 03:21:19 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4vLr-0006Jo-8d; Fri, 02 Jun 2023 03:21:19 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4vLr-0006BZ-3D; Fri, 02 Jun 2023 03:21:19 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4vLq-0006zb-LS; Fri, 02 Jun 2023 03:21:18 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q4vLq-0007Dx-L0; Fri, 02 Jun 2023 03:21:18 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=YpskuBCaluVEDdo7VKQUkXvT7OBZ/XBHnJSXLIhtj5M=; b=w3jiDsJRDYQ4F6JApoplQaR1PN RFHZnpOWaaxs/jWtJJWFHXEIJvnU72DWPPQP45s7TpTA93hdQVULNwvqM9DmDjKGQNPm/VM4we0mI XBW/MH2jJnsGaNFKnLIUKlqkMX/M72IORzNJ03setNXhxjG1kYRE/JtdFlnj4E9Y3WgY=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [linux-linus test] 181082: regressions - FAIL X-Osstest-Failures: linux-linus:test-armhf-armhf-xl-credit1:xen-boot:fail:regression linux-linus:test-armhf-armhf-examine:reboot:fail:nonblocking linux-linus:test-armhf-armhf-xl-arndale:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking linux-linus:test-armhf-armhf-xl-credit2:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking linux-linus:test-armhf-armhf-xl-multivcpu:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-raw:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-qcow2:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-vhd:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-rtds:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-qcow2:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-raw:migrate-support-check:fail:nonblocking X-Osstest-Versions-This: linux=929ed21dfdb6ee94391db51c9eedb63314ef6847 X-Osstest-Versions-That: linux=6c538e1adbfc696ac4747fb10d63e704344f763d From: osstest service owner Date: Fri, 02 Jun 2023 03:21:18 +0000 flight 181082 linux-linus real [real] flight 181098 linux-linus real-retest [real] http://logs.test-lab.xenproject.org/osstest/logs/181082/ http://logs.test-lab.xenproject.org/osstest/logs/181098/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: test-armhf-armhf-xl-credit1 8 xen-boot fail REGR. vs. 180278 Tests which did not succeed, but are not blocking: test-armhf-armhf-examine 8 reboot fail like 180278 test-armhf-armhf-xl-arndale 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 180278 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 180278 test-armhf-armhf-xl-credit2 8 xen-boot fail like 180278 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 180278 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 180278 test-armhf-armhf-xl-multivcpu 8 xen-boot fail like 180278 test-armhf-armhf-libvirt-raw 8 xen-boot fail like 180278 test-armhf-armhf-libvirt 8 xen-boot fail like 180278 test-armhf-armhf-libvirt-qcow2 8 xen-boot fail like 180278 test-armhf-armhf-xl 8 xen-boot fail like 180278 test-armhf-armhf-xl-vhd 8 xen-boot fail like 180278 test-armhf-armhf-xl-rtds 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 180278 test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qcow2 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass test-amd64-amd64-libvirt-raw 14 migrate-support-check fail never pass version targeted for testing: linux 929ed21dfdb6ee94391db51c9eedb63314ef6847 baseline version: linux 6c538e1adbfc696ac4747fb10d63e704344f763d Last test of basis 180278 2023-04-16 19:41:46 Z 46 days Failing since 180281 2023-04-17 06:24:36 Z 45 days 86 attempts Testing same since 181063 2023-06-01 00:42:42 Z 1 days 2 attempts ------------------------------------------------------------ 2563 people touched revisions under test, not listing them all jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl fail test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-freebsd11-amd64 pass test-amd64-amd64-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale fail test-amd64-amd64-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 fail test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 fail test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine fail test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt fail test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu fail test-amd64-amd64-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-amd64-pygrub pass test-amd64-amd64-libvirt-qcow2 pass test-armhf-armhf-libvirt-qcow2 fail test-amd64-amd64-libvirt-raw pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw fail test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds fail test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-amd64-xl-vhd pass test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd fail ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 324490 lines long.) From xen-devel-bounces@lists.xenproject.org Fri Jun 02 04:38:58 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 02 Jun 2023 04:38:58 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542916.847350 (Exim 4.92) (envelope-from ) id 1q4wYo-0005Dm-5W; Fri, 02 Jun 2023 04:38:46 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542916.847350; Fri, 02 Jun 2023 04:38:46 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4wYo-0005Df-2l; Fri, 02 Jun 2023 04:38:46 +0000 Received: by outflank-mailman (input) for mailman id 542916; Fri, 02 Jun 2023 04:38:45 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4wYn-0005DV-3x; Fri, 02 Jun 2023 04:38:45 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4wYm-0007zR-MG; Fri, 02 Jun 2023 04:38:44 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4wYm-0000eD-CC; Fri, 02 Jun 2023 04:38:44 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q4wYm-0007Yv-Bh; Fri, 02 Jun 2023 04:38:44 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=dlu9znJ6EXxnBIb0WjTNT+thkaBReSDDrm2Gwm8VG/8=; b=sFj5kt8ATVgFLMEbrYV+FzTLWb fkATuDaP/cLZ0dvnhM8Gkw4O3KF1ww5nbFwSGJJuWd7hyvfoNYUekCYgNWCdMbf50U3hG4LB7Ntn2 YwZpnGlVSQkZUtUcs6A14FD1hFmm5ov0eZdA/TAyO+SN+F62MaOV8bxa26N35WZmFX/M=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [qemu-mainline test] 181089: regressions - FAIL X-Osstest-Failures: qemu-mainline:test-amd64-amd64-libvirt-pair:leak-check/check/src_host:fail:regression qemu-mainline:test-amd64-amd64-libvirt-pair:leak-check/check/dst_host:fail:regression qemu-mainline:test-amd64-i386-libvirt:leak-check/check:fail:regression qemu-mainline:test-amd64-amd64-libvirt-xsm:leak-check/check:fail:regression qemu-mainline:build-arm64-xsm:xen-build:fail:regression qemu-mainline:build-arm64:xen-build:fail:regression qemu-mainline:test-amd64-amd64-libvirt:leak-check/check:fail:regression qemu-mainline:test-amd64-i386-libvirt-xsm:leak-check/check:fail:regression qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:leak-check/check:fail:regression qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:leak-check/check:fail:regression qemu-mainline:test-amd64-i386-xl-vhd:leak-check/check:fail:regression qemu-mainline:test-amd64-i386-libvirt-raw:leak-check/check:fail:regression qemu-mainline:test-amd64-amd64-xl-qcow2:leak-check/check:fail:regression qemu-mainline:test-armhf-armhf-libvirt:leak-check/check:fail:regression qemu-mainline:test-armhf-armhf-libvirt-qcow2:leak-check/check:fail:regression qemu-mainline:test-armhf-armhf-libvirt-raw:leak-check/check:fail:regression qemu-mainline:test-armhf-armhf-xl-vhd:leak-check/check:fail:regression qemu-mainline:test-amd64-amd64-libvirt-vhd:leak-check/check:fail:regression qemu-mainline:test-amd64-i386-libvirt-pair:xen-install/dst_host:fail:heisenbug qemu-mainline:test-amd64-i386-libvirt-pair:xen-install/src_host:fail:heisenbug qemu-mainline:test-amd64-amd64-libvirt-vhd:guest-start/debian.repeat:fail:heisenbug qemu-mainline:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:build-arm64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking qemu-mainline:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking qemu-mainline:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking qemu-mainline:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking qemu-mainline:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking qemu-mainline:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking qemu-mainline:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking qemu-mainline:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking qemu-mainline:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking qemu-mainline:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: qemuu=c6a5fc2ac76c5ab709896ee1b0edd33685a67ed1 X-Osstest-Versions-That: qemuu=6972ef1440a9d685482d78672620a7482f2bd09a From: osstest service owner Date: Fri, 02 Jun 2023 04:38:44 +0000 flight 181089 qemu-mainline real [real] http://logs.test-lab.xenproject.org/osstest/logs/181089/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: test-amd64-amd64-libvirt-pair 30 leak-check/check/src_host fail REGR. vs. 180691 test-amd64-amd64-libvirt-pair 31 leak-check/check/dst_host fail REGR. vs. 180691 test-amd64-i386-libvirt 23 leak-check/check fail REGR. vs. 180691 test-amd64-amd64-libvirt-xsm 23 leak-check/check fail REGR. vs. 180691 build-arm64-xsm 6 xen-build fail REGR. vs. 180691 build-arm64 6 xen-build fail REGR. vs. 180691 test-amd64-amd64-libvirt 23 leak-check/check fail REGR. vs. 180691 test-amd64-i386-libvirt-xsm 23 leak-check/check fail REGR. vs. 180691 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 21 leak-check/check fail REGR. vs. 180691 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 21 leak-check/check fail REGR. vs. 180691 test-amd64-i386-xl-vhd 24 leak-check/check fail REGR. vs. 180691 test-amd64-i386-libvirt-raw 22 leak-check/check fail REGR. vs. 180691 test-amd64-amd64-xl-qcow2 24 leak-check/check fail REGR. vs. 180691 test-armhf-armhf-libvirt 21 leak-check/check fail REGR. vs. 180691 test-armhf-armhf-libvirt-qcow2 20 leak-check/check fail REGR. vs. 180691 test-armhf-armhf-libvirt-raw 20 leak-check/check fail REGR. vs. 180691 test-armhf-armhf-xl-vhd 20 leak-check/check fail REGR. vs. 180691 test-amd64-amd64-libvirt-vhd 22 leak-check/check fail in 181068 REGR. vs. 180691 Tests which are failing intermittently (not blocking): test-amd64-i386-libvirt-pair 11 xen-install/dst_host fail in 181068 pass in 181089 test-amd64-i386-libvirt-pair 10 xen-install/src_host fail pass in 181068 test-amd64-amd64-libvirt-vhd 19 guest-start/debian.repeat fail pass in 181068 Tests which did not succeed, but are not blocking: test-arm64-arm64-libvirt-raw 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-xsm 1 build-check(1) blocked n/a test-arm64-arm64-xl 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit1 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit2 1 build-check(1) blocked n/a test-arm64-arm64-xl-thunderx 1 build-check(1) blocked n/a test-arm64-arm64-xl-vhd 1 build-check(1) blocked n/a test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a build-arm64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 180691 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 180691 test-armhf-armhf-libvirt 16 saverestore-support-check fail like 180691 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail like 180691 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop fail like 180691 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail like 180691 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 180691 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop fail like 180691 test-amd64-i386-xl-pvshim 14 guest-start fail never pass test-amd64-i386-libvirt 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-i386-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-credit2 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit2 16 saverestore-support-check fail never pass test-amd64-i386-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-libvirt 15 migrate-support-check fail never pass test-armhf-armhf-xl 15 migrate-support-check fail never pass test-armhf-armhf-xl 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 15 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 16 saverestore-support-check fail never pass test-armhf-armhf-xl-multivcpu 15 migrate-support-check fail never pass test-armhf-armhf-xl-multivcpu 16 saverestore-support-check fail never pass test-armhf-armhf-xl-arndale 15 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 15 saverestore-support-check fail never pass version targeted for testing: qemuu c6a5fc2ac76c5ab709896ee1b0edd33685a67ed1 baseline version: qemuu 6972ef1440a9d685482d78672620a7482f2bd09a Last test of basis 180691 2023-05-17 10:45:22 Z 15 days Failing since 180699 2023-05-18 07:21:24 Z 14 days 54 attempts Testing same since 181068 2023-06-01 04:43:20 Z 0 days 2 attempts ------------------------------------------------------------ People who touched revisions under test: Afonso Bordado Akihiko Odaki Akihiro Suda Alex Bennée Alex Williamson Alexander Bulekov Alexander Graf Alistair Francis Ani Sinha Ani Sinha Anton Johansson BALATON Zoltan Bernhard Beschow Bin Meng Brian Cain Brice Goglin Camilla Conte Cindy Lu Clément Chigot Cornelia Huck Cédric Le Goater Cédric Le Goater Daniel Henrique Barboza Daniel P. Berrangé Daniil Kovalev David Hildenbrand Emanuele Giuseppe Esposito Enze Li Eric Auger Eric Blake Eric DeVolder Erico Nunes Eugenio Pérez Fabiano Rosas Fan Ni Fiona Ebner Francisco Iglesias Gavin Shan Gregory Price Gregory Price Hao Zeng Hawkins Jiawei Igor Mammedov Ira Weiny Jason Wang Jean-Philippe Brucker John Snow Jonathan Cameron Juan Quintela Kevin Wolf Laurent Vivier Lei Yang Leonardo Bras Maksim Davydov Marc-André Lureau Marcin Juszkiewicz Marco Liebel Mark Cave-Ayland Markus Armbruster Matheus Tavares Bernardino Mauro Matteo Cascella Michael S. Tsirkin Michael Tokarev Mostafa Saleh Nicholas Piggin Nicolas Saenz Julienne Palmer Dabbelt Paolo Bonzini Peter Maydell Peter Xu Philippe Mathieu-Daudé Raghu H Rene Engel Richard Henderson Richard Purdie Ricky Zhou Ryan Wendland Sebastian Ott Sergio Lopez Sid Manning Song Gao Stefan Hajnoczi Steve Sistare Taylor Simpson Thomas Huth Thomas Weißschuh timothee.cocault@gmail.com Timothée Cocault Tommy Wu Viktor Prutyanov Vitaly Cheptsov Vivek Kasireddy Vladimir Sementsov-Ogievskiy Volker Rümelin Xinyu Li Zeng Hao Zhenyu Zhang Zhenzhong Duan jobs: build-amd64-xsm pass build-arm64-xsm fail build-i386-xsm pass build-amd64 pass build-arm64 fail build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt blocked build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl blocked test-armhf-armhf-xl pass test-amd64-i386-xl pass test-amd64-coresched-i386-xl pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm fail test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm fail test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-i386-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm fail test-arm64-arm64-libvirt-xsm blocked test-amd64-i386-libvirt-xsm fail test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm blocked test-amd64-i386-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-i386-qemuu-rhel6hvm-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-freebsd10-amd64 pass test-amd64-amd64-qemuu-freebsd11-amd64 pass test-amd64-amd64-qemuu-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-i386-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-amd64-i386-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 blocked test-armhf-armhf-xl-credit1 pass test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 blocked test-armhf-armhf-xl-credit2 pass test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-i386-freebsd10-i386 pass test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-i386-qemuu-rhel6hvm-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt fail test-armhf-armhf-libvirt fail test-amd64-i386-libvirt fail test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu pass test-amd64-amd64-pair pass test-amd64-i386-pair pass test-amd64-amd64-libvirt-pair fail test-amd64-i386-libvirt-pair fail test-amd64-amd64-xl-pvshim pass test-amd64-i386-xl-pvshim fail test-amd64-amd64-pygrub pass test-armhf-armhf-libvirt-qcow2 fail test-amd64-amd64-xl-qcow2 fail test-arm64-arm64-libvirt-raw blocked test-armhf-armhf-libvirt-raw fail test-amd64-i386-libvirt-raw fail test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds pass test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-amd64-i386-xl-shadow pass test-arm64-arm64-xl-thunderx blocked test-amd64-amd64-libvirt-vhd fail test-arm64-arm64-xl-vhd blocked test-armhf-armhf-xl-vhd fail test-amd64-i386-xl-vhd fail ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 10970 lines long.) From xen-devel-bounces@lists.xenproject.org Fri Jun 02 05:49:42 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 02 Jun 2023 05:49:42 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542927.847390 (Exim 4.92) (envelope-from ) id 1q4xfQ-0005Rp-06; Fri, 02 Jun 2023 05:49:40 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542927.847390; Fri, 02 Jun 2023 05:49:39 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4xfP-0005Ri-T0; Fri, 02 Jun 2023 05:49:39 +0000 Received: by outflank-mailman (input) for mailman id 542927; Fri, 02 Jun 2023 05:49:38 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4xfO-0004g6-8s for xen-devel@lists.xen.org; Fri, 02 Jun 2023 05:49:38 +0000 Received: from mail-ot1-x32a.google.com (mail-ot1-x32a.google.com [2607:f8b0:4864:20::32a]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 41ea7266-0109-11ee-b231-6b7b168915f2; Fri, 02 Jun 2023 07:49:37 +0200 (CEST) Received: by mail-ot1-x32a.google.com with SMTP id 46e09a7af769-6af89b0f3e5so1660327a34.0 for ; Thu, 01 Jun 2023 22:49:37 -0700 (PDT) Received: from localhost ([122.172.87.195]) by smtp.gmail.com with ESMTPSA id u11-20020aa7848b000000b0063f2e729127sm225444pfn.144.2023.06.01.22.49.35 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 01 Jun 2023 22:49:35 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 41ea7266-0109-11ee-b231-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1685684976; x=1688276976; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=VXMLaPMue+uL4pD6dz7ArFXAqp8Vlz5f6SfADwc6jPo=; b=mFKvKglkt9XRUuGMPlMikCG6rF35/Nhu02q30dgjlKtMUvyc318gLqAgzc3UaqW/HK cC4qvSnl6IyT2KWCR8LySbB7ose3xHnZaNtYm/gZbPee5Vc0cAzlAgKTQ5QcIBXGriAQ JQVZ9hieYH2HVPaVZ5S4ode4K+ucy9EjxgIDZ1TqWU6TO+HnlIYs3k7qi7/5I3auWdhE Lowczm5av12kzP4JLWSghe4XhyXbFfp7HOMRhAvxQsLcqtib3fqIHiLVLhFJdRDVlSnY DokUjbb/f4BZaOuTozvNPtiD8JJvyCNUJfBlWdnadO/OBf0Ghxr1s2fx3h6Lggwo0bBn 1sVA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1685684976; x=1688276976; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=VXMLaPMue+uL4pD6dz7ArFXAqp8Vlz5f6SfADwc6jPo=; b=I7kFoHiSt9+OOODY9w3C6NVoJgKsv2zKEDVIKrZhgyGT/CURwFtJqIsasZV7oqMVeG J9T0xobG1qeGl0NE7UgMWhKktcz6OSP5Nv1ayCgam4VWdpwb8VrWN8W4dkKMt7Zfyr6J 5aPUuwZh/icw5M2u8wHQF0JIo81CZCECKYnVh6cVTt1YRgY3zh9Lr723Ef6RQSFILx/U x687h2dTN45PhLrB5sFru8I7BDV+PIfhJJRxDHCLRNFRl2OEF6vbEBna9PvtnxanSJ5l kT2Om40DJtL17w9Cnrc6flpbCq3DuxZnvVzR63Sgx1awR57Js25J57ZYqXmN28EDqs2P +TQw== X-Gm-Message-State: AC+VfDxkb7ZPfZqrJBPaD29xdth8Ocm+cGwFpqVhxE1j0iA2SDuGiQI3 BNETKpbOv/S/RzuIz1eE6tiUCe1/CykWQ3FI980= X-Google-Smtp-Source: ACHHUZ6f+n9x8kcM5ICHaoBfBsV7DG9hnoFb65So2oOrBlPMKr91SCRowromT8FmV+i1HfrumhZBhw== X-Received: by 2002:a05:6830:e06:b0:6b0:ca4f:8504 with SMTP id do6-20020a0568300e0600b006b0ca4f8504mr1495774otb.27.1685684976286; Thu, 01 Jun 2023 22:49:36 -0700 (PDT) From: Viresh Kumar To: xen-devel@lists.xen.org, Juergen Gross , Julien Grall , Anthony PERARD Cc: Viresh Kumar , Vincent Guittot , stratos-dev@op-lists.linaro.org, =?UTF-8?q?Alex=20Benn=C3=A9e?= , Mathieu Poirier , Oleksandr Tyshchenko , Erik Schilling Subject: [PATCH V3 3/3] libxl: arm: Add grant_usage parameter for virtio devices Date: Fri, 2 Jun 2023 11:19:09 +0530 Message-Id: <0e347b2f4817cc578a5f8e41bf70503ae8cf69e3.1685684586.git.viresh.kumar@linaro.org> X-Mailer: git-send-email 2.31.1.272.g89b43f80a514 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Currently, the grant mapping related device tree properties are added if the backend domain is not Dom0. While Dom0 is privileged and can do foreign mapping for the entire guest memory, it is still desired for Dom0 to access guest's memory via grant mappings and hence map only what is required. This commit adds the "grant_usage" parameter for virtio devices, which provides better control over the functionality. Signed-off-by: Viresh Kumar --- docs/man/xl.cfg.5.pod.in | 8 ++++++++ tools/golang/xenlight/helpers.gen.go | 6 ++++++ tools/golang/xenlight/types.gen.go | 1 + tools/libs/light/libxl_arm.c | 22 +++++++++++++--------- tools/libs/light/libxl_types.idl | 1 + tools/libs/light/libxl_virtio.c | 23 +++++++++++++++++++++-- tools/xl/xl_parse.c | 2 ++ 7 files changed, 52 insertions(+), 11 deletions(-) diff --git a/docs/man/xl.cfg.5.pod.in b/docs/man/xl.cfg.5.pod.in index 24ac92718288..3a40ac8cb322 100644 --- a/docs/man/xl.cfg.5.pod.in +++ b/docs/man/xl.cfg.5.pod.in @@ -1619,6 +1619,14 @@ hexadecimal format, without the "0x" prefix and all in lower case, like Specifies the transport mechanism for the Virtio device, only "mmio" is supported for now. +=item B + +If this option is B, the Xen grants are always enabled. +If this option is B, the Xen grants are always disabled. + +If this option is missing, then the default grant setting will be used, +i.e. enable grants if backend-domid != 0. + =back =item B diff --git a/tools/golang/xenlight/helpers.gen.go b/tools/golang/xenlight/helpers.gen.go index 0a203d22321f..bf846dca8ec0 100644 --- a/tools/golang/xenlight/helpers.gen.go +++ b/tools/golang/xenlight/helpers.gen.go @@ -1792,6 +1792,9 @@ func (x *DeviceVirtio) fromC(xc *C.libxl_device_virtio) error { x.BackendDomname = C.GoString(xc.backend_domname) x.Type = C.GoString(xc._type) x.Transport = VirtioTransport(xc.transport) +if err := x.GrantUsage.fromC(&xc.grant_usage);err != nil { +return fmt.Errorf("converting field GrantUsage: %v", err) +} x.Devid = Devid(xc.devid) x.Irq = uint32(xc.irq) x.Base = uint64(xc.base) @@ -1809,6 +1812,9 @@ xc.backend_domname = C.CString(x.BackendDomname)} if x.Type != "" { xc._type = C.CString(x.Type)} xc.transport = C.libxl_virtio_transport(x.Transport) +if err := x.GrantUsage.toC(&xc.grant_usage); err != nil { +return fmt.Errorf("converting field GrantUsage: %v", err) +} xc.devid = C.libxl_devid(x.Devid) xc.irq = C.uint32_t(x.Irq) xc.base = C.uint64_t(x.Base) diff --git a/tools/golang/xenlight/types.gen.go b/tools/golang/xenlight/types.gen.go index a7c17699f80e..e0c6e91bb0ef 100644 --- a/tools/golang/xenlight/types.gen.go +++ b/tools/golang/xenlight/types.gen.go @@ -683,6 +683,7 @@ BackendDomid Domid BackendDomname string Type string Transport VirtioTransport +GrantUsage Defbool Devid Devid Irq uint32 Base uint64 diff --git a/tools/libs/light/libxl_arm.c b/tools/libs/light/libxl_arm.c index 97c80d7ed0fa..bc2bd9649b95 100644 --- a/tools/libs/light/libxl_arm.c +++ b/tools/libs/light/libxl_arm.c @@ -922,7 +922,8 @@ static int make_xen_iommu_node(libxl__gc *gc, void *fdt) /* The caller is responsible to complete / close the fdt node */ static int make_virtio_mmio_node_common(libxl__gc *gc, void *fdt, uint64_t base, - uint32_t irq, uint32_t backend_domid) + uint32_t irq, uint32_t backend_domid, + bool grant_usage) { int res; gic_interrupt intr; @@ -945,7 +946,7 @@ static int make_virtio_mmio_node_common(libxl__gc *gc, void *fdt, uint64_t base, res = fdt_property(fdt, "dma-coherent", NULL, 0); if (res) return res; - if (backend_domid != LIBXL_TOOLSTACK_DOMID) { + if (grant_usage) { uint32_t iommus_prop[2]; iommus_prop[0] = cpu_to_fdt32(GUEST_PHANDLE_IOMMU); @@ -959,11 +960,12 @@ static int make_virtio_mmio_node_common(libxl__gc *gc, void *fdt, uint64_t base, } static int make_virtio_mmio_node(libxl__gc *gc, void *fdt, uint64_t base, - uint32_t irq, uint32_t backend_domid) + uint32_t irq, uint32_t backend_domid, + bool grant_usage) { int res; - res = make_virtio_mmio_node_common(gc, fdt, base, irq, backend_domid); + res = make_virtio_mmio_node_common(gc, fdt, base, irq, backend_domid, grant_usage); if (res) return res; return fdt_end_node(fdt); @@ -1019,11 +1021,11 @@ static int make_virtio_mmio_node_gpio(libxl__gc *gc, void *fdt) static int make_virtio_mmio_node_device(libxl__gc *gc, void *fdt, uint64_t base, uint32_t irq, const char *type, - uint32_t backend_domid) + uint32_t backend_domid, bool grant_usage) { int res; - res = make_virtio_mmio_node_common(gc, fdt, base, irq, backend_domid); + res = make_virtio_mmio_node_common(gc, fdt, base, irq, backend_domid, grant_usage); if (res) return res; /* Add device specific nodes */ @@ -1363,7 +1365,8 @@ static int libxl__prepare_dtb(libxl__gc *gc, libxl_domain_config *d_config, iommu_needed = true; FDT( make_virtio_mmio_node(gc, fdt, disk->base, disk->irq, - disk->backend_domid) ); + disk->backend_domid, + disk->backend_domid != LIBXL_TOOLSTACK_DOMID) ); } } @@ -1373,12 +1376,13 @@ static int libxl__prepare_dtb(libxl__gc *gc, libxl_domain_config *d_config, if (virtio->transport != LIBXL_VIRTIO_TRANSPORT_MMIO) continue; - if (virtio->backend_domid != LIBXL_TOOLSTACK_DOMID) + if (libxl_defbool_val(virtio->grant_usage)) iommu_needed = true; FDT( make_virtio_mmio_node_device(gc, fdt, virtio->base, virtio->irq, virtio->type, - virtio->backend_domid) ); + virtio->backend_domid, + libxl_defbool_val(virtio->grant_usage)) ); } /* diff --git a/tools/libs/light/libxl_types.idl b/tools/libs/light/libxl_types.idl index c10292e0d7e3..c5c0d1f91793 100644 --- a/tools/libs/light/libxl_types.idl +++ b/tools/libs/light/libxl_types.idl @@ -740,6 +740,7 @@ libxl_device_virtio = Struct("device_virtio", [ ("backend_domname", string), ("type", string), ("transport", libxl_virtio_transport), + ("grant_usage", libxl_defbool), ("devid", libxl_devid), # Note that virtio-mmio parameters (irq and base) are for internal # use by libxl and can't be modified. diff --git a/tools/libs/light/libxl_virtio.c b/tools/libs/light/libxl_virtio.c index f8a78e22d156..19d834984777 100644 --- a/tools/libs/light/libxl_virtio.c +++ b/tools/libs/light/libxl_virtio.c @@ -23,8 +23,16 @@ static int libxl__device_virtio_setdefault(libxl__gc *gc, uint32_t domid, libxl_device_virtio *virtio, bool hotplug) { - return libxl__resolve_domid(gc, virtio->backend_domname, - &virtio->backend_domid); + int rc; + + rc = libxl__resolve_domid(gc, virtio->backend_domname, + &virtio->backend_domid); + if (rc < 0) return rc; + + libxl_defbool_setdefault(&virtio->grant_usage, + virtio->backend_domid != LIBXL_TOOLSTACK_DOMID); + + return 0; } static int libxl__device_from_virtio(libxl__gc *gc, uint32_t domid, @@ -48,11 +56,13 @@ static int libxl__set_xenstore_virtio(libxl__gc *gc, uint32_t domid, flexarray_t *ro_front) { const char *transport = libxl_virtio_transport_to_string(virtio->transport); + const char *grant_usage = libxl_defbool_to_string(virtio->grant_usage); flexarray_append_pair(back, "irq", GCSPRINTF("%u", virtio->irq)); flexarray_append_pair(back, "base", GCSPRINTF("%#"PRIx64, virtio->base)); flexarray_append_pair(back, "type", GCSPRINTF("%s", virtio->type)); flexarray_append_pair(back, "transport", GCSPRINTF("%s", transport)); + flexarray_append_pair(back, "grant_usage", GCSPRINTF("%s", grant_usage)); return 0; } @@ -104,6 +114,15 @@ static int libxl__virtio_from_xenstore(libxl__gc *gc, const char *libxl_path, } } + tmp = NULL; + rc = libxl__xs_read_checked(gc, XBT_NULL, + GCSPRINTF("%s/grant_usage", be_path), &tmp); + if (rc) goto out; + + if (tmp) { + libxl_defbool_set(&virtio->grant_usage, strtoul(tmp, NULL, 0)); + } + tmp = NULL; rc = libxl__xs_read_checked(gc, XBT_NULL, GCSPRINTF("%s/type", be_path), &tmp); diff --git a/tools/xl/xl_parse.c b/tools/xl/xl_parse.c index 1f6f47daf4e1..c66b11fd01b2 100644 --- a/tools/xl/xl_parse.c +++ b/tools/xl/xl_parse.c @@ -1215,6 +1215,8 @@ static int parse_virtio_config(libxl_device_virtio *virtio, char *token) } else if (MATCH_OPTION("transport", token, oparg)) { rc = libxl_virtio_transport_from_string(oparg, &virtio->transport); if (rc) return rc; + } else if (MATCH_OPTION("grant_usage", token, oparg)) { + libxl_defbool_set(&virtio->grant_usage, strtoul(oparg, NULL, 0)); } else { fprintf(stderr, "Unknown string \"%s\" in virtio spec\n", token); return -1; -- 2.31.1.272.g89b43f80a514 From xen-devel-bounces@lists.xenproject.org Fri Jun 02 05:49:42 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 02 Jun 2023 05:49:42 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542926.847379 (Exim 4.92) (envelope-from ) id 1q4xfN-0005Aq-NW; Fri, 02 Jun 2023 05:49:37 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542926.847379; Fri, 02 Jun 2023 05:49:37 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4xfN-0005Aj-Kj; Fri, 02 Jun 2023 05:49:37 +0000 Received: by outflank-mailman (input) for mailman id 542926; Fri, 02 Jun 2023 05:49:36 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4xfM-0004uv-Qz for xen-devel@lists.xen.org; Fri, 02 Jun 2023 05:49:36 +0000 Received: from mail-ot1-x335.google.com (mail-ot1-x335.google.com [2607:f8b0:4864:20::335]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 3ecb3489-0109-11ee-8611-37d641c3527e; Fri, 02 Jun 2023 07:49:32 +0200 (CEST) Received: by mail-ot1-x335.google.com with SMTP id 46e09a7af769-6af6df7f93aso1577128a34.0 for ; Thu, 01 Jun 2023 22:49:32 -0700 (PDT) Received: from localhost ([122.172.87.195]) by smtp.gmail.com with ESMTPSA id r14-20020a62e40e000000b0063b7a0b9cc5sm202964pfh.186.2023.06.01.22.49.30 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 01 Jun 2023 22:49:30 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 3ecb3489-0109-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1685684971; x=1688276971; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=d+pJJng5fx4kFKejzKmDNFo2NgoyulchHXsMzQ/yQ64=; b=GeoQ7drCwRTbT9YQXikTijbbCD21G4p5krtLy9rertAbvNElam6icECXzLQAMPNc7u 2gbzDbe5LySEEf7M2NMey1MFdwYnAAw/GC24PKEJqC/DCKOBcaXC1uAORwChLGrT3lBc ivXFS9t/y8RLf/IbYCkozIevnHHzUT+Fcj/hPwbHW7l5qmEMyBuOJVHCvYReNhMyTKKe efC7E4nOL/xL2nltdLfwqp75ZZ4FO0Oe8BuZ7dH8nygR1JcacJJtAMoCSxUfIzNQwdg+ XcRZp/CCNcuEUUXmXNcM+NtTePP94ekZrH6V4BNoSYeEbkTCxqmJBVBpleNXQDjI288h hdDQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1685684971; x=1688276971; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=d+pJJng5fx4kFKejzKmDNFo2NgoyulchHXsMzQ/yQ64=; b=UA2d92D/x2WLFXF1M5NS4KHiU62n+P8DhBm5GhiIG23AtTILZtuZzJSHtCT6hT8dwq zQaOi6W5MSYZ4Djc6qj0bpLzeNdcghdhLaCAUF6rbXulsB/Q0whc8Q/TT3YbkGMwR0ub UyYkX9hqQjixR3SsmKpGFE/QYtwyEh0UCP3W3AK5tw2dRk9W5BHaVtGEzGEWJHYpr6Jq pbNQpV3/azNpYw3NMyZ5ivLQgtq/jPpngj/VB76QrbtlQ+327iT8H5uCCSzfhrI6/2Ox XZusFl4AzQISklTD2+AEavovjeZUtxUoExBtZ8eC5B8veQMCOcMCG3WsQMPTrEIOv8Ba X6cw== X-Gm-Message-State: AC+VfDwiF86VP/JHtKwtC4VrcdYcEpQBQhq+K+hik7QX8sTtr+P3dHed +bwITWPWYuL/JbaocwN4x70EW+UcNW18NTu8f+0= X-Google-Smtp-Source: ACHHUZ4ugx2VyoJYBxh6uY8zyuOFk/yvO4vMH2g4Zrzo6rhpAQk/BVCNJXcg9q+OlOuAXFll5Q5Bqw== X-Received: by 2002:a9d:77c5:0:b0:6a6:6121:dc60 with SMTP id w5-20020a9d77c5000000b006a66121dc60mr1478045otl.10.1685684971046; Thu, 01 Jun 2023 22:49:31 -0700 (PDT) From: Viresh Kumar To: xen-devel@lists.xen.org, Juergen Gross , Julien Grall , Anthony PERARD Cc: Viresh Kumar , Vincent Guittot , stratos-dev@op-lists.linaro.org, =?UTF-8?q?Alex=20Benn=C3=A9e?= , Mathieu Poirier , Oleksandr Tyshchenko , Erik Schilling Subject: [PATCH V3 1/3] libxl: virtio: Remove unused frontend nodes Date: Fri, 2 Jun 2023 11:19:07 +0530 Message-Id: X-Mailer: git-send-email 2.31.1.272.g89b43f80a514 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Only the VirtIO backend will watch xenstore to find out when a new instance needs to be created for a guest, and read the parameters from there. VirtIO frontend are only virtio, so they will not do anything with the xenstore nodes. They can be removed. While at it, also add a comment to the libxl_virtio.c file. Signed-off-by: Viresh Kumar --- tools/libs/light/libxl_virtio.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/tools/libs/light/libxl_virtio.c b/tools/libs/light/libxl_virtio.c index faada49e184e..f8a78e22d156 100644 --- a/tools/libs/light/libxl_virtio.c +++ b/tools/libs/light/libxl_virtio.c @@ -1,4 +1,9 @@ /* + * Setup VirtIO backend. This is intended to interact with a VirtIO + * backend that is watching xenstore, and create new VirtIO devices + * with the parameter found in xenstore (VirtIO frontend don't + * interact with xenstore.) + * * Copyright (C) 2022 Linaro Ltd. * * This program is free software; you can redistribute it and/or modify @@ -49,11 +54,6 @@ static int libxl__set_xenstore_virtio(libxl__gc *gc, uint32_t domid, flexarray_append_pair(back, "type", GCSPRINTF("%s", virtio->type)); flexarray_append_pair(back, "transport", GCSPRINTF("%s", transport)); - flexarray_append_pair(front, "irq", GCSPRINTF("%u", virtio->irq)); - flexarray_append_pair(front, "base", GCSPRINTF("%#"PRIx64, virtio->base)); - flexarray_append_pair(front, "type", GCSPRINTF("%s", virtio->type)); - flexarray_append_pair(front, "transport", GCSPRINTF("%s", transport)); - return 0; } -- 2.31.1.272.g89b43f80a514 From xen-devel-bounces@lists.xenproject.org Fri Jun 02 05:49:43 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 02 Jun 2023 05:49:43 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542924.847360 (Exim 4.92) (envelope-from ) id 1q4xfJ-0004gJ-99; Fri, 02 Jun 2023 05:49:33 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542924.847360; Fri, 02 Jun 2023 05:49:33 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4xfJ-0004gC-5t; Fri, 02 Jun 2023 05:49:33 +0000 Received: by outflank-mailman (input) for mailman id 542924; Fri, 02 Jun 2023 05:49:31 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4xfH-0004g6-7E for xen-devel@lists.xen.org; Fri, 02 Jun 2023 05:49:31 +0000 Received: from mail-oa1-x2d.google.com (mail-oa1-x2d.google.com [2001:4860:4864:20::2d]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 3d2a5762-0109-11ee-b231-6b7b168915f2; Fri, 02 Jun 2023 07:49:29 +0200 (CEST) Received: by mail-oa1-x2d.google.com with SMTP id 586e51a60fabf-1a28de15c8aso894255fac.2 for ; Thu, 01 Jun 2023 22:49:29 -0700 (PDT) Received: from localhost ([122.172.87.195]) by smtp.gmail.com with ESMTPSA id 8-20020a17090a01c800b00252d960a8dfsm2448941pjd.16.2023.06.01.22.49.27 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 01 Jun 2023 22:49:27 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 3d2a5762-0109-11ee-b231-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1685684968; x=1688276968; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=4K0r0XR0o3cnSWZBLDTXJCeNa3krDTyt7mTDT7eZkck=; b=uweqPSkV9aGVeWrONeFiZM3V09yrKG9ExeFmXyv4lli2j6/ACV+0a4qvS82Qnzoj58 lOQvR2igTTeI+dlINkURAxIoeCiypqp9S1UHr0PA7fkg5UsGW7n55Vyr0n5QNwXCDXq9 KVRt/pGizw63GjxwnVFp+kvLzBP7/1WQ1tAKIvdQ9xVVc2p7VpFlEq90u+x8yYB6H/zF Oi5ZcbuqyOcU5654Lc6ZX+QH2YekFc91Jt0ckMDWphFgl2XLm2edEXIawqZtUGc55j1+ YeeNXPvSCswEvP+7WJIbW+gugvdvl9Vfe9rRQgHyCf3p5phSL/sSzwWHHL8R/6yqzcVT dZ3Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1685684968; x=1688276968; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=4K0r0XR0o3cnSWZBLDTXJCeNa3krDTyt7mTDT7eZkck=; b=WmiQ2y2+k8dO07wvOE75CkPx26jKLtNby132swoa+Nq5sGevt177KeY0X6AoGDLWOk 304gS9OCn/IJr74VCyK492oix2za4d3FU2VHx7oeShXid1CpsgbD7alHyULZPMANXDDH sNfBRNwg6SsocGmV7g7rM2fJQrzmamP4haI6lCo7uUEqu9sX8BBPOV3f0buJCncC6TLJ oqiqgWli3MU9EFODl0maxZwaATNZcFIT55451QAAwdgNGJ/VBUizfCaIVel5PlkjRyQ9 LQOud71mzdoEVIahh8BFjoLdS65kx5n8RPiAPCVzUcXq1VRPqTBz6kho5rwx9E433vjV WaSg== X-Gm-Message-State: AC+VfDx4tsFJ36gqwY1drM3bFw1MDTzDwE+N9rYpK94qKNpGacXt/aA5 9zIaWtk/rPj+pPQ5tDiBApGouFrFf3G6cs+9WSQ= X-Google-Smtp-Source: ACHHUZ4Zt6mDj15xRYT94E8pbmJzrDzQNwFKIIRWE7cYdDVmA3Lc3RkdVLLhDQJtmZdEuCFMxRIwWQ== X-Received: by 2002:a05:6358:5906:b0:127:82ef:1779 with SMTP id g6-20020a056358590600b0012782ef1779mr8082964rwf.30.1685684968241; Thu, 01 Jun 2023 22:49:28 -0700 (PDT) From: Viresh Kumar To: xen-devel@lists.xen.org, Juergen Gross , Julien Grall , Anthony PERARD Cc: Viresh Kumar , Vincent Guittot , stratos-dev@op-lists.linaro.org, =?UTF-8?q?Alex=20Benn=C3=A9e?= , Mathieu Poirier , Oleksandr Tyshchenko , Erik Schilling Subject: [PATCH V3 0/3] libxl: Make grants configurable for virtio devices Date: Fri, 2 Jun 2023 11:19:06 +0530 Message-Id: X-Mailer: git-send-email 2.31.1.272.g89b43f80a514 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Hi, This patchset intends to make grant mapping usage configurable for virtio devices. Currently they are forced enabled for backends running on non-Dom0 domains. This patchset adds a new `grant_usage` parameter for the virtio devices, which can be used to enable or disable grant mappings irrespective of the backend domain, while still preserving the default behavior in absence of a parameter. V2->V3: - Patch 2/3 is new and fixes ordering issues with default values. - Reuse `libxl_defbool` instead of defining a new type, it can take values 0 and 1. - Improved commit logs and comments. V1->V2: - Instead of just 0 or 1, the argument can take multiple values now and control the functionality in a better way. - Update .gen.go files as well. - Don't add nodes under frontend path. Viresh Kumar (3): libxl: virtio: Remove unused frontend nodes libxl: Call libxl__virtio_devtype.set_default() early enough libxl: arm: Add grant_usage parameter for virtio devices docs/man/xl.cfg.5.pod.in | 8 +++++++ tools/golang/xenlight/helpers.gen.go | 6 +++++ tools/golang/xenlight/types.gen.go | 1 + tools/libs/light/libxl_arm.c | 22 +++++++++++-------- tools/libs/light/libxl_create.c | 11 +++++++++- tools/libs/light/libxl_types.idl | 1 + tools/libs/light/libxl_virtio.c | 33 ++++++++++++++++++++++------ tools/xl/xl_parse.c | 2 ++ 8 files changed, 67 insertions(+), 17 deletions(-) -- 2.31.1.272.g89b43f80a514 From xen-devel-bounces@lists.xenproject.org Fri Jun 02 05:49:44 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 02 Jun 2023 05:49:44 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542925.847369 (Exim 4.92) (envelope-from ) id 1q4xfM-0004vA-GD; Fri, 02 Jun 2023 05:49:36 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542925.847369; Fri, 02 Jun 2023 05:49:36 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4xfM-0004v3-Dc; Fri, 02 Jun 2023 05:49:36 +0000 Received: by outflank-mailman (input) for mailman id 542925; Fri, 02 Jun 2023 05:49:35 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4xfL-0004g6-LH for xen-devel@lists.xen.org; Fri, 02 Jun 2023 05:49:35 +0000 Received: from mail-pg1-x534.google.com (mail-pg1-x534.google.com [2607:f8b0:4864:20::534]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 4070913b-0109-11ee-b231-6b7b168915f2; Fri, 02 Jun 2023 07:49:35 +0200 (CEST) Received: by mail-pg1-x534.google.com with SMTP id 41be03b00d2f7-51b4ef5378bso1532511a12.1 for ; Thu, 01 Jun 2023 22:49:35 -0700 (PDT) Received: from localhost ([122.172.87.195]) by smtp.gmail.com with ESMTPSA id 21-20020a170902c11500b001ac94b33ab1sm352303pli.304.2023.06.01.22.49.32 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 01 Jun 2023 22:49:33 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 4070913b-0109-11ee-b231-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1685684973; x=1688276973; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=jBN/RWcDvPOwXwPxKLJ7hwpbCSP4ps6soF57y3YX9cs=; b=LiRvyhpBsWDJitVSWNQaI/YdwbEFhNZ2v7osl22Vwh5mAvifREoEYlY5UW4Y/V6Vtv fF5uDnSA17Bo4PpIj9RtRPVPZxr14Ek8C52LRHpAiGqapviyDYvAoiugWbdVAe3adxwn yf63zomYB2e5c5KwG0z0iHzwr+Kf+qSNKi8qkFhdoOQhxGs3CmV1szqqUyhIdU1Slv26 7wxOzHlGAhiRi3j8OXXv51D22pAEOFmOzwev8pAtPqHR5qSMCs6q7eRsd6RwrspiPxpC gBfDLA5WVM5rtR57Jovt+zc26Rl2go16V138sZTQ8DfploIVOp9Nw8hF3H8TaPZDUMi6 9UqQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1685684973; x=1688276973; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=jBN/RWcDvPOwXwPxKLJ7hwpbCSP4ps6soF57y3YX9cs=; b=EVHqWinZQQhvugxJ4FM/taoT1YX8BglD7l2fAvYKyetSRvlBpwH33qNJYWsAxmVTP+ Vr/BauVPHb+zhOo8RXSmi/0/ni8t6mGVigrKffZMSTGA0VlT2nRtZItW1vqKE6HjgT3t D948Pijsul4Xew5AI5NQ01qy+c8wALh4mg1L+RKOfV2iPNjP7vZXhbU2HKClpcKoKCw5 TSZOUNdD8LpW7p32Qu1Km/wV6kL/Qn0r4g8h0UwKIF78locSwDbQsY9cpymM0SHLxMhe bz9RJSq+C0VUJz1S83Jnl5v090fm1yQzvwq5smRQq9a6I9MFJf9Br2Hrtftdy3+6PcNf jyVg== X-Gm-Message-State: AC+VfDywTQQkrz36/Wf7XxILCKudGIfs4WLB3JF14xxu1zKUoEudD8Fk PdKIUkjgs4Xe+QszTl7onGXsMZ4JcFuPs1vWh/0= X-Google-Smtp-Source: ACHHUZ6i8Yj/jn4nrWyKIq7yg+6FGl+3P9GNin6a55YolBhclgLGqi6thYCHu25BO4pR7fAOAlzXqA== X-Received: by 2002:a17:902:e5c4:b0:1af:981b:eeff with SMTP id u4-20020a170902e5c400b001af981beeffmr1424317plf.64.1685684973641; Thu, 01 Jun 2023 22:49:33 -0700 (PDT) From: Viresh Kumar To: xen-devel@lists.xen.org, Juergen Gross , Julien Grall , Anthony PERARD Cc: Viresh Kumar , Vincent Guittot , stratos-dev@op-lists.linaro.org, =?UTF-8?q?Alex=20Benn=C3=A9e?= , Mathieu Poirier , Oleksandr Tyshchenko , Erik Schilling Subject: [PATCH V3 2/3] libxl: Call libxl__virtio_devtype.set_default() early enough Date: Fri, 2 Jun 2023 11:19:08 +0530 Message-Id: <61727b8e00dd9acb0621e98528bd5051d3bd5c58.1685684586.git.viresh.kumar@linaro.org> X-Mailer: git-send-email 2.31.1.272.g89b43f80a514 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit The _setdefault() function for virtio devices is getting called after libxl__prepare_dtb(), which is late as libxl__prepare_dtb() expects the defaults to be already set by this time. Call libxl__virtio_devtype.set_default() from libxl__domain_config_setdefault(), in a similar way as other devices like disk, etc. Suggested-by: Anthony PERARD Signed-off-by: Viresh Kumar --- tools/libs/light/libxl_create.c | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/tools/libs/light/libxl_create.c b/tools/libs/light/libxl_create.c index ec8eab02c207..36770af6d4ff 100644 --- a/tools/libs/light/libxl_create.c +++ b/tools/libs/light/libxl_create.c @@ -1068,7 +1068,7 @@ int libxl__domain_config_setdefault(libxl__gc *gc, uint32_t domid /* for logging, only */) { libxl_ctx *ctx = libxl__gc_owner(gc); - int ret; + int ret, i; bool pod_enabled = false; libxl_domain_create_info *c_info = &d_config->c_info; @@ -1266,6 +1266,15 @@ int libxl__domain_config_setdefault(libxl__gc *gc, goto error_out; } + for (i = 0; i < d_config->num_virtios; i++) { + ret = libxl__virtio_devtype.set_default(gc, domid, + &d_config->virtios[i], false); + if (ret) { + LOGD(ERROR, domid, "Unable to set virtio defaults for device %d", i); + goto error_out; + } + } + ret = 0; error_out: return ret; -- 2.31.1.272.g89b43f80a514 From xen-devel-bounces@lists.xenproject.org Fri Jun 02 06:06:58 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 02 Jun 2023 06:06:58 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542943.847405 (Exim 4.92) (envelope-from ) id 1q4xw4-0000XR-Ir; Fri, 02 Jun 2023 06:06:52 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542943.847405; Fri, 02 Jun 2023 06:06:52 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4xw4-0000XK-G2; Fri, 02 Jun 2023 06:06:52 +0000 Received: by outflank-mailman (input) for mailman id 542943; Fri, 02 Jun 2023 06:06:50 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4xw2-0000XE-Md for xen-devel@lists.xenproject.org; Fri, 02 Jun 2023 06:06:50 +0000 Received: from smtp-out1.suse.de (smtp-out1.suse.de [195.135.220.28]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id a92b43b5-010b-11ee-b232-6b7b168915f2; Fri, 02 Jun 2023 08:06:49 +0200 (CEST) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by smtp-out1.suse.de (Postfix) with ESMTPS id B46C821A26; Fri, 2 Jun 2023 06:06:48 +0000 (UTC) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id 5D81013A2E; Fri, 2 Jun 2023 06:06:48 +0000 (UTC) Received: from dovecot-director2.suse.de ([192.168.254.65]) by imap2.suse-dmz.suse.de with ESMTPSA id jgVyFfiGeWSiTQAAMHmgww (envelope-from ); Fri, 02 Jun 2023 06:06:48 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: a92b43b5-010b-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1; t=1685686008; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=4uLBejDaJmLYOrHUuqsqz0VZ3P1si23qortwo9RjY10=; b=HI+nBsQUhAE+Yhqaj7Qt7PKRi8b6FlTScCa5DSng2LkgbeF925lem+EqJaSdE2jUe/qccQ kA7iOzVXfJ6j1wJtH3Txy0V9clRZzwqMLfo3esAmo5TU0CKM+r9SAY5vbsr/TM8MvdIA9K ZnNhJYMEZyJ1EofSloHK5eCjj5QM9Vw= Message-ID: Date: Fri, 2 Jun 2023 08:06:47 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH v2] iscsi_ibft: Fix finding the iBFT under Xen Dom 0 Content-Language: en-US To: Dave Hansen , Ross Lagerwall , linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org Cc: Jan Beulich , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , x86@kernel.org, Boris Ostrovsky , Peter Jones , Konrad Rzeszutek Wilk References: <20230530150106.2703849-1-ross.lagerwall@citrix.com> <5aae0317-72cf-fc3c-6ce3-7e1fe1d6b699@intel.com> From: Juergen Gross In-Reply-To: <5aae0317-72cf-fc3c-6ce3-7e1fe1d6b699@intel.com> Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="------------Cwbt90mJHsJsLjAP8FmpghOn" This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --------------Cwbt90mJHsJsLjAP8FmpghOn Content-Type: multipart/mixed; boundary="------------2ixzVvAB9HnBwhVeQi33gWNb"; protected-headers="v1" From: Juergen Gross To: Dave Hansen , Ross Lagerwall , linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org Cc: Jan Beulich , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , x86@kernel.org, Boris Ostrovsky , Peter Jones , Konrad Rzeszutek Wilk Message-ID: Subject: Re: [PATCH v2] iscsi_ibft: Fix finding the iBFT under Xen Dom 0 References: <20230530150106.2703849-1-ross.lagerwall@citrix.com> <5aae0317-72cf-fc3c-6ce3-7e1fe1d6b699@intel.com> In-Reply-To: <5aae0317-72cf-fc3c-6ce3-7e1fe1d6b699@intel.com> --------------2ixzVvAB9HnBwhVeQi33gWNb Content-Type: multipart/mixed; boundary="------------GMGHe0Snobo2WlCJrgyl044f" --------------GMGHe0Snobo2WlCJrgyl044f Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: base64 T24gMDEuMDYuMjMgMTg6NTcsIERhdmUgSGFuc2VuIHdyb3RlOg0KPiBPbiA1LzMwLzIzIDA4 OjAxLCBSb3NzIExhZ2Vyd2FsbCB3cm90ZToNCj4+IFNpbmNlIGZpcm13YXJlIGRvZXNuJ3Qg aW5kaWNhdGUgdGhlIGlCRlQgaW4gdGhlIEU4MjAsIGFkZCBhIHJlc2VydmVkDQo+PiByZWdp b24gc28gdGhhdCBpdCBnZXRzIGlkZW50aXR5IG1hcHBlZCB3aGVuIHJ1bm5pbmcgYXMgRG9t IDAgc28gdGhhdCBpdA0KPj4gaXMgcG9zc2libGUgdG8gc2VhcmNoIGZvciBpdC4gTW92ZSB0 aGUgY2FsbCB0byByZXNlcnZlX2liZnRfcmVnaW9uKCkNCj4+IGxhdGVyIHNvIHRoYXQgaXQg aXMgY2FsbGVkIGFmdGVyIHRoZSBYZW4gaWRlbnRpdHkgbWFwcGluZyBhZGp1c3RtZW50cw0K Pj4gYXJlIGFwcGxpZWQuDQo+Pg0KPj4gRmluYWxseSwgaW5zdGVhZCBvZiB1c2luZyBpc2Ff YnVzX3RvX3ZpcnQoKSB3aGljaCBkb2Vzbid0IGRvIHRoZSByaWdodA0KPj4gdGhpbmcgdW5k ZXIgWGVuLCB1c2UgZWFybHlfbWVtcmVtYXAoKSBsaWtlIHRoZSBkbWlfc2NhbiBjb2RlIGRv ZXMuDQo+IA0KPiBUaGlzIGlzIGNvbm5lY3RpbmcgWGVuLCBpU0NTSSBhbmQgeDg2LiAgU29t ZSBiYWNrZ3JvdW5kIGhlcmUgd291bGQgYmUNCj4gKnJlYWxseSogbmljZSBmb3IgZHVtbWll cyBsaWtlIG1lIHRoYXQgZGVhbCBoZWF2aWx5IGluIG9ubHkgb25lIG9mIHRob3NlDQo+IHRo cmVlLg0KPiANCj4gT25lIG9yIHR3byBzZW50ZW5jZXMgbGlrZSB0aGlzOg0KPiANCj4gCUZp cm13YXJlIGNhbiBwcm92aWRlIGFuIGlTQ1NJLXNwZWNpZmljIHRhYmxlIGNhbGxlZCB0aGUg aUJGVA0KPiAJd2hpY2ggaGVscHMgdGhlIE9TIGJvb3QgZnJvbSBpU0NTSSBkZXZpY2VzLg0K PiANCj4gY2FuIGdvIGEgbG9uZyB3YXkgZm9yIGR1bW1pZXMgbGlrZSBtZS4gIEFzIGNvdWxk IHNvbWUgYmFja2dyb3VuZCBhYm91dA0KPiB3aHkgdGhpczoNCj4gDQo+IAkuLi4gYWRkIGEg cmVzZXJ2ZWQgcmVnaW9uIHNvIHRoYXQgaXQgZ2V0cyBpZGVudGl0eSBtYXBwZWQgd2hlbg0K PiAJcnVubmluZyBhcyBEb20gMCBzbyB0aGF0IGl0IGlzIHBvc3NpYmxlIHRvIHNlYXJjaCBm b3IgaXQuDQo+IA0KPiBUaGVzZSBhcmUgYWxsIEVuZ2xpc2ggd29yZHMsIGJ1dCBvZmYgdGhl IHRvcCBvZiBteSBoZWFkLCBJIGhhdmUgbm8gaWRlYQ0KPiB3aHkgcmVzZXJ2ZWQgcmVnaW9u cyBnZXQgaWRlbnRpdHkgbWFwcGVkIHdoZW4gcnVubmluZyBhcyBEb20gMCBvciB3aHkNCj4g dGhhdCBtYWtlcyBpdCBwb3NzaWJsZSB0byBzZWFyY2guDQo+IA0KPiBUaGUgYWRkcmVzc2Vz IGFuZCBzaXplIGhlcmU6DQo+IA0KPj4gKyNpZmRlZiBDT05GSUdfSVNDU0lfSUJGVF9GSU5E DQo+PiArCQkvKiBSZXNlcnZlIDAuNSBNaUIgdG8gMSBNaUIgcmVnaW9uIHNvIGlCRlQgY2Fu IGJlIGZvdW5kICovDQo+PiArCQl4ZW5fZTgyMF90YWJsZS5lbnRyaWVzW3hlbl9lODIwX3Rh YmxlLm5yX2VudHJpZXNdLmFkZHIgPSAweDgwMDAwOw0KPj4gKwkJeGVuX2U4MjBfdGFibGUu ZW50cmllc1t4ZW5fZTgyMF90YWJsZS5ucl9lbnRyaWVzXS5zaXplID0gMHg4MDAwMDsNCj4+ ICsJCXhlbl9lODIwX3RhYmxlLmVudHJpZXNbeGVuX2U4MjBfdGFibGUubnJfZW50cmllc10u dHlwZSA9IEU4MjBfVFlQRV9SRVNFUlZFRDsNCj4+ICsJCXhlbl9lODIwX3RhYmxlLm5yX2Vu dHJpZXMrKzsNCj4+ICsjZW5kaWYNCj4gDQo+IGFsc28gYXBwZWFyIHRvIGJlIGNvbmp1cmVk IG91dCBvZiB0aGluIGFpci4NCg0KSSdkIHN1Z2dlc3QgdG8gbW92ZSB0aGUgZGVmaW5pdGlv bnMgb2YgSUJGVF9TVEFSVCBhbmQgSUJGVF9FTkQgZnJvbQ0KZHJpdmVycy9maXJtd2FyZS9p c2NzaV9pYmZ0X2ZpbmQuYyB0byBpbmNsdWRlL2xpbnV4L2lzY3NpX2liZnQuaCBhbmQgdXNl DQp0aGVtIGhlcmUuDQoNCg0KSnVlcmdlbg0K --------------GMGHe0Snobo2WlCJrgyl044f Content-Type: application/pgp-keys; name="OpenPGP_0xB0DE9DD628BF132F.asc" Content-Disposition: attachment; filename="OpenPGP_0xB0DE9DD628BF132F.asc" Content-Description: OpenPGP public key Content-Transfer-Encoding: quoted-printable -----BEGIN PGP PUBLIC KEY BLOCK----- xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjri oyspZKOBycWxw3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2 kaV2KL9650I1SJvedYm8Of8Zd621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i 1TXkH09XSSI8mEQ/ouNcMvIJNwQpd369y9bfIhWUiVXEK7MlRgUG6MvIj6Y3Am/B BLUVbDa4+gmzDC9ezlZkTZG2t14zWPvxXP3FAp2pkW0xqG7/377qptDmrk42GlSK N4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEBAAHNHEp1ZXJnZW4gR3Jvc3Mg PGpnQHBmdXBmLm5ldD7CwHkEEwECACMFAlOMcBYCGwMHCwkIBwMCAQYVCAIJCgsE FgIDAQIeAQIXgAAKCRCw3p3WKL8TL0KdB/93FcIZ3GCNwFU0u3EjNbNjmXBKDY4F UGNQH2lvWAUy+dnyThpwdtF/jQ6j9RwE8VP0+NXcYpGJDWlNb9/JmYqLiX2Q3Tye vpB0CA3dbBQp0OW0fgCetToGIQrg0MbD1C/sEOv8Mr4NAfbauXjZlvTj30H2jO0u +6WGM6nHwbh2l5O8ZiHkH32iaSTfN7Eu5RnNVUJbvoPHZ8SlM4KWm8rG+lIkGurq qu5gu8q8ZMKdsdGC4bBxdQKDKHEFExLJK/nRPFmAuGlId1E3fe10v5QL+qHI3EIP tyfE7i9Hz6rVwi7lWKgh7pe0ZvatAudZ+JNIlBKptb64FaiIOAWDCx1SzR9KdWVy Z2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+wsB5BBMBAgAjBQJTjHCvAhsDBwsJ CAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey/HmQf/RtI7kv5A2PS4 RF7HoZhPVPogNVbC4YA6lW7DrWf0teC0RR3MzXfy6pJ+7KLgkqMlrAbN/8Dvjoz7 8X+5vhH/rDLa9BuZQlhFmvcGtCF8eR0T1v0nC/nuAFVGy+67q2DH8As3KPu0344T BDpAvr2uYM4tSqxK4DURx5INz4ZZ0WNFHcqsfvlGJALDeE0LhITTd9jLzdDad1pQ SToCnLl6SBJZjDOX9QQcyUigZFtCXFst4dlsvddrxyqT1f17+2cFSdu7+ynLmXBK 7abQ3rwJY8SbRO2iRulogc5vr/RLMMlscDAiDkaFQWLoqHHOdfO9rURssHNN8WkM nQfvUewRz80hSnVlcmdlbiBHcm9zcyA8amdyb3NzQG5vdmVsbC5jb20+wsB5BBMB AgAjBQJTjHDXAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/ Ey8PUQf/ehmgCI9jB9hlgexLvgOtf7PJnFOXgMLdBQgBlVPO3/D9R8LtF9DBAFPN hlrsfIG/SqICoRCqUcJ96Pn3P7UUinFG/I0ECGF4EvTE1jnDkfJZr6jrbjgyoZHi w/4BNwSTL9rWASyLgqlA8u1mf+c2yUwcGhgkRAd1gOwungxcwzwqgljf0N51N5Jf VRHRtyfwq/ge+YEkDGcTU6Y0sPOuj4Dyfm8fJzdfHNQsWq3PnczLVELStJNdapwP OoE+lotufe3AM2vAEYJ9rTz3Cki4JFUsgLkHFqGZarrPGi1eyQcXeluldO3m91NK /1xMI3/+8jbO0tsn1tqSEUGIJi7ox80eSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1 c2UuZGU+wsB5BBMBAgAjBQJTjHDrAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgEC F4AACgkQsN6d1ii/Ey+LhQf9GL45eU5vOowA2u5N3g3OZUEBmDHVVbqMtzwlmNC4 k9Kx39r5s2vcFl4tXqW7g9/ViXYuiDXb0RfUpZiIUW89siKrkzmQ5dM7wRqzgJpJ wK8Bn2MIxAKArekWpiCKvBOB/Cc+3EXE78XdlxLyOi/NrmSGRIov0karw2RzMNOu 5D+jLRZQd1Sv27AR+IP3I8U4aqnhLpwhK7MEy9oCILlgZ1QZe49kpcumcZKORmzB TNh30FVKK1EvmV2xAKDoaEOgQB4iFQLhJCdP1I5aSgM5IVFdn7v5YgEYuJYx37Io N1EblHI//x/e2AaIHpzK5h88NEawQsaNRpNSrcfbFmAg987ATQRTjHAWAQgAyzH6 AOODMBjgfWE9VeCgsrwH3exNAU32gLq2xvjpWnHIs98ndPUDpnoxWQugJ6MpMncr 0xSwFmHEgnSEjK/PAjppgmyc57BwKII3sV4on+gDVFJR6Y8ZRwgnBC5mVM6JjQ5x Dk8WRXljExRfUX9pNhdE5eBOZJrDRoLUmmjDtKzWaDhIg/+1Hzz93X4fCQkNVbVF LELU9bMaLPBG/x5q4iYZ2k2ex6d47YE1ZFdMm6YBYMOljGkZKwYde5ldM9mo45mm we0icXKLkpEdIXKTZeKDO+Hdv1aqFuAcccTg9RXDQjmwhC3yEmrmcfl0+rPghO0I v3OOImwTEe4co3c1mwARAQABwsBfBBgBAgAJBQJTjHAWAhsMAAoJELDendYovxMv Q/gH/1ha96vm4P/L+bQpJwrZ/dneZcmEwTbe8YFsw2V/Buv6Z4Mysln3nQK5ZadD 534CF7TDVft7fC4tU4PONxF5D+/tvgkPfDAfF77zy2AH1vJzQ1fOU8lYFpZXTXIH b+559UqvIB8AdgR3SAJGHHt4RKA0F7f5ipYBBrC6cyXJyyoprT10EMvU8VGiwXvT yJz3fjoYsdFzpWPlJEBRMedCot60g5dmbdrZ5DWClAr0yau47zpWj3enf1tLWaqc suylWsviuGjKGw7KHQd3bxALOknAp4dN3QwBYCKuZ7AddY9yjynVaD5X7nF9nO5B jR/i1DG86lem3iBDXzXsZDn8R38=3D =3D2wuH -----END PGP PUBLIC KEY BLOCK----- --------------GMGHe0Snobo2WlCJrgyl044f-- --------------2ixzVvAB9HnBwhVeQi33gWNb-- --------------Cwbt90mJHsJsLjAP8FmpghOn Content-Type: application/pgp-signature; name="OpenPGP_signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="OpenPGP_signature" -----BEGIN PGP SIGNATURE----- wsB5BAABCAAjFiEEhRJncuj2BJSl0Jf3sN6d1ii/Ey8FAmR5hvcFAwAAAAAACgkQsN6d1ii/Ey+x /gf6AkOb1VnquAu0exCaTE9S55Td1Fr8djwzPygVCiGKvoryAzRca3B2buFkUwgKZBweR1r6fX13 8hbuRe1tr/YBuafg8+gyLRgtjwQETw0w8sCVtc3MrlH6/BxNKsCpbFFvBqSeZFiCc4Ilwi1j309X Spc0qBwqN24ENn4duoR/AYUg6Gc0LkXflYL99iGYnslyzWcqAFH9R6nxyBRtrLsNA8y8f/vUbAFj ynad89gKWMBFntFhdgakhXNjkEy9hchwJ6hv2jSZu4fnyrJxo+L75GSJCeB/moou65nERaJei7cf YY6BnpNdjz64wAVARoo8gYbg6wtSsi3XuD6i3J7Rmg== =xQUA -----END PGP SIGNATURE----- --------------Cwbt90mJHsJsLjAP8FmpghOn-- From xen-devel-bounces@lists.xenproject.org Fri Jun 02 06:29:35 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 02 Jun 2023 06:29:35 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542947.847416 (Exim 4.92) (envelope-from ) id 1q4yHo-00030a-BE; Fri, 02 Jun 2023 06:29:20 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542947.847416; Fri, 02 Jun 2023 06:29:20 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4yHo-00030T-8P; Fri, 02 Jun 2023 06:29:20 +0000 Received: by outflank-mailman (input) for mailman id 542947; Fri, 02 Jun 2023 06:25:38 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4yEE-0002xb-8J for xen-devel@lists.xen.org; Fri, 02 Jun 2023 06:25:38 +0000 Received: from mail-wr1-x432.google.com (mail-wr1-x432.google.com [2a00:1450:4864:20::432]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 48bc32ed-010e-11ee-8611-37d641c3527e; Fri, 02 Jun 2023 08:25:35 +0200 (CEST) Received: by mail-wr1-x432.google.com with SMTP id ffacd0b85a97d-30af159b433so1650699f8f.3 for ; Thu, 01 Jun 2023 23:25:35 -0700 (PDT) Received: from localhost (i5C7416B4.versanet.de. [92.116.22.180]) by smtp.gmail.com with ESMTPSA id c1-20020a5d4cc1000000b002fda1b12a0bsm680309wrt.2.2023.06.01.23.25.34 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Thu, 01 Jun 2023 23:25:34 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 48bc32ed-010e-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1685687135; x=1688279135; h=in-reply-to:references:from:to:cc:subject:message-id:date :content-transfer-encoding:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=58IFbC3rmymPwKUDuCiKppnQO9rXalByrp299fjIUgI=; b=DKz/ZAsjlmHbi94x/tVKo2Sp2yjV5EOxf4cbxC9/pheLlRv/Sx2rNJHc2jgtTwoAPb 5u0HbBOX71UNo+OTxtZcS8sYpTAg1TOyvJjS8MPhwP6PFO5JwCuB7YT4eMx+6qiYkS48 kr4UqKsHhwPBVJXei7lwYlh7xsBjkKplSv+PSqDUA1JEn8Ppsq3qBy58ZGSMRfpV4rwK RvSuW22IWoDU67zKWpP3/T6f32IG+ZU9270YBwrUBojsq9uPfvBBo8sfXvAKl2nrduHt m9dgjQHEfGNx5G2bo3xYxKuebaXv0qikHH2628d+a/ZekVcErOgOsbwvj3tM71cS1yrN wZvA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1685687135; x=1688279135; h=in-reply-to:references:from:to:cc:subject:message-id:date :content-transfer-encoding:mime-version:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=58IFbC3rmymPwKUDuCiKppnQO9rXalByrp299fjIUgI=; b=WoO7GoE2WG1iXiruMrYetUtWWYeuxqVUeieG6ERYtpVB6Fx01HcYS8CMZkOWTreoyB eiTwgKcmC7QmLhmyA1JdBnqL3p6GbJyqXwQUos8RfrNNqE/lU1XLBf27Sp8mtYjkRRGD 06F1KncloLnp+wygEdFXG7TfvrSHQJvdI4zhdkRNjUwnT/Gb77sw6CMNhvMGwm4/gPKo tRCQ81w5ks0DxyzZHXgx6EYErhccBS1pwGe1uMbDYVRCXLaFdceAZBfEoexh0vSZiXHG ArVaOcrw6G/pDoDcMvxcGEyx68/KTSGNtoZsvE9EbeW/PAmh/Aguqh9cLiXjK9UIR8af 8ZSg== X-Gm-Message-State: AC+VfDzg2YhZrBoyRK5mcFEcJP9wNPVWymlFVApeUXntCjY8UB9vUCDG z+KXmXVs/bXmIy2BU9vKzQEcpw== X-Google-Smtp-Source: ACHHUZ7Dz5svt06tw7VP0rFLJ2p16Ivfru7W5kxXVEovFpZzm03uv4pBzr7nvIQo+juncjgCJSHI/A== X-Received: by 2002:a05:6000:cc:b0:30a:dd26:63cd with SMTP id q12-20020a05600000cc00b0030add2663cdmr4318792wrx.5.1685687135259; Thu, 01 Jun 2023 23:25:35 -0700 (PDT) Mime-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=UTF-8 Date: Fri, 02 Jun 2023 08:25:34 +0200 Message-Id: Subject: Re: [PATCH V3 3/3] libxl: arm: Add grant_usage parameter for virtio devices Cc: "Vincent Guittot" , , =?utf-8?q?Alex_Benn=C3=A9e?= , "Mathieu Poirier" , "Oleksandr Tyshchenko" To: "Viresh Kumar" , , "Juergen Gross" , "Julien Grall" , "Anthony PERARD" From: "Erik Schilling" X-Mailer: aerc 0.14.0 References: <0e347b2f4817cc578a5f8e41bf70503ae8cf69e3.1685684586.git.viresh.kumar@linaro.org> In-Reply-To: <0e347b2f4817cc578a5f8e41bf70503ae8cf69e3.1685684586.git.viresh.kumar@linaro.org> > diff --git a/tools/golang/xenlight/helpers.gen.go b/tools/golang/xenlight= /helpers.gen.go > index 0a203d22321f..bf846dca8ec0 100644 > --- a/tools/golang/xenlight/helpers.gen.go > +++ b/tools/golang/xenlight/helpers.gen.go > @@ -1792,6 +1792,9 @@ func (x *DeviceVirtio) fromC(xc *C.libxl_device_vir= tio) error { > x.BackendDomname =3D C.GoString(xc.backend_domname) > x.Type =3D C.GoString(xc._type) > x.Transport =3D VirtioTransport(xc.transport) > +if err :=3D x.GrantUsage.fromC(&xc.grant_usage);err !=3D nil { NITPICK: space after ; seems missing. > +return fmt.Errorf("converting field GrantUsage: %v", err) > +} > x.Devid =3D Devid(xc.devid) > x.Irq =3D uint32(xc.irq) > x.Base =3D uint64(xc.base) > @@ -1809,6 +1812,9 @@ xc.backend_domname =3D C.CString(x.BackendDomname)} > if x.Type !=3D "" { > xc._type =3D C.CString(x.Type)} > xc.transport =3D C.libxl_virtio_transport(x.Transport) > +if err :=3D x.GrantUsage.toC(&xc.grant_usage); err !=3D nil { Here it exists. - Erik From xen-devel-bounces@lists.xenproject.org Fri Jun 02 06:30:42 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 02 Jun 2023 06:30:42 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542952.847425 (Exim 4.92) (envelope-from ) id 1q4yIx-0004O4-LD; Fri, 02 Jun 2023 06:30:31 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542952.847425; Fri, 02 Jun 2023 06:30:31 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4yIx-0004Nx-IY; Fri, 02 Jun 2023 06:30:31 +0000 Received: by outflank-mailman (input) for mailman id 542952; Fri, 02 Jun 2023 06:30:30 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4yIw-0004Nh-54 for xen-devel@lists.xen.org; Fri, 02 Jun 2023 06:30:30 +0000 Received: from mail-pl1-x62c.google.com (mail-pl1-x62c.google.com [2607:f8b0:4864:20::62c]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id f6934f8d-010e-11ee-8611-37d641c3527e; Fri, 02 Jun 2023 08:30:28 +0200 (CEST) Received: by mail-pl1-x62c.google.com with SMTP id d9443c01a7336-1b0236ee816so13752875ad.1 for ; Thu, 01 Jun 2023 23:30:28 -0700 (PDT) Received: from localhost ([122.172.87.195]) by smtp.gmail.com with ESMTPSA id n11-20020a170902e54b00b001aae909cfbbsm482144plf.119.2023.06.01.23.30.25 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 01 Jun 2023 23:30:26 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: f6934f8d-010e-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1685687426; x=1688279426; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:from:to:cc:subject:date:message-id:reply-to; bh=ZF0pyhlfZOEeF2DRc3+vWvjGlAlybF3vak/OvMaBMKc=; b=QaGp+6nrJpmVkHmgc+a5VaWRWGvCSPzcO6R4dWdFMxTFdLwPpmT7rB9jpc0tSHBiI2 PIwFk7uxsQYKR9i3oFUDdFK4NJhD+gUNWraETvioK1yC233qeAVcT7NLl5RgfUwLs+2j u0737oBW4EkDZ9NJzoQV5VuRAsbg8HF6+7oDEfl7aBlewliXh2DVbzn7E0IdPF1jkhfa a5MMnHQ+n+41RLiQo8JIqK6E7E3xVEcJ4juNO5uuqv1XJVG6IJZafNeExkHLHArnNBbn 50tiYg54Qw5qCXLWzZGpFY7UgEIf5AQnYzFG6bBKFN3bDfcy7Bk9Pv5WmzGDfCIYBYtZ EYZw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1685687426; x=1688279426; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=ZF0pyhlfZOEeF2DRc3+vWvjGlAlybF3vak/OvMaBMKc=; b=b9qi1AXEBl35W/N5lRKU1jrlu8eNAGuipbenp9WVZoDvA0R4UfUzNUrm5FLgeQPlIL DdEXUJVyEU8ZcJqcKZ2fly/D8ZSJzHKfHrWjvGXUY6OoSQVjhpiSCW9LfaL6tKCHfvDj LPNj+7XNeDAhi8yr9ht/74V9UEIT9W34lo06SUQJwcoOyBkfsNVPhVNAPQhm3oysAYKy WzNliH4RltYmRYXs3maMInPntLdarxr5BfqeJsGF+kZFvoQ9UNLMzF4+zX49Akg8K/Eq +VlsAeF3DWtQNDR8zeeNvdNtKlobohhf+JeiDkzNPKgzgI5RT2LSvioHPtOtUS9suErk clOw== X-Gm-Message-State: AC+VfDw8odlL6yHct9x5l8nxnbZDl+D7RABDmj9dCiP55mjzDG2btnxE PtIyUO9nxvE8cRR06jSUsisUvQ== X-Google-Smtp-Source: ACHHUZ63LNzRwcO2abRuiOA8QrVpY3t9/W4uAlc9/tcNlz7AcmWdx6D3cmEj8dQw/VJ4YMEqw1RnVw== X-Received: by 2002:a17:903:230e:b0:1b0:4c6c:716 with SMTP id d14-20020a170903230e00b001b04c6c0716mr1820086plh.4.1685687426668; Thu, 01 Jun 2023 23:30:26 -0700 (PDT) Date: Fri, 2 Jun 2023 12:00:24 +0530 From: Viresh Kumar To: Erik Schilling Cc: xen-devel@lists.xen.org, Juergen Gross , Julien Grall , Anthony PERARD , Vincent Guittot , stratos-dev@op-lists.linaro.org, Alex =?utf-8?Q?Benn=C3=A9e?= , Mathieu Poirier , Oleksandr Tyshchenko Subject: Re: [PATCH V3 3/3] libxl: arm: Add grant_usage parameter for virtio devices Message-ID: <20230602063024.mku6gmztqt7sps4t@vireshk-i7> References: <0e347b2f4817cc578a5f8e41bf70503ae8cf69e3.1685684586.git.viresh.kumar@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: On 02-06-23, 08:25, Erik Schilling wrote: > > diff --git a/tools/golang/xenlight/helpers.gen.go b/tools/golang/xenlight/helpers.gen.go > > index 0a203d22321f..bf846dca8ec0 100644 > > --- a/tools/golang/xenlight/helpers.gen.go > > +++ b/tools/golang/xenlight/helpers.gen.go > > @@ -1792,6 +1792,9 @@ func (x *DeviceVirtio) fromC(xc *C.libxl_device_virtio) error { > > x.BackendDomname = C.GoString(xc.backend_domname) > > x.Type = C.GoString(xc._type) > > x.Transport = VirtioTransport(xc.transport) > > +if err := x.GrantUsage.fromC(&xc.grant_usage);err != nil { > > NITPICK: space after ; seems missing. This is an auto-generated file, perhaps the script has a bug :) -- viresh From xen-devel-bounces@lists.xenproject.org Fri Jun 02 07:09:49 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 02 Jun 2023 07:09:49 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542956.847435 (Exim 4.92) (envelope-from ) id 1q4yug-0007xa-IT; Fri, 02 Jun 2023 07:09:30 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542956.847435; Fri, 02 Jun 2023 07:09:30 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4yug-0007xT-FZ; Fri, 02 Jun 2023 07:09:30 +0000 Received: by outflank-mailman (input) for mailman id 542956; Fri, 02 Jun 2023 07:09:29 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4yuf-0007xM-2f for xen-devel@lists.xenproject.org; Fri, 02 Jun 2023 07:09:29 +0000 Received: from NAM02-SN1-obe.outbound.protection.outlook.com (mail-sn1nam02on20614.outbound.protection.outlook.com [2a01:111:f400:7ea9::614]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 68c08ef9-0114-11ee-b232-6b7b168915f2; Fri, 02 Jun 2023 09:09:26 +0200 (CEST) Received: from DM6PR08CA0043.namprd08.prod.outlook.com (2603:10b6:5:1e0::17) by SJ2PR12MB7919.namprd12.prod.outlook.com (2603:10b6:a03:4cc::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6433.24; Fri, 2 Jun 2023 07:09:21 +0000 Received: from CY4PEPF0000EE33.namprd05.prod.outlook.com (2603:10b6:5:1e0:cafe::dd) by DM6PR08CA0043.outlook.office365.com (2603:10b6:5:1e0::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.26 via Frontend Transport; Fri, 2 Jun 2023 07:09:21 +0000 Received: from SATLEXMB04.amd.com (165.204.84.17) by CY4PEPF0000EE33.mail.protection.outlook.com (10.167.242.39) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6455.18 via Frontend Transport; Fri, 2 Jun 2023 07:09:20 +0000 Received: from SATLEXMB08.amd.com (10.181.40.132) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Fri, 2 Jun 2023 02:09:20 -0500 Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB08.amd.com (10.181.40.132) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Fri, 2 Jun 2023 00:09:20 -0700 Received: from [10.71.193.39] (10.180.168.240) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server id 15.1.2375.34 via Frontend Transport; Fri, 2 Jun 2023 02:09:19 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 68c08ef9-0114-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=AbvwT0Ji+TumX+WJvb6StShDmYPR51rnP0y0gJJYdguRt/XiudG5Ra0F8Sjt7s6NyNRzg8gKj79YSSjhwvaRcNPpbjLJhyvyYIVX2GCSEh3pCFexEHLwfUJFlt/QcsSU9eNCCNjvEpq6Hs7oPdlo7xpgOrSl20Q+CyJ/l7UFh6sP765yNfKkfjhSC+5DfH1hyW/Xg+24qyky2Uqkve8apsVdicA5DGUeSnUrx3IoXSPCoovoSLEmnjNsMCjliGLQsdPv6pSfPenZ40OwwXSwQnivbbzXU4NFo3Qny+Y8MNMUAw+xT4+6hP/PvQsyGYMWBO8bsfcS1/7V8McAsHXZoA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=bpQ2ws80CQNTUwzp0GOLgnlRBVQVxMNSRqvNtb6G+5c=; b=iRVJB0Ie4MbMWDLv4KschkqMz4Va24PFHskgE+csHxl4rVea7RPLrOcptavXVEX2dxOozo/+Cc9U36ArUilWynZBMBx/T01zQNqIZ4A4tkSr3+oCjTxByEEeqYMp5rQoRyb0ma3nakDdh3hV3au2nCo6HbAG5+evBk46z4wcIhDaul8HoYABmcdH41/KtKkiqSorGMRfKyU7xBSOC3bxtPfQD9ledoC2aj4mRH7WOjJiuqvG3X+5SzObRGPU+Vie0T8kcaYrIpg0WpYPLlJX/gDTQ7K3dKr//Si2oFpkaYlGsTYgP4cUD/6KMbt9qwui8/Ymg9NUkiUesPdcQD4WyQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=bpQ2ws80CQNTUwzp0GOLgnlRBVQVxMNSRqvNtb6G+5c=; b=eSl1YzW0GnLmtIHAV21IafrdhRwdkAzHHmj1KFeNwDC+Ok1mHo5Q4P7vD9xYEaE2ltTFgiaXePoYPhu2qfcDgOArVRkVJ3FQTnt45zCmmgE4GcsT7M+/EdRzckS6TBEQTDI9hDHkV+MoJMiHM45NwpmF0xM+rj+ux1X4ZrudnwY= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C Message-ID: Date: Fri, 2 Jun 2023 09:09:18 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [XEN][PATCH v7 01/19] common/device_tree: handle memory allocation failure in __unflatten_device_tree() To: Vikram Garhwal , CC: , , Julien Grall References: <20230602004824.20731-1-vikram.garhwal@amd.com> <20230602004824.20731-2-vikram.garhwal@amd.com> Content-Language: en-US From: Michal Orzel In-Reply-To: <20230602004824.20731-2-vikram.garhwal@amd.com> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CY4PEPF0000EE33:EE_|SJ2PR12MB7919:EE_ X-MS-Office365-Filtering-Correlation-Id: b0b87fb8-b128-4b3f-2d2e-08db633849d4 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: Oeo23ejUX3zn2LKf6aBPpm7G3npI5oyux4KNbXgiYNKqPzkD5hN55YdUflaDUUcPRPOd/iBxuC4Ktuq/nIcC8H+kGTH+4TXAwrpkYw05JPPGtxo/yr2a+tC/K8JBNBq6kqmUG5bsMpzLt59kazYa0R8Hpxn6fMRQ+LpNzQag8GEsCa1zCHSupffAaIclxSwC9K5s4XuHfUesPwVsimg6bVPUfBDBJgJwVUnM846+66XteaIBL87cpTuMdhY5xnPYd0z4Jr2cIGjzYwch+J3DOE61Nft8plLr5oclTX+fcHjOyQb/ILMJIU+4QdWy1ZZLNC664Z8gLSKQ1G2fw40m4NaycggvgPKj/19D/OYmqwKcpnototMEFk8O/SSd0upMCDiSbA9xRPXm2W4RR4Lpf44MhO0KLazWtCX5JsrHzd8UA5v0cxxkSohzRFRq/1vl4AHrrphO9FOSOntel+o6QxHqopQjC0upAGoPuaE8noolc/vqyRf2AJlb9XfWy6MO6XdvLXLMur0wjssk+dN4aiQ+3YlwQdhABhaTqANwbvxh3/gYiWMPrDy0vV5gjhu43OcIibdUz1O4dZgL1W20j1hhjLLsx7kBtlIg9jgM3wFfrLCq6Jskp6/K5bS0KxRlCzihkc1mwCk+nBVveTIeNZYTXjRKQx8JJjBKa0bXVz2+yWXkQjopvZXjZ92VUn3ITXhRjeUrky7p8eZg/2R5/Hoy9tskcLYEJcSbsRgeBBOWzXwrQGVa4DGxSH2z/Fsx7nuGyvmYgAYVs07A43veQD+Sj+P00NFth964Er6EvqI= X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(346002)(39860400002)(396003)(376002)(136003)(451199021)(36840700001)(46966006)(40470700004)(40460700003)(478600001)(36860700001)(186003)(336012)(83380400001)(36756003)(53546011)(426003)(47076005)(86362001)(31696002)(82310400005)(2616005)(81166007)(40480700001)(356005)(26005)(82740400003)(316002)(41300700001)(4326008)(70586007)(31686004)(44832011)(70206006)(8676002)(4744005)(5660300002)(2906002)(16576012)(110136005)(54906003)(8936002)(36900700001)(43740500002);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Jun 2023 07:09:20.9923 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: b0b87fb8-b128-4b3f-2d2e-08db633849d4 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com] X-MS-Exchange-CrossTenant-AuthSource: CY4PEPF0000EE33.namprd05.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ2PR12MB7919 On 02/06/2023 02:48, Vikram Garhwal wrote: > Change __unflatten_device_tree() return type to integer so it can propagate > memory allocation failure. Add panic() in dt_unflatten_host_device_tree() for > memory allocation failure during boot. > > Fixes: fb97eb614acf ("xen/arm: Create a hierarchical device tree") > NIT: no blank line here > Signed-off-by: Vikram Garhwal > Reviewed-by: Henry Wang Reviewed-by: Michal Orzel ~Michal From xen-devel-bounces@lists.xenproject.org Fri Jun 02 07:14:41 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 02 Jun 2023 07:14:41 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542961.847445 (Exim 4.92) (envelope-from ) id 1q4yzb-000127-8D; Fri, 02 Jun 2023 07:14:35 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542961.847445; Fri, 02 Jun 2023 07:14:35 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4yzb-000120-5S; Fri, 02 Jun 2023 07:14:35 +0000 Received: by outflank-mailman (input) for mailman id 542961; Fri, 02 Jun 2023 07:14:34 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4yza-00011s-Or for xen-devel@lists.xenproject.org; Fri, 02 Jun 2023 07:14:34 +0000 Received: from NAM12-DM6-obe.outbound.protection.outlook.com (mail-dm6nam12on2062c.outbound.protection.outlook.com [2a01:111:f400:fe59::62c]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 1f52294b-0115-11ee-b232-6b7b168915f2; Fri, 02 Jun 2023 09:14:33 +0200 (CEST) Received: from BN0PR10CA0006.namprd10.prod.outlook.com (2603:10b6:408:143::32) by DM4PR12MB5312.namprd12.prod.outlook.com (2603:10b6:5:39d::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.24; Fri, 2 Jun 2023 07:14:30 +0000 Received: from BN8NAM11FT023.eop-nam11.prod.protection.outlook.com (2603:10b6:408:143:cafe::25) by BN0PR10CA0006.outlook.office365.com (2603:10b6:408:143::32) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.24 via Frontend Transport; Fri, 2 Jun 2023 07:14:30 +0000 Received: from SATLEXMB04.amd.com (165.204.84.17) by BN8NAM11FT023.mail.protection.outlook.com (10.13.177.103) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6455.23 via Frontend Transport; Fri, 2 Jun 2023 07:14:29 +0000 Received: from SATLEXMB06.amd.com (10.181.40.147) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Fri, 2 Jun 2023 02:14:29 -0500 Received: from SATLEXMB04.amd.com (10.181.40.145) by SATLEXMB06.amd.com (10.181.40.147) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Fri, 2 Jun 2023 02:14:29 -0500 Received: from [10.71.193.39] (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server id 15.1.2375.34 via Frontend Transport; Fri, 2 Jun 2023 02:14:28 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 1f52294b-0115-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=YD7SRBTlCfUB7LicxWST+Z0tHtmZzsHxq7id8nzLrcPMk8kqel0N43dKlIaBU6WF8weL+NfBAyHK5Sb6NcbjqmUDnGlVBnrv+ZYXWKgpwXxlFvcF0ArGJpFqjtKZc98MHLmfx6/33f1nKX37Ym2MbNr4FK2u78T161xtV/ijqIGDo3JBcImnQ6BD2cDY5HmshFDr0HikTfsVes+MdwDEli/1n3Lgdep1PnM+V5SNpDBDXnkBVmy9PWniPi7pX2idwiocxnta5nIeKdyyFdso/40DQqwLUjlQNL0BYtM27N0L9IQxAu4XmUL10XXEpV402TQMuswtecxmyaCDvluA9A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=r6jZ7rt2j6wcQAhRh4qz8ScSit6naE6QBba7jRqA9Ks=; b=KubQn5SsTGmK0JuP3PVuSclRRJoHyix6DZU9xgY6PbvdMaIavlyiMvzs2XEjyowUUmwjiPdEY5SnbTKpVDaUVdSMUynV8clRFjvq9xE/Ht0O5Wza57L/8VcZC3oUrxH6ZsYGE4KFUF0hyfAT9zEpYq5BKRUHMD8qs+wUmQTUX/4R6G85Vo39qW1e91nClcTDFqzUW6h5CBgkWAYTrpguvCr0Fj1RGqFPAAeLFPrHaw+NgxnJcYEysUd5iXG9qGnZ+UV5SM+mXw9Fzlg73q4iNZ5h8SMo+xnveD9whHsISmu1pfjql2MEx3/O8ttAUh6yKeknd+yILRZAz66q1byuvg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=r6jZ7rt2j6wcQAhRh4qz8ScSit6naE6QBba7jRqA9Ks=; b=qdiTT+DZy4m9N3yzedqW6xTR23ZD9ZR9cb1TNsZ6jGlWgiopGPBoSVHycxTaIHiMGIl6H7GQzeVAOyR7clJxyPyU/MrDPrvplZDgDU3QzVTFN6Z5Kpq0t/yyywD/tCy63fFKNlzh1cGj186YD7cDCso6Fa5ibYq6GelRPazHmZw= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C Message-ID: <4a24e070-18d8-8f48-465a-10a0108a7cc2@amd.com> Date: Fri, 2 Jun 2023 09:14:27 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [XEN][PATCH v7 02/19] common/device_tree.c: unflatten_device_tree() propagate errors Content-Language: en-US To: Vikram Garhwal , CC: , , Julien Grall References: <20230602004824.20731-1-vikram.garhwal@amd.com> <20230602004824.20731-3-vikram.garhwal@amd.com> From: Michal Orzel In-Reply-To: <20230602004824.20731-3-vikram.garhwal@amd.com> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BN8NAM11FT023:EE_|DM4PR12MB5312:EE_ X-MS-Office365-Filtering-Correlation-Id: 914aaa51-5406-4380-be4c-08db633901d9 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: qudIHFkJCQ2iV5pSrGdEHru14N4pUHVkzCMP6spBWqu6fO/iy/BFY7gpvdrSVo3q3JebbDIU+YpO5s+iXIlcAHQNMwT8//x3tiK2MUIrLicmWrOZh/jSIOcBrjcHiyY/epxSLlVfLOSTpqdMKNzSbEUs+B7WNxYaLZeTGs+IIqY5CVtcIVjajrzt2wvl6aiRPaYATlPwgHv7H8eq6JImukeyI8JnM0bJeZJUGgDSTbb7Tv6YskUA5eSplZw23sSwB0W02OQKVIYAb8rO+f/Xa9tGNd/YFfpJ7oFjybjUf4d3k23f3guSm68iyrOQg2Fj7MZ9AER0SpAlUlloPIpboYg5qxLBHpCuMGIk0F++z04IdhwnESIBopMmHZPnAHoOQUqd7LgYh5MpODxUIHd+CPEcxUSbH+PzoAztApj4NMXl5o61llMVtamaWG+f+KZuMC0L+nsnok+cA6CMvFDvOoorVaRbJ3rbb9rRhevOv0c0gvJSk194bw7Xfl6+NWOkxXsxbW4zL/OiXMpG2FcZ5KFljPLmN/td1NoOCYeZyvzR7VUUvIkPASuQpt1CZNinEv+cJs9iT76mtnla5MqfGaBONCjB+RRRWAHHIpUuq/o2fujhC9WVu0N6ausGBkABUX+ylJDgzsDuCn3UHvC3ZHa3WR+oWCfPQkTUuTJ4rgjJCofPBqiw07xuBabQVXuqHE0pxyIJGbhFRO6zBgCwAkq6gDq3Bmg57YDtfq3NtbqF98+PLRsM0hh9e51OEVbi/T6QstYfYipAl9aSWscukSuxjGkYShxm4c1NVU8z/aubJHzCRz/CJ3xL5aez/5JE X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(136003)(39860400002)(396003)(376002)(346002)(451199021)(40470700004)(36840700001)(46966006)(82310400005)(36860700001)(44832011)(26005)(41300700001)(40480700001)(36756003)(316002)(81166007)(82740400003)(356005)(110136005)(40460700003)(54906003)(16576012)(4326008)(426003)(336012)(2616005)(5660300002)(53546011)(86362001)(70206006)(31686004)(186003)(31696002)(70586007)(2906002)(83380400001)(8676002)(8936002)(47076005)(478600001)(36900700001)(43740500002);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Jun 2023 07:14:29.7921 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 914aaa51-5406-4380-be4c-08db633901d9 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com] X-MS-Exchange-CrossTenant-AuthSource: BN8NAM11FT023.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR12MB5312 Title: s/unflatten_device_tree/__unflatten_device_tree/ or you mean to propagate errors from unflatten_dt_node? On 02/06/2023 02:48, Vikram Garhwal wrote: > This will be useful in dynamic node programming when new dt nodes are unflattend > during runtime. Invalid device tree node related errors should be propagated > back to the caller. > > Signed-off-by: Vikram Garhwal > Reviewed-by: Henry Wang > --- > xen/common/device_tree.c | 15 +++++++++++++-- > 1 file changed, 13 insertions(+), 2 deletions(-) > > diff --git a/xen/common/device_tree.c b/xen/common/device_tree.c > index dfdb10e488..117ccccb09 100644 > --- a/xen/common/device_tree.c > +++ b/xen/common/device_tree.c > @@ -2108,6 +2108,9 @@ static int __init __unflatten_device_tree(const void *fdt, > /* First pass, scan for size */ > start = ((unsigned long)fdt) + fdt_off_dt_struct(fdt); > size = unflatten_dt_node(fdt, 0, &start, NULL, NULL, 0); > + if ( !size ) > + return -EINVAL; > + > size = (size | 3) + 1; > > dt_dprintk(" size is %#lx allocating...\n", size); > @@ -2125,11 +2128,19 @@ static int __init __unflatten_device_tree(const void *fdt, > start = ((unsigned long)fdt) + fdt_off_dt_struct(fdt); > unflatten_dt_node(fdt, mem, &start, NULL, &allnextp, 0); > if ( be32_to_cpup((__be32 *)start) != FDT_END ) > - printk(XENLOG_WARNING "Weird tag at end of tree: %08x\n", > + { > + printk(XENLOG_ERR "Weird tag at end of tree: %08x\n", > *((u32 *)start)); > + return -EINVAL; What about memory that we allocated? Shouldn't it be freed in case of these two errors? For now it is called from boot so we do panic but later in this series this could result in a memory leak. Am I correct? > + } > + > if ( be32_to_cpu(((__be32 *)mem)[size / 4]) != 0xdeadbeef ) > - printk(XENLOG_WARNING "End of tree marker overwritten: %08x\n", > + { > + printk(XENLOG_ERR "End of tree marker overwritten: %08x\n", > be32_to_cpu(((__be32 *)mem)[size / 4])); > + return -EINVAL; > + } > + > *allnextp = NULL; > > dt_dprintk(" <- unflatten_device_tree()\n"); ~Michal From xen-devel-bounces@lists.xenproject.org Fri Jun 02 07:15:51 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 02 Jun 2023 07:15:51 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542965.847456 (Exim 4.92) (envelope-from ) id 1q4z0f-0001av-IM; Fri, 02 Jun 2023 07:15:41 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542965.847456; Fri, 02 Jun 2023 07:15:41 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4z0f-0001ao-FQ; Fri, 02 Jun 2023 07:15:41 +0000 Received: by outflank-mailman (input) for mailman id 542965; Fri, 02 Jun 2023 07:15:40 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4z0e-0001aT-3p for xen-devel@lists.xenproject.org; Fri, 02 Jun 2023 07:15:40 +0000 Received: from NAM10-DM6-obe.outbound.protection.outlook.com (mail-dm6nam10on20628.outbound.protection.outlook.com [2a01:111:f400:7e88::628]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 46e1e8bc-0115-11ee-b232-6b7b168915f2; Fri, 02 Jun 2023 09:15:39 +0200 (CEST) Received: from DS7PR03CA0053.namprd03.prod.outlook.com (2603:10b6:5:3b5::28) by SN7PR12MB8604.namprd12.prod.outlook.com (2603:10b6:806:273::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6433.23; Fri, 2 Jun 2023 07:15:35 +0000 Received: from DM6NAM11FT018.eop-nam11.prod.protection.outlook.com (2603:10b6:5:3b5:cafe::a8) by DS7PR03CA0053.outlook.office365.com (2603:10b6:5:3b5::28) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.24 via Frontend Transport; Fri, 2 Jun 2023 07:15:35 +0000 Received: from SATLEXMB03.amd.com (165.204.84.17) by DM6NAM11FT018.mail.protection.outlook.com (10.13.172.110) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6455.26 via Frontend Transport; Fri, 2 Jun 2023 07:15:35 +0000 Received: from SATLEXMB04.amd.com (10.181.40.145) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Fri, 2 Jun 2023 02:15:33 -0500 Received: from [10.71.193.39] (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server id 15.1.2375.34 via Frontend Transport; Fri, 2 Jun 2023 02:15:32 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 46e1e8bc-0115-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Ik9PAUH2ER59trU6qI1AK9A7s2r6dUUwIqXmpdztfsURT12RXYhI9HWNTbo0t/nvmP22tQOKSWvXw9M3vD4+26cBNrwDW2J5Mv2faG28tHb/m0XqB+QfmURFeyADbOLTLWDI66FY0mb/B70Jnc5ajNsbkg3NOIkirqUI9YzyUpI5lvMJMxq/cbWVEr3oIFE7Q1Gz5zq0AzC2pc8/v+N8ZBPgHRyrYMhiNiTQPaJszihlzrKyqKjMHHlaA4v2HoyBJ4hXJEQUfpeEuk8G8xkQUX6Qzjujyjbw9T3VEII+XlnKJ5j3gNXFnW1OIGp/NN87v2l92kPd1Prza3iyFqpO4g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=Wt5Rn66YiJBlqZsbSlbNk4FsfyGdWeejA0kQB/xLMrY=; b=OS4Ow0Vc/AdyfHbFQ46gtw1+LbInV/Uef+ZYX/20Zp4BZd8d5YqtAkvEOQ4t6xmU0e0etH7VeNnMMd8UTujNo42iU6EEWefj9+hFGQOFit9uLho7lReVCr037b0AVRGuAu2tAYxfsrpITerydKCiMpQUO6Z1uvuevtr39DiHnVfRui1P2PSbsjZeu8GjPGSJtvtSnMJtGIyLJiPUy8hnTLniePumQOPQtC4l9ZQv/OP5y5bhpZhIDpNR8SBcHRY+dO99NpBUP+JEQPhDvNXhN11sAF/PmI8gDMuW0VMUuNaOsdXlvO/HJQ5Dzy3u/H6z71C48d+xNj8vT1pJCiljWg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Wt5Rn66YiJBlqZsbSlbNk4FsfyGdWeejA0kQB/xLMrY=; b=x9PbORDMjPJtVBkp4RjR3DmvOI3FMZ7oT7iPDkZpKGakaDekAUebcPSbEZHJwq+yPTLGCOzISf/27hxu8ZzKRy+eTUL07Tb8NNhH4MyHHCNHQEEgDAsbNUrmr2h5Fg3psHeObVN7wP/pN6jKPek5F/jvwjR5RY3Z/u/KUnnj1ag= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C Message-ID: <2370b2ac-e11b-6772-bb7c-097aefca2492@amd.com> Date: Fri, 2 Jun 2023 09:15:27 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [XEN][PATCH v7 04/19] common/device_tree: change __unflatten_device_tree() type Content-Language: en-US To: Vikram Garhwal , CC: , , Julien Grall References: <20230602004824.20731-1-vikram.garhwal@amd.com> <20230602004824.20731-5-vikram.garhwal@amd.com> From: Michal Orzel In-Reply-To: <20230602004824.20731-5-vikram.garhwal@amd.com> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DM6NAM11FT018:EE_|SN7PR12MB8604:EE_ X-MS-Office365-Filtering-Correlation-Id: ac05a6f5-a8c9-4b9a-4917-08db633928fd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: gE/9e8BujozfdK4ZCuJ4Dwcb2O3x8kAKYQXQOsiQnnasGWndl7i0jfpCRCq8bRhtHbUVnZwUH9FS3p9HixOxk0AtyPLMpEVeTBVjWPFImys85dyi8dDU2Uox8VoZB1oVm97tFHVPOXhHT8qEonmR6TvNpxDL94t54C0pqh/x9MfO7rm2uKrh4BtNFfKdcI9ke3E6tToxRxjfWMe/LQTXZwSxBYK19LXnibJxxK6GOaYduGpO7UEMjZDaFgoYTE0NibdqGAbVGyXbWwpK1Ms/iadDFUbwpTkrYdpq0DZOiNTXhBZD20QYe1BH1vaPsdWNYE61Yh8Obx20YnK0+3vHK/5Ztx9wEjJTF+Z80b9R88dM9t/nvGCVUvjM+FdNOvPyLbr8IeWmIf4bejiI475dejLF9VEP17aXnwknjibQP6R6rz3lZoIvCV/wwixW6t8Jz6/NyZDNabcz1VH1yqRgFLLyQouPFzduG14CkiVy9cXmGvj3DP3TI/0c9N+CqpyNTJd/kYXfjt4jQnoxFkNqSyTjTtpCOrif3QusUwZXSYfbWPcRCMGhHFjQ0M7JBZRWwUdW1ry9I2isfj/MMvrKxf3BLEwkYnbcwxF337mSvLV732ri0AwBNjHi6kf+29C3Eyg+uXyCnGi1Il50Af8ybT46ibXbAuYVtIYHZlxLfEOV+S0Q9Cc+RmKY64btBcgCYheIYBs98GH8orps61uZTEHs/WQn3wGn/8xoVl0vwLR/nwIT9c3VB+PEKr8EXRhyOOzf9lxxqz9KUprhWQQpodRTVNIE5LWw8jPif5K1fYGfCC4I4qR5hqMmmnUrSWp2 X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(136003)(396003)(346002)(39860400002)(376002)(451199021)(40470700004)(46966006)(36840700001)(36860700001)(40460700003)(47076005)(316002)(81166007)(6666004)(70206006)(5660300002)(4326008)(70586007)(82310400005)(8936002)(44832011)(41300700001)(86362001)(31696002)(8676002)(356005)(36756003)(40480700001)(82740400003)(110136005)(54906003)(2616005)(2906002)(4744005)(16576012)(186003)(31686004)(53546011)(478600001)(26005)(336012)(426003)(36900700001)(43740500002);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Jun 2023 07:15:35.4249 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: ac05a6f5-a8c9-4b9a-4917-08db633928fd X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com] X-MS-Exchange-CrossTenant-AuthSource: DM6NAM11FT018.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN7PR12MB8604 On 02/06/2023 02:48, Vikram Garhwal wrote: > Following changes are done to __unflatten_device_tree(): > 1. __unflatten_device_tree() is renamed to unflatten_device_tree(). > 2. Remove __init and static function type. > > Signed-off-by: Vikram Garhwal > Reviewed-by: Henry Wang Reviewed-by: Michal Orzel ~Michal From xen-devel-bounces@lists.xenproject.org Fri Jun 02 07:17:08 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 02 Jun 2023 07:17:08 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542970.847469 (Exim 4.92) (envelope-from ) id 1q4z1t-00029k-UZ; Fri, 02 Jun 2023 07:16:57 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542970.847469; Fri, 02 Jun 2023 07:16:57 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4z1t-00029d-Pz; Fri, 02 Jun 2023 07:16:57 +0000 Received: by outflank-mailman (input) for mailman id 542970; Fri, 02 Jun 2023 07:16:56 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4z1s-00029T-5w for xen-devel@lists.xenproject.org; Fri, 02 Jun 2023 07:16:56 +0000 Received: from NAM02-BN1-obe.outbound.protection.outlook.com (mail-bn1nam02on20611.outbound.protection.outlook.com [2a01:111:f400:7eb2::611]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 739a6c74-0115-11ee-b232-6b7b168915f2; Fri, 02 Jun 2023 09:16:55 +0200 (CEST) Received: from DS7PR03CA0152.namprd03.prod.outlook.com (2603:10b6:5:3b2::7) by DS7PR12MB5886.namprd12.prod.outlook.com (2603:10b6:8:79::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6411.28; Fri, 2 Jun 2023 07:16:51 +0000 Received: from DM6NAM11FT090.eop-nam11.prod.protection.outlook.com (2603:10b6:5:3b2:cafe::23) by DS7PR03CA0152.outlook.office365.com (2603:10b6:5:3b2::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.23 via Frontend Transport; Fri, 2 Jun 2023 07:16:51 +0000 Received: from SATLEXMB03.amd.com (165.204.84.17) by DM6NAM11FT090.mail.protection.outlook.com (10.13.172.184) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6455.24 via Frontend Transport; Fri, 2 Jun 2023 07:16:51 +0000 Received: from SATLEXMB04.amd.com (10.181.40.145) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Fri, 2 Jun 2023 02:16:50 -0500 Received: from [10.71.193.39] (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server id 15.1.2375.34 via Frontend Transport; Fri, 2 Jun 2023 02:16:48 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 739a6c74-0115-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=BvIP7kZMo7/7C8VZ+ZFhl8IyJ3yEnDFAiSv/dHtEy85rTZ1CpYbCfSX0TyZI7NCVaL9GICLorOxZyByIYlO4rSc9LNEu70jO1vUa7O0D80h/vIKNp9SKsRqBthynm9dUQ2UOUUpm9JgBoIaGAZrbdoXFQjdnzvxLAre6FB5wpJN02XEWOL3+pLaKNGNnOJP20HG88LNIevmN80g/QmZKWWSgDQrOiqU1+xoGjr5vF6FZrPsnq4WcUPPrev+zUhpHYjlifnd2xWBXHoMlXN5FE1lbKr+ONrtvPPBD0hP9Tym3DsAlLPNH/TBL+ZmhfXoMHRvFun3iCNQo6/0/bDq3xw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=OoSw0S8uu8LTbfmCWc/Sp8/zUwdtKnUuaif+/Dlek+I=; b=FnDVeg16uX+5lIo2+yb5YMLXyLSFdd60TJ/86aAK5Mm0r0/jf38WAOZ/wNWAAo/EL5pGD9pQ2Zpm/mQmqS7/Myx52oIMXOJQENx19fAh8t3bcDP8FayjYqEo0G+axzS+5EffVhQyDecKofbp341jl4g9n1uxGwKjP70YSd7J5n4ZeeOKESoY6Vj/yxy0AHl2KHWKeYT4RfxGImj4VtaUG5/HUWSF9oaNKucUHBDt0ZpJ9D32n+7/80D6ZnEPrp/z6+Y3IGXk/otHrxg1lx0Q+7HVQ8YhXR43dHBSc78uICdAWkZLZvUK9PBAj04aZTIFJdffMRzD/OsL0xsE9n1Ouw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=OoSw0S8uu8LTbfmCWc/Sp8/zUwdtKnUuaif+/Dlek+I=; b=1wkbiYbMt8ROrL287bmmsY/HZXYsb3DeQVAJC4DA+A1b3iH1+loEZmOzP0y8r6wuNIgMsJ2BaTscUeUOy9yPXX/HVruesEFTtEArlbCLUTe4jKrewWUonppQXYNd/+XrZOAZcJto+1vmnAEpYF2AYflE9H0klHNWxwFhP8eR36o= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C Message-ID: Date: Fri, 2 Jun 2023 09:16:48 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [XEN][PATCH v7 05/19] xen/arm: Add CONFIG_OVERLAY_DTB Content-Language: en-US To: Vikram Garhwal , CC: , , Henry Wang , Community Manager , Andrew Cooper , George Dunlap , Julien Grall , Wei Liu , Bertrand Marquis , Volodymyr Babchuk References: <20230602004824.20731-1-vikram.garhwal@amd.com> <20230602004824.20731-6-vikram.garhwal@amd.com> From: Michal Orzel In-Reply-To: <20230602004824.20731-6-vikram.garhwal@amd.com> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DM6NAM11FT090:EE_|DS7PR12MB5886:EE_ X-MS-Office365-Filtering-Correlation-Id: 4a20da23-6234-4aa4-8360-08db6339564c X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 4gff37FXuWEqp3GyJFuYPPCv4QOs9TqVNleWcp4lWCZQ69I2g1z6jt2wzOs9CkZNFhgEdFnI3XAjJ4x9JhRqB43y+SnuZddPQfjDIrKpo3AoDR0jtyQp+XKEakNxpgKxWed/i9oyDtnt5ta6e0DDnGJJYhQM2CCuAP+5fkb0e/RFXsSwgMA4qKuYoC/eeygzHBdIwe7Z9zOAExp4xHSYL7H5o7dV6n8q3db4QRndEeBsIDJLqfz5eK1IsKp1UaI0x780s6T4pAofRHskrtS+1yp2nccBUi4rQ1muj0aECVGx97oQtNE3L0txb+C5XjRGiPcLSfe/hVUDK2m1rs0Y6kD25gS1qkWjwQaNwFGaqOt85WK7jpXHVdSBfcoKSEI5vgEAh74MGUekSU3iR3d4QST5yCzNVRHTZeGjUpzG4ng7qw2qNTBs0oq1wDSQL7ybLDHXgZRkA+gqBiL/WXj3DaD0gRfWY9RBfi0LIropGEOr0qzTwg4OwTcwam80Ur6EgC0PSIeLcMF6yLQNr5u0vIS/h5U17khvOF1Vt/eEGAabjdKzGND7xaUI/kQUmGkZv3/48rXRovFaBw9KLAE5FcqaKfvxyXmsfBHvYcxsepxZ5k1SRB/ke5/MUIFMbJ//ykbREFFZyWkynxoh6E5L4MZtKeCK+tsD+3s60kR3A67qRKKAL2P8EOVH0Vvu8qGiX25A4G9eKjYwznOA46r9lj/JLw7/F0EXeHId2jEd4rOMORz3T08HSGDt5rnseNRi4cN9nzsHGLxGb5uyI6Ns0fN7wwGrjOkUODKDbgSgb43aH+EqwulJtf5tbWMOawk5 X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(136003)(376002)(396003)(346002)(39860400002)(451199021)(46966006)(40470700004)(36840700001)(5660300002)(47076005)(36860700001)(41300700001)(4744005)(70586007)(83380400001)(316002)(426003)(26005)(86362001)(40480700001)(186003)(53546011)(7416002)(2906002)(36756003)(8676002)(44832011)(2616005)(40460700003)(336012)(31696002)(82740400003)(81166007)(31686004)(82310400005)(356005)(478600001)(110136005)(70206006)(8936002)(54906003)(16576012)(4326008)(43740500002)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Jun 2023 07:16:51.4260 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 4a20da23-6234-4aa4-8360-08db6339564c X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com] X-MS-Exchange-CrossTenant-AuthSource: DM6NAM11FT090.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR12MB5886 On 02/06/2023 02:48, Vikram Garhwal wrote: > Introduce a config option where the user can enable support for adding/removing > device tree nodes using a device tree binary overlay. > > Update SUPPORT.md and CHANGELOG.md to state the Device Tree Overlays support for > Arm. > > Signed-off-by: Vikram Garhwal Reviewed-by: Michal Orzel ~Michal From xen-devel-bounces@lists.xenproject.org Fri Jun 02 07:24:39 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 02 Jun 2023 07:24:39 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542974.847480 (Exim 4.92) (envelope-from ) id 1q4z9B-0003e9-MG; Fri, 02 Jun 2023 07:24:29 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542974.847480; Fri, 02 Jun 2023 07:24:29 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4z9B-0003e2-Hp; Fri, 02 Jun 2023 07:24:29 +0000 Received: by outflank-mailman (input) for mailman id 542974; Fri, 02 Jun 2023 07:24:28 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4z99-0003dw-VR for xen-devel@lists.xenproject.org; Fri, 02 Jun 2023 07:24:27 +0000 Received: from NAM10-BN7-obe.outbound.protection.outlook.com (mail-bn7nam10on20615.outbound.protection.outlook.com [2a01:111:f400:7e8a::615]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 7f307c43-0116-11ee-8611-37d641c3527e; Fri, 02 Jun 2023 09:24:25 +0200 (CEST) Received: from MW4PR03CA0340.namprd03.prod.outlook.com (2603:10b6:303:dc::15) by IA0PR12MB8695.namprd12.prod.outlook.com (2603:10b6:208:485::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.22; Fri, 2 Jun 2023 07:24:19 +0000 Received: from CO1NAM11FT082.eop-nam11.prod.protection.outlook.com (2603:10b6:303:dc:cafe::9d) by MW4PR03CA0340.outlook.office365.com (2603:10b6:303:dc::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.26 via Frontend Transport; Fri, 2 Jun 2023 07:24:18 +0000 Received: from SATLEXMB04.amd.com (165.204.84.17) by CO1NAM11FT082.mail.protection.outlook.com (10.13.175.224) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6455.23 via Frontend Transport; Fri, 2 Jun 2023 07:24:18 +0000 Received: from SATLEXMB04.amd.com (10.181.40.145) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Fri, 2 Jun 2023 02:24:14 -0500 Received: from [10.71.193.39] (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server id 15.1.2375.34 via Frontend Transport; Fri, 2 Jun 2023 02:24:13 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 7f307c43-0116-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=HOcnkr4Jxdh1RRrm7EKbqvxRFNqkvcL3aKMF5NeZJKD1rKK2C//F1X5NwLhfobxAFWGvVkIsIVqPJxBekQprqYXSb6KqjanoqoKRN80SR4gu15IrR+yB3Z1YNKbUHCB9MvD3Sf6oebpT7VAEhWb32Moa3YPDy+f6m/5o3LNmsabjfJqIAYeawUBUj9VcjAR3Gegfc+9ZROS7lw+Gug+wsS/rL2MNNU8icCc50kBSTQKW8wkF1zJiwnxRDkl6oQZ0O4hPlzgJ1fGjGnfdh5Sa1Hu1iEyZN4txT+ZVRX17YybBqNO4jmkC+Zi/0Fb5YCTAv1SW2y+KmvLVGOpl1LYd/Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=b1dho4j3ITrGzunz0Tk5zT7Rk8cy9W8B6MfB411khX0=; b=Mkn6uHcg7d7D/5m95Ua5TXoZ55CScPBHxxbYCAnCrPIA7oh+mdhPoTZZ8TFdp2cHd+jut3GIusPoyX0sRAv6N8PvEAweDJCb220WZtfuKtoa5hPERC44IcQxG0PUGXWy9dUQsoqPYOD7Jhl+wAQrKRWohTXujGtwzGeo/xKnY3mtlqWrzKi8JxpmNdcH9h7iu9Nn55oMyX8ERNHGb7G9v+nl0C7ZQBZLQu8fM6Q9FY1QbAzUM/4IhIaEmkSG0iyvuDwOPdQQrQCvX/T6DVcdUzS1OzmhdVgYcXhPixzHeOTzHZOJHkKv+7pvERFonhOzOrvJmtI2SNrCaTc3/RBrpg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=arm.com smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=b1dho4j3ITrGzunz0Tk5zT7Rk8cy9W8B6MfB411khX0=; b=MuWj2d6dgDB3HMHhj/xSfxkSnaH4h1T1Acuwq/PfsF42Uyhr5F84K+f/yRO/TsHp0Dm7Tu2pK2FNuLcnkK9ZokmvE7ltLxTec9Ft3zTQHMxS9M1BrKO666Gnd/jvmutQD0C82TMwh8ORve3R3xE5Eqhi48ivP6fuAZ7D14Qa/Qo= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C Message-ID: <6272380a-d0e1-ea91-6a5d-aa566727e46e@amd.com> Date: Fri, 2 Jun 2023 09:24:12 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [XEN][PATCH v7 08/19] xen/device-tree: Add device_tree_find_node_by_path() to find nodes in device tree Content-Language: en-US To: Henry Wang , Vikram Garhwal , "xen-devel@lists.xenproject.org" CC: "sstabellini@kernel.org" , "jbeulich@suse.com" , Julien Grall References: <20230602004824.20731-1-vikram.garhwal@amd.com> <20230602004824.20731-9-vikram.garhwal@amd.com> From: Michal Orzel In-Reply-To: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO1NAM11FT082:EE_|IA0PR12MB8695:EE_ X-MS-Office365-Filtering-Correlation-Id: 936bcca4-b31a-4b5e-0730-08db633a6092 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: hMDYEnuz/ZUjSNeISRFxTqHrRFpO+lu7uDIni4p2y4Gf6SsibnzlVaMBAHXPz4Ak9H+NebrQ2JMXT8TmgkiN1On9vnviCY88WRKmmN4JV4fExcaQc2lE4Qn40J9gJlaOem6Klgj4UC/pqBpMEMXskUVkqz8bGGUJFbUqzeagg9esly3gxm4raz0cJNU9DwR/e7dd93tqRMXbFljR01SYymUXGvGZAQWkIjPUe7ETwHzjuHtyqYgJJhgYxnpwiSn+B1CbOQ1vyJvsufrTJv+2EnmPwfCYD74fbM7KkTIXhLDLNYez1dPfDZg5pnirEi4eCZ0YYX7L4RUe1kHWd/rAbUipcRft5nq/+wJsEXja4UW4Jzks3LNvmLmO+WfP5lzP8BXubcdU4Yh38PItjlihTFZhTiHG5NdHlKTZmToVJvsT+9b/a+ID9776T2NGeXbrxzVKHQE952D6zqULLWcKmCNM/E/W+gNRtS91aedcrxQUYlqcWHfN6ctJ7Z4Cy1PP/daDxLr3/EfOMxqamTEDdzFpyDGl3FLVtF3iE5JZPMCXlrvs7BCqYsnvSYegToJ2rEyJvWwY7GVoPQag8ko458VawMNv9fQNF23CGx6iAsAar3Bf7WSG72NfyrxxBTpWDBjr/O/xlR7GSEypcJwVJzYCXc3DiKcZnvC5Xn8EMySYTQ0ZP9XRsiqLGSZwAzp9aS7UVV4X7OQP2nbIHeAE6QdkWDaNU2xYKjySB5Ru4aH63eH3R/g7xypREVEzRwzyG46HDkspNIwiK9OUXb57z3O8+Xo9/mfXC0swNG4c7RWwc8l106J05XRtfdmyujkSlKLbvmUCji1VfoAb+3/eOA== X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(136003)(396003)(39860400002)(346002)(376002)(451199021)(40470700004)(46966006)(36840700001)(16576012)(54906003)(86362001)(40480700001)(478600001)(110136005)(40460700003)(44832011)(8676002)(5660300002)(8936002)(36756003)(82310400005)(31696002)(2906002)(70206006)(356005)(4326008)(81166007)(82740400003)(70586007)(316002)(41300700001)(2616005)(186003)(53546011)(26005)(36860700001)(47076005)(426003)(31686004)(336012)(83380400001)(37363002)(36900700001)(43740500002);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Jun 2023 07:24:18.1086 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 936bcca4-b31a-4b5e-0730-08db633a6092 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com] X-MS-Exchange-CrossTenant-AuthSource: CO1NAM11FT082.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: IA0PR12MB8695 On 02/06/2023 03:52, Henry Wang wrote: > > > Hi Vikram, > >> -----Original Message----- >> Subject: [XEN][PATCH v7 08/19] xen/device-tree: Add >> device_tree_find_node_by_path() to find nodes in device tree >> >> Add device_tree_find_node_by_path() to find a matching node with path for >> a >> dt_device_node. >> >> Reason behind this function: >> Each time overlay nodes are added using .dtbo, a new fdt(memcpy of >> device_tree_flattened) is created and updated with overlay nodes. This >> updated fdt is further unflattened to a dt_host_new. Next, we need to find >> the overlay nodes in dt_host_new, find the overlay node's parent in dt_host >> and add the nodes as child under their parent in the dt_host. Thus we need >> this function to search for node in different unflattened device trees. >> >> Also, make dt_find_node_by_path() static inline. >> >> Signed-off-by: Vikram Garhwal >> >> --- >> Changes from v6: >> Rename "dt_node" to "from" >> --- >> xen/common/device_tree.c | 6 ++++-- >> xen/include/xen/device_tree.h | 18 ++++++++++++++++-- >> 2 files changed, 20 insertions(+), 4 deletions(-) >> >> diff --git a/xen/common/device_tree.c b/xen/common/device_tree.c >> index 16b4b4e946..c5250a1644 100644 >> --- a/xen/common/device_tree.c >> +++ b/xen/common/device_tree.c >> @@ -358,11 +358,13 @@ struct dt_device_node >> *dt_find_node_by_type(struct dt_device_node *from, >> return np; >> } >> >> -struct dt_device_node *dt_find_node_by_path(const char *path) >> +struct dt_device_node * >> + device_tree_find_node_by_path(struct dt_device_node *from, >> + const char *path) > > NIT: I found that the indentation here is a bit strange to me. I personally would > write like: > struct dt_device_node * > device_tree_find_node_by_path(struct dt_device_node *from, char *path) +1 With the indentation fixed: Reviewed-by: Michal Orzel ~Michal From xen-devel-bounces@lists.xenproject.org Fri Jun 02 07:45:44 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 02 Jun 2023 07:45:44 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542980.847492 (Exim 4.92) (envelope-from ) id 1q4zTU-0006CW-GY; Fri, 02 Jun 2023 07:45:28 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542980.847492; Fri, 02 Jun 2023 07:45:28 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4zTU-0006CP-Ds; Fri, 02 Jun 2023 07:45:28 +0000 Received: by outflank-mailman (input) for mailman id 542980; Fri, 02 Jun 2023 07:45:27 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4zTT-0006CJ-RH for xen-devel@lists.xenproject.org; Fri, 02 Jun 2023 07:45:27 +0000 Received: from NAM10-BN7-obe.outbound.protection.outlook.com (mail-bn7nam10on20617.outbound.protection.outlook.com [2a01:111:f400:7e8a::617]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 6ee3dfc9-0119-11ee-8611-37d641c3527e; Fri, 02 Jun 2023 09:45:25 +0200 (CEST) Received: from MW4P222CA0014.NAMP222.PROD.OUTLOOK.COM (2603:10b6:303:114::19) by PH0PR12MB7908.namprd12.prod.outlook.com (2603:10b6:510:28e::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.24; Fri, 2 Jun 2023 07:45:21 +0000 Received: from CO1NAM11FT073.eop-nam11.prod.protection.outlook.com (2603:10b6:303:114:cafe::f7) by MW4P222CA0014.outlook.office365.com (2603:10b6:303:114::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.23 via Frontend Transport; Fri, 2 Jun 2023 07:45:21 +0000 Received: from SATLEXMB04.amd.com (165.204.84.17) by CO1NAM11FT073.mail.protection.outlook.com (10.13.174.196) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6455.23 via Frontend Transport; Fri, 2 Jun 2023 07:45:20 +0000 Received: from SATLEXMB07.amd.com (10.181.41.45) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Fri, 2 Jun 2023 02:45:20 -0500 Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB07.amd.com (10.181.41.45) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Fri, 2 Jun 2023 00:45:19 -0700 Received: from [10.71.193.39] (10.180.168.240) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server id 15.1.2375.34 via Frontend Transport; Fri, 2 Jun 2023 02:45:18 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 6ee3dfc9-0119-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=SirzQ/im7Aovl7Nb68+ks55pqwcHM3KyF9k85GcpR+MrP28rEX+gLY+R6RBeauP0u5Ri+JC1Hj0/cXiML7djC7r7M1vP9JW0X63fZrf0oxIsVa+dPtU5hZoOrJ/Q+zd6UEbBGoR2d6kh0gAVF3TbkffWUhbS6JFvl4b2S9xbG/vKK4jagL3kH9P2rfCSJB6ap8UaONThvn2mkP+J/KBWOvsDfIux+c7h6lMYrqE3JLAubFHmtM/rtsdD1zvC7kGTT/KuIbn6eTHJ0MKsxSyKMmAwVoGl3JssLnvN/Kfk8OdLpbaBw5DPLtLhXCMo6DOWzvGPSaeW0Gq+zPUtuKrbOw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=/T0hDm9iVFs+fVU4clQnFY0EpKmEM1s4nlNkyk4Nk+A=; b=KR2q/YRdL3YuVK/9e9GpE0njXPXOQKSNVzECiIcm6KGfq8gi/tXHdtW6h1Jx8qMsJpmn+h8ecYxvSCqBEH5WY1osH6c8yrJI5e2E6gT/LlGGmyywfRgREgwHC3kBorxrP/5c8cKdbvOKSoEiIpq9AIHfqNwosilMFuP5gdpTnKwF/Fupc1oImiYqMwlL4a/Ot9Df1gwUNugPWsoijetlJqKmy+T7kr6efTqEF344kz2sqQ79R5v+Y5HOIhRSpiaSLmGiasTziitFW3xir8dkFN7oLb5NgSc25iXHi2i0Aokp7U8iMDByviLYztxYVJ2DyjubxGW1ZmTJg4XQl4QHOQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=/T0hDm9iVFs+fVU4clQnFY0EpKmEM1s4nlNkyk4Nk+A=; b=1hQioBLw89EKHXJ203y9HvcDRcxYZvdtGUMilgbs6qxRrT1KqQ7dZCIihiG7Ld8MXoOMa+XRFLwx4IUnYxkoqQlAA48+thQplIveTmk4uXTi3aEzRWeRvD7LSrvJMRNsdR0hRtN8yMhvKqszGGZ6aoYHdOysDx8Zyi2+MV/M4H4= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C Message-ID: Date: Fri, 2 Jun 2023 09:45:17 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [XEN][PATCH v7 09/19] xen/iommu: Move spin_lock from iommu_dt_device_is_assigned to caller Content-Language: en-US To: Vikram Garhwal , CC: , , Julien Grall , Andrew Cooper , George Dunlap , Wei Liu References: <20230602004824.20731-1-vikram.garhwal@amd.com> <20230602004824.20731-10-vikram.garhwal@amd.com> From: Michal Orzel In-Reply-To: <20230602004824.20731-10-vikram.garhwal@amd.com> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO1NAM11FT073:EE_|PH0PR12MB7908:EE_ X-MS-Office365-Filtering-Correlation-Id: 5eaf869e-d423-469d-95fb-08db633d5132 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: I8cYsd22zkKFL/zE8tft71rT3wpzXxTq7G5bzGxON+ymvx1tH7BfFzsB4P360Xezqdmk9omC0xB+oHODa2fBZMu0LUokplN3PH9WZE5nphPHE4but5frsSpYFEkhPwu5LDmaYXPnlRsXPLOzOAo7BfwUT2bwQwdDOLp35aEYereUt4WH502WKeQGnRTnOINVCbNxEBsLnsqQY1/5Cl4hvtAsTJJLVBOCEAshjIoA+L6nIUokeRLJflHGxHEQo+V27GlGmhtCULN5EUQP70xk3as0IOxSPTmu4HdlSdFup0Vru3nJ79sOes2AjUmh1jNVv78PZo3iAYL0Hz4rXLBwjJwWBij28qjV6STp/XJL/YLCIKne+U5rRMyyPtDNkaoa6gxcpqiwkk9efdMSFiqlm77s4sXF0VJC/Jc64y/7fte+rK1QUcLwO0tQtH23QGRYOwfgy0whCdxSiShEDbx8+Gc17y6bIp87kULWukspFU4jDEM2NsGXBau8Qb6ZIEt5GZv5KTA5fvAEvXNYqUYAF9qlpq1dqOyyQERfnn22FC9X2DGAcQxvdD+EgWqSe6TicrXy+wsG9T/06jvI24wyPBjIUSkqCccPrw+s5Y7yTMK+KdKXzvXiS4OMceLbWWg1Z2q63ijLZZ00QRp2iXkFOOx5e+L3Xecm09m6Y7qI7epig8wNpn02IaZY7fqaYhvqtwggnDCBHXP9zmwWY+jQzA82s/jnZ/qTY05WyeIr4inF6HhNSyrJ1jTegbUdwcR29e65V0+cRZowImMOGqK35U1nQ7OesrIbVejmVYcvy1UaMgCPRxuT7YbKmtMMWB3u X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(396003)(39860400002)(136003)(346002)(376002)(451199021)(40470700004)(36840700001)(46966006)(36756003)(2616005)(47076005)(40460700003)(83380400001)(426003)(336012)(2906002)(86362001)(31696002)(82310400005)(40480700001)(36860700001)(81166007)(82740400003)(356005)(41300700001)(316002)(5660300002)(8676002)(8936002)(54906003)(110136005)(478600001)(16576012)(4326008)(70206006)(31686004)(26005)(53546011)(70586007)(186003)(44832011)(36900700001)(43740500002);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Jun 2023 07:45:20.7919 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 5eaf869e-d423-469d-95fb-08db633d5132 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com] X-MS-Exchange-CrossTenant-AuthSource: CO1NAM11FT073.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR12MB7908 On 02/06/2023 02:48, Vikram Garhwal wrote: > Rename iommu_dt_device_is_assigned() to iommu_dt_device_is_assigned_locked(). > Remove static type so this can also be used by SMMU drivers to check if the > device is being used before removing. > > Moving spin_lock to caller was done to prevent the concurrent access to > iommu_dt_device_is_assigned while doing add/remove/assign/deassign. Would be nice to explain the need of putting a prototype into a private header. > > Signed-off-by: Vikram Garhwal > > --- > Changes from v6: > Created a private header and moved iommu_dt_device_is_assigned() to header. > --- > xen/drivers/passthrough/device_tree.c | 20 ++++++++++++++++---- > xen/include/xen/iommu-private.h | 27 +++++++++++++++++++++++++++ > 2 files changed, 43 insertions(+), 4 deletions(-) > create mode 100644 xen/include/xen/iommu-private.h > > diff --git a/xen/drivers/passthrough/device_tree.c b/xen/drivers/passthrough/device_tree.c > index 1c32d7b50c..52e370db01 100644 > --- a/xen/drivers/passthrough/device_tree.c > +++ b/xen/drivers/passthrough/device_tree.c > @@ -18,6 +18,7 @@ > #include > #include > #include > +#include > #include > #include > #include > @@ -83,16 +84,14 @@ fail: > return rc; > } > > -static bool_t iommu_dt_device_is_assigned(const struct dt_device_node *dev) I would write a comment that this function expects to be called with dtdevs_lock locked. > +bool_t iommu_dt_device_is_assigned_locked(const struct dt_device_node *dev) > { > bool_t assigned = 0; > > if ( !dt_device_is_protected(dev) ) > return 0; > > - spin_lock(&dtdevs_lock); > assigned = !list_empty(&dev->domain_list); > - spin_unlock(&dtdevs_lock); > > return assigned; > } > @@ -213,27 +212,40 @@ int iommu_do_dt_domctl(struct xen_domctl *domctl, struct domain *d, > if ( (d && d->is_dying) || domctl->u.assign_device.flags ) > break; > > + spin_lock(&dtdevs_lock); > + > ret = dt_find_node_by_gpath(domctl->u.assign_device.u.dt.path, > domctl->u.assign_device.u.dt.size, > &dev); > if ( ret ) > + { > + spin_unlock(&dtdevs_lock); > break; > + } > > ret = xsm_assign_dtdevice(XSM_HOOK, d, dt_node_full_name(dev)); > if ( ret ) > + { > + spin_unlock(&dtdevs_lock); > break; > + } > > if ( domctl->cmd == XEN_DOMCTL_test_assign_device ) > { > - if ( iommu_dt_device_is_assigned(dev) ) > + > + if ( iommu_dt_device_is_assigned_locked(dev) ) > { > printk(XENLOG_G_ERR "%s already assigned.\n", > dt_node_full_name(dev)); > ret = -EINVAL; > } > + > + spin_unlock(&dtdevs_lock); > break; > } > > + spin_unlock(&dtdevs_lock); > + > if ( d == dom_io ) > return -EINVAL; > > diff --git a/xen/include/xen/iommu-private.h b/xen/include/xen/iommu-private.h > new file mode 100644 > index 0000000000..5615decaff > --- /dev/null > +++ b/xen/include/xen/iommu-private.h > @@ -0,0 +1,27 @@ > +/* SPDX-License-Identifier: GPL-2.0-only */ > + /* incorrect indentation (<< 1) > + * xen/iommu-private.h > + * > + * > + * Copyright (C) 2023, Advanced Micro Devices, Inc. All Rights Reserved. > + * Written by Vikram Garhwal I'm not sure if placing the copyright is appropriate, given a single prototype for a function not really implemented by you with just spinlocks removed. But I might be wrong. > + * > + */ > +#ifndef __XEN_IOMMU_PRIVATE_H__ > +#define __XEN_IOMMU_PRIVATE_H__ > + > +#ifdef CONFIG_HAS_DEVICE_TREE > +#include > +bool_t iommu_dt_device_is_assigned_locked(const struct dt_device_node *dev); > +#endif > + > +#endif /* __XEN_IOMMU_PRIVATE_H__ */ empty line here please > +/* > + * Local variables: > + * mode: C > + * c-file-style: "BSD" > + * c-basic-offset: 4 > + * tab-width: 4 > + * indent-tabs-mode: nil > + * End: > + */ ~Michal From xen-devel-bounces@lists.xenproject.org Fri Jun 02 07:48:11 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 02 Jun 2023 07:48:11 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542984.847502 (Exim 4.92) (envelope-from ) id 1q4zVw-0006k5-ST; Fri, 02 Jun 2023 07:48:00 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542984.847502; Fri, 02 Jun 2023 07:48:00 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4zVw-0006jy-PZ; Fri, 02 Jun 2023 07:48:00 +0000 Received: by outflank-mailman (input) for mailman id 542984; Fri, 02 Jun 2023 07:48:00 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q4zVw-0006js-9N for xen-devel@lists.xenproject.org; Fri, 02 Jun 2023 07:48:00 +0000 Received: from NAM11-CO1-obe.outbound.protection.outlook.com (mail-co1nam11on20609.outbound.protection.outlook.com [2a01:111:f400:7eab::609]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id cb384560-0119-11ee-b232-6b7b168915f2; Fri, 02 Jun 2023 09:47:59 +0200 (CEST) Received: from MW4PR04CA0235.namprd04.prod.outlook.com (2603:10b6:303:87::30) by PH7PR12MB6610.namprd12.prod.outlook.com (2603:10b6:510:212::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6433.24; Fri, 2 Jun 2023 07:47:55 +0000 Received: from CO1PEPF000042AD.namprd03.prod.outlook.com (2603:10b6:303:87:cafe::7e) by MW4PR04CA0235.outlook.office365.com (2603:10b6:303:87::30) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.26 via Frontend Transport; Fri, 2 Jun 2023 07:47:55 +0000 Received: from SATLEXMB04.amd.com (165.204.84.17) by CO1PEPF000042AD.mail.protection.outlook.com (10.167.243.42) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6455.18 via Frontend Transport; Fri, 2 Jun 2023 07:47:54 +0000 Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Fri, 2 Jun 2023 02:47:53 -0500 Received: from [10.71.193.39] (10.180.168.240) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server id 15.1.2375.34 via Frontend Transport; Fri, 2 Jun 2023 02:47:51 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: cb384560-0119-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=a0uLodyphPTM8NsQhS9SuzOYfKCRGOG568e0i8ezDbmNKmYprP3PgnPKKWvs1++0TT+Wg5EaJSRJppdTP1j2NlDK5IL6Hq9XwzlmS8BswG8tbNCLKxhquNYpOvw6JDlXhh+rhMnZ80fnXrnXe5JgdZxxpkAuDmvc+FpNVY/FZKyaWu1SgPwePyfHO69nYsOHzv5tB9mdh0rj8v/cfwBblYXyXW1sjavtoJxkUpjVNGYR8yEMYAbjOHhgQCHYarKYvPnMYBJqE8XslPq9gGYeE660hN56irhHMCXEvIWr2YmupKfWzTgcbbYQpoccYO8PhiRG1sZ5zCMA2A8vRs0Trg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=6W3xd8aKCskwlf0gGkwrberJSoufyL1gBa5ylXYbY1k=; b=JBeS7qwWHmIeFJPWynK1XwfNPudLyWFKRAGm4iej+D7El7yYZNEGtXi+MasYeRPlHgDRrq6d1i9Wkmnv/FIPY3oBGA1YQaxoBMCk0ZkuvthzfZzZ9mPMHniSneOBeoJS6Y6IS96vtPW5K64krq3RNmhKugthOi9Fxn/3KbYkgJj/aWrVdfKz8HmZCIIEx7Mr7n92bo7Y8oHYDgoTwrNXpN9OeS8UZvUoXQhPm41qHpDvI0uKwebiIEYdxh8FhArcT/hodIs2mn+5jjSGCXgfAwKXVqe/KFV0Bju6axcDiNtZ8O9Tl/S9znEC02jlTN/Aw5+mcVIx9QKOXKOqy5H+XA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=6W3xd8aKCskwlf0gGkwrberJSoufyL1gBa5ylXYbY1k=; b=fvebDu+cvjJ9UzHvJzx1cPBo/QSm/0L5Vt9XwIFPWWHcdruDHTHAfy5UZNhe8omV8UFpZIM6HrpJELI9fMoZApdKxySkq/Xx1W+XOvzmWWeFayrHSJfsnEjR8jg8IBQFFqPRPx9/kk4kSW/mfMQwqIrgVI4o19VOr1va1IZX8Vs= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C Message-ID: <70fe2149-31a4-ba67-47f3-173873cad693@amd.com> Date: Fri, 2 Jun 2023 09:47:46 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [XEN][PATCH v7 12/19] xen/smmu: Add remove_device callback for smmu_iommu ops Content-Language: en-US To: Vikram Garhwal , CC: , , Julien Grall , Rahul Singh , Bertrand Marquis , Volodymyr Babchuk References: <20230602004824.20731-1-vikram.garhwal@amd.com> <20230602004824.20731-13-vikram.garhwal@amd.com> From: Michal Orzel In-Reply-To: <20230602004824.20731-13-vikram.garhwal@amd.com> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO1PEPF000042AD:EE_|PH7PR12MB6610:EE_ X-MS-Office365-Filtering-Correlation-Id: 9a0d5080-76aa-4205-32b9-08db633dac8b X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: R1lQtHpaWCJrXjDr8UMmQyIezb6EH3wrZBHmb22GNDGmC4Ytf23peh+5B7Lw3s1s0myBWqvJSh+plDWHJeArSqD/b4hXHmPnPsMFcFjBXQlsDoeiQQtixeJ735S+rvrFyggSHsF7gu0YuMmwm7xexuyg6E5gYDoKAgQyVd4TwyUCXGSBIhKF2jZGVX1feV/GRV0xqCrI5Ysqk8lDuBx5mKtENR5SqoyT/oHO3rD2nQvy8//UkBH2MNyjpNcbrtfbtfI0CUXxj/Qf8pX9zlBA1Ml9uTbrOdRB2fwaFicHfZNbqXUbU8r/P7spmw90fjWFfPAbCP+ubGV9+7BTrV8wPtoN6ZcNFd7szVTHS9kzysWkIa6vq+YPBWuGWyxhtzkBBgES/MRRvjEg56qQJLYOw4repqWKNb5GUfUkZASEwUCUxIm4WSCaHugqkrBTwDjeRDIzzArVBtq0iJ2PfMVMx/tqzMqjCuGh4OrpufC6Mjt+yBzE/kSMHDZ+87yht7HIoQuedBKZROAdTkI1dfVZgpYrrAqlgvCVK4oyprUoQSMi1a2DaOOTaECHEpM4sA5sYvBwYZv82blgjH8Mh59mPX3hQ5Hmbtlx+OjbqRVWj/ROoALUqeu7xNP8ZpFaKWXFpOGXuyXVWQZuxEDxu9meseRyGEmraWm60wOkyKwvMTDKPehqTCyHDRPWVUeqHha8bZpCDqqdaN1IKl6GwxNLL4/I4TwJaXu1TtTfi7OkrU3Ox+LdVAj+KWKc+GzhQGXKYInNdrIgcHz1zJvkPOSDNYL3/xkcHApVeHVpkV2119zHbUm3TjXJb6VJaJq8eJtI X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(136003)(346002)(396003)(376002)(451199021)(40470700004)(36840700001)(46966006)(110136005)(36860700001)(4326008)(54906003)(31686004)(70586007)(16576012)(316002)(44832011)(70206006)(2616005)(26005)(336012)(426003)(4744005)(8676002)(8936002)(41300700001)(2906002)(5660300002)(6666004)(186003)(53546011)(83380400001)(47076005)(478600001)(82310400005)(81166007)(356005)(82740400003)(36756003)(40480700001)(86362001)(40460700003)(31696002)(36900700001)(43740500002);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Jun 2023 07:47:54.0453 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 9a0d5080-76aa-4205-32b9-08db633dac8b X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com] X-MS-Exchange-CrossTenant-AuthSource: CO1PEPF000042AD.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH7PR12MB6610 On 02/06/2023 02:48, Vikram Garhwal wrote: > Add remove_device callback for removing the device entry from smmu-master using > following steps: > 1. Find if SMMU master exists for the device node. > 2. Check if device is currently in use. > 3. Remove the SMMU master. > > Signed-off-by: Vikram Garhwal > Reviewed-by: Luca Fancellu > Reviewed-by: Michal Orzel > --- > xen/drivers/passthrough/arm/smmu.c | 59 ++++++++++++++++++++++++++++++ > 1 file changed, 59 insertions(+) > > diff --git a/xen/drivers/passthrough/arm/smmu.c b/xen/drivers/passthrough/arm/smmu.c > index c37fa9af13..fdef6e7a7d 100644 > --- a/xen/drivers/passthrough/arm/smmu.c > +++ b/xen/drivers/passthrough/arm/smmu.c > @@ -44,6 +44,7 @@ > #include > #include > #include > +#include Please list the headers in alphabetical order ('i' before 'l'). ~Michal From xen-devel-bounces@lists.xenproject.org Fri Jun 02 08:32:02 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 02 Jun 2023 08:32:02 +0000 Received: from list by lists.xenproject.org with outflank-mailman.542995.847512 (Exim 4.92) (envelope-from ) id 1q50CI-0004Dn-MX; Fri, 02 Jun 2023 08:31:46 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 542995.847512; Fri, 02 Jun 2023 08:31:46 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q50CI-0004Dg-J9; Fri, 02 Jun 2023 08:31:46 +0000 Received: by outflank-mailman (input) for mailman id 542995; Fri, 02 Jun 2023 08:31:44 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q50CG-0004Da-AA for xen-devel@lists.xenproject.org; Fri, 02 Jun 2023 08:31:44 +0000 Received: from EUR04-HE1-obe.outbound.protection.outlook.com (mail-he1eur04on2048.outbound.protection.outlook.com [40.107.7.48]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id e5960cfb-011f-11ee-b232-6b7b168915f2; Fri, 02 Jun 2023 10:31:40 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by AM7PR04MB6776.eurprd04.prod.outlook.com (2603:10a6:20b:103::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.23; Fri, 2 Jun 2023 08:31:11 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6433.024; Fri, 2 Jun 2023 08:31:10 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: e5960cfb-011f-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=IMDQL+eQsjJ13oWpu/rNEj9rvB8DkeG6xOn6Hyi8NLKoeU4e+2J7n9BQZgH+vmPRZK1k/Zr13AcysKQ01SobWzzpDYpy/NJqts1+ek5czhzzDFPra/GGGsoRyGgZxHWWkLXswIfsMkqlNMGYQDF4DxZaUyUfqFjLT+TfDfMq5Me1uuDdqRz5O9ssl8DqREbBZrtlvgyixuPJ5kfd9VKsctGF37Y8JgCDxNmRiiee7WYJd23Xy+V+K6XYMTFtKLdioXjAUSGok0z6Z7Qv3uurGvZFYnDg3RPXnwkhpX4t5+NuOI0dphTx5UZHLTeA4LyUpUEzfT6T81O64RW5+WRj3Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=gMjj8e0o8WR1BdrHgAheGHQw7ORZQ5RCVQAhUgCAXDY=; b=ceFDSlL+krHIGOzC0as5Z37cWU9Np6j7kjBhsktGuqafn671P2OLS+Q89hwH4Dho/LdiNAjIKq7MrgrFm5vhqTLOTftzOIEVceoDq7SIEV9Sg2F2+HxP2o5xZrV9EIjkLSZPue2HHE0Y5CbqqjaPk/hg8NPMmJxangh+uBxRKCLfXTbukEWnrvQLzWeQ6Z8ib/+tzfenEAPyGnsTz9ZSUW2dXYIdHzjX7YwjJ1Bt3tvWfS0oS8l28tPoVJNaGydrtA3kahQO7cLob/H2yqgJkxhnzn/H6PPW2Y1JPIVzhyaadd8fP31iveEZqvV0HGtq3sKKIotnSN9k9t6GRiXM9g== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=gMjj8e0o8WR1BdrHgAheGHQw7ORZQ5RCVQAhUgCAXDY=; b=O02F4MBtHqHfjcVGPbq4rXyTeh/ijd4xWlN0poZcSAcfKURUj2gTM73Y+hPF8C7JAIjsKujDXKEKVhqeaosKn1TuX4zZdyDYRghZKWAF8OPFBA/oYHSLGHhPj4TqLks0s4d9KZ0HjObuCVgqO7DIxQx1Kk6t8wLsXElhRb9wnvg5WNs9+8ofGsdOy+Evi00FWEcgwPw4HliJTALmnu1QehNA7xQJWt6eVBsrU9wZsOkb8ysCDabF1bAzZx9feeeHov8lpwqH+9gUVi3cDKouXLdWDqj74V+nVGrCSCmIZY+mP9p4h6330LXaI6qvTvOmqB0GGeIyw7J7Fd+aQF25qg== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <619ea01a-2058-c4ed-0f5c-394a82f838a5@suse.com> Date: Fri, 2 Jun 2023 10:31:08 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.11.2 Subject: Re: [PATCH] x86: Add Kconfig option to require NX bit support Content-Language: en-US To: Alejandro Vallejo Cc: Andrew Cooper , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , Xen-devel References: <20230601174327.11401-1-alejandro.vallejo@cloud.com> From: Jan Beulich In-Reply-To: <20230601174327.11401-1-alejandro.vallejo@cloud.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR3P281CA0019.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:1c::6) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|AM7PR04MB6776:EE_ X-MS-Office365-Filtering-Correlation-Id: 5a33c52a-188a-4b0d-0f6c-08db6343b829 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: CikHlAdh5++ebf8aoglQbgxCrfKBTRmwWE42kzM0mslyShiufLucgx8xGk5z2wU2p4kHCI2wG76c2TKGm3ZU1Wa0hRJKvrrIkAaqvRR50zmcRHE+DzEHZ9XzudeMf59QaKXWzMiss0kpS/b+DeH5smycWBoRIutv27CykfeirnQDcz/+0w9oZLGtC1tTNfmdJgpyp+JbnarrUTN5FZCnRypj8ItDOOqMuRw9e1XjkCz4OJEqc36aWGwoPCQ9Dx6BowI/atxW7yfeyltd4wYd5K/Fkb9rNMCEgOzRqRNljDldi/9jKQW2wvvnYZDEY5oCJx7wXlKYCyrvPcGTiK1uWF1XqpY2ypDOKSgqSCxVbAsxXYE73htv+mzMRxOmDx3yugcYQ27sTgtOwZ+y07FA59FX6CA/h2tnLn1EH0906f/LT2v3PwICXJ8NPtTw+2ROd9mDpUZ2deVV98bx5s/FGQdiTpOtYYXX861YiDTLBraMfsVT29ml7jEEbEYtMejdqPqF4BlLzIIUme9SCkaB42Q2/imNDt5vm9FVi+WkG5O0y8FoSElQ238js8CKXgMgyGJuzzqYhmehrlHxJSvFc1hbsjzv329zAqoJUHvLm3veo88cGRQFErgezgfAOu4OwrHgJ+lzq1U/OLRJixmZgA== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(366004)(346002)(136003)(376002)(39860400002)(396003)(451199021)(316002)(83380400001)(186003)(2616005)(4326008)(6916009)(66556008)(66476007)(8936002)(6486002)(66946007)(478600001)(54906003)(53546011)(26005)(6512007)(5660300002)(6506007)(8676002)(41300700001)(2906002)(38100700002)(36756003)(31696002)(86362001)(31686004)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?c2tGMStIdmxobGtoYkhFTWlzdEVuV3haRmU3SmpqakMwVlJ6S2JiV0d2T051?= =?utf-8?B?NmZKL3MyODVkQjlPM2N3cFlHeUswa21va0FWNklzTVVIVGp1M2dsRzg5QjdG?= =?utf-8?B?NEFTS3k1ajA1RFhQeGw4eWZQMVQ4My9OUnk3Mkd6dFpHYmtFQ2N0TUVhb1FQ?= =?utf-8?B?R2tHdGpnYS8vVFZmTlZHaVptMHFrb0JVcU1ER1pMU1JjYks5VFd0c0xwQXN5?= =?utf-8?B?eHFTUE9HVTNHOENvWEhQeHhqU2NrSEUwMWxOUlM3Q1BhNUdGTWNxVThRNVNI?= =?utf-8?B?djJMM1d3aVh0dlgrc1hzcHFGbXd3L0VQd1IzaGtoNVB2ZENnT3ZxVS8rV01U?= =?utf-8?B?UjlsNU56WFRHSTRXc040ZUdiTjRNQ0IzUEhKUDVNQzlJc1RLT1ZWb3hnd1Rj?= =?utf-8?B?SitTLzRpdFVxTS9XSjEveEdhazh0ZTV5eFZYSDd3QkNEM2FlWmhGMm15a2I2?= =?utf-8?B?Q1BGUjVkQ1dkTHJHMTRuRDU1RHVyWnprNzNhNUNVbnhMVFY4dGdqcEhMUjdp?= =?utf-8?B?QnpTSTU3V0JsYjhkMEM1UDBhNXdsK2g4ejAwNWJ3Z1ZobGx3cUtJdzJ2S3k0?= =?utf-8?B?THdudDMwOW9Vc3I2bnJ5VzRwYnZQR2tQd2lPTEV0VENEN21TeDRCNlVnTFVD?= =?utf-8?B?aVQ4a0c2MFJwbzg4RG1OMEk2NmlzMVRFYUZUVzBlQzNTL1FpSzdVUGZHbUo5?= =?utf-8?B?NURQMHpueTFyK2NyRWNtNXhsZHZFMzF2UllBaHlSWDhlcHNoQ2hjcjQxWmJr?= =?utf-8?B?NWV5dE5OUExRSkRwaTM4NGVDN0t4Z1JoTklPTnovczQ5Tjg1SmVodmtaRytF?= =?utf-8?B?L21LMEhZUTBqZXhZYkFWTjVJenpnNU8rNFhEWGwycnBST3NnTjZIWXlKSkFU?= =?utf-8?B?cEUxZjYzRDN4UUVpejFLOGt3OTN3eXBQUTZKcDJjT3NCRmVYVVl4OUxJK0dB?= =?utf-8?B?Zlo1VFYxS1JYWEc4bEFFUTBCUUFhbDZSUVdCS1o2dmFhSVZreFc4eW13cDhw?= =?utf-8?B?QlZYWUlUb0lVc1I2Umx4Smp0OGUyb1FybC9SdTVuQjlONzk4blNBVHhVcWtZ?= =?utf-8?B?dGFuYm5XWmV0L1o0UjR2TXgvdnBZdjA4K3RZTGttWjVvcUozdlVkTzd6cytt?= =?utf-8?B?Y3NpcytxQnJ4UFNZMTA0ek8wM09XYTdZNmJrMW9ybmlRT2NIcDNCOXArSElY?= =?utf-8?B?YmlJQk1abStFZ1VZd2FRWS91c1JjWTdtYmJlc243VW5pcXdpZ0ZyTXoyWkNR?= =?utf-8?B?RG9CQ0lsWFR6UnYvT0dDeEtWblVGOUNjTnlSZU9mT2dadU50UE1XOExObHda?= =?utf-8?B?VTdZNEwvdUYzMXlyamJpVndJcjZYZVRtU1QrWW1pYmNYaG5meUpaS1k1NHNu?= =?utf-8?B?QkJjS1FBbU5uWjZTenNsaHJxRzd2alNwRU13dnJuVklyL2ZYMGxIVTEvbkdx?= =?utf-8?B?OUwxSTluYlE2Sm9tRjVyeGIrVkFWajMzS0J4ekJjWHZzdklEeVJKUS9HUUll?= =?utf-8?B?Y3pvcDJrZVFSNW84Q1Jsc09iZzFvRTBpYXM4bnRYLytIbExJMEV1UEUxdWc2?= =?utf-8?B?MmpZdXRpSG9MT2dONUVmZVBuKzJFbDdNNUhIS0ZFS3doMW51bG5nY29NUWRI?= =?utf-8?B?TjkwYnBhdDR0Q1NCYlZRT0N4STRUYUh5U3NPMFRqQWd5eEQ4U203MW00MnVC?= =?utf-8?B?Vlp3M3VUT3B5NlRlaTN5bnc1Q2F1dEY1TFg4VGEzU0VhbUlGTVRGNUIrMHJR?= =?utf-8?B?dXQyamYrWWltcEpwaGlTbk43aDFiWXZDWEtBWDBSZTU3SlYzcE5NV1pCbEFT?= =?utf-8?B?YWlRYmpqS2RQY0dPOSsxeFZEcDJNM0QwVWdCWWpJU0xIOVJycGVXY3pKbEQv?= =?utf-8?B?ZE11ZkdwU1hBMjhpT3dtNFZ0UUoyVXFnbWpkMVRKTXZ2UU5zaWo3TDNwUWVX?= =?utf-8?B?MGhLUmJ4akx1VDRoVS92akpTWDcwRjNFRkFwdWxIYXE2a0d6akYrYnhhNFVm?= =?utf-8?B?VFF5dkJOVUYzZERoODhzWk05YTFhbkl4VzFESnRUZDJUNFdqWFR4RGt6cnoy?= =?utf-8?B?TXhSTTZ2ZS8xTmVZYmZ6RTVLUWFxNEtIV1RHbFJUbnM1bUJ4ZEg0T0FkMVVh?= =?utf-8?Q?tAAx27zuahD8ygdJ4bWpVGzHd?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 5a33c52a-188a-4b0d-0f6c-08db6343b829 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Jun 2023 08:31:10.8464 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: Qw+GOwkflkwNpgKQcd4RAOF01fzZ5rd8DlaHRa8r3VC23g2pgMdaOjZjTivWq+aeA1bjkSEusqOT85g5kdI7bQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM7PR04MB6776 On 01.06.2023 19:43, Alejandro Vallejo wrote: > This allows replacing many instances of runtime checks with folded > constants. The patch asserts support for the NX bit in PTEs at boot time > and if so short-circuits cpu_has_nx to 1. This has several knock-on effects > that improve codegen: > * _PAGE_NX matches _PAGE_NX_BIT, optimising the macro to a constant. > * Many PAGE_HYPERVISOR_X are also folded into constants > * A few if ( cpu_has_nx ) statements are optimised out > > We save 2.5KiB off the text section and remove the runtime dependency for > applying NX, which hardens our security posture. The config option defaults > to OFF for compatibility with previous behaviour. > > Signed-off-by: Alejandro Vallejo At a guess this may want a Suggested-by: Andrew? > --- a/xen/arch/x86/Kconfig > +++ b/xen/arch/x86/Kconfig > @@ -307,6 +307,16 @@ config MEM_SHARING > bool "Xen memory sharing support (UNSUPPORTED)" if UNSUPPORTED > depends on HVM > > +config REQUIRE_NX_BIT I don't think "_BIT" in the name is necessary or useful. > + def_bool n > + prompt "Require NX bit support" Just bool "Require NX bit support" please. > + ---help--- In new code just "help" please. > @@ -151,6 +152,11 @@ not_multiboot: > .Lnot_aligned: > add $sym_offs(.Lbag_alg_msg),%esi # Error message > jmp .Lget_vtb > +#if IS_ENABLED(CONFIG_REQUIRE_NX_BIT) > +no_nx_bit: .Lno_nx_bit (no need for this to end up in the symbol table, just like most other labels around here). > @@ -647,11 +653,18 @@ trampoline_setup: > cpuid > 1: mov %edx, CPUINFO_FEATURE_OFFSET(X86_FEATURE_LM) + sym_esi(boot_cpu_data) > > - /* Check for NX. Adjust EFER setting if available. */ > + /* > + * Check for NX: > + * - If Xen was compiled requiring it simply assert it's > + * supported. The trampoline already has the right constant. > + * - Otherwise, update the trampoline EFER mask accordingly. > + */ > bt $cpufeat_bit(X86_FEATURE_NX), %edx > - jnc 1f > + jnc no_nx_bit > +#if !IS_ENABLED(CONFIG_REQUIRE_NX_BIT) > orb $EFER_NXE >> 8, 1 + sym_esi(trampoline_efer) > -1: > +no_nx_bit: > +#endif > > /* Check for availability of long mode. */ > bt $cpufeat_bit(X86_FEATURE_LM),%edx I think it would be nice if this check came ahead of the NX one, as LM availability is quite a bit more important (and hence imo lack thereof wants diagnosing first). Especially as the re-ordering looks to be entirely trivial. > --- a/xen/arch/x86/efi/efi-boot.h > +++ b/xen/arch/x86/efi/efi-boot.h > @@ -751,6 +751,15 @@ static void __init efi_arch_cpu(void) > { > caps[FEATURESET_e1d] = cpuid_edx(0x80000001); > > + /* > + * This check purposefully doesn't use cpu_has_nx because > + * cpu_has_nx bypasses the boot_cpu_data read if Xen was compiled > + * with CONFIG_REQUIRE_NX_BIT > + */ > + if ( IS_ENABLED(CONFIG_REQUIRE_NX_BIT) && > + !boot_cpu_has(X86_FEATURE_NX) ) > + blexit(L"This Xen build requires NX bit support"); Nit: Nearby uses of blexit() suggest there wants to be a full stop. Jan From xen-devel-bounces@lists.xenproject.org Fri Jun 02 08:44:09 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 02 Jun 2023 08:44:09 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543000.847522 (Exim 4.92) (envelope-from ) id 1q50OB-0005oR-TA; Fri, 02 Jun 2023 08:44:03 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543000.847522; Fri, 02 Jun 2023 08:44:03 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q50OB-0005oK-QN; Fri, 02 Jun 2023 08:44:03 +0000 Received: by outflank-mailman (input) for mailman id 543000; Fri, 02 Jun 2023 08:44:03 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q50OA-0005nv-Vn for xen-devel@lists.xenproject.org; Fri, 02 Jun 2023 08:44:02 +0000 Received: from EUR03-DBA-obe.outbound.protection.outlook.com (mail-dbaeur03on20625.outbound.protection.outlook.com [2a01:111:f400:fe1a::625]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 9df64cf9-0121-11ee-8611-37d641c3527e; Fri, 02 Jun 2023 10:43:59 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by PAXPR04MB9202.eurprd04.prod.outlook.com (2603:10a6:102:221::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.24; Fri, 2 Jun 2023 08:43:56 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6433.024; Fri, 2 Jun 2023 08:43:56 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 9df64cf9-0121-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=n4TnGsABnIlGoy2FE8ghVTN0+UO1wg+cDvMbFLxSLGTWk3OehkU7k1/MnMCm9u1tb5P4lrNeDyWu/ds5JRTPfILFif1N9518jzZMjKEyaa1ng+nu9UDqYRMPxokjl9HPMJOjnsziek8F83hLDHLnisg/5tbocsmvwB0syF16CagZijbvcWNp6HZCO2Lh1kZJr+R+qlu6ArEE3KLPjHRiLt4AUKFT8Hv8zYeJ2HlJOmoHc7qh+OxmK9xgZ3612b5h6v4v2rkIm4ry9SAljxH7mnyJ6rpOWy1e4NPojYCduKxgileBI8UubcXnYatq14AcXLLAyfY5HaUnCwE8Q0WesA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=OgykzNIkOKeBygkc0tNwHF1BSFTXhBw87Hi0S5ViX7k=; b=Y7EV+hc+fR4jMG3QSSIva4Fl3jZ92vRUep1fgZ68N2JPA711t6BOoRnxvgcpBUKHcYcjUhg7+wyFwJFCoQaUFT6GzhPf1We+UpwFDDdFgiQY1hxKOHasdULwYec+23P05PyDdQE039C4KZRd/9A6MWdagt86HGsr2jmalhAxrU3I8fopQDzDl+2cKU5Ty3f6bAAHJ64KhtJdaeWa1NlA1Q4rvFwddCX7CnYRGWr7fgUfbmXvYh5/Pyu2tFsNcEqK4rbcVSbu3wUC2tpN8kLMl5PVkNymSs+SJ/vcUJZKZXQRT6L1HOSO9lraeiSg4XR8aiL09CxlSzXuu7zYw/cCCA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=OgykzNIkOKeBygkc0tNwHF1BSFTXhBw87Hi0S5ViX7k=; b=ud0t7xH+oj4SR6uGRPAbWvTkwbL/sde3ImO3PAuM4c5hkVrNUl5PKmudAs+Tehw+6GfxYgGPBhqIAy4CZrZPucFbePW4D6MfmQ5ZIZav89vH60H1eZ7j4JdeaVB1I1CNAbS802yFhuWu3lnjKM07w0MVX4bQun4KxWdwgYCoRG/gaCZ8UxlXpqH8wgS4WIBM9PTYPwXPuVdttyGImbnM9g4jvnO4lf3WN8HKj4Ify8v38qC6i7X06qdNY6ikSYryjIovB+sBYAREC3g+qZ8841ONRazxEnTfC/yIFrf4AKs5OW4cgoncMidHVMiZWsc3AtAr5NfUwBXCEgJfWmvvPQ== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <252ec541-bcc7-1b10-9831-520c959e06f9@suse.com> Date: Fri, 2 Jun 2023 10:43:54 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.11.2 Subject: Re: [linux-linus test] 181082: regressions - FAIL Content-Language: en-US To: osstest service owner , xen-devel@lists.xenproject.org References: From: Jan Beulich In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR0P281CA0109.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:a8::9) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|PAXPR04MB9202:EE_ X-MS-Office365-Filtering-Correlation-Id: 3d4ad4ad-4407-426f-65ea-08db63458059 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: VcaYGTBVnL0s0C7ygI7cQvSoVZQoYkjhmLb3v1Ab1jQKBni1znOIGTRWYXBpDjZVxioNbVVSJeNtncCzMkguFlST3gKT64PFNmpr0HCLErkyh38Aydj6Et+1HF1kgtHSS9a0rArtWRQWnJRvrzax6/DpJSdrfFa12hIXSo87jE3qPA4jjoNdGeN+NQLzHJiP3L+OYoL2v995wD08akcBhvlqk0KoqYBnlKZ/5O2hJ+gqJYzAmJ9/TVG9UqzzZrfkEn1xRHRIdt0luXz+nPZ3JBW9s8ePvB8E/9ET81qTyltx3IbpJ+YZeIImDzqN+dS5SrGqPOWQx+EVtwa3Ge3tSUkqQm4mNvLf5+9Sz8Rj7Yc+HlDHCcWKeAYyynV6wlRVS8JtBUS+NThUHcaR5vBoVjkLhW0WcEB3IZeea08veYFiDM2ydtgBHl5DxcM2fCq8qYM3QNELUX6sfhxqImzJMYNSvFw4IpT1x+LaZpGjukuRl09PtAjB4Jd1kX9voAdGOrrHoYTWWqhtJ/mVfHGWNrkJGuBWC37KsM4ULt+y3lLzM19T9MJuAvEb673C69+v8OQFtY+XgEHPZT5Z/qPEl2xNeL1VZF5U5v8gNnPrYmomCGFB0pq0+hj+D+62kpoAh9yBlUKhUVN5qFFGD7Rvcw== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(39860400002)(376002)(346002)(396003)(136003)(366004)(451199021)(31686004)(83380400001)(36756003)(41300700001)(38100700002)(316002)(53546011)(26005)(6506007)(966005)(6486002)(66476007)(66946007)(66556008)(6512007)(478600001)(2906002)(8936002)(8676002)(31696002)(5660300002)(2616005)(86362001)(186003)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?TUlmcG94TFBhTk1tZHlGbExvZ2ZZTG5JczRpV3FlVldwNVBCbFRxeG4xL25m?= =?utf-8?B?Sk8zM1dDOXNwMStrQmdnRnh3Zk9rL21STUF4ek84d25xU01JQ3d0OVE3eDJ0?= =?utf-8?B?cUpBWU9mSlpkSTNYN2lhMUFMbzlheHJpZ0JuQk8zYnBEYkpiOFBrZlFrY3cz?= =?utf-8?B?ek9CcGxVaFUvdENOWitJUjRLTXRGZzFIV0ZJVmpDYjFGZ0pER1NmU1RnWW9r?= =?utf-8?B?djNBbi9CRmRpeEVvbHd1U3VKZXZXZ2lqejczc0FGcWZTbmM5V3ZaU2hCTEE3?= =?utf-8?B?NkFSc3BzaWp1cWdzbEZQbitzQSt6d2JSMmtGWHpoNWdXNmpjdXVOR2hmWEM3?= =?utf-8?B?aUdpOWlJVXB6YWlxcnYzYnpPS2lYOU1pbTdkY2RFaGt0REpYaWtncXRySnNm?= =?utf-8?B?YzIwUUVIaHhibUExeWdsb3Uva05jc0RUL2xPRVhJWFpDc21Mcjh5dkZ6NVI0?= =?utf-8?B?SHFpSi9tK0NWVVc2bmdNR05FQWwvWUw1YnE2NmYzaHN2N0ZESDFjeWlVbFZY?= =?utf-8?B?SC9uQkFPVHBjYnV5MHozSmZlZTdDQjNwNWFnUTJUSElvclN0Z2x4RXE2NXRN?= =?utf-8?B?blZObVUyZzJiS3Jab3J5ZnpKeWtqeFNVSjlOT3FZa00xRU82SWlDTlhOWHRy?= =?utf-8?B?bElXeXd2WjU3NEFEQWxlOWlGTTE3U01xUjRLK2pMcklUcVdLQUJLMDVTVEQ2?= =?utf-8?B?T3BHWXFUZTJyZUVCWFl5K01LSHZBVUFEOG9sMng0SUpIVjJqS3lIOElWaEFL?= =?utf-8?B?S1lybUJjQWljU1FUN3lrdXlTQnE1dk1BVTlJNjZEUHg4WlpxRlFQQ1pGL1ht?= =?utf-8?B?UXRVcExISkVpZFJ0VE9DUmMvdW4yanFTMnJaV2x4emw2U042VFB2cXl5dk5s?= =?utf-8?B?L3VEQ0FRMU1ISTZnbVEzSEkvRmlJZDVRSEJ6RDFSdURKT1pPRUdKZ04yKyto?= =?utf-8?B?aERRd1h6Y3cvNTh4Wm5RamxVTXhXK0ZkZ0JnNGwzNERMUnV5OWx5c1ExSFJl?= =?utf-8?B?NitWNWcrRU5YTDNRNzlSUzJIb3dWVFBJUmpsQmZjZWoyTjZJSjM0MnBRUTNi?= =?utf-8?B?WldocEtuVktOZDc2bGhESDJmdzZGOG1JcXR6dkVKVWE4ZWpuampvY1Y0a2RS?= =?utf-8?B?Q2dXV01UZk91YUZkNmo0QnlPYWlUTnpwNzgwWHFReVFYWE5VYlcrdnJJK1l4?= =?utf-8?B?cUx3UFJ5RkpRaHhUa2tpclk4ZW11Y0YxMHpuTU8yV0FmOXh0TFFCb2lCc1hr?= =?utf-8?B?dHhxTy9NRWZyZU5nL2syeUw0L1NldjhKbmNjYzVkejZBUFlDekVlYldpRkIy?= =?utf-8?B?Y0FHcGdaL1Q3MGxKWVNteDExcm1KbFdDN3djUytKdCtMMUtuRFZHSktRRUFI?= =?utf-8?B?bjZRaG5tL0loQXM3NUhxeVBXTG4weW5IY1FSS1VkYzRXZStFYTJqRC9WMDRG?= =?utf-8?B?Z29LSFZVQUVadEpWMG1EcnRFZ3JyMXBRdTEzOFg4Q2N3a2lOV2NwQ0x2RU1j?= =?utf-8?B?YjNyV2NnS1hqSXJsMno0TU5sd0J0QUtwREpVdDNINFpTT3VLM0xhbk5iTGgy?= =?utf-8?B?ajBQVmtGRnpoTjRRWlVDZkNqZ0NrZ1NDWnpUQTFqYzNwL0w3M2ZsYk83WGpv?= =?utf-8?B?OFdIb3B4WkFzT2hpUmpMSDh2NmNyYmVTaER3N0VzazhkcDd1VlB6NFpFMTM0?= =?utf-8?B?MnlpZVBZemFUcklHWUtTTkc2VHVqVXUyeFBmdnc4SzdwTU9sR0k5ZktjaTEv?= =?utf-8?B?QUt4b2tlazhjeGJSdElaZ3VYUG1tSmNJdnF0OWtMeFE5alNoRTNoSFBsV3dk?= =?utf-8?B?S1E4ZXI1NHliSFppaUt0d0M1RkR5MUdxOUV1a3ZucGFkeW5GUmo5VEhQZE15?= =?utf-8?B?RjN5cDhSajloWFpNTFFMcUpubDRoYmYra2dlZ0F3K1EwRWxpUnJTZGQ4WXFR?= =?utf-8?B?YmNsSGd6K1NZdTZCL21jK1hVNncvVHlOQVhESVBqZmxkN1A3YmdtcnVXaHVI?= =?utf-8?B?Tm83UlZlZlhCZGpFMUN6c3hxUERURmM5MktraVpMZm5tMlRmY1RTUW9YajZv?= =?utf-8?B?eXVaK3VZNSsvVy85Uy9INUhleGRjYld2eHR5UTdteGthWks1WEZpYzZ3anB0?= =?utf-8?Q?bLED5beQX5Vhgwk5sdrscKDPr?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 3d4ad4ad-4407-426f-65ea-08db63458059 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Jun 2023 08:43:56.1943 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: Eo3civKiKeW1XXZ/hU4kB7+jCWwBCwiOTGed+8hzbuCNXXrajDqeBi8FIW98KwiSuUaf25a/sH7jWaDGDp6l9w== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB9202 On 02.06.2023 05:21, osstest service owner wrote: > flight 181082 linux-linus real [real] > flight 181098 linux-linus real-retest [real] > http://logs.test-lab.xenproject.org/osstest/logs/181082/ > http://logs.test-lab.xenproject.org/osstest/logs/181098/ > > Regressions :-( > > Tests which did not succeed and are blocking, > including tests which could not be run: > test-armhf-armhf-xl-credit1 8 xen-boot fail REGR. vs. 180278 Following up from yesterday's discussion, I've noticed only now that we had an apparently random success once in mid April. Without that, we'd see ... > Tests which did not succeed, but are not blocking: > test-armhf-armhf-examine 8 reboot fail like 180278 > test-armhf-armhf-xl-arndale 8 xen-boot fail like 180278 > test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 180278 > test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 180278 > test-armhf-armhf-xl-credit2 8 xen-boot fail like 180278 > test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 180278 > test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 180278 > test-armhf-armhf-xl-multivcpu 8 xen-boot fail like 180278 > test-armhf-armhf-libvirt-raw 8 xen-boot fail like 180278 > test-armhf-armhf-libvirt 8 xen-boot fail like 180278 > test-armhf-armhf-libvirt-qcow2 8 xen-boot fail like 180278 > test-armhf-armhf-xl 8 xen-boot fail like 180278 > test-armhf-armhf-xl-vhd 8 xen-boot fail like 180278 > test-armhf-armhf-xl-rtds 8 xen-boot fail like 180278 that singular test in the same group as all the other armhf ones. I wonder whether we shouldn't try to get those in sync. Which direction depends - aiui a force push would allow subsequent automatic pushes if only the armhf tests fail. Whereas clearing the "fail like" state for all of them would give a better picture of what's actually broken right now. Jan From xen-devel-bounces@lists.xenproject.org Fri Jun 02 08:49:23 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 02 Jun 2023 08:49:23 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543004.847532 (Exim 4.92) (envelope-from ) id 1q50T7-0006Q2-Gr; Fri, 02 Jun 2023 08:49:09 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543004.847532; Fri, 02 Jun 2023 08:49:09 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q50T7-0006Pv-De; Fri, 02 Jun 2023 08:49:09 +0000 Received: by outflank-mailman (input) for mailman id 543004; Fri, 02 Jun 2023 08:49:08 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q50T5-0006Pl-Un for xen-devel@lists.xenproject.org; Fri, 02 Jun 2023 08:49:08 +0000 Received: from NAM12-BN8-obe.outbound.protection.outlook.com (mail-bn8nam12on20614.outbound.protection.outlook.com [2a01:111:f400:fe5b::614]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 53b21215-0122-11ee-8611-37d641c3527e; Fri, 02 Jun 2023 10:49:05 +0200 (CEST) Received: from SN6PR12MB2621.namprd12.prod.outlook.com (2603:10b6:805:73::15) by BY5PR12MB4870.namprd12.prod.outlook.com (2603:10b6:a03:1de::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.23; Fri, 2 Jun 2023 08:49:00 +0000 Received: from SN6PR12MB2621.namprd12.prod.outlook.com ([fe80::8018:78f7:1b08:7a54]) by SN6PR12MB2621.namprd12.prod.outlook.com ([fe80::8018:78f7:1b08:7a54%2]) with mapi id 15.20.6455.020; Fri, 2 Jun 2023 08:49:00 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 53b21215-0122-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=FY+BqSiJ+xBx1TJJ/feJheOB1KStZY/TcH7OUloMUb05yT0yl3OLF1A7MkCKngjWioXQBv7DCwCR6rkXVeEj3bpLG/6S8kIuq/qQoQjJkk03LDQaHPRvnmjzz1RIvNmZtMY1cNOtrqW3kEiGim8cO5HpYYxI4YKmkrkgJJDsR4KE6sniXaRIXHhcwO7uW5FSSnFubvIb79Ej6mXxQlF8vM54zAyLAvZH3nk+kf6bgv2gNpDJAjS3LzTuTmNLqiWZVL41XSWjeZqNk1NBMcFNbOiTue1AM0UT1/7DdCF5n2TOL+CazXEm1EkZQP4lRNEtO39POKydwe8vg2qtwbSfcg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=3DxF4x6maZ0+lFfy2d40jd0vG0I618b8vuBBVdhWFI4=; b=MeHd5gxGQvARVk58TPZbnwRnx+7iQRzmGPeDNnXt+6Y+99yXcbyxteCYOrW4Xx3PpIR5RZ1UZasG8QGTjRw21YHD3J4wSfppOGPKVg3bvkRwKa7H7Jm0ipZldzO2l0RseSSnCzuXjzu3X0A8cKnxKBtF40xeda3kfD6b4BG/ZxYZXzhULuar8YDPnl4V9V3IU14oZbcUaJDdxlYGC2j0Wqb7fjVL0XxAe99rP7B1rVdULsT/E/mDcDlGQU/ZGMYRzwUuOQYP/4OeCBKpFbbTW/4Bo5aIuvsPUrHORurmOeLRZ49e1+a893rlC65ITb5gdxNX9xIXbQRr1iQsyALC+A== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass header.d=amd.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=3DxF4x6maZ0+lFfy2d40jd0vG0I618b8vuBBVdhWFI4=; b=Nv/QEf8M5v5QikOB0znBUr6ru6z5z33rdXCc2nJ/8awPfLYhE1lRmdVlc9aRy9HGWhYZq6dS7C+ZZAYTRKFjU3Qn10UNdtrx9loL4VwqZf/OgolDAvH30pUSXO1m5aSZMxImPxjKBesdVwMXG5npUB0Y/FLniuM2XACmVZqhvJE= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=amd.com; Message-ID: Date: Fri, 2 Jun 2023 09:48:48 +0100 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 From: Ayan Kumar Halder To: "jbeulich@suse.com" , andrew.cooper3@citrix.com, christopher.w.clark@gmail.com, nathan.studer@dornerworks.com, Stewart Hildebrand , Stefano Stabellini , Julien Grall , Bertrand Marquis , "Volodymyr_Babchuk@epam.com" , Rahul Singh , Henry Wang , Doug Goldstein , Juergen Gross , dfaggioli@suse.com, elena.ufimtseva@oracle.com, ", Wei Liu , konrad.wilk@oracle.com, ross.lagerwall@citrix.com, samuel.thibault@ens-lyon.org, Wei Liu , christian.lindig@citrix.com, dfaggioli@suse.com, mengxu@cis.upenn.edu, samuel.thibault@ens-lyon.org, tamas@tklengyel.com, aisaila@bitdefender.com, ppircalabu@bitdefender.com Cc: "xen-devel@lists.xenproject.org" , Michal Orzel , "Stabellini, Stefano" , "Garhwal, Vikram" , Xenia.Ragiadakou@amd.com, Stewart Hildebrand Subject: Listing the tools required for Xen development/testing on x86 and Arm by the community Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-ClientProxiedBy: LO2P265CA0418.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:a0::22) To SN6PR12MB2621.namprd12.prod.outlook.com (2603:10b6:805:73::15) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SN6PR12MB2621:EE_|BY5PR12MB4870:EE_ X-MS-Office365-Filtering-Correlation-Id: f07b210b-bdaf-4c4e-3ef7-08db6346355d X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 5D4C8LLoT811UKe2o+D6uS/a0BFhHitSCfTeukzPBb1spDidulD5TkulwfDgFdPpoUAV0HZtuDgcsubxjaZek79zJY+eA7pXRpv5B8Xwu5sm0YBh6zoJXjCzDaMHEy8WfXCX+XcD/8r6sirLuf6LlP6kyFYO2hi/LhTt/8yT8xjBMObqDYkK+09KKzgeGILhYKmnbr+CgivZljuZjr9J7nQtYnRPxHK7S2Zt7ijZNKkN2ASsD/l26WBUWuQDWtKgVs8TxZnWqw7JvUd9KcRXK4RxqGjAQURjBWvUbX1gB0chkCS7QsUIuQnMF126BT5IsBtGA5BkfIgHCVOI5CLiEPOyNRznGgKjZIOX4gWhQBAn0JcZ0yTzjUwDELOSmYZader+iKw0siK+E74SbStNThBhYTJMf7eA8UUTbcy+I3AxMrvP25I5AWpp7+k2wt2lsGojVSRg/zyyaVECl94u14XbEKfMLFmZC7ibK80uE59JVIMd3lO7InIPA/12hiHQnHw19avdR/q3LpHJTO6W3+9woktR2Zrn+C68bKTOPG9GKK+4a3PNcuju07SBv0SBUh1sOqH7qGJB6InH551f7zKYrEDWAhr7Q4K8xzpVko6KsZ0WPGVufEBU+KlW1zz1Z7Nfts/nOmON494nThTG5Wvx45XDXz7bfd/hA3jyy/g= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SN6PR12MB2621.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(136003)(366004)(396003)(376002)(346002)(451199021)(66556008)(66946007)(66476007)(31686004)(7406005)(7416002)(316002)(4326008)(41300700001)(110136005)(54906003)(5660300002)(8936002)(2906002)(8676002)(6486002)(478600001)(6666004)(921005)(6506007)(36756003)(186003)(6512007)(83380400001)(26005)(2616005)(31696002)(38100700002)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?cmViZXBkM0daQnRDUjBiY040YllzZCtPYjRnOVF3ZlpkYmNScmh2NUFKUTBS?= =?utf-8?B?cjhDRHlqR2plNURQQXlpaklhVXY1TFdrYkZ5TXhBSzFnSGpNSkd5MkdQTGRY?= =?utf-8?B?QkxzaThsK1lycHcyc1VNSURka1J0OHdBSTdXRWhuYjcvc01nK2hlUnV4c0V2?= =?utf-8?B?aTRScWRwZnZoTGZuZTJncjdlUkZqVFhDb0Mvc1k1N3IyenlRK25hak5oT2tD?= =?utf-8?B?TGtWL1QzS2kzMy9GMVQ5V3VMRS95K0luaDJaS1pFaFhGZFhtWXVFUndoR05D?= =?utf-8?B?cWtuSXViOHNWSnppTmNSS3JPazdMcWJ5K0pGcXFjdUlEMHBvVStaWTAzK0Ft?= =?utf-8?B?NHluSXNDYjJyR2F4UkdHQWxaMWU4YndkR3gvMHV6bTlzckpMaGVNRnZUUDRx?= =?utf-8?B?a3FNVG4rekpXNWM1SCs1T2d4ZThXWXdrUmV3RHNOSzJ0cnRrUkF2Q2w3TDdS?= =?utf-8?B?U291WTl2NFU0SDhnSVlOTCtieVU1bTR5Q0hQUWRMMGR4d1o0cTVYTWFyZmVR?= =?utf-8?B?WEV5bGhUWFhsR044RzcwTWxlYlQxSU5PQTFkbWMrNW1HVDdVOHMwNXlVbEVh?= =?utf-8?B?ODhSZlZTclNWWkRsQmlUa2t4YkFiWVRjY1RXaGFmZlZoTkVXTzZiVGl6TmJN?= =?utf-8?B?bGdWeThaT09PQ3JReG5aT1NJeUlkdnF6bDNWNVpYTWc0MDhvN2k3Y3g0N01V?= =?utf-8?B?K2RQNWpWU0tvdjFnMklpL2NyQjl1a2pPQUdWdVVENXBCUGp0b0lXQjFDMzBQ?= =?utf-8?B?cXp5eCs2cjNWeHlWL2hSc1JMcDZGOGttbGdlLytCVC90T05PcSs2ejAxdEZo?= =?utf-8?B?Nys4elk3YTFLd1ZWa3FMbzhEQVpab0hnWjNldHVxV1hYRWg1VC9SeCtJWDls?= =?utf-8?B?bG5kNVU1SEt3VEFZWUVFUW0vdlc4RlNPd3JEL2NaalRPYlhHRnA2TU1DbFV1?= =?utf-8?B?RGJ0RjB6NmNFYjF4REVYNU9USFpXaTZmUWRkblVnTVlZaVdaeFZEemhxdGlO?= =?utf-8?B?VWl5L2oyY3FtUzZqSEdJZWJqd1FNUkxnVjQ2aUVBalhEZ0tQQmdKajdSbStJ?= =?utf-8?B?SXkycnhxOStqMi8zaWwzYlo0WGRrKzNVNWM2UjNNYjVwM1Nxd2hwTU5OLzlE?= =?utf-8?B?ZHo3Z09IbnlQbEVnZUlPNmJXdjlKNmY0K2lhT05uOXpCTFZoTGNwRldxOEFW?= =?utf-8?B?azNOZFRsMUhHR2trZ3pkVGppbEw3cy9jTmVITE1kQ09EdDN0bWpEYXhUb055?= =?utf-8?B?cEJzczFSbzQ2VVZEMUIwTm4zZGZvZjFxa3NzekxqeFVYaVEyR2JTRnNVaFBn?= =?utf-8?B?K1hsU2tGZFRySFJNRmFKL1laSWE1dzlXTDdYNUd0aXl6QTE5R3h3RS9zclUw?= =?utf-8?B?TjAvU1RITjFISzdrRDdwR0d4Y1RGbDJhQko4bSs0QzRVeUdWNkFUTDlXODQw?= =?utf-8?B?WVQwcjNKM1ZkVkF4ZFArK3V1eitkM3dManEwcmlET3JVL3pCeGVQL2FYV1Fs?= =?utf-8?B?SWFsVk9uQW5tWVpDMnRCRnV6TGxrV1p3OFZsb2k1c0xVUWwxOXdKTW9HLzZP?= =?utf-8?B?YWhxQ2taZzBmZlpjSFdwRVcyc3Z4TkpTZW5tc2RrbitoNE9jeWM5UXVTMU5r?= =?utf-8?B?WUtCYmtXaVRLamVVRER1MGtLS2pBVWVhKzk2aDcwTm5VaGJSczFmdnArbUdn?= =?utf-8?B?QVNwNWd1eVh4SUh2b0xtZlJtMkovdUVpbXlBZFVjMXZVWTZScFdrQ25CTzVn?= =?utf-8?B?enFZOUpVNm1aSHZrTTBaTUEzS1dTODYwYjBqZGplOXdpTGlldHU3OER0dkU0?= =?utf-8?B?MGZOS1k5cDBCdWtrckZrNGpNSzhxVktNakx0S0FNZWRzSWJEWjhIS3B5TG9Z?= =?utf-8?B?eGJ3MlRTQ3dzUWNUN1p5dERtUnZqQUQzMzQ2YU84ZXBaUkcvYUJkMFpuNE1B?= =?utf-8?B?ZXFHcTZDRkJ0YlQwaTI5OFdsWGthZlQxRVdQN29wTm9wNzU2b1hocTgvVEJD?= =?utf-8?B?TWdSb3VscDB1QXV1amFEdkQxN3FVT2VXVFBVMk1Bd0p3T1ZuWFpEM1E5SENm?= =?utf-8?B?Z08zSjVKQjdsVUMwdFpkNTk4QzdiMHFkMXFsRm4wUjVwQm5xNCtNNmx0SkxU?= =?utf-8?Q?uY2XhZwi+7fnMgriKPeDv9pRf?= X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-Network-Message-Id: f07b210b-bdaf-4c4e-3ef7-08db6346355d X-MS-Exchange-CrossTenant-AuthSource: SN6PR12MB2621.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Jun 2023 08:49:00.0718 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: Kv4Z/vlN/15S3jupl1M8D9UzU43yslMSjeWo01DX1B9UYsa7jW71hipOyXtD3DafwCKLYyN0npWCWFecbj50Nw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY5PR12MB4870 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). 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 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 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 ^^^**) 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. Did I miss anything ? Kind regards, Ayan From xen-devel-bounces@lists.xenproject.org Fri Jun 02 09:06:39 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 02 Jun 2023 09:06:39 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543008.847542 (Exim 4.92) (envelope-from ) id 1q50jn-0000Rg-WE; Fri, 02 Jun 2023 09:06:24 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543008.847542; Fri, 02 Jun 2023 09:06:23 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q50jn-0000RZ-Sv; Fri, 02 Jun 2023 09:06:23 +0000 Received: by outflank-mailman (input) for mailman id 543008; Fri, 02 Jun 2023 09:06:22 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q50jm-0000RT-1w for xen-devel@lists.xenproject.org; Fri, 02 Jun 2023 09:06:22 +0000 Received: from EUR05-AM6-obe.outbound.protection.outlook.com (mail-am6eur05on20607.outbound.protection.outlook.com [2a01:111:f400:7e1b::607]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id bd7b069b-0124-11ee-b232-6b7b168915f2; Fri, 02 Jun 2023 11:06:20 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by AM8PR04MB7841.eurprd04.prod.outlook.com (2603:10a6:20b:244::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.22; Fri, 2 Jun 2023 09:06:17 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6433.024; Fri, 2 Jun 2023 09:06:17 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: bd7b069b-0124-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=CFClVYx10y67BVOKaODtttc5GWXz5ch9nuClBkYqtf3cOf2hGln63TclZn2vKdNGWZtG+sc5tf8zBC8wD5EXT54Mbztvy5U8B/yBSIwky3Grw71Le6HSkkOWsT62T9fLS+/syQkDXwjr6pOJOMOmTg9IGFqI4WnqHTot1X/kRxE60JsL+WIDsgJ6y2VAcMkspelMn6c1T1a9BtTDt15VVk7dOPGjw1xaOnJQmgV5GwxZkSuEZNRlu10S2+NgPG+mIg647vTE2DAV/pBujaXJzSCRqWUNfdhtQr4qhXbgai12iUxBp3C4D2YIgK4G0O32vdT8GPMhOuwW5BDIjc91Fw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=tQkbwwLsHrsSymWhVUkVi/YaHHc/hwVJAyoC4cqQqUM=; b=OYumfpYIHM7MLjxvREussREUprF+e6MYikM+UFAf9AMsrJPeNdw3tZ5gJcRhsjLsJ6ogbBuhuANWZgSFIswKtZ+XBolnHOq7LEw+cS2wZ/Enbg4b7UQ/wgJ36+q/J6g+5+BEWfPwxNj/IM/SBnjRC9+kmhaqMk2MuGDKYu30WDM5C3MEs6feIdkcsevSiyrDtcDIBad+WyMgHTEisXuYGiNbX1Q2XybD9vBCSL3kQt84LqMR+j6Ok8rpsDtO9sOixyaTG/qtOSI7jkhYXVixtAmF3wV5cTHx4r1Rjf1LOIG+kMXsgv3+OhXr4zDRkB8LRlvqm4i3Db5KWlgU4qfbxw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=tQkbwwLsHrsSymWhVUkVi/YaHHc/hwVJAyoC4cqQqUM=; b=LZOiFDEFd4SvceHr0Dx1iLXHJXbCpZsBYU9Acb6zi08SPqQRWqZaPv/T20PICMgzUHIgGYTS/o8PufLVnVXVxfu0a+5eESXxiyEgFvWejF84YRPQidRX0mnejV2L83jB4kU4iQv0aY8PLGX5D/p00ac0eoAfkg1yvGuXEUQIHIJsvF82JbR6351bbaiBhnEhPOsNjSsXUJGSahJbpMBt+TyViLkfWI6u6VJckuu1/CJ7oLEDwi/NCdFAcQ6Mz5hdC7mzB4E/myaBb4TJGdaTmoHLRx/GD5eH6wKKCARoXFJ2dgOKXlYcqRGYBR/UW0o0xSMwkwdW+v3+J5k6bIhBBQ== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: Date: Fri, 2 Jun 2023 11:06:14 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.11.2 Subject: Re: [XEN][PATCH v7 05/19] xen/arm: Add CONFIG_OVERLAY_DTB Content-Language: en-US To: Vikram Garhwal Cc: michal.orzel@amd.com, sstabellini@kernel.org, Henry Wang , Community Manager , Andrew Cooper , George Dunlap , Julien Grall , Wei Liu , Bertrand Marquis , Volodymyr Babchuk , xen-devel@lists.xenproject.org References: <20230602004824.20731-1-vikram.garhwal@amd.com> <20230602004824.20731-6-vikram.garhwal@amd.com> From: Jan Beulich In-Reply-To: <20230602004824.20731-6-vikram.garhwal@amd.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR2P281CA0158.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:99::11) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|AM8PR04MB7841:EE_ X-MS-Office365-Filtering-Correlation-Id: cf3b6f8f-d398-42bc-09f9-08db63489f94 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: RPAZYRUDYCxqmqffqsHgwVNTjBu06y2cGG2Ew33GiPxm+tkqirSALdJcXXh7SqyJsH+LBdAAmMOWMSWGTqGXXEohrrd56TJzqlVU777N3H859WTyi6iEGJG/SQbYsCpF5KfbyZxRv5rxbF9CVSQba+q3DG1Y7CZpAHInDfmT0UDBV7UYkmYv6FAh2/0ADJJ5BLQ0+4DG6dpY7S+Zf94qUSvHlPn7gZ7J5YCnBae7aQoC8EHVj8EWZIJBU5yBZTb15snv4pnfYJa9y0woMCyx58p7tql0jVuoP9tJO0EAOzNSTLzdYiKqcz1Lx84K8ScvKxyfbS1dgb1NgQ/WcOoNtiAtCLqZT/0pZnD5xOQnPzg1HOJ6mi3qiP56+Ld5EvewpRZ/uUtdeRKuOsIqea2sGrTul7jT4mRCAqlN+eKNBZanF+oUkFDkXNy5ylU2nCxxI5nLMIb44p9jHqDWbUaYHEa1wHnNzFlzle3St8xrRArPczV5FROiH6r/MG/qd1unzGBVLmcrzF+oophNM7d2QywflYHH1V5n2i8gin/gPfcZuz24CEb3Mylm4ycjaXlElHJJ1gp1P5Mw7zsXGvVlG7eeed9bKbzw0BM3aD6njnQFl+/Tg9yE6mINWg3DDEH5lJO9i1v/6ZLs/cZBomv1gw== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(39860400002)(376002)(396003)(136003)(346002)(366004)(451199021)(6916009)(7416002)(4326008)(66946007)(66556008)(8936002)(31696002)(86362001)(8676002)(66476007)(316002)(41300700001)(54906003)(31686004)(5660300002)(2906002)(478600001)(38100700002)(6486002)(36756003)(6666004)(83380400001)(6506007)(2616005)(6512007)(186003)(53546011)(26005)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?OHAzQngwdHZWbjBmaE5RK25VWmJmZWdNamhFanE3NUhqbXRVZ0xWSjZKdkVr?= =?utf-8?B?TExBdG9TMk5YK2loNlUzdzQ0VE9zUDZVY1hQbVVYZkFMcWs5VjFVQktrSXZp?= =?utf-8?B?MUZkVkpSNXZST3p0SElBcElEdnUycUVrUE00aEF3QUV4QkpheVBrbkFSaUIr?= =?utf-8?B?eHF3SzF1Vm5sSk9LK085N3NFMGlwaUlwdXZwci9wa2sxc3ZYQzNQdnRGVzNy?= =?utf-8?B?Yng2V3d3Y1NUMTYwVnhhbW1OcUdIaWRkSE9rLzBrVVJiUVFEUEVHMDRJblVG?= =?utf-8?B?NFNUV2hEYW9HRmRTRkVrM090UGRCQW5TQzE4QTJzQS94YUFOUjdlUlhxNklG?= =?utf-8?B?RkIwUE5yRnM2SnE5V3lyWFRtL0pWb0U3VHVPelNwMVhtS2ZwY05KNndWSVNP?= =?utf-8?B?OStOZy9xczVMSkFLU2x2dkVML0NBNmF5WENxbW43UE00bkk4VXVwV2Y0eTRl?= =?utf-8?B?R2V2Vy9nTFRxaTRxUTVUVHpadXF1TmZvbHVZcDY1ZDgramlDZi96enBTU0c1?= =?utf-8?B?cFY0aFZ6UjdEeU51L0hiR1dGaHFpMzRoL0MreEJ0YjdGdkFYZnNHTjdXWnVa?= =?utf-8?B?bTlGSmlua3RHNEpWc0YxblBTV1pqd3BzcmQzOXRMcWlTbTlsZDJqVFNSVUtD?= =?utf-8?B?UGp5ZHRieGNXN3hDUjZlVkVKUEZ5bHpXNWxlaTgzUmlhZm5hRTN0ckhwM3kw?= =?utf-8?B?WGNjdzNmOHBSZTRPNWRBMTJib3RKMm1JUnh3RlZhYWhUUGdLTmpXUXhtdlJv?= =?utf-8?B?RDlnbUlzd09TcTBEMkk0bE1DV0dtNGtnbXhFVTc1V21CeWFwTnowcE45THpy?= =?utf-8?B?TXprUFBLMzdNMWZ4NWx2MkR1SVA0ZVpxTnVrYWNibkI4bDBMamtuMzM4bXdM?= =?utf-8?B?NzkvWWFDS3p1MUJ4dnEvQkZ4MVhZWUJUZnZIMktjVjAza3JpSG9MRzdPRGdT?= =?utf-8?B?dTJCTzJSSlRHaEpEdlpqbThtRVRENzd3NEVUUXhLVlNkczRWWVluS2dBOUpQ?= =?utf-8?B?cklkOUs1U2M5L1JMckVnZFIxOCs4NnRXRDhhMkRSdDBUMHRsSFlzUVlnZGpH?= =?utf-8?B?Q0NEZEJJSlVBbHlhcENUY2lqRHlhVTJkREg2NGV1RXRIbUk0UmZkZjdRYXRK?= =?utf-8?B?VGlibVFQdmx1T3c2YjNlWWpTWElLcWFZZEh4aTRYU3JhWlUwNk43Z09aQ0hO?= =?utf-8?B?QVlkOTExWWVRNDZRd0JIYVUyMlZNenliTWZmUlh1Kzd2eDBYbHJlckJLOStU?= =?utf-8?B?NlhCenhycDdnekxWeXQxKzQ2YTV1WDNSaHVkQlZnY01sT3NBWmlCcEJ3NUkx?= =?utf-8?B?ZFR3UFVLM09nRWVuNThMN0NUSm95U3ZnM1RWY0g1b1dkbVE4Z094VVFaSnJ0?= =?utf-8?B?c21ZUjhVVWRIY0toaTBpajRwMG5BMzZVY0EraGgrN0cxYmpheWpqb3ArcCti?= =?utf-8?B?bTF5NXJmdlFIL3BCSUxwQm1EQ21yQjNtVW5uRngxb3ZXVGthNlRNazFIN01T?= =?utf-8?B?Q3J4M21zNzk2bS9uVXA0azl2cHg1ZktOcExySU8zNmhWUnBzaXpxeFFWNTJa?= =?utf-8?B?ZXJtN25FU0ltcldxcGM1cUZMRTc5QlVxL3JWZGtoMHBLekF2T0dKMFp0Zlpt?= =?utf-8?B?MGdLT3lTOGNOalJWczR2blJLVGF3RzNtMTkxdUhicFUrZUpIdHp4amgwUU5s?= =?utf-8?B?NjViK1RtS2hkVHhhVHoybVd4dDluTzUrTXJnbmh5SGhMZTFUZ2FFTzNseDlY?= =?utf-8?B?dzFaSW9NQ2lRbVF0YStNaWpxbnVDVFFQUFdlWFJyT3J0aTRXbm5FWWwrWnF1?= =?utf-8?B?K2tVcmNINXR6TXEyYzc5bDdCcFlFNVVSaEFoUmU4TDBkMWtqK3JXb3pieWVH?= =?utf-8?B?WCtWQ1I0cUozR3kvZEcvRW5kQzlld3NJYVB6U2h6OEVZV3UwbXlIZ2h4MTRi?= =?utf-8?B?Z21reGtTc04vY1h4ZUZ6SDBkTDcvUUxYN2VITmh5UVRKQmM5TExCdks4bEZl?= =?utf-8?B?dXdFeFYwK0taTGF0T3lFSjBJak1NR0FnY0tXdU9qYjMxb0ZUazF0RkF5Kysy?= =?utf-8?B?a25xZmJhaEFCSW15UXBGbWlPdmN2M1J6YngwNm9kSWNJQStLNnFybmpyTFpF?= =?utf-8?Q?LTrKl11QneOt8AUpkCxap//Ja?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: cf3b6f8f-d398-42bc-09f9-08db63489f94 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Jun 2023 09:06:17.0737 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: a0WnIpPlZkD/mOHlOOIyle6+IvJ1UKQeZxwqRYypTcGkpdZLWP7j9rMYXcH/RiLcIMw+OF3dzZZGdlApokDNmQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM8PR04MB7841 On 02.06.2023 02:48, Vikram Garhwal wrote: > Introduce a config option where the user can enable support for adding/removing > device tree nodes using a device tree binary overlay. > > Update SUPPORT.md and CHANGELOG.md to state the Device Tree Overlays support for > Arm. > > Signed-off-by: Vikram Garhwal > > --- > Changes from v6: > Add CHANGELOG and SUPPORT.md entries. > --- > CHANGELOG.md | 2 ++ > SUPPORT.md | 6 ++++++ > xen/arch/arm/Kconfig | 5 +++++ > 3 files changed, 13 insertions(+) > > diff --git a/CHANGELOG.md b/CHANGELOG.md > index 5bfd3aa5c0..a137fce576 100644 > --- a/CHANGELOG.md > +++ b/CHANGELOG.md > @@ -20,6 +20,8 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) > - Bus-lock detection, used by Xen to mitigate (by rate-limiting) the system > wide impact of a guest misusing atomic instructions. > - xl/libxl can customize SMBIOS strings for HVM guests. > + - On Arm, support for dynamic addition/removal of Xen device tree nodes using > + a device tree overlay binary(.dtbo). May I suggest "..., experimental support ..." here? Jan From xen-devel-bounces@lists.xenproject.org Fri Jun 02 09:09:53 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 02 Jun 2023 09:09:53 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543014.847551 (Exim 4.92) (envelope-from ) id 1q50n4-00016I-Hz; Fri, 02 Jun 2023 09:09:46 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543014.847551; Fri, 02 Jun 2023 09:09:46 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q50n4-00016B-FR; Fri, 02 Jun 2023 09:09:46 +0000 Received: by outflank-mailman (input) for mailman id 543014; Fri, 02 Jun 2023 09:09:46 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q50n3-000163-W1 for xen-devel@lists.xenproject.org; Fri, 02 Jun 2023 09:09:45 +0000 Received: from EUR05-AM6-obe.outbound.protection.outlook.com (mail-am6eur05on20604.outbound.protection.outlook.com [2a01:111:f400:7e1b::604]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 36cbcebf-0125-11ee-8611-37d641c3527e; Fri, 02 Jun 2023 11:09:44 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by PA4PR04MB9293.eurprd04.prod.outlook.com (2603:10a6:102:2a4::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.23; Fri, 2 Jun 2023 09:09:41 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6433.024; Fri, 2 Jun 2023 09:09:40 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 36cbcebf-0125-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=NV4fd0xJkprRTIAXTMxxkfpyQafB0RAFo5ZzV+YGHMcVC6suH55hrhwkb0kLB0kizrJpkFkDTPlAPl8Kncqig3aDBa28DlIHoJ2fWVlOxP2LpVETO+QcS0OVIEVUOUILAU7Vz+SYGBy6b/S/VeUnxDgCiLKiLoo0i4JoSHO5i+kV8s/s8H8oVFt4on0iIwBbVBAcyTgC7croT8OumbZp4uHfdSmE1wTlEutfOU/ML2Ex2Bn9yYMlbXW1m6Ky9P2+13mMhv7C5Gfrm0KRAHWDDnI8LJzdfKPmDmp45QJdfAL22N1pIiTARUggXxhgImn77bO+jsNPPQ+FxsKP+S0Rjg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=qN9yENbE+BYxlLVy78NjiG3zoUq6RGsuqPWFbHNk+k0=; b=LekT8HUEnRqla96BpeMw2CGSdR9uca6weeMGRqVkVJNV8zLl2mQRdNK1lzNvKDtDfolUeKlyR+PdQwJeicSvDhN2wrSTCMexpsW7nzDuqG/eRG43VmmTqvGNhi6yDYyUivc6iEYSuKdJfGGzhfvHc/8U0a0ge0BBA8QDSlSryC1jGND+qPniU4JGjr6TquIQ57TJifWhBtvwgMKvmRwRaQX5A9Iy72CvqXxzXKnQAunrSKzTpbDbz32HSGt/vJUQezLaR8Rfij8i/V5US4HlaUeDYC9eQu/PYlCiFJtvJ9oYiNgne6u3D5lCfjGdf8xImbTP5Opoo8c3DyPw9Ug2mg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=qN9yENbE+BYxlLVy78NjiG3zoUq6RGsuqPWFbHNk+k0=; b=aPhsIK97/V1BeLjxx+fb6scLaGxJnV/EowqDJvg3J5pc47v1DQ09fJUzPX2JEsnD6WSF5Y5dETROWqlkpiNcD8X3RWE62AhTpRtSOwerY0ZZiOnoc42O4ztzfx9qI6H4bm7Vtw9FErOOweWm6dj4IxOdsO6Mg/y7tnPnYN2SAT8avdk+HTiGzKJFiNZ4ZpffwdmdCOQLgmSVq8HwjhzmZnPH4rJdr4QnZL9AOekQ+SaVi/qpJfxiPSLjN8MrxViqJUN7mOTurvGNXYRnq/NIhXVywpfVWjEuq0un18YJVkRK+9WWSD/8HiCuZFBfOLyJzukkRF6eGc/n7+uYudeDmQ== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <384f1950-08f5-b1ea-2382-5f4b87b2ff79@suse.com> Date: Fri, 2 Jun 2023 11:09:39 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.11.2 Subject: Re: [XEN][PATCH v7 06/19] libfdt: Keep fdt functions after init for CONFIG_OVERLAY_DTB. Content-Language: en-US To: Vikram Garhwal Cc: michal.orzel@amd.com, sstabellini@kernel.org, Julien Grall , xen-devel@lists.xenproject.org References: <20230602004824.20731-1-vikram.garhwal@amd.com> <20230602004824.20731-7-vikram.garhwal@amd.com> From: Jan Beulich In-Reply-To: <20230602004824.20731-7-vikram.garhwal@amd.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR3P281CA0144.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:95::15) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|PA4PR04MB9293:EE_ X-MS-Office365-Filtering-Correlation-Id: 681eb990-ac5b-4183-0138-08db6349190b X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: lejCIhnWvG0arWhKrFccZfCbiNeW04yzSzy9g2kP9qfLPKltVJBLm9X59hD0gXykKyw6lY/2xQ2CM0IjhT4kiFZOxh48U+Kf2R6hgeILIAECr8v1ATbX9S7/cnJ64p7ufGL2Ocx3GFjES0ragr/KZy3ZHTHRY+T+J11kEncAByK/RBJECF2Yf0G0WbyqaF9Sw0IDUda//Ipfi1M1/0xN2tDJKHByBPUTx0CD+LT7PrqL9FxQc1qRmIMnoJwHjclZbye2V26xOnmU0bgEtpYV15HRhKyWYSF7tHGPbdw0pZnqavRf0YRbW+Zl5G+bzS0Tt7DyQpckriyx+NPU34aUOgZvbVIOmLs/zoYO1TWXOWMHaZoKHAuWWWAj9Iwkid5ElfQ3vPfCPI1wvCWq0KeS13y54LY0CFw/FVLVHRecMAeH668QpFAolCN8Vam6GgdmxJaCvlAgxveAYVV8NfEqiFZkeF5i8FNwoPrI3Eh6L08Ympzl8wvJhLG2AIt0ag1S9lA40uHQkI+rQHB4d5UK0HVe9MojOKD7rx301m8iwxL3raMrbOs0XII2oedEh+bRzrWc/f+8lAN15LqfP9mnx2ldR6+GF0YEdQIlRgytwZx8RtKg0JLM2FBpXuwaNOMaOpJzTit3tGcnz4JcvbR30g== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(376002)(366004)(136003)(346002)(396003)(39860400002)(451199021)(4744005)(2616005)(186003)(2906002)(4326008)(6916009)(316002)(66946007)(6486002)(478600001)(8936002)(66476007)(5660300002)(53546011)(26005)(6506007)(6512007)(8676002)(66556008)(41300700001)(38100700002)(36756003)(31696002)(86362001)(31686004)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?dDNENnZ0cTdZTEozYzczMm9rSDhPTC9kRHREMlVsejlSRTZnUzhNUjhoajlT?= =?utf-8?B?TzFKWWcyM0hPRmVhNEtFejRFM1VmVWhtTnh1RzVqa0tENUUzdFBQN2RxYzJa?= =?utf-8?B?c0wxeDRydm9TUlBRSG9sQ0hQb0VKUURtTjFBWEF5OGpjR2g4anVEYXNnYWt2?= =?utf-8?B?anJVbzVTZDVNdmtYZ1pDSldLQk82TUJvQ0NkMkV5ZlFHd1MxRVM0aWxYYkI2?= =?utf-8?B?WjZaVXYvV2dLd0dQV3ZRTzRVejdVcFR6OXhQQ0E4Q2RyN0xmaE1PSlR5SDRw?= =?utf-8?B?aDVSelpDeFJIQm4vSU8yK1F0SnV3dVBjeEtPZUpmb0t2T041UUlmQUlsTjVj?= =?utf-8?B?bjBNMXRlUkxGMW9oVEMycllpcEVuRWFJblNhQ2h1S2Z1Qk5jaE53aHZBaWpI?= =?utf-8?B?bEdJdW9rSUtmRlppZ3pkOVhFQTBXMS84SkxBeC9Ia2o5QWxYL1J0d2c3ak5H?= =?utf-8?B?UHB4M2F1K2ZJUlkvQTRhNGdsa3lDWCtMUGJXN3pIVzFxSkdBWVF6QXNiMWIz?= =?utf-8?B?VUJlMmRKcDMzTjBNUllvR0xwVnQ3UTFDUW1BT1RXamo2NmZiZWZaRFQrUXNM?= =?utf-8?B?SnZ0QXhMMWdGSHd6c3pmU09MY1NzMGF1MWFIUmhiVTB5Tkxta1hoT0Y2djd4?= =?utf-8?B?cUkyaTkvb2V3Tzg1Z1l2WUVBYWVDUEc1cjdhanV6em1kajRlbittOUh0ZjRk?= =?utf-8?B?SW9MTXpQU3BmempyQmlxK1QxV0k1bTBFVXNqV0NjbmxTNnNvdVBGQm5ZUFdS?= =?utf-8?B?a2FMMHRHVDh0ZGdBSStiaUZGdS9zNlVtTzN6RElhZVBHZ1RPYUFacEVRaFNi?= =?utf-8?B?ZFVpUXRUQWtybG84ZTdreEVBNEowbnVocnRLbVpUNjk5T2ZCNEc2RnhlNDB4?= =?utf-8?B?RUFtWlh6MGdtdm9EWTY0QkZNOUdXbFFyWnl4SGhqcUdGcmJNQ1BnbWJHcnc2?= =?utf-8?B?SEZ1aEc0WGdZbWh5SU0wNlh0c2ViN0lNOFNidUZPNGg1MXdseXEyYzVmSjdE?= =?utf-8?B?WC90R1B3NGlpZjkxLzBMOTZyaEtIZEpab2t3dDBpa1JzZkxxcll3VTREdGR2?= =?utf-8?B?QTk1a3BuL0lpcUlmMjJnTmJZVk43Z1RHalpnQVoxOWdwdlk4M2VvcmxCOVA3?= =?utf-8?B?bmhyT096VFdHVi9CVWpIeWNDakVzSThmUTZUUnk1ZFMwaDlKVkhsSUxwZU5i?= =?utf-8?B?bFdFTGlvSGltQk96MDdaWllGMWluODJGSm9YT0FBOEN1MmduTVZDRUx4QU1n?= =?utf-8?B?ODVUZVRWNUl6NzBybzNPcERQMnYxaVczT1dJZGhoV0l0YTFBazZpRSt5Rjlx?= =?utf-8?B?ZWdlbFYzdGJ0Q3NKMk9iSXdlQTRpNmJhZnJYOE5mR1pCNEtYelRVR09lY29x?= =?utf-8?B?T3N3dFFTTHpIQ1BKZ2dHSG8yOUE4eGFRK2RyelQvOWNCRUY5WVg2TllxNC9u?= =?utf-8?B?T1FDcGIyVzdOQzhjbG1ZR3VDajYzaVV4ajcrYjdKOVFxNmwvN2o2aDRXRDFq?= =?utf-8?B?MVptcVQxZDFURlBYWkxoRWZObHgxR0xDNm5jMkdCUkIvOEFBWVB1NEx1VGcr?= =?utf-8?B?SG1qSlFMQnJEblRSRHkza0Z2c0V3N3dPamsyTGcya1J2bmpYbGZZS2E1dFZl?= =?utf-8?B?Nm9HS2ZhYnhnZW5LZXpwTTdUeE14SG0yVVJtUWFhUnZmcnpLM25nd0VDYTRJ?= =?utf-8?B?aWk4Q2UvakI0UHJDQ1Rqayt3Mkptd0xLMTZpZ2R0WVB2TUlUSDREU3o1THZt?= =?utf-8?B?OEV3TU4wU2xLb2VOWjg2d21ZaUJ0OTAwZHZnVHNqS0o1R0x1RFluLzE5eHh2?= =?utf-8?B?MG1ON3EvTUxObkxSVU1KaW1kb0kwS2hXcFpjU1JtbmwzdnpXZ3ptcFIvbmxp?= =?utf-8?B?MXlnUFhnTnR0dHBMcGcvMTlxWG5lenBSaFNvNXR1eWtvYVk5eHM5SlBBdyt3?= =?utf-8?B?a2ZLMHorQUdjWEpNVnIrN09mZnpsVEs5MlJ3dFJtWkJ3cDlqTEV4YTVhYS9v?= =?utf-8?B?MVdlcU54Z2x3Q2IxYmJnTXZ6KytSMHlNSWEzczdNTS9sUEE5Ty9UQndFdmQ3?= =?utf-8?B?RVNRN2NxMkk2djVjbzQvNWxEbWxWNWdJdmcwM1BiRExNQ3hGUjZidWMrbW8v?= =?utf-8?Q?QSaNmLX1ha3gaQ7Z7neYLTxOZ?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 681eb990-ac5b-4183-0138-08db6349190b X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Jun 2023 09:09:40.9116 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: ++NhHmNnAbw9xy2tf5aX78+sx68V/2WSgvdIZcnntJm4DE7VDovPHyoZil1hOd4WGU707BYg3n14buwajFLl7g== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR04MB9293 On 02.06.2023 02:48, Vikram Garhwal wrote: > --- a/xen/common/libfdt/Makefile > +++ b/xen/common/libfdt/Makefile > @@ -1,7 +1,11 @@ > include $(src)/Makefile.libfdt > > SECTIONS := text data $(SPECIAL_DATA_SECTIONS) > + > +# For CONFIG_OVERLAY_DTB, libfdt functionalities will be needed during runtime. > +ifneq ($(CONFIG_OVERLAY_DTB),y) > OBJCOPYFLAGS := $(foreach s,$(SECTIONS),--rename-section .$(s)=.init.$(s)) > +endif I have to admit that I find this odd: While it may be the least intrusive change, why do the objcopy step at all in this case? Jan From xen-devel-bounces@lists.xenproject.org Fri Jun 02 09:19:55 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 02 Jun 2023 09:19:55 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543018.847562 (Exim 4.92) (envelope-from ) id 1q50wj-0002aE-Fv; Fri, 02 Jun 2023 09:19:45 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543018.847562; Fri, 02 Jun 2023 09:19:45 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q50wj-0002a7-CP; Fri, 02 Jun 2023 09:19:45 +0000 Received: by outflank-mailman (input) for mailman id 543018; Fri, 02 Jun 2023 09:19:44 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q50wi-0002a0-Q3 for xen-devel@lists.xenproject.org; Fri, 02 Jun 2023 09:19:44 +0000 Received: from EUR02-DB5-obe.outbound.protection.outlook.com (mail-db5eur02on2060c.outbound.protection.outlook.com [2a01:111:f400:fe12::60c]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 9b59c0f9-0126-11ee-8611-37d641c3527e; Fri, 02 Jun 2023 11:19:42 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by DU0PR04MB9393.eurprd04.prod.outlook.com (2603:10a6:10:358::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.22; Fri, 2 Jun 2023 09:19:40 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6433.024; Fri, 2 Jun 2023 09:19:40 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 9b59c0f9-0126-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=l0kDEJmYlA+m5xw4O8vvdfVma25iaAAFAHkteutBDneeRb02zJKJN2/KC+FLHKFHFkzaeemuzk5aGI6t/ZNk+OivV/9Aodg1uOL6hspWgBmugTcuC1jxJPhN+wYK1bK0pcQUBccuODezLmnyeCvNbU9BPKGJ1jo6hEQe08db/anxkY1GbhhwSo0KfgA2p5Wv5rfCQdh5u3dRhcAhUftOY8yTaCWhSyxxBtTfy9xkqbfc1KcJi9RAKedwvlUeml+/Og4wMOp4bfGkR/LuuuwdKrqvIBH7Cr1bQyvXMZfIcJs1ULSrIFF+xlbOCZdY0px/BDwhso4dXlGbWcZ0pz7PaQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=y+ymrAfqiNHEOmSRd7iPMqzh5REH8+T2yZAiS3rj7jo=; b=UJuKJo6IdwTw6p4AT8L/yDdjXONehb4yhg7Mg1E+Sb1O8ERczVJLTatPVqhLcVYtPk2tK4H0fCpnJDc6dIFIgo0OQ3eNTfKK2XEnDgUquYtXpL7TpXp6vNrLkGcbUXRgm3l951NoPWE6wJAA4EGGhiRMfNOBFgV3JVpGZ16I8Td25kpNRA0qYG1O3iWnIM1OFri3vvuG7JDLtPx9Cj+9R+9CIw6ai5fHyL9XOcoGU5PTPdQe4htmhLyB4/33TjMb8hvRfIAzUEa+41oZb45itls5Af9NsUSkLHJ5qqjvgspZcwJDQDGaZTykVmiDq48+ESKJfhLew9a371WcCE50Lg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=y+ymrAfqiNHEOmSRd7iPMqzh5REH8+T2yZAiS3rj7jo=; b=Jk1WQig+pMEbycrn1Kn0nDXWRET+gJVxQgepqCSnJIUOsgXGMO46yeaUQV1XO34BRN6W0eaXI7QPnftc61SnnMrxSeFI9DnscAfMOWMOiRpI/H3TcMEN/d820s11+11z2xjX4KPJ2xyCk/ACl3a/di9KHMmyRJ1bBO8SJo1o0nyAmP1by2cL4QcSAd2gasO9jim2qp7/cXXn/byBZR7c2DBzcSbsz/dEMwyiVZT3mE4e+QneHd9E/uhjVd3UJwhhY0TT65RapElgn32jg4ALLUP/FSMLIgpJs+SXl1I7yMQomCiDv3UHuW05MkXrRxS/224yP6YQ70XsE2kDipWOlw== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: Date: Fri, 2 Jun 2023 11:19:37 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.11.2 Subject: Re: [XEN][PATCH v7 09/19] xen/iommu: Move spin_lock from iommu_dt_device_is_assigned to caller Content-Language: en-US To: Vikram Garhwal Cc: michal.orzel@amd.com, sstabellini@kernel.org, Julien Grall , Andrew Cooper , George Dunlap , Wei Liu , xen-devel@lists.xenproject.org References: <20230602004824.20731-1-vikram.garhwal@amd.com> <20230602004824.20731-10-vikram.garhwal@amd.com> From: Jan Beulich In-Reply-To: <20230602004824.20731-10-vikram.garhwal@amd.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR3P281CA0161.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:a2::20) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|DU0PR04MB9393:EE_ X-MS-Office365-Filtering-Correlation-Id: a7a84adc-12f7-4846-3bcd-08db634a7e25 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: EwpFBLbXX+ELOyhdvANY6u4rHFdaVwRt5YDabJQdVVBGbn+FRU012ItDnFOiFfP3mAZwHKjfInUxU43Mcz3Zuizx4RRXB9YRisDsbMl1Lhi8UP46W+Hynq9APHjr4tcERMlPx9InFHqjp4+bd1ih5o9wqKb0WrX902bISOOWwbUtsCtWTG4m6kNDxjhW1Stoo72jpY61EFc8Ue4YBMLJveLtQfp1Q+36GpyfSGdbIzUz0KBMNjNIzlYguTTIyI/2aZRAPi3/CcjrUZRaucIC3+tU0eQYu2iiwy4ReJKpqOrLM1VU8bKk3kJ+pM5AgASdL4L9aVtRXBbuKSGETNoOUffd7ZFEETKxoS1YVCbse4w4M78AfLgFEtAXgTKFvI+4ndYGdU7swN/E4n7ih3adkxOve4a7SHdjW2HJhgnGhW3qVMvurAZkB2mzCMpsOWgvGtepeCnYG6IzFLmMfWOJZP7qwLYDwkhLl39zUG8P1Q07maOaUt4rj1L/9pOV1JfToJx7AMVL3fK8+/u3s25DWl6ZOYh1p3ez2yDWo3XMxMFYgE3gitMUFnMkZvCIgo30/xdyborAkc1ytTDEPO6hQdDM+RWbBXdlPSxdAOJGIVpX8se7v5EN5kNxlSymD3V/cIZdTD3As75DjIGxa1IQ1Q== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(376002)(39860400002)(346002)(396003)(136003)(366004)(451199021)(38100700002)(86362001)(31696002)(6486002)(36756003)(2616005)(26005)(6506007)(186003)(53546011)(6666004)(8676002)(41300700001)(2906002)(5660300002)(8936002)(6512007)(66946007)(6916009)(4326008)(54906003)(31686004)(66476007)(66556008)(316002)(83380400001)(478600001)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?dkRXd29XQnRISnBrOUNqM2U4OE1aREFNa3NzWkFHK2UxSnFhQUZtYlo2OHZu?= =?utf-8?B?ZEJKaE9PZXlpWS9aaS8vK0FQODZtMzNrVGFycVZRQ1JVWG9pZDhVNnVXUi84?= =?utf-8?B?WlBMVkRTL3NEZENiVjA5dGR5aFgrQVZLWG56R2lnZXlaTVliSzNxUFBPcEpI?= =?utf-8?B?NXJnS2Z1YjZMRFdiZFhNTzZ5U2FlRjVOTS9uVXJzM3dsZHZ4UnlYb0J1QTdQ?= =?utf-8?B?YW9MNkdHcE1CUXpUeHgzeHlQTERLcjRjYUFrK2pkdU9WTVhCMmxDOXR1N2Y3?= =?utf-8?B?V3dYOWplVXdGOFV2eWVsc2FEV1ZvYWZHWFp1RDNIK2tzTkk3ZUE2VEVnTitm?= =?utf-8?B?US9sL3FEM3VHejdiOUVQOXJtRDE2Zk5GWXg3dU5uYlloRUwvQzJxZFUrTVRS?= =?utf-8?B?ZUlXcXNHajFkeVhUeFVCV25JWVVEOG9kYW12NlAzM1J3KzNQbGV4MEIwNEVF?= =?utf-8?B?Mm9sU1FaTVdJM2FWRUpTdVF4QU1tNE42V2g1RmN0d2VmUGdSak5pbmxNcjRI?= =?utf-8?B?T0ZvVFA0OGFCckJVa1BqbUdDNXlmU0RpY09lUEZIY1ZaTFVvbDZDVTZ2Ymxi?= =?utf-8?B?QUYrd1lxdFZCOU9Ea01FeWlBeGtOQXVFa0VDLzdHSU1LZ0ZMRHI1N3orU2Jw?= =?utf-8?B?L3lzaW9QRHREbFg3dzVmVTZnLzB5YXBsWjdlZjJHQ2Qwc01OcTZZdElxcHRI?= =?utf-8?B?aU9DT3RHak1JNFZaTUR4c3JrYStxYVE3L0VnUlNIWStKUTcySEtJUTJXWGRI?= =?utf-8?B?dTlVbUVlWFl3V2hTQ3Y5SWtOWFozQlQ3R0QzUWg4R1dINDloaDZQWUtLd0Fy?= =?utf-8?B?V0Y3QTNZSG1MYi9kU09CQVlSR3FnYWo2Wm0rYlRCNm5BZUtmV0NWa0svbjBp?= =?utf-8?B?bG96WnkxU2k4SVQ5Ymdsa0Z5eEM3ZEgxRUFXbCtxcmxSY2tYaUIraHA2MzlD?= =?utf-8?B?Z0hjRU03SGpBVXM1eGI5L1ZiOE91R1NZUWRNeXlaWlY1QldHZEVZQlpzRGUx?= =?utf-8?B?cE9LREJOcmh1SDNjY2FEZEl5dU5zdHhyVXNIMVRvUDgyNnZwM1J1a2JMQ3Fo?= =?utf-8?B?RUMvVCtSRjBzK1BtbWt3NFdQMjQ0TDZ6VFJYSUVsM284VnI4TjNiZFFUVG1p?= =?utf-8?B?QUtUdVUzTVRJaWFHYjQrWkJhbjkzajRnUUxhQWhsR3dwWi8zV1pQWUUvTDk1?= =?utf-8?B?U0MvcHlwTUlRVWJnTUtyazJrVFQvSXBBUTFvQTNYeURuU3JpWUViZmJNK2FY?= =?utf-8?B?NVJ2RUxybG1HRUtSUHdtQXJta202TEd3TGl4TW5RSHdpSWNjUllLd1JvOTFr?= =?utf-8?B?aVBXcUtVcjhWZHpDMDl1bjhlNWNMeVRBK0JhdWw5TkttdmdIZ0RmNzg2SHhk?= =?utf-8?B?Rjd0TlA2ZEVsZ3dTSkg1UFUrdDByVGs4L203SXg0cTB3Nzh2Ym1EeGFBakhE?= =?utf-8?B?STErWTYxRGN1QW5SeENGaDUwbWQxTktTdGdlZU05amdJSXRSdjBIdm16Wnpu?= =?utf-8?B?bVAzYUEyQS9QYTNQUC82a25QSnNnYUVBUzEyRTQ3N2ovcnArYVlEcW9oWnRh?= =?utf-8?B?Y2hodDk1eDRqVWRZN281dzBkQzc0a0FGb002a1IxVG9EV25FbHlkTE5aUnJN?= =?utf-8?B?VTIrcXU5ZmJrY1VlZFdLSXpkK3Y5NWNSMzgyUmxDSmc2bTFxejY0UTBUSTZS?= =?utf-8?B?TUtFYWNkTDF6WWRzWUlkYjRjMUVGd2hrSkt5dThQaDdXb2lqZW1Idm1VUmh4?= =?utf-8?B?TzFDSkJQaFkwcFdqV3R3dnUra3RWLzlNZkpPMUJFVmtyeUZUSVUvaG9ZTTJX?= =?utf-8?B?YU9lSnN0U1ltTXg3RTBuN1BvOUhuQkZaN3llS3RaNVdIcUxTWHZjSjVnajh2?= =?utf-8?B?c25Td0QwMUtra0liNDdUT1QxUERyUjlKdnlGcjdkODRZcGJhd24zcS9KUWRs?= =?utf-8?B?VDBUSjYwSFhnUGlpMHNUcTc1Q1plRjJXdWM5dDY3MmpDUHFQVGsvdWZuRWRn?= =?utf-8?B?YXFLcyt3cXZVZDlWWmM0c1dyY3dDQlE4a2lLYTNLZ05Gd0twQllVVGpHSGZ2?= =?utf-8?B?R0JZZjNYUFN3RDIrcG16Y1AzZ0oxdkxMZ1V3RWRIN0liSVUrK05oTGxjSy9S?= =?utf-8?Q?GOvetWWZlBK8mYcJKG+tD0X4T?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: a7a84adc-12f7-4846-3bcd-08db634a7e25 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Jun 2023 09:19:40.0282 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: peJTuV1iOcCMUhMj0xgxeGIs/UD7aNU4j+9l+A4QFHYCbGBNheJ6ByLTYb5yJ08UdDNvEtkAjegQBvWSV6Ib/Q== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU0PR04MB9393 On 02.06.2023 02:48, Vikram Garhwal wrote: > --- a/xen/drivers/passthrough/device_tree.c > +++ b/xen/drivers/passthrough/device_tree.c > @@ -18,6 +18,7 @@ > #include > #include > #include > +#include > #include > #include > #include > @@ -83,16 +84,14 @@ fail: > return rc; > } > > -static bool_t iommu_dt_device_is_assigned(const struct dt_device_node *dev) > +bool_t iommu_dt_device_is_assigned_locked(const struct dt_device_node *dev) > { > bool_t assigned = 0; > > if ( !dt_device_is_protected(dev) ) > return 0; > > - spin_lock(&dtdevs_lock); > assigned = !list_empty(&dev->domain_list); > - spin_unlock(&dtdevs_lock); > > return assigned; > } > @@ -213,27 +212,40 @@ int iommu_do_dt_domctl(struct xen_domctl *domctl, struct domain *d, > if ( (d && d->is_dying) || domctl->u.assign_device.flags ) > break; > > + spin_lock(&dtdevs_lock); > + > ret = dt_find_node_by_gpath(domctl->u.assign_device.u.dt.path, > domctl->u.assign_device.u.dt.size, > &dev); > if ( ret ) > + { > + spin_unlock(&dtdevs_lock); > break; > + } > > ret = xsm_assign_dtdevice(XSM_HOOK, d, dt_node_full_name(dev)); > if ( ret ) > + { > + spin_unlock(&dtdevs_lock); > break; > + } > > if ( domctl->cmd == XEN_DOMCTL_test_assign_device ) > { > - if ( iommu_dt_device_is_assigned(dev) ) > + > + if ( iommu_dt_device_is_assigned_locked(dev) ) > { > printk(XENLOG_G_ERR "%s already assigned.\n", > dt_node_full_name(dev)); > ret = -EINVAL; > } > + > + spin_unlock(&dtdevs_lock); > break; > } > > + spin_unlock(&dtdevs_lock); > + > if ( d == dom_io ) > return -EINVAL; > I'm having trouble seeing how this patch can be correct: How do present callers of iommu_dt_device_is_assigned() continue to build? I can only guess that a new wrapper of this name is introduced in an earlier or later patch, but thus breaking bisectability (either here or, if the wrapper is added in an earlier patch, there). > --- /dev/null > +++ b/xen/include/xen/iommu-private.h I don't think private headers belong in this directory. From this patch alone (including its description) it also doesn't become clear how (and hence from where) this is intended to be used, which makes it hard to suggest an alternative. > @@ -0,0 +1,27 @@ > +/* SPDX-License-Identifier: GPL-2.0-only */ > + /* Nit: Stray blank. > + * xen/iommu-private.h > + * > + * Nit: No double empty comment lines please. > + * Copyright (C) 2023, Advanced Micro Devices, Inc. All Rights Reserved. > + * Written by Vikram Garhwal > + * > + */ > +#ifndef __XEN_IOMMU_PRIVATE_H__ > +#define __XEN_IOMMU_PRIVATE_H__ > + > +#ifdef CONFIG_HAS_DEVICE_TREE > +#include Why (for both of the lines)? All you need is a forward declaration of struct dt_device_node. > +bool_t iommu_dt_device_is_assigned_locked(const struct dt_device_node *dev); Just bool please. Jan From xen-devel-bounces@lists.xenproject.org Fri Jun 02 09:22:01 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 02 Jun 2023 09:22:01 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543022.847572 (Exim 4.92) (envelope-from ) id 1q50yj-0003xJ-Rz; Fri, 02 Jun 2023 09:21:49 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543022.847572; Fri, 02 Jun 2023 09:21:49 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q50yj-0003xC-Oe; Fri, 02 Jun 2023 09:21:49 +0000 Received: by outflank-mailman (input) for mailman id 543022; Fri, 02 Jun 2023 09:21:48 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q50yi-0003x6-MX for xen-devel@lists.xenproject.org; Fri, 02 Jun 2023 09:21:48 +0000 Received: from EUR02-DB5-obe.outbound.protection.outlook.com (mail-db5eur02on20603.outbound.protection.outlook.com [2a01:111:f400:fe12::603]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id e563841e-0126-11ee-8611-37d641c3527e; Fri, 02 Jun 2023 11:21:46 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by DU0PR04MB9393.eurprd04.prod.outlook.com (2603:10a6:10:358::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.22; Fri, 2 Jun 2023 09:21:45 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6433.024; Fri, 2 Jun 2023 09:21:45 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: e563841e-0126-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=b5S+k0fcrC6oXWvUI1TlFMgGkb/yl4MAEjrwgp5CKLo2N7VIELx9ySFC6J2g3qwXLPCAn2FkUv4xcQ0E5YNt2/rnJhFXcCNw/HXy+zLQRPhEvN0mlkBkDc8BFh370fIdwiDWkDjajI4YQ+kxzH95OtAN4bDIPVNVJbSez3pFphv9bAksQjLIKcSFfU7z7mN0/B7b4Af/iNxOksL9Kkx7PXfuV/1arYrdErq8+0ITADAA65HX+mZNcBuqdsjQiVc3dfxTiWhLwE/uNriJyjTVALris5BWVsdXDRlWl69VsxYdH1KQsPklVjFDzJOQ2zGmMS+rsjbl/RlHhP1zagXRdg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=lbZC6dZY6YdExwDtXlp0yV00U593axmZjMsekG7IToU=; b=IWuWfutYMx5ejSvsgMZOT0DmQYw2yHJwJRWvXizSk/nRYXeHt/Tmdn8pEprFsqONOzJe0uIGZygGaouHO7+4xuTCyDpfnKa+ad/YDHtZsXmYWujF2sO5LGosaQhi4mi8cCIypEkNB2ELuyga+f9GxNyKhnbL7CWsFq9NcPshMk6IHEC/G8Ypbf793tQ+XX5LneGwh4FyYN7N+HJ3owLH0f6QNADEdXcXpDG56cn15HSuub72gECMJ7lXxSrCcMjBbOMLeBlwSfgOlToiPy6T1QtPjseI3OYMu2PlNOpuEgX/faH/uTLO21w8rvQLW8YK326zyg/fHOfUEcmOYNOp6A== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=lbZC6dZY6YdExwDtXlp0yV00U593axmZjMsekG7IToU=; b=ZvIJUnIs+o7UqbdwdR0Ku/mzuq5t1dQrshALc3uxf/HSUn2JCb2juauLUPSdmq++8xnV6uHtNR9KXBFBgmkrajG1NlSDu5y5BqWGf0d1cPofddlEpVGmbyKJ0vp4G5q8qsluUuKYHXVVKr6Xv/RID7U8xrCxKKXRPo6nQgiRmarXK/wTQbjgG+O49wdix4Gnl1DUOV/Uko+WAUtJFrppue6WFOjJOhZe6exKE8WGHXHIqf3bssutY0rySRLrDXwwJ6v4VNCMZUU0FjtC027iLpNhsZ6s82eYXDXWlBPmkHyR5QvKcZV+er7I0EWAgjm/QrJXukp6h4ki+Bwdqx48lw== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: Date: Fri, 2 Jun 2023 11:21:43 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.11.2 Subject: Re: [XEN][PATCH v7 10/19] xen/iommu: protect iommu_add_dt_device() with dtdevs_lock Content-Language: en-US To: Vikram Garhwal Cc: michal.orzel@amd.com, sstabellini@kernel.org, Julien Grall , xen-devel@lists.xenproject.org References: <20230602004824.20731-1-vikram.garhwal@amd.com> <20230602004824.20731-11-vikram.garhwal@amd.com> From: Jan Beulich In-Reply-To: <20230602004824.20731-11-vikram.garhwal@amd.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR0P281CA0084.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:1e::23) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|DU0PR04MB9393:EE_ X-MS-Office365-Filtering-Correlation-Id: feb404b2-19cd-4965-5852-08db634ac8dc X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: YnyT0EIPsAju2kLhWoNWbnhkryQrj58AYTHPbZDV5UrUd0k6Tx24nxpMGG622Jfr0e+09yYzAaU+2vBJCfg5+qrFumsHluJX3bwQqrhnxqK8RFuGb5b4eqRE5vfO2Q0+HNaSMrhSNTgNIUXF/xlA6Ml/zkhxwzcCUZETxnnGzia5A5PYx3X/8TbJrkXfmqUiytUJcEpeyrKtcsftehaz/hDr55epy1YbFC5Q1VvI8uLiPh63DXWb/3U3ijJYVyJE3NDGy+l95LpXy6TJO6y2hbbwkAC4FOw3WFA+9wS+50+gdKVyind/OXWNDnW6n9AwFifU7FIosVBcBAbo74BEfUMVivBLRg0tlWrD/DF4lRlL9QUBdf012xRimOdl2QhbJlTbGDOrVrkdmF0IpNGH9c6g1CCo4VGU/JtT6J+GnWH1j+JHHBNjrBB8V21TBcHQxESiPCe6VaTBaCTIBuGCShlY084SCg7jzG+kOL4J8s/yIpOE30mKwgQ64lOYcNgmaycot5VGAA2BpgVn7tpJE2zzYMAdagWxtme4jyQibH5rp0Kt3qvfsnNI8/6fWVXw1LDiud1AcH3ThQa2U1dD4M5hCJ173pXR3b7YmUp73Xe1y4pSbzcQvbTLY2Iu5L88LbLhoQNVFxk+pRh+ZS8MfQ== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(376002)(39860400002)(346002)(396003)(136003)(366004)(451199021)(38100700002)(86362001)(558084003)(31696002)(6486002)(36756003)(2616005)(26005)(6506007)(186003)(53546011)(8676002)(41300700001)(2906002)(5660300002)(8936002)(6512007)(66946007)(6916009)(4326008)(31686004)(66476007)(66556008)(316002)(83380400001)(478600001)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?UEpGOE9JZG5LQjg0WFlVaUd4OThMZ05icjk1ZnpHajdhdi9XOGZJbXVZSDRG?= =?utf-8?B?VHg0SVBDNXNkcWdTZm1zTjY1dnFuc04rcWN0VUN2cm4xdXh0OW05VS9McUg1?= =?utf-8?B?TmZGaWxYOHFWeTR6S3FKTWI2NHZaYys3ZWRRNEhwcEU0K1Q1QjU3WmZINFI2?= =?utf-8?B?UWxrWmtucjNKTDVTa1VXZHdKSkliYWh5U2hkRWVUU29XT1J2dVpjMmRHWHFW?= =?utf-8?B?Tm9OY21uek1DRWFlaWdoL3hkN1hPVDg0cnJEcG85bXhsYjdzNU5FNU9IemtE?= =?utf-8?B?cjJHRm1CTHdQNVVVTEt0cy9MSmlFbWoxZnVoTW9DREt5ZTNKUkY4UHZWVnhL?= =?utf-8?B?NlBaUUN3SEdOdEVtMnNyQ1VEc3RlNDl3a1hlcHR5TmgzNW5nTXVURDlmZ1VK?= =?utf-8?B?YWx6Nmx2dGRkZDgvV1hqUmdCSDd6TUVVTzdWa3M3ejFxWnJzMWc2UGErN0lX?= =?utf-8?B?Q3JjNmF0eEtDOVhTanl1a0hVRlEwZElqRStFSHRGSDJPOWRjQmVGQ3pBSUZE?= =?utf-8?B?K3JRQ1EvR0VpeUVHM3VucTYyZTNCSTVmTmxSR3k5c1V6aXhIRURtRVFzb1dp?= =?utf-8?B?NlJCZW9OVG9PcGdnQVo2RWtyV1hWYTR3QThJUXZKR3ZuYnd2b0NoN1FtTkFz?= =?utf-8?B?L050SzAwcVhKK0VJK0RKUWFaY2FNZnJ3NW1idk11ajZqenhEeWNmeEVubEY3?= =?utf-8?B?Um44Ync5bkZzbk5UTHY5QXd5b01zNTQyUVA3bWY5enpRd0toVFdoalRJc29h?= =?utf-8?B?NHErbjhvS2NNWHdNalB5RW0vR2NTem5RUnYwbnpOeHFLd0xmclRlVUM0K3ZK?= =?utf-8?B?REZ2V3BuT0RIc0UxRTRsRWYvRStJZytYUFI1Zm5ScDVSa2tTempmRUVaYWJ6?= =?utf-8?B?OHIvaG1sZDB1RURiK3h1NzdiaGVUWFRwOHJUOXZ1d2VjQkZWdzRLYVFlSkxZ?= =?utf-8?B?a1dpeERFUEZVNDg0azJRU0U3dnJsTmdWOFlVUFpDNCtJQXRoTlZyZ0NhQmkx?= =?utf-8?B?b29UTDk0VUhMbWNlL2loRUJKck5hVk9aNVJDZHR1VmZEb3VBb2x0UHhQdzFM?= =?utf-8?B?QXN3UGNsb2VUa0VpRE5JandtSlFaV3ErVHFHSkJkbnFCMmlodXBIRnFjdDAx?= =?utf-8?B?czV1Nlh2TUlnOTdTYkc5azNIODUxeWpxMWhVMEFERnR2UUdOUTBZQW9nRHRG?= =?utf-8?B?L1BVbHZ5NkdWb0RXUy9uSmxCUU9UeGU5ZlZGTDV2cC9MWXlIUFl4K3lOYlo2?= =?utf-8?B?TXVNT1grRVlHNVgrOXM3bExQNWMzNEVTRGdSZjhHWmhCTGt5REJLOVBZSDl0?= =?utf-8?B?RlVFdmJuc2ZPNnhQQ25zNkhKZ2gxM05LZjRjdGRhRldzUjlkN3VMRkVQdjdT?= =?utf-8?B?K1VQL0lJN3lnd0RMR1hXODlxWHA4U1JRalFnMGdFT3pvN2xPaUNsYUNSWnZx?= =?utf-8?B?MW8zekczazRINzZJWDNJYmp4RnE3MUV4Z0l4VUZCRS9DU2JTRVUyTXRoZVZE?= =?utf-8?B?Y3pQdHp2V3VhamtaQzFWc2w4VENEUkVTdjdhZjAvUkN2S1R5UFRSc3VnVUVm?= =?utf-8?B?M3l3VGxDVU1QMGZ0c29udDUwWS9kWUhkc0ZYUmxCTFVlMWI5VDYyZkhIZTBQ?= =?utf-8?B?MjdSQlY1RmRwVTdlZW5ZdVQrSisvblZXejlJKzg1MzhBVXQxbVNmdWltcTBN?= =?utf-8?B?WFlDV2dCY2hheUUrQXkrT1Q4eUNPQzJEbXlvQ2t3Vkpuc2dGMk1WTSs4WW4w?= =?utf-8?B?R2kxNFN2TEh5cjNrUEQxazYvZlRzeUJ2REVhZmtpSVdnYlduTCswRndncElY?= =?utf-8?B?UWg0eW1YTW9UMEZtQTNLNzBsbE5XQWt4c0xia1BXeFNpRjZTM3JZM3YxeE5O?= =?utf-8?B?NmtCa3ZKOE41aGQ3b3RhT1Qxa2JBbkRDTEhoT0ZIOTZYQ1AxbDhqUEVYbktY?= =?utf-8?B?VVErS1grK3lnSEJsWnNvbko0V3VsRThNdjZuVmpGUDk5NjRSdU81VEdEZ2Z2?= =?utf-8?B?UXJudWtMclF6ZkRqVTdBY2pSNFBMNC9kZ2FvSUorKzRxRS9hYXpZUGVLMU9w?= =?utf-8?B?eHlOODdVOXhJY0Y0VURZTCtyd2VwMU8vd1haK1IvLzF3cVNhS2swR2Q3a0cv?= =?utf-8?Q?2V3zPsckSGRa8ZvrCNLd1/ART?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: feb404b2-19cd-4965-5852-08db634ac8dc X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Jun 2023 09:21:45.3972 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 92su0e0GrhJVgbwNCagvlnzeO4TmFwFmMNG7WWgmN5nNr2WaMf0nu6ldeCepHY+SvwzjS5hFFMvEmvK41ZQ44Q== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU0PR04MB9393 On 02.06.2023 02:48, Vikram Garhwal wrote: > @@ -189,6 +194,8 @@ int iommu_add_dt_device(struct dt_device_node *np) > if ( rc < 0 ) > iommu_fwspec_free(dev); > > +fail: > + spin_unlock(&dtdevs_lock); Nit: Labels indented by at least on blank please (see ./CODING_STYLE). Jan From xen-devel-bounces@lists.xenproject.org Fri Jun 02 09:22:59 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 02 Jun 2023 09:22:59 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543028.847585 (Exim 4.92) (envelope-from ) id 1q50zh-0004ZM-9i; Fri, 02 Jun 2023 09:22:49 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543028.847585; Fri, 02 Jun 2023 09:22:49 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q50zh-0004ZF-6R; Fri, 02 Jun 2023 09:22:49 +0000 Received: by outflank-mailman (input) for mailman id 543028; Fri, 02 Jun 2023 09:22:47 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q50zf-0004Z2-SN for xen-devel@lists.xenproject.org; Fri, 02 Jun 2023 09:22:47 +0000 Received: from EUR04-DB3-obe.outbound.protection.outlook.com (mail-db3eur04on0626.outbound.protection.outlook.com [2a01:111:f400:fe0c::626]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 0891b969-0127-11ee-8611-37d641c3527e; Fri, 02 Jun 2023 11:22:46 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by VE1PR04MB7469.eurprd04.prod.outlook.com (2603:10a6:800:1b0::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.24; Fri, 2 Jun 2023 09:22:43 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6433.024; Fri, 2 Jun 2023 09:22:42 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 0891b969-0127-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=R8gaeO3m8rdflYYarNNbpKwaEfIvfjgzO1danDZtPd+UDW2U86Ehz9zdvHwLYgxiE43gEja1RyqH0R6/XhhQse35oMLvfIIJpvfJ8dyQqxAmLerU3ovv31hEkKaaCh/UxuMUxwNOGcsK5MnIkuPrd4snzfUMg77cr26GbImPtuy4MKzL2v6tkNnRzIuGT6OZa9m68z1tTWU+CSyPstIukFqI4HZk7TOSKijCsLqTSuDSAoxLph4ZlQWSYhEv+xyH0TGgL2FrgvO98edXhMs0xdedmxNAhgLiNC6JaLpFo+7XxPa0e59qKrZB9oDTNBZjbpf4wolP7L04WwoK6kPptg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=4sz3cIfM+RxhbSvoJSZ1fP1qiiqRjWDYZWsj6/2Cdyg=; b=E33jmVGIn57im88Zvv1lIQU/CLlj4ZQUP5WRGROyXWCqeVJb3DIZAb4FremtMQKX0mOyzT1MbyKXYZNcp/ToQ0AON52tm3ktgE0xahMqwdHT+O18RP1xSkU6dvgjNJqqaISj0jmDn7nzjjZfkhLaFfXZjzLX8FuldHfmU29gmdvw87tG6Zv/zk+xLCaDif5I0WtZzge/N82wvEXBR0v5/If9y1dcGoKEgUC1WDa6IPJmTLF/cqZPcN0sohf+jx25F62hlMSSRTJdZ0aSbmVYuNWRS1f9Q/AV5tlnF65jNoMmyPflvG9r/NszNtWjN0GnL8RYOYNgmsbVT4iwTO6E9w== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=4sz3cIfM+RxhbSvoJSZ1fP1qiiqRjWDYZWsj6/2Cdyg=; b=bYR2alP34prfGZPodMEPSfOBQ9rrrKqXVGdTsXbRD57PJiNYkoj15MSr6dOlHsk/FArFjopAqmSEh/NvZoVtfRH7fmFu64WrynINQiAjyJXU7VyY3ArCROOj8JkgHCnfBITdzQqNRXdU+QGMPDqbyHL55kPyKIGM+qnuMMAhERZVRVW4guV1agXKQChBxeUtSaeZF6ay0WKScnOuuXt+WE/VdMhKF2pkdAJU4pKscl77uea73K6J86CeK7PW4G7ZkQihdyNiUxijVPML0m/OveUeLMnfDZDdfHYSn6H8GICK5jsWSfqGF33f8tnSA21w+J2CZaKZgkVZ/pYSaybEmA== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <36bb69f2-14fb-3517-1bf3-0441bd4058dc@suse.com> Date: Fri, 2 Jun 2023 11:22:41 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.11.2 Subject: Re: [XEN][PATCH v7 11/19] xen/iommu: Introduce iommu_remove_dt_device() Content-Language: en-US To: Vikram Garhwal Cc: michal.orzel@amd.com, sstabellini@kernel.org, Julien Grall , Paul Durrant , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , xen-devel@lists.xenproject.org References: <20230602004824.20731-1-vikram.garhwal@amd.com> <20230602004824.20731-12-vikram.garhwal@amd.com> From: Jan Beulich In-Reply-To: <20230602004824.20731-12-vikram.garhwal@amd.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR0P281CA0078.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:1e::17) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|VE1PR04MB7469:EE_ X-MS-Office365-Filtering-Correlation-Id: 4ad5486f-385a-4fe4-49e3-08db634aeb13 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: dc5JyyssJ4Bw6sllUEfLfsvwTVnRgMop95XcLAnQJ94iYHUL9EIn7D8BLuA63365e7mGZO+OK1KK68g/TMtvHSXsJAcP2PaP/xKA94YFozwhY4ctXfNBzqs5GRYQ4MO8SMK3IO20NjeDjcAskB0YW2VPzHZdZwk6G1jJ6JQmkNt71ybDnzRJLLzaAEFDjvAxLh7EWazz13gr9weNTRQKMMkcTS6lOkZBERhObIICxeOrum4xtcu4UlZekq/R/G7wGRUw4WIkZZgUW//mDODjZuIGY25Qq54M6LIrp3ObUydnrkj4QnqeeEL9xHVZ65x5zts3ji0yfRo7oAEO5qPfzxF6Oex6mUwVSTnEDnevU2y/WFkPpWxYaQ0e4WwWhKNCSNvKgg0ht/IsRhT2yBSUPiteZ2f29hwjra7UmT80mLwzBDT/OnQngF7oC77A0ilT1rtSgeUkmmWAI+C3PdbYi1mxSHOKojcTFdUt8J45THkaStdzKZajxoj3ahAkzspPaL01bV2T6MlnStJRoqthWErlJbayaaGUxLi5CHzxIhf1jNj9lR6L1x5jbziIqApxsslYytQfHyYFf1W9fdglKXX+Fu9WgQ3CaPFGd4dp8wYBKogDbr1dsWYEQeONPz9yioFCpVTr4yhyBlqpsF+Uqw== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(396003)(376002)(366004)(39860400002)(346002)(136003)(451199021)(54906003)(478600001)(41300700001)(316002)(5660300002)(4326008)(66476007)(31686004)(66946007)(6916009)(66556008)(26005)(6506007)(6512007)(53546011)(6486002)(8936002)(8676002)(186003)(2906002)(2616005)(83380400001)(38100700002)(31696002)(86362001)(36756003)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?ZG1WS1NSeEdIbVZTa1I5OWhYU1lOVXgzWk5ySlFFaVRKK1BMMTlsazdTM2pL?= =?utf-8?B?VjdLcWNHaFVGYkV0RWkzR3BoVmJWbUhNY0ZYNWtoSGFXVGwvK1ZSamRRRDNu?= =?utf-8?B?U1NPb1loY1djS3JFSXdLYzN1bjR5NnZ4QUQvaUFNdHNKZURwU21tOVI5dTYv?= =?utf-8?B?OXdBTTJOSGd6a01oalNNeTM5Z0pld2I2OUJRdzBBZXk2UWtsZ0lpMXgvU2hG?= =?utf-8?B?d21ERGdHbW1pbGlVTlUwdlRpeXBYcU1pcWtPZFM0TERXYm9JY1ZNcS83eCtF?= =?utf-8?B?Q2RMeGhPNk9FSjR6RXVqWFZrb3BhOVo1c3BDdkN2eFlIQ0I3UkJObFRKMmIy?= =?utf-8?B?azhyWkNPQ3RRVnVjOHNoU2I0aDlRTmMwcUJpd0FMN0RYM0pYdVBHQ2tET2Fu?= =?utf-8?B?cDZLR2ZvSjZzOU55cGptWlNLc2p4Ri9iYXZJS0VzbE9IMk5BV1UzUTN6bEJv?= =?utf-8?B?c29yWkZXN2pYVjU1NDBsSy81MEtlUnZpalRMT0FCZ2FmM1NFblpMZUdOT0F5?= =?utf-8?B?SFNCUWRmalRiWldQdFNrZktmejFWSmpSNUgyUDBJTCtRODNEMCs2L2w3UWVX?= =?utf-8?B?b0w2cEIraGFXVVVkeUJoWFpzRXZXZm1vN0xJOWtGS3RKd3FoTVZIL3lrOThQ?= =?utf-8?B?MVMyOC9VS1lCYXZVL1ZMRFQvaVkzYkp3U0hnNmRka1pSbVBMVkJITTJZbzJY?= =?utf-8?B?YlN2anBoQm9VSEMzNVl1bjhzZEV1ajA2RzFpRWd6VDJZVVhIdkp4Y2hBQ0dW?= =?utf-8?B?Lzk5SUk0ZUl2SGtBZkNOdjAzSnRIMUlVaWxGVXlWRElnVyt1ZGZwZUMycFpV?= =?utf-8?B?YUhtK0JVT0tMdFN2aEJUa3JubmJRbmFEanJhNGplZUtZQUVIOEEyVVFINE96?= =?utf-8?B?OTNQeUNMOTNoVEMwb2hVV2lVQVdha1NFYnFreWUxbFlISzYwWFgwS2R2TUlR?= =?utf-8?B?bHh2ZENEdFV3cG1GWXplWlZXQkpUaTd3OGh4eEVmNmhTb1g3SE14TTZsdFpX?= =?utf-8?B?WHVBc0ExRzVLUkc3NlBDNDU1TWl5a05kbXNCVlVDb3RiVXRCWURGVElIRjRL?= =?utf-8?B?cmU2R3N6b3NtM1NwRGg3b09zbVFJeEVyTW5ZTkNXOXRjMjl1NzE0RERWV0Iz?= =?utf-8?B?WjVFUURHajFkdXpmYnQxZUo3K05wbzBRVXAvenJVZ1J2Vjl4VlF5K2dYV1dC?= =?utf-8?B?MXJ2bmFrVk9mUlBCUk1HaVJhVlgrOWVGa0U0TzM4SEVvVzRFYXJEUUs3Sjh5?= =?utf-8?B?SURCVXAxekd2Y2FNRG44V2dZTVhvem9BVjc1bFB6c1BXUVMwTFlYbUNNN2lo?= =?utf-8?B?alc0c0dPUFlIaHVURGV4L2dVOFlRTDVmU3BxdTdLTjQ5ZFQrODJ2RmtudE9q?= =?utf-8?B?bHJtZitkQnAyYkIyUkVJT1Y2OG5uYUx3ZG12bUxhMHRQQWdkS25KamwyaWxF?= =?utf-8?B?dmpqL3JuQUFxaFA5VVdmWnlCcERVNmYwNXJvK0d2alBHQ0srZVhpOVZpaHFy?= =?utf-8?B?ZmxCaC8xdmcwOWpFRDFoWnpWNFZmN01OczhZKzZ3aW1HT2cwd05GeU5ZejR0?= =?utf-8?B?clM2KzdMQk0xd0hFRXBTazdsMEJhUE1qZWVJMDZORHdzSHhEZ3FiNlFqTk9Q?= =?utf-8?B?dG5GVTBjcFZDYWJzaTZYVDYyUWZZYjh3cHV6Z2pkQ0NnOUc1bzZFdjg1YS83?= =?utf-8?B?ZHhuL2pMUEVUaDVLNFhmVXU4NWt2WnpFMnFxRUN0UHJ1My9URmZrRkNURTEz?= =?utf-8?B?bTFuN2JGcGZuNCtDcFlUbnk0eW41cFZ2eUxYVDJtb3huSFJDUXBUREZjd2tW?= =?utf-8?B?WnBjYytXbHVId0tQTm43RnBWVjFaczZZVVp1U01hVVdCNVN5NGZYam5yMFpX?= =?utf-8?B?aVo2Ni9qMDRVUngxOFZZcjh1ZmxacmVpbFFNTzgvTEtuako3OWcybm4yOUlM?= =?utf-8?B?QWVQZGVGQ2VTdllib0VBcU5XNS9OWW5Ea090emsyTHZKMjM3V2phTkkvUDIv?= =?utf-8?B?amRYRzg1bDlrbVRkbVpXYkZiWXpHckd3djdpN2xTRzcwYmZNT1RURlRnT3lQ?= =?utf-8?B?TVFXMFpNYko1Rkh0eWJwdFhacnpnN1B2cnAwbVJVdXFpYnNuR0Fod3g0Vzh6?= =?utf-8?Q?UkKlj74AwsAS4+AS7xezw95/7?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 4ad5486f-385a-4fe4-49e3-08db634aeb13 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Jun 2023 09:22:42.7517 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 6tvUcT4IN6wImzthDV8uVyboEjLWtpfiaR4/qfvmkOrauusmq0b9HvPs4htmu+R+wZYiViIlL57k/Yg5KdZcXA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: VE1PR04MB7469 On 02.06.2023 02:48, Vikram Garhwal wrote: > --- a/xen/drivers/passthrough/device_tree.c > +++ b/xen/drivers/passthrough/device_tree.c > @@ -126,6 +126,47 @@ int iommu_release_dt_devices(struct domain *d) > return 0; > } > > +int iommu_remove_dt_device(struct dt_device_node *np) > +{ > + const struct iommu_ops *ops = iommu_get_ops(); > + struct device *dev = dt_to_dev(np); > + int rc; > + > + if ( !ops ) > + return -EOPNOTSUPP; > + > + spin_lock(&dtdevs_lock); > + > + if ( iommu_dt_device_is_assigned_locked(np) ) > + { > + rc = -EBUSY; > + goto fail; > + } > + > + /* > + * The driver which supports generic IOMMU DT bindings must have this > + * callback implemented. > + */ > + if ( !ops->remove_device ) > + { > + rc = -EOPNOTSUPP; > + goto fail; > + } > + > + /* > + * Remove master device from the IOMMU if latter is present and available. > + * The driver is responsible for removing is_protected flag. > + */ > + rc = ops->remove_device(0, dev); > + > + if ( !rc ) > + iommu_fwspec_free(dev); > + > +fail: > + spin_unlock(&dtdevs_lock); > + return rc; Same remark regarding label indentation - please address throughout the series. Jan From xen-devel-bounces@lists.xenproject.org Fri Jun 02 09:23:05 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 02 Jun 2023 09:23:05 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543029.847595 (Exim 4.92) (envelope-from ) id 1q50zm-0004qG-ID; Fri, 02 Jun 2023 09:22:54 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543029.847595; Fri, 02 Jun 2023 09:22:54 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q50zm-0004q7-Eb; Fri, 02 Jun 2023 09:22:54 +0000 Received: by outflank-mailman (input) for mailman id 543029; Fri, 02 Jun 2023 09:22:52 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q50zk-0004Z2-Ic for xen-devel@lists.xenproject.org; Fri, 02 Jun 2023 09:22:52 +0000 Received: from EUR02-DB5-obe.outbound.protection.outlook.com (mail-db5eur02on2061f.outbound.protection.outlook.com [2a01:111:f400:fe12::61f]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 0aac1b21-0127-11ee-8611-37d641c3527e; Fri, 02 Jun 2023 11:22:49 +0200 (CEST) Received: from AM5PR0701CA0017.eurprd07.prod.outlook.com (2603:10a6:203:51::27) by AS4PR08MB7879.eurprd08.prod.outlook.com (2603:10a6:20b:51e::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.23; Fri, 2 Jun 2023 09:22:41 +0000 Received: from AM7EUR03FT005.eop-EUR03.prod.protection.outlook.com (2603:10a6:203:51:cafe::3a) by AM5PR0701CA0017.outlook.office365.com (2603:10a6:203:51::27) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.11 via Frontend Transport; Fri, 2 Jun 2023 09:22:41 +0000 Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by AM7EUR03FT005.mail.protection.outlook.com (100.127.140.218) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.24 via Frontend Transport; Fri, 2 Jun 2023 09:22:41 +0000 Received: ("Tessian outbound 5154e9d36775:v136"); Fri, 02 Jun 2023 09:22:41 +0000 Received: from 7e9e61db58ed.2 by 64aa7808-outbound-1.mta.getcheckrecipient.com id C1DC9BDF-CD34-4671-B7FA-45439CCF9150.1; Fri, 02 Jun 2023 09:22:35 +0000 Received: from EUR02-AM0-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 7e9e61db58ed.2 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Fri, 02 Jun 2023 09:22:35 +0000 Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15) by PAWPR08MB9759.eurprd08.prod.outlook.com (2603:10a6:102:2ee::5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6433.24; Fri, 2 Jun 2023 09:22:33 +0000 Received: from AS8PR08MB7991.eurprd08.prod.outlook.com ([fe80::2db3:aa30:7be0:10a6]) by AS8PR08MB7991.eurprd08.prod.outlook.com ([fe80::2db3:aa30:7be0:10a6%4]) with mapi id 15.20.6455.020; Fri, 2 Jun 2023 09:22:33 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 0aac1b21-0127-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Av8BWfad759vTI2hT6y6JQGOvrsYKfyXcrwNDFAK68c=; b=wsTG+fTj0wtcgurAJOccE1T7SpF2xyQnkKRC/ZLKGm7zYcjfaLXR6vVUzaFZ7TjgG9wcoVnBSoCdlWR0YOAuNX0bf9CiS+Mbm5ELEiFzuGiBR+gJuY951WgbD7U4vN4kNvbvqTkTn4ripdn+3kDVrZeGj82HBByH8Z8ZWkutYSA= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C X-CR-MTA-TID: 64aa7808 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=TZPYtNIW2wOOOzemc0okAW5EBkd5GVOGeGI166j99wEmE8AsGt8eN0c5JgTbN6kzCDBTcEk5WvIg1gacZhK1nAykCRc1d7L28+8XUAsACnV/IZyTm1Sut4+ciPJ6dAV31OeX/7o0uHusRatiwFSbRCJM6YlMmox314E/KtFNNxyhtkyrINGfkm1GTyHaxIKfolMdi/CxTSYxGOxy0mTvOTOcbqB5KzTmhKyusPG2wD/7tHHLXxEfX0In0t+N7CoBmcPSwe3Vg+j4dn08ZNgws1MJLmAbG6zsXt95wCFDuQbZ8jLLGYepvQhYO7rehWKNtSoJYwfUbuLdPGcqCbExvQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=Av8BWfad759vTI2hT6y6JQGOvrsYKfyXcrwNDFAK68c=; b=eHrTYqKKM2Vvtwi+udcMOzh2AlVt71glY4P7mstkUUlBfxDH+joKikgcKDKl00R8Ow9SeICPi2g/GRwJS1q3XuweaAoPJYHyefA1gQ01BMdXbU4+ZXNY6dTcyQds4wBk6djaYvaoKmUFE8/KAvEdwNYFkMYUiMWwOvSV8zB/Ys2ahJGTfdhiSnRkB3+BTivgF0DB+kQU/Y5RSN0xkDSaJAa/t7jRonVOuDJP6sB+0A8kIDYdnDx1xWdYKaYclJzNDfmeq4VWh/Edp9yyfT+d1OTdhWfMLvzNzwVg6m0kZWre6/Eu06/m5sW8u38VokI8rpoWeJ/9HgNC+vQmhcbpyQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Av8BWfad759vTI2hT6y6JQGOvrsYKfyXcrwNDFAK68c=; b=wsTG+fTj0wtcgurAJOccE1T7SpF2xyQnkKRC/ZLKGm7zYcjfaLXR6vVUzaFZ7TjgG9wcoVnBSoCdlWR0YOAuNX0bf9CiS+Mbm5ELEiFzuGiBR+gJuY951WgbD7U4vN4kNvbvqTkTn4ripdn+3kDVrZeGj82HBByH8Z8ZWkutYSA= From: Henry Wang To: Jan Beulich , Vikram Garhwal CC: "michal.orzel@amd.com" , "sstabellini@kernel.org" , Community Manager , Andrew Cooper , George Dunlap , Julien Grall , Wei Liu , Bertrand Marquis , Volodymyr Babchuk , "xen-devel@lists.xenproject.org" Subject: RE: [XEN][PATCH v7 05/19] xen/arm: Add CONFIG_OVERLAY_DTB Thread-Topic: [XEN][PATCH v7 05/19] xen/arm: Add CONFIG_OVERLAY_DTB Thread-Index: AQHZlOwO5+EbGXwbJkOX7UD3KKfC8q93OR4AgAAD7dA= Date: Fri, 2 Jun 2023 09:22:33 +0000 Message-ID: References: <20230602004824.20731-1-vikram.garhwal@amd.com> <20230602004824.20731-6-vikram.garhwal@amd.com> In-Reply-To: Accept-Language: zh-CN, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ts-tracking-id: F54EEA3E9370174A975161204A583A9B.0 x-checkrecipientchecked: true Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-traffictypediagnostic: AS8PR08MB7991:EE_|PAWPR08MB9759:EE_|AM7EUR03FT005:EE_|AS4PR08MB7879:EE_ X-MS-Office365-Filtering-Correlation-Id: b1557fb2-7dfc-427f-b034-08db634aea53 x-checkrecipientrouted: true nodisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: 2YZObZtnyTBbnAEZCV9sjLBT71GLMW0be0+JIJGdYjERc0VIFXGLVFBtP+LF/auGzcIYtPiArJV38Fp+dTqHA++888+pLHDwAWmzvaoi+LHn82OMGi5LhELOb3EYQkO1zoxdw1ZxOfED7ZYP6oHc7bH3hrpqS+XbAhzs1wK/Cs/MGVsb4zqSDhiu3NcmgERukJ/hdacK3RxyimaOswXhBgcxw1kgBWVWv3LSAbjmseErUBN8ln4kZDbEo/8SYwZVpFkDbPNuh+20aiwr+Tbr4cOryZHILP8vWRbiHOgsXY9I5QC2WHI9o22+vmzlp6W+4JwaqJN4CPs5HYW8fI8AY58p2Z+Zgxnpe05bWlZi84s4P4cYiUlg/Aiq5nLrFYzXN1vt9rigY40n8C4Uk6IPY1Vin9X3VXxkwUSrlICHiyVRT/RxhuE9W1tLZTiXZed/trNet1Sp8SI/Tjrj3X0eE2yZNq0ytL0/83v4Jroub5O5NhdWkmEi101nzXXf6zEM6QnWg9sSLjmpegJUGsLowcj0m3U1eT+554+zlF4vVaNozqBcYfst8NfH9jGxGHW2Kr0BkdBIJ8ioZgFm4UR1k6Qh2br+1vCABw2nQgu1/ZE= X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB7991.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(366004)(396003)(136003)(39860400002)(376002)(346002)(451199021)(6506007)(9686003)(26005)(186003)(71200400001)(41300700001)(83380400001)(2906002)(5660300002)(4744005)(52536014)(7416002)(8676002)(8936002)(38070700005)(66556008)(66446008)(64756008)(4326008)(66476007)(66946007)(76116006)(86362001)(54906003)(110136005)(55016003)(7696005)(33656002)(316002)(478600001)(122000001)(38100700002);DIR:OUT;SFP:1101; Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAWPR08MB9759 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: AM7EUR03FT005.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: 837ea539-8d24-4248-c85a-08db634ae5a4 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: QgUT/+Zu8qPTuzDj2j+vXAPfYDePZLILecI8f/y28B9cP/aFv2O1nUiM9a1orLE8nHEwUOl3FSRJqko/pCM+lxDFxCVIsagh284CyrSX3+/I/SIFmG5BBoCqXPztFKmjQjacpfVoKpP9ZPze57FFmXzwJLciaJzyHHbwef7mXlEVM3Pn/y5O5Zfo/n9uBrXC2mdqaVOSo8gk6D1rz2j6jPcA2E5a/yWVunBL6yuEPY3jU1io6Wh0NV5BUeCOEjJiB1gL7XXR4Cnxx0LVD5Yi3QBH7mkOWnv42w+1+BkmD+QNemOOOJ6WEQKI7mSmkPPKjxlgCMpcFgz7Y8B2W21mcNDZQ0iqFiXk9+DYpXCal9SQRNxKqb8UQ15kdBMk73VzJUVuhB5NCPCejH5rwT7lI+2jKUSeuAGkLxcGZ2esf9H7TyiJXmqJPvjo67jtOYkkzb6CvZo9LA4z3b8qS0fBaGQOlNv8S5u+XoPsh0Q/VKHmUDTlXWCc7SkbZ6PlqKWbJ0BTBMd2dghQMjFNtgj5BWyHXnFihgE1W8RbD7vu8UJHacahcbN68YoEbQde4LseVTk9oFXI2VRjiQRZYp+xBUS/flWmjl3loJlVhJZnIX366nV046IXhFYFrzZ7rLiijqaUeOZyew/dQA0BCbQZUcfVUD73MB1C2Ww9Bsra+mLhMZ7IOuRhNilSUjeyoMYMVPTZ1B8gbxtLe+hb2rRfsiCygMb5HXNuI4a+cF63VKE= X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230028)(4636009)(376002)(136003)(346002)(396003)(39860400002)(451199021)(46966006)(36840700001)(40470700004)(40460700003)(4744005)(336012)(83380400001)(47076005)(186003)(2906002)(36860700001)(4326008)(70586007)(316002)(110136005)(478600001)(8936002)(54906003)(70206006)(7696005)(5660300002)(52536014)(26005)(6506007)(9686003)(8676002)(40480700001)(55016003)(41300700001)(356005)(82740400003)(81166007)(33656002)(82310400005)(86362001);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Jun 2023 09:22:41.2671 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: b1557fb2-7dfc-427f-b034-08db634aea53 X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: AM7EUR03FT005.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS4PR08MB7879 SGkgSmFuIGFuZCBWaWtyYW0sDQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gU3Vi amVjdDogUmU6IFtYRU5dW1BBVENIIHY3IDA1LzE5XSB4ZW4vYXJtOiBBZGQgQ09ORklHX09WRVJM QVlfRFRCDQo+IA0KPiA+IGRpZmYgLS1naXQgYS9DSEFOR0VMT0cubWQgYi9DSEFOR0VMT0cubWQN Cj4gPiBpbmRleCA1YmZkM2FhNWMwLi5hMTM3ZmNlNTc2IDEwMDY0NA0KPiA+IC0tLSBhL0NIQU5H RUxPRy5tZA0KPiA+ICsrKyBiL0NIQU5HRUxPRy5tZA0KPiA+IEBAIC0yMCw2ICsyMCw4IEBAIFRo ZSBmb3JtYXQgaXMgYmFzZWQgb24gW0tlZXAgYQ0KPiBDaGFuZ2Vsb2ddKGh0dHBzOi8va2VlcGFj aGFuZ2Vsb2cuY29tL2VuLzEuMC4wLykNCj4gPiAgICAgLSBCdXMtbG9jayBkZXRlY3Rpb24sIHVz ZWQgYnkgWGVuIHRvIG1pdGlnYXRlIChieSByYXRlLWxpbWl0aW5nKSB0aGUgc3lzdGVtDQo+ID4g ICAgICAgd2lkZSBpbXBhY3Qgb2YgYSBndWVzdCBtaXN1c2luZyBhdG9taWMgaW5zdHJ1Y3Rpb25z Lg0KPiA+ICAgLSB4bC9saWJ4bCBjYW4gY3VzdG9taXplIFNNQklPUyBzdHJpbmdzIGZvciBIVk0g Z3Vlc3RzLg0KPiA+ICsgLSBPbiBBcm0sIHN1cHBvcnQgZm9yIGR5bmFtaWMgYWRkaXRpb24vcmVt b3ZhbCBvZiBYZW4gZGV2aWNlIHRyZWUgbm9kZXMNCj4gdXNpbmcNCj4gPiArICAgYSBkZXZpY2Ug dHJlZSBvdmVybGF5IGJpbmFyeSguZHRibykuDQo+IA0KPiBNYXkgSSBzdWdnZXN0ICIuLi4sIGV4 cGVyaW1lbnRhbCBzdXBwb3J0IC4uLiIgaGVyZT8NCg0KR3JlYXQgcG9pbnQhIEkgYWdyZWUgdXNp bmcgImV4cGVyaW1lbnRhbCBzdXBwb3J0IiBpcyBiZXR0ZXIgaGVyZS4NCg0KQFZpa3JhbTogSnVz dCB0byBiZSBjbGVhciwgaWYgeW91IGFncmVlIGFuZCBjaGFuZ2UgdGhlIHdvcmRpbmcgZm9sbG93 aW5nIEphbidzDQpzdWdnZXN0aW9uLCB5b3UgY2FuIGtlZXAgbXkgYWNrZWQtYnkgdGFnIGZvciB0 aGUgY2hhbmdlbG9nIDopKQ0KDQpLaW5kIHJlZ2FyZHMsDQpIZW5yeQ0KDQo+IA0KPiBKYW4NCg0K From xen-devel-bounces@lists.xenproject.org Fri Jun 02 09:26:57 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 02 Jun 2023 09:26:57 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543036.847605 (Exim 4.92) (envelope-from ) id 1q513U-0005lx-23; Fri, 02 Jun 2023 09:26:44 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543036.847605; Fri, 02 Jun 2023 09:26:44 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q513T-0005ll-VB; Fri, 02 Jun 2023 09:26:43 +0000 Received: by outflank-mailman (input) for mailman id 543036; Fri, 02 Jun 2023 09:26:42 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q513S-0005le-RJ for xen-devel@lists.xenproject.org; Fri, 02 Jun 2023 09:26:42 +0000 Received: from EUR05-DB8-obe.outbound.protection.outlook.com (mail-db8eur05on20612.outbound.protection.outlook.com [2a01:111:f400:7e1a::612]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 955a47b0-0127-11ee-b232-6b7b168915f2; Fri, 02 Jun 2023 11:26:41 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by DU2PR04MB9180.eurprd04.prod.outlook.com (2603:10a6:10:2f7::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.23; Fri, 2 Jun 2023 09:26:39 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6433.024; Fri, 2 Jun 2023 09:26:39 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 955a47b0-0127-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=buzhwDsh7HBweNm2oxxIpaUZIOkQlmsJZd+jgk5MjdWhJl70ePM4R6gP2PKPJhEdrv9vAPA4v0Ovf6sliPwULKGYfXIfG0ekqeYthgfo7qGeerGHsYtQjHtznXx+n7f1oyrhL8iDYJD8Gidp0I0FGqXUJROYNwjXLd3NO81SHwEAq3grhNEjYAViJxtVSBHdiFwvwO9kTvAiMLmBUKm9p8C4fPLn9jgE/lhBz2fY4yUU2FTk0sjbEiBVcj60j3CYTge6dq4+YHlcGwUhO3uLEqBILjb4cVrBI+5IV4huBCTe4LaYZFI8d09huOdfwEkTwOvCfgVa4c5S4MxtrwDETA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=zJC+j20+upZ8guhVSSISPs9l+WOlDyFTKlOyL3xjr4Y=; b=ibV31ygcny+W8q7NFlA9V62L9aISFdGR0jkljBUolknadcRhN2g14pZyPYfEm7885A47aINGYkF4xFn3CULHbro2eJcibPNoMZ+pwvJ61S3GbFKQ+XDluMwFtqt8rH44XGqn/PGdWgK+IZntI3j3TaEJybll5WvflTj7hrvOu83bJTIoOU5CdgGN311FQ0f6n20MdsPA9AMjNBh3CVGh3GEXjSo19pcYICEPN0hLkfkQnM9UDED4k3Yb4ApSfdXt+rX9TmhpvxHD6dXhyBrcoHymHKC3hr5k4B2YLkaPeU50y4sGFcFF91Bi+Pf/CcztKzRNtlFvADQaoQQ8nv/fTQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=zJC+j20+upZ8guhVSSISPs9l+WOlDyFTKlOyL3xjr4Y=; b=irPePBjtGWcUjp18qNW83Ts65J14/j6WEJbd1WvIe1HDPe/HfCdWw+BmgrZ5vvxIXE+yNOJ/vxZSszI/Ew4vb38GlJ4Vgy9/3AEcaX0UazM/HCfJdWW/HBld5F++EYovy3Ezq9sDiX6t8AfG+O/veP+sY7f9g3Of6abQKwLt10G8zCyHxf2XNDzBbS/Tm4+c3tAtdhX9Dm5ciqUgLyzWcGL6cD7hfIeEAEFcb6MSP22Mgm4rz4a8FcP7WtAc0mHPgsbZLMVGNZTTrQsANx1V8Fstoil1b9cYCjJwchWejZGfMG7F4zSBD0JcM8UdOW62F0g+W+WWm/urGlIbSkW+rw== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <8b0e40dd-6db5-baaa-bd80-a162ce578a37@suse.com> Date: Fri, 2 Jun 2023 11:26:37 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.11.2 Subject: Re: [XEN][PATCH v7 09/19] xen/iommu: Move spin_lock from iommu_dt_device_is_assigned to caller Content-Language: en-US From: Jan Beulich To: Vikram Garhwal Cc: michal.orzel@amd.com, sstabellini@kernel.org, Julien Grall , Andrew Cooper , George Dunlap , Wei Liu , xen-devel@lists.xenproject.org References: <20230602004824.20731-1-vikram.garhwal@amd.com> <20230602004824.20731-10-vikram.garhwal@amd.com> In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR3P281CA0140.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:95::12) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|DU2PR04MB9180:EE_ X-MS-Office365-Filtering-Correlation-Id: ade83efd-218e-4826-f899-08db634b77f4 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: gx1hHamnbCG3QBQnVnspXixQ5ZHTqR92z9cmKjZOO2nLpXQM3VolvWe4LitvJjDvYDa2A2I32acYsn13JYn5D5u6tUJlTpcLKkfVL98OdtreOffsKoHZoIui3d0sHHKdUHCMhWw8AaL9PBIbdhVm8h+DpAjOKzvSaXPu3DtQSYEiXvg5sckVs5p8aPApcRPjLOuZWjJBgHPESX4tJ+vMSemLFFeFw+VJUyx96PKGmKwI2PLGWqI1t1xmQnNwkiscnfGbOmkacs0UTaWFTqsB1NwHqiK9ln1tZsRMrAFBwfEad7cCz/SsAEsh57Ibgp/sWzgoUFQuFEUTWjVZqP5sLAe6deoeWtCao66XDZXaPA3uBYlBk1GuGgm1WQFNI44Evp6D94eHhU1eJq3ca9TM9DRezqPdrBoP4tL7zE4mlq2ZQQgAGOB689POAAoGg8wZUuKJrr+ZHX66/gYptT/4fb2IpCD6Y5z4XutM4IKgQuekTq21R3KiXYQVL1z4iCUkx+vZnipjNSVrWsN34x1d6XhB/IffpqIYgNDH8cc7VCzxnk3CrCkcvmeNcChIL9SNUpznEuEHPaJ29eImoDEyFtXlyTpLxWH48zxM2t24+qxamQtD/AICCu32fR52pmZyLU3yuxg+01E6WtEJfhPbsA== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(396003)(39860400002)(376002)(136003)(346002)(366004)(451199021)(36756003)(38100700002)(86362001)(31696002)(31686004)(41300700001)(8676002)(8936002)(2906002)(53546011)(6506007)(5660300002)(6512007)(26005)(186003)(2616005)(83380400001)(66476007)(6486002)(478600001)(66556008)(66946007)(54906003)(316002)(4326008)(6916009)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?UElPamVUeW5rTVEzK2lvcnJXYzhFaXlMMHN1bFRXWGFndDRWWUZzK2RYYUZM?= =?utf-8?B?ZmVEUUM5QVJPOXd4ZldxYXBQa3ZGbDk0YkFRZ3hjNnlMRFo0d29XbGZUK2lM?= =?utf-8?B?b3o4Y1hvYmtoTlRUYU5pQ1E3VS9TcDJvMW5DeXcxYXgvNS9lVXRqVHBCOTBB?= =?utf-8?B?TlBFNVNlUGE0dWZYaWw0Wkc1U3pSajVJU3k0Qk9QZG5CVUU1VE1HWVFCZFA5?= =?utf-8?B?Z3Q4anVVQjRSOFN1bm9KSDY0dG0zR1VDbWRpajlYZDlMaHJrNHFZaUN2R0FU?= =?utf-8?B?V3ArQXZQdUlrSFJxei9uM3VteVZKUVE0WS82cHJhdGdTYWI1MzBHNWlYT1pu?= =?utf-8?B?TkZPQmh1amkvOFZmL1l3eVlsQ21FWmVaY2N1NDFvdnRTZVlBTFJzU1VNQkpp?= =?utf-8?B?a2xRL1hHSllMNC8zVVV0ejlMemlTSVVUc2ZoQnY5VmJmWUh0ZWhiOE43N1pV?= =?utf-8?B?T0VxQm92QysvU05wZmEvajRuR0N0bDlLM0VhZnFHVmYvVVBpVU9ndnU3d3hx?= =?utf-8?B?UENJbFdHeEFlbFN0d3pEc25MWXhJQ2xHb1BhbnF5T3lPYUhTdW15WGFqbXpT?= =?utf-8?B?NjhYUXZaQUdmeVBFdXBOYlZOempOSEhMZ0VKb1VUbThwcDdORFZjNTNUK05z?= =?utf-8?B?VVd0YWw5cnRKamZIcEx1citSQnBPeDlsb25sVk9PZVZ0U3NzcWQ3aTRPMTc0?= =?utf-8?B?WUFWU2YvaFJrOGYwRGpBckpjMlk3dnBJbnFKcWZsTXFiVXd1cFhKcFZQbXRZ?= =?utf-8?B?V3Jucm5mdGZEeWtSQWFpWVpsTTl1Qjd0NDBmbmdpYm1rRmptNkRQMm90ZjVy?= =?utf-8?B?ZDRxd2UrVWxSUEM0aVdxZHRWemtDVDlXYlVlTUwycUhXeGh1WjRkenc5dmFE?= =?utf-8?B?dHkyS2JJbDVkNGJVODdrNDZjL1pySVNoaEJmc1lJdndxbVk1UVhTQmpnbGdt?= =?utf-8?B?aHZ0eFRsWkttY2gxY2pEK3lvUjZPTUZmVEFOa1U5OVQva1VZVXdJVHVJVEwz?= =?utf-8?B?SGduWUp0ZWtVOVgwc2NOaHhielQvOVpNYzlmL21MY3VLVmZpNzh2QVBoZ1VQ?= =?utf-8?B?ZEptNDBJaUFkWXpkcTlHTHZMVXkwTzFvT1RzNHlMbXJtVXpHN0hlT3duYVU1?= =?utf-8?B?dERKWlM4NERZbnFYSHpzWUNhOUhtVVdkM0MwZXVuaEFtanFvdFI2NWg2cmo4?= =?utf-8?B?aW1qejJWUzVhM2lMOHp0Qi8yeGQ1a0krbFUwVVVMZmUxTUNRTXVyMjNxaUVo?= =?utf-8?B?bE50WEkzQ04zN0lsb1llS1ZWWlVrVkFTRkNnbmp2VS9OeURCSXRHOGd5ZWtm?= =?utf-8?B?ckFiTmZWRVFFQzdacHNBdFBCQWJzOENLUXVkUDJLWWUzQmVhUVMvYUFGSnhu?= =?utf-8?B?d0liczA0TXlYZ3NZSDRVL0JHTXUxb2hSWGVTUDZCL1kwRDlPYkprM0J4TmVV?= =?utf-8?B?andIL1EwL1dCS1k4L2o4MkNPQmRJdWQvV1NDR2k3V1EzbHBTNzNwR2lwN3Nu?= =?utf-8?B?OXFvVURjQ3FSQzNhbnF6UVBUV1hCL0diTVdzdVB3MmdQOTZLcjl3SmhCSHBP?= =?utf-8?B?R0JYMXp2QkdlTWMwMkVoVFJzK2N0MnRmb2FHelViZmFhZ20rekg5M3dLN3ln?= =?utf-8?B?cFJFMVB4QW5HV0lSUlBhRGdTUTdYQlFOMll2SjU4RXMrYk13YlZDRVYySmNI?= =?utf-8?B?R3lwYWlZQzFTUGFKN2ZGUDlVaHNPck83NHVXSElGTFdxa2E4cE9mZXZ0Mnk2?= =?utf-8?B?SGRpa0xZVWJlWHF4dWFCQU1BV3AwLy9YaEZTMXovMlZKMWtXY1JZaVFBbTBY?= =?utf-8?B?TXZIVTBvUk1vUHFIZzVsaXJFVERFQko0T0YrUFRUa2ltVlc3cVc4TlJPNmFp?= =?utf-8?B?S0R2WlhhbzVRRzRjZlFjcE1uOUVsck8ySGdUWVp2TTZlMmNwSFI0VXdET25n?= =?utf-8?B?aExUZVRrb2FQbXpDdjVXNXkvaWpkdnFpemV6eElpNGFpVVVNTnFEOHNJdFJ6?= =?utf-8?B?dnFPcC9XZ3RNTWZBQW04emlUSTFtN1VBc1VNOUN1WkdpbUlpTVc4bktUK0Nn?= =?utf-8?B?aUpaU0pzRWtBZDVqcXd4aUtRLzROZitNcmlDWXJLWWRBbHRTYnkxK29QbzFh?= =?utf-8?Q?GgBKPPIezc/QpFK03pNFk5Nzn?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: ade83efd-218e-4826-f899-08db634b77f4 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Jun 2023 09:26:39.0777 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: JzMkrGzSr2Euiu09TsipLdO+g+9zWbXAiwkye+P+TZ9QGkt7DvrA0fP1gYKCmSqWHWY9KBFqPzU5oWl2JSoqoQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU2PR04MB9180 On 02.06.2023 11:19, Jan Beulich wrote: > On 02.06.2023 02:48, Vikram Garhwal wrote: >> --- a/xen/drivers/passthrough/device_tree.c >> +++ b/xen/drivers/passthrough/device_tree.c >> @@ -18,6 +18,7 @@ >> #include >> #include >> #include >> +#include >> #include >> #include >> #include >> @@ -83,16 +84,14 @@ fail: >> return rc; >> } >> >> -static bool_t iommu_dt_device_is_assigned(const struct dt_device_node *dev) >> +bool_t iommu_dt_device_is_assigned_locked(const struct dt_device_node *dev) >> { >> bool_t assigned = 0; >> >> if ( !dt_device_is_protected(dev) ) >> return 0; >> >> - spin_lock(&dtdevs_lock); >> assigned = !list_empty(&dev->domain_list); >> - spin_unlock(&dtdevs_lock); >> >> return assigned; >> } >> @@ -213,27 +212,40 @@ int iommu_do_dt_domctl(struct xen_domctl *domctl, struct domain *d, >> if ( (d && d->is_dying) || domctl->u.assign_device.flags ) >> break; >> >> + spin_lock(&dtdevs_lock); >> + >> ret = dt_find_node_by_gpath(domctl->u.assign_device.u.dt.path, >> domctl->u.assign_device.u.dt.size, >> &dev); >> if ( ret ) >> + { >> + spin_unlock(&dtdevs_lock); >> break; >> + } >> >> ret = xsm_assign_dtdevice(XSM_HOOK, d, dt_node_full_name(dev)); >> if ( ret ) >> + { >> + spin_unlock(&dtdevs_lock); >> break; >> + } >> >> if ( domctl->cmd == XEN_DOMCTL_test_assign_device ) >> { >> - if ( iommu_dt_device_is_assigned(dev) ) >> + >> + if ( iommu_dt_device_is_assigned_locked(dev) ) >> { >> printk(XENLOG_G_ERR "%s already assigned.\n", >> dt_node_full_name(dev)); >> ret = -EINVAL; >> } >> + >> + spin_unlock(&dtdevs_lock); >> break; >> } >> >> + spin_unlock(&dtdevs_lock); >> + >> if ( d == dom_io ) >> return -EINVAL; >> > > I'm having trouble seeing how this patch can be correct: How do present > callers of iommu_dt_device_is_assigned() continue to build? I can only > guess that a new wrapper of this name is introduced in an earlier or > later patch, but thus breaking bisectability (either here or, if the > wrapper is added in an earlier patch, there). Oh, I'm sorry - looks like I overlooked that the 2nd hunk alters the (sole) caller. Somehow I was under the (wrong) impression that both hunks fiddle with the same function. Jan From xen-devel-bounces@lists.xenproject.org Fri Jun 02 09:32:11 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 02 Jun 2023 09:32:11 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543043.847618 (Exim 4.92) (envelope-from ) id 1q518Z-0007J0-T4; Fri, 02 Jun 2023 09:31:59 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543043.847618; Fri, 02 Jun 2023 09:31:59 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q518Z-0007It-QK; Fri, 02 Jun 2023 09:31:59 +0000 Received: by outflank-mailman (input) for mailman id 543043; Fri, 02 Jun 2023 09:31:58 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q518Y-0007In-H1 for xen-devel@lists.xenproject.org; Fri, 02 Jun 2023 09:31:58 +0000 Received: from EUR03-AM7-obe.outbound.protection.outlook.com (mail-am7eur03on2060f.outbound.protection.outlook.com [2a01:111:f400:7eaf::60f]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 50eac7a7-0128-11ee-b232-6b7b168915f2; Fri, 02 Jun 2023 11:31:56 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by DU2PR04MB9180.eurprd04.prod.outlook.com (2603:10a6:10:2f7::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.23; Fri, 2 Jun 2023 09:31:54 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6433.024; Fri, 2 Jun 2023 09:31:54 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 50eac7a7-0128-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=hGpGQPhMrZ7IYoPorscP4fLo8ORxD9ORT0VzHo+Op71vapvGESO2MELrMBCEm18stQ149q6xm6fvQdXPwmjeL/D1cLvA1llJeP8wMZfoPdPJe7gxdDx+kOqArELlBMissZoWmAsBkClJvlj5NiIZlLcx9QzwqG/JQk95Q3JNZjih8y9bwtgl2wHIlhVqmE+po+CVHUx4pwSdlMxR6hLA+yG+Nm3B/P/0yfDIH7sb3vJlmOc6TkgYKOJtTypsZJtA/Mgp9fYJTOqydFzSWGKWmlmRJatS6jLn0EMBHsvhfcvZJ4k5HYomxWmZ7Qss1MAdeQVpwpbtStcx/GhXIeXplg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=vmNHSfInRAhrtVgDotdb8NNw9x0eFd8MmApJ0PCFmyk=; b=LgGNtsf98sXwWGir3ztn/9AXXMUEicIjMh0Xm+dO2bOJbV1J3EdjqAMyrhUcHr65VjmbQ+Vx9xCjnT9QkwirzDgy9oRdmjVaaP1G8glZG1lm6TpS99gyCc/irISU/qpkUaunZTKN+1T6BX6OyExOAFyipA6kHb+pK1p/H3lJfRe4pENXOl2Dh5taIai+5Fs0u26epLjDc4IYWEiLRWSEJVrW4DrZlGggXxT7s2YpbJpUkTS0CpMAuSRahlSHGpr3KPV2fHKVBOVEVdHFvm6K2dsMiKmL7S3vGa0WzVMaEu2DmX7s4xqYbpOESiNfQGIIufO7lt9aJ6xwFwmOxSBBZA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=vmNHSfInRAhrtVgDotdb8NNw9x0eFd8MmApJ0PCFmyk=; b=JmYB/T/iEfAbm9Y+YXuBaMIam5XWq0OgQPTvm9vxVS/e/SyccAHv8ad23DHu8pqhCRpT4T4rbUpsBImvaWbXa1PTTp2UkztBKUzopEfGus6FMgNqhRyJu3WbobcwkzLiH9ySx9cthSqwP0ZUAC5d/LvBJKDMw+LoojaIE7sV4NupNmF58kik2INfk1jBPl2LeVKzs7BfIlbtYtfelKk6FuZHqX53S3+mjfIX/m8wN2hyd0i4JjQllsdwcJmPiC5PphOUo/a4JdgQqEAaHx0XdMSvtn5vDxifkEpGrZOHblUj5hSRl2pa6KDpJfYQj1vgYCxhh/2YCYG04NVvFV8H2A== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <952d725e-558f-b31b-c25b-f56004581f80@suse.com> Date: Fri, 2 Jun 2023 11:31:52 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.11.2 Subject: Re: [XEN][PATCH v7 15/19] xen/arm: Implement device tree node removal functionalities Content-Language: en-US To: Vikram Garhwal Cc: michal.orzel@amd.com, sstabellini@kernel.org, Julien Grall , Bertrand Marquis , Volodymyr Babchuk , Andrew Cooper , George Dunlap , Wei Liu , xen-devel@lists.xenproject.org References: <20230602004824.20731-1-vikram.garhwal@amd.com> <20230602004824.20731-16-vikram.garhwal@amd.com> From: Jan Beulich In-Reply-To: <20230602004824.20731-16-vikram.garhwal@amd.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR0P281CA0222.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:ac::18) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|DU2PR04MB9180:EE_ X-MS-Office365-Filtering-Correlation-Id: e5b91ae6-bacc-457f-7e60-08db634c33d4 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 4/3C6PH+VPoYBNDAFmFmXLskIXpW8UW7Qk0vu9YWq1Qid/6I5zg+rQ8j0G6ZriZLTaIpnASsbKsb7TwAi1VeMQKa4nFBYboS8AEia+9rMxTTJ30N4TZLWnJeJUqQasd/Qvse5O4uF04RPxJ4xMga7tGUSkmwimSIh6R4WIoVYy+SrvpSsI63ZWe1npKFeIPQ9I6OAwtkeTZM0+eYnPqpbTEYlWFx//cwtqZbqH7XC+aeoim9eUE0HxuK7zDImiTd0J3iEOv3yqQPrigfheFCnbD37l1GJQlNXw0amAgXSM+qX0yoX0DuyKpmQ/lwRMQ2hSmDMPItCqRcVii5SbcMWOA3pHvoxMJzp5+/s6Excpy0JjjZA0WV25qKBupqavQ52C25J4Ci0VyAke43rsneQmfShQeE9ErLaoQzVZRkEs8frRC1EEetpkdcS8b/DGUBq3Yt/0ViXNP6rIRKPJs0q06U5P4JiD34kUOPoSlIeLYNHP8wzDykLbijEzmiXQ58XXgAByPoSDFGSLT95Gcen8o2vZtF45iAau1/bAhUl+k4nBK0cr4lDcqByL9MkF7HflHC4xgFD+vOF32Gfs5oSD5iHwFgjJeMdvB78HElfVW0LoC5ilRMQIT7e1ApFQmG3zE9nhKLicao6Vn7tvky2Q== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(396003)(39860400002)(376002)(136003)(346002)(366004)(451199021)(36756003)(38100700002)(86362001)(31696002)(31686004)(41300700001)(8676002)(8936002)(2906002)(53546011)(6506007)(5660300002)(6512007)(26005)(7416002)(4744005)(186003)(2616005)(83380400001)(66476007)(6486002)(478600001)(66556008)(66946007)(54906003)(316002)(4326008)(6916009)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?WjZpbVl1dE9ZSE1CRzhscXNnSEJET3VZM09CNE1EVm5Mb21xRjJZRUJBSG5w?= =?utf-8?B?dEZydGFBU2Y3RnZ5R0xGMWxVdFRnc2I0VGZFU1ZpNm9aeGNqMk9MZUduMnpP?= =?utf-8?B?TXJ5ejV3QmJrL29IMllkYVZ1WkpsSkZ3amJ0UGVXQUFJa1V0VURBVDNOaGJN?= =?utf-8?B?SzRWdituaWhKc1dvb1VIWVhxZHBJYk15MGlQVCtMaE5ldzVSaVNRcG1WdDZs?= =?utf-8?B?T3pWK0xaNzdvalVYYVNwUFhJb3QrUi9oNTdVZ1JiWEcxSDRoMStjQ0xteGRl?= =?utf-8?B?MEkvdnh1Vy9rRmlQT09pdXlDMVFDOXY2Vkw3cHVxRGxEME1NNGl4WUl4bkVx?= =?utf-8?B?dnV5QzlQL09MTmZWWGVjMGJTK3RqMUdWNTMzQ1FrelZGbHpoZmNHck5vN1NS?= =?utf-8?B?VHpZZ1dzZUxpc2x1U1U0YitCU3o0MTlFUE8vZFNSZDVBenBrM1JTajY0bVNv?= =?utf-8?B?WG5MZWU0Sm0yVUtzTTVDZVBzNkVMT3A4aGk4aXNaVGF6dGxpQmZjOW1TTEFk?= =?utf-8?B?aUhHdGY4aWlubXljbzF3Z2dqZElXNkFXTmJETzcra09ReWxTaE1QWXFiTjh6?= =?utf-8?B?MUdOSC9uS0tUOW84VnZLWlBvVC92WnQ3dSttNXFhOFg1RE9PajVJaHY2WHdz?= =?utf-8?B?eUJYbzFFSlg5MHBxaHMvQWtyU1NLbWhaL01UN0pZcVJ3eVZRdXllYkZkdzFo?= =?utf-8?B?ZEVqcXJvNkhaQks2NGFwTGZOQk9NU0ZtSlIwblduT1BTZFJrMEhqV3NwSUxS?= =?utf-8?B?dVh4NWQ5eDJYMms0TnJiQW1sa040Mi93TEZzVk90eGwxM3NXZGUyWkZmRldj?= =?utf-8?B?U01saXhKTUsxbWlFc2ZzeXJxVmltTVBUdG1zNkk4YysrT3psMkk5TDBYN25U?= =?utf-8?B?T3JWTzNFTEp4SnltQjhCempWMUpLTFJFenk4bFA1NTh3UXIxY0t4VXZIRjQv?= =?utf-8?B?bDdXT1FCYjNLRk1QcGwxcm5yL3pjYWE2ZE83b29LTzBwQzBsb3c5aGIrVHNT?= =?utf-8?B?WWhRekNHQ3dxVnJ6TTcvK085YUI2a2toZFpBOU41RmFTVWtoUnJCblRNMzEv?= =?utf-8?B?MWtDZUc3U2VSWWM5QjU5cWFGMUZJUmE2MUpETmNlc1RpVk5Fdkc1ZDZkWm5o?= =?utf-8?B?US9Ed214QlcwWENOcVlSNGZYa25yTUhvQ1V5blNiQXZpaW9aRmZPU0szNVVS?= =?utf-8?B?YzRxbmpHRmtWcTZKRUp4U0tSc2NNYzNCdWRQczEwRHg3NUxpSUdHZnNrUnFh?= =?utf-8?B?NHdCTC9ueWM5UGF6QUdQMG9FbmRHUUhmVWpaR3hZK3BESVZCazNGT0w4RHJT?= =?utf-8?B?ZDVYbWhaWDgwYXhyd2E1ZHV3SWtqOEdMTE03aEw3YlNHeFBXdmhMb1Fwbm5G?= =?utf-8?B?eVgzdmw3cjc5ZFo2ZGhBSGNLTmNvR0wwbkEwMW9ZRWUwNlRJZ3hzT3djMmRD?= =?utf-8?B?blkvenlBaDFhaFptaFFuMWRsT0w1dmg4ZW05UGI2ZU9kQ05DMnhCMXJSRDZj?= =?utf-8?B?R1hSaFRST0ZaYWdTNCtaeDE1LzhXTVZpODZJalFvTHZGTTgxYVRVblc2RE1H?= =?utf-8?B?VHRUdy9yUmhPLzF5bk5XOUU2MVcveVVzOUhaeDR4aFAvZDNURmFicVJDY1Vl?= =?utf-8?B?WUpJTkU3VC9seWpWdzF5OFNDa2JDQ3dlSWpJMHBnRUtCSHBFMXdnem1oVjQr?= =?utf-8?B?cmRXVUd3OWtjMXFnQUhWZDhuQnROWWpRM2lYZHJTTkNXd3JzbmFWV0xva2VK?= =?utf-8?B?LzY0V2tadFNrWWpIeG5IM0h2K3EzSnZvM0R4VVhiUVJVWjAxRFhnR2Jjd25V?= =?utf-8?B?ZnJZZVJjMWJSZWgxSG1oODlzb0ZlZGx0RE9yWkZlSGdaTlRLM2dHUytza2Vw?= =?utf-8?B?aE5tZzdRQTZZLyt2Qm9uQktscE82T0N4eFhSUzdSRVhnSE90dlpsYnRQSzJQ?= =?utf-8?B?ZEtxWU1zeld6SEh6U0s1Y3M3eFhKZVUzNGZYdkVnbDFVbVdKc0NCU3Y4dTFa?= =?utf-8?B?V3lIMGVIZ0I4QS90RUU1N2ZmQXhiVTg3aU1oeDc3UU9nbVY5cHVtZ3Bva2R6?= =?utf-8?B?SU1EMjZGbjFFTkhya2pXYkdxZ3RtTGhQd3Qrd1k1OVUvL3Y0MnZlRXg4Y2xZ?= =?utf-8?Q?ZXQ734Nwx8165pBa3a9LRpbX1?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: e5b91ae6-bacc-457f-7e60-08db634c33d4 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Jun 2023 09:31:54.3110 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: FSWcwUlx8yRDdX33mDM1ucDe0uVNQYcz/5VZrXi8ANheTBtFuEttauMRPN+kZ56HOeXHYPQbku+fXd1XG/8foA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU2PR04MB9180 On 02.06.2023 02:48, Vikram Garhwal wrote: > --- a/xen/include/public/sysctl.h > +++ b/xen/include/public/sysctl.h > @@ -1057,6 +1057,25 @@ typedef struct xen_sysctl_cpu_policy xen_sysctl_cpu_policy_t; > DEFINE_XEN_GUEST_HANDLE(xen_sysctl_cpu_policy_t); > #endif > > +#if defined(__arm__) || defined (__aarch64__) > +/* > + * XEN_SYSCTL_dt_overlay > + * Performs addition/removal of device tree nodes under parent node using dtbo. > + * This does in three steps: > + * - Adds/Removes the nodes from dt_host. > + * - Adds/Removes IRQ permission for the nodes. > + * - Adds/Removes MMIO accesses. > + */ > +struct xen_sysctl_dt_overlay { > + XEN_GUEST_HANDLE_64(void) overlay_fdt; /* IN: overlay fdt. */ If the comment is correct, then const_void please. Jan From xen-devel-bounces@lists.xenproject.org Fri Jun 02 09:34:45 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 02 Jun 2023 09:34:45 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543048.847627 (Exim 4.92) (envelope-from ) id 1q51B9-0007rH-AX; Fri, 02 Jun 2023 09:34:39 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543048.847627; Fri, 02 Jun 2023 09:34:39 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q51B9-0007rA-7g; Fri, 02 Jun 2023 09:34:39 +0000 Received: by outflank-mailman (input) for mailman id 543048; Fri, 02 Jun 2023 09:34:38 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q51B7-0007r4-S8 for xen-devel@lists.xenproject.org; Fri, 02 Jun 2023 09:34:38 +0000 Received: from mail-ed1-x52a.google.com (mail-ed1-x52a.google.com [2a00:1450:4864:20::52a]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id afd03a63-0128-11ee-8611-37d641c3527e; Fri, 02 Jun 2023 11:34:35 +0200 (CEST) Received: by mail-ed1-x52a.google.com with SMTP id 4fb4d7f45d1cf-5149e65c244so2546890a12.3 for ; Fri, 02 Jun 2023 02:34:35 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: afd03a63-0128-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1685698475; x=1688290475; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=0gV8tKQqPdP+WC2L0WNNsKygS57kJCpwieLJcSKpWqc=; b=K7iVbPrjPEob+MMl66vaUsIa9vnkG3HvwnLoeO6SvHXbA4lslLmQlzZTzxam7wOJy6 y9a8DExWxZvSYgLlPzpC7LfMaT86V/VtkgPbiaRCK0Pu2UrC47Kml6OqaXikrUOU88Sy Hz82pvgHJhBew2Dmag6E+/cp9hCjEPAqxAO9DbER7XSJ1a/AmFXQUeGWiD7YqVgBKW4Z gcxeC3te1lxwrAlYQo9G1pfF+sfiNQeVDxi1sDVNxrHD4DHsdAurk87XJTTdXUFZ0F0z EIV2BX9AU+vYd5LVIislXcRYZCtQ0yqPNpykvSMsCUg2Hp8gXNO/negYa+e6mURvmUt4 JyHw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1685698475; x=1688290475; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=0gV8tKQqPdP+WC2L0WNNsKygS57kJCpwieLJcSKpWqc=; b=R+nEmlx72NixSf/SvaYdWNxIunTsdtaOiKEsyg9SXeJdtGVxfoChpvDt36O9kzaQfx 3lmT7EnxCzYSUVrzhxm4oOmC2t0iv2CggCHIOmBwEOFtFvNS5wlt4brgcd+1cxWJ7jsP JfglJHKo7FEqGnxMlB678SoCNTngKLWYcA9pk4gtW7uFShUteoz8kkG8IWI28SGxQnQc mX3wBy0ZDHtKgLsFeq5I/ePVyH3Jti+N0sVLEbDAH7o4ISvu5z51YdromrXaJwwBlgb8 pebthNf5bXvnseI5quyybbw3J1tALzUR47tYlqWc5AwvtVcdbTnuPveSoBjNx1b9qVt/ 2DTw== X-Gm-Message-State: AC+VfDwGeejHdYmsEBVdCRvjEqIfshg6dXvrmTNzro/201IYLexlyZ7v dPAH9KMK2zeOMK5lWkSt8LRN1uQraUf4Itwm/bQ= X-Google-Smtp-Source: ACHHUZ7cgKDjVMBTOz7GarhegDsrOIY5B/U84MCTp3A9uZBSdH1c8n3BGobq9QmNTmp/vpCGKx3AKMwoV9xEcbAB/IQ= X-Received: by 2002:aa7:da08:0:b0:514:b1d6:d379 with SMTP id r8-20020aa7da08000000b00514b1d6d379mr1635151eds.30.1685698474662; Fri, 02 Jun 2023 02:34:34 -0700 (PDT) MIME-Version: 1.0 References: In-Reply-To: From: Christopher Clark Date: Fri, 2 Jun 2023 02:34:22 -0700 Message-ID: Subject: Re: Listing the tools required for Xen development/testing on x86 and Arm by the community To: Ayan Kumar Halder Cc: "jbeulich@suse.com" , andrew.cooper3@citrix.com, nathan.studer@dornerworks.com, Stewart Hildebrand , Stefano Stabellini , Julien Grall , Bertrand Marquis , "Volodymyr_Babchuk@epam.com" , Rahul Singh , Henry Wang , Doug Goldstein , Juergen Gross , dfaggioli@suse.com, elena.ufimtseva@oracle.com, anthony.perard@citrix.com, george.dunlap@citrix.com, rosbrookn@gmail.com, lukasz@hawrylko.pl, dpsmith@apertussolutions.com, mateusz.mowka@intel.com, kevin.tian@intel.com, jun.nakajima@intel.com, paul@xen.org, =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= , Wei Liu , konrad.wilk@oracle.com, ross.lagerwall@citrix.com, samuel.thibault@ens-lyon.org, christian.lindig@citrix.com, mengxu@cis.upenn.edu, tamas@tklengyel.com, aisaila@bitdefender.com, ppircalabu@bitdefender.com, "xen-devel@lists.xenproject.org" , Michal Orzel , "Stabellini, Stefano" , "Garhwal, Vikram" , Xenia.Ragiadakou@amd.com, Stewart Hildebrand Content-Type: multipart/alternative; boundary="000000000000c7ddb305fd224274" --000000000000c7ddb305fd224274 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Fri, Jun 2, 2023 at 1:49=E2=80=AFAM Ayan Kumar Halder = wrote: > 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: https://xenbits.xen.org/gitweb/?p=3Dxen.git;a=3Dblob;f=3DREADME;h=3Da947e8f= 3e35b78e2d5c935caa4c7ea71897f0f3c;hb=3D11560248ffda3f00f20bbdf3ae088af474f7= f2a3 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) > Also: patchew: https://patchew.org/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 > > > > > --000000000000c7ddb305fd224274 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable


=
On Fri, Jun 2, 2023 at 1:49=E2=80=AFA= M Ayan Kumar Halder <ayankuma@amd.co= m> wrote:
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).
<= div>

The Xen git tree contains=C2=A0a README f= ile with some of the information that you are looking for. This link is to = that file for the=C2=A04.17 release:
=C2=A0

2. Project description - wiki.xenproject.org

3. Project management - gitlab

4. Code review - text based email clients (mutt, thunderbird), git-email, b= 4

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

<= div>The Xen community also has tools written in Python, OCaml, Go, and Rust= .
=C2=A0

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

=C2=A0There is a too= ls/debugger directory in the Xen git tree that contains:
=C2=A0gd= bsx, a gdb server for Xen, and kdd, a tool for debugging Xen with the windo= ws 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.
=C2=A0

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
=C2=A0


Did I miss anything ?

I think you have = a good start!

best,
Christopher

=C2=A0

Kind regards,

Ayan




--000000000000c7ddb305fd224274-- From xen-devel-bounces@lists.xenproject.org Fri Jun 02 09:38:06 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 02 Jun 2023 09:38:06 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543052.847637 (Exim 4.92) (envelope-from ) id 1q51EG-0008Uy-OD; Fri, 02 Jun 2023 09:37:52 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543052.847637; Fri, 02 Jun 2023 09:37:52 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q51EG-0008Ur-LT; Fri, 02 Jun 2023 09:37:52 +0000 Received: by outflank-mailman (input) for mailman id 543052; Fri, 02 Jun 2023 09:37:51 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q51EF-0008Uj-9u for xen-devel@lists.xenproject.org; Fri, 02 Jun 2023 09:37:51 +0000 Received: from EUR01-HE1-obe.outbound.protection.outlook.com (mail-he1eur01on2073.outbound.protection.outlook.com [40.107.13.73]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 23a51660-0129-11ee-b232-6b7b168915f2; Fri, 02 Jun 2023 11:37:50 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by PR3PR04MB7468.eurprd04.prod.outlook.com (2603:10a6:102:8d::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.24; Fri, 2 Jun 2023 09:37:20 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6433.024; Fri, 2 Jun 2023 09:37:20 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 23a51660-0129-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=XSUD3jv85tYtHNouGWNvvoecwX/6PnWgTQcp+LPnGfI/ng7qKqTuNGyjqi046TiSaamX8rp2tkgiZzm8nw0CJ1ZJtw18q0iV3e9lmH8bA+P2OhVPxOif4UgRqdXgu80Kuf8ARfYioIPglfA0YxPmXbMVTZ5xBM5nWaEDyuqMHex+wY2uAVOEjshyVhXX1qwPEuv3O2C34hQ2EVSJYEMOSj/RxK8fxUSpLx1kaxY2VqVW7FZKL7TIGSbGjU2tOUPGgf56oSz6yJoTfpcLYZnEp+4GAGl5CvXK/VEzQuQa6OEhOLmYV4rRZ5XyPwCb0FISWRiwgezXUxU8cTvl1PNYEg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=sUMsk9y9w4YT14qEQaGRAb1qh+6UP6t664wN/g/fR7g=; b=e7p/kmQmr+ETeWwisR3HlPsR75gMpNN9XN3fVYQ1Q7CfWLBml7grIscLtlo+Pd9RXDqj6C4Q7sYzKA3lOt/czPpjAzkil1kT08UOaH9qZkdh5UgRauKwq5Kjs9IoEKZTwOKuJadWao9oIYoNRVLs797eQzQUwG1zvFDY2sfnkYnZvLHLM9dUDk9BFKi4J/Kh8F/uNS+wyAELqJz/hKbGdC8qlF/WYmeLLUeoKHa4u3ztIXOfeK2zTAL48ioSKWgQKtFayaZauxhgZd4nl49S4l6+yzJXS3VcW929Vb+RJmSU4aiiG75mJNmnMTRsjLjnKn8NyTh03sk1E2v2xVYkEQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=sUMsk9y9w4YT14qEQaGRAb1qh+6UP6t664wN/g/fR7g=; b=AnvyK7nC06tn3B7AyC9XgPJGgzOAVv6217BSoaU4TCAp0YNANnoBgbxjgpZvs1u2IColZ6jaZVE1uul3LzjkAhEnOV6fiZWtA5nJhhmoSzCqvrJDLubXU7Cb+NjjVfRFn7yk0x2RxIIXLYv577TkdgRyg1jb3Kgs9GZG71aIKTvJ6oSGWSSDx6LZ7tIsbwoAOTX6Bf7qLlyycMyyQMZmJP/X/ls6V0nZocvL0lYN0CCOf5oCdCl+piNOxazPi06FoeJ8Qi5+GEljfMPYA0UcW3/7iNrovG6K7XQC+BgMEPy54aLZPnashvoO7w+NlGgNzwEi2Ih7bSfD86EKLsGCEg== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <86f5e0c9-df78-aa9b-efeb-331dbf23590d@suse.com> Date: Fri, 2 Jun 2023 11:37:18 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.11.2 Subject: Re: [PATCH v2 1/3] x86/spec-ctrl: Rename retpoline_safe() to retpoline_calculations() Content-Language: en-US To: Andrew Cooper Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , Xen-devel References: <20230601144845.1554589-1-andrew.cooper3@citrix.com> <20230601144845.1554589-2-andrew.cooper3@citrix.com> From: Jan Beulich In-Reply-To: <20230601144845.1554589-2-andrew.cooper3@citrix.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR0P281CA0113.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:a8::13) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|PR3PR04MB7468:EE_ X-MS-Office365-Filtering-Correlation-Id: 9fd70267-bdd7-46e6-9f9f-08db634cf5ff X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 6d7rJ0mzmbzaMDQqv/Z8UFmDuX6Z3pSZTaNd3koeyr4AgcPZaD1XZbIyNZepwHjt3DoeJvyzyg0xVSPuZbNxtmC3txqTRIwECg90E6FIsSASNmohVe6CV7ZeiAs2pvYkVa63y/7+asAKuutJ/vwLXa/mfM8wMeBFz7kbjyHkUEstnxuNjiAYLIu4OqP33aDCnQ6/bi7pF9/4nsyA3wSwZvsSehEw/PjbQhOJZYzZI++kNI4/3OIi3MmCLuC5WGzh0V428z65uryr7ejl6ru+DDimKmFq97IPt6VNgnIMjsJkIxK6n1HZVOH9JoJlHaX5PC1LdQuVIZYhERi65YlBW7EF4YLciThsJvxW2JfrA3OEdUTTK2GGq535wyGwLva0Q7xLJKUWszayYnpI6tuVa1WlxWFbuEOKxn/woY5SdJExPzALuFoDFvbRW2VZqeMdObxXpWLPK/vkTuyvqNWGDeElhrpAPut7DQl1ZKZY0eVpWyPlRTnPtWWIAwACLyT/S51f8xLAH9C1Y4mMPO/Pv6OirZ7MQtHqF6KN/U7UnuZDYoNV1gjuIXaWJcSTP/HL4d601jNYhFsK+AA/i9/FXH7gbI1KVYMGi3DEuz81UxZnZp7RTx3sW27U4vfjuEPvKSjA3xCbnzWr8afoO+6Tdg== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(376002)(366004)(136003)(346002)(396003)(39860400002)(451199021)(38100700002)(31686004)(86362001)(66476007)(54906003)(478600001)(66556008)(66946007)(6916009)(36756003)(31696002)(4326008)(6486002)(186003)(26005)(53546011)(6506007)(6512007)(2906002)(316002)(8676002)(5660300002)(8936002)(2616005)(41300700001)(4744005)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?Qk1BbjNNVnJwQS81TkdFR3lIcGVKdnFXUWhMVmlGZGxPMGlQL3ViTVRvbzRx?= =?utf-8?B?eUR3S3NQbWNZOXc0d1dMVnNGVE1KeVc2SDBIUVpoRCtBM041WmhjdWV5WnhQ?= =?utf-8?B?K3FZSEF4dWpTd1V6cEFHOHQ3b0N3TmlBb2dyTGUrYTVtQzNhaTdxNitQWVE3?= =?utf-8?B?SklsRExnNnh1R2dFQVNMcG5yamJPdjN1bVE2cnhUTkNlRm5lMHJlS3duVHh6?= =?utf-8?B?Y1VKRzBZeG4zU0x6ZjJJUk9acHBRWkZBVEVLR0tMbE54bUxqNnBqbEYvRjA1?= =?utf-8?B?dDV2ak1vdHFKandUcS92Yk10MzUzcE1oampFaHdaUzJHNi9kVXBFZE4vMG9H?= =?utf-8?B?dlB5bjB0dlBtanZ4dDVvQ1NKTGEyeFBWdmk2M3NsRTBiTDhtRGtKYW9qQTRN?= =?utf-8?B?RWJ0N1ZObVNwSTB2NUx2Qk5HVk1lVlBYenhTdDduM2R5aGVGVE5xd0I4N2tk?= =?utf-8?B?YnQ3MGZ4S1d5c1pKK0hxc1k0aVdsY2IwSXF2WUZUYUpQYStSSW1DYTNHZS9m?= =?utf-8?B?ckRkUThabURyemZwREZhN0ZIRVF4Wm1HcnVSK1lzSDduOGJXUkZMVmZ2Y1Ji?= =?utf-8?B?aC8xSDhnSjg1a0lTS0FIK2F1N3Nnc05jRzdxVnVkKzFZaHpubUtRK2owUDZV?= =?utf-8?B?NUZieTB2M0gwTGRyOTNyNm5sN2kwRlZ2bU1sQ01KOHNaejlMOW9ZOG1ZUkR0?= =?utf-8?B?QVFaS2MwZ2lPR3oyUllwN29Pd29SNFE0aEZNL0g0Vy9MUjVOYjMrdnEwdHN1?= =?utf-8?B?VVNBdXpJRlhwK1ZXdFdqUVY5T2NOZUtDeUQ2NlNGQ0Rkdmg3a29SOVlJRHpD?= =?utf-8?B?RVJtRTRuV3J3Z0tqaEVnZHVGcUF3L3FZZGFyK05nVWgvZjNxRFlibjd3cHhV?= =?utf-8?B?NzVySG9URnhid3huVDVtTENJTFFyZXRGb1M2VldwZ2JxSkJsS0QxNXhPdHVy?= =?utf-8?B?OUYxSzV3MFJXVk5RRkxkcXQxbENaNE04TXU3eUEzOGdiQTlVUTh0TTI4TkFU?= =?utf-8?B?ZkYzSmQvK1M4eWhyc0gvUmtON1d2MS9Rb01aQnNSSHE2VkJtME9mZHMwM1Nj?= =?utf-8?B?ckh2T3dOQjlZaVJnNTd0MDZ6SnVjVThxNDNlQXZOOFJGRWcxVmZHZ3haY0lx?= =?utf-8?B?dHEzWk14OUFEK2Nqc1Z3SjVmUEVCRDJ5T3J4U09TNUtRdTdhVUNwT011cDlI?= =?utf-8?B?K0t5b21uMDNQOGVSTWo4RDdRQzAxVHdQT0FmTnB3WGpDVW9EWTd0RmJ3Sng4?= =?utf-8?B?UFBkTmlNaDlQTWI2dmF4OXZQNGQ0eUJFaDhjTUQ3UHJFdERialNXOHR6MHd6?= =?utf-8?B?eWNGcEp1WjE4NlI1L3lReDhBSkVkUC9qOGZyV2lDbE4rc3BjTXJzcFRGUzFu?= =?utf-8?B?THRRSFNTZ3p0ZEh6T0JYU2hySXpoUUNRb0ljdjNTY2tLMEFYM1ZDZ0pzMXRJ?= =?utf-8?B?a2hyZTZINm1tK3BRbk5yNVJDWFhnVFo5cnBDTWZlNmZ1V0EwUUVvb2h1QTg1?= =?utf-8?B?Y3hSM05BYlRHZDVER1BGQ1RsOXJDalpkdjJyb1BrYjlXdjlMM2E1NlZuQnUr?= =?utf-8?B?L3B4NXF2eEVvK2FLRHhOSSt4SHhSUkp4djJ6czgrOWxibzBuanlTbkk4Rll2?= =?utf-8?B?WnF1a3NPd29YL1VkTzROL3dTRDI2OU5SeElhMGpsandyakl5QTFobzlDMEZI?= =?utf-8?B?SlVTN1NSUW4rN0F4OHR0WmpHdktjTElORWlvbE1GekhBNTkwdEZOSlM3T1do?= =?utf-8?B?c2NzVExFMURXN0xiZW5zUjJCbXJJeE9YcDM3citzbnZEZFFzMmpsajFNeWV4?= =?utf-8?B?akw4d29TNFJ5SkRPZkV4RzZ5RFkvdEpPaUNmYXgrekNhamhiY0RXLzJka3l3?= =?utf-8?B?bUpSdTJES05uT0VLaEVFazFscjVpeTM4R1YwNDJwa3M5cUtqajJ3aU9qOE1Z?= =?utf-8?B?UmVDMkV6L3p1Qng3eFZWRVNSbTJrSXIyUUhWWGpvenJWRTAwNThyMlZhalo4?= =?utf-8?B?M3NwL1ZUVUVGNXlyNU1VWFVOVzlIU0VVWTRnZENrWnNCTFdnM2R6TzF2SFJ2?= =?utf-8?B?UFY0L1I4ellSdWY2NnJTKytvUkJVNUE4b01Nc1lpOHNiVGgrcW80KzUrLy9J?= =?utf-8?Q?9b8qQTY5FsjOCsl5rs2do/Ian?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 9fd70267-bdd7-46e6-9f9f-08db634cf5ff X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Jun 2023 09:37:20.1207 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: IH2a95O+ayL/Pn/UnVCMBor2cQ0FMfYtA2ncgzkSDQoSYEgxEsTafu/WUr6F4ZpJAXA4sEGkWOyhSqc2Y/1M9w== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PR3PR04MB7468 On 01.06.2023 16:48, Andrew Cooper wrote: > This is prep work, split out to simply the diff on the following change. > > * Rename to retpoline_calculations(), and call unconditionally. It is > shortly going to synthesise missing enumerations required for guest safety. > * For the model check switch statement, store the result in a variable and > break rather than returning directly. > > No functional change. > > Signed-off-by: Andrew Cooper Reviewed-by: Jan Beulich From xen-devel-bounces@lists.xenproject.org Fri Jun 02 09:45:42 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 02 Jun 2023 09:45:42 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543059.847655 (Exim 4.92) (envelope-from ) id 1q51Lk-0001hZ-ND; Fri, 02 Jun 2023 09:45:36 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543059.847655; Fri, 02 Jun 2023 09:45:36 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q51Lk-0001hS-K6; Fri, 02 Jun 2023 09:45:36 +0000 Received: by outflank-mailman (input) for mailman id 543059; Fri, 02 Jun 2023 09:45:35 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q51Lj-0001hI-Eb; Fri, 02 Jun 2023 09:45:35 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q51Lj-0007LB-C6; Fri, 02 Jun 2023 09:45:35 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q51Li-0007Jn-Ri; Fri, 02 Jun 2023 09:45:34 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q51Li-00045o-RJ; Fri, 02 Jun 2023 09:45:34 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=tw9hpVya5Phm4ZfTgjYIO5X6qg2CBVQqurwUNy5xJCc=; b=JwFY1wJgitkeZ1qjhcDejjIRWn SR28ZtT/5trWg11f7z4Gj/POALUE4NyRKVzNLwlahxyClm8GDmyB0ee2ouPEygMQ6XDArW1W5UA7y oLYdyWnPXXzYzpWW+EDBBohDCHRCWCXqrwSWGoWcsk2ZcIXzozn81F55pfRda1uo6Yz0=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable test] 181095: tolerable FAIL - PUSHED X-Osstest-Failures: xen-unstable:test-amd64-i386-livepatch:xen-install:fail:heisenbug xen-unstable:test-amd64-i386-freebsd10-i386:xen-install:fail:heisenbug xen-unstable:test-amd64-amd64-dom0pvh-xl-amd:guest-start/debian.repeat:fail:heisenbug xen-unstable:test-amd64-amd64-qemuu-nested-intel:debian-hvm-install/l1/l2:fail:heisenbug xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking X-Osstest-Versions-This: xen=59d0bf62861f5c9b317ccf89f8b5c8b4d19927ad X-Osstest-Versions-That: xen=dc98fa74446e5abe417e5ba9a6a632b50444cfa1 From: osstest service owner Date: Fri, 02 Jun 2023 09:45:34 +0000 flight 181095 xen-unstable real [real] flight 181107 xen-unstable real-retest [real] http://logs.test-lab.xenproject.org/osstest/logs/181095/ http://logs.test-lab.xenproject.org/osstest/logs/181107/ Failures :-/ but no regressions. Tests which are failing intermittently (not blocking): test-amd64-i386-livepatch 7 xen-install fail pass in 181107-retest test-amd64-i386-freebsd10-i386 7 xen-install fail pass in 181107-retest test-amd64-amd64-dom0pvh-xl-amd 22 guest-start/debian.repeat fail pass in 181107-retest test-amd64-amd64-qemuu-nested-intel 20 debian-hvm-install/l1/l2 fail pass in 181107-retest Tests which did not succeed, but are not blocking: test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 181079 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop fail like 181079 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 181079 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 181079 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop fail like 181079 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop fail like 181079 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail like 181079 test-armhf-armhf-libvirt 16 saverestore-support-check fail like 181079 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail like 181079 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 181079 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop fail like 181079 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 181079 test-amd64-i386-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-i386-xl-pvshim 14 guest-start fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-armhf-armhf-xl-multivcpu 15 migrate-support-check fail never pass test-armhf-armhf-xl-multivcpu 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-armhf-armhf-xl 15 migrate-support-check fail never pass test-armhf-armhf-xl 16 saverestore-support-check fail never pass test-amd64-i386-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass test-amd64-i386-libvirt 15 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 15 saverestore-support-check fail never pass test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail never pass test-armhf-armhf-xl-credit2 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit2 16 saverestore-support-check fail never pass test-armhf-armhf-xl-arndale 15 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt 15 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 15 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt-raw 14 migrate-support-check fail never pass version targeted for testing: xen 59d0bf62861f5c9b317ccf89f8b5c8b4d19927ad baseline version: xen dc98fa74446e5abe417e5ba9a6a632b50444cfa1 Last test of basis 181079 2023-06-01 11:56:27 Z 0 days Testing same since 181095 2023-06-01 22:07:06 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Andrew Cooper Jan Beulich jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64-xtf pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-prev pass build-i386-prev pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-xtf-amd64-amd64-1 pass test-xtf-amd64-amd64-2 pass test-xtf-amd64-amd64-3 pass test-xtf-amd64-amd64-4 pass test-xtf-amd64-amd64-5 pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl pass test-amd64-i386-xl pass test-amd64-coresched-i386-xl pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-i386-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-i386-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-i386-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-i386-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-i386-qemut-rhel6hvm-amd pass test-amd64-i386-qemuu-rhel6hvm-amd pass test-amd64-amd64-dom0pvh-xl-amd fail test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-i386-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-freebsd10-amd64 pass test-amd64-amd64-qemuu-freebsd11-amd64 pass test-amd64-amd64-qemuu-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-i386-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-i386-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-i386-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-amd64-i386-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale pass test-amd64-amd64-examine-bios pass test-amd64-i386-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 pass test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 pass test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine pass test-amd64-i386-examine pass test-amd64-i386-freebsd10-i386 fail test-amd64-amd64-qemuu-nested-intel fail test-amd64-amd64-xl-pvhv2-intel pass test-amd64-i386-qemut-rhel6hvm-intel pass test-amd64-i386-qemuu-rhel6hvm-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt pass test-amd64-i386-libvirt pass test-amd64-amd64-livepatch pass test-amd64-i386-livepatch fail test-amd64-amd64-migrupgrade pass test-amd64-i386-migrupgrade pass test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu pass test-amd64-amd64-pair pass test-amd64-i386-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-i386-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-i386-xl-pvshim fail test-amd64-amd64-pygrub pass test-armhf-armhf-libvirt-qcow2 pass test-amd64-amd64-xl-qcow2 pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw pass test-amd64-i386-libvirt-raw pass test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds pass test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-amd64-i386-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-i386-examine-uefi pass test-amd64-amd64-libvirt-vhd pass test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd pass test-amd64-i386-xl-vhd pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Pushing revision : To xenbits.xen.org:/home/xen/git/xen.git dc98fa7444..59d0bf6286 59d0bf62861f5c9b317ccf89f8b5c8b4d19927ad -> master From xen-devel-bounces@lists.xenproject.org Fri Jun 02 09:46:03 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 02 Jun 2023 09:46:03 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543064.847666 (Exim 4.92) (envelope-from ) id 1q51MB-0002Bs-0D; Fri, 02 Jun 2023 09:46:03 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543064.847666; Fri, 02 Jun 2023 09:46:02 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q51MA-0002Bl-Ta; Fri, 02 Jun 2023 09:46:02 +0000 Received: by outflank-mailman (input) for mailman id 543064; Fri, 02 Jun 2023 09:46:02 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q51M9-00026T-Kl for xen-devel@lists.xenproject.org; Fri, 02 Jun 2023 09:46:02 +0000 Received: from esa6.hc3370-68.iphmx.com (esa6.hc3370-68.iphmx.com [216.71.155.175]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 46e54621-012a-11ee-b232-6b7b168915f2; Fri, 02 Jun 2023 11:46:00 +0200 (CEST) Received: from mail-bn8nam11lp2168.outbound.protection.outlook.com (HELO NAM11-BN8-obe.outbound.protection.outlook.com) ([104.47.58.168]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 02 Jun 2023 05:45:51 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by DM6PR03MB4988.namprd03.prod.outlook.com (2603:10b6:5:1e2::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.23; Fri, 2 Jun 2023 09:45:46 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::10bb:98bc:e36d:36ab]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::10bb:98bc:e36d:36ab%3]) with mapi id 15.20.6455.020; Fri, 2 Jun 2023 09:45:46 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 46e54621-012a-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1685699159; h=message-id:date:from:subject:to:cc:references: in-reply-to:content-transfer-encoding:mime-version; bh=93qzKdbPfCEltK/G8bH3U9HmqhAhF4UbQdob1WlSD7M=; b=hIge7Nnf+fWE+n4lh9Z55unyzXxdeGh9i9ujkgFSGq2vUSEpZfMNmJ+5 3XZgqmqCn2y/jBFL9jiUINdeB5emIx2gchkWL1YSBquelqqB0xFt/Pbdk XuGHDA/Ipkf1MokofqqUX01WhmoR0LVXU1jcTdWMlnYcN5qzYfyTpMvCp 0=; X-IronPort-RemoteIP: 104.47.58.168 X-IronPort-MID: 110672724 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:4IPti64ON506XgdFNt/BIQxRtPjGchMFZxGqfqrLsTDasY5as4F+v mEcXGmOb/mCamOjfoxxOY+/oUkA68fVx4QwHFc/qXtkHi5G8cbLO4+Ufxz6V8+wwm8vb2o8t plDNYOQRCwQZiWBzvt4GuG59RGQ7YnRGvynTraCYnsrLeNdYH9JoQp5nOIkiZJfj9G8Agec0 fv/uMSaM1K+s9JOGjt8B5mr9lU35JwehBtC5gZlPa4T5geH/5UoJMl3yZ+ZfiOQrrZ8RoZWd 86bpJml82XQ+QsaC9/Nut4XpWVTH9Y+lSDX4pZnc/DKbipq/0Te4Y5iXBYoUm9Fii3hojxE4 I4lWapc6+seFvakdOw1C3G0GszlVEFM0OevzXOX6aR/w6BaGpdFLjoH4EweZOUlFuhL7W5mt vgqBwonaim6iePo47eyc7RDpss4M5y+VG8fkikIITDxK98DGMmGaYOaoNhS0XE3m9xEGuvYa 4wBcz1zYR/cYhpJfFAKFJY5m+TujX76G9FagAvN+exrvC6OnEoojuiF3Nn9I7RmQe18mEqCq 32A1GP+GhwAb/SUyCaf82LqjejK9c/+cNtLTOPnrKEw3DV/wEQRKBhVfH+VisC/sVGBVO5yI m8G3ygh+P1aGEuDC4OVsweDiHyOswMYWtFQO/Yn8wzLwa3Riy6QAmUGRzhNcttgqsYyQTEo0 XeCm9T0CXpkt7j9YW2Z3qeZq3W1Iyd9BX8PY2oIQBUI5/HnoZovlVTfQ9B7Cqm3g9bpXzbqz Fi3QDMWgrwSiYsB0fW99FWe2ja0/MGXHkgy+xndWX+j4kVhfom5aoe06F/dq/FdMIKeSVrHt 38B8ySD0N0z4Vi2vHTlaI0w8HuBvZ5p7BW0bYZTIqQc IronPort-HdrOrdr: A9a23:wdoCY6+9u5vmfNq6fkduk+AcI+orL9Y04lQ7vn2ZKSY5TiX4rb HKoB1/73XJYVkqN03I9ervBEDiewK/yXcW2+ks1N6ZNWGLhILBFupfBODZsl7d8kPFl9K01c 1bAtJD4N+bNykGsS4tijPIb+rJw7O8gd+Vbf+19QYIcenzAZsQlzuQDGygYypLbTgDP7UVPr yG6PFKojKxEE5nFfhSVhE+Lo7+T8SgruOeXSI7 X-Talos-CUID: 9a23:NDW0aG0OxY5sHiTxMriBCrxfWcQXXUf3yE7pLU7mKmNgceC6aVCL5/Yx X-Talos-MUID: 9a23:D2kCSwX49ojlgc/q/D3MgXJLEOlD2qKVF38CrbgPmNuhNyMlbg== X-IronPort-AV: E=Sophos;i="6.00,212,1681185600"; d="scan'208";a="110672724" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=aBF58XVv8XqL0HHmjTyRoofNyu6Rz44Ok0+5Q1zH6QIPE1icrc7/BQI/2VEkhZIFl9kWiliX7AyPHmmsASa7yKk/fh4cevBMOf7/M3yf5kGPN+DnECVCVK8wMYUar5er27DcrOtOgsMCu0xahBhmhgpN3UHtvouWRUIXfL/sSXTsa+KAcjgPfe3BCUo7VdAPsOJjYvgvG/CbHVMWaNMh+7AjWZGBftLEaKFqchx9TXPrkGgPmscZjekAJUQ3MJCUgq+MWXGPo0XMfYweqvCjjKptXCnKK6tkis7d0xFE35N9OC9Q1+Ll0IFkLzxc/N24gcfI/ul/hCus/xAjLqElIQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=hYLtv3+czrFgmUApOlfgnmYh9IveRIgCXZjdFCeC2zw=; b=G+K53vtS7wgr3UZGRt9moYfHaDQ71IcJk7GA3cihLIf7UuRx7yXxvPORO9EBc06h3mhXu7m1LVOvWlfK48BQZZOkq7DdBzgvANzfJH7cvpgdXV4Tostu32ase4it3v6bd5aqtd1SVriBXd9eLMD4r/Ezl5eGZDZw+4Drmezg88pqulTV64loX3FscV/scrzBS7vGZplJYB4VmhzKK8RtDOVG8+PrITPYXjLpz/QO/x+Qd2y5O8e8lUwa0gXYPVuVicwEfoM12d5CKluC1vbc9pAQAEDueGUjTWtcsK8sC9iN+SG3v44YFNxjcbXxsMePchZUSZFVDfD5NHZlcuQSjA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=hYLtv3+czrFgmUApOlfgnmYh9IveRIgCXZjdFCeC2zw=; b=XT9DMgNbXdc6jpQNL+wl47khKJl8kkvsPw4yMePJgDFhV4o+pPnLrqJZq+ktRsSmk3PRYkBOHEsT6rgiw/gVinCtLnDbgCErC8o4GUbEsKVboobASXvd96xsrbmjmdUx0K8IkzUgfYeUpTCk0U8JFzMa0AahtMVY8LFRfGKsxwk= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: <72e25567-7d7c-7910-f922-3f100d3e260c@citrix.com> Date: Fri, 2 Jun 2023 10:45:40 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 From: Andrew Cooper Subject: Re: [PATCH] x86: Add Kconfig option to require NX bit support Content-Language: en-GB To: Jan Beulich , Alejandro Vallejo Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , Xen-devel References: <20230601174327.11401-1-alejandro.vallejo@cloud.com> <619ea01a-2058-c4ed-0f5c-394a82f838a5@suse.com> In-Reply-To: <619ea01a-2058-c4ed-0f5c-394a82f838a5@suse.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO4P123CA0653.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:296::23) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|DM6PR03MB4988:EE_ X-MS-Office365-Filtering-Correlation-Id: c430027c-c4f3-4ce4-564c-08db634e2398 X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: gSVb8YMQvxngK21OMfTfeD2kmDxGIDoiJP9JeQdpvd27NZJTl/B8jbzb1s4fmnDycT9LyYvnB+84eduxRoviqxc/nqqTdhwlF+anPrP9Hb3ANyxcxUvZzP/PnR5exsmcu779GwOvq4TM7diXBMlopHkmwZDP7f3PHbsfzrCamTmZB2tEvogu31ye544YRcCDrvu9wKo23dzqXWpSLyOYuKarCYl6gJirUD2jmuV3c0Xc1caHMHaC6/5G14fAHRZKgxqDN1eswuSbJ1HWXgZQKUkrW2BNmQ/VqWhuI9ohrepwuEgY2VPW0MqKZmuIj/5z00gkQQ7XS0dzgC/PG9/H1KUGjywJ1HRjUXWs4RnShYkonDSesnOHVGxY5b2Jju9ljz8AGgPOeVi2qIvY1N0oNG6FJ2NMNDFAr6br1fSVpy3R7XaXp6DN0xvzC7g8XgketU5hP6hG9wNXj5Xdcu/gqjVd/EKV8utT3Q0xKUECuNXtP3y6A/LAokua6tE+4Se0dGl8ReGNMERA18GfH2+f5HEsU8ao1mwnVwQzduYAJtHWE+KigSgwe4jhuVv3nbNSk6ATUXgKr1bl9/zWi+BVr6HRXR8XBhBT76oyf7IY93zw8s1CQDWYENxCZnbofg3LEzAhcoVPBpjne3zBcqGyjg== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(396003)(376002)(346002)(366004)(136003)(39860400002)(451199021)(86362001)(31696002)(8936002)(5660300002)(31686004)(8676002)(2906002)(4326008)(38100700002)(316002)(82960400001)(66556008)(66476007)(66946007)(110136005)(54906003)(478600001)(6666004)(41300700001)(6506007)(53546011)(26005)(6512007)(2616005)(6486002)(186003)(36756003)(83380400001)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?TC9tM2ZuVUw2WnQzL1VsUWtQTnJVMURNRjIydWRZa3cyV3NETmNzTEpSbnNv?= =?utf-8?B?TEVYRTJBV3ZmbzFRUmJvdExDTGx2R1Z4Vy9jZmROTXRFMlExcHdPUmpCWk5t?= =?utf-8?B?UjMzOXkvVURseFMvc3N3cXVSVTJ0cVEzMm9hZ0xwcU00dGpicE1HeWg5MjJG?= =?utf-8?B?WWJ1RXJabmpYcXVVenBERlhCZ2Qvb0RSOW9JWUZ4c1FsYXFVUVRlY01PbGJJ?= =?utf-8?B?cXJ5NFUxRmx3REpKK2IzTHhxb3lOY2xPUS9odk14enNBMFdpVC9vWDBUMm9r?= =?utf-8?B?RUIvbklDbHczcHJidlNtbkd3RXkwcHU0azhEQ3FJZFFsT2REemJNWnRtTWtX?= =?utf-8?B?blR6cDROQmhVNUJ0aGRtOTVaY0RzdGRkZ3dzYkhQU3BRTEJPcVFHeGRoNEJM?= =?utf-8?B?TXlmQ2d6U0RBR0thU1V4ZzJWSDBMNGVjeWhhNWszTU9NRzlFY2R3ZVcyYUg0?= =?utf-8?B?UXdlSkxacFNpakh4Rk40aFJmdlJjYjZ4Vk12c2hlcEhLbjJzc25VRGhMWUlV?= =?utf-8?B?T05OeEh1MzBCWFViNGJ1T1ZhREt1MC9ocDE3NWVIL2t3bHFCN3dvYmRLUk9E?= =?utf-8?B?amFHY05XS0xINlRBK0N4aTYyR1Uwb2V0eGNjQ3lPT01nRURvYUdXUmErVmx5?= =?utf-8?B?ZzJ2M09JOGd4b1RadW1SODhldStDbDN6M3Y1bGc3SlA4RnVLVnlvakhvNkc5?= =?utf-8?B?bVZCT21JR0VESFB0bmZaaXhEY0hrOGd5RlNwZktCajlaSmFSSlZvb1lzcVRM?= =?utf-8?B?OVp2U1Nwbm9lcjdZSXVWTzJJdlBSQmVRRFpRSFFMTEpnYUo1U3o0cWZ6YkdU?= =?utf-8?B?QU5ITVJZcHhLRy9SYll1amc4M2NyaXBvRmgvbHd5T0RhU0pPUFlLeGtPOVFK?= =?utf-8?B?dWpHWnJxTklLSnlTb1ZCSFJlYXVsSmlDK2lTK0N1SWJ4UG94aGdJdkU5RXZB?= =?utf-8?B?WUsxQ215UVVlWDZOZlRFalNWMGgzei9acU5IU0FGVUtzQUFYWnNaQW00czZQ?= =?utf-8?B?SVJtZVByeHROSkN3NmxnOEpxZ2FQSmdyNWhDdkN3clBYUWZhemdEN2RJeTdY?= =?utf-8?B?NVN1T2srOThTVXYxb1ZtdkJxdmQySHZNeUZ4R3FEL0RRUmgzT2lGSHY2UVhI?= =?utf-8?B?RmlDV3FuOFZqN3JVYjlWWUFnMzRZKzhaZDhjTXBnNmNza3lKSDBPc1VSVk0r?= =?utf-8?B?cjNabUpmeEpxa3RDUm9sVFNSZUdmdmxUK2d5ZmR1c2lVM2Zpc2Fta2pHTHZ5?= =?utf-8?B?UFQzS2FkaUwrcmxyald1cW1wRW9QVXNaK29aeEJIeEdPSlh4SUl1R01QQkVw?= =?utf-8?B?T2pXWFNpOHBwcDI5LzR3SVptRjZ6UFlqT3JnUTdMVnRSbWVRQXF1aE5TZHdo?= =?utf-8?B?SkJ0OVpoU1VwNnczbXpNUklFZUhyQXVYclY4ZE0rdlJyWklSek9IYmxWdlpM?= =?utf-8?B?ZlhtcnV6bFdvaUtLcUl4YVJ5VXBDWkFSS3BIT093QnJHU1JRalFpZG1melNq?= =?utf-8?B?Y0R1NUpEMmU4WGppUEFEaUx2b0dTRkprcmhjb0JDd0NGZWVIT2gxeFBRNU04?= =?utf-8?B?L2hGWVRBY2YzanBoYmYvTWZZRXJ2bVUvejEyNEdtUGVCUjgvbjB6Y09wcStY?= =?utf-8?B?SnhQSzE2OXUyK25rUXV0TXhZUDVhSDNmem9uNEdLWUQ4dVBEcE84bXdWdk53?= =?utf-8?B?b2V4ZW5RaXJKVWR2NGpaVjh3TjFER0RQcEhXVjUyeXhobDZmZmlDN1Y0bk1L?= =?utf-8?B?dlZWWWYrTnMrd1NPQkpKK2g2NllFeUZISGFHZzEvTVpGb25MVlZSbEpvaS9Z?= =?utf-8?B?YzdXVkpjVmIxS3pHM1BpVWFDSXJCcndvdmlUZEZzZ2RvTENub290L0hyR1lm?= =?utf-8?B?UkhsQ1h3bTU4VWFoVng2Tm56UW9YMkZ5MDB6WDN1b2JEVFFGbFlGS0tZUHlP?= =?utf-8?B?ejFRaC9ucTN2WjhET2praWZnejd2bWgxUTFtNVFaMnpxakpGL1V2cmlBRUFl?= =?utf-8?B?bjl2eEJiYzhVZFVUazNoc2pLUm51dGtrcHA3eXJNVFYwVDErZmhGT1FRak94?= =?utf-8?B?b2d1bkNocUhqTStZSitHbVhzd3NPY3Uyd1BtVXNCQzlSRXVLNUFUbzlZdVZD?= =?utf-8?B?cnFaRGREcU5mV1Z2d0ZpV2xDK0VkWlpGc0VRSWdUdUw5TzNyT2dkQTZYM2d3?= =?utf-8?B?M0E9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: OfI1qu7/bxYYrtFWIvwhhyfIb4MpiG4SCk0E77rb8ONqET7N6WbHSBa/J9i684Hl+dpC+08OZyPrTPUi1rjp7SCXwEJ+dcLknu8t/MaIAJ0NOwbQ1+gJSAXyjHzsca1lq0q5r/HhvCJlDGS/rjyy9qI2+w5/S9e6CFeKbjvpfsuKqxiOZlZmCHbTNd3G6tkcBKLaK8VayM/b8n66PlWhgsu0nV2VCxeSdKM7moasUCM2eDmLci/F4Tx6IazEBgkXu0Bh9sw65A6obRtodLykAi90rANagI6NcZ19U+RqyjWHgjpqneOh/XxTQ2Lt2PfqTOMN0Oa5LCgSsZu7D8zyNM5Oh80LWK6XCwANTmPBtz75jcYkJhpa72eYxvSS2NgS2MtZI9S5wGahfhB5MOCQC4VNw39cxRF8gvK6SRfVlrUmUvrrFI1WxaVCuzdNuD+NWgvLmhnvMiMv9BF1W2kOdNhiC6MmU0aU8NhOfmA+xmpsJuvN9VKWKNKhfLuKUznlT3/EIvHfau7gY7vSwcukbAILki1whTjMrsFR2N242D9lUcM1JB6m6sVReRDGKL6128X5wETKPai7oc5vTiub+TE2T0CL9UMwZtfiD9HRDYwXIQZEcAs/bDu9TvtohmHq7Gzy5BS/y4ASRl5AMtWsJgxaNJ83WLpWdLkF1jT7yybUpb2G4MtveOMBbv+QCW4pDF++AfRF9BUEe1i7WYeeYF5diKKyuZQfxcB/6t3T0eR5iHcW3Yu23rnx+J6QtnGBP1h5UH0qnHBEvDEwNj0Sa+86qJKzL+CbzeXGDuwQ3l1XOTtx/7+tjWpBOMwlujj0eD4IW9Tt0au9lWJiCBLKarEN6uX83EIA/IScS3qYj3k= X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: c430027c-c4f3-4ce4-564c-08db634e2398 X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Jun 2023 09:45:46.1980 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: jPL6nUeZCdfUpit61JkswPPm/E1V/DtTt3T0BDynaIhKvKTVcDbjP2HoCqVyvAJPmBpmgiAr8rFTB6JtXaFkW1YZWdiSMEIXwJBud8ZMN9w= X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR03MB4988 On 02/06/2023 9:31 am, Jan Beulich wrote: > On 01.06.2023 19:43, Alejandro Vallejo wrote: >> This allows replacing many instances of runtime checks with folded >> constants. The patch asserts support for the NX bit in PTEs at boot time >> and if so short-circuits cpu_has_nx to 1. This has several knock-on effects >> that improve codegen: >> * _PAGE_NX matches _PAGE_NX_BIT, optimising the macro to a constant. >> * Many PAGE_HYPERVISOR_X are also folded into constants >> * A few if ( cpu_has_nx ) statements are optimised out >> >> We save 2.5KiB off the text section and remove the runtime dependency for >> applying NX, which hardens our security posture. The config option defaults >> to OFF for compatibility with previous behaviour. >> >> Signed-off-by: Alejandro Vallejo > At a guess this may want a Suggested-by: Andrew? Well - it was a work item off the backlog, and a one-liner at that.  I wouldn't have said an explicit tag was warranted simply because I put the backlog together. ~Andrew From xen-devel-bounces@lists.xenproject.org Fri Jun 02 09:56:28 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 02 Jun 2023 09:56:28 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543070.847676 (Exim 4.92) (envelope-from ) id 1q51W5-0003pH-2U; Fri, 02 Jun 2023 09:56:17 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543070.847676; Fri, 02 Jun 2023 09:56:17 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q51W4-0003pA-V5; Fri, 02 Jun 2023 09:56:16 +0000 Received: by outflank-mailman (input) for mailman id 543070; Fri, 02 Jun 2023 09:56:15 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q51W3-0003p4-Fj for xen-devel@lists.xenproject.org; Fri, 02 Jun 2023 09:56:15 +0000 Received: from EUR02-AM0-obe.outbound.protection.outlook.com (mail-am0eur02on20621.outbound.protection.outlook.com [2a01:111:f400:fe13::621]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id b50d1227-012b-11ee-8611-37d641c3527e; Fri, 02 Jun 2023 11:56:13 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by AS8PR04MB8996.eurprd04.prod.outlook.com (2603:10a6:20b:42f::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.22; Fri, 2 Jun 2023 09:56:10 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6433.024; Fri, 2 Jun 2023 09:56:10 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: b50d1227-012b-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=RiOATDrUcPNCpTD2XUZbXp2pjkAc2Og05digDQLo6W2CnwKnG790VkqRR32aFYgdxGlpXLg5BmAstxOCJYf3mcbpv+Ur75KeKHn3UmlO2VKIuAsC4tKeerc6YoEe/S2hskTJj48NCKacsCSGWOJWh4kVUHJxcFl9R40+JUFgkBMesyCctPs5Kd4J52gLaPoCdTKLmTkOegoV5C+aMon5BoDI+ZHuxlC7DVAdd2QTq88GoXmlk8D7eil2QcIG83tCNARFOs0THgdEiMNLM39lZ8ckBV+W6ODAk/6y3cw0t6afWJhyVeTX91n2YpY4oC+ZTS8GK1RnaYdhKh5vTAtwrA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=wyZhtGTJFTtSZ8JXB4wcO9Bifjrd/68+N7yM/LGYVp4=; b=aIT1AYFy/LAw8JN0Om65KfZuP3U8HUnZM4zz+x9JP5o/Lws2jfRhRjxx2kN7tSZyAbdgAwDsKiTmg8MEg9UfzY+jjLCpJhMwvN+ue8YVU1w/GfIqjzozBorkzlXOk7EjUD9ZIEZYbT4YRHtcs1ajSid/UmBYwakJMeV0U6+Abwf2kvYkZ2LA6Z00bffsLd8LvG8uZt8PgYOcc5I9Rpf43I0Z9AGHBkgAcdCQW/aH9OhyelUEYPt0spu8FIrvw4mspYETJLVqmTaEILmJ+6Em3y7sBFiGiUsFZP7HN8VWoWB09r9nsAl70DLpz9eNPWzdQydPpqISPJh7a8oXNqlVQQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=wyZhtGTJFTtSZ8JXB4wcO9Bifjrd/68+N7yM/LGYVp4=; b=J0iNy8tsTCVwusxIOA7dtalUgaOU3oKP7oTHWz6GbsJWAD5PXJASsZUY8kfSDb0rSE3QLI9GuT0CdD5yruZyUlNYGqA7QRfKd399t9LIv1HTX06jipzejIIpJxXULilY8TzKHP4JyJifq8qiGfquKWo4OMme42EDXeoMpJy/yh36KBCqeVpFaGi0z1Ypapd65D+6fFYIr5JHgNOqASlKTBfwCV5dayaWBuntFG0sE4PZ/RL0rEspDmAuf7Bbbx4TTYFnXs5LDTVerHBdgyBtw16ij0S2oEbn9cTsutCNzbsJ3ITsQnb1C4v2C3xuy0Aq3fxzKCwXvypmiUscKIGv7Q== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <36b016e2-b378-f97c-42da-86a330471bf0@suse.com> Date: Fri, 2 Jun 2023 11:56:08 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.11.2 Subject: Re: [PATCH v2 2/3] x86/spec-ctrl: Fix up the RSBA/RRSBA bits as appropriate Content-Language: en-US To: Andrew Cooper Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , Xen-devel References: <20230601144845.1554589-1-andrew.cooper3@citrix.com> <20230601144845.1554589-3-andrew.cooper3@citrix.com> From: Jan Beulich In-Reply-To: <20230601144845.1554589-3-andrew.cooper3@citrix.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR3P281CA0005.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:1d::19) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|AS8PR04MB8996:EE_ X-MS-Office365-Filtering-Correlation-Id: 50b1d174-76d4-452d-df05-08db634f9794 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: +cGRDKxSAyFe+wYj/fU35aDVU7U3nx5T9FT4rL/1b2zZkf8K9hsIZ1NLYhjNyYQ/R3Re7CN5GKdF+tdmcKBDGFCTjvz7hxTQDz3AcZNon3b3qOH21NBv+7Xv3qbLQFgRMwxxxdRstCDya/V95liDogibwJJRfiDjwafaIBV+IdZcU0ChRMAXlM01b7XWi+AARs6/w/OYmIQy5fYcY47rN/W8vkYJv6CQDjj8TuBLF0osOgM3zGvlbsAPbGvCgCBnKi2gKOeiDdVGzKLziygYrZCWI1Oi7ZSxRKVfhZhKmgM4GIrCwP2ezHvVVSUG5Uuuh3jO0BbW9osqIoE5Gi20sVZhehspMQ907dxwGuDpYXVLmzyVIf0CB8jAsAB18c+j27bhGuRsN1VJT77SXxmRphpTgjnCz2hjOqku2X3dEALEZtJczzxbDqrCL/ZKQW8fvDXI4wC2kMOMOpsU2KS94T9k16uWisHAki1EYAi7O1XaBi8jgEV8YFMYvRGfnMhaZDjRN1X5RNkE4mMc24xYOURWPD9hzM8QFVpfNi3y9PzivIkLwBezOkWIsvuj2LTkHxD5uNgHpBNmLT9Tn4sZdQ2iH9AEaNYGtY0a16gwThU+9f9lJZ5UaC/lQEA7uu6SDyUbROGreFwp5g7aBeX8WA== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(376002)(396003)(346002)(136003)(39860400002)(366004)(451199021)(4326008)(66476007)(66946007)(6916009)(31686004)(66556008)(5660300002)(8936002)(8676002)(316002)(41300700001)(66899021)(54906003)(2906002)(6486002)(478600001)(83380400001)(6506007)(26005)(186003)(36756003)(53546011)(2616005)(6512007)(86362001)(31696002)(38100700002)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?b3NaeVZKWW4zR3BXR1hjMmFaK2tPSzJzK09YNTdzS09wc3ZMMVpFdzVBV0VS?= =?utf-8?B?WlJ0aDl5UUdlOFBSNUpOV3Bydy9pWTg5OGRIQWJlRGhuYzJRRExuenFGZGpF?= =?utf-8?B?bm1MUUV6WTJIOWNOVkJWQWw4U1RtZEVmWlFxYUNZL1YrQ3BCNGtxbzM5YTB1?= =?utf-8?B?dTIxRDJNYUYvUFRQdkM2L1ZGQ2d2TG5iWkd4dWN6b3NpaDJkdnJxUGRPTXVt?= =?utf-8?B?S2xVRnE3NXFueVJ5V08xcFFnSkFLbWk1N1JtM2xBSVlBWjU2OFZNTGtKb2g0?= =?utf-8?B?T1NDRW13Ui8zNmxLbWRuSHE2V1pPdzcrTkE5M0RNRjlYKzdRODRqTUE0b1Iz?= =?utf-8?B?bjdob0ZhRlRmQkVEVktUR3RqbDNVY0J1VGJjS3crM29kNXhTV3NsdkN2R3N5?= =?utf-8?B?L3hpY3RnNWVBM0wxdGVVbW5xTVQ1cXhZaUY4RTcwMUtlWi8zMTZBbWk1eFM2?= =?utf-8?B?NjJxVkhkc2FEczY1UHRZaUNGYnZOKzJnZmh6aVVLMEZ2NGswYmhHdk5MTlZG?= =?utf-8?B?NGN3ZnVEUEl2WkNDeDF1UllQSkVmbWQ4d092NnpxRjJUUjhad3JkclMxSkJ3?= =?utf-8?B?UkVTM2EvcGE2anhiRmxmZ0xzbnErdk5lOG9KYUlERzdNdmVFc1g1T1ZLcFp0?= =?utf-8?B?TVgwdEVoMk5hMjI5TlpJeEZ0V3h5akI1ZmxCeWhhQjNBN1V1M1JmZ0VlQnBq?= =?utf-8?B?d3ZnSHRWSkJWbktCckE0U0F0ZnlESUNsaVFQaDFrWEtoMmhzTE1qTEl4cjlO?= =?utf-8?B?UGJOUS92Q29maE5GcHdLMld6UlJUV1l4YTRWVEcrN1hERVY0UnVHdEV5OXFj?= =?utf-8?B?QlhmSlNwOGNmeEwrbFFwSTBVVHI1VFhjaUdyV052Ym96S0pja3NoMEdUV3hQ?= =?utf-8?B?eTRhKzZMY2hrOVFyZm1zd0R4M01FUUNQYmN4RTlBaWVaZzZsZUFSa3NMcnIr?= =?utf-8?B?blVoV3pidlArWjJvelVjMVBvSngrcTJEMk1RU0ZoVDNQV0pXL0QyaXFyRm94?= =?utf-8?B?QllyVDVDYlo4cVJPVW5FVkpDS21GM3JhamtZaG1qY05pelo5ZCsyVTc5TE9N?= =?utf-8?B?dWhRNmJ5S3IwdTN1dzZqSEtuVW1YelgwbmlzUElGUzU4S1lYaWFlTmFjcGVF?= =?utf-8?B?MWxZZTNZRlUwOU82QTJBcVRZY3NZSVFLSE9wNkNzam5EVFU5NDAvRUgxdEUz?= =?utf-8?B?eitSRCtlNVRZUkFQcDJMMitCbjlxTkE0M2pneW03dDFBYXpmbW5zSGQ4SFoz?= =?utf-8?B?VkZod1hrZjg4eDNObGVSUWtJclVqMXIvREFRcWVQM3JCc2hRM1V1dkx2R2hu?= =?utf-8?B?ODZRVUY4Yld1MUttT01NSkNnK1BXUnZ4Ty9WUVYwVkwzWk9ReDJRWWkwaGFM?= =?utf-8?B?cVREdjRSL1Jtbmt3enllOEhBcDlFVFpwNDNoRGpwSjM0Q01IbWFFWHhzQ0RF?= =?utf-8?B?emVSeGxjeFdNSlhabURybGd6OE1oOGJnVXFJN1JzdFB4bFZ3QVJnTjBEZ0F2?= =?utf-8?B?aXRvSGVkbldtNUlJVkdFM3JqT21IcmIrUWtnU2lrTnA1K1NsU2lkeXJrVTk5?= =?utf-8?B?elp6VHdHRWE4UDV6OXZEQ2JJTCtaQkpJZVVKdnNEKzlkN1A5M3VuMmRMekRw?= =?utf-8?B?Q2pTSUtPbzZUaVozVmN4Uk43dXZmUnZHRnJGS2c3T0FnRnZXTTlwcDRTZ1k4?= =?utf-8?B?ckNjRGdIbVpXUVpmclVsZHlPZ0FCaHdSTytYS0FyMitFUDl1TGphd0NwdTRJ?= =?utf-8?B?SllJaHVPUVZTT2dzNjRFYmV2R2N5RENEM0NUcExTOFU5ZktBOGJ4bmdWYVJI?= =?utf-8?B?UEJUL0VucXptZHVQZm1rZXJ4N0ZJanlReEdrRjFybUR2Y0ttRXNueFg4czNa?= =?utf-8?B?eXVIdFZFRkVEYnFtRHAvb3BnWTNFdTRvMDhYUEU2SFJrS1dLUHNyS0lPZzBH?= =?utf-8?B?aUhGR0xSMDhXSDg2K1pSMzk0VjhUZkN1NjJJQ09LMG5FTWcxekFYOFhHQTFZ?= =?utf-8?B?UkEwTkQ0L0gyRkZzNG4xNk9LZ2N5Z1FJQ0o4WDRLNk1GU1ZFMi8vc1FLUFox?= =?utf-8?B?bTNtVjVNUlpnbkpNWW9ZVkg2Yy9vUnZKNEptWnpPTVQ1MTdBNkdKQVloaG1I?= =?utf-8?Q?SgD+mvoRONqq7a4y+X8GRMW5f?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 50b1d174-76d4-452d-df05-08db634f9794 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Jun 2023 09:56:10.1783 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: K795I+yBCmsB8xGZTa2SNnp8X2xNqQyMWPgtIHx3eJtTtgNpEqnF4sS7+d15EvD2SsMA3OfSBF1YmLu6IfbXMQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB8996 On 01.06.2023 16:48, Andrew Cooper wrote: > @@ -593,15 +596,85 @@ static bool __init retpoline_calculations(void) > return false; > > /* > - * RSBA may be set by a hypervisor to indicate that we may move to a > - * processor which isn't retpoline-safe. > + * The meaning of the RSBA and RRSBA bits have evolved over time. The > + * agreed upon meaning at the time of writing (May 2023) is thus: > + * > + * - RSBA (RSB Alternative) means that an RSB may fall back to an > + * alternative predictor on underflow. Skylake uarch and later all have > + * this property. Broadwell too, when running microcode versions prior > + * to Jan 2018. > + * > + * - All eIBRS-capable processors suffer RSBA, but eIBRS also introduces > + * tagging of predictions with the mode in which they were learned. So > + * when eIBRS is active, RSBA becomes RRSBA (Restricted RSBA). > + * > + * - CPUs are not expected to enumerate both RSBA and RRSBA. > + * > + * Some parts (Broadwell) are not expected to ever enumerate this > + * behaviour directly. Other parts have differing enumeration with > + * microcode version. Fix up Xen's idea, so we can advertise them safely > + * to guests, and so toolstacks can level a VM safety for migration. > + * > + * The following states exist: > + * > + * | | RSBA | EIBRS | RRSBA | Notes | Action | > + * |---+------+-------+-------+--------------------+---------------| > + * | 1 | 0 | 0 | 0 | OK (older parts) | Maybe +RSBA | > + * | 2 | 0 | 0 | 1 | Broken | +RSBA, -RRSBA | > + * | 3 | 0 | 1 | 0 | OK (pre-Aug ucode) | +RRSBA | > + * | 4 | 0 | 1 | 1 | OK | | > + * | 5 | 1 | 0 | 0 | OK | | > + * | 6 | 1 | 0 | 1 | Broken | -RRSBA | > + * | 7 | 1 | 1 | 0 | Broken | -RSBA, +RRSBA | > + * | 8 | 1 | 1 | 1 | Broken | -RSBA | > * > + * However, we doesn't need perfect adherence to the spec. Identify the Nit: "don't" or "it"? > + * broken cases (so we stand a chance of spotting violated assumptions), > + * and fix up Rows 1 and 3 so Xen can use RSBA || RRSBA to identify > + * "alternative predictors potentially in use". Considering that it's rows 2, 6, 7, and 8 which are broken, I find this comment a little misleading. To me it doesn't become clear whether them subsequently being left alone (and merely a log message issued) is intentional. > + */ > + if ( cpu_has_eibrs ? cpu_has_rsba /* Rows 7, 8 */ > + : cpu_has_rrsba /* Rows 2, 6 */ ) > + printk(XENLOG_ERR > + "FIRMWARE BUG: CPU %02x-%02x-%02x, ucode 0x%08x: RSBA %u, EIBRS %u, RRSBA %u\n", > + boot_cpu_data.x86, boot_cpu_data.x86_model, > + boot_cpu_data.x86_mask, ucode_rev, > + cpu_has_rsba, cpu_has_eibrs, cpu_has_rrsba); > + > + /* > * Processors offering Enhanced IBRS are not guarenteed to be > * repoline-safe. > */ > - if ( cpu_has_rsba || cpu_has_eibrs ) > + if ( cpu_has_eibrs ) > + { > + /* > + * Prior to the August 2023 microcode, many eIBRS-capable parts did > + * not enumerate RRSBA. > + */ > + if ( !cpu_has_rrsba ) > + setup_force_cpu_cap(X86_FEATURE_RRSBA); > + > + return false; > + } No clearing of RSBA in this case? I fear we may end up with misbehavior if our own records aren't kept consistent with our assumptions. (This then extends to the "just a log message" above as well.) Also the inner conditional continues to strike me as odd; could you add half a sentence to the comment (or description) as to meaning to leave is_forced_cpu_cap() function correctly (which in turn raises the question whether - down the road - this is actually going to matter)? > + /* > + * RSBA is explicitly enumerated in some cases, but may also be set by a > + * hypervisor to indicate that we may move to a processor which isn't > + * retpoline-safe. > + */ > + if ( cpu_has_rsba ) > return false; > > + /* > + * At this point, we've filtered all the legal RSBA || RRSBA cases (or the > + * known non-ideal cases). If ARCH_CAPS is visible, trust the absence of > + * RSBA || RRSBA. There's no known microcode which advertises ARCH_CAPS > + * without RSBA or EIBRS, and if we're virtualised we can't rely the model > + * check anyway. > + */ I think "no known" wants further qualification: When IBRSB was first introduced, EIBRS and RSBA weren't even known about. I also didn't think all hardware (i.e. sufficiently old one) did get newer ucode when these started to be known. Possibly you mean "... which wrongly advertises ..."? > @@ -689,6 +762,15 @@ static bool __init retpoline_calculations(void) > break; > } > > + if ( !safe ) > + { > + /* > + * Note: the eIBRS-capable parts are filtered out earlier, so the > + * remainder here are the ones which suffer only RSBA behaviour. > + */ As I think I had mentioned already, I find "only" here odd, when RSBA is more severe than RRSBA. Maybe the "only" could move earlier, e.g. between "are" and "the"? Then again this may be another non-native- speaker issue of mine ... Jan From xen-devel-bounces@lists.xenproject.org Fri Jun 02 10:21:10 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 02 Jun 2023 10:21:10 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543075.847686 (Exim 4.92) (envelope-from ) id 1q51tv-0007HW-1K; Fri, 02 Jun 2023 10:20:55 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543075.847686; Fri, 02 Jun 2023 10:20:55 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q51tu-0007HP-TJ; Fri, 02 Jun 2023 10:20:54 +0000 Received: by outflank-mailman (input) for mailman id 543075; Fri, 02 Jun 2023 10:20:53 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q51tt-0007HJ-NS for xen-devel@lists.xenproject.org; Fri, 02 Jun 2023 10:20:53 +0000 Received: from EUR04-HE1-obe.outbound.protection.outlook.com (mail-he1eur04on2059.outbound.protection.outlook.com [40.107.7.59]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 262e783f-012f-11ee-8611-37d641c3527e; Fri, 02 Jun 2023 12:20:51 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by DBAPR04MB7430.eurprd04.prod.outlook.com (2603:10a6:10:1aa::23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.24; Fri, 2 Jun 2023 10:20:21 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6433.024; Fri, 2 Jun 2023 10:20:21 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 262e783f-012f-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=nQVa6nkkBN1WB7OOnb1++YbXvYJFaojxuIhS8PFtk8vnYllx1VcCFkJDvdM5kJ1NR5VRmmzHoTfBVSSVQC7u9/ledy+MthcMou0OzbcJ19w+ktsEejz9NyNZUVxC1qi9npd8yW6BLNzY7rZkAB5Altp3gEcXbvOw07FUwN5xZ1IGxCOB12zrRCyRBEjDBw9SL7DMHcCrIfAz75g65rRPvk/zvaxJW9gxc4WGbjzZl/HIEDGV9RWSJh0es1g/dLS27jOzWNLX3RxSwJqKo1pp4pS+9rKof7C3W3tlktxRnB9HVKdDleT2N6Q3OJoVLeqSdNn/O5BgnJSW0ag/4xGsPw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=RBsFjGD3+jKSEeftv2gzESuerJ44HzCH2QPGO/EjaQQ=; b=SxsszsmdqogC76s/xfnSNNlKSTnLfOUZBoDhYKUyJr+e8XQ/qVtqH6+alVbdVuoszsGcnkPa2uVOZabhN+QzmcWqZgzCdQf6slenkgThxiVJs02MrOu9p2tTOiALclcWtaNMpx7q44j+WBN4h8fvv+WLXqk7tMu+jSVUVts2R8GCIMFJ9vEGDMvawiyXLDeM712lFT9fY8VSM3HWI7pgIGVNQONtELZJkehW+w3v3ZRr8Y6tEWlr1hWv2b9PdUC6e8vOMyrG0+eYzUuEyRCxVy0/+Do7f0YyDqd0KtjK5GF+tLxdH0LLgLhgxUocYQ5RMTrKdEMpGV1oaVrqqaSyYQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=RBsFjGD3+jKSEeftv2gzESuerJ44HzCH2QPGO/EjaQQ=; b=IpR+/57uz/9fOlpJEcK0GlPhh1UQsC88aIxNEjcq/Rz5LF7s9tmWaNcROruHO2lINp/RVTUw5hUUqH5tv4Uow9C35vTGBujIMYeXQNufndQ9E4CguSlJ84QomdRqbGhGDNLBlXxL/unZj8LwcCX0YaFehObKnaNb1Gz/HJyHZmpqxhZ61KjOwCWmNo5JvEeSf5egzjZLK7bGdmbnNfqCTVzrgnT2rxjoYY8VKQa6TJQsCbQN5VOxLZalS4CiTMx7EWujbL7chkH8tfMyxYfCogjr3rpfydDCQdJqElTaXt/DoPOWN6gQdhPuK7sWw3LfxbsOEJ0mQ32GNAsN6JUJuw== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <1ce6bd53-089e-e8ab-3b54-2720a3fd2c12@suse.com> Date: Fri, 2 Jun 2023 12:20:19 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.11.2 Subject: Re: [PATCH v2 3/3] x86/cpu-policy: Derive RSBA/RRSBA for guest policies Content-Language: en-US To: Andrew Cooper Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , Xen-devel References: <20230601144845.1554589-1-andrew.cooper3@citrix.com> <20230601144845.1554589-4-andrew.cooper3@citrix.com> From: Jan Beulich In-Reply-To: <20230601144845.1554589-4-andrew.cooper3@citrix.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR0P281CA0194.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:ab::18) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|DBAPR04MB7430:EE_ X-MS-Office365-Filtering-Correlation-Id: 655b38d3-77b7-4cf9-e913-08db6352f882 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: Fzl/QouXTzU3xUxopgyOzS+SS0E/acPqf6R18tLz4w2W4eLbheoQvNbOsR5GFB7RDPF2J0RONhuHI2uI5nUusOkdkZlQB3L45lU7oYsBxNudnE2cfv1L6AV9SCnU6YCgvG2XeQun+LSJpkaFgJyQ3QXNqkTKY+cyVBMd5v2uqNIydYVRJ+uXDaIn5O3zfL+IqyE9qt9AFDqIjYjIblnttN366dNzjGx5QLnJr0QJww5j1TM2aNo2gQ6Em5JCX/7bCVnfDymP64y7Csom65S8FryD7COc5fRjR+5NKslLXArAF81kQI/KaBWtMjlLSTKJQIPEIwOhroerUFeKUFOuO5miy6Kpe+6NNvMgQupPfyu7EVpgLkeY8ItWHrz/OJVrLHu67YiQsuNKXkXP2eiHvKll+fj5KMA00fudEjAPd1Y8uL5bE0JBknKtA/OfNqUjBCiUDmBxtJZcprVpK40ZAvFMqlpFKDXOu3HWfjrx0hYnYDBiCLNTvPCCxDcZUYZ+p9Lto7KFl98koHXunIMVb627VqEdp9w86bdhn4HEtTAIPwEXXEsJO4YzsxwRt0ARzKifSYqN8xhVODyHtdivIWgQzxFmVdn7u7IU7qToAMCzpKlAVH6w0FmHAH/shdRpFI5WvqVa4/LDUMGxFpaOHQ== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(39860400002)(136003)(346002)(376002)(366004)(396003)(451199021)(38100700002)(6486002)(41300700001)(26005)(36756003)(316002)(54906003)(6916009)(4326008)(2616005)(5660300002)(6506007)(6512007)(53546011)(66476007)(86362001)(66946007)(66556008)(31686004)(186003)(31696002)(2906002)(83380400001)(8676002)(8936002)(478600001)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?WGpwcVN2WFZYVTY1Q3VSb3VyRG5rN2xVUDI5Wk9udU14M3BiR1hBUWlta0Vi?= =?utf-8?B?R0lVZCtBYUxVVDlycDNuMWYzcWI0V3VTVVc4cmplNFhxUG9JR29FTTJYcUFM?= =?utf-8?B?Rm5FTzVPa2k3bHk4MjV3ejl2TEZuS1NuazNzR2JoUVYxcVFkcGVkbFpWS0Fz?= =?utf-8?B?Q2JNYVVrMmtYTFV6MEdTQkdVU0dtMU9UK0JkUUlwUUF6aERYakdST3dQQTlr?= =?utf-8?B?WG91VXBBVmNTR2pZc3VwdDVHdW13QlFwYml5YjNPSnlSdnBKV3BjeGp6R1dv?= =?utf-8?B?YmNwK243Tnh2bnlQRjVwMEs5NHZMS0o3S3ZCTU1rSlNROWMrS3BzSUI5RnZS?= =?utf-8?B?ZUZQZmw5TUk1a2RteXhhWHlpMUdkaDlyQ3oxRGFWYXYzaXBvU0svMkRmNWVS?= =?utf-8?B?aEJOQnhlZENaZWpYTk1JNWI3TEQrZ1ZPM2hoZE04Zktnd01tdGJBN3MrV2JX?= =?utf-8?B?M3VDT2g3MlRYbDAvY2FBREVPS2ZvYmJ1LzkzQi9BdEVKQURnelpybWpncUxh?= =?utf-8?B?ZWVEdzVGMjAvVnZ2TUZqc0JlczNidXd3N29UOUtEV3dCUWFFd0VUV2JDaCtv?= =?utf-8?B?TVpnc29YTUpmL1d1dDdzdWpNN0Q3TDQ5ZDBuNjNHcytGSk5oTTZEMFd1NHdX?= =?utf-8?B?NHB3MGJPYVpTVVdJNkdWZ3VEQnA5UStWQ3ZvOG1RQ1ZJblhXNTlwY0xvcnEw?= =?utf-8?B?Q1pqMnFWTEF6T3Y2N3pHV2ZYL2p2bkdnLzBsbU56ckkwRThaekQ5Q0hSSEFS?= =?utf-8?B?NXh6dTFkYWpmUUJyRC9rWW1rWG1BdTNHbVdqdzVhVW9UZzZxTEtLMW9VS3NN?= =?utf-8?B?bEdvWGtwUXJSTVBrYjYrYnZ6ZVpyUWE0VFRTQW9MM3JWNHBLb1BDNUdtSjc0?= =?utf-8?B?Yzk2L3pvcXY5dVAvM0dUTTI1b00wcnJ1L0ZIenUyekRHVEJETDRVMlZaMFpy?= =?utf-8?B?SHlTa3FaZDdXYmg2emVJVUxNTTJGaWxkZEdlNTcxOTZYTlVQdzk2WjF4a1gr?= =?utf-8?B?c0FEaElvdkdDLzlmMGJlQjZGVzdLWTJFWmJ6Y0lLeUtSQjZaMlpQVTdidzg3?= =?utf-8?B?SXY1L0Vpd0pjaU0rRm9YWUFjcExUclA0aklIUFhQS0t2YlNHNE9RZXBleWht?= =?utf-8?B?eFNJSjB6UEVseXFnaDZxbWJFbEJzRk5ZMWtteVp4MmtaSWc4YUI5T2NSQURU?= =?utf-8?B?NW5CS2F3YUZRdEZHTWx3TllUN01CbEg1bDczZ0xxT05jY21KTTJURDkyWGFZ?= =?utf-8?B?YXhWYzBpZ044NTQyUDZ2NWNJTjhDbjc2Tnh3OThaQ3k0SGYrc1ZSMnBwTDAx?= =?utf-8?B?V1VyOFVZSEFHdkRZMzZ2SUVGUWM3NUF5TWtBZU5PYTd3U2hYTDBneDl0QjJP?= =?utf-8?B?aHN3WVlLYWROa1hUaW5rYmRRd05RZkNwZURDNW9WVURod1A4Z3JYSmV2ZDFC?= =?utf-8?B?cEFHQjBqS0FGb0xhWjkvSUJmNTJDbXovdER1L0JmM0dpWG9WU0JwaDROdUtm?= =?utf-8?B?dWltTVpnOVRabFFUaWM5aW9XWWRTc1VEUzd5bUNzaXFzM0Q4M1A0OGJvM1gy?= =?utf-8?B?RTF1a0VUWG96NXFZVFJrY2d4b0JPM1lGamI3WjhqVzVoa3dZM0RqWkY0Nllx?= =?utf-8?B?aC82RzBMa1RwczZ3UUkzb2MzSTFLZDRsWnZMUGpVTEJsUFgwa3hCWWhmdjJr?= =?utf-8?B?WFIreVdLQXRBNE5EUUpwdWo4bVF2WG8yOEZaRzhZRTFlenZWYWZEYWlhR2xJ?= =?utf-8?B?ZHRiM2tFRTNObStsdEhIQU9kVXB6cWRESStGVS95SFlwT2NTckUrc3lpN1BW?= =?utf-8?B?NVRlM2hiUHlkOTRDTVorNVlocys2SHJDSmlFZ2ZBbEVlWTVEOWVHelh2TG1p?= =?utf-8?B?TE1ZRnU4blVjOS9HYmVMZm5DOG9Ccy94ZmNpWVgvU2J3QlNmdDlHWjcxV2pv?= =?utf-8?B?dVBCYXpGUnkwVWpLZkJGSmk0UEphdzZBdEF6ck4rc3hJcWRzSXdjNE95bzNR?= =?utf-8?B?c2JlV2VSRjE1QndubWQ5Znp4bjduNmVCQ05TL2oybzBPc05jRkplRzdKdWcr?= =?utf-8?B?QUoybDBLdzlPazNBTEpwRytCSWRBV1hWZStVMVh4L0hVeUZpRnNrMEtEMnlj?= =?utf-8?Q?CejKDRlblED0GJG5FCR7bZ/RU?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 655b38d3-77b7-4cf9-e913-08db6352f882 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Jun 2023 10:20:21.2675 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: rAeCWEGNOZUUbsk2SdethQJ0EVlU1wIPKSFdon4LFuVUM+/0O3j0N4oOfqgniGo9+tYqzjChNs6Bkp/iMrKeCQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBAPR04MB7430 On 01.06.2023 16:48, Andrew Cooper wrote: > The RSBA bit, "RSB Alternative", means that the RSB may use alternative > predictors when empty. From a practical point of view, this mean "Retpoline > not safe". > > Enhanced IBRS (officially IBRS_ALL in Intel's docs, previously IBRS_ATT) is a > statement that IBRS is implemented in hardware (as opposed to the form > retrofitted to existing CPUs in microcode). > > The RRSBA bit, "Restricted-RSBA", is a combination of RSBA, and the eIBRS > property that predictions are tagged with the mode in which they were learnt. > Therefore, it means "when eIBRS is active, the RSB may fall back to > alternative predictors but restricted to the current prediction mode". As > such, it's stronger statement than RSBA, but still means "Retpoline not safe". > > CPUs are not expected to enumerate both RSBA and RRSBA. > > Add feature dependencies for EIBRS and RRSBA. While technically they're not > linked, absolutely nothing good can of letting the guest see RRSBA without Nit: missing "come"? > EIBRS. Nor can anything good come of a guest seeing EIBRS without IBRSB. > Furthermore, we use this dependency to simplify the max derivation logic. >[...] > @@ -532,6 +541,21 @@ static void __init calculate_pv_def_policy(void) > guest_common_default_feature_adjustments(fs); > > sanitise_featureset(fs); > + > + /* > + * If the host suffers from RSBA of any form, and the guest can see > + * MSR_ARCH_CAPS, reflect the appropriate RSBA/RRSBA property to the guest > + * depending on the visibility of eIBRS. > + */ > + if ( test_bit(X86_FEATURE_ARCH_CAPS, fs) && > + (cpu_has_rsba || cpu_has_rrsba) ) > + { > + bool eibrs = test_bit(X86_FEATURE_EIBRS, fs); > + > + __set_bit(eibrs ? X86_FEATURE_RRSBA > + : X86_FEATURE_RSBA, fs); > + } > + > x86_cpu_featureset_to_policy(fs, p); > recalculate_xstate(p); > } > @@ -664,6 +688,21 @@ static void __init calculate_hvm_def_policy(void) > __set_bit(X86_FEATURE_VIRT_SSBD, fs); > > sanitise_featureset(fs); > + > + /* > + * If the host suffers from RSBA of any form, and the guest can see > + * MSR_ARCH_CAPS, reflect the appropriate RSBA/RRSBA property to the guest > + * depending on the visibility of eIBRS. > + */ > + if ( test_bit(X86_FEATURE_ARCH_CAPS, fs) && > + (cpu_has_rsba || cpu_has_rrsba) ) > + { > + bool eibrs = test_bit(X86_FEATURE_EIBRS, fs); > + > + __set_bit(eibrs ? X86_FEATURE_RRSBA > + : X86_FEATURE_RSBA, fs); > + } > + > x86_cpu_featureset_to_policy(fs, p); > recalculate_xstate(p); > } > @@ -786,6 +825,20 @@ void recalculate_cpuid_policy(struct domain *d) > > sanitise_featureset(fs); > > + /* > + * If the host suffers from RSBA of any form, and the guest can see > + * MSR_ARCH_CAPS, reflect the appropriate RSBA/RRSBA property to the guest > + * depending on the visibility of eIBRS. > + */ > + if ( test_bit(X86_FEATURE_ARCH_CAPS, fs) && > + (cpu_has_rsba || cpu_has_rrsba) ) > + { > + bool eibrs = test_bit(X86_FEATURE_EIBRS, fs); > + > + __set_bit(eibrs ? X86_FEATURE_RRSBA > + : X86_FEATURE_RSBA, fs); > + } Now that we have the same code and comment even a 3rd time, surely this wants to be put in a helper? What about a tool stack request leading to us setting the 2nd of the two bits here, while the other was already set? IOW wouldn't we better clear the other bit explicitly? (Due to the EIBRS dependency or RRSBA I think this can really only happen when the tool stack requests RSBA+EIBRS, as the deep deps clearing doesn't know the concept of "negative" dependencies.) Similarly what about a tool stack (and ultimately admin) request setting both RSBA and RRSBA? Wouldn't we better clear the respectively wrong bit then? People may do this in their guest configs "just to be on the safe side" (once expressing this in guest configs is possible, of course), and due to the max policies having both bits set this also won't occur "automatically". Jan From xen-devel-bounces@lists.xenproject.org Fri Jun 02 10:53:58 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 02 Jun 2023 10:53:58 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543079.847696 (Exim 4.92) (envelope-from ) id 1q52Pg-0002JH-H7; Fri, 02 Jun 2023 10:53:44 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543079.847696; Fri, 02 Jun 2023 10:53:44 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q52Pg-0002JA-EH; Fri, 02 Jun 2023 10:53:44 +0000 Received: by outflank-mailman (input) for mailman id 543079; Fri, 02 Jun 2023 10:53:43 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q52Pf-0002J2-2c for xen-devel@lists.xenproject.org; Fri, 02 Jun 2023 10:53:43 +0000 Received: from new1-smtp.messagingengine.com (new1-smtp.messagingengine.com [66.111.4.221]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id b9ea6745-0133-11ee-8611-37d641c3527e; Fri, 02 Jun 2023 12:53:38 +0200 (CEST) Received: from compute2.internal (compute2.nyi.internal [10.202.2.46]) by mailnew.nyi.internal (Postfix) with ESMTP id 994905803ED; Fri, 2 Jun 2023 06:53:36 -0400 (EDT) Received: from mailfrontend2 ([10.202.2.163]) by compute2.internal (MEProxy); Fri, 02 Jun 2023 06:53:36 -0400 Received: by mail.messagingengine.com (Postfix) with ESMTPA; Fri, 2 Jun 2023 06:53:29 -0400 (EDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: b9ea6745-0133-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= invisiblethingslab.com; h=cc:cc:content-type:content-type:date :date:from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:sender:subject:subject:to:to; s=fm1; t= 1685703216; x=1685710416; bh=ce8Eo1EvZ2JW4kEmPGptBfD1yCrEJLn9YG2 pcbsnN5Q=; b=acsFGZ5ZKB6OyVZfMciy/4QBoM2+yRG+xZyAU96Z+zjxXdBaq43 2zdM4upiQSDMnvrESU2wFelSwKdv3qsVU8m4B7cYhbsAZtwHBhuTYc9PbYYnLMud dXJsOJ0LrWQs6lPAns3FdxmKRnn1AVP7hUEuAFcFXnIcmZU6XK8Wv43kM8jG9oIS O80s85Scwq3A1dFTQi+EmnOnr2/FKfhagy9S5dllfSw7p6NcTK2A/oDuoSzLjAox lIJlWBFLYGP31DsmmjdtqbFfznmwrH+5RiIIiN7iK1UYAOgPoN7YsWhiHN4wCu0u o5CXpFwxBtV6SWdCNv/qAc/NHmaNdoDs+SQ== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-type:content-type:date:date :feedback-id:feedback-id:from:from:in-reply-to:in-reply-to :message-id:mime-version:references:reply-to:sender:subject :subject:to:to:x-me-proxy:x-me-proxy:x-me-sender:x-me-sender :x-sasl-enc; s=fm1; t=1685703216; x=1685710416; bh=ce8Eo1EvZ2JW4 kEmPGptBfD1yCrEJLn9YG2pcbsnN5Q=; b=crslxXcn1SClD1+WBg5dIQGG92/9q 2Q9FC98tsa+QTYzY4Mx9rpLAOHxa6SJNTYovf2uqlmt79OF8Lx3bmmvsGFmy2cu8 E31xpgd3hM9UbGAgMPqUYdU/pm8xzxvVEtuIv7QQeryJmQCUj0ob95TvCVafAu5p h+k2u9IhO0Upje2N8JlpJgkxbhPTz2/4PBReM6vEF7bsolnWE8BfP3GcLPJ0i7qf Bdk9aasT8bYPP6hsnJW4YWIYxyBRq6a5NKA/vTD9/6xlc3YOUZJpv4ynwr7Y9UuA vDdnn3Xnh1CqVQ8sMqs8Idez/ghaicuKdUvQBM9Wl2YUY+Oo2Y98RJwAw== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvhedrfeelfedgfeduucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne cujfgurhepfffhvfevuffkfhggtggujgesghdtreertddtjeenucfhrhhomhepofgrrhgv khcuofgrrhgtiiihkhhofihskhhiqdfikphrvggtkhhiuceomhgrrhhmrghrvghksehinh hvihhsihgslhgvthhhihhnghhslhgrsgdrtghomheqnecuggftrfgrthhtvghrnhepieef gfekieejudfhkeehgeegheeihfefveejgfejkeduleekhefhtdfggeetveejnecuffhomh grihhnpeigvghnphhrohhjvggtthdrohhrghdpghhithhlrggsrdgtohhmnecuvehluhhs thgvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhfrhhomhepmhgrrhhmrghrvghkse hinhhvihhsihgslhgvthhhihhnghhslhgrsgdrtghomh X-ME-Proxy: Feedback-ID: i1568416f:Fastmail Date: Fri, 2 Jun 2023 12:53:26 +0200 From: Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= To: Ayan Kumar Halder Cc: "jbeulich@suse.com" , andrew.cooper3@citrix.com, christopher.w.clark@gmail.com, nathan.studer@dornerworks.com, Stewart Hildebrand , Stefano Stabellini , Julien Grall , Bertrand Marquis , "Volodymyr_Babchuk@epam.com" , Rahul Singh , Henry Wang , Doug Goldstein , Juergen Gross , dfaggioli@suse.com, elena.ufimtseva@oracle.com, anthony.perard@citrix.com, george.dunlap@citrix.com, rosbrookn@gmail.com, lukasz@hawrylko.pl, dpsmith@apertussolutions.com, mateusz.mowka@intel.com, kevin.tian@intel.com, jun.nakajima@intel.com, paul@xen.org, Roger Pau =?utf-8?B?TW9ubsOp?= , Wei Liu , konrad.wilk@oracle.com, ross.lagerwall@citrix.com, samuel.thibault@ens-lyon.org, christian.lindig@citrix.com, mengxu@cis.upenn.edu, tamas@tklengyel.com, aisaila@bitdefender.com, ppircalabu@bitdefender.com, "xen-devel@lists.xenproject.org" , Michal Orzel , "Stabellini, Stefano" , "Garhwal, Vikram" , Xenia.Ragiadakou@amd.com, Stewart Hildebrand Subject: Re: Listing the tools required for Xen development/testing on x86 and Arm by the community Message-ID: References: MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="kA7UleKLwp1hr1CT" Content-Disposition: inline In-Reply-To: --kA7UleKLwp1hr1CT Content-Type: text/plain; protected-headers=v1; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Date: Fri, 2 Jun 2023 12:53:26 +0200 From: Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= To: Ayan Kumar Halder Cc: "jbeulich@suse.com" , andrew.cooper3@citrix.com, christopher.w.clark@gmail.com, nathan.studer@dornerworks.com, Stewart Hildebrand , Stefano Stabellini , Julien Grall , Bertrand Marquis , "Volodymyr_Babchuk@epam.com" , Rahul Singh , Henry Wang , Doug Goldstein , Juergen Gross , dfaggioli@suse.com, elena.ufimtseva@oracle.com, anthony.perard@citrix.com, george.dunlap@citrix.com, rosbrookn@gmail.com, lukasz@hawrylko.pl, dpsmith@apertussolutions.com, mateusz.mowka@intel.com, kevin.tian@intel.com, jun.nakajima@intel.com, paul@xen.org, Roger Pau =?utf-8?B?TW9ubsOp?= , Wei Liu , konrad.wilk@oracle.com, ross.lagerwall@citrix.com, samuel.thibault@ens-lyon.org, christian.lindig@citrix.com, mengxu@cis.upenn.edu, tamas@tklengyel.com, aisaila@bitdefender.com, ppircalabu@bitdefender.com, "xen-devel@lists.xenproject.org" , Michal Orzel , "Stabellini, Stefano" , "Garhwal, Vikram" , Xenia.Ragiadakou@amd.com, Stewart Hildebrand Subject: Re: Listing the tools required for Xen development/testing on x86 and Arm by the community On Fri, Jun 02, 2023 at 09:48:48AM +0100, Ayan Kumar Halder wrote: > Hi Xen developers, >=20 > We are trying to better document xen project development processes and > related tools. At present, we are targeting **x86 and Arm** only. >=20 > These tools range from bug/change request tracking means, compilers, infr= a, > editors, code-review tools, etc which is connected in some way to the Xen > development and is being currently used by xen-devel community. >=20 > I appreciate if you can let me know anything I missed or mistaken and the > version currently being used (for some of the tools). >=20 >=20 > 1. Code management portal - xenbits (https://xenbits.xenproject.org), git= lab > (https://gitlab.com/xen-project/xen) >=20 > 2. Project description - wiki.xenproject.org >=20 > 3. Project management - gitlab >=20 > 4. Code review - text based email clients (mutt, thunderbird), git-email,= b4 >=20 > 5. Text Editors such as vim, emacs >=20 > 6. Code review history - xen-devel mail archives >=20 > 7. Code revision management - git >=20 > 8. Xen coding language - C89, C99, Kconfig >=20 > 9. Testing tools for Arm64 in gitlab CI >=20 > compiler - gcc-9.3.0 (Alpine 3.12)) (most commonly used version) >=20 > binutils - GNU Binutils for Debian) 2.38.9 >=20 > 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 **) >=20 > dom0/domU kernel - kernel-5.19.0 >=20 > rootfs - alpine-3.12-arm64-rootfs >=20 > firmware - U-Boot 2022.10 >=20 > 10. Testing tools for Arm in gitlab CI >=20 > compiler - arm-poky-linux-gnueabi-gcc (GCC) 11.3.0, arm-linux-gnueabihf-g= cc > (Debian 12.2.0-14) 12.2.0 (most commonly used versions) >=20 > emulator/hw - qemu-system-arm 6.2.0 (From yocto, poky disto - 4.0.5) >=20 > dom0/domU kernel - kernel-5.15.72 (from Yocto), Kernel-5.10.0-22 (from > Debian) >=20 > rootfs - alpine-minirootfs-3.15.1-armhf.tar.gz >=20 > firmware - U-Boot 2022.10 >=20 > 11. Testing tools for x86 >=20 > 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) >=20 > binutils - GNU ld (GNU Binutils for Debian) 2.40) >=20 > emulator/hardware - Qubes HW (**need details regarding machine, firmware, > etc**) , qemu 6.2.0 (From yocto, poky distro - 4.0.5) There are two x86 machines: 1. MSI PRO Z690-A with Intel Core i5-12600K, this one has Dasharo firmware (coreboot + UEFI) 2. MinisForum UM773 Lite with AMD Ryzen 7 7735HS, this one has stock UEFI firmware > dom0/domU kernel - kernel 6.1.19 >=20 > rootfs - alpine-3.12-rootfs >=20 > 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 >=20 > 12. Debugger - gdb >=20 > 13. Xen code building infra - make >=20 > 14. Testing OS - CentOS 7, Ubuntu, OpenSuse, Arch Linux, Alpine 3.12.12, > Debian 10 (Buster), Fedora >=20 > ( **I could not get the version info for some of these ^^^**) >=20 > 15. Testing Infra - Gitlab runner, Docker >=20 > 16. Testing tools common to all architectures - All the host OS packages >=20 > 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, b= cc, > liblzma-dev, libc6-dev-i386, libnl-3-dev, ocaml-nox, libfindlib-ocaml-dev, > markdown, transfig, pandoc, checkpolicy, wget, nasm, mkimage, uboot-tools >=20 > 17. Documentation related tools - doxygen, rst. >=20 >=20 > Did I miss anything ? >=20 > Kind regards, >=20 > Ayan >=20 >=20 >=20 >=20 >=20 --=20 Best Regards, Marek Marczykowski-G=C3=B3recki Invisible Things Lab --kA7UleKLwp1hr1CT Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQEzBAEBCAAdFiEEhrpukzGPukRmQqkK24/THMrX1ywFAmR5yicACgkQ24/THMrX 1yyR3wf8CBGzlAsb3Qpsmo2+X8Tk19aiDzotiAFngj71VkuhV0UnsxMl9RHvw4G8 6BX1eMLP0QPLMhk9LROfpW6PKwFmvikMkR8H+Bu8OSd7Tn/EZU7Una7l7BHGfwnE h8zAPd8ZUqbJa416yq8R58cg66/GxjPbLLB98ZaQNHi5kSnWMmjrvDtbbok+GMIv 34UOu1XpXcRdknyuNd3KhaLKb/ANJWg0xFCeBGuMBMgzM52MLTNa47t0789+UMLr StjJo99q3nDVtA1niXF+ljSi8eAJM00Ra7wCvV/RbqMWD2HrTvhl3G5oFom2Ydd1 66nvfsbb1lXU9WcCXT5B7o10xj8ncw== =2Kj3 -----END PGP SIGNATURE----- --kA7UleKLwp1hr1CT-- From xen-devel-bounces@lists.xenproject.org Fri Jun 02 11:04:56 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 02 Jun 2023 11:04:56 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543085.847708 (Exim 4.92) (envelope-from ) id 1q52aM-0003wU-Gf; Fri, 02 Jun 2023 11:04:46 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543085.847708; Fri, 02 Jun 2023 11:04:46 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q52aM-0003wN-Dl; Fri, 02 Jun 2023 11:04:46 +0000 Received: by outflank-mailman (input) for mailman id 543085; Fri, 02 Jun 2023 11:04:45 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q52aL-0003wH-Oi for xen-devel@lists.xenproject.org; Fri, 02 Jun 2023 11:04:45 +0000 Received: from mail-wm1-x32c.google.com (mail-wm1-x32c.google.com [2a00:1450:4864:20::32c]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 47c5473f-0135-11ee-b232-6b7b168915f2; Fri, 02 Jun 2023 13:04:44 +0200 (CEST) Received: by mail-wm1-x32c.google.com with SMTP id 5b1f17b1804b1-3f70fc4682aso18128715e9.1 for ; Fri, 02 Jun 2023 04:04:44 -0700 (PDT) Received: from EMEAENGAAD19049. (default-46-102-197-194.interdsl.co.uk. [46.102.197.194]) by smtp.gmail.com with ESMTPSA id p23-20020a1c7417000000b003f60eb72cf5sm5209914wmc.2.2023.06.02.04.04.43 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 02 Jun 2023 04:04:43 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 47c5473f-0135-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cloud.com; s=cloud; t=1685703884; x=1688295884; h=in-reply-to:content-disposition:mime-version:references:subject:cc :to:from:date:message-id:from:to:cc:subject:date:message-id:reply-to; bh=23VBw2pgGMM0xSSYRikRwL4w2tdQBXv0vLVXQLmfo4g=; b=CknAHDqsDvtuhwIIt70esDpHklnU3J6bu5Yd9e4fyLaYqOQzKWjL8ZiWAG+cWJFrMb pgcWA+++7Q6FqWrJZtYRsjzca5YIYaD+mcj9SYmo3rzq71ZTIVFmJyd2YUBsWA1KFez+ FwR6t137pF78I73sPZ934BP8im6y6tZoKEmq4= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1685703884; x=1688295884; h=in-reply-to:content-disposition:mime-version:references:subject:cc :to:from:date:message-id:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=23VBw2pgGMM0xSSYRikRwL4w2tdQBXv0vLVXQLmfo4g=; b=BtDohCM/vkQLQkUG8gpTYpQ++1NKYwUsLtamCK6loUobrrjSDTH1+uuHkuM3uNqTJI F5A4zfdf27KIxJF1hzgHuTS1ILapgZ2Mk89beoNMQA/t0AAWDQFB5zOBiXaC99IcSGKb x0LAw0GtEUYs8eJOjMtYXnqOUy1c0hMjoWukM4guAfX0Qu4NY2Ctrepq3cT3jrdDKG2X 7fNwAM8kUhFkCtq5p+5O7qKK2X7+wmzvzOjUG+uY9v1trKvqVTpQQJiXg+CT6F/pB6AH c0m2yqd4/6UcOOXNTUfdNmU8m5/+T5VQQD6pGoFmyxLQnET5nm91kXB9TbFgTvoywuJX GF+A== X-Gm-Message-State: AC+VfDxkH9epB8bfPaGnouDGuIM6akzZ8spQWD0ddLA15mnrb/bWTW35 nzmy5h8bPoIr+fzSEdytHFYN+g== X-Google-Smtp-Source: ACHHUZ64+hI2DBchewvrBT1ewPkL+4G+QVkPybVAPHWZTD/g83uh1f+ETp/FcuDVcj6Ky+KgpeGhvA== X-Received: by 2002:a05:600c:228b:b0:3f5:1241:6cfa with SMTP id 11-20020a05600c228b00b003f512416cfamr1567680wmf.37.1685703884047; Fri, 02 Jun 2023 04:04:44 -0700 (PDT) Message-ID: <6479cccb.1c0a0220.192fa.4944@mx.google.com> X-Google-Original-Message-ID: Date: Fri, 2 Jun 2023 12:04:41 +0100 From: Alejandro Vallejo To: Jan Beulich Cc: Andrew Cooper , Roger Pau =?iso-8859-1?Q?Monn=E9?= , Wei Liu , Xen-devel Subject: Re: [PATCH] x86: Add Kconfig option to require NX bit support References: <20230601174327.11401-1-alejandro.vallejo@cloud.com> <619ea01a-2058-c4ed-0f5c-394a82f838a5@suse.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <619ea01a-2058-c4ed-0f5c-394a82f838a5@suse.com> Hi, Sure to everything. A couple of notes: On Fri, Jun 02, 2023 at 10:31:08AM +0200, Jan Beulich wrote: > > + def_bool n > > + prompt "Require NX bit support" > > Just > > bool "Require NX bit support" > > please. I didn't realize Kconfig defaulted to 'n'. That's neat, thanks. > > > @@ -151,6 +152,11 @@ not_multiboot: > > .Lnot_aligned: > > add $sym_offs(.Lbag_alg_msg),%esi # Error message > > jmp .Lget_vtb > > +#if IS_ENABLED(CONFIG_REQUIRE_NX_BIT) > > +no_nx_bit: > > .Lno_nx_bit (no need for this to end up in the symbol table, just like > most other labels around here). There's a bunch of others in that general area with global symbols. I'll modify bad_cpu -> .Lbad_cpu as well while dealing with the next suggestion about reordering the NX and Long Mode checks. Alejandro From xen-devel-bounces@lists.xenproject.org Fri Jun 02 11:15:28 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 02 Jun 2023 11:15:28 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543090.847722 (Exim 4.92) (envelope-from ) id 1q52kT-0005Xf-IG; Fri, 02 Jun 2023 11:15:13 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543090.847722; Fri, 02 Jun 2023 11:15:13 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q52kT-0005XY-EH; Fri, 02 Jun 2023 11:15:13 +0000 Received: by outflank-mailman (input) for mailman id 543090; Fri, 02 Jun 2023 11:15:12 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q52kR-0005XO-UY; Fri, 02 Jun 2023 11:15:11 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q52kR-0000wx-O1; Fri, 02 Jun 2023 11:15:11 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q52kR-00046x-DP; Fri, 02 Jun 2023 11:15:11 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q52kR-000485-Cz; Fri, 02 Jun 2023 11:15:11 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=2qvQUn0bz/l15kjYgTcBWuPnmsHIN3ibWov+2aMbfHU=; b=3rxnmnSuj9k3hvtnDLcolFWo/O qwoW06dcG3dvBIwD3jK300o5LxaFA/yFsthJnQbE8y4L9K5qxHHdjZrHPglT3BBaa3lS2gAU3odez ZE5K0FHz7NLmlu8EX0m8vdGrKZDaibz3e/QT1tRDnARicc/vCPknkjB92OriWsd12dMs=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [ovmf test] 181106: all pass - PUSHED X-Osstest-Versions-This: ovmf=78262899d225eb30e5fbe6a88e85a4b1d8c04a61 X-Osstest-Versions-That: ovmf=41abf00bf98e36830974bd669ab7ec3679bd5e67 From: osstest service owner Date: Fri, 02 Jun 2023 11:15:11 +0000 flight 181106 ovmf real [real] http://logs.test-lab.xenproject.org/osstest/logs/181106/ Perfect :-) All tests in this flight passed as required version targeted for testing: ovmf 78262899d225eb30e5fbe6a88e85a4b1d8c04a61 baseline version: ovmf 41abf00bf98e36830974bd669ab7ec3679bd5e67 Last test of basis 181091 2023-06-01 19:43:55 Z 0 days Testing same since 181106 2023-06-02 07:40:45 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Thejaswani Putta jobs: build-amd64-xsm pass build-i386-xsm pass build-amd64 pass build-i386 pass build-amd64-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-i386-pvops pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Pushing revision : To xenbits.xen.org:/home/xen/git/osstest/ovmf.git 41abf00bf9..78262899d2 78262899d225eb30e5fbe6a88e85a4b1d8c04a61 -> xen-tested-master From xen-devel-bounces@lists.xenproject.org Fri Jun 02 11:43:54 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 02 Jun 2023 11:43:54 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543096.847731 (Exim 4.92) (envelope-from ) id 1q53C8-0000m1-Mu; Fri, 02 Jun 2023 11:43:48 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543096.847731; Fri, 02 Jun 2023 11:43:48 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q53C8-0000lu-KL; Fri, 02 Jun 2023 11:43:48 +0000 Received: by outflank-mailman (input) for mailman id 543096; Fri, 02 Jun 2023 11:43:47 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q53C7-0000lo-2B for xen-devel@lists.xenproject.org; Fri, 02 Jun 2023 11:43:47 +0000 Received: from esa3.hc3370-68.iphmx.com (esa3.hc3370-68.iphmx.com [216.71.145.155]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id b8ff91ea-013a-11ee-8611-37d641c3527e; Fri, 02 Jun 2023 13:43:43 +0200 (CEST) Received: from mail-bn8nam04lp2045.outbound.protection.outlook.com (HELO NAM04-BN8-obe.outbound.protection.outlook.com) ([104.47.74.45]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 02 Jun 2023 07:43:36 -0400 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) by SJ0PR03MB6453.namprd03.prod.outlook.com (2603:10b6:a03:398::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.24; Fri, 2 Jun 2023 11:43:29 +0000 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::192:6bdf:b105:64dd]) by SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::192:6bdf:b105:64dd%3]) with mapi id 15.20.6455.024; Fri, 2 Jun 2023 11:43:29 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: b8ff91ea-013a-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1685706223; h=date:from:to:cc:subject:message-id:references: in-reply-to:mime-version; bh=KDQz6qFkZbP+chS4VwtMVD1Imy+d76fapWz8/pmdLs0=; b=OKZlkQzWJ1B7B8uaG/Ch4RsverJTXCbYSXilN0wWBatdasf7d+Qtl/2l 6LAoZw9tK+f1H/v/7ZQfF8pXkziPpJSB2KMlnvs4WyHcxZnBCwAopd0Ry qqoakf0tRnUsnzMYer65QfcomE+I0jdiBBN1tAgM2UzDniJpTd/jmLw4D Q=; X-IronPort-RemoteIP: 104.47.74.45 X-IronPort-MID: 111374382 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:kjCyIqP8NerEt13vrR2wkcFynXyQoLVcMsEvi/4bfWQNrUon0jJVx 2ZMWD+AP6qIMGf2edhwYIWz8xsHuJHRmodlSgto+SlhQUwRpJueD7x1DKtS0wC6dZSfER09v 63yTvGacajYm1eF/k/F3oDJ9CU6jufQAOKnUoYoAwgpLSd8UiAtlBl/rOAwh49skLCRDhiE/ Nj/uKUzAnf8s9JPGjxSs/rrRC9H5qyo42tG5gZmPJingXeF/5UrJMNHTU2OByOQrrl8RoaSW +vFxbelyWLVlz9F5gSNy+uTnuUiG9Y+DCDW4pZkc/HKbitq/0Te5p0TJvsEAXq7vh3S9zxHJ HehgrTrIeshFvWkdO3wyHC0GQkmVUFN0OevzXRSLaV/ZqAJGpfh66wGMa04AWEX0u9WB2ho8 94kFDkEdyjen8uozauLU9A506zPLOGzVG8ekldJ6GmFSNwAEdXESaiM4sJE1jAtgMwIBezZe 8cSdTtoalLHfgFLPVAUTpk5mY9EhFGmK2Ee9A3T+vZxvzW7IA9ZidABNPLPfdOHX4NNl1uwr WPa5WXpRBodMbRzzBLcqyv32bOUzXmTtIQ6Ebzg7aJTumOp3EsxDjkHWUK1n8OjoxvrMz5YA wlOksY0loA75UWtTcT4VjWxpXLCtRkZM/JTHvM77keRy6PSywefGmUACDVGbbQOttIwAzoj1 VaLntbgLT1prLCRD3ma89+8tTqvPQAFIGlEYjULJSMa5/HzrYd1iQjAJv5gF6ivh9GzBjD0w BiNtiE1g7hVhskOv42g9FXajjbqupjIRAco4hn/U2S+qwdoY4jjYJangXDe5OpNMZ2LCFyGo 3sNs8mY8O0KS5qKkUSlRegLE6G0z/2EK3vBmVNpGd8s+ynF03eiZolR5DhWLkZ1PssKdDnlb VWVsgRUjLdLJHqwZqZzaoisI84r0aTtG9njWv3OKNFJZ/BZZAKBuS1je0OU92Tsi1Q317EyP 4+BdsShBmpcDr5opBKzRuwd2LttwTosyGf7TJX3iR+g1NK2f2KYR74DNx2Vcukz4aeAoQPU2 99aO42BzBA3ePP/YTPe9MgcJEoKMnE/LZnzp4pccevrChZvHWg6I+PSxb4ndJ1om+JekeKg1 kGwXE5RjmD2inzOJQyJbW1LYbbjG514qBoTMTQ3OFe021AqeYu18LoEbJwzYKUm8+p4i/VzS pEtYcKbCO5ITTfB0zsYZJj56odlcXyDhwiDIi6kazgXZIN7SkrC/dqMVgDv7igVEi2vtcYk5 aLm3QfSW5krSAFrDcKQY/Wqp3u3tGQdkeQ0RFfVLtRJUEnr6o5nMTP2lPwsZcoLLH3r3SeXy A+MHT8DueTS5YM2mPHSnryNpYqtF+p4H2JZEnPd4LLwMjPVlkKh3ItBXeCgbT3bEmTu982KY fhWxuruGP0Og0xbt4l7Va5vpYoU6sHzvbZcwkJBFW/SclWwIrp6Jz+N2swnnrdExqJd/xC3X E2P0tBAPPOCP8aNOH4cIhA0KNuK0/48kyPXq/8yJS3S7yZt8L2KeU5bJRWLhWpWK74dGIEq2 +A6o+YN9heyzBEtN76ugi5d+GuNKXgBe746rZxcC4ju4iImzlxEaNrBBC7z/IqCddxkNVMjK TuZwqHFgtx0+E3GdHYiEGnX6sBUj58OpRNiwUcLIhKCnd+truQr0QJY6yhxTgVRwhhNyet1N kBiMkEzLqKLlwqEn+BGVmGoXgtHVBuQ/xStz0NTzDGECU61SmbKMWsxf/6X+1wU+H5deT4d+ 6yEzGHiUnDhe8SZMjYOZHOJYsfLFbRZnjAuUuj+dyhZN/HWuQbYv5I= IronPort-HdrOrdr: A9a23:ULm3pKho3S5ISh7VmzORI+7QdnBQXssji2hC6mlwRA09TyX4ra 2TdZEgvnXJYVkqKRIdcK+7Scu9qB/nm6KdgrN8AV7BZmnbUQKTRelfBODZrAEIdReeygdV79 YET5RD X-Talos-CUID: =?us-ascii?q?9a23=3AJTwhkGlcM9Fk3EAgyrIM1K9iWerXOXT8yn72JW2?= =?us-ascii?q?ENW9gUYXIUXaO9bpUivM7zg=3D=3D?= X-Talos-MUID: 9a23:LJvdJguYvYw4kFjgVc2ngTA6L5tR2ZqUEmcvl7EXt9CKCxZqEmLI X-IronPort-AV: E=Sophos;i="6.00,212,1681185600"; d="scan'208";a="111374382" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=aqshhYmX2c0MKA1edxvpIHLXrUSsh75D8fdWePFOE3ridZZNXen1c8BbuYhwB21GnntHO8kJ6tqemyf1uAC1CFsqHeae2m+TRkBuV/v7h6N3v058bD42dRYUrwXe6BbkiY42+hnnzwt8mPXldWWptQlOu7ZmRHcHzrxcvKvH0cIR4jPqeuxWE8O2+glV6wqoz7mz450hJd1s5ZjtYeDTrB5aH5V2hrm+zj9BEl94OHgYPZAeP41clfGSJ2rO60rilA0tcW1mAg/E1/bWVQo3tmlEAtwxjs4+Zqv3etcuPjL0MLXTj/H8Zu4QSCpT77vfHHoIWKvMho8OjZ8oL8PbJQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=xi7YcqVQqckgh1ie/0c2dQlJNuQV48GdpRpYWfQpWdw=; b=FFxUbfjAU/f3pD4iBhx1G1OSNE7Q9bU1n0Q2/cJhDksGuaho9knB1u16G1gB8vozxcq1DdmpNHMD8L6LBQAOWhevhcIwcIDnruHJgXqkdzlBi/EQ95fTQPBKiMzm+oGXNtejP/q2y0GYLHjMeqMG1kxoaFKl57UhiwV/7B/TelrkYhtkHaoytyXxb7LBAKfko1j0hlLt+E5Qw+I20+JE2LPeWYqNaMjla/DkV+tzDZsh512gr1t+GEB45cPY9iPUUrUm1Hi/0oaH0DGlknUJHpRiTk2Gtiy1/eQgDHMhTWuMSujfnjHFDSt2b0cJQjQwzPn5jR8KR2WMKfclVL6rCA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=xi7YcqVQqckgh1ie/0c2dQlJNuQV48GdpRpYWfQpWdw=; b=UL0lY9GlDZswBani3WJdftMvkGDGLOpdAN5bEqDkEvaHdqb9vMSxbTvWZ2/loGmCkEO/snUgxO6SyueOAFhLDhUzdWgCl3QM7YkqwjFMH4VXlD9NoSZpfAuvfNmQ7T0WKlP4poAI+1jR4+Z1TzkW7Ysag7CDipwq0Y1aAcwe9tc= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Date: Fri, 2 Jun 2023 13:43:22 +0200 From: Roger Pau =?utf-8?B?TW9ubsOp?= To: Ayan Kumar Halder Cc: "jbeulich@suse.com" , andrew.cooper3@citrix.com, christopher.w.clark@gmail.com, nathan.studer@dornerworks.com, Stewart Hildebrand , Stefano Stabellini , Julien Grall , Bertrand Marquis , "Volodymyr_Babchuk@epam.com" , Rahul Singh , Henry Wang , Doug Goldstein , Juergen Gross , dfaggioli@suse.com, elena.ufimtseva@oracle.com, anthony.perard@citrix.com, george.dunlap@citrix.com, rosbrookn@gmail.com, lukasz@hawrylko.pl, dpsmith@apertussolutions.com, mateusz.mowka@intel.com, kevin.tian@intel.com, jun.nakajima@intel.com, paul@xen.org, Wei Liu , konrad.wilk@oracle.com, ross.lagerwall@citrix.com, samuel.thibault@ens-lyon.org, christian.lindig@citrix.com, mengxu@cis.upenn.edu, tamas@tklengyel.com, aisaila@bitdefender.com, ppircalabu@bitdefender.com, "xen-devel@lists.xenproject.org" , Michal Orzel , "Stabellini, Stefano" , "Garhwal, Vikram" , Xenia.Ragiadakou@amd.com, Stewart Hildebrand Subject: Re: Listing the tools required for Xen development/testing on x86 and Arm by the community Message-ID: References: Content-Type: text/plain; charset=utf-8 Content-Disposition: inline In-Reply-To: X-ClientProxiedBy: LO4P265CA0274.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:37a::6) To SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|SJ0PR03MB6453:EE_ X-MS-Office365-Filtering-Correlation-Id: 89163d12-82c9-4d17-cd01-08db635e953a X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 4OWFg/Z7//iWioSDj+rQqho+Bvvh4WSvQPChD0h6OXj9HWGY2Rwmi8H2/PzJ4ktdUHOvGU+ql0/KRCW9SXboC/ni6HQF7E3yQPvmPai04yyHY2hBM2bmlT4gtmHSMlOxFhCuszqX2U5NRwuXqIVxBmREJltg1ozDlWn9e9YZMfgxeJkNksG1hnYxU2B0msoa5hbDOOdzsikgDF1uSTLS7GOHINMqxONk8zKfDX5X1AuUj/jribs0zDHJa2hO+xXheTbNAAsA3ky9D5ZqWT1ldsTNoDbdgPjOvO7rilGEMdhbTKziYyRUrJtnu9KS8O30bgOW9f6aFEl2tAzWlY3lNDlGxdLr0ZiKAC2L+TbVLHPhXtcjXkGN0Hi294/Xg/BiUUl/zht/GCtFEEfTQPrx/8BOoNVLqu5K5Dr/5W+yZ8ytA5AJHq8GOfF4PBr+kRARUK7OziT3zuJTZvz+MF9XnpJgGohmZCvqXZXTay3d1TqEV2AgHegG79B1V7VQqjRJ9PjhbYMkGr5MCXIYUnovQy3DmlrPMRtwSghJgqSKnkk= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(7916004)(396003)(346002)(136003)(376002)(366004)(39860400002)(451199021)(8676002)(478600001)(6506007)(9686003)(26005)(186003)(6512007)(6666004)(966005)(6486002)(2906002)(41300700001)(83380400001)(316002)(8936002)(7406005)(5660300002)(7416002)(66556008)(66946007)(6916009)(66476007)(54906003)(86362001)(85182001)(4326008)(33716001)(82960400001)(38100700002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?bGNJdGVtWE5KNHpBeGx0RTFxeTBSQVpWT09jRFVwQ1dLRTcyWDFXZTJidmIw?= =?utf-8?B?RElLK1YxYVloT25ETmpuNE0zWEplalF0NmY0ME10RHZ5eEVWQndZL2NvM1I2?= =?utf-8?B?TXJ1cFdHUUpkR3plWUZDa2dmWTBBUXdEcTF6dXBCT25JNFU5a2tmRFo3bW1C?= =?utf-8?B?SEVQZFB6VUlIYjIrQVdKZk5DbUFONlkxZ0RkZDhpOFlLa25xaEJKRmJxK2Jy?= =?utf-8?B?QWNpSk9lZEVNaHRuS3EvbUZrMkJNSWg5K0NHbGR1Zkp5dlpveUpEUU9UWi9v?= =?utf-8?B?UkZzOVorQUN1WTlnZkhENmF1d3ZlaHQ2L3NwMmtFV0w3WFlscjJHMnhlblQy?= =?utf-8?B?ZUxLOUcyNXBEcDhIdFc1eEhuVGR2N0o2UDE0dVYyWlVFRHpLSE8zdG00TURm?= =?utf-8?B?aGFYWk4rT1BqTU9FQVNZSW1weWRmOVJ6RlBvS3N1M01oUGdpcmFCcExxajVk?= =?utf-8?B?QmQvODRxTjhMQWswOXZLT1hYb1l5OWN0L0FtNHdySkcwRk9pMVBiaWFiOXhp?= =?utf-8?B?MFowUmExS1JTeFlLZjB2UE1KMW9rYWlnZWErK1dITHM5Tm1mQnh6UmJjN011?= =?utf-8?B?QWZCcmM4Zk9Nd0NLQnNXcVlDQ3dWaGZoNGxJMTIwazBlTW1waTZiQi9xVjF1?= =?utf-8?B?TTNMWnI1WUhMN1VJZEVEV3pvVGxuZW5SdVdnc09sNVl2b293WnpuUXEzYXd0?= =?utf-8?B?MEJhNlVtODRFMGFHV213eVhJeDZ1TWJyVFZ3WEI2ZTZYbVg2WDFxT1hVeE9E?= =?utf-8?B?eEhtSVNXMkxKdUlCMU41RC92eGtWRkwrNk5qVGV2QjJRVkd0eFdYc0ZCbWs4?= =?utf-8?B?aENFK1RObDV4enMxWUN4bnhvMEhmZkp0WDg5SytyV0pCVThBakpHUWlhcFdL?= =?utf-8?B?SjF2dHdZK2JNUHA2d2FnZHZSbnBWQVJOZ0s2bzFVTGRhNkpFSlBBUU5vekFk?= =?utf-8?B?ZmRLenFEdzYwTkhlZHoxeWNYdDVsOVZpalZUVnpWQTJQRG1LdnIvVFA4NlNP?= =?utf-8?B?TmxKY0lJdHVFMWl0Mjh2WGtlVjlLVEo2ZFQyam12V0x0ZG9wS0Rtb2Y4dm1J?= =?utf-8?B?WUpOR1lNQTRqQWFRakk0eVMrYXdwKzBEKzBLd2MwaG8yS3JNampWSjZZWTRj?= =?utf-8?B?alNLNytaRHlzeDRJTThtdk1UeDEwN1FMa3RTZHdtQUxodk1XbW4wbUI1Y2t1?= =?utf-8?B?V0twZS8vL3N6RFhSRzJoTzI4N1UrQ2RQdHFEbXFUTGZSTGZTNndQVlF6dDBL?= =?utf-8?B?MHpSSU45VFQxWnlmM2RHWms0V1YzcnlUYnExWm1rWUJtR1hsNWExWWJIcWE0?= =?utf-8?B?aGJpTDd4WDZKYk1mTWNHQmVadlNmaDhoMFN2LzdWSjcwbjJSV0Q4Rlo2MVZE?= =?utf-8?B?bGx6aUJISFlSMGw5QVNxVnFpWXp3aU80ZUR0enhCTCtwZGQ1eGthRHlGYnVK?= =?utf-8?B?UjFGd1BwVDFSWGdZYlFVdG1EUG1NZzk4VWl5TVdvbm1ZWkJjQmRqMlQzVTM2?= =?utf-8?B?SE1UL3g1OTJPSTBRL1YrNTd2Mko3ZkFuL2lXdFU2aXpPWGV3TmxYWnpncDNi?= =?utf-8?B?WHFRWTRNQ3c3UDI1TFlrWkMzQWU1NGFJWkRlQlBTd3cyVWNPZytpNXFuZ3ZJ?= =?utf-8?B?bmVPNHFSTExJeThHQVYxT09oRXI3a2ZqTzRBWWZrYXBzalhGa0d6UzdWVnhD?= =?utf-8?B?WUNleklBVVlQSmNVZGZNYjRxSGdXTUk0Rm92ampNZW9haXJ3dHVwdFdlWjdz?= =?utf-8?B?alJ4OGZnL1EyKzJCN253UlpEb1N3N2t3a1pLWFZzKzhmcjBIbm82aHVRazFq?= =?utf-8?B?eEVwSmg3L2Q1eHRDMkcvVDV6UFh6MUEzMU9KdlpNSXNJMGtXak9LLzVZM3Fs?= =?utf-8?B?MjFYdUZER1dqekZObi9rRE0yditrWlpRdU9PcERYVE1XYnhNQm5yZHlQNUhI?= =?utf-8?B?V0tYUENtaE5rY0pHZG1odU0rVTBzQzNJbTNDSDQzQkNJd1prNnU3bHZ4RXZ2?= =?utf-8?B?SUlnd1hYaVJhRWc1eU5qNTQvMWV4Mjh1MDhEcVJFUXpaTGFHdmIwd3hsaGVK?= =?utf-8?B?Qm5NbkxlYkI5NGpFYmRPVzRhcEJBRm80d0VpMEtScW9nUi9FWm9UYkRyVlE4?= =?utf-8?Q?YJSvSun9f9FjZpmus/6kmjn43?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: =?utf-8?B?QnZyNUQrKzA4TVJ1L25VVjBlbVRVMjRjbENSYU96cXVpWTJVUU53MHJmM3ZE?= =?utf-8?B?WEhrMUJmMjZrYllsemtaMEJTcUJCaWNLeTZmNitiNnNtMUc3TFVVZDdGNmVD?= =?utf-8?B?QWxPOTJKQkhFT0lKdS9qQ0tBdFg5Qnc5K0FZdFE3WE9ZekxISGFlSFdMM0lo?= =?utf-8?B?emdPc29TLzhiMlpaZFNiTkdvWWp6Zi9kc2pNT1E4bk5RY1NnZEFBK25Fb1V4?= =?utf-8?B?QjlWejB2TXhKRjN4K2tRdSsxdjhUR0pQNXVzM0kxc0xoK1p1R2lhWFhkT01F?= =?utf-8?B?RHovT2VIcXpFVnUxQUptYlZqZjlGcVJnVEViS2tsYUFEZnYvWUordGpPRU5v?= =?utf-8?B?YnQvdVB0SUdSd1lVUzFoYk9kbDZGVFlWSVk5ZmMwb1Y0WlNkYmRBSnEvcFRG?= =?utf-8?B?Q0drRWFtbXF3c21yNk1tTWZQUlRZMk9ha0VRSVNHcFoyVnljbHRQNmcrcFZ2?= =?utf-8?B?M1pqRGhoSHVUUHdRell4ZVRyWXllM24rVE9vbkxUL285M2xVSW5hOWwrQjRE?= =?utf-8?B?K05BZ1VUWS9semUzemJJZXFNK05kTCtWODlITVNSR0JrZTVRUEV6eGhzZGpq?= =?utf-8?B?WWxyMm1wRXgxNE9VbEFGMG5LSE1RdGVMYWd1UDlKUGtRVksyd28vSXQxemNI?= =?utf-8?B?QlhBbXlwbDdJSUtybkd3RmQ4Z0tuTTlnYTMrUVVqcGJsem1GRUEyaTNJVTN0?= =?utf-8?B?a29pVzRwSWF1dlU0UnA2ZmNYQ3hVbTlVU3pyOHZhQXVzZGs5eTRpNE94QW01?= =?utf-8?B?ZEcwa0VXWUpCR3VCVFh2bGRobXFZMTI3RVFkTDNZUThweHROaVU5SUMrUk5n?= =?utf-8?B?WGp5bXgwMlk4REUwY2lmQUszWmdKbWNkSUZTY0Z5NjdRbFhtZkk4Y3BBRjQ5?= =?utf-8?B?cWphTEV1OEcrRjN6ZHpFa243Qk54MFY4ZHhEQ055UUljSkhxeHBJNEJqVlRS?= =?utf-8?B?dGRtWFh4RExtQ2MrNElKYWZqOEFDTDRiMS9Qd0Y4MHc1OTRvQnVTbmJHSWZN?= =?utf-8?B?QXcvRjFQM1cwUU5tTkNLemJSMld0WE45Ym04SW8xQldkYnc4OXZzWDNGMWxh?= =?utf-8?B?SXNpc3BXOXZLNXFpSG9iK1RrYkphc0FJcFV3YzQxc1kzWGg2NXRTVGtPaXFW?= =?utf-8?B?Z3hXd0NudXRiVUVNcmJsSXNJdVcwRFRMaVJtTzVQdzhXMzJXb0ZDYlh1Z2d0?= =?utf-8?B?RW5QVUlMUERqbzBhUVFzZjVRUHNLamltQkoyT09raVJ5clY5bjlERmdHOTNI?= =?utf-8?B?RHhTSWdrT09nRDhHNVJuWnNQZTlGOU51djNsQldacG9xUjA3blpSNEJCL0RQ?= =?utf-8?B?dHFqaUhaR1hFMEc5eGFESmthRUZ2R09DNDdMbjZuN2RVMmttUXFJZE0xSjBZ?= =?utf-8?B?Mys5MG9MVWFmeU8yN3l6d2J0SDhObkVzRThQajlCNG4vcXJrQlZ0cnRoWEs3?= =?utf-8?B?MXJFWmZ4MWF4L0lVZnE0TGRwWSt0SE94K3ZrSXNSdVZrU0VlWUE0MDdvMys1?= =?utf-8?B?TVBtVTM5Q0JyUkEzT0pjMWRtbFB2NVdYK2k3VjdzekpVcC9RTEFHN1lkOGh3?= =?utf-8?B?Tnh6SDFNdUU5UFlCSkxxQVRHL3BBWlhjN1ZwN29BMDZJMEpYamF0V0E2U2Q1?= =?utf-8?B?L3dBREswQ2dYczVodG9HTjFCYmsvNStuVWZ5SEkyTmVFV1hMQjRVWjVoekFk?= =?utf-8?B?citDbFBLaHdWTit2Z3Exc0tyTDVGaUZOZUpTY3VVYkZPdVNEL05jK0c4d0w0?= =?utf-8?B?YWpTaE9rWTAvQ2MzNlBJU0tMZ1QwaDBXanhpV3BOU2tydTFHWmFHVGhlTHUr?= =?utf-8?B?eW9uV3V5U1Jnemtnd1RJZz09?= X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 89163d12-82c9-4d17-cd01-08db635e953a X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Jun 2023 11:43:29.2999 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: yuOcZ/9Pa/YtpsZR24UQZZAf4a1KE0D7D0fViPsfLd1e2g5ofcSOpxVCNrXIGoE908W8Yo0Qe1NywLminFq8Cg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR03MB6453 On Fri, Jun 02, 2023 at 09:48:48AM +0100, Ayan Kumar Halder wrote: > 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. What is the end goal of this? I'm kind of unsure why do you care about which editor I use to generate my code, that's up to the developer. > I appreciate if you can let me know anything I missed or mistaken and the > version currently being used (for some of the tools). > > > 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 assembly (gas), python, perl, shell, Makefile, bison, flex, ocaml, go... Likely more that I've missed. > > 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 I do use an LLVM based toolstack, so that's usually latest LLVM import on FreeBSD. We do also test this on the cirrus-ci, see: https://github.com/royger/xen/runs/5334480206 I_n any case I think the scope to some of the questions is unknown, it's not feasible to expect to list every possible combination of Linux versions vs Xen version vs whatever guests versions a given developer might be running. Regards, Roger. From xen-devel-bounces@lists.xenproject.org Fri Jun 02 12:05:39 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 02 Jun 2023 12:05:39 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543101.847742 (Exim 4.92) (envelope-from ) id 1q53X0-0003Na-Lu; Fri, 02 Jun 2023 12:05:22 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543101.847742; Fri, 02 Jun 2023 12:05:22 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q53X0-0003NT-Hk; Fri, 02 Jun 2023 12:05:22 +0000 Received: by outflank-mailman (input) for mailman id 543101; Fri, 02 Jun 2023 12:05:21 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q53Wz-0003NN-0m for xen-devel@lists.xenproject.org; Fri, 02 Jun 2023 12:05:21 +0000 Received: from esa1.hc3370-68.iphmx.com (esa1.hc3370-68.iphmx.com [216.71.145.142]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id bccabee3-013d-11ee-b232-6b7b168915f2; Fri, 02 Jun 2023 14:05:18 +0200 (CEST) Received: from mail-mw2nam04lp2173.outbound.protection.outlook.com (HELO NAM04-MW2-obe.outbound.protection.outlook.com) ([104.47.73.173]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 02 Jun 2023 08:05:15 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by SJ0PR03MB6392.namprd03.prod.outlook.com (2603:10b6:a03:397::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.22; Fri, 2 Jun 2023 12:05:13 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::10bb:98bc:e36d:36ab]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::10bb:98bc:e36d:36ab%3]) with mapi id 15.20.6455.020; Fri, 2 Jun 2023 12:05:12 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: bccabee3-013d-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1685707518; h=message-id:date:from:subject:to:cc:references: in-reply-to:content-transfer-encoding:mime-version; bh=jj9rb6+/L5r6/dNVZL5zGq7b9WCBG6unxpdPWhg1GxU=; b=LqNLbPuwgJXhOoMjfHvAKbXMCFGhqTUwLi03Hcb4Ulgt3Xb+Tdtd4DX0 tFg3gHmKbagaeWTo777KI+egBAe0XsguBOt42Tlxpe1F8bAK4ymXoXSuW ukHG0+7PTSLZXewkj48/87S9c3ToCV+MKPywTvk5KE7440T+ravprwRXH A=; X-IronPort-RemoteIP: 104.47.73.173 X-IronPort-MID: 111769551 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:/pdS067UV1esl+JMbqKX6wxRtPjGchMFZxGqfqrLsTDasY5as4F+v mFOXTjQb6nZYGv3eIwka43n8k5Tu8PWzIdhTQJrqHxjHi5G8cbLO4+Ufxz6V8+wwm8vb2o8t plDNYOQRCwQZiWBzvt4GuG59RGQ7YnRGvynTraCYnsrLeNdYH9JoQp5nOIkiZJfj9G8Agec0 fv/uMSaM1K+s9JOGjt8B5mr9lU35JwehBtC5gZlPa4T5geH/5UoJMl3yZ+ZfiOQrrZ8RoZWd 86bpJml82XQ+QsaC9/Nut4XpWVTH9Y+lSDX4pZnc/DKbipq/0Te4Y5iXBYoUm9Fii3hojxE4 I4lWapc6+seFvakdOw1C3G0GszlVEFM0OevzXOX6aR/w6BaGpdFLjoH4EweZOUlFuhL7W5my tgJEBNScjS6lsnnnbWJTc1xpMQ5BZy+VG8fkikIITDxK98DGcyGZpqQoNhS0XE3m9xEGuvYa 4wBcz1zYR/cYhpJfFAKFJY5m+TujX76G9FagAvN+exrvC6Ml0ooj+OF3Nn9I7RmQe18mEqCq 32A1GP+GhwAb/SUyCaf82LqjejK9c/+cNtLTeLmp6M32TV/wERQCgRNFl3jm8O80HCmQvVGL 09E9iox+P1aGEuDC4OVsweDiHeAsxwVXdZKFKsk4QWJx6jTyw2dAXUICDVGbbQOpMIwADAny FKNt9foHiB09q2YT2qH8bWZpi/0PjIaRUcAbyIZSQoO4/H4vZo+yBnIS75LD6qdntDzXzbqz Fi3QDMWgrwSiYsOyP+99FWf3za0/MGWFUgy+xndWX+j4kVhfom5aoe06F/dq/FdMIKeSVrHt 38B8ySD0N0z4Vi2vHTlaI0w8HuBvp5p7BW0bYZTIqQc IronPort-HdrOrdr: A9a23:akYXw67cKMJh6z8YMAPXwAzXdLJyesId70hD6qkQc3Fom62j5q WTdZEgvyMc5wx/ZJhNo7690cq7MBHhHPxOgbX5VI3KNGXbUQOTR72KhrGSoAEIdReeygZcv5 0QCZSXCrfLfCVHZRCR2njFLz4iquP3j5xBnY3lvhNQpZkBUdAZ0+9+YDzrdXFedU19KrcSMo GT3cZDryrIQwVtUizqbkN1OdQqvrfw5evbXSI= X-Talos-CUID: 9a23:6sj6mWHxppfYqJgsqmJY0F8sOZ85VkTM5yaNJH2/LXtLSKe8HAo= X-Talos-MUID: =?us-ascii?q?9a23=3AZqaHFA8UjGvdIW3QKgp0/1yQf4Rq+v/tDhg3q5B?= =?us-ascii?q?chdGdEjV0OGeRjCviFw=3D=3D?= X-IronPort-AV: E=Sophos;i="6.00,212,1681185600"; d="scan'208";a="111769551" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=oXe+IfKVe41ZZBX7PLUcMNGny3slxOfUR1xYtGkaaHxZFK+JKzelk84aJwAGxUj4bGyFW7+eSfL4sp9sUXT+SmBuO2XuxedYWDplPCR09KYaowt0WN6fDMQM5q1RzZ37jEGw1/SAquDFtZxRm+clfGc+x5KRY/hpitvc6E8lD52+hEWvIxhhGf9woSSb0fXPvtzJzLUDH6qun4MspFXXSFKCrkVPyMAA4WgUII7rzHpk8DkKfK39YgiXNtu7nAVvPrmvnY2+e+PylpsLUxG1PVhXNphOorMsOGshjvtJj26i/CJDAbCaKkJ4LunPo9tvKOnWKB+BEPrkGYuEHtIMOg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=DglTLmptBa2u8gwTawjsj4jHugysRSZelzptKC/fCvM=; b=CMk3i2HyHeqXLapJTX7rSJHzOZ+7lTDmwQyXXeMkcfVRCFHC8E1LTdEBnK+/KIXvhRuST4z+BdhNraeBI5F0W4kTp16b0MR6njSH8hbubGrSYFXsatt8lFNv577H1D+mL13CTX8xP4IiHrfhgFMQ0s/FUY1Q7GGc0L8DIBLAdvlF06S69s85lqqJZ2e6/RoIR+2LhZgAG7sD1rzqTpmlMQpQzjRiOS0LyAw1eLqYLIH2KnPM0Xuz6qeykEXYShj84JBDedgbREh4/bAdck0Iemyymvmh0RYh5yOzFKnbgW9cfth8Wu1jS4SGedTiAJisiOCx7Dt+Tw7hUJFlY3VdjA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=DglTLmptBa2u8gwTawjsj4jHugysRSZelzptKC/fCvM=; b=NfcXAeYMJELiKToNJyyu1SdngXx9hnhnan3W2AexaGqNuMqBBrUStkuKd8HHCSPMwCreHK8KFsclSDZ9VI+Mqx+AjwIoOKRh+XxJZ5DL6ISx1WN16yQm6SQUI0LeLQ360wrX1Za1qeS6RN9PTf8wrUlK9xV+fYA/AgCZDNuzUkY= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: Date: Fri, 2 Jun 2023 13:05:06 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 From: Andrew Cooper Subject: Re: [PATCH] x86: Add Kconfig option to require NX bit support Content-Language: en-GB To: Alejandro Vallejo , Xen-devel Cc: Jan Beulich , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu References: <20230601174327.11401-1-alejandro.vallejo@cloud.com> In-Reply-To: <20230601174327.11401-1-alejandro.vallejo@cloud.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO3P123CA0002.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:ba::7) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|SJ0PR03MB6392:EE_ X-MS-Office365-Filtering-Correlation-Id: 61f527aa-c9c0-424e-95e1-08db63619e53 X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: g2mNNcP7N2LlLvV72tgSTgXIXH9b4hwlAwvjWnUFBoSXvwKRLdGVBmWRVyzSzhRArb5WdvSEtJKezESnMq9DnRlOG+EKVJs31camEHkx22XpyOu3NACwGwd1VGXa43Vv8NIWNg0OUiz0VxUUAa1m1ayS8vjqRAxgzHBjfSVbfEJC7lwWry+ZTsgUV0l6CbcgIwEDBAmJZm+8GBic7+3z1jUaXa+g38CKKmau109N+oNTJWLmhItgMtpR8djDvR/ZE+P10PlQT7xbCwibaH4Z6cgJ8amMeDlgfPu28bXkqp7z5wp50klXVKjMZOBXThgTHqbYXOZxI0pyqCNvWlogqGqPQlP6hBu5otWWWfNDs9SjNzawd/9rK5wLE0LNE8HEGDfe9Lth1S4LwIdwF2kui7fKBtRgSStdw/Lgreyb2z1LxgQGO068gZqu8tyG1O64JPZSQIMdOH27LxhizZoZVRTgnEMzCgOCNIeunkKc1xK963Tktkdht7KsIeqEGrazIzsP++7bIXiHzg5dLn7uR8A/vzvV58R2aNw6tTQ938CQwCfFjMOOKq0wkVHi61cRTr+NVkAp3NlRmVjV0z7yY+X+v5MRsKwX7zW4bnilnToVm8NDxngEf4e7nAtMh+BkHq7kNyBfuMkLyHRIYNBNdBmqEGU6JXmMRZLUtIBVW0Y= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(136003)(39860400002)(346002)(366004)(396003)(376002)(451199021)(110136005)(54906003)(26005)(6506007)(83380400001)(2616005)(316002)(66946007)(2906002)(31696002)(82960400001)(478600001)(4326008)(31686004)(66556008)(6512007)(66476007)(86362001)(186003)(6666004)(41300700001)(5660300002)(6486002)(38100700002)(8676002)(36756003)(53546011)(8936002)(21314003)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?dm9JZjVBTUpNMWZ0em83ZlhLR2ZJME0ydDk5ZGVRWWVqWGlWdlFXZnhMVC93?= =?utf-8?B?YVRBaGVyd2VrN1RNRDVSZ2c4b3JjTEZISFNjL2JHVlE0ZThYVlV2c2FxVGNS?= =?utf-8?B?Ty9GbXVkYlFYYm0vOFlJNXdZMGxvRHRuU1FIbnZOTStuYzI5c1k4Q3ZNSHVJ?= =?utf-8?B?RmNlRXdCQWJRS2l1Y0dzZGo0bit6ODRlZExXV1N4VVNnRENUakFSRFI3dWpm?= =?utf-8?B?dHR5WjArRkExOVhvUGVpU1E2MmRJMmNlcFRPdHVKeTFnK0JCS3hnTEJVc0tI?= =?utf-8?B?WHdNQnRQU291QmJ0WE8reWE3emtNUkxBQkU4Zkh2cUVLZXdZaGhJVmFwWnVh?= =?utf-8?B?OXRUbjdHWmEzTWRCSUhaM25jS3laakpHbGs0UW9lQUJPY2dZeXl6bDhldWVu?= =?utf-8?B?UGJqdGxNa05HNFhucFlIaE51NmorcmNvK0VpcGNTOXpVMDhHZGYvem8yb1Zz?= =?utf-8?B?alZRS1BkQ0NhVDcwNHdQTVR4Ly9SZTVjbzIrZmIwZjRxZnBVdHpXWms0UkRO?= =?utf-8?B?NjBNM25YeDdnR1p3eFhXVUJMTHRncW5OOUZtY2ZLVks3b3lvVHZtOUx6SUZy?= =?utf-8?B?cTNId2hTRmJsYUxhVEF2RnBtd29GN0IxNFpPN1ZtMHdLMlZualc5MG0xcVZm?= =?utf-8?B?QlBXUlZydkg2ZVFBVm5GSlJtOWZOZ0RSd2FVRVpaS2JCUU1OWE5oeWdSR3F2?= =?utf-8?B?S0RsS2l0ZlZiVEJmd0c2bjZJOWgvbHBkNXdaMDQzNE9qb29kWTBIL3E1V1B0?= =?utf-8?B?ZExoTk9mVGFkREhsSXpyMW8wNStjTlN1UVdqOFNWK25Zck5keERTOHZpejAr?= =?utf-8?B?Zk15aDNYMSs1RDkvSXVHSUZzRXcxd0wyWmNCUjVJL2lBQ08ybzhFQUJUWVFN?= =?utf-8?B?VGpuZ0cyMENMOWJqK1ZwUktWVWZ2SVc5c01JT3lvYTd2WFQzSWpWQ2ZIYkF2?= =?utf-8?B?aFlnZThRVTdPUE85enM0bHBMWjV3SU1ndzQ2VjZOYWhHcEt1OGZhM0ZjK2JX?= =?utf-8?B?WUFVR3E4WjltZzNyazNjS3crVGM0aHhWVVBDSHRJK2NMZHZrRE94NFAyTmx6?= =?utf-8?B?UXFwRXkxREZpTmhvcWNUcTNVdFFtWDF3YlRFR2pjZjJBWjd0b0Mwc2JpYWhS?= =?utf-8?B?UGZPTkE4RVB6U1kzK3Fkc2VyMkFzNE4xZ0hhREh2SUQ1b1E5MzF4WTNTL1B4?= =?utf-8?B?blliakh1Y0xDZWN1dzl4d1FqN0laQ1o3ajJ6MzY5aFBaOTFQeW9iRnJkN3p4?= =?utf-8?B?TitWakNlRkxISXNacVJtdXAydUZCYmJrUUpKN1VvOVk1alRGMHNtUEJUanVt?= =?utf-8?B?aGk3cW5id3JoNkdEZkVQTzRVSmJPVTJJRXM3R0Q3a2xyL0hJMERLK29rUXNq?= =?utf-8?B?Q3RkR08zT0FFdEhpMlVrazZSaVF5NTQ0TlgrMjNuV3ZKZ3pXOWtpTjMxajdv?= =?utf-8?B?V0ZIRWNUOFZ6VVA0eXNnNzh4VDVBWFBuenZMcHkvOUtMYzM3TXJHaW1iN25N?= =?utf-8?B?eWx6SFVweGlSRldDQ2FoT2FnWStTUkgvMnM5TDkxb3duaUVUVHIxNjZ5Um9i?= =?utf-8?B?UzRXZFpoNy9CWTFyVHo3M3BtKyt6eTBaNmcrcjVlWWtQeU5Hc00xa2I3NDVP?= =?utf-8?B?MG45NTQ5SDhjdHFFOUNhYlEzVGxtdTF3a0RlVWF1Ny8wLzBBSldFSUh6cDZy?= =?utf-8?B?WXExZmsyZUg4OEhqL1JtcUFNUWVoQ0RWbmtYeGVkbFdrREMyb1huSkMxYXJs?= =?utf-8?B?a2V6Q2dWR1dEVkI3T0tHcmRFRTB1Zk1Kb2xXUUdNVHhpYU1IN0RpU1BlWFpP?= =?utf-8?B?ZVR4dng3b2dHcWpuNDQrOEZsWFNYQTQ4MXA1NTB2dXpqalRXdEFKWDBjdno2?= =?utf-8?B?WmdSQ2RiTkRxQ2R0cTZ2cEJ5NHhKS002bzlVR1l0ZUZnei82VndWczBYY2Fw?= =?utf-8?B?YzBSYytiNFVXNzBzVENKY2hsQjg3ZEFyU0xCNkVJZzZzR2h6dDZMQTlTeU5B?= =?utf-8?B?dDlkUzVNcUFzS2IyYzBxWWJmWCsrdjNXa0FhZUNnNE8wZWZGdnFpd2xoTnNl?= =?utf-8?B?azd2NGJIMUxvN2RBWjdzUjN1R24wNWd0dEE3bkhVMzNoclQ0RGVZdEwwU01l?= =?utf-8?B?Z2VOTlBxeXQxZjhzQXBMcFRVdU55aTdyMlJXRTBlaitqbEdxa1pzZ1Y3WUg0?= =?utf-8?B?SlE9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: A860rJqSM/UZGMQAP/uxTv37p5pGCWqraOO+2nchUgyB03NJli9LBFzbFmaqU6DVK77RJx5j78bs40VFAsPfPqqz7PhTDQac7U+OEy5XcKksiLWYWP3uyolfTK8r2AoZK0+kGVkeTLxsinMAHWV8CVWqJYzdlwUlIFOo93v7cbhTUDbSiHgGh+lKyl0wk4Cs13UmQUIL88JFrLoWWx5k8JugRgpEOT2Oj9o/UALIDbgSsBSvii65orOcAOM2x4iscTcOABG/CGj+/RllJinAGUvVPfeNjwfb2pMkQWD9tG6j3Nyi1TxQjMiru6BsHDk1zb2CWw7axMLDfz6O17Ld3lFjlYJh64bVzMCJ/hFr3bnohM/DSZDRBrdOnRvWwct5IOW5uOo/6X5kooZ94uDbgdQyiR23E9+FVPr5nQHaYgOURHkFCJ00FYkr3sh3nH8dFn6QKa1Rc5IjeHNqplz2iRuTkU1Lkz7n+5f7tV3TFYvH+q1VoPpoJdWCDEQib1dZQd9RmGbqpeYvmvycV55Y4Y/IiGV/8+lxqJQaJMpSQCtu2g39nQ6hWxkPulwyvtnS7wgviLb4SHv+o5pIf5TnLRvX0BXbPWSNo2C2d3xavEsY2PmnZMbpvDP53Bom6f4YzRdEp1nb563l1ylqffWjKz+/lkrZW41Pwtc1JamxD2v8Ghr/yA/j9b4Iv67ng776kPMk7nR0O/eawlUT2KvDf5sJvb8OEEL9Q7BYumTXnhBZl6dpbOVCKi7/xOocoDCbXqvUFe5Rp0g4Dn+AwC2kyqM/gFTFwb4CNBFc8UcE5u2MHPT/eCbwhdIL9KfvOowC4ulhDjVE9kYUAfTz6wJYStY9euW/+tMx0G45KJ5YTUw= X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 61f527aa-c9c0-424e-95e1-08db63619e53 X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Jun 2023 12:05:12.6452 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: u0RukbfD7Q5UbKHwk9aD883LS6qCvq0uIcM5Z2PVjLd3/x8nOhTQBICz1iWFMONUSTYFFeu8z1heQmgWkkuZ3q1vHysa3eqvrsdiV9WRtm4= X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR03MB6392 On 01/06/2023 6:43 pm, Alejandro Vallejo wrote: > This allows replacing many instances of runtime checks with folded > constants. The patch asserts support for the NX bit in PTEs at boot time > and if so short-circuits cpu_has_nx to 1. This has several knock-on effects > that improve codegen: > * _PAGE_NX matches _PAGE_NX_BIT, optimising the macro to a constant. > * Many PAGE_HYPERVISOR_X are also folded into constants > * A few if ( cpu_has_nx ) statements are optimised out > > We save 2.5KiB off the text section and remove the runtime dependency for > applying NX, which hardens our security posture. The config option defaults > to OFF for compatibility with previous behaviour. While this is all true, I'd say it's not emphasising the correct point. Right now, any attacker with a partial write primitive who can clear the NX feature bit in boot_cpu_info will cause Xen to unintentionally write insecure PTEs.  (Or for that matter, a memory corruption bug in Xen.) NX exists on all 64bit CPUs other than early Pentium 4's, and people who don't care about those CPUs can meaningfully improve their security defence-in-depth by enabling this option. The fact we also save 2.5k of code is a nice bonus, but not relevant.  People aren't going to turn this option on to save code - they're going to turn it on for the extra security.  It's fine to mention, but the code gen improvements should be one sentence max, not the majority of the commit message. > Signed-off-by: Alejandro Vallejo > --- > xen/arch/x86/Kconfig | 10 ++++++++++ > xen/arch/x86/boot/head.S | 19 ++++++++++++++++--- > xen/arch/x86/boot/trampoline.S | 3 ++- > xen/arch/x86/efi/efi-boot.h | 9 +++++++++ > xen/arch/x86/include/asm/cpufeature.h | 3 ++- > 5 files changed, 39 insertions(+), 5 deletions(-) > > diff --git a/xen/arch/x86/Kconfig b/xen/arch/x86/Kconfig > index 406445a358..0983915372 100644 > --- a/xen/arch/x86/Kconfig > +++ b/xen/arch/x86/Kconfig > @@ -307,6 +307,16 @@ config MEM_SHARING > bool "Xen memory sharing support (UNSUPPORTED)" if UNSUPPORTED > depends on HVM > > +config REQUIRE_NX_BIT > + def_bool n > + prompt "Require NX bit support" > + ---help--- > + Makes Xen require NX bit support on page table entries. This > + allows the resulting code to have folded constants where > + otherwise branches are required, yielding a smaller binary as a > + result. Requiring NX trades compatibility with older CPUs for > + improvements in speed and code size. The intended audience here is different.  x86 developers will know what this means from the name alone, and won't read the help.  It's distro packagers and end users who need to be able to read this and decide whether to turn it on or not.  Therefore, it needs to read something more like this: No-eXecute (also called XD "eXecute Disable" and DEP "Data Execution Prevention") is a security feature designed originally to combat buffer overflow attacks by marking regions of memory which the CPU must not interpret as instructions. The NX feature exists in almost 64bit capable CPUs, except XXX [TBC - we might be extremely lucky here.  Questions pending with people]. Enabling this option will improve Xen's security by removing cases where Xen could be tricked into thinking that the feature was unavailable.  However, if enabled, Xen will no longer boot on any CPU which is lacking NX support. > + > endmenu > > source "common/Kconfig" > diff --git a/xen/arch/x86/boot/head.S b/xen/arch/x86/boot/head.S > index 09bebf8635..8414266281 100644 > --- a/xen/arch/x86/boot/head.S > +++ b/xen/arch/x86/boot/head.S > @@ -123,6 +123,7 @@ multiboot2_header: > .Lbad_ldr_nih: .asciz "ERR: EFI ImageHandle is not provided by bootloader!" > .Lbad_efi_msg: .asciz "ERR: EFI IA-32 platforms are not supported!" > .Lbag_alg_msg: .asciz "ERR: Xen must be loaded at a 2Mb boundary!" > +.Lno_nx_bit_msg: .asciz "ERR: Not an NX-bit capable CPU!" > > .section .init.data, "aw", @progbits > .align 4 > @@ -151,6 +152,11 @@ not_multiboot: > .Lnot_aligned: > add $sym_offs(.Lbag_alg_msg),%esi # Error message > jmp .Lget_vtb > +#if IS_ENABLED(CONFIG_REQUIRE_NX_BIT) This doesn't need to be IS_ENABLED().  #if will DTRT for a non-existent symbol by considering such to be 0. IS_ENABLED() is only required for cases where you need an explicit 0 or 1 at the end, which is typically only in real C code, and for initialising of constants. > +no_nx_bit: > + add $sym_offs(.Lno_nx_bit_msg),%esi # Error message The "# Error message" is useless as a comment.  Don't propagate it from the other bad examples. (I already had some cleanup planned here from Roger's patch adding not_aligned.) ~Andrew From xen-devel-bounces@lists.xenproject.org Fri Jun 02 12:08:14 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 02 Jun 2023 12:08:14 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543105.847752 (Exim 4.92) (envelope-from ) id 1q53Zl-0003vY-4F; Fri, 02 Jun 2023 12:08:13 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543105.847752; Fri, 02 Jun 2023 12:08:13 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q53Zl-0003vR-0P; Fri, 02 Jun 2023 12:08:13 +0000 Received: by outflank-mailman (input) for mailman id 543105; Fri, 02 Jun 2023 12:08:12 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q53Zj-0003vL-Sn for xen-devel@lists.xenproject.org; Fri, 02 Jun 2023 12:08:12 +0000 Received: from NAM02-BN1-obe.outbound.protection.outlook.com (mail-bn1nam02on2060a.outbound.protection.outlook.com [2a01:111:f400:7eb2::60a]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 2116f225-013e-11ee-8611-37d641c3527e; Fri, 02 Jun 2023 14:08:06 +0200 (CEST) Received: from BN0PR04CA0163.namprd04.prod.outlook.com (2603:10b6:408:eb::18) by SJ2PR12MB8184.namprd12.prod.outlook.com (2603:10b6:a03:4f2::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.23; Fri, 2 Jun 2023 12:08:01 +0000 Received: from BN8NAM11FT064.eop-nam11.prod.protection.outlook.com (2603:10b6:408:eb:cafe::bb) by BN0PR04CA0163.outlook.office365.com (2603:10b6:408:eb::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.26 via Frontend Transport; Fri, 2 Jun 2023 12:08:01 +0000 Received: from SATLEXMB03.amd.com (165.204.84.17) by BN8NAM11FT064.mail.protection.outlook.com (10.13.176.160) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6455.26 via Frontend Transport; Fri, 2 Jun 2023 12:08:00 +0000 Received: from SATLEXMB07.amd.com (10.181.41.45) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Fri, 2 Jun 2023 07:08:00 -0500 Received: from SATLEXMB04.amd.com (10.181.40.145) by SATLEXMB07.amd.com (10.181.41.45) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Fri, 2 Jun 2023 05:08:00 -0700 Received: from xcbayankuma41x.xilinx.com (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server id 15.1.2375.34 via Frontend Transport; Fri, 2 Jun 2023 07:07:58 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 2116f225-013e-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=KhTEujuK5FcFiNiRCgDXRS3ogDtBLkQ0qBiGLJ5lLeDKpWRzlxB68Cjg+8dSL6aOePsyHNIdKuVXPtJCheA2LdwwjgJZ33hPJH4aiQsaP+oRoDZgl7w7B4614qFECDQ1QLetGtfoOn4XSAzJNz7NEVRNCd3BY68Kv7Iv5QXSXR7Sur6AXIch7vo2Cp5EbLhkfEHARySUaNuOTLbZwnjOkihF4KVWJdNUyBdsnHBfFH1J99UHNt6A8LxRHhBOwMSw0aD2+lmtfq/oSc+7Vp+7DxZRZ7TZa+kLrRVBOiEJF/a+j/BiNd5mvfESP0bZ8shuZQs3QUiOjm1Y65rymX4oiA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=jwUgFN+v84+dyD6AXZiKfwpAP4rynV/HYS5xaHDsbxk=; b=P8ZCKrKUFCw3bdc4pQP+LUA2P3AK7QtCeJw8x+b9JQ1ccg9pbfCsI1HPzE0AwuinrRQNLI5OJxyqWEBJsRtqH0S7kOoaTtHok5NhpoWGwie7m2UwJ/r9HDSTPeCxj8byY8A/yq2OKayICoL6C4vq0ZjAOeqhBKJrkKxpBeXHpDaKz2MgfSOsULOrFltzEVmopkvsvVXFJZKYXad7UpjVogkx+I9ixeCmEn2xIvodG+YhoMUJE5g9Ktr2Ic40lCxJqySOtnBXrTESowWwd0irHvzeWQF7Id3477hTyIpw85hnDy3OnkZn2I9Gptcy/smmPKMX+SFNJnAAZzQAobIDvw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=jwUgFN+v84+dyD6AXZiKfwpAP4rynV/HYS5xaHDsbxk=; b=w3IhOPa8wWhBj49OVYH0pQBY3I/0wOiSXjXbU5NXIBSXjqDorMVPPsv8w0rbUh31ZhKBGImRg5X9263uj9MphWsKrNaonD6XC8MZtAlgYXNgINeqixOWEP5xsrb7nCJJggcD4E/5508nqbkQQXMiOBbcq/KKLPleSUIOi50Av8U= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C From: Ayan Kumar Halder To: CC: , , , , , , , , , , Ayan Kumar Halder Subject: [XEN v8 0/5] Add support for 32-bit physical address Date: Fri, 2 Jun 2023 13:07:49 +0100 Message-ID: <20230602120754.23817-1-ayan.kumar.halder@amd.com> X-Mailer: git-send-email 2.17.1 MIME-Version: 1.0 Content-Type: text/plain X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BN8NAM11FT064:EE_|SJ2PR12MB8184:EE_ X-MS-Office365-Filtering-Correlation-Id: 6f10c919-945e-488d-162c-08db636202da X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 93rclmzG8rbElM+hzmUfxAmmjVPfqb6Rci/GAmjirWs9bpDmcuPPV0pY/gP21QrTanACJ3BqBloB/G5VAM+MkBFw1Q323gjGpPfs23C3mfEg93zIgII1SrGXX9jFhxVHzog2C4halrOtwdwYwD6HNwwtq+gGReMhzxepl/MOSKc+lHO4x6bekQ+4PNaZxCO7lc3o284HtlxZo5vTIqr4mZ0niiI3HrqB6txVjvPB0LFSiAl4htu8bZT4QzyN+XH/KXbkaz8755A6VKmOQ/WmyPVVlTspgH1Mx5x1S7V7g0zJb0RkOMBaImFGtkFfH6AmkiqaXqgaUJayEiVnUjEhRsWU5UKJukiXzoit6yL3yNHh/9Lacs/fCX38VNGTgdizu37jqOJK+Hr9M+kI3PCjGFcxfJYDvbwEITAB4xVooEAJUqdCnuiE0xOqMUhmubrCqBS9vOSpfrjgBoOW80ST/fi8bn0/lIJzoCib4ppSNo6hGb3HsNEsBRxc/TJ9GCDCcuhHR+M/r7DH7pVkZxEMjKhGQstJzRJXm7zoHqP48SakZqK+K/+f4Eq+9vg0Dr51DqNc0ZOnQiBT38KOSXbLyOM7ADFWUIXLPzYcY4GmPN+EAbZqD05ed2oKmzlmfx3K0z2j6pFW0dDhrsLU7EJfi3LyriOpFhO2MEPF/j4rmUKbNJTxPLwkBR1JC6+Ot8H+gvwHOIvONrmLQLVdLrcp+a38ohGUZoqUmJajfwC6sntyYYfXfq3m8E+vLQbd7C7DDYn4ulw/SjeKva44+B25R2oZZKDuOjpteU63pOeQg4g= X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(396003)(376002)(346002)(39860400002)(136003)(451199021)(36840700001)(40470700004)(46966006)(186003)(426003)(336012)(2616005)(7416002)(1076003)(5660300002)(83380400001)(26005)(8676002)(8936002)(47076005)(2906002)(36860700001)(966005)(316002)(40460700003)(4326008)(40480700001)(6916009)(6666004)(41300700001)(54906003)(356005)(82310400005)(82740400003)(36756003)(81166007)(478600001)(103116003)(70586007)(86362001)(70206006)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Jun 2023 12:08:00.8536 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 6f10c919-945e-488d-162c-08db636202da X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com] X-MS-Exchange-CrossTenant-AuthSource: BN8NAM11FT064.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ2PR12MB8184 Hi All, Please have a look at https://lists.xenproject.org/archives/html/xen-devel/2022-11/msg01465.html for the context. The benefits of using 32 bit physical addresses are as follows :- 1. It helps to use Xen on platforms (for eg R52) which supports 32-bit physical addresses and has no support for large physical address extension. On 32-bit MPU systems which supports flat-mapping (for eg R52), it helps to translate 32 bit VA into 32 bit PA. 2. It also helps in code optimization when the underlying platform does not use large physical address extension. The following points are to be noted :- 1. Device tree always use uint64_t for address and size. The caller needs to translate between uint64_t and unsigned long (when 32 bit physical addressing is used). 2. Currently, we have enabled this option for Arm_32 as the MMU for Arm_64 uses 48-bit physical addressing. Changes from : v1 - 1. Reordered the patches such that the first three patches fixes issues in the existing codebase. These can be applied independent of the remaining patches in this serie. 2. Dropped translate_dt_address_size() for the address/size translation between paddr_t and u64 (as parsed from the device tree). Also, dropped the check for truncation (while converting u64 to paddr_t). Instead now we have modified device_tree_get_reg() and typecasted the return for dt_read_number(), to obtain paddr_t. Also, introduced wrappers for fdt_get_mem_rsv() and dt_device_get_address() for the same purpose. These can be found in patch 4/11 and patch 6/11. 3. Split "Other adaptations required to support 32bit paddr" into the following individual patches for each adaptation : xen/arm: smmu: Use writeq_relaxed_non_atomic() for writing to SMMU_CBn_TTBR0 xen/arm: guest_walk: LPAE specific bits should be enclosed within "ifndef CONFIG_ARM_PA_32" 4. Introduced "xen/arm: p2m: Enable support for 32bit IPA". v2 - 1. Dropped patches 1/11, 2/11 and 3/11 from the v2 as it has already been committed (except 2/11 - "[XEN v5] xen/arm: Use the correct format specifier" which is waiting to be committed). 2. Introduced a new patch "xen/drivers: ns16550: Use paddr_t for io_base/io_size". v3 - 1. Combined the patches from https://lists.xenproject.org/archives/html/xen-devel/2023-02/msg00656.html in this series. v4 - 1. Dropped "xen/drivers: ns16550: Use paddr_t for io_base/io_size" from the patch series. 2. Introduced "xen/arm: domain_build: Check if the address fits the range of physical address". 3. "xen/arm: Use the correct format specifier" has been committed in v4. v5 - 1. Based on the comments on "[XEN v5 08/10] xen/arm: domain_build: Check if the address fits the range of physical address", the patch has been modified and split into the following :- a. xen: dt: Replace u64 with uint64_t as the callback function parameters for dt_for_each_range() b. xen/arm: pci: Use 'uint64_t' as the datatype for the function parameters. c. xen/arm: domain_build: Check if the address fits the range of physical address v6 - 1. Reordered the patches such that only the patches which are dependent on "CONFIG_PHYS_ADDR_T_32" appear after the Kconfig option is introduced. v7 - 1. Changes from "[XEN v7 01/11] xen/arm: domain_build: Track unallocated pages using the frame number " till "[XEN v7 06/11] xen: dt: Replace u64 with uint64_t as the callback function parameters for dt_for_each_range()" have been committed. So the remaining 5 patches are sent out. Ayan Kumar Halder (5): xen/arm: p2m: Use the pa_range_info table to support ARM_32 and ARM_64 xen/arm: Introduce choice to enable 64/32 bit physical addressing xen/arm: guest_walk: LPAE specific bits should be enclosed within "ifndef CONFIG_PHYS_ADDR_T_32" xen/arm: Restrict zeroeth_table_offset for ARM_64 xen/arm: p2m: Enable support for 32bit IPA for ARM_32 xen/arch/Kconfig | 3 ++ xen/arch/arm/Kconfig | 33 ++++++++++++++++++ xen/arch/arm/guest_walk.c | 2 ++ xen/arch/arm/include/asm/lpae.h | 4 +++ xen/arch/arm/include/asm/p2m.h | 6 ---- xen/arch/arm/include/asm/page-bits.h | 6 +--- xen/arch/arm/include/asm/types.h | 14 ++++++++ xen/arch/arm/mm.c | 12 +++---- xen/arch/arm/p2m.c | 51 +++++++++++++++++++++------- 9 files changed, 101 insertions(+), 30 deletions(-) -- 2.17.1 From xen-devel-bounces@lists.xenproject.org Fri Jun 02 12:08:51 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 02 Jun 2023 12:08:51 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543107.847762 (Exim 4.92) (envelope-from ) id 1q53aD-0004QL-C4; Fri, 02 Jun 2023 12:08:41 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543107.847762; Fri, 02 Jun 2023 12:08:41 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q53aD-0004QC-9D; Fri, 02 Jun 2023 12:08:41 +0000 Received: by outflank-mailman (input) for mailman id 543107; Fri, 02 Jun 2023 12:08:40 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q53aB-0003vL-SI for xen-devel@lists.xenproject.org; Fri, 02 Jun 2023 12:08:39 +0000 Received: from NAM10-DM6-obe.outbound.protection.outlook.com (mail-dm6nam10on20611.outbound.protection.outlook.com [2a01:111:f400:7e88::611]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 33f3fb42-013e-11ee-8611-37d641c3527e; Fri, 02 Jun 2023 14:08:37 +0200 (CEST) Received: from MW4PR03CA0149.namprd03.prod.outlook.com (2603:10b6:303:8c::34) by CH0PR12MB5265.namprd12.prod.outlook.com (2603:10b6:610:d0::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.24; Fri, 2 Jun 2023 12:08:34 +0000 Received: from CO1NAM11FT070.eop-nam11.prod.protection.outlook.com (2603:10b6:303:8c:cafe::ca) by MW4PR03CA0149.outlook.office365.com (2603:10b6:303:8c::34) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.26 via Frontend Transport; Fri, 2 Jun 2023 12:08:33 +0000 Received: from SATLEXMB04.amd.com (165.204.84.17) by CO1NAM11FT070.mail.protection.outlook.com (10.13.175.20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6455.23 via Frontend Transport; Fri, 2 Jun 2023 12:08:33 +0000 Received: from SATLEXMB04.amd.com (10.181.40.145) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Fri, 2 Jun 2023 07:08:32 -0500 Received: from xcbayankuma41x.xilinx.com (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server id 15.1.2375.34 via Frontend Transport; Fri, 2 Jun 2023 07:08:31 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 33f3fb42-013e-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=O5CK5EPR3Bn7r0XVnsO0JiKxSzV3Eh8slaFfEbawrbIgsM3hTUc5LcZVbf1LHW74IpTmPVhrE9nveMyWngcq+V9Kxfy98tznHQQpuuQp6dHp8zoFYtq8FModo3emG/RkdO5zHq5eoVh4vDbwu6ppVn6L3OS6t0B//+vJtRcfWQOWlcUEWS7bc/mbWWWcQ3xmXP8qlHI96O5MerH3AfZLjcJPzYHi2mEp4eeICRq+0T/8iuis/v+d5q7NrHYCfQMs5itwSmrdKCYjC1Rx0FvM+VjBfqrnBVc+S9++fgfiPi7o5kKVMuw3xPAmrR0qQFoyGbP4HI9Eny9+RWxmITWPyw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=cJO54s7DIDIZBjYPzs3C8whg1R3i4ZDxSSR0xflu0JQ=; b=iSqdvw6ma59yQd2VpxKxgWGGjQtsdnW1hC+/MtuCi6cKBeKy4HXWURcH2W0RCnfT8Ozs0a1z+OIcQEFUpL5C+JmJeQfK63y5Oltf2cmZgA0OoDhxntGJfmeF0Bx43tw4J1vqnMqJOgxoTrW55mOnoa8PvBKf2J19bvxaqzRESI5HvDuIJmvEu425X1+y21kHsrNUJGMcwpG7OQe3PxR7v1HXifhHiZgo1RoI0WtQfdvm7zyap0PEpRrjifL/OVC+i6I/8dJvVMs/sWjM/EySxfhZwJdQ1GvvJRw2zkvyoyg+N1Rw47BvyCj7fYM3Bvf7vlrEL13R9gxDGkXpU0o7kQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=cJO54s7DIDIZBjYPzs3C8whg1R3i4ZDxSSR0xflu0JQ=; b=QKxSar5+3CMaMb+teiFK7fQdg3QbLd+8Qd0OAxKT0vGj9XiAXlCvEClrY1TXaKUVBP4xDGB92cHSlaGJDw0f/CfwAd36kHOJN6pANOrb/hV+wRli2YegKpAGyDnxK9B2WQw9D2dXbqFfb/ENgwH58pmgO8QimiLYwX3BhN1/sDI= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C From: Ayan Kumar Halder To: CC: , , , , , , , , , , Ayan Kumar Halder Subject: [XEN v8 1/5] xen/arm: p2m: Use the pa_range_info table to support ARM_32 and ARM_64 Date: Fri, 2 Jun 2023 13:07:50 +0100 Message-ID: <20230602120754.23817-2-ayan.kumar.halder@amd.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20230602120754.23817-1-ayan.kumar.halder@amd.com> References: <20230602120754.23817-1-ayan.kumar.halder@amd.com> MIME-Version: 1.0 Content-Type: text/plain X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO1NAM11FT070:EE_|CH0PR12MB5265:EE_ X-MS-Office365-Filtering-Correlation-Id: 2e691522-3180-4783-aff7-08db6362161a X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: lMahqJ0kUUby7vGKL2tu3UJjV8LCAGmdvyKL5flSHN2l2fryHH1lz1ZrDxXnXeGn0pV+BoBKyzRkz4OlubvHtqZkMmTtaPYyuElUTEWDW/NqHLvWudx2cF71LMkrwoYcLa/06O4kDuzC0gmqQJzqqt6zIPXCZGNTU3cSSXGBnhvMPWrIq8gNimfv19crCqsgSNMVpFyILNrocYZehEjtgJZYWm99j45nLr7dK6qFkqMzqNEac5Pi3YOf5HKXpAc7vwhzVScCaht7L59F+vWqFv07bm/QejiNDzpLZE8xV5MNYBTgosVL1AlN4GTinm07dOkLvcz3GduKh9fDJybiqltRJ9ol8+OY99XFVh7R9o2nbXlMhA3Rxs668w1DQZFX8bpGatfBqQG8sJ8t0lXpH4bUNFDn+Ia7j31HSyDjlaGS4BRQxdIkAiV+4rHPJ6RJTXoBQbW1l4a6oYqbswyV7GAbjwFThrq8TpKhkueoxRFl3YkESwL5Aqv7urTqxVq3j/gEyVyyehFW3clWACwMppXGyiiD+iNdyrQR2HFQAEgBrn76fla4cfYoPmirU3mm+lRHwuiVjjQ4jn6Se6/f8rzSyjNUenZzT051cdlkd6gz3hZYbP51qPSGEznpUdiy1zA15v5hLW4eSVh4PSiFV0vqXzKgnAom66u3QrlGTuokdXxqT83N3h9qm9vtHF9t6BwZ4dFQwSo9LbDzkUpNUB7ekltPGPYiWMXiqpjxk9rK1kOuCrVI7mPwy0lYaR36b4v9T0j2F3nM0KZjqcBU2Q== X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(376002)(39860400002)(396003)(136003)(346002)(451199021)(36840700001)(46966006)(40470700004)(40480700001)(356005)(40460700003)(54906003)(82740400003)(478600001)(70586007)(8936002)(8676002)(6916009)(41300700001)(70206006)(81166007)(4326008)(316002)(2616005)(426003)(186003)(336012)(36860700001)(47076005)(83380400001)(6666004)(1076003)(26005)(103116003)(82310400005)(86362001)(7416002)(5660300002)(2906002)(36756003)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Jun 2023 12:08:33.0443 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 2e691522-3180-4783-aff7-08db6362161a X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com] X-MS-Exchange-CrossTenant-AuthSource: CO1NAM11FT070.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH0PR12MB5265 Restructure the code so that one can use pa_range_info[] table for both ARM_32 as well as ARM_64. Also, removed the hardcoding for P2M_ROOT_ORDER and P2M_ROOT_LEVEL as p2m_root_order can be obtained from the pa_range_info[].root_order and p2m_root_level can be obtained from pa_range_info[].sl0. Refer ARM DDI 0406C.d ID040418, B3-1345, "Use of concatenated first-level translation tables ...However, a 40-bit input address range with a translation granularity of 4KB requires a total of 28 bits of address resolution. Therefore, a stage 2 translation that supports a 40-bit input address range requires two concatenated first-level translation tables,..." Thus, root-order is 1 for 40-bit IPA on ARM_32. Refer ARM DDI 0406C.d ID040418, B3-1348, "Determining the required first lookup level for stage 2 translations For a stage 2 translation, the output address range from the stage 1 translations determines the required input address range for the stage 2 translation. The permitted values of VTCR.SL0 are: 0b00 Stage 2 translation lookup must start at the second level. 0b01 Stage 2 translation lookup must start at the first level. VTCR.T0SZ must indicate the required input address range. The size of the input address region is 2^(32-T0SZ) bytes." Thus VTCR.SL0 = 1 (maximum value) and VTCR.T0SZ = -8 when the size of input address region is 2^40 bytes. Thus, pa_range_info[].t0sz = 1 (VTCR.S) | 8 (VTCR.T0SZ) ie 11000b which is 24. VTCR.T0SZ, is bits [5:0] for ARM_64. VTCR.T0SZ is bits [3:0] and S(sign extension), bit[4] for ARM_32. For this, we have used struct bitfields to convert pa_range_info[].t0sz to its ARM_32 variant. pa_range_info[] is indexed by ID_AA64MMFR0_EL1.PARange which is present in Arm64 only. This is the reason we do not specify the indices for ARM_32. Also, we duplicated the entry "{ 40, 24/*24*/, 1, 1 }" between ARM_64 and ARM_32. This is done to avoid introducing extra #if-defs. Signed-off-by: Ayan Kumar Halder --- Changes from - v3 - 1. New patch introduced in v4. 2. Restructure the code such that pa_range_info[] is used both by ARM_32 as well as ARM_64. v4 - 1. Removed the hardcoded definitions of P2M_ROOT_ORDER and P2M_ROOT_LEVEL. The reason being root_order will not be always 1 (See the next patch). 2. Updated the commit message to explain t0sz, sl0 and root_order values for 32-bit IPA on Arm32. 3. Some sanity fixes. v5 - pa_range_info is indexed by system_cpuinfo.mm64.pa_range. ie when PARange is 0, the PA size is 32, 1 -> 36 and so on. So pa_range_info[] has been updated accordingly. For ARM_32 pa_range_info[0] = 0 and pa_range_info[1] = 0 as we do not support 32-bit, 36-bit physical address range yet. v6 - 1. Added pa_range_info[] entries for ARM_32 without indices. Some entry may be duplicated between ARM_64 and ARM_32. 2. Recalculate p2m_ipa_bits for ARM_32 from T0SZ (similar to ARM_64). 3. Introduced an union to reinterpret T0SZ bits between ARM_32 and ARM_64. v7 - 1. Used struct bifield instead of union to reinterpret T0SZ bits between ARM_32 and ARM_64. 2. Removed the invalid entry for ARM_32. xen/arch/arm/include/asm/p2m.h | 6 ---- xen/arch/arm/p2m.c | 50 +++++++++++++++++++++++++--------- 2 files changed, 37 insertions(+), 19 deletions(-) diff --git a/xen/arch/arm/include/asm/p2m.h b/xen/arch/arm/include/asm/p2m.h index f67e9ddc72..940495d42b 100644 --- a/xen/arch/arm/include/asm/p2m.h +++ b/xen/arch/arm/include/asm/p2m.h @@ -14,16 +14,10 @@ /* Holds the bit size of IPAs in p2m tables. */ extern unsigned int p2m_ipa_bits; -#ifdef CONFIG_ARM_64 extern unsigned int p2m_root_order; extern unsigned int p2m_root_level; #define P2M_ROOT_ORDER p2m_root_order #define P2M_ROOT_LEVEL p2m_root_level -#else -/* First level P2M is always 2 consecutive pages */ -#define P2M_ROOT_ORDER 1 -#define P2M_ROOT_LEVEL 1 -#endif struct domain; diff --git a/xen/arch/arm/p2m.c b/xen/arch/arm/p2m.c index 418997843d..76388ba54b 100644 --- a/xen/arch/arm/p2m.c +++ b/xen/arch/arm/p2m.c @@ -19,9 +19,9 @@ #define INVALID_VMID 0 /* VMID 0 is reserved */ -#ifdef CONFIG_ARM_64 unsigned int __read_mostly p2m_root_order; unsigned int __read_mostly p2m_root_level; +#ifdef CONFIG_ARM_64 static unsigned int __read_mostly max_vmid = MAX_VMID_8_BIT; /* VMID is by default 8 bit width on AArch64 */ #define MAX_VMID max_vmid @@ -2247,16 +2247,6 @@ void __init setup_virt_paging(void) /* Setup Stage 2 address translation */ register_t val = VTCR_RES1|VTCR_SH0_IS|VTCR_ORGN0_WBWA|VTCR_IRGN0_WBWA; -#ifdef CONFIG_ARM_32 - if ( p2m_ipa_bits < 40 ) - panic("P2M: Not able to support %u-bit IPA at the moment\n", - p2m_ipa_bits); - - printk("P2M: 40-bit IPA\n"); - p2m_ipa_bits = 40; - val |= VTCR_T0SZ(0x18); /* 40 bit IPA */ - val |= VTCR_SL0(0x1); /* P2M starts at first level */ -#else /* CONFIG_ARM_64 */ static const struct { unsigned int pabits; /* Physical Address Size */ unsigned int t0sz; /* Desired T0SZ, minimum in comment */ @@ -2265,6 +2255,7 @@ void __init setup_virt_paging(void) } pa_range_info[] __initconst = { /* T0SZ minimum and SL0 maximum from ARM DDI 0487H.a Table D5-6 */ /* PA size, t0sz(min), root-order, sl0(max) */ +#ifdef CONFIG_ARM_64 [0] = { 32, 32/*32*/, 0, 1 }, [1] = { 36, 28/*28*/, 0, 1 }, [2] = { 40, 24/*24*/, 1, 1 }, @@ -2273,11 +2264,28 @@ void __init setup_virt_paging(void) [5] = { 48, 16/*16*/, 0, 2 }, [6] = { 52, 12/*12*/, 4, 2 }, [7] = { 0 } /* Invalid */ +#else + { 40, 24/*24*/, 1, 1 } +#endif }; unsigned int i; unsigned int pa_range = 0x10; /* Larger than any possible value */ +#ifdef CONFIG_ARM_32 + /* + * Typecast pa_range_info[].t0sz into ARM_32 bit variant. + * + * VTCR.T0SZ is bits [3:0] and S(sign extension), bit[4] for ARM_32. + * Thus, pa_range_info[].t0sz is translated to its ARM_32 variant using + * struct bitfields. + */ + struct + { + signed int val:5; + } t0sz_32; +#else + /* * Restrict "p2m_ipa_bits" if needed. As P2M table is always configured * with IPA bits == PA bits, compare against "pabits". @@ -2291,6 +2299,7 @@ void __init setup_virt_paging(void) */ if ( system_cpuinfo.mm64.vmid_bits == MM64_VMID_16_BITS_SUPPORT ) max_vmid = MAX_VMID_16_BIT; +#endif /* Choose suitable "pa_range" according to the resulted "p2m_ipa_bits". */ for ( i = 0; i < ARRAY_SIZE(pa_range_info); i++ ) @@ -2304,26 +2313,41 @@ void __init setup_virt_paging(void) /* pa_range is 4 bits but we don't support all modes */ if ( pa_range >= ARRAY_SIZE(pa_range_info) || !pa_range_info[pa_range].pabits ) - panic("Unknown encoding of ID_AA64MMFR0_EL1.PARange %x\n", pa_range); + { + /* + * In case of ARM_64, we do not support this encoding of + * ID_AA64MMFR0_EL1.PARange + */ + panic("Unsupported value for p2m_ipa_bits = 0x%x\n", p2m_ipa_bits); + } +#ifdef CONFIG_ARM_64 val |= VTCR_PS(pa_range); val |= VTCR_TG0_4K; /* Set the VS bit only if 16 bit VMID is supported. */ if ( MAX_VMID == MAX_VMID_16_BIT ) val |= VTCR_VS; +#endif + val |= VTCR_SL0(pa_range_info[pa_range].sl0); val |= VTCR_T0SZ(pa_range_info[pa_range].t0sz); p2m_root_order = pa_range_info[pa_range].root_order; p2m_root_level = 2 - pa_range_info[pa_range].sl0; + +#ifdef CONFIG_ARM_64 p2m_ipa_bits = 64 - pa_range_info[pa_range].t0sz; +#else + t0sz_32.val = pa_range_info[pa_range].t0sz; + p2m_ipa_bits = 32 - t0sz_32.val; +#endif printk("P2M: %d-bit IPA with %d-bit PA and %d-bit VMID\n", p2m_ipa_bits, pa_range_info[pa_range].pabits, ( MAX_VMID == MAX_VMID_16_BIT ) ? 16 : 8); -#endif + printk("P2M: %d levels with order-%d root, VTCR 0x%"PRIregister"\n", 4 - P2M_ROOT_LEVEL, P2M_ROOT_ORDER, val); -- 2.17.1 From xen-devel-bounces@lists.xenproject.org Fri Jun 02 12:09:24 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 02 Jun 2023 12:09:24 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543113.847772 (Exim 4.92) (envelope-from ) id 1q53aj-00051J-OE; Fri, 02 Jun 2023 12:09:13 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543113.847772; Fri, 02 Jun 2023 12:09:13 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q53aj-00051C-LJ; Fri, 02 Jun 2023 12:09:13 +0000 Received: by outflank-mailman (input) for mailman id 543113; Fri, 02 Jun 2023 12:09:12 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q53ai-00050i-5G for xen-devel@lists.xenproject.org; Fri, 02 Jun 2023 12:09:12 +0000 Received: from NAM12-MW2-obe.outbound.protection.outlook.com (mail-mw2nam12on20618.outbound.protection.outlook.com [2a01:111:f400:fe5a::618]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 478c0c6e-013e-11ee-b232-6b7b168915f2; Fri, 02 Jun 2023 14:09:11 +0200 (CEST) Received: from BN9PR03CA0397.namprd03.prod.outlook.com (2603:10b6:408:111::12) by MN0PR12MB6343.namprd12.prod.outlook.com (2603:10b6:208:3c0::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6433.26; Fri, 2 Jun 2023 12:09:06 +0000 Received: from BN8NAM11FT113.eop-nam11.prod.protection.outlook.com (2603:10b6:408:111:cafe::ac) by BN9PR03CA0397.outlook.office365.com (2603:10b6:408:111::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.27 via Frontend Transport; Fri, 2 Jun 2023 12:09:06 +0000 Received: from SATLEXMB03.amd.com (165.204.84.17) by BN8NAM11FT113.mail.protection.outlook.com (10.13.176.163) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6455.26 via Frontend Transport; Fri, 2 Jun 2023 12:09:06 +0000 Received: from SATLEXMB06.amd.com (10.181.40.147) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Fri, 2 Jun 2023 07:09:05 -0500 Received: from SATLEXMB04.amd.com (10.181.40.145) by SATLEXMB06.amd.com (10.181.40.147) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Fri, 2 Jun 2023 07:09:04 -0500 Received: from xcbayankuma41x.xilinx.com (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server id 15.1.2375.34 via Frontend Transport; Fri, 2 Jun 2023 07:09:03 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 478c0c6e-013e-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=QWl9MsWQOEptry0CgWicNoOykTMCgS93GPcFBzq9sYA46kSG699ueTN98jesJhI3SxN5IeFL71Q1OnBjqWJUZLfTIFaZTncfHBS8xwPLS+ju7Ogw6Ealysiqn4ABIuxpzDUkp2oYeGsRLY+ucYpnmX+dLWV42cEOcJQOKOsp7gBnP0xn6gzllrrkTO+ICqToAdgbMvp0cMRquzFjh9/7sYqhD9OczM1TuRvm2tmD2KVpHw1i7rraC2pnChzm80V+JlZD0ij3h1TtPGp25hS9puofg6qx6wzrgVdje0k6GRKhrDzxnZCl4wiutoYIV9V8M3NFwEvpcwDkXWKQnJyoZw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=BWP1sjTCJ1CHkECWL9AfJ/baJ6+ufKsVZ9CEBrQnu9w=; b=hFZ3ds6onvufH275g2v94ROIsYJ+WoKXeS3qPKSVPE8o96102BbZJG+4aaCpzXj/ksX7dOmkwCAsxtQneziaVMLuYFzHMlYcsMwV2pJj8+DSQXbvA1wfmBY4uZyUJqwTyjieKWoOIP0cl0vmuPjcHDeWUEbaMrgbFoawOizilfAGaRDetZDQDMT9sq/1YD6+bfEbiLfEiRdGHSR2TPo2ETJPVFtqICI13M4XtM0OIN3zIG+t+lYA8s6Y6qomga/Uwr4UIfdMamwxZgBu4diKr3LPAAABmtWIStKvdD/Ub+jv1fR+b8l5ISeAhK/2Ilu0qM1FLqIQUywKl0Jdn1nmrw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=BWP1sjTCJ1CHkECWL9AfJ/baJ6+ufKsVZ9CEBrQnu9w=; b=kTB8EC6TYQJR+WrnUdkwDkT9KunoR9dlxl62gXuUMRs/XKNXKuyZGcGDwzsR7R69unhtooVAqGpJz9KbApRP10AVMAi95oLO0Q64VYPv7K0T/5y4ZnWNwjxy1Sa9TTQORsGlUYMRSMoLyJGp5oJTuofMPs//dwqltkuy2cVVbYI= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C From: Ayan Kumar Halder To: CC: , , , , , , , , , , Ayan Kumar Halder Subject: [XEN v8 2/5] xen/arm: Introduce choice to enable 64/32 bit physical addressing Date: Fri, 2 Jun 2023 13:07:51 +0100 Message-ID: <20230602120754.23817-3-ayan.kumar.halder@amd.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20230602120754.23817-1-ayan.kumar.halder@amd.com> References: <20230602120754.23817-1-ayan.kumar.halder@amd.com> MIME-Version: 1.0 Content-Type: text/plain X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BN8NAM11FT113:EE_|MN0PR12MB6343:EE_ X-MS-Office365-Filtering-Correlation-Id: b3fdaa7b-8f92-4ca2-0f37-08db636229fb X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: k3Zd/kZrh+TkXUdEnz5Qmnr7VCHslPe0Eh5Fu5IiR1Z26Ti3cTVBgVJRnnAcinGvioOqCL7VmhvSHsTBRxwPu64291csktTCD1aHF6C/d9w3hFm64vpSbmjr8NzipuESik0sWWlYtCzucbDI+AZcT2Sz7fHuRYmp1Lh2smOnVqhdhD73m1qVhJb7YJ/TdA+fXt/zQtiLRc0YT3bqdB6wjYLkbWrTu8ISjZfjLiD3LVMa9nmcaM3o+Y9EzmWA8eagrJ3anKj+Y6/ChbvHPf+EstCV4TFoLwnuKhawt8O8xZi8PkY/GCB7Ae/r+xK/dnqf3+flqcSK1eo1aFfBwzu1+Uls6orxf7Lf3inb6/zNUuEgDmpU4pjsrhPKTI98V+jPcGwpzBL1oTYSmb1UfnAZ4lH0kQZX6g3oSdvt+2i6aWfs9EJKowjTBja+QeP9nGR8fjtb0oesp7RsO1KKLe1LZskV2d97kM0SKLdLPMD3bEnO2wR5fnVGO096Xb/4HN3Hm1kruUWPeE1zBGJZ0QZ1ESwN1Bc0FlElHIJXYys2+pHXv9eYZntFaZBdzZoAPEPf8ZGO4OI6dxPQK5vkU8mRwp/Xxc58n4QU0WWm/P7epaW9giriH8/1KI+RpXTUYYMHxmEEtNbbe3QNpmAiRXNsQvw1BT8v8L9SM6UXsu4SzLnQqdx2COlTtQ+ber8yv7U4XpSLI18g+PAbgOVXI4CyEYX4r+qMqZ2VAq+oqTw6TuA/VZkAKG9wnCkWOIQ22Dz+Y2tlkz+TG/g4Dn/MrVDzSA== X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(376002)(136003)(39860400002)(346002)(396003)(451199021)(46966006)(40470700004)(36840700001)(82310400005)(4326008)(81166007)(356005)(47076005)(103116003)(26005)(1076003)(40460700003)(7416002)(2906002)(86362001)(5660300002)(8936002)(8676002)(186003)(6666004)(36756003)(54906003)(426003)(2616005)(336012)(316002)(82740400003)(83380400001)(41300700001)(40480700001)(36860700001)(478600001)(70586007)(70206006)(6916009)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Jun 2023 12:09:06.4852 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: b3fdaa7b-8f92-4ca2-0f37-08db636229fb X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com] X-MS-Exchange-CrossTenant-AuthSource: BN8NAM11FT113.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN0PR12MB6343 Some Arm based hardware platforms which does not support LPAE (eg Cortex-R52), uses 32 bit physical addresses. Also, users may choose to use 32 bits to represent physical addresses for optimization. To support the above use cases, we have introduced arch independent config to choose if the physical address can be represented using 32 bits (PHYS_ADDR_T_32) or 64 bits (!PHYS_ADDR_T_32). For now only ARM_32 provides support to enable 32 bit physical addressing. When PHYS_ADDR_T_32 is defined, PADDR_BITS is set to 32. Note that we use "unsigned long" (not "uint32_t") to denote the datatype of physical address. This is done to avoid using a cast each time PAGE_* macros are used on paddr_t. For eg PAGE_SIZE is defined as unsigned long. Thus, each time PAGE_SIZE is used with paddr_t, the result will be "unsigned long". On 32-bit architecture, "unsigned long" is 32-bit wide. Thus, it can be used to denote physical address. When PHYS_ADDR_T_32 is not defined for ARM_32, PADDR_BITS is set to 40. For ARM_64, PADDR_BITS is set to 48. The last two are same as the current configuration used today on Xen. Signed-off-by: Ayan Kumar Halder Reviewed-by: Michal Orzel --- Changes from - v1 - 1. Extracted from "[XEN v1 8/9] xen/arm: Other adaptations required to support 32bit paddr". v2 - 1. Introduced Kconfig choice. ARM_64 can select PHYS_ADDR_64 only whereas ARM_32 can select PHYS_ADDR_32 or PHYS_ADDR_64. 2. For CONFIG_ARM_PA_32, paddr_t is defined as 'unsigned long'. v3 - 1. Allow user to define PADDR_BITS by selecting different config options ARM_PA_BITS_32, ARM_PA_BITS_40 and ARM_PA_BITS_48. 2. Add the choice under "Architecture Features". v4 - 1. Removed PHYS_ADDR_T_64 as !PHYS_ADDR_T_32 means PHYS_ADDR_T_32. v5 - 1. Removed ARM_PA_BITS_48 as there is no choice for ARM_64. 2. In ARM_PA_BITS_32, "help" is moved to last, and "depends on" before "select". v6 - 1. Explained why we use "unsigned long" to represent physical address for ARM_32. v7 - 1. Updated the reasoning for using "unsigned long" for paddr_t. 2. Added R-b by Michal. xen/arch/Kconfig | 3 +++ xen/arch/arm/Kconfig | 33 ++++++++++++++++++++++++++++ xen/arch/arm/include/asm/page-bits.h | 6 +---- xen/arch/arm/include/asm/types.h | 14 ++++++++++++ xen/arch/arm/mm.c | 5 +++++ 5 files changed, 56 insertions(+), 5 deletions(-) diff --git a/xen/arch/Kconfig b/xen/arch/Kconfig index 7028f7b74f..67ba38f32f 100644 --- a/xen/arch/Kconfig +++ b/xen/arch/Kconfig @@ -1,6 +1,9 @@ config 64BIT bool +config PHYS_ADDR_T_32 + bool + config NR_CPUS int "Maximum number of CPUs" range 1 4095 diff --git a/xen/arch/arm/Kconfig b/xen/arch/arm/Kconfig index 239d3aed3c..1e87fe0247 100644 --- a/xen/arch/arm/Kconfig +++ b/xen/arch/arm/Kconfig @@ -26,6 +26,39 @@ config ARCH_DEFCONFIG menu "Architecture Features" +choice + prompt "Physical address space size" if ARM_32 + default ARM_PA_BITS_40 if ARM_32 + help + User can choose to represent the width of physical address. This can + sometimes help in optimizing the size of image when user chooses a + smaller size to represent physical address. + +config ARM_PA_BITS_32 + bool "32-bit" + depends on ARM_32 + select PHYS_ADDR_T_32 + help + On platforms where any physical address can be represented within 32 bits, + user should choose this option. This will help in reduced size of the + binary. + Xen uses "unsigned long" and not "uint32_t" to denote the datatype of + physical address. This is done to avoid using a cast each time PAGE_* + macros are used on paddr_t. For eg PAGE_SIZE is defined as unsigned long. + On 32-bit architecture, "unsigned long" is 32-bit wide. Thus, it can be + used to denote physical address. + +config ARM_PA_BITS_40 + bool "40-bit" + depends on ARM_32 +endchoice + +config PADDR_BITS + int + default 32 if ARM_PA_BITS_32 + default 40 if ARM_PA_BITS_40 + default 48 if ARM_64 + source "arch/Kconfig" config ACPI diff --git a/xen/arch/arm/include/asm/page-bits.h b/xen/arch/arm/include/asm/page-bits.h index 5d6477e599..deb381ceeb 100644 --- a/xen/arch/arm/include/asm/page-bits.h +++ b/xen/arch/arm/include/asm/page-bits.h @@ -3,10 +3,6 @@ #define PAGE_SHIFT 12 -#ifdef CONFIG_ARM_64 -#define PADDR_BITS 48 -#else -#define PADDR_BITS 40 -#endif +#define PADDR_BITS CONFIG_PADDR_BITS #endif /* __ARM_PAGE_SHIFT_H__ */ diff --git a/xen/arch/arm/include/asm/types.h b/xen/arch/arm/include/asm/types.h index e218ed77bd..fb6618ef24 100644 --- a/xen/arch/arm/include/asm/types.h +++ b/xen/arch/arm/include/asm/types.h @@ -34,9 +34,23 @@ typedef signed long long s64; typedef unsigned long long u64; typedef u32 vaddr_t; #define PRIvaddr PRIx32 +#if defined(CONFIG_PHYS_ADDR_T_32) + +/* + * We use "unsigned long" and not "uint32_t" to denote the type. This is done + * to avoid having a cast each time PAGE_* macros are used on paddr_t. For eg + * PAGE_SIZE is defined as unsigned long. + * On 32-bit architecture, "unsigned long" is 32-bit wide. Thus, we can use it + * to denote physical address. + */ +typedef unsigned long paddr_t; +#define INVALID_PADDR (~0UL) +#define PRIpaddr "08lx" +#else typedef u64 paddr_t; #define INVALID_PADDR (~0ULL) #define PRIpaddr "016llx" +#endif typedef u32 register_t; #define PRIregister "08x" #elif defined (CONFIG_ARM_64) diff --git a/xen/arch/arm/mm.c b/xen/arch/arm/mm.c index 74f6ff2c6f..5ef5fd8c49 100644 --- a/xen/arch/arm/mm.c +++ b/xen/arch/arm/mm.c @@ -703,6 +703,11 @@ void __init setup_frametable_mappings(paddr_t ps, paddr_t pe) const unsigned long mapping_size = frametable_size < MB(32) ? MB(2) : MB(32); int rc; + /* + * The size of paddr_t should be sufficient for the complete range of + * physical address. + */ + BUILD_BUG_ON((sizeof(paddr_t) * BITS_PER_BYTE) < PADDR_BITS); BUILD_BUG_ON(sizeof(struct page_info) != PAGE_INFO_SIZE); if ( frametable_size > FRAMETABLE_SIZE ) -- 2.17.1 From xen-devel-bounces@lists.xenproject.org Fri Jun 02 12:09:37 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 02 Jun 2023 12:09:37 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543115.847782 (Exim 4.92) (envelope-from ) id 1q53aw-0005OL-Vt; Fri, 02 Jun 2023 12:09:26 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543115.847782; Fri, 02 Jun 2023 12:09:26 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q53aw-0005OC-TC; Fri, 02 Jun 2023 12:09:26 +0000 Received: by outflank-mailman (input) for mailman id 543115; Fri, 02 Jun 2023 12:09:25 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q53av-0003vL-9o for xen-devel@lists.xenproject.org; Fri, 02 Jun 2023 12:09:25 +0000 Received: from NAM11-DM6-obe.outbound.protection.outlook.com (mail-dm6nam11on2062b.outbound.protection.outlook.com [2a01:111:f400:7eaa::62b]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 4fb464ad-013e-11ee-8611-37d641c3527e; Fri, 02 Jun 2023 14:09:23 +0200 (CEST) Received: from BN0PR04CA0043.namprd04.prod.outlook.com (2603:10b6:408:e8::18) by CH3PR12MB7665.namprd12.prod.outlook.com (2603:10b6:610:14a::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.23; Fri, 2 Jun 2023 12:09:19 +0000 Received: from BN8NAM11FT013.eop-nam11.prod.protection.outlook.com (2603:10b6:408:e8:cafe::40) by BN0PR04CA0043.outlook.office365.com (2603:10b6:408:e8::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.26 via Frontend Transport; Fri, 2 Jun 2023 12:09:19 +0000 Received: from SATLEXMB03.amd.com (165.204.84.17) by BN8NAM11FT013.mail.protection.outlook.com (10.13.176.182) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6455.26 via Frontend Transport; Fri, 2 Jun 2023 12:09:19 +0000 Received: from SATLEXMB07.amd.com (10.181.41.45) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Fri, 2 Jun 2023 07:09:16 -0500 Received: from SATLEXMB04.amd.com (10.181.40.145) by SATLEXMB07.amd.com (10.181.41.45) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Fri, 2 Jun 2023 05:09:16 -0700 Received: from xcbayankuma41x.xilinx.com (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server id 15.1.2375.34 via Frontend Transport; Fri, 2 Jun 2023 07:09:14 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 4fb464ad-013e-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=IVO5ROO0VnlSEa6RRklkmrEe0SDfW6mb/K/rMgySPtDCuxxHQUnZ6tw589SgxoRjREtUbYJQVl30OyPJLwDcvlBwVuEH7DI01n7w2Y20f97VpoBUJGlHGKKEV1vi1//RLtKrF8rjlayaf8b1/Lz2f5BjKUCs9+WjyiTQuzaxascFKQEFtgKUUkIET08I52oNA0a1/nEsUmqeDaceHKIzriOXUmFYYyEU5JbHn6bE9PYAiuUfz9i2Z7LGmUyCDnG9CTn6GGUr/LnfYHVcs8xp/kX9Con7JtKXyjbQ7gUSwFWd0EzDV3GxdkzDqZyZrh8i1EZK8bQ1rPu4C+6DDZ0bbA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=YbSN1KzrxBtfNg1T90LwzY0QnI8vFdlODMDMDj2PcY8=; b=WGt7wzUN5WxpNuAzrXCEaeiDrEX0croZGmPYfgFrXZoOCueIfF4hTnt/Ci5GbPPydKpQx4i3s5E8nsjiYwS1Cr0cQPA/WDr83DllHHl9ggWMvttsHYVLS3OgFdOvYvZ0cPCZ1u1y6lcnzbZNSHaEMsoTs8aOITu4XAVrneIijePEJjqmSBD6bqTabpC4vTvcSJ3zBacU06RQMq4EdqKpqN2/PHO6xNNl+HjHA5EaTEUCF5IPcJnctmHjTg0NiueIeidyeIz7KtG6GM7IM28vBZxG4Ipwstn43sd2GiQrLPNgon2cj86AglzAQe7oMDDCz8hDCCsmN4LZbKimB/0/aQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=YbSN1KzrxBtfNg1T90LwzY0QnI8vFdlODMDMDj2PcY8=; b=d9wcxHJUksLlMQzuYnqcQXPVolGpus+6jPoPF4SKH+txC9W1FHafF9IpCcCVHZutZM0kpTAEuNU2TPiV5kEMO3mQ0Rzkv5GmuL8AF4sSCat057aNl1FZKsgFAIcyBKLSOZPmCUfai40cKfCbFSqF5gBfeO5Amam1CKav9xWhtQU= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C From: Ayan Kumar Halder To: CC: , , , , , , , , , , Ayan Kumar Halder Subject: [XEN v8 3/5] xen/arm: guest_walk: LPAE specific bits should be enclosed within "ifndef CONFIG_PHYS_ADDR_T_32" Date: Fri, 2 Jun 2023 13:07:52 +0100 Message-ID: <20230602120754.23817-4-ayan.kumar.halder@amd.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20230602120754.23817-1-ayan.kumar.halder@amd.com> References: <20230602120754.23817-1-ayan.kumar.halder@amd.com> MIME-Version: 1.0 Content-Type: text/plain X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BN8NAM11FT013:EE_|CH3PR12MB7665:EE_ X-MS-Office365-Filtering-Correlation-Id: 7664218c-6fcd-4154-c92d-08db63623199 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: gR/sFpaMzdy2d/TlzBhEiMTbs7whgyxw4fKEGbaDjsx61T2ba58+JSss7iCaaYn3nNxcm8NrLmtCvVG40g7HqRGHncTV3eTlARuTD7AFa8Y/pKwBhzoDy2Bgknfki5K6tUz/QIVt6zeRjhThOkoLFrysYSviYJKx8wMnpSN3WSswprv4tYCjWr+HS9kvZgkmgVRmqpvNsLiBrY2QA+S6zqX4vRq0L+BhZ7PljlyObwXGpTqNGixVlFVAYoNbSAVG1k8VRWJNURouk2MDodHEjYoIPJDfxzMjiHRieoA5KsNaliMSNduqFp5dmywMf+WHyv+a6bRaju+nfhJ0Rp3tK+btPueh3dXRoy0rJh5QP+drcsVNceY9fe2+e/MaijMeL2NZZ+hF5COHQ+6ABYsDrb6ni1goOZGydM9xDBNGp0mXgVl3Q1mELRSrqyTfJtT87vECe7ym0lh6+8n9G4b9E4GNgpZn+MGbMRLilRvXtpHsdanA9b6kWAf+J1USnceE0EIZ3Kn+71RnaL1/aR5HjpQvRcI6VN1dXO5NO5K+db782HFBqOoXSv3cGS/AIh8EIbZhevyTNnLc+i1HHDch36EOzIn1mFtPTtdMT6YxDiD/On3UkOVCE8OznD2ucdFEcneESzfiDPrTjHE2kDvOJB9GZPqy696Z0nRmpW8xoTj3ARopwu9/+47YaOZtngJvL3ClfaQ0OLncOY9SQzT0OcB6JgsLgQj01aNqJeEwUgaNqq3N00Wmt0gIqQrySpGwtVzAofW6yANoYFy7AnCq7g== X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(136003)(376002)(396003)(39860400002)(346002)(451199021)(36840700001)(40470700004)(46966006)(40460700003)(426003)(336012)(83380400001)(2616005)(47076005)(186003)(2906002)(36860700001)(4326008)(6916009)(70586007)(316002)(6666004)(478600001)(8936002)(54906003)(70206006)(5660300002)(1076003)(26005)(8676002)(7416002)(40480700001)(41300700001)(356005)(82740400003)(36756003)(103116003)(82310400005)(86362001)(81166007)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Jun 2023 12:09:19.2695 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 7664218c-6fcd-4154-c92d-08db63623199 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com] X-MS-Exchange-CrossTenant-AuthSource: BN8NAM11FT013.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH3PR12MB7665 As the previous patch introduces CONFIG_PHYS_ADDR_T_32 to support 32 bit physical addresses, the code specific to "Large Physical Address Extension" (ie LPAE) should be enclosed within "ifndef CONFIG_PHYS_ADDR_T_32". Refer xen/arch/arm/include/asm/short-desc.h, "short_desc_l1_supersec_t" unsigned int extbase1:4; /* Extended base address, PA[35:32] */ unsigned int extbase2:4; /* Extended base address, PA[39:36] */ Thus, extbase1 and extbase2 are not valid when 32 bit physical addresses are supported. Signed-off-by: Ayan Kumar Halder Acked-by: Stefano Stabellini --- Changes from - v1 - 1. Extracted from "[XEN v1 8/9] xen/arm: Other adaptations required to support 32bit paddr". v2 - 1. Reordered this patch so that it appears after CONFIG_ARM_PA_32 is introduced (in 6/9). v3 - 1. Updated the commit message. 2. Added Ack. v4 - 1. No changes. v5 - 1. No changes. v6 - 1. No changes. v7 - 1. No changes. xen/arch/arm/guest_walk.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/xen/arch/arm/guest_walk.c b/xen/arch/arm/guest_walk.c index 43d3215304..c80a0ce55b 100644 --- a/xen/arch/arm/guest_walk.c +++ b/xen/arch/arm/guest_walk.c @@ -154,8 +154,10 @@ static bool guest_walk_sd(const struct vcpu *v, mask = (1ULL << L1DESC_SUPERSECTION_SHIFT) - 1; *ipa = gva & mask; *ipa |= (paddr_t)(pte.supersec.base) << L1DESC_SUPERSECTION_SHIFT; +#ifndef CONFIG_PHYS_ADDR_T_32 *ipa |= (paddr_t)(pte.supersec.extbase1) << L1DESC_SUPERSECTION_EXT_BASE1_SHIFT; *ipa |= (paddr_t)(pte.supersec.extbase2) << L1DESC_SUPERSECTION_EXT_BASE2_SHIFT; +#endif /* CONFIG_PHYS_ADDR_T_32 */ } /* Set permissions so that the caller can check the flags by herself. */ -- 2.17.1 From xen-devel-bounces@lists.xenproject.org Fri Jun 02 12:09:51 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 02 Jun 2023 12:09:51 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543118.847792 (Exim 4.92) (envelope-from ) id 1q53bB-0005pF-8d; Fri, 02 Jun 2023 12:09:41 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543118.847792; Fri, 02 Jun 2023 12:09:41 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q53bB-0005p8-4e; Fri, 02 Jun 2023 12:09:41 +0000 Received: by outflank-mailman (input) for mailman id 543118; Fri, 02 Jun 2023 12:09:39 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q53b9-0003vL-5Q for xen-devel@lists.xenproject.org; Fri, 02 Jun 2023 12:09:39 +0000 Received: from NAM12-BN8-obe.outbound.protection.outlook.com (mail-bn8nam12on2060c.outbound.protection.outlook.com [2a01:111:f400:fe5b::60c]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 5818c4ad-013e-11ee-8611-37d641c3527e; Fri, 02 Jun 2023 14:09:37 +0200 (CEST) Received: from MW4PR04CA0038.namprd04.prod.outlook.com (2603:10b6:303:6a::13) by DM6PR12MB4530.namprd12.prod.outlook.com (2603:10b6:5:2aa::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.24; Fri, 2 Jun 2023 12:09:33 +0000 Received: from CO1NAM11FT048.eop-nam11.prod.protection.outlook.com (2603:10b6:303:6a:cafe::1a) by MW4PR04CA0038.outlook.office365.com (2603:10b6:303:6a::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.26 via Frontend Transport; Fri, 2 Jun 2023 12:09:33 +0000 Received: from SATLEXMB04.amd.com (165.204.84.17) by CO1NAM11FT048.mail.protection.outlook.com (10.13.175.148) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6455.26 via Frontend Transport; Fri, 2 Jun 2023 12:09:32 +0000 Received: from SATLEXMB08.amd.com (10.181.40.132) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Fri, 2 Jun 2023 07:09:30 -0500 Received: from SATLEXMB04.amd.com (10.181.40.145) by SATLEXMB08.amd.com (10.181.40.132) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Fri, 2 Jun 2023 05:09:30 -0700 Received: from xcbayankuma41x.xilinx.com (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server id 15.1.2375.34 via Frontend Transport; Fri, 2 Jun 2023 07:09:28 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 5818c4ad-013e-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=HemJZkUgx1RqEICn9a1iW4BLGQlujWr05rMb1rs3AQ9oHT3aCZ+g6uYl9m+i4In8lDAVgWD6F2OI9PV63Tfb/TNYO1ntkn9QHfjN0xFduT5E8n7tl1r2xRiMDAQ1FrzG05HcHAmVx/oddiz5nVJNkjn7GeVJ052qX/nUypfmpgJSnwdfbpBJb73+vZPxYK+ogwCysOOokJbcDWrFbsuIJzcpOxgap3b/3f1Ou2WzcPNJdRX47Wk/kwVTATexuyzyDlKulY98Za0WzJmQfB8AgROee6txegW47l5fyhBWnCYGWH48MfHIWsSqUuaVTyJZGOyJK/ZLZlAn29gAGP2eLw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=rqCo6sY+sNGsyn7K+5qf+y8ONKXZ0EQ9Pa42dCYxQjw=; b=jn8NhQ7BOjMAvRACnvIcqI4NYsfL4TbEdvLsILhmrG550ZgxZgEnA3nXiXGRcLB+GIPwfkVSqlBzRIei/xUJggK0if4sdPZRNyMKeBGTsL7yINMbiTb7hJD8a5c23h8t1+Zqbxw5G7VPV8TXen5lYp0UO2MH6hScKmWgl84T0Wt+AKXmPuUeAG2b+KQcl+uqE/ZAPARd+HJE29wQz8P1UP4EBC3qcLUWuI6kL/czMjK9VTVhtolVMtkBeOpZKnZOOFZvxW/9wZLnMzbWbsPr/IaY0dcsCa5gVH+aX5p7J79dlwZAunYNSYCUMcD4oEcAo0OuJith+6GDLMGN3nVGFg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=rqCo6sY+sNGsyn7K+5qf+y8ONKXZ0EQ9Pa42dCYxQjw=; b=PQYIgR1XmoUcvkBzHFFs2RllyRNSzJUB70f7zOYdw+vztGsNZtIwIWIIx9Rh4EItDOzd84OtYX7SiPQFc2bU/GVm8yjrCX4wy91uyOwYpEjoXtZ8uwAMs63G1vjBHfg0DfpE8bBdRpG1R/2RJ/UMCHCR4Z9asny2YTnzbVVp/y0= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C From: Ayan Kumar Halder To: CC: , , , , , , , , , , Ayan Kumar Halder Subject: [XEN v8 4/5] xen/arm: Restrict zeroeth_table_offset for ARM_64 Date: Fri, 2 Jun 2023 13:07:53 +0100 Message-ID: <20230602120754.23817-5-ayan.kumar.halder@amd.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20230602120754.23817-1-ayan.kumar.halder@amd.com> References: <20230602120754.23817-1-ayan.kumar.halder@amd.com> MIME-Version: 1.0 Content-Type: text/plain X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO1NAM11FT048:EE_|DM6PR12MB4530:EE_ X-MS-Office365-Filtering-Correlation-Id: 3f2c90ab-c47d-42a7-0e7f-08db636239b3 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: NHHBN9100Obhp8+lRd0lDby/XDtUD58YAhaQFeYAti+/qJH4bz3OJTd4TRmgsL7G7c256PlcYxBn+cPInVdK4kqjnVmjwmOY12p5MmCmABCt0mBK3YZZdky1rC6XmLj+5WH53cu2GFxvJqbx0VIvT1TkKHpJdDdN+DU4Q6LoAE+7yksoHWTfMwZn/0gnOKt9DIvMtP6APqqJt1ByvADMOmVOSVpx5GezOwE/8xk+KKjHLOYV4Ec3iCMqx0EZAGml4GC8HyiASRTlwj2bHreLqYDhYI2IM/ddS4/oMcBiMKDyfCFInW5lrAznyH7uS9fbSGy2ZQjqnid3LyeqdZWbfluTiDp7VG8FSgEF/d30c7hGyGS9zK1GCWRPs46eHN4o9bqtg6atnyHoFC993nPzbBLXIQbnYfV3wbXTrSdkgbcOlCXJtCcS1CvKnVftBeKst2lhkgIH7OR8RmY9KRRrlGHLm9eIOqGtEtlCYdQvqHfoF4JY5WoqP14KRGtFtNJSSrApGbZG8UXf5YNO4S7bppmGrT80MclkdNdzJizST02RKJtrkkaWrrBziOyDzcEPCiYVgkPdFoRjstPro83l98bITHM58682iXCmttExucLk47Txc+W7kzPpaxkuTMcC20e3t/V0wRY70+C9suFyLzLij34a5bWKIOdapMmfDHqjFQf/bSLAxKVpXmUK6kQWZGzqnIfV0gNfbVkY4dP0Ew9BFLyMh/bkK6e9CPOOOcar7P+TG6oAeytw6aMirmQ7I/ANHUkqoMNqnPxkZq0xFw== X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(376002)(136003)(39860400002)(346002)(396003)(451199021)(46966006)(40470700004)(36840700001)(82310400005)(4326008)(81166007)(356005)(47076005)(103116003)(26005)(1076003)(40460700003)(7416002)(2906002)(86362001)(5660300002)(8936002)(8676002)(186003)(6666004)(36756003)(54906003)(426003)(2616005)(336012)(316002)(82740400003)(83380400001)(41300700001)(40480700001)(36860700001)(478600001)(70586007)(70206006)(6916009)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Jun 2023 12:09:32.7163 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 3f2c90ab-c47d-42a7-0e7f-08db636239b3 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com] X-MS-Exchange-CrossTenant-AuthSource: CO1NAM11FT048.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR12MB4530 When 32 bit physical addresses are used (ie PHYS_ADDR_T_32=y), "va >> ZEROETH_SHIFT" causes an overflow. Also, there is no zeroeth level page table on Arm32. Also took the opportunity to clean up dump_pt_walk(). One could use DECLARE_OFFSETS() macro instead of declaring an array of page table offsets. Signed-off-by: Ayan Kumar Halder Reviewed-by: Michal Orzel Acked-by: Julien Grall --- Changes from - v1 - Removed the duplicate declaration for DECLARE_OFFSETS. v2 - 1. Reworded the commit message. 2. Use CONFIG_ARM_PA_32 to restrict zeroeth_table_offset. v3 - 1. Added R-b and Ack. v4 - 1. Removed R-b and Ack as we use CONFIG_PHYS_ADDR_T_32 instead of CONFIG_ARM_PA_BITS_32. This is to be in parity with our earlier patches where we use CONFIG_PHYS_ADDR_T_32 to denote 32-bit physical addr support. v5 - 1. Added R-b and Ack. v6 - 1. No changes. v7 - 1. No changes. xen/arch/arm/include/asm/lpae.h | 4 ++++ xen/arch/arm/mm.c | 7 +------ 2 files changed, 5 insertions(+), 6 deletions(-) diff --git a/xen/arch/arm/include/asm/lpae.h b/xen/arch/arm/include/asm/lpae.h index 3fdd5d0de2..7d2f6fd1bd 100644 --- a/xen/arch/arm/include/asm/lpae.h +++ b/xen/arch/arm/include/asm/lpae.h @@ -259,7 +259,11 @@ lpae_t mfn_to_xen_entry(mfn_t mfn, unsigned int attr); #define first_table_offset(va) TABLE_OFFSET(first_linear_offset(va)) #define second_table_offset(va) TABLE_OFFSET(second_linear_offset(va)) #define third_table_offset(va) TABLE_OFFSET(third_linear_offset(va)) +#ifdef CONFIG_PHYS_ADDR_T_32 +#define zeroeth_table_offset(va) 0 +#else #define zeroeth_table_offset(va) TABLE_OFFSET(zeroeth_linear_offset(va)) +#endif /* * Macros to define page-tables: diff --git a/xen/arch/arm/mm.c b/xen/arch/arm/mm.c index 5ef5fd8c49..e460249736 100644 --- a/xen/arch/arm/mm.c +++ b/xen/arch/arm/mm.c @@ -233,12 +233,7 @@ void dump_pt_walk(paddr_t ttbr, paddr_t addr, { static const char *level_strs[4] = { "0TH", "1ST", "2ND", "3RD" }; const mfn_t root_mfn = maddr_to_mfn(ttbr); - const unsigned int offsets[4] = { - zeroeth_table_offset(addr), - first_table_offset(addr), - second_table_offset(addr), - third_table_offset(addr) - }; + DECLARE_OFFSETS(offsets, addr); lpae_t pte, *mapping; unsigned int level, root_table; -- 2.17.1 From xen-devel-bounces@lists.xenproject.org Fri Jun 02 12:10:14 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 02 Jun 2023 12:10:14 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543125.847802 (Exim 4.92) (envelope-from ) id 1q53bY-0007I8-MS; Fri, 02 Jun 2023 12:10:04 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543125.847802; Fri, 02 Jun 2023 12:10:04 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q53bY-0007I1-Is; Fri, 02 Jun 2023 12:10:04 +0000 Received: by outflank-mailman (input) for mailman id 543125; Fri, 02 Jun 2023 12:10:03 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q53bX-0003vL-Q1 for xen-devel@lists.xenproject.org; Fri, 02 Jun 2023 12:10:03 +0000 Received: from NAM12-BN8-obe.outbound.protection.outlook.com (mail-bn8nam12on2061b.outbound.protection.outlook.com [2a01:111:f400:fe5b::61b]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 6638a187-013e-11ee-8611-37d641c3527e; Fri, 02 Jun 2023 14:10:01 +0200 (CEST) Received: from MW4PR03CA0272.namprd03.prod.outlook.com (2603:10b6:303:b5::7) by PH0PR12MB5605.namprd12.prod.outlook.com (2603:10b6:510:129::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.26; Fri, 2 Jun 2023 12:09:57 +0000 Received: from CO1NAM11FT036.eop-nam11.prod.protection.outlook.com (2603:10b6:303:b5:cafe::93) by MW4PR03CA0272.outlook.office365.com (2603:10b6:303:b5::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.26 via Frontend Transport; Fri, 2 Jun 2023 12:09:57 +0000 Received: from SATLEXMB04.amd.com (165.204.84.17) by CO1NAM11FT036.mail.protection.outlook.com (10.13.174.124) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6455.26 via Frontend Transport; Fri, 2 Jun 2023 12:09:56 +0000 Received: from SATLEXMB06.amd.com (10.181.40.147) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Fri, 2 Jun 2023 07:09:55 -0500 Received: from SATLEXMB04.amd.com (10.181.40.145) by SATLEXMB06.amd.com (10.181.40.147) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Fri, 2 Jun 2023 07:09:55 -0500 Received: from xcbayankuma41x.xilinx.com (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server id 15.1.2375.34 via Frontend Transport; Fri, 2 Jun 2023 07:09:53 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 6638a187-013e-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Uceq4vPzIjwOwdKEX6Hs8nmORpTOMQsCCDCk0XqkcS6+FsyHO5Oenv8/JA4g5cFzyxpuieoST7EoSRvAkJF3ypMauYjem3pWG8YJCPZOLB3e+tv2OThyS5qhevgmq1W+1VMQVFN/QGZRcBQql17WWQpWqtvasPSy0MKTGjD2FD5fJ1xXLmox0Dtl9i0sMQlxvCFKdVoJo81OIM16sz0w3nOzG4oOf+JE4Vcwp49/BgE19SyJPjHyawb+JfTbzWQl0qmObYwRCrUuuOPnbLtmBPCcko+wahd5/LxgC/db4PAI2L1A78tuyrn0+M+7TB9PW4gpIA89v7PpIWxNwK8ifg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=zLBAIbTyb40hmLGACIS/eIuTtif3YL9R0l6EzqD5g1c=; b=VmuLyDWuo44wyTxKBZWXGJQFIxCrbE2IDkjdyceES32EWFxM6Jx5/p491BLhQ9dpfWKLWsQ5/XvRuv4BR+5sJg1mx7TYjO4RoWe74tRPavB2HfokQawly/UPXstH3Fl+lHQYMwvP+yYUENTI9cdJpAqBdhneMLWTjiu9XRucK1BsvxAGGuxOLHOYs9Rral8QsFcRHJuOc7wqpM/6ZbiQgsLTFquYEYtygXpIpgS5MwHS2OX02nKiymKAFl2WNEqs84liOYQwx1dzAGHpB+OD+AmGC7iZI/8YJzK2anhzpAFw+wSLQo41pBCc9pdIpkraWAGO0wmisIl3S8pocBhdqg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=zLBAIbTyb40hmLGACIS/eIuTtif3YL9R0l6EzqD5g1c=; b=2fgv1nuikDTkOtJVd4zViXH8vc8Q4dtVC3M5LZlanXCC3hFAwWXFf7TNSNdPxFUowqkBrT8zShiT8me8wsDjtPLItW2Op2QEruFrBTxrWdjaptI9egxglktmFWVY3e48cNfa9AjTSS4mlS3+Vgty3K+xgXvR5J9EpOCGwGL8+Sw= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C From: Ayan Kumar Halder To: CC: , , , , , , , , , , Ayan Kumar Halder Subject: [XEN v8 5/5] xen/arm: p2m: Enable support for 32bit IPA for ARM_32 Date: Fri, 2 Jun 2023 13:07:54 +0100 Message-ID: <20230602120754.23817-6-ayan.kumar.halder@amd.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20230602120754.23817-1-ayan.kumar.halder@amd.com> References: <20230602120754.23817-1-ayan.kumar.halder@amd.com> MIME-Version: 1.0 Content-Type: text/plain X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO1NAM11FT036:EE_|PH0PR12MB5605:EE_ X-MS-Office365-Filtering-Correlation-Id: 5f447898-408e-4180-e65a-08db636247d4 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: S6fWyp+mCtFeFEiSkt3ziO2w0TZswBwsT+abt9rmsuaW3rvUyELXKUSDp/tMrav6tJRAkTnG+t4ZCt43usBa8C31BERU2/7hQ555fq3DfeyavJcxUE3dEFKKWRyDGUeszCz8DL6RIjuzk7GxZB1de3Okwp2gsh2DnWRDicmtkfn85pgSks8lFk7CUxU0pVU6LOW3JHMhEvFES4XQjzZlgAZfXbEQwVYnriSbecJ0zkK01eXc8IEP/lm6tybjXliQ6yXVXBMGIPV7juAc1KWGyWBBiGPEdabsSqUKWqW63lxfFT8RXfiSoQxX98m6BpfllkBBFZSS+50OEEu1X/8VlhjbubrjjsDIn/RX0BoyWqq4TfcPv59K/Izea8KrFKoXex4YCn20uzsP7cUhxOxS5fqYjcRtWztdJRVnKPY8Uye49HwyZGXbwzohKCL+5W7NRyTDOWVjt2R/XmEhHPop6y0ZK6iFlwGIwWt0NS36cAFadcYottMwTg5paDv9wQ2RSzb9IKhtnb630QT0Y/PKTtl+x4QWnIpgpTCJvqa7O7H9gAMw02erdbYceMYOl19j0241GMlAepvyy9CmNbNFH33k6HAg5th4OWZbYIlhvhUhJHK6vzDs/GqCdYfb+cJTFr5BBstgu5rWPKCmg9+qeJ1ZzUrzQiBBjtmPn08S4bnrJ9nEagNdiHhHSMZ414g36LUeBLlNAKImye828aktWkOx/mACtP7nBZt4ydEIzdXJisgJKtext5Oj4m/sEGx+Koxf3yx/wOQTR8vB+/YL2w== X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(396003)(136003)(39860400002)(376002)(346002)(451199021)(40470700004)(36840700001)(46966006)(336012)(426003)(83380400001)(47076005)(40460700003)(103116003)(2616005)(2906002)(36756003)(86362001)(82310400005)(81166007)(356005)(82740400003)(36860700001)(40480700001)(316002)(5660300002)(4326008)(7416002)(41300700001)(478600001)(54906003)(8936002)(8676002)(186003)(6916009)(70206006)(70586007)(26005)(1076003)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Jun 2023 12:09:56.4730 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 5f447898-408e-4180-e65a-08db636247d4 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com] X-MS-Exchange-CrossTenant-AuthSource: CO1NAM11FT036.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR12MB5605 Refer ARM DDI 0406C.d ID040418, B3-1345, "A stage 2 translation with an input address range of 31-34 bits can start the translation either: - With a first-level lookup, accessing a first-level translation table with 2-16 entries. - With a second-level lookup, accessing a set of concatenated second-level translation tables" Thus, for 32 bit IPA, there will be no concatenated root level tables. So, the root-order is 0. Also, Refer ARM DDI 0406C.d ID040418, B3-1348 "Determining the required first lookup level for stage 2 translations For a stage 2 translation, the output address range from the stage 1 translations determines the required input address range for the stage 2 translation. The permitted values of VTCR.SL0 are: 0b00 Stage 2 translation lookup must start at the second level. 0b01 Stage 2 translation lookup must start at the first level. VTCR.T0SZ must indicate the required input address range. The size of the input address region is 2^(32-T0SZ) bytes." Thus VTCR.SL0 = 1 (maximum value) and VTCR.T0SZ = 0 when the size of input address region is 2^32 bytes. Signed-off-by: Ayan Kumar Halder --- Changes from - v1 - New patch. v2 - 1. Added Ack. v3 - 1. Dropped Ack. 2. Rebased the patch based on the previous change. v4 - 1. t0sz is 0 for 32-bit IPA on Arm32. 2. Updated the commit message to explain t0sz, sl0 and root_order. v5 - 1. Rebased on top of the changes in the previous patch. v6 - 1. Removed the index for ARM_32. v7 - 1. No changes. xen/arch/arm/p2m.c | 1 + 1 file changed, 1 insertion(+) diff --git a/xen/arch/arm/p2m.c b/xen/arch/arm/p2m.c index 76388ba54b..a969068a68 100644 --- a/xen/arch/arm/p2m.c +++ b/xen/arch/arm/p2m.c @@ -2265,6 +2265,7 @@ void __init setup_virt_paging(void) [6] = { 52, 12/*12*/, 4, 2 }, [7] = { 0 } /* Invalid */ #else + { 32, 0/*0*/, 0, 1 }, { 40, 24/*24*/, 1, 1 } #endif }; -- 2.17.1 From xen-devel-bounces@lists.xenproject.org Fri Jun 02 13:03:07 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 02 Jun 2023 13:03:07 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543133.847817 (Exim 4.92) (envelope-from ) id 1q54Qd-0004m6-KM; Fri, 02 Jun 2023 13:02:51 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543133.847817; Fri, 02 Jun 2023 13:02:51 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q54Qd-0004lz-HP; Fri, 02 Jun 2023 13:02:51 +0000 Received: by outflank-mailman (input) for mailman id 543133; Fri, 02 Jun 2023 13:02:49 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q54Qb-0004lt-Pb for xen-devel@lists.xenproject.org; Fri, 02 Jun 2023 13:02:49 +0000 Received: from EUR05-DB8-obe.outbound.protection.outlook.com (mail-db8eur05on20606.outbound.protection.outlook.com [2a01:111:f400:7e1a::606]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id c5a66dfb-0145-11ee-b232-6b7b168915f2; Fri, 02 Jun 2023 15:02:47 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by DB9PR04MB9473.eurprd04.prod.outlook.com (2603:10a6:10:369::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6433.24; Fri, 2 Jun 2023 13:02:46 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6433.024; Fri, 2 Jun 2023 13:02:45 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: c5a66dfb-0145-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=h9xB4z8JbzxJd5MSLVJpA7vdSNeV1qfvbYWS/NtY57qgbsCw+bwPwFXsO4hU8knrG0W8TRBmW6ihS3jr4wE7ePDG+xUdP15HoqBW+93JpEwF+ICD7IC9I8KLW1cswNFbwWz3KN4xxxlFzTao6x5SW1FFEAiH6Eklen8Uqg5gWSMEyNZZM1ND1h38NFL36rBTexqZnfIQhr4eqZzToGtRUXCqIiq4pJdbrZliVokPtUjx7WGFb8u6xlDaJFiPWSoLYZ3l73Mi9wOftSFdngndkb+JLoO5OsYgYRAIdFq+/5SpqtJCHzuxS5Uz+KsdLd+oU6aO9NY97ySSwUgXkLc0PQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=pTUpbQGZEwaS+dRF/F/pVs77IdqMv/fPz7OCOMRFwQU=; b=XpKC4si1zRDK6i63dYIPwcuMrWeAzPNMVUVcfsUohfVBOO2hXvHJ4hx5OposleAc0QMm4IgFTV8jK/04J/YqYJg1ngEgYbrgazo8pHMRn3j7IZPN7+ZSMtx4cQ5WAt+MClHaNFnUHVDiSjqpwI81aNQ+4wNDSiwNMqgN0qIkyvdsKMrsFE7GT+Fcq/9ZAPeINeXslkvTHqFerXSvXR+pKtUALi5mDgpELlb5gtCzGx0Va2I9V3DFwCH52nNgMpbSFHkXnQHpBPI9Q6Eky/XrOHGE7WJXSm/nwEPPo3ATnsjOb9Az72RkLcf4QILk0SZFho7ruuLdj9kEvDzXYWlOVg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=pTUpbQGZEwaS+dRF/F/pVs77IdqMv/fPz7OCOMRFwQU=; b=Q1VW/pm3/spCVuiW8/3ICRVyosi9ZOY/P9zUJZczFmu8Mqzsaxd11ET5L7kyESBvE6q5Oah6CWeQNKosBAS+VaqDP9Kzk9BMHep8bMqSLr56UXOajnx8WZC/NmJ4Un+oQHPxWkntnfEX/ElL+eP4U4TYH8k9YfAmwpnQ4QtAO7fNk12ueO1g+AUd95wt0Hv11jn/Lgi6Vvk07nnbB1ogAAv0mlfagtkE6MKVTNJM/uOTgnNZ05oDesjM9oBfEMu0LLsbmt82utCpRNUHAfha5G0pBgq3UQoZSc4nYlLSXAvrWBh8dt1E3nup6z4dVtzjQ8UVsXMy95LS8kCR/BpeSQ== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <507583f8-94ad-436b-e2b7-7ea6123e411b@suse.com> Date: Fri, 2 Jun 2023 15:02:43 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.11.2 Subject: Re: [PATCH] x86: Add Kconfig option to require NX bit support Content-Language: en-US To: Andrew Cooper , Alejandro Vallejo Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , Xen-devel References: <20230601174327.11401-1-alejandro.vallejo@cloud.com> From: Jan Beulich In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: FR3P281CA0176.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:a0::11) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|DB9PR04MB9473:EE_ X-MS-Office365-Filtering-Correlation-Id: ad7eb055-2f12-4ab7-f10e-08db6369a851 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: r3mtPpMMqu0oYbYmmIiLoxPXRGJQVkBoxdIX10bHCJRSz8n8fs2Tlts4IWdk5D7x8q/b17n/iTMvIm/2gvEY7IjfP3fPMJkCk+jAf+MRL/0pkKgpFjyOGujJlSZyLnWqOdPA4H9loN3YqLuUtsWTYFttpmTTHVfC/GAClYzmOWEoqELUQI/M6OPiaIDqqYfKN9tNjkTOZbj2qpAMzcVF/aoj0MZr4wx9WtaqDOmnh/knCRILZ1lgOA/skTS9KifziAumSZcu3qK+otoS5e7Xby5fa9WmOvmF8KxZw1Z16RfNym4S8OrbiEvz4RlOzx9ewxsmBBGYzHBlGihv/vqOSy0LQtuWjhjdjqMMBJoS+E42eWc2JxL+0V2+eyDr9Ar3+E0aKhyrPfFr8Qa8MUlLQ/FxtbybHiKO9+9NYFXFUs4HPaibaTzMwmbHU09T6aui+29IN40ilLY6ItjJ5bhCMB57vJsXdCMN71TjKtnnOSHwbS7JY39viaLT89WBphkvD3zZGld7GxMQTIXumjYHmv6gTuZU26U9RXc8MtEWNP6loC3Z5mz0h0bmehYUKjpICU5kzvLWYMa95rs71KeI78Ak2KS2NEHSDa4kGQKyplTuq0Tg8rE7eWnUjchmXzrR8FhDj3T3aGcBDrNVWGoYUA== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(39860400002)(136003)(366004)(396003)(346002)(376002)(451199021)(54906003)(38100700002)(53546011)(83380400001)(6512007)(6506007)(26005)(2616005)(186003)(41300700001)(5660300002)(8676002)(8936002)(316002)(4744005)(36756003)(2906002)(4326008)(6486002)(478600001)(66556008)(66946007)(66476007)(110136005)(86362001)(31696002)(31686004)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?cHZFWUh3aGNSQUVBV3ptMjE2TDJkMS82QllaY3EyckloemxXU0ROTlNQc2VN?= =?utf-8?B?QmZwRHBoMXNJYlpDN1UzTk51OWY2bWN3UkhNZm5zYjdwU3hycU4wTDUvNW5p?= =?utf-8?B?Rk1laWlsckV5UHFiOWFzWnF2SDlnQ2FISXFDVzg3Z0hVa21tOXhjNndXZjVp?= =?utf-8?B?Z3kzL1F3bUVqNVUvSC9jcWJQNSthV1IrOHBUdHp3akNYcWVvRWFVQlNOM2Fr?= =?utf-8?B?T3N4djNlTVZOVklqajZSRE9XeUY2MlZteWQ5bi8wOXB5UzdHT1RDUldQWGUy?= =?utf-8?B?Si9pQWhvYkRTQXFXcUhGSlRpVG9zTmlaTHNZNVRpSkFEVTR4bDNqY1huVEla?= =?utf-8?B?YzVpVEZoOTc3dXpMUzdkMnBnWnJkeWRFMlFlcGswL0FhSXN6MGpBRUV5Mk14?= =?utf-8?B?dUF2OGZDa3l0eTZCTmZneDVGRkVYaEpNS2p2WWZMbUN0UDZoSURORkRGNnI3?= =?utf-8?B?bEJRUy81RVNYcUNUOFpCZndsUHc1Y0EyODFRMTVVODZkQzh0UGNJTVJjOGhE?= =?utf-8?B?NWRFWXNUNUJrTTlTN0VpTTdUZlQ4NkcxZ3dnaW1RWW1NM2h3K0xEcnREdHVN?= =?utf-8?B?ZlFYMXFsb2hmRFkvUjZKbUtjVWRGS3dzWG9TcjF6aExLMGJJalVmSENUNENz?= =?utf-8?B?Z1ArL2hSNld0clA3MjYrQmR3OHc0QkFHZlZGdUppSExhMVQ3TmtOU2VtaEo0?= =?utf-8?B?aXluSlVSeFNubFhHZ1lMK1FGcXFSOGdqOGxoeTFQY3ZtZGVydlJnTVdMdENu?= =?utf-8?B?MThPcy9YNTl4UXhzdTQ3bE9WcUFpbVNFMlNJQnJZT2V3OVpRZWpUcmE5aWNF?= =?utf-8?B?T2l6QVRROFlrbllLakhyRFJ1Z3dlVmY5U3pHQzdubWc5OHJiQ2ZwcEdid095?= =?utf-8?B?bS9lY1R0UGJzcUFlTHJwc28yTUN1SllhRVp6ZDB3NDYzKzUzVXhlNTl5L1kz?= =?utf-8?B?QXh0YTNQSUROVjBoa0twbFpOcUVGWXUvTmhvTGIrK0xtNis5L2p3UzIrWHpY?= =?utf-8?B?MEJZcjE0Y2gwNlFCWWkyMDdBeWhRMGoyTGQ2eEJ5RHJIbGlVWXUvdk9Xdks5?= =?utf-8?B?eGRvZThoU3REQ3ppakdhaU03RFZrcFBuL0RMNEx3d1Y2RTJTTGl0amRaN2dT?= =?utf-8?B?cWtpbzFJRjhYQ3RYdklwVUVDUmZHOEU5S0hDL1Zram1FRjBHNTNMYmsrbFlF?= =?utf-8?B?YU9kNlM2ekt4d1pnY0MrcTNkeDFPRTB0NUp4VWZlUkl5R050WDlWY29Gd0VN?= =?utf-8?B?dGM3MXRIamR3M2d2cU10aExucFRzLzZncjVjdFRFRCtBaG5ub2VaS2QyMCs4?= =?utf-8?B?Z1JuQjJGa09zbnZBUXZjNXBPUkozbGVnQk9nVU96KzNsMStPUHJ3Z0ZBbzBv?= =?utf-8?B?bExFM2c1bkVBOXBBMi9GOGxVdEVYNmxtU2ZTOEZGTEk0Q0NiZDdvaDNsTFYx?= =?utf-8?B?N2NUUHl4UEFLck82VjZVeGdPYlJJY2tiVFJXOU1yTG10Ull0TkRWcXFZZXJE?= =?utf-8?B?b2lNdlJVei91NmRBaWRLRTJRazNnL21MSFpZeGNlWDhsREVrcnpCc0ZXN2Fu?= =?utf-8?B?ZlBiYzk2TE5NdytQT2xJTDZRc2tCR0h0b1A0Wk40Z1QzRG1lbDQ3TmtzNzAw?= =?utf-8?B?b2VnOGlCVkFKaCtFVmJTc0xsai9tSUlNWURDd3M5RERoakppVFNvQng3dGlP?= =?utf-8?B?dHZGbk9qQ3Z6b2FRR29idEpLUHVqYmtkK3BrWFRpRWR6ZUh6R2FXM3BqQlda?= =?utf-8?B?MjhkRmRLK2hxazhsRGNRNVJiM29MSHR4dHBsbzJ2d29Mc3Z6NDdLRFZwZnpZ?= =?utf-8?B?VzZHWUpFWXNzekZKSWlWbnZFN3BwSm5EQzNGR0lWeHZaRTRDTzFENTlKMWh4?= =?utf-8?B?LzBVbnB6QnNxSThGQklDbFpBM04yV0l5aE9oL0I1Z21ZSERiUEpWdE1ZemNh?= =?utf-8?B?d01wUnhYcDR1UG1ibnVUcDZtdTNORUI3djMveFV1RlJBTm5IMFFHL1VTbjF3?= =?utf-8?B?NjVoZlAwMEN3TzlrbURXVks2YWZYc3ZtYk1HZlJzdzFPVXU2b0lHYnNIOHhQ?= =?utf-8?B?YVI4b2RPd3dOTGg0RmFKWFBtVnlVNnN4OW5iYS9nSGNWa1puN3hxTmRUQzVW?= =?utf-8?Q?b2PnXR6PKW2s0hiZzqCdIrsxz?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: ad7eb055-2f12-4ab7-f10e-08db6369a851 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Jun 2023 13:02:45.6140 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: T6/qLcaeuf+TAnxbACvqjJrJJHrJ55MYnbwj402raVxtiseA0EGK6RtL0G/vjgDcPzsizrSNFbg/JKXHoHR57w== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR04MB9473 On 02.06.2023 14:05, Andrew Cooper wrote: > On 01/06/2023 6:43 pm, Alejandro Vallejo wrote: >> @@ -151,6 +152,11 @@ not_multiboot: >> .Lnot_aligned: >> add $sym_offs(.Lbag_alg_msg),%esi # Error message >> jmp .Lget_vtb >> +#if IS_ENABLED(CONFIG_REQUIRE_NX_BIT) > > This doesn't need to be IS_ENABLED().  #if will DTRT for a non-existent > symbol by considering such to be 0. And then it really should be #ifdef, not #if (like for all "real" Kconfig symbols). Jan From xen-devel-bounces@lists.xenproject.org Fri Jun 02 13:19:21 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 02 Jun 2023 13:19:21 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543137.847828 (Exim 4.92) (envelope-from ) id 1q54gP-0006Ui-VZ; Fri, 02 Jun 2023 13:19:09 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543137.847828; Fri, 02 Jun 2023 13:19:09 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q54gP-0006Ub-S6; Fri, 02 Jun 2023 13:19:09 +0000 Received: by outflank-mailman (input) for mailman id 543137; Fri, 02 Jun 2023 13:19:07 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q54gN-0006UN-LX for xen-devel@lists.xenproject.org; Fri, 02 Jun 2023 13:19:07 +0000 Received: from mail-lf1-x134.google.com (mail-lf1-x134.google.com [2a00:1450:4864:20::134]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 0cdfa65e-0148-11ee-b232-6b7b168915f2; Fri, 02 Jun 2023 15:19:06 +0200 (CEST) Received: by mail-lf1-x134.google.com with SMTP id 2adb3069b0e04-4f4f3ac389eso2771231e87.1 for ; Fri, 02 Jun 2023 06:19:06 -0700 (PDT) Received: from EMEAENGAAD19049. (default-46-102-197-194.interdsl.co.uk. [46.102.197.194]) by smtp.gmail.com with ESMTPSA id y17-20020a1c4b11000000b003f7298a32ccsm501869wma.41.2023.06.02.06.19.05 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 02 Jun 2023 06:19:05 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 0cdfa65e-0148-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cloud.com; s=cloud; t=1685711945; x=1688303945; h=in-reply-to:content-transfer-encoding:content-disposition :mime-version:references:subject:cc:to:from:date:message-id:from:to :cc:subject:date:message-id:reply-to; bh=/2bRwbmTKPwBoqSpZK/elFwIdSM0LPDQOqq59XCgB9A=; b=f6rMxUk/Hruu3MLTyAeH8DMqEo6wI3CUFkLm5qqs+tHEVFtpSyzuRMub8LNff8B/Ba bHVH2zysB0LZ1v8e9OKDFL0VbGyVZBu++Jr5Mg/Mz+bl8tjmK8nuZNLOp+O4OawrXGMS xOOaw/dvkgLMJEtNnzx7HzxUZ+QcdZdk21bXo= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1685711945; x=1688303945; h=in-reply-to:content-transfer-encoding:content-disposition :mime-version:references:subject:cc:to:from:date:message-id :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=/2bRwbmTKPwBoqSpZK/elFwIdSM0LPDQOqq59XCgB9A=; b=HvTL56EqJrS36SkRj829nM7DbWIwhISVjpaPDramp+wL7FEIbKn9xWrcIoPuSRc9S4 bOv5on87Ys+K3Zx53ndd7AvLArbYDO8urplvPr4CYp/KqpeIidvTkcwEqhCSuak4Vagg Xq/h1HU3f4zlC5NozbF0UbA+wjZqap7eFNNmfJ+rmdz6uEq5K8oHiBf9iztlZuRTRQ7V y3VOpqEVwIhTHhu8JhSJ2hF2eoPhQ4cja5uctWaXrXIgolWLL66WJrByLgGmWtB/Bm7j l6xlCZWlmjnfy8iC19zL1RTKzHyAi1jKW3MF+I8LEbVtWIC0Z13unWGNlwbv8TXouzVt T5mA== X-Gm-Message-State: AC+VfDxdLV0wfzEcda299qCMqSRsFBCGeuxY0iZmSSsFnSbK+ndOprja O339Uns9KL5+xyP7J1dv8WbfUQ== X-Google-Smtp-Source: ACHHUZ5f0pGnW2IzMNg36je6lgwdLP3CNeJwRYbYHKGf5UWRRKB/dMUbER3za+7MBhsQmMDRMRP84Q== X-Received: by 2002:ac2:42c6:0:b0:4f6:16f9:a03a with SMTP id n6-20020ac242c6000000b004f616f9a03amr178853lfl.67.1685711945577; Fri, 02 Jun 2023 06:19:05 -0700 (PDT) Message-ID: <6479ec49.1c0a0220.af185.1f3b@mx.google.com> X-Google-Original-Message-ID: Date: Fri, 2 Jun 2023 14:19:03 +0100 From: Alejandro Vallejo To: Andrew Cooper Cc: Xen-devel , Jan Beulich , Roger Pau =?iso-8859-1?Q?Monn=E9?= , Wei Liu Subject: Re: [PATCH] x86/microcode: Prevent attempting updates known to fail References: <20230531175119.10830-1-alejandro.vallejo@cloud.com> <83324533-38da-b5bc-875e-a161d7501eb5@citrix.com> MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <83324533-38da-b5bc-875e-a161d7501eb5@citrix.com> On Thu, Jun 01, 2023 at 11:54:31AM +0100, Andrew Cooper wrote: > I had something else in mind here.  Right now, this will read > MSR_MCU_CONTROL and emit a printk() on every microcode load, which will > be every AP, and every time the user uses the xen-ucode tool. Not every AP. The hypercall would return with an error before the APs are brought in. It is true that the error on dmesg would appear on every microcode load attempt though. > > Instead, I recommend the following: > > 1) One patch moving the early-cpuid/msr read from tsx_init() into > early_microcode_init(), adjusting the comment as it goes.  No point > duplicating that logic, and we need it earlier on boot now. > 2) This patch, adjusting early_microcode_init() only.  Have a printk() > saying "microcode loading disabled by firmware" and avoid filling in > ucode_ops.  Every other part of ucode handling understands "loading not > available". Sure. Going on a tangent though, I do wonder why tsx_init() is preceding identify_cpu(). It's reading cpuid leaf 7d0 simply because it hasn't been read yet, but it's not obvious why this rush in invoking tsx_init(). I can't see any obvious marker that affect the following identify_cpu() call, and swapping them gets rid of the cpuid read. > > In terms of the commit message, you should call out the usecase > explicitly.  This feature is intended for baremetal clouds where the > platform owner doesn't trust the tenant to choose the microcode version > in use. > Sure. > Also, I'm really not sure what your 3rd paragraph is trying to say. That the case where CPU_i.DIS_MCU_LOAD != CPU_j.DIS_MCU_LOAD where i != j is not specifically handled on the grounds that sane firmware ensures that condition doesn't happen, and we already notify when the system reached a nonsensical state with different CPUs having different microcode versions. I'll rewrite it better. Alejandro From xen-devel-bounces@lists.xenproject.org Fri Jun 02 13:46:40 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 02 Jun 2023 13:46:40 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543141.847837 (Exim 4.92) (envelope-from ) id 1q556m-0001YW-Vd; Fri, 02 Jun 2023 13:46:24 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543141.847837; Fri, 02 Jun 2023 13:46:24 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q556m-0001YP-Sz; Fri, 02 Jun 2023 13:46:24 +0000 Received: by outflank-mailman (input) for mailman id 543141; Fri, 02 Jun 2023 13:46:24 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q556l-0001YH-Vw for xen-devel@lists.xenproject.org; Fri, 02 Jun 2023 13:46:24 +0000 Received: from NAM12-MW2-obe.outbound.protection.outlook.com (mail-mw2nam12on20627.outbound.protection.outlook.com [2a01:111:f400:fe5a::627]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id d9b8561d-014b-11ee-8611-37d641c3527e; Fri, 02 Jun 2023 15:46:19 +0200 (CEST) Received: from SN6PR12MB2621.namprd12.prod.outlook.com (2603:10b6:805:73::15) by IA0PR12MB8206.namprd12.prod.outlook.com (2603:10b6:208:403::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.24; Fri, 2 Jun 2023 13:46:14 +0000 Received: from SN6PR12MB2621.namprd12.prod.outlook.com ([fe80::8018:78f7:1b08:7a54]) by SN6PR12MB2621.namprd12.prod.outlook.com ([fe80::8018:78f7:1b08:7a54%2]) with mapi id 15.20.6455.020; Fri, 2 Jun 2023 13:46:14 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: d9b8561d-014b-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=YLVOc8WsxwXUj5s8swZ/8qsAOtPmm8LPvq61QVyl1tS3i4772xaa9A31flv8PDW0ulcIMpquNakOSNc4XG+y++1B96sfy10dS/g2LIEJlyPW1zciggqbxShOu+46vu5njhBXKUyHzohToG8uqfYP7/uYLaoXuZmP/MkM20RpAVvisWz4lR4md881v+oF1QM93QD+gVXgp4DMPLL8SNel+FE5b0wTQ68GTkusE0L07Y7LUeFuC2F6epTxlfmoLOdoi1Q746I6gwliDQqUPmEzVEnJrka+85jLgV8W9BSJDAm8JQG8/zAS82pIUUwTMyleWc6QBTue6FUKMoh1f93H6Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=MwTBRRWElJcjYpxYd/4C1t2KQj6DTc8lMKGMLSts4sg=; b=kN5setEYl4jRDIjqxLJUM0qSwUOjygotOg/jTZLQdsMWEpv7pphC9c2YGLM1cYtxn7CZa7g1aC79RZfN9MR7xY78gb2BxUp9FPH0iSwbAi3haVVPKo64OH7Sv2yjz3ZojU3l8TmX1WmmTjoJ9F9vyah7OuOwWEMvLgoJuzMD38AwnEjSdoAh7GtlaeFDlqSA5rl8v4vVOtz1HyonpdjEEuWFyIHqJ5oIYaEwvWICy1uoDyGpWJE7+x+lGsV323nTQ1TQ+FXMAoRPEqAnFa0s3IlXHkKeQq0fZ1Mcdd8UZgPOumTz92CrYea6XZXvr5IB2z9Vq5De96nxWvSYCYtsoQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass header.d=amd.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=MwTBRRWElJcjYpxYd/4C1t2KQj6DTc8lMKGMLSts4sg=; b=LWihhnOoO4BHxhCc+qZrj8gd4J/sDMSJHzDjx4XoFp2ZTZWbuJckqDvXq9AYf/jb64bIITcOENMSedJ5Ywvs3HzYLmDe113IFZcyYU+P4gVVGHDB6SYnTbx8/cXtH60kbgjKlLzWXpd3P6IvY71ZMbDNLzNLShwirK9RjhFffSU= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=amd.com; Message-ID: <9079757e-72e3-3a68-5e78-9130822003e9@amd.com> Date: Fri, 2 Jun 2023 14:46:03 +0100 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: Listing the tools required for Xen development/testing on x86 and Arm by the community To: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= Cc: "jbeulich@suse.com" , andrew.cooper3@citrix.com, christopher.w.clark@gmail.com, nathan.studer@dornerworks.com, Stewart Hildebrand , Stefano Stabellini , Julien Grall , Bertrand Marquis , "Volodymyr_Babchuk@epam.com" , Rahul Singh , Henry Wang , Doug Goldstein , Juergen Gross , dfaggioli@suse.com, elena.ufimtseva@oracle.com, anthony.perard@citrix.com, george.dunlap@citrix.com, rosbrookn@gmail.com, lukasz@hawrylko.pl, dpsmith@apertussolutions.com, mateusz.mowka@intel.com, kevin.tian@intel.com, jun.nakajima@intel.com, paul@xen.org, Wei Liu , konrad.wilk@oracle.com, ross.lagerwall@citrix.com, samuel.thibault@ens-lyon.org, christian.lindig@citrix.com, mengxu@cis.upenn.edu, tamas@tklengyel.com, aisaila@bitdefender.com, ppircalabu@bitdefender.com, "xen-devel@lists.xenproject.org" , Michal Orzel , "Stabellini, Stefano" , "Garhwal, Vikram" , Xenia.Ragiadakou@amd.com, Stewart Hildebrand References: From: Ayan Kumar Halder In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO6P123CA0052.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:310::10) To SN6PR12MB2621.namprd12.prod.outlook.com (2603:10b6:805:73::15) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SN6PR12MB2621:EE_|IA0PR12MB8206:EE_ X-MS-Office365-Filtering-Correlation-Id: 2a343743-ceb7-484b-436f-08db636fbb57 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: sd7qn7rH0v77/7TDQ37HMLRHF0ZREbKo5h/vqRw5wmY7jZ86ihjZvy2JumS8xcx8gd+oQF0idrwLzG7/23xwcGqLHmInpdmICjjBRrzbX9SDsAaQ9a1Z4MlfsGRv4LQD4aVF3oqspvc14M+y4RftsvaLOAFnZj0b4fgFnNETCgazMryBtXD5P4Ywjf2TzTqr+Ye7R/WyPIpR6ee46TzWUIsLJKSVHYH3T8mxGKUIXuHqscnlKINRz2bwCmZjhSHuMDbjRnBDcwfkSEbWppcF0+Pgpscwpo+Vux6qnYHHI0z93TvOoVJmVLPdtLTaYlt17XQqBupYlRDqeXR7+ZvSV0RnbU8kW2IxnW9O+KSN1yJbnviuAJG8UVcU93iLqoaai+ZhIPAwUK03sUEmHVuz3wYrmnumzcdG2dKueP2jXsMS5aVDyHMlvwvBLrJY6EkEQAo0YI7I/j77seR/IBScAAln8mxTa7cGYp4gdawb+zG5soslYK6ry6hIuzuZesGyCqUWxkW+VlFrS5lDwkJCgioi4UeKa4zugbKMyL59ccMIfw2HwudsGaw8tjX+DD0wAT5GV3dD8yR4v2pO0XlWS8wzINYDwdvBPr51MRabCOFswR9aO5A1ChdStIGwrDD1S+yj3ESdZfahypynpiFX8ZpbdcoKjmSIrCwMy++sk83j0EIBS7FnNECtuvYzkcxJ X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SN6PR12MB2621.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(376002)(396003)(366004)(136003)(39860400002)(346002)(451199021)(6506007)(53546011)(6512007)(31686004)(31696002)(186003)(66946007)(66556008)(66476007)(6916009)(4326008)(7416002)(7406005)(2616005)(5660300002)(8936002)(8676002)(478600001)(83380400001)(2906002)(6486002)(38100700002)(54906003)(966005)(316002)(41300700001)(6666004)(26005)(36756003)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?cFBUYVpJSDUrRE54N2I3RFpWL1lVSzZkTWZlL2tBKzhIdWJTbXdZUlpOTU5B?= =?utf-8?B?VlZPYVU4VXZva0ltS3g2TnNqWklxRzJFK2ZHL3grZEtZRVFGN3lSeXhTMVp2?= =?utf-8?B?Q0FhdEN0dy9xb3VuUnpITExkbjhOWVZ5aHBhYy9uNGE0MzdROUlUd2t6NHcy?= =?utf-8?B?SjdMRDIzR0hnY0dpeVBLYTVma1BBYVo2bk5aQmV5SE9ScS9XUVBaZU9xYnA5?= =?utf-8?B?Nk5UcU4ybGpOejNxbklnaktZSFZjRERnMkkzN3BmMm5tY1FMcDV0NEVKV0w2?= =?utf-8?B?VklROVhTRmJRZUJucVZaU0NGNVFGZ1JBemtRVkdaR3FCQ3NuR1NabWNVcDFv?= =?utf-8?B?VGFNekpZdHhhRjBRZE9ZdldBMmhMSkRraWhLWitmTjF2S0lYbWowbWNnL2FI?= =?utf-8?B?QjlzY0dXcFI4VFRkNXV4YWdIMTVwaGlQRGlZMVZoQitWaTN5cHp0MmxzalJP?= =?utf-8?B?dWtZUVhIbzFNaElVVVhLcGkyRmJYU2tIajZ1U0VOOGdHMnk3bVFSTDJybVRJ?= =?utf-8?B?OFJxU0ZIeEt3M0w4bEMra2VpbTFGblpMYU9zU1gxYml4VCszN0dzZWZUQ0dI?= =?utf-8?B?RGRTZTBaMytub1YzUkU3MnBsTjZKL25nOUs3TDcwSzloaENUREVDVjh0M0U1?= =?utf-8?B?ckxDZzd5WUg4cjBhM0Z5cVVoZFVoWTVqNzJZZ1dUTkpLRXIwL0J3UXFacXMx?= =?utf-8?B?bngxaW1MeU9FeTZPSkFUWWRVbGgrS1plUTdIU0NTU0xZdXZudlNKenc2UGxk?= =?utf-8?B?NVlVZW96ejcwSVV0Wm8vcTZjNi9RTjFERHFPZ2ZsRlpHUUR3N0Zhdm9ZekFm?= =?utf-8?B?NUY1ZWdhTUZZYVh1WlZUMUFtT3VndDZYeVFVYytieFVPeGVpZWhjTzkrOTBq?= =?utf-8?B?TU1oa0FMb20zeWQ3UFVJU0Rma2xZWGtienRaMVhOdGRFY3ZETUNKb01FNkN6?= =?utf-8?B?SlVRNWd3MkJxMnZ6WkZDeklRdWk1U2czbVFHaFMyYzNIZmRoeXJqQzNEbGNZ?= =?utf-8?B?MTdsNGVuRHpvUS9FNUhOTjd1S0NKT2VYYlpINFhmb0YzVXY0UUptVTBvYmRD?= =?utf-8?B?Rk5sVisxckg2WjdTbTV3YVJtamVrdGMvSGlVRWVXT0ZEZEV0aHZKWjJ2Y1ls?= =?utf-8?B?TzU3cjV0M1ppYmFIWkJxL0haYzFoZ1NDLy9SSTkzOWl1a1UzM3ZDVTVzeU1V?= =?utf-8?B?YVlsd2I3eFRQRXV2dGtKYk5NUW5uVG15OGhxRTVWcjBkL1ZXNG9oanpNK2JW?= =?utf-8?B?eDZ5WjBNV2VOSjBGaDRiaFVoUE03SldZREx0MUxJa0ljeGFDUTBCb3d5MnR6?= =?utf-8?B?REUya1BqNE1rWDRaaFE3MGdBektXalJEb0hMSWRyNmRWSGRjTG5jclZBZzcw?= =?utf-8?B?YlBoS2ZxM3BLZXQyaG9nSkczUlBqcks2anRkRjdwWUlvQzRrWWxTOS94cktV?= =?utf-8?B?TGx4eTlGcksxM2RmcjhBV3VxSHlOdmNKL1dtKzJJSnk0ZUVzL3VRcGwzend6?= =?utf-8?B?NnVnYm5uZEhsWFZseE5GM2tyUkw1L2lSMmw1YmdZQmVERVhEb3FiaDR5TzF3?= =?utf-8?B?V2JEdTh4WmFhWlM3WUg2S3lqbm5kejFJREJ6Y0Rla2NBODVLNDhINWJPZGxj?= =?utf-8?B?RkhLVnFNZHhwN1R2RWpWQVVvdjJFREZOUlppTng5bEh5YjRndEJlaDU0TVRw?= =?utf-8?B?NDM5QThrNFkzM2NubFZQaE5nNnNMYTY3TnVUai9MakhIUFhibVM3d2hyT1VR?= =?utf-8?B?czlSbVJ1dzZuOURKVStKL1duMWpxemYwcXlBc3F6NVlVc2NxMlBRbm1VeUpN?= =?utf-8?B?TnRmUi9Nanp2dnBMRU9DTDBXeGx5NEQvTmUxak4yQXNFUnJKdVBBd1RwS2dw?= =?utf-8?B?Z3M5VkVMNDJzZ3A5RGxnMitsUnkzOEduQ1pza09IQ2hncitiTlphN1cvY1I1?= =?utf-8?B?V09vaDhqWGgySkF5eEplZVhPYjJXZXNhOWlUUmhjTjZ2UjN4bUVPdlZSQ2FC?= =?utf-8?B?d0U1VGgrQ3hseFMwcnhUTE5JbElYUDhHU0d3REdLNXVZcGZ2RGVXY3p1emgv?= =?utf-8?B?S2FzVTk3bjR0MlhUaXk5QWVSUy8xM1Zvd2xzNE9GOXJmdVYraWtJZkRFWWtm?= =?utf-8?Q?BmYVsgmStXNYBGDoSMsDG5pbh?= X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-Network-Message-Id: 2a343743-ceb7-484b-436f-08db636fbb57 X-MS-Exchange-CrossTenant-AuthSource: SN6PR12MB2621.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Jun 2023 13:46:14.1587 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: uUg/s6My88q9lMMe4RctESDiuvNPkLZaBNSDrGPT0qHgpGfUcBFtzgFzALnyNuwXaWL+0LUsOMDOXsQR5rERAw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: IA0PR12MB8206 Hi Roger, On 02/06/2023 12:43, Roger Pau Monné wrote: > On Fri, Jun 02, 2023 at 09:48:48AM +0100, Ayan Kumar Halder wrote: >> 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. > What is the end goal of this? We are trying to do an initial assesment of the requirements for Xen functional safety. As a first step, I am trying to make a list tools which are in someways related to Xen development/testing/deployment. > > I'm kind of unsure why do you care about which editor I use to > generate my code, that's up to the developer. I agree that editor, email-clients are something that are an individual developer's choice. However as it is related to Xen development, we want to atleast put down some of the commonly used tools. At a later state when (and if) we go through the list with a safety assessor, we might prune some of these items. > >> I appreciate if you can let me know anything I missed or mistaken and the >> version currently being used (for some of the tools). >> >> >> 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 > assembly (gas), python, perl, shell, Makefile, bison, flex, ocaml, > go... > > Likely more that I've missed. Ack > >> 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 > I do use an LLVM based toolstack, so that's usually latest LLVM import > on FreeBSD. We do also test this on the cirrus-ci, see: > > https://github.com/royger/xen/runs/5334480206 Thanks, this is interesting info. For the moment, I am ignoring the downstream forks of Xen. I am only considering the tools used by the upstream Xen and the associated CI/CD. > > I_n any case I think the scope to some of the questions is unknown, > it's not feasible to expect to list every possible combination of > Linux versions vs Xen version vs whatever guests versions a given > developer might be running. I agree . That is the reason I am picking up the compiler, linux, binutils, firmware, etc versions from our gitlab CI. It also acts as a proof that we are testing Xen against a known set of compiler, linux versions, etc. - Ayan > > Regards, Roger. From xen-devel-bounces@lists.xenproject.org Fri Jun 02 13:57:55 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 02 Jun 2023 13:57:55 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543146.847848 (Exim 4.92) (envelope-from ) id 1q55Hl-0003En-3u; Fri, 02 Jun 2023 13:57:45 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543146.847848; Fri, 02 Jun 2023 13:57:45 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q55Hl-0003Eg-0N; Fri, 02 Jun 2023 13:57:45 +0000 Received: by outflank-mailman (input) for mailman id 543146; Fri, 02 Jun 2023 13:57:44 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q55Hj-0003Ea-UB for xen-devel@lists.xenproject.org; Fri, 02 Jun 2023 13:57:44 +0000 Received: from esa4.hc3370-68.iphmx.com (esa4.hc3370-68.iphmx.com [216.71.155.144]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 6fe26946-014d-11ee-b232-6b7b168915f2; Fri, 02 Jun 2023 15:57:41 +0200 (CEST) Received: from mail-bn7nam10lp2101.outbound.protection.outlook.com (HELO NAM10-BN7-obe.outbound.protection.outlook.com) ([104.47.70.101]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 02 Jun 2023 09:57:34 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by SJ0PR03MB5805.namprd03.prod.outlook.com (2603:10b6:a03:2df::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.24; Fri, 2 Jun 2023 13:57:28 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::10bb:98bc:e36d:36ab]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::10bb:98bc:e36d:36ab%3]) with mapi id 15.20.6455.020; Fri, 2 Jun 2023 13:57:28 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 6fe26946-014d-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1685714261; h=message-id:date:from:subject:to:cc:references: in-reply-to:content-transfer-encoding:mime-version; bh=KbaIwqTarrycL7QRGWv0CwZ98lashMBWsYaWFDBtbHc=; b=b0/i5kj1mKxue8LQgzM1KAUUXTKkhqaCOZtuc6T22AKfqbSWE1B0ATMC es2ECHo/rtd8f8K/L+cKJeD1Idwtsk7Fr74np2IFregAEZiE9s5WFdmmb PxJIPeObqmCdZ8v/ocxEnHvgqK18zJc4WvQyns30JLV1LNazLEVYo80cG g=; X-IronPort-RemoteIP: 104.47.70.101 X-IronPort-MID: 113867953 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:abUYe6AAwotVGhVW/wTiw5YqxClBgxIJ4kV8jS/XYbTApD52gjUAz GVKXm6PPv7bMDD1LY8laITk9E9S7JLSxtAxQQY4rX1jcSlH+JHPbTi7wuUcHAvJd5GeExg3h yk6QoOdRCzhZiaE/n9BCpC48T8nk/nOHuGmYAL9EngZbRd+Tys8gg5Ulec8g4p56fC0GArIs t7pyyHlEAbNNwVcbCRMs8pvlDs15K6p4G1A5ARlDRx2lAS2e0c9Xcp3yZ6ZdxMUcqEMdsamS uDKyq2O/2+x13/B3fv8z94X2mVTKlLjFVDmZkh+AsBOsTAbzsAG6Y4pNeJ0VKtio27hc+ada jl6ncfYpQ8BZsUgkQmGOvVSO3kW0aZuoNcrLZUj2CA6IoKvn3bEmp1T4E8K0YIwpeJMDU9s8 NMiAQtdMzGAnu7twuvhc7w57igjBJGD0II3nFhFlGmcJ9B5BJfJTuPN+MNS2yo2ioZWB/HCa sEFaD1pKhPdfxlIPVRRA5U79AuqriCnL3sE9xTK/exuuzG7IA9ZidABNPL8fNCQSNoTtUGfv m/cpEzyAw0ANczZwj2Amp6prraWxnOlB9NPT9VU8NZzrn+pwlQrBCFKWFG0nPypjWeVcI12f hl8Fi0G6PJaGFaQZtv3UgC8oXWElgUBQNcWGOo/gCmSzoLE7gDfAXILJhZRZdpjuMIoSDgC0 l6Sg8ivFTFpqKeSS3+W6vGTtzzaBMQOBWoLZCtBRw1a5dDm+dk3lkiWFo8lF7OphNroHz222 yqNsCU1m7QUi4gMyrm/+lfExTmro/AlUzII2+keZUr9hisRWWJvT9XABYTzhRqYELukcw== IronPort-HdrOrdr: A9a23:vSBv06AuINx7UxXlHeixsseALOsnbusQ8zAXPh9KJCC9I/bzqy nxpp8mPH/P5wr5lktQ4OxoS5PwJk80kqQFnLX5XI3SJjUO3VHFEGgM1/qA/9SNIVyaygcZ79 YaT0EcMqyPMbEZt6bHCWCDer5PoeVvsprY/ds2p00dMj2CAJsQizuRZDzrdHGeCDM2Z6bQQ/ Gnl7Z6TnebCDwqhoPRPAh2Y8Hz4/nw0L72ax8PABAqrCGIkDOT8bb/VzSIwxsEVDtL4LE6tU zIiRbw6KmPu+yyjka07R6e071m3P/ajvdTDs2FjcYYbh3qlwaTfYxkH5GSoTwvp+mryVAy1P 3BuQ0pMchf427YOku1vRzu8Q/91ytG0Q6u9XaoxV/Y5eDpTjMzDMRMwapfbxvi8kIl+PVxyr hC0W61v4deSUqoplW22/H4EzVR0makq3srluAey1RZTIslcbdU6agS5llcHpssFD/zrKonDO 5tJsfB4+s+SyLQU1np+k1UhPC8VHU6GRmLBmAEp8yuyjBT2Et0ykMJrfZv6UsoxdYYcd1p9u 7EOqNnmPVlVckNd59wA+8HXI+eFnHNaQikChPTHX3XUIU8f17doZ/+57s4oMuwfoYT8Zc0kJ PdFHtFqG8JfV70A8Hm5uwLzvn0ehT+Yd3R8LAa23Ag0YeMAIYDcBfzBmzGqvHQ4Mn2WabgKr GO0JE/OY6WEYKhI/cO4+TEYeggFZAvarxlhj8FYSP/nivqEPydigWJSoebGJPdVRAZZ0jYPl wvGBDOGeQo1DHfZpa/ummfZ0/Q X-Talos-CUID: =?us-ascii?q?9a23=3AcHGl22t5ClOswuA9d42+EI7H6It6dkbR4lXVDHW?= =?us-ascii?q?RMjY0ab6MRQSSofldxp8=3D?= X-Talos-MUID: 9a23:1lQGmApZG4qdym0etB4ezyhMFv1s25yiNBwAm5o7vtmDHAdbZB7I2Q== X-IronPort-AV: E=Sophos;i="6.00,213,1681185600"; d="scan'208";a="113867953" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=lHmAaJH4WGCnNES+n+PiKt3qC7NPC9YDwpOXHooBFfzyYdUZJhaWjMBXYlxB6w2fW780Zlpg6sv9KwjVpPy5fsFc3/2NKVpHdggTyMg0M21grfxdzll4ZJKe7BJKiLJih+TizupcmzHHedP8boHwxdKmVviFuPBIsr6CkFRvKvOYYOjXUoz4kIbeseA47XKbqbEExYh1F/mm/x08GNtfSpLLt60poXONJeSDUg2kPFy7cKPGMKL8ilY+apIDtwl42SH1OmYxNhBAeU1qJp9iqJ+6txETgsGf7D2MmNbTPJr+wUvpc/RV63CBR7Y270hvgFm3Byo6hZi3AifMXXdVtQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=L9qJjWJJC/OsBSkDD2k4xmfgM5IDLUZlUv33oXvl3Og=; b=HMaQt7U9saxael+KvEos612GPKMcm7elH18jegj9WLkE+Ia5QO+QjcRo3L3lP1flXYdOPSayoLnR3pKfQm0ilWiu2n//z+tzVRCyLmrO15cznpuEnuizxb0O/BGYoWVWL6mdQRdcbUHiBhBH6ra/jKIbqi04xYUNgPYgr5k6u1GzcDQed/ZHb9YWyQw3/5dx2CRDU/2Npc8qP2Lazk/apU1gbB9/5sbaSfhGjigfmtLG1/yT3LIo+QfiPnVB3hsthPoXiAWDDh2o+JwfWnmtGxzj5X5m5tAOZGtIADvM6dhJWrls3xmZ9XdxUfnVJYbsrVtxuDBJ1xi63QYyCn6/7w== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=L9qJjWJJC/OsBSkDD2k4xmfgM5IDLUZlUv33oXvl3Og=; b=bhdZnXhOQgduHMNLIh1Qvzp4vYzbvBXST19X05trJDPn/wKxh3pBAeDzUdcDu1VlWdAO+kht5E8v6EXMWc+yLmQGvqXfXzWeKXJn5oeLslwKEAiRby0/zIDG6lvL2WEeoEUkk7h9Szh2dL7jwhB2dxRA3x/wN/uPEuw0UAKimGU= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: Date: Fri, 2 Jun 2023 14:57:22 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 From: Andrew Cooper Subject: Re: [PATCH v2 2/3] x86/spec-ctrl: Fix up the RSBA/RRSBA bits as appropriate Content-Language: en-GB To: Jan Beulich Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , Xen-devel References: <20230601144845.1554589-1-andrew.cooper3@citrix.com> <20230601144845.1554589-3-andrew.cooper3@citrix.com> <36b016e2-b378-f97c-42da-86a330471bf0@suse.com> In-Reply-To: <36b016e2-b378-f97c-42da-86a330471bf0@suse.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO4P123CA0166.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:18a::9) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|SJ0PR03MB5805:EE_ X-MS-Office365-Filtering-Correlation-Id: 0c00c57b-4a6e-4765-7711-08db63714cc5 X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: dB492f8/XzXF9QXpXAGPX6rKaICGro/xlxEX5UVhPTtaM2jGfvlTfhnBpST9Zh1VDycqBZiSoukj1semlBMaQbj4nlZkCjPwmudiE3i+TDA614CH3RQqNZPhLGcRxwNN7GYOImlBOvhq/J07uLf6j1uZfptD+WIm6UdJ1s1WdSZQVVlRdzbSaBbHYgOVKPrVTIGgk8zfah1agy8D9yaVDyyTCz6nuOnr/PMoznKUQCnPe4EHSu5Gu4OrwOZ40C3RCRH+IvGCadjMGc+3acoTu9apdupU1j3VICGd+L6nqvEqw1ighKd64U+QoTHKzImgWjltVBPI1IvSaHZxe1OZtgtkAJC/iPNS8pqfKNKezGKdXMm5kX4iyvM/Qvxby1oVJZJcG2y3IHucNxgaUYowV3dpDFC2ZiDqstvdVUJyiFvXKuFvqV3bcb0xOoLesCERXrMsJUkGX/wI2rtmFIdLRT7ONUB5xTLM5kJffsREmEmEiJN8CHKeuKW9rfjRNOBikU9STKYblgMcpyIUozNnIn8UfQLMS8HAe1aiNeg7D9ZJULKfrNIHkMGBajawZNmF69wBmDI5K3NQBovC3LEeHmkf2CoeVQ5y0daYCRMKHX7tC41Ep5LxbR7cVAMpfgKE3DHHU5vybdHGaWlnE7VBXQ== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(376002)(396003)(366004)(136003)(39860400002)(346002)(451199021)(6506007)(53546011)(6512007)(86362001)(31686004)(31696002)(186003)(66946007)(66556008)(66476007)(6916009)(4326008)(2616005)(5660300002)(8936002)(8676002)(478600001)(83380400001)(66899021)(2906002)(6486002)(38100700002)(54906003)(82960400001)(316002)(41300700001)(6666004)(26005)(36756003)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?YnRSSTMrYWNOa24yK0t4T3Joc3pRMzFJc00wZ1gydzVBNk9EbHBQS1JsZ0NS?= =?utf-8?B?bm1Pai9oWDZ5K1JwQlpLRWovb1o4T2tHM3B2UEZNdDFyQWZBNDJZeTB3d0dz?= =?utf-8?B?SXQ5ZGJ5bC91UElUR2pYWTU3WHNYUUFFRXlFOFVhc1J2SklpcHJQY2V1VDBk?= =?utf-8?B?bUNPemhwb0hDa3RUNFE2MEFrSjRFSnRrMmZzUlpuc2pIVENpNGpBUUtCcXE4?= =?utf-8?B?MElwWWswR3ZHZ1FjV1RZdDQxT1hXdzZnVzRkcEkvTHpvWTJOZVRCWkJBMmJC?= =?utf-8?B?NjIrdHE2blQzdXJZT2I3Q2cvVys0a0ZoaTlwaUFyOHRoQVQ2TXo5Z0xVeTZL?= =?utf-8?B?dGplbzQ3MXZxbDd2UjF5SGFzRHRzako2V3gxb0NVYkRaQlllVXhOcjhydlVN?= =?utf-8?B?ZXBYbWkrZFFWTTdmamg0SDVNSzVxZ1lEZXRGNFEvL0ZaMm5ZQXFSazNibGw1?= =?utf-8?B?TExhczRQUGIxOXRURVZPdlV5SjcxVEtWKzlOQTlHWWRjbXRZZmZoaHRzNXhN?= =?utf-8?B?cjJydDdLWEtlWnIyYWlXRnRoUVZ5TFdqMlA0WEdKN1FkRUN3eUhHb1lqT2Jk?= =?utf-8?B?aml3UzhIcTk4MWtGM3F6Sm04SE9VL2R1dU5RaC9NSFpHZHJKODhkTEFZaHFh?= =?utf-8?B?SS95d0ZGMk1zM2c5c0hrRGJhKzc3WWtUNldMb1lvK3pmL05tTmFnYWo4ZTIy?= =?utf-8?B?Y3hzcWdTSmR5RXpvV003NkZPZk1Lb3hVc0UzcTdRMEdwclI4UThzMk04NlJl?= =?utf-8?B?S2J6a283VUdGSVNpYUFYOW5CclpOMkx6UGR1YyszL0daUXB0dmZBTG9Kb0FT?= =?utf-8?B?OGZEcmdIT1RFTGVkNWR2UzczNHhBTUJtQkUwMC9BSmx6Q0xvckZ5SzRLNlFD?= =?utf-8?B?SWJnZHBRejh1NDM1YitWY1V2Y3VvWm90eXBvWkRwZS9maUI5Uml0dWZjZVU0?= =?utf-8?B?Y3Y4Z2FFc2xRWUF6VmNsZ00rQ0tuNFRIWnAzd1FYcUQ1T0dCU2lkeXZGc3VF?= =?utf-8?B?aXpFYURZa3ZDVXVVOEg1WGtpekk0dTdBOVFtZ0lKdHVlV0Q0NUhMai9vaEJE?= =?utf-8?B?U2d1bmk0YnRDNmVEbUV4YThZcEdTRkRsZnQzZ0toQ3dWR0FVRHMyS25lTHdI?= =?utf-8?B?cW9udnI2U1ZqdEZDUXY2MkxvelhTL0pTbjY4aGpPZ29TQmorRTM5SGpLdjdy?= =?utf-8?B?cmN2aUtHcU8vdXA4ZXNZd3ptKzBLdG9EbHNtSWRYK2hkWTlxMDZnck00dG1J?= =?utf-8?B?ZkJxN3hReGVFTm1NSWtOVDhyVjhHUHdNZjNvcFJTcWlsRGFKbVZJbmZsdE9v?= =?utf-8?B?alhMVzNOOFNEeGR3MHZ2TG9vNFZ2dzY5VkdnV0Z2Qjhka2dFdEJkVk8yczgz?= =?utf-8?B?cmJDS1IrMjNiemlPalNHTkM2c01GcklteEZQOGM5RnpYMnY2ZW9rUHZWNW5v?= =?utf-8?B?eWV0dURVZGJxSXB5cTlrc1duU1VENVEwUTBxZFdxOUZ3N3BFT29PenhKNm5H?= =?utf-8?B?TkVBR3RLQy9JUnRYZGhSVURCcmJ6N3h4S1NIMXlEUWdtVHBVOEpsSlU1VzlH?= =?utf-8?B?TDJpTWxNMkpKYTVDVjYvVlFVeEwzVjZRL0xkTHRiczNUeWdhN01RRVdrVnpS?= =?utf-8?B?SFY2R3ExNmlQbGdoUGhiMDA4c1ZzQUtZM0dmSjV1S3kzcTYrOEZhOTc3OHVS?= =?utf-8?B?YkZvTHlndUQ1R1k4WmgxbG5xY21wNENsR2hWTTIzcGpaN1BmQ0NOQmRDQ3Zq?= =?utf-8?B?Vlh3MEV3Sk95ejBmUnltMWtiaVgrbnJON1lxbGo5UkUxNDAwNjYvWGhTZFhT?= =?utf-8?B?NEVSMFRKQmdYZ1pTQktqZitnOXpFOTN1RmtPVkh5L1I4R2hPQ1E5blZQUHk3?= =?utf-8?B?WHNsZHJOWitzNWtYSVpYbW1wODJJNUZ2Mll1RFpJZE00QXltc3RZbWpiRFhZ?= =?utf-8?B?aEhvUlBZQ2tTdlh3K0tFL0I4a1RFd3kzbHVOQ1Jkc3ZxemgwcDRQR3BuaEpm?= =?utf-8?B?UW5IQ21uK1poVWpvWjlXRXFva08wS3hoaDJJVjJXTjZOeEtmYnJwU3gwSGJu?= =?utf-8?B?YmllMnhjWGd6WThwU3czYzgrRW9iNzloSGE3aDVNcGhuY045YUliU01ZZ0NV?= =?utf-8?B?eW1xMFduOWVWZ3l6c3JndnFCb3BCVmMyMnNmV2J3Y1VNYU9pbUxHQ2RXT1Z4?= =?utf-8?B?VkE9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: 7eWLaGWdOIsizaj7RqDBXnHu4avHQ9H8IqWDzPh57QLYThxYxz+34/umrV6eCiF5CYMSfkM2i4haa/k/iMT39IoXh36mtT4NPIDMrFZSqOANlfWvvwkiw3aOSsAYVW4H5D972B2keURWJLv7UwvRzqAkLtzhhOn9/qmOdoM53a4Mzxq1hp28GoDMdxM+E/l/sJddJ0YHxnNIpId5eZJzA/pFGUDwc/WdLPzO9cVaf7AYycGL2GFkLe4hK/cfD0Pl6sCP72Ll6LEOeuaF2GCZsiC17Lc3HSOLainJyZEsEGAVTVlUiuwC6/yeRalu7+TEfHvFOWwvOvNPVyKM2XqruG5u0W+o/47F1ulCuR9frMl+qQd/4UuERjF7mFgGKFIt+zolbXpgnGHwpxL3YSKKXoieWCOOzDeUQ7oEON+EyzSyyaAx0X2z8aI8+uOwwYAydqMBt8Jm6Ysna0hi5XyFfw/KLlWMF7jRsbx8F+jjL/R86aWcyqkyWZmqElWUWtJ3eBZL86QiqqaZ/FenCd3Bw3V4XPy9CXtjvC7PMvzzWdE4vXo9i8yLWtZBVfP2nyfjnt0qIo9CbKwGjNFs+UPxj9iHspudmWXp0VNhOvW2c/1JZgH3RCFQ+QMsu8NWwbWUtlIBmhoXMspHYo3pJej0u/6WSrMks8osV8ENCrfXdrKKMjILscGVGvfNohJzGPlN0mRr4DTJLYD63UMwjZm2WF41VvucMGsaFBJFF3TWruBd/iUCUe6rdpFofmbL3bfB9KncFjOxckpUzu8BCO0/jSeBd8MF8rF4N7XLBfVbsYftRgJ4o1pO4SxvwpjTsd8q X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 0c00c57b-4a6e-4765-7711-08db63714cc5 X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Jun 2023 13:57:27.8187 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: JGMZEfceI/GAWsXgqb3d9hFBZjO1aC/9oWJfMNpWx9w0BW11k6PXcajY8/vYqZsApDB+XvPjuRTO9FqjTOl1e9yu5a+kQA3SusMwJLqbyQs= X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR03MB5805 On 02/06/2023 10:56 am, Jan Beulich wrote: > On 01.06.2023 16:48, Andrew Cooper wrote: >> @@ -593,15 +596,85 @@ static bool __init retpoline_calculations(void) >> return false; >> >> /* >> - * RSBA may be set by a hypervisor to indicate that we may move to a >> - * processor which isn't retpoline-safe. >> + * The meaning of the RSBA and RRSBA bits have evolved over time. The >> + * agreed upon meaning at the time of writing (May 2023) is thus: >> + * >> + * - RSBA (RSB Alternative) means that an RSB may fall back to an >> + * alternative predictor on underflow. Skylake uarch and later all have >> + * this property. Broadwell too, when running microcode versions prior >> + * to Jan 2018. >> + * >> + * - All eIBRS-capable processors suffer RSBA, but eIBRS also introduces >> + * tagging of predictions with the mode in which they were learned. So >> + * when eIBRS is active, RSBA becomes RRSBA (Restricted RSBA). >> + * >> + * - CPUs are not expected to enumerate both RSBA and RRSBA. >> + * >> + * Some parts (Broadwell) are not expected to ever enumerate this >> + * behaviour directly. Other parts have differing enumeration with >> + * microcode version. Fix up Xen's idea, so we can advertise them safely >> + * to guests, and so toolstacks can level a VM safety for migration. >> + * >> + * The following states exist: >> + * >> + * | | RSBA | EIBRS | RRSBA | Notes | Action | >> + * |---+------+-------+-------+--------------------+---------------| >> + * | 1 | 0 | 0 | 0 | OK (older parts) | Maybe +RSBA | >> + * | 2 | 0 | 0 | 1 | Broken | +RSBA, -RRSBA | >> + * | 3 | 0 | 1 | 0 | OK (pre-Aug ucode) | +RRSBA | >> + * | 4 | 0 | 1 | 1 | OK | | >> + * | 5 | 1 | 0 | 0 | OK | | >> + * | 6 | 1 | 0 | 1 | Broken | -RRSBA | >> + * | 7 | 1 | 1 | 0 | Broken | -RSBA, +RRSBA | >> + * | 8 | 1 | 1 | 1 | Broken | -RSBA | >> * >> + * However, we doesn't need perfect adherence to the spec. Identify the > Nit: "don't" or "it"? Oops.  This used to read "Xen doesn't need".  So much for last minute changes. > >> + * broken cases (so we stand a chance of spotting violated assumptions), >> + * and fix up Rows 1 and 3 so Xen can use RSBA || RRSBA to identify >> + * "alternative predictors potentially in use". > Considering that it's rows 2, 6, 7, and 8 which are broken, I find this > comment a little misleading. To me it doesn't become clear whether them > subsequently being left alone (and merely a log message issued) is > intentional. It is intentional. I don't know if these combinations exist in practice anywhere or not.  Intel think they oughtn't to, and it's quite possible that the printk() is unreachable, but given the complexity and shifting meanings over time here, I think it would be unwise to simply assume this to be true. But at the same time, if it is an unreachable code, it would be equally unwise to have a load of fixup code which we can't test.  I've still got the fixup code in a separate patch incase we need to put it back in. I have checked that this printk() doesn't trigger for any of the CPUs and microcode combinations I have easily to hand, but it's not an exhaustive test. > >> + */ >> + if ( cpu_has_eibrs ? cpu_has_rsba /* Rows 7, 8 */ >> + : cpu_has_rrsba /* Rows 2, 6 */ ) >> + printk(XENLOG_ERR >> + "FIRMWARE BUG: CPU %02x-%02x-%02x, ucode 0x%08x: RSBA %u, EIBRS %u, RRSBA %u\n", >> + boot_cpu_data.x86, boot_cpu_data.x86_model, >> + boot_cpu_data.x86_mask, ucode_rev, >> + cpu_has_rsba, cpu_has_eibrs, cpu_has_rrsba); >> + >> + /* >> * Processors offering Enhanced IBRS are not guarenteed to be >> * repoline-safe. >> */ >> - if ( cpu_has_rsba || cpu_has_eibrs ) >> + if ( cpu_has_eibrs ) >> + { >> + /* >> + * Prior to the August 2023 microcode, many eIBRS-capable parts did >> + * not enumerate RRSBA. >> + */ >> + if ( !cpu_has_rrsba ) >> + setup_force_cpu_cap(X86_FEATURE_RRSBA); >> + >> + return false; >> + } > No clearing of RSBA in this case? I fear we may end up with misbehavior if > our own records aren't kept consistent with our assumptions. (This then > extends to the "just a log message" above as well.) Well quite, which is why I've gone to lengths to state what our assumptions are. Right now, there is nothing in Xen itself where RSBA vs RRSBA matters.  Until this patch, we don't even have cpu_has_rrsba, and remember that Xen was not vulnerable to CVE-2022-29901 (Intel Retbleed) because we chose to use the microcode IBRS implementation on early Skylake, rather than hope that Retpoline was safe enough and go with the faster option. In v1, having RSBA and RRSBA (working as I thought they were supposed to work) *did* matter for the default cpu-policy derivation to work nicely. But that was invalidated by the clarification to say that RSBA and RRSBA should never be seen together, which in turn completely changed the derivation logic. In v2, it doesn't matter if Xen ends up seeing both RSBA and RRSBA.  It explicitly can cope (by treating them the same WRT Retpoline), and the derivation logic now calculates both completely from scratch (and based on RSBA || RRSBA). If Xen's assumptions change, then of course we could end up with misbehaviour, but I think it's unlikely, and I don't think this code is any more liable to misbehave than anything else in spec-ctrl.c. > Also the inner conditional continues to strike me as odd; could you add > half a sentence to the comment (or description) as to meaning to leave > is_forced_cpu_cap() function correctly (which in turn raises the question > whether - down the road - this is actually going to matter)? Look at the single user of is_forced_cpu_cap(). I am not micro-optimising a single branch out of the init section on the blind hope that the contradictory behaviour it creates won't matter in the future.  Every forced cap is an abnormal case, and it's almost certainly my future time which will be spent unravelling the contradictory behaviour when it comes back to bite. >> + /* >> + * RSBA is explicitly enumerated in some cases, but may also be set by a >> + * hypervisor to indicate that we may move to a processor which isn't >> + * retpoline-safe. >> + */ >> + if ( cpu_has_rsba ) >> return false; >> >> + /* >> + * At this point, we've filtered all the legal RSBA || RRSBA cases (or the >> + * known non-ideal cases). If ARCH_CAPS is visible, trust the absence of >> + * RSBA || RRSBA. There's no known microcode which advertises ARCH_CAPS >> + * without RSBA or EIBRS, and if we're virtualised we can't rely the model >> + * check anyway. >> + */ > I think "no known" wants further qualification: When IBRSB was first > introduced, EIBRS and RSBA weren't even known about. I also didn't > think all hardware (i.e. sufficiently old one) did get newer ucode > when these started to be known. Possibly you mean "... which wrongly > advertises ..."? ARCH_CAPS equally didn't exit originally.  ARCH_CAPS, RSBA and EIBRS all appeared together - see how they're bits 0 and 1 in the MSR.  RRSBA on the other hand is bit 19, which gives you some idea of how recent it is. The original intention (AIUI) was that ARCH_CAPS would only exist in CLX/CFL-R and later which had EIBRS.  But it had to be retrofitted to older parts in order to enumerate energy-filtering to fix the RAPL attack against SGX. The guidance (again, AIUI) was always that if you can see ARCH_CAPS you should trust the value, if for no other reason than "your hypervisor will want you not to use a model check".  And this is also why it's taken so long for us to ARCH_CAPS advertised - advertising ARCH_CAPS and getting RSBA wrong is worse than "sorry, you're on your own". None of this is perfect - it was put together in reaction to emergency situations, where "doing the best we can, urgently" is far more important than missing the deadline. Personally, I don't think the RRSBA bit is useful, and I argued against introducing it.  It literally means "RSBA, with EIBRS restricting which alternative predictions to select from", and IMO adds complexity with no benefit.  But others wanted it, and the rest is history. > >> @@ -689,6 +762,15 @@ static bool __init retpoline_calculations(void) >> break; >> } >> >> + if ( !safe ) >> + { >> + /* >> + * Note: the eIBRS-capable parts are filtered out earlier, so the >> + * remainder here are the ones which suffer only RSBA behaviour. >> + */ > As I think I had mentioned already, I find "only" here odd, when RSBA > is more severe than RRSBA. Maybe the "only" could move earlier, e.g. > between "are" and "the"? Then again this may be another non-native- > speaker issue of mine ... Well, that is something which has arguably changed between v1 and v2. Originally, this was really just the Broadwell and Skylake case, and the point was to explain why we weren't adjusting RRSBA too. But yeah, I think the "only" can be dropped given the other rearrangements in v2. ~Andrew From xen-devel-bounces@lists.xenproject.org Fri Jun 02 14:07:46 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 02 Jun 2023 14:07:46 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543150.847857 (Exim 4.92) (envelope-from ) id 1q55RC-0004q5-Vn; Fri, 02 Jun 2023 14:07:30 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543150.847857; Fri, 02 Jun 2023 14:07:30 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q55RC-0004py-TC; Fri, 02 Jun 2023 14:07:30 +0000 Received: by outflank-mailman (input) for mailman id 543150; Fri, 02 Jun 2023 14:07:29 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q55RB-0004po-KY; Fri, 02 Jun 2023 14:07:29 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q55RB-0004ta-Bs; Fri, 02 Jun 2023 14:07:29 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q55RB-0005CR-2c; Fri, 02 Jun 2023 14:07:29 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q55RB-0000QF-23; Fri, 02 Jun 2023 14:07:29 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=z6arsoXNpN7KG4MwWezqhV8dFZRWzkQQ/2ubn1U+QGI=; b=P/fCSwr2MtOf2oIJyRti2Z0Tf5 7vBh55K5Dhd7FeOxp+Xvx4Emd1B8sk6ml3i5GgVuD1DIPaLzMN0xVTBHge9JSlPt76UAAK2d6qBkA o5UAimZTEdZzc4fSl66kVRcnMpzZWOn4P7cMBssJ0zOdX1XZf56sJLoJbbTz+QO++9H0=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [libvirt test] 181102: tolerable all pass - PUSHED X-Osstest-Failures: libvirt:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking libvirt:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking libvirt:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking libvirt:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking libvirt:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking libvirt:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking libvirt:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt:saverestore-support-check:fail:nonblocking libvirt:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking libvirt:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking libvirt:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking libvirt:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-qcow2:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-qcow2:saverestore-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking libvirt:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking libvirt:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking libvirt:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking X-Osstest-Versions-This: libvirt=1c7335add9e28637d8a8b5039f487e5dc6a591c2 X-Osstest-Versions-That: libvirt=c47e17689e3309e544b59f5a9eb7b9d668967787 From: osstest service owner Date: Fri, 02 Jun 2023 14:07:29 +0000 flight 181102 libvirt real [real] http://logs.test-lab.xenproject.org/osstest/logs/181102/ Failures :-/ but no regressions. Tests which did not succeed, but are not blocking: test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail like 181066 test-armhf-armhf-libvirt 16 saverestore-support-check fail like 181066 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail like 181066 test-amd64-i386-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-i386-libvirt 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt 16 saverestore-support-check fail never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-i386-libvirt-raw 14 migrate-support-check fail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-qcow2 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-qcow2 15 saverestore-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail never pass test-armhf-armhf-libvirt 15 migrate-support-check fail never pass test-armhf-armhf-libvirt-raw 14 migrate-support-check fail never pass version targeted for testing: libvirt 1c7335add9e28637d8a8b5039f487e5dc6a591c2 baseline version: libvirt c47e17689e3309e544b59f5a9eb7b9d668967787 Last test of basis 181066 2023-06-01 04:18:54 Z 1 days Testing same since 181102 2023-06-02 04:20:20 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Jiri Denemark Ján Tomko Michal Privoznik Temuri Doghonadze jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-i386-libvirt-xsm pass test-amd64-amd64-libvirt pass test-arm64-arm64-libvirt pass test-armhf-armhf-libvirt pass test-amd64-i386-libvirt pass test-amd64-amd64-libvirt-pair pass test-amd64-i386-libvirt-pair pass test-arm64-arm64-libvirt-qcow2 pass test-armhf-armhf-libvirt-qcow2 pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw pass test-amd64-i386-libvirt-raw pass test-amd64-amd64-libvirt-vhd pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Pushing revision : To xenbits.xen.org:/home/xen/git/libvirt.git c47e17689e..1c7335add9 1c7335add9e28637d8a8b5039f487e5dc6a591c2 -> xen-tested-master From xen-devel-bounces@lists.xenproject.org Fri Jun 02 14:22:55 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 02 Jun 2023 14:22:55 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543159.847874 (Exim 4.92) (envelope-from ) id 1q55fo-0007MW-GL; Fri, 02 Jun 2023 14:22:36 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543159.847874; Fri, 02 Jun 2023 14:22:36 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q55fo-0007MP-DY; Fri, 02 Jun 2023 14:22:36 +0000 Received: by outflank-mailman (input) for mailman id 543159; Fri, 02 Jun 2023 14:22:34 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q55fm-0007MJ-MR for xen-devel@lists.xenproject.org; Fri, 02 Jun 2023 14:22:34 +0000 Received: from esa2.hc3370-68.iphmx.com (esa2.hc3370-68.iphmx.com [216.71.145.153]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id e8013fc3-0150-11ee-8611-37d641c3527e; Fri, 02 Jun 2023 16:22:31 +0200 (CEST) Received: from mail-mw2nam12lp2042.outbound.protection.outlook.com (HELO NAM12-MW2-obe.outbound.protection.outlook.com) ([104.47.66.42]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 02 Jun 2023 10:22:28 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by MW4PR03MB7012.namprd03.prod.outlook.com (2603:10b6:303:1a7::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6433.26; Fri, 2 Jun 2023 14:22:26 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::10bb:98bc:e36d:36ab]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::10bb:98bc:e36d:36ab%3]) with mapi id 15.20.6455.020; Fri, 2 Jun 2023 14:22:26 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: e8013fc3-0150-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1685715751; h=message-id:date:from:subject:to:cc:references: in-reply-to:content-transfer-encoding:mime-version; bh=RTQQXz0CdsasnZBTkyMnFyTYpc3MSjySdr1fmUM7CE8=; b=A1vtgZlNKAw6fj1PSScW5iZ7cNIdMn5MNpRjN0xhC9wn3tGrYrSu9f+k EZrUkXr+aGSzXwpLA0qZ9aGghQaZ50yLux0iDmCu+fuF3PvH1rQPtuOj4 hi3XaYYC56URFF2SFt9yAw7rvr97RWDihJTFTqXX9GethA/TZNvXzjWjR 8=; X-IronPort-RemoteIP: 104.47.66.42 X-IronPort-MID: 111260361 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:xTjO4qB/c6VUoBVW/+jiw5YqxClBgxIJ4kV8jS/XYbTApGgh0WEAy GdJCz+EOvjYYmPyfNhxbt6+p0gO75bUztNqQQY4rX1jcSlH+JHPbTi7wuUcHAvJd5GeExg3h yk6QoOdRCzhZiaE/n9BCpC48T8nk/nOHuGmYAL9EngZbRd+Tys8gg5Ulec8g4p56fC0GArIs t7pyyHlEAbNNwVcbCRMs8pvlDs15K6p4G1A5ARlDRx2lAS2e0c9Xcp3yZ6ZdxMUcqEMdsamS uDKyq2O/2+x13/B3fv8z94X2mVTKlLjFVDmZkh+AsBOsTAbzsAG6Y4pNeJ0VKtio27hc+ada jl6ncfYpQ8BZsUgkQmGOvVSO3kW0aZuoNcrLZUj2CA6IoKvn3bEmp1T4E8K0YIwo8s0WyZz0 v0hGhNWUgmq3tiS+6C1Rbw57igjBJGD0II3nFhFlGucKMl8BJfJTuPN+MNS2yo2ioZWB/HCa sEFaD1pKhPdfxlIPVRRA5U79AuqriCnL3sE9xTL++xruQA/zyQouFTpGPPTdsaHWoN+mUGAq 3id12/4HgsbJJqUzj/tHneE37aWx32jA9xLfFG+3qFHhWKQ5X42MjQfD127/f/60nSxHM0Kf iT4/QJr98De7neDR93wXRS+rGSD+AAVX95dEeoS4wWK16aS6AGcbkAUQzgEZNE4ucseQT0xy kTPj97vHSZosrCeVTSa7Lj8hTG4NDURLGQCTTQZVgZD6N7myKksijrfQ9AlF7S65uAZAhn1y jGO6S0h3bMaiJdR073hpQydxTWxupLOUwg5oB3NWX6o5R94Y4jjYJG07V/c7rBLK4PxokS9g UXoUvO2tIgmZaxhXgTUKAnRNNlFP8q4DQA= IronPort-HdrOrdr: A9a23:9v5c/aA5WBjKLvzlHelw55DYdb4zR+YMi2TDtnoBMiC9F/byqy nAppomPHPP5Qr5G0tQ/exoQZPgfZqEz/5ICOoqTNWftWvdyROVxehZhOOJ/9SHIVyaygc378 hdmsZFZOEYQmIK6voSTTPIdeoI0Z2syojtr+Hb1nJsRQZhZ+Vb6RtjAArzKDwUeOADP+tBKK ah X-Talos-CUID: 9a23:ySZCWm88SpN9F21v/KKVvxc5WZpiT1rc9UXzeHOhID9TbIaHR1DFrQ== X-Talos-MUID: 9a23:ttLCNQig8a+K/ov1vEvodsMpa+pt3KeNGmU3uJxcvcnYM28oATjak2Hi X-IronPort-AV: E=Sophos;i="6.00,213,1681185600"; d="scan'208";a="111260361" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=CNvgfXVtrjmxdxS5O18YkfP1kh8lIsh/eckW6Q2mS9uvbaxIem2vdxAtVP3cXaaBzS/jSXcObR3Dn3Ysg3O/PfmE66Xp0XplQPFzwaQjtPnqtsOx871Sbc2Y/KbIpsFVfP8HXsyLtrExSSc2atMrmzR9f6eBgjooTL/78zDIPHg4LwdIDp57sJvM0NW7wzF049kyBnfmivZ1ZPZLARcQ35GMEOvtbIucc8tpeywDQkR6hqYlC0YtG3UkhlJZXshf/uqqbui4Nr0jMjrxdiiXNXLK2SpBuxxOHZfqGPHKBaREdtusQbST956pAvvPkFolquHlFCeGP8IdX27Yzy4ufg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=lZQRs8n01FgUcTdtldb14zaD/VwkgPSJCxa4eRxeYXk=; b=ex7DCj1u5B7Lx0v80d0nUQ77SxZJwVZiRxY7IYgGCZsn06CdW9cnEQ+pWoE/i4FDl242pT01kUxEbumUPt5DhCql5iDIFADS7Fi9qw0HtXEJw1M9qci6IlLESK4C1NFQulfNXWZgBwZcuxtL+YqFQa5y2jWX296JHKaAUazwJgiv6hLwq9aTyN4xGEQ8ZD7K/GCMUGxKr96VdEhpHvUXKKFCbkzDtKagJM3kWmG3Q/lbfxiGrhFNfbsMRqYVvMTgAwX65rj+hnoTxTebX3CNwyzwzNkO3TdfdaCTikKsDo4fVqiHH49Qx2BfEAhL/gM6AaFbIJNQ1i5sjoNw0lra+Q== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=lZQRs8n01FgUcTdtldb14zaD/VwkgPSJCxa4eRxeYXk=; b=uzTjELtk9nt/4NPa9r59mhwhGuEa60TYUlwA2bTjeN66qZ/0ws/yCrBIUicuDlqHUg3lAtK4BDWi2k6DLy2smcl9rOp9nomRsssL2DvckR++QV0gZKFp0/nBOjq/7DVicuHkoaEGdCr4KZo9pRgeLycIPM37LoHrbE5si29EZC0= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: <55945272-58d8-3dd3-19a4-0dea9be1db6d@citrix.com> Date: Fri, 2 Jun 2023 15:22:20 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 From: Andrew Cooper Subject: Re: [PATCH] x86: Add Kconfig option to require NX bit support Content-Language: en-GB To: Alejandro Vallejo , Xen-devel Cc: Jan Beulich , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu References: <20230601174327.11401-1-alejandro.vallejo@cloud.com> In-Reply-To: <20230601174327.11401-1-alejandro.vallejo@cloud.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO4P123CA0063.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:153::14) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|MW4PR03MB7012:EE_ X-MS-Office365-Filtering-Correlation-Id: b2737d2c-ce50-4572-7cb7-08db6374ca30 X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: /xgzyLDMeT2T8cF35a/ccZ+hH0Ia7N3tLd+ONlaS+CIDI0C/R4ynKT7/YNxFh3KAuqRpZrh2h6dnsd5OnCbRQV6vmhE3JpomdOhxzB8++NchUkwKf0fRD9C+sn0O/Vm5fOM2cDPV6ULVAlrKyqaQ03Y2BMH8uJ2RTY1h+tAG4bm8+6rqnIZj+RRPM/l9NCQi3DbMo6cblH9aSEam9lKmPKlE+bU6fORHK7O7bdm6DhrJ6GIVuaFLllFFr4efp+KqEe1sRltZUOmV8E2zXFbZtXbHMatZBa0nRlejpEUokGYw9zvdMOb/cBo1vaOeOLnHL+DZ6kMWC4GpX1nc4pjfo0PVODHg0MSv67eo0L0JcbzTu+Mw44ew4SlryrBBNlI5T/NlcLbaPwu4yu/BYaSNoKQ5zlWwzouVYyd2SDsSzRKiI/f4glf+GSfkWQPA6uNE/7LDcGr3cvHxXQk4BFXUir0oGAZ3m5SQs3Pycavflek+a5eedCrRTLKhWqc31z/Zd1pOkiOeucUSxISzCCmDLIkiP/JB8uJ1Fo/3JFXOfc00MGhACoiOXVQFEBQplDY50+AObsk/nMw8uW+b0MEqBHtf0sSC2py9hLP9jI5tpEk= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(136003)(366004)(376002)(396003)(346002)(451199021)(26005)(5660300002)(8936002)(6512007)(8676002)(82960400001)(38100700002)(53546011)(83380400001)(186003)(2616005)(6506007)(2906002)(316002)(6666004)(6486002)(4326008)(66556008)(66476007)(966005)(31696002)(66946007)(41300700001)(86362001)(36756003)(110136005)(478600001)(54906003)(66899021)(31686004)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?a2RRbDgxUzR5eTlEVGNSanlKQmpkS3J1ZFdRZlJ5dmpoQ3kyb201TnBkb0Q2?= =?utf-8?B?SWNPQTMzd21VRGVUYUczaFNrdnVleFNTZklGckhiSjVRbnZMT0ZLblJ4blI4?= =?utf-8?B?U0tGK29zTDc2NHk4aHlNQ3VRSDNidmJ6bExtNXRRV3FGU0h3TXVVRURFa1Ux?= =?utf-8?B?bGI0b1JwTlN5ZlhYVC9Ba1RSWXpYUVhNa1R1VzZJaGY4ZW84SlVtZzMwYk5m?= =?utf-8?B?NXk1amJnTUtSd1ZLWkozVHNLUUd5S2FQUXlZbm9TeEt5TzRocWVWOXZUUjNV?= =?utf-8?B?akViSjVQQXB1YVpjWXpqVFh1ZE5oSC8yWTZ2UUcvN0JTV3BiSlplZWpDSHpO?= =?utf-8?B?TDBveGVoUjkrQ1N4cGFqZG0zOWRBQlk4c3pXdFFQc2FkWDNxMUh5QzIvaU5j?= =?utf-8?B?VEFLL3A0UFo3WjBWM1dzUWNFVEp3OHFONnZoVFJKQ3dMa3FWbXd3dU5lNThU?= =?utf-8?B?YmZ3Z3NtZkhnYWloV1ZLTUpmYUFmdVBUc1NKWkp1TzJTc1h2WXMwV2lBVGI1?= =?utf-8?B?MEM1SWNCMVkxL2xHY0pvYmJMTnAzTHZRcGJ2ZkJGR1BjU3RabWR1Z1JlVkRI?= =?utf-8?B?cnZtQk1NV3Rzalk3dWlvb0ZlSnIxYlN1RkcwRDdwSXVhMXZpUmQvN2ZpaGx6?= =?utf-8?B?TTRPeHlwMkFSNENuQWNqa2hOelViUjJNZjhSS1AxRHNuZ3VOZW5xVHpybmFl?= =?utf-8?B?SUZzV3J2dnBXbmhVd2Y2YzFKMm5xWW83YVZJTnJlVmNkVmtIOXlqWHpJSHdM?= =?utf-8?B?ODdZV3BhMWdiMldkbnRQZW9BbUR5VnVyQ3JCeTYzSStPK1dNMXpZL0ZybGRW?= =?utf-8?B?RFQ4TkloYjlOb0Z1YzJlSTF0SXg3dGFjOTdzcG1NQ3NYSUlydGtzZUh5bmNo?= =?utf-8?B?UGRFbUk3NllVSnRzKzBSaTdXbExnNU9lSTJ6RisvK210ODZNOENkSHZneUUz?= =?utf-8?B?cjRmUjZNUlVwNWdZdFpjYUdsRVc4aTFQdUNWRG1VY1N6bytmcHR2SG9WSlRG?= =?utf-8?B?bng5MHZwWE5OeSs5V3pBcEhDYjd5OWYvRVZIQWNuQU9SU0hMQi94TWp5TGhK?= =?utf-8?B?MmFBRVlremY2VElnbGFQaHhFNG41cWM0Z2ZCSVo0Qkx6ZHVsaDllMzJCTStx?= =?utf-8?B?SXNLK0hvYUQyS2hlSnFyOVhpRkdLZzVxdEtNVTR6ei9USytmTUNYTE1vNENO?= =?utf-8?B?R0VTU25KS0krYlBhUWFRRE5JR3M5enBIekxocktIWTJBMkx3THdVR3BzTnEy?= =?utf-8?B?cWdiUGV3cFdwZmZ4Y0Z6M0VTZE9JYi9aanNnOE40QjlZa3hXcmQxRFc0MmFk?= =?utf-8?B?d0JzYWVqMDgxS0RLVHpEc2FEK3k3ZW9EdSs4ZjJ6S3lVMS9XWHovWFdTUUdk?= =?utf-8?B?czRCMlBuY2JFQkxYTTZJTDlzcSt0SGpjbTdqTW9wcXFCL2JYTDlDT1Rrcmcr?= =?utf-8?B?Ly9DYUE5QWJUT1hhQ2loZkI5TVFkNk44Z3FNVmVnVHBBOXRxczJ3R0twdGJu?= =?utf-8?B?TTZKUmFkeUNXejBLUnRYdncxTW5mQ3dyUzJyR3B5aS92SEVXU2pEalM1aThG?= =?utf-8?B?ZVBaR2JvVnU5bGJrVTN5SlZEMmdQdGgyZDArOHVvL3JNbTNvcXFCaG00SVhX?= =?utf-8?B?TjErdHhEQ0dqbzQ5N2FVS0RmT29sOEFWbVkrODdwamExN0NuWkV1OThjdkVw?= =?utf-8?B?S09EVHdKWldBTGZjcm9yUUJ6c05hZjRaSjRiVnJaV0RaYS9FUWMzaUdLeTR2?= =?utf-8?B?WXFtYVowQ0NoK3BmODVDZ2U5OW1WYnc2UEduZ0h5K3hsVFc0amJDWnpYSUFq?= =?utf-8?B?MEVTODlwOHJGZkJxVHhCV2NadnlvcGw1cTRiaGZjTU9jM3lLWW5keTJGdC9x?= =?utf-8?B?WUtMZXdGM3FmalNLRGl5bHl5TmMvUGVQZkQzUGZnVzlsZWUyODRtUG5zSkxC?= =?utf-8?B?SkI0Mm5qZHBxbGpXRWI2b1hwWmhKUVpPRk1GWG9tcUFTM0RMaGVxVDl3Q0Uz?= =?utf-8?B?WW14MkFZVDRxRnl1WDRkc3ZISk9TdG4wQi9mQ2dSRlZYWlNCZGNhTWZMS1Nv?= =?utf-8?B?amxoZkJ1SzBvbngvSHc2NHR2Mnl3WThHV3UyWXlZVzhTLy9mOForYkRuelZ0?= =?utf-8?B?bk9HK3QweFc1SjRHQ1RHVTEySmg3TThaYkxCc2hEcWsrWG1tWVZ3V2RZTWNO?= =?utf-8?B?ekE9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: +eC/fZcm7RmsqVPMbhGNZjAWN7LM39bH0Mc6guceGvxF6lcs1vxQUQYCVLQCBV5w2UISdrjZccQR7hJLU7XdE858uoM0EeQtXlCifGtRVvAtx8Xu0fNbfd0PX3szHBKVF3RLLyIdJ8RcyQRCcjr/bHFhAO4L8oxrULsK29mD3btrequeNqscMo2dPwOxI29R7/h6PUH/fZc4FCyIgFC3CJsSVyiruXY//PpMTxPUvOPhV0E5csi1xkGr9c/ypHFzms4KKpW3JJftmmbbjjkICji58kFiVTsOI9/vLJgUBQo+leLQpCkHvNfUxCltRbtt3fnFSf042VcpKteJTyuGEKEFsaj9ZsNfvbyW5rFV3CKETmPYOW158Q9yH89b0urWBioh02njZoMjVZnLFylwVy408cx/AYVQZwhciv9YToklXskuSL9YhFZrfSNNzs8M8elzIhVO2TNdJsIStFaE/vpdXOT1Es+/tIxH+4a/J8vSdxbZdHMkhQj/xoNr18oyfj6PPUYMBTHqNUl8zApY7UQ0r9nZaRf8dKHy06VM0SiRLpzxY+TfmfHXhSz4JLJHUgecN7599kewwXng3W7UgQF5v8cX9X3CHrlmMSsCvx8VRrxvsdis9KiFP7r5yyf7ML63Q5dxJQlsHJaoA3HvuboPczZcJLmzWHQng9vhAcKsZWdLhsRvBNil2q4hdt2b4/TKt6Vns2Uwb6FcY8sDHSwUW+XxHuz4PicsPuMTjYkJbrxT6JGCd/YEHRFe9ZkX857B169QHHVjvDXGDOCfg/RoEncWKmZL+ZYa4YCSaQ49ENmy5h1a49vMgE4BnNYAiYUDWxAcROMdSUYBkI7aufOw9llrAKm7/tKjCP/3nfk= X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: b2737d2c-ce50-4572-7cb7-08db6374ca30 X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Jun 2023 14:22:26.5831 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: UZCLl8WssbH0UvPVcyKRgVPfM/G4t9PhpfOsWHl20biyj4EKh2hZiaJUOUHJ52iW88Fz5EpV2BOThf1rLpGOZPBdXXA8dTAyQxh3Q7SwnoI= X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW4PR03MB7012 On 01/06/2023 6:43 pm, Alejandro Vallejo wrote: > diff --git a/xen/arch/x86/boot/head.S b/xen/arch/x86/boot/head.S > index 09bebf8635..8414266281 100644 > --- a/xen/arch/x86/boot/head.S > +++ b/xen/arch/x86/boot/head.S > @@ -647,11 +653,18 @@ trampoline_setup: > cpuid > 1: mov %edx, CPUINFO_FEATURE_OFFSET(X86_FEATURE_LM) + sym_esi(boot_cpu_data) > > - /* Check for NX. Adjust EFER setting if available. */ > + /* > + * Check for NX: > + * - If Xen was compiled requiring it simply assert it's > + * supported. The trampoline already has the right constant. > + * - Otherwise, update the trampoline EFER mask accordingly. > + */ > bt $cpufeat_bit(X86_FEATURE_NX), %edx > - jnc 1f > + jnc no_nx_bit > +#if !IS_ENABLED(CONFIG_REQUIRE_NX_BIT) > orb $EFER_NXE >> 8, 1 + sym_esi(trampoline_efer) > -1: > +no_nx_bit: > +#endif It occurs to me...  This will prevent Xen booting in firmware configurations where XD-Disable is active, despite Xen having unconditional logic to turn XD off later in boot. Linux deals with this in verify_cpu() (early asm) along with a FMS check protecting the access to MSR_MISC_ENABLE, rather than using rdmsr_safe() and catching the #GP. In terms of which CPUs are a problem, we almost got very lucky.  NX is part of the AMD64 spec, and all AMD, VIA, Centaur and Intel Atoms have this property.  64bit and XD were both added midway through the Pentium 4 era, and appear in the Prescott E0 stepping. However, it appears that the prior stepping, D0, had 64bit but was only unlocked for certain OEMs.  (At the time, Intel were still trying to push Itaniaum as the future, and were trying hard not to go the x86_64 route.) Specifically, https://en.wikipedia.org/wiki/List_of_Intel_Xeon_processors_(NetBurst-based)#%22Nocona%22_(90_nm) is the suspected problem set. So, I think this does want to turn into a series, with the first patch moving the XD-disable logic into this path, after which I think there is a strong case to be made for defaulting CONFIG_REQUIRE_NX to yes.   ~Andrew From xen-devel-bounces@lists.xenproject.org Fri Jun 02 14:29:13 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 02 Jun 2023 14:29:13 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543163.847884 (Exim 4.92) (envelope-from ) id 1q55m5-00081z-6P; Fri, 02 Jun 2023 14:29:05 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543163.847884; Fri, 02 Jun 2023 14:29:05 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q55m5-00081s-3K; Fri, 02 Jun 2023 14:29:05 +0000 Received: by outflank-mailman (input) for mailman id 543163; Fri, 02 Jun 2023 14:29:03 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q55m3-00081i-5B; Fri, 02 Jun 2023 14:29:03 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q55m3-0005PF-14; Fri, 02 Jun 2023 14:29:03 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q55m2-0005pd-FU; Fri, 02 Jun 2023 14:29:02 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q55m2-00059F-F6; Fri, 02 Jun 2023 14:29:02 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=vUeQrpjg/uBQ3jnU5Ez+7r7wTxpR4vGvZi1Sa2ZTA3U=; b=Mw9PLbiY3FMYzB8BzFs0sgOYnl WMeMBY5YCoE1xrWMgd3kIa6giMM0qrbXaT4a5J+rBXBmPPNf8zg4dw8nJd0SCZJUYxLPOPKdw+J2B Fu5O8LnwkLCXUC4UD9clAbCOI6MDkqKH8ZJOY9Co2NAXoiplic9RJ3oX7dI5bcXjrtCA=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [ovmf test] 181111: all pass - PUSHED X-Osstest-Versions-This: ovmf=4354c22f38778a2bb4644d1f1f43a47e4313fe42 X-Osstest-Versions-That: ovmf=78262899d225eb30e5fbe6a88e85a4b1d8c04a61 From: osstest service owner Date: Fri, 02 Jun 2023 14:29:02 +0000 flight 181111 ovmf real [real] http://logs.test-lab.xenproject.org/osstest/logs/181111/ Perfect :-) All tests in this flight passed as required version targeted for testing: ovmf 4354c22f38778a2bb4644d1f1f43a47e4313fe42 baseline version: ovmf 78262899d225eb30e5fbe6a88e85a4b1d8c04a61 Last test of basis 181106 2023-06-02 07:40:45 Z 0 days Testing same since 181111 2023-06-02 11:40:43 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Ard Biesheuvel Gerd Hoffmann Marcin Juszkiewicz jobs: build-amd64-xsm pass build-i386-xsm pass build-amd64 pass build-i386 pass build-amd64-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-i386-pvops pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Pushing revision : To xenbits.xen.org:/home/xen/git/osstest/ovmf.git 78262899d2..4354c22f38 4354c22f38778a2bb4644d1f1f43a47e4313fe42 -> xen-tested-master From xen-devel-bounces@lists.xenproject.org Fri Jun 02 14:45:18 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 02 Jun 2023 14:45:18 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543169.847893 (Exim 4.92) (envelope-from ) id 1q561Y-00021j-Hx; Fri, 02 Jun 2023 14:45:04 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543169.847893; Fri, 02 Jun 2023 14:45:04 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q561Y-00021c-F6; Fri, 02 Jun 2023 14:45:04 +0000 Received: by outflank-mailman (input) for mailman id 543169; Fri, 02 Jun 2023 14:45:02 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q561W-00021S-IG; Fri, 02 Jun 2023 14:45:02 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q561W-0005q8-De; Fri, 02 Jun 2023 14:45:02 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q561W-0006Kw-3w; Fri, 02 Jun 2023 14:45:02 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q561W-0000v8-3U; Fri, 02 Jun 2023 14:45:02 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=fjt7BV03Ox/Q3+yadukAe5Z5ENqNLWw9sitnZGUXq60=; b=PGu1s3hyX1NqxhZDZZJF+Fbi4H NgDyPWvtlE9VWBQgjiU4dkdaoR9rvhnNfiRCYQ+36fXV8LPTRFRKVMVpHkukwHo8jF1s1SOeaqVRp ySQ0+jwY5Y1eDYJDXJDvgHCsi4l4YuZ8jVJphBL/mHXUUyMnb2xDZOwaukjAFmXYS3Oo=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [linux-linus test] 181100: regressions - FAIL X-Osstest-Failures: linux-linus:test-armhf-armhf-xl-credit1:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-vhd:guest-start/debian.repeat:fail:regression linux-linus:test-amd64-amd64-dom0pvh-xl-intel:guest-localmigrate/x10:fail:heisenbug linux-linus:test-armhf-armhf-examine:reboot:fail:nonblocking linux-linus:test-armhf-armhf-xl-arndale:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking linux-linus:test-armhf-armhf-xl-credit2:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking linux-linus:test-armhf-armhf-xl-multivcpu:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-raw:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-qcow2:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-vhd:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-rtds:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-qcow2:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-raw:migrate-support-check:fail:nonblocking X-Osstest-Versions-This: linux=9e87b63ed37e202c77aa17d4112da6ae0c7c097c X-Osstest-Versions-That: linux=6c538e1adbfc696ac4747fb10d63e704344f763d From: osstest service owner Date: Fri, 02 Jun 2023 14:45:02 +0000 flight 181100 linux-linus real [real] flight 181113 linux-linus real-retest [real] http://logs.test-lab.xenproject.org/osstest/logs/181100/ http://logs.test-lab.xenproject.org/osstest/logs/181113/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: test-armhf-armhf-xl-credit1 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-xl-vhd 21 guest-start/debian.repeat fail REGR. vs. 180278 Tests which are failing intermittently (not blocking): test-amd64-amd64-dom0pvh-xl-intel 20 guest-localmigrate/x10 fail pass in 181113-retest Tests which did not succeed, but are not blocking: test-armhf-armhf-examine 8 reboot fail like 180278 test-armhf-armhf-xl-arndale 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 180278 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 180278 test-armhf-armhf-xl-credit2 8 xen-boot fail like 180278 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 180278 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 180278 test-armhf-armhf-xl-multivcpu 8 xen-boot fail like 180278 test-armhf-armhf-libvirt 8 xen-boot fail like 180278 test-armhf-armhf-libvirt-raw 8 xen-boot fail like 180278 test-armhf-armhf-libvirt-qcow2 8 xen-boot fail like 180278 test-armhf-armhf-xl 8 xen-boot fail like 180278 test-armhf-armhf-xl-vhd 8 xen-boot fail like 180278 test-armhf-armhf-xl-rtds 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 180278 test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qcow2 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass test-amd64-amd64-libvirt-raw 14 migrate-support-check fail never pass version targeted for testing: linux 9e87b63ed37e202c77aa17d4112da6ae0c7c097c baseline version: linux 6c538e1adbfc696ac4747fb10d63e704344f763d Last test of basis 180278 2023-04-16 19:41:46 Z 46 days Failing since 180281 2023-04-17 06:24:36 Z 46 days 87 attempts Testing same since 181100 2023-06-02 03:25:50 Z 0 days 1 attempts ------------------------------------------------------------ 2584 people touched revisions under test, not listing them all jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl fail test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-freebsd11-amd64 pass test-amd64-amd64-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale fail test-amd64-amd64-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 fail test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 fail test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine fail test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-amd64-dom0pvh-xl-intel fail test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt fail test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu fail test-amd64-amd64-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-amd64-pygrub pass test-amd64-amd64-libvirt-qcow2 pass test-armhf-armhf-libvirt-qcow2 fail test-amd64-amd64-libvirt-raw pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw fail test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds fail test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-amd64-xl-vhd fail test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd fail ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 327552 lines long.) From xen-devel-bounces@lists.xenproject.org Fri Jun 02 15:08:14 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 02 Jun 2023 15:08:14 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543176.847904 (Exim 4.92) (envelope-from ) id 1q56Nn-0004eE-KS; Fri, 02 Jun 2023 15:08:03 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543176.847904; Fri, 02 Jun 2023 15:08:03 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q56Nn-0004e7-Gw; Fri, 02 Jun 2023 15:08:03 +0000 Received: by outflank-mailman (input) for mailman id 543176; Fri, 02 Jun 2023 15:08:01 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q56Nl-0004e1-Gp for xen-devel@lists.xenproject.org; Fri, 02 Jun 2023 15:08:01 +0000 Received: from smtp-42ae.mail.infomaniak.ch (smtp-42ae.mail.infomaniak.ch [84.16.66.174]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 43036eec-0157-11ee-b232-6b7b168915f2; Fri, 02 Jun 2023 17:07:59 +0200 (CEST) Received: from smtp-3-0001.mail.infomaniak.ch (unknown [10.4.36.108]) by smtp-3-3000.mail.infomaniak.ch (Postfix) with ESMTPS id 4QXmb25PBRzMpvbm; Fri, 2 Jun 2023 17:07:58 +0200 (CEST) Received: from unknown by smtp-3-0001.mail.infomaniak.ch (Postfix) with ESMTPA id 4QXmZy6vrvzMqFLN; Fri, 2 Jun 2023 17:07:54 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 43036eec-0157-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=digikod.net; s=20191114; t=1685718478; bh=yJE/Ib8CPqqu+pE7BkHIlxbJFGVwWpFIuzDHb02zjjk=; h=Date:Subject:To:Cc:References:From:In-Reply-To:From; b=Y/lyrxGPo8c180stzPdCnGebpqaZr7guTmVJQXq4bERYM4B+j1lT37uiVerrU0Av9 75l0ubCibpTA3YwVLV/e32ZD5+ANNsE4cCxtQCdQgc16z+jTjh0iaoD9qUHXUYS4hO bUNLdL5rf9ajSxeyAltPRwLo20RiTIQoinN2+7Mw= Message-ID: <97aabfe5-7f1a-8865-ab05-bf4af254e1b7@digikod.net> Date: Fri, 2 Jun 2023 17:07:54 +0200 MIME-Version: 1.0 User-Agent: Subject: Re: [RFC PATCH v1 0/9] Hypervisor-Enforced Kernel Integrity Content-Language: en-US To: Sean Christopherson , Rick P Edgecombe Cc: "dave.hansen@linux.intel.com" , "bp@alien8.de" , "keescook@chromium.org" , "hpa@zytor.com" , "mingo@redhat.com" , "tglx@linutronix.de" , "pbonzini@redhat.com" , "wanpengli@tencent.com" , "vkuznets@redhat.com" , "kvm@vger.kernel.org" , "qemu-devel@nongnu.org" , "liran.alon@oracle.com" , "marian.c.rotariu@gmail.com" , Alexander Graf , John S Andersen , "madvenka@linux.microsoft.com" , "ssicleru@bitdefender.com" , "yuanyu@google.com" , "linux-kernel@vger.kernel.org" , "tgopinath@microsoft.com" , "jamorris@linux.microsoft.com" , "linux-security-module@vger.kernel.org" , "xen-devel@lists.xenproject.org" , "will@kernel.org" , "dev@lists.cloudhypervisor.org" , "mdontu@bitdefender.com" , "linux-hardening@vger.kernel.org" , "linux-hyperv@vger.kernel.org" , "virtualization@lists.linux-foundation.org" , "nicu.citu@icloud.com" , "ztarkhani@microsoft.com" , "x86@kernel.org" , James Gowans References: <20230505152046.6575-1-mic@digikod.net> <93726a7b9498ec66db21c5792079996d5fed5453.camel@intel.com> <58a803f6-c3de-3362-673f-767767a43f9c@digikod.net> From: =?UTF-8?Q?Micka=c3=abl_Sala=c3=bcn?= In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-Infomaniak-Routing: alpha On 31/05/2023 22:24, Sean Christopherson wrote: > On Tue, May 30, 2023, Rick P Edgecombe wrote: >> On Fri, 2023-05-26 at 17:22 +0200, Micka�l Sala�n wrote: >>>>> Can the guest kernel ask the host VMM's emulated devices to DMA into >>>>> the protected data? It should go through the host userspace mappings I >>>>> think, which don't care about EPT permissions. Or did I miss where you >>>>> are protecting that another way? There are a lot of easy ways to ask >>>>> the host to write to guest memory that don't involve the EPT. You >>>>> probably need to protect the host userspace mappings, and also the >>>>> places in KVM that kmap a GPA provided by the guest. >>>> >>>> Good point, I'll check this confused deputy attack. Extended KVM >>>> protections should indeed handle all ways to map guests' memory. I'm >>>> wondering if current VMMs would gracefully handle such new restrictions >>>> though. >>> >>> I guess the host could map arbitrary data to the guest, so that need to be >>> handled, but how could the VMM (not the host kernel) bypass/update EPT >>> initially used for the guest (and potentially later mapped to the host)? >> >> Well traditionally both QEMU and KVM accessed guest memory via host >> mappings instead of the EPT.�So I'm wondering what is stopping the >> guest from passing a protected gfn when setting up the DMA, and QEMU >> being enticed to write to it? The emulator as well would use these host >> userspace mappings and not consult the EPT IIRC. >> >> I think Sean was suggesting host userspace should be more involved in >> this process, so perhaps it could protect its own alias of the >> protected memory, for example mprotect() it as read-only. > > Ya, though "suggesting" is really "demanding, unless someone provides super strong > justification for handling this directly in KVM". It's basically the same argument > that led to Linux Security Modules: I'm all for KVM providing the framework and > plumbing, but I don't want KVM to get involved in defining policy, thread models, etc. I agree that KVM should not provide its own policy but only the building blocks to enforce one. There is two complementary points: - policy definition by the guest, provided to KVM and the host; - policy enforcement by KVM and the host. A potential extension of this framework could be to enable the host to define it's own policy for guests, but this would be a different threat model. To avoid too much latency because of the host being involved in policy enforcement, I'd like to explore an asynchronous approach that would especially fit well for dynamic restrictions. From xen-devel-bounces@lists.xenproject.org Fri Jun 02 15:25:31 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 02 Jun 2023 15:25:31 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543180.847914 (Exim 4.92) (envelope-from ) id 1q56eP-0007AN-3f; Fri, 02 Jun 2023 15:25:13 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543180.847914; Fri, 02 Jun 2023 15:25:13 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q56eO-0007AG-VA; Fri, 02 Jun 2023 15:25:12 +0000 Received: by outflank-mailman (input) for mailman id 543180; Fri, 02 Jun 2023 15:25:12 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q56eN-0007AA-Mz for xen-devel@lists.xenproject.org; Fri, 02 Jun 2023 15:25:12 +0000 Received: from esa1.hc3370-68.iphmx.com (esa1.hc3370-68.iphmx.com [216.71.145.142]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id a7134f9b-0159-11ee-8611-37d641c3527e; Fri, 02 Jun 2023 17:25:08 +0200 (CEST) Received: from mail-dm6nam10lp2103.outbound.protection.outlook.com (HELO NAM10-DM6-obe.outbound.protection.outlook.com) ([104.47.58.103]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 02 Jun 2023 11:25:03 -0400 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) by DM4PR03MB6031.namprd03.prod.outlook.com (2603:10b6:5:392::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.23; Fri, 2 Jun 2023 15:24:58 +0000 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::192:6bdf:b105:64dd]) by SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::192:6bdf:b105:64dd%3]) with mapi id 15.20.6455.024; Fri, 2 Jun 2023 15:24:57 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: a7134f9b-0159-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1685719508; h=date:from:to:cc:subject:message-id:references: content-transfer-encoding:in-reply-to:mime-version; bh=EP1k6Zyq1JNLUGbm0pR5zzeKhgySoWo0YJOroLp6HNQ=; b=eg3zepmKeFmMgfq9Txo4r3wxRMsyN7eugtoRq+HtUK5sg6Ye+hRygFDq q95y9x5rCKYaVkGFFsUrZUbx0dWN2U4IpyijPBojQkos6oJeA7pxHhP5/ KwU+g7wxcQ7kgNYXV4nyYwwtS9MdWK508NiqWzMujVMuF5/QgLK2EMmYb g=; X-IronPort-RemoteIP: 104.47.58.103 X-IronPort-MID: 111794902 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:qMDm4K3P8iFU+Ac4CvbD5cd3kn2cJEfYwER7XKvMYLTBsI5bpz0Oy zQWWjvVPK6CMzDwKI13atvjo0tU65OEm4ViTAFspC1hF35El5HIVI+TRqvS04F+DeWYFR46s J9OAjXkBJppJpMJjk71atANlVEliefTAOK6ULWeUsxIbVcMYD87jh5+kPIOjIdtgNyoayuAo tq3qMDEULOf82cc3lk8teTb8HuDgNyo4GlD5gJmP6gQ1LPjvyJ94Kw3dPnZw0TQGuG4LsbiL 87fwbew+H/u/htFIrtJRZ6iLyXm6paLVeS/oiI+t5qK23CulQRrukoPD9IOaF8/ttm8t4sZJ OOhF3CHYVxB0qXkwIzxWvTDes10FfUuFLTveRBTvSEPpqFvnrSFL/hGVSkL0YMkFulfEE5Et tUEERU0bhmZidru3J+rCftSv5F2RCXrFNt3VnBI6xj8VK5jbbWdBqLA6JlfwSs6gd1IEbDGf c0FZDFzbRPGJRpSJlMQD5F4l+Ct7pX9W2QA9BTJ+uxqsy6KlFcZPLvFabI5fvSQQspYhACAr 3/u9GXlGBAKcteYzFJp91r137aQzH+qANh6+LuQ7KM6oHaU2mAvSwwNXGW8p9C5iE2MYocKQ 6AT0m90xUQoz2SiX9D7XAC9qVaNuxJaUN1Ve8U55R+MzOzI4g+fLmkCUjNFLtchsaceRyEsk FmAnNrrBDlmmLyTVX+ZsLyTqFuaISEIKUcSaClCShEKi/H8pKkjgxSJScxseIa2idvvED223 DGOrwA5nbwYicNN3KK+lXjcijexq5yPUg407AzKWn6N4wViIYq0YIru7kLUhd5FJZqUU0KT+ n0DhMuXxOEIEZyJ0ieKRY0lGbyv6OaYGDbdmhhyB5Qn8XKg92PLVYlR+zh/IE5BOMcYdTLnb UnftBkX75hWVFOyda5taIu1As435aLhCdjoWP3SYtdUJJN2cWev7CxoIEKdwW3puEwtir0kf 4eWd962CnQXArghyyC5L88Y0LQrzyR4wnnBSJTTxhGrl7GZYRa9UqsIPlKIaaYi8KqOrQHR8 tBeH8KPx1NUV+iWSjfW8pQaKBYFJGI7Gpnyg8VSeqiIJQ8OMH0oDvbK6a8if4FjkLVYkqHD+ XTVcn9Vzlv2w0fOJgSDZnlgb67HVJNz63k8OEQEMU6z3nk/Ya6m9KoFa4YsZr4j6fBiyvhvC fICfq2oGPNUQC7A/DcbRZb4pY1mMh+sgGqmPSCofTw+dJ5IXBHS95nveQ6H3CIOFCusqcwmo 7C6kBydSp4KXQdKA8PfafbpxFS01VAbkf5yVk2OOcVOdEj22IRtMSr8lOAwOcIXbx7Ew1Oyz BqbHh4CucHWv4IqttXK7YiftJugGeZ6GktcHkHY4KywOC2c+XCsqadCTeKJcDb1RG7yvqK4a o19y+z/OeYVtFZDrJBtF7Vsi7o6j/PFqqVG1A1iEDPuZk6yF7J7CnCc2I9Esagl7qVQuRayH FmO/NZaEbyTPYXuF1t5DCooaP6Sk84dnDb65O4wZk794Udf97OdXUJfFxKFkiBaIf1+N4ZN6 eUuoskN8CSklwEndN2Bi0h8+2qFIXMBVKEmnooHG4KtgQ0uonlPZZHaA2nr7pCKd85BLEACJ SWdj67Pwb9bwyLqTX03EnTc2PtHsr4HshtK0VwqKkyAn5zOgfpf9AZN/Cs+VBgTzhRD3+95I GFtO2V8IKnI9DBt7PWvREipEgBFQRGcpEr4zgJRkHWDFhHzEGvQMGc6JOCBulgD9H5RdSRa+ 7fez3v5VTHtf4f62S5atVNZlsEPhOdZrmXq8P1L1ezcd3XmSVIJWpOTWFc= IronPort-HdrOrdr: A9a23:Rmq1k6DklaeZiDPlHelW55DYdb4zR+YMi2TDt3oddfWaSKylfq GV7ZAmPHrP4gr5N0tOpTntAse9qBDnhPtICOsqTNSftWDd0QPFEGgL1+DfKlbbak/DH4BmtJ uJc8JFeaDN5VoRt7eH3OFveexQv+Vu88qT9JnjJ28Gd3AMV0n5hT0JcTpyFCdNNW97LKt8Lr WwzOxdqQGtfHwGB/7LfEXsD4D41qT2fIuNW29/OyIa X-Talos-CUID: =?us-ascii?q?9a23=3AjT3jVGneBoyeq75CB58ViFK8KPXXOWzyxjT5P3a?= =?us-ascii?q?dMGZgUrOtEUO96OB2rfM7zg=3D=3D?= X-Talos-MUID: =?us-ascii?q?9a23=3AJFFaNQ4Y3NwBDOm2fHG7K5nPxoxyvvSOI0cRnal?= =?us-ascii?q?FqtKNCyt2EjefjwaOF9o=3D?= X-IronPort-AV: E=Sophos;i="6.00,213,1681185600"; d="scan'208";a="111794902" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=h39MhCGAGYMAGXpcWVOS55J2q1fmx1OG3gEYzPTmRmZTBGmlQlv133e2knTjB1XjCx3vgwV0Jf0xZTGN8tLQQjZWLkyPwKiLxCg7r+nVfPLTmEDTvrlT431VIULrVQ6FiQuBB5U0mv6/Xl/z2VwWz7rmd6FNV0X1nplLlHmLYT0eyMa130C4mLYTn84EYLLRAwAAsbHFG0JGIUyeqpz6jKy0MtyBrfrz1f0WoZfEAxcwaVsX7amktjQT2xy2ieVatzAW+Txgz34S7y3hU8ecn+OwwsAT1FrbThXutRYimM0bkJSbuLJBZ6q2nH79s0h1d6ZLUjnTCQYiHCsRNKOxgw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=u3LajGo4297Okn1KZW3Rkwic+1OYWJqKC/Qozm2dkes=; b=SsYVGKv5Zfp7aU7qH42Va7eHPTw0qv3s+ta1S52X7kqUPCcxY4yAaSQjFenO5qwggrG39sU5XNyCdQNe9X+SLONfipO5yuGIKn6eWszKHfyvStVcizK94uZFXNDDisU9s9IUVIkxSeA11qB64sgdMxse5RMS5ABp89xL/hK6sowv2BO7x+bOm4WU1+mQwx1QBHRctIpCBjsKs8RaszRqRRmtvgxkJp+4GGDjIbzxkbNA+8AR1uCXPfdQcQ2ko/cuQG3e8jTvuEvWM4E31U1s7PS0K4nwuhIntT1rmQpgF4jKY23m0yd6OGHshhj5g5hT4x+w2Fp9l4jdO5nFVN9O5Q== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=u3LajGo4297Okn1KZW3Rkwic+1OYWJqKC/Qozm2dkes=; b=OjzDrGniMrPZNEnGLFtP5duwkelI/4pvyySDhN7yMMjdUr5C1QFOZ/2dY2neMpW4dhYEgJia1dGXa+z3TTc8b5UnSTmJ+m28QiohuPM+0KW7cwF9JD9kBJj1fzYOOCvGEryaL9R7ij3nFQV9lffjsJl8NfvI4ZYJBzPeNf/7kQ4= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Date: Fri, 2 Jun 2023 17:24:52 +0200 From: Roger Pau =?utf-8?B?TW9ubsOp?= To: Ayan Kumar Halder Cc: "jbeulich@suse.com" , andrew.cooper3@citrix.com, christopher.w.clark@gmail.com, nathan.studer@dornerworks.com, Stewart Hildebrand , Stefano Stabellini , Julien Grall , Bertrand Marquis , "Volodymyr_Babchuk@epam.com" , Rahul Singh , Henry Wang , Doug Goldstein , Juergen Gross , dfaggioli@suse.com, elena.ufimtseva@oracle.com, anthony.perard@citrix.com, george.dunlap@citrix.com, rosbrookn@gmail.com, lukasz@hawrylko.pl, dpsmith@apertussolutions.com, mateusz.mowka@intel.com, kevin.tian@intel.com, jun.nakajima@intel.com, paul@xen.org, Wei Liu , konrad.wilk@oracle.com, ross.lagerwall@citrix.com, samuel.thibault@ens-lyon.org, christian.lindig@citrix.com, mengxu@cis.upenn.edu, tamas@tklengyel.com, aisaila@bitdefender.com, ppircalabu@bitdefender.com, "xen-devel@lists.xenproject.org" , Michal Orzel , "Stabellini, Stefano" , "Garhwal, Vikram" , Xenia.Ragiadakou@amd.com, Stewart Hildebrand Subject: Re: Listing the tools required for Xen development/testing on x86 and Arm by the community Message-ID: References: <9079757e-72e3-3a68-5e78-9130822003e9@amd.com> Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <9079757e-72e3-3a68-5e78-9130822003e9@amd.com> X-ClientProxiedBy: LO4P123CA0206.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:1a5::13) To SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|DM4PR03MB6031:EE_ X-MS-Office365-Filtering-Correlation-Id: 0569d1e8-6dc4-4bec-fa6e-08db637d85ee X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: aXWZjlSStVzXI2WPtASXxXl5YClAfn/wcZzHIAqLBGXD4HxT9Qn2yj+X/kWu/k5Ac4rtoX5GX1mFpr5DdLHrGGFYwXuATDArfiaUBWKWRlCaelUxFBvK1OpCkkD+5/cnlCHHBn2lPlqOBlHxk+eRpnJsyCh2JlVHAEULHpfBBWuOkk36LPGAdQST1gOtJMl6D85H50OQLVoaWX0xML9rXBqlPyaxfF0M1nODnBmhJ+Hlu7hsXdvHG8uAl7bPqwn3pxG+civioZEZJtsjDBK6qjoS8yX9HLkyQtHjzU6J01yLz3/3pvUtbMAuOfOaroV9VrHeEoKn7CPoSFdO+PgUjAobj+/G+EL8ULWvwDQnATcGR8mjEXw8pK/LehtUqMGsE7BOkteW+S5YOlVd8eSaR9vWYPUeXvJWyCl3H1WTOcrRvfb7Kmg0qy/5sZJMVOCAfGwEo7WUIzm95gGeLAL1Q1zm7U1i/hgyswtljoOfT3gcypdcnaLsGljw5KsVGsShxVobrHwX+2mtuf6jIOCqalsIKCPOA0hmrM1diK2t3mQ= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(7916004)(4636009)(396003)(39860400002)(376002)(136003)(346002)(366004)(451199021)(66556008)(33716001)(85182001)(82960400001)(38100700002)(86362001)(41300700001)(966005)(8676002)(7406005)(7416002)(26005)(6506007)(53546011)(6512007)(5660300002)(9686003)(8936002)(186003)(2906002)(83380400001)(316002)(66476007)(6486002)(66946007)(478600001)(54906003)(4326008)(6916009)(6666004);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?cWU3Y1pZRVVPam5nMnloNG9GaHRmRktPRVRmS21BUFFyZjRhd3ZaWTJlYWtX?= =?utf-8?B?dWZhc3FtNW9SRkFiYktZT29BcXoxbWM5akhnKzBkRlg0VjlJMUVqNk9wV2dk?= =?utf-8?B?TlIyR0l5cVdIVHFMZUMrQlRlQjg1VXJMZkcxZTAwcUsyWC9jdldvcUN3bGlx?= =?utf-8?B?TDZFbVllaVNpeW5tTCtDSG5ZSDZuWk1xUWJxZ1Y4eWY0U2liMHZmc1NLQ3c2?= =?utf-8?B?U3NPOU5vK3BIR2dxV3g4dXcvUlVoYjZzYUYweEs0RlE4eUNVYTlzV0JrQmN3?= =?utf-8?B?WTdyOHdvQUZZUTdteDBJVlBlWnlDV0trUWNiMys5dVZienphd25rM3dxOFJo?= =?utf-8?B?ZjlEamVGbXBZb1hjYmwxMncvWjV3Tm4xdkd4MEFIYVphVEN1RGVjZ0ZBTUNL?= =?utf-8?B?bE9PbHVrTTNyWjIvZ1FORlRPdUxoS01MeUxKdjY4N1dzN1k5aEFJME9jeXoy?= =?utf-8?B?UGtHc1JzUk5hZ0M2clljMEhYNGp5cGVESytzUGZya3pkY2VqMGpOUHdKOHZm?= =?utf-8?B?WnJYZFArK2ZOYW1YeXB5OUc0aFlCUG9BQmR0V214UVBmUUJWeWI0MlZjL2F2?= =?utf-8?B?dW9JUm0vRnp1bFM1Y0NLQUdvRDRoalhkU0FTenFpZS9HVElhdm94ek1zeTh6?= =?utf-8?B?cU9HY1VldzhRSHR6cHhuVWhzSG94MU82VDY0SjVhVEh1Zk84Sm8yZGVkTTJU?= =?utf-8?B?czhCdTA4MVVCR2YvUUdJMFhkMEI2VFgvQkZvREttWU9hd1JTNDUvTC9EVDdN?= =?utf-8?B?QXBKWmE0YWtSVXlEamdlRmJwWWRWb0xKaElEdENoTEV3bC9ydnBTdUxDY2sy?= =?utf-8?B?WVYzemhUNlJZWmxMWkNCZW9EYTJGaVpxOUpNWU9VV2lIUlN6SW1HMGZVc3FB?= =?utf-8?B?RW5HTExFZlRDVVlldytzUkt2MWtpdFN1TExEUlorNkd4NjY5VFJkTXpyMUhE?= =?utf-8?B?MnMrS2Y5VzdHYjhJaGE5VDM1K0tVeHQzRThST09hM3hzeGdyMzl6SzE5czVI?= =?utf-8?B?UWZ0R3R6NUFUanpGR3BtM0ZoOXE4ajJTeUxOanVjazk5YUZiVHhOQ2wzSmZ4?= =?utf-8?B?eGF1bTZTdFpmYi9TVGNoZFhoOUFNK0RMVE5uZjJ0azFpRDhwZGNESzlreGNt?= =?utf-8?B?eEU1NTQ1Wlp1SUtIa3p4SDlBaC9jSWJ2NTRQZmMvMzU2UU9ZVElLN3kxUGFB?= =?utf-8?B?d0ZkdXZLMWJhT1pBTmE5bVZUQU02S1p0Sm5tWi9Bd0ZSM3pob0NmUld0ZlM4?= =?utf-8?B?aSthVmx2d0s0Vk1NTW9ybTRmRWsrSVQrbDBPZG9KQTliWXlIcTFnblBLdlVJ?= =?utf-8?B?b016RS9sYXVWamNHWXNCbmRBcmdJMjFDeklwYzV4ZzB5NUdpelBaUW1TU1lm?= =?utf-8?B?T256aXA1ZTk4cERBYTMzWlRLdG0rcUxKMTh1ZnErMEZLNWNuOUh5T05SdkI4?= =?utf-8?B?WHJqK1I5Yzh1U1ZEVVdvWHRMUXM1VlNPY3Zuc0J0bS9md1IrelA0RjgwZ0lP?= =?utf-8?B?RXhocXFXK3hTdVcydXkyUW16cjlwNDE4YmUvN3k1VGllYlRjV0VGQUtveFR0?= =?utf-8?B?dExXbXBRV0txM0FyZHdrd3FENS8vTTh5Y1ZWdkZEZzhSSGkrWHlBS0U2dWN3?= =?utf-8?B?Q1JpZXp4eWlwYlZlcG9yQzhjRlIxN2FzQlgrYlhUa21oa0pPSFlPeXE0OHBH?= =?utf-8?B?Rmd6U3dPT0h4RkhiUU4wN3d4R2ZvNmFzMXNCUTE3aVJ0cTBCY2xSVnFuTEhx?= =?utf-8?B?dDZHc1FOZkVQSlM4VVowMEdrZityNGpOL0RaYmZVbDdVQkdSUHMzRGY0Q2tO?= =?utf-8?B?dWtGM0ppaWRkU3FIUzNNSUpLdTVRRmRwU09SdHJZakd5UGM5SndtZmlBQ1pp?= =?utf-8?B?dEtrUkhTbk1Gd0RvTklTWEE2ZEw0TjBoazZZQXFjbTI1TUdpZTNvTWFhUzVX?= =?utf-8?B?RCtLOTdMVGNEYXBROTRCMENkRHFCYmdXc3dHL3M3SEt5MUdRUGtyZWZ5a1BO?= =?utf-8?B?L2M0T1FMamhQVjB0ZHFFazBlc3RJd1hHZzFuVm1MOWJraFJzeU8rbW9uMU5W?= =?utf-8?B?QkJ1RGtRMnJHMDdFM3lIUTlyMUY2T0I5VHR5UHFEUGhEZUxPTjdBY2ZvUGFn?= =?utf-8?Q?gk6kOwbmiT1AOJ9EhEt3CcOux?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: =?utf-8?B?VFBBU09CV2tqTDRZdXBWOSsyUWQvbmM3MHk0YzBiTDYyaENzSSsvbFZiZ2VH?= =?utf-8?B?cWVzQVd2WFhvYXhzMmp5QXhJSEJySE5mV0FzcEFKTXAyTVg1ZGs5dG5kZVlE?= =?utf-8?B?QTRNNGxOVjl4bTB6MGtlbDR1S1E5NHlOTXJ5S0VCZklnZmx3OGJtYjJEQ09G?= =?utf-8?B?NEEwd1pRVjI2S1owNjgzR0IvNXVKYTBNQW5ia3pMcWdhU0NPM0lLM3g4Q3JK?= =?utf-8?B?SG1WcjZZODJuVEJ5ZWJRQkdMc2RtUjZEcTlDMnhjSUFYeW9DLzh1bExSbnps?= =?utf-8?B?ZHJGUzZyWFoybHlIZzJUYWphanFkZUhVYUFHQWE3c3NFdDFYcThGWmZBVC93?= =?utf-8?B?M2MzR056N0kyR3BFYThYUzBIT3dPRjI0T2NMeTU3WjJHd1pBaWVwVWx2T0JI?= =?utf-8?B?am9XelhjT2g3MEVxeE5uWExCMS8wdE84a0xLaHM0K2tLOWNNeEozbUVaU2RH?= =?utf-8?B?T2k5MlcvMWR6bFVyN28zSitNMCtxWlhTVnkxWnFHdTRjQ2o4RGVpV2pGMWdU?= =?utf-8?B?d1JhM2MwWmpjVFRqVHRJYnk2aDdKWWZkSHV1NkU4U1VQbzk5dWlFZXNUM0wx?= =?utf-8?B?czJudWN1MERwcWx3dnJYMFdBU0lmMnd5aTRKYndmTjQreUVlMFBsZnRjS0oz?= =?utf-8?B?dFgxMThFcFBkREpLWnBCZFl6SVpnT2p5V0RyV2E4UGt5bjB0K2xUN0tnTGpT?= =?utf-8?B?b1B2amJ6QWQwTzhaeWhZaHcxRHlOdmo0TFBJeVFDU1NrdFdaN2hZVTYyNVIw?= =?utf-8?B?cGpiTnVNTTdrZGhzaDVYQ1RXdmg0OGpZeFRvNm50NzNvSTMwQm0rWXF2N0lS?= =?utf-8?B?Uzd1YXZoWmtRbkJwOUtZUkZtREhEejhzN0pkUjZ4bmhiYzJrZHZkMUJqMnlG?= =?utf-8?B?a0o3cnRVNERiRG5XVGI0WlVzaXRzcGlqNkk4UW10VlhkYVE1dllaOGR2WTIv?= =?utf-8?B?RjhCbXV1TktCTW9Hc0ljUkdvNzBkeGJTOTZPcklmKytUSFVUWE5GRXUxTm1o?= =?utf-8?B?MUw0Q3IrajU2c2lhbVB1b1NuZmJDQnJ4YnJ4aU9CQTlNaVA5bU8zSW5MQjJF?= =?utf-8?B?RUxjbjVuMG1GSCt1Sk5SOC9QVHlSZ3ZFVEgxN0lua21USmZkcmd4Q2RTMGJu?= =?utf-8?B?K0pnMVR0WlVKbUU5YjhTc1dQblZ4c3RyR3hncTYzc0NMR0pBeHBhUTRoMDFk?= =?utf-8?B?TjFNZGFvUzNNcXNvcWxJRWR3dXhYVE1KMEJHc0h4bVQ0VmlyZng0T1BQZUhT?= =?utf-8?B?RFI4QkNBWmFKY1h5ejJMZ1VRQXVQL3RVWi95S1A4aUs0VlhGK0U2OU1CQXha?= =?utf-8?B?U056dUJmRE54WlBRS2dRTkkvUkhZS3pWM1I4cVdCV1JLZlVOMFlzOVBOdUFZ?= =?utf-8?B?eVdXQ2J0Vmc4NVR5Tyt2d092KzBIdGtGMFFVOEl4VHUxOWpKSFY4UjFUZWxy?= =?utf-8?B?ZHAwbmltSFNNUmxIZUE1ZVpBL05GZzMxMWxQOXJhYXdmQVhYL25aSXRZUnU1?= =?utf-8?B?MzBHTXYvZzV4QUJxQTRydksrU253UGhMUlFVeUREbXhLVVZLcnkxdlZXcGxK?= =?utf-8?B?N3RkNklyWTZmUjhRdUh4OG9Xc2N4U0pZcjFqV1V3Q0lCb25tMTAzQjVHVVZx?= =?utf-8?B?M2h2czNyWjBqVGV1R3IzSjFCV2NwNFBwNDNNdVJJd1BUV2pXZUJwRDJyNzdC?= =?utf-8?B?WU90ZXdUVFNVdHBWR3Zmb2o4eWtPYVNyRTd1bkt4cWZkTUJzQTFLZTZPOFhP?= =?utf-8?Q?2F3QftsHx+XqX4dFwO5L+gM+7ejbqJYldC0qjoK?= X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 0569d1e8-6dc4-4bec-fa6e-08db637d85ee X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Jun 2023 15:24:57.6141 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: mOT5x6RmC46ZoGuXzOR3CiFOrC/nn5fX7GKYMbHzUzc7pK47PBe0noL6deUtYLPs6n4lWRC1RQErkdZClm31fg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR03MB6031 On Fri, Jun 02, 2023 at 02:46:03PM +0100, Ayan Kumar Halder wrote: > Hi Roger, > > On 02/06/2023 12:43, Roger Pau Monné wrote: > > On Fri, Jun 02, 2023 at 09:48:48AM +0100, Ayan Kumar Halder wrote: > > > 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. > > What is the end goal of this? > > We are trying to do an initial assesment of the requirements for Xen > functional safety. > > As a first step, I am trying to make a list tools which are in someways > related to Xen development/testing/deployment. > > > > > I'm kind of unsure why do you care about which editor I use to > > generate my code, that's up to the developer. > > I agree that editor, email-clients are something that are an individual > developer's choice. > > However as it is related to Xen development, we want to atleast put down > some of the commonly used tools. > > At a later state when (and if) we go through the list with a safety > assessor, we might prune some of these items. I have very little idea about what's required for a safety assessor, sorry. Will this have an impact on what tools are allowed to be used when working with certain parts of Xen? (the safety certifiable parts I would assume) > > > > > I appreciate if you can let me know anything I missed or mistaken and the > > > version currently being used (for some of the tools). > > > > > > > > > 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 > > assembly (gas), python, perl, shell, Makefile, bison, flex, ocaml, > > go... > > > > Likely more that I've missed. > Ack > > > > > 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 > > I do use an LLVM based toolstack, so that's usually latest LLVM import > > on FreeBSD. We do also test this on the cirrus-ci, see: > > > > https://github.com/royger/xen/runs/5334480206 > > Thanks, this is interesting info. > > For the moment, I am ignoring the downstream forks of Xen. That's not a fork of Xen, just plain Xen hosted on my personal github repo. > I am only considering the tools used by the upstream Xen and the associated > CI/CD. Gitlab CI does test with LLVM toolchain also. osstest does test FreeBSD guests, but no FreeBSD dom0. > > > > I_n any case I think the scope to some of the questions is unknown, > > it's not feasible to expect to list every possible combination of > > Linux versions vs Xen version vs whatever guests versions a given > > developer might be running. > > I agree . That is the reason I am picking up the compiler, linux, binutils, > firmware, etc versions from our gitlab CI. > > It also acts as a proof that we are testing Xen against a known set of > compiler, linux versions, etc. OK, so the question is not what every developers uses, but you trying to narrow down the scope to a specific environment? Maybe what you want to do is create a specific container in the Gitlab CI that has the specific tools versions you care about from a safety certify angle. Regards, Roger. From xen-devel-bounces@lists.xenproject.org Fri Jun 02 15:29:43 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 02 Jun 2023 15:29:43 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543185.847927 (Exim 4.92) (envelope-from ) id 1q56iZ-0007no-LX; Fri, 02 Jun 2023 15:29:31 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543185.847927; Fri, 02 Jun 2023 15:29:31 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q56iZ-0007nh-Hk; Fri, 02 Jun 2023 15:29:31 +0000 Received: by outflank-mailman (input) for mailman id 543185; Fri, 02 Jun 2023 15:29:30 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q56iY-0007nb-0K for xen-devel@lists.xenproject.org; Fri, 02 Jun 2023 15:29:30 +0000 Received: from esa4.hc3370-68.iphmx.com (esa4.hc3370-68.iphmx.com [216.71.155.144]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 42c6d543-015a-11ee-b232-6b7b168915f2; Fri, 02 Jun 2023 17:29:28 +0200 (CEST) Received: from mail-mw2nam12lp2047.outbound.protection.outlook.com (HELO NAM12-MW2-obe.outbound.protection.outlook.com) ([104.47.66.47]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 02 Jun 2023 11:29:13 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by SJ0PR03MB6714.namprd03.prod.outlook.com (2603:10b6:a03:405::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.22; Fri, 2 Jun 2023 15:29:11 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::10bb:98bc:e36d:36ab]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::10bb:98bc:e36d:36ab%3]) with mapi id 15.20.6455.020; Fri, 2 Jun 2023 15:29:10 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 42c6d543-015a-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1685719768; h=message-id:date:from:subject:to:cc:references: in-reply-to:content-transfer-encoding:mime-version; bh=LKE0CDfYkUupWcA3viqdWcZIbfJ+FGpea+4D2eyCixI=; b=U+l80D4nDidYjDPpV5EmTVQX3X1bZ+cWgowYThS8gsyuLc8zfE9W0b6H CaXIeUDjddbj3GVRt65MfZ5td7vTZbovF/TTUD2igGgH41VfIKi2glk4K ME+EtK1yswwCM0/taDezO8/vJ2FIzozMog3fsfvIqooVyX5CeZ3qyvME3 8=; X-IronPort-RemoteIP: 104.47.66.47 X-IronPort-MID: 113880451 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:fSdlDKxVw7Da0kwje9d6t+cVxyrEfRIJ4+MujC+fZmUNrF6WrkVRy TdMUG+POKuNamWge4xzOdzj8koC6JPczdBkG1ZrpCAxQypGp/SeCIXCJC8cHc8wwu7rFxs7s ppEOrEsCOhuExcwcz/0auCJQUFUjP3OHfykTrafYEidfCc8IA85kxVvhuUltYBhhNm9Emult Mj75sbSIzdJ4RYtWo4vw/zF8EsHUMja4mtC5QRgPaoT5zcyqlFOZH4hDfDpR5fHatE88t6SH 47r0Ly/92XFyBYhYvvNfmHTKxBirhb6ZGBiu1IOM0SQqkEqSh8ai87XAME0e0ZP4whlqvgqo Dl7WT5cfi9yVkHEsLx1vxC1iEiSN4UekFPMCSDXXcB+UyQq2pYjqhljJBheAGEWxgp4KUh22 sQgFhcAVBek286T5oy0ROtIgNt2eaEHPKtH0p1h5RfwKK98BLX8GeDN79Ie2yosjMdTG/qYf 9AedTdkcBXHZVtIJ0sTD5U92uyvgxETcRUB8A7T+fVxvTaVkFMZPLvFabI5fvSjQ8lPk1nej WXB52njWTkRNcCFyCrD+XWp7gPKtXqiA9JCTOHlr5aGhnWOwUEfCTdLd2KQuN+kjlGyQPV1M 1Ebr39GQa8asRbDosPGdx+yrWOAvxUcc8FNCOB84waIooLL5y6JC25CSSROAPQ2uclzSTE02 1uhm9LyGScpoLCTUWia9LqfsXW1Iyd9EIMZTSoNTA9A5sa5pog210jLVow7TPHzicDpEzbtx TzMtDI5m7gYkc8M0eO84EzDhDWv4JPOS2bZ+znqY45s1SshDKbNWmBiwQGzASpoRGpBcmS8g Q== IronPort-HdrOrdr: A9a23:fIOlbK5aT+cu4o5uqgPXwPfXdLJyesId70hD6qm+c20tTiX4rb HXoB1/73XJYVkqKRQdcLy7Scu9qDbnhP1ICOoqXItKPjOW3FdARbsKheDfKn/bexEWndQtsp uIHZIObuEYzmIXsS852mSF+hobr+VvOZrHudvj X-Talos-CUID: 9a23:DeY5MWPJSzg2BO5DcRFIzHYqPc0fdVqB4FL2HUC2C0JvV+jA X-Talos-MUID: 9a23:t8WsgQv03Iq0dQyKW82nmTZPOMZCvoaXI1krjJEZt9KjHzRtNGLI X-IronPort-AV: E=Sophos;i="6.00,213,1681185600"; d="scan'208";a="113880451" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=lTQUw4f5F1V3A8OtQmVDFS+qIEq3ng7h5ibndT+oXLU9Wdpa/O4vcUG94Mybiw82T35rLT/bpqYBEoknwklE10P+tLYiIE+s4fnQI1gR7wm9OEgDvrXTDhcMFwViLK/SFuBb0vlJwN738eX9S/gK6qpbcLT+R7qbjEwyhBcq9Sq0yPOxi7Llx30SWsoNqNUuKVYrTI3pej0eMrhlt5iDQuGHg8ghgJKOCppLvcnfPtuFpy+igW4HrxpOc6qM46gLpP7DxfvDC7WiJZMqkV9VLkX/vHxURHYYg9BrDanOlXZvqpPkujCU/mmW5JPs98nZxA8X7t3pnnfE6gVcaPyomw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=y2a4vqm2XozbjUMsUFwmxFRIY0FiSEtYltgSUDl5JnI=; b=SWvd1bed4JSwY+leefBKcJY9cGQPblcQQ+vtaZA8zFp+6z5EQ9C+UIRA+MVx/GWFOzWsj5zE85AoEHkk6cxdIa77OqyvCk0pAmhNxDAuW36ewsmmDXDbyn4X30yIGk+k4iUZ7FP/rgoPHeVfn4xTw3XobpDziPr6D+b7kd27cify8OI9f/aClFbAng6Uj7sHyPARl6E8xIK8t7T81wa+3APv0iuvh1Zy/gx6kWzoBqfUmcjSAlXe8ylgU/N7C/JIAsmQVAF13Ve0HrnfmbLlpLvI0snH7fI9nvKlePwFl2IdVI9YsSMqYEfJ5CWxqfoK/4CQRFplaXBC8cUsDiIfhg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=y2a4vqm2XozbjUMsUFwmxFRIY0FiSEtYltgSUDl5JnI=; b=IRmN+RiXYFrJWNr/LcyOe+ixaYsBggJfDUzprvBbgijvrPDUpgsg10pDvAWX4Vmf3f1kFEcwJ90j7qYmEgZ7j2ZyG0lJH9P2595xVnD00QsGkX22bMs6l3DdhBz4ElcrF7qKCDqdIc/CZNwWXrvb0teERKROO90AaTgPQHhIKyw= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: Date: Fri, 2 Jun 2023 16:29:04 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 From: Andrew Cooper Subject: Re: [PATCH v2 3/3] x86/cpu-policy: Derive RSBA/RRSBA for guest policies Content-Language: en-GB To: Jan Beulich Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , Xen-devel References: <20230601144845.1554589-1-andrew.cooper3@citrix.com> <20230601144845.1554589-4-andrew.cooper3@citrix.com> <1ce6bd53-089e-e8ab-3b54-2720a3fd2c12@suse.com> In-Reply-To: <1ce6bd53-089e-e8ab-3b54-2720a3fd2c12@suse.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO2P265CA0483.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:13a::8) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|SJ0PR03MB6714:EE_ X-MS-Office365-Filtering-Correlation-Id: 4cc4bf14-ed60-4356-5799-08db637e1cbc X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: rz56XQG4fE/UzGnm4DqWB5vVhQj1F3882jhNDpYXzP/7v7fKK/QuWFyjOR6TQ6vxNv4jIhE4AyrlHXJDprJ/8AK0MEmd+amjxVO+cc/lVdPbYUlAQBkVXxIxJ7cx4UHmbzH5FApBV33vWlyyl/0NW/XwcoQujkS3PoVna2CWbM5H3CWspnrUKVMd7TCVWtRFLl3xlU9qOj2InCy29dUXSDE5nXattSYvemVG8aBW9qRwBpzJd11z0r5aMv+A9MpAKF3p0F/y4Dr7uPUU50MBDZ8j3/absCW0zspCTrtNGWTkcIeeXqUlMSoIwypsZYxvtt+KYK1gfA85P4DFIhY0rpjXz0aWFVmuWjHabDVwaa8GqGZkZCh02xvlPh6GwjJRgo2zFQekYm4R/1tcDsp0+jugMGE2ZLLPFgcwPLOcMqClNoG545QcHG5Bt6JMfCkdb25EWv0hTQXulP+QGlOqxBGWzb6BPaf/D+vcWNhW7E2v969YVhQvGz0ktGJJPISGFze4N42jtR7UcgDntN7SWD2uM1PMqh7B163QRX/4yrV3xrVhKY/lQx35oXfe3B94SJqhAsgsu4wE5kYk6q6vCVZ6QjlFT/7+LOmzHAvyr3G/GyBatPZofJaHJae/xvV4/wbCpLKPGFg3zWqGhmSAJg== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(136003)(376002)(396003)(366004)(346002)(39860400002)(451199021)(41300700001)(66476007)(66556008)(2906002)(66946007)(31686004)(5660300002)(4326008)(6916009)(316002)(54906003)(8936002)(8676002)(6486002)(6666004)(478600001)(6512007)(36756003)(53546011)(186003)(83380400001)(82960400001)(2616005)(86362001)(26005)(31696002)(6506007)(38100700002)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?UXV2NjdSQmY4NUVyc0VhbHd1VElMNElDRmNLcjZIOVBNalJpa2V2RmJ0dS84?= =?utf-8?B?c2ZWV0IyWFFuKzVKUjVuUFdYaVRJMzZhZUw5cDV3NWVRRFpFbUVsQnRRa2Q4?= =?utf-8?B?MDdJalRmaTUyM1Z6Y1Z6SEdSbWRodmZ4THNwdGtReFNjZ1QwUktEVXpnTEV6?= =?utf-8?B?ZzlhUHVXQXA4ZXFTU2Jnamd2ZG1jcVFOVTUrV0l6djZzaGJXWXVZUmtlR3pH?= =?utf-8?B?M0FLK3d5S0dVeUNGQjRNa2R0WTVuNnJXVkhKR3NuM1NOUGFtL0VvLzY5amFW?= =?utf-8?B?eXhtQmlESlliWWlidzdUODlmWVlsVGs1V0lQSlBMQ1VzYkNTdXdQeTluY1B3?= =?utf-8?B?SnU3STdYWlhVQzltbk02dnRTOEdhdFB6djBiWmdRRkJTdDI4bGc5bmVMdS9K?= =?utf-8?B?ZFVtTGV3a2sxZUpsRkwxcUZsTGpIK1pyeUlXcWRybDg2amVpdXlRL0V2Rm83?= =?utf-8?B?RDVMcUNzSUFudk5HaFdQQStyU2t5N09YU3o5QkxwSkpMRHNOdGxWYW1OcXYx?= =?utf-8?B?ZFNtTytUZmZrNGJxeWZuT3RlcTYrbklnWWdGeGZ5aXU5cWh4UVdpNldKeWlJ?= =?utf-8?B?Q2UxZWQ5QXBMZnozaTUvb1RsdVI0T3VCVHlFYThrNktMR0ZkZW5vMDhqL3hB?= =?utf-8?B?ZDRrYlozT2lxS3VSNlF6MUFtVm9vUjhYSHlsa2N1dlF2RG1wQjBiMnVLM1ZC?= =?utf-8?B?V2p4SDREUklFMENnekFHdW9Ca0ZrSTRUS0lhMENwaHdObTJ1S21FMzU2Y2Rk?= =?utf-8?B?dEMyL245Y041VHp1a2ZieTFweVplREQ4QldhWHF0SWpqSndTcWlrZkRmWGJH?= =?utf-8?B?SlRRUXJZSFRCQ2dkZjRYdlJ1ZGxCRVovQmk5OExydmZPdGxrTS9QNGNwa004?= =?utf-8?B?RTRCZXlVQzlLMktTTzZETS8ycFNLSjZ4REEyMDFmOEtEYUFMZWhHclNOUm80?= =?utf-8?B?T3dCbzJhMDlaK1ZhY1pWNnVOdGE1QU1uNzhyK1MxSjV5ZkpkczY5clBpdUh4?= =?utf-8?B?VE5PWVMySEhtVi9XSFd1cTBkdEp4dHFRV2V2bGt5aGFPYnFjRVlSZ0JvMmg3?= =?utf-8?B?NlRIM3VvSU1BVHI2S2tjT2N4UTJSQ1pFZmg1eXRNN3FvUFBNOUFzYmw5cmh0?= =?utf-8?B?Qy90V0VsdlN4aFF4Qml5OCtKRUhpM3pVVlNhbE9iRTZ1SGJmandaNDFEank3?= =?utf-8?B?clUzclNuODNkU2FxaTFKU2V2MkFDdkg0MW5XMjQrY0R1V2ZqVEJCeG5NeFpG?= =?utf-8?B?cG1LVFpIMkIrRUE1R2swUlp0c1RKZ2tzTHpPdWs1akpLRmZXUFJJaVJuQXo4?= =?utf-8?B?Y1duektZSXpTMEhDV2pmL0dsdHZHdVNXV3FsN1VmeldaYzZaM2tGUEw4M2hQ?= =?utf-8?B?TFMvMkoyVlZSNkpYK2VIbjJxYWdrVlpPNG9pOUt1ZnY4eHdJVkhNN1poNVJs?= =?utf-8?B?WEJpWWV5RUhmczhhcjR5SWQ2cHlEQml1MVl2K01VZ0xQdG5KQVMrTFZ2U0Zk?= =?utf-8?B?cXJsVkNFWEFOYlZMWGtCaEFsZEptelJwK0RKQ0IzWllzQm9VNDZPQmZXeWFI?= =?utf-8?B?K3pZZkorem1peEZqVkZ4eGNVTW90ak13NW9ZaXZLS3R6N2dzMEFWK2JEblQ1?= =?utf-8?B?Z1Y2NUpFcXN2N0s3d1AySnd6bnZwcVRIeFpxWXlRdnZHZk56ZXNEa1lINnhy?= =?utf-8?B?ekZlYVluUTZjMHE2b3hKdXJ0UklrNzUxZFVSSWJteW5uL1JHcGtzVXZsNFJV?= =?utf-8?B?eDY2bXV0T3hrRVVnaitZR3dIbWVNTWpUUzNIQkpFblhSRFFIaVNaeGMxNzBo?= =?utf-8?B?ckdLc3ZyRFRWWHo2OGZVc3JoaERiWHE0ZWVwOWdKTTdRVTI3dU8xSm1zSC8r?= =?utf-8?B?WUZpTkFHVXFEYzNQeFdJNTl3bVRzSnY5NTJwVVBqaTZlRkJjQUhybVYvSmd3?= =?utf-8?B?L3pjci81VTJWanlaR1pNMFY5eWVuYjBJOU5rWDlDS1ZUTzJsZ2VFdmZFMVFP?= =?utf-8?B?bnR0aGMwd3lmMWVCYVpMRitTTmFUdHM5cVlEWFNrb1RlRlY5SXUwMmhnYkdQ?= =?utf-8?B?SVk2cC9GNmxqSE5vNmpqUlEwcjlRUjZ6aCthLy9Zanc5Zk5rUE5IUDZGRHZL?= =?utf-8?B?cDY5YlhWRmVkR2FncDAweUIxaGlEdmJoc1pHYTA2anNoVGs1SElhckI1ZjFZ?= =?utf-8?B?elE9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: SkhnLiAo7YMVJsJBANdbXCbqXSREuLq4lrJHaBEtgjRT4ryeOPRb+wkaFg8H+bdi4x7iEXNdwiegnWYmMWOnXBQSPaBC72mmTsomCWAtvKRFsZJQxLTh8wzpLTF1H9WzYgzr8iMK0mcEYwrFYngr8JKJr4C1GM/a1kttwBPdy1j3dU/MVME8sEh9O/aWD+8xOYHCU9eKW5JVHPF3+e/6DPZ3E1qfgpr5HHCAJ+Dj2fEwCDYLQ3UKE0ZysWkucwvajnRIAYi0hODOT2dA8YM9UPGuT7CgAKz+eWAvaYMPF5i8iqEgfH+lOjVEAM2PvWVNuMMmD7UfM0nM9pHrXBiSOmTFxBPopftua70MgKMEI8sQIKhuTUkUXYMPyPVMR430IznRo9WCYsxvYCQqDOjRSd8cBOyeGFR2L450S8roIH3uBKMWu/wyAAYB5az68nYGiTpSfmni2JeST3optDUSvBEAmNMoI5OcTU9WGUAzZOs5Ct8nbolAd1krO8GhEY4aS+79uTKoOq47hWFxQ2Kl89zAphUdLjtP6P3rrdFcHz6M/8kdtQyotKZ5+IPhpxKsOaJvLzwJgm104E2Vza6ahHg4CJhcUqjBoHu+0bMd1KcQP0hHc+wl0NaFrcrFrnnMUHtv5gQfW4lb+ieYB2hpD8O0VMOPUh+mmHTI9uTpv6y8p1Kc/0fzRrLU+IbZHOzTo1amcZakA9eQGICA3AxZc77DkvK4uZWLTqbkCDuxEay3WRklI9zDsWnTOykEQbeoE9yDBTXKD/XfZ9mSE7w04h7zvhjvhO7AJm+evL4gtiKfhCUUdlROROnhBkVXS+ce X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 4cc4bf14-ed60-4356-5799-08db637e1cbc X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Jun 2023 15:29:10.5424 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: uTGUUJUB9Ghf+qmQwXguXsnlitulsj4cRgnFfHYTMvEr8rLlnf4Vg/K47P2b/I62L4PnHOYJtdqGrgywbSvwaYnntrEf0tFN0jJwUR1prQI= X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR03MB6714 On 02/06/2023 11:20 am, Jan Beulich wrote: > On 01.06.2023 16:48, Andrew Cooper wrote: >> The RSBA bit, "RSB Alternative", means that the RSB may use alternative >> predictors when empty. From a practical point of view, this mean "Retpoline >> not safe". >> >> Enhanced IBRS (officially IBRS_ALL in Intel's docs, previously IBRS_ATT) is a >> statement that IBRS is implemented in hardware (as opposed to the form >> retrofitted to existing CPUs in microcode). >> >> The RRSBA bit, "Restricted-RSBA", is a combination of RSBA, and the eIBRS >> property that predictions are tagged with the mode in which they were learnt. >> Therefore, it means "when eIBRS is active, the RSB may fall back to >> alternative predictors but restricted to the current prediction mode". As >> such, it's stronger statement than RSBA, but still means "Retpoline not safe". >> >> CPUs are not expected to enumerate both RSBA and RRSBA. >> >> Add feature dependencies for EIBRS and RRSBA. While technically they're not >> linked, absolutely nothing good can of letting the guest see RRSBA without > Nit: missing "come"? Yes.  Will fix. >> @@ -786,6 +825,20 @@ void recalculate_cpuid_policy(struct domain *d) >> >> sanitise_featureset(fs); >> >> + /* >> + * If the host suffers from RSBA of any form, and the guest can see >> + * MSR_ARCH_CAPS, reflect the appropriate RSBA/RRSBA property to the guest >> + * depending on the visibility of eIBRS. >> + */ >> + if ( test_bit(X86_FEATURE_ARCH_CAPS, fs) && >> + (cpu_has_rsba || cpu_has_rrsba) ) >> + { >> + bool eibrs = test_bit(X86_FEATURE_EIBRS, fs); >> + >> + __set_bit(eibrs ? X86_FEATURE_RRSBA >> + : X86_FEATURE_RSBA, fs); >> + } > Now that we have the same code and comment even a 3rd time, surely this > wants to be put in a helper? I did consider that, and chose not to in this case. One of these is going to disappear again in due course, when we start handing errors back to the toolstack instead of fixing up behind it. The requirement to be after sanitise_featureset() is critically important here for safety, and out-of-lining makes that connection less obvious. I considered having guest_common_default_late_feature_adjustments(), but that name is getting silly and it's already somewhat hard to navigate. There's quite a bit of other cleanup which ought to be done, like uniformly adding new bits first, then taking bits away (I suffered two bugs in init_dom0_cpuid_policy() getting this wrong during development), so I was planning to leave any decisions until then. > What about a tool stack request leading to us setting the 2nd of the two > bits here, while the other was already set? IOW wouldn't we better clear > the other bit explicitly? (Due to the EIBRS dependency or RRSBA I think > this can really only happen when the tool stack requests RSBA+EIBRS, as > the deep deps clearing doesn't know the concept of "negative" > dependencies.) Hmm - I think there is a bug here, but it's not this simple.  I think the only reasonable thing we can do is start rejecting bad input because I don't think Xen can fix up safely. Xen must not ever clear RSBA, or we've potentially made the VM unsafe behind the toolstack's back. If EIBRS != RRSBA, the toolstack has made a mistake.  Equally too for RSBA && EIBRS. I think this is going to take more coffee to solve... > Similarly what about a tool stack (and ultimately admin) request setting > both RSBA and RRSBA? Wouldn't we better clear the respectively wrong bit > then? People may do this in their guest configs "just to be on the safe > side" (once expressing this in guest configs is possible, of course), > and due to the max policies having both bits set this also won't occur > "automatically". The only reason this series doesn't have a final patch turning ARCH_CAPS's "a" into "A" is because libxl can't currently operate these bits at all, let alone safely.  Roger is kindly looking into that side of things. It is an error to be modifying bits behind the toolstack's back to start with.  We get away with it previously because hiding bits that the toolstack thinks the guest saw is goes in the safe direction WRT migrate.  But no more with the semantics of RSBA/RRSBA. I explicitly don't care about people wanting to set RSBA && RRSBA "just in case" - this is too complicated already.  The only non-default thing an admin needs to be able to express is +rsba,-eibrs,-rrsba to mean "please be compatible with pre-EIBRS hardware".  (In reality, there will also need to be some FOO_NO bits taken out too, depending on the CPUs in question.) ~Andrew From xen-devel-bounces@lists.xenproject.org Fri Jun 02 15:39:17 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 02 Jun 2023 15:39:17 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543191.847939 (Exim 4.92) (envelope-from ) id 1q56ro-0000yQ-Mu; Fri, 02 Jun 2023 15:39:04 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543191.847939; Fri, 02 Jun 2023 15:39:04 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q56ro-0000yJ-K4; Fri, 02 Jun 2023 15:39:04 +0000 Received: by outflank-mailman (input) for mailman id 543191; Fri, 02 Jun 2023 15:39:02 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q56rm-0000yD-Hf for xen-devel@lists.xenproject.org; Fri, 02 Jun 2023 15:39:02 +0000 Received: from esa5.hc3370-68.iphmx.com (esa5.hc3370-68.iphmx.com [216.71.155.168]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 9793989f-015b-11ee-b232-6b7b168915f2; Fri, 02 Jun 2023 17:39:00 +0200 (CEST) Received: from mail-dm6nam04lp2046.outbound.protection.outlook.com (HELO NAM04-DM6-obe.outbound.protection.outlook.com) ([104.47.73.46]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 02 Jun 2023 11:38:54 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by CO1PR03MB5698.namprd03.prod.outlook.com (2603:10b6:303:9f::23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.24; Fri, 2 Jun 2023 15:38:53 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::10bb:98bc:e36d:36ab]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::10bb:98bc:e36d:36ab%3]) with mapi id 15.20.6455.020; Fri, 2 Jun 2023 15:38:53 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 9793989f-015b-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1685720340; h=message-id:date:subject:from:to:cc:references: in-reply-to:content-transfer-encoding:mime-version; bh=qYxJroBmejkzKcho2q8kWhMQ6CfhU3M6FV6ElBdG6xI=; b=bmUhinz7w7TASZKbMkyCtHCyQwej/F2DgwPjLdZ4/nSPGi0DYXRgC25h tMWZoU13rcLXswn2xZbDvbarofJWTljdRlL+ihmEHKTa5xEbCx2hHvy04 A9PIMGnh7WtXgLTSecD+dDuc++fIbU0hbn10MDpve6azOc2Rk2QYRjBvi o=; X-IronPort-RemoteIP: 104.47.73.46 X-IronPort-MID: 110142828 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23://T80KNTFRkT2rjvrR2HlsFynXyQoLVcMsEvi/4bfWQNrUokhDUHn TcbCG2OafmOYDPzLdoiYN61o09S6pGHxtFgTQto+SlhQUwRpJueD7x1DKtS0wC6dZSfER09v 63yTvGacajYm1eF/k/F3oDJ9CU6jufQAOKnUoYoAwgpLSd8UiAtlBl/rOAwh49skLCRDhiE/ Nj/uKUzAnf8s9JPGjxSs/rrRC9H5qyo42tG5gZmPpingXeF/5UrJMNHTU2OByOQrrl8RoaSW +vFxbelyWLVlz9F5gSNy+uTnuUiG9Y+DCDW4pZkc/HKbitq/0Te5p0TJvsEAXq7vh3S9zxHJ HehgrTrIeshFvWkdO3wyHC0GQkmVUFN0OevzXRSLaV/ZqAJGpfh66wGMa04AWEX0uFYCz9i+ /AeFDAmUw+Otdy/y+mLacA506zPLOGzVG8ekldJ6GmFSNoDH9XESaiM4sJE1jAtgMwIBezZe 8cSdTtoalLHfgFLPVAUTpk5mY9EhFGmK2Ee9A3T+vFxvza7IA9ZidABNPL8fNCQSNoTtUGfv m/cpEzyAw0ANczZwj2Amp6prraWxXqnAtJIRNVU8NZosUSY1jI5AiZVblW7i+eai2yufNB2f hl8Fi0G6PJaGFaQZtv3UgC8oXWElgUBQNcWGOo/gCmSzoLE7gDfAXILJhZRZdpjuMIoSDgC0 l6Sg8ivFTFpqKeSS3+W6vGTtzzaBMQOBWoLZCtBQQ5b5dDm+N03lkiXEoglF7OphNroHz222 yqNsCU1m7QUi4gMyrm/+lfExTmro/AlUzII2+keZUr9hisRWWJvT9XABYTzhRqYELukcw== IronPort-HdrOrdr: A9a23:GCh4pq0y3RCMnV56vpG9swqjBJkkLtp133Aq2lEZdPU1SL38qy nKpp536faaslossR0b9uxoQZPwOE80lqQFg7X5X43DYOCOggLBEGgF1+XfKlbbak7DH4BmtJ uIRJIObOEYXWIQsS8j2njCLz/7+qjgzEl0v5a4856wd3ATV0i/1XYCNjqm X-Talos-CUID: 9a23:SuStom45EhRLBekXrdss82EeROwrfnvhzFztPEKKN29iE422YArF X-Talos-MUID: 9a23:3x8RtApTGl28kQwgzzAezzNTLcx4vY6kMwM2n5UspeqFFzxXOR7I2Q== X-IronPort-AV: E=Sophos;i="6.00,213,1681185600"; d="scan'208";a="110142828" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=ZjFs5kAtTIcQ+4hJfMQ5fnfh+NE258mi2vDOeB7IEx2X40bzfA2ylBjhUhHhpmdwkG/1+XpmmjmvnIMCIhipMNeo0YxTcoLQcUXm9gPHj5l8uoKNIdV+3tzb7khtoC9YVcQ80bzk9NvmBEx58WaKsPmgYJCpTQpteOF8QfATBv8FgwT4sN/m+eQDU4bp4efPD6FY8/5uN7twCztLGW9RavMpHejNumxPuWLTmPzpbwtLuuzYY840UOd6nSfClipwWs7LAUO4MCOhF9DhJK0Bpenyb19pY2NUCnjsddEYWw2/VSnCM+vUZnuX9v/gqRjB2exJAEva1557xy+FIxi+sg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=qYxJroBmejkzKcho2q8kWhMQ6CfhU3M6FV6ElBdG6xI=; b=DY19MnxORgU6LhvhRqnthDuCR/v8zQ6wsJXGCxYXiAOLsyUix2gBuGMqblF87dPtKkwFcTBvjmjr/nulBw4KVgXBkQCA70wu2dnVXG07lZeKPJL+pgzYaVlO0EGD0074gCiU68eBS878w3eXdCxee99sxbBwDhZedNs4kE7Etmjmi2TeREY3UttgLledNvfqCAPwc+FNJ7Uq+tjXkNOuxOw4D7l3yqVcwGvqaUKh2ARa3pNAIyMmFO6W7CyFqu3lYf5gHwhxLl2U7DawZqP6h0qkThCgGRp75fzLaxyfY3bGeqNdasjyOTXP+QP8xM6Xl52GbfhWAIL/abRABCk1fA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=qYxJroBmejkzKcho2q8kWhMQ6CfhU3M6FV6ElBdG6xI=; b=uQr4ictqcNecMFYGdjvdFLQljNJTI0e/SmrZkLF5tBc6j16bumYWBihH14pTMz4hewaf0Rz0H/o+KFefCq4eNTRHEA9jGcKj6IT3pIxZ4li2barkGgf84xKmznbtmeN68I4qAcLX3KkdQs0AR55pxflHPBghoODTUaa+5FPWpSw= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: <1987e108-3ab6-4971-78cf-0e7ba5facc04@citrix.com> Date: Fri, 2 Jun 2023 16:38:47 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH v2 3/3] x86/cpu-policy: Derive RSBA/RRSBA for guest policies Content-Language: en-GB From: Andrew Cooper To: Jan Beulich Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , Xen-devel References: <20230601144845.1554589-1-andrew.cooper3@citrix.com> <20230601144845.1554589-4-andrew.cooper3@citrix.com> <1ce6bd53-089e-e8ab-3b54-2720a3fd2c12@suse.com> In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO4P265CA0034.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:2ae::8) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|CO1PR03MB5698:EE_ X-MS-Office365-Filtering-Correlation-Id: 295ca348-bb91-43f9-67d8-08db637f77fb X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: CNcqsGKZvNob5ANj9ZhJu28Cvckg8NPwnWunY0Hl3CM/Os575GRTJ41Ad6y5mloJ+SHbDIk2BWNsDLlW3KIbRMGSDqyvsgCwn+8uSg/mOpbrZxUrosjxuWmwCtgJHExmqmEWHXvwnI4uZ0FXW5Vq5IHYUlPDC3mbT1eiL4aMWB9V2COwv5Uh1pzbW4FMw7B8MbFV8rDa0aql7CQFUeLJvm4NrgmoLIXTU4PgOrOmBdZ22FUhRl8ViDcv/i18sDKkjTIhRiGxFbTaB8j8bOqVeRG2OOnsIgipK44HlMTHaG2xw5qrMxep1cCIID8hsWg3X3UR+EksprhHVI5KuyXvqbAlxbuhZHxLq2E0noe8k+5awrDoDCJISD5RdGj96PWhrl3VCXjZkOrOiNKA5BZEk557o36m+tExOywvhyWqrneX0mUZwbPwkGqQ6YH4MiZOhuQw5rCsE8SjCA5hW98dY1z4scGhgR5LP2MLS1w0CcvgNP5esKNxnFVQ6UaS4/5lwFl3n0L6WYeaK3bm2FWfTWnLOE/2zAaEJ87GYNwx4DcS4ZxNS8fPs2R+IErQh3AAgk9wYtvjn5lN6emNERlQYVT/g7Zy/UJY01vcUCK80rLOSPg+kGqkvwDjiOPOG5EUX1Tb6UTgRSynChV73RD3Kg== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(376002)(136003)(396003)(346002)(366004)(39860400002)(451199021)(66556008)(66476007)(4326008)(6916009)(66946007)(316002)(2906002)(54906003)(31686004)(41300700001)(5660300002)(8676002)(8936002)(478600001)(6486002)(6666004)(36756003)(26005)(186003)(6506007)(6512007)(53546011)(83380400001)(31696002)(82960400001)(38100700002)(86362001)(2616005)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?UlJOQTlrbDAwU2dsZTdReE9qb1BTTWFiaitqWkU2M3ZRK2FPTm5IV2dQSDVJ?= =?utf-8?B?MlNYcmFTOFY1cjV5cmhhZjVOeEpKcm5seEh0cmYxR2x5dUoycTNNVzlZN2RX?= =?utf-8?B?bCtoVUdsOWRZdnhqV2pXQ2JhRmw1UlJtK2pmdXE0RGV0UXUrRUpvVFFnTEZt?= =?utf-8?B?ckM5ak5COEJyRnJaL24rR3RHRjVJWE5UZ2pXSEVSbEo1Y01xSXNOa2t6bEhr?= =?utf-8?B?UkpQaXFWbld1MjhOSEdvOXE3UnhNK3pQVUtxZUZGb0J4M3o5eHdMRFc3TTMv?= =?utf-8?B?R0M1Sms0enpuN2NjT2grOEFoa1U1RkpwSWQ2Y3NXanYzOEFlV2l1RUlyZ2V3?= =?utf-8?B?R1NiRVpzcjBndzFFWWNEaGlmY04rYm9DaW1ZUmtHTyt6WHJ4STY4cmxNWEhV?= =?utf-8?B?cTBkZllUUjR1R3ZJclhpSVNBS3ljeXVrL3pQcFNRSVRRMHJ3bGVmVUtFRkty?= =?utf-8?B?ZitBMWNVbzNtaiswRDFBZ0w2WHhXZ3hZbzBRV2JzN0VKdzJUQmJtWHlWQVNO?= =?utf-8?B?bkpzRmVVZ1FaeFVvd2k3S3hjS21lUWR4bHNsLzF1TE5xL2dNc3lvdEJWNVFh?= =?utf-8?B?U2UyUkRKSGIzSW02UENNcW13WlAyTXU5ejY1SXlrcDBiTHpSZ25LSDQyRis5?= =?utf-8?B?SWtIRkpwQzdxcHpLKzBPelZKNjVEMlQ4dWk4S1JzbGJYVWx0T3hXaG9YbjRp?= =?utf-8?B?NDgxTEYxMEViVkY5UHJ1WGxjclJFVTRHekthVFVzRVNudHJXWWV3U0tiUm9U?= =?utf-8?B?VXc4bkY0dnBVYWd0UUE1bnFTNnZwcGVJQjVjRGk2bHFPTTNtRnZjRE5yRERo?= =?utf-8?B?QWc1UU9Xa2ZLSHkyUGRMb1RvNnR6a2daWHR2djdJNkc5bVVsdzZlZk1KTGNk?= =?utf-8?B?TW94emJDZVRkVlY3R0Foc25rVlVwSlAvNHRjZ3RtNndrS3hOQWFLLzI4aHRW?= =?utf-8?B?U1M1TUJHazMxUWJJcGNjT1Npamg5ZnlaMURUMUJMdUgxbkxiYTBnVlpoVGxw?= =?utf-8?B?YzVMdk1kU0kyNzlUeE5KK1RWakF4S3A5NkptekhqVHVBcUxIV25jNzRTekhw?= =?utf-8?B?Z2Ywb1NQMmNrYXRBUExZRjBhYzQxUDRZYmorQjV3RUlOSnBwc3c3eUNldFhW?= =?utf-8?B?RzJsNVczZ3c2eDlVc3ZVbHdpZ3FHV0pCRzB1U0dtT0p5cEhOMTRmSEEwTFpB?= =?utf-8?B?d29Uc1hVT09WWTBFbTMwckcvbnVBZC9tcGJnMUZzT05HbC83aVJldU9xNGNi?= =?utf-8?B?N2Npa1JUamxabnlxMHJ5UzBXZjBlRVFsQVNHYW1Ya0QyNkxqU052dGdRSzY4?= =?utf-8?B?bFY3MEM1by8rNVd3MEx6S3FUWXcrQncvOTYxV004ZnpWZGsyMVhqb3VVaVVQ?= =?utf-8?B?OS94LytrNi9PVW9hMWYrZHNqQ0kraXNQNmZKSjlrQ3FFKyswdmpHTkd6M3Zj?= =?utf-8?B?aExIdHBUWm5ONlJaaW9ET0dETTZWS2xJSldTNHJ2M3JOVW8rVzFETEpRZDRl?= =?utf-8?B?RU1FazNjbWkzRUZ5dUxIQ2F0cFpOS2tiNkFuTnNTOGlRRmFzN3NvaHlKQ3pG?= =?utf-8?B?RVExWk5OMkdUZS9MZ3RrUXJuUkRZWDFOMjNadjV1L1p5bUY0U2VJQUdodjhp?= =?utf-8?B?Y0pqelMwNzFxbkdTMHB5K1l3OW5nb1hDRXhkejNvZ09zUnhGd09rU1ErTWtx?= =?utf-8?B?cHpCRjB2K0ZrMDJ0czhmY3JYL2sxRlJVNVpNQWFWc0tXK29NeFdMb2lFRk90?= =?utf-8?B?TkhXMWxOckVLVGJOUkltL1RpRUlrbkxxWnNBK25HdUl6alpWUEJNN2NvaXdm?= =?utf-8?B?UC9ESVgrSVBmTHZoTjNxSVkyTGxiaGR2aHA0eFp0eW42Yzc5WW9KVnhHOWo5?= =?utf-8?B?SExXSVljRlk3YWdvMElxWVFEOEZSWEd2NzRlZnFhVWNiRHBqVlJYSXR0SGJp?= =?utf-8?B?RTZYb3d1WlRXYXNsMjF1R1ptekpZWElOSEVsOVZmWGptU0RBNVZjZDFxT0V2?= =?utf-8?B?QWF5SWVOU3ppUWxKd2t6N0pZNXFnMDdmNGdsMlR1bmtFcFNvV3VoeUI5eTJh?= =?utf-8?B?ZnF1ejdPZDFEOS95MXFNQ1JIWDFxeERTVFZ0blIvZGVmMWpYY1BMUVdSRVIv?= =?utf-8?B?bDBTN09UQkJCOTI3eWs0aE5YMmQ2U20vYjFMZFd5V3grTW80WCs5K0pYcjN2?= =?utf-8?B?OFE9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: KYRIK155lvdrHadWR8T9FrmXiAFd/+ecv09dwLT1NnOR5n9racMORKvlDi5RH/O8GtwinxbQIxnHH8cRvz9GGzQaRRQ8FNn79XX5RtEEyMlfnMXWr+UgbAn7cpLNbu47dLIhdmTJ07NtAVz0l8AFhguzU2tWmFhbUzG5Uoy5fh2Unt97KCC1mxNdge/PyzzC3FO1qKnfseg5APzMxO73isJFPif6r1Jupj0kAWDn4bGzq8Skf2IfeT1BUPnKoAVqh2i9yTDOfnqvISYLvhTmPIQ23ffCZs6WZ0Hk+wfhki8MHFzccPPxfBNh0lKco6JyTfrfC2bvYujTz8dbeXMXZpZmOGEJpxUUvY7SRU6maHBln6GrGD4idMrWwRFaOotvgAg9JiMpvkD8C8buJs/O4Uz/LgQwVcvr+/eFKFI9A4RjiVsCTVs8D49EqwNvO3g9xsRuiRmV3ocggUeFdEms6m2qBN7aeW9kwT5tgyyU3NDY1Mo3d6ihNAtZddWKVis5N1HJlOtM+ofjhFYPiI6MVG7pvjKV8zd4RcQxOYvD/pkWnxUuk0nZsLzf5768BxqQlFKHCyuTUkEqv+JolnySjW9j3+pJK4GI8WNhE8X0bLqx/HtScFsSAWh5oW7QhueRXjwmMwo+qydjW/4gYOOxEoga9AY7Lqkvy7PMLM8692Uvw1xy9aSewUiqaRwf8yzngdYy+6jI2OKPvDSQTHKXKufMARKQxxry9aYtRPegcb2noZHJTaxRiZOfhTJ+JRmyXqlhi2RJuJVDCzCIOBV+N3FMkq+Zw1SufegxaMSXlVgLIRVMPDdP6HM/8pp5hwQm X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 295ca348-bb91-43f9-67d8-08db637f77fb X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Jun 2023 15:38:53.0972 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: mgllkQMKhLbyMlOvtxHqMLJJAg7rZvFnlIu9gcpDu35hk76TWP4vMTIyxr6NJdq3bh9bYzNf9n2768aIhPGtNJQvFg/wp66nPdXE8DKhTyA= X-MS-Exchange-Transport-CrossTenantHeadersStamped: CO1PR03MB5698 On 02/06/2023 4:29 pm, Andrew Cooper wrote: > On 02/06/2023 11:20 am, Jan Beulich wrote: >> On 01.06.2023 16:48, Andrew Cooper wrote: >> What about a tool stack request leading to us setting the 2nd of the two >> bits here, while the other was already set? IOW wouldn't we better clear >> the other bit explicitly? (Due to the EIBRS dependency or RRSBA I think >> this can really only happen when the tool stack requests RSBA+EIBRS, as >> the deep deps clearing doesn't know the concept of "negative" >> dependencies.) > Hmm - I think there is a bug here, but it's not this simple.  I think > the only reasonable thing we can do is start rejecting bad input because > I don't think Xen can fix up safely. > > Xen must not ever clear RSBA, or we've potentially made the VM unsafe > behind the toolstack's back. > > If EIBRS != RRSBA, the toolstack has made a mistake.  Equally too for > RSBA && EIBRS. > > I think this is going to take more coffee to solve... Actually, no. I'm going to delete the hunk modifying recalculate_cpuid(), and move this patch back to the meaning it had in v1 which is just "get the policies looking correct". It's still not supported for the toolstack to request ARCH_CAPS (the "a" marking), and the safely logic for that can come in a subsequent series along with the unit(ish) testing I was already planning to do. ~Andrew From xen-devel-bounces@lists.xenproject.org Fri Jun 02 16:07:13 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 02 Jun 2023 16:07:13 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543195.847951 (Exim 4.92) (envelope-from ) id 1q57Is-0004xW-TT; Fri, 02 Jun 2023 16:07:02 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543195.847951; Fri, 02 Jun 2023 16:07:02 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q57Is-0004xP-Oi; Fri, 02 Jun 2023 16:07:02 +0000 Received: by outflank-mailman (input) for mailman id 543195; Fri, 02 Jun 2023 16:07:02 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q57Ir-0004xJ-VC for xen-devel@lists.xenproject.org; Fri, 02 Jun 2023 16:07:02 +0000 Received: from NAM11-BN8-obe.outbound.protection.outlook.com (mail-bn8nam11on20600.outbound.protection.outlook.com [2a01:111:f400:7eae::600]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 804de2b1-015f-11ee-8611-37d641c3527e; Fri, 02 Jun 2023 18:06:59 +0200 (CEST) Received: from SN6PR12MB2621.namprd12.prod.outlook.com (2603:10b6:805:73::15) by CY8PR12MB7610.namprd12.prod.outlook.com (2603:10b6:930:9a::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6433.24; Fri, 2 Jun 2023 16:06:53 +0000 Received: from SN6PR12MB2621.namprd12.prod.outlook.com ([fe80::8018:78f7:1b08:7a54]) by SN6PR12MB2621.namprd12.prod.outlook.com ([fe80::8018:78f7:1b08:7a54%2]) with mapi id 15.20.6455.020; Fri, 2 Jun 2023 16:06:52 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 804de2b1-015f-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=baXw4koMvisnnc7+TYfL3V7OUuhnqwBt8MHotv8HafyTC04JYOS9PRKSvMsZat6lSnupXDmcTL/D6w5w5oIl3TxC11xjEiKMdGONNGuCPcfhvVRVYttpcXNP0SxMBOMxA4g1r740gHHIAdn0ZOc/RzqfPfJXpQpn3Ouf0P82i9RxFFi0LxbUvh4cNN2BXLSclayxF/LvXFUFsfQmrldnUEIwB9Jc/GHDZmgaayRtXMAxJN4EG6/oeJORie850v6grwSYv8jTrMEd7NJXVFKrDMH+p7pSSSFxzSMJJYnYPDSDClOruO7KLU3l7/Pex0mX8VsUOegVzrVGhAn4ZWWWIA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=5a0koAUDfWHrBhedsq56FtDxkqOYbJZjyQN64OymmH0=; b=AQ0oFmz+OkBVzgMF3aydhXReEGmyqig3eRy3KB0xdLsFkF5UyRTLMdh8vuKG8UvYvOrX1+kY9W1t6HlKPH1874XFiyQfoB6ef3ptdvNKzDHrbOPdnQtUBxFwPbNcipBL3BkL0bHJ5NN3y3HvI87VQymb4NUFAbLLdidUDMMKcf1dG5oOVhLT2eIaeXzljq0MGMNBVZ5kQNEBoV6BwrFvBdPIIxB0TfIllwyteOCnThdkog5cMj1Ld3WGWEroFIJ1R/KMVhcgeVfl/fNwhxlTPurBad9zZITn9+Qu8oXW1No4w+J5PVdH6dRA/HBtiarC8R1RjIuWMRc0Rk9E5Yh8fg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass header.d=amd.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=5a0koAUDfWHrBhedsq56FtDxkqOYbJZjyQN64OymmH0=; b=dOVPBDB7RTZkhvQu/3sEcT2/dq3wWj1zGGaMmM4JC+o8G07TxVMLsEFg8moGQsvJNm0/nfBW3Habrz/wBIJr4oJ9XF62y2aTzHv0OljBYp+1Vjjv3sTIYAH/AYXNwrAJlY+28aI0MfHtGEI2jjU0cyiGgz3sQe2+ubs0wwg/NGg= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=amd.com; Message-ID: <6e1ef77c-0df4-7566-0aab-04841e927c40@amd.com> Date: Fri, 2 Jun 2023 17:06:28 +0100 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: Listing the tools required for Xen development/testing on x86 and Arm by the community To: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= Cc: "jbeulich@suse.com" , andrew.cooper3@citrix.com, christopher.w.clark@gmail.com, nathan.studer@dornerworks.com, Stewart Hildebrand , Stefano Stabellini , Julien Grall , Bertrand Marquis , "Volodymyr_Babchuk@epam.com" , Rahul Singh , Henry Wang , Doug Goldstein , Juergen Gross , dfaggioli@suse.com, elena.ufimtseva@oracle.com, anthony.perard@citrix.com, george.dunlap@citrix.com, rosbrookn@gmail.com, lukasz@hawrylko.pl, dpsmith@apertussolutions.com, mateusz.mowka@intel.com, kevin.tian@intel.com, jun.nakajima@intel.com, paul@xen.org, Wei Liu , konrad.wilk@oracle.com, ross.lagerwall@citrix.com, samuel.thibault@ens-lyon.org, christian.lindig@citrix.com, mengxu@cis.upenn.edu, tamas@tklengyel.com, aisaila@bitdefender.com, ppircalabu@bitdefender.com, "xen-devel@lists.xenproject.org" , Michal Orzel , "Stabellini, Stefano" , "Garhwal, Vikram" , Xenia.Ragiadakou@amd.com, Stewart Hildebrand References: <9079757e-72e3-3a68-5e78-9130822003e9@amd.com> From: Ayan Kumar Halder In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO2P265CA0301.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:a5::25) To SN6PR12MB2621.namprd12.prod.outlook.com (2603:10b6:805:73::15) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SN6PR12MB2621:EE_|CY8PR12MB7610:EE_ X-MS-Office365-Filtering-Correlation-Id: a3be72cc-3fe4-4604-5ab0-08db63836130 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 7vKKmhL6X8DmnjjtOB7lFZPlci6j9LecL1nxGaWEefxOsxyASWxLCh4tq2Vhc2d1wybJOUmHFRN4lqhqPt+qszkylHG7ZteUK6da8iREwa/0W0A34XGD80ivxveYdSFzNji/Ax3h6XumoVwJJk6MDx24SEQ80obgQGZCcaXdfBNTDiZyoVBXoLFBYEHczCiDSpv/C5Q4GguOMR5ObK8TGFDccJvHRaM6/vJu7uglDI4BUTVDPF61S5JQrnb5dRSbIaCyCgAdFqquCfHt12+b25zSUXIf4K29pPfCEKpqpZntTCuXlspMFffKkpyAuSYukHO94ZWswKmr2OCfcOGPnxfZtX63SsduGZmqWAlxEImZQBRP+5nss63KR0VHHw+ksSRyBA75B6XYJtW0eMY/NWO43m4zIH5yTrFTD2r4M5D3iLREy48WpsRQnUV1HL/b9gAnEduiFZB0dyvLnpfctXrCqEBoogYwi3LfAmdKAE7lJItfqm/ohDa8ENd+gyMDdSZPDfqVfI0EZSXmjUa2YMX0vndb3zjA88R+LfRG1WijDDI1lv6GS0vBgYA/VbtuOFRXGQFbymvWLXqLZmECv+LWUI9mkFhzqHi6W4Tn/XgWywKl1lS2fzZ1yq2u9NM6VCFPPpgrVOHxQL79iEZ9H32VN01Tu0Ks27HSgk1XDtCqRk8yOHNHLGzPJqA4aR1L X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SN6PR12MB2621.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(366004)(346002)(376002)(396003)(39860400002)(136003)(451199021)(54906003)(8676002)(8936002)(2906002)(66476007)(66556008)(66946007)(6916009)(4326008)(41300700001)(5660300002)(31686004)(7406005)(7416002)(478600001)(316002)(966005)(6486002)(6666004)(6512007)(53546011)(6506007)(186003)(26005)(83380400001)(36756003)(31696002)(2616005)(38100700002)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?a3M3SDAxYkNLeFdIdjdVV2lrdGsyUkh5U2wzS0RMcEZtRk1ObXpVQXhhUFZv?= =?utf-8?B?TFBrajZnZ1h4WndnczVHL0ZPdG5Nc0xYVmtxOUxnbUljUnBPbC94ald3L05n?= =?utf-8?B?ZVdRclBOU3JEMmd2aGo4Nms5R1NjcjF3SHFNa1lDbU41OG1aV0RnOHFYSmlr?= =?utf-8?B?NTVMK1crZGVqVDdXQU84U2xack9LUnoxOXUrakYvR09EUmNXcW1BejhXam85?= =?utf-8?B?dWRIRmZrUVcwZndUaU1oU3VhMFdXa09OVXZWaVlyWHE1aVB2Z2s4WWJ5cVhr?= =?utf-8?B?V2pvVXVqTjhWcUFJYW00VVpzaktEc2RUSlRaLzlEMGt4UFpYU3ZQZThvMkNl?= =?utf-8?B?NzZmdTBxOHFOQTRrcXVhMVAzY1RoNFlaeXZPSnUxS1djbnA3YlphMzJRU21l?= =?utf-8?B?SWRwREU1QUtVc0o4aytIZXMvMG9VRzdLZ2lKeXF0WXp2R1I1d2JvUCsvUXdL?= =?utf-8?B?elNVcWo3UzQ3aXh3U0RHTnhCWjUza0pnbnUrZmRSLzh0VW9HOUhFdzhvR1Bq?= =?utf-8?B?YzdhRTlZUEVJS1JaMXZROTB3SUh4cmdUVlpWWGFGV2tzTnVpRWZFR1dPQkJP?= =?utf-8?B?c0RpaElmQ1RCZHdIZEUySjJUSFlnMCtxNjNJYmV4dnV1RnV0aU9ScEg3QnRR?= =?utf-8?B?VWFGWVBUNVBYVzRZdDJzcHRicmVCZFpVOWJuc1k0Y3V5aXM4bVZkbytNYXQw?= =?utf-8?B?c3VHN2psdjdrMGJ2ZFBwTnhIRzRjWmN3VXE2clI3K0p0Y0FDM2t0empRMHd5?= =?utf-8?B?dS9kMXR2amNtT2FsWUE5RFVJSnZLNU1YelozVkN5akN5Z1hGWVJtRHNZUFZx?= =?utf-8?B?eEUyWFFlZFZHSW93R0w2bndJa2l5elF0bkZEM2lPTW9mUmcxcUNST3phcEwx?= =?utf-8?B?dUdKVEgxZjhrRUFhZGVZc1g5czJPTHViU2NGckltdjZ3VVZGSEc0Mmk0bFZW?= =?utf-8?B?aVBzWS91NmRWMXBoTk5ZNXJxaldMSTFGM201TW1kR0VrYlI4dEMwTHVad1JR?= =?utf-8?B?THFVU0Fta25zaGd3ejdBblFyc2ptL0orN1AxakpXdDZzb0ZjM25Jek4wdTNK?= =?utf-8?B?a2RoQnVWVFpRc2FYSUhGYm5GSjJqNHREVGVMNWV0dEgwZVVOdDlUUkNaTHZw?= =?utf-8?B?R05OVFlBUHVjQ0xQQ1FjbDVRWnhaa0R3dG5KcG1JOEE5dXd5dHpGT2xUOFVr?= =?utf-8?B?a1NJWjZXdkZrS2k4U3l0TkhsTnFUVE5pdFlld0pPV1FIUEwwUXBsNkF4NlF1?= =?utf-8?B?UmJRZ0tsc0VlS2FxSjBtT0lOTWJ2d29oVWZIRUQ0UFU0UTlBdldFNW43YlZ1?= =?utf-8?B?eXJMelV5cUFIeHRHNm1OOXJZdUtBaEhlZUk2NEdBaVdnTnNCQXUvTGJsUU4y?= =?utf-8?B?MlpuRE9WMDduYWZQNSt6eFoyQmtyMFhjcmdrQmlRb2RPdmlESldEOVRMOHk2?= =?utf-8?B?NmJ4Zm9BdFBoRzZPT00vSEhWbExnRDRxamd1T0hDVDRIU1c5Nnp5SG82V05j?= =?utf-8?B?L0hWWmdPaXI3b3ZUa0Eya1VKM1lMZitac1lROHZDM01QQlh4dnRoSGtmOUx6?= =?utf-8?B?K3djZjdRTGgvOWxkc3dFSzl1U203ZndxaFNTR2NDRGQyKzVnUGhFZkFPMVZn?= =?utf-8?B?cktTUHRBVnRFN2V0VnZlb2pMVUlCcjk4UHNtdVpRSTlRc3owZDFTNG5nMTRy?= =?utf-8?B?elRoeGVZSElVTkdwZVcxUWxOWDA2MllxTXJhNFRTRGMzbVZtbXFRZWdLK0NO?= =?utf-8?B?K2ZoNGY5UENQOXpZK2NQOVJ4elVCY01CVWQ1VmZMM1QzcU9JZzJBbzhrYUZa?= =?utf-8?B?TnVEYXk0Uk1MQzFZU2pySi9TUmp5S0pwWEZiR2o2LzMwblp5RXNqZVBENjFW?= =?utf-8?B?TjJYT2x6RlpPOCt5Z1lOQk1obEFHcWc0c1lhaVZXVlF3N0grc3NRZHBFd0hR?= =?utf-8?B?NVh4NDJwYzR4UFpKdVBFaGswVmU2YmZCRlJ4SzJWTktPanpUT2hrZEdWVHRT?= =?utf-8?B?bEY1aHQreC9Nc2hmZWVqV1kzZlQ0WTBxaHdZR0JaRHVjUm4zMW1abnBId1Jn?= =?utf-8?B?d0QzUmhoZ29ld0V5RFZnZHFQVmVNY0JYTkYvUlBrL0JsczBWcG5qdkhRZUUy?= =?utf-8?Q?ntBrCYeCh1SaD00f668K2yV4z?= X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-Network-Message-Id: a3be72cc-3fe4-4604-5ab0-08db63836130 X-MS-Exchange-CrossTenant-AuthSource: SN6PR12MB2621.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Jun 2023 16:06:52.8622 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: iEsYr8sRcL+ANhXDpkr77TyK5d5oYEMlA7AmGgWD73wewX9d3wcKhR+/3cCDPJ/WOnTNiVYZFSSBGX/WSmWSCQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY8PR12MB7610 Hi Roger, On 02/06/2023 16:24, Roger Pau Monné wrote: > On Fri, Jun 02, 2023 at 02:46:03PM +0100, Ayan Kumar Halder wrote: >> Hi Roger, >> >> On 02/06/2023 12:43, Roger Pau Monné wrote: >>> On Fri, Jun 02, 2023 at 09:48:48AM +0100, Ayan Kumar Halder wrote: >>>> 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. >>> What is the end goal of this? >> We are trying to do an initial assesment of the requirements for Xen >> functional safety. >> >> As a first step, I am trying to make a list tools which are in someways >> related to Xen development/testing/deployment. >> >>> I'm kind of unsure why do you care about which editor I use to >>> generate my code, that's up to the developer. >> I agree that editor, email-clients are something that are an individual >> developer's choice. >> >> However as it is related to Xen development, we want to atleast put down >> some of the commonly used tools. >> >> At a later state when (and if) we go through the list with a safety >> assessor, we might prune some of these items. > I have very little idea about what's required for a safety assessor, > sorry. Same here :) > > Will this have an impact on what tools are allowed to be used when > working with certain parts of Xen? (the safety certifiable parts I > would assume) At the moment, I am not very sure. At the least, our first step is to gather the list of existing tools. > >>>> I appreciate if you can let me know anything I missed or mistaken and the >>>> version currently being used (for some of the tools). >>>> >>>> >>>> 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 >>> assembly (gas), python, perl, shell, Makefile, bison, flex, ocaml, >>> go... >>> >>> Likely more that I've missed. >> Ack >>>> 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 >>> I do use an LLVM based toolstack, so that's usually latest LLVM import >>> on FreeBSD. We do also test this on the cirrus-ci, see: >>> >>> https://github.com/royger/xen/runs/5334480206 >> Thanks, this is interesting info. >> >> For the moment, I am ignoring the downstream forks of Xen. > That's not a fork of Xen, just plain Xen hosted on my personal github > repo. Ok > >> I am only considering the tools used by the upstream Xen and the associated >> CI/CD. > Gitlab CI does test with LLVM toolchain also. > > osstest does test FreeBSD guests, but no FreeBSD dom0. Ok > >>> I_n any case I think the scope to some of the questions is unknown, >>> it's not feasible to expect to list every possible combination of >>> Linux versions vs Xen version vs whatever guests versions a given >>> developer might be running. >> I agree . That is the reason I am picking up the compiler, linux, binutils, >> firmware, etc versions from our gitlab CI. >> >> It also acts as a proof that we are testing Xen against a known set of >> compiler, linux versions, etc. > OK, so the question is not what every developers uses, but you trying > to narrow down the scope to a specific environment? Yes, I am trying to do 3 things here :- 1. Gather the most commonly used developer tools - For eg vim, emacs, mutt, thunderbird 2. Gather the current tools used in any existing upstream Xen testing - For eg gitlab tests, OSS tests, XTF, etc. Here, I am particularly interested in the libraries, compilers, binutils, kernel, hardware/emulator, firmware and their respective versions. 3. Gather all the dependencies for Xen - For eg C89, C99, python, Asm, OS packages mentioned in README (as Christopher pointed out). > > Maybe what you want to do is create a specific container in the Gitlab > CI that has the specific tools versions you care about from a safety > certify angle. Yes, that might be a possible approach. - Ayan > > Regards, Roger. From xen-devel-bounces@lists.xenproject.org Fri Jun 02 16:08:31 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 02 Jun 2023 16:08:31 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543200.847960 (Exim 4.92) (envelope-from ) id 1q57KH-0005c5-A8; Fri, 02 Jun 2023 16:08:29 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543200.847960; Fri, 02 Jun 2023 16:08:29 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q57KH-0005by-6i; Fri, 02 Jun 2023 16:08:29 +0000 Received: by outflank-mailman (input) for mailman id 543200; Fri, 02 Jun 2023 16:08:27 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q57KF-0005bs-T2 for xen-devel@lists.xenproject.org; Fri, 02 Jun 2023 16:08:27 +0000 Received: from mail-wr1-x433.google.com (mail-wr1-x433.google.com [2a00:1450:4864:20::433]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id b4b17a11-015f-11ee-b232-6b7b168915f2; Fri, 02 Jun 2023 18:08:26 +0200 (CEST) Received: by mail-wr1-x433.google.com with SMTP id ffacd0b85a97d-3094910b150so2294373f8f.0 for ; Fri, 02 Jun 2023 09:08:26 -0700 (PDT) Received: from EMEAENGAAD19049. (default-46-102-197-194.interdsl.co.uk. [46.102.197.194]) by smtp.gmail.com with ESMTPSA id c4-20020a5d4144000000b0030ade1b9400sm2072671wrq.30.2023.06.02.09.08.24 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 02 Jun 2023 09:08:25 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: b4b17a11-015f-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cloud.com; s=cloud; t=1685722105; x=1688314105; h=in-reply-to:content-transfer-encoding:content-disposition :mime-version:references:subject:cc:to:from:date:message-id:from:to :cc:subject:date:message-id:reply-to; bh=UfFjQCoLLL8uV8X4fRXN/AhOmA7BAizI7I8Ds3Z3wiE=; b=kLfqe6GWyh1Ez/mFzI3v6aKD4W6PlI2j7TfT0jXdfJvDKSTCtrvUKI24b+hQBZiJzP TzcDNf/qZeo7ygBlierINi8YYKFzRy/lDKj7B0mLizZON28ISGVDLZc7ombrDo2n1FP+ lnUChRJhrp5qZInnk9GX27rNdwumSS3heqDp4= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1685722105; x=1688314105; h=in-reply-to:content-transfer-encoding:content-disposition :mime-version:references:subject:cc:to:from:date:message-id :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=UfFjQCoLLL8uV8X4fRXN/AhOmA7BAizI7I8Ds3Z3wiE=; b=cybJ0LlxIlSiJZZDf3n/uj9Jncmol26WrJW0LADdEiEj6z2NL3dkzfEhA7CgpeKX90 J+GoLNXhH5g8fP5yR2Q6C+ddt8lHXHO5p0IPmXl/pafZyv3Z/li6jDFc2rxLsfPFxPsI qRLkvsD94y27ke9GVJrgrE4gTMDwLOcIfOEm8lfyznvd1sNCLmGSGsb1uLCO6iJcnocP 5QiKskj5upqLBOE6PJpap8hAAVcohvnwUBaJCjdoK5KPCoAwizK6xodhe8if2q91h/sn cAPDtc3EIS3fPpSh94D2/JtY2c89jffLoeW4tchHUivjjpi/JC0JkWFhha1ni0alyyP2 WyPw== X-Gm-Message-State: AC+VfDyB6URCuZ4m3WwHEdPoAn+OTfTj9QL8Y4GfiM+IhgyDzx2a9kGe 9GZND2RK6vT+hTy8SnHQohWCGw== X-Google-Smtp-Source: ACHHUZ6JQacKMqqybsokzg9SPZ6JmvsLxKnIZgLC3MN04KFCXQkz9Tg5/XircJk9UjfyzxSfMvA8vg== X-Received: by 2002:a5d:608a:0:b0:309:4999:7549 with SMTP id w10-20020a5d608a000000b0030949997549mr340806wrt.46.1685722105606; Fri, 02 Jun 2023 09:08:25 -0700 (PDT) Message-ID: <647a13f9.5d0a0220.d924.94bb@mx.google.com> X-Google-Original-Message-ID: Date: Fri, 2 Jun 2023 17:08:23 +0100 From: Alejandro Vallejo To: Andrew Cooper Cc: Xen-devel , Jan Beulich , Roger Pau =?iso-8859-1?Q?Monn=E9?= , Wei Liu Subject: Re: [PATCH] x86: Add Kconfig option to require NX bit support References: <20230601174327.11401-1-alejandro.vallejo@cloud.com> <55945272-58d8-3dd3-19a4-0dea9be1db6d@citrix.com> MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <55945272-58d8-3dd3-19a4-0dea9be1db6d@citrix.com> On Fri, Jun 02, 2023 at 03:22:20PM +0100, Andrew Cooper wrote: > On 01/06/2023 6:43 pm, Alejandro Vallejo wrote: > > diff --git a/xen/arch/x86/boot/head.S b/xen/arch/x86/boot/head.S > > index 09bebf8635..8414266281 100644 > > --- a/xen/arch/x86/boot/head.S > > +++ b/xen/arch/x86/boot/head.S > > @@ -647,11 +653,18 @@ trampoline_setup: > > cpuid > > 1: mov %edx, CPUINFO_FEATURE_OFFSET(X86_FEATURE_LM) + sym_esi(boot_cpu_data) > > > > - /* Check for NX. Adjust EFER setting if available. */ > > + /* > > + * Check for NX: > > + * - If Xen was compiled requiring it simply assert it's > > + * supported. The trampoline already has the right constant. > > + * - Otherwise, update the trampoline EFER mask accordingly. > > + */ > > bt $cpufeat_bit(X86_FEATURE_NX), %edx > > - jnc 1f > > + jnc no_nx_bit > > +#if !IS_ENABLED(CONFIG_REQUIRE_NX_BIT) > > orb $EFER_NXE >> 8, 1 + sym_esi(trampoline_efer) > > -1: > > +no_nx_bit: > > +#endif > > It occurs to me...  This will prevent Xen booting in firmware > configurations where XD-Disable is active, despite Xen having > unconditional logic to turn XD off later in boot. In practice setting/clearing that bit was done through a BIOS configuration knob AFAIR, so I wouldn't be too worried about forcing it open. > > Linux deals with this in verify_cpu() (early asm) along with a FMS check > protecting the access to MSR_MISC_ENABLE, rather than using rdmsr_safe() > and catching the #GP. > On a related note, we don't use rdmsr_safe() either. We just hope it exists on any Intel CPU. It fortunately does on any Intel CPU we care about because it was introduced shortly before Pentium 4 (Netburst), so we're fine since we mandate long mode. > > In terms of which CPUs are a problem, we almost got very lucky.  NX is > part of the AMD64 spec, and all AMD, VIA, Centaur and Intel Atoms have > this property.  64bit and XD were both added midway through the Pentium > 4 era, and appear in the Prescott E0 stepping. > > However, it appears that the prior stepping, D0, had 64bit but was only > unlocked for certain OEMs.  (At the time, Intel were still trying to > push Itaniaum as the future, and were trying hard not to go the x86_64 > route.) > > Specifically, > https://en.wikipedia.org/wiki/List_of_Intel_Xeon_processors_(NetBurst-based)#%22Nocona%22_(90_nm) > is the suspected problem set. > > > So, I think this does want to turn into a series, with the first patch > moving the XD-disable logic into this path, I agree. Will do. > after which I think there is > a strong case to be made for defaulting CONFIG_REQUIRE_NX to yes. >   > ~Andrew A machine with long mode and no NX would be exceedingly rare, that's for sure. Alejandro From xen-devel-bounces@lists.xenproject.org Fri Jun 02 16:14:55 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 02 Jun 2023 16:14:55 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543204.847970 (Exim 4.92) (envelope-from ) id 1q57QM-00074P-0R; Fri, 02 Jun 2023 16:14:46 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543204.847970; Fri, 02 Jun 2023 16:14:45 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q57QL-00074I-TF; Fri, 02 Jun 2023 16:14:45 +0000 Received: by outflank-mailman (input) for mailman id 543204; Fri, 02 Jun 2023 16:14:44 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q57QK-00074B-Qf for xen-devel@lists.xenproject.org; Fri, 02 Jun 2023 16:14:44 +0000 Received: from esa2.hc3370-68.iphmx.com (esa2.hc3370-68.iphmx.com [216.71.145.153]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 941608ba-0160-11ee-8611-37d641c3527e; Fri, 02 Jun 2023 18:14:42 +0200 (CEST) Received: from mail-bn7nam10lp2104.outbound.protection.outlook.com (HELO NAM10-BN7-obe.outbound.protection.outlook.com) ([104.47.70.104]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 02 Jun 2023 12:14:39 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by MN2PR03MB5214.namprd03.prod.outlook.com (2603:10b6:208:1ef::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.26; Fri, 2 Jun 2023 16:14:36 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::10bb:98bc:e36d:36ab]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::10bb:98bc:e36d:36ab%3]) with mapi id 15.20.6455.020; Fri, 2 Jun 2023 16:14:36 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 941608ba-0160-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1685722482; h=message-id:date:from:subject:to:cc:references: in-reply-to:content-transfer-encoding:mime-version; bh=XFPv7WypZgzmAoGOLgUcRrLawxkZpdT90vj6FHjtCV4=; b=TWqVmD+FWZMk72t9J/B6hZhgN64w14BknuRNkorNRXMQgTtYFgHwOHe3 NAayKBXHAi94N7Uf2udUBP17nAMfXjcSDndsUmFe+j/qYky5zdcjBYbh7 oNopFB69RyOU9fbRH3R9t7i/RmaCzh970FmQf3S1o29x3ThGaf66RRsQx E=; X-IronPort-RemoteIP: 104.47.70.104 X-IronPort-MID: 111275469 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:ODsXcqx7xD9tCyOhXL56t+f3xyrEfRIJ4+MujC+fZmUNrF6WrkVUn DdJDT2Faf2MazPwet4kat+ypkgPu5XUnNQ3TAJrpCAxQypGp/SeCIXCJC8cHc8wwu7rFxs7s ppEOrEsCOhuExcwcz/0auCJQUFUjP3OHfykTrafYEidfCc8IA85kxVvhuUltYBhhNm9Emult Mj75sbSIzdJ4RYtWo4vw/zF8EsHUMja4mtC5QRgPaoT5zcyqlFOZH4hDfDpR5fHatE88t6SH 47r0Ly/92XFyBYhYvvNfmHTKxBirhb6ZGBiu1IOM0SQqkEqSh8ai87XAME0e0ZP4whlqvgqo Dl7WT5cfi9yVkHEsLx1vxC1iEiSN4UekFPMCSDXXcB+UyQq2pYjqhljJBheAGEWxgp4KXxg8 aYxKB0TVBSkndOswryRaapxmdt2eaEHPKtH0p1h5RfwKK9+BLrlHODN79Ie2yosjMdTG/qYf 9AedTdkcBXHZVtIJ0sTD5U92uyvgxETcRUB8A7T+fVxvDCVlVQtuFTuGIO9ltiibMNZhEuH4 EnB+Hz0GEoyP92D0zuVtHmrg4cjmAuiAdtIS+DkqK8CbFu7xnwBIzc0UHyArODgjkqecvFSE WIKw397xUQ13AnxJjXnZDWxpHOGtxgQQd0WDeQ+7AyPzYLf5wGECi4PSTspQMwrsoo6SCIn0 neNnsj1Hnp/vbuNU3Wf+7yI6zSoNkA9L2UPeCsFRgst+MT4rcc4iRenZslnOL64iJvyAz6Y/ tyRhC03hrFWh8hU0ay+pAjDm2j1/sSPSRMp7ALKWG7j9hl+eIOue42v7x7c8OpEK4GaCFKGu RDohvSj0QzHNrnV/ATlfQnHNOjBCyqtWNEEvWNSIg== IronPort-HdrOrdr: A9a23:u9NfY6lmzwlfBgJJHSWMIq4lt63pDfN+iWdD5ihNYBxZY6Wkfp +V9sjzhCWetN9OYhkdcIi7Sc69qADnhPhICOgqTMGftWzd1VdAQ7sSiLcKrwePJ8SczJ8V6U 4DSdkbNDSYNzEX4voSizPZLz9U+qjkzEnev5a8854Cd2BXQpAlyz08JheQE0VwSgUDL4E+Do Cg6s1OoCflUWgLb+ygb0N1FNTrlpnurtbLcBQGDxko5E2lljWz8oP3FBCew1M3Ty5P+7E/6m LI+jaJrJlL8svLhyM05VWjoKi+q+GRhOerMfb8xvT9ZA+cyzpAL74RIoFq9ApF2N1Hrmxa2O Uk6i1QRfhb+jffeHq4rgDq3BSl2DEy62X6wVvdmnf7p9flLQhKfvapqLgpAScx0XBQzu1Uwe ZOxSaUppBXBRTPkGD04MXJTQhjkg6xrWA5meAegnRDWc9GAYUh2rA37QdQCtMNDSj64IcoHK 1nC9zd/u9fdRefY2rCtmdizdSwVjA4HwuAQEIFpsuJugIm6ExR3g8d3ogSj30A/JUyR91N4P nFKL1hkPVUQsoffctGdZc8aNryDnaITQPHMWqUL1iiHqkDN3XBo4Wy+rkv5O2xPJwO1oY7n5 7MFFNU3FRCB37GGImLxtlG4xrNSGKyUXDoxs1C5592tbvmWrLxPGmGREo1m8Wtys9vf/Ezm8 zDSa6+L8WTU1cGQ7w5pDEWc6MiVkUjbA== X-Talos-CUID: =?us-ascii?q?9a23=3AbTT9G2h1YriQT8iqRe55++6oqDJub1PZll7QDlG?= =?us-ascii?q?CDUFzeaeXR3Wzu757jJ87?= X-Talos-MUID: 9a23:LCrlzQqterhCkh1Kh4cezzFyJuxCwaGJM00UyJECm+CnOBZeJQ7I2Q== X-IronPort-AV: E=Sophos;i="6.00,213,1681185600"; d="scan'208";a="111275469" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=PlrsZBIM6ktYE84Fp+SHOznwZqdJFAyEUdqv6BSC7/0RXDCIblFwPm4tTaZLWXCLN217/9Qx2U5wj8zAx6GPzFLSntJy5dtI4Y/h5NzJi1bhlIe0d2Ggf91JVBmTV5Km0ZY2d2UNueiRBL5Z8yg/Z8FqLwPUmTlgDZWOIj3RuxY2sbI7MRdF9/JwzJc7HPeQ/+GDw9kxoB+KI2WDQjJ/4R08nokOw3Y1I3SdeRRkcidPOOtSPRRRrzr+d8S2zdT/RiVpZXCzpFSqKP81VkmNxNIpQMONVlv3XAjXBJ7uKL7S91cGntRD+urnGIJwb+sfgriVlXWLtTHrX6XQoiiSgg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=XFPv7WypZgzmAoGOLgUcRrLawxkZpdT90vj6FHjtCV4=; b=jQsoiSSlxwqdEtttBrn4cDKFXUsFWhN1Nn4N0kg1lSmlgDvX7Se9c6sSi5Lv5pgL963puLHarfMreH54u7KlmtOGxP+bWCdQ6yT7ll17b6Q7QXqYb4BVO93CdI5O2ECsSRUQtNNWIAutDyIaJxv0ck7WQ3etEefg1flFYTdXP3biEdi1Jz3/E24zUYF0kwEAg8x5Uu3sQmmJZCUaj5BCzj+qA8CFm8JLnnyF1pcYbEG3v4Qq787Y/FgQR0+OpD05y9ZXAmpyr3uwH/j0ND3RZhXhBwQxAc0IgVts1yPPTmrOHXGgL9ePXZZE3riERCOzXZAXFnu2+SVuKq5dnBtpFA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=XFPv7WypZgzmAoGOLgUcRrLawxkZpdT90vj6FHjtCV4=; b=cNvHPx+gCPIHjqQEArDhtlDZQKI4vLa2+f3FtdAo3RcA1F0JnQobufYebUfEquDHb/xQcfdhKl/wfNJxP8ygEwoQ3Q5UmM6qwy84WxNbzIn2GG/lCSU7dky1TYxphFn1836Bq0ipxrXuhz6OwFuBosQKTqkNNXo/HMiDpxS0iC4= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: Date: Fri, 2 Jun 2023 17:14:30 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 From: Andrew Cooper Subject: Re: [PATCH] x86: Add Kconfig option to require NX bit support Content-Language: en-GB To: Alejandro Vallejo Cc: Xen-devel , Jan Beulich , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu References: <20230601174327.11401-1-alejandro.vallejo@cloud.com> <55945272-58d8-3dd3-19a4-0dea9be1db6d@citrix.com> <647a13f9.5d0a0220.d924.94bb@mx.google.com> In-Reply-To: <647a13f9.5d0a0220.d924.94bb@mx.google.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO0P265CA0008.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:355::11) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|MN2PR03MB5214:EE_ X-MS-Office365-Filtering-Correlation-Id: e81bf1db-3a5c-4842-e89c-08db6384754c X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: SooRqfDSQ95cYxHvWBoyz54AuR2EdQyU+aAuvxDA+srJncCp622WKiWHO+bw79fHKfgX8uAnuFZC0G/ot5ulLd0+qVVg4ASl84Qu4Kmk2YarGieVU7fg+KJL+Lx2sdEhOAXr4oYs+HuK7Kn+EfZVDRhCAxmFYad3LitlTdo+j/c/60slnCMa3GQ3F+ErIoHsEiK2960UzCZqvp84lRCNCzv/VDoNOFX8uFKxzVA3R5P7+roGE390AKU37fRqDnUAQYaTgdjipVwhSl6iLkOgzpKURj0UAbc9AOnn2ObUKa/JC5PFCUgHcbbo/MqLLX3wskRtAPOgjn8s5CoILqsq06qYoI3G8kfSsJXKgCC0F9eI1Cu/Ql8ElwemDsX0YCbMNwssvpRXwYVCwmcR6oEjTaCm7vpbiJnqRY5BNY7gra3YSh+q6Njfh73xlFMBS1YW8XjJn+4QKY7ul5d5fs9UkCfMGhrr8GaQbZqnWWjySN2yuCA9QmDqiRAc/PTWq4IsCeLlGR+XI6ug1NkiLQcvlY4eHDkA9LrMJTEHFL1XAhmyVXoYSZryANZ9mX+v/6a6y/5w+I7WwUCVDo7G9g/JtoOesgtQ2rZH3dICBNemd7KCl/Sn7OBK+Kk32goPMPqAx89KyM7NUtELQpsI0r+kfw== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(136003)(346002)(39860400002)(366004)(376002)(396003)(451199021)(83380400001)(2616005)(2906002)(4744005)(36756003)(86362001)(31696002)(38100700002)(82960400001)(316002)(6666004)(5660300002)(4326008)(41300700001)(478600001)(54906003)(6486002)(8936002)(8676002)(53546011)(66899021)(186003)(31686004)(66476007)(6916009)(66946007)(66556008)(6506007)(6512007)(26005)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?U2wxVC9IMm5LRFZJc1AwRGJWYmdEalFkejcySzZGRnZXdW1oWFVuSnhzZlVQ?= =?utf-8?B?YXJ3YVZoOFFwaklQWWhYbE9FNk1QUWVFeEE1dHNyRzhncS9Za0Vncno2aHBX?= =?utf-8?B?T0FCYXdPT1I0ZWtBSlhNTVpIUzA3aXU4MkNTaDI4Q2NZS3ZYd0l4NlErR1FO?= =?utf-8?B?K1o5VmtRNEhuSlhsT3pPOVJvcDR6ZHJySEpvNXd4L0V5ME9QazREaWpicjdi?= =?utf-8?B?RURtTzV1TzhTSVVYQThpelNiL2ZwNVg3Sktja3R5OTdOY0pMTUIyQ2xhcWNN?= =?utf-8?B?ZGcvdHIrMDZ0OHBFbWk2ZU51T2ZVMXRkdTlTSlNTd0xleE5EYU9rK0J4UFVF?= =?utf-8?B?V2dYQU1SRzBsTm80alk0MkRIL3QramRvUU9JMStmckhucHlBa1czVENoMjZE?= =?utf-8?B?dkpjSHFWMlAyTXRiRWYvd2hKNmtrZVdWQUNCR3ozMW5vS1RTMUNnWXV1Unk3?= =?utf-8?B?b0JTYXE2bjVxWmJXaVZUQjBIUjdCQitpK1Fpc1M0Y2ZiaDFIbXBVbUp2OEFa?= =?utf-8?B?eXI3Uy8vMWpibmFnelptYUZDOEMxTy8wOGhSNERSNEhXUVR4b1RmNjg1U3hS?= =?utf-8?B?Q3VnRjd5RFJIZSsrbS9WdmtqcFY3ekIrOVJXTVQ2QVpDeDVpTFZ5MitLWEoy?= =?utf-8?B?Z3lqTi9sMU5RK3V1NFcxVldnSSs4UktWZ0RnYUsvOUZveUFBcXB2VEVic0pl?= =?utf-8?B?bzhTY1BzejViemhuK0NpNUNpeUQxR2xmWWdINUVTSUU1SmhFYmd4ODREUDFV?= =?utf-8?B?cEFYRG9MV0xjcTFZMlVBdDI5WFBzN216cDJCaE9ZMFc1OEJwWi9MR3NYZktO?= =?utf-8?B?WmlWYXNaVGVJZTNtNmVGZVZlajZBM0piZGFHclZpaU9UUkhsWjlEVy9uZysv?= =?utf-8?B?amxablRGVjFPN3EvS0NnM3pBbXF6b2xiclh5WWcyeTVSYnBtMHNEV2RvVWxm?= =?utf-8?B?cVNpVE9QMGJZSlRIYllYSXFGMW9aODVyUVVsNDR3c1JzWVQrZkxrWEU3bXU1?= =?utf-8?B?UHdQUW1LaHRxQmZjb2dpLzBZM0FQRTI5bm5JZ0N5R2prdmVUZDV0UkNUczRI?= =?utf-8?B?akNUSUxQUTRMWXhZdzV5NnlhdGpSUlAxRkVTRjFSaXZmdUs1N1lzdEhYZnBw?= =?utf-8?B?UUtZckVYeWFuRnRQR2Q4ZFQ5cThmckxnWTdUaExPK09zU1JJay9hcTcrZHlZ?= =?utf-8?B?MnZzblNqR0lpZ2hVM2xjaXVIZlhyQXRzZ2tiT0laSHZpcmxsOUhVQ2RQWW42?= =?utf-8?B?OWdpRVhXdUVOc29SVmxUbjVyS2hpM1lEa21xbWFZRXZ6V1JrQkc5cnk1S001?= =?utf-8?B?NENnZGZsVmJiRHRxQzl5UitaY0lVOWMxVnE2YWZ3akY0ZXpjdmpvclErNDBB?= =?utf-8?B?OEN1dVJjWG5lemF1WVhnTVpsUXZFT0xuNVQxTlVVcGhOMG5xUXFXdzJhdVFy?= =?utf-8?B?UDJIdVo2SStpT3VvYnZ6WDhJN0JPTm16ZjRCNkN4QUJpU3o1aW1XOUpTdkVY?= =?utf-8?B?ZWlZYXN4MmxLMU9EMEMyQXgrYkNVV1c1SDY4ZklpbHZkUEpoWDhLano4dERv?= =?utf-8?B?K2Y1SUZuUGlOR1RSWHRkeGFkTmdBa1BVckFTamhaL2diSm4zWXRyZ0Z1MHNY?= =?utf-8?B?VWEwdEMrdGRMcVMxanMyS1ZmeGdiSTdVVDhxVFM4RUFVUzFWWjluVWNzTko2?= =?utf-8?B?NW9TMGI5Qm9mOUE3RllodE43REFhamI4SDM3aWhxSXoxWUlpK0RYUG5jK0pH?= =?utf-8?B?YTQ4cWdhTGFHTHJnL2VSd3BMZlZsaTlYd0lIM3VORGoyM2lvVk1mYnJSTVdV?= =?utf-8?B?M0dIMEtXMSt3Zi9HMGY1RGdhVExFYzlIdTk2WnlzYTdYSGV4RGw5OG4yWk9Z?= =?utf-8?B?blpHY0s3b3FKaElGT05UbmhObHE0bXpUNEo2SUtyZEtTZWZkK3ptNk1tWWdP?= =?utf-8?B?Qytpek0vT0lTYzdObzQ0WDlCeEdIOENYaU1GSlpsQ2RINXprK1l1ZTVMQXA3?= =?utf-8?B?Vk91Ni9LdlNTMTJ4emhlekNacGNibHRjakhIWHhGRlMyWVE3ZzcrTDlKejB3?= =?utf-8?B?SnF1VVBhRG5FSUVDcW1JdDJrbTJOOUdSRUx4U3hGUUZHVUtoZjM1L3VSelI2?= =?utf-8?B?azFKQXJUUTZQMWxrdXd5TUprTGFLOVdyZ2lIbkxmWjNXRWlxa2lPZHI5L2dr?= =?utf-8?B?ZWc9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: hr6zibg6XzUeJunS6g/WuMAZu+44aUJd/iweysZT6nKxJc82pj57ANRCSMppz/xcGYa4SsfhnFI+FgqUc9i9EFvER0ZPhl6/ZzVxKO4JPZ1isaXlDvi8qKwQzasa2i6tFZNudeOYRi+YiAX2l1ZN75LVtwHe8/t0A9okaFYO9wPA6IkK8HDoRQ3cxgKiPIRNzWvaWgyMDiY9H95gilkm7fhvXO15I0RqZdiRujUaw59uEzolyVTBfR3gQEQvcCT84ePqQsi9Dz+JVhk0Jbrk4Hr+KvKQgXdW6uUgwyrb7A/Lp4bpbmXWjbUJf2RIoUjM9RYY1rHPcuu5NpjkE24fzd3KSQkte5DzP7nz/zD52MIRl01d5C86nQM0SQfzUfflc4v797NSezZXoyABvk0hf6Q+pbCTOpqsjrX98mLsJpbtTFDJ/UdhkyXg6Wc9iCc+AAE4Y77IzWbGRGVpXeFDXZwrOCF/35MiNYcEqFIc9jZOzzGl8ONuRATGmiryEMjoSow8xr8KpmkAlDL6OgOX3JTnxCKjE5bfc2c2+HSrE1eYBPYXWTuIyfeMdp7xUZROEhHmRrHbnbDp3CBvXtau0e+eeFRk6U8YIxeRBBssP+xPnywtC/M3rnK+EqvBXryQzrsg+dCvuRimz4eNYS65PSbBAk1H/TuSboF+TCJM9O11/4+Qb72p3J54BCRaPt7642VztkvjdXOfVxEM0j3M5kk2NjMQSDSZyxQkMFaPj0a+IbRvlPINKWi8OD/9tlkIQgyyQdjr/lmMyEMrT6Kk/pCGIJ66dM7qj87bwZO1ls+WSV7Gei6gy/QbKgQ0nbqRjYiZBIwh0VNdgDtVADqk/MvzY6VS2503rMrd+nZfU0A= X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: e81bf1db-3a5c-4842-e89c-08db6384754c X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Jun 2023 16:14:36.1140 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 1nnuqNY9jJHxftIRELujkTBtWmcqwoKyVqnDqY0O/ddl7VE+KJUODcMf8SpfTyDFBszkSXrk+M4ym3TTowK3fWdszq1+PF8Z+Rn5Ai75J1E= X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN2PR03MB5214 On 02/06/2023 5:08 pm, Alejandro Vallejo wrote: > On Fri, Jun 02, 2023 at 03:22:20PM +0100, Andrew Cooper wrote: >> Linux deals with this in verify_cpu() (early asm) along with a FMS check >> protecting the access to MSR_MISC_ENABLE, rather than using rdmsr_safe() >> and catching the #GP. > On a related note, we don't use rdmsr_safe() either. We just hope it exists > on any Intel CPU. It fortunately does on any Intel CPU we care about > because it was introduced shortly before Pentium 4 (Netburst), so we're > fine since we mandate long mode. Oh, good point.  Yeah, that's fine, but only try reading it in the case that we've found LM, not NX, and GenuineIntel. There are old versions of Xen which don't emulate the MSR at all, and the only reason Xen does emulate it in all guests is for a CPUID-faulting corner case.  The same assumptions are unlikely to hold for other virtualised cases. Failing with a clear "NX not available" is strictly preferable to triple faulting. ~Andrew From xen-devel-bounces@lists.xenproject.org Fri Jun 02 16:38:14 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 02 Jun 2023 16:38:14 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543208.847979 (Exim 4.92) (envelope-from ) id 1q57ms-0001Gw-RO; Fri, 02 Jun 2023 16:38:02 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543208.847979; Fri, 02 Jun 2023 16:38:02 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q57ms-0001Gp-OQ; Fri, 02 Jun 2023 16:38:02 +0000 Received: by outflank-mailman (input) for mailman id 543208; Fri, 02 Jun 2023 16:38:00 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q57mq-0001Gf-ME; Fri, 02 Jun 2023 16:38:00 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q57mq-0000LM-E0; Fri, 02 Jun 2023 16:38:00 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q57mo-00029y-Pe; Fri, 02 Jun 2023 16:37:58 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q57mo-0005hV-P9; Fri, 02 Jun 2023 16:37:58 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=h+gT6dmZUlTK/i5M4VXTvvKwyN80tvCJzOzAvu3IKEs=; b=IRwLo+6dojUjutXI1avRl4ONBw x+Cqy81XRABvoEi1xPIizDQn0pUC98Yk6HYDuVYg7BnBpMHZUrEFRh+++4K0hR6J9QHRq+6F3nKsA zYjake7WbFQYli2IXw8S6qypnun4QXtttAoJf+1VPPYYFYHUW9atXoqR1YP+PLCgMLoM=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [qemu-mainline test] 181103: regressions - FAIL X-Osstest-Failures: qemu-mainline:test-amd64-i386-libvirt-pair:xen-install/src_host:fail:regression qemu-mainline:test-amd64-amd64-libvirt-pair:leak-check/check/src_host:fail:regression qemu-mainline:test-amd64-amd64-libvirt-pair:leak-check/check/dst_host:fail:regression qemu-mainline:test-amd64-i386-libvirt:leak-check/check:fail:regression qemu-mainline:test-amd64-amd64-libvirt-xsm:leak-check/check:fail:regression qemu-mainline:build-arm64-xsm:xen-build:fail:regression qemu-mainline:build-arm64:xen-build:fail:regression qemu-mainline:test-amd64-amd64-libvirt:leak-check/check:fail:regression qemu-mainline:test-amd64-i386-libvirt-xsm:leak-check/check:fail:regression qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:leak-check/check:fail:regression qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:leak-check/check:fail:regression qemu-mainline:test-amd64-amd64-libvirt-vhd:leak-check/check:fail:regression qemu-mainline:test-amd64-i386-xl-vhd:guest-start/debian.repeat:fail:regression qemu-mainline:test-amd64-i386-libvirt-raw:leak-check/check:fail:regression qemu-mainline:test-amd64-amd64-xl-qcow2:leak-check/check:fail:regression qemu-mainline:test-armhf-armhf-libvirt:leak-check/check:fail:regression qemu-mainline:test-armhf-armhf-libvirt-qcow2:leak-check/check:fail:regression qemu-mainline:test-armhf-armhf-libvirt-raw:leak-check/check:fail:regression qemu-mainline:test-armhf-armhf-xl-vhd:leak-check/check:fail:regression qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:windows-install:fail:regression qemu-mainline:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:build-arm64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking qemu-mainline:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking qemu-mainline:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking qemu-mainline:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking qemu-mainline:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking qemu-mainline:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking qemu-mainline:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking qemu-mainline:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking qemu-mainline:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking qemu-mainline:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: qemuu=9eb400cdd7b0940bd696aa01462dd53004ae04e9 X-Osstest-Versions-That: qemuu=6972ef1440a9d685482d78672620a7482f2bd09a From: osstest service owner Date: Fri, 02 Jun 2023 16:37:58 +0000 flight 181103 qemu-mainline real [real] http://logs.test-lab.xenproject.org/osstest/logs/181103/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: test-amd64-i386-libvirt-pair 10 xen-install/src_host fail REGR. vs. 180691 test-amd64-amd64-libvirt-pair 30 leak-check/check/src_host fail REGR. vs. 180691 test-amd64-amd64-libvirt-pair 31 leak-check/check/dst_host fail REGR. vs. 180691 test-amd64-i386-libvirt 23 leak-check/check fail REGR. vs. 180691 test-amd64-amd64-libvirt-xsm 23 leak-check/check fail REGR. vs. 180691 build-arm64-xsm 6 xen-build fail REGR. vs. 180691 build-arm64 6 xen-build fail REGR. vs. 180691 test-amd64-amd64-libvirt 23 leak-check/check fail REGR. vs. 180691 test-amd64-i386-libvirt-xsm 23 leak-check/check fail REGR. vs. 180691 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 21 leak-check/check fail REGR. vs. 180691 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 21 leak-check/check fail REGR. vs. 180691 test-amd64-amd64-libvirt-vhd 22 leak-check/check fail REGR. vs. 180691 test-amd64-i386-xl-vhd 21 guest-start/debian.repeat fail REGR. vs. 180691 test-amd64-i386-libvirt-raw 22 leak-check/check fail REGR. vs. 180691 test-amd64-amd64-xl-qcow2 24 leak-check/check fail REGR. vs. 180691 test-armhf-armhf-libvirt 21 leak-check/check fail REGR. vs. 180691 test-armhf-armhf-libvirt-qcow2 20 leak-check/check fail REGR. vs. 180691 test-armhf-armhf-libvirt-raw 20 leak-check/check fail REGR. vs. 180691 test-armhf-armhf-xl-vhd 20 leak-check/check fail REGR. vs. 180691 test-amd64-i386-xl-qemuu-win7-amd64 12 windows-install fail REGR. vs. 180691 Tests which did not succeed, but are not blocking: test-arm64-arm64-libvirt-raw 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-xsm 1 build-check(1) blocked n/a test-arm64-arm64-xl 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit1 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit2 1 build-check(1) blocked n/a test-arm64-arm64-xl-thunderx 1 build-check(1) blocked n/a test-arm64-arm64-xl-vhd 1 build-check(1) blocked n/a test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a build-arm64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 180691 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 180691 test-armhf-armhf-libvirt 16 saverestore-support-check fail like 180691 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail like 180691 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop fail like 180691 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail like 180691 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 180691 test-amd64-i386-xl-pvshim 14 guest-start fail never pass test-amd64-i386-libvirt 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-i386-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-credit2 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit2 16 saverestore-support-check fail never pass test-amd64-i386-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-libvirt 15 migrate-support-check fail never pass test-armhf-armhf-xl 15 migrate-support-check fail never pass test-armhf-armhf-xl 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 15 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 16 saverestore-support-check fail never pass test-armhf-armhf-xl-multivcpu 15 migrate-support-check fail never pass test-armhf-armhf-xl-multivcpu 16 saverestore-support-check fail never pass test-armhf-armhf-xl-arndale 15 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 15 saverestore-support-check fail never pass version targeted for testing: qemuu 9eb400cdd7b0940bd696aa01462dd53004ae04e9 baseline version: qemuu 6972ef1440a9d685482d78672620a7482f2bd09a Last test of basis 180691 2023-05-17 10:45:22 Z 16 days Failing since 180699 2023-05-18 07:21:24 Z 15 days 55 attempts Testing same since 181103 2023-06-02 04:43:00 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Afonso Bordado Akihiko Odaki Akihiro Suda Alex Bennée Alex Williamson Alexander Bulekov Alexander Graf Alistair Francis Ani Sinha Ani Sinha Anton Johansson BALATON Zoltan Bernhard Beschow Bin Meng Brian Cain Brice Goglin Camilla Conte Cindy Lu Clément Chigot Cornelia Huck Cédric Le Goater Cédric Le Goater Daniel Henrique Barboza Daniel P. Berrangé Daniil Kovalev David Hildenbrand Emanuele Giuseppe Esposito Enze Li Eric Auger Eric Blake Eric DeVolder Erico Nunes Eugenio Pérez Fabiano Rosas Fan Ni Fiona Ebner Francisco Iglesias Gavin Shan Gregory Price Gregory Price Hao Zeng Hawkins Jiawei Igor Mammedov Ira Weiny Jason Wang Jean-Philippe Brucker John Snow Jonathan Cameron Juan Quintela Kevin Wolf Laurent Vivier Lei Yang Leonardo Bras Maksim Davydov Marc-André Lureau Marcin Juszkiewicz Marco Liebel Mark Cave-Ayland Markus Armbruster Matheus Tavares Bernardino Mauro Matteo Cascella Michael S. Tsirkin Michael Tokarev Mostafa Saleh Nicholas Piggin Nicolas Saenz Julienne Palmer Dabbelt Paolo Bonzini Peter Maydell Peter Xu Philippe Mathieu-Daudé Raghu H Rene Engel Richard Henderson Richard Purdie Ricky Zhou Ryan Wendland Sebastian Ott Sergio Lopez Sid Manning Song Gao Stefan Hajnoczi Stefano Garzarella Steve Sistare Taylor Simpson Thomas Huth Thomas Weißschuh timothee.cocault@gmail.com Timothée Cocault Tommy Wu Viktor Prutyanov Vitaly Cheptsov Vivek Kasireddy Vladimir Sementsov-Ogievskiy Volker Rümelin Xinyu Li Zeng Hao Zhenyu Zhang Zhenzhong Duan jobs: build-amd64-xsm pass build-arm64-xsm fail build-i386-xsm pass build-amd64 pass build-arm64 fail build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt blocked build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl blocked test-armhf-armhf-xl pass test-amd64-i386-xl pass test-amd64-coresched-i386-xl pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm fail test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm fail test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-i386-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm fail test-arm64-arm64-libvirt-xsm blocked test-amd64-i386-libvirt-xsm fail test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm blocked test-amd64-i386-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-i386-qemuu-rhel6hvm-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-freebsd10-amd64 pass test-amd64-amd64-qemuu-freebsd11-amd64 pass test-amd64-amd64-qemuu-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-i386-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-amd64-i386-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 blocked test-armhf-armhf-xl-credit1 pass test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 blocked test-armhf-armhf-xl-credit2 pass test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-i386-freebsd10-i386 pass test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-i386-qemuu-rhel6hvm-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt fail test-armhf-armhf-libvirt fail test-amd64-i386-libvirt fail test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu pass test-amd64-amd64-pair pass test-amd64-i386-pair pass test-amd64-amd64-libvirt-pair fail test-amd64-i386-libvirt-pair fail test-amd64-amd64-xl-pvshim pass test-amd64-i386-xl-pvshim fail test-amd64-amd64-pygrub pass test-armhf-armhf-libvirt-qcow2 fail test-amd64-amd64-xl-qcow2 fail test-arm64-arm64-libvirt-raw blocked test-armhf-armhf-libvirt-raw fail test-amd64-i386-libvirt-raw fail test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds pass test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-amd64-i386-xl-shadow pass test-arm64-arm64-xl-thunderx blocked test-amd64-amd64-libvirt-vhd fail test-arm64-arm64-xl-vhd blocked test-armhf-armhf-xl-vhd fail test-amd64-i386-xl-vhd fail ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 11480 lines long.) From xen-devel-bounces@lists.xenproject.org Fri Jun 02 16:45:53 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 02 Jun 2023 16:45:53 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543215.847989 (Exim 4.92) (envelope-from ) id 1q57uF-0002pP-Oj; Fri, 02 Jun 2023 16:45:39 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543215.847989; Fri, 02 Jun 2023 16:45:39 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q57uF-0002pI-M3; Fri, 02 Jun 2023 16:45:39 +0000 Received: by outflank-mailman (input) for mailman id 543215; Fri, 02 Jun 2023 16:45:38 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q57uD-0002pC-UE for xen-devel@lists.xenproject.org; Fri, 02 Jun 2023 16:45:38 +0000 Received: from esa3.hc3370-68.iphmx.com (esa3.hc3370-68.iphmx.com [216.71.145.155]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id e082fa96-0164-11ee-8611-37d641c3527e; Fri, 02 Jun 2023 18:45:34 +0200 (CEST) Received: from mail-bn8nam12lp2176.outbound.protection.outlook.com (HELO NAM12-BN8-obe.outbound.protection.outlook.com) ([104.47.55.176]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 02 Jun 2023 12:45:02 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by SA1PR03MB6353.namprd03.prod.outlook.com (2603:10b6:806:1b4::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.24; Fri, 2 Jun 2023 16:44:55 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::10bb:98bc:e36d:36ab]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::10bb:98bc:e36d:36ab%3]) with mapi id 15.20.6455.020; Fri, 2 Jun 2023 16:44:55 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: e082fa96-0164-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1685724334; h=message-id:date:from:subject:to:cc:references: in-reply-to:content-transfer-encoding:mime-version; bh=pmrG0SzB7w+gyctfHkUXMb4Y3aaoXaywQdgBn5G1kis=; b=IAyuolWT1qXWoK+B4SQPZkitUoZnP/OOarPhMwvKRdtIEncO/aLOlYwD 46wxzLlVAg5vUUdYocmONbUCm/SnBDzxZltVi0ZmSN53A2OWv/vQXC6oQ IIOlBFpaIxRZglpqoktqHzJygBfGXPshMg5b1+54VNLXfYUDJqSFJh+LV s=; X-IronPort-RemoteIP: 104.47.55.176 X-IronPort-MID: 111412453 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:1zIA5qJFQonvNmmeFE+REpQlxSXFcZb7ZxGr2PjKsXjdYENS1DJSy 2FMXGDXMqyKMGH0e9EnbYq/9htS65WAm4QyG1FlqX01Q3x08seUXt7xwmUcnc+xBpaaEB84t ZV2hv3odp1coqr0/0/1WlTZhSAgk/rOHvykU7Ss1hlZHWdMUD0mhQ9oh9k3i4tphcnRKw6Ws Jb5rta31GWNglaYCUpKrfrbwP9TlK6q4mhA4ARkPasjUGL2zBH5MrpOfcldEFOgKmVkNrbSb /rOyri/4lTY838FYj9yuu+mGqGiaue60Tmm0hK6aYD76vRxjnVaPpIAHOgdcS9qZwChxLid/ jnvWauYEm/FNoWU8AgUvoIx/ytWZcWq85efSZSzXFD6I+QrvBIAzt03ZHzaM7H09c5aG2NH/ Ns/OAowZzKMnPqrwLOybsdz05FLwMnDZOvzu1lG5BSAV7MMZ8CGRK/Ho9hFwD03m8ZCW+7EY NYUYiZuaxKGZABTPlAQC9Q1m+LAanvXKmUE7g7K4/dqpTGMkmSd05C0WDbRUvWMSd9YgQCzo WXe8n6iKhobKMae2XyO9XfEaurnxHqiBNtISODjnhJsqAyj5G4aDCwUb1SimP2IsECCd9B8A kNBr0LCqoB3riRHVOLVVhm1oneCsgQbHcRZF+k36galwa7T/grfDW8BJhZRZdpjuMIoSDgC0 l6Sg8ivFTFpqKeSS3+W6vGTtzzaESofIHIGZCQEZRAY+NSlq4Y25jrQSv5zHajzicf6cQwc2 BiPpSk6wr8V3cgC0vzh+Uid2m3y4J/UUgQy+wPbGHq/6R90b5KkYIru7kXH6fFHL8CSSVzpU GU4pvVyJdsmVfml/BFhis1QR9lFO97t3OXgvGNS IronPort-HdrOrdr: A9a23:rSO0QKMIRXOXlcBcTu2jsMiBIKoaSvp037BL7TEVdfUxSKb0qy nAppgmPHPP5wr5O0tQ++xoWpPhfZq0z/cc3WB2B9mftWLdyQiVxe9ZjLcK9AeQfxEWptQ36U 65SdkENDQrNykCsS8m2njeLz/9+qj+zEl3v5al858DJTsaDZ1d0w== X-Talos-CUID: 9a23:Hs6rRWPgy0aceO5DdTNl/UczPdAfT3T/w2zIPk+5AEJHV+jA X-Talos-MUID: =?us-ascii?q?9a23=3AvcaaBA+Mkkx9FOP4kx+plxyQf5ZYwaanDHEPq5o?= =?us-ascii?q?fgs21DyJMFzW+pTviFw=3D=3D?= X-IronPort-AV: E=Sophos;i="6.00,213,1681185600"; d="scan'208";a="111412453" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=ZC0lQchQ59PwtjbY+iHced1nCrpyGoTGX/Pz3dZ0pAvfdmR6ua8yFEU/WUV+5y7vN4rGjApwRMXKFHN6T3EEdiyYwIWlqKDQSw+sDolcUW7pzI8TQBl0ih/+w5CK7DKtFxPQfq3fVKP1olu2F+nLwdZ8tNt6zRCFeOPmHTKDT7bywOqS0luyqwX5vMlmNk0e+Uy36XxdJtCpVG2LPbvZXdsnv/IJf+evXmPazAW8xPA9ptASAZBOmiiM2j9eRAoS9KCGI5mvTGjhYc0Z5bnKR6kD5CvHV+JDx/vc6JAubkxrUpAApqnPF/2LRx9h3nnO/bvJp3pSKvqh3UWobeBaig== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=pmrG0SzB7w+gyctfHkUXMb4Y3aaoXaywQdgBn5G1kis=; b=IpEEb4WbYB9NmbH86mQ/JehXoXtaNYAoO8EKs3P8Tq4SqKW5HbYQblNMKcLM3PXFFFQK59SYAWuc0WcD5CHKUGY/6DC2thK6p5onTOqD797U1Dra2RAB3v47Ov37f73I0FAJaEMICLKm7zm/lbrm6788kF4UlY+ZDBNDXTb1sixic+QHCWfucfrUZxTLnU0JvciMj/UR8EkiYlvUXD38dw5Yk30txZvz5NsUjuuW581SbL/JmuUburm/a6hZ8klUhRMvkNAOQx6xi0sSfjv4nI5qhuHRmdQEtUcw9dUZy0z8F5cCSuQK0tYMkLveT6MPl2sU8v48mrzLVjHQPUYSVA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=pmrG0SzB7w+gyctfHkUXMb4Y3aaoXaywQdgBn5G1kis=; b=Wms9vIVG3OxqtJpUpHkS/ONB+LtAgYKSibMzYhXsNJWTY0zswqZNrYu3LhoOEEpuLi7HIBp5GwdtPMRS/t2dUdQJmyGscCMTSad/vUij0uu186fAk0pzwksNAqEX0nxJLnGwu+bQR0u6bjx5zOsI5lLhRKwlz1YR6/gtCIFCpzs= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: <4d37f80c-82d5-10b8-2e11-67cbe49f5012@citrix.com> Date: Fri, 2 Jun 2023 17:44:49 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 From: Andrew Cooper Subject: Re: [PATCH] x86/microcode: Prevent attempting updates known to fail Content-Language: en-GB To: Alejandro Vallejo Cc: Xen-devel , Jan Beulich , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu References: <20230531175119.10830-1-alejandro.vallejo@cloud.com> <83324533-38da-b5bc-875e-a161d7501eb5@citrix.com> <6479ec49.1c0a0220.af185.1f3b@mx.google.com> In-Reply-To: <6479ec49.1c0a0220.af185.1f3b@mx.google.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO4P123CA0468.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:1aa::23) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|SA1PR03MB6353:EE_ X-MS-Office365-Filtering-Correlation-Id: c208e9a2-5c3c-4d48-3160-08db6388b18d X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: jsiqy8fGgOw2PuDpLMOGTl4/yjyPTM1+P3zSvHw7B3TwQly9TgAu/DrJpKdO2MW9ITsFXYl6iiGKXl9ixyW7tENnd/t/oczL2+2tN9rRA66afFPtLX3R97VkNmsOn7E8lEFP8JxV7tic9qz1H6zwT1UURH+9FSfWVZICuPjDSO9v6m+IjX8vHtSRvQhEYrfwkh93oPDf+NlOr/CqQPgpOlLGnz+iHR8SGS+Nz019p+jD53tfNqyYZbPw3MArkCqHCrn6hfMgLVcw5x+NqAI/uDOvic8k+7FJz/22Ctklc9td+ALGwT2SwtvBZNTwoU/BwY3Mwwt+fJ9yFceD0xVY5r4XqtnOdiepxkMjRVqaP0hJY3eoon0wdFE9KkCTZ2lMdfZp5O6o7/eZHuAChT/ibZfdi0pcdfnYtBKDUpahWi0curYZb64GwJ8Y82rm36IhkwEkCPVh3Cxe+mIlx/a2fK1U84HTj0FI7taVTo6O6cY2gZWND+8GofTTk2Yaljc10ZpkWvThqlZZN3yCYu2I3XyPU7qaI8tSW1E3plOHcLFic4wwYT20+9qzQfYVI572+qTxWi9dnVl1ALDHaXArV9HiF0/Rq7M6j3eTR16q5toC8uB2qg5a5uutYeugTDuBnpXDGXcrEkH59CQRjXWH8Q== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(376002)(346002)(136003)(396003)(366004)(451199021)(6486002)(6666004)(36756003)(83380400001)(2616005)(38100700002)(31696002)(86362001)(53546011)(6506007)(6512007)(26005)(82960400001)(186003)(478600001)(54906003)(2906002)(8936002)(8676002)(316002)(41300700001)(5660300002)(31686004)(66556008)(6916009)(66476007)(66946007)(4326008)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?Tkx3d0xhd2c4OVg2MFNhOXhmem5GU1dSbHNoYkZ4Y3Jlckk3dWV1RGswd1c4?= =?utf-8?B?NzRXMWlYSXlKUWlmb1hBVGRVNUF5WDkzMGttNHl0QTZJdW1oc2tVb2dPY2tx?= =?utf-8?B?b2p0cW9NcE41MGJycURrc0lBbjVtTHRQZ3BqSHZEamNOZnhwTjVaYTlnY0FD?= =?utf-8?B?NWx4RWtVc0RtdXdrZzdWd2pUR0ZTTGRneHJvcjFrUlFWUHpVaWpNRmhBYlRo?= =?utf-8?B?emo3YjNzaUlqdmxYc2ZqNFJoR0lHVEdCV2J3WjhoMmlYbHZxVHdmNE4yQXEv?= =?utf-8?B?OCtQMTVZWjEreXBpTnVLdlh3am01ZnR6QnR4QW1hY21yeXJ2K3RlZERNcm1K?= =?utf-8?B?bmYyaGdHZnlKdC9obGMxS3JLS2RwaVhMc1RkQmZNNjY5QkhKdUlSM1J1eE9v?= =?utf-8?B?VFlucEMzVWdRNXZBYlRWVUthZlk1cmxSd1hFVFJpTkM3elZDaTUrWFFQQ282?= =?utf-8?B?Tzk4Nm1jZ2NvcXVMeFlqc3BSY2RkODYreFBEZjh1c0wxM1FZdWxRTDFyLzAx?= =?utf-8?B?RG9uaElaTDBLZndCbDlacStKRFJ4ZGZxY2QyMjhEdXRPME1mM3FHZmxLU2NJ?= =?utf-8?B?MGRQUWJJNmhLTENiRnh5SzhaSmFaVFBFZTNDRlBMZXZkL0xWdXVwdVk2aW1k?= =?utf-8?B?OG9GZWtuRk1UdmNoTVZhMy9ueDZWQXh3WUZ2NVNrRE1ibFBWZzlVVStrU3Mr?= =?utf-8?B?UjQxVnpoblU2RG9UbHpSTkZnMTlOa2NXNG9Ndk5ubjJ6L29oeUYzZVA3YkRY?= =?utf-8?B?TFVUcFByOU5GY1Zqc2N1VGw1VS9uTmNQVlVnTXM1SEdUVll2c3Y4NG1WZXlm?= =?utf-8?B?UlpiQXZmRGszNzhNRXZTU3BNN2pwWjBZMFBzWEZzcGZxa01WVnhIKzlZTDdI?= =?utf-8?B?TCtYb04vRS9LTzc1V0xlanozRmlmUys1TU9FM2tvL0U0MVh5QkFHbytaOTI5?= =?utf-8?B?bU9YWXE0RE5IRXpJSWt1NHVjeDJkcWhrUUMzc2YwTldOZ25UaWd5ZFYxeGFt?= =?utf-8?B?cnNwZ1NwZVVTTEdvd2NPaGltN0NIQjJIQjIydnVBOUtSdTNFS0hpcXUwYmNW?= =?utf-8?B?VWFYblJFdW1mekY5Q2VmRmdZOGJPNnEreHROL1dRZkhmbTJBaUFuK1Rrc2pJ?= =?utf-8?B?REtFSEpwajVXbWZBcEFncWFINTNoMk45VzUyWFJZVHZZUnJ4eS9wYWRzMVoy?= =?utf-8?B?TzJyOVVSYXZEQ2NKRmVKcXhFeVROa2IvL1ZGOVFlcFRFTVNPbVNLOXptcDFH?= =?utf-8?B?MTVNV2NGcElRTjU3RW9pRllwcWl3NWRocUtMOG5qenBpU1dDTkx2YlppQ0xt?= =?utf-8?B?T1dWeVI5dm1Cd0VtVWRIREl3RmtmaEJRZ25EazVCeUo1citxT3NNUld0Y1Vh?= =?utf-8?B?M2ZsNXRrK0hzQllCa1RObGVPZU5udGR5REdvbmJxMnk0a0VuNTVSdTU5MmJi?= =?utf-8?B?bmdqZFNIcnhGZlZqZHozcnF0cHExVTdBQUFXNHdRMjNjdVR5dUhkc3VZL3FX?= =?utf-8?B?K2RmRmNuSUk0MjBEOWpid3d0OEhTNnFxVGYxT01leitucnhqblM4NFMrNTJi?= =?utf-8?B?YXBzcmdhd2xnK3R6bjlZeTBJK3FaNS85RDJwTkppTjNQYmVmaVpOb3FxOW1j?= =?utf-8?B?VndUemR2WUViNmZWSmVYdUE2eFl1SlFLaXFTWFRVRTFkck9sY2g1N0VobjNS?= =?utf-8?B?ckxHdXU4Y0RnZ1dub1RBSUFEL0d3WnhUTHF5YmhSVkxLdXFVdEUzazNuc3Ni?= =?utf-8?B?TUtac1VHeVZIUUZWMmpmYjlJWU40aEw4MVFLL2RYSDZieWx2VVlqcUI4M2dB?= =?utf-8?B?aGREUHZxS2RBRWR3OWwvQjVLZ2RXZzhGNHZTV2xDRjBVcURBa3lGTzZscXor?= =?utf-8?B?cURhbGMzaU5WSktQZW9HV2dwUUMweU8xRGQvRXhRbGU3ZjJVWHRLa0tVUnZU?= =?utf-8?B?YzE0NDZ4dTV2NnZyN2dBM0NQVUNJRmxNeVI1VGMxZCtTRVE1VTNBaUFvanFn?= =?utf-8?B?ODhIaGt5NXM3bjYwYjVyZUxUQStZbG9PK0pWRzVFVUJoaGxuaHBCN2Vvenh4?= =?utf-8?B?S3RqcDg0azE0UjNQY0x2T2xsVG1hQlBFdGZlR0RyR1pmb1BWcVMzYkZkbE8r?= =?utf-8?B?ajFRQ0RjWlZDc3Npd00rN0RJSlc2TmdsL3JOMHd5Vk5YbHdHK1B6Z3lKZWpk?= =?utf-8?B?THc9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: TRWANUpkZ9YO56MmtQzm3rgF9R+grhRk+GMO1hgNFPIbJalwUX5AUDbzMZNW/pI+C17B+4moRmfRAuZjOT1D+xmOgOoY4q4oJWa2SFDqCSxrbvRp/s989L9q+AWL8Volw6Nue8it+y3zzj+TEr8jyqsQv9nbvTtMkIBlluhVHVtLH/JnO5vTibyqEw2AOTKySCpehBSCRjvPK6Cl6O5NDzv8ZkOCzsWc8kOCrwlpYplfv2Z0w1E19KQ7vUadL8W3pD2cHQ1MjkuzaOkUyTwzP1ifrpL3Cyy02mY+dFAoGdkzhx+C5tKQoptlm+MpSjNfDUwt3wAP4HdWhuSleA67y0hWY8QTkCWd/YKR79L6IJVUwNqvrW4/feQyfGfGaFD/W79Jv99ESVVYCfCc6mjY+jj+oajxafh4/FBxEH6e51YNJ+s6mXMbpTDsJiX/MiqVFMd3rrkhqwboKLyi3q5jf8fIw86GJ6KbGels+QDym0t8sZw+fox/dIEDRG1Bl3ATmxL97xiPOpV6gkOZR0CnCa0J7D7cZ9ixzh8zaRW63Q37HZrWALypTZ+llaneMc+xWm9ewXdhi7yP9jTYx6C+W+Bec0PkMRDV3U32BcA3j84w3XR60KsMq8tHwbO8adOJdcm4YUnGstpozuYIruoPzc/mbRSWEB4Ukz9jo/jJnfwIF4EbVcmeDShNmXr67ZCenrN/2Ul4kHCyYPpYRMMyKqcqjT0H3JvoMqMn4JHWMJyPxN+s+UeyRpLGuH0Y5eJqQsVlQhMjDSqmprf0vQyZ+XLhZUBLGTYg6KwMlYCq6jBtxa1elgyQOf/su1yYTvoCNEsYNzl7pmgabsnnBeEg8K1bpntn5wHmNVJ9Fml7RlI= X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: c208e9a2-5c3c-4d48-3160-08db6388b18d X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Jun 2023 16:44:55.2594 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: xUGVzHrHUXmWLTLMrxNxGmwLqx+VyuoHVnfzXx6rsYWOFKPFTRvbB9cIqspyOr/A9+4hEizJCetBjBotcPlWdyDAjLSSMLeuzJ3flnB9qbQ= X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA1PR03MB6353 On 02/06/2023 2:19 pm, Alejandro Vallejo wrote: > On Thu, Jun 01, 2023 at 11:54:31AM +0100, Andrew Cooper wrote: >> I had something else in mind here.  Right now, this will read >> MSR_MCU_CONTROL and emit a printk() on every microcode load, which will >> be every AP, and every time the user uses the xen-ucode tool. > Not every AP. The hypercall would return with an error before the APs are > brought in. It is true that the error on dmesg would appear on every > microcode load attempt though. I meant every AP on boot, where Xen initiates the ucode load. > >> Instead, I recommend the following: >> >> 1) One patch moving the early-cpuid/msr read from tsx_init() into >> early_microcode_init(), adjusting the comment as it goes.  No point >> duplicating that logic, and we need it earlier on boot now. >> 2) This patch, adjusting early_microcode_init() only.  Have a printk() >> saying "microcode loading disabled by firmware" and avoid filling in >> ucode_ops.  Every other part of ucode handling understands "loading not >> available". > Sure. Going on a tangent though, I do wonder why tsx_init() is preceding > identify_cpu(). It's reading cpuid leaf 7d0 simply because it hasn't been > read yet, but it's not obvious why this rush in invoking tsx_init(). I > can't see any obvious marker that affect the following identify_cpu() call, > and swapping them gets rid of the cpuid read. In __start_xen(),     tsx_init(); /* Needs microcode.  May change HLE/RTM feature bits. */ If you were to test such a patch, the test-tsx ought to fail on SKL/KBL amongst others. One of the things that tsx_init() does is select TSX_CTRL_CPUID_CLEAR and/or TSX_CPUID_CLEAR, which hides the HLE and RTM bits in regular CPUID, so wants to run before the general CPUID scan.  This matters for guest performance - if TSX is actually always aborting, but reported to the guest, then any library using RTM will be less performant than using the non-transactional path. Conversely if the user wants to explicitly re-activate TSX despite the firmware defaults, those bits need clearing before the CPUID scan for anything to work. ~Andrew From xen-devel-bounces@lists.xenproject.org Fri Jun 02 17:07:10 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 02 Jun 2023 17:07:10 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543220.848002 (Exim 4.92) (envelope-from ) id 1q58Ey-0005S9-Gj; Fri, 02 Jun 2023 17:07:04 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543220.848002; Fri, 02 Jun 2023 17:07:04 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q58Ey-0005S2-Du; Fri, 02 Jun 2023 17:07:04 +0000 Received: by outflank-mailman (input) for mailman id 543220; Fri, 02 Jun 2023 17:07:03 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q58Ex-0005Rw-C2 for xen-devel@lists.xenproject.org; Fri, 02 Jun 2023 17:07:03 +0000 Received: from mail-lf1-x12b.google.com (mail-lf1-x12b.google.com [2a00:1450:4864:20::12b]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id e3d65fca-0167-11ee-8611-37d641c3527e; Fri, 02 Jun 2023 19:07:01 +0200 (CEST) Received: by mail-lf1-x12b.google.com with SMTP id 2adb3069b0e04-4f50a8f6dd7so3126572e87.2 for ; Fri, 02 Jun 2023 10:07:01 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: e3d65fca-0167-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1685725621; x=1688317621; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=X4AuYC+9A4+DdvMpLL4Ew5WTvGtxq7B6UBdOmtQcx3k=; b=L45w3dZ0AR2L43d8JEp9VloyyZkbnU8jw31mVGfkYiKyVv/77dsGR9DPSN0XyHwVO7 iVR1gNzoSDGFazMJqdPzmxQWLYtepO2gT9adjyZsoBbGROLjXtrEqK0coePS1sRXa3c8 /gQwCklLz1tYBLr3bjau17HYgV7MMmGujDaKh5I4N1sIE+6S9EWjoP5Dh0iq/juLkAXV aT5/06grlCDaO429ZUDiZmXojB9nHT50edQLqZabC3Xm3sZ0MUTmYwjlarDVAjmKacHL lDnAMUgO9Y5xpb5j8pYlpHv/IzgzDfR0UNTI6BuOCG5xe0y+hJBV9uUBpFbBCiKlVK8t MsSg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1685725621; x=1688317621; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=X4AuYC+9A4+DdvMpLL4Ew5WTvGtxq7B6UBdOmtQcx3k=; b=l18MaJ4fTsuwlqNwZUSAeN2oMMiK4npNFnhaYI/mZ0Kcl4duweH8lgu+7J82on+1IX Af8tfSaxCbORspiAmXUZlWH8MzuyGKSI+P0jPTNbRz0ErXtvddnVRt6Fr8int7SF/NzC VjmEAAC/y5CIrfTTt9phak9FgsS4GczHaEzdUMw3av+FGf+XODpQKjOeAY9IwsTKXLgl OQwH2Sm6B9t9Xpa5Z06eDXksHAYFZPXy4i2xVmgdMsVwOuwlzZLq4atunEErceLD5PxE ObxlZ0F71QAMoTSmUW0pztZBFu5YzQKtEM0Pq5hNCc0xAQNuf1huWqAKSkdxTDiHA/Hb 65Og== X-Gm-Message-State: AC+VfDx/ILvrmQlXOOh2awltcL8IXcQnu+emNJYH/Qdqn1AK4EPbOHcB OBM8bjlLiMy2fDkBghhoZk/07ADKo7hByhoxrWL9gw== X-Google-Smtp-Source: ACHHUZ4aIxsMQSnb9a5maeoJXaEDyMmQ5XBYanrc+ozFpOU6ol1FJTDEv437CM7kHlsVKw/ACkgq9O/IZfRhDVmUkxE= X-Received: by 2002:a05:6512:376f:b0:4f4:e1f8:98e with SMTP id z15-20020a056512376f00b004f4e1f8098emr1826158lft.23.1685725620619; Fri, 02 Jun 2023 10:07:00 -0700 (PDT) MIME-Version: 1.0 References: <20230307182707.2298618-1-dwmw2@infradead.org> <20230307182707.2298618-6-dwmw2@infradead.org> In-Reply-To: From: Peter Maydell Date: Fri, 2 Jun 2023 18:06:49 +0100 Message-ID: Subject: Re: [PULL 05/27] hw/xen: Watches on XenStore transactions To: David Woodhouse Cc: qemu-devel@nongnu.org, Paolo Bonzini , Paul Durrant , Joao Martins , Ankur Arora , Stefano Stabellini , vikram.garhwal@amd.com, Anthony Perard , xen-devel@lists.xenproject.org, Juan Quintela , "Dr . David Alan Gilbert" Content-Type: text/plain; charset="UTF-8" On Tue, 2 May 2023 at 18:08, Peter Maydell wrote: > > On Tue, 7 Mar 2023 at 18:27, David Woodhouse wrote: > > > > From: David Woodhouse > > > > Firing watches on the nodes that still exist is relatively easy; just > > walk the tree and look at the nodes with refcount of one. > > > > Firing watches on *deleted* nodes is more fun. We add 'modified_in_tx' > > and 'deleted_in_tx' flags to each node. Nodes with those flags cannot > > be shared, as they will always be unique to the transaction in which > > they were created. > > > > When xs_node_walk would need to *create* a node as scaffolding and it > > encounters a deleted_in_tx node, it can resurrect it simply by clearing > > its deleted_in_tx flag. If that node originally had any *data*, they're > > gone, and the modified_in_tx flag will have been set when it was first > > deleted. > > > > We then attempt to send appropriate watches when the transaction is > > committed, properly delete the deleted_in_tx nodes, and remove the > > modified_in_tx flag from the others. > > > > Signed-off-by: David Woodhouse > > Reviewed-by: Paul Durrant > > Hi; Coverity's "is there missing error handling?" > heuristic fired for a change in this code (CID 1508359): > > > static int transaction_commit(XenstoreImplState *s, XsTransaction *tx) > > { > > + struct walk_op op; > > + XsNode **n; > > + > > if (s->root_tx != tx->base_tx) { > > return EAGAIN; > > } > > @@ -720,10 +861,18 @@ static int transaction_commit(XenstoreImplState *s, XsTransaction *tx) > > s->root_tx = tx->tx_id; > > s->nr_nodes = tx->nr_nodes; > > > > + init_walk_op(s, &op, XBT_NULL, tx->dom_id, "/", &n); > > This is the only call to init_walk_op() which ignores its > return value. Intentional, or missing error handling? Hi -- I was going through the unclassified Coverity issues again today, and this one's still on the list. Is this a bug, or intentional? thanks -- PMM From xen-devel-bounces@lists.xenproject.org Fri Jun 02 17:19:31 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 02 Jun 2023 17:19:31 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543225.848015 (Exim 4.92) (envelope-from ) id 1q58Qq-00076F-K2; Fri, 02 Jun 2023 17:19:20 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543225.848015; Fri, 02 Jun 2023 17:19:20 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q58Qq-000768-HJ; Fri, 02 Jun 2023 17:19:20 +0000 Received: by outflank-mailman (input) for mailman id 543225; Fri, 02 Jun 2023 17:19:19 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q58Qp-000762-Jo for xen-devel@lists.xenproject.org; Fri, 02 Jun 2023 17:19:19 +0000 Received: from mail-lf1-x12e.google.com (mail-lf1-x12e.google.com [2a00:1450:4864:20::12e]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 9aee8ee6-0169-11ee-b232-6b7b168915f2; Fri, 02 Jun 2023 19:19:17 +0200 (CEST) Received: by mail-lf1-x12e.google.com with SMTP id 2adb3069b0e04-4f4bdcde899so3113704e87.0 for ; Fri, 02 Jun 2023 10:19:17 -0700 (PDT) Received: from [192.168.202.197] ([94.75.70.14]) by smtp.gmail.com with ESMTPSA id o1-20020a056512050100b004edc9da63bdsm219319lfb.160.2023.06.02.10.19.16 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 02 Jun 2023 10:19:16 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 9aee8ee6-0169-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1685726357; x=1688318357; h=mime-version:user-agent:content-transfer-encoding:references :in-reply-to:date:cc:to:from:subject:message-id:from:to:cc:subject :date:message-id:reply-to; bh=vP+AEFpOHnyReN6Oku+9frL6l44685/u3lVQ3cCAhuo=; b=jItP1fD/TR5ZYzgHe8DKfP+zkSUVx79wYZIvDrfmqEd+n31fLlAuPuHWl4OGDHM5lA 38pS6Fhi0nUHiilGHBzWnjMQYtn3JqDqQy+hNwEoUk8B24UnacTGz65XzFrQc7/pGeOc CeeOEMiCffFSqKjTkrqppdoUyalUMX75uHaW4HxPDUlh2vEkucE4f2+sDscpzwqPwsMz sQYSwGoYNXAtlhxYUijrjPfa54j3qVyqrWdknNUoQltf/hg2SjZSDBCA1PmP6AAX7DBf JbROTRJIvB8sEoEVgicutzYPqPvFqr0rdOa3JcU2IN9+gtMnOmL3KBWN9ygrITx/lgz1 VSfw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1685726357; x=1688318357; h=mime-version:user-agent:content-transfer-encoding:references :in-reply-to:date:cc:to:from:subject:message-id:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=vP+AEFpOHnyReN6Oku+9frL6l44685/u3lVQ3cCAhuo=; b=kHG5yOiPKEcyaJ9bZORDzWVcradCFnrCrA2ZQUGf5IMsBMJZ0C9ph/6UoFJFpQ3gkd guokqquyhMxPlXp7K8EVpyHtgEn98kA6dt75kLJ2EXhMcKm6QKbmaYli5X8/ikKrqIG1 sf8drTRLulAgFH8s5GdkMBreJGYmy99mpD3lWMefqHmUA3z1FFB4AmXXMMIS83xlTQoO JVuwNwIT/fe0ZooGhAqe/PkKBe9qmAjyANvo5d6YXXuIzOBbADNAZ6/XZ1ZkOYz21+M+ 2stML26+uneckSULJu9eICnIbXnZo6/FH5gp97HucY9mqEWeE6mjWw+VPOiniUqmctZA WoLA== X-Gm-Message-State: AC+VfDxTI6Z0vED3JMlUp82WW6p/IFwIIZp/YTG2iicGC6V4gTCHJov6 o8UZgAoLn7GMPx95gKhcnNI= X-Google-Smtp-Source: ACHHUZ7S43xH6p7KgMv1JPEgGAVQ9Bf4McBrvKBG+90mcIj2rk9wUXi0PnRisi2GdNsVHjIooA7mCQ== X-Received: by 2002:ac2:596f:0:b0:4e9:c627:195d with SMTP id h15-20020ac2596f000000b004e9c627195dmr2201217lfp.57.1685726356934; Fri, 02 Jun 2023 10:19:16 -0700 (PDT) Message-ID: Subject: Re: [BROKEN] Re: [PATCH v9 0/5] enable MMU for RISC-V From: Oleksii To: Andrew Cooper , xen-devel@lists.xenproject.org Cc: Jan Beulich , Stefano Stabellini , Gianluca Guida , Bob Eshleman , Alistair Francis , Connor Davis Date: Fri, 02 Jun 2023 20:19:15 +0300 In-Reply-To: <4e336121-fc0c-b007-bf7b-430352563d55@citrix.com> References: <4e336121-fc0c-b007-bf7b-430352563d55@citrix.com> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable User-Agent: Evolution 3.48.2 (3.48.2-1.fc38) MIME-Version: 1.0 On Wed, 2023-05-31 at 12:45 +0100, Andrew Cooper wrote: > On 25/05/2023 4:28 pm, Oleksii Kurochko wrote: > > Oleksii Kurochko (5): > > =C2=A0 xen/riscv: add VM space layout > > =C2=A0 xen/riscv: introduce setup_initial_pages > > =C2=A0 xen/riscv: align __bss_start > > =C2=A0 xen/riscv: setup initial pagetables > > =C2=A0 xen/riscv: remove dummy_bss variable >=20 > These have just been committed. >=20 > But as I fed back to early drafts of this series, patch 2 is > sufficiently fragile and unwise as to be unacceptable in this form. >=20 > enable_mmu() is unsafe in multiple ways, from the compiler reordering > statements (the label needs to be in the asm statement for that to > work > correctly), and because it * depends* on hooking all exceptions and > pagefault. >=20 > Any exception other than pagefault, or not taking a pagefault causes > it > to malfunction, which means you will fail to boot depending on where > Xen > was loaded into memory.=C2=A0 It may not explode inside Qemu right now, > but > it will not function reliably in the general case. Linux RISC-V has the similar approach and it doesn't explode but if it will be better to use identity map then I'll re-write it. >=20 > Furthermore, a combination of patch 2 and 4 breaks the CI integration > of > looking for "All set up" at the end of start_xen().=C2=A0 It's not ok, > from a > code quality point of view, to defer 99% of start_xen()'s > functionality > into unrelated function. >=20 >=20 > Please do not do anything else until you've addressed these issues.=C2=A0 > enable_mmu() needs to return normally, cont_after_mmu_is_enabled() > needs > deleting entirely, and there needs to be an identity page for Xen to > land on so it isn't jumping into the void and praying not to explode. In this case enable_mmu() should be called before start_xen() function because if start_xen() has local variables then after jumping to VA and removing identity page we will have an issue with stack pointer as it will contain addresses where Xen was loaded. One more enable_mmu() can't have local variable too ( as stack pointer=20 can be somewhere outside one page used for identity mapping ) and it will cause an issue when execute epilogue of enable_mmu() function. Or am I missing something? >=20 > Other minor issues include page.h not having __ASSEMBLY__ guards, > mm.c > locally externing cpu0_boot_stack[] from setup.c when the declaration > needs to be in a header file somewhere, and SPDX tags. Thanks. I'll take it into account. ~ Oleksii From xen-devel-bounces@lists.xenproject.org Fri Jun 02 18:47:09 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 02 Jun 2023 18:47:09 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543232.848032 (Exim 4.92) (envelope-from ) id 1q59nb-00089T-VR; Fri, 02 Jun 2023 18:46:55 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543232.848032; Fri, 02 Jun 2023 18:46:55 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q59nb-00089M-Rb; Fri, 02 Jun 2023 18:46:55 +0000 Received: by outflank-mailman (input) for mailman id 543232; Fri, 02 Jun 2023 18:46:54 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q59na-00089C-BW; Fri, 02 Jun 2023 18:46:54 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q59na-0003H7-2b; Fri, 02 Jun 2023 18:46:54 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q59nZ-0000iS-Nj; Fri, 02 Jun 2023 18:46:53 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q59nZ-0006XF-NN; Fri, 02 Jun 2023 18:46:53 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=XLMXYD/zoJYS1sUCvVFQc5ZBYWDujTT9D3jckIRWa2U=; b=e5ah82vclwAZ8o3CNxnknzaYig dQFo9uw5FmKH0CjlOG1inTh/0FVJWK/6/n9ezi0A6FIf2GslfxLBAGMAqqBidBxd/IEAwhUSrjoFz nqgUiU3QmMiL/OzotegKAPxEY3NJEWnfMFBcLMIQauE4dKhQ6p3p0XprcGnItYMKbK8M=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [ovmf test] 181117: all pass - PUSHED X-Osstest-Versions-This: ovmf=8fbf857a0b42697c22ec03abda9a2101b2870812 X-Osstest-Versions-That: ovmf=4354c22f38778a2bb4644d1f1f43a47e4313fe42 From: osstest service owner Date: Fri, 02 Jun 2023 18:46:53 +0000 flight 181117 ovmf real [real] http://logs.test-lab.xenproject.org/osstest/logs/181117/ Perfect :-) All tests in this flight passed as required version targeted for testing: ovmf 8fbf857a0b42697c22ec03abda9a2101b2870812 baseline version: ovmf 4354c22f38778a2bb4644d1f1f43a47e4313fe42 Last test of basis 181111 2023-06-02 11:40:43 Z 0 days Testing same since 181117 2023-06-02 16:44:01 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Ard Biesheuvel jobs: build-amd64-xsm pass build-i386-xsm pass build-amd64 pass build-i386 pass build-amd64-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-i386-pvops pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Pushing revision : To xenbits.xen.org:/home/xen/git/osstest/ovmf.git 4354c22f38..8fbf857a0b 8fbf857a0b42697c22ec03abda9a2101b2870812 -> xen-tested-master From xen-devel-bounces@lists.xenproject.org Fri Jun 02 19:58:28 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 02 Jun 2023 19:58:28 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543239.848042 (Exim 4.92) (envelope-from ) id 1q5AuZ-0007JE-7O; Fri, 02 Jun 2023 19:58:11 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543239.848042; Fri, 02 Jun 2023 19:58:11 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q5AuZ-0007J7-41; Fri, 02 Jun 2023 19:58:11 +0000 Received: by outflank-mailman (input) for mailman id 543239; Fri, 02 Jun 2023 19:58:10 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q5AuX-0007Ii-Op for xen-devel@lists.xenproject.org; Fri, 02 Jun 2023 19:58:09 +0000 Received: from wout3-smtp.messagingengine.com (wout3-smtp.messagingengine.com [64.147.123.19]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id c8ec5b1b-017f-11ee-b232-6b7b168915f2; Fri, 02 Jun 2023 21:58:06 +0200 (CEST) Received: from compute2.internal (compute2.nyi.internal [10.202.2.46]) by mailout.west.internal (Postfix) with ESMTP id 192CB32008FB; Fri, 2 Jun 2023 15:58:02 -0400 (EDT) Received: from mailfrontend2 ([10.202.2.163]) by compute2.internal (MEProxy); Fri, 02 Jun 2023 15:58:02 -0400 Received: by mail.messagingengine.com (Postfix) with ESMTPA; Fri, 2 Jun 2023 15:58:00 -0400 (EDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: c8ec5b1b-017f-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= invisiblethingslab.com; h=cc:cc:content-type:content-type:date :date:from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:sender:subject:subject:to:to; s=fm1; t= 1685735881; x=1685822281; bh=W67iEbZbu2cqCQ2PuNdJ3W0wASP2gqnBbbH ikiCrwHo=; b=lijd6ErMGcYUIyeuCuyW6uwngiNVR6o2tebHMFyhH7whPWd1g0R G/jkBWvA/gcax0591e6yJXjUw5FNkr14fCc7kx1QZOvM3DVjcnI3ghZCl2L4GTJe zXl57Wv2ZH7/ol0k+hO5Ewi9fvTIubjKXUW3AQmNEsjRR7TkhVlhnmxXgIsk/Lyb JFi/zQvMkVVLfEDfVEzanEKARpfO2zTky3k3AVGuouTkXYvnblhyWyMVZmS9bZi4 CQ/8+YGbOkXjWOsCeCxRlJwysMF9n/Lu4Yj32Wnqa0EmAxUdI6NjR19gQq1XAl9W mIoWnETB1rBzmuUcQD23DbVDSfM36My2Wng== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-type:content-type:date:date :feedback-id:feedback-id:from:from:in-reply-to:in-reply-to :message-id:mime-version:references:reply-to:sender:subject :subject:to:to:x-me-proxy:x-me-proxy:x-me-sender:x-me-sender :x-sasl-enc; s=fm1; t=1685735881; x=1685822281; bh=W67iEbZbu2cqC Q2PuNdJ3W0wASP2gqnBbbHikiCrwHo=; b=QcNwtsvAWx5oieEjAviVd+yPVe4h6 fupQCb8ovVlove3fl24+GO4K5H1qv1CpefFUDIXECN2m8lEfhWduo4ZJd30qmY44 /WrlZaYZht1PdYuu/k2G/n8wmQ6O6qWyLgjxVOCeTPXJQCrvgl4ePtKJMNKXSWCM 9e99yJc2SoTYz3Zltv/pj4noy8vg5R42Dah2+iuqCgH7+ALrdVbKuFFMS2qcWDkp ZquFZk4uHOtb4fdlQa94nZBv3zAoYuYjVXoyTb48/8E9y418Jad5uO7uISHhdR7g rRRBt9Z6TOV6EnIO2cI0/xGX37178hxJWT7wd0TQAL9jQfazr1li/pBzw== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvhedrfeelfedgudegudcutefuodetggdotefrod ftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfgh necuuegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmd enucfjughrpeffhffvvefukfhfgggtuggjsehgtderredttdejnecuhfhrohhmpeforghr vghkucforghrtgiihihkohifshhkihdqifpkrhgvtghkihcuoehmrghrmhgrrhgvkhesih hnvhhishhisghlvghthhhinhhgshhlrggsrdgtohhmqeenucggtffrrghtthgvrhhnpefg udelteefvefhfeehieetleeihfejhfeludevteetkeevtedtvdegueetfeejudenucevlh hushhtvghrufhiiigvpedtnecurfgrrhgrmhepmhgrihhlfhhrohhmpehmrghrmhgrrhgv khesihhnvhhishhisghlvghthhhinhhgshhlrggsrdgtohhm X-ME-Proxy: Feedback-ID: i1568416f:Fastmail Date: Fri, 2 Jun 2023 21:57:52 +0200 From: Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= To: Stefano Stabellini Cc: xen-devel@lists.xenproject.org, michal.orzel@amd.com, Stefano Stabellini Subject: Re: [PATCH] automation: zen3 dom0pvh test Message-ID: References: <20230531234921.2291367-1-sstabellini@kernel.org> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="dnU5jHBX5k5d/p/h" Content-Disposition: inline In-Reply-To: <20230531234921.2291367-1-sstabellini@kernel.org> --dnU5jHBX5k5d/p/h Content-Type: text/plain; protected-headers=v1; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Date: Fri, 2 Jun 2023 21:57:52 +0200 From: Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= To: Stefano Stabellini Cc: xen-devel@lists.xenproject.org, michal.orzel@amd.com, Stefano Stabellini Subject: Re: [PATCH] automation: zen3 dom0pvh test On Wed, May 31, 2023 at 04:49:21PM -0700, Stefano Stabellini wrote: > From: Stefano Stabellini >=20 > Add a PVH Dom0 test for the zen3 runner. >=20 > Signed-off-by: Stefano Stabellini Acked-by: Marek Marczykowski-G=C3=B3recki > --- > automation/gitlab-ci/test.yaml | 8 ++++++++ > 1 file changed, 8 insertions(+) >=20 > diff --git a/automation/gitlab-ci/test.yaml b/automation/gitlab-ci/test.y= aml > index fbe2c0589a..d5cb238b0a 100644 > --- a/automation/gitlab-ci/test.yaml > +++ b/automation/gitlab-ci/test.yaml > @@ -202,6 +202,14 @@ zen3p-smoke-x86-64-gcc-debug: > - *x86-64-test-needs > - alpine-3.12-gcc-debug > =20 > +zen3p-smoke-x86-64-dom0pvh-gcc-debug: > + extends: .zen3p-x86-64 > + script: > + - ./automation/scripts/qubes-x86-64.sh dom0pvh 2>&1 | tee ${LOGFILE} > + needs: > + - *x86-64-test-needs > + - alpine-3.12-gcc-debug > + > zen3p-pci-hvm-x86-64-gcc-debug: > extends: .zen3p-x86-64 > script: > --=20 > 2.25.1 >=20 --=20 Best Regards, Marek Marczykowski-G=C3=B3recki Invisible Things Lab --dnU5jHBX5k5d/p/h Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQEzBAEBCAAdFiEEhrpukzGPukRmQqkK24/THMrX1ywFAmR6ScYACgkQ24/THMrX 1yxHhAgAh+1mcHHt1EIbg/OJUv4i6QmKojat/jzKwtwqePzdSC8+dtJC3Z4JGSyU UnKPWtQ/UV+EDQOp7W/q4NwaZFtjrGfxlGw7zrbBVoXtVnaL1t8e3dBsvJh/uDNS Wikvv6K7y2wflmwZEMK+1BxWiEsfnY01kM8VOxrT3BnWiotEsaodsS0CHnFqqUGr 0XezL7Bz1f9h/A1o6HEhKJv8e5qxVZAYW4zZd3JDl72DOhruEdmlmiUzf9uaqJnX HtyqDGegQc9bDk1LOAjMvmlbwdJAJ2dIH6Y3q/ca88vV4lJLxJIrwrYxqr8LL7UW yhK9Pdo1Wh1EpVZV/9MgOktz5hDMMA== =u0EB -----END PGP SIGNATURE----- --dnU5jHBX5k5d/p/h-- From xen-devel-bounces@lists.xenproject.org Fri Jun 02 20:36:27 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 02 Jun 2023 20:36:27 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543245.848055 (Exim 4.92) (envelope-from ) id 1q5BVV-0003Qz-5X; Fri, 02 Jun 2023 20:36:21 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543245.848055; Fri, 02 Jun 2023 20:36:21 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q5BVV-0003Qs-1e; Fri, 02 Jun 2023 20:36:21 +0000 Received: by outflank-mailman (input) for mailman id 543245; Fri, 02 Jun 2023 20:36:19 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q5BVT-0003Qm-Bp for xen-devel@lists.xenproject.org; Fri, 02 Jun 2023 20:36:19 +0000 Received: from esa4.hc3370-68.iphmx.com (esa4.hc3370-68.iphmx.com [216.71.155.144]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 1e87ebcb-0185-11ee-8611-37d641c3527e; Fri, 02 Jun 2023 22:36:16 +0200 (CEST) Received: from mail-dm6nam11lp2176.outbound.protection.outlook.com (HELO NAM11-DM6-obe.outbound.protection.outlook.com) ([104.47.57.176]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 02 Jun 2023 16:36:05 -0400 Received: from BN7PR03MB3618.namprd03.prod.outlook.com (2603:10b6:406:c3::27) by DS0PR03MB7278.namprd03.prod.outlook.com (2603:10b6:8:12e::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6411.28; Fri, 2 Jun 2023 20:36:01 +0000 Received: from BN7PR03MB3618.namprd03.prod.outlook.com ([fe80::7ebd:898:4cb0:7514]) by BN7PR03MB3618.namprd03.prod.outlook.com ([fe80::7ebd:898:4cb0:7514%5]) with mapi id 15.20.6455.020; Fri, 2 Jun 2023 20:36:00 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 1e87ebcb-0185-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1685738176; h=message-id:date:subject:from:to:cc:references: in-reply-to:content-transfer-encoding:mime-version; bh=w4QfV6U25NfTxLj23TKZ5MdViJ2rhU+xT3CjB/7jyQw=; b=YMPPSYT/DW/opy7xrpnctSHldlory9TvMnYJXiRNt8MQkT1sBsOSOrF7 Zikwiq/AS4D+EBvSZW09fUV5pULh1pIlJDno+4ijiKcnQXK/biUS/plbJ 6MljNiY1WWOJKCP8A2Ikxxk1ApaK8NZjlS1sOEiUGP2A1bph8ri6dNcSG 8=; X-IronPort-RemoteIP: 104.47.57.176 X-IronPort-MID: 113913961 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:HUI0G677T8Pmpnq7ST9sKAxRtPjGchMFZxGqfqrLsTDasY5as4F+v mYeW2/QafaCZGHyKoxyYY/l9UtQ75XSztQ2Sgdv+Hg0Hi5G8cbLO4+Ufxz6V8+wwm8vb2o8t plDNYOQRCwQZiWBzvt4GuG59RGQ7YnRGvynTraCYnsrLeNdYH9JoQp5nOIkiZJfj9G8Agec0 fv/uMSaM1K+s9JOGjt8B5mr9lU35JwehBtC5gZlPa4T5geC/5UoJMl3yZ+ZfiOQrrZ8RoZWd 86bpJml82XQ+QsaC9/Nut4XpWVTH9Y+lSDX4pZnc/DKbipq/0Te4Y5iXBYoUm9Fii3hojxE4 I4lWapc6+seFvakdOw1C3G0GszlVEFM0OevzXOX6aR/w6BaGpdFLjoH4EweZOUlFuhL7W5mz P8JCDQcfBq6mvOqx5y6FMpXg/kyBZy+VG8fkikIITDxK98DGMmGb4CUoNhS0XE3m9xEGuvYa 4wBcz1zYR/cYhpJfFAKFJY5m+TujX76G9FagAvN+exrvC6Ok0ooj+aF3Nn9I7RmQe18mEqCq 32A1GP+GhwAb/SUyCaf82LqjejK9c/+cNtLT+zhra802TV/wEQYDxgSCQqKiMOLtWCDButjJ RUO1HMx+P1aGEuDC4OVsweDiHeAsxwVXdZKFKsk4QWJx6jTyw2dAXUICDVGbbQOpMIwADAny FKNt9foHiB09q2YT2qH8bWZpi/0PjIaRUcAbyIZSQoO4/H4vZo+yBnIS75LD6qdntDzXzbqz Fi3QDMWgrwSiYsH0vu99FWe2ja0/MGWEEgy+xndWX+j4kVhfom5aoe06F/dq/FdMIKeSVrHt 38B8ySD0N0z4Vi2vHTlaI0w8HuBvp5p7BW0bYZTIqQc IronPort-HdrOrdr: A9a23:12URSaB9m0jlSGDlHemT55DYdb4zR+YMi2TDGXoBMCC9E/bo7/ xG+c5w6faaskd1ZJhNo6HjBEDEewK+yXcX2+gs1NWZLW3bUQKTRekI0WKh+V3d8kbFh4lgPM lbAs5D4R7LYWSST/yW3OB1KbkdKRC8npyVuQ== X-Talos-CUID: 9a23:HjLHPGENsS24RT+iqmJe9180HtE3eETA3WvXDU7mKl1sday8HAo= X-Talos-MUID: 9a23:dLJzkAY3WPIwDOBTvDjpgG0zBe5S0ZuANR00rZtfoefdKnkl X-IronPort-AV: E=Sophos;i="6.00,214,1681185600"; d="scan'208";a="113913961" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Oc53hHVg5tR202bVXPBG2AVznhUPkDFSM9R4ZK1GAC8dJExmDkr1pWdY6udDYP0EhFjd5bk+ZgYjhqocK4gQonUTgKrbCQhl5Fkh7AQWOGrsphv/6vpinDLciLDkr4CczZZwnUOxRGrrG6XLPcUF9lVJBzqc9acsVNpmjQmFeQg6atqgK//n0tJOYOrUDyvyF/LKoRbx3QdnBFOeUQq6G2E1l98tnfObF9hCl6W1/i+ZalLkImEwC4mV9si8Rf75BCg7Za3sZbfZcgu8cSnLEc3WFgV1A1unrTGD3hnTbxk7h6T1+a9Pe7E2D7IQg16PaltWNEuL0Tra5Y3ZBmJT1w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=w4QfV6U25NfTxLj23TKZ5MdViJ2rhU+xT3CjB/7jyQw=; b=mPef6cclYqF52jV8LYAyoEBBFuj7voaprGKHD1SIY2g4pBzIwglcQxc/8PeZJ5VILGIQthtkaqR7tYGK4+/iGHTaPVqKMyKyugcqNR47nztiNHVz83Ube6XSrI0CnsuESFcdNsJDxDHC0siVJNxEsRnYW1BeNKzNFzWd5geYs8zA6XyhW7pny17mrck87GOry5c4xONzbpUBpTOVNV1WKwdWKAoUN1gZmjUnCGsFPGc6KWx2pBNfauslNQOdyWODSBW0geQTpGko4NddxX5bv5bK/X0OPKt1mClUSfeDwvnHmUJXZV4donOqinKI+YMLJxYUboovR77BJtfLRAYkFQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=w4QfV6U25NfTxLj23TKZ5MdViJ2rhU+xT3CjB/7jyQw=; b=IOGD4lHm2XuDM2u+tsOGpAd/6RXHMJoQ2ais7h2Sm3GDqnI0Xt1fTFhXORRckUmcccynCQRMM/DAvqlm3e/7DOOYws0AW5wZrKFXbdcsU1knZ/psMBOZeldJbvD9HbCsX9Tm3adCZnfpQbYuxk2qD/w5N2fLxWrarMZuaWpfwRM= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: <0b118c70-b1b0-43ad-31d2-1b301b360b12@citrix.com> Date: Fri, 2 Jun 2023 21:35:56 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH] x86/microcode: Prevent attempting updates known to fail Content-Language: en-GB From: Andrew Cooper To: Alejandro Vallejo , Xen-devel Cc: Jan Beulich , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu References: <20230531175119.10830-1-alejandro.vallejo@cloud.com> <83324533-38da-b5bc-875e-a161d7501eb5@citrix.com> In-Reply-To: <83324533-38da-b5bc-875e-a161d7501eb5@citrix.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO2P265CA0228.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:b::24) To BN7PR03MB3618.namprd03.prod.outlook.com (2603:10b6:406:c3::27) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BN7PR03MB3618:EE_|DS0PR03MB7278:EE_ X-MS-Office365-Filtering-Correlation-Id: 4bc5d23f-e5bd-4f3f-53c1-08db63a8fa20 X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: bgqlvDpe1W/8ruVotzL/s72YYzL8KgiBRvQy0PgliQSy+nzvL0jzkrIJ/psPHY2WOPj6yozWzGxl7wGqu1MyE3MblwTK7mWo4bT2t509g/vZY+XQ3O2ZIEkjXehhb5M/DQa0YEeUZ24u85r6oW85nCh9BXuGOVXeFMctO21MWrsUJCeQIBlhWn0L0sBXuV/nFy+rmlxlFEKfHFy/sh33JCxTBAFfpUpwkxun4lnuMXXNrsBTAHpn+3ZbICuj8ckp+CHJRW4a35ge+36bukHaXSl6EZESLIjD7m16vccYkQyz35hqOq+GUnA9rdRsfr08TyLSh0xqaz0EK44G7tB1Kaplc9OJc1cZ91ksB09xqNdL4h+kfF8vKMc1UU/mhePRZU8nNjymvwgukGqn9DZGYsOcGn6r4WaEGhn9aiu0eYiym2L2Bn9lnKl9Q6zP7urVMY8Yyr7ZCK2JnxkdiWcZAa4Qc7qrvgH20urGygQhFyxWLZcy5JMFPLfUAZYnSAsFC29GBmZizy1n5d6F2OPpJyOiEUrel8mCh99jIxmW1MrkjUNh9VwjlsKv2wqFrG6EjtG/qCMGssR7yBokfaXc8Tt26waobxBYLUTOtZp2/DkLBHuyXXgRuQo2o/b7T0wpYmlhc51ZVSPCsDPFYjhrlA== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BN7PR03MB3618.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(376002)(346002)(396003)(366004)(39860400002)(136003)(451199021)(53546011)(26005)(6506007)(6512007)(82960400001)(15650500001)(186003)(36756003)(2616005)(83380400001)(2906002)(38100700002)(110136005)(6666004)(31696002)(6486002)(316002)(41300700001)(54906003)(478600001)(66476007)(66946007)(31686004)(66556008)(8676002)(5660300002)(4326008)(8936002)(86362001)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?U1YwR09zdmVQa3ZxVk5sOG1pQ0N5TlRmSzhCUzQ1ZUkyUGVlTmpmdThpdGRr?= =?utf-8?B?R2NCMTk3K3RmWTg3VnR0Z0E3cDdUVG1KSlN5Njk0TitLTjlJaGd0VFhzbmpJ?= =?utf-8?B?U1VMR0VRekp2bURna1FwdnM4dmdaZUxEenViT1FESG9ybFF5MlI4TXRBdHZS?= =?utf-8?B?N2d4ck10UFdTSURISENCR0RQWlRPN2FxU0Q4YmRTU2VaU2pzTUhzUXBMUHVQ?= =?utf-8?B?ZVdSQVZ1WkVETEw2T2p6MHZucVlWWTVBbThNcE1jOHFVdUZCN1hoQXpOQzA3?= =?utf-8?B?VjkyMlNiS0hwWFJCdmR3VWdkOGpZbS9KUCt2aFhia0gybGR0bHZ1Tk9pZkpY?= =?utf-8?B?djRhcWlCN1orTkRkNjNMblc0U0l0WTVTblJ5VG1BbHREMzJ0TEY3Q0U0VEZu?= =?utf-8?B?RDc2bzN5dTVrRVpoMjl6UVhuWENqU1QrZzVCOGlJNUZqN3c5ZDNBRHJCMDU0?= =?utf-8?B?VzlBUXVZaVk0VkpWc0RReENoU0tWcnk3UUtRQWV6aXFMM3A4NzJmODVQSVp3?= =?utf-8?B?OXRCVmdiYnRxQUMwZ0l5dCt4bzZFL2xRRUNGTmcwSDlkQlNMaXVvOXBaQ0lU?= =?utf-8?B?SU9wS1BoeDY4K0NxSTBFMnhRRTdMNUVOcDRTa0JrZVVQQzN5bXNDb0pZV3hv?= =?utf-8?B?eUl4RHBoVGJ0T1B0SzlMNHQ3bHpteVQza3BDM0dLd2IvWGFJQm03eWRGM3RT?= =?utf-8?B?ZUNjTGNrUHF1RElaV01UTkRpSFYrV1hiMllKZld5aHBKUXhyR2djdHR6VlIz?= =?utf-8?B?aTgvc3FoZENmZzlHYnV6MlNEU0VpYUgzYjRxNU5oVi9WYi9RN3VLNVp2MG52?= =?utf-8?B?Mi9NQmRvTnBJVVJ5ZklnbWxVM1hLdzFpK1g5OVM3N2REbkFHSFVOSEQwSGhT?= =?utf-8?B?MGpwMmVwczBGWFVIZVhFWjVpMU5BTy9paTZ4bjg1NEs1YkJkR1FKNnprenRv?= =?utf-8?B?ay9iY3dJZ0R6RW5UaUEvYzcwZ29UMDh1aU9RRDI3anU0MEVrUlhpNmJEdHk2?= =?utf-8?B?MG1HcjdjK3VZUTZWaFN3VFFyeWdVbVh3UnRZVSsvYlhIdWlrNTlTMThHU3Z3?= =?utf-8?B?Ynh2UHNTV1BjUlYvS3h5ZmlLT296Y2k3d01lM3VITnVFQzR3eG5wajdiaDdk?= =?utf-8?B?QTN6QjVNeDJoZ1AybkVIZFhieVBRS09NaDBMV2R2MTFPNjBkQ1MxTWx2dzlt?= =?utf-8?B?VWtNdlpjbUFsQmpOb3BoMG5ldG9uT1pQWlBxbTk0ajlZTjlZM2Q2L2lpMmFY?= =?utf-8?B?NjlBM2tnZkNCSmk2UFZENTlPMC9TNDV5QlVWck9OeWhLYmRtRnVwKzlEM3Mr?= =?utf-8?B?c3VkNGFYdm9nNGhLWElGWXhucHVacU1iaFlDSjNiZGVUbmN4UmFhOVJscGsx?= =?utf-8?B?SEJhRjVkUFBFSzZGcDJSSll2TDlVN1F3S1lnRUkybC9JYXFVY24wcWdDdGha?= =?utf-8?B?WEN5aXpIWENCMFVGdDF3ejZ4T25NMjNad3dWLzJZNnRIaVNmYmphQXNnMlhJ?= =?utf-8?B?eC81eTBhaWxxRjkwbWZBRkNwalExRVlydDFVQm5KdThUMDZ6WFR4dmFTR2lZ?= =?utf-8?B?M0N1Q2JtYWN4WGxueWJ1UEhaMERYTkxxK2xtTHd0STM1cExQRzNKWmZxSndL?= =?utf-8?B?K2k0aWdFWnF1T0Uwc3hwTzZhamswSXpVSnJodjBtSFp0U3ZkSWgyNU1ScS9S?= =?utf-8?B?VUczcWM2TWJlUkJOTy90SllGN2lrSElzY0dyeG1YSEdQeVBTMDFWOC9GODh2?= =?utf-8?B?bDdIR1pPTHQwbTV5ZmhBM1RsWUcwZmM1WldYM3ZZb05tYnR0djl3RWlwa2sz?= =?utf-8?B?NFZSa2YyZmZjMFZPeElhVEVWT3RnWDV0SUxCU3N2UW9oblRXZ0QydHdWNDBY?= =?utf-8?B?WnkxRTl3SDNuMlFrWUVqa2tZY3dJdVRWZG9GK0FBVm8ySG5UYXJBVWgyY0lL?= =?utf-8?B?MERpS29LSzJ5QTkvdVpVNnIzRGlkYm1Ua2E5R3phcWtUSW1lZ1pVK2ZXRXJv?= =?utf-8?B?ZXZnVHFqNi9BWHQ3d2tWYTBPODd2OTQweDhVS1kwM0QxZldySGFJNjlGTDlN?= =?utf-8?B?eThrNUhDQlk4TzcyNDgvQWRDUEppUkg1enl1RjdyQ1RHQ2pZSEhFZDNEUWVQ?= =?utf-8?B?Z1JMa1VUMWUxRm1RU0VtOTJkS3JBVENtdkNES0Jmd3pTb3VpYytXdGJVRk9k?= =?utf-8?B?L3c9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: aJEjLOsQfVqVeRRzsUad0VIppfQHiN5znIyxm512RvvsaPcogXISXz9EtzGzTJZi1PSKTOc+ijiqhuG7Q2HQyvw2XmZueoZ/IEc0flVljV1pRDtM/fCcbc3sBOJKdEkIo90K6H/vmOYBwON4T5m/KUkPOqpLDax1r5oCPNL/84Hc0WEwvc4P5hiXupOW/uaKqLjz5Ktq83fIwJuhA3Y+Dlzs9Y2dWVrdFtBAjLsMagH7XzFIhxCgVo7WXDbsYJZ6dD8y30SW0gTCgqdNnb+g2+BJkdr3usluj6OPinM34z03Sw8gtmNRrJ1j+Ix/kMulZtsT5HMSWeZykrIlGn58OetADc+YIEVtAkEwyTlj/stE6l66x6RLUbyRfPIfjIMeSzQDanlxZlUt0LquYZme2+iAaCl+j670Pm83PSq9fqTxqnxOoDX7JQ3y7lQrBWziTJK3rhUVNMFrGwBnY7zIFEPD9bb5tqLgXDpP9ZV1ZlaGRxjhggrk7ePKgkVg4dEDOVbe5IwR9acO/mPkZeyhp4dH7RjvpGwCU4UGj9SB2cO/FMMocGRQnV0EemecG0xbGSKdmGaK3734mIzKfiYPM4yLU5mYxJXUJtQONl2J4fPeDw7ZmaPLja8tR6XjZmR32QKLR6nX04H0aQj6dHqXDpQdCN0hX1hTj1UsiZXKuTX3KCGqvv1nzG9B9bIgmYVtKpK0dpqkKWsMNoarszRD9UQUH7S+Ip0WNsvNt1EsLH0rwfIu0kGHicX3Lh8owL1G+2aYLE5PlJjiaihd0qqcP7M2Xlk0Z/lbP0XnJ7voVFV9OkZwgbGYxt9ia6Gaj1+FK6h8b/LDwKMS/fiMyyp5cJ3GOnY3eBWU1IqP6+A13uI= X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 4bc5d23f-e5bd-4f3f-53c1-08db63a8fa20 X-MS-Exchange-CrossTenant-AuthSource: BN7PR03MB3618.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Jun 2023 20:36:00.8800 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: RhdtynhYTNTPj3JeBR57foUWHqLI0MFlg6ZaEf7m5Nk26IITuTZmBrXR4gl/gFQCXOdiRsc2Kvy1ZR+sLHMhAqYV1fCsfuuBVDzexxmUtG4= X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS0PR03MB7278 On 01/06/2023 11:54 am, Andrew Cooper wrote: > Instead, I recommend the following: > > 1) One patch moving the early-cpuid/msr read from tsx_init() into > early_microcode_init(), adjusting the comment as it goes.  No point > duplicating that logic, and we need it earlier on boot now. > 2) This patch, adjusting early_microcode_init() only.  Have a printk() > saying "microcode loading disabled by firmware" and avoid filling in > ucode_ops.  Every other part of ucode handling understands "loading not > available". So, having fallen over "x86/ucode: Exit early from early_update_cache() if loading not available" for other reasons, I've realised that this isn't a completely sensible suggestion. By not filling in ucode_ops, nothing ever calls collect_info(), meaning that external components which peek at this_cpu(cpu_sig).rev get 0's back in place of the actual microcode revision.  That's probably the best we can do for genuinely no ucode facilities available. But there's another case we ought to cope with.  Some hypervisors deliberately report a microcode revision of ~0, and we should take to mean "no microcode loading available" too. For this MCU_CONTROL_DIS_MCU_LOAD case, we don't want to be trying to load new microcode because that's a waste of time, but we absolutely should query the current microcode revision.  It is frequently relevant for security reasons. So I think we want to fine-grain things a little, and separate the concepts of "ucode info available" and "ucode loading available".  Per the current mechanism, that would involve supporting a case where ucode_ops.collect_cpu_info() is available but ucode_ops.apply_microcode() is not. ~Andrew P.S. also in our copious free time, we need to start supporting the Intel min_rev field, which is more complicated than it sounds. min_rev is vaguely defined as being relevant to block updates "after you've evaluated CPUID and made decisions based on it", but here in Xen we do also do livepatching and late loading to explicitly make use of newly enumerated features. So we need a way of xen-ucode saying "please really do load this, because I as the admin think it will be fine in combination with the livepatch I'm about to apply". My best idea for this is to have a `--force` option to pass to Xen to skip the revision checks, which will require either a new hypercall, or perhaps borrowing a high bit from the size field in the current hypercall. With a force option in place, the boot time ucode=allow-same can go away.  It has become distinctly less useful now that we were forced do this unilaterally on AMD CPUs, and separating "allow same because of HW bugs" from "the Admin promised they knew what they were doing" would be better for testing. From xen-devel-bounces@lists.xenproject.org Fri Jun 02 21:34:25 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 02 Jun 2023 21:34:25 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543251.848072 (Exim 4.92) (envelope-from ) id 1q5CPU-0001gI-H3; Fri, 02 Jun 2023 21:34:12 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543251.848072; Fri, 02 Jun 2023 21:34:12 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q5CPU-0001gB-Cs; Fri, 02 Jun 2023 21:34:12 +0000 Received: by outflank-mailman (input) for mailman id 543251; Fri, 02 Jun 2023 21:34:11 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q5CPT-0001g1-Jt; Fri, 02 Jun 2023 21:34:11 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q5CPT-0006z3-Hz; Fri, 02 Jun 2023 21:34:11 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q5CPT-0008KN-5c; Fri, 02 Jun 2023 21:34:11 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q5CPT-0005xb-54; Fri, 02 Jun 2023 21:34:11 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=vjsHj0x0y9lBuRU044qRINTUchwDYDVA+acxujAdnuI=; b=VAjvIer5CTZZ6P/zp5Xg1jA3g6 A4zOvNWVZJCbbleuAqXWw+xIDxGpPqJ8wyD419BRkerExpup3DCTQ0afvLEborXK0oRSlw8WXp623 zgfat3TRPC5KVYKWxq8zFpSfmhX6ePq5duEPVt37H8SdbSK4iMeitrcwJV2OZW/2C1QI=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable test] 181109: tolerable FAIL - PUSHED X-Osstest-Failures: xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking X-Osstest-Versions-This: xen=71226054f28ad98ab214b56a15899e8f62a7bca8 X-Osstest-Versions-That: xen=59d0bf62861f5c9b317ccf89f8b5c8b4d19927ad From: osstest service owner Date: Fri, 02 Jun 2023 21:34:11 +0000 flight 181109 xen-unstable real [real] http://logs.test-lab.xenproject.org/osstest/logs/181109/ Failures :-/ but no regressions. Tests which did not succeed, but are not blocking: test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 181095 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop fail like 181095 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 181095 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 181095 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop fail like 181095 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop fail like 181095 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail like 181095 test-armhf-armhf-libvirt 16 saverestore-support-check fail like 181095 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail like 181095 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 181095 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop fail like 181095 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 181095 test-amd64-i386-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-i386-xl-pvshim 14 guest-start fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-armhf-armhf-xl-multivcpu 15 migrate-support-check fail never pass test-armhf-armhf-xl-multivcpu 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-armhf-armhf-xl 15 migrate-support-check fail never pass test-armhf-armhf-xl 16 saverestore-support-check fail never pass test-amd64-i386-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass test-amd64-i386-libvirt 15 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 15 saverestore-support-check fail never pass test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail never pass test-armhf-armhf-xl-credit2 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit2 16 saverestore-support-check fail never pass test-armhf-armhf-xl-arndale 15 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt 15 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 15 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt-raw 14 migrate-support-check fail never pass version targeted for testing: xen 71226054f28ad98ab214b56a15899e8f62a7bca8 baseline version: xen 59d0bf62861f5c9b317ccf89f8b5c8b4d19927ad Last test of basis 181095 2023-06-01 22:07:06 Z 0 days Testing same since 181109 2023-06-02 09:47:57 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Andrew Cooper jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64-xtf pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-prev pass build-i386-prev pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-xtf-amd64-amd64-1 pass test-xtf-amd64-amd64-2 pass test-xtf-amd64-amd64-3 pass test-xtf-amd64-amd64-4 pass test-xtf-amd64-amd64-5 pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl pass test-amd64-i386-xl pass test-amd64-coresched-i386-xl pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-i386-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-i386-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-i386-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-i386-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-i386-qemut-rhel6hvm-amd pass test-amd64-i386-qemuu-rhel6hvm-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-i386-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-freebsd10-amd64 pass test-amd64-amd64-qemuu-freebsd11-amd64 pass test-amd64-amd64-qemuu-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-i386-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-i386-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-i386-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-amd64-i386-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale pass test-amd64-amd64-examine-bios pass test-amd64-i386-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 pass test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 pass test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine pass test-amd64-i386-examine pass test-amd64-i386-freebsd10-i386 pass test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-i386-qemut-rhel6hvm-intel pass test-amd64-i386-qemuu-rhel6hvm-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt pass test-amd64-i386-libvirt pass test-amd64-amd64-livepatch pass test-amd64-i386-livepatch pass test-amd64-amd64-migrupgrade pass test-amd64-i386-migrupgrade pass test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu pass test-amd64-amd64-pair pass test-amd64-i386-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-i386-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-i386-xl-pvshim fail test-amd64-amd64-pygrub pass test-armhf-armhf-libvirt-qcow2 pass test-amd64-amd64-xl-qcow2 pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw pass test-amd64-i386-libvirt-raw pass test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds pass test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-amd64-i386-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-i386-examine-uefi pass test-amd64-amd64-libvirt-vhd pass test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd pass test-amd64-i386-xl-vhd pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Pushing revision : To xenbits.xen.org:/home/xen/git/xen.git 59d0bf6286..71226054f2 71226054f28ad98ab214b56a15899e8f62a7bca8 -> master From xen-devel-bounces@lists.xenproject.org Sat Jun 03 00:03:10 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sat, 03 Jun 2023 00:03:10 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543264.848100 (Exim 4.92) (envelope-from ) id 1q5EjR-0000fT-Gv; Sat, 03 Jun 2023 00:02:57 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543264.848100; Sat, 03 Jun 2023 00:02:57 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q5EjR-0000fM-E8; Sat, 03 Jun 2023 00:02:57 +0000 Received: by outflank-mailman (input) for mailman id 543264; Sat, 03 Jun 2023 00:02:55 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q5EjP-0000fC-Qv; Sat, 03 Jun 2023 00:02:55 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q5EjP-0002Rj-LJ; Sat, 03 Jun 2023 00:02:55 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q5EjP-00044M-9G; Sat, 03 Jun 2023 00:02:55 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q5EjP-0005DL-8k; Sat, 03 Jun 2023 00:02:55 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=lqWN82TbRh7PPkG29i9QtJ+NknRupVpEBbcFDTcwrJc=; b=zizewm3lP6UI6/5ie00Q4mhgde UZw8vDBJ+8kOWE2afTc3650+bEKJqf30V+WemccTWC6QGHNwA/gLHdIuxe0KEMtbE4hYn/FUmvCIj o9SRuwE97TeP8JoqAge8lhLBtEizI465+HnKKg96iO8JnMncnGX1l63o9AWmemhv+JAo=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable-smoke test] 181122: tolerable all pass - PUSHED X-Osstest-Failures: xen-unstable-smoke:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking xen-unstable-smoke:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking xen-unstable-smoke:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking xen-unstable-smoke:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking xen-unstable-smoke:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: xen=67fdffef9246c82cecd8db28838ed09e79e2528a X-Osstest-Versions-That: xen=71226054f28ad98ab214b56a15899e8f62a7bca8 From: osstest service owner Date: Sat, 03 Jun 2023 00:02:55 +0000 flight 181122 xen-unstable-smoke real [real] http://logs.test-lab.xenproject.org/osstest/logs/181122/ Failures :-/ but no regressions. Tests which did not succeed, but are not blocking: test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-armhf-armhf-xl 15 migrate-support-check fail never pass test-armhf-armhf-xl 16 saverestore-support-check fail never pass version targeted for testing: xen 67fdffef9246c82cecd8db28838ed09e79e2528a baseline version: xen 71226054f28ad98ab214b56a15899e8f62a7bca8 Last test of basis 181093 2023-06-01 21:00:28 Z 1 days Testing same since 181122 2023-06-02 21:00:24 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Marek Marczykowski-Górecki Stefano Stabellini jobs: build-arm64-xsm pass build-amd64 pass build-armhf pass build-amd64-libvirt pass test-armhf-armhf-xl pass test-arm64-arm64-xl-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-libvirt pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Pushing revision : To xenbits.xen.org:/home/xen/git/xen.git 71226054f2..67fdffef92 67fdffef9246c82cecd8db28838ed09e79e2528a -> smoke From xen-devel-bounces@lists.xenproject.org Sat Jun 03 03:47:26 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sat, 03 Jun 2023 03:47:26 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543274.848122 (Exim 4.92) (envelope-from ) id 1q5IET-0004Ah-Oc; Sat, 03 Jun 2023 03:47:13 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543274.848122; Sat, 03 Jun 2023 03:47:13 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q5IET-0004AM-JN; Sat, 03 Jun 2023 03:47:13 +0000 Received: by outflank-mailman (input) for mailman id 543274; Sat, 03 Jun 2023 03:47:12 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q5IES-0004AC-6p; Sat, 03 Jun 2023 03:47:12 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q5IER-0006OK-Vi; Sat, 03 Jun 2023 03:47:12 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q5IER-0006sw-H3; Sat, 03 Jun 2023 03:47:11 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q5IER-0004Fl-GY; Sat, 03 Jun 2023 03:47:11 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=QNUOTWt2YtgqZZXYk1kT4dRymr/QfMt4rjkEvH3uxeA=; b=1OzewpgyrbFk7sCwiyU8ObTODW VC2q7t/HjQX4jHVuw/0eGg/4nDK+CaQ002rbnBHF+saaNxNmET+ZAgEn3eYaWpSCj1bLSkBfN8hAC dDNGlnNYnb6R05hNcNpNUXfEtWoOorP8k2yeMqq460wrMrcxo6vagm4GqweS9t7HzIpY=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [qemu-mainline test] 181119: regressions - FAIL X-Osstest-Failures: qemu-mainline:test-amd64-i386-libvirt-pair:xen-install/src_host:fail:regression qemu-mainline:test-amd64-amd64-libvirt-pair:leak-check/check/src_host:fail:regression qemu-mainline:test-amd64-amd64-libvirt-pair:leak-check/check/dst_host:fail:regression qemu-mainline:test-amd64-i386-libvirt:leak-check/check:fail:regression qemu-mainline:test-amd64-amd64-libvirt-xsm:leak-check/check:fail:regression qemu-mainline:build-arm64-xsm:xen-build:fail:regression qemu-mainline:build-arm64:xen-build:fail:regression qemu-mainline:test-amd64-amd64-libvirt:leak-check/check:fail:regression qemu-mainline:test-amd64-i386-libvirt-xsm:leak-check/check:fail:regression qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:leak-check/check:fail:regression qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:leak-check/check:fail:regression qemu-mainline:test-amd64-amd64-libvirt-vhd:leak-check/check:fail:regression qemu-mainline:test-amd64-i386-xl-vhd:guest-start/debian.repeat:fail:regression qemu-mainline:test-amd64-i386-libvirt-raw:leak-check/check:fail:regression qemu-mainline:test-amd64-amd64-xl-qcow2:leak-check/check:fail:regression qemu-mainline:test-armhf-armhf-libvirt:leak-check/check:fail:regression qemu-mainline:test-armhf-armhf-libvirt-qcow2:leak-check/check:fail:regression qemu-mainline:test-armhf-armhf-libvirt-raw:leak-check/check:fail:regression qemu-mainline:test-armhf-armhf-xl-vhd:leak-check/check:fail:regression qemu-mainline:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:build-arm64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking qemu-mainline:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking qemu-mainline:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking qemu-mainline:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking qemu-mainline:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking qemu-mainline:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking qemu-mainline:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking qemu-mainline:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking qemu-mainline:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking qemu-mainline:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: qemuu=a86d7b9ec0adb2f1efce8ab30d9ed2b72db0236e X-Osstest-Versions-That: qemuu=6972ef1440a9d685482d78672620a7482f2bd09a From: osstest service owner Date: Sat, 03 Jun 2023 03:47:11 +0000 flight 181119 qemu-mainline real [real] http://logs.test-lab.xenproject.org/osstest/logs/181119/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: test-amd64-i386-libvirt-pair 10 xen-install/src_host fail REGR. vs. 180691 test-amd64-amd64-libvirt-pair 30 leak-check/check/src_host fail REGR. vs. 180691 test-amd64-amd64-libvirt-pair 31 leak-check/check/dst_host fail REGR. vs. 180691 test-amd64-i386-libvirt 23 leak-check/check fail REGR. vs. 180691 test-amd64-amd64-libvirt-xsm 23 leak-check/check fail REGR. vs. 180691 build-arm64-xsm 6 xen-build fail REGR. vs. 180691 build-arm64 6 xen-build fail REGR. vs. 180691 test-amd64-amd64-libvirt 23 leak-check/check fail REGR. vs. 180691 test-amd64-i386-libvirt-xsm 23 leak-check/check fail REGR. vs. 180691 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 21 leak-check/check fail REGR. vs. 180691 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 21 leak-check/check fail REGR. vs. 180691 test-amd64-amd64-libvirt-vhd 22 leak-check/check fail REGR. vs. 180691 test-amd64-i386-xl-vhd 21 guest-start/debian.repeat fail REGR. vs. 180691 test-amd64-i386-libvirt-raw 22 leak-check/check fail REGR. vs. 180691 test-amd64-amd64-xl-qcow2 24 leak-check/check fail REGR. vs. 180691 test-armhf-armhf-libvirt 21 leak-check/check fail REGR. vs. 180691 test-armhf-armhf-libvirt-qcow2 20 leak-check/check fail REGR. vs. 180691 test-armhf-armhf-libvirt-raw 20 leak-check/check fail REGR. vs. 180691 test-armhf-armhf-xl-vhd 20 leak-check/check fail REGR. vs. 180691 Tests which did not succeed, but are not blocking: test-arm64-arm64-libvirt-raw 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-xsm 1 build-check(1) blocked n/a test-arm64-arm64-xl 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit1 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit2 1 build-check(1) blocked n/a test-arm64-arm64-xl-thunderx 1 build-check(1) blocked n/a test-arm64-arm64-xl-vhd 1 build-check(1) blocked n/a test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a build-arm64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 180691 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 180691 test-armhf-armhf-libvirt 16 saverestore-support-check fail like 180691 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail like 180691 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop fail like 180691 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail like 180691 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 180691 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop fail like 180691 test-amd64-i386-xl-pvshim 14 guest-start fail never pass test-amd64-i386-libvirt 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-i386-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-credit2 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit2 16 saverestore-support-check fail never pass test-amd64-i386-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-libvirt 15 migrate-support-check fail never pass test-armhf-armhf-xl 15 migrate-support-check fail never pass test-armhf-armhf-xl 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 15 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 16 saverestore-support-check fail never pass test-armhf-armhf-xl-multivcpu 15 migrate-support-check fail never pass test-armhf-armhf-xl-multivcpu 16 saverestore-support-check fail never pass test-armhf-armhf-xl-arndale 15 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 15 saverestore-support-check fail never pass version targeted for testing: qemuu a86d7b9ec0adb2f1efce8ab30d9ed2b72db0236e baseline version: qemuu 6972ef1440a9d685482d78672620a7482f2bd09a Last test of basis 180691 2023-05-17 10:45:22 Z 16 days Failing since 180699 2023-05-18 07:21:24 Z 15 days 56 attempts Testing same since 181119 2023-06-02 17:12:00 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Afonso Bordado Akihiko Odaki Akihiro Suda Alex Bennée Alex Williamson Alexander Bulekov Alexander Graf Alistair Francis Ani Sinha Ani Sinha Anton Johansson BALATON Zoltan Bernhard Beschow Bin Meng Brian Cain Brice Goglin Camilla Conte Cindy Lu Clément Chigot Cornelia Huck Cédric Le Goater Cédric Le Goater Daniel Henrique Barboza Daniel P. Berrangé Daniil Kovalev David Hildenbrand Emanuele Giuseppe Esposito Enze Li Eric Auger Eric Blake Eric DeVolder Erico Nunes Eugenio Pérez Fabiano Rosas Fan Ni Fiona Ebner Francisco Iglesias Gavin Shan Gregory Price Gregory Price Hao Zeng Hawkins Jiawei Igor Mammedov Ira Weiny Jason Wang Jean-Philippe Brucker John Snow Jonathan Cameron Juan Quintela Kevin Wolf Laurent Vivier Lei Yang Leonardo Bras Maksim Davydov Marc-André Lureau Marcin Juszkiewicz Marco Liebel Mark Cave-Ayland Markus Armbruster Matheus Tavares Bernardino Mauro Matteo Cascella Michael S. Tsirkin Michael Tokarev Mostafa Saleh Nicholas Piggin Nicolas Saenz Julienne Palmer Dabbelt Paolo Bonzini Peter Maydell Peter Xu Philippe Mathieu-Daudé Raghu H Rene Engel Richard Henderson Richard Purdie Ricky Zhou Ryan Wendland Sebastian Ott Sergio Lopez Sid Manning Song Gao Stefan Hajnoczi Stefano Garzarella Steve Sistare Taylor Simpson Thomas Huth Thomas Weißschuh timothee.cocault@gmail.com Timothée Cocault Tommy Wu Viktor Prutyanov Vitaly Cheptsov Vivek Kasireddy Vladimir Sementsov-Ogievskiy Volker Rümelin Xinyu Li Zeng Hao Zhenyu Zhang Zhenzhong Duan jobs: build-amd64-xsm pass build-arm64-xsm fail build-i386-xsm pass build-amd64 pass build-arm64 fail build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt blocked build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl blocked test-armhf-armhf-xl pass test-amd64-i386-xl pass test-amd64-coresched-i386-xl pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm fail test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm fail test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-i386-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm fail test-arm64-arm64-libvirt-xsm blocked test-amd64-i386-libvirt-xsm fail test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm blocked test-amd64-i386-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-i386-qemuu-rhel6hvm-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-freebsd10-amd64 pass test-amd64-amd64-qemuu-freebsd11-amd64 pass test-amd64-amd64-qemuu-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-i386-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-amd64-i386-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 blocked test-armhf-armhf-xl-credit1 pass test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 blocked test-armhf-armhf-xl-credit2 pass test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-i386-freebsd10-i386 pass test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-i386-qemuu-rhel6hvm-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt fail test-armhf-armhf-libvirt fail test-amd64-i386-libvirt fail test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu pass test-amd64-amd64-pair pass test-amd64-i386-pair pass test-amd64-amd64-libvirt-pair fail test-amd64-i386-libvirt-pair fail test-amd64-amd64-xl-pvshim pass test-amd64-i386-xl-pvshim fail test-amd64-amd64-pygrub pass test-armhf-armhf-libvirt-qcow2 fail test-amd64-amd64-xl-qcow2 fail test-arm64-arm64-libvirt-raw blocked test-armhf-armhf-libvirt-raw fail test-amd64-i386-libvirt-raw fail test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds pass test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-amd64-i386-xl-shadow pass test-arm64-arm64-xl-thunderx blocked test-amd64-amd64-libvirt-vhd fail test-arm64-arm64-xl-vhd blocked test-armhf-armhf-xl-vhd fail test-amd64-i386-xl-vhd fail ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 11638 lines long.) From xen-devel-bounces@lists.xenproject.org Sat Jun 03 04:25:32 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sat, 03 Jun 2023 04:25:32 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543282.848137 (Exim 4.92) (envelope-from ) id 1q5IpR-00008I-Gz; Sat, 03 Jun 2023 04:25:25 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543282.848137; Sat, 03 Jun 2023 04:25:25 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q5IpR-00008B-E7; Sat, 03 Jun 2023 04:25:25 +0000 Received: by outflank-mailman (input) for mailman id 543282; Sat, 03 Jun 2023 04:25:24 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q5IpQ-000081-3J; Sat, 03 Jun 2023 04:25:24 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q5IpP-0007Mn-NF; Sat, 03 Jun 2023 04:25:23 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q5IpP-0000L9-8D; Sat, 03 Jun 2023 04:25:23 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q5IpP-0000Xj-7S; Sat, 03 Jun 2023 04:25:23 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=8sWtOE6BBAkjPhSXZWrRjEaDfNy3+FkePZO0/gliZH8=; b=HMkFwJFwENEIRz0jrD9sg933Oc dkaaBaUcJ7vy3Fz26S7E9+J6l3BK6xIFvrgBoBQsMk4UIBYcSCz4DItRdpD3SMwN+7nxE245G7r60 WA1Abe4Wkg5RT/dJu7EHupib1ezsSYGCchZB7DuM6qtOb1aDVW7QSg91TMVNYpy/BF0Q=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [linux-linus test] 181115: regressions - FAIL X-Osstest-Failures: linux-linus:test-armhf-armhf-xl-credit1:xen-boot:fail:regression linux-linus:test-amd64-amd64-freebsd11-amd64:guest-start/freebsd.repeat:fail:regression linux-linus:test-armhf-armhf-examine:reboot:fail:nonblocking linux-linus:test-armhf-armhf-xl-multivcpu:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-arndale:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking linux-linus:test-armhf-armhf-xl-credit2:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking linux-linus:test-armhf-armhf-libvirt:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-raw:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-qcow2:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-vhd:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-rtds:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-qcow2:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-raw:migrate-support-check:fail:nonblocking X-Osstest-Versions-This: linux=921bdc72a0d68977092d6a64855a1b8967acc1d9 X-Osstest-Versions-That: linux=6c538e1adbfc696ac4747fb10d63e704344f763d From: osstest service owner Date: Sat, 03 Jun 2023 04:25:23 +0000 flight 181115 linux-linus real [real] flight 181129 linux-linus real-retest [real] http://logs.test-lab.xenproject.org/osstest/logs/181115/ http://logs.test-lab.xenproject.org/osstest/logs/181129/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: test-armhf-armhf-xl-credit1 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-freebsd11-amd64 21 guest-start/freebsd.repeat fail REGR. vs. 180278 Tests which did not succeed, but are not blocking: test-armhf-armhf-examine 8 reboot fail like 180278 test-armhf-armhf-xl-multivcpu 8 xen-boot fail like 180278 test-armhf-armhf-xl-arndale 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 180278 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 180278 test-armhf-armhf-xl-credit2 8 xen-boot fail like 180278 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 180278 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 180278 test-armhf-armhf-libvirt 8 xen-boot fail like 180278 test-armhf-armhf-libvirt-raw 8 xen-boot fail like 180278 test-armhf-armhf-libvirt-qcow2 8 xen-boot fail like 180278 test-armhf-armhf-xl 8 xen-boot fail like 180278 test-armhf-armhf-xl-vhd 8 xen-boot fail like 180278 test-armhf-armhf-xl-rtds 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 180278 test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qcow2 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass test-amd64-amd64-libvirt-raw 14 migrate-support-check fail never pass version targeted for testing: linux 921bdc72a0d68977092d6a64855a1b8967acc1d9 baseline version: linux 6c538e1adbfc696ac4747fb10d63e704344f763d Last test of basis 180278 2023-04-16 19:41:46 Z 47 days Failing since 180281 2023-04-17 06:24:36 Z 46 days 88 attempts Testing same since 181115 2023-06-02 15:11:42 Z 0 days 1 attempts ------------------------------------------------------------ 2596 people touched revisions under test, not listing them all jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl fail test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-freebsd11-amd64 fail test-amd64-amd64-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale fail test-amd64-amd64-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 fail test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 fail test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine fail test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt fail test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu fail test-amd64-amd64-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-amd64-pygrub pass test-amd64-amd64-libvirt-qcow2 pass test-armhf-armhf-libvirt-qcow2 fail test-amd64-amd64-libvirt-raw pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw fail test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds fail test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-amd64-xl-vhd pass test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd fail ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 328637 lines long.) From xen-devel-bounces@lists.xenproject.org Sat Jun 03 05:10:24 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sat, 03 Jun 2023 05:10:24 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543289.848148 (Exim 4.92) (envelope-from ) id 1q5JWg-0005sL-1e; Sat, 03 Jun 2023 05:10:06 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543289.848148; Sat, 03 Jun 2023 05:10:06 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q5JWf-0005sE-UR; Sat, 03 Jun 2023 05:10:05 +0000 Received: by outflank-mailman (input) for mailman id 543289; Sat, 03 Jun 2023 05:10:04 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q5JWe-0005im-KG; Sat, 03 Jun 2023 05:10:04 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q5JWe-0000Gp-DM; Sat, 03 Jun 2023 05:10:04 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q5JWe-0003BF-2n; Sat, 03 Jun 2023 05:10:04 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q5JWe-0003r5-2J; Sat, 03 Jun 2023 05:10:04 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=K10inrCbnUE+RpZxxERPJgiUy0o2DHXFhw1vD73YMgs=; b=OS/tWKQ+axtbEYjGH4Xn9lxXUh ycl+WA4i1gTjWEawvyhl2p+bUIjc7BG1f68dVnjbn4e2tzEvL5iZ/XD+fYUHd1WtnY4qtmAq81VBm 9cKGmFdDIqS5L2pXN8IoYBPw2Ma8xPPFRplUjTugTxOFslvtCS6EmI6YIQ/vzQ1SOelc=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [ovmf test] 181127: all pass - PUSHED X-Osstest-Versions-This: ovmf=c1dd400a13d1a5e862809c55f6760ba3a944a609 X-Osstest-Versions-That: ovmf=8fbf857a0b42697c22ec03abda9a2101b2870812 From: osstest service owner Date: Sat, 03 Jun 2023 05:10:04 +0000 flight 181127 ovmf real [real] http://logs.test-lab.xenproject.org/osstest/logs/181127/ Perfect :-) All tests in this flight passed as required version targeted for testing: ovmf c1dd400a13d1a5e862809c55f6760ba3a944a609 baseline version: ovmf 8fbf857a0b42697c22ec03abda9a2101b2870812 Last test of basis 181117 2023-06-02 16:44:01 Z 0 days Testing same since 181127 2023-06-03 00:10:43 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Gerd Hoffmann Mikolaj Lisik Mikolaj Lisik via groups.io Tom Lendacky jobs: build-amd64-xsm pass build-i386-xsm pass build-amd64 pass build-i386 pass build-amd64-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-i386-pvops pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Pushing revision : To xenbits.xen.org:/home/xen/git/osstest/ovmf.git 8fbf857a0b..c1dd400a13 c1dd400a13d1a5e862809c55f6760ba3a944a609 -> xen-tested-master From xen-devel-bounces@lists.xenproject.org Sat Jun 03 08:18:46 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sat, 03 Jun 2023 08:18:46 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543304.848169 (Exim 4.92) (envelope-from ) id 1q5MT0-0007vo-2I; Sat, 03 Jun 2023 08:18:30 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543304.848169; Sat, 03 Jun 2023 08:18:30 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q5MSz-0007vh-Vw; Sat, 03 Jun 2023 08:18:29 +0000 Received: by outflank-mailman (input) for mailman id 543304; Sat, 03 Jun 2023 08:18:28 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q5MSy-0007vX-GP; Sat, 03 Jun 2023 08:18:28 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q5MSy-0004vR-Dx; Sat, 03 Jun 2023 08:18:28 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q5MSy-0005Di-3x; Sat, 03 Jun 2023 08:18:28 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q5MSy-0008Fm-3b; Sat, 03 Jun 2023 08:18:28 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=p0p7uZ8XH/xRe4dtcmyg3ZR3k2OHct0TUXLCPZHIrWI=; b=xtwim/fsaJoi4vgLsD602bSLNQ CPWRIlMop5M249bLY7xFOf3aiW0YcHFPbcsQlU/SpbGGzTQznAot55x44xxfLaHn/EHTIr1Io7oLU /3RM85xelxusi5BTHDnpQ1E0AgxIVMhH303ycYbSqna+fzuZSfWRBSbgCmiwLj1p+e34=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable test] 181126: tolerable FAIL - PUSHED X-Osstest-Failures: xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking X-Osstest-Versions-This: xen=67fdffef9246c82cecd8db28838ed09e79e2528a X-Osstest-Versions-That: xen=71226054f28ad98ab214b56a15899e8f62a7bca8 From: osstest service owner Date: Sat, 03 Jun 2023 08:18:28 +0000 flight 181126 xen-unstable real [real] http://logs.test-lab.xenproject.org/osstest/logs/181126/ Failures :-/ but no regressions. Tests which did not succeed, but are not blocking: test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 181109 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop fail like 181109 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 181109 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 181109 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop fail like 181109 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop fail like 181109 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail like 181109 test-armhf-armhf-libvirt 16 saverestore-support-check fail like 181109 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail like 181109 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 181109 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop fail like 181109 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 181109 test-amd64-i386-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-i386-xl-pvshim 14 guest-start fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-armhf-armhf-xl-multivcpu 15 migrate-support-check fail never pass test-armhf-armhf-xl-multivcpu 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-armhf-armhf-xl 15 migrate-support-check fail never pass test-armhf-armhf-xl 16 saverestore-support-check fail never pass test-amd64-i386-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass test-amd64-i386-libvirt 15 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 15 saverestore-support-check fail never pass test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail never pass test-armhf-armhf-xl-credit2 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit2 16 saverestore-support-check fail never pass test-armhf-armhf-xl-arndale 15 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt 15 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 15 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt-raw 14 migrate-support-check fail never pass version targeted for testing: xen 67fdffef9246c82cecd8db28838ed09e79e2528a baseline version: xen 71226054f28ad98ab214b56a15899e8f62a7bca8 Last test of basis 181109 2023-06-02 09:47:57 Z 0 days Testing same since 181126 2023-06-03 00:07:07 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Marek Marczykowski-Górecki Stefano Stabellini jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64-xtf pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-prev pass build-i386-prev pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-xtf-amd64-amd64-1 pass test-xtf-amd64-amd64-2 pass test-xtf-amd64-amd64-3 pass test-xtf-amd64-amd64-4 pass test-xtf-amd64-amd64-5 pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl pass test-amd64-i386-xl pass test-amd64-coresched-i386-xl pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-i386-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-i386-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-i386-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-i386-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-i386-qemut-rhel6hvm-amd pass test-amd64-i386-qemuu-rhel6hvm-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-i386-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-freebsd10-amd64 pass test-amd64-amd64-qemuu-freebsd11-amd64 pass test-amd64-amd64-qemuu-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-i386-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-i386-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-i386-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-amd64-i386-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale pass test-amd64-amd64-examine-bios pass test-amd64-i386-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 pass test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 pass test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine pass test-amd64-i386-examine pass test-amd64-i386-freebsd10-i386 pass test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-i386-qemut-rhel6hvm-intel pass test-amd64-i386-qemuu-rhel6hvm-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt pass test-amd64-i386-libvirt pass test-amd64-amd64-livepatch pass test-amd64-i386-livepatch pass test-amd64-amd64-migrupgrade pass test-amd64-i386-migrupgrade pass test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu pass test-amd64-amd64-pair pass test-amd64-i386-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-i386-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-i386-xl-pvshim fail test-amd64-amd64-pygrub pass test-armhf-armhf-libvirt-qcow2 pass test-amd64-amd64-xl-qcow2 pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw pass test-amd64-i386-libvirt-raw pass test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds pass test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-amd64-i386-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-i386-examine-uefi pass test-amd64-amd64-libvirt-vhd pass test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd pass test-amd64-i386-xl-vhd pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Pushing revision : To xenbits.xen.org:/home/xen/git/xen.git 71226054f2..67fdffef92 67fdffef9246c82cecd8db28838ed09e79e2528a -> master From xen-devel-bounces@lists.xenproject.org Sat Jun 03 10:09:24 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sat, 03 Jun 2023 10:09:24 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543313.848189 (Exim 4.92) (envelope-from ) id 1q5OC4-0002TM-0X; Sat, 03 Jun 2023 10:09:08 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543313.848189; Sat, 03 Jun 2023 10:09:07 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q5OC3-0002TF-Tm; Sat, 03 Jun 2023 10:09:07 +0000 Received: by outflank-mailman (input) for mailman id 543313; Sat, 03 Jun 2023 10:09:06 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q5OC2-0002T5-Fr; Sat, 03 Jun 2023 10:09:06 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q5OC2-0007U8-6r; Sat, 03 Jun 2023 10:09:06 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q5OC1-00022l-AQ; Sat, 03 Jun 2023 10:09:05 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q5OC1-0004kR-9r; Sat, 03 Jun 2023 10:09:05 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Message-Id:Subject:To; bh=evglYNrD/UfPGU020jaLSMz/gAm2jHvDLv1dyYc5Yzk=; b=W8m0CCOdyjZh/DmFoORHXymvt7 0bSBwg3/hsyq2XQTpPzi0zXPrzGxeJb9Sm1bkU+u8Dy6ZOqmXzVqp7dxaz33P9CWtFbh+w7vUnlz9 L+zUmxJRKcZ7HTIcV7sLsxXCgP6u8qlSfFiQhua2uCy6j6w07iDDpIaTjs6pUZE0Vd3s=; To: xen-devel@lists.xenproject.org Subject: [qemu-mainline bisection] complete test-amd64-amd64-libvirt-pair Message-Id: From: osstest service owner Date: Sat, 03 Jun 2023 10:09:05 +0000 branch xen-unstable xenbranch xen-unstable job test-amd64-amd64-libvirt-pair testid leak-check/check/src_host Tree: libvirt git://xenbits.xen.org/libvirt.git Tree: libvirt_keycodemapdb https://gitlab.com/keycodemap/keycodemapdb.git Tree: linux git://xenbits.xen.org/linux-pvops.git Tree: linuxfirmware git://xenbits.xen.org/osstest/linux-firmware.git Tree: ovmf git://xenbits.xen.org/osstest/ovmf.git Tree: qemu git://xenbits.xen.org/qemu-xen-traditional.git Tree: qemuu https://gitlab.com/qemu-project/qemu.git Tree: seabios git://xenbits.xen.org/osstest/seabios.git Tree: xen git://xenbits.xen.org/xen.git *** Found and reproduced problem changeset *** Bug is in tree: qemuu https://gitlab.com/qemu-project/qemu.git Bug introduced: f6eac904f6825d47adc6102c8d7b59b8ba5b778e Bug not present: ab61335025b1274bd7042219203524045b23e0d3 Last fail repro: http://logs.test-lab.xenproject.org/osstest/logs/181138/ commit f6eac904f6825d47adc6102c8d7b59b8ba5b778e Author: Stefan Hajnoczi Date: Tue May 16 15:02:29 2023 -0400 xen-block: implement BlockDevOps->drained_begin() Detach event channels during drained sections to stop I/O submission from the ring. xen-block is no longer reliant on aio_disable_external() after this patch. This will allow us to remove the aio_disable_external() API once all other code that relies on it is converted. Extend xen_device_set_event_channel_context() to allow ctx=NULL. The event channel still exists but the event loop does not monitor the file descriptor. Event channel processing can resume by calling xen_device_set_event_channel_context() with a non-NULL ctx. Factor out xen_device_set_event_channel_context() calls in hw/block/dataplane/xen-block.c into attach/detach helper functions. Incidentally, these don't require the AioContext lock because aio_set_fd_handler() is thread-safe. It's safer to register BlockDevOps after the dataplane instance has been created. The BlockDevOps .drained_begin/end() callbacks depend on the dataplane instance, so move the blk_set_dev_ops() call after xen_block_dataplane_create(). Signed-off-by: Stefan Hajnoczi Reviewed-by: Kevin Wolf Message-Id: <20230516190238.8401-12-stefanha@redhat.com> Signed-off-by: Kevin Wolf For bisection revision-tuple graph see: http://logs.test-lab.xenproject.org/osstest/results/bisect/qemu-mainline/test-amd64-amd64-libvirt-pair.leak-check--check--src_host.html Revision IDs in each graph node refer, respectively, to the Trees above. ---------------------------------------- Running cs-bisection-step --graph-out=/home/logs/results/bisect/qemu-mainline/test-amd64-amd64-libvirt-pair.leak-check--check--src_host --summary-out=tmp/181138.bisection-summary --basis-template=180691 --blessings=real,real-bisect,real-retry qemu-mainline test-amd64-amd64-libvirt-pair leak-check/check/src_host Searching for failure / basis pass: 181119 fail [dst_host=nobling0,src_host=nobling1] / 181013 [dst_host=debina1,src_host=debina0] 181006 [dst_host=nobling1,src_host=nobling0] 181003 [dst_host=rimava1,src_host=rimava0] 180996 [dst_host=italia0,src_host=italia1] 180990 [dst_host=huxelrebe1,src_host=huxelrebe0] 180987 [dst_host=fiano1,src_host=fiano0] 180983 [dst_host=godello1,src_host=godello0] 180981 [dst_host=italia1,src_host=italia0] 180977 [dst_host=albana0,src_host=albana1] 180691 [dst_host=godello0,src_host=godello1] 180686 \ [dst_host=albana1,src_host=albana0] 180673 [dst_host=nocera0,src_host=nocera1] 180659 [dst_host=huxelrebe0,src_host=huxelrebe1] 180643 [dst_host=pinot0,src_host=pinot1] 180637 [dst_host=godello1,src_host=godello0] 180626 [dst_host=rimava0,src_host=rimava1] 180621 ok. Failure / basis pass flights: 181119 / 180621 (tree with no url: minios) Tree: libvirt git://xenbits.xen.org/libvirt.git Tree: libvirt_keycodemapdb https://gitlab.com/keycodemap/keycodemapdb.git Tree: linux git://xenbits.xen.org/linux-pvops.git Tree: linuxfirmware git://xenbits.xen.org/osstest/linux-firmware.git Tree: ovmf git://xenbits.xen.org/osstest/ovmf.git Tree: qemu git://xenbits.xen.org/qemu-xen-traditional.git Tree: qemuu https://gitlab.com/qemu-project/qemu.git Tree: seabios git://xenbits.xen.org/osstest/seabios.git Tree: xen git://xenbits.xen.org/xen.git Latest 1c7335add9e28637d8a8b5039f487e5dc6a591c2 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 4354c22f38778a2bb4644d1f1f43a47e4313fe42 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 a86d7b9ec0adb2f1efce8ab30d9ed2b72db0236e be7e899350caa7b74d8271a34264c3b4aef25ab0 59d0bf62861f5c9b317ccf89f8b5c8b4d19927ad Basis pass 3d6bc5c61101aadd6fca5d558a44a1cba8120178 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 0a0e60caf20ab621ee9c1fc66b82b739158c05cf 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 278238505d28d292927bff7683f39fb4fbca7fd1 ea1b7a0733906b8425d948ae94fba63c32b1d425 31c65549746179e16cf3f82b694b4b1e0b7545ca Generating revisions with ./adhoc-revtuple-generator git://xenbits.xen.org/libvirt.git#3d6bc5c61101aadd6fca5d558a44a1cba8120178-1c7335add9e28637d8a8b5039f487e5dc6a591c2 https://gitlab.com/keycodemap/keycodemapdb.git#22b8996dba9041874845c7446ce89ec4ae2b713d-22b8996dba9041874845c7446ce89ec4ae2b713d git://xenbits.xen.org/linux-pvops.git#c3038e718a19fc596f7b1baba0f83d5146dc7784-c3038e718a19fc596f7b1baba0f83d5146dc7784 git://xenbits.xen.org/osstest/linux-firmware.git#c530a75c1e6a472b0eb9558310b518f0\ dfcd8860-c530a75c1e6a472b0eb9558310b518f0dfcd8860 git://xenbits.xen.org/osstest/ovmf.git#0a0e60caf20ab621ee9c1fc66b82b739158c05cf-4354c22f38778a2bb4644d1f1f43a47e4313fe42 git://xenbits.xen.org/qemu-xen-traditional.git#3d273dd05e51e5a1ffba3d98c7437ee84e8f8764-3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 https://gitlab.com/qemu-project/qemu.git#278238505d28d292927bff7683f39fb4fbca7fd1-a86d7b9ec0adb2f1efce8ab30d9ed2b72db0236e git://xenbits.xen.org/osstest/seabios.git#ea1b7a0733906b8425d948ae94fba63c32b\ 1d425-be7e899350caa7b74d8271a34264c3b4aef25ab0 git://xenbits.xen.org/xen.git#31c65549746179e16cf3f82b694b4b1e0b7545ca-59d0bf62861f5c9b317ccf89f8b5c8b4d19927ad Loaded 279834 nodes in revision graph Searching for test results: 180621 pass 3d6bc5c61101aadd6fca5d558a44a1cba8120178 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 0a0e60caf20ab621ee9c1fc66b82b739158c05cf 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 278238505d28d292927bff7683f39fb4fbca7fd1 ea1b7a0733906b8425d948ae94fba63c32b1d425 31c65549746179e16cf3f82b694b4b1e0b7545ca 180626 [dst_host=rimava0,src_host=rimava1] 180637 [dst_host=godello1,src_host=godello0] 180643 [dst_host=pinot0,src_host=pinot1] 180659 [dst_host=huxelrebe0,src_host=huxelrebe1] 180673 [dst_host=nocera0,src_host=nocera1] 180686 [dst_host=albana1,src_host=albana0] 180702 [] 180691 [dst_host=godello0,src_host=godello1] 180704 [] 180721 [] 180742 [] 180753 [] 180785 [] 180807 [] 180815 [] 180825 [] 180835 [] 180843 [] 180853 [] 180860 [] 180866 [] 180873 [] 180878 [] 180881 [] 180887 [] 180894 [] 180902 [] 180906 [] 180909 [] 180912 [] 180916 [] 180927 [] 180921 [] 180933 [] 180937 [] 180942 [] 180947 [] 180949 [] 180952 [] 180954 [] 180958 [] 180962 [] 180966 [] 180968 [] 180972 [] 180975 [] 180977 [dst_host=albana0,src_host=albana1] 180981 [dst_host=italia1,src_host=italia0] 180983 [dst_host=godello1,src_host=godello0] 180990 [dst_host=huxelrebe1,src_host=huxelrebe0] 180987 [dst_host=fiano1,src_host=fiano0] 181003 [dst_host=rimava1,src_host=rimava0] 180996 [dst_host=italia0,src_host=italia1] 181006 [dst_host=nobling1,src_host=nobling0] 181013 [dst_host=debina1,src_host=debina0] 181021 fail irrelevant 181042 pass 3d6bc5c61101aadd6fca5d558a44a1cba8120178 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 0a0e60caf20ab621ee9c1fc66b82b739158c05cf 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 278238505d28d292927bff7683f39fb4fbca7fd1 ea1b7a0733906b8425d948ae94fba63c32b1d425 31c65549746179e16cf3f82b694b4b1e0b7545ca 181051 fail irrelevant 181041 fail irrelevant 181055 pass irrelevant 181058 fail irrelevant 181060 pass e35b5df3f561ea5678a21aa1b39f14308fc6363c 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 1034d223f8cc6bf8b9b86c57e564753cdad46f88 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 5a4cb61ae1ab0068ab53535ed0ccaf41a5e97d2f be7e899350caa7b74d8271a34264c3b4aef25ab0 f54dd5b53ee516fa1d4c106e0744ce0083acfcdc 181062 pass e35b5df3f561ea5678a21aa1b39f14308fc6363c 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 1034d223f8cc6bf8b9b86c57e564753cdad46f88 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 56b8bfe9bb6b94184b8bbfc4be9196404a81e450 be7e899350caa7b74d8271a34264c3b4aef25ab0 f54dd5b53ee516fa1d4c106e0744ce0083acfcdc 181064 pass 997994b6b1e3b0bfd8597ab67e6eeb676d3d95c6 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 ba91d0292e593df8528b66f99c1b0b14fadc8e16 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 9cb47a10564e35df421f9639b0d2cf9e7449544d be7e899350caa7b74d8271a34264c3b4aef25ab0 f54dd5b53ee516fa1d4c106e0744ce0083acfcdc 181057 fail irrelevant 181065 pass a1bdffdd9638601b17a6d115eb148422b66bcea0 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 ba91d0292e593df8528b66f99c1b0b14fadc8e16 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 7d196e2196d50e0dda0f87f396d4f4a7ad9aafbe be7e899350caa7b74d8271a34264c3b4aef25ab0 f54dd5b53ee516fa1d4c106e0744ce0083acfcdc 181067 pass 3d6bc5c61101aadd6fca5d558a44a1cba8120178 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 0a0e60caf20ab621ee9c1fc66b82b739158c05cf 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 278238505d28d292927bff7683f39fb4fbca7fd1 ea1b7a0733906b8425d948ae94fba63c32b1d425 31c65549746179e16cf3f82b694b4b1e0b7545ca 181069 fail irrelevant 181070 pass irrelevant 181073 pass a1bdffdd9638601b17a6d115eb148422b66bcea0 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 ba91d0292e593df8528b66f99c1b0b14fadc8e16 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 b17bbf835c8998e93fd99b06164f1d63843fe8c9 be7e899350caa7b74d8271a34264c3b4aef25ab0 f54dd5b53ee516fa1d4c106e0744ce0083acfcdc 181075 pass a8c983d0fa1ba915f7a75deeceb20da1c88fd1db 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 ba91d0292e593df8528b66f99c1b0b14fadc8e16 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 b300c134465465385045ab705b68a42699688332 be7e899350caa7b74d8271a34264c3b4aef25ab0 354be8936d97d4f2cb8cc004bb0296826d89bd8d 181080 pass 3b6d69237f0a07bf8d9807cd68a387f8d42b076f 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 c5cf7f69c98baed40754ca4a821cb504fd5423cd 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 ad3387396a71416cacc0b394e5e440dd6e9ba19a be7e899350caa7b74d8271a34264c3b4aef25ab0 c7908869ac26961a3919491705e521179ad3fc0e 181083 pass 3b6d69237f0a07bf8d9807cd68a387f8d42b076f 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 c5cf7f69c98baed40754ca4a821cb504fd5423cd 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 37246d54d656933035094ed95f2d8e4708058856 be7e899350caa7b74d8271a34264c3b4aef25ab0 c7908869ac26961a3919491705e521179ad3fc0e 181085 pass 90404c53682f464b4a26efd618887dc336d9da80 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 0abfb0be6cf78a8e962383e85cec57851ddae5bc 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 297e8182194e634baa0cbbfd96d2e09e2a0bcd40 be7e899350caa7b74d8271a34264c3b4aef25ab0 753d903a6f2d1e68d98487d36449b5739c28d65a 181086 pass 5ee27c37e6d0d081714d1e1d25a0a4e472665120 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 0abfb0be6cf78a8e962383e85cec57851ddae5bc 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 91608e2a44f36e79cb83f863b8a7bb57d2c98061 be7e899350caa7b74d8271a34264c3b4aef25ab0 753d903a6f2d1e68d98487d36449b5739c28d65a 181068 fail irrelevant 181088 pass b10bc8f7ab6f9986ccc54ba04fc5b3bad7576be6 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 cafb4f3f36e2101cab2ed6db3ea246a5a3e4708e 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 7d478306e84259678b2941e8af7496ef32a9c4c5 be7e899350caa7b74d8271a34264c3b4aef25ab0 42abf5b9c53eb1b1a902002fcda68708234152c3 181090 pass 3d6bc5c61101aadd6fca5d558a44a1cba8120178 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 0a0e60caf20ab621ee9c1fc66b82b739158c05cf 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 278238505d28d292927bff7683f39fb4fbca7fd1 ea1b7a0733906b8425d948ae94fba63c32b1d425 31c65549746179e16cf3f82b694b4b1e0b7545ca 181092 fail irrelevant 181094 fail irrelevant 181096 pass 9222f35dc6917f00d166be3bb69ac4e5ff8536f0 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 0f9283429dd487deeeb264ee5670551d596fc208 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 7fe6cb68117ac856e03c93d18aca09de015392b0 be7e899350caa7b74d8271a34264c3b4aef25ab0 05422d276b56f2ebc2309a84a66fc5722c45ad74 181097 pass b10bc8f7ab6f9986ccc54ba04fc5b3bad7576be6 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 cafb4f3f36e2101cab2ed6db3ea246a5a3e4708e 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 3d8ff94e59770ec7f5effe509c94246b2cbe9ce0 be7e899350caa7b74d8271a34264c3b4aef25ab0 c8e4bbb5b8ee22fd1591ba6a5a3cef4466dda323 181099 pass 90404c53682f464b4a26efd618887dc336d9da80 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 0abfb0be6cf78a8e962383e85cec57851ddae5bc 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 146f515110e86aefe3bc2e8eb581ab724614060f be7e899350caa7b74d8271a34264c3b4aef25ab0 753d903a6f2d1e68d98487d36449b5739c28d65a 181089 fail irrelevant 181101 pass 96c8d39af007000daf3d5dfa845365f66379aaac 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 ba91d0292e593df8528b66f99c1b0b14fadc8e16 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 886c0453cbf10eebd42a9ccf89c3e46eb389c357 be7e899350caa7b74d8271a34264c3b4aef25ab0 ef1987fcb0fdfaa7ee148024037cb5fa335a7b2d 181104 fail irrelevant 181105 fail irrelevant 181108 pass e35b5df3f561ea5678a21aa1b39f14308fc6363c 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 04c5b3023e49c35d291f41d2c39b4d12a62b8f9c 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 ac84b57b4d74606f7f83667a0606deef32b2049d be7e899350caa7b74d8271a34264c3b4aef25ab0 f54dd5b53ee516fa1d4c106e0744ce0083acfcdc 181110 fail 9222f35dc6917f00d166be3bb69ac4e5ff8536f0 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 0f9283429dd487deeeb264ee5670551d596fc208 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 17b69c0fc1462be70419e622b63755a4390bfe31 be7e899350caa7b74d8271a34264c3b4aef25ab0 05422d276b56f2ebc2309a84a66fc5722c45ad74 181112 pass 9222f35dc6917f00d166be3bb69ac4e5ff8536f0 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 0f9283429dd487deeeb264ee5670551d596fc208 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 aa9bbd865502ed517624ab6fe7d4b5d89ca95e43 be7e899350caa7b74d8271a34264c3b4aef25ab0 352c917acfe1dd6afc2eee44aa4ab7c50d4bc48a 181114 pass 9222f35dc6917f00d166be3bb69ac4e5ff8536f0 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 0f9283429dd487deeeb264ee5670551d596fc208 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 2d1962958177cb80a491e4767c41bf6d82dbbc83 be7e899350caa7b74d8271a34264c3b4aef25ab0 05422d276b56f2ebc2309a84a66fc5722c45ad74 181103 fail irrelevant 181116 pass 9222f35dc6917f00d166be3bb69ac4e5ff8536f0 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 0f9283429dd487deeeb264ee5670551d596fc208 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 9998f70f6625f15f2ae36f612509ea34733c11d3 be7e899350caa7b74d8271a34264c3b4aef25ab0 05422d276b56f2ebc2309a84a66fc5722c45ad74 181118 pass 3d6bc5c61101aadd6fca5d558a44a1cba8120178 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 0a0e60caf20ab621ee9c1fc66b82b739158c05cf 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 278238505d28d292927bff7683f39fb4fbca7fd1 ea1b7a0733906b8425d948ae94fba63c32b1d425 31c65549746179e16cf3f82b694b4b1e0b7545ca 181120 fail irrelevant 181121 fail 9222f35dc6917f00d166be3bb69ac4e5ff8536f0 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 0f9283429dd487deeeb264ee5670551d596fc208 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 f6eac904f6825d47adc6102c8d7b59b8ba5b778e be7e899350caa7b74d8271a34264c3b4aef25ab0 05422d276b56f2ebc2309a84a66fc5722c45ad74 181123 pass 9222f35dc6917f00d166be3bb69ac4e5ff8536f0 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 0f9283429dd487deeeb264ee5670551d596fc208 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 ff82b7835b2fbbd0a17d616f6929601a97a6497d be7e899350caa7b74d8271a34264c3b4aef25ab0 05422d276b56f2ebc2309a84a66fc5722c45ad74 181124 pass 9222f35dc6917f00d166be3bb69ac4e5ff8536f0 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 0f9283429dd487deeeb264ee5670551d596fc208 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 ab61335025b1274bd7042219203524045b23e0d3 be7e899350caa7b74d8271a34264c3b4aef25ab0 05422d276b56f2ebc2309a84a66fc5722c45ad74 181125 fail 9222f35dc6917f00d166be3bb69ac4e5ff8536f0 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 0f9283429dd487deeeb264ee5670551d596fc208 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 f6eac904f6825d47adc6102c8d7b59b8ba5b778e be7e899350caa7b74d8271a34264c3b4aef25ab0 05422d276b56f2ebc2309a84a66fc5722c45ad74 181128 pass 9222f35dc6917f00d166be3bb69ac4e5ff8536f0 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 0f9283429dd487deeeb264ee5670551d596fc208 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 ab61335025b1274bd7042219203524045b23e0d3 be7e899350caa7b74d8271a34264c3b4aef25ab0 05422d276b56f2ebc2309a84a66fc5722c45ad74 181119 fail 1c7335add9e28637d8a8b5039f487e5dc6a591c2 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 4354c22f38778a2bb4644d1f1f43a47e4313fe42 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 a86d7b9ec0adb2f1efce8ab30d9ed2b72db0236e be7e899350caa7b74d8271a34264c3b4aef25ab0 59d0bf62861f5c9b317ccf89f8b5c8b4d19927ad 181130 fail 9222f35dc6917f00d166be3bb69ac4e5ff8536f0 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 0f9283429dd487deeeb264ee5670551d596fc208 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 f6eac904f6825d47adc6102c8d7b59b8ba5b778e be7e899350caa7b74d8271a34264c3b4aef25ab0 05422d276b56f2ebc2309a84a66fc5722c45ad74 181132 pass 3d6bc5c61101aadd6fca5d558a44a1cba8120178 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 0a0e60caf20ab621ee9c1fc66b82b739158c05cf 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 278238505d28d292927bff7683f39fb4fbca7fd1 ea1b7a0733906b8425d948ae94fba63c32b1d425 31c65549746179e16cf3f82b694b4b1e0b7545ca 181135 fail 1c7335add9e28637d8a8b5039f487e5dc6a591c2 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 4354c22f38778a2bb4644d1f1f43a47e4313fe42 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 a86d7b9ec0adb2f1efce8ab30d9ed2b72db0236e be7e899350caa7b74d8271a34264c3b4aef25ab0 59d0bf62861f5c9b317ccf89f8b5c8b4d19927ad 181136 pass 9222f35dc6917f00d166be3bb69ac4e5ff8536f0 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 0f9283429dd487deeeb264ee5670551d596fc208 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 ab61335025b1274bd7042219203524045b23e0d3 be7e899350caa7b74d8271a34264c3b4aef25ab0 05422d276b56f2ebc2309a84a66fc5722c45ad74 181138 fail 9222f35dc6917f00d166be3bb69ac4e5ff8536f0 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 0f9283429dd487deeeb264ee5670551d596fc208 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 f6eac904f6825d47adc6102c8d7b59b8ba5b778e be7e899350caa7b74d8271a34264c3b4aef25ab0 05422d276b56f2ebc2309a84a66fc5722c45ad74 Searching for interesting versions Result found: flight 180621 (pass), for basis pass Result found: flight 181119 (fail), for basis failure (at ancestor ~4) Repro found: flight 181132 (pass), for basis pass Repro found: flight 181135 (fail), for basis failure 0 revisions at 9222f35dc6917f00d166be3bb69ac4e5ff8536f0 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 0f9283429dd487deeeb264ee5670551d596fc208 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 ab61335025b1274bd7042219203524045b23e0d3 be7e899350caa7b74d8271a34264c3b4aef25ab0 05422d276b56f2ebc2309a84a66fc5722c45ad74 No revisions left to test, checking graph state. Result found: flight 181124 (pass), for last pass Result found: flight 181125 (fail), for first failure Repro found: flight 181128 (pass), for last pass Repro found: flight 181130 (fail), for first failure Repro found: flight 181136 (pass), for last pass Repro found: flight 181138 (fail), for first failure *** Found and reproduced problem changeset *** Bug is in tree: qemuu https://gitlab.com/qemu-project/qemu.git Bug introduced: f6eac904f6825d47adc6102c8d7b59b8ba5b778e Bug not present: ab61335025b1274bd7042219203524045b23e0d3 Last fail repro: http://logs.test-lab.xenproject.org/osstest/logs/181138/ commit f6eac904f6825d47adc6102c8d7b59b8ba5b778e Author: Stefan Hajnoczi Date: Tue May 16 15:02:29 2023 -0400 xen-block: implement BlockDevOps->drained_begin() Detach event channels during drained sections to stop I/O submission from the ring. xen-block is no longer reliant on aio_disable_external() after this patch. This will allow us to remove the aio_disable_external() API once all other code that relies on it is converted. Extend xen_device_set_event_channel_context() to allow ctx=NULL. The event channel still exists but the event loop does not monitor the file descriptor. Event channel processing can resume by calling xen_device_set_event_channel_context() with a non-NULL ctx. Factor out xen_device_set_event_channel_context() calls in hw/block/dataplane/xen-block.c into attach/detach helper functions. Incidentally, these don't require the AioContext lock because aio_set_fd_handler() is thread-safe. It's safer to register BlockDevOps after the dataplane instance has been created. The BlockDevOps .drained_begin/end() callbacks depend on the dataplane instance, so move the blk_set_dev_ops() call after xen_block_dataplane_create(). Signed-off-by: Stefan Hajnoczi Reviewed-by: Kevin Wolf Message-Id: <20230516190238.8401-12-stefanha@redhat.com> Signed-off-by: Kevin Wolf neato: graph is too large for cairo-renderer bitmaps. Scaling by 0.711043 to fit pnmtopng: 202 colors found Revision graph left in /home/logs/results/bisect/qemu-mainline/test-amd64-amd64-libvirt-pair.leak-check--check--src_host.{dot,ps,png,html,svg}. ---------------------------------------- 181138: tolerable FAIL flight 181138 qemu-mainline real-bisect [real] http://logs.test-lab.xenproject.org/osstest/logs/181138/ Failures :-/ but no regressions. Tests which did not succeed, including tests which could not be run: test-amd64-amd64-libvirt-pair 30 leak-check/check/src_host fail baseline untested test-amd64-amd64-libvirt-pair 31 leak-check/check/dst_host fail baseline untested jobs: build-amd64-libvirt pass test-amd64-amd64-libvirt-pair fail ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary From xen-devel-bounces@lists.xenproject.org Sat Jun 03 11:42:34 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sat, 03 Jun 2023 11:42:34 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543321.848203 (Exim 4.92) (envelope-from ) id 1q5PeC-00040D-O0; Sat, 03 Jun 2023 11:42:16 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543321.848203; Sat, 03 Jun 2023 11:42:16 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q5PeC-000406-KF; Sat, 03 Jun 2023 11:42:16 +0000 Received: by outflank-mailman (input) for mailman id 543321; Sat, 03 Jun 2023 11:42:15 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q5PeB-0003zw-BW; Sat, 03 Jun 2023 11:42:15 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q5PeA-00014Z-QO; Sat, 03 Jun 2023 11:42:14 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q5PeA-0007V6-Do; Sat, 03 Jun 2023 11:42:14 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q5PeA-0006HM-DI; Sat, 03 Jun 2023 11:42:14 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=WM2/XRer9Dzcvjjbz6ac4IVfvciD/pbtUqcjuEQ8PnU=; b=E4PAPB66eVm3/IelI3YM47Fy1i Qsrbpw9akX+FpcfDwRjIaaQBZ9V6n+Dej722mkYAxU+XqJlUKDQf5Ux5dYOUsL25zIFMC1qYGvIzk JtWUZPJf9tPkApstjQm+RpKNHL4y/VmE/Wq60VCchSHttF191s1f/ezRHYweNpm+ehy0=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [qemu-mainline test] 181131: regressions - FAIL X-Osstest-Failures: qemu-mainline:test-amd64-amd64-libvirt-pair:leak-check/check/src_host:fail:regression qemu-mainline:test-amd64-amd64-libvirt-pair:leak-check/check/dst_host:fail:regression qemu-mainline:test-amd64-i386-libvirt:leak-check/check:fail:regression qemu-mainline:test-amd64-amd64-libvirt-xsm:leak-check/check:fail:regression qemu-mainline:build-arm64-xsm:xen-build:fail:regression qemu-mainline:build-arm64:xen-build:fail:regression qemu-mainline:test-amd64-amd64-libvirt:leak-check/check:fail:regression qemu-mainline:test-amd64-i386-libvirt-xsm:leak-check/check:fail:regression qemu-mainline:test-amd64-i386-libvirt-pair:leak-check/check/src_host:fail:regression qemu-mainline:test-amd64-i386-libvirt-pair:leak-check/check/dst_host:fail:regression qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:leak-check/check:fail:regression qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:leak-check/check:fail:regression qemu-mainline:test-amd64-amd64-libvirt-vhd:guest-start/debian.repeat:fail:regression qemu-mainline:test-amd64-i386-xl-vhd:leak-check/check:fail:regression qemu-mainline:test-amd64-i386-libvirt-raw:leak-check/check:fail:regression qemu-mainline:test-amd64-amd64-xl-qcow2:leak-check/check:fail:regression qemu-mainline:test-armhf-armhf-libvirt:leak-check/check:fail:regression qemu-mainline:test-armhf-armhf-libvirt-qcow2:leak-check/check:fail:regression qemu-mainline:test-armhf-armhf-libvirt-raw:leak-check/check:fail:regression qemu-mainline:test-armhf-armhf-xl-vhd:leak-check/check:fail:regression qemu-mainline:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:build-arm64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking qemu-mainline:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking qemu-mainline:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking qemu-mainline:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking qemu-mainline:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking qemu-mainline:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking qemu-mainline:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking qemu-mainline:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking qemu-mainline:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking qemu-mainline:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: qemuu=848a6caa88b9f082c89c9b41afa975761262981d X-Osstest-Versions-That: qemuu=6972ef1440a9d685482d78672620a7482f2bd09a From: osstest service owner Date: Sat, 03 Jun 2023 11:42:14 +0000 flight 181131 qemu-mainline real [real] http://logs.test-lab.xenproject.org/osstest/logs/181131/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: test-amd64-amd64-libvirt-pair 30 leak-check/check/src_host fail REGR. vs. 180691 test-amd64-amd64-libvirt-pair 31 leak-check/check/dst_host fail REGR. vs. 180691 test-amd64-i386-libvirt 23 leak-check/check fail REGR. vs. 180691 test-amd64-amd64-libvirt-xsm 23 leak-check/check fail REGR. vs. 180691 build-arm64-xsm 6 xen-build fail REGR. vs. 180691 build-arm64 6 xen-build fail REGR. vs. 180691 test-amd64-amd64-libvirt 23 leak-check/check fail REGR. vs. 180691 test-amd64-i386-libvirt-xsm 23 leak-check/check fail REGR. vs. 180691 test-amd64-i386-libvirt-pair 30 leak-check/check/src_host fail REGR. vs. 180691 test-amd64-i386-libvirt-pair 31 leak-check/check/dst_host fail REGR. vs. 180691 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 21 leak-check/check fail REGR. vs. 180691 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 21 leak-check/check fail REGR. vs. 180691 test-amd64-amd64-libvirt-vhd 19 guest-start/debian.repeat fail REGR. vs. 180691 test-amd64-i386-xl-vhd 24 leak-check/check fail REGR. vs. 180691 test-amd64-i386-libvirt-raw 22 leak-check/check fail REGR. vs. 180691 test-amd64-amd64-xl-qcow2 24 leak-check/check fail REGR. vs. 180691 test-armhf-armhf-libvirt 21 leak-check/check fail REGR. vs. 180691 test-armhf-armhf-libvirt-qcow2 20 leak-check/check fail REGR. vs. 180691 test-armhf-armhf-libvirt-raw 20 leak-check/check fail REGR. vs. 180691 test-armhf-armhf-xl-vhd 20 leak-check/check fail REGR. vs. 180691 Tests which did not succeed, but are not blocking: test-arm64-arm64-libvirt-raw 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-xsm 1 build-check(1) blocked n/a test-arm64-arm64-xl 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit1 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit2 1 build-check(1) blocked n/a test-arm64-arm64-xl-thunderx 1 build-check(1) blocked n/a test-arm64-arm64-xl-vhd 1 build-check(1) blocked n/a test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a build-arm64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 180691 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 180691 test-armhf-armhf-libvirt 16 saverestore-support-check fail like 180691 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail like 180691 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop fail like 180691 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail like 180691 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 180691 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop fail like 180691 test-amd64-i386-xl-pvshim 14 guest-start fail never pass test-amd64-i386-libvirt 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-i386-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-credit2 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit2 16 saverestore-support-check fail never pass test-amd64-i386-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-libvirt 15 migrate-support-check fail never pass test-armhf-armhf-xl 15 migrate-support-check fail never pass test-armhf-armhf-xl 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 15 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 16 saverestore-support-check fail never pass test-armhf-armhf-xl-multivcpu 15 migrate-support-check fail never pass test-armhf-armhf-xl-multivcpu 16 saverestore-support-check fail never pass test-armhf-armhf-xl-arndale 15 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 15 saverestore-support-check fail never pass version targeted for testing: qemuu 848a6caa88b9f082c89c9b41afa975761262981d baseline version: qemuu 6972ef1440a9d685482d78672620a7482f2bd09a Last test of basis 180691 2023-05-17 10:45:22 Z 17 days Failing since 180699 2023-05-18 07:21:24 Z 16 days 57 attempts Testing same since 181131 2023-06-03 03:50:56 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Afonso Bordado Akihiko Odaki Akihiro Suda Alex Bennée Alex Williamson Alexander Bulekov Alexander Graf Alistair Francis Ani Sinha Ani Sinha Anton Johansson BALATON Zoltan Bernhard Beschow Bin Meng Brian Cain Brice Goglin Camilla Conte Cindy Lu Clément Chigot Cornelia Huck Cédric Le Goater Cédric Le Goater Daniel Henrique Barboza Daniel P. Berrangé Daniil Kovalev David Hildenbrand Emanuele Giuseppe Esposito Enze Li Eric Auger Eric Blake Eric DeVolder Erico Nunes Eugenio Pérez Fabiano Rosas Fan Ni Fiona Ebner Francisco Iglesias Gavin Shan Gregory Price Gregory Price Hao Zeng Hawkins Jiawei Igor Mammedov Ira Weiny Jason Wang Jean-Philippe Brucker John Snow Jonathan Cameron Juan Quintela Kevin Wolf Laurent Vivier Lei Yang Leonardo Bras Maksim Davydov Marc-André Lureau Marcin Juszkiewicz Marco Liebel Mark Cave-Ayland Markus Armbruster Matheus Tavares Bernardino Mauro Matteo Cascella Michael S. Tsirkin Michael Tokarev Mostafa Saleh Nicholas Piggin Nicolas Saenz Julienne Palmer Dabbelt Paolo Bonzini Peter Maydell Peter Xu Philippe Mathieu-Daudé Raghu H Rene Engel Richard Henderson Richard Purdie Ricky Zhou Ryan Wendland Sebastian Ott Sergio Lopez Sid Manning Song Gao Stefan Hajnoczi Stefano Garzarella Steve Sistare Taylor Simpson Thomas Huth Thomas Weißschuh timothee.cocault@gmail.com Timothée Cocault Tommy Wu Viktor Prutyanov Vitaly Cheptsov Vivek Kasireddy Vladimir Sementsov-Ogievskiy Volker Rümelin Xinyu Li Zeng Hao Zhenyu Zhang Zhenzhong Duan jobs: build-amd64-xsm pass build-arm64-xsm fail build-i386-xsm pass build-amd64 pass build-arm64 fail build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt blocked build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl blocked test-armhf-armhf-xl pass test-amd64-i386-xl pass test-amd64-coresched-i386-xl pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm fail test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm fail test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-i386-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm fail test-arm64-arm64-libvirt-xsm blocked test-amd64-i386-libvirt-xsm fail test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm blocked test-amd64-i386-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-i386-qemuu-rhel6hvm-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-freebsd10-amd64 pass test-amd64-amd64-qemuu-freebsd11-amd64 pass test-amd64-amd64-qemuu-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-i386-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-amd64-i386-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 blocked test-armhf-armhf-xl-credit1 pass test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 blocked test-armhf-armhf-xl-credit2 pass test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-i386-freebsd10-i386 pass test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-i386-qemuu-rhel6hvm-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt fail test-armhf-armhf-libvirt fail test-amd64-i386-libvirt fail test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu pass test-amd64-amd64-pair pass test-amd64-i386-pair pass test-amd64-amd64-libvirt-pair fail test-amd64-i386-libvirt-pair fail test-amd64-amd64-xl-pvshim pass test-amd64-i386-xl-pvshim fail test-amd64-amd64-pygrub pass test-armhf-armhf-libvirt-qcow2 fail test-amd64-amd64-xl-qcow2 fail test-arm64-arm64-libvirt-raw blocked test-armhf-armhf-libvirt-raw fail test-amd64-i386-libvirt-raw fail test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds pass test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-amd64-i386-xl-shadow pass test-arm64-arm64-xl-thunderx blocked test-amd64-amd64-libvirt-vhd fail test-arm64-arm64-xl-vhd blocked test-armhf-armhf-xl-vhd fail test-amd64-i386-xl-vhd fail ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 12540 lines long.) From xen-devel-bounces@lists.xenproject.org Sat Jun 03 12:11:23 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sat, 03 Jun 2023 12:11:23 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543328.848213 (Exim 4.92) (envelope-from ) id 1q5Q6G-0007Rz-8c; Sat, 03 Jun 2023 12:11:16 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543328.848213; Sat, 03 Jun 2023 12:11:16 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q5Q6G-0007Rs-3Q; Sat, 03 Jun 2023 12:11:16 +0000 Received: by outflank-mailman (input) for mailman id 543328; Sat, 03 Jun 2023 12:11:15 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q5Q6F-0007Ri-1t; Sat, 03 Jun 2023 12:11:15 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q5Q6E-0001ju-UB; Sat, 03 Jun 2023 12:11:14 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q5Q6E-0000X9-KJ; Sat, 03 Jun 2023 12:11:14 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q5Q6E-00034O-Jq; Sat, 03 Jun 2023 12:11:14 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=OjGWbJj+Y4lCEk0gwWRueqlQdszphqYnd+xcVOM/9B4=; b=p2XGtRjOlborVdnaLFT0QAAgcN /IYzJj5aSiTEg9HBIXhl/9zljG7C9Wm5hD18RtRwRW1k8Kw2NWy2EF0H+xqgBrrhcsf7hKG7IlUrP n/UFMUF+z0WYUW7PwyqL1g7MR0Wec8WH1+otYIsW5M56nhfOwLHAhy8NpscASObRT9Do=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [libvirt test] 181133: tolerable all pass - PUSHED X-Osstest-Failures: libvirt:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking libvirt:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking libvirt:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking libvirt:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking libvirt:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking libvirt:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking libvirt:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt:saverestore-support-check:fail:nonblocking libvirt:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking libvirt:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking libvirt:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking libvirt:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-qcow2:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-qcow2:saverestore-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking libvirt:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking libvirt:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking libvirt:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking X-Osstest-Versions-This: libvirt=f26923fb2e49d544ef937cd34e6b0807fed9eb96 X-Osstest-Versions-That: libvirt=1c7335add9e28637d8a8b5039f487e5dc6a591c2 From: osstest service owner Date: Sat, 03 Jun 2023 12:11:14 +0000 flight 181133 libvirt real [real] http://logs.test-lab.xenproject.org/osstest/logs/181133/ Failures :-/ but no regressions. Tests which did not succeed, but are not blocking: test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail like 181102 test-armhf-armhf-libvirt 16 saverestore-support-check fail like 181102 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail like 181102 test-amd64-i386-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-i386-libvirt 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt 15 migrate-support-check fail never pass test-arm64-arm64-libvirt 16 saverestore-support-check fail never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-i386-libvirt-raw 14 migrate-support-check fail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-qcow2 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-qcow2 15 saverestore-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail never pass test-armhf-armhf-libvirt 15 migrate-support-check fail never pass test-armhf-armhf-libvirt-raw 14 migrate-support-check fail never pass version targeted for testing: libvirt f26923fb2e49d544ef937cd34e6b0807fed9eb96 baseline version: libvirt 1c7335add9e28637d8a8b5039f487e5dc6a591c2 Last test of basis 181102 2023-06-02 04:20:20 Z 1 days Testing same since 181133 2023-06-03 04:21:04 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Peter Krempa jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-i386-libvirt-xsm pass test-amd64-amd64-libvirt pass test-arm64-arm64-libvirt pass test-armhf-armhf-libvirt pass test-amd64-i386-libvirt pass test-amd64-amd64-libvirt-pair pass test-amd64-i386-libvirt-pair pass test-arm64-arm64-libvirt-qcow2 pass test-armhf-armhf-libvirt-qcow2 pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw pass test-amd64-i386-libvirt-raw pass test-amd64-amd64-libvirt-vhd pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Pushing revision : To xenbits.xen.org:/home/xen/git/libvirt.git 1c7335add9..f26923fb2e f26923fb2e49d544ef937cd34e6b0807fed9eb96 -> xen-tested-master From xen-devel-bounces@lists.xenproject.org Sat Jun 03 14:12:12 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sat, 03 Jun 2023 14:12:12 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543336.848228 (Exim 4.92) (envelope-from ) id 1q5Rz4-0002gA-S5; Sat, 03 Jun 2023 14:11:58 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543336.848228; Sat, 03 Jun 2023 14:11:58 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q5Rz4-0002g3-PV; Sat, 03 Jun 2023 14:11:58 +0000 Received: by outflank-mailman (input) for mailman id 543336; Sat, 03 Jun 2023 14:11:57 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q5Rz3-0002ft-CK; Sat, 03 Jun 2023 14:11:57 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q5Rz3-0004X2-5S; Sat, 03 Jun 2023 14:11:57 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q5Rz2-0006EF-QI; Sat, 03 Jun 2023 14:11:56 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q5Rz2-0002Kw-Pr; Sat, 03 Jun 2023 14:11:56 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Message-Id:Subject:To; bh=TIovyqCIYaUE9kgck5XTiAHUtKvN2fGL4ZxSrp2qUSs=; b=trp1n7LrPNbd/1ZGVcuJKeM/x4 zuzfZcN1dR4ZZMbrwf9lqbC5xZ3JVDwT3IAd2wS9OJPxL7y/WKUj731u/p68luDhjPngdm9IOqhwM AsbR63o8zoQGy3Q3EQqRlgnnZKigbpGUhVTg6v04uXb0B8hWfUvLWvOABU+1yIbycJPQ=; To: xen-devel@lists.xenproject.org Subject: [qemu-mainline bisection] complete test-amd64-amd64-libvirt-pair Message-Id: From: osstest service owner Date: Sat, 03 Jun 2023 14:11:56 +0000 branch xen-unstable xenbranch xen-unstable job test-amd64-amd64-libvirt-pair testid leak-check/check/dst_host Tree: libvirt git://xenbits.xen.org/libvirt.git Tree: libvirt_keycodemapdb https://gitlab.com/keycodemap/keycodemapdb.git Tree: linux git://xenbits.xen.org/linux-pvops.git Tree: linuxfirmware git://xenbits.xen.org/osstest/linux-firmware.git Tree: ovmf git://xenbits.xen.org/osstest/ovmf.git Tree: qemu git://xenbits.xen.org/qemu-xen-traditional.git Tree: qemuu https://gitlab.com/qemu-project/qemu.git Tree: seabios git://xenbits.xen.org/osstest/seabios.git Tree: xen git://xenbits.xen.org/xen.git *** Found and reproduced problem changeset *** Bug is in tree: qemuu https://gitlab.com/qemu-project/qemu.git Bug introduced: f6eac904f6825d47adc6102c8d7b59b8ba5b778e Bug not present: ab61335025b1274bd7042219203524045b23e0d3 Last fail repro: http://logs.test-lab.xenproject.org/osstest/logs/181138/ commit f6eac904f6825d47adc6102c8d7b59b8ba5b778e Author: Stefan Hajnoczi Date: Tue May 16 15:02:29 2023 -0400 xen-block: implement BlockDevOps->drained_begin() Detach event channels during drained sections to stop I/O submission from the ring. xen-block is no longer reliant on aio_disable_external() after this patch. This will allow us to remove the aio_disable_external() API once all other code that relies on it is converted. Extend xen_device_set_event_channel_context() to allow ctx=NULL. The event channel still exists but the event loop does not monitor the file descriptor. Event channel processing can resume by calling xen_device_set_event_channel_context() with a non-NULL ctx. Factor out xen_device_set_event_channel_context() calls in hw/block/dataplane/xen-block.c into attach/detach helper functions. Incidentally, these don't require the AioContext lock because aio_set_fd_handler() is thread-safe. It's safer to register BlockDevOps after the dataplane instance has been created. The BlockDevOps .drained_begin/end() callbacks depend on the dataplane instance, so move the blk_set_dev_ops() call after xen_block_dataplane_create(). Signed-off-by: Stefan Hajnoczi Reviewed-by: Kevin Wolf Message-Id: <20230516190238.8401-12-stefanha@redhat.com> Signed-off-by: Kevin Wolf For bisection revision-tuple graph see: http://logs.test-lab.xenproject.org/osstest/results/bisect/qemu-mainline/test-amd64-amd64-libvirt-pair.leak-check--check--dst_host.html Revision IDs in each graph node refer, respectively, to the Trees above. ---------------------------------------- Running cs-bisection-step --graph-out=/home/logs/results/bisect/qemu-mainline/test-amd64-amd64-libvirt-pair.leak-check--check--dst_host --summary-out=tmp/181141.bisection-summary --basis-template=180691 --blessings=real,real-bisect,real-retry qemu-mainline test-amd64-amd64-libvirt-pair leak-check/check/dst_host Searching for failure / basis pass: 181131 fail [dst_host=nobling0,src_host=nobling1] / 181013 [dst_host=debina1,src_host=debina0] 181006 [dst_host=nobling1,src_host=nobling0] 181003 [dst_host=rimava1,src_host=rimava0] 180996 [dst_host=italia0,src_host=italia1] 180990 [dst_host=huxelrebe1,src_host=huxelrebe0] 180987 [dst_host=fiano1,src_host=fiano0] 180983 [dst_host=godello1,src_host=godello0] 180981 [dst_host=italia1,src_host=italia0] 180977 [dst_host=albana0,src_host=albana1] 180691 [dst_host=godello0,src_host=godello1] 180686 \ [dst_host=albana1,src_host=albana0] 180673 [dst_host=nocera0,src_host=nocera1] 180659 [dst_host=huxelrebe0,src_host=huxelrebe1] 180643 [dst_host=pinot0,src_host=pinot1] 180637 [dst_host=godello1,src_host=godello0] 180626 [dst_host=rimava0,src_host=rimava1] 180621 ok. Failure / basis pass flights: 181131 / 180621 (tree with no url: minios) Tree: libvirt git://xenbits.xen.org/libvirt.git Tree: libvirt_keycodemapdb https://gitlab.com/keycodemap/keycodemapdb.git Tree: linux git://xenbits.xen.org/linux-pvops.git Tree: linuxfirmware git://xenbits.xen.org/osstest/linux-firmware.git Tree: ovmf git://xenbits.xen.org/osstest/ovmf.git Tree: qemu git://xenbits.xen.org/qemu-xen-traditional.git Tree: qemuu https://gitlab.com/qemu-project/qemu.git Tree: seabios git://xenbits.xen.org/osstest/seabios.git Tree: xen git://xenbits.xen.org/xen.git Latest 1c7335add9e28637d8a8b5039f487e5dc6a591c2 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 8fbf857a0b42697c22ec03abda9a2101b2870812 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 848a6caa88b9f082c89c9b41afa975761262981d be7e899350caa7b74d8271a34264c3b4aef25ab0 71226054f28ad98ab214b56a15899e8f62a7bca8 Basis pass 3d6bc5c61101aadd6fca5d558a44a1cba8120178 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 0a0e60caf20ab621ee9c1fc66b82b739158c05cf 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 278238505d28d292927bff7683f39fb4fbca7fd1 ea1b7a0733906b8425d948ae94fba63c32b1d425 31c65549746179e16cf3f82b694b4b1e0b7545ca Generating revisions with ./adhoc-revtuple-generator git://xenbits.xen.org/libvirt.git#3d6bc5c61101aadd6fca5d558a44a1cba8120178-1c7335add9e28637d8a8b5039f487e5dc6a591c2 https://gitlab.com/keycodemap/keycodemapdb.git#22b8996dba9041874845c7446ce89ec4ae2b713d-22b8996dba9041874845c7446ce89ec4ae2b713d git://xenbits.xen.org/linux-pvops.git#c3038e718a19fc596f7b1baba0f83d5146dc7784-c3038e718a19fc596f7b1baba0f83d5146dc7784 git://xenbits.xen.org/osstest/linux-firmware.git#c530a75c1e6a472b0eb9558310b518f0\ dfcd8860-c530a75c1e6a472b0eb9558310b518f0dfcd8860 git://xenbits.xen.org/osstest/ovmf.git#0a0e60caf20ab621ee9c1fc66b82b739158c05cf-8fbf857a0b42697c22ec03abda9a2101b2870812 git://xenbits.xen.org/qemu-xen-traditional.git#3d273dd05e51e5a1ffba3d98c7437ee84e8f8764-3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 https://gitlab.com/qemu-project/qemu.git#278238505d28d292927bff7683f39fb4fbca7fd1-848a6caa88b9f082c89c9b41afa975761262981d git://xenbits.xen.org/osstest/seabios.git#ea1b7a0733906b8425d948ae94fba63c32b\ 1d425-be7e899350caa7b74d8271a34264c3b4aef25ab0 git://xenbits.xen.org/xen.git#31c65549746179e16cf3f82b694b4b1e0b7545ca-71226054f28ad98ab214b56a15899e8f62a7bca8 Loaded 130292 nodes in revision graph Searching for test results: 180621 pass 3d6bc5c61101aadd6fca5d558a44a1cba8120178 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 0a0e60caf20ab621ee9c1fc66b82b739158c05cf 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 278238505d28d292927bff7683f39fb4fbca7fd1 ea1b7a0733906b8425d948ae94fba63c32b1d425 31c65549746179e16cf3f82b694b4b1e0b7545ca 180626 [dst_host=rimava0,src_host=rimava1] 180637 [dst_host=godello1,src_host=godello0] 180643 [dst_host=pinot0,src_host=pinot1] 180659 [dst_host=huxelrebe0,src_host=huxelrebe1] 180673 [dst_host=nocera0,src_host=nocera1] 180686 [dst_host=albana1,src_host=albana0] 180702 [] 180691 [dst_host=godello0,src_host=godello1] 180704 [] 180721 [] 180742 [] 180753 [] 180785 [] 180807 [] 180815 [] 180825 [] 180835 [] 180843 [] 180853 [] 180860 [] 180866 [] 180873 [] 180878 [] 180881 [] 180887 [] 180894 [] 180902 [] 180906 [] 180909 [] 180912 [] 180916 [] 180927 [] 180921 [] 180933 [] 180937 [] 180942 [] 180947 [] 180949 [] 180952 [] 180954 [] 180958 [] 180962 [] 180966 [] 180968 [] 180972 [] 180975 [] 180977 [dst_host=albana0,src_host=albana1] 180981 [dst_host=italia1,src_host=italia0] 180983 [dst_host=godello1,src_host=godello0] 180990 [dst_host=huxelrebe1,src_host=huxelrebe0] 180987 [dst_host=fiano1,src_host=fiano0] 181003 [dst_host=rimava1,src_host=rimava0] 180996 [dst_host=italia0,src_host=italia1] 181006 [dst_host=nobling1,src_host=nobling0] 181013 [dst_host=debina1,src_host=debina0] 181021 fail irrelevant 181042 pass 3d6bc5c61101aadd6fca5d558a44a1cba8120178 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 0a0e60caf20ab621ee9c1fc66b82b739158c05cf 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 278238505d28d292927bff7683f39fb4fbca7fd1 ea1b7a0733906b8425d948ae94fba63c32b1d425 31c65549746179e16cf3f82b694b4b1e0b7545ca 181051 fail irrelevant 181041 fail irrelevant 181055 pass irrelevant 181058 fail irrelevant 181060 pass e35b5df3f561ea5678a21aa1b39f14308fc6363c 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 1034d223f8cc6bf8b9b86c57e564753cdad46f88 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 5a4cb61ae1ab0068ab53535ed0ccaf41a5e97d2f be7e899350caa7b74d8271a34264c3b4aef25ab0 f54dd5b53ee516fa1d4c106e0744ce0083acfcdc 181062 pass e35b5df3f561ea5678a21aa1b39f14308fc6363c 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 1034d223f8cc6bf8b9b86c57e564753cdad46f88 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 56b8bfe9bb6b94184b8bbfc4be9196404a81e450 be7e899350caa7b74d8271a34264c3b4aef25ab0 f54dd5b53ee516fa1d4c106e0744ce0083acfcdc 181064 pass 997994b6b1e3b0bfd8597ab67e6eeb676d3d95c6 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 ba91d0292e593df8528b66f99c1b0b14fadc8e16 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 9cb47a10564e35df421f9639b0d2cf9e7449544d be7e899350caa7b74d8271a34264c3b4aef25ab0 f54dd5b53ee516fa1d4c106e0744ce0083acfcdc 181057 fail irrelevant 181065 pass a1bdffdd9638601b17a6d115eb148422b66bcea0 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 ba91d0292e593df8528b66f99c1b0b14fadc8e16 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 7d196e2196d50e0dda0f87f396d4f4a7ad9aafbe be7e899350caa7b74d8271a34264c3b4aef25ab0 f54dd5b53ee516fa1d4c106e0744ce0083acfcdc 181067 pass 3d6bc5c61101aadd6fca5d558a44a1cba8120178 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 0a0e60caf20ab621ee9c1fc66b82b739158c05cf 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 278238505d28d292927bff7683f39fb4fbca7fd1 ea1b7a0733906b8425d948ae94fba63c32b1d425 31c65549746179e16cf3f82b694b4b1e0b7545ca 181069 fail irrelevant 181070 pass irrelevant 181073 pass a1bdffdd9638601b17a6d115eb148422b66bcea0 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 ba91d0292e593df8528b66f99c1b0b14fadc8e16 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 b17bbf835c8998e93fd99b06164f1d63843fe8c9 be7e899350caa7b74d8271a34264c3b4aef25ab0 f54dd5b53ee516fa1d4c106e0744ce0083acfcdc 181075 pass a8c983d0fa1ba915f7a75deeceb20da1c88fd1db 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 ba91d0292e593df8528b66f99c1b0b14fadc8e16 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 b300c134465465385045ab705b68a42699688332 be7e899350caa7b74d8271a34264c3b4aef25ab0 354be8936d97d4f2cb8cc004bb0296826d89bd8d 181080 pass 3b6d69237f0a07bf8d9807cd68a387f8d42b076f 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 c5cf7f69c98baed40754ca4a821cb504fd5423cd 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 ad3387396a71416cacc0b394e5e440dd6e9ba19a be7e899350caa7b74d8271a34264c3b4aef25ab0 c7908869ac26961a3919491705e521179ad3fc0e 181083 pass 3b6d69237f0a07bf8d9807cd68a387f8d42b076f 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 c5cf7f69c98baed40754ca4a821cb504fd5423cd 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 37246d54d656933035094ed95f2d8e4708058856 be7e899350caa7b74d8271a34264c3b4aef25ab0 c7908869ac26961a3919491705e521179ad3fc0e 181085 pass 90404c53682f464b4a26efd618887dc336d9da80 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 0abfb0be6cf78a8e962383e85cec57851ddae5bc 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 297e8182194e634baa0cbbfd96d2e09e2a0bcd40 be7e899350caa7b74d8271a34264c3b4aef25ab0 753d903a6f2d1e68d98487d36449b5739c28d65a 181086 pass 5ee27c37e6d0d081714d1e1d25a0a4e472665120 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 0abfb0be6cf78a8e962383e85cec57851ddae5bc 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 91608e2a44f36e79cb83f863b8a7bb57d2c98061 be7e899350caa7b74d8271a34264c3b4aef25ab0 753d903a6f2d1e68d98487d36449b5739c28d65a 181068 fail irrelevant 181088 pass b10bc8f7ab6f9986ccc54ba04fc5b3bad7576be6 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 cafb4f3f36e2101cab2ed6db3ea246a5a3e4708e 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 7d478306e84259678b2941e8af7496ef32a9c4c5 be7e899350caa7b74d8271a34264c3b4aef25ab0 42abf5b9c53eb1b1a902002fcda68708234152c3 181090 pass 3d6bc5c61101aadd6fca5d558a44a1cba8120178 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 0a0e60caf20ab621ee9c1fc66b82b739158c05cf 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 278238505d28d292927bff7683f39fb4fbca7fd1 ea1b7a0733906b8425d948ae94fba63c32b1d425 31c65549746179e16cf3f82b694b4b1e0b7545ca 181092 fail irrelevant 181094 fail irrelevant 181096 pass 9222f35dc6917f00d166be3bb69ac4e5ff8536f0 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 0f9283429dd487deeeb264ee5670551d596fc208 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 7fe6cb68117ac856e03c93d18aca09de015392b0 be7e899350caa7b74d8271a34264c3b4aef25ab0 05422d276b56f2ebc2309a84a66fc5722c45ad74 181097 pass b10bc8f7ab6f9986ccc54ba04fc5b3bad7576be6 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 cafb4f3f36e2101cab2ed6db3ea246a5a3e4708e 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 3d8ff94e59770ec7f5effe509c94246b2cbe9ce0 be7e899350caa7b74d8271a34264c3b4aef25ab0 c8e4bbb5b8ee22fd1591ba6a5a3cef4466dda323 181099 pass 90404c53682f464b4a26efd618887dc336d9da80 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 0abfb0be6cf78a8e962383e85cec57851ddae5bc 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 146f515110e86aefe3bc2e8eb581ab724614060f be7e899350caa7b74d8271a34264c3b4aef25ab0 753d903a6f2d1e68d98487d36449b5739c28d65a 181089 fail irrelevant 181101 pass 96c8d39af007000daf3d5dfa845365f66379aaac 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 ba91d0292e593df8528b66f99c1b0b14fadc8e16 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 886c0453cbf10eebd42a9ccf89c3e46eb389c357 be7e899350caa7b74d8271a34264c3b4aef25ab0 ef1987fcb0fdfaa7ee148024037cb5fa335a7b2d 181104 fail irrelevant 181105 fail irrelevant 181108 pass e35b5df3f561ea5678a21aa1b39f14308fc6363c 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 04c5b3023e49c35d291f41d2c39b4d12a62b8f9c 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 ac84b57b4d74606f7f83667a0606deef32b2049d be7e899350caa7b74d8271a34264c3b4aef25ab0 f54dd5b53ee516fa1d4c106e0744ce0083acfcdc 181110 fail 9222f35dc6917f00d166be3bb69ac4e5ff8536f0 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 0f9283429dd487deeeb264ee5670551d596fc208 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 17b69c0fc1462be70419e622b63755a4390bfe31 be7e899350caa7b74d8271a34264c3b4aef25ab0 05422d276b56f2ebc2309a84a66fc5722c45ad74 181112 pass 9222f35dc6917f00d166be3bb69ac4e5ff8536f0 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 0f9283429dd487deeeb264ee5670551d596fc208 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 aa9bbd865502ed517624ab6fe7d4b5d89ca95e43 be7e899350caa7b74d8271a34264c3b4aef25ab0 352c917acfe1dd6afc2eee44aa4ab7c50d4bc48a 181114 pass 9222f35dc6917f00d166be3bb69ac4e5ff8536f0 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 0f9283429dd487deeeb264ee5670551d596fc208 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 2d1962958177cb80a491e4767c41bf6d82dbbc83 be7e899350caa7b74d8271a34264c3b4aef25ab0 05422d276b56f2ebc2309a84a66fc5722c45ad74 181103 fail irrelevant 181116 pass 9222f35dc6917f00d166be3bb69ac4e5ff8536f0 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 0f9283429dd487deeeb264ee5670551d596fc208 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 9998f70f6625f15f2ae36f612509ea34733c11d3 be7e899350caa7b74d8271a34264c3b4aef25ab0 05422d276b56f2ebc2309a84a66fc5722c45ad74 181118 pass 3d6bc5c61101aadd6fca5d558a44a1cba8120178 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 0a0e60caf20ab621ee9c1fc66b82b739158c05cf 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 278238505d28d292927bff7683f39fb4fbca7fd1 ea1b7a0733906b8425d948ae94fba63c32b1d425 31c65549746179e16cf3f82b694b4b1e0b7545ca 181120 fail irrelevant 181121 fail 9222f35dc6917f00d166be3bb69ac4e5ff8536f0 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 0f9283429dd487deeeb264ee5670551d596fc208 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 f6eac904f6825d47adc6102c8d7b59b8ba5b778e be7e899350caa7b74d8271a34264c3b4aef25ab0 05422d276b56f2ebc2309a84a66fc5722c45ad74 181123 pass 9222f35dc6917f00d166be3bb69ac4e5ff8536f0 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 0f9283429dd487deeeb264ee5670551d596fc208 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 ff82b7835b2fbbd0a17d616f6929601a97a6497d be7e899350caa7b74d8271a34264c3b4aef25ab0 05422d276b56f2ebc2309a84a66fc5722c45ad74 181124 pass 9222f35dc6917f00d166be3bb69ac4e5ff8536f0 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 0f9283429dd487deeeb264ee5670551d596fc208 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 ab61335025b1274bd7042219203524045b23e0d3 be7e899350caa7b74d8271a34264c3b4aef25ab0 05422d276b56f2ebc2309a84a66fc5722c45ad74 181125 fail 9222f35dc6917f00d166be3bb69ac4e5ff8536f0 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 0f9283429dd487deeeb264ee5670551d596fc208 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 f6eac904f6825d47adc6102c8d7b59b8ba5b778e be7e899350caa7b74d8271a34264c3b4aef25ab0 05422d276b56f2ebc2309a84a66fc5722c45ad74 181128 pass 9222f35dc6917f00d166be3bb69ac4e5ff8536f0 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 0f9283429dd487deeeb264ee5670551d596fc208 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 ab61335025b1274bd7042219203524045b23e0d3 be7e899350caa7b74d8271a34264c3b4aef25ab0 05422d276b56f2ebc2309a84a66fc5722c45ad74 181119 fail irrelevant 181130 fail 9222f35dc6917f00d166be3bb69ac4e5ff8536f0 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 0f9283429dd487deeeb264ee5670551d596fc208 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 f6eac904f6825d47adc6102c8d7b59b8ba5b778e be7e899350caa7b74d8271a34264c3b4aef25ab0 05422d276b56f2ebc2309a84a66fc5722c45ad74 181132 pass 3d6bc5c61101aadd6fca5d558a44a1cba8120178 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 0a0e60caf20ab621ee9c1fc66b82b739158c05cf 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 278238505d28d292927bff7683f39fb4fbca7fd1 ea1b7a0733906b8425d948ae94fba63c32b1d425 31c65549746179e16cf3f82b694b4b1e0b7545ca 181135 fail irrelevant 181136 pass 9222f35dc6917f00d166be3bb69ac4e5ff8536f0 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 0f9283429dd487deeeb264ee5670551d596fc208 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 ab61335025b1274bd7042219203524045b23e0d3 be7e899350caa7b74d8271a34264c3b4aef25ab0 05422d276b56f2ebc2309a84a66fc5722c45ad74 181138 fail 9222f35dc6917f00d166be3bb69ac4e5ff8536f0 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 0f9283429dd487deeeb264ee5670551d596fc208 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 f6eac904f6825d47adc6102c8d7b59b8ba5b778e be7e899350caa7b74d8271a34264c3b4aef25ab0 05422d276b56f2ebc2309a84a66fc5722c45ad74 181131 fail 1c7335add9e28637d8a8b5039f487e5dc6a591c2 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 8fbf857a0b42697c22ec03abda9a2101b2870812 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 848a6caa88b9f082c89c9b41afa975761262981d be7e899350caa7b74d8271a34264c3b4aef25ab0 71226054f28ad98ab214b56a15899e8f62a7bca8 181141 fail 1c7335add9e28637d8a8b5039f487e5dc6a591c2 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 8fbf857a0b42697c22ec03abda9a2101b2870812 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 848a6caa88b9f082c89c9b41afa975761262981d be7e899350caa7b74d8271a34264c3b4aef25ab0 71226054f28ad98ab214b56a15899e8f62a7bca8 Searching for interesting versions Result found: flight 180621 (pass), for basis pass Result found: flight 181131 (fail), for basis failure Repro found: flight 181132 (pass), for basis pass Repro found: flight 181141 (fail), for basis failure 0 revisions at 9222f35dc6917f00d166be3bb69ac4e5ff8536f0 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 0f9283429dd487deeeb264ee5670551d596fc208 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 ab61335025b1274bd7042219203524045b23e0d3 be7e899350caa7b74d8271a34264c3b4aef25ab0 05422d276b56f2ebc2309a84a66fc5722c45ad74 No revisions left to test, checking graph state. Result found: flight 181124 (pass), for last pass Result found: flight 181125 (fail), for first failure Repro found: flight 181128 (pass), for last pass Repro found: flight 181130 (fail), for first failure Repro found: flight 181136 (pass), for last pass Repro found: flight 181138 (fail), for first failure *** Found and reproduced problem changeset *** Bug is in tree: qemuu https://gitlab.com/qemu-project/qemu.git Bug introduced: f6eac904f6825d47adc6102c8d7b59b8ba5b778e Bug not present: ab61335025b1274bd7042219203524045b23e0d3 Last fail repro: http://logs.test-lab.xenproject.org/osstest/logs/181138/ commit f6eac904f6825d47adc6102c8d7b59b8ba5b778e Author: Stefan Hajnoczi Date: Tue May 16 15:02:29 2023 -0400 xen-block: implement BlockDevOps->drained_begin() Detach event channels during drained sections to stop I/O submission from the ring. xen-block is no longer reliant on aio_disable_external() after this patch. This will allow us to remove the aio_disable_external() API once all other code that relies on it is converted. Extend xen_device_set_event_channel_context() to allow ctx=NULL. The event channel still exists but the event loop does not monitor the file descriptor. Event channel processing can resume by calling xen_device_set_event_channel_context() with a non-NULL ctx. Factor out xen_device_set_event_channel_context() calls in hw/block/dataplane/xen-block.c into attach/detach helper functions. Incidentally, these don't require the AioContext lock because aio_set_fd_handler() is thread-safe. It's safer to register BlockDevOps after the dataplane instance has been created. The BlockDevOps .drained_begin/end() callbacks depend on the dataplane instance, so move the blk_set_dev_ops() call after xen_block_dataplane_create(). Signed-off-by: Stefan Hajnoczi Reviewed-by: Kevin Wolf Message-Id: <20230516190238.8401-12-stefanha@redhat.com> Signed-off-by: Kevin Wolf neato: graph is too large for cairo-renderer bitmaps. Scaling by 0.689121 to fit pnmtopng: 209 colors found Revision graph left in /home/logs/results/bisect/qemu-mainline/test-amd64-amd64-libvirt-pair.leak-check--check--dst_host.{dot,ps,png,html,svg}. ---------------------------------------- 181141: tolerable FAIL flight 181141 qemu-mainline real-bisect [real] http://logs.test-lab.xenproject.org/osstest/logs/181141/ Failures :-/ but no regressions. Tests which did not succeed, including tests which could not be run: test-amd64-amd64-libvirt-pair 30 leak-check/check/src_host fail baseline untested test-amd64-amd64-libvirt-pair 31 leak-check/check/dst_host fail baseline untested jobs: build-amd64 pass build-amd64-libvirt pass test-amd64-amd64-libvirt-pair fail ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary From xen-devel-bounces@lists.xenproject.org Sat Jun 03 18:09:54 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sat, 03 Jun 2023 18:09:54 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543348.848254 (Exim 4.92) (envelope-from ) id 1q5Vh2-0000f6-BT; Sat, 03 Jun 2023 18:09:36 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543348.848254; Sat, 03 Jun 2023 18:09:36 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q5Vh2-0000ez-8H; Sat, 03 Jun 2023 18:09:36 +0000 Received: by outflank-mailman (input) for mailman id 543348; Sat, 03 Jun 2023 18:09:35 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q5Vh1-0000ep-0w; Sat, 03 Jun 2023 18:09:35 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q5Vh0-00023z-OK; Sat, 03 Jun 2023 18:09:34 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q5Vh0-0008BD-AL; Sat, 03 Jun 2023 18:09:34 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q5Vh0-0004V4-9y; Sat, 03 Jun 2023 18:09:34 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=ywap7d8qAM1Opo7KsOYTE0Xqvf76XZzVmaFSs3brhVE=; b=GHdi61Ld0ystSFx/kYSzjlzYuk 67JACUGEepFQmiGegGDriUGN5bPsgxFsl1jtdjbUOEtiUALQltduUdjXId9du4VKl1QX2ypR1RK7D DclXTGpLIWSlM0SQIUtcv2W21RUUuvhYi+bso9T7jRq/oYiHaJbrvdBJ05kCoX0N8NXA=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [linux-linus test] 181134: regressions - FAIL X-Osstest-Failures: linux-linus:test-armhf-armhf-xl-credit1:xen-boot:fail:regression linux-linus:test-armhf-armhf-examine:reboot:fail:nonblocking linux-linus:test-armhf-armhf-xl-multivcpu:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-arndale:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking linux-linus:test-armhf-armhf-xl-credit2:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking linux-linus:test-armhf-armhf-libvirt:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-raw:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-qcow2:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-vhd:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-rtds:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-qcow2:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-raw:migrate-support-check:fail:nonblocking X-Osstest-Versions-This: linux=4ecd704a4c51fd95973fcc3a60444e0e24eb9439 X-Osstest-Versions-That: linux=6c538e1adbfc696ac4747fb10d63e704344f763d From: osstest service owner Date: Sat, 03 Jun 2023 18:09:34 +0000 flight 181134 linux-linus real [real] flight 181144 linux-linus real-retest [real] http://logs.test-lab.xenproject.org/osstest/logs/181134/ http://logs.test-lab.xenproject.org/osstest/logs/181144/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: test-armhf-armhf-xl-credit1 8 xen-boot fail REGR. vs. 180278 Tests which did not succeed, but are not blocking: test-armhf-armhf-examine 8 reboot fail like 180278 test-armhf-armhf-xl-multivcpu 8 xen-boot fail like 180278 test-armhf-armhf-xl-arndale 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 180278 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 180278 test-armhf-armhf-xl-credit2 8 xen-boot fail like 180278 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 180278 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 180278 test-armhf-armhf-libvirt 8 xen-boot fail like 180278 test-armhf-armhf-libvirt-raw 8 xen-boot fail like 180278 test-armhf-armhf-libvirt-qcow2 8 xen-boot fail like 180278 test-armhf-armhf-xl 8 xen-boot fail like 180278 test-armhf-armhf-xl-vhd 8 xen-boot fail like 180278 test-armhf-armhf-xl-rtds 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 180278 test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qcow2 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass test-amd64-amd64-libvirt-raw 14 migrate-support-check fail never pass version targeted for testing: linux 4ecd704a4c51fd95973fcc3a60444e0e24eb9439 baseline version: linux 6c538e1adbfc696ac4747fb10d63e704344f763d Last test of basis 180278 2023-04-16 19:41:46 Z 47 days Failing since 180281 2023-04-17 06:24:36 Z 47 days 89 attempts Testing same since 181134 2023-06-03 04:28:39 Z 0 days 1 attempts ------------------------------------------------------------ 2602 people touched revisions under test, not listing them all jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl fail test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-freebsd11-amd64 pass test-amd64-amd64-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale fail test-amd64-amd64-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 fail test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 fail test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine fail test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt fail test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu fail test-amd64-amd64-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-amd64-pygrub pass test-amd64-amd64-libvirt-qcow2 pass test-armhf-armhf-libvirt-qcow2 fail test-amd64-amd64-libvirt-raw pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw fail test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds fail test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-amd64-xl-vhd pass test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd fail ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 329375 lines long.) From xen-devel-bounces@lists.xenproject.org Sat Jun 03 21:53:07 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sat, 03 Jun 2023 21:53:07 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543360.848282 (Exim 4.92) (envelope-from ) id 1q5ZB2-0006CM-CG; Sat, 03 Jun 2023 21:52:48 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543360.848282; Sat, 03 Jun 2023 21:52:48 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q5ZB2-0006CF-9I; Sat, 03 Jun 2023 21:52:48 +0000 Received: by outflank-mailman (input) for mailman id 543360; Sat, 03 Jun 2023 21:52:47 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q5ZB1-0006C5-73; Sat, 03 Jun 2023 21:52:47 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q5ZB0-0007CV-Or; Sat, 03 Jun 2023 21:52:46 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q5ZB0-0000MK-2x; Sat, 03 Jun 2023 21:52:46 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q5ZB0-0006Wb-2Y; Sat, 03 Jun 2023 21:52:46 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=BybOXOTQZnUPyHlqdvzSBpKVMZslFHaISOBCwFGhos0=; b=5+A5Qsi7xYOhLkYRdEGsvqssEX IndEIczLbxtGZ7R8COeINkZB5EhZISxjb7YIreXIDsgoLRUr8CqJexrmYwj/XNqY45fiOzPoddU3y SXZFGqkHVYHPksmERMMWhF+hmd28J3NWQYzAEUKd/F8erusKeiY1Ttem4AXH32AHYPwM=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable test] 181137: tolerable FAIL X-Osstest-Failures: xen-unstable:test-amd64-i386-qemuu-rhel6hvm-amd:xen-install:fail:heisenbug xen-unstable:test-amd64-i386-qemut-rhel6hvm-amd:xen-install:fail:heisenbug xen-unstable:test-amd64-amd64-pygrub:guest-localmigrate/x10:fail:heisenbug xen-unstable:test-amd64-i386-xl-vhd:guest-start.2:fail:heisenbug xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking X-Osstest-Versions-This: xen=67fdffef9246c82cecd8db28838ed09e79e2528a X-Osstest-Versions-That: xen=67fdffef9246c82cecd8db28838ed09e79e2528a From: osstest service owner Date: Sat, 03 Jun 2023 21:52:46 +0000 flight 181137 xen-unstable real [real] http://logs.test-lab.xenproject.org/osstest/logs/181137/ Failures :-/ but no regressions. Tests which are failing intermittently (not blocking): test-amd64-i386-qemuu-rhel6hvm-amd 7 xen-install fail pass in 181126 test-amd64-i386-qemut-rhel6hvm-amd 7 xen-install fail pass in 181126 test-amd64-amd64-pygrub 19 guest-localmigrate/x10 fail pass in 181126 test-amd64-i386-xl-vhd 22 guest-start.2 fail pass in 181126 Tests which did not succeed, but are not blocking: test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 181126 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop fail like 181126 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 181126 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 181126 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop fail like 181126 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop fail like 181126 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail like 181126 test-armhf-armhf-libvirt 16 saverestore-support-check fail like 181126 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail like 181126 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 181126 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop fail like 181126 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 181126 test-amd64-i386-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-i386-xl-pvshim 14 guest-start fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-armhf-armhf-xl-multivcpu 15 migrate-support-check fail never pass test-armhf-armhf-xl-multivcpu 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-armhf-armhf-xl 15 migrate-support-check fail never pass test-armhf-armhf-xl 16 saverestore-support-check fail never pass test-amd64-i386-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass test-amd64-i386-libvirt 15 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 15 saverestore-support-check fail never pass test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail never pass test-armhf-armhf-xl-credit2 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit2 16 saverestore-support-check fail never pass test-armhf-armhf-xl-arndale 15 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt 15 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 15 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt-raw 14 migrate-support-check fail never pass version targeted for testing: xen 67fdffef9246c82cecd8db28838ed09e79e2528a baseline version: xen 67fdffef9246c82cecd8db28838ed09e79e2528a Last test of basis 181137 2023-06-03 08:23:03 Z 0 days Testing same since (not found) 0 attempts jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64-xtf pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-prev pass build-i386-prev pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-xtf-amd64-amd64-1 pass test-xtf-amd64-amd64-2 pass test-xtf-amd64-amd64-3 pass test-xtf-amd64-amd64-4 pass test-xtf-amd64-amd64-5 pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl pass test-amd64-i386-xl pass test-amd64-coresched-i386-xl pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-i386-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-i386-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-i386-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-i386-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-i386-qemut-rhel6hvm-amd fail test-amd64-i386-qemuu-rhel6hvm-amd fail test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-i386-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-freebsd10-amd64 pass test-amd64-amd64-qemuu-freebsd11-amd64 pass test-amd64-amd64-qemuu-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-i386-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-i386-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-i386-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-amd64-i386-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale pass test-amd64-amd64-examine-bios pass test-amd64-i386-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 pass test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 pass test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine pass test-amd64-i386-examine pass test-amd64-i386-freebsd10-i386 pass test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-i386-qemut-rhel6hvm-intel pass test-amd64-i386-qemuu-rhel6hvm-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt pass test-amd64-i386-libvirt pass test-amd64-amd64-livepatch pass test-amd64-i386-livepatch pass test-amd64-amd64-migrupgrade pass test-amd64-i386-migrupgrade pass test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu pass test-amd64-amd64-pair pass test-amd64-i386-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-i386-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-i386-xl-pvshim fail test-amd64-amd64-pygrub fail test-armhf-armhf-libvirt-qcow2 pass test-amd64-amd64-xl-qcow2 pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw pass test-amd64-i386-libvirt-raw pass test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds pass test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-amd64-i386-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-i386-examine-uefi pass test-amd64-amd64-libvirt-vhd pass test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd pass test-amd64-i386-xl-vhd fail ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Published tested tree is already up to date. From xen-devel-bounces@lists.xenproject.org Sat Jun 03 22:47:27 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sat, 03 Jun 2023 22:47:27 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543368.848295 (Exim 4.92) (envelope-from ) id 1q5a1p-0003Fp-Jg; Sat, 03 Jun 2023 22:47:21 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543368.848295; Sat, 03 Jun 2023 22:47:21 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q5a1p-0003Fi-Gf; Sat, 03 Jun 2023 22:47:21 +0000 Received: by outflank-mailman (input) for mailman id 543368; Sat, 03 Jun 2023 22:47:19 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q5a1n-0003FY-OD; Sat, 03 Jun 2023 22:47:19 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q5a1n-0008UQ-Fe; Sat, 03 Jun 2023 22:47:19 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q5a1n-0001qZ-3M; Sat, 03 Jun 2023 22:47:19 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q5a1n-00086z-2v; Sat, 03 Jun 2023 22:47:19 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=63Jq/c5nnON5HMk9bscPrw5kSD72d1saQW69K1rKJEE=; b=vL00iPX1WtUR9BRG6gwCRtMxze 13C980G41be8cDbDPXZ4p+//Ya0waouVyIYw/O8AtYfssENM7EPUQf7i0CJDhwBW/W9qOiT+H/e0L FlrZ8jBF91Xem5ud+EwDtvMHw0tyuJTJp1875aB5q9Bay2r6uJvipJJXp3EyazWd3Bjw=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [qemu-mainline test] 181140: regressions - FAIL X-Osstest-Failures: qemu-mainline:test-amd64-amd64-libvirt-pair:leak-check/check/src_host:fail:regression qemu-mainline:test-amd64-amd64-libvirt-pair:leak-check/check/dst_host:fail:regression qemu-mainline:test-amd64-i386-libvirt:leak-check/check:fail:regression qemu-mainline:test-amd64-amd64-libvirt-xsm:leak-check/check:fail:regression qemu-mainline:build-arm64-xsm:xen-build:fail:regression qemu-mainline:build-arm64:xen-build:fail:regression qemu-mainline:test-amd64-amd64-libvirt:leak-check/check:fail:regression qemu-mainline:test-amd64-i386-libvirt-xsm:leak-check/check:fail:regression qemu-mainline:test-amd64-i386-libvirt-pair:leak-check/check/src_host:fail:regression qemu-mainline:test-amd64-i386-libvirt-pair:leak-check/check/dst_host:fail:regression qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:leak-check/check:fail:regression qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:leak-check/check:fail:regression qemu-mainline:test-amd64-amd64-libvirt-vhd:leak-check/check:fail:regression qemu-mainline:test-amd64-i386-libvirt-raw:leak-check/check:fail:regression qemu-mainline:test-armhf-armhf-libvirt:leak-check/check:fail:regression qemu-mainline:test-armhf-armhf-libvirt-qcow2:leak-check/check:fail:regression qemu-mainline:test-armhf-armhf-libvirt-raw:leak-check/check:fail:regression qemu-mainline:test-armhf-armhf-xl-vhd:leak-check/check:fail:regression qemu-mainline:test-amd64-i386-xl-vhd:leak-check/check:fail:regression qemu-mainline:test-amd64-amd64-xl-qcow2:leak-check/check:fail:regression qemu-mainline:test-amd64-amd64-libvirt-vhd:guest-start/debian.repeat:fail:heisenbug qemu-mainline:test-amd64-i386-xl:xen-install:fail:heisenbug qemu-mainline:test-amd64-i386-xl-vhd:guest-start/debian.repeat:fail:heisenbug qemu-mainline:test-amd64-amd64-xl-qcow2:guest-start/debian.repeat:fail:heisenbug qemu-mainline:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:build-arm64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking qemu-mainline:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking qemu-mainline:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking qemu-mainline:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking qemu-mainline:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking qemu-mainline:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking qemu-mainline:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking qemu-mainline:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking qemu-mainline:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking qemu-mainline:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: qemuu=848a6caa88b9f082c89c9b41afa975761262981d X-Osstest-Versions-That: qemuu=6972ef1440a9d685482d78672620a7482f2bd09a From: osstest service owner Date: Sat, 03 Jun 2023 22:47:19 +0000 flight 181140 qemu-mainline real [real] http://logs.test-lab.xenproject.org/osstest/logs/181140/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: test-amd64-amd64-libvirt-pair 30 leak-check/check/src_host fail REGR. vs. 180691 test-amd64-amd64-libvirt-pair 31 leak-check/check/dst_host fail REGR. vs. 180691 test-amd64-i386-libvirt 23 leak-check/check fail REGR. vs. 180691 test-amd64-amd64-libvirt-xsm 23 leak-check/check fail REGR. vs. 180691 build-arm64-xsm 6 xen-build fail REGR. vs. 180691 build-arm64 6 xen-build fail REGR. vs. 180691 test-amd64-amd64-libvirt 23 leak-check/check fail REGR. vs. 180691 test-amd64-i386-libvirt-xsm 23 leak-check/check fail REGR. vs. 180691 test-amd64-i386-libvirt-pair 30 leak-check/check/src_host fail REGR. vs. 180691 test-amd64-i386-libvirt-pair 31 leak-check/check/dst_host fail REGR. vs. 180691 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 21 leak-check/check fail REGR. vs. 180691 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 21 leak-check/check fail REGR. vs. 180691 test-amd64-amd64-libvirt-vhd 22 leak-check/check fail REGR. vs. 180691 test-amd64-i386-libvirt-raw 22 leak-check/check fail REGR. vs. 180691 test-armhf-armhf-libvirt 21 leak-check/check fail REGR. vs. 180691 test-armhf-armhf-libvirt-qcow2 20 leak-check/check fail REGR. vs. 180691 test-armhf-armhf-libvirt-raw 20 leak-check/check fail REGR. vs. 180691 test-armhf-armhf-xl-vhd 20 leak-check/check fail REGR. vs. 180691 test-amd64-i386-xl-vhd 24 leak-check/check fail in 181131 REGR. vs. 180691 test-amd64-amd64-xl-qcow2 24 leak-check/check fail in 181131 REGR. vs. 180691 Tests which are failing intermittently (not blocking): test-amd64-amd64-libvirt-vhd 19 guest-start/debian.repeat fail in 181131 pass in 181140 test-amd64-i386-xl 7 xen-install fail pass in 181131 test-amd64-i386-xl-vhd 21 guest-start/debian.repeat fail pass in 181131 test-amd64-amd64-xl-qcow2 21 guest-start/debian.repeat fail pass in 181131 Tests which did not succeed, but are not blocking: test-arm64-arm64-libvirt-raw 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-xsm 1 build-check(1) blocked n/a test-arm64-arm64-xl 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit1 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit2 1 build-check(1) blocked n/a test-arm64-arm64-xl-thunderx 1 build-check(1) blocked n/a test-arm64-arm64-xl-vhd 1 build-check(1) blocked n/a test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a build-arm64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 180691 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 180691 test-armhf-armhf-libvirt 16 saverestore-support-check fail like 180691 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail like 180691 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop fail like 180691 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail like 180691 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 180691 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop fail like 180691 test-amd64-i386-xl-pvshim 14 guest-start fail never pass test-amd64-i386-libvirt 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-i386-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-credit2 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit2 16 saverestore-support-check fail never pass test-amd64-i386-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-libvirt 15 migrate-support-check fail never pass test-armhf-armhf-xl 15 migrate-support-check fail never pass test-armhf-armhf-xl 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 15 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 16 saverestore-support-check fail never pass test-armhf-armhf-xl-multivcpu 15 migrate-support-check fail never pass test-armhf-armhf-xl-multivcpu 16 saverestore-support-check fail never pass test-armhf-armhf-xl-arndale 15 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 15 saverestore-support-check fail never pass version targeted for testing: qemuu 848a6caa88b9f082c89c9b41afa975761262981d baseline version: qemuu 6972ef1440a9d685482d78672620a7482f2bd09a Last test of basis 180691 2023-05-17 10:45:22 Z 17 days Failing since 180699 2023-05-18 07:21:24 Z 16 days 58 attempts Testing same since 181131 2023-06-03 03:50:56 Z 0 days 2 attempts ------------------------------------------------------------ People who touched revisions under test: Afonso Bordado Akihiko Odaki Akihiro Suda Alex Bennée Alex Williamson Alexander Bulekov Alexander Graf Alistair Francis Ani Sinha Ani Sinha Anton Johansson BALATON Zoltan Bernhard Beschow Bin Meng Brian Cain Brice Goglin Camilla Conte Cindy Lu Clément Chigot Cornelia Huck Cédric Le Goater Cédric Le Goater Daniel Henrique Barboza Daniel P. Berrangé Daniil Kovalev David Hildenbrand Emanuele Giuseppe Esposito Enze Li Eric Auger Eric Blake Eric DeVolder Erico Nunes Eugenio Pérez Fabiano Rosas Fan Ni Fiona Ebner Francisco Iglesias Gavin Shan Gregory Price Gregory Price Hao Zeng Hawkins Jiawei Igor Mammedov Ira Weiny Jason Wang Jean-Philippe Brucker John Snow Jonathan Cameron Juan Quintela Kevin Wolf Laurent Vivier Lei Yang Leonardo Bras Maksim Davydov Marc-André Lureau Marcin Juszkiewicz Marco Liebel Mark Cave-Ayland Markus Armbruster Matheus Tavares Bernardino Mauro Matteo Cascella Michael S. Tsirkin Michael Tokarev Mostafa Saleh Nicholas Piggin Nicolas Saenz Julienne Palmer Dabbelt Paolo Bonzini Peter Maydell Peter Xu Philippe Mathieu-Daudé Raghu H Rene Engel Richard Henderson Richard Purdie Ricky Zhou Ryan Wendland Sebastian Ott Sergio Lopez Sid Manning Song Gao Stefan Hajnoczi Stefano Garzarella Steve Sistare Taylor Simpson Thomas Huth Thomas Weißschuh timothee.cocault@gmail.com Timothée Cocault Tommy Wu Viktor Prutyanov Vitaly Cheptsov Vivek Kasireddy Vladimir Sementsov-Ogievskiy Volker Rümelin Xinyu Li Zeng Hao Zhenyu Zhang Zhenzhong Duan jobs: build-amd64-xsm pass build-arm64-xsm fail build-i386-xsm pass build-amd64 pass build-arm64 fail build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt blocked build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl blocked test-armhf-armhf-xl pass test-amd64-i386-xl fail test-amd64-coresched-i386-xl pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm fail test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm fail test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-i386-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm fail test-arm64-arm64-libvirt-xsm blocked test-amd64-i386-libvirt-xsm fail test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm blocked test-amd64-i386-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-i386-qemuu-rhel6hvm-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-freebsd10-amd64 pass test-amd64-amd64-qemuu-freebsd11-amd64 pass test-amd64-amd64-qemuu-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-i386-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-amd64-i386-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 blocked test-armhf-armhf-xl-credit1 pass test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 blocked test-armhf-armhf-xl-credit2 pass test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-i386-freebsd10-i386 pass test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-i386-qemuu-rhel6hvm-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt fail test-armhf-armhf-libvirt fail test-amd64-i386-libvirt fail test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu pass test-amd64-amd64-pair pass test-amd64-i386-pair pass test-amd64-amd64-libvirt-pair fail test-amd64-i386-libvirt-pair fail test-amd64-amd64-xl-pvshim pass test-amd64-i386-xl-pvshim fail test-amd64-amd64-pygrub pass test-armhf-armhf-libvirt-qcow2 fail test-amd64-amd64-xl-qcow2 fail test-arm64-arm64-libvirt-raw blocked test-armhf-armhf-libvirt-raw fail test-amd64-i386-libvirt-raw fail test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds pass test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-amd64-i386-xl-shadow pass test-arm64-arm64-xl-thunderx blocked test-amd64-amd64-libvirt-vhd fail test-arm64-arm64-xl-vhd blocked test-armhf-armhf-xl-vhd fail test-amd64-i386-xl-vhd fail ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 12540 lines long.) From xen-devel-bounces@lists.xenproject.org Sun Jun 04 05:26:43 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sun, 04 Jun 2023 05:26:43 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543381.848326 (Exim 4.92) (envelope-from ) id 1q5gG6-00080c-Dh; Sun, 04 Jun 2023 05:26:30 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543381.848326; Sun, 04 Jun 2023 05:26:30 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q5gG6-00080U-6h; Sun, 04 Jun 2023 05:26:30 +0000 Received: by outflank-mailman (input) for mailman id 543381; Sun, 04 Jun 2023 05:26:29 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q5gG5-00080K-H6; Sun, 04 Jun 2023 05:26:29 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q5gG5-0000Us-8V; Sun, 04 Jun 2023 05:26:29 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q5gG4-0001bh-DN; Sun, 04 Jun 2023 05:26:28 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q5gG4-0002kc-AW; Sun, 04 Jun 2023 05:26:28 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=D4PlY99R/FkhZ4DK7LXwMTs0WSyd0myNRR2PQbaiJOY=; b=pQQ3hBmz4LBSKS/YCLQSs7gyZH Clm+SXqMLxPCrhoUZcXTVg1/HvGWcuPs9Lswurm0rH/QYZkdOwfH1poh2R/SuDBzjsmuAgcGXaevn 7gP7GX+jgIfYJSBiFbj83XG2AztLDTXxh8NAJDjODXLvlxvSfzRzQ29CFLyv6pRfPl3Q=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [linux-linus test] 181147: regressions - FAIL X-Osstest-Failures: linux-linus:test-armhf-armhf-xl-credit1:xen-boot:fail:regression linux-linus:test-armhf-armhf-examine:reboot:fail:nonblocking linux-linus:test-armhf-armhf-xl-multivcpu:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-arndale:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking linux-linus:test-armhf-armhf-xl-credit2:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking linux-linus:test-armhf-armhf-libvirt:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-raw:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-qcow2:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-vhd:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-rtds:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-qcow2:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-raw:migrate-support-check:fail:nonblocking X-Osstest-Versions-This: linux=e5282a7d8f6b604f2bb6a06457734b8cf1e2f8f2 X-Osstest-Versions-That: linux=6c538e1adbfc696ac4747fb10d63e704344f763d From: osstest service owner Date: Sun, 04 Jun 2023 05:26:28 +0000 flight 181147 linux-linus real [real] flight 181156 linux-linus real-retest [real] http://logs.test-lab.xenproject.org/osstest/logs/181147/ http://logs.test-lab.xenproject.org/osstest/logs/181156/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: test-armhf-armhf-xl-credit1 8 xen-boot fail REGR. vs. 180278 Tests which did not succeed, but are not blocking: test-armhf-armhf-examine 8 reboot fail like 180278 test-armhf-armhf-xl-multivcpu 8 xen-boot fail like 180278 test-armhf-armhf-xl-arndale 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 180278 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 180278 test-armhf-armhf-xl-credit2 8 xen-boot fail like 180278 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 180278 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 180278 test-armhf-armhf-libvirt 8 xen-boot fail like 180278 test-armhf-armhf-libvirt-raw 8 xen-boot fail like 180278 test-armhf-armhf-libvirt-qcow2 8 xen-boot fail like 180278 test-armhf-armhf-xl 8 xen-boot fail like 180278 test-armhf-armhf-xl-vhd 8 xen-boot fail like 180278 test-armhf-armhf-xl-rtds 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 180278 test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qcow2 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass test-amd64-amd64-libvirt-raw 14 migrate-support-check fail never pass version targeted for testing: linux e5282a7d8f6b604f2bb6a06457734b8cf1e2f8f2 baseline version: linux 6c538e1adbfc696ac4747fb10d63e704344f763d Last test of basis 180278 2023-04-16 19:41:46 Z 48 days Failing since 180281 2023-04-17 06:24:36 Z 47 days 90 attempts Testing same since 181147 2023-06-03 18:40:28 Z 0 days 1 attempts ------------------------------------------------------------ 2605 people touched revisions under test, not listing them all jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl fail test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-freebsd11-amd64 pass test-amd64-amd64-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale fail test-amd64-amd64-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 fail test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 fail test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine fail test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt fail test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu fail test-amd64-amd64-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-amd64-pygrub pass test-amd64-amd64-libvirt-qcow2 pass test-armhf-armhf-libvirt-qcow2 fail test-amd64-amd64-libvirt-raw pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw fail test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds fail test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-amd64-xl-vhd pass test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd fail ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 329632 lines long.) From xen-devel-bounces@lists.xenproject.org Sun Jun 04 06:20:36 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sun, 04 Jun 2023 06:20:36 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543390.848342 (Exim 4.92) (envelope-from ) id 1q5h6L-0005tU-Fr; Sun, 04 Jun 2023 06:20:29 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543390.848342; Sun, 04 Jun 2023 06:20:29 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q5h6L-0005tN-Co; Sun, 04 Jun 2023 06:20:29 +0000 Received: by outflank-mailman (input) for mailman id 543390; Sun, 04 Jun 2023 06:20:28 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q5h6K-0005tD-AE; Sun, 04 Jun 2023 06:20:28 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q5h6K-0001oL-4W; Sun, 04 Jun 2023 06:20:28 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q5h6J-0005NP-Ez; Sun, 04 Jun 2023 06:20:27 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q5h6J-0005EK-EJ; Sun, 04 Jun 2023 06:20:27 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=iKijF6QEPRNgexbSYkmxXb1peUKBWGucTT0C58jNZfQ=; b=m6q+BrTbIegoUfQbX/kzJPQ+H2 81cExvwzTEGWS9Qe4SG9Ts2E0s1L+OAL+sFZ9WAq9XtOAH7f7gqvDfEm6J0xe9mP+HCfOQHtOoe8J 5xzC0tDupqSLtggHINijZvgN89v2hbTuLIJ1G/nPULPhF9v6Fs3iexIxWeli7qbzOHx4=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [qemu-mainline test] 181151: regressions - FAIL X-Osstest-Failures: qemu-mainline:test-amd64-amd64-libvirt-pair:leak-check/check/src_host:fail:regression qemu-mainline:test-amd64-amd64-libvirt-pair:leak-check/check/dst_host:fail:regression qemu-mainline:test-amd64-i386-libvirt:leak-check/check:fail:regression qemu-mainline:test-amd64-amd64-libvirt-xsm:leak-check/check:fail:regression qemu-mainline:build-arm64-xsm:xen-build:fail:regression qemu-mainline:build-arm64:xen-build:fail:regression qemu-mainline:test-amd64-amd64-libvirt:leak-check/check:fail:regression qemu-mainline:test-amd64-i386-libvirt-xsm:leak-check/check:fail:regression qemu-mainline:test-amd64-i386-libvirt-pair:leak-check/check/src_host:fail:regression qemu-mainline:test-amd64-i386-libvirt-pair:leak-check/check/dst_host:fail:regression qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:leak-check/check:fail:regression qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:leak-check/check:fail:regression qemu-mainline:test-amd64-amd64-libvirt-vhd:leak-check/check:fail:regression qemu-mainline:test-amd64-i386-libvirt-raw:leak-check/check:fail:regression qemu-mainline:test-armhf-armhf-libvirt:leak-check/check:fail:regression qemu-mainline:test-armhf-armhf-libvirt-qcow2:leak-check/check:fail:regression qemu-mainline:test-armhf-armhf-libvirt-raw:leak-check/check:fail:regression qemu-mainline:test-armhf-armhf-xl-vhd:leak-check/check:fail:regression qemu-mainline:test-amd64-i386-xl-vhd:leak-check/check:fail:regression qemu-mainline:test-amd64-amd64-xl-qcow2:leak-check/check:fail:regression qemu-mainline:test-amd64-amd64-libvirt-vhd:guest-start/debian.repeat:fail:heisenbug qemu-mainline:test-amd64-i386-xl:xen-install:fail:heisenbug qemu-mainline:test-amd64-i386-xl-vhd:guest-start/debian.repeat:fail:heisenbug qemu-mainline:test-amd64-amd64-xl-qcow2:guest-start/debian.repeat:fail:heisenbug qemu-mainline:test-armhf-armhf-xl:guest-start/debian.repeat:fail:heisenbug qemu-mainline:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:build-arm64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking qemu-mainline:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking qemu-mainline:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking qemu-mainline:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking qemu-mainline:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking qemu-mainline:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking qemu-mainline:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking qemu-mainline:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking qemu-mainline:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking qemu-mainline:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: qemuu=848a6caa88b9f082c89c9b41afa975761262981d X-Osstest-Versions-That: qemuu=6972ef1440a9d685482d78672620a7482f2bd09a From: osstest service owner Date: Sun, 04 Jun 2023 06:20:27 +0000 flight 181151 qemu-mainline real [real] http://logs.test-lab.xenproject.org/osstest/logs/181151/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: test-amd64-amd64-libvirt-pair 30 leak-check/check/src_host fail REGR. vs. 180691 test-amd64-amd64-libvirt-pair 31 leak-check/check/dst_host fail REGR. vs. 180691 test-amd64-i386-libvirt 23 leak-check/check fail REGR. vs. 180691 test-amd64-amd64-libvirt-xsm 23 leak-check/check fail REGR. vs. 180691 build-arm64-xsm 6 xen-build fail REGR. vs. 180691 build-arm64 6 xen-build fail REGR. vs. 180691 test-amd64-amd64-libvirt 23 leak-check/check fail REGR. vs. 180691 test-amd64-i386-libvirt-xsm 23 leak-check/check fail REGR. vs. 180691 test-amd64-i386-libvirt-pair 30 leak-check/check/src_host fail REGR. vs. 180691 test-amd64-i386-libvirt-pair 31 leak-check/check/dst_host fail REGR. vs. 180691 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 21 leak-check/check fail REGR. vs. 180691 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 21 leak-check/check fail REGR. vs. 180691 test-amd64-amd64-libvirt-vhd 22 leak-check/check fail REGR. vs. 180691 test-amd64-i386-libvirt-raw 22 leak-check/check fail REGR. vs. 180691 test-armhf-armhf-libvirt 21 leak-check/check fail REGR. vs. 180691 test-armhf-armhf-libvirt-qcow2 20 leak-check/check fail REGR. vs. 180691 test-armhf-armhf-libvirt-raw 20 leak-check/check fail REGR. vs. 180691 test-armhf-armhf-xl-vhd 20 leak-check/check fail REGR. vs. 180691 test-amd64-i386-xl-vhd 24 leak-check/check fail in 181131 REGR. vs. 180691 test-amd64-amd64-xl-qcow2 24 leak-check/check fail in 181131 REGR. vs. 180691 Tests which are failing intermittently (not blocking): test-amd64-amd64-libvirt-vhd 19 guest-start/debian.repeat fail in 181131 pass in 181151 test-amd64-i386-xl 7 xen-install fail in 181140 pass in 181151 test-amd64-i386-xl-vhd 21 guest-start/debian.repeat fail pass in 181131 test-amd64-amd64-xl-qcow2 21 guest-start/debian.repeat fail pass in 181131 test-armhf-armhf-xl 18 guest-start/debian.repeat fail pass in 181140 Tests which did not succeed, but are not blocking: test-arm64-arm64-libvirt-raw 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-xsm 1 build-check(1) blocked n/a test-arm64-arm64-xl 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit1 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit2 1 build-check(1) blocked n/a test-arm64-arm64-xl-thunderx 1 build-check(1) blocked n/a test-arm64-arm64-xl-vhd 1 build-check(1) blocked n/a test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a build-arm64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 180691 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 180691 test-armhf-armhf-libvirt 16 saverestore-support-check fail like 180691 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail like 180691 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop fail like 180691 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail like 180691 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 180691 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop fail like 180691 test-amd64-i386-xl-pvshim 14 guest-start fail never pass test-amd64-i386-libvirt 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-i386-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-credit2 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit2 16 saverestore-support-check fail never pass test-amd64-i386-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-libvirt 15 migrate-support-check fail never pass test-armhf-armhf-xl 15 migrate-support-check fail never pass test-armhf-armhf-xl 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 15 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 16 saverestore-support-check fail never pass test-armhf-armhf-xl-multivcpu 15 migrate-support-check fail never pass test-armhf-armhf-xl-multivcpu 16 saverestore-support-check fail never pass test-armhf-armhf-xl-arndale 15 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 15 saverestore-support-check fail never pass version targeted for testing: qemuu 848a6caa88b9f082c89c9b41afa975761262981d baseline version: qemuu 6972ef1440a9d685482d78672620a7482f2bd09a Last test of basis 180691 2023-05-17 10:45:22 Z 17 days Failing since 180699 2023-05-18 07:21:24 Z 16 days 59 attempts Testing same since 181131 2023-06-03 03:50:56 Z 1 days 3 attempts ------------------------------------------------------------ People who touched revisions under test: Afonso Bordado Akihiko Odaki Akihiro Suda Alex Bennée Alex Williamson Alexander Bulekov Alexander Graf Alistair Francis Ani Sinha Ani Sinha Anton Johansson BALATON Zoltan Bernhard Beschow Bin Meng Brian Cain Brice Goglin Camilla Conte Cindy Lu Clément Chigot Cornelia Huck Cédric Le Goater Cédric Le Goater Daniel Henrique Barboza Daniel P. Berrangé Daniil Kovalev David Hildenbrand Emanuele Giuseppe Esposito Enze Li Eric Auger Eric Blake Eric DeVolder Erico Nunes Eugenio Pérez Fabiano Rosas Fan Ni Fiona Ebner Francisco Iglesias Gavin Shan Gregory Price Gregory Price Hao Zeng Hawkins Jiawei Igor Mammedov Ira Weiny Jason Wang Jean-Philippe Brucker John Snow Jonathan Cameron Juan Quintela Kevin Wolf Laurent Vivier Lei Yang Leonardo Bras Maksim Davydov Marc-André Lureau Marcin Juszkiewicz Marco Liebel Mark Cave-Ayland Markus Armbruster Matheus Tavares Bernardino Mauro Matteo Cascella Michael S. Tsirkin Michael Tokarev Mostafa Saleh Nicholas Piggin Nicolas Saenz Julienne Palmer Dabbelt Paolo Bonzini Peter Maydell Peter Xu Philippe Mathieu-Daudé Raghu H Rene Engel Richard Henderson Richard Purdie Ricky Zhou Ryan Wendland Sebastian Ott Sergio Lopez Sid Manning Song Gao Stefan Hajnoczi Stefano Garzarella Steve Sistare Taylor Simpson Thomas Huth Thomas Weißschuh timothee.cocault@gmail.com Timothée Cocault Tommy Wu Viktor Prutyanov Vitaly Cheptsov Vivek Kasireddy Vladimir Sementsov-Ogievskiy Volker Rümelin Xinyu Li Zeng Hao Zhenyu Zhang Zhenzhong Duan jobs: build-amd64-xsm pass build-arm64-xsm fail build-i386-xsm pass build-amd64 pass build-arm64 fail build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt blocked build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl blocked test-armhf-armhf-xl fail test-amd64-i386-xl pass test-amd64-coresched-i386-xl pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm fail test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm fail test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-i386-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm fail test-arm64-arm64-libvirt-xsm blocked test-amd64-i386-libvirt-xsm fail test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm blocked test-amd64-i386-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-i386-qemuu-rhel6hvm-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-freebsd10-amd64 pass test-amd64-amd64-qemuu-freebsd11-amd64 pass test-amd64-amd64-qemuu-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-i386-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-amd64-i386-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 blocked test-armhf-armhf-xl-credit1 pass test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 blocked test-armhf-armhf-xl-credit2 pass test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-i386-freebsd10-i386 pass test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-i386-qemuu-rhel6hvm-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt fail test-armhf-armhf-libvirt fail test-amd64-i386-libvirt fail test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu pass test-amd64-amd64-pair pass test-amd64-i386-pair pass test-amd64-amd64-libvirt-pair fail test-amd64-i386-libvirt-pair fail test-amd64-amd64-xl-pvshim pass test-amd64-i386-xl-pvshim fail test-amd64-amd64-pygrub pass test-armhf-armhf-libvirt-qcow2 fail test-amd64-amd64-xl-qcow2 fail test-arm64-arm64-libvirt-raw blocked test-armhf-armhf-libvirt-raw fail test-amd64-i386-libvirt-raw fail test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds pass test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-amd64-i386-xl-shadow pass test-arm64-arm64-xl-thunderx blocked test-amd64-amd64-libvirt-vhd fail test-arm64-arm64-xl-vhd blocked test-armhf-armhf-xl-vhd fail test-amd64-i386-xl-vhd fail ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 12540 lines long.) From xen-devel-bounces@lists.xenproject.org Sun Jun 04 10:19:52 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sun, 04 Jun 2023 10:19:52 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543406.848363 (Exim 4.92) (envelope-from ) id 1q5kpi-0003vV-A6; Sun, 04 Jun 2023 10:19:34 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543406.848363; Sun, 04 Jun 2023 10:19:34 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q5kpi-0003vO-7L; Sun, 04 Jun 2023 10:19:34 +0000 Received: by outflank-mailman (input) for mailman id 543406; Sun, 04 Jun 2023 10:19:32 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q5kpg-0003vE-IF; Sun, 04 Jun 2023 10:19:32 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q5kpg-0007U2-7u; Sun, 04 Jun 2023 10:19:32 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q5kpf-00020p-Se; Sun, 04 Jun 2023 10:19:31 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q5kpf-0008Pz-SK; Sun, 04 Jun 2023 10:19:31 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=GFZRY3BLeVucaKdHLthPAcEywAn8ScBeky6SQary9Bs=; b=m7Le8FcfJDXjLwAakq8fjaGL68 hUFMoNF+SAO6xE0HGlTTR43PwIbmUVgj8RoIB8SdhLb5ZN6rK4OHBrrttkAO94eD8T5SS+uuaSLR8 gNyShyc9fs/oO6fsq4YXEmsPJ/90U/0TnutsRmAsfN5nZGqeIANX32EA4s7EV0TFNyxA=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable test] 181154: tolerable FAIL X-Osstest-Failures: xen-unstable:test-amd64-i386-qemuu-rhel6hvm-amd:xen-install:fail:heisenbug xen-unstable:test-amd64-i386-qemut-rhel6hvm-amd:xen-install:fail:heisenbug xen-unstable:test-amd64-amd64-pygrub:guest-localmigrate/x10:fail:heisenbug xen-unstable:test-amd64-i386-xl-vhd:guest-start.2:fail:heisenbug xen-unstable:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:xen-install:fail:heisenbug xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking X-Osstest-Versions-This: xen=67fdffef9246c82cecd8db28838ed09e79e2528a X-Osstest-Versions-That: xen=67fdffef9246c82cecd8db28838ed09e79e2528a From: osstest service owner Date: Sun, 04 Jun 2023 10:19:31 +0000 flight 181154 xen-unstable real [real] http://logs.test-lab.xenproject.org/osstest/logs/181154/ Failures :-/ but no regressions. Tests which are failing intermittently (not blocking): test-amd64-i386-qemuu-rhel6hvm-amd 7 xen-install fail in 181137 pass in 181154 test-amd64-i386-qemut-rhel6hvm-amd 7 xen-install fail in 181137 pass in 181154 test-amd64-amd64-pygrub 19 guest-localmigrate/x10 fail in 181137 pass in 181154 test-amd64-i386-xl-vhd 22 guest-start.2 fail in 181137 pass in 181154 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 7 xen-install fail pass in 181137 Tests which did not succeed, but are not blocking: test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 181137 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop fail like 181137 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 181137 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 181137 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop fail like 181137 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop fail like 181137 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail like 181137 test-armhf-armhf-libvirt 16 saverestore-support-check fail like 181137 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail like 181137 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 181137 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop fail like 181137 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 181137 test-amd64-i386-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-i386-xl-pvshim 14 guest-start fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-armhf-armhf-xl-multivcpu 15 migrate-support-check fail never pass test-armhf-armhf-xl-multivcpu 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-armhf-armhf-xl 15 migrate-support-check fail never pass test-armhf-armhf-xl 16 saverestore-support-check fail never pass test-amd64-i386-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass test-amd64-i386-libvirt 15 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 15 saverestore-support-check fail never pass test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail never pass test-armhf-armhf-xl-credit2 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit2 16 saverestore-support-check fail never pass test-armhf-armhf-xl-arndale 15 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt 15 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 15 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt-raw 14 migrate-support-check fail never pass version targeted for testing: xen 67fdffef9246c82cecd8db28838ed09e79e2528a baseline version: xen 67fdffef9246c82cecd8db28838ed09e79e2528a Last test of basis 181154 2023-06-04 02:05:06 Z 0 days Testing same since (not found) 0 attempts jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64-xtf pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-prev pass build-i386-prev pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-xtf-amd64-amd64-1 pass test-xtf-amd64-amd64-2 pass test-xtf-amd64-amd64-3 pass test-xtf-amd64-amd64-4 pass test-xtf-amd64-amd64-5 pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl pass test-amd64-i386-xl pass test-amd64-coresched-i386-xl pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-i386-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-i386-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-i386-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-i386-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-i386-qemut-rhel6hvm-amd pass test-amd64-i386-qemuu-rhel6hvm-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-i386-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-freebsd10-amd64 pass test-amd64-amd64-qemuu-freebsd11-amd64 pass test-amd64-amd64-qemuu-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-i386-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-i386-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-i386-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-amd64-i386-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale pass test-amd64-amd64-examine-bios pass test-amd64-i386-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 pass test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 pass test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict fail test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine pass test-amd64-i386-examine pass test-amd64-i386-freebsd10-i386 pass test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-i386-qemut-rhel6hvm-intel pass test-amd64-i386-qemuu-rhel6hvm-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt pass test-amd64-i386-libvirt pass test-amd64-amd64-livepatch pass test-amd64-i386-livepatch pass test-amd64-amd64-migrupgrade pass test-amd64-i386-migrupgrade pass test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu pass test-amd64-amd64-pair pass test-amd64-i386-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-i386-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-i386-xl-pvshim fail test-amd64-amd64-pygrub pass test-armhf-armhf-libvirt-qcow2 pass test-amd64-amd64-xl-qcow2 pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw pass test-amd64-i386-libvirt-raw pass test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds pass test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-amd64-i386-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-i386-examine-uefi pass test-amd64-amd64-libvirt-vhd pass test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd pass test-amd64-i386-xl-vhd pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Published tested tree is already up to date. From xen-devel-bounces@lists.xenproject.org Sun Jun 04 14:51:17 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sun, 04 Jun 2023 14:51:17 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543419.848391 (Exim 4.92) (envelope-from ) id 1q5p4O-0005tJ-8F; Sun, 04 Jun 2023 14:51:00 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543419.848391; Sun, 04 Jun 2023 14:51:00 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q5p4O-0005tC-5N; Sun, 04 Jun 2023 14:51:00 +0000 Received: by outflank-mailman (input) for mailman id 543419; Sun, 04 Jun 2023 14:50:58 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q5p4M-0005t2-Rr; Sun, 04 Jun 2023 14:50:58 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q5p4M-0005EX-Jo; Sun, 04 Jun 2023 14:50:58 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q5p4M-0003Eu-4s; Sun, 04 Jun 2023 14:50:58 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q5p4M-00035u-4Q; Sun, 04 Jun 2023 14:50:58 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=ifDdRgwYm24v0BkGQ5EQCDoO5fuGtTet41drj5TlpyM=; b=q3Lf4NmVaD/cm6q82Hqai3Zf39 r+12uEtRvV9TAZyStVF82i7bb/542ghDil41m4o52THuzBP/j+TpN2zdAoBeS40UOnmkomD/mcrn8 mxdyhzMz6w6mDLF8BWtqi33MkMOJ5UXisx5CUDKoPCNLAjCbxBChe4uCVMx2ayL8xzoE=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [linux-linus test] 181157: regressions - FAIL X-Osstest-Failures: linux-linus:test-armhf-armhf-xl-credit1:xen-boot:fail:regression linux-linus:test-armhf-armhf-examine:reboot:fail:nonblocking linux-linus:test-armhf-armhf-xl-multivcpu:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-arndale:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking linux-linus:test-armhf-armhf-xl-credit2:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking linux-linus:test-armhf-armhf-libvirt:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-raw:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-qcow2:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-vhd:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-rtds:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-qcow2:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-raw:migrate-support-check:fail:nonblocking X-Osstest-Versions-This: linux=e5282a7d8f6b604f2bb6a06457734b8cf1e2f8f2 X-Osstest-Versions-That: linux=6c538e1adbfc696ac4747fb10d63e704344f763d From: osstest service owner Date: Sun, 04 Jun 2023 14:50:58 +0000 flight 181157 linux-linus real [real] flight 181164 linux-linus real-retest [real] http://logs.test-lab.xenproject.org/osstest/logs/181157/ http://logs.test-lab.xenproject.org/osstest/logs/181164/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: test-armhf-armhf-xl-credit1 8 xen-boot fail REGR. vs. 180278 Tests which did not succeed, but are not blocking: test-armhf-armhf-examine 8 reboot fail like 180278 test-armhf-armhf-xl-multivcpu 8 xen-boot fail like 180278 test-armhf-armhf-xl-arndale 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 180278 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 180278 test-armhf-armhf-xl-credit2 8 xen-boot fail like 180278 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 180278 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 180278 test-armhf-armhf-libvirt 8 xen-boot fail like 180278 test-armhf-armhf-libvirt-raw 8 xen-boot fail like 180278 test-armhf-armhf-libvirt-qcow2 8 xen-boot fail like 180278 test-armhf-armhf-xl 8 xen-boot fail like 180278 test-armhf-armhf-xl-vhd 8 xen-boot fail like 180278 test-armhf-armhf-xl-rtds 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 180278 test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qcow2 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass test-amd64-amd64-libvirt-raw 14 migrate-support-check fail never pass version targeted for testing: linux e5282a7d8f6b604f2bb6a06457734b8cf1e2f8f2 baseline version: linux 6c538e1adbfc696ac4747fb10d63e704344f763d Last test of basis 180278 2023-04-16 19:41:46 Z 48 days Failing since 180281 2023-04-17 06:24:36 Z 48 days 91 attempts Testing same since 181147 2023-06-03 18:40:28 Z 0 days 2 attempts ------------------------------------------------------------ 2605 people touched revisions under test, not listing them all jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl fail test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-freebsd11-amd64 pass test-amd64-amd64-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale fail test-amd64-amd64-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 fail test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 fail test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine fail test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt fail test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu fail test-amd64-amd64-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-amd64-pygrub pass test-amd64-amd64-libvirt-qcow2 pass test-armhf-armhf-libvirt-qcow2 fail test-amd64-amd64-libvirt-raw pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw fail test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds fail test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-amd64-xl-vhd pass test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd fail ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 329632 lines long.) From xen-devel-bounces@lists.xenproject.org Sun Jun 04 16:03:31 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sun, 04 Jun 2023 16:03:31 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543427.848408 (Exim 4.92) (envelope-from ) id 1q5qCI-0005Zv-I4; Sun, 04 Jun 2023 16:03:14 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543427.848408; Sun, 04 Jun 2023 16:03:14 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q5qCI-0005Zo-F8; Sun, 04 Jun 2023 16:03:14 +0000 Received: by outflank-mailman (input) for mailman id 543427; Sun, 04 Jun 2023 16:03:13 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q5qCH-0005Ze-Co; Sun, 04 Jun 2023 16:03:13 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q5qCH-0007Mh-6M; Sun, 04 Jun 2023 16:03:13 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q5qCG-0004qq-Q3; Sun, 04 Jun 2023 16:03:12 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q5qCG-00029F-PZ; Sun, 04 Jun 2023 16:03:12 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=6hu2OrSd3tKuPOw/rN22LMI/sWJjv0QzWYt6BO6CqEU=; b=RJlMe12M1r28rDAimhKanHNn6a BArQBnI7dC+FJXSFRUVIpGJ3MTWjfelW9DIGkP9Z6WN5yvNsZcwubfjthpY6VGlkMt1EH7Igq1Z0o 6Eyz8LD1P+txVfXXIcIFmJGLEHWs6aMWjezQoF3ETQOwynRvwyYZbSZ7STnfTsN4+K+g=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [qemu-mainline test] 181159: regressions - FAIL X-Osstest-Failures: qemu-mainline:test-amd64-amd64-libvirt-pair:leak-check/check/src_host:fail:regression qemu-mainline:test-amd64-amd64-libvirt-pair:leak-check/check/dst_host:fail:regression qemu-mainline:test-amd64-i386-libvirt:leak-check/check:fail:regression qemu-mainline:test-amd64-amd64-libvirt-xsm:leak-check/check:fail:regression qemu-mainline:build-arm64-xsm:xen-build:fail:regression qemu-mainline:build-arm64:xen-build:fail:regression qemu-mainline:test-amd64-amd64-libvirt:leak-check/check:fail:regression qemu-mainline:test-amd64-i386-libvirt-xsm:leak-check/check:fail:regression qemu-mainline:test-amd64-i386-libvirt-pair:leak-check/check/src_host:fail:regression qemu-mainline:test-amd64-i386-libvirt-pair:leak-check/check/dst_host:fail:regression qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:leak-check/check:fail:regression qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:leak-check/check:fail:regression qemu-mainline:test-amd64-amd64-libvirt-vhd:leak-check/check:fail:regression qemu-mainline:test-amd64-i386-xl-vhd:leak-check/check:fail:regression qemu-mainline:test-amd64-i386-libvirt-raw:leak-check/check:fail:regression qemu-mainline:test-amd64-amd64-xl-qcow2:leak-check/check:fail:regression qemu-mainline:test-armhf-armhf-libvirt:leak-check/check:fail:regression qemu-mainline:test-armhf-armhf-libvirt-qcow2:leak-check/check:fail:regression qemu-mainline:test-armhf-armhf-libvirt-raw:leak-check/check:fail:regression qemu-mainline:test-armhf-armhf-xl-vhd:leak-check/check:fail:regression qemu-mainline:test-amd64-i386-xl-vhd:guest-start/debian.repeat:fail:heisenbug qemu-mainline:test-amd64-amd64-xl-qcow2:guest-start/debian.repeat:fail:heisenbug qemu-mainline:test-armhf-armhf-xl:guest-start/debian.repeat:fail:heisenbug qemu-mainline:test-amd64-coresched-amd64-xl:guest-start:fail:heisenbug qemu-mainline:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:build-arm64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking qemu-mainline:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking qemu-mainline:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking qemu-mainline:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking qemu-mainline:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking qemu-mainline:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking qemu-mainline:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking qemu-mainline:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking qemu-mainline:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking qemu-mainline:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: qemuu=848a6caa88b9f082c89c9b41afa975761262981d X-Osstest-Versions-That: qemuu=6972ef1440a9d685482d78672620a7482f2bd09a From: osstest service owner Date: Sun, 04 Jun 2023 16:03:12 +0000 flight 181159 qemu-mainline real [real] http://logs.test-lab.xenproject.org/osstest/logs/181159/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: test-amd64-amd64-libvirt-pair 30 leak-check/check/src_host fail REGR. vs. 180691 test-amd64-amd64-libvirt-pair 31 leak-check/check/dst_host fail REGR. vs. 180691 test-amd64-i386-libvirt 23 leak-check/check fail REGR. vs. 180691 test-amd64-amd64-libvirt-xsm 23 leak-check/check fail REGR. vs. 180691 build-arm64-xsm 6 xen-build fail REGR. vs. 180691 build-arm64 6 xen-build fail REGR. vs. 180691 test-amd64-amd64-libvirt 23 leak-check/check fail REGR. vs. 180691 test-amd64-i386-libvirt-xsm 23 leak-check/check fail REGR. vs. 180691 test-amd64-i386-libvirt-pair 30 leak-check/check/src_host fail REGR. vs. 180691 test-amd64-i386-libvirt-pair 31 leak-check/check/dst_host fail REGR. vs. 180691 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 21 leak-check/check fail REGR. vs. 180691 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 21 leak-check/check fail REGR. vs. 180691 test-amd64-amd64-libvirt-vhd 22 leak-check/check fail REGR. vs. 180691 test-amd64-i386-xl-vhd 24 leak-check/check fail REGR. vs. 180691 test-amd64-i386-libvirt-raw 22 leak-check/check fail REGR. vs. 180691 test-amd64-amd64-xl-qcow2 24 leak-check/check fail REGR. vs. 180691 test-armhf-armhf-libvirt 21 leak-check/check fail REGR. vs. 180691 test-armhf-armhf-libvirt-qcow2 20 leak-check/check fail REGR. vs. 180691 test-armhf-armhf-libvirt-raw 20 leak-check/check fail REGR. vs. 180691 test-armhf-armhf-xl-vhd 20 leak-check/check fail REGR. vs. 180691 Tests which are failing intermittently (not blocking): test-amd64-i386-xl-vhd 21 guest-start/debian.repeat fail in 181151 pass in 181159 test-amd64-amd64-xl-qcow2 21 guest-start/debian.repeat fail in 181151 pass in 181159 test-armhf-armhf-xl 18 guest-start/debian.repeat fail in 181151 pass in 181159 test-amd64-coresched-amd64-xl 14 guest-start fail pass in 181151 Tests which did not succeed, but are not blocking: test-arm64-arm64-libvirt-raw 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-xsm 1 build-check(1) blocked n/a test-arm64-arm64-xl 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit1 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit2 1 build-check(1) blocked n/a test-arm64-arm64-xl-thunderx 1 build-check(1) blocked n/a test-arm64-arm64-xl-vhd 1 build-check(1) blocked n/a test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a build-arm64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 180691 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 180691 test-armhf-armhf-libvirt 16 saverestore-support-check fail like 180691 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail like 180691 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop fail like 180691 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail like 180691 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 180691 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop fail like 180691 test-amd64-i386-xl-pvshim 14 guest-start fail never pass test-amd64-i386-libvirt 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-i386-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-credit2 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit2 16 saverestore-support-check fail never pass test-amd64-i386-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-libvirt 15 migrate-support-check fail never pass test-armhf-armhf-xl 15 migrate-support-check fail never pass test-armhf-armhf-xl 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 15 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 16 saverestore-support-check fail never pass test-armhf-armhf-xl-multivcpu 15 migrate-support-check fail never pass test-armhf-armhf-xl-multivcpu 16 saverestore-support-check fail never pass test-armhf-armhf-xl-arndale 15 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 15 saverestore-support-check fail never pass version targeted for testing: qemuu 848a6caa88b9f082c89c9b41afa975761262981d baseline version: qemuu 6972ef1440a9d685482d78672620a7482f2bd09a Last test of basis 180691 2023-05-17 10:45:22 Z 18 days Failing since 180699 2023-05-18 07:21:24 Z 17 days 60 attempts Testing same since 181131 2023-06-03 03:50:56 Z 1 days 4 attempts ------------------------------------------------------------ People who touched revisions under test: Afonso Bordado Akihiko Odaki Akihiro Suda Alex Bennée Alex Williamson Alexander Bulekov Alexander Graf Alistair Francis Ani Sinha Ani Sinha Anton Johansson BALATON Zoltan Bernhard Beschow Bin Meng Brian Cain Brice Goglin Camilla Conte Cindy Lu Clément Chigot Cornelia Huck Cédric Le Goater Cédric Le Goater Daniel Henrique Barboza Daniel P. Berrangé Daniil Kovalev David Hildenbrand Emanuele Giuseppe Esposito Enze Li Eric Auger Eric Blake Eric DeVolder Erico Nunes Eugenio Pérez Fabiano Rosas Fan Ni Fiona Ebner Francisco Iglesias Gavin Shan Gregory Price Gregory Price Hao Zeng Hawkins Jiawei Igor Mammedov Ira Weiny Jason Wang Jean-Philippe Brucker John Snow Jonathan Cameron Juan Quintela Kevin Wolf Laurent Vivier Lei Yang Leonardo Bras Maksim Davydov Marc-André Lureau Marcin Juszkiewicz Marco Liebel Mark Cave-Ayland Markus Armbruster Matheus Tavares Bernardino Mauro Matteo Cascella Michael S. Tsirkin Michael Tokarev Mostafa Saleh Nicholas Piggin Nicolas Saenz Julienne Palmer Dabbelt Paolo Bonzini Peter Maydell Peter Xu Philippe Mathieu-Daudé Raghu H Rene Engel Richard Henderson Richard Purdie Ricky Zhou Ryan Wendland Sebastian Ott Sergio Lopez Sid Manning Song Gao Stefan Hajnoczi Stefano Garzarella Steve Sistare Taylor Simpson Thomas Huth Thomas Weißschuh timothee.cocault@gmail.com Timothée Cocault Tommy Wu Viktor Prutyanov Vitaly Cheptsov Vivek Kasireddy Vladimir Sementsov-Ogievskiy Volker Rümelin Xinyu Li Zeng Hao Zhenyu Zhang Zhenzhong Duan jobs: build-amd64-xsm pass build-arm64-xsm fail build-i386-xsm pass build-amd64 pass build-arm64 fail build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt blocked build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl fail test-arm64-arm64-xl blocked test-armhf-armhf-xl pass test-amd64-i386-xl pass test-amd64-coresched-i386-xl pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm fail test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm fail test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-i386-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm fail test-arm64-arm64-libvirt-xsm blocked test-amd64-i386-libvirt-xsm fail test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm blocked test-amd64-i386-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-i386-qemuu-rhel6hvm-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-freebsd10-amd64 pass test-amd64-amd64-qemuu-freebsd11-amd64 pass test-amd64-amd64-qemuu-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-i386-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-amd64-i386-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 blocked test-armhf-armhf-xl-credit1 pass test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 blocked test-armhf-armhf-xl-credit2 pass test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-i386-freebsd10-i386 pass test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-i386-qemuu-rhel6hvm-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt fail test-armhf-armhf-libvirt fail test-amd64-i386-libvirt fail test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu pass test-amd64-amd64-pair pass test-amd64-i386-pair pass test-amd64-amd64-libvirt-pair fail test-amd64-i386-libvirt-pair fail test-amd64-amd64-xl-pvshim pass test-amd64-i386-xl-pvshim fail test-amd64-amd64-pygrub pass test-armhf-armhf-libvirt-qcow2 fail test-amd64-amd64-xl-qcow2 fail test-arm64-arm64-libvirt-raw blocked test-armhf-armhf-libvirt-raw fail test-amd64-i386-libvirt-raw fail test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds pass test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-amd64-i386-xl-shadow pass test-arm64-arm64-xl-thunderx blocked test-amd64-amd64-libvirt-vhd fail test-arm64-arm64-xl-vhd blocked test-armhf-armhf-xl-vhd fail test-amd64-i386-xl-vhd fail ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 12540 lines long.) From xen-devel-bounces@lists.xenproject.org Sun Jun 04 22:51:14 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sun, 04 Jun 2023 22:51:14 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543444.848443 (Exim 4.92) (envelope-from ) id 1q5wYn-0005KC-Ve; Sun, 04 Jun 2023 22:50:53 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543444.848443; Sun, 04 Jun 2023 22:50:53 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q5wYn-0005K5-QI; Sun, 04 Jun 2023 22:50:53 +0000 Received: by outflank-mailman (input) for mailman id 543444; Sun, 04 Jun 2023 22:50:52 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q5wYm-0005Jv-9a; Sun, 04 Jun 2023 22:50:52 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q5wYm-0008Bb-22; Sun, 04 Jun 2023 22:50:52 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q5wYl-0005dC-Ld; Sun, 04 Jun 2023 22:50:51 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q5wYl-0007qB-L7; Sun, 04 Jun 2023 22:50:51 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=GWtT4B0gSFGmLzZPC8/VelGr0yvMy91POnlSD54AWIg=; b=A+OlY6SESVOt2uBbS49tAWDV/S UacQ4YMjTK8ihqiRyPYCmGpL7EUFnl+JVGUQymnwh7u7C2kAK74/FKaUFtx/oKxV6bfdKod9oLUOL /CCFVqJK5S9uLGoWMa63QuBOBR9VQrx6GnslbGcE4YGhjHOg0cc15q+7HPIPivRLOf7E=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [linux-linus test] 181167: regressions - FAIL X-Osstest-Failures: linux-linus:test-armhf-armhf-xl-credit1:xen-boot:fail:regression linux-linus:test-armhf-armhf-examine:reboot:fail:nonblocking linux-linus:test-armhf-armhf-xl-multivcpu:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-arndale:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking linux-linus:test-armhf-armhf-xl-credit2:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking linux-linus:test-armhf-armhf-libvirt:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-raw:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-qcow2:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-vhd:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-rtds:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-qcow2:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-raw:migrate-support-check:fail:nonblocking X-Osstest-Versions-This: linux=5e89d62ec1014800e411868b8d750f9d631bdd01 X-Osstest-Versions-That: linux=6c538e1adbfc696ac4747fb10d63e704344f763d From: osstest service owner Date: Sun, 04 Jun 2023 22:50:51 +0000 flight 181167 linux-linus real [real] flight 181172 linux-linus real-retest [real] http://logs.test-lab.xenproject.org/osstest/logs/181167/ http://logs.test-lab.xenproject.org/osstest/logs/181172/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: test-armhf-armhf-xl-credit1 8 xen-boot fail REGR. vs. 180278 Tests which did not succeed, but are not blocking: test-armhf-armhf-examine 8 reboot fail like 180278 test-armhf-armhf-xl-multivcpu 8 xen-boot fail like 180278 test-armhf-armhf-xl-arndale 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 180278 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 180278 test-armhf-armhf-xl-credit2 8 xen-boot fail like 180278 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 180278 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 180278 test-armhf-armhf-libvirt 8 xen-boot fail like 180278 test-armhf-armhf-libvirt-raw 8 xen-boot fail like 180278 test-armhf-armhf-libvirt-qcow2 8 xen-boot fail like 180278 test-armhf-armhf-xl 8 xen-boot fail like 180278 test-armhf-armhf-xl-vhd 8 xen-boot fail like 180278 test-armhf-armhf-xl-rtds 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 180278 test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qcow2 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass test-amd64-amd64-libvirt-raw 14 migrate-support-check fail never pass version targeted for testing: linux 5e89d62ec1014800e411868b8d750f9d631bdd01 baseline version: linux 6c538e1adbfc696ac4747fb10d63e704344f763d Last test of basis 180278 2023-04-16 19:41:46 Z 49 days Failing since 180281 2023-04-17 06:24:36 Z 48 days 92 attempts Testing same since 181167 2023-06-04 15:10:32 Z 0 days 1 attempts ------------------------------------------------------------ 2627 people touched revisions under test, not listing them all jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl fail test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-freebsd11-amd64 pass test-amd64-amd64-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale fail test-amd64-amd64-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 fail test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 fail test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine fail test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt fail test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu fail test-amd64-amd64-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-amd64-pygrub pass test-amd64-amd64-libvirt-qcow2 pass test-armhf-armhf-libvirt-qcow2 fail test-amd64-amd64-libvirt-raw pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw fail test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds fail test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-amd64-xl-vhd pass test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd fail ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 332247 lines long.) From xen-devel-bounces@lists.xenproject.org Mon Jun 05 00:16:15 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 05 Jun 2023 00:16:15 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543453.848458 (Exim 4.92) (envelope-from ) id 1q5xtA-0005os-F5; Mon, 05 Jun 2023 00:16:00 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543453.848458; Mon, 05 Jun 2023 00:16:00 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q5xtA-0005ol-Ai; Mon, 05 Jun 2023 00:16:00 +0000 Received: by outflank-mailman (input) for mailman id 543453; Mon, 05 Jun 2023 00:15:59 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q5xt9-0005ob-2J; Mon, 05 Jun 2023 00:15:59 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q5xt8-0002Ef-SD; Mon, 05 Jun 2023 00:15:58 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q5xt8-0000Gk-BB; Mon, 05 Jun 2023 00:15:58 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q5xt8-0007so-Am; Mon, 05 Jun 2023 00:15:58 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=InXKR9UgiPcnURJjx2PaNruBxUvnLS1/liIEz1DOlbs=; b=HT/I9d9SC1aibkhjniv46QQe9d AMZUaHWsiCF4J4NzG4slaNRbEnhxDTrfmo263SzWXiId2x0ykpjlJzBMcQhYTtNGTY5tLxbu+ad/X QX8/OOQ6mEvhMu759QV8+sRraFeZ5D7pawMKVwhYq4GaObo4LGgTc7DWcU/5KC5krya8=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [qemu-mainline test] 181168: regressions - FAIL X-Osstest-Failures: qemu-mainline:test-amd64-amd64-libvirt-pair:leak-check/check/src_host:fail:regression qemu-mainline:test-amd64-amd64-libvirt-pair:leak-check/check/dst_host:fail:regression qemu-mainline:test-amd64-i386-libvirt:leak-check/check:fail:regression qemu-mainline:test-amd64-amd64-libvirt-xsm:leak-check/check:fail:regression qemu-mainline:build-arm64-xsm:xen-build:fail:regression qemu-mainline:build-arm64:xen-build:fail:regression qemu-mainline:test-amd64-amd64-libvirt:leak-check/check:fail:regression qemu-mainline:test-amd64-i386-libvirt-xsm:leak-check/check:fail:regression qemu-mainline:test-amd64-i386-libvirt-pair:leak-check/check/src_host:fail:regression qemu-mainline:test-amd64-i386-libvirt-pair:leak-check/check/dst_host:fail:regression qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:leak-check/check:fail:regression qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:leak-check/check:fail:regression qemu-mainline:test-amd64-amd64-libvirt-vhd:leak-check/check:fail:regression qemu-mainline:test-amd64-i386-xl-vhd:leak-check/check:fail:regression qemu-mainline:test-amd64-i386-libvirt-raw:leak-check/check:fail:regression qemu-mainline:test-armhf-armhf-libvirt:leak-check/check:fail:regression qemu-mainline:test-armhf-armhf-libvirt-qcow2:leak-check/check:fail:regression qemu-mainline:test-armhf-armhf-libvirt-raw:leak-check/check:fail:regression qemu-mainline:test-armhf-armhf-xl-vhd:leak-check/check:fail:regression qemu-mainline:test-amd64-amd64-xl-qcow2:leak-check/check:fail:regression qemu-mainline:test-amd64-coresched-amd64-xl:guest-start:fail:heisenbug qemu-mainline:test-amd64-amd64-xl-qcow2:guest-start/debian.repeat:fail:heisenbug qemu-mainline:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:build-arm64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking qemu-mainline:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking qemu-mainline:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking qemu-mainline:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking qemu-mainline:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking qemu-mainline:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking qemu-mainline:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking qemu-mainline:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking qemu-mainline:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking qemu-mainline:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: qemuu=848a6caa88b9f082c89c9b41afa975761262981d X-Osstest-Versions-That: qemuu=6972ef1440a9d685482d78672620a7482f2bd09a From: osstest service owner Date: Mon, 05 Jun 2023 00:15:58 +0000 flight 181168 qemu-mainline real [real] http://logs.test-lab.xenproject.org/osstest/logs/181168/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: test-amd64-amd64-libvirt-pair 30 leak-check/check/src_host fail REGR. vs. 180691 test-amd64-amd64-libvirt-pair 31 leak-check/check/dst_host fail REGR. vs. 180691 test-amd64-i386-libvirt 23 leak-check/check fail REGR. vs. 180691 test-amd64-amd64-libvirt-xsm 23 leak-check/check fail REGR. vs. 180691 build-arm64-xsm 6 xen-build fail REGR. vs. 180691 build-arm64 6 xen-build fail REGR. vs. 180691 test-amd64-amd64-libvirt 23 leak-check/check fail REGR. vs. 180691 test-amd64-i386-libvirt-xsm 23 leak-check/check fail REGR. vs. 180691 test-amd64-i386-libvirt-pair 30 leak-check/check/src_host fail REGR. vs. 180691 test-amd64-i386-libvirt-pair 31 leak-check/check/dst_host fail REGR. vs. 180691 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 21 leak-check/check fail REGR. vs. 180691 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 21 leak-check/check fail REGR. vs. 180691 test-amd64-amd64-libvirt-vhd 22 leak-check/check fail REGR. vs. 180691 test-amd64-i386-xl-vhd 24 leak-check/check fail REGR. vs. 180691 test-amd64-i386-libvirt-raw 22 leak-check/check fail REGR. vs. 180691 test-armhf-armhf-libvirt 21 leak-check/check fail REGR. vs. 180691 test-armhf-armhf-libvirt-qcow2 20 leak-check/check fail REGR. vs. 180691 test-armhf-armhf-libvirt-raw 20 leak-check/check fail REGR. vs. 180691 test-armhf-armhf-xl-vhd 20 leak-check/check fail REGR. vs. 180691 test-amd64-amd64-xl-qcow2 24 leak-check/check fail in 181159 REGR. vs. 180691 Tests which are failing intermittently (not blocking): test-amd64-coresched-amd64-xl 14 guest-start fail in 181159 pass in 181168 test-amd64-amd64-xl-qcow2 21 guest-start/debian.repeat fail pass in 181159 Tests which did not succeed, but are not blocking: test-arm64-arm64-libvirt-raw 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-xsm 1 build-check(1) blocked n/a test-arm64-arm64-xl 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit1 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit2 1 build-check(1) blocked n/a test-arm64-arm64-xl-thunderx 1 build-check(1) blocked n/a test-arm64-arm64-xl-vhd 1 build-check(1) blocked n/a test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a build-arm64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 180691 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 180691 test-armhf-armhf-libvirt 16 saverestore-support-check fail like 180691 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail like 180691 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop fail like 180691 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail like 180691 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 180691 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop fail like 180691 test-amd64-i386-xl-pvshim 14 guest-start fail never pass test-amd64-i386-libvirt 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-i386-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-credit2 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit2 16 saverestore-support-check fail never pass test-amd64-i386-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-libvirt 15 migrate-support-check fail never pass test-armhf-armhf-xl 15 migrate-support-check fail never pass test-armhf-armhf-xl 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 15 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 16 saverestore-support-check fail never pass test-armhf-armhf-xl-multivcpu 15 migrate-support-check fail never pass test-armhf-armhf-xl-multivcpu 16 saverestore-support-check fail never pass test-armhf-armhf-xl-arndale 15 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 15 saverestore-support-check fail never pass version targeted for testing: qemuu 848a6caa88b9f082c89c9b41afa975761262981d baseline version: qemuu 6972ef1440a9d685482d78672620a7482f2bd09a Last test of basis 180691 2023-05-17 10:45:22 Z 18 days Failing since 180699 2023-05-18 07:21:24 Z 17 days 61 attempts Testing same since 181131 2023-06-03 03:50:56 Z 1 days 5 attempts ------------------------------------------------------------ People who touched revisions under test: Afonso Bordado Akihiko Odaki Akihiro Suda Alex Bennée Alex Williamson Alexander Bulekov Alexander Graf Alistair Francis Ani Sinha Ani Sinha Anton Johansson BALATON Zoltan Bernhard Beschow Bin Meng Brian Cain Brice Goglin Camilla Conte Cindy Lu Clément Chigot Cornelia Huck Cédric Le Goater Cédric Le Goater Daniel Henrique Barboza Daniel P. Berrangé Daniil Kovalev David Hildenbrand Emanuele Giuseppe Esposito Enze Li Eric Auger Eric Blake Eric DeVolder Erico Nunes Eugenio Pérez Fabiano Rosas Fan Ni Fiona Ebner Francisco Iglesias Gavin Shan Gregory Price Gregory Price Hao Zeng Hawkins Jiawei Igor Mammedov Ira Weiny Jason Wang Jean-Philippe Brucker John Snow Jonathan Cameron Juan Quintela Kevin Wolf Laurent Vivier Lei Yang Leonardo Bras Maksim Davydov Marc-André Lureau Marcin Juszkiewicz Marco Liebel Mark Cave-Ayland Markus Armbruster Matheus Tavares Bernardino Mauro Matteo Cascella Michael S. Tsirkin Michael Tokarev Mostafa Saleh Nicholas Piggin Nicolas Saenz Julienne Palmer Dabbelt Paolo Bonzini Peter Maydell Peter Xu Philippe Mathieu-Daudé Raghu H Rene Engel Richard Henderson Richard Purdie Ricky Zhou Ryan Wendland Sebastian Ott Sergio Lopez Sid Manning Song Gao Stefan Hajnoczi Stefano Garzarella Steve Sistare Taylor Simpson Thomas Huth Thomas Weißschuh timothee.cocault@gmail.com Timothée Cocault Tommy Wu Viktor Prutyanov Vitaly Cheptsov Vivek Kasireddy Vladimir Sementsov-Ogievskiy Volker Rümelin Xinyu Li Zeng Hao Zhenyu Zhang Zhenzhong Duan jobs: build-amd64-xsm pass build-arm64-xsm fail build-i386-xsm pass build-amd64 pass build-arm64 fail build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt blocked build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl blocked test-armhf-armhf-xl pass test-amd64-i386-xl pass test-amd64-coresched-i386-xl pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm fail test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm fail test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-i386-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm fail test-arm64-arm64-libvirt-xsm blocked test-amd64-i386-libvirt-xsm fail test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm blocked test-amd64-i386-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-i386-qemuu-rhel6hvm-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-freebsd10-amd64 pass test-amd64-amd64-qemuu-freebsd11-amd64 pass test-amd64-amd64-qemuu-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-i386-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-amd64-i386-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 blocked test-armhf-armhf-xl-credit1 pass test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 blocked test-armhf-armhf-xl-credit2 pass test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-i386-freebsd10-i386 pass test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-i386-qemuu-rhel6hvm-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt fail test-armhf-armhf-libvirt fail test-amd64-i386-libvirt fail test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu pass test-amd64-amd64-pair pass test-amd64-i386-pair pass test-amd64-amd64-libvirt-pair fail test-amd64-i386-libvirt-pair fail test-amd64-amd64-xl-pvshim pass test-amd64-i386-xl-pvshim fail test-amd64-amd64-pygrub pass test-armhf-armhf-libvirt-qcow2 fail test-amd64-amd64-xl-qcow2 fail test-arm64-arm64-libvirt-raw blocked test-armhf-armhf-libvirt-raw fail test-amd64-i386-libvirt-raw fail test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds pass test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-amd64-i386-xl-shadow pass test-arm64-arm64-xl-thunderx blocked test-amd64-amd64-libvirt-vhd fail test-arm64-arm64-xl-vhd blocked test-armhf-armhf-xl-vhd fail test-amd64-i386-xl-vhd fail ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 12540 lines long.) From xen-devel-bounces@lists.xenproject.org Mon Jun 05 05:21:08 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 05 Jun 2023 05:21:08 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543473.848485 (Exim 4.92) (envelope-from ) id 1q62eF-0001dN-B7; Mon, 05 Jun 2023 05:20:55 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543473.848485; Mon, 05 Jun 2023 05:20:55 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q62eF-0001dG-7S; Mon, 05 Jun 2023 05:20:55 +0000 Received: by outflank-mailman (input) for mailman id 543473; Mon, 05 Jun 2023 05:20:54 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q62eE-0001d8-7b for xen-devel@lists.xenproject.org; Mon, 05 Jun 2023 05:20:54 +0000 Received: from EUR01-DB5-obe.outbound.protection.outlook.com (mail-db5eur01on0629.outbound.protection.outlook.com [2a01:111:f400:fe02::629]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id bbd11b23-0360-11ee-b232-6b7b168915f2; Mon, 05 Jun 2023 07:20:50 +0200 (CEST) Received: from AS8PR04CA0053.eurprd04.prod.outlook.com (2603:10a6:20b:312::28) by AS8PR08MB8372.eurprd08.prod.outlook.com (2603:10a6:20b:569::5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.32; Mon, 5 Jun 2023 05:20:47 +0000 Received: from AM7EUR03FT025.eop-EUR03.prod.protection.outlook.com (2603:10a6:20b:312:cafe::d8) by AS8PR04CA0053.outlook.office365.com (2603:10a6:20b:312::28) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33 via Frontend Transport; Mon, 5 Jun 2023 05:20:47 +0000 Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by AM7EUR03FT025.mail.protection.outlook.com (100.127.140.199) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.13 via Frontend Transport; Mon, 5 Jun 2023 05:20:47 +0000 Received: ("Tessian outbound 5bb4c51d5a1f:v136"); Mon, 05 Jun 2023 05:20:46 +0000 Received: from 9a9cbab8d97e.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id A9187E66-7CD2-410D-825A-B1571E100472.1; Mon, 05 Jun 2023 05:20:39 +0000 Received: from EUR03-AM7-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 9a9cbab8d97e.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Mon, 05 Jun 2023 05:20:39 +0000 Received: from DUZPR01CA0240.eurprd01.prod.exchangelabs.com (2603:10a6:10:4b5::8) by DU0PR08MB8020.eurprd08.prod.outlook.com (2603:10a6:10:3e7::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.32; Mon, 5 Jun 2023 05:20:36 +0000 Received: from DBAEUR03FT044.eop-EUR03.prod.protection.outlook.com (2603:10a6:10:4b5:cafe::64) by DUZPR01CA0240.outlook.office365.com (2603:10a6:10:4b5::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.32 via Frontend Transport; Mon, 5 Jun 2023 05:20:36 +0000 Received: from nebula.arm.com (40.67.248.234) by DBAEUR03FT044.mail.protection.outlook.com (100.127.142.189) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6477.18 via Frontend Transport; Mon, 5 Jun 2023 05:20:36 +0000 Received: from AZ-NEU-EX03.Arm.com (10.251.24.31) by AZ-NEU-EX04.Arm.com (10.251.24.32) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Mon, 5 Jun 2023 05:20:35 +0000 Received: from [10.169.188.53] (10.169.188.53) by mail.arm.com (10.251.24.31) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23 via Frontend Transport; Mon, 5 Jun 2023 05:20:33 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: bbd11b23-0360-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=h/qB5FDFT19m+OUEjTfr+DxgZ43dzMQdLsg/dxjwF5I=; b=UzLbN2TmdE2OQosYZduvwGCAHd2bAgUTUY0DWaeVhD3RY/yDegIMeHJnlW/EWl5csoIz1n/v0x/3Ozo0JoCCN4fcp2Q1d2ERWoUTc4vVAymbuhbUbSxzVistWj7ETH6Hl7e1EgZylLd52eEAWs883K8Eg1Cl5f2CLXyHPxDuPqE= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C X-CheckRecipientChecked: true X-CR-MTA-CID: 97be2f863247f834 X-CR-MTA-TID: 64aa7808 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=ZE8kjob36GYufthee+RnBYhJMmfiLafL5tI7RAvb2+qPafHdrrddUc+3esvnAkiCMUSri1sCT0XASkhyp3ayyTXjES2rPVmOnGXLYhPKKXRestPyzQCWPO+Lktzsp+6jI7GwUGk6MkLL35ryGTYYrQDenjomGlPECdpMn4IyA4WgEP1mEvMfFOQdd+vvU/ZRJmhsdvR9MEwOZ0kjbM4AOMh9bVcONyl/ANkYO6jdzUb40hwbh1F+ghbaGv2rJJCiIq2Oca4+evN8IUlXo//BQMm682SDbWD4Q9zbdD9mnBahnxJl2CPBbUoAgFW7Hh6ZO760lzXg9da2C8th1zF1ZA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=h/qB5FDFT19m+OUEjTfr+DxgZ43dzMQdLsg/dxjwF5I=; b=EFqcQ7pjkYmdSnaMri/XC/3uCx9PBzOdNN08Jl70wnBlNuQjgdXielEQ69kyKmV4pjGTPTEo+0NchoIG8OXnOT8pQQ0eebm9kTyXD096J8uE2oswnkoibEGI+QsfhzM5PPUxA/dcwI+uwrPwRcFO748qyxcwJqmH8wNSI/qkcR9XQPd0CG1QDLDHjokocBCWKrfrNGjY+G61ghLGmpX+hWjzVQ3eeswFnbA8L4sYS6ukszPF6SIZxbUEuymuSbEHGauoNri9PN54RY2Ma65Rb/zIxHQNZWS9FGm9Po6wHaPPte/kiAjCO0Xy8+TkdGb1I6bW+7HU+ij3504F9f63VA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 40.67.248.234) smtp.rcpttodomain=xen.org smtp.mailfrom=arm.com; dmarc=pass (p=none sp=none pct=100) action=none header.from=arm.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=h/qB5FDFT19m+OUEjTfr+DxgZ43dzMQdLsg/dxjwF5I=; b=UzLbN2TmdE2OQosYZduvwGCAHd2bAgUTUY0DWaeVhD3RY/yDegIMeHJnlW/EWl5csoIz1n/v0x/3Ozo0JoCCN4fcp2Q1d2ERWoUTc4vVAymbuhbUbSxzVistWj7ETH6Hl7e1EgZylLd52eEAWs883K8Eg1Cl5f2CLXyHPxDuPqE= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 40.67.248.234) smtp.mailfrom=arm.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 40.67.248.234 as permitted sender) receiver=protection.outlook.com; client-ip=40.67.248.234; helo=nebula.arm.com; pr=C Content-Type: multipart/alternative; boundary="------------3JTVP8sbqEQ3djxngGXEyxAk" Message-ID: <661569b8-e284-0618-c986-3cb0313beeb3@arm.com> Date: Mon, 5 Jun 2023 13:20:31 +0800 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.11.2 Subject: Re: [PATCH v2 10/40] xen/arm: split MMU and MPU config files from config.h Content-Language: en-US To: Julien Grall , CC: , Stefano Stabellini , "Bertrand Marquis" , Volodymyr Babchuk References: <20230113052914.3845596-1-Penny.Zheng@arm.com> <20230113052914.3845596-11-Penny.Zheng@arm.com> From: Penny Zheng In-Reply-To: X-EOPAttributedMessage: 1 X-MS-TrafficTypeDiagnostic: DBAEUR03FT044:EE_|DU0PR08MB8020:EE_|AM7EUR03FT025:EE_|AS8PR08MB8372:EE_ X-MS-Office365-Filtering-Correlation-Id: 95cb82f0-694e-4693-5048-08db65849e75 x-checkrecipientrouted: true NoDisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: Gx0JWBPTkBtnVWgqjrKhL7rAnbXPOOh4fJ2w/a0vUzl4M+vBBaMpuu3t7x1ILLvvkT4km9wH6B85HJl4Jjm4tFyjwDCmt+lUiQz41+aswtcE4rs3OzlA29lu+zHSvMVpkwXU/23swxNvGxRlG/BmQoOrHGE2RRj63zvKVHfNF4Ah6xthLklZl7lb7lA7YpCCh5grXu5IBv0HZEtl/cUz8dS/73mSrU8n0guTlqNGjQBmxw75r6AcNV3Z4QvYaCqmvLb7qcFZl4HTpd7lCBrXSwnnOW+7uzc5ELYKzhxBAME24adgVtmEewm5CvUHaAl0845zcUIIZ3BbWc9NZxlHBLofKEGhpFzHwdy6+TPUUMTGbKpgHe9FBU6EJGR4Ap/zNoF4lV5UsP1v/62Hl5hVBxGcEgsdNbIQC6+8ju8Cwqrc06MvOMeb0gI7ux8Pux2cB5QoROGQxZ/WQRGMp5cVY10K/mSriy/s58edKAzDm53txgXpu1ClWNjUxSGhJj4Ao/iPmJ87GHTLKjB2y3i7bDiXf+adpapHA15+0SPY59NRgdiC5sruoDL76q1IBpn0N+/N9R5PufefKUzy7F9yDhrXzR7TyTEu8hzs8jOVHUjY+gKRBMiHEItF0QL8RtY9NVo6LRvBMQHiKkSdRktngJYmgiVIGgQTcDZXnZU6zeYmDx4wsF80+upK6/UIr/h2ecaIrGTYiiIfLDE79HY8i2HqqBGD2L2e4VH0U9Gdr2gTMxwAGmT31kmSc9lV2SCteHaDJKf5adqlqEjatMpvB5Dq4mqG0BuXFIDuP7yV/V7c9xyPaYtwnGLuizlCQaWLV1RUmsAjHo2YN2j940o4Eg== X-Forefront-Antispam-Report-Untrusted: CIP:40.67.248.234;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:nebula.arm.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(396003)(39860400002)(376002)(346002)(136003)(451199021)(40470700004)(46966006)(36840700001)(36756003)(16576012)(110136005)(54906003)(40460700003)(2906002)(31696002)(82310400005)(478600001)(86362001)(41300700001)(8936002)(8676002)(5660300002)(82740400003)(316002)(356005)(44832011)(81166007)(4326008)(40480700001)(70586007)(70206006)(31686004)(83380400001)(47076005)(2616005)(53546011)(26005)(186003)(336012)(426003)(36860700001)(33964004)(3940600001)(36900700001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU0PR08MB8020 X-MS-Exchange-Transport-CrossTenantHeadersStripped: AM7EUR03FT025.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: 79cd5f47-71a4-40c8-25fc-08db658497e8 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: p1vKN5qt0I+Q9TM+mkYY7rgf6JkZzVeQ3amqBEVuuw1XnSbXC+DEPqvNNJH8ntGwTzCJXoGvWkbYcV4ZtZwDWG0QAiC7PwBLCtYxJBo+SzT8YPAD0zw9ACKmlJjVrE1EG9TEMZSJeycWrW7BS/noHeUCcE04wXtwqxJFVFaTP45P/g3QNfD3Vc/y+IPbdZrm3Nl91J57kdEyja24XLhbtiAtCrU6IzVsl0BKIz2b6dGVvGmChynRMYNTHg1nmn7Wp8ZnD1M5r1aq8Asxwe3j5Px+2p2wyjah8JsJuez9KEcxkc1PwIGKnvSE9Dvs2fCyyzIR6jb0mbkIcmqgN5al1aGCZ4UAJh3ANX1jR+la0qiIaDg6MGnlFkrWFTk5vaekbZuRVP8LFNMz1dfMaXfsISfGZpqxrkzRXAvWVmsknPfH16F2gmZ2RU/5KFhuCRdZ61ChrKp9w/9Ehm7mDz58EZ574vflgViAvioOg6XPIR0aYSid8EzKZ1/888qqEAOPTRTKCdvH1A/EXUyLw+Ex5zYpDW98e5edzHGlrDTNdfzXASzDFUIGfTLuLFKYI9VfGSMDH2HDF/3XI932/882ubblbgLdRGSWpUg8+HAn4yLJxIhevmFlc/mCrhv/xmr/CkYKIvUoskqmBg0qWt9Hq7CzoBzvleKdCWqN5ooLqnbhOewsCFbRc3sfPs0MWwAtChCGwSuq934/ub725aQ6/6GM22hrZFNflB2FEWWsg6Z8fum/kZK0dkEVtCOIP3j/yYGbGGN3W2OaMYbO7xPSkDejg+EwNaF/oZyzUpAMVYMkdQZ3EvCvteEdPgeRG1cU X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(396003)(376002)(136003)(346002)(451199021)(36840700001)(46966006)(40470700004)(83380400001)(40460700003)(47076005)(336012)(426003)(2906002)(2616005)(36756003)(86362001)(31696002)(82310400005)(81166007)(82740400003)(36860700001)(40480700001)(316002)(33964004)(41300700001)(5660300002)(107886003)(8676002)(8936002)(54906003)(110136005)(16576012)(478600001)(70206006)(70586007)(4326008)(31686004)(53546011)(26005)(186003)(44832011)(3940600001)(43740500002);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Jun 2023 05:20:47.0852 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 95cb82f0-694e-4693-5048-08db65849e75 X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: AM7EUR03FT025.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR08MB8372 --------------3JTVP8sbqEQ3djxngGXEyxAk Content-Type: text/plain; charset="UTF-8"; format=flowed Content-Transfer-Encoding: 8bit Hi, Sorry for the late reply. Got sidetracked by other tasks... On 2023/1/19 22:20, Julien Grall wrote: > Hi, > > On 13/01/2023 05:28, Penny Zheng wrote: >> From: Wei Chen >> >> Xen defines some global configuration macros for Arm in >> config.h. We still want to use it for Armv8-R systems, but >> there are some address related macros that are defined for >> MMU systems. These macros will not be used by MPU systems, >> Adding ifdefery with CONFIG_HAS_MPU to gate these macros >> will result in a messy and hard-to-read/maintain code. >> >> So we keep some common definitions still in config.h, but >> move virtual address related definitions to a new file - >> config_mmu.h. And use a new file config_mpu.h to store >> definitions for MPU systems. To avoid spreading #ifdef >> everywhere, we keep the same definition names for MPU >> systems, like XEN_VIRT_START and HYPERVISOR_VIRT_START, >> but the definition contents are MPU specific. >> >> Signed-off-by: Wei Chen >> --- >> v1 -> v2: >> 1. Remove duplicated FIXMAP definitions from config_mmu.h >> --- >>   xen/arch/arm/include/asm/config.h     | 103 +++-------------------- >>   xen/arch/arm/include/asm/config_mmu.h | 112 ++++++++++++++++++++++++++ >>   xen/arch/arm/include/asm/config_mpu.h |  25 ++++++ > > I think this patch wants to be split in two. So we keep code movement > separate from the introduction of new feature (e.g. MPU). > > Furthermore, I think it would be better to name the new header > layout_* (or similar). > > Lastly, you are going to introduce several file with _mmu or _mpu. I > would rather prefer if we create directory instead. > > >>   3 files changed, 147 insertions(+), 93 deletions(-) >>   create mode 100644 xen/arch/arm/include/asm/config_mmu.h >>   create mode 100644 xen/arch/arm/include/asm/config_mpu.h >> >> diff --git a/xen/arch/arm/include/asm/config.h >> b/xen/arch/arm/include/asm/config.h >> index 25a625ff08..86d8142959 100644 >> --- a/xen/arch/arm/include/asm/config.h >> +++ b/xen/arch/arm/include/asm/config.h >> @@ -48,6 +48,12 @@ >>     #define INVALID_VCPU_ID MAX_VIRT_CPUS >>   +/* Used for calculating PDX */ > > I am not entirely sure to understand the purpose of this comment. > >> +#ifdef CONFIG_ARM_64 >> +#define FfaRAMETABLE_SIZE        GB(32) >> +#define FRAMETABLE_NR          (FRAMETABLE_SIZE / sizeof(*frame_table)) >> +#endif >> + > > Why do you only keep the 64-bit version in config.h? > > However... the frametable size is limited by the space we reserve in > the virtual address space. This would not be the case for the MPU. > Yes, but when calculating variable /pdx_group_valid/, which is defined as ''' /unsigned long __read_mostly pdx_group_valid[BITS_TO_LONGS(/                       (/FRAMETABLE_NR + PDX_GROUP_COUNT - 1) / PDX_GROUP_COUNT)] = { [0] = 1 }/ ''', it relies on FRAMETABLE_NR to limit array length. If we are trying to get rid of the limit for the MPU, hmmm, it may bring a lot of changes in pdx common codes, for example, maybe variable /pdx_group_valid/ needs to be allocated in runtime, according actual frametable size, at least for MPU case. So, here, I intend to keep the same limit as MMU has for MPU too, or any suggestion from you? > So having the limit in common seems a bit odd. In fact, I think we > should look at getting rid of the limit for the MPU. > > [...] [...] > Cheers, > Cheers, Penny Zheng --------------3JTVP8sbqEQ3djxngGXEyxAk Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: 8bit

Hi,


Sorry for the late reply. Got sidetracked by other tasks...


On 2023/1/19 22:20, Julien Grall wrote:
Hi,

On 13/01/2023 05:28, Penny Zheng wrote:
From: Wei Chen <wei.chen@arm.com>

Xen defines some global configuration macros for Arm in
config.h. We still want to use it for Armv8-R systems, but
there are some address related macros that are defined for
MMU systems. These macros will not be used by MPU systems,
Adding ifdefery with CONFIG_HAS_MPU to gate these macros
will result in a messy and hard-to-read/maintain code.

So we keep some common definitions still in config.h, but
move virtual address related definitions to a new file -
config_mmu.h. And use a new file config_mpu.h to store
definitions for MPU systems. To avoid spreading #ifdef
everywhere, we keep the same definition names for MPU
systems, like XEN_VIRT_START and HYPERVISOR_VIRT_START,
but the definition contents are MPU specific.

Signed-off-by: Wei Chen <wei.chen@arm.com>
---
v1 -> v2:
1. Remove duplicated FIXMAP definitions from config_mmu.h
---
  xen/arch/arm/include/asm/config.h     | 103 +++--------------------
  xen/arch/arm/include/asm/config_mmu.h | 112 ++++++++++++++++++++++++++
  xen/arch/arm/include/asm/config_mpu.h |  25 ++++++

I think this patch wants to be split in two. So we keep code movement separate from the introduction of new feature (e.g. MPU).

Furthermore, I think it would be better to name the new header layout_* (or similar).

Lastly, you are going to introduce several file with _mmu or _mpu. I would rather prefer if we create directory instead.


  3 files changed, 147 insertions(+), 93 deletions(-)
  create mode 100644 xen/arch/arm/include/asm/config_mmu.h
  create mode 100644 xen/arch/arm/include/asm/config_mpu.h

diff --git a/xen/arch/arm/include/asm/config.h b/xen/arch/arm/include/asm/config.h
index 25a625ff08..86d8142959 100644
--- a/xen/arch/arm/include/asm/config.h
+++ b/xen/arch/arm/include/asm/config.h
@@ -48,6 +48,12 @@
    #define INVALID_VCPU_ID MAX_VIRT_CPUS
  +/* Used for calculating PDX */

I am not entirely sure to understand the purpose of this comment.

+#ifdef CONFIG_ARM_64
+#define FfaRAMETABLE_SIZE        GB(32)
+#define FRAMETABLE_NR          (FRAMETABLE_SIZE / sizeof(*frame_table))
+#endif
+

Why do you only keep the 64-bit version in config.h?

However... the frametable size is limited by the space we reserve in the virtual address space. This would not be the case for the MPU.


Yes, but when calculating variable pdx_group_valid, which is defined as '''

unsigned long __read_mostly pdx_group_valid[BITS_TO_LONGS(
                      (FRAMETABLE_NR + PDX_GROUP_COUNT - 1) / PDX_GROUP_COUNT)] = { [0] = 1 } ''',

it relies on FRAMETABLE_NR to limit array length. If we are trying to get rid of the limit for the MPU, hmmm,

it may bring a lot of changes in pdx common codes, for example, maybe variable pdx_group_valid needs to

be allocated in runtime, according actual frametable size, at least for MPU case.

So, here, I intend to keep the same limit as MMU has for MPU too, or any suggestion from you?


So having the limit in common seems a bit odd. In fact, I think we should look at getting rid of the limit for the MPU.

[...]

[...]

Cheers,

Cheers,

Penny Zheng

--------------3JTVP8sbqEQ3djxngGXEyxAk-- From xen-devel-bounces@lists.xenproject.org Mon Jun 05 05:28:37 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 05 Jun 2023 05:28:37 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543478.848496 (Exim 4.92) (envelope-from ) id 1q62ld-0002HK-2d; Mon, 05 Jun 2023 05:28:33 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543478.848496; Mon, 05 Jun 2023 05:28:33 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q62lc-0002HD-Vo; Mon, 05 Jun 2023 05:28:32 +0000 Received: by outflank-mailman (input) for mailman id 543478; Mon, 05 Jun 2023 05:28:32 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q62lc-0002H5-0Q for xen-devel@lists.xenproject.org; Mon, 05 Jun 2023 05:28:32 +0000 Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id cda2ac33-0361-11ee-8611-37d641c3527e; Mon, 05 Jun 2023 07:28:29 +0200 (CEST) Received: from [192.168.1.98] (unknown [176.206.19.199]) by support.bugseng.com (Postfix) with ESMTPSA id BD7A44EE073A; Mon, 5 Jun 2023 07:28:28 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: cda2ac33-0361-11ee-8611-37d641c3527e Message-ID: <1cd359e7-5245-a621-3be2-9323ba5b327b@bugseng.com> Date: Mon, 5 Jun 2023 07:28:28 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.12) Gecko/20050929 Thunderbird/1.0.7 Fedora/1.0.7-1.1.fc4 Mnenhy/0.7.3.0 To: "xen-devel@lists.xenproject.org" Content-Language: en-US From: Roberto Bagnara Cc: Stefano Stabellini Subject: Xen reliance on non-standard GCC features Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi there. It appears Xen uses lots of GCC features that are outside the C99 standard. Some of them are documented GNU extensions to the language. Some of them seem not to be documented, so they do not qualify as language extensions (at least, not as far as the spirit and letter of functional-safety standards are concerned). Language extensions come with two problems: a) They limit portability. b) They significantly increase the cost of compiler qualification (commercial C compiler validation suites do not cover the extensions, and the cost of the extra validation effort will have to be born by whomever wants to use Xen for safety-related development). Said that, maybe the use of certain extensions is intentional, but for others it may be unintentional. The purpose of this message is to distinguish the ones from the others. In the following, when I mention the C99 standard, I refer to compiler uses with -std=c99 or -std=gnu99. Let us start from the (as far as I can tell) undocumented extensions: U1) Use of _Static_assert in C99 mode. U2) Empty initialization lists, both in C99 mode (ARM64 and X86_64) and C18 mode (only X86_64). U3) Returning void expressions. U4) Static functions or variables used in inline functions with external linkage. U5) Enumerator values outside the range of `int'. U6) Empty declarations. U7) Empty enum definitions. U8) Conversion between incompatible pointer types. U9) Conversion between function pointers and object pointers. U10) \m escape sequence. Is this an undocumented GCC extension or just a typo? In case you know where these are documented in the GCC manual, I would appreciate if you could tell me. Here is a list of extensions that are documented in the GCC manual: D1) Arithmetic operators on `void *' type: See Section "6.24 Arithmetic on void- and Function-Pointers" of the GCC manual." D2) Sizeof and alignof on `void *' type: See Section "6.24 Arithmetic on void- and Function-Pointers" of the GCC manual." D3) Use of GNU statement expressions. See Section "6.1 Statements and Declarations in Expressions" of the GCC manual. D4) Use of GNU statement expressions from macro expansion. See Section "6.1 Statements and Declarations in Expressions" of the GCC manual. (My advice is to read it fully, as there are implications.) D5) Record declarations with no members. See Section "6.19 Structures with No Members" of the GCC manual." D6) Structures containing a flexible array member as member of a structure. See Section "6.18 Arrays of Length Zero" of the GCC manual. D7) Structures containing a flexible array member as element of an array. See Section "6.18 Arrays of Length Zero" of the GCC manual. D8) Binary conditional operator. See Section "6.8 Conditionals with Omitted Operands" of the GCC manual. D9) Case labels with upper/lower values. See Section "6.30 Case Ranges" of the GCC manual. D10) Anonymous structure and union fields. See Section "6.63 Unnamed Structure and Union Fields" of the GCC manual. D11) Variadic macros called without any argument for '...' See Section "6.21 Macros with a Variable Number of Arguments" of the GCC manual. D12) Forward references to enum definitions. See Section "6.49 Incomplete enum Types" of the GCC manual. Finally, Xen seems to rely on explicitly undefined behavior, namely C99 UB 58: "A structure or union is defined as containing no named members (6.7.2.1)." All instances but one occur via macro BUILD_BUG_ON_ZERO, the remaining instance concerns struct `cpu_policy::::::::'. Reliance on undefined behavior might be hard to justify. I look forward to receiving your feedback. Kind regards, Roberto From xen-devel-bounces@lists.xenproject.org Mon Jun 05 07:02:03 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 05 Jun 2023 07:02:03 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543487.848515 (Exim 4.92) (envelope-from ) id 1q64Dv-0003xC-QT; Mon, 05 Jun 2023 07:01:51 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543487.848515; Mon, 05 Jun 2023 07:01:51 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q64Dv-0003x5-Nj; Mon, 05 Jun 2023 07:01:51 +0000 Received: by outflank-mailman (input) for mailman id 543487; Mon, 05 Jun 2023 07:01:50 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q64Du-0003wz-4V for xen-devel@lists.xenproject.org; Mon, 05 Jun 2023 07:01:50 +0000 Received: from mail-ed1-x533.google.com (mail-ed1-x533.google.com [2a00:1450:4864:20::533]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id d5d25794-036e-11ee-8611-37d641c3527e; Mon, 05 Jun 2023 09:01:46 +0200 (CEST) Received: by mail-ed1-x533.google.com with SMTP id 4fb4d7f45d1cf-5147dce372eso6600923a12.0 for ; Mon, 05 Jun 2023 00:01:46 -0700 (PDT) Received: from [127.0.0.1] (dynamic-089-014-188-226.89.14.pool.telefonica.de. [89.14.188.226]) by smtp.gmail.com with ESMTPSA id q22-20020aa7d456000000b0051631518aabsm3531431edr.93.2023.06.05.00.01.44 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Mon, 05 Jun 2023 00:01:45 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: d5d25794-036e-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1685948506; x=1688540506; h=content-transfer-encoding:mime-version:message-id:references :in-reply-to:subject:cc:to:from:date:from:to:cc:subject:date :message-id:reply-to; bh=7UQKx1Vra6b36tz31tTD8RN/rkvjtkXk/RzFAKZXu0E=; b=pBcehvCYH6qSx65EDcfNNfpH93AFHMaomk71RdZH3u3UdRaj8ppj/N5On8IYZ2ZhFH GgoDBnNgEG+48D4D4hVSEGQS+K6uweOCx/O2Vv718xVYF1oCAFFPoeDTOyE8SYMuUuTZ 9YBSsUigw8F7+zz2sUvxzlK59ZIG37EAVeiK9n6ZA+ZnauEG1JPXi0RV3mkRdNkWsGHF Hofa/wabnAuRb3HngJYMd3u33Zy0TNYaXGsrglRQOh+2NfzW+7XAdTiU3mymKIpUpPTm gtHhrDzjfVJJn8jQ2sDPFaATy8Wa8ABX3Lx+upxQ5mspQM2nnXtXyKaaEK2WypjtAz3q i3pA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1685948506; x=1688540506; h=content-transfer-encoding:mime-version:message-id:references :in-reply-to:subject:cc:to:from:date:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=7UQKx1Vra6b36tz31tTD8RN/rkvjtkXk/RzFAKZXu0E=; b=PRbe7GUAOjin6MRs8kJcBPXeXtRsSlYU65OwoLMaBPOrWc+eLm+mSzorP6T6AwQIeW rfZVtVmMRn/PDx5L2WVw9/WXb5Q7fhJs6FfJ6zgcOyUJTWZskZF0Xa3WDF2PGHR3kBUN ydHQAJql3pl5MnaDYTUlUO4FD8kfQIKzgjB1xe3KHyElqfEBQ3oTIckQCJLSbeBjV4dR uCuUbTxnc1HZ0zMbBipYwXm+81rO1F1YnYj6MMrsc8+XlrKUnLjnSPgOq/xNvYKeQTmM OMCRsPd6jXxqlMVGzJcXPBM45aIBW4dwH9O7s2uH/QFdau4+gp+MBLUIjtmL88dWkoF5 h1Sg== X-Gm-Message-State: AC+VfDzI651xkF7mMT+XPliwGYh66kHRvq5T+b8bMFFbhqN/snSG0WZY kw8zBOF1wIU+3UdImLQot2Q= X-Google-Smtp-Source: ACHHUZ7WpGHFe3EMd73SsBT4DywvlubfrU2Oc5O+jKTVzYcA2EVb6dEnTmMIiL6fz/MRavCGIEJ3wg== X-Received: by 2002:a05:6402:708:b0:505:745:a271 with SMTP id w8-20020a056402070800b005050745a271mr7369088edx.23.1685948505716; Mon, 05 Jun 2023 00:01:45 -0700 (PDT) Date: Mon, 05 Jun 2023 07:01:42 +0000 From: Bernhard Beschow To: Stefano Stabellini , mst@redhat.com CC: qemu-devel@nongnu.org, Richard Henderson , Marcel Apfelbaum , David Woodhouse , Eduardo Habkost , Chuck Zmudzinski , Aurelien Jarno , =?ISO-8859-1?Q?Herv=E9_Poussineau?= , Paul Durrant , Paolo Bonzini , =?ISO-8859-1?Q?Philippe_Mathieu-Daud=E9?= , Anthony Perard , xen-devel@lists.xenproject.org Subject: Re: [PATCH v4 0/7] Resolve TYPE_PIIX3_XEN_DEVICE In-Reply-To: References: <20230403074124.3925-1-shentey@gmail.com> <20230421033757-mutt-send-email-mst@kernel.org> <9EB9A984-61E5-4226-8352-B5DDC6E2C62E@gmail.com> Message-ID: MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Am 22=2E Mai 2023 15:42:03 UTC schrieb Bernhard Beschow : > > >Am 15=2E Mai 2023 20:52:40 UTC schrieb Stefano Stabellini : >>On Sat, 13 May 2023, Bernhard Beschow wrote: >>> Am 21=2E April 2023 07:38:10 UTC schrieb "Michael S=2E Tsirkin" : >>> >On Mon, Apr 03, 2023 at 09:41:17AM +0200, Bernhard Beschow wrote: >>> >> There is currently a dedicated PIIX3 device model for use under Xen= =2E By reusing >>> >> existing PCI API during initialization this device model can be eli= minated and >>> >> the plain PIIX3 device model can be used instead=2E >>> >>=20 >>> >> Resolving TYPE_PIIX3_XEN_DEVICE results in less code while also mak= ing Xen >>> >> agnostic towards the precise south bridge being used in the PC mach= ine=2E The >>> >> latter might become particularily interesting once PIIX4 becomes us= able in the >>> >> PC machine, avoiding the "Frankenstein" use of PIIX4_ACPI in PIIX3= =2E >>> > >>> >xen stuff so I assume that tree? >>>=20 >>> Ping >> >>I am OK either way=2E Michael, what do you prefer? >> >>Normally I would suggest for you to pick up the patches=2E But as it >>happens I'll have to likely send another pull request in a week or two >>and I can add these patches to it=2E >> >>Let me know your preference and I am happy to follow it=2E > >Hi Stefano, > >Michael's PR was merged last week=2E How about including this series into= your PR then? Ping > >Best regards, >Bernhard > >> >> >>> > >>> >> Testing done: >>> >> - `make check` >>> >> - Run `xl create` with the following config: >>> >> name =3D "Manjaro" >>> >> type =3D 'hvm' >>> >> memory =3D 1536 >>> >> apic =3D 1 >>> >> usb =3D 1 >>> >> disk =3D [ "file:manjaro-kde-21=2E2=2E6-220416-linux515=2Eiso,h= dc:cdrom,r" ] >>> >> device_model_override =3D "/usr/bin/qemu-system-x86_64" >>> >> vga =3D "stdvga" >>> >> sdl =3D 1 >>> >> - `qemu-system-x86_64 -M pc -m 2G -cpu host -accel kvm \ >>> >> -cdrom manjaro-kde-21=2E2=2E6-220416-linux515=2Eiso` >>> >>=20 >>> >> v4: >>> >> - Add patch fixing latent memory leak in pci_bus_irqs() (Anthony) >>> >>=20 >>> >> v3: >>> >> - Rebase onto master >>> >>=20 >>> >> v2: >>> >> - xen_piix3_set_irq() is already generic=2E Just rename it=2E (Chuc= k) >>> >>=20 >>> >> Tested-by: Chuck Zmudzinski >>> >>=20 >>> >> Bernhard Beschow (7): >>> >> include/hw/xen/xen: Rename xen_piix3_set_irq() to xen_intx_set_ir= q() >>> >> hw/pci/pci=2Ec: Don't leak PCIBus::irq_count[] in pci_bus_irqs() >>> >> hw/isa/piix3: Reuse piix3_realize() in piix3_xen_realize() >>> >> hw/isa/piix3: Wire up Xen PCI IRQ handling outside of PIIX3 >>> >> hw/isa/piix3: Avoid Xen-specific variant of piix3_write_config() >>> >> hw/isa/piix3: Resolve redundant k->config_write assignments >>> >> hw/isa/piix3: Resolve redundant TYPE_PIIX3_XEN_DEVICE >>> >>=20 >>> >> include/hw/southbridge/piix=2Eh | 1 - >>> >> include/hw/xen/xen=2Eh | 2 +- >>> >> hw/i386/pc_piix=2Ec | 36 +++++++++++++++++++-- >>> >> hw/i386/xen/xen-hvm=2Ec | 2 +- >>> >> hw/isa/piix3=2Ec | 60 +----------------------------= ------ >>> >> hw/pci/pci=2Ec | 2 ++ >>> >> stubs/xen-hw-stub=2Ec | 2 +- >>> >> 7 files changed, 39 insertions(+), 66 deletions(-) >>> >>=20 >>> >> --=20 >>> >> 2=2E40=2E0 >>> >>=20 >>> > >>>=20 From xen-devel-bounces@lists.xenproject.org Mon Jun 05 07:10:19 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 05 Jun 2023 07:10:19 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543493.848525 (Exim 4.92) (envelope-from ) id 1q64M2-0005Ve-OD; Mon, 05 Jun 2023 07:10:14 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543493.848525; Mon, 05 Jun 2023 07:10:14 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q64M2-0005VX-LO; Mon, 05 Jun 2023 07:10:14 +0000 Received: by outflank-mailman (input) for mailman id 543493; Mon, 05 Jun 2023 07:10:13 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q64M1-0005VR-8R for xen-devel@lists.xenproject.org; Mon, 05 Jun 2023 07:10:13 +0000 Received: from NAM12-DM6-obe.outbound.protection.outlook.com (mail-dm6nam12on20627.outbound.protection.outlook.com [2a01:111:f400:fe59::627]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 017a2ac2-0370-11ee-8611-37d641c3527e; Mon, 05 Jun 2023 09:10:10 +0200 (CEST) Received: from MW4PR04CA0133.namprd04.prod.outlook.com (2603:10b6:303:84::18) by PH0PR12MB5401.namprd12.prod.outlook.com (2603:10b6:510:d4::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.32; Mon, 5 Jun 2023 07:10:06 +0000 Received: from CO1NAM11FT020.eop-nam11.prod.protection.outlook.com (2603:10b6:303:84:cafe::b) by MW4PR04CA0133.outlook.office365.com (2603:10b6:303:84::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.32 via Frontend Transport; Mon, 5 Jun 2023 07:10:06 +0000 Received: from SATLEXMB03.amd.com (165.204.84.17) by CO1NAM11FT020.mail.protection.outlook.com (10.13.174.149) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6455.32 via Frontend Transport; Mon, 5 Jun 2023 07:10:05 +0000 Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Mon, 5 Jun 2023 02:10:04 -0500 Received: from [10.71.193.39] (10.180.168.240) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server id 15.1.2375.34 via Frontend Transport; Mon, 5 Jun 2023 02:10:03 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 017a2ac2-0370-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Wr20ozW52iiDAjxBdpDTHD/A/BopfxY1uokQQPQHUx0Gd/YQIQAzPwSZFEL+m2X5Ozt5SSJMp6n/bu6H66J7ITVSFAKPeVck45tSS7VFj3NzzU9JVEFpb6b3ghGDSohrB4rxC9RfLRJY8CUJ10B97nNZcx7dVbnuutOV4vV2CElGspZABTns26VVJeCue8UP2J3zzRQaOslb3IpzQHEBsj+wGKJD+erxXNoprV1l9LsOw3yMACIGBPHxI9XG9h7B4h8smLOBm4I0S5x6AOVHkbJxY0SZcmkt9Bne4WT80DPrYFhm6qdO4DlQmzMGioiVBknZwMGsLBx5LoYYXgKOvQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=wv1UHJQbMWvfZVD0DjVSTn2BOkZj2YdJsv4PA8ApvgI=; b=UZovkzK0vSaOMecIQP+OPFxgIc63PG0Drs24DTA/nb4J0Ap7WFF+XbDbC/nqqAK4Hi+lBmLfeXMwzBpxQCD0SRI4DG2qgRGBxlCWCcfmfsfaYFfIpvEzpsRW045XPhsC3ejWC8nP22bZLSYwKEuzP2dvtiZhyvPalzkNubFESX0vI2dEskf4UYSp2pjCV8fFZsS1shRA3bkKlCBl4o9s3HVuzQMB/2l0zcR3OxP7aOQe26TpIKuQnfD2NEunyxQjA0/t5IirkF9Vm09Q9UkOSg2/5goNy9nPQbUO7On5BFWITAi1YlZtVXrgnh2a6oU6LkWM5q+ypKpcVlG95ej/rA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=wv1UHJQbMWvfZVD0DjVSTn2BOkZj2YdJsv4PA8ApvgI=; b=fCENPEfjiC6xLMGt7sdGTlhs1ik43QVinMJZ9OTV9n2krbC6wGaADBnCoLpkbs3Tek3cpVOS1K4Fj+U/zFmpevwe9TM/sDqdV7MEDg8gJtISh19AWfOA9qteZVbxW5CG1cRZWFQdsZ9vQ5X6cSop33qeo1ZQh9xqZm5cbDB9qFs= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C Message-ID: <5c7450e4-88c4-e653-0d7a-2675f2c7b953@amd.com> Date: Mon, 5 Jun 2023 09:10:03 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [XEN][PATCH v7 14/19] common/device_tree: Add rwlock for dt_host To: Vikram Garhwal , CC: , , Julien Grall References: <20230602004824.20731-1-vikram.garhwal@amd.com> <20230602004824.20731-15-vikram.garhwal@amd.com> Content-Language: en-US From: Michal Orzel In-Reply-To: <20230602004824.20731-15-vikram.garhwal@amd.com> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO1NAM11FT020:EE_|PH0PR12MB5401:EE_ X-MS-Office365-Filtering-Correlation-Id: c1eb6d91-09a6-42f4-d177-08db6593e3da X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: R/NOKfTYAwEBgWv565NY/wIHkHonWj1xZ75gQdznEYRbobQMC+dHVXjUqZfiUVBV3lunHpCjqii5MzbPL1FI0nYeF11fYcHrqaC6gRxuVInycwRc6p+FaXT5qLiUfScm8ST3vmqsHK40su4AvI7TCOSk/ETwaQBofB9xhjNDtr/CtnfbE/OnkE8rSgTGLngEaX+LmsJHxMgQ1PWRYddPl1i+Q4Dz69jJhOZH/96jqhzSKyu+JJ6yG5f8YffDOcYO8O5P+Q7lzaqgIWKp1csbAW6K2/pu6h9sZ6wZ+IjMWEENbPg3/Qmka2RBRLCd6fJpjE0QWDAfyj2N2kePNcBjFIZYe259a4A8XkeOGWtrZvcsIywPH/kalQYME1e14pb8Mt0Ig3BJPFBj1lDuWvdXX87MXR/IBVNzjjnr3qk9t/xZIsq+7y36CBY0Xk7eVeweTIgScHGHsw5AeftFSPsE88sFMa0pEB4/mvDw6mT/r1BZg5ElPHqezT5T9AxNnJcX7nUXvJys+d5+kzh9KF81xKEJaQs6vboEyY6DutnY/boNRT0+6Sy5j3YFysnN4UMTAGu0d+3SBHLGOsgBfWaBqNRf2H6CalL3j+4BkhoIp9ZoYT869N8D1ma1cIANz1I+MYWJnUSRLct2jC8kM94nOZGJ89fcuH8vQY9yiDmabNawDHcBALfC+1ga2DNCAXy2OMqq/aplxevE6hjQQ+85hxgWVTTFn+uiHljRq6pBe5SniVRpDdMWHDtxZEUkYjKqw1uSQRetI/LJfdPoddnDex1YBH7X1NJqw32zH+Bfw9MfkJ2mf8frxGF4JzfYeacu X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(376002)(346002)(39860400002)(396003)(136003)(451199021)(36840700001)(40470700004)(46966006)(41300700001)(316002)(54906003)(110136005)(44832011)(356005)(81166007)(82740400003)(16576012)(5660300002)(2906002)(4326008)(70586007)(70206006)(31686004)(8676002)(8936002)(478600001)(40460700003)(82310400005)(31696002)(86362001)(186003)(36756003)(2616005)(53546011)(426003)(336012)(36860700001)(40480700001)(26005)(47076005)(83380400001)(36900700001)(43740500002);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Jun 2023 07:10:05.9017 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: c1eb6d91-09a6-42f4-d177-08db6593e3da X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com] X-MS-Exchange-CrossTenant-AuthSource: CO1NAM11FT020.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR12MB5401 Hi Vikram, On 02/06/2023 02:48, Vikram Garhwal wrote: > Dynamic programming ops will modify the dt_host and there might be other > function which are browsing the dt_host at the same time. To avoid the race > conditions, adding rwlock for browsing the dt_host during runtime. > > Reason behind adding rwlock instead of spinlock: > For now, dynamic programming is the sole modifier of dt_host in Xen during > run time. All other access functions like iommu_release_dt_device() are > just reading the dt_host during run-time. So, there is a need to protect > others from browsing the dt_host while dynamic programming is modifying > it. rwlock is better suitable for this task as spinlock won't be able to > differentiate between read and write access. > > Signed-off-by: Vikram Garhwal > > --- > Changes from v6: > Remove redundant "read_unlock(&dt_host->lock);" in the following case: > XEN_DOMCTL_deassign_device > --- > xen/common/device_tree.c | 4 ++++ > xen/drivers/passthrough/device_tree.c | 15 +++++++++++++++ > xen/include/xen/device_tree.h | 6 ++++++ > 3 files changed, 25 insertions(+) > > diff --git a/xen/common/device_tree.c b/xen/common/device_tree.c > index c5250a1644..c8fcdf8fa1 100644 > --- a/xen/common/device_tree.c > +++ b/xen/common/device_tree.c > @@ -2146,7 +2146,11 @@ int unflatten_device_tree(const void *fdt, struct dt_device_node **mynodes) > > dt_dprintk(" <- unflatten_device_tree()\n"); > > + /* Init r/w lock for host device tree. */ > + rwlock_init(&dt_host->lock); unflatten_device_tree() is called for dt_host and will also be used when adding a new dt overlay meaning that rwlock_init for dt_host will be called multiple times (even if mynodes != &dt_host) which is rather strange. > + > return 0; > + > } > > static void dt_alias_add(struct dt_alias_prop *ap, > diff --git a/xen/drivers/passthrough/device_tree.c b/xen/drivers/passthrough/device_tree.c > index 301a5bcd97..f4d9deb624 100644 > --- a/xen/drivers/passthrough/device_tree.c > +++ b/xen/drivers/passthrough/device_tree.c > @@ -112,6 +112,8 @@ int iommu_release_dt_devices(struct domain *d) > if ( !is_iommu_enabled(d) ) > return 0; > > + read_lock(&dt_host->lock); > + > list_for_each_entry_safe(dev, _dev, &hd->dt_devices, domain_list) > { > rc = iommu_deassign_dt_device(d, dev); > @@ -119,10 +121,14 @@ int iommu_release_dt_devices(struct domain *d) > { > dprintk(XENLOG_ERR, "Failed to deassign %s in domain %u\n", > dt_node_full_name(dev), d->domain_id); > + > + read_unlock(&dt_host->lock); > return rc; > } > } > > + read_unlock(&dt_host->lock); > + > return 0; > } > > @@ -246,6 +252,8 @@ int iommu_do_dt_domctl(struct xen_domctl *domctl, struct domain *d, > int ret; > struct dt_device_node *dev; > > + read_lock(&dt_host->lock); > + > switch ( domctl->cmd ) > { > case XEN_DOMCTL_assign_device: > @@ -295,7 +303,10 @@ int iommu_do_dt_domctl(struct xen_domctl *domctl, struct domain *d, > spin_unlock(&dtdevs_lock); > > if ( d == dom_io ) > + { > + read_unlock(&dt_host->lock); > return -EINVAL; > + } > > ret = iommu_add_dt_device(dev); > if ( ret < 0 ) > @@ -333,7 +344,10 @@ int iommu_do_dt_domctl(struct xen_domctl *domctl, struct domain *d, > break; > > if ( d == dom_io ) > + { > + read_unlock(&dt_host->lock); > return -EINVAL; > + } > > ret = iommu_deassign_dt_device(d, dev); > > @@ -348,5 +362,6 @@ int iommu_do_dt_domctl(struct xen_domctl *domctl, struct domain *d, > break; > } > > + read_unlock(&dt_host->lock); > return ret; > } > diff --git a/xen/include/xen/device_tree.h b/xen/include/xen/device_tree.h > index e239f7de26..dee40d2ea3 100644 > --- a/xen/include/xen/device_tree.h > +++ b/xen/include/xen/device_tree.h > @@ -18,6 +18,7 @@ > #include > #include > #include > +#include Sort alphabetically (despite list.h not being placed correctly) > > #define DEVICE_TREE_MAX_DEPTH 16 > > @@ -106,6 +107,11 @@ struct dt_device_node { > struct list_head domain_list; > > struct device dev; > + > + /* > + * Lock that protects r/w updates to unflattened device tree i.e. dt_host. > + */ No need for multiline comment style > + rwlock_t lock; > }; > > #define dt_to_dev(dt_node) (&(dt_node)->dev) ~Michal From xen-devel-bounces@lists.xenproject.org Mon Jun 05 07:35:39 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 05 Jun 2023 07:35:39 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543499.848537 (Exim 4.92) (envelope-from ) id 1q64kN-000817-OM; Mon, 05 Jun 2023 07:35:23 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543499.848537; Mon, 05 Jun 2023 07:35:23 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q64kN-000810-La; Mon, 05 Jun 2023 07:35:23 +0000 Received: by outflank-mailman (input) for mailman id 543499; Mon, 05 Jun 2023 07:35:22 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q64kM-00080u-45 for xen-devel@lists.xenproject.org; Mon, 05 Jun 2023 07:35:22 +0000 Received: from EUR05-VI1-obe.outbound.protection.outlook.com (mail-vi1eur05on2061a.outbound.protection.outlook.com [2a01:111:f400:7d00::61a]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 861531fe-0373-11ee-b232-6b7b168915f2; Mon, 05 Jun 2023 09:35:20 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by PA4PR04MB9437.eurprd04.prod.outlook.com (2603:10a6:102:2a9::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.32; Mon, 5 Jun 2023 07:35:16 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.030; Mon, 5 Jun 2023 07:35:16 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 861531fe-0373-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=ocJMtQ2jz00kP0oGxbEe6hXDWLsOSkQ7d8NTQe5tespwxTeVh90lzNQpltFpElaveL27IB0w0wbNo8vtO/jAiY8Q/CTDKwBBKarpeDDeGUYfyQUx02AGcTIsKgzTCBDH0CBT6thf4y/97Ydjdh9Ws0VWAVZHDTetBywVh091NhHz20h8RIxe4hD6dS24h0sv35qzVqDliqUBC6mQLFPMn8Pp8FIW932wEA4pQ6YujxdKNcEJQTtVZ66En4qzgaThd/IsJfiUQuHRvWUILeHynK7aR0C/j8Ojbf6CALwfkxSbAzEatfi0/Uu2624jD/Cy+GgN4A1J5FsXX0OQYS8cpw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=5v/XTrrWLoijRJu9jih6Zh60Os7YKwA6mkBmmWPzVGc=; b=E/5tP9lIoxJmEPX98K89JnsI8VGPZ8z0WAcVgplArXJBm8+LPJJp9EBvt2OJ8w+SmRArsEdr0qgczfr2Lk3PSoLrzVpk9N5Zv8FN00rXinAFDNe1fB7VLC5pZV5LGRePQtXdO2ZAygdbpbGLQ8jpumT4arBJVGJyc/4kEUy5mzD6+8UKU5Nm/S1bgd31EI1KPGOcZKquKpAeuo1Tg/VdqlAcMlu/uffy3dmVdt2SzXrYYwXo/UpHW2Q9LNBZ4nNaukOWEWSV1cuBlpTcG4m0oP25jdKbcNc+1fuXu8C7Hq1aZJac/oozF/DzDb46vm2/XJsGrgbr32cRMvTzRDXhyA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=5v/XTrrWLoijRJu9jih6Zh60Os7YKwA6mkBmmWPzVGc=; b=ZmZFzQpBec/eHeDyQYbRWdEkjzRVzoxMIBTYPY01NxZkVvtnP42QFTXyFO3kXZeRP16St/qdne4LmkMneqR5iCO5Wul+iCTyEIgXcu6JZzoOJbupsulLyNGtJxAmiBMgYW8qmTR11zVsQe03rQYwWcTnajpecxExNCkLLHBiMeh6XXAlhNowGNRcoTYarJHNCq3Wlj7szQKSXhIMOkcd+uea1zWttwSkXFAGZnxtdnHDijKePPWQZSUphSH+zHvmD+NrPWJ9KOvflPdOQ+JBC5VyaBmQJPc5kTB0rpAAr+47Wrkvkaz36fNhviCmw5V4D/KBJHzG/1esxPbMc2u8Vg== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: Date: Mon, 5 Jun 2023 09:35:16 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.11.2 Subject: Re: Xen reliance on non-standard GCC features Content-Language: en-US To: Roberto Bagnara Cc: Stefano Stabellini , "xen-devel@lists.xenproject.org" References: <1cd359e7-5245-a621-3be2-9323ba5b327b@bugseng.com> From: Jan Beulich In-Reply-To: <1cd359e7-5245-a621-3be2-9323ba5b327b@bugseng.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR2P281CA0119.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:9d::15) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|PA4PR04MB9437:EE_ X-MS-Office365-Filtering-Correlation-Id: c09295e2-d017-47b5-1686-08db6597678f X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 4ws60zQRuPaMPsaiozd0dbIu3nYKSzqspltzJxf53ace0qIM7Ct8FEpTo6GNnHrsLaZu6QvvLyAxCiLZ+s04vySUXJXwtzUvE7YAahuD+Qnw8XjPcKGivTw4cD7+q12KdjeRILVZ3IVis4V2qL1I/Bbsij+qkTOxD/owUWooJFomLn51hSgRHaVlwGRxZd5hk+WhNZWNL+2fG240vA6FPwHlovUo5dKWu6C/WkW5e6PmH1IPry2cHXoI1GdZZ+RmvHnyHBZpRFRKzS7eeGB6F3BG+zLs6psOPEF9nryDS5cb8zmJBt7juysGvWMJf80ilOwLFANFvje4uyA0hYQxk1uKYmiZA7EmqsqgWx12zOTxTMvR9D60o9+A5CxoD6D4y+fCM6jk8cYBbUZyZxfacPW1zukvD1Glg1/MJ3hPW5leFsgn1hyXRePX1JM3tudVbLiqRglmorLwTrwcKC8w0ucxvo67r4xLqlD+fEdy7AjPu8QNJQsjkykaJ9H5E3tTEZ+UxOZ4Q8jc9PQO0Z9cMY+2mVR/uCoSLUFqT3g6PA7Oh1ynx8GXre48tsSm1tMA/B2ztjya+fPp7y2OpgJwsx6CdCTn52gTOQO4OlXW6K91HLG+sEtMQzTKxyIP9o5lhuXzZVXPEUG9pw332d3Ziw== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(366004)(39860400002)(136003)(346002)(376002)(396003)(451199021)(6486002)(2906002)(4744005)(66946007)(66556008)(66476007)(54906003)(36756003)(38100700002)(8936002)(5660300002)(86362001)(8676002)(31696002)(41300700001)(6916009)(4326008)(316002)(478600001)(2616005)(53546011)(26005)(6506007)(6512007)(31686004)(186003)(83380400001)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?U2JUUkZDVFczZk13TmRIdTNDWVlETDNHRy9hbDhva1RudmcxeTJJM0U1ZUda?= =?utf-8?B?SUQvU3h6Z0l0ZzcvREdITTdQdCtjeXpBQ1JxaTdLSzV1a3FqWko4QXdiSm1s?= =?utf-8?B?MTJaQ3Bkd2RlL0c5M0dCa2k1bElaQ1JWamVRTzFDWk5KYSsyL1E0VXhVN252?= =?utf-8?B?S3AvVFFqVFRuUGFOc0MwQzRCYjk5THRRSFdpUDdsQkRhdDYzT1AwUHIyTlRM?= =?utf-8?B?Vkx2ZHdJalMzUXdwWldNRFNtWXI2WmpXM1BXcEZTLzZscGxSZlo2cnNmd2ZD?= =?utf-8?B?RmF6R050MVJPV0xTaitGTEl4WnY0ZXZ6M3h4TEw0SXFaeEpMdEZTVHJ1UW5v?= =?utf-8?B?cnlpWU1OSHd5UlloSS9NcDNld3ZBdU1KVm1ZeEs3SVpiZDBTb01yZ2Y0cHdF?= =?utf-8?B?MXoyejlJMjZGRVYvQ3RPd3FwU2JvN1g3QTBoYmppakFVQWpwYmJrbjlDUjFy?= =?utf-8?B?MmRaQWtTY0hrQS82YXIrSmpQSFVIeUk5YkFTNCsxTDR5NjF5OG1xRWFmdmRU?= =?utf-8?B?S05xQjlTR0RCMGpZU3ZncUFYRVZPN1NSdEJlUjV1NENJVkozd3Z4Y1BodVhU?= =?utf-8?B?YlViZlBPV1lIdlJncHhjNlN6V3p2dVJuVHZXQU5hc3ZyQndwWU1UWWdRa1dX?= =?utf-8?B?VnJWbEplanZ4bTNJaVIzRUJFcCtxZGZnMVlTSW1aa1Y0Z3gwRTZzbjNlRm9w?= =?utf-8?B?MElKalRMSzhVYmI3bzFnQkF0Qzlldjg1ZklILzlJR1I2Qkp2RVVyY3VJdmk3?= =?utf-8?B?VjJMeTY2OGE4NWpMN1BUeFllQThXMzUvVXR0SmI1aGtXRUdBenQ5K3Z2Z3JP?= =?utf-8?B?WFhySlFrM3RqZDR1WUpUbWNzR1pTQmVOZFRBWGNLQloyWFNzck1tbkQwUUVi?= =?utf-8?B?L0llbExnTmRPUjVUTk4veEM5RlNndHpvZXdvZi9NM2EwZkQ3ZEhEZ1ljYk51?= =?utf-8?B?RW1lblY4WkRuc3ZNRllpeVAvMWxzR2RKNDBTRlY3L2tGYjRCdUEwTEpPdG1E?= =?utf-8?B?UkVkZWxjZkE0czhadG83ZFE4cUtsdWV3N25wYjM3UFFSYlFLL1p4UytJVXNC?= =?utf-8?B?dUVJcWtUR1dsRUxsM2xwZTVRYVlkOGc4ZDVQNU1TeWsvYkM5NXNtdlJKSmFw?= =?utf-8?B?RXZucWgyREhscklleEIxcEhna1NETklXNjRJNy9JTkZSTHZkdEQwR2s3MWhu?= =?utf-8?B?aWVBNFh3M0xuWHMyVjVES01jTE00Y2RneHhBaVZKSm5rbTBtMWcyejhjdHJo?= =?utf-8?B?dVZpYjZJV0kveTRRT05MRlRFb3BLWVV4bWRTaGgvQXFIQmk4V1ZnUXpWazZh?= =?utf-8?B?WllFRHlVR1k0V01sc1hYZHpkcG9FL0VzYUozL2dVZ0NXOWhMNW1CK3g3OTUw?= =?utf-8?B?Q1lCNkVKTzhRcjdRTlQrMEZFN2hWT0R5YjR3SnRWdXBvc0pGZW0ycm9ObDZm?= =?utf-8?B?ckRvelpwcGhXQVYyemVCa3ZsM1RobUtwNm05aERFdWxubVIwQTYwRnVCNHFC?= =?utf-8?B?UnNFSW1ZaU90cjNEZ0wxeWZ0Y2t3RTdBenREMHAvek5JMUxMZ0RsbkhQbjhD?= =?utf-8?B?RFF4MitUalYwNHZXUnRjR1I0WHNlRTk3SlhpTWJjNG5XaGVubitXd29JbXZn?= =?utf-8?B?TVFsZTJiKzFwdUhQNXc0VElNUjU3UUhwL2tIY3JiT3NLdlMzd29jTm1mWXkv?= =?utf-8?B?bjRvbVpYZUpYMnZWRVQwcDdiaEFBZFVIbVh0d21KMWYwUC94Vm0yY00vYlVK?= =?utf-8?B?YnNSTlNFQ0RlOE5yajJMdklsTlZPOEU4VWNvcW1oQ3ZzbUVScTI0RnpuYUFC?= =?utf-8?B?VTJ6dVZrYWkvd0ZpaFE0K2xoRHdkYzNrc21Od1k5WDdNeTFrYW15MUQwRHVa?= =?utf-8?B?NVpYdzhKRnRuRnhkTWpnRW5LSEMxd2diSVBxZGRTaUJlQURLYVoxT1YrcDFH?= =?utf-8?B?cUROTUVtMzgxMTFFemY0bHFUNWNpSklDRUkyalFCZ203QldXZkpRZmR2a3Zm?= =?utf-8?B?TDNWaWpwUWhySlozN2M3MVpDN0Y4cHJxaUpEcTdIUzhZZnlaTk9hMUI2aDRP?= =?utf-8?B?N2JGSjNoaUpDa2U2WWJ2THM3ZFRaS3FuOEQ1ZUo5OXlWVVdORWd6VjYvMllv?= =?utf-8?Q?olVHoRgrp4al7z3i/Tk1u0eH9?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: c09295e2-d017-47b5-1686-08db6597678f X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Jun 2023 07:35:15.7034 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: R590nGsR1Dz8N7voLcCM2yph/CgIevijKy2txgdXXmHOtlinHCIPPhCwfEVG3swU/gLupukuQlR0ephAXJC4mA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR04MB9437 On 05.06.2023 07:28, Roberto Bagnara wrote: > Finally, Xen seems to rely on explicitly undefined behavior, namely > C99 UB 58: "A structure or union is defined as containing no named > members (6.7.2.1)." All instances but one occur via macro BUILD_BUG_ON_ZERO, > the remaining instance concerns struct > `cpu_policy::::::::'. > Reliance on undefined behavior might be hard to justify. For starters just a comment here: I'm pretty sure this case was discussed before, and that it was agreed that if need be we'd simply add _ as the name there. Yet then - how did you notice this? Code inspection? I would expect no analysis tool would spot it because it's used for gcc < 4.6 only. And I doubt you run analysis tools in combination with this old a gcc? Jan From xen-devel-bounces@lists.xenproject.org Mon Jun 05 07:38:13 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 05 Jun 2023 07:38:13 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543504.848548 (Exim 4.92) (envelope-from ) id 1q64n6-00008q-6r; Mon, 05 Jun 2023 07:38:12 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543504.848548; Mon, 05 Jun 2023 07:38:12 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q64n6-00008j-3b; Mon, 05 Jun 2023 07:38:12 +0000 Received: by outflank-mailman (input) for mailman id 543504; Mon, 05 Jun 2023 07:38:10 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q64n4-00008Y-DI; Mon, 05 Jun 2023 07:38:10 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q64n4-0003dL-5G; Mon, 05 Jun 2023 07:38:10 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q64n3-0008BW-NU; Mon, 05 Jun 2023 07:38:09 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q64n3-0005X2-Mq; Mon, 05 Jun 2023 07:38:09 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=O/lo45Ix6GtLxJ+wMUyAvCPb/FAfRJnwHXFrpkuIiCc=; b=KSYpSgDw/Qylwr7S5Kmc8WqfKm mZ5gI40uYz0EjkO18eQFeLGj4F5iOr2CDDzNeGDuqFPJ2YsTOEk2mn3iXJbSXPc2G+8hvvXhYhPEi LD3h25a4lgzUZ5YWTBCHBBeZlkktrmpoVrrac4Udr/gBW6lJDGWsBY99JbBA26RfZaYg=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [qemu-mainline test] 181177: regressions - FAIL X-Osstest-Failures: qemu-mainline:test-amd64-amd64-libvirt-pair:leak-check/check/src_host:fail:regression qemu-mainline:test-amd64-amd64-libvirt-pair:leak-check/check/dst_host:fail:regression qemu-mainline:test-amd64-i386-libvirt:leak-check/check:fail:regression qemu-mainline:test-amd64-amd64-libvirt-xsm:leak-check/check:fail:regression qemu-mainline:build-arm64-xsm:xen-build:fail:regression qemu-mainline:build-arm64:xen-build:fail:regression qemu-mainline:test-amd64-amd64-libvirt:leak-check/check:fail:regression qemu-mainline:test-amd64-i386-libvirt-xsm:leak-check/check:fail:regression qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:leak-check/check:fail:regression qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:leak-check/check:fail:regression qemu-mainline:test-amd64-amd64-libvirt-vhd:leak-check/check:fail:regression qemu-mainline:test-amd64-i386-xl-vhd:leak-check/check:fail:regression qemu-mainline:test-amd64-i386-libvirt-raw:leak-check/check:fail:regression qemu-mainline:test-armhf-armhf-libvirt:leak-check/check:fail:regression qemu-mainline:test-armhf-armhf-libvirt-qcow2:leak-check/check:fail:regression qemu-mainline:test-armhf-armhf-libvirt-raw:leak-check/check:fail:regression qemu-mainline:test-armhf-armhf-xl-vhd:leak-check/check:fail:regression qemu-mainline:test-amd64-amd64-xl-qcow2:leak-check/check:fail:regression qemu-mainline:test-amd64-i386-libvirt-pair:leak-check/check/src_host:fail:regression qemu-mainline:test-amd64-i386-libvirt-pair:leak-check/check/dst_host:fail:regression qemu-mainline:test-amd64-coresched-amd64-xl:guest-start:fail:heisenbug qemu-mainline:test-amd64-amd64-xl-qcow2:guest-start/debian.repeat:fail:heisenbug qemu-mainline:test-amd64-i386-libvirt-pair:xen-install/dst_host:fail:heisenbug qemu-mainline:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:build-arm64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking qemu-mainline:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking qemu-mainline:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking qemu-mainline:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking qemu-mainline:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking qemu-mainline:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking qemu-mainline:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking qemu-mainline:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking qemu-mainline:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking qemu-mainline:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: qemuu=848a6caa88b9f082c89c9b41afa975761262981d X-Osstest-Versions-That: qemuu=6972ef1440a9d685482d78672620a7482f2bd09a From: osstest service owner Date: Mon, 05 Jun 2023 07:38:09 +0000 flight 181177 qemu-mainline real [real] http://logs.test-lab.xenproject.org/osstest/logs/181177/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: test-amd64-amd64-libvirt-pair 30 leak-check/check/src_host fail REGR. vs. 180691 test-amd64-amd64-libvirt-pair 31 leak-check/check/dst_host fail REGR. vs. 180691 test-amd64-i386-libvirt 23 leak-check/check fail REGR. vs. 180691 test-amd64-amd64-libvirt-xsm 23 leak-check/check fail REGR. vs. 180691 build-arm64-xsm 6 xen-build fail REGR. vs. 180691 build-arm64 6 xen-build fail REGR. vs. 180691 test-amd64-amd64-libvirt 23 leak-check/check fail REGR. vs. 180691 test-amd64-i386-libvirt-xsm 23 leak-check/check fail REGR. vs. 180691 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 21 leak-check/check fail REGR. vs. 180691 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 21 leak-check/check fail REGR. vs. 180691 test-amd64-amd64-libvirt-vhd 22 leak-check/check fail REGR. vs. 180691 test-amd64-i386-xl-vhd 24 leak-check/check fail REGR. vs. 180691 test-amd64-i386-libvirt-raw 22 leak-check/check fail REGR. vs. 180691 test-armhf-armhf-libvirt 21 leak-check/check fail REGR. vs. 180691 test-armhf-armhf-libvirt-qcow2 20 leak-check/check fail REGR. vs. 180691 test-armhf-armhf-libvirt-raw 20 leak-check/check fail REGR. vs. 180691 test-armhf-armhf-xl-vhd 20 leak-check/check fail REGR. vs. 180691 test-amd64-amd64-xl-qcow2 24 leak-check/check fail in 181159 REGR. vs. 180691 test-amd64-i386-libvirt-pair 30 leak-check/check/src_host fail in 181168 REGR. vs. 180691 test-amd64-i386-libvirt-pair 31 leak-check/check/dst_host fail in 181168 REGR. vs. 180691 Tests which are failing intermittently (not blocking): test-amd64-coresched-amd64-xl 14 guest-start fail in 181159 pass in 181177 test-amd64-amd64-xl-qcow2 21 guest-start/debian.repeat fail pass in 181159 test-amd64-i386-libvirt-pair 11 xen-install/dst_host fail pass in 181168 Tests which did not succeed, but are not blocking: test-arm64-arm64-libvirt-raw 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-xsm 1 build-check(1) blocked n/a test-arm64-arm64-xl 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit1 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit2 1 build-check(1) blocked n/a test-arm64-arm64-xl-thunderx 1 build-check(1) blocked n/a test-arm64-arm64-xl-vhd 1 build-check(1) blocked n/a test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a build-arm64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 180691 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 180691 test-armhf-armhf-libvirt 16 saverestore-support-check fail like 180691 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail like 180691 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop fail like 180691 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail like 180691 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 180691 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop fail like 180691 test-amd64-i386-xl-pvshim 14 guest-start fail never pass test-amd64-i386-libvirt 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-i386-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-credit2 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit2 16 saverestore-support-check fail never pass test-amd64-i386-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-libvirt 15 migrate-support-check fail never pass test-armhf-armhf-xl 15 migrate-support-check fail never pass test-armhf-armhf-xl 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 15 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 16 saverestore-support-check fail never pass test-armhf-armhf-xl-multivcpu 15 migrate-support-check fail never pass test-armhf-armhf-xl-multivcpu 16 saverestore-support-check fail never pass test-armhf-armhf-xl-arndale 15 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 15 saverestore-support-check fail never pass version targeted for testing: qemuu 848a6caa88b9f082c89c9b41afa975761262981d baseline version: qemuu 6972ef1440a9d685482d78672620a7482f2bd09a Last test of basis 180691 2023-05-17 10:45:22 Z 18 days Failing since 180699 2023-05-18 07:21:24 Z 18 days 62 attempts Testing same since 181131 2023-06-03 03:50:56 Z 2 days 6 attempts ------------------------------------------------------------ People who touched revisions under test: Afonso Bordado Akihiko Odaki Akihiro Suda Alex Bennée Alex Williamson Alexander Bulekov Alexander Graf Alistair Francis Ani Sinha Ani Sinha Anton Johansson BALATON Zoltan Bernhard Beschow Bin Meng Brian Cain Brice Goglin Camilla Conte Cindy Lu Clément Chigot Cornelia Huck Cédric Le Goater Cédric Le Goater Daniel Henrique Barboza Daniel P. Berrangé Daniil Kovalev David Hildenbrand Emanuele Giuseppe Esposito Enze Li Eric Auger Eric Blake Eric DeVolder Erico Nunes Eugenio Pérez Fabiano Rosas Fan Ni Fiona Ebner Francisco Iglesias Gavin Shan Gregory Price Gregory Price Hao Zeng Hawkins Jiawei Igor Mammedov Ira Weiny Jason Wang Jean-Philippe Brucker John Snow Jonathan Cameron Juan Quintela Kevin Wolf Laurent Vivier Lei Yang Leonardo Bras Maksim Davydov Marc-André Lureau Marcin Juszkiewicz Marco Liebel Mark Cave-Ayland Markus Armbruster Matheus Tavares Bernardino Mauro Matteo Cascella Michael S. Tsirkin Michael Tokarev Mostafa Saleh Nicholas Piggin Nicolas Saenz Julienne Palmer Dabbelt Paolo Bonzini Peter Maydell Peter Xu Philippe Mathieu-Daudé Raghu H Rene Engel Richard Henderson Richard Purdie Ricky Zhou Ryan Wendland Sebastian Ott Sergio Lopez Sid Manning Song Gao Stefan Hajnoczi Stefano Garzarella Steve Sistare Taylor Simpson Thomas Huth Thomas Weißschuh timothee.cocault@gmail.com Timothée Cocault Tommy Wu Viktor Prutyanov Vitaly Cheptsov Vivek Kasireddy Vladimir Sementsov-Ogievskiy Volker Rümelin Xinyu Li Zeng Hao Zhenyu Zhang Zhenzhong Duan jobs: build-amd64-xsm pass build-arm64-xsm fail build-i386-xsm pass build-amd64 pass build-arm64 fail build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt blocked build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl blocked test-armhf-armhf-xl pass test-amd64-i386-xl pass test-amd64-coresched-i386-xl pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm fail test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm fail test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-i386-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm fail test-arm64-arm64-libvirt-xsm blocked test-amd64-i386-libvirt-xsm fail test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm blocked test-amd64-i386-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-i386-qemuu-rhel6hvm-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-freebsd10-amd64 pass test-amd64-amd64-qemuu-freebsd11-amd64 pass test-amd64-amd64-qemuu-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-i386-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-amd64-i386-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 blocked test-armhf-armhf-xl-credit1 pass test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 blocked test-armhf-armhf-xl-credit2 pass test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-i386-freebsd10-i386 pass test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-i386-qemuu-rhel6hvm-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt fail test-armhf-armhf-libvirt fail test-amd64-i386-libvirt fail test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu pass test-amd64-amd64-pair pass test-amd64-i386-pair pass test-amd64-amd64-libvirt-pair fail test-amd64-i386-libvirt-pair fail test-amd64-amd64-xl-pvshim pass test-amd64-i386-xl-pvshim fail test-amd64-amd64-pygrub pass test-armhf-armhf-libvirt-qcow2 fail test-amd64-amd64-xl-qcow2 fail test-arm64-arm64-libvirt-raw blocked test-armhf-armhf-libvirt-raw fail test-amd64-i386-libvirt-raw fail test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds pass test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-amd64-i386-xl-shadow pass test-arm64-arm64-xl-thunderx blocked test-amd64-amd64-libvirt-vhd fail test-arm64-arm64-xl-vhd blocked test-armhf-armhf-xl-vhd fail test-amd64-i386-xl-vhd fail ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 12540 lines long.) From xen-devel-bounces@lists.xenproject.org Mon Jun 05 07:48:23 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 05 Jun 2023 07:48:23 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543512.848557 (Exim 4.92) (envelope-from ) id 1q64ws-0001i5-91; Mon, 05 Jun 2023 07:48:18 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543512.848557; Mon, 05 Jun 2023 07:48:18 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q64ws-0001hy-6R; Mon, 05 Jun 2023 07:48:18 +0000 Received: by outflank-mailman (input) for mailman id 543512; Mon, 05 Jun 2023 07:48:17 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q64wr-0001hs-8v for xen-devel@lists.xenproject.org; Mon, 05 Jun 2023 07:48:17 +0000 Received: from EUR02-VI1-obe.outbound.protection.outlook.com (mail-vi1eur02on20621.outbound.protection.outlook.com [2a01:111:f400:fe16::621]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 5459ef91-0375-11ee-b232-6b7b168915f2; Mon, 05 Jun 2023 09:48:16 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by PAXPR04MB8391.eurprd04.prod.outlook.com (2603:10a6:102:1c4::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.32; Mon, 5 Jun 2023 07:48:12 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.030; Mon, 5 Jun 2023 07:48:12 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 5459ef91-0375-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=I4wJtaPpFrZO+vKSZpRv19ZpCQO7NbM5NPD3qZvqBQrwW+upHPBrnPUsMBB+kdc2Zi/XOftQTsQKDwk+5gNlmzdyo6ueWAqiuCRhBw+5KMGcLp9NSyyWGcaRNsekEXg098veWsVvs24avg+U4l0lD23AoNziqPuE+1X8wk5TkDzZAq3xO2DRUVBPET8Jp5u8NXT/MEcD2DpF0SHjc4iQyB3RjYpC+tgvln3aC61yILpKMCmONJwBVldbKH6wktPpmSSH7uS7dJ/vWo86NLqo4/UTqsH3V1q0WAaiegBAw2InkPi/+f7D7rFdiUBMUxtvT5iz6k4FheL0qi0mNFHQJQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=SiwLSeZKpgf1V+D68QSnxNZGADunS2xVRcTwifBp2x0=; b=giyza+FpqlPM87k9VjN/8ywj1OoZf2kiUQZB/sbiy6XKjm3z7Ly69poS/K9ryPBqTWypU9z01vIxuFxrjigwlxMKqnHXkfha1QYEA/APlsppULRes1e/rze2xZqG66MQOM7FxuchWzoIv6Vd3TVOTAtXsNPepCkyY8t19HQ9TgOeGw8IDf+ynYyVbWiyvs/5Rub6q/MX/1IB6r1xZFFF2QsxMtDNAxMGyOFxcGb+z9aL8Owm3t8ZWKhtTwJz5UpktMXcKGv72eawE2VANuPVyfFq5gDaZi7HPFFW6KC0ZGhYtjgnQ6HsTswLfAMBcaFbE5QKgiXn+mgJS4rLD7hi4w== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=SiwLSeZKpgf1V+D68QSnxNZGADunS2xVRcTwifBp2x0=; b=oFGQkZmtfJHC6LK9KtX/WqkGUmdWEPd1PH01edaLKYxvRYbZtbXHk9wiTm6QJV3mjzwItrfgJqyOrAQNuhlgMyjk+8hYP35dFh88nP11r6tbTAa10YmCJmB0hpydB2UiBIpmmwuDIHzLTcUDjN2Z9bs3++MJp7JHYH8lLCYhn5P0nBZ/+k3nO9zbFxg2orhQgW2OcKGfvyyO7Cl+DRH/B6HBl8okjPRKAB0U2vqJv/i+EF2JxaDowGP6I2LyZ0m4GkIOiysuvlZSknNB4a0o4XjCBA+LgzAJSRmQ0LcdaaRnL/3TOcUS2Qv3qdkyN3+otvMBsDzzGoYHfwUiI836wQ== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <9783e91e-9d13-6b20-d985-0beb535c7fba@suse.com> Date: Mon, 5 Jun 2023 09:48:14 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.11.2 Subject: Re: [PATCH v2 2/3] x86/spec-ctrl: Fix up the RSBA/RRSBA bits as appropriate Content-Language: en-US To: Andrew Cooper Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , Xen-devel References: <20230601144845.1554589-1-andrew.cooper3@citrix.com> <20230601144845.1554589-3-andrew.cooper3@citrix.com> <36b016e2-b378-f97c-42da-86a330471bf0@suse.com> From: Jan Beulich In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: FR0P281CA0109.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:a8::9) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|PAXPR04MB8391:EE_ X-MS-Office365-Filtering-Correlation-Id: 4b2a773e-588c-4567-1268-08db659936c5 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: gppyMk6sASPYwxNp1XQnOplNme7WfMGOINl/J+U52XeDUAqVh3J1n00PKxvHqZ+H3WZMyOd3hu2AWqFbi5MWvvIZXFID535G+giii1Jjq6ztvDeM9gNoV2KM0PZ3ALbPynyFPJJzt67yt1nOdG0F0vbIcQx2AKplv0EyiSr/++rZ4FB970ZRILmixXIypYfEvqRxaWOIXgkLxYCDYj9d7KwPB6H/UVh//4HOmaGKU6zjvQTck7xmfz76zusWQNmT8sU1cm4ngC6BIcBs4sfkwIxlpCp7iJxTY0EA8buEMWfh7h2WTbhNimUNkS2uWt38TRdzAcur+C6+HCN6wnW8dpP7N7ASWW47CgNBbV/q0rdkMZwN+DSJQaLR2nMwLMXGHU4oWH9suPSmMii0PY7KWnV/sy1LlLbFyMmfroZXwHSibNi8sU2xS7VCEgh5kXehUMc86lJHFuzYn1E8nyNquiLG0xodTIpdisNbq08yq0xw2/EaF1Zfm39OROaWSR/ua8vzWjyQZTnEir+tNnAjyZPXP8R5uK+PNb7D0unFJpHP0L3QEYv/WCneF1GL1njw5Bq1O26H3X8iV+ObSQQY54kSJ3W3DCLBg66l9isFpczrAgRyK7PAwdr+9var2cnpw+NinZ6zduK9LNrlWx4BCw== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(346002)(136003)(376002)(39860400002)(396003)(366004)(451199021)(83380400001)(54906003)(4326008)(6916009)(38100700002)(66556008)(66946007)(66476007)(6486002)(478600001)(186003)(2906002)(36756003)(2616005)(8936002)(8676002)(41300700001)(316002)(5660300002)(31696002)(86362001)(31686004)(66899021)(53546011)(26005)(6512007)(6506007)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?bmlkRlZwcE5LWml2aUdtYkw0aDVXMEtrYmVhSlpETC96d3p2aEU3Wk9vWFJQ?= =?utf-8?B?ZzVUUHA5dmFwVmpHS1dnSmZIbzlLWW8vanFQOE8xZjNDZkNKeXJTQ25RSUxx?= =?utf-8?B?YTY3TXU3UWdDWG84Q1loc3RkaFl3dkVDSTNWQlRkUGRpVnBQSjVIWmRDeGpC?= =?utf-8?B?cERSdytVdkJCWHdVUXp6ZkRHTXl5a1JIUXdPY3grcVVDYXdSWTBQcnViSmhK?= =?utf-8?B?cURXVUZRK2laNkxCamhlQmpsdFUzaUFnRllrcVM2RlQyYksremdEZkwyQWp4?= =?utf-8?B?ZldRSzlwMmNjbUkvcXNsZEdzcUdTRExnTiszMDJWS1JhSnpLVk10L1hzNVdZ?= =?utf-8?B?NnJ3OGRIakd0a3g0SjA5bHNhVytGNnBpVjUra1Fsd2lGaFpPK2N5L0VoMVpx?= =?utf-8?B?V1FhRlhqUVJla0pXVENQWnhYVTlPQ014NFlOYWEzNGFVL2JpUFhpbndZTW81?= =?utf-8?B?NnY4dzJCejBaODNUd3lObzVzZXdLN2ZkNHNOUUJoUnJhNjh1M2FIZ0lhczdk?= =?utf-8?B?Zm9KcVVFUlAyeE5ETVNKUmQ1VkhzbFBtYjcxVkFIdlVGclRmMDVLUDNHaWF2?= =?utf-8?B?STBoYmdLRDlGUnFpdE80TVRWMFFRUkxyT055cVVwTS9OcllHNkl2czl4ZlB5?= =?utf-8?B?RitWR3c3aDgyMmt6QWFzZ2V5QkhvbUhxZDRIc2ZyWFEzVFRwOHpzZ0dybGdX?= =?utf-8?B?c1ZtblNHWHdlQ2JrTzVHdmVpeVJnKzZQZVRaNFNla0oxakJKYVY5QUlZK3ZF?= =?utf-8?B?TWFCUGZ0ZXFmWUZnTXdXNVlUUWVBT210Ti9tK21oSi9CYzExNG1rRDhlNUVV?= =?utf-8?B?SUNqQnlxaElueDdCL29pY1N4Mzdxd2p1RFh5aEg3emoyTlg4b2wyc01obnNk?= =?utf-8?B?cjI5VVJkOHV6UjVqd3JLdHQwQzJXUGJkMmhMZ2d3YjRCRWZKcnhpTzl4Q2Rr?= =?utf-8?B?eU92MzVUYmFhUXdPVkxPRXV3NFlhQXRLNGFsMURFSkt4V2l6SzJjdEhqZG5v?= =?utf-8?B?ZzkvQTNQTHQ4NEJkM3dDR0FadjhCTWxVOXNHRGoxMWpGZjVkZmlXNXEvUWNL?= =?utf-8?B?Y2NWVHpHTE9DS2NhdlpCR2VnMVdvRTVxR053bVZLVmZNeFB0UWpQREt4SmZQ?= =?utf-8?B?N2JkY2xzaWpsOXNWeDNEV1FWd3JCQ3N0S29kbmw5dS8zdlhUR2dUN0F2TEVZ?= =?utf-8?B?M244R1Q5Mk1xdUNSMHVJYU5YMTljNVJ6UGl3bkNMN005eDRhZkV1aU1acURj?= =?utf-8?B?Yy92K3g3aUhNaGhBd2dydWExMnNqRlB3T2EveGJZb2pGT3dOQmNnbzhxREsv?= =?utf-8?B?YjNGS2RPb1grZHpid2tORk1VZk1hV0REWlRWUE9aWTlNbktxbVpWMUh2U29a?= =?utf-8?B?bHY5UURtTWIvZjdodkFaS0V1cFd5ajUyZHRnZDBjWGlHZExtOXptZEZmTXo1?= =?utf-8?B?bGdhZkVYMnJOZ1RJVUE0WU1wMlVOVlU1TzVsZStlU1dVd0tCRmdyTGsvTm0y?= =?utf-8?B?NzVqOWdlUXFPTEI0ZkVmS205cUtWb0dBcHU2dXRCdDdpakwrYW9GdXpQdThH?= =?utf-8?B?dmU4QkFwVjVPaWR3SWUyT2JaRTFUUzgyZWU1eENsL1lyRVpvVXNldVFuWUh2?= =?utf-8?B?NC9wWXhBN3JLNzZPa2UwMXg0VS90QThNUmUrVmlqUVpCZUtjdXZET2VnQjRY?= =?utf-8?B?bjh0ZHdTWnp4bWtVN1ZycnlhR0hLMER3citZeXhiZFNBcUsxK3BuNFdjZi9X?= =?utf-8?B?TWhTcVVlOThDRXRVNGVyelIxLzdCUi83U2l1TzYvUkF6ZGNlQTNGUCtuUU56?= =?utf-8?B?WlZ6OUVRWmJiZDRQMXRlYXRUZzhSQ2g0UHpvNlNzNXZYS0htZHB2eVEvYkxo?= =?utf-8?B?YisxSnk0RTZ5MzBORkw5T1RvcmJNd09kUldRek8zaEh4Mi8yUzBSK3c1RDQz?= =?utf-8?B?alFsd1doSGt1Q205dGlYaDA1bG5PV0RPQ05NYkU2TEVWeUJ3aEhQUkdsRGdv?= =?utf-8?B?aEpCQ2RGeTFSbmpwWTYybm5iYVNqcE0vTlplVWlWeTloc3M1NytXK1AzQ01t?= =?utf-8?B?QlplNnBBakQrSGptV2V5c0szMVNqeVVrTy9UdGMrSXRYdldGOWFwU1UyRDM3?= =?utf-8?Q?sB0PtNQGfUV28OWJQiLSB1AoY?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 4b2a773e-588c-4567-1268-08db659936c5 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Jun 2023 07:48:12.7707 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: BLS0N8ojplfW/JXwlzoriZkeOYSXKkWwmWzxXImTyBrpikf86b3m151tDDm85zuGyD6j6iFBHdYQcc+hMhsjhg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB8391 On 02.06.2023 15:57, Andrew Cooper wrote: > On 02/06/2023 10:56 am, Jan Beulich wrote: >> On 01.06.2023 16:48, Andrew Cooper wrote: >>> @@ -593,15 +596,85 @@ static bool __init retpoline_calculations(void) >>> return false; >>> >>> /* >>> - * RSBA may be set by a hypervisor to indicate that we may move to a >>> - * processor which isn't retpoline-safe. >>> + * The meaning of the RSBA and RRSBA bits have evolved over time. The >>> + * agreed upon meaning at the time of writing (May 2023) is thus: >>> + * >>> + * - RSBA (RSB Alternative) means that an RSB may fall back to an >>> + * alternative predictor on underflow. Skylake uarch and later all have >>> + * this property. Broadwell too, when running microcode versions prior >>> + * to Jan 2018. >>> + * >>> + * - All eIBRS-capable processors suffer RSBA, but eIBRS also introduces >>> + * tagging of predictions with the mode in which they were learned. So >>> + * when eIBRS is active, RSBA becomes RRSBA (Restricted RSBA). >>> + * >>> + * - CPUs are not expected to enumerate both RSBA and RRSBA. >>> + * >>> + * Some parts (Broadwell) are not expected to ever enumerate this >>> + * behaviour directly. Other parts have differing enumeration with >>> + * microcode version. Fix up Xen's idea, so we can advertise them safely >>> + * to guests, and so toolstacks can level a VM safety for migration. >>> + * >>> + * The following states exist: >>> + * >>> + * | | RSBA | EIBRS | RRSBA | Notes | Action | >>> + * |---+------+-------+-------+--------------------+---------------| >>> + * | 1 | 0 | 0 | 0 | OK (older parts) | Maybe +RSBA | >>> + * | 2 | 0 | 0 | 1 | Broken | +RSBA, -RRSBA | >>> + * | 3 | 0 | 1 | 0 | OK (pre-Aug ucode) | +RRSBA | >>> + * | 4 | 0 | 1 | 1 | OK | | >>> + * | 5 | 1 | 0 | 0 | OK | | >>> + * | 6 | 1 | 0 | 1 | Broken | -RRSBA | >>> + * | 7 | 1 | 1 | 0 | Broken | -RSBA, +RRSBA | >>> + * | 8 | 1 | 1 | 1 | Broken | -RSBA | >>> * >>> + * However, we doesn't need perfect adherence to the spec. Identify the >>> + * broken cases (so we stand a chance of spotting violated assumptions), >>> + * and fix up Rows 1 and 3 so Xen can use RSBA || RRSBA to identify >>> + * "alternative predictors potentially in use". >> Considering that it's rows 2, 6, 7, and 8 which are broken, I find this >> comment a little misleading. To me it doesn't become clear whether them >> subsequently being left alone (and merely a log message issued) is >> intentional. > > It is intentional. > > I don't know if these combinations exist in practice anywhere or not.  > Intel think they oughtn't to, and it's quite possible that the printk() > is unreachable, but given the complexity and shifting meanings over time > here, I think it would be unwise to simply assume this to be true. I agree. > But at the same time, if it is an unreachable code, it would be equally > unwise to have a load of fixup code which we can't test.  I've still got > the fixup code in a separate patch incase we need to put it back in. Iirc the fixup code you had wasn't really "a load of code". Thing though is: If such a combination did exist, according to our history we'd be at least on the edge of needing to issue an XSA along with adding the missing fixup code. From all I can tell that risk would be lower if we had that fixup code: It might well be correct. Nevertheless, if you decide to leave out any fixup, may I ask that you say so very explicitly in the comment? >>> + */ >>> + if ( cpu_has_eibrs ? cpu_has_rsba /* Rows 7, 8 */ >>> + : cpu_has_rrsba /* Rows 2, 6 */ ) >>> + printk(XENLOG_ERR >>> + "FIRMWARE BUG: CPU %02x-%02x-%02x, ucode 0x%08x: RSBA %u, EIBRS %u, RRSBA %u\n", >>> + boot_cpu_data.x86, boot_cpu_data.x86_model, >>> + boot_cpu_data.x86_mask, ucode_rev, >>> + cpu_has_rsba, cpu_has_eibrs, cpu_has_rrsba); >>> + >>> + /* >>> * Processors offering Enhanced IBRS are not guarenteed to be >>> * repoline-safe. >>> */ >>> - if ( cpu_has_rsba || cpu_has_eibrs ) >>> + if ( cpu_has_eibrs ) >>> + { >>> + /* >>> + * Prior to the August 2023 microcode, many eIBRS-capable parts did >>> + * not enumerate RRSBA. >>> + */ >>> + if ( !cpu_has_rrsba ) >>> + setup_force_cpu_cap(X86_FEATURE_RRSBA); >>> + >>> + return false; >>> + } >> No clearing of RSBA in this case? I fear we may end up with misbehavior if >> our own records aren't kept consistent with our assumptions. (This then >> extends to the "just a log message" above as well.) > > Well quite, which is why I've gone to lengths to state what our > assumptions are. > > Right now, there is nothing in Xen itself where RSBA vs RRSBA matters.  > Until this patch, we don't even have cpu_has_rrsba, and remember that > Xen was not vulnerable to CVE-2022-29901 (Intel Retbleed) because we > chose to use the microcode IBRS implementation on early Skylake, rather > than hope that Retpoline was safe enough and go with the faster option. > > > In v1, having RSBA and RRSBA (working as I thought they were supposed to > work) *did* matter for the default cpu-policy derivation to work nicely. > > But that was invalidated by the clarification to say that RSBA and RRSBA > should never be seen together, which in turn completely changed the > derivation logic. > > In v2, it doesn't matter if Xen ends up seeing both RSBA and RRSBA.  It > explicitly can cope (by treating them the same WRT Retpoline), and the > derivation logic now calculates both completely from scratch (and based > on RSBA || RRSBA). Like above, may I ask that you say so explicitly in the / a comment right here? >> Also the inner conditional continues to strike me as odd; could you add >> half a sentence to the comment (or description) as to meaning to leave >> is_forced_cpu_cap() function correctly (which in turn raises the question >> whether - down the road - this is actually going to matter)? > > Look at the single user of is_forced_cpu_cap(). > > I am not micro-optimising a single branch out of the init section on the > blind hope that the contradictory behaviour it creates won't matter in > the future.  Every forced cap is an abnormal case, and it's almost > certainly my future time which will be spent unravelling the > contradictory behaviour when it comes back to bite. My request isn't about optimization at all, but about an apparent pattern of unnecessary redundancy (which only as a side effect leads to the elimination of a branch and hence some tiny bit of optimization). But if you're sure this is going to be obvious to everyone but me, I'm not going to insist. >>> + /* >>> + * RSBA is explicitly enumerated in some cases, but may also be set by a >>> + * hypervisor to indicate that we may move to a processor which isn't >>> + * retpoline-safe. >>> + */ >>> + if ( cpu_has_rsba ) >>> return false; >>> >>> + /* >>> + * At this point, we've filtered all the legal RSBA || RRSBA cases (or the >>> + * known non-ideal cases). If ARCH_CAPS is visible, trust the absence of >>> + * RSBA || RRSBA. There's no known microcode which advertises ARCH_CAPS >>> + * without RSBA or EIBRS, and if we're virtualised we can't rely the model >>> + * check anyway. >>> + */ >> I think "no known" wants further qualification: When IBRSB was first >> introduced, EIBRS and RSBA weren't even known about. I also didn't >> think all hardware (i.e. sufficiently old one) did get newer ucode >> when these started to be known. Possibly you mean "... which wrongly >> advertises ..."? > > ARCH_CAPS equally didn't exit originally.  ARCH_CAPS, RSBA and EIBRS all > appeared together - see how they're bits 0 and 1 in the MSR.  RRSBA on > the other hand is bit 19, which gives you some idea of how recent it is. Hmm, yes, I see. Jan From xen-devel-bounces@lists.xenproject.org Mon Jun 05 07:50:36 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 05 Jun 2023 07:50:36 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543517.848568 (Exim 4.92) (envelope-from ) id 1q64yv-00035v-ND; Mon, 05 Jun 2023 07:50:25 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543517.848568; Mon, 05 Jun 2023 07:50:25 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q64yv-00035o-Jn; Mon, 05 Jun 2023 07:50:25 +0000 Received: by outflank-mailman (input) for mailman id 543517; Mon, 05 Jun 2023 07:50:23 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q64yt-00035g-Jw for xen-devel@lists.xenproject.org; Mon, 05 Jun 2023 07:50:23 +0000 Received: from EUR02-VI1-obe.outbound.protection.outlook.com (mail-vi1eur02on20630.outbound.protection.outlook.com [2a01:111:f400:fe16::630]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 9ef3dcb0-0375-11ee-8611-37d641c3527e; Mon, 05 Jun 2023 09:50:21 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by PAXPR04MB8391.eurprd04.prod.outlook.com (2603:10a6:102:1c4::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.32; Mon, 5 Jun 2023 07:50:19 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.030; Mon, 5 Jun 2023 07:50:18 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 9ef3dcb0-0375-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=lw/J3hnZoqqbNfqZ1d9TiOgciEIXuhpjgxim0KUTJsfnY8XzHcEL2Q2I8SDrz7Om4Cnpn6PS4EOb3GsC68BIB5HXenj2aMbUNrwOEGLy/EVBz74CFrK+j1p7nd68+9WlJBmzaOy2azB5S8hv5QNVqYHPbdok6Q1aB51mYyoHzaW/qIFJgIi10EpccPBDMZwJOENk9lNeZxkFHwUxVnC2GggxW6323+xpbBQMN+rxkPOa7Kc7OBExRE2lFB+oxUvF8CUk4/nvQMiwQRQuXOUOfYoZCvuD5TXXO3m86NqeB0TMMNOq7kpViWP0qHwxG/XXfgt6Ma8PnwL2yS1uk02t5Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=AENw7PUmk6A3KzztP2LH3hDEikp79t6QK+nwyPUrax0=; b=Tjq/i8Az+dTcLjqHEflZihkg5KT1tFQ/Hfro1wKuY3gITP7Rsu2cGv8FYXya/QWFgSHnq+YUkly9qlWQQsYjF1CF2GFoN5XOFd7h7qSnNbXh1+Sp4SNhOKG8dBsqTq8oKjouwOLU7/DUOg9E2u7/GVln87qHxuqKe17K45wf9pwbuy43PI7RtxsA1neWPxRG20+04Cpds40NqufSlGudWdBbwTE8/YY6wvY35nJZv2x5HboVhsbeYe0WvIVQtLXwpkO2e/tkAA4VNDmt/vCEWQmpJxrV2XAJsf19ryZZP4zvjUhwrj/rLwaN+Ea033PJwEfMFl6F75m8zioRvl2SWg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=AENw7PUmk6A3KzztP2LH3hDEikp79t6QK+nwyPUrax0=; b=A0lp0GSHDIHCIcMR8p1U1L5jeN4T60hpAUmhbxzgN5FlpIahQ4U2a8OOLmTi0wS5zBpzBGdRbx+dC8f2E1grvURyamQJmXVanqLVs8FcsXfdnPFmM6YDxbe1tap8BcHOM+NnmtvjWRHk16PX2FuA+MJ7IrQaDTFYy0tF6myA3R2t24LfvTEGN9gKnZxH/DoaBG2YQSIeInFBEuzhedKgh9bLjdttCCURpoUVNDCpgaIz/1pTrzxdncuM3tCtsdoOHNPlq5W2vodU/x/o2JoVjIRfh+4XjUjfQu4a5mXd1RWSrQxyHXDeYXjOrknf2G90IDCoJVaaFKMCoTYn3KR/iA== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <150d8499-6aed-c81a-1204-d48a4a32b8aa@suse.com> Date: Mon, 5 Jun 2023 09:50:19 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.11.2 Subject: Re: [PATCH v2 2/3] x86/spec-ctrl: Fix up the RSBA/RRSBA bits as appropriate Content-Language: en-US From: Jan Beulich To: Andrew Cooper Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , Xen-devel References: <20230601144845.1554589-1-andrew.cooper3@citrix.com> <20230601144845.1554589-3-andrew.cooper3@citrix.com> <36b016e2-b378-f97c-42da-86a330471bf0@suse.com> <9783e91e-9d13-6b20-d985-0beb535c7fba@suse.com> In-Reply-To: <9783e91e-9d13-6b20-d985-0beb535c7fba@suse.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: FR3P281CA0199.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:a5::16) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|PAXPR04MB8391:EE_ X-MS-Office365-Filtering-Correlation-Id: 1d8cf10c-8dc0-4739-3f5f-08db659981cd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: CaIq/Aaxyt6SzIvHCbuuSxjRCFN2E8JAFV1CPqIbPU4Cn8liBAN1ppyBjVsw7jcauRAMMBOx0scogWKGnSs4tF+DZ4a9xuqSbSSVvZhZVBiZXCzXCGJWIW5DKqFSiBQIacKt153EzTV5+ZP8ubogX9MP+PMTdzSRx/jog096VV4hhn3ycwYBecQl07qsThHdqvrO79BbaX0k3D3O3UCqHhRp3klfa/d3+xZoDwU6mBF00oiBrkEwlbwdpqs5Cyt/l137VKdbjreHI/u9lHXMFBLkiYOul79d7f3NIJahSgNeicj7h4c0yKdvB+d+rEjZ/Zhw/wzB0BRpEVNTdkUUChOtwNJ8fdu4m0N6vzGmGbr/GfSKUpvhC5I/JTIPtrNjxpw6ktDh2fWF5nxsby6TxSYxuq5hXgVk9UgTBqRk2BrBgV6qDPAhzawDztaqozspfXm3RcnFCsOZhtQEPlFgwr70spU2IjNkxDFHQ97B6rd7TLlXfmRL6HD49zFQZzLwQMa5Wyg6JLbKQTRlaYKiDFXCfayZybA21zAKC5gTblkGRULDhOv60+i25m2t9vGlb4AOJN1tNv/vaTSoqnrb4QCu91iCC9bbZW6mjfuqMVZ97UWnJTyVBhZo1hFU0zu/zc8l0YsLLMYvz7obyHWsqA== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(346002)(136003)(376002)(39860400002)(396003)(366004)(451199021)(83380400001)(54906003)(4326008)(6916009)(38100700002)(66556008)(66946007)(66476007)(6486002)(478600001)(186003)(2906002)(36756003)(2616005)(8936002)(8676002)(41300700001)(316002)(5660300002)(31696002)(86362001)(31686004)(53546011)(26005)(6512007)(6506007)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?ZmMzOVo0d003K1ZjM1RNUU5CSmhvV0tKZDN5bk12c0dDazZPKzhYOXdFRVg2?= =?utf-8?B?ejRyZmtBcWhNTUxTWVFzblU5dkpndndoelFRRlIrSWFBSTVsREk2M243WE9P?= =?utf-8?B?NVFTbFlMbG45aDBzRWdJWkRqalJmQUl5V3hHTkNBbUdOcWprYnc2Nm5iVXRP?= =?utf-8?B?VG9PelREMGZNWFpCZ2xQdTBSUzBQYkdoSnBxSi9nUnhFSXI2YW40UVh6L0p6?= =?utf-8?B?RC9NRVJ2ZGFlcDY5cTlKSVBPRllZeVFKTUpnZTJDOU0vbzNQenc1SkVwRGxi?= =?utf-8?B?cFkzbDVIUlhKblF0OHBhQkNtOUlESURKUnNWdW1oM2x5dTBQNVl3REpyMys2?= =?utf-8?B?SDVBYnZxb29pQm85Nzd1amRPdm93bFJBK2FGS1AzOVQ4NSszc1g0c1BQZTkw?= =?utf-8?B?a3V1N2NDSkFjRE9WdkF5QmtuVUtBWGU1VmJCY2VlTHBucjhYU0dJTDJzcmFS?= =?utf-8?B?TXJYNUFjTjhwRm05cVpiYWVkd2Z2NnFzUTNPQVNkV0ViRytSMGgrTTVXZTYy?= =?utf-8?B?RVJWQzIySEsyZ1RnTWZxYTc4NGwzY05sditzMWFHZ2RvbzAyd2IveHJ3THZW?= =?utf-8?B?cnZYZVc2ZGJhMEFOUzIzd2FGWXhYejNoTDI0R0s5alYvUEI5T2FmMzJsY1hh?= =?utf-8?B?azFSNTd2QzNCeUNERTkxNzBqVVYvOXViOG5Xdndya1NQQ3dVMlY5d3B1T20z?= =?utf-8?B?MC8rM0dqWC9LcUplb3cwYzQ3Ly9EL1pQYlczU01VWk13ajRQTExxWmFRQUlT?= =?utf-8?B?bnJzSU9aaERmZHJuMzduVzlkR2dyNlVhU0gvVnpJRE9WdlBoZ1pvcHA0RWdh?= =?utf-8?B?ekpZd3FKUGJxS1pKVUh6THEvQ3lBQ1FTUmlWOE5FTzZNbkNiS0FYeHFEVDcv?= =?utf-8?B?ZWRRbU95bmZuc0lrLzZWQjhlcXdGcHNDNlI3c0dkcDI5dXYzTXBXSW1TVm5V?= =?utf-8?B?WGJwTFpTb3J5OEhSSGs1L2lON04xODBrNkJsWGp1MHBOM3JqODJadEFiVlNQ?= =?utf-8?B?QWVVbW5aOWhmRTRMbWp6S3F2NVFwUDRSa3JHUzQyRi9aSGVhT1I3MlRBclpG?= =?utf-8?B?czhwWUtHUS96L24yNVlzMzlrQlBXemxadGJ5M2U5SEloSkU4Slc0MHBGMXdX?= =?utf-8?B?SlJvSUlqejRSeHJIZ0wxYURtNzM2MkVqVDlzSi9VTEVnZ1lmVWNZMGNORTdE?= =?utf-8?B?UkUyN3Vkd3Bnc2U1ejBlWVJEb0tRam52aTkwNURUNDVBV25aNFBPdUpneTVj?= =?utf-8?B?RE5CY1hWbDJBeEVVcHJISTZUcVRiVnBkbThwYkVwSFVqMnhTK3RYcDUxOThi?= =?utf-8?B?akR0RGxCbWJ5Tk9zMGJBOStoMjlSMWlSTnF4dHBjUW5KQVF4dG51VFllRnNp?= =?utf-8?B?c1dQNk40R0NuM29KNThaMW5MaFQ1MDJxckpxWXZ2ay9uK1g2RUpVKzJSZGhR?= =?utf-8?B?VXBzTDFNSXU5NmF5QjZNTDk0cVBrOTNNaU1DTVRNQk9kN1V6L09Delk3dmxG?= =?utf-8?B?SFk4S3F5N28yeEFsdnpRMWRVKzhra1JGZWNIN01scVVISXpkYlJURjNrTTBt?= =?utf-8?B?WldDeVVnTU8xcjdHYkhuVWRkS0NOc3JnSTNiYm9JRUlTdHZvVE5za1YraEYx?= =?utf-8?B?MElMZlRPMGZ5WFpyQ3IvS2cwdzJ6eCtRZ1NwTmcvSHNVaFhGSit5REdCVS9H?= =?utf-8?B?eWpwSUdGUzJ6VGFid2NBSEFxbldZTmJsMjdXRk12REJmZXRmR3prVlZzcDJt?= =?utf-8?B?TTNWcjYyK3J1akhBcVJtMkZ4blhYNmF4Q3o2YllKMGx6K3duUEh2S2hFM2hH?= =?utf-8?B?Q21sNVQ5LzFBYks0ei8yRzB0M2xaZ0NGU29UajlwZFVRWUNjUzRrdGN1NHB6?= =?utf-8?B?WVhmTXdpTjg2MHBOMXZaY3FuNFR5YitSYjFXYXJTREQzcXZUbTl3MEJuay9F?= =?utf-8?B?L3ByM2xIanZQZnpYVXZ0UGhveUNmdHJBQXNBWk9RcUNYQ0JqVzczZThKc2oz?= =?utf-8?B?YUUyMzBFWlVNMHVWb25wSC9NUktjNFlqekU2NlpSeThkSHd5Z3ViMW45UE5w?= =?utf-8?B?dlRjKzFxYzh6UmpaUVYrU245V1BNd21PU1MyLzhxcklRQmRKeEYzVy9XZ3Qx?= =?utf-8?Q?sHqoV7+9RBkAaoq5SrdF1Xxc3?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 1d8cf10c-8dc0-4739-3f5f-08db659981cd X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Jun 2023 07:50:18.6805 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: pJJnfJoftEhsTLXxPEAWk6jlU7Z36WtCKJ57RcJG/RTakuP+bJRBcDJcNXNgIQw93112EtAsTmLLPJ4SSWNAFg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB8391 On 05.06.2023 09:48, Jan Beulich wrote: > On 02.06.2023 15:57, Andrew Cooper wrote: >> On 02/06/2023 10:56 am, Jan Beulich wrote: >>> On 01.06.2023 16:48, Andrew Cooper wrote: >>>> @@ -593,15 +596,85 @@ static bool __init retpoline_calculations(void) >>>> return false; >>>> >>>> /* >>>> - * RSBA may be set by a hypervisor to indicate that we may move to a >>>> - * processor which isn't retpoline-safe. >>>> + * The meaning of the RSBA and RRSBA bits have evolved over time. The >>>> + * agreed upon meaning at the time of writing (May 2023) is thus: >>>> + * >>>> + * - RSBA (RSB Alternative) means that an RSB may fall back to an >>>> + * alternative predictor on underflow. Skylake uarch and later all have >>>> + * this property. Broadwell too, when running microcode versions prior >>>> + * to Jan 2018. >>>> + * >>>> + * - All eIBRS-capable processors suffer RSBA, but eIBRS also introduces >>>> + * tagging of predictions with the mode in which they were learned. So >>>> + * when eIBRS is active, RSBA becomes RRSBA (Restricted RSBA). >>>> + * >>>> + * - CPUs are not expected to enumerate both RSBA and RRSBA. >>>> + * >>>> + * Some parts (Broadwell) are not expected to ever enumerate this >>>> + * behaviour directly. Other parts have differing enumeration with >>>> + * microcode version. Fix up Xen's idea, so we can advertise them safely >>>> + * to guests, and so toolstacks can level a VM safety for migration. >>>> + * >>>> + * The following states exist: >>>> + * >>>> + * | | RSBA | EIBRS | RRSBA | Notes | Action | >>>> + * |---+------+-------+-------+--------------------+---------------| >>>> + * | 1 | 0 | 0 | 0 | OK (older parts) | Maybe +RSBA | >>>> + * | 2 | 0 | 0 | 1 | Broken | +RSBA, -RRSBA | >>>> + * | 3 | 0 | 1 | 0 | OK (pre-Aug ucode) | +RRSBA | >>>> + * | 4 | 0 | 1 | 1 | OK | | >>>> + * | 5 | 1 | 0 | 0 | OK | | >>>> + * | 6 | 1 | 0 | 1 | Broken | -RRSBA | >>>> + * | 7 | 1 | 1 | 0 | Broken | -RSBA, +RRSBA | >>>> + * | 8 | 1 | 1 | 1 | Broken | -RSBA | >>>> * >>>> + * However, we doesn't need perfect adherence to the spec. Identify the >>>> + * broken cases (so we stand a chance of spotting violated assumptions), >>>> + * and fix up Rows 1 and 3 so Xen can use RSBA || RRSBA to identify >>>> + * "alternative predictors potentially in use". >>> Considering that it's rows 2, 6, 7, and 8 which are broken, I find this >>> comment a little misleading. To me it doesn't become clear whether them >>> subsequently being left alone (and merely a log message issued) is >>> intentional. >> >> It is intentional. >> >> I don't know if these combinations exist in practice anywhere or not.  >> Intel think they oughtn't to, and it's quite possible that the printk() >> is unreachable, but given the complexity and shifting meanings over time >> here, I think it would be unwise to simply assume this to be true. > > I agree. Thinking of it - would we perhaps want to go a step further an taint the system in such a case? I would then view this as kind of "Xen not (security) supported on this hardware." Until we manage to fix (or work around) the issue. Jan From xen-devel-bounces@lists.xenproject.org Mon Jun 05 07:52:23 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 05 Jun 2023 07:52:23 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543523.848577 (Exim 4.92) (envelope-from ) id 1q650e-0003iK-4a; Mon, 05 Jun 2023 07:52:12 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543523.848577; Mon, 05 Jun 2023 07:52:12 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q650e-0003iD-22; Mon, 05 Jun 2023 07:52:12 +0000 Received: by outflank-mailman (input) for mailman id 543523; Mon, 05 Jun 2023 07:52:11 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q650d-0003i4-3z for xen-devel@lists.xenproject.org; Mon, 05 Jun 2023 07:52:11 +0000 Received: from NAM12-DM6-obe.outbound.protection.outlook.com (mail-dm6nam12on20608.outbound.protection.outlook.com [2a01:111:f400:fe59::608]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id dec66c6d-0375-11ee-b232-6b7b168915f2; Mon, 05 Jun 2023 09:52:09 +0200 (CEST) Received: from SJ0PR13CA0065.namprd13.prod.outlook.com (2603:10b6:a03:2c4::10) by SA1PR12MB8700.namprd12.prod.outlook.com (2603:10b6:806:388::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.27; Mon, 5 Jun 2023 07:52:05 +0000 Received: from DM6NAM11FT014.eop-nam11.prod.protection.outlook.com (2603:10b6:a03:2c4:cafe::48) by SJ0PR13CA0065.outlook.office365.com (2603:10b6:a03:2c4::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.19 via Frontend Transport; Mon, 5 Jun 2023 07:52:04 +0000 Received: from SATLEXMB03.amd.com (165.204.84.17) by DM6NAM11FT014.mail.protection.outlook.com (10.13.173.132) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6455.32 via Frontend Transport; Mon, 5 Jun 2023 07:52:04 +0000 Received: from SATLEXMB08.amd.com (10.181.40.132) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Mon, 5 Jun 2023 02:52:03 -0500 Received: from SATLEXMB04.amd.com (10.181.40.145) by SATLEXMB08.amd.com (10.181.40.132) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Mon, 5 Jun 2023 00:52:03 -0700 Received: from [10.71.193.39] (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server id 15.1.2375.34 via Frontend Transport; Mon, 5 Jun 2023 02:52:01 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: dec66c6d-0375-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=XciT/aLfvwWAH8P6K885nx9mQUHpEPV7tGczueIU8jELk9RdxVDxG0QBYWiBF9ye+JzHr/99wx3fASkr2YeetNVbu5h0GYUSqdw2ATFCE6CJTwMDwi6Pu0aiu5gquMlK5oAWLwmsyIkukotEIm99GSxN2IIYGGuRNhSR0s9CwszfEbvTubzomeG5DaGM9iwJFnrHQk4sc9N2YcqijGZd8y2UwPfL6BFX0tjeOi6XLcVEYTCt22FoYfChsUw6g5IRsc5MlLensWlIhPNaK8SSP+mYYsZmMbL/bRZbym+k1xJvDpc+xA6Gw4t8zneCSr+mdYU9LjKwa+8Gyzpn2s1MnA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=WzJTBnEPceJ8lQFpAoNXhBVptBXnXa6NZujWJQwLPao=; b=O8c4QASTJoY181M07luVEtPYFpRnfnrt1A5fjj4oNZKO/ccU7MFmIiRydakKe48nBikmw4j/fjV9yvNxYAeeFSO/ddQKxzSOcbTTSqsyJmKEH6inlEC/96203IMv/uePatezTdkJLaNLEqvV+4WJzzaQlKOzYArj5bwFQrDY29k+fF93oQ1fmwFB6xrwIUwOgyWjvEK8oEPVT6XuB1pZp+EsoI9zxOCq245u7OZzUwXC6sf7EgZ3hVPX47jt8j98RyjsDjiIcZKNoY4wG9ZlQKSTcWBLQHqc8MiJxG/iNVsMQ2DowW68+NwF+Anf8m21G5FO58+g5Xkdg79xXfQ6/g== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=WzJTBnEPceJ8lQFpAoNXhBVptBXnXa6NZujWJQwLPao=; b=VuXhgrkAy66HTP1MOVfuc1Cckh8HZLgE/QXJOcEsAu9Yx4KJ+B7tGFP8573jiKVd/EdlDCeqOq+K9URIjQL6Nb8tGiYFGQMPPi+VEuK3hBc1A7BbWznR68Nkt3HQRoVh42hfgqbYraNnffHM3sowb3ZjIuz6X7WYlme7RhjpkoM= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C Message-ID: Date: Mon, 5 Jun 2023 09:52:01 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [XEN][PATCH v7 15/19] xen/arm: Implement device tree node removal functionalities Content-Language: en-US To: Vikram Garhwal , CC: , , Julien Grall , Bertrand Marquis , "Volodymyr Babchuk" , Andrew Cooper , George Dunlap , "Wei Liu" References: <20230602004824.20731-1-vikram.garhwal@amd.com> <20230602004824.20731-16-vikram.garhwal@amd.com> From: Michal Orzel In-Reply-To: <20230602004824.20731-16-vikram.garhwal@amd.com> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DM6NAM11FT014:EE_|SA1PR12MB8700:EE_ X-MS-Office365-Filtering-Correlation-Id: 35aaab0c-82bc-4c09-7561-08db6599c0d5 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: lbFAMJbFH2MpcGJFJesyspqHpWdDXmJN8MwswbhsmQbdDiaMxxQ8zOQUkgfMsJMkqZSlGuEholInpPSrBhC4/3W4IlJ3Dqu4o1APY7TJ+7WvtFm5I697KYE1G64dGGbOrZZGyQ48o8w+a17Y8cIyl7XE+o19lXt2Wu1sF9JxmY4DQ6OzpSzTntTTYDVPQ+i2RIYif51yY7D63lr+LVTSNydaLQiIfWvfBedRxCM3J9nA6P60oYjQmu52mb8dT6JicqlwaAfSjZv16c1/cyfALbdDv3kPxCBBFfpfe3ApY+jhQWtUYfznS3SUOCnG9eRAH1tZ23RPclB5kozVn1bFWHVFUj7O3bd8IveAped3dx0kwpbJXiFd9yZ3uXz6rDCWRwhG6CgJ441NNQmdpS/Ydw27dDbEMAA1fh5/m1Y6kCKz5Vr6CEuSSwwFSaFEfDASdcIIsyEa/PItEHV4b6q0RqJAyZb2sGy0IEd58wl5jamm0+kMKm1eLTQssz/Q1bLBbnlx+5Vh3KtDFKPj92sYV5Ijo97TD17VT3T1Gh5cE3ArBYlo6u+LwklWDhHggZuUpEuLc54AGmVegPOLvVvSP7SNc2jsPB/iN6dHKrsjGrmWS5iOeENCutN1VfFxoX8E8NOH4Fx2TMGKvG76zqjUk4t0WAPMZvUQQGC5HBeyXbptTG8g5DVq4JCoX6qWCRe7sSrT3CeqFK9cZlLnQLCXyadKEpZg+SqvnyprBJ/sYLDUerZiFlDphnszOYveCWZh2d+o0kwVN+bh9oD13HULv5xSPwGmYlpRdnySevAAChNekDur8PjO2y2wJSRXuouo X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(396003)(136003)(376002)(39860400002)(346002)(451199021)(40470700004)(46966006)(36840700001)(82310400005)(44832011)(8936002)(31686004)(8676002)(5660300002)(41300700001)(2906002)(30864003)(316002)(4326008)(40460700003)(70586007)(70206006)(31696002)(36860700001)(82740400003)(2616005)(356005)(26005)(47076005)(40480700001)(86362001)(83380400001)(478600001)(426003)(336012)(81166007)(186003)(53546011)(16576012)(54906003)(36756003)(110136005)(43740500002)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Jun 2023 07:52:04.1892 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 35aaab0c-82bc-4c09-7561-08db6599c0d5 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com] X-MS-Exchange-CrossTenant-AuthSource: DM6NAM11FT014.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA1PR12MB8700 Hi Vikram, On 02/06/2023 02:48, Vikram Garhwal wrote: > Introduce sysctl XEN_SYSCTL_dt_overlay to remove device-tree nodes added using > device tree overlay. > > xl dt-overlay remove file.dtbo: > Removes all the nodes in a given dtbo. > First, removes IRQ permissions and MMIO accesses. Next, it finds the nodes > in dt_host and delete the device node entries from dt_host. > > The nodes get removed only if it is not used by any of dom0 or domio. > > Also, added overlay_track struct to keep the track of added node through device > tree overlay. overlay_track has dt_host_new which is unflattened form of updated > fdt and name of overlay nodes. When a node is removed, we also free the memory > used by overlay_track for the particular overlay node. > > Nested overlay removal is supported in sequential manner only i.e. if > overlay_child nests under overlay_parent, it is assumed that user first removes > overlay_child and then removes overlay_parent. > > Signed-off-by: Vikram Garhwal > > --- > Changes from v6: > Add explicit padding for xen_system_dt_overlay{} > Update license. > Rearrange xfree in dt_sysctl() > Update overlay_track struct comment with relevant message. > Fix missing xen/errno.h for builds without CONFIG_OVERLAY_DTB cases. > Fix header formatting. > --- > xen/arch/arm/sysctl.c | 16 +- > xen/common/Makefile | 1 + > xen/common/dt-overlay.c | 420 +++++++++++++++++++++++++++++++++++ > xen/include/public/sysctl.h | 24 ++ > xen/include/xen/dt-overlay.h | 59 +++++ > 5 files changed, 519 insertions(+), 1 deletion(-) > create mode 100644 xen/common/dt-overlay.c > create mode 100644 xen/include/xen/dt-overlay.h > > diff --git a/xen/arch/arm/sysctl.c b/xen/arch/arm/sysctl.c > index b0a78a8b10..8b813c970f 100644 > --- a/xen/arch/arm/sysctl.c > +++ b/xen/arch/arm/sysctl.c > @@ -9,6 +9,7 @@ > > #include > #include > +#include > #include > #include > #include > @@ -21,7 +22,20 @@ void arch_do_physinfo(struct xen_sysctl_physinfo *pi) > long arch_do_sysctl(struct xen_sysctl *sysctl, > XEN_GUEST_HANDLE_PARAM(xen_sysctl_t) u_sysctl) > { > - return -ENOSYS; > + long ret; > + > + switch ( sysctl->cmd ) > + { > + case XEN_SYSCTL_dt_overlay: > + ret = dt_sysctl(&sysctl->u.dt_overlay); > + break; > + > + default: > + ret = -ENOSYS; > + break; > + } > + > + return ret; > } > > /* > diff --git a/xen/common/Makefile b/xen/common/Makefile > index 46049eac35..e7e96b1087 100644 > --- a/xen/common/Makefile > +++ b/xen/common/Makefile > @@ -8,6 +8,7 @@ obj-$(CONFIG_DEBUG_TRACE) += debugtrace.o > obj-$(CONFIG_HAS_DEVICE_TREE) += device_tree.o > obj-$(CONFIG_IOREQ_SERVER) += dm.o > obj-y += domain.o > +obj-$(CONFIG_OVERLAY_DTB) += dt-overlay.o > obj-y += event_2l.o > obj-y += event_channel.o > obj-y += event_fifo.o > diff --git a/xen/common/dt-overlay.c b/xen/common/dt-overlay.c > new file mode 100644 > index 0000000000..b2a7e441df > --- /dev/null > +++ b/xen/common/dt-overlay.c > @@ -0,0 +1,420 @@ > +/* SPDX-License-Identifier: GPL-2.0-only */ > +/* > + * xen/common/dt-overlay.c > + * > + * Device tree overlay support in Xen. > + * > + * Copyright (C) 2023, Advanced Micro Devices, Inc. All Rights Reserved. > + * Written by Vikram Garhwal > + * > + */ > +#include > +#include > +#include > +#include > +#include > + > +static LIST_HEAD(overlay_tracker); > +static DEFINE_SPINLOCK(overlay_lock); > + > +/* Find last descendants of the device_node. */ > +static struct dt_device_node * > + find_last_descendants_node(struct dt_device_node *device_node) I make this remark at every single revision. Please do the indentation correctly, i.e.: static struct dt_device_node * find_last_descendants_node(struct dt_device_node *device_node) Also, I think device_node can be const. > +{ > + struct dt_device_node *child_node; > + > + for ( child_node = device_node->child; child_node->sibling != NULL; > + child_node = child_node->sibling ); > + > + /* If last child_node also have children. */ > + if ( child_node->child ) > + child_node = find_last_descendants_node(child_node); > + > + return child_node; > +} > + > +static int dt_overlay_remove_node(struct dt_device_node *device_node) > +{ > + struct dt_device_node *np; > + struct dt_device_node *parent_node; > + struct dt_device_node *device_node_last_descendant = device_node->child; > + > + parent_node = device_node->parent; > + > + if ( parent_node == NULL ) > + { > + dt_dprintk("%s's parent node not found\n", device_node->name); > + return -EFAULT; > + } > + > + np = parent_node->child; > + > + if ( np == NULL ) > + { > + dt_dprintk("parent node %s's not found\n", parent_node->name); > + return -EFAULT; > + } > + > + /* If node to be removed is only child node or first child. */ > + if ( !dt_node_cmp(np->full_name, device_node->full_name) ) > + { > + parent_node->child = np->sibling; > + > + /* > + * Iterate over all child nodes of device_node. Given that we are > + * removing parent node, we need to remove all it's descendants too. > + */ > + if ( device_node_last_descendant ) > + { > + device_node_last_descendant = > + find_last_descendants_node(device_node); > + parent_node->allnext = device_node_last_descendant->allnext; > + } > + else > + parent_node->allnext = np->allnext; > + > + return 0; > + } > + > + for ( np = parent_node->child; np->sibling != NULL; np = np->sibling ) > + { > + if ( !dt_node_cmp(np->sibling->full_name, device_node->full_name) ) > + { > + /* Found the node. Now we remove it. */ > + np->sibling = np->sibling->sibling; > + > + if ( np->child ) > + np = find_last_descendants_node(np); > + > + /* > + * Iterate over all child nodes of device_node. Given that we are > + * removing parent node, we need to remove all it's descendants too. > + */ > + if ( device_node_last_descendant ) > + device_node_last_descendant = > + find_last_descendants_node(device_node); > + > + if ( device_node_last_descendant ) > + np->allnext = device_node_last_descendant->allnext; > + else > + np->allnext = np->allnext->allnext; > + > + break; > + } > + } > + > + return 0; > +} > + > +/* Basic sanity check for the dtbo tool stack provided to Xen. */ > +static int check_overlay_fdt(const void *overlay_fdt, uint32_t overlay_fdt_size) > +{ > + if ( (fdt_totalsize(overlay_fdt) != overlay_fdt_size) || > + fdt_check_header(overlay_fdt) ) > + { > + printk(XENLOG_ERR "The overlay FDT is not a valid Flat Device Tree\n"); > + return -EINVAL; > + } > + > + return 0; > +} > + > +/* Count number of nodes till one level of __overlay__ tag. */ > +static unsigned int overlay_node_count(const void *overlay_fdt) > +{ > + unsigned int num_overlay_nodes = 0; > + int fragment; > + > + fdt_for_each_subnode(fragment, overlay_fdt, 0) > + { > + int subnode; > + int overlay; > + > + overlay = fdt_subnode_offset(overlay_fdt, fragment, "__overlay__"); > + > + /* > + * overlay value can be < 0. But fdt_for_each_subnode() loop checks for > + * overlay >= 0. So, no need for a overlay>=0 check here. > + */ > + fdt_for_each_subnode(subnode, overlay_fdt, overlay) > + { > + num_overlay_nodes++; > + } > + } > + > + return num_overlay_nodes; > +} > + > +static int handle_remove_irq_iommu(struct dt_device_node *device_node) > +{ > + int rc = 0; > + struct domain *d = hardware_domain; > + domid_t domid; > + unsigned int naddr, len; > + unsigned int i, nirq; > + > + domid = dt_device_used_by(device_node); > + > + dt_dprintk("Checking if node %s is used by any domain\n", > + device_node->full_name); > + > + /* Remove the node if only it's assigned to domain 0 or domain io. */ > + if ( domid != 0 && domid != DOMID_IO ) > + { > + printk(XENLOG_ERR "Device %s is being used by domain %u. Removing nodes failed\n", > + device_node->full_name, domid); > + return -EINVAL; > + } > + > + dt_dprintk("Removing node: %s\n", device_node->full_name); > + > + nirq = dt_number_of_irq(device_node); > + > + /* Remove IRQ permission */ > + for ( i = 0; i < nirq; i++ ) > + { > + rc = platform_get_irq(device_node, i); > + if ( rc < 0 ) > + { > + printk(XENLOG_ERR "Failed to get IRQ num for device node %s\n", > + device_node->full_name); > + return -EINVAL; > + } > + > + if ( irq_access_permitted(d, rc) == false ) > + { > + printk(XENLOG_ERR "IRQ %d is not routed to domain %u\n", rc, > + domid); > + return -EINVAL; > + } > + /* > + * TODO: We don't handle shared IRQs for now. So, it is assumed that > + * the IRQs was not shared with another devices. > + */ > + rc = irq_deny_access(d, rc); > + if ( rc ) > + { > + printk(XENLOG_ERR "unable to revoke access for irq %u for %s\n", > + i, device_node->full_name); > + return rc; > + } > + } > + > + /* Check if iommu property exists. */ > + if ( dt_get_property(device_node, "iommus", &len) ) > + { > + rc = iommu_remove_dt_device(device_node); > + if ( rc != 0 && rc != -ENXIO ) > + return rc; > + } > + > + naddr = dt_number_of_address(device_node); > + > + /* Remove mmio access. */ > + for ( i = 0; i < naddr; i++ ) > + { > + uint64_t addr, size; Take a look at recent patches from Ayan that were merged. These shall be paddr_t and ... > + > + rc = dt_device_get_address(device_node, i, &addr, &size); ... here you should use dt_device_get_paddr(). > + if ( rc ) > + { > + printk(XENLOG_ERR "Unable to retrieve address %u for %s\n", > + i, dt_node_full_name(device_node)); > + return rc; > + } > + > + rc = iomem_deny_access(d, paddr_to_pfn(addr), > + paddr_to_pfn(PAGE_ALIGN(addr + size - 1))); > + if ( rc ) > + { > + printk(XENLOG_ERR "Unable to remove dom%d access to" > + " 0x%"PRIx64" - 0x%"PRIx64"\n", > + d->domain_id, > + addr & PAGE_MASK, PAGE_ALIGN(addr + size) - 1); > + return rc; > + } > + > + } > + > + return rc; > +} > + > +/* Removes all descendants of the given node. */ > +static int remove_all_descendant_nodes(struct dt_device_node *device_node) device_node can be const I think > +{ > + int rc = 0; > + struct dt_device_node *child_node; > + > + for ( child_node = device_node->child; child_node != NULL; > + child_node = child_node->sibling ) > + { > + if ( child_node->child ) > + remove_all_descendant_nodes(child_node); > + > + rc = handle_remove_irq_iommu(child_node); > + if ( rc ) > + return rc; > + } > + > + return rc; > +} > + > +/* Remove nodes from dt_host. */ > +static int remove_nodes(const struct overlay_track *tracker) > +{ > + int rc = 0; > + struct dt_device_node *overlay_node; > + unsigned int j; > + > + for ( j = 0; j < tracker->num_nodes; j++ ) > + { > + overlay_node = (struct dt_device_node *)tracker->nodes_address[j]; > + if ( overlay_node == NULL ) > + { > + printk(XENLOG_ERR "Device %s is not present in the tree. Removing nodes failed\n", > + overlay_node->full_name); > + return -EINVAL; > + } > + > + rc = remove_all_descendant_nodes(overlay_node); Why are you not checking rc for an error? > + > + /* All children nodes are unmapped. Now remove the node itself. */ > + rc = handle_remove_irq_iommu(overlay_node); > + if ( rc ) > + return rc; > + > + read_lock(&dt_host->lock); > + > + rc = dt_overlay_remove_node(overlay_node); > + if ( rc ) > + { > + read_unlock(&dt_host->lock); > + remove this empty line > + return rc; > + } > + > + read_unlock(&dt_host->lock); > + } > + > + return rc; > +} > + > +/* > + * First finds the device node to remove. Check if the device is being used by > + * any dom and finally remove it from dt_host. IOMMU is already being taken care > + * while destroying the domain. > + */ > +static long handle_remove_overlay_nodes(void *overlay_fdt, overlay_fdt can be const I think > + uint32_t overlay_fdt_size) > +{ > + int rc; > + struct overlay_track *entry, *temp, *track; > + bool found_entry = false; > + > + rc = check_overlay_fdt(overlay_fdt, overlay_fdt_size); > + if ( rc ) > + return rc; > + > + if ( overlay_node_count(overlay_fdt) == 0 ) > + return -EINVAL; > + > + spin_lock(&overlay_lock); > + > + /* > + * First check if dtbo is correct i.e. it should one of the dtbo which was > + * used when dynamically adding the node. > + * Limitation: Cases with same node names but different property are not > + * supported currently. We are relying on user to provide the same dtbo > + * as it was used when adding the nodes. > + */ > + list_for_each_entry_safe( entry, temp, &overlay_tracker, entry ) > + { > + if ( memcmp(entry->overlay_fdt, overlay_fdt, overlay_fdt_size) == 0 ) > + { > + track = entry; > + found_entry = true; > + break; > + } > + } > + > + if ( found_entry == false ) > + { > + rc = -EINVAL; > + > + printk(XENLOG_ERR "Cannot find any matching tracker with input dtbo." > + " Removing nodes is supported only for prior added dtbo.\n"); > + goto out; > + > + } > + > + rc = remove_nodes(entry); > + if ( rc ) > + { > + printk(XENLOG_ERR "Removing node failed\n"); > + goto out; > + } > + > + list_del(&entry->entry); > + > + xfree(entry->dt_host_new); > + xfree(entry->fdt); > + xfree(entry->overlay_fdt); > + > + xfree(entry->nodes_address); > + > + xfree(entry); > + > +out: > + spin_unlock(&overlay_lock); > + return rc; > +} > + > +long dt_sysctl(struct xen_sysctl_dt_overlay *op) > +{ > + long ret; > + void *overlay_fdt; > + > + if ( op->overlay_fdt_size == 0 || op->overlay_fdt_size > KB(500) ) It would be nice to enclose the expressions in parentheses > + return -EINVAL; > + > + if ( op->pad[0] || op->pad[1] || op->pad[2] ) > + return -EINVAL; > + > + overlay_fdt = xmalloc_bytes(op->overlay_fdt_size); > + > + if ( overlay_fdt == NULL ) > + return -ENOMEM; > + > + ret = copy_from_guest(overlay_fdt, op->overlay_fdt, op->overlay_fdt_size); > + if ( ret ) > + { > + gprintk(XENLOG_ERR, "copy from guest failed\n"); > + xfree(overlay_fdt); > + > + return -EFAULT; > + } > + > + switch ( op->overlay_op ) > + { > + case XEN_SYSCTL_DT_OVERLAY_REMOVE: > + ret = handle_remove_overlay_nodes(overlay_fdt, op->overlay_fdt_size); > + remove empty line > + break; > + > + default: > + break; > + } > + > + xfree(overlay_fdt); > + > + return ret; > +} > + > +/* > + * Local variables: > + * mode: C > + * c-file-style: "BSD" > + * c-basic-offset: 4 > + * indent-tabs-mode: nil > + * End: > + */ > diff --git a/xen/include/public/sysctl.h b/xen/include/public/sysctl.h > index 2b24d6bfd0..ff54607617 100644 > --- a/xen/include/public/sysctl.h > +++ b/xen/include/public/sysctl.h > @@ -1057,6 +1057,25 @@ typedef struct xen_sysctl_cpu_policy xen_sysctl_cpu_policy_t; > DEFINE_XEN_GUEST_HANDLE(xen_sysctl_cpu_policy_t); > #endif > > +#if defined(__arm__) || defined (__aarch64__) > +/* > + * XEN_SYSCTL_dt_overlay > + * Performs addition/removal of device tree nodes under parent node using dtbo. > + * This does in three steps: > + * - Adds/Removes the nodes from dt_host. > + * - Adds/Removes IRQ permission for the nodes. > + * - Adds/Removes MMIO accesses. > + */ > +struct xen_sysctl_dt_overlay { > + XEN_GUEST_HANDLE_64(void) overlay_fdt; /* IN: overlay fdt. */ > + uint32_t overlay_fdt_size; /* IN: Overlay dtb size. */ > +#define XEN_SYSCTL_DT_OVERLAY_ADD 1 > +#define XEN_SYSCTL_DT_OVERLAY_REMOVE 2 > + uint8_t overlay_op; /* IN: Add or remove. */ > + uint8_t pad[3]; /* IN: Must be zero. */ > +}; > +#endif > + > struct xen_sysctl { > uint32_t cmd; > #define XEN_SYSCTL_readconsole 1 > @@ -1087,6 +1106,7 @@ struct xen_sysctl { > #define XEN_SYSCTL_livepatch_op 27 > /* #define XEN_SYSCTL_set_parameter 28 */ > #define XEN_SYSCTL_get_cpu_policy 29 > +#define XEN_SYSCTL_dt_overlay 30 > uint32_t interface_version; /* XEN_SYSCTL_INTERFACE_VERSION */ > union { > struct xen_sysctl_readconsole readconsole; > @@ -1117,6 +1137,10 @@ struct xen_sysctl { > #if defined(__i386__) || defined(__x86_64__) > struct xen_sysctl_cpu_policy cpu_policy; > #endif > + > +#if defined(__arm__) || defined (__aarch64__) > + struct xen_sysctl_dt_overlay dt_overlay; > +#endif > uint8_t pad[128]; > } u; > }; > diff --git a/xen/include/xen/dt-overlay.h b/xen/include/xen/dt-overlay.h > new file mode 100644 > index 0000000000..43fa5a02a0 > --- /dev/null > +++ b/xen/include/xen/dt-overlay.h > @@ -0,0 +1,59 @@ > + /* SPDX-License-Identifier: GPL-2.0-only */ > + /* > + * xen/dt-overlay.h > + * > + * Device tree overlay support in Xen. > + * > + * Copyright (C) 2023, Advanced Micro Devices, Inc. All Rights Reserved. > + * Written by Vikram Garhwal > + * > + */ > +#ifndef __XEN_DT_OVERLAY_H__ > +#define __XEN_DT_OVERLAY_H__ > + > +#include > +#include > +#include > +#include Sort alphabetically please > + > +/* > + * overlay_track describes information about added nodes through dtbo. > + * @entry: List pointer. > + * @dt_host_new: Pointer to the updated dt_host_new which is unflattened from > + the 'updated fdt'. > + * @fdt: Stores the fdt. > + * @overlay_fdt: Stores a copy of input overlay_fdt. > + * @nodes_address: Stores each overlay_node's address. > + * @num_nodes: Total number of nodes in overlay dtb. > + */ > +struct overlay_track { > + struct list_head entry; > + struct dt_device_node *dt_host_new; > + void *fdt; > + void *overlay_fdt; > + unsigned long *nodes_address; > + unsigned int num_nodes; > +}; > + > +struct xen_sysctl_dt_overlay; > + > +#ifdef CONFIG_OVERLAY_DTB > +long dt_sysctl(struct xen_sysctl_dt_overlay *op); > +#else > +#include > +static inline long dt_sysctl(struct xen_sysctl_dt_overlay *op) > +{ > + return -EOPNOTSUPP; > +} > +#endif > + > +#endif /* __XEN_DT_OVERLAY_H__ */ empty line here > +/* > + * Local variables: > + * mode: C > + * c-file-style: "BSD" > + * c-basic-offset: 4 > + * tab-width: 4 > + * indent-tabs-mode: nil > + * End: > + */ ~Michal From xen-devel-bounces@lists.xenproject.org Mon Jun 05 08:04:28 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 05 Jun 2023 08:04:28 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543532.848587 (Exim 4.92) (envelope-from ) id 1q65CJ-0005oI-L0; Mon, 05 Jun 2023 08:04:15 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543532.848587; Mon, 05 Jun 2023 08:04:15 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q65CJ-0005oB-IA; Mon, 05 Jun 2023 08:04:15 +0000 Received: by outflank-mailman (input) for mailman id 543532; Mon, 05 Jun 2023 08:04:14 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q65CI-0005o5-Gy for xen-devel@lists.xenproject.org; Mon, 05 Jun 2023 08:04:14 +0000 Received: from EUR05-AM6-obe.outbound.protection.outlook.com (mail-am6eur05on20617.outbound.protection.outlook.com [2a01:111:f400:7e1b::617]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 8edf1c8d-0377-11ee-b232-6b7b168915f2; Mon, 05 Jun 2023 10:04:13 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by PA4PR04MB9271.eurprd04.prod.outlook.com (2603:10a6:102:2a6::5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.32; Mon, 5 Jun 2023 08:04:11 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.030; Mon, 5 Jun 2023 08:04:11 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 8edf1c8d-0377-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Co9QDEmkzhGvdWJZVZpMyR4awR7KofDQCxkGh2fWhzTar1XSxRawlSEIyObg+L2LpzYcHv9Pqp5QuD3on7eBQaiXchZhSVCiIFKbiV/Ko6urROEnlgPkWemAI48y6fZjddpB3FQzc4KfyrThmIAtfO/2EisKNlC6KRkA0800Of0tGE29CHlIYsu+duQlbhIeKHvY24Lh8M0UdmXJ4wzul+Hb50tLHcK1brqoGpOkiod4BnWcG68CVdbdq/u2ylWURlL3oiC6KDsgK/NOvW/C0vAUcB2PKh6+YeEBYptCXUS8rzcVk1rBU2RMUmwBZ/pRvEWSeEwFulTDBm2ncmQ6Uw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=qCUgs5LvrhINOsk70XDEqLSdFRZiH9too8S7O00vAgo=; b=YUe8gI175fsb2WLUknJ/hpWesME19uBxXxHnCTvQP3ML7PMfSNKG+5OR+xMS/w10raBd5H1V1hhiZFWs48xBjfDARAkIVNf/QgibuSL863Pim2qV0WHQ7TEdAk4B/VEc+vC1zW4sSegNvgTuvhlUeUzMhUwfeA83yJVwWs9/ENXUCIytCpKvbEkwgsD0+ViEfrHDFP+SyODaVxTRRPUZCTca10GCrl83+klvdkz5jGWFUVje88n3O75PfsrulSJC3ow1+Cp3j9rZreVUyD+DqRL78LIoeVBxoUM3ncDFvx3XIMO23kL/00eFZye7Wfg5iUDmxvV3vnO/7k8iy5vqaw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=qCUgs5LvrhINOsk70XDEqLSdFRZiH9too8S7O00vAgo=; b=V4XPmB3WPRB4g5VloTHYl0Jy3nyvZVaLYxVbb57/myCF8UFXRkB4/89V9wmiFDExgTO6x4X+Ui1Q+GmPY5cudmfTub13lWek1YxGLodpYFWE3Jjn36pU2IAdTfcnwS5zMOhjPxOBvQ6Fbq3trirWpfO7pY0XyrPckpj9YUSVLokVvaGaXKhSuoSPe1FeuzdxPyoJaz/qkzxJ4mH3iKf3tyl0dNPwE3P/lq8+Ni7aNU/uBWb7i4nhqOUCmZgYjWnq+NDCC9s8KJGyp8CWLJeUeUAiEaNo7PKxu1tdqLn63mGvf05szXYAH9DyxwTgfk9BWwSmGSO1/rLmnVfD4LwLUQ== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: Date: Mon, 5 Jun 2023 10:04:09 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.11.2 Subject: Re: [PATCH v2 3/3] x86/cpu-policy: Derive RSBA/RRSBA for guest policies Content-Language: en-US To: Andrew Cooper Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , Xen-devel References: <20230601144845.1554589-1-andrew.cooper3@citrix.com> <20230601144845.1554589-4-andrew.cooper3@citrix.com> <1ce6bd53-089e-e8ab-3b54-2720a3fd2c12@suse.com> <1987e108-3ab6-4971-78cf-0e7ba5facc04@citrix.com> From: Jan Beulich In-Reply-To: <1987e108-3ab6-4971-78cf-0e7ba5facc04@citrix.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: FRYP281CA0010.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10::20) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|PA4PR04MB9271:EE_ X-MS-Office365-Filtering-Correlation-Id: 6ce10d9c-6377-4d68-c539-08db659b71ee X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: REwzXEOCaiCM0RfTyxFs9JL/TWug5J13XA7B8bVd2N+kAAfutTgkJv9N2NOHMmYjqtqFPAsyz7Y//VmSsrXAalbl3aNfEIGhj8TVJXVPo5QZ8Fhc21zsb5iP/cvpyfdNjwEG9C3md+vn25pIhHcCOFD4iqdA5c2WvbtXP8xBNGSaq9WQAnx1/zGwDsXv1FfBj8EHQO+jcoomWUV1zakPKZHpwnoOKusA7c8h53CckVco+hnvr+TZDWxXFupPCEKc1LxoYcJ2i4KTC+O4G8FL0fELfKTX1nf53GE/9iRwUZomHc3dUE/a+Q75+xn8dEouBYvcGxL+rSxOGYU15kZkhv3HD7SIOIkErXhN6gfcwa0TsJcpiobFp0KqZ4szTzE4lNu5b8LvD988Y67uOmxX0/MYuObnDFn/bBaKmdiwjus646EEN84DgHsQWPRTNQdEn7UNBiIEfS6/iyq7V/PHgQB6jxOwx5GYEzITzMT+kyH/iRhRLituefP3cLF7ULuW0CrcN9+RpI5rpURSAy9DX4fVYlBBbIfSr/QPLYqh0JbcDGYuuqSzidSCy/RDZfwml0A0hPMaHYAC8gCXiitAkWLQhDhIE2LfGTaPWMyc6DJVV4BE8Eo4maI2psZlySJVH56YnnJ5qSVMkoMR4RTDeg== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(376002)(396003)(346002)(366004)(136003)(39860400002)(451199021)(54906003)(478600001)(8936002)(8676002)(5660300002)(36756003)(2906002)(86362001)(31696002)(4326008)(6916009)(66476007)(66556008)(316002)(66946007)(38100700002)(41300700001)(31686004)(83380400001)(6506007)(26005)(6512007)(53546011)(2616005)(186003)(6486002)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?L2xZUk01M1J2SmErWkJha1kxMEtPdGhueUUzQjV3L1hGdFJhOEMrNnc5ZWV5?= =?utf-8?B?OGl5RHVTbmtJdnI3dzhSV095WnA2dFBTOHBlcjdMcVBzY0gyZFZSTmV1aXNy?= =?utf-8?B?c1FTdGFNSDg4bzI0d1R1aC9sZVFicEhreEQ3TzY1bnZrcWYwdGRLbDRscDJM?= =?utf-8?B?REMyaVZ4c1NtY2tYc3pnYjhSaG51aGdwSnIrN1BkUnVzcnB4WkhORllmRVNE?= =?utf-8?B?VkEzRURaUEtYOFdtLzlXazIxaTF4ZEZWNGc4ek9nRGIxS1JvMDBZVGpCVTVZ?= =?utf-8?B?eEFZTVBkajBJZGZlb0FRZDYzYTlzZWxwQ2VORXgyT3RJSytTdjEvWkd3Tk1l?= =?utf-8?B?emdtMlFqbWdCemc1RHBlQUp0N0t5K1NPR1o5UW9JTytiejhYYllTYktiSDZn?= =?utf-8?B?bVdRaHlHS0pjTDdQa0hPN1JKTEV5am1uS2I1NFRabHIwZW10NUlEMlp6NklZ?= =?utf-8?B?WXZSSDVQcEVNanR4MGtrak4rTG1jeVo0Y09nRENVdlo5anpvbDYveTR2TGxM?= =?utf-8?B?d0dhSzZPbUhhY1BCUHM0QTF2YXVEc3VyTXQxRTJweUMzUDRJL29lT3RxUjRO?= =?utf-8?B?Y0dKWVF5NmJIb1hkSnBONEJZalJmK2xFQzVuRkE1UTN1L0JZL3A5UFU4U1lC?= =?utf-8?B?NTA0NCthMEN4Mk1WWHRkR2VGR3RoL0dwZUtaVm9HN1U2VUdySTU1WGNDcGQw?= =?utf-8?B?ZGxZKzFLeXFDaWh3NThXdGwzZndyMkZSc1o5WDVDcktMS21QRzd3M1FER1NG?= =?utf-8?B?VWR5Vy8wNVZ5d21haUYwY1BiTnc3b21DRXMrZ05PSStaaFNVckVGRUtkSjhs?= =?utf-8?B?WXZHTzU2dDZ1R3k4bjRqTnNTcjRBc05VbVVXMHF4N2NrRG1STUNaYWRTMFJh?= =?utf-8?B?cUxnVjk2NlhsanI0TEQ0cFdqckQ2VkkzU25Ha2N1Tk80YTZnS1VVYmQ1K29J?= =?utf-8?B?Q1ZySTJxZGhheEVubEFoNUxBQ2tsZCsyOXFxSFd5ck9vZjNJd3o5YWdxNXQy?= =?utf-8?B?ekcvNXl0L3pnSzZJOCtsY0s2amk5WGxoNHF6S05nME5yeXVLWVVGYktnclQ0?= =?utf-8?B?V3hXUzdPN1c2V1hLV3JnU09GS0tvSEJuVmw1d0lrT3labHUyb3JHdy8zUmU0?= =?utf-8?B?QTVTYWx6ckxHZjhtQ1BBQlZ2N2ZaUzM4c2FLU0ZPUE1jV0xmdXAwbGlOMWtS?= =?utf-8?B?amRoT3ZMbVdMcTZVdGYvVEdBOVdxa3hKdzB5amx5Zi9EOGg4L01xcnlHUVRB?= =?utf-8?B?T2JiYzB1MFgvK0dXVlJkYVFZQi9iU3RqQ213L2p5bHAxelZMTkVjY2NQTWV4?= =?utf-8?B?a0ZKMy9DcWlCeHRCRUhxSHZvWU9GMFNzeVRYdXFVSTh2Nnp4Wmo1R2VTWHlN?= =?utf-8?B?WCtvTzBDdUR1bG1pdFlYSlNvUUJiVXpsOS9iamZwL2gvNWVuREhCbTlLYkVn?= =?utf-8?B?VzRrVVJXRHpWanFkUFBSM3E0M1h1NXpUbWJ5eGQ0N0Zkd0IvUkVCdjBvL3Jz?= =?utf-8?B?SzY2VGd4MDZSYWJjSHZndGtuMjVhNE42SDBRNlRRcjV1elhrU1dNOUd5bnJK?= =?utf-8?B?TGZ2d25SRGd0MExVa2VESWtKc05zRVI0d3JUcCtlLzVoRDN4dVNyVzd5UUhV?= =?utf-8?B?Um1QRjBES1RVcEh5R2l6bnkranNkbzVOV0V2Slc1QU5CUU1QVlZjeGloVEZR?= =?utf-8?B?OExLdlM4NUI4YXFsVGJiNDYwOXVwcS9MQlF1a2hYRmtHQ2dRUi9mM2JRSjJB?= =?utf-8?B?VFl5TzR5Y1NUdmVKUFlreGZLZFpVcWdjRi9FZHREd0ZYem95MlJmYkd1TE4z?= =?utf-8?B?cTRCRHVWOWdtS241NmVscVpYaFlmTzM1Vm9kOFp0SFc5WXRBRDhTRWE4UHZN?= =?utf-8?B?WHZnVnRrdHVIOElocyttMUwzUDRFVTJaQk5KRktvL1hhNmV5MnZ0ekEzQTAr?= =?utf-8?B?ZkdJYU9XT2RmY0dUekIvdVZDN012Umo2RmNFL0hONmtKeGo1Ym1sMnVnNjhh?= =?utf-8?B?QlNxbDF6VUZYVm1YZTNuckdKMjdwa3pjWCtxYXI1YklDMFVQVHI0M0dQSmZW?= =?utf-8?B?dTI5QmE5b1NWZlBodHdhaFBsckt2RzBQNWk2dHUwbUx6V1h0NG13YStNYzIv?= =?utf-8?Q?gtgtVHZVOpK5XpFOlKjGUueFa?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 6ce10d9c-6377-4d68-c539-08db659b71ee X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Jun 2023 08:04:11.1666 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: F754lM9jBn0ApID8/euQ7YRU434XaBkPTTRldoI9EK/PXTNf2SrRHHvAFG0giPDmV+6LNH5rkv6BjQWXWpHAKw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR04MB9271 On 02.06.2023 17:38, Andrew Cooper wrote: > On 02/06/2023 4:29 pm, Andrew Cooper wrote: >> On 02/06/2023 11:20 am, Jan Beulich wrote: >>> On 01.06.2023 16:48, Andrew Cooper wrote: >>> What about a tool stack request leading to us setting the 2nd of the two >>> bits here, while the other was already set? IOW wouldn't we better clear >>> the other bit explicitly? (Due to the EIBRS dependency or RRSBA I think >>> this can really only happen when the tool stack requests RSBA+EIBRS, as >>> the deep deps clearing doesn't know the concept of "negative" >>> dependencies.) >> Hmm - I think there is a bug here, but it's not this simple.  I think >> the only reasonable thing we can do is start rejecting bad input because >> I don't think Xen can fix up safely. >> >> Xen must not ever clear RSBA, or we've potentially made the VM unsafe >> behind the toolstack's back. >> >> If EIBRS != RRSBA, the toolstack has made a mistake.  Equally too for >> RSBA && EIBRS. >> >> I think this is going to take more coffee to solve... > > Actually, no. > > I'm going to delete the hunk modifying recalculate_cpuid(), and move > this patch back to the meaning it had in v1 which is just "get the > policies looking correct". Hmm, and how are you intending to achieve that goal without adjusting behind the tool stack's back, and without it being an option (yet) to reject the input? Iirc you agreed with my v1 remark that some fixing that some fixing up is going to be necessary. Since as you say (and as I should have realized when writing the earlier reply) we may never clear RSBA, wouldn't it be an option to clear EIBRS instead? > It's still not supported for the toolstack to request ARCH_CAPS (the "a" > marking), and the safely logic for that can come in a subsequent series > along with the unit(ish) testing I was already planning to do. Yet it not being supported doesn't mean we should leave a broken result when we can fix things up (for the time being, i.e. until we can report back that we don't like this feature combination). Jan From xen-devel-bounces@lists.xenproject.org Mon Jun 05 08:05:16 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 05 Jun 2023 08:05:16 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543538.848598 (Exim 4.92) (envelope-from ) id 1q65DI-0006Oj-0h; Mon, 05 Jun 2023 08:05:16 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543538.848598; Mon, 05 Jun 2023 08:05:15 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q65DH-0006Oc-Ty; Mon, 05 Jun 2023 08:05:15 +0000 Received: by outflank-mailman (input) for mailman id 543538; Mon, 05 Jun 2023 08:05:14 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q65DG-0005o5-G1 for xen-devel@lists.xenproject.org; Mon, 05 Jun 2023 08:05:14 +0000 Received: from esa6.hc2706-39.iphmx.com (esa6.hc2706-39.iphmx.com [216.71.137.79]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id b160829b-0377-11ee-b232-6b7b168915f2; Mon, 05 Jun 2023 10:05:12 +0200 (CEST) Received: from mail-oi1-f200.google.com ([209.85.167.200]) by ob1.hc2706-39.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 05 Jun 2023 04:05:09 -0400 Received: by mail-oi1-f200.google.com with SMTP id 5614622812f47-38bedafc58dso3393557b6e.0 for ; Mon, 05 Jun 2023 01:05:09 -0700 (PDT) Received: from mozz.bu.edu (mozz.bu.edu. [128.197.127.33]) by smtp.gmail.com with ESMTPSA id c9-20020ac80549000000b003f4a76d4981sm4435084qth.66.2023.06.05.01.04.47 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 05 Jun 2023 01:04:48 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: b160829b-0377-11ee-b232-6b7b168915f2 X-IronPort-RemoteIP: 209.85.167.200 X-IronPort-MID: 287170445 X-IronPort-Reputation: None X-IronPort-Listener: OutgoingMail X-IronPort-SenderGroup: RELAY_GSUITE X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:yFEe5q25/vJBX9vqnvbD5ZJwkn2cJEfYwER7XKvMYLTBsI5bp2dUx zEZDWzUaPyPamXze9AjOdywoEJTvJPUztdkG1BqqSg9HnlHl5H5CIXCJC8cHc8zwu4v7q5Dx 59DAjUVBJlsFhcwnj/0bv666yE6jfrSLlbFILasEjhrQgN5QzsWhxtmmuoo6qZlmtH8CA6W0 T/Ii5S31GSNhXgsagr414rZ8Ek05Kqq5GtB1rADTasjUGH2xiF94K03ePnZw0vQGuF8AuO8T uDf+7C1lkuxE8AFU47Nfh7TKyXmc5aLVeS8oiM+t5uK23CukhcPPpMTb5LwX6v2ZwKhxLidw P0V3XC5pJxA0qfkwYzxWDEBe81y0DEvFBYq7hFTvOTKp3AqfUcAzN1rIBsPH842/t9LQmAU1 P1bODwMXiuq0rfeLLKTEoGAh+wmJcjveYQe4zRul2mBS/khRp/HTuPB4towMDUY3JgfW6aDI ZNHNnw1NEyojx5nYz/7DLo3mPeuimPXeSAepV6IzUYyyzKDk1UuiOSxbbI5fPSoGYZTm2WSi lnrpTWlXBJFM9u00ACKpyfEaujn2HmTtJgpPK218LtmjUOewkQXCQYKTh2rrP+hkEm8VtlDb UsO9UITQbMa8UWqSpz6XkT9riTc5lgTXN1fF+B84waIokbJ3zuk6qE/ZmYpQLQbWAUeHFTGC nfhcwvVOAFS IronPort-HdrOrdr: A9a23:wY22na9vc+6EMpFtbshuk+AOI+orL9Y04lQ7vn2ZhyYlFfBws/ re4cjztCWE8gr5PUtLpTnuAtjjfZqxz+8R3WBVB8bfYOCEghrSEGgB1/qa/9SIIUSXnZ8/6U 4jSdkHNDSZNzhHZK3BkW+F+rgbsb262ZHtr8vli1lWcSFWR5dJ0zpZYzzrbXGehzMrOXP6Lv ehDwZ8yQZIsE55D/iGOg== X-Talos-CUID: 9a23:Rx+p3WG01tpCHh74qmJi2BQtOIMLdkThj3aKAk77GWpoeIa8HAo= X-Talos-MUID: 9a23:D+KcWQU5/nq7f8jq/B2wxzdnF81E2In0WRxTksoBvOKdDyMlbg== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bu.edu; s=s1gsbu; t=1685952309; x=1688544309; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:from:to:cc:subject:date:message-id:reply-to; bh=w4A3jYCjeUqlQ62V5urF7yBovv+nvp0YeMEm8/LTD4Y=; b=gA5JjsgBg6p390ySYrHL+ydSvamxoZy/nfvY+k2HNxSSk5zd/gckfNr2HbkZLJkLKP S9Q3NtN4gLZtxi07TIrpw6SHIq6ywBeb0229kMnV6090Aoq/LZdKkiHdf/a6OPGS2Z5X yTwqKybLuFdZoxEBDsPR73TZG0xAKbwZYKmjdkHCy5wHP+rOm3ud/LuxotXle4pEMaYc lwKzB8K1u49B8wH8EWEHyfC++ef88a5CNfL8DlLG2mLechrLwFA9RWOGn7HwcwcNWCfW YlkMAsNBkt2GzqTfDY8M87YIA9m2m1HM0ql0qr+0Wxvq2GYdne1fIS2xpDsiLmgfFrFS yIxg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1685952309; x=1688544309; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=w4A3jYCjeUqlQ62V5urF7yBovv+nvp0YeMEm8/LTD4Y=; b=ZOFnIqPNuq7/O6gGQvXU9yojTm9sZ+ajYeEK3gWdhSxE/peJ969idqHGkGPsluo5fQ 4P2JsbOsN5rcUNlz6bJKpHVMLjTX7yveszXicKDcALZMKiRS4IBO3jZ0eOfYyEE4aAlw jT+6suTv9aBbmJCTZHXAf6Q/xR/OeJvoTpgUdKxfD4kWRWfJIHVRt4lb7CWd85kp08Pd Z96xBW54pUl1gcOBpIaxiEF5HMESkcUO/MgVOn4HM6u6OZNmhx9jAm/uY02SFdUB+Z0O mPV3VmT3YhLTyjyjaIUW30BQkmmgzI3Zu8pap2N41v1tuWf+/5wETXRiAcj0ZlVigJ+b bqcw== X-Gm-Message-State: AC+VfDzyatdoZ1lNFEmMjoX5j6pytSDa9e+GqTnCKijprcNqut63D+1U YBoKCQqhc4NIsx109yi7u2co/7vYiBvSS2fdXXCSndUKg309RrjweRbEbBWbcSwVsx61ee/oUU4 EyZj9/SnHCGPvDDPguPQ9pxoAsXIYEC9PRqZoez9LKQ== X-Received: by 2002:a05:6214:234c:b0:625:e039:5af1 with SMTP id hu12-20020a056214234c00b00625e0395af1mr6631333qvb.42.1685952288849; Mon, 05 Jun 2023 01:04:48 -0700 (PDT) X-Google-Smtp-Source: ACHHUZ5qig5w/RKth5j5e7VsoG6Ro3qRwBgFDwzIc+OfuDgKuMNwubkMjommwJhKjlPapm8pNARfmA== X-Received: by 2002:a05:6214:234c:b0:625:e039:5af1 with SMTP id hu12-20020a056214234c00b00625e0395af1mr6631314qvb.42.1685952288574; Mon, 05 Jun 2023 01:04:48 -0700 (PDT) Date: Mon, 5 Jun 2023 04:04:40 -0400 From: Alexander Bulekov To: Akihiko Odaki Cc: Mauro Matteo Cascella , P J P , Dmitry Fleytman , Beniamino Galvani , Peter Maydell , Strahinja Jankovic , Jason Wang , "Edgar E. Iglesias" , Alistair Francis , Stefan Weil , =?utf-8?Q?C=C3=A9dric?= Le Goater , Andrew Jeffery , Joel Stanley , Richard Henderson , Helge Deller , Sriram Yagnaraman , Thomas Huth , Aleksandar Rikalo , Subbaraya Sundeep , Jan Kiszka , Tyrone Ting , Hao Wu , Max Filippov , Jiri Pirko , Daniel Henrique Barboza , David Gibson , Greg Kurz , Harsh Prateek Bora , Sven Schnelle , "Michael S. Tsirkin" , Stefano Stabellini , Anthony Perard , Paul Durrant , Rob Herring , Gerd Hoffmann , qemu-arm@nongnu.org, qemu-devel@nongnu.org, qemu-ppc@nongnu.org, xen-devel@lists.xenproject.org Subject: Re: [PATCH v2 2/2] net: Update MemReentrancyGuard for NIC Message-ID: <20230605080440.ljfqlc7u6f7ipdty@mozz.bu.edu> References: <20230601031859.7115-1-akihiko.odaki@daynix.com> <20230601031859.7115-3-akihiko.odaki@daynix.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20230601031859.7115-3-akihiko.odaki@daynix.com> X-CES-GSUITE_AUTH: bf3aNvsZpxl8 On 230601 1218, Akihiko Odaki wrote: > Recently MemReentrancyGuard was added to DeviceState to record that the > device is engaging in I/O. The network device backend needs to update it > when delivering a packet to a device. > > This implementation follows what bottom half does, but it does not add > a tracepoint for the case that the network device backend started > delivering a packet to a device which is already engaging in I/O. This > is because such reentrancy frequently happens for > qemu_flush_queued_packets() and is insignificant. > > Fixes: CVE-2023-3019 > Reported-by: Alexander Bulekov > Signed-off-by: Akihiko Odaki Acked-by: Alexander Bulekov > --- > include/net/net.h | 1 + > net/net.c | 14 ++++++++++++++ > 2 files changed, 15 insertions(+) > > diff --git a/include/net/net.h b/include/net/net.h > index a7d8deaccb..685ec58318 100644 > --- a/include/net/net.h > +++ b/include/net/net.h > @@ -124,6 +124,7 @@ typedef QTAILQ_HEAD(NetClientStateList, NetClientState) NetClientStateList; > typedef struct NICState { > NetClientState *ncs; > NICConf *conf; > + MemReentrancyGuard *reentrancy_guard; > void *opaque; > bool peer_deleted; > } NICState; > diff --git a/net/net.c b/net/net.c > index 982df2479f..3523cceafc 100644 > --- a/net/net.c > +++ b/net/net.c > @@ -332,6 +332,7 @@ NICState *qemu_new_nic(NetClientInfo *info, > nic = g_malloc0(info->size + sizeof(NetClientState) * queues); > nic->ncs = (void *)nic + info->size; > nic->conf = conf; > + nic->reentrancy_guard = reentrancy_guard, > nic->opaque = opaque; > > for (i = 0; i < queues; i++) { > @@ -805,6 +806,7 @@ static ssize_t qemu_deliver_packet_iov(NetClientState *sender, > int iovcnt, > void *opaque) > { > + MemReentrancyGuard *owned_reentrancy_guard; > NetClientState *nc = opaque; > int ret; > > @@ -817,12 +819,24 @@ static ssize_t qemu_deliver_packet_iov(NetClientState *sender, > return 0; > } > > + if (nc->info->type != NET_CLIENT_DRIVER_NIC || > + qemu_get_nic(nc)->reentrancy_guard->engaged_in_io) { > + owned_reentrancy_guard = NULL; > + } else { > + owned_reentrancy_guard = qemu_get_nic(nc)->reentrancy_guard; > + owned_reentrancy_guard->engaged_in_io = true; > + } > + > if (nc->info->receive_iov && !(flags & QEMU_NET_PACKET_FLAG_RAW)) { > ret = nc->info->receive_iov(nc, iov, iovcnt); > } else { > ret = nc_sendv_compat(nc, iov, iovcnt, flags); > } > > + if (owned_reentrancy_guard) { > + owned_reentrancy_guard->engaged_in_io = false; > + } > + > if (ret == 0) { > nc->receive_disabled = 1; > } > -- > 2.40.1 > From xen-devel-bounces@lists.xenproject.org Mon Jun 05 08:06:57 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 05 Jun 2023 08:06:57 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543543.848608 (Exim 4.92) (envelope-from ) id 1q65Eo-0006z6-Ao; Mon, 05 Jun 2023 08:06:50 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543543.848608; Mon, 05 Jun 2023 08:06:50 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q65Eo-0006yz-7y; Mon, 05 Jun 2023 08:06:50 +0000 Received: by outflank-mailman (input) for mailman id 543543; Mon, 05 Jun 2023 08:06:49 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q65En-0006yW-Ah for xen-devel@lists.xenproject.org; Mon, 05 Jun 2023 08:06:49 +0000 Received: from esa12.hc2706-39.iphmx.com (esa12.hc2706-39.iphmx.com [216.71.137.82]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id e97c6eb7-0377-11ee-8611-37d641c3527e; Mon, 05 Jun 2023 10:06:46 +0200 (CEST) Received: from mail-qk1-f199.google.com ([209.85.222.199]) by ob1.hc2706-39.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 05 Jun 2023 04:06:43 -0400 Received: by mail-qk1-f199.google.com with SMTP id af79cd13be357-75d0a182bdfso735655085a.3 for ; Mon, 05 Jun 2023 01:06:44 -0700 (PDT) Received: from mozz.bu.edu (mozz.bu.edu. [128.197.127.33]) by smtp.gmail.com with ESMTPSA id s15-20020a05620a16af00b00746b2ca65edsm3985583qkj.75.2023.06.05.01.06.41 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 05 Jun 2023 01:06:42 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: e97c6eb7-0377-11ee-8611-37d641c3527e X-IronPort-RemoteIP: 209.85.222.199 X-IronPort-MID: 283094216 X-IronPort-Reputation: None X-IronPort-Listener: OutgoingMail X-IronPort-SenderGroup: RELAY_GSUITE X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:SFuZqqKxL48aKkfpFE+RkJQlxSXFcZb7ZxGr2PjKsXjdYENSgTIGn zBNUT+DPPfbZzSmKdpxb96+90IGuJOEmoM3GgBorCE8RH908vbIVI+TRqvS04J+DSFhoGZPt Zh2hgzodZhsJpPkjk7xdOOn9T8kjvvgqoPUUIbsIjp2SRJvVBAvgBdin/9RqoNziJ2yDhjlV ena+qUzA3f7nWYsWo4ow/jb8kg34qyu4GpwUmEWPpingnePzxH5M7pCfcldH1OgKqFIE+izQ fr0zb3R1gs1KD90V7tJOp6iGqE7aue60Tqm0xK6aID76vR2nRHe545gXBYqhea7vB3S9zx54 I0lWZVd0m7FNIWV8AgWe0Aw/y2TocSqUVIISJSymZX78qHIT5fj69ttMWscDK4mwctuCFse9 dIELxMEaznW0opawJrjIgVtrsEqLc2uJYBG/385nGCfAvEhTpTOBa7N4Le03h9q3pEITauYP ZBDL2M+PXwsYDUWUrsTIJs6jOGknFH1bntVpE/9Sa8fuTiIlF0tiuGzWDbTUs6XRJ8Lkn6Yn 0/p1WPWDiAbEfma1yXQpxpAgceKx0sXQrk6BLC+s/JnnlCX7mgSEwENE0u2p+GjjUyzUM4ZL FYbkhfCtoA3/U2vC8D+Bli2+S/V+BEbXNVUHqsx7wTlJrfo3jt1z1MsFlZpAOHKfudsLdD2/ jdlR+/UOAE= IronPort-HdrOrdr: A9a23:tGx3IaC24dKhNC3lHemT55DYdb4zR+YMi2TDtnoBLCC9F/by/f xG88516faKskdpZJhNo7G90dC7MBXhHP1OkOss1NWZMDUO41HYS72KhLGKqwEIfRefygdz78 pdmsNFZuEYY2IK7voSmzPId+rIyeP3iJyVuQ== X-Talos-CUID: =?us-ascii?q?9a23=3AzB/r/GixNJhmnMdlXiEEUUs4lTJuXH7g5l3hAHG?= =?us-ascii?q?DJH9gcu2VZ0OX26phup87?= X-Talos-MUID: 9a23:yYAemggVPxtXlDIOwVD7v8MpJtppufqiMEA0vLosvOaIBC1VHjKDk2Hi DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bu.edu; s=s1gsbu; t=1685952403; x=1688544403; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:from:to:cc:subject:date:message-id:reply-to; bh=nBsE6ZSAQNXrqj2aXIdHreYcEOPnXGm8mY8CFnppvpI=; b=nWFwrmgMhXbrvHJYeNb7AYhF8QngBNkRz002nVEn7ynzd+XJAVqIX3lem7ePBdFvmG QH0cZ/gbjgMDhSsis9QkyVZs2WcweUaIRtpZITQiUGzYQcG4Bd20U/+7k64h/hNG6Trt hVGQMi9FYqi2dqhZGYcpyTQZvm08ghjP50A28fBzgNnZ+4DyXBzogbJlZv49rT3JRP1+ JftEK6tR8ePYmuAuDAjSGKz3zIlCS/A5U1cbxr/QQdACYga2+NlFs8zy+CkvBZKMMhUq Fi67Ea9nzuVflsLgmw7OoGmT/mqNluTsuy1U0//GH88tS4P1myXmq4lrvHw0lmpdTcWB q48A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1685952403; x=1688544403; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=nBsE6ZSAQNXrqj2aXIdHreYcEOPnXGm8mY8CFnppvpI=; b=Ox8a+unLME5f0lT9VrOH4AJ2aj1Ytf2onACtLiFpYS6Q6OORNVsR6ZqcRuD5kjSsQW W0WIeE4xqKOv4VOzBSYYXNf7MD11ITwSDnxsybt21c3WizUjwYY13IaGGYhyciBfCAet oCMAwa8yx7BOqk3HNLaGsPTdkPFCwzyLU+nE+/4Mn8IveamW03wKLuloMoIJ/3oXBp62 /ARGzdArZG0njUm77UNxL2RBGY3wV3gKCvQMNA2VvpFWV0+mvqlBMJuGXmZm7Uqlv4gy 8CmUGuv2xeZ4TQn4MUlJHdNmpfvxraPeTlNgtBkLKcnO9V4KlCCsn26wnXFgKPIP8ce3 PP9A== X-Gm-Message-State: AC+VfDz1Z0U16XUVIVx3fO5KofuLno6CCBLZckp1AXM8RtCIljFdKZdi bnwZEYXgusbiDi+x4AzlRpLxJ1gYxhgN9Fm6WGV7EcIKCAjB/Fc3OknmZqkawCssdxCb0hYPvFv cGUp13dCGuzO4nRJmd124VdKudUAQEXbk5xs5BL7MBQ== X-Received: by 2002:a05:620a:608a:b0:75b:23a0:deba with SMTP id dx10-20020a05620a608a00b0075b23a0debamr28828592qkb.56.1685952403314; Mon, 05 Jun 2023 01:06:43 -0700 (PDT) X-Google-Smtp-Source: ACHHUZ54WffJVAgziK1v5fGXGcEP6ZhKkhUM5WL01CapRdgLlA4i3sV9HcqJ6zPjS6RJdIDOenz0Jw== X-Received: by 2002:a05:620a:608a:b0:75b:23a0:deba with SMTP id dx10-20020a05620a608a00b0075b23a0debamr28828575qkb.56.1685952403068; Mon, 05 Jun 2023 01:06:43 -0700 (PDT) Date: Mon, 5 Jun 2023 04:06:38 -0400 From: Alexander Bulekov To: Akihiko Odaki Cc: Mauro Matteo Cascella , P J P , Dmitry Fleytman , Beniamino Galvani , Peter Maydell , Strahinja Jankovic , Jason Wang , "Edgar E. Iglesias" , Alistair Francis , Stefan Weil , =?utf-8?Q?C=C3=A9dric?= Le Goater , Andrew Jeffery , Joel Stanley , Richard Henderson , Helge Deller , Sriram Yagnaraman , Thomas Huth , Aleksandar Rikalo , Subbaraya Sundeep , Jan Kiszka , Tyrone Ting , Hao Wu , Max Filippov , Jiri Pirko , Daniel Henrique Barboza , David Gibson , Greg Kurz , Harsh Prateek Bora , Sven Schnelle , "Michael S. Tsirkin" , Stefano Stabellini , Anthony Perard , Paul Durrant , Rob Herring , Gerd Hoffmann , qemu-arm@nongnu.org, qemu-devel@nongnu.org, qemu-ppc@nongnu.org, xen-devel@lists.xenproject.org Subject: Re: [PATCH v2 1/2] net: Provide MemReentrancyGuard * to qemu_new_nic() Message-ID: <20230605080616.ooanu5pk2pvs57yi@mozz.bu.edu> References: <20230601031859.7115-1-akihiko.odaki@daynix.com> <20230601031859.7115-2-akihiko.odaki@daynix.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20230601031859.7115-2-akihiko.odaki@daynix.com> X-CES-GSUITE_AUTH: bf3aNvsZpxl8 On 230601 1218, Akihiko Odaki wrote: > Recently MemReentrancyGuard was added to DeviceState to record that the > device is engaging in I/O. The network device backend needs to update it > when delivering a packet to a device. > > In preparation for such a change, add MemReentrancyGuard * as a > parameter of qemu_new_nic(). > > Signed-off-by: Akihiko Odaki Reviewed-by: Alexander Bulekov One minor comment below. > --- > include/net/net.h | 1 + > hw/net/allwinner-sun8i-emac.c | 3 ++- > hw/net/allwinner_emac.c | 3 ++- > hw/net/cadence_gem.c | 3 ++- > hw/net/dp8393x.c | 3 ++- > hw/net/e1000.c | 3 ++- > hw/net/e1000e.c | 2 +- > hw/net/eepro100.c | 4 +++- > hw/net/etraxfs_eth.c | 3 ++- > hw/net/fsl_etsec/etsec.c | 3 ++- > hw/net/ftgmac100.c | 3 ++- > hw/net/i82596.c | 2 +- > hw/net/igb.c | 2 +- > hw/net/imx_fec.c | 2 +- > hw/net/lan9118.c | 3 ++- > hw/net/mcf_fec.c | 3 ++- > hw/net/mipsnet.c | 3 ++- > hw/net/msf2-emac.c | 3 ++- > hw/net/mv88w8618_eth.c | 3 ++- > hw/net/ne2000-isa.c | 3 ++- > hw/net/ne2000-pci.c | 3 ++- > hw/net/npcm7xx_emc.c | 3 ++- > hw/net/opencores_eth.c | 3 ++- > hw/net/pcnet.c | 3 ++- > hw/net/rocker/rocker_fp.c | 4 ++-- > hw/net/rtl8139.c | 3 ++- > hw/net/smc91c111.c | 3 ++- > hw/net/spapr_llan.c | 3 ++- > hw/net/stellaris_enet.c | 3 ++- > hw/net/sungem.c | 2 +- > hw/net/sunhme.c | 3 ++- > hw/net/tulip.c | 3 ++- > hw/net/virtio-net.c | 6 ++++-- > hw/net/vmxnet3.c | 2 +- > hw/net/xen_nic.c | 4 ++-- > hw/net/xgmac.c | 3 ++- > hw/net/xilinx_axienet.c | 3 ++- > hw/net/xilinx_ethlite.c | 3 ++- > hw/usb/dev-network.c | 3 ++- > net/net.c | 1 + > 40 files changed, 75 insertions(+), 41 deletions(-) > > diff --git a/include/net/net.h b/include/net/net.h > index 1448d00afb..a7d8deaccb 100644 > --- a/include/net/net.h > +++ b/include/net/net.h > @@ -157,6 +157,7 @@ NICState *qemu_new_nic(NetClientInfo *info, > NICConf *conf, > const char *model, > const char *name, > + MemReentrancyGuard *reentrancy_guard, > void *opaque); Does it make sense to roll *reentrancy_guard into NICConf here? From xen-devel-bounces@lists.xenproject.org Mon Jun 05 08:09:10 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 05 Jun 2023 08:09:10 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543549.848617 (Exim 4.92) (envelope-from ) id 1q65H3-0007bd-OD; Mon, 05 Jun 2023 08:09:09 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543549.848617; Mon, 05 Jun 2023 08:09:09 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q65H3-0007bW-LP; Mon, 05 Jun 2023 08:09:09 +0000 Received: by outflank-mailman (input) for mailman id 543549; Mon, 05 Jun 2023 08:09:08 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q65H2-0007bK-Kb for xen-devel@lists.xenproject.org; Mon, 05 Jun 2023 08:09:08 +0000 Received: from EUR05-VI1-obe.outbound.protection.outlook.com (mail-vi1eur05on2062b.outbound.protection.outlook.com [2a01:111:f400:7d00::62b]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 3e4960f0-0378-11ee-b232-6b7b168915f2; Mon, 05 Jun 2023 10:09:07 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by AM9PR04MB8415.eurprd04.prod.outlook.com (2603:10a6:20b:3b5::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.32; Mon, 5 Jun 2023 08:09:03 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.030; Mon, 5 Jun 2023 08:08:57 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 3e4960f0-0378-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=ktlHnLijpgGuec2FuyIdbj8CkIomovulfJ9YDFtXNs4Tfze7vvkGcOSHeF1RUB/D0+GjopCp5Ed/lwDQX7rh7ZWBkq1cnZ3gopkPWco8dLZkTnHz3LS/T+Q1ZRUVBKS1TcXpP7luOfRR8GSlaZxiDVzdBxpbF0rbLU6jhKViMzwydXvnvVELO/hWMkHovA9yepghuaJD/zqmgJK8qOypDIOPp1eguOHUQZH20zW5W5WQYDSzQfLfgQzyW2dSwugJ5sjv2bZQ+CnnpHU5Cijmlfl0YUam54dQA5yM3OXZCdZ/mgw/+w+EjyIQuGuQwJXk7TR0y/EZ19+xamWR1VyeDg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=opDx5UTKhOXq/hXoj1gMxO5LzzqCu++1K1Q+ZpTilCU=; b=hxW4K/GiionY5ilDsXVU3K5e6nlkwXvVKz7MsquShYzO2IhoSZ+zxNu1LNMiDcxOXAJHqiuz0cin+dLs+i6mrj76PFdg5dHpdeLLTliZB1uJiU7TCxmpM/a0OQ87Zo/TAdOEIfgGJ4R9em7lrg3Vn+aBcdALGivSd+SkLNnrOy1aqUGsHcS46ruh+fSwB1LuOw1x4DVY8UUc4jRmQisfQqgewm1QUxHG+VhJymuxCc0SqIu8TNEs0TN141D4NiAMh3FtjeuapfJexFx2Z8WefTX8jDV0fjxeSDNTr49/sn3cDEAcO+fm+g09KB3xI433NHInJX0zgy8OoZuXlGR+6Q== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=opDx5UTKhOXq/hXoj1gMxO5LzzqCu++1K1Q+ZpTilCU=; b=o3PHUQS6pfY7RyAavHC1w1pAsdxJJCT841PeQC8yvIC47clfjPLf1wn7YHbsO+yCBwXJ4FDXgrcz8EwWbrKPOtBQjvxVLO8X/ZWK1h/ZKcpBn0r92q09ojt+z9sVWSciMchvCucfBC4UVBnp3emQOmgsuO2R6TBVgR39NQYp1uQqut353bL/TD+1qmaASkGBco/sw9wm0lfphj/i2+dPLDE1d1WlXLmpcEDlHNwHZ2uYpC2JzqrmF37llj/owQtg16hpxO7rFBXrS+bW83yXKwkCrpNH5DbsHq7S8twmoxGWL5Ns3lmfg8jN3Q7YX8x+t7pVRLp3vP/52xMcOe/+kg== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <3aa0da8b-1bff-75a0-9806-44fe0375e7a5@suse.com> Date: Mon, 5 Jun 2023 10:08:55 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.11.2 Subject: Re: [PATCH v2 3/3] x86/cpu-policy: Derive RSBA/RRSBA for guest policies Content-Language: en-US To: Andrew Cooper Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , Xen-devel References: <20230601144845.1554589-1-andrew.cooper3@citrix.com> <20230601144845.1554589-4-andrew.cooper3@citrix.com> <1ce6bd53-089e-e8ab-3b54-2720a3fd2c12@suse.com> From: Jan Beulich In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: FR0P281CA0141.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:96::12) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|AM9PR04MB8415:EE_ X-MS-Office365-Filtering-Correlation-Id: 84d2c458-1021-4569-2388-08db659c1ca2 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: n0DG5e3l/AKpvdOp2FgH1HJcgJPyBs7mNPlAk2SL1oRrKa1yCNxr/gPJ1trOd/lG3Xka3/JX4+acwDPkS7fEIdaDj0orWTbyrb7Qsq/xga84AH6ZQuOt020G+QPVyfcU7EmZJXvCeEL/qy/U1QluBXtVeQQo6yifC9DZVnr9sMvonxtZkGLCXXnlZLsQPjG5lA07LbOnY/cszYyb76HZO2TbJWW1tdd/FOJIi0ohNq5wB+vnu7WDYlA5h3opROWEc0Quhdzl+WwJhsh8Kbz5aQpwG1Plc3DRG1jHi8iZyBd1rwHrxIaGQcZF7kXuGde4eYu0AtSF0Eucf5xEaMozyvbubc5EW3/NJFUZ80x3Uy7Hk9rVf1NXtQOKQQN5vtotO7giogy5akM56WGcH/LhSrUOmjr+xiKw6frcbKUn41n99NBcLpGW7xJZ264cLEEk9Cv9hFrfwpEK179FbWAfmK6oImaPIo9eCs5U+s3qpIw7Q1P13aRbvk8k0S3ULz+2oF1DGr74iLX77t0jyxmHtcrHVVhwFRhsvIKuUqx5l20SCXbIhao25ZMCFZbf+sPQ/HJIB91nDPzeUkwZn8KVKKCtZdzDuYFuMrtnBakSpJtW9SK79aEsW3KioVnMvSMTO7D6JSRc/a+7Nkp1FPngXg== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(396003)(39860400002)(376002)(366004)(346002)(136003)(451199021)(36756003)(54906003)(2906002)(31696002)(478600001)(86362001)(38100700002)(41300700001)(8936002)(8676002)(5660300002)(316002)(4326008)(6916009)(66556008)(66476007)(31686004)(83380400001)(66946007)(2616005)(6512007)(6506007)(53546011)(26005)(186003)(6486002)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?VTVodzFrN0ljYVg1RytLRFIrSk9QVXRSb2R5QlF0M25QQ0pZaHh0L0ZPYU5q?= =?utf-8?B?V2pNZjVmelNXalZNTXExWnRoU0IzYjNhSEhEWFV4UHpUOTZXV0o4b0RXRkF4?= =?utf-8?B?Q2VpcGVYbWZLRWlnbUI4bHIrK2pIWnlML0FLaWIxNmQxUnVNSFZxdG9Jd3RP?= =?utf-8?B?QjNsR0JiNkJuN01ET0orSzViSng2c2Y0Qm5xaW90b1FuTStwRWNJVjFzeEUx?= =?utf-8?B?OERxa0hudEFJbkc3dzNSamlTL1VhTWhQSXY2UG1uaEpIU3Z3M2w3YUs1QzZh?= =?utf-8?B?dmtRNzdSTGJKNkFtaWVjaVQ0MXkybTAwRE1tNkswSS82Nnl2RnA1YXY2U1BH?= =?utf-8?B?MHc2eEtabXJsOHVMbkRPSDBtWk83TUtYRVphWkRaQk9aY3ZpM1JjREkvYk01?= =?utf-8?B?MlF0V3JMWTJjWDZVQTdybkttTXFieVhUOUZ6dHQ3K2k5WkNJUS9HMlhrbDcr?= =?utf-8?B?ektPejlOUzFXSCtPclMzR0JibTZZbVhuZ2wreTdVWFNGRElxS3dHYlVCU1hp?= =?utf-8?B?TFV1emZHN2RNekFJckd5dTZma2FKVEI5bFkvdTRWQi8wMTFOV3Q1V2tBZ2hm?= =?utf-8?B?UVFSRTkzUDdjTDNkM3Z5OXJralB4Nmw5NFVRMFdBVnNaM2Y4clVHejl5K0xX?= =?utf-8?B?Y2NlUG5uRGpxcWF1SXdPbHdocUNCZ2VrZzYyZU5RNEhXZXFNaWwwajQwL2ZO?= =?utf-8?B?Qml4NHBhMkg0ZVg4T3pmZUZCaVdaWllIZmJMSSsvNEI0RVlzbnpPNmtVa2Ry?= =?utf-8?B?a20yRGRCd20veUlFL0RwY3Qvemc5cGRrLzk3VllIbnMrK2dQUHRlV1VsazNS?= =?utf-8?B?QmtETVk5UUNPek0vMkgwd25EbVhra3A3b2R1YkF5WXd6MmFLOVRhUWtEZ00v?= =?utf-8?B?YjI0cUl3Q3orYzJQVzJSaSs0ZDZzT0VaVlp5azdIWTJ3RmJoVXY5MWpUR0dQ?= =?utf-8?B?L3dHMWp5RjJJc3E4R0o0ejNYRERBV29abkhlRy8xVWF1RmczTlFlamdaVzdp?= =?utf-8?B?WVJVd3NFVmJtUStQMHNpQTNueXNxdTVWUDNtb0RSMHlJR0JLeVh5UVR6MndQ?= =?utf-8?B?ZU1rUU9UVkp2N3BVUjdMR2FWY29EdWVZNVRWVzJXZmhkMzlkSjk5THlNV0Ur?= =?utf-8?B?cTZ1Z3dyWGk3YlFJaC9LS1BRK1JZWVUxY2hGU25vd3A2OHhmeDJBSUZPNmNs?= =?utf-8?B?Z0QxMWFlOSs2QmZrV29CT2VpQ0pyUnJGcDh2c051UVZtZmk5ZHZ2U1ZKdFZ0?= =?utf-8?B?N09mN1BrVnV2aVY1WERWVEwzYUNqMzZxV0d4VS9LSDV6SlkrSUdXclBKRjlK?= =?utf-8?B?ZUM4c0FaZHhEdkFXV0tNVEhFV3B4djFKNmFaS0FkY3MvbTg5NjlZNG5vTGZy?= =?utf-8?B?dUtHdzdxdDdZY253V3RQYXk0OEJFbGU5RUU3eWdpc20yWjY0bHZLUnkrRVRq?= =?utf-8?B?M0lpTmlSZk9Hcy9OK1NFUGxSYmxCQ0ZBYncxZHYyWTBxTElhQkw4cmIwUit3?= =?utf-8?B?REhYS1Y2SjhpMjBZemR1ZlNwWXhHOEtVUTArYkFRWkQyeG94WUhFdjg3V3oy?= =?utf-8?B?YUtSTEhSQjR1UlpTTllwaUxYU0htZ2hIc0s5SWZDcFNWSXpVS3luYkw2Uzdx?= =?utf-8?B?aVNEY3FkY0FkTTh5U09hOVVjMjdyenRrdmJPcXNTeGcxZnVHMmxsYm9FeE13?= =?utf-8?B?R2ZwYmJ6YTZPUkhMM0t5U00zQUdVKzRjaEZ0c0NNWG5ITWUybFBCczkwUjVz?= =?utf-8?B?cys1Ym56dkxmKzliVG9ZQ0RxK0lCNXJlQzR5TmExaDJzYU5FaU5jQkRkTGNz?= =?utf-8?B?aTFQWmgwOHU3VU1Jb0o3ZDBOQW9oUk1paTh5Y2ZiQmQ1eTU0Qlp4a0JzVzZV?= =?utf-8?B?eFJRZmoxTEpJdGM5WmZZa0lmYlRUWjVoN1JPWTdFeFNmNmY5dWNkL1ZERkxW?= =?utf-8?B?QUJzMWxUS3dzOHZ4S1ZwTXQyK2RUVU5TZUs1VXlaRFdJR0loUHdBU3M2Tllq?= =?utf-8?B?VlgvOTRJWG5wZ2FacmdVbU1seGc1MzB1TWJseG9aMzI3ejlZRUpOZkJKd00x?= =?utf-8?B?NlZhMGYraTUzV3FwTEExaG9zUXNDZlgxYjdPQzNYRG44aTlsK2RZSzVLMGJS?= =?utf-8?Q?iWOhWtkCrqq1tLl2uirE4QTN/?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 84d2c458-1021-4569-2388-08db659c1ca2 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Jun 2023 08:08:57.6084 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: ah9dFVvEKnheyuA3b5fiILXBwxkUfc8Y85lz2nJ9E5UYjrv6K17WA06r6BZ7HNFWm8XUXYXZT8TubbEguqtiZQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR04MB8415 On 02.06.2023 17:29, Andrew Cooper wrote: > On 02/06/2023 11:20 am, Jan Beulich wrote: >> On 01.06.2023 16:48, Andrew Cooper wrote: >>> @@ -786,6 +825,20 @@ void recalculate_cpuid_policy(struct domain *d) >>> >>> sanitise_featureset(fs); >>> >>> + /* >>> + * If the host suffers from RSBA of any form, and the guest can see >>> + * MSR_ARCH_CAPS, reflect the appropriate RSBA/RRSBA property to the guest >>> + * depending on the visibility of eIBRS. >>> + */ >>> + if ( test_bit(X86_FEATURE_ARCH_CAPS, fs) && >>> + (cpu_has_rsba || cpu_has_rrsba) ) >>> + { >>> + bool eibrs = test_bit(X86_FEATURE_EIBRS, fs); >>> + >>> + __set_bit(eibrs ? X86_FEATURE_RRSBA >>> + : X86_FEATURE_RSBA, fs); >>> + } >> Now that we have the same code and comment even a 3rd time, surely this >> wants to be put in a helper? > > I did consider that, and chose not to in this case. > > One of these is going to disappear again in due course, when we start > handing errors back to the toolstack instead of fixing up behind it. > > The requirement to be after sanitise_featureset() is critically > important here for safety, and out-of-lining makes that connection less > obvious. > > I considered having guest_common_default_late_feature_adjustments(), but > that name is getting silly and it's already somewhat hard to navigate. Well, okay then. But may I then please ask that the three instances each cross-reference one another, so touching one will stand a chance of the others also being touched? >> Similarly what about a tool stack (and ultimately admin) request setting >> both RSBA and RRSBA? Wouldn't we better clear the respectively wrong bit >> then? People may do this in their guest configs "just to be on the safe >> side" (once expressing this in guest configs is possible, of course), >> and due to the max policies having both bits set this also won't occur >> "automatically". > > The only reason this series doesn't have a final patch turning > ARCH_CAPS's "a" into "A" is because libxl can't currently operate these > bits at all, let alone safely.  Roger is kindly looking into that side > of things. > > It is an error to be modifying bits behind the toolstack's back to start > with.  We get away with it previously because hiding bits that the > toolstack thinks the guest saw is goes in the safe direction WRT > migrate.  But no more with the semantics of RSBA/RRSBA. > > I explicitly don't care about people wanting to set RSBA && RRSBA "just > in case" - this is too complicated already.  The only non-default thing > an admin needs to be able to express is +rsba,-eibrs,-rrsba to mean > "please be compatible with pre-EIBRS hardware".  (In reality, there will > also need to be some FOO_NO bits taken out too, depending on the CPUs in > question.) Not caring about such people would mean documenting very clearly that the two bits used together is not supported (and then also their respective invalid combinations with EIBRS). Otherwise I'm afraid "such people" would likely include one of our bigger customers. Jan From xen-devel-bounces@lists.xenproject.org Mon Jun 05 08:16:07 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 05 Jun 2023 08:16:07 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543555.848627 (Exim 4.92) (envelope-from ) id 1q65Ni-0000hl-I2; Mon, 05 Jun 2023 08:16:02 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543555.848627; Mon, 05 Jun 2023 08:16:02 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q65Ni-0000he-FF; Mon, 05 Jun 2023 08:16:02 +0000 Received: by outflank-mailman (input) for mailman id 543555; Mon, 05 Jun 2023 08:16:01 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q65Nh-0000hU-ES; Mon, 05 Jun 2023 08:16:01 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q65Nh-0005NP-7p; Mon, 05 Jun 2023 08:16:01 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q65Ng-0001gs-TD; Mon, 05 Jun 2023 08:16:00 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q65Ng-0000Vk-Sl; Mon, 05 Jun 2023 08:16:00 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=HorskJGnPokMn1lTemNytuT4hM3X7tXxstI+JOu1jLc=; b=zwNXx7YY+FZ8HdY1Zpo2B8ijqe px6ppvMgCz/zYYAhjTNwChB85atnN7iILal/VOCq9+k0cnI/v5tCrgyVetjVUCvRGE5G2iu8EeybN QD9VJqMshpijRrnitejhmROXYgGPlH/Dd8uJClPOXFQIVuNIRNzn+R9q1hUP/rZOB1WU=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [linux-linus test] 181175: regressions - FAIL X-Osstest-Failures: linux-linus:test-armhf-armhf-xl-credit1:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-pvshim:guest-localmigrate/x10:fail:heisenbug linux-linus:test-arm64-arm64-libvirt-raw:guest-start/debian.repeat:fail:heisenbug linux-linus:test-armhf-armhf-examine:reboot:fail:nonblocking linux-linus:test-armhf-armhf-xl-multivcpu:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-arndale:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking linux-linus:test-armhf-armhf-xl-credit2:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking linux-linus:test-armhf-armhf-libvirt:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-raw:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-qcow2:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-vhd:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-rtds:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-qcow2:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-raw:migrate-support-check:fail:nonblocking X-Osstest-Versions-This: linux=9561de3a55bed6bdd44a12820ba81ec416e705a7 X-Osstest-Versions-That: linux=6c538e1adbfc696ac4747fb10d63e704344f763d From: osstest service owner Date: Mon, 05 Jun 2023 08:16:00 +0000 flight 181175 linux-linus real [real] flight 181183 linux-linus real-retest [real] http://logs.test-lab.xenproject.org/osstest/logs/181175/ http://logs.test-lab.xenproject.org/osstest/logs/181183/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: test-armhf-armhf-xl-credit1 8 xen-boot fail REGR. vs. 180278 Tests which are failing intermittently (not blocking): test-amd64-amd64-xl-pvshim 20 guest-localmigrate/x10 fail pass in 181183-retest test-arm64-arm64-libvirt-raw 17 guest-start/debian.repeat fail pass in 181183-retest Tests which did not succeed, but are not blocking: test-armhf-armhf-examine 8 reboot fail like 180278 test-armhf-armhf-xl-multivcpu 8 xen-boot fail like 180278 test-armhf-armhf-xl-arndale 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 180278 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 180278 test-armhf-armhf-xl-credit2 8 xen-boot fail like 180278 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 180278 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 180278 test-armhf-armhf-libvirt 8 xen-boot fail like 180278 test-armhf-armhf-libvirt-raw 8 xen-boot fail like 180278 test-armhf-armhf-libvirt-qcow2 8 xen-boot fail like 180278 test-armhf-armhf-xl 8 xen-boot fail like 180278 test-armhf-armhf-xl-vhd 8 xen-boot fail like 180278 test-armhf-armhf-xl-rtds 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 180278 test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qcow2 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass test-amd64-amd64-libvirt-raw 14 migrate-support-check fail never pass version targeted for testing: linux 9561de3a55bed6bdd44a12820ba81ec416e705a7 baseline version: linux 6c538e1adbfc696ac4747fb10d63e704344f763d Last test of basis 180278 2023-04-16 19:41:46 Z 49 days Failing since 180281 2023-04-17 06:24:36 Z 49 days 93 attempts Testing same since 181175 2023-06-04 23:20:27 Z 0 days 1 attempts ------------------------------------------------------------ 2627 people touched revisions under test, not listing them all jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl fail test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-freebsd11-amd64 pass test-amd64-amd64-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale fail test-amd64-amd64-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 fail test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 fail test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine fail test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt fail test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu fail test-amd64-amd64-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-amd64-xl-pvshim fail test-amd64-amd64-pygrub pass test-amd64-amd64-libvirt-qcow2 pass test-armhf-armhf-libvirt-qcow2 fail test-amd64-amd64-libvirt-raw pass test-arm64-arm64-libvirt-raw fail test-armhf-armhf-libvirt-raw fail test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds fail test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-amd64-xl-vhd pass test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd fail ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 332299 lines long.) From xen-devel-bounces@lists.xenproject.org Mon Jun 05 08:35:29 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 05 Jun 2023 08:35:29 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543562.848638 (Exim 4.92) (envelope-from ) id 1q65gJ-000395-4q; Mon, 05 Jun 2023 08:35:15 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543562.848638; Mon, 05 Jun 2023 08:35:15 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q65gJ-00038y-1p; Mon, 05 Jun 2023 08:35:15 +0000 Received: by outflank-mailman (input) for mailman id 543562; Mon, 05 Jun 2023 08:35:13 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q65gH-00038s-Lh for xen-devel@lists.xenproject.org; Mon, 05 Jun 2023 08:35:13 +0000 Received: from NAM10-MW2-obe.outbound.protection.outlook.com (mail-mw2nam10on2061a.outbound.protection.outlook.com [2a01:111:f400:7e89::61a]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id e1c216de-037b-11ee-b232-6b7b168915f2; Mon, 05 Jun 2023 10:35:11 +0200 (CEST) Received: from MW3PR05CA0020.namprd05.prod.outlook.com (2603:10b6:303:2b::25) by IA0PR12MB8932.namprd12.prod.outlook.com (2603:10b6:208:492::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.32; Mon, 5 Jun 2023 08:35:06 +0000 Received: from CO1NAM11FT040.eop-nam11.prod.protection.outlook.com (2603:10b6:303:2b:cafe::ab) by MW3PR05CA0020.outlook.office365.com (2603:10b6:303:2b::25) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.19 via Frontend Transport; Mon, 5 Jun 2023 08:35:06 +0000 Received: from SATLEXMB03.amd.com (165.204.84.17) by CO1NAM11FT040.mail.protection.outlook.com (10.13.174.140) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6455.33 via Frontend Transport; Mon, 5 Jun 2023 08:35:05 +0000 Received: from SATLEXMB05.amd.com (10.181.40.146) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Mon, 5 Jun 2023 03:35:04 -0500 Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB05.amd.com (10.181.40.146) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Mon, 5 Jun 2023 03:35:04 -0500 Received: from [10.71.193.39] (10.180.168.240) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server id 15.1.2375.34 via Frontend Transport; Mon, 5 Jun 2023 03:35:03 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: e1c216de-037b-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=AkbZ2inCedZaj5dt7y9boZtQTGy8NG1m6I2OQhoen/qLvfEtpPJgX8ryAc4pXdsfykP72FcbzsuZ1Xr8bHIvKEZ7Ai14Pa76DEZg6sY02+8VbYC9/iYvXds8+tT009PVzjQwgMSMLweRmcXmxY78l3+tajxOB3grWilzkbPGFU03aPxN6CzHa7yy2i+mHord8LrplBVFEGitwDRCZye8k60DZsaXhedh1UP2VvLZ0L7bLp7xM7KHTMwIAH3JGKZny8vSxUw/8pnDfxBjgvFrMUsNn+9nxmLnDEVSfWTK0jRuJzymmDLSTmfpsQ+bDy1SMU4bjTgLkxs5woU9nAptgg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=WpYlCU7xIRM186ElE/JtnmsqO6Gv6vRzCEjjapELA/0=; b=jFdaJDpANaGV5c3cK9JYZhIp0BAQ0CxYgOVNBGfLSbVYJ9uTwxONcKw1zv5CQuc19a3VK5e0tiU82KoqG3H4J+LzT7kRNCWzIl4LJSTps8omVGITABF6T2vaKznNnMAcQ88VUsU0WUf/7tUB7c7OcLXhedYusOFs1hgQTfeTM2mCBhY4cFgPdxyzNK52Cnjb5kFei0FYm30zRyyxesHsb3ByL2WnM/PFctEH3I4+1OBakJ17DRsN55l+65tYfj5ozzAcZzPg7vRQIi+towYcR5DzQqH52FS9O8FWEXEBijVywoNlhlnh5iLU2VtJfPcVsRrYii3qnPDt38COvzSxrA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=WpYlCU7xIRM186ElE/JtnmsqO6Gv6vRzCEjjapELA/0=; b=Kxd5LTSztpgKtMENi9Y+4EIkVafXDLRujJ6XpIWsKGnPyG3NqNASrLfuFxSYwPrRvht9hTX/MTBRUWlvz5X7Iz42bY7yUe7TPg3FixmKY7j3/Hp81yUi7UgAOd4qCPtaygC9Qy5CV5reqrVRCfOjUMLp3l2+yWShejC2xmE0/XU= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C Message-ID: <68ea453f-cf6e-a5dd-a061-a576cebe2d92@amd.com> Date: Mon, 5 Jun 2023 10:35:02 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [XEN][PATCH v7 16/19] xen/arm: Implement device tree node addition functionalities Content-Language: en-US To: Vikram Garhwal , CC: , , Andrew Cooper , George Dunlap , Julien Grall , Wei Liu References: <20230602004824.20731-1-vikram.garhwal@amd.com> <20230602004824.20731-17-vikram.garhwal@amd.com> From: Michal Orzel In-Reply-To: <20230602004824.20731-17-vikram.garhwal@amd.com> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO1NAM11FT040:EE_|IA0PR12MB8932:EE_ X-MS-Office365-Filtering-Correlation-Id: 2c0cfc04-ff63-4c9a-5445-08db659fc37d X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 6N9y9gpnMOunioqMxGdVAvgfnxNiJuW/DxEFtorcD1WlwalH2/vVdgqKZfybF+bEOQ7MnSy/hEKzDTbdwoq5w+Ox2sNeAe9DUX1WPZZ6ekZskMsqiaj2q7r+k9Y30kX71KDmOy4EfqLnOZVTapAQoj7Vw8OvNk6KgoyBHBf7GaA5vScQPr5mxKffoeVYk09p8Mc+eSnH9D2xQuEZcCSKAXj1k0Ch9tjJbinFass7/1wSHxVLhk9Z/y7L0g1aBdce8S9j3F9UOeFyTwnVc/RtxEdeqB+Vb9jF/KZKlg/RFF3SOQfmXxfjzxGQCXM65SCF7lwhFnBv8TQZBuhFnikHc2HUtv/vjR9kdMB22Fynjmxf2wPmFpIAfa0sXP/Mg/erNaHbl2XMOcFmNu+JAzi+5NmIdhdwVK+KwQuOmYZ/CuOcnohCDL+qb3kDxjqJdXTBTx89vFq+5sNGrr7VLcFTBr6MOO8iklCF3tA9alyvH13N/brG4c253AvE+7DmAegJCUUBIV6RkaaUojDUUIX9zgUHVBgGBqK6lNj5PBGBNnH3VnNdnPSQ7h/DLcu9OdfncJ/PHZKDW1PAmrdN6b4j9Fg38g/+zCa/NBTMbJ36aRW8V0YVveG7zwbq7oiF96CCK5XezsGw23GDTZaDWMyx4uLZmYdlPLcjCWZ5wDwOlhCET0QoHtt2ZYL1tllV7rYr8/NfLqqQRxcliv20asf8Z6jjTf9bFf4XEmrWNUs7OW4aSWvYPVmwDCr6EcPzHEHkFTWwz/DAWT+DHiOHOdkLEWILSHNBHkxN3TxcK5ZDEShNTi6llUX6VyE4/GrNaLRJ X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(376002)(396003)(39860400002)(346002)(136003)(451199021)(40470700004)(46966006)(36840700001)(53546011)(2616005)(41300700001)(31686004)(336012)(426003)(47076005)(36860700001)(186003)(26005)(83380400001)(82310400005)(40460700003)(66899021)(478600001)(40480700001)(110136005)(16576012)(54906003)(4326008)(81166007)(82740400003)(356005)(70586007)(70206006)(316002)(8936002)(8676002)(5660300002)(44832011)(2906002)(30864003)(31696002)(86362001)(36756003)(43740500002)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Jun 2023 08:35:05.5470 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 2c0cfc04-ff63-4c9a-5445-08db659fc37d X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com] X-MS-Exchange-CrossTenant-AuthSource: CO1NAM11FT040.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: IA0PR12MB8932 Hi Vikram, On 02/06/2023 02:48, Vikram Garhwal wrote: > Update sysctl XEN_SYSCTL_dt_overlay to enable support for dtbo nodes addition > using device tree overlay. > > xl dt-overlay add file.dtbo: > Each time overlay nodes are added using .dtbo, a new fdt(memcpy of > device_tree_flattened) is created and updated with overlay nodes. This > updated fdt is further unflattened to a dt_host_new. Next, it checks if any > of the overlay nodes already exists in the dt_host. If overlay nodes doesn't > exist then find the overlay nodes in dt_host_new, find the overlay node's > parent in dt_host and add the nodes as child under their parent in the > dt_host. The node is attached as the last node under target parent. > > Finally, add IRQs, add device to IOMMUs, set permissions and map MMIO for the > overlay node. > > When a node is added using overlay, a new entry is allocated in the > overlay_track to keep the track of memory allocation due to addition of overlay > node. This is helpful for freeing the memory allocated when a device tree node > is removed. > > The main purpose of this to address first part of dynamic programming i.e. > making xen aware of new device tree node which means updating the dt_host with > overlay node information. Here we are adding/removing node from dt_host, and > checking/setting IOMMU and IRQ permission but never mapping them to any domain. > Right now, mapping/Un-mapping will happen only when a new domU is > created/destroyed using "xl create". > > Signed-off-by: Vikram Garhwal > > --- > Changes from v6: > Fix comment style and add comment regarding false flag in irq mapping. > Move malloc for nodes_full_path to handle_add_overlay_nodes. > Move node_num define to start of overlay_get_nodes_info(). > Remove "domain *d" from handle_add_irq_iommu(). > Fix error handling for handle_add_irq_iommu(). > Split handle_add_overlay_nodes to two functions. > Create a separate function for freeing nodes_full_path. > Fix xfree for dt_sysctl. > --- > xen/common/dt-overlay.c | 533 ++++++++++++++++++++++++++++++++++++++++ > 1 file changed, 533 insertions(+) > > diff --git a/xen/common/dt-overlay.c b/xen/common/dt-overlay.c > index b2a7e441df..12b6b010ef 100644 > --- a/xen/common/dt-overlay.c > +++ b/xen/common/dt-overlay.c > @@ -33,6 +33,25 @@ static struct dt_device_node * > return child_node; > } > > +/* > + * Returns next node to the input node. If node has children then return > + * last descendant's next node. > +*/ > +static struct dt_device_node * > +dt_find_next_node(struct dt_device_node *dt, const struct dt_device_node *node) > +{ > + struct dt_device_node *np; > + > + dt_for_each_device_node(dt, np) > + if ( np == node ) > + break; > + > + if ( np->child ) > + np = find_last_descendants_node(np); > + > + return np->allnext; > +} > + > static int dt_overlay_remove_node(struct dt_device_node *device_node) > { > struct dt_device_node *np; > @@ -106,6 +125,78 @@ static int dt_overlay_remove_node(struct dt_device_node *device_node) > return 0; > } > > +static int dt_overlay_add_node(struct dt_device_node *device_node, > + const char *parent_node_path) > +{ > + struct dt_device_node *parent_node; > + struct dt_device_node *next_node; > + > + parent_node = dt_find_node_by_path(parent_node_path); > + > + if ( parent_node == NULL ) > + { > + dt_dprintk("Parent node %s not found. Overlay node will not be added\n", > + parent_node_path); > + return -EINVAL; > + } > + > + /* If parent has no child. */ > + if ( parent_node->child == NULL ) > + { > + next_node = parent_node->allnext; > + device_node->parent = parent_node; > + parent_node->allnext = device_node; > + parent_node->child = device_node; > + } > + else > + { > + struct dt_device_node *np; > + /* > + * If parent has at least one child node. > + * Iterate to the last child node of parent. > + */ > + for ( np = parent_node->child; np->sibling != NULL; np = np->sibling ); > + > + /* Iterate over all child nodes of np node. */ > + if ( np->child ) > + { > + struct dt_device_node *np_last_descendant; > + > + np_last_descendant = find_last_descendants_node(np); > + > + next_node = np_last_descendant->allnext; > + np_last_descendant->allnext = device_node; > + } > + else > + { > + next_node = np->allnext; > + np->allnext = device_node; > + } > + > + device_node->parent = parent_node; > + np->sibling = device_node; > + np->sibling->sibling = NULL; > + } > + > + /* Iterate over all child nodes of device_node to add children too. */ > + if ( device_node->child ) > + { > + struct dt_device_node *device_node_last_descendant; > + > + device_node_last_descendant = find_last_descendants_node(device_node); > + > + /* Plug next_node at the end of last children of device_node. */ > + device_node_last_descendant->allnext = next_node; > + } > + else > + { > + /* Now plug next_node at the end of device_node. */ > + device_node->allnext = next_node; > + } > + > + return 0; > +} > + > /* Basic sanity check for the dtbo tool stack provided to Xen. */ > static int check_overlay_fdt(const void *overlay_fdt, uint32_t overlay_fdt_size) > { > @@ -145,6 +236,76 @@ static unsigned int overlay_node_count(const void *overlay_fdt) > return num_overlay_nodes; > } > > +/* > + * overlay_get_nodes_info gets full name with path for all the nodes which > + * are in one level of __overlay__ tag. This is useful when checking node for > + * duplication i.e. dtbo tries to add nodes which already exists in device tree. > + */ > +static int overlay_get_nodes_info(const void *fdto, char **nodes_full_path) > +{ > + int fragment; > + unsigned int node_num = 0; > + > + fdt_for_each_subnode(fragment, fdto, 0) > + { > + int target; > + int overlay; > + int subnode; > + const char *target_path; > + > + target = fdt_overlay_target_offset(device_tree_flattened, fdto, > + fragment, &target_path); > + if ( target < 0 ) > + return target; > + > + if ( target_path == NULL ) > + return -EINVAL; > + > + overlay = fdt_subnode_offset(fdto, fragment, "__overlay__"); > + > + /* > + * overlay value can be < 0. But fdt_for_each_subnode() loop checks for > + * overlay >= 0. So, no need for a overlay>=0 check here. > + */ > + fdt_for_each_subnode(subnode, fdto, overlay) > + { > + const char *node_name = NULL; > + int node_name_len; > + unsigned int target_path_len = strlen(target_path); > + unsigned int node_full_name_len; > + > + node_name = fdt_get_name(fdto, subnode, &node_name_len); > + > + if ( node_name == NULL ) > + return node_name_len; > + > + /* > + * Magic number 2 is for adding '/' and '\0'. This is done to keep > + * the node_full_path in the correct full node name format. > + */ > + node_full_name_len = target_path_len + node_name_len + 2; > + > + nodes_full_path[node_num] = xmalloc_bytes(node_full_name_len); > + > + if ( nodes_full_path[node_num] == NULL ) > + return -ENOMEM; > + > + memcpy(nodes_full_path[node_num], target_path, target_path_len); > + > + nodes_full_path[node_num][target_path_len] = '/'; > + > + memcpy(nodes_full_path[node_num] + target_path_len + 1, > + node_name, node_name_len); > + > + nodes_full_path[node_num][node_full_name_len - 1] = '\0'; > + > + node_num++; > + } > + } > + > + return 0; > +} > + > static int handle_remove_irq_iommu(struct dt_device_node *device_node) > { > int rc = 0; > @@ -369,6 +530,373 @@ out: > return rc; > } > > +/* > + * Handles IRQ and IOMMU mapping for the overlay_node and all descendants of the > + * overlay_node. > + */ > +static int handle_add_irq_iommu(struct dt_device_node *overlay_node) > +{ > + int rc; > + unsigned int naddr, i, len; > + struct dt_device_node *np; > + > + /* > + * First let's handle the interrupts. > + * For now, need_mapping is set to false which means it will only permit IRQ > + * access to hardware_domain using irq_permit_access() but will never route > + * as route_irq_to_guest() will not be called with false flag. > + */ > + rc = handle_device_interrupts(hardware_domain, overlay_node, false); > + if ( rc < 0 ) > + { > + printk(XENLOG_ERR "Failed to retrieve interrupts configuration\n"); > + return rc; > + } > + > + /* Check if iommu property exists. */ > + if ( dt_get_property(overlay_node, "iommus", &len) ) > + { > + /* Add device to IOMMUs. */ > + rc = iommu_add_dt_device(overlay_node); > + if ( rc < 0 ) > + { > + printk(XENLOG_ERR "Failed to add %s to the IOMMU\n", > + dt_node_full_name(overlay_node)); > + return rc; > + } > + } > + > + /* Set permissions. */ > + naddr = dt_number_of_address(overlay_node); > + > + dt_dprintk("%s naddr = %u\n", dt_node_full_name(overlay_node), naddr); > + > + /* Give permission to map MMIOs */ > + for ( i = 0; i < naddr; i++ ) > + { > + uint64_t addr, size; These shall be paddr_t and ... > + > + /* > + * For now, we skip_mapping which means it will only permit iomem access > + * to hardware_domain using iomem_permit_access() but will never map as > + * map_range_p2mt() will not be called. > + */ > + struct map_range_data mr_data = { .d = hardware_domain, > + .p2mt = p2m_mmio_direct_c, > + .skip_mapping = true > + }; > + > + rc = dt_device_get_address(overlay_node, i, &addr, &size); ... here you should use dt_device_get_paddr() > + if ( rc ) > + { > + printk(XENLOG_ERR "Unable to retrieve address %u for %s\n", > + i, dt_node_full_name(overlay_node)); > + return rc; > + } > + > + rc = map_range_to_domain(overlay_node, addr, size, &mr_data); > + if ( rc ) > + return rc; > + } > + > + /* Map IRQ and IOMMU for overlay_node's children. */ > + for ( np = overlay_node->child; np != NULL; np = np->sibling ) > + { > + rc = handle_add_irq_iommu(np); > + if ( rc ) > + { > + printk(XENLOG_ERR "Adding IRQ and IOMMU failed\n"); > + return rc; > + } > + } > + > + return rc; > +} > + > +static void free_nodes_full_path(int num_nodes, char **nodes_full_path) num_nodes shall be unsigned > +{ > + int i; unsigned > + > + if ( nodes_full_path != NULL ) > + { > + for ( i = 0; i < num_nodes && nodes_full_path[i] != NULL; > + i++ ) > + { > + xfree(nodes_full_path[i]); > + } > + xfree(nodes_full_path); > + } > + > + return; Why explicit return from void function? Also, you could get rid of the {} by doing: if ( nodes_full_path == NULL ) return; for ( i = 0; i < num_nodes && nodes_full_path[i] != NULL; i++ ) xfree(nodes_full_path[i]); xfree(nodes_full_path); > +} > + > +static long add_nodes(struct overlay_track *tr, char **nodes_full_path) > + > +{ > + int j, rc; j shall be unsigned as you use it as an index to nodes_full_path and num_nodes of overlay_track is unsigned. > + struct dt_device_node *overlay_node; > + > + for ( j = 0; j < tr->num_nodes; j++ ) > + { > + struct dt_device_node *prev_node, *next_node; > + > + dt_dprintk("Adding node: %s\n", nodes_full_path[j]); > + > + /* Find the newly added node in tr->dt_host_new by it's full path. */ > + overlay_node = device_tree_find_node_by_path(tr->dt_host_new, > + nodes_full_path[j]); > + if ( overlay_node == NULL ) > + { > + /* Sanity check. But code will never come here. */ > + ASSERT_UNREACHABLE(); > + return -EFAULT; > + } > + > + /* > + * Find previous and next node to overlay_node in dt_host_new. We will > + * need these nodes to fix the dt_host_new mapping. When overlay_node is > + * take out of dt_host_new tree and added to dt_host, link between > + * previous node and next_node is broken. We will need to refresh > + * dt_host_new with correct linking for any other overlay nodes > + * extraction in future. > + */ > + dt_for_each_device_node(tr->dt_host_new, prev_node) > + if ( prev_node->allnext == overlay_node ) > + break; > + > + next_node = dt_find_next_node(tr->dt_host_new, overlay_node); > + > + read_lock(&dt_host->lock); > + > + /* Add the node to dt_host. */ > + rc = dt_overlay_add_node(overlay_node, overlay_node->parent->full_name); > + if ( rc ) > + { > + read_unlock(&dt_host->lock); > + > + /* Node not added in dt_host. */ > + return rc; > + } > + > + read_unlock(&dt_host->lock); > + > + prev_node->allnext = next_node; > + > + overlay_node = dt_find_node_by_path(overlay_node->full_name); > + if ( overlay_node == NULL ) > + { > + /* Sanity check. But code will never come here. */ > + ASSERT_UNREACHABLE(); > + return -EFAULT; > + } > + > + rc = handle_add_irq_iommu(overlay_node); > + if ( rc ) > + { > + printk(XENLOG_ERR "Adding IRQ and IOMMU failed\n"); > + return rc; > + } > + > + /* Keep overlay_node address in tracker. */ > + tr->nodes_address[j] = (unsigned long)overlay_node; > + } > + > + return 0; > +} > +/* > + * Adds device tree nodes under target node. > + * We use tr->dt_host_new to unflatten the updated device_tree_flattened. This > + * is done to avoid the removal of device_tree generation, iomem regions mapping > + * to hardware domain done by handle_node(). > + */ > +static long handle_add_overlay_nodes(void *overlay_fdt, > + uint32_t overlay_fdt_size) > +{ > + int rc, j; j shall be unsigned > + struct dt_device_node *overlay_node; > + struct overlay_track *tr = NULL; > + char **nodes_full_path = NULL; > + unsigned int new_fdt_size; > + > + tr = xzalloc(struct overlay_track); > + if ( tr == NULL ) > + return -ENOMEM; > + > + new_fdt_size = fdt_totalsize(device_tree_flattened) + > + fdt_totalsize(overlay_fdt); > + > + tr->fdt = xzalloc_bytes(new_fdt_size); > + if ( tr->fdt == NULL ) > + { > + xfree(tr); > + return -ENOMEM; > + } > + > + tr->num_nodes = overlay_node_count(overlay_fdt); > + if ( tr->num_nodes == 0 ) > + { > + xfree(tr->fdt); > + xfree(tr); > + return -ENOMEM; > + } > + > + tr->nodes_address = xzalloc_bytes(tr->num_nodes * sizeof(unsigned long)); > + if ( tr->nodes_address == NULL ) > + { > + xfree(tr->fdt); > + xfree(tr); > + return -ENOMEM; > + } > + > + rc = check_overlay_fdt(overlay_fdt, overlay_fdt_size); > + if ( rc ) > + { > + xfree(tr->nodes_address); > + xfree(tr->fdt); > + xfree(tr); > + return rc; > + } > + > + /* > + * Keep a copy of overlay_fdt as fdt_overlay_apply will change the input > + * overlay's content(magic) when applying overlay. > + */ > + tr->overlay_fdt = xzalloc_bytes(overlay_fdt_size); > + if ( tr->overlay_fdt == NULL ) > + { > + xfree(tr->nodes_address); > + xfree(tr->fdt); > + xfree(tr); > + return -ENOMEM; > + } > + > + memcpy(tr->overlay_fdt, overlay_fdt, overlay_fdt_size); > + > + spin_lock(&overlay_lock); > + > + memcpy(tr->fdt, device_tree_flattened, > + fdt_totalsize(device_tree_flattened)); > + > + /* Open tr->fdt with more space to accommodate the overlay_fdt. */ > + rc = fdt_open_into(tr->fdt, tr->fdt, new_fdt_size); > + if ( rc ) > + { > + printk(XENLOG_ERR "Increasing fdt size to accommodate overlay_fdt failed with error %d\n", > + rc); > + goto err; > + } > + > + nodes_full_path = xzalloc_bytes(tr->num_nodes * sizeof(char *)); > + if ( nodes_full_path == NULL ) > + { > + rc = -ENOMEM; > + goto err; > + } > + > + /* > + * overlay_get_nodes_info is called to get the node information from dtbo. > + * This is done before fdt_overlay_apply() because the overlay apply will > + * erase the magic of overlay_fdt. > + */ > + rc = overlay_get_nodes_info(overlay_fdt, nodes_full_path); > + if ( rc ) > + { > + printk(XENLOG_ERR "Getting nodes information failed with error %d\n", > + rc); > + goto err; > + } > + > + rc = fdt_overlay_apply(tr->fdt, overlay_fdt); > + if ( rc ) > + { > + printk(XENLOG_ERR "Adding overlay node failed with error %d\n", rc); > + goto err; > + } > + > + /* > + * Check if any of the node already exists in dt_host. If node already exits > + * we can return here as this overlay_fdt is not suitable for overlay ops. > + */ > + for ( j = 0; j < tr->num_nodes; j++ ) > + { > + overlay_node = dt_find_node_by_path(nodes_full_path[j]); > + if ( overlay_node != NULL ) > + { > + printk(XENLOG_ERR "node %s exists in device tree\n", > + nodes_full_path[j]); > + rc = -EINVAL; > + goto err; > + } > + } > + > + /* Unflatten the tr->fdt into a new dt_host. */ > + rc = unflatten_device_tree(tr->fdt, &tr->dt_host_new); > + if ( rc ) > + { > + printk(XENLOG_ERR "unflatten_device_tree failed with error %d\n", rc); > + goto err; > + } > + > + rc = add_nodes(tr, nodes_full_path); > + if ( rc ) > + { > + printk(XENLOG_ERR "Adding nodes failed. Removing the partially added nodes.\n"); > + goto remove_node; > + } > + > + INIT_LIST_HEAD(&tr->entry); > + list_add_tail(&tr->entry, &overlay_tracker); > + > + spin_unlock(&overlay_lock); > + > + free_nodes_full_path(tr->num_nodes, nodes_full_path); > + > + return rc; > + > +/* > + * Failure case. We need to remove the nodes, free tracker(if tr exists) and > + * tr->dt_host_new. > + */ > +remove_node: > + tr->num_nodes = j; > + rc = remove_nodes(tr); > + > + if ( rc ) > + { > + /* > + * User needs to provide right overlay. Incorrect node information > + * example parent node doesn't exist in dt_host etc can cause memory > + * leaks as removing_nodes() will fail and this means nodes memory is > + * not freed from tracker. Which may cause memory leaks. Ideally, these > + * device tree related mistakes will be caught by fdt_overlay_apply() > + * but given that we don't manage that code keeping this warning message > + * is better here. > + */ > + printk(XENLOG_ERR "Removing node failed.\n"); > + spin_unlock(&overlay_lock); > + > + free_nodes_full_path(tr->num_nodes, nodes_full_path); > + > + return rc; > + } > + > +err: > + spin_unlock(&overlay_lock); > + > + if ( tr->dt_host_new ) > + xfree(tr->dt_host_new); > + > + xfree(tr->overlay_fdt); > + xfree(tr->nodes_address); > + xfree(tr->fdt); > + > + free_nodes_full_path(tr->num_nodes, nodes_full_path); This should be moved after freeing dt_host_new to keep reverse order > + > + xfree(tr); > + > + return rc; > +} > + > long dt_sysctl(struct xen_sysctl_dt_overlay *op) > { > long ret; > @@ -396,6 +924,11 @@ long dt_sysctl(struct xen_sysctl_dt_overlay *op) > > switch ( op->overlay_op ) > { > + case XEN_SYSCTL_DT_OVERLAY_ADD: > + ret = handle_add_overlay_nodes(overlay_fdt, op->overlay_fdt_size); > + remove empty line > + break; > + > case XEN_SYSCTL_DT_OVERLAY_REMOVE: > ret = handle_remove_overlay_nodes(overlay_fdt, op->overlay_fdt_size); > ~Michal From xen-devel-bounces@lists.xenproject.org Mon Jun 05 08:58:41 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 05 Jun 2023 08:58:41 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543570.848654 (Exim 4.92) (envelope-from ) id 1q662j-0005i8-VH; Mon, 05 Jun 2023 08:58:25 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543570.848654; Mon, 05 Jun 2023 08:58:25 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q662j-0005i1-R4; Mon, 05 Jun 2023 08:58:25 +0000 Received: by outflank-mailman (input) for mailman id 543570; Mon, 05 Jun 2023 08:58:24 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q662i-0005hv-MN for xen-devel@lists.xenproject.org; Mon, 05 Jun 2023 08:58:24 +0000 Received: from esa5.hc3370-68.iphmx.com (esa5.hc3370-68.iphmx.com [216.71.155.168]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 1e58f301-037f-11ee-8611-37d641c3527e; Mon, 05 Jun 2023 10:58:21 +0200 (CEST) Received: from mail-bn1nam02lp2042.outbound.protection.outlook.com (HELO NAM02-BN1-obe.outbound.protection.outlook.com) ([104.47.51.42]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 05 Jun 2023 04:58:15 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by BY5PR03MB5299.namprd03.prod.outlook.com (2603:10b6:a03:229::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Mon, 5 Jun 2023 08:58:12 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::10bb:98bc:e36d:36ab]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::10bb:98bc:e36d:36ab%3]) with mapi id 15.20.6455.030; Mon, 5 Jun 2023 08:58:12 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 1e58f301-037f-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1685955501; h=message-id:date:subject:to:cc:references:from: in-reply-to:content-transfer-encoding:mime-version; bh=rXphWBvyhf2VA51/Ok1tzgpc/JNxdWkKYBx6VcdeoDw=; b=Be2ZiKObqdcLgrbZKuEwiVRgduRsslxVo2nqb1wNQIHUi8yAus6x19TO S29llgBxoRSirznhVXHxf+GFsEuBwrxmYdlN4FgscnbJ/pAas1oWnHXaA FHfzGIkNqpBMwoIqPAqK1FJ+DNV0KnckSUeBaX4CgMCCeZqP8Widf7RjX w=; X-IronPort-RemoteIP: 104.47.51.42 X-IronPort-MID: 110349328 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:2niu+KgJ3fpHFdV4YG8Q8wohX161pBEKZh0ujC45NGQN5FlHY01je htvW27UPqyMNzTxKIokO4/i8kgEuMSHz4NnSVBo+ywzFXwb9cadCdqndUqhZCn6wu8v7q5Ex 55HNoSfdpBcolv0/ErF3m3J9CEkvU2wbuOgTrWCYmYpHlUMpB4J0XpLg/Q+jpNjne+3CgaMv cKai8DEMRqu1iUc3lg8sspvkzsx+qyq0N8klgZmP6sT4geCzyB94K83fsldEVOpGuG4IcbiL wrz5OnR1n/U+R4rFuSknt7TGqHdauePVeQmoiM+t5mK2nCulARrukoIHKN0hXNsoyeIh7hMJ OBl7vRcf+uL0prkw4zxWzEAe8130DYvFLXveRBTuuTLp6HKnueFL1yDwyjaMKVBktubD12i+ tQ0MQwuYCqegN672e78StdWo9gofer0adZ3VnFIlVk1DN4AaLWbGeDgw4Yd2z09wMdTAfzZe swVLyJ1awjNaAFOPVFRD48imOCvhT/0dDgwRFC9/PJrpTSMilEoluS3WDbWUoXiqcF9t0CUv G/ZuU/+BQkXLoe3wjuZ6HO8wOTImEsXXapLTeXjqq8x2g37Kmo7Nj8xdlmHpPqCrGGlQvtRK xMP5nQSlP1nnKCsZpynN/Gim1aeuRQRQcZXVecz5weE0KP86RuWHWUCQXhKb9lOnN87Q3km2 0GEm/vtBCdzq/uFRHSF7LCWoDiufy8PIgcqfjMJQwID5J/4vIg5gxbLT9BiOKewgpv+HjSY/ tyRhC03hrFWh8hS0ay+pQrDm2j0+sKPSRMp7ALKWG7j9hl+eIOue42v7x7c8OpEK4GaCFKGu RDohvSj0QzHNrnV/ATlfQnHNOjBCyqtWNEEvWNSIg== IronPort-HdrOrdr: A9a23:0OjkD6y+6dbdiNhkXGr0KrPxSugkLtp133Aq2lEZdPULSKGlfp GV9sjziyWetN9wYh4dcB67Sc+9qADnhPpICO4qTMqftWjdyRGVxeRZgbcKrAeQeBEWmtQtrZ uINpIOc+EYbmIK8/oSgjPZLz9I+rDunsGVbKXlvg5QpGlRGt5dBmxCe2Om+yNNNW577NYCZf ihDp0tnUvdRZ1bVLXzOlA1G8z44/HbnpPvZhALQzYh9Qm1lDutrJLqDhSC2R8acjVXhZMv63 LMnQDV7riq96jT8G6Q60bjq7Bt3PfxwNpKA8KBzuATNzXXkw6tIKhxRrGYuzgxgee3rHInis PFrRsMN9l6r1nRYma2ix3w3BSI6kdl11bSjXujxVfzq83wQzw3T+JHmIJiaxPcr24tpst13q 5n13+Q88M/N2KKoA3No/zzEz16nEu9pnQv1cYVknxkSIMbLJtct5YW8k95GIoJWAj69IckOu 9zC9y03ocfTXqqK1Ti+kV/yt2lWXo+Wj+AX0g5o8SQlwNbmXhopnFosPA3rzMlztYQWpNE7+ PLPuBDj7dVVPIbaqp7GaMoXda3Inale2OMDEuiZXDcUI0XMXPErJD6pJ8v4vuxRZAOxJwu3L zcTVJjs3IocU6GM7zB4HRyyGGPfIyBZ0Wu9ikHjKIJ/4EUBYCbfhFrcWpe0/dJ+J4kc4nms/ XaAuMiPxasFxqoJW9z5XyMZ3BjEwhubCQrgKdKZ7uvmLO9FmS4jJ2sTN/jYJzQLB0DZkTTRl M+YRmbHrQz0qnsYA61vCTs X-Talos-CUID: 9a23:np9lZW7eFDz7WqmeDdss2FcoOc4fb3rhwW6MZE+GM0N1Q+y2VgrF X-Talos-MUID: 9a23:Q6uJLQYZshOrA+BTiR3LpzNeMcRTxYu1EWkDkcodp5e4DHkl X-IronPort-AV: E=Sophos;i="6.00,217,1681185600"; d="scan'208";a="110349328" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=NgBhvtaKmctLyM7p4SWg76MUKuf7gyFoXTSYozrm8h7o6XgB5dzbIg5A5GXOzsphjBOcR2OBAW/iK7qndIBPWHk0UL2NFA3BsMKzBVjQwVLheNJEBwzLqJwXwfk+bZUc8uz9i5f5RTLf6Wz5E1PFw6vTvHxaSqnhhelGT5iBnj28DybDIVIKjUpAWbi0xZqOmoawjsmzF8TBpFYoQ94B3sATYvstj87X6Zy2rjAkhysX+ZQF4PN3QH+ON9eG/z4I1oAXONJAohD+HYvFdCkowXxBXU1OkRLm41SKNlzX+OGQWPXqzt3prvFiOoeoqd0zyiPQkoPVnHSjDBgJHWzNRQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=rXphWBvyhf2VA51/Ok1tzgpc/JNxdWkKYBx6VcdeoDw=; b=R/AnkLNtvVXBon9fKWp6149X6/zguN9E14ipMbqpawSvWi9PFO//3tpE3qfJXZqcbTz/xBGE1qenKtyjpKqhRZ5l660E2bCn0yFUZPBogs8Pcduoq008omremEwHJCZlacogRrhP/b94kB7PU6YX/xRTS3DRoZQdh+ION2hmF9MWWTpmPyFHBkdC94QKFMSHpI8PmGEP8wTwhg7QC3TJDB4p9NBv8k0nwTESe9EwK+Sc4ietzKDWutHMBk9srQtCOPfy5iX1lAGfgoPfEPl5v1/L5s64u++FZqbzK9atOrjkLfHWg7oUQQpNwrAjVeLlF9gbOzz7r/ILHXgf9ROSxA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=rXphWBvyhf2VA51/Ok1tzgpc/JNxdWkKYBx6VcdeoDw=; b=i4xrI/w+4uQ5T57CXH+0oS3RGUVXx2c4LMkYoj8uFTgEyVTFDkJjvh5K7PjvmZ8ZcT5vtpXYVOdcBfNdwkzU8xU6SlOwJvNHi3C1zvzkV1kx26hVU01Ieq+jSTT5+zC/MgSP12gpqUVV1zSqHjB6zW472xdIQJsXAbDhka01ccU= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: Date: Mon, 5 Jun 2023 09:58:06 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: Xen reliance on non-standard GCC features Content-Language: en-GB To: Roberto Bagnara , "xen-devel@lists.xenproject.org" Cc: Stefano Stabellini References: <1cd359e7-5245-a621-3be2-9323ba5b327b@bugseng.com> From: Andrew Cooper In-Reply-To: <1cd359e7-5245-a621-3be2-9323ba5b327b@bugseng.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO4P123CA0554.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:33b::9) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|BY5PR03MB5299:EE_ X-MS-Office365-Filtering-Correlation-Id: b5aeda25-b747-4546-1bcc-08db65a2fd8a X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: JdNsARseAubBEumYXDkmPt0GmZBcJEKkoWDwVO3n/QPmG0w3lJE8gU1AYX1OwXAjqQMSQ86BY34KkFtETWf0kbx2TANAiyJg8UamQBClL9gbgM6rICQmYfDM8KCx7CfABJIqm/iA0kKKVsq9tiEF45M/6ph5z4PoV4bnhl69fvTEZ+RQRAA7Qsh+HFpzn5QeIobDe5fSe/qXDz4OZtGi7XRgY3cYR19UnQKDBVrlRWx79EYJ8LikrVnMTjuZKB7kVaDPUzTL+wIvuG4bQOTXqO/zdCgjjXN1PH8wj/I7sBYInHXQkzdp8g4iW7swKer7tNo31xpH4p3rA51YtqP+nQE3kF2dRDK3ox7yfUVoV65kcSencqdgk+QKGonvRUiDqO9+z2oQ2sUXb79xVgKU3wXKUCUS7dyPAedEX2Aa7aGfHKelEW5U/ADtZ7H2XOQwv35pMh11GdcoGz2AyaSbRmOvAzKc2FO4DOTEORTg5ntjxdtYKjfIOX+AqrJG2XWDX03Db17KZlRgH0mgW7ldK0YDhPhbUaxhCqORUXVtxPCbrGRHSwb6m/juUeKRMJeQhGDFLY71uJPMjYbdwd7ZS5U2VKF6z+x8vglXdEHmt3JYuqjc++G2BVEMRR3LGAjpbwXMcMFo/PNRZEhXEfE2TA== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(346002)(366004)(376002)(396003)(136003)(39860400002)(451199021)(26005)(110136005)(66476007)(66556008)(66946007)(4326008)(38100700002)(82960400001)(478600001)(6486002)(2616005)(6666004)(2906002)(4744005)(53546011)(36756003)(6506007)(6512007)(41300700001)(316002)(8676002)(8936002)(186003)(5660300002)(86362001)(31696002)(31686004)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?UmNid0owSXViQTFOand3S2RkS09pRW5yNEJzekxsMGtJODhXMTBSS1E3Tkhk?= =?utf-8?B?eE1ieUJ1VVhBS25yajFRc1E0Wm1YWE1KRU94b1lTNTdFZVN6MmJlanJqMXl0?= =?utf-8?B?NzFGa2d5dXRmRm4raEtIZVVOWUFycEJUc1VyUUxIM3VZUldEaXJWWFZ3NXQr?= =?utf-8?B?bDdXcXR4K2tGdVIxTkVEakxIZ3UyNW1wRDIrSFZ5NmRjN3M3UkF1bHhzZlZt?= =?utf-8?B?MllsdlA4a3ZQdGRiVTBGWGR3VGJ6dHVhSUFpUG9MTnpZaFY2dUxJejdRNGZV?= =?utf-8?B?SzJQRVg5NXd4U3E2ZVhMOVhvQzBDb1VLeW94NzUwUUF3Smh4V2pOd0lUaFdn?= =?utf-8?B?Snd6QWdONzBVY2Fzb2VSMHNtazlaZEkxWlRFcEtJOFJ5bU5NVFBwM2hpMTd0?= =?utf-8?B?TDlpUW02UTloaWpoTjE1ZlZkbHpjT2ZwMEpVS1AralNVNW5CbktYbjVpWmU5?= =?utf-8?B?Rmo5ZW9IOGxIdm1RaWhzUXRQdXhBenQ5Q3htWVVOZVVIYjZnYUFNVzB5a0Jy?= =?utf-8?B?MW92N2dkNmRwalZDS1p0bVEvTms3bXZ2cFV2MVZDZUhNRzl3RFdyMUdCWmtH?= =?utf-8?B?QytJMmFwNEFmQlQ0MFpNRlZmc3hkMVUrNnhaMVpwR3dxZWlZRHZBUGlnNE9w?= =?utf-8?B?aHpaQVZqQmZpMmFhTXlDaWZwV08wTmpPYnBJSGVSUm1SMGpNaDdQeS82L3ZI?= =?utf-8?B?ODZVME5MYXM0bFlFclVtSTVDbkQ2K1FPZDlXckNSdUo3ZE5wMk02bWw4Y0g3?= =?utf-8?B?dTl1cW5WVkh6a3pZZWQ2TTg4WVB5VDVMa21oUjFzanRvY3d5MThROVBWUncy?= =?utf-8?B?aVo0bHpSNlhPNWhzQlgvRGY4VlJ1MnkraFJIcnR5cjZWa0UvdkdjeFBPQkVY?= =?utf-8?B?aXVxYUl2MjNVOUE0OHQ4KzVoMlNBZUlvZUdVaHNhZG5IZ1VTNGRRVXF5N1J5?= =?utf-8?B?d05sT09ZZmVUVG1kZ2pJRHRqYy8vVDRhTmw3RDVhQm9zT1pWemVHMzBxeUhn?= =?utf-8?B?eDFoRVY0NzZIZEFKdEduMkxrTmVsUmpBNEE0M25jOXJreG1iQmhFbjlmQ2dp?= =?utf-8?B?MTM1YTZqMkFzeHdhQ1N3OUhiN2FEa3M3WVowYmNqRHNjcFRaeVBtSGdPUm1O?= =?utf-8?B?QmRUaE1qOVVIZEp6UzRSeUgyempWYm14UU9jemxOMzVSYU9XQUdzNXBHRGFH?= =?utf-8?B?dDRvT09KSHJqWWxxc2ZsQldRbmJtaTIrYko0dlpzZHROa0EwZUFnRWg3WU1X?= =?utf-8?B?YWhJeFNHTkl2YkthZ0lCdncrY2NjUTF2NG1sdTBlRE9pOHhqL2JzR2l1MWh2?= =?utf-8?B?ZXFxaTJtb09UdmJTRExiMUwrOEhSaUloVE5Rem9KUWhFaGFGUHNqSVU3MzBx?= =?utf-8?B?bzU1dUg1T1AvU0ZISTY1RXh5ME5mMSt0WWFSN1NWcEdESFF1OXp2ZFVpV2ZJ?= =?utf-8?B?WFFPazZTU3drbnozbGRFNVdsZ0pnaHUwRTJqS0JkQkZvbS9WaVBZNldQc0V4?= =?utf-8?B?UnNLdlB6WC9pdzBYbTdKcUl2ZTRsVTJINFdwR3hmQlZ0SnBvbVVvekVreFdr?= =?utf-8?B?cjJCZzFaU1M0VUh1S0RidnJKSUl5MmcvTE5DTkRIUExnUThmYkt3azNOaWcx?= =?utf-8?B?eWVWZ3dFT2RjRmZzaVdQV3lhMGlMR2xwSDdpOHB2emR0UTVEekJGcHNFSEJj?= =?utf-8?B?SDVla3NYMlZzRmFYTXhoclIxaWNBZGwvQ3pyTWUrSTJMNVBBUjdIeGVtNDhX?= =?utf-8?B?ZHFzZEwxRXUvVUl3QnI2UFV1Ym1TdXRRdEdTQU9RaVFKVHAxbXF5UmhGbHZK?= =?utf-8?B?U1pCa0F6d1pTeGh4MmRwa1kvT3JDbFNUcnNGL3o4VjJOSmI2KzV4ZFIrcGdn?= =?utf-8?B?S1d6Y2hweUgvckdJRDVBVFhnQlQxWXB3aFBEQy9ERVJaN0xvKzVKRzNDUTVI?= =?utf-8?B?Q2o5VWh6ZitMcFNnU0l3d1V2MVlqWkdzTnAwclRiKy9EWlpjYjJVUmxDeDdD?= =?utf-8?B?L0JGOUpOeEJtQ0YxcXl1ZzNNclN5SHo2Uml0eUFNWXE0NFh2L1ZwSHh2TDhZ?= =?utf-8?B?a2g3MmZyYmZBemJrZGdtZzZmRVRMdWRwWS94bjFBZ29ZNDdxd2ZFdXhvVWty?= =?utf-8?B?TjFzMkFjS1RNK3dVQ0dFdlRKUUVRQ0FjUUg4M25qWUNkYlZ2WnA3amlqblZB?= =?utf-8?B?R2c9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: OZg2Qe4uGHXtrKCwCLSwZRbbOLSrhKvmBXYryBJ7dkwiFpxrpwXumLGAjVr1Up5CDtV15TKQJTM1Ymh7PUzEz8I8aVZdHFu83H5+T/9ePNk3ZI+ssfe0DUWbhNubraTOGJWyXkmDbTo+PK9h58rsdwDh5Mg/quhfsTbuxYnzxCuw9Ja7Fur8Vpmwjh+JjQuJ81nXMFX39DIlOhhLGKkEss/UhbVC/Uhj8lLxvQY2M/Eal4nfmEW8sYzcNqXua/Vj+VAkxWwHJQUohyvM4keMoEgib4SxSHv43nGDdbdlIoLtOrz3sNzBvLxzMaPK/THJUa4Ep9czYvgdWVz1Z+NhUyJrf7Y5p3EHKzZHLLH8UHrvsH52BXAXPQp2zMPXlkTmb5GUe2B5sparm+AVS3sBDyoEB1929JamjvoCbwDi5L1EnPOFTqKT3BDZ/bpK8RZBML0P5y4hZpivAILRHMaR8ejRl27T7OZVypDMGLvS7lS9UKlw/HzeCR3f1giKLPezurziVKwBcG7k4l/H9RaAYp74wCZgR6T0hMX7IOGr4hWKJaGCdZV14ZGT7Bh7cvEjNFAJi4j3HA8qE5ImYVF5vAdd/ShOtsYSKs2p0ZsdeELkZEm81w6pAsY/4RwSVG9tV2gkMIczVLEV/REGsVp4GdwZicISryu49dWZ4ds0MTq3aK/TelLgWcBMePKz4FsvZS9knIxm29WCqNqBOpnO85MN49gj71B6IAhh3JQMROB/TfV2RPssNt6B9S/kNEv4anEVYdAGS1NwKo2wyVcpc8TkCM0uYBaBI+V+0cwf3+G5AlrE80CamCW7k7E13R3+8fTdo0QZb1CMAv6JY1xLrQ== X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: b5aeda25-b747-4546-1bcc-08db65a2fd8a X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Jun 2023 08:58:11.9761 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: dZYF5VDlDJZ5i4oZ7d3tLFaBuD5JRJV8vXUe74LMaFhj02NMeiXUALmLm4Ozl0Fkhl9JL1hLegLHf8dRcoQLCS4OjsZqHt1kkzyY7YGN4FM= X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY5PR03MB5299 On 05/06/2023 6:28 am, Roberto Bagnara wrote: > U10) \m escape sequence. >      Is this an undocumented GCC extension or just a typo? Where are you seeing this? The only examples I see are in asm macros, and they're all parameter substitutions. This includes the one in x86's bug.h where it's a parameter substitution into an .ascii string literal, not an escaped special character in the literal. ~Andrew From xen-devel-bounces@lists.xenproject.org Mon Jun 05 09:19:26 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 05 Jun 2023 09:19:26 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543578.848665 (Exim 4.92) (envelope-from ) id 1q66Mr-0008Ei-Pf; Mon, 05 Jun 2023 09:19:13 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543578.848665; Mon, 05 Jun 2023 09:19:13 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q66Mr-0008Eb-Kj; Mon, 05 Jun 2023 09:19:13 +0000 Received: by outflank-mailman (input) for mailman id 543578; Mon, 05 Jun 2023 09:19:11 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q66Mp-0008EV-UH for xen-devel@lists.xenproject.org; Mon, 05 Jun 2023 09:19:11 +0000 Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 060ee4a6-0382-11ee-8611-37d641c3527e; Mon, 05 Jun 2023 11:19:08 +0200 (CEST) Received: from [192.168.1.142] (unknown [151.37.78.171]) by support.bugseng.com (Postfix) with ESMTPSA id 9706B4EE073A; Mon, 5 Jun 2023 11:19:06 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 060ee4a6-0382-11ee-8611-37d641c3527e Message-ID: <00f013e2-865f-4a7f-6dbb-e51ea6d05c2a@bugseng.com> Date: Mon, 5 Jun 2023 11:19:04 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.12) Gecko/20050929 Thunderbird/1.0.7 Fedora/1.0.7-1.1.fc4 Mnenhy/0.7.3.0 Subject: Re: Xen reliance on non-standard GCC features To: Jan Beulich , Roberto Bagnara Cc: Stefano Stabellini , "xen-devel@lists.xenproject.org" References: <1cd359e7-5245-a621-3be2-9323ba5b327b@bugseng.com> Content-Language: en-US From: Roberto Bagnara In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit On 05/06/23 09:35, Jan Beulich wrote: > On 05.06.2023 07:28, Roberto Bagnara wrote: >> Finally, Xen seems to rely on explicitly undefined behavior, namely >> C99 UB 58: "A structure or union is defined as containing no named >> members (6.7.2.1)." All instances but one occur via macro BUILD_BUG_ON_ZERO, >> the remaining instance concerns struct >> `cpu_policy::::::::'. >> Reliance on undefined behavior might be hard to justify. > > For starters just a comment here: I'm pretty sure this case was discussed > before, and that it was agreed that if need be we'd simply add _ as the > name there. Yet then - how did you notice this? Code inspection? I would > expect no analysis tool would spot it because it's used for gcc < 4.6 > only. And I doubt you run analysis tools in combination with this old a > gcc? It is detected by ECLAIR, but the analysis is based on GCC 12, and the detection of implementation-defined behaviors (including predefined macros) is completely automatic, so I don't think there is any configuration error. One of the instances arises from xen/arch/arm/dm.c:50.19-50.37: all the members of struct `dm_op(const struct dmop_args*)::' are unnamed (undefined for the C99 standard, ISO/IEC 9899:1999 Annex J.2 item 58: "A structure or union is defined as containing no named members (6.7.2.1)." [STD.anonstct]). Tool used is `/usr/bin/aarch64-linux-gnu-gcc-12' and, in turn: xen/include/xen/lib.h:54.12-54.17: expanded from macro `BUILD_BUG_ON_ZERO' xen/include/xen/compiler.h:126.3-126.77: expanded from macro `__must_be_array' xen/include/xen/lib.h:77.53-77.70: expanded from macro `ARRAY_SIZE' I apologize in advance if I have misunderstood something. Kind regards, Roberto From xen-devel-bounces@lists.xenproject.org Mon Jun 05 09:21:35 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 05 Jun 2023 09:21:35 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543584.848674 (Exim 4.92) (envelope-from ) id 1q66P3-0001Bz-4h; Mon, 05 Jun 2023 09:21:29 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543584.848674; Mon, 05 Jun 2023 09:21:29 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q66P3-0001Bs-15; Mon, 05 Jun 2023 09:21:29 +0000 Received: by outflank-mailman (input) for mailman id 543584; Mon, 05 Jun 2023 09:21:28 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q66P1-0001Bi-Uf for xen-devel@lists.xenproject.org; Mon, 05 Jun 2023 09:21:28 +0000 Received: from EUR01-VE1-obe.outbound.protection.outlook.com (mail-ve1eur01on060f.outbound.protection.outlook.com [2a01:111:f400:fe1f::60f]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 57f21ccb-0382-11ee-b232-6b7b168915f2; Mon, 05 Jun 2023 11:21:25 +0200 (CEST) Received: from AM5PR0601CA0032.eurprd06.prod.outlook.com (2603:10a6:203:68::18) by AS8PR08MB7371.eurprd08.prod.outlook.com (2603:10a6:20b:447::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Mon, 5 Jun 2023 09:21:22 +0000 Received: from AM7EUR03FT058.eop-EUR03.prod.protection.outlook.com (2603:10a6:203:68:cafe::c3) by AM5PR0601CA0032.outlook.office365.com (2603:10a6:203:68::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.31 via Frontend Transport; Mon, 5 Jun 2023 09:21:22 +0000 Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by AM7EUR03FT058.mail.protection.outlook.com (100.127.140.247) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.13 via Frontend Transport; Mon, 5 Jun 2023 09:21:21 +0000 Received: ("Tessian outbound 5bb4c51d5a1f:v136"); Mon, 05 Jun 2023 09:21:21 +0000 Received: from 016deb3e8a28.2 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 0F336F58-C42C-4868-B730-157AB0D45FD6.1; Mon, 05 Jun 2023 09:21:10 +0000 Received: from EUR05-AM6-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 016deb3e8a28.2 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Mon, 05 Jun 2023 09:21:10 +0000 Received: from AM6PR08MB3749.eurprd08.prod.outlook.com (2603:10a6:20b:8f::22) by AS2PR08MB8263.eurprd08.prod.outlook.com (2603:10a6:20b:552::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.32; Mon, 5 Jun 2023 09:21:08 +0000 Received: from AM6PR08MB3749.eurprd08.prod.outlook.com ([fe80::6457:d14f:abe0:be0e]) by AM6PR08MB3749.eurprd08.prod.outlook.com ([fe80::6457:d14f:abe0:be0e%4]) with mapi id 15.20.6455.030; Mon, 5 Jun 2023 09:21:08 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 57f21ccb-0382-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=w3mZamDBq2EinkxHRl5kFuPQoPN7Rn+XdV8haiv4SHk=; b=Vuosrif0uJhnBfKIzm15fBDcryg52o7Pbd4xU9OyubdOT6U+qa+cNikH6ufFbW7C9Yb69G2KtwYPjrl/UHxsy0r57NwPnEbW0GRnQTumwKAjg4QvV4OvVZn3jKZKub/7DlJ04JrT8iPdK+DfxPGxuOq2ZSoxv3WJb98/sCSG+uU= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C X-CheckRecipientChecked: true X-CR-MTA-CID: cd29677a477b4dc5 X-CR-MTA-TID: 64aa7808 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=T6J9qFIyd4YILV9RnOrgpB4K/sQ7yJdsjxiqJxC+sIkFAZTFFVLjKoFn3XUPQgAwss86lBhIRtgj1ned/mVoQvCOifELzBQ9NU4YQkgE1or2Qm1f6G3JaW+P8Makg/Qqkv5+OCWsnXliKrB9F+iDaRlr2dNMhTtbUEu0hj+EfNFZ/2WGOW7/+xWuFTEbT8yOPHWSmYu/uKY3DbIRv9rsc/FgVRCfuUrfsN/cp1xqwkCptgBhldY8m/oyfbnxvgCXh5W4qHD4eqc77sW2kWjnXtFIM8ZDEJvlfkmL9wc3eaP7Tnj1vJkj3lgOo3xQClaKzeh0xug1y1YVK6ipHrNPXA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=w3mZamDBq2EinkxHRl5kFuPQoPN7Rn+XdV8haiv4SHk=; b=j3ht5zInzzfC7gnVTQPEDP44RYBYrpVcjj0L0u4Qiwws+XWqiws1/vhGdhcJzrZhM1ZEXXt8yPQRE4VJco1brDpLAGqSvkuHD9VTGlraksFRn9TYWlsjcRB6O98X0r9tLYDyIxgSLPCzLuZehr5ZkugMxD/oJb3ccGPkcAGVTaXgdwCNst5qFq0Ny42eO+FvY2aTd9Z4NrKp5MVdmo0ktudPBwQ1kdybu0mGE1y8K27zaIGfWr6eJwNe4+m6DGrZZ3G0TGGtvY/Vplph0RHtat7yW7hu4MXZioNQVnQIokKRA9z+ELOX6ha6XFbexYO8/4xk0WHCakWnt50pbZrMnA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=w3mZamDBq2EinkxHRl5kFuPQoPN7Rn+XdV8haiv4SHk=; b=Vuosrif0uJhnBfKIzm15fBDcryg52o7Pbd4xU9OyubdOT6U+qa+cNikH6ufFbW7C9Yb69G2KtwYPjrl/UHxsy0r57NwPnEbW0GRnQTumwKAjg4QvV4OvVZn3jKZKub/7DlJ04JrT8iPdK+DfxPGxuOq2ZSoxv3WJb98/sCSG+uU= From: Luca Fancellu To: Xen-devel CC: Bertrand Marquis , Wei Chen , Andrew Cooper , George Dunlap , Jan Beulich , Julien Grall , Stefano Stabellini , Wei Liu Subject: Re: [PATCH v3 0/3] diff-report.py tool Thread-Topic: [PATCH v3 0/3] diff-report.py tool Thread-Index: AQHZjuO65byNYARZOk+RVM/vmas3Nq98AEqA Date: Mon, 5 Jun 2023 09:21:08 +0000 Message-ID: <26F337DF-8A67-47E0-B1F5-7EF7B562957C@arm.com> References: <20230525083401.3838462-1-luca.fancellu@arm.com> In-Reply-To: <20230525083401.3838462-1-luca.fancellu@arm.com> Accept-Language: en-GB, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-mailer: Apple Mail (2.3731.600.7) Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-traffictypediagnostic: AM6PR08MB3749:EE_|AS2PR08MB8263:EE_|AM7EUR03FT058:EE_|AS8PR08MB7371:EE_ X-MS-Office365-Filtering-Correlation-Id: 41553b05-24cd-4ddf-78d4-08db65a63a30 x-checkrecipientrouted: true nodisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: gBdpjkvYOnp12se82z8Lek7SNrfA+l3OMbTI4sFfKDbCCfAX7ALClbrUAzN4hNzBmAxkt92CINSzndGIspbuzPhKHNg5aWHKzDPHPyBPhU3cJdDAeDL+E6/Eblx6xiI5UuTL6O3MguZIe+zCB7x/AiP8qMbXjKQ/s5oP1Ss6NGkxLjt0H7/F+CJA0CWZ9AV+xVlJWufBWF5tMjUv/4SPdIWwUQZIl1GGG/iSigCkYksGxB314vUtm8TwLD357Kd/lYlD5XbInrP50hOU/lTAyo0YfLgcTIYFpV8Mx48f3u/ggIcIAbAWlIq9O6xC/hffXBB9M6I1zim5nTHICDNW/TUPERg9Sw64rNqCCrm4xYPtHQv8O9aP15dvMi/Kzj5Awz5j3yGA460Al6kFPiD5zJuHj6UQF/2RUaXCnqLb6IpBrCpM6k4icbtMiNkdyRAT3jw53E+RyB2de1jQHZpz2nfuiEzymBqbl6dnOP0e7Y9ynq98bvrsBCaL+VrkGpy8xNIV8lZjmLldoGq1PMDpYMxRnqhP+ipyK/7m08Nf0Zgm/y7/zGkIcLKte38EH5kUZvQ6cqOHQQHTR8trFHgXhSCRKTYKzMhmA3FmmwE+jJst0QRfKbz3EH54hs5g67Ms7VIUqOIgwKXUYMMIhEFBUA== X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM6PR08MB3749.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(366004)(346002)(39860400002)(136003)(376002)(396003)(451199021)(2616005)(26005)(6512007)(53546011)(6506007)(38100700002)(83380400001)(41300700001)(6486002)(186003)(966005)(71200400001)(66899021)(478600001)(54906003)(4326008)(122000001)(66446008)(66476007)(66556008)(64756008)(6916009)(91956017)(76116006)(316002)(66946007)(8936002)(8676002)(5660300002)(2906002)(86362001)(33656002)(38070700005)(36756003)(45980500001);DIR:OUT;SFP:1101; Content-Type: text/plain; charset="utf-8" Content-ID: Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS2PR08MB8263 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: AM7EUR03FT058.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: fb7842b1-9b98-4896-734e-08db65a6320f X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: PWzAO05SjlrOM2Smr59UvEs2104kTNT8O6b/cE42vvemaIc8Q0Bic+8w/dlTSdw6WNHwUDu65GMRhT7mtO3k+lOD0pwRVDWf7uZ2NaQ0vDFCUTXv7DA7ZeMUIsrQCngvX7xbCXBmGe+z4ecCM6oIUPstYWJ+SX01DMA2uFIn9c2UEg0wG44DXsK0bASk2m5KCRV2HN+/MRhl0QyInGTZOnwJwesh+a6cYPXUC5Q0q+h1sjUIjBsTkwbY2z7Mms6EO+M2Bfn9v4CeyHsnZ+h5iFKHLxi//bmnS2jCMso/uvsf3ekBxrZIejrnLefQAC1Asu+TF8MLFRuKqyTBPI8cADYX9B9UD32+XRu91YF2LOHCaS6buOlbr00k15icJWdqFdvl8bTyxhsG+YyXwmmInVuVDX7xIURxJKPGnX4yzFizDjcyAiSg127AKw9T+fHjPu4fOgjAv+xlY84KtHWgFWWsBuUaNiI5TbKtI/TQBvSA33hp8fEK81NaMwlumTzsaXgKb/ApVYFkenfMdGJHNbR/LM0zRIJdqPvhYjAP2kb2gkCFkqUfGimwkIw6TIPN3zt2R2vEuoGN3sKv4ZxiVDr6OUibVT3zD4Lu9RDck9t5bunfaxld0oTj5/qqy7mDeWGGy02H5agD3wvPBkL6bJgw8Oz5kk7jrB44izV3UuMOnD94ohJbFIiYn6FucFRuZR0wMqLw2JCOrLGaQqo24j4m+/iYaM5ZU4t9yHhqfhI= X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230028)(4636009)(376002)(396003)(136003)(346002)(39860400002)(451199021)(36840700001)(46966006)(40470700004)(47076005)(83380400001)(966005)(336012)(82740400003)(54906003)(40480700001)(33656002)(478600001)(8676002)(8936002)(41300700001)(316002)(70206006)(70586007)(356005)(81166007)(5660300002)(6916009)(86362001)(40460700003)(4326008)(6486002)(36756003)(2906002)(36860700001)(82310400005)(6512007)(186003)(6506007)(26005)(53546011)(66899021)(2616005);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Jun 2023 09:21:21.7507 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 41553b05-24cd-4ddf-78d4-08db65a63a30 X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: AM7EUR03FT058.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR08MB7371 DQoNCj4gT24gMjUgTWF5IDIwMjMsIGF0IDA5OjMzLCBMdWNhIEZhbmNlbGx1IDxMdWNhLkZhbmNl bGx1QGFybS5jb20+IHdyb3RlOg0KPiANCj4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCj4gVGhp cyBzZXJpZSBpcyBkZXBlbmRlbnQgb24gdGhpcyBwYXRjaCwgaW4gY2FzZSBjcHBjaGVjayByZXBv cnQgYXJlIGdlbmVyYXRlZA0KPiB1c2luZyB4ZW4tYW5hbHlzaXMucHkgdGhhdCBjYWxscyB0aGUg bWFrZWZpbGUgd2l0aCBpbi10cmVlIGJ1aWxkLCBiZWNhdXNlDQo+IHRoaXMgdG9vbCAoaW4gcGFy dGljdWxhciB0aGUgcGF0Y2hpbmcgZmVhdHVyZSkgbmVlZHMgdGhlIHBhdGggZnJvbSB0aGUNCj4g cmVwb3NpdG9yeSBpbnN0ZWFkIG9mIHRoZSBwYXRoIGZyb20gL3hlbi94ZW46DQo+IGh0dHBzOi8v cGF0Y2h3b3JrLmtlcm5lbC5vcmcvcHJvamVjdC94ZW4tZGV2ZWwvcGF0Y2gvMjAyMzA1MTkwOTMw MTkuMjEzMTg5Ni00LWx1Y2EuZmFuY2VsbHVAYXJtLmNvbS8NCj4gLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0NCj4gDQo+IE5vdyB0aGF0IHdlIGhhdmUgYSB0b29sICh4ZW4tYW5hbHlzaXMucHkpIHRo YXQgd3JhcHMgY3BwY2hlY2sgdG8gZ2VuZXJhdGVzDQo+IHJlcG9ydHMsIHdlIGhhdmUgYSBnZW5l cmljIG92ZXJ2aWV3IG9mIGhvdyBtYW55IHN0YXRpYyBhbmFseXNpcyBpc3N1ZXMgYW5kIG5vbg0K PiBjb21wbGlhbmNlcyB0byBNSVNSQSBDIHdlIGhhdmUgZm9yIGEgY2VydGFpbiByZXZpc2lvbiBv ZiB0aGUgY29kZWJhc2UuDQo+IA0KPiBUaGlzIGlzIGdyZWF0IGFuZCBldmVudHVhbGx5IHRoZSB3 b3JrIHRvIGJlIGRvbmUgc2hvdWxkIGJlIGp1c3QgaGF2aW5nIGxlc3MgYW5kDQo+IGxlc3MgZmlu ZGluZ3MgaW4gdGhlIHJlcG9ydCB1bnRpbCB3ZSByZWFjaCB6ZXJvLg0KPiANCj4gVGhpcyBpcyBq dXN0IGFuIGlkZWFsIHRyZW5kLCBiZWNhdXNlIGluIHByYWN0aWNlIHdlIG1pZ2h0IGhhdmUgaXNz dWVzIHRoYXQNCj4gY29tZXMgZnJvbSBleGlzdGluZyBjb2RlIChtYWNybyBmb3IgZXhhbXBsZSkg dGhhdCBhcmUgbm90IGdvaW5nIHRvIGJlIGZpeGVkDQo+IHNvb24gZm9yIGFueSByZWFzb24sIGJ1 dCB3ZSB3b3VsZCBsaWtlIHRvIGNoZWNrIGFuZCBzZWUgaG93IG1hbnkgaXNzdWVzIGFyZQ0KPiBp bnRyb2R1Y2VkIGJ5IHRoZSBjb21taXRzIGFkZGVkIChpZGVhbGx5IHplcm8sIGJ1dCBpZiBhbnkg aXMgYWRkZWQgYW5kIHRoZSBmYXVsdA0KPiByZXNpZGVzIG91dHNpZGUgdGhlIGNoYW5nZWQgY29k ZSwgbWFpbnRhaW5lcnMgbWlnaHQgZGVjaWRlIHRvIGluY2x1ZGUgaXQNCj4gYW55d2F5KS4NCj4g DQo+IFNvIHRoZSBpZGVhIGlzIHRvIGNoZWNrIHRoZSBkaWZmZXJlbmNlIGJldHdlZW4gdGhlIHJl cG9ydHMgb2YgdGhlIGNvZGViYXNlOiBvbmUNCj4gY2FsbGVkICJiYXNlbGluZSIgd2hpY2ggaXMg YmFzaWNhbGx5IHRoZSBjdXJyZW50IGNvZGViYXNlLCB0aGUgb3RoZXIgb25lIGNhbGxlZA0KPiAi bmV3IHJlcG9ydCIgdGhhdCBpcyB0aGUgY29kZWJhc2UgYWZ0ZXIgdGhlIGNoYW5nZXMuDQo+IFRv IGNoZWNrIGlmIGFueSBuZXcgZmluZGluZyBpcyBhZGRlZCwgd2UgbmVlZCB0byBoYXZlIGEgbG9v ayBvbiBldmVyeSBmaW5kaW5nIGluDQo+IHRoZSAibmV3IHJlcG9ydCIgdGhhdCBpcyBub3QgbGlz dGVkIGluIHRoZSAiYmFzZWxpbmUiLg0KPiANCj4gSXQgc2VlbXMgdmVyeSBzaW1wbGUsIGJ1dCB3 aGF0IGNhbiBoYXBwZW4gdG8gZXhpc3RpbmcgZmluZGluZ3MgaW4gdGhlIGNvZGUgYWZ0ZXINCj4g YSBjb21taXQgaXMgYXBwbGllZD8NCj4gQmFzaWNhbGx5IGV4aXN0aW5nIGZpbmRpbmdzIGNhbiBi ZSBzaGlmdGVkIGluIHBvc2l0aW9uIGR1ZSB0byBjaGFuZ2VzIHRvDQo+IHVucmVsYXRlZCBsaW5l cywgb3IgdGhleSBjYW4gYmUgYWxzbyBkZWxldGVkIG9yIGZpeGVkIGZvciBjaGFuZ2VzIGludm9s dmluZyB0aGUNCj4gZmluZGluZ3MgbGluZSAoTWljaGFsIHdhcyB0aGUgZmlyc3Qgb25lIHRvIHBv aW50IHRoYXQgb3V0KS4NCj4gDQo+IFNvIGNvbXBhcmluZyB0aGUgdHdvIHJlcG9ydCBub3cgc2Vl bXMgcXVpdGUgZGlmZmljdWx0LCBiZWNhdXNlIGlmIHdlIGNvbXBhcmUNCj4gdGhlbSB3ZSB3aWxs IGhhdmUgYWxsIHRoZSBuZXcgZmluZGluZ3MgcGx1cyBhbGwgdGhlIGZpbmRpbmdzIHRoYXQgY2hh bmdlZA0KPiBwb3NpdGlvbiBkdWUgdG8gdGhlIGNoYW5nZXMgYXBwbGllZC4NCj4gDQo+IFRvIG92 ZXJjb21lIHRoaXMsIHRoZSBkaWZmLXRvb2wucHkgaXMgY3JlYXRlZCBhbmQgaXQgYWxsb3dzIHRv ICJwYXRjaCIgdGhlDQo+ICJiYXNlbGluZSIgcmVwb3J0LCBsb29raW5nIGludG8gdGhlIGNoYW5n ZXMgYXBwbGllZCB0byB0aGUgYmFzZWxpbmUgY29kZWJhc2UsDQo+IGRlc2NyaWJlZCBieSBnaXQg ZGlmZi4NCj4gDQo+IFRoaXMgc2VyaWUgaXMgb3JnYW5pc2VkIGluIHR3byBwYXRjaCwgSSd2ZSB0 cmllZCB0byBzcGxpdCB0aGUgYW1vdW50IG9mIGNvZGUgYW5kDQo+IHRvIGxlYXZlIGEgbWVhbmlu Zywgc28gaW4gdGhlIGZpcnN0IHBhdGNoIHlvdSBoYXZlIGV2ZXJ5dGhpbmcgeW91IG5lZWQgdG8N Cj4gaW1wb3J0IGNwcGNoZWNrIHJlcG9ydHMgYW5kIGRvIGEgInJhdyIgZGlmZiBiZXR3ZWVuIHJl cG9ydHMsIHRoaXMgZ2l2ZXMgeW91DQo+IGFuIGhpbnQgYWJvdXQgbmV3IGZpbmRpbmdzICsgb2xk IGZpbmRpbmdzIHRoYXQgaGFzIGNoYW5nZWQgcGxhY2UuDQo+IA0KPiBUaGUgc2Vjb25kIHBhdGNo IGlzIGFkZGluZyB0aGUgInBhdGNoaW5nIiBzeXN0ZW0sIGhhdmluZyBhIGNsYXNzIHRoYXQgcGFy c2VzDQo+IHRoZSBnaXQgZGlmZiBvdXRwdXQgYW5kIGxhdGVyICJwYXRjaGluZyIgdGhlIGJhc2Vs aW5lIGJlZm9yZSBkb2luZyB0aGUNCj4gY29tcGFyaXNvbi4gVGhpcyBsYXN0IG9wdGlvbiBpcyBh Y3RpdmF0ZWQgb25seSB3aGVuIHBhc3NpbmcgdGhlIGdpdCBkaWZmIGNoYW5nZXMNCj4gdG8gdGhl IHRvb2wsIGJ1dCBldmVyeXRoaW5nIGlzIGRlc2NyaWJlZCAoSSBob3BlKSBpbiB0aGUgaGVscC4N Cj4gDQo+IFNvbWUgY29uc2lkZXJhdGlvbiBuZWVkcyB0byBiZSBtYWRlLCB0aGlzIHRvb2wgY2Fu IHRyYW5zbGF0ZSBpbiBjb29yZGluYXRlcw0KPiAoZmlsZSwgbGluZSkgdGhlIGZpbmRpbmdzIGZy b20gdGhlICJiYXNlbGluZSIgdG8gdGhlICJuZXcgcmVwb3J0IiB1c2luZyB0aGUgZ2l0DQo+IGRp ZmYgb3V0cHV0IGFzLCBsZXQgbWUgc2F5LCBhIHRyYW5zbGF0aW9uIG1hdHJpeC4NCj4gVGhpcyBk b2Vzbid0IG1lYW4gaXQgY2FuIHVuZGVyc3RhbmQgdGhlIG1lYW5pbmcgb2YgdGhlIGZpbmRpbmdz IGFuZCByZWNvZ25pc2UNCj4gdGhlbSBpbiB0aGUgbmV3IGNvZGViYXNlLCBzbyBmb3IgZXhhbXBs ZSwgYSBmaW5kaW5nIHJlbGF0ZWQgdG8gYSBsaW5lIHRoYXQgaXMNCj4gbW92ZWQgdG8gYW5vdGhl ciBwYXJ0IG9mIHRoZSBmaWxlIHdvbid0IGJlIHJlY29nbmlzZWQgYXMgIm9sZCBmaW5kaW5nIiBh bmQgd2lsbA0KPiBiZSBqdXN0IHJlbW92ZWQgZnJvbSB0aGUgImJhc2VsaW5lIHBhdGNoZWQgcmVw b3J0IiwgaG93ZXZlciB3ZSB3aWxsIGZpbmQgaXQNCj4gaW4gdGhlIG5ldyByZXBvcnQgdW5sZXNz IGl0IGNvbnRhaW5zIGEgZml4IGZvciB0aGUgcmVwb3J0ZWQgaXNzdWUuDQo+IA0KPiBUaGlzIG1l YW5zIHRoYXQgdGhlIHRvb2wgaXMgbm90IHJlYWxseSBzdWl0ZWQgdG8gYmUgYSBnYXRla2VlcGVy IGZvciB0aGUgbWVyZ2UNCj4gYWN0aW9uLCBpdCBpcyBtb3JlIHN1aXRhYmxlIHRvIGhlbHAgdGhl IG1haW50YWluZXIgdG8gdW5kZXJzdGFuZCB3aGVuIGEgY2hhbmdlDQo+IGlzIGludHJvZHVjaW5n IG5ldyBpc3N1ZXMgd2l0aG91dCBoYXZpbmcgdG8gY2hlY2sgYW5kIGNvbXBhcmUgbWFudWFsbHkg dHdvDQo+IHJlcG9ydHMgb2YgKG5vd2FkYXlzKSBodW5kcmVkcyBvZiBmaW5kaW5nLg0KPiBFdmVu dHVhbGx5IHdlIGNvdWxkIHJ1biBpdCBpbiB0aGUgQ0kgYW5kIG1ha2UgdGhlIENJIHJlcGx5IHRv IHRoZSBwYXRjaHdvcmsNCj4gdGhyZWFkIHdpdGggaXRzIG91dHB1dCENCj4gDQo+IFRoZSB0b29s IGhhcyBhbHNvIGEgZGVidWcgYXJndW1lbnQgdGhhdCB3aGVuIGFwcGxpZWQsIGdlbmVyYXRlcyBl eHRyYSBmaWxlcw0KPiB0aGF0IGNhbiBiZSBjaGVja2VkIGFnYWluc3QgdGhlIG9yaWdpbmFsIGZp bGVzLCBmb3IgZXhhbXBsZSB0aGUgcmVwb3J0cyBhcmUNCj4gaW1wb3J0ZWQgaW4gdGhlIHRvb2ws IGFuZCBhZnRlcndhcmRzIHRoZSBkZWJ1ZyBjb2RlIHdpbGwgZ2VuZXJhdGUgdGhlbSBiYWNrIGZy b20NCj4gdGhlIGltcG9ydGVkIGRhdGEgYW5kIHRoZXkgc2hvdWxkIGJlIHRoZSBzYW1lIChpZiBl dmVyeXRoaW5nIHdvcmtzKS4NCj4gQW5vdGhlciBkZWJ1ZyBjaGVjayBpcyB0byBleHBvcnQgdGhl IHJlcHJlc2VudGF0aW9uIG9mIHRoZSBwYXJzZWQgZ2l0IGRpZmYNCj4gb3V0cHV0LCBzbyB0aGF0 IHRoZSBkZXZlbG9wZXIgY2FuIGNoZWNrIGhvdyBhbmQgaWYgdGhlIHBhcnNlciBpbnRlcnByZXRl ZA0KPiBjb3JyZWN0bHkgdGhlIGRhdGEuDQo+IA0KPiBGdXR1cmUgd29ya3MgZm9yIHRoaXMgdG9v bCBtaWdodCBiZSB0byBwYXJzZSBhbHNvIENvdmVyaXR5IHJlcG9ydHMgYW5kDQo+IGV2ZW50dWFs bHkgKGRvbid0IGtub3cgaWYgaXQgaXMgcG9zc2libGUpIGFsc28gZWNsYWlyIHRleHQgcmVwb3J0 Lg0KPiANCj4gTHVjYSBGYW5jZWxsdSAoMyk6DQo+ICB4ZW4vbWlzcmE6IGFkZCBkaWZmLXJlcG9y dC5weSB0b29sDQo+ICB4ZW4vbWlzcmE6IGRpZmYtcmVwb3J0LnB5OiBhZGQgcmVwb3J0IHBhdGNo aW5nIGZlYXR1cmUNCj4gIG1haW50YWluZXJzOiBBZGQgWGVuIE1JU1JBIEFuYWx5c2lzIFRvb2xz IHNlY3Rpb24NCj4gDQo+IE1BSU5UQUlORVJTICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICB8ICAxMCArDQo+IHhlbi9zY3JpcHRzL2RpZmYtcmVwb3J0LnB5ICAgICAgICAgICAgICAg ICAgICB8IDEzMCArKysrKysrKysrDQo+IC4uLi94ZW5fYW5hbHlzaXMvZGlmZl90b29sL19faW5p dF9fLnB5ICAgICAgICB8ICAgMA0KPiAuLi4veGVuX2FuYWx5c2lzL2RpZmZfdG9vbC9jcHBjaGVj a19yZXBvcnQucHkgfCAgNDQgKysrKw0KPiB4ZW4vc2NyaXB0cy94ZW5fYW5hbHlzaXMvZGlmZl90 b29sL2RlYnVnLnB5ICAgfCAgNjEgKysrKysNCj4geGVuL3NjcmlwdHMveGVuX2FuYWx5c2lzL2Rp ZmZfdG9vbC9yZXBvcnQucHkgIHwgMTg3ICsrKysrKysrKysrKysrDQo+IC4uLi9kaWZmX3Rvb2wv dW5pZmllZF9mb3JtYXRfcGFyc2VyLnB5ICAgICAgICB8IDIzMiArKysrKysrKysrKysrKysrKysN Cj4gNyBmaWxlcyBjaGFuZ2VkLCA2NjQgaW5zZXJ0aW9ucygrKQ0KPiBjcmVhdGUgbW9kZSAxMDA3 NTUgeGVuL3NjcmlwdHMvZGlmZi1yZXBvcnQucHkNCj4gY3JlYXRlIG1vZGUgMTAwNjQ0IHhlbi9z Y3JpcHRzL3hlbl9hbmFseXNpcy9kaWZmX3Rvb2wvX19pbml0X18ucHkNCj4gY3JlYXRlIG1vZGUg MTAwNjQ0IHhlbi9zY3JpcHRzL3hlbl9hbmFseXNpcy9kaWZmX3Rvb2wvY3BwY2hlY2tfcmVwb3J0 LnB5DQo+IGNyZWF0ZSBtb2RlIDEwMDY0NCB4ZW4vc2NyaXB0cy94ZW5fYW5hbHlzaXMvZGlmZl90 b29sL2RlYnVnLnB5DQo+IGNyZWF0ZSBtb2RlIDEwMDY0NCB4ZW4vc2NyaXB0cy94ZW5fYW5hbHlz aXMvZGlmZl90b29sL3JlcG9ydC5weQ0KPiBjcmVhdGUgbW9kZSAxMDA2NDQgeGVuL3NjcmlwdHMv eGVuX2FuYWx5c2lzL2RpZmZfdG9vbC91bmlmaWVkX2Zvcm1hdF9wYXJzZXIucHkNCj4gDQo+IC0t IA0KPiAyLjM0LjENCj4gDQo+IA0KDQpIaSBBbGwsDQoNCklzIGl0IHBvc3NpYmxlIHRvIGNvbW1p dCB0aGlzIHNlcmllPyBJIHRoaW5rIGl0IGhhcyBULWJ5IGFuZCBBLWJ5IFN0ZWZhbm8gZm9yIGFs bCB0aGUgcGF0Y2hlcw0KYW5kIEkgZGlkbuKAmXQgcmVjZWl2ZSBzbyBmYXIgY29tbWVudHMgYWdh aW5zdCBpdA0KDQpUaGFuayB5b3UsIHBsZWFzZSByZWFkIHRoaXMgbWFpbCBhcyBhIGdlbnRsZSBw aW5nIDopDQoNCg0K From xen-devel-bounces@lists.xenproject.org Mon Jun 05 09:29:02 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 05 Jun 2023 09:29:02 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543590.848684 (Exim 4.92) (envelope-from ) id 1q66WE-0001u2-02; Mon, 05 Jun 2023 09:28:54 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543590.848684; Mon, 05 Jun 2023 09:28:53 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q66WD-0001tv-TP; Mon, 05 Jun 2023 09:28:53 +0000 Received: by outflank-mailman (input) for mailman id 543590; Mon, 05 Jun 2023 09:28:52 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q66WC-0001tp-CN for xen-devel@lists.xenproject.org; Mon, 05 Jun 2023 09:28:52 +0000 Received: from EUR04-VI1-obe.outbound.protection.outlook.com (mail-vi1eur04on062f.outbound.protection.outlook.com [2a01:111:f400:fe0e::62f]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 6118eea8-0383-11ee-8611-37d641c3527e; Mon, 05 Jun 2023 11:28:50 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by AM0PR04MB7076.eurprd04.prod.outlook.com (2603:10a6:208:19a::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Mon, 5 Jun 2023 09:28:47 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.030; Mon, 5 Jun 2023 09:28:46 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 6118eea8-0383-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=aS2/7WPYOM+bODYwE+u8AsHnWmYES3p+Jz6aUQw7xueQcuf1MfH4gO4tgr1O1d6bB6eGWNmGqZVjWmtgdTCcN/uFahQRamV3QPhSKx8LkH4hRWp0j/oULBQucGs+DVWTxZYQEkQx6eQYcBnPJdY78clNEG74cs5XEMjeBcOHxBD3BwOlFdMHOD1IACzxlHHcbGLJoX3x3xDQat6JK2I1r5WCYnFvmDio1vp9/RtGqGvA9x4uIpCgZebu1YsjUOYQql4lX8rXYlV84RmhG9Xvp1PHKXhP5pA9IsGBXJvaR+Byd30yZdUiuU0/69wXU3bmov3oa/RGlND90B929ePE0Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=zK49AS9TtoLuMjRX87gEASPRRJauTEAmF1OzHPnLP38=; b=TKKEBYWf/nJrgGGrzrbYlm7ah0T394IgWGP8LSgegUUDjrfdfu/m1J6NhPtfU4MedPYPdPgH462i6r+WUEXOK8/E9G9Rn0Wi+qlooGIiW1L4n1cnFjaJgBuvw2aLmTzAZASth9ZNT7RKSw9Xuj2RhBuJmea3rESdD8/Zql1UGWI/vLewFhNd9ZJpxx4iw/6PYLhmIgk3Pr7AQWL69y/9FWWmbQkDeQ/i/m6AyRkqXmUY1SQo5xux1OB+2mB3uJu+xd97CgALSqJOj6hxApEW+aRWjjG2KWmApLVk4AEH72IGJNyJRXgK3N5Zwcvcg9YhgsO6/IO+XjTWzWb480HRdQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=zK49AS9TtoLuMjRX87gEASPRRJauTEAmF1OzHPnLP38=; b=TA3cSkb8Rpw9FaDdPkz8HJ0vOE4ZRwAU0OZo84ktkNCHP6Vb3wL18Uq18hOkuy6zKAWi7sv7oxR0apJN/FWLUzf4Qgb0sYAp4upymuo8neniKZ8Ai7K1S3eChS8rZA11DmlvXP26s+eC2tP/5qBmKANq1nCYxkRXHX6+1uvUZUwbg+AylSZDpT4c/b0rRQXvHlPb9Mxr4oE0iSCOOhlsw4cp87LKhfd1ZjkPy8R5fjDGpR6TyHvYGQP1fEEgItK7nMk70F5ayEpzfMJaV8oShcOen18Z3pvOWhKmjVFyY4bx8CecceYpqCLchZuFDHQuG3Nj2SmLFCEHESZP1JtgKA== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <8314e0fc-4ead-40fa-ef7b-4da8ce0655b4@suse.com> Date: Mon, 5 Jun 2023 11:28:44 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.11.2 Subject: Re: Xen reliance on non-standard GCC features Content-Language: en-US To: Roberto Bagnara Cc: Stefano Stabellini , "xen-devel@lists.xenproject.org" References: <1cd359e7-5245-a621-3be2-9323ba5b327b@bugseng.com> From: Jan Beulich In-Reply-To: <1cd359e7-5245-a621-3be2-9323ba5b327b@bugseng.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR3P281CA0083.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:1f::21) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|AM0PR04MB7076:EE_ X-MS-Office365-Filtering-Correlation-Id: 78831ce8-2601-4287-e8cc-08db65a742f9 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: G7IzfzJOo8OljnBd79cVtB3U7YsoaRaSok2P+H7tJrK56Wpp0G82tiFvw17stYTomymcX3dnCcdTmKpL0ih7lmxPwbsauZjaqKGno6LAdED8xlEU1xszkIhyRKunV6tdqO+guxQeHEAQXAKMk9OyMT9nZU/8ljjZSLDpKnJSohWY9x7Qciig+tRueZL8EF0OQVPfq5o/WoGL0/McWuS9NNsb0+OkzPJ2RrhuE4f6uYMI8yEhvhtkBuOsjffm2Twg7V0esGHJihc3+vLTcXRIlYf+m9byKEsbYRZfZcEFq/soMG1ClEFstJoc1GiCAIPbfu2FlKZ+Mg0Vf3+ZA6y1kJEWVmgKYvaNs0PhxniDTeXVlUZ5/UAz+wV3G5T5Br6WUr5JeHPHd/WgehNHooKqJfVRVlu1YXE0sliepkemf9nNQnBISWMS9F9N8j1aIF17Q5tFkbq20GtfXR5SfITq0HOaWzHU0pcNpf+a6xRj5K0YZQLJ4qFXM7Ye0hPnKgZ+JAGtW3l/311BLfsaxqnzYXkPdTXuufoaxUFQphu2/4o2DWWBjP7hj1sYBHanPy0bjkK9MS3XTj2nKcz+hLsMiAoKXECn0MN0TuFP4n70FB/sbPahD/nqdgkdasy0okzNPo2bvi3LcezTRJwxCobfEg== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(346002)(376002)(396003)(366004)(136003)(39860400002)(451199021)(36756003)(54906003)(2906002)(31696002)(478600001)(86362001)(38100700002)(41300700001)(8936002)(8676002)(5660300002)(316002)(4326008)(6916009)(66556008)(66476007)(66946007)(31686004)(83380400001)(6506007)(6512007)(53546011)(2616005)(26005)(186003)(6486002)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?TnA5Nk15MnQyMVdCY1ZSbEJaN1IyVzd6YnAzd0F3R3ROcWhQS2VaWnplbTBr?= =?utf-8?B?aWQvbmFUbENKTzZLVzdZaUhob1R0NSs1RWF6dm1hNEFDeGx3NjVuYlJvYU5a?= =?utf-8?B?VGppeklkSUhxcU1EMEpXQk5IWmpIenNzeVk0dEEwT092bk5DdE01c1BFV3hz?= =?utf-8?B?d0FGQ1FkSFh5SVBDU2FBeEpMdUJpeGNiSThWZFdvZks4VmFadit5c09Ca010?= =?utf-8?B?bHpvS2Yyb3JJNGFJUTdxSS9OWEZJOFpvd3ZjTkpoWmM3bnd5U1BQdnhJYXRM?= =?utf-8?B?WXZwU1lxR0VRQVc3dHNrU01OUU9sSGlOR1NNYXVFTG0zQnNtazFxRGJlS0g0?= =?utf-8?B?SEpURWdiQmZSL0xXajhzU3E2dTdBRDAxMmtMT2ZKKzZnQzlrMmRJYW15WFB5?= =?utf-8?B?MkpHMFZhTUdBOWJGS1BCdzhOKzVybWpjUG9oZ01wRW9yRTk4Mkgxc3VsK2Fu?= =?utf-8?B?dEFhVkp5aVd0VnJQK3M4ampWditsZUlVSWRiTjM3dEg0NjQ2NXJWUWZnVHA2?= =?utf-8?B?eDFKcHFMejRWVFFsUGtpbUVEelgrMjhJQkVWUUxTWkladEw2RTJmLy8vZzVn?= =?utf-8?B?ZEZCaHhwVFlPY3BrQStQekxGSUVwdVNLeVQwYjExUVhlQUFFQjdpRVcwQlhM?= =?utf-8?B?bFZvNHVaWjIya2pxcVhRSDFmWktPQzRRMEhEMHpKWmpkWUd1bTc2ZWxDK1kv?= =?utf-8?B?czJzdE5lK20wMXN0TVpCVjl5dnJkbXE4SnZBK28vOWVTWGszNzFDbnBRTlFh?= =?utf-8?B?RzhKSERPN1FhaW8zeWJ2Tk1mNVkrWE1Nc1ZDa21adHVia0Z4NlV5TGR3S1dm?= =?utf-8?B?M21EVCsxUDVKbjRPWEZmL0g5VHpxUWZJMmplZjY1MGl3L0dha05hSmFzcC9s?= =?utf-8?B?cWtXUTRCQStDckpTdms5MS9Ua1YxYnVWcDZndkNXR0JrSUFMdjhKMmtTZzky?= =?utf-8?B?a2c5RmRxT0xrNDlGZU5vQmZrS21GZUdpdG9mRFNaSGM1dXRjUkdiNDNlcWZw?= =?utf-8?B?RFZDV0RyR1VlSFp2b2tNSXRsdVJKb2crMWVMQ1ZTNEh1VTdpSVRTQ0x4WVdC?= =?utf-8?B?Vjk4UTJxc2pES2IyMUgzWXQzdmpOeTM4M3MrQzhiSVJvNE1sMTYrRXRqd2tQ?= =?utf-8?B?VVdrY3RkQVpkNHpJcVpySk9HUzBOendTdENNU2xiVVY0NlRDRHI0SExmOVdS?= =?utf-8?B?eUlKaWNNMGdXZm9PQzRpU2tURUR0bHVObndFQXFzbnhlczJNUkZlMzNtYnF1?= =?utf-8?B?V24xcVFLejNPeFV4NktBOEZka3Q4L3gydVlLQnlrek8yODdHYms2M29IS1V4?= =?utf-8?B?cVlaQm5uVzZsZTVzbnUzWDJ0OVkyVy9pekRDRUJNYlJOcVhMTmdXcUpMQjM1?= =?utf-8?B?NmVsQ0hWZDJCYnQ3NjhsMWRFZ2N0dFNGN3lnVlBTbkMvMDhSeGtCT0dSM3RW?= =?utf-8?B?dkhLUkNLcHMwZGRVZkhsUDM2WkJiZWdYbjNMV2JkMWJWKzMzYVE4elRZVXlB?= =?utf-8?B?Ry8vKzV2aVhydHJIQ2xtZ28wUHJ4Nzl4VzBJaDRFWE5kd0diTkhTSzBlRmxL?= =?utf-8?B?Skh0OGRDUHBHYll0RnNPRHBETEFkd0ZERFdSWVpXMHdsZDZyc0JybnlZZGN6?= =?utf-8?B?d3RXeUc0MEZRWGVpOXhuNFU1TTJ3cGwvMVg3QXBGUE9VanlrRk1pU1kvYmt4?= =?utf-8?B?WGFIQ1VVUkIvL0ZuZDZteVozVHlqMVdQdEI1NGlJcjVDNm9ZRDd2WG1ndFlv?= =?utf-8?B?TC9abDJuQ1J3K2w3NHNxdy9ZLzJ5NEozZVE4YVpxWDNNbW1Zd0Z3MjJZQXBY?= =?utf-8?B?OVR2YmYrRE82cVJ6NmVhR1AyenBpTER4MkRMSTdhcm9KUlF6Zy90SE4yK0ti?= =?utf-8?B?MytOTHY0aW5zNXNsWXNrYTVyckd3L2NDdFZKalNEbEZtZFpKbFNsRitiZzJI?= =?utf-8?B?OFg4WkN6UjdvMHhrejI1SnRDU3NlbjVrV3NXSjdvVlkzRXV3czZzM0J5RnUr?= =?utf-8?B?YjFHU3B6azNnclZyWTBGK0ZpMUh2cE9GanRUVEhJNG1WaHhsRndoa2VYbk9k?= =?utf-8?B?RWFxNm4wK0F3VEZkR1pLQldYUVZuRW9GbGRpV0tTQjFzMUhwTmdSM3p3S2lL?= =?utf-8?Q?ygp5IYbAB/T2PSyZLQw8EkL61?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 78831ce8-2601-4287-e8cc-08db65a742f9 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Jun 2023 09:28:46.3822 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: YNJ/oG/3dwseCzG4nYi8BQehsQ6tBZ+gvX4OV7G3i+l9YkrTKof2GRXm5gHhiM3MNV70M66+kYD8bBW51sP0Ew== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0PR04MB7076 On 05.06.2023 07:28, Roberto Bagnara wrote: > It appears Xen uses lots of GCC features that are outside the C99 > standard. Some of them are documented GNU extensions to the language. > Some of them seem not to be documented, so they do not qualify > as language extensions (at least, not as far as the spirit and letter > of functional-safety standards are concerned). > > Language extensions come with two problems: > > a) They limit portability. Sure, it was (I think) always clear that by using extensions we limit what other compilers Xen may be possible to be built with. > b) They significantly increase the cost of compiler qualification > (commercial C compiler validation suites do not cover the extensions, > and the cost of the extra validation effort will have to be born > by whomever wants to use Xen for safety-related development). > > Said that, maybe the use of certain extensions is intentional, but for > others it may be unintentional. The purpose of this message is to > distinguish the ones from the others. In the following, when I mention > the C99 standard, I refer to compiler uses with -std=c99 or -std=gnu99. > > Let us start from the (as far as I can tell) undocumented extensions: I'd like to mention that many "smaller" extensions are either not mentioned anywhere, or are part of "bigger" extension doc. See e.g. near the end of 6.20 "Arrays of Variable Length" (gcc 13.1.0 doc), explaining parameter forward declarations as "another GNU extension". (Sadly that pattern doesn't have further matches when searching for it.) > U1) Use of _Static_assert in C99 mode. > > U2) Empty initialization lists, both in C99 mode (ARM64 and X86_64) > and C18 mode (only X86_64). > > U3) Returning void expressions. As per above, tiny extensions like these are, I think, unlikely to be mentioned anywhere explicitly (or more than in passing). For the last of the three it may further be that it pre-dates when gcc started to properly document extensions. Oh, actually - U3 is documented along with -Wreturn-type. Uses are generally intentional afaik, but eliminating cases of U2 and U3 would likely be possible with just slight overall impact. As to U2, it's not clear why you distinguish C99 and C18 mode. Throughout this summary of yours it would likely have been helpful if an example was provided for the behavior your describing, when the wording doesn't make it crystal clear (e.g. no example needed for U1 and U3 above). As to U1, I'm afraid this statement very early in gcc's section documenting C extensions simply hasn't been properly updated for newer versions of the standard: "Some features that are in ISO C99 but not C90 or C++ are also, as extensions, accepted by GCC in C90 mode and in C++." A somewhat similar statement in the middle of 2.1 "C Language" is slightly better, thus covering at least the specific case of _Static_assert. > U4) Static functions or variables used in inline functions with external > linkage. There's not a lot of "extern inline" that we've accumulated so far, I think. The only ones I'm aware of are sort() and bsearch(), and there the use is precisely for allowing the compiler to optimize away function calls. The documentation of this functionality is that of the gnu_inline function attribute, afaict. That would be 6.33.1 "Common Function Attributes" in 13.1.0 doc. > U5) Enumerator values outside the range of `int'. > > U6) Empty declarations. For these two I'm surprised you say we have any. The former would need inspecting, but it's hard to see why the latter shouldn't simply allow purging. Provided I understand correctly why you mean by "empty", not the least because ... > U7) Empty enum definitions. ... here I wonder whether instead you mean forward declaration of enums (i.e. what the standard allows for structures and unions only). > U8) Conversion between incompatible pointer types. Do we have any uses that aren't, by using casts, documenting that the conversions are deliberate? Otherwise I would expect the compiler to warn, and hence the build to fail due to -Werror. Then again I'm sure we have ample uses of casts left which are actually bogus. > U9) Conversion between function pointers and object pointers. Uses I'm readily aware of are deliberate. Plus isn't this shorthand for going through uintptr_t intermediately only anyway? > U10) \m escape sequence. > Is this an undocumented GCC extension or just a typo? Where did you find such? The only instances I can spot are in assembler-only constructs, where 'm' really starts the name of an assembler macro argument. Iirc when the compiler pre-processes assembly files (identified by being named *.S or use of the option "-x assembler"), it applies relaxed handling of \ found inside double quotes. Then again I find it unlikely that you would have meant those, as they're inside #ifdef __ASSEMBLY__ (or alike) guarded sections, and hence shouldn't pop out when analysis tools are run on the tree. > Here is a list of extensions that are documented in the GCC manual: I suppose that this list wasn't meant to be complete? The most prominent example is probably asm(). Jan From xen-devel-bounces@lists.xenproject.org Mon Jun 05 09:41:24 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 05 Jun 2023 09:41:24 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543595.848694 (Exim 4.92) (envelope-from ) id 1q66i4-0004Fk-42; Mon, 05 Jun 2023 09:41:08 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543595.848694; Mon, 05 Jun 2023 09:41:08 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q66i4-0004Fd-00; Mon, 05 Jun 2023 09:41:08 +0000 Received: by outflank-mailman (input) for mailman id 543595; Mon, 05 Jun 2023 09:41:06 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q66i2-0004FX-Sh for xen-devel@lists.xenproject.org; Mon, 05 Jun 2023 09:41:06 +0000 Received: from EUR05-AM6-obe.outbound.protection.outlook.com (mail-am6eur05on2060a.outbound.protection.outlook.com [2a01:111:f400:7e1b::60a]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 15c1121b-0385-11ee-8611-37d641c3527e; Mon, 05 Jun 2023 11:41:04 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by AM0PR04MB7010.eurprd04.prod.outlook.com (2603:10a6:208:199::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.27; Mon, 5 Jun 2023 09:40:59 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.030; Mon, 5 Jun 2023 09:40:59 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 15c1121b-0385-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=UcTq2cD6Umt5gQG5XvtSFB2JeeWWUGpC3MywCsT7nSzZQFK4qxyibm6ZIuZ9X9P8yTagEvMika/qyQ6XwnzHRY04yJrtjALYjtLBKi2CdfwRdTtUplmIN40gDKzq+BHeJGGf4cnwlYVZ0PkQCksHmyuuemfEhr/n3B4fL85e5crS+jkSONiRE3pniyaHz5w0UToA0DE/RSN3quoLfrTM46ajGXxeKBpQcQCFvP+8XxKS/qUwUUQp5Dw/ra5bTbP2K5rk4lTyFMRdv8KPNP1K+F6Qt26RZ2o+UjHDU3QxhvyS6O7Jqd+uunKHoiuKyhoO4mQvBrwwKiAo/V8hgzC1DA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=qu/Q6PWnmkcVSQtna83LsHMYzG+EOd7kszTotD0akJY=; b=FYrsA836lwTBs07ZXlPNbCq7JbjY4Tdh2NSVMd8dYbVVqrv8J0xGupS1a6Y2E20zbKqF7yNIlJ/PtwNQ1lkgFNBhI8Hbo7BEs3bcgWx87nOlgJlJyQpMVRVOy+vlcj377P3ul3/c+EosAQTJhcfPywNBgejbtDOIvNu+NhU6dU94R3yniyNzzRMrxR/ep+fFfXQhVu2Dzn4oizmPJAz/5mA1C1INPxoruzNsiigArii3oROwnqj5t8Y7rI1vhxwvZVwnJSuWjHzPUv21EKZ6/KAoWkyROdACI/3lC6im/pGGzSEwasZhoXg8GK8I+TvEOzUlqDVLic9gwDHvRo7Lzg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=qu/Q6PWnmkcVSQtna83LsHMYzG+EOd7kszTotD0akJY=; b=wnmuZ4iim/JfP5d7ploRstUoNEZ3OZpZrQiL58fLihACrEMSK/b4j55eBhQzVxOh4uWsKrtmfamppcHyd1q9e5sLlBdA+mQOGiVqwSZYmS2HtjMAkCFkwh5nPr5A5R6Y460X0lC3c7d7Ocn++BX8SkZXBxhuRn6YAju5UfibiDTOeEFo/SzCgq4DXwGMkf0SFgRRL5fMlFAZAjT44YTzqs+GX0KRmgQqTTKnxftdcGN3DqDOgvJx/5xK3QdGxNNOGRhJLPho/T18GTg7xCVtm2roW9WZ0GDp8qcRJMxCBiBm+bmFAuglmwExJqOLTu94loLbHzZTRhngGVdRLvvO8w== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: Date: Mon, 5 Jun 2023 11:40:58 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.11.2 Subject: Re: Xen reliance on non-standard GCC features Content-Language: en-US To: Roberto Bagnara Cc: Stefano Stabellini , "xen-devel@lists.xenproject.org" References: <1cd359e7-5245-a621-3be2-9323ba5b327b@bugseng.com> <00f013e2-865f-4a7f-6dbb-e51ea6d05c2a@bugseng.com> From: Jan Beulich In-Reply-To: <00f013e2-865f-4a7f-6dbb-e51ea6d05c2a@bugseng.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR0P281CA0055.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:49::15) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|AM0PR04MB7010:EE_ X-MS-Office365-Filtering-Correlation-Id: c1d4cd42-b0a9-413d-c3d3-08db65a8f817 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 5RzZ/1qU4cufgWcBOeB29Ep6YMsQ4EAlIIplkOBUhbhcebF3HETMLntVtNjeulIOspUsfseIHyKFFFPvwiW1yNi+aqNfG5VzxRDbkMFvvpcFKmxmK7Z1SHPQEfqK7r9Mt4vGzP8XcuCTnY1R85vJO5ZVg9uIgmlY11rfmva7UixU3/t+lg9YNStqpCq5pmBYsdPZ240Ugl392rc+oMq6746Gzd+YQSUhoJObx+Obku/lXzYFizm2N5t/BB0m/W4hhoTlKpSoen5FDVabyDFdLBAHppktOGa+CaUrgZ/2yL4uSvrxABHh3Y7yshOZp3mveHj80Bo5xV3Mt50jA1rEagW4DdM2Uz9jaX6gxOHB9BMAsebLYBw2uBs1hvkcg7MHVN3RZUz1Ap0DGjOsMQtPu8GOUcTJh/UwplfLS2ZD00Df0xvKL6GT9qb9YTa3k+QPSzqKw+7mUS/bnCLnHZ4yIHbombMsQV89kyATKwoESsQUHn4j2Nors+YMdtUhkGe9GBrVW0nBu46GTPyA2rdhiBue+FhaEkoiGw32cLzMKBXgOl8AUUlvCHda34OIiI8clhc/v6CdEpucDjCVfUgnXHFcIYgDcSeQvLfI/mxXp3i+WWR+N/0nrqVP2FUXzXIHBH7lLAPUdFnjp583YlIEAA== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(346002)(366004)(39860400002)(396003)(136003)(376002)(451199021)(54906003)(8936002)(5660300002)(8676002)(41300700001)(6486002)(86362001)(6916009)(316002)(4326008)(478600001)(6512007)(53546011)(66899021)(26005)(6506007)(186003)(31686004)(66946007)(66476007)(66556008)(31696002)(2616005)(2906002)(83380400001)(36756003)(38100700002)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?YkpWeHlsUER5VGFsSmlxbmNWc2NlTWtITGY2WUM4czBnei9CeExldTlWRnBv?= =?utf-8?B?dm5BcVJMRGM2T0kzQlRnallzTmRuM1hNY2wxVVcyVTJqWWpyL0pRRk1qVWdz?= =?utf-8?B?cE15WEhKclAyV24zbjJUaEY5eEhBZksrd281WEJPb3p3dVlrRyt0cWNoT0E5?= =?utf-8?B?TzBFWnlhUnpia3hJcHo5dGFaVFoyZW54Z05ZTnFrMnFXY0V6ZDErR1NaODVq?= =?utf-8?B?ci9vTHh1VzkzYmMzOURhTkp0QzY3ckVwcVNEaDBkSVdMY1dHM3ZsV3BkUWNi?= =?utf-8?B?OFQwdDYvT2FxOXI0KzNuR3hwSUlCdjVJRmNCODNqRzgyWkJiMGh2dHB5ZDF6?= =?utf-8?B?QnlxbWNPL3B3d2xWeHJ4aFJwbWt2Q2w3NDZQQm14cCt4UlllbDNyMVNSWXJB?= =?utf-8?B?ckh1MmEwc0p1WFNUWmU5bk5CVmtPcC9BY2xVL043SHJQdFRvRGNzRHk4VDQ3?= =?utf-8?B?UlZMUmNENmRDbEx6ZjNQUFliZWsvendKTVZuUFlSeEJRdW96ZC94M01LajFP?= =?utf-8?B?MzVnQmFHazBWbHJJSjlSM2FPMmNqYS9jdjVYK0FsQWdUaWNuOURNZUNoV0dR?= =?utf-8?B?M0FBckFIdzhVSU8wSmwrYUtLK2pJNGpuMEJ3RFp3Tzc5VWFuZnMzUG5tKy9n?= =?utf-8?B?RzhTUVRObm9Damx2RzNDQThRazA4QjlndXNnTlJQOXZ5TDczVUYzNE9RVXcx?= =?utf-8?B?NkFtNENzMEU2Yjc0NmJkbU5ZUnAyRml0RXhyS3Rabmk3NDhkUktldCszdmpo?= =?utf-8?B?QU1IMFB0UjlSeHZwR3RZL2FBRlRpMGN1bXRCTlZFcm8zbk0xNGFlcUVQbWZo?= =?utf-8?B?SHd1ZE5kUkd6RCtTNG1kVTBxY1plYkl3UEFhUFVaaEtDRFBTUUNFTXRKbURM?= =?utf-8?B?Zk9YaE1OTkxZZkVNZzU2VHpnblNUYzJWVlZwUWQvT2s4UnRKR0dRek5hcDVN?= =?utf-8?B?OUo4RDN1NXZ6QklkY3RqT1RiRTE1ei9NT3Z1NFl6V2NqYzYxdjFTeUJLc3NG?= =?utf-8?B?a0lJWjFucnZXV3MwU1JJTDRtMjBvV0liZmVIcTVpVGdlSUJBZHFwZDFCQ25t?= =?utf-8?B?NFkvMmZzbUxmNFllM0ZrbExCRW9IM2F5RWhsajNreU5OU2hZcEtUNVJTU2pO?= =?utf-8?B?ZXZiMFBoMnpMUGFiTDNLbkpiUVduWVh3N1UvRlpvV1NmeWV6U1R6OUlwQkk0?= =?utf-8?B?RENqeGdYTTJ5Y2xIcDEwVUR0ZDcweFJhZVhGclo3RmNNT1pWM3JDRXQyWVNE?= =?utf-8?B?Umo4R1ZFUndIMHZKY2lDSlphV21xMnpHMStBR1JxOGd6Y2xFeTFnVHhaemd3?= =?utf-8?B?WGdDTGF1TllYVExjZHlEVm5BS0JXM0d4d29kSFJVYnh3TDhsOHRwcXdLM3pW?= =?utf-8?B?YjZORzdtbkFzanMrR1Jic1kycFpxM3cwellLekdoMmxFZkdLWWttaWdxTFR2?= =?utf-8?B?VHVmbUV4ZmxQSXpwZ2Z2Yi8yVzF4dzJGb2dnYVIyQ2JOZEhyNlV4SXRwRDdV?= =?utf-8?B?M3A1cTZtWURGWjhpWXl3ZDNjSFIzQ1laZ0NxRzQwS0RqbXZJNnVLQU1hQmFx?= =?utf-8?B?RERIOHhnaGFIVnhaUXVjSzNZTEJ5L1FWM1JaVUwwQkZWNVg3eHpzb3dGTk8y?= =?utf-8?B?dHhpWWdTTThmRDdDMUc3NlBmZ29pOEJ6dFVja0ROTGYwNDUwaWVkcXQ4eDVt?= =?utf-8?B?ZG1nS0YrZUw1RUpQaTUxajU3QVZTdEpNeWN3WDhDUFN2NGpXdDYxcm9yOXRQ?= =?utf-8?B?SlpKTEcxSXZueXh4WG5WVzFSdWFiQnJWMzVKQXdKaUUvY1RYVVByMUVxMUJS?= =?utf-8?B?K29tbzVOZFQ4dHhZMGZmVzdYWVBmblR6cUtwYVNJaUR2TUNLS0xQd1VJNmVP?= =?utf-8?B?RUFIZTlNVGJOYWZsL2VCeEMyWjJ0SkFscUIzNVlEVTl1d2wwYk11dUp6cXIr?= =?utf-8?B?ODNQZ3FHd2NDbDhab1ZhcG41T1hjSUN4cE1TTWd1ZVkwMmNsUHJWSVZTV2Y4?= =?utf-8?B?SWFzbm92bFp3YStnVDVLSWFLbHRick9TdXRsSmJhZ1l2ZWZkcDhsaDFtNFp6?= =?utf-8?B?dWJweHJqM1p3WTVQOFZPK3d0WnEzR1c1MG9BZVBSQ2hnTUJXZ0lVWjBGWmVX?= =?utf-8?Q?smUpsxg3upvh2DS1ZCiMdVO3N?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: c1d4cd42-b0a9-413d-c3d3-08db65a8f817 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Jun 2023 09:40:59.5760 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: Otv0+BP/mwhy665QU8bJO6Pq+yEvfmOpNzqMt9Ddwchqm8KDT/6b4ljJ7nSv21L++/wzQwghbjJ2p90OsGd3zg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0PR04MB7010 On 05.06.2023 11:19, Roberto Bagnara wrote: > On 05/06/23 09:35, Jan Beulich wrote: >> On 05.06.2023 07:28, Roberto Bagnara wrote: >>> Finally, Xen seems to rely on explicitly undefined behavior, namely >>> C99 UB 58: "A structure or union is defined as containing no named >>> members (6.7.2.1)." All instances but one occur via macro BUILD_BUG_ON_ZERO, >>> the remaining instance concerns struct >>> `cpu_policy::::::::'. >>> Reliance on undefined behavior might be hard to justify. >> >> For starters just a comment here: I'm pretty sure this case was discussed >> before, and that it was agreed that if need be we'd simply add _ as the >> name there. Yet then - how did you notice this? Code inspection? I would >> expect no analysis tool would spot it because it's used for gcc < 4.6 >> only. And I doubt you run analysis tools in combination with this old a >> gcc? > > It is detected by ECLAIR, but the analysis is based on GCC 12, > and the detection of implementation-defined behaviors (including > predefined macros) is completely automatic, so I don't think there > is any configuration error. > > One of the instances arises from > > xen/arch/arm/dm.c:50.19-50.37: > all the members of struct `dm_op(const struct dmop_args*)::' are unnamed (undefined for the C99 standard, ISO/IEC 9899:1999 Annex J.2 item 58: "A structure or union is defined as containing no named members (6.7.2.1)." [STD.anonstct]). Tool used is `/usr/bin/aarch64-linux-gnu-gcc-12' > > and, in turn: > > xen/include/xen/lib.h:54.12-54.17: expanded from macro `BUILD_BUG_ON_ZERO' Oh, indeed: #define BUILD_BUG_ON_ZERO(cond) \ sizeof(struct { _Static_assert(!(cond), "!(" #cond ")"); }) uses a struct with no real member as well. I did overlook this earlier on. Not sure though how to deal with this here. Jan > xen/include/xen/compiler.h:126.3-126.77: expanded from macro `__must_be_array' > xen/include/xen/lib.h:77.53-77.70: expanded from macro `ARRAY_SIZE' > > I apologize in advance if I have misunderstood something. > Kind regards, > > Roberto From xen-devel-bounces@lists.xenproject.org Mon Jun 05 09:45:21 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 05 Jun 2023 09:45:21 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543600.848703 (Exim 4.92) (envelope-from ) id 1q66m2-0004rK-Kv; Mon, 05 Jun 2023 09:45:14 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543600.848703; Mon, 05 Jun 2023 09:45:14 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q66m2-0004rD-Hj; Mon, 05 Jun 2023 09:45:14 +0000 Received: by outflank-mailman (input) for mailman id 543600; Mon, 05 Jun 2023 09:45:12 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q66m0-0004r7-Pz for xen-devel@lists.xenproject.org; Mon, 05 Jun 2023 09:45:12 +0000 Received: from esa6.hc3370-68.iphmx.com (esa6.hc3370-68.iphmx.com [216.71.155.175]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id a8342af6-0385-11ee-8611-37d641c3527e; Mon, 05 Jun 2023 11:45:10 +0200 (CEST) Received: from mail-mw2nam12lp2042.outbound.protection.outlook.com (HELO NAM12-MW2-obe.outbound.protection.outlook.com) ([104.47.66.42]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 05 Jun 2023 05:45:04 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by BL1PR03MB6168.namprd03.prod.outlook.com (2603:10b6:208:319::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Mon, 5 Jun 2023 09:45:01 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::10bb:98bc:e36d:36ab]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::10bb:98bc:e36d:36ab%3]) with mapi id 15.20.6455.030; Mon, 5 Jun 2023 09:45:00 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: a8342af6-0385-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1685958309; h=message-id:date:from:subject:to:cc:references: in-reply-to:content-transfer-encoding:mime-version; bh=i1dY2BHhdFND+CUb0685lS0oelmUAvt580AH0TX4nr8=; b=IpUKvV5JVII1y/+dXEpF2KAladxbcQMOsFJY2cLRLl6gTjcGKsxl40Kz pktTb7zsEKwm7OZ9VTk+k+Pzh4RkHdv/LBL8vb/u9sGPxh8Z+BPVw2QbO Vg8qDt9907Pzl+7aLWFUHFx6FcY6ouQQ8xqYCX7FotmaTzDAZsH0GMuYf M=; X-IronPort-RemoteIP: 104.47.66.42 X-IronPort-MID: 110924482 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:5gGbl6uwm/vrPvXRXAairEbizOfnVHRfMUV32f8akzHdYApBsoF/q tZmKWiOOKzbM2OgeN53O4Ti/EtVucSBy4djHgo9rngyFy1E+JbJXdiXEBz9bniYRiHhoOCLz O1FM4Wdc5pkJpP4jk3wWlQ0hSAkjclkfpKlVKiffHg3HVQ+IMsYoUoLs/YjhYJ1isSODQqIu Nfjy+XSI1bg0DNvWo4uw/vrRChH4rKq4Fv0gnRkPaoQ5AGGyyFMZH4iDfrZw0XQE9E88tGSH 44v/JnhlkvF8hEkDM+Sk7qTWiXmlZaLYGBiIlIPM0STqkAqSh4ai87XB9JFAatjsB2bnsgZ9 Tl4ncfYpTHFnEH7sL91vxFwS0mSNEDdkVPNCSDXXce7lyUqf5ZwqhnH4Y5f0YAwo45K7W9yG fMwLiwKXhScpfKN2L/rQ7J0j9t5BsCxM9ZK0p1g5Wmx4fcOZ7nmGv+PwOACmTA6i4ZJAOrUY NcfZXx3dhPcbhZTO1ARTpUjgOOvgXq5eDpdwL6XjfNvvy6Pk0ovjv6xarI5efTTLSlRtm+eq njL4CLSBRYCOcbE4TGE7mitlqnEmiaTtIc6TeTgp6Q23A3JroAVID8WTmaf8cOnsEe/R+lBC 28IxQB2hrdnoSRHSfG4BXVUukWsvBQRRt5RGO0S8xyWx+zf5APxLncAZi5MbpohrsBebSwn0 BqFks3kARRrsaaJUjSN+7GMtzSwNCMJa2gYakc5oRAt5tDipMQ2kUjJR9M6Sqqt1IWpQ3f33 iyAqzU4i/MLl8kX2q6n/FfBxTWxupzOSQ1z7QLSNo640j5EiEeeT9TAwTDmATxode51knHpU KA4pvWj IronPort-HdrOrdr: A9a23:KUuhI644CRovCZE0AgPXwNnXdLJyesId70hD6qkRc3Fom6mj/K qTdZsgpHzJYUkqKRMdcLy7VpVoIkmxyXcW2+ks1N6ZNWHbUQCTQ72Kg7GC/9ToIVyaytJg X-Talos-CUID: 9a23:EvyJBW6zzuPAaEtxPtss8lITKsQ6UG3m1HqAKhSgAHkzYrTPRgrF X-Talos-MUID: 9a23:BM3+KAhKjfwwCjgTIri3CcMpFsdz3oD+Ml43mJQagNekFjBPEW+2k2Hi X-IronPort-AV: E=Sophos;i="6.00,217,1681185600"; d="scan'208";a="110924482" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=lMPkIk80GbhJ0xAzgsvo1lcQD/B0xuyzCwdk2MY/92zeaTzx/UeHdJuYATL0Wt2xzgYc6AbdKkcy1jpjqiCaXmy8mqp5aUPNItwys5oW84bFpV2W7k3eR7BVZ9EnZDW30sNVHoX7BKZ8N7ZwSNcHgP7bN3DgI6cyGtQVXbeWcCFOhIGko9Tpci2m9lZE4MPhHiDnOvSMl28Mtc0GYjgvlWf8cEObvOxNhWy5mbOr7y387+3l5Ab4tY0G/7HvxsEdTotLsglYuGhIP59hxpzA8aWfmJyO7bMWX5KNTdg19KP+QlF1gXCIw0WTe7s+13ltT/3D88qmAuzTejuk2Uw7Vw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=wZFhjJ94MduzYbvSDfym6L0MT302ZcddJCGocZcMwSA=; b=MQzfyWDrI2OLQtXOz9Ft6wXSKzbCscU5zEXq3swtoY5RlVMPtngzBvBaEDaLgpR+AZdMRMNk2MGaGf8rlHK2trHY/hcO59YeQivFe81LQyO2jG47coNuc/jFy6MhkY1p6DPkTWKX9TUFjSmZ7IeNELdfcNxSNEib7Sv6T3R382hJ9myCVxkiGUZJZcF8t7Prex2a652+V/943P0qhPCdx00gQUA9YYlz1RJvfLGkFTFpH172vZKSpz/MbVlUj6dBdNgjmnq14+/TcwtORIqW17iHTQxlxaY5TY2NoJscCO9YRwjUzExnSM968Y+aIRChKL5co7+IUrdfj3BQ5G0+Lw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=wZFhjJ94MduzYbvSDfym6L0MT302ZcddJCGocZcMwSA=; b=KAhRURMNI19waWc6NvzIlwKOQCsKEdTY2kDii9GXyj83N4ROvbP2QR0Db8gfQ4FXb5P/SYhOrznPDP+A5/mz0K4aK+2uWdf/Xbc5QYAUrq41QDE8cxsegCzKVFjt6wHGbT/77YvqXnkY2wuoolLuGa3QL1NBG+hJN2gxZYCJIzY= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: Date: Mon, 5 Jun 2023 10:44:54 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 From: Andrew Cooper Subject: Re: [PATCH v2 2/3] x86/spec-ctrl: Fix up the RSBA/RRSBA bits as appropriate Content-Language: en-GB To: Jan Beulich Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , Xen-devel References: <20230601144845.1554589-1-andrew.cooper3@citrix.com> <20230601144845.1554589-3-andrew.cooper3@citrix.com> <36b016e2-b378-f97c-42da-86a330471bf0@suse.com> <9783e91e-9d13-6b20-d985-0beb535c7fba@suse.com> <150d8499-6aed-c81a-1204-d48a4a32b8aa@suse.com> In-Reply-To: <150d8499-6aed-c81a-1204-d48a4a32b8aa@suse.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO4P123CA0414.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:189::23) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|BL1PR03MB6168:EE_ X-MS-Office365-Filtering-Correlation-Id: 721c4c41-fb5d-446f-0c3a-08db65a9876f X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: P/LwP9zrBUqVsAwelZmBOgEC02iOwbGr1hqG47iZ9Jb2LddDCjPAecON2vscycmJuZodV5fgmcpouEKboC4mq3zlbnJwnLjiBeIGV2Sftj75Y0VkUw8h/wDaAaLdGswjNz5EnSzq1ZqwrCQ3th/WSMU/IDfVSw1Le0BLvRFSC2CCrp9Ra5dluXEsjcWP6vE7wlSLwbafQtEBF8vfNzgk+89UIvFFU4W/MqfN5HUyy8Xb7P0z8x27Oxp4IltjtouyqZo0CFAmQEFIFa/7L3w3h5P4a5cw46XLf1UWUDS6BdRvySnKl0zehLn1kRW/eB6X36+OIByfkfn+i1rXswNxrDDEL9CMqo3CCfmbm7m5oIWQnLNyMxV3SRig70DT1OxR3i5RXSmT7bg5w20fzvKIGdqoDUdZVHlC5oI9A6f7G8tj1pIGcjNvrUujllRumO2CVfF0MDwTl8twglAd+ez7KJbEO1D/klU6tELdY4RMQWyVomlU1U3LQH4409Q0LqrRTNM6GSOCbHLXrrGrOZDKqF4q6LICsCD0TUB+niDIKOZ9GnQT3RzYjuHjm1d8C2/IiFdDajdQ/fEg1j98B5KylXZpJ+StJObiqhfBdA14YnziPdXI5JmjthKcRQjUMnJjmWhU95asg8fAGqg7zBjDXw== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(396003)(136003)(39860400002)(366004)(346002)(376002)(451199021)(54906003)(478600001)(5660300002)(8936002)(8676002)(36756003)(2906002)(86362001)(31696002)(4326008)(6916009)(66476007)(66556008)(66946007)(316002)(82960400001)(38100700002)(41300700001)(2616005)(53546011)(6512007)(6506007)(26005)(186003)(83380400001)(6486002)(31686004)(6666004)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?V3BYbHdCVFdnalhzc1NJMzAxdjZKc0pjVlBERU51ekZPdlV2eDNzaFdLR2Zk?= =?utf-8?B?UXY0aGxEdmFMTFc2RnVNdW5oRmExaTNaWENCNHNSRVgwRDZuMjRtSktuUERP?= =?utf-8?B?WWN6NHhIRExOY1NEL3phcFdhMWMxR0ZIY1Z0R1R5Z1JLcWNoQnp4NzI5NkhH?= =?utf-8?B?SHdqZzVYdm5Vb0RiUG1sZXJTQXNKeXNhRk9oV2Z4QnZvNllWcU5pemZNdTZl?= =?utf-8?B?dms0UENyTXIva0N3TmU1WjRFdEQ2NXlTTDFjQ3VVT0VmZDdWNWtaWHRoclJF?= =?utf-8?B?NXdrTEhOMnpqVFhqc25BamwwbWVlWU9rM001RzBDZHhNQnU5T2k4VDdWUkxE?= =?utf-8?B?Y1JNS3lWRm1CY2syaVU3cjFzc05Kc1FwOEM5czhJYzBPRXpYdXoyUGZxbGlB?= =?utf-8?B?WGZoM3NZM012UGxORExHM1hOeGdSbFNhaCsxWmhJcC9HMHBXcHM0UFFpNUZT?= =?utf-8?B?UytTTFJHb0MxSmV3NkkyVzlzZUY3MjBoQlA4QjhiL0QxOW4yYzJ2L21GQ0VJ?= =?utf-8?B?SmUvM2ZLbCtScmdGYThiL0NveGlrbTBQK0ZJL0RFR01TT1NTdjdsQmwwbVJT?= =?utf-8?B?aVV6UXJvSU5adUo1VWJjRTFGL0g5d1BtME9GZTdxVTdRbElUNFpTdTA5NmY1?= =?utf-8?B?TGVFbWRQUGVlNGdLbGgvdXduQS9tdjIrMDBJcEtTeU9md0YxQVBPYUw0Q0N2?= =?utf-8?B?c1VSSFFzYlZCcDUwNVU0OC9aa3I4WHhnb3dCVS9MWWUwVE9JNk5LcjhzUlEw?= =?utf-8?B?UEZ0RkppUzJ4ek1QTWRQMDgrS0pGVGFkZ0FxNlprUHVOak5taUFkS3J0Y3Fm?= =?utf-8?B?WXp1aXBORndTWXd1WXo5cXo0cjFxRmtucU5BekRCUXVjRFhBSi94NVpYT25L?= =?utf-8?B?bzRieXozYzRETGtnUVB1VzdEWUZSVEY3ZGJVaFZSU0dTVXNtOEZJNFU3N3Zh?= =?utf-8?B?REJOVHZZZjdzM2g1bjIrcVNDMm15QWxDZSs4QTMrZk5XZEEzWmc5TGlhVzJI?= =?utf-8?B?aDRHcVFGRVU0dXhPREdRc25LOXhYZUtXT3Q3OGdESnNFUHZod1pKNjNSWGR6?= =?utf-8?B?cmphdExCSSs2SzBEekk3WEdtNk82QXhBWVhjZFZtWHNuS0NzbVRXSmhaSlJu?= =?utf-8?B?cVBJblQxR0ZnUmRuUUV3Si9NOTNkUkkxRld3RUxGMUozb2pXZ3diWXJDbmlF?= =?utf-8?B?RTdQV0k0NnRKcjNrOHlvYWVNYVoxUzBZZHowSFUwODdvcjRBVG1tTlJrQ0M3?= =?utf-8?B?OWtVUzI0ME1mQWRpa29sV0FvTUVCdUVEWkEvczZTMFJEVmtpVGdkSHVaNGo0?= =?utf-8?B?U05qYlBXMFRKdFBLTWRPWGw2cFRqK0xwUEJHOHdGamhQY1I5bW9qNGZLRTMw?= =?utf-8?B?aUlBNVJpaGVHQzVFbkJ3QkxsR0g3RmFqNm1LQ1FoRkgwYmxiNFArY2FSazhZ?= =?utf-8?B?NE5YMVZMbVZMbjhxdFUxajF5dE1nNGxjZHNINkVaL3dYcWU4M0xzdDdlbklT?= =?utf-8?B?VWtOL083YWhUWUN4RFBUU2JYRHVqRWxIY3o1MS9oek9VRGhmSWszNmI4eVRI?= =?utf-8?B?cXlOVWE5UHlBL1BZV1pQWWxTUzlrSGgyem5vVHJZa2FYcmR5cWRWd011ZjZi?= =?utf-8?B?U09zRitabWoxSDFrdFNOR1J3TnVkaEtCbUhrQjlyc25nNm1ScHVGZzVqV0hZ?= =?utf-8?B?YnE1eVB3L2djeE9jZ1M0bWtqWDRLNXVOUXl3b01qb3hDVlEvSEl1MzE5OTFy?= =?utf-8?B?MlhvejZiTEk1V0tTeDRjZU1MVVU1UG9ablJjdjVYdTZDUWxpRk5DZDJ2M2xK?= =?utf-8?B?VmN1cTl2aHB5M0oyV3dla2FReEdRLzIvM1I3a2s1SENVVjdIaitybWc1Qkd1?= =?utf-8?B?S2FSdWNxWTlVLzJsS0JLZzBjYUc0WXczd0lGSm5HZEJHaDlCRUp5eis5Q2dt?= =?utf-8?B?OVhzWnZPYlhYbHJ1THhXK3g5dzM4NEJKT3JTQlkvQjlRSTRZb3J4b1crN01Q?= =?utf-8?B?dW9ManpUUzhYaG5GSm15Zmg0T2NsV1RHZm9QK1Q3d3FPQTJQTjl5TlZLZkZr?= =?utf-8?B?eTJaRXdlREc3UTBPb3Q1aVlFbUZSSmYzVEtYMFd2bDJuOC8yL3BRc3dSQno3?= =?utf-8?B?Q0RBclp0amhCcTQrMG1kZEE4RTVmcE0xU0NNbmNEelF2c1VnT2k2VmlMNmlo?= =?utf-8?B?RVE9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: ou/MwujozvLmEAEgSUs3kclEUWLJjPK5k4bDZHyQEEn0NLsRpgEjM5NR7sP8KTgpC3k5e0c/VtL1LUFXUP+q0k54vrj35MQhTSBiTJT1SMPZHdhIrYTnWUrKyU7GCPYG8j6YYG6Vv0FNvBZMhMk0nDstmh0yhBNuov9+Sz+6noOZWoP8EjjSBO06CPgsy91K2U/5a2O7PnplQYFZuBvQ6wvh0d+xojrvEY7lSlty3guFPvbwjT04jOwNvnEUx7E6DtGyb/48td67VBvzfoMxMEaROUyoRTdQz8+uiBcjPdU4X32QbqbCYs4ZHTKcAp77jEsTV7IY1KkR/vzjap/lB6jIndpz6TLu07tZzMIRh2kLMjUpsK2M//niFXArO5DqUtCVVsVMh9HGsxXdoW0zl3JCCYtaKAEqqBSUNb9yBZtKZc40x42RHq01bgGM3Gj/FUnYdsZQ1636yDMC39TUWd9g22hqDp+Xp1AdahV16adeGr30lwo3W+z7OOYsxn4EZEwZ4ViIeye5cSfkg/5/UX2JQHqDM6esABbOFhSlb1BDMJTvnL6rU4usC4mZqhPLnciKnGFjnVdo2F5dZpCi4RFT2ro71OOSJwZ3wv7OBOMJ1IusxyWd56tFIWJDPsc2hOtrhmuv/d75rAd4jky2czYEvBpDWpupHhkKaNApXoJ3fXCOWp131+7A+tnhCnDpJGfBo1DDDlXMjfHFXN5VrBYHh/cC/rY+Wl/tS5y8Rq/3nSt2GoBognKZOgKEhtdZ2/E+BOyl36Y8fY/x1W8K3JfHyyBsdPc6ZJTQX6GklfmdrgGS1Qz9YPtiMw2AmUA4 X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 721c4c41-fb5d-446f-0c3a-08db65a9876f X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Jun 2023 09:45:00.1839 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: ajN+pj9Nh8XGaAdqVp7X3BxBzmZzi70DttNHZp7FucTIyzzbB8y3T5WpzC86D6uxkb+AMLbxmQXBj16D1iRkuH7g5y+TU4vFJJTlXtM49BU= X-MS-Exchange-Transport-CrossTenantHeadersStamped: BL1PR03MB6168 On 05/06/2023 8:50 am, Jan Beulich wrote: > On 05.06.2023 09:48, Jan Beulich wrote: >> On 02.06.2023 15:57, Andrew Cooper wrote: >>> On 02/06/2023 10:56 am, Jan Beulich wrote: >>>> On 01.06.2023 16:48, Andrew Cooper wrote: >>>>> @@ -593,15 +596,85 @@ static bool __init retpoline_calculations(void) >>>>> return false; >>>>> >>>>> /* >>>>> - * RSBA may be set by a hypervisor to indicate that we may move to a >>>>> - * processor which isn't retpoline-safe. >>>>> + * The meaning of the RSBA and RRSBA bits have evolved over time. The >>>>> + * agreed upon meaning at the time of writing (May 2023) is thus: >>>>> + * >>>>> + * - RSBA (RSB Alternative) means that an RSB may fall back to an >>>>> + * alternative predictor on underflow. Skylake uarch and later all have >>>>> + * this property. Broadwell too, when running microcode versions prior >>>>> + * to Jan 2018. >>>>> + * >>>>> + * - All eIBRS-capable processors suffer RSBA, but eIBRS also introduces >>>>> + * tagging of predictions with the mode in which they were learned. So >>>>> + * when eIBRS is active, RSBA becomes RRSBA (Restricted RSBA). >>>>> + * >>>>> + * - CPUs are not expected to enumerate both RSBA and RRSBA. >>>>> + * >>>>> + * Some parts (Broadwell) are not expected to ever enumerate this >>>>> + * behaviour directly. Other parts have differing enumeration with >>>>> + * microcode version. Fix up Xen's idea, so we can advertise them safely >>>>> + * to guests, and so toolstacks can level a VM safety for migration. >>>>> + * >>>>> + * The following states exist: >>>>> + * >>>>> + * | | RSBA | EIBRS | RRSBA | Notes | Action | >>>>> + * |---+------+-------+-------+--------------------+---------------| >>>>> + * | 1 | 0 | 0 | 0 | OK (older parts) | Maybe +RSBA | >>>>> + * | 2 | 0 | 0 | 1 | Broken | +RSBA, -RRSBA | >>>>> + * | 3 | 0 | 1 | 0 | OK (pre-Aug ucode) | +RRSBA | >>>>> + * | 4 | 0 | 1 | 1 | OK | | >>>>> + * | 5 | 1 | 0 | 0 | OK | | >>>>> + * | 6 | 1 | 0 | 1 | Broken | -RRSBA | >>>>> + * | 7 | 1 | 1 | 0 | Broken | -RSBA, +RRSBA | >>>>> + * | 8 | 1 | 1 | 1 | Broken | -RSBA | >>>>> * >>>>> + * However, we doesn't need perfect adherence to the spec. Identify the >>>>> + * broken cases (so we stand a chance of spotting violated assumptions), >>>>> + * and fix up Rows 1 and 3 so Xen can use RSBA || RRSBA to identify >>>>> + * "alternative predictors potentially in use". >>>> Considering that it's rows 2, 6, 7, and 8 which are broken, I find this >>>> comment a little misleading. To me it doesn't become clear whether them >>>> subsequently being left alone (and merely a log message issued) is >>>> intentional. >>> It is intentional. >>> >>> I don't know if these combinations exist in practice anywhere or not.  >>> Intel think they oughtn't to, and it's quite possible that the printk() >>> is unreachable, but given the complexity and shifting meanings over time >>> here, I think it would be unwise to simply assume this to be true. >> I agree. > Thinking of it - would we perhaps want to go a step further an taint the > system in such a case? I would then view this as kind of "Xen not > (security) supported on this hardware." Until we manage to fix (or work > around) the issue. 'S' for out-of-spec seems like it fits the bill. In fact, that can also be used for the CET vs MSR_SPEC_CTRL cross-check at the start of init_speculation_mitigations(). ~Andrew From xen-devel-bounces@lists.xenproject.org Mon Jun 05 10:05:38 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 05 Jun 2023 10:05:38 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543606.848714 (Exim 4.92) (envelope-from ) id 1q675X-0007TE-DT; Mon, 05 Jun 2023 10:05:23 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543606.848714; Mon, 05 Jun 2023 10:05:23 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q675X-0007T7-Ah; Mon, 05 Jun 2023 10:05:23 +0000 Received: by outflank-mailman (input) for mailman id 543606; Mon, 05 Jun 2023 10:05:22 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q675W-0007T1-3D for xen-devel@lists.xenproject.org; Mon, 05 Jun 2023 10:05:22 +0000 Received: from esa6.hc3370-68.iphmx.com (esa6.hc3370-68.iphmx.com [216.71.155.175]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 7965f96b-0388-11ee-b232-6b7b168915f2; Mon, 05 Jun 2023 12:05:19 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 7965f96b-0388-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1685959519; h=from:to:cc:subject:date:message-id:mime-version: content-transfer-encoding; bh=sHZmzy52mODk8RP/4wDnQfPRlg7zMepu5gP+7ALWel4=; b=QmiEs1oUgRDbjuJKq+7ZuFkCepGbD+vHuk+WjU0ugEY05spg1Q0VbVhS wmyN7ZTrqsNPpu2F82XTeKpr88l91zDJhoqHq41p5u+ZOWsmIQr3+moSf 67xcexZbYxETXPIdQ8O7fE/4VLzpRbNTobVdFu6y4IV2aY20ByS/3D/ku 8=; Authentication-Results: esa6.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none X-SBRS: 4.0 X-MesageID: 110926877 X-Ironport-Server: esa6.hc3370-68.iphmx.com X-Remote-IP: 162.221.156.123 X-Policy: $RELAYED IronPort-Data: A9a23:XmXfyqgPbCtBb7jTbK/L7OM6X161lBAKZh0ujC45NGQN5FlHY01je htvWD+OM/veZ2Pwft11aY+yoxsDuZbWndQ2GgI4pXhhFX8b9cadCdqndUqhZCn6wu8v7q5Ex 55HNoSfdpBcolv0/ErF3m3J9CEkvU2wbuOgTrWCYmYpHlUMpB4J0XpLg/Q+jpNjne+3CgaMv cKai8DEMRqu1iUc3lg8sspvkzsx+qyq0N8klgZmP6sT4geCzyB94K83fsldEVOpGuG4IcbiL wrz5OnR1n/U+R4rFuSknt7TGqHdauePVeQmoiM+t5mK2nCulARrukoIHKN0hXNsoyeIh7hMJ OBl7vRcf+uL0prkw4zxWzEAe8130DYvFLXveRBTuuTLp6HKnueFL1yDwyjaMKVBktubD12i+ tQ7ATwnNRbEgdmn+4yJEsc8oZkGIfv0adZ3VnFIlVk1DN4jSJHHBa7L+cVZzHE7gcUm8fT2P pRDL2A1NVKZPkMJYw1MYH49tL7Aan3XWjtUsl+K44Ew5HDe1ldZ27nxKtvFPNeNQK25m27B/ zqXpTqpXU5y2Nq3wmOUznmXo9P1uHnKYJI4BrmR+9lOnwjGroAUIEJPDgbqyRWjsWauVtQaJ 0EK9y4Gqakp6FftXtT7Rwe/onOPolgbQdU4O88Q5RyJy6HUyx2EHWVCRTlEAPQ9r9M/TzEu0 l6PnvvqCCZpvbnTTmiSnp+LqRuiNC5TKnUNDQcGUA8E7t/LsIw1yBXVQb5LLqmxidHkHCDq9 BqDpiM+mrY7gNYC0uOw+lWvqzihvITTRwg5oADeRHu47xhRbZSgIYev7DDmAe1oddjDCAPb5 T5dxpbYtbpVZX2QqMCTaMYkEJvy4bGDCyznv2w3MckGqhGgyWH2KOi8/wpCDEtuN88Ffxrgb 0nSpR5d6fdvAZe6UUNkS9nvUpp3lMAMAfygD6mJNYQWPvCdYSfdpElTiVisM3cBeaTGuYU2I t+lfMmlFh724ow3nWPtF4/xPVLGrx3SJF8/p7ihlHxLMpLEPhZ5rIvp13PQBt3VFIve/G3oH y93bqNmMSl3XuzkeTXw+oUON10MJnVTLcmo+5EGLrXeclY4Rz9J5xrtLVQJIdUNokiovr2Qo iHVtrFwljITekEr2S3VMys+OdsDrL50rG4hPDxEALpb8yFLXGpb149GL8FfVeB+pIReIQtcE 6FtlzOoXq4eFVwqOl01MfHAkWCVXEjz213SZnX5OGNXklwJb1Whx+IItzDHrEEmZhdbf+Nky 1F8/ms3maY+ejk= IronPort-HdrOrdr: A9a23:CWvjZaoUEaIldNK+kPKXRioaV5ryeYIsimQD101hICG9E/b1qy nKpp8mPHDP5wr5J0tPpTntAsi9qFnnlaKdmLNhXotKBTOW2ldAT7sSiLcKvQeQfxEWrdQtsp uIGpIWYOEYa2IK6/oSizPULz9P+rO6GFTDv5am854Ud3ATV0nqhD0JcTpymCZNNXN77SNTLu vg2vZ6 X-Talos-CUID: =?us-ascii?q?9a23=3AgEU9Aml+eVr7ShnindVultqNWJ7XOV70wF2LJQi?= =?us-ascii?q?+MndSdo/NZw+3pYZpodU7zg=3D=3D?= X-Talos-MUID: =?us-ascii?q?9a23=3AM/qcPAyRK4imMk98n98+zais7iCaqK/3GXwGqrA?= =?us-ascii?q?6gezeBBRgESWZpTmQZpByfw=3D=3D?= X-IronPort-AV: E=Sophos;i="6.00,217,1681185600"; d="scan'208";a="110926877" From: Andrew Cooper To: Xen-devel CC: Andrew Cooper , Jan Beulich , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Wei Liu , Stefano Stabellini , Julien Grall , Volodymyr Babchuk , Bertrand Marquis Subject: [PATCH] xen: Fix incorrect taint constant Date: Mon, 5 Jun 2023 11:05:12 +0100 Message-ID: <20230605100512.1748007-1-andrew.cooper3@citrix.com> X-Mailer: git-send-email 2.30.2 MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit Insecure the word being looked for here. Especially given the nature of the sole caller, and the (correct) comment next to it. I've left the taint constant as 'U' as it's a rather more user-visible. Fixes: 82c0d3d491cc ("xen: Add an unsecure Taint type") Signed-off-by: Andrew Cooper --- CC: Jan Beulich CC: Roger Pau Monné CC: Wei Liu CC: Stefano Stabellini CC: Julien Grall CC: Volodymyr Babchuk CC: Bertrand Marquis I'm happy to change 'U' to 'I' if we think that no-one is going to be impacted by it. I just wasn't sure. --- xen/arch/arm/cpuerrata.c | 2 +- xen/common/kernel.c | 2 +- xen/include/xen/lib.h | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/xen/arch/arm/cpuerrata.c b/xen/arch/arm/cpuerrata.c index 1abacfe5bb67..d0658aedb6aa 100644 --- a/xen/arch/arm/cpuerrata.c +++ b/xen/arch/arm/cpuerrata.c @@ -695,7 +695,7 @@ void __init enable_errata_workarounds(void) "**** Only trusted guests should be used. ****\n"); /* Taint the machine has being insecure */ - add_taint(TAINT_MACHINE_UNSECURE); + add_taint(TAINT_MACHINE_INSECURE); } #endif } diff --git a/xen/common/kernel.c b/xen/common/kernel.c index f7b1f65f373c..14ce6b40ce06 100644 --- a/xen/common/kernel.c +++ b/xen/common/kernel.c @@ -354,7 +354,7 @@ char *print_tainted(char *str) if ( tainted ) { snprintf(str, TAINT_STRING_MAX_LEN, "Tainted: %c%c%c%c%c%c", - tainted & TAINT_MACHINE_UNSECURE ? 'U' : ' ', + tainted & TAINT_MACHINE_INSECURE ? 'U' : ' ', tainted & TAINT_MACHINE_CHECK ? 'M' : ' ', tainted & TAINT_SYNC_CONSOLE ? 'C' : ' ', tainted & TAINT_ERROR_INJECT ? 'E' : ' ', diff --git a/xen/include/xen/lib.h b/xen/include/xen/lib.h index e914ccade095..75ae7489b9f0 100644 --- a/xen/include/xen/lib.h +++ b/xen/include/xen/lib.h @@ -201,7 +201,7 @@ uint64_t muldiv64(uint64_t a, uint32_t b, uint32_t c); #define TAINT_MACHINE_CHECK (1u << 1) #define TAINT_ERROR_INJECT (1u << 2) #define TAINT_HVM_FEP (1u << 3) -#define TAINT_MACHINE_UNSECURE (1u << 4) +#define TAINT_MACHINE_INSECURE (1u << 4) #define TAINT_CPU_OUT_OF_SPEC (1u << 5) extern unsigned int tainted; #define TAINT_STRING_MAX_LEN 20 base-commit: 67fdffef9246c82cecd8db28838ed09e79e2528a -- 2.30.2 From xen-devel-bounces@lists.xenproject.org Mon Jun 05 10:10:32 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 05 Jun 2023 10:10:32 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543611.848723 (Exim 4.92) (envelope-from ) id 1q67AT-0000Tb-VK; Mon, 05 Jun 2023 10:10:29 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543611.848723; Mon, 05 Jun 2023 10:10:29 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q67AT-0000TU-Sb; Mon, 05 Jun 2023 10:10:29 +0000 Received: by outflank-mailman (input) for mailman id 543611; Mon, 05 Jun 2023 10:10:28 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q67AS-0000TE-Ht for xen-devel@lists.xenproject.org; Mon, 05 Jun 2023 10:10:28 +0000 Received: from EUR01-VE1-obe.outbound.protection.outlook.com (mail-ve1eur01on060d.outbound.protection.outlook.com [2a01:111:f400:fe1f::60d]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 30adba9f-0389-11ee-8611-37d641c3527e; Mon, 05 Jun 2023 12:10:26 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by PAXPR04MB8800.eurprd04.prod.outlook.com (2603:10a6:102:20f::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.32; Mon, 5 Jun 2023 10:10:24 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.030; Mon, 5 Jun 2023 10:10:23 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 30adba9f-0389-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=anUNsnvhjE2X5/3/dwGuZAzLfZEocZjSkK1Z9GhuihLLXexhvDW6dNf3/qBmId9Thts327IsrIO54/DNLHXoyyvNvThjaGYppnm7RWmw2s96BJv+ELquLOSNc5ZTwV/5g3icn59iPpiJf2vhM3443HwanhRNbaSMdX5LRPuEemT2VcRX9EXZQVgu6S/BBvQ3OtWK1qIW0MXdkLSSkFlE5+ezbhI5czY/vVVOABTXwb36tswAzgIr4tLsEz5eeLSP42mORaHc0hvj1qL3DO+S9In51ZcFSm6DZJ+Hp9oMg9JSeF4hTGb2It5h3zfpgu1kqpgG3JFM4TONZ1B9SiPhyQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=u/kP0UtKA9AYAZnXd08SvLnj5O7FuCMB0eaRBOAxfS8=; b=KYLGglGRGbjpf4U3Zb8WWSFiV5KnaQAhUQ5WIR7Db+ARUNk7UnycQuF8Bv7MTzgr0PcJakKATcZhCsFT6mCpHXSt9gkHomTnDXhY9rttKI9033CNZnB8+i+y4yFbhZjuSqaFkd84eDehvibSMelAuyMr1eOGieE+QPj7zX6CJIVVWEva9SrXm/V+Bu/jGCKv2s6rkgJAhbypE/Zx4OD+Fo7lWz1PjPgnYiuHLivIh3xJee6aIOEwv9lLxNa3QitWnmeYNZWuS9QLlA/z3ap6AN8hlOsTC1SfV08mDf9nFlHTyHSr8GeyN6U4zT6gXaoNKU/oT8wA7uIizC/IivilCg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=u/kP0UtKA9AYAZnXd08SvLnj5O7FuCMB0eaRBOAxfS8=; b=rgWmWVF9fpYd6kwCnpu0q0CJnpITvZU319dOsuiecesW6FRBfskbsdikjTUK2Vz+2BglSqJH1jkVY+zKAFchrDaLtXr3j7AJu2oqvVdWpe06hLX6RmPH4TRJSg5jlsfa6yciw4AT7CAmxhlNd6IVufRWwPUJV9ZExHKfztvD0WR6LCDz1us/4guliWX1O1HnuNCmBRN2Eu6cfzane7ASQWV5plwOuabSafH8EhWMEuaN9mwMXGbtes5BS9SISaB7I2mJr/iHzmxs+nuMo3Y6/uNYcBgYkKJPZhCloTEsi0mctFKy4Bw/AM5ANtWf68h0lI9R1ZdkrwIT8XLTEhf0Bg== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <6ce6c267-7e9d-d63c-c7f0-3bb7554a3f83@suse.com> Date: Mon, 5 Jun 2023 12:10:21 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.11.2 Subject: Re: [PATCH] xen: Fix incorrect taint constant Content-Language: en-US To: Andrew Cooper Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , Stefano Stabellini , Julien Grall , Volodymyr Babchuk , Bertrand Marquis , Xen-devel References: <20230605100512.1748007-1-andrew.cooper3@citrix.com> From: Jan Beulich In-Reply-To: <20230605100512.1748007-1-andrew.cooper3@citrix.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR3P281CA0187.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:a4::15) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|PAXPR04MB8800:EE_ X-MS-Office365-Filtering-Correlation-Id: a11b1c67-eec0-41b5-3ef2-08db65ad13b4 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: RAFOh1AsftTqZO54OsdxeU8/756FEw+GHyCYmS7Oftnyx8FYU5yE7n3qIQCCi+wOfbZ2U2n2BWSL1K0BlGSsPse3RUJngbuQBN+UU8zgro9o2sToWCQmoOf4GP5iB5f3XR9vzAxRsE88tSMMTa9L0MFbXZ6ypAqofia0gN7vmTWwMjzUjRNG6OY0eN0NVa2RI1+uZkbWJwG6ZlTfznUzxlxUSfPFGr1+EOk2fINVPvaNKX4I3G6Cpc+RDEfnhJ/knu4w+LI6VI36/8i0T5ef+yWEyBdevhMwnSz4SUcAookvvyJ0yqKv6Rug9g84XQIyMaMudV2OpvLHp8AWgqYm1aXEx0xAAGoNsqZW0yFcJGME0GIZE+EPcik2SUaioWoj8GrwORGKnpd0PwNkfmb16nvP/F4WVgo2spZG9PbcYUwkqk916pGlnzNUEH0q4l1PKmIn71ISTU8xWYy+nd8gmJ9pupi+OgJ1dEQN2Q7BoCD7RwbM5x3eyBLXlWy7XlYyYiYQTncuX+fAtl6rvoM5Fsi4on6ZVUAxKVkrgTyImacyxkMLjNQ+21EY1pUVHem5gLpc5EvcmrDsP6ewtVxX2lEuN+S/hq1j4WlWYZzPBieaMP0vu3FlHo6/p6TqaZ8tsGApyRsVcsUJxNbuSnTRpg== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(39860400002)(376002)(346002)(366004)(396003)(136003)(451199021)(83380400001)(4744005)(2906002)(2616005)(36756003)(86362001)(31696002)(38100700002)(6486002)(316002)(41300700001)(5660300002)(8936002)(8676002)(54906003)(478600001)(66556008)(66946007)(66476007)(6916009)(4326008)(31686004)(6506007)(53546011)(6512007)(26005)(186003)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?Y0EvOFBwR2ZXN0ROdWxSOFlRTGRsbG1JWDJNc1lGRGlURnVBcThQeEhZdFgw?= =?utf-8?B?cU03RmkxNlBlL2hxRlFUbzNLVjJQMWZaQ1pLZXlOR0w5aUw0UnAzNzFMOUhK?= =?utf-8?B?WkF1ODdSRUZWTjlUeGFHY2hVclRxZGcyM3hiY284NWltRzloakRvbGI0L0Fw?= =?utf-8?B?VUJkeXllbytZc1NHbko0bnJaWjB2RGw0ajZ3SmpManU1eEQvT2ZhdDJpY1hW?= =?utf-8?B?OTJoYnBvSnVVbjZkZHNmVWxRT2JrZkVpNDA4SlhVMWNFNFJkVm4xc1pTT2FG?= =?utf-8?B?Y0lVMUZQWjNkL1dPQS9mVDRnZW84SG5hdEQrMXNraVZUVWRjUXpMczBEM1lG?= =?utf-8?B?OVg2a214MGVWbVV4V25pYWRPTllubGRHMkIrT3FtVHRuRVF1R1AxZ3l4c2U4?= =?utf-8?B?eEhacmMyb0NIaThVY0krRlpGRHJlQ1dTdU9jRDcvWjVhR2hHL052N2FLS2Vj?= =?utf-8?B?ZUJIZzRaUXlTU2g1dXdsZTJHZ1VuL3Y2SnpWL0lRdG5KbHpCMGhoREtKVVFD?= =?utf-8?B?TlByR2tXNzQyRGJ0RlZRN1BJNjhHaHdrcVgzMTRMcGkrUjg0RFcrSVQ3aVgz?= =?utf-8?B?eHdjRE5rS3VwY1U3Q1JNVTZEUWppU1Z5SlNaeVN0ME1FcVNTOWM0dTZuUHZU?= =?utf-8?B?K1JuWFJBcXVLcVpJdmhBTFhsL2tDTkw1OUcxbjFtUko3V0JkT0V0U01nUnpW?= =?utf-8?B?eWdhaGt6WGp6SUt5ZzFJZnlSK2VhQzBWY0pwVDVXYTBVeEVXMnh6UWxiUzhY?= =?utf-8?B?SURoS2Z4VTdTTmYrQnRGdnlHRG4rYVFWTWZIVkhYWllla3pLeC9KQ1BXODFv?= =?utf-8?B?WUxrdmtnbnlWemFxMFc2eHF0REF5bENGRFl5SWJqaFowNG5HVXVTTXAwRXNG?= =?utf-8?B?dFhMYTB6QzJ0UlJ6L3lrOXpQNmxsWlZWQ1l1ZndGZUptZnh0WXBaYmo0SHN0?= =?utf-8?B?MEk0ZU9pM2ZVakZraUZiZ01mdzM1dG90cEVUMVUybkw3WjlFcmRBeFVHNXRh?= =?utf-8?B?Tk9sSlgzUU53bjY2OWdWbkxJbDMxUjFnV2UrQVJ5VWtKaXpzRi9xSFJWY2pF?= =?utf-8?B?VDJiUGVHSklwa245b0UzU3daVy9WSVJRQTJhOWgvNWNVWWFHeDJOTlJVNHZN?= =?utf-8?B?ZGlkMS90b3YyaXlLWW0raisrQ0t0Q2U0MGxodTZpdy92bFpMMzkrUjdraTMv?= =?utf-8?B?eEo5TzMzUElMNTVwSDVtbTM1WENIZnZET1RCQ2FoQlRJV25OUm1UamRlK2ND?= =?utf-8?B?bVI1akJwK0xPaUxnNXBzb3Q3ZEhJNEVqSlJSbDJwY3RDZExiaTBBTzczeTdY?= =?utf-8?B?YWlvdHhmYWl6Ti9SWmdkc2JjejhpVUZONFZXdDRQMzVKbzlmWmpOVFlZZEtv?= =?utf-8?B?d2hRbTc4cm42b3NiR1NpSUViZmJETUU4UmtmaXg1V1h3RkE2dGwrcGtkU0JR?= =?utf-8?B?TzNUeVArWDBrckZoZzM5VnAzcG9IUWE0WncyMFFVTWxpWHArNVpSM3JSTk5G?= =?utf-8?B?K1o4TTVGM0JXNSt5S0lxWUtlS3JuMmJUMDBNaFBTQ2J3SnRnQ0k1Y3Z4OGNU?= =?utf-8?B?ckgyeW9XS3dtUStwTHhjQnM0ZHBwazU0YVV5QWk1Nm84U1Brek1wSGcvVWJs?= =?utf-8?B?cVlTUUpHVFBLOGhBR2JYblhuOUQ4ZzlDem9ZUXZuVVhyTitkbzJrclV1dCtI?= =?utf-8?B?bkhtajg1YUwvNHNDc2JIK3lUa2cyZXUyRDV0Tzk2b0thTXgweTViNlMvdlJx?= =?utf-8?B?NlZmMVd1OFZYelN2aEcxQUpXYjMzK25pdzd1UmVYbVp2Z0F2RVllZG05Tyt0?= =?utf-8?B?ZkxTMERoTVZTSG05YjMzSzZSOUFJU2hsQnI4UTdPRzJON2N2ZGw3VlJ3R2Iz?= =?utf-8?B?eWI1VTdXelpYcy9uYytaanU2RVhsajhHVmNCb2h4NUVZQ1hUT2dIZk83Vk1P?= =?utf-8?B?RkRua2NCZXZCcGszU2JUYlhpS3NtV0lWMDFZZEF2d1FoamFpZCtmSHVRR0tE?= =?utf-8?B?a3FCME0vMS8xaENjRHpDRnVDbnF2NmpDM2tHUFFYbld2eDNXM0pTUTFsempU?= =?utf-8?B?TnlQaEkyeXNmdWNDeWFaV2ZzZDZMN1drVjIyQU8yRlpTOXMxaVJaWXUrRVUw?= =?utf-8?Q?mGE6ezIJqMf2Uu+VkSW540Sjd?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: a11b1c67-eec0-41b5-3ef2-08db65ad13b4 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Jun 2023 10:10:23.8803 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: bMqqcf1ipSoveOckhtwxpk+xdZG+qZXL6imVeGy2HZ+N3Dzr9ev6kfrJ1aytUx3BNDVl5Gv+Fdlg2Fz5AijDVw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB8800 On 05.06.2023 12:05, Andrew Cooper wrote: > Insecure the word being looked for here. Especially given the nature of the Nit: Missing "is"? > sole caller, and the (correct) comment next to it. > > I've left the taint constant as 'U' as it's a rather more user-visible. > > Fixes: 82c0d3d491cc ("xen: Add an unsecure Taint type") > Signed-off-by: Andrew Cooper Acked-by: Jan Beulich > I'm happy to change 'U' to 'I' if we think that no-one is going to be impacted > by it. I just wasn't sure. I agree with what you have done, i.e. leaving it as is. Jan From xen-devel-bounces@lists.xenproject.org Mon Jun 05 10:14:41 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 05 Jun 2023 10:14:41 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543617.848737 (Exim 4.92) (envelope-from ) id 1q67EP-00015h-Id; Mon, 05 Jun 2023 10:14:33 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543617.848737; Mon, 05 Jun 2023 10:14:33 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q67EP-00015a-EK; Mon, 05 Jun 2023 10:14:33 +0000 Received: by outflank-mailman (input) for mailman id 543617; Mon, 05 Jun 2023 10:14:32 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q67EO-00015U-BJ for xen-devel@lists.xenproject.org; Mon, 05 Jun 2023 10:14:32 +0000 Received: from esa4.hc3370-68.iphmx.com (esa4.hc3370-68.iphmx.com [216.71.155.144]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id c13a8627-0389-11ee-8611-37d641c3527e; Mon, 05 Jun 2023 12:14:29 +0200 (CEST) Received: from mail-dm3nam02lp2044.outbound.protection.outlook.com (HELO NAM02-DM3-obe.outbound.protection.outlook.com) ([104.47.56.44]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 05 Jun 2023 06:14:24 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by MW4PR03MB6968.namprd03.prod.outlook.com (2603:10b6:303:1a7::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Mon, 5 Jun 2023 10:14:22 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::10bb:98bc:e36d:36ab]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::10bb:98bc:e36d:36ab%3]) with mapi id 15.20.6455.030; Mon, 5 Jun 2023 10:14:22 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: c13a8627-0389-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1685960069; h=message-id:date:from:subject:to:cc:references: in-reply-to:content-transfer-encoding:mime-version; bh=Q1NJ08biqZOhzhKBThXmBMahwzB9++u+cX61197AkJQ=; b=cpQ/Afnt6pDIToLjU9/KmaLQtmxTi7ZCDKogURZQ2oEDuN2cDJCXhB86 jl4k1kRKbFlYLhxt8ACJVvxk3PQbiCSmqjuBvEoIl3S0fdCsV75DEmLMr jGqBNiTJyXWWR50dSWlt4FDV5KGWQx9ns3yzrYGRkysNV/sI+ZlMyGozT w=; X-IronPort-RemoteIP: 104.47.56.44 X-IronPort-MID: 114104051 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:vL2jwa72S2sgI0EMtcezJgxRtLjGchMFZxGqfqrLsTDasY5as4F+v msXWG3QO62KMWSged12Ot61oBtUsJfSyodkSVA5pSs9Hi5G8cbLO4+Ufxz6V8+wwm8vb2o8t plDNYOQRCwQZiWBzvt4GuG59RGQ7YnRGvynTraCYnsrLeNdYH9JoQp5nOIkiZJfj9G8Agec0 fv/uMSaM1K+s9JOGjt8B5mr9lU35JwehBtC5gZlPa4T4AeH/5UoJMl3yZ+ZfiOQrrZ8RoZWd 86bpJml82XQ+QsaC9/Nut4XpWVTH9Y+lSDX4pZnc/DKbipq/0Te4Y5iXBYoUm9Fii3hojxE4 I4lWapc6+seFvakdOw1C3G0GszlVEFM0OevzXOX6aR/w6BaGpdFLjoH4EweZOUlFuhL7W5m/ t4aBj8pTDu53+euxKmrdNRDie0vM5y+VG8fkikIITDxK98DGcqGb4CRoNhS0XE3m9xEGuvYa 4wBcz1zYR/cYhpJfFAKFJY5m+TujX76G9FagAvN+exrvC6OkkotjNABM/KMEjCObexTklyVu STt+GPhDwtBHNee1SCE4jSngeqncSbTAdtOTeXkrqMz6LGV7kk2ViAWCnS3m9ag20uRdNdPB 0s35QN7+MDe82TuFLERRSaQonSJoxodUNp4CPAh5UeGza+8yxmdLngJSHhGctNOnNQtWTUg2 1uNntXoLT9iqruYTTSa7Lj8hTGvPSkYK0cSaClCShEKi/Hdp4U0ggPKX8xUOqe/hd3oGhn92 zmP6iM5gt07h8MRy7+y+1yBhju2v4XIVSY8/ACRVWWghitpaYjga4G25Fzz6fdbMJ3fXlSHp GIDmcWV8KYJF57lqcCWaOAEHbXs6/PeNjTZ2QRrB8N5q2jr/GO/d4dN5j04PF1uLssPZT7uZ gnUpB9V45hQenCtaMebfr6MNijj9oC4ffyNaxweRoMmjkRZHONfwBxTWA== IronPort-HdrOrdr: A9a23:KPatD64p87pqjcx8rAPXwb2CI+orL9Y04lQ7vn2ZFiYlF/Bwxv re/sjziyWE6wr5AEtQ6uxo/ZPwN0819fZOkPIs1MSZLXvbUQqTXcBfBO7ZqEyFJ8SQzJ8j6U 4NSdkGNDS0NykLsS+Y2nj5Lz9D+qj4zEnAv463pRoCLGEaDNAH0+pgMGmm+w9NNXh77PICZd ihD6F81kCdkAEsH7iG7w4+LpX+TrPw5erbiCo9dlsaAUS1/GiVAHGTKWnX4j4uFxd0hZsy+2 nMlAL0oo2lrvGA0xfZk0PD8phMn9Pl691bQOiBkNIcJDnAghuhIN0JYczegBkF5MWUrHo6mt jFpBkte+x19nPqZ2mw5Tf9xgX61z4qynn6jXuVm2Hqr8DVTC8zT+BBmYVaWB3E7FdIhqAn7I t7m0ai87ZHBxLJmyrwo/DOShFRj0Kx5UEvlOYC5kYvHLf3PNVqwbA3zQdwKtMtDSj64IcoHK 1FF8fH/stbdluccjTwonRv6MbEZAVgIj62Bmw5/uCF2Tlfm350i2ECwtYEo3sG/JUhD7FZ+u X/NLhynr0mdL5EUUtEPpZVfSKLMB2dffuMChPNHb3fLtBZB5sZke+m3F03jNvaMqDggqFC2+ WUbLuf3VRCP34GQvf+qaGjySq9CFlUh1zWu4djDqhCy/rBrfLQQFm+oXAV4pKdSqYkc5Xmsw DaAuMYPxcVRVGeVbqhmTeOB6W7JRQlIbooU/4AKhuzi9PPLIvy8uPDNPvXPdPWYH0ZZl8= X-Talos-CUID: 9a23:wOZqkm2ZB9wQO0oc+dbkC7xfEeInXHL57lzqe0qgDX15doC6Rnac5/Yx X-Talos-MUID: 9a23:xUc9jQZZPm49s+BTkhqyuTE9G8tSzL3/DW8ilIUqvOqbHHkl X-IronPort-AV: E=Sophos;i="6.00,217,1681185600"; d="scan'208";a="114104051" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=bTzQcaHYH3pHngZrpKy0O/kh/HuG2K4V3vTLcnWFSlfbM4uLciiSDwJtKanm3byxQGUtTkdMcu63lNOXMhtMVkgBqvgoflLZ+UnsxKoBuK+LvXak/ZufnTOQtOLikEBnzQ2l4i0Gx0FamRKLeIL+7oOYnewkMAklmVtrzlkHUlWgDKiJQpPluHgaHbd1jPQgAfEzPAp/ayvrgbGkmk4BBVWtUlZ0DOHxR7n8FiXBZRfxkotncuFBeVt86RrWjv+22jiw2zC59Gg9PYneCRqW7Fr2FK4zsGaLAyPFi3bHWtAuRSX3+MEY31DDB6OEww+7LMXT//82z5yEkgy2r35jkQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=7Dj10AEfkvdtDUJeiSOXu3e080Qt/twFOkcUr9+a6BM=; b=QoeM7UYTUEmLKjwNmxYG+m0CZGed3ns2Bdyn0sPZxEzs7oomRerhCFn5psLM1yuGbmei7W2EJ5xGw7JcmLsyoU6PmrxAG5aCD1s/DvhLf5M6WDeg6AVNWRNGe62ft3g8A4fR8g8+qYIPZ1nXroldb0Rp81bwoVnBOw8mLfSWTaqNxXhdxOuPEQw4dheWYK26FNtH3sKp5GIjjPLYUAL+PZwS5LYJs72CIc7e8906Ouc/g7oPcLhrLpJVQdjQU8fv5R5itO2HZBagIOW7EhfPg0bGLzpPJ/fTb8JtOMCtG3vzdZamWL8oOaGPCCwXAdCyeSme+Gjq1/Gzct8MXXGUwQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=7Dj10AEfkvdtDUJeiSOXu3e080Qt/twFOkcUr9+a6BM=; b=MjG5xNo5hJoc/64xd1iAHHYKoyti7oIWokvFS0RbxjyVFyRsx1ToD9s+e774wutN2oEqQW7lQX9iPqDJE7qoFfv9J6mvV6VFoVfiTBfO8BeuzL4UHTbKmxg+93T1W3gA/XhickYcUREIR1LbCp+XZ1uenSLqcLyqfO3YpmFiZec= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: <525e1b83-fcd1-1b48-3ba6-87843ffdd213@citrix.com> Date: Mon, 5 Jun 2023 11:14:15 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 From: Andrew Cooper Subject: Re: [PATCH] xen: Fix incorrect taint constant Content-Language: en-GB To: Jan Beulich Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , Stefano Stabellini , Julien Grall , Volodymyr Babchuk , Bertrand Marquis , Xen-devel References: <20230605100512.1748007-1-andrew.cooper3@citrix.com> <6ce6c267-7e9d-d63c-c7f0-3bb7554a3f83@suse.com> In-Reply-To: <6ce6c267-7e9d-d63c-c7f0-3bb7554a3f83@suse.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO2P265CA0516.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:13b::23) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|MW4PR03MB6968:EE_ X-MS-Office365-Filtering-Correlation-Id: 89c74fa4-5414-4323-ef99-08db65ada1a5 X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: C3qNvyvUKiSn7S5Lju2Hf9YA1dnU99dGQib6kbcBK5t2LTYR6pIYVtqrZKnnVGZvBHWBEbRgGWkqHjPXksuEVk4SDtRvcmBmWAity9mA0VjuT7Oyik4QQrCmPDJEmDy3xSgUAPIgGxBsTzNmDh2kM/pyeHBdXUnXlIrjTl9wfWk5GcEBweq5SoQKK9fDEbvW+6ius2lMdRfNj6pp4zkj47QMKKNxoGvgyz7UmuW0xqpaK4pgoih12rxR53wJJMe9iD9i4NIVwUBd5hN7jLfcvM04eQy42ffWRHan+fKmpDJyG4c0UfnqdQbrTfFZAKfRzPf+5jHO+SnsJcZCZQnFjW08DYOFt/GMbXd70Z200SbZBIG3uIcuVGepZ/M65j/R/mN6I/mIcdeCotkVQOpGEbii4E7+7pW6dwNZf9TAt14uJxcG2ZCd3VZ2E6Cp+uapcstjcBOD9ZVZLte5+T+ES6gLs7nkvpZP/Pb4ijC0RmWNYqHxeGGkDBCIcymbTvL5qNXKihUC1JcpElWmekRZoS6Elkl/hHSoClcPU+zBT5qYhcCxOnuvuPhprm2ezk/kJ4fwuiEdrkU4SM/kSdGwBJ/U1FAQaAV4xdpSrRLqWWwYebxEXhfZx6ERMPJAZrqNIyxbF3aVx1goehhbwgq5LQ== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(396003)(136003)(39860400002)(366004)(346002)(376002)(451199021)(54906003)(478600001)(5660300002)(8936002)(8676002)(36756003)(2906002)(86362001)(31696002)(4326008)(6916009)(66476007)(66556008)(66946007)(316002)(82960400001)(38100700002)(41300700001)(2616005)(53546011)(6512007)(6506007)(26005)(186003)(83380400001)(6486002)(31686004)(6666004)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?eE1ibHRPdXFYQ21xeVZNUWhpeUd1d09LcW5HL1Z1dE54UjFmQVh0VTd3ekt5?= =?utf-8?B?bkE1VFVMc013cy96YjVmeC9xMWx2Uk1UUUdPQnQwS0pNN3dhUVJpQWl2SXZO?= =?utf-8?B?V05HZFREZUhHR0x3SEFUVXBqVkYwOG9Md01LZUttRm9nNDYwRHZUMUZUd1BG?= =?utf-8?B?U1o0MC90V0p1bVBTVWN5Wkt1NDFXYUE1bmlRQ0c2Q0FvSFZLS2M4SzVtTTNy?= =?utf-8?B?SjZEM1pEVm1UUUFWZ2YzY1lUaEV2aVNEOVcrVzdFWG5CZVIyclhDTWpRVk9E?= =?utf-8?B?WEpwbStDcVRFcDNXSFp4ckp2S1h5ekd1L2JrRW42ZjMxNWg3SGRWMGF1d21B?= =?utf-8?B?UzVGUmlrNzUzZThIWkZuYzVPWmRNbjJhUzh1OERnOCt1cDBMU0hxeXJSUHA2?= =?utf-8?B?K0t2anpwWllNMitRTDVIYStjcWprK3ZGRkk4WHNMYTZXek1ONGJzb1gveWQx?= =?utf-8?B?c1ZQSDJWMjNJdCtlY2l5VVlBakNPVWlycC9QZU5HUms4YjczL0xnUVVzVmZG?= =?utf-8?B?TVVSV1VhVHdxVXE4RkIwNSt3dGxqMW5VZFZTUDIvMEZVa05YdFZvcmoxWWo3?= =?utf-8?B?UE82OGY2RnhJLyt5UVdIdWZMQXBnNnpLNzFpUWxoUGxiMDRzWktsUmo5ZndK?= =?utf-8?B?czZhUEoxRm0yNk13VWRzRnlXQnZDcGJqUTZybTZMMzlFSkdNUk1hazRxVFA3?= =?utf-8?B?TXFIQ1lqaWZXMk9MUmFWY2YvMzdyblRySmtqS0NnZW9JL1pSeTMvd0FHc2dk?= =?utf-8?B?aENjUzZYN1pwcm1nNDVCUzNTZVVYcUR5M3cwVVBuWko1V01BNXhpelhsWlRt?= =?utf-8?B?UWNVaFhjQUZkcW9GV0J6aGFMNUw0ejhMeFMzVlFNZFd5d2dQR1NsWG9CdG5K?= =?utf-8?B?RElTZWpvYk03ejBFcXhKSWllVTZ2dEIrWDlFMkt2OS9oeVkyN3BCSWhsNkdn?= =?utf-8?B?NDBZVHhlSDVpSXlubkduMUQ3SnB0NW9qTGs2M2xJUzVoOHo4Z1NFaC83QlVx?= =?utf-8?B?R3dxSEdkc2htQUFYQTlVOXdCQWVrNzVGejFaM2ZRSGFtSzNtdDRVVUZ4YTZO?= =?utf-8?B?ZG0yZTFCZDlRMGpwK2RZN0JOVktra0ptRU41SzNjeFcyL3hLRDMvMTROSUkx?= =?utf-8?B?R1J2SGsyRytqR3g0SUhtT2hOOTlTVFpubm12ektPemRSelRCdW1hL0lKSzBv?= =?utf-8?B?YlZvQmtMeEwvaHVGOW95a2tPbDVNbjJmellOanl5TEZUNEF1dXZaZW1Yem12?= =?utf-8?B?Zmd1eCt2NGQyZlNXcjlOWmxSdnI3dmhrV216YWxNWEFNOHk3TFdBRVpjbjZx?= =?utf-8?B?aFlLK21uS3UwUUxuNnN3OGZ0VWxja1NxUkk2ZlF5TVdjNElNTUtRTDhyck5u?= =?utf-8?B?dW9YSUN1clNZNDJxUnJJS01jWUJpL2p2YWVSM1hJanhPQ0xNUWdFbmN0VzMv?= =?utf-8?B?TGdaOHJ1Z2NyU1dHb0FDZTNlZEY4eW9TMnd5cS9vNmNiZ1crU1NzUWg2S1Qv?= =?utf-8?B?ZEdVU0lsVkFlRnVHeDZ3cmtETW13TUZFRzhNNFY4WXk1K2VoSTI0QU5JU1Fn?= =?utf-8?B?Z3QxYkN5QXhmNGZwMDRTY2lFaGdKS1JUTU1ZNW4wcWR3b3lIYUFjMEIyVkVX?= =?utf-8?B?aGVkVUtvakkrbUhuMEFuZ3VKWUM4cTNjMkdVSm5RdU9TUkdJZVJ0NmJDUTNM?= =?utf-8?B?L3hQS0F5cUpCTUMyaGxnK0tTVHdKK3cyYjBOc1cvRUZlMGZaNWswZ1lvUVRX?= =?utf-8?B?NEE3cTU2Q2xnOXNnU1krY2JMUHhNSjlTQ0FZMEt6dG9oVC9HOHZtMk85SEFr?= =?utf-8?B?WHhoSGdhajFMd0tKSGJhd3hTb3A0UUxaa3VZa0NKNFdjcmNwbzBwcVpNeXVy?= =?utf-8?B?M3gxL2JlUWZoZHlBT3Z5UHRDT3JwSHNvMzdoQnI3bFp0aC93SCsxUXNMWkMz?= =?utf-8?B?THpGNU5OeE14QXRjSDJTZmQwcjNhNjQ4QnQyNmRaT3dOTHJtY3hlbGJMVXlh?= =?utf-8?B?Um9aelltT1Y5dVhhMHMyM3hZdkJrQVRjR2JrZUZvdWtNNHJQNEtEd3JSV1dm?= =?utf-8?B?ampXR1dXeWhTbGg1dDNLdjluU1J3L0JnaCtmOWUwNno2TXhJQnFPaWJFVFlL?= =?utf-8?B?WCtFcXNMMkMrMzV4TmRienFpWUhCYzdPajExWmxhaytTWkhhdStyT0t0S3dq?= =?utf-8?B?NkE9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: xkbj6ol102Gp2mc+CVdAOemHOqWvxBH7B+ScTsq7oaNJJG7m3MsKOg2bwj1YQynGIsZd8P61/mFrOrVbaqSysrsoPOApsMnu2VK/c3LwnjOFqKOBDCe98UxjWQmWx8CZfiyV6vRBlxeXlEphRKHA8d4sRzoXtiVf3Ox8Rs1g9R79e7v1EdnbiVj1SQtILwqbR+EMHM/onKfAlhnQhUMLw2NeWkoXYjBfZ6hkY2LFJFkbHyKzuvDnzsZDkf6UlP30U0PVpeW7dYe8UI5uftpSmyyt3U6Q1miIICHBOlTyJ1AyOnsfN3fQy8lxKWCddpaPSiw0Euh/M8lXoT3Ah9NDJdHiu33xCGg/laLsIDM2AQAIa5LSpPY9PZfsS+jBfkqHDcyAT/fedOnOlnpN2FbiekreI7uGyXgc5nb44A5GDTFBmLXuEe92Jn5yNsXbXhX1JE27TyKQypeGLFLVTpR75R+WGkeIBHZ6JYJcLoWGZenNuhiaPjlIGJvewM2ZzAE6hcCm6CBENDkGY1khEgoxU8bF2655lHYdis91i3itPLT5aKLXarlZjBQEpGHg6jJHlUKd1JXKxhnbJWoMsVx1kwdoL4/UZl+tIJy1sib4wV2GCt4AbB0Rs5J1TIz06YJhKb6noAyXDBsrAKNpwAu4lcF34PDiLF1DUM+d/Zw7sxdoQHB7w97aTXcPfOVm6pOs5xbapZ0HRo/40kVAnqWBheL6n3ctD3+soOZtcRWyRAw3y9Q0d3LvN47FPwZ842NeB/S9Tqr5dCqbMdA5KmPZhPhrKBeekAzWLD/s2u/AN58gBNsa+volsTxnAagaKfMyJrjbN8bch5xVXxL2cs6zdazLQMW66zEPRWsIUdxhYfK9qMxkDQ0r7qqOgk+Jdpd5bZdCfb3GeVZVdioAXWimOQ== X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 89c74fa4-5414-4323-ef99-08db65ada1a5 X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Jun 2023 10:14:22.1455 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 7W19TNvHb9/KQFvvVlGiyCVCGC9JhXaPXYDfyCeUniiw6oPElnKvvNl/iTbhBTVogqr9LErLcP/203EpvNf2Zlfx5rvVtPtgYxMar5/x6QM= X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW4PR03MB6968 On 05/06/2023 11:10 am, Jan Beulich wrote: > On 05.06.2023 12:05, Andrew Cooper wrote: >> Insecure the word being looked for here. Especially given the nature of the > Nit: Missing "is"? Oops yes. > >> sole caller, and the (correct) comment next to it. >> >> I've left the taint constant as 'U' as it's a rather more user-visible. >> >> Fixes: 82c0d3d491cc ("xen: Add an unsecure Taint type") >> Signed-off-by: Andrew Cooper > Acked-by: Jan Beulich Thanks, although I've got one extra hunk to add having just done the other half of the taint work. diff --git a/xen/common/kernel.c b/xen/common/kernel.c index 14ce6b40ce06..ff67f00e41bb 100644 --- a/xen/common/kernel.c +++ b/xen/common/kernel.c @@ -344,7 +344,7 @@ unsigned int tainted;   *  'E' - An error (e.g. a machine check exceptions) has been injected.   *  'H' - HVM forced emulation prefix is permitted.   *  'M' - Machine had a machine check experience. - *  'U' - Platform is unsecure (usually due to an errata on the platform). + *  'U' - Platform is insecure (usually due to an errata on the platform).   *  'S' - Out of spec CPU (One core has a feature incompatible with others).   *   *      The string is overwritten by the next call to print_taint(). >> I'm happy to change 'U' to 'I' if we think that no-one is going to be impacted >> by it. I just wasn't sure. > I agree with what you have done, i.e. leaving it as is. Yeah, I assumed that was going to be the preferred route. ~Andrew From xen-devel-bounces@lists.xenproject.org Mon Jun 05 10:28:22 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 05 Jun 2023 10:28:22 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543624.848750 (Exim 4.92) (envelope-from ) id 1q67RT-0002k9-TH; Mon, 05 Jun 2023 10:28:03 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543624.848750; Mon, 05 Jun 2023 10:28:03 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q67RT-0002k2-QP; Mon, 05 Jun 2023 10:28:03 +0000 Received: by outflank-mailman (input) for mailman id 543624; Mon, 05 Jun 2023 10:28:03 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q67RT-0002jw-9F for xen-devel@lists.xenproject.org; Mon, 05 Jun 2023 10:28:03 +0000 Received: from esa1.hc3370-68.iphmx.com (esa1.hc3370-68.iphmx.com [216.71.145.142]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id a3b11487-038b-11ee-8611-37d641c3527e; Mon, 05 Jun 2023 12:27:59 +0200 (CEST) Received: from mail-bn8nam11lp2169.outbound.protection.outlook.com (HELO NAM11-BN8-obe.outbound.protection.outlook.com) ([104.47.58.169]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 05 Jun 2023 06:27:55 -0400 Received: from DM6PR03MB5372.namprd03.prod.outlook.com (2603:10b6:5:24f::15) by PH7PR03MB7107.namprd03.prod.outlook.com (2603:10b6:510:2b3::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Mon, 5 Jun 2023 10:27:50 +0000 Received: from DM6PR03MB5372.namprd03.prod.outlook.com ([fe80::53f7:d006:1645:81e2]) by DM6PR03MB5372.namprd03.prod.outlook.com ([fe80::53f7:d006:1645:81e2%6]) with mapi id 15.20.6455.030; Mon, 5 Jun 2023 10:27:49 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: a3b11487-038b-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1685960879; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=/ZdXyEYA9GG2pDpXNCZbGMa6ZF07QnkHm18ZET2blfY=; b=ZiH04cYlmUuHUA+brHJRC1ORI0ERjk7vt8sngfpiYE/vez7l+LebzrGP Nr6VZQEmq7wziX89B71TPJDEmXtSlVesy9+gmCVL7hGzuHd4rxOtLNM1o ja6QZ5CuXefwqw6YJaxjtiq5gIVwI1B7owAW9etm0oCqvCv2v8QQx8SDD g=; X-IronPort-RemoteIP: 104.47.58.169 X-IronPort-MID: 112017602 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:8ApNyqvnf1/yoBHpwWAvii5jhufnVFZeMUV32f8akzHdYApBsoF/q tZmKWzVOPyJamqnfNx2a47g8UwFvZTXnYdrGQBpq3swFCpE+JbJXdiXEBz9bniYRiHhoOCLz O1FM4Wdc5pkJpP4jk3wWlQ0hSAkjclkfpKlVKiffHg3HVQ+IMsYoUoLs/YjhYJ1isSODQqIu Nfjy+XSI1bg0DNvWo4uw/vrRChH4rKq4Fv0gnRkPaoQ5AGGyyFMZH4iDfrZw0XQE9E88tGSH 44v/JnhlkvF8hEkDM+Sk7qTWiXmlZaLYGBiIlIPM0STqkAqSh4ai87XB9JFAatjsB2bnsgZ9 Tl4ncfYpTHFnEH7sL91vxFwS0mSNEDdkVPNCSDXXce7lyUqf5ZwqhnH4Y5f0YAwo45K7W9yG fMwEQsINgytjs2NyYmAS+JVl8MZHvbhM9ZK0p1g5Wmx4fcOZ7nmGvyPz/kImTA6i4ZJAOrUY NcfZXx3dhPcbhZTO1ARTpUjgOOvgXq5eDpdwL6XjfNvvy6Pk0osgP60bou9lt+iHK25mm6Co XnduWDwDRwAK9WbzRKO8262h/+JliT+MG4XPOThrKYz3wPLnAT/DjUoEmnkpNKk1HKeRvtfc mEU3S4Ig4QLoRnDot7VGkfQTGS/lhIVRdcWE+Q88wyL4qvS/wudQGMDS1ZpbN0gqd9zRjEw0 FKNt83mCCYps7CPT3+ZsLCOoluaKSUTaGMPeyIAZQ8E+MX45pE+iArVSdRuG7Lzicf6cRnyy T2XqCk1h50IkNUGka68+Djvnz2otrDNTwgo+h/QWGO1qA90DKagZoqn7nDB4PpAJZrfRV6E1 FAOg+CX6OEDC8HLmCHlaOkEArzv5/+DKzDaqVpuGYQxsTWr53OnO4tX5VlWNBc3GsUJYznkZ AnUoww5zJ1cJnyxdodsfpm8Tc8tyMDIH9P/V+uSacFSeJ9vbwyW1CZ0bEWU0ibml01Eubk9P pGWau62AHoaALghxz2zL88e1rkxzywWxm7JQ53/iRO93tKjiGW9TL4ENB6EaLA/5abd+QHNq Y8BZo2N1glVV/D4bm/P64kPIFsWLH89Q5frt8hQce3FKQ1jcI08N8LsLXoaU9QNt8xoei3gp xlRhmcwJILDuED6 IronPort-HdrOrdr: A9a23:jF0ala+YKBrm5xcAE7puk+DcI+orL9Y04lQ7vn2ZLiYlFfBw9v re+MjzsCWetN9/Yh0dcLy7V5VoI0mzyXcF2+ks1N6ZNWGN1VdAR7sC0WKN+UyDJwTOssJbyK d8Y+xfJbTLfD1HZB/BkWqFL+o= X-Talos-CUID: 9a23:YnOQ42Dl4lEqpyH6ExBc8RYINMkKSXTm93bbGl6/M1RWQrLAHA== X-Talos-MUID: =?us-ascii?q?9a23=3AUBswVwyNWEcCQHCbwrfbO/uHCkKaqJrpOh8Iuoh?= =?us-ascii?q?Yh+mZHCwpFje6iBKZbrZyfw=3D=3D?= X-IronPort-AV: E=Sophos;i="6.00,217,1681185600"; d="scan'208";a="112017602" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=hCQLgLU6AZd5epGW+VAeUY6DWT8pXGfYIh9dL5WPj4P4bs2Edt1pWUa9UEJ1nhXeM7SDxG/kSwvV4fcujhgsEZq2GVkz6RBcZA4g6KomgMicoOsF8kSevw6sGrw2rzUhbJbgvXQXrigFP5G+ywoQIryDrOKP761a5+BQcvB6Lc7mniIhQHmCZpN8+idiVfRWWLMTMPDW8zKbRD2lKRPAwfevAgAPBN8h6xP8vvYfYH2mFZ7D+rZClTWnBURrYP1K2hgY0eTevnHwN/r+ZhOIZP2IjUBxAXWRai9bldxUt17LH2Wp8wkxYFAzWGJEfrqqX12Xu49OAAJsA2RCq5fK6Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=/ZdXyEYA9GG2pDpXNCZbGMa6ZF07QnkHm18ZET2blfY=; b=VjJ0miidi1H6z3I0VQJEz0Galg2GG0PeMj2NhIv5s20wq+3y9g7Pt1ibCcEG5Tmduq1/H5nYjtjiCX39++vFA7rEaTF5XcGrgsSe/jHXDcVRQkokSSHZxwbzEbaMoO8j14CISBCqwny8VZUzq9DH9A13Z0r/nhI0yP00UoOCL50NGfU4691wa2S9YTni2Dq0mdNn5gv2aCnd2j5LHde27Rciyqb6jCm4nBTnm+FUg9OIMujxjYtAxqt3FH9tjW1vTHWbdNF6ILrqzXxihSkojAp7Xj50ZbBcNfq2wVlDFqMb+WWFHWO8XywvZ5wCosQUebR2mkjFIhCkWbshgtiMkg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=/ZdXyEYA9GG2pDpXNCZbGMa6ZF07QnkHm18ZET2blfY=; b=VQh293PeW14f++jWmK7HCqjbZTfHxzV7uZa4t5/p8KazxxqFxkOgwHS9/5WtOlwIhn0Tew/o0JtYJqGO1hPatzZpJJtxw0dfvFF8eoyjkZgQb7HmnZtQ9xtOQ6gtVMqjpsoxQKSdG3EAfEWRjEK9rkpBqVkvvnKmX6WBRNiIZQA= From: Ross Lagerwall To: Dave Hansen , "linux-kernel@vger.kernel.org" , "xen-devel@lists.xenproject.org" CC: Jan Beulich , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , "x86@kernel.org" , Juergen Gross , Boris Ostrovsky , Peter Jones , Konrad Rzeszutek Wilk Subject: Re: [PATCH v2] iscsi_ibft: Fix finding the iBFT under Xen Dom 0 Thread-Topic: [PATCH v2] iscsi_ibft: Fix finding the iBFT under Xen Dom 0 Thread-Index: AQHZkwepCLd5o5Ie30KiSFAaN3rMQq92Lj4AgAXcJLg= Date: Mon, 5 Jun 2023 10:27:49 +0000 Message-ID: References: <20230530150106.2703849-1-ross.lagerwall@citrix.com> <5aae0317-72cf-fc3c-6ce3-7e1fe1d6b699@intel.com> In-Reply-To: <5aae0317-72cf-fc3c-6ce3-7e1fe1d6b699@intel.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: msip_labels: authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: DM6PR03MB5372:EE_|PH7PR03MB7107:EE_ x-ms-office365-filtering-correlation-id: 06638622-d4d8-4885-d348-08db65af8322 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: aaoBm2R6pnbn0ECUZp1pGVQd6GyRYW9B3VySjN0p5zG/PJKSdYP6LIJ/OjpaHUThSiTxMZz1CZ665dZGQurYeEzhbS68IYePdH4YwjrkMMWGUzZdOldIXnyGot0kNJ5RndQvDMGb7yI+8xwrUpa5N3pdEnTkagI1WlLmxzd2PG96JQRC04PdsGvN5KufqX8DS1gcJT4BhkquA29/r0ZOyZm1Wj0bmFOzlcWFmP/CZ/bc40bjIG2fOrTSf+X6d7x9mbNhFqtuVVeqb4pQQjkyIHyzA/d9+ufK4L7/rJ0A5jx2ukSPrFKmyp2Es4RKEwT/mliDCo+vb/RD9sDKsJmCsgrKFtJCx33eu4U/Nq6Chayxp5BnwfEcGq+FR/G/gQRgc5hKUcKLcyDiML3ZYF/DYmoeih9WffEDucQklsvzHB21Kk3FO1bRqb1mCnZq/pct/SZ73lmyoBPH6VGAgnwjsLd69lXH+QhR1E+YvzmWVLPFidbrKKmlqAp4r0WH2g3XPzZGLaL+mm8CdNqrCmXlMshcHVjfg0PPlPxvt+Qnz5irrP2gmMPUsE/RajTUE6ZNrMjSSuikBtlfjZvfNtJMSJ1bDEMZSUiwnau2DZ4/rKUMh/s/3fKThiL2gUxBC49J x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DM6PR03MB5372.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(366004)(346002)(136003)(396003)(376002)(451199021)(83380400001)(7416002)(82960400001)(44832011)(110136005)(54906003)(33656002)(55016003)(478600001)(8676002)(8936002)(41300700001)(38070700005)(316002)(76116006)(66946007)(66476007)(52536014)(66556008)(91956017)(66446008)(122000001)(64756008)(4326008)(5660300002)(38100700002)(86362001)(7696005)(71200400001)(2906002)(6506007)(26005)(9686003)(53546011)(186003)(66899021);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?iso-8859-1?Q?WpZtLucy3dsQ96HGgJoQJIRSiN3emu1uRHE+jfuQiatGcV2zmYO2UfIrSk?= =?iso-8859-1?Q?7xrQR/bXTb0GSGgtEmcrFtfSr9Oljb0/YnVisYwdB/sRHhW2bFjG8McoCH?= =?iso-8859-1?Q?obFyxUF9FTA7hHCGynYEhwBBrDNfsYORXytjwhG5bVCwYRhFsPm9KOVq9h?= =?iso-8859-1?Q?bSDrRIrkQQETHWcycAh28aT3lxqZ37FmAmozAlC6Wr4QkQoDsWolnzLR3B?= =?iso-8859-1?Q?k02HgpQD7gf57Ut92IgJN8ojFkGFZOhfOG1dxNdwdPk3c873aKBj0QsTOD?= =?iso-8859-1?Q?S9EQpupMRwBzwrTCkzSgxKWV7YOFLPEnGuQ3LPlydXT6D5GazRfGAsKrHC?= =?iso-8859-1?Q?SkZWGlJNa6QLcR/A8wNLYF2mLeQIFTy1rpQDtEGtIf1przJ69HmBDLASIB?= =?iso-8859-1?Q?J5XdmPYl4osAakmevwa7kqGrxObN1qw1KvlskkLxckVs10TYNXJaITnHXe?= =?iso-8859-1?Q?3iLK4eqlbs1qw1PkS9m2x3pkq4bt9Bik7RodoTHcRa2cUD+l2bIh8INL93?= =?iso-8859-1?Q?88A6MHVS7//8mMMRbHTQh0WNTCKrKMsR4GiqhxMzfVrWmpdeGBLxX7hJ4F?= =?iso-8859-1?Q?ucl8nE0L3xTxi228ONcBXuZBd1Zukk1XOKvbxuSHNLORz1cycWlWVZ32gY?= =?iso-8859-1?Q?1imXmgX3HKJXI9yaTYnwidHXg0K2vz0U1HtLVK+iyRBm+VdcnYrlGlsRmQ?= =?iso-8859-1?Q?oj0BmVvc8ppOg9DiV+dVqi+MX5JcA1Hp4g2kA68sm+HkV24assrGaiVV1w?= =?iso-8859-1?Q?qVcdR6o9AZ/QDluckZAsGqmRa0q3rYkg/USh763MG9VvFIdLcpCn2rBX9j?= =?iso-8859-1?Q?Bl4KRnQDIX4jHzjdkJNF/hJ2Vfd+o+rNm5uJvoQpwE2DBAMMXgqK3GDxNe?= =?iso-8859-1?Q?zyWHQ400NuBFF3KNQqoo7uVWkOvz+0/ZI7YysemiIDy/33rODoDZNhPRCo?= =?iso-8859-1?Q?AECNrzq/3VQJdrQXhqPyXwMcpBDbGSprHQnS7RUTHUs6PEytrZLuQLRVlH?= =?iso-8859-1?Q?xuaQKwVaOdAayLOQXqcHrQjvqu+NmG7tUZITt+n77miPPNDyixi59pB9o4?= =?iso-8859-1?Q?dS6/CmH4RmZcdiiylfspM0XE2ihbkonhMidM5ewFfeAGrGa+r63j7zrz/0?= =?iso-8859-1?Q?fI0+IF+dLiBWdklhCRLKySRTP2m2/OSo0srt58EsrS0SvBRCxmPXlqdFR1?= =?iso-8859-1?Q?6nfM6zUwY9rWP2JVg6xHUxr6+0Z1cf0Oer2qBwxl2ky4eX5S5WD98eWMDl?= =?iso-8859-1?Q?aAEQzb5pqEEK6BZdpACj1ID5i+dSSl1GXI8dRNNga4l5TQMB5YzHKu3/iD?= =?iso-8859-1?Q?WHrVsc6Z/YJA3ym9rYZY7KXGxjlRW24a2oyOzuu2A6aOTSCuZR0ZcU+rfv?= =?iso-8859-1?Q?IgLuNtyCRaygtsrxKJi1MiCwF1gCOFoAffD/zXJOsl+tMZJeoJfliPzsH7?= =?iso-8859-1?Q?1du66wR8P1sHfBDAShubxCQrDiJR0mUGDDUc7AqjfiOhwv0VHjCRme+IAf?= =?iso-8859-1?Q?ADvmK/p5uw93gZ91u2JGAjG0o60Ur+69pTcAWg1xIPyWn9ZZxpbOuNxLg8?= =?iso-8859-1?Q?Kul9Ixse21OTIyP4VxVhoMv7B54kRPGZDf7MmtMh4Pi592Ogar3FoHYzCi?= =?iso-8859-1?Q?UEaXt9lsbb+9LLNLALBelaJlyT37Qj1kC1?= Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: =?iso-8859-1?Q?C9TDGfOL9d38y5dP35oqVMokdLrONZDHBbT8FIANU+12UJDN1M2r9lvKzO?= =?iso-8859-1?Q?6dM4NIRGL1SpLqPyyAQL/6/srJDUPubuwChRE/0mPli3wDvkLcVc9mquG+?= =?iso-8859-1?Q?+/biRiEjPCW7lRsfIZ1jwyEzYDoCZkKANYx2EyEhWIFvvFLpUac7sUe12T?= =?iso-8859-1?Q?1tq51z0uRYqdC0ynWTv3Kyj0jjkablToP1LzqKO2B0FSN09gc0Q9Bj33Jc?= =?iso-8859-1?Q?xn7S/jr+3lmWCCbCPdGOdWkWV+arJxkEso6/gMxtAAR0zxBlgL+D2SFc+1?= =?iso-8859-1?Q?m6QJ2B+tAZcurnGho2l6USpW+TSPA+sepHywYT3R/fsNQIpMOIYInbAMVp?= =?iso-8859-1?Q?BOCgNvRsiJqzJ7FinXX2BYR2QW0tygr0iE/s8b645G+bPDWfWHUyI5PdZO?= =?iso-8859-1?Q?GHf9aR6IqP1Tt8bUTf9NTtFj/k1seeZGQMUrKWrS3qrE7E95xCN9NMVV1+?= =?iso-8859-1?Q?t3/KVOwgCXct/dOEAfaIiV4FNvHtWFCee1t5I/WleYgYxzem9S4Ua1zcWn?= =?iso-8859-1?Q?H8rgyhIzXboMrPGRHbgUzo7S2ZGVGbLEmEQLYmozMtdAbvUlsvmmtJRgdN?= =?iso-8859-1?Q?y7hUfwEtYh0ezf1qHxqjUWSeWtQ10Hxkodw0k/0i8XLHbEH/cgDlIqVQEc?= =?iso-8859-1?Q?ccYYnrrshgGQWIlzLa1QB+wGLX65MsWcOvKBWiLJtkqvT7os2qaZnuqHXh?= =?iso-8859-1?Q?3l7YTW0cAV8h/6wUJHIYOlFF+v+2LgkznO1M1gusGnxe5Lt+Md0t01hl8H?= =?iso-8859-1?Q?wZ9IGAzcCkN3GHhqsYBZvz/yHB0JqKm5JHw8Wd2Er8Tkdu8+VCDC23NXrh?= =?iso-8859-1?Q?Pf1I2Tqah1ouV8ZRQB7TUvH/tOJyO5FT1vX1kLAjDWqSoRt7eBQN8vTVK7?= =?iso-8859-1?Q?dDneK9HXS2dSEuHjld+wfDQtjN0ycSqmN4cqXVQeHm9VKgQl4gIbony1oQ?= =?iso-8859-1?Q?idJK8vQbOND1nZ5jkEU02/KUvUx/wJQWBM18KhBwRIv/IX4BKFvU528SNe?= =?iso-8859-1?Q?VSBDO5dXOWp5nnCN3b0T5nKyPdt6fMEvHKhekMX36yxZgG/bUkEyGud4Lu?= =?iso-8859-1?Q?F9zzF1d1gsvgPXD3WjeG1fy8pKUAkxX/9k8plzoQiGmu?= X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: DM6PR03MB5372.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 06638622-d4d8-4885-d348-08db65af8322 X-MS-Exchange-CrossTenant-originalarrivaltime: 05 Jun 2023 10:27:49.6451 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: FfH0CIAt683xSBC9mXFye8EtZ4Oum1MAmd5IQ/KT7Lq/c+4Su3w6Q0c8PyRHFKj7yQbbExmqsXHJCLoZhsdCOBoZ6Pi4ev8LtRLezbrAAIc= X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH7PR03MB7107 > From: Dave Hansen =0A= > Sent: Thursday, June 1, 2023 5:57 PM=0A= > To: Ross Lagerwall ; linux-kernel@vger.kernel.= org ; xen-devel@lists.xenproject.org =0A= > Cc: Jan Beulich ; Thomas Gleixner = ; Ingo Molnar ; Borislav Petkov ; Dave Hans= en ; x86@kernel.org ; Juergen = Gross ; Boris Ostrovsky ; Pete= r Jones ; Konrad Rzeszutek Wilk =0A= > Subject: Re: [PATCH v2] iscsi_ibft: Fix finding the iBFT under Xen Dom 0 = =0A= > =A0=0A= > On 5/30/23 08:01, Ross Lagerwall wrote:=0A= > > Since firmware doesn't indicate the iBFT in the E820, add a reserved=0A= > > region so that it gets identity mapped when running as Dom 0 so that it= =0A= > > is possible to search for it. Move the call to reserve_ibft_region()=0A= > > later so that it is called after the Xen identity mapping adjustments= =0A= > > are applied.=0A= > > =0A= > > Finally, instead of using isa_bus_to_virt() which doesn't do the right= =0A= > > thing under Xen, use early_memremap() like the dmi_scan code does.=0A= > =0A= > This is connecting Xen, iSCSI and x86.=A0 Some background here would be= =0A= > *really* nice for dummies like me that deal heavily in only one of those= =0A= > three.=0A= > =0A= > One or two sentences like this:=0A= > =0A= > =A0=A0=A0=A0=A0=A0=A0 Firmware can provide an iSCSI-specific table called= the iBFT=0A= > =A0=A0=A0=A0=A0=A0=A0 which helps the OS boot from iSCSI devices.=0A= > =0A= > can go a long way for dummies like me.=A0 As could some background about= =0A= > why this:=0A= > =0A= > =A0=A0=A0=A0=A0=A0=A0 ... add a reserved region so that it gets identity = mapped when=0A= > =A0=A0=A0=A0=A0=A0=A0 running as Dom 0 so that it is possible to search f= or it.=0A= > =0A= > These are all English words, but off the top of my head, I have no idea= =0A= > why reserved regions get identity mapped when running as Dom 0 or why=0A= > that makes it possible to search.=0A= > =0A= > The addresses and size here:=0A= > =0A= > > +#ifdef CONFIG_ISCSI_IBFT_FIND=0A= > > +=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 /* Reserve 0.5 MiB to 1 MiB regio= n so iBFT can be found */=0A= > > +=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 xen_e820_table.entries[xen_e820_t= able.nr_entries].addr =3D 0x80000;=0A= > > +=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 xen_e820_table.entries[xen_e820_t= able.nr_entries].size =3D 0x80000;=0A= > > +=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 xen_e820_table.entries[xen_e820_t= able.nr_entries].type =3D E820_TYPE_RESERVED;=0A= > > +=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 xen_e820_table.nr_entries++;=0A= > > +#endif=0A= > =0A= > also appear to be conjured out of thin air.=0A= > =0A= > As does the move of:=0A= > =0A= > > +=A0=A0=A0=A0 reserve_ibft_region();=0A= > =0A= > I'm sure I can go figure this all out with some research.=A0 But, I'd=0A= > really appreciate some extra effort from you in this changelog to save=0A= > me the time.=A0 I bet you can explain it a lot more efficiently than I ca= n=0A= > go figure it out.=0A= =0A= Sure, I will resend with an expanded commit message.=0A= =0A= Ross= From xen-devel-bounces@lists.xenproject.org Mon Jun 05 10:29:04 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 05 Jun 2023 10:29:04 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543629.848760 (Exim 4.92) (envelope-from ) id 1q67SS-0003F4-8M; Mon, 05 Jun 2023 10:29:04 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543629.848760; Mon, 05 Jun 2023 10:29:04 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q67SS-0003Ex-3x; Mon, 05 Jun 2023 10:29:04 +0000 Received: by outflank-mailman (input) for mailman id 543629; Mon, 05 Jun 2023 10:29:03 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q67SQ-00038J-VP for xen-devel@lists.xenproject.org; Mon, 05 Jun 2023 10:29:02 +0000 Received: from esa1.hc3370-68.iphmx.com (esa1.hc3370-68.iphmx.com [216.71.145.142]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id c8be62bd-038b-11ee-b232-6b7b168915f2; Mon, 05 Jun 2023 12:29:01 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: c8be62bd-038b-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1685960941; h=from:to:cc:subject:date:message-id:mime-version: content-transfer-encoding; bh=XEJd+pAzFKvWLgVbLt0nvjffQxQGFvnEOlIKj5Xp5WM=; b=VDu4sBIvE0MEgbrqamTQekJlpaQwjyxToqqAEDSZwhoMUKplT/IRr6kD Z9CKBSpW98xa0YmYVWpduuAxeALFhoIRCUmHh2IP8a6pmyEUvuCNcYYuM OP4hxsayEEK0UCAqfQxR6Vv6HY6UZMrjqMrQi2W56S1p+q1l2TnqdDAF2 4=; Authentication-Results: esa1.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none X-SBRS: 4.0 X-MesageID: 112017684 X-Ironport-Server: esa1.hc3370-68.iphmx.com X-Remote-IP: 162.221.156.123 X-Policy: $RELAYED IronPort-Data: A9a23:uLecbqxMDsqY+lKL2Nl6t+drwSrEfRIJ4+MujC+fZmUNrF6WrkVSz DFJDDiPPqrcYmTyKNl0b42w8BwGvJ6HnddrHlM4+CAxQypGp/SeCIXCJC8cHc8wwu7rFxs7s ppEOrEsCOhuExcwcz/0auCJQUFUjP3OHfykTrafYEidfCc8IA85kxVvhuUltYBhhNm9Emult Mj75sbSIzdJ4RYtWo4vw/zF8EsHUMja4mtC5QRgPawT5TcyqlFOZH4hDfDpR5fHatE88t6SH 47r0Ly/92XFyBYhYvvNfmHTKxBirhb6ZGBiu1IOM0SQqkEqSh8ai87XAME0e0ZP4whlqvgqo Dl7WT5cfi9yVkHEsLx1vxC1iEiSN4UekFPMCSDXXcB+UyQq2pYjqhljJBheAGEWxgp4KX9Nx eEFdHMWVR28oM2nzeP8EOZzrMt2eaEHPKtH0p1h5TTQDPJgSpHfWaTao9Rf2V/chOgXQ6yYP ZBAL2MyMlKZOUYn1lQ/UfrSmM+ygWLkNTlRp1+PuqMz50DYzRBr0airO93QEjCPbZwMxB7B+ TyWowwVBDkhN9unyWeowEiAm+n/rw/Rf441RLeBo6sCbFq7mTVIVUx+uUGAif24jFOuHtFSM UoZ/gIwoqUosk+mVN/wW1u/unHslg4RXZ9cHvM37CmJy7HI+ECJC24cVDlDZdc68sgsSlQCy lCNj/vtBDpyrKeST3ONsLuZxRu4IQAcKW4PY39CQQZty9Xqvox1jhvJVdtlOKq0iMDlXzD23 z2O6iM5gt07j8QGyqG69lDvmC+3q97CSQtdzgfYRGW+9StieZWoIYev7DDz5/FaLZ3fSUKdp n8agMuPxOcUBJqJmWqGR+BlNLSo4fmCGCfRjV5mA98q8DHF02aheoZd+xlkKUtpO9pCcjjsC GfD6V1555JJOnauK6htbOqZCMMs16HsPdfoTPbZapxJeJcZSeOc1HgwPwjKhTmryRVy1/hlY v93bPpAE14ECpR60Wb1XNwQ7pgE1y1vgjncWrr0mkHPPaWlWFaZTrIMMV2rZ+8/7b+ZrAi9z +uzJ/dm2D0EDrSgP3C/HZo7aAlTcCNlXcyeR9l/LLbrH+ZwJI025xY9K5sFcpctoalan/ygE pqVCh4BkwqXaZEqxGy3hpFfhFHHB80XQZETZ3ZE0bOUN58LP+6SAF83LcdfQFXe3LULIQRIZ /cEYd6cJf9EVy7K/T8QBbGk8tw/JUzw2FLSYXX7CNTaQ3KHb1aQkuIIgyO1rHVeZsZJnZVWT 0KcOvPzHsNYGlUK4Df+Y/Oz1VKh1UXxa8orN3Yk1uJ7IR22mKAzcnyZsxPCC51UQfk17mfAh ln+7NZxjbWlnrLZB/GV3f7b8972T7MldqeYdkGChYuL2eDh1jLL6ed9vCygJFgxiEucFH2eW Nho IronPort-HdrOrdr: A9a23:/i0o6aisV0riEfwQ7+rUAaDqj3BQXwh13DAbv31ZSRFFG/FwyP rCoB1L73XJYWgqM03I+OrwXpVoJEmxyXcb2/h0AV7PZniFhILKFvAA0WKB+UyYJ8SWzIc0us kBT0EXMqyJMbEQt7ec3ODXKadE/DCyytHSuQ6S9QYfcShaL4VbqytpAAeSFUN7ACFAGJoCDZ KZou5KvSCpd3g7ZtmyQiBtZZm3m/T70LbdJTIWDR8u7weDyRuu9b7BChCdmjMTSSlGz7sO+X XM1yb5+qKgmfemzQK07R6g071m3P/ajvdTDs2FjcYYbh3qlwaTfYxkH4aPuTgkydvflmrDxL P3wisIDoBW0Tf8b2u1qRzi103LyzA18ULvzleenD/KvdH5bChSMbsKuatpNj/ir2YwttB116 xGm0iDsYBMMB/GlCPho/DVShBRkFauq3ZKq59Zs5Vma/pSVFZtl/1XwKoVKuZ3IMvC0vFRLA C6NrCV2B5UGWnqEEwx8FMfjOBEZU5DYitucnJyx/B97AIm5kyR73FotfD3zU1whK7VDaM0k9 j5Dg== X-Talos-CUID: =?us-ascii?q?9a23=3A8yOmEWu6MrXKNusv1yAW4XxD6Is7cU3A0SuTOHS?= =?us-ascii?q?1NkFGWbDEDgWf54lrxp8=3D?= X-Talos-MUID: 9a23:ikk9dwZgOXPQXuBTjDzrvDE/GfVSz7moOHIhu7IKnJmODHkl X-IronPort-AV: E=Sophos;i="6.00,217,1681185600"; d="scan'208";a="112017684" From: Ross Lagerwall To: , CC: Jan Beulich , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , , Juergen Gross , Boris Ostrovsky , Peter Jones , Konrad Rzeszutek Wilk , "Ross Lagerwall" Subject: [PATCH v3] iscsi_ibft: Fix finding the iBFT under Xen Dom 0 Date: Mon, 5 Jun 2023 11:28:40 +0100 Message-ID: <20230605102840.1521549-1-ross.lagerwall@citrix.com> X-Mailer: git-send-email 2.31.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain To facilitate diskless iSCSI boot, the firmware can place a table of configuration details in memory called the iBFT. The presence of this table is not specified, nor is the precise location (and it's not in the E820) so the kernel has to search for a magic marker to find it. When running under Xen, Dom 0 does not have access to the entire host's memory, only certain regions which are identity-mapped which means that the pseudo-physical address in Dom0 == real host physical address. Add the iBFT search bounds as a reserved region which causes it to be identity-mapped in xen_set_identity_and_remap_chunk() which allows Dom0 access to the specific physical memory to correctly search for the iBFT magic marker (and later access the full table). This necessitates moving the call to reserve_ibft_region() somewhat later so that it is called after e820__memory_setup() which is when the Xen identity mapping adjustments are applied. The precise location of the call is not too important so I've put it alongside dmi_setup() which does similar scanning of memory for configuration tables. Finally in the iBFT find code, instead of using isa_bus_to_virt() which doesn't do the right thing under Xen, use early_memremap() like the dmi_setup() code does. The result of these changes is that it is possible to boot a diskless Xen + Dom0 running off an iSCSI disk whereas previously it would fail to find the iBFT and consequently, the iSCSI root disk. Signed-off-by: Ross Lagerwall --- In v3: * Expanded commit message. * Used IBFT_ constants. arch/x86/kernel/setup.c | 2 +- arch/x86/xen/setup.c | 28 +++++++++++++++++++--------- drivers/firmware/iscsi_ibft_find.c | 26 +++++++++++++++++--------- include/linux/iscsi_ibft.h | 10 +++++++++- 4 files changed, 46 insertions(+), 20 deletions(-) diff --git a/arch/x86/kernel/setup.c b/arch/x86/kernel/setup.c index 16babff771bd..616b80507abd 100644 --- a/arch/x86/kernel/setup.c +++ b/arch/x86/kernel/setup.c @@ -796,7 +796,6 @@ static void __init early_reserve_memory(void) memblock_x86_reserve_range_setup_data(); - reserve_ibft_region(); reserve_bios_regions(); trim_snb_memory(); } @@ -1032,6 +1031,7 @@ void __init setup_arch(char **cmdline_p) if (efi_enabled(EFI_BOOT)) efi_init(); + reserve_ibft_region(); dmi_setup(); /* diff --git a/arch/x86/xen/setup.c b/arch/x86/xen/setup.c index c2be3efb2ba0..8b5cf7bb1f47 100644 --- a/arch/x86/xen/setup.c +++ b/arch/x86/xen/setup.c @@ -6,6 +6,7 @@ */ #include +#include #include #include #include @@ -764,17 +765,26 @@ char * __init xen_memory_setup(void) BUG_ON(memmap.nr_entries == 0); xen_e820_table.nr_entries = memmap.nr_entries; - /* - * Xen won't allow a 1:1 mapping to be created to UNUSABLE - * regions, so if we're using the machine memory map leave the - * region as RAM as it is in the pseudo-physical map. - * - * UNUSABLE regions in domUs are not handled and will need - * a patch in the future. - */ - if (xen_initial_domain()) + if (xen_initial_domain()) { + /* + * Xen won't allow a 1:1 mapping to be created to UNUSABLE + * regions, so if we're using the machine memory map leave the + * region as RAM as it is in the pseudo-physical map. + * + * UNUSABLE regions in domUs are not handled and will need + * a patch in the future. + */ xen_ignore_unusable(); +#ifdef CONFIG_ISCSI_IBFT_FIND + /* Reserve 0.5 MiB to 1 MiB region so iBFT can be found */ + xen_e820_table.entries[xen_e820_table.nr_entries].addr = IBFT_START; + xen_e820_table.entries[xen_e820_table.nr_entries].size = IBFT_END - IBFT_START; + xen_e820_table.entries[xen_e820_table.nr_entries].type = E820_TYPE_RESERVED; + xen_e820_table.nr_entries++; +#endif + } + /* Make sure the Xen-supplied memory map is well-ordered. */ e820__update_table(&xen_e820_table); diff --git a/drivers/firmware/iscsi_ibft_find.c b/drivers/firmware/iscsi_ibft_find.c index 94b49ccd23ac..71f51303c2ba 100644 --- a/drivers/firmware/iscsi_ibft_find.c +++ b/drivers/firmware/iscsi_ibft_find.c @@ -42,8 +42,6 @@ static const struct { }; #define IBFT_SIGN_LEN 4 -#define IBFT_START 0x80000 /* 512kB */ -#define IBFT_END 0x100000 /* 1MB */ #define VGA_MEM 0xA0000 /* VGA buffer */ #define VGA_SIZE 0x20000 /* 128kB */ @@ -52,9 +50,9 @@ static const struct { */ void __init reserve_ibft_region(void) { - unsigned long pos; + unsigned long pos, virt_pos = 0; unsigned int len = 0; - void *virt; + void *virt = NULL; int i; ibft_phys_addr = 0; @@ -70,13 +68,20 @@ void __init reserve_ibft_region(void) * so skip that area */ if (pos == VGA_MEM) pos += VGA_SIZE; - virt = isa_bus_to_virt(pos); + + /* Map page by page */ + if (offset_in_page(pos) == 0) { + if (virt) + early_memunmap(virt, PAGE_SIZE); + virt = early_memremap_ro(pos, PAGE_SIZE); + virt_pos = pos; + } for (i = 0; i < ARRAY_SIZE(ibft_signs); i++) { - if (memcmp(virt, ibft_signs[i].sign, IBFT_SIGN_LEN) == - 0) { + if (memcmp(virt + (pos - virt_pos), ibft_signs[i].sign, + IBFT_SIGN_LEN) == 0) { unsigned long *addr = - (unsigned long *)isa_bus_to_virt(pos + 4); + (unsigned long *)(virt + pos - virt_pos + 4); len = *addr; /* if the length of the table extends past 1M, * the table cannot be valid. */ @@ -84,9 +89,12 @@ void __init reserve_ibft_region(void) ibft_phys_addr = pos; memblock_reserve(ibft_phys_addr, PAGE_ALIGN(len)); pr_info("iBFT found at %pa.\n", &ibft_phys_addr); - return; + goto out; } } } } + +out: + early_memunmap(virt, PAGE_SIZE); } diff --git a/include/linux/iscsi_ibft.h b/include/linux/iscsi_ibft.h index 790e7fcfc1a6..e2742748104d 100644 --- a/include/linux/iscsi_ibft.h +++ b/include/linux/iscsi_ibft.h @@ -21,12 +21,20 @@ */ extern phys_addr_t ibft_phys_addr; +#ifdef CONFIG_ISCSI_IBFT_FIND + /* * Routine used to find and reserve the iSCSI Boot Format Table. The * physical address is set in the ibft_phys_addr variable. */ -#ifdef CONFIG_ISCSI_IBFT_FIND void reserve_ibft_region(void); + +/* + * Physical bounds to search for the iSCSI Boot Format Table. + */ +#define IBFT_START 0x80000 /* 512kB */ +#define IBFT_END 0x100000 /* 1MB */ + #else static inline void reserve_ibft_region(void) {} #endif -- 2.31.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 05 10:29:38 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 05 Jun 2023 10:29:38 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543634.848770 (Exim 4.92) (envelope-from ) id 1q67Sy-0003lN-FS; Mon, 05 Jun 2023 10:29:36 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543634.848770; Mon, 05 Jun 2023 10:29:36 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q67Sy-0003lE-Cf; Mon, 05 Jun 2023 10:29:36 +0000 Received: by outflank-mailman (input) for mailman id 543634; Mon, 05 Jun 2023 10:29:34 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q67Sw-0003ko-Hw for xen-devel@lists.xenproject.org; Mon, 05 Jun 2023 10:29:34 +0000 Received: from EUR05-VI1-obe.outbound.protection.outlook.com (mail-vi1eur05on2061c.outbound.protection.outlook.com [2a01:111:f400:7d00::61c]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id db24ad43-038b-11ee-8611-37d641c3527e; Mon, 05 Jun 2023 12:29:31 +0200 (CEST) Received: from DB7PR05CA0058.eurprd05.prod.outlook.com (2603:10a6:10:2e::35) by AS2PR08MB9917.eurprd08.prod.outlook.com (2603:10a6:20b:55f::5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.32; Mon, 5 Jun 2023 10:29:24 +0000 Received: from DBAEUR03FT041.eop-EUR03.prod.protection.outlook.com (2603:10a6:10:2e:cafe::9a) by DB7PR05CA0058.outlook.office365.com (2603:10a6:10:2e::35) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33 via Frontend Transport; Mon, 5 Jun 2023 10:29:24 +0000 Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by DBAEUR03FT041.mail.protection.outlook.com (100.127.142.233) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.18 via Frontend Transport; Mon, 5 Jun 2023 10:29:24 +0000 Received: ("Tessian outbound 99a3040377ca:v136"); Mon, 05 Jun 2023 10:29:24 +0000 Received: from e7377f1e8559.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 52FC8C4E-2310-4592-A808-3B132A613F04.1; Mon, 05 Jun 2023 10:29:17 +0000 Received: from EUR05-DB8-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id e7377f1e8559.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Mon, 05 Jun 2023 10:29:17 +0000 Received: from AM6PR08MB3784.eurprd08.prod.outlook.com (2603:10a6:20b:85::25) by AS2PR08MB10265.eurprd08.prod.outlook.com (2603:10a6:20b:62c::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.32; Mon, 5 Jun 2023 10:29:14 +0000 Received: from AM6PR08MB3784.eurprd08.prod.outlook.com ([fe80::5e17:39a6:eec7:c482]) by AM6PR08MB3784.eurprd08.prod.outlook.com ([fe80::5e17:39a6:eec7:c482%4]) with mapi id 15.20.6455.030; Mon, 5 Jun 2023 10:29:14 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: db24ad43-038b-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=EKq8+07ExRSA2xea1BXtN/n8cB6r10q4EkwGt/WfaNw=; b=ysns4R6YfdK9PsZVZZ/Z+3LORL/qgrB6tuZczY+gCEWOxcBYsE6LLprYbxD3viBehST3B4uueYBCBY5Bjz7v4+T7EAjjCjNORD0pzXFP66WWbHaGOkFP77D25FKlr4kXbFyBrl4BbJLiGSeq5YOJ0JLLh7IZxy1AH6dHpOz6qdU= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C X-CheckRecipientChecked: true X-CR-MTA-CID: 74f2cd6ef4f48062 X-CR-MTA-TID: 64aa7808 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=eoCxC3RvnDKvHtlgASVI+5Sq5bp89xjE6LKbVah48nJLJWA+sLfSzlZnMSPsXwXP3XwmgHdE5GVeuDGbFyPxvftUw++Sq9QGUg6Cd1ePgckHvkUkUP0PrLofMxabyWCXNz/73uk0oHj3Rc4vc0kSpIJkL0G6Rvd6vTFjuuYDK506nDUQb4SuDCIkUz2kmQnGKQp6pEzdwvXy/hVA5tdfJ+7s6aG2wG348ld2GGnvIjzxU+tooocWJbT+lMjiZqM4NQZvbthOMJC3YQ5Bhd6Dtx+uyLr2MtYf7QNr1aDV9fX1NQYcrqt5Cyk9903aB9CpHzpJDqnQTEC1UhjqQ49jdg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=EKq8+07ExRSA2xea1BXtN/n8cB6r10q4EkwGt/WfaNw=; b=iXyzb4c+mMuP4jLySKxAaTfUfhtBaVkGGHBKZrmWcQnqnz9/x5ul0d1RoeFi8+U/51cZgRy7evhOwO+lIdZArnWKMkRCC0/h0a5khWvVyO0MQMPRvs/V3rnrJ+lzw3QugFz33Ctzk71fxEhMpx0QFL9FZeah4S9JlK4dl85uSIZlrzhev8c0mWVGoPSJtOcueHYYNJXYMdXKLhLzx7E1Z03mZPFKvOCTesilLun4vOwUZ35c24PiTukbaYlt84kMfKe6zkpi8zBeu22CCjxnWHHbWbhtSyVK/y8TLGa+oCmerhWw+7mb/g9XIBHU2WWzcXwJptTa6uyx8dm3FVPczA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=EKq8+07ExRSA2xea1BXtN/n8cB6r10q4EkwGt/WfaNw=; b=ysns4R6YfdK9PsZVZZ/Z+3LORL/qgrB6tuZczY+gCEWOxcBYsE6LLprYbxD3viBehST3B4uueYBCBY5Bjz7v4+T7EAjjCjNORD0pzXFP66WWbHaGOkFP77D25FKlr4kXbFyBrl4BbJLiGSeq5YOJ0JLLh7IZxy1AH6dHpOz6qdU= From: Bertrand Marquis To: Andrew Cooper CC: Xen-devel , Jan Beulich , =?utf-8?B?Um9nZXIgUGF1IE1vbm7DqQ==?= , Wei Liu , Stefano Stabellini , Julien Grall , Volodymyr Babchuk Subject: Re: [PATCH] xen: Fix incorrect taint constant Thread-Topic: [PATCH] xen: Fix incorrect taint constant Thread-Index: AQHZl5VEGEwt80GVFUeB/y+61w4aBa98Ae8A Date: Mon, 5 Jun 2023 10:29:14 +0000 Message-ID: References: <20230605100512.1748007-1-andrew.cooper3@citrix.com> In-Reply-To: <20230605100512.1748007-1-andrew.cooper3@citrix.com> Accept-Language: en-GB, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-mailer: Apple Mail (2.3731.600.7) Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-traffictypediagnostic: AM6PR08MB3784:EE_|AS2PR08MB10265:EE_|DBAEUR03FT041:EE_|AS2PR08MB9917:EE_ X-MS-Office365-Filtering-Correlation-Id: a4bafc82-1919-4765-83e6-08db65afbb6c x-checkrecipientrouted: true nodisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: xyNWPE7PMRbYwIRpdKj/PW8sJ7lCxi2GLj2LOztP6zfwnfWjl4gGMZBs47JaskqADw/Yx4j6nZ8xcIglfmg/ZHJArBvPA2vzkfEvPWNg29+bsSjqCRTZaMCSwE8KSdwa+vkgCEuuUUjfZat/OuquoMiBf98tA1XTnrpeTpQtQoRaJb/sW8thuSObhV7JC0Jl6sfyRNLCyLJ059viW8ttY09YTpxwX1PQTKrAVIqeTYWWI7oJJiu5ovv/Qy1pBY33ZIYfYphXA8BOxutS/eksQS5yfTzGNnqbhQlR4iip1Lh5tSXfKkS9VGd2ij94MoGIbz9ks6KxrQGxw5+y6mJAnJXFB+/Xlx5sxJoxQ6bssFznsRm83OCM7pYpXPUctx2EoNpVo6EazXWBt5Wu/qLyRpw3RQOnn+49a/G9wAVu8xrpBLMJJzfFLCPYUVBPd/MtwaFF67y9InUbAd+dGouZi9ekixoDVUW8FY9h0OVF/ISUWaPLUlMWrR3NnjkaQ6Hb8FR1NOJxSiHQ5rEMYR6I4LxrdgTxca/tsV0/S8ZrOjOChX06DKS760qvOodXfMzTDlpojt2t9rTUUZZvc284kUyk4MFQU919dKJZzIjkq3/BKg6+2iDxuf9wDGofPCBknJy+IMDzaGQz2pb9r7isvA== X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM6PR08MB3784.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(366004)(346002)(39860400002)(376002)(136003)(396003)(451199021)(54906003)(478600001)(91956017)(6916009)(8936002)(8676002)(4326008)(76116006)(66946007)(66556008)(66476007)(64756008)(122000001)(316002)(38100700002)(66446008)(41300700001)(2616005)(186003)(83380400001)(71200400001)(6486002)(53546011)(6512007)(26005)(6506007)(33656002)(86362001)(5660300002)(38070700005)(2906002)(36756003)(45980500001);DIR:OUT;SFP:1101; Content-Type: text/plain; charset="utf-8" Content-ID: <5A4422803FA18441AB3A64D937008EE0@eurprd08.prod.outlook.com> Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS2PR08MB10265 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: DBAEUR03FT041.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: 19bc3425-63fa-4154-53a6-08db65afb5d5 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: mz009dudKYe7blBIxMu+ls6sc51aTjdMpURhni4SFGhTxmko/uE0f7gFEEfX0c1iNh3O3IrEDxhHnD8kgRFECR4fTEZxmDbYNQaZTOl1PvCZeegeJ9Y9vWGkBiBalqQX0GcG8+dmEHIXGrksuAgVSPv3hJwnJ/bSKO9YJ5I1BmKnzX1Pg3SjIAd5jkmn+1wHcKPzQfyaBLEnIsEk5kFETh+hnQL61p2rADOlkf1XpQw/Nz2nfjT8QxHDWFGjG9QvjtEZlaE8yLVBDfQgbihOKg3unquMHPNZldQBc9seLpXEX6s4xZBve5l3X9es8HAE06+pxOwNkeLHjPnPWF2VO7vVn97XA8K4tbboCr+wZVwytwuR2mWxJBzmgbt2BfOQ4YHS1f6/C9FwrOPQOXIBWGxR0Yr0W8DlQDPATBT/ShjdBCnIjAwt+Sj+gbWBwgs9Qzc8jRXQ8vVxuyWFKnMWRrX24l7rFhRdQQBjdPU1aM01ycyBPLkAXNulDFoQ2Ioc09aZ3cPacyvH4wjkb5f9jlI7pRFkKxwDkG/5nud8SL4Z8BblrAr5A20ANePBnLmh6Z1oOYb7yPiX8Ls7C6No1ixbmrOz5qYDeSUKEw1faGxwLFf32gMjPicRJJJo0fOSd9dIlvFVZgLQ9fCl6HyFg1EGBYY1snTKbVzWpev4f2wjzi9dVfbA0nWFIdE6vbZWEST1dstAcEzQF0cOrSVZFBzUNGGTBYj3IQgoHrOBkncnPXqNFSdzvmN3D2W9/6B0 X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230028)(4636009)(376002)(346002)(136003)(39860400002)(396003)(451199021)(46966006)(40470700004)(36840700001)(41300700001)(316002)(54906003)(356005)(81166007)(82740400003)(5660300002)(2906002)(4326008)(70586007)(70206006)(6862004)(8676002)(8936002)(478600001)(40460700003)(6486002)(82310400005)(86362001)(186003)(36756003)(2616005)(107886003)(53546011)(336012)(33656002)(36860700001)(40480700001)(26005)(6506007)(47076005)(6512007)(83380400001);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Jun 2023 10:29:24.1190 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: a4bafc82-1919-4765-83e6-08db65afbb6c X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: DBAEUR03FT041.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS2PR08MB9917 SGkgQW5kcmV3LA0KDQo+IE9uIDUgSnVuIDIwMjMsIGF0IDEyOjA1LCBBbmRyZXcgQ29vcGVyIDxh bmRyZXcuY29vcGVyM0BjaXRyaXguY29tPiB3cm90ZToNCj4gDQo+IEluc2VjdXJlIHRoZSB3b3Jk IGJlaW5nIGxvb2tlZCBmb3IgaGVyZS4gIEVzcGVjaWFsbHkgZ2l2ZW4gdGhlIG5hdHVyZSBvZiB0 aGUNCj4gc29sZSBjYWxsZXIsIGFuZCB0aGUgKGNvcnJlY3QpIGNvbW1lbnQgbmV4dCB0byBpdC4N Cg0KR29vZCBmaW5kaW5nLg0KDQo+IA0KPiBJJ3ZlIGxlZnQgdGhlIHRhaW50IGNvbnN0YW50IGFz ICdVJyBhcyBpdCdzIGEgcmF0aGVyIG1vcmUgdXNlci12aXNpYmxlLg0KDQpJIHdvdWxkIHZvdGUg dG8gY2hhbmdlIHRoZSBVIGluIEkgaGVyZSBhcyBpdCB3aWxsIG1ha2UgaXQgbW9yZSBjb2hlcmVu dA0Kd2l0aCB0aGUgZG9jIGFmdGVyIHlvdXIgYWRkZWQgZml4IGZvciBpdC4NCg0KPiANCj4gRml4 ZXM6IDgyYzBkM2Q0OTFjYyAoInhlbjogQWRkIGFuIHVuc2VjdXJlIFRhaW50IHR5cGUiKQ0KPiBT aWduZWQtb2ZmLWJ5OiBBbmRyZXcgQ29vcGVyIDxhbmRyZXcuY29vcGVyM0BjaXRyaXguY29tPg0K PiAtLS0NCj4gQ0M6IEphbiBCZXVsaWNoIDxKQmV1bGljaEBzdXNlLmNvbT4NCj4gQ0M6IFJvZ2Vy IFBhdSBNb25uw6kgPHJvZ2VyLnBhdUBjaXRyaXguY29tPg0KPiBDQzogV2VpIExpdSA8d2xAeGVu Lm9yZz4NCj4gQ0M6IFN0ZWZhbm8gU3RhYmVsbGluaSA8c3N0YWJlbGxpbmlAa2VybmVsLm9yZz4N Cj4gQ0M6IEp1bGllbiBHcmFsbCA8anVsaWVuQHhlbi5vcmc+DQo+IENDOiBWb2xvZHlteXIgQmFi Y2h1ayA8Vm9sb2R5bXlyX0JhYmNodWtAZXBhbS5jb20+DQo+IENDOiBCZXJ0cmFuZCBNYXJxdWlz IDxiZXJ0cmFuZC5tYXJxdWlzQGFybS5jb20+DQo+IA0KPiBJJ20gaGFwcHkgdG8gY2hhbmdlICdV JyB0byAnSScgaWYgd2UgdGhpbmsgdGhhdCBuby1vbmUgaXMgZ29pbmcgdG8gYmUgaW1wYWN0ZWQN Cj4gYnkgaXQuICBJIGp1c3Qgd2Fzbid0IHN1cmUuDQoNCkhlcmUgaSBkbyBub3QgdGhpbmsgbWFu eSB3aWxsIGJlIGltcGFjdGVkIHNvIEkgd291bGQgcmF0aGVyIG1ha2UgdGhpcyBjb2hlcmVudC4N Cg0KQ2hlZXJzDQpCZXJ0cmFuZA0KDQoNCj4gLS0tDQo+IHhlbi9hcmNoL2FybS9jcHVlcnJhdGEu YyB8IDIgKy0NCj4geGVuL2NvbW1vbi9rZXJuZWwuYyAgICAgIHwgMiArLQ0KPiB4ZW4vaW5jbHVk ZS94ZW4vbGliLmggICAgfCAyICstDQo+IDMgZmlsZXMgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCsp LCAzIGRlbGV0aW9ucygtKQ0KPiANCj4gZGlmZiAtLWdpdCBhL3hlbi9hcmNoL2FybS9jcHVlcnJh dGEuYyBiL3hlbi9hcmNoL2FybS9jcHVlcnJhdGEuYw0KPiBpbmRleCAxYWJhY2ZlNWJiNjcuLmQw NjU4YWVkYjZhYSAxMDA2NDQNCj4gLS0tIGEveGVuL2FyY2gvYXJtL2NwdWVycmF0YS5jDQo+ICsr KyBiL3hlbi9hcmNoL2FybS9jcHVlcnJhdGEuYw0KPiBAQCAtNjk1LDcgKzY5NSw3IEBAIHZvaWQg X19pbml0IGVuYWJsZV9lcnJhdGFfd29ya2Fyb3VuZHModm9pZCkNCj4gICAgICAgICAgICAgICAg ICAgICAiKioqKiBPbmx5IHRydXN0ZWQgZ3Vlc3RzIHNob3VsZCBiZSB1c2VkLiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgKioqKlxuIik7DQo+IA0KPiAgICAgICAgIC8qIFRhaW50IHRoZSBt YWNoaW5lIGhhcyBiZWluZyBpbnNlY3VyZSAqLw0KPiAtICAgICAgICBhZGRfdGFpbnQoVEFJTlRf TUFDSElORV9VTlNFQ1VSRSk7DQo+ICsgICAgICAgIGFkZF90YWludChUQUlOVF9NQUNISU5FX0lO U0VDVVJFKTsNCj4gICAgIH0NCj4gI2VuZGlmDQo+IH0NCj4gZGlmZiAtLWdpdCBhL3hlbi9jb21t b24va2VybmVsLmMgYi94ZW4vY29tbW9uL2tlcm5lbC5jDQo+IGluZGV4IGY3YjFmNjVmMzczYy4u MTRjZTZiNDBjZTA2IDEwMDY0NA0KPiAtLS0gYS94ZW4vY29tbW9uL2tlcm5lbC5jDQo+ICsrKyBi L3hlbi9jb21tb24va2VybmVsLmMNCj4gQEAgLTM1NCw3ICszNTQsNyBAQCBjaGFyICpwcmludF90 YWludGVkKGNoYXIgKnN0cikNCj4gICAgIGlmICggdGFpbnRlZCApDQo+ICAgICB7DQo+ICAgICAg ICAgc25wcmludGYoc3RyLCBUQUlOVF9TVFJJTkdfTUFYX0xFTiwgIlRhaW50ZWQ6ICVjJWMlYyVj JWMlYyIsDQo+IC0gICAgICAgICAgICAgICAgIHRhaW50ZWQgJiBUQUlOVF9NQUNISU5FX1VOU0VD VVJFID8gJ1UnIDogJyAnLA0KPiArICAgICAgICAgICAgICAgICB0YWludGVkICYgVEFJTlRfTUFD SElORV9JTlNFQ1VSRSA/ICdVJyA6ICcgJywNCj4gICAgICAgICAgICAgICAgICB0YWludGVkICYg VEFJTlRfTUFDSElORV9DSEVDSyA/ICdNJyA6ICcgJywNCj4gICAgICAgICAgICAgICAgICB0YWlu dGVkICYgVEFJTlRfU1lOQ19DT05TT0xFID8gJ0MnIDogJyAnLA0KPiAgICAgICAgICAgICAgICAg IHRhaW50ZWQgJiBUQUlOVF9FUlJPUl9JTkpFQ1QgPyAnRScgOiAnICcsDQo+IGRpZmYgLS1naXQg YS94ZW4vaW5jbHVkZS94ZW4vbGliLmggYi94ZW4vaW5jbHVkZS94ZW4vbGliLmgNCj4gaW5kZXgg ZTkxNGNjYWRlMDk1Li43NWFlNzQ4OWI5ZjAgMTAwNjQ0DQo+IC0tLSBhL3hlbi9pbmNsdWRlL3hl bi9saWIuaA0KPiArKysgYi94ZW4vaW5jbHVkZS94ZW4vbGliLmgNCj4gQEAgLTIwMSw3ICsyMDEs NyBAQCB1aW50NjRfdCBtdWxkaXY2NCh1aW50NjRfdCBhLCB1aW50MzJfdCBiLCB1aW50MzJfdCBj KTsNCj4gI2RlZmluZSBUQUlOVF9NQUNISU5FX0NIRUNLICAgICAgICAgICAgICgxdSA8PCAxKQ0K PiAjZGVmaW5lIFRBSU5UX0VSUk9SX0lOSkVDVCAgICAgICAgICAgICAgKDF1IDw8IDIpDQo+ICNk ZWZpbmUgVEFJTlRfSFZNX0ZFUCAgICAgICAgICAgICAgICAgICAoMXUgPDwgMykNCj4gLSNkZWZp bmUgVEFJTlRfTUFDSElORV9VTlNFQ1VSRSAgICAgICAgICAoMXUgPDwgNCkNCj4gKyNkZWZpbmUg VEFJTlRfTUFDSElORV9JTlNFQ1VSRSAgICAgICAgICAoMXUgPDwgNCkNCj4gI2RlZmluZSBUQUlO VF9DUFVfT1VUX09GX1NQRUMgICAgICAgICAgICgxdSA8PCA1KQ0KPiBleHRlcm4gdW5zaWduZWQg aW50IHRhaW50ZWQ7DQo+ICNkZWZpbmUgVEFJTlRfU1RSSU5HX01BWF9MRU4gICAgICAgICAgICAy MA0KPiANCj4gYmFzZS1jb21taXQ6IDY3ZmRmZmVmOTI0NmM4MmNlY2Q4ZGIyODgzOGVkMDllNzll MjUyOGENCj4gLS0gDQo+IDIuMzAuMg0KPiANCg0K From xen-devel-bounces@lists.xenproject.org Mon Jun 05 10:32:01 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 05 Jun 2023 10:32:01 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543642.848780 (Exim 4.92) (envelope-from ) id 1q67VI-0005Jd-0W; Mon, 05 Jun 2023 10:32:00 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543642.848780; Mon, 05 Jun 2023 10:31:59 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q67VH-0005JW-Tw; Mon, 05 Jun 2023 10:31:59 +0000 Received: by outflank-mailman (input) for mailman id 543642; Mon, 05 Jun 2023 10:31:58 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q67VG-0005IW-Jc for xen-devel@lists.xenproject.org; Mon, 05 Jun 2023 10:31:58 +0000 Received: from mail-wr1-x42a.google.com (mail-wr1-x42a.google.com [2a00:1450:4864:20::42a]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 31f844b7-038c-11ee-8611-37d641c3527e; Mon, 05 Jun 2023 12:31:56 +0200 (CEST) Received: by mail-wr1-x42a.google.com with SMTP id ffacd0b85a97d-30aebe2602fso3783152f8f.3 for ; Mon, 05 Jun 2023 03:31:56 -0700 (PDT) Received: from EMEAENGAAD19049. (default-46-102-197-194.interdsl.co.uk. [46.102.197.194]) by smtp.gmail.com with ESMTPSA id x16-20020adfdd90000000b0030633152664sm9241227wrl.87.2023.06.05.03.31.55 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 05 Jun 2023 03:31:55 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 31f844b7-038c-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cloud.com; s=cloud; t=1685961116; x=1688553116; h=in-reply-to:content-transfer-encoding:content-disposition :mime-version:references:subject:cc:to:from:date:message-id:from:to :cc:subject:date:message-id:reply-to; bh=eAsAi/0DNL4Q7W+IedKpFwOcbv4F6f1yLIdPIyxAzVo=; b=NsPW9sU52+xOU0s1CaztonefyxV5wuQoqNW7fjwUx5rQS+qZMSbLQbaLuQ29yGng1r UiYHQcNqFyzStcs3dmT4ZbjBkOkGWlp+eVk7JUfIM51MZ4uSvl6QWQ7qkFeSjdaoBelS wDS9uJgkOXxSn9v1dZh4K7dPYLJrpkAaUQ5WU= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1685961116; x=1688553116; h=in-reply-to:content-transfer-encoding:content-disposition :mime-version:references:subject:cc:to:from:date:message-id :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=eAsAi/0DNL4Q7W+IedKpFwOcbv4F6f1yLIdPIyxAzVo=; b=Zq7WfRgzM48HSMEIcy5Tlr8v4dzIXM9YQh1wpPyR6Ci+IW8B/gPcfy53pdzB/cvXer JlpA1+qz3mMtlP5syp02H01ikGPprnPdEZZUv86Kbw4JPtm6Eb8mtUiXRa2B8WLtMR3T NalMTkc1kQTXgtgeIXyhRTrKBMmQCCS0Buyj3v8CyZ2sOuydNzeTRlYRN6Y3tl80ka/N s6rtCBNxVSQXe89FY/1zKIWBfuF3TDqY5V1Sbloe1E9m5htAAEs4mkiFF6eTwhdiiOQ+ oPKIBucd2pwkXbSG8xM6Yb2ASg4O/oXLonsk5jbjufWul2bFUIeQvwzjRbT5Rcckjwrq RlpQ== X-Gm-Message-State: AC+VfDzAdhdAMSkRxWrMjoIzb5OB8tCsZjED/ej5/OmU/91QA8Qna2f+ WiqMD7NTZkz40jXRTx9ttEGVEFADtgi3RvNcphA= X-Google-Smtp-Source: ACHHUZ6YJcg2H+mhcvzw3Ty/ztBi+LocATROojxhZ9H3mDaNn4UdbWZ14qq96JZZHnXU0YB6Ms5ZtQ== X-Received: by 2002:adf:d082:0:b0:30d:d85c:4472 with SMTP id y2-20020adfd082000000b0030dd85c4472mr3691251wrh.62.1685961115865; Mon, 05 Jun 2023 03:31:55 -0700 (PDT) Message-ID: <647db99b.df0a0220.45aaa.6dcd@mx.google.com> X-Google-Original-Message-ID: Date: Mon, 5 Jun 2023 11:31:53 +0100 From: Alejandro Vallejo To: Andrew Cooper Cc: Xen-devel , Jan Beulich , Roger Pau =?iso-8859-1?Q?Monn=E9?= , Wei Liu Subject: Re: [PATCH] x86/microcode: Prevent attempting updates known to fail References: <20230531175119.10830-1-alejandro.vallejo@cloud.com> <83324533-38da-b5bc-875e-a161d7501eb5@citrix.com> <0b118c70-b1b0-43ad-31d2-1b301b360b12@citrix.com> MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <0b118c70-b1b0-43ad-31d2-1b301b360b12@citrix.com> On Fri, Jun 02, 2023 at 09:35:56PM +0100, Andrew Cooper wrote: > For this MCU_CONTROL_DIS_MCU_LOAD case, we don't want to be trying to > load new microcode because that's a waste of time, but we absolutely > should query the current microcode revision.  It is frequently relevant > for security reasons. > > So I think we want to fine-grain things a little, and separate the > concepts of "ucode info available" and "ucode loading available".  Per > the current mechanism, that would involve supporting a case where > ucode_ops.collect_cpu_info() is available but > ucode_ops.apply_microcode() is not. I was going after something to that effect, yes. > > ~Andrew > > P.S. also in our copious free time, we need to start supporting the > Intel min_rev field, which is more complicated than it sounds. > > min_rev is vaguely defined as being relevant to block updates "after > you've evaluated CPUID and made decisions based on it", but here in Xen > we do also do livepatching and late loading to explicitly make use of > newly enumerated features. > > So we need a way of xen-ucode saying "please really do load this, > because I as the admin think it will be fine in combination with the > livepatch I'm about to apply". > > My best idea for this is to have a `--force` option to pass to Xen to > skip the revision checks, which will require either a new hypercall, or > perhaps borrowing a high bit from the size field in the current hypercall. > > With a force option in place, the boot time ucode=allow-same can go > away.  It has become distinctly less useful now that we were forced do > this unilaterally on AMD CPUs, and separating "allow same because of HW > bugs" from "the Admin promised they knew what they were doing" would be > better for testing. I've created a GitLab issue to keep track of that: https://gitlab.com/xen-project/xen/-/issues/164 There's also the case of downgrades. We probably want to at least avoid going back to a microcode revision with different min_rev field. Alejandro From xen-devel-bounces@lists.xenproject.org Mon Jun 05 10:38:03 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 05 Jun 2023 10:38:03 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543647.848791 (Exim 4.92) (envelope-from ) id 1q67az-0005xf-MX; Mon, 05 Jun 2023 10:37:53 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543647.848791; Mon, 05 Jun 2023 10:37:53 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q67az-0005xY-HS; Mon, 05 Jun 2023 10:37:53 +0000 Received: by outflank-mailman (input) for mailman id 543647; Mon, 05 Jun 2023 10:37:51 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q67ax-0005xS-HP for xen-devel@lists.xenproject.org; Mon, 05 Jun 2023 10:37:51 +0000 Received: from EUR02-VI1-obe.outbound.protection.outlook.com (mail-vi1eur02on2062f.outbound.protection.outlook.com [2a01:111:f400:fe16::62f]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 040635d7-038d-11ee-8611-37d641c3527e; Mon, 05 Jun 2023 12:37:49 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by PA4PR04MB7727.eurprd04.prod.outlook.com (2603:10a6:102:e0::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.32; Mon, 5 Jun 2023 10:37:45 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.030; Mon, 5 Jun 2023 10:37:45 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 040635d7-038d-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Sn3YBMB33yKtRZ6oliZtcp2Ykkw5S1LXCG+dXu4zrUBolVpuQ/BxKl2ICai4PRe+/kIBA4AypIrOPjSDUOe5Av9AT+MVM7FKQZrztpzsPiusWeAsmSofXNBSPJtychZPPwcbSxqeF3aIjh8gya+KxOz+kJ+zITJJPbTgxNqjZo3hnon81AioA8m7+ZV6w6zt/bJj98rUdB2WpkvdCZ76+cdyLcaVtnTOFGjB6FklkZSg7I3/L2BxKXQhWuED3I2UdAfCB++/BugUG3aTS6sBCUbcKabxwN1KkNfJbfGv4gCT/vkgUcaMA46j8kQ0be/RAiOiKjQFEgy1p/PKneTatg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=PLV3dCt8Dlwp6KOL+CBSEms15EEoF0AsjF47DfZ+bo4=; b=D7/jf8ULye8qtOl1H0H8FaKqe4SKT9rPREX3w096+IjCb0ED+WdJUenHi586e8ZTqkhA15gehm69U4KV2BNYxq5M+l+C8eeFlVkVGcZqrc5Lk8bXKwPJcp1N8QVQk8EZRVzo4Ylth8rL795lASw0IaPq6Cw8OmH0HA/AsdmILO3c9iaMZpOv4k37waf4OsXE9VyXQLhZhjwrp4fXmGPPJDDitcoaIIsbjnZC8iD9hRXb8lqz896ILtJtwl5o2OZfCNg2n2/50sjQBNck5XW3Mk5UA9Tdc+q7noz1RgfXiScW0CZcZrpws4Ye0bDABnye/39dVgAS7Vh+UFBHB9V3cQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=PLV3dCt8Dlwp6KOL+CBSEms15EEoF0AsjF47DfZ+bo4=; b=H/UQl7slEMCpHZpEVmWxngrpygt3XuYworCEUJjGI8fwsncXNT5d4ua8+KS7+3jHyKLpqFK7tSjM4fl8DdiI7e5TemqzorL2ZXOoaH8Rg62SF8XG/c9AWKsy6ffjneFmhwR+s69qZm/mO0U5jnSFYkFMzzMCJrs4Gs2ylZBDuOdgff0tLrQrYer9sIb6XQ7aCgTQt4qtpdWJvtVdgQ3IElPzOh1B0PBlxgy+FgTeCqN7ib0SRMBkkT42Kzp8bH4ByYufQhGZcKC8y1UIwuGSHXQuFAtptWTQNTobeL9HkQKQn3C9orKep/YWtfzk+QJz7S8wSs8JjK0o6eXK5OfFzg== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <5d6123dd-1776-e980-5638-0c5dc0755fe1@suse.com> Date: Mon, 5 Jun 2023 12:37:43 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.11.2 Subject: Re: [PATCH] xen: Fix incorrect taint constant Content-Language: en-US To: Andrew Cooper Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , Stefano Stabellini , Julien Grall , Volodymyr Babchuk , Bertrand Marquis , Xen-devel References: <20230605100512.1748007-1-andrew.cooper3@citrix.com> <6ce6c267-7e9d-d63c-c7f0-3bb7554a3f83@suse.com> <525e1b83-fcd1-1b48-3ba6-87843ffdd213@citrix.com> From: Jan Beulich In-Reply-To: <525e1b83-fcd1-1b48-3ba6-87843ffdd213@citrix.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: FR2P281CA0178.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:9f::7) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|PA4PR04MB7727:EE_ X-MS-Office365-Filtering-Correlation-Id: 4fe69f07-cb29-4b9b-059a-08db65b0e5f8 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: Iy/YktFfpTbOWlaywmek3zz+URLpJbsCHfuAXUdPAP/xmEz1s8DhLq1C4n35+89l1y0gh4Llh8tBmEmx+3RACccPXhhr5fojkCG1gnJVUOlkDnzyb9x6JkBw8rYgFb2nF1TCnzghz3qaTd6gU+/A8LIDDii21aDPQPfgLUAjTkQ+LD5ypha5ZXHddp8f1lR6nb2ESSO8XSKO91L/dKQ1RX0RLiDeRsGkruEfZA66ruOK0aLDtcy4AZ99TxHF+dqBAhn/086q4l08vFufhNFowP63mtmPAD1PbSr8OZWNpSY+SECweG2qflk0pZ81oBamUIyb0npgvUQBm69c45x2bzhb09ZkXsAAKjq7Ml1bpm51at14uCIPi79zeIxHBPGoWghqSEdS6LAkDpxQTwEWKmFIrC7tcbGIR2pFHi0TS2SYCzogXFtjmOgk+sEDk8DYtINcK2Cl3YSCqiVYGFbzwyjAWoPIaw+bhO0P1uxEextnRIaWYwh65/1UYlcH+inH0pMbwoosMnKL1oEqXp6oBvW9+qMJvIWJmdR1PADGsKWG8z456h08NEELMJzdrN4l7O+oTOZ2U5y0w62DZsZ2kJ7OoXnlXw3674zlb+UHvJVVnjRmZXoONA8P84Lo/+4/Yix2Nv2P7QWkHYZu4nEEkw== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(366004)(376002)(346002)(136003)(396003)(39860400002)(451199021)(6506007)(53546011)(6512007)(38100700002)(2616005)(41300700001)(31686004)(6486002)(186003)(26005)(478600001)(54906003)(4326008)(6916009)(66476007)(66556008)(66946007)(316002)(8936002)(8676002)(5660300002)(2906002)(31696002)(86362001)(36756003)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?N3U3elNmdmhOREY1c1gwUEZ6WFdScVY1d3VINVYxM1lBWStocFNxMXBoSDlp?= =?utf-8?B?QW9VaHlScTd6Mkd4MWVIZjBkR25rbFhUSGVsdVEvVTlYRkxGOTVtN0dZbS9l?= =?utf-8?B?eFpsK3NQU3dhL0tuSHRINEVvTVFDTmIwb2twelBxZGJaNDM5ckFRT0NtTXZz?= =?utf-8?B?Y0tkN1FJMnFTRGhOd2R2M2R4bFRJdzZ1N0xnTTlVMHA3cFcvTlEvUzdXTEZV?= =?utf-8?B?U3ZIRUhqMlBtNmhaaUMvQjliOWNyVWI4Q1MvTUNuek80cGlpSmE0bkxZRlQr?= =?utf-8?B?bDZGSzRJQ3BaQ0o5SmgyMGh2Zi8xYnUwVU5LNjQxNmN2T3UxR1VNUTFZRzJv?= =?utf-8?B?NGpNczlpcWZsZzMxWFdKNU1LalVXaEFCTDZyWk12QXZlM3BxN3NlRzMrdS9n?= =?utf-8?B?a3E3SHNyY21NVmZlVlJtRW9PZzVzZWF1aU85RFF3NlpuNUNHeEhqbVZWNGNq?= =?utf-8?B?QVNVK21yeGV3MUF4c2NuWGpvSzhnd3JhVkxVTXlrcHRRc2s2Y3ZrWThqdEFH?= =?utf-8?B?OVhJcDIzUGVVb2dhemFrR3IvTXQ4ZG4yUjFJTlFCUGw4NVpCdnBUNzRqdzVz?= =?utf-8?B?Y3hjalpodHphMzR6aUZiSmMrdzRmWEFmVWl2TzhsTDNrSVdTa3F1VUFwM294?= =?utf-8?B?bEJhT2RVZXRzaFhXZ3E4UVQ1NjVVSFBwQUhRbm02UERTUEdxbEtzYlZXVDNx?= =?utf-8?B?aEtyTXlZY1BqdGlPZmJ0VDQxbXFjMzdHaVZEdXdKNGZ4cjArMUpVOGZhcXpB?= =?utf-8?B?OGdHdXlNeGpSZ2RJUGo0TkJTQlZweWozTkVkL2hZMmh2NU0yK1VXRW5KS0RM?= =?utf-8?B?bXcza0VmVy9xSWxuOTBOUC9KL0tBdDZSaEtGUHhUT0N2ZzEreUswZU5jaXRJ?= =?utf-8?B?Vzg4QWdCa0NlVTU3VDBpeS9YOTlpQmp0SkNyMFBUS2pDeXFJdkJML1FXQW1Y?= =?utf-8?B?eHpVemF4TkZXVU9NeW9WQ2FHQzBJUzJEVjJISHAzZnVlbnRXWUJYVVQwMXpP?= =?utf-8?B?RHlCQk1PaTE4Mmd5Tk1PWnp0V0NIT1J5NE1DSDZZaitvMVZRM0pkOUxqOE9Z?= =?utf-8?B?aFlvSzM1d21QUERVRHhkbW41MTVkZHZQOFA4K0pOYkNGNUtVakRIb1IzWElX?= =?utf-8?B?ZGg2NnBWS0NyaXVwZW0rd0xtM25ydXNoVVozWFZyejJXbkI5YXQva2xNTXI2?= =?utf-8?B?WWlGZ1FpakRzZzAwSHNmd3E2bkhlUjVaL0hhTU5kcGUrMUVRU05kaVZNTHF0?= =?utf-8?B?U0xFRVVXUk5oZnBKczZLWGpqS3dPWkg4N0Z5d2dZZkN1WXlEZ0l1MkFqc1Za?= =?utf-8?B?ZmpLbllmVEx6TFJsNzJ0QUh6QnBUUE9HZklZUkUxWFNGR3MycFhHSHA3OEEy?= =?utf-8?B?bWt3RHVJYngxYVZPUnR3VENXTkR5ZWYzdERJU2d1NG0wQVRIMng3eXgxUEwz?= =?utf-8?B?dUFaTEMzajJzWThsOHFXOW01MVQrd1ZyVVNob3FIUFhHblBaTTBXZHp2d1BY?= =?utf-8?B?S05vVGMxWVZ5eWMxdk5ET2swUTR6OHVhbU9uYS9LZVYrT1llNmNiOTVhZzhQ?= =?utf-8?B?TzZZK3p2M2ROVkpYOElOZEJscXdsNEJSejdYRVJMZTFaR2NjLzg0VXdDWG8y?= =?utf-8?B?QWlhQU1VVHNhbEkwcFdGcTRNUGxmTWhVYlFZTlJ4cnp3U3JYR1JreE1CTUp0?= =?utf-8?B?ekZacGhFN29PSExrQnVlSVl4ZDJpYUFVMWV1WkZ3eWN5TWxXVFdpNDBnWG10?= =?utf-8?B?ekxhSStTeFllUytDaFh0WWJXUktRT0F3eTV4QXRqVUtHeUZRSnByQjltalEv?= =?utf-8?B?QVA1UXBnb3M2QTg2dnV6bUVidzh6Q1VHdUNGYXpER1ZsTVovT0tZWDR2Nk93?= =?utf-8?B?VVpXdWJwOC9CdmdwUzlXYlBLTlROMlJ1RW9YZmZPNTZGVnhHWGJnN080MDZE?= =?utf-8?B?R216S3l0YW96dTBHeVNNTzNHUUovTlZXMERnZnJvMFFwd3FHampnSHRRazd6?= =?utf-8?B?d2lSVEMyeWZzNk4zdjYwYzk1d3NyTHhQZXN2YllzNm5mOFhhQTIyYzluRGlC?= =?utf-8?B?QnppTlJaS1U5VWtvLzB4WXBTbFNMV2ZlbDlUVEhGK0lMYVBxRVF1SlV5Qllj?= =?utf-8?Q?t5l2GPmITGop5BBs8PQgQL1rY?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 4fe69f07-cb29-4b9b-059a-08db65b0e5f8 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Jun 2023 10:37:45.2521 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: LRD+W1OB8V93cS8xHpt1x2mKBZ+oOY9z7wVqNDhVTQ1U6aJpwpS8MLaRsEcPsouawSnMk5REhPug0BDjq0RKTQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR04MB7727 On 05.06.2023 12:14, Andrew Cooper wrote: > On 05/06/2023 11:10 am, Jan Beulich wrote: >> On 05.06.2023 12:05, Andrew Cooper wrote: >>> Insecure the word being looked for here. Especially given the nature of the >> Nit: Missing "is"? > > Oops yes. > >> >>> sole caller, and the (correct) comment next to it. >>> >>> I've left the taint constant as 'U' as it's a rather more user-visible. >>> >>> Fixes: 82c0d3d491cc ("xen: Add an unsecure Taint type") >>> Signed-off-by: Andrew Cooper >> Acked-by: Jan Beulich > > Thanks, although I've got one extra hunk to add having just done the > other half of the taint work. > > diff --git a/xen/common/kernel.c b/xen/common/kernel.c > index 14ce6b40ce06..ff67f00e41bb 100644 > --- a/xen/common/kernel.c > +++ b/xen/common/kernel.c > @@ -344,7 +344,7 @@ unsigned int tainted; >   *  'E' - An error (e.g. a machine check exceptions) has been injected. >   *  'H' - HVM forced emulation prefix is permitted. >   *  'M' - Machine had a machine check experience. > - *  'U' - Platform is unsecure (usually due to an errata on the platform). > + *  'U' - Platform is insecure (usually due to an errata on the platform). >   *  'S' - Out of spec CPU (One core has a feature incompatible with > others). >   * >   *      The string is overwritten by the next call to print_taint(). My ack (quite obviously) stands with this further adjustment. Jan From xen-devel-bounces@lists.xenproject.org Mon Jun 05 10:38:34 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 05 Jun 2023 10:38:34 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543650.848800 (Exim 4.92) (envelope-from ) id 1q67bd-0006SO-TB; Mon, 05 Jun 2023 10:38:33 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543650.848800; Mon, 05 Jun 2023 10:38:33 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q67bd-0006SF-QB; Mon, 05 Jun 2023 10:38:33 +0000 Received: by outflank-mailman (input) for mailman id 543650; Mon, 05 Jun 2023 10:38:33 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q67bc-0006Q9-Vu for xen-devel@lists.xenproject.org; Mon, 05 Jun 2023 10:38:33 +0000 Received: from esa3.hc3370-68.iphmx.com (esa3.hc3370-68.iphmx.com [216.71.145.155]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 1c38c1f0-038d-11ee-b232-6b7b168915f2; Mon, 05 Jun 2023 12:38:31 +0200 (CEST) Received: from mail-mw2nam10lp2102.outbound.protection.outlook.com (HELO NAM10-MW2-obe.outbound.protection.outlook.com) ([104.47.55.102]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 05 Jun 2023 06:38:28 -0400 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) by CH0PR03MB5969.namprd03.prod.outlook.com (2603:10b6:610:e0::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Mon, 5 Jun 2023 10:38:22 +0000 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::192:6bdf:b105:64dd]) by SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::192:6bdf:b105:64dd%3]) with mapi id 15.20.6455.028; Mon, 5 Jun 2023 10:38:21 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 1c38c1f0-038d-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1685961511; h=from:to:cc:subject:date:message-id: content-transfer-encoding:mime-version; bh=zBS/pW9sdLdnZCkqYcKyEc4GNp0f3rgZ4SyunGGeGus=; b=f9Dpn0O7r9sSLAjChZzDzOpqANHvz2Cf47LGZzjdKWitpNtRBmAi50T4 bUtJDUNunU6yY/o3DgY9YCiG36HyhMvDjNA5xlDdCu34XWvsInKEMvopH cSGzED/CitLhU9Gl1gE4C6zBa4B6CpK9ZNEJs1UcMrctHnE+siy8MxBvM o=; X-IronPort-RemoteIP: 104.47.55.102 X-IronPort-MID: 111623404 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:M+Xpcq+ljx7KXn7stekdDrUDpH+TJUtcMsCJ2f8bNWPcYEJGY0x3m 2QWWmCDPKmNNGr2eNt+aYvg9kJX6sTVzdYwG1doryk8E34SpcT7XtnIdU2Y0wF+jCHgZBk+s 5hBMImowOQcFCK0SsKFa+C5xZVE/fjUAOG6UKicYXoZqTZMEE8JkQhkl/MynrlmiN24BxLlk d7pqojUNUTNNwRcawr40Ird7ks31BjOkGlA5AdmO6gX5Aa2e0Q9V/rzG4ngdxMUfaEMdgKKb 76r5K20+Grf4yAsBruN+losWhRXKlJ6FVHmZkt+A8BOsDAbzsAB+v9T2M4nQVVWk120c+VZk 72hg3ASpTABZcUgkMxFO/VR/roX0aduoNcrKlDn2SCfItGvn9IBDJyCAWlvVbD09NqbDklQ9 9AEODAKXyq6nrnu0PGlRsd9oOoaeZyD0IM34hmMzBn/JNN/GdXmfP+P4tVVmjAtmspJAPDSI dIDbiZiZwjBZBsJPUoLDJU5n6GjgXyXnz9w8QrJ4/ZopTWOilUpitABM/KMEjCObd9SkUuC4 HrP4kzyAw0ANczZwj2Amp6prraWxH2hA95KSNVU8NZshmyazE8NWCFOenqW+MWZuGCiZelQf hl8Fi0G6PJaGFaQZsnwWVi0rWCJujYYWsFMCKsq5QeV0K3W7g2FQG8eQVZpd9gOpMIwAzsw2 TehndzzAid0mKaIUn/b/bCRxQ5eIgAQJG4GICobFw0M5oC7pJlp10qVCNF+DKSyk9v5Xynqx CyHpzQ/gLNVitMX06K8/hbMhDfESoX1czPZLz7/BgqNhj6Vrqb8D2B0wTA3Ncp9Ebs= IronPort-HdrOrdr: A9a23:mhYeJ62+97oFKdyUfRI21AqjBHYkLtp133Aq2lEZdPU0SKGlfq GV7ZEmPHrP4gr5N0tOpTntAse9qBDnhPxICOsqXYtKNTOO0AeVxelZhrcKqAeQeBEWmNQ96U 9hGZIOcuEZDzJB/LvHCN/TKadd/DGFmprY+ts31x1WPGVXgzkL1XYANu6ceHcGIzVuNN4CO7 e3wNFInDakcWR/VLXBOpFUN9KzweEijfjdEGc7OyI= X-Talos-CUID: 9a23:d14pSm09BVOxwYJM4nHgtbxfBMIJbm3dy0bqGlbjUXYqVrG7WHm+wfYx X-Talos-MUID: 9a23:p3mfSwkEadErPSWZqRDvdnpkMvZh6YewWHxVvrQr4vWkBwJsBQyS2WE= X-IronPort-AV: E=Sophos;i="6.00,217,1681185600"; d="scan'208";a="111623404" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=b5sHoQkDM2IzmkcY3eVF84MlU8BiwbJX0do7gdHONGgEM3eTG8AdnVtmbi7Rxb47sdEZsU6r0/SrrtCmGJfuAFZ6i4MrDIS/2EnFNgOEYMWWZ/eLQmhJUi0i4PZNGZKESt/he3U6dRNUfQjWEHPkYWHuHS0no3ZqeJmbf9chlh8MTxalACFzr32OgMe6T2OqDup37N3ZCTYAypDzIUxf4A18xulg/z0i6lm3lk0ueI/sUjGFffQ3BTtN8KEHseyTeey7r2qksgnUWqxKW9++SOJ/ZZo0sWGTrml26qFv8aoIsJyddA/+DPS7VbGpAMEYkKTMmQnQk3sFz9PT+drIbg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=W0A6/MlXea4oVIiw2TcuL+a4qhAfgQOqJqAG1U0n19o=; b=epQD8xpkKlvrt8NkdBl6QE4P7wWIchREqhv31dmng8CWsxwqu4bUsBpup5n+GdCVDbN9m/AyeECOFWgqC0t4ExFlK/WxMYuqTrMRCTDmVJNAtxt3c6q/2XrWzc5sN3KmoohxKFZZ7Opn7NMi/Nebv7D2ABy9Cvngvz55F2TT1+rD0toqKuC2UFDehLhFOhUp9O+PY1+/CVYAW59DofgO7ezATg4VM1QzYqWH/TZBnUc4FGrlvF6Ng+BZFeBQbCLr908GwNipS9fO4zX/spibRCjaTkELgQiyUsIBtWe2yC3OE0kW1q/aPiQyb448FHyKtU0foBMqTW2MocC+AUByZg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=W0A6/MlXea4oVIiw2TcuL+a4qhAfgQOqJqAG1U0n19o=; b=oQONEX+navE2F+9GZ5GanYSTxTGCJm/GZkpwbo7CEq78hNfypks0Uqn7Bt+rr6n1hxIPuU6/UZQSyQc88SUlEFnTA2OipWNEdrHOZHIXrgJfdh6Q4pR1hxJJqXIHRNf/obzKrlJaPSMl4tWXD2EHfq6h3fTnHjq69WTdvke0Rkg= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; From: Roger Pau Monne To: xen-devel@lists.xenproject.org Cc: andrew.cooper3@citrix.com, Roger Pau Monne , Wei Liu , Anthony PERARD , Juergen Gross Subject: [PATCH] libs/light: use the cpuid feature names from cpufeatureset.h Date: Mon, 5 Jun 2023 12:36:57 +0200 Message-Id: <20230605103657.14191-1-roger.pau@citrix.com> X-Mailer: git-send-email 2.40.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO4P265CA0100.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:2bc::12) To SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|CH0PR03MB5969:EE_ X-MS-Office365-Filtering-Correlation-Id: a16970a6-3738-4317-8df3-08db65b0fba8 X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: f3PjJBE4cbxB3o+lBgHi3L9gC8cIvdNGiE6hunv9aD8rhUssIaGwJ6TC31DatGWAwvcF0QuatB+4aX175oOP9N26BOvg+zQJN6MnTunVG3WWFxMxW1UPXYTEb4biNnwLkKSDZmf+tP70/35trZHoMr5rtpNtai5vkwzH1tJqBUXOnljmPVdTNPTvOVTtOAbjuLtXZc5Izttn6/reHWGM65RJBB4ifjIB94vcqThH4R2DqMWCADSxb6Q22GW/m+Zb6nxKdpJKj2lIZhG4XQLh/wn2H7TQK2/dFxE6sfbBsOkhhRi/fMWBsTdyVdZX6jM16LBj7riEWX4fxIjHrvCNanc+3RdK1FJLn+R5kzBa9lNRWDj4JnMmDumgGsY8fCVtS2yGGSGodX1sxKF8OUBkvsOJdtU+wQ9CDnTs/qvvvGZdyNThCaoknK5YQKu7c2/dI9zPKiEOYiflyhZ0UNLO7HRowu+2CmWThoBy+IoloXCr+VHRNKt5fJ2LhwMCEMzsMqOpKBdjlQon4DGJMXu+6AgidQZpnDr6Ni9s/gcmfg4/YfZXq5WTgM74pYNEjg980kgJoKXCKKIL4msaDp+YuFqYEj7EZe+ntYnUTVpri3Q= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(366004)(396003)(136003)(346002)(376002)(451199021)(478600001)(30864003)(2906002)(36756003)(6486002)(6666004)(2616005)(66574015)(83380400001)(186003)(6512007)(6506007)(1076003)(26005)(86362001)(82960400001)(38100700002)(316002)(8676002)(8936002)(66946007)(6916009)(4326008)(66556008)(66476007)(5660300002)(54906003)(41300700001)(473944003);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?ZVJTamNXdkd1YzhvQVFEaVdqZUNFanRPMHRJNlFHa2VPY3hNZDBuRHRtY0Yv?= =?utf-8?B?Wkw1dWhaOHZMVkhHN1doTTBUT2Y2QldqRWtIcUY5VTRCSUkxdXVsdy9YNnJ5?= =?utf-8?B?RnZOaCtRTmhqWnoyM0FyUUFYOGgxQm03aDQwb1NXWUIrRThyYzc2dE1KQ2hm?= =?utf-8?B?Wk9LeDZHc0o5Mks3Q1pINlZvM1liY3R1WUdCSGhQRDFqS1BJQUVSaXZUSy9T?= =?utf-8?B?MDFkV3Z1MWtJK1JOT3JicW5BOTMvNkRVcnFDbVJvczRxaDlpSG9tZWt3VW84?= =?utf-8?B?ZGpTMnQ0THdxRjlDVjdoM2hzK3UzVmJUQTBIR1dIYVRTU1hJM3VveDM1YWVs?= =?utf-8?B?UklWSFpmNzcrRGMxMk0xa3ZzMktPU0dXR1ZiUC9ZL0g4YXpHYUJHaXFNYks3?= =?utf-8?B?TWRXM2plbi8wVXE4TVozS0tRdWh5TTlxcDhHb0RZT2FGaU94MFhobmgrUzF0?= =?utf-8?B?cmVJaldqTXgreXk4bGk1Zk1wUm5NR2VQWHpvN3Y3SndhV0lVbHk2SlJGWXZG?= =?utf-8?B?NkZJc05Sak4wOWhpT3FFQzhqTkQrcU1NanB0UmZGQmpGcWMyWU5VVDF1endv?= =?utf-8?B?cit2Njd3bTNoV29Fdng0TmYvWEtrL0djcG9RUVh1dmk0QUcrTFFXRjloaTlB?= =?utf-8?B?ZHJzVTBKbFNDWFBlWlhYN2tCWUtXaEtucnFHWkhoMkFUQzRlVm43UnJyeXhW?= =?utf-8?B?WERncWZnNXoxZE5OME5GOUR3T3lwYWhZM2trelJnU2ZWb2k5dTNvbnQralR3?= =?utf-8?B?NzllQU1iTkQxeEI5TXZyZWFTNVZ5bkVXeEtHR1JtUGc2MFpUUkxkN01xcisw?= =?utf-8?B?YldRUHdaVnVVcFBNb20wSlpqbFhldGg1R2tpU0xNS0VNdEZWZFlNdUNYN0M2?= =?utf-8?B?ZlJrK2NIdlFIRlZIRGpiR0Zvc3FLVHpoNFZJMjVMT2VxRzY2Uy9FcFpMaU8x?= =?utf-8?B?SEQrenNxSmVTZ2ZxZ2FxR3FSZ1NLWWRxa0FKYk1kM3FVOCs1RnJaQkhtZGk3?= =?utf-8?B?akpXMGw5WnRuenc3YnJjcXRuYzZrWU5QWlF2SGx1OHVhb1paV080TGg0WFl1?= =?utf-8?B?bWZ4YzREOWhaRU9zdE0vUkt4ODBMN21yNHBBNXRzbldnMHJwZzFILytod2ll?= =?utf-8?B?Y1QrSm4zTlZOejBoZXVzVHEwbWtXNnpqOE5jRHlOczhzWUg1ZVJDYWJGUmF2?= =?utf-8?B?cnN5djZVWnViYlRIOFFkWWN4NEJKRHQxTFh0eEFYWU1ZRFZ1NXpkcnBXOVZH?= =?utf-8?B?OThmbVNWc3ppcW1QSE9EcmNyakpZNlc4Y2FrV0ZUN3ZOUGpseURYYjcrSmk0?= =?utf-8?B?TGFYRXUwTFh5ZGl4Y2NNbTVvckIvZjhQbG1QRm9Ra1B1dWJtOStiTGZNajJh?= =?utf-8?B?Z3UrdkxPS3RRakRhWnFiOG5DcUx4dklvN0dab0tzcVppY2RuOVBhdXFSVFNZ?= =?utf-8?B?NERuRmRUbUJLM3FBS3lBTEZOcGxFUkRQSWZBWUhWcVdja0dUN3FyNXhwT29M?= =?utf-8?B?dHhrUXFpRUs0aTVzY003aEFsQjBhMWpES3FpdERYTE0veEhMTXRjTitYVmFG?= =?utf-8?B?QjNCbmNERi85SG9QYk9oK2l2aW5jVmRKRUF2TFgwV01BdmJPdFF2eDd3Q3Fq?= =?utf-8?B?MGNqa05TUGE1ZHlOYjE5bkVkTFJObUp1T1U1S1NEeTJPQWNpeGMyQnU0ZGd1?= =?utf-8?B?L1R5UVVuMlNFdE9xUHdnMU9CQm41TkowWk04SDRYWnM0TTBSZ3g4Tkd2S05B?= =?utf-8?B?ZkU0VlRZRjFMNXBSNEh2RmtkT2JKcStWd1FhWnV2R3k1U1o1WGFvbnFBalhY?= =?utf-8?B?T2RiU3kwZDdOell3dFlwT0REVCtCR3E4R25JdVQwOURTVDdyVmpIMHZCOVFn?= =?utf-8?B?dzlYZHNtMFhkek5EYU1PbGc2SUg2QTFCTnFrY3dySXhCY1N1TjF4MmlEamlh?= =?utf-8?B?YWZUWDVyRWRVZHhpamhjeEIyWGZZQWVHSWQ0UjlpdmU2R3J4UU0wODZndHB4?= =?utf-8?B?MXJ2eG9wZDlCSTlUa0hlQ200cExKMGg1aGc2TEYwVUxoZGhGL2xMYkVSRFlW?= =?utf-8?B?UW5oVjVWKzJvY0pnZ3ZWL0VPdjRRaG5GVlpiSjhmRVk4eXY3UGczU1ZObkFE?= =?utf-8?Q?67oeVLfUF7by+NTSLCgdG29p2?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: RkYryTtPHl7zyMx74pg49+ho58pckIvhw+h0D9pkJy8xWYel13HXeV2VwPRZAZsOk5pxb7IccscKeyb+bc3m2gDlHCeXMcV8iK5dy9RcbrZWbu3ZjQlzwd65X72GffpQ0HDXi3yjw/xjfGON/mIKNGH0u1b5l/jKzMO7aoke1OQKpzIK03S5NHyk72oo3wKUtHNZ6f3yCR7GcIsy3NMKKXTLuDy5rR82KrsheTZ2Egzd95fiopvQ2PIOGexemTEeKmAVLvxIJrHFiZPyn0nCJGpZwIfJHqZNdahMOok8zFR41l3cJpogxhq5izVgHkq3JMqYxjMCkiFR6+vYDXHgMxaKUOWHSBwqxsvxvxIAi4te9ieLPILedWZ9oFWmEaOIAYZocAzslVTkNuVVA3KmibTKpD7pEE9Qnx/dfFY4FrB/1dj1xZ/Bfk5HZQrbQrfVAk4s8aiQRTmalsdL0rgEhhdiIc6NpXUIhqJCotiNsuYYXOBtWIg0eIKtmZQnHk39nDgmSZQpBxqPtt2u9sSy9mX1Othljxjs4okH1lhwrR71040nM3V8HWANEjGX140JTDS/T5YkK7DdtKV637A9+pDl4qLzQFu2RF9DOiVnPjjhK8YVFalgSw6IQvN84Os9DJYAfyUbAE79+jx2L7MOw91FbG/6Nw0lI0/FPkWxGT31d9PeMhY41kPjLYZUOWdSp9/PCV8tsd14oHvgooA/emU4nhpgSkAkp3sLiEUxxjsBJkopD9R91o40qIZtmHZl2W3W1lFMBje0pkIg4bldvFgBILOpI/PiZk7rkYyTRxSBarJchrjAb4ugcvl9rjaD X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: a16970a6-3738-4317-8df3-08db65b0fba8 X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Jun 2023 10:38:21.6476 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: H7sKF9XyZ3piJhNnh6MLyZRUzNUVmCTzoCCZOG8ea4MgRDhmsK/U0E6q5F/pujPbGmgtL9doAasOdrCn5G7CrQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH0PR03MB5969 The current implementation in libxl_cpuid_parse_config() requires keeping a list of cpuid feature bits that should be mostly in sync with the contents of cpufeatureset.h. Avoid such duplication by using the automatically generated list of cpuid features in INIT_FEATURE_NAMES in order to map feature names to featureset bits, and then translate from featureset bits into cpuid leaf, subleaf, register tuple. Note that the full contents of the previous cpuid translation table can't be removed. That's because some feature names allowed by libxl are not described in the featuresets, or because naming has diverged and the previous nomenclature is preserved for compatibility reasons. Should result in no functional change observed by callers, albeit some new cpuid features will be available as a result of the change. While there constify cpuid_flags name field. Signed-off-by: Roger Pau Monné --- There's currently no table to map from featureset word into cpuid leaf, so open-code one (feature_to_cpuid). Otherwise we would need to parse the comments in cpufeatureset.h in order to obtain the leaf/subleaf/register each word maps into. One possible way of improving would be to use a cpu_policy and featureset in libxl_cpuid_parse_config(), but that requires adding an xc_cpu_policy_t object to libxl_domain_build_info, and the proposed patch is already an improvement over the current status. --- docs/man/xl.cfg.5.pod.in | 22 +-- tools/libs/light/libxl_cpuid.c | 246 ++++++++++----------------------- tools/xl/xl_parse.c | 3 + 3 files changed, 78 insertions(+), 193 deletions(-) diff --git a/docs/man/xl.cfg.5.pod.in b/docs/man/xl.cfg.5.pod.in index 24ac92718288..c5c5b8716521 100644 --- a/docs/man/xl.cfg.5.pod.in +++ b/docs/man/xl.cfg.5.pod.in @@ -2010,24 +2010,12 @@ proccount procpkg stepping =back -List of keys taking a character: +List of keys taking a character can be found in the public header file +L -=over 4 - -3dnow 3dnowext 3dnowprefetch abm acpi adx aes altmovcr8 apic arat avx avx2 -avx512-4fmaps avx512-4vnniw avx512bw avx512cd avx512dq avx512er avx512f -avx512ifma avx512pf avx512vbmi avx512vl bmi1 bmi2 clflushopt clfsh clwb cmov -cmplegacy cmpxchg16 cmpxchg8 cmt cntxid dca de ds dscpl dtes64 erms est extapic -f16c ffxsr fma fma4 fpu fsgsbase fxsr hle htt hypervisor ia64 ibs invpcid -invtsc lahfsahf lm lwp mca mce misalignsse mmx mmxext monitor movbe mpx msr -mtrr nodeid nx ospke osvw osxsave pae page1gb pat pbe pcid pclmulqdq pdcm -perfctr_core perfctr_nb pge pku popcnt pse pse36 psn rdrand rdseed rdtscp rtm -sha skinit smap smep smx ss sse sse2 sse3 sse4.1 sse4.2 sse4_1 sse4_2 sse4a -ssse3 svm svm_decode svm_lbrv svm_npt svm_nrips svm_pausefilt svm_tscrate -svm_vmcbclean syscall sysenter tbm tm tm2 topoext tsc tsc-deadline tsc_adjust -umip vme vmx wdt x2apic xop xsave xtpr - -=back +Note that C is described as an option that takes a value, and that +takes precedence over the C flag in C. The feature +flag must be referenced as C. =back diff --git a/tools/libs/light/libxl_cpuid.c b/tools/libs/light/libxl_cpuid.c index f5ce9f97959c..0c7ffff416fe 100644 --- a/tools/libs/light/libxl_cpuid.c +++ b/tools/libs/light/libxl_cpuid.c @@ -14,6 +14,8 @@ #include "libxl_internal.h" +#include + int libxl__cpuid_policy_is_empty(libxl_cpuid_policy_list *pl) { return !libxl_cpuid_policy_list_length(pl); @@ -51,7 +53,7 @@ void libxl_cpuid_dispose(libxl_cpuid_policy_list *p_cpuid_list) * Used for the static structure describing all features. */ struct cpuid_flags { - char* name; + const char* name; uint32_t leaf; uint32_t subleaf; int reg; @@ -81,6 +83,14 @@ static libxl_cpuid_policy_list cpuid_find_match(libxl_cpuid_policy_list *list, return *list + i; } +static int search_feature(const void *a, const void *b) +{ + const char *key = a; + const char *feat = ((struct { const char *n; } *)b)->n; + + return strncmp(key, feat, strlen(key)) ?: strlen(key) - strlen(feat); +} + /* parse a single key=value pair and translate it into the libxc * used interface using 32-characters strings for each register. * Will overwrite earlier entries and thus can be called multiple @@ -101,208 +111,37 @@ int libxl_cpuid_parse_config(libxl_cpuid_policy_list *cpuid, const char* str) {"proccount", 0x00000001, NA, CPUID_REG_EBX, 16, 8}, {"localapicid", 0x00000001, NA, CPUID_REG_EBX, 24, 8}, - {"sse3", 0x00000001, NA, CPUID_REG_ECX, 0, 1}, - {"pclmulqdq", 0x00000001, NA, CPUID_REG_ECX, 1, 1}, - {"dtes64", 0x00000001, NA, CPUID_REG_ECX, 2, 1}, - {"monitor", 0x00000001, NA, CPUID_REG_ECX, 3, 1}, - {"dscpl", 0x00000001, NA, CPUID_REG_ECX, 4, 1}, - {"vmx", 0x00000001, NA, CPUID_REG_ECX, 5, 1}, - {"smx", 0x00000001, NA, CPUID_REG_ECX, 6, 1}, {"est", 0x00000001, NA, CPUID_REG_ECX, 7, 1}, - {"tm2", 0x00000001, NA, CPUID_REG_ECX, 8, 1}, - {"ssse3", 0x00000001, NA, CPUID_REG_ECX, 9, 1}, {"cntxid", 0x00000001, NA, CPUID_REG_ECX, 10, 1}, - {"fma", 0x00000001, NA, CPUID_REG_ECX, 12, 1}, {"cmpxchg16", 0x00000001, NA, CPUID_REG_ECX, 13, 1}, - {"xtpr", 0x00000001, NA, CPUID_REG_ECX, 14, 1}, - {"pdcm", 0x00000001, NA, CPUID_REG_ECX, 15, 1}, - {"pcid", 0x00000001, NA, CPUID_REG_ECX, 17, 1}, - {"dca", 0x00000001, NA, CPUID_REG_ECX, 18, 1}, /* Linux uses sse4_{1,2}. Keep sse4.{1,2} for compatibility */ - {"sse4_1", 0x00000001, NA, CPUID_REG_ECX, 19, 1}, {"sse4.1", 0x00000001, NA, CPUID_REG_ECX, 19, 1}, - {"sse4_2", 0x00000001, NA, CPUID_REG_ECX, 20, 1}, {"sse4.2", 0x00000001, NA, CPUID_REG_ECX, 20, 1}, - {"x2apic", 0x00000001, NA, CPUID_REG_ECX, 21, 1}, - {"movbe", 0x00000001, NA, CPUID_REG_ECX, 22, 1}, - {"popcnt", 0x00000001, NA, CPUID_REG_ECX, 23, 1}, - {"tsc-deadline", 0x00000001, NA, CPUID_REG_ECX, 24, 1}, {"aes", 0x00000001, NA, CPUID_REG_ECX, 25, 1}, - {"xsave", 0x00000001, NA, CPUID_REG_ECX, 26, 1}, - {"osxsave", 0x00000001, NA, CPUID_REG_ECX, 27, 1}, - {"avx", 0x00000001, NA, CPUID_REG_ECX, 28, 1}, - {"f16c", 0x00000001, NA, CPUID_REG_ECX, 29, 1}, - {"rdrand", 0x00000001, NA, CPUID_REG_ECX, 30, 1}, - {"hypervisor", 0x00000001, NA, CPUID_REG_ECX, 31, 1}, - - {"fpu", 0x00000001, NA, CPUID_REG_EDX, 0, 1}, - {"vme", 0x00000001, NA, CPUID_REG_EDX, 1, 1}, - {"de", 0x00000001, NA, CPUID_REG_EDX, 2, 1}, - {"pse", 0x00000001, NA, CPUID_REG_EDX, 3, 1}, - {"tsc", 0x00000001, NA, CPUID_REG_EDX, 4, 1}, - {"msr", 0x00000001, NA, CPUID_REG_EDX, 5, 1}, - {"pae", 0x00000001, NA, CPUID_REG_EDX, 6, 1}, - {"mce", 0x00000001, NA, CPUID_REG_EDX, 7, 1}, + {"cmpxchg8", 0x00000001, NA, CPUID_REG_EDX, 8, 1}, - {"apic", 0x00000001, NA, CPUID_REG_EDX, 9, 1}, {"sysenter", 0x00000001, NA, CPUID_REG_EDX, 11, 1}, - {"mtrr", 0x00000001, NA, CPUID_REG_EDX, 12, 1}, - {"pge", 0x00000001, NA, CPUID_REG_EDX, 13, 1}, - {"mca", 0x00000001, NA, CPUID_REG_EDX, 14, 1}, - {"cmov", 0x00000001, NA, CPUID_REG_EDX, 15, 1}, - {"pat", 0x00000001, NA, CPUID_REG_EDX, 16, 1}, - {"pse36", 0x00000001, NA, CPUID_REG_EDX, 17, 1}, {"psn", 0x00000001, NA, CPUID_REG_EDX, 18, 1}, {"clfsh", 0x00000001, NA, CPUID_REG_EDX, 19, 1}, - {"ds", 0x00000001, NA, CPUID_REG_EDX, 21, 1}, - {"acpi", 0x00000001, NA, CPUID_REG_EDX, 22, 1}, - {"mmx", 0x00000001, NA, CPUID_REG_EDX, 23, 1}, - {"fxsr", 0x00000001, NA, CPUID_REG_EDX, 24, 1}, - {"sse", 0x00000001, NA, CPUID_REG_EDX, 25, 1}, - {"sse2", 0x00000001, NA, CPUID_REG_EDX, 26, 1}, - {"ss", 0x00000001, NA, CPUID_REG_EDX, 27, 1}, - {"htt", 0x00000001, NA, CPUID_REG_EDX, 28, 1}, {"tm", 0x00000001, NA, CPUID_REG_EDX, 29, 1}, {"ia64", 0x00000001, NA, CPUID_REG_EDX, 30, 1}, {"pbe", 0x00000001, NA, CPUID_REG_EDX, 31, 1}, {"arat", 0x00000006, NA, CPUID_REG_EAX, 2, 1}, - {"fsgsbase", 0x00000007, 0, CPUID_REG_EBX, 0, 1}, - {"tsc_adjust", 0x00000007, 0, CPUID_REG_EBX, 1, 1}, - {"bmi1", 0x00000007, 0, CPUID_REG_EBX, 3, 1}, - {"hle", 0x00000007, 0, CPUID_REG_EBX, 4, 1}, - {"avx2", 0x00000007, 0, CPUID_REG_EBX, 5, 1}, - {"smep", 0x00000007, 0, CPUID_REG_EBX, 7, 1}, - {"bmi2", 0x00000007, 0, CPUID_REG_EBX, 8, 1}, - {"erms", 0x00000007, 0, CPUID_REG_EBX, 9, 1}, - {"invpcid", 0x00000007, 0, CPUID_REG_EBX, 10, 1}, - {"rtm", 0x00000007, 0, CPUID_REG_EBX, 11, 1}, - {"cmt", 0x00000007, 0, CPUID_REG_EBX, 12, 1}, - {"mpx", 0x00000007, 0, CPUID_REG_EBX, 14, 1}, - {"avx512f", 0x00000007, 0, CPUID_REG_EBX, 16, 1}, - {"avx512dq", 0x00000007, 0, CPUID_REG_EBX, 17, 1}, - {"rdseed", 0x00000007, 0, CPUID_REG_EBX, 18, 1}, - {"adx", 0x00000007, 0, CPUID_REG_EBX, 19, 1}, - {"smap", 0x00000007, 0, CPUID_REG_EBX, 20, 1}, - {"avx512-ifma", 0x00000007, 0, CPUID_REG_EBX, 21, 1}, - {"clflushopt", 0x00000007, 0, CPUID_REG_EBX, 23, 1}, - {"clwb", 0x00000007, 0, CPUID_REG_EBX, 24, 1}, - {"proc-trace", 0x00000007, 0, CPUID_REG_EBX, 25, 1}, - {"avx512pf", 0x00000007, 0, CPUID_REG_EBX, 26, 1}, - {"avx512er", 0x00000007, 0, CPUID_REG_EBX, 27, 1}, - {"avx512cd", 0x00000007, 0, CPUID_REG_EBX, 28, 1}, - {"sha", 0x00000007, 0, CPUID_REG_EBX, 29, 1}, - {"avx512bw", 0x00000007, 0, CPUID_REG_EBX, 30, 1}, - {"avx512vl", 0x00000007, 0, CPUID_REG_EBX, 31, 1}, - - {"prefetchwt1", 0x00000007, 0, CPUID_REG_ECX, 0, 1}, - {"avx512-vbmi", 0x00000007, 0, CPUID_REG_ECX, 1, 1}, - {"umip", 0x00000007, 0, CPUID_REG_ECX, 2, 1}, - {"pku", 0x00000007, 0, CPUID_REG_ECX, 3, 1}, - {"ospke", 0x00000007, 0, CPUID_REG_ECX, 4, 1}, - {"avx512-vbmi2", 0x00000007, 0, CPUID_REG_ECX, 6, 1}, - {"cet-ss", 0x00000007, 0, CPUID_REG_ECX, 7, 1}, - {"gfni", 0x00000007, 0, CPUID_REG_ECX, 8, 1}, - {"vaes", 0x00000007, 0, CPUID_REG_ECX, 9, 1}, - {"vpclmulqdq", 0x00000007, 0, CPUID_REG_ECX, 10, 1}, - {"avx512-vnni", 0x00000007, 0, CPUID_REG_ECX, 11, 1}, - {"avx512-bitalg",0x00000007, 0, CPUID_REG_ECX, 12, 1}, - {"avx512-vpopcntdq",0x00000007,0,CPUID_REG_ECX, 14, 1}, - {"rdpid", 0x00000007, 0, CPUID_REG_ECX, 22, 1}, - {"cldemote", 0x00000007, 0, CPUID_REG_ECX, 25, 1}, - {"pks", 0x00000007, 0, CPUID_REG_ECX, 31, 1}, - - {"avx512-4vnniw",0x00000007, 0, CPUID_REG_EDX, 2, 1}, - {"avx512-4fmaps",0x00000007, 0, CPUID_REG_EDX, 3, 1}, - {"fsrm", 0x00000007, 0, CPUID_REG_EDX, 4, 1}, - {"avx512-vp2intersect",0x00000007,0,CPUID_REG_EDX,8, 1}, - {"srbds-ctrl", 0x00000007, 0, CPUID_REG_EDX, 9, 1}, - {"md-clear", 0x00000007, 0, CPUID_REG_EDX, 10, 1}, - {"serialize", 0x00000007, 0, CPUID_REG_EDX, 14, 1}, - {"tsxldtrk", 0x00000007, 0, CPUID_REG_EDX, 16, 1}, - {"cet-ibt", 0x00000007, 0, CPUID_REG_EDX, 20, 1}, - {"avx512-fp16", 0x00000007, 0, CPUID_REG_EDX, 23, 1}, - {"ibrsb", 0x00000007, 0, CPUID_REG_EDX, 26, 1}, - {"stibp", 0x00000007, 0, CPUID_REG_EDX, 27, 1}, - {"l1d-flush", 0x00000007, 0, CPUID_REG_EDX, 28, 1}, - {"arch-caps", 0x00000007, 0, CPUID_REG_EDX, 29, 1}, - {"core-caps", 0x00000007, 0, CPUID_REG_EDX, 30, 1}, - {"ssbd", 0x00000007, 0, CPUID_REG_EDX, 31, 1}, - - {"avx-vnni", 0x00000007, 1, CPUID_REG_EAX, 4, 1}, - {"avx512-bf16", 0x00000007, 1, CPUID_REG_EAX, 5, 1}, - {"fzrm", 0x00000007, 1, CPUID_REG_EAX, 10, 1}, - {"fsrs", 0x00000007, 1, CPUID_REG_EAX, 11, 1}, - {"fsrcs", 0x00000007, 1, CPUID_REG_EAX, 12, 1}, - {"wrmsrns", 0x00000007, 1, CPUID_REG_EAX, 19, 1}, - {"avx-ifma", 0x00000007, 1, CPUID_REG_EAX, 23, 1}, - - {"avx-vnni-int8",0x00000007, 1, CPUID_REG_EDX, 4, 1}, - {"avx-ne-convert",0x00000007, 1, CPUID_REG_EDX, 5, 1}, - {"cet-sss", 0x00000007, 1, CPUID_REG_EDX, 18, 1}, - - {"intel-psfd", 0x00000007, 2, CPUID_REG_EDX, 0, 1}, - {"ipred-ctrl", 0x00000007, 2, CPUID_REG_EDX, 1, 1}, - {"rrsba-ctrl", 0x00000007, 2, CPUID_REG_EDX, 2, 1}, - {"ddp-ctrl", 0x00000007, 2, CPUID_REG_EDX, 3, 1}, - {"bhi-ctrl", 0x00000007, 2, CPUID_REG_EDX, 4, 1}, - {"mcdt-no", 0x00000007, 2, CPUID_REG_EDX, 5, 1}, - {"lahfsahf", 0x80000001, NA, CPUID_REG_ECX, 0, 1}, {"cmplegacy", 0x80000001, NA, CPUID_REG_ECX, 1, 1}, - {"svm", 0x80000001, NA, CPUID_REG_ECX, 2, 1}, - {"extapic", 0x80000001, NA, CPUID_REG_ECX, 3, 1}, {"altmovcr8", 0x80000001, NA, CPUID_REG_ECX, 4, 1}, - {"abm", 0x80000001, NA, CPUID_REG_ECX, 5, 1}, - {"sse4a", 0x80000001, NA, CPUID_REG_ECX, 6, 1}, - {"misalignsse", 0x80000001, NA, CPUID_REG_ECX, 7, 1}, - {"3dnowprefetch",0x80000001, NA, CPUID_REG_ECX, 8, 1}, - {"osvw", 0x80000001, NA, CPUID_REG_ECX, 9, 1}, - {"ibs", 0x80000001, NA, CPUID_REG_ECX, 10, 1}, - {"xop", 0x80000001, NA, CPUID_REG_ECX, 11, 1}, - {"skinit", 0x80000001, NA, CPUID_REG_ECX, 12, 1}, - {"wdt", 0x80000001, NA, CPUID_REG_ECX, 13, 1}, - {"lwp", 0x80000001, NA, CPUID_REG_ECX, 15, 1}, - {"fma4", 0x80000001, NA, CPUID_REG_ECX, 16, 1}, {"nodeid", 0x80000001, NA, CPUID_REG_ECX, 19, 1}, - {"tbm", 0x80000001, NA, CPUID_REG_ECX, 21, 1}, - {"topoext", 0x80000001, NA, CPUID_REG_ECX, 22, 1}, {"perfctr_core", 0x80000001, NA, CPUID_REG_ECX, 23, 1}, {"perfctr_nb", 0x80000001, NA, CPUID_REG_ECX, 24, 1}, - {"syscall", 0x80000001, NA, CPUID_REG_EDX, 11, 1}, - {"nx", 0x80000001, NA, CPUID_REG_EDX, 20, 1}, - {"mmxext", 0x80000001, NA, CPUID_REG_EDX, 22, 1}, - {"ffxsr", 0x80000001, NA, CPUID_REG_EDX, 25, 1}, - {"page1gb", 0x80000001, NA, CPUID_REG_EDX, 26, 1}, - {"rdtscp", 0x80000001, NA, CPUID_REG_EDX, 27, 1}, - {"lm", 0x80000001, NA, CPUID_REG_EDX, 29, 1}, - {"3dnowext", 0x80000001, NA, CPUID_REG_EDX, 30, 1}, - {"3dnow", 0x80000001, NA, CPUID_REG_EDX, 31, 1}, - {"procpkg", 0x00000004, 0, CPUID_REG_EAX, 26, 6}, {"invtsc", 0x80000007, NA, CPUID_REG_EDX, 8, 1}, - {"clzero", 0x80000008, NA, CPUID_REG_EBX, 0, 1}, - {"rstr-fp-err-ptrs", 0x80000008, NA, CPUID_REG_EBX, 2, 1}, - {"wbnoinvd", 0x80000008, NA, CPUID_REG_EBX, 9, 1}, - {"ibpb", 0x80000008, NA, CPUID_REG_EBX, 12, 1}, - {"ibrs", 0x80000008, NA, CPUID_REG_EBX, 14, 1}, - {"amd-stibp", 0x80000008, NA, CPUID_REG_EBX, 15, 1}, - {"ibrs-always", 0x80000008, NA, CPUID_REG_EBX, 16, 1}, - {"stibp-always", 0x80000008, NA, CPUID_REG_EBX, 17, 1}, - {"ibrs-fast", 0x80000008, NA, CPUID_REG_EBX, 18, 1}, - {"ibrs-same-mode", 0x80000008, NA, CPUID_REG_EBX, 19, 1}, - {"no-lmsl", 0x80000008, NA, CPUID_REG_EBX, 20, 1}, {"ppin", 0x80000008, NA, CPUID_REG_EBX, 23, 1}, - {"amd-ssbd", 0x80000008, NA, CPUID_REG_EBX, 24, 1}, - {"virt-ssbd", 0x80000008, NA, CPUID_REG_EBX, 25, 1}, - {"ssb-no", 0x80000008, NA, CPUID_REG_EBX, 26, 1}, - {"psfd", 0x80000008, NA, CPUID_REG_EBX, 28, 1}, {"btc-no", 0x80000008, NA, CPUID_REG_EBX, 29, 1}, - {"ibpb-ret", 0x80000008, NA, CPUID_REG_EBX, 30, 1}, {"nc", 0x80000008, NA, CPUID_REG_ECX, 0, 8}, {"apicidsize", 0x80000008, NA, CPUID_REG_ECX, 12, 4}, @@ -316,22 +155,55 @@ int libxl_cpuid_parse_config(libxl_cpuid_policy_list *cpuid, const char* str) {"svm_pausefilt",0x8000000a, NA, CPUID_REG_EDX, 10, 1}, {"lfence+", 0x80000021, NA, CPUID_REG_EAX, 2, 1}, - {"nscb", 0x80000021, NA, CPUID_REG_EAX, 6, 1}, - {"auto-ibrs", 0x80000021, NA, CPUID_REG_EAX, 8, 1}, - {"cpuid-user-dis", 0x80000021, NA, CPUID_REG_EAX, 17, 1}, {"maxhvleaf", 0x40000000, NA, CPUID_REG_EAX, 0, 8}, {NULL, 0, NA, CPUID_REG_INV, 0, 0} }; + static const struct feature_name { + const char *name; + unsigned int bit; + } features[] = INIT_FEATURE_NAMES; + /* + * NB: if we switch to using a cpu_policy derived object instead of a + * libxl_cpuid_policy_list we could get rid of the featureset -> cpuid leaf + * conversion table and use a featureset directly as we have conversions + * to/from featureset and cpu_policy. + */ + static const struct { + uint32_t leaf, subleaf; + unsigned int reg; + } feature_to_cpuid[] = { + {0x00000001, NA, CPUID_REG_EDX}, + {0x00000001, NA, CPUID_REG_ECX}, + {0x80000001, NA, CPUID_REG_EDX}, + {0x80000001, NA, CPUID_REG_ECX}, + {0x0000000D, 1, CPUID_REG_EAX}, + {0x00000007, 0, CPUID_REG_EBX}, + {0x00000007, 0, CPUID_REG_ECX}, + {0x80000007, NA, CPUID_REG_EDX}, + {0x80000008, NA, CPUID_REG_EBX}, + {0x00000007, 0, CPUID_REG_EDX}, + {0x00000007, 1, CPUID_REG_EAX}, + {0x80000021, NA, CPUID_REG_EAX}, + {0x00000007, 1, CPUID_REG_EBX}, + {0x00000007, 2, CPUID_REG_EDX}, + {0x00000007, 1, CPUID_REG_ECX}, + {0x00000007, 1, CPUID_REG_EDX}, + { NA, NA, CPUID_REG_INV}, /* MSR_ARCH_CAPS.eax */ + { NA, NA, CPUID_REG_INV}, /* MSR_ARCH_CAPS.edx */ + }; #undef NA char *sep, *val, *endptr; int i; const struct cpuid_flags *flag; + struct cpuid_flags f; struct xc_xend_cpuid *entry; unsigned long num; char flags[33], *resstr; + BUILD_BUG_ON(ARRAY_SIZE(feature_to_cpuid) != FEATURESET_NR_ENTRIES); + sep = strchr(str, '='); if (sep == NULL) { return 1; @@ -342,6 +214,28 @@ int libxl_cpuid_parse_config(libxl_cpuid_policy_list *cpuid, const char* str) if(!strncmp(str, flag->name, sep - str) && flag->name[sep - str] == 0) break; } + if (flag->name == NULL) { + const struct feature_name *feat; + /* Provide a NUL terminated feature name to the search helper. */ + char *name = strndup(str, sep - str); + + if (name == NULL) + return 4; + + feat = bsearch(name, features, ARRAY_SIZE(features), sizeof(features[0]), + search_feature); + free(name); + + if (feat != NULL) { + f.name = feat->name; + f.leaf = feature_to_cpuid[feat->bit / 32].leaf; + f.subleaf = feature_to_cpuid[feat->bit / 32].subleaf; + f.reg = feature_to_cpuid[feat->bit / 32].reg; + f.bit = feat->bit % 32; + f.length = 1, + flag = &f; + } + } if (flag->name == NULL) { return 2; } diff --git a/tools/xl/xl_parse.c b/tools/xl/xl_parse.c index 1f6f47daf4e1..80b189dea0c1 100644 --- a/tools/xl/xl_parse.c +++ b/tools/xl/xl_parse.c @@ -2620,6 +2620,9 @@ skip_usbdev: case 3: errstr = "illegal CPUID value (must be: [0|1|x|k|s])"; break; + case 4: + errstr = "out of memory"; + break; default: errstr = "unknown error"; break; -- 2.40.0 From xen-devel-bounces@lists.xenproject.org Mon Jun 05 10:45:23 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 05 Jun 2023 10:45:23 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543658.848809 (Exim 4.92) (envelope-from ) id 1q67i1-000827-Ms; Mon, 05 Jun 2023 10:45:09 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543658.848809; Mon, 05 Jun 2023 10:45:09 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q67i1-000820-K1; Mon, 05 Jun 2023 10:45:09 +0000 Received: by outflank-mailman (input) for mailman id 543658; Mon, 05 Jun 2023 10:45:08 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q67i0-00081u-FD for xen-devel@lists.xenproject.org; Mon, 05 Jun 2023 10:45:08 +0000 Received: from esa6.hc3370-68.iphmx.com (esa6.hc3370-68.iphmx.com [216.71.155.175]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 085ddbc3-038e-11ee-b232-6b7b168915f2; Mon, 05 Jun 2023 12:45:06 +0200 (CEST) Received: from mail-bn7nam10lp2100.outbound.protection.outlook.com (HELO NAM10-BN7-obe.outbound.protection.outlook.com) ([104.47.70.100]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 05 Jun 2023 06:45:01 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by SA1PR03MB6436.namprd03.prod.outlook.com (2603:10b6:806:1c3::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.28; Mon, 5 Jun 2023 10:44:58 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::10bb:98bc:e36d:36ab]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::10bb:98bc:e36d:36ab%3]) with mapi id 15.20.6455.030; Mon, 5 Jun 2023 10:44:58 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 085ddbc3-038e-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1685961906; h=message-id:date:from:subject:to:cc:references: in-reply-to:content-transfer-encoding:mime-version; bh=3E+dlw5e7v72e81zD0x22jYE5i0pDlrjYWa/mFT9Lc8=; b=b1SIbJ4giyL4H1+Mv/46S6ITZj6oHS5XOMTnTZL3EQp6dgWik40dmEQt Y5XUP4rzBZ6GWTDNH+mNNOETI7VAKK0oabzYmTeenD/cuzHbAf3lNP/kC iLj63PgCWm99fFFY6qAovuIXSFeWzDT4/b1HpnaDzzClIQWBC2aY6vL2B Q=; X-IronPort-RemoteIP: 104.47.70.100 X-IronPort-MID: 110930737 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:iGwGEK1rFuVVqgq1WPbD5VBwkn2cJEfYwER7XKvMYLTBsI5bp2BRn DFOXWqCPviMMTH2cox2bongo0xVv5/Xz9NiQAFupC1hF35El5HIVI+TRqvS04F+DeWYFR46s J9OAjXkBJppJpMJjk71atANlVEliefTAOK6ULWeUsxIbVcMYD87jh5+kPIOjIdtgNyoayuAo tq3qMDEULOf82cc3lk8teTb8HuDgNyo4GlD5gJmOagS1LPjvyJ94Kw3dPnZw0TQGuG4LsbiL 87fwbew+H/u/htFIrtJRZ6iLyXm6paLVeS/oiI+t5qK23CulQRrukoPD9IOaF8/ttm8t4sZJ OOhF3CHYVxB0qXkwIzxWvTDes10FfUuFLTveRBTvSEPpqFvnrSFL/hGVSkL0YMkFulfEEt32 PMBdWA0MDPArLy90eiDS+81r5F2RCXrFNt3VnBI6xj8VK5ja7acBqLA6JlfwSs6gd1IEbDGf c0FZDFzbRPGJRpSJlMQD5F4l+Ct7pX9W2QA9BTJ+uxouy6KlFQZPLvFabI5fvSjQ8lPk1nej WXB52njWTkRNcCFyCrD+XWp7gPKtXqiANNJTOLjqZaGhnWw/UsaC0BOCWekuMuep2SHdt5HM Bwtr39GQa8asRbDosPGdze1umKetxgQHf9ZCfQn6Rqlw7DRpQ2eAwAsXjNHLdArqsIybTgrz UOS2cPkAyR1t7+YQm7b8a2bxRuQEyUIKW4JZQcfUBAIpdLkpekbkRbnXttlVqmvgbXdAirsy jqHqCw/gbQ7jsMR0ai/u1fdjFqEpIXNTwMzzhXaWCSi9AwRTLCiY4uk+F3K98FqJYySTkSCl HUcks3Y5+cLZaxhjwSISeQJWbuvuPCMNWSEhUY1RsF5sTOw53SkYIZcpilkI1tkOdoFfjmvZ 1LPvQRW59lYO37CgbJLXr9dwv8ClcDIfekJnNiNBjaSSvCdrDO6wRw= IronPort-HdrOrdr: A9a23:tUnJaaGrQ8UpojfepLqELMeALOsnbusQ8zAXPiBKJCC9E/bo8v xG+c5w6faaslkssR0b9+xoW5PwI080l6QU3WB5B97LMDUO0FHCEGgI1/qA/9SPIUzDHu4279 YbT0B9YueAcGSTW6zBkXWF+9VL+qj5zEix792uq0uE1WtRGtldBwESMHf9LmRGADNoKLAeD5 Sm6s9Ot1ObCA8qhpTSPAhiYwDbzee77a7bXQ== X-Talos-CUID: =?us-ascii?q?9a23=3AeYhGs2mg+5ulvrwy4uYQYRdVQKjXOWz39VrfOhL?= =?us-ascii?q?oMDhKC5bLQk7KwKJiyuM7zg=3D=3D?= X-Talos-MUID: =?us-ascii?q?9a23=3AFAcLsA7tIWgaAya1iO4EREpxxoxL2IOnCx1Vzak?= =?us-ascii?q?ZovujGAZJFjuFl2SOF9o=3D?= X-IronPort-AV: E=Sophos;i="6.00,217,1681185600"; d="scan'208";a="110930737" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=KK46w8bYqn6dfZ8JVncfqfkpQYOuSZ9M59XJ4TuDE24MET9+9a6kdprST1XuieERxdjhP0M8zadPF7N10MWondSX84rXHh+Mb8RFLTX32gGD6zffLZAhjwdN65bsgiEeP4cN6zMJgx/7aAwImnErqET7R7yukcMOqy68dxNSi1tLxAyR/2ZnSv3KL5cKGUi+66RZsu4e0rXbJjlrRZ/6m2Hslt5zmlpZ0azGHho1W8bbjdsoJYKT90qNqTHX8VK2dAX2QkAYNAvIAEXEciyb0u2Cz8ZbHC5QNno/XzvhCyWdbcxhlKebUv37x9J7HUqLdOyphSO5rsxl827LwYyQJA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=NL4nwbo+OLRZcDM4Qth1iN9b62Z9Qz0zTF1XjqN8ZOs=; b=U8RlrHWDqy+poyTMc2naDCMThXcbqoNbEpmIZfc1OCqld87mtqyAsnEJUGMQIBmt/X/7ny9NNwW8/nMygLbR5Jjh8jSM4fhixzupbfxs+JtfJY+uWatT5u7nHspc41dlGZJX1uHc3+NneZYvFqGRVdG+ZW1WhTdL6g0g3J1Z/viLhkmk4nqkwVS/FpFniQA0aTcfWkRNXw/+9Y6OuNFkS1qEk7+Pnr726wi7N0WObn86b+Mdu6WLjZS6yaCldVyGNFgP0l0OFveYAWymfk3QOGziRUELzCTrj6MH26ecgEdluazDGzfgkOz61t4t4NOG23PK0nSnDtk3VkkMXBlYPQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=NL4nwbo+OLRZcDM4Qth1iN9b62Z9Qz0zTF1XjqN8ZOs=; b=BHFqrdMU891YAC34yF65IGDyD7xcrOnBdaG66zpv/+qTttnegZ8+rNQQTpLqrnl+H82iU0CjSwvWgOk3uYJHniZ6CciL1r+JbLJETD1WcOvytHaIV16+UNiFIUAU61xGHPAXggdEvrjbEP5MHd7HAKbrLYFfz1UzHUqgr+UBuSM= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: <753e4206-b398-434a-7cff-62c361cee114@citrix.com> Date: Mon, 5 Jun 2023 11:44:51 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 From: Andrew Cooper Subject: Re: [PATCH] xen: Fix incorrect taint constant Content-Language: en-GB To: Bertrand Marquis Cc: Xen-devel , Jan Beulich , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , Stefano Stabellini , Julien Grall , Volodymyr Babchuk References: <20230605100512.1748007-1-andrew.cooper3@citrix.com> In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO2P265CA0286.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:a1::34) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|SA1PR03MB6436:EE_ X-MS-Office365-Filtering-Correlation-Id: 9596830c-d447-4d46-2bf6-08db65b1e7d6 X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: iNqS7CpWi3BRDoYmBuerZaR8qa2szhp6rRTdTYe+wU1Jxd8V7nXB5E+s8VQ90EFLwZMOspsMR6Am7XTHjZVDSs3GHHvNfvimwOmiyiFJfV/pTwWzlK9EGy7E5yHuGfnCz2zi6+syzF+1bNbtji22qBnPLk47PVviZ4f7OEudv7FWnSlcNsX8+TH5pfGkUaP0s1I86OPfSZVOLNQmatTk16iYCAdERrrDSsxTqJuD8D3Vzgn4wuJkZpUqrKsKy7mGMgrV22i+hYrXE0noLbW9Y2lZNmHhmg07XWFBEvY2De8ln8eavdJ4o/kCIkE+hft/OIKhd0Wz5r0bMqcawf7ZsL8xr1SN5R8VxQxQYzTfDzqy1pVS/SipnKmMmZ6jzc3YQSDWnOmsQwV0GYvbulF/PmKFDVANgS9ru25oIFJsXR1jtm9YPHHd/50JNSTVwJcEYeRUQcaOeDDjXSOvJav2yiBdvIOSk78dJcIvL/zisziAZ9lC0otjt5gwftDHeSHbe2SQ2qoltKMMm65usMBnMWakHkm5vo1Pja5qVCJG8P0z1dBs3fNyKHEiKl23HLNxG6eNCQKAr8jeGNuQqOXA0u0C2kKDuDkl8fgNL/UGG4gMvLgcfHU0L5loV7x1GNVGjlajncQ37L4OXdN+zY9P+g== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(346002)(376002)(136003)(39860400002)(366004)(396003)(451199021)(66556008)(31686004)(4326008)(66476007)(6916009)(66946007)(316002)(54906003)(41300700001)(5660300002)(8676002)(8936002)(2906002)(478600001)(82960400001)(53546011)(6506007)(6512007)(26005)(31696002)(86362001)(38100700002)(36756003)(6486002)(2616005)(186003)(6666004)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?SVdlZmM4NXF6TkxpRXBQVTloTW1LRGRCRld6c3hTd0txMlpMRGF6L0xCMzZO?= =?utf-8?B?Z3ZLdDNYNWlndTJ6RkNKY0FUR25kV2lGU2lsd3E1dTRENWF6K1JOMGRpdGZW?= =?utf-8?B?REovU05CUUhOUXZFSmZkclpEUGZ4WG9DeVhpZXFDQ1JFTXptZ3pIV1V2UEor?= =?utf-8?B?aE5SVWp0SDMyMlA2TEd5aEQ1bmFvSDJSU1JWMWhBTGtKR09RYWdpYk1NSHJI?= =?utf-8?B?emd1Nzd3NzBreFZjaGxSeTFNZXp4OTl2Z3gyRTRKbWlubVpsNmMxQzJjZzFp?= =?utf-8?B?OTFzeXA5eXNBTS8vakdZOVRQSmxpWGpkZ0grK3J1eTl5K1c4dnhYYzZiRTJR?= =?utf-8?B?SG9zSmZlREpGUHYvczdodVNWejZLWEs2M3NZeHJIRXQzRld5cm5XckRzc2tY?= =?utf-8?B?QXAzeDhVNUJsT2k4SWN3YUJrUnJIcjNxVEU3bHZSTUx2WjRnc0RVZWlsMEth?= =?utf-8?B?aXVPY2dZeGpJT3BMQko5OU53UHFjWWl0cHVNbGFpS1dnMmpmbDVhN2tkT0lC?= =?utf-8?B?STQ3WXB0TzNMK0UrQnJXWExsR0x1TkE4T1lTR1Q1dnVVdWlNQm1nUCs0RU5r?= =?utf-8?B?Q2paSjBCRjVNaVg4YXJCM3ZvdlQvdTNwSS9wajNybmtuaDFkK3RtZ2dmKzdL?= =?utf-8?B?NlpZUm0zTWF4WjZVMHA1cTJTczQzdVJVbHZrVkl0eHlNNzdXeENrZU5KUENT?= =?utf-8?B?dVZHdis5ZjZjL1BIN0U3ZlN2RGt0VVdhNHpxVElxZCttTU5BaFdIRkRZZElF?= =?utf-8?B?KzNxN3RYU1VSMlYyeXZpSGFYeUtUWE1HTkRIdEpsQnp5eFUvT05CeUFNZG96?= =?utf-8?B?RGlrYXpsSE93dXB4Umc1b3pHaU1abVpaZTRWSzhyL25lVU9YMFordGtRRzBK?= =?utf-8?B?VTIzRndsc2l3Y2pqM3dPc0VVMkVZNHFzSW0xQXNsZ3FsSFQxNlc3T3lqa1py?= =?utf-8?B?QmxWVUFMbURSSTBhYXJRU1ErT3Z6L21XS1IxYng3VkJ3SVpiM2pvTFZvYXl4?= =?utf-8?B?MVJXaEYwMFo3Q0t4dVNlYnJBNkozQ2xFMW94cFRWS1pwbWRxTENUNFpKREtv?= =?utf-8?B?bWgrZ3gvbTArRmh2ODRIZGpXdm1XbkptODMxaUswN2RGV1A5K2wzeHZrRTk1?= =?utf-8?B?YWlSOVZQdkRpVkl2OUN3dDg5YXdPeUhMdVpjbkg3Sjg0N2JVMi9RRWxtRzBL?= =?utf-8?B?ckVoV2o3SzIrYUY5K1A2bTFYc0JUYXdOUzU5R3FIRklvbndnQVN0c0dSb0hl?= =?utf-8?B?RmMvWkRhN1ZwUWlnV2tsL2RDdUJueVN5Sm5pbEwveW5WM1JETUQ3bzNnT2hk?= =?utf-8?B?SjExWVJiNUlkUjZtRDI5UHRBRUdwNDFPWlU3WkFSTFBZRmx5Y3VQUm8ydHA3?= =?utf-8?B?a3NoY2RlZ2N3cnBOY2gxR2Q0bU4zVmpxMXcwMDljM2FyTGlxSXpKUHNhR3dt?= =?utf-8?B?bzJrejVnY0g3ZyszL2tVSnR2bCtHVStBVGVOTDdubVFZUk16OGp6RVJxS3JM?= =?utf-8?B?bWNpRXNxbkdEYk1oczBmMVRiU05lbkk4TlJwWllMbjV2Q1RMT21IcllHOXQw?= =?utf-8?B?YVdjWkxRN2NSZXM4bTFKMWV5T0dPcGdmaUtMQ1NQZk0xREdDNE5aNWdvZm03?= =?utf-8?B?Lys4U2hrTjRJZ28xYzg0QXRPWGxpZ3c0dzc0dkhkNDNZQ2dEWTZCcmw1R1pz?= =?utf-8?B?VEREYkZnb01vZ3RQa1hTSzR4cXROWVg5UzlUZm43ZnRvMThYNllZT2ZNa1Qv?= =?utf-8?B?OWQwUjFvL3grTThmTjJwQmtxYWFDR0dNRDVScUNIRlRLQXZkNWJaTE1mYXdU?= =?utf-8?B?cHEwZWZSbG5YQ1VVR0xtRmhjaVJnZFdOM3YrenR3L0tMSFErbU9pV1FHQms1?= =?utf-8?B?WFFUTUxZNU8waUJCczM0MUNNMnFHczdIWTFZRFhFUy9pYnZvNmVBYkJrRVh5?= =?utf-8?B?dFRJK21UZVpkRFN3N2ZNbS90cHJ1QysyVVhqRGY0eWVyVVFDQ3Rla2xPS1ZS?= =?utf-8?B?YndDbC9XS01jaGRmY0dlcEgyVjA1K1k3LzZ2ZmtiMUo3eVpsVnZZcFR2Z3dx?= =?utf-8?B?UTJ6dWlvTS9ZajAwdFZjbVQ3T2V6ZmMwYS8xV3ZYTStTUlR2Wlk5cjFFYTZX?= =?utf-8?B?Z3pZWXNER2IyQUcxVDVkUGJaTlRvT2pveEs5My9ZMFBEaEtNdWpqUCtabUxX?= =?utf-8?B?cXc9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: ubl/59wAp64kdiLykv8gA4u2MHToJBjB5Q911mdb5l871sZVKZBw/mBLQUJ57tNid9B+N0D0FDuQ/CF2uHM810IMOluHNwzPhRJW9QkcNbWC8Pyrx7YShXgMxjWqLndeNDIfWqaq1wAE9XYmdj58igSbkdaasK77A0kVGH9xCLv3FE86ymJO3v5SHj9tDmNPZ6R1nlcvmWfvxbX/ABAYtbb3RdPimmkIvxiJHSiXJ7KFlEoN8f2wXERin2RGTQX9RUcvfDeme5IFEQAyGyJOEWmSMi6FaIfXRk0MuNs7dH8x/EXlfozz1J3zwEM9xcocFPd3HPLM66uU/hsI7RJ424G4E0xFR44rV4ZXN4eRra7gYwDb5nVn2cpy4uKZBHPb69ozrTy3gQzrWqB38vqEt1gmy8l6xNNFyBIcnWjIjOXvcaRDR9HcbVwoq1JyKoFHoryWr6kIe94KBt0AxGaRFLqeKJCNahiRbUrRQxWYL2Y37VUxOP1cvLe87Nddq3jjc2xWBmR4YeiAkAI5wAMuUWEy526XXJWlniHt9lygNXvICPOA+ALSmvmacw+gX6ARklOc43mqoixq060UV04JEWiwPR+EVCM4EieI07xACTcT01APdy9hJep9GgjaSTSORorTOaHWKa40XVvO4hdrTZLEZG8Wj3maAkOiYYx0EOEFMADrE5DoCEmEo7iuSBcldpPEXfbDLdF2Yw5poyqvS2BppzHPWNaD/zPpcheZIOyLZtng41YEN4UVYtuW6EJ0MK4ARsV00GKI2vUueWLUZrWm/jf2ry1njMYP9+WUHwHy0ahx2tohzrADBUHK5RRyUkd820qqMm50BfwySu2n/R8H2Gf/QDmUU9xZxmPrFWS28CbH2Ii4fOICjMjYbBip04GrjU1/H0xha/niOhztaA== X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 9596830c-d447-4d46-2bf6-08db65b1e7d6 X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Jun 2023 10:44:57.8749 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: +OoolrexmAhPVVxEeKXWIlBCQKoI1AqEucLr0qfY11+uqlpqlYRes1W5Gw2UMXM9RqLyn7P5B/O3VGm9V7OMO+RRJNYWQfw5ZOXzsBuUplc= X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA1PR03MB6436 On 05/06/2023 11:29 am, Bertrand Marquis wrote: > Hi Andrew, > >> On 5 Jun 2023, at 12:05, Andrew Cooper wrote: >> >> Insecure the word being looked for here. Especially given the nature of the >> sole caller, and the (correct) comment next to it. > Good finding. > >> I've left the taint constant as 'U' as it's a rather more user-visible. > I would vote to change the U in I here as it will make it more coherent > with the doc after your added fix for it. > >> Fixes: 82c0d3d491cc ("xen: Add an unsecure Taint type") >> Signed-off-by: Andrew Cooper >> --- >> CC: Jan Beulich >> CC: Roger Pau Monné >> CC: Wei Liu >> CC: Stefano Stabellini >> CC: Julien Grall >> CC: Volodymyr Babchuk >> CC: Bertrand Marquis >> >> I'm happy to change 'U' to 'I' if we think that no-one is going to be impacted >> by it. I just wasn't sure. > Here i do not think many will be impacted so I would rather make this coherent. Ok.  I'll submit a v2 with everything adjusted. ~Andrew From xen-devel-bounces@lists.xenproject.org Mon Jun 05 10:50:45 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 05 Jun 2023 10:50:45 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543663.848821 (Exim 4.92) (envelope-from ) id 1q67nH-00012X-BO; Mon, 05 Jun 2023 10:50:35 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543663.848821; Mon, 05 Jun 2023 10:50:35 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q67nH-00012Q-6f; Mon, 05 Jun 2023 10:50:35 +0000 Received: by outflank-mailman (input) for mailman id 543663; Mon, 05 Jun 2023 10:50:33 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q67nF-00012K-Ao for xen-devel@lists.xenproject.org; Mon, 05 Jun 2023 10:50:33 +0000 Received: from mail-pf1-x431.google.com (mail-pf1-x431.google.com [2607:f8b0:4864:20::431]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id ca6d12d0-038e-11ee-b232-6b7b168915f2; Mon, 05 Jun 2023 12:50:32 +0200 (CEST) Received: by mail-pf1-x431.google.com with SMTP id d2e1a72fcca58-656923b7c81so667991b3a.1 for ; Mon, 05 Jun 2023 03:50:32 -0700 (PDT) Received: from [157.82.204.254] ([157.82.204.254]) by smtp.gmail.com with ESMTPSA id n13-20020a170902e54d00b001ae4d4d2676sm6272139plf.269.2023.06.05.03.50.23 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Mon, 05 Jun 2023 03:50:30 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: ca6d12d0-038e-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=daynix-com.20221208.gappssmtp.com; s=20221208; t=1685962230; x=1688554230; h=content-transfer-encoding:in-reply-to:from:content-language :references:cc:to:subject:user-agent:mime-version:date:message-id :from:to:cc:subject:date:message-id:reply-to; bh=UmUHC2X/5xgeg9Gp980CrWFXAoMRAZPv1CuhMek7zw8=; b=0dV4P4UTF5Q9yhG8Hcohc/pMx65ZG0pFLoodIBIwdU7YR1KI+oCKxZLQBQzjifRaOt CZiEKevZTADYkyKdFk+fKfogs1dWS5XtTTDbkhLbJqijkAfCvnBtzJei68AtyDWvea05 kXrJhzcWwrhuqS3YhL1OEkUmUoAXm9nUZIB+7zZ7P92Ei0uBYlQRmUyQIXo0MlrZPZtl OQ878Y6um7CVdX47wxqKGytWFIh1kB3otMqkKZt20H9d72RLdohJ97dTufOKMsGiDcT7 dY1zbzUdGXQXlsi/1w8L+Rqq+gXpRE3xxXKCWSE8h3geqyw6TBSrAAr6M9PCXYP6O/rM xqJQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1685962230; x=1688554230; h=content-transfer-encoding:in-reply-to:from:content-language :references:cc:to:subject:user-agent:mime-version:date:message-id :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=UmUHC2X/5xgeg9Gp980CrWFXAoMRAZPv1CuhMek7zw8=; b=ZM/Ta3UXQMzTwtKoFjRjfMPR0/xQmIqtUYQhCdvbS6qdh6ZcXKluBKEdedsPIihAbK akSatj9fFyZFVh4anvB0A6P240qiPAa+751lM42IvpTm6NVHakbVcbtGKrGRQNAi1swY PSQQcTnqzfVHQRsbUkgf3IjNZotFFaNB8on6bnXY4jNqS8F37iBA8ijxCoNByZwqTNap 8HIfM3b1mtvMpr3pWJieQ/bt3wBhZ8eEbWAnEuSchvlmr7MonqS/k7cVh9HC5OIQsUHd 064ifHsYc4UGu59NAIqsPHdhcAtZTq4ldDnD4xf3fWPQoLu/mpA/ikAKqT486tKbRKqm DXBA== X-Gm-Message-State: AC+VfDxWeE1ZjCSIfLw+ezcMzz7Ygmx7c+by0jqz0XFEZAyHoVRveguU 7+fGaBUNGX6v6VJxBVuId4crkg== X-Google-Smtp-Source: ACHHUZ4myq9SjYxBNw1DV8NVHWzyARqbiII86IsZDfKi4SnI6xYxVtrB50TdMEoqePj+nqbLx8E0AQ== X-Received: by 2002:a05:6a20:3d81:b0:10c:4ff5:38b7 with SMTP id s1-20020a056a203d8100b0010c4ff538b7mr2290285pzi.6.1685962230533; Mon, 05 Jun 2023 03:50:30 -0700 (PDT) Message-ID: <231083f0-9813-abfc-8e2a-61deca9ca68d@daynix.com> Date: Mon, 5 Jun 2023 19:50:21 +0900 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux aarch64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH v2 1/2] net: Provide MemReentrancyGuard * to qemu_new_nic() To: Alexander Bulekov Cc: Mauro Matteo Cascella , P J P , Dmitry Fleytman , Beniamino Galvani , Peter Maydell , Strahinja Jankovic , Jason Wang , "Edgar E. Iglesias" , Alistair Francis , Stefan Weil , =?UTF-8?Q?C=c3=a9dric_Le_Goater?= , Andrew Jeffery , Joel Stanley , Richard Henderson , Helge Deller , Sriram Yagnaraman , Thomas Huth , Aleksandar Rikalo , Subbaraya Sundeep , Jan Kiszka , Tyrone Ting , Hao Wu , Max Filippov , Jiri Pirko , Daniel Henrique Barboza , David Gibson , Greg Kurz , Harsh Prateek Bora , Sven Schnelle , "Michael S. Tsirkin" , Stefano Stabellini , Anthony Perard , Paul Durrant , Rob Herring , Gerd Hoffmann , qemu-arm@nongnu.org, qemu-devel@nongnu.org, qemu-ppc@nongnu.org, xen-devel@lists.xenproject.org References: <20230601031859.7115-1-akihiko.odaki@daynix.com> <20230601031859.7115-2-akihiko.odaki@daynix.com> <20230605080616.ooanu5pk2pvs57yi@mozz.bu.edu> Content-Language: en-US From: Akihiko Odaki In-Reply-To: <20230605080616.ooanu5pk2pvs57yi@mozz.bu.edu> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit On 2023/06/05 17:06, Alexander Bulekov wrote: > On 230601 1218, Akihiko Odaki wrote: >> Recently MemReentrancyGuard was added to DeviceState to record that the >> device is engaging in I/O. The network device backend needs to update it >> when delivering a packet to a device. >> >> In preparation for such a change, add MemReentrancyGuard * as a >> parameter of qemu_new_nic(). >> >> Signed-off-by: Akihiko Odaki > > > Reviewed-by: Alexander Bulekov > > One minor comment below. > >> --- >> include/net/net.h | 1 + >> hw/net/allwinner-sun8i-emac.c | 3 ++- >> hw/net/allwinner_emac.c | 3 ++- >> hw/net/cadence_gem.c | 3 ++- >> hw/net/dp8393x.c | 3 ++- >> hw/net/e1000.c | 3 ++- >> hw/net/e1000e.c | 2 +- >> hw/net/eepro100.c | 4 +++- >> hw/net/etraxfs_eth.c | 3 ++- >> hw/net/fsl_etsec/etsec.c | 3 ++- >> hw/net/ftgmac100.c | 3 ++- >> hw/net/i82596.c | 2 +- >> hw/net/igb.c | 2 +- >> hw/net/imx_fec.c | 2 +- >> hw/net/lan9118.c | 3 ++- >> hw/net/mcf_fec.c | 3 ++- >> hw/net/mipsnet.c | 3 ++- >> hw/net/msf2-emac.c | 3 ++- >> hw/net/mv88w8618_eth.c | 3 ++- >> hw/net/ne2000-isa.c | 3 ++- >> hw/net/ne2000-pci.c | 3 ++- >> hw/net/npcm7xx_emc.c | 3 ++- >> hw/net/opencores_eth.c | 3 ++- >> hw/net/pcnet.c | 3 ++- >> hw/net/rocker/rocker_fp.c | 4 ++-- >> hw/net/rtl8139.c | 3 ++- >> hw/net/smc91c111.c | 3 ++- >> hw/net/spapr_llan.c | 3 ++- >> hw/net/stellaris_enet.c | 3 ++- >> hw/net/sungem.c | 2 +- >> hw/net/sunhme.c | 3 ++- >> hw/net/tulip.c | 3 ++- >> hw/net/virtio-net.c | 6 ++++-- >> hw/net/vmxnet3.c | 2 +- >> hw/net/xen_nic.c | 4 ++-- >> hw/net/xgmac.c | 3 ++- >> hw/net/xilinx_axienet.c | 3 ++- >> hw/net/xilinx_ethlite.c | 3 ++- >> hw/usb/dev-network.c | 3 ++- >> net/net.c | 1 + >> 40 files changed, 75 insertions(+), 41 deletions(-) >> >> diff --git a/include/net/net.h b/include/net/net.h >> index 1448d00afb..a7d8deaccb 100644 >> --- a/include/net/net.h >> +++ b/include/net/net.h >> @@ -157,6 +157,7 @@ NICState *qemu_new_nic(NetClientInfo *info, >> NICConf *conf, >> const char *model, >> const char *name, >> + MemReentrancyGuard *reentrancy_guard, >> void *opaque); > > Does it make sense to roll *reentrancy_guard into NICConf here? Probably no. All members of NICConf are device properties the user configure, but reentrancy_guard is an internal state. Similarly, the opaque parameter is an internal state and not included in NICConf. From xen-devel-bounces@lists.xenproject.org Mon Jun 05 11:23:36 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 05 Jun 2023 11:23:36 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543668.848830 (Exim 4.92) (envelope-from ) id 1q68J2-0004Vp-Qa; Mon, 05 Jun 2023 11:23:24 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543668.848830; Mon, 05 Jun 2023 11:23:24 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q68J2-0004Vi-NC; Mon, 05 Jun 2023 11:23:24 +0000 Received: by outflank-mailman (input) for mailman id 543668; Mon, 05 Jun 2023 11:23:22 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q68J0-0004Va-Km for xen-devel@lists.xenproject.org; Mon, 05 Jun 2023 11:23:22 +0000 Received: from esa5.hc3370-68.iphmx.com (esa5.hc3370-68.iphmx.com [216.71.155.168]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 5eb033ca-0393-11ee-8611-37d641c3527e; Mon, 05 Jun 2023 13:23:19 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 5eb033ca-0393-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1685964199; h=from:to:cc:subject:date:message-id:mime-version: content-transfer-encoding; bh=xMWwc7ruxiKsokgY30UvR+SISuvY+KPwAdNvK0+OIA8=; b=UP0MvYWNWJ1szFUZrC9rfqdpUu5UMvGmAFxYqOkfj3pPmXB7gDcAZtge 9PoFAV0FiPapjo4R9DQrWJ60xSXPei4y+F5NhzJsG3Wkm5vhC4U8Zsqpg yvWMhTOqmkJs2W3nNZlW3QGiAn/hptgl5gKjuH+Bqqep2MEEjndzU7oN8 g=; Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none X-SBRS: 4.0 X-MesageID: 110364386 X-Ironport-Server: esa5.hc3370-68.iphmx.com X-Remote-IP: 162.221.156.123 X-Policy: $RELAYED IronPort-Data: A9a23:dP5MLKAzmwmb/xVW/93jw5YqxClBgxIJ4kV8jS/XYbTApD4m0WEAm mIaCmvSbq2PZjCnc9pyPIzj9E0GvpGGyoUyQQY4rX1jcSlH+JHPbTi7wuUcHAvJd5GeExg3h yk6QoOdRCzhZiaE/n9BCpC48T8nk/nOHuGmYAL9EngZbRd+Tys8gg5Ulec8g4p56fC0GArIs t7pyyHlEAbNNwVcbCRMs8pvlDs15K6p4G1A4gRnDRx2lAS2e0c9Xcp3yZ6ZdxMUcqEMdsamS uDKyq2O/2+x13/B3fv8z94X2mVTKlLjFVDmZkh+AsBOsTAbzsAG6Y4pNeJ0VKtio27hc+ada jl6ncfYpQ8BZsUgkQmGOvVSO3kW0aZuoNcrLZUj2CA6IoKvn3bEmp1T4E8K0YIw5LpJKENq6 NMjNyE8NC/enry6/oPgRbw57igjBJGD0II3v3hhyXfSDOo8QICFSKLPjTNa9G5u3IYUR6+YP pdHL2M1N3wsYDUWUrsTILs4kP2lmT/UdDpApUjOjaE2/3LS3Ep6172F3N/9I4XSHpsJxRbGz o7A10TSHyAEJPy79TaYqEOlqMLCpCb6Q6tHQdVU8dY12QbOlwT/EiY+RVa95PW0lEO6c9ZeM FAPvDojq7Ao806mRcW7WAe3yFaGtBMBX9tbE8Uh9RqAjKHT5m6xHXMYRzRMbNgnss4eRjEw0 FKN2dTzClRHr7m9WX+bsLCOoluaOzURLGIETT8JS00C+daLiL80ihXDX9NyCpmfh9f+GSzz6 z2SpS14jLIW5eYB2r+n51nBj3Spr4LQUw8uzgzNWySu6QYRWWK+T9X2sx6Bt68GddvHCADb5 xDohvRy8sgQUa+ktgiQb94SDYDz2KucbjHisAVgSsxJGyuWx1aveoVZ4TdbLUhvM9oZdTKBX HI/qT+997cIYiL0MPYfj5aZTp1zkPO+TYiNuuX8NIImX3RnSOOQEMiCj2a01nulrkUjmLpX1 XyzIZf1ViZy5UiKIVOLqwYhPV0DnHtWKYD7H8qTI/GbPV22OhaopU8tagfmUwzAxPrsTP/p2 9heLdCW7B5UTffzZCLamaZKcwBXfCBgWMCq9ZMJHgJmHuaBMDt4Y8I9PJt7I9A190irvrmgE o6Btr9wlwOk2CyvxfSiYXF/crL/NauTXlpiVRHAyW2AgiB5Ca72tfd3SnfCVeV/nACV5aIuH qZtlgTpKqgndwkrDBxBNcei8NU9KEzw7e9MVgL8CAUCk1dbb1Sh0rfZksHHrUHi0gLfWRMCn oCd IronPort-HdrOrdr: A9a23:78HNtq+A83bRj/b3WAVuk+DWI+orL9Y04lQ7vn2ZKCY4TiX8ra uTdZsguiMc5Ax+ZJhDo7C90di7IE80nKQdieN9AV7IZniEhILHFvAG0aLShxHmBi3i5qp8+M 5bAsxD4QTLfDpHsfo= X-Talos-CUID: 9a23:3JNtQWysA1oTQT1qAj+sBgUKRv4MUFnA40zPMn7iNjtwFrGreASfrfY= X-Talos-MUID: =?us-ascii?q?9a23=3ADaLvjg+LVdLsiG+5lFNd5x+Qf+dD/pWwGGAprZk?= =?us-ascii?q?b4fiNGwF9AjKclx3iFw=3D=3D?= X-IronPort-AV: E=Sophos;i="6.00,217,1681185600"; d="scan'208";a="110364386" From: Andrew Cooper To: Xen-devel CC: Andrew Cooper , Jan Beulich , Jan Beulich , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Wei Liu , Stefano Stabellini , Julien Grall , Volodymyr Babchuk , "Bertrand Marquis" Subject: [PATCH v2] xen: Fix incorrect taint constant Date: Mon, 5 Jun 2023 12:23:03 +0100 Message-ID: <20230605112303.1764183-1-andrew.cooper3@citrix.com> X-Mailer: git-send-email 2.30.2 MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit Insecure is the word being looked for here. Especially given the nature of the sole caller, and the (correct) comment next to it. Also update the taint marker from 'U' to 'I' for consistency; this isn't expected to impact anyone in practice. Fixes: 82c0d3d491cc ("xen: Add an unsecure Taint type") Signed-off-by: Andrew Cooper Acked-by: Jan Beulich --- CC: Jan Beulich CC: Roger Pau Monné CC: Wei Liu CC: Stefano Stabellini CC: Julien Grall CC: Volodymyr Babchuk CC: Bertrand Marquis v2: * Fix commmit message * Update comment ahead of print_tainted() * Change the emitted char from 'U' to 'I' --- xen/arch/arm/cpuerrata.c | 2 +- xen/common/kernel.c | 4 ++-- xen/include/xen/lib.h | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/xen/arch/arm/cpuerrata.c b/xen/arch/arm/cpuerrata.c index 1abacfe5bb67..d0658aedb6aa 100644 --- a/xen/arch/arm/cpuerrata.c +++ b/xen/arch/arm/cpuerrata.c @@ -695,7 +695,7 @@ void __init enable_errata_workarounds(void) "**** Only trusted guests should be used. ****\n"); /* Taint the machine has being insecure */ - add_taint(TAINT_MACHINE_UNSECURE); + add_taint(TAINT_MACHINE_INSECURE); } #endif } diff --git a/xen/common/kernel.c b/xen/common/kernel.c index f7b1f65f373c..b8b845763d9d 100644 --- a/xen/common/kernel.c +++ b/xen/common/kernel.c @@ -343,8 +343,8 @@ unsigned int tainted; * 'C' - Console output is synchronous. * 'E' - An error (e.g. a machine check exceptions) has been injected. * 'H' - HVM forced emulation prefix is permitted. + * 'I' - Platform is insecure (usually due to an errata on the platform). * 'M' - Machine had a machine check experience. - * 'U' - Platform is unsecure (usually due to an errata on the platform). * 'S' - Out of spec CPU (One core has a feature incompatible with others). * * The string is overwritten by the next call to print_taint(). @@ -354,7 +354,7 @@ char *print_tainted(char *str) if ( tainted ) { snprintf(str, TAINT_STRING_MAX_LEN, "Tainted: %c%c%c%c%c%c", - tainted & TAINT_MACHINE_UNSECURE ? 'U' : ' ', + tainted & TAINT_MACHINE_INSECURE ? 'I' : ' ', tainted & TAINT_MACHINE_CHECK ? 'M' : ' ', tainted & TAINT_SYNC_CONSOLE ? 'C' : ' ', tainted & TAINT_ERROR_INJECT ? 'E' : ' ', diff --git a/xen/include/xen/lib.h b/xen/include/xen/lib.h index e914ccade095..75ae7489b9f0 100644 --- a/xen/include/xen/lib.h +++ b/xen/include/xen/lib.h @@ -201,7 +201,7 @@ uint64_t muldiv64(uint64_t a, uint32_t b, uint32_t c); #define TAINT_MACHINE_CHECK (1u << 1) #define TAINT_ERROR_INJECT (1u << 2) #define TAINT_HVM_FEP (1u << 3) -#define TAINT_MACHINE_UNSECURE (1u << 4) +#define TAINT_MACHINE_INSECURE (1u << 4) #define TAINT_CPU_OUT_OF_SPEC (1u << 5) extern unsigned int tainted; #define TAINT_STRING_MAX_LEN 20 base-commit: 67fdffef9246c82cecd8db28838ed09e79e2528a -- 2.30.2 From xen-devel-bounces@lists.xenproject.org Mon Jun 05 11:29:11 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 05 Jun 2023 11:29:11 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543674.848840 (Exim 4.92) (envelope-from ) id 1q68OT-0005DG-JN; Mon, 05 Jun 2023 11:29:01 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543674.848840; Mon, 05 Jun 2023 11:29:01 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q68OT-0005D9-Em; Mon, 05 Jun 2023 11:29:01 +0000 Received: by outflank-mailman (input) for mailman id 543674; Mon, 05 Jun 2023 11:29:00 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q68OS-0005Cy-Br; Mon, 05 Jun 2023 11:29:00 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q68OR-00018c-U0; Mon, 05 Jun 2023 11:28:59 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q68OR-0005cy-Bi; Mon, 05 Jun 2023 11:28:59 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q68OR-00067m-At; Mon, 05 Jun 2023 11:28:59 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=TmcgyHXO4+extcfkK9VJOafe0dRBQnQqk6ECt6amUf8=; b=EygbbjSifclFPqIwJe/YWi2T6J SGgcaDqvqoEyETC58Q5arM9V9+a/C+nxMdh0JN3pclzLjBTzrneg5YqfdpnVobcLNqoFdyNktiLx/ fLRtmY1gKs+6W/OlJ7bTWtKT11o1qky+djoOjeD/qmbWTPn875/nxZGX6hfjQ4AgwJpQ=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable test] 181178: trouble: broken/fail/pass X-Osstest-Failures: xen-unstable:test-amd64-amd64-xl-qemut-debianhvm-amd64::broken:regression xen-unstable:test-amd64-amd64-xl-qemut-debianhvm-amd64:host-install(5):broken:heisenbug xen-unstable:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:xen-install:fail:heisenbug xen-unstable:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:xen-install:fail:heisenbug xen-unstable:test-amd64-i386-xl-vhd:guest-start/debian.repeat:fail:heisenbug xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking X-Osstest-Versions-This: xen=67fdffef9246c82cecd8db28838ed09e79e2528a X-Osstest-Versions-That: xen=67fdffef9246c82cecd8db28838ed09e79e2528a From: osstest service owner Date: Mon, 05 Jun 2023 11:28:59 +0000 flight 181178 xen-unstable real [real] http://logs.test-lab.xenproject.org/osstest/logs/181178/ Failures and problems with tests :-( Tests which did not succeed and are blocking, including tests which could not be run: test-amd64-amd64-xl-qemut-debianhvm-amd64 broken Tests which are failing intermittently (not blocking): test-amd64-amd64-xl-qemut-debianhvm-amd64 5 host-install(5) broken pass in 181154 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 7 xen-install fail in 181154 pass in 181178 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 7 xen-install fail pass in 181154 test-amd64-i386-xl-vhd 21 guest-start/debian.repeat fail pass in 181154 Tests which did not succeed, but are not blocking: test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 181154 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop fail like 181154 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 181154 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 181154 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop fail like 181154 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop fail like 181154 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail like 181154 test-armhf-armhf-libvirt 16 saverestore-support-check fail like 181154 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail like 181154 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 181154 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop fail like 181154 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 181154 test-amd64-i386-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-i386-xl-pvshim 14 guest-start fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-armhf-armhf-xl-multivcpu 15 migrate-support-check fail never pass test-armhf-armhf-xl-multivcpu 16 saverestore-support-check fail never pass test-armhf-armhf-xl 15 migrate-support-check fail never pass test-armhf-armhf-xl 16 saverestore-support-check fail never pass test-amd64-i386-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass test-amd64-i386-libvirt 15 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 15 saverestore-support-check fail never pass test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail never pass test-armhf-armhf-xl-credit2 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit2 16 saverestore-support-check fail never pass test-armhf-armhf-xl-arndale 15 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt 15 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 15 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt-raw 14 migrate-support-check fail never pass version targeted for testing: xen 67fdffef9246c82cecd8db28838ed09e79e2528a baseline version: xen 67fdffef9246c82cecd8db28838ed09e79e2528a Last test of basis 181178 2023-06-05 01:52:13 Z 0 days Testing same since (not found) 0 attempts jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64-xtf pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-prev pass build-i386-prev pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-xtf-amd64-amd64-1 pass test-xtf-amd64-amd64-2 pass test-xtf-amd64-amd64-3 pass test-xtf-amd64-amd64-4 pass test-xtf-amd64-amd64-5 pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl pass test-amd64-i386-xl pass test-amd64-coresched-i386-xl pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-i386-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-i386-xl-qemuu-debianhvm-i386-xsm fail test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-i386-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-i386-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-i386-qemut-rhel6hvm-amd pass test-amd64-i386-qemuu-rhel6hvm-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 broken test-amd64-i386-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-freebsd10-amd64 pass test-amd64-amd64-qemuu-freebsd11-amd64 pass test-amd64-amd64-qemuu-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-i386-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-i386-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-i386-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-amd64-i386-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale pass test-amd64-amd64-examine-bios pass test-amd64-i386-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 pass test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 pass test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine pass test-amd64-i386-examine pass test-amd64-i386-freebsd10-i386 pass test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-i386-qemut-rhel6hvm-intel pass test-amd64-i386-qemuu-rhel6hvm-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt pass test-amd64-i386-libvirt pass test-amd64-amd64-livepatch pass test-amd64-i386-livepatch pass test-amd64-amd64-migrupgrade pass test-amd64-i386-migrupgrade pass test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu pass test-amd64-amd64-pair pass test-amd64-i386-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-i386-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-i386-xl-pvshim fail test-amd64-amd64-pygrub pass test-armhf-armhf-libvirt-qcow2 pass test-amd64-amd64-xl-qcow2 pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw pass test-amd64-i386-libvirt-raw pass test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds pass test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-amd64-i386-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-i386-examine-uefi pass test-amd64-amd64-libvirt-vhd pass test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd pass test-amd64-i386-xl-vhd fail ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary broken-job test-amd64-amd64-xl-qemut-debianhvm-amd64 broken broken-step test-amd64-amd64-xl-qemut-debianhvm-amd64 host-install(5) Published tested tree is already up to date. From xen-devel-bounces@lists.xenproject.org Mon Jun 05 11:45:48 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 05 Jun 2023 11:45:48 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543681.848850 (Exim 4.92) (envelope-from ) id 1q68eS-0007ba-Un; Mon, 05 Jun 2023 11:45:32 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543681.848850; Mon, 05 Jun 2023 11:45:32 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q68eS-0007bT-QZ; Mon, 05 Jun 2023 11:45:32 +0000 Received: by outflank-mailman (input) for mailman id 543681; Mon, 05 Jun 2023 11:45:31 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q68eR-0007bN-MQ for xen-devel@lists.xenproject.org; Mon, 05 Jun 2023 11:45:31 +0000 Received: from EUR04-DB3-obe.outbound.protection.outlook.com (mail-db3eur04on0612.outbound.protection.outlook.com [2a01:111:f400:fe0c::612]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 787fedca-0396-11ee-b232-6b7b168915f2; Mon, 05 Jun 2023 13:45:30 +0200 (CEST) Received: from DB6PR0301CA0076.eurprd03.prod.outlook.com (2603:10a6:6:30::23) by AS2PR08MB9368.eurprd08.prod.outlook.com (2603:10a6:20b:594::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.32; Mon, 5 Jun 2023 11:45:27 +0000 Received: from DBAEUR03FT019.eop-EUR03.prod.protection.outlook.com (2603:10a6:6:30:cafe::43) by DB6PR0301CA0076.outlook.office365.com (2603:10a6:6:30::23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.32 via Frontend Transport; Mon, 5 Jun 2023 11:45:27 +0000 Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by DBAEUR03FT019.mail.protection.outlook.com (100.127.142.129) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.19 via Frontend Transport; Mon, 5 Jun 2023 11:45:27 +0000 Received: ("Tessian outbound 99a3040377ca:v136"); Mon, 05 Jun 2023 11:45:27 +0000 Received: from 1050c9811717.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 8881D90B-AB9C-43DC-A686-7FF44BB0CF53.1; Mon, 05 Jun 2023 11:45:21 +0000 Received: from EUR05-AM6-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 1050c9811717.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Mon, 05 Jun 2023 11:45:21 +0000 Received: from AM6PR08MB3784.eurprd08.prod.outlook.com (2603:10a6:20b:85::25) by PA4PR08MB6080.eurprd08.prod.outlook.com (2603:10a6:102:ec::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.32; Mon, 5 Jun 2023 11:45:19 +0000 Received: from AM6PR08MB3784.eurprd08.prod.outlook.com ([fe80::5e17:39a6:eec7:c482]) by AM6PR08MB3784.eurprd08.prod.outlook.com ([fe80::5e17:39a6:eec7:c482%4]) with mapi id 15.20.6455.030; Mon, 5 Jun 2023 11:45:19 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 787fedca-0396-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Su6FLpJqmLEU7icBPcSg5iWVodYTDkkbHrGjbmOZydQ=; b=STVtB8tsv0GTxCfd4N18acMZfjTj7wqEmJfu1pQz9HbKP4pMLW4IFwbLLQfu6sxIPw5M3CmHRgDqS1abY64+UEDyhIz8jvRjbX05SwJOyY6O/y6PQrs1mBpXV46EaMB/axakQD5iNrRxsYz08RvtZ8Q5jnIRKg1xCRRKdBOyDbo= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C X-CheckRecipientChecked: true X-CR-MTA-CID: 8a364e6aa6b72908 X-CR-MTA-TID: 64aa7808 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=kOXM2PtwrruQbvKoQkNLyiMGuTb+g1ojuEhssQLZCzJASL/3DpqRV0JWVbwDiha7m4nqduUndmVhzu+ckG+EwJ0oURv5WWc3q3NzBvpVAo4DCTDtav3fK8wNhNIqbhm0kYY86ThrZTkAWUBgaQM4fzwKrIK57fYYUaNHmlGRwFh5EMGByZGAl4xipCV40NNRrdEeHb9q+xXdd2PnWWWIsgQEgOSnQyOZpkmh6FWQqfxyevrPfmTTY1AEhDjimqqyYfmzbeURcp3Idd2BZ4zt4WpeQQGOYr9vEHAcRGB5Dg+3wnAlkFPWVmjAByaOnsCxYjyOUE+jWJb5o+f977F3Yw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=Su6FLpJqmLEU7icBPcSg5iWVodYTDkkbHrGjbmOZydQ=; b=L8pJiXgh+ZhBhlo+k5w4Wk9qs7NkLOvvY28c5rUoRGz1sJHTojSOahhWAQ+R8Q+muP1O5ocoY3wNHw0JH4Di+D9ID6YPMMjvDhD9ZFzVAbiAGWP6AiwVyYc8tBaSeq4Hu3s6kzA2XiDImG7R8iD38ACZBPgqxeSumYQyKGTJ9xxaj+FScxxxt4v514QXNAPaxJ4Na5rxIErfTaf0+HzjUuhzoLKIh+joyaWTR1Cf1P3197VSki/wLxOQFE7V+tQwbvSJXqfpP4tEgjJCjx4QW9+rcA5e22nMcB2VRt0XHTjTPE45WXFRhghla0CiXXGz8z7MV34EDzTPkO5Sy+2ung== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Su6FLpJqmLEU7icBPcSg5iWVodYTDkkbHrGjbmOZydQ=; b=STVtB8tsv0GTxCfd4N18acMZfjTj7wqEmJfu1pQz9HbKP4pMLW4IFwbLLQfu6sxIPw5M3CmHRgDqS1abY64+UEDyhIz8jvRjbX05SwJOyY6O/y6PQrs1mBpXV46EaMB/axakQD5iNrRxsYz08RvtZ8Q5jnIRKg1xCRRKdBOyDbo= From: Bertrand Marquis To: Andrew Cooper CC: Xen-devel , Jan Beulich , =?iso-8859-1?Q?Roger_Pau_Monn=E9?= , Wei Liu , Stefano Stabellini , Julien Grall , Volodymyr Babchuk Subject: Re: [PATCH v2] xen: Fix incorrect taint constant Thread-Topic: [PATCH v2] xen: Fix incorrect taint constant Thread-Index: AQHZl6An0ZVCR8BjEkS3vk0sA5g2C698FxuA Date: Mon, 5 Jun 2023 11:45:19 +0000 Message-ID: <1A2EBF4E-BA99-4B2A-95DF-96BCEE48EDBC@arm.com> References: <20230605112303.1764183-1-andrew.cooper3@citrix.com> In-Reply-To: <20230605112303.1764183-1-andrew.cooper3@citrix.com> Accept-Language: en-GB, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-mailer: Apple Mail (2.3731.600.7) Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-traffictypediagnostic: AM6PR08MB3784:EE_|PA4PR08MB6080:EE_|DBAEUR03FT019:EE_|AS2PR08MB9368:EE_ X-MS-Office365-Filtering-Correlation-Id: 5d3141e2-2060-407b-54cb-08db65ba5b36 x-checkrecipientrouted: true nodisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: MZ6pRnpdu1YhOxAJRDGnwup0c6605wqh2/GhHPt3LW5cfz9rWpzH6eSeo/p4o6P6zmU8dtBHQeCsLJMEFhMgLv8s+ePBWeB9I2lcXlU/Rc9FUdYTljOj3PacP0hEZLzdLRGz5JV5DtJJZ3ye+QylbQO0Tmwl1O4iwsiTjwFyHnXcHe6KlUo2FV08qAGwIIVrR62VbtOtPDSRO3pHUS4fZ1/BS7KopuElOppNbV431/grs2cFeyq8Fj3S4HQu6XnMWe+OLSdXKT7/bTOzuSfzwHDVdQah4K+MWVW7bMFLoWHORYnA9LuOyv+NNTka3yNEs39gUczJ7MUgVOPZcbd3tYHUN/6MppWz/TyV05GcGBea4qJoh3UNZjyuU9drYH+096jLt+y631XA3f3tYgLEpJiBxKwhh9viy7cye7rNCwL5WWAgFMztcDy6jbEQDM4mcLv1VmbWYroShYaL7OzyXVDtQH3uh3JZIocdTzdcBFcl5cXTRel5PrJxM1YIYTXJbvjRvnV3DoQpEjQznofbm62mzsKN4CzOmjD767KCqbK22HaF2tHlDXlfJLofJUfN/4uKC6/NG6hJ0E0ej1q+BPRMBvu8SYxrhDFXoDAc4Aa79djHs1EmkDKTK7SyauSHD/bOlSsHq2+GK8zvbdJztA== X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM6PR08MB3784.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(346002)(136003)(39860400002)(396003)(366004)(376002)(451199021)(53546011)(6512007)(6506007)(26005)(2616005)(83380400001)(186003)(4744005)(2906002)(66446008)(64756008)(66476007)(76116006)(122000001)(66946007)(66556008)(6486002)(71200400001)(38100700002)(86362001)(38070700005)(8936002)(5660300002)(91956017)(54906003)(36756003)(8676002)(478600001)(41300700001)(33656002)(316002)(6916009)(4326008)(45980500001);DIR:OUT;SFP:1101; Content-Type: text/plain; charset="iso-8859-1" Content-ID: Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR08MB6080 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: DBAEUR03FT019.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: 80102a3d-9b5f-485c-a00b-08db65ba5686 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: sm9I3zhjpV/0qMLwwiux745B/3mYsqr5CMvz+z17zaWP41I05UFSXRsl+2QIwjkNps4iFGpj4Y2VPUnWgZ/pWYWVHZf7ET/jNMGfFqe+A3U7HASQy42kgpBgbqCSx7sx9e+sHo7nvyS8SsH94wIzWSBDe8OwMro/N4pPU2QEPE2APd/B1e0QlJdl93u0uij9qPDDQj65FKdibl2b0CgX/4htcdWAVKIzXXpwhxv2VmS758auf/HTaM1Z6oNkuQl9vdcdfqL2vtPPxFov7/Mcle5f6/FeS8vZ3rMZMTbQJsUmY9XpJcw8ZWNapnyafDl0wUlwu7mdj4owsDGPgtnGHqRLz7KMlZcGWGdiKHvFGWkKe9oWqpQ5r+WC0owRnhvatWR4MNLlU/lfippcaPxUL94A5Dko6eE/RaImW7K/php1ASzkpuo/sueYG5D9kOML6CixUTuMqLA8EAWWnhI9ZcqhkLTnlFNFgLg2nM1Dv8jq/UiWLjKRDnRZIpwP7CT8sZLRZDRtDv9bLlvungcf7zhXQaTU6/KpW0qkH6EKSk308eNE7C4dZQ0LZuc0/XcMzXCu5bzqRA5WH26fqE8xQXPeRAVfdyl29VV+DUKGVSqEVx72MJVYdE6tVjYO3J90P/bgx5/ZCLWAjGPRmnvuDA1idV5YeaA90/JsgtO1gPcHVozgZtd2CEE8tweuGVoikoa0E7K1xAoxBP4IIbAfvblmtawxXl32ivbhUwhT6gRJEqhyKvDtWYfj9sL9KT8o X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230028)(4636009)(136003)(346002)(39860400002)(376002)(396003)(451199021)(36840700001)(46966006)(40470700004)(107886003)(6506007)(186003)(26005)(6512007)(53546011)(2616005)(336012)(83380400001)(47076005)(6486002)(36756003)(36860700001)(82310400005)(2906002)(4744005)(40460700003)(6862004)(8676002)(8936002)(40480700001)(82740400003)(54906003)(478600001)(33656002)(5660300002)(86362001)(4326008)(316002)(41300700001)(70586007)(356005)(81166007)(70206006);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Jun 2023 11:45:27.1666 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 5d3141e2-2060-407b-54cb-08db65ba5b36 X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: DBAEUR03FT019.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS2PR08MB9368 Hi Andrew, > On 5 Jun 2023, at 13:23, Andrew Cooper wrote: >=20 > Insecure is the word being looked for here. Especially given the nature = of > the sole caller, and the (correct) comment next to it. >=20 > Also update the taint marker from 'U' to 'I' for consistency; this isn't > expected to impact anyone in practice. >=20 > Fixes: 82c0d3d491cc ("xen: Add an unsecure Taint type") > Signed-off-by: Andrew Cooper > Acked-by: Jan Beulich Reviewed-by: Bertrand Marquis Cheers Bertrand From xen-devel-bounces@lists.xenproject.org Mon Jun 05 12:09:26 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 05 Jun 2023 12:09:26 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543687.848860 (Exim 4.92) (envelope-from ) id 1q691L-0001ic-Sj; Mon, 05 Jun 2023 12:09:11 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543687.848860; Mon, 05 Jun 2023 12:09:11 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q691L-0001iV-Q1; Mon, 05 Jun 2023 12:09:11 +0000 Received: by outflank-mailman (input) for mailman id 543687; Mon, 05 Jun 2023 12:09:11 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q691K-0001iP-Uo for xen-devel@lists.xenproject.org; Mon, 05 Jun 2023 12:09:10 +0000 Received: from esa4.hc3370-68.iphmx.com (esa4.hc3370-68.iphmx.com [216.71.155.144]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id c55fbac5-0399-11ee-8611-37d641c3527e; Mon, 05 Jun 2023 14:09:08 +0200 (CEST) Received: from mail-dm6nam10lp2101.outbound.protection.outlook.com (HELO NAM10-DM6-obe.outbound.protection.outlook.com) ([104.47.58.101]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 05 Jun 2023 08:09:01 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by LV3PR03MB7522.namprd03.prod.outlook.com (2603:10b6:408:19c::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Mon, 5 Jun 2023 12:08:59 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::10bb:98bc:e36d:36ab]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::10bb:98bc:e36d:36ab%3]) with mapi id 15.20.6455.030; Mon, 5 Jun 2023 12:08:59 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: c55fbac5-0399-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1685966948; h=message-id:date:from:subject:to:cc:references: in-reply-to:content-transfer-encoding:mime-version; bh=iWJlqnYFbE2hLcngX2fiPPM6Y4Z//SZ+HGL7DlGLxqc=; b=hsBprABH00zZtQF3a2c4GqSty0xNDXGwaMg7WZ7yef9QgROLi82+plYO cmy8KfGIy829DUva8g9gi1kOdHE3UvszAgf8gcP6pQwjRDBtpjoVAVUk8 z2juof2EGVyhbVA7GMM64TV8adujlAR7LTaGN93UwziVxJYHLErqRAXUm w=; X-IronPort-RemoteIP: 104.47.58.101 X-IronPort-MID: 114114784 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:x9pFPaAJxkwEsxVW/wXiw5YqxClBgxIJ4kV8jS/XYbTApG4l0z0Px 2QfUWDTPquIZjDzLt0ladzj/U4HvsDSzdI3QQY4rX1jcSlH+JHPbTi7wuUcHAvJd5GeExg3h yk6QoOdRCzhZiaE/n9BCpC48T8nk/nOHuGmYAL9EngZbRd+Tys8gg5Ulec8g4p56fC0GArIs t7pyyHlEAbNNwVcbCRMs8pvlDs15K6p4G1A4gRnDRx2lAS2e0c9Xcp3yZ6ZdxMUcqEMdsamS uDKyq2O/2+x13/B3fv8z94X2mVTKlLjFVDmZkh+AsBOsTAbzsAG6Y4pNeJ0VKtio27hc+ada jl6ncfYpQ8BZsUgkQmGOvVSO3kW0aZuoNcrLZUj2CA6IoKvn3bEmp1T4E8K0YIwq+x3XExT1 rsjB2pTdAGovb2XnOOcVbw57igjBJGD0II3nFhFlGmcIdN4BJfJTuPN+MNS2yo2ioZWB/HCa sEFaD1pKhPdfxlIPVRRA5U79AuqriCnL3sE9xTI9exuuzG7IA9ZidABNPL8fNCQSNoTtUGfv m/cpEzyAw0ANczZwj2Amp6prraWwXqiBN1CSNVU8NZJuACJ/2o9NyY9SHqpsL6DqBSCXs5Qf hl8Fi0G6PJaGFaQZtv3UgC8oXWElgUBQNcWGOo/gCmdx6yR7wuHC2wsSj9adMdgpMIwXSYt1 FKCg5XuHzMHmKKRYWKQ8PGTtzzaBMQOBWoLZCtBQQ5b5dDm+dk3lkiWFo8lF7OphNroHz222 yqNsCU1m7QUi4gMyrm/+lfExTmro/AlUzII2+keZUr9hisRWWJvT9bzgbQHxZ6s9Lqkc2Q= IronPort-HdrOrdr: A9a23:3YOcwqhMeo5SnGLd100+tZ6FxXBQXh4ji2hC6mlwRA09TyX5ra 2TdZUgpHrJYVMqMk3I9uruBEDtex3hHP1OkOss1NWZPDUO0VHARO1fBOPZqAEIcBeOldK1u5 0AT0B/YueAd2STj6zBkXSF+wBL+qj6zEiq792usEuEVWtRGsVdB58SMHfiLqVxLjM2YqYRJd 6nyedsgSGvQngTZtTTPAh/YwCSz+e78q4PeHQ9dmca1DU= X-Talos-CUID: =?us-ascii?q?9a23=3AfXxjNmtEZFwP/W9QrWbJkFtv6It0eH2A4WrzZHS?= =?us-ascii?q?XUzhzWZavFn7MqYR7xp8=3D?= X-Talos-MUID: =?us-ascii?q?9a23=3AS3ugcwxc+r9m5dgUlWL6n9iugnWaqIeWVVo0l7s?= =?us-ascii?q?5gOKZFD5hfA2/1giyXoByfw=3D=3D?= X-IronPort-AV: E=Sophos;i="6.00,217,1681185600"; d="scan'208";a="114114784" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=SDppl/YUYBR/S4UQm2GJZiPZl4bz10PiguuJdSjeZqiR5fhPEvMMsRPXG1PaqzRh6WmHCrCvUYNOGjIG3XOlJRYwWPFxZ5rzogNd1DVlBx9w/U3bcModnZWoT+UPWTxn/4S5DPqIbExezTdQLrU1QutaDDgHoZsMFwuRsY7EqCXiVRFoUjudJbG7t/LB+KrcKg1eBpn20TzWcMopa5Oz9lkEM+cnAtXBEYiaAwOWqIBnwhyQy7+Kt4flEjH3Q5GejXZNNLOmvL3lkkFSpdwPVAkvb++rFDZ8EntA7KMh2vT1H6z59aN3s7ED6dPnUVffUuR2FpARCxmbWoXsrEdx/A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=iWJlqnYFbE2hLcngX2fiPPM6Y4Z//SZ+HGL7DlGLxqc=; b=YDiNKGfg4NbYaMddxeEX3Eb5KGXClM3T0gxHyNfp0dGro4IlL/n0b45nwWONiBi1ab0qeAcG8zB9L3x1NxWnr0pnSfrvG0XKSh4k+PfWfRPusuMlIaHUiQ22AEQUMEZMQ9IA+EvHPmvbXDOnYPK2+zCnzcNDBtvHwGxsPWgTwr5w/QfFmvvJmmNp0MZhFulGjHiDrpNGXaELOMPZkjeoWQN0AiCFPfkPrziLOeFRR+YzQ8D2sjdKROse2S9ecqMMBbGsWP3S8FYuHtZGfRo3P65PieX/KP7KGrdQUL09PpvkVZXl9ZA2PSSoxkwMNrsbTEhdWY0A3kyosO0sOyEpbw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=iWJlqnYFbE2hLcngX2fiPPM6Y4Z//SZ+HGL7DlGLxqc=; b=eamaGSR79U+WCu0/M046n/G73WjoxxBC+4vntuJtq455hyrQ6sN9t53L4PdasrUELn79fqRcOHJOvmVlPMKVsc4fAQJ+9MBQasfO9nCyUVMJHsqxz5Oy/7knfVQME6mCqASxGLAYAEb5ADbokzz+5+Odu4wdO4X+TCg9codnA1Q= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: <677b1b72-f4e2-aed0-7b5d-7859bbdbca51@citrix.com> Date: Mon, 5 Jun 2023 13:08:53 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 From: Andrew Cooper Subject: Re: [PATCH] x86emul: rework compiler probing in the test harness Content-Language: en-GB To: Jan Beulich , "xen-devel@lists.xenproject.org" Cc: Wei Liu , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= References: <3ca5b1e3-918f-0369-4368-749bbf363cd3@suse.com> In-Reply-To: <3ca5b1e3-918f-0369-4368-749bbf363cd3@suse.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: LO2P123CA0072.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:1::36) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|LV3PR03MB7522:EE_ X-MS-Office365-Filtering-Correlation-Id: c9ef21e0-0812-45a5-5ef5-08db65bda47c X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 4T8dHfHTekiW/U984x5fme7KlS0WRKsQrl0b1orHgayzjxJLuea5Z8DsuTrta1IJOJKA9kXbWSpQ67RxeqZC28a+pJoA1HH27C7V3xOFCyyZizI6lGbsdEySuQXNJ1S22Z2X5YJgmPUvqebWQPbfHwFM9Nl1L07R8jiTAXdSBTnFHjIP8qoaoSuNjzZRN7a+4p8lzcUQwrz1lN9GRdtc9ClsDRj+G9IA4X6hWU1b4SRH78N8dqNl2PjRaCGFJlbXRmOZa9b7xQySEa3g9PHmb5NqfenyScPMgnqrU1WE5MqlD8+Rvu+xnANF7TfkUqBD7LzAP7moKdxfjWGPcwS/HQplGd3Zv6HoBUh6zYvMvyWcOhPxFz4Kt+hZ2H962SzYfiOwDc3GW7/gNPq7cbLxo8dRN4MZkRZ4A7+24esoofmwDLh5H/3TbVirThm6piE0SZj1h/KCSFIRAe8sQPkAwgnMrSVkPeKxFKVXrI+9FTxwrFuuCfz6LAZ/BErgmKB7QGfuWV3XN+kwBrbm1uRBUaecZ4/wdga/uATt11XROlwgEN/n3kHZqQaRTwZ7xsI8S8RcSILhYELOLX65zFOB7C2ODSP9TSA1m6GTB79fTF+hs/4UZf/VPDXbdF+dms/kc3k5MaMCRsv2UWKkTlUKGw== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(366004)(346002)(136003)(396003)(376002)(451199021)(82960400001)(110136005)(54906003)(478600001)(8676002)(8936002)(41300700001)(316002)(66946007)(66476007)(66556008)(31696002)(4326008)(5660300002)(38100700002)(86362001)(6486002)(36756003)(6666004)(2906002)(4744005)(31686004)(6506007)(26005)(6512007)(53546011)(107886003)(186003)(2616005)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?bmpOL2ovS09NZHVWMjV0eFBIYzF1RFR2MlcveVYrdU03dlFQWFZwSkxQQUpq?= =?utf-8?B?bTh6eUFsaXU1TGJQYVEvWm9sSDh6QW9XSEYwRkFPZlRVdk5nYnBiK3hPZ3Bk?= =?utf-8?B?NGY5TTErTG5aNWdnL3JTdStBRWsycHlZcU9BUEJSdTJ2aFN2Wnd0L3pUTHNO?= =?utf-8?B?UEJGdURJWjBpVm9BYmxSbkpDdkIvc1M5ZXpYRGEybnhtdWYzZFNNdEJzeTY1?= =?utf-8?B?TlprMlV2Q0Z3NU1sTU03Vi9mSVBiK0tkMnRPOEhHY0hPNWVCUk1ZaTNPdVBX?= =?utf-8?B?VjYrTnp1emZkRUJaNDQ4MFloOXpseHBRcGMrcFdQTHMzTEI2M0xZYXlHTTZN?= =?utf-8?B?Z0poVHlhZC9LWmJiMXRxVU1oRDlSdFFSWjRtTXE4RGJ2NUh3WXFybUtyaTFO?= =?utf-8?B?cFlOM25vQmZxRkpKWC9SeVB4RHVnQVRCQXNubVY5cWYrZWxDQnRXVm1MWmQ3?= =?utf-8?B?dzRWVGdVbTlzeDZyMXhkSU4rWnRBMSs0dURzc0F4NUxDSjUyZEpIaWllK0tk?= =?utf-8?B?ZGdYTnFHcXl6UldENFRRLzZ0VXBjRGR1SVpjYjMxS1cxQ0t6d1M0dkcrTzEy?= =?utf-8?B?V05rUVVFbHhjK0xwMllQVzdxb25IT0ZkYVNMRDJtZm1Cb0UraG5wL1lkOVg0?= =?utf-8?B?WFlwMnQyUGtjMUtTTE5nVDFyS002NFFZd1dwc1VJL3hSTUx0RFRxNklab3F5?= =?utf-8?B?UklxcGc2dDNEclhnRnFpcEJQSC9FSWovNWdQZU9UMlhIbGl1eDgrNit1aXdm?= =?utf-8?B?dXl0ejBXTlFUVWZSMUtVbVUxVE9hUFFWS3V0VW5DNUJzTC9lYkUwMmkycFpG?= =?utf-8?B?R1Z1TDhVTjhTZzNQOGRiSGRKNTZHZVhwcng3OHNPQW9IRkZrVDFmUXYzUVYv?= =?utf-8?B?QTEvUmQrZDNBNHZmNmo1V2VYT2ZCdjdIeUhubTlzbDNsYjhYY1dGSlRZYlV4?= =?utf-8?B?ZWtrRHhEWUhiWWQwb1VzRDVMVzZjSlE0RE5vU0p5aU9HYnluTWc5dmtkbENM?= =?utf-8?B?RG5NaGRkTkFldnpvaDgwNi9VN2ZBVHJDUG9WbDExQm9oaGs2Z1pEZHZaNEcw?= =?utf-8?B?RC8zL3RGSXVFU2ZJT0daTXFSV2FtaUh1SGZIMUlvNTB1dzA3T3hDWC9kQXRo?= =?utf-8?B?VnhBd3RYR3NQcjdQMWthNUFTMFZtZmc1eG0xQlovOHhtZDZia3VWQnM3Um9p?= =?utf-8?B?aFhTVitBSThCMlFmNTZOOHk4eW5FbTBPSy9nbTJEeEdXOVZjQkRxa1p3Mmlx?= =?utf-8?B?VlFYbEdjVUtHTjI2eEpZMzZNQjgzMUJrK2lxOGQ0UnUzS0F5eFh5SVpaVzdM?= =?utf-8?B?enJGUVplL0hUQTlFY2VaRCtLamJYN0Fka3Q5Y3NwbzI2bGdrNlJzY3Jka2pP?= =?utf-8?B?YU4ybFQvOHJtQk1LSDVETERxZmpIM042V3k3d3lrdVBlckkzRjhjdTh5QjQz?= =?utf-8?B?djZGc29oWmtFbHJNY2Z4emZ1VTNTaG1lSlRXLzVlSncyUUdKVDRWZ3F1VG9P?= =?utf-8?B?SjRXbmsrL3R5MFgyYUdXUjNzelM3WHV0dEkyRk1KSHRDQi9kSk1rMUtSL2Fr?= =?utf-8?B?bXZwa3FackFCdVdPY25XbFF1VFZtZGFrTVRwU0w5ZG9FVHlNQlJuRHpRS0xn?= =?utf-8?B?Nk1yVFRadUZQc1dpanZPdEJFdFpSM2Z3bnZwdUNJLzdtL1ppM1pXUnJFUk1Z?= =?utf-8?B?VGxGamFGNHNGOVc1MU5MSkh1QTRFWTRYSGV5VnpSanRSKytId1hRSUE0Wm8w?= =?utf-8?B?UGFJenB3TE1TZTJvK1A0QnVKSytaaVdNbktmM2RSZWlUNkNNM1BpMDlCMmty?= =?utf-8?B?cGFaT0JpRGpBUmhiOE9jYlB4UDY2NTMzME5scHhNVU5xMFQvZDZpTHBzR2F4?= =?utf-8?B?NTFIb1E2MlM1T1huZlZBWEpxbk1wUWFMTHJ6Z2tDdVlYc0x3MDZ5cEZGQ0V2?= =?utf-8?B?c3lSTWdKbVpMOXBvb2hlMkptNUdodUZhSFcrajNsRzZhYk1MSThjMVoyNE0r?= =?utf-8?B?ZVRZZXZUaE4xUTZ2U3FqaktheUpxTEVLMHA1YmprQnJBQjdhTmZXb2hhMk1N?= =?utf-8?B?TGdiSWhqeExEZ2ZFWSt4SlBZamJDSGU2WnhROUhtZ2lvVUhnSi9Sd3JIRVYv?= =?utf-8?B?aGg4TE1ieTdpaVlhSWJWV3FwNHkxaE5KY1NDL3BLK1RpSldkWEhJb2duQjM1?= =?utf-8?B?RWc9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: uElQEO+mVPRcOiLbADRPBTg3SWdkNSp3Sx2lx8SzW6H6qEEFxsp8u42UMGuaI087HMQoG3+SCweyeqH0emfNubzPoi7S2waJkH8KdxURqDJQLvmrRFNizgC1sL0nUZvSlByJGxH6A1zaTMaokpLK9HE7vFplvGoKlq8tt2buJ/rYimwFogv9kvZA/cFWFQHgQuM5cacHfJV9T7zJSfOXUZgSlwWTzV89LvRxSsk6ebAEsSakvIim4jHeBFkpsDm7vFWgZjZ6hIb6d9Utl8C7KR9WV53imEHsUp0rUoln2X+yPZf7fvMh1BLCTlewwW45Bu9awb9xLe9zAhxtXzsx2KRuPIAfERnlzATsLcoIKCB1Pjv4Ps/+zNw8fVi431ql3aBwJYQdD+81OK/CXnOYXZfnJg7MFsLWs0obxnEy7W5gXz46cWjG1ynRzeKfeSXvV++blof3CKwnW5V9llgCVZTQBCUM/LRq3Zwsaxe6xNBL1BjvPEY2j9p58yF1buhxJ1TEVgh0dlLqWWNUopXyc083dInXmnyE3fvUbam2op7hsZ7xozgQBCf0FNMzAYRcPEHXV0wHgs1HljtRrrVA91D0uk3vwIaYXBSJGh9rTb+Xf4QWA8JJ0msDCuSlaPSa/a1+U/WV2pPiC31ihHVUVN6x3ISuX0E63f+KfDwxe4ClVzSzQ0fqzpBEZV8j6SKOJ0j81M4kHZG1y0KrKEJC0ndzx0GkqkcD5lllBjM3U+82UX4vTZKkHorZjWnVva520jl8lS4VKiY9ihUQ5cYZIvq1qgCVAao9GQ6uEZhOky4XNurNluDbJ3w4bBb1M9Dv X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: c9ef21e0-0812-45a5-5ef5-08db65bda47c X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Jun 2023 12:08:58.9078 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: T62oYX7O743QEmnmC3l5yEzDyA4HQiSz4qF4XbR6vCt5jKkCZqzlgm0dMduhYoL2d2enacYjnRFNjoY7s9VLYUmbyBC3VWkNaAd1JRqn3UM= X-MS-Exchange-Transport-CrossTenantHeadersStamped: LV3PR03MB7522 On 02/03/2023 2:28 pm, Jan Beulich wrote: > Checking for what $(SIMD) contains was initially right, but already the > addition of $(FMA) wasn't. Later categories (correctly) weren't added. > Instead what is of interest is anything the main harness source file > uses outside of suitable #if and without resorting to .byte, as that's > the one file (containing actual tests) which has to succeed in building. > The auxiliary binary blobs we utilize may fail to build; the resulting > empty blobs are recognized and reported as "n/a" when the harness is > run. > > Note that strictly speaking we'd need to probe the assembler. We assume > that a compiler knowing of a certain ISA extension is backed by an > equally capable assembler. > > Signed-off-by: Jan Beulich Acked-by: Andrew Cooper From xen-devel-bounces@lists.xenproject.org Mon Jun 05 12:10:41 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 05 Jun 2023 12:10:41 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543692.848869 (Exim 4.92) (envelope-from ) id 1q692m-00035D-7Q; Mon, 05 Jun 2023 12:10:40 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543692.848869; Mon, 05 Jun 2023 12:10:40 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q692m-000356-4f; Mon, 05 Jun 2023 12:10:40 +0000 Received: by outflank-mailman (input) for mailman id 543692; Mon, 05 Jun 2023 12:10:38 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q692k-000350-Gf for xen-devel@lists.xenproject.org; Mon, 05 Jun 2023 12:10:38 +0000 Received: from esa2.hc3370-68.iphmx.com (esa2.hc3370-68.iphmx.com [216.71.145.153]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id f942e53c-0399-11ee-8611-37d641c3527e; Mon, 05 Jun 2023 14:10:36 +0200 (CEST) Received: from mail-dm6nam10lp2101.outbound.protection.outlook.com (HELO NAM10-DM6-obe.outbound.protection.outlook.com) ([104.47.58.101]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 05 Jun 2023 08:10:33 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by LV3PR03MB7522.namprd03.prod.outlook.com (2603:10b6:408:19c::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Mon, 5 Jun 2023 12:10:31 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::10bb:98bc:e36d:36ab]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::10bb:98bc:e36d:36ab%3]) with mapi id 15.20.6455.030; Mon, 5 Jun 2023 12:10:30 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: f942e53c-0399-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1685967036; h=message-id:date:from:subject:to:cc:references: in-reply-to:content-transfer-encoding:mime-version; bh=h6E9FCrxv7CGPytZwVDRbCAwF3a52avXdKjd6SoE78Q=; b=ZKs5JM/n7UQ2o1H5w0+peK3N2AGoksdFCSdM/CgMuZJUNw2mSGHNvT8F Kb27b9FKOGjhpN6eWohY/k07b21FHROBwVsuFC/fb0/nc0QE2ulFcOksi dKt/qXLoFJ7ue7mTWdPzlN6nWaX0Uk9txcprK+d5e6y9ANH7cuWlBOTIf o=; X-IronPort-RemoteIP: 104.47.58.101 X-IronPort-MID: 111502450 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:OF49fagesHH7uDlbjz+owueoX161TREKZh0ujC45NGQN5FlHY01je htvWGiPPfbcNDCge9hxPYu/9EkG65WGn4AySAQ5+StgEiIb9cadCdqndUqhZCn6wu8v7q5Ex 55HNoSfdpBcolv0/ErF3m3J9CEkvU2wbuOgTrWCYmYpHlUMpB4J0XpLg/Q+jpNjne+3CgaMv cKai8DEMRqu1iUc3lg8sspvkzsx+qyq0N8klgZmP6sT4geCzyB94K83fsldEVOpGuG4IcbiL wrz5OnR1n/U+R4rFuSknt7TGqHdauePVeQmoiM+t5mK2nCulARrukoIHKN0hXNsoyeIh7hMJ OBl7vRcf+uL0prkw4zxWzEAe8130DYvFLXveRBTuuTLp6HKnueFL1yDwyjaMKVBktubD12i+ tQ2DQwPfkjZvNid67WiF8BK2d4GPJTSadZ3VnFIlVk1DN4AaLWaG+DmwIEd2z09wMdTAfzZe swVLyJ1awjNaAFOPVFRD48imOCvhT/0dDgwRFC9/PJrpTSMilEhluG1abI5efTTLSlRtm+eq njL4CLSBRYCOcbE4TGE7mitlqnEmiaTtIc6TeThq6Yw3ADLroAVIAMVW3W4uMuVsR79cvx8L 30F1g0Po4FnoSRHSfG4BXVUukWsvBQRRt5RGO0S8xyWx+zf5APxLngJSHtNZcIrsOcyRCc2z RmZktXxHzttvbaJD3WH+d+8sjeaKSUTa2gYakc5oRAt5tDipMQ/i0zJR9M6SKqt1IStQHf33 iyAqzU4i/MLl8kX2q6n/FfBxTWxupzOSQ1z7QLSNo640j5EiEeeT9TAwTDmATxode51knHpU KA4pvWj IronPort-HdrOrdr: A9a23:ut7PkameudEeODdou3RxfXtEmnzpDfOSimdD5ihNYBxZY6Wkfp +V8sjzhCWatN9OYh0dcIi7SdW9qXO1z+8Q3WBjB8bcYOCGghrmEGgG1+rfKlLbalXDH4JmpM Vdmu1FeaDN5DtB/IjHCWuDYq0dKbC8mcjC74q/vhRQpENRGttdBmxCe2Gm+zhNNXB77O0CZf yhD6R81l+dUEVSSv7+KmgOXuDFqdGOvonhewQ6Cxku7xTLpS+06ZbheiLonys2Yndq+/MP4G LFmwv26uGIqPeg0CLR0GfV8tB/hMbh8N1eH8aB4/JlagkEyzzYJ7iJaYfy+Qzdk9vfrGrCV+ O85CvICv4DqU85uFvF5ycFlTOQiQrGoEWSt2NwyUGT0PARAghKU/apzLgpAScw5ycbzaFB+b MO0GSDu5VNCxTc2Cz7+tjTThlv0lG5uHw4jIco/jZiuKYlGfdsRLYkjQhoOYZFGDi/5JEsEe FoAs2Z7PFKcUmCZ3ScumV02tSjUnk6Ax/DGyE5y4Co+ikTmGo8w1oTxcQZkHtF/JUhS4Nc7+ CBNqhzjrlBQsIfcKo4DuYcRsm8DHDLXHv3QS+vCEWiELtCN2PGqpbx7rlw7Oa2eIYQxJ93g5 jFWEMwjx96R6qjYvf+q6GjMiq9NllVcQ6dvv22vaIJyIEUbICbRBG+dA== X-Talos-CUID: 9a23:9tOjm2NwYW92Fe5Ddgxb9l5MQPsfWVba1Sr5BRCiLHY0cejA X-Talos-MUID: 9a23:pFhg1wlrSox1CB9tHj2qdnp8N8lG4L2cJHtd0rwomM21JABXGjm02WE= X-IronPort-AV: E=Sophos;i="6.00,217,1681185600"; d="scan'208";a="111502450" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=GJkbfLDBPvvK/z9U/vtE4zVKYX8kDU8Bc2AHLBZnNiKA+lBU+ia/frzh3Tgn0ziQi4/kGlHgMT/hIUaed/x/5JtsdbSx8N42Lm8gJKPR1UcWfTVfDW7vrEOpJeG2o8IdnrfzNk/M2Cr1QBKkdGWZUfq9KOYa8Fshrzpth0nvShPqTclLpWQeiC1LStl1WB8uz57hB1vH7BClVkpR9y29Mtjkqmdf4cdne24Sf/i87bWSSUGgNUQ4t8kaET5bhAeEpGU5m1FrIrI8yNfjHtAzAUn1wzmM7HPJfHql+9/fLTY8/LgfIzrckACzyPK6ix6nnvHCqnOvlqGRmaJmLZZAug== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=h6E9FCrxv7CGPytZwVDRbCAwF3a52avXdKjd6SoE78Q=; b=iU9KNazCwCp5hKfEQOlxKUWm7oDuE9awAbFQkyxZbM7W0tno9Qxl4vq/NTl6xzZ7iyGXbMAQL9xyGpDUu0S+hvWWYgGt3hMIZ9BNSbADlg+qficrBUS9gLhZSg/K0S1CYt2F84dCK9o8kr/H+FHrkJ2Vtg1xY8nvRVePF6NriggQwB0aEss7DWCSXCmxlHyNN5Ie+K1y7FbYSQd3kMnMAXRlWCbXu8pRqCTXPq8PLrrq4yb95E7dK8EGrurOP4t+E6GidMnQlqYjU55LEhRJDLXOQEkGbr/OBfnCN3TQ5K7ugKSMixIKywquLBt83ZJHNnTDmh28vNyj3J24s4jMlA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=h6E9FCrxv7CGPytZwVDRbCAwF3a52avXdKjd6SoE78Q=; b=Wy4KghpwY1jNwhz5WWs+L0GOLQqJgkvXmA2xA/7NUL0ATGXYmjR1Ejr6D6rXpgZ9qsbCW44fyprk3DI0lrRn+ZpP/hkKgcaQSW9VO4SZcVGPp7NuLBTV2Cb2Q+SJCH1WJCxXzGAr3jFkYEWMfCu5vqiooeXYOUAMBmiekO5Lf+c= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: <163dc02d-321b-3288-9831-601c49f1c186@citrix.com> Date: Mon, 5 Jun 2023 13:10:24 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 From: Andrew Cooper Subject: Re: [PATCH v2 00/10] x86: support AVX512-FP16 Content-Language: en-GB To: Jan Beulich , "xen-devel@lists.xenproject.org" Cc: Wei Liu , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= References: <8cbbab55-d670-5632-30ee-3e8ca352f048@suse.com> In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO2P123CA0057.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:1::21) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|LV3PR03MB7522:EE_ X-MS-Office365-Filtering-Correlation-Id: aa78864d-5d51-4e9c-721c-08db65bddb51 X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 6f79Ws+sm83SQf7SQ6uHbQ1ardeC4NJbN/FQaqNzM6ayp7X0RmvT9U6ED8X6VmvogIgAHD9164+YFUfPt5Q5K0jLxJmbFBHr1JED1wmyNXH4YeyW1+SMBBP2wjrkMHeGCu5BRyNlrycwZ/s8Mq9ZKPeDTm0mo4dwN/Jtx8t0SAN9NcmzfMGvN2dJJX6yiqODEgs83qxWBo9YOJkeDP0Qh5Z7/I/cDjSWPqcFbrPJ7hm4LaPHk1ZNlOqYI/TPV7AThU6MSpJ3HVt++ViAILBoXVOcY6ruQBL+jS4m8rKCU2BcCVR5XH/9QPmKnJKTZb3Son0wOvbykwcM+CILa+JeW1JV7GsYLSXvvL7QaabZXizOawzSQtdTghcg6zAvyfzb5cDU6a0bYNsW9NUfmnwXGNUPOXcx7hy3XtFagd5U50jMJSCMdAxVbkv9HAzLyOOzhE1bfqZxPFy/PY2VAYObE4fTVRKbIwQ+gZj3YroZuwihhg7NY5yvMvAWq3/+yL99AeSMVDoyIruQ1sAq8uSuvhNV3Wa+O7v5D6xAsndoYfQqylpkonl7W4UtIEJiViWDd4VOONxJSABcweMs+whBjZJrReYxKZhQHBCY+QrpH6gs2ZjnmjHGKZy1UfTXhIu1DHKo8vX1H/r3yVIZEVPoOg== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(366004)(346002)(136003)(396003)(376002)(451199021)(83380400001)(966005)(82960400001)(110136005)(54906003)(478600001)(8676002)(8936002)(41300700001)(316002)(66946007)(66476007)(66556008)(31696002)(4326008)(5660300002)(38100700002)(86362001)(6486002)(36756003)(6666004)(2906002)(31686004)(6506007)(26005)(6512007)(53546011)(107886003)(186003)(2616005)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?T3Q4VHR1M0dCOEd3SWNKaHB3VnlYZmV5eklCblNkU0tUQmZ1TGl2WWdNOGxs?= =?utf-8?B?SkdndUdwUlg3MStBaVBxa0hJQWlrL2Y4K3FDRWl6RUFsUm1nd2owaHdVVXhH?= =?utf-8?B?a2RSYTluVkpLaEVWWkl1cU5wUGdkUklTZDZuZTR6SllVYmdpTVk3RU00SHpH?= =?utf-8?B?NVlwYTNOdHJDczl6WWxVUjRRTStpTHdtSG9vRzl4QWxsOUNaWEtDRmhaUVFY?= =?utf-8?B?RWlBcmFMZEhlWXpRLzhKcmc3bHVKVTFFNHhhTDlENFZJUnVWd1ZTdXNSSU9n?= =?utf-8?B?K1BZVFFlV0p3d0tjemQrejFPODJ3aEFFL0FvWEt6VDNjUk12WG9aZjdPVmt6?= =?utf-8?B?ZVFOdlRpSFJ0OGMwVnBNK0MzaFBCcFdRaTNENWNmVC9BWHFjTGI2T2o2YStT?= =?utf-8?B?cjR4OE1BRVNKaWh4Lzg0OVp6ZitBUVY3ZE8zekxNSTd5V2Z6TEVhSVk5QUE2?= =?utf-8?B?aVhEMjVHeWR3dlozL2Yzemdja1FxQzNYOE1HZlJXMTZpaUNmOTlRbGgrU0U0?= =?utf-8?B?K0tDYXA2dXRxcmdRNlJZZkRHdFhNd25yNlBzdkpSNEJidm5HK2ZlTGdta1gv?= =?utf-8?B?cTJHQTRGRTBtSTcyY2c0STNtWnIzcVhsSjVOK1ZRZnpmZVVHRU9wTjE1L0FI?= =?utf-8?B?NDBEOCtRV2NWMmhZVEUvdzI2aFppQnk2S0UydHZqMDV2bTA1UEltY2UyNEVy?= =?utf-8?B?aDE5bGp2YlhnM0d2V3lmaWpVY3ZqRmdITTh5VlREaG8yOGJaU042dExkbE1w?= =?utf-8?B?WTU3UDV4MjBteGRMM05MQ2hMVVZTOHJFM3ZYSFFBTW9IZEJqZldUVXpsMG1h?= =?utf-8?B?dndCdFRObFVPWmpVNVJQdDd6TjJON3NWS3J2bEtGbnlhWGV6dVlLbjFHVUh0?= =?utf-8?B?WlFMRFR0bGRWZG14VVh2aVFaSStNMGZ1bVdqd0tqNmNBb3hyRHZ5czRoakhI?= =?utf-8?B?MVFnZ3dOSFJhSFFHTnBDYnlWOUNNNVRCbHJvUmxseXdMN2pWOG1RVTlPZ2xG?= =?utf-8?B?b3p4UUozdVc3VE9sNldHZ0RCRzRKNHNSTUdOTlMxNnNwcnJBL0g4SFlCY3E3?= =?utf-8?B?Tm5JSGdGd29mRXdydGp4eXgwRnp3UWx3N0VPVGpmbXV3VmdyVGorcTFQeGtZ?= =?utf-8?B?TXZXQVdXVzVXaURNWWNyNWg5NjhwOHVzVVdjS205eDJBUWtzczFTazFGdEV3?= =?utf-8?B?YTZhZmxIMmxpampPVElFbWhOOHRvbUlFSEo1cFpJbDZyTEQxaVVKclZSeWhp?= =?utf-8?B?WlJuUzZPbEZ4RFFkeG8wdlNMekZaR0x0M2JqaTFCL3ovZW1xT1FJQmo5L3B4?= =?utf-8?B?RmVXSUdrZ2VCeVZEbGo2OWQxUE8rT0hIUWw3S3J4dnVLN21Qekpta2V4WmJL?= =?utf-8?B?UWJ4dXoycnlpVHlLRU14QVB1SEpWNnhEZmFDdWNieVVTcE9JVlZWenBnemRK?= =?utf-8?B?NHBjNkZNMTNtVkllQkNWL1NQcmhwU0JRL1RQQ0xFdW1wWW80YmJyVHR6Q2Fq?= =?utf-8?B?YmszY1NCV1F3dkp1WmFlemlFWnZvYjRTVlNsVzd5Q1JXTUpiSTEzYkt2TytL?= =?utf-8?B?NzByY29LVi9xNFVzbm85RFlWNVE5NDlVTVJFZFh5RGJSbnIyL0MxV3VCcFRX?= =?utf-8?B?Sk15dCtqK0xKQU5mYVVEdWxCMnZmejR5MCtSVHRUdmgvZWk2TTRZNmY2ZkhV?= =?utf-8?B?NGU2ZWxtM3gzbWdVYWdxS3RvLzEreXB0MllpdzFzRGVRYWlwSjYvQk9iMWFh?= =?utf-8?B?OW1TbXJIeE1xQmVBSHk2ZFJWcVdnNXd0QktybzlxVHhFQm42WkE5SFphcitK?= =?utf-8?B?T0NzZnJqUnVRZlpmNWxyK05aMC81aGhPRTlFMFV5WVA3NC83c0VHWHFha3lv?= =?utf-8?B?a29qeWlub21XbmVPVUlaOWZGOUN3QmsvU1FuMzZmR0wya1Vmb2htZDRCcWhl?= =?utf-8?B?dTBTcUhDSVlQc0tlTjRLQmFscFVjOE04ZktaMkZKQk9hT012TjhXOGhtRWg4?= =?utf-8?B?T1VYcVBRYk85ZkpCYllNVTkwT0Q5K1hETEhldktKakErUHZBM3BlOC81M2lu?= =?utf-8?B?RVZOeU1PWXREQ2cvL3psc2wrR1RvbDdqWGpKZTZmN0VYeElyMEhtbE5scnli?= =?utf-8?B?T3F0YTRsWDJRKytsV3FyMHpQKytWWjZqeG9wSXZJWGtmYXEzRzVBZlU1MmhD?= =?utf-8?B?THc9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: NtPIx3kO4mnKWZ7WSI3ooJAnmdRvFhX7vKOVcPfCuyKiSUy31GzAukjybjjIGgEYXC1HpU9j+hODW3FtB456d/eGlOSNe3RAbYwNQ5+KBlZflk7mxuGVqemeWy0mXSFGa+Ps1ve6emF1+uVb7HNyjLDP+U+OP5GX4gd1vZYCv9EOfQuu8OevksiD3QN4IGMxJVQ9kwfA6YOTAzln3x3vS/AT/0PruZ8jRvOCLhIafDG3C0+l5Vil/w1knQC76aizAEfc6hlpuUfT43xcbudykn6TXfP6FhVdIS2FmiPIapxXqYHIh/5KGEuEROzQGYINt86nP5hHR043/Aovso7LUOvqByspqNRy9SAuYn+vnjWeQsBotcE6hN+j/45Q2VUp6tlGVNSft9Cj03vckb3GaS3Dm8ZrAkjBObkzmJ4pSEFnDcC/m+1vGOnoUUfRg/JyLA4osBMB1Ei1kVzJ1fZve1qq0wS9FJs29lX8owkCpc5Tv84LiG6HSKN8vdydqb2lz2zJilR6lnSPGwdGbWRcKoC34mlmNsq429kqdwlaaWw0kIspMC6d1sZrmxyZK6qZhbuY4F67L0MHRrVZPohUGKX2h0G18RwsLAbJyMv06RUxAxK084pzow6q6EMEKDyQ7oss7q98bFR928d8QaJQVZKBVXWVUyANAWMqkOtwpRhdhss0nhNZHt661Vi6GGRC5ZXYW8tgn3PoEcO5/7ksN6ll4+JNZE4wCI5fdkVTy24oO+xOl3l3q/ODhOTVugkBxOakXCJ7BHl2icnkuRBzE7mpI9M8vAiqBOGScBiSI0f15Jg+NWl+opEktW822n46 X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: aa78864d-5d51-4e9c-721c-08db65bddb51 X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Jun 2023 12:10:30.8475 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: L/MvU8p3UChy18PYAxMfTexoCOdYXg43DtHfCGr3p/pbZT5J4J2yLRzVfn5mX8HeI5xCI1qt2DelbGCTs9v6EmT5I037YYnXt2ByQtT05ng= X-MS-Exchange-Transport-CrossTenantHeadersStamped: LV3PR03MB7522 On 23/05/2023 7:35 am, Jan Beulich wrote: > On 22.05.2023 18:25, Andrew Cooper wrote: >> On 03/04/2023 3:56 pm, Jan Beulich wrote: >>> While I (quite obviously) don't have any suitable hardware, Intel's >>> SDE allows testing the implementation. And since there's no new >>> state (registers) associated with this ISA extension, this should >>> suffice for integration. >> I've given this a spin on a Sapphire Rapids system. >> >> Relevant (AFAICT) bits of the log: >> >> Testing vfpclasspsz $0x46,64(%edx),%k2...okay >> Testing vfpclassphz $0x46,128(%ecx),%k3...okay >> ... >> Testing avx512_fp16/all disp8 handling...okay >> Testing avx512_fp16/128 disp8 handling...okay >> ... >> Testing AVX512_FP16 f16 scal native execution...okay >> Testing AVX512_FP16 f16 scal 64-bit code sequence...okay >> Testing AVX512_FP16 f16 scal 32-bit code sequence...okay >> Testing AVX512_FP16 f16x32 native execution...okay >> Testing AVX512_FP16 f16x32 64-bit code sequence...okay >> Testing AVX512_FP16 f16x32 32-bit code sequence...okay >> Testing AVX512_FP16+VL f16x8 native execution...okay >> Testing AVX512_FP16+VL f16x8 64-bit code sequence...okay >> Testing AVX512_FP16+VL f16x8 32-bit code sequence...okay >> Testing AVX512_FP16+VL f16x16 native execution...okay >> Testing AVX512_FP16+VL f16x16 64-bit code sequence...okay >> Testing AVX512_FP16+VL f16x16 32-bit code sequence...okay >> >> and it exits zero, so everything seems fine. >> >> >> One thing however, this series ups the minimum GCC version required to >> build the emulator at all: >> >> make: Entering directory '/local/xen.git/tools/tests/x86_emulator' >> gcc: error: unrecognized command-line option ‘-mavx512fp16’; did you >> mean ‘-mavx512bf16’? >> Makefile:121: Test harness not built, use newer compiler than "gcc" >> (version 10) and an "{evex}" capable assembler >> >> and I'm not sure we want to do this.  When upping the version of GCC but >> leaving binutils as-was does lead to a build of the harness without >> AVX512-FP16 active, which is the preferred behaviour here. > Well, this series on its own does, but I did notice the issue already. > Hence "x86emul: rework compiler probing in the test harness" [1]. > > Jan > > [1] https://lists.xen.org/archives/html/xen-devel/2023-03/msg00123.html Ok.  Acked-by: Andrew Cooper From xen-devel-bounces@lists.xenproject.org Mon Jun 05 12:15:44 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 05 Jun 2023 12:15:44 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543697.848880 (Exim 4.92) (envelope-from ) id 1q697W-0003iO-PZ; Mon, 05 Jun 2023 12:15:34 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543697.848880; Mon, 05 Jun 2023 12:15:34 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q697W-0003iH-Mv; Mon, 05 Jun 2023 12:15:34 +0000 Received: by outflank-mailman (input) for mailman id 543697; Mon, 05 Jun 2023 12:15:32 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q697U-0003iB-QG for xen-devel@lists.xenproject.org; Mon, 05 Jun 2023 12:15:32 +0000 Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id aa21ae99-039a-11ee-b232-6b7b168915f2; Mon, 05 Jun 2023 14:15:31 +0200 (CEST) Received: from [192.168.1.142] (unknown [151.37.78.171]) by support.bugseng.com (Postfix) with ESMTPSA id CB90A4EE073A; Mon, 5 Jun 2023 14:15:29 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: aa21ae99-039a-11ee-b232-6b7b168915f2 Message-ID: <4dd8c759-8257-740a-1fd4-d61376350d6e@bugseng.com> Date: Mon, 5 Jun 2023 14:15:27 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.12) Gecko/20050929 Thunderbird/1.0.7 Fedora/1.0.7-1.1.fc4 Mnenhy/0.7.3.0 Subject: Re: Xen reliance on non-standard GCC features Content-Language: en-US To: Andrew Cooper , "xen-devel@lists.xenproject.org" Cc: Stefano Stabellini References: <1cd359e7-5245-a621-3be2-9323ba5b327b@bugseng.com> From: Roberto Bagnara In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit On 05/06/23 10:58, Andrew Cooper wrote: > On 05/06/2023 6:28 am, Roberto Bagnara wrote: >> U10) \m escape sequence. >>      Is this an undocumented GCC extension or just a typo? > > Where are you seeing this? > > The only examples I see are in asm macros, and they're all parameter > substitutions. > > This includes the one in x86's bug.h where it's a parameter substitution > into an .ascii string literal, not an escaped special character in the > literal. The point is that escape sequences must be considered for tokenization, which happens in translation phase 3, as they are relevant for phase 4, which is where preprocessing directives are processed and removed. See C99 Section "5.1.1.2 Translation phases" for the definition of the phases. So \m is non-compliant even in areas guarded by #if defined(__ASSEMBLY__) and a conforming compiler should flag it. On this, see footnote 65 to 6.4.4.4p8, where the 'm' in '\m' is one of "any other character": 65) The semantics of these characters were discussed in 5.2.2. If any other character follows a backslash, the result is not a token and a diagnostic is required. See ‘‘future language directions’’ (6.11.4). Kind regards, Roberto P.S. Note on passing that the comments on the preprocessing directives are a bit misleading due to the use of the exclamation mark (IMHO "defined(__ASSEMBLY__)" would be better than "!__ASSEMBLY__"): #ifndef __ASSEMBLY__ ... #else /* !__ASSEMBLY__ */ ... #endif /* !__ASSEMBLY__ */ From xen-devel-bounces@lists.xenproject.org Mon Jun 05 12:40:15 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 05 Jun 2023 12:40:15 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543706.848896 (Exim 4.92) (envelope-from ) id 1q69V7-0006Jf-U5; Mon, 05 Jun 2023 12:39:57 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543706.848896; Mon, 05 Jun 2023 12:39:57 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q69V7-0006JY-Pn; Mon, 05 Jun 2023 12:39:57 +0000 Received: by outflank-mailman (input) for mailman id 543706; Mon, 05 Jun 2023 12:39:57 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q69V7-0006JS-1B for xen-devel@lists.xenproject.org; Mon, 05 Jun 2023 12:39:57 +0000 Received: from EUR05-VI1-obe.outbound.protection.outlook.com (mail-vi1eur05on20612.outbound.protection.outlook.com [2a01:111:f400:7d00::612]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 11abff37-039e-11ee-8611-37d641c3527e; Mon, 05 Jun 2023 14:39:53 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by AS4PR04MB9551.eurprd04.prod.outlook.com (2603:10a6:20b:4fa::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.32; Mon, 5 Jun 2023 12:39:50 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.030; Mon, 5 Jun 2023 12:39:50 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 11abff37-039e-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Krm4NtJSmPVFD5GMlVIMjSLHur+QeNrupijNaC8/T7ztWA3nIY/WFZqOCdnduoVngjSztpaUVfm0WpospzRpiBrZoR0oRfNFRUfcMbo9TsRTtA7DCutmhREw7lVOUjQCDmHI9hg661wpqcZkX3FllTmMIzIFRtsonzJHg3Frs69vOC5IKIriDblwjojDwW95ZP0XJb65o1SGQnDUsoclaMJjSCUb/SNDQpzM2BTEK3qBAlTGv4Ui7HqyhomrVQlAQomTvNJ4IveiVsaM/4e1y0JCA4UJLnX5l0ctULR6qV4pUpEfL5sezy5OSvpvV2mmGYwCH7FCNy0KylEZ8iT8zA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=PDlS5i9qDdxyBoeXLh/A+o5m39neOrp7/yI508+YIg0=; b=WlSsbRzkTSdzkWd4BRUnETpV6w5gEAUOWa94nD615rIPiKMMUQAKB5Mffd0usbbJrEXVcBNToY6tVrG0QdT3+1cUGV8ysbIOK1hnUBAd3OwyoAzMau1m/CUiYmzFL106Td4hCwkpwsUohfto2Wy7cR+FWNgYQIHpv9erTk+VQwtlTgeZxJpmLtSyCx9IbqVkO/0Vvg0xLRaCG/OnHnR8hxYghDixmmnzkVQnzSnh83BWqX6GpgO5+2noowFLOb/tyYuL6QRzDs7nVrFEsE811eBpBm/FQzUPQshxlvIXlRdvHP068pOlsyMEjKVKHdGIWqHJ6lLgIWKCKiai1n4g/A== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=PDlS5i9qDdxyBoeXLh/A+o5m39neOrp7/yI508+YIg0=; b=ykTjmei+pEgPrbTr05q/YPMI865ErlIYfRa4i38uTymfqtqNU/bDQG9JhfuaE43lD4exRkiARzPOx3rxOit2BUhwafbFfz/QMTjiv6FN2FjAoLvw1/kXYi4mjJHjGnBDYMhemNw/wmE7oVaW14p7TPNpm2qRcBcI2v1EPNz0bU/HyVxv1F1DNMMRUhzmASLOu0V0oXFo7R0suAgczPZEyKcIq6Jqmm342GwBF5qgDI8/jmkWO2Muk/5lSyKqJPLfOICYOArLCqbtZSGDjFWnDTsUZzHDth4JxCOmMW97ODqYx2O2HGdtq8n7ECBOAUnGNEXBtAisTEHNqLs7FMAnyw== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <4f293ca1-9eca-3769-05c3-0cdc39a6fc69@suse.com> Date: Mon, 5 Jun 2023 14:39:49 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.11.2 Subject: Re: Xen reliance on non-standard GCC features Content-Language: en-US To: Roberto Bagnara Cc: Stefano Stabellini , Andrew Cooper , "xen-devel@lists.xenproject.org" References: <1cd359e7-5245-a621-3be2-9323ba5b327b@bugseng.com> <4dd8c759-8257-740a-1fd4-d61376350d6e@bugseng.com> From: Jan Beulich In-Reply-To: <4dd8c759-8257-740a-1fd4-d61376350d6e@bugseng.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: FR0P281CA0090.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:1e::15) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|AS4PR04MB9551:EE_ X-MS-Office365-Filtering-Correlation-Id: 06b39551-9efb-42b0-53fd-08db65c1f44f X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 2fT7K0gd5DjRTiJdaudZpK6YJKnDxRfvmU+J7jmnX33ZWUZtGa/1UPS3SyzEaZjbukRqM6vJjcGt+ecQc/HVqSq5UgyvtZBIyUrpJ9eAkC4MXNvrNifeOCjTafZW+sLAQFpdBsso5wX7Yy1FgFJruC08LP5Myqh8rpK0UAh0SFvUlqT0NmB2zpbRukqLqQ3DZSs9Ua21L3QupN889dfUSHvRj5/4NP/CFvLx93TLnLXrTJNR8J9RPsKoj9kT2VoV0KvUT56vFEjAF6bHlctPkr62YHAT78dBXLzenBfjrTMj3nZtKzVElAeNtbkcBUxAtc/QV/XfSQqPVo/N25t4LxlKzoqxHBHgwON6WFOxoLRM3AFIgn7494OWctrP16jSQxa0OGj4TJ4L9gp69TTW09Tn2Ql+UinXHpBl15P9SqeaQ8U6XdvnqokXt7907D8aWQHx1KQp5QUXHU3Sz/L78c/kdbgtk0LZBgsVnnK3yFEQSL5nLySwFL7hW/NiFAicpQlkXT1DmcxcZz/I0F4+0f1o+gNokpYZzziTvnctOqbBOM3B8n5hp8rZDwMAbSzYdjt3H4Uhmj3kR67YfPe//aax4QLgBSarSiSPSjuzGl+KwjsB7gnVlasBvl0LbNxxfzCnhrYCJEdX3qSxVrAxxw== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(376002)(366004)(346002)(396003)(39860400002)(136003)(451199021)(6486002)(2906002)(66476007)(66946007)(66556008)(8676002)(54906003)(36756003)(38100700002)(8936002)(5660300002)(86362001)(31696002)(41300700001)(4326008)(316002)(6916009)(478600001)(2616005)(53546011)(6512007)(6506007)(26005)(31686004)(186003)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?ZjNPOVR0aXNOWU5McmxaM0VOQjV5Q091b09Cd0ZKaG52UE5IU0ovYnZCZ05p?= =?utf-8?B?dDFsR3QxNzNQcjU5UzFlTEhSR2llNXZib01hSzlLOHFvRzVFUUlnQk1iM3RC?= =?utf-8?B?VEtISGFhSDVYekhobGcrYzRUNEZPeitNVk5JSUNuYk8xN2FaOVdieHI1MHls?= =?utf-8?B?bkRTK01vTnZ6MFZobi9uRHRsYW9yejFyd04xdkN6cVR0cHNhN2s2L0lpZHZj?= =?utf-8?B?MTB2a0IvN0hyZmJrOEJhbXV2OTR5ZXFRaXUzbHIxVU1hWitiay94Zk5HM3Nl?= =?utf-8?B?VnJuaTl5bStVSTk5SFJPYWo1Tkk3cWJCeGxLL1l5VHVpNnFzOE5pVHRhemZn?= =?utf-8?B?djRla04rejF0WE9RdzgvejJQeEN5SU1NeUF4NnF5THRYMnF1Q1U0enNvMWRW?= =?utf-8?B?TVhXMDZrOHZhOWd3bE1TVEpsZ2loYXMvYlROcGhNTkRyMFRYa0F6S2pBU1pn?= =?utf-8?B?TXNOQjJLdHFMeXU0QXdSNnBmLzFEbFVLKzd2UW55WCtmRVB5SnhHRnVPeWpU?= =?utf-8?B?SzhmUkhwYy9IZiszbmVhd2N5MytheEhkVXlIR1FRS3FHc3BiRTZFcG9hbksz?= =?utf-8?B?d2lmSDBENjFQS0JPYUV0MW1RODRZMmc5TkNqaXhKWkJkN0tOMWM2NC9vSVJs?= =?utf-8?B?dGg1dmtRVU4wVXpuZVRKcXJoTVRyWndZNkdKV29valo3eGtLQ1lhVWgyZXRP?= =?utf-8?B?TEJPTkZXZmpJUHUxVTQwYTc3blhyaXFPKzh2dUx3SGtVV0lPaW5TMmJjNzlp?= =?utf-8?B?V1pGRzQzNGIycmFkWCtZWEFvK3lQUXl6Nlk5NklXZ2VZRmNWNUhYd3VESGlv?= =?utf-8?B?WmhLTjNjTDhxeEdCbDYxam96bURCbGFtZ3RGeHIwSjR1NUE3a3JoOENacGRx?= =?utf-8?B?UTE2WnVQYmU4MEpuS3Q1SStHMW5xWkZtVklHUmRMMStseU1GLzAvcEtza29E?= =?utf-8?B?N2NmZENmdllaNmFNWFN3ZjRhYzdZelE1ZkF1R3YzOENqV1l3alNZbCs4NmJT?= =?utf-8?B?dGtpalY0bVJ6d2IySkNVTm5hRS9jLzNnL3RTaVp3VS9HTmY1V3Bja21kN3I0?= =?utf-8?B?ZHF2VG9IUk1KdXFpSXZ2bGcvOGo3QzVQbXZ4YXFNcnVNNlVmcWFPbzhrYWZM?= =?utf-8?B?S0VBRjdEbmlnRml3NDE3UVkvUUJKU25WeGdnbXZyamhpdk10aVlPVmZJV2c4?= =?utf-8?B?NnRNR25jZ0pzSmRGMm02bk9NRGZyV2hac0Z6aE1EOTY1Mk8xVWFTblovcDBn?= =?utf-8?B?ZTEyblpNVXA3L3dJTml0Z0JhaGRwRlJRRnBOQnp1ZnBIR2pzUmJXYWNERlRp?= =?utf-8?B?Z1RnZnFWUGtzN1ZpZS9uS1dDb2NzcVFUNnZSYmg2OUsxaGFoeEU1N3VCQTBC?= =?utf-8?B?dit2Vjg0YmVmR21ybWVmYXFLQzVXYmpORXJ3SWpVa3N6NDErc3M3RmJ4Wngx?= =?utf-8?B?cWQyTWxvS1l4L0xuQndwa2RubS9LNWRYeHZodVNBNW9kZkpxSWdlUjVsN01l?= =?utf-8?B?WE9Qb2RmeS9wZ2o1aDJLMC90R2N6dnFMRUtvVGU2MzNURnY0a3pzTnFpcmw1?= =?utf-8?B?TnJMK1ZwNFY1MFcrRHlNN2VnQ1JqK0NNUzdPQWV4RVFxTGpSRXE1K21sT2J0?= =?utf-8?B?a1NzM3QxOFI4L2pSeU1JajA1SSt1YjIzUG5UV0ZoKzlqQlBhbCtuNUlhZkVQ?= =?utf-8?B?QTNiODkxaUV0bTVycDJIOWlVTzRBSVRFdFZFSXJZVDBFMmozR1FSTUVHY2dH?= =?utf-8?B?VXZmaHdTU3BvYjlWMXg2bzFLanNJa0VHY2FTUXVvUmJUVlJKUkxqaW9YYnVl?= =?utf-8?B?YS9wWjdPOFluMGU0L3FtV05GMVZOK3M3TStDRXc5eG1Ec2dpL0piQWcwOU5o?= =?utf-8?B?OERjQXFsVDlBS2pMaHl1SlJjRFN6RHE3cHF3MkRIN0xPd2w4dW10REpVU1J1?= =?utf-8?B?b2VBUFBOVENmTXBrOHY2M2FVYS9OcjJUUDZnTmR6ODEzTldLRTZxMnVISkRs?= =?utf-8?B?MzU0TjBaa2ZzT25GajJqWWtmVEhkUWpOd1hVTWNhbWtGZVdqcTRBRXlDd0Vl?= =?utf-8?B?Q0JRUlJCcHZQckJlanc1OEtiVDZ0NU1zOWZMK1FRS1lrTDB4Uk5HcFRha0hC?= =?utf-8?Q?yjUIN9qxtyyLIlcjv6+d4T64l?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 06b39551-9efb-42b0-53fd-08db65c1f44f X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Jun 2023 12:39:50.6225 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: QRGsZZ9yM0gLYgfOvkmOpA1Lp4Uvgh2fuqeXD3GJRMy7HLNOVdnNhAfXOFU1L1U82h5ZKjTk/+WjaqRN3kitBw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS4PR04MB9551 On 05.06.2023 14:15, Roberto Bagnara wrote: > On 05/06/23 10:58, Andrew Cooper wrote: >> On 05/06/2023 6:28 am, Roberto Bagnara wrote: >>> U10) \m escape sequence. >>>      Is this an undocumented GCC extension or just a typo? >> >> Where are you seeing this? >> >> The only examples I see are in asm macros, and they're all parameter >> substitutions. >> >> This includes the one in x86's bug.h where it's a parameter substitution >> into an .ascii string literal, not an escaped special character in the >> literal. > > The point is that escape sequences must be considered for tokenization, > which happens in translation phase 3, as they are relevant for phase 4, > which is where preprocessing directives are processed and removed. The C99 text mentions escape sequences the first time in phase 5, which means string literals inside preprocessor conditionals which evaluated to false were already removed. For tokenization all that should matter is escaped double quotes (when determining the end of a string literal), escaped single quotes (when processing character constants), and escaped backslashes. > See C99 Section "5.1.1.2 Translation phases" for the definition of the > phases. So \m is non-compliant even in areas guarded by > > #if defined(__ASSEMBLY__) > > and a conforming compiler should flag it. On this, see footnote 65 to 6.4.4.4p8, > where the 'm' in '\m' is one of "any other character": > > 65) The semantics of these characters were discussed in 5.2.2. > If any other character follows a backslash, the result is not a token > and a diagnostic is required. See ‘‘future language directions’’ (6.11.4). > > Kind regards, > > Roberto > > P.S. Note on passing that the comments on the preprocessing directives > are a bit misleading due to the use of the exclamation mark > (IMHO "defined(__ASSEMBLY__)" would be better than "!__ASSEMBLY__"): > > #ifndef __ASSEMBLY__ > > ... > > #else /* !__ASSEMBLY__ */ > > ... > > #endif /* !__ASSEMBLY__ */ As long as these comments are unambiguous, I for one strictly prefer the shorter form. Jan From xen-devel-bounces@lists.xenproject.org Mon Jun 05 13:08:22 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 05 Jun 2023 13:08:22 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543711.848906 (Exim 4.92) (envelope-from ) id 1q69wV-0001EO-W4; Mon, 05 Jun 2023 13:08:15 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543711.848906; Mon, 05 Jun 2023 13:08:15 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q69wV-0001EH-TB; Mon, 05 Jun 2023 13:08:15 +0000 Received: by outflank-mailman (input) for mailman id 543711; Mon, 05 Jun 2023 13:08:14 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q69wU-0001EB-HX for xen-devel@lists.xenproject.org; Mon, 05 Jun 2023 13:08:14 +0000 Received: from EUR05-VI1-obe.outbound.protection.outlook.com (mail-vi1eur05on2062f.outbound.protection.outlook.com [2a01:111:f400:7d00::62f]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 061ba0e1-03a2-11ee-8611-37d641c3527e; Mon, 05 Jun 2023 15:08:12 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by DU2PR04MB8712.eurprd04.prod.outlook.com (2603:10a6:10:2df::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.32; Mon, 5 Jun 2023 13:08:09 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.030; Mon, 5 Jun 2023 13:08:09 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 061ba0e1-03a2-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=ESQdP8tA3dvkqHZlC2+C/3RrlJUpXMh5/6Tab6q9SKwIxiWr9AuU0UC8i0bYRKYUZFYblqBMfqSwZ+E/kRUVHGKIXFrVFiSxuK6JEs3yJeqGH8g9/Tmtjt/tpas2SEoMccfvPiMCDXpOQPKYH4Irf5QVw2fPmabJuj1rYZxQgTV4WiTzFCiu2/2MnHikLwSDkw3FosOQcafZBRxx1ChGmMqCCkjZPeToGOjbxhu74QKAWs0NtnbV93eOjYYbnFuJwOLaUgSDB8XT1Pi6dSpq+OzgTZiJkVGbnUAfSLlajTS/JIxp9q1MeEXCO+HYL7Wv5ENgb/1GOA84bLQZGPtV1g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=nuk1bhs/EnaYmeIu/QE2LxWdhWRLyqzVl/kK7/rIUck=; b=e2ck8m3aDJh86fBRf5Dd06qL67eSP/mAw24pQwYA+yQJBOucCFT/7viqpep5f/jP53vKY5RVBJ/FOB4Q68nE7NCLKl36vLEeKG4PuFhcMpA2A5aZ0utSLKa7pJsbXaKCxnZeNZGo/qakVavkF/ZAwBAHoYRgdDfY37x8gHOGtxG+0oP+NfcUm+/ioPmMtM/eWhVuAAwSF5PhH6oWmsEi6HGfekfad0au3ok0Z66JOZnsFPe4c6Cx/Fdzq/eLqwkA4GYmJtsYvetpAFPV3Eef8TxvKlUqv7mqps5c8ICIWMxu69GWNXb8xlXOEAQyXcDxTLVsobmKxk5u2CJrIdbrzA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=nuk1bhs/EnaYmeIu/QE2LxWdhWRLyqzVl/kK7/rIUck=; b=33Vfjil+hocP+ZwsL7pNY4ic5DfxLvCx6FJHkj+We1RYqa/fT+lXlXkh2pgkrZp7f4MXkm4r/Gpj5mYBrhkZiPV4XbHxPKd5s8d3ClvUKZwzDfpeNmgHMdJMggWiqYHleTBA2xEfxhYTsq6KIRTQ1m+5wyY6M0dUeaV6g8pcK93GiDDM1cnLHE5/nxCEjioHiOadXQEU6wSRkr+Zggr9tPF986BlYMhO6fmJ65HcVmTqWOEcaxDabkmj8Vr4Y9jP2RVDTQ8zyNIhapB1i/i60ANkJFHviCEe9W3S23hnht2zwlPVH5Gt0lJB5WDZBKwPauDwmPs21l+Mgg42pm24cw== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: Date: Mon, 5 Jun 2023 15:08:07 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.11.2 Subject: Re: [PATCH v2 10/10] x86emul: AVX512-FP16 testing Content-Language: en-US From: Jan Beulich To: Henry Wang Cc: Andrew Cooper , Wei Liu , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , "xen-devel@lists.xenproject.org" References: <8cbbab55-d670-5632-30ee-3e8ca352f048@suse.com> In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR0P281CA0192.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:ab::11) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|DU2PR04MB8712:EE_ X-MS-Office365-Filtering-Correlation-Id: 5a0fdc16-e00c-4d06-b17d-08db65c5e8f9 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: jywYzQmq9EUoOmyUp/kjkYCSjXEDSy1pf80jWjWyd+/s1Ebv+2TC6rB6RMLB+lntBVduIRfZzcFAMHZ5CbGuofDGuqNHKCfwtv4gmYrqHK2JtJwA4b6mW505ZpgnuaRiuftzPVcvopj6N1aeLBMzhZenC8BhfSZvgpBZq3qW4kU5UQV6TvXNSkGeJZVs1wbl/Po1WG+DzzHviVSMOV56O43kbx80oUVSQRI9cXzmYxw2uqTaYTNjH8DNT7ztKAthhIc8mjUma8hlnG8lx0H9TgQJqt1P3hhWItM0aQX2LyoFfd813+8jDflKhZQHVeYu89h0aX+mLwxVFHAHQzwOsvo/xzHO7Q3s5YLy6cb//yzlNCrIb6uarzyN8DtXM+PHMdwkEp0CAmSutOzUDXuJrBPKPhCq46Gv2TE15M6wWrhPmfOagtfWBIvqjwDRg5OXnBe13dPa0tyV92CB2e4p1UiPLMqOHNJyopk3vKgpXl4miTxBDImbzU86D9mqJ2tnbKCaMDN4TBgTlnt0hui/MPN2LsxBLB3hh/yi8Pcmjb+p8QnfO5RijO0cEs9nVlpspwNH38pcdzPOQLIULhLCiWUbLwdQZS5FI/QoXPNzlt2u6uio2g4gUrzGHsIZOmsUh2asV9cWEiNEjqjXU9Um5w== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(376002)(396003)(366004)(39850400004)(346002)(136003)(451199021)(53546011)(6512007)(6506007)(38100700002)(2616005)(41300700001)(31686004)(6486002)(186003)(26005)(83380400001)(478600001)(54906003)(4326008)(66476007)(66556008)(6916009)(316002)(66946007)(8936002)(8676002)(5660300002)(2906002)(4001150100001)(31696002)(86362001)(36756003)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?MG9YSGg0Rmxsc2tsNWQxRG13Q3FEbWVDT1REVkhXOGUyWENtaXpoYWZBVmZN?= =?utf-8?B?YTBnL05CM1ZXQWdBdUQxRUVvRnBTQjVHOUdZaWcwY2ZLUmszMkt1dFhUVHJT?= =?utf-8?B?Z3hFcmhoVG5Sa25BUktJZVhVYTlnY0hPU3Y5L3pwTCtSdU81K2pDRFVTakJJ?= =?utf-8?B?dGVZQ2Y5MnRscGFhdFR5RnJaek1UNEhJK0VycFdSMzJNa29QN3RFVjJoTE5T?= =?utf-8?B?M1g0R3RkN2UyTDlUZU9YL0ZkWVdqYkNCT2xpSDZTMTVnamp3S0JVMTZvNHNE?= =?utf-8?B?L2JuK3h4K3V3T2cwSkVXbEd1Nktzb0ozZFFhR01zSmUxVzBCZkhYWEc0TW4w?= =?utf-8?B?MTZONCsvL2ZFMEcyYmwyeFdCS3JGVUc1SVg5VWVNcGtFV2NiRDVMbGdLNjQv?= =?utf-8?B?QTIwRmNJYmNSY2Z1N2ozNWErb1UvQTJZMFcrMWUwZlNzWjhqZzVLMTAzOXdJ?= =?utf-8?B?RzlqN1dEOFZiRFNwTmE4emdxVVlmeWJGdGZJSldoYUtxZUxtRkNiMjlEYnZO?= =?utf-8?B?a0JUUTc5UGZBK04zZ3pIK1dlSHhaRUhueXI5eEViZUpONTdZdHQ2c1dIMDRK?= =?utf-8?B?S2VqVTBQWC9qN2ZFQjRXL201b1BTUDBuYjlRLy9ZMXBjS0V1aW00cHdwdzY5?= =?utf-8?B?Z1ZDMjFtTk1RL2tiZDg5eUNkV2VZTm5ETlVGd0ZLL2t3VHhQNGZLakZpNUVq?= =?utf-8?B?TURDZkgwVWFHWnJsK0xVZllTQm94RVlsZ3VHK0ZvRU5ubWR5T01EWDRqWndm?= =?utf-8?B?Z2dFbVBWU1pnSjRwb01uQjRZQkQ5KzU0Y29ISHRIbW5FQzY1V1o1U2Nuai9B?= =?utf-8?B?RmFTdGVKYlppai9paG9VaUpHTzZTTit1RVBweHdic0hwYW5xZ1FBWENQVHhP?= =?utf-8?B?ei9wbmd3TlQ2YmgwdTJ1bitDL0FJaVNmR2pCaEtKSWJCUGllNFo5c1BWVzdR?= =?utf-8?B?dFB0TUs0UzlIdWN6blhHK0F5SkpqT1F0eTU5TG0rV0ttOTIwVU5oZEFHVVRv?= =?utf-8?B?OHNCdHVMV1ZTMDduVU43K2tTOWNrR0pIbVhRSDlRdW4yck9VTWl1TTVRcC9W?= =?utf-8?B?dm5oM29jaU1mRDVPVGt1R24yblZaMFdpaGJ6VjljUUtjNmJ5K2NIVDUyLzlF?= =?utf-8?B?UHZNc0xFa3pNUXdBTFA4dTF6emNNNTB0MVBwZ1MyQ3h1akE4b1BSWU1kNkhy?= =?utf-8?B?Wi9MTElUU24rd21QYms2MEVSdjkzTS9KQjRnUHdwNFcrd1lLQzArZVJkaVdK?= =?utf-8?B?dVVCRDlaL1RQWE1ud00ycWJTRFdNeVFoZ3p4VlpmUk5XQWwvY084Z1hsUU05?= =?utf-8?B?UVR5Vk9kWHBhb3RGa0FjejJ2WlU0VzNlKzNkb0RxREpWTHZUSUt1Nk1ib2lX?= =?utf-8?B?ZFhMMkZsVGZ2ZUxkdFhFc255Y3MxTWpLZDdRVGdGLzFuWFZyUmNIQk5acVFN?= =?utf-8?B?M0F2TTc3cFFXVExBYXFPVVdzV3pRMmJEOWh3ZUhaU0tFQ3BDSUVlSmErRS9X?= =?utf-8?B?S3lOd29HbDhmZzBDUjF0b3pzRDhUQ3dSYzJEUVlQclE1Q3UwM3YxNXB0Rk8y?= =?utf-8?B?bTFSN251V3VCZDZrZVk0eGVuYnpUU2JncnVERjFrYlNRaWx2REJoYW43Qzli?= =?utf-8?B?M3FYMU8vdThFMlFvZG9KOXlFL1Q1djhTMmxuMWg1N2xtdHh1Q1ZhUjRsMFhk?= =?utf-8?B?RFptbGswd29GdC9sZW56YWIyKzFJc2xTZmsvRk9TcWFRSFN5Y2NzcytmNksr?= =?utf-8?B?bFBPNUZxS3ljNHBITlo0RUQ5Q3FoQWVuRWZZZWlucXQ4d2czT2Z1a1dhUEVs?= =?utf-8?B?SE1DM2hCeWd6M3Z0aUFhd0lCYjJSa20zNXU0ZUdNWFUyZ1FkaXlyeVZuSWJ0?= =?utf-8?B?anBmYklMLzR2MjlrekVqS2dyRjlteGNHam9vYVJ0Q2pmNmZNWk1oZWpnVlJV?= =?utf-8?B?MWZ2cVFRT0pEamFMbTdaV2ZYYU5IRkkzeThUVkEwdUxPYjJ4V2lycThCelFt?= =?utf-8?B?YTdlcDJxTHFTU0RxS1dXU3ppSy9YWVl1bldrTFptdEJYeitRUXlZUU5sck5F?= =?utf-8?B?cUZlTldGWC9FSzZwVTMyMXhzTnlXM3EyMkI0aDBTVlJmekNXcDNSejd1SzFL?= =?utf-8?Q?2cIPQSEGxT8Rg378fzqDHZjVF?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 5a0fdc16-e00c-4d06-b17d-08db65c5e8f9 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Jun 2023 13:08:09.7339 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: kOsqtQWrGl7TKN5JcHC4Dmq75Do1kPxoNn0bTkb10mgWVSn95ZIAq+iZpHIxwJFPKn4AsUrLBHf1CNG9/jEbaQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU2PR04MB8712 Henry, On 03.04.2023 17:00, Jan Beulich wrote: > Naming of some of the builtins isn't fully consistent with that of pre- > existing ones, so there's a need for a new BR2() wrapper macro. > > With the tests providing some proof of proper functioning of the > emulator code also enable use of the feature by guests, as there's no > other infrastructure involved in enabling this ISA extension. > > Signed-off-by: Jan Beulich > --- > v2: Add CHANGELOG.md entry. I notice I forgot to Cc you on this submission, with said addition. May I ask for your ack (or otherwise), please? Thanks, Jan > --- a/CHANGELOG.md > +++ b/CHANGELOG.md > @@ -14,6 +14,7 @@ The format is based on [Keep a Changelog > - Bus-lock detection, used by Xen to mitigate (by rate-limiting) the system > wide impact of a guest misusing atomic instructions. > - xl/libxl can customize SMBIOS strings for HVM guests. > + - x86 AVX512-FP16 > > ## [4.17.0](https://xenbits.xen.org/gitweb/?p=xen.git;a=shortlog;h=RELEASE-4.17.0) - 2022-12-12 > >[...] From xen-devel-bounces@lists.xenproject.org Mon Jun 05 13:20:49 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 05 Jun 2023 13:20:49 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543716.848915 (Exim 4.92) (envelope-from ) id 1q6A8R-0003bE-2A; Mon, 05 Jun 2023 13:20:35 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543716.848915; Mon, 05 Jun 2023 13:20:35 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6A8Q-0003b7-VL; Mon, 05 Jun 2023 13:20:34 +0000 Received: by outflank-mailman (input) for mailman id 543716; Mon, 05 Jun 2023 13:20:33 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6A8P-0003b1-2E for xen-devel@lists.xenproject.org; Mon, 05 Jun 2023 13:20:33 +0000 Received: from esa1.hc3370-68.iphmx.com (esa1.hc3370-68.iphmx.com [216.71.145.142]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id bd4484eb-03a3-11ee-8611-37d641c3527e; Mon, 05 Jun 2023 15:20:30 +0200 (CEST) Received: from mail-mw2nam04lp2175.outbound.protection.outlook.com (HELO NAM04-MW2-obe.outbound.protection.outlook.com) ([104.47.73.175]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 05 Jun 2023 09:20:27 -0400 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) by SJ0PR03MB6599.namprd03.prod.outlook.com (2603:10b6:a03:388::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.28; Mon, 5 Jun 2023 13:20:25 +0000 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::192:6bdf:b105:64dd]) by SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::192:6bdf:b105:64dd%3]) with mapi id 15.20.6455.028; Mon, 5 Jun 2023 13:20:23 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: bd4484eb-03a3-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1685971230; h=date:from:to:cc:subject:message-id:references: in-reply-to:mime-version; bh=Zd3R/Rm3Px4eLh4BuPXDsr8h6eMdfTLCr71pqKICGG0=; b=dev7fn9Wl4Sz+itPsbsj7/ZEoZh6mYbcOe6BoG/LmsOfebrqLvWoW/J1 8YQ3XwLCestKqVT4gU/G+gcd9napWBtCOI/3Y17Jkiy2R9ZHBy7Y1RMKS wrWpxZBYEUJfYhYA3FIcVDUkSsYN4biexlUzuqJGSy28XhtVh1q9nt67w U=; X-IronPort-RemoteIP: 104.47.73.175 X-IronPort-MID: 112035792 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:wSEEvKrkFGFyRLRm1ONeqEZAfX5eBmI8ZBIvgKrLsJaIsI4StFCzt garIBnXaPyJMDHwe9pwatnloRgB7JPVm9IwHgRqqSg2RSMVpJuZCYyVIHmrMnLJJKUvbq7FA +Y2MYCccZ9uHhcwgj/3b9ANeFEljfngqoLUUbKCYWYpA1c/Ek/NsDo788YhmIlknNOlNA2Ev NL2sqX3NUSsnjV5KQr40YrawP9UlKq04GtwUmAWP6gR5weAzyVNVfrzGInqR5fGatgMdgKFb 76rIIGRpgvx4xorA9W5pbf3GmVirmn6ZFXmZtJ+AsBOszAazsAA+v9T2Mk0MC+7vw6hjdFpo OihgLTrIesf0g8gr8xGO/VQO3kW0aSrY9YrK1Dn2SCY5xWun3cBX5yCpaz5VGEV0r8fPI1Ay RAXACFQSDCNjeid+ZiyE/NPg/VkN+LXZKpK7xmMzRmBZRonabbqZv2WoPpnhnI3jM0IGuvCb c0EbzYpdA7HfxBEJlYQDtQ5gfusgX78NTZfrTp5p4JuuzSVkFM3j+OraYWIEjCJbZw9ckKwv GXJ8n6/GhgHHNee1SCE4jSngeqncSbTAdtITOblqa8w6LGV7kAqMyQ8WGmCmOuGk2K8So0cA nMs5iV7+MDe82TuFLERRSaQsHOC+xIRRddUO+k78x2WjLrZ5R6DAWoJRSIHb8Yp3OcpQRQ62 1nPmMnmbRRtv6eSUmm17aqPoHW5Pi19EIMZTSoNTA9A5sa5pog21k7LVow6T/PzicDpEzbtx TzMtDI5m7gYkc8M0eO84EzDhDWv4JPOS2bZ+znqY45s1SshDKbNWmBiwQKzASpoRGpBcmS8g Q== IronPort-HdrOrdr: A9a23:UY2BSKmZAIEMcTdTiW1e7ITah7jpDfLo3DAbv31ZSRFFG/Fw9/ rCoB17726QtN91YhsdcL+7V5VoLUmzyXcX2/hyAV7BZmnbUQKTRekP0WKL+Vbd8kbFh41gPM lbEpSXCLfLfCJHZcSR2njELz73quP3jJxBho3lvghQpRkBUdAF0+/gYDzranGfQmN9dP0EPa vZ3OVrjRy6d08aa8yqb0N1JNQq97Xw5fTbiQdtPW9f1DWz X-Talos-CUID: 9a23:1yuvBW4XB2GIDHJzcdss5RMyOs4veFbk5n6JOWy9OCFyY4HNYArF X-Talos-MUID: 9a23:9NagxQgR0JVqZZTxJekeBcMpGP5T2o6jOnk0g6ofl8uVam9ZBA+Bg2Hi X-IronPort-AV: E=Sophos;i="6.00,217,1681185600"; d="scan'208";a="112035792" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=EOShvd6oBGLpluFXHMK2rAVm48S/bjoNsId/5bAJg/Up3Azsk9R4OqOYHWDePXRbEuxGdiYPMVQmQz9GfHqACUJ8Nyk6vfqYgwuS7troKwPCVy2OFOwgkwJygNoTLYGAIqhUMXqRxPK468QnRTuAwcsnbSLciaF7wq5QkZsZi25UripBdueji+kEnY3Wvps2QNR89/QAA8bSaNbZApVHHz3eBjQExCpJNzjVBDU+5B4Kch3Up0QcDOeFX86caD6LilNoSAghfDCTSy/zZQH9mA3wHoltlz2poR/ZdC+OT/9SnbaKRVzza735v6FxsPsgnboeb04k0t1pdyH8AvbyXQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=MeioqXaB2OLmd2c6WMESP0yxxwkHMKNYi1LjgannAKU=; b=bcFCZkSHh3xXQaGiQ07lZ0AeNp84f/t8nGp4W6Rjgt85FyBPm0kFoZvnU3ybTUdY3TUYNZUccAXJkwSTiUyTeJptda67kBXl1GrawnwbCR61cEw5PW0a3p3B57Dz/nE+njiK2oJGZrSFM7EMXFqXt2gHA/pI/K4DxR8jKNamPakknY1qKPZ0RkqQTkKIvys7KuVlXuheV/HUV+y+23r3braB8WeXsPPU2y4D/JWuYJTsinFichlUmJDbZjImQt/D/A0zRUIhz7ba8eKJeYH6uU76+2kqQBwtguqtS1OB3/a03l+jMs4rEBhMd7YljhSmvVX1tk2J2+O1XcDkf5xQow== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=MeioqXaB2OLmd2c6WMESP0yxxwkHMKNYi1LjgannAKU=; b=R3upLGWbFApFmvm8UqPchIR3QdeLcJdEMDQm65Vs4in/2P8flseXO/O0OIYWQKIImlFCzTHUFpSfLDFi95s0He7lSWUcJ567XRaJHddfdhrrWX+BKni6m3MraQdZEPiQEomOQl6vdgPz4+PaUYgPq1KE4/gMzuhYI31DiZuO5Jk= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Date: Mon, 5 Jun 2023 15:20:16 +0200 From: Roger Pau =?utf-8?B?TW9ubsOp?= To: xen-devel@lists.xenproject.org Cc: andrew.cooper3@citrix.com, Wei Liu , Anthony PERARD , Juergen Gross Subject: Re: [PATCH] libs/light: use the cpuid feature names from cpufeatureset.h Message-ID: References: <20230605103657.14191-1-roger.pau@citrix.com> Content-Type: text/plain; charset=utf-8 Content-Disposition: inline In-Reply-To: <20230605103657.14191-1-roger.pau@citrix.com> X-ClientProxiedBy: LO4P265CA0212.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:33a::12) To SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|SJ0PR03MB6599:EE_ X-MS-Office365-Filtering-Correlation-Id: 4b937c18-2725-4e64-6689-08db65c79e40 X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: IxA4T9NBIJYYj+MwJDX+vB2ubcKWkJ7AZEXKPBboxg9YIfJzsvaFiJBi4+aKqO2NogGILq4iGj9RVJqdQTcuwHqbJiaSvP+4Y7jMV7k3b6i+6UpfsmkdpeTP3w4Rai0FXUKE+8tjNDHtnDsRh4ZryhZtflRYLpkpOSg+8tFDdy+cAwQW/pTNeUaZpbgV5v0Ppn66S5bakuqwNKOOj3fYY/7O+gR67Fz2TzL305kt0rtg7AGV4OM/IvNbGMAuKJ/dn2CPQ6rxV36raNMDXMRR/Yr8XrYFxFGgikJVvLjUNhtTzvgT7+el4qI6/C06E0lB8Z0s0KKRjdvaMQ6d25oi7SIUt21lQi/z6ZfjWzgm5vILqyqoAyF4fVHXz3Ms1jiIsfBvAJOpAwMfSqhHQEudDku1jWPrED2N3JIF+UvefYKWnvepeKHF4f6KiQMftjQtk03fyVQ1lai/MbYsmfv7o1PWCi6CSkXeeRX6muqSMOD45LDe459mAczKnfHnjmaYJjSoEibcsXHTlXcZElyHJCyOicmv/EpsoI5tqSEmpwfbj/ryBgo1lUoJy/PdMiIs X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(7916004)(376002)(346002)(366004)(39860400002)(396003)(136003)(451199021)(6486002)(6666004)(26005)(9686003)(6512007)(6506007)(186003)(85182001)(86362001)(38100700002)(33716001)(82960400001)(54906003)(5660300002)(316002)(41300700001)(8676002)(66476007)(8936002)(66556008)(4326008)(66946007)(6916009)(4744005)(2906002)(478600001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?VkRKYVpkdjR4UkVnYVd3cENtK2xJODJjSWQ1VkFmU0VCM04wd3h6Q3Z4MEFl?= =?utf-8?B?T1ZqMWlXVWY5THIrRnVlOUJqWUhzQmk5bldQMG0rQmxjRHhXcjVHZTlKSEdL?= =?utf-8?B?eDNJOG9QWld1ZTRIRlFDZGZpbGh3YisyaER2MzEzaGhPejdGYUlTY0F0QTJk?= =?utf-8?B?Vmw4Uzg5RzViZmduYU9ySmNsVGpYRDZwNFdEV1VINkNTQW9Ua25KSWRzcWpM?= =?utf-8?B?ZWM4R0xUanE5QW1GQ3hNYmdKbU8wZGxxYURTdGUrOTdlV3JKRkdDdEhFY0lQ?= =?utf-8?B?V2F5SmNRY2ZCOGw5cHBlUXN3Ny9SMVFObjBsQkdBK2NYRUR6YkowRnl1YXN6?= =?utf-8?B?TUdaMFVjT0xtR1BHeTUxaVVLZ0FyRjZLMnRZYlJpMGRSK2cwWGc2Y2hOK0FR?= =?utf-8?B?QUNxU3BZZk8vcGlKRjNzdjFxTDM1eTAzemZZUk9SWVRmUTJMbk1sdUh6YXBj?= =?utf-8?B?RWF1alB6V0dzRk9rTVA5bDMxQjdGcEhHZUZFdEZuNTNUb1N2M2gxSy9uOFRv?= =?utf-8?B?R1VoekVzT0g1bi9yUThMOTU4enFrdlphTnMwMmJhckJjaC9CZExoYUJsM1pu?= =?utf-8?B?VTh5RkpUZ2tIMWF1ZUZuaXRNbUJrZGtxZUJjY1l5cE5DMmpzc3Bod09qSUZ2?= =?utf-8?B?cEt6RzliM2ljUTlrODB0ckZkUXNENnJHektEczVYTVozSGNpQk9NM00wQ3FZ?= =?utf-8?B?Vzg2VGdZTGU4WmFOZlJpd0hGN09WeXpzQ0MvQjhLeVpJTEg5SDlxNGJHMThS?= =?utf-8?B?MGRUUFRPV3JjRG5ZWklOVFdtZTlkN1A4d25UR29IRVZUUUlVK3hxOFpxVDZ6?= =?utf-8?B?LzltTk9GMTAxY3ZjaUU3MUFBYkFVS1pGd0hocmM0dlh0NVdyWnJ6UU80RlpQ?= =?utf-8?B?Q3QvQ2tzRnp3MGJscmRYTWMzWUJ4dHBQSGVYM0NFb05KMHIyRkhheVQ5eDB5?= =?utf-8?B?VFFEWENRN2Q5bElNc1ZHRjBTZ205SERCZDhXSlFwOHFuMzg4UVRkZytNVVBB?= =?utf-8?B?NnFnQ0w1cHZOL2FrSkxGK2cxdzFpMDZMSUZCdUtiZ3A3UjcwSEMrOXlCUStN?= =?utf-8?B?SEF0ZWhPbGF6RjdGbEVDOG5Xc2xLbGxabjMxMlNJNnRHQU9RZCtyeC9LVmpq?= =?utf-8?B?VXR2Qk0zRE1zQnY3VjBSdE9SeHMvQU1BWm5QWjhPcFJ2bTk3cmFlN1VsVHpp?= =?utf-8?B?cGpOREpERHdvV1JhbHNJaS9pZ1Q2b0NnMzY0SDB2c3pQN1F5RGh5L1NocjV1?= =?utf-8?B?S2NhM3RraThkclpXSkh6MGhFRHMxVlE3M2piNW42c3dCOWI1U2V5R2xJMXJr?= =?utf-8?B?Y1F0ckcwUDZQN0N0c3hHQ2xqZlhvQVdXK2tQakNOOUt3M1ZIL01ROVdueFg2?= =?utf-8?B?aDFkYzZrSzRWQWJMVC9pOVg1SUZCelBKc3JUZ3lvNy9Mdy9hZDhjMTU5NEQw?= =?utf-8?B?M2p2dGtQTjV4a3dKcGF2djhqZEdKNjBXSEVLNU9ZUm5sZktJSnRweW9Uekg0?= =?utf-8?B?NFJVdVg2SDVmTkxCZkZKRG4vdTlCM3lmQzFldnR4NndVMEl4VXd4MTZYbnNh?= =?utf-8?B?SFhtNzAzK01sUTlpM0FXUlpDRXlxVWh6QVlUa2djY1VieThNeG9WdnMvenZj?= =?utf-8?B?eWxuaElXOXE5U01PVUg1Z3MzNENSbEpTbzB1dm1NandhaVFUeFZrRURmdDF4?= =?utf-8?B?TEw4NVRkdHFpaWdaZ2tac2xPaGVzVlNyejBGYXY4dUJZVUV0MzZjMWdmQnc2?= =?utf-8?B?cEVxS1pFbkdYQmtlQTZROFlRTFZJTXZTeXhNTVZacWhoNUpyc0dEbXVRU2hu?= =?utf-8?B?WWtKOWpkWGhtR3FkU1BVblNsdmNDMmhxdVlCWnhXQ3E3SUd0MGZ4aTFmeXZM?= =?utf-8?B?eDEyNm4zcVo2NXloU3haMGgxNUZzeFZtRjRjcWVySmdVNlVwN0dhY0lrOFdG?= =?utf-8?B?aWZIL0x0eWgzU1k3OGZCZ2ZlQStPSUhKSHh0Y25YMm9jclZ2akh4QVVlcHIv?= =?utf-8?B?WEQ3OXB0amhUODl3dDVDdVNDS2RMNDhhYzZVeU1lUmV0U2lpVlNoUlhSaXlZ?= =?utf-8?B?aDB1NG5RRGs4azQzbXgzSTdRLzgyT0dxa2xxaDU4bDNSd250N1ZVNkJQckdl?= =?utf-8?Q?1Id6CL0wAdHX+LEaKwqaDVzSD?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: qqA+LsxKrb7DD2yqfY4I8+emFos0UF+iRojRouhJtQMVUFz+WczkvEmLAYaNkicn4i2ULtwM051Xz2l+GITeZJLtXLUGfMFVzIhqjuP3plfN7pXPGPRC0BVskVpEN+mUHoE32bMfFzE4RgYKFw1WBQ/gp+X06SBLzTXkSZU5sq5OrxX9nJ1Fzku2N6GVgxmedF0rxI95d9xnAlvZxD97GaqrovRBUROuPXGFUT/Wk1U1DAk6nOBcvXJrwPm5T2yju2Ad+KuBCZVXicSyUc8C6ojB+CT2sMN7kGTbJeHhS0ZAHMs/owK3ADGVK2g4S+lVOgs0RZ+w3TnV5vKqUf6DjxiMLYL7QNDNvc0Hwc9MQR2ih3wyca/MwMOWWlCIvDpioNpVudgyetPMiG+As6IdUVOsfkx3iDox2kxRo1fpR1bAWaPvklwPo9MP1cQYB8pS9USRc5rMwIBl/4YXGf0C91ejrXZf5Ui2nO2BWPhyI1nw1QacqespatS3CSSUeP8Hg/7P7XP8u/Xh9bKexSsQ00eXnBJUPPjH7a1DYUax0McLnjiNAYXwyOOestjoLLfZGqiwuFZXpA1ytxQYAakkz7M5nRlvd86gqxJF4IUXjPK6xGAQ1s9Udu7N1F1vztI73m9gTrgXXgasCSkKi8esyBH5sqc+DxMuy6gThMm0rihEjnhI+VY3bT+rw/FSobS9Z0vdcoQ6iL5rz9Q+RBt/PjXx+Nd8uQNFqunwYir0Uy/pmddJYYD4j89r00aHKsKy6gtGX9qlmaCRgyPlQu13cyVojigaBjsq1KOCefGXYP4eU+q4ZX+EoOdXXW7ULTwg X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 4b937c18-2725-4e64-6689-08db65c79e40 X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Jun 2023 13:20:23.2909 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: mWy44NILfTjmgXUEeDEzPzV3oVD0Y+GFc4wQ0tGxr9C9QHmT+OZgaKO6/QdI6vUj/NM+B1g2S4UH8zdqgWe1TQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR03MB6599 On Mon, Jun 05, 2023 at 12:36:57PM +0200, Roger Pau Monne wrote: > @@ -81,6 +83,14 @@ static libxl_cpuid_policy_list cpuid_find_match(libxl_cpuid_policy_list *list, > return *list + i; > } > > +static int search_feature(const void *a, const void *b) > +{ > + const char *key = a; > + const char *feat = ((struct { const char *n; } *)b)->n; The cast should be (const struct { const char *n; } *) to not drop the const. Thanks, Roger. From xen-devel-bounces@lists.xenproject.org Mon Jun 05 13:26:47 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 05 Jun 2023 13:26:47 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543722.848926 (Exim 4.92) (envelope-from ) id 1q6AEM-0004Il-Pe; Mon, 05 Jun 2023 13:26:42 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543722.848926; Mon, 05 Jun 2023 13:26:42 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6AEM-0004Ie-N1; Mon, 05 Jun 2023 13:26:42 +0000 Received: by outflank-mailman (input) for mailman id 543722; Mon, 05 Jun 2023 13:26:41 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6AEL-0004IU-Cm for xen-devel@lists.xenproject.org; Mon, 05 Jun 2023 13:26:41 +0000 Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 9a3ff98b-03a4-11ee-b232-6b7b168915f2; Mon, 05 Jun 2023 15:26:39 +0200 (CEST) Received: from [192.168.1.142] (unknown [151.47.122.133]) by support.bugseng.com (Postfix) with ESMTPSA id 32D554EE073A; Mon, 5 Jun 2023 15:26:38 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 9a3ff98b-03a4-11ee-b232-6b7b168915f2 Message-ID: <80a512ac-d90e-930a-7ef7-8ebb5a80e801@bugseng.com> Date: Mon, 5 Jun 2023 15:26:36 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.12) Gecko/20050929 Thunderbird/1.0.7 Fedora/1.0.7-1.1.fc4 Mnenhy/0.7.3.0 Subject: Re: Xen reliance on non-standard GCC features Content-Language: en-US To: Jan Beulich Cc: Stefano Stabellini , "xen-devel@lists.xenproject.org" References: <1cd359e7-5245-a621-3be2-9323ba5b327b@bugseng.com> <8314e0fc-4ead-40fa-ef7b-4da8ce0655b4@suse.com> From: Roberto Bagnara In-Reply-To: <8314e0fc-4ead-40fa-ef7b-4da8ce0655b4@suse.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit On 05/06/23 11:28, Jan Beulich wrote: > On 05.06.2023 07:28, Roberto Bagnara wrote: >> U1) Use of _Static_assert in C99 mode. >> >> U2) Empty initialization lists, both in C99 mode (ARM64 and X86_64) >> and C18 mode (only X86_64). >> >> U3) Returning void expressions. > > As per above, tiny extensions like these are, I think, unlikely to be > mentioned anywhere explicitly (or more than in passing). For the last of > the three it may further be that it pre-dates when gcc started to > properly document extensions. Oh, actually - U3 is documented along with > -Wreturn-type. Noted: thanks! > Uses are generally intentional afaik, but eliminating cases of U2 and U3 > would likely be possible with just slight overall impact. Ok. As this has an impact on MISRA compliance at some stage we will need an official position on the subject. > As to U2, it's not clear why you distinguish C99 and C18 mode. I specified that because for MISRA compliance we need to stick to one version of the language: while most translation units are compiled in C99 mode, some are compiled in C18 mode and some in C90 mode. However, I agree this is OT for the current discussion. > Throughout > this summary of yours it would likely have been helpful if an example was > provided for the behavior your describing, when the wording doesn't make > it crystal clear (e.g. no example needed for U1 and U3 above). You are right: here are a few examples for U2: xen/arch/arm/cpuerrata.c:92.12-92.35: empty initializer list (ill-formed for the C99 standard, ISO/IEC 9899:1999 Section 6.7.8: "An empty initialization list." [STD.emptinit]). Tool used is `/usr/bin/aarch64-linux-gnu-gcc-12' xen/include/xen/spinlock.h:31.21-31.23: expanded from macro `_LOCK_DEBUG' xen/include/xen/spinlock.h:143.57-143.67: expanded from macro `SPIN_LOCK_UNLOCKED' xen/include/xen/spinlock.h:144.43-144.60: expanded from macro `DEFINE_SPINLOCK' xen/arch/arm/cpuerrata.c:678.5-678.6: empty initializer list (ill-formed for the C99 standard, ISO/IEC 9899:1999 Section 6.7.8: "An empty initialization list." [STD.emptinit]). Tool used is `/usr/bin/aarch64-linux-gnu-gcc-12' xen/arch/arm/cpufeature.c:33.5-33.6: empty initializer list (ill-formed for the C99 standard, ISO/IEC 9899:1999 Section 6.7.8: "An empty initialization list." [STD.emptinit]). Tool used is `/usr/bin/aarch64-linux-gnu-gcc-12' > As to U1, I'm afraid this statement very early in gcc's section > documenting C extensions simply hasn't been properly updated for newer > versions of the standard: "Some features that are in ISO C99 but not C90 > or C++ are also, as extensions, accepted by GCC in C90 mode and in C++." > A somewhat similar statement in the middle of 2.1 "C Language" is > slightly better, thus covering at least the specific case of > _Static_assert. Noted: thanks! >> U4) Static functions or variables used in inline functions with external >> linkage. > > There's not a lot of "extern inline" that we've accumulated so far, I > think. The only ones I'm aware of are sort() and bsearch(), and there > the use is precisely for allowing the compiler to optimize away function > calls. > > The documentation of this functionality is that of the gnu_inline > function attribute, afaict. That would be 6.33.1 "Common Function > Attributes" in 13.1.0 doc. No, it is not that one: xen/common/spinlock.c:316.29-316.40: static function `observe_head(spinlock_tickets_t*)' is used in an inline function with external linkage (ill-formed for the C99 standard, ISO/IEC 9899:1999: "An ill-formed source detected by the parser." [STD.diag/ext_internal_in_extern_inline_quiet]). Tool used is `/usr/bin/aarch64-linux-gnu-gcc-12' xen/common/spinlock.c:301.26-301.37: `observe_head(spinlock_tickets_t*)' declared here xen/include/xen/spinlock.h:180.1-180.4: use 'static' to give inline function `_spin_lock_cb(spinlock_t*, void(*)(void*), void*)' internal linkage >> U5) Enumerator values outside the range of `int'. Examples: xen/arch/x86/include/asm/guest/hyperv-tlfs.h:477.9-477.26: Loc #1 [culprit: ISO C restricts enumerator values to range of 'int' (2147483648 is too large) (ill-formed for the C99 standard, ISO/IEC 9899:1999: "An ill-formed source detected by the parser." [STD.diag/ext_enum_value_not_int]). Tool used is `/usr/bin/x86_64-linux-gnu-gcc-12'] xen/arch/x86/include/asm/guest/hyperv-tlfs.h:477.43-477.52: Loc #2 [evidence: ISO C restricts enumerator values to range of 'int' (2147483648 is too large)] xen/arch/x86/include/asm/guest/hyperv-tlfs.h:478.9-478.27: Loc #1 [culprit: ISO C restricts enumerator values to range of 'int' (2147483649 is too large) (ill-formed for the C99 standard, ISO/IEC 9899:1999: "An ill-formed source detected by the parser." [STD.diag/ext_enum_value_not_int]). Tool used is `/usr/bin/x86_64-linux-gnu-gcc-12'] xen/arch/x86/include/asm/guest/hyperv-tlfs.h:478.43-478.52: Loc #2 [evidence: ISO C restricts enumerator values to range of 'int' (2147483649 is too large)] xen/arch/x86/include/asm/hvm/svm/vmcb.h:143.5-143.27: Loc #1 [culprit: ISO C restricts enumerator values to range of 'int' (2147483648 is too large) (ill-formed for the C99 standard, ISO/IEC 9899:1999: "An ill-formed source detected by the parser." [STD.diag/ext_enum_value_not_int]). Tool used is `/usr/bin/x86_64-linux-gnu-gcc-12'] xen/arch/x86/include/asm/hvm/svm/vmcb.h:143.31-143.38: Loc #2 [evidence: ISO C restricts enumerator values to range of 'int' (2147483648 is too large)] >> U6) Empty declarations. Examples: xen/arch/arm/arm64/lib/find_next_bit.c:57.29: empty declaration (ill-formed for the C99 standard, ISO/IEC 9899:1999 Section 6.7: "An empty declaration." [STD.emptdecl]). Tool used is `/usr/bin/aarch64-linux-gnu-gcc-12' xen/arch/arm/arm64/lib/find_next_bit.c:103.34: empty declaration (ill-formed for the C99 standard, ISO/IEC 9899:1999 Section 6.7: "An empty declaration." [STD.emptdecl]). Tool used is `/usr/bin/aarch64-linux-gnu-gcc-12' xen/arch/arm/include/asm/vreg.h:143.26: empty declaration (ill-formed for the C99 standard, ISO/IEC 9899:1999 Section 6.7: "An empty declaration." [STD.emptdecl]). Tool used is `/usr/bin/aarch64-linux-gnu-gcc-12' xen/arch/arm/include/asm/vreg.h:144.26: empty declaration (ill-formed for the C99 standard, ISO/IEC 9899:1999 Section 6.7: "An empty declaration." [STD.emptdecl]). Tool used is `/usr/bin/aarch64-linux-gnu-gcc-12' xen/arch/arm/include/asm/arm64/flushtlb.h:70.51: empty declaration (ill-formed for the C99 standard, ISO/IEC 9899:1999 Section 6.7: "An empty declaration." [STD.emptdecl]). Tool used is `/usr/bin/aarch64-linux-gnu-gcc-12' >> U7) Empty enum definitions. Example: xen/arch/arm/include/asm/vgic.h:275.6-275.17: enum declaration `gic_sgi_mode' is incomplete (ill-formed for the C99 standard, ISO/IEC 9899:1999 Section 6.7.2.2: "An incomplete enum declaration." [STD.emptenum]). Tool used is `/usr/bin/aarch64-linux-gnu-gcc-12' > ... here I wonder whether instead you mean forward declaration of enums > (i.e. what the standard allows for structures and unions only). It is reported as an enum forward declaration if the enum is later properly declared. My understanding is that this is not the case for the example above. >> U8) Conversion between incompatible pointer types. > > Do we have any uses that aren't, by using casts, documenting that the > conversions are deliberate? Otherwise I would expect the compiler to > warn, and hence the build to fail due to -Werror. Then again I'm sure > we have ample uses of casts left which are actually bogus. Examples: xen/common/kernel.c:552.18-552.47: implicit cast converts from `const __typeof__(*(¶ms))*' (that is `const struct xen_platform_parameters*') to `void*' (ill-formed for the C99 standard, ISO/IEC 9899:1999 Section 6.5.16.1: "Implicit conversion from a pointer to an incompatible pointer." [STD.pteincmp]). Tool used is `/usr/bin/aarch64-linux-gnu-gcc-12' xen/include/xen/guest_access.h:65.23-65.24: expanded from macro `copy_to_guest_offset' xen/include/xen/guest_access.h:104.5-104.41: expanded from macro `copy_to_guest' xen/common/kernel.c:566.14-566.59: implicit cast converts from `const __typeof__(*(chgset))*' (that is `const char*') to `void*' (ill-formed for the C99 standard, ISO/IEC 9899:1999 Section 6.5.16.1: "Implicit conversion from a pointer to an incompatible pointer." [STD.pteincmp]). Tool used is `/usr/bin/aarch64-linux-gnu-gcc-12' xen/include/xen/guest_access.h:65.23-65.24: expanded from macro `copy_to_guest_offset' xen/include/xen/guest_access.h:104.5-104.41: expanded from macro `copy_to_guest' xen/common/kernel.c:613.14-613.41: implicit cast converts from `const __typeof__(*(&fi))*' (that is `const struct xen_feature_info*') to `void*' (ill-formed for the C99 standard, ISO/IEC 9899:1999 Section 6.5.16.1: "Implicit conversion from a pointer to an incompatible pointer." [STD.pteincmp]). Tool used is `/usr/bin/aarch64-linux-gnu-gcc-12' xen/include/xen/guest_access.h:123.23-123.24: expanded from macro `__copy_to_guest_offset' xen/include/xen/guest_access.h:152.5-152.43: expanded from macro `__copy_to_guest' xen/common/kernel.c:645.14-645.71: implicit cast converts from `const __typeof__(*(deny ? xen_deny() : saved_cmdline))*' (that is `const char*') to `void*' (ill-formed for the C99 standard, ISO/IEC 9899:1999 Section 6.5.16.1: "Implicit conversion from a pointer to an incompatible pointer." [STD.pteincmp]). Tool used is `/usr/bin/aarch64-linux-gnu-gcc-12' xen/include/xen/guest_access.h:65.23-65.24: expanded from macro `copy_to_guest_offset' xen/include/xen/guest_access.h:104.5-104.41: expanded from macro `copy_to_guest' xen/common/memory.c:1745.20-1745.53: implicit cast converts from `const __typeof__(*(&topology))*' (that is `const struct xen_vnuma_topology_info*') to `void*' (ill-formed for the C99 standard, ISO/IEC 9899:1999 Section 6.5.16.1: "Implicit conversion from a pointer to an incompatible pointer." [STD.pteincmp]). Tool used is `/usr/bin/aarch64-linux-gnu-gcc-12' xen/include/xen/guest_access.h:123.23-123.24: expanded from macro `__copy_to_guest_offset' xen/include/xen/guest_access.h:152.5-152.43: expanded from macro `__copy_to_guest' xen/common/memory.c:1808.14-1808.47: implicit cast converts from `const __typeof__(*(&topology))*' (that is `const struct xen_vnuma_topology_info*') to `void*' (ill-formed for the C99 standard, ISO/IEC 9899:1999 Section 6.5.16.1: "Implicit conversion from a pointer to an incompatible pointer." [STD.pteincmp]). Tool used is `/usr/bin/aarch64-linux-gnu-gcc-12' xen/include/xen/guest_access.h:123.23-123.24: expanded from macro `__copy_to_guest_offset' xen/include/xen/guest_access.h:152.5-152.43: expanded from macro `__copy_to_guest' xen/common/memory.c:1841.14-1841.47: implicit cast converts from `const __typeof__(*(&grdm.map))*' (that is `const struct xen_reserved_device_memory_map*') to `void*' (ill-formed for the C99 standard, ISO/IEC 9899:1999 Section 6.5.16.1: "Implicit conversion from a pointer to an incompatible pointer." [STD.pteincmp]). Tool used is `/usr/bin/aarch64-linux-gnu-gcc-12' xen/include/xen/guest_access.h:123.23-123.24: expanded from macro `__copy_to_guest_offset' xen/include/xen/guest_access.h:152.5-152.43: expanded from macro `__copy_to_guest' xen/common/efi/boot.c:335.16-335.56: implicit cast converts from `const CHAR16*' (that is `const unsigned short*') to `void*' (ill-formed for the C99 standard, ISO/IEC 9899:1999 Section 6.5.16.1: "Implicit conversion from a pointer to an incompatible pointer." [STD.pteincmp]). Tool used is `/usr/bin/aarch64-linux-gnu-gcc-12' xen/common/libfdt/fdt_overlay.c:733.69-733.87: implicit cast converts from `const char*' to `void*' (ill-formed for the C99 standard, ISO/IEC 9899:1999 Section 6.5.16.1: "Implicit conversion from a pointer to an incompatible pointer." [STD.pteincmp]). Tool used is `/usr/bin/aarch64-linux-gnu-gcc-12' >> U9) Conversion between function pointers and object pointers. Example: xen/arch/x86/apic.c:1159.16-1159.55: Loc #1 [culprit: c_style cast converts from `const void*' to `unsigned(*)(void)' (ill-formed for the C99 standard, ISO/IEC 9899:1999 Annex J.5.7: "A pointer to a function is converted to a pointer to an object or a pointer to an object is converted to a pointer to a function (6.5.4, 6.3.2.3)." [STD.funojptr]). Tool used is `/usr/bin/x86_64-linux-gnu-gcc-12'] > Uses I'm readily aware of are deliberate. Plus isn't this shorthand > for going through uintptr_t intermediately only anyway? I don't understand the last sentence. >> U10) \m escape sequence. >> Is this an undocumented GCC extension or just a typo? Already dealt with in another message. >> Here is a list of extensions that are documented in the GCC manual: > > I suppose that this list wasn't meant to be complete? The most > prominent example is probably asm(). As far as I can tell the list was almost complete (I realize now that the use of the keyword __signed__ was omitted because investigation was not completed). But I am probably misunderstanding you. Kind regards, Roberto From xen-devel-bounces@lists.xenproject.org Mon Jun 05 13:44:12 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 05 Jun 2023 13:44:12 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543728.848935 (Exim 4.92) (envelope-from ) id 1q6AV0-0006hA-6Y; Mon, 05 Jun 2023 13:43:54 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543728.848935; Mon, 05 Jun 2023 13:43:54 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6AV0-0006h3-3T; Mon, 05 Jun 2023 13:43:54 +0000 Received: by outflank-mailman (input) for mailman id 543728; Mon, 05 Jun 2023 13:43:52 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6AUy-0006gg-3b for xen-devel@lists.xenproject.org; Mon, 05 Jun 2023 13:43:52 +0000 Received: from EUR05-DB8-obe.outbound.protection.outlook.com (mail-db8eur05on20603.outbound.protection.outlook.com [2a01:111:f400:7e1a::603]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id fecfb4d0-03a6-11ee-8611-37d641c3527e; Mon, 05 Jun 2023 15:43:47 +0200 (CEST) Received: from DUZP191CA0024.EURP191.PROD.OUTLOOK.COM (2603:10a6:10:4f9::21) by GV2PR08MB9880.eurprd08.prod.outlook.com (2603:10a6:150:de::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.32; Mon, 5 Jun 2023 13:43:44 +0000 Received: from DBAEUR03FT005.eop-EUR03.prod.protection.outlook.com (2603:10a6:10:4f9:cafe::e3) by DUZP191CA0024.outlook.office365.com (2603:10a6:10:4f9::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.32 via Frontend Transport; Mon, 5 Jun 2023 13:43:43 +0000 Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by DBAEUR03FT005.mail.protection.outlook.com (100.127.142.81) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.19 via Frontend Transport; Mon, 5 Jun 2023 13:43:43 +0000 Received: ("Tessian outbound 5bb4c51d5a1f:v136"); Mon, 05 Jun 2023 13:43:43 +0000 Received: from 3b7421c586a3.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 777E5827-F92A-418F-AC9B-0B9A98588800.1; Mon, 05 Jun 2023 13:43:37 +0000 Received: from EUR05-VI1-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 3b7421c586a3.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Mon, 05 Jun 2023 13:43:37 +0000 Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15) by AS2PR08MB9024.eurprd08.prod.outlook.com (2603:10a6:20b:5fe::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.32; Mon, 5 Jun 2023 13:43:33 +0000 Received: from AS8PR08MB7991.eurprd08.prod.outlook.com ([fe80::2db3:aa30:7be0:10a6]) by AS8PR08MB7991.eurprd08.prod.outlook.com ([fe80::2db3:aa30:7be0:10a6%4]) with mapi id 15.20.6455.030; Mon, 5 Jun 2023 13:43:33 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: fecfb4d0-03a6-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=185Qz9TKNGSasx82Cv1ifwrXG32QQ26gxGfE9bmFfNI=; b=3crH89OC42iSOhzduuNcnlizmnpbPwWLDwvIq/oGF7p/4oy70UET5AO9g1ZUpP0L4U0x+ucr1g82y8GrJCeAJHysdDkXz8t3+DilkHUGNu9n5mHAcZqxf3WrJMu8X1fQ7fb4SkxrYIqj0/ciWtIwszUbFthpNzeeBHuxvdazWjs= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C X-CR-MTA-TID: 64aa7808 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Sl8uC/syV/zgCzKgTN7doigIbkEsV1GFfqo3B+prEya+Vl8G0fWlmtFgB4woVVEBJZE4ZigrEw6EEfjLl5TrUhxzKu83I2xXq9KSSNtCxminWCejM3ODUNDgqGElclBRg9cguWrcusvbXIn+3v41z5F2TxCWDjo+QrcJgVNyZ9luJUelr6U7XR9ScjJmA1JGEaPEvAKoZIPMWsiDlwcl/HxM6S/8HmSyTLrxhotQXYEixhLCIomQdE7lWIMqkj7QGtUJvv7yWrrtaGyEXzF90JbPB7G1ln233CHDa0c6le9I+wh1qABLC8Kf1iXvzeG3eDReGTlk5hPFW8zoTV3BtQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=185Qz9TKNGSasx82Cv1ifwrXG32QQ26gxGfE9bmFfNI=; b=Zv97muWSK5hSjdTdpm3LDHBOo46XxIFEKSgjiTLA52gh5YfRRydclPhg751esWrPZgyyXoTvkQVRM8JKm/qWO2OAJ6r1TVQUeFcq6VLNvJFj681Mljsbk4Mcp0vXTunXCxx2ONu9xy04a+bS0ETy8QOMVyId1wouEEcB5FfosmM/YuZDjnigGIQ4kXFzkJSKoTr4T89DNbFY5bsiXVVKTIj9IHW0o2B6ug8hkTBKvmzyldozulm1Jw9ZkBz7Osi6xdw62Omv0gHF4JQM7/j4D/UpuNuji1fAlJ/B+3PzX163O5lG5WyJwFOk/E1P/IVPtpFkSNtsU/No2spj3aDIQA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=185Qz9TKNGSasx82Cv1ifwrXG32QQ26gxGfE9bmFfNI=; b=3crH89OC42iSOhzduuNcnlizmnpbPwWLDwvIq/oGF7p/4oy70UET5AO9g1ZUpP0L4U0x+ucr1g82y8GrJCeAJHysdDkXz8t3+DilkHUGNu9n5mHAcZqxf3WrJMu8X1fQ7fb4SkxrYIqj0/ciWtIwszUbFthpNzeeBHuxvdazWjs= From: Henry Wang To: Jan Beulich CC: Andrew Cooper , Wei Liu , =?utf-8?B?Um9nZXIgUGF1IE1vbm7DqQ==?= , "xen-devel@lists.xenproject.org" Subject: RE: [PATCH v2 10/10] x86emul: AVX512-FP16 testing Thread-Topic: [PATCH v2 10/10] x86emul: AVX512-FP16 testing Thread-Index: AQHZZj0oGedpV97oKUGQjzlrrKT8eq98kQ+AgAAIv1A= Date: Mon, 5 Jun 2023 13:43:33 +0000 Message-ID: References: <8cbbab55-d670-5632-30ee-3e8ca352f048@suse.com> In-Reply-To: Accept-Language: zh-CN, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ts-tracking-id: B6B7ABE1D040164BA69B01FC8C8A4F7F.0 x-checkrecipientchecked: true Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-traffictypediagnostic: AS8PR08MB7991:EE_|AS2PR08MB9024:EE_|DBAEUR03FT005:EE_|GV2PR08MB9880:EE_ X-MS-Office365-Filtering-Correlation-Id: 36b99d38-2c66-48bf-4616-08db65cae0e2 x-checkrecipientrouted: true nodisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: tagNP7Ai8cCI+qwodnwbKLierE6q+4rU4exc5Aatx8rf774Bngt73sz/Vf3Y+4/NqB4Lg44wQCdIXYWqfETgTkkkDicrilkr5muyAH69qdWOCHLVlHyxSD4x6qwCio6I7gSTgTob9w9OmyB9EVQ/2ZGshUuwFnivBIv9XjgVvYzKkzKdGnSKGW7khDM56b5JWWrCoU4EyeDZhaUU3hSftDJFYlWThhjS5o3r4fEPTFQyUvH41wWexCv+ZFkU5jEWtjHy1N+QfrSmbhWWJi9vOya+QB5FZQL4wjBHlcwxFnuqWF+pa5doofj6kHhb8r9OJzs5y0J0u5l/Iv9e/S9uV1Zu+GaMXTzEqTzFH/E/dHxy0j6cEd66lM5ppJxGI20XAgRS3m+GiV2R94yHipe1fZzSUgYLVy4fdY0fda/cAnzMOXfkSc8ZeysG3Kna9zfC5+yaGNQvQh1U9UQqksAvsCjGBnIRejC8Zcgfvf1cQWuR/GmpHFaMRfmGyfLqRaiFM3d85Jh9UY6dcXI/FZjbn9uuzMEyhkHscVJiPkQsZAGrGRWdnrSVgHk2yolEx4lk8NwTCSVfirxhGqAbACavCrshbuNeo5G8GTCCSnr8P3Q= X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB7991.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(136003)(376002)(396003)(366004)(39860400002)(346002)(451199021)(38070700005)(2906002)(4001150100001)(86362001)(33656002)(5660300002)(52536014)(55016003)(83380400001)(71200400001)(7696005)(186003)(26005)(6506007)(53546011)(9686003)(478600001)(54906003)(76116006)(66446008)(6916009)(122000001)(316002)(38100700002)(66476007)(64756008)(4326008)(66946007)(66556008)(41300700001)(8936002)(8676002);DIR:OUT;SFP:1101; Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS2PR08MB9024 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: DBAEUR03FT005.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: 5b0ddd49-867a-48d3-120f-08db65cadaf5 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: fmS9QuGdVdJ8DRuz6Vqnm9VbWdPaiW1b/gBZYMjXiEE/deooE1BqDiXwd+1QNW2sj4PRhQTyEhJVwDVflnvxFu7CIeseJbWGAqNFOl1GTf1LbQRY1ppkiIUVoLZJ2eeGC6TPioffdzvXSX/3XhNGF7wi1VLGE4yzOlcOJ1JM8aghm+lHmI1yRmaZWidZNhkh0/qnTLbth8LYVEcJ9KzSKl6dUXPHwAOqr1gH4BBT3oaPc62qHW6naFvuEG43u/hZ0j4d00yczJULBBL1vf4mXsypeVHAreTG6mQr88GDPPeRBeVC26rE4xNgafLtBcb8OBDSz1WyEy8LbqBpj1xpBtTQyzGGu6WPO7ULJ+epsJ7HXWrOdqKdMjJv8lGf0fgNpoFtBM8TWzYPEkTEeaOo0jirPESjGPue6W8r9zM25Oemv125+nVVyrJJKU2LOrWxG4uoRomk6/vzR56xXoD8WAQbmjgN5bEs9q5CF9DigzF2fhQyrLu2R6uLdHL8a19YaIfGo2kveI58o8kkIZp0rhgvcFHcugrz43C8M7u+mNjNl1VWg0EAUVgr6qL38xNLMv/wgPRi0WyZ+GuG6viLS9IbcPlpax2AClD7KhM77lqg20h+9Jct2lExBvoSjezy3NUTYjca8JTf9LcZwXC0pjB4WCveU26IsGvhcDKy+HNF+Lgzz2PLBlG4+OaL7MLjCzKdzzLLVVo4ewCdPZaQb7lSz4mC0tR0QURvA64hUWE= X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230028)(4636009)(136003)(376002)(39860400002)(346002)(396003)(451199021)(40470700004)(46966006)(36840700001)(40460700003)(6506007)(26005)(53546011)(9686003)(36860700001)(81166007)(47076005)(83380400001)(336012)(33656002)(86362001)(82310400005)(356005)(82740400003)(186003)(55016003)(40480700001)(54906003)(5660300002)(52536014)(2906002)(478600001)(4001150100001)(316002)(41300700001)(4326008)(70206006)(70586007)(8936002)(8676002)(6862004)(7696005);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Jun 2023 13:43:43.3625 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 36b99d38-2c66-48bf-4616-08db65cae0e2 X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: DBAEUR03FT005.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: GV2PR08MB9880 SGkgSmFuLA0KDQo+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+IFN1YmplY3Q6IFJlOiBb UEFUQ0ggdjIgMTAvMTBdIHg4NmVtdWw6IEFWWDUxMi1GUDE2IHRlc3RpbmcNCj4gDQo+IEhlbnJ5 LA0KPiANCj4gT24gMDMuMDQuMjAyMyAxNzowMCwgSmFuIEJldWxpY2ggd3JvdGU6DQo+ID4gTmFt aW5nIG9mIHNvbWUgb2YgdGhlIGJ1aWx0aW5zIGlzbid0IGZ1bGx5IGNvbnNpc3RlbnQgd2l0aCB0 aGF0IG9mIHByZS0NCj4gPiBleGlzdGluZyBvbmVzLCBzbyB0aGVyZSdzIGEgbmVlZCBmb3IgYSBu ZXcgQlIyKCkgd3JhcHBlciBtYWNyby4NCj4gPg0KPiA+IFdpdGggdGhlIHRlc3RzIHByb3ZpZGlu ZyBzb21lIHByb29mIG9mIHByb3BlciBmdW5jdGlvbmluZyBvZiB0aGUNCj4gPiBlbXVsYXRvciBj b2RlIGFsc28gZW5hYmxlIHVzZSBvZiB0aGUgZmVhdHVyZSBieSBndWVzdHMsIGFzIHRoZXJlJ3Mg bm8NCj4gPiBvdGhlciBpbmZyYXN0cnVjdHVyZSBpbnZvbHZlZCBpbiBlbmFibGluZyB0aGlzIElT QSBleHRlbnNpb24uDQo+ID4NCj4gPiBTaWduZWQtb2ZmLWJ5OiBKYW4gQmV1bGljaCA8amJldWxp Y2hAc3VzZS5jb20+DQo+ID4gLS0tDQo+ID4gdjI6IEFkZCBDSEFOR0VMT0cubWQgZW50cnkuDQo+ IA0KPiBJIG5vdGljZSBJIGZvcmdvdCB0byBDYyB5b3Ugb24gdGhpcyBzdWJtaXNzaW9uLCB3aXRo IHNhaWQgYWRkaXRpb24uDQo+IE1heSBJIGFzayBmb3IgeW91ciBhY2sgKG9yIG90aGVyd2lzZSks IHBsZWFzZT8NCg0KVGhhbmtzIGZvciBsZXR0aW5nIG1lIGtub3cgdGhpcyAoYW5kIGFsc28gcmVt ZW1iZXJpbmcgdGhlIGNoYW5nZWxvZw0KZW50cnkpISBNeSBzdWdnZXN0aW9uIHdvdWxkIGJlIG1h a2luZyB0aGUgZW50cnkgbG9vayBsaWtlIGEgY29tcGxldGUNCnNlbnRlbmNlIGluc3RlYWQgb2Yg dGhlIGN1cnJlbnQgZm9ybS4NCg0KQnV0IEkgYWxzbyB1bmRlcnN0YW5kIHRoaXMgaXMgcXVpdGUg bml0cGlja2luZyBzbyBJIHdpbGwgbGV0IHlvdSBkZWNpZGUsDQplaXRoZXIgbWFraW5nIGl0IG1v cmUgcmVhZGFibGUgb3Iga2VlcGluZyBpdHMgY3VycmVudCBmb3JtIGlzIGZpbmUgd2l0aA0KbWUs IGFuZCBpZiB5b3Ugd2FudCB0byBpbXByb3ZlIHRoZSB3b3JkaW5nLCB5b3UgY2FuIGRvIGl0IG9u IGNvbW1pdC4NCg0KU286DQpBY2tlZC1ieTogSGVucnkgV2FuZyA8SGVucnkuV2FuZ0Bhcm0uY29t PiAjIENIQU5HRUxPRw0KDQpLaW5kIHJlZ2FyZHMsDQpIZW5yeQ0KDQo+IA0KPiBUaGFua3MsIEph bg0KPiANCj4gPiAtLS0gYS9DSEFOR0VMT0cubWQNCj4gPiArKysgYi9DSEFOR0VMT0cubWQNCj4g PiBAQCAtMTQsNiArMTQsNyBAQCBUaGUgZm9ybWF0IGlzIGJhc2VkIG9uIFtLZWVwIGEgQ2hhbmdl bG9nDQo+ID4gICAgIC0gQnVzLWxvY2sgZGV0ZWN0aW9uLCB1c2VkIGJ5IFhlbiB0byBtaXRpZ2F0 ZSAoYnkgcmF0ZS1saW1pdGluZykgdGhlIHN5c3RlbQ0KPiA+ICAgICAgIHdpZGUgaW1wYWN0IG9m IGEgZ3Vlc3QgbWlzdXNpbmcgYXRvbWljIGluc3RydWN0aW9ucy4NCj4gPiAgIC0geGwvbGlieGwg Y2FuIGN1c3RvbWl6ZSBTTUJJT1Mgc3RyaW5ncyBmb3IgSFZNIGd1ZXN0cy4NCj4gPiArIC0geDg2 IEFWWDUxMi1GUDE2DQo+ID4NCj4gPiAgIyMNCj4gWzQuMTcuMF0oaHR0cHM6Ly94ZW5iaXRzLnhl bi5vcmcvZ2l0d2ViLz9wPXhlbi5naXQ7YT1zaG9ydGxvZztoPVJFTEVBU0UtDQo+IDQuMTcuMCkg LSAyMDIyLTEyLTEyDQo+ID4NCj4gPlsuLi5dDQoNCg== From xen-devel-bounces@lists.xenproject.org Mon Jun 05 14:08:14 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 05 Jun 2023 14:08:14 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543733.848946 (Exim 4.92) (envelope-from ) id 1q6AsI-0000ok-V8; Mon, 05 Jun 2023 14:07:58 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543733.848946; Mon, 05 Jun 2023 14:07:58 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6AsI-0000od-S1; Mon, 05 Jun 2023 14:07:58 +0000 Received: by outflank-mailman (input) for mailman id 543733; Mon, 05 Jun 2023 14:07:58 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6AsH-0000oX-Ux for xen-devel@lists.xenproject.org; Mon, 05 Jun 2023 14:07:58 +0000 Received: from mga12.intel.com (mga12.intel.com [192.55.52.136]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 5c14ed8c-03aa-11ee-8611-37d641c3527e; Mon, 05 Jun 2023 16:07:53 +0200 (CEST) Received: from orsmga005.jf.intel.com ([10.7.209.41]) by fmsmga106.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 05 Jun 2023 07:04:20 -0700 Received: from smile.fi.intel.com ([10.237.72.54]) by orsmga005.jf.intel.com with ESMTP; 05 Jun 2023 07:04:09 -0700 Received: from andy by smile.fi.intel.com with local (Exim 4.96) (envelope-from ) id 1q6AoX-001O9h-1D; Mon, 05 Jun 2023 17:04:05 +0300 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 5c14ed8c-03aa-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1685974074; x=1717510074; h=date:from:to:cc:subject:message-id:references: mime-version:in-reply-to; bh=zjA9XYetqLmj2er7YOpXmYqZcR8z8Fh+g5Flt9xdytk=; b=V1qpbe5GCXcEd+WXHjE2Ec4+yeFaghq8tJf9dtaC3jkyU3cCzaltWhl/ 0yBrMSrDL6PrLWPfMkwu8ZQIJlzqliPZE5xKanBO+8dzTb8l7sM4c4FdX 2P1sbRmKVO54MnkxedJW4W/mSeBPHkKvg3RSv1pCF+reZqNb8BhkjOvMT FOsFncTrSHbTEmQrs79O7ZFmG4OMncKlgBIRFpp3CrFSOC6wEYtYSlDYP nwG871Y1qA7zQorEVJvOE7xdEhFlaKqY0DXjK/GInYwtgPxHoNjZDFw0V s2CHloMK1bWA8cvcvXBOh/F0Wb4hg46X5NHVJRNj0VQlnmDjZPhpB77Gv A==; X-IronPort-AV: E=McAfee;i="6600,9927,10732"; a="335993907" X-IronPort-AV: E=Sophos;i="6.00,217,1681196400"; d="scan'208";a="335993907" X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10732"; a="882915325" X-IronPort-AV: E=Sophos;i="6.00,217,1681196400"; d="scan'208";a="882915325" Date: Mon, 5 Jun 2023 17:04:05 +0300 From: Andy Shevchenko To: Bjorn Helgaas Cc: Jonas Gorski , Krzysztof =?utf-8?Q?Wilczy=C5=84ski?= , linux-pci@vger.kernel.org, linux-kernel@vger.kernel.org, =?iso-8859-1?Q?Micka=EBl_Sala=FCn?= , Rich Felker , linux-sh@vger.kernel.org, Dominik Brodowski , Andrew Lunn , sparclinux@vger.kernel.org, Stefano Stabellini , Yoshinori Sato , Gregory Clement , "Rafael J. Wysocki" , Russell King , linux-acpi@vger.kernel.org, Miguel Ojeda , xen-devel@lists.xenproject.org, Matt Turner , Anatolij Gustschin , Sebastian Hesselbarth , Arnd Bergmann , Niklas Schnelle , Richard Henderson , Nicholas Piggin , Ivan Kokshaysky , John Paul Adrian Glaubitz , Bjorn Helgaas , Mika Westerberg , linux-arm-kernel@lists.infradead.org, Juergen Gross , Thomas Bogendoerfer , Philippe =?iso-8859-1?Q?Mathieu-Daud=E9?= , linuxppc-dev@lists.ozlabs.org, Randy Dunlap , linux-mips@vger.kernel.org, Oleksandr Tyshchenko , linux-alpha@vger.kernel.org, Pali =?iso-8859-1?Q?Roh=E1r?= , "David S. Miller" , "Maciej W. Rozycki" Subject: Re: [PATCH v8 0/7] Add pci_dev_for_each_resource() helper and update users Message-ID: References: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: Organization: Intel Finland Oy - BIC 0357606-4 - Westendinkatu 7, 02160 Espoo On Wed, May 31, 2023 at 04:30:28PM -0500, Bjorn Helgaas wrote: > On Wed, May 31, 2023 at 08:48:35PM +0200, Jonas Gorski wrote: ... > > Looking at the code I understand where coverity is coming from: > > > > #define __pci_dev_for_each_res0(dev, res, ...) \ > > for (unsigned int __b = 0; \ > > res = pci_resource_n(dev, __b), __b < PCI_NUM_RESOURCES; \ > > __b++) > > > > res will be assigned before __b is checked for being less than > > PCI_NUM_RESOURCES, making it point to behind the array at the end of > > the last loop iteration. > > > > Rewriting the test expression as > > > > __b < PCI_NUM_RESOURCES && (res = pci_resource_n(dev, __b)); > > > > should avoid the (coverity) warning by making use of lazy evaluation. > > > > It probably makes the code slightly less performant as res will now be > > checked for being not NULL (which will always be true), but I doubt it > > will be significant (or in any hot paths). > > Thanks a lot for looking into this! I think you're right, and I think > the rewritten expression is more logical as well. Do you want to post > a patch for it? Gimme some time, I was on a long leave and now it's a pile to handle. -- With Best Regards, Andy Shevchenko From xen-devel-bounces@lists.xenproject.org Mon Jun 05 14:43:55 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 05 Jun 2023 14:43:55 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543740.848966 (Exim 4.92) (envelope-from ) id 1q6BQs-0005Sb-Ub; Mon, 05 Jun 2023 14:43:42 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543740.848966; Mon, 05 Jun 2023 14:43:42 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6BQs-0005SU-RX; Mon, 05 Jun 2023 14:43:42 +0000 Received: by outflank-mailman (input) for mailman id 543740; Mon, 05 Jun 2023 14:43:41 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6BQr-0005DU-4z for xen-devel@lists.xenproject.org; Mon, 05 Jun 2023 14:43:41 +0000 Received: from esa3.hc3370-68.iphmx.com (esa3.hc3370-68.iphmx.com [216.71.145.155]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 5bddc795-03af-11ee-8611-37d641c3527e; Mon, 05 Jun 2023 16:43:39 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 5bddc795-03af-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1685976219; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=jGBoLlQik/DdUsmblsNJ1iLT3fecu+Jt0ccxIilExLg=; b=JXSp2pvlJIgbLamxHtaENRUvs+Y9qnptAa/IyubpEgzF0LpEaGt3LfUG WpUpIc92BBWHOONW+kJPn7zILfiXss1BJWPlaqvJksoASDisSlOjlEL5o pAJZnva4lY4WAUTtpKoyKlg4A7ZnSME+qs9Vjd9WVd5kEe1EmJTIMNHH6 Q=; Authentication-Results: esa3.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none X-SBRS: 4.0 X-MesageID: 111652720 X-Ironport-Server: esa3.hc3370-68.iphmx.com X-Remote-IP: 162.221.156.123 X-Policy: $RELAYED IronPort-Data: A9a23:6ihxxKP22eyT3jjvrR1Nl8FynXyQoLVcMsEvi/4bfWQNrUoggT0Cm 2BLD26OaPrfMDGmc9h0b9638kMEsZWGzN5nHgto+SlhQUwRpJueD7x1DKtS0wC6dZSfER09v 63yTvGacajYm1eF/k/F3oDJ9CU6jufQAOKnUoYoAwgpLSd8UiAtlBl/rOAwh49skLCRDhiE/ Nj/uKUzAnf8s9JPGjxSs/rrRC9H5qyo42tG5gBmPJingXeF/5UrJMNHTU2OByOQrrl8RoaSW +vFxbelyWLVlz9F5gSNy+uTnuUiG9Y+DCDW4pZkc/HKbitq/0Te5p0TJvsEAXq7vh3S9zxHJ HehgrTrIeshFvWkdO3wyHC0GQkmVUFN0OevzXRSLaV/ZqAJGpfh66wGMa04AWEX0uxzXGBy+ 7tbEQ8EUyysosuI5eKcSsA506zPLOGzVG8eknRpzDWfBvc6W5HTBa7N4Le03h9p2JoIR6yHI ZNEN3w2Nk+ojx5nYz/7DLoXmuuyi2a5WDpfsF+P/oI84nTJzRw327/oWDbQUoXTHJsIxBnC/ goq+Uz+WU5GMdO58QGDsWK3gN6S2i/cXrArQejQGvlC3wTImz175ActfUu2p7y1h1CzX/pbK lcI4Ww+oK4q7kupQ9LhGRqirxaspQUAUtBdF+k77gClyafO5QudQG8eQVZpasEitcIwbSwn0 BmOhdyBLQJotLqZWHeM7IC+pDm5OTUWBWIabCpCRgwAi/HprZsvlBvJQpBmGbSsk9zuMTjqx naBqy1Wr7cei9VNyKS4+VnBjz+2jpzISAcv4UPQRG3N0+9iTNf7PcryswGdtKseat/DFTFto UToheCU6L0PMZ/K1xWySdgxM5SA2dPVFz311AsH84Yayxyh/HuqfIZ16T54JVt0PstsRQIFc HM/qisKusYNYSLCgbtfJtvoVp90lfSI+cHNDKi8UzZYXnRmmOZrFglKbFXY4W3imVNEfUoXa cbCKpbE4Zr35M1aINuKqwU1i+RDKsMWnzm7qXXHI/OPj9KjiIa9E+ttDbd3RrlRAFm4iAvU6 c1DEMCB1g9SVubzCgGOr95OfAhRcChnW8+owyCySgJkClA/cFzN9teLme9xE2Cbt/o9ehj0E oGVBRYDlQuXaYzvIgSWcHFzAI4Drr4mxU/XyRcEZA7ys1B6ONbH0UvqX8dvFVXR3LA5nKEco jhsU5noP8mjvRyep2xEPcil8N07HPlp7CrXVxeYjPEEV8YIb2T0FhXMJ2MDKAFm4vKLiPYD IronPort-HdrOrdr: A9a23:MmAZR6CyPNHqgF/lHel855DYdb4zR+YMi2TDsHoBMiC9E/bo7/ xG+c5xvyMc5wx9ZJheo7C90cW7Lk80jKQFg7X5Xo3SJTUO2lHIEGg41/qG/9SIIUSXygc378 ldmsZFZOEYB2IK7vrS0U2ZFMw8yN6M/MmT9IHjJwoBd3AMV0ho1XYCNi+rVnd7QxQDOpowfa DsgvZ6mw== X-Talos-CUID: 9a23:f09GgG7kEr0wUFQ3Mdss/kpJG/wrNT7k837tH2CdIFhMGJqVYArF X-Talos-MUID: =?us-ascii?q?9a23=3Ant0oXgyATgB5ptY9uSPA5s5WgG+aqKP1VxwInrM?= =?us-ascii?q?+gM/HJTd2CmragBOxcLZyfw=3D=3D?= X-IronPort-AV: E=Sophos;i="6.00,217,1681185600"; d="scan'208";a="111652720" From: Andrew Cooper To: Xen-devel CC: Andrew Cooper , Stefano Stabellini , Julien Grall , Volodymyr Babchuk , Bertrand Marquis , Jens Wiklander Subject: [PATCH 2/2] arm: Boilerpate arch_domain_teardown() Date: Mon, 5 Jun 2023 15:43:31 +0100 Message-ID: <20230605144331.1819452-3-andrew.cooper3@citrix.com> X-Mailer: git-send-email 2.30.2 In-Reply-To: <20230605144331.1819452-1-andrew.cooper3@citrix.com> References: <20230605144331.1819452-1-andrew.cooper3@citrix.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain XXX to be filled in with TEE teardown. Signed-off-by: Andrew Cooper --- CC: Stefano Stabellini CC: Julien Grall CC: Volodymyr Babchuk CC: Bertrand Marquis CC: Jens Wiklander Jens: In the same was as the previous patch in the common path, you want to add a PROG_tee(?) here, and rearrange the right function(s). --- xen/arch/arm/domain.c | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/xen/arch/arm/domain.c b/xen/arch/arm/domain.c index b3981d70a442..b00d0e4f30b7 100644 --- a/xen/arch/arm/domain.c +++ b/xen/arch/arm/domain.c @@ -752,6 +752,33 @@ int arch_domain_create(struct domain *d, int arch_domain_teardown(struct domain *d) { + BUG_ON(!d->is_dying); + + /* See domain_teardown() for an explanation of all of this magic. */ + switch ( d->teardown.arch_val ) + { +#define PROGRESS(x) \ + d->teardown.arch_val = PROG_ ## x; \ + fallthrough; \ + case PROG_ ## x + + enum { + PROG_none, + PROG_done, + }; + + case PROG_none: + BUILD_BUG_ON(PROG_none != 0); + + PROGRESS(done): + break; + +#undef PROGRESS + + default: + BUG(); + } + return 0; } -- 2.30.2 From xen-devel-bounces@lists.xenproject.org Mon Jun 05 14:43:55 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 05 Jun 2023 14:43:55 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543741.848976 (Exim 4.92) (envelope-from ) id 1q6BQu-0005hd-65; Mon, 05 Jun 2023 14:43:44 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543741.848976; Mon, 05 Jun 2023 14:43:44 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6BQu-0005hW-2k; Mon, 05 Jun 2023 14:43:44 +0000 Received: by outflank-mailman (input) for mailman id 543741; Mon, 05 Jun 2023 14:43:42 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6BQs-0005DU-Ft for xen-devel@lists.xenproject.org; Mon, 05 Jun 2023 14:43:42 +0000 Received: from esa3.hc3370-68.iphmx.com (esa3.hc3370-68.iphmx.com [216.71.145.155]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 5bf5652d-03af-11ee-8611-37d641c3527e; Mon, 05 Jun 2023 16:43:40 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 5bf5652d-03af-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1685976220; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=TqlnqsCULSQSOWgQEboaiyXvqCorlsa/KM/6ZxmZms0=; b=IxzM6j9UCUbQ5G6EA/pf3lpLcdpiu8whnoUNUXQavFQIrMHU2MiYbOrc 2CHDmERt3cACWAyQY7n7a/i48TsgkbSrqMHpHPEDLm0kuq4fAW11ghrFu jH9kYs1d5wpQOxPOlOa5JsKC9daPIGRCzPBBbfDvKNB9fi1UX94k2+xVc E=; Authentication-Results: esa3.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none X-SBRS: 4.0 X-MesageID: 111652724 X-Ironport-Server: esa3.hc3370-68.iphmx.com X-Remote-IP: 162.221.156.123 X-Policy: $RELAYED IronPort-Data: A9a23:bq1a6aBlqIyCPxVW/6Djw5YqxClBgxIJ4kV8jS/XYbTApD12hWNTx msdWTyAPP6LazOnKY1wPN7k9xxVu5fUx9JiQQY4rX1jcSlH+JHPbTi7wuUcHAvJd5GeExg3h yk6QoOdRCzhZiaE/n9BCpC48T8nk/nOHuGmYAL9EngZbRd+Tys8gg5Ulec8g4p56fC0GArIs t7pyyHlEAbNNwVcbCRMs8pvlDs15K6p4G1A4gRnDRx2lAS2e0c9Xcp3yZ6ZdxMUcqEMdsamS uDKyq2O/2+x13/B3fv8z94X2mVTKlLjFVDmZkh+AsBOsTAbzsAG6Y4pNeJ0VKtio27hc+ada jl6ncfYpQ8BZsUgkQmGOvVSO3kW0aZuoNcrLZUj2CA6IoKvn3bEmp1T4E8K0YIw8OIqAF1As r8hFzkwUj+mrtyTkJW7Y7w57igjBJGD0II3v3hhyXfSDOo8QICFSKLPjTNa9G5u3IYUR6+YP pdHL2M1N3wsYDUWUrsTILs4kP2lmT/UdDpApUjOjaE2/3LS3Ep6172F3N/9I4XTG5gPwRzEz o7A10a+GzI8KdCe8CaczEuzt7DNnSXfRKtHQdVU8dY12QbOlwT/EiY+RVa95PW0lEO6c9ZeM FAPvDojq7Ao806mRcW7WAe3yFamlBMBX9tbE8Uh9RqAjKHT5m6xHXMYRzRMbNgnss4eRjEw0 FKN2dTzClRHr7m9WX+bsLCOoluaOzURLGIETT8JS00C+daLiL80ihXDX9NyCpmfh9f+GSzz6 z2SpS14jLIW5eYB2r+n51nBj3Spr4LQUw8uzgzNWySu6QYRTIyoYZfu9lnY6f9GIIuDZl2Au nEenI6Z9u9mMH2WvHXTGqNXRujvvqvbdmSG2jaDAqXN6Ryn/yOiQY4XowhBLXpVHeMtRxq5R 0/67FY5CIBoAFOmaqp+YoSUAssszLT9GdmNas04fuaicbAqKlbZoXgGiVq4mjm0zRNyyf1X1 YKzK57EMJoMNUhwINNarc852KRj+C0xzHi7qXvTn0X+iur2iJJ4pN443LqyggIRtvjsTOb9q Yw32y62J/J3DoXDjtH/q9J7ELzzBSFT6WrKg8JWbPWfBQFtBXssDfTcqZt4Jdw4zvwOy7eUo C7jMqO99LYYrSeeQThml1g5MO+/NXqBhSxT0dMQ0aaAhCF4PNfHAFY3fJorZ7g3nNGPPtYtJ 8Tpj/6oW6wVIhyeomR1UHUIhNA6HPhdrV7UbnXNjflWV8IIejElDfe9IlO2pHhWUnvu3Sb8y pX5vj7mrVM4b1wKJK7rhDiHljtdYVB1dDpOYnb1 IronPort-HdrOrdr: A9a23:tIaBOqieQGqNgu18zrpnzRCRKXBQXgoji2hC6mlwRA09TyX+rb HUoB17726NtN91YhpLpTnuAsS9qAznlaKdjbN/AV7aZniFhILKFvAa0WKB+Vzd8nbFh4tgPM 5bGsBD4bbLY2SS4/yX3OCzKadC/PC3tICun/rXyH1gJDsaDZ2JkmpCe2Gm+0RNNXN7LKt8Lp aa+455pzLIQwVyUviG X-Talos-CUID: 9a23:/MXP9Wwm+0vjbTbL9VFqBgUeHp0kTnOaj07vKnKEJkNAdpjFbl+5rfY= X-Talos-MUID: 9a23:3fdArwlZQuE8i5UbS79ddnpAc95LxbmiCXkRiKs/pPjbNyx2Hyu02WE= X-IronPort-AV: E=Sophos;i="6.00,217,1681185600"; d="scan'208";a="111652724" From: Andrew Cooper To: Xen-devel CC: Andrew Cooper , Jan Beulich , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Wei Liu , Stefano Stabellini , Julien Grall , Volodymyr Babchuk , Bertrand Marquis , Jens Wiklander Subject: [PATCH 1/2] x86: Introduce arch_domain_teardown() Date: Mon, 5 Jun 2023 15:43:30 +0100 Message-ID: <20230605144331.1819452-2-andrew.cooper3@citrix.com> X-Mailer: git-send-email 2.30.2 In-Reply-To: <20230605144331.1819452-1-andrew.cooper3@citrix.com> References: <20230605144331.1819452-1-andrew.cooper3@citrix.com> MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit Plumb it into domain_teardown(). Provide arch_val in the teardown continuation information for use by arch_domain_teardown(). No practical change. Signed-off-by: Andrew Cooper --- CC: Jan Beulich CC: Roger Pau Monné CC: Wei Liu CC: Stefano Stabellini CC: Julien Grall CC: Volodymyr Babchuk CC: Bertrand Marquis CC: Jens Wiklander --- xen/arch/arm/domain.c | 5 +++++ xen/arch/x86/domain.c | 5 +++++ xen/common/domain.c | 6 ++++++ xen/include/xen/domain.h | 1 + xen/include/xen/sched.h | 1 + 5 files changed, 18 insertions(+) diff --git a/xen/arch/arm/domain.c b/xen/arch/arm/domain.c index d8ef6501ff8e..b3981d70a442 100644 --- a/xen/arch/arm/domain.c +++ b/xen/arch/arm/domain.c @@ -750,6 +750,11 @@ int arch_domain_create(struct domain *d, return rc; } +int arch_domain_teardown(struct domain *d) +{ + return 0; +} + void arch_domain_destroy(struct domain *d) { /* IOMMU page table is shared with P2M, always call diff --git a/xen/arch/x86/domain.c b/xen/arch/x86/domain.c index 39c215316546..5f66c2ae33d7 100644 --- a/xen/arch/x86/domain.c +++ b/xen/arch/x86/domain.c @@ -888,6 +888,11 @@ int arch_domain_create(struct domain *d, return rc; } +int arch_domain_teardown(struct domain *d) +{ + return 0; +} + void arch_domain_destroy(struct domain *d) { if ( is_hvm_domain(d) ) diff --git a/xen/common/domain.c b/xen/common/domain.c index 6a440590fe2a..b0d850e3595b 100644 --- a/xen/common/domain.c +++ b/xen/common/domain.c @@ -416,6 +416,7 @@ static int domain_teardown(struct domain *d) PROG_none, PROG_gnttab_mappings, PROG_vcpu_teardown, + PROG_arch_teardown, PROG_done, }; @@ -436,6 +437,11 @@ static int domain_teardown(struct domain *d) return rc; } + PROGRESS(arch_teardown): + rc = arch_domain_teardown(d); + if ( rc ) + return rc; + PROGRESS(done): break; diff --git a/xen/include/xen/domain.h b/xen/include/xen/domain.h index 26f9c4f6dd5b..c3348c90748f 100644 --- a/xen/include/xen/domain.h +++ b/xen/include/xen/domain.h @@ -80,6 +80,7 @@ int arch_domain_create(struct domain *d, struct xen_domctl_createdomain *config, unsigned int flags); +int arch_domain_teardown(struct domain *d); void arch_domain_destroy(struct domain *d); void arch_domain_shutdown(struct domain *d); diff --git a/xen/include/xen/sched.h b/xen/include/xen/sched.h index 85242a73d374..854f3e32c00e 100644 --- a/xen/include/xen/sched.h +++ b/xen/include/xen/sched.h @@ -589,6 +589,7 @@ struct domain */ struct { unsigned int val; + unsigned int arch_val; struct vcpu *vcpu; } teardown; -- 2.30.2 From xen-devel-bounces@lists.xenproject.org Mon Jun 05 14:43:55 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 05 Jun 2023 14:43:55 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543739.848956 (Exim 4.92) (envelope-from ) id 1q6BQq-0005Dh-O7; Mon, 05 Jun 2023 14:43:40 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543739.848956; Mon, 05 Jun 2023 14:43:40 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6BQq-0005Da-KI; Mon, 05 Jun 2023 14:43:40 +0000 Received: by outflank-mailman (input) for mailman id 543739; Mon, 05 Jun 2023 14:43:39 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6BQp-0005DU-Ez for xen-devel@lists.xenproject.org; Mon, 05 Jun 2023 14:43:39 +0000 Received: from esa3.hc3370-68.iphmx.com (esa3.hc3370-68.iphmx.com [216.71.145.155]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 5953d0ae-03af-11ee-8611-37d641c3527e; Mon, 05 Jun 2023 16:43:36 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 5953d0ae-03af-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1685976216; h=from:to:cc:subject:date:message-id:mime-version: content-transfer-encoding; bh=9S+JHMvNKOnGSpHMbGYSsipboUzoVEUR7YEn5J61QU8=; b=h7/+r4HVv0L7IngYrVq79CHN9T5yphtiMCZLCsMv5AC6Tp9UNpedqh70 FYyJs+ven1YToXJhj6zkgxN1sSmacTLfdo3B1rpScyN4LCqBZtFhg00bd H5tyro+3CdnRj89I7RahUPtUk6HAx0vO5+qcQi539pze5Dcf3GXvA6LD/ 4=; Authentication-Results: esa3.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none X-SBRS: 4.0 X-MesageID: 111652719 X-Ironport-Server: esa3.hc3370-68.iphmx.com X-Remote-IP: 162.221.156.123 X-Policy: $RELAYED IronPort-Data: A9a23:4rAmnaBZJC4UchVW/6Djw5YqxClBgxIJ4kV8jS/XYbTApDh00D0Dz zcaXDrVM/7eNmTzfd0nOtzloE8D7cDUytBjQQY4rX1jcSlH+JHPbTi7wuUcHAvJd5GeExg3h yk6QoOdRCzhZiaE/n9BCpC48T8nk/nOHuGmYAL9EngZbRd+Tys8gg5Ulec8g4p56fC0GArIs t7pyyHlEAbNNwVcbCRMs8pvlDs15K6p4G1A4gRnDRx2lAS2e0c9Xcp3yZ6ZdxMUcqEMdsamS uDKyq2O/2+x13/B3fv8z94X2mVTKlLjFVDmZkh+AsBOsTAbzsAG6Y4pNeJ0VKtio27hc+ada jl6ncfYpQ8BZsUgkQmGOvVSO3kW0aZuoNcrLZUj2CA6IoKvn3bEmp1T4E8K0YIw8OIqAF1As r8hFzkwUj+mrtyTkJW7Y7w57igjBJGD0II3v3hhyXfSDOo8QICFSKLPjTNa9G5u3IYUR6+YP pdHL2M1N3wsYDUWUrsTILs4kP2lmT/UdDpApUjOjaE2/3LS3Ep6172F3N/9I4XTG5gPwR/Jz o7A1zS6Wz8APc2g8ByI2HitwcLBhRy4BatHQdVU8dY12QbOlwT/EiY+RVa95PW0lEO6c9ZeM FAPvDojq7Ao806mRcW7WAe3yFamlBMBX9tbE8Uh9RqAjKHT5m6xHXMYRzRMbNgnss4eRjEw0 FKN2dTzClRHr7m9WX+bsLCOoluaOzURLGIETT8JS00C+daLiL80ihXDX9NyCpmfh9f+GSzz6 z2SpS14jLIW5eYB2r+n51nBj3Spr4LQUw8uzgzNWySu6QYRTIyoYZfu9lnY6f9GIIuDZl2Au nEenI6Z9u9mMH2WvHXTGqNXRujvvqvbdmSG2jaDAqXN6Ryn/yOiQY4XowhBLXpVHeMtRxq5R 0/67FY5CIBoAFOmaqp+YoSUAssszLT9GdmNas04fuaicbAqKlbZoXgGiVq4mjm0zRNyyf1X1 YKzK57EMJoMNUhwINNarc852KRj+C0xzHi7qXvTn0X+iur2iJJ4pN443LqyggIRtvjsTOb9q Yw32y62J/J3DoXDjtH/q9J7ELzzBSFT6WrKg8JWbPWfBQFtBXssDfTcqZt4Jdw4zvwOy7eUo C7jMqO99LYYrSeeQThml1g5MO+/NXqBhSxT0dMQ0aaAhCF4PNfHAFY3fJorZ7g3nNGPPtYtJ 8Tpj/6oW6wVIhyeomR1UHUIhNA6HPhdrV7UbnXNjflWV8IIejElDfe9IlO2pHhWUnvu3Sb8y pX5vj7mrVM4b1wKJK7rhDiHlTtdYVB1dDpOYnb1 IronPort-HdrOrdr: A9a23:n7OecKyQyP5ukJ2QIo+oKrPw/L1zdoMgy1knxilNoHtuA7elfq GV7YwmPHrP41wssR4b9OxoR5PhfZqxz/FICPAqTNWftWrdyRKVxeNZjLcKmAeQfhEWn9Q1vZ uIGJIRNDSfNzRHZMzBkWqFOudl4N6c7aiuj+u29QYKcekWBpsQiDuRAzzraHFedU19CZ0lUK Wd7qN81l6dRUg= X-Talos-CUID: =?us-ascii?q?9a23=3A/blxNWg4obxOMjN4htyxr1UF1jJueHmAzUveZAy?= =?us-ascii?q?BNm9UdJKwYGG1qIRkup87?= X-Talos-MUID: 9a23:LoEDVAZyWW03wOBT53y1qitrJfhRxamEAkFKvJsehIrZHHkl X-IronPort-AV: E=Sophos;i="6.00,217,1681185600"; d="scan'208";a="111652719" From: Andrew Cooper To: Xen-devel CC: Andrew Cooper , Jan Beulich , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Wei Liu , Stefano Stabellini , Julien Grall , Volodymyr Babchuk , Bertrand Marquis , Jens Wiklander Subject: [PATCH 0/2] xen: Arch Teardown Date: Mon, 5 Jun 2023 15:43:29 +0100 Message-ID: <20230605144331.1819452-1-andrew.cooper3@citrix.com> X-Mailer: git-send-email 2.30.2 MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit Sorry this is late... Patch 1 ought to be ready in this form. I'll leave it up to the ARM maintainers as to whether they want to take patch 2 in that form (with TEE in patch 3), or whether to merge the two. Compile tested on all architectures, functionally tested on x86 only. Branch available from: https://xenbits.xen.org/gitweb/?p=people/andrewcoop/xen.git;a=shortlog;h=refs/heads/arch-teardown Full Gitlab CI run in progress: https://gitlab.com/xen-project/people/andyhhp/xen/-/pipelines/889759838 Andrew Cooper (2): x86: Introduce arch_domain_teardown() arm: Boilerpate arch_domain_teardown() xen/arch/arm/domain.c | 32 ++++++++++++++++++++++++++++++++ xen/arch/x86/domain.c | 5 +++++ xen/common/domain.c | 6 ++++++ xen/include/xen/domain.h | 1 + xen/include/xen/sched.h | 1 + 5 files changed, 45 insertions(+) base-commit: b3880c365db89051728e1de6b6889c750cbdd915 -- 2.30.2 From xen-devel-bounces@lists.xenproject.org Mon Jun 05 15:01:53 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 05 Jun 2023 15:01:53 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543754.848986 (Exim 4.92) (envelope-from ) id 1q6Bhy-0000Pv-MR; Mon, 05 Jun 2023 15:01:22 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543754.848986; Mon, 05 Jun 2023 15:01:22 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6Bhy-0000Po-II; Mon, 05 Jun 2023 15:01:22 +0000 Received: by outflank-mailman (input) for mailman id 543754; Mon, 05 Jun 2023 15:01:21 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6Bhx-0000Ph-HX for xen-devel@lists.xenproject.org; Mon, 05 Jun 2023 15:01:21 +0000 Received: from mail-wm1-x32a.google.com (mail-wm1-x32a.google.com [2a00:1450:4864:20::32a]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id d3ebae38-03b1-11ee-b232-6b7b168915f2; Mon, 05 Jun 2023 17:01:19 +0200 (CEST) Received: by mail-wm1-x32a.google.com with SMTP id 5b1f17b1804b1-3f739ec88b2so12426225e9.1 for ; Mon, 05 Jun 2023 08:01:19 -0700 (PDT) Received: from localhost.localdomain (default-46-102-197-194.interdsl.co.uk. [46.102.197.194]) by smtp.gmail.com with ESMTPSA id p25-20020a7bcc99000000b003f4289b18a7sm11103988wma.5.2023.06.05.08.01.18 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 05 Jun 2023 08:01:18 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: d3ebae38-03b1-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cloud.com; s=cloud; t=1685977279; x=1688569279; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=FrKxDRBlDqtk7s2A2/hh/s4Mepj2N5HAw5jEMJdb02g=; b=QdDoglhKDK3nfp8Zu8tam3Z/SAQuM2cQtaFM2eCxJr9rTz6ubElQ46khylBjuDQgWW HKafYA3tdKnYIWID3Hy9brkUvR2TnvWc+7jQ40l+D7Ce7B6Vv2GDcaDvJ1Fu/XW5apSD o92fc6gTYW/XqMnUtjzQ+Xmu9cHQ3Z552GvQg= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1685977279; x=1688569279; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=FrKxDRBlDqtk7s2A2/hh/s4Mepj2N5HAw5jEMJdb02g=; b=e/7fT+vTQeAs3Vp2eFKJUWFm5NN5r0BjlJMLfcHmWG+4VYlZyWa0aQAorS7UrmaTMg 08NEEXVhiy0xPhFLaEmjVuLwV+5vC3xx9OwhUU0RUnQi4nqZFT4zTyRBHqbP2UPFEMgd cGVGetx006AAVkwFNB2Sdv1cGJjM4AVhxe4nwMRaxmvKXdQakBGRPpXbfKp6XAmQ9VeX L1u6LnkGPmczciWZOmXESkV+uJn3+BYOJXc1Mrmoa8fOMgLyNYhr1YpDRNgZ7X4a2nvh bm2jXAEXHpsYhBP8nRS4vCgCkQ5ssp7/2/qUYHokA6znZ6/XABw8tLmspf0kLGVmdsZO 8StQ== X-Gm-Message-State: AC+VfDzIe4JOe7Ae9WN5zPOlWktiI5uaWXcAgTYwzcKHDOpR2dnyDTpC TTdk1MWWTgPnsXyqQpkH17OEj0MGQxvWDTbiWIo= X-Google-Smtp-Source: ACHHUZ5gvY/q0okPR0439j7MEEdakwWCQDE+YWeRsqV0Livcf7sTHGlw8JUPJ8YyrOai23yWJ2pllA== X-Received: by 2002:a1c:e914:0:b0:3f7:30c0:c6a with SMTP id q20-20020a1ce914000000b003f730c00c6amr3817598wmc.25.1685977278848; Mon, 05 Jun 2023 08:01:18 -0700 (PDT) From: Alejandro Vallejo To: Xen-devel Cc: Alejandro Vallejo , Jan Beulich , Andrew Cooper , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Wei Liu Subject: [PATCH] x86/microcode: Add missing unlock in microcode_update_helper() Date: Mon, 5 Jun 2023 16:01:16 +0100 Message-Id: <20230605150116.29911-1-alejandro.vallejo@cloud.com> X-Mailer: git-send-email 2.34.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit microcode_update_helper() may return early while holding cpu_add_remove_lock, hence preventing any writers from taking it again. Leave through the `put` label instead so it's properly released. Signed-off-by: Alejandro Vallejo --- xen/arch/x86/cpu/microcode/core.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/xen/arch/x86/cpu/microcode/core.c b/xen/arch/x86/cpu/microcode/core.c index c1033f3bc2..e65af4b82e 100644 --- a/xen/arch/x86/cpu/microcode/core.c +++ b/xen/arch/x86/cpu/microcode/core.c @@ -599,7 +599,8 @@ static long cf_check microcode_update_helper(void *data) printk(XENLOG_WARNING "CPU%u is expected to lead ucode loading (but got CPU%u)\n", nmi_cpu, cpumask_first(&cpu_online_map)); - return -EPERM; + ret = -EPERM; + goto put; } patch = parse_blob(buffer->buffer, buffer->len); -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 05 15:04:40 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 05 Jun 2023 15:04:40 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543758.848996 (Exim 4.92) (envelope-from ) id 1q6Bl4-00012g-3z; Mon, 05 Jun 2023 15:04:34 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543758.848996; Mon, 05 Jun 2023 15:04:34 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6Bl4-00012Z-0l; Mon, 05 Jun 2023 15:04:34 +0000 Received: by outflank-mailman (input) for mailman id 543758; Mon, 05 Jun 2023 15:04:32 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6Bl2-00012L-OK for xen-devel@lists.xenproject.org; Mon, 05 Jun 2023 15:04:32 +0000 Received: from EUR04-DB3-obe.outbound.protection.outlook.com (mail-db3eur04on061e.outbound.protection.outlook.com [2a01:111:f400:fe0c::61e]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 45d539a9-03b2-11ee-b232-6b7b168915f2; Mon, 05 Jun 2023 17:04:31 +0200 (CEST) Received: from AS9PR04CA0172.eurprd04.prod.outlook.com (2603:10a6:20b:530::18) by AS8PR08MB6534.eurprd08.prod.outlook.com (2603:10a6:20b:31c::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Mon, 5 Jun 2023 15:04:27 +0000 Received: from AM7EUR03FT063.eop-EUR03.prod.protection.outlook.com (2603:10a6:20b:530:cafe::ea) by AS9PR04CA0172.outlook.office365.com (2603:10a6:20b:530::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33 via Frontend Transport; Mon, 5 Jun 2023 15:04:27 +0000 Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by AM7EUR03FT063.mail.protection.outlook.com (100.127.140.221) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.19 via Frontend Transport; Mon, 5 Jun 2023 15:04:26 +0000 Received: ("Tessian outbound 8b05220b4215:v136"); Mon, 05 Jun 2023 15:04:26 +0000 Received: from 1e78c923a6a5.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 1316493C-F372-4D20-AE78-AB177152A3DB.1; Mon, 05 Jun 2023 15:04:19 +0000 Received: from EUR02-VI1-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 1e78c923a6a5.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Mon, 05 Jun 2023 15:04:19 +0000 Received: from AM6PR08MB3784.eurprd08.prod.outlook.com (2603:10a6:20b:85::25) by DU0PR08MB9728.eurprd08.prod.outlook.com (2603:10a6:10:444::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.31; Mon, 5 Jun 2023 15:04:16 +0000 Received: from AM6PR08MB3784.eurprd08.prod.outlook.com ([fe80::5e17:39a6:eec7:c482]) by AM6PR08MB3784.eurprd08.prod.outlook.com ([fe80::5e17:39a6:eec7:c482%4]) with mapi id 15.20.6455.030; Mon, 5 Jun 2023 15:04:16 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 45d539a9-03b2-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=NiMoeb7BPg/mFFb12G5XeZ+waHi+R9f8p5aPOeM5dKU=; b=wLgiJNk4wLY/2uSqAkJ3NQ5CvJUb4AU8DWZbNgp1cowCOVQ63rUds8mHwtU23IRyPrIB9EDmuWNVz+r1Z84YWUYRz6WuS0XJkSRizOVlCf8eNC4bWnOMxVbsNl8y/v/ywva9ReiWDxXKdHr0sLkO4xLfjPP1BK/k2xoDv30w/QI= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C X-CheckRecipientChecked: true X-CR-MTA-CID: d48752990965baf2 X-CR-MTA-TID: 64aa7808 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Xi8/+q3QoXJi1uSYkuCYw0tRwWslbJLPaFmOudhGxVkHBk9HOphguDI6j65rAE7g+Pg4Raq1y/rdMJIaHrQlivPciI2pZE1/sdjqbwtA1URoLLB7jJPoJz7FQPXYH7/htjQYfWta751Jzyb4aKbQESCnF0WiFEfGSpOgyRCYdAhwyqKCKu0MelHFBN1QUOXaRI/xaQ+SMBbWxrDX3fIizSM/yKrSXPWr92FqF4QAqCblIUJ4VXZvXlwgsagdkLvVa+PgNQ/YfxlcSQrJ3rCis3GCFxT9Q3ImlKmIkcWpEgbkOCEj5+0h5HLgNGEzhPN6CjQn9Wbz6ARStaorp9m8yw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=NiMoeb7BPg/mFFb12G5XeZ+waHi+R9f8p5aPOeM5dKU=; b=acBt7+ipdpK1vD+dvJOWJ1usMT1ZMILL5ErdYyp/Hw1+70pArQa93gADl08VeVfPc81Pt1LDdkIIfI8eqepgBCUqNKU5q2C97ErXpAi3SseWSGU8NLFdwykIJEo3M5vrlFDKSr0h1WT3ZscdhJQX4o3/WY8/MvqVwdSCwz22SRbJRITIXN0MKysPvitBHqT6yBWUunkCBTGYVh79cHjPfAo3l8a25Ukk3nPYsLx3m6PUV41W5xEutavSqhCv7usHxy6B6XCngys6Bz8GeJHLbZUFTHHt2e0VIZAhH78hIZud0cwjCehHyg1dyo07+ZPFsLVJeAcQnthu3tUxgKWfYQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=NiMoeb7BPg/mFFb12G5XeZ+waHi+R9f8p5aPOeM5dKU=; b=wLgiJNk4wLY/2uSqAkJ3NQ5CvJUb4AU8DWZbNgp1cowCOVQ63rUds8mHwtU23IRyPrIB9EDmuWNVz+r1Z84YWUYRz6WuS0XJkSRizOVlCf8eNC4bWnOMxVbsNl8y/v/ywva9ReiWDxXKdHr0sLkO4xLfjPP1BK/k2xoDv30w/QI= From: Bertrand Marquis To: Andrew Cooper CC: Xen-devel , Jan Beulich , =?iso-8859-1?Q?Roger_Pau_Monn=E9?= , Wei Liu , Stefano Stabellini , Julien Grall , Volodymyr Babchuk , Jens Wiklander Subject: Re: [PATCH 0/2] xen: Arch Teardown Thread-Topic: [PATCH 0/2] xen: Arch Teardown Thread-Index: AQHZl7wlup1CE36mrESnTYlVMy53E698TniA Date: Mon, 5 Jun 2023 15:04:16 +0000 Message-ID: References: <20230605144331.1819452-1-andrew.cooper3@citrix.com> In-Reply-To: <20230605144331.1819452-1-andrew.cooper3@citrix.com> Accept-Language: en-GB, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-mailer: Apple Mail (2.3731.600.7) Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-traffictypediagnostic: AM6PR08MB3784:EE_|DU0PR08MB9728:EE_|AM7EUR03FT063:EE_|AS8PR08MB6534:EE_ X-MS-Office365-Filtering-Correlation-Id: d545898d-c499-4744-fcaa-08db65d62789 x-checkrecipientrouted: true nodisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: cfGQSm3izFzm1sLLzsILr8h2hEU0uK99pYRpEbqQcyrzNWgtUuufP8umNB+PM7kxiibOGWZeHxIBNPO9GE1tZFFv1wgELN8sPJjzBw79wOPszYLl6wZgWXu1TETzb+c714xYBZw5iP8Yi1AafXp0rCBFEkjzfPdntY5PfFb3WHczFhEReq0D82WAeJXUYVLuKRYWGyooS7nzXNdfQDVlCmfLtzQCYERM/c9IdX46itnbjZmq9ghtT007eveJscAOPR+iMkohnCDSSCox+wGlcXNTzfeM9IgUpJCfrTfJTSO3fXhlAJnvLVdsSdL4mxr5fpIsyCn3TEoaV96uS2LoImk+AlUteCmMAK1HrlQppN2Wo8WKjbt0LK1ZxjC5yfCLO1DfexmuqGYpDIG5g45OpuXPAEIRJRDv79DAoaKbhRW6sAOGns8rDBcmsJ2BZR2DvPg9H3G6+oceOiwpEnx7hhxjf4+dVqju2E8WGypGJtPg7EZj4OACZZYoorDbnEspxzdU3FfjsFwLxEoIQHYQs7mZPgOIFD2IAtcL1MUxc0YK/T9drvqDMVe3st9FDxj/UqphUCAOEbGrZOUvDUWpImCCWgNlvAzrQ7cYHE5uIQPd6kTs4HHoFfqNZlKjlgvwMwRjcJV3w8uTn6kjh33bYQ== X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM6PR08MB3784.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(346002)(366004)(376002)(136003)(396003)(39860400002)(451199021)(54906003)(71200400001)(478600001)(8676002)(5660300002)(8936002)(36756003)(38070700005)(2906002)(33656002)(86362001)(4326008)(6916009)(122000001)(91956017)(64756008)(66446008)(66476007)(66556008)(316002)(76116006)(66946007)(38100700002)(41300700001)(2616005)(26005)(186003)(53546011)(6486002)(6506007)(966005)(6512007)(45980500001);DIR:OUT;SFP:1101; Content-Type: text/plain; charset="iso-8859-1" Content-ID: <83B1F956C6707D43A2C85066F3D03F47@eurprd08.prod.outlook.com> Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU0PR08MB9728 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: AM7EUR03FT063.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: b005a318-984d-4685-cf8b-08db65d621d5 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: sIvF4inbINCvK8H6xcTPNRRWccf13KnnXURsOX8Dq8VA9lvgOSvD2vAyfpQ5dIPOFMuUT6NaLLaMZx3IX973V7RbqaTm52RxpvYVeGWtEeB8A90tUInoDtBwKJmX+fqQw6WS0NaMjwrIC3/rzGrvhdqj4fLLkXc6GHQ56ZFpgtJN7dsSoRAdrGrFcRjy+dwGFRvurQd6YMbubfhqQZ9R1ybym5FfiyhRUuBK4ZiSN1abtaPBqpw3gIH113D443xJC5lRdGzPcvGcM3bwGwQVXJMqPtPmk2LJERdwyH1i3Huvm0Fe4GxCjT3EI+E42gs0cqGarl+8nLehUKofwQm0a/23jOyPh+wiNVWZ8lkW9TM5sGArEjoGyHN79ZJyanKYQGpjPIFHOaPs2r/JBswQ/Y9BZO6jlR29XMXofjhrzmEN+LNi7XkATAWoYfElp3bFk+pEhM53hy9DwOaDXAcC9Cth1BaS6sYBA5fuw5LSxd2SLMxdJt8yE+eek7vZ3HXKr25GIZbOdq5fB0K+LzPxEdWaF0pY8OGFT9CK641YV79JYsRugnN5rytKMtPVYeUfPb4vssUwwe8PC+kanTQIamtBGjfh091985wno6GtWnpvFv9d+3bMFdGfqkYt4JzPXfJGIgRkh6Mc78BrfgwvADuBZZpO1nOAlDpW8MvKO44/1/0hBMdL07BeQ8L+SZEvgOXf/4Pn4AlKI7RSb7IrJzEd2VmtADWZCZ9F2ZQXRXY= X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230028)(4636009)(136003)(39860400002)(396003)(346002)(376002)(451199021)(36840700001)(40470700004)(46966006)(47076005)(26005)(6512007)(53546011)(2616005)(6506007)(41300700001)(36860700001)(6486002)(107886003)(186003)(966005)(336012)(40460700003)(478600001)(54906003)(4326008)(82310400005)(82740400003)(40480700001)(356005)(70206006)(70586007)(81166007)(316002)(5660300002)(8936002)(8676002)(6862004)(2906002)(86362001)(33656002)(36756003);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Jun 2023 15:04:26.3193 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: d545898d-c499-4744-fcaa-08db65d62789 X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: AM7EUR03FT063.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR08MB6534 Hi Andrew, > On 5 Jun 2023, at 16:43, Andrew Cooper wrote: >=20 > Sorry this is late... Patch 1 ought to be ready in this form. >=20 > I'll leave it up to the ARM maintainers as to whether they want to take p= atch > 2 in that form (with TEE in patch 3), or whether to merge the two. >=20 > Compile tested on all architectures, functionally tested on x86 only. >=20 > Branch available from: >=20 > https://xenbits.xen.org/gitweb/?p=3Dpeople/andrewcoop/xen.git;a=3Dshortl= og;h=3Drefs/heads/arch-teardown >=20 > Full Gitlab CI run in progress: >=20 > https://gitlab.com/xen-project/people/andyhhp/xen/-/pipelines/889759838 Thanks a lot for that. I will sync up with Jens and we will handle the rest :-) Cheers Bertrand >=20 > Andrew Cooper (2): > x86: Introduce arch_domain_teardown() > arm: Boilerpate arch_domain_teardown() >=20 > xen/arch/arm/domain.c | 32 ++++++++++++++++++++++++++++++++ > xen/arch/x86/domain.c | 5 +++++ > xen/common/domain.c | 6 ++++++ > xen/include/xen/domain.h | 1 + > xen/include/xen/sched.h | 1 + > 5 files changed, 45 insertions(+) >=20 >=20 > base-commit: b3880c365db89051728e1de6b6889c750cbdd915 > --=20 > 2.30.2 >=20 From xen-devel-bounces@lists.xenproject.org Mon Jun 05 15:08:51 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 05 Jun 2023 15:08:51 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543764.849005 (Exim 4.92) (envelope-from ) id 1q6Bp2-0001ng-Nm; Mon, 05 Jun 2023 15:08:40 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543764.849005; Mon, 05 Jun 2023 15:08:40 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6Bp2-0001nZ-L5; Mon, 05 Jun 2023 15:08:40 +0000 Received: by outflank-mailman (input) for mailman id 543764; Mon, 05 Jun 2023 15:08:39 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6Bp1-0001nS-Ie for xen-devel@lists.xenproject.org; Mon, 05 Jun 2023 15:08:39 +0000 Received: from esa4.hc3370-68.iphmx.com (esa4.hc3370-68.iphmx.com [216.71.155.144]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id d7c11fc2-03b2-11ee-8611-37d641c3527e; Mon, 05 Jun 2023 17:08:37 +0200 (CEST) Received: from mail-mw2nam12lp2049.outbound.protection.outlook.com (HELO NAM12-MW2-obe.outbound.protection.outlook.com) ([104.47.66.49]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 05 Jun 2023 11:08:25 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by SA2PR03MB5867.namprd03.prod.outlook.com (2603:10b6:806:11a::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.32; Mon, 5 Jun 2023 15:08:22 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::10bb:98bc:e36d:36ab]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::10bb:98bc:e36d:36ab%3]) with mapi id 15.20.6455.030; Mon, 5 Jun 2023 15:08:22 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: d7c11fc2-03b2-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1685977717; h=message-id:date:from:subject:to:cc:references: in-reply-to:content-transfer-encoding:mime-version; bh=6RzyrmXTgr17zB9hZyMxRsfjOTHV0vweo0j7Q6VzrjM=; b=LKH2oXuJU5XNDTlR9zE9YH9mdpWT19Hfp6LxWzcvmNxCnEOYlsm+Px8L h5oyXjaT4raZA6SoAGIHYO7Gi62Lm09bbGaHAji4LMLxifA0IFbyQVzQS tPEscp8qJskvrN14FXUavz1ze5xgc4U+DM4giAyquIkI40I+2OVpLVG5z Q=; X-IronPort-RemoteIP: 104.47.66.49 X-IronPort-MID: 114141304 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:yhXa/KA3J4/zbxVW/+jiw5YqxClBgxIJ4kV8jS/XYbTApG4j0D0Ay mJJCmqEPPyMNGOheIwjO4y0pBtV7cWDmoNgQQY4rX1jcSlH+JHPbTi7wuUcHAvJd5GeExg3h yk6QoOdRCzhZiaE/n9BCpC48T8nk/nOHuGmYAL9EngZbRd+Tys8gg5Ulec8g4p56fC0GArIs t7pyyHlEAbNNwVcbCRMs8pvlDs15K6p4G1A4gRnDRx2lAS2e0c9Xcp3yZ6ZdxMUcqEMdsamS uDKyq2O/2+x13/B3fv8z94X2mVTKlLjFVDmZkh+AsBOsTAbzsAG6Y4pNeJ0VKtio27hc+ada jl6ncfYpQ8BZsUgkQmGOvVSO3kW0aZuoNcrLZUj2CA6IoKvn3bEmp1T4E8K0YIw2c1FGkBE2 tckeG4TQA2Au7qHnpmec7w57igjBJGD0II3nFhFlGucKMl8BJfJTuPN+MNS2yo2ioZWB/HCa sEFaD1pKhPdfxlIPVRRA5U79AuqriCnL3sE9xTL++xrsgA/zyQouFTpGPPTdsaHWoN+mUGAq 3id12/4HgsbJJqUzj/tHneE37aTxH+iA9pOfFG+3vdp3UbPzFIcMTo1dgalv6aXjFGdBusKf iT4/QJr98De7neDR93wXRS+rGSD+AAVX95dEeoS4wWK16aS6AGcbkAUQzgEZNE4ucseQT0xy kTPj97vHSZosrCeVTSa7Lj8hTG4NDURLGQCTTQZVgZD6N7myKksijrfQ9AlF7S65uAZAhn1y jGO6S0h3bMaiJdR073hpQyWxTWxupLOUwg5oB3NWX6o5R94Y4jjYJG07V/c7rBLK4PxokS9g UXoUvO2tIgmZaxhXgTXKAnRNNlFP8q4DQA= IronPort-HdrOrdr: A9a23:crvHwahTjUY7hixEhZVWAT1LXHBQXuAji2hC6mlwRA09TyX+ra yTdZUguiMc7Qx7ZJhOo7690cW7IE80l6QFg7X5TI3DYOCOggLBRuxfBODZsl7d8kPFh4lg/J YlX69iCMDhSXhW5PyKhjVQyuxQpeVvJprY4dvj8w== X-Talos-CUID: 9a23:CvuuV2zxtdWmkwJtNX+dBgU3MfI+U3fy50uAfVGWFGVVEIzLYnqprfY= X-Talos-MUID: 9a23:w0s61gRHuGnL4L9kRXTlh2x5aM1W7J2JK2NQj4tZlc+bFnFJbmI= X-IronPort-AV: E=Sophos;i="6.00,217,1681185600"; d="scan'208";a="114141304" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Qp/0oph10Fg/OaJq7mBSwBmLBal/BANdrn8jxxcKsbT11nPJpK9GXhgfXttH0kEmHK4Tyb8uoSJoOuUtbpuzDKzdoNEKiSXbsAPuzhmaQ3lvFhj0O85bJOEMRzlRU5eolc7gDXQHCuGqL5a4u+g/dFhIgAdL5DX8jm9nRJxOUgKa2SizGK9wsS6x/5kgt2D5qBUxnVo7eaWV/gAuLo3NaUmwE9PdYfUPGvipscj201V5r+KDezhsisILJLkK/JwSVH7fZ0gLkCzLL71YO17FEe+SByGFZXGyRWEAvtY7oxlZ+oo/1dKoucTHIef99r8sKvb+ubKJLDIj34dJm7gE8w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=6RzyrmXTgr17zB9hZyMxRsfjOTHV0vweo0j7Q6VzrjM=; b=l72kEtzwrj3Vdns1H5xC+LzLe3V6K5grNwHE/mldBwZMFNq4fbqHFUNW7x2mmxfH+q4C4obnQooAK+5R3NgyZDMoPxcg6xaFWdV6qCM/7CFSkAtAQZVTLdBc8ctvZMu8SFrqtX6SOZ9An5MpH5Muqq36/tKb6DCZjj6DHUCgEEYtku4J4rFgNk5WRtUq/Wo2h2o/B9go6QMdfWNVVDCISC8eH8p6qg1mjmu6RIbAoYxMGl8lHBM6i4sXsjMYT46d9UxXqQmUrX/PgvdjXr6Vwdx0KK/q3iOYxC4zDTgKx9isJy6LCfiZvMPso+Ge0iKpqmpySiZqlUHeOHNbXRT+bw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=6RzyrmXTgr17zB9hZyMxRsfjOTHV0vweo0j7Q6VzrjM=; b=IRNoHS5FEXF7PyilTptNtpJ5F+fxzVo8NfIV9HZUiNN1nyD6GLefATLsjT73xU88WljZk9XOJS3N6UBZff9JBRzWd2A4mJRu3Nccx+f8jsar5c+rV59AouLRsf559u+AkdMnPSs0kNgEM0deOKCfnb0hK1twI9qyQCPzcpEKPN4= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: Date: Mon, 5 Jun 2023 16:08:16 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 From: Andrew Cooper Subject: Re: [PATCH] x86/microcode: Add missing unlock in microcode_update_helper() Content-Language: en-GB To: Alejandro Vallejo , Xen-devel Cc: Jan Beulich , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu References: <20230605150116.29911-1-alejandro.vallejo@cloud.com> In-Reply-To: <20230605150116.29911-1-alejandro.vallejo@cloud.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: LO4P123CA0670.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:351::16) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|SA2PR03MB5867:EE_ X-MS-Office365-Filtering-Correlation-Id: 2a1fbd7a-616f-4544-89e9-08db65d6b3bb X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: Ggs3Q/vRE8ynGYBjMpaQpgeIgC28AkJCYxyYlXgLvd8ehVp8Upa3SdDXC7uzQhcPbBWBQ7RZksOgaxvVztFoGGqxZ6huR2wSTrK60PQs4MbsaWI0TSOTrsz6HHPJ6FeK+dAStK1He5zjQodCZ32UTiRQ9r0VwZYjpXPySWsrBJ+2wXZqFDMJWW8rlzoui++/3FxaTTUysuy1fBqTwOwB3dz3OAHnuVswOMFvCQV50D/JBC4FO5ClfiWTMr+2lxPVTi63SAOVotlzPSdHBFlGi2uuY+6WCIo8QNmeveWgp6xo6MMkcXPPIfQYIAonKe5APMSgJSaCJw9SH7JEQutEg20yB/jQplr5wgwT/K+98oHr+rKGEo/Ufl4T0+G8eoTmREhcTWWFS7bS/AWMLg7RUb4NMqvhio3FpkdFTUpqITAvvvF14s+wYKKkyC00f5GReTp7r8+Si6euQRA8fy71RIJShu7jpMD45/62mgV4VpehbSiNYN1AJH2m2KOtSOgsAphfjcNbSyuD5Yyq8gxjgVzRiEWHxIoCv1tTO7NKyJxaEjhLV4z9e9g5RkfyZVub6nm/m7GK5gbiUBFRMeR/+6OQZP4MFhO7p+TsA+IvYZYS8tnSyMNTfBEwvEbMZt5VqMIpuf75DAP5QZJL9fwfDQ== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(376002)(396003)(39860400002)(366004)(346002)(136003)(451199021)(53546011)(6512007)(6506007)(38100700002)(2616005)(41300700001)(31686004)(6486002)(6666004)(186003)(26005)(83380400001)(478600001)(110136005)(54906003)(4326008)(66476007)(66556008)(82960400001)(316002)(66946007)(8936002)(8676002)(5660300002)(2906002)(4744005)(31696002)(86362001)(36756003)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?QXVKenEyMEVlUXBhWlFOSnhHUE5PLzZNSWtVUDRIVkNqZEcyMXgvbVdlR0dw?= =?utf-8?B?K1phNkRlT3M0d05pVnRuL2dFU253dTJlUFlhbVh1MG4vZUM1S2w1bnExemhZ?= =?utf-8?B?aVdVNFdWKzdqVGl3b0tBamIvMEw3bkRPd1RqSW92ZzY2U01MbGlVNER4cHIx?= =?utf-8?B?VDROY01yYlRUYnNIdDUrSGlCTnMyYU95clZLWlV4TUFISjNUaXRxTnl0djZC?= =?utf-8?B?WkUvMFk4OEluYVRNNFpQMlpaemZWYmRBcXV6RWpzYng2RUd4eEZwaGtRSlBZ?= =?utf-8?B?bS9JYXlMMWpBYlk4ZTNzeS9tUUJoNnAyR0lQaWRtMmdBSmZjeTlyaFFlcmR5?= =?utf-8?B?bXBVWWJDTHUwK3p1YTNYN3B0T3l2SE50STNXWWF5VU1tcDdvQVlMaDYzeEZH?= =?utf-8?B?SVdTSVpUWCtUS3QzcjdtTmxiTUYvUHlERXgvYnZnRWlRekw4QTl2NHVOTldL?= =?utf-8?B?czZpU3VYblE5OVFFZzlvZGM0Mk5kUzk4elRCaDhvZGhJSGdURVI4Wm1JYzha?= =?utf-8?B?Y3VtdnFQa21iajM2NFROSTR1eWtTUUpVUVFxR3Nqc1ZIazMyclJuL0gyS1BU?= =?utf-8?B?RzRMekYyTTZmcDlvczY0QnZKOTRpOWJiNkxTVDcvRUgyUFd4eFBJVDJwZnRX?= =?utf-8?B?N0RsU3pPUGVKczd6YVZJZExSVkJvMi80Z2sxcEpRSEtkOEEvam9SNDJrNjZu?= =?utf-8?B?SEJnQ1VWYTdTN1BpbHRsTnFYNnlXMDJZQjA1a0JWMGtOb0tUdGJXenJPUVUr?= =?utf-8?B?bjF0YUJzOU8zQlFFblo4OGRPNzZBandranFwczhmWXZMaW9reGpNMm9CQ0d1?= =?utf-8?B?L0hMTnJDVkZVVy9mN2xQdFU1S2FrZHViTWYxclZZQmZTWXJMNHhIUGlEMDNl?= =?utf-8?B?QTFWWWplZCtZUjllWDVWekd2djNlL2NXTk53b25EUmFHaGJzTk5iQTA3RlFp?= =?utf-8?B?ZTFqV2JJN3BCRUhqMTB6dUs0NVU2UllRNzBidTBHU3ZpV0lHYWtXdGFJVGxW?= =?utf-8?B?Rk9PSWhYeTBMQ0tqb25tTFpUNHVqdCtNSHFvcHp5eUQvUGJDWHExOTI1UEhi?= =?utf-8?B?d0hNT3ZIUW5MQkFTYkN3cDFCVlhhYnNBOFppVGdXZmRIaGtDLy96MEkxckdR?= =?utf-8?B?cUl1THhZNktFenMrVldjd0Q0Q2liM0pNTkx2SDFCZnVYTEp5R2hPVGhsTlI5?= =?utf-8?B?VCtBNUhlck1ZZUJGWXVPV3pnd29ibExHRkk0b2NGSVZZaDdlbHpkc3ZDZDRu?= =?utf-8?B?OFZwRllPRHhPalZLdWE1MlEyTTdjMGVHWFN5d1QvU1JHUUVKWHNFSGNwdk5r?= =?utf-8?B?QzVnQlk2Z2poYzlXOElpM1NiUENFSEdxcWZQQ0F4Rk40RTVuRFViOVI3QWs5?= =?utf-8?B?VEg3dUJzZFpYME9GRjVBWHVWc1hZcUtxeU81U3QrSmp6eS8zaDdkTzdxU1Zm?= =?utf-8?B?L3ZtSnEwemYxZlFaMjN5R05qU0FhQy9ibkp3ZlZrWGdiU0FLQWlScWJ2VE9x?= =?utf-8?B?SjJGSDNEQzdBK2FLQURFdFVhN1FGTCtBNWtDaTV4YzZ5bExhR3BSemhkMzRo?= =?utf-8?B?SVhUVWlIamlzZGEyT0VTQXBzV0dKdWFRSW1lczBncDdRVkRBd28ra3FBQ0Zt?= =?utf-8?B?K0daUkhiY2RCL3JtWkJRYzlLRlNMSGdQa3ZQdnZKMWgxcGxja1Y3TzM0N1dx?= =?utf-8?B?NVQvaFJQeHo1T3Q0VUZRVnpYMnZJRzd0ZXRhelFnaTZJb1VBOFIybDcyajNr?= =?utf-8?B?SGErVm9xV2ZGaVZLdzFORDc1cUpseDRnMmQzNzQ2ZDZRSXRBb0RYc0FOQnNx?= =?utf-8?B?SytRV1Q2eXRFL0MybzBjTGkxcloyejlhb1ZMR3QrSkFuQnRUWGdpOUFNMUtL?= =?utf-8?B?Yzcwd3BoQTNJOHZxam8rZ2dHNllhUGpkZFhtRWxQd3dkcEkzWVJqbDNWOGJJ?= =?utf-8?B?SlpXL3JvY3NISWNQSklscTF0ZGUwR3dyeG5mOUkrK2N6QkdyQTdieUswNFpx?= =?utf-8?B?c3VibVJaRWljUjRFZDYvSjBVRWtDUDhIa1dFd0t1VFBmQWRMKytCaXhzcG1s?= =?utf-8?B?TDJBdTNiWmtHWUUvK1ZDUWh5eGhOTW4zNjRyVndTM0J0MGozZHA2V0VmRWVP?= =?utf-8?B?Q29VT3R4ZUpoU0dXbWs3ZkoxRzdpaTdNTmJjUWIxRXhXRHdhcEJhTHRja2JQ?= =?utf-8?B?cmc9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: ddhQ7qiDhlCUwsxu1nlvLHVSCcGVCUIhh+WRY75zeNZpahE/MKBg4f39dOR/ouMQUH81sVz2G7mhdxHq47pTCIcPXyZDjr46cY/xjT5LblgoK0XQYs7bG82Ue03HkpJsoacirAvLQV21z2Vh5GcuXJxZGUyFZGjy/LiT2ERvjUZfAHheB/+wyUKEZzmlOuyZewLspSL8f2e6qpAF/Yacpa3Z6vg3ov5x+plgKgN+jux27QeFROvQDnYDs5YLUfNMS0bMJg/WAdpf6zHopkH8caD8BvE888pdqA1DSJ8+D9GoUjHi4IN6mrYfGsPOFFM6KiCjOupyUzSplJhDJt5tVZanfZQEawJHMvkOZTWccqxbTB7TuMv0z+4/VEtrnr/2kEGhCMjALiZOg1Mymoxoq8dBqX4KaSRhhTkjs4F7WF2c8DN1dF6iIh5adh9JJtqgpB0b7I681crVBvsrwE6vyG+9Kmac5+ovD86mOWK2OMMecTU6euo813qHL8fxONRvbAAuj7Rin6j3iVak0dbU9Nug8MFm2E+f5xpGbUgx133sIu55hUBx56H37pCTZnc3ORhS4VmCACkqo3TSpCSgi3XhIq798bJ5uaCtPz8aUEuJalMQvGJjNeD3iH0OYzXHwWMsl+L6w0cj9QUyJ4O+sibvENzaNFy7uC5/BZHN5Xd97DwGBLaTpStGfJQrvMQbvULRFxFf3rxvsk9iIht5pe7CLq4/DrAnXp6XL5rG2VoWHNdktp6JC9/7xQbFIvsBcCqwAewWqzTT36zSSGst65CnhxT6qBSivQctfT9PYalg10cNGK5c4Rm5ShxVxzjB1chbJLAZNqOD2qU/eANEdMdjdQlQyVjTK95W+ItjoBI= X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 2a1fbd7a-616f-4544-89e9-08db65d6b3bb X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Jun 2023 15:08:22.0047 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: pqUXB/iefEDMr+CFXMilppeFmtN3xZts0v+CFFS4J7wD3TwrUMk+hiwqSKxK2+AQNkqwy48IhcDRuj/REyQbHLS4lRvmVVxsjk4xoAP80Wo= X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA2PR03MB5867 On 05/06/2023 4:01 pm, Alejandro Vallejo wrote: > microcode_update_helper() may return early while holding > cpu_add_remove_lock, hence preventing any writers from taking it again. > > Leave through the `put` label instead so it's properly released. Fixes: 5ed12565aa32 ("microcode: rendezvous CPUs in NMI handler and load ucode") > Signed-off-by: Alejandro Vallejo Reviewed-by: Andrew Cooper I'll add the fixes on commit. ~Andrew From xen-devel-bounces@lists.xenproject.org Mon Jun 05 15:11:25 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 05 Jun 2023 15:11:25 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543769.849016 (Exim 4.92) (envelope-from ) id 1q6Brg-0003DH-4d; Mon, 05 Jun 2023 15:11:24 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543769.849016; Mon, 05 Jun 2023 15:11:24 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6Brg-0003DA-0z; Mon, 05 Jun 2023 15:11:24 +0000 Received: by outflank-mailman (input) for mailman id 543769; Mon, 05 Jun 2023 15:11:22 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6Bre-0003D1-BN for xen-devel@lists.xenproject.org; Mon, 05 Jun 2023 15:11:22 +0000 Received: from esa5.hc3370-68.iphmx.com (esa5.hc3370-68.iphmx.com [216.71.155.168]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 38d7b75a-03b3-11ee-8611-37d641c3527e; Mon, 05 Jun 2023 17:11:19 +0200 (CEST) Received: from mail-dm6nam10lp2104.outbound.protection.outlook.com (HELO NAM10-DM6-obe.outbound.protection.outlook.com) ([104.47.58.104]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 05 Jun 2023 11:11:16 -0400 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) by CH0PR03MB5988.namprd03.prod.outlook.com (2603:10b6:610:e3::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Mon, 5 Jun 2023 15:11:14 +0000 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::192:6bdf:b105:64dd]) by SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::192:6bdf:b105:64dd%3]) with mapi id 15.20.6455.028; Mon, 5 Jun 2023 15:11:14 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 38d7b75a-03b3-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1685977879; h=from:to:cc:subject:date:message-id: content-transfer-encoding:mime-version; bh=/6Fy/CR/gCTKW7EKi0nwjvcVr524gOlipwpOajEqaSY=; b=N3VORuKDA0ncSoz22TKAL3vR6J7z2u9kwpyC3rX2oCM17H4ReqAIadDo 2wWDVRGN6cAwDiJuEX4yvYKnWbJSxk+SCMCiZkpUmp0PNWWbmXo3y7KcH gpXITY83yNaFZ6mpOB03RrRBdBWj0wpwNEv7KzcBh/0sH6AC69bI7wuDE w=; X-IronPort-RemoteIP: 104.47.58.104 X-IronPort-MID: 110393904 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:Rapl6K4K6bgNucL6LS4OzQxRtPbGchMFZxGqfqrLsTDasY5as4F+v mUfXGrSPv+MajT1fdt+bYWz9UgPvJCAmNVkQABpqCozHi5G8cbLO4+Ufxz6V8+wwm8vb2o8t plDNYOQRCwQZiWBzvt4GuG59RGQ7YnRGvynTraCYnsrLeNdYH9JoQp5nOIkiZJfj9G8Agec0 fv/uMSaM1K+s9JOGjt8B5mr9lU35JwehBtC5gZlPa4T4AeH/5UoJMl3yZ+ZfiOQrrZ8RoZWd 86bpJml82XQ+QsaC9/Nut4XpWVTH9Y+lSDX4pZnc/DKbipq/0Te4Y5iXBYoUm9Fii3hojxE4 I4lWapc6+seFvakdOw1C3G0GszlVEFM0OevzXOX6aR/w6BaGpdFLjoH4EweZOUlFuhL7W5m1 vIxJWAcZyq4qcWd3K6Hcepjot8sI5y+VG8fkikIITDxK98DGMiGb4CUoNhS0XE3m9xEGuvYa 4wBcz1zYR/cYhpJfFAKFJY5m+TujX76G9FagAvN+exrvC6OnEooiOSF3Nn9I7RmQe1PmUmVv CTe9nnRCRAGLt2PjzGC9xpAg8eWxHugCdlDTOHQGvhCx2aQ2E83CgUtBXSU8PihtVymZ95UN BlBksYphe1onKCxdfHtUhv9rHOasxo0X9tLD/Z8+AyL0rDT4QuSGi4DVDEpQN4sudIyRDcq/ kSUhN6vDjtq2JWKTVqN+7HSqim9UQAXMGsDaCksXQYDpd75r+kblQnTR9xuFKq0iNzdGjzqx T2O6i8kiN0uYdUj0qy6+RXLhmyqr52QFgotvFyPAiSi8x9zY5Oja8qw81/H4P1cLYGfCF6co HwDnMvY5+cLZX2QqBGwrCw2NOnBz5643Pf03jaDw7FJG+yRxkOe IronPort-HdrOrdr: A9a23:gm4HwqOQcXy+JsBcT6r255DYdb4zR+YMi2TDiHoddfUFSKalfp 6V98jztSWatN/eYgBDpTnmAtj5fZq8z+8N3WB1B9uftWbdyQ+Vxe1ZjbcKoAeQZhEWiNQtsp uIGpIWYLOQMbETt7eB3ODSKadE/DDoytHKuQ+IpE0dNj2CJpsQmDuQTW2gYzxLbTgDIaB8OI uX58JBqTblUXMLbv6jDn1Ac/nfq8bNnJfGZwdDIxI88gGBgR6h9ba/SnGjr1wjegIK5Y1n3X nOkgT/6Knmm/anyiXE32uWw4VKlMDnwt5jAtXJrsQOMD3jhiuheYwkcbyfuzIepv2p9T8R4Z HxiiZlG/42x2Laf2mzrxeo8w780Aw243un7VODm3PsreHwWTp/UqN69MtkWyqcz3BlkMB30a pN0W7cn51LDSnYlCC4w9TTTRllmme9vHJnu+8OiH50V5cYddZq3Poi1XIQNK1FMDPx6YghHu UrJMbA5MxOeVffVHzdtnkH+q3fYl0DWjO9BmQSsM2c1DZb2FpjyVED+cAZlnAcsLogVpht/Y 3/Q+tVvYALavVTQbN2Be8HT8fyIHfKWwjwPGWbJkmiPL0bOkjKt4X87NwOla2XkaQzvdoPca n6IRNlXTZYQTOsNSTO5uwHzvn1ehTyYdy3ofsupaSQudXHNcnW2GO4ORUTevCb0osi6/3gKo qO0a1tcoDexBPVaOB0Ni3FKuxvwColIbkok+d+fW6yieT2DaCvntDnUZ/oVcrQ+HAfKynCPk c= X-Talos-CUID: =?us-ascii?q?9a23=3AHEft72nUYT0+cx8DxshU4IfN9wbXOV7T5XqAMka?= =?us-ascii?q?CMkhOY6GJdWST94d/nMU7zg=3D=3D?= X-Talos-MUID: 9a23:gzwfKwnBjQgncROxcFJ2dnolD8R2wICsEHtdvrpXutG7JzRMNzyC2WE= X-IronPort-AV: E=Sophos;i="6.00,217,1681185600"; d="scan'208";a="110393904" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=JBRlWh/haWJbHKLzYQCcxaTqL4A6Xs9n4JaWktWhgRJqDZQrdy7QEjdkis4BktwlnX44pjutUtspNuAoZdQRpmCvfOBkLnzaBFsc5BNxVUqgXehs/kWqXfGWbGB4R4CQmy1tHVxSuajRkdFryp+3JmexPlaWmsVWRWYxxgeCZXUZewOAU3nay50emAAB11VaXaI2qpES9qJmx1fKVYl82F1twlqbc0SU5URUkGGxx8eK7kOOUu6Q+21UDy1rMgLmHz1Wk2d4Q7hpbuJIirrYKpqOxxfKxZvte8luDwmVlZAOQHbQdWfAE7MtF/YOf/3OCyAvwjIL2n8+Z2Ip/tE5xg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=JONrvYVMHp1sBRPD1gxzmVo7lye+rsEHxAYvDe4PyeM=; b=WBXJFXXtJ1jPbtYB1qT9q8ZFZJvV1Swu8MtQEwpw6f4/N2A/7+kBPQvlxfvnr0ZxjAvxxKUHWJBnRIUPv6fuo1jh9OnKHFDpctU6dG/Hy774Kt8ZWTmigzbLQMzr8V03kX75k+U1SPaKw+JJF/M1DCKL/3Eqet5s1Jq9eoEV5AwM0UCjL2l9ithGS2/oExM9zaM9dLH6CVOIsssrzmtdYdpGqLSVl+xWyrO+pyiW8H7n5TbDz/zKAHuKa+Rpqq6AwpLXnG6m3Gs7SzaObGORDsunNS1LeJYuKYtT8iGGlPu3LVpDzk4kdZgetbcvT7+T6FbciLIqM+dWcqZknQg8XQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=JONrvYVMHp1sBRPD1gxzmVo7lye+rsEHxAYvDe4PyeM=; b=kEMjBqvxF9s50IohxED/gi5utfftjdZDoPctOhXaOq6Kus9fAPgbK6BiyQ2iVqpB1R+UB3i2d0hxWZEL5nb6qYZppFhydeCCBsYqs3DJZcvX/FeTe0SY5+v34yqMjDe0JPY7SNnUlZask/kUsyqCdEO9OhlePv4tFYfluMWF74M= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; From: Roger Pau Monne To: xen-devel@lists.xenproject.org Cc: Roger Pau Monne , Jan Beulich , Andrew Cooper , Wei Liu , George Dunlap , Julien Grall , Stefano Stabellini Subject: [PATCH] amd: disable C6 after 1000 days on Fam17h models 30-3fh Date: Mon, 5 Jun 2023 17:10:36 +0200 Message-Id: <20230605151036.18085-1-roger.pau@citrix.com> X-Mailer: git-send-email 2.40.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO4P265CA0175.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:312::14) To SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|CH0PR03MB5988:EE_ X-MS-Office365-Filtering-Correlation-Id: 421cb925-0e70-445e-c9e5-08db65d71a4c X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: hUMqNMab775tz8tw0dYeSALbzZcmi3ymcnbgH7C3Kcz4BW12toojayqfphSes3LnKgSasFwDmDH8tzcjeDFH1llIueRRz40EDoM/qyuvnKZZIECjANnYHPlvc8Ai+5+sU9V6LVyznGE5WRBwIlrAIAvcU5+0EN+kl4EVeD6S6kvlBi7xA7HLip1g82/Gbfwfm9VtsYiPfLPLuq2loPIm6JeJtQrTzMScM9xU0Uz3HYCzpDFHe/ejPm4Hg3UoGcVG38th94OckdCM8Ohsg3P8Ci8Dj0v07qyF4msh44OA3axn0hpecjE8rtzQV2d53kp/te3kp80jaUYhsYvwmsgdUogZNLyYPp8hH7//YbWBxKbu/FYW0aqreh+mRHbl3bRaMkGAd8yvKqS/H393ZImwtk/PATgwaVpjAN6IkmueG9GmR2Ke7Iav12tB8TAVy9ioiMndVwULKgke6PdTdmLAlILJB1HX6xpwerdDGa6To7VXVc6kztRnCixWl8bE2Vqi6LGYvo1JnAliAcU9upbaBepyiRZDldnyiMmcG4Cb7oAN6BjtuCE8SS/V0rDCXkxn3jsJtRxxgRXchNhRUqEebkbuv17/y98nzhFUy4ufiSK6bY52m+IL5qnOi57M2S8H X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(366004)(396003)(136003)(346002)(376002)(451199021)(478600001)(2906002)(36756003)(6486002)(6666004)(2616005)(83380400001)(186003)(6512007)(6506007)(1076003)(26005)(86362001)(82960400001)(38100700002)(316002)(8676002)(8936002)(66946007)(6916009)(4326008)(66556008)(66476007)(5660300002)(54906003)(41300700001)(221023011);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?YnF6T2Z6NWtTRUNqS29vZkJRVTNSZWRWbWlMY3VrUzRpRThBek9hbWZ3L3RG?= =?utf-8?B?NXorbWh6NUMxVUpUN1UzQisxaFdhNEllWmlJbWEwZW9CeUJvQTBWWFVkN2Ew?= =?utf-8?B?SkFKZEI2bzFqZWYzOVpHUFZYZTdWSlgwdE43UHE2SEFKS2xTMWFWeWx4bmFl?= =?utf-8?B?YklzTmZ6dnBjdVpoZ2F3TlEyWTRaUytLVkE3Tm9kWWoyOEJQZjgzVG5EMXND?= =?utf-8?B?RzFRcFhPY0haREJ6a3FtS0VHbE9NRElFcTAybnl0bnpNYlVuRmtUdlFpcTFO?= =?utf-8?B?N05VQ3VsYjltTWh2MUIzaWN4MTlPVTBtb2s0TnlmUU9nekJubU9CMGNRSU4z?= =?utf-8?B?TDJkWDdRa2xEZWQ0K1UrVDZEU25xYmZnSko5NWJ6aWpvOC9rcWdwU3lCWWZ1?= =?utf-8?B?SDR2YlVnckd1S2JRNmVPZ1VQekNjN1RWcko4Vjhhc2Q2MWpHV0xvYTVpdVBs?= =?utf-8?B?SHl3K3NsaGZTUXlyTE5PUUFuckdrUVZ1OCtxT3BGMlRRdFZFRkFpMU5Gd2Fa?= =?utf-8?B?d3MwbEwwaW9PRnZwdnZrVTJHdW1OMm5jOTVycnJFaFU1MHFkN2lNTTZicVlE?= =?utf-8?B?NDRuME5EUVNsRERKaUF3bHV4eUtBdzB6WWFackJ3alpJOHA3NHJwMTFSemFw?= =?utf-8?B?aWVuN0hTMHgwdUliUmdyUmhFUVRVSU0zVUV3alJSd2pjYllDYkN6dHVTQ3Vq?= =?utf-8?B?cUNTSnlnSnZMVUM3K2UyeUEyN3NySU9pTHJESEFTV2ZpdXJsb2xIMkRWSDBa?= =?utf-8?B?c2lHa016SE41ZVlPZnduWklBTGZ4WjU4YzhRWEtDOUU5THZiK1NBSi9kcXdt?= =?utf-8?B?eGFwalIxTDVQMW5nSWtZeTNIWFQwS2xTcXNBNjRVVlEwY2txUUVmWWs3U0wy?= =?utf-8?B?RjJIUXp4THBKajJaaU94Yi84SFZyWmpFeWVIYTRPRFBkYWhFSjQrM3A4WW0v?= =?utf-8?B?clI1V29XV1ZyQUJSK0g3cDNQVGkxanZTUGVpam1VcG0xb0dsTk9zRXhRN0pU?= =?utf-8?B?amp3UVV0ZGpDM3RkR0ducnFWYkcyMU52UzBDMUZBanRLdTh5OEI3allOWFJC?= =?utf-8?B?eEx3TWI4eDJadDFuWmcrSEhkT0JOa1E1NnBFYjRkb0VsQ01WUVYxZlFmU0J2?= =?utf-8?B?bWc2WEREeUlEb1JTOEJ5QzgyeGFKMDI1eE1nOC9YQUZJRGlsTEFUczZhT2Q0?= =?utf-8?B?dVFPZFc5Y2lJVmJYUm5MQkJHZ1p0M3VXcWFiRkU4MEk5TjZGUlQzZ2toQUpv?= =?utf-8?B?NE16Y2gwZitZTnRVbkhES3RFcHVIU0oyVUxNL0g1Y1p1cjF0K0dxTk5BZm94?= =?utf-8?B?cyszVXRiYVpvcTkrTy92RjBsU0FsamRsUDE5d3pOSUhQZzg4aVE1bWxjUzFO?= =?utf-8?B?Vk9sUC9ReEFBWkgzdVpzV21ScEpoMFZ1QVJYM3RXb3Q2YStvcEJQWDJ3OGV3?= =?utf-8?B?SXYwRWlnVlZGMVBzb3dNRjBLU1BzellWa29SRkJxYXlBbWovVm5xa2V6Qkxq?= =?utf-8?B?TUhXQ2ZjK2s5MEJiRmdidEtGOUVsb2k2MVl1ZXM0OUNjSnl3UmdRNkltYVZm?= =?utf-8?B?MjhmTlZHcWxpalp4Q0VHbFEzelR4ZG1oNEQwKzFOUVJlaW1PK2ZPS1E5dkpI?= =?utf-8?B?NDE2TW8yd3g0RFp0U3JCWkkzSjZxSVNtWE1KM2RZT1ZEL0RpN3M4RVNvT3hx?= =?utf-8?B?K1FUUmpjVXRGd05DUjdUbDI2NWd5aHZUMjRIT0RPYXdhZ0FWTmREdlExZ3Er?= =?utf-8?B?eU1DZE1hSnkwSmUrdWJzTDhEbUgrWVdNa1RrSTR6cE4yMnhQMjRncWxaSjBE?= =?utf-8?B?Vi9WVmNlaTh4WUQza2s2WFAzT2hyUDl2NGhuRTZSNDMzaHE3dmNLdHpNOS84?= =?utf-8?B?Sk5ZWlcxZDdhUy9DSjR2MytZWGE1ZkxOQWliR21lcEZBM2JCS3ZES052UnVw?= =?utf-8?B?YzZqMUpZb2dRTHZTUGtZZmxNWlFaWVlwMkFjZFF0RFJYdUtXVS9IQjVGenps?= =?utf-8?B?ZmVMNkFna1pGSEFSQS9yT0VWWWZSeC83cWlCRUFKTlFmSlpVQU1nRDc2WVk4?= =?utf-8?B?V2ovNE5VRFJ0Mk02T2s0SFdYTDR4NmFxTnNxc0IwL1NTK2o4bW1Fc3N5VHU1?= =?utf-8?Q?noyqChFmYUO/2UbqkrgWL0k5m?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: e5HiWATqrdM+4Rc2oHLCLTYmQMOWrC9Ly2+iGCPu02BZA2MHW9O825Tvq7pd0uvGWHHS5YIEEyrL3rpEySep2pJHL1QPhPHlSaGY6P4osBnqQGSHu2MPZ6mAQmBz/UvF8GJAG4bzUXBvlrA7EvkbVhsiu9lcNEgTkjB/KbtbIrXSsZnf1Uw+ymuxFlVgzMT2jUvxTgcXpC/bK+aZrAC0e3e8lVwj3+P8PoOhyUHNFabyfokl6FI6uclkp2i7tK1oUlKea2HxtiZCvS7s8dqMwW6UrSNzg6LEezXoQKO3UbSyuIJaw3ApEpyaaNmSXuD9OJECNY22Xz6ZO8wbLfuhQL8ufLhAQwcrCjgqRoNGH0x9NoSTyM9KMZjNRvUpHTFSMz7vPd0DYyYarWK2iYAbstlTZkmiDy+B9OkVKCtqYegq+l6b0+jX/QIGkWg2kLgdIm+5j7P8AOd5itfK3vWZ4QZp2bJVm2jjHSMDCOtiaBfOmefiNkKQrIzDzYSYuPgfBNmK9laTV33HydDgOigiX9vsvEHVUS4NBJ9CItfp9z9l8wym33MwZPTj/lWc0dyczZnxFECj/uEvi1DxMtr4wC8hi3Vf0uZUdNzU1SnzAMjiZCVfh1BimLMTD6fo5v0vxy4VYDuAONwNE5FEXCRt9FCXyUrQSpabmuplxcYb8MSxon14/tXRzNKUcCRI0luRPBMsJq1lIfipKx7lb7BZR9GCGwWP9Ro/bMrlbNhQ3590/eNVNhLnBC3wc9lNF1L1RKIgwMui/oEjzMdVfAn66c3X5kYyMEgfsup2dLp0OlLRa5jVcgZa2sdo5w3uEn/nlB+QRq5UyXAvDXHuPIuZtMRAh/ViCHRm67y3KMNx21s= X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 421cb925-0e70-445e-c9e5-08db65d71a4c X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Jun 2023 15:11:14.0552 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: u9AVHQ/pDg0HB8/RCSwopIIhlYOzhzjnroFr1Eb2ZcHgSsYb0LVbpMFlSDa8sDFzabfVTMW8YwmYHNVsrUJukQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH0PR03MB5988 As specified on Errata 1474: "A core will fail to exit CC6 after about 1044 days after the last system reset. The time of failure may vary depending on the spread spectrum and REFCLK frequency." Detect when running on AMD Fam17h models 30h-3fh and setup a timer to prevent entering C6 after 1000 days have elapsed. Take into account the TSC value at boot in order to account for any time elapsed before Xen has been booted. Print a message once C6 is disabled in order to let the user know. Signed-off-by: Roger Pau Monné --- I think the only 30-3fh model is 31h (Rome/Castle Peak), but I've coded the check as to allow the whole range. --- xen/arch/x86/acpi/cpu_idle.c | 3 ++- xen/arch/x86/cpu/amd.c | 42 ++++++++++++++++++++++++++++++++++ xen/arch/x86/include/asm/amd.h | 2 ++ xen/include/xen/time.h | 1 + 4 files changed, 47 insertions(+), 1 deletion(-) diff --git a/xen/arch/x86/acpi/cpu_idle.c b/xen/arch/x86/acpi/cpu_idle.c index 427c8c89c5c4..452cba3fb953 100644 --- a/xen/arch/x86/acpi/cpu_idle.c +++ b/xen/arch/x86/acpi/cpu_idle.c @@ -50,6 +50,7 @@ #include #include #include +#include #include #include #include @@ -643,7 +644,7 @@ bool errata_c6_workaround(void) x86_match_cpu(isr_errata)); } - return (fix_needed && cpu_has_pending_apic_eoi()); + return (fix_needed && cpu_has_pending_apic_eoi()) || amd_disable_c6; } void update_last_cx_stat(struct acpi_processor_power *power, diff --git a/xen/arch/x86/cpu/amd.c b/xen/arch/x86/cpu/amd.c index 0d3143031b5b..728fa61a54bb 100644 --- a/xen/arch/x86/cpu/amd.c +++ b/xen/arch/x86/cpu/amd.c @@ -50,6 +50,7 @@ boolean_param("allow_unsafe", opt_allow_unsafe); bool __read_mostly amd_acpi_c1e_quirk; bool __ro_after_init amd_legacy_ssbd; bool __initdata amd_virt_spec_ctrl; +bool __read_mostly amd_disable_c6; static inline int rdmsr_amd_safe(unsigned int msr, unsigned int *lo, unsigned int *hi) @@ -1189,3 +1190,44 @@ const struct cpu_dev amd_cpu_dev = { .c_early_init = early_init_amd, .c_init = init_amd, }; + +static void cf_check disable_c6(void *arg) +{ + printk(XENLOG_WARNING + "Disabling C6 after 1000 days uptime due to AMD errata 1474\n"); + amd_disable_c6 = true; +} + +static int __init cf_check amd_c6_errata(void) +{ + /* + * Errata #1474: A Core May Hang After About 1044 Days + * Set up a timer to disable C6 after 1000 days uptime. + */ + s_time_t; + + if (boot_cpu_data.x86_vendor != X86_VENDOR_AMD || + boot_cpu_data.x86 != 0x17 || + (boot_cpu_data.x86_model & 0xf0) != 0x30) + return 0; + + /* + * Deduct current TSC value, this would be relevant if + * kexec'ed for example. + */ + delta = DAYS(1000) - tsc_ticks2ns(rdtsc()); + if (delta > 0) { + static struct timer errata_c6; + + init_timer(&errata_c6, disable_c6, NULL, 0); + set_timer(&errata_c6, NOW() + delta); + } else + disable_c6(NULL); + + return 0; +} +/* + * Must be executed after early_time_init() for tsc_ticks2ns() to have been + * calibrated. That prevents us doing the check in init_amd(). + */ +presmp_initcall(amd_c6_errata); diff --git a/xen/arch/x86/include/asm/amd.h b/xen/arch/x86/include/asm/amd.h index 09ee52dc1c09..c54bc6a8903f 100644 --- a/xen/arch/x86/include/asm/amd.h +++ b/xen/arch/x86/include/asm/amd.h @@ -157,4 +157,6 @@ bool amd_setup_legacy_ssbd(void); void amd_set_legacy_ssbd(bool enable); void amd_set_cpuid_user_dis(bool enable); +extern bool amd_disable_c6; + #endif /* __AMD_H__ */ diff --git a/xen/include/xen/time.h b/xen/include/xen/time.h index b7427460dd13..99a91579438e 100644 --- a/xen/include/xen/time.h +++ b/xen/include/xen/time.h @@ -53,6 +53,7 @@ struct tm wallclock_time(uint64_t *ns); #define SYSTEM_TIME_HZ 1000000000ULL #define NOW() ((s_time_t)get_s_time()) +#define DAYS(_d) ((s_time_t)((_d) * 86400000000000ULL)) #define SECONDS(_s) ((s_time_t)((_s) * 1000000000ULL)) #define MILLISECS(_ms) ((s_time_t)((_ms) * 1000000ULL)) #define MICROSECS(_us) ((s_time_t)((_us) * 1000ULL)) -- 2.40.0 From xen-devel-bounces@lists.xenproject.org Mon Jun 05 15:20:41 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 05 Jun 2023 15:20:41 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543777.849025 (Exim 4.92) (envelope-from ) id 1q6C0Q-0004rb-3j; Mon, 05 Jun 2023 15:20:26 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543777.849025; Mon, 05 Jun 2023 15:20:26 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6C0P-0004rU-WE; Mon, 05 Jun 2023 15:20:26 +0000 Received: by outflank-mailman (input) for mailman id 543777; Mon, 05 Jun 2023 15:20:24 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6C0O-0004rO-LO for xen-devel@lists.xenproject.org; Mon, 05 Jun 2023 15:20:24 +0000 Received: from esa2.hc3370-68.iphmx.com (esa2.hc3370-68.iphmx.com [216.71.145.153]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 7b52d556-03b4-11ee-8611-37d641c3527e; Mon, 05 Jun 2023 17:20:21 +0200 (CEST) Received: from mail-bn8nam12lp2173.outbound.protection.outlook.com (HELO NAM12-BN8-obe.outbound.protection.outlook.com) ([104.47.55.173]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 05 Jun 2023 11:19:54 -0400 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) by DS7PR03MB5446.namprd03.prod.outlook.com (2603:10b6:5:2c8::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Mon, 5 Jun 2023 15:19:50 +0000 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::192:6bdf:b105:64dd]) by SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::192:6bdf:b105:64dd%3]) with mapi id 15.20.6455.028; Mon, 5 Jun 2023 15:19:50 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 7b52d556-03b4-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1685978421; h=date:from:to:cc:subject:message-id:references: content-transfer-encoding:in-reply-to:mime-version; bh=LngzvLf2RgQS8fhaIXBu4BEX0db3So4QDuu273c8QJE=; b=fwEDY7BENyl4X79bqMMqrycW1TEiC4A8yxLs7HIanha90f3CQMRSlZfA N3E7R0UNI49Y9P5p5bw8DR0/K4caizg5NqPy5CGWdX67MruNL/Vjk5BlR cMUPpmBl+WCVbP41S4BquHEH1KhYFdnh6EIn96NI6Mh0yt6vG+/LPg2AO U=; X-IronPort-RemoteIP: 104.47.55.173 X-IronPort-MID: 111528357 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:iYiPNKOquGy0GkvvrR09lsFynXyQoLVcMsEvi/4bfWQNrUoh3jdSz mNNWz2Ab/eJMWLxc91wYY/npBwEvp+Bm9NiSAto+SlhQUwRpJueD7x1DKtS0wC6dZSfER09v 63yTvGacajYm1eF/k/F3oDJ9CU6jufQAOKnUoYoAwgpLSd8UiAtlBl/rOAwh49skLCRDhiE/ Nj/uKUzAnf8s9JPGjxSs/rrRC9H5qyo42tG5gBmPJingXeF/5UrJMNHTU2OByOQrrl8RoaSW +vFxbelyWLVlz9F5gSNy+uTnuUiG9Y+DCDW4pZkc/HKbitq/0Te5p0TJvsEAXq7vh3S9zxHJ HehgrTrIeshFvWkdO3wyHC0GQkmVUFN0OevzXRSLaV/ZqAJGpfh66wGMa04AWEX0uNcXXgW+ /s6Eg0uRTnajr6S64uFdPY506zPLOGzVG8ekldJ6GiDSNwAEdXESaiM4sJE1jAtgMwIBezZe 8cSdTtoalLHfgFLPVAUTpk5mY9EhFGmK2Ee9A3T+PdxujeIpOBy+OGF3N79YNuFSN8Thk+Fj mnH4374ElcRM9n3JT+tqyv127Wfxn6kMG4UPI3iyNBYiUTP/2coCRYnFniCrqLpqEHrDrqzL GRRoELCt5Ma5EGtC9XwQRC8iHqFpQIHHcpdFfUg7wOAwbaS5ByWbkAmZDNcbN0ttOctWCcnk FSOmrvBGjhHoLCTD3WH+d+8tiiuMCIYKWsDYy4sTgYf5dTn5oYpgXrnTMtnEaOzps34H3f32 T/ihBY5g7IfnMsazZKR9FrMgy+vjpXRRwtz7QLSNkqv4xllfoeja8qt4ELC8PdbBI+DSx+Ku 31ss8qT6vtIEpCOkCWLTOgXNLWo4f+fN3vbm1EHInU63zGk+nrmd4YA5jh7fR1tKpxdJmSvZ 1LPswRM4pMVJGGtcaJ8f4O2DYIt0LTkEtPmEPvTa7Kif6RMSeNOxwk2DWb44ownuBJx+U3jE f93qfqRMEs= IronPort-HdrOrdr: A9a23:FWIP0K1yR8CVCSfWIebFVAqjBLwkLtp133Aq2lEZdPU1SKClfq WV98jzuiWatN98Yh8dcLK7WJVoMEm8yXcd2+B4V9qftWLdyQiVxe9ZnO7f6gylNyri9vNMkY dMGpIObOEY1GIK7/rH3A== X-Talos-CUID: =?us-ascii?q?9a23=3AaJa1Mmt3po/ldb2UFpgElnA06IsgWSHElHnXAXW?= =?us-ascii?q?FKk1AEbTJbXSpxp17xp8=3D?= X-Talos-MUID: =?us-ascii?q?9a23=3AD58NyA4LJxiV/Gxn40J35fgixoxYuZqAOkkUzaw?= =?us-ascii?q?NgMiPBG9TAjjG3Ba4F9o=3D?= X-IronPort-AV: E=Sophos;i="6.00,217,1681185600"; d="scan'208";a="111528357" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=NlR+EgknHeCoH4CQQGMbcsT4+cxt3ns982BupjHlhnAsCfCCtfZxvvVBd+krjoTQjFgEvxSrjTrtMRb3PtB2vU9CNKN9i7Dst+HN9Cx/GT/LggAMVNuP2trieUmwq0UUpVmcnJwkgSJpjHe7lIogan/LSFPRik8mH2YeVFb/lZGpwsVLtVXGVflz0R1dQDXbWTCzSW2OUOiDaNL9RvN0Tckpt0R06XEhuLIf2sSJwwjnpHDWesYsZGFm9PzQ3WQm4Vb/Q6LeiNbda8oVE+7KCW12FNEiRwKeAX/oLETzAETv7w9vawL8rk3DMJTf3TPOsl7RsBjf7+9lis9NcvoQAQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=at3hdDeS1LxSJSka4aSHh8Kb5rYYYjt5Q9DUGQCnyhQ=; b=dvkWHnOlGd9LtSnLHtbqb9QvCDk1QwIqxXqiArvjJYm/i85SxprsTbQwmuLJBt+0AG6MEUAt8oQamD6hz3FONjbpxvw9Z+LCBtZ4zdkXQB0FC7FutzYr5PsPRniSBSLtXcx0rrB/G3Wufw5Dkq+VbXO04DqvZFrfwEEwtTAxxBQvEH8biVbvBbVcNml1otOkJgNL51uhtgtXEmc5wS+BZiZ+qdVTZUQZXxkqLA3+v2fNrteGnWjbC1mawyJXu0ckdce0tNdrC90p7I2Y/K6is6B3YNkOOQzCziKMPEDXV5QQ3s9BC8z+BeVM7LuiA13fmjJRNraZOa7vnC7IrWmM2g== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=at3hdDeS1LxSJSka4aSHh8Kb5rYYYjt5Q9DUGQCnyhQ=; b=m2sG7D/MIFmeMNIONkgEm77QUhiIHTbjmNaL1boIuuqtg+cqBKlKeEXx7osZSFSSfFnx32dsRl8uDzN/WND1COyu6B3wmdLFqrN113wgybrU49406S5B8oPbbSxmuvvsQNQM9o8sA60d3oBS3jW3hdiuWHOY1irlyp8E9lS5ePc= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Date: Mon, 5 Jun 2023 17:19:44 +0200 From: Roger Pau =?utf-8?B?TW9ubsOp?= To: Andrew Cooper Cc: Xen-devel , Jan Beulich , Wei Liu , Stefano Stabellini , Julien Grall , Volodymyr Babchuk , Bertrand Marquis , Jens Wiklander Subject: Re: [PATCH 1/2] x86: Introduce arch_domain_teardown() Message-ID: References: <20230605144331.1819452-1-andrew.cooper3@citrix.com> <20230605144331.1819452-2-andrew.cooper3@citrix.com> Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <20230605144331.1819452-2-andrew.cooper3@citrix.com> X-ClientProxiedBy: LO6P123CA0052.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:310::10) To SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|DS7PR03MB5446:EE_ X-MS-Office365-Filtering-Correlation-Id: a76527aa-a9db-43c1-f1f6-08db65d84dd4 X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: q4CssrcbggcteTvrZg6kEXXwH+s7o79EOHO55aKU8FiA31ix+lKYdNcgngCyjKLiQ4Bg8xfC8iWwN9iTXEGdsCF1e2G3cvKX3kmR/Yw51LUsrdT4MlE1SOg0NYGoGjYYRTf0paCe1UiwBLh5D0eJI1c2T3Twz7pdWW2GNmkHdOHaoB/Up8wekudXgBHUXT53FmA917JV+o7hLZ5fDkKXh0+Gn8TjV6gua2dMwhTwkGnz1h0ZM/oKspBFZDd4NGhl5TOhfQAN3I/q34uI25Jq68AdZbWehz4b9BHCBZIOrgaiYfC6TwfKvD7WXBk+VysDcAAFI8VOrjwoKvkobyBLbJM2Mo+WjyMiyyzG3h1BO/8PwJhhYobnxc8JfFgDRS49tA9Jv6xk/GOxPooEJ0N/Qz947845YcDoz3Pckii7EeVRUUZZVOLDLoa7KluqUIHxG3S42LzL/RWGnxiiwGhh9QpVoesX+/XyaqscD3K50qAVugI/vCFLMKRJN4Zd1J2mkmWu+7NltVPRTsQflkAX/jTjsiEB8ITTDdmkNleqxQn255/0NkAUtVmqyuRABokz X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(7916004)(346002)(376002)(396003)(366004)(136003)(39860400002)(451199021)(54906003)(2906002)(85182001)(33716001)(478600001)(86362001)(38100700002)(41300700001)(8936002)(8676002)(6862004)(5660300002)(82960400001)(316002)(4326008)(6636002)(66556008)(66476007)(66946007)(6506007)(6512007)(9686003)(26005)(186003)(6486002)(6666004);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?NWl5U1VCVkgrczlCZTIyUUtCOTdvUEV6a3ZjcVlHRlVjLzVqQVRaejA5NDdH?= =?utf-8?B?Vlp5NGtTMTJjVTUxV2lhcEdwZmR5WVZxMHA0WWVjYUFjbUY3Rmd1ZHV0UGVs?= =?utf-8?B?dW80WFQ1blcvZDhGTGh4LzVSckRnd2ZmZW9SeFNKeVIraVhlajFKY1RCRlYy?= =?utf-8?B?a3lZUkNweXRmcmtkMFYwL0xPQTBLcUhOYUhIMk4rQVN3VjV5RHg4b0N3KzhE?= =?utf-8?B?bFRJa2JFMEt5QTk2QUZoQldXRk9vT1l5cW5uWEwrYmR0cVErVzJNNWpoOFBP?= =?utf-8?B?eFhNLzMzMW5DNjNZWnU1akJiQ2w3MlVoNmNDVGZXT0EvZjM0NHh2TWZLcjEr?= =?utf-8?B?WFpiN0VsQXBZcUFETnNad09wS0FPOWdFMnVqeTc3bzRVaEw0QVlZZkJvbFFu?= =?utf-8?B?b0tBejI2VXNjcGRJVWZSRlNJd2xvbnM5Z1QxZHl4SzFyZ240ZDFSZHJYNFNG?= =?utf-8?B?bDg4TkdPdWYwb05LczBJb29tY2IrY0xZczhseGpwRUNqYWFkN3RraEx6MTUz?= =?utf-8?B?SzllZ0IzRUpSLzNKYXpJUEF1N3grK2RLc0N5cU5UdlkxZklhS1ZDazlDUFpM?= =?utf-8?B?UWxLWlVaM05XM0pMN1lVcVRUQ1lBQnpMLzk3WmdxUDJjb3FKZVhnbU1CVlY1?= =?utf-8?B?RFQ4RmdqbFpuc3VsMkhJRnNCNE1EcExlNDJwKzIzMnJnTEhFeno3Znlwcyti?= =?utf-8?B?QmVWTzQ2QjdLdFRZeVJ6TFRDUk9VcVZLVkNJbEp6OVJhTVpnK1RyOTNzQkJT?= =?utf-8?B?cEkwOWtGRWJzSFRWK3Jsc2JIbVZ1d212N1dLL2Jkd0wwc3dMOXBLMWM2bDh4?= =?utf-8?B?SDJGY2lMMTFRb1BGSy84SmZyU1pVa0lOZ0tuNHVjV1BsazRrUkpoWW5uaEFX?= =?utf-8?B?TGxvbnF5KytBWk5WTWFqY3FxMDJyVWh3MndmRDc1NGhNaGZ2Y3BYQnZDWHp4?= =?utf-8?B?SjFyRmRJUWdrS1V1NmNJTG1wMjZPM2tyM0JPd1VhY2lMMXpuKzkrT2FZQzBv?= =?utf-8?B?UmkyYmRIcW5lalJUc1pXVEhFdUpZeGhkOVpTSENjYisxcXlpRzIyTFdPaGZx?= =?utf-8?B?cnRPUkpzcFBuUGpyRUlENHlWMks1Zmk5ZDFJRG90RHBzZWNKYmcrU25TL3NR?= =?utf-8?B?d0graytkbUdOTkwySFE2dXBlbU5iZjZOMEZMMU5td0djYlR2ZXJXM1dyVTdC?= =?utf-8?B?MVNlWkRzMjgzVmdmazBrYnF5cHU2Y2M1SW9NM2NlcU83NFhrWS8rUjI1QTg4?= =?utf-8?B?ZHFOZ1IrOTRucDhxRVcvaGh1d2RlTCtlMlBFVmE3RzNPZjJtK0luWllTVlp2?= =?utf-8?B?eUhET2V0ZEdZQVhzOTVkZTJaamZld0tDY2Q4bHRHUU81cnpzcUMxYmhYeU5P?= =?utf-8?B?bkdSQkR0NEwyM2tKUjdEWkVLd0Z1QnNzVmovR21xV1YvdWdWWnJWOHpLTWwr?= =?utf-8?B?d21HdFdweFIvaWVPZDdpMGVFTHhwK1NJYTVLaUhDcDlwR3JBTThaandPZitt?= =?utf-8?B?dGVaSlNDK0Q5cmFLRU14RnIwZ05BbEc5WHV2VGwrVmpCSXMxaUdZeVMwbFps?= =?utf-8?B?dkdJNUtmM3BrL2YvYW1hSGxMTGNXdlc0L1UwTlkxOEJrc3BheEd1dW1XalhY?= =?utf-8?B?QVppbmNZVmxnRVVWV0ZMeFArQWtiQUgycE5hN2Q0NnZuZHJsTFlGckdKZTJR?= =?utf-8?B?YVpPbU1ib2ZWYTBYRDVPcFF3NWQ0WWhuUTMySkdhSW1SZjFQYXQ2cExNSkRQ?= =?utf-8?B?dlowdnczenpPUjdZMTFmTUp3R0lpWU5wWUw1UmZKbnQ0aU5pQXVIQmNaN0w2?= =?utf-8?B?MEU2ZVVVdTRkTHBGOER5WXJpU1ZjWEd1QnR2Sm1mejRaY01kcWk3NU9lVXV2?= =?utf-8?B?UU9UZHh4cGRYNmhqTDZ6NUFiVUxveGtoZHJoU2RBY3phbnVHWXl3U3dmU0hS?= =?utf-8?B?a080U1FKN3oxWW81RlhQcGlLSWV6TUlIeTFXYm1kd01kaC81Y1dyb0g5YUFO?= =?utf-8?B?NWlXVHpVN2pSbDU0ODZqOXk4bFpwNWp1SCtxTDlzR0dTU1J6akRva3h5ejls?= =?utf-8?B?Z0JRTVVObjRFRmV4cnZmSFV5VFU1QlBFbnF5SXNBQUxLbmxLNmJ4aHFtdDBN?= =?utf-8?B?Si9kbkcwZlhGRnNudDFoTVhud3g3V1B3em9DMXJLTThnaGJuaUtLNTc1K3lB?= =?utf-8?B?bUE9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: iG8DR3LW88VC2m5+n4b2EYDtV01bqQBHgxr8wOlkkCsaGn07t8Xl52nQMegPVwoQGOevlGM86e0X6l8kIIoRiCedPhtEmWjEmQk3sQdLWJcMp7r2wukmkfaU8V2+9poREPx8/bPq6rD9ciuL9+SljNPZJIVXz1xh00mqGjsUay+ahnC16zsvx1NffsCraXO292tr2QV86GX2FmjtUfe0nAqgidevVuwuBvx6KXfSPBj3A9fhitN2zVOX7nYLV+tT0axtP8VuM5JqjG/wOKy68CPGfU4yLZaWx0ijGA5iiVAiE8pgAlmskojI9GocoT3j6Cac8u3Ly53RT/YZ//aQ3PsNfZChOd9i+AdAhQhnPgQ3wt8Rc2A+Oet9NuoHwgR6C2fhyeaYZLyrujGm/giRR2D3bRtnMXBkQYFxWHB09BcdW6irPk7J4SJRA/SHllqiYn9zX0cPiKv+Gk0MTBM278OIlb56WHznmpBvLi/iF3cmEaCVkTPAxp80drqhfilFgHnJtfqmGtZi9b6hP5qbXyc/od11ViyhoRbTXeWO7mh36gtOfoBYW0BSJPcvHgSd+pPqE6kiAdarMfcTcL1OSfJqYarRDS8G+exUWl0WWKbIuQNy7sEIhSFYQPuN53Lc34Qr0Y9lhiA2Ib8xY8qLiXf+3UPZqxaR9mtoEamRU6NJR4MxUHxEAGaLt0eSO5j0YoRso1fR+vxit0E+t9vdTtfaAse2yf7PFKkgTVjZkUuZ9N4FRqbrHxkaga5Lny1diGKhmaqZafvJgnU0SodEwiH0MjmqVXYmJTJ6lvUiytYGyQPOrG1JtFKa0+MBo04xyDL0lIzZdLaIp7FJSK/BCy3G833qdsV9l2t1H5Gs9EyNJe3YuqinCKTN85Pjp0frNr2z31zX3UQJcsnQb3foklSYOxYRm4/tq/JV4m6TQx8= X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: a76527aa-a9db-43c1-f1f6-08db65d84dd4 X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Jun 2023 15:19:50.0068 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: FskzBNBPCBMzOwcsNYWb/THyOfxd1J9nYYHPNnMfB9vo3Ib/O6pBaDBTMWgSjLVUto9sf9qwC6g2Npp2jbOQVQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR03MB5446 On Mon, Jun 05, 2023 at 03:43:30PM +0100, Andrew Cooper wrote: > Plumb it into domain_teardown(). Provide arch_val in the teardown > continuation information for use by arch_domain_teardown(). > > No practical change. > > Signed-off-by: Andrew Cooper > --- > CC: Jan Beulich > CC: Roger Pau Monné > CC: Wei Liu > CC: Stefano Stabellini > CC: Julien Grall > CC: Volodymyr Babchuk > CC: Bertrand Marquis > CC: Jens Wiklander > --- > xen/arch/arm/domain.c | 5 +++++ > xen/arch/x86/domain.c | 5 +++++ > xen/common/domain.c | 6 ++++++ > xen/include/xen/domain.h | 1 + > xen/include/xen/sched.h | 1 + > 5 files changed, 18 insertions(+) > > diff --git a/xen/arch/arm/domain.c b/xen/arch/arm/domain.c > index d8ef6501ff8e..b3981d70a442 100644 > --- a/xen/arch/arm/domain.c > +++ b/xen/arch/arm/domain.c > @@ -750,6 +750,11 @@ int arch_domain_create(struct domain *d, > return rc; > } > > +int arch_domain_teardown(struct domain *d) > +{ > + return 0; > +} > + > void arch_domain_destroy(struct domain *d) > { > /* IOMMU page table is shared with P2M, always call > diff --git a/xen/arch/x86/domain.c b/xen/arch/x86/domain.c > index 39c215316546..5f66c2ae33d7 100644 > --- a/xen/arch/x86/domain.c > +++ b/xen/arch/x86/domain.c > @@ -888,6 +888,11 @@ int arch_domain_create(struct domain *d, > return rc; > } > > +int arch_domain_teardown(struct domain *d) > +{ > + return 0; > +} > + > void arch_domain_destroy(struct domain *d) > { > if ( is_hvm_domain(d) ) > diff --git a/xen/common/domain.c b/xen/common/domain.c > index 6a440590fe2a..b0d850e3595b 100644 > --- a/xen/common/domain.c > +++ b/xen/common/domain.c > @@ -416,6 +416,7 @@ static int domain_teardown(struct domain *d) > PROG_none, > PROG_gnttab_mappings, > PROG_vcpu_teardown, > + PROG_arch_teardown, > PROG_done, > }; > > @@ -436,6 +437,11 @@ static int domain_teardown(struct domain *d) > return rc; > } > > + PROGRESS(arch_teardown): > + rc = arch_domain_teardown(d); > + if ( rc ) > + return rc; > + > PROGRESS(done): > break; > > diff --git a/xen/include/xen/domain.h b/xen/include/xen/domain.h > index 26f9c4f6dd5b..c3348c90748f 100644 > --- a/xen/include/xen/domain.h > +++ b/xen/include/xen/domain.h > @@ -80,6 +80,7 @@ int arch_domain_create(struct domain *d, > struct xen_domctl_createdomain *config, > unsigned int flags); > > +int arch_domain_teardown(struct domain *d); > void arch_domain_destroy(struct domain *d); > > void arch_domain_shutdown(struct domain *d); > diff --git a/xen/include/xen/sched.h b/xen/include/xen/sched.h > index 85242a73d374..854f3e32c00e 100644 > --- a/xen/include/xen/sched.h > +++ b/xen/include/xen/sched.h > @@ -589,6 +589,7 @@ struct domain > */ > struct { > unsigned int val; > + unsigned int arch_val; While I haven't looked at patch 2, wouldn't such continuation information better be encoded in arch_domain in whatever way is more suitable for each architecture? Thanks, Roger. From xen-devel-bounces@lists.xenproject.org Mon Jun 05 15:23:22 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 05 Jun 2023 15:23:22 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543783.849036 (Exim 4.92) (envelope-from ) id 1q6C3E-0005QO-Iu; Mon, 05 Jun 2023 15:23:20 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543783.849036; Mon, 05 Jun 2023 15:23:20 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6C3E-0005QH-Eb; Mon, 05 Jun 2023 15:23:20 +0000 Received: by outflank-mailman (input) for mailman id 543783; Mon, 05 Jun 2023 15:23:19 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6C3D-0005QB-Of for xen-devel@lists.xenproject.org; Mon, 05 Jun 2023 15:23:19 +0000 Received: from esa4.hc3370-68.iphmx.com (esa4.hc3370-68.iphmx.com [216.71.155.144]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id e4ca741a-03b4-11ee-8611-37d641c3527e; Mon, 05 Jun 2023 17:23:17 +0200 (CEST) Received: from mail-mw2nam10lp2106.outbound.protection.outlook.com (HELO NAM10-MW2-obe.outbound.protection.outlook.com) ([104.47.55.106]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 05 Jun 2023 11:23:14 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by PH0PR03MB6382.namprd03.prod.outlook.com (2603:10b6:510:ab::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.28; Mon, 5 Jun 2023 15:23:09 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::10bb:98bc:e36d:36ab]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::10bb:98bc:e36d:36ab%3]) with mapi id 15.20.6455.030; Mon, 5 Jun 2023 15:23:09 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: e4ca741a-03b4-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1685978597; h=message-id:date:from:subject:to:cc:references: in-reply-to:content-transfer-encoding:mime-version; bh=Q4uifKXT7mnt79t82TjeurDL8pBGbX3RybtiU0oNCUo=; b=Ub+kHl4+/JGVEYVxg/wGUJBUmQFEhRPimAtb8qul7AioEXM5E1y927gX ee+CbgrkJ5RIH6sc7olPTgeQUHWDu5fLWvdBsYewVAk1ECxeUs93zg/g6 Carh86wCRvU9pefdGadBGocjyix1MlujA+97T21F3kQc2MDWUFLFDUCym E=; X-IronPort-RemoteIP: 104.47.55.106 X-IronPort-MID: 114143393 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:E18tRaMK6H3JHdbvrR0BlsFynXyQoLVcMsEvi/4bfWQNrUokgzIBn WoaUDiOOq2KNjGne9xyPoy/9B4BuMeDzYBgSQto+SlhQUwRpJueD7x1DKtS0wC6dZSfER09v 63yTvGacajYm1eF/k/F3oDJ9CU6jufQAOKnUoYoAwgpLSd8UiAtlBl/rOAwh49skLCRDhiE/ Nj/uKUzAnf8s9JPGjxSs/rrRC9H5qyo42tG5gBmPJingXeF/5UrJMNHTU2OByOQrrl8RoaSW +vFxbelyWLVlz9F5gSNy+uTnuUiG9Y+DCDW4pZkc/HKbitq/0Te5p0TJvsEAXq7vh3S9zxHJ HehgrTrIeshFvWkdO3wyHC0GQkmVUFN0OevzXRSLaV/ZqAJGpfh66wGMa04AWEX0t97Mzxyy PkBFCAuYhHSvbun34uRUcA506zPLOGzVG8ekldJ6GiBSNMZG9XESaiM4sJE1jAtgMwIBezZe 8cSdTtoalLHfgFLPVAUTpk5mY9EhFGmK2Ee9A3T+PdxujCNpOBy+OGF3N79U9qGX8hK2G2fo XrL5T/RCRAGLt2PjzGC9xpAg8eWxH+iBNlJRebQGvhCmwei/l4iBEwqVmTjsOWitkfidv9BN BlBksYphe1onKCxdfHtUhv9rHOasxo0X9tLD/Z8+AyL0rDT4QuSGi4DVDEpQP4MudIyRDcq/ kSUhN6vDjtq2JWKTVqN+7HSqim9UQAONnMLbyIASQoD4vHgrZs1gxaJScxseIa3k9n0FDfY0 z2M6i8kiN07s8kP0Kmq+EHdtBilrJPJUw0d6x3eWySu6QYRTISofZCy4F7Xq/NJNp+ET0Kpt WIB3cOZ6YgmD5yLj2qSQeYJFbel6uytNDzaiERoWZ47+FyQF2WLeIlR5HR7Ox1vO8NdITvxO haL50VW+YNZO2asYelveYWtBs82zK/mU9P4SvTTadkIaZ90HOOawBxTiYer9ziFuCARfWsXY P93re7E4a4mNJla IronPort-HdrOrdr: A9a23:VWIMKqDZtbdCUcrlHemi55DYdb4zR+YMi2TDtnocdfUxSKelfq +V88jzuSWbtN9yYhEdcKG7WZVoKEm0nfQZ3WB7B8bAYOCJghrMEKhSqafk3j38C2nf24dmpM NdmnFFeb/NMWQ= X-Talos-CUID: 9a23:KzdmD2CzsRxBXQj6ExBrxhMoJ8U8Tm3+wHaBGRapFl9DU5TAHA== X-Talos-MUID: =?us-ascii?q?9a23=3A8QhHVg4eGtnUfHs5IQHdKhBYxoxzuZWWOnEBwKk?= =?us-ascii?q?FhJGVKTdMMmuwoSqoF9o=3D?= X-IronPort-AV: E=Sophos;i="6.00,217,1681185600"; d="scan'208";a="114143393" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=haHss/eT9ds9TWQj10wSmoVaEjnMNBKobIjHsIkhTShZjMZFtibaV/BLHeoOkr/ba4dAspC1eLJNpS+B6+BHAzVlJKfzGW1HsCVBuhuHtjILtLiB/q51089dqpjJrdGXlJ+IwdPN7IZscC53Ul6r80Qkhht2LHD0AHwL357qZOrvJ8Fr6sVTUbhBLPVvJxnRJDqi2QECmGDosp4dQ+d8szGfB3pfgM5uMMHAukq8qrAeZrmRVkVhLhzLQC6T6wBuMt4zbEETUphw09I3fKeYKt/GBCDfetr1KUekMQW+CMVwYQK3VOLq61wbDDAA2SayKoxc6rsL864XdAwb3m8/ng== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=OtYR9OauQ4RZbWEochYiUuExjjDEb9q4MEedW6x5fxk=; b=ko8yy+gt47gx4oNxgS7zc+kw9eVMF/lk+iGWsCKwOcyrzhEGlE8Y07tROZkGHmAbhRCF6WfdWRDLtGyUa6GjLxhpy7c7HdiqgGSpw5QPitrSBBJg/otaRZZWGsWBWPmhSBR3EJabs6RRaVOmXZjAy+ydNQoPNMPaDNUBPhqMkf1+Fha/2RM7K9Pe7hmBogKEvdsT4tLmCJtuAKurk8LcoXiC8PYsl0MqfHOX5Lp/xwmUS3VE3wiP2NbgSier9quDsHQduuSvVq9NyYr5EpftijF7Sra8xTVI27H3H6XgKUzCB8Q2fpuumiL2xlD5YwuvkHptd32vgx/fP/KhbzlYnA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=OtYR9OauQ4RZbWEochYiUuExjjDEb9q4MEedW6x5fxk=; b=VaOf15QigDYNkqgCgvZ1gozdQpAHWxfWkVvrGkzGv6kaA3BcmRskpD91iMLdN9qi6+EjzJZ6ivAvlMtfmjNxCFOeaCQMZ9BD9yhBpSoy3XWAPKJYkZ+HRdYFgLqfVJuGabJTo4K1YyDolw1VcyTA96daO07e5XdsXyiHzsUAxI4= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: <18a46079-8fa5-5e43-9296-56a8c6457133@citrix.com> Date: Mon, 5 Jun 2023 16:23:03 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 From: Andrew Cooper Subject: Re: [PATCH 1/2] x86: Introduce arch_domain_teardown() Content-Language: en-GB To: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= Cc: Xen-devel , Jan Beulich , Wei Liu , Stefano Stabellini , Julien Grall , Volodymyr Babchuk , Bertrand Marquis , Jens Wiklander References: <20230605144331.1819452-1-andrew.cooper3@citrix.com> <20230605144331.1819452-2-andrew.cooper3@citrix.com> In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO2P265CA0181.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:a::25) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|PH0PR03MB6382:EE_ X-MS-Office365-Filtering-Correlation-Id: 9e23fadc-1d4b-45ad-2468-08db65d8c495 X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: uGNu//MQROADntlMoEQ6z29wz6WWuOzG3R09vh0B7blJiPPHBaqfzJR74ybmnSn0xc6Zuwl8JTwFbrI+3ccWoDkmYECJZOpm0ROp37jMPAl8jsrOvTAg9ohtO/AnsiwI5ZZeuybtPVrZmKEyJyY3ZoXwwL1VrVAqJrov8FehP/EI1HRB1CME6wCpm0efguEb4M8UUqVUpWRm8w++1zDuI1pnoT3c7VtlM5Dp3kqX6991PPwKKIt8U1i9ALTm3Q32ZzXAdKKvrPRmeecIXDpo1RbV9f8rHg7YhCouYHP06kYK2QplHE5c9HfeqSm5OI2l666dFTgrNc/Vu/IuUCQJsWHIPMj5adBUeegGoP+1/AHjMAZXjMXrsA/Rl1J0ohCqKhvIWGoJT8smJmcfs/zd6Z0D11D3O1rcUQ4WAYJx75UvJvfeUU1c/OokgPLIyefh7kuEPHVFTdAojhZG8o65Le7tIPwk3qFJBaBcZHkQtwxWKdw6+7gEkEY2JtzzWreEGGOiDruVd6hqFsXWLOKaP12j3AVf0qfLro9IbvrbbLdHTNMjtgZF/eiVi+FKdYrVpfwcWCJBS23kpaARpgEaRScmqpxmQllHf2ZuJXz31nhVtCiBIQGfK95F1BPemXB9J6m4FgOT8ZHhczBi750nUg== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(346002)(396003)(39860400002)(136003)(376002)(366004)(451199021)(6666004)(38100700002)(31696002)(86362001)(82960400001)(478600001)(37006003)(6486002)(54906003)(6862004)(8676002)(5660300002)(8936002)(66946007)(4326008)(6636002)(66556008)(4744005)(66476007)(41300700001)(2906002)(316002)(2616005)(26005)(31686004)(53546011)(6506007)(36756003)(6512007)(186003)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?NHRCeFVWUU95REQ0MUpERXVFekpMM0hPUVJ2cDNZcm9OZ2psQnk3TWtxcXJm?= =?utf-8?B?SHM3bTA3TE1LV0FRV0ZkRWJZNzROeGh4cTNTYW9RTER2NXBJSjlrdGFBdFZv?= =?utf-8?B?VXFtWDJRNnlUc2p3amlJajIxSCtsampja2t6OEE2YURFS0hxeko0K0wxVTB0?= =?utf-8?B?TFQ0ckR4cDFHL2JsR21NenRRTnQ1ZHlDQXc3amRQczRORTB2Y2hFaGpZUVZR?= =?utf-8?B?Nzk2T2pLc0NIRVB2R2NOZUNGSXhTV29tVHRWeVFpN0crL0RySUVXUWVWVjZU?= =?utf-8?B?R240enNacE5aTlJWSkpHUjBsakhYVzdxZ050NmZxblFSRUgrdFRjU0ozR1Fl?= =?utf-8?B?UHBtNHJ1UytxYVVpa1NDRlhCY1EwMEFqaHBQOGxxc1BLOWNQY0VBS2lmTU53?= =?utf-8?B?OWh3VFpzOVMrejhrWHYxVUlJVmdOblQ4NFp4ckNUSVhvdXBsTGpZRGxLencz?= =?utf-8?B?OSt1bUJEOUt0cG9qU1dJajZlaUNlZm1VM3paWHBMa3IwRjRDNmt1SURldjBM?= =?utf-8?B?ZnlPWDZpdm50TzVYKy9IMGdaN1BFQ0VTZzAwSWFjNVc3ZDcxNS8vZVBUNHRP?= =?utf-8?B?NzYyd1Yva3NMWE5hZnhoaU5UVFhwOHhBSUpjNFQrQjVIR3QzdVUvSmVXaE1X?= =?utf-8?B?eCt1TzRZUG5oM3FxZUNFdVFzQnZ1RGszcm1UWWF1SkdKS2hUSVFIV2FmZXhG?= =?utf-8?B?bHFzNDN5bGtzelZDUjhYOTVUaEFwTzN4OS9VbzJUWE9qekhGL0dwc2NVblho?= =?utf-8?B?d2pSeUZGcUhEYjN6ZkVDQlFGQ3NiNlVQeHpNRlVsZHJjdWd5K3lMN3RuKzJI?= =?utf-8?B?ek81b01LTE5yN0FXQUVTREpyWnhPVkZhdDdySTBLamwwaGFPdGRlbWk2ejBJ?= =?utf-8?B?VWJ0REcwZ0xJVGt5RFZSZnM4UW5qK1piV05jVGw4anBueHpCbEdHMHRRMzVy?= =?utf-8?B?N3NPM1d1TEFNd1c5eWIxK2VkUFF4MUR1RzlRd2hXL09oYVUwTlloblFRQWJi?= =?utf-8?B?dDFiK3BXdEdsOFdtNGtqcVhVeGUySTZZRk9NeVpvUThqWE1LNFBFbE5GWVp3?= =?utf-8?B?TTNUYUVWNFlUd0V1UGY2TGtJbWNrMGgyNlh3Z3FkaUhYTkdDZlhVWG5JTHV0?= =?utf-8?B?dHVkYVdEVlA4b2xnd1JHZWZqWG9wV0xML3FRR2gzRS91NkExT01HQTRLeVhN?= =?utf-8?B?THJkTWFpWTRYMnQwRkJXSEc2OXAydUJDZWx0aEpSS1p3Vjk5T25WRG9WZ3Ns?= =?utf-8?B?b0JsK3lsblYxSmxnQzZyZ2FaWWEraHpodHVobjAzeE0zVDQ1ZEloeThtSXFu?= =?utf-8?B?NlI2UUxHenBpcnhadkZ5K0FsL3dlWER4Q0FZdTFUNDZxMG9KZEwwT0RuL2JZ?= =?utf-8?B?eDIxNXlsSGNHRm1BN0dZalkvRnBLc2Q0bXR3R1NkLzlXaFFtbUdZUDFvbFhh?= =?utf-8?B?TndidS9QdVFHQUNJQnBma2IzcFpIbEEwTHp5dysxVGpWYzd3STdrdEl3ZnJs?= =?utf-8?B?Y053LzhhN3gzVEozOUpsL2F3ZE02SmxURE1jOWt4UXBIeHIzQmVyRWhTenZO?= =?utf-8?B?VUlZUlZMbWo5TG9FanFpQVZiT3JtTHRJeElqVWdqRUNoT1luRjNCQTQxWUJ4?= =?utf-8?B?UFJ0Z1NLSnVVUXNuME5rRU5FaHorYzBXQ1ZpbHVMV0VOTmVxaDd6dHJHd0JO?= =?utf-8?B?d2xHa05ScTRnU1QyQ1BQZFdkUFAybmVDbkhaSS8vQVhlL1ltYXBOeXd6UklU?= =?utf-8?B?NGVieGJQQmRyV0JFVnd0TjVRaWNQcm53MGtlNjViTUdhNWwwWUlETmNqWlg2?= =?utf-8?B?eE5xaUJsRWcxeTRCL3pkWjZyOUkrTWtzZERMcXpSUUFnWjlsQS9Ga2xYenZJ?= =?utf-8?B?L29CTE5IS2pWZlp0bnpQMnEvSEEzVDNIOHgrcVcvWWJkSFp5M1JnRUR4MVVF?= =?utf-8?B?RkVyMHJUSXpobTZCRkUrZXc3RUh6MVpXa3F0TWZ3eUtaUmxzR0dQQ3BJNWZy?= =?utf-8?B?TU04S05hUStJR0tpeERsSmNJL3dDZ0lQRmNEU3lvVjBIb3R4T2JOaUlJOTBF?= =?utf-8?B?cTZXb1Y1ZVVoaDlMMStUV1ZrY1MzT2J3NnVNWU5sT1N0Y1pTL0FUWVJkK2w0?= =?utf-8?B?UHd4b1FGQVRNMXdCS2FHZnI3dzM5Q282cVBiOTdJZFFyRDJDcjk3bU5CMFpT?= =?utf-8?B?V0E9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: +JYfRibrsBLjOSWwvUsI0GYt+OjBuwV0rhkf5yOTSNnkkL5oZp3Gqlnf3mfSJyzg4iY6msI53l196srB2PKxutHqLLrzkPAzUwxWbyKlxSMkFhayNEJKNd1vZ30X0HeZStP9pNd0lB0RyoYUfPCC/qaBhNAfDG1IUyMyd2Or+x2KXMDBWorY/OIe7R1lTKMW2X2yR10hTiUFJI2KYDJFfyH+26ie8QAvZTjqqUt7OOzXeHuR9YZgXGMReC8ONSG/LWELwOtfhAPjWBAH6wPxRvHXDU0Zxx3T5rctbfvsaVD2v1aL0bVY6vWuuL4ekREjI5qyj9V7daDqGR+Xz530bzXHnmSStz+QDSiRzRkZALtrDb41fVlZkfr6+o3cmiB3HnfvtMt7d31lP9Wj/G7qXVFsDRClOU5PeQUg/cZ1vrWeJaZQEMLYpAXqdW2GIALptPPbuXq/5/HUMraLZyGddq/rmlPMBxvomWyXyGRN3u3QQAo/Kc6m5mlnat5sQxpGEBqQZdPtqtZK+KtfJzsarjsU4jqNqm0xbFI4SDSdTsoGpz+KdNGr92VQ0hAC52iZ7UgljY1Ez+wxejafDn6h4g+zVxkMAKw/9jdyqroR1QL2ge/PTypBN6F6myW4VV9BNGEUqK1dM60tcui7Nx6GU31QQ+kk/L9jukO8ebrahZkhulqUq1a2fyPCCR/qjkU5Pfx4J65ApiIuPLb3u7O6zWHl8h0JRRktmrGTWQkGEDGyZT9RzIIIRDIQ87CRh4w+ZYulc2z6uUfTVSH1zHfZWPRf9lEn4ojL1n1MvZ3grSXRrDAnXrFt1W7GcjEsqm23oZdHO0rf8+BpWvaJX3/uuhNp4TFg6NG1BWYehuz03K+3pxhQimgwRMU99mslcigolIw/BtzqMdd28XUPirNinFlP5fI5OHn2fa0rXiBJRQU= X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 9e23fadc-1d4b-45ad-2468-08db65d8c495 X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Jun 2023 15:23:09.0886 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: U7pNSRJVP04q3o9ADdJzqBveYKgKLCDOoKnr2C//vQAiz1FEHXjxTWebXSbQU5krgLeVPM6alLJHrND1Cnv8IJsAVxUfGNSQWEx/7Cgf43Y= X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR03MB6382 On 05/06/2023 4:19 pm, Roger Pau Monné wrote: > On Mon, Jun 05, 2023 at 03:43:30PM +0100, Andrew Cooper wrote: >> diff --git a/xen/include/xen/sched.h b/xen/include/xen/sched.h >> index 85242a73d374..854f3e32c00e 100644 >> --- a/xen/include/xen/sched.h >> +++ b/xen/include/xen/sched.h >> @@ -589,6 +589,7 @@ struct domain >> */ >> struct { >> unsigned int val; >> + unsigned int arch_val; > While I haven't looked at patch 2, wouldn't such continuation > information better be encoded in arch_domain in whatever way is more > suitable for each architecture? Well, it's filling a hole here on 64bit builds, which it couldn't do in arch_domain. And it's contained inside teardown{} which already signals it as fairly magic. ~Andrew From xen-devel-bounces@lists.xenproject.org Mon Jun 05 15:52:28 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 05 Jun 2023 15:52:28 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543789.849049 (Exim 4.92) (envelope-from ) id 1q6CVF-0000NR-Ok; Mon, 05 Jun 2023 15:52:17 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543789.849049; Mon, 05 Jun 2023 15:52:17 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6CVF-0000NK-LE; Mon, 05 Jun 2023 15:52:17 +0000 Received: by outflank-mailman (input) for mailman id 543789; Mon, 05 Jun 2023 15:52:16 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6CVE-0000NE-B6 for xen-devel@lists.xenproject.org; Mon, 05 Jun 2023 15:52:16 +0000 Received: from esa6.hc3370-68.iphmx.com (esa6.hc3370-68.iphmx.com [216.71.155.175]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id ef379dca-03b8-11ee-b232-6b7b168915f2; Mon, 05 Jun 2023 17:52:14 +0200 (CEST) Received: from mail-co1nam11lp2174.outbound.protection.outlook.com (HELO NAM11-CO1-obe.outbound.protection.outlook.com) ([104.47.56.174]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 05 Jun 2023 11:51:40 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by SJ0PR03MB7102.namprd03.prod.outlook.com (2603:10b6:a03:4e6::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.32; Mon, 5 Jun 2023 15:51:30 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::10bb:98bc:e36d:36ab]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::10bb:98bc:e36d:36ab%3]) with mapi id 15.20.6455.030; Mon, 5 Jun 2023 15:51:29 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: ef379dca-03b8-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1685980334; h=message-id:date:from:subject:to:cc:references: in-reply-to:content-transfer-encoding:mime-version; bh=S/DbWdSXG+jFCjQMU2dCkinxl+jPWXRHL8Z0gyk0b2w=; b=IITAp2Qz3omVDUZwyb7YfmlUyTdlVuRZSwGp3/bSQ0gFrtecz/c0bbjH XbRrz4v29XujePe+6/MNUBSJt5mERlv2CTlLyJI8Cx1B1FUJHBNeUD4Z6 cY7bppTwvG3bh4m2vuaDYWBnPq90gqnN7jgY6UHvnDddDOycRMSayQeqv 4=; X-IronPort-RemoteIP: 104.47.56.174 X-IronPort-MID: 110971168 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:vJtTzKCWtEroiRVW//3iw5YqxClBgxIJ4kV8jS/XYbTApDIn0DYBy TMbDGHXPf+La2H8etklYN+z9RtQu5+GyNRnQQY4rX1jcSlH+JHPbTi7wuUcHAvJd5GeExg3h yk6QoOdRCzhZiaE/n9BCpC48T8nk/nOHuGmYAL9EngZbRd+Tys8gg5Ulec8g4p56fC0GArIs t7pyyHlEAbNNwVcbCRMs8pvlDs15K6p4G1A4gRnDRx2lAS2e0c9Xcp3yZ6ZdxMUcqEMdsamS uDKyq2O/2+x13/B3fv8z94X2mVTKlLjFVDmZkh+AsBOsTAbzsAG6Y4pNeJ0VKtio27hc+ada jl6ncfYpQ8BZsUgkQmGOvVSO3kW0aZuoNcrLZUj2CA6IoKvn3bEmp1T4E8K0YIw08Z3QkZn2 uAiJwskXiuiueuq8I+eRbw57igjBJGD0II3nFhFlGicJtF/BJfJTuPN+MNS2yo2ioZWB/HCa sEFaD1pKhPdfxlIPVRRA5U79AuqriCnL3sE9xTI++xuvDS7IA9ZidABNPL8fNCQSNoTtUGfv m/cpEzyAw0ANczZwj2Amp6prraWxXKkAdtMRNVU8NZwoF2Z6DASNSY0amSdpsSl2lXgQuNmf hl8Fi0G6PJaGFaQZsnwWVi0rWCJujYYWsFMCKsq5QeV0K3W7g2FQG8eQVZpatYrqcs3TjwCz UKSkpXiAjkHmKKRYWKQ8PGTtzzaESoIKW4PYwcUQA1D5MPsyKkolQ7GRNtnFK+zj/X2FCv2z jTMqzIx74j/luYO3qS/uFvA2jSlo8GQShZvv1qLGGW48gl+eYipIZSy7kTW5upBK4DfSUSdu H8DmI6V6+Vm4YyxqRFhid4lRNmBj8tp+hWC3zaDw7FJG+yRxkOe IronPort-HdrOrdr: A9a23:G5noOqEZUhm7lzWdpLqE18eALOsnbusQ8zAXPo5KOGVom62j5r iTdZEgvyMc5wxhPU3I9erwWpVoBEmslqKdgrNxAV7BZniDhILAFugLhrcKgQeBJ8SUzJ876U 4PSdkZNDQyNzRHZATBjTVQ3+xO/DBPys6Vuds= X-Talos-CUID: 9a23:849gqWNOcC0YB+5DcQlnt2k9NdwffUb0/EzxHUakOVtMR+jA X-Talos-MUID: =?us-ascii?q?9a23=3A2sFiXw79nec+ANKC26tX7Kg5xoxyw6SkJhwMrK4?= =?us-ascii?q?khPaiMhFsayzDlQWOF9o=3D?= X-IronPort-AV: E=Sophos;i="6.00,217,1681185600"; d="scan'208";a="110971168" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=m7jHu/UNnDOTbV729lLSARGaFXbTz68UZ5W/izL3ncz9ZmKkogJHSKMy+puAXrdf7EtSRI8qUUVr/lw3shga2lwEA/iic8MISDpWLvQMjrCbTBwofutOAY6Qq91e2+Ub4jL/GkRFqz9BKAiosq1AumNTK9br+Q7BUA2u4DQmmE8P10oLvGHN7kzb0TaxLSMtj6aCwYlhe5Kp22OBsPBRjh/rs1gIzLVusOhWPbCWzi44TSdtJ2AbGmN6NvRnQes6gIGCJ98yTS9BVCqxHG1IGeIx6xli4fgp5/H8S4HyXxuXGd46mZgGTuuU4TescWzeoPb25gwZWMBXKXJyDP8c0g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=cd34pS2Vcb7Em1RYW0o8JhQKB/mW8n31wq0doLL5p/4=; b=RtnA+lkAwGBhuHUHnD63drzz754Ph6KlWlUO233PPZ262f0c4H7mLXP1mqBP1VXMhyHBfCSD24RR4KVqtTYMP3O2Nyl1HiXucJ0tr7MHGvPyKon7e7E75FMGgJXkQRK9RnqApeaoTqLKBkkOBNkxma6TnBxstHNPuWAmTDN0lNGoRFIOOl4WE9wuaOxC69S+WRLAMtLwBobC9oSlYlVBed/569PEgjnleHA/h57dqTCw7Vl2SrGp7yksbVsdlaA8txI5lrHEkdLfMdHquXhxkHZmSrEbgc8Y85FuS0o6/Be1vSGbeAJA6aI1TW6eJLCg04ziVbMaxBtPjFXiZERxuw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=cd34pS2Vcb7Em1RYW0o8JhQKB/mW8n31wq0doLL5p/4=; b=cDYguwMVtAoALc9KuU9HBXbqHXqEls8/YjBq6QGLYgowqG0XlKdzn+0QrX0fYk4XctJ5xyyFoFAHId7oh00Sfh5d4YSriY2VFNqeAkpPGp1+TI/2zVyXtpRWl5xWcicivto9A2HG1bHlSB2KSJAlPaualc7sGItgotbW9RExLno= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: <144d2685-540c-48df-4d73-ae98c835efa7@citrix.com> Date: Mon, 5 Jun 2023 16:51:23 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 From: Andrew Cooper Subject: Re: [PATCH] amd: disable C6 after 1000 days on Fam17h models 30-3fh Content-Language: en-GB To: Roger Pau Monne , xen-devel@lists.xenproject.org Cc: Jan Beulich , Wei Liu , George Dunlap , Julien Grall , Stefano Stabellini References: <20230605151036.18085-1-roger.pau@citrix.com> In-Reply-To: <20230605151036.18085-1-roger.pau@citrix.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO6P123CA0023.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:313::9) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|SJ0PR03MB7102:EE_ X-MS-Office365-Filtering-Correlation-Id: 05837eb3-5b96-4504-6f32-08db65dcba1f X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 99Iu2ZTIRQ5KINwXf0MEGUeWdizpoNzRm/qVY0im2weiWxHNNRoaGL/n/SGvYlLhrLsSPiDAJKq4PhB4sEt75x5hINXRxd7pscKu0rFtLwHHZ3C6GyNTADt1liDZQsFptgL3Mm49X0MSUrdFLiz7v4huXAaRfrqEYIwIqz0djoZjejdQLphNhTuomQN1cnPP0yv3gc8Cxya9j5iR1dSzTc/7rBQcgyN24tXmA8LJShQSkY60HaTfu9vJL46JlwHo1zxRTN2D7dbiuiYd7MRAQCy4SOazbSKYhg8fKe5PSe+ac3NkIvNC5XAiqJFfspqNfW94+89aeSj89wMHVTCZ6lGyxkRqqkz2Ek7gZxlshbO0DBmrJUNxpfkO1PvVWoBGTOXOVmH+n0+10ePlqiXpC7qETjc1kgDmZY63A7CFUxN0frOulTMdluqQO96H7FaFhlJFZX00Lr2dRetNR8ZEwJMpEl2WsJRv11FRUAx2tDk6fisGRR6bw9h/cIx4GQ1vVu8XjCU4bT2+rchyw9ebF/hcbPE+kFLaGbsZ5kCei9to8lg0bpVcq1zHuiEQ5zFM2iwNqFCJPpuq28EsGv1NaAHum1awrtw8TF3a2/BrPWusWaTcMIdleGVqPkNYC0MlO3T/iW+Lc3hvah93d0nCWbT21/np24Ex5DnysxIHs73QwEKx8KRUyQVxAex/gXAi X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(346002)(396003)(39860400002)(376002)(366004)(136003)(451199021)(53546011)(6512007)(26005)(6506007)(36756003)(83380400001)(31696002)(86362001)(82960400001)(38100700002)(186003)(2616005)(41300700001)(54906003)(2906002)(4744005)(478600001)(66946007)(66476007)(8936002)(8676002)(4326008)(316002)(31686004)(5660300002)(6486002)(66556008)(6666004)(221023011)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?b3dncXFBVWxZdGRESXhPYnlEM29jUXBKUWlOSWpmWStpMGh6enkydnQwcHZ2?= =?utf-8?B?QWhtMkN5NmZmUlloa3J0MUtueThJd05Ga3VJSFhNSFo0ZENFQmFWZmhIV09l?= =?utf-8?B?VG8wbHJheHZUc0daSDZFMjc1WVhzSGRVT2F5WE5pOEdUK24rakZjSDRyOGNt?= =?utf-8?B?RXF3WVRvNWowWk56aC90RGIzVnY2cVdKSEJCaUpYYVRRaURYSG02Z3EwWmhN?= =?utf-8?B?Wkg4SjZtVHRuQkd3MW9weDVLWUl1V2c3WWZWK2pjaVpucVdnVkcrNHFXeGRO?= =?utf-8?B?NGl0d29FNjhjcjVYNDM1YzlEWk9CbXZOVURpd0pMVzg3ZnJTTVgzLzFsNTZt?= =?utf-8?B?VWp4SC9lczFEOFFNc202QmNMNE9QVU90OFd2VDNxeVdaRWd0T3FhWFNZaGRr?= =?utf-8?B?dS9QODl5a1IzU0gxKzNlMkEvQUpUNk5PQjdaWFBsNUJrNURna1Y0dDk5RVp1?= =?utf-8?B?VWpxNGJRTHkvVGFPSHl3ZnVnNHg4QTVtU1I3Rm54WUNROFpyaHF5MnRETFBN?= =?utf-8?B?bmk2b3h5UE9rdDQ3bG40RWlTWEdNeUViZituTFFYM0o4akFjQ2MwTUdZVkIy?= =?utf-8?B?QUJQMkgveDlWc0l6VzVYalBRR3gxWEYvZERzL1JreTk0eGlSYkNuOEVXQmxO?= =?utf-8?B?RzlqSGo1cDI2dmRsM0lkc05aOHhUU0lGVm1MZlJoakNqeGdvTnF2NVIyNlNJ?= =?utf-8?B?N1FPc2I0cVJVaU1yOVRBRHU1aFpYZzlCRlVxWDZUdjdSa2VYRFZEYnBkWktN?= =?utf-8?B?VTIrd2tLT25iU2ZFdTJVUEdSRzhwbEhFZjNXQWJJNEowayttMTloWk5XdVFF?= =?utf-8?B?eGxsQk56bU42QXpjMjI3dW1RVytvOUpXQ2E4VGJUS3ZJUXBQdEowb2s4UTBE?= =?utf-8?B?alRLeHNKSUZsb0l5V1UyREhuTWlnSXg1T2tTZC9weVNZaWwwVmRxM1R1bTUr?= =?utf-8?B?Qk9ITmp1clFzVEFELzE3aE8zMTlJL202YmNrcVg2RmNJRGxZeUxPVXNVYUht?= =?utf-8?B?OC9nMG5xbFFjQWdtaXg2dm02WDRvZFAyZzd1S1pTNFptcDRLMC9EM1I5VytX?= =?utf-8?B?ZFdZUDB3RG1hZWQyejN6NjlUM0NHVzZNenFGUy9mOWpLMmhtdlBCNVNKb2hi?= =?utf-8?B?QnhDNWhGUmRNcnIwZld6SU1pL1RROFI4NTIreU5WSjQwV0E4aHcycnZCVHBi?= =?utf-8?B?ZU9jT09BeDZrVFNWTFc5MnlXT0o4UlQvdlZoNkp4Z1R6RlZ2RGxSNVc2R1ZX?= =?utf-8?B?SDhpZzFYMzJxZzhQYUFQQzRpbkN1NXZBb2ZpTmU4Q0NwQlhWSzg0OXBONnA0?= =?utf-8?B?OWlwK2Z2YWZEZXk4VzBjUVNRa0crUFNnZlBaeEhVekdWa3dxKzVaWTEwNzNC?= =?utf-8?B?TEt3Q29SQmFGWC9LQ0ZOOGpvYXRtUlYwSDBJTnI2eFNiN1BkeVVVWFBadlYx?= =?utf-8?B?QU9pUi9yQlVYSDI2YThCNHlLalF6SS90VUNhR2x3VzZpREpYaFdOQ0h2OEdP?= =?utf-8?B?aTFFdzFkUE1hLytxVGZFUTZWU2labHI5YTJkL01YVEVvTlpRVmdPeENMTWVp?= =?utf-8?B?Smh3bGtxZk9aNFVtdlhkOThNN2pOTkFBWStobjg4TVhqQW41RWI4cmhXdlZ5?= =?utf-8?B?TitYTGgxOUZpVW1BMXJDVnMyQUtGRkZmSGxqamZVSjRNRSs2MUZQM3paMkVG?= =?utf-8?B?a25wckVpclU1Q0EwWFVpSzlTQ3oxTXhpd054RGRBUThVS1NxSkVOQVIybEFE?= =?utf-8?B?YnErVUNHZkh2UGpGcTFTelRtTlhidGRidmVvaStzOXJleGJIN3ByWGZ5QlpB?= =?utf-8?B?UUY3M3VxZCs1NGMxQ1BPQytTRHFhN083N1N0VTNqL0NSUFpRdHpGU0hrbjgv?= =?utf-8?B?NTZPeVorbFlUQXVRZm16MUVUVmZZSE1iaFpNbTNXQ3pTSkIwbnpCZ0ZBY05X?= =?utf-8?B?eXdVaHhGaTdVejR0Y3lkdmhBWHNlNko2VldISHJ2eDkwYkxwL25jUlg1RUZo?= =?utf-8?B?NFVBMDdQS0VhL3hZalE4ODVHcWdSajZ0R2JxMDd2d1VQTDdlVm5ZSHkxd2VZ?= =?utf-8?B?cUgvYm1oLzhNUDhsSzJzemViUVhaVVkyQjVQbkowZ2Jnd0RvRnMxdHRkRGFj?= =?utf-8?B?V3J1ODFvOUhRRmJhdGJLNDZScDB3Z05UaDdBV2FOTERtOVE4ZCtMcFJhbkFM?= =?utf-8?B?U0E9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: SkSmFdUuu1Trf+wOTIomz4sgMAtWKJsdMOIXvJr0+fVnI1TERXyxkyKuaJSMzouc2+K5UhmP9KZfmz7qGZaTSLBiB/hgO6miLo91AVnNFJT+aWGOXwJxzgXrG3b+8Q3IlFuAku6XFwS0rhfNAdRe1QBlI7V3bTUjOIr1OZUIeN2d2YkfU2q7rYEh7v7ubQZ2VFG5TAO7PP4JH+K87hQkvWqQUVoDbfKuZuC+Xienpv9gydEYZ3KeVVvDrpthQnsOP1ZoyK+nIlL3e7ms1e0XWntD914zvTciYiEy2gRSdw1Gn0rrckLIArOW8no7NBZUQPcJlkvQiBubf7YdJYZ4mrYIQVhjcXg0sc4yjdLsAlIAUccBQ592sE1xJQKhHwtaGGym64ck1HtX2Bb2WOdcmNkRJrBIDEYpf7jaQWVZn/723uo688ANtXSBNBdBJsgWJ5MjrXWyGb9xvAvyomh0c4/lXz83cZtB3oMwMn/baSeFXU8TWi3IVkwe/FDhcvrfdQWHqdhAMuCI+r5evBC7t9m8OriDN7dfVdjdtqKzeb7pNtrPZApcKJJRm0jQuLG8qtFWZZ1tLZIr/1grbDdyLlxoLRyx/ybJJVNjxA5+UgDCu5oAZQKIyfi2Jx+lJnO31VL6h8KfGkMCMC2WSKG20pLVhPkyeSM9bZKtvR3cFMe4Jfj7nlSh4W00G/3VTE7jw7FwIXjAm0I8dpyBYQRHo4yqZ797lqCGGU5yeK4PtAo7nbAJMwm5APvOiKAvt7j0ltMCBAi83ui3QwlK64ot//+PL+fbPEjxhvbMgC1n/sVzL8HqAvK1hkhp2FlWlTOQ2dMBh8w8TtaRNAgnlAemNY1Jp9hBrQ8EM+LGzqv1hMg= X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 05837eb3-5b96-4504-6f32-08db65dcba1f X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Jun 2023 15:51:29.7673 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 8a27fOBnbxmuCpkYjGSX+WWSpp5joBgX5HpIhatA92nt8aZle2/7u1MrU9Jj6jRDcsyJT2nKOdhnVla1OBjYWfMQYMUBGG2zpd3vy6RPQUc= X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR03MB7102 On 05/06/2023 4:10 pm, Roger Pau Monne wrote: > diff --git a/xen/arch/x86/cpu/amd.c b/xen/arch/x86/cpu/amd.c > index 0d3143031b5b..728fa61a54bb 100644 > --- a/xen/arch/x86/cpu/amd.c > +++ b/xen/arch/x86/cpu/amd.c > @@ -1189,3 +1190,44 @@ const struct cpu_dev amd_cpu_dev = { > .c_early_init = early_init_amd, > .c_init = init_amd, > }; > + > +static void cf_check disable_c6(void *arg) > +{ > + printk(XENLOG_WARNING > + "Disabling C6 after 1000 days uptime due to AMD errata 1474\n"); > + amd_disable_c6 = true; I don't think this is good enough. AMD CPUs can enter C6 from HLT and IOCstate as well as via MWAIT.  You're going to need to modify the MSRs as described in the revision guide, which will inhibit all ways of entering C6. ~Andrew From xen-devel-bounces@lists.xenproject.org Mon Jun 05 15:55:01 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 05 Jun 2023 15:55:01 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543795.849059 (Exim 4.92) (envelope-from ) id 1q6CXs-00011g-AG; Mon, 05 Jun 2023 15:55:00 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543795.849059; Mon, 05 Jun 2023 15:55:00 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6CXs-00011Z-6K; Mon, 05 Jun 2023 15:55:00 +0000 Received: by outflank-mailman (input) for mailman id 543795; Mon, 05 Jun 2023 15:54:59 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6CXr-00011T-0X for xen-devel@lists.xenproject.org; Mon, 05 Jun 2023 15:54:59 +0000 Received: from EUR04-DB3-obe.outbound.protection.outlook.com (mail-db3eur04on062e.outbound.protection.outlook.com [2a01:111:f400:fe0c::62e]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 5156569c-03b9-11ee-8611-37d641c3527e; Mon, 05 Jun 2023 17:54:56 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by AM0PR04MB6804.eurprd04.prod.outlook.com (2603:10a6:208:189::24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.32; Mon, 5 Jun 2023 15:54:53 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.030; Mon, 5 Jun 2023 15:54:53 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 5156569c-03b9-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=MTA/MGgkjrqyC9Ib4EQ7XOhsBHseNmpswm5KeLp0zW4DEA4eeXvzJiYFApKbaqF21NU7AF2eYIVMvQKHUuKZjIzqtIKY7SJHFXYAck55u0iSIoJq8x2D8nM6Zh91cbAKMQW8m/rzIDhPFu2iMqx/Osev4q+WhpCknJHLrGTIR0hXfoiVLkgMfT7+ryson+Jmr2t30mC6R4DdWGohZB9gKh919dS+lujA2NoaDFmzp1fRvlVhSSTvbmh+ciin4D8lYYqHBUgkFaT+ITb07SacLYU4aNQyW6rWaUJIhdBi4mbPWZQx9YSmucBOR53HNPowBbm3CBUfTj9sx4UilOobmA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=quJwwjMdwNdpbM84s6w5Mms2bWeK+skP5Z0pWZBzW8c=; b=cW8VHoQSi7UQPjFhm9nhrJEGthMvnariRFYVZ/XcL/vH1qylxp/a94zZTHcicsFQ0D9jUL6yhxrma+lZKxKMpZfKo2AxnJ9DLjYdurxdfDfs9TnaKnKa8TvvnQn/vObJB+w/lD2xllH0827223YgPwAEeUtOexe+UmsFwhCuj5JTPAN0O+KCMqDf0wZpcc5H82OA1SL7ABqL9uYCyk0uOw3q1jpyMLFgzfpshNQQOZbHJDusttmCCEbTcG9TH6AfTfGDVlmhgdCIaLp7uXTgH5tgZ7tGAtqf1UTMmHF40OKRfDDkbSwmyh2ndYbWH5n6nqBkertckFwgm69swImghw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=quJwwjMdwNdpbM84s6w5Mms2bWeK+skP5Z0pWZBzW8c=; b=tFhgAsYBOt4hn7KWDIB0U5cKda/F12hfN4MoJP2LV0hJfHbSEbVp7t4igRQSGWueCjzPT/hAb9d1LL5Bp7TCc/aCA0QPEzkv/E3VUy77/sk9UYWWdbqCuwFFwv0SWe9fxoc5WF6WDrkxrivw6fOOMtFmyAAJSulg499JrnCxVsSAoH+uRAvyjQDe3cA6ZG7VlNB1c8yZjgYvWe6tGBi+VNhu00FF9Kz9xIm4Q1/UbScYjXo6Kjy4fRK5cia38LDQ2IWyTfGWa+A2keus+yISB/pcFh9bfUoCqeQOevYnt/cvLBI7u5A43/9N2a1FaxWjd442pKKtquCSKbd68DVtoQ== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: Date: Mon, 5 Jun 2023 17:54:50 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.11.2 Subject: Re: [PATCH] amd: disable C6 after 1000 days on Fam17h models 30-3fh Content-Language: en-US To: Roger Pau Monne Cc: Andrew Cooper , Wei Liu , George Dunlap , Julien Grall , Stefano Stabellini , xen-devel@lists.xenproject.org References: <20230605151036.18085-1-roger.pau@citrix.com> From: Jan Beulich In-Reply-To: <20230605151036.18085-1-roger.pau@citrix.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR3P281CA0151.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:a2::12) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|AM0PR04MB6804:EE_ X-MS-Office365-Filtering-Correlation-Id: eed4e729-feab-4479-746c-08db65dd334c X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: obQzzOUQumuDqQZyRFsW1oXV7/XhyBUeWco+kEBJK7q6NboyVPnoX/Moi6nxw7QV+duuqAMaAe9WIfgRplrGRbaJYF6xQlPPgvFGIijFwRNiBgNc6reoT8vLKZGSmU4lvflLVlkGmt0ZrlMMmDlZEAKRvvW5xLM+lo1+EtXh/+19vkhZeT5QAnV6LvrTF2ZLJ8HEykWsoEDui8INQ1tDzIOKW+dHPWHTSVfD1bi3Xyxk1fWGq40LmsMEv0m3Oy+ap0D6GOY+9LgXV53F05ZL3Bcc/Y0qHz4l6Qt3IXeRzf9VH0G0Au1hHAWAhETz8JYFT3XKmeHivHsixKVqQwKq2OQFCVjHMSr6Ir8Sf8wmcYPGAqVT8cpnNyPJMHGBsO9FO+wA9w6UHnDj8E6HKc7A5DEZUXfL8ExLOiFGHm190/wVYOpnWYbre0OKSARs3e+mcw3Dax990+mAE7ypf5M1z/V84maPlVbUKBqgUXzPWC49u/xzbiaOmSz5U9iasPNBbvwbME7ajP1kh+wwNu0PMyvZvzMpB0EWwUNZTZWuk6JhbvjYu8l6OaYQJl//eNgxu2sfGyCf7ifmL3nTbbwCNXISWsMjkElcXJclqMr5mpcYgnk3rqQNbs/PJ2crDbnE6LURXmT/N5i80dCdpV75YIQlxxPCucaxBuBREq11fFGqm/uLWDU8x0ExvuD4mf6h X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(396003)(136003)(39860400002)(376002)(366004)(346002)(451199021)(26005)(38100700002)(2616005)(41300700001)(6506007)(83380400001)(6512007)(186003)(31686004)(53546011)(6486002)(478600001)(54906003)(4326008)(66556008)(66476007)(6916009)(66946007)(316002)(8936002)(8676002)(5660300002)(2906002)(86362001)(31696002)(36756003)(221023011)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?ejdyZmpDYUMyTEZmYWNvSVlKZjhWVURvT0pTaTQ3WmpYMUJVOUVxTnJXbGl6?= =?utf-8?B?VFJRaGJGdDBhcTJBdjdTRnU1SEJuV2poMDZlcTZLZUdnR0R3TnpRTFIvVDJT?= =?utf-8?B?VXlDWmFjamx3a3FFMEZ4WVJwRzV6T3ZGcUFzaXJUUG5vWXByK292ZDJMdWQ1?= =?utf-8?B?UkpESnpMaWtISWpVU0hwNmN6M0VnQ0xXcHkyZE1UYXVQVDlPZ1BxQUhCcloz?= =?utf-8?B?elJBWElhdnU1T3hka3lIb0w3Rm50a0NITFM0am1UOXpzQkprdjEwODU1NmRQ?= =?utf-8?B?VEh5Y2Y5T1JCWGJGSzIxWG50cloxY1J0bVRKYldLenlHT2xvdGQ1SGJMU24w?= =?utf-8?B?Q09aVTM1M2JSRTBoZnJST1FZeXNpVVArRHNrend5N0h0bXBxNjd4MVQwQXZS?= =?utf-8?B?TU0rajNEL3NQYndFT0xieXJ4a0x3R2haZTFWeFB0RzIvbTByUGdFY09IREdD?= =?utf-8?B?WXFWcW1WQWxrNGlmY1RwOVZrMmdTeTdXL21JM0thKzNlemt0UWg2NTUwMVVZ?= =?utf-8?B?Z3h6TWFDTHh4REpNdm56QlJkb3kvYW1XRS9MQXU1dDhQY2d3SHdGK21yd0hE?= =?utf-8?B?ZjRDQjlXczVVdEhlQ2kvcncwNVhCVzRDV0hlK0VYeUl2UmZhaGNHLzJ3R1JS?= =?utf-8?B?TzJLdjZqUmJiMkJXcnEyRzhRS2xCbEUrdmMvQWRXRXFQaGZIQk9rV2VJN3ZB?= =?utf-8?B?YlNabm9vRHBDcktjcWJSM1p6RnRWQmh4YnJkaEZLOEhMSllGYnlOYzI4NUNr?= =?utf-8?B?VU93MDdIdXRucThwVXBGYTUxOHNOaHU2eE9tcjg4RTd2YXhyakRaZExISlo1?= =?utf-8?B?Z0JTNEpMdVA0Y0tYNnR3OUZhU1VrdnRlcDMzVkpubVVWSVptVGc4ekhobzBt?= =?utf-8?B?N3BiVEEwTnJhamJKeXoxL0dyeEFkVnZrN0lTV1Nwd3RHcmZmQUhtRmFEckFW?= =?utf-8?B?TitRUGR6ZVZ4TlRwYXZCd2tlVWdRMW44RW5uRjJhY2NUcWFlTUtJOTZycVp0?= =?utf-8?B?SFd4YjdSYWlpNzdzdVRkR2h4WkIrZFUraGNNTFNwTHhnOWdvM0UvMTA4eVFw?= =?utf-8?B?d0llV2NmK21sbVFBSnlwcHhTRkIzbk5ZRURoQWFHRWZrMktvME95MTZWNTJN?= =?utf-8?B?YklOTG13UzZtQWoxVzVWL0lFQ1lNbkY3dVRYQlNuUFhyM3NzVHl6R09PMXFa?= =?utf-8?B?Tzl1d2lPd3ZBc2ZYbTdsdUtCeHd0Wk9MYVRRZm10NTFIVzhYdWU5Uzhtc213?= =?utf-8?B?Z252MEN6Nlp5dlc5cjU3UjYrY1dUbkFVVUNhTTNxcVhRYUY2OEdPVUJybzFS?= =?utf-8?B?UlgwdlR3enpGY2V0WTlna3ZuZUFMcjhIelFNZXYxSE82eE1ZUFIvZzJ5TmtF?= =?utf-8?B?Q1Z0WGFweTNERTNRcEdSZGczMlZHYzk3T2l2anFmSmJrV0FEUXlEd3FMV1FU?= =?utf-8?B?a2ZrOVFBZHlxV0FqdXd0TlJMTHJ0U09SQkU4NUIvRmtrYmcyc0RTeE1EMWJu?= =?utf-8?B?bU82eWN5SW9ORjZaZktTTkVCSWV4SjB4OW5DczA3eVUrbXROK0lveEJlYy9r?= =?utf-8?B?eVdBc2hUUjZJMUdxWEg5Ylg0Z3V0S0c1L29BbSszVHNTc3h1NS95ZUJrZVNP?= =?utf-8?B?S3RqMGFzTlJqVElMTW45REFrYjNOOXRlem9aanJFT3FqUmIxbUx2ZDVzczBu?= =?utf-8?B?bEVhaVFNVzl2bUw1VFZOa3UrTkJzQmppRC9OeW1DcHUvZ2I4TnIyemJtQlc0?= =?utf-8?B?dmxWRUxyWE1qd2hxN1ozanc5RndVN3V4UDd5MTJkcnZJNU1NK2ZlamxVdTRD?= =?utf-8?B?eFl5QnFLTzRZREY0SDgwRno0dDNoUk02dy9tUGhyZWprTDJ3Z0FLWGtzTU1Z?= =?utf-8?B?RGtwWng5WG51SlhrdGxYWTdXM1B0WmxMbzhZZVNKZWRCN0JhN3dIamcxRytT?= =?utf-8?B?NkpBOXJtd2g3VTA1VEFueVpUMDR6bnB6M01IY0RjWDZqS25QU2kzNkp2UjNj?= =?utf-8?B?RDV6SmJCNVhZZ3pkeGRKeEJIOGovSFdhOFp3bS9WSlc1eVZnak5BSDAvdXRn?= =?utf-8?B?TVMrTllBSkIrYW5qdHA4SlhtdzJWYU9EYUdHSzZSRG8xUVdSWDV4WmtOS3ZH?= =?utf-8?Q?cHNpCcl9/4vPk+ZCfXqJHenbg?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: eed4e729-feab-4479-746c-08db65dd334c X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Jun 2023 15:54:52.7801 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: cglNPe/iWl7Az3oEB5CIq+f1W7m1CKWap2aZuQbrYmhkUVGpQ5ymZkg+QsU5PUh1LtDX7Ll+etT8wWB5jjrSVA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0PR04MB6804 On 05.06.2023 17:10, Roger Pau Monne wrote: > As specified on Errata 1474: > > "A core will fail to exit CC6 after about 1044 days after the last > system reset. The time of failure may vary depending on the spread > spectrum and REFCLK frequency." > > Detect when running on AMD Fam17h models 30h-3fh and setup a timer to > prevent entering C6 after 1000 days have elapsed. Take into account > the TSC value at boot in order to account for any time elapsed before > Xen has been booted. Models 6x are also affected as per their RG. I have some trouble with the site, so it's too slow going to actually try and fish out the RGs for the other possible models. Given more than one set of models is affected I of course also wonder whether Hygon CPUs wouldn't be affected, too. But I realize we have hardly any means to find out. > @@ -1189,3 +1190,44 @@ const struct cpu_dev amd_cpu_dev = { > .c_early_init = early_init_amd, > .c_init = init_amd, > }; > + > +static void cf_check disable_c6(void *arg) > +{ > + printk(XENLOG_WARNING > + "Disabling C6 after 1000 days uptime due to AMD errata 1474\n"); > + amd_disable_c6 = true; > +} > + > +static int __init cf_check amd_c6_errata(void) > +{ > + /* > + * Errata #1474: A Core May Hang After About 1044 Days > + * Set up a timer to disable C6 after 1000 days uptime. > + */ > + s_time_t; > + > + if (boot_cpu_data.x86_vendor != X86_VENDOR_AMD || > + boot_cpu_data.x86 != 0x17 || > + (boot_cpu_data.x86_model & 0xf0) != 0x30) Perhaps better ... & ~0xf, just to be future-proof? > + return 0; > + > + /* > + * Deduct current TSC value, this would be relevant if > + * kexec'ed for example. > + */ > + delta = DAYS(1000) - tsc_ticks2ns(rdtsc()); Generally the TSC can be written (and we actually do so under certain circumstances), so deriving any absolute time from the TSC value is of at best questionable value. Furthermore, perhaps better overall to suppress all of this logic when we're running virtualized ourselves? > + if (delta > 0) { > + static struct timer errata_c6; > + > + init_timer(&errata_c6, disable_c6, NULL, 0); > + set_timer(&errata_c6, NOW() + delta); > + } else > + disable_c6(NULL); The log message is going to be misleading in this case. Maybe pass that as the so far unused handler argument? Albeit I realize that this will mean casting away const-ness, which isn't very nice. > --- a/xen/include/xen/time.h > +++ b/xen/include/xen/time.h > @@ -53,6 +53,7 @@ struct tm wallclock_time(uint64_t *ns); > > #define SYSTEM_TIME_HZ 1000000000ULL > #define NOW() ((s_time_t)get_s_time()) > +#define DAYS(_d) ((s_time_t)((_d) * 86400000000000ULL)) > #define SECONDS(_s) ((s_time_t)((_s) * 1000000000ULL)) > #define MILLISECS(_ms) ((s_time_t)((_ms) * 1000000ULL)) > #define MICROSECS(_us) ((s_time_t)((_us) * 1000ULL)) While consistent with the other macros we have here, I think this would be neater as #define DAYS(_d) SECONDS((_d) * 86400ULL)) especially if considering that yet later someone may want to add YEARS(). Jan From xen-devel-bounces@lists.xenproject.org Mon Jun 05 16:08:28 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 05 Jun 2023 16:08:28 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543802.849072 (Exim 4.92) (envelope-from ) id 1q6CkO-000360-FT; Mon, 05 Jun 2023 16:07:56 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543802.849072; Mon, 05 Jun 2023 16:07:56 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6CkO-00035t-CM; Mon, 05 Jun 2023 16:07:56 +0000 Received: by outflank-mailman (input) for mailman id 543802; Mon, 05 Jun 2023 16:07:54 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6CkM-00035R-3h for xen-devel@lists.xenproject.org; Mon, 05 Jun 2023 16:07:54 +0000 Received: from esa6.hc3370-68.iphmx.com (esa6.hc3370-68.iphmx.com [216.71.155.175]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 1d1f012d-03bb-11ee-8611-37d641c3527e; Mon, 05 Jun 2023 18:07:49 +0200 (CEST) Received: from mail-bn1nam02lp2042.outbound.protection.outlook.com (HELO NAM02-BN1-obe.outbound.protection.outlook.com) ([104.47.51.42]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 05 Jun 2023 12:07:22 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by CO1PR03MB5745.namprd03.prod.outlook.com (2603:10b6:303:99::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Mon, 5 Jun 2023 16:07:19 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::10bb:98bc:e36d:36ab]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::10bb:98bc:e36d:36ab%3]) with mapi id 15.20.6455.030; Mon, 5 Jun 2023 16:07:19 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 1d1f012d-03bb-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1685981269; h=message-id:date:from:subject:to:cc:references: in-reply-to:content-transfer-encoding:mime-version; bh=dFUzLf+TIvv8kcHkgUNNKXnqQz02UFhCuf6tsURbiR4=; b=guzxKl6DN85NqJjv5ahKzX7JAu3y0fhc0zetN6/JTTkH4V3HnxKyYULU Sg5fh2ggPBM9K204CCuUGgo52S0FAXzk/MncveJGwkk4m78yMkZe5ZgIO +G2Vh9ndiybiO23JXKhrGwwRc/pYRRDNXNG1NsRFMsff/FSaA0bJy3U68 I=; X-IronPort-RemoteIP: 104.47.51.42 X-IronPort-MID: 110973800 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:cOmNaK3e8LWA3YOfavbD5QZwkn2cJEfYwER7XKvMYLTBsI5bpzYGy WAeDDyPPvyMZjCkfYt1bImy80kGvpHWzddnTQdppC1hF35El5HIVI+TRqvS04F+DeWYFR46s J9OAjXkBJppJpMJjk71atANlVEliefTAOK6ULWeUsxIbVcMYD87jh5+kPIOjIdtgNyoayuAo tq3qMDEULOf82cc3lk8teTb8HuDgNyo4GlD5gJmOagS1LPjvyJ94Kw3dPnZw0TQGuG4LsbiL 87fwbew+H/u/htFIrtJRZ6iLyXm6paLVeS/oiI+t5qK23CulQRrukoPD9IOaF8/ttm8t4sZJ OOhF3CHYVxB0qXkwIzxWvTDes10FfUuFLTveRBTvSEPpqFvnrSFL/hGVSkL0YMkFulfHGV2s twmCWA2bSvb3e+V2auqRstgiZF2RCXrFNt3VnBI6xj8Vaxja7aaBqLA6JlfwSs6gd1IEbDGf c0FZDFzbRPGJRpSJlMQD5F4l+Ct7pX9W2QA9BTJ+uxqui6PlmSd05C0WDbRUvWMSd9YgQCzo WXe8n6iKhobKMae2XyO9XfEaurnxHqjCd1JROXgnhJsqF7U33FMFRIJbAKU/r650kusXfAFN 2VBr0LCqoB3riRHVOLVXRe1vXqFtR40QMdLHqsx7wTl4rXQyxaUAC4DVDEpQN47sM47QxQ62 1nPmMnmbRR0q6GcQ3+Z8raSrBuxNDITIGtEYjULJSMV7t+mrIwtgxbnStd4DLXzntDzASv3w T2BsG45nbp7sCIQ/6Cy/FSCiTT1oJHMFlQx/l+PAjjj6R5lbom4YYDu8ULc8ftLMIeeSB+Go WQAnM+dqusJCPlhiRCwfQnEJ5nxj97tDdEWqQ41d3X931xBI0KeQL0= IronPort-HdrOrdr: A9a23:yTHtqK6rqGETofNNIAPXwdWCI+orL9Y04lQ7vn2ZFiY5TiXIra qTdaogviMc6Ax/ZJjvo6H4BEDyewK6yXcT2/htAV7CZnidhILMFu1fBOTZsl7d8kHFh4tgPO JbAtND4b7LfCZHZKTBgDVQeuxIqLfnzEnrv5an854Ed3AUV0gK1XYcNu/0KDwReOALP+taKH LKjfA32wZINE5nJvhSQRI+Lpr+juyOsKijTQ8NBhYh5gXLpTS06ITiGxzd8gYCXyhJybIC93 GAtwDi/K2sv9yy1xeZjgbonthrseqk7uEGKN2Hi8ATJDmpogG0ZL55U7nHkCEprPqp4FMKls CJhxs7Jcx8517YY2nwixrw3AvL1ioo9hbZuBKlqEqmhfa8aCMxCsJHi44cWhzF63A4tNU59K 5QxWqWu7deEBuFxU3GlpL1fiAvsnDxjWspkOYVgXAaeYwCaIVJpYha2E9OCp8PEA/z9YhiOu hzC8P34upQbDqhHjvkl1gq5ObpcmU4Hx+ATERHksuJ0wJOlHQ89EcczNx3pAZ2yLsND71/o8 jUOKVhk79DCuUMa7hmOesHScyrTkTQXBPlKgupUBTaPZBCH0iIh4/84b0z6u3vUocP1oEOlJ PIV04dnXIuenjpFdaF0PRwg1HwqV2GLHbQI/xllt1EUuWWfsuuDcTDciFhryKYmYRdPiWBMM zDf66/AJfYXB/T8MhyrkvDsqJpWAojuf0uy6cGsm2107L2w63Rx5rmmaXoVfPQOAdhfF/DKV 0+exW2DPl8zymQKwrFaV7qKjzQRnA= X-Talos-CUID: 9a23:WRf7522ldy5oGfMPaxYct7xfB8QdNV3j7SfrIHTgU2tKUaSERX2c9/Yx X-Talos-MUID: 9a23:LrthSATVx6rtx5SKRXTvwyh/a9pn/J33Jx9Kkc0Dqc+mbzBZbmI= X-IronPort-AV: E=Sophos;i="6.00,217,1681185600"; d="scan'208";a="110973800" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=XTEjHH4Gg0o4tNE6IqMA0P1flyAX2BVNjW6Ksnkrc+k5bFwzLiuTuJfcy2l8LMSc2vRZchQwRMlAeLVbd3sWp0w7IzaAYowp87lotRzcwPG9LQBencYRtfxe1fyS56PESCF6RmHGdhJYsraPVtf2ApM2JRMzjVy8dM1IsbjFzRABsXN14+EQK3aGPoLaGsSGnkz9es/RBlLd8kwcaiECuJdH42Sq7yU62EwJDPNbatRnWw0VOs14ot6hVjUbE7M9UeWFj7uY04djQpyrsN4VORCuuShhXf11XFRAXk6LrVkC2KBzT7+A4pRb5OXc0kxq9xSYbY2Efu/CDq6A23QZkw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=J7eg8/yKrb/adfBAvsZCiYR/nvdSQdZgqyg4qN4NBbU=; b=FZvHYB3eL/LUDuKaevwh8/uGBpGgt7gbdOV00nM9c+Amjuby1wgy4MBTw5pr3hEOxVNj1YIiluqi4WkDTRH8ggLGEZfsty7FHhgNaVn1sLjWL847uGDulJ0Nf/0UaRqDgUpYkkN2OcFV2Nw8y1oYPEc6ilohvXqyTMaJsc+8aLWYakVxx10VHxqaStapQb2zynegZzlQ6B7C2XV1jkGusXH5Gi1dLLrHcbhEMzx5CAu6KmqYgz2O9fscZnWmi+vjp0c5OtlUvoxLQd3ABBKhdS12iFP7CFETiatlrQQEcMmVtIuEFlj0Km8XxlRe6vuYJfFI7pO/UuEqxFiEpWbwxA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=J7eg8/yKrb/adfBAvsZCiYR/nvdSQdZgqyg4qN4NBbU=; b=MTfMsLhLzTlkhA1ntbifePT42uXGHxPJLGW5r5QKjdetAju7m0ktfgpT72nrxMPx0GDOX08GmHuu1Ij6zfWm99Khx1ORCQbDNkBr+r5E8q8Yfoq3eFnbv0++5lDCCzYOVlIigCRrzQ7Mbk+SvkAXLNgOJ3UFYPXzlqLgcAMHYPs= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: <610e9c61-f503-8cc0-23b8-f4b2cc4553e9@citrix.com> Date: Mon, 5 Jun 2023 17:07:14 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 From: Andrew Cooper Subject: Re: [PATCH] amd: disable C6 after 1000 days on Fam17h models 30-3fh Content-Language: en-GB To: Jan Beulich , Roger Pau Monne Cc: Wei Liu , George Dunlap , Julien Grall , Stefano Stabellini , xen-devel@lists.xenproject.org References: <20230605151036.18085-1-roger.pau@citrix.com> In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO4P123CA0241.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:1a7::12) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|CO1PR03MB5745:EE_ X-MS-Office365-Filtering-Correlation-Id: e2aa9e44-f0ac-439a-f9a4-08db65def07b X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: poBDn14kUdbZm66PLgXz3q0snOP2FJQZfjwE47h8LaR7nqJLMby0lBlonQB2tiCv2AVPcQiRPPSsnfuxrbJsa53gYaLT/Xxohfw3NaoO9+StU7ICH1KjeK8+jRd0lR4gszhO2oIofEYJ3GTSkqoUVc/NlEjpt4N29hISRGcm+yk3mPC3zuFv3STUhaEOMh1G/Jr32DUoW38Jq2g8+h6IoswoKBT4d/9MQibJwHYIcfzZsDBd2nNN7inw8ogOBj0olaT/nJ0Vlvytj0T0avE3msYZaX3P8VxeZbSwkRfz3I0bLu4rzuF3neKF5NxjQfi63GWxUnDTrI9um8YEPcWn23lkt8wVSpptpie6VBDDKJa1nDIXfUe+9UqK2YtdowDLCGlxFq+vysDm7YUkQuD6yyFJJ+ImKcjIZ7K8Aorxzo4xSf9GEbqHf8mJxCbxKvOBuvLqwLKwzHwWz58RWD0WnQeVkGOxQxWNNTGqtNQVzdCIYBSMtEtLzrwsdLB4WGKxRZQ8gEdWG2lfbMc8MgxP+yXOGhIdJno/0iK4pSPUo5mEf8KDVpUO5BwAgLCztaDFdBSEMArb4zCfexUoIGA9o5Dspvrett6IIrCGJeNFlBFx+2mWcU8CrgecptrS8p9ig+iCx88fTeEFzx8Okp9V3I2t3+stw7jAGZbjpNriWrY360EUtAKc53UylDDJKn3W X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(366004)(396003)(136003)(39860400002)(346002)(376002)(451199021)(478600001)(2906002)(36756003)(6486002)(6666004)(2616005)(83380400001)(6512007)(6506007)(26005)(53546011)(31696002)(86362001)(82960400001)(38100700002)(186003)(316002)(31686004)(8676002)(8936002)(66946007)(6636002)(4326008)(66556008)(66476007)(5660300002)(110136005)(54906003)(41300700001)(221023011)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?SHkyMitNeDJqdHp3SXU2ZkFsUHpZVzlCd0VQUWh1Q2xTUUR2NFBsc3c2ZEw5?= =?utf-8?B?L2lKUDAyampKT0NiWHRjTEI0Tkx5U3dRQmpaMW5kYlY4dWlZenFBZk80Nm1U?= =?utf-8?B?clAxSVpzVDdMVnZFckVQMFhablB4a2xKcDV3VjNuSDdDN0ljWkd3dWh5L3c0?= =?utf-8?B?aXVhbVRQd2xMZ254M3Rsb2R4TWovaDdUUXh5Rm9qZmJVbldKbTN5TW1HWXVI?= =?utf-8?B?bzZOZFlsaThabituTXg5azY3STB5OUVwZVZNRkFPWUJBbXEyWDMrTEpwRzZ1?= =?utf-8?B?SmY0WjNKc3NIMEJURnFLRU01ZEN4dFFINjlXYXEvK00vSEE3MEMzNDAzVkU3?= =?utf-8?B?Wi92bUpBd2JqSlc3bHFMWmxzQk9oUUFuWnV0eUxabXVXekx4MnJ4bk1iT3JN?= =?utf-8?B?OUVBcU1MbU5tdUoxRHhKWmhZNVdkbURYOGx1Qi80NTlRWDNOZEVOT2dMeWJE?= =?utf-8?B?dStCL3ExeExZeXRzNCtaaG1PLzkxMFJya1cyVkY4UXN4SVp3K1VoL2s2UHlp?= =?utf-8?B?aHhnQzc2N1R6aWh4Z3ZlenYwRTEvWWlqSkoxWlRLNHlxaHpjbFljQ2xQQU8v?= =?utf-8?B?M2tDUklaeks1dU9XOEM0SHU4QW9pclNzM2ZSa2U5MUtNeXZPNFhPQUE3Qzg2?= =?utf-8?B?SUVEaUtIaWNEWHlBMFoxN1J3MmNWNG10ZWlESHprbk50VnhqSndDREhxM0Yz?= =?utf-8?B?K1RFSW54TmdVd1B6Tjl2VHVYMjl0Z1kzZko0dzVGcElEOXpkUEdWZWlPZzJB?= =?utf-8?B?RzR2eVpwWHNKVEMyT1kyR0NBeEtqeDZ4RjFXQm45bDJ5SStqdVN0UUJnMDNr?= =?utf-8?B?SHkyYWcvRFJCUUlsTkJrcGtxRlNidjdqRFE2RzJsOE5XaElHK1hiVmZFTGZJ?= =?utf-8?B?RU56Y1JKdTE2V0Q2R1FEZThMekhEVm0rSnhoVm1QUWNzNmRIV09ObG1BTk0x?= =?utf-8?B?by9QZjAvV1BjYlpOWEEwbHltY25oZStXUCtQWjd6U2lmalJRMXVBYXlaVGVw?= =?utf-8?B?T2E5amF5NWpESVA0V0JoaGZyTWFjeHpJUGZsNjQrS1VWdXJJL3ZZaUcyaWZY?= =?utf-8?B?YkZINldHUWVhWlZ6MDNUV1BrUkkxRS9Ea0liMHk1Mm44RnpwK2d3bHQyeHIy?= =?utf-8?B?QjNaK2l0enYxMFF1M3RpekorcFRhUjNZdWlWMGVwTG02QXFUaEI4S0VYTVQw?= =?utf-8?B?MkplM3AxVVM2R1kzNlVlQ2Y5VkpOWTRPV0lsaGQwVGZHVzk5eXhmQWQydkxJ?= =?utf-8?B?Qy81eWRhVUh3eVRKU1J2Z3o2ZkhxR3JveWZOR0l3NXh1K1hRU0tjTWU2Tlhx?= =?utf-8?B?SE9ZanJidTQ2OC85NWZxV1BKZHI0V3hHQ2dCNTJBTU5jYjZ5R1JLeUUxUHpR?= =?utf-8?B?K1Y1UjlNMVpCZkR6QURwNU9NWE9OYkQ5Z2Z5V0p0SWlHS3BFaWJXOWFDVDI3?= =?utf-8?B?RkIrMFFnNXV5enlTRXVEUE1CSkZ1RThKRlhTL1h3ZUIxS002T21CQ0QwZXY5?= =?utf-8?B?eVFXZFNqbGJzeE5sdmJaT2JQdG1XN3dWZ1djdm1IVTBPMTUyeXZuc3pWNDNm?= =?utf-8?B?ZjZNakxvVkxJMVhaT0JWbHd1UzI2cHN0MWRaUTBSWXZIVmJjYUZkTi9udHVS?= =?utf-8?B?dFZSMGc5ZmtkdHRqUVdjYThUc05VVTB6eGwyWHg5UE9LN1RHQVVJUUhzZVN1?= =?utf-8?B?RDlTSDFzN3Vaa3JwSURXZGpXajNUakFTaFpHSTFFRm9na2ttbWtKZnJGWUFw?= =?utf-8?B?bWRGQjhiMmhPWHpReGFGa3JWUGpqYlc2VGJtTFZKSjFybkoyY2t2K1lnTG56?= =?utf-8?B?TmN5SUZmVVIvMGFQQURBVjhlQ2g3dEVRZ081VTBWS2U1L28zNUhydXlYbGxH?= =?utf-8?B?dUpyLzJpRDY0RmFKeE1vUGVMZ2FZRGpnRkMzWmhhTjFzbHFIZlJ6Y2UwaVpu?= =?utf-8?B?a0gwUjBzWmFISjVGaWdxY2tUMnh6VjVnNGQ4V2Jsb3RxS0ZUZitURVVnM21Q?= =?utf-8?B?YmxyNXpVWDA1N1JGemR4K2R3M3M5b0g4c0NtVytpbTlwa0ZaQlRGSjZ1UHJu?= =?utf-8?B?YjVRNkJKSDlwbTREZU92SC90K1BYR1FtNHlzeERSdmRsc0NiVjd5OEhrMXpr?= =?utf-8?B?UHA5VHF0V3pOQU9iVDMzaGhjcDBSSk1iRGJYd09kTVB5clMwc2RRRUg2Skho?= =?utf-8?B?dXc9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: O3cQFl1W7qbmRjZSSdPACePNp/lxGcmfhp82PLcYx2jVKUfM3Q78KS3HWCJXT3XhkvkOSE9EKZJrOt/P091BMleNVNi61o430dm9AsXwqzpCAZTh4ut7kHaXRyRbg3Xjx25hnotVcbgg6PU8cTHuPD299zRS/D70a0V9jrc2NV99nEP5xLGlQJyjHRY8pA3FTANSICOoCg5JVLbLQgz2LdJzPgg7uHjdIogEDGgnaDiXHKs7hEAXn3148OG266DinMphEzA/5IcCDxJfprDjRFNzRCXDuQCMAyAZp2Cw5TMzxflX2rVwZ4ANqbILCxn8awkBZVxtdFuf7+JGkbSU2VSEQ+7V/jZb3mo9fj8KWColAoj7Kmp4B3ZSF7isGy/QfbQ/eSZkIKDn8epOK5sSrHlCTmeJqjh3o/0Lbx1ARI694Ex3OcSC1WIsgNERQ0nS2ITGWlhCc3OQ6SQDM1aeKJsvgaTvAuBrIXeEhlXtHZnkFqMhnsY1V/4ntBDI8R7/9IBLbiS46DEUZEhSPgSbXQGf2EUnlAuRAt/lawCAmYwnFcQ3eyrIQrbE1ysQGbaKH18Xw2ceIUAjVENiCp8ns98ZzQmOdxWM6QCT609RvXKir7L6Z9pB6NiIC0UG2fFIfm1ug1WUD5yxlFnyso1/n1yMYdZ1DJ7X9jGdukO5WuuYq9a2AeDPie4NRAMC9aOzBprcLm+JbYcojrCBTRlLPXcbDhKRHCFgyPnHWPaxXHT/eEETt7999g1sTbQAkKqcmfkRb/4nE9dXctNDFeAptjBsxFEhh1JvHgH2POBX3gLEaQ5vQxEXUnUa4RdVJli2Qu48kyUMB+Wb+Maveo+kUFIdxA+ZSApU438ccVL8Eys= X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: e2aa9e44-f0ac-439a-f9a4-08db65def07b X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Jun 2023 16:07:19.7657 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: vIhSYcVCPYpixBKHuECXXx+7mQgvANNYx5MmPqaZTxifTqg4ptX5qu792F5cXZw3N7EuAIVP5aCt17hAkSUunzIsXFcgoRXFZngxlztrFkE= X-MS-Exchange-Transport-CrossTenantHeadersStamped: CO1PR03MB5745 On 05/06/2023 4:54 pm, Jan Beulich wrote: > On 05.06.2023 17:10, Roger Pau Monne wrote: >> As specified on Errata 1474: >> >> "A core will fail to exit CC6 after about 1044 days after the last >> system reset. The time of failure may vary depending on the spread >> spectrum and REFCLK frequency." >> >> Detect when running on AMD Fam17h models 30h-3fh and setup a timer to >> prevent entering C6 after 1000 days have elapsed. Take into account >> the TSC value at boot in order to account for any time elapsed before >> Xen has been booted. > Models 6x are also affected as per their RG. I have some trouble with > the site, so it's too slow going to actually try and fish out the RGs > for the other possible models. > > Given more than one set of models is affected I of course also wonder > whether Hygon CPUs wouldn't be affected, too. But I realize we have > hardly any means to find out. I'd say it's more likely than unlikely, and ... >> @@ -1189,3 +1190,44 @@ const struct cpu_dev amd_cpu_dev = { >> .c_early_init = early_init_amd, >> .c_init = init_amd, >> }; >> + >> +static void cf_check disable_c6(void *arg) >> +{ >> + printk(XENLOG_WARNING >> + "Disabling C6 after 1000 days uptime due to AMD errata 1474\n"); >> + amd_disable_c6 = true; >> +} >> + >> +static int __init cf_check amd_c6_errata(void) >> +{ >> + /* >> + * Errata #1474: A Core May Hang After About 1044 Days >> + * Set up a timer to disable C6 after 1000 days uptime. >> + */ >> + s_time_t; >> + >> + if (boot_cpu_data.x86_vendor != X86_VENDOR_AMD || >> + boot_cpu_data.x86 != 0x17 || >> + (boot_cpu_data.x86_model & 0xf0) != 0x30) > Perhaps better ... & ~0xf, just to be future-proof? ... this wants to follow the same logic as for Branch Type Confusion.  See amd_init_spectral_chicken() looking for STIBP. It's very likely all Zen2 models, given that it will have taken nearly 3 years to be discovered in the first place... ~Andrew From xen-devel-bounces@lists.xenproject.org Mon Jun 05 16:33:43 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 05 Jun 2023 16:33:43 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543807.849082 (Exim 4.92) (envelope-from ) id 1q6D9A-0006TP-DC; Mon, 05 Jun 2023 16:33:32 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543807.849082; Mon, 05 Jun 2023 16:33:32 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6D9A-0006TI-9e; Mon, 05 Jun 2023 16:33:32 +0000 Received: by outflank-mailman (input) for mailman id 543807; Mon, 05 Jun 2023 16:33:31 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6D99-0006T8-O7; Mon, 05 Jun 2023 16:33:31 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6D99-0008KH-Gx; Mon, 05 Jun 2023 16:33:31 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6D99-0005pv-4G; Mon, 05 Jun 2023 16:33:31 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q6D99-0006FN-3p; Mon, 05 Jun 2023 16:33:31 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=XGVy50wvDwheNX7KdJMrDL+6GM6w+Ef3cLptFaZGJbs=; b=NaOEZUpPXjylE0XMw5y3Yo0uvg PJcqrifqCWxIt/JZ/aNJOsXAwjTK8Fsn9MWLKW+5XEzBkXRzXIJwFznGkhWu50MSB3BuanfxVt6R9 fu7Rf36baoDqYCI5GQPDmrcDhw+qULF2c9Cf/Snmlvy29FWHVrQpqjgyZdRiER12b+ww=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable-smoke test] 181191: tolerable all pass - PUSHED X-Osstest-Failures: xen-unstable-smoke:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking xen-unstable-smoke:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking xen-unstable-smoke:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking xen-unstable-smoke:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking xen-unstable-smoke:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: xen=b3880c365db89051728e1de6b6889c750cbdd915 X-Osstest-Versions-That: xen=67fdffef9246c82cecd8db28838ed09e79e2528a From: osstest service owner Date: Mon, 05 Jun 2023 16:33:31 +0000 flight 181191 xen-unstable-smoke real [real] http://logs.test-lab.xenproject.org/osstest/logs/181191/ Failures :-/ but no regressions. Tests which did not succeed, but are not blocking: test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-armhf-armhf-xl 15 migrate-support-check fail never pass test-armhf-armhf-xl 16 saverestore-support-check fail never pass version targeted for testing: xen b3880c365db89051728e1de6b6889c750cbdd915 baseline version: xen 67fdffef9246c82cecd8db28838ed09e79e2528a Last test of basis 181122 2023-06-02 21:00:24 Z 2 days Testing same since 181191 2023-06-05 14:01:55 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Andrew Cooper Anthony PERARD Jan Beulich Juergen Gross jobs: build-arm64-xsm pass build-amd64 pass build-armhf pass build-amd64-libvirt pass test-armhf-armhf-xl pass test-arm64-arm64-xl-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-libvirt pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Pushing revision : To xenbits.xen.org:/home/xen/git/xen.git 67fdffef92..b3880c365d b3880c365db89051728e1de6b6889c750cbdd915 -> smoke From xen-devel-bounces@lists.xenproject.org Mon Jun 05 17:08:33 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 05 Jun 2023 17:08:33 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543817.849104 (Exim 4.92) (envelope-from ) id 1q6Dgw-0001qq-Ly; Mon, 05 Jun 2023 17:08:26 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543817.849104; Mon, 05 Jun 2023 17:08:26 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6Dgw-0001pd-Fa; Mon, 05 Jun 2023 17:08:26 +0000 Received: by outflank-mailman (input) for mailman id 543817; Mon, 05 Jun 2023 17:08:25 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6Dgv-0001hK-8w for xen-devel@lists.xenproject.org; Mon, 05 Jun 2023 17:08:25 +0000 Received: from mail-wm1-x32e.google.com (mail-wm1-x32e.google.com [2a00:1450:4864:20::32e]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 931a5fec-03c3-11ee-8611-37d641c3527e; Mon, 05 Jun 2023 19:08:21 +0200 (CEST) Received: by mail-wm1-x32e.google.com with SMTP id 5b1f17b1804b1-3f7378a75c0so14609885e9.3 for ; Mon, 05 Jun 2023 10:08:21 -0700 (PDT) Received: from localhost.localdomain (default-46-102-197-194.interdsl.co.uk. [46.102.197.194]) by smtp.gmail.com with ESMTPSA id b3-20020a5d4d83000000b0030c4d8930b1sm10247405wru.91.2023.06.05.10.08.20 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 05 Jun 2023 10:08:20 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 931a5fec-03c3-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cloud.com; s=cloud; t=1685984901; x=1688576901; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=BxAN7ZJqZgXBmrgHdZW7qym5luDTyymN4x+VG5t/p10=; b=DzxWjxrnc541pahAA3nG8MhbZgpOolJmw4Fg9QLMJEPKUGwJM2mOELSGlIpyfjeU7h rqN4lhl3MXgNMibimZ1G0kwln9gweBTO3uyzTiia+4DgVDJAcs5dQ0N/ADLaLYPGxZIN kvCUlQZ33JAt44nHMefHhkfcqi2qlf72KKutU= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1685984901; x=1688576901; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=BxAN7ZJqZgXBmrgHdZW7qym5luDTyymN4x+VG5t/p10=; b=Q76sTr8669BAADG/o4ObJwL92rh3hjXgFTY6J4MDFaOiuM/TOxkg+VT1W5dYbm5w66 phlRJfShmD1CJ1KXHhrRQZsowiXIN40chfi/+jR5Ni0ntrf7EDkbaPwgdxJf7grLB9MS 28UP2JyhYvsVPOTLIUdF65oHyoRF/CsMr9AQijDxwvuchvisLiHFrlqWfGLqD+QdrgTa FROj67ABFuVWwK8o2lV0afVXoAEl3U0BiNYVY/lgjAkEqNzDFeFHl6qtUZkb+nmcu7bq PzGGsy2PnoCfzSfSk0hLk26bkexuncHr65qWrokYJfr8tlGfFvi7kHp4qUmz7DvbG9d3 p6sg== X-Gm-Message-State: AC+VfDwvsH+pKWEKeWdaggs7MhCBh75CVksrT4h233eESPWOAhyS0IBD bVaQaj017wFg0sU0iG8mrwcZDiv7T79dwLq5h3M= X-Google-Smtp-Source: ACHHUZ5xQAGYp5OaSB5tLoDjEH2hpCqFXpvZG91iOogkNk1el8YW4K4c8hST4bzL6ZZc8+662GfP8Q== X-Received: by 2002:a05:600c:b47:b0:3f6:5169:1ad5 with SMTP id k7-20020a05600c0b4700b003f651691ad5mr7447472wmr.38.1685984900993; Mon, 05 Jun 2023 10:08:20 -0700 (PDT) From: Alejandro Vallejo To: Xen-devel Cc: Alejandro Vallejo , Jan Beulich , Andrew Cooper , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Wei Liu Subject: [PATCH v2 0/4] Prevent attempting updates known to fail Date: Mon, 5 Jun 2023 18:08:13 +0100 Message-Id: <20230605170817.9913-1-alejandro.vallejo@cloud.com> X-Mailer: git-send-email 2.34.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit [This series spun out of a previous patch with the same name, with this series adding more related enhancements. Kept as v2 to preserve the linkage with previous suggestions.] v2: * Removed a redundant check * Ignore microcode interface if the revision is -1 * Perform the DIS_MCU_LOAD checks during init rather than apply time Under certain conditions a CPU may not be able to perform microcode updates even if hardware exists to that effect. In particular: * If Xen runs under certain hypervisors they won't allow microcode updates, and will signal this fact by reporting a microcode revision of -1. * If the DIS_MCU_LOAD bit is set, which is expected in some baremetal clouds where the owner may not trust the tenant, then the CPU is not capable of loading new microcode. This series adds logic so that in both of these cases we don't needlessly attempt updates that are not going to succeed. Patch summary: Patch 1 removes a redundant family check in the Intel init path. Patch 2 moves an early read of MSR_ARCH_CAPS from tsx_init() back to immediately after the early microcode load. Patch 3 Recognizes microcode revision of -1 as a hint meaning "don't use the microcode interface". Patch 4 Adds support for DIS_MCU_LOAD during init time. Alejandro Vallejo (4): x86/microcode: Remove Intel's family check on early_microcode_init() x86: Read MSR_ARCH_CAPS after early_microcode_init() x86/microcode: Ignore microcode loading interface for revision = -1 x86/microcode: Prevent attempting updates if DIS_MCU_LOAD is set xen/arch/x86/cpu/microcode/core.c | 79 +++++++++++++++++++++++++-- xen/arch/x86/include/asm/cpufeature.h | 1 + xen/arch/x86/include/asm/msr-index.h | 5 ++ xen/arch/x86/tsx.c | 15 +---- 4 files changed, 82 insertions(+), 18 deletions(-) -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 05 17:08:33 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 05 Jun 2023 17:08:33 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543815.849092 (Exim 4.92) (envelope-from ) id 1q6Dgw-0001ho-26; Mon, 05 Jun 2023 17:08:26 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543815.849092; Mon, 05 Jun 2023 17:08:26 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6Dgv-0001hh-V6; Mon, 05 Jun 2023 17:08:25 +0000 Received: by outflank-mailman (input) for mailman id 543815; Mon, 05 Jun 2023 17:08:24 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6Dgu-0001hL-2i for xen-devel@lists.xenproject.org; Mon, 05 Jun 2023 17:08:24 +0000 Received: from mail-wm1-x32b.google.com (mail-wm1-x32b.google.com [2a00:1450:4864:20::32b]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 939009e2-03c3-11ee-b232-6b7b168915f2; Mon, 05 Jun 2023 19:08:22 +0200 (CEST) Received: by mail-wm1-x32b.google.com with SMTP id 5b1f17b1804b1-3f6d38a140bso36894145e9.1 for ; Mon, 05 Jun 2023 10:08:22 -0700 (PDT) Received: from localhost.localdomain (default-46-102-197-194.interdsl.co.uk. [46.102.197.194]) by smtp.gmail.com with ESMTPSA id b3-20020a5d4d83000000b0030c4d8930b1sm10247405wru.91.2023.06.05.10.08.21 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 05 Jun 2023 10:08:21 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 939009e2-03c3-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cloud.com; s=cloud; t=1685984902; x=1688576902; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=UaRbw/sqJoSJWbfETm9zRVkdTLn2hj3BA9S5N+S7y90=; b=i+Vl4p4zvEH/nYqsQIp8xv5oLP6H29zp+zFEwqb9LWf3wM5TI7Fq25pCPB5jOzFixf /SUgNBf9Wdfm20KzwhaL/rvehq6RDofIBR7GA0DZ0I4e1bxBYCzzuKFbbp/8bv/QtQG7 dWLbqC4n7NC+sqMfz1fVFvJmh7dT7ggkQYlJU= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1685984902; x=1688576902; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=UaRbw/sqJoSJWbfETm9zRVkdTLn2hj3BA9S5N+S7y90=; b=Pd8kgCJaBzmAe5aI3VlLWkPOt+KT0TCgkzou8SBdsLFbco7pZC1Uvs32nFd69ul8ei NSMvlxQgoKUUbryVQ0MqNRKejKHapbAi4dUE/7cVM7WCCZ4Icp0uFxsvL6wMG/JJYXAB wRJLUnrPW2WjWcocVP6XHRw4UZhX4ZNKwlW8bq+TIeQCDW4r6tZ40FANmS/RsEutLd6l tX7qUD97bgxHyRPt7LYE+JHE1WIhwrYIq3HqciokJCEnQkN80A6LD6IRsrFV5x9wEMnr wJ/jw/iNV/lNSNNL8weTn4lBcyzxrJkaRy5hSsBVbT28E7rsEIrxbuUdHgVjf4Q4OMmB qeYw== X-Gm-Message-State: AC+VfDzrGqtiYP1qhMHVs8JK6p/qoy1I5/lgTokXQ6kwDnKANyNWMDcH oZcb1EAGM163IVhybY66A9jQDL5KhE3Op14C7PE= X-Google-Smtp-Source: ACHHUZ7lLvcV1tRW3PDGf4rz/a2dJpVlzf+rnHz2smfdTCd5C2zUSEENAFx0V0GDy4VePu79+/jLTA== X-Received: by 2002:a7b:cd89:0:b0:3f7:3634:e21b with SMTP id y9-20020a7bcd89000000b003f73634e21bmr4580813wmj.2.1685984901953; Mon, 05 Jun 2023 10:08:21 -0700 (PDT) From: Alejandro Vallejo To: Xen-devel Cc: Alejandro Vallejo , Jan Beulich , Andrew Cooper , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Wei Liu Subject: [PATCH v2 1/4] x86/microcode: Remove Intel's family check on early_microcode_init() Date: Mon, 5 Jun 2023 18:08:14 +0100 Message-Id: <20230605170817.9913-2-alejandro.vallejo@cloud.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20230605170817.9913-1-alejandro.vallejo@cloud.com> References: <20230605170817.9913-1-alejandro.vallejo@cloud.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Intel only suuports 64bits on families 6 and 15, so we can always assume microcode loading facilities are present and skip the check. Signed-off-by: Alejandro Vallejo --- v2: * New addition --- xen/arch/x86/cpu/microcode/core.c | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/xen/arch/x86/cpu/microcode/core.c b/xen/arch/x86/cpu/microcode/core.c index c1033f3bc2..29ff38f35c 100644 --- a/xen/arch/x86/cpu/microcode/core.c +++ b/xen/arch/x86/cpu/microcode/core.c @@ -854,8 +854,14 @@ int __init early_microcode_init(unsigned long *module_map, break; case X86_VENDOR_INTEL: - if ( c->x86 >= 6 ) - ucode_ops = intel_ucode_ops; + /* + * Intel introduced microcode loading with family 6. Because we + * don't support compiling Xen for 32bit machines we're guaranteed + * that at this point we're either in family 15 (Pentium 4) or 6 + * (everything since then), so microcode facilities are always + * present. + */ + ucode_ops = intel_ucode_ops; break; } -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 05 17:08:33 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 05 Jun 2023 17:08:33 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543818.849108 (Exim 4.92) (envelope-from ) id 1q6Dgw-0001yS-U0; Mon, 05 Jun 2023 17:08:26 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543818.849108; Mon, 05 Jun 2023 17:08:26 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6Dgw-0001vQ-Ob; Mon, 05 Jun 2023 17:08:26 +0000 Received: by outflank-mailman (input) for mailman id 543818; Mon, 05 Jun 2023 17:08:25 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6Dgv-0001hK-Jj for xen-devel@lists.xenproject.org; Mon, 05 Jun 2023 17:08:25 +0000 Received: from mail-wm1-x331.google.com (mail-wm1-x331.google.com [2a00:1450:4864:20::331]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 945e8a35-03c3-11ee-8611-37d641c3527e; Mon, 05 Jun 2023 19:08:23 +0200 (CEST) Received: by mail-wm1-x331.google.com with SMTP id 5b1f17b1804b1-3f70fc4682aso44516565e9.1 for ; Mon, 05 Jun 2023 10:08:23 -0700 (PDT) Received: from localhost.localdomain (default-46-102-197-194.interdsl.co.uk. [46.102.197.194]) by smtp.gmail.com with ESMTPSA id b3-20020a5d4d83000000b0030c4d8930b1sm10247405wru.91.2023.06.05.10.08.22 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 05 Jun 2023 10:08:22 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 945e8a35-03c3-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cloud.com; s=cloud; t=1685984903; x=1688576903; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=AQ0i8Te1opYVMDeoQr+YKauj4QQYILajO6V4WWhluDI=; b=AijknLkAw44KoXyWtWTqPOsvWTUeCgC7yDC7DbCsgHQz9BlJiEr2hVaVzvBy+qe9lT ek7JourSTY0vpLo85i752gOXghl8nqswKcR/qGpevLS0eZQTBa/74cnskV6I7fedT9AV cQE4lWvvgxUeUiccmC+gwbp9pU6KZmj+sWCW8= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1685984903; x=1688576903; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=AQ0i8Te1opYVMDeoQr+YKauj4QQYILajO6V4WWhluDI=; b=Y0rtgHgRvtjQHOH67jETDM75LZzirLygIWmhNNzc6qqSSreOP1H8/vfRhL8EKtk2e2 vNZP7V2Uf6jRAUxgp9JEu0vfBCN/7rbDvIyUdj3vxvlLshSpwYKuRACEn7w3W72v4a/v 4CzJp3k4PEJFucUy2AVtpyTm82AMVcE4r7TVS3Nx0bRSfgZmZncyGmuSL3M2vsMh05l8 NHARJTi2Xn1dKvnj+qmAPZ0YcqHJi0/lZv4PCwuOAgFAGRtHA8O9tRl3/Vr9fhqwy6TO Y9qCelwJ5KACCv0H0F8XOa5j1umkGJI1OAICMZUTTEmrtLa93fkvinfN4TVTRQ3YLFPh guUg== X-Gm-Message-State: AC+VfDwk1z1sA/PFKNaUUtZ+ucghM5QhFubY5r3gtjIxeFOwOELszTcJ ujC1P0DZ4fYFs5kkCCTRonDwl8engt+jXzLhPQ0= X-Google-Smtp-Source: ACHHUZ7u1sk2+R+asIIG0fkfef+a11cKVB0k6wJX3/SpkDo/ZSUS+7nRmWIapgoPCzcCH2bOcbZjgA== X-Received: by 2002:a05:600c:282:b0:3f7:3526:d96f with SMTP id 2-20020a05600c028200b003f73526d96fmr4020879wmk.27.1685984903394; Mon, 05 Jun 2023 10:08:23 -0700 (PDT) From: Alejandro Vallejo To: Xen-devel Cc: Alejandro Vallejo , Jan Beulich , Andrew Cooper , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Wei Liu Subject: [PATCH v2 3/4] x86/microcode: Ignore microcode loading interface for revision = -1 Date: Mon, 5 Jun 2023 18:08:16 +0100 Message-Id: <20230605170817.9913-4-alejandro.vallejo@cloud.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20230605170817.9913-1-alejandro.vallejo@cloud.com> References: <20230605170817.9913-1-alejandro.vallejo@cloud.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Some hypervisors report ~0 as the microcode revision to mean "don't issue microcode updates". Ignore the microcode loading interface in that case. Signed-off-by: Alejandro Vallejo --- v2: * New addition --- xen/arch/x86/cpu/microcode/core.c | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/xen/arch/x86/cpu/microcode/core.c b/xen/arch/x86/cpu/microcode/core.c index 892bcec901..4f60d96d98 100644 --- a/xen/arch/x86/cpu/microcode/core.c +++ b/xen/arch/x86/cpu/microcode/core.c @@ -874,6 +874,21 @@ int __init early_microcode_init(unsigned long *module_map, break; } + if ( ucode_ops.collect_cpu_info ) + ucode_ops.collect_cpu_info(); + + /* + * This is a special case for virtualized Xen. Some hypervisors + * deliberately report a microcode revision of -1 to mean that they + * will not accept microcode updates. We take the hint and ignore the + * microcode interface in that case. + */ + if ( this_cpu(cpu_sig).rev == ~0 ) + { + this_cpu(cpu_sig) = (struct cpu_signature){ 0 }; + ucode_ops = (struct microcode_ops){ 0 }; + } + if ( !ucode_ops.apply_microcode ) { printk(XENLOG_WARNING "Microcode loading not available\n"); @@ -882,8 +897,6 @@ int __init early_microcode_init(unsigned long *module_map, microcode_grab_module(module_map, mbi); - ucode_ops.collect_cpu_info(); - if ( ucode_mod.mod_end || ucode_blob.size ) rc = early_microcode_update_cpu(); -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 05 17:08:33 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 05 Jun 2023 17:08:33 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543816.849097 (Exim 4.92) (envelope-from ) id 1q6Dgw-0001kV-AN; Mon, 05 Jun 2023 17:08:26 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543816.849097; Mon, 05 Jun 2023 17:08:26 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6Dgw-0001jY-5T; Mon, 05 Jun 2023 17:08:26 +0000 Received: by outflank-mailman (input) for mailman id 543816; Mon, 05 Jun 2023 17:08:24 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6Dgu-0001hL-OX for xen-devel@lists.xenproject.org; Mon, 05 Jun 2023 17:08:24 +0000 Received: from mail-wr1-x42d.google.com (mail-wr1-x42d.google.com [2a00:1450:4864:20::42d]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 93f918b1-03c3-11ee-b232-6b7b168915f2; Mon, 05 Jun 2023 19:08:23 +0200 (CEST) Received: by mail-wr1-x42d.google.com with SMTP id ffacd0b85a97d-30ad99fa586so5082388f8f.2 for ; Mon, 05 Jun 2023 10:08:23 -0700 (PDT) Received: from localhost.localdomain (default-46-102-197-194.interdsl.co.uk. [46.102.197.194]) by smtp.gmail.com with ESMTPSA id b3-20020a5d4d83000000b0030c4d8930b1sm10247405wru.91.2023.06.05.10.08.22 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 05 Jun 2023 10:08:22 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 93f918b1-03c3-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cloud.com; s=cloud; t=1685984902; x=1688576902; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=B7fxp0WbBbMKypEvumAuysCY0BLPaaSmYzs2KisIH00=; b=bX0ieJYw9ilCPO+NbFfqK7wmgNzrSz8WqwisW2uzz/F58LwomsoRUNxVU/i/WGqfaQ lZDdLqJq6dZF10AgGibJjPShDGdlH5pAKtuVCSzQwzB0WMfobdEzZrNvvqejBeWbzWVN aQjOl1ZJpdzNSM+ARk8icJpA5JN6s04TimjUU= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1685984902; x=1688576902; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=B7fxp0WbBbMKypEvumAuysCY0BLPaaSmYzs2KisIH00=; b=HmV6YC1GXWatxpowOlgwWod4++AiJXc58twQGaN3lq37VYV9tHbgcltSODtAPea9Ym 8wvzPfhFhNmuw05JFrjZ5t2aQmyns1/5FWX4UTxST8PGfpV5cT7LRnBFEBBWCQ5npJ1u aIQUNMsN1wAjbBVcp7+qiDtaM57ztw4tzeEPJiXuoEsAdwwS/sECG63coJkeN144TzQf v4I1Z7EHlzXkdt63LRARYGaZOiQSm91UwwuW/fmWtW+XSppS8DfSPN/PwYG7iYHm1H+X pydjfkz7mMEivqk7SpK8/KbCKa3BWdHINOGxubKGbDMKjkMhm3ZFNaS61L09zngzt/xO SpvA== X-Gm-Message-State: AC+VfDwrB05YE1ubZAHJAAPBzkcfsJ5l9bn2WSW4CbRfQbp6WmYh1QlG LxVk2NozCg/on8TNVmsN0dOiSHihA1ru29/36Wo= X-Google-Smtp-Source: ACHHUZ6yjFhHjZcRl5U8qb7QH1Jqd7Os8ifx204lVxQq/+5cXpNuDf1O+km9wHvsj/hChpQ2U9HCYw== X-Received: by 2002:a05:6000:44:b0:306:4162:ebbe with SMTP id k4-20020a056000004400b003064162ebbemr6411420wrx.49.1685984902557; Mon, 05 Jun 2023 10:08:22 -0700 (PDT) From: Alejandro Vallejo To: Xen-devel Cc: Alejandro Vallejo , Jan Beulich , Andrew Cooper , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Wei Liu Subject: [PATCH v2 2/4] x86: Read MSR_ARCH_CAPS after early_microcode_init() Date: Mon, 5 Jun 2023 18:08:15 +0100 Message-Id: <20230605170817.9913-3-alejandro.vallejo@cloud.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20230605170817.9913-1-alejandro.vallejo@cloud.com> References: <20230605170817.9913-1-alejandro.vallejo@cloud.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit tsx_init() has some ad-hoc code to read MSR_ARCH_CAPS if present. In order to suuport DIS_MCU_UPDATE we need access to it earlier, so this patch moves early read to the tail of early_microcode_init(), after the early microcode update. The read of the 7d0 CPUID leaf is left in a helper because it's reused in a later patch. No functional change. Signed-off-by: Alejandro Vallejo --- I suspect there was an oversight in tsx_init() by which boot_cpu_data.cpuid_level was never read? The first read I can see is in identify_cpu(), which happens after tsx_init(). v2: * New addition --- xen/arch/x86/cpu/microcode/core.c | 21 +++++++++++++++++++++ xen/arch/x86/tsx.c | 15 +++------------ 2 files changed, 24 insertions(+), 12 deletions(-) diff --git a/xen/arch/x86/cpu/microcode/core.c b/xen/arch/x86/cpu/microcode/core.c index 29ff38f35c..892bcec901 100644 --- a/xen/arch/x86/cpu/microcode/core.c +++ b/xen/arch/x86/cpu/microcode/core.c @@ -840,6 +840,15 @@ static int __init early_microcode_update_cpu(void) return microcode_update_cpu(patch); } +static void __init early_read_cpuid_7d0(void) +{ + boot_cpu_data.cpuid_level = cpuid_eax(0); + + if ( boot_cpu_data.cpuid_level >= 7 ) + boot_cpu_data.x86_capability[FEATURESET_7d0] + = cpuid_count_edx(7, 0); +} + int __init early_microcode_init(unsigned long *module_map, const struct multiboot_info *mbi) { @@ -878,5 +887,17 @@ int __init early_microcode_init(unsigned long *module_map, if ( ucode_mod.mod_end || ucode_blob.size ) rc = early_microcode_update_cpu(); + early_read_cpuid_7d0(); + + /* + * tsx_init() needs MSR_ARCH_CAPS, but it runs before identify_cpu() + * populates boot_cpu_data, so we read it here to centralize early + * CPUID/MSR reads in the same place. + */ + if ( cpu_has_arch_caps ) + rdmsr(MSR_ARCH_CAPABILITIES, + boot_cpu_data.x86_capability[FEATURESET_m10Al], + boot_cpu_data.x86_capability[FEATURESET_m10Ah]); + return rc; } diff --git a/xen/arch/x86/tsx.c b/xen/arch/x86/tsx.c index 80c6f4cedd..0501e181bf 100644 --- a/xen/arch/x86/tsx.c +++ b/xen/arch/x86/tsx.c @@ -39,9 +39,9 @@ void tsx_init(void) static bool __read_mostly once; /* - * This function is first called between microcode being loaded, and CPUID - * being scanned generally. Read into boot_cpu_data.x86_capability[] for - * the cpu_has_* bits we care about using here. + * While MSRs/CPUID haven't yet been scanned, MSR_ARCH_CAPABILITIES + * and leaf 7d0 have already been read if present after early microcode + * loading time. So we can assume _those_ are present. */ if ( unlikely(!once) ) { @@ -49,15 +49,6 @@ void tsx_init(void) once = true; - if ( boot_cpu_data.cpuid_level >= 7 ) - boot_cpu_data.x86_capability[FEATURESET_7d0] - = cpuid_count_edx(7, 0); - - if ( cpu_has_arch_caps ) - rdmsr(MSR_ARCH_CAPABILITIES, - boot_cpu_data.x86_capability[FEATURESET_m10Al], - boot_cpu_data.x86_capability[FEATURESET_m10Ah]); - has_rtm_always_abort = cpu_has_rtm_always_abort; if ( cpu_has_tsx_ctrl && cpu_has_srbds_ctrl ) -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 05 17:08:35 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 05 Jun 2023 17:08:35 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543819.849132 (Exim 4.92) (envelope-from ) id 1q6Dgy-0002dA-6w; Mon, 05 Jun 2023 17:08:28 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543819.849132; Mon, 05 Jun 2023 17:08:28 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6Dgy-0002bX-2x; Mon, 05 Jun 2023 17:08:28 +0000 Received: by outflank-mailman (input) for mailman id 543819; Mon, 05 Jun 2023 17:08:26 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6Dgw-0001hK-9t for xen-devel@lists.xenproject.org; Mon, 05 Jun 2023 17:08:26 +0000 Received: from mail-wm1-x332.google.com (mail-wm1-x332.google.com [2a00:1450:4864:20::332]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 94d0ae44-03c3-11ee-8611-37d641c3527e; Mon, 05 Jun 2023 19:08:24 +0200 (CEST) Received: by mail-wm1-x332.google.com with SMTP id 5b1f17b1804b1-3f6da07feb2so50761045e9.0 for ; Mon, 05 Jun 2023 10:08:24 -0700 (PDT) Received: from localhost.localdomain (default-46-102-197-194.interdsl.co.uk. [46.102.197.194]) by smtp.gmail.com with ESMTPSA id b3-20020a5d4d83000000b0030c4d8930b1sm10247405wru.91.2023.06.05.10.08.23 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 05 Jun 2023 10:08:23 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 94d0ae44-03c3-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cloud.com; s=cloud; t=1685984904; x=1688576904; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=OOsivV2azY4WdSK6TBmAXPP6Pm2+kuO/HkiPvSCcP+E=; b=CGuBFukDMR/XfNLUieqkaIXmDgSty6jly7wVcQ/I1mVAB0/6WyIl4uOjIt/3ql1tD+ 9Hga37ejgciqASd73lxw0g+pYuvt04QY8mE1Ebv+IiyNvm7WA3z8kuz3jbsb4rTQauLm oa2aJS19yzZd3c4Lyv8I4yUOTF3+hyJrwhS9E= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1685984904; x=1688576904; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=OOsivV2azY4WdSK6TBmAXPP6Pm2+kuO/HkiPvSCcP+E=; b=hCqegiZh5tYoA+jUHoqfS++btC83rnC3uxX+1b61kVzBPiggP7tuOiCz+wE0+vTJT7 S4qDh++wiHJDIyjhcBXajCPXzLiBUjiQQD8i65yxwtUXAx5M0j11jRDt78omNGnFL6y8 +A0PSMWOfrR3HLgRruepup84qHaNfz2eC0UBOV+zmlF+0zvYXB5tnnOuqeHxrbpxZVL4 +JRjE5rqOD8LQYS284+enJsEdAtrmiQ54mNa9gNPeTtKuq+mJKTiSKzWPBtsFKh/Tlse gTPoR6bz9NCXwGfOMrcVSW6B7eJU/MqNz9nR5HY26Z9IqKPEraLkOWAj0QzM8PL3A4gg n+AQ== X-Gm-Message-State: AC+VfDyvADDCcImpU7SCYMkPL5R3JodWtevgbjdPFrTXveA6SLtZMfKd VBZJk57BB+OeT2kTkoNvKaeYkJCTbrySH4N0Wpk= X-Google-Smtp-Source: ACHHUZ79VHMcIqX7iJPOAGTiRmV38ChV2yl5EgFdR962kzuSVB4cmdJaiSi1W5ytU1STeUQ/NtrG5Q== X-Received: by 2002:a7b:c7d2:0:b0:3f4:2255:8608 with SMTP id z18-20020a7bc7d2000000b003f422558608mr9181759wmk.31.1685984904107; Mon, 05 Jun 2023 10:08:24 -0700 (PDT) From: Alejandro Vallejo To: Xen-devel Cc: Alejandro Vallejo , Jan Beulich , Andrew Cooper , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Wei Liu Subject: [PATCH v2 4/4] x86/microcode: Prevent attempting updates if DIS_MCU_LOAD is set Date: Mon, 5 Jun 2023 18:08:17 +0100 Message-Id: <20230605170817.9913-5-alejandro.vallejo@cloud.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20230605170817.9913-1-alejandro.vallejo@cloud.com> References: <20230605170817.9913-1-alejandro.vallejo@cloud.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit If IA32_MSR_MCU_CONTROL exists then it's possible a CPU may be unable to perform microcode updates. This is controlled through the DIS_MCU_LOAD bit and is intended for baremetal clouds where the owner may not trust the tenant to choose the microcode version in use. This patch makes sure we only expose the microcode loading interface when it can be actually used, while also allowing reads of current microcode versions. Patch summary: * Read CPUID leaf 7d0 early so DIS_MCU_LOAD can be checked. * Hide microcode loading handlers if DIS_MCU_LOAD is set except for collect_cpu_info() * Update microcode_update_one() so APs can read their microcode version even if DIS_MCU_LOAD is set. Signed-off-by: Alejandro Vallejo --- v2: * Moved check from apply time to init time. --- xen/arch/x86/cpu/microcode/core.c | 31 +++++++++++++++++++++++++-- xen/arch/x86/include/asm/cpufeature.h | 1 + xen/arch/x86/include/asm/msr-index.h | 5 +++++ 3 files changed, 35 insertions(+), 2 deletions(-) diff --git a/xen/arch/x86/cpu/microcode/core.c b/xen/arch/x86/cpu/microcode/core.c index 4f60d96d98..a4c123118b 100644 --- a/xen/arch/x86/cpu/microcode/core.c +++ b/xen/arch/x86/cpu/microcode/core.c @@ -749,11 +749,12 @@ __initcall(microcode_init); /* Load a cached update to current cpu */ int microcode_update_one(void) { + if ( ucode_ops.collect_cpu_info ) + alternative_vcall(ucode_ops.collect_cpu_info); + if ( !ucode_ops.apply_microcode ) return -EOPNOTSUPP; - alternative_vcall(ucode_ops.collect_cpu_info); - return microcode_update_cpu(NULL); } @@ -849,12 +850,25 @@ static void __init early_read_cpuid_7d0(void) = cpuid_count_edx(7, 0); } +static bool __init this_cpu_can_install_update(void) +{ + uint64_t mcu_ctrl; + + if ( !cpu_has_mcu_ctrl ) + return true; + + rdmsrl(MSR_MCU_CONTROL, mcu_ctrl); + return !(mcu_ctrl & MCU_CONTROL_DIS_MCU_LOAD); +} + int __init early_microcode_init(unsigned long *module_map, const struct multiboot_info *mbi) { const struct cpuinfo_x86 *c = &boot_cpu_data; int rc = 0; + early_read_cpuid_7d0(); + switch ( c->x86_vendor ) { case X86_VENDOR_AMD: @@ -871,6 +885,15 @@ int __init early_microcode_init(unsigned long *module_map, * present. */ ucode_ops = intel_ucode_ops; + + /* + * In the case where microcode updates are blocked by the + * DIS_MCU_LOAD bit we can still read the microcode version even if + * we can't change it. + */ + if ( !this_cpu_can_install_update() ) + ucode_ops = (struct microcode_ops){ .collect_cpu_info = + intel_ucode_ops.collect_cpu_info }; break; } @@ -900,6 +923,10 @@ int __init early_microcode_init(unsigned long *module_map, if ( ucode_mod.mod_end || ucode_blob.size ) rc = early_microcode_update_cpu(); + /* + * We just updated microcode so we must reload the boot_cpu_data bits + * we read before because they might be stale after the updata. + */ early_read_cpuid_7d0(); /* diff --git a/xen/arch/x86/include/asm/cpufeature.h b/xen/arch/x86/include/asm/cpufeature.h index ace31e3b1f..0118171d7e 100644 --- a/xen/arch/x86/include/asm/cpufeature.h +++ b/xen/arch/x86/include/asm/cpufeature.h @@ -192,6 +192,7 @@ static inline bool boot_cpu_has(unsigned int feat) #define cpu_has_if_pschange_mc_no boot_cpu_has(X86_FEATURE_IF_PSCHANGE_MC_NO) #define cpu_has_tsx_ctrl boot_cpu_has(X86_FEATURE_TSX_CTRL) #define cpu_has_taa_no boot_cpu_has(X86_FEATURE_TAA_NO) +#define cpu_has_mcu_ctrl boot_cpu_has(X86_FEATURE_MCU_CTRL) #define cpu_has_fb_clear boot_cpu_has(X86_FEATURE_FB_CLEAR) /* Synthesized. */ diff --git a/xen/arch/x86/include/asm/msr-index.h b/xen/arch/x86/include/asm/msr-index.h index 2749e433d2..5c1350b5f9 100644 --- a/xen/arch/x86/include/asm/msr-index.h +++ b/xen/arch/x86/include/asm/msr-index.h @@ -165,6 +165,11 @@ #define PASID_PASID_MASK 0x000fffff #define PASID_VALID (_AC(1, ULL) << 31) +#define MSR_MCU_CONTROL 0x00001406 +#define MCU_CONTROL_LOCK (_AC(1, ULL) << 0) +#define MCU_CONTROL_DIS_MCU_LOAD (_AC(1, ULL) << 1) +#define MCU_CONTROL_EN_SMM_BYPASS (_AC(1, ULL) << 2) + #define MSR_UARCH_MISC_CTRL 0x00001b01 #define UARCH_CTRL_DOITM (_AC(1, ULL) << 0) -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 05 17:46:45 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 05 Jun 2023 17:46:45 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543836.849142 (Exim 4.92) (envelope-from ) id 1q6EHw-0008IC-5R; Mon, 05 Jun 2023 17:46:40 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543836.849142; Mon, 05 Jun 2023 17:46:40 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6EHw-0008I5-0r; Mon, 05 Jun 2023 17:46:40 +0000 Received: by outflank-mailman (input) for mailman id 543836; Mon, 05 Jun 2023 17:46:39 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6EHu-0008Hz-UI for xen-devel@lists.xenproject.org; Mon, 05 Jun 2023 17:46:39 +0000 Received: from NAM11-CO1-obe.outbound.protection.outlook.com (mail-co1nam11on20622.outbound.protection.outlook.com [2a01:111:f400:7eab::622]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id e93628ba-03c8-11ee-8611-37d641c3527e; Mon, 05 Jun 2023 19:46:35 +0200 (CEST) Received: from BN9PR03CA0157.namprd03.prod.outlook.com (2603:10b6:408:f4::12) by SJ2PR12MB7962.namprd12.prod.outlook.com (2603:10b6:a03:4c2::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.32; Mon, 5 Jun 2023 17:46:30 +0000 Received: from BN8NAM11FT070.eop-nam11.prod.protection.outlook.com (2603:10b6:408:f4:cafe::e6) by BN9PR03CA0157.outlook.office365.com (2603:10b6:408:f4::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33 via Frontend Transport; Mon, 5 Jun 2023 17:46:28 +0000 Received: from SATLEXMB04.amd.com (165.204.84.17) by BN8NAM11FT070.mail.protection.outlook.com (10.13.177.50) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6455.33 via Frontend Transport; Mon, 5 Jun 2023 17:46:27 +0000 Received: from SATLEXMB06.amd.com (10.181.40.147) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Mon, 5 Jun 2023 12:46:27 -0500 Received: from SATLEXMB04.amd.com (10.181.40.145) by SATLEXMB06.amd.com (10.181.40.147) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Mon, 5 Jun 2023 12:46:27 -0500 Received: from [192.168.137.15] (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server id 15.1.2375.34 via Frontend Transport; Mon, 5 Jun 2023 12:46:25 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: e93628ba-03c8-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=ZPEpeoUQNd1k4Li/JcMqF6lgsmCKNBDYRiyUiA6HOdSPU3S9GvGUPseHM7wcZk/vzpFCXXlgep4420qsKUQ/y0xlpVJcj//fua0iqAyfi0pTWBTHcuCbTfKDcSp8XQsR0GdFksX/nbfNUp3eKDvhKy+lWFrRUIbz4eJAVjGGQJHBU+5OvAMjuSlieEZa9XLQ2tb8LdnCjd/nnb0eUAUj8vhczMKUoOE1X3rWmF6EXZzHUHxFZjBFPXQQpVueEOf7S18RU2xDqSNCIoP/pM616Ck4U5yYDDvuaoSitJ/pV0d0oVbAuLco3kg9szZU+UJawjv9Tx8DnbqPWvxVwbpw8g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=SbzyvZL8aCV5a2eymcurHtTMQBQNjLKlJNuFXPDiFAY=; b=Y/lU44pGjy7gRsc2KyIy7H7LSrZXw1BNcruuUgXiTrb+lAJ62wqpUAxbdH2ZhrYRa0FZkczsYyCuSco9jSe0IgHkaHg5+KR3pl6mCcQEdRz9QK1DKhDUZtHkIkmd939leoUteGkWv3P9aXiwqdX/MJMAGp/KW3x9qIIGvfGVvSaqSyjzrRQdK7h9dKMksUbMGmP2g/DepLplyHujrmy1IWAQ2LmHJT7vIrO/R4U1Ka1dz4Ko6TGO2LUIF0byzZvuVTznLMLzQse6aWW9Crf3tEpugfhMVB5AAl5IUnZ1UEDfnO/To7QCoIitmfThMkDWpUp6d8bsMyHNPNJzgXlBww== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=SbzyvZL8aCV5a2eymcurHtTMQBQNjLKlJNuFXPDiFAY=; b=m/07xgUEpnMS/kDmKySDyKRbuUJ1e/3rEYKtMipc58Nco4sDEDX26VoswiMMVCEvThndu/7/jUdnpNkHLqvMiHcibzKCSY7Cs1hce9RHUZ3VcIIWq47nz484bg1KJTxy9Qca371u6nyuHHkbB3INARy5+Sw9XIkpvbQe4diTwp8= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C Message-ID: <8b433e63-9647-d217-115d-995c6ba176c5@amd.com> Date: Mon, 5 Jun 2023 13:46:25 -0400 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH v3 1/6] xen/arm: Move is_protected flag to struct device Content-Language: en-US To: Michal Orzel , CC: Oleksandr Tyshchenko , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk , Rahul Singh References: <20230518210658.66156-1-stewart.hildebrand@amd.com> <20230518210658.66156-2-stewart.hildebrand@amd.com> <0033f950-eacd-6af5-8256-38f4cbea87e3@amd.com> From: Stewart Hildebrand In-Reply-To: <0033f950-eacd-6af5-8256-38f4cbea87e3@amd.com> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BN8NAM11FT070:EE_|SJ2PR12MB7962:EE_ X-MS-Office365-Filtering-Correlation-Id: 532958f6-9689-47aa-d6e0-08db65ecc9d6 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 9xxnAWTGKqhWaPJwaIcde3/X8lJHTpcFhhlfX+gODqdaZSsljxmNHJOBaVnfMIofUhItx4K4zNajv2qaO1BwjaxaOd6tHmNmkL6/TGRaUuMJW+pAkWklhWov6R6gLI58ldV6QEyFaexCuKJt2/bZNLAeesnwhz8IPEn9l0LH0Zi/e4RCPMhLqtBm368FO9A8TFGzzXQMYCx519oHZ0oezumgfgDUqXuuBg/qxzWaTlWanwpfKaJ+lUdEhiSpvfIKqQp2sHPUpPHxTntT5cSZ7wQ0iAy/DjyOduNqXCFPDoSrbgfNH0Z0706QvS0dQToQmkmZxfl25fBYBx4z7/Rd3MyGKaHTnmLp7+c+2Nryw8VuDYUJPY4XCpptLtZx1DMi9y4Z7ioQIzcM+SqriiD3wTvBDinXPu/FQ1KHhgHWbCYa1VKrYM4l5rpU7G60sqCVBcltcssZtOWBvR3ooyl7RZ1xpgVf+Cx+rev16kbOO1F3XbzW3tJgg1dYnRqbD7IlTTP+beRTHk1C1OckBdUXWtWGyzuvoVENa0cBuh9sv625fCBVn6K6BR16uBo33ZovpMucCLE12aG0qzKVV3SEON+06EUa0P9H5n0YVAmU5L/Y0sih7adJa4BOqKxE9UohIOZULKLQJAm5ZwJOteMWuU1mpyxpLzF0w1jpGxiT3KNgXfkLWd/1oXTp2qdX3UIVSogO7bcH82e46gTC/LpPw4ygc9LEPMiLHyr26igpjiNt65CMBBUWQAmz5xBnwJH/OXxhZwTwf+z0rcRAe/d49NrHenZqBdZHL/0tE99f28w= X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(396003)(376002)(346002)(136003)(451199021)(46966006)(40470700004)(36840700001)(70586007)(70206006)(30864003)(2906002)(478600001)(31686004)(316002)(4326008)(8936002)(8676002)(41300700001)(54906003)(110136005)(16576012)(44832011)(5660300002)(53546011)(40460700003)(26005)(966005)(356005)(82740400003)(81166007)(2616005)(40480700001)(186003)(47076005)(426003)(336012)(83380400001)(36860700001)(36756003)(82310400005)(86362001)(31696002)(36900700001)(43740500002);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Jun 2023 17:46:27.5575 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 532958f6-9689-47aa-d6e0-08db65ecc9d6 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com] X-MS-Exchange-CrossTenant-AuthSource: BN8NAM11FT070.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ2PR12MB7962 On 5/22/23 10:28, Michal Orzel wrote: > Hi Stewart, > > On 18/05/2023 23:06, Stewart Hildebrand wrote: >> >> >> From: Oleksandr Tyshchenko >> >> This flag will be re-used for PCI devices by the subsequent >> patches. >> >> Signed-off-by: Oleksandr Tyshchenko >> Signed-off-by: Stewart Hildebrand >> --- >> v2->v3: >> * no change >> >> v1->v2: >> * no change >> >> downstream->v1: >> * rebase >> * s/dev_node->is_protected/dev_node->dev.is_protected/ in smmu.c >> * s/dt_device_set_protected(dev_to_dt(dev))/device_set_protected(dev)/ in smmu-v3.c >> * remove redundant device_is_protected checks in smmu-v3.c/ipmmu-vmsa.c >> >> (cherry picked from commit 59753aac77528a584d3950936b853ebf264b68e7 from >> the downstream branch poc/pci-passthrough from >> https://gitlab.com/xen-project/people/bmarquis/xen-arm-poc.git) >> --- >> xen/arch/arm/domain_build.c | 4 ++-- >> xen/arch/arm/include/asm/device.h | 13 +++++++++++++ >> xen/common/device_tree.c | 2 +- >> xen/drivers/passthrough/arm/ipmmu-vmsa.c | 8 +------- >> xen/drivers/passthrough/arm/smmu-v3.c | 7 +------ >> xen/drivers/passthrough/arm/smmu.c | 2 +- >> xen/drivers/passthrough/device_tree.c | 15 +++++++++------ >> xen/include/xen/device_tree.h | 13 ------------- >> 8 files changed, 28 insertions(+), 36 deletions(-) >> >> diff --git a/xen/arch/arm/domain_build.c b/xen/arch/arm/domain_build.c >> index 71f307a572e9..d228da641367 100644 >> --- a/xen/arch/arm/domain_build.c >> +++ b/xen/arch/arm/domain_build.c >> @@ -2503,7 +2503,7 @@ static int __init handle_device(struct domain *d, struct dt_device_node *dev, >> return res; >> } >> >> - if ( dt_device_is_protected(dev) ) >> + if ( device_is_protected(dt_to_dev(dev)) ) >> { >> dt_dprintk("%s setup iommu\n", dt_node_full_name(dev)); >> res = iommu_assign_dt_device(d, dev); >> @@ -3003,7 +3003,7 @@ static int __init handle_passthrough_prop(struct kernel_info *kinfo, >> return res; >> >> /* If xen_force, we allow assignment of devices without IOMMU protection. */ >> - if ( xen_force && !dt_device_is_protected(node) ) >> + if ( xen_force && !device_is_protected(dt_to_dev(node)) ) >> return 0; >> >> return iommu_assign_dt_device(kinfo->d, node); >> diff --git a/xen/arch/arm/include/asm/device.h b/xen/arch/arm/include/asm/device.h >> index b5d451e08776..086dde13eb6b 100644 >> --- a/xen/arch/arm/include/asm/device.h >> +++ b/xen/arch/arm/include/asm/device.h >> @@ -1,6 +1,8 @@ >> #ifndef __ASM_ARM_DEVICE_H >> #define __ASM_ARM_DEVICE_H >> >> +#include >> + >> enum device_type >> { >> DEV_DT, >> @@ -20,6 +22,7 @@ struct device >> #endif >> struct dev_archdata archdata; >> struct iommu_fwspec *iommu_fwspec; /* per-device IOMMU instance data */ >> + bool is_protected; /* Shows that device is protected by IOMMU */ > This will add 7 bytes of padding on arm64. Did you check if there is a hole you can reuse? Good point, I'll move it to save space (on arm64). With is_protected located in the hole after the enum, there will be no change in sizeof(struct device) on arm64. BTW, how do we feel about explicit padding? struct device { enum device_type type; + bool is_protected; /* Shows that device is protected by IOMMU */ + uint8_t _pad[3]; /* unused padding - can be removed to make room for future data */ #ifdef CONFIG_HAS_DEVICE_TREE struct dt_device_node *of_node; /* Used by drivers imported from Linux */ #endif struct dev_archdata archdata; struct iommu_fwspec *iommu_fwspec; /* per-device IOMMU instance data */ }; >> }; >> >> typedef struct device device_t; >> @@ -94,6 +97,16 @@ int device_init(struct dt_device_node *dev, enum device_class class, >> */ >> enum device_class device_get_class(const struct dt_device_node *dev); >> >> +static inline void device_set_protected(struct device *device) >> +{ >> + device->is_protected = true; >> +} >> + >> +static inline bool device_is_protected(const struct device *device) >> +{ >> + return device->is_protected; >> +} >> + >> #define DT_DEVICE_START(_name, _namestr, _class) \ >> static const struct device_desc __dev_desc_##_name __used \ >> __section(".dev.info") = { \ >> diff --git a/xen/common/device_tree.c b/xen/common/device_tree.c >> index 6c9712ab7bda..1d5d7cb5f01b 100644 >> --- a/xen/common/device_tree.c >> +++ b/xen/common/device_tree.c >> @@ -1874,7 +1874,7 @@ static unsigned long __init unflatten_dt_node(const void *fdt, >> /* By default dom0 owns the device */ >> np->used_by = 0; >> /* By default the device is not protected */ >> - np->is_protected = false; >> + np->dev.is_protected = false; >> INIT_LIST_HEAD(&np->domain_list); >> >> if ( new_format ) >> diff --git a/xen/drivers/passthrough/arm/ipmmu-vmsa.c b/xen/drivers/passthrough/arm/ipmmu-vmsa.c >> index 091f09b21752..039212a3a990 100644 >> --- a/xen/drivers/passthrough/arm/ipmmu-vmsa.c >> +++ b/xen/drivers/passthrough/arm/ipmmu-vmsa.c >> @@ -1288,14 +1288,8 @@ static int ipmmu_add_device(u8 devfn, struct device *dev) >> if ( !to_ipmmu(dev) ) >> return -ENODEV; >> >> - if ( dt_device_is_protected(dev_to_dt(dev)) ) >> - { >> - dev_err(dev, "Already added to IPMMU\n"); >> - return -EEXIST; >> - } > This removal and in smmuv3 needs to be explained in the commit msg. I think the rationale for the removal is no longer valid. In v1 of this series, we had: pci_add_device() pci.c iommu_add_device() pci.c iommu_add_dt_pci_device() device_tree.c if ( device_is_protected(dev) ) return 0; ops->add_device() device_set_protected() So in v1 of this series, the device_is_protected checks inside the add_device hooks were redundant because there was already such a check before calling the add_device hook. Now in v3 we don't have a device_is_protected check before calling ops->add_device: pci_add_device() pci.c iommu_add_device() pci.c ops->add_device() device_set_protected() So in v3 of this series, the checks in smmu-v3.c/ipmmu-vmsa.c aren't redundant anymore. I'll re-add the checks in v4. >> - >> /* Let Xen know that the master device is protected by an IOMMU. */ >> - dt_device_set_protected(dev_to_dt(dev)); >> + device_set_protected(dev); >> >> dev_info(dev, "Added master device (IPMMU %s micro-TLBs %u)\n", >> dev_name(fwspec->iommu_dev), fwspec->num_ids); >> diff --git a/xen/drivers/passthrough/arm/smmu-v3.c b/xen/drivers/passthrough/arm/smmu-v3.c >> index 4ca55d400a7b..f5910e79922f 100644 >> --- a/xen/drivers/passthrough/arm/smmu-v3.c >> +++ b/xen/drivers/passthrough/arm/smmu-v3.c >> @@ -1521,13 +1521,8 @@ static int arm_smmu_add_device(u8 devfn, struct device *dev) >> */ >> arm_smmu_enable_pasid(master); >> >> - if (dt_device_is_protected(dev_to_dt(dev))) { >> - dev_err(dev, "Already added to SMMUv3\n"); >> - return -EEXIST; >> - } >> - >> /* Let Xen know that the master device is protected by an IOMMU. */ >> - dt_device_set_protected(dev_to_dt(dev)); >> + device_set_protected(dev); >> >> dev_info(dev, "Added master device (SMMUv3 %s StreamIds %u)\n", >> dev_name(fwspec->iommu_dev), fwspec->num_ids); >> diff --git a/xen/drivers/passthrough/arm/smmu.c b/xen/drivers/passthrough/arm/smmu.c >> index 0a514821b336..5b6024d579a8 100644 >> --- a/xen/drivers/passthrough/arm/smmu.c >> +++ b/xen/drivers/passthrough/arm/smmu.c >> @@ -838,7 +838,7 @@ static int arm_smmu_dt_add_device_legacy(struct arm_smmu_device *smmu, >> master->of_node = dev_node; >> >> /* Xen: Let Xen know that the device is protected by an SMMU */ >> - dt_device_set_protected(dev_node); >> + device_set_protected(dev); >> >> for (i = 0; i < fwspec->num_ids; ++i) { >> if (!(smmu->features & ARM_SMMU_FEAT_STREAM_MATCH) && >> diff --git a/xen/drivers/passthrough/device_tree.c b/xen/drivers/passthrough/device_tree.c >> index 1c32d7b50cce..b5bd13393b56 100644 >> --- a/xen/drivers/passthrough/device_tree.c >> +++ b/xen/drivers/passthrough/device_tree.c >> @@ -34,7 +34,7 @@ int iommu_assign_dt_device(struct domain *d, struct dt_device_node *dev) >> if ( !is_iommu_enabled(d) ) >> return -EINVAL; >> >> - if ( !dt_device_is_protected(dev) ) >> + if ( !device_is_protected(dt_to_dev(dev)) ) >> return -EINVAL; >> >> spin_lock(&dtdevs_lock); >> @@ -65,7 +65,7 @@ int iommu_deassign_dt_device(struct domain *d, struct dt_device_node *dev) >> if ( !is_iommu_enabled(d) ) >> return -EINVAL; >> >> - if ( !dt_device_is_protected(dev) ) >> + if ( !device_is_protected(dt_to_dev(dev)) ) >> return -EINVAL; >> >> spin_lock(&dtdevs_lock); >> @@ -87,7 +87,7 @@ static bool_t iommu_dt_device_is_assigned(const struct dt_device_node *dev) >> { >> bool_t assigned = 0; >> >> - if ( !dt_device_is_protected(dev) ) >> + if ( !device_is_protected(dt_to_dev(dev)) ) >> return 0; >> >> spin_lock(&dtdevs_lock); >> @@ -141,12 +141,15 @@ int iommu_add_dt_device(struct dt_device_node *np) >> return -EINVAL; >> >> /* >> - * The device may already have been registered. As there is no harm in >> - * it just return success early. >> + * This is needed in case a device has both the iommus property and >> + * also appears in the mmu-masters list. >> */ >> - if ( dev_iommu_fwspec_get(dev) ) >> + if ( device_is_protected(dev) ) >> return 0; >> >> + if ( dev_iommu_fwspec_get(dev) ) >> + return -EEXIST; > This needs to be explained, because before this change, we were returning 0. Since this change is not related to moving the is_protected flag, I prefer to move it to a separate patch (with an appropriate explanation). Then we will keep this patch focused on actually moving the is_protected flag as the title suggests. >> + >> /* >> * According to the Documentation/devicetree/bindings/iommu/iommu.txt >> * from Linux. >> diff --git a/xen/include/xen/device_tree.h b/xen/include/xen/device_tree.h >> index 19a74909cece..c1e4751a581f 100644 >> --- a/xen/include/xen/device_tree.h >> +++ b/xen/include/xen/device_tree.h >> @@ -90,9 +90,6 @@ struct dt_device_node { >> struct dt_device_node *next; /* TODO: Remove it. Only use to know the last children */ >> struct dt_device_node *allnext; >> >> - /* IOMMU specific fields */ >> - bool is_protected; >> - >> /* HACK: Remove this if there is a need of space */ >> bool_t static_evtchn_created; > Not your fault (and I don't know if you should do anything about it) but this single field now causes > the whole structure to be 8 bytes larger than it could be on arm64. > > ~Michal From xen-devel-bounces@lists.xenproject.org Mon Jun 05 17:50:42 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 05 Jun 2023 17:50:42 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543841.849151 (Exim 4.92) (envelope-from ) id 1q6ELf-0001Gv-L7; Mon, 05 Jun 2023 17:50:31 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543841.849151; Mon, 05 Jun 2023 17:50:31 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6ELf-0001Go-IP; Mon, 05 Jun 2023 17:50:31 +0000 Received: by outflank-mailman (input) for mailman id 543841; Mon, 05 Jun 2023 17:50:30 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6ELe-0001Gi-1W for xen-devel@lists.xenproject.org; Mon, 05 Jun 2023 17:50:30 +0000 Received: from NAM02-BN1-obe.outbound.protection.outlook.com (mail-bn1nam02on20630.outbound.protection.outlook.com [2a01:111:f400:7eb2::630]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 73decb13-03c9-11ee-b232-6b7b168915f2; Mon, 05 Jun 2023 19:50:27 +0200 (CEST) Received: from MW4PR03CA0254.namprd03.prod.outlook.com (2603:10b6:303:b4::19) by DS0PR12MB8366.namprd12.prod.outlook.com (2603:10b6:8:f9::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.32; Mon, 5 Jun 2023 17:50:23 +0000 Received: from CO1NAM11FT065.eop-nam11.prod.protection.outlook.com (2603:10b6:303:b4:cafe::ab) by MW4PR03CA0254.outlook.office365.com (2603:10b6:303:b4::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33 via Frontend Transport; Mon, 5 Jun 2023 17:50:23 +0000 Received: from SATLEXMB04.amd.com (165.204.84.17) by CO1NAM11FT065.mail.protection.outlook.com (10.13.174.62) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6455.33 via Frontend Transport; Mon, 5 Jun 2023 17:50:22 +0000 Received: from SATLEXMB04.amd.com (10.181.40.145) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Mon, 5 Jun 2023 12:50:21 -0500 Received: from [192.168.137.15] (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server id 15.1.2375.34 via Frontend Transport; Mon, 5 Jun 2023 12:50:20 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 73decb13-03c9-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=EgasPQ1EvOwxTCa2B9lzcZxnsF5OA7wZrV2/3F4oP1Nh6foZyw4qvWTvVG9eW3OqEaOdPFr2twq0jC5vpx0HckMS1f8U+FYxF6AyyI8kOeC2SZ51DlyJdQ6GT5U4xxjE+HjNq8UXgzh85AkO1o0+ANlgApgR9X2Z5EqqOEyntjse+IivV/zUOmZcdBaOyf5AhArb/a6C/AimM95xnARQxhYps3+BvHBM51xYDEM76bj4T2Rw84kdsQt65Nj/oKMeVbH+BNHyXW5VoEMbaxsRvFMIweQfiVFs3hbay8uYjo8YsFE3/u1AQzt1fnzCzdJ9M4+iT1tb6eqHv04I5ffzGw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=eAbcGzmtVBTCC2KkGolv8uxFTfs2q7whkhgxrrlLj0U=; b=C9LjFx+tlpw2WAJ1UhVcS8vbcpWh/0h8UQry3DORXwv1T6SzWHIHQ0AAFNY9gfMkaE5/xIDXVMUDVuaVNvw7OtRaLjtWkvrDGHPS5+ifp0H/XlhvpLmFO9o6yN6GHBu42bBK5FwlVuYmMQuOH/Typ+syqu6TnSXWoFVrqTRKdRWyzFOiSf9HIxzv3jx9EI7mXcECJICFu7nx1tYeCVt0MYe0EtPNKDRoJnTl0m0ffXbLpJv46eY0F8xVQE+keIZy1aIxF2aO/aWlfxdcXHkMCEah8YSaCpRCOyG3i8dYdLzwwdJwocYwDTL1VQgeEqtZvk6AFUbxLwk/HeQs9YuODA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=eAbcGzmtVBTCC2KkGolv8uxFTfs2q7whkhgxrrlLj0U=; b=peZV35k9yhC1LwUdYkb1YgMjC/kgzvdf2kVSqoADEZm1CzrX77w5KWgoSKGY/3w3pksh/LTICj0lWkpyHZU5RAZywslRqBfukHwR5xVYshuPCu7BrQQRSp9XAdlr9eQhIK29ycYWV3NgcyV0M0AIgjdiLB0mFVzcmXOk7p/g1kc= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C Message-ID: <9548b7c7-478f-186d-a2f9-584d432dad1b@amd.com> Date: Mon, 5 Jun 2023 13:50:19 -0400 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH v3 2/6] iommu/arm: Add iommu_dt_xlate() Content-Language: en-US To: Michal Orzel , CC: Oleksandr Tyshchenko , Stefano Stabellini , Julien Grall , Rahul Singh , Bertrand Marquis References: <20230518210658.66156-1-stewart.hildebrand@amd.com> <20230518210658.66156-3-stewart.hildebrand@amd.com> From: Stewart Hildebrand In-Reply-To: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO1NAM11FT065:EE_|DS0PR12MB8366:EE_ X-MS-Office365-Filtering-Correlation-Id: f9f5f40a-1f7c-4233-5316-08db65ed55a9 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: DIpyRd8MgWFPsKwfikty/EbpugkL4X6jFqUQmujEzUXKMY95Ok1BKj6n813YaKzBotN4Dt3z3F819ig9tavvxe0OQpjqqxljaDWag3LZV+2dVQHdtW4hJprpT02X5KRVD27jQXv50MCgV6iQ53PCxsiI4y9Ke34QKOENSgB0sRdqW3modM8MQYNj9ccnRWb4mXgfGHC98eto1exvLYmrNP6iQ97Nu807FalqzyYnENzccRV7Gv0Si7f8oFlKtdINPAmzPnulzO3oyg2F83afXT5vN4ZbzR10Ntj9yPFXpl5fMSCui0Q0AZQVw/Xyvqajx4Ow6XxvVyawW2HRU+8HdKX+Y+XYrJTCGnTvefVOccKv44CLTZkE7B111wCoYd3Ck9xkvve3LiGfK9TTiavbiGNJRxh9DniJehk0SW9DDraa+mSMbIDsWMnKWy/LuLS86fMIlVejMbvrj31AkMMBZwqLkwxwGewqQPIoxNSi3OLZtN3w8FUoNwS1KJyppTNFXRiZTHZysuWDD3ixEZHTQihDJX65IZb6rqRMJQoNtM1s7t0yNAuYUfMnjxPPSPqgPvRtCfC+7CE9N/Ql7uR2g71WWPKBQy7PeZfLDZfRMzXfiM1rwKhXfRC32bQzzUo588LMIWahD3oYcR1kroSgj8uK13MVENlpQBlikF5DxCXAMXOqG9jul3y3MfX8RTI8TalXFlzT+88RlY7wr55jwx6eqjdz7BH0jOAHFKGYRZmRvdy4/BaNixGYJ5kjkObhfQKD3dQctTQNz+LODgx5IRl8Fyii3Vt3cH/do5/loFk= X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(376002)(39860400002)(396003)(136003)(346002)(451199021)(36840700001)(46966006)(40470700004)(47076005)(83380400001)(966005)(336012)(426003)(44832011)(110136005)(54906003)(82740400003)(40480700001)(40460700003)(478600001)(8676002)(8936002)(41300700001)(316002)(70586007)(70206006)(356005)(81166007)(31696002)(5660300002)(4326008)(86362001)(16576012)(36756003)(2906002)(36860700001)(82310400005)(26005)(186003)(31686004)(53546011)(2616005)(43740500002)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Jun 2023 17:50:22.0465 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: f9f5f40a-1f7c-4233-5316-08db65ed55a9 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com] X-MS-Exchange-CrossTenant-AuthSource: CO1NAM11FT065.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS0PR12MB8366 On 5/22/23 10:48, Michal Orzel wrote: > Hi Stewart, > > On 18/05/2023 23:06, Stewart Hildebrand wrote: >> >> >> From: Oleksandr Tyshchenko >> >> Move code for processing DT IOMMU specifier to a separate helper. >> This helper will be re-used for adding PCI devices by the subsequent >> patches as we will need exact the same actions for processing >> DT PCI-IOMMU specifier. >> >> While at it introduce NO_IOMMU to avoid magic "1". >> >> Signed-off-by: Oleksandr Tyshchenko >> Signed-off-by: Stewart Hildebrand # rename >> --- >> v2->v3: >> * no change >> >> v1->v2: >> * no change >> >> downstream->v1: >> * trivial rebase >> * s/dt_iommu_xlate/iommu_dt_xlate/ >> >> (cherry picked from commit c26bab0415ca303df86aba1d06ef8edc713734d3 from >> the downstream branch poc/pci-passthrough from >> https://gitlab.com/xen-project/people/bmarquis/xen-arm-poc.git) >> --- >> xen/drivers/passthrough/device_tree.c | 42 +++++++++++++++++---------- >> 1 file changed, 27 insertions(+), 15 deletions(-) >> >> diff --git a/xen/drivers/passthrough/device_tree.c b/xen/drivers/passthrough/device_tree.c >> index b5bd13393b56..1b50f4670944 100644 >> --- a/xen/drivers/passthrough/device_tree.c >> +++ b/xen/drivers/passthrough/device_tree.c >> @@ -127,15 +127,39 @@ int iommu_release_dt_devices(struct domain *d) >> return 0; >> } >> >> +/* This correlation must not be altered */ >> +#define NO_IOMMU 1 >> + >> +static int iommu_dt_xlate(struct device *dev, >> + struct dt_phandle_args *iommu_spec) > I think iommu_spec can be const. Yes, good catch >> +{ >> + const struct iommu_ops *ops = iommu_get_ops(); >> + int rc; >> + >> + if ( !dt_device_is_available(iommu_spec->np) ) >> + return NO_IOMMU; >> + >> + rc = iommu_fwspec_init(dev, &iommu_spec->np->dev); >> + if ( rc ) >> + return rc; >> + >> + /* >> + * Provide DT IOMMU specifier which describes the IOMMU master >> + * interfaces of that device (device IDs, etc) to the driver. >> + * The driver is responsible to decide how to interpret them. >> + */ >> + return ops->dt_xlate(dev, iommu_spec); > Wouldn't it be better to move the check (!ops->dt_xlate) from iommu_add_dt_device to this helper? > After all it is the only function that calls dt_xlate so for me it would be a natural placement. > Looking at the next patch it will also reduce the similar check in iommu_add_dt_pci_sideband_ids. Yes, I will move it From xen-devel-bounces@lists.xenproject.org Mon Jun 05 18:35:06 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 05 Jun 2023 18:35:06 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543847.849162 (Exim 4.92) (envelope-from ) id 1q6F2Y-0005m0-4C; Mon, 05 Jun 2023 18:34:50 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543847.849162; Mon, 05 Jun 2023 18:34:50 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6F2Y-0005lt-1W; Mon, 05 Jun 2023 18:34:50 +0000 Received: by outflank-mailman (input) for mailman id 543847; Mon, 05 Jun 2023 18:34:48 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6F2W-0005ll-90 for xen-devel@lists.xenproject.org; Mon, 05 Jun 2023 18:34:48 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6F2S-0002mt-92; Mon, 05 Jun 2023 18:34:44 +0000 Received: from gw1.octic.net ([88.97.20.152] helo=[10.0.1.102]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1q6F2S-00070P-38; Mon, 05 Jun 2023 18:34:44 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:Subject: From:References:Cc:To:MIME-Version:Date:Message-ID; bh=TSMsm/uDwx1pfiaYA1ufCuiyfF+RfzVysWX23j2GE84=; b=EqIJ6WNJR2EGWBH27DXLoOflyB lbpDGmx7M8eq6y5qOXGfnK3Xv/AmursaoGe/uEVpjrWYPHprm9M0ijL+SJSzhiDUbX6XLgSPrmVzt cvvMN1mKwa7XAd5P/VMSL+h/9iQssfCxrIBqpBZCaoP96G4J/hIVBsnV53rv34ZgsQfA=; Message-ID: Date: Mon, 5 Jun 2023 19:34:42 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.10.1 To: Michal Orzel , Julien Grall Cc: Bertrand Marquis , Stefano Stabellini , Volodymyr Babchuk , Xen-devel References: <20230601085001.1782-1-michal.orzel@amd.com> <7C760D1D-DAAE-48AC-8B2B-E6140452BE4A@arm.com> <73a143ee-8301-e0c0-a3fc-83ec10441c4c@amd.com> <703ccd1b-1908-4f5b-3b48-e02d317a2090@amd.com> From: Julien Grall Subject: Re: [PATCH] xen/arm: debug-pl011: Use 32-bit accessors for broader compatibility In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Hi, On 01/06/2023 13:38, Michal Orzel wrote: > > On 01/06/2023 14:17, Julien Grall wrote: >> >> >> >> >> >> On Thu, 1 Jun 2023 at 13:48, Michal Orzel > wrote: >> >> Hi Julien, >> >> On 01/06/2023 13:12, Julien Grall wrote: >> > >> > >> > >> > Hi, >> > >> > Sorry for the formatting. >> > >> > On Thu, 1 Jun 2023 at 12:31, Michal Orzel >> wrote: >> > >> >     Hi Bertrand, >> > >> >     On 01/06/2023 12:19, Bertrand Marquis wrote: >> >     > >> >     > >> >     > Hi Michal, >> >     > >> >     >> On 1 Jun 2023, at 10:50, Michal Orzel >> wrote: >> >     >> >> >     >> There are implementations of the PL011 that can only handle 32-bit >> >     >> accesses (i.e. no 16-bit or 8-bit), usually advertised by 'reg-io-width' >> >     >> dt property set to 4. On such UARTs, the current early printk code for >> >     >> arm64 does not work. To fix this issue, make all the accesses to be 32-bit >> >     >> by using ldr, str without a size field. This makes it possible to use >> >     >> early printk on such platforms, while all the other implementations should >> >     >> generally cope with 32-bit accesses. In case they do not, they would >> >     >> already fail as we explicitly use writel/readl in the runtime driver to >> >     >> maintain broader compatibility and to be SBSAv2 compliant. Therefore, this >> >     >> change makes the runtime/early handling consistent (also it matches the >> >     >> arm32 debug-pl011 code). >> >     >> >> >     >> Signed-off-by: Michal Orzel >> >> >     >> --- >> >     >> xen/arch/arm/arm64/debug-pl011.inc | 8 ++++---- >> >     >> 1 file changed, 4 insertions(+), 4 deletions(-) >> >     >> >> >     >> diff --git a/xen/arch/arm/arm64/debug-pl011.inc b/xen/arch/arm/arm64/debug-pl011.inc >> >     >> index 6d60e78c8ba3..80eb8fdc1ec7 100644 >> >     >> --- a/xen/arch/arm/arm64/debug-pl011.inc >> >     >> +++ b/xen/arch/arm/arm64/debug-pl011.inc >> >     >> @@ -25,9 +25,9 @@ >> >     >>  */ >> >     >> .macro early_uart_init xb, c >> >     >>         mov   x\c, #(7372800 / CONFIG_EARLY_UART_PL011_BAUD_RATE % 16) >> >     >> -        strh  w\c, [\xb, #FBRD]      /* -> UARTFBRD (Baud divisor fraction) */ >> >     >> +        str   w\c, [\xb, #FBRD]      /* -> UARTFBRD (Baud divisor fraction) */ >> >     >>         mov   x\c, #(7372800 / CONFIG_EARLY_UART_PL011_BAUD_RATE / 16) >> >     >> -        strh  w\c, [\xb, #IBRD]      /* -> UARTIBRD (Baud divisor integer) */ >> >     >> +        str   w\c, [\xb, #IBRD]      /* -> UARTIBRD (Baud divisor integer) */ >> >     >>         mov   x\c, #WLEN_8           /* 8n1 */ >> >     >>         str   w\c, [\xb, #LCR_H]     /* -> UARTLCR_H (Line control) */ >> >     >>         ldr   x\c, =(RXE | TXE | UARTEN) >> >     >> @@ -41,7 +41,7 @@ >> >     >>  */ >> >     >> .macro early_uart_ready xb, c >> >     >> 1: >> >     >> -        ldrh  w\c, [\xb, #FR]        /* <- UARTFR (Flag register) */ >> >     >> +        ldr   w\c, [\xb, #FR]        /* <- UARTFR (Flag register) */ >> >     >>         tst   w\c, #BUSY             /* Check BUSY bit */ >> >     >>         b.ne >  1b                     /* Wait for the UART to be ready */ >> >     >> .endm >> >     >> @@ -52,7 +52,7 @@ >> >     >>  * wt: register which contains the character to transmit >> >     >>  */ >> >     >> .macro early_uart_transmit xb, wt >> >     >> -        strb  \wt, [\xb, #DR]        /* -> UARTDR (Data Register) */ >> >     >> +        str   \wt, [\xb, #DR]        /* -> UARTDR (Data Register) */ >> >     > >> >     > Is it really ok to drop the 8bit access here ? >> >     It is not only ok, it is necessary. Otherwise it won't work on the above mentioned UARTs (they can only perform 32-bit access). >> > >> > >> > IIRC some compilers will complain because you use wN with “str”. >> Hmm, I would expect it to be totally ok as the size is determined by the reg name. Any reference? >> >> >> I don’t have the spec with me. I will have a look on Monday and reply back here. I had another look at this. You are right, "str" can work with wN or xN. I got confused because in the past the issue we had was with the asm volatile with 'msr' (see 57e761b60dc9 "xen/arm64: Remove READ/WRITE_SYSREG32 helper macros"). [...] >> I am aware of this issue but I don’t understand how this is related to this discussion. >> >> My only request is you don’t break the existing behavior of the early PL011 driver on arm64. > I understand your concern about legacy devices and that you do not want to break the existing code on arm64. > But please correct me if I'm wrong. These two lines: > str w\c, [\xb, #LCR_H] > str w\c, [\xb, #CR] Hmmm... Looking at the spec, LCR_H is meant to be 8-bit and CR 16-bit. So I think we need to modify both of them. I am happy to send a patch separately for that either before or after your patch. Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Mon Jun 05 18:54:52 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 05 Jun 2023 18:54:52 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543852.849173 (Exim 4.92) (envelope-from ) id 1q6FLl-0008CS-Ly; Mon, 05 Jun 2023 18:54:41 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543852.849173; Mon, 05 Jun 2023 18:54:41 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6FLl-0008CL-HX; Mon, 05 Jun 2023 18:54:41 +0000 Received: by outflank-mailman (input) for mailman id 543852; Mon, 05 Jun 2023 18:54:40 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6FLk-0008CD-8U for xen-devel@lists.xenproject.org; Mon, 05 Jun 2023 18:54:40 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6FLj-0003Gs-Qj; Mon, 05 Jun 2023 18:54:39 +0000 Received: from gw1.octic.net ([88.97.20.152] helo=[10.0.1.102]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1q6FLj-0007iz-Kf; Mon, 05 Jun 2023 18:54:39 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=7RdQuv1q0hdQaq+IETpRXqG3ZnyaoXflTXvaYh2775I=; b=Ae7junzg4xNVIHlIixjAZONpsl Wb2HJU+k28EzSvlmsm94cEpHkRlewVhDmswpbSEnG6F6gXGUVyVeYfVjwP33Fx38/pqTcITAO/9EV jcG3Upbkzl4qQP/FWjwVsD3AC7yLgTgkAgT/K3wnNpyG9oMy0mJq6fIUqwoPYYSp8nE0=; Message-ID: <05fc6244-18fd-035a-82a2-d637a0171f64@xen.org> Date: Mon, 5 Jun 2023 19:54:37 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.10.1 Subject: Re: [XEN][PATCH v7 01/19] common/device_tree: handle memory allocation failure in __unflatten_device_tree() To: Vikram Garhwal , xen-devel@lists.xenproject.org Cc: michal.orzel@amd.com, sstabellini@kernel.org, jbeulich@suse.com References: <20230602004824.20731-1-vikram.garhwal@amd.com> <20230602004824.20731-2-vikram.garhwal@amd.com> From: Julien Grall In-Reply-To: <20230602004824.20731-2-vikram.garhwal@amd.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi, On 02/06/2023 01:48, Vikram Garhwal wrote: > Change __unflatten_device_tree() return type to integer so it can propagate > memory allocation failure. Add panic() in dt_unflatten_host_device_tree() for > memory allocation failure during boot. > > Fixes: fb97eb614acf ("xen/arm: Create a hierarchical device tree") > > Signed-off-by: Vikram Garhwal With Michal's remark handled (it can be done on commit): Acked-by: Julien Grall Cheers, > Reviewed-by: Henry Wang > --- > xen/common/device_tree.c | 14 +++++++++++--- > 1 file changed, 11 insertions(+), 3 deletions(-) > > diff --git a/xen/common/device_tree.c b/xen/common/device_tree.c > index 8da1052911..dfdb10e488 100644 > --- a/xen/common/device_tree.c > +++ b/xen/common/device_tree.c > @@ -2092,8 +2092,8 @@ static unsigned long __init unflatten_dt_node(const void *fdt, > * @fdt: The fdt to expand > * @mynodes: The device_node tree created by the call > */ > -static void __init __unflatten_device_tree(const void *fdt, > - struct dt_device_node **mynodes) > +static int __init __unflatten_device_tree(const void *fdt, > + struct dt_device_node **mynodes) > { > unsigned long start, mem, size; > struct dt_device_node **allnextp = mynodes; > @@ -2114,6 +2114,8 @@ static void __init __unflatten_device_tree(const void *fdt, > > /* Allocate memory for the expanded device tree */ > mem = (unsigned long)_xmalloc (size + 4, __alignof__(struct dt_device_node)); > + if ( !mem ) > + return -ENOMEM; > > ((__be32 *)mem)[size / 4] = cpu_to_be32(0xdeadbeef); > > @@ -2131,6 +2133,8 @@ static void __init __unflatten_device_tree(const void *fdt, > *allnextp = NULL; > > dt_dprintk(" <- unflatten_device_tree()\n"); > + > + return 0; > } > > static void dt_alias_add(struct dt_alias_prop *ap, > @@ -2215,7 +2219,11 @@ dt_find_interrupt_controller(const struct dt_device_match *matches) > > void __init dt_unflatten_host_device_tree(void) > { > - __unflatten_device_tree(device_tree_flattened, &dt_host); > + int error = __unflatten_device_tree(device_tree_flattened, &dt_host); > + > + if ( error ) > + panic("__unflatten_device_tree failed with error %d\n", error); > + > dt_alias_scan(); > } > -- Julien Grall From xen-devel-bounces@lists.xenproject.org Mon Jun 05 19:04:14 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 05 Jun 2023 19:04:14 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543857.849182 (Exim 4.92) (envelope-from ) id 1q6FUq-0001Ip-GM; Mon, 05 Jun 2023 19:04:04 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543857.849182; Mon, 05 Jun 2023 19:04:04 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6FUq-0001Ii-DL; Mon, 05 Jun 2023 19:04:04 +0000 Received: by outflank-mailman (input) for mailman id 543857; Mon, 05 Jun 2023 19:04:02 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6FUo-0001Ic-B2 for xen-devel@lists.xenproject.org; Mon, 05 Jun 2023 19:04:02 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6FUn-0003Sr-VA; Mon, 05 Jun 2023 19:04:01 +0000 Received: from gw1.octic.net ([88.97.20.152] helo=[10.0.1.102]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1q6FUn-0000Or-Pd; Mon, 05 Jun 2023 19:04:01 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:Subject: From:References:Cc:To:MIME-Version:Date:Message-ID; bh=ptu0H6WrAkKIy/b9xGJxdfGXIiKyYr3scISjo0Zqy/0=; b=rqbUfds9tNOzaGoO9SN7oAOUnB UJtdWpQ70ZT4IREW8/FAbY3UKQYsdqTZSVhvvoqgW6e2cI26QWuZq0KJaR9EjvaGeeMF1YGa+pbAL aHFdFXR7JSeAN/2rzyZp49+IxmtxVOiSSVEKSvyVRoXUqwTW6EUyhJF9GoGQsXr8o1j0=; Message-ID: Date: Mon, 5 Jun 2023 20:04:00 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.10.1 To: Vikram Garhwal , xen-devel@lists.xenproject.org Cc: michal.orzel@amd.com, sstabellini@kernel.org, jbeulich@suse.com References: <20230602004824.20731-1-vikram.garhwal@amd.com> <20230602004824.20731-5-vikram.garhwal@amd.com> From: Julien Grall Subject: Re: [XEN][PATCH v7 04/19] common/device_tree: change __unflatten_device_tree() type In-Reply-To: <20230602004824.20731-5-vikram.garhwal@amd.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi, Title: 'type' is a bit confusing here. How about "Export __unflatten_device_tre()"? On 02/06/2023 01:48, Vikram Garhwal wrote: > Following changes are done to __unflatten_device_tree(): > 1. __unflatten_device_tree() is renamed to unflatten_device_tree(). > 2. Remove __init and static function type. As there is no external caller yet, please explain why you want to export the function. Cheers, > > Signed-off-by: Vikram Garhwal > Reviewed-by: Henry Wang > --- > xen/common/device_tree.c | 9 ++++----- > xen/include/xen/device_tree.h | 5 +++++ > 2 files changed, 9 insertions(+), 5 deletions(-) > > diff --git a/xen/common/device_tree.c b/xen/common/device_tree.c > index bbdab07596..16b4b4e946 100644 > --- a/xen/common/device_tree.c > +++ b/xen/common/device_tree.c > @@ -2083,7 +2083,7 @@ static unsigned long unflatten_dt_node(const void *fdt, > } > > /** > - * __unflatten_device_tree - create tree of device_nodes from flat blob > + * unflatten_device_tree - create tree of device_nodes from flat blob > * > * unflattens a device-tree, creating the > * tree of struct device_node. It also fills the "name" and "type" > @@ -2092,8 +2092,7 @@ static unsigned long unflatten_dt_node(const void *fdt, > * @fdt: The fdt to expand > * @mynodes: The device_node tree created by the call > */ > -static int __init __unflatten_device_tree(const void *fdt, > - struct dt_device_node **mynodes) > +int unflatten_device_tree(const void *fdt, struct dt_device_node **mynodes) > { > unsigned long start, mem, size; > struct dt_device_node **allnextp = mynodes; > @@ -2230,10 +2229,10 @@ dt_find_interrupt_controller(const struct dt_device_match *matches) > > void __init dt_unflatten_host_device_tree(void) > { > - int error = __unflatten_device_tree(device_tree_flattened, &dt_host); > + int error = unflatten_device_tree(device_tree_flattened, &dt_host); > > if ( error ) > - panic("__unflatten_device_tree failed with error %d\n", error); > + panic("unflatten_device_tree failed with error %d\n", error); > > dt_alias_scan(); This function doesn't seem to be called in the case of the overlay device-tree. Does this mean that it will never contain any alias? > } > diff --git a/xen/include/xen/device_tree.h b/xen/include/xen/device_tree.h > index c2eada7489..2c35c0d391 100644 > --- a/xen/include/xen/device_tree.h > +++ b/xen/include/xen/device_tree.h > @@ -178,6 +178,11 @@ int device_tree_for_each_node(const void *fdt, int node, > */ > void dt_unflatten_host_device_tree(void); > > +/** > + * unflatten any device tree. Most of the exported function in device_tre.h have documentation. Can you do the same here? > + */ > +int unflatten_device_tree(const void *fdt, struct dt_device_node **mynodes); NIT: From an external interface perspective, do we actually need to pass an extra pointer? Can't we instead, return the pointer? > + > /** > * IRQ translation callback > * TODO: For the moment we assume that we only have ONE Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Mon Jun 05 19:05:45 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 05 Jun 2023 19:05:45 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543862.849191 (Exim 4.92) (envelope-from ) id 1q6FWM-0001ry-SI; Mon, 05 Jun 2023 19:05:38 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543862.849191; Mon, 05 Jun 2023 19:05:38 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6FWM-0001rr-PD; Mon, 05 Jun 2023 19:05:38 +0000 Received: by outflank-mailman (input) for mailman id 543862; Mon, 05 Jun 2023 19:05:37 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6FWL-0001rj-L0 for xen-devel@lists.xenproject.org; Mon, 05 Jun 2023 19:05:37 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6FWK-0003UC-UM; Mon, 05 Jun 2023 19:05:36 +0000 Received: from gw1.octic.net ([88.97.20.152] helo=[10.0.1.102]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1q6FWK-0000TJ-OH; Mon, 05 Jun 2023 19:05:36 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=kwFpDDddew8z+1ukC9DIRvWwCUE8T1GDgKlI3rXRmn8=; b=5PGuH7rZMF6D5sx+6SQxg/rrni +sxUaQ0TPxF+9/1RM+LTtqyaROfI7BE/f1nYMBLuOwpPGwbluyn2vPnKklNT98B3MUiqy1E/oe8tT oVGptRyAjU1CPhIvtoy51wRhUcbffYRlUQ/7WA5VpG4vPCdcPFDdbGNBKgd/dygY6nFY=; Message-ID: <7e8d566b-6d87-8453-4b3a-2bfa4a6b91e6@xen.org> Date: Mon, 5 Jun 2023 20:05:34 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.10.1 Subject: Re: [XEN][PATCH v7 07/19] libfdt: overlay: change overlay_get_target() To: Vikram Garhwal , xen-devel@lists.xenproject.org Cc: michal.orzel@amd.com, sstabellini@kernel.org, jbeulich@suse.com, Vikram Garhwal , David Gibson References: <20230602004824.20731-1-vikram.garhwal@amd.com> <20230602004824.20731-8-vikram.garhwal@amd.com> From: Julien Grall In-Reply-To: <20230602004824.20731-8-vikram.garhwal@amd.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi, On 02/06/2023 01:48, Vikram Garhwal wrote: > Rename overlay_get_target() to fdt_overlay_target_offset() and remove static > function type. > > This is done to get the target path for the overlay nodes which is very useful > in many cases. For example, Xen hypervisor needs it when applying overlays > because Xen needs to do further processing of the overlay nodes, e.g. mapping of > resources(IRQs and IOMMUs) to other VMs, creation of SMMU pagetables, etc. > > Signed-off-by: Vikram Garhwal > Message-Id: <1637204036-382159-2-git-send-email-fnu.vikram@xilinx.com> > Signed-off-by: David Gibson > Origin: git://git.kernel.org/pub/scm/utils/dtc/dtc.git 45f3d1a095dd > > Signed-off-by: Vikram Garhwal > Reviewed-by: Michal Orzel > Reviewed-by: Henry Wang Acked-by: Juline Grall Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Mon Jun 05 19:12:43 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 05 Jun 2023 19:12:43 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543867.849201 (Exim 4.92) (envelope-from ) id 1q6Fd4-0003Kq-In; Mon, 05 Jun 2023 19:12:34 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543867.849201; Mon, 05 Jun 2023 19:12:34 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6Fd4-0003Kj-G9; Mon, 05 Jun 2023 19:12:34 +0000 Received: by outflank-mailman (input) for mailman id 543867; Mon, 05 Jun 2023 19:12:33 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6Fd3-0003Kd-Ns for xen-devel@lists.xenproject.org; Mon, 05 Jun 2023 19:12:33 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6Fd3-0003kU-AI; Mon, 05 Jun 2023 19:12:33 +0000 Received: from gw1.octic.net ([88.97.20.152] helo=[10.0.1.102]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1q6Fd3-0000sg-4o; Mon, 05 Jun 2023 19:12:33 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=JDluLy/D4RlIUp5mDnyV7RrRJ75T8ZX9dc9iMWzz+x8=; b=E4lfOzXyXsAs3bk2QRGPNzt3HT D2n9Jh62pPui41Ga7T29AbSGtDdIXDksSbog1sTP4IQZVqJbQARhRGJ9O2BpPgrzxsdIX/9lwblhg vdqhLHpOXY5X2rgnkujSTgP8l8bHdpBwu29FG3/GpgNsBb8yy/jMNIIsy/rFAX69Xc6Q=; Message-ID: Date: Mon, 5 Jun 2023 20:12:31 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.10.1 Subject: Re: [XEN][PATCH v7 08/19] xen/device-tree: Add device_tree_find_node_by_path() to find nodes in device tree To: Vikram Garhwal , xen-devel@lists.xenproject.org Cc: michal.orzel@amd.com, sstabellini@kernel.org, jbeulich@suse.com References: <20230602004824.20731-1-vikram.garhwal@amd.com> <20230602004824.20731-9-vikram.garhwal@amd.com> From: Julien Grall In-Reply-To: <20230602004824.20731-9-vikram.garhwal@amd.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi, On 02/06/2023 01:48, Vikram Garhwal wrote: > Add device_tree_find_node_by_path() to find a matching node with path for a AFAICT, the only difference in name between the new function and the existing one is "device_tree" vs "dt". The latter is just a shorthand of "device tree", so it feels to me the name are a bit too similar. From my understanding, the main difference between the two functions are that the current one is starting from root whereas the current one is starting from a given node. So how about "dt_find_node_by_path_from()"? > dt_device_node. > > Reason behind this function: > Each time overlay nodes are added using .dtbo, a new fdt(memcpy of > device_tree_flattened) is created and updated with overlay nodes. This > updated fdt is further unflattened to a dt_host_new. Next, we need to find > the overlay nodes in dt_host_new, find the overlay node's parent in dt_host > and add the nodes as child under their parent in the dt_host. Thus we need > this function to search for node in different unflattened device trees. > > Also, make dt_find_node_by_path() static inline. > > Signed-off-by: Vikram Garhwal > > --- > Changes from v6: > Rename "dt_node" to "from" > --- > xen/common/device_tree.c | 6 ++++-- > xen/include/xen/device_tree.h | 18 ++++++++++++++++-- > 2 files changed, 20 insertions(+), 4 deletions(-) > > diff --git a/xen/common/device_tree.c b/xen/common/device_tree.c > index 16b4b4e946..c5250a1644 100644 > --- a/xen/common/device_tree.c > +++ b/xen/common/device_tree.c > @@ -358,11 +358,13 @@ struct dt_device_node *dt_find_node_by_type(struct dt_device_node *from, > return np; > } > > -struct dt_device_node *dt_find_node_by_path(const char *path) > +struct dt_device_node * > + device_tree_find_node_by_path(struct dt_device_node *from, > + const char *path) > { > struct dt_device_node *np; > > - dt_for_each_device_node(dt_host, np) > + dt_for_each_device_node(from, np) > if ( np->full_name && (dt_node_cmp(np->full_name, path) == 0) ) > break; > > diff --git a/xen/include/xen/device_tree.h b/xen/include/xen/device_tree.h > index 2c35c0d391..e239f7de26 100644 > --- a/xen/include/xen/device_tree.h > +++ b/xen/include/xen/device_tree.h > @@ -561,13 +561,27 @@ struct dt_device_node *dt_find_node_by_type(struct dt_device_node *from, > struct dt_device_node *dt_find_node_by_alias(const char *alias); > > /** > - * dt_find_node_by_path - Find a node matching a full DT path > + * device_tree_find_node_by_path - Generic function to find a node matching the > + * full DT path for any given unflatten device tree > + * @from: The device tree node to start searching from > * @path: The full path to match > * > * Returns a node pointer. > */ > -struct dt_device_node *dt_find_node_by_path(const char *path); > +struct dt_device_node * > + device_tree_find_node_by_path(struct dt_device_node *from, > + const char *path); The indentation looks slightly odd. In general, if the return type is on its own line, then the function name is not indented on the new line. > > +/** > + * dt_find_node_by_path - Find a node matching a full DT path in dt_host > + * @path: The full path to match > + * > + * Returns a node pointer. > + */ > +static inline struct dt_device_node *dt_find_node_by_path(const char *path) > +{ > + return device_tree_find_node_by_path(dt_host, path); > +} > > /** > * dt_find_node_by_gpath - Same as dt_find_node_by_path but retrieve the Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Mon Jun 05 19:19:56 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 05 Jun 2023 19:19:56 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543875.849215 (Exim 4.92) (envelope-from ) id 1q6Fjy-0003zx-Dj; Mon, 05 Jun 2023 19:19:42 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543875.849215; Mon, 05 Jun 2023 19:19:42 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6Fjy-0003zq-9V; Mon, 05 Jun 2023 19:19:42 +0000 Received: by outflank-mailman (input) for mailman id 543875; Mon, 05 Jun 2023 19:19:41 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6Fjx-0003zj-1k for xen-devel@lists.xenproject.org; Mon, 05 Jun 2023 19:19:41 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6Fjw-0003uS-Ga; Mon, 05 Jun 2023 19:19:40 +0000 Received: from gw1.octic.net ([88.97.20.152] helo=[10.0.1.102]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1q6Fjw-0000z1-BD; Mon, 05 Jun 2023 19:19:40 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:Subject: From:References:Cc:To:MIME-Version:Date:Message-ID; bh=UMIh03paM4Zl6CZIngzjwiJaiFR0/YGU8PoXYpcy3C0=; b=HFb1wGftUpBHf0VXIok0aG/O7d 527KaMTpb4OQ/pieOdAfCYEqjx3KEjpvwa9YH+P/tWZaEMGTypOYnWGe2vrOYUgffoUgLALJvRAgw gbLVX2DDzLm2ulNxCgPextGpVjpMNxGGWiPiiKgMmdmaK0+QCrbk85rDSb3C41aOTdks=; Message-ID: <831b46dc-eff8-b937-c0f7-57acc39afee7@xen.org> Date: Mon, 5 Jun 2023 20:19:38 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.10.1 To: Vikram Garhwal , xen-devel@lists.xenproject.org Cc: michal.orzel@amd.com, sstabellini@kernel.org, jbeulich@suse.com, Andrew Cooper , George Dunlap , Wei Liu References: <20230602004824.20731-1-vikram.garhwal@amd.com> <20230602004824.20731-10-vikram.garhwal@amd.com> From: Julien Grall Subject: Re: [XEN][PATCH v7 09/19] xen/iommu: Move spin_lock from iommu_dt_device_is_assigned to caller In-Reply-To: <20230602004824.20731-10-vikram.garhwal@amd.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi, On 02/06/2023 01:48, Vikram Garhwal wrote: > Rename iommu_dt_device_is_assigned() to iommu_dt_device_is_assigned_locked(). > Remove static type so this can also be used by SMMU drivers to check if the > device is being used before removing. > > Moving spin_lock to caller was done to prevent the concurrent access to > iommu_dt_device_is_assigned while doing add/remove/assign/deassign. Can you explain if you are trying to resolve an existing bug, or this is something that will be necessary in a follow-up patch? > > Signed-off-by: Vikram Garhwal > > --- > Changes from v6: > Created a private header and moved iommu_dt_device_is_assigned() to header. > --- > xen/drivers/passthrough/device_tree.c | 20 ++++++++++++++++---- > xen/include/xen/iommu-private.h | 27 +++++++++++++++++++++++++++ > 2 files changed, 43 insertions(+), 4 deletions(-) > create mode 100644 xen/include/xen/iommu-private.h > > diff --git a/xen/drivers/passthrough/device_tree.c b/xen/drivers/passthrough/device_tree.c > index 1c32d7b50c..52e370db01 100644 > --- a/xen/drivers/passthrough/device_tree.c > +++ b/xen/drivers/passthrough/device_tree.c > @@ -18,6 +18,7 @@ > #include > #include > #include > +#include > #include > #include > #include > @@ -83,16 +84,14 @@ fail: > return rc; > } > > -static bool_t iommu_dt_device_is_assigned(const struct dt_device_node *dev) > +bool_t iommu_dt_device_is_assigned_locked(const struct dt_device_node *dev) > { Please add an ASSERT() checking the lock is taken. > bool_t assigned = 0; > > if ( !dt_device_is_protected(dev) ) > return 0; > > - spin_lock(&dtdevs_lock); > assigned = !list_empty(&dev->domain_list); > - spin_unlock(&dtdevs_lock); > > return assigned; > } > @@ -213,27 +212,40 @@ int iommu_do_dt_domctl(struct xen_domctl *domctl, struct domain *d, > if ( (d && d->is_dying) || domctl->u.assign_device.flags ) > break; > > + spin_lock(&dtdevs_lock); > + 'dtdevs_lock' was intended to protect modification related to any IOMMU change. But here... > ret = dt_find_node_by_gpath(domctl->u.assign_device.u.dt.path, > domctl->u.assign_device.u.dt.size, > &dev); ... you also include "dt_find_node_by_gpath". Can you explain why and add a comment on top of 'dtdevs_lock' to explain what it is intended use? > if ( ret ) > + { > + spin_unlock(&dtdevs_lock); > break; > + } > > ret = xsm_assign_dtdevice(XSM_HOOK, d, dt_node_full_name(dev)); > if ( ret ) > + { > + spin_unlock(&dtdevs_lock); > break; > + } > > if ( domctl->cmd == XEN_DOMCTL_test_assign_device ) > { > - if ( iommu_dt_device_is_assigned(dev) ) > + > + if ( iommu_dt_device_is_assigned_locked(dev) ) > { > printk(XENLOG_G_ERR "%s already assigned.\n", > dt_node_full_name(dev)); > ret = -EINVAL; > } > + > + spin_unlock(&dtdevs_lock); > break; > } > > + spin_unlock(&dtdevs_lock); > + > if ( d == dom_io ) > return -EINVAL; > > diff --git a/xen/include/xen/iommu-private.h b/xen/include/xen/iommu-private.h > new file mode 100644 > index 0000000000..5615decaff > --- /dev/null > +++ b/xen/include/xen/iommu-private.h > @@ -0,0 +1,27 @@ > +/* SPDX-License-Identifier: GPL-2.0-only */ > + /* > + * xen/iommu-private.h > + * > + * > + * Copyright (C) 2023, Advanced Micro Devices, Inc. All Rights Reserved. > + * Written by Vikram Garhwal > + * > + */ > +#ifndef __XEN_IOMMU_PRIVATE_H__ > +#define __XEN_IOMMU_PRIVATE_H__ > + > +#ifdef CONFIG_HAS_DEVICE_TREE > +#include > +bool_t iommu_dt_device_is_assigned_locked(const struct dt_device_node *dev); > +#endif > + > +#endif /* __XEN_IOMMU_PRIVATE_H__ */ > +/* > + * Local variables: > + * mode: C > + * c-file-style: "BSD" > + * c-basic-offset: 4 > + * tab-width: 4 > + * indent-tabs-mode: nil > + * End: > + */ -- Julien Grall From xen-devel-bounces@lists.xenproject.org Mon Jun 05 19:22:41 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 05 Jun 2023 19:22:41 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543881.849225 (Exim 4.92) (envelope-from ) id 1q6Fmp-0005TT-VN; Mon, 05 Jun 2023 19:22:39 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543881.849225; Mon, 05 Jun 2023 19:22:39 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6Fmp-0005TM-SG; Mon, 05 Jun 2023 19:22:39 +0000 Received: by outflank-mailman (input) for mailman id 543881; Mon, 05 Jun 2023 19:22:38 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6Fmo-0005TG-3k for xen-devel@lists.xenproject.org; Mon, 05 Jun 2023 19:22:38 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6Fmn-0003xN-FX; Mon, 05 Jun 2023 19:22:37 +0000 Received: from gw1.octic.net ([88.97.20.152] helo=[10.0.1.102]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1q6Fmn-0001Bc-Am; Mon, 05 Jun 2023 19:22:37 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=cM5ix9aTDV29dbGvMIF8m6W84UDvrtqkJg2724X31W8=; b=AHrzR6BNlVBo/6XcE4FKueewxO qAJfvFheVIy37ofMI1Moc5LFaEOwcx90b4cf6nau6foxAkMaLE8vaAZnqetJQxvcrmfaYlzNhQmoK HVVlGKID6CZPihdD2Q/HB63puGGRVbeswUTwMLcOCCk384ZzL69K5msfNsOPWjXRnU4I=; Message-ID: <1d4705b1-8e0d-ace9-333c-1e23d30c8afb@xen.org> Date: Mon, 5 Jun 2023 20:22:35 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.10.1 Subject: Re: [XEN][PATCH v7 09/19] xen/iommu: Move spin_lock from iommu_dt_device_is_assigned to caller To: Michal Orzel , Vikram Garhwal , xen-devel@lists.xenproject.org Cc: sstabellini@kernel.org, jbeulich@suse.com, Andrew Cooper , George Dunlap , Wei Liu References: <20230602004824.20731-1-vikram.garhwal@amd.com> <20230602004824.20731-10-vikram.garhwal@amd.com> From: Julien Grall In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi, On 02/06/2023 08:45, Michal Orzel wrote: > > On 02/06/2023 02:48, Vikram Garhwal wrote: >> diff --git a/xen/include/xen/iommu-private.h b/xen/include/xen/iommu-private.h >> new file mode 100644 >> index 0000000000..5615decaff >> --- /dev/null >> +++ b/xen/include/xen/iommu-private.h >> @@ -0,0 +1,27 @@ >> +/* SPDX-License-Identifier: GPL-2.0-only */ >> + /* > incorrect indentation (<< 1) > >> + * xen/iommu-private.h >> + * >> + * >> + * Copyright (C) 2023, Advanced Micro Devices, Inc. All Rights Reserved. >> + * Written by Vikram Garhwal > I'm not sure if placing the copyright is appropriate, given a single prototype for a function > not really implemented by you with just spinlocks removed. But I might be wrong. I agree. If you want to add a copyright then it should be the one from the original author. But in this case, I don't think we should add an copyright as there is nothing really interesting in the header. Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Mon Jun 05 19:25:35 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 05 Jun 2023 19:25:35 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543886.849235 (Exim 4.92) (envelope-from ) id 1q6FpW-00065N-DS; Mon, 05 Jun 2023 19:25:26 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543886.849235; Mon, 05 Jun 2023 19:25:26 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6FpW-00065G-9L; Mon, 05 Jun 2023 19:25:26 +0000 Received: by outflank-mailman (input) for mailman id 543886; Mon, 05 Jun 2023 19:25:25 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6FpV-00065A-Me for xen-devel@lists.xenproject.org; Mon, 05 Jun 2023 19:25:25 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6FpV-00041L-DJ; Mon, 05 Jun 2023 19:25:25 +0000 Received: from gw1.octic.net ([88.97.20.152] helo=[10.0.1.102]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1q6FpV-0001Di-8d; Mon, 05 Jun 2023 19:25:25 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=9NroE4j9cL2ErGWO95oWCCU47E5xsrm19qrYddMsEE8=; b=UPve7CzbaKyw/zrnoOip+IfVuw 9lBiyuiGQPPzKT0A+bG/WnD/RaIGedJt1nz2z7kSZsqvv4dZtv4u4U0UohSAXuCsR/BlecJ9Vrfei RyMA0WVU5IHExNpvNMtm2ufN7G+5xr1W1ooHWQUCbH6aljz+vJC3b4fvbzEr/cMnFxfQ=; Message-ID: Date: Mon, 5 Jun 2023 20:25:23 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.10.1 Subject: Re: [XEN][PATCH v7 10/19] xen/iommu: protect iommu_add_dt_device() with dtdevs_lock To: Vikram Garhwal , xen-devel@lists.xenproject.org Cc: michal.orzel@amd.com, sstabellini@kernel.org, jbeulich@suse.com References: <20230602004824.20731-1-vikram.garhwal@amd.com> <20230602004824.20731-11-vikram.garhwal@amd.com> From: Julien Grall In-Reply-To: <20230602004824.20731-11-vikram.garhwal@amd.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi, On 02/06/2023 01:48, Vikram Garhwal wrote: > Protect iommu_add_dt_device() with dtdevs_lock to prevent concurrent access add. The commit message is a bit light. What sort of concurrent access add are you talking about? Is it of the same node? Different node? Also, is it a existing issue or something that will become one with a follow-up patch in your series? Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Mon Jun 05 19:37:29 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 05 Jun 2023 19:37:29 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543892.849248 (Exim 4.92) (envelope-from ) id 1q6G0p-0007cD-BR; Mon, 05 Jun 2023 19:37:07 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543892.849248; Mon, 05 Jun 2023 19:37:07 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6G0p-0007c6-8g; Mon, 05 Jun 2023 19:37:07 +0000 Received: by outflank-mailman (input) for mailman id 543892; Mon, 05 Jun 2023 19:37:06 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6G0n-0007c0-Ut for xen-devel@lists.xenproject.org; Mon, 05 Jun 2023 19:37:05 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6G0n-0004Cd-HW; Mon, 05 Jun 2023 19:37:05 +0000 Received: from gw1.octic.net ([88.97.20.152] helo=[10.0.1.102]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1q6G0n-0001gY-Bd; Mon, 05 Jun 2023 19:37:05 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:Subject: From:References:Cc:To:MIME-Version:Date:Message-ID; bh=RYQYBT9+jhgGBhfrFP5pW+SCt0y7e3eRnwQ4DWbQrio=; b=bL1KoBWFFJI2BfETMGV6puxdrs Tkatc1Y4scczrrCNbMPWoUDxeGlG+yob0NgRVKb2unVjl+eDeIPu4+nMdBwfvuo/1jPKyzTO+pFod QAmFN/Oac21eM5OphcLe4X3e8RmnyEMXk+jwnQwrSo3lRG9G0wdOtHqldBC3LFi2Plns=; Message-ID: Date: Mon, 5 Jun 2023 20:37:03 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.10.1 To: Vikram Garhwal , xen-devel@lists.xenproject.org Cc: michal.orzel@amd.com, sstabellini@kernel.org, jbeulich@suse.com, Paul Durrant , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= References: <20230602004824.20731-1-vikram.garhwal@amd.com> <20230602004824.20731-12-vikram.garhwal@amd.com> From: Julien Grall Subject: Re: [XEN][PATCH v7 11/19] xen/iommu: Introduce iommu_remove_dt_device() In-Reply-To: <20230602004824.20731-12-vikram.garhwal@amd.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi, On 02/06/2023 01:48, Vikram Garhwal wrote: > Remove master device from the IOMMU. This will be helpful when removing the > overlay nodes using dynamic programming during run time. > > Signed-off-by: Vikram Garhwal > Reviewed-by: Michal Orzel > Acked-by: Jan Beulich > --- > xen/drivers/passthrough/device_tree.c | 41 +++++++++++++++++++++++++++ > xen/include/xen/iommu.h | 2 ++ > 2 files changed, 43 insertions(+) > > diff --git a/xen/drivers/passthrough/device_tree.c b/xen/drivers/passthrough/device_tree.c > index 8cc413f867..301a5bcd97 100644 > --- a/xen/drivers/passthrough/device_tree.c > +++ b/xen/drivers/passthrough/device_tree.c > @@ -126,6 +126,47 @@ int iommu_release_dt_devices(struct domain *d) > return 0; > } > > +int iommu_remove_dt_device(struct dt_device_node *np) > +{ > + const struct iommu_ops *ops = iommu_get_ops(); > + struct device *dev = dt_to_dev(np); > + int rc; > + iommu_add_dt_device() checks if the IOMMU is enabled. I think you should do the same here as well and return 0 if it is disabled. > + if ( !ops ) > + return -EOPNOTSUPP; > + > + spin_lock(&dtdevs_lock); > + > + if ( iommu_dt_device_is_assigned_locked(np) ) > + { > + rc = -EBUSY; > + goto fail; > + } > + > + /* > + * The driver which supports generic IOMMU DT bindings must have this > + * callback implemented. > + */ It is not clear to me why you want to mandate remove_device when using the generic IOMMU DT bindings. But if this is really necessary, then I think the comment should be placed on top of the callback definition rather than in the caller. > + if ( !ops->remove_device ) > + { > + rc = -EOPNOTSUPP; > + goto fail; > + } > + > + /* > + * Remove master device from the IOMMU if latter is present and available. > + * The driver is responsible for removing is_protected flag. > + */ > + rc = ops->remove_device(0, dev); > + > + if ( !rc ) > + iommu_fwspec_free(dev); > + > +fail: > + spin_unlock(&dtdevs_lock); > + return rc; > +} > + > int iommu_add_dt_device(struct dt_device_node *np) > { > const struct iommu_ops *ops = iommu_get_ops(); > diff --git a/xen/include/xen/iommu.h b/xen/include/xen/iommu.h > index 405db59971..0d7924821b 100644 > --- a/xen/include/xen/iommu.h > +++ b/xen/include/xen/iommu.h > @@ -229,6 +229,8 @@ int iommu_release_dt_devices(struct domain *d); > */ > int iommu_add_dt_device(struct dt_device_node *np); > > +int iommu_remove_dt_device(struct dt_device_node *np); > + > int iommu_do_dt_domctl(struct xen_domctl *, struct domain *, > XEN_GUEST_HANDLE_PARAM(xen_domctl_t)); > Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Mon Jun 05 19:46:30 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 05 Jun 2023 19:46:30 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543897.849258 (Exim 4.92) (envelope-from ) id 1q6G9m-0000fe-7M; Mon, 05 Jun 2023 19:46:22 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543897.849258; Mon, 05 Jun 2023 19:46:22 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6G9m-0000fX-4n; Mon, 05 Jun 2023 19:46:22 +0000 Received: by outflank-mailman (input) for mailman id 543897; Mon, 05 Jun 2023 19:46:21 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6G9l-0000fQ-5g for xen-devel@lists.xenproject.org; Mon, 05 Jun 2023 19:46:21 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6G9k-0004WV-JM; Mon, 05 Jun 2023 19:46:20 +0000 Received: from gw1.octic.net ([88.97.20.152] helo=[10.0.1.102]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1q6G9k-00024K-Ds; Mon, 05 Jun 2023 19:46:20 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=P3r5vagAfkT2yE3C7r0zsu4z7Yq/yat9S7mvlTE1vUg=; b=G3sNxw/Ex7d5dm3xHt6bT9CXIG 4jY+4znkTza4QWnKAdKa+amrqVKVhTwcxgnvDjtMU28msW7wF9M2egVpYRBNHGSoAuuH7k07AkDIm SQ3CigQWfDjTUHwqtHiiSsYgO5tAQbSKKcCIRxflzYbgvAtx1UAe9bbEpgHxja0w65Gk=; Message-ID: <49641d70-9540-1072-d496-772e83a555e4@xen.org> Date: Mon, 5 Jun 2023 20:46:17 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.10.1 Subject: Re: [XEN][PATCH v7 13/19] asm/smp.h: Fix circular dependency for device_tree.h and rwlock.h To: Vikram Garhwal , xen-devel@lists.xenproject.org Cc: michal.orzel@amd.com, sstabellini@kernel.org, jbeulich@suse.com, Bertrand Marquis , Volodymyr Babchuk References: <20230602004824.20731-1-vikram.garhwal@amd.com> <20230602004824.20731-14-vikram.garhwal@amd.com> From: Julien Grall In-Reply-To: <20230602004824.20731-14-vikram.garhwal@amd.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi, On 02/06/2023 01:48, Vikram Garhwal wrote: > Dynamic programming ops will modify the dt_host and there might be other > function which are browsing the dt_host at the same time. To avoid the race > conditions, adding rwlock for browsing the dt_host. Reading this sentence, it sounds like you are adding the rwlock in this patch. However, this is not the case. Also, the rwlock is not only for browsing but also add new node. So how about ", we will need to add a rwlock to protect access to the dt_host". > But adding rwlock in > device_tree.h causes following circular dependency: > device_tree.h->rwlock.h->smp.h->asm/smp.h->device_tree.h > > To fix this, removed the "#include and forward declared > "struct dt_device_node". > > Signed-off-by: Vikram Garhwal > Reviewed-by: Henry Wang > Reviewed-by: Michal Orzel > --- > xen/arch/arm/include/asm/smp.h | 3 ++- > xen/arch/arm/smpboot.c | 1 + > 2 files changed, 3 insertions(+), 1 deletion(-) > > diff --git a/xen/arch/arm/include/asm/smp.h b/xen/arch/arm/include/asm/smp.h > index a37ca55bff..b12949ba8a 100644 > --- a/xen/arch/arm/include/asm/smp.h > +++ b/xen/arch/arm/include/asm/smp.h > @@ -3,13 +3,14 @@ > > #ifndef __ASSEMBLY__ > #include > -#include > #include > #endif > > DECLARE_PER_CPU(cpumask_var_t, cpu_sibling_mask); > DECLARE_PER_CPU(cpumask_var_t, cpu_core_mask); > > +struct dt_device_node; Can you add the declaration just above arch_cpu_init()? This will make clearer why the forward declaration is necessary. > + > #define cpu_is_offline(cpu) unlikely(!cpu_online(cpu)) > > #define smp_processor_id() get_processor_id() > diff --git a/xen/arch/arm/smpboot.c b/xen/arch/arm/smpboot.c > index e107b86b7b..eeb76cd551 100644 > --- a/xen/arch/arm/smpboot.c > +++ b/xen/arch/arm/smpboot.c > @@ -10,6 +10,7 @@ > #include > #include > #include > +#include > #include > #include > #include Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Mon Jun 05 19:46:39 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 05 Jun 2023 19:46:39 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543898.849268 (Exim 4.92) (envelope-from ) id 1q6GA3-00012C-Ef; Mon, 05 Jun 2023 19:46:39 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543898.849268; Mon, 05 Jun 2023 19:46:39 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6GA3-000125-Ba; Mon, 05 Jun 2023 19:46:39 +0000 Received: by outflank-mailman (input) for mailman id 543898; Mon, 05 Jun 2023 19:46:38 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6GA1-00011h-VC; Mon, 05 Jun 2023 19:46:37 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6GA1-0004XK-UM; Mon, 05 Jun 2023 19:46:37 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6GA1-00010K-CG; Mon, 05 Jun 2023 19:46:37 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q6GA1-0001Rm-BZ; Mon, 05 Jun 2023 19:46:37 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=QseIdhKNMxiSNWhDoxvD6K+3vyVUbzpEUOqF3aPvPW0=; b=JtgQkjjECOojVVbFdM+QariXfB XcGIkcwBg+phKRFBTJqIOZzeMMViIjdsPVKqbX9kV3j9RaXO+higmqsooKsBvhdKIObhSlY7Nsikh 3q0XIhN7o5RnPhTK7aOgGqLtTmBXP6BsqMRb1oqZJDADd1gHGEqzknfSzjhRTxvL5dNg=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable-smoke test] 181195: tolerable all pass - PUSHED X-Osstest-Failures: xen-unstable-smoke:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking xen-unstable-smoke:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking xen-unstable-smoke:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking xen-unstable-smoke:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking xen-unstable-smoke:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: xen=b35b22acb887f682efe8385b3df165220bc84c86 X-Osstest-Versions-That: xen=b3880c365db89051728e1de6b6889c750cbdd915 From: osstest service owner Date: Mon, 05 Jun 2023 19:46:37 +0000 flight 181195 xen-unstable-smoke real [real] http://logs.test-lab.xenproject.org/osstest/logs/181195/ Failures :-/ but no regressions. Tests which did not succeed, but are not blocking: test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-armhf-armhf-xl 15 migrate-support-check fail never pass test-armhf-armhf-xl 16 saverestore-support-check fail never pass version targeted for testing: xen b35b22acb887f682efe8385b3df165220bc84c86 baseline version: xen b3880c365db89051728e1de6b6889c750cbdd915 Last test of basis 181191 2023-06-05 14:01:55 Z 0 days Testing same since 181195 2023-06-05 17:02:08 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Alejandro Vallejo Andrew Cooper Henry Wang # CHANGELOG Jan Beulich jobs: build-arm64-xsm pass build-amd64 pass build-armhf pass build-amd64-libvirt pass test-armhf-armhf-xl pass test-arm64-arm64-xl-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-libvirt pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Pushing revision : To xenbits.xen.org:/home/xen/git/xen.git b3880c365d..b35b22acb8 b35b22acb887f682efe8385b3df165220bc84c86 -> smoke From xen-devel-bounces@lists.xenproject.org Mon Jun 05 19:52:36 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 05 Jun 2023 19:52:36 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543909.849278 (Exim 4.92) (envelope-from ) id 1q6GFZ-0002el-34; Mon, 05 Jun 2023 19:52:21 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543909.849278; Mon, 05 Jun 2023 19:52:21 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6GFZ-0002ee-0C; Mon, 05 Jun 2023 19:52:21 +0000 Received: by outflank-mailman (input) for mailman id 543909; Mon, 05 Jun 2023 19:52:19 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6GFX-0002eX-C5 for xen-devel@lists.xenproject.org; Mon, 05 Jun 2023 19:52:19 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6GFW-0004dC-UN; Mon, 05 Jun 2023 19:52:18 +0000 Received: from gw1.octic.net ([88.97.20.152] helo=[10.0.1.102]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1q6GFW-0002Bw-Oo; Mon, 05 Jun 2023 19:52:18 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:Subject: From:References:Cc:To:MIME-Version:Date:Message-ID; bh=5jEO/jzw2x3Li/mUq3HBeT04s6Tk+lYxU779iVRi0Q0=; b=dpAsGGVtwBce7Ge39Y7IXpgU/b JFCiL5F2sCmF1+tlYp6EaRMZVKM+bggVdMoN8KIZM64Ws1QBblqqjD6LhPBX3FOk23cxKgDaz9LJG P5mFYyN51gdvuzOqhoekZNSnVwQpj4SoY4BBzDwl8tnLJESaj53gc1PKZewuSZZLQP0Y=; Message-ID: <6e15489a-5213-3b8e-0b99-277c0ba989c3@xen.org> Date: Mon, 5 Jun 2023 20:52:17 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.10.1 To: Vikram Garhwal , xen-devel@lists.xenproject.org Cc: michal.orzel@amd.com, sstabellini@kernel.org, jbeulich@suse.com References: <20230602004824.20731-1-vikram.garhwal@amd.com> <20230602004824.20731-15-vikram.garhwal@amd.com> From: Julien Grall Subject: Re: [XEN][PATCH v7 14/19] common/device_tree: Add rwlock for dt_host In-Reply-To: <20230602004824.20731-15-vikram.garhwal@amd.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi, On 02/06/2023 01:48, Vikram Garhwal wrote: > Dynamic programming ops will modify the dt_host and there might be other > function which are browsing the dt_host at the same time. To avoid the race > conditions, adding rwlock for browsing the dt_host during runtime. Please explain that writer will be added in a follow-up patch. > > Reason behind adding rwlock instead of spinlock: > For now, dynamic programming is the sole modifier of dt_host in Xen during > run time. All other access functions like iommu_release_dt_device() are > just reading the dt_host during run-time. So, there is a need to protect > others from browsing the dt_host while dynamic programming is modifying > it. rwlock is better suitable for this task as spinlock won't be able to > differentiate between read and write access. > > Signed-off-by: Vikram Garhwal > > --- > Changes from v6: > Remove redundant "read_unlock(&dt_host->lock);" in the following case: > XEN_DOMCTL_deassign_device > --- > xen/common/device_tree.c | 4 ++++ > xen/drivers/passthrough/device_tree.c | 15 +++++++++++++++ > xen/include/xen/device_tree.h | 6 ++++++ > 3 files changed, 25 insertions(+) > > diff --git a/xen/common/device_tree.c b/xen/common/device_tree.c > index c5250a1644..c8fcdf8fa1 100644 > --- a/xen/common/device_tree.c > +++ b/xen/common/device_tree.c > @@ -2146,7 +2146,11 @@ int unflatten_device_tree(const void *fdt, struct dt_device_node **mynodes) > > dt_dprintk(" <- unflatten_device_tree()\n"); > > + /* Init r/w lock for host device tree. */ > + rwlock_init(&dt_host->lock); > + > return 0; > + > } > > static void dt_alias_add(struct dt_alias_prop *ap, > diff --git a/xen/drivers/passthrough/device_tree.c b/xen/drivers/passthrough/device_tree.c > index 301a5bcd97..f4d9deb624 100644 > --- a/xen/drivers/passthrough/device_tree.c > +++ b/xen/drivers/passthrough/device_tree.c > @@ -112,6 +112,8 @@ int iommu_release_dt_devices(struct domain *d) > if ( !is_iommu_enabled(d) ) > return 0; > > + read_lock(&dt_host->lock); > + > list_for_each_entry_safe(dev, _dev, &hd->dt_devices, domain_list) > { > rc = iommu_deassign_dt_device(d, dev); > @@ -119,10 +121,14 @@ int iommu_release_dt_devices(struct domain *d) > { > dprintk(XENLOG_ERR, "Failed to deassign %s in domain %u\n", > dt_node_full_name(dev), d->domain_id); > + > + read_unlock(&dt_host->lock); > return rc; > } > } > > + read_unlock(&dt_host->lock); > + > return 0; > } > > @@ -246,6 +252,8 @@ int iommu_do_dt_domctl(struct xen_domctl *domctl, struct domain *d, > int ret; > struct dt_device_node *dev; > > + read_lock(&dt_host->lock); > + > switch ( domctl->cmd ) > { > case XEN_DOMCTL_assign_device: > @@ -295,7 +303,10 @@ int iommu_do_dt_domctl(struct xen_domctl *domctl, struct domain *d, > spin_unlock(&dtdevs_lock); > > if ( d == dom_io ) > + { > + read_unlock(&dt_host->lock); > return -EINVAL; > + } > > ret = iommu_add_dt_device(dev); > if ( ret < 0 ) > @@ -333,7 +344,10 @@ int iommu_do_dt_domctl(struct xen_domctl *domctl, struct domain *d, > break; > > if ( d == dom_io ) > + { > + read_unlock(&dt_host->lock); > return -EINVAL; > + } > > ret = iommu_deassign_dt_device(d, dev); > > @@ -348,5 +362,6 @@ int iommu_do_dt_domctl(struct xen_domctl *domctl, struct domain *d, > break; > } > > + read_unlock(&dt_host->lock); > return ret; > } > diff --git a/xen/include/xen/device_tree.h b/xen/include/xen/device_tree.h > index e239f7de26..dee40d2ea3 100644 > --- a/xen/include/xen/device_tree.h > +++ b/xen/include/xen/device_tree.h > @@ -18,6 +18,7 @@ > #include > #include > #include > +#include > > #define DEVICE_TREE_MAX_DEPTH 16 > > @@ -106,6 +107,11 @@ struct dt_device_node { > struct list_head domain_list; > > struct device dev; > + > + /* > + * Lock that protects r/w updates to unflattened device tree i.e. dt_host. > + */ From the description, it sounds like the rwlock will only be used to protect the entire device-tree rather than a single node. So it doesn't seem to be sensible to increase each node structure (there are a lot) by 12 bytes. Can you outline your plan? > + rwlock_t lock; > }; > > #define dt_to_dev(dt_node) (&(dt_node)->dev) Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Mon Jun 05 21:08:06 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 05 Jun 2023 21:08:06 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543916.849294 (Exim 4.92) (envelope-from ) id 1q6HQf-0001Xg-Iv; Mon, 05 Jun 2023 21:07:53 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543916.849294; Mon, 05 Jun 2023 21:07:53 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6HQf-0001XZ-Fy; Mon, 05 Jun 2023 21:07:53 +0000 Received: by outflank-mailman (input) for mailman id 543916; Mon, 05 Jun 2023 21:07:52 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6HQe-0001XT-Bv for xen-devel@lists.xenproject.org; Mon, 05 Jun 2023 21:07:52 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6HQd-0006LE-Dv; Mon, 05 Jun 2023 21:07:51 +0000 Received: from gw1.octic.net ([88.97.20.152] helo=[10.0.1.102]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1q6HQd-0005OL-3u; Mon, 05 Jun 2023 21:07:51 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:Subject: From:References:Cc:To:MIME-Version:Date:Message-ID; bh=pOMnTnrxmIeBTAdlcokdkNJk3+t+u+klFmIK2XY8MKI=; b=UK4xPSBZU2WmaHcBFPAlKL6s+a 3WBRy+qV9HdlJTG1FIDCWpsccUjiIgd+32t6ySBZuPVxz1lkscADCQb5t3BtuWJPp8ip6XEJ6THqg XD9MWSulbVRJUKvBxwebuMlw7sY6dXeTKpdSZJf50zaTgliCDkOqpiBY+GQWO4fv+JDQ=; Message-ID: Date: Mon, 5 Jun 2023 22:07:48 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.10.1 To: Vikram Garhwal , xen-devel@lists.xenproject.org Cc: michal.orzel@amd.com, sstabellini@kernel.org, jbeulich@suse.com, Bertrand Marquis , Volodymyr Babchuk , Andrew Cooper , George Dunlap , Wei Liu References: <20230602004824.20731-1-vikram.garhwal@amd.com> <20230602004824.20731-16-vikram.garhwal@amd.com> From: Julien Grall Subject: Re: [XEN][PATCH v7 15/19] xen/arm: Implement device tree node removal functionalities In-Reply-To: <20230602004824.20731-16-vikram.garhwal@amd.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi Vikram, On 02/06/2023 01:48, Vikram Garhwal wrote: > Introduce sysctl XEN_SYSCTL_dt_overlay to remove device-tree nodes added using > device tree overlay. > > xl dt-overlay remove file.dtbo: > Removes all the nodes in a given dtbo. > First, removes IRQ permissions and MMIO accesses. Next, it finds the nodes > in dt_host and delete the device node entries from dt_host. > > The nodes get removed only if it is not used by any of dom0 or domio. > > Also, added overlay_track struct to keep the track of added node through device > tree overlay. overlay_track has dt_host_new which is unflattened form of updated > fdt and name of overlay nodes. When a node is removed, we also free the memory > used by overlay_track for the particular overlay node. > > Nested overlay removal is supported in sequential manner only i.e. if > overlay_child nests under overlay_parent, it is assumed that user first removes > overlay_child and then removes overlay_parent. > > Signed-off-by: Vikram Garhwal > > --- > Changes from v6: > Add explicit padding for xen_system_dt_overlay{} > Update license. > Rearrange xfree in dt_sysctl() > Update overlay_track struct comment with relevant message. > Fix missing xen/errno.h for builds without CONFIG_OVERLAY_DTB cases. > Fix header formatting. > --- > xen/arch/arm/sysctl.c | 16 +- > xen/common/Makefile | 1 + > xen/common/dt-overlay.c | 420 +++++++++++++++++++++++++++++++++++ I think the new dt-overlay.c wants to be added under the section "Device-Tree" in MAINTAINERS. > xen/include/public/sysctl.h | 24 ++ > xen/include/xen/dt-overlay.h | 59 +++++ > 5 files changed, 519 insertions(+), 1 deletion(-) > create mode 100644 xen/common/dt-overlay.c > create mode 100644 xen/include/xen/dt-overlay.h > > diff --git a/xen/arch/arm/sysctl.c b/xen/arch/arm/sysctl.c > index b0a78a8b10..8b813c970f 100644 > --- a/xen/arch/arm/sysctl.c > +++ b/xen/arch/arm/sysctl.c > @@ -9,6 +9,7 @@ > > #include > #include > +#include > #include > #include > #include > @@ -21,7 +22,20 @@ void arch_do_physinfo(struct xen_sysctl_physinfo *pi) > long arch_do_sysctl(struct xen_sysctl *sysctl, > XEN_GUEST_HANDLE_PARAM(xen_sysctl_t) u_sysctl) > { > - return -ENOSYS; > + long ret; > + > + switch ( sysctl->cmd ) > + { > + case XEN_SYSCTL_dt_overlay: > + ret = dt_sysctl(&sysctl->u.dt_overlay); > + break; > + > + default: > + ret = -ENOSYS; > + break; > + } > + > + return ret; > } > > /* > diff --git a/xen/common/Makefile b/xen/common/Makefile > index 46049eac35..e7e96b1087 100644 > --- a/xen/common/Makefile > +++ b/xen/common/Makefile > @@ -8,6 +8,7 @@ obj-$(CONFIG_DEBUG_TRACE) += debugtrace.o > obj-$(CONFIG_HAS_DEVICE_TREE) += device_tree.o > obj-$(CONFIG_IOREQ_SERVER) += dm.o > obj-y += domain.o > +obj-$(CONFIG_OVERLAY_DTB) += dt-overlay.o > obj-y += event_2l.o > obj-y += event_channel.o > obj-y += event_fifo.o > diff --git a/xen/common/dt-overlay.c b/xen/common/dt-overlay.c > new file mode 100644 > index 0000000000..b2a7e441df > --- /dev/null > +++ b/xen/common/dt-overlay.c > @@ -0,0 +1,420 @@ > +/* SPDX-License-Identifier: GPL-2.0-only */ > +/* > + * xen/common/dt-overlay.c > + * > + * Device tree overlay support in Xen. > + * > + * Copyright (C) 2023, Advanced Micro Devices, Inc. All Rights Reserved. > + * Written by Vikram Garhwal > + * > + */ > +#include > +#include > +#include > +#include > +#include > + > +static LIST_HEAD(overlay_tracker); > +static DEFINE_SPINLOCK(overlay_lock); > + > +/* Find last descendants of the device_node. */ > +static struct dt_device_node * > + find_last_descendants_node(struct dt_device_node *device_node) > +{ > + struct dt_device_node *child_node; > + > + for ( child_node = device_node->child; child_node->sibling != NULL; > + child_node = child_node->sibling ); > + > + /* If last child_node also have children. */ > + if ( child_node->child ) > + child_node = find_last_descendants_node(child_node); > + > + return child_node; > +} > + > +static int dt_overlay_remove_node(struct dt_device_node *device_node) > +{ > + struct dt_device_node *np; > + struct dt_device_node *parent_node; > + struct dt_device_node *device_node_last_descendant = device_node->child; > + > + parent_node = device_node->parent; > + > + if ( parent_node == NULL ) Is this trying to check if we are trying to remove "/"? If not, what's this for? Either way, I would suggest to add a comment explaining what this check is for. > + { > + dt_dprintk("%s's parent node not found\n", device_node->name); > + return -EFAULT; > + } > + > + np = parent_node->child; > + > + if ( np == NULL ) Why would parent_node->child is NULL if we found the parent from device_node? > + { > + dt_dprintk("parent node %s's not found\n", parent_node->name); > + return -EFAULT; > + } > + > + /* If node to be removed is only child node or first child. */ > + if ( !dt_node_cmp(np->full_name, device_node->full_name) ) > + { > + parent_node->child = np->sibling; > + > + /* > + * Iterate over all child nodes of device_node. I am not sure how this matches the code below. I think it might be better to explain why it is necessary to find the last descendant. AFAIU, you seem to rely on the fact that allnext will point to the next children and every node in that list up to the last descandant will be under device_node. > Given that we are > + * removing parent node, we need to remove all it's descendants too. > + */ > + if ( device_node_last_descendant ) > + { > + device_node_last_descendant = > + find_last_descendants_node(device_node); This indentation is not nice. Can we shorten the variable to last_descendant? > + parent_node->allnext = device_node_last_descendant->allnext; > + } > + else > + parent_node->allnext = np->allnext; > + > + return 0; > + } > + > + for ( np = parent_node->child; np->sibling != NULL; np = np->sibling ) > + { > + if ( !dt_node_cmp(np->sibling->full_name, device_node->full_name) ) > + { > + /* Found the node. Now we remove it. */ > + np->sibling = np->sibling->sibling; > + > + if ( np->child ) > + np = find_last_descendants_node(np); > + > + /* > + * Iterate over all child nodes of device_node. Given that we are > + * removing parent node, we need to remove all it's descendants too. > + */ > + if ( device_node_last_descendant ) > + device_node_last_descendant = > + find_last_descendants_node(device_node); > + > + if ( device_node_last_descendant ) > + np->allnext = device_node_last_descendant->allnext; > + else > + np->allnext = np->allnext->allnext; > + > + break; > + } > + } > + > + return 0; > +} > + > +/* Basic sanity check for the dtbo tool stack provided to Xen. */ > +static int check_overlay_fdt(const void *overlay_fdt, uint32_t overlay_fdt_size) > +{ > + if ( (fdt_totalsize(overlay_fdt) != overlay_fdt_size) || > + fdt_check_header(overlay_fdt) ) > + { > + printk(XENLOG_ERR "The overlay FDT is not a valid Flat Device Tree\n"); > + return -EINVAL; > + } > + > + return 0; > +} > + > +/* Count number of nodes till one level of __overlay__ tag. */ > +static unsigned int overlay_node_count(const void *overlay_fdt) > +{ > + unsigned int num_overlay_nodes = 0; > + int fragment; > + > + fdt_for_each_subnode(fragment, overlay_fdt, 0) > + { > + int subnode; > + int overlay; > + > + overlay = fdt_subnode_offset(overlay_fdt, fragment, "__overlay__"); > + > + /* > + * overlay value can be < 0. But fdt_for_each_subnode() loop checks for > + * overlay >= 0. So, no need for a overlay>=0 check here. > + */ > + fdt_for_each_subnode(subnode, overlay_fdt, overlay) > + { > + num_overlay_nodes++; > + } > + } > + > + return num_overlay_nodes; > +} > + > +static int handle_remove_irq_iommu(struct dt_device_node *device_node) How about remove_resources()? This would avoid to miss the fact you are removing MMIO mapping as well and make the name a bit more palatable. > +{ > + int rc = 0; > + struct domain *d = hardware_domain; > + domid_t domid; > + unsigned int naddr, len; > + unsigned int i, nirq; > + > + domid = dt_device_used_by(device_node); Looking at the caller, it is not clear to me which lock is preventing the device to be assigned whilst you remove it. > + > + dt_dprintk("Checking if node %s is used by any domain\n", > + device_node->full_name); > + > + /* Remove the node if only it's assigned to domain 0 or domain io. */ Hmmm... Above, you are using hardware_domain. This may be dom0. So shouldn't you check against hardware_domain->domain_id? > + if ( domid != 0 && domid != DOMID_IO ) > + { > + printk(XENLOG_ERR "Device %s is being used by domain %u. Removing nodes failed\n", > + device_node->full_name, domid); > + return -EINVAL; > + } > + > + dt_dprintk("Removing node: %s\n", device_node->full_name); > + > + nirq = dt_number_of_irq(device_node); > + > + /* Remove IRQ permission */ > + for ( i = 0; i < nirq; i++ ) > + { > + rc = platform_get_irq(device_node, i); As I mentioned in [1], I think that parsing the Device-Tree again when removing any interrupts/mappings is a bit odd as there are more possible failures and is more complex than necessary. I have proposed a way to do it with rangeset, but I can't find any reason why this wasn't done. Can you explain? > + if ( rc < 0 ) > + { > + printk(XENLOG_ERR "Failed to get IRQ num for device node %s\n", > + device_node->full_name); > + return -EINVAL; > + } > + > + if ( irq_access_permitted(d, rc) == false ) We commonly use "!irq_acess_permitted()". But, as pointed out in [1] with this check, it means that we would not be able to call remove again on the same node if the removal was partially done. You suggested that the admin would need to reboot the platform. But this decision doesn't seem to documented in the commit message nor in the tools documentation. Can this be done? > + { > + printk(XENLOG_ERR "IRQ %d is not routed to domain %u\n", rc, > + domid); I am probably missing something here. From my understanding, irq_access_permitted() only tells you if the domain is allowed to manage the interrupt. So you could have two domains (the hardware domain and the guest) with irq_access_permitted() set. In fact, the hardware domain should always have it permitted. If you want to check for the routing, then you will have to look for the information in the 'irq->desc'. > + return -EINVAL; > + } > + /* > + * TODO: We don't handle shared IRQs for now. So, it is assumed that > + * the IRQs was not shared with another devices. > + */ > + rc = irq_deny_access(d, rc); > + if ( rc ) > + { > + printk(XENLOG_ERR "unable to revoke access for irq %u for %s\n", > + i, device_node->full_name); > + return rc; > + } You don't reverse the change in the routing. What would happen if the next overlay is updated to now pass the same device to a guest? I would be OK if this is not handled in this series. But it should be marked as a TODO. > + } > + > + /* Check if iommu property exists. */ > + if ( dt_get_property(device_node, "iommus", &len) ) > + { > + rc = iommu_remove_dt_device(device_node); > + if ( rc != 0 && rc != -ENXIO ) Checking iommu_remove_dt_device() (I didn't check the driver implementation), I can't find any use of ENXIO. So can you explain in which condition this is meant to be returned? > + return rc; > + } > + > + naddr = dt_number_of_address(device_node); > + > + /* Remove mmio access. */ > + for ( i = 0; i < naddr; i++ ) > + { > + uint64_t addr, size; > + > + rc = dt_device_get_address(device_node, i, &addr, &size); > + if ( rc ) > + { > + printk(XENLOG_ERR "Unable to retrieve address %u for %s\n", > + i, dt_node_full_name(device_node)); > + return rc; > + } > + > + rc = iomem_deny_access(d, paddr_to_pfn(addr), > + paddr_to_pfn(PAGE_ALIGN(addr + size - 1))); As pointed out in [1], I expect the function remove to be the inverse of add. Yet, you are not removing the mapping in the P2M. I still don't think it is correct to leave the mapping around. But if you think it is necessary then I think this should be documented. > + if ( rc ) > + { > + printk(XENLOG_ERR "Unable to remove dom%d access to" > + " 0x%"PRIx64" - 0x%"PRIx64"\n", > + d->domain_id, > + addr & PAGE_MASK, PAGE_ALIGN(addr + size) - 1); > + return rc; > + } > + > + } > + > + return rc; > +} > + > +/* Removes all descendants of the given node. */ > +static int remove_all_descendant_nodes(struct dt_device_node *device_node) > +{ > + int rc = 0; > + struct dt_device_node *child_node; > + > + for ( child_node = device_node->child; child_node != NULL; > + child_node = child_node->sibling ) > + { > + if ( child_node->child ) > + remove_all_descendant_nodes(child_node); AFAICT, the function could return an error. Can you explain why this is not checked? > + > + rc = handle_remove_irq_iommu(child_node); > + if ( rc ) > + return rc; > + } > + > + return rc; > +} > + > +/* Remove nodes from dt_host. */ > +static int remove_nodes(const struct overlay_track *tracker) > +{ > + int rc = 0; > + struct dt_device_node *overlay_node; > + unsigned int j; > + > + for ( j = 0; j < tracker->num_nodes; j++ ) > + { > + overlay_node = (struct dt_device_node *)tracker->nodes_address[j]; > + if ( overlay_node == NULL ) > + { > + printk(XENLOG_ERR "Device %s is not present in the tree. Removing nodes failed\n", > + overlay_node->full_name); > + return -EINVAL; > + } > + > + rc = remove_all_descendant_nodes(overlay_node); > + > + /* All children nodes are unmapped. Now remove the node itself. */ > + rc = handle_remove_irq_iommu(overlay_node); > + if ( rc ) > + return rc; > + > + read_lock(&dt_host->lock); Shouldn't this be a write_lock()? > + > + rc = dt_overlay_remove_node(overlay_node); > + if ( rc ) > + { > + read_unlock(&dt_host->lock); > + > + return rc; > + } > + > + read_unlock(&dt_host->lock); > + } > + > + return rc; > +} > + > +/* > + * First finds the device node to remove. Check if the device is being used by > + * any dom and finally remove it from dt_host. IOMMU is already being taken care > + * while destroying the domain. > + */ > +static long handle_remove_overlay_nodes(void *overlay_fdt, > + uint32_t overlay_fdt_size) > +{ > + int rc; > + struct overlay_track *entry, *temp, *track; > + bool found_entry = false; > + > + rc = check_overlay_fdt(overlay_fdt, overlay_fdt_size); > + if ( rc ) > + return rc; > + > + if ( overlay_node_count(overlay_fdt) == 0 ) > + return -EINVAL; Why do you need to check the validity of the FDT when... > + > + spin_lock(&overlay_lock); > + > + /* > + * First check if dtbo is correct i.e. it should one of the dtbo which was > + * used when dynamically adding the node. > + * Limitation: Cases with same node names but different property are not > + * supported currently. We are relying on user to provide the same dtbo > + * as it was used when adding the nodes. > + */ > + list_for_each_entry_safe( entry, temp, &overlay_tracker, entry ) > + { > + if ( memcmp(entry->overlay_fdt, overlay_fdt, overlay_fdt_size) == 0 ) ... you compare against what we stored in Xen? If we found the entry, then wouldn't it mean that the FDT is valid? > + { > + track = entry; > + found_entry = true; > + break; > + } > + } > + > + if ( found_entry == false ) We commonly use !found_entry. > + { > + rc = -EINVAL; > + > + printk(XENLOG_ERR "Cannot find any matching tracker with input dtbo." > + " Removing nodes is supported only for prior added dtbo.\n"); > + goto out; > + > + } > + > + rc = remove_nodes(entry); > + if ( rc ) > + { > + printk(XENLOG_ERR "Removing node failed\n"); > + goto out; > + } > + > + list_del(&entry->entry); > + > + xfree(entry->dt_host_new); > + xfree(entry->fdt); > + xfree(entry->overlay_fdt); > + > + xfree(entry->nodes_address); > + > + xfree(entry); > + > +out: > + spin_unlock(&overlay_lock); > + return rc; > +} > + > +long dt_sysctl(struct xen_sysctl_dt_overlay *op) It would be best to name it dt_overlay_sysctl() is this is meant to handle only overlay operations. If we want to do more, then I think we want to name the sysctl SYSCTL_DEVICE_TREE to reflect the more general purpose (renaming the sysctl after the fact is a pain). > +{ > + long ret; > + void *overlay_fdt; > + > + if ( op->overlay_fdt_size == 0 || Do you expect the rest of the code to misbehave if we pass 0? > op->overlay_fdt_size > KB(500) ) How did you decide the value KB(500)? > + return -EINVAL; > + > + if ( op->pad[0] || op->pad[1] || op->pad[2] ) > + return -EINVAL; > + > + overlay_fdt = xmalloc_bytes(op->overlay_fdt_size); > + > + if ( overlay_fdt == NULL ) > + return -ENOMEM; > + > + ret = copy_from_guest(overlay_fdt, op->overlay_fdt, op->overlay_fdt_size); > + if ( ret ) > + { > + gprintk(XENLOG_ERR, "copy from guest failed\n"); > + xfree(overlay_fdt); > + > + return -EFAULT; > + } > + > + switch ( op->overlay_op ) > + { > + case XEN_SYSCTL_DT_OVERLAY_REMOVE: > + ret = handle_remove_overlay_nodes(overlay_fdt, op->overlay_fdt_size); > + > + break; > + > + default: I think you want to set ret to -EOPNOTSUPP here rather than returning 0. Also, it feels to me you want to first check the validity of the operation before checking for overlay_fdt_size and the allocation. This would allow to re-use the fields 'overlay_fdt_size'/'overlay_fdt' for a different purpose on a new operation and also avoid allocating memory when we know it will fail. The former would not be possible in your current approach because a Xen without the hypothetical new sysctl may return -EINVAL/-EFAULT rather than -EOPNOTSUPP. So it would be more difficult to differentiate it in the toolstack. > + break; > + } > + > + xfree(overlay_fdt); > + > + return ret; > +} > + > +/* > + * Local variables: > + * mode: C > + * c-file-style: "BSD" > + * c-basic-offset: 4 > + * indent-tabs-mode: nil > + * End: > + */ > diff --git a/xen/include/public/sysctl.h b/xen/include/public/sysctl.h > index 2b24d6bfd0..ff54607617 100644 > --- a/xen/include/public/sysctl.h > +++ b/xen/include/public/sysctl.h > @@ -1057,6 +1057,25 @@ typedef struct xen_sysctl_cpu_policy xen_sysctl_cpu_policy_t; > DEFINE_XEN_GUEST_HANDLE(xen_sysctl_cpu_policy_t); > #endif > > +#if defined(__arm__) || defined (__aarch64__) > +/* > + * XEN_SYSCTL_dt_overlay > + * Performs addition/removal of device tree nodes under parent node using dtbo. > + * This does in three steps: > + * - Adds/Removes the nodes from dt_host. > + * - Adds/Removes IRQ permission for the nodes. > + * - Adds/Removes MMIO accesses. > + */ > +struct xen_sysctl_dt_overlay { > + XEN_GUEST_HANDLE_64(void) overlay_fdt; /* IN: overlay fdt. */ > + uint32_t overlay_fdt_size; /* IN: Overlay dtb size. */ > +#define XEN_SYSCTL_DT_OVERLAY_ADD 1 > +#define XEN_SYSCTL_DT_OVERLAY_REMOVE 2 > + uint8_t overlay_op; /* IN: Add or remove. */ > + uint8_t pad[3]; /* IN: Must be zero. */ > +}; > +#endif > + > struct xen_sysctl { > uint32_t cmd; > #define XEN_SYSCTL_readconsole 1 > @@ -1087,6 +1106,7 @@ struct xen_sysctl { > #define XEN_SYSCTL_livepatch_op 27 > /* #define XEN_SYSCTL_set_parameter 28 */ > #define XEN_SYSCTL_get_cpu_policy 29 > +#define XEN_SYSCTL_dt_overlay 30 > uint32_t interface_version; /* XEN_SYSCTL_INTERFACE_VERSION */ > union { > struct xen_sysctl_readconsole readconsole; > @@ -1117,6 +1137,10 @@ struct xen_sysctl { > #if defined(__i386__) || defined(__x86_64__) > struct xen_sysctl_cpu_policy cpu_policy; > #endif > + > +#if defined(__arm__) || defined (__aarch64__) > + struct xen_sysctl_dt_overlay dt_overlay; > +#endif > uint8_t pad[128]; > } u; > }; > diff --git a/xen/include/xen/dt-overlay.h b/xen/include/xen/dt-overlay.h > new file mode 100644 > index 0000000000..43fa5a02a0 > --- /dev/null > +++ b/xen/include/xen/dt-overlay.h > @@ -0,0 +1,59 @@ > + /* SPDX-License-Identifier: GPL-2.0-only */ > + /* > + * xen/dt-overlay.h > + * > + * Device tree overlay support in Xen. > + * > + * Copyright (C) 2023, Advanced Micro Devices, Inc. All Rights Reserved. > + * Written by Vikram Garhwal > + * > + */ > +#ifndef __XEN_DT_OVERLAY_H__ > +#define __XEN_DT_OVERLAY_H__ > + > +#include > +#include Nothing below is using libfdt.h and ... > +#include > +#include .. rangeset.h. So why do you include them? > + > +/* > + * overlay_track describes information about added nodes through dtbo. > + * @entry: List pointer. > + * @dt_host_new: Pointer to the updated dt_host_new which is unflattened from > + the 'updated fdt'. > + * @fdt: Stores the fdt. > + * @overlay_fdt: Stores a copy of input overlay_fdt. > + * @nodes_address: Stores each overlay_node's address. > + * @num_nodes: Total number of nodes in overlay dtb. > + */ > +struct overlay_track { > + struct list_head entry; > + struct dt_device_node *dt_host_new; > + void *fdt; > + void *overlay_fdt; > + unsigned long *nodes_address; > + unsigned int num_nodes; > +}; > + > +struct xen_sysctl_dt_overlay; > + > +#ifdef CONFIG_OVERLAY_DTB > +long dt_sysctl(struct xen_sysctl_dt_overlay *op); > +#else > +#include > +static inline long dt_sysctl(struct xen_sysctl_dt_overlay *op) > +{ > + return -EOPNOTSUPP; > +} > +#endif > + > +#endif /* __XEN_DT_OVERLAY_H__ */ > +/* > + * Local variables: > + * mode: C > + * c-file-style: "BSD" > + * c-basic-offset: 4 > + * tab-width: 4 > + * indent-tabs-mode: nil > + * End: > + */ Cheers, [1] https://lore.kernel.org/all/478d4c20-31b7-e98d-25c1-4b4e9afe7e0a@xen.org/ -- Julien Grall From xen-devel-bounces@lists.xenproject.org Mon Jun 05 21:39:52 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 05 Jun 2023 21:39:52 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543923.849303 (Exim 4.92) (envelope-from ) id 1q6HvR-00051e-WA; Mon, 05 Jun 2023 21:39:41 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543923.849303; Mon, 05 Jun 2023 21:39:41 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6HvR-00051X-TR; Mon, 05 Jun 2023 21:39:41 +0000 Received: by outflank-mailman (input) for mailman id 543923; Mon, 05 Jun 2023 21:39:40 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6HvQ-00051R-Gq for xen-devel@lists.xenproject.org; Mon, 05 Jun 2023 21:39:40 +0000 Received: from NAM11-DM6-obe.outbound.protection.outlook.com (mail-dm6nam11on20631.outbound.protection.outlook.com [2a01:111:f400:7eaa::631]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 77548080-03e9-11ee-8611-37d641c3527e; Mon, 05 Jun 2023 23:39:37 +0200 (CEST) Received: from BYAPR07CA0006.namprd07.prod.outlook.com (2603:10b6:a02:bc::19) by IA0PR12MB8206.namprd12.prod.outlook.com (2603:10b6:208:403::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.32; Mon, 5 Jun 2023 21:39:32 +0000 Received: from DM6NAM11FT099.eop-nam11.prod.protection.outlook.com (2603:10b6:a02:bc:cafe::23) by BYAPR07CA0006.outlook.office365.com (2603:10b6:a02:bc::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33 via Frontend Transport; Mon, 5 Jun 2023 21:39:31 +0000 Received: from SATLEXMB03.amd.com (165.204.84.17) by DM6NAM11FT099.mail.protection.outlook.com (10.13.172.241) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6455.33 via Frontend Transport; Mon, 5 Jun 2023 21:39:31 +0000 Received: from SATLEXMB04.amd.com (10.181.40.145) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Mon, 5 Jun 2023 16:39:30 -0500 Received: from ubuntu-20.04.2-arm64.shared (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34 via Frontend Transport; Mon, 5 Jun 2023 16:39:29 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 77548080-03e9-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=elmlYW6sItkgQ1L2rWanQbiDnt9qz4fqVSDO5GFqB06tHQxU/oFCzEmcsydWPAagCrWWVg0djo385eoFyG88YQXvhkshtr1wYszUtndljuab3USqD1C9HEvxBCMVnNdg4HtJ/Kc2drRX+6+zATsEUo0Ycs4aS0tH6CFHdW7aIQxKEQpdl+EmMbNKXKVrlug906ZBn3R7AulOMHiZ2OgCyMkzuNUhu1cyexh1JyFkbwB1SDLcBXucCH9Q83i4yedsjfZNyBJR8PyS+UDqieV9maaaqNqZRBbRo3xL1iGolmkT8KZt6skBQb4AAGkmi2dyPJvy/ESbrkfwMnDY15Xvhg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=3sUczbDXjmMZe7GlucbeQzB1gtOCgQO7kTKUdod/ILE=; b=AaGhveYrMlbfnTkpsJ33L9hn9QDAug8a9O01IFN0S0Y2+GY071ZVzFvHcOiP8UBD9x1HU9gj/hb4T39iUrxdv7LGsXeZA87rG37eEV1ye5pjHvDYhZa8BzKJXUtW8AFRtWFR8WdNV/diSc/cJUqKu5XBXdcN46vExJl9thgenBbLxaws2X3cXfAoqszJ+fvZQx+lr+qYMYxi/yDv3dVO4mwABDsYJpNXDBePSmJK+jCA4zDZgjASYUwlrkk4DLQ2KlVNfpWYpZgEr4E9Gxpiezt+PMttkUCWyCzBrdBPdo5naMpou3ixne3shkOeKhVixGkNStRWHONq3LSq5WwSPg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=bugseng.com smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=3sUczbDXjmMZe7GlucbeQzB1gtOCgQO7kTKUdod/ILE=; b=xKqLSnQyD0oad/2zazHFaA3b7jvoAUHgFf8CL4g13hwI+rAl+y4R77t6qbZVXlqd+HO6A0XXM2cTcJtnasRkGIYJ3q1dZniQCJOjJYnQkrlZbbQMX0r4RtHGrC6kyi4L2kAUjLeCA9LaWdpdG9KErB4psCJ8l5u8GWE7lSm2JQs= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C Date: Mon, 5 Jun 2023 14:39:28 -0700 From: Stefano Stabellini X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop To: Roberto Bagnara CC: Jan Beulich , Stefano Stabellini , "xen-devel@lists.xenproject.org" Subject: Re: Xen reliance on non-standard GCC features In-Reply-To: <80a512ac-d90e-930a-7ef7-8ebb5a80e801@bugseng.com> Message-ID: References: <1cd359e7-5245-a621-3be2-9323ba5b327b@bugseng.com> <8314e0fc-4ead-40fa-ef7b-4da8ce0655b4@suse.com> <80a512ac-d90e-930a-7ef7-8ebb5a80e801@bugseng.com> User-Agent: Alpine 2.22 (DEB 394 2020-01-19) MIME-Version: 1.0 Content-Type: text/plain; charset="US-ASCII" X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DM6NAM11FT099:EE_|IA0PR12MB8206:EE_ X-MS-Office365-Filtering-Correlation-Id: b9b4f02c-8ec3-4083-086b-08db660d58af X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 0KbFh3pEV409LARfdONEjiGcYPjOBOEo7lo0SzgoR3YorkDrm/+1DaY4SdUrVawL/q4fSpyOIMRRDeVdz+8GT1a6ZNha5xuh5Eyu98FwKQoH3LColPiPVDFO4LsLOwExkMFC0IciiCkqvHtkZH3q7F7/CznbaNovMVewFtpjTcxp61rfNHCFZu88FHtJdp69cY3eOwbTK21BRGjrYTtRwk7gQxsdQH7HBzyWRafL+E6fA73hn6+OE53fLYm7051+AGZaEprUE8Xbm+kGPCD+Y80QXwbTLh6Zbh+K17rG6FyhUnnNmtyVs7au/dX3P40SckIqcWzAoTgEtyIYcSzTcRMlHX2c8iV9GZVaYNoToQKXNkTJe3rKvDWsYbIbW+NWi2bDjYKig1umGYtaMB+to6t5qc+Z8ASfbJSglX8qZatImeQCKq7vq+3/9bcBJw944Ziy2UgEBPrLq1MiStEhD2Jpx9CKrGU/8wa2guvx/RTTH+/Ys4hIdv4z8BdrT4ZxdGoZaPS5ueY+CIycmNqAF8N3ZDKg7k0iT2HNCOiT2HLWU7h455CgP7pZZnIlnCWv3TneJnk5i4NTNrCr4aV2tZ/e2bhupbHaayvJdwTHFXjHGQQV2hCF5NhYpPnPzSJC/vO1im7DegAKd3ZUmGioKKBgVcINoFNlM9wY28NQMLuCfMoaHljYfGWC2qBTlarcOKkhxHJxqSQv5W9XHtd4bV+Nj3AB6Iinevm2PdpSu7luHOa/AMWpLHGhaERPeKSwTzPQgYUqI/NsBPfkD0SaMw== X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(7916004)(4636009)(376002)(346002)(396003)(136003)(39860400002)(451199021)(40470700004)(46966006)(36840700001)(9686003)(41300700001)(336012)(426003)(47076005)(186003)(26005)(36860700001)(83380400001)(40460700003)(478600001)(40480700001)(54906003)(4326008)(6916009)(81166007)(82310400005)(356005)(70586007)(70206006)(316002)(82740400003)(8676002)(5660300002)(8936002)(44832011)(2906002)(33716001)(86362001)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Jun 2023 21:39:31.0749 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: b9b4f02c-8ec3-4083-086b-08db660d58af X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com] X-MS-Exchange-CrossTenant-AuthSource: DM6NAM11FT099.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: IA0PR12MB8206 On Mon, 5 Jun 2023, Roberto Bagnara wrote: > > > Here is a list of extensions that are documented in the GCC manual: > > > > I suppose that this list wasn't meant to be complete? The most > > prominent example is probably asm(). > > As far as I can tell the list was almost complete (I realize now > that the use of the keyword __signed__ was omitted because > investigation was not completed). But I am probably misunderstanding > you. We also make use of the following extensions (please correct me if I am wrong and these are not extensions): xen/include/xen/compiler.h:#define always_inline __inline__ __attribute__ ((__always_inline__)) xen/include/xen/compiler.h:#define gnu_inline __inline__ __attribute__ ((__gnu_inline__)) xen/include/xen/compiler.h:#define noinline __attribute__((__noinline__)) xen/include/xen/compiler.h:#define noreturn __attribute__((__noreturn__)) xen/include/xen/compiler.h:#define __packed __attribute__((__packed__)) xen/include/xen/compiler.h:#define __weak __attribute__((__weak__)) xen/include/xen/compiler.h:# define nocall __attribute__((__error__("Nonstandard ABI"))) xen/include/xen/compiler.h:# define cf_check __attribute__((__cf_check__)) xen/include/xen/compiler.h:# define fallthrough __attribute__((__fallthrough__)) xen/include/xen/compiler.h:#define __aligned(a) __attribute__((__aligned__(a))) xen/include/xen/compiler.h:#define __attribute_pure__ __attribute__((__pure__)) xen/include/xen/compiler.h:#define __attribute_const__ __attribute__((__const__)) xen/include/xen/compiler.h:#define __transparent__ __attribute__((__transparent_union__)) xen/include/xen/compiler.h:#define __used __attribute__((__used__)) xen/include/xen/compiler.h:#define __maybe_unused __attribute__((__unused__)) xen/include/xen/compiler.h:#define __must_check __attribute__((__warn_unused_result__)) xen/include/xen/compiler.h:#define __nonnull(...) __attribute__((__nonnull__(__VA_ARGS__))) It is possible that some of these don't show up in any of the relevant code build as part of the minimal configuration for safety so you won't see any errors/warnings in Eclair. Also, some of these extensions are probably no longer necessary, such as __gnu_inline__. From xen-devel-bounces@lists.xenproject.org Mon Jun 05 22:21:16 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 05 Jun 2023 22:21:16 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543932.849320 (Exim 4.92) (envelope-from ) id 1q6IZT-0001oi-2T; Mon, 05 Jun 2023 22:21:03 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543932.849320; Mon, 05 Jun 2023 22:21:03 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6IZS-0001ob-VH; Mon, 05 Jun 2023 22:21:02 +0000 Received: by outflank-mailman (input) for mailman id 543932; Mon, 05 Jun 2023 22:21:01 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6IZR-0001oR-6Q; Mon, 05 Jun 2023 22:21:01 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6IZQ-00084G-VM; Mon, 05 Jun 2023 22:21:01 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6IZQ-0000eS-H0; Mon, 05 Jun 2023 22:21:00 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q6IZQ-0001ip-GY; Mon, 05 Jun 2023 22:21:00 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=VgFEm0TzIEx7XEIlLiDRWnme0haEWUGr3Bi4RPipckQ=; b=JwZcER8rrcxwIGnyNyrZ4+6e99 p20VTRQ3FuquAWVrrsDlhtGSnN4fvdhhxBZCroigwCpqcjGsGDLkcCVwCI6uk3r40bOL05SR2mjV7 NRgp/CeXlNw4vFHTAlxn01dMhPKqbFE+UZp0sjq31a8Jq44go83Uyw0LkGWfBCfjvUos=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [linux-5.4 test] 181182: tolerable FAIL - PUSHED X-Osstest-Failures: linux-5.4:test-armhf-armhf-xl-rtds:guest-start/debian.repeat:fail:allowable linux-5.4:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking linux-5.4:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking linux-5.4:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking linux-5.4:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking linux-5.4:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking linux-5.4:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: linux=cf0b1e5482eaeb4db15c9e703267483dba88b575 X-Osstest-Versions-That: linux=51d0ac4577c20b22cb659b16d73d37c05ce2fbde From: osstest service owner Date: Mon, 05 Jun 2023 22:21:00 +0000 flight 181182 linux-5.4 real [real] http://logs.test-lab.xenproject.org/osstest/logs/181182/ Failures :-/ but no regressions. Regressions which are regarded as allowable (not blocking): test-armhf-armhf-xl-rtds 18 guest-start/debian.repeat fail REGR. vs. 181015 Tests which did not succeed, but are not blocking: test-armhf-armhf-libvirt 16 saverestore-support-check fail like 181015 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 181015 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop fail like 181015 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop fail like 181015 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 181015 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail like 181015 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 181015 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 181015 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop fail like 181015 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail like 181015 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop fail like 181015 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 181015 test-amd64-i386-libvirt 15 migrate-support-check fail never pass test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-i386-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-i386-xl-pvshim 14 guest-start fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt 15 migrate-support-check fail never pass test-amd64-i386-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-xl 15 migrate-support-check fail never pass test-armhf-armhf-xl 16 saverestore-support-check fail never pass test-armhf-armhf-xl-multivcpu 15 migrate-support-check fail never pass test-armhf-armhf-xl-multivcpu 16 saverestore-support-check fail never pass test-armhf-armhf-xl-credit1 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 16 saverestore-support-check fail never pass test-armhf-armhf-xl-credit2 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit2 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 15 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass test-armhf-armhf-libvirt-raw 14 migrate-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 15 saverestore-support-check fail never pass test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 15 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 16 saverestore-support-check fail never pass version targeted for testing: linux cf0b1e5482eaeb4db15c9e703267483dba88b575 baseline version: linux 51d0ac4577c20b22cb659b16d73d37c05ce2fbde Last test of basis 181015 2023-05-30 12:14:38 Z 6 days Testing same since 181182 2023-06-05 06:43:42 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Alexander Bersenev Carlos Llamas Christian Brauner David S. Miller Dragos-Marian Panait Florian Fainelli Florian Westphal Greg Kroah-Hartman Guenter Roeck Hans de Goede Hao Ge Harshit Mogalapalli Jakub Kicinski Jens Axboe Jon Hunter Linux Kernel Functional Testing Luiz Augusto von Dentz Marcel Holtmann Mark Bloch Nicolas Dichtel Pablo Neira Ayuso Paolo Abeni Paul Blakey Ruihan Li Saeed Mahameed Sasha Levin Sebastian Reichel Shay Drory Shuah Khan Todd Kjos Tudor Ambarus jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl pass test-amd64-i386-xl pass test-amd64-coresched-i386-xl pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-i386-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-i386-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-i386-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-i386-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-i386-qemut-rhel6hvm-amd pass test-amd64-i386-qemuu-rhel6hvm-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-i386-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-freebsd10-amd64 pass test-amd64-amd64-qemuu-freebsd11-amd64 pass test-amd64-amd64-qemuu-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-i386-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-i386-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-i386-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-amd64-i386-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale pass test-amd64-amd64-examine-bios pass test-amd64-i386-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 pass test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 pass test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine pass test-amd64-i386-examine pass test-amd64-i386-freebsd10-i386 pass test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-i386-qemut-rhel6hvm-intel pass test-amd64-i386-qemuu-rhel6hvm-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt pass test-amd64-i386-libvirt pass test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu pass test-amd64-amd64-pair pass test-amd64-i386-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-i386-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-i386-xl-pvshim fail test-amd64-amd64-pygrub pass test-armhf-armhf-libvirt-qcow2 pass test-amd64-amd64-xl-qcow2 pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw pass test-amd64-i386-libvirt-raw pass test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds fail test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-amd64-i386-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-i386-examine-uefi pass test-amd64-amd64-libvirt-vhd pass test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd pass test-amd64-i386-xl-vhd pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Pushing revision : hint: The 'hooks/update' hook was ignored because it's not set as executable. hint: You can disable this warning with `git config advice.ignoredHook false`. hint: The 'hooks/post-receive' hook was ignored because it's not set as executable. hint: You can disable this warning with `git config advice.ignoredHook false`. hint: The 'hooks/post-update' hook was ignored because it's not set as executable. hint: You can disable this warning with `git config advice.ignoredHook false`. To xenbits.xen.org:/home/xen/git/linux-pvops.git 51d0ac4577c2..cf0b1e5482ea cf0b1e5482eaeb4db15c9e703267483dba88b575 -> tested/linux-5.4 From xen-devel-bounces@lists.xenproject.org Mon Jun 05 23:57:19 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 05 Jun 2023 23:57:19 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543942.849336 (Exim 4.92) (envelope-from ) id 1q6K4E-0002ae-VP; Mon, 05 Jun 2023 23:56:54 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543942.849336; Mon, 05 Jun 2023 23:56:54 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6K4E-0002aX-Sk; Mon, 05 Jun 2023 23:56:54 +0000 Received: by outflank-mailman (input) for mailman id 543942; Mon, 05 Jun 2023 23:56:52 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6K4C-0002aN-SP; Mon, 05 Jun 2023 23:56:52 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6K4C-0001sm-JW; Mon, 05 Jun 2023 23:56:52 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6K4C-0004gn-7d; Mon, 05 Jun 2023 23:56:52 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q6K4C-0002cS-7B; Mon, 05 Jun 2023 23:56:52 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Message-Id:Subject:To; bh=JFjU24TXeZWrYqHaBFtICZ8DyD613KgHsnDyFyXMlaE=; b=JtmOdrgdeUTb3javVDAK8B2pvU brLL56L917VXPsrt13YM3gyqJn+HwrYZN+WBFwPjzszewL6RBDR9QzPnXL0HUi73x46eYwJRe52iw moVeKYuI+8innJ+U921SRtu7Mw4DaouSSgIgeBhU392M45cFBcLcZUdRDN21uNSshMyY=; To: xen-devel@lists.xenproject.org Subject: [qemu-mainline bisection] complete test-amd64-i386-libvirt Message-Id: From: osstest service owner Date: Mon, 05 Jun 2023 23:56:52 +0000 branch xen-unstable xenbranch xen-unstable job test-amd64-i386-libvirt testid leak-check/check Tree: libvirt git://xenbits.xen.org/libvirt.git Tree: libvirt_keycodemapdb https://gitlab.com/keycodemap/keycodemapdb.git Tree: linux git://xenbits.xen.org/linux-pvops.git Tree: linuxfirmware git://xenbits.xen.org/osstest/linux-firmware.git Tree: ovmf git://xenbits.xen.org/osstest/ovmf.git Tree: qemu git://xenbits.xen.org/qemu-xen-traditional.git Tree: qemuu https://gitlab.com/qemu-project/qemu.git Tree: seabios git://xenbits.xen.org/osstest/seabios.git Tree: xen git://xenbits.xen.org/xen.git *** Found and reproduced problem changeset *** Bug is in tree: qemuu https://gitlab.com/qemu-project/qemu.git Bug introduced: f6eac904f6825d47adc6102c8d7b59b8ba5b778e Bug not present: ab61335025b1274bd7042219203524045b23e0d3 Last fail repro: http://logs.test-lab.xenproject.org/osstest/logs/181199/ commit f6eac904f6825d47adc6102c8d7b59b8ba5b778e Author: Stefan Hajnoczi Date: Tue May 16 15:02:29 2023 -0400 xen-block: implement BlockDevOps->drained_begin() Detach event channels during drained sections to stop I/O submission from the ring. xen-block is no longer reliant on aio_disable_external() after this patch. This will allow us to remove the aio_disable_external() API once all other code that relies on it is converted. Extend xen_device_set_event_channel_context() to allow ctx=NULL. The event channel still exists but the event loop does not monitor the file descriptor. Event channel processing can resume by calling xen_device_set_event_channel_context() with a non-NULL ctx. Factor out xen_device_set_event_channel_context() calls in hw/block/dataplane/xen-block.c into attach/detach helper functions. Incidentally, these don't require the AioContext lock because aio_set_fd_handler() is thread-safe. It's safer to register BlockDevOps after the dataplane instance has been created. The BlockDevOps .drained_begin/end() callbacks depend on the dataplane instance, so move the blk_set_dev_ops() call after xen_block_dataplane_create(). Signed-off-by: Stefan Hajnoczi Reviewed-by: Kevin Wolf Message-Id: <20230516190238.8401-12-stefanha@redhat.com> Signed-off-by: Kevin Wolf For bisection revision-tuple graph see: http://logs.test-lab.xenproject.org/osstest/results/bisect/qemu-mainline/test-amd64-i386-libvirt.leak-check--check.html Revision IDs in each graph node refer, respectively, to the Trees above. ---------------------------------------- Running cs-bisection-step --graph-out=/home/logs/results/bisect/qemu-mainline/test-amd64-i386-libvirt.leak-check--check --summary-out=tmp/181199.bisection-summary --basis-template=180691 --blessings=real,real-bisect,real-retry qemu-mainline test-amd64-i386-libvirt leak-check/check Searching for failure / basis pass: 181177 fail [host=huxelrebe0] / 181013 [host=debina1] 181006 [host=rimava0] 181003 [host=fiano0] 180996 [host=rimava1] 180990 [host=nobling0] 180987 [host=italia0] 180983 [host=albana0] 180981 [host=huxelrebe1] 180977 [host=nobling1] 180691 [host=nocera1] 180686 [host=elbling0] 180673 [host=pinot0] 180659 ok. Failure / basis pass flights: 181177 / 180659 (tree with no url: minios) Tree: libvirt git://xenbits.xen.org/libvirt.git Tree: libvirt_keycodemapdb https://gitlab.com/keycodemap/keycodemapdb.git Tree: linux git://xenbits.xen.org/linux-pvops.git Tree: linuxfirmware git://xenbits.xen.org/osstest/linux-firmware.git Tree: ovmf git://xenbits.xen.org/osstest/ovmf.git Tree: qemu git://xenbits.xen.org/qemu-xen-traditional.git Tree: qemuu https://gitlab.com/qemu-project/qemu.git Tree: seabios git://xenbits.xen.org/osstest/seabios.git Tree: xen git://xenbits.xen.org/xen.git Latest f26923fb2e49d544ef937cd34e6b0807fed9eb96 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 c1dd400a13d1a5e862809c55f6760ba3a944a609 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 848a6caa88b9f082c89c9b41afa975761262981d be7e899350caa7b74d8271a34264c3b4aef25ab0 67fdffef9246c82cecd8db28838ed09e79e2528a Basis pass 4a681995bc9f0ba5df779c392b7bebf3470a3f9a 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 d3225577123767fd09c91201d27e9c91663ae132 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8844bb8d896595ee1d25d21c770e6e6f29803097 ea1b7a0733906b8425d948ae94fba63c32b1d425 4c507d8a6b6e8be90881a335b0a66eb28e0f7737 Generating revisions with ./adhoc-revtuple-generator git://xenbits.xen.org/libvirt.git#4a681995bc9f0ba5df779c392b7bebf3470a3f9a-f26923fb2e49d544ef937cd34e6b0807fed9eb96 https://gitlab.com/keycodemap/keycodemapdb.git#22b8996dba9041874845c7446ce89ec4ae2b713d-22b8996dba9041874845c7446ce89ec4ae2b713d git://xenbits.xen.org/linux-pvops.git#c3038e718a19fc596f7b1baba0f83d5146dc7784-c3038e718a19fc596f7b1baba0f83d5146dc7784 git://xenbits.xen.org/osstest/linux-firmware.git#c530a75c1e6a472b0eb9558310b518f0\ dfcd8860-c530a75c1e6a472b0eb9558310b518f0dfcd8860 git://xenbits.xen.org/osstest/ovmf.git#d3225577123767fd09c91201d27e9c91663ae132-c1dd400a13d1a5e862809c55f6760ba3a944a609 git://xenbits.xen.org/qemu-xen-traditional.git#3d273dd05e51e5a1ffba3d98c7437ee84e8f8764-3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 https://gitlab.com/qemu-project/qemu.git#8844bb8d896595ee1d25d21c770e6e6f29803097-848a6caa88b9f082c89c9b41afa975761262981d git://xenbits.xen.org/osstest/seabios.git#ea1b7a0733906b8425d948ae94fba63c32b\ 1d425-be7e899350caa7b74d8271a34264c3b4aef25ab0 git://xenbits.xen.org/xen.git#4c507d8a6b6e8be90881a335b0a66eb28e0f7737-67fdffef9246c82cecd8db28838ed09e79e2528a Loaded 106105 nodes in revision graph Searching for test results: 180659 pass 4a681995bc9f0ba5df779c392b7bebf3470a3f9a 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 d3225577123767fd09c91201d27e9c91663ae132 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8844bb8d896595ee1d25d21c770e6e6f29803097 ea1b7a0733906b8425d948ae94fba63c32b1d425 4c507d8a6b6e8be90881a335b0a66eb28e0f7737 180673 [host=pinot0] 180686 [host=elbling0] 180702 [] 180691 [host=nocera1] 180704 [] 180721 [] 180742 [] 180753 [] 180785 [] 180807 [] 180815 [] 180825 [] 180835 [] 180843 [] 180853 [] 180860 [] 180866 [] 180873 [] 180878 [] 180881 [] 180887 [] 180894 [] 180902 [] 180906 [] 180909 [] 180912 [] 180916 [] 180927 [] 180921 [] 180933 [] 180937 [] 180942 [] 180947 [] 180949 [] 180952 [] 180954 [] 180958 [] 180962 [] 180966 [] 180968 [] 180972 [] 180975 [] 180977 [host=nobling1] 180981 [host=huxelrebe1] 180983 [host=albana0] 180990 [host=nobling0] 180987 [host=italia0] 181003 [host=fiano0] 180996 [host=rimava1] 181006 [host=rimava0] 181013 [host=debina1] 181021 fail irrelevant 181041 fail irrelevant 181057 fail irrelevant 181068 fail irrelevant 181089 fail irrelevant 181103 fail irrelevant 181119 fail irrelevant 181131 fail irrelevant 181142 pass 4a681995bc9f0ba5df779c392b7bebf3470a3f9a 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 d3225577123767fd09c91201d27e9c91663ae132 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8844bb8d896595ee1d25d21c770e6e6f29803097 ea1b7a0733906b8425d948ae94fba63c32b1d425 4c507d8a6b6e8be90881a335b0a66eb28e0f7737 181143 fail irrelevant 181145 fail irrelevant 181146 fail 1c7335add9e28637d8a8b5039f487e5dc6a591c2 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 41abf00bf98e36830974bd669ab7ec3679bd5e67 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 3a8b81f2e6393828589699bb0b8ef557b9ae5937 be7e899350caa7b74d8271a34264c3b4aef25ab0 71226054f28ad98ab214b56a15899e8f62a7bca8 181148 fail 1c7335add9e28637d8a8b5039f487e5dc6a591c2 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 15f83fa36442eaa272300b31699b3b82ce7e07a9 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 367189efae8b53ec2ade37a1c079fd8f69244b9e be7e899350caa7b74d8271a34264c3b4aef25ab0 59d0bf62861f5c9b317ccf89f8b5c8b4d19927ad 181149 fail c47e17689e3309e544b59f5a9eb7b9d668967787 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9f12d6b6ecf8ffe9cd4d93fe0976fdbaf2ded4f0 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 c76e7652c786683edcc846ee0a7a65b587787792 be7e899350caa7b74d8271a34264c3b4aef25ab0 dc98fa74446e5abe417e5ba9a6a632b50444cfa1 181140 fail irrelevant 181150 pass 9222f35dc6917f00d166be3bb69ac4e5ff8536f0 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 0f9283429dd487deeeb264ee5670551d596fc208 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 7fe6cb68117ac856e03c93d18aca09de015392b0 be7e899350caa7b74d8271a34264c3b4aef25ab0 05422d276b56f2ebc2309a84a66fc5722c45ad74 181152 fail irrelevant 181153 pass e35b5df3f561ea5678a21aa1b39f14308fc6363c 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 1034d223f8cc6bf8b9b86c57e564753cdad46f88 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 5a4cb61ae1ab0068ab53535ed0ccaf41a5e97d2f be7e899350caa7b74d8271a34264c3b4aef25ab0 f54dd5b53ee516fa1d4c106e0744ce0083acfcdc 181155 pass e35b5df3f561ea5678a21aa1b39f14308fc6363c 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 1034d223f8cc6bf8b9b86c57e564753cdad46f88 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 56b8bfe9bb6b94184b8bbfc4be9196404a81e450 be7e899350caa7b74d8271a34264c3b4aef25ab0 f54dd5b53ee516fa1d4c106e0744ce0083acfcdc 181151 fail f26923fb2e49d544ef937cd34e6b0807fed9eb96 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 c1dd400a13d1a5e862809c55f6760ba3a944a609 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 848a6caa88b9f082c89c9b41afa975761262981d be7e899350caa7b74d8271a34264c3b4aef25ab0 67fdffef9246c82cecd8db28838ed09e79e2528a 181158 pass 997994b6b1e3b0bfd8597ab67e6eeb676d3d95c6 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 ba91d0292e593df8528b66f99c1b0b14fadc8e16 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 9cb47a10564e35df421f9639b0d2cf9e7449544d be7e899350caa7b74d8271a34264c3b4aef25ab0 f54dd5b53ee516fa1d4c106e0744ce0083acfcdc 181160 pass 4a681995bc9f0ba5df779c392b7bebf3470a3f9a 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 d3225577123767fd09c91201d27e9c91663ae132 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8844bb8d896595ee1d25d21c770e6e6f29803097 ea1b7a0733906b8425d948ae94fba63c32b1d425 4c507d8a6b6e8be90881a335b0a66eb28e0f7737 181161 fail f26923fb2e49d544ef937cd34e6b0807fed9eb96 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 c1dd400a13d1a5e862809c55f6760ba3a944a609 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 848a6caa88b9f082c89c9b41afa975761262981d be7e899350caa7b74d8271a34264c3b4aef25ab0 67fdffef9246c82cecd8db28838ed09e79e2528a 181162 pass a1bdffdd9638601b17a6d115eb148422b66bcea0 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 ba91d0292e593df8528b66f99c1b0b14fadc8e16 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 7d196e2196d50e0dda0f87f396d4f4a7ad9aafbe be7e899350caa7b74d8271a34264c3b4aef25ab0 f54dd5b53ee516fa1d4c106e0744ce0083acfcdc 181163 pass a1bdffdd9638601b17a6d115eb148422b66bcea0 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 ba91d0292e593df8528b66f99c1b0b14fadc8e16 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 b17bbf835c8998e93fd99b06164f1d63843fe8c9 be7e899350caa7b74d8271a34264c3b4aef25ab0 f54dd5b53ee516fa1d4c106e0744ce0083acfcdc 181165 pass a8c983d0fa1ba915f7a75deeceb20da1c88fd1db 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 ba91d0292e593df8528b66f99c1b0b14fadc8e16 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 b300c134465465385045ab705b68a42699688332 be7e899350caa7b74d8271a34264c3b4aef25ab0 354be8936d97d4f2cb8cc004bb0296826d89bd8d 181159 fail f26923fb2e49d544ef937cd34e6b0807fed9eb96 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 c1dd400a13d1a5e862809c55f6760ba3a944a609 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 848a6caa88b9f082c89c9b41afa975761262981d be7e899350caa7b74d8271a34264c3b4aef25ab0 67fdffef9246c82cecd8db28838ed09e79e2528a 181166 pass 3b6d69237f0a07bf8d9807cd68a387f8d42b076f 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 c5cf7f69c98baed40754ca4a821cb504fd5423cd 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 ad3387396a71416cacc0b394e5e440dd6e9ba19a be7e899350caa7b74d8271a34264c3b4aef25ab0 c7908869ac26961a3919491705e521179ad3fc0e 181169 pass 3b6d69237f0a07bf8d9807cd68a387f8d42b076f 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 c5cf7f69c98baed40754ca4a821cb504fd5423cd 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 37246d54d656933035094ed95f2d8e4708058856 be7e899350caa7b74d8271a34264c3b4aef25ab0 c7908869ac26961a3919491705e521179ad3fc0e 181170 pass 90404c53682f464b4a26efd618887dc336d9da80 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 0abfb0be6cf78a8e962383e85cec57851ddae5bc 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 297e8182194e634baa0cbbfd96d2e09e2a0bcd40 be7e899350caa7b74d8271a34264c3b4aef25ab0 753d903a6f2d1e68d98487d36449b5739c28d65a 181171 pass 5ee27c37e6d0d081714d1e1d25a0a4e472665120 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 0abfb0be6cf78a8e962383e85cec57851ddae5bc 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 91608e2a44f36e79cb83f863b8a7bb57d2c98061 be7e899350caa7b74d8271a34264c3b4aef25ab0 753d903a6f2d1e68d98487d36449b5739c28d65a 181173 pass b10bc8f7ab6f9986ccc54ba04fc5b3bad7576be6 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 cafb4f3f36e2101cab2ed6db3ea246a5a3e4708e 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 7d478306e84259678b2941e8af7496ef32a9c4c5 be7e899350caa7b74d8271a34264c3b4aef25ab0 42abf5b9c53eb1b1a902002fcda68708234152c3 181168 fail f26923fb2e49d544ef937cd34e6b0807fed9eb96 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 c1dd400a13d1a5e862809c55f6760ba3a944a609 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 848a6caa88b9f082c89c9b41afa975761262981d be7e899350caa7b74d8271a34264c3b4aef25ab0 67fdffef9246c82cecd8db28838ed09e79e2528a 181174 pass 90404c53682f464b4a26efd618887dc336d9da80 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 0abfb0be6cf78a8e962383e85cec57851ddae5bc 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 d0a14a2ba01c7b200e6ce3e7979e1ed3ede1d5c7 be7e899350caa7b74d8271a34264c3b4aef25ab0 753d903a6f2d1e68d98487d36449b5739c28d65a 181176 pass b4560dc69b70be8fbc4aaa523a8cd21b9955b5a0 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 ba91d0292e593df8528b66f99c1b0b14fadc8e16 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 a3cb6d5004ff638aefe686ecd540718a793bd1b1 be7e899350caa7b74d8271a34264c3b4aef25ab0 354be8936d97d4f2cb8cc004bb0296826d89bd8d 181179 pass 9222f35dc6917f00d166be3bb69ac4e5ff8536f0 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 0f9283429dd487deeeb264ee5670551d596fc208 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 4382f167cfbc21a49424e6dd9347681008363128 be7e899350caa7b74d8271a34264c3b4aef25ab0 05422d276b56f2ebc2309a84a66fc5722c45ad74 181180 pass 9222f35dc6917f00d166be3bb69ac4e5ff8536f0 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 0f9283429dd487deeeb264ee5670551d596fc208 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 276d77de503e8f5f5cbd3f7d94302ca12d1d982e be7e899350caa7b74d8271a34264c3b4aef25ab0 94200e1bae07e725cc07238c11569c5cab7befb7 181181 blocked 9222f35dc6917f00d166be3bb69ac4e5ff8536f0 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 56ad09ba75bef5f095a1a48e365d65195ba45d10 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 51bdb0b57a2d9e84d6915fbae7b5d76c8820cf3c be7e899350caa7b74d8271a34264c3b4aef25ab0 94200e1bae07e725cc07238c11569c5cab7befb7 181177 fail f26923fb2e49d544ef937cd34e6b0807fed9eb96 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 c1dd400a13d1a5e862809c55f6760ba3a944a609 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 848a6caa88b9f082c89c9b41afa975761262981d be7e899350caa7b74d8271a34264c3b4aef25ab0 67fdffef9246c82cecd8db28838ed09e79e2528a 181184 fail 9222f35dc6917f00d166be3bb69ac4e5ff8536f0 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 0f9283429dd487deeeb264ee5670551d596fc208 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 17b69c0fc1462be70419e622b63755a4390bfe31 be7e899350caa7b74d8271a34264c3b4aef25ab0 05422d276b56f2ebc2309a84a66fc5722c45ad74 181187 pass 9222f35dc6917f00d166be3bb69ac4e5ff8536f0 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 0f9283429dd487deeeb264ee5670551d596fc208 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 ff82b7835b2fbbd0a17d616f6929601a97a6497d be7e899350caa7b74d8271a34264c3b4aef25ab0 05422d276b56f2ebc2309a84a66fc5722c45ad74 181188 fail 9222f35dc6917f00d166be3bb69ac4e5ff8536f0 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 0f9283429dd487deeeb264ee5670551d596fc208 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 fb5cba2c7ee34d3c44e87374f307ebec5673cfe0 be7e899350caa7b74d8271a34264c3b4aef25ab0 05422d276b56f2ebc2309a84a66fc5722c45ad74 181190 pass 9222f35dc6917f00d166be3bb69ac4e5ff8536f0 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 0f9283429dd487deeeb264ee5670551d596fc208 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 ab61335025b1274bd7042219203524045b23e0d3 be7e899350caa7b74d8271a34264c3b4aef25ab0 05422d276b56f2ebc2309a84a66fc5722c45ad74 181193 fail 9222f35dc6917f00d166be3bb69ac4e5ff8536f0 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 0f9283429dd487deeeb264ee5670551d596fc208 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 f6eac904f6825d47adc6102c8d7b59b8ba5b778e be7e899350caa7b74d8271a34264c3b4aef25ab0 05422d276b56f2ebc2309a84a66fc5722c45ad74 181196 pass 9222f35dc6917f00d166be3bb69ac4e5ff8536f0 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 0f9283429dd487deeeb264ee5670551d596fc208 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 ab61335025b1274bd7042219203524045b23e0d3 be7e899350caa7b74d8271a34264c3b4aef25ab0 05422d276b56f2ebc2309a84a66fc5722c45ad74 181197 fail 9222f35dc6917f00d166be3bb69ac4e5ff8536f0 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 0f9283429dd487deeeb264ee5670551d596fc208 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 f6eac904f6825d47adc6102c8d7b59b8ba5b778e be7e899350caa7b74d8271a34264c3b4aef25ab0 05422d276b56f2ebc2309a84a66fc5722c45ad74 181198 pass 9222f35dc6917f00d166be3bb69ac4e5ff8536f0 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 0f9283429dd487deeeb264ee5670551d596fc208 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 ab61335025b1274bd7042219203524045b23e0d3 be7e899350caa7b74d8271a34264c3b4aef25ab0 05422d276b56f2ebc2309a84a66fc5722c45ad74 181199 fail 9222f35dc6917f00d166be3bb69ac4e5ff8536f0 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 0f9283429dd487deeeb264ee5670551d596fc208 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 f6eac904f6825d47adc6102c8d7b59b8ba5b778e be7e899350caa7b74d8271a34264c3b4aef25ab0 05422d276b56f2ebc2309a84a66fc5722c45ad74 Searching for interesting versions Result found: flight 180659 (pass), for basis pass Result found: flight 181151 (fail), for basis failure Repro found: flight 181160 (pass), for basis pass Repro found: flight 181161 (fail), for basis failure 0 revisions at 9222f35dc6917f00d166be3bb69ac4e5ff8536f0 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 0f9283429dd487deeeb264ee5670551d596fc208 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 ab61335025b1274bd7042219203524045b23e0d3 be7e899350caa7b74d8271a34264c3b4aef25ab0 05422d276b56f2ebc2309a84a66fc5722c45ad74 No revisions left to test, checking graph state. Result found: flight 181190 (pass), for last pass Result found: flight 181193 (fail), for first failure Repro found: flight 181196 (pass), for last pass Repro found: flight 181197 (fail), for first failure Repro found: flight 181198 (pass), for last pass Repro found: flight 181199 (fail), for first failure *** Found and reproduced problem changeset *** Bug is in tree: qemuu https://gitlab.com/qemu-project/qemu.git Bug introduced: f6eac904f6825d47adc6102c8d7b59b8ba5b778e Bug not present: ab61335025b1274bd7042219203524045b23e0d3 Last fail repro: http://logs.test-lab.xenproject.org/osstest/logs/181199/ commit f6eac904f6825d47adc6102c8d7b59b8ba5b778e Author: Stefan Hajnoczi Date: Tue May 16 15:02:29 2023 -0400 xen-block: implement BlockDevOps->drained_begin() Detach event channels during drained sections to stop I/O submission from the ring. xen-block is no longer reliant on aio_disable_external() after this patch. This will allow us to remove the aio_disable_external() API once all other code that relies on it is converted. Extend xen_device_set_event_channel_context() to allow ctx=NULL. The event channel still exists but the event loop does not monitor the file descriptor. Event channel processing can resume by calling xen_device_set_event_channel_context() with a non-NULL ctx. Factor out xen_device_set_event_channel_context() calls in hw/block/dataplane/xen-block.c into attach/detach helper functions. Incidentally, these don't require the AioContext lock because aio_set_fd_handler() is thread-safe. It's safer to register BlockDevOps after the dataplane instance has been created. The BlockDevOps .drained_begin/end() callbacks depend on the dataplane instance, so move the blk_set_dev_ops() call after xen_block_dataplane_create(). Signed-off-by: Stefan Hajnoczi Reviewed-by: Kevin Wolf Message-Id: <20230516190238.8401-12-stefanha@redhat.com> Signed-off-by: Kevin Wolf neato: graph is too large for cairo-renderer bitmaps. Scaling by 0.711043 to fit pnmtopng: 211 colors found Revision graph left in /home/logs/results/bisect/qemu-mainline/test-amd64-i386-libvirt.leak-check--check.{dot,ps,png,html,svg}. ---------------------------------------- 181199: tolerable FAIL flight 181199 qemu-mainline real-bisect [real] http://logs.test-lab.xenproject.org/osstest/logs/181199/ Failures :-/ but no regressions. Tests which did not succeed, including tests which could not be run: test-amd64-i386-libvirt 23 leak-check/check fail baseline untested test-amd64-i386-libvirt 15 migrate-support-check fail never pass jobs: build-i386-libvirt pass test-amd64-i386-libvirt fail ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary From xen-devel-bounces@lists.xenproject.org Tue Jun 06 01:13:37 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 06 Jun 2023 01:13:37 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543950.849348 (Exim 4.92) (envelope-from ) id 1q6LGA-0001RJ-48; Tue, 06 Jun 2023 01:13:18 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543950.849348; Tue, 06 Jun 2023 01:13:18 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6LGA-0001RB-1D; Tue, 06 Jun 2023 01:13:18 +0000 Received: by outflank-mailman (input) for mailman id 543950; Tue, 06 Jun 2023 01:13:17 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6LG9-0001Qx-DJ; Tue, 06 Jun 2023 01:13:17 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6LG9-0002ab-1v; Tue, 06 Jun 2023 01:13:17 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6LG8-0006XE-GB; Tue, 06 Jun 2023 01:13:16 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q6LG8-0001dl-Fg; Tue, 06 Jun 2023 01:13:16 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=9/vhrgx75gHhCCw/oiiTZ/w5ED6en4GkreLyhWInrAw=; b=yoLb8TXUy99JaJOO5RGbibGNXa UUTC5xMjerhunoVNROvsEJZCzV/OcxD+An+CCkPQIAq53OPwErQgEBuDDmH6feEOwEtTEGtI5Vh7E YgMk9LTTjgEAYQqBK9nWr/npS/SIUOrDGMFRNVe7dRQuLQqnzW1tO0TR6UrwCnMjwLx0=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [qemu-mainline test] 181185: regressions - trouble: blocked/broken/fail/pass X-Osstest-Failures: qemu-mainline:test-amd64-coresched-amd64-xl::broken:regression qemu-mainline:test-amd64-amd64-libvirt-pair:leak-check/check/src_host:fail:regression qemu-mainline:test-amd64-amd64-libvirt-pair:leak-check/check/dst_host:fail:regression qemu-mainline:test-amd64-i386-libvirt:leak-check/check:fail:regression qemu-mainline:test-amd64-amd64-libvirt-xsm:leak-check/check:fail:regression qemu-mainline:build-arm64-xsm:xen-build:fail:regression qemu-mainline:build-arm64:xen-build:fail:regression qemu-mainline:test-amd64-amd64-libvirt:leak-check/check:fail:regression qemu-mainline:test-amd64-i386-libvirt-xsm:leak-check/check:fail:regression qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:leak-check/check:fail:regression qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:leak-check/check:fail:regression qemu-mainline:test-amd64-amd64-libvirt-vhd:leak-check/check:fail:regression qemu-mainline:test-amd64-i386-libvirt-raw:leak-check/check:fail:regression qemu-mainline:test-amd64-amd64-xl-qcow2:leak-check/check:fail:regression qemu-mainline:test-armhf-armhf-libvirt:leak-check/check:fail:regression qemu-mainline:test-armhf-armhf-libvirt-qcow2:leak-check/check:fail:regression qemu-mainline:test-armhf-armhf-libvirt-raw:leak-check/check:fail:regression qemu-mainline:test-armhf-armhf-xl-vhd:leak-check/check:fail:regression qemu-mainline:test-amd64-i386-libvirt-pair:leak-check/check/src_host:fail:regression qemu-mainline:test-amd64-i386-libvirt-pair:leak-check/check/dst_host:fail:regression qemu-mainline:test-amd64-i386-xl-vhd:leak-check/check:fail:regression qemu-mainline:test-amd64-coresched-amd64-xl:host-install(5):broken:heisenbug qemu-mainline:test-amd64-amd64-xl-qcow2:guest-start/debian.repeat:fail:heisenbug qemu-mainline:test-amd64-i386-libvirt-pair:xen-install/dst_host:fail:heisenbug qemu-mainline:test-amd64-i386-xl-vhd:guest-start/debian.repeat:fail:heisenbug qemu-mainline:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:build-arm64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking qemu-mainline:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking qemu-mainline:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking qemu-mainline:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking qemu-mainline:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking qemu-mainline:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking qemu-mainline:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking qemu-mainline:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking qemu-mainline:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking qemu-mainline:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: qemuu=848a6caa88b9f082c89c9b41afa975761262981d X-Osstest-Versions-That: qemuu=6972ef1440a9d685482d78672620a7482f2bd09a From: osstest service owner Date: Tue, 06 Jun 2023 01:13:16 +0000 flight 181185 qemu-mainline real [real] http://logs.test-lab.xenproject.org/osstest/logs/181185/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: test-amd64-coresched-amd64-xl broken test-amd64-amd64-libvirt-pair 30 leak-check/check/src_host fail REGR. vs. 180691 test-amd64-amd64-libvirt-pair 31 leak-check/check/dst_host fail REGR. vs. 180691 test-amd64-i386-libvirt 23 leak-check/check fail REGR. vs. 180691 test-amd64-amd64-libvirt-xsm 23 leak-check/check fail REGR. vs. 180691 build-arm64-xsm 6 xen-build fail REGR. vs. 180691 build-arm64 6 xen-build fail REGR. vs. 180691 test-amd64-amd64-libvirt 23 leak-check/check fail REGR. vs. 180691 test-amd64-i386-libvirt-xsm 23 leak-check/check fail REGR. vs. 180691 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 21 leak-check/check fail REGR. vs. 180691 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 21 leak-check/check fail REGR. vs. 180691 test-amd64-amd64-libvirt-vhd 22 leak-check/check fail REGR. vs. 180691 test-amd64-i386-libvirt-raw 22 leak-check/check fail REGR. vs. 180691 test-amd64-amd64-xl-qcow2 24 leak-check/check fail REGR. vs. 180691 test-armhf-armhf-libvirt 21 leak-check/check fail REGR. vs. 180691 test-armhf-armhf-libvirt-qcow2 20 leak-check/check fail REGR. vs. 180691 test-armhf-armhf-libvirt-raw 20 leak-check/check fail REGR. vs. 180691 test-armhf-armhf-xl-vhd 20 leak-check/check fail REGR. vs. 180691 test-amd64-i386-libvirt-pair 30 leak-check/check/src_host fail in 181168 REGR. vs. 180691 test-amd64-i386-libvirt-pair 31 leak-check/check/dst_host fail in 181168 REGR. vs. 180691 test-amd64-i386-xl-vhd 24 leak-check/check fail in 181168 REGR. vs. 180691 Tests which are failing intermittently (not blocking): test-amd64-coresched-amd64-xl 5 host-install(5) broken pass in 181177 test-amd64-amd64-xl-qcow2 21 guest-start/debian.repeat fail in 181168 pass in 181185 test-amd64-i386-libvirt-pair 11 xen-install/dst_host fail pass in 181168 test-amd64-i386-xl-vhd 21 guest-start/debian.repeat fail pass in 181177 Tests which did not succeed, but are not blocking: test-arm64-arm64-libvirt-raw 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-xsm 1 build-check(1) blocked n/a test-arm64-arm64-xl 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit1 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit2 1 build-check(1) blocked n/a test-arm64-arm64-xl-thunderx 1 build-check(1) blocked n/a test-arm64-arm64-xl-vhd 1 build-check(1) blocked n/a test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a build-arm64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 180691 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 180691 test-armhf-armhf-libvirt 16 saverestore-support-check fail like 180691 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail like 180691 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop fail like 180691 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail like 180691 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 180691 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop fail like 180691 test-amd64-i386-xl-pvshim 14 guest-start fail never pass test-amd64-i386-libvirt 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-i386-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-credit2 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit2 16 saverestore-support-check fail never pass test-amd64-i386-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-libvirt 15 migrate-support-check fail never pass test-armhf-armhf-xl 15 migrate-support-check fail never pass test-armhf-armhf-xl 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 15 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 16 saverestore-support-check fail never pass test-armhf-armhf-xl-multivcpu 15 migrate-support-check fail never pass test-armhf-armhf-xl-multivcpu 16 saverestore-support-check fail never pass test-armhf-armhf-xl-arndale 15 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 15 saverestore-support-check fail never pass version targeted for testing: qemuu 848a6caa88b9f082c89c9b41afa975761262981d baseline version: qemuu 6972ef1440a9d685482d78672620a7482f2bd09a Last test of basis 180691 2023-05-17 10:45:22 Z 19 days Failing since 180699 2023-05-18 07:21:24 Z 18 days 63 attempts Testing same since 181131 2023-06-03 03:50:56 Z 2 days 7 attempts ------------------------------------------------------------ People who touched revisions under test: Afonso Bordado Akihiko Odaki Akihiro Suda Alex Bennée Alex Williamson Alexander Bulekov Alexander Graf Alistair Francis Ani Sinha Ani Sinha Anton Johansson BALATON Zoltan Bernhard Beschow Bin Meng Brian Cain Brice Goglin Camilla Conte Cindy Lu Clément Chigot Cornelia Huck Cédric Le Goater Cédric Le Goater Daniel Henrique Barboza Daniel P. Berrangé Daniil Kovalev David Hildenbrand Emanuele Giuseppe Esposito Enze Li Eric Auger Eric Blake Eric DeVolder Erico Nunes Eugenio Pérez Fabiano Rosas Fan Ni Fiona Ebner Francisco Iglesias Gavin Shan Gregory Price Gregory Price Hao Zeng Hawkins Jiawei Igor Mammedov Ira Weiny Jason Wang Jean-Philippe Brucker John Snow Jonathan Cameron Juan Quintela Kevin Wolf Laurent Vivier Lei Yang Leonardo Bras Maksim Davydov Marc-André Lureau Marcin Juszkiewicz Marco Liebel Mark Cave-Ayland Markus Armbruster Matheus Tavares Bernardino Mauro Matteo Cascella Michael S. Tsirkin Michael Tokarev Mostafa Saleh Nicholas Piggin Nicolas Saenz Julienne Palmer Dabbelt Paolo Bonzini Peter Maydell Peter Xu Philippe Mathieu-Daudé Raghu H Rene Engel Richard Henderson Richard Purdie Ricky Zhou Ryan Wendland Sebastian Ott Sergio Lopez Sid Manning Song Gao Stefan Hajnoczi Stefano Garzarella Steve Sistare Taylor Simpson Thomas Huth Thomas Weißschuh timothee.cocault@gmail.com Timothée Cocault Tommy Wu Viktor Prutyanov Vitaly Cheptsov Vivek Kasireddy Vladimir Sementsov-Ogievskiy Volker Rümelin Xinyu Li Zeng Hao Zhenyu Zhang Zhenzhong Duan jobs: build-amd64-xsm pass build-arm64-xsm fail build-i386-xsm pass build-amd64 pass build-arm64 fail build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt blocked build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl broken test-arm64-arm64-xl blocked test-armhf-armhf-xl pass test-amd64-i386-xl pass test-amd64-coresched-i386-xl pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm fail test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm fail test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-i386-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm fail test-arm64-arm64-libvirt-xsm blocked test-amd64-i386-libvirt-xsm fail test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm blocked test-amd64-i386-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-i386-qemuu-rhel6hvm-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-freebsd10-amd64 pass test-amd64-amd64-qemuu-freebsd11-amd64 pass test-amd64-amd64-qemuu-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-i386-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-amd64-i386-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 blocked test-armhf-armhf-xl-credit1 pass test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 blocked test-armhf-armhf-xl-credit2 pass test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-i386-freebsd10-i386 pass test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-i386-qemuu-rhel6hvm-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt fail test-armhf-armhf-libvirt fail test-amd64-i386-libvirt fail test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu pass test-amd64-amd64-pair pass test-amd64-i386-pair pass test-amd64-amd64-libvirt-pair fail test-amd64-i386-libvirt-pair fail test-amd64-amd64-xl-pvshim pass test-amd64-i386-xl-pvshim fail test-amd64-amd64-pygrub pass test-armhf-armhf-libvirt-qcow2 fail test-amd64-amd64-xl-qcow2 fail test-arm64-arm64-libvirt-raw blocked test-armhf-armhf-libvirt-raw fail test-amd64-i386-libvirt-raw fail test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds pass test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-amd64-i386-xl-shadow pass test-arm64-arm64-xl-thunderx blocked test-amd64-amd64-libvirt-vhd fail test-arm64-arm64-xl-vhd blocked test-armhf-armhf-xl-vhd fail test-amd64-i386-xl-vhd fail ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary broken-job test-amd64-coresched-amd64-xl broken broken-step test-amd64-coresched-amd64-xl host-install(5) Not pushing. (No revision log; it would be 12540 lines long.) From xen-devel-bounces@lists.xenproject.org Tue Jun 06 04:06:42 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 06 Jun 2023 04:06:42 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543962.849371 (Exim 4.92) (envelope-from ) id 1q6Nxe-00021q-MK; Tue, 06 Jun 2023 04:06:22 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543962.849371; Tue, 06 Jun 2023 04:06:22 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6Nxe-00021i-Gu; Tue, 06 Jun 2023 04:06:22 +0000 Received: by outflank-mailman (input) for mailman id 543962; Tue, 06 Jun 2023 04:06:21 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6Nxd-00021Y-0b; Tue, 06 Jun 2023 04:06:21 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6Nxc-0006wi-Pb; Tue, 06 Jun 2023 04:06:20 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6Nxc-00057l-Bd; Tue, 06 Jun 2023 04:06:20 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q6Nxc-0001qz-BD; Tue, 06 Jun 2023 04:06:20 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=XWl5KcMSh78AjDXC797Ued5aYe96VJoYCQe5UWsTdTY=; b=1hdqA4SDcxFD33JAxlNU44X8bx VlpZ9dqCdQ0t480p1UrLBxPvLXY9HG9vcflYXfv7hvDbhnYYQWbC4zvDT7TIypsVd9H0ew4/upgkp DGx6OcjV/AKoeeMroyBXtuBd8OSs8i/DyWNdXhLX3MHOwY5/VTSBT4c7LZF2uWu5mIdA=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [linux-linus test] 181186: regressions - trouble: broken/fail/pass X-Osstest-Failures: linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm::broken:regression linux-linus:test-armhf-armhf-xl-credit1:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:host-install(5):broken:heisenbug linux-linus:test-amd64-amd64-xl-pvshim:guest-localmigrate/x10:fail:heisenbug linux-linus:test-arm64-arm64-libvirt-raw:guest-start/debian.repeat:fail:heisenbug linux-linus:test-armhf-armhf-examine:reboot:fail:nonblocking linux-linus:test-armhf-armhf-xl-multivcpu:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-arndale:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking linux-linus:test-armhf-armhf-xl-credit2:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking linux-linus:test-armhf-armhf-libvirt:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-raw:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-qcow2:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-vhd:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-rtds:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-qcow2:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-raw:migrate-support-check:fail:nonblocking X-Osstest-Versions-This: linux=9561de3a55bed6bdd44a12820ba81ec416e705a7 X-Osstest-Versions-That: linux=6c538e1adbfc696ac4747fb10d63e704344f763d From: osstest service owner Date: Tue, 06 Jun 2023 04:06:20 +0000 flight 181186 linux-linus real [real] http://logs.test-lab.xenproject.org/osstest/logs/181186/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm broken test-armhf-armhf-xl-credit1 8 xen-boot fail REGR. vs. 180278 Tests which are failing intermittently (not blocking): test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 5 host-install(5) broken pass in 181175 test-amd64-amd64-xl-pvshim 20 guest-localmigrate/x10 fail in 181175 pass in 181186 test-arm64-arm64-libvirt-raw 17 guest-start/debian.repeat fail in 181175 pass in 181186 Tests which did not succeed, but are not blocking: test-armhf-armhf-examine 8 reboot fail like 180278 test-armhf-armhf-xl-multivcpu 8 xen-boot fail like 180278 test-armhf-armhf-xl-arndale 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 180278 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 180278 test-armhf-armhf-xl-credit2 8 xen-boot fail like 180278 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 180278 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 180278 test-armhf-armhf-libvirt 8 xen-boot fail like 180278 test-armhf-armhf-libvirt-raw 8 xen-boot fail like 180278 test-armhf-armhf-libvirt-qcow2 8 xen-boot fail like 180278 test-armhf-armhf-xl 8 xen-boot fail like 180278 test-armhf-armhf-xl-vhd 8 xen-boot fail like 180278 test-armhf-armhf-xl-rtds 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 180278 test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qcow2 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass test-amd64-amd64-libvirt-raw 14 migrate-support-check fail never pass version targeted for testing: linux 9561de3a55bed6bdd44a12820ba81ec416e705a7 baseline version: linux 6c538e1adbfc696ac4747fb10d63e704344f763d Last test of basis 180278 2023-04-16 19:41:46 Z 50 days Failing since 180281 2023-04-17 06:24:36 Z 49 days 94 attempts Testing same since 181175 2023-06-04 23:20:27 Z 1 days 2 attempts ------------------------------------------------------------ 2627 people touched revisions under test, not listing them all jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl fail test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm broken test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-freebsd11-amd64 pass test-amd64-amd64-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale fail test-amd64-amd64-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 fail test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 fail test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine fail test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt fail test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu fail test-amd64-amd64-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-amd64-pygrub pass test-amd64-amd64-libvirt-qcow2 pass test-armhf-armhf-libvirt-qcow2 fail test-amd64-amd64-libvirt-raw pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw fail test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds fail test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-amd64-xl-vhd pass test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd fail ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary broken-job test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm broken broken-step test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm host-install(5) Not pushing. (No revision log; it would be 332299 lines long.) From xen-devel-bounces@lists.xenproject.org Tue Jun 06 07:04:36 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 06 Jun 2023 07:04:36 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543977.849390 (Exim 4.92) (envelope-from ) id 1q6Qjw-0003G1-H4; Tue, 06 Jun 2023 07:04:24 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543977.849390; Tue, 06 Jun 2023 07:04:24 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6Qjw-0003Fu-DS; Tue, 06 Jun 2023 07:04:24 +0000 Received: by outflank-mailman (input) for mailman id 543977; Tue, 06 Jun 2023 07:04:23 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6Qjv-0003Fo-0M for xen-devel@lists.xenproject.org; Tue, 06 Jun 2023 07:04:23 +0000 Received: from NAM11-DM6-obe.outbound.protection.outlook.com (mail-dm6nam11on2062c.outbound.protection.outlook.com [2a01:111:f400:7eaa::62c]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 59ee89f9-0438-11ee-8611-37d641c3527e; Tue, 06 Jun 2023 09:04:18 +0200 (CEST) Received: from CY5PR15CA0042.namprd15.prod.outlook.com (2603:10b6:930:1b::26) by MN2PR12MB4421.namprd12.prod.outlook.com (2603:10b6:208:26c::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Tue, 6 Jun 2023 07:04:14 +0000 Received: from CY4PEPF0000E9D5.namprd05.prod.outlook.com (2603:10b6:930:1b:cafe::37) by CY5PR15CA0042.outlook.office365.com (2603:10b6:930:1b::26) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33 via Frontend Transport; Tue, 6 Jun 2023 07:04:13 +0000 Received: from SATLEXMB03.amd.com (165.204.84.17) by CY4PEPF0000E9D5.mail.protection.outlook.com (10.167.241.76) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6477.13 via Frontend Transport; Tue, 6 Jun 2023 07:04:12 +0000 Received: from SATLEXMB04.amd.com (10.181.40.145) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Tue, 6 Jun 2023 02:04:12 -0500 Received: from [10.71.193.39] (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server id 15.1.2375.34 via Frontend Transport; Tue, 6 Jun 2023 02:04:11 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 59ee89f9-0438-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=TgAu4CrTcoxXqfAXPzSqxh5Ty+5I6I7evoBIKNX2A+1/CrV/3fi4c7ZYLv5lsV9UwzoXOVoADj/h89WRQ/AQWc+jVVzcXHelVrwdLNaPzC2sDU59TR1CSRlrxgXMG+1BFrETXB3+aAAsKZpfifV3vV55ziOqyAs+LYeFQJHbTHx2WEbaSh4p/gUi3n37D8b+tSb/5ElEElIz3F5DHp/LlcChZNxV2P4fctDeATNoBmVG2fKYGmbBy9yxbPC3N3MymgMK9T0LzvAjOA7lSuucnaA3V4ss2zAiqrtH8uC5GraxJDo82ZUxVUjQqNSscz9K4vFooSFtvC8cYmFhfMip0A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=4qoV61CpfrrxkgOcH7g/z7ku5umPu3fbbzKttZeJESI=; b=Z6kIpdDy4smiG0c237O8u+24iP2Ni1IlcP5PvEfzqqTyc+9gwH3JxzmhJdZyO13wsXXLk7TTLrv+jO/bxrTBtHP6hGy/04aOk4/TOTkwUNfmkdx57Qtlzy4RH4dOC8zlOMPR08sQ/+E+rZtXGJwMUhEbm95O0SEvB8hC1q8LrLwtzaN6j/0r8PSelMYBf1UbQOJBhekAE+FO3Gr2E7ovFFOQOZlw9JHLUSk5+NGIuIo+qomFM8RoUGy1ljeRHUTcAslsfN1vwYvBlizUGPHzbA1AiW6Y12elLO1ogT+QfmkjaCi6nCLwOMtji4vRWiqMlCV5S5ty18WZ2SvVdXNriA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=xen.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=4qoV61CpfrrxkgOcH7g/z7ku5umPu3fbbzKttZeJESI=; b=BnZ6N9+BpJfSu2VTiEicrSS41YJACKDU2qx0QTqUgEp5tf86fvH547yv8p59mjp9TOzFjqfMz5GhR5RGOOmiaTcWrYR3lhZb7Hi3uLTYATI2jJ5+KH+xxLScNAfJutfR9aWHbd77149FCiTaehH6yLyBKdCp5csmEoSS+MJAk2k= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C Message-ID: Date: Tue, 6 Jun 2023 09:04:10 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH] xen/arm: debug-pl011: Use 32-bit accessors for broader compatibility To: Julien Grall , Julien Grall CC: Bertrand Marquis , Stefano Stabellini , Volodymyr Babchuk , Xen-devel References: <20230601085001.1782-1-michal.orzel@amd.com> <7C760D1D-DAAE-48AC-8B2B-E6140452BE4A@arm.com> <73a143ee-8301-e0c0-a3fc-83ec10441c4c@amd.com> <703ccd1b-1908-4f5b-3b48-e02d317a2090@amd.com> Content-Language: en-US From: Michal Orzel In-Reply-To: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CY4PEPF0000E9D5:EE_|MN2PR12MB4421:EE_ X-MS-Office365-Filtering-Correlation-Id: 1f5f8c78-dbb0-4cc6-ccf1-08db665c3bdb X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: BYb2maHeIELKJIXET+4CfWsGr6JNVQGqSWeWPl+QvMvIVx6kNCRZ3kOtzBX7haMULOKBFdTFObChfE1I6MhATEZusCc4TzmPkMRVBhSM4fIL2W0L+lgjbFfG+ATrE5ZPlD2lqF3BP2SXHjGiW2kLdsjin2fbktjxPf2RNm5GkAx2rN00uKaF4X7XmBXrZtR24V1/m35MXiTAkoKfdSMKL+xlXVQJ97ncOJvxN6NMlTH1q0y3v4l71UTuqg7SqMNdvIVejr9CTJY68e6G5CiNLpW8cNrO9qtcJ5wMIaRA1R7/Lv41Y6YbjnWyjnv9qb0CZu2RhQgWYWNkvfZCGhn8U472+9XszSiqEfntbLt6md2pytTdqhPP2FUc2nM9yTF5BESOjpypq0AUurwYKIFu+wN5gSnsTarFbXkLI1lDB4pYa4N7/15WFX9RQZIjBxr4TKNdyNnvijgIs4MXtSifMYWZJ2Yxdjcm0Vd7PmsEKX3+Qej4RoX9KzMNKu/F9IRq8IqbFLjc6GyVAHL9xsX9iP0UCnGUPzuar6ah696xlX/9kVIBF+vRWTmF3dOjykuL7tVvvLrDLY+nsvAPfNm79RrBxeXr3Em/8JDWB5IfD+fQmp4hiDLQf7Sq+wurwofOm64yKICjSo/BRZdO3P07OTY2fdIfCk8sil9AJrlsXRf6+/K+zw7vx6lricipCC07ztdjecHZuv7DrswhP9/APuF8oHvmoqyU8qpszcWpORCKin6AK5gybrJLfu3LqbjvtXVSPheDj78jq14BIHU4zSxDGcMsi2PZKrpzAzv3NYM= X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(396003)(136003)(346002)(376002)(451199021)(40470700004)(36840700001)(46966006)(83380400001)(40460700003)(47076005)(426003)(336012)(2906002)(2616005)(36756003)(31696002)(86362001)(82310400005)(356005)(81166007)(82740400003)(36860700001)(40480700001)(316002)(41300700001)(5660300002)(8676002)(8936002)(478600001)(110136005)(16576012)(54906003)(70586007)(70206006)(4326008)(31686004)(53546011)(26005)(186003)(44832011)(36900700001)(43740500002);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Jun 2023 07:04:12.9404 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 1f5f8c78-dbb0-4cc6-ccf1-08db665c3bdb X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com] X-MS-Exchange-CrossTenant-AuthSource: CY4PEPF0000E9D5.namprd05.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN2PR12MB4421 Hi Julien, On 05/06/2023 20:34, Julien Grall wrote: > > > Hi, > > On 01/06/2023 13:38, Michal Orzel wrote: >> >> On 01/06/2023 14:17, Julien Grall wrote: >>> >>> >>> >>> >>> >>> On Thu, 1 Jun 2023 at 13:48, Michal Orzel > wrote: >>> >>> Hi Julien, >>> >>> On 01/06/2023 13:12, Julien Grall wrote: >>> > >>> > >>> > >>> > Hi, >>> > >>> > Sorry for the formatting. >>> > >>> > On Thu, 1 Jun 2023 at 12:31, Michal Orzel >> wrote: >>> > >>> >  Hi Bertrand, >>> > >>> >  On 01/06/2023 12:19, Bertrand Marquis wrote: >>> >  > >>> >  > >>> >  > Hi Michal, >>> >  > >>> >  >> On 1 Jun 2023, at 10:50, Michal Orzel >> wrote: >>> >  >> >>> >  >> There are implementations of the PL011 that can only handle 32-bit >>> >  >> accesses (i.e. no 16-bit or 8-bit), usually advertised by 'reg-io-width' >>> >  >> dt property set to 4. On such UARTs, the current early printk code for >>> >  >> arm64 does not work. To fix this issue, make all the accesses to be 32-bit >>> >  >> by using ldr, str without a size field. This makes it possible to use >>> >  >> early printk on such platforms, while all the other implementations should >>> >  >> generally cope with 32-bit accesses. In case they do not, they would >>> >  >> already fail as we explicitly use writel/readl in the runtime driver to >>> >  >> maintain broader compatibility and to be SBSAv2 compliant. Therefore, this >>> >  >> change makes the runtime/early handling consistent (also it matches the >>> >  >> arm32 debug-pl011 code). >>> >  >> >>> >  >> Signed-off-by: Michal Orzel >> >>> >  >> --- >>> >  >> xen/arch/arm/arm64/debug-pl011.inc | 8 ++++---- >>> >  >> 1 file changed, 4 insertions(+), 4 deletions(-) >>> >  >> >>> >  >> diff --git a/xen/arch/arm/arm64/debug-pl011.inc b/xen/arch/arm/arm64/debug-pl011.inc >>> >  >> index 6d60e78c8ba3..80eb8fdc1ec7 100644 >>> >  >> --- a/xen/arch/arm/arm64/debug-pl011.inc >>> >  >> +++ b/xen/arch/arm/arm64/debug-pl011.inc >>> >  >> @@ -25,9 +25,9 @@ >>> >  >>  */ >>> >  >> .macro early_uart_init xb, c >>> >  >>  mov x\c, #(7372800 / CONFIG_EARLY_UART_PL011_BAUD_RATE % 16) >>> >  >> - strh w\c, [\xb, #FBRD]  /* -> UARTFBRD (Baud divisor fraction) */ >>> >  >> + str w\c, [\xb, #FBRD]  /* -> UARTFBRD (Baud divisor fraction) */ >>> >  >>  mov x\c, #(7372800 / CONFIG_EARLY_UART_PL011_BAUD_RATE / 16) >>> >  >> - strh w\c, [\xb, #IBRD]  /* -> UARTIBRD (Baud divisor integer) */ >>> >  >> + str w\c, [\xb, #IBRD]  /* -> UARTIBRD (Baud divisor integer) */ >>> >  >>  mov x\c, #WLEN_8 /* 8n1 */ >>> >  >>  str w\c, [\xb, #LCR_H]  /* -> UARTLCR_H (Line control) */ >>> >  >>  ldr x\c, =(RXE | TXE | UARTEN) >>> >  >> @@ -41,7 +41,7 @@ >>> >  >>  */ >>> >  >> .macro early_uart_ready xb, c >>> >  >> 1: >>> >  >> - ldrh w\c, [\xb, #FR]  /* <- UARTFR (Flag register) */ >>> >  >> + ldr w\c, [\xb, #FR]  /* <- UARTFR (Flag register) */ >>> >  >>  tst w\c, #BUSY /* Check BUSY bit */ >>> >  >>  b.ne >  1b /* Wait for the UART to be ready */ >>> >  >> .endm >>> >  >> @@ -52,7 +52,7 @@ >>> >  >>  * wt: register which contains the character to transmit >>> >  >>  */ >>> >  >> .macro early_uart_transmit xb, wt >>> >  >> - strb \wt, [\xb, #DR]  /* -> UARTDR (Data Register) */ >>> >  >> + str \wt, [\xb, #DR]  /* -> UARTDR (Data Register) */ >>> >  > >>> >  > Is it really ok to drop the 8bit access here ? >>> >  It is not only ok, it is necessary. Otherwise it won't work on the above mentioned UARTs (they can only perform 32-bit access). >>> > >>> > >>> > IIRC some compilers will complain because you use wN with “str”. >>> Hmm, I would expect it to be totally ok as the size is determined by the reg name. Any reference? >>> >>> >>> I don’t have the spec with me. I will have a look on Monday and reply back here. > > I had another look at this. You are right, "str" can work with wN or xN. > I got confused because in the past the issue we had was with the asm > volatile with 'msr' (see 57e761b60dc9 "xen/arm64: Remove > READ/WRITE_SYSREG32 helper macros"). > > [...] > >>> I am aware of this issue but I don’t understand how this is related to this discussion. >>> >>> My only request is you don’t break the existing behavior of the early PL011 driver on arm64. >> I understand your concern about legacy devices and that you do not want to break the existing code on arm64. >> But please correct me if I'm wrong. These two lines: >> str w\c, [\xb, #LCR_H] >> str w\c, [\xb, #CR] > > Hmmm... Looking at the spec, LCR_H is meant to be 8-bit and CR 16-bit. > So I think we need to modify both of them. I am happy to send a patch > separately for that either before or after your patch. There are other cases like FBRD being 6bit so we could use strb instead of strh. In any case, I will handle all of that in a consistent manner by sending a series that should not take much time. I can think of the following patches: 1) Use correct accessors for early pl011 on arm32 and arm64 - this would use the accessors depending on the given register size (ldrh, strh, strb) - this would switch arm32 from 32-bit only to the same behavior as arm64 2) Support for 32-bit only PL011 in early pl011 on arm32 and arm64: - this would result in overwriting the changes done in patch 1 (but I'd prefer not to do all in one patch for better history/backporting) as I'd have to introduce some macros e.g. PL011_STRH that would be defined as strh in normal case and str in mmio32 case, etc. I could also just duplicate all the early functions and use ifdefery if that's what would be preferred. 3) Use correct accessors for runtime pl011: I would prefer to do what Linux does meaning using the largest-common accessor in normal-case (i.e. readw/writew) so that we can have a generic helpers (i.e. use readl/writel in mmio32 case or readw/writew in normal case). Otherwise we would have to use the accessors depending on the given register size (like in early printk) which destroys the idea of generic helpers. Linux for earlycon also uses per-register size accessor and in runtime - largest-common. Let me know your thoughts. ~Michal From xen-devel-bounces@lists.xenproject.org Tue Jun 06 08:26:30 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 06 Jun 2023 08:26:30 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543990.849405 (Exim 4.92) (envelope-from ) id 1q6S16-0003h4-T1; Tue, 06 Jun 2023 08:26:12 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543990.849405; Tue, 06 Jun 2023 08:26:12 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6S16-0003gx-QP; Tue, 06 Jun 2023 08:26:12 +0000 Received: by outflank-mailman (input) for mailman id 543990; Tue, 06 Jun 2023 08:26:11 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6S15-0003gr-6v for xen-devel@lists.xenproject.org; Tue, 06 Jun 2023 08:26:11 +0000 Received: from esa3.hc3370-68.iphmx.com (esa3.hc3370-68.iphmx.com [216.71.145.155]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id c4b49b6d-0443-11ee-8611-37d641c3527e; Tue, 06 Jun 2023 10:26:02 +0200 (CEST) Received: from mail-dm6nam11lp2173.outbound.protection.outlook.com (HELO NAM11-DM6-obe.outbound.protection.outlook.com) ([104.47.57.173]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 06 Jun 2023 04:25:59 -0400 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) by DM6PR03MB5308.namprd03.prod.outlook.com (2603:10b6:5:242::23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Tue, 6 Jun 2023 08:25:55 +0000 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::192:6bdf:b105:64dd]) by SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::192:6bdf:b105:64dd%3]) with mapi id 15.20.6455.028; Tue, 6 Jun 2023 08:25:54 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: c4b49b6d-0443-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686039962; h=date:from:to:cc:subject:message-id:references: in-reply-to:mime-version; bh=hZt0gg8/cV44OmenzOPmg2KCCw0kyKfzrhumOfNc06I=; b=eSlAxT0CBtPNYgsa1EKkr/Z8JXuzuyJRbkl15ehnEjq54nhNbzq0MC+R gsfiJodVRFdRHz/OfiWF3hPpqsAPDYIkaQJFgjNwGsHIDIKRes9wA/hxG a3CMehbjvREmtUQ02OOTTfeFPQfBBSzplLmzrN+0B5f2hCoKl5Zi0BrF2 Q=; X-IronPort-RemoteIP: 104.47.57.173 X-IronPort-MID: 111750832 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:gish2KBHVX6dERVW/2vjw5YqxClBgxIJ4kV8jS/XYbTApDh30GAAn WpMWW6GOf+IMWf3fdhzaIW+pEtXu57XmtVkQQY4rX1jcSlH+JHPbTi7wuUcHAvJd5GeExg3h yk6QoOdRCzhZiaE/n9BCpC48T8nk/nOHuGmYAL9EngZbRd+Tys8gg5Ulec8g4p56fC0GArIs t7pyyHlEAbNNwVcbCRMs8pvlDs15K6p4G1A4ARnDRx2lAS2e0c9Xcp3yZ6ZdxMUcqEMdsamS uDKyq2O/2+x13/B3fv8z94X2mVTKlLjFVDmZkh+AsBOsTAbzsAG6Y4pNeJ0VKtio27hc+ada jl6ncfYpQ8BZsUgkQmGOvVSO3kW0aZuoNcrLZUj2CA6IoKvn3bEmp1T4E8K0YIw9+ZtL1F15 94iEjkddDXAoL2N2e78Rbw57igjBJGD0II3nFhFlGicIdN4BJfJTuPN+MNS2yo2ioZWB/HCa sEFaD1pKhPdfxlIPVRRA5U79AuqriCnL3sE9xTI+uxuvDO7IA9ZidABNPLPfdOHX4NNl1uwr WPa5WXpRBodMbRzzBLcqyvz27efxnmTtIQ6SZ68xvlsx3OqwkNQOTYcFkK3pvinsxvrMz5YA wlOksY0loA++UmqZtj7QRyjoXSAswIcWtxfCOkz4keGza+8yw+JDG8JZj1MctorsIk6RlQC3 1CKt8nkCTxmrPueTnf13qySrC+gNDI9LmIYYyIACwwf7LHLrIR2gh/RQ9JLCqO5jtTpXzr3x liiqSEkgrwJgM0j1qOl/EvGiTahupjISAEu4gzdGGmi62tRYI+jepzt41zc5vVoMomUVB+Cs WIClszY6/oBZbmJlSqQUKAOEauv6vKtLjLRmxhsEoMn+jDr/GSsFahA7Tc7KEp3P8IsfT7yf FSVqQ5X/IVUPnahcelweY3ZNigx5a3pFNCgWvWKaNNLO8F1bFXeo3ooYlOM1WfwlkRqibs4J ZqQbcerCzAdFLhjyz21Aewa1NfH2xwD+I8afrijpzzP7FZUTCT9pWstWLdWUt0E0Q== IronPort-HdrOrdr: A9a23:wzmv/61mzcaVTEqa1bBtyAqjBEIkLtp133Aq2lEZdPU0SKGlfg 6V/cjztCWE7wr5PUtLpTnuAsa9qB/nm6KdpLNhXotKPzOW3FdATrsD0WKK+VSJdxEWtNQtt5 uIG5IUNDSaNykesS77ijPIb+rJwrO8gd+VbTG19QYSceloAZsQnjuQEmygYytLrJEtP+tCKH KbjPA33gaISDAsQemQIGIKZOTHr82jruOaXfZXbyRXkDVnlFmTmcXHLyQ= X-Talos-CUID: =?us-ascii?q?9a23=3AXoS0B2uAlCd2/5G0TONMSkzG6Isocmfz/EzCAXW?= =?us-ascii?q?CAHZzbf6yFmSJpORrxp8=3D?= X-Talos-MUID: 9a23:OKrIWQQK3nNJ5AQ5RXSxpzVSM8EvzZ2qJwM8up9FosWDNDJJbmI= X-IronPort-AV: E=Sophos;i="6.00,219,1681185600"; d="scan'208";a="111750832" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Nyq+7Ts5blf/N41Kkw1UzFjgbqrAG34RWLkg2poNPyK2fs1SxmjHPgb80dalIqPSTy6QZpou4Uwq2XaA6wW0r+NnUTzFjkLT+d5kGc1rljDfQr4x0AxNjd+R68b+wLImbkEMRvmyjG8fXFBekgCClrnlXqKS8e2ZlgZuBeF9Jm1h5gKd+FSfaMFLEvGCh8H/qIcnovjoel6gluT4XnjclHgxL1xsPOtNs+PrQgv6DXkoERun77P1+e4ynX3/A9rZCqsmlBjejshukcfYmTw5m0Pron0HFRIJoGZcnZRSy33NYskwf/zdCbCCm0d39Vj/FyAxMCAMqzWc3u0O5MuJJg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=toP8wNQPCldfjUyTheWxazEbudczTS7Mrofgetjp0GE=; b=aXYzci1EvVnF0MYjGZqbAlhRxRvcinSLcIQDoUr1QBLqxapY5UwKFzXD8b3SkDz3uENoSoZ3mhbD/0uCC2aUUO2VS4hxjMJMwZkj3ZUZSw43OxJZg+m/MY0EMk42/FEoR7g9XtjUvFgYKEbQ34Ey60omKuqM3FTYo6z/V6+7rrWKVjxAA5JvhIgIpsrlErA7jIzNanUENwpGBrAvFkmoPCX3dPyvitLZw/fkX5r20xcup6n9s1Lt0Q8UcEZJ/63K/TO7+RmR4+QPDoCGeKomX6gLjWJpU/mcD0lC/k2BbuKl0O+PWA7SLvk7NM4lP7zouC8mLnvwjb7sCD95D1EQnw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=toP8wNQPCldfjUyTheWxazEbudczTS7Mrofgetjp0GE=; b=BRWEFPKItJ0kH2F+rK2mapoaZ8FEYAsy9AULbcyltH06QUNnIZisX0JlmNv/jBbwUEYdHlVWgINWvNU0xTpEpREA6TaEn4XbFfwDrToidNWTyAQlkcX5f+ngjrPXvaC0ExSefvNAo8QHTpkuCZFhYbRQmsafyicQT/FzvkE5Dg0= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Date: Tue, 6 Jun 2023 10:25:47 +0200 From: Roger Pau =?utf-8?B?TW9ubsOp?= To: Demi Marie Obenour Cc: Jens Axboe , Alasdair Kergon , Mike Snitzer , dm-devel@redhat.com, Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= , linux-block@vger.kernel.org, linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org Subject: Re: [PATCH v2 13/16] xen-blkback: Implement diskseq checks Message-ID: References: <20230530203116.2008-1-demi@invisiblethingslab.com> <20230530203116.2008-14-demi@invisiblethingslab.com> Content-Type: text/plain; charset=utf-8 Content-Disposition: inline In-Reply-To: <20230530203116.2008-14-demi@invisiblethingslab.com> X-ClientProxiedBy: LO4P265CA0219.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:33a::17) To SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|DM6PR03MB5308:EE_ X-MS-Office365-Filtering-Correlation-Id: a3d30dcc-8727-4d37-4d2f-08db6667a542 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: yQfiE2eRWyLzULR/YF5wrRtVLtDSjzM0xQMZB8ZRbogcztppoGGlX/NGq8ZXHY6ANsPo9LNHTzfTP3DLdjQFglTNZc6qcNpa+LHpFo5u0tt1KK7ArEbpiUqs/0nlBfO8GCWEP+l24/twCCK+3Vfrrw8alRmUDa2m2GABQHMN3q8umLgbS9itdLjQo2k2dw8W/Y22PLERhYGtTDQejR3dL8DdOD4cKOGbx4rEnyenxmTdlyrOLvrlOfdtyJkFZqOBdETbAuSgDi3BAwDrYklIlhJIRbzgVAoTCuhV1IoxkJeYoGgV2h2IQw4hbCZvpX4qmAzw9rIUx/T/tVJpVKi7f8B4XJjdhHwxXTUDvSPKw1wuDfRpV/JuTpwsRx0wzhWaVyXDD1rynsBW4b+PRmat4C3oRbZGUtDRCtaR/KoZX15NYBX/A+oa3LCiK+nmpZdZjcSSNCjTnX4UUy0Gipwxkt/S7BrS9+L0UlCrvu6T/yx2hmA7T4uN9iCO/gLQdM3sev5nRgMpCJRYcvwqJkxKeUI7XVGEEsMxWEwErog3W4rCmnTv9Jw3a+S88MLZ9Krd X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(7916004)(376002)(39860400002)(136003)(366004)(346002)(396003)(451199021)(6666004)(82960400001)(2906002)(66556008)(6486002)(66946007)(66476007)(54906003)(85182001)(8936002)(8676002)(5660300002)(38100700002)(86362001)(41300700001)(6916009)(316002)(4326008)(478600001)(33716001)(9686003)(26005)(6512007)(6506007)(186003)(83380400001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?R3Z2SjNkOE9BVXhpM2lLNXd4NXdheXNnTjlTWGlWZVVPbzdZbjdlNHBmN0M3?= =?utf-8?B?SE5lQnFOdy9kZnFjcWlHeVc2UGhrQW5CNHFtVVNGSDVQdHZxQjRaZ0w1NkFS?= =?utf-8?B?dVU0VHdFSmlGMFFHVUxVY0pHSTJnTERsRUNzRXVRL3I4eXZGVktRTW9jMWJB?= =?utf-8?B?cktmSU4rMS9mZHhYTXlVR00vNDRYS0o1Nys5Q2ZmeEFiRmFFNUJNSjI0MXRZ?= =?utf-8?B?MTJKMFNxNktJNk1YQUoyQVovemJTajcwYnNvTXNjUXRFdWhySUVLdCtOakxy?= =?utf-8?B?NGJ1SHlndDlqMFZ5OXh5OHNFRWh1OGxiVHlvWGkwbFJiR3R6Und0YmFkb3pU?= =?utf-8?B?bzVRUGtyVk0vRW9sQWhKZnFMbEh6cWhoSGlQZnpQYzMyUlg1ZCtkR3dCTmZP?= =?utf-8?B?V3Y0NjE3aThwQ0RNKzQvVVlIak1uUzFnZUttVCszVmYreHRia25kaDBobTdj?= =?utf-8?B?WmNtQ1dKSFRnRy9GU3JuNGNVTEtYYUM1dHF4ZElHRWdJb24vaDkwbnR5S080?= =?utf-8?B?S1RiWHZOOEF6d0hoQTZ3bHBaQnJic3g4NTJaOWpkd2hCR2kyNmNxMFVvL0hX?= =?utf-8?B?MGowUXFYWVNTdXVkZW4vcEtJSlFCaENzNVZzTFFUT3hLVm1hZzdoMk1rSys5?= =?utf-8?B?TGduMVVvVS9VdHl6Ri95S0tKcHYvTmtwRzU3YjdZZ1pQSlpIaWVVQnByVUk2?= =?utf-8?B?ZFdMU0l1VklsTDNyOFVzWkF1Z0k4WFdIYkJZUzN1d0ZBQUtuTmtrNFE4THB5?= =?utf-8?B?V0x0a1ZkYzFhNTFYaHg3b3JuWXRhalBBUkpjS0pLVkZUYlhaYzd5TEdvU3I1?= =?utf-8?B?TE55Vm4wM1licDFLZmFrR2FJQTIwNnU5SHpXN3NsYy9maFM3aXFpc2JuTjhO?= =?utf-8?B?eG1ublRZQ2R0ZzFxQUJqTG5zTmZ5VTJiV200eitmb0JkQk1td2Irc2lhVSsz?= =?utf-8?B?RVROeWtDYk9pcC9wMTI5SUszTEMzS1JYbVBackprZVBXTUNZLzBLWlZzNTY4?= =?utf-8?B?dGxTQ3RxK29EZDBzQ3QxUWR5Tjh2MmljbWd4amJidzF0cXBLa2pHSHVWMTVL?= =?utf-8?B?WXZPRks4QkdnaXVhWFl0aXlZRllnS3pFcG1xMWlBTzZqWVpDZUJlU3dtYlB4?= =?utf-8?B?aWk0RGRSSHZEQ2Q0MlZ2Mnl0d3BiZnZQVWczU0w4UXl4WmZPeXVoU0E1SkRp?= =?utf-8?B?eE9QNGtlUHplUTRoUHlSNUZYcmlXaW8ybU9ER0RXdWhhSUVicXFtb0JUelN0?= =?utf-8?B?bnk0ZitDUkhXVVJ6R2JHR1lHOVMzTzFWM0R0VllYdjRlanpITGZ5T3l2TWsy?= =?utf-8?B?ZTBQcTAyUGgwczdCTFNmVnBURXE3RiszNGJPRm5mUTQzWDFCL3I2TEF3YjlU?= =?utf-8?B?cGw5dTROTmJPT2pWNFZEY3FvK2pVSmIyNjBZTFZ4elEvY3V4Y0l4RWhDWFox?= =?utf-8?B?ZnNWb2ZUMDUydU9XK0RObWQ0T2src1hDTm5EMWhubWFaMmFyTVUrcWMvbWUr?= =?utf-8?B?SzBZY0NTSlI1d3FuTnkwbUdjYXhVT3ZjakUvUkluZGE0ZlBJNmNDTUNRSXlv?= =?utf-8?B?NmVDT1hmS014WG85dUFqZ0oweGphOTRLOTdRR1V4NXA5N1JKb3daeS9Xbk1p?= =?utf-8?B?TEZHTlZ3bUFKK3hyT3lxZ0p2NFRLb2hVVlFLbUE2d2QySXVmRnFSakpnWXo3?= =?utf-8?B?VTZ0TGxUZDVCbFovT2l2QUVhSHl5Zm9JNkM3eDl3NUJJdDZMcUtuK3VGWjFv?= =?utf-8?B?TTRmeG9Vd29saTRqSHZ0RW9tdTkzOEkzMUZTckJhcUE1MUJjL3BHa1BQRzF4?= =?utf-8?B?MmtORnJENzN1YklzaDlaeWo5bmZLeVE3ODd2R1VjS0p2Vjk1THBmRmUrS2hV?= =?utf-8?B?NE1GOUFVaTVmQjBRV0ZDWDIwWndUaW1HT2JScTdRZnp4V3dpck1oU0Q5blQ4?= =?utf-8?B?S09sWGxnZW1ZZ0szeWhzRG1Rc3lDbUVlSXlhdkdIa1JoSEsxWGY4QThjRVRY?= =?utf-8?B?UmhPYUhuL3N3TjdONzVLOEFyR2hua2ZVTTV4bm55aGFGUzBwY2RTS0M2dk5B?= =?utf-8?B?ZDN5UXpvMEpXT0dnVG1seFRqS3JyQ251Z0VnWVNVS3ZjbkhrNEsxZjFxN1hP?= =?utf-8?Q?nAstgFIOFOF5YKexr1FfrhLu/?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: =?utf-8?B?RVRhUmRYLy9RMy90RkxzTTZES0VOY0hnY2dqbk5ibVI5ckFnNlU5ZUl6Nytv?= =?utf-8?B?b2orRk00SjFMelRBOXN3N2Y3MnZ6WGxGTHJSUGppcDE0YXUzSVQrYVJSWkdN?= =?utf-8?B?azA1eW1rSy9MMkltcG94M3FESUM0UEpaVGE0RG5xbFc2YytWSDIycSt4Qzdu?= =?utf-8?B?MWJpdlBqTU1zL2YrbVpLYUFZVHZhN1RnS1NrV3pMS3JMaE1qcFN6emN5OHgv?= =?utf-8?B?SjVlNjFMdWhZRDBVdmIvMXhvR0JOUERPZTFFcFB3clJRM1FEQkRlSVJOdU9r?= =?utf-8?B?Q0hQOTdCUWtsanorVWZ1NXhuQm1hblBXSmtPY2s0cFFnZlA5REY5RzZwUjha?= =?utf-8?B?Rk5PNnlqdVAxQ09mTmdZOFV3OEt2Uko5N0J2WkJ0YUdiMUczdHcxeERYKy8x?= =?utf-8?B?cnFRaEhPZ0xUMExVeGFTRGFBVXkrWGh3NHpvYlovWVUyR25aeTJiejFnd2xB?= =?utf-8?B?aTZrMEVqZzlMTXNweTluU3dzUy9JUHAzQTdUSkRrTHRrdFVxMHdkeWYvRGZR?= =?utf-8?B?SEFNa1RwSlpRNWVmb013Y3BlaDVCY01BR3R6UUhZK1RkM3ljcjYzQk45NjR1?= =?utf-8?B?VEU0UE9zS0VuU2lEQmNGbkJZNFVONy9nNWorYTl2dXJLVGFtRGtOcXUzbzRo?= =?utf-8?B?VnRhREJ3eXdpSS9ZcTVtWU5UR29wVUpIR3R5UVpDZ2lSOFlYUFpWWW1GTzJL?= =?utf-8?B?R2V5YS91SVFOc004cjJyVEdubkhSNVBhLzlCL2c0aE1yN3hOY1pSczh2UmVa?= =?utf-8?B?L1BZcitPeWpxTG9NNzNlSmxYNHBuMURJVkRhcExjK2NJSW42dyt0eGQwM3Vq?= =?utf-8?B?MGtQRlowNXRzV2N0M0pMNHFFUHVUZzZYbWxZeTJSc2wwYjdkdkhDR3dKOHdT?= =?utf-8?B?dDduVmVkQnZpa2hGZVlDdStTRjdGU2wvQXFyWWN1bERxdU01NGc1VHNVT0V4?= =?utf-8?B?M3pkNUU1VFhxaWpUZzNPbWNMVGRyVExyWVhENmVMTW04VnRuVnRURDJGR3lj?= =?utf-8?B?RXU4QUtaMlZ0aFRhS2FDNlVaQ05mVGQ1VkdBNTZURXhUQzgvSHAyT2VIaGsx?= =?utf-8?B?WWo0djEvMEllVFh4WW1KbFBvL3lwTHIwdE9udDhqSEd5L2dUTUM3RnpqZkxR?= =?utf-8?B?NVYrVkdxR0VJUnJVNU85ZU9UbjFYUjZPMmg1aFd3ejN4M2VEU0o1clcyMHpB?= =?utf-8?B?WjB0cU5vNVA4Qi9zM3ZySkg1UVE0NHBqcGh4WUpQRDRnckV1cHB0bXdGV3dn?= =?utf-8?B?dllYY3BUWkdGZ2VMYlBzWUtldm5OelBCR0RhcVVqK0MvNXpvdz09?= X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: a3d30dcc-8727-4d37-4d2f-08db6667a542 X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Jun 2023 08:25:54.6929 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: JGFVu0uWekN3jz7Iin+Ce83liwSBfVJErQKYuGGpxUT1nqK0iSVAeL9RZahHrqh+rt5NZtDH75Y179Gfeq5seQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR03MB5308 On Tue, May 30, 2023 at 04:31:13PM -0400, Demi Marie Obenour wrote: > This allows specifying a disk sequence number in XenStore. If it does > not match the disk sequence number of the underlying device, the device > will not be exported and a warning will be logged. Userspace can use > this to eliminate race conditions due to major/minor number reuse. > Old kernels do not support the new syntax, but a later patch will allow > userspace to discover that the new syntax is supported. > > Signed-off-by: Demi Marie Obenour > --- > drivers/block/xen-blkback/xenbus.c | 112 +++++++++++++++++++++++------ > 1 file changed, 89 insertions(+), 23 deletions(-) > > diff --git a/drivers/block/xen-blkback/xenbus.c b/drivers/block/xen-blkback/xenbus.c > index 4807af1d58059394d7a992335dabaf2bc3901721..9c3eb148fbd802c74e626c3d7bcd69dcb09bd921 100644 > --- a/drivers/block/xen-blkback/xenbus.c > +++ b/drivers/block/xen-blkback/xenbus.c > @@ -24,6 +24,7 @@ struct backend_info { > struct xenbus_watch backend_watch; > unsigned major; > unsigned minor; > + unsigned long long diskseq; Since diskseq is declared as u64 in gendisk, better use the same type here too? > char *mode; > }; > > @@ -479,7 +480,7 @@ static void xen_vbd_free(struct xen_vbd *vbd) > > static int xen_vbd_create(struct xen_blkif *blkif, blkif_vdev_t handle, > unsigned major, unsigned minor, int readonly, > - int cdrom) > + bool cdrom, u64 diskseq) > { > struct xen_vbd *vbd; > struct block_device *bdev; > @@ -507,6 +508,26 @@ static int xen_vbd_create(struct xen_blkif *blkif, blkif_vdev_t handle, > xen_vbd_free(vbd); > return -ENOENT; > } > + > + if (diskseq) { > + struct gendisk *disk = bdev->bd_disk; const. > + > + if (unlikely(disk == NULL)) { > + pr_err("%s: device %08x has no gendisk\n", > + __func__, vbd->pdevice); > + xen_vbd_free(vbd); > + return -EFAULT; ENODEV or ENOENT might be more accurate IMO. > + } > + > + if (unlikely(disk->diskseq != diskseq)) { > + pr_warn("%s: device %08x has incorrect sequence " > + "number 0x%llx (expected 0x%llx)\n", I prefer %#llx, and likely pr_err like above. Also I think it's now preferred to not split printed lines, so that `grep "has incorrect sequence number" ...` can find the instance. > + __func__, vbd->pdevice, disk->diskseq, diskseq); > + xen_vbd_free(vbd); > + return -ENODEV; > + } > + } > + > vbd->size = vbd_sz(vbd); > > if (cdrom || disk_to_cdi(vbd->bdev->bd_disk)) > @@ -707,6 +728,9 @@ static void backend_changed(struct xenbus_watch *watch, > int cdrom = 0; > unsigned long handle; > char *device_type; > + char *diskseq_str = NULL; const, and I think there's no need to init to NULL. > + int diskseq_len; unsigned int > + unsigned long long diskseq; u64 > > pr_debug("%s %p %d\n", __func__, dev, dev->otherend_id); > > @@ -725,10 +749,46 @@ static void backend_changed(struct xenbus_watch *watch, > return; > } > > - if (be->major | be->minor) { > - if (be->major != major || be->minor != minor) > - pr_warn("changing physical device (from %x:%x to %x:%x) not supported.\n", > - be->major, be->minor, major, minor); > + diskseq_str = xenbus_read(XBT_NIL, dev->nodename, "diskseq", &diskseq_len); > + if (IS_ERR(diskseq_str)) { > + int err = PTR_ERR(diskseq_str); > + diskseq_str = NULL; > + > + /* > + * If this does not exist, it means legacy userspace that does not > + * support diskseq. > + */ > + if (unlikely(!XENBUS_EXIST_ERR(err))) { > + xenbus_dev_fatal(dev, err, "reading diskseq"); > + return; > + } > + diskseq = 0; > + } else if (diskseq_len <= 0) { > + xenbus_dev_fatal(dev, -EFAULT, "diskseq must not be empty"); > + goto fail; > + } else if (diskseq_len > 16) { > + xenbus_dev_fatal(dev, -ERANGE, "diskseq too long: got %d but limit is 16", > + diskseq_len); > + goto fail; > + } else if (diskseq_str[0] == '0') { > + xenbus_dev_fatal(dev, -ERANGE, "diskseq must not start with '0'"); > + goto fail; > + } else { > + char *diskseq_end; > + diskseq = simple_strtoull(diskseq_str, &diskseq_end, 16); > + if (diskseq_end != diskseq_str + diskseq_len) { > + xenbus_dev_fatal(dev, -EINVAL, "invalid diskseq"); > + goto fail; > + } > + kfree(diskseq_str); > + diskseq_str = NULL; > + } Won't it be simpler to use xenbus_scanf() with %llx formatter? Also, we might want to fetch "physical-device" and "diskseq" inside the same xenstore transaction. Also, you tie this logic to the "physical-device" watch, which strictly implies that the "diskseq" node must be written to xenstore before the "physical-device" node. This seems fragile, but I don't see much better optiono since the "diskseq" is optional. The node and its behaviour should be documented in blkif.h. > + if (be->major | be->minor | be->diskseq) { > + if (be->major != major || be->minor != minor || be->diskseq != diskseq) > + pr_warn("changing physical device (from %x:%x:%llx to %x:%x:%llx)" > + " not supported.\n", > + be->major, be->minor, be->diskseq, major, minor, diskseq); > return; You are leaking diskseq_str here, and in all the error cases between here and up to the call to xen_vbd_create(). It might be better to simnply free diskseq_str once you are done with the processing, and have set diskseq. Otherwise see my suggestion of using xenbus_scanf(). Thanks, Roger. From xen-devel-bounces@lists.xenproject.org Tue Jun 06 08:37:14 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 06 Jun 2023 08:37:14 +0000 Received: from list by lists.xenproject.org with outflank-mailman.543996.849419 (Exim 4.92) (envelope-from ) id 1q6SBg-0005Di-VL; Tue, 06 Jun 2023 08:37:08 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 543996.849419; Tue, 06 Jun 2023 08:37:08 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6SBg-0005Db-SN; Tue, 06 Jun 2023 08:37:08 +0000 Received: by outflank-mailman (input) for mailman id 543996; Tue, 06 Jun 2023 08:37:07 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6SBf-0005DV-4I for xen-devel@lists.xenproject.org; Tue, 06 Jun 2023 08:37:07 +0000 Received: from esa5.hc3370-68.iphmx.com (esa5.hc3370-68.iphmx.com [216.71.155.168]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 4f827b6d-0445-11ee-8611-37d641c3527e; Tue, 06 Jun 2023 10:37:04 +0200 (CEST) Received: from mail-dm6nam12lp2174.outbound.protection.outlook.com (HELO NAM12-DM6-obe.outbound.protection.outlook.com) ([104.47.59.174]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 06 Jun 2023 04:36:57 -0400 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) by SJ0PR03MB5406.namprd03.prod.outlook.com (2603:10b6:a03:28e::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.32; Tue, 6 Jun 2023 08:36:53 +0000 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::192:6bdf:b105:64dd]) by SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::192:6bdf:b105:64dd%3]) with mapi id 15.20.6455.028; Tue, 6 Jun 2023 08:36:53 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 4f827b6d-0445-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686040624; h=date:from:to:cc:subject:message-id:references: content-transfer-encoding:in-reply-to:mime-version; bh=v3//EKvLOPCjFkZ8Oq/Ghd4IXzNoCPT16aEIz5kdS1E=; b=T93TPhJgtr/q9cwHNWxhiU+MlBAYts3mwhYg0ye8/9YLXIjzpX1aD9JH 5UOFVCcZ/t8PqeqD8Ri+zKld9weVPSBJuwqlwrNl6Y+WB7BGRh13opHTZ opcMaGx/m1EggZtE6JfqzPXNNUl8DcLdeTA3ykcdnJVlSeHWNUz0aemOO s=; X-IronPort-RemoteIP: 104.47.59.174 X-IronPort-MID: 110488757 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:U0VeX6uudYvvsIKg6EibXS7RyufnVBReMUV32f8akzHdYApBsoF/q tZmKWnVMvmKa2v3KYxza4nn9kJS7ZTQxoBnS1Bu+CE8Qi8X+JbJXdiXEBz9bniYRiHhoOCLz O1FM4Wdc5pkJpP4jk3wWlQ0hSAkjclkfpKlVKiffHg3HVQ+IMsYoUoLs/YjhYJ1isSODQqIu Nfjy+XSI1bg0DNvWo4uw/vrRChH4rKq4Fv0gnRkPaoQ5AGGySFMZH4iDfrZw0XQE9E88tGSH 44v/JnhlkvF8hEkDM+Sk7qTWiXmlZaLYGBiIlIPM0STqkAqSh4ai87XB9JFAatjsB2bnsgZ9 Tl4ncfYpTHFnEH7sL91vxFwS0mSNEDdkVPNCSDXXce7lyUqf5ZwqhnH4Y5f0YAwo45K7W9yG fMwKS8sXhCBiMaP2K+dFOtKqON/HNPNBdZK0p1g5Wmx4fcOZ7nmGv+PyfoGmTA6i4ZJAOrUY NcfZXx3dhPcbhZTO1ARTpUjgOOvgXq5eDpdwL6XjfNvvy6Pk0osgf60b4a9lt+iHK25mm6Co W3L5SLhCwwyP92D0zuVtHmrg4cjmAuiAdpORO3nq6ECbFu7/VMfCxIvEnmAntLmjVbhZfx7d xE15X97xUQ13AnxJjXnZDW0rXuFlh8aRdtLEuc+5R2Ny6zb+AKQDC4PSTspQNU2vsg7bT8nz FmEm5XlBlRHubKWYWiQ+redsXW5Pi19BXQEZDMWQBEt4NT5pow3yBXVQb5LHKvwgtDrFDXY2 T2GrCEiwb4UiKYj0qyh+FndjjGEp57XTxU07AHaQmKk6AxiYIevIYev7DDz6fdGMZbcRF2Gt 3sshceT9qYNAIuLmSjLR/8CdJmt5vCYIHjfjERpEp0J6Tug4TigcJpW7TU4I11mWu4UdDmsb ELNtAd54J5IIGDsfaJxe5i2Cckh0e7nD9uNaxzPRt9HY5w0eArZ+ihrPBSUxzq0zxRqlrwjM 5CGd8rqFWwdFals0DuxQaEazKMvwSc9g2jUQPgX0iia7FZXX1bNIZ9tDbdERrlRAH+syOkNz +tiCg== IronPort-HdrOrdr: A9a23:Rni8VaGk7tZ61vHTpLqE5seALOsnbusQ8zAXPiFKJSC9F/byqy nAppsmPHPP5gr5OktBpTnwAsi9qBrnnPYejLX5Vo3SPzUO1lHYSb1K3M/PxCDhBj271sM179 YFT0GmMqyTMWRH X-Talos-CUID: 9a23:EGByWGARkXvMDqL6Eyh41X4UGM8BS2XA6inSBWGfVVZzboTAHA== X-Talos-MUID: 9a23:05hwbAQhELPH2ubTRXTXuz1hO/4vwZ+RIx8Kico4le3YaA1vbmI= X-IronPort-AV: E=Sophos;i="6.00,219,1681185600"; d="scan'208";a="110488757" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=ZpuEPFgP+JwShstoCSCA7E86quWZexi2SOmGXIHKvwYMp+I4aMCs/7TOMhLnwLGAEsq7FLm1Wd+nbXpaNHvFMxrta/yYTujpLQOy55nWrHk8NmSxLTjlqhDZO/q09/7ZCKWWoM29BzCjlz1kK3DmyvFhtRxVw8RntF8oep4f2r38FoTOp8FdVqFj5vZFI829fOpsF+WLifFH8udds7kGyIgd9gJHBnCHPv/DPIStQ6xO5ILsoZB06wMLJIk8dClDCGRnW3T+MZb+tf4OrfjTQEPAFt2Ot8Yl0AqcTqfUhMzwAoR5xFmYZ2GJRjBYFMkqtb0DeKRHenQzRUmejw9rYA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=S6INsdJ1n32OVaU383frmFkt03u0vVN7aPYBXbQQaro=; b=UKf20v1kivOLm7zc58BreNTZW6u/3F/od8nkS8mVvfqrdEaKKObRA/e9Eky8VY+xdsa/T+6wZ7/2u3d6wzYNofOs5quCHmbRGSVBH3eKg7orgm3UZ5s5P2kkMI/LezqllnDQRIa7MPOdQKz3DKzC++g/uJL0dHNsBJjM8tu5HcHzAoBdPa48hSxCtpVVOfG6z91/xTVSH9qgLA+DLFxbK7aQ5qtW/B9QoA3LH3+PiZDKRlHaXBQOR2w2tMfJIcmNr5FDDxv8zm1omL7ntvoWkUu0YfpFcMRiOppSQSYIc5vaA7mDzubyppNqGnewcCoFT7n2b6EGfdbuy0yOgO+4CQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=S6INsdJ1n32OVaU383frmFkt03u0vVN7aPYBXbQQaro=; b=ozUUPz1ItoexlsyC/mf025TKHInMtUT/eRgxUu+NWa/RvbzCRbxs4nEY0xKtkgynRl6S6v3CPgCy6uuq/fzL+HoqSnc9zJhy5Z1t4ECXIpFtMbQON2pzHkLTEtzfRYCFK+9Zlbg3uFhSNi9D2F/o4JFTnoGy0plBskj+kgV1ft0= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Date: Tue, 6 Jun 2023 10:36:46 +0200 From: Roger Pau =?utf-8?B?TW9ubsOp?= To: Demi Marie Obenour Cc: Jens Axboe , Alasdair Kergon , Mike Snitzer , dm-devel@redhat.com, Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= , linux-block@vger.kernel.org, linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org Subject: Re: [PATCH v2 15/16] xen-blkback: Minor cleanups Message-ID: References: <20230530203116.2008-1-demi@invisiblethingslab.com> <20230530203116.2008-16-demi@invisiblethingslab.com> Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <20230530203116.2008-16-demi@invisiblethingslab.com> X-ClientProxiedBy: LO4P123CA0522.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:272::8) To SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|SJ0PR03MB5406:EE_ X-MS-Office365-Filtering-Correlation-Id: 9bc6cd94-e85a-4b89-e85d-08db66692da7 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: KWIx7PcSlhZ1Tc77A7sOHXjFJZXa9ygsaQZOSahd/K2lU9zBigdk8+OiEnG2d2PRwEdYlGinWF2KdYCb2szuIqCN9pxJvb/RC3kNlgLe5uw7VfOBnFmXuPXA30yq4gQHvdZzpk60Tq3rpTd8E4LemnOqBmYNajGIf2ja/z31NLiArhgPKyTWXnZPwdfA8DMvHunyKpMAG6BewMqzzHcKgNTgbHUSIz4IZ5X7m/YVKwMvyZIFfCwKEaysNjxKfMJApq+/2FGGaOfHV5B2OifcDfFpT10H23cgPMuuKUma+q5JENkRjTcr//7lQb1Cz5g+y0Txt4jSXHA4uFNzbr+iMD8SPk8oUCQLPcslYoqbS+SVd2Sr4PU8gYvnFTVUrGREJayKFW55IUfRTDS1PDfP+1bWfptBQs4lXtyc5+1A6dKsKdDOtAUP1QXAIuSoPmkLqzDXh2EqamO668W505WBVGt1BngsvEVID1IXNlyeE9hPSnkjSX+ZdYWT8WG6oxQr7RkYo3YfIpCA0ywyM4ploKFc75U14Xh62Pjf8Arcc6KFaV5XdFfVbtE3cdiVGRuM X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(7916004)(376002)(366004)(346002)(396003)(39860400002)(136003)(451199021)(6512007)(9686003)(38100700002)(6506007)(41300700001)(186003)(6486002)(6666004)(26005)(83380400001)(478600001)(54906003)(4326008)(66476007)(66556008)(6916009)(82960400001)(66946007)(316002)(5660300002)(8936002)(8676002)(2906002)(86362001)(33716001)(85182001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?bjF1cEN5YVFzWUVvSStoNVVOS1M3ZnRmeGhXVWtMUmNnRU1XYnVwRlNCV1VP?= =?utf-8?B?REg0QU5Rczd2TnE2RTRidWR5MWphenJLdzZpbm9CcWNxTWxqaUh2UE5ab0I3?= =?utf-8?B?RmpSWjA0QnA4RTc3VGlVZTR1N0t4TEhKaXBtdi9QQUU3M3h5K0VuR2FiY09X?= =?utf-8?B?Q203V0d4cVV0T1grU2Q0VWx3QW0zd0h1bzhzVEwzTDg2MXZRWjBmMEFCRWk4?= =?utf-8?B?K0FCMDRHOEJGK2RkQ0lPQWVBZUF1cThMYy9VVGpRUHpLMzZQOHZhU3ZUVG4z?= =?utf-8?B?cTJnazNpMUcreTkxRHlRM05PQlFpNDltUmJyTEVOWHI0czM5RTVNOG9mRXIz?= =?utf-8?B?VW05cCtHMVM4MGRxUWRKMERQdVF1QXZSUWJpUFV1T2h3Vi8xZ1pNOXVnc1FH?= =?utf-8?B?RWFoVTJ6M2s0MndOUmxXVGloYk51aC83YTVIRlEvM2tGNjdZZGN1RW9GVVBi?= =?utf-8?B?OHhnUitZdGJma0tXVGk1WUc5Z3kzMUI5SlM4UktaMVdiV0FpaGUxMHkxeHlV?= =?utf-8?B?a3ZMM1VJc0dKSE1aNkRtRVY2SGNXOHRIRnBVOG5TOE5kR1Jlb3loQ29wbUFx?= =?utf-8?B?d09VVjdkb1Q3UjB4OHl2K0x1dzJnZ2RGSVpQTUhuS2o4QzA0cWNLS3pHZ3hH?= =?utf-8?B?Q0QxWGw3K05qWGs3U2NpUlVVeWRyWE94eFJuejFpS0d2eThJK3c5SE9ZOUt3?= =?utf-8?B?UDNOSzFhT0diZ3VXODI1UU9XZ3VqUE03V1F6a2dvUG9iS2VoM2dTNW5YYk44?= =?utf-8?B?NS9Ob1ZQUFI3N25oUWRmMjdMTVh3NGs2YWFkRTB0N2ZBYnFudG1jSmxMVjNj?= =?utf-8?B?OHIyQjFzeHAxUmtwMHRTU1NvQ0t0T3YrdHVvSnFQQTNlZDd1T2FxTmFuSnlB?= =?utf-8?B?cmU3LzFJQmRaMzJoVHVUZXNyL1orY2o1RDlYMTdwVUxlUk42WTVrakdRU0xK?= =?utf-8?B?a3BJaW5xUTR2cnVpYnlOQ1pRZFExeG5rekNUdXZqNExwd3Jqc1dyWWtoejJH?= =?utf-8?B?dUdOQzd2bnBpSWRrMnovRmNDQWowM2R3eTlKSlJpaWRCbi93NG5KUmpzZENP?= =?utf-8?B?ZVVJTkV0SzNidElydUI3K1F3OVI1R3FoVFFEcEFGd0lGcHZNZjk5K1lXbkxY?= =?utf-8?B?MlM2RGdEVGlpak5OeExNRkdmc2xQY1NwKzZPOEtFZ05sMUk4RmttZVd1Wkkz?= =?utf-8?B?ai9sY05wV0g2UGJGVkFqRmplQmN1NlY4Yk1TbXlvQUpKQXl1b2pPZFd5czc0?= =?utf-8?B?RDRwSE1BU1p1UCsrMXJ4dWJ1OVBtSmRSam5ZVmJmMnVUamNUWGVDT2xkaS9H?= =?utf-8?B?Rm1ZS0lBVnVFWFJBWGRwTllOa3dSckljekRqeXdSM2wxSCtNWVB3NmVXWVFS?= =?utf-8?B?ZTl5RDc0aXNaNkIwMUNpakp2dFlkaUZ1QUNYek1uVHd4alpGUm5uVTl4dDdo?= =?utf-8?B?NkZLRDdxbkpnVDd6TS9XcHRTOWpwSzR5SVhNU093VWNQY3h1blBqbFZkVXJM?= =?utf-8?B?QWprWlp0cWJDU0VsVXhSZURUMWtCUjNPRFdWRXFaRVFEdnhBZ2QwOTF5Z0Z2?= =?utf-8?B?WDR6K20vdjN3OE0zZlFKNmhCbG9sNU1vdTZhc2ZuL3RSbXdaUXFDUHpIU3g2?= =?utf-8?B?eDVnMXRRMFdwZlJ5TXB4UG12N0E4SmpQUTJLZkUvSk1FQUZTV0ZBenZkakxP?= =?utf-8?B?enh2SzBwV3d6QlFjc1RCSU9ZVXBscm8rK3ZDVU5TREFwTThmMy9peWNGMExR?= =?utf-8?B?Ty9TLzZBc1FVRCtqcG5obDlDRTNWa1lrdjFlZnRqa3FSRUJOaGRXWk1FcDNx?= =?utf-8?B?ZEpDNzhwRDI3ZlRzRzduU3B2OVp5ZTdlQXBFVEZoc1drTVhQaHlManRjNWF6?= =?utf-8?B?VXJjZkR0ZHZRamhZZGt3QlZKMEsvQkdZczhRMVVHVDQ5Q2VkWXBWT3M4N0ZE?= =?utf-8?B?YzhNdVVPZmlaekZzTi95Z1FCWWhJSmVXdmd4M1d4WEsvUlNRbWJaazFMdTJC?= =?utf-8?B?TXV5cnpOYVhtamIzNWIrSEFCWmtaVTFJMXRUSXhFTXpaZkgyOHR0Y3Y0NWxH?= =?utf-8?B?bjFmTnRRVVJNQXA4WUVwZlg1STFjSCtLYzNUbFhmZm4wNGg3VUNpQXNRZ3pI?= =?utf-8?B?bFo5emM4b2pycFBLZnQzcVpRTndaWkZ5OFZmZVp3S09aT3FyOGFpdjBOVXU0?= =?utf-8?B?OXc9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: =?utf-8?B?dksvbVBhR0VKcjJ2RDBiRlQ4eWJacGtqcTlEWEJrT1FncTVPRmdTWjJidDhG?= =?utf-8?B?NXRSbVRDakRsTmxsd003eUViWWoyamxsUjB4QnBtTnkzeDVScVM3cVJnbE8y?= =?utf-8?B?MUhDa2pIRnc0dG8xd05ZYUJXcEc5WWZGRDZLSWNOak5hejNOdXJQT2FYOVFF?= =?utf-8?B?ajl4c0ZJUm1BRlovN25QQUlNQTFyeU9QUTQ4UGpmd1NudDBWdCtKa0VwcHlK?= =?utf-8?B?VVFDcmYwSGFvcFV0M0hpVUE5VGs2b1NyUXFBQ3QrWGNkcFRHQVZweG05Vklo?= =?utf-8?B?dVFCNDhtaFkrSVVWTTFwdk9OOTN3SFprV1dNSDlCZ0NUdklzQkVFVHR3RWZa?= =?utf-8?B?YlUvaEF1Y1V5bUN4OGEwQUNuV0RDdkN2cHY0TThjTFZvUzRaUlBTdGVhc2N3?= =?utf-8?B?MnIwa1I2RzJQUSs0c2lheTdtUW4zM2srU0tKWnBGRGhQRnhaQTczVitZbDVp?= =?utf-8?B?N2hFRWt2N0lPbEQ2elB0bjE0YnlrNGRtZENqMzA5NWVwajBiaU5EZnFJL1hy?= =?utf-8?B?UXNCRjFBUDJyUGc1WWw1dGhWZkxmVGJMSFVNYVhlUGZ1TEFVWmNaMC84Q3RH?= =?utf-8?B?MkJFelhibytMNHVBV1pqZlVSVWNoaWJ6RVh5K1JuVXZXcFFFWm5ZRU5Bbllu?= =?utf-8?B?TUN0VTZGTXJCYUpUaHlNbjhGakcwTUFUeTE3a2t5TnpsY2ZoZmczUmhrRW5N?= =?utf-8?B?enZqc0FvWXNGWVNpcy9LQlI2N2wvRlBzcTQrMU1zbzFYa2hROEZQcDJZendX?= =?utf-8?B?NnBuM2pWS09GMXNST2R5czZGV1o0anNZZ2c4VzdDeDZ5aTA3bXEzSm5ESFRY?= =?utf-8?B?WXAvMnI5Q3ZUdDRaUW9oZjArYXlVOVg3TFlUekRINm1NeGx6ZFNBbkg0TG85?= =?utf-8?B?OUVUeCtnclM4WTk1THVWbFhJZlRNSkFLWjVjdmVWNGVQZ2R1MzBYMDNMakFz?= =?utf-8?B?ZE01RURndnNpR21OTlZYUUpZcXBEMGtmV3EzN1RDRzhEelU5emNxdE9Sbzgx?= =?utf-8?B?Y2xIVWRGQ2hNZmNkWjhmckUwaFFKTUhjS2FjczhFdzlLVWdBaDdnT255ejlS?= =?utf-8?B?bGNEcWJjSDVCalZ2cC9CbnJQVW13dmNNZzIzUEJOL08yOEp3SXNYeHBjWWcx?= =?utf-8?B?ekppS3dzMlFTOVBBK3dndnRmdWZoMlFtUXhJQlRnVXYvcUFlY1V5b0doWXRv?= =?utf-8?B?V3YyRXFkK1dDYitYSUZRdXZoMGlzWWlORC9WZlYySEU1Wlk1d0duN2hhYlE4?= =?utf-8?B?TzVwcU9nWUlqc3djVzB5czdHQVpkbHlhc0F2UGNHR2Rhd0ttUT09?= X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 9bc6cd94-e85a-4b89-e85d-08db66692da7 X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Jun 2023 08:36:52.9148 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: DyVMJCtU7OZNAhTR+UvMnmqJfQqyP/93b1czVQ/acE31VjZ/PEX8HqwcRkGnI2vd9A7ow8mhLw6oVElKGpmVyQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR03MB5406 On Tue, May 30, 2023 at 04:31:15PM -0400, Demi Marie Obenour wrote: > This adds a couple of BUILD_BUG_ON()s and moves some arithmetic after > the validation code that checks the arithmetic’s preconditions. The > previous code was correct but could potentially trip sanitizers that > check for unsigned integer wraparound. > > Signed-off-by: Demi Marie Obenour > --- > drivers/block/xen-blkback/blkback.c | 8 +++++--- > 1 file changed, 5 insertions(+), 3 deletions(-) > > diff --git a/drivers/block/xen-blkback/blkback.c b/drivers/block/xen-blkback/blkback.c > index c362f4ad80ab07bfb58caff0ed7da37dc1484fc5..ac760a08d559085ab875784f1c58cdf2ead95a43 100644 > --- a/drivers/block/xen-blkback/blkback.c > +++ b/drivers/block/xen-blkback/blkback.c > @@ -1342,6 +1342,8 @@ static int dispatch_rw_block_io(struct xen_blkif_ring *ring, > nseg = req->operation == BLKIF_OP_INDIRECT ? > req->u.indirect.nr_segments : req->u.rw.nr_segments; > > + BUILD_BUG_ON(offsetof(struct blkif_request, u.rw.id) != 8); > + BUILD_BUG_ON(offsetof(struct blkif_request, u.indirect.id) != 8); Won't it be clearer as: offsetof(struct blkif_request, u.rw.id) != offsetof(struct blkif_request, u.indirect.id) We don't really care about the specific offset value, but both layouts must match. Also, you likely want to check for all requests types, not just rw and indirect (discard and other). > if (unlikely(nseg == 0 && operation_flags != REQ_PREFLUSH) || > unlikely((req->operation != BLKIF_OP_INDIRECT) && > (nseg > BLKIF_MAX_SEGMENTS_PER_REQUEST)) || > @@ -1365,13 +1367,13 @@ static int dispatch_rw_block_io(struct xen_blkif_ring *ring, > preq.sector_number = req->u.rw.sector_number; > for (i = 0; i < nseg; i++) { > pages[i]->gref = req->u.rw.seg[i].gref; > - seg[i].nsec = req->u.rw.seg[i].last_sect - > - req->u.rw.seg[i].first_sect + 1; > - seg[i].offset = (req->u.rw.seg[i].first_sect << 9); > if ((req->u.rw.seg[i].last_sect >= (XEN_PAGE_SIZE >> 9)) || > (req->u.rw.seg[i].last_sect < > req->u.rw.seg[i].first_sect)) > goto fail_response; > + seg[i].nsec = req->u.rw.seg[i].last_sect - > + req->u.rw.seg[i].first_sect + 1; > + seg[i].offset = (req->u.rw.seg[i].first_sect << 9); Parentheses here are unneeded. If we do that move, we might as well move the assignation of pages[i]->gref as well, just to avoid assigning to gref to take the failure path. I do think however wraparound is not an issue here, as we will discard the result. Thanks, Roger. From xen-devel-bounces@lists.xenproject.org Tue Jun 06 08:51:28 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 06 Jun 2023 08:51:28 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544002.849428 (Exim 4.92) (envelope-from ) id 1q6SPJ-0007fR-90; Tue, 06 Jun 2023 08:51:13 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544002.849428; Tue, 06 Jun 2023 08:51:13 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6SPJ-0007fK-6I; Tue, 06 Jun 2023 08:51:13 +0000 Received: by outflank-mailman (input) for mailman id 544002; Tue, 06 Jun 2023 08:51:11 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6SPH-0007fA-3n; Tue, 06 Jun 2023 08:51:11 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6SPG-0005ra-R4; Tue, 06 Jun 2023 08:51:10 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6SPG-00013d-Co; Tue, 06 Jun 2023 08:51:10 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q6SPG-0008O3-CL; Tue, 06 Jun 2023 08:51:10 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=u4e0rt82z15CHbl0LAEanKTgrxh0/d3E2e5uiQoJ3Q0=; b=0fRanP1FIJFAFyOzBcEXthBl3P E+DIQMtIeDaCNynFqnIyM6w9F+twGTWqdT2Kz+K0c8qalkucx+9JUAsyWPr/3Qy58KtFBnrp0sqjL szM/80tVDeVwf+lxgsI/SBOxUqDG4M5TgT0x2S3RVZQKLBM5BdVjru4duQGhLDuN3DyI=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable test] 181194: tolerable FAIL - PUSHED X-Osstest-Failures: xen-unstable:test-amd64-i386-libvirt-xsm:xen-install:fail:heisenbug xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:xen-install:fail:heisenbug xen-unstable:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:debian-hvm-install:fail:heisenbug xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-i386-xl-vhd:guest-start/debian.repeat:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking X-Osstest-Versions-This: xen=b3880c365db89051728e1de6b6889c750cbdd915 X-Osstest-Versions-That: xen=67fdffef9246c82cecd8db28838ed09e79e2528a From: osstest service owner Date: Tue, 06 Jun 2023 08:51:10 +0000 flight 181194 xen-unstable real [real] flight 181208 xen-unstable real-retest [real] http://logs.test-lab.xenproject.org/osstest/logs/181194/ http://logs.test-lab.xenproject.org/osstest/logs/181208/ Failures :-/ but no regressions. Tests which are failing intermittently (not blocking): test-amd64-i386-libvirt-xsm 7 xen-install fail pass in 181208-retest test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 7 xen-install fail pass in 181208-retest test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 12 debian-hvm-install fail pass in 181208-retest Tests which did not succeed, but are not blocking: test-amd64-i386-libvirt-xsm 15 migrate-support-check fail in 181208 never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail in 181208 never pass test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 181178 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop fail like 181178 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 181178 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 181178 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop fail like 181178 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop fail like 181178 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail like 181178 test-armhf-armhf-libvirt 16 saverestore-support-check fail like 181178 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail like 181178 test-amd64-i386-xl-vhd 21 guest-start/debian.repeat fail like 181178 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 181178 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop fail like 181178 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 181178 test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-i386-xl-pvshim 14 guest-start fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-armhf-armhf-xl-multivcpu 15 migrate-support-check fail never pass test-armhf-armhf-xl-multivcpu 16 saverestore-support-check fail never pass test-amd64-i386-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-xl 15 migrate-support-check fail never pass test-armhf-armhf-xl 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass test-amd64-i386-libvirt 15 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 15 saverestore-support-check fail never pass test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail never pass test-armhf-armhf-xl-credit2 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit2 16 saverestore-support-check fail never pass test-armhf-armhf-xl-arndale 15 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt 15 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 15 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt-raw 14 migrate-support-check fail never pass version targeted for testing: xen b3880c365db89051728e1de6b6889c750cbdd915 baseline version: xen 67fdffef9246c82cecd8db28838ed09e79e2528a Last test of basis 181178 2023-06-05 01:52:13 Z 1 days Testing same since 181194 2023-06-05 16:40:12 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Andrew Cooper Anthony PERARD Jan Beulich Juergen Gross jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64-xtf pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-prev pass build-i386-prev pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-xtf-amd64-amd64-1 pass test-xtf-amd64-amd64-2 pass test-xtf-amd64-amd64-3 pass test-xtf-amd64-amd64-4 pass test-xtf-amd64-amd64-5 pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl pass test-amd64-i386-xl pass test-amd64-coresched-i386-xl pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm fail test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-i386-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm fail test-amd64-i386-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-i386-libvirt-xsm fail test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-i386-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-i386-qemut-rhel6hvm-amd pass test-amd64-i386-qemuu-rhel6hvm-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-i386-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-freebsd10-amd64 pass test-amd64-amd64-qemuu-freebsd11-amd64 pass test-amd64-amd64-qemuu-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-i386-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-i386-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-i386-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-amd64-i386-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale pass test-amd64-amd64-examine-bios pass test-amd64-i386-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 pass test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 pass test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine pass test-amd64-i386-examine pass test-amd64-i386-freebsd10-i386 pass test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-i386-qemut-rhel6hvm-intel pass test-amd64-i386-qemuu-rhel6hvm-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt pass test-amd64-i386-libvirt pass test-amd64-amd64-livepatch pass test-amd64-i386-livepatch pass test-amd64-amd64-migrupgrade pass test-amd64-i386-migrupgrade pass test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu pass test-amd64-amd64-pair pass test-amd64-i386-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-i386-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-i386-xl-pvshim fail test-amd64-amd64-pygrub pass test-armhf-armhf-libvirt-qcow2 pass test-amd64-amd64-xl-qcow2 pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw pass test-amd64-i386-libvirt-raw pass test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds pass test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-amd64-i386-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-i386-examine-uefi pass test-amd64-amd64-libvirt-vhd pass test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd pass test-amd64-i386-xl-vhd fail ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Pushing revision : To xenbits.xen.org:/home/xen/git/xen.git 67fdffef92..b3880c365d b3880c365db89051728e1de6b6889c750cbdd915 -> master From xen-devel-bounces@lists.xenproject.org Tue Jun 06 09:16:12 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 06 Jun 2023 09:16:12 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544022.849487 (Exim 4.92) (envelope-from ) id 1q6SnD-0002M9-Rz; Tue, 06 Jun 2023 09:15:55 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544022.849487; Tue, 06 Jun 2023 09:15:55 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6SnD-0002M2-Om; Tue, 06 Jun 2023 09:15:55 +0000 Received: by outflank-mailman (input) for mailman id 544022; Tue, 06 Jun 2023 09:15:55 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6SnC-0002Lu-RV for xen-devel@lists.xenproject.org; Tue, 06 Jun 2023 09:15:54 +0000 Received: from esa5.hc3370-68.iphmx.com (esa5.hc3370-68.iphmx.com [216.71.155.168]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id baf04cb0-044a-11ee-8611-37d641c3527e; Tue, 06 Jun 2023 11:15:51 +0200 (CEST) Received: from mail-dm6nam12lp2175.outbound.protection.outlook.com (HELO NAM12-DM6-obe.outbound.protection.outlook.com) ([104.47.59.175]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 06 Jun 2023 05:15:45 -0400 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) by SA3PR03MB7394.namprd03.prod.outlook.com (2603:10b6:806:3a1::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.32; Tue, 6 Jun 2023 09:15:44 +0000 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::192:6bdf:b105:64dd]) by SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::192:6bdf:b105:64dd%3]) with mapi id 15.20.6455.028; Tue, 6 Jun 2023 09:15:43 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: baf04cb0-044a-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686042951; h=date:from:to:cc:subject:message-id:references: in-reply-to:mime-version; bh=hQm8ww9KvzZ1zceAtRyeVFSgfvezweeII5oudbKCuJ8=; b=ABcU4kci5RAyP6MzWnxeaeTDWcpItxXPA9CcDTZ8lutJmVnEN5PurNqV 3sKTvSb6CjAJwarHBPCevnne6qeHfDHOTOBh7L5Iyt+sJ2bFU1GEF9uob RpmL3mZTuoiV3HdSw5gwxRm9UFwOWroC44DCPeDclo3CrUIhgWCvG+MW2 o=; X-IronPort-RemoteIP: 104.47.59.175 X-IronPort-MID: 110493365 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:twFP+aD4uAgPQxVW/2vjw5YqxClBgxIJ4kV8jS/XYbTApDgi0DQHy GQeWm3QPv+JYzb8e4xzO4m/9k0PuMLRnYc3QQY4rX1jcSlH+JHPbTi7wuUcHAvJd5GeExg3h yk6QoOdRCzhZiaE/n9BCpC48T8nk/nOHuGmYAL9EngZbRd+Tys8gg5Ulec8g4p56fC0GArIs t7pyyHlEAbNNwVcbCRMs8pvlDs15K6p4G1A4ARnDRx2lAS2e0c9Xcp3yZ6ZdxMUcqEMdsamS uDKyq2O/2+x13/B3fv8z94X2mVTKlLjFVDmZkh+AsBOsTAbzsAG6Y4pNeJ0VKtio27hc+ada jl6ncfYpQ8BZsUgkQmGOvVSO3kW0aZuoNcrLZUj2CA6IoKvn3bEmp1T4E8K0YIwy8xvHFxz8 MUjdh8rTVOOp8+Qm7K7Y7w57igjBJGD0II3nFhFlGucIdN4BJfJTuPN+MNS2yo2ioZWB/HCa sEFaD1pKhPdfxlIPVRRA5U79AuqriCnL3sE9xTI9OxuvDW7IA9ZidABNPLPfdOHX4NNl1uwr WPa5WXpRBodMbRzzBLcqyrw17SUw36TtIQ6Jey7yKFYpBqqmGUpGk0qVWWK5tf6oxvrMz5YA wlOksY0loA++UmqZtj7QRyjoXSAswIcWtxfCOkz4keGza+8yw+JDG8JZj1MctorsIk6RlQC3 1CKt8nkCTxmrPueTnf13qySrC+gNDI9LmIYYyIACwwf7LHLrIR2gh/RQ9JLCqO5jtTpXzr3x liiqSEkgrwJgM0j1qOl/EvGiTahupjISAEu4gzdGGmi62tRYI+jepzt41zc5vVoMomUVB+Cs WIClszY6/oBZbmJlSqQUKAOEauv6vKtLjLRmxhsEoMn+jDr/GSsFahA7Tc7KEp3P8IsfT7yf FSVqQ5X/IVUPnahcelweY3ZNigx5a3pFNCgWvWKaNNLO8J1bFXeo3woYlOM1WfwlkRqibs4J ZqQbcerCzAdFLhjyz21Aewa1NfH2xwD+I8afrijpzzP7FZUTCT9pWstWLdWUt0E0Q== IronPort-HdrOrdr: A9a23:WlCXJ6izZomWYod5M3i6+IcOw3BQXvoji2hC6mlwRA09TyX4rb HUoB1/73XJYVkqKRYdcLy7WJVoBEmslqKdg7NhW4tKLTOW3VdARbsKheCC/9SjIVydygc379 YYT0ERMqyJMbG4t6rHCcuDfurIDOPpzImYwcHj8kxAZStKL5tNyDoRMHf+LqS+fmd7OaY= X-Talos-CUID: =?us-ascii?q?9a23=3AxtPPSms+63RXRacq9Ic+Uywc6IsUWGXA8UrVGnT?= =?us-ascii?q?mJkBKC7C1ZHnL+KNNxp8=3D?= X-Talos-MUID: 9a23:BQdX2wUXPVkvJHLq/A69hw89BuMv2vqnMlJdrZU4io6qdgUlbg== X-IronPort-AV: E=Sophos;i="6.00,219,1681185600"; d="scan'208";a="110493365" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=l+bZY2lHUOOnXecWHqWGuT8s/fEcYTOyc9c6AVBAw3JNkFdpt0oepI5yH8tiFhTn2IgbtdVaNNgAE0w1HniyYjKcSfip7UD05on6sz+Ew0RNih6WrfYfomTN3Z3oEjua+t0wnjI/PLcthJ6gq++dGeQ+x44HSJR47xkTkYTc5mvxhcgKu+mFgHdtYnMBLty1FC6zgTeGxTE4cRl6zKTx2kXRxS2O+GfKrNrHGvuO1Vq3MP+Qz8RzNE+VKqumbirXjlPbB8TvpjIj6iI39NEFXEHPrc1Cm9aCB4m0h9b7STtJcs5U+pCMXQKPJ3WvsJyHdRsyxL6k1o46aLNzyGsMrg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=GboHwPOgZPWnbvOQ54qadWvGHJEDI4Btv6WWy6d1rJ0=; b=jQeYs+6dGby4ewOKeUWFJNpPfymCUaH2mRWYIqdCxVCrSKyWB9tvRaH5kUiTQpWZ2ZFN2hV2tFEVzZ8VrAVf4Rddarv1nGRWRAlo/hAVjyySxgfdptDogf55k5xvs3dF+ICR5SXa4g6Mgztn5ki4xfkezVF3xzhJS6NmuXyA67gtGnGlRgsLpRQHK3wyXgmrivyk2t/ZfO54XbBtZrdYcYmVglk5cTWARJUBs3+KKUx7imMQqMYsB8/720CY2/wR/zKjCiLpSaVZ7sfephHr+2cvRo+G4GuZzF10mSUMizg3h0rjOgMrxFm0tyKSbxeNWmG7u3xnSVPQcatSi9wB3A== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=GboHwPOgZPWnbvOQ54qadWvGHJEDI4Btv6WWy6d1rJ0=; b=OIXKMh1XlAL5Wc824OYG7c44+Skm02gm2DIThrKuN6D5plB0+HYg0oE0x/G9lxECWQIiwStwtgaCi5itGGxqr5NCXTZ2e+V7Mw4x59010tNTRs6Jps8+/whZFFhRHkWlS/nKN3ao/rgUprp1oBKI9GmYd9BwTubXBtr8sXYha60= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Date: Tue, 6 Jun 2023 11:15:37 +0200 From: Roger Pau =?utf-8?B?TW9ubsOp?= To: Demi Marie Obenour Cc: Jens Axboe , Alasdair Kergon , Mike Snitzer , dm-devel@redhat.com, Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= , linux-block@vger.kernel.org, linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org Subject: Re: [PATCH v2 16/16] xen-blkback: Inform userspace that device has been opened Message-ID: References: <20230530203116.2008-1-demi@invisiblethingslab.com> <20230530203116.2008-17-demi@invisiblethingslab.com> Content-Type: text/plain; charset=utf-8 Content-Disposition: inline In-Reply-To: <20230530203116.2008-17-demi@invisiblethingslab.com> X-ClientProxiedBy: LO4P265CA0082.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:2bd::15) To SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|SA3PR03MB7394:EE_ X-MS-Office365-Filtering-Correlation-Id: 95ab2c26-b2f9-4bf0-ce38-08db666e9af6 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 3PUe+1zMqD3QyVgHFO6fhezAcM/bYjaU8Wfw2MHH7zw8YXr0SQwAgMCScV6UYEcR/1Z9wFYBeDlwTTrOvoCFiY1ZxURFINlCFeoy4Rf1RLa/YMxo+xTkEGp4DzInsyS0idLe7XL2nEDjJ0itHYHFV6P/SZnq71jYyyJZn9dpqdezkNwe9a59H2nsf7+qFcUNu7wbjnHeOH19jouNexQ3U3cthbnnZTAGQn3dAOgQV0jV9yI7J2DDwvfVcUgjXvGXJv0pbuY+rLvM72k6iqfj/1mTyT7jLfbaxe7vsrjnyqd0tGUxNNUnGHm7PlFKtMTdZ19r4yPzwMnq+XqtkgoWOwqIa44ddhfJpbhwN8qkoQPaMPy0t7BQbdR3pI/XTvVbJhaVq7VsFRtMekNYRMq9CbsORo8G+fPY++xBdHQNEgwAVTRnsnRf9y4GP2y369sW8JeMQycNPMynPelFbqsvSXEujLuTEofp1Bv1358kyQDnlya1Ts7w5p6+dyX1N0IEoNGCrIm7CSXniribTQyuq28Q6cTRsYGYVnCbJKEmlIIfijspWfg7nP2B0tYGHOzA X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(7916004)(346002)(136003)(396003)(39860400002)(376002)(366004)(451199021)(9686003)(26005)(6506007)(6512007)(85182001)(83380400001)(86362001)(33716001)(38100700002)(186003)(82960400001)(8936002)(41300700001)(54906003)(2906002)(478600001)(66946007)(6916009)(8676002)(4326008)(316002)(5660300002)(6486002)(66476007)(66556008)(6666004);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?b3JYZmVWZldIU3Nna2I3Rll4WDczc2pRbUd6RkVlRnlwaGYxZ1liWEVPTUFR?= =?utf-8?B?bVZzdTBROHhUNWowQi9sYWZ2d1Q1ak0rdkhXSEFQTzRra2JlalV2cHp1VFha?= =?utf-8?B?emF3S3JTVlRmMDZYa1ZzWU9yU0ZvVHZlRGtYQVdid1pZZENva1VTakFkSWN1?= =?utf-8?B?S01iR3p2MVhsV1ZLV05oY2EyTE1YV0FuUC9HbjhkbDR6SkU0MFB3VG5QUkk3?= =?utf-8?B?Z3VZNjl5QkRLVnd5ZGx3NXQrSFJBMEI3MVB1Ui93UVpuWmFvQldZU2l0QW9P?= =?utf-8?B?TE1mNXRpSEc2cjJBQ2tBYXRZdlY5UWhZcjg1d0NCQnBKUFlubHpqaVJya3Mr?= =?utf-8?B?bUF3R2lzMTRiUlRiTFdSbjI4VGZtUTVwQUNWdFVoSW00VWlSK1VMVVJKUjIz?= =?utf-8?B?MkFNa2hxWkdueGgzK1Y1Tlh5ellXeFFMWWFHV0ZEK3N3ay9WV01zTzBiaTZV?= =?utf-8?B?UzF3dERlbXhkSXdaVEFockU5V3JkRUdYUTNscmZ5T0JKL0pBLzBEd1l5eE9K?= =?utf-8?B?cXFVNU9OZ01LMU92ekk4TlV5aWxnZXNqbjZxcEQ5Mys0NDhFczBDRFBxNUVl?= =?utf-8?B?TzFUMjVvWmt3NkRJV29YbHhMYm1FTG1ZSVJmVzFBRjNZdzB5a2FEK2txNGx1?= =?utf-8?B?bG0zcWtQalF2WUI3SVh3NU1hZkVldUFBWUJnSHFPcDJEOGlKNXFROXFnc1hs?= =?utf-8?B?cmlJWTVCbFNyU3k3M2pIeTA2STErNDdDNGVKdVJjQ0s3eHFYb1l6TFdteGZE?= =?utf-8?B?QzBDVGs0UlQ3VllMTXBTUkh6NHBFYjRPNnVFNGV4c2cwZ0VxOWg2SVBQeFgw?= =?utf-8?B?Z2VrQ04vcHlEaVp1ZlJCOXJ5VCtZTUVQRVUxdVBoVkdTZ00vMWtLUVhabC9R?= =?utf-8?B?S213Y1hFNlZjcFQ1K2xZMHlSa3RWdUpWOHVrUm9ZL2N2VzVrNDY1anNYVUd3?= =?utf-8?B?a0w0c0NKMXgxODczclNUWGo2M2lmRnZEMGZwL0k3RlYxc3FMLzZ1ZzM3cWl4?= =?utf-8?B?dnVwTEZuKzJJbGdRQU9YcHVnbENyMm5UUGowemUybThkWGo1NXVUeTA1ditm?= =?utf-8?B?MDFNdkxlRTNGdEdiZU9ybTF6ZTVsMHFWL2JjbUppQldKYXJYY3c4REYwMmFK?= =?utf-8?B?b1ZsSGdZNlc4S0o4dkwzTWQ2dnJ3TUNRSExIclN1NzJOZnBLMHEzV25lSXlV?= =?utf-8?B?c2tPbEVMQkgwTURiaHJwc0lBQjk0bnFQMEkzVnNleGZNSlRSc01pbWdKeDZL?= =?utf-8?B?VWpISWlsamJWWDE3KzJZVml6WEp5MzJsNFhickxaMm9rOVpIMVh1dHNJWmlJ?= =?utf-8?B?ZXAzQ0cweHBvYW55UUhqRDFqc1UxcVhMelRJS3dqRytkQjV1a3dCVHY2dURr?= =?utf-8?B?VzM3RHdvMW03enR5U3cwSUNFSVdSeVdXQXQ3eUpnZmtGMTliOWZxaFZGKzM3?= =?utf-8?B?YVZLdzRpNlB3YUFUYzd5RjUwemdlQy9Ia3BWYk5Tc3NIMmdmVTFKd2ZWakl6?= =?utf-8?B?eDJsbTdNTE4xRk5TU3FGM3YyMU9HWGh2VFZmT0Vwd3Y4VDIzc3dDdTBRNkFR?= =?utf-8?B?dHYwWllxcTgvL0NoME10clJsWndSbU9zSTRpaVViSlNRTDdGUG1xRHhnUXAy?= =?utf-8?B?WktnVTdVTGxCUDhFdU1sY2pieVk4ZERXVldEUm1rYlFmRzJVcDRRcE4zc2dq?= =?utf-8?B?SHE1U0Q3ZG9GQUhjanRGMmd3dnhGTmFWVlZ2TFVLTG5sRGVpb0syeHF5RXlQ?= =?utf-8?B?VGxUU090amVjbUd3UlM5OXpqSCtSRVlKaVR4K2VVWnIyaEhIbWtpY3RXSkw5?= =?utf-8?B?UU14Q0NSV0dnM3I4WW92Yk5RSDNXZFBKeDZMMkdSTzc1MUdjWkRYUWZQdVND?= =?utf-8?B?bk1nc0xGWFhNYnRGc0JkK09DaUFnWElzY1NVYWV3RlJrUGFoelhyNE5FSG5C?= =?utf-8?B?L1ZTSGdZRzJ0aUdZcnZpMUx2WitheW42NUpJZnFhc0I3Q0QxVjlPNHUveFlU?= =?utf-8?B?Tm9UK2xzZ0JJdkVGbks3S1Rhdm51aVduY0EzYk9sTUxRSU82REJFQWNzMkRS?= =?utf-8?B?L2M5SFJkdG1NN0J6NEx4Wjk4dHBYdVpyYkdpTEhpN0M4dk5Ua3lRZVVhQlZG?= =?utf-8?B?TnVaa3dZMFZHM3E5T0tvQzdlSUlRVUV5QmYrWHZ6Y2NkUmtRS1VoeFlRbUpC?= =?utf-8?B?MXc9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: =?utf-8?B?VmtScTRhaGgzTHI2RERLUU5HTnV1aW1XOGU2VVBzbkxQU0dEWGxBN1VBK2Zn?= =?utf-8?B?TFBFb3JzWnp0NklTcU5JcVJMc0FIZSttczVCa1lNbTNmdkpPbnhTK200RnRj?= =?utf-8?B?M0g2Rm9UVWR1QXZ0MU44ZVJRMTZRakZrVUgzOWVnU1FtQmZDNk00Y0h3NmMr?= =?utf-8?B?SFNBdFlFUFNrZ0JOUXQ1UmVxSXE5MW4xV3RCOXpMK1VPbnRjWjVLVVJhZ0Ft?= =?utf-8?B?SExIZXZ3SysrQnJLQ21EMFdXOXhncEFKdHVSdk5VbEM0RUVrbkdkeEVJaUgx?= =?utf-8?B?ME9tckxaZ3k4WGxYYWJrQUs2VU1TSjZQS0FVSVhVaFdFSmxtVTU2VHEyazlT?= =?utf-8?B?ZXZJNExYbnVzd1FLVTlDVUpQYjQyWnBKM0c4UXpoVEFOQ2Z5SGVMU2ZrdDZj?= =?utf-8?B?dWM2THMxQW5raTZWZmJ2OTBkQ0JJcWFzWEtYYXl2MThqZzMwTms4elhIZVNp?= =?utf-8?B?VmJheUg0cXl2cUNpZEU3NG9DWWVyQVQxc3hDZDRreXh4VURsbkxhTlBhMzZD?= =?utf-8?B?cENTQ0pIU2ZON1Q0S05ha3hYU0tvSU9rZEtPU2ZnNDQxclRSWmVGVmVvb3Q3?= =?utf-8?B?UWR6Y1dobFFSKys1QnZBOE45V1poZTd6eC9yWXpWTDMrVHVGNnJBdk1EODEr?= =?utf-8?B?QUNLTUhTblQ4eXdiVXR4YkoxNitGYXV4cGdTNDdDYlFtU21xditBZ2R4aVV4?= =?utf-8?B?QzhsR0FudkhrcXpLV1lzNVFQMGQ1T2dCeUc1dkk5bC9BZjAzV3QrOXdXRm90?= =?utf-8?B?RkdFR01iMGFkckdDNTZveFM3S0V0R3RRb3NVOHVPaUNUUnVLMzRlaDg3ZUtE?= =?utf-8?B?c2k1ekVhNE44b1JYcUFnaWxQL0gxRmkzYXVjbHBmWGN2WVNiR3lPUG10c1cw?= =?utf-8?B?NU8zVExQeDh1U3JPSlFMWFhjcjFBNEZhNW5La2xIUGVpenJGeHpQckk5K2ww?= =?utf-8?B?eTdqNFlXNDZPNU5FU0JsSjJ2M3gxbGlpR05hOXNaTnVNT09uTEF1UUlld25N?= =?utf-8?B?UzBBQkE3SWZ6ODZkMW5PdkFXblNhdDk2WWRNRXBRZkFLNWFNL3JuMGhpUzF5?= =?utf-8?B?MFo5eDdLWUpKNk1Gbmllb3BpN01PK0hEdVBLUzkwVVMrQ25yRVNWcVN6LzJJ?= =?utf-8?B?dEZaUU9waVBwdFJOV2dhcWJQck9GZVdaWlJ2Rys5NGtLVVhsd1JwMTNwQ2lM?= =?utf-8?B?eWxQTW1Ka29RQW5XWTV2NXN6cFZKV3lWUlJkWDJkRUhObVF2TlV3UHQzNm5I?= =?utf-8?B?aUJIRU5UYk9QbHlsRjYrRTVEN1VaczFRa0lKVnVONEpRbDBlUT09?= X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 95ab2c26-b2f9-4bf0-ce38-08db666e9af6 X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Jun 2023 09:15:43.7191 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: A/wR9kxavpL6p9/NdiBH28r6NgTUXo1biskNZHCNIIAYKBs2MyFyyhWT3ezY6MOC++Lg7+8vNd3vDJd9ii54LQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA3PR03MB7394 On Tue, May 30, 2023 at 04:31:16PM -0400, Demi Marie Obenour wrote: > Set "opened" to "0" before the hotplug script is called. Once the > device node has been opened, set "opened" to "1". > > "opened" is used exclusively by userspace. It serves two purposes: > > 1. It tells userspace that the diskseq Xenstore entry is supported. > > 2. It tells userspace that it can wait for "opened" to be set to 1. > Once "opened" is 1, blkback has a reference to the device, so > userspace doesn't need to keep one. > > Together, these changes allow userspace to use block devices with > delete-on-close behavior, such as loop devices with the autoclear flag > set or device-mapper devices with the deferred-remove flag set. There was some work in the past to allow reloading blkback as a module, it's clear that using delete-on-close won't work if attempting to reload blkback. Isn't there some existing way to check whether a device is opened? (stat syscall maybe?). I would like to avoid adding more xenstore blkback state if such information can be fetched from other methods. > Signed-off-by: Demi Marie Obenour > --- > drivers/block/xen-blkback/xenbus.c | 35 ++++++++++++++++++++++++++++++ > 1 file changed, 35 insertions(+) > > diff --git a/drivers/block/xen-blkback/xenbus.c b/drivers/block/xen-blkback/xenbus.c > index 9c3eb148fbd802c74e626c3d7bcd69dcb09bd921..519a78aa9073d1faa1dce5c1b36e95ae58da534b 100644 > --- a/drivers/block/xen-blkback/xenbus.c > +++ b/drivers/block/xen-blkback/xenbus.c > @@ -3,6 +3,20 @@ > Copyright (C) 2005 Rusty Russell > Copyright (C) 2005 XenSource Ltd > > +In addition to the Xenstore nodes required by the Xen block device > +specification, this implementation of blkback uses a new Xenstore > +node: "opened". blkback sets "opened" to "0" before the hotplug script > +is called. Once the device node has been opened, blkback sets "opened" > +to "1". > + > +"opened" is read exclusively by userspace. It serves two purposes: > + > +1. It tells userspace that diskseq@major:minor syntax for "physical-device" is > + supported. > + > +2. It tells userspace that it can wait for "opened" to be set to 1 after writing > + "physical-device". Once "opened" is 1, blkback has a reference to the > + device, so userspace doesn't need to keep one. > > */ > > @@ -699,6 +713,14 @@ static int xen_blkbk_probe(struct xenbus_device *dev, > if (err) > pr_warn("%s write out 'max-ring-page-order' failed\n", __func__); > > + /* > + * This informs userspace that the "opened" node will be set to "1" when > + * the device has been opened successfully. > + */ > + err = xenbus_write(XBT_NIL, dev->nodename, "opened", "0"); > + if (err) > + goto fail; > + You would need to set "opened" before registering the xenstore backend watch AFAICT, or else it could be racy. Thanks, Roger. From xen-devel-bounces@lists.xenproject.org Tue Jun 06 09:32:11 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 06 Jun 2023 09:32:11 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544030.849497 (Exim 4.92) (envelope-from ) id 1q6T2l-0004pI-D5; Tue, 06 Jun 2023 09:31:59 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544030.849497; Tue, 06 Jun 2023 09:31:59 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6T2l-0004pB-9y; Tue, 06 Jun 2023 09:31:59 +0000 Received: by outflank-mailman (input) for mailman id 544030; Tue, 06 Jun 2023 09:31:57 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6T2j-0004p5-LW for xen-devel@lists.xenproject.org; Tue, 06 Jun 2023 09:31:57 +0000 Received: from esa4.hc3370-68.iphmx.com (esa4.hc3370-68.iphmx.com [216.71.155.144]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id f849fc68-044c-11ee-8611-37d641c3527e; Tue, 06 Jun 2023 11:31:53 +0200 (CEST) Received: from mail-dm6nam10lp2100.outbound.protection.outlook.com (HELO NAM10-DM6-obe.outbound.protection.outlook.com) ([104.47.58.100]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 06 Jun 2023 05:31:46 -0400 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) by BY5PR03MB5185.namprd03.prod.outlook.com (2603:10b6:a03:22a::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Tue, 6 Jun 2023 09:31:45 +0000 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::192:6bdf:b105:64dd]) by SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::192:6bdf:b105:64dd%3]) with mapi id 15.20.6455.028; Tue, 6 Jun 2023 09:31:45 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: f849fc68-044c-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686043913; h=date:from:to:cc:subject:message-id:references: in-reply-to:mime-version; bh=ISwr5pLnx+KVs4/aSKQGczMDa7TyI/v7QaZg14newLg=; b=Y3XKRAzl4ro7hoaL9AFUrjS5IEHYJeYxWqCkRbCCTXAeIOS/vNio/Br3 F5mqXqigqVAykVnk0kAm+acE2EapwcBqZ48s3t7iM6E8TLaVwp38NLvwB I1Pn16JVZ35jhd5tysPIh9C5GYe0dDSDsMMGj4xJPvbZJ44YzP1fRwIPp c=; X-IronPort-RemoteIP: 104.47.58.100 X-IronPort-MID: 114245531 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:fE+MMaJMMixCJeQdFE+RWpQlxSXFcZb7ZxGr2PjKsXjdYENShWRTn zRKUT3TaPmDYmChKYojYYzi8UJUvZDRz9dnTgFlqX01Q3x08seUXt7xwmUcnc+xBpaaEB84t ZV2hv3odp1coqr0/0/1WlTZhSAgk/rOHvykU7Ss1hlZHWdMUD0mhQ9oh9k3i4tphcnRKw6Ws Jb5rta31GWNglaYCUpKrfrbwP9TlK6q4mhA4ARgPakjUGL2zBH5MrpOfcldEFOgKmVkNrbSb /rOyri/4lTY838FYj9yuu+mGqGiaue60Tmm0hK6aYD76vRxjnVaPpIAHOgdcS9qZwChxLid/ jnvWauYEm/FNoWU8AgUvoIx/ytWZcWq85efSZSzXFD6I+QrvBIAzt03ZHzaM7H09c5OQjtu3 tM6LgkEdy6+ndimm+ilcfZF05FLwMnDZOvzu1lG5BSAVbMKZM6GRK/Ho9hFwD03m8ZCW+7EY NYUYiZuaxKGZABTPlAQC9Q1m+LAanvXKmUE7g7K4/dnpTGLlGSd05C0WDbRUsaNSshP2F6Ru 0rN/njjAwFcP9uaodaA2iv12rWTwH6gAer+EpW4q+8tqWOV+VVJFT8OdUSwoOa3u3OxDoc3x 0s8v3BGQbIJ3ECmS9jVXhumoWWFtBoRR9pRFeIh7AiHjKHT5m6xD3gOSTNpa9E8ssIyAzApv neMlsnsDCZis5WUT2yc7baeqT6uOSkTInQGbCVCRgwAi/HzrYd2gh/RQ9JLFK+uksazCTz22 yqNriU1m/MUl8Fj/6G6+03XxjiooZPKZhA66x+RXW+/6A59Iom/aOSA7Vnd8OYFL4uDSFSFl GYLltLY7+0UC5yJ0iuXT40w8KqB4v+ENHjQhABpFpx4rzC1oSf7JcZX/S10I1pvPoAcYzj1b UTPuARXophOIH+taqwxaIW0Yyg38ZXd+R3efqi8RrJzjlJZLWdrIAkGiZas4l3Q IronPort-HdrOrdr: A9a23:fBW7n60WBGF25NkYu6cLdwqjBGskLtp133Aq2lEZdPU1SKClfq WV98jzuiWatN9vYh8dcLy7WZVoa0m9yXcN2/hzAV76ZniFhILKFvAG0WKd+UyFJ8SkzJ876U 4IScEXNDSXNykdsS+Q2mSF+rgbquVuBMqT9J7jJg9WPHlXgyoK1XYDNu4QeXcGPjWvvPECZe eh2vY= X-Talos-CUID: 9a23:RQ7Tbm/5/btc5Qzuro2Vv3dXQOAOXV/b9X7JHXKiM3YyEqOuVnbFrQ== X-Talos-MUID: 9a23:1svaLQZVFejAN+BTt2L9wxhcMvhRubmMEGASmpQZtfi5Onkl X-IronPort-AV: E=Sophos;i="6.00,219,1681185600"; d="scan'208";a="114245531" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=C3wBVpXWQ2jCuDXyzM+UrUwvj08CYwnX5AmXkaDwoe+gwi7/wfIFKY+nqinHBo9LWGeBMthjZXCzzzEeZRC2qc4ptC3jnOXGaGdziunbV0bzuVLcJROtUald4Cakjtz78msv/aI6L3tKFSWTo1rGOHUqMiw81aQhdsBbzas9zcX4+u0SL3abAMvmZe02K4DxSW8Lem1E7uXfXsymHGJMhaVXr2COp4rBIpESJbJoZ1PL1Ha5wGRa8I/DSGuVdg1UUqADF4eO9DPx8fWZ1fMGp9MBmcIDcNzVovwSvGL34hPeMO5ArSo5CGHj8NGU3mkYHXHJ5U0e0HJE1VpDlIrr0g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=7y0AfPQUaAYEG5/DSaQELeK11LYYrC/sN/QbeNZOm4o=; b=m/nnpbN/udlV7o5QUW5e7nyVN0YKUbhh3pjosBDl/LyeXs3m66k1E/XSN3xXbtkFFDpnCxk78oUHsrkJfo4c6cJT4zHX7GThl9TG03iwb0EjUdg3dLBzvWw/Eaf0nUA64DHqTXsnBTc1ZJDVqhy9ARGTMOENAcTJz8W+tzSQ5DWC0MycjYA8uJ/u/0px/JNy8BbghMoGlSg5HvU9sTWQCSUTqKFMO30tmO4VseMZC5HqF5uu02Ugk1fI4Us3dliXM8++mvieQqc16rOvvOlIo+TFbSXcH2GtUs62uRM8Q/mRu7uJm8yVsrABJQJ5BqXG5s60NWg0aZCXw0VmV4/LQQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=7y0AfPQUaAYEG5/DSaQELeK11LYYrC/sN/QbeNZOm4o=; b=kGkHeZiDEIecc1KMydbEVogCSskMllGCtFXSnVypyRu/dgOQjjuVI9hZamRxYwUrzPmz9tpWPKK/XHMPhLsKtnU4Xgu9XaXoNPdApJYtON07TKSJ0TII3zwIUnMMdCL8VFwJDzNcjxdJEDshg7HRLNkdPhnPYz473ec339S/8Fo= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Date: Tue, 6 Jun 2023 11:31:39 +0200 From: Roger Pau =?utf-8?B?TW9ubsOp?= To: Demi Marie Obenour Cc: Jens Axboe , Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= , xen-devel@lists.xenproject.org, linux-block@vger.kernel.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH 0/2] xen/blkback: support delete-on-close block devices Message-ID: References: <20230601214823.1701-1-demi@invisiblethingslab.com> Content-Type: text/plain; charset=utf-8 Content-Disposition: inline In-Reply-To: <20230601214823.1701-1-demi@invisiblethingslab.com> X-ClientProxiedBy: LO4P265CA0022.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:2ae::14) To SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|BY5PR03MB5185:EE_ X-MS-Office365-Filtering-Correlation-Id: 694bf4b9-878f-4473-539e-08db6670d7f5 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: ECqjWM/NBZKJPGT9lfOZ+fd8hmQLM4VU65Xk76l6kBO1y5omguaMpJPDATlkzrMdwyZH8tQdC9XkVwH9Lg6FPRYe2rcVshjuCy7f6Uh2OA+t++k4dO86nWoyCuMps6pNIlJdAoxd3JVgNukGCB5klFBQnBuRYyoXj23N71qB06NfoP8CIw3DtraFUgA2Xl4hQshWDZO0pKXmrE3tDr0cQQqEaIzqPLZvlzOJubQUWVlq0LfPcAS9NOj7YzR9Fh3i34x6eT4N0gqLRgQV48n4hPY8fHidEn3maEArB7j9ekEjxUdHdd+MvjVWMuPXNVDNiYf6zJo2kad7RBzq7A3p2Tsvo0or5N+hZPiURmFCk6xx9vmvNL4wjjJapA+ekhONZgXPwvNpQxW25b1s3Umz1XEimEOT2BBvLZCdUI7R2VkaCLKIg30mcny2BygxemedPbt75wAh4hmrs+Yr6s96cW8SNfqv+8hLxpX8tdLUtPp9uKXmwoFBDb/xmaF8XGBydRXp+oz0jm27+PKqBJHesczgq0GrAJR0nf+JeD1ipJOiMqxBRroNrHE/edU6h9Ho X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(7916004)(4636009)(396003)(376002)(346002)(366004)(39860400002)(136003)(451199021)(186003)(9686003)(6512007)(6506007)(26005)(83380400001)(85182001)(33716001)(86362001)(38100700002)(82960400001)(478600001)(41300700001)(4744005)(4326008)(2906002)(6916009)(5660300002)(66476007)(66556008)(66946007)(54906003)(6486002)(6666004)(8676002)(8936002)(316002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?aUo0UkhqS1c4d0ZGclEraGd3dWFWOEpnMlBhdUpNQzR1VmdsT0NNUzBtTXov?= =?utf-8?B?ZWV3S2hQMWozTTBhaFdsZFI4eFRBV3NlaTRwbVJQZ21IUk5MQkx5NUlrNUJS?= =?utf-8?B?T0JIdDJlNmFGSklqZmhmazA0dXVyd2xCaDU1dHQzSUIycTl0Qkd5UkxLY2Q5?= =?utf-8?B?YWcwNGxPZVArUzFYbmViT0YvZnF6MkpSKzZ1cHhYeFUwc3ZoY1VmT3JjUFJQ?= =?utf-8?B?U2hESHNtTHlORTZWd3g1YnA3ZjdFbTBJcURjaE84aGR5RUtYYkY2WkJWWFJq?= =?utf-8?B?UzRnaU5tMHg0RjJFK3ZrRkV0ZHNHazY3YjJOdHlocnYrV3ZrS2dndklXa1Fh?= =?utf-8?B?N0tub0lpa2NPbkdDUEp5R25iWU05U0lnTTR0Sm5VaytjTGNKWVd3TE5qV3pC?= =?utf-8?B?YUJxSzFNYzNNdUxXYmlVd25hQndIakg5Q1dzaHI2cnE4UFBFQUI1Ry9LajlL?= =?utf-8?B?Qlk2UVd4WHpjZjUvL3RWVklzbjErNXNjdDY4a3JESzZkQmxHQWpMc051TVhm?= =?utf-8?B?elk3U0NzOXpDTmV3aURnV0ZpYWJjWDhtWFd4TWZxQXRGNnlBU0Jwd1hxbnBB?= =?utf-8?B?V1VTbHpxS2o5SnhsbmxFTnQ4dXYrZGJOZDFJRU1zMGJEV1ZLWno3L05ST1Zz?= =?utf-8?B?clJ0bGY2Y1pieDBKbEppS0NxTjIrcmhCaHdHajFZNDcwQXowR1JwMGZVV055?= =?utf-8?B?NUltSFBKcE03UXhBQU1yVVN0THZaeVVBSzhycXlkZWtoS3ljKzBDOVZucGV5?= =?utf-8?B?Y1NjNlJ0NkZYTlc2N3dWWWhvQ3ZLQ3JtN09KS3pOZWQ3czFUa2Y0VWwxZEpH?= =?utf-8?B?ditiTEZoMXJRclliRFVDTWkvK2pERGRaSmtmdDhNTEE1SWRjenlqaWYyUXQ3?= =?utf-8?B?cDVya1BQVDdqOTVyeDE5VDAyNDMzRDNnVG8rMzhJSzJoWFVNVjZmK3pveGNa?= =?utf-8?B?NnNjOGhBeU1hUEJQb0RVRys2MXIxQTZxYTduZDdLbjVRWTF1czUvL0wxUzM0?= =?utf-8?B?WjR6bGRlQ0svcmUya0I4QzZpUUZ4Wlc3T1ZlcG5QMzVEV0x4RHR1a3ZVM0Na?= =?utf-8?B?OFhDOEkzOFdleFkwNW5pUTdKZHFkMEdETitPbzJGcTN1cVF3d0ZYOVpSUWwz?= =?utf-8?B?NjhuSG9HOHZXYWtNdEw4eVpESkg0bTRHUVduNXlGeXo5WWIzVk1FUkxDcXZs?= =?utf-8?B?dUFLWnYySGNqQlhqVTB6U004MngrTWpiV0VQVkhjQ0hsdDM5ejRGYURhbU9y?= =?utf-8?B?NWY2U0hoM3B1bGNINDZQdHl3bFUvTTYzRGlJY0EzZjZOTTAwUkpzODNRcnJ5?= =?utf-8?B?N2RtVFhrZzVFUGxVTGNYckJlRkhEM1cvZ2ZuaUpCTGI4Nk1YSG1MaUxQNmZN?= =?utf-8?B?TGhiUXRGbHZsSmJHOEN1aFF4TjQ0eHAwQTBwNTFYTHJoYjVIYXpWYTFuTC82?= =?utf-8?B?d2NPR0hpMDNHUVZPSDdwd3ZTMk5HZFRkcm1valFBak81dWwzek52MlVnaGRX?= =?utf-8?B?cEJUMHVrU2Y1L3F1VTVVcHRibE1nMDhwUGs2WkNBZnZFM0JtamkzZGlndjds?= =?utf-8?B?MFgzMUR2RUhnMEM3STBSZWYzKzE5dXFYdFNTbEhGTG9sdVRBWm56MlBiQ1cz?= =?utf-8?B?ajlmTlVtaEV3YmlMN2I3QWh6eFMwckttejhsR1hSdGRzR3dQUUU1ajFzTS9i?= =?utf-8?B?UGluU0dGT3ZZVjY5NkNlRkZIZnRTdDlwOEtuajZvRk5WaEhZdXZBaEloS1Fv?= =?utf-8?B?NjV1YjJ6M05KcmxRS0xPeWhTRFRsNjRPd0huVUZKV3hDbnZncDNIaW56UFpu?= =?utf-8?B?OGNUT2RoeDBGTThEdVlZOU81WEVDQTBub0ZESFJlSG5XdkxEU1MzbFZxUkw4?= =?utf-8?B?aEVIMjdPdHdqVUhlSkFOaUVoL01lcm0yeUh6alFya2picjhubVlpRGtKS25L?= =?utf-8?B?eWtTdEpudGZoeGxNMTZERXlscW5zRy9MSFRPc0tyYmt4R3hMa1hoK0p5a2xD?= =?utf-8?B?Qk83dU05dUk5NTlWcFNYeUd2dXA4VVZBSWxrdm42WmxqTjNvak5HeG1aZElB?= =?utf-8?B?SVJHK2pjVGFSRC9JTnNaaFJNdFVMT1ZWTFlOZ1E2aTljUi9YNmdMUWlXZGd2?= =?utf-8?B?N3NXYzQzaVM4eFJsVVlxb2lNQzZYenB5VVQ1dkQ4QzZXaUI2M29FUjVuLzZP?= =?utf-8?B?QVE9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: wITBy1k8Z0oAyIO0FAhMSlc51c5u6hGRxAb/Gywarw3hKv8l1lTNnKYtzsZp5KaRd4IeKVB70dRym/doBD2YIg2YWQCXS/Uvam1AhjUmFPKC2jmUni6f/Seuh/aXCwGXaAGCOzLYUFOruFNpfbx7FprKlAGVorT9tyTm9G7d5ytdQVX4Xk3OEjIbLat4qfIbsc0SyuAhiKhlvxKYADOJSizVIR1Hd9K+AeFc4tP15GTWDEksEvuqrXmovLydcgcYs8vHnXLFlwfIeqkY3Ym0La+aM3ghSyc7Ro2eXDTCNIMlOnVICIs655bWkAT2qUrMI/ME6H6dGwZc+9EkdX+uu4k9hq7x0qREYtjqYlfR8hh/f7V9r8dpV0YAaY1k7/Yde8ArE1NfRrKzeIuAFUFUEihJvEQdj05vugx4QuR6h8iNy2Ku6lJU5GAInRrQYDQNjZTwOvljqJWfwQc3TF5Ei75yWx29ypaH9lU9hTZEclu+IE1mjXj0C+tRtt2qll4lvAHR3z5IhSW5FGupZyH6O7v3fRFEj/IKNBcCBgxpc+gmGPaxpfLI+wTKR2FQ/rVr4wL5IDfMeCrbsNB0rfhhzAVTAoN0fwnHBtoZaCEYoYXSvegoJcbYbltbPhgBFohsF0OB1dE+aFUxnpmBrOv/KBXCRdsrzUa2XjLSzKJcqkSZwd+N0XvxoIVdkP1wO/ijT6x705V/qsyIWKP3lMc1El+XX7oFnOgxj6EPDy0HPQjU0pigu/EvWS64C4nUyTrPae4+NpbiRzTdDaRxP4BGv9v2fCtShMwWkEKBxnLRIQqPDZ4w9njxkWn+k+pO5F8lxLLtpIi6QRaPkz8aNz1EYDY+PY81LmMlnEf+Cr0iyMDH6UOFOheX6+O9abcHbidp1floHHuvCKmsvIhTFBeNuw== X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 694bf4b9-878f-4473-539e-08db6670d7f5 X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Jun 2023 09:31:45.0646 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: iGSgujOwIp+nxFmnMIJAE7FBjbvXThFXF0UjwqL12hMUd2bP9QMVuBX4vH4BlqI24zyP2RMfw8XfXi7AyIR1vg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY5PR03MB5185 On Thu, Jun 01, 2023 at 05:48:21PM -0400, Demi Marie Obenour wrote: > These two patches allow userspace to provide an expected diskseq of a > block device and discover when blkback has opened the device. Together, > these features allow using blkback with delete-on-close block devices, > such as loop devices with autoclear set. I think I've already commented on those as part of the previously posted bigger series "Diskseq support in loop, device-mapper, and blkback". Regards, Roger. From xen-devel-bounces@lists.xenproject.org Tue Jun 06 09:35:44 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 06 Jun 2023 09:35:44 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544036.849509 (Exim 4.92) (envelope-from ) id 1q6T6D-0005Qk-Sx; Tue, 06 Jun 2023 09:35:33 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544036.849509; Tue, 06 Jun 2023 09:35:33 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6T6D-0005Qd-Pt; Tue, 06 Jun 2023 09:35:33 +0000 Received: by outflank-mailman (input) for mailman id 544036; Tue, 06 Jun 2023 09:35:31 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6T6B-0005QX-St for xen-devel@lists.xenproject.org; Tue, 06 Jun 2023 09:35:31 +0000 Received: from esa1.hc3370-68.iphmx.com (esa1.hc3370-68.iphmx.com [216.71.145.142]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 7818c3de-044d-11ee-b232-6b7b168915f2; Tue, 06 Jun 2023 11:35:29 +0200 (CEST) Received: from mail-co1nam11lp2174.outbound.protection.outlook.com (HELO NAM11-CO1-obe.outbound.protection.outlook.com) ([104.47.56.174]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 06 Jun 2023 05:35:25 -0400 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) by DS7PR03MB5573.namprd03.prod.outlook.com (2603:10b6:5:2d1::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.32; Tue, 6 Jun 2023 09:35:24 +0000 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::192:6bdf:b105:64dd]) by SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::192:6bdf:b105:64dd%3]) with mapi id 15.20.6455.028; Tue, 6 Jun 2023 09:35:24 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 7818c3de-044d-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686044128; h=date:from:to:cc:subject:message-id:references: content-transfer-encoding:in-reply-to:mime-version; bh=l41kf6PzgxIYGKJkCBeSwWbzL+Vl3zeOfe2x3fUnmLY=; b=eAdK1ZYXQdghrH35TfA5W+0vQWY31KOKwhhLq0YNmRvKUlVLpCNxJuc/ Ai0WSB9oq+IIbd+9aXfw5bbFmM6FT77OYlWkIZ++/jodTcDv0C9HydB4d XZOJ4+aGTy2uMVkp8w61N7WHUp9aQE+nPL+pWZ9DLOkFKMaC2cCalGwgJ U=; X-IronPort-RemoteIP: 104.47.56.174 X-IronPort-MID: 112156254 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:mHut6qJ8SIGdPopGFE+R95QlxSXFcZb7ZxGr2PjKsXjdYENShTRVz zdKDWuCbquONmqnet8iOoy0oRgHv8XWmtEySAZlqX01Q3x08seUXt7xwmUcnc+xBpaaEB84t ZV2hv3odp1coqr0/0/1WlTZhSAgk/rOHvykU7Ss1hlZHWdMUD0mhQ9oh9k3i4tphcnRKw6Ws Jb5rta31GWNglaYCUpKrfrbwP9TlK6q4mhA4ARgPakjUGL2zBH5MrpOfcldEFOgKmVkNrbSb /rOyri/4lTY838FYj9yuu+mGqGiaue60Tmm0hK6aYD76vRxjnVaPpIAHOgdcS9qZwChxLid/ jnvWauYEm/FNoWU8AgUvoIx/ytWZcWq85efSZSzXFD6I+QrvBIAzt03ZHzaM7H09c5oIkpP5 8ESFgonVQC7gt2r2ZeqTLFj05FLwMnDZOvzu1lG5BSAVLMNZsmGRK/Ho9hFwD03m8ZCW+7EY NYUYiZuaxKGZABTPlAQC9Q1m+LAanvXKmUE7g7K4/dppTGMkGSd05C0WDbRUsaNSshP2F6Ru 0rN/njjAwFcP9uaodaA2iv13LaSw3mmBOr+EpWA+NVD31ij+VAvKxMWclq0nPaJp2GHDoc3x 0s8v3BGQbIJ3E6hQ8T5Xha4iGWZpRNaUN1Ve8Uq5QfIxqfK7gKxAmkfUiUHeNEgrNUxRzEhy hmOhdyBLSNrmK2YTzSa7Lj8kN+pES0cLGtHbihdSwIAuoDnuNtq0U6JSct/GqmoiNGzASv33 z2BsCk5gfMUkNIP0KK4u1vAhlpAu6T0c+L83S2PNkrN0++zTNTNi1CAgbQD0ct9EQ== IronPort-HdrOrdr: A9a23:UT9ARqE5lPvwCnzBpLqEMceALOsnbusQ8zAXPiFKJSC9F/byqy nAppsmPGDP5gr5NEtApTmrAsm9qArnhP1ICNAqTNWftWrdyQ6Vxf9ZnO/fKmbbakrDH4dmvM 9dms5FebvN5DNB4PoSjjPTLz7VquP3iZxA/d2ut0uExmpRGtpdB40TMHfgLqXOLzM2eKYEKA == X-Talos-CUID: =?us-ascii?q?9a23=3Aeh5MpWu35qBZVisBIy+mu5RV6Is6UVbc3kraHXW?= =?us-ascii?q?SMnZRTYKIUHqB/vtrxp8=3D?= X-Talos-MUID: 9a23:9sqzTAhj3do8PcvCFK7hecMpDMlDyvurOH8xrbYIu+6FOhF/CxqytWHi X-IronPort-AV: E=Sophos;i="6.00,219,1681185600"; d="scan'208";a="112156254" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Gy8e+Lnm0TFnD1t4jvcj4elntn0XNClVkyBQNd3nIy6AXAM9VKzMFfpuL2Fi9V37qOgv+ATQ8De2208oe/iNksAuDdAwimbtxCKeCmnj/vJSNX3vPxbIIlbhKaV5mqnLXweVyhSiSDHGo3f+KUSwpxOz2tGk/Cd522z6JVIe29xp983Vx7W42JJrfXPgX/e7SwuVNfRgI/KTvZqpmc7rGLN5oVy5vJsypywoMZYVB+ZUuDQobz2PlnTCeEiE0FiFcAudzM9oEMyjJTlObpWgwH+0RQ2i5Kszl5xktwdzEXxqzawcQt31xUs2Rrna+6npNmUhTAlBt2E7aM1vzzqaTw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=74QDny3FJUbcux5HKD1saecs2YtDmkfbXZauTFG4qyo=; b=a63LMQhVYWt8lfrdwo4dDSIQilZxX6VV3HyfOESBpS6AvZYcqv5ZyKBtvCitSccaX15hWXYo/C2IQITV16dl7GopgO8FD2M2xOsRQugtbe8QKJxhs+zl/gmqr/yvcpOkhTiBM58e9u5TU/x5i53u3eqaYyJPeyIKbS4Rb4mHSW1kKDGLStETHD1RWLS7zIIz4U7ZXlM/XBcvFv0mlWcMo+0WmyCjCUA19Esx70Qtw7szqbQpM3rXGLm4IL/R8yxUkBINW8MsUNHY0IBzDFQJPtnegSRPmLzJfpOEjveNo/Dx/QJUQsf04Cs5qh/bv+M5ZL/X5SymJdvOd6ub4IWJ3Q== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=74QDny3FJUbcux5HKD1saecs2YtDmkfbXZauTFG4qyo=; b=wMKwTKBV0/EW6IExd27rcP+lOKclgzlNUMtp8vu8rNs9q/m/pA0Jv+BLO43pOekB5evjBJhiK1vbpwREUbPYk4TfeLlZCaavTJKuk04eL2nt8ruDN2diMLzC7xXHu+jprea5K2CL7EsrijGRLEcb1MnZqnlCQLaOXEKe9/SNu1I= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Date: Tue, 6 Jun 2023 11:35:17 +0200 From: Roger Pau =?utf-8?B?TW9ubsOp?= To: Jan Beulich Cc: "xen-devel@lists.xenproject.org" , Andrew Cooper , Wei Liu Subject: Re: [PATCH 1/2] x86/vPIT: re-order functions Message-ID: References: Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: X-ClientProxiedBy: LO2P265CA0176.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:a::20) To SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|DS7PR03MB5573:EE_ X-MS-Office365-Filtering-Correlation-Id: 8ba0debc-fe73-4310-ff5d-08db66715a77 X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: ky328J+c+pICtEuEveV6+YLx0LRCaRIIRQ+OvAz6vnmLvVYYL3z18qWeq4lYaVrUKskns3exSKDHn8Wh+sX9NkmIqxS4jUMudGsFc6ee9UX4V1ouVr0j4ZiVoO9RcO6Yq5ZllsVvwwwA1K6OTxBQjakzPeQ7n66ooYTZ+DpSGYe0MT6KV5qdld/zwYZI53sAJfsiwDVZ4scKRTlq1RzUczoYkpY9sneoCgkIrV5sW8GT7PYLzsviyUNbSchKY9Vd4+3tzPmGuvfKbmFgbYFPOh+Pnosp0iKr+/oNyOYh7BSSHs/rBBcxY5KHE10NnSlRIBbVIdCF6SXmK/DrwA4WbVqC57AsFSyqtZbhQbKe6af1B534annHBI2u0WvxWvzT/8691tAhe6ORgdKtHdu3ILTIhiutokzo7X7+GDr6ZXC2YqETAga6th10oGFcb9iqKSRWXx6aBkQnwO+nUcJ7t+570xtCLXxuUrjY4AiVmrA+Z+JDBSXyhW9qe6NKLs2wurrFr/smsZGVRWHbHPrxQEXEh1TZQvEiM1KlLbD3ek15MTpcWFPbl/MpvQyfFc4KU5tRU1erffb5IKebqzBi33MCYJTTT1Laq5oOUdL2SdKNwdFBxqOGjj9XFeKKBRGS X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(7916004)(346002)(39860400002)(366004)(136003)(396003)(376002)(451199021)(83380400001)(478600001)(82960400001)(54906003)(8676002)(8936002)(41300700001)(316002)(66556008)(66946007)(66476007)(6916009)(5660300002)(38100700002)(4326008)(86362001)(6666004)(6486002)(2906002)(85182001)(26005)(6506007)(6512007)(9686003)(53546011)(33716001)(186003)(169823001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?UXJrVkdyVVV2V1VPNmdMNlFiSUtBWkZlOWdLZU82M3Q1YmtsNkptKzFsU2VL?= =?utf-8?B?alE5V3lDa3R0bFI2WlpFeVBrWi90M3FFU3BtMEpibElRMVUzZEswbXZlQUcx?= =?utf-8?B?TDU4bTJldzRodFRwbzd1SkcyT0xFVmc2RG1wZE5pZUJSNVY0RGdOOS9FZjNL?= =?utf-8?B?TFVlQWdZVUhDVHd4MWpzMlorOWtHVG8zS1BVRmlBcUFBQWN6YmgxUk54Qy9P?= =?utf-8?B?azNvbTdZVmxTZ1pRdVpYbStodG5mek5xMTh6ZWp4UFVBdlFrZWJLVlBpR2VX?= =?utf-8?B?T0ZRSlN6QjVKMjFwNFFLV25qSGhqM2JLTldjMld2RE1oSDhBcVljZUxiMTBi?= =?utf-8?B?Vk45UUFzaEhMU3hGWnBOTmFnQ0E4M3pDWmlGQkdoWVFsQzRUWHVIRjVNRlhE?= =?utf-8?B?VVhyOXhrbERmSC9sZEx6QVJHdS95SGxDdEh1aGZVQ3hqcDg3eDhnNTNZaThH?= =?utf-8?B?bUVlTWdNdTBCOGU1VkExL2ZKaDBVSmUvdWVYTHpqOFZyVHpXa1hGS2dTTFVZ?= =?utf-8?B?NTRjR0Z6M1F1UWRlZ0tjYlRXVTNYUWNXeTVjQ05penc3VXEyNFEwQk8waXA4?= =?utf-8?B?cmpNZWlMYmdaUnBIdVVmbC9ESjNPcTlJcTQ4ZmNmRnJUUmNUK3k2WTluR3lN?= =?utf-8?B?VTFkNkxMTHMza2JkK3hZamNoNVdLZnVHNkdUa1ZORllSbDFiWVRFai9Nb0dY?= =?utf-8?B?ZEE0M21hOUhHM1p3eEtrT3Y2by9vb2dWV0tFQUVkZnVRcGduUG9WK1NXZU1J?= =?utf-8?B?a0FOWHhLT3VTUkFZMisvYTlRWnY4WmN2S1dGRTEyTUpyM2dtY1M3eGh0d2NE?= =?utf-8?B?dmVvN0FHczkySGZzbTVkck1aQzU0OWNsT2dXbmVEcW5KUXJsZkZtQ0ZxelBp?= =?utf-8?B?VWhZRWpBYkV3TjBSa1B2bHRvdHF1RmNpMUhqTHQxbEZXNmNQL1NiTUxDT1BM?= =?utf-8?B?VWRxOFAwcjI2UmNWOW1zeWRqdnVIbytHQTJTOTJkK1lVcTdiZlMzZTJlNisx?= =?utf-8?B?Zzhjb3JaaDBKVEhGc3d1WXBYV3BicG1GM3dWS05IZ2hMYzZuaEVtNHV2QW1H?= =?utf-8?B?b3lFVy9BWVE1Tzd2YnN4Sk1CcVpqNmd3VStLNFczZjVxeFMzWnBXeU1tV0Jj?= =?utf-8?B?S0Zvd1lhTVNoU2R3dlc0ek9PZzI3azVFKzNGVDhLM3FtMjRraUozK3gzZitI?= =?utf-8?B?UGdBd2h0eFBvdDRjblQyeThUTXBRYXVDNjhsWmxwNkpCdHdic1Z3MjZ4Z1Rh?= =?utf-8?B?N2JZMHpOV1R6eDlFd3pGVWk4bzRlTkFteTVVSUVsSEhXbjlLbzE0UFhRMU90?= =?utf-8?B?OXRUSjFHSlAwOEsvMkhCd3VDTGZLYVBIaHdXajBVWk9JV1NBaUUxdlhCOTZt?= =?utf-8?B?VG4yQlBXNlBMTHdFb1lRZU9ZM1g5cWpjMlROb0hoS3BzNDdSNDNpYlRkTk0z?= =?utf-8?B?TFl4UGNrWVZsbTZVUzRFOVI3SXB4Z0puQzZsZzdnVjZhSmgraEpxUGNONys0?= =?utf-8?B?QWRwNHFqNVhNZU5QcUZjaUt5Nm5LblNIY24vMWM0REI1N0t0SE0vbFVORG56?= =?utf-8?B?MVdsKytYdW5xdlpvdjRvSnBrVHcvR2RhQ3lBTVZ5T0VXcGhzMmNBRURrT0Nw?= =?utf-8?B?RTEvNmpvY2N6cnlpQmVsNDZQeXV2RTBuZkJnNEtjVXZQYjRpZWdnWVZYdTlE?= =?utf-8?B?QkhacG5oYy9vZTh5bHZBeklqb2ZLeE9XTGRaeXJWUDJFaGRKM2M0b1lKM1Yv?= =?utf-8?B?ekt6K0NwK1lkc2N1ak9Mc2JlMEswMCtWdE5RVUdGWTcza0hhMkx2NkE4UnRl?= =?utf-8?B?eEVPcXlWTlhpRy8vaXVVWExTQ09oVGkyM2h3RUtoOCttWm1BTmlaQXlkbDZZ?= =?utf-8?B?dDlPbUc3ZTdrcnZlRVZyY1JSNkpGaHlzVlArYnZ5Uk1lRjYwVkFsaUVLTHZG?= =?utf-8?B?d2h5NnhsNit1QzRwT1BVUzF0RzNNTjFTZyt3UEVzVmFQbzg3TDcrYXlISklp?= =?utf-8?B?SGkvRWZVYU8vYmNBOFRKUjJLSk1tdkpEdHZkSDVJNzdFTFB4b0M0RWFiKzVt?= =?utf-8?B?dFZtd2xKWjVKaW56Nk9ObnVxQks4eUNFSnZmNk1FQXBGWXVmcmVnUXRvS29B?= =?utf-8?B?dW83dG4vNklZYWM2NGdtaVNDZHR0aTFlalZZek50OWx4MklYZTFURHNLS3NR?= =?utf-8?B?b2c9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: +v9cowsK60Xyi5JzaoMh5y+lQbEEfEXpvdDgtMo0B8lMQt8NN+aXWOM8WS/oAa/EpeASX1v3PR0rwUC6oZ9195tEjiBHYvo1ELymd1LlkOQ5Q/8OWZzwcZsyPgORepMgG8ssmUUr0xv7+VFLF5JqlOVUJH51Zbk65QQK1bUqHg8HHe0HU0gnUCK65Kw3uyJIEGKoqtCg97IHCafoo5JX9hC1vtMMeFT2lIj8bQIuIvJseCOEfz979UWyoSzou4nRb6aqoQwcbHJ2qDC8hh/TjROLgsf3i5K6vFs2HI3bQKblRk6UTm1pDDvRtN0mR9trHQpv4OX1gb7WQuOVUKpmAa8OXxjr8b9XI1WBTWBB9ZEVRbkNsjaCNYN9Jm3JYxfRdNvyJ1PNhTVD2D+4A+jK5llg8wnveyR6ePz0vJU3cHt7rGvKJlNW0bC5NiH5Zlo95BDPbLdL6oMaVrZn+8cLZ0mulGhHu0ih/TQu3DdHtOX+Sh8kM78uYzeFT0/oVneqR0TYZG6BYSIHP4Ooy0+2ZJ92CB4JVDOBoc6tmSq9mngXGe2WiIlNSGFMC5hgf9E0jigqbs5ojYw27HNX8RQ4t3z2jT1DU5I1AGaNK63Kzj4UzAMWNVYmqptakTMasUeZdUyU8HzdKzfcMqjr4CdX607JL/JHo7Xd4r1sL2tWVzmqx4FVm54wBvJRChivT3OST0UIbDq7x13siltBFEvtMHJGdgGyVE71KXiceUKmzXuUjGLzP41NuYMPDEQ4iMgCoAdagvfZbKbeRmigZFpvLocEGFs+cqF8GVdIGETKLLMeOOBPYKNjjo79I9OVeBkA X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 8ba0debc-fe73-4310-ff5d-08db66715a77 X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Jun 2023 09:35:24.1018 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: mgZ4QGFx9g9uUpvWHa4sFo+uit5BVHNoJciO34HvtS00eePnUuXsc1mQu1I1VceUYVD1Xiyvpw17g3ReJFCARQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR03MB5573 On Thu, Jun 01, 2023 at 04:06:53PM +0200, Jan Beulich wrote: > On 01.06.2023 13:50, Roger Pau Monné wrote: > > On Thu, Jun 01, 2023 at 11:56:12AM +0200, Jan Beulich wrote: > >> On 01.06.2023 11:17, Roger Pau Monné wrote: > >>> On Tue, May 30, 2023 at 05:30:02PM +0200, Jan Beulich wrote: > >>>> To avoid the need for a forward declaration of pit_load_count() in a > >>>> subsequent change, move it earlier in the file (along with its helper > >>>> callback). > >>>> > >>>> Signed-off-by: Jan Beulich > >>> > >>> Reviewed-by: Roger Pau Monné > >> > >> Thanks. > >> > >>> Just a couple of nits, which you might also noticed but decided to not > >>> fix given this is just code movement. > >> > >> Indeed, I meant this to be pure code movement. Nevertheless I'd be happy > >> to take care of style issues, if that's deemed okay in a "pure code > >> movement" patch. However, ... > > > > It's just small style issues, so it would be OK for me. > > So I've done the obvious ones. There's a further signed/unsigned issue > which isn't quite as clear whether to take care of "on the fly": The > function's 2nd and 3rd parameters both ought to be unsigned, yet > throughout the full file the same issue exists many more times. So I > guess I'll leave those untouched for now. No strong opinion regarding those, I'm fine if you want to adjust also to unsigned. Thanks, Roger. From xen-devel-bounces@lists.xenproject.org Tue Jun 06 09:46:53 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 06 Jun 2023 09:46:53 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544042.849522 (Exim 4.92) (envelope-from ) id 1q6TH4-0006zU-Ti; Tue, 06 Jun 2023 09:46:46 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544042.849522; Tue, 06 Jun 2023 09:46:46 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6TH4-0006zN-RA; Tue, 06 Jun 2023 09:46:46 +0000 Received: by outflank-mailman (input) for mailman id 544042; Tue, 06 Jun 2023 09:46:45 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6TH3-0006zH-JG for xen-devel@lists.xenproject.org; Tue, 06 Jun 2023 09:46:45 +0000 Received: from esa2.hc3370-68.iphmx.com (esa2.hc3370-68.iphmx.com [216.71.145.153]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 09b36ef6-044f-11ee-8611-37d641c3527e; Tue, 06 Jun 2023 11:46:42 +0200 (CEST) Received: from mail-mw2nam04lp2168.outbound.protection.outlook.com (HELO NAM04-MW2-obe.outbound.protection.outlook.com) ([104.47.73.168]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 06 Jun 2023 05:46:39 -0400 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) by BL1PR03MB6023.namprd03.prod.outlook.com (2603:10b6:208:31b::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Tue, 6 Jun 2023 09:46:37 +0000 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::192:6bdf:b105:64dd]) by SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::192:6bdf:b105:64dd%3]) with mapi id 15.20.6455.028; Tue, 6 Jun 2023 09:46:37 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 09b36ef6-044f-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686044802; h=date:from:to:cc:subject:message-id:references: content-transfer-encoding:in-reply-to:mime-version; bh=8AH9ucv6Vr+9sb1K8iUFIRorg3faODBLMLZ/P8Zu4Vo=; b=F9AKzOb+UtCl1qSm12AriLkSFZjTL16oGpcQH1uuA2EJSRzX2K7+1tp2 X/hsuNnzmFAU4QUeS4tl59ermWo1LKhDWRkg1xIzIszKhMkne1ABr8F0p 5yYqkQf2oVYv7Mrze4alelOk0J3ejqDgtaiyZ6jT7njnGtoy7bvKEwFiS Q=; X-IronPort-RemoteIP: 104.47.73.168 X-IronPort-MID: 111630812 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:aiQRnaMOXi8LmfLvrR2DlsFynXyQoLVcMsEvi/4bfWQNrUpzhDwDy mFOUWHUM/2LYmanc98naY6/8ksGupLSx9VhTwto+SlhQUwRpJueD7x1DKtS0wC6dZSfER09v 63yTvGacajYm1eF/k/F3oDJ9CU6jufQAOKnUoYoAwgpLSd8UiAtlBl/rOAwh49skLCRDhiE/ Nj/uKUzAnf8s9JPGjxSs/rrRC9H5qyo42tG5gJmPJingXeF/5UrJMNHTU2OByOQrrl8RoaSW +vFxbelyWLVlz9F5gSNy+uTnuUiG9Y+DCDW4pZkc/HKbitq/0Te5p0TJvsEAXq7vh3S9zxHJ HehgrTrIeshFvWkdO3wyHC0GQkmVUFN0OevzXRSLaV/ZqAJGpfh66wGMa04AWEX0tdpL0xl0 +xEEWxXXj2yt8mQxpnnCeY506zPLOGzVG8ekldJ6GmFSNMZG9XESaiM4sJE1jAtgMwIBezZe 8cSdTtoalLHfgFLPVAUTpk5mY9EhFGmK2Ee9A3T+vFxujaDpOBy+OGF3N79YNuFSN8Thk+Fj mnH4374ElcRM9n3JT+tqyv12LSXzXqhMG4UPIy69qE2oWeN/GNQNxEmc1TgufSg03frDrqzL GRRoELCt5Ma9kamU938VB2Qu2Ofs1gXXN84O/037kSBx7TZ5y6dB3MYVXhRZdo+rsg0SDc2k FiTkLvBGjhHoLCTD3WH+d+pQSiaPCEUKSoHenUCRA5dv937+tht3lTIU8ppF7OzgpvtAzbsz juWrS84wbIOkcoM0Kb99lfC696xmqX0oscOzl2/dgqYAslRPeZJu6TABYDn0Mt9 IronPort-HdrOrdr: A9a23:jo182qxkjebVBlJWihbdKrPxuOskLtp133Aq2lEZdPULSKGlfp GV9sjziyWetN9IYgBZpTiBUJPhfZquz+8P3WBxB8bqYOCIghrNEGgP1+XfKnjbalTDH41mpO 9dmspFebrN5DFB5K6XjzVQUexQpuVvm5rY5ts2uk0dKD2CHJsQjTuRZDz7LmRGAC19QbYpHp uV4cRK4xC6f24MU8i9Dn4ZG8DeutzijvvdEFQ7Li9izDPLoSKj6bb8HRTd9AwZSSlzzbAr9n WAuxDl55+kr+qwxnbnpiLuBtVt6ZfcI+l4dYKxY/suW3TRY8GTFcRcsoi5zX8ISSeUmRUXeZ f30lUd1o9ImgnslymO0GbQMk/boX0TAjbZuCOlqGqmrsrjSD0gDc1dwYpfbxvC8kIl+Mpxya RRwguixu5q5D777VbADuLzJmRXv1vxpWBnnf8YjnRZX4dbYLhNrZYH9EcQFJsbBir15I0uDe ErVajnlYBrWELfa2qcsnhkwdSqUHh2FhCaQlIassjQ1zRNhnh2w0YR2cRalHYd85A2TYVC+o 3/Q9NVvaALStVTYbN2Be8HT8fyAmvRQQjUOGbXOljjHLFvAQO/l3c22sRE2AiHQu148HJpou W/bLpxjx9NR37T X-Talos-CUID: 9a23:1XhWKmEKtVV6c9VZqmJW6mA5MeY1LkSBlkf9En+TL2BCFP6aHAo= X-Talos-MUID: 9a23:sQDkoAqkP1UN8/eF3TUezwBgNJg0wp6wMk9Orpk2ncbfLSFpYg7I2Q== X-IronPort-AV: E=Sophos;i="6.00,219,1681185600"; d="scan'208";a="111630812" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=GdMwMtSASZeKLk+SWJ6LtgvVVgSMgrhnpjLg8VxZptHeHJHxSZAaD0BY4Vm9mMbAP75tcwRx1eExZ6+FWN7tDAp2ohljvRxJdxcd2f8WARksL4YIqVl8Ohxu8CGj/QppQf45y5JVINwFH9OJLU88FtSvxjeEMf4KHNbfP/k1s75uJEJ+f+mrxbAp24P3KtmK3tN1wYuEP6/ROvvTRBg5B4xLp1j2XlRIPjslorq710B2DbBwYSfDT4fN80dz9WXqWVYm9caC8ZD6FDI9vCwkdHR8UYn/tY41Isjk5/sYYqBrkgpwuB9jkw87UlID4wMQ3A2qJamKj8bVeJgL9ztV3w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=flFcnPFmr/9ZOdFlfvUV2gfpGaveBqIhb4JPdjFYFnI=; b=jvOz1IKDtPETcpQR8XOnA7/Yricr9XeCWVjnsssiTgSoLaOd5uokAVWlMkrEct1laIVQi+8/WQ/HpE9ffNJ/iE3bChx8Rr3/Bk6u8SI23FVASvBnunlKSexbAcct9S2oj8eWp2YL9t9lQOUlqipKA2GDNNg7YoC+ALrk59Selie1fXXtSrU07Py7uxw957+z9H0hzEixqt5egFA3q3HVeR0sOoVTYZL9S7R+OYW6BDk8NKKSUzHqQd0TsDRjzqh+ENni2YA5IesaM4T9oJd2SyUuz4EQdDcVkJ5GPWmPzk/6/ngiwZMx7t0CdEECcLbw3GvaRqszOgG++ZVC3AvqJQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=flFcnPFmr/9ZOdFlfvUV2gfpGaveBqIhb4JPdjFYFnI=; b=LLIsdbvfBvzm8xMg1JCuDfi+SN8MM5dGoBMdmQ+KGx3bB4QCsQs210c0y9wcdXAWdtXWvV6lGgIhtEvCaEuBdOyURkms25sNih9tHlLQJc4E7lKhXnLqXuBNtU4NosuYaD6ORmufJDtvvymAu96xHOsB5gUu519HmEI6C0SNq9o= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Date: Tue, 6 Jun 2023 11:46:31 +0200 From: Roger Pau =?utf-8?B?TW9ubsOp?= To: Jan Beulich Cc: "xen-devel@lists.xenproject.org" , Andrew Cooper , Wei Liu Subject: Re: [PATCH 2/2] x86/vPIT: account for "counter stopped" time Message-ID: References: <355c5379-ea9e-582c-0131-816204eb3ace@suse.com> Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: X-ClientProxiedBy: LO4P123CA0445.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:1a9::18) To SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|BL1PR03MB6023:EE_ X-MS-Office365-Filtering-Correlation-Id: 67db92da-d779-405f-23c0-08db6672ebaf X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: /px+iRTg2yMyxXQJwVrs02dRhjzsUX59rfqh9yoEg5ioL8O9/ItR12L3rmFmg/mytHtPdHikwR8WG4qeFkiBTk7cAeTEEckWWu/IgrwRaNaHYXb6mUJxgPcv5zwzIzrY6wWMRFZK0mSYLB1TZ+Tr7FxjzuJyH5K1Jt/5OQSNOc7nEHyz2iab/PQXMwq6awyMznhGv59FTtrxF6Ir4D3lZvT3GS1eOR8ec7RXIoMGlga9xb/xX57kUTDcdBgNZufTRJ98dGAJ3DcWwpmWGVQLEfMVCUpF0zpnMqihvwP0eZe6FOF1+E1X/f79+mspX5gpdcf2LohezZN1dRB7aeppu9Orc7lUTN3qkZ1CfyGFhh724lenI2g4wG4vwv370SHGtrOtecEPM3tjK3wI1eYjWh82515vi9xwjYo3XO5/3/iOgFxIxoRMeNvjiTC1FYAfMyTldp9vcn9QhYAVRc/cSc5iWELdFYguK4FL4u9AjE7XPCpThFC2bCy9ky7Ni6KKENL0y2kAR2Y5gi0DvKZtJHj0lFiI9gVJsJKJ6QfXidcwn09kE6velrFdaUhz7n6UtDbuf4dvqHV31a8owRXQ3Uo9w9qpFkqcZ9QHgll/F2E= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(7916004)(136003)(366004)(396003)(376002)(39860400002)(346002)(451199021)(6486002)(6666004)(83380400001)(186003)(85182001)(86362001)(38100700002)(33716001)(82960400001)(6512007)(53546011)(6506007)(26005)(9686003)(316002)(54906003)(4326008)(66946007)(8936002)(6916009)(66556008)(66476007)(8676002)(5660300002)(66899021)(41300700001)(2906002)(478600001)(15650500001)(21314003);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?clltYTdnYjc0blVDTDcwSXl2WGpVRFRseHB0RTJORVRTZHg5dEN3T29DajVo?= =?utf-8?B?L25vZlIxK0lOL1RWd21PK2ViV0JwKzJVQ0lNNnFaU2t1di90R0dIeVg4S2d1?= =?utf-8?B?RTAzeThaMlROb0oraWRFdEJqMTVGSFJzWVE3dks5UDVlcHB3VStlcFhjdEF6?= =?utf-8?B?MG1LdUVGZ1ltejVKM3ZFazJFaWNzaXRnaCtSeW5CTmYreXgyMENkdkliVHZL?= =?utf-8?B?OFV6NGQ3Tk5peFBxY0pLMkFnVHRNWjIrS2I2cSt1clFyRzdGWmF3Z2xhSlRX?= =?utf-8?B?VVByTDFWandaMVBGQlNzS0pLVUh3eU1lbHVsOGE4cTdGd0JQaU0zcnZWb1lu?= =?utf-8?B?cDZld2MvZFZvbGJ3U09TWFVlUEwvRmxxejdMeWNpS0ExSklMVmpTanRwdlYx?= =?utf-8?B?bHBzZjZIVDlrcW9GYXdOTWM1VXZsKzFEeUZnUDZQTVdLc3g4aU5Hd2xQOVFW?= =?utf-8?B?RUdEWU4zck5UN2lhbnl0ZFRzR24vSkVsdTdNSnQ3VitOSk9PVE13RktvenJu?= =?utf-8?B?NTZQNGQvKzROUTB0TlBpcllPRzFoUTJKT0tBVzRrTlJEbW1kZmdtT2Q1bUZa?= =?utf-8?B?VmNkazJFY2Q5byt5M29MZG56UlZta2lYMzhlallUS1gwNUVXUnk0NjZvOUpU?= =?utf-8?B?c2NZQ25GSWdGUFdPUlpkdW9yK1o0RXFIcVV4UitRZWJiNGQvMUk3UXVUMjBH?= =?utf-8?B?c01tRU5YY0hLTnp0ZFE1Nk1uMXpKK1JKRUh0QTJ3RjYyYVhjUWJhNDM1TjVP?= =?utf-8?B?ckZPN1dlMkxZOU5BV0lITzdQczlyL1FPVDd0a2syb2hVcElMWUpFa0x2aXor?= =?utf-8?B?Ty9aSVJVV0FBbzlkeDlQVUozTWhrZHdnYTdUOEphTjFKS1lVc09SZm1Wb2E4?= =?utf-8?B?b2EvNHRnRDlLTHZMbkJqWERrK1dNclJJRHJDd0hpQ2NGekcrN2VESDdVMnAz?= =?utf-8?B?c1Y2dWhlSGtqOUQveVAwTndKVjc5UHBpOHROcGRIU1VYeGM2M05aL1ROaWNm?= =?utf-8?B?SVlJampIM3ZneHJWRG5aREYySjA3ZVB3TkJIbjBja0h6TjlrRExRTVlJUzJO?= =?utf-8?B?TTJxQVpDVDFBa2dheEcxYTQ4Q0x2NytxMzUyVGt2Mm11ZklaUHNiSE9rV3Ry?= =?utf-8?B?VWtFTzNSRWpKWHhDZDArelN5N3FtRWx0ZDFISG1sc3NzMU5NZE1tMFBlZTIz?= =?utf-8?B?VFpNbS9XSDVZc093Z1gxbzNuZ1Q3aTdHYlU1enpsZmF1KzkrZGtWbnFEblBj?= =?utf-8?B?VWdOakJWTGZzb3hQcVpMTVloTzlnNFp0VnpnTUhwbXd0cEcvdkhVbUl5a0RS?= =?utf-8?B?UEc1YzhMK0c0Vm1VZ0d5RkhzaExKcnFTZ0NCSDVSTURzM2g5SGhiODJwUVdj?= =?utf-8?B?d1lqQ011dEZmclRHcWNSQmMxdGd5aU93Q25PQmN3Tk8vS2p1aGN3bWhOK1ht?= =?utf-8?B?THFiVGxxbDUzbXRJOGZsZXQrZEhxbWtWY1VnSXlwL3VnamNjVnBsNW55TVVZ?= =?utf-8?B?bE5Zazgrd2Q1SEo3bzhoeHY2Q0NyTE1nTG5OMWFTV2Z0VzcwMzlkd0drekxP?= =?utf-8?B?bUlMeHBraFJDR3diSFVHZDhwYWVldVIzc3RMd0RlQnE2cm13UEpJTThUdDBL?= =?utf-8?B?dnFxRGUxUXpkKzNieW9pMXFkYnlzUmREd3pNU1JsczRlaWxoNWR1Zkg3eGVX?= =?utf-8?B?b0s4OVZzcVVJSGRmSWxqQnZhWUFvdSt6Rng2NDVQdGYwYzd6aXJRc1BXUGNE?= =?utf-8?B?dDJTeXFiYUNwTHNLQmhvYjFXQ1FXWUI4ZDhTc2NBYXpGSjhIUUo2emFCL3lU?= =?utf-8?B?K05kQ1BtbEY2R1NFQ3RzZndIMFpqRXpaV3d1NzdScjhZbHRBeUNLcGRYb1la?= =?utf-8?B?eXAzQmtWZU1ZeTN0SkdZS1JQYyt2TUlzL3FhS2RhZHZvYzA2elphb3pSVmpq?= =?utf-8?B?a0FzR3QwbFBzcmJ1M0lzV1VvbllsS2k3clpWVVJzYlNhMUEvQW55cllTalhI?= =?utf-8?B?NlpSRUNjTHovY0w1YWFOK0QyQmd3eTA4dG1OMCs3S01hNEplb0lrNXFkMGxO?= =?utf-8?B?QjErNlpablZHcWt6eUVhdVpTSmxyaURqM0JRQWdhNWd0aU1pS3VsYndaZHVn?= =?utf-8?B?VzAyNnR4SldMdThMMWtNdjNpUnJ4LzJEZHg3dDZtaU1UOXZldzU0RFJPRUho?= =?utf-8?B?NXc9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: Tr0hlJoDt0ycKLyv/BIotOxjO7nCPiVBQsfZXnGg4oYJGoEUbVzUxWJlvxgZZl4/B+OZt9aY9UrSd1hha1Yajs6FUAq+ZX9g68kKwRlXu7j81/gJQ13MdV8FCOZNI2IhUd/zSuXMkIcKQvHfcB7cby3coIkkUmnLDNGTPCqMsQaHpRQVwmLYUIQq4OsaAf7C8XjP/qzV+Y2P9Mcu+OQnP+EanVsij4OJc+/ScarwzpiOHqzapVlxu2yvcrorgJsGrpc6+hDxCzgyodGCzg8XofMs0DQtISZkzAaBxfimK9shbwfghPSBFpvtsm1TytJOlpGRkYa+UvZRfTO8KguBl/+haKCWBDCbPpxWkZ8ihh3XhA3xFYwdBGjNrCZj4jAF1Nqw/lVhiu+EXxLbLupsgi1v9P16CSRUd8tyMPEdYiRMS9bGzg5fjkqfHtfjyG2t1KeerIikcZYY5vpLgtx7hIv2nXX0WOY32RHpVongvuKgBN3YUz5edtu2F6Ot723H+W/gvzNsSZqBfE+PS+RNJ+3MPUnro+h9S05hvNIBKjF9Ut1OvviB7T08VbFoGNU3Hdc/yL5Ygi+4vAWM8ITQ+zFXbS39lZbQlveSgDuKM35uxnDtoW4wg/OUopngbdGC2yOfYiwf7YGBvITDts6Ec9ub7ecuSOQPqma7FTcmapAsF6EiYXwBoj7Qwm+BxZf2RWrwKmxSMo2P2Ca4kYI899tUUsHLeZcGYeyxJnKy2biaqi50t8qznnUyqGi+Io1zF1US+m/FI8ymnqqbK4Rs+PIiNR2BPsqqPpyLwwQvtFsx9bK1iAl6h8rmRGiLhu5U X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 67db92da-d779-405f-23c0-08db6672ebaf X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Jun 2023 09:46:37.2135 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: Xf9wiKOy96NEYGF5tUkrHPS/SDoccu9jZunSZLsDjYamzel3Qk3uQWMRkU/bpMNUGA+mdThHoQw2CY05u84mQw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: BL1PR03MB6023 On Thu, Jun 01, 2023 at 04:20:13PM +0200, Jan Beulich wrote: > On 01.06.2023 13:48, Roger Pau Monné wrote: > > On Tue, May 30, 2023 at 05:30:40PM +0200, Jan Beulich wrote: > >> TBD: "gate" can only ever be low for chan2 (with "x86/vPIT: check/bound > >> values loaded from state save record" [2] in place), so in > >> principle we could get away without a new pair of arrays, but just > >> two individual fields. At the expense of more special casing in > >> code. > > > > Hm, I guess we could rename to pit_set_gate_ch2 and remove the ch > > parameter. That would be OK for me. > > Well, simplifying the function is the less ugly part, so I'd be okay > doing that. But doing _just_ that feels wrong: Why would we make the > function less general when we still maintain all the data also for > the other channels, just that we don't update it. My concern was > really towards the further special casing of channel 2 that would be > required if I didn't introduce two new arrays, but just two new > fields. > > >> TBD: Should we deal with other aspects of "gate low" in pit_get_out() > >> here as well, right away? I was hoping to get away without ... > >> (Note how the two functions also disagree in their placement of the > >> "default" labels, even if that's largely benign when taking into > >> account that modes 6 and 7 are transformed to 2 and 3 respectively > >> by pit_load(). A difference would occur only before the guest first > >> sets the mode, as pit_reset() sets it to 7.) > > > > I'm in general afraid of doing changes here (apart from bugfixes) > > because we don't really have a good way to test them AFAIK, > > Right, hence why I'm asking. I would say leave alone, unless you have a reason to fix them. > > maybe you > > do have some XTF or similar tests to exercise those paths? > > I did consider making something, but I can't go the route of "try it > directly and then compare with emulation results". Yet without that > I'm not sure such a test (and the time spent putting it together) are > worth it, the more that without being able to compare I might also > end up testing some wrong behavior, simply because of not properly > understanding the somewhat scarce documentation that's available. Well, I would argue that just testing the device works as (you) expected would already be an improvement, we could at least rule out errors due to the device misbehaving related to our expectations. > (I already had to resort to 30 years old hardcopy documentation to > at least stand a chance of getting things right.) I'm not sure I would be able to realize this errors with the documentation I currently have. > > >> Other observations: > >> - Loading of new counts occurs too early in some of the modes (2/3: at > >> end of current sequence or when gate goes high; 1/5: only when gate > >> goes high). > > Because of this ... > > >> @@ -109,6 +112,7 @@ static void pit_load_count(PITState *pit > >> pit->count_load_time[channel] = 0; > >> else > >> pit->count_load_time[channel] = get_guest_time(v); > >> + pit->stopped_time[channel] = 0; > > > > Don't you need to also set count_stop_time == count_load_time in case > > the counter is disabled? (s->gate == 0). > > ... I think you're right, and I should do so unconditionally. In > principle I think this would need to be mode dependent. > > >> @@ -181,22 +188,39 @@ static void pit_set_gate(PITState *pit, > >> > >> ASSERT(spin_is_locked(&pit->lock)); > >> > >> - switch ( s->mode ) > >> - { > >> - default: > >> - case 0: > >> - case 4: > >> - /* XXX: just disable/enable counting */ > >> - break; > >> - case 1: > >> - case 5: > >> - case 2: > >> - case 3: > >> - /* Restart counting on rising edge. */ > >> - if ( s->gate < val ) > >> - pit->count_load_time[channel] = get_guest_time(v); > >> - break; > >> - } > >> + if ( s->gate > val ) > >> + switch ( s->mode ) > >> + { > >> + case 0: > >> + case 2: > >> + case 3: > >> + case 4: > >> + /* Disable counting. */ > >> + if ( !channel ) > >> + destroy_periodic_time(&pit->pt0); > >> + pit->count_stop_time[channel] = get_guest_time(v); > >> + break; > >> + } > >> + > >> + if ( s->gate < val ) > > > > Shouldn't this be an else if? > > They could, but they don't need to be. I ended up thinking that with the > blank line between both if()s things read slightly better. If you're > pretty convinced that's unhelpful, I'd be willing to adjust. Just wanted to make sure my understanding was correct. IMO it's clearer if an else is used, to denote instances using the first branch won't change s->gate or val and thus the second (else) branch is not taken (iow: both branches are exclusive, and the code in the first branch cannot affect the condition of entering the second if). But maybe that's just my way of thinking, so I'm not going to insist. Thanks, Roger. From xen-devel-bounces@lists.xenproject.org Tue Jun 06 11:03:56 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 06 Jun 2023 11:03:56 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544048.849533 (Exim 4.92) (envelope-from ) id 1q6UTP-0006vq-Nj; Tue, 06 Jun 2023 11:03:35 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544048.849533; Tue, 06 Jun 2023 11:03:35 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6UTP-0006vj-KU; Tue, 06 Jun 2023 11:03:35 +0000 Received: by outflank-mailman (input) for mailman id 544048; Tue, 06 Jun 2023 11:03:33 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6UTN-0006vX-QS; Tue, 06 Jun 2023 11:03:33 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6UTN-0000gk-LG; Tue, 06 Jun 2023 11:03:33 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6UTN-0005nj-6y; Tue, 06 Jun 2023 11:03:33 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q6UTN-0002bY-6P; Tue, 06 Jun 2023 11:03:33 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=sVfYppgNBgTcO9MSRK/wXuydSk8qs35uxItLgBn5qSY=; b=nu0Zu09UOvrX84oAMbs6IFEfpB uxndDeoJ+s/RTixiTRAqcfWWPZ5JpRwuebEEvfIJEUqkH5FTmEJpBipcx3aMsmR65tVYbs2WOaiZQ MSRjHT3tiGSUBDnkSrxPZAmE2i9coBsGTSib3KeEiF+EjGNd1UrnKaeg5vwrfw2P9BS4=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [qemu-mainline test] 181201: regressions - FAIL X-Osstest-Failures: qemu-mainline:test-amd64-i386-libvirt-pair:xen-install/dst_host:fail:regression qemu-mainline:test-amd64-amd64-libvirt-pair:leak-check/check/src_host:fail:regression qemu-mainline:test-amd64-amd64-libvirt-pair:leak-check/check/dst_host:fail:regression qemu-mainline:test-amd64-i386-libvirt:leak-check/check:fail:regression qemu-mainline:test-amd64-amd64-libvirt-xsm:leak-check/check:fail:regression qemu-mainline:build-arm64-xsm:xen-build:fail:regression qemu-mainline:build-arm64:xen-build:fail:regression qemu-mainline:test-amd64-amd64-libvirt:leak-check/check:fail:regression qemu-mainline:test-amd64-i386-libvirt-xsm:leak-check/check:fail:regression qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:leak-check/check:fail:regression qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:leak-check/check:fail:regression qemu-mainline:test-amd64-amd64-libvirt-vhd:leak-check/check:fail:regression qemu-mainline:test-amd64-i386-xl-vhd:leak-check/check:fail:regression qemu-mainline:test-amd64-i386-libvirt-raw:leak-check/check:fail:regression qemu-mainline:test-amd64-amd64-xl-qcow2:leak-check/check:fail:regression qemu-mainline:test-armhf-armhf-libvirt:leak-check/check:fail:regression qemu-mainline:test-armhf-armhf-libvirt-qcow2:leak-check/check:fail:regression qemu-mainline:test-armhf-armhf-libvirt-raw:leak-check/check:fail:regression qemu-mainline:test-armhf-armhf-xl-vhd:leak-check/check:fail:regression qemu-mainline:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:build-arm64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking qemu-mainline:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking qemu-mainline:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking qemu-mainline:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking qemu-mainline:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking qemu-mainline:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking qemu-mainline:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking qemu-mainline:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking qemu-mainline:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking qemu-mainline:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: qemuu=369081c4558e7e940fa36ce59bf17b2e390f55d3 X-Osstest-Versions-That: qemuu=6972ef1440a9d685482d78672620a7482f2bd09a From: osstest service owner Date: Tue, 06 Jun 2023 11:03:33 +0000 flight 181201 qemu-mainline real [real] http://logs.test-lab.xenproject.org/osstest/logs/181201/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: test-amd64-i386-libvirt-pair 11 xen-install/dst_host fail REGR. vs. 180691 test-amd64-amd64-libvirt-pair 30 leak-check/check/src_host fail REGR. vs. 180691 test-amd64-amd64-libvirt-pair 31 leak-check/check/dst_host fail REGR. vs. 180691 test-amd64-i386-libvirt 23 leak-check/check fail REGR. vs. 180691 test-amd64-amd64-libvirt-xsm 23 leak-check/check fail REGR. vs. 180691 build-arm64-xsm 6 xen-build fail REGR. vs. 180691 build-arm64 6 xen-build fail REGR. vs. 180691 test-amd64-amd64-libvirt 23 leak-check/check fail REGR. vs. 180691 test-amd64-i386-libvirt-xsm 23 leak-check/check fail REGR. vs. 180691 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 21 leak-check/check fail REGR. vs. 180691 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 21 leak-check/check fail REGR. vs. 180691 test-amd64-amd64-libvirt-vhd 22 leak-check/check fail REGR. vs. 180691 test-amd64-i386-xl-vhd 24 leak-check/check fail REGR. vs. 180691 test-amd64-i386-libvirt-raw 22 leak-check/check fail REGR. vs. 180691 test-amd64-amd64-xl-qcow2 24 leak-check/check fail REGR. vs. 180691 test-armhf-armhf-libvirt 21 leak-check/check fail REGR. vs. 180691 test-armhf-armhf-libvirt-qcow2 20 leak-check/check fail REGR. vs. 180691 test-armhf-armhf-libvirt-raw 20 leak-check/check fail REGR. vs. 180691 test-armhf-armhf-xl-vhd 20 leak-check/check fail REGR. vs. 180691 Tests which did not succeed, but are not blocking: test-arm64-arm64-libvirt-raw 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-xsm 1 build-check(1) blocked n/a test-arm64-arm64-xl 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit1 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit2 1 build-check(1) blocked n/a test-arm64-arm64-xl-thunderx 1 build-check(1) blocked n/a test-arm64-arm64-xl-vhd 1 build-check(1) blocked n/a test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a build-arm64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 180691 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 180691 test-armhf-armhf-libvirt 16 saverestore-support-check fail like 180691 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail like 180691 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop fail like 180691 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail like 180691 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 180691 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop fail like 180691 test-amd64-i386-xl-pvshim 14 guest-start fail never pass test-amd64-i386-libvirt 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-i386-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-credit2 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit2 16 saverestore-support-check fail never pass test-amd64-i386-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-libvirt 15 migrate-support-check fail never pass test-armhf-armhf-xl 15 migrate-support-check fail never pass test-armhf-armhf-xl 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 15 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 16 saverestore-support-check fail never pass test-armhf-armhf-xl-multivcpu 15 migrate-support-check fail never pass test-armhf-armhf-xl-multivcpu 16 saverestore-support-check fail never pass test-armhf-armhf-xl-arndale 15 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 15 saverestore-support-check fail never pass version targeted for testing: qemuu 369081c4558e7e940fa36ce59bf17b2e390f55d3 baseline version: qemuu 6972ef1440a9d685482d78672620a7482f2bd09a Last test of basis 180691 2023-05-17 10:45:22 Z 20 days Failing since 180699 2023-05-18 07:21:24 Z 19 days 64 attempts Testing same since 181201 2023-06-06 01:39:30 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Afonso Bordado Akihiko Odaki Akihiro Suda Alex Bennée Alex Williamson Alexander Bulekov Alexander Graf Alexander Ivanov Alistair Francis Ani Sinha Ani Sinha Anton Johansson BALATON Zoltan Bernhard Beschow Bin Meng Brian Cain Brice Goglin Camilla Conte Cindy Lu Clément Chigot Cornelia Huck Cédric Le Goater Cédric Le Goater Daniel Henrique Barboza Daniel P. Berrangé Daniil Kovalev David Hildenbrand Emanuele Giuseppe Esposito Enze Li Eric Auger Eric Blake Eric DeVolder Erico Nunes Eugenio Pérez Fabiano Rosas Fan Ni Fiona Ebner Francisco Iglesias Gavin Shan Gregory Price Gregory Price Hanna Czenczek Hao Zeng Hawkins Jiawei Igor Mammedov Ilya Leoshkevich Ira Weiny Jason Wang Jean-Louis Dupond Jean-Philippe Brucker Jiaxun Yang John Snow Jonathan Cameron Juan Quintela Kevin Wolf Laurent Vivier Lei Yang Leonardo Bras Maksim Davydov Marc-André Lureau Marcin Juszkiewicz Marco Liebel Mark Cave-Ayland Markus Armbruster Matheus Tavares Bernardino Mauro Matteo Cascella Michael S. Tsirkin Michael Tokarev Mostafa Saleh Nicholas Piggin Nicolas Saenz Julienne Palmer Dabbelt Paolo Bonzini Peter Maydell Peter Xu Philippe Mathieu-Daudé Raghu H Rene Engel Richard Henderson Richard Purdie Ricky Zhou Ryan Wendland Sebastian Ott Sergio Lopez Sid Manning Song Gao Stefan Hajnoczi Stefano Garzarella Steve Sistare Taylor Simpson Thomas Huth Thomas Weißschuh timothee.cocault@gmail.com Timothée Cocault Tommy Wu Viktor Prutyanov Vitaly Cheptsov Vivek Kasireddy Vladimir Sementsov-Ogievskiy Volker Rümelin Xinyu Li Zeng Hao Zhenyu Zhang Zhenzhong Duan jobs: build-amd64-xsm pass build-arm64-xsm fail build-i386-xsm pass build-amd64 pass build-arm64 fail build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt blocked build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl blocked test-armhf-armhf-xl pass test-amd64-i386-xl pass test-amd64-coresched-i386-xl pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm fail test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm fail test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-i386-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm fail test-arm64-arm64-libvirt-xsm blocked test-amd64-i386-libvirt-xsm fail test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm blocked test-amd64-i386-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-i386-qemuu-rhel6hvm-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-freebsd10-amd64 pass test-amd64-amd64-qemuu-freebsd11-amd64 pass test-amd64-amd64-qemuu-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-i386-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-amd64-i386-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 blocked test-armhf-armhf-xl-credit1 pass test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 blocked test-armhf-armhf-xl-credit2 pass test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-i386-freebsd10-i386 pass test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-i386-qemuu-rhel6hvm-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt fail test-armhf-armhf-libvirt fail test-amd64-i386-libvirt fail test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu pass test-amd64-amd64-pair pass test-amd64-i386-pair pass test-amd64-amd64-libvirt-pair fail test-amd64-i386-libvirt-pair fail test-amd64-amd64-xl-pvshim pass test-amd64-i386-xl-pvshim fail test-amd64-amd64-pygrub pass test-armhf-armhf-libvirt-qcow2 fail test-amd64-amd64-xl-qcow2 fail test-arm64-arm64-libvirt-raw blocked test-armhf-armhf-libvirt-raw fail test-amd64-i386-libvirt-raw fail test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds pass test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-amd64-i386-xl-shadow pass test-arm64-arm64-xl-thunderx blocked test-amd64-amd64-libvirt-vhd fail test-arm64-arm64-xl-vhd blocked test-armhf-armhf-xl-vhd fail test-amd64-i386-xl-vhd fail ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 13846 lines long.) From xen-devel-bounces@lists.xenproject.org Tue Jun 06 12:49:06 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 06 Jun 2023 12:49:06 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544058.849549 (Exim 4.92) (envelope-from ) id 1q6W7E-0000D3-Dz; Tue, 06 Jun 2023 12:48:48 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544058.849549; Tue, 06 Jun 2023 12:48:48 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6W7E-0000Cw-Ax; Tue, 06 Jun 2023 12:48:48 +0000 Received: by outflank-mailman (input) for mailman id 544058; Tue, 06 Jun 2023 12:48:46 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6W7B-0000Cq-Vq for xen-devel@lists.xenproject.org; Tue, 06 Jun 2023 12:48:46 +0000 Received: from esa6.hc3370-68.iphmx.com (esa6.hc3370-68.iphmx.com [216.71.155.175]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 775afc31-0468-11ee-b232-6b7b168915f2; Tue, 06 Jun 2023 14:48:43 +0200 (CEST) Received: from mail-dm6nam10lp2106.outbound.protection.outlook.com (HELO NAM10-DM6-obe.outbound.protection.outlook.com) ([104.47.58.106]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 06 Jun 2023 08:48:02 -0400 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) by BLAPR03MB5538.namprd03.prod.outlook.com (2603:10b6:208:285::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Tue, 6 Jun 2023 12:47:59 +0000 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::192:6bdf:b105:64dd]) by SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::192:6bdf:b105:64dd%3]) with mapi id 15.20.6455.028; Tue, 6 Jun 2023 12:47:59 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 775afc31-0468-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686055723; h=date:from:to:cc:subject:message-id:references: in-reply-to:mime-version; bh=zGmeKrAU3YsrpRh78hq8JCHN6XlwQ5friGDS/qVMrOk=; b=EXbj7Yxus3zZa9J5ElstbreKTV17doCUHOAUBTFzcfD0TcfShAdMr58p f9Nz/McWoJZA9MEnD8GWbheMhZEMjr/JoAkb5NQXxIMto/D9thYwX85av lKz8dZqiZsL8cB6I1it+J+88l6GSRb6i1RZNOzhD7vcTof7zy7Fi6JI0a A=; X-IronPort-RemoteIP: 104.47.58.106 X-IronPort-MID: 111089255 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:sFLXBquJ2sNKXTPKA5FXykwmS+fnVJhfMUV32f8akzHdYApBsoF/q tZmKWnTPa2OMTPwLd0jaIXjpxkB65fUzodjHQJkqng1RStA+JbJXdiXEBz9bniYRiHhoOCLz O1FM4Wdc5pkJpP4jk3wWlQ0hSAkjclkfpKlVKiffHg3HVQ+IMsYoUoLs/YjhYJ1isSODQqIu Nfjy+XSI1bg0DNvWo4uw/vrRChH4rKq4Fv0gnRkPaoQ5AGGySFPZH4iDfrZw0XQE9E88tGSH 44v/JnhlkvF8hEkDM+Sk7qTWiXmlZaLYGBiIlIPM0STqkAqSh4ai87XB9JFAatjsB2bnsgZ9 Tl4ncfYpTHFnEH7sL91vxFwS0mSNEDdkVPNCSDXXce7lyUqf5ZwqhnH4Y5f0YAwo45K7W9yG fMwNRooNiiZi+uPxpGFZ/Qz3PojK8jzBdZK0p1g5Wmx4fcOZ7nmGv2PyfoGmTA6i4ZJAOrUY NcfZXx3dhPcbhZTO1ARTpUjgOOvgXq5eDpdwL6XjfNvvy6Pk0osgP60aIS9lt+iHK25mm6Co W3L5SLhCwwyP92D0zuVtHmrg4cjmAuiAdtKROziq6MCbFu77UgPBjQMZ1GCn96Lk1CzZdBON HEN0397xUQ13AnxJjXnZDW6qnOZuh8XW/JLDvY3rgqKz8L8/AKxFmUCCDlbZ7QOttIyRDEs/ k+EmZXuHzMHmKaOVXuX+7OQrDWzESsYN2kPYWkDVwRty8nupsQ/gwzCSv5nEbWplZvlFDfo2 TeIoSMiwbIJgqY2O76T+FnGh3ego8bPRwtsvgHPBDv9sEV+eZKvYJGu5R7D9/FcIY2FT16H+ n8Zh8yZ6+NIBpaI/MCQfNgw8HiSz67tGFXhbZRHRfHNKxzFF6afQL1t IronPort-HdrOrdr: A9a23:VDZ4vqhmHgkedZGLThdrBzy18XBQX7t23DAbv31ZSRFFG/FwyP rCoB1L73XJYWgqM03I+eruBEBPewK4yXdQ2/hoAV7CZniehILMFu1fBOTZowEIdxeOldK1kJ 0QCJSWa+eAcWSS7/yKhzVQeuxIqLfnzEnrv5a5854Ed3AWV0gK1XYcNu/0KDwVeOEQbqBJbq Z0q/A30QZJPh8sH7SGL0hAe9KGi8zAlZrgbxJDLxk76DOWhTftxK/mHwOe1hI+VSoK5bs562 DKnyHw+63m6piAu1Xh/l6Wy64TtMrqy9NFCsDJos8JKg/0ggLtSJV9V6aEtDUVpvjqzFoxit HDrzopIsw2wXLMeWOepwfrxmDboX0Twk6n7WXdrWrooMT/Sj5/I81dhbhBeh+cz0Y7ptlz3I 9Cwmrc7vNsfFv9tRW4w+KNewBhl0Kyr3ZnuekPj0ZHWY9bTLNKt4QQ8G5cDZ9FNiPn74IMFv VoEajnlb9rWGLfS0qcknhkwdSqUHh2NhCaQnIassjQ6DRSlGAR9Tps+OUv2lM7sL4tQZhN4O rJdo5ykqtVc8MQZaVhQM8cXMqeEAX2MFzxGVPXBW6iOLAMOnrLpZKyyq4y/vuWdJsBy4Z3sI jdUWlfqXU5dyvVeIKzNaVwg1DwqViGLHfQIpk03ek6hlS8fsumDcS7ciFuryP6yM9vR/EyWJ 6ISeBr6rHYXC/T8L1yrnzDsqlpWAYjufIuy6gGsnK107b2w97Rx5vmWceWAobROhAZfU66Kk c/fVHIVbZ9BwaQKzLFvCQ= X-Talos-CUID: 9a23:jdvRfm9dYgC1Zw54HMqVv1M+P5gdaHHU9XHzHWKlVjxXSLqUUWbFrQ== X-Talos-MUID: =?us-ascii?q?9a23=3ABuFAYg0a3YhTOLNH11J0GmYuMjUjyICyBmkXo58?= =?us-ascii?q?/he62LDJ9BTWMkwmua9py?= X-IronPort-AV: E=Sophos;i="6.00,221,1681185600"; d="scan'208";a="111089255" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Z6DJ3HvpBHY03ciqfJ5kFG0kde9Hz67c1b5waNNEad9eWsdHfNIBTRH0YShMy1miac9tTWOqL7/4VErm3w+HYIRZH1pnRSbsEuNM8mSF6qeIxkHWaJ0kM0j9rYmNFd4H7NeySEON+P+kAHVZZ1tPteZaF07wSyCQhWOwnv2Ge9a4Ue6Iio6Oje68gKaSzopVmyYD8lqWXn+P1zSwDmeODrCpjOphRJ3ROcUrssSXq9ZdVKnioDO2cpaUI8kjzGlsyN/QEgUXmn0cFfOaZ70fS5TBZXVrrewAyUiY3ymNsU4P3CLbOeAR9MzQgRdpP9Vg1SXwXGKn/Hm87w0tVigRLg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=YDwDyoZp+SxQZl1iVzj/KEpIuUlTHSAv97fZkXKuQNw=; b=Hf/hrdwQ2iKoHKy6ffRXdE3a076gpxx0e5hi/Ny1cQ0LOra/sNQT/dJTe3iRH0YSk+Qf/cOdnLz6EnfAmHocelnDiHUPwnypa+CqDzU5FZag9aFwl4SZ8vQa/lwGxETT51zXCbLhQvahzeq4SNStYAHhhHP08Yeqa3YtW6vVpShG0BXwCF0v6AVmoB2hVfxhITJzVX4k9FvUGfDWEq53NA23MdnDlix3eJ5Urp/vP7r028/yCC07g14EmmsGUwn9pCVLuFvw1q4VnIpiNrxTopQvKuOcvJMlYhlNBXxRg48/x5T2zyK+UTN6QdeiSWAE5lTw4jeH337sU/5ZThAyMA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=YDwDyoZp+SxQZl1iVzj/KEpIuUlTHSAv97fZkXKuQNw=; b=t2uMcx9u1xB4kzg4rfQ5eyRvGmlB2wHlhAc3jA/L6EyS31W9DXQo9LVDtE34nH/iOaGnuudMtzYVr9lygjvtiY6fd8CCVOLrE5UdYh6Br1zTsERaaZT7zSdM2lqW2lxTZhzBq3fs7Rs9DeVwzPPxKU+MvfV5ben4S0QNbIkgbCA= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Date: Tue, 6 Jun 2023 14:47:53 +0200 From: Roger Pau =?utf-8?B?TW9ubsOp?= To: Jan Beulich Cc: Andrew Cooper , Wei Liu , George Dunlap , Julien Grall , Stefano Stabellini , xen-devel@lists.xenproject.org Subject: Re: [PATCH] amd: disable C6 after 1000 days on Fam17h models 30-3fh Message-ID: References: <20230605151036.18085-1-roger.pau@citrix.com> Content-Type: text/plain; charset=utf-8 Content-Disposition: inline In-Reply-To: X-ClientProxiedBy: LO4P123CA0483.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:1a8::20) To SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|BLAPR03MB5538:EE_ X-MS-Office365-Filtering-Correlation-Id: 05351d5a-92e2-4fba-feb0-08db668c41b6 X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: Bx7LaQp4QYkvPiy5PLX+MDYOuiPvQEniASDk+6KyIfiaG3hqK5La+z5pxDzq0Kt4umGL3dzom42nl+PIR8j8PXklOvQgUPTle4zshNmyH3I6sCzPquDl0pXl6xN8Gg2dgKkw/I+4k6d1AvQK/kHZkbqJ3jrM+KfAuTgsukQhLLs0IClNHamVp6z2nVPZyp1h2VOgFlfzNJz4F4nxta/DoE/5miuhk/cRDmBwXXDAbmhjh7VZqlj1qDSvXplHlV7uKJpn473HqEebQstv1LYIoB5K53bR4M3AB9eiKaVNrw7yvzInY1tOFCwOGIMhAcQ4muuQh2ctNaD1KfCbkCteg/1ykKf6yPqFnd/ki2Ky6wxOnbShGQ37C2SS0vNm48DB8plvlno69T56XesS44LiN0Ti5xle6qKyJebNvRad3T4b6O7zAcf3ekvgAXLjQghPyZxEBDCpPDr7bAUVtoNORal2g1Ho0mWTarl/irszDgC0JBHTeKs/eJPdnL4/cIAj8HcM3GrBSEljNvUPApdsbzk0Hqy75vhAmNBy0jMj0gS0iL66Nsol4W2Yjqokn7gud/xISZRNMcTyZHtBzT5x775LW+7RCvfkYbHFPWisOzQKu8SLwlW1Ui1zWsApdPL30WeieXSa59jysR+wMcq79w== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(7916004)(136003)(376002)(396003)(39860400002)(366004)(346002)(451199021)(85182001)(2906002)(33716001)(86362001)(5660300002)(83380400001)(6486002)(6666004)(53546011)(9686003)(6512007)(26005)(6506007)(82960400001)(478600001)(186003)(54906003)(316002)(38100700002)(4326008)(41300700001)(66946007)(66556008)(66476007)(6916009)(8676002)(8936002)(221023011)(67856001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?Tm9hemx1SWRzaitCUHlXY0hPTS96Rm4vdU0vcnBVekZOUHBaSHJidFVZb1o4?= =?utf-8?B?RWFXb1FJdWFVbjhnbHhJQVQ4a1lRci9QbHVwc2JlM3Y3Ukl6Sk1FQ3pWUitS?= =?utf-8?B?b1d6WHV0MzBPRGVXV2VqeUVXeVlWZ3RsaEdzTy9RRkdHRmZMYk13RzhoS1Jv?= =?utf-8?B?S3A4SnhBNTNhNjRMN3h6V0ZwdldKVHhUL1J3b2RoSmlBUlJhLzl4NGI3QkNI?= =?utf-8?B?Q0RhSWtqb0pqZkVhTmpzRTBERm16RWxVRlJublMxZWVMM0F0QTZ1WUt3cnE1?= =?utf-8?B?ekF4Tjg4bXkxeFlKUkludm1sNjVDTHFtcVdvcXB5b2QyMkJXYjZENlZFWmlW?= =?utf-8?B?cmJGVU1wU1BBMVk0ZnNwekM2MzMxeFJKWGxLTFhjL1BrcEZIZUNNMTYycVQr?= =?utf-8?B?WFBodlJwKzVxODVVWUx1bzhhZ2NRN2dYckhCemtkOEYzZWpnVVBMNDV1S3FW?= =?utf-8?B?Z05aalJpbDVZWmsvKzArczFQNzQ2dFYwOWxxTzIvVWd6aTg0cCt3bStXbXhj?= =?utf-8?B?QlBFQ2JVS2RIWjY1Wm02K0RQSGlRMGJ3dEdsNHZNYXVNQmQvSk1BU1BaTmFM?= =?utf-8?B?akRYRHJHNXFzR1hwNWVSdlhBZERsTWRyNEVsODFDN2FyZTZvWGlJbFdsTlRV?= =?utf-8?B?WGdYbjRrZE9vU0trUEcwY0d4Nm5HbVdtdGxwUnFjRExBQVZMM3RvYnFOYlhr?= =?utf-8?B?WXNQalRTMTlnTGhLU1pIbDUvcVhXdnRrdk95MnF1bXo4Q0R2Ujk2bHJlOWpt?= =?utf-8?B?TlZLVGtENlQrQUxGR3NxRk5aV1MyT1hmMllQMlE3a0E2ckZwUjdUT2RTeFQx?= =?utf-8?B?OTduWldOTWk3QytrbFVZaWJiUGtyNEgyZW9VVWhNN2cwUnpGNmxhYnhFWG5N?= =?utf-8?B?clVza1Y2SEZhWEN2MFR3MFFKa05DbE9od21uY3RIRFlQVGJNUVZwQ3lxOXpB?= =?utf-8?B?YVROR09TVTE5UFVYRjF0ZzlOek9GQ2p6THA3SStHUm9BOUQzWFZxMngxNytq?= =?utf-8?B?Rkl5MXJvUDQ2bE9mU1J1aWhSMW1GSkcwZ0RRdDYyVm5oY3g4aGtpTk9YV2Vj?= =?utf-8?B?NnRSR0J1SFBDTENPM1RWaGkwMGRUdE1rMksxdWpzRDNLejh2QTlpbmFzMmZo?= =?utf-8?B?S2UvRDJaU0pwc0l4S2pCSnpxQjBYS0hJakZvdUREek5Oa0hqNlhUYVNoTzMw?= =?utf-8?B?dGhZRWxrVXEyc3QyT2Z4bWJCSitvaGFCVHlXZ05saDZPVk0wdUtCRlRVUmR0?= =?utf-8?B?QUdIWGRFTC8wZ29YcVdndE5wcm16L3BxTUh4TDlxRXlHcUM1RnBPUlFVYjl3?= =?utf-8?B?eFZTbVJzbGZUV2pQMnNDVEdyRXBqYkIzUmpRbDR5YWxqSFVEMmJjbTd1ZmVX?= =?utf-8?B?cmQ2T1dsMmxjajFoNVNNaytPRFZCOC9wT2Q0YUVLNW03eGpnazY1WlhaVmc2?= =?utf-8?B?aXhTOURzUFAwa2xGdFpyMTgyTnJpM01ScGcwWG9NK0pXaVZ3eXgySEh0VTAx?= =?utf-8?B?cWRCV2tCV3AzUmNHQ1d0bDdXdllVQnZ2WTNaei9ubHJydFNZTkQ4cEpYVlFP?= =?utf-8?B?YVhFLzBOZ09aM2hRbzNNeFBac0hNZUdUVGVWbk5GVGZzUFJmMzhsVGtZNCtK?= =?utf-8?B?VTF4U0lLbDg4ZzlSWktXb3pYTFQxQXNRVENQa1o2UllGMEQrYVlwT0VoVW8y?= =?utf-8?B?RWc5WjF4WHVhOW1CaUJtZU9JZHV0UGNNeE9NNkJENFAvY3UyUm4wekpIb1lK?= =?utf-8?B?ZnFiVHk0aVdENVc2QlZIRkpTM2drTU9DWFdHQ01GOXVYWE9EL1BNYTM0T0th?= =?utf-8?B?dVQ2QlNLRENjN3JlNG9ZUmtUeE81aXZTU1hYekxJclorZFc1SlZMNHorU05p?= =?utf-8?B?K3l3Q241Uk12MlE0Yi9ENjFJQmNldGdacUxQaG9vbHBjYmU3Q2xGdVNYaUl2?= =?utf-8?B?V0NDc003SXpnb2RUNCs0Ly85eDhBTGFMSnd2aWRTRm1wN2M5STNib1F4djhF?= =?utf-8?B?elFLbWpYaHlEOTlTWjc3UEE0TDJIK3ZTTFFuYVFwS3dQRGE2TzRGZGlYeW5G?= =?utf-8?B?TGdiZ24xSFBuR29sbXBJTHo0Zk9hcXdJU2VUZVMzRHd4TVdUeUdQbldvU1RZ?= =?utf-8?B?OUxYSGgzYUFOeG4xL1pWbUIzUkZnOGUyWkozMytCSzliOHBJTGhPZ0l6ZXhQ?= =?utf-8?B?NVE9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: L3XWD3Dw7geCrGcANx1R40aI3EYdxX5lOHjwDVz85aEApZ1BIfFLysqiuHfs8Kcp6XLsMTxYp9sP70BPRDIfZHz3rXhaXuyu/TO6933eY7UIqdtqe8njGdOdyc6/aqR3p7fQ2HD/+ToXH2LIf0RpNw1gcuUoAWQTcGcmsMnIY9kYMkjRIjX4+C3pZwaMEQr4mD+HLcicYjJsTB3J//XqpulEs1F3mm8n1PtrExIB9lf+a5An6hKthFb82kN55n+QGw+Kj0XQ+J5Qm/8SnEk83ZJsLI3DzgB6Ybfb973zo2znCp45P0tP7W0hj3Br9msM8I9I+uxWrs+SVhgYY3xusXL6kRHwW+OVnjdIuil0kL9CTnSBOEQxcy26ZPtRLxjS12kQqA1h5nqDh99aES2bVr5qOY/YxWJzI/YPJiW/NWO8VGLmJuNuiVpSfBBU1vy3NWYofqh6Be6EybTNT8uDNZB20DDJ6veZlTC4oUpCJf8aUWmcHEmBzcvZJ01qgVd21VEKY3pXdZUw/XGD/eNzjr9pKkRdQOoJmYfWIMTO3eSmahbMSBhotbpmiU2sJ/wn1JwwGmBqwIf7W8Oo0p7I9dHsC32whCEMyCxu88E3YSSGlCTeNl5q2As41d6Dv9T5KJHu7fOVrHsezkucxeI4JfoutwNBqq2bliU87Wn3ad4k4oZiHxkUwpn1LOhWQU1Lea1Y5PGZ1/h6uq68xffaZ7cAmwxkewpgjPPyoZupH1HUv1SXLzATQt8out6cYy7muOdAR9+sPm22NIPV1FKfR+bMzWq3YhlnpVqly+yVHp0UdrvB5/keCF3iVtHAy0KRCOtzpCTdeKBolNdT6T2l4aqDtFANBEy+/SDr88xcCWg= X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 05351d5a-92e2-4fba-feb0-08db668c41b6 X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Jun 2023 12:47:58.9844 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: x+AOpWDG2nvCz4VUqRLef0P8jHqFeIeAMqITYISSeiV0GJzZTP8RZIkU2Pt5B7s1UHuOL2JyNrVYi0YSoB/gQg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: BLAPR03MB5538 On Mon, Jun 05, 2023 at 05:54:50PM +0200, Jan Beulich wrote: > On 05.06.2023 17:10, Roger Pau Monne wrote: > > As specified on Errata 1474: > > > > "A core will fail to exit CC6 after about 1044 days after the last > > system reset. The time of failure may vary depending on the spread > > spectrum and REFCLK frequency." > > > > Detect when running on AMD Fam17h models 30h-3fh and setup a timer to > > prevent entering C6 after 1000 days have elapsed. Take into account > > the TSC value at boot in order to account for any time elapsed before > > Xen has been booted. > > Models 6x are also affected as per their RG. I have some trouble with > the site, so it's too slow going to actually try and fish out the RGs > for the other possible models. > > Given more than one set of models is affected I of course also wonder > whether Hygon CPUs wouldn't be affected, too. But I realize we have > hardly any means to find out. I've considered Hygon, but as you say I have no way I know to figure out what models are affected. > > @@ -1189,3 +1190,44 @@ const struct cpu_dev amd_cpu_dev = { > > .c_early_init = early_init_amd, > > .c_init = init_amd, > > }; > > + > > +static void cf_check disable_c6(void *arg) > > +{ > > + printk(XENLOG_WARNING > > + "Disabling C6 after 1000 days uptime due to AMD errata 1474\n"); > > + amd_disable_c6 = true; > > +} > > + > > +static int __init cf_check amd_c6_errata(void) > > +{ > > + /* > > + * Errata #1474: A Core May Hang After About 1044 Days > > + * Set up a timer to disable C6 after 1000 days uptime. > > + */ > > + s_time_t; > > + > > + if (boot_cpu_data.x86_vendor != X86_VENDOR_AMD || > > + boot_cpu_data.x86 != 0x17 || > > + (boot_cpu_data.x86_model & 0xf0) != 0x30) > > Perhaps better ... & ~0xf, just to be future-proof? Right, will need to change anyway to account for 0x60 models. But x86_model is a char, and hence the mask is 0xff only (8 bits). > > + return 0; > > + > > + /* > > + * Deduct current TSC value, this would be relevant if > > + * kexec'ed for example. > > + */ > > + delta = DAYS(1000) - tsc_ticks2ns(rdtsc()); > > Generally the TSC can be written (and we actually do so under certain > circumstances), so deriving any absolute time from the TSC value is of > at best questionable value. It's IMO better than not accounting for the TSC at all. Worst case is we end up disabling C6 before actually required, but that would leave us in safe position anyway. > Furthermore, perhaps better overall to suppress all of this logic when > we're running virtualized ourselves? Indeed, will do that. > > + if (delta > 0) { > > + static struct timer errata_c6; > > + > > + init_timer(&errata_c6, disable_c6, NULL, 0); > > + set_timer(&errata_c6, NOW() + delta); > > + } else > > + disable_c6(NULL); > > The log message is going to be misleading in this case. Maybe pass > that as the so far unused handler argument? Albeit I realize that this > will mean casting away const-ness, which isn't very nice. I think we could use the same message in both cases, what about: "Disabling C6 after 1000 days hardware uptime due to AMD errata 1474" > > --- a/xen/include/xen/time.h > > +++ b/xen/include/xen/time.h > > @@ -53,6 +53,7 @@ struct tm wallclock_time(uint64_t *ns); > > > > #define SYSTEM_TIME_HZ 1000000000ULL > > #define NOW() ((s_time_t)get_s_time()) > > +#define DAYS(_d) ((s_time_t)((_d) * 86400000000000ULL)) > > #define SECONDS(_s) ((s_time_t)((_s) * 1000000000ULL)) > > #define MILLISECS(_ms) ((s_time_t)((_ms) * 1000000ULL)) > > #define MICROSECS(_us) ((s_time_t)((_us) * 1000ULL)) > > While consistent with the other macros we have here, I think this would > be neater as > > #define DAYS(_d) SECONDS((_d) * 86400ULL)) Hm, it would make more sense to introduce the missing macros between DAYS() and SECONDS() (MINUTES() and HOURS()) and use HOURS() in DAYS()? Thanks, Roger. From xen-devel-bounces@lists.xenproject.org Tue Jun 06 13:16:27 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 06 Jun 2023 13:16:27 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544063.849558 (Exim 4.92) (envelope-from ) id 1q6WXu-0003b2-Fq; Tue, 06 Jun 2023 13:16:22 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544063.849558; Tue, 06 Jun 2023 13:16:22 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6WXu-0003av-D7; Tue, 06 Jun 2023 13:16:22 +0000 Received: by outflank-mailman (input) for mailman id 544063; Tue, 06 Jun 2023 13:16:21 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6WXt-0003ap-Qw for xen-devel@lists.xenproject.org; Tue, 06 Jun 2023 13:16:21 +0000 Received: from esa5.hc3370-68.iphmx.com (esa5.hc3370-68.iphmx.com [216.71.155.168]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 525af964-046c-11ee-b232-6b7b168915f2; Tue, 06 Jun 2023 15:16:19 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 525af964-046c-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686057379; h=from:to:cc:subject:date:message-id:mime-version: content-transfer-encoding; bh=xKNvDM83jJo2UbvnYJs/vwQ1dW+2+/9iUrX9H2+N9PI=; b=Dr8KUqIHOWjL+8EbF2KW8oI4JSIxK/syc9Nmeai7Twq//jvYtbj+qFF9 tN9EvcluE9bDflsDmsO85akTUem/2NFP9vGehyBE7rZtdg6KWkV2GiXkT mNLaHimzShTAd0DvQaLDU0g+gOHMmuwdS9q5yPWkFYl3H4HMsDOcJmONr c=; Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none X-SBRS: 4.0 X-MesageID: 110519653 X-Ironport-Server: esa5.hc3370-68.iphmx.com X-Remote-IP: 162.221.156.123 X-Policy: $RELAYED IronPort-Data: A9a23:BiSbvatVB7Igv+yc6q3Cg5HarOfnVJVeMUV32f8akzHdYApBsoF/q tZmKWqEOquKY2PxfIoiOYyx/U5Xv8eDn9dqGgtkrns2FXhE+JbJXdiXEBz9bniYRiHhoOCLz O1FM4Wdc5pkJpP4jk3wWlQ0hSAkjclkfpKlVKiffHg3HVQ+IMsYoUoLs/YjhYJ1isSODQqIu Nfjy+XSI1bg0DNvWo4uw/vrRChH4rKq4Fv0gnRkPaoQ5AGGySFPZH4iDfrZw0XQE9E88tGSH 44v/JnhlkvF8hEkDM+Sk7qTWiXmlZaLYGBiIlIPM0STqkAqSh4ai87XB9JFAatjsB2bnsgZ9 Tl4ncfYpTHFnEH7sL91vxFwS0mSNEDdkVPNCSDXXce7lyUqf5ZwqhnH4Y5f0YAwo45K7W9yG fMwCylVXy2o1s6Kmp3ib643lOgOJc7pFdZK0p1g5Wmx4fcORJnCR+PB5MNC3Sd2jcdLdRrcT 5NHM3w1Nk2GOkARfA5NU/rSn8/x7pX7WzRetFKSo7tx+2XJxRZ9+LPsLMDUapqBQsA9ckOw/ zueoj2oXExBXDCZ4RTC0ijzg8zmpCLUH9opPfqIr6VSx3TGkwT/DzVJDADm8JFVkHWWQt9aN gkY9zQjqYA080qkSMS7WAe3yFafohMSUtxQGsUg5Q2Nw7aS6AGcbkAfVSJIYtEisM4wRBQp2 0WPktevAiZg2JWNQG+Z3qeZq3W1Iyd9BX8PY2oIQBUI5/HnoZovlVTfQ9B7Cqm3g9bpXzbqz Fi3QDMW3utJy5RRjuPioA6B2mj3znTUcuIrzibOBlOYxVJVWNSKPqnvskr3wP9HLq/MGzFto 0M4s8SZ6ekPC7SEmyqMXPgBEdmV2hqVDNHPqQUxRsd8rlxB71bmJNkNu28meC+FJ+5eIVfUj FnvVRS9DXO5FF+jdudJbo24EKzGJoCwRI2+Bpg4gjejC6WdlTNrHgk0PSZ8PEi3yiDAdJ3T3 r/FGftA9V5AVcxaIMOeHo/xK4MDyCEk3n/0Tpvm1Rmh2rf2TCfLGepUYQPWNLtktf3sTODpH zF3bZLi9vmieLemPnm/HXA7czjm0kTX9bip8pcKJ4Zv0yJtGX07Cu+5/F/SU9UNokihrc+Rp ivVchYBmDLCaYjvdV3ihoZLNOm+Av6SbBsTYUQRALpf8yFyO9jzsPZDKcNfkHtO3LUL8MOYh sItI62oasmjgBydk9jBRfERdLBfSSk= IronPort-HdrOrdr: A9a23:Rls876lF3u/PRdNmQs+pyuBPESbpDfLo3DAbv31ZSRFFG/Fw9/ rCoB17726QtN91YhsdcL+7V5VoLUmzyXcX2/hyAV7BZmnbUQKTRekP0WKL+Vbd8kbFh41gPM lbEpSXCLfLfCJHZcSR2njELz73quP3jJxBho3lvghQpRkBUdAF0+/gYDzranGfQmN9dP0EPa vZ3OVrjRy6d08aa8yqb0N1JNQq97Xw5fTbiQdtPW9f1DWz X-Talos-CUID: =?us-ascii?q?9a23=3ApY4MAWlJ94VbM2EHGb1ORsLRFanXOV7ElEbtCB6?= =?us-ascii?q?UNTxGEZjSEk281apjkeM7zg=3D=3D?= X-Talos-MUID: 9a23:KPTY7gaVSyIPoeBTmXjM3m5nF+5R4ovpUHsk1qVf4PHDHHkl X-IronPort-AV: E=Sophos;i="6.00,221,1681185600"; d="scan'208";a="110519653" From: Anthony PERARD To: CC: Anthony PERARD , Stefan Hajnoczi , Stefano Stabellini , "Paul Durrant" , Subject: [PATCH] xen-block: fix segv on unrealize Date: Tue, 6 Jun 2023 14:16:05 +0100 Message-ID: <20230606131605.55596-1-anthony.perard@citrix.com> X-Mailer: git-send-email 2.39.2 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain From: Anthony PERARD Backtrace: qemu_lockcnt_lock (lockcnt=0xb4) at ../util/lockcnt.c:238 aio_set_fd_handler (ctx=0x0, fd=51, is_external=true, io_read=0x0, io_write=0x0, io_poll=0x0, io_poll_ready=0x0, opaque=0x0) at ../util/aio-posix.c:119 xen_device_unbind_event_channel (xendev=0x55c6da5b5000, channel=0x55c6da6c4c80, errp=0x7fff641ac608) at ../hw/xen/xen-bus.c:926 xen_block_dataplane_stop (dataplane=0x55c6da6ddbe0) at ../hw/block/dataplane/xen-block.c:719 xen_block_disconnect (xendev=0x55c6da5b5000, errp=0x0) at ../hw/block/xen-block.c:48 xen_block_unrealize (xendev=0x55c6da5b5000) at ../hw/block/xen-block.c:154 xen_device_unrealize (dev=0x55c6da5b5000) at ../hw/xen/xen-bus.c:956 xen_device_exit (n=0x55c6da5b50d0, data=0x0) at ../hw/xen/xen-bus.c:985 notifier_list_notify (list=0x55c6d91f9820 , data=0x0) at ../util/notify.c:39 qemu_run_exit_notifiers () at ../softmmu/runstate.c:760 Fixes: f6eac904f682 ("xen-block: implement BlockDevOps->drained_begin()") Signed-off-by: Anthony PERARD -- CC: Stefan Hajnoczi --- hw/xen/xen-bus.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/hw/xen/xen-bus.c b/hw/xen/xen-bus.c index 1e08cf027a..ece8ec40cd 100644 --- a/hw/xen/xen-bus.c +++ b/hw/xen/xen-bus.c @@ -923,8 +923,10 @@ void xen_device_unbind_event_channel(XenDevice *xendev, QLIST_REMOVE(channel, list); - aio_set_fd_handler(channel->ctx, qemu_xen_evtchn_fd(channel->xeh), - NULL, NULL, NULL, NULL, NULL); + if (channel->ctx) { + aio_set_fd_handler(channel->ctx, qemu_xen_evtchn_fd(channel->xeh), + NULL, NULL, NULL, NULL, NULL); + } if (qemu_xen_evtchn_unbind(channel->xeh, channel->local_port) < 0) { error_setg_errno(errp, errno, "xenevtchn_unbind failed"); -- Anthony PERARD From xen-devel-bounces@lists.xenproject.org Tue Jun 06 13:23:22 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 06 Jun 2023 13:23:22 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544068.849568 (Exim 4.92) (envelope-from ) id 1q6WeR-00054O-6F; Tue, 06 Jun 2023 13:23:07 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544068.849568; Tue, 06 Jun 2023 13:23:07 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6WeR-00054H-3P; Tue, 06 Jun 2023 13:23:07 +0000 Received: by outflank-mailman (input) for mailman id 544068; Tue, 06 Jun 2023 13:23:06 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6WeP-00054B-Lz for xen-devel@lists.xenproject.org; Tue, 06 Jun 2023 13:23:06 +0000 Received: from EUR03-AM7-obe.outbound.protection.outlook.com (mail-am7eur03on2061b.outbound.protection.outlook.com [2a01:111:f400:7eaf::61b]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 438ad029-046d-11ee-8611-37d641c3527e; Tue, 06 Jun 2023 15:23:03 +0200 (CEST) Received: from AS9PR06CA0248.eurprd06.prod.outlook.com (2603:10a6:20b:45f::18) by PAXPR08MB6413.eurprd08.prod.outlook.com (2603:10a6:102:de::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.32; Tue, 6 Jun 2023 13:22:51 +0000 Received: from AM7EUR03FT064.eop-EUR03.prod.protection.outlook.com (2603:10a6:20b:45f:cafe::ae) by AS9PR06CA0248.outlook.office365.com (2603:10a6:20b:45f::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.32 via Frontend Transport; Tue, 6 Jun 2023 13:22:51 +0000 Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by AM7EUR03FT064.mail.protection.outlook.com (100.127.140.127) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.19 via Frontend Transport; Tue, 6 Jun 2023 13:22:50 +0000 Received: ("Tessian outbound 5154e9d36775:v136"); Tue, 06 Jun 2023 13:22:50 +0000 Received: from bb9657de677d.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 67172697-E6E1-4ED3-BF13-A3E6A4A2F0C0.1; Tue, 06 Jun 2023 13:22:40 +0000 Received: from EUR03-AM7-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id bb9657de677d.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Tue, 06 Jun 2023 13:22:40 +0000 Received: from AM6PR08MB3749.eurprd08.prod.outlook.com (2603:10a6:20b:8f::22) by AS8PR08MB10141.eurprd08.prod.outlook.com (2603:10a6:20b:631::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.32; Tue, 6 Jun 2023 13:22:36 +0000 Received: from AM6PR08MB3749.eurprd08.prod.outlook.com ([fe80::6457:d14f:abe0:be0e]) by AM6PR08MB3749.eurprd08.prod.outlook.com ([fe80::6457:d14f:abe0:be0e%4]) with mapi id 15.20.6455.030; Tue, 6 Jun 2023 13:22:36 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 438ad029-046d-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=U5cPPZZbyI6F14h6UxzG3H9Zgc0lzsCizXVzCD4FGys=; b=ujeo9VnhYhICMaRyarF19y5tXYO7wBp2qlA3ti+IgQZ1xaokwaTx3XPE9YPv+xVoID/0mgODgeX6KoIo+YPHZsnDRtjtcPKxc/emwYtjHOJ/m7FOGGru/P9eejxwoFpOk2TEiBOFORWINC/HegKyeWbon/qIxLUaA1bwN37UDf0= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C X-CheckRecipientChecked: true X-CR-MTA-CID: 68a374b901ba3e6b X-CR-MTA-TID: 64aa7808 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=hV6NzKHRgDNVJz8iMBFAiO9a5Z2d+wVN/j+szkaApgbJY+ytMi9PJAci81AQwR8pe8iXRfWlq9h4xz2ag5ZNAo1OiqLxs3h++dlz6XLJbtG5FGYuacW6ApCIH/D9qj2ZLjNoUjHZ1pax3FYqsbVgBV84z0uK/YKfzQA5JpK0t393YLchYESuN0E5H1TqZEL7fpmw54fXZg5pUXAgz3rDSbiSZ0Pis7SaqwNyikUPw79BL1JbsMwNxcn2JqSIhz4pp34EbB4n8wqp826U8gTeqUIdHqZYegSapVxzaGG0UKhnqtHml3L07/Ub2LAMV1lMuJiGbX2fxJNO/Cywy7mhcA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=U5cPPZZbyI6F14h6UxzG3H9Zgc0lzsCizXVzCD4FGys=; b=Kp4EKQduogVRK0H6DSWWuDlL18iIwENdXSOKX3nBTX2/PhUl5bV4sOs01K8a+nM7v8HobWAbQ6VNclAReXKCGmjAgxJ/xsn5toh9h4BREoAdz8h1Z+d4m4+HR2IDw5NS+grUJOO0L6TrBTZaYzRjJMwS30K5CcKSsgWHnnHaRe+KRj11GLNTEs/X61QhoDy+Bu/scCoDJxPRPUhnkj4fQLxzqfuqLKVcd6XR67AcMnQerdkT03eTgqHNBfXSs+jlwu3h2zFNKxlFGzRZCC5bO8LrGuEf9B71l7pPcyybD3/064Kctz8nUeCU6Ld9NNnv3YpWDUhGXdwxgbCrdW4BJw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=U5cPPZZbyI6F14h6UxzG3H9Zgc0lzsCizXVzCD4FGys=; b=ujeo9VnhYhICMaRyarF19y5tXYO7wBp2qlA3ti+IgQZ1xaokwaTx3XPE9YPv+xVoID/0mgODgeX6KoIo+YPHZsnDRtjtcPKxc/emwYtjHOJ/m7FOGGru/P9eejxwoFpOk2TEiBOFORWINC/HegKyeWbon/qIxLUaA1bwN37UDf0= From: Luca Fancellu To: Julien Grall CC: Xen-devel , Wei Chen , Stefano Stabellini , Volodymyr Babchuk , Bertrand Marquis Subject: Re: [PATCH v8 05/12] arm/sve: save/restore SVE context switch Thread-Topic: [PATCH v8 05/12] arm/sve: save/restore SVE context switch Thread-Index: AQHZk5D/vhrjX3TOaEGV0HOTTY3Coa91vVKAgAgPagA= Date: Tue, 6 Jun 2023 13:22:36 +0000 Message-ID: References: <20230531072413.868673-1-luca.fancellu@arm.com> <20230531072413.868673-6-luca.fancellu@arm.com> In-Reply-To: Accept-Language: en-GB, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-mailer: Apple Mail (2.3731.600.7) Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-traffictypediagnostic: AM6PR08MB3749:EE_|AS8PR08MB10141:EE_|AM7EUR03FT064:EE_|PAXPR08MB6413:EE_ X-MS-Office365-Filtering-Correlation-Id: cbbd9007-eee5-40da-cdd1-08db669120aa x-checkrecipientrouted: true nodisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: RF8luBUHojaB2Z+3UtBIWWS4Slr7pwtJJ0TzYJMk0DWBUFCoeP+gV5INavqFy4+OM53Kd/QLsomHiloa8DbDU/XxDCtpsmBsU3sgVX/cuj+PNC9ZpvVNA12qn3VtLXMvdOoZPRiucQOq74g2NkvpHyMbg/0yvPeuudJb2pomSXn+pI7tSSFKsGwlOtmEndAwJFbyoFDSPQ8baKaBilPOZSo2erndHlS1TIOZ2HY6AbkYvW6RD7qnKdNFnDnyzxkbJYVj/G97pSqfsNgi5FhDhvcI+squ5YkT1aCPm8lrVgzFFCu1dd/sDc7dVTTcPLYBsR9r3XZUh00HHLLDZaxCm3IOHNw0TrPtwqiJwHwZQq/IgcjDZT7a5liQg7Bie08UTPSJEC2POgMpLTCfDHRNesuzqqDAMg+7Yw1AEp88Fq+H620ih4QrNJfdAFyz08VVDfd4V53m9BIujcUfEEGSkbaELQI5HlW0w1zwVuLHhg+7eS+wI+szzSoB981vqe0ZqtH9nLGP0zjejm+EmQBVM9KhCb1W49H86F6zo4d2Kgn08BKULf4In18m0RwkbZj6vUxgxL7AbY/g+WCkWZJO/9mPIjSEnE52ngSlp3jMeaF4mdYd0WVBaEq+yn+9rpcMWxzSchNh/F5cDymbT040Sw== X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM6PR08MB3749.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(136003)(366004)(346002)(39860400002)(376002)(396003)(451199021)(186003)(8936002)(8676002)(478600001)(54906003)(6486002)(316002)(41300700001)(5660300002)(66946007)(26005)(91956017)(4326008)(66476007)(66556008)(64756008)(71200400001)(66446008)(6916009)(53546011)(6512007)(76116006)(6506007)(83380400001)(2906002)(2616005)(30864003)(38100700002)(122000001)(38070700005)(33656002)(86362001)(36756003)(45980500001)(579004);DIR:OUT;SFP:1101; Content-Type: text/plain; charset="utf-8" Content-ID: Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR08MB10141 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: AM7EUR03FT064.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: dbd213d5-59f0-4946-673a-08db6691184d X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: JxD/vki0yyKP0ESMLbUZrA3N38M9sPvUIbZ/VSk/7MMT0KJ4F0pf0kAlKFpWVVjYnCdFQj54P3OGvHZir6GzgrDgt4vrz613xfW+AngLejXhCv/pC7i8hRnZkog2n+2F2Dzw5c0/ED3Mu8d7y9z473QsuFAQ+HDjVJGKeGkLuxLOituO/FW/Ycmf8A0KOKEdDF8oLTMPMs79CnPJIIDCZ0IXr7o+Hu0tde+V3yyZFRhz3ho3ScikgBJwknKCkhuEzYxQO62Lhcgu9KBhfYR0c29J0KDhC1PkGCgetZEnuVY7cRc5tyKlrqrqJxQ2P2ljehYJmA0I2S9F57aM/x21g1T2gjkFsWcS17DVoeUT7cCGinTK5eVMoezjd63kn7WzYtB0bE55EC8fD7Ya9FCXNMY8yxjsMpmEPBNmhFTvhHF5d6JiIqV4arSkySRdExWURn+J67CLRO9PjMAyZAV9u/c5BamTyzBftOVMhkmaRB8JsBQAWiUuA+WTqdvFP7sLXQG2v8YidQtpyDjnp3POi7njqusR7fuDtO+I9Zk8SaOyIUJKOxTUkqFaSIu2WrGBFgfKAYF0TuAfGTeIK1k1H3FcaUf4GYtvxWxE2BNPrXlZyj/l7I5Sl9zVpuWzDobps4XJxLUlrrg6tOyS59bxB9wYzK10Xc2BNzpQ32ZBA/85k8Y98FifRVUEB8MNqmcEAJnEoE+I2s2KJXQcatc8/Sj1vwuzJIFZ+rzuWnoGdgE= X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230028)(4636009)(346002)(136003)(39860400002)(376002)(396003)(451199021)(40470700004)(46966006)(36840700001)(8676002)(8936002)(6862004)(478600001)(54906003)(41300700001)(5660300002)(316002)(6486002)(26005)(70586007)(4326008)(70206006)(6512007)(53546011)(6506007)(336012)(2616005)(83380400001)(186003)(40460700003)(2906002)(47076005)(30864003)(82740400003)(81166007)(40480700001)(356005)(36860700001)(86362001)(33656002)(82310400005)(36756003);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Jun 2023 13:22:50.6788 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: cbbd9007-eee5-40da-cdd1-08db669120aa X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: AM7EUR03FT064.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR08MB6413 DQoNCj4gT24gMSBKdW4gMjAyMywgYXQgMTE6MTcsIEJlcnRyYW5kIE1hcnF1aXMgPEJlcnRyYW5k Lk1hcnF1aXNAYXJtLmNvbT4gd3JvdGU6DQo+IA0KPiBIaSBMdWNhLA0KPiANCj4+IE9uIDMxIE1h eSAyMDIzLCBhdCAwOToyNCwgTHVjYSBGYW5jZWxsdSA8THVjYS5GYW5jZWxsdUBhcm0uY29tPiB3 cm90ZToNCj4+IA0KPj4gU2F2ZS9yZXN0b3JlIGNvbnRleHQgc3dpdGNoIGZvciBTVkUsIGFsbG9j YXRlIG1lbW9yeSB0byBjb250YWluDQo+PiB0aGUgWjAtMzEgcmVnaXN0ZXJzIHdob3NlIGxlbmd0 aCBpcyBtYXhpbXVtIDIwNDggYml0cyBlYWNoIGFuZA0KPj4gRkZSIHdobyBjYW4gYmUgbWF4aW11 bSAyNTYgYml0cywgdGhlIGFsbG9jYXRlZCBtZW1vcnkgZGVwZW5kcyBvbg0KPj4gaG93IG1hbnkg Yml0cyBpcyB0aGUgdmVjdG9yIGxlbmd0aCBmb3IgdGhlIGRvbWFpbiBhbmQgaG93IG1hbnkgYml0 cw0KPj4gYXJlIHN1cHBvcnRlZCBieSB0aGUgcGxhdGZvcm0uDQo+PiANCj4+IFNhdmUgUDAtMTUg d2hvc2UgbGVuZ3RoIGlzIG1heGltdW0gMjU2IGJpdHMgZWFjaCwgaW4gdGhpcyBjYXNlIHRoZQ0K Pj4gbWVtb3J5IHVzZWQgaXMgZnJvbSB0aGUgZnByZWdzIGZpZWxkIGluIHN0cnVjdCB2ZnBfc3Rh dGUsDQo+PiBiZWNhdXNlIFYwLTMxIGFyZSBwYXJ0IG9mIFowLTMxIGFuZCB0aGlzIHNwYWNlIHdv dWxkIGhhdmUgYmVlbg0KPj4gdW51c2VkIGZvciBTVkUgZG9tYWluIG90aGVyd2lzZS4NCj4+IA0K Pj4gQ3JlYXRlIHpjcl9lbHsxLDJ9IGZpZWxkcyBpbiBhcmNoX3ZjcHUsIGluaXRpYWxpc2UgemNy X2VsMiBvbiB2Y3B1DQo+PiBjcmVhdGlvbiBnaXZlbiB0aGUgcmVxdWVzdGVkIHZlY3RvciBsZW5n dGggYW5kIHJlc3RvcmUgaXQgb24NCj4+IGNvbnRleHQgc3dpdGNoLCBzYXZlL3Jlc3RvcmUgWkNS X0VMMSB2YWx1ZSBhcyB3ZWxsLg0KPj4gDQo+PiBMaXN0IGltcG9ydCBtYWNyb3MgZnJvbSBMaW51 eCBpbiBSRUFETUUuTGludXhQcmltaXRpdmVzLg0KPj4gDQo+PiBTaWduZWQtb2ZmLWJ5OiBMdWNh IEZhbmNlbGx1IDxsdWNhLmZhbmNlbGx1QGFybS5jb20+DQo+IA0KPiBSZXZpZXdlZC1ieTogQmVy dHJhbmQgTWFycXVpcyA8YmVydHJhbmQubWFycXVpc0Bhcm0uY29tPg0KPiANCj4gQ2hlZXJzDQo+ IEJlcnRyYW5kDQo+IA0KPj4gLS0tDQo+PiBDaGFuZ2VzIGZyb20gdjc6DQo+PiAtIEZpeGVkIGNv bW1lbnRzIGZvciBzdmVfY29udGV4dF9pbml0IGFuZCBzdmVfY29udGV4dF9mcmVlLA0KPj4gIHBy b3RlY3QgYXJjaC52ZnAuc3ZlX3pyZWdfY3R4X2VuZCwgYXJjaC56Y3JfZWwxLCBhcmNoLnpjcl9l bDINCj4+ICB3aXRoIGlmZGVmcy4gKEp1bGllbikNCj4+IC0gR2l2ZW4gdGhlIGNoYW5nZXMsIGRy b3BwZWQgQmVydHJhbmQncyBSLWJ5DQoNCkhpIEp1bGllbiwNCg0KQXJlIHlvdSBvayB3aXRoIHRo ZSBjaGFuZ2VzIEnigJl2ZSBkb25lPyBBcmUgdGhleSBhZGRyZXNzaW5nIHlvdXIgbGFzdCBjb21t ZW50cz8NCg0KQ2hlZXJzLA0KTHVjYQ0KDQo+PiBDaGFuZ2VzIGZyb20gdjY6DQo+PiAtIEFkZCBj b21tZW50IGZvciBleHBsYWluIHdoeSBzdmVfc2F2ZS9zdmVfbG9hZCBhcmUgZGlmZmVyZW50IGZy b20NCj4+ICBMaW51eCwgYWRkIG1hY3JvcyBpbiB4ZW4vYXJjaC9hcm0vUkVBRE1FLkxpbnV4UHJp bWl0aXZlcyAoSnVsaWVuKQ0KPj4gLSBBZGQgY29tbWVudHMgaW4gc3ZlX2NvbnRleHRfaW5pdCBh bmQgc3ZlX2NvbnRleHRfZnJlZSwgaGFuZGxlIHRoZQ0KPj4gIGNhc2Ugd2hlcmUgc3ZlX3pyZWdf Y3R4X2VuZCBpcyBOVUxMLCBtb3ZlIHNldHRpbmcgb2Ygdi0+YXJjaC56Y3JfZWwyDQo+PiAgaW4g c3ZlX2NvbnRleHRfaW5pdCAoSnVsaWVuKQ0KPj4gLSByZW1vdmUgc3R1YnMgZm9yIHN2ZV9jb250 ZXh0XyogYW5kIHN2ZV9zYXZlXyogYW5kIHJlbHkgb24gY29tcGlsZXINCj4+ICBEQ0UgKEphbikN Cj4+IC0gQWRkIGNvbW1lbnRzIGZvciBzdmVfc2F2ZV9jdHgvc3ZlX2xvYWRfY3R4IChKdWxpZW4p DQo+PiBDaGFuZ2VzIGZyb20gdjU6DQo+PiAtIHVzZSBYRlJFRSBpbnN0ZWFkIG9mIHhmcmVlLCBr ZWVwIHRoZSBoZWFkZXJzIChKdWxpZW4pDQo+PiAtIEF2b2lkIG1hdGggY29tcHV0YXRpb24gZm9y IGV2ZXJ5IHNhdmUvcmVzdG9yZSwgc3RvcmUgdGhlIGNvbXB1dGF0aW9uDQo+PiAgaW4gc3RydWN0 IHZmcF9zdGF0ZSBvbmNlIChCZXJ0cmFuZCkNCj4+IC0gcHJvdGVjdCBhY2Nlc3MgdG8gdi0+ZG9t YWluLT5hcmNoLnN2ZV92bCBpbnNpZGUgYXJjaF92Y3B1X2NyZWF0ZSBub3cNCj4+ICB0aGF0IHN2 ZV92bCBpcyBhdmFpbGFibGUgb25seSBvbiBhcm02NA0KPj4gQ2hhbmdlcyBmcm9tIHY0Og0KPj4g LSBObyBjaGFuZ2VzDQo+PiBDaGFuZ2VzIGZyb20gdjM6DQo+PiAtIGRvbid0IHVzZSBmaXhlZCBs ZW4gdHlwZXMgd2hlbiBub3QgbmVlZGVkIChKYW4pDQo+PiAtIG5vdyBWTCBpcyBhbiBlbmNvZGVk IHZhbHVlLCBkZWNvZGUgaXQgYmVmb3JlIHVzaW5nLg0KPj4gQ2hhbmdlcyBmcm9tIHYyOg0KPj4g LSBObyBjaGFuZ2VzDQo+PiBDaGFuZ2VzIGZyb20gdjE6DQo+PiAtIE5vIGNoYW5nZXMNCj4+IENo YW5nZXMgZnJvbSBSRkM6DQo+PiAtIE1vdmVkIHpjcl9lbDIgZmllbGQgaW50cm9kdWN0aW9uIGlu IHRoaXMgcGF0Y2gsIHJlc3RvcmUgaXRzDQo+PiAgY29udGVudCBpbnNpZGUgc3ZlX3Jlc3RvcmVf c3RhdGUgZnVuY3Rpb24uIChKdWxpZW4pDQo+PiAtLS0NCj4+IHhlbi9hcmNoL2FybS9SRUFETUUu TGludXhQcmltaXRpdmVzICAgICAgfCAgIDQgKy0NCj4+IHhlbi9hcmNoL2FybS9hcm02NC9zdmUt YXNtLlMgICAgICAgICAgICAgfCAxNDcgKysrKysrKysrKysrKysrKysrKysrKysNCj4+IHhlbi9h cmNoL2FybS9hcm02NC9zdmUuYyAgICAgICAgICAgICAgICAgfCAgOTEgKysrKysrKysrKysrKysN Cj4+IHhlbi9hcmNoL2FybS9hcm02NC92ZnAuYyAgICAgICAgICAgICAgICAgfCAgNzkgKysrKysr LS0tLS0tDQo+PiB4ZW4vYXJjaC9hcm0vZG9tYWluLmMgICAgICAgICAgICAgICAgICAgIHwgICA2 ICsNCj4+IHhlbi9hcmNoL2FybS9pbmNsdWRlL2FzbS9hcm02NC9zdmUuaCAgICAgfCAgIDQgKw0K Pj4geGVuL2FyY2gvYXJtL2luY2x1ZGUvYXNtL2FybTY0L3N5c3JlZ3MuaCB8ICAgMyArDQo+PiB4 ZW4vYXJjaC9hcm0vaW5jbHVkZS9hc20vYXJtNjQvdmZwLmggICAgIHwgIDE2ICsrKw0KPj4geGVu L2FyY2gvYXJtL2luY2x1ZGUvYXNtL2RvbWFpbi5oICAgICAgICB8ICAgNSArDQo+PiA5IGZpbGVz IGNoYW5nZWQsIDMyMCBpbnNlcnRpb25zKCspLCAzNSBkZWxldGlvbnMoLSkNCj4+IA0KPj4gZGlm ZiAtLWdpdCBhL3hlbi9hcmNoL2FybS9SRUFETUUuTGludXhQcmltaXRpdmVzIGIveGVuL2FyY2gv YXJtL1JFQURNRS5MaW51eFByaW1pdGl2ZXMNCj4+IGluZGV4IDc2YzhkZjI5ZTQxNi4uMzAxYzAy NzFiYmU0IDEwMDY0NA0KPj4gLS0tIGEveGVuL2FyY2gvYXJtL1JFQURNRS5MaW51eFByaW1pdGl2 ZXMNCj4+ICsrKyBiL3hlbi9hcmNoL2FybS9SRUFETUUuTGludXhQcmltaXRpdmVzDQo+PiBAQCAt NjksNyArNjksOSBAQCBTVkUgYXNzZW1ibHkgbWFjcm86IGxhc3Qgc3luYyBAIHY2LjMuMCAobGFz dCBjb21taXQ6IDQ1NzM5MWIwMzgwMykNCj4+IGxpbnV4L2FyY2gvYXJtNjQvaW5jbHVkZS9hc20v ZnBzaW1kbWFjcm9zLmggICB4ZW4vYXJjaC9hcm0vaW5jbHVkZS9hc20vYXJtNjQvc3ZlLWFzbS5T DQo+PiANCj4+IFRoZSBmb2xsb3dpbmcgbWFjcm9zIHdlcmUgdGFrZW4gZnJvbSBMaW51eDoNCj4+ IC0gICAgX2NoZWNrX2dlbmVyYWxfcmVnLCBfY2hlY2tfbnVtLCBfc3ZlX3JkdmwNCj4+ICsgICAg X2NoZWNrX2dlbmVyYWxfcmVnLCBfY2hlY2tfbnVtLCBfc3ZlX3JkdmwsIF9fZm9yLCBfZm9yLCBf c3ZlX2NoZWNrX3pyZWcsDQo+PiArICAgIF9zdmVfY2hlY2tfcHJlZywgX3N2ZV9zdHJfdiwgX3N2 ZV9sZHJfdiwgX3N2ZV9zdHJfcCwgX3N2ZV9sZHJfcCwgX3N2ZV9yZGZmciwNCj4+ICsgICAgX3N2 ZV93cmZmcg0KPj4gDQo+PiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0NCj4+IGFybTMyDQo+PiBkaWZmIC0tZ2l0IGEv eGVuL2FyY2gvYXJtL2FybTY0L3N2ZS1hc20uUyBiL3hlbi9hcmNoL2FybS9hcm02NC9zdmUtYXNt LlMNCj4+IGluZGV4IDRkMTU0OTM0NDczMy4uNTlkYmVmYmJiMjUyIDEwMDY0NA0KPj4gLS0tIGEv eGVuL2FyY2gvYXJtL2FybTY0L3N2ZS1hc20uUw0KPj4gKysrIGIveGVuL2FyY2gvYXJtL2FybTY0 L3N2ZS1hc20uUw0KPj4gQEAgLTE3LDYgKzE3LDE4IEBADQo+PiAgICAuZW5kaWYNCj4+IC5lbmRt DQo+PiANCj4+ICsubWFjcm8gX3N2ZV9jaGVja196cmVnIHpucg0KPj4gKyAgICAuaWYgKFx6bnIp IDwgMCB8fCAoXHpucikgPiAzMQ0KPj4gKyAgICAgICAgLmVycm9yICJCYWQgU2NhbGFibGUgVmVj dG9yIEV4dGVuc2lvbiB2ZWN0b3IgcmVnaXN0ZXIgbnVtYmVyIFx6bnIuIg0KPj4gKyAgICAuZW5k aWYNCj4+ICsuZW5kbQ0KPj4gKw0KPj4gKy5tYWNybyBfc3ZlX2NoZWNrX3ByZWcgcG5yDQo+PiAr ICAgIC5pZiAoXHBucikgPCAwIHx8IChccG5yKSA+IDE1DQo+PiArICAgICAgICAuZXJyb3IgIkJh ZCBTY2FsYWJsZSBWZWN0b3IgRXh0ZW5zaW9uIHByZWRpY2F0ZSByZWdpc3RlciBudW1iZXIgXHBu ci4iDQo+PiArICAgIC5lbmRpZg0KPj4gKy5lbmRtDQo+PiArDQo+PiAubWFjcm8gX2NoZWNrX251 bSBuLCBtaW4sIG1heA0KPj4gICAgLmlmIChcbikgPCAoXG1pbikgfHwgKFxuKSA+IChcbWF4KQ0K Pj4gICAgICAgIC5lcnJvciAiTnVtYmVyIFxuIG91dCBvZiByYW5nZSBbXG1pbixcbWF4XSINCj4+ IEBAIC0yNiw2ICszOCw1NCBAQA0KPj4gLyogU1ZFIGluc3RydWN0aW9uIGVuY29kaW5ncyBmb3Ig bm9uLVNWRS1jYXBhYmxlIGFzc2VtYmxlcnMgKi8NCj4+IC8qIChwcmUgYmludXRpbHMgMi4yOCwg YWxsIGtlcm5lbCBjYXBhYmxlIGNsYW5nIHZlcnNpb25zIHN1cHBvcnQgU1ZFKSAqLw0KPj4gDQo+ PiArLyogU1RSICh2ZWN0b3IpOiBTVFIgWlxueiwgW1hcbnhiYXNlLCAjXG9mZnNldCwgTVVMIFZM XSAqLw0KPj4gKy5tYWNybyBfc3ZlX3N0cl92IG56LCBueGJhc2UsIG9mZnNldD0wDQo+PiArICAg IF9zdmVfY2hlY2tfenJlZyBcbnoNCj4+ICsgICAgX2NoZWNrX2dlbmVyYWxfcmVnIFxueGJhc2UN Cj4+ICsgICAgX2NoZWNrX251bSAoXG9mZnNldCksIC0weDEwMCwgMHhmZg0KPj4gKyAgICAuaW5z dCAweGU1ODA0MDAwICAgICAgICAgICAgICAgIFwNCj4+ICsgICAgICAgIHwgKFxueikgICAgICAg ICAgICAgICAgICAgICBcDQo+PiArICAgICAgICB8ICgoXG54YmFzZSkgPDwgNSkgICAgICAgICAg XA0KPj4gKyAgICAgICAgfCAoKChcb2Zmc2V0KSAmIDcpIDw8IDEwKSAgIFwNCj4+ICsgICAgICAg IHwgKCgoXG9mZnNldCkgJiAweDFmOCkgPDwgMTMpDQo+PiArLmVuZG0NCj4+ICsNCj4+ICsvKiBM RFIgKHZlY3Rvcik6IExEUiBaXG56LCBbWFxueGJhc2UsICNcb2Zmc2V0LCBNVUwgVkxdICovDQo+ PiArLm1hY3JvIF9zdmVfbGRyX3YgbnosIG54YmFzZSwgb2Zmc2V0PTANCj4+ICsgICAgX3N2ZV9j aGVja196cmVnIFxueg0KPj4gKyAgICBfY2hlY2tfZ2VuZXJhbF9yZWcgXG54YmFzZQ0KPj4gKyAg ICBfY2hlY2tfbnVtIChcb2Zmc2V0KSwgLTB4MTAwLCAweGZmDQo+PiArICAgIC5pbnN0IDB4ODU4 MDQwMDAgICAgICAgICAgICAgICAgXA0KPj4gKyAgICAgICAgfCAoXG56KSAgICAgICAgICAgICAg ICAgICAgIFwNCj4+ICsgICAgICAgIHwgKChcbnhiYXNlKSA8PCA1KSAgICAgICAgICBcDQo+PiAr ICAgICAgICB8ICgoKFxvZmZzZXQpICYgNykgPDwgMTApICAgXA0KPj4gKyAgICAgICAgfCAoKChc b2Zmc2V0KSAmIDB4MWY4KSA8PCAxMykNCj4+ICsuZW5kbQ0KPj4gKw0KPj4gKy8qIFNUUiAocHJl ZGljYXRlKTogU1RSIFBcbnAsIFtYXG54YmFzZSwgI1xvZmZzZXQsIE1VTCBWTF0gKi8NCj4+ICsu bWFjcm8gX3N2ZV9zdHJfcCBucCwgbnhiYXNlLCBvZmZzZXQ9MA0KPj4gKyAgICBfc3ZlX2NoZWNr X3ByZWcgXG5wDQo+PiArICAgIF9jaGVja19nZW5lcmFsX3JlZyBcbnhiYXNlDQo+PiArICAgIF9j aGVja19udW0gKFxvZmZzZXQpLCAtMHgxMDAsIDB4ZmYNCj4+ICsgICAgLmluc3QgMHhlNTgwMDAw MCAgICAgICAgICAgICAgICBcDQo+PiArICAgICAgICB8IChcbnApICAgICAgICAgICAgICAgICAg ICAgXA0KPj4gKyAgICAgICAgfCAoKFxueGJhc2UpIDw8IDUpICAgICAgICAgIFwNCj4+ICsgICAg ICAgIHwgKCgoXG9mZnNldCkgJiA3KSA8PCAxMCkgICBcDQo+PiArICAgICAgICB8ICgoKFxvZmZz ZXQpICYgMHgxZjgpIDw8IDEzKQ0KPj4gKy5lbmRtDQo+PiArDQo+PiArLyogTERSIChwcmVkaWNh dGUpOiBMRFIgUFxucCwgW1hcbnhiYXNlLCAjXG9mZnNldCwgTVVMIFZMXSAqLw0KPj4gKy5tYWNy byBfc3ZlX2xkcl9wIG5wLCBueGJhc2UsIG9mZnNldD0wDQo+PiArICAgIF9zdmVfY2hlY2tfcHJl ZyBcbnANCj4+ICsgICAgX2NoZWNrX2dlbmVyYWxfcmVnIFxueGJhc2UNCj4+ICsgICAgX2NoZWNr X251bSAoXG9mZnNldCksIC0weDEwMCwgMHhmZg0KPj4gKyAgICAuaW5zdCAweDg1ODAwMDAwICAg ICAgICAgICAgICAgIFwNCj4+ICsgICAgICAgIHwgKFxucCkgICAgICAgICAgICAgICAgICAgICBc DQo+PiArICAgICAgICB8ICgoXG54YmFzZSkgPDwgNSkgICAgICAgICAgXA0KPj4gKyAgICAgICAg fCAoKChcb2Zmc2V0KSAmIDcpIDw8IDEwKSAgIFwNCj4+ICsgICAgICAgIHwgKCgoXG9mZnNldCkg JiAweDFmOCkgPDwgMTMpDQo+PiArLmVuZG0NCj4+ICsNCj4+IC8qIFJEVkwgWFxueCwgI1xpbW0g Ki8NCj4+IC5tYWNybyBfc3ZlX3JkdmwgbngsIGltbQ0KPj4gICAgX2NoZWNrX2dlbmVyYWxfcmVn IFxueA0KPj4gQEAgLTM1LDExICs5NSw5OCBAQA0KPj4gICAgICAgIHwgKCgoXGltbSkgJiAweDNm KSA8PCA1KQ0KPj4gLmVuZG0NCj4+IA0KPj4gKy8qIFJERkZSICh1bnByZWRpY2F0ZWQpOiBSREZG UiBQXG5wLkIgKi8NCj4+ICsubWFjcm8gX3N2ZV9yZGZmciBucA0KPj4gKyAgICBfc3ZlX2NoZWNr X3ByZWcgXG5wDQo+PiArICAgIC5pbnN0IDB4MjUxOWYwMDAgICAgICAgICAgICAgICAgXA0KPj4g KyAgICAgICAgfCAoXG5wKQ0KPj4gKy5lbmRtDQo+PiArDQo+PiArLyogV1JGRlIgUFxucC5CICov DQo+PiArLm1hY3JvIF9zdmVfd3JmZnIgbnANCj4+ICsgICAgX3N2ZV9jaGVja19wcmVnIFxucA0K Pj4gKyAgICAuaW5zdCAweDI1Mjg5MDAwICAgICAgICAgICAgICAgIFwNCj4+ICsgICAgICAgIHwg KChcbnApIDw8IDUpDQo+PiArLmVuZG0NCj4+ICsNCj4+ICsubWFjcm8gX19mb3IgZnJvbTpyZXEs IHRvOnJlcQ0KPj4gKyAgICAuaWYgKFxmcm9tKSA9PSAoXHRvKQ0KPj4gKyAgICAgICAgX2Zvcl9f Ym9keSAlXGZyb20NCj4+ICsgICAgLmVsc2UNCj4+ICsgICAgICAgIF9fZm9yICVcZnJvbSwgJSgo XGZyb20pICsgKChcdG8pIC0gKFxmcm9tKSkgLyAyKQ0KPj4gKyAgICAgICAgX19mb3IgJSgoXGZy b20pICsgKChcdG8pIC0gKFxmcm9tKSkgLyAyICsgMSksICVcdG8NCj4+ICsgICAgLmVuZGlmDQo+ PiArLmVuZG0NCj4+ICsNCj4+ICsubWFjcm8gX2ZvciB2YXI6cmVxLCBmcm9tOnJlcSwgdG86cmVx LCBpbnNuOnZhcmFyZw0KPj4gKyAgICAubWFjcm8gX2Zvcl9fYm9keSBcdmFyOnJlcQ0KPj4gKyAg ICAgICAgLm5vYWx0bWFjcm8NCj4+ICsgICAgICAgIFxpbnNuDQo+PiArICAgICAgICAuYWx0bWFj cm8NCj4+ICsgICAgLmVuZG0NCj4+ICsNCj4+ICsgICAgLmFsdG1hY3JvDQo+PiArICAgIF9fZm9y IFxmcm9tLCBcdG8NCj4+ICsgICAgLm5vYWx0bWFjcm8NCj4+ICsNCj4+ICsgICAgLnB1cmdlbSBf Zm9yX19ib2R5DQo+PiArLmVuZG0NCj4+ICsNCj4+ICsvKg0KPj4gKyAqIHN2ZV9zYXZlIGFuZCBz dmVfbG9hZCBhcmUgZGlmZmVyZW50IGZyb20gdGhlIExpbnV4IHZlcnNpb24gYmVjYXVzZSB0aGUN Cj4+ICsgKiBidWZmZXJzIHRvIHNhdmUgdGhlIGNvbnRleHQgYXJlIGRpZmZlcmVudCBmcm9tIFhl biBhbmQgZm9yIGV4YW1wbGUgTGludXgNCj4+ICsgKiBpcyB1c2luZyB0aGlzIG1hY3JvIHRvIHNh dmUvcmVzdG9yZSBhbHNvIGZwc3IgYW5kIGZwY3Igd2hpbGUgd2UgZG8gaXQgaW4gQw0KPj4gKyAq Lw0KPj4gKw0KPj4gKy5tYWNybyBzdmVfc2F2ZSBueHpmZnJjdHgsIG54cGN0eCwgc2F2ZV9mZnIN Cj4+ICsgICAgX2ZvciBuLCAwLCAzMSwgX3N2ZV9zdHJfdiBcbiwgXG54emZmcmN0eCwgXG4gLSAz Mg0KPj4gKyAgICBfZm9yIG4sIDAsIDE1LCBfc3ZlX3N0cl9wIFxuLCBcbnhwY3R4LCBcbg0KPj4g KyAgICAgICAgY2J6IFxzYXZlX2ZmciwgMWYNCj4+ICsgICAgICAgIF9zdmVfcmRmZnIgMA0KPj4g KyAgICAgICAgX3N2ZV9zdHJfcCAwLCBcbnh6ZmZyY3R4DQo+PiArICAgICAgICBfc3ZlX2xkcl9w IDAsIFxueHBjdHgNCj4+ICsgICAgICAgIGIgMmYNCj4+ICsxOg0KPj4gKyAgICAgICAgc3RyIHh6 ciwgW3hcbnh6ZmZyY3R4XSAgICAgIC8vIFplcm8gb3V0IEZGUg0KPj4gKzI6DQo+PiArLmVuZG0N Cj4+ICsNCj4+ICsubWFjcm8gc3ZlX2xvYWQgbnh6ZmZyY3R4LCBueHBjdHgsIHJlc3RvcmVfZmZy DQo+PiArICAgIF9mb3IgbiwgMCwgMzEsIF9zdmVfbGRyX3YgXG4sIFxueHpmZnJjdHgsIFxuIC0g MzINCj4+ICsgICAgICAgIGNieiBccmVzdG9yZV9mZnIsIDFmDQo+PiArICAgICAgICBfc3ZlX2xk cl9wIDAsIFxueHpmZnJjdHgNCj4+ICsgICAgICAgIF9zdmVfd3JmZnIgMA0KPj4gKzE6DQo+PiAr ICAgIF9mb3IgbiwgMCwgMTUsIF9zdmVfbGRyX3AgXG4sIFxueHBjdHgsIFxuDQo+PiArLmVuZG0N Cj4+ICsNCj4+IC8qIEdldHMgdGhlIGN1cnJlbnQgdmVjdG9yIHJlZ2lzdGVyIHNpemUgaW4gYnl0 ZXMgKi8NCj4+IEdMT0JBTChzdmVfZ2V0X2h3X3ZsKQ0KPj4gICAgX3N2ZV9yZHZsIDAsIDENCj4+ ICAgIHJldA0KPj4gDQo+PiArLyoNCj4+ICsgKiBTYXZlIHRoZSBTVkUgY29udGV4dA0KPj4gKyAq DQo+PiArICogeDAgLSBwb2ludGVyIHRvIGJ1ZmZlciBmb3IgWjAtMzEgKyBGRlINCj4+ICsgKiB4 MSAtIHBvaW50ZXIgdG8gYnVmZmVyIGZvciBQMC0xNQ0KPj4gKyAqIHgyIC0gU2F2ZSBGRlIgaWYg bm9uLXplcm8NCj4+ICsgKi8NCj4+ICtHTE9CQUwoc3ZlX3NhdmVfY3R4KQ0KPj4gKyAgICBzdmVf c2F2ZSAwLCAxLCB4Mg0KPj4gKyAgICByZXQNCj4+ICsNCj4+ICsvKg0KPj4gKyAqIExvYWQgdGhl IFNWRSBjb250ZXh0DQo+PiArICoNCj4+ICsgKiB4MCAtIHBvaW50ZXIgdG8gYnVmZmVyIGZvciBa MC0zMSArIEZGUg0KPj4gKyAqIHgxIC0gcG9pbnRlciB0byBidWZmZXIgZm9yIFAwLTE1DQo+PiAr ICogeDIgLSBSZXN0b3JlIEZGUiBpZiBub24temVybw0KPj4gKyAqLw0KPj4gK0dMT0JBTChzdmVf bG9hZF9jdHgpDQo+PiArICAgIHN2ZV9sb2FkIDAsIDEsIHgyDQo+PiArICAgIHJldA0KPj4gKw0K Pj4gLyoNCj4+ICogTG9jYWwgdmFyaWFibGVzOg0KPj4gKiBtb2RlOiBBU00NCj4+IGRpZmYgLS1n aXQgYS94ZW4vYXJjaC9hcm0vYXJtNjQvc3ZlLmMgYi94ZW4vYXJjaC9hcm0vYXJtNjQvc3ZlLmMN Cj4+IGluZGV4IGE5MTQ0ZTQ4ZWY2Yi4uNTZkOGYyN2VhMjZhIDEwMDY0NA0KPj4gLS0tIGEveGVu L2FyY2gvYXJtL2FybTY0L3N2ZS5jDQo+PiArKysgYi94ZW4vYXJjaC9hcm0vYXJtNjQvc3ZlLmMN Cj4+IEBAIC01LDYgKzUsNyBAQA0KPj4gKiBDb3B5cmlnaHQgKEMpIDIwMjIgQVJNIEx0ZC4NCj4+ ICovDQo+PiANCj4+ICsjaW5jbHVkZSA8eGVuL3NpemVzLmg+DQo+PiAjaW5jbHVkZSA8eGVuL3R5 cGVzLmg+DQo+PiAjaW5jbHVkZSA8YXNtL2FybTY0L3N2ZS5oPg0KPj4gI2luY2x1ZGUgPGFzbS9h cm02NC9zeXNyZWdzLmg+DQo+PiBAQCAtMTQsNiArMTUsMjUgQEANCj4+IA0KPj4gZXh0ZXJuIHVu c2lnbmVkIGludCBzdmVfZ2V0X2h3X3ZsKHZvaWQpOw0KPj4gDQo+PiArLyoNCj4+ICsgKiBTYXZl IHRoZSBTVkUgY29udGV4dA0KPj4gKyAqDQo+PiArICogc3ZlX2N0eCAtIHBvaW50ZXIgdG8gYnVm ZmVyIGZvciBaMC0zMSArIEZGUg0KPj4gKyAqIHByZWdzIC0gcG9pbnRlciB0byBidWZmZXIgZm9y IFAwLTE1DQo+PiArICogc2F2ZV9mZnIgLSBTYXZlIEZGUiBpZiBub24temVybw0KPj4gKyAqLw0K Pj4gK2V4dGVybiB2b2lkIHN2ZV9zYXZlX2N0eCh1aW50NjRfdCAqc3ZlX2N0eCwgdWludDY0X3Qg KnByZWdzLCBpbnQgc2F2ZV9mZnIpOw0KPj4gKw0KPj4gKy8qDQo+PiArICogTG9hZCB0aGUgU1ZF IGNvbnRleHQNCj4+ICsgKg0KPj4gKyAqIHN2ZV9jdHggLSBwb2ludGVyIHRvIGJ1ZmZlciBmb3Ig WjAtMzEgKyBGRlINCj4+ICsgKiBwcmVncyAtIHBvaW50ZXIgdG8gYnVmZmVyIGZvciBQMC0xNQ0K Pj4gKyAqIHJlc3RvcmVfZmZyIC0gUmVzdG9yZSBGRlIgaWYgbm9uLXplcm8NCj4+ICsgKi8NCj4+ ICtleHRlcm4gdm9pZCBzdmVfbG9hZF9jdHgodWludDY0X3QgY29uc3QgKnN2ZV9jdHgsIHVpbnQ2 NF90IGNvbnN0ICpwcmVncywNCj4+ICsgICAgICAgICAgICAgICAgICAgICAgICAgaW50IHJlc3Rv cmVfZmZyKTsNCj4+ICsNCj4+IC8qIFRha2VzIGEgdmVjdG9yIGxlbmd0aCBpbiBiaXRzIGFuZCBy ZXR1cm5zIHRoZSBaQ1JfRUx4IGVuY29kaW5nICovDQo+PiBzdGF0aWMgaW5saW5lIHJlZ2lzdGVy X3QgdmxfdG9femNyKHVuc2lnbmVkIGludCB2bCkNCj4+IHsNCj4+IEBAIC0yMSw2ICs0MSwyMSBA QCBzdGF0aWMgaW5saW5lIHJlZ2lzdGVyX3QgdmxfdG9femNyKHVuc2lnbmVkIGludCB2bCkNCj4+ ICAgIHJldHVybiAoKHZsIC8gU1ZFX1ZMX01VTFRJUExFX1ZBTCkgLSAxVSkgJiBaQ1JfRUx4X0xF Tl9NQVNLOw0KPj4gfQ0KPj4gDQo+PiArc3RhdGljIGlubGluZSB1bnNpZ25lZCBpbnQgc3ZlX3py ZWdfY3R4X3NpemUodW5zaWduZWQgaW50IHZsKQ0KPj4gK3sNCj4+ICsgICAgLyoNCj4+ICsgICAg ICogWjAtMzEgcmVnaXN0ZXJzIHNpemUgaW4gYnl0ZXMgaXMgY29tcHV0ZWQgZnJvbSBWTCB0aGF0 IGlzIGluIGJpdHMsIHNvIFZMDQo+PiArICAgICAqIGluIGJ5dGVzIGlzIFZMLzguDQo+PiArICAg ICAqLw0KPj4gKyAgICByZXR1cm4gKHZsIC8gOFUpICogMzJVOw0KPj4gK30NCj4+ICsNCj4+ICtz dGF0aWMgaW5saW5lIHVuc2lnbmVkIGludCBzdmVfZmZycmVnX2N0eF9zaXplKHVuc2lnbmVkIGlu dCB2bCkNCj4+ICt7DQo+PiArICAgIC8qIEZGUiByZWdpc3RlciBzaXplIGlzIFZMLzgsIHdoaWNo IGlzIGluIGJ5dGVzIChWTC84KS84ICovDQo+PiArICAgIHJldHVybiAodmwgLyA2NFUpOw0KPj4g K30NCj4+ICsNCj4+IHJlZ2lzdGVyX3QgY29tcHV0ZV9tYXhfemNyKHZvaWQpDQo+PiB7DQo+PiAg ICByZWdpc3Rlcl90IGNwdHJfYml0cyA9IGdldF9kZWZhdWx0X2NwdHJfZmxhZ3MoKTsNCj4+IEBA IC02MSw2ICs5Niw2MiBAQCB1bnNpZ25lZCBpbnQgZ2V0X3N5c192bF9sZW4odm9pZCkNCj4+ICAg ICAgICAgICAgU1ZFX1ZMX01VTFRJUExFX1ZBTDsNCj4+IH0NCj4+IA0KPj4gK2ludCBzdmVfY29u dGV4dF9pbml0KHN0cnVjdCB2Y3B1ICp2KQ0KPj4gK3sNCj4+ICsgICAgdW5zaWduZWQgaW50IHN2 ZV92bF9iaXRzID0gc3ZlX2RlY29kZV92bCh2LT5kb21haW4tPmFyY2guc3ZlX3ZsKTsNCj4+ICsg ICAgdWludDY0X3QgKmN0eCA9IF94emFsbG9jKHN2ZV96cmVnX2N0eF9zaXplKHN2ZV92bF9iaXRz KSArDQo+PiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdmVfZmZycmVnX2N0eF9zaXpl KHN2ZV92bF9iaXRzKSwNCj4+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEwxX0NBQ0hF X0JZVEVTKTsNCj4+ICsNCj4+ICsgICAgaWYgKCAhY3R4ICkNCj4+ICsgICAgICAgIHJldHVybiAt RU5PTUVNOw0KPj4gKw0KPj4gKyAgICAvKg0KPj4gKyAgICAgKiBQb2ludHMgdG8gdGhlIGVuZCBv ZiBaMC1aMzEgbWVtb3J5LCBqdXN0IGJlZm9yZSBGRlIgbWVtb3J5LCB0byBiZSBrZXB0IGluDQo+ PiArICAgICAqIHN5bmMgd2l0aCBzdmVfY29udGV4dF9mcmVlKCkuDQo+PiArICAgICAqLw0KPj4g KyAgICB2LT5hcmNoLnZmcC5zdmVfenJlZ19jdHhfZW5kID0gY3R4ICsNCj4+ICsgICAgICAgIChz dmVfenJlZ19jdHhfc2l6ZShzdmVfdmxfYml0cykgLyBzaXplb2YodWludDY0X3QpKTsNCj4+ICsN Cj4+ICsgICAgdi0+YXJjaC56Y3JfZWwyID0gdmxfdG9femNyKHN2ZV92bF9iaXRzKTsNCj4+ICsN Cj4+ICsgICAgcmV0dXJuIDA7DQo+PiArfQ0KPj4gKw0KPj4gK3ZvaWQgc3ZlX2NvbnRleHRfZnJl ZShzdHJ1Y3QgdmNwdSAqdikNCj4+ICt7DQo+PiArICAgIHVuc2lnbmVkIGludCBzdmVfdmxfYml0 czsNCj4+ICsNCj4+ICsgICAgaWYgKCB2LT5hcmNoLnZmcC5zdmVfenJlZ19jdHhfZW5kICkNCj4+ ICsgICAgICAgIHJldHVybjsNCj4+ICsNCj4+ICsgICAgc3ZlX3ZsX2JpdHMgPSBzdmVfZGVjb2Rl X3ZsKHYtPmRvbWFpbi0+YXJjaC5zdmVfdmwpOw0KPj4gKw0KPj4gKyAgICAvKg0KPj4gKyAgICAg KiBDdXJyZW5seSBwb2ludHMgdG8gdGhlIGVuZCBvZiBaMC1aMzEgbWVtb3J5IHdoaWNoIGlzIG5v dCB0aGUgc3RhcnQgb2YNCj4+ICsgICAgICogdGhlIGJ1ZmZlci4gVG8gYmUga2VwdCBpbiBzeW5j IHdpdGggdGhlIHN2ZV9jb250ZXh0X2luaXQoKS4NCj4+ICsgICAgICovDQo+PiArICAgIHYtPmFy Y2gudmZwLnN2ZV96cmVnX2N0eF9lbmQgLT0NCj4+ICsgICAgICAgIChzdmVfenJlZ19jdHhfc2l6 ZShzdmVfdmxfYml0cykgLyBzaXplb2YodWludDY0X3QpKTsNCj4+ICsNCj4+ICsgICAgWEZSRUUo di0+YXJjaC52ZnAuc3ZlX3pyZWdfY3R4X2VuZCk7DQo+PiArfQ0KPj4gKw0KPj4gK3ZvaWQgc3Zl X3NhdmVfc3RhdGUoc3RydWN0IHZjcHUgKnYpDQo+PiArew0KPj4gKyAgICB2LT5hcmNoLnpjcl9l bDEgPSBSRUFEX1NZU1JFRyhaQ1JfRUwxKTsNCj4+ICsNCj4+ICsgICAgc3ZlX3NhdmVfY3R4KHYt PmFyY2gudmZwLnN2ZV96cmVnX2N0eF9lbmQsIHYtPmFyY2gudmZwLmZwcmVncywgMSk7DQo+PiAr fQ0KPj4gKw0KPj4gK3ZvaWQgc3ZlX3Jlc3RvcmVfc3RhdGUoc3RydWN0IHZjcHUgKnYpDQo+PiAr ew0KPj4gKyAgICBXUklURV9TWVNSRUcodi0+YXJjaC56Y3JfZWwxLCBaQ1JfRUwxKTsNCj4+ICsg ICAgV1JJVEVfU1lTUkVHKHYtPmFyY2guemNyX2VsMiwgWkNSX0VMMik7DQo+PiArDQo+PiArICAg IHN2ZV9sb2FkX2N0eCh2LT5hcmNoLnZmcC5zdmVfenJlZ19jdHhfZW5kLCB2LT5hcmNoLnZmcC5m cHJlZ3MsIDEpOw0KPj4gK30NCj4+ICsNCj4+IC8qDQo+PiAqIExvY2FsIHZhcmlhYmxlczoNCj4+ ICogbW9kZTogQw0KPj4gZGlmZiAtLWdpdCBhL3hlbi9hcmNoL2FybS9hcm02NC92ZnAuYyBiL3hl bi9hcmNoL2FybS9hcm02NC92ZnAuYw0KPj4gaW5kZXggNDc4ODVlNzZiYWFlLi4yZDBkN2MyZTZk ZGIgMTAwNjQ0DQo+PiAtLS0gYS94ZW4vYXJjaC9hcm0vYXJtNjQvdmZwLmMNCj4+ICsrKyBiL3hl bi9hcmNoL2FybS9hcm02NC92ZnAuYw0KPj4gQEAgLTIsMjkgKzIsMzUgQEANCj4+ICNpbmNsdWRl IDxhc20vcHJvY2Vzc29yLmg+DQo+PiAjaW5jbHVkZSA8YXNtL2NwdWZlYXR1cmUuaD4NCj4+ICNp bmNsdWRlIDxhc20vdmZwLmg+DQo+PiArI2luY2x1ZGUgPGFzbS9hcm02NC9zdmUuaD4NCj4+IA0K Pj4gdm9pZCB2ZnBfc2F2ZV9zdGF0ZShzdHJ1Y3QgdmNwdSAqdikNCj4+IHsNCj4+ICAgIGlmICgg IWNwdV9oYXNfZnAgKQ0KPj4gICAgICAgIHJldHVybjsNCj4+IA0KPj4gLSAgICBhc20gdm9sYXRp bGUoInN0cCBxMCwgcTEsIFslMSwgIzE2ICogMF1cblx0Ig0KPj4gLSAgICAgICAgICAgICAgICAg InN0cCBxMiwgcTMsIFslMSwgIzE2ICogMl1cblx0Ig0KPj4gLSAgICAgICAgICAgICAgICAgInN0 cCBxNCwgcTUsIFslMSwgIzE2ICogNF1cblx0Ig0KPj4gLSAgICAgICAgICAgICAgICAgInN0cCBx NiwgcTcsIFslMSwgIzE2ICogNl1cblx0Ig0KPj4gLSAgICAgICAgICAgICAgICAgInN0cCBxOCwg cTksIFslMSwgIzE2ICogOF1cblx0Ig0KPj4gLSAgICAgICAgICAgICAgICAgInN0cCBxMTAsIHEx MSwgWyUxLCAjMTYgKiAxMF1cblx0Ig0KPj4gLSAgICAgICAgICAgICAgICAgInN0cCBxMTIsIHEx MywgWyUxLCAjMTYgKiAxMl1cblx0Ig0KPj4gLSAgICAgICAgICAgICAgICAgInN0cCBxMTQsIHEx NSwgWyUxLCAjMTYgKiAxNF1cblx0Ig0KPj4gLSAgICAgICAgICAgICAgICAgInN0cCBxMTYsIHEx NywgWyUxLCAjMTYgKiAxNl1cblx0Ig0KPj4gLSAgICAgICAgICAgICAgICAgInN0cCBxMTgsIHEx OSwgWyUxLCAjMTYgKiAxOF1cblx0Ig0KPj4gLSAgICAgICAgICAgICAgICAgInN0cCBxMjAsIHEy MSwgWyUxLCAjMTYgKiAyMF1cblx0Ig0KPj4gLSAgICAgICAgICAgICAgICAgInN0cCBxMjIsIHEy MywgWyUxLCAjMTYgKiAyMl1cblx0Ig0KPj4gLSAgICAgICAgICAgICAgICAgInN0cCBxMjQsIHEy NSwgWyUxLCAjMTYgKiAyNF1cblx0Ig0KPj4gLSAgICAgICAgICAgICAgICAgInN0cCBxMjYsIHEy NywgWyUxLCAjMTYgKiAyNl1cblx0Ig0KPj4gLSAgICAgICAgICAgICAgICAgInN0cCBxMjgsIHEy OSwgWyUxLCAjMTYgKiAyOF1cblx0Ig0KPj4gLSAgICAgICAgICAgICAgICAgInN0cCBxMzAsIHEz MSwgWyUxLCAjMTYgKiAzMF1cblx0Ig0KPj4gLSAgICAgICAgICAgICAgICAgOiAiPVEiICgqdi0+ YXJjaC52ZnAuZnByZWdzKSA6ICJyIiAodi0+YXJjaC52ZnAuZnByZWdzKSk7DQo+PiArICAgIGlm ICggaXNfc3ZlX2RvbWFpbih2LT5kb21haW4pICkNCj4+ICsgICAgICAgIHN2ZV9zYXZlX3N0YXRl KHYpOw0KPj4gKyAgICBlbHNlDQo+PiArICAgIHsNCj4+ICsgICAgICAgIGFzbSB2b2xhdGlsZSgi c3RwIHEwLCBxMSwgWyUxLCAjMTYgKiAwXVxuXHQiDQo+PiArICAgICAgICAgICAgICAgICAgICAg InN0cCBxMiwgcTMsIFslMSwgIzE2ICogMl1cblx0Ig0KPj4gKyAgICAgICAgICAgICAgICAgICAg ICJzdHAgcTQsIHE1LCBbJTEsICMxNiAqIDRdXG5cdCINCj4+ICsgICAgICAgICAgICAgICAgICAg ICAic3RwIHE2LCBxNywgWyUxLCAjMTYgKiA2XVxuXHQiDQo+PiArICAgICAgICAgICAgICAgICAg ICAgInN0cCBxOCwgcTksIFslMSwgIzE2ICogOF1cblx0Ig0KPj4gKyAgICAgICAgICAgICAgICAg ICAgICJzdHAgcTEwLCBxMTEsIFslMSwgIzE2ICogMTBdXG5cdCINCj4+ICsgICAgICAgICAgICAg ICAgICAgICAic3RwIHExMiwgcTEzLCBbJTEsICMxNiAqIDEyXVxuXHQiDQo+PiArICAgICAgICAg ICAgICAgICAgICAgInN0cCBxMTQsIHExNSwgWyUxLCAjMTYgKiAxNF1cblx0Ig0KPj4gKyAgICAg ICAgICAgICAgICAgICAgICJzdHAgcTE2LCBxMTcsIFslMSwgIzE2ICogMTZdXG5cdCINCj4+ICsg ICAgICAgICAgICAgICAgICAgICAic3RwIHExOCwgcTE5LCBbJTEsICMxNiAqIDE4XVxuXHQiDQo+ PiArICAgICAgICAgICAgICAgICAgICAgInN0cCBxMjAsIHEyMSwgWyUxLCAjMTYgKiAyMF1cblx0 Ig0KPj4gKyAgICAgICAgICAgICAgICAgICAgICJzdHAgcTIyLCBxMjMsIFslMSwgIzE2ICogMjJd XG5cdCINCj4+ICsgICAgICAgICAgICAgICAgICAgICAic3RwIHEyNCwgcTI1LCBbJTEsICMxNiAq IDI0XVxuXHQiDQo+PiArICAgICAgICAgICAgICAgICAgICAgInN0cCBxMjYsIHEyNywgWyUxLCAj MTYgKiAyNl1cblx0Ig0KPj4gKyAgICAgICAgICAgICAgICAgICAgICJzdHAgcTI4LCBxMjksIFsl MSwgIzE2ICogMjhdXG5cdCINCj4+ICsgICAgICAgICAgICAgICAgICAgICAic3RwIHEzMCwgcTMx LCBbJTEsICMxNiAqIDMwXVxuXHQiDQo+PiArICAgICAgICAgICAgICAgICAgICAgOiAiPVEiICgq di0+YXJjaC52ZnAuZnByZWdzKSA6ICJyIiAodi0+YXJjaC52ZnAuZnByZWdzKSk7DQo+PiArICAg IH0NCj4+IA0KPj4gICAgdi0+YXJjaC52ZnAuZnBzciA9IFJFQURfU1lTUkVHKEZQU1IpOw0KPj4g ICAgdi0+YXJjaC52ZnAuZnBjciA9IFJFQURfU1lTUkVHKEZQQ1IpOw0KPj4gQEAgLTM3LDIzICs0 MywyOCBAQCB2b2lkIHZmcF9yZXN0b3JlX3N0YXRlKHN0cnVjdCB2Y3B1ICp2KQ0KPj4gICAgaWYg KCAhY3B1X2hhc19mcCApDQo+PiAgICAgICAgcmV0dXJuOw0KPj4gDQo+PiAtICAgIGFzbSB2b2xh dGlsZSgibGRwIHEwLCBxMSwgWyUxLCAjMTYgKiAwXVxuXHQiDQo+PiAtICAgICAgICAgICAgICAg ICAibGRwIHEyLCBxMywgWyUxLCAjMTYgKiAyXVxuXHQiDQo+PiAtICAgICAgICAgICAgICAgICAi bGRwIHE0LCBxNSwgWyUxLCAjMTYgKiA0XVxuXHQiDQo+PiAtICAgICAgICAgICAgICAgICAibGRw IHE2LCBxNywgWyUxLCAjMTYgKiA2XVxuXHQiDQo+PiAtICAgICAgICAgICAgICAgICAibGRwIHE4 LCBxOSwgWyUxLCAjMTYgKiA4XVxuXHQiDQo+PiAtICAgICAgICAgICAgICAgICAibGRwIHExMCwg cTExLCBbJTEsICMxNiAqIDEwXVxuXHQiDQo+PiAtICAgICAgICAgICAgICAgICAibGRwIHExMiwg cTEzLCBbJTEsICMxNiAqIDEyXVxuXHQiDQo+PiAtICAgICAgICAgICAgICAgICAibGRwIHExNCwg cTE1LCBbJTEsICMxNiAqIDE0XVxuXHQiDQo+PiAtICAgICAgICAgICAgICAgICAibGRwIHExNiwg cTE3LCBbJTEsICMxNiAqIDE2XVxuXHQiDQo+PiAtICAgICAgICAgICAgICAgICAibGRwIHExOCwg cTE5LCBbJTEsICMxNiAqIDE4XVxuXHQiDQo+PiAtICAgICAgICAgICAgICAgICAibGRwIHEyMCwg cTIxLCBbJTEsICMxNiAqIDIwXVxuXHQiDQo+PiAtICAgICAgICAgICAgICAgICAibGRwIHEyMiwg cTIzLCBbJTEsICMxNiAqIDIyXVxuXHQiDQo+PiAtICAgICAgICAgICAgICAgICAibGRwIHEyNCwg cTI1LCBbJTEsICMxNiAqIDI0XVxuXHQiDQo+PiAtICAgICAgICAgICAgICAgICAibGRwIHEyNiwg cTI3LCBbJTEsICMxNiAqIDI2XVxuXHQiDQo+PiAtICAgICAgICAgICAgICAgICAibGRwIHEyOCwg cTI5LCBbJTEsICMxNiAqIDI4XVxuXHQiDQo+PiAtICAgICAgICAgICAgICAgICAibGRwIHEzMCwg cTMxLCBbJTEsICMxNiAqIDMwXVxuXHQiDQo+PiAtICAgICAgICAgICAgICAgICA6IDogIlEiICgq di0+YXJjaC52ZnAuZnByZWdzKSwgInIiICh2LT5hcmNoLnZmcC5mcHJlZ3MpKTsNCj4+ICsgICAg aWYgKCBpc19zdmVfZG9tYWluKHYtPmRvbWFpbikgKQ0KPj4gKyAgICAgICAgc3ZlX3Jlc3RvcmVf c3RhdGUodik7DQo+PiArICAgIGVsc2UNCj4+ICsgICAgew0KPj4gKyAgICAgICAgYXNtIHZvbGF0 aWxlKCJsZHAgcTAsIHExLCBbJTEsICMxNiAqIDBdXG5cdCINCj4+ICsgICAgICAgICAgICAgICAg ICAgICAibGRwIHEyLCBxMywgWyUxLCAjMTYgKiAyXVxuXHQiDQo+PiArICAgICAgICAgICAgICAg ICAgICAgImxkcCBxNCwgcTUsIFslMSwgIzE2ICogNF1cblx0Ig0KPj4gKyAgICAgICAgICAgICAg ICAgICAgICJsZHAgcTYsIHE3LCBbJTEsICMxNiAqIDZdXG5cdCINCj4+ICsgICAgICAgICAgICAg ICAgICAgICAibGRwIHE4LCBxOSwgWyUxLCAjMTYgKiA4XVxuXHQiDQo+PiArICAgICAgICAgICAg ICAgICAgICAgImxkcCBxMTAsIHExMSwgWyUxLCAjMTYgKiAxMF1cblx0Ig0KPj4gKyAgICAgICAg ICAgICAgICAgICAgICJsZHAgcTEyLCBxMTMsIFslMSwgIzE2ICogMTJdXG5cdCINCj4+ICsgICAg ICAgICAgICAgICAgICAgICAibGRwIHExNCwgcTE1LCBbJTEsICMxNiAqIDE0XVxuXHQiDQo+PiAr ICAgICAgICAgICAgICAgICAgICAgImxkcCBxMTYsIHExNywgWyUxLCAjMTYgKiAxNl1cblx0Ig0K Pj4gKyAgICAgICAgICAgICAgICAgICAgICJsZHAgcTE4LCBxMTksIFslMSwgIzE2ICogMThdXG5c dCINCj4+ICsgICAgICAgICAgICAgICAgICAgICAibGRwIHEyMCwgcTIxLCBbJTEsICMxNiAqIDIw XVxuXHQiDQo+PiArICAgICAgICAgICAgICAgICAgICAgImxkcCBxMjIsIHEyMywgWyUxLCAjMTYg KiAyMl1cblx0Ig0KPj4gKyAgICAgICAgICAgICAgICAgICAgICJsZHAgcTI0LCBxMjUsIFslMSwg IzE2ICogMjRdXG5cdCINCj4+ICsgICAgICAgICAgICAgICAgICAgICAibGRwIHEyNiwgcTI3LCBb JTEsICMxNiAqIDI2XVxuXHQiDQo+PiArICAgICAgICAgICAgICAgICAgICAgImxkcCBxMjgsIHEy OSwgWyUxLCAjMTYgKiAyOF1cblx0Ig0KPj4gKyAgICAgICAgICAgICAgICAgICAgICJsZHAgcTMw LCBxMzEsIFslMSwgIzE2ICogMzBdXG5cdCINCj4+ICsgICAgICAgICAgICAgICAgICAgICA6IDog IlEiICgqdi0+YXJjaC52ZnAuZnByZWdzKSwgInIiICh2LT5hcmNoLnZmcC5mcHJlZ3MpKTsNCj4+ ICsgICAgfQ0KPj4gDQo+PiAgICBXUklURV9TWVNSRUcodi0+YXJjaC52ZnAuZnBzciwgRlBTUik7 DQo+PiAgICBXUklURV9TWVNSRUcodi0+YXJjaC52ZnAuZnBjciwgRlBDUik7DQo+PiBkaWZmIC0t Z2l0IGEveGVuL2FyY2gvYXJtL2RvbWFpbi5jIGIveGVuL2FyY2gvYXJtL2RvbWFpbi5jDQo+PiBp bmRleCA2YzIyNTUxYjBlZDIuLmFkZDk5MjliNzk0MyAxMDA2NDQNCj4+IC0tLSBhL3hlbi9hcmNo L2FybS9kb21haW4uYw0KPj4gKysrIGIveGVuL2FyY2gvYXJtL2RvbWFpbi5jDQo+PiBAQCAtNTU3 LDcgKzU1NywxMSBAQCBpbnQgYXJjaF92Y3B1X2NyZWF0ZShzdHJ1Y3QgdmNwdSAqdikNCj4+IA0K Pj4gICAgdi0+YXJjaC5jcHRyX2VsMiA9IGdldF9kZWZhdWx0X2NwdHJfZmxhZ3MoKTsNCj4+ICAg IGlmICggaXNfc3ZlX2RvbWFpbih2LT5kb21haW4pICkNCj4+ICsgICAgew0KPj4gKyAgICAgICAg aWYgKCAocmMgPSBzdmVfY29udGV4dF9pbml0KHYpKSAhPSAwICkNCj4+ICsgICAgICAgICAgICBn b3RvIGZhaWw7DQo+PiAgICAgICAgdi0+YXJjaC5jcHRyX2VsMiAmPSB+SENQVFJfQ1AoOCk7DQo+ PiArICAgIH0NCj4+IA0KPj4gICAgdi0+YXJjaC5oY3JfZWwyID0gZ2V0X2RlZmF1bHRfaGNyX2Zs YWdzKCk7DQo+PiANCj4+IEBAIC01ODcsNiArNTkxLDggQEAgZmFpbDoNCj4+IA0KPj4gdm9pZCBh cmNoX3ZjcHVfZGVzdHJveShzdHJ1Y3QgdmNwdSAqdikNCj4+IHsNCj4+ICsgICAgaWYgKCBpc19z dmVfZG9tYWluKHYtPmRvbWFpbikgKQ0KPj4gKyAgICAgICAgc3ZlX2NvbnRleHRfZnJlZSh2KTsN Cj4+ICAgIHZjcHVfdGltZXJfZGVzdHJveSh2KTsNCj4+ICAgIHZjcHVfdmdpY19mcmVlKHYpOw0K Pj4gICAgZnJlZV94ZW5oZWFwX3BhZ2VzKHYtPmFyY2guc3RhY2ssIFNUQUNLX09SREVSKTsNCj4+ IGRpZmYgLS1naXQgYS94ZW4vYXJjaC9hcm0vaW5jbHVkZS9hc20vYXJtNjQvc3ZlLmggYi94ZW4v YXJjaC9hcm0vaW5jbHVkZS9hc20vYXJtNjQvc3ZlLmgNCj4+IGluZGV4IDRiNjM0MTI3MjdmYy4u NjViNDY2ODVkMjYzIDEwMDY0NA0KPj4gLS0tIGEveGVuL2FyY2gvYXJtL2luY2x1ZGUvYXNtL2Fy bTY0L3N2ZS5oDQo+PiArKysgYi94ZW4vYXJjaC9hcm0vaW5jbHVkZS9hc20vYXJtNjQvc3ZlLmgN Cj4+IEBAIC0yMiw2ICsyMiwxMCBAQCBzdGF0aWMgaW5saW5lIHVuc2lnbmVkIGludCBzdmVfZGVj b2RlX3ZsKHVuc2lnbmVkIGludCBzdmVfdmwpDQo+PiB9DQo+PiANCj4+IHJlZ2lzdGVyX3QgY29t cHV0ZV9tYXhfemNyKHZvaWQpOw0KPj4gK2ludCBzdmVfY29udGV4dF9pbml0KHN0cnVjdCB2Y3B1 ICp2KTsNCj4+ICt2b2lkIHN2ZV9jb250ZXh0X2ZyZWUoc3RydWN0IHZjcHUgKnYpOw0KPj4gK3Zv aWQgc3ZlX3NhdmVfc3RhdGUoc3RydWN0IHZjcHUgKnYpOw0KPj4gK3ZvaWQgc3ZlX3Jlc3RvcmVf c3RhdGUoc3RydWN0IHZjcHUgKnYpOw0KPj4gDQo+PiAjaWZkZWYgQ09ORklHX0FSTTY0X1NWRQ0K Pj4gDQo+PiBkaWZmIC0tZ2l0IGEveGVuL2FyY2gvYXJtL2luY2x1ZGUvYXNtL2FybTY0L3N5c3Jl Z3MuaCBiL3hlbi9hcmNoL2FybS9pbmNsdWRlL2FzbS9hcm02NC9zeXNyZWdzLmgNCj4+IGluZGV4 IDRjYWJiOWViNGQ1ZS4uM2ZkZWI5ZDhjZGVmIDEwMDY0NA0KPj4gLS0tIGEveGVuL2FyY2gvYXJt L2luY2x1ZGUvYXNtL2FybTY0L3N5c3JlZ3MuaA0KPj4gKysrIGIveGVuL2FyY2gvYXJtL2luY2x1 ZGUvYXNtL2FybTY0L3N5c3JlZ3MuaA0KPj4gQEAgLTg4LDYgKzg4LDkgQEANCj4+ICNpZm5kZWYg SURfQUE2NElTQVIyX0VMMQ0KPj4gI2RlZmluZSBJRF9BQTY0SVNBUjJfRUwxICAgICAgICAgICAg UzNfMF9DMF9DNl8yDQo+PiAjZW5kaWYNCj4+ICsjaWZuZGVmIFpDUl9FTDENCj4+ICsjZGVmaW5l IFpDUl9FTDEgICAgICAgICAgICAgICAgICAgICBTM18wX0MxX0MyXzANCj4+ICsjZW5kaWYNCj4+ IA0KPj4gLyogSUQgcmVnaXN0ZXJzIChpbXBvcnRlZCBmcm9tIGFybTY0L2luY2x1ZGUvYXNtL3N5 c3JlZy5oIGluIExpbnV4KSAqLw0KPj4gDQo+PiBkaWZmIC0tZ2l0IGEveGVuL2FyY2gvYXJtL2lu Y2x1ZGUvYXNtL2FybTY0L3ZmcC5oIGIveGVuL2FyY2gvYXJtL2luY2x1ZGUvYXNtL2FybTY0L3Zm cC5oDQo+PiBpbmRleCBlNmU4YzM2M2JjMTYuLjRiMzk5Y2NiZmIzMSAxMDA2NDQNCj4+IC0tLSBh L3hlbi9hcmNoL2FybS9pbmNsdWRlL2FzbS9hcm02NC92ZnAuaA0KPj4gKysrIGIveGVuL2FyY2gv YXJtL2luY2x1ZGUvYXNtL2FybTY0L3ZmcC5oDQo+PiBAQCAtNiw3ICs2LDIzIEBADQo+PiANCj4+ IHN0cnVjdCB2ZnBfc3RhdGUNCj4+IHsNCj4+ICsgICAgLyoNCj4+ICsgICAgICogV2hlbiBTVkUg aXMgZW5hYmxlZCBmb3IgdGhlIGd1ZXN0LCBmcHJlZ3MgbWVtb3J5IHdpbGwgYmUgdXNlZCB0bw0K Pj4gKyAgICAgKiBzYXZlL3Jlc3RvcmUgUDAtUDE1IHJlZ2lzdGVycywgb3RoZXJ3aXNlIGl0IHdp bGwgYmUgdXNlZCBmb3IgdGhlIFYwLVYzMQ0KPj4gKyAgICAgKiByZWdpc3RlcnMuDQo+PiArICAg ICAqLw0KPj4gICAgdWludDY0X3QgZnByZWdzWzY0XSBfX3ZmcF9hbGlnbmVkOw0KPj4gKw0KPj4g KyNpZmRlZiBDT05GSUdfQVJNNjRfU1ZFDQo+PiArICAgIC8qDQo+PiArICAgICAqIFdoZW4gU1ZF IGlzIGVuYWJsZWQgZm9yIHRoZSBndWVzdCwgc3ZlX3pyZWdfY3R4X2VuZCBwb2ludHMgdG8gbWVt b3J5DQo+PiArICAgICAqIHdoZXJlIFowLVozMSByZWdpc3RlcnMgYW5kIEZGUiBjYW4gYmUgc2F2 ZWQvcmVzdG9yZWQsIGl0IHBvaW50cyBhdCB0aGUNCj4+ICsgICAgICogZW5kIG9mIHRoZSBaMC1a MzEgc3BhY2UgYW5kIGF0IHRoZSBiZWdpbm5pbmcgb2YgdGhlIEZGUiBzcGFjZSwgaXQncyBkb25l DQo+PiArICAgICAqIGxpa2UgdGhhdCB0byBlYXNlIHRoZSBzYXZlL3Jlc3RvcmUgYXNzZW1ibHkg b3BlcmF0aW9ucy4NCj4+ICsgICAgICovDQo+PiArICAgIHVpbnQ2NF90ICpzdmVfenJlZ19jdHhf ZW5kOw0KPj4gKyNlbmRpZg0KPj4gKw0KPj4gICAgcmVnaXN0ZXJfdCBmcGNyOw0KPj4gICAgcmVn aXN0ZXJfdCBmcGV4YzMyX2VsMjsNCj4+ICAgIHJlZ2lzdGVyX3QgZnBzcjsNCj4+IGRpZmYgLS1n aXQgYS94ZW4vYXJjaC9hcm0vaW5jbHVkZS9hc20vZG9tYWluLmggYi94ZW4vYXJjaC9hcm0vaW5j bHVkZS9hc20vZG9tYWluLmgNCj4+IGluZGV4IDMzMWRhMGYzYmNjMy4uOTllNzk4ZmZmZjY4IDEw MDY0NA0KPj4gLS0tIGEveGVuL2FyY2gvYXJtL2luY2x1ZGUvYXNtL2RvbWFpbi5oDQo+PiArKysg Yi94ZW4vYXJjaC9hcm0vaW5jbHVkZS9hc20vZG9tYWluLmgNCj4+IEBAIC0xOTUsNiArMTk1LDEx IEBAIHN0cnVjdCBhcmNoX3ZjcHUNCj4+ICAgIHJlZ2lzdGVyX3QgdHBpZHJyb19lbDA7DQo+PiAN Cj4+ICAgIC8qIEhZUCBjb25maWd1cmF0aW9uICovDQo+PiArI2lmZGVmIENPTkZJR19BUk02NF9T VkUNCj4+ICsgICAgcmVnaXN0ZXJfdCB6Y3JfZWwxOw0KPj4gKyAgICByZWdpc3Rlcl90IHpjcl9l bDI7DQo+PiArI2VuZGlmDQo+PiArDQo+PiAgICByZWdpc3Rlcl90IGNwdHJfZWwyOw0KPj4gICAg cmVnaXN0ZXJfdCBoY3JfZWwyOw0KPj4gICAgcmVnaXN0ZXJfdCBtZGNyX2VsMjsNCj4+IC0tDQo+ PiAyLjM0LjENCj4+IA0KPiANCg0K From xen-devel-bounces@lists.xenproject.org Tue Jun 06 13:24:51 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 06 Jun 2023 13:24:51 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544074.849579 (Exim 4.92) (envelope-from ) id 1q6Wfw-0005fW-LH; Tue, 06 Jun 2023 13:24:40 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544074.849579; Tue, 06 Jun 2023 13:24:40 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6Wfw-0005fP-Hy; Tue, 06 Jun 2023 13:24:40 +0000 Received: by outflank-mailman (input) for mailman id 544074; Tue, 06 Jun 2023 13:24:38 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6Wfu-0005fH-Qy for xen-devel@lists.xenproject.org; Tue, 06 Jun 2023 13:24:38 +0000 Received: from EUR04-DB3-obe.outbound.protection.outlook.com (mail-db3eur04on0631.outbound.protection.outlook.com [2a01:111:f400:fe0c::631]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 7b37b57e-046d-11ee-8611-37d641c3527e; Tue, 06 Jun 2023 15:24:36 +0200 (CEST) Received: from DB3PR08CA0028.eurprd08.prod.outlook.com (2603:10a6:8::41) by PAWPR08MB8981.eurprd08.prod.outlook.com (2603:10a6:102:33e::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.32; Tue, 6 Jun 2023 13:24:33 +0000 Received: from DBAEUR03FT035.eop-EUR03.prod.protection.outlook.com (2603:10a6:8:0:cafe::33) by DB3PR08CA0028.outlook.office365.com (2603:10a6:8::41) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33 via Frontend Transport; Tue, 6 Jun 2023 13:24:33 +0000 Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by DBAEUR03FT035.mail.protection.outlook.com (100.127.142.136) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.19 via Frontend Transport; Tue, 6 Jun 2023 13:24:32 +0000 Received: ("Tessian outbound 5154e9d36775:v136"); Tue, 06 Jun 2023 13:24:32 +0000 Received: from db55fb40a862.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id F687C07B-95AE-4E9F-AD85-E298B11AFA94.1; Tue, 06 Jun 2023 13:24:20 +0000 Received: from EUR01-VE1-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id db55fb40a862.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Tue, 06 Jun 2023 13:24:20 +0000 Received: from AM6PR08MB3749.eurprd08.prod.outlook.com (2603:10a6:20b:8f::22) by AS8PR08MB10346.eurprd08.prod.outlook.com (2603:10a6:20b:57e::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.32; Tue, 6 Jun 2023 13:24:17 +0000 Received: from AM6PR08MB3749.eurprd08.prod.outlook.com ([fe80::6457:d14f:abe0:be0e]) by AM6PR08MB3749.eurprd08.prod.outlook.com ([fe80::6457:d14f:abe0:be0e%4]) with mapi id 15.20.6455.030; Tue, 6 Jun 2023 13:24:17 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 7b37b57e-046d-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=/alJ0yr0DqSkDDfJatotMNbjqqDOddZoNdl8Kuo6dTU=; b=fDshiPYb90LWi5kWkQv6doD5pzEbb4IkPKFAZ+be/0qHZ1UwNjd2gBE6/kLFoHJeqSJ3asa0YqhMBSdqt0Uuo/AkumT+bQC+UQog2aY7e4+L6LAIS5jcsqdVbL4pgyeM1uTQVb3Fx6EZgnliqUR/8NQQdv0n/ruXSEJszItk56Q= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C X-CheckRecipientChecked: true X-CR-MTA-CID: 2a1db1a434f02c5a X-CR-MTA-TID: 64aa7808 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=n1fORRKemvxZi/I3oC9xgiktAg/Ip2L+lIK/PQzrS8bqR1d9dzn/ygBIouBH98YfgREBn7Dtt/8T/Rc3PWjvjiY1jFvuS3nyZ51Tn5nAGu90Ia2h15x0SutHMbNTGoRhWnEmkcRoBqyXD6K7oOQtGZd4t4E/M+kEkglljRoMWpqDoA30R9eG6o9g0NAfpQWvNcVjJ9P5ZDPmRXy34PpjKuVFmE2znitKotLXhVYOvukS7SYL64fbtCv1meVEu577u/t0mOEYRxX8EkEcbuGpIH+ZiGZqmjBFxPobQE6ryytsaa+wxF7e1ejra7gdCfpoYrjlp3NUrbMsdgP4fW+oZA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=/alJ0yr0DqSkDDfJatotMNbjqqDOddZoNdl8Kuo6dTU=; b=ZOvqDdC5eK0T+60nzQBhS2wJ1L9NuGNhTTBwvUVyI2GPHj3vyD+qqZLoeyx9cT7XW11HQUbXFEgzq3c4wDNWd3dqDV4aTJJPapmAgq4FYO1M8cgxHEytZpwsTJIBP2EGiffS6EeulnTM6X0p2KX5VrDCUJfJmr2hzOUx46txIIEwqHF10tzi4jY1E8iI/fFW9CcWCk55pkbNq5kRgGlyegyKgZWTtKGelz3wYZk5cdXvgWQra6AtoDGJkRfNZOPd1dgwBaOJ8sG8lhDZkVAO41dmgO9YfwAyHklm8Ico99MMCWH4x0mncv8bBM8zQ3Cz9CIkOKHqTw6R0OY0NSwg2Q== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=/alJ0yr0DqSkDDfJatotMNbjqqDOddZoNdl8Kuo6dTU=; b=fDshiPYb90LWi5kWkQv6doD5pzEbb4IkPKFAZ+be/0qHZ1UwNjd2gBE6/kLFoHJeqSJ3asa0YqhMBSdqt0Uuo/AkumT+bQC+UQog2aY7e4+L6LAIS5jcsqdVbL4pgyeM1uTQVb3Fx6EZgnliqUR/8NQQdv0n/ruXSEJszItk56Q= From: Luca Fancellu To: =?utf-8?B?TWFyZWsgTWFyY3p5a293c2tpLUfDs3JlY2tp?= CC: Bertrand Marquis , Wei Chen , George Dunlap , Nick Rosbrook , Wei Liu , Anthony PERARD , Juergen Gross , Christian Lindig , David Scott , Christian Lindig , Xen-devel Subject: Re: [PATCH v8 09/12] tools: add physinfo arch_capabilities handling for Arm Thread-Topic: [PATCH v8 09/12] tools: add physinfo arch_capabilities handling for Arm Thread-Index: AQHZk5EO/ZdBT4k0K0aZv7Y6q8RtUK99zTWA Date: Tue, 6 Jun 2023 13:24:17 +0000 Message-ID: <01AD7206-23BD-49AF-87D1-B75AA91E1670@arm.com> References: <20230531072413.868673-1-luca.fancellu@arm.com> <20230531072413.868673-10-luca.fancellu@arm.com> In-Reply-To: <20230531072413.868673-10-luca.fancellu@arm.com> Accept-Language: en-GB, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-mailer: Apple Mail (2.3731.600.7) Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-traffictypediagnostic: AM6PR08MB3749:EE_|AS8PR08MB10346:EE_|DBAEUR03FT035:EE_|PAWPR08MB8981:EE_ X-MS-Office365-Filtering-Correlation-Id: 39c8f675-969b-4de0-b032-08db66915d53 x-checkrecipientrouted: true nodisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: jcOdNRAJAdDwOHKv6Z8wvJM8PdeNJD36d4IaQBKVt/8BNBWSPKSSi24/RvsF2x2gnO8jpIAiSA0IVsAyW8v+Ed1ATm7d0oXzPR03Ah02+uWCd61EtfAVd07clnsEy7CG/2jYZu046iHQiXaCRHkW5gf2+qfIxI/vUk0zsw6OctUX+fH6kTghnQwjXkahX81ipeHE3E12FRjJKHu99dNgUuHzSp46H+5buw23oiX7NAH1FFmYZxJ+HEKJ4DekYbTM2dJRr7BFyGTV6B4/o92//Qtwo+O0gRW8fJPzK9UbuWLLQNI3nTtJ9MnUAt4Lb54DzaHrZgIAGJ23rTcaHmvIUqcW/4z6ZP21M6shhEROhdKHGV5b4mj02UGpk72YMSD6GL1VToJhit2eGKWajMmgUrsUNMfnOdt2jDA0zwvmp3x9kGRzD4lA+yalemu11ztRXLxb/dZYZluACUgGCeRhU/nPajYvN1noi4HUxZ6debyYtAbxPHE6btO82jK1+k8cOo7iEs4aIhOCaVmex8vlM7/EL1rHVdSXPjS96qHfKb/3LzJoqL2f6LbQkOw7M/P8hVAS4vIl+lOWvIPNffXyT+KAwAe6O2UTZu+nPS3/vTQaNX+XvFo6bpXbr1sxwtoQuT6cf8+HVlir8ZZOO+LZVg== X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM6PR08MB3749.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(376002)(39860400002)(396003)(136003)(346002)(366004)(451199021)(30864003)(2906002)(83380400001)(2616005)(38070700005)(33656002)(86362001)(36756003)(38100700002)(122000001)(6486002)(41300700001)(5660300002)(316002)(8936002)(8676002)(54906003)(478600001)(66556008)(91956017)(64756008)(66446008)(71200400001)(66946007)(76116006)(66476007)(4326008)(6512007)(53546011)(6506007)(6916009)(26005)(186003)(7416002)(45980500001);DIR:OUT;SFP:1101; Content-Type: text/plain; charset="utf-8" Content-ID: <5CF4BC59543F9C498088C92C59BC042F@eurprd08.prod.outlook.com> Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR08MB10346 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: DBAEUR03FT035.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: 9ac581ff-dfe7-4fee-96a3-08db6691548b X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: u1PaRrULAYu95v1TERDeKzDsyLmFGjC6zAXIqrC+296a6Q4ozOY9pA+8IYQi5qeP5lneiztbMikm0RMiacxQQw+0K+9sbQg2JwBsYqmW3Xq2RFvP6/ps2uJ0C9rOLT00UM9EvaHEjssY0GRfpEiMl4O1wdMH+WW17iHt5PgKcQ7Ev7TvdPgF1x/v7Sar/yCJFg4Vu44N6R1L3T+PVpBWgf6I2DcbEVtRgzf30A+SO63lpoeKB3mE6wZXR//2cuu8mSx6LLk8zvycSCGC2MbPfNFaa2kGSTHLzdbUO2C6OEreHQlRll/5fC3tGoMpwo8+ks7pgc2Gu0aglzw9/isASAaVPO8yoUmnacaWDiOpsIXpT2B7rZbTJzLz4aQEmfvFRYES9ESW3UxtNBz+mVRcDt3BiylVKA4wLBSxesv12WfASV7adu2IQdSsTQZ1jkj/fLr9aKBU116kD4X4HZXzSnijFvfbliHGpxzuDxvZ30EGKNpUs4vhmIXJuTkQqpumbRj4vPisF97nuITpgwuDRJlsA0biNowVNxkVgPFHP/I8oilz+/wugW0Sn8SwH2NTa+ckmLbKTPGBm3f1QR+06soS6W5FxWSkbTVvCyfXwo333IehagfJFXwTpNETeq3hmXKioXywcf9wJE95wscsqcHy/g1WfEH5nXaE9LQUZeuag/D2ImOx01vLgIL81Dgii4+45ddkySYCFijj5XlzZCHt57UeR2KtK3WlS4VmRvArH23lyDWaJ/hRSKTmIA5f X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230028)(4636009)(346002)(376002)(396003)(136003)(39860400002)(451199021)(40470700004)(46966006)(36840700001)(41300700001)(316002)(54906003)(356005)(81166007)(82740400003)(5660300002)(6862004)(2906002)(30864003)(4326008)(70206006)(70586007)(8936002)(8676002)(478600001)(6486002)(40460700003)(82310400005)(86362001)(2616005)(186003)(36756003)(26005)(53546011)(33656002)(336012)(36860700001)(40480700001)(47076005)(6512007)(6506007)(83380400001);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Jun 2023 13:24:32.4957 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 39c8f675-969b-4de0-b032-08db66915d53 X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: DBAEUR03FT035.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAWPR08MB8981 DQoNCj4gT24gMzEgTWF5IDIwMjMsIGF0IDA4OjI0LCBMdWNhIEZhbmNlbGx1IDxMdWNhLkZhbmNl bGx1QGFybS5jb20+IHdyb3RlOg0KPiANCj4gT24gQXJtLCB0aGUgU1ZFIHZlY3RvciBsZW5ndGgg aXMgZW5jb2RlZCBpbiBhcmNoX2NhcGFiaWxpdGllcyBmaWVsZA0KPiBvZiBzdHJ1Y3QgeGVuX3N5 c2N0bF9waHlzaW5mbywgbWFrZSB1c2Ugb2YgdGhpcyBmaWVsZCBpbiB0aGUgdG9vbHMNCj4gd2hl biBidWlsZGluZyBmb3IgYXJtLg0KPiANCj4gQ3JlYXRlIGhlYWRlciBhcm0tYXJjaC1jYXBhYmls aXRpZXMuaCB0byBoYW5kbGUgdGhlIGFyY2hfY2FwYWJpbGl0aWVzDQo+IGZpZWxkIG9mIHBoeXNp bmZvIGZvciBBcm0uDQo+IA0KPiBTaWduZWQtb2ZmLWJ5OiBMdWNhIEZhbmNlbGx1IDxsdWNhLmZh bmNlbGx1QGFybS5jb20+DQo+IEFja2VkLWJ5OiBHZW9yZ2UgRHVubGFwIDxnZW9yZ2UuZHVubGFw QGNpdHJpeC5jb20+DQo+IEFja2VkLWJ5OiBDaHJpc3RpYW4gTGluZGlnIDxjaHJpc3RpYW4ubGlu ZGlnQGNsb3VkLmNvbT4NCj4gUmV2aWV3ZWQtYnk6IEFudGhvbnkgUEVSQVJEIDxhbnRob255LnBl cmFyZEBjaXRyaXguY29tPg0KPiAtLS0NCj4gQ2hhbmdlcyBmcm9tIHY3Og0KPiAtIGluIHhjLmMs IGFkZCAiYXJtX3N2ZV92bCIgZW50cnkgdG8gdGhlIHB5dGhvbiBkaWN0IG9ubHkgb24gYXJtNjQu DQo+ICAgKE1hcmVrKQ0KDQpIaSBNYXJlaywNCg0KQXJlIHlvdSBvayB3aXRoIHRoZSBjaGFuZ2Vz IEnigJl2ZSBkb25lIHRvIGFkZHJlc3MgeW91ciBsYXN0IGNvbW1lbnQgb24gdjc/DQoNCkNoZWVy cywNCkx1Y2ENCg0KPiBDaGFuZ2VzIGZyb20gdjY6DQo+IC0gRml4IGxpY2VuY2UgaGVhZGVyIGlu IGFybS1hdGNoLWNhcGFiaWxpdGllcy5oLCBhZGQgUi1ieSAoQW50aG9ueSkNCj4gQ2hhbmdlcyBm cm9tIHY1Og0KPiAtIG5vIGNoYW5nZXMNCj4gQ2hhbmdlcyBmcm9tIHY0Og0KPiAtIE1vdmUgYXJt LWFyY2gtY2FwYWJpbGl0aWVzLmggaW50byB4ZW4tdG9vbHMvLCBhZGQgTElCWExfSEFWRV8sDQo+ ICAgZml4ZWQgcHl0aG9uIHJldHVybiB0eXBlIHRvIEkgaW5zdGVhZCBvZiBpLiAoQW50aG9ueSkN Cj4gQ2hhbmdlcyBmcm9tIHYzOg0KPiAtIGFkZCBBY2stYnkgZm9yIHRoZSBHb2xhbmcgYml0cyAo R2VvcmdlKQ0KPiAtIGFkZCBBY2stYnkgZm9yIHRoZSBPQ2FtbCB0b29scyAoQ2hyaXN0aWFuKQ0K PiAtIG5vdyB4ZW4tdG9vbHMvbGlicy5oIGlzIG5hbWVkIHhlbi10b29scy9jb21tb24tbWFjcm9z LmgNCj4gLSBjaGFuZ2VkIGNvbW1pdCBtZXNzYWdlIHRvIGV4cGxhaW4gd2h5IHRoZSBoZWFkZXIg bW9kaWZpY2F0aW9uDQo+ICAgaW4gcHl0aG9uL3hlbi9sb3dsZXZlbC94Yy94Yy5jDQo+IENoYW5n ZXMgZnJvbSB2MjoNCj4gLSByZW5hbWUgYXJtX2FyY2hfY2FwYWJpbGl0aWVzLmggaW4gYXJtLWFy Y2gtY2FwYWJpbGl0aWVzLmgsIHVzZQ0KPiAgIE1BU0tfRVhUUi4NCj4gLSBOb3cgYXJtLWFyY2gt Y2FwYWJpbGl0aWVzLmggbmVlZHMgTUFTS19FWFRSIG1hY3JvLCBidXQgaXQgaXMNCj4gICBkZWZp bmVkIGluIGxpYnhsX2ludGVybmFsLmgsIGl0IGRvZXNuJ3QgZmVlbCByaWdodCB0byBpbmNsdWRl DQo+ICAgdGhhdCBoZWFkZXIgc28gbW92ZSBNQVNLX0VYVFIgaW50byB4ZW4tdG9vbHMvbGlicy5o IHRoYXQgaXMgYWxzbw0KPiAgIGluY2x1ZGVkIGluIGxpYnhsX2ludGVybmFsLmgNCj4gQ2hhbmdl cyBmcm9tIHYxOg0KPiAtIG5vdyBTVkUgVkwgaXMgZW5jb2RlZCBpbiBhcmNoX2NhcGFiaWxpdGll cyBvbiBBcm0NCj4gQ2hhbmdlcyBmcm9tIFJGQzoNCj4gLSBuZXcgcGF0Y2gNCj4gLS0tDQo+IHRv b2xzL2dvbGFuZy94ZW5saWdodC9oZWxwZXJzLmdlbi5nbyAgICAgICAgICB8ICAyICsNCj4gdG9v bHMvZ29sYW5nL3hlbmxpZ2h0L3R5cGVzLmdlbi5nbyAgICAgICAgICAgIHwgIDEgKw0KPiB0b29s cy9pbmNsdWRlL2xpYnhsLmggICAgICAgICAgICAgICAgICAgICAgICAgfCAgNiArKysNCj4gLi4u L2luY2x1ZGUveGVuLXRvb2xzL2FybS1hcmNoLWNhcGFiaWxpdGllcy5oIHwgMjggKysrKysrKysr KysrKw0KPiB0b29scy9pbmNsdWRlL3hlbi10b29scy9jb21tb24tbWFjcm9zLmggICAgICAgfCAg MiArDQo+IHRvb2xzL2xpYnMvbGlnaHQvbGlieGwuYyAgICAgICAgICAgICAgICAgICAgICB8ICAx ICsNCj4gdG9vbHMvbGlicy9saWdodC9saWJ4bF9pbnRlcm5hbC5oICAgICAgICAgICAgIHwgIDEg LQ0KPiB0b29scy9saWJzL2xpZ2h0L2xpYnhsX3R5cGVzLmlkbCAgICAgICAgICAgICAgfCAgMSAr DQo+IHRvb2xzL29jYW1sL2xpYnMveGMveGVuY3RybC5tbCAgICAgICAgICAgICAgICB8ICA0ICst DQo+IHRvb2xzL29jYW1sL2xpYnMveGMveGVuY3RybC5tbGkgICAgICAgICAgICAgICB8ICA0ICst DQo+IHRvb2xzL29jYW1sL2xpYnMveGMveGVuY3RybF9zdHVicy5jICAgICAgICAgICB8ICA4ICsr LS0NCj4gdG9vbHMvcHl0aG9uL3hlbi9sb3dsZXZlbC94Yy94Yy5jICAgICAgICAgICAgIHwgNDIg KysrKysrKysrKysrKystLS0tLQ0KPiB0b29scy94bC94bF9pbmZvLmMgICAgICAgICAgICAgICAg ICAgICAgICAgICAgfCAgOCArKysrDQo+IDEzIGZpbGVzIGNoYW5nZWQsIDg3IGluc2VydGlvbnMo KyksIDIxIGRlbGV0aW9ucygtKQ0KPiBjcmVhdGUgbW9kZSAxMDA2NDQgdG9vbHMvaW5jbHVkZS94 ZW4tdG9vbHMvYXJtLWFyY2gtY2FwYWJpbGl0aWVzLmgNCj4gDQo+IGRpZmYgLS1naXQgYS90b29s cy9nb2xhbmcveGVubGlnaHQvaGVscGVycy5nZW4uZ28gYi90b29scy9nb2xhbmcveGVubGlnaHQv aGVscGVycy5nZW4uZ28NCj4gaW5kZXggMGEyMDNkMjIzMjFmLi4zNTM5N2JlMmY5ZTIgMTAwNjQ0 DQo+IC0tLSBhL3Rvb2xzL2dvbGFuZy94ZW5saWdodC9oZWxwZXJzLmdlbi5nbw0KPiArKysgYi90 b29scy9nb2xhbmcveGVubGlnaHQvaGVscGVycy5nZW4uZ28NCj4gQEAgLTM1MDYsNiArMzUwNiw3 IEBAIHguQ2FwVm10cmFjZSA9IGJvb2woeGMuY2FwX3ZtdHJhY2UpDQo+IHguQ2FwVnBtdSA9IGJv b2woeGMuY2FwX3ZwbXUpDQo+IHguQ2FwR250dGFiVjEgPSBib29sKHhjLmNhcF9nbnR0YWJfdjEp DQo+IHguQ2FwR250dGFiVjIgPSBib29sKHhjLmNhcF9nbnR0YWJfdjIpDQo+ICt4LkFyY2hDYXBh YmlsaXRpZXMgPSB1aW50MzIoeGMuYXJjaF9jYXBhYmlsaXRpZXMpDQo+IA0KPiAgcmV0dXJuIG5p bH0NCj4gDQo+IEBAIC0zNTQwLDYgKzM1NDEsNyBAQCB4Yy5jYXBfdm10cmFjZSA9IEMuYm9vbCh4 LkNhcFZtdHJhY2UpDQo+IHhjLmNhcF92cG11ID0gQy5ib29sKHguQ2FwVnBtdSkNCj4geGMuY2Fw X2dudHRhYl92MSA9IEMuYm9vbCh4LkNhcEdudHRhYlYxKQ0KPiB4Yy5jYXBfZ250dGFiX3YyID0g Qy5ib29sKHguQ2FwR250dGFiVjIpDQo+ICt4Yy5hcmNoX2NhcGFiaWxpdGllcyA9IEMudWludDMy X3QoeC5BcmNoQ2FwYWJpbGl0aWVzKQ0KPiANCj4gIHJldHVybiBuaWwNCj4gIH0NCj4gZGlmZiAt LWdpdCBhL3Rvb2xzL2dvbGFuZy94ZW5saWdodC90eXBlcy5nZW4uZ28gYi90b29scy9nb2xhbmcv eGVubGlnaHQvdHlwZXMuZ2VuLmdvDQo+IGluZGV4IGE3YzE3Njk5ZjgwZS4uM2Q5NjhhNDk2NzQ0 IDEwMDY0NA0KPiAtLS0gYS90b29scy9nb2xhbmcveGVubGlnaHQvdHlwZXMuZ2VuLmdvDQo+ICsr KyBiL3Rvb2xzL2dvbGFuZy94ZW5saWdodC90eXBlcy5nZW4uZ28NCj4gQEAgLTEwNzksNiArMTA3 OSw3IEBAIENhcFZtdHJhY2UgYm9vbA0KPiBDYXBWcG11IGJvb2wNCj4gQ2FwR250dGFiVjEgYm9v bA0KPiBDYXBHbnR0YWJWMiBib29sDQo+ICtBcmNoQ2FwYWJpbGl0aWVzIHVpbnQzMg0KPiB9DQo+ IA0KPiB0eXBlIENvbm5lY3RvcmluZm8gc3RydWN0IHsNCj4gZGlmZiAtLWdpdCBhL3Rvb2xzL2lu Y2x1ZGUvbGlieGwuaCBiL3Rvb2xzL2luY2x1ZGUvbGlieGwuaA0KPiBpbmRleCBjZmExYTE5MTMx OGMuLjRmYTA5ZmY3NjM1YSAxMDA2NDQNCj4gLS0tIGEvdG9vbHMvaW5jbHVkZS9saWJ4bC5oDQo+ ICsrKyBiL3Rvb2xzL2luY2x1ZGUvbGlieGwuaA0KPiBAQCAtNTI1LDYgKzUyNSwxMiBAQA0KPiAg Ki8NCj4gI2RlZmluZSBMSUJYTF9IQVZFX1BIWVNJTkZPX0NBUF9HTlRUQUIgMQ0KPiANCj4gKy8q DQo+ICsgKiBMSUJYTF9IQVZFX1BIWVNJTkZPX0FSQ0hfQ0FQQUJJTElUSUVTIGluZGljYXRlcyB0 aGF0IGxpYnhsX3BoeXNpbmZvIGhhcyBhDQo+ICsgKiBhcmNoX2NhcGFiaWxpdGllcyBmaWVsZC4N Cj4gKyAqLw0KPiArI2RlZmluZSBMSUJYTF9IQVZFX1BIWVNJTkZPX0FSQ0hfQ0FQQUJJTElUSUVT IDENCj4gKw0KPiAvKg0KPiAgKiBMSUJYTF9IQVZFX01BWF9HUkFOVF9WRVJTSU9OIGluZGljYXRl cyBsaWJ4bF9kb21haW5fYnVpbGRfaW5mbyBoYXMgYQ0KPiAgKiBtYXhfZ3JhbnRfdmVyc2lvbiBm aWVsZCBmb3Igc2V0dGluZyB0aGUgbWF4IGdyYW50IHRhYmxlIHZlcnNpb24gcGVyDQo+IGRpZmYg LS1naXQgYS90b29scy9pbmNsdWRlL3hlbi10b29scy9hcm0tYXJjaC1jYXBhYmlsaXRpZXMuaCBi L3Rvb2xzL2luY2x1ZGUveGVuLXRvb2xzL2FybS1hcmNoLWNhcGFiaWxpdGllcy5oDQo+IG5ldyBm aWxlIG1vZGUgMTAwNjQ0DQo+IGluZGV4IDAwMDAwMDAwMDAwMC4uMzg0OWU4OTc5MjVkDQo+IC0t LSAvZGV2L251bGwNCj4gKysrIGIvdG9vbHMvaW5jbHVkZS94ZW4tdG9vbHMvYXJtLWFyY2gtY2Fw YWJpbGl0aWVzLmgNCj4gQEAgLTAsMCArMSwyOCBAQA0KPiArLyogU1BEWC1MaWNlbnNlLUlkZW50 aWZpZXI6IExHUEwtMi4xLW9ubHkgKi8NCj4gKy8qDQo+ICsgKiBDb3B5cmlnaHQgKEMpIDIwMjMg QVJNIEx0ZC4NCj4gKyAqLw0KPiArDQo+ICsjaWZuZGVmIEFSTV9BUkNIX0NBUEFCSUxJVElFU19I DQo+ICsjZGVmaW5lIEFSTV9BUkNIX0NBUEFCSUxJVElFU19IDQo+ICsNCj4gKyNpbmNsdWRlIDxz dGRpbnQuaD4NCj4gKyNpbmNsdWRlIDx4ZW4vc3lzY3RsLmg+DQo+ICsNCj4gKyNpbmNsdWRlIDx4 ZW4tdG9vbHMvY29tbW9uLW1hY3Jvcy5oPg0KPiArDQo+ICtzdGF0aWMgaW5saW5lDQo+ICt1bnNp Z25lZCBpbnQgYXJjaF9jYXBhYmlsaXRpZXNfYXJtX3N2ZSh1bnNpZ25lZCBpbnQgYXJjaF9jYXBh YmlsaXRpZXMpDQo+ICt7DQo+ICsjaWYgZGVmaW5lZChfX2FhcmNoNjRfXykNCj4gKyAgICB1bnNp Z25lZCBpbnQgc3ZlX3ZsID0gTUFTS19FWFRSKGFyY2hfY2FwYWJpbGl0aWVzLA0KPiArICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWEVOX1NZU0NUTF9QSFlTQ0FQX0FSTV9TVkVf TUFTSyk7DQo+ICsNCj4gKyAgICAvKiBWZWN0b3IgbGVuZ3RoIGlzIGRpdmlkZWQgYnkgMTI4IGJl Zm9yZSBzdG9yaW5nIGl0IGluIGFyY2hfY2FwYWJpbGl0aWVzICovDQo+ICsgICAgcmV0dXJuIHN2 ZV92bCAqIDEyOFU7DQo+ICsjZWxzZQ0KPiArICAgIHJldHVybiAwOw0KPiArI2VuZGlmDQo+ICt9 DQo+ICsNCj4gKyNlbmRpZiAvKiBBUk1fQVJDSF9DQVBBQklMSVRJRVNfSCAqLw0KPiBkaWZmIC0t Z2l0IGEvdG9vbHMvaW5jbHVkZS94ZW4tdG9vbHMvY29tbW9uLW1hY3Jvcy5oIGIvdG9vbHMvaW5j bHVkZS94ZW4tdG9vbHMvY29tbW9uLW1hY3Jvcy5oDQo+IGluZGV4IDc2YjU1YmY2MjA4NS4uZDUz Yjg4MTgyNTYwIDEwMDY0NA0KPiAtLS0gYS90b29scy9pbmNsdWRlL3hlbi10b29scy9jb21tb24t bWFjcm9zLmgNCj4gKysrIGIvdG9vbHMvaW5jbHVkZS94ZW4tdG9vbHMvY29tbW9uLW1hY3Jvcy5o DQo+IEBAIC03Miw2ICs3Miw4IEBADQo+ICNkZWZpbmUgUk9VTkRVUChfeCxfdykgKCgodW5zaWdu ZWQgbG9uZykoX3gpKygxVUw8PChfdykpLTEpICYgfigoMVVMPDwoX3cpKS0xKSkNCj4gI2VuZGlm DQo+IA0KPiArI2RlZmluZSBNQVNLX0VYVFIodiwgbSkgKCgodikgJiAobSkpIC8gKChtKSAmIC0o bSkpKQ0KPiArDQo+ICNpZm5kZWYgX19tdXN0X2NoZWNrDQo+ICNkZWZpbmUgX19tdXN0X2NoZWNr IF9fYXR0cmlidXRlX18oKF9fd2Fybl91bnVzZWRfcmVzdWx0X18pKQ0KPiAjZW5kaWYNCj4gZGlm ZiAtLWdpdCBhL3Rvb2xzL2xpYnMvbGlnaHQvbGlieGwuYyBiL3Rvb2xzL2xpYnMvbGlnaHQvbGli eGwuYw0KPiBpbmRleCBhMGJmN2QxODZmNjkuLjE3NWQ2ZGRlMGI4MCAxMDA2NDQNCj4gLS0tIGEv dG9vbHMvbGlicy9saWdodC9saWJ4bC5jDQo+ICsrKyBiL3Rvb2xzL2xpYnMvbGlnaHQvbGlieGwu Yw0KPiBAQCAtNDA5LDYgKzQwOSw3IEBAIGludCBsaWJ4bF9nZXRfcGh5c2luZm8obGlieGxfY3R4 ICpjdHgsIGxpYnhsX3BoeXNpbmZvICpwaHlzaW5mbykNCj4gICAgICAgICAhISh4Y3BoeXNpbmZv LmNhcGFiaWxpdGllcyAmIFhFTl9TWVNDVExfUEhZU0NBUF9nbnR0YWJfdjEpOw0KPiAgICAgcGh5 c2luZm8tPmNhcF9nbnR0YWJfdjIgPQ0KPiAgICAgICAgICEhKHhjcGh5c2luZm8uY2FwYWJpbGl0 aWVzICYgWEVOX1NZU0NUTF9QSFlTQ0FQX2dudHRhYl92Mik7DQo+ICsgICAgcGh5c2luZm8tPmFy Y2hfY2FwYWJpbGl0aWVzID0geGNwaHlzaW5mby5hcmNoX2NhcGFiaWxpdGllczsNCj4gDQo+ICAg ICBHQ19GUkVFOw0KPiAgICAgcmV0dXJuIDA7DQo+IGRpZmYgLS1naXQgYS90b29scy9saWJzL2xp Z2h0L2xpYnhsX2ludGVybmFsLmggYi90b29scy9saWJzL2xpZ2h0L2xpYnhsX2ludGVybmFsLmgN Cj4gaW5kZXggNTI0NGZkZTYyMzlhLi44YWJhM2UxMzg5MDkgMTAwNjQ0DQo+IC0tLSBhL3Rvb2xz L2xpYnMvbGlnaHQvbGlieGxfaW50ZXJuYWwuaA0KPiArKysgYi90b29scy9saWJzL2xpZ2h0L2xp YnhsX2ludGVybmFsLmgNCj4gQEAgLTEzMiw3ICsxMzIsNiBAQA0KPiANCj4gI2RlZmluZSBESVZf Uk9VTkRVUChuLCBkKSAoKChuKSArIChkKSAtIDEpIC8gKGQpKQ0KPiANCj4gLSNkZWZpbmUgTUFT S19FWFRSKHYsIG0pICgoKHYpICYgKG0pKSAvICgobSkgJiAtKG0pKSkNCj4gI2RlZmluZSBNQVNL X0lOU1IodiwgbSkgKCgodikgKiAoKG0pICYgLShtKSkpICYgKG0pKQ0KPiANCj4gI2RlZmluZSBM SUJYTF9fTE9HR0lOR19FTkFCTEVEDQo+IGRpZmYgLS1naXQgYS90b29scy9saWJzL2xpZ2h0L2xp YnhsX3R5cGVzLmlkbCBiL3Rvb2xzL2xpYnMvbGlnaHQvbGlieGxfdHlwZXMuaWRsDQo+IGluZGV4 IGMxMDI5MmUwZDdlMy4uZmQzMWRhY2Y3ZDVhIDEwMDY0NA0KPiAtLS0gYS90b29scy9saWJzL2xp Z2h0L2xpYnhsX3R5cGVzLmlkbA0KPiArKysgYi90b29scy9saWJzL2xpZ2h0L2xpYnhsX3R5cGVz LmlkbA0KPiBAQCAtMTEzMyw2ICsxMTMzLDcgQEAgbGlieGxfcGh5c2luZm8gPSBTdHJ1Y3QoInBo eXNpbmZvIiwgWw0KPiAgICAgKCJjYXBfdnBtdSIsIGJvb2wpLA0KPiAgICAgKCJjYXBfZ250dGFi X3YxIiwgYm9vbCksDQo+ICAgICAoImNhcF9nbnR0YWJfdjIiLCBib29sKSwNCj4gKyAgICAoImFy Y2hfY2FwYWJpbGl0aWVzIiwgdWludDMyKSwNCj4gICAgIF0sIGRpcj1ESVJfT1VUKQ0KPiANCj4g bGlieGxfY29ubmVjdG9yaW5mbyA9IFN0cnVjdCgiY29ubmVjdG9yaW5mbyIsIFsNCj4gZGlmZiAt LWdpdCBhL3Rvb2xzL29jYW1sL2xpYnMveGMveGVuY3RybC5tbCBiL3Rvb2xzL29jYW1sL2xpYnMv eGMveGVuY3RybC5tbA0KPiBpbmRleCBlNDA5NmJmOTJjMWQuLmJmMjNjYTUwYmIxNSAxMDA2NDQN Cj4gLS0tIGEvdG9vbHMvb2NhbWwvbGlicy94Yy94ZW5jdHJsLm1sDQo+ICsrKyBiL3Rvb2xzL29j YW1sL2xpYnMveGMveGVuY3RybC5tbA0KPiBAQCAtMTI4LDEyICsxMjgsMTAgQEAgdHlwZSBwaHlz aW5mb19jYXBfZmxhZyA9DQo+ICAgfCBDQVBfR250dGFiX3YxDQo+ICAgfCBDQVBfR250dGFiX3Yy DQo+IA0KPiAtdHlwZSBhcm1fcGh5c2luZm9fY2FwX2ZsYWcNCj4gLQ0KPiB0eXBlIHg4Nl9waHlz aW5mb19jYXBfZmxhZw0KPiANCj4gdHlwZSBhcmNoX3BoeXNpbmZvX2NhcF9mbGFncyA9DQo+IC0g IHwgQVJNIG9mIGFybV9waHlzaW5mb19jYXBfZmxhZyBsaXN0DQo+ICsgIHwgQVJNIG9mIGludA0K PiAgIHwgWDg2IG9mIHg4Nl9waHlzaW5mb19jYXBfZmxhZyBsaXN0DQo+IA0KPiB0eXBlIHBoeXNp bmZvID0NCj4gZGlmZiAtLWdpdCBhL3Rvb2xzL29jYW1sL2xpYnMveGMveGVuY3RybC5tbGkgYi90 b29scy9vY2FtbC9saWJzL3hjL3hlbmN0cmwubWxpDQo+IGluZGV4IGVmMjI1NDUzNzQzMC4uZWQx ZTI4ZWEzMGEwIDEwMDY0NA0KPiAtLS0gYS90b29scy9vY2FtbC9saWJzL3hjL3hlbmN0cmwubWxp DQo+ICsrKyBiL3Rvb2xzL29jYW1sL2xpYnMveGMveGVuY3RybC5tbGkNCj4gQEAgLTExMywxMiAr MTEzLDEwIEBAIHR5cGUgcGh5c2luZm9fY2FwX2ZsYWcgPQ0KPiAgIHwgQ0FQX0dudHRhYl92MQ0K PiAgIHwgQ0FQX0dudHRhYl92Mg0KPiANCj4gLXR5cGUgYXJtX3BoeXNpbmZvX2NhcF9mbGFnDQo+ IC0NCj4gdHlwZSB4ODZfcGh5c2luZm9fY2FwX2ZsYWcNCj4gDQo+IHR5cGUgYXJjaF9waHlzaW5m b19jYXBfZmxhZ3MgPQ0KPiAtICB8IEFSTSBvZiBhcm1fcGh5c2luZm9fY2FwX2ZsYWcgbGlzdA0K PiArICB8IEFSTSBvZiBpbnQNCj4gICB8IFg4NiBvZiB4ODZfcGh5c2luZm9fY2FwX2ZsYWcgbGlz dA0KPiANCj4gdHlwZSBwaHlzaW5mbyA9IHsNCj4gZGlmZiAtLWdpdCBhL3Rvb2xzL29jYW1sL2xp YnMveGMveGVuY3RybF9zdHVicy5jIGIvdG9vbHMvb2NhbWwvbGlicy94Yy94ZW5jdHJsX3N0dWJz LmMNCj4gaW5kZXggZjY4NmRiMzEyNGVlLi5hMDNkYTMxZjZmMmMgMTAwNjQ0DQo+IC0tLSBhL3Rv b2xzL29jYW1sL2xpYnMveGMveGVuY3RybF9zdHVicy5jDQo+ICsrKyBiL3Rvb2xzL29jYW1sL2xp YnMveGMveGVuY3RybF9zdHVicy5jDQo+IEBAIC04NTEsMTMgKzg1MSwxNSBAQCBDQU1McHJpbSB2 YWx1ZSBzdHViX3hjX3BoeXNpbmZvKHZhbHVlIHhjaF92YWwpDQo+IGFyY2hfY2FwX2xpc3QgPSBU YWdfY29uczsNCj4gDQo+IGFyY2hfY2FwX2ZsYWdzX3RhZyA9IDE7IC8qIHRhZyB4ODYgKi8NCj4g LSNlbHNlDQo+IC0gY2FtbF9mYWlsd2l0aCgiVW5oYW5kbGVkIGFyY2hpdGVjdHVyZSIpOw0KPiAt I2VuZGlmDQo+IA0KPiBhcmNoX2NhcF9mbGFncyA9IGNhbWxfYWxsb2Nfc21hbGwoMSwgYXJjaF9j YXBfZmxhZ3NfdGFnKTsNCj4gU3RvcmVfZmllbGQoYXJjaF9jYXBfZmxhZ3MsIDAsIGFyY2hfY2Fw X2xpc3QpOw0KPiBTdG9yZV9maWVsZChwaHlzaW5mbywgMTAsIGFyY2hfY2FwX2ZsYWdzKTsNCj4g KyNlbGlmIGRlZmluZWQoX19hYXJjaDY0X18pDQo+ICsgU3RvcmVfZmllbGQocGh5c2luZm8sIDEw LCBWYWxfaW50KGNfcGh5c2luZm8uYXJjaF9jYXBhYmlsaXRpZXMpKTsNCj4gKyNlbHNlDQo+ICsg Y2FtbF9mYWlsd2l0aCgiVW5oYW5kbGVkIGFyY2hpdGVjdHVyZSIpOw0KPiArI2VuZGlmDQo+IA0K PiBDQU1McmV0dXJuKHBoeXNpbmZvKTsNCj4gfQ0KPiBkaWZmIC0tZ2l0IGEvdG9vbHMvcHl0aG9u L3hlbi9sb3dsZXZlbC94Yy94Yy5jIGIvdG9vbHMvcHl0aG9uL3hlbi9sb3dsZXZlbC94Yy94Yy5j DQo+IGluZGV4IDk3MjhiMzQxODVhYy4uNDkxZTg4OTc3ZmQzIDEwMDY0NA0KPiAtLS0gYS90b29s cy9weXRob24veGVuL2xvd2xldmVsL3hjL3hjLmMNCj4gKysrIGIvdG9vbHMvcHl0aG9uL3hlbi9s b3dsZXZlbC94Yy94Yy5jDQo+IEBAIC0yMiw2ICsyMiw3IEBADQo+ICNpbmNsdWRlIDx4ZW4vaHZt L2h2bV9pbmZvX3RhYmxlLmg+DQo+ICNpbmNsdWRlIDx4ZW4vaHZtL3BhcmFtcy5oPg0KPiANCj4g KyNpbmNsdWRlIDx4ZW4tdG9vbHMvYXJtLWFyY2gtY2FwYWJpbGl0aWVzLmg+DQo+ICNpbmNsdWRl IDx4ZW4tdG9vbHMvY29tbW9uLW1hY3Jvcy5oPg0KPiANCj4gLyogTmVlZGVkIGZvciBQeXRob24g dmVyc2lvbnMgZWFybGllciB0aGFuIDIuMy4gKi8NCj4gQEAgLTg3MSw2ICs4NzIsNyBAQCBzdGF0 aWMgUHlPYmplY3QgKnB5eGNfcGh5c2luZm8oWGNPYmplY3QgKnNlbGYpDQo+ICAgICBjb25zdCBj aGFyICp2aXJ0Y2FwX25hbWVzW10gPSB7ICJodm0iLCAicHYiIH07DQo+ICAgICBjb25zdCB1bnNp Z25lZCB2aXJ0Y2Fwc19iaXRzW10gPSB7IFhFTl9TWVNDVExfUEhZU0NBUF9odm0sDQo+ICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFhFTl9TWVNDVExfUEhZU0NBUF9wdiB9 Ow0KPiArICAgIFB5T2JqZWN0ICpvYmpyZXQ7DQo+IA0KPiAgICAgaWYgKCB4Y19waHlzaW5mbyhz ZWxmLT54Y19oYW5kbGUsICZwaW5mbykgIT0gMCApDQo+ICAgICAgICAgcmV0dXJuIHB5eGNfZXJy b3JfdG9fZXhjZXB0aW9uKHNlbGYtPnhjX2hhbmRsZSk7DQo+IEBAIC04OTcsMTcgKzg5OSwzNSBA QCBzdGF0aWMgUHlPYmplY3QgKnB5eGNfcGh5c2luZm8oWGNPYmplY3QgKnNlbGYpDQo+ICAgICBp ZiAoIHAgIT0gdmlydF9jYXBzICkNCj4gICAgICAgKihwLTEpID0gJ1wwJzsNCj4gDQo+IC0gICAg cmV0dXJuIFB5X0J1aWxkVmFsdWUoIntzOmksczppLHM6aSxzOmksczpsLHM6bCxzOmwsczppLHM6 cyxzOnN9IiwNCj4gLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAibnJfbm9kZXMiLCAgICAg ICAgIHBpbmZvLm5yX25vZGVzLA0KPiAtICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0aHJl YWRzX3Blcl9jb3JlIiwgcGluZm8udGhyZWFkc19wZXJfY29yZSwNCj4gLSAgICAgICAgICAgICAg ICAgICAgICAgICAgICAiY29yZXNfcGVyX3NvY2tldCIsIHBpbmZvLmNvcmVzX3Blcl9zb2NrZXQs DQo+IC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgIm5yX2NwdXMiLCAgICAgICAgICBwaW5m by5ucl9jcHVzLA0KPiAtICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0b3RhbF9tZW1vcnki LCAgICAgcGFnZXNfdG9fa2liKHBpbmZvLnRvdGFsX3BhZ2VzKSwNCj4gLSAgICAgICAgICAgICAg ICAgICAgICAgICAgICAiZnJlZV9tZW1vcnkiLCAgICAgIHBhZ2VzX3RvX2tpYihwaW5mby5mcmVl X3BhZ2VzKSwNCj4gLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2NydWJfbWVtb3J5Iiwg ICAgIHBhZ2VzX3RvX2tpYihwaW5mby5zY3J1Yl9wYWdlcyksDQo+IC0gICAgICAgICAgICAgICAg ICAgICAgICAgICAgImNwdV9raHoiLCAgICAgICAgICBwaW5mby5jcHVfa2h6LA0KPiAtICAgICAg ICAgICAgICAgICAgICAgICAgICAgICJod19jYXBzIiwgICAgICAgICAgY3B1X2NhcCwNCj4gLSAg ICAgICAgICAgICAgICAgICAgICAgICAgICAidmlydF9jYXBzIiwgICAgICAgIHZpcnRfY2Fwcyk7 DQo+ICsgICAgb2JqcmV0ID0gUHlfQnVpbGRWYWx1ZSgie3M6aSxzOmksczppLHM6aSxzOmwsczps LHM6bCxzOmksczpzLHM6c30iLA0KPiArICAgICAgICAgICAgICAgICAgICAgICAgICAgIm5yX25v ZGVzIiwgICAgICAgICBwaW5mby5ucl9ub2RlcywNCj4gKyAgICAgICAgICAgICAgICAgICAgICAg ICAgICJ0aHJlYWRzX3Blcl9jb3JlIiwgcGluZm8udGhyZWFkc19wZXJfY29yZSwNCj4gKyAgICAg ICAgICAgICAgICAgICAgICAgICAgICJjb3Jlc19wZXJfc29ja2V0IiwgcGluZm8uY29yZXNfcGVy X3NvY2tldCwNCj4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICJucl9jcHVzIiwgICAgICAg ICAgcGluZm8ubnJfY3B1cywNCj4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0b3RhbF9t ZW1vcnkiLCAgICAgcGFnZXNfdG9fa2liKHBpbmZvLnRvdGFsX3BhZ2VzKSwNCj4gKyAgICAgICAg ICAgICAgICAgICAgICAgICAgICJmcmVlX21lbW9yeSIsICAgICAgcGFnZXNfdG9fa2liKHBpbmZv LmZyZWVfcGFnZXMpLA0KPiArICAgICAgICAgICAgICAgICAgICAgICAgICAgInNjcnViX21lbW9y eSIsICAgICBwYWdlc190b19raWIocGluZm8uc2NydWJfcGFnZXMpLA0KPiArICAgICAgICAgICAg ICAgICAgICAgICAgICAgImNwdV9raHoiLCAgICAgICAgICBwaW5mby5jcHVfa2h6LA0KPiArICAg ICAgICAgICAgICAgICAgICAgICAgICAgImh3X2NhcHMiLCAgICAgICAgICBjcHVfY2FwLA0KPiAr ICAgICAgICAgICAgICAgICAgICAgICAgICAgInZpcnRfY2FwcyIsICAgICAgICB2aXJ0X2NhcHMp Ow0KPiArDQo+ICsjaWYgZGVmaW5lZChfX2FhcmNoNjRfXykNCj4gKyAgICBpZiAoIG9ianJldCAp IHsNCj4gKyAgICAgICAgdW5zaWduZWQgaW50IHN2ZV92bF9iaXRzOw0KPiArICAgICAgICBQeU9i amVjdCAqcHlfYXJtX3N2ZV92bDsNCj4gKw0KPiArICAgICAgICBzdmVfdmxfYml0cyA9IGFyY2hf Y2FwYWJpbGl0aWVzX2FybV9zdmUocGluZm8uYXJjaF9jYXBhYmlsaXRpZXMpOw0KPiArICAgICAg ICBweV9hcm1fc3ZlX3ZsID0gUHlMb25nX0Zyb21VbnNpZ25lZExvbmcoc3ZlX3ZsX2JpdHMpOw0K PiArDQo+ICsgICAgICAgIGlmICggIXB5X2FybV9zdmVfdmwgKQ0KPiArICAgICAgICAgICAgcmV0 dXJuIE5VTEw7DQo+ICsNCj4gKyAgICAgICAgaWYoIFB5RGljdF9TZXRJdGVtU3RyaW5nKG9ianJl dCwgImFybV9zdmVfdmwiLCBweV9hcm1fc3ZlX3ZsKSApDQo+ICsgICAgICAgICAgICByZXR1cm4g TlVMTDsNCj4gKyAgICB9DQo+ICsjZW5kaWYNCj4gKw0KPiArICAgIHJldHVybiBvYmpyZXQ7DQo+ IH0NCj4gDQo+IHN0YXRpYyBQeU9iamVjdCAqcHl4Y19nZXRjcHVpbmZvKFhjT2JqZWN0ICpzZWxm LCBQeU9iamVjdCAqYXJncywgUHlPYmplY3QgKmt3ZHMpDQo+IGRpZmYgLS1naXQgYS90b29scy94 bC94bF9pbmZvLmMgYi90b29scy94bC94bF9pbmZvLmMNCj4gaW5kZXggNzEyYjc2MzhiMDEzLi5k ZGM0MmY5NmI5NzkgMTAwNjQ0DQo+IC0tLSBhL3Rvb2xzL3hsL3hsX2luZm8uYw0KPiArKysgYi90 b29scy94bC94bF9pbmZvLmMNCj4gQEAgLTI3LDYgKzI3LDcgQEANCj4gI2luY2x1ZGUgPGxpYnhs X2pzb24uaD4NCj4gI2luY2x1ZGUgPGxpYnhsX3V0aWxzLmg+DQo+ICNpbmNsdWRlIDxsaWJ4bHV0 aWwuaD4NCj4gKyNpbmNsdWRlIDx4ZW4tdG9vbHMvYXJtLWFyY2gtY2FwYWJpbGl0aWVzLmg+DQo+ IA0KPiAjaW5jbHVkZSAieGwuaCINCj4gI2luY2x1ZGUgInhsX3V0aWxzLmgiDQo+IEBAIC0yMjQs NiArMjI1LDEzIEBAIHN0YXRpYyB2b2lkIG91dHB1dF9waHlzaW5mbyh2b2lkKQ0KPiAgICAgICAg ICBpbmZvLmNhcF9nbnR0YWJfdjIgPyAiIGdudHRhYi12MiIgOiAiIg0KPiAgICAgICAgICk7DQo+ IA0KPiArICAgIC8qIFByaW50IGFybSBTVkUgdmVjdG9yIGxlbmd0aCBvbmx5IG9uIEFSTSBwbGF0 Zm9ybXMgKi8NCj4gKyNpZiBkZWZpbmVkKF9fYWFyY2g2NF9fKQ0KPiArICAgIG1heWJlX3ByaW50 ZigiYXJtX3N2ZV92ZWN0b3JfbGVuZ3RoICA6ICV1XG4iLA0KPiArICAgICAgICAgYXJjaF9jYXBh YmlsaXRpZXNfYXJtX3N2ZShpbmZvLmFyY2hfY2FwYWJpbGl0aWVzKQ0KPiArICAgICAgICApOw0K PiArI2VuZGlmDQo+ICsNCj4gICAgIHZpbmZvID0gbGlieGxfZ2V0X3ZlcnNpb25faW5mbyhjdHgp Ow0KPiAgICAgaWYgKHZpbmZvKSB7DQo+ICAgICAgICAgaSA9ICgxIDw8IDIwKSAvIHZpbmZvLT5w YWdlc2l6ZTsNCj4gLS0gDQo+IDIuMzQuMQ0KPiANCj4gDQoNCg== From xen-devel-bounces@lists.xenproject.org Tue Jun 06 13:44:30 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 06 Jun 2023 13:44:30 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544081.849594 (Exim 4.92) (envelope-from ) id 1q6Wyt-0008BQ-9d; Tue, 06 Jun 2023 13:44:15 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544081.849594; Tue, 06 Jun 2023 13:44:15 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6Wyt-0008BJ-71; Tue, 06 Jun 2023 13:44:15 +0000 Received: by outflank-mailman (input) for mailman id 544081; Tue, 06 Jun 2023 13:44:13 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6Wyr-0008BD-Nw for xen-devel@lists.xenproject.org; Tue, 06 Jun 2023 13:44:13 +0000 Received: from mail-wr1-x42e.google.com (mail-wr1-x42e.google.com [2a00:1450:4864:20::42e]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 37bc6445-0470-11ee-8611-37d641c3527e; Tue, 06 Jun 2023 15:44:11 +0200 (CEST) Received: by mail-wr1-x42e.google.com with SMTP id ffacd0b85a97d-30c5e5226bdso4162425f8f.2 for ; Tue, 06 Jun 2023 06:44:11 -0700 (PDT) Received: from [192.168.69.115] (vbo91-h01-176-184-50-104.dsl.sta.abo.bbox.fr. [176.184.50.104]) by smtp.gmail.com with ESMTPSA id c3-20020a056000104300b003062ad45243sm12679591wrx.14.2023.06.06.06.44.09 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Tue, 06 Jun 2023 06:44:10 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 37bc6445-0470-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1686059051; x=1688651051; h=content-transfer-encoding:in-reply-to:from:references:cc:to :content-language:subject:user-agent:mime-version:date:message-id :from:to:cc:subject:date:message-id:reply-to; bh=SQdFu6b/jDjxN2nQZX5SuNrLlA9gaiWhPjSxV1m/+HA=; b=IO8MoLe/0UvDbXayvbGVlgeFbrvfUN7YbaQqMzIMM+SU6Lmqc7XJAuieGVezh1XSdk qaJ+3nFlFReKBURrS2yJrLWw2EkjVr1RLRPb4NYah6hN84P7wb0etvtq46Xb1mDU9Yi1 Dq3GF7K28UJYuRrEF7aNZClYPbthe/yNxVTjDoMQGSjFP7d3i4H/NE5eKWsV2R/mcVfm OvK3WiaQI4wKPi4h2fJdOy20DaVs/xASIP5f0VhWmkOkY4PD2rUuTGOkC9CiGJ5Pzfz0 C2ZTsWsOQOrAqQ4OxOgawLfh0pRpoK8B6YWHavpMh1h/Tufmj7VEk7tXiyBc5AW0L1xS XNtg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686059051; x=1688651051; h=content-transfer-encoding:in-reply-to:from:references:cc:to :content-language:subject:user-agent:mime-version:date:message-id :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=SQdFu6b/jDjxN2nQZX5SuNrLlA9gaiWhPjSxV1m/+HA=; b=hBC1/ddP0BE1uRWIYc5sBvYU7ybq3KoDZIT6Kd363GR4EKORIPBM1UtkJhj3CfLOwZ zBTBoP49p/BM9m+xGVSrnLefVs/NHyLTVPe/Ni/ZFzrXWZjRCcx2RWFKIxrqCJXFUpIA dUhMCzskK7Kk72XjYlCdcMcA/Ujc9YQSdWsjMxBNpRZwnT+/xVEsrgg+r9m/NPe+UrJZ 6Q1bAhg6u4j4yrg3CPuMYjR+CGldEDf2JLeURqvSr39SK/HB7DHoD2Q4GoKksWgxhi1n 9IrxVKSLHQWGDfb/GbnJ9bt7A5iRD6sL+Zspt9VRyI+eqpTKsgIdbyw4cn9q9u7iMkBX lr5w== X-Gm-Message-State: AC+VfDzgHa+pTUO3fwtAUz0x81WWDeZ6gCPOMW1YYSCOaAusBWP91uXx 5tU6vL6vaKMLco89+2fdcjwxdA== X-Google-Smtp-Source: ACHHUZ4qAsVLyfseV5ayDNQnEpTumF7HiKXBqps/ojJ7uTlHXeJZH0Wi2PkDvs5pa0VH73OscP5Iiw== X-Received: by 2002:a5d:4a92:0:b0:30a:9c8c:161b with SMTP id o18-20020a5d4a92000000b0030a9c8c161bmr1837835wrq.65.1686059050948; Tue, 06 Jun 2023 06:44:10 -0700 (PDT) Message-ID: <0f7dd8c6-afa1-db05-f98c-7c5d35fd590a@linaro.org> Date: Tue, 6 Jun 2023 15:44:08 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.11.2 Subject: Re: [PATCH] xen-block: fix segv on unrealize Content-Language: en-US To: Anthony PERARD , qemu-devel@nongnu.org, qemu-block Cc: Stefan Hajnoczi , Stefano Stabellini , Paul Durrant , xen-devel@lists.xenproject.org, Kevin Wolf References: <20230606131605.55596-1-anthony.perard@citrix.com> From: =?UTF-8?Q?Philippe_Mathieu-Daud=c3=a9?= In-Reply-To: <20230606131605.55596-1-anthony.perard@citrix.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit On 6/6/23 15:16, Anthony PERARD via wrote: > From: Anthony PERARD > > Backtrace: > qemu_lockcnt_lock (lockcnt=0xb4) at ../util/lockcnt.c:238 > aio_set_fd_handler (ctx=0x0, fd=51, is_external=true, io_read=0x0, io_write=0x0, io_poll=0x0, io_poll_ready=0x0, opaque=0x0) at ../util/aio-posix.c:119 > xen_device_unbind_event_channel (xendev=0x55c6da5b5000, channel=0x55c6da6c4c80, errp=0x7fff641ac608) at ../hw/xen/xen-bus.c:926 > xen_block_dataplane_stop (dataplane=0x55c6da6ddbe0) at ../hw/block/dataplane/xen-block.c:719 > xen_block_disconnect (xendev=0x55c6da5b5000, errp=0x0) at ../hw/block/xen-block.c:48 > xen_block_unrealize (xendev=0x55c6da5b5000) at ../hw/block/xen-block.c:154 > xen_device_unrealize (dev=0x55c6da5b5000) at ../hw/xen/xen-bus.c:956 > xen_device_exit (n=0x55c6da5b50d0, data=0x0) at ../hw/xen/xen-bus.c:985 > notifier_list_notify (list=0x55c6d91f9820 , data=0x0) at ../util/notify.c:39 > qemu_run_exit_notifiers () at ../softmmu/runstate.c:760 > > Fixes: f6eac904f682 ("xen-block: implement BlockDevOps->drained_begin()") > Signed-off-by: Anthony PERARD > -- > CC: Stefan Hajnoczi > --- > hw/xen/xen-bus.c | 6 ++++-- > 1 file changed, 4 insertions(+), 2 deletions(-) > > diff --git a/hw/xen/xen-bus.c b/hw/xen/xen-bus.c > index 1e08cf027a..ece8ec40cd 100644 > --- a/hw/xen/xen-bus.c > +++ b/hw/xen/xen-bus.c > @@ -923,8 +923,10 @@ void xen_device_unbind_event_channel(XenDevice *xendev, > > QLIST_REMOVE(channel, list); > > - aio_set_fd_handler(channel->ctx, qemu_xen_evtchn_fd(channel->xeh), > - NULL, NULL, NULL, NULL, NULL); > + if (channel->ctx) { > + aio_set_fd_handler(channel->ctx, qemu_xen_evtchn_fd(channel->xeh), > + NULL, NULL, NULL, NULL, NULL); > + } > > if (qemu_xen_evtchn_unbind(channel->xeh, channel->local_port) < 0) { > error_setg_errno(errp, errno, "xenevtchn_unbind failed"); Reviewed-by: Philippe Mathieu-Daudé From xen-devel-bounces@lists.xenproject.org Tue Jun 06 14:11:14 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 06 Jun 2023 14:11:14 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544087.849605 (Exim 4.92) (envelope-from ) id 1q6XOf-0003EO-G3; Tue, 06 Jun 2023 14:10:53 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544087.849605; Tue, 06 Jun 2023 14:10:53 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6XOf-0003EH-DP; Tue, 06 Jun 2023 14:10:53 +0000 Received: by outflank-mailman (input) for mailman id 544087; Tue, 06 Jun 2023 14:10:53 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6XOe-0003EB-Tu for xen-devel@lists.xenproject.org; Tue, 06 Jun 2023 14:10:52 +0000 Received: from mail-oo1-xc35.google.com (mail-oo1-xc35.google.com [2607:f8b0:4864:20::c35]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id f13cfad7-0473-11ee-b232-6b7b168915f2; Tue, 06 Jun 2023 16:10:51 +0200 (CEST) Received: by mail-oo1-xc35.google.com with SMTP id 006d021491bc7-558b70c715cso885458eaf.2 for ; Tue, 06 Jun 2023 07:10:51 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: f13cfad7-0473-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686060650; x=1688652650; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=TViX6xHrhcipZ2N/daIpqjUHG9frSaIxXBNYbl7z694=; b=l61eo7UrDoqW+squDjZ3SmRRl/dT2Kg31PMtoroXDAxOUYq/rje5oJf4G8AAUL5LCj smy90xkJZ6qiTG+fB2K6pk+yrmnEKJGBalDnwFnkywvxYAIxSTTmR4kQ1qhuhKMuSXAH 6EJIVUTLnmbjsQHL7tHgJzIYMu5H6FyW7mHQrGATblln4g3QqU1bG7h49QBgxbmg3PAE cpqoa3yWD3O3SJJpGTYEkGZUhd34Q75IjTxL+I1nzfngMWnZ/wINZsBYZ7tYE+YYC2CW T2+uyWR0odYbfLDXSImeX0A67z+crRz/FRmF2gGN2dp88H2XFvn5FdtfnTcJIqMRSm3x tb+A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686060650; x=1688652650; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=TViX6xHrhcipZ2N/daIpqjUHG9frSaIxXBNYbl7z694=; b=ZNTxiAjra5MtPdKAK/eMvRVO7FBqufg0VWPJpm+VI3BoJlWw/gJOfhjfzoTkOZQjAO hl5WswhT7mV6CWu2lveqpL+8S9aMCqw0BwpUluTkJwXbuPzicAO/zuBV71nndw5cmMkI 7vu0Cfjjppq4xOtzGU0NPF80+xtG0ZdHi7OUHH7YutsCihrTjwDBKVNy3tGnGu5ucKWa 0SN6Q1YyRrYYwYFo1ZaARLQDkL7MkXbl8PsVWvyNN3M62PizBdYL2N+G1qC/fbrbg5M7 AzFUq4h8SJXrseZo/oI6xhdmmviD/KnMIDCdArJW5UOAQJ/jIAcZD9NJTFNJskVz+GKH HKVQ== X-Gm-Message-State: AC+VfDzJHrIZmQDeycU17ftXdofdiN/lFgdS4wHItLibMGf8cNpm00zx 11F6JXSPwrObPlH8lJ2ckSvbcsbnkcwnJpSi/Kc= X-Google-Smtp-Source: ACHHUZ47m9LBAa9sLajZqWGXzSxIslOwuf6WvHTE6pCZjKYgsSLzasUOUYd5Le4RuySA9edAZquZH/d+VatjdDXUL60= X-Received: by 2002:a05:6808:248:b0:39a:9e83:e712 with SMTP id m8-20020a056808024800b0039a9e83e712mr867232oie.44.1686060650397; Tue, 06 Jun 2023 07:10:50 -0700 (PDT) MIME-Version: 1.0 References: <20230606131605.55596-1-anthony.perard@citrix.com> In-Reply-To: <20230606131605.55596-1-anthony.perard@citrix.com> From: Stefan Hajnoczi Date: Tue, 6 Jun 2023 10:10:38 -0400 Message-ID: Subject: Re: [PATCH] xen-block: fix segv on unrealize To: Anthony PERARD Cc: qemu-devel@nongnu.org, Stefan Hajnoczi , Stefano Stabellini , Paul Durrant , xen-devel@lists.xenproject.org Content-Type: text/plain; charset="UTF-8" Sorry! Reviewed-by: Stefan Hajnoczi From xen-devel-bounces@lists.xenproject.org Tue Jun 06 14:14:27 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 06 Jun 2023 14:14:27 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544092.849615 (Exim 4.92) (envelope-from ) id 1q6XS1-0003no-Vb; Tue, 06 Jun 2023 14:14:21 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544092.849615; Tue, 06 Jun 2023 14:14:21 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6XS1-0003nh-Rv; Tue, 06 Jun 2023 14:14:21 +0000 Received: by outflank-mailman (input) for mailman id 544092; Tue, 06 Jun 2023 14:14:21 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6XS0-0003nb-OK for xen-devel@lists.xenproject.org; Tue, 06 Jun 2023 14:14:21 +0000 Received: from NAM10-DM6-obe.outbound.protection.outlook.com (mail-dm6nam10on2061a.outbound.protection.outlook.com [2a01:111:f400:7e88::61a]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 6b2bd148-0474-11ee-8611-37d641c3527e; Tue, 06 Jun 2023 16:14:16 +0200 (CEST) Received: from BN8PR16CA0002.namprd16.prod.outlook.com (2603:10b6:408:4c::15) by DM6PR12MB4386.namprd12.prod.outlook.com (2603:10b6:5:28f::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Tue, 6 Jun 2023 14:14:12 +0000 Received: from BN8NAM11FT092.eop-nam11.prod.protection.outlook.com (2603:10b6:408:4c:cafe::75) by BN8PR16CA0002.outlook.office365.com (2603:10b6:408:4c::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33 via Frontend Transport; Tue, 6 Jun 2023 14:14:12 +0000 Received: from SATLEXMB03.amd.com (165.204.84.17) by BN8NAM11FT092.mail.protection.outlook.com (10.13.176.180) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6455.33 via Frontend Transport; Tue, 6 Jun 2023 14:14:12 +0000 Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Tue, 6 Jun 2023 09:14:11 -0500 Received: from [192.168.137.15] (10.180.168.240) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server id 15.1.2375.34 via Frontend Transport; Tue, 6 Jun 2023 09:14:09 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 6b2bd148-0474-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Su4qvsz0Vov3h3UhCgQlVC8ibj0+uP9nE7rPodIMYJpHbfBmS6VSsHMOqkhUVorIlHyiqKxDgpy8I0cpQm7vQaHpTYF/UBnf+ZZctxESl2MimAE42o9kYbo4xfj/HrDOLrAsc9aQR2tRbXmrshrPRXWbdH66QCw+N2pYDiPBVncgEeopVbeMx3wX4Rrn0cGeSu4LvSlrpvdD3lSa7C2mDc/tAk/FhiusWLUkamTo9hOHWUhWO5UapFq18CUs8owjVsfr/oUv14A4gd66xRCX3/IR2Bsr0iAhk2TFxlDF3MnIGikcL0JjM3YsCLIf1KDVYYqUW6fhTNUAwDobWJGNzg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=TCKehh3+He4fHifYne+4pjQWmcv0PpElUQM8G7cNuoo=; b=DBqlWNvZVTVPgD29J2pgQpHAYpfhpDdWMe6vQT06NSIiKkzMpDaQ0yLR9VQSefAfLKF90WwTPKjkdssxC8n8RxpTiGlZslHzS4vPnb6/29z58UeIQw8l4zRGjYv66uVysxZmFip8pF5SBgsR6JfhpNOpTrTSADV0VDoi5oR0X6oV2yam8hYeB3OT8cv/DrVqoCZk/Bj4CDlkV1X4xJIuz7HHYDRSpE7yX6Ynvo3AtJ1aLeJ4VlOzaS1T6H3p139Z4k3RsZrxyeuebnx9XZeEwGb7nJKPHNn2O5gqF5mjaRdTeax/C7JtOcB3KcfSOzECQ4EogmIICohGJ1yFU4mvUw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=TCKehh3+He4fHifYne+4pjQWmcv0PpElUQM8G7cNuoo=; b=ojioXGU6HwpX9STAQLKQ6w++4tfLKWRagcA+Y+O/Bb/qZWh0BqvJN4rwoGnEVLwKuV6JFzUH7lsxed/R/xcMIsPaPUyyGGdnV1bJyqpEU3E5DrXnyDzWR385U0ZzRzWNzD9zsMaWC/qTePMlMDUTn6vhW3K+S8Ge3pwTj82b+FE= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C Message-ID: Date: Tue, 6 Jun 2023 10:14:09 -0400 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH v3 3/6] iommu/arm: Introduce iommu_add_dt_pci_sideband_ids API Content-Language: en-US To: Michal Orzel , CC: Oleksandr Tyshchenko , Stefano Stabellini , Julien Grall , Jan Beulich , Paul Durrant , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Rahul Singh , Bertrand Marquis References: <20230518210658.66156-1-stewart.hildebrand@amd.com> <20230518210658.66156-4-stewart.hildebrand@amd.com> <0b842e78-a206-7434-f7a9-d8021dd66731@amd.com> From: Stewart Hildebrand In-Reply-To: <0b842e78-a206-7434-f7a9-d8021dd66731@amd.com> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BN8NAM11FT092:EE_|DM6PR12MB4386:EE_ X-MS-Office365-Filtering-Correlation-Id: 143fdfa2-2e2d-4450-7cf3-08db66984d52 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: /YzcOPevgTkzzpaeM39oLWGF1PVCUBzq0ARqBpo3p+qYotDb1rdMDqV0iTnT2696JulbLISDOhmumwX6HWapTRwM8H3Tx5K27yLvQiRJUVrB3d/QAtyB5PfMP8NZajl0UsH2BQCyBUr7aITBrhweRZB/lJd375t/s1bfF5orn9rYxCNhf1NZV+L5I0xNpVGWCh95Yx3pk2r0Gf5o3fFTyDGC7X8j6tId6vHscY5dgUE0DTsxyBkX+DTPM0AeqpdYMtLfUWxgwA1aTbSBCSe/T8adtKMv/kahZddvKtOcyouw/ySyDOsi0GSMgHNzxXI/rt1QIEljlHQ6IlVMZ67/zxBJUoZsPhlXEDEnXAo9k0WZR/YN4Xgatr+Cb3sEnEwewYQL5NJczMKrm3dp7LbIsEn1kNFb5B5UXIgeKEEaFhAFGkT5aV6gv4V88jxjgt+8ro31BpkZ9kODd3BvEZ/qmzy07XjaWuuBgC3oEf/TTTedPKXfti6LzNeyxgwe7zHDHrzOoTSZ/LA8FAqImwDNsj22QsW+BFU1eqdUseJnLI+CozKy78BbmhMwtQAsFA4s4LHpObjpVXwSvYSIW6i0qGO7dUqopQVSrSeGKXt8ICLFAjEBuFQCv7tl0ySOpkG9dMpFHqjLX40QbbBLU1WlHH+Qo2UoHmzEHQ/5sr8iP1eLy2AUoHf7g81WtRBMPj+0vz6rtA1KSP6mW4zCUVhsT1x8DPtByVfLW5OiCFxZCO5Rw+CM9Q2Flxg+MQNz7u+B08P4F8ZVrHaam3QzvD/cxa/AZaz4A79Ya5DF2qxVnQ8cetgWqrZm7PZs0zrmZLJv X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(346002)(136003)(396003)(39860400002)(376002)(451199021)(36840700001)(40470700004)(46966006)(40460700003)(966005)(83380400001)(36860700001)(336012)(186003)(36756003)(2616005)(426003)(86362001)(82310400005)(81166007)(356005)(31696002)(47076005)(82740400003)(26005)(53546011)(40480700001)(316002)(54906003)(110136005)(16576012)(70586007)(70206006)(8676002)(4326008)(8936002)(5660300002)(31686004)(44832011)(30864003)(41300700001)(2906002)(478600001)(21314003)(36900700001)(43740500002);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Jun 2023 14:14:12.0902 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 143fdfa2-2e2d-4450-7cf3-08db66984d52 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com] X-MS-Exchange-CrossTenant-AuthSource: BN8NAM11FT092.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR12MB4386 On 5/24/23 03:49, Michal Orzel wrote: > Hi Stewart, > > On 18/05/2023 23:06, Stewart Hildebrand wrote: >> >> >> From: Oleksandr Tyshchenko >> >> The main purpose of this patch is to add a way to register PCI device >> (which is behind the IOMMU) using the generic PCI-IOMMU DT bindings [1] >> before assigning that device to a domain. >> >> This behaves in almost the same way as existing iommu_add_dt_device API, >> the difference is in devices to handle and DT bindings to use. >> >> The function of_map_id to translate an ID through a downstream mapping >> (which is also suitable for mapping Requester ID) was borrowed from Linux >> (v5.10-rc6) and updated according to the Xen code base. >> >> XXX: I don't port pci_for_each_dma_alias from Linux which is a part >> of PCI-IOMMU bindings infrastucture as I don't have a good understanding >> for how it is expected to work in Xen environment. >> Also it is not completely clear whether we need to distinguish between >> different PCI types here (DEV_TYPE_PCI, DEV_TYPE_PCI_HOST_BRIDGE, etc). >> For example, how we should behave here if the host bridge doesn't have >> a stream ID (so not described in iommu-map property) just simple >> fail or bypasses translation? >> >> [1] https://www.kernel.org/doc/Documentation/devicetree/bindings/pci/pci-iommu.txt >> >> Signed-off-by: Oleksandr Tyshchenko >> Signed-off-by: Stewart Hildebrand >> --- >> v2->v3: >> * new patch title (was: iommu/arm: Introduce iommu_add_dt_pci_device API) >> * renamed function >> from: iommu_add_dt_pci_device >> to: iommu_add_dt_pci_sideband_ids >> * removed stale ops->add_device check >> * iommu.h: add empty stub iommu_add_dt_pci_sideband_ids for !HAS_DEVICE_TREE >> * iommu.h: add iommu_add_pci_sideband_ids helper >> * iommu.h: don't wrap prototype in #ifdef CONFIG_HAS_PCI >> * s/iommu_fwspec_free(pci_to_dev(pdev))/iommu_fwspec_free(dev)/ >> >> v1->v2: >> * remove extra devfn parameter since pdev fully describes the device >> * remove ops->add_device() call from iommu_add_dt_pci_device(). Instead, rely on >> the existing iommu call in iommu_add_device(). >> * move the ops->add_device and ops->dt_xlate checks earlier >> >> downstream->v1: >> * rebase >> * add const qualifier to struct dt_device_node *np arg in dt_map_id() >> * add const qualifier to struct dt_device_node *np declaration in iommu_add_pci_device() >> * use stdint.h types instead of u8/u32/etc... >> * rename functions: >> s/dt_iommu_xlate/iommu_dt_xlate/ >> s/dt_map_id/iommu_dt_pci_map_id/ >> s/iommu_add_pci_device/iommu_add_dt_pci_device/ >> * add device_is_protected check in iommu_add_dt_pci_device >> * wrap prototypes in CONFIG_HAS_PCI >> >> (cherry picked from commit 734e3bf6ee77e7947667ab8fa96c25b349c2e1da from >> the downstream branch poc/pci-passthrough from >> https://gitlab.com/xen-project/people/bmarquis/xen-arm-poc.git) >> --- >> xen/drivers/passthrough/device_tree.c | 140 ++++++++++++++++++++++++++ >> xen/include/xen/device_tree.h | 25 +++++ >> xen/include/xen/iommu.h | 17 +++- >> 3 files changed, 181 insertions(+), 1 deletion(-) >> >> diff --git a/xen/drivers/passthrough/device_tree.c b/xen/drivers/passthrough/device_tree.c >> index 1b50f4670944..d568166e19ec 100644 >> --- a/xen/drivers/passthrough/device_tree.c >> +++ b/xen/drivers/passthrough/device_tree.c >> @@ -151,6 +151,146 @@ static int iommu_dt_xlate(struct device *dev, >> return ops->dt_xlate(dev, iommu_spec); >> } >> >> +#ifdef CONFIG_HAS_PCI >> +int iommu_dt_pci_map_id(const struct dt_device_node *np, uint32_t id, >> + const char *map_name, const char *map_mask_name, >> + struct dt_device_node **target, uint32_t *id_out) >> +{ >> + uint32_t map_mask, masked_id, map_len; >> + const __be32 *map = NULL; >> + >> + if ( !np || !map_name || (!target && !id_out) ) >> + return -EINVAL; >> + >> + map = dt_get_property(np, map_name, &map_len); >> + if ( !map ) >> + { >> + if ( target ) >> + return -ENODEV; > empty line here OK >> + /* Otherwise, no map implies no translation */ >> + *id_out = id; >> + return 0; >> + } >> + >> + if ( !map_len || map_len % (4 * sizeof(*map)) ) > could you enclose the second expression in parantheses? Yes >> + { >> + printk(XENLOG_ERR "%pOF: Error: Bad %s length: %d\n", np, > %pOF is a Linux special printk format to print full name of the node. > We do not have this in Xen (see printk-formats.txt). If you want to achieve the same, use np->full_name. > This applies to all the uses below. OK > Also, use %u for map_len as it is unsigned. OK >> + map_name, map_len); > incorrect alignment OK >> + return -EINVAL; >> + } >> + >> + /* The default is to select all bits. */ >> + map_mask = 0xffffffff; >> + >> + /* >> + * Can be overridden by "{iommu,msi}-map-mask" property. >> + * If of_property_read_u32() fails, the default is used. > s/of_property_read_u32/dt_property_read_u32 OK >> + */ >> + if ( map_mask_name ) >> + dt_property_read_u32(np, map_mask_name, &map_mask); >> + >> + masked_id = map_mask & id; >> + for ( ; (int)map_len > 0; map_len -= 4 * sizeof(*map), map += 4 ) >> + { >> + struct dt_device_node *phandle_node; >> + uint32_t id_base = be32_to_cpup(map + 0); >> + uint32_t phandle = be32_to_cpup(map + 1); >> + uint32_t out_base = be32_to_cpup(map + 2); >> + uint32_t id_len = be32_to_cpup(map + 3); >> + >> + if ( id_base & ~map_mask ) >> + { >> + printk(XENLOG_ERR "%pOF: Invalid %s translation - %s-mask (0x%x) ignores id-base (0x%x)\n", > we tend to use PRIx32 to print uint32_t values. OK >> + np, map_name, map_name, map_mask, id_base); >> + return -EFAULT; >> + } >> + >> + if ( masked_id < id_base || masked_id >= id_base + id_len ) > could you enclose the expressions in parantheses? Yes, I will follow MISRA C:2012 Rule 12.1 >> + continue; >> + >> + phandle_node = dt_find_node_by_phandle(phandle); >> + if ( !phandle_node ) >> + return -ENODEV; >> + >> + if ( target ) >> + { >> + if ( !*target ) >> + *target = phandle_node; >> + >> + if ( *target != phandle_node ) >> + continue; >> + } >> + >> + if ( id_out ) >> + *id_out = masked_id - id_base + out_base; >> + >> + printk(XENLOG_DEBUG "%pOF: %s, using mask %08x, id-base: %08x, out-base: %08x, length: %08x, id: %08x -> %08x\n", > %08"PRIx32" OK >> + np, map_name, map_mask, id_base, out_base, id_len, id, >> + masked_id - id_base + out_base); >> + return 0; >> + } >> + >> + printk(XENLOG_ERR "%pOF: no %s translation for id 0x%x on %pOF\n", >> + np, map_name, id, target && *target ? *target : NULL); >> + >> + /* >> + * NOTE: Linux bypasses translation without returning an error here, >> + * but should we behave in the same way on Xen? Restrict for now. >> + */ >> + return -EFAULT; >> +} >> + >> +int iommu_add_dt_pci_sideband_ids(struct pci_dev *pdev) >> +{ >> + const struct iommu_ops *ops = iommu_get_ops(); >> + struct dt_phandle_args iommu_spec = { .args_count = 1 }; >> + struct device *dev = pci_to_dev(pdev); >> + const struct dt_device_node *np; >> + int rc = NO_IOMMU; >> + >> + if ( !iommu_enabled ) >> + return NO_IOMMU; >> + >> + if ( !ops ) >> + return -EINVAL; >> + >> + if ( device_is_protected(dev) ) >> + return 0; >> + >> + if ( dev_iommu_fwspec_get(dev) ) >> + return -EEXIST; >> + >> + np = pci_find_host_bridge_node(pdev); >> + if ( !np ) >> + return -ENODEV; >> + >> + /* >> + * The driver which supports generic PCI-IOMMU DT bindings must have >> + * these callback implemented. >> + */ >> + if ( !ops->dt_xlate ) >> + return -EINVAL; > See my comment in previous patch. This could be moved to iommu_dt_xlate(). OK >> + >> + /* >> + * According to the Documentation/devicetree/bindings/pci/pci-iommu.txt >> + * from Linux. >> + */ >> + rc = iommu_dt_pci_map_id(np, PCI_BDF(pdev->bus, pdev->devfn), "iommu-map", >> + "iommu-map-mask", &iommu_spec.np, iommu_spec.args); >> + if ( rc ) >> + return rc == -ENODEV ? NO_IOMMU : rc; >> + >> + rc = iommu_dt_xlate(dev, &iommu_spec); >> + if ( rc < 0 ) >> + { >> + iommu_fwspec_free(dev); >> + return -EINVAL; >> + } >> + >> + return rc; >> +} >> +#endif /* CONFIG_HAS_PCI */ >> + >> int iommu_add_dt_device(struct dt_device_node *np) >> { >> const struct iommu_ops *ops = iommu_get_ops(); >> diff --git a/xen/include/xen/device_tree.h b/xen/include/xen/device_tree.h >> index c1e4751a581f..dc40fdfb9231 100644 >> --- a/xen/include/xen/device_tree.h >> +++ b/xen/include/xen/device_tree.h >> @@ -852,6 +852,31 @@ int dt_count_phandle_with_args(const struct dt_device_node *np, >> */ >> int dt_get_pci_domain_nr(struct dt_device_node *node); >> >> +#ifdef CONFIG_HAS_PCI >> +/** >> + * iommu_dt_pci_map_id - Translate an ID through a downstream mapping. >> + * @np: root complex device node. >> + * @id: device ID to map. >> + * @map_name: property name of the map to use. >> + * @map_mask_name: optional property name of the mask to use. >> + * @target: optional pointer to a target device node. >> + * @id_out: optional pointer to receive the translated ID. >> + * >> + * Given a device ID, look up the appropriate implementation-defined >> + * platform ID and/or the target device which receives transactions on that >> + * ID, as per the "iommu-map" and "msi-map" bindings. Either of @target or >> + * @id_out may be NULL if only the other is required. If @target points to >> + * a non-NULL device node pointer, only entries targeting that node will be >> + * matched; if it points to a NULL value, it will receive the device node of >> + * the first matching target phandle, with a reference held. >> + * >> + * Return: 0 on success or a standard error code on failure. >> + */ >> +int iommu_dt_pci_map_id(const struct dt_device_node *np, uint32_t id, >> + const char *map_name, const char *map_mask_name, >> + struct dt_device_node **target, uint32_t *id_out); > Why is the iommu function prototype in device_tree.h and not in iommu.h where all rest of the iommu > dt related prototypes are placed? The function was borrowed from Linux's of_map_id, and it can be used to parse both "iommu-map" and "msi-map" properties. So it is not necessarily iommu specific. I'm considering renaming it back to dt_map_id in v4. > Furthermore, do you need to expose globally this function? > Looking at this series it could be static as it is only used by iommu_add_dt_pci_sideband_ids(). > Will there be any use of it later on? Not in this series, but in the future MSI series it will be used with the "msi-map" binding. See [1] [1] https://gitlab.com/xen-project/people/bmarquis/xen-arm-poc/-/commit/a8af686c327c2f2bdde321027abfda0b9ba4469c#15fe36652149e3439a60b50d9672982ca3de755e_290_301 From xen-devel-bounces@lists.xenproject.org Tue Jun 06 14:51:14 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 06 Jun 2023 14:51:14 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544097.849625 (Exim 4.92) (envelope-from ) id 1q6Y1Q-00085e-R1; Tue, 06 Jun 2023 14:50:56 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544097.849625; Tue, 06 Jun 2023 14:50:56 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6Y1Q-00085X-Nc; Tue, 06 Jun 2023 14:50:56 +0000 Received: by outflank-mailman (input) for mailman id 544097; Tue, 06 Jun 2023 14:50:55 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6Y1P-00085N-3y; Tue, 06 Jun 2023 14:50:55 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6Y1O-00066B-Ne; Tue, 06 Jun 2023 14:50:54 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6Y1O-0000Wc-8y; Tue, 06 Jun 2023 14:50:54 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q6Y1O-0007Xj-6V; Tue, 06 Jun 2023 14:50:54 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=NXCGOw4gvsfEYDxpWIEYdNoNAorCfHlKuhAtp5TfDYE=; b=XvQJ6mwL9IPnc0PbHki89eqYXj pVjCTaGV3s8SRbNYHsfQMsn/Du51VKe26fXOQk3woGmxFEHk/wr8A30M95iqCcJcufBta0I3LNLMB UqvVZztHQBJQdRKup8dFOAhy+dJS20nN26mo3ktW2Vf5HUl8F03H1+NVhcH66vLJHgHI=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [libvirt test] 181205: tolerable all pass - PUSHED X-Osstest-Failures: libvirt:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking libvirt:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking libvirt:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking libvirt:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking libvirt:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking libvirt:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking libvirt:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt:saverestore-support-check:fail:nonblocking libvirt:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking libvirt:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking libvirt:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking libvirt:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-qcow2:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-qcow2:saverestore-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking libvirt:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking libvirt:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking libvirt:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking X-Osstest-Versions-This: libvirt=1b8c1ce704788c08a764183aca74f3043d7733e4 X-Osstest-Versions-That: libvirt=f26923fb2e49d544ef937cd34e6b0807fed9eb96 From: osstest service owner Date: Tue, 06 Jun 2023 14:50:54 +0000 flight 181205 libvirt real [real] http://logs.test-lab.xenproject.org/osstest/logs/181205/ Failures :-/ but no regressions. Tests which did not succeed, but are not blocking: test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail like 181133 test-armhf-armhf-libvirt 16 saverestore-support-check fail like 181133 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail like 181133 test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-i386-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-i386-libvirt 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt 15 migrate-support-check fail never pass test-arm64-arm64-libvirt 16 saverestore-support-check fail never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-i386-libvirt-raw 14 migrate-support-check fail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-qcow2 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-qcow2 15 saverestore-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail never pass test-armhf-armhf-libvirt 15 migrate-support-check fail never pass test-armhf-armhf-libvirt-raw 14 migrate-support-check fail never pass version targeted for testing: libvirt 1b8c1ce704788c08a764183aca74f3043d7733e4 baseline version: libvirt f26923fb2e49d544ef937cd34e6b0807fed9eb96 Last test of basis 181133 2023-06-03 04:21:04 Z 3 days Testing same since 181205 2023-06-06 04:18:52 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Daniel P. Berrangé Erik Skultety Michal Privoznik Oleg Vasilev Peter Krempa jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-i386-libvirt-xsm pass test-amd64-amd64-libvirt pass test-arm64-arm64-libvirt pass test-armhf-armhf-libvirt pass test-amd64-i386-libvirt pass test-amd64-amd64-libvirt-pair pass test-amd64-i386-libvirt-pair pass test-arm64-arm64-libvirt-qcow2 pass test-armhf-armhf-libvirt-qcow2 pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw pass test-amd64-i386-libvirt-raw pass test-amd64-amd64-libvirt-vhd pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Pushing revision : To xenbits.xen.org:/home/xen/git/libvirt.git f26923fb2e..1b8c1ce704 1b8c1ce704788c08a764183aca74f3043d7733e4 -> xen-tested-master From xen-devel-bounces@lists.xenproject.org Tue Jun 06 15:36:34 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 06 Jun 2023 15:36:34 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544105.849635 (Exim 4.92) (envelope-from ) id 1q6YjN-0004Fs-6I; Tue, 06 Jun 2023 15:36:21 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544105.849635; Tue, 06 Jun 2023 15:36:21 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6YjN-0004Fl-2S; Tue, 06 Jun 2023 15:36:21 +0000 Received: by outflank-mailman (input) for mailman id 544105; Tue, 06 Jun 2023 15:36:19 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6YjL-0004Fb-Bz; Tue, 06 Jun 2023 15:36:19 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6YjL-00073L-4I; Tue, 06 Jun 2023 15:36:19 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6YjK-0003LL-Jk; Tue, 06 Jun 2023 15:36:18 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q6YjK-0005W6-JG; Tue, 06 Jun 2023 15:36:18 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=AN+0OIam/Ia+pLbXZWKTWo+RstJ4oc0ysO70NGZdsa0=; b=MQmHqpm7xoFFA7tdoqJW69DNp0 zYq3hI8lls1Ksrzd4DVKBrBYryf1HCtwQVXsHQYHkaw9xH2NAzkzDvy8RmdggCS3UxkZRAHmykPFS tdAhfoPvqbbri9fFHTmvJ8heF5FZevXkfn2jdHGBGFxHWQ1pWzxz+mGk7mX6Y4fZXry0=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [linux-linus test] 181204: regressions - FAIL X-Osstest-Failures: linux-linus:test-armhf-armhf-xl-credit1:xen-boot:fail:regression linux-linus:test-armhf-armhf-examine:reboot:fail:nonblocking linux-linus:test-armhf-armhf-xl-multivcpu:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-arndale:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking linux-linus:test-armhf-armhf-xl-credit2:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking linux-linus:test-armhf-armhf-libvirt:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-raw:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-qcow2:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-vhd:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-rtds:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-qcow2:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-raw:migrate-support-check:fail:nonblocking X-Osstest-Versions-This: linux=f8dba31b0a826e691949cd4fdfa5c30defaac8c5 X-Osstest-Versions-That: linux=6c538e1adbfc696ac4747fb10d63e704344f763d From: osstest service owner Date: Tue, 06 Jun 2023 15:36:18 +0000 flight 181204 linux-linus real [real] flight 181216 linux-linus real-retest [real] http://logs.test-lab.xenproject.org/osstest/logs/181204/ http://logs.test-lab.xenproject.org/osstest/logs/181216/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: test-armhf-armhf-xl-credit1 8 xen-boot fail REGR. vs. 180278 Tests which did not succeed, but are not blocking: test-armhf-armhf-examine 8 reboot fail like 180278 test-armhf-armhf-xl-multivcpu 8 xen-boot fail like 180278 test-armhf-armhf-xl-arndale 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 180278 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 180278 test-armhf-armhf-xl-credit2 8 xen-boot fail like 180278 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 180278 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 180278 test-armhf-armhf-libvirt 8 xen-boot fail like 180278 test-armhf-armhf-libvirt-raw 8 xen-boot fail like 180278 test-armhf-armhf-libvirt-qcow2 8 xen-boot fail like 180278 test-armhf-armhf-xl 8 xen-boot fail like 180278 test-armhf-armhf-xl-vhd 8 xen-boot fail like 180278 test-armhf-armhf-xl-rtds 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 180278 test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qcow2 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass test-amd64-amd64-libvirt-raw 14 migrate-support-check fail never pass version targeted for testing: linux f8dba31b0a826e691949cd4fdfa5c30defaac8c5 baseline version: linux 6c538e1adbfc696ac4747fb10d63e704344f763d Last test of basis 180278 2023-04-16 19:41:46 Z 50 days Failing since 180281 2023-04-17 06:24:36 Z 50 days 95 attempts Testing same since 181204 2023-06-06 04:10:01 Z 0 days 1 attempts ------------------------------------------------------------ 2628 people touched revisions under test, not listing them all jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl fail test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-freebsd11-amd64 pass test-amd64-amd64-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale fail test-amd64-amd64-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 fail test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 fail test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine fail test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt fail test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu fail test-amd64-amd64-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-amd64-pygrub pass test-amd64-amd64-libvirt-qcow2 pass test-armhf-armhf-libvirt-qcow2 fail test-amd64-amd64-libvirt-raw pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw fail test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds fail test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-amd64-xl-vhd pass test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd fail ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 332347 lines long.) From xen-devel-bounces@lists.xenproject.org Tue Jun 06 15:43:23 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 06 Jun 2023 15:43:23 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544112.849645 (Exim 4.92) (envelope-from ) id 1q6Yq0-0005iC-Sz; Tue, 06 Jun 2023 15:43:12 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544112.849645; Tue, 06 Jun 2023 15:43:12 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6Yq0-0005i5-QK; Tue, 06 Jun 2023 15:43:12 +0000 Received: by outflank-mailman (input) for mailman id 544112; Tue, 06 Jun 2023 15:43:11 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6Ypz-0005hv-8v; Tue, 06 Jun 2023 15:43:11 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6Ypy-0007Ks-Vh; Tue, 06 Jun 2023 15:43:10 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6Ypy-0003nG-Ka; Tue, 06 Jun 2023 15:43:10 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q6Ypy-0006Sl-Js; Tue, 06 Jun 2023 15:43:10 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=l0hSMazes7cAPvCAggqaNOeG0l4Dnong16f9GR7VAII=; b=NiBqalFXl02kRFIdCdSp2aU4PP 70ETn3sNegvaNU4h4FXjWeD7sUrfSjj2DWRf2fA0Gd/YmbU5fmiGED+z5vod53iTh1F0CvBgNeCWz Q/YJ7T8eq+aF1f8fVm6MhHdeoI5ryNOvZQxDM8XPjPlWH5ZV1yeXdySeMjARP+l4nZbE=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [ovmf test] 181213: all pass - PUSHED X-Osstest-Versions-This: ovmf=4bd0849d81b48233196092868081315ec4d9233d X-Osstest-Versions-That: ovmf=c1dd400a13d1a5e862809c55f6760ba3a944a609 From: osstest service owner Date: Tue, 06 Jun 2023 15:43:10 +0000 flight 181213 ovmf real [real] http://logs.test-lab.xenproject.org/osstest/logs/181213/ Perfect :-) All tests in this flight passed as required version targeted for testing: ovmf 4bd0849d81b48233196092868081315ec4d9233d baseline version: ovmf c1dd400a13d1a5e862809c55f6760ba3a944a609 Last test of basis 181127 2023-06-03 00:10:43 Z 3 days Testing same since 181213 2023-06-06 11:11:37 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Corvin Köhne Gerd Hoffmann Peter Grehan jobs: build-amd64-xsm pass build-i386-xsm pass build-amd64 pass build-i386 pass build-amd64-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-i386-pvops pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Pushing revision : To xenbits.xen.org:/home/xen/git/osstest/ovmf.git c1dd400a13..4bd0849d81 4bd0849d81b48233196092868081315ec4d9233d -> xen-tested-master From xen-devel-bounces@lists.xenproject.org Tue Jun 06 17:01:54 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 06 Jun 2023 17:01:54 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544121.849661 (Exim 4.92) (envelope-from ) id 1q6a3x-00066j-Kb; Tue, 06 Jun 2023 17:01:41 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544121.849661; Tue, 06 Jun 2023 17:01:41 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6a3x-00066c-HD; Tue, 06 Jun 2023 17:01:41 +0000 Received: by outflank-mailman (input) for mailman id 544121; Tue, 06 Jun 2023 17:01:40 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6a3v-00066W-ER for xen-devel@lists.xenproject.org; Tue, 06 Jun 2023 17:01:39 +0000 Received: from out4-smtp.messagingengine.com (out4-smtp.messagingengine.com [66.111.4.28]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id ca44bc8b-048b-11ee-8611-37d641c3527e; Tue, 06 Jun 2023 19:01:35 +0200 (CEST) Received: from compute3.internal (compute3.nyi.internal [10.202.2.43]) by mailout.nyi.internal (Postfix) with ESMTP id 19C075C012D; Tue, 6 Jun 2023 13:01:33 -0400 (EDT) Received: from mailfrontend1 ([10.202.2.162]) by compute3.internal (MEProxy); Tue, 06 Jun 2023 13:01:33 -0400 Received: by mail.messagingengine.com (Postfix) with ESMTPA; Tue, 6 Jun 2023 13:01:31 -0400 (EDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: ca44bc8b-048b-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= invisiblethingslab.com; h=cc:cc:content-type:content-type:date :date:from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:sender:subject:subject:to:to; s=fm1; t= 1686070893; x=1686157293; bh=l2EzN6E/qocsYv3o8wJqF7HDny4dm9MwaMQ 5WBtXj4Q=; b=ZADMKl3MnlVwGXHqpt8eGbGaF8puWI4iVmYboN61PHb5av+UeP/ Mwcs8RsetL/Ia1TD3XjbeOVyX1XtQDmaenLSZv1k7n7V1YkeHHiC8e1SJJDsF1uw z+iMJ25KJxfOkmKN30YtM/UuLgeI859JUNhHCWvTsG+ZrTje3ObKDlToP1VaiGLn JIKypbEJ+w1d+sAz60ZP170xoGwtqPgI6yIr4K1GTGftVa6dqC6OTRPaU5vqYjYQ a1AZG7vWO16iD8L9QQvURJuLbkqLyi60yG+ghLCzdYIQN3F5Tcn00OVxO8NogdOd SzYbivZrzph0bf4589ArZksnRFEFjVbf/Lg== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-type:content-type:date:date :feedback-id:feedback-id:from:from:in-reply-to:in-reply-to :message-id:mime-version:references:reply-to:sender:subject :subject:to:to:x-me-proxy:x-me-proxy:x-me-sender:x-me-sender :x-sasl-enc; s=fm1; t=1686070893; x=1686157293; bh=l2EzN6E/qocsY v3o8wJqF7HDny4dm9MwaMQ5WBtXj4Q=; b=eiiOaOKtqq5GhqSypOjJmRkmI4fKP Z09ALho2siegC6nBwRb6eOJeFL+U1zmRVQj3ABZ0jn41SZ5R4XVv4XruydlJ/2gx fHOpVgzqtkEd7kk+nLRbTsbSzLbZpbi/vWof52KNRn7+OvPI8OWOtwJI7dvjoPG/ pzj/Dn4SWtBsnVvUA26m26Eya9slFNCIHumJBzOlkzuna3OlAnYQ5PAc4t7BcjWj lFzcnWHMWvQ5OOXhVvpgiS0iv7jTFCczZPIUuLm7yIANApgwu96x+HX+d3+zieqy Rl9v0VEvKT1RyayBe9p4m9RIMs6igKPUBNQUY6sMYlBD+UTEA9JcX/6Zg== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvhedrgedtuddguddtlecutefuodetggdotefrod ftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfgh necuuegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmd enucfjughrpeffhffvvefukfhfgggtuggjsehgtderredttdejnecuhfhrohhmpeffvghm ihcuofgrrhhivgcuqfgsvghnohhurhcuoeguvghmihesihhnvhhishhisghlvghthhhinh hgshhlrggsrdgtohhmqeenucggtffrrghtthgvrhhnpedvjeetgeekhfetudfhgfetffeg fffguddvgffhffeifeeikeektdehgeetheffleenucevlhhushhtvghrufhiiigvpedtne curfgrrhgrmhepmhgrihhlfhhrohhmpeguvghmihesihhnvhhishhisghlvghthhhinhhg shhlrggsrdgtohhm X-ME-Proxy: Feedback-ID: iac594737:Fastmail Date: Tue, 6 Jun 2023 13:01:20 -0400 From: Demi Marie Obenour To: Roger Pau =?utf-8?B?TW9ubsOp?= Cc: Jens Axboe , Alasdair Kergon , Mike Snitzer , dm-devel@redhat.com, Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= , linux-block@vger.kernel.org, linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org Subject: Re: [PATCH v2 13/16] xen-blkback: Implement diskseq checks Message-ID: References: <20230530203116.2008-1-demi@invisiblethingslab.com> <20230530203116.2008-14-demi@invisiblethingslab.com> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha512; protocol="application/pgp-signature"; boundary="gvaHE6UC2pWo4unn" Content-Disposition: inline In-Reply-To: --gvaHE6UC2pWo4unn Content-Type: text/plain; protected-headers=v1; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Date: Tue, 6 Jun 2023 13:01:20 -0400 From: Demi Marie Obenour To: Roger Pau =?utf-8?B?TW9ubsOp?= Cc: Jens Axboe , Alasdair Kergon , Mike Snitzer , dm-devel@redhat.com, Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= , linux-block@vger.kernel.org, linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org Subject: Re: [PATCH v2 13/16] xen-blkback: Implement diskseq checks On Tue, Jun 06, 2023 at 10:25:47AM +0200, Roger Pau Monn=C3=A9 wrote: > On Tue, May 30, 2023 at 04:31:13PM -0400, Demi Marie Obenour wrote: > > This allows specifying a disk sequence number in XenStore. If it does > > not match the disk sequence number of the underlying device, the device > > will not be exported and a warning will be logged. Userspace can use > > this to eliminate race conditions due to major/minor number reuse. > > Old kernels do not support the new syntax, but a later patch will allow > > userspace to discover that the new syntax is supported. > >=20 > > Signed-off-by: Demi Marie Obenour > > --- > > drivers/block/xen-blkback/xenbus.c | 112 +++++++++++++++++++++++------ > > 1 file changed, 89 insertions(+), 23 deletions(-) > >=20 > > diff --git a/drivers/block/xen-blkback/xenbus.c b/drivers/block/xen-blk= back/xenbus.c > > index 4807af1d58059394d7a992335dabaf2bc3901721..9c3eb148fbd802c74e626c3= d7bcd69dcb09bd921 100644 > > --- a/drivers/block/xen-blkback/xenbus.c > > +++ b/drivers/block/xen-blkback/xenbus.c > > @@ -24,6 +24,7 @@ struct backend_info { > > struct xenbus_watch backend_watch; > > unsigned major; > > unsigned minor; > > + unsigned long long diskseq; >=20 > Since diskseq is declared as u64 in gendisk, better use the same type > here too? simple_strtoull() returns an unsigned long long, and C permits unsigned long long to be larger than 64 bits. > > char *mode; > > }; > > =20 > > @@ -479,7 +480,7 @@ static void xen_vbd_free(struct xen_vbd *vbd) > > =20 > > static int xen_vbd_create(struct xen_blkif *blkif, blkif_vdev_t handle, > > unsigned major, unsigned minor, int readonly, > > - int cdrom) > > + bool cdrom, u64 diskseq) > > { > > struct xen_vbd *vbd; > > struct block_device *bdev; > > @@ -507,6 +508,26 @@ static int xen_vbd_create(struct xen_blkif *blkif,= blkif_vdev_t handle, > > xen_vbd_free(vbd); > > return -ENOENT; > > } > > + > > + if (diskseq) { > > + struct gendisk *disk =3D bdev->bd_disk; >=20 > const. >=20 > > + > > + if (unlikely(disk =3D=3D NULL)) { > > + pr_err("%s: device %08x has no gendisk\n", > > + __func__, vbd->pdevice); > > + xen_vbd_free(vbd); > > + return -EFAULT; >=20 > ENODEV or ENOENT might be more accurate IMO. I will drop it, as this turns out to be unreachable code. > > + } > > + > > + if (unlikely(disk->diskseq !=3D diskseq)) { > > + pr_warn("%s: device %08x has incorrect sequence " > > + "number 0x%llx (expected 0x%llx)\n", >=20 > I prefer %#llx, and likely pr_err like above. Also I think it's now > preferred to not split printed lines, so that `grep "has incorrect > sequence number" ...` can find the instance. Ah, so _that_ is why I got a warning from checkpatch! > > + __func__, vbd->pdevice, disk->diskseq, diskseq); > > + xen_vbd_free(vbd); > > + return -ENODEV; > > + } > > + } > > + > > vbd->size =3D vbd_sz(vbd); > > =20 > > if (cdrom || disk_to_cdi(vbd->bdev->bd_disk)) > > @@ -707,6 +728,9 @@ static void backend_changed(struct xenbus_watch *wa= tch, > > int cdrom =3D 0; > > unsigned long handle; > > char *device_type; > > + char *diskseq_str =3D NULL; >=20 > const, and I think there's no need to init to NULL. >=20 > > + int diskseq_len; >=20 > unsigned int >=20 > > + unsigned long long diskseq; >=20 > u64 >=20 > > =20 > > pr_debug("%s %p %d\n", __func__, dev, dev->otherend_id); > > =20 > > @@ -725,10 +749,46 @@ static void backend_changed(struct xenbus_watch *= watch, > > return; > > } > > =20 > > - if (be->major | be->minor) { > > - if (be->major !=3D major || be->minor !=3D minor) > > - pr_warn("changing physical device (from %x:%x to %x:%x) not support= ed.\n", > > - be->major, be->minor, major, minor); > > + diskseq_str =3D xenbus_read(XBT_NIL, dev->nodename, "diskseq", &disks= eq_len); > > + if (IS_ERR(diskseq_str)) { > > + int err =3D PTR_ERR(diskseq_str); > > + diskseq_str =3D NULL; > > + > > + /* > > + * If this does not exist, it means legacy userspace that does not > > + * support diskseq. > > + */ > > + if (unlikely(!XENBUS_EXIST_ERR(err))) { > > + xenbus_dev_fatal(dev, err, "reading diskseq"); > > + return; > > + } > > + diskseq =3D 0; > > + } else if (diskseq_len <=3D 0) { > > + xenbus_dev_fatal(dev, -EFAULT, "diskseq must not be empty"); > > + goto fail; > > + } else if (diskseq_len > 16) { > > + xenbus_dev_fatal(dev, -ERANGE, "diskseq too long: got %d but limit i= s 16", > > + diskseq_len); > > + goto fail; > > + } else if (diskseq_str[0] =3D=3D '0') { > > + xenbus_dev_fatal(dev, -ERANGE, "diskseq must not start with '0'"); > > + goto fail; > > + } else { > > + char *diskseq_end; > > + diskseq =3D simple_strtoull(diskseq_str, &diskseq_end, 16); > > + if (diskseq_end !=3D diskseq_str + diskseq_len) { > > + xenbus_dev_fatal(dev, -EINVAL, "invalid diskseq"); > > + goto fail; > > + } > > + kfree(diskseq_str); > > + diskseq_str =3D NULL; > > + } >=20 > Won't it be simpler to use xenbus_scanf() with %llx formatter? xenbus_scanf() doesn=E2=80=99t check for overflow and accepts lots of junk = it really should not. Should this be fixed in xenbus_scanf()? > Also, we might want to fetch "physical-device" and "diskseq" inside > the same xenstore transaction. Should the rest of the xenstore reads be included in the same transaction? > Also, you tie this logic to the "physical-device" watch, which > strictly implies that the "diskseq" node must be written to xenstore > before the "physical-device" node. This seems fragile, but I don't > see much better optiono since the "diskseq" is optional. What about including the diskseq in the "physical-device" node? Perhaps use diskseq@major:minor syntax? > The node and its behaviour should be documented in blkif.h. Indeed so. > > + if (be->major | be->minor | be->diskseq) { > > + if (be->major !=3D major || be->minor !=3D minor || be->diskseq !=3D= diskseq) > > + pr_warn("changing physical device (from %x:%x:%llx to %x:%x:%llx)" > > + " not supported.\n", > > + be->major, be->minor, be->diskseq, major, minor, diskseq); > > return; >=20 > You are leaking diskseq_str here, and in all the error cases between > here and up to the call to xen_vbd_create(). I will fix this by moving the diskseq reading code into its own function. --=20 Sincerely, Demi Marie Obenour (she/her/hers) Invisible Things Lab --gvaHE6UC2pWo4unn Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQIzBAEBCgAdFiEEdodNnxM2uiJZBxxxsoi1X/+cIsEFAmR/ZmUACgkQsoi1X/+c IsFcXw/+O0uik5rd4boydxFX99UjfrkGiog1pfbmuhUxgisJFIPtkNnbz2S66pb5 h2wD5k3BZC+Sl/Mbt4LKpKbRM9qJWhhGZZjNG7n0GTBw08k9WJP2QhlJVLkqwtWt Fg+JyZACmla53o0nlhrvMZGAtNN0f/4S3z2ary6h6AqNRl5nIAso9E7qEMkaZ/aW EMGGdy5gWhAUUfFeo7pG7LlgPUPZHLZ0EdpqOuVW37B3w3DbeRuX1abRgQwpBZcC 1bx6MY1y59+K5tri4ONQHSDriBH8z0hcHLUTYNaGCBCWiC+19zY+njahy9gAEit+ YjoiTevhLSn+UtxPB6Fi/233LEQySlGyS90McFx+3fMnkc32sOoxxI3drAxWUDCB iKY4VMgvdUrCi6zN+IWITMDCRsQzidLs5rUPPj14Lf6w7R7wKaxTvMZBlcbbQBBU PKUo2homKpex3/Qxw7/c5DyZ0M/oPEuJyp/lmHmEDXDMqInF9PI+A8ukSaFOzE96 jCBO8ay7vpXZG5jEx9FRF/T8JGmYnL6F/cu5P+o8t2vxNg0fe9w5Jg0o3zjEkraC Qxu9cpr4/44ySNx7cB7fUXMkw4+Ubbe0UrFcyX9NvKtaB8F5H+tptCHyGJ0hQa36 6Z9EKHUoChcUGKMLAJ1GUI383RpDqbzdOS5FS97X/HlIc7B9S4Q= =ln1g -----END PGP SIGNATURE----- --gvaHE6UC2pWo4unn-- From xen-devel-bounces@lists.xenproject.org Tue Jun 06 17:23:45 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 06 Jun 2023 17:23:45 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544129.849671 (Exim 4.92) (envelope-from ) id 1q6aPE-0000DK-Ba; Tue, 06 Jun 2023 17:23:40 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544129.849671; Tue, 06 Jun 2023 17:23:40 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6aPE-0000DD-8X; Tue, 06 Jun 2023 17:23:40 +0000 Received: by outflank-mailman (input) for mailman id 544129; Tue, 06 Jun 2023 17:23:39 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6aPC-0000D7-MF for xen-devel@lists.xenproject.org; Tue, 06 Jun 2023 17:23:39 +0000 Received: from esa3.hc3370-68.iphmx.com (esa3.hc3370-68.iphmx.com [216.71.145.155]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id dd36a737-048e-11ee-8611-37d641c3527e; Tue, 06 Jun 2023 19:23:35 +0200 (CEST) Received: from mail-bn7nam10lp2102.outbound.protection.outlook.com (HELO NAM10-BN7-obe.outbound.protection.outlook.com) ([104.47.70.102]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 06 Jun 2023 13:23:31 -0400 Received: from MW4PR03MB6428.namprd03.prod.outlook.com (2603:10b6:303:123::8) by SJ0PR03MB7101.namprd03.prod.outlook.com (2603:10b6:a03:4e2::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Tue, 6 Jun 2023 17:23:26 +0000 Received: from MW4PR03MB6428.namprd03.prod.outlook.com ([fe80::95db:33e0:ebe2:13dd]) by MW4PR03MB6428.namprd03.prod.outlook.com ([fe80::95db:33e0:ebe2:13dd%6]) with mapi id 15.20.6455.030; Tue, 6 Jun 2023 17:23:26 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: dd36a737-048e-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686072215; h=from:to:cc:subject:date:message-id: content-transfer-encoding:mime-version; bh=Gm0aCo4FEyMFJJgN2D8AQMZVYKTX7deBq3NtxXOZOCM=; b=edTZq8OOp4KVNJPhhfehOKosPY0j6FGRdqDIk9eGYxoSSKZB5FcEhZ65 u5z4M1IBrpzqrYt0f2PYIU83tqWIfvrEmxl9gITQ+9EWtGmAaSTmA+EkF 1Cp160SEiljrNhy0OjFW0zg+Gxwn9FfistQK8F6lxYZH858CkRS++8h/5 Q=; X-IronPort-RemoteIP: 104.47.70.102 X-IronPort-MID: 111820169 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:PhsjE6O94mAME9XvrR0hlsFynXyQoLVcMsEvi/4bfWQNrUp03mQGn WsfWmqAM/ncYmD9ctFwOt+x8RwFsZOByoU2Tgto+SlhQUwRpJueD7x1DKtS0wC6dZSfER09v 63yTvGacajYm1eF/k/F3oDJ9CU6jufQAOKnUoYoAwgpLSd8UiAtlBl/rOAwh49skLCRDhiE/ Nj/uKUzAnf8s9JPGjxSs/rrRC9H5qyo42tG5gJmP5ingXeF/5UrJMNHTU2OByOQrrl8RoaSW +vFxbelyWLVlz9F5gSNy+uTnuUiG9Y+DCDW4pZkc/HKbitq/0Te5p0TJvsEAXq7vh3S9zxHJ HehgrTrIeshFvWkdO3wyHC0GQkmVUFN0OevzXRSLaV/ZqAJGpfh66wGMa04AWEX0rhML0VW7 +EgFAAqQDnenP2r6aLmdNA506zPLOGzVG8ekldJ6GiBSNwAHtXESaiM4sJE1jAtgMwIBezZe 8cSdTtoalLHfgFLPVAUTpk5mY9EhFGmK2Ee9A3T+vJxujCJpOBy+OGF3N79YNuFSN8Thk+Fj mnH4374ElcRM9n3JT+tqyv11rWXxH2qMG4UPLKf+t0y21/J/HdQJT4GWVblkPaGkUHrDrqzL GRRoELCt5Ma5EGtC9XwQRC8iHqFpQIHHcpdFfUg7wOAwbaS5ByWbkAfVSJIYtEisM4wRBQp2 0WPktevAiZg2JWXVHac+7G8vT60fy8PIgcqbyIeUREM5dWlpYgplw/OVf5qCqvzhdrwcRnOx DSNoDk7lq8kp8cB3KWm/njKmzup4JPOS2Yd5A/aQ2ak5QNRf5O+asqj7l2zxelEBJaUSB+Gp ndspiSFxOUHDJXInirSRuwIRemt/6zcaGeahkNzFZ488Tjr42SkYY1b/DB5IgFuL9oAfjjqJ kTUvGu9+aNuAZdjVocvC6rZNijg5fGI+QjNPhwMUudzXw== IronPort-HdrOrdr: A9a23:UDX0VKzAbfeXwy3GUIGvKrPwKL1zdoMgy1knxilNoEpuA6ilfq GV/MjzuiWetN98YhsdcLO7WZVoI0myyXcv2/h1AV7KZmCPhILPFuxfBODZrQEIdReTygbzv5 0QFJSXpLfLfDtHZWeR2njbL+od X-Talos-CUID: 9a23:p9/ToG3oi9J1vGHofpxEsLxfRPsLVmXH0U/sE2iWIDtyV6C8WQKuwfYx X-Talos-MUID: =?us-ascii?q?9a23=3A7unpjQypfDuPBR4HZHBt7y+sOxSaqKuJBGNVypd?= =?us-ascii?q?cgdLHGA9gNzrDvTuIWYByfw=3D=3D?= X-IronPort-AV: E=Sophos;i="6.00,221,1681185600"; d="scan'208";a="111820169" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=WZ0F4tVnTemy/nLdLvmUHrQ5cjxzY8uB8VFWNOUdSVougXxDZtl9vUubO7jB9DZq4lXUB5WyzxJDc65fS1Nl8aIFHiJ3eOyjFm+mUQQBNTiJyPUd6F1hm/VV6ko8RDRC8Pk7ZAGHGhoAfLRsahCNc1vBZ/T8Ir4BYwxpz4TebOcyD9HiX3xxzaU0Tl46Y1jmOmo/txL0kBleqVR/iTD+Y4k8swmLkOUNz4hPp2keDuwYDqywmqRXBJZyA/wMeHiJdUCP4u6z/rUtzeH2yPc90Vq8KzJ0oH9LrYpV6eL2A5WQUtlbl+kqY8+gLWmyqS0ORXEUxscBqJ7wz2zXpf9ajw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=St7pZT571GTRV9ofAWN9hsWuPg375eC1313V2qCL3+I=; b=aqtouEBxeDfyQmmR8Qzv+E8wDRmifPfm4y7awydGjum3ULWdl9SNgbJpQjX1cCzUb0cPeNAXifx1+pYXD01J/VuYOShJ6U/E6HkZhsNsvVYpMxm3WqgCvEi8pTyzFgRB7q6jR/xGRi9Q9HsmHj2HSPCtR7d3HlpwmX69eXidqF4xsOD3nlb8UNM09H7FQs0uvjrZQT+05MY2t7M+zEFnH5DAKpviZiKI3G+fV0LLVWuekbYP6eA0g+f7GtbY3X7rZLAYwF/rrekH1//QbmOYZdoASor0JX5uRqac3Uwxd91bcy4EFCbZ1BZafdvdfSvT2Iu64GAcb9Vc2qpl+qVCSw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=St7pZT571GTRV9ofAWN9hsWuPg375eC1313V2qCL3+I=; b=NdNNlQoPAZF4n9Nfs8DZkhSJrByvGxwyyrpdy6C6mzyJtySuQEyGquOMnnXg0YuvEkI0bB4KzzBuQTDywLMRQqUYs9YwQOXN9LXeJt1FgpkJ6BARK9cXXCZRRZ3BcI4QNU/ds0ldj0y3KYczpD2CvSzeEK1vO+GN18Q6MlYp3ug= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; From: Roger Pau Monne To: xen-devel@lists.xenproject.org Cc: Roger Pau Monne , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk , Jan Beulich , Andrew Cooper , Wei Liu Subject: [PATCH] livepatch: apply_alternatives() is only used for livepatch Date: Tue, 6 Jun 2023 19:23:07 +0200 Message-Id: <20230606172307.38857-1-roger.pau@citrix.com> X-Mailer: git-send-email 2.40.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO4P265CA0010.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:2ad::21) To MW4PR03MB6428.namprd03.prod.outlook.com (2603:10b6:303:123::8) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: MW4PR03MB6428:EE_|SJ0PR03MB7101:EE_ X-MS-Office365-Filtering-Correlation-Id: 6bdf4b8c-62f0-44e9-5535-08db66b2bd0b X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: wlNw8MbWXPpCwA8GM8zTuaABaZssOGNmc8OEL1c8N/2Zy8NBMerANapMAKhXUo4iLHXI0MQcbmvheRPZd1nTGFIe3gWaCzlW4Xs1XE5N5/np0aiMmaiA1NMS9rheSHuLUOGuJMC0mackY8n1cpZEECHKPCvxqk+Jt1vPxvUl42SxXWhGjyUBXu2IDnZuBkRwZmcEdm0Kq9y4dYuGg+sIwgZCMAM3V4cSG1GrY+xYvQEGWBIGQvnXOJVX0RLhYl5IGonbDCANiACm1WK/W30c8uRBeFo8pJd33VHchvjLmCAFZ0xlH9pCAiMd5hSc2g0cVHcfLDF1e4freimZRVo/6h4He7RJSXnhgA02ze9UGj2OU4bWGcAHFaNAGb0U/aVC/QOfDzOOGnJfBEBnBFAKMw3ZwbITGJvLo2a7db0N8K2oHxwO+26elkgfP15YK2+hKK/NDz5Sn7uAhHFZ+/jePceWQTdj0W4AczdqEhGQZ/osuqso5Pe4IyuRMZMGsm7jQ9wQwSp2Ek8t353T+0/k0c3TROyO7TGfNk0s/X2/xJAm+24s/6dXvSgd8Z1BsG+U X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MW4PR03MB6428.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(396003)(346002)(376002)(366004)(39860400002)(136003)(451199021)(6486002)(6666004)(82960400001)(2906002)(66946007)(66556008)(66476007)(36756003)(54906003)(38100700002)(8936002)(86362001)(8676002)(5660300002)(41300700001)(4326008)(6916009)(316002)(478600001)(2616005)(26005)(6512007)(6506007)(1076003)(186003)(83380400001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?QVdJM0YzclN5SFE5THliZWRXN0s0clc0VVROUy9WanpUOUlUc0w1Q3JNT01T?= =?utf-8?B?aE9JZXRtbCtqTUpuTEVwd1cvRmpibjh5OTFTZG5MMFBmWngxUVZPOFFUajM0?= =?utf-8?B?YSt2QVBGcm5kNGRSSTVaK21pcGZWQytmNWtqMUVWUFpaaGRzdWx1WmVHblhB?= =?utf-8?B?TVdQTVZ0dU03aUdpWlRLSXlwYVdHaWFPVkVxY1V6aFpKdXdkTVBvb2lOYWJh?= =?utf-8?B?MkFIU1JIZDh2SFR3WEY2MlNwc1dMakRXUkNUemdzWThDR25hc3V2a0tWaG5H?= =?utf-8?B?anBpZlFKMHZyQTVnR3Fna1NadzFVR2hNcXkrWDJiWGkrVGdJRVdORmxkQ1Ri?= =?utf-8?B?SVJyQ29ldjhXRElJOFVSYnVzS2wrdHB5TWExOVl5Z3ZuZ3dIZENaVnN4bzZH?= =?utf-8?B?OW1lcGw5alI4VkhhUFhXSXNPaXh0MklJT0U1d09FNkxQZStaWDNSS0hVamwr?= =?utf-8?B?VTRZb0hJV2FXbHZTQUZUcElldnJ1aGtlUURuVTBrMXJLenpDMmM4WVZKQ1ZN?= =?utf-8?B?M0xuMGg5M1RSb2kybTRrZDR6Mk13Skc0T3NEa1o2dXZtQkREQlFFK1pLWjNJ?= =?utf-8?B?aGRRL1M0VlNKUkpsRXJDWGdkNnVhcmFlUlNLMFJZOWZRdm1DazJvRUs3VHRF?= =?utf-8?B?M0JqS2ZOL0ZobEpUYk10TGFkYUpFUUlhamdHRDNTSG5jUkJnVHY3WnNvSW82?= =?utf-8?B?N2x3aWR1MjF1MTUyZjNvaVA1OW9KMGZEUWlEME1oa0wzOVVPTHphMXVhQ2tn?= =?utf-8?B?ZUdMR1BzWFlmSVdGbGVLQnZtbXkrT0V0MGxJTE00T3RFMkNLRnZhWEVhYm11?= =?utf-8?B?RDRreFdmT1JCNFVsci92Y0gzb2g0cjFIcEtFMXZ1d3d6cDZqQk1zS0I2TCtv?= =?utf-8?B?ZEtFSzU3S1BpQnJQckZqTkRkTERGaXFBZ0pZRnVQeTRpTWFxemtXMUQ2M2Ru?= =?utf-8?B?VG1FRDBIK0lhQUtqa2k0V2V1WWNHbitucVJKVnVtc1Y1K0xZWXNKemxxZ2Nz?= =?utf-8?B?djVVZ1NuZ1FnTHhnTEFNaVFuWVNvcytLWWVMWFRHNjl1RXh2Q2I1MDhoeUFo?= =?utf-8?B?Q2ZMK1BuS201d01IZUZFWUdQUHpxMGhzclRIVlRmWGRCTm5kTWJFb3dndWsw?= =?utf-8?B?QjQwUTJnMkw1U05YbkM0SzVpRE8rS1ZKYk1ndGpHaXJSUjU1aFpDVGxZcVNn?= =?utf-8?B?YW9GaE42Z3hKVC9mS3hkREtGb3g4dmt0VW1XVFNlYVArKzRUMXQzcWFYTThv?= =?utf-8?B?T0ZLV1B6KzdHb0RLYm1YOU1ldlYrSWw0V0Y3VTJuWk40NGN6RUd4SDRMdmQx?= =?utf-8?B?U2I3THFldWdYUWVqQjJ1U0JsQkNIZWkySGxBNEVLRUMxeTc4N2F3TklGTzhO?= =?utf-8?B?Nk1qUkdhOFEwOC8xUTlXQXRxNHRjUE1rQjI1bnJ4bWwzQWdoSnRpY2I2S2Y5?= =?utf-8?B?ZGpwbnA4dUNhOXJjQzBQWHA1T3o1VVVwaXlTbWpSQ1V6SGhEa3lDZDhGZjhh?= =?utf-8?B?b3JPR3VjK25MaXlTeVU4dTk0ZW5MZERON3FSRnVjYy9MQVRPQWtVOEFjM3p3?= =?utf-8?B?WGtJMVdydStERnh5L05Od3RCUUpkZWdhRjB2RlVjZkJzYWtYSXZ4Ni91WDFX?= =?utf-8?B?bVBKZTdOZGp4MWZvRUEzc3BwdmJCZGJCUFBtMWpoa0pYMXFRMno1OEo5cE9q?= =?utf-8?B?QmZZZUg1T05uSXpqQWJ4bnZGNGFLOHpqbjlwcFRrbWg2V0drNkVTNzlpM2pL?= =?utf-8?B?L1FvZmV1eU00OVhDWVlHdzJOZjBEbXFnY2ZwamYwOUthUXZBRlUzeFlxUmpO?= =?utf-8?B?ck1hcWpNVklRYVRxTmlHY29WbDhyWW9tTEJyUXJQczdIS0lHKzF5UmQ4bmsx?= =?utf-8?B?azZsVjh2enR3alV3dzhzQnpBRDZNRGFvMmdvNHE1ZWVCRTJEd0lDUHpzYVdX?= =?utf-8?B?MWo3OXFqNE1MYjhweVhMOExQeWh5UjlvbGovR3V5VFlhd1R6ZnhrQ1BnV21k?= =?utf-8?B?QWxLY2hnZFJySnJBNWp6QndIUmMrRzNBQnNFRzZHUmg1czB4Vzh0Sk5QZWp6?= =?utf-8?B?b2JhQ3VhTk1NWlFOYW5aVlF2Q0FKODJFcU5qbU0zN0twT3NOWWtuUllvcEhS?= =?utf-8?B?NENEOVJZVVIzNVVwT0R3b2VJV0JBZ1FWbVpzZC9xS1lEQTNBNEI0ajVmaDdE?= =?utf-8?B?M0E9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: 7YnE+Dpey101xgM04SjPdKCMBE+mxtBW3T5NGA//Kbl8LmnWOA3KN3YbmsoIKgJpF6naVJXAwkNe3imiOwNipFyDmXI+8LL8S8/PR/UFVvyGNshEv3r2uItUTZjKVVzunj+fTqLKHLSjWSa/NYMJ42io7XDcP7h3l1JUYnvE4RG1MZvNklath8wKZwD13qpiI/vHP09JM6FUTTPqx4Wuwrdw3fcZkBxl85vPMM/TssTVuuvTTNA08VDgp2StURAZRfXHnJ4adJvBbUhiDU5ILryF7SmqhzggNVngQxl/KWOoqjrOZFWlR/hOt3+8XTxyGTGLNbuHa9s/2ejT3Sj8LjbcALITtERpg+WYEI5BzaUDaxuHqvnvq0CtMWjFLfyYwo5/CBKQshb666lKlsGAdOi3SskxlOdFTlgza7aOSZ8lZlmRayhdjrpnolX387JApkfNZFyjwrPYrzSuR0ATEmSHhuK0B9XqMLpbsoHFbzOtL00iCeIP8p470tG5/rPzdJX4upldUsk7wriWP6KnTRiquc5mK4RcRsXb15vwN2q574qQ5q7j1j93LRzMCfstXp86F6X4VuBy68sjFhgOQew8q9U1hQMlbUySnmEzleSffd0mBjJneH0D/wVfh8y8afhgnHICjWnDrg4qlVgsH0uCC238Ryyb6yII/QBVGR+qmRkuOhobFi6fd2a7luBcR1743pinm8OiNxvPKHMt6p38JuZFA2kURlKeL03gyHsS2bxuxfQ2Q61A5wm7toRSihR4eNfVbRvX+8wSqW8ipz61RymE/2ZGo11EQES6SCcxaV1S4T4ihDW/cS13EdVro6mdYui3IPObeQAAIziGFoQ/++MHip8f5MFv3ydUQQEjt9GqyDTdidMAnfpSJKOigIB7GOwJWT3AF/RVLH8A8w== X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 6bdf4b8c-62f0-44e9-5535-08db66b2bd0b X-MS-Exchange-CrossTenant-AuthSource: MW4PR03MB6428.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Jun 2023 17:23:26.7382 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: QU6L/wGcHiMNpqvzhgFewYGT6eXZtn3PsdVbz/qhEzXGYlgikLWimgp5j5ebb7mEydqVzwzXQ9U6hyRqsNT0Pg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR03MB7101 Guard it with CONFIG_LIVEPATCH. Note alternatives are applied at boot using _apply_alternatives(). Signed-off-by: Roger Pau Monné --- xen/arch/arm/alternative.c | 2 ++ xen/arch/arm/include/asm/alternative.h | 2 ++ xen/arch/x86/alternative.c | 5 +++-- xen/arch/x86/include/asm/alternative.h | 2 ++ 4 files changed, 9 insertions(+), 2 deletions(-) diff --git a/xen/arch/arm/alternative.c b/xen/arch/arm/alternative.c index 7366af4ea646..016e66978b6d 100644 --- a/xen/arch/arm/alternative.c +++ b/xen/arch/arm/alternative.c @@ -223,6 +223,7 @@ void __init apply_alternatives_all(void) vunmap(xenmap); } +#ifdef CONFIG_LIVEPATCH int apply_alternatives(const struct alt_instr *start, const struct alt_instr *end) { const struct alt_region region = { @@ -232,6 +233,7 @@ int apply_alternatives(const struct alt_instr *start, const struct alt_instr *en return __apply_alternatives(®ion, 0); } +#endif /* * Local variables: diff --git a/xen/arch/arm/include/asm/alternative.h b/xen/arch/arm/include/asm/alternative.h index d3210e82f9e5..ce82dc1ca0d2 100644 --- a/xen/arch/arm/include/asm/alternative.h +++ b/xen/arch/arm/include/asm/alternative.h @@ -29,7 +29,9 @@ typedef void (*alternative_cb_t)(const struct alt_instr *alt, int nr_inst); void apply_alternatives_all(void); +#ifdef CONFIG_LIVEPATCH int apply_alternatives(const struct alt_instr *start, const struct alt_instr *end); +#endif #define ALTINSTR_ENTRY(feature, cb) \ " .word 661b - .\n" /* label */ \ diff --git a/xen/arch/x86/alternative.c b/xen/arch/x86/alternative.c index 99482766b51f..21af0e825822 100644 --- a/xen/arch/x86/alternative.c +++ b/xen/arch/x86/alternative.c @@ -358,11 +358,12 @@ static void init_or_livepatch _apply_alternatives(struct alt_instr *start, } } -void init_or_livepatch apply_alternatives(struct alt_instr *start, - struct alt_instr *end) +#ifdef CONFIG_LIVEPATCH +void apply_alternatives(struct alt_instr *start, struct alt_instr *end) { _apply_alternatives(start, end, true); } +#endif static unsigned int __initdata alt_todo; static unsigned int __initdata alt_done; diff --git a/xen/arch/x86/include/asm/alternative.h b/xen/arch/x86/include/asm/alternative.h index a1cd6a9fe5b8..688b554099b3 100644 --- a/xen/arch/x86/include/asm/alternative.h +++ b/xen/arch/x86/include/asm/alternative.h @@ -24,7 +24,9 @@ struct __packed alt_instr { extern void add_nops(void *insns, unsigned int len); /* Similar to alternative_instructions except it can be run with IRQs enabled. */ +#ifdef CONFIG_LIVEPATCH extern void apply_alternatives(struct alt_instr *start, struct alt_instr *end); +#endif extern void alternative_instructions(void); extern void alternative_branches(void); -- 2.40.0 From xen-devel-bounces@lists.xenproject.org Tue Jun 06 17:31:50 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 06 Jun 2023 17:31:50 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544135.849681 (Exim 4.92) (envelope-from ) id 1q6aWu-0001h7-5W; Tue, 06 Jun 2023 17:31:36 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544135.849681; Tue, 06 Jun 2023 17:31:36 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6aWu-0001h0-2K; Tue, 06 Jun 2023 17:31:36 +0000 Received: by outflank-mailman (input) for mailman id 544135; Tue, 06 Jun 2023 17:31:35 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6aWt-0001gu-0F for xen-devel@lists.xenproject.org; Tue, 06 Jun 2023 17:31:35 +0000 Received: from out4-smtp.messagingengine.com (out4-smtp.messagingengine.com [66.111.4.28]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id fa27f3e0-048f-11ee-b232-6b7b168915f2; Tue, 06 Jun 2023 19:31:33 +0200 (CEST) Received: from compute5.internal (compute5.nyi.internal [10.202.2.45]) by mailout.nyi.internal (Postfix) with ESMTP id 83DA55C0156; Tue, 6 Jun 2023 13:31:31 -0400 (EDT) Received: from mailfrontend1 ([10.202.2.162]) by compute5.internal (MEProxy); Tue, 06 Jun 2023 13:31:31 -0400 Received: by mail.messagingengine.com (Postfix) with ESMTPA; Tue, 6 Jun 2023 13:31:30 -0400 (EDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: fa27f3e0-048f-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= invisiblethingslab.com; h=cc:cc:content-type:content-type:date :date:from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:sender:subject:subject:to:to; s=fm1; t= 1686072691; x=1686159091; bh=PPJ8ANsJ3ndC+NKLw9cb82lPRFQQEpH4AzH /soitpaM=; b=P0tfctNxN6mn1B0nwOJxxLWp6+OEhmftVv7YFCLXchwUTH69NZs 3PlfS0mi/lQOWcR2p15ycdn1Ur+6nn7e+AnvmVCUwOMKSqPm4RAvewy7BB9j9twd a5shp6CDpc24V4TrJ8FbhAZBIRioylbWpKb/nnn92RtNLT0oOQS5Xh2KchPjCrYn /v6auTLUC71EeuEUuSRzQuvmABZGjpxqS4z53ZeQ3lccYcJGcgSymRPDjG5UhOjo 5xxDKlBm1y0aqt1D35kewJ6mF8+NX5Ap1yFentB59t3uDBJsbjyCAgjjc8mlYHOB MjnwJP+zACLNfdjg9bBVylVqvtSiJTNXTpw== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-type:content-type:date:date :feedback-id:feedback-id:from:from:in-reply-to:in-reply-to :message-id:mime-version:references:reply-to:sender:subject :subject:to:to:x-me-proxy:x-me-proxy:x-me-sender:x-me-sender :x-sasl-enc; s=fm1; t=1686072691; x=1686159091; bh=PPJ8ANsJ3ndC+ NKLw9cb82lPRFQQEpH4AzH/soitpaM=; b=LaRJgzIthnbwCDP8EB6dUMUJAMtxY 6MkrH0yrgtLI/Z6Ddc1KGjD+nSawwgtocmaBUUanj4O6uaHdVkF/ljY8bzd6TLYB qZnsQc2gyD0h+y8qDUA2wWJg39viglyAD12kqbb1cMI5FShps4jMl9kmE7LN1nkS n4Q48swTpQZo+3JkHogiWI+anLaI1RBGkvC5rfjesvr2riRvwXAlC36AoauODiBU Y+i0qwZGZW/F/GTLdymrHEOIFENBExyYonwCD0Pg+AtUJhDKYtbEGx6CPghw70KD 27rZKRcEJVr+Bx/3AXjbUwXGBhrACYVV5dExp+VXDSZEki/+SB3VBBQYA== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvhedrgedtuddgudduiecutefuodetggdotefrod ftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfgh necuuegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmd enucfjughrpeffhffvvefukfhfgggtuggjsehgtderredttdejnecuhfhrohhmpeffvghm ihcuofgrrhhivgcuqfgsvghnohhurhcuoeguvghmihesihhnvhhishhisghlvghthhhinh hgshhlrggsrdgtohhmqeenucggtffrrghtthgvrhhnpedvjeetgeekhfetudfhgfetffeg fffguddvgffhffeifeeikeektdehgeetheffleenucevlhhushhtvghrufhiiigvpedtne curfgrrhgrmhepmhgrihhlfhhrohhmpeguvghmihesihhnvhhishhisghlvghthhhinhhg shhlrggsrdgtohhm X-ME-Proxy: Feedback-ID: iac594737:Fastmail Date: Tue, 6 Jun 2023 13:31:25 -0400 From: Demi Marie Obenour To: Roger Pau =?utf-8?B?TW9ubsOp?= Cc: Jens Axboe , Alasdair Kergon , Mike Snitzer , dm-devel@redhat.com, Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= , linux-block@vger.kernel.org, linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org Subject: Re: [PATCH v2 16/16] xen-blkback: Inform userspace that device has been opened Message-ID: References: <20230530203116.2008-1-demi@invisiblethingslab.com> <20230530203116.2008-17-demi@invisiblethingslab.com> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha512; protocol="application/pgp-signature"; boundary="v5HGqs481WPJ8zTb" Content-Disposition: inline In-Reply-To: --v5HGqs481WPJ8zTb Content-Type: text/plain; protected-headers=v1; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Date: Tue, 6 Jun 2023 13:31:25 -0400 From: Demi Marie Obenour To: Roger Pau =?utf-8?B?TW9ubsOp?= Cc: Jens Axboe , Alasdair Kergon , Mike Snitzer , dm-devel@redhat.com, Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= , linux-block@vger.kernel.org, linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org Subject: Re: [PATCH v2 16/16] xen-blkback: Inform userspace that device has been opened On Tue, Jun 06, 2023 at 11:15:37AM +0200, Roger Pau Monn=C3=A9 wrote: > On Tue, May 30, 2023 at 04:31:16PM -0400, Demi Marie Obenour wrote: > > Set "opened" to "0" before the hotplug script is called. Once the > > device node has been opened, set "opened" to "1". > >=20 > > "opened" is used exclusively by userspace. It serves two purposes: > >=20 > > 1. It tells userspace that the diskseq Xenstore entry is supported. > >=20 > > 2. It tells userspace that it can wait for "opened" to be set to 1. > > Once "opened" is 1, blkback has a reference to the device, so > > userspace doesn't need to keep one. > >=20 > > Together, these changes allow userspace to use block devices with > > delete-on-close behavior, such as loop devices with the autoclear flag > > set or device-mapper devices with the deferred-remove flag set. >=20 > There was some work in the past to allow reloading blkback as a > module, it's clear that using delete-on-close won't work if attempting > to reload blkback. Should blkback stop itself from being unloaded if delete-on-close is in use? > Isn't there some existing way to check whether a device is opened? > (stat syscall maybe?). Knowing that the device has been opened isn=E2=80=99t enough. The block sc= ript needs to be able to wait for blkback (and not something else) to open the device. Otherwise it will be confused if the device is opened by e.g. udev. > I would like to avoid adding more xenstore blkback state if such > information can be fetched from other methods. I don=E2=80=99t think it can be, unless the information is passed via a completely different method. Maybe netlink(7) or ioctl(2)? Arguably this information should not be stored in Xenstore at all, as it exposes backend implementation details to the frontend. > > diff --git a/drivers/block/xen-blkback/xenbus.c b/drivers/block/xen-blk= back/xenbus.c > > index 9c3eb148fbd802c74e626c3d7bcd69dcb09bd921..519a78aa9073d1faa1dce5c= 1b36e95ae58da534b 100644 > > --- a/drivers/block/xen-blkback/xenbus.c > > +++ b/drivers/block/xen-blkback/xenbus.c > > @@ -699,6 +713,14 @@ static int xen_blkbk_probe(struct xenbus_device *d= ev, > > if (err) > > pr_warn("%s write out 'max-ring-page-order' failed\n", __func__); > > =20 > > + /* > > + * This informs userspace that the "opened" node will be set to "1" w= hen > > + * the device has been opened successfully. > > + */ > > + err =3D xenbus_write(XBT_NIL, dev->nodename, "opened", "0"); > > + if (err) > > + goto fail; > > + >=20 > You would need to set "opened" before registering the xenstore backend > watch AFAICT, or else it could be racy. Will fix in the next version. --=20 Sincerely, Demi Marie Obenour (she/her/hers) Invisible Things Lab --v5HGqs481WPJ8zTb Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQIzBAEBCgAdFiEEdodNnxM2uiJZBxxxsoi1X/+cIsEFAmR/bXEACgkQsoi1X/+c IsH4LQ/8CBCRE3oNXmGpRfn2V6qP3hByq92y8oEWMR2YzQ3ndD6PeKp1WW3R4CX8 oaK+UonWY/8k4miLPUvGPgvk/igvHGGwbJ5LQMUrDr7MxSKK2M5DXrOX9s10P9vS gYb2lJZpgnP490tjeoM+9tDUTUH/zsqzGuAdRAJoFcIFpePCibf5+7xhNpLroHX7 RYXXjyJshqHQJCfoofao9qqWvDgSHbwRW+g86iDOPBbzorN2sVHHBgYpgMUgGrhf fjf/Ola7ZJFeyPOv3EwdZDOjPb3yVPeuWmPbm08BjIwMKe5VVKu4UpWpYIaPaTgc AxAVNOZpMx2Zi4MtckhVDjfxenFwr/2fKOgT4zbp46480wLY1i3gYYRM/mesxUID aYXCKf/J0W3QGwnpb1vMszwUpYD5Zc/pnUQobwVIvnZUxMQl8IRwsFAFlkdvzbVD sHg0JDxSo4csiDi2cluz4N1Y8QO4slB+mQbSfsZPhXYOo644Mz/nR0RTb58EluJt rK/Ja/xzbHd9Xuwo1n8nmpH/Todpoze/hKhyoUw6y+uU2JCJwZxelO0hQ2s7BZ57 ngFcZ+RgrefNYK/zjenp5qdeWG3oxRsrLhwhoyUw+mUO1BzHBJAUQHLhnVwi9M1i aRq4CIKxSNY7YYBPNHXJdLqjcHl7N2uxS0XZxEM9SBqNFjBAjl4= =m67i -----END PGP SIGNATURE----- --v5HGqs481WPJ8zTb-- From xen-devel-bounces@lists.xenproject.org Tue Jun 06 18:10:21 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 06 Jun 2023 18:10:21 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544141.849691 (Exim 4.92) (envelope-from ) id 1q6b8E-00064r-3S; Tue, 06 Jun 2023 18:10:10 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544141.849691; Tue, 06 Jun 2023 18:10:10 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6b8D-00064k-W0; Tue, 06 Jun 2023 18:10:09 +0000 Received: by outflank-mailman (input) for mailman id 544141; Tue, 06 Jun 2023 18:10:09 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6b8D-00064e-0Z for xen-devel@lists.xenproject.org; Tue, 06 Jun 2023 18:10:09 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6b8C-0002n1-Cy; Tue, 06 Jun 2023 18:10:08 +0000 Received: from 54-240-197-235.amazon.com ([54.240.197.235] helo=[192.168.10.142]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1q6b8C-0003gC-5g; Tue, 06 Jun 2023 18:10:08 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=JGyN/+il3mBdNr/Umj+UI2DDBp0eFeJfQ0NJPbnbFf8=; b=ciIj+JuMBpDpI7OOagSa3sYfcr TB+IodKNarIIuFExQnrWfB6oW4N/sfMVA70LTUuZ+5qy08cRPgQ/kyykWPRUY7BSKgrR8sXb2Dze7 hsOHwF22S7ZHmUEII2+WWxjWwiJPlI8RV7KFrCUIuK/TMaxTU0TqDNgw3TwfQk8WJX74=; Message-ID: <0fd63050-7592-c308-51d1-f8445d3fbd4b@xen.org> Date: Tue, 6 Jun 2023 19:10:05 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH] livepatch: apply_alternatives() is only used for livepatch Content-Language: en-US To: Roger Pau Monne , xen-devel@lists.xenproject.org Cc: Stefano Stabellini , Bertrand Marquis , Volodymyr Babchuk , Jan Beulich , Andrew Cooper , Wei Liu References: <20230606172307.38857-1-roger.pau@citrix.com> From: Julien Grall In-Reply-To: <20230606172307.38857-1-roger.pau@citrix.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Hi Roger, On 06/06/2023 18:23, Roger Pau Monne wrote: > Guard it with CONFIG_LIVEPATCH. Note alternatives are applied at boot > using _apply_alternatives(). > > Signed-off-by: Roger Pau Monné Reviewed-by: Julien Grall > --- > xen/arch/arm/alternative.c | 2 ++ > xen/arch/arm/include/asm/alternative.h | 2 ++ > xen/arch/x86/alternative.c | 5 +++-- > xen/arch/x86/include/asm/alternative.h | 2 ++ > 4 files changed, 9 insertions(+), 2 deletions(-) > > diff --git a/xen/arch/arm/alternative.c b/xen/arch/arm/alternative.c > index 7366af4ea646..016e66978b6d 100644 > --- a/xen/arch/arm/alternative.c > +++ b/xen/arch/arm/alternative.c > @@ -223,6 +223,7 @@ void __init apply_alternatives_all(void) > vunmap(xenmap); > } > > +#ifdef CONFIG_LIVEPATCH > int apply_alternatives(const struct alt_instr *start, const struct alt_instr *end) > { > const struct alt_region region = { > @@ -232,6 +233,7 @@ int apply_alternatives(const struct alt_instr *start, const struct alt_instr *en > > return __apply_alternatives(®ion, 0); > } > +#endif > > /* > * Local variables: > diff --git a/xen/arch/arm/include/asm/alternative.h b/xen/arch/arm/include/asm/alternative.h > index d3210e82f9e5..ce82dc1ca0d2 100644 > --- a/xen/arch/arm/include/asm/alternative.h > +++ b/xen/arch/arm/include/asm/alternative.h > @@ -29,7 +29,9 @@ typedef void (*alternative_cb_t)(const struct alt_instr *alt, > int nr_inst); > > void apply_alternatives_all(void); > +#ifdef CONFIG_LIVEPATCH > int apply_alternatives(const struct alt_instr *start, const struct alt_instr *end); > +#endif > > #define ALTINSTR_ENTRY(feature, cb) \ > " .word 661b - .\n" /* label */ \ > diff --git a/xen/arch/x86/alternative.c b/xen/arch/x86/alternative.c > index 99482766b51f..21af0e825822 100644 > --- a/xen/arch/x86/alternative.c > +++ b/xen/arch/x86/alternative.c > @@ -358,11 +358,12 @@ static void init_or_livepatch _apply_alternatives(struct alt_instr *start, > } > } > > -void init_or_livepatch apply_alternatives(struct alt_instr *start, > - struct alt_instr *end) NIT: It sounds like the init_* was a left-over after commit 67d01cdb5518 ("x86: infrastructure to allow converting certain indirect calls to direct ones"). Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Tue Jun 06 18:17:33 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 06 Jun 2023 18:17:33 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544147.849701 (Exim 4.92) (envelope-from ) id 1q6bF9-0006iZ-QE; Tue, 06 Jun 2023 18:17:19 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544147.849701; Tue, 06 Jun 2023 18:17:19 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6bF9-0006iS-MZ; Tue, 06 Jun 2023 18:17:19 +0000 Received: by outflank-mailman (input) for mailman id 544147; Tue, 06 Jun 2023 18:17:18 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6bF8-0006iL-Oo for xen-devel@lists.xenproject.org; Tue, 06 Jun 2023 18:17:18 +0000 Received: from esa3.hc3370-68.iphmx.com (esa3.hc3370-68.iphmx.com [216.71.145.155]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 5d325fcb-0496-11ee-8611-37d641c3527e; Tue, 06 Jun 2023 20:17:16 +0200 (CEST) Received: from mail-mw2nam12lp2041.outbound.protection.outlook.com (HELO NAM12-MW2-obe.outbound.protection.outlook.com) ([104.47.66.41]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 06 Jun 2023 14:17:13 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by SJ0PR03MB6793.namprd03.prod.outlook.com (2603:10b6:a03:40c::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.31; Tue, 6 Jun 2023 18:17:12 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606%4]) with mapi id 15.20.6455.030; Tue, 6 Jun 2023 18:17:11 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 5d325fcb-0496-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686075436; h=message-id:date:from:subject:to:cc:references: in-reply-to:content-transfer-encoding:mime-version; bh=bOVRr2tGQKq/1FHeAAIHEQiJT59QP9fGW7EE+AmKzdc=; b=TG16/PQPBpnfHG41Abb1tzrkOmI6ZPoeokfCpvtfXl++oMU7A8rD7bT7 cZXCzeih08a+y14yxHOfCOXTyMW7LCpOAjGl/J5rTHJj0QbIH4BZYPSjl C6n5+DxvCSxDNuQcbYcK8X12/S0HFei2Dn0jAUFA2hV+Jc7xi9uOKZ2KN A=; X-IronPort-RemoteIP: 104.47.66.41 X-IronPort-MID: 111826521 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:uC5qRqLZ5GehPFZ8FE+RUZQlxSXFcZb7ZxGr2PjKsXjdYENS1DVWy zcWC2uDbq7fMGD2KYxwaYqwoB8Cu8WEmNVmTFNlqX01Q3x08seUXt7xwmUcnc+xBpaaEB84t ZV2hv3odp1coqr0/0/1WlTZhSAgk/rOHvykU7Ss1hlZHWdMUD0mhQ9oh9k3i4tphcnRKw6Ws Jb5rta31GWNglaYCUpKrfrbwP9TlK6q4mhA4ARgPaojUGL2zBH5MrpOfcldEFOgKmVkNrbSb /rOyri/4lTY838FYj9yuu+mGqGiaue60Tmm0hK6aYD76vRxjnVaPpIAHOgdcS9qZwChxLid/ jnvWauYEm/FNoWU8AgUvoIx/ytWZcWq85efSZSzXFD6I+QrvBIAzt03ZHzaM7H09c4sPHh+6 qYKAgo8f0HfntCNzIiLDdFV05FLwMnDZOvzu1lG5BSAV7MDfsqGRK/Ho9hFwD03m8ZCW+7EY NYUYiZuaxKGZABTPlAQC9Q1m+LAanvXKmUE7g7K4/RppTSKpOBy+OGF3N79U9qGX8hK2G2fo XrL5T/RCRAGLt2PjzGC9xpAg8eWxHqrAtxPTuTQGvhCsAyQmWweETEvbwW3/9ulgUunZNJ7J BlBksYphe1onKCxdfHtUhv9rHOasxo0X9tLD/Z8+AyL0rDT4QuSGi4DVDEpQMc9qMY8SDgu1 1mIt9DkHzpitPuSU3313rWJqTK/PwAFIGlEYjULJSMP7sP/uog1glTKR8x6Da+uptTvHHf7x DXihBY5g7IfnMsazZKR9FrMgy+vjpXRRwtz7QLSNkqn5A5kYI+uZ6Sz9EPWq/1HKe6xUV2pr HUC3c+E44gz4YqlkSWMRKAIA+uv7vPcajnE2wYzRt8m6iin/GOlccZI+jZiKUx1M8ECPzj0f EvUvgAX75hWVJe3UZJKj0uKI5xC5cDd+R7ND5g4svImjkBNSTK6 IronPort-HdrOrdr: A9a23:N2KzPK+BR2l2zvvxIbNuk+AoI+orL9Y04lQ7vn2ZKSY5TiX4rb HLoB1/73XJYVkqN03I9ervBEDiewK4yXcW2/hzAV7KZmCP1FdASrsC0WKL+Vbd8kbFh4xgPM lbE5SWc+eAamSTjazBkXWF+9RL+qj5zEh/792usUuETmtRGtBdBx8SMHf8LqXvLjM2f6bQEv Cnl7N6jgvlQ1s7ROKhCEIIWuDSzue76a4PMXY9dmYaABDlt0LS1ILH X-Talos-CUID: 9a23:2T5UPW9WUHE6jTWD8HGVvxUpA/A6KG/39kbBchOhO11lco3ScWbFrQ== X-Talos-MUID: =?us-ascii?q?9a23=3AS2C3eQ42BlELsjgAI9+zn/x8xoxYsqfxCE0Uvaw?= =?us-ascii?q?85cXaFzB7Pi6ijBC4F9o=3D?= X-IronPort-AV: E=Sophos;i="6.00,221,1681185600"; d="scan'208";a="111826521" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=ivoEb4DkA/m78FMI18ah5b4fR2yOb5G8A5kmt6NbQMF5S3gVs5C7PNoPNpF0IYn6LSKtAn91Ix1Xyp4eo4cAhe02f9/VXrzzU94OibO+LzDU3OTqvyekXBGq1YQlYMEmD8LRDJa4MWnmkrJHqnPsL3rUOy8gEVcpE5yHpj+18rxS2Td95dTy7O9voB2+fF9Hv5g9F0AM9J5wXDjN678XWBQoukdkuGWsW7bw+RUfpkLla8rtJ7JPQwBJ0oxmS7xrHAstw0S9doetD/3W9kxRiXscPtcehE1U5K6NOJ1+hVpRsNK2IyEriAoDXFYhYrSlHyRfvaFj2w6hu8Zx5JOtxg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=rcxIyhMVlgxl4huQci0IT9hw4zt/8fSTbZVgpMN8HVc=; b=dGP/f7grOdU96izQmGFq2OFmhRy3GysyoM9pPFI0qiL79/Px7YtzyNWObcjhq8FemzBDXIBrD5hYj+V50i3rpsSecA6gWzR7naZfo8i8je1ZUH3AGY3MQ62GhoGDDv3ymsAML/8Uxu0gdOpJrc4GTW7meTPBfEgRUn0CMV509hNfsx2hegkMU/m05Mm+qke9e+sX7opnNtf4RnWRId8vk39MIsFLDDx12l8/9QK6yyQMhTPBXLuVjoMe9KrBq7x4Vez9gXEv31lNW+bDdvH3lDRkmVnSyQ8geTCKjfPcLHIBkQniIY7ywKjNZKbUd0BbJvvd9I2V0maY6qvNEy37sQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=rcxIyhMVlgxl4huQci0IT9hw4zt/8fSTbZVgpMN8HVc=; b=WV0ebAV8//5nN6Etuyg6LSOoGj8HxjZ9wxZaW9Y+GaHS90MAjKACH71+Ijmd6W8to8IbsXRMLY1eMAbgzDPTKAxbEtoDl6rFnRd8HsOrB6U9AfYA+tYAfL7QMdbV3kmqSaMLkkGAeEofbRrB+93UJNAkXu8+CaPcLhv9h+hWNGo= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: <6ea96752-1da6-5566-db14-359b95af9f29@citrix.com> Date: Tue, 6 Jun 2023 19:16:58 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 From: Andrew Cooper Subject: Re: [PATCH] livepatch: apply_alternatives() is only used for livepatch Content-Language: en-GB To: Roger Pau Monne , xen-devel@lists.xenproject.org Cc: Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk , Jan Beulich , Wei Liu References: <20230606172307.38857-1-roger.pau@citrix.com> In-Reply-To: <20230606172307.38857-1-roger.pau@citrix.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: LO2P265CA0183.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:a::27) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|SJ0PR03MB6793:EE_ X-MS-Office365-Filtering-Correlation-Id: 659dff21-ada6-4933-1de7-08db66ba3f08 X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: TrV+WtDA5ih0rV/3F4351iU9F1uszZBYcMtwuKKqMiRrwmtZSp+oY97TAtik7BY7HW8wg2STHjgrODepB2qbFmPxfKvgjNeZmrhhvTTanp0eVoWyEZZeV2Gm4RzdqAFgOFhdbyvUmCKSv4fcNrFYGwUUMKoiC10aFI26uzK/ZDDS+jMxXePbdPWSHgL2dMJITSe1UJp7piqMxr/zObhuNESyeVjBpSRPL7qMVFA8C0fWC6k12nQyZlvSEstrmj3Vl9GG20WiOX3GLeydyx1e3Lw0GbPbDLDMYh4aVIkdhYf5Lzpy0xd3DsAHHKXZj8pW9eOhrxLyoiq2LWZ1G706ynhlhk/44u06dKV7bwjJDp56waYu2wl6TJ69yqKQ08I5u7xPcQixmNobhhZxxH/+lZHc7DUSoZWPfZsyRYvByYfsg7VxsIKjb4qRwbgyMEBu4X2xKbUrErdtPaZStNizuMHWtW48KhV6N8FWrW/XTXVh14v+vUE7BBiBIGmdf/oxTQdTksR/HFcsbVlEdzns7ulzQ1ratj+ek3kVXCBNWVBpivNylJj22e1umOVKD1Ew6zvjpy756gy1kUWXpLpjFPnDmb6X4KF1TjpGdjpeEuCvi4zch4ZyhUP7CowJYBc/M4opia/3GMVg2Q8bJI0WJw== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(396003)(136003)(376002)(39860400002)(366004)(346002)(451199021)(478600001)(2906002)(4744005)(36756003)(6486002)(6666004)(2616005)(53546011)(26005)(6512007)(86362001)(31696002)(82960400001)(6506007)(38100700002)(186003)(5660300002)(8936002)(8676002)(31686004)(41300700001)(66476007)(66556008)(66946007)(4326008)(316002)(54906003)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?aW5sYUx1emFkSzRielpBaTF4Q1ozQUU0UXlDNkVRemtqUHhRa0NSOEdodnds?= =?utf-8?B?bHhNbjJ0RENpV2FybU9jcGc4TU8xYlJwbmlkNkFhWmZQWWtZNkx0OEpQa3RT?= =?utf-8?B?VnErVFZBQVRybVljdWNmNGRRQXFtOGFXZ3F3MU5GU29hWGpMTzF4eGJLYlZ0?= =?utf-8?B?SmYvOHJSRFQrQWU4VTdTSUgzektpQjNZdkJCRERCWUVvS3M4aFJadWU5VlJi?= =?utf-8?B?UkQ2QUNSTW1MSTFTZjQ1dXNraUxkMTNLL3FQMFNKMGpSakhTckhkQlZpUmVq?= =?utf-8?B?aW1BTFljQlJIZ2JVdjBVOFN5ZmE5Qno3WHBkblluaXBaRkc4RlpNMkRxNmhY?= =?utf-8?B?SWJYWVd2a0JWZDJ2dVZxZXREbkE3Z2NwNW5zQm1uY3MrdzdqRmlYS2N3MXVK?= =?utf-8?B?MlZ4eHNVV2xySnY3OTVDcDJEL2NDRWd0ZldDQUdTcmtRWmFaOXlTYVM1V0VW?= =?utf-8?B?T2MzSHREbG9vbWoxK09XWlZ3cVltTEpZbVpXWXBjQUhSRVAvZG5MeWwvRFU3?= =?utf-8?B?L0JmL1FuamZ0aEZ3SW9SNVNLcFB4ZmJBVVF3ZnAramY2dERiLzkwaVhEQUx5?= =?utf-8?B?TWJuU0wyejRpTzlEMW54clVpbHZ2MStCK3NLTmVXTGVKUWZySUo4dk5rSzZH?= =?utf-8?B?K2pGQWVwSlZYZ3ljMUxNVVV3Ujd4aHErUE5VeXRjQ0l3dnNWM2h0d0ZrMllX?= =?utf-8?B?RW9RYUFvWG8wT080WTRWN24vbEg0N29teHpzb0EyRUphM0dOQVhOU3dYLzhp?= =?utf-8?B?L2xQQnpHYVlzSFJ6NVJmK01KcHJRRWtuQnJpZTlyY2tVSXF0SzlLTUkxUlBn?= =?utf-8?B?RFh3SEwwR2Q2R3dxY2VlMExVNUl6SEdKTTdlVnBrTUgwb3VaMzRFYStKMXRh?= =?utf-8?B?YjNBYzZqNUtRN2FQcDZpOUdJQzh2d0JxS0tRZ09VS0RkNmtSMlM2VEtlaU50?= =?utf-8?B?c3JYcFBmMXNsQU5GRzJSa1dScGdNbDFGWTNIVzFSemUrR3hFZzRkR3V5b01V?= =?utf-8?B?S2xXTXdaMnRVc0ExV0xYc0taNHd1MEhwWUozRlBGUVVwN29SRytRNzlqSWpR?= =?utf-8?B?QWkrV2tSNnlYYThtdTk4Y2Q0LzRMN0V5REFwdGVlK2V0RFp3cTFXVEJYUWd3?= =?utf-8?B?aTFBMytLTGxZTDFWNU1Bc2lRWDJYRkJobnFXamtBazNlL1Y2NlJpT29Tc1RC?= =?utf-8?B?TlMvNURXS0hTVmJIZFdBTWRDQzBaWEVFYk5iTkNkTi9hNW8rRkN0ZTdiVG9T?= =?utf-8?B?WXo0Q1c4ZzZrRnhMTm02VnJ2SDlmQ0o5alg4ZkZDTUdlbEs1UTRRRk12UVFm?= =?utf-8?B?ZGI3VVJMNCtCR2FEdFhIM2lyaW9FRCtieUdGNE5mOGpvNmhTaENidmR4S3ZG?= =?utf-8?B?Q1RuR0ZUNEs0MW5wZXIvY2pYK0RTellSUkFIZnZNYnFwTS92OUljODNCNitM?= =?utf-8?B?RDlZeE5ZRDBNT3NuVS9LazdDN256bU8rWlUvUm8xb2J1K3MyZmJ0K2NvdG96?= =?utf-8?B?L2RhdW9Ob0NOcVhYbmxOamZxeHNhOG9QVlgxS3FlZXZPZzdTU3MraWpRc09t?= =?utf-8?B?QWFQMDN5SEVxajdGZ0g4aFRFb3pXZFlJWTg5Ny9JQ1BEdTNVNWpScE94MlNI?= =?utf-8?B?UVVrOWpoQXlGTHJkOStOaUVJV1FoMC9vNHdISUlwTHdXK21oUWZOYUN5alpX?= =?utf-8?B?Z3BycjdRbnprUG13TlFrMHRXMzQvNmZpQlIxL0ZaeFZyYnpSd2c3eUMwc0o0?= =?utf-8?B?aTBQQ3ZDQmwxeFlzUm96b3E5eW9vVXNwc3NrSEVlMzRXd0dWRS8wQTdTSXFm?= =?utf-8?B?ZXVRN0pDVkNGa25RZ1VGcklMS1pKTFZKaG5PVHdKU0s5TXlkK3hDUlMycFZu?= =?utf-8?B?bFJZU0VtMUhuVzd4K0RRUWQzbTkxTmJRemhGeUJpL0JXTG56aDNsODJVN09z?= =?utf-8?B?NkFzZzRuMmd5dHN2TlA3dmkzMlYxeFA1VmlWdEFFNXZORW9HckV1djA5eHFi?= =?utf-8?B?endDS00xRDd3d0poSXF5NTlzTngwWXJITGhtSytLMjQxbEF3TnJCa0tYUlFr?= =?utf-8?B?dlEwWCtha1VWS3FyQWYvVkt3NjUrL29zM0hpTWtJRWR0bUYzcDdkcU13R1hQ?= =?utf-8?B?d2VNTVQzQXVFc3hLUHQ2Z25RdjdHdUtDVlNwd3d5THZ0OGh2WjJWYmRUdzhU?= =?utf-8?B?K3c9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: MyjtC+nn1Ra1tGvUHvlpJHOqYvM79GkX/9MURNz1utfZ1DiFvHMOo9sfsmW2qTAlQ9PIT8SiizAuwzWcy00TDSzp9MTUWYzIYocHVPvZsLFSbdtFfCCst2dBD3fzoDKmONRxf4YHkL+S/llZ39f02tbogKoov09QPHMBRnV2wLAUZgQywziz+ljgjqTn5u/ZK1uQtgDyXXTdhN9BcpoudyH7etHGDWh00zQ8Doh3n9BOSYqfd9/pq3jG93ls70gdRt7RZuR54WqabLFzvyWvbfVLK94f98SUgCajfPIMZLvX/1r6BCUwt6aP9Lo4umBVeLPNL2QNqmisEKxIC+gUEfNrNq8Fpu8qEneCejs79r1suHFJIQFi1Ve2DC+Zaj1c/rmJ+bPPMKKFffq6zqGqUtVrBAsFk1ygjfVt4NuxmPA8p1UhIxskanvb9d3nULDNV2+6PphLPcHJX3K7dAUX0di989z+mcwYBTX0dQng1j68hnEsFzFJHTHNi27P+5c+RcXj/5uQSfYg9xLWrKcl/ULgOLVfcapRmv1zehip7PK0fCEzs6EB5Fq3cDm/gB+/8O1Tha0NeAST5ZEWpwCi4lZtCNEHVzjPzFJ5h9P+PgIVkeXzdSrU8+ru1ZbR80oDN3mFpUU0dfoagZAoO1xYgW2TeRvVvven27N94/fg837GNBqceJjRLdjzqccK4XkCMwoA6wwtGbjYT+ghVqaz+CwydgkPPmD6hxYhgvtLktQWtTFr+xi9TGZS8nltxVhLqtSNCjQM7YLjlmWuD+xPOYripBeNARO5z4gzVky90PtUNuRUZB3gnvZhg4slXniaoMWvWsiYDLWaD3IBqfZoVLkuOp4kOIYfeu6RqU1rq6gOZgAq5tOIf+C1sb1+PhuUv2s8FEKKl4RnilSE5MTlNw== X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 659dff21-ada6-4933-1de7-08db66ba3f08 X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Jun 2023 18:17:11.4132 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 8eu3gPnHIERiEf9I//jkHSIj1IYXbHzjCw9nu/s32yBfi7GzN68ZELnovMtSdLqBM1MR8Ga0RbL+yrqBwqVRLux7/fuPX8oXMzLLmyfJWCI= X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR03MB6793 On 06/06/2023 6:23 pm, Roger Pau Monne wrote: > diff --git a/xen/arch/x86/include/asm/alternative.h b/xen/arch/x86/include/asm/alternative.h > index a1cd6a9fe5b8..688b554099b3 100644 > --- a/xen/arch/x86/include/asm/alternative.h > +++ b/xen/arch/x86/include/asm/alternative.h > @@ -24,7 +24,9 @@ struct __packed alt_instr { > > extern void add_nops(void *insns, unsigned int len); > /* Similar to alternative_instructions except it can be run with IRQs enabled. */ > +#ifdef CONFIG_LIVEPATCH > extern void apply_alternatives(struct alt_instr *start, struct alt_instr *end); > +#endif Given that this is called by common code, it shouldn't live in an arch-specific header, and it absolutely shouldn't live identically in 2 different arch's header files. As this is a cleanup patch, we should gain a xen/alternative.h which depending on CONFIG_ALTERNATIVE includes asm/alternative.h This will help RISC-V too (a little). ~Andrew From xen-devel-bounces@lists.xenproject.org Tue Jun 06 18:45:26 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 06 Jun 2023 18:45:26 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544154.849710 (Exim 4.92) (envelope-from ) id 1q6bgB-0001h7-3K; Tue, 06 Jun 2023 18:45:15 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544154.849710; Tue, 06 Jun 2023 18:45:15 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6bgB-0001h0-0m; Tue, 06 Jun 2023 18:45:15 +0000 Received: by outflank-mailman (input) for mailman id 544154; Tue, 06 Jun 2023 18:45:13 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6bg9-0001gu-TU for xen-devel@lists.xenproject.org; Tue, 06 Jun 2023 18:45:13 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6bg5-0003Vo-O4; Tue, 06 Jun 2023 18:45:09 +0000 Received: from gw1.octic.net ([88.97.20.152] helo=[10.0.1.102]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1q6bg5-00052v-He; Tue, 06 Jun 2023 18:45:09 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:Subject: From:References:Cc:To:MIME-Version:Date:Message-ID; bh=JRtzs4xRN7pNQ5uEXaJQN4ZGwHmvbzKwJpEF6DaqgRw=; b=Xq7jHwEN+r6Yn9R5fnqfFmBtUx UbLbElgtbSPrK1x4KOXvoSNy2OHkfi7ZbTK8K3VqKG3OHksMmzjtsjCkZIDJkk2a+3FIWx7+hsRsf vg7a5OAX+L5bUhLG7sXV2u6QhQck9U1ec5mtV73c7wOHbalA6RFKsYkZzubXJVeUxJPs=; Message-ID: Date: Tue, 6 Jun 2023 19:45:07 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.10.1 To: Michal Orzel , Julien Grall Cc: Bertrand Marquis , Stefano Stabellini , Volodymyr Babchuk , Xen-devel References: <20230601085001.1782-1-michal.orzel@amd.com> <7C760D1D-DAAE-48AC-8B2B-E6140452BE4A@arm.com> <73a143ee-8301-e0c0-a3fc-83ec10441c4c@amd.com> <703ccd1b-1908-4f5b-3b48-e02d317a2090@amd.com> From: Julien Grall Subject: Re: [PATCH] xen/arm: debug-pl011: Use 32-bit accessors for broader compatibility In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit On 06/06/2023 08:04, Michal Orzel wrote: > Hi Julien, Hi Michal, > On 05/06/2023 20:34, Julien Grall wrote: > I can think of the following patches: > 1) Use correct accessors for early pl011 on arm32 and arm64 > - this would use the accessors depending on the given register size (ldrh, strh, strb) > - this would switch arm32 from 32-bit only to the same behavior as arm64 > > 2) Support for 32-bit only PL011 in early pl011 on arm32 and arm64: > - this would result in overwriting the changes done in patch 1 (but I'd prefer not to do all in one patch for better history/backporting) > as I'd have to introduce some macros e.g. PL011_STRH that would be defined as strh in normal case and str in mmio32 case, etc. I could also > just duplicate all the early functions and use ifdefery if that's what would be preferred. I would be fine with introduce PL011_STRH & co. > > 3) Use correct accessors for runtime pl011: > I would prefer to do what Linux does meaning using the largest-common accessor in normal-case (i.e. readw/writew) so that we can have a generic helpers > (i.e. use readl/writel in mmio32 case or readw/writew in normal case). Otherwise we would have to use the accessors depending on the given register size > (like in early printk) which destroys the idea of generic helpers. Linux for earlycon also uses per-register size accessor and in runtime - largest-common. Make senses. Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Tue Jun 06 18:47:53 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 06 Jun 2023 18:47:53 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544160.849721 (Exim 4.92) (envelope-from ) id 1q6bid-0002Fe-H2; Tue, 06 Jun 2023 18:47:47 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544160.849721; Tue, 06 Jun 2023 18:47:47 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6bid-0002FX-Do; Tue, 06 Jun 2023 18:47:47 +0000 Received: by outflank-mailman (input) for mailman id 544160; Tue, 06 Jun 2023 18:47:46 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6bic-0002FR-HW for xen-devel@lists.xenproject.org; Tue, 06 Jun 2023 18:47:46 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6bic-0003Y2-5r; Tue, 06 Jun 2023 18:47:46 +0000 Received: from gw1.octic.net ([88.97.20.152] helo=[10.0.1.102]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1q6bic-00055t-0K; Tue, 06 Jun 2023 18:47:46 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=/N31AeL/2zp+WR28V0XOQ1htyMHiGIqd9k4yaHInVz0=; b=EG6EHye8zKY7JTHmRsR4cEbCrT fU1WJlsnZ2m04GTdtohKzJWW5WQfHYB+YNYLwt1lfDmbEQjerVs0jCnOzIv3OWG973as9HOt//gVD eGIa6uVb3lH23UCsw2X+S/uKGWOjoxwl2W2Az/bE36Xah6td46b3YyB0ihZ4lQkF5Ojg=; Message-ID: <898ec4e0-6351-2279-110b-8833dcfa0d94@xen.org> Date: Tue, 6 Jun 2023 19:47:43 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.10.1 Subject: Re: [PATCH v8 05/12] arm/sve: save/restore SVE context switch To: Luca Fancellu Cc: Xen-devel , Wei Chen , Stefano Stabellini , Volodymyr Babchuk , Bertrand Marquis References: <20230531072413.868673-1-luca.fancellu@arm.com> <20230531072413.868673-6-luca.fancellu@arm.com> From: Julien Grall In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Hi Luca, On 06/06/2023 14:22, Luca Fancellu wrote: > > >> On 1 Jun 2023, at 11:17, Bertrand Marquis wrote: >> >> Hi Luca, >> >>> On 31 May 2023, at 09:24, Luca Fancellu wrote: >>> >>> Save/restore context switch for SVE, allocate memory to contain >>> the Z0-31 registers whose length is maximum 2048 bits each and >>> FFR who can be maximum 256 bits, the allocated memory depends on >>> how many bits is the vector length for the domain and how many bits >>> are supported by the platform. >>> >>> Save P0-15 whose length is maximum 256 bits each, in this case the >>> memory used is from the fpregs field in struct vfp_state, >>> because V0-31 are part of Z0-31 and this space would have been >>> unused for SVE domain otherwise. >>> >>> Create zcr_el{1,2} fields in arch_vcpu, initialise zcr_el2 on vcpu >>> creation given the requested vector length and restore it on >>> context switch, save/restore ZCR_EL1 value as well. >>> >>> List import macros from Linux in README.LinuxPrimitives. >>> >>> Signed-off-by: Luca Fancellu >> >> Reviewed-by: Bertrand Marquis >> >> Cheers >> Bertrand >> >>> --- >>> Changes from v7: >>> - Fixed comments for sve_context_init and sve_context_free, >>> protect arch.vfp.sve_zreg_ctx_end, arch.zcr_el1, arch.zcr_el2 >>> with ifdefs. (Julien) >>> - Given the changes, dropped Bertrand's R-by > > Hi Julien, > > Are you ok with the changes I’ve done? Are they addressing your last comments? Sorry I was away last week. I will have a another look in a bit and commit if everything is in order. Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Tue Jun 06 19:08:31 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 06 Jun 2023 19:08:31 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544166.849731 (Exim 4.92) (envelope-from ) id 1q6c2S-0004iu-6V; Tue, 06 Jun 2023 19:08:16 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544166.849731; Tue, 06 Jun 2023 19:08:16 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6c2S-0004in-2r; Tue, 06 Jun 2023 19:08:16 +0000 Received: by outflank-mailman (input) for mailman id 544166; Tue, 06 Jun 2023 19:08:15 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6c2R-0004ih-14 for xen-devel@lists.xenproject.org; Tue, 06 Jun 2023 19:08:15 +0000 Received: from NAM10-MW2-obe.outbound.protection.outlook.com (mail-mw2nam10on2060a.outbound.protection.outlook.com [2a01:111:f400:7e89::60a]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 7b2ea073-049d-11ee-b232-6b7b168915f2; Tue, 06 Jun 2023 21:08:13 +0200 (CEST) Received: from MN2PR12MB4408.namprd12.prod.outlook.com (2603:10b6:208:26c::14) by SJ2PR12MB7917.namprd12.prod.outlook.com (2603:10b6:a03:4cc::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.32; Tue, 6 Jun 2023 19:08:08 +0000 Received: from MN2PR12MB4408.namprd12.prod.outlook.com ([fe80::61d6:7feb:e8e8:bc4]) by MN2PR12MB4408.namprd12.prod.outlook.com ([fe80::61d6:7feb:e8e8:bc4%6]) with mapi id 15.20.6455.030; Tue, 6 Jun 2023 19:08:08 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 7b2ea073-049d-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=iqynDioXzhMBQcZnCuw4HgvQ8/6Ju0SYsp0b+rFGTZ2IHLFImT5pEmgNcWDuwrtAzCrld2IcmC9xesMKVNbR/CgcatPz375FrC6vMlIx5Bve6mulIUDK2yztR9pWo3jOsaFaTl0qV5zgZDj3Un13HxHemiWMBZkNatHentprKgWnyNn3tMMok11hDBqlibdzuByQQE1luPKVLmYMFj2QsmeJ7RnWVt0QYM2UbxtfjmSfyML0pBFU0QNhyWj596Xbs0HsVGaHAlbA+m7QFc2CSxyGAFIe4g6RS43m4DA6kXb14tPTHYuwFP425GcVatxJbzYqzLJFQ3Sq2UWQoYmO4A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=elbq9BM8aMXeGiCqJfyYwlMljiOFmcpGL/tOAUT+CEw=; b=UuzkMnnVz3SXEn/6omNLwJDoc+sElSu3VGxYX0LW306bdSoYO52P/o96lZF3MDYQJISS/EDdKQEGU9ZQAsplmCPPVmJwlCUwRcU91/b4uVgdJ1FbspBXQ1+/lpcDazKV6BFv9uzniqYCmZ4TCFLMBCjt/GUQRPeE3DJIMmmaIDkIHIas+kjDKp4jX3DjPmg0YoQGXVDncKViaNAKC/ngQplDpLPQzAIY3KeyC3dEnKYI4Le3E+/on8rFrtrj2JJo6M57qT4s48F6nme2nhkkQ0dL6k6VMI9NwN72KbcbA04kQzKEfRrZ/N095FwPjfNqNiJcYwxaK1mVIkzayM8Tjg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass header.d=amd.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=elbq9BM8aMXeGiCqJfyYwlMljiOFmcpGL/tOAUT+CEw=; b=dfsfmkwIOWaEZ1ZWI8dBC+NrvC2N1UHDreKc3GvNKwVwYhjVSTpqQXAxhQcKxHh7kyUpTrVrjBRJ1xtQiIMRRT2W8uB+iCqjUVnqXJ0uPr/dnhJc/1/cWadNiX6IcR35dED0n7XLpP8XYjaULowKouQG3ZqLeBLni5Vf0nwghqE= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=amd.com; Message-ID: Date: Tue, 6 Jun 2023 12:08:05 -0700 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.11.2 Subject: Re: [XEN][PATCH v7 02/19] common/device_tree.c: unflatten_device_tree() propagate errors Content-Language: en-US To: Michal Orzel , xen-devel@lists.xenproject.org Cc: sstabellini@kernel.org, jbeulich@suse.com, Julien Grall References: <20230602004824.20731-1-vikram.garhwal@amd.com> <20230602004824.20731-3-vikram.garhwal@amd.com> <4a24e070-18d8-8f48-465a-10a0108a7cc2@amd.com> From: Vikram Garhwal In-Reply-To: <4a24e070-18d8-8f48-465a-10a0108a7cc2@amd.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-ClientProxiedBy: SJ0PR05CA0185.namprd05.prod.outlook.com (2603:10b6:a03:330::10) To MN2PR12MB4408.namprd12.prod.outlook.com (2603:10b6:208:26c::14) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: MN2PR12MB4408:EE_|SJ2PR12MB7917:EE_ X-MS-Office365-Filtering-Correlation-Id: 32f4db1b-d200-45ce-3f20-08db66c15d61 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: Fc+sI9dTlUy9wnt7Zg1Fn8AHQ1G8k0hOFBJVppY1gCzBUi7tyy16bBC6mGJhjaNsAsT/J/JTJcA2WIoR+VfPyctknFQvIqNx85nYobcm85qHrFqGUbrmzixv8ulXkvpd+xHSgrtKw+RNLhakKOkGgyj1ElIxHajgVc85IhkY4zZDmS4SNtCDJ62+vdchAFxzjqC1qp9wHN100YaSKfhyNqpIPK7blyfxw53xYZRprTPLZZ3I+KCagMJc0w/IB1Lgru9Ul5dxXGryqxYP1IpSRuh+qfEoQb0bQv+0nGj7cu0stEyoLuWUMqTLPWy0ZStiD8KfeySE/e4ur6tIP63q7fqMe4vEB9ZjQ5slPlvAzU34xaQ4a2iyen3JooBJXKeVg3mcAIY5i5c1YBVWfecV/o3ir2pTRfjgM27YkSsKZEDh6KR8vSxlNhOYTriANkJbvhYeOGkMVLJPtXkGC7+BYzIwwj3BnXo4iZMZ19NUlP/zoirFHy9vH1bLFCKEZAxMh62jAVVWIdvWpisQCU9HzaHn/kL0siU+t+hQi56dexs3t8//EZp91PJihz+OBb25SHsX9nCYGPyoW5aJ873LcwOWTxbjJd1UFTUgYy4aoF4+6z8JXA5s/0F69VLu2NNzYdbwuJnj9Ya6Vhuhm6SAuQ== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MN2PR12MB4408.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(346002)(136003)(366004)(39860400002)(396003)(376002)(451199021)(53546011)(26005)(6506007)(31686004)(6512007)(186003)(2616005)(83380400001)(6666004)(36756003)(2906002)(6486002)(8676002)(8936002)(44832011)(478600001)(31696002)(38100700002)(5660300002)(86362001)(4326008)(316002)(41300700001)(66556008)(66946007)(66476007)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?SnIxNEFkVXFsVVkwZVBNWmRFVm9KdUlCU1NFelpYVVIwMUFrM2g3T1lUVGxq?= =?utf-8?B?NGlWZjNGemtqeGN4aU14emxLK2UzNDJacFlXbDhldXdpNktJUkxmRkRWV0FD?= =?utf-8?B?ejYrMGxFamJ0VUV5cHdDNy9lK1ZycXBMMUpCMTFkaEV2bm5hWk5iU1JtOU4z?= =?utf-8?B?K2Z1NXR1d0libWtpYnFBZ05XS3M5YlVLMDNSdnlMZWY2amdUR2JjUjcrR2tF?= =?utf-8?B?d3gxaUdEY1R5UnBvS0g5UXcxYlFCbVFEZEljeFpRUlkzSjl0MmtaenZpdVY5?= =?utf-8?B?cFhtWG0zU3c0ejRjVkRlTEEwK2JFR0RlWHNRNjJLOXJpVk5Oa01tMkZzaTMr?= =?utf-8?B?N0g5YmhXZThZckVYTUVWZ3FLU3pVYWxpK1Fnc3FMNjFUaXUwVTdWaWZUek4v?= =?utf-8?B?Z0hKSUFkRGR0L1pPbi9iZktaa3lYb0xmdDdyTkRTZmt4aGg3aTFjSWVMNTYx?= =?utf-8?B?aER1VjhjNVNHdTJjWU1sUXJ5L1pWZDlnRzE0S0l3d0JyQ212WEdpV2xhTWwv?= =?utf-8?B?MUJId2hzZkpSRThBbDRyTFJENUliNXBpV3k4THhkUytKZEcwTzhpVmJQTWJ3?= =?utf-8?B?bmxhakl5MDl6ZWNaR3ZHS1czamljcldmdDRsNjhUS0hJUHBjUjhwbWh4TjVS?= =?utf-8?B?NnhMeXdKSWF0M1cvUER2ZnBNbks1azVVbERGd3NJMjZtOCtqUkNuci84bWw4?= =?utf-8?B?WjBkTFhhZXo5aThwMnE1a3dtczZqSlV5VTErZXZoQklWNGE4ZjZWYzljLzBD?= =?utf-8?B?dFdWWFM0S3k1VDVxVElTeWZZU294VkdGSzJQcXlKa3pnaUo2Z1lVem1BZThX?= =?utf-8?B?SmhOZ0VEYlZEWk5lRDdraFpMbmJIcVh6V2QxNTIrM05yVzd3OFcvS0s1VFFG?= =?utf-8?B?QWdhVWJYUnRJQ2dDY1FwWTlMeHBzMCtja0pmNENZWUZiVDR5WVhvaVNveUZL?= =?utf-8?B?QjRHSng4R1FpRXVPc1BXN1RyYXcyZllXQXExeml0RmoyV2NTUUNwenFnZEIr?= =?utf-8?B?ckZxOEM1WHFpbkpGQVgvZSt0YUdYSjB5VGorRmNtbUd6YWtpWDZVMFNjUW4w?= =?utf-8?B?a21vTHdPZVJTcndQUjQ4TTRmdGI0blgwTUpLUTY4d01nd3gwRERNK3lxYnZY?= =?utf-8?B?TC9vTXNEOWd2ZTg5WENrMjBLVFYvSTZhRVVQbEJnZUxGZG9DSTduL3NUNmtJ?= =?utf-8?B?RTBPYVUyZ211REFaeVU2ck11aS8zbFN4ZWFld1hFZWNrczRBYmx5OHN1amxB?= =?utf-8?B?ekNyakdVcEhSKzZ1NGZROFZyV2Y1L0s0aURYZ2taZVQ5MGVyeVZvUUlFK2w2?= =?utf-8?B?ODZPOW5FbUptUHQvcXZvTytyL3dnYUs4eVltOGlEclNiMm9QN1FJUE42N2hP?= =?utf-8?B?VDVpdWN0TGZCenc2ZGRaYlF5UkMyUkpBYTJTZFExZUZlUVMwYW90RXB2K0ZY?= =?utf-8?B?SnVmN0tXZlVCTUl6YzArZ1RWOFR0bkdJNlovUVhjYTh6SzBQNmMwS1ltUGRL?= =?utf-8?B?eW5lYTZpZ0VoNVNpdmNJeldLZ3M3eHhBVi9sUUdqYXJPVWRlSk9Va2xKeGFw?= =?utf-8?B?RWFQdVBoNFczNXRCVlRSWVd3UzVYQWdROSt6VGM2K0JEZnlFTkVVU0NhLzJJ?= =?utf-8?B?OExDNEMxZU1uVlM5bGRya0tLaGliMGZoRDljRU9zWUlrTVpXckx0eS8vRDFw?= =?utf-8?B?VnplZ3NHUnpieTB5dTI4ZHJZaWYvZVB5WnJOcDY0dUdNMnJuNEV6V3pidks3?= =?utf-8?B?bytkQXRZdC9HUHcyOXNURHhEZ1E1ZXk1ajlZYU9FUEg0NDZCZllQMDIySkRT?= =?utf-8?B?dDc0ZVdoZXZHZ28wK3daUU41Q1d4dGlyMEIra0dGaENkQU1qTmYwMFY5d0VG?= =?utf-8?B?QlFHTmhkb1lSdGZXOC9BYkRFMEtBWWJoNmk5Qm1BNzhNMjJZdENmbENLN2hz?= =?utf-8?B?Smk4SEkyUmtzbXBzWTQ4RmY5SXBXUk1BTU5BUWg0dXdXbDArck9qM1V5a1c3?= =?utf-8?B?Zkk5NStXN3VaSEhSU2dkL1BSbFNGSVorNzBYNkZYd0k1S01PWmdnOFNZWG1h?= =?utf-8?B?aTdMMlFiVnhIM1FWR0t2VVdOSlVYd0lDaStYTmZzanlHSTU5cWN1cE5CYVdP?= =?utf-8?Q?sK9lVbuq6uE0lbDyvAsRgbv5z?= X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-Network-Message-Id: 32f4db1b-d200-45ce-3f20-08db66c15d61 X-MS-Exchange-CrossTenant-AuthSource: MN2PR12MB4408.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Jun 2023 19:08:08.7023 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: MaNYWCtHqKVFg9aH9lyDU61zzH3/f8XUvLN9AevE9F54ukZjIdDrhElFnEkcOM9UVTsmJJdTJbo6tQ7KQ2Rbjw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ2PR12MB7917 Hi Michal, On 6/2/23 12:14 AM, Michal Orzel wrote: > Title: s/unflatten_device_tree/__unflatten_device_tree/ or you mean to propagate > errors from unflatten_dt_node? > > On 02/06/2023 02:48, Vikram Garhwal wrote: >> This will be useful in dynamic node programming when new dt nodes are unflattend >> during runtime. Invalid device tree node related errors should be propagated >> back to the caller. >> >> Signed-off-by: Vikram Garhwal >> Reviewed-by: Henry Wang >> --- >> xen/common/device_tree.c | 15 +++++++++++++-- >> 1 file changed, 13 insertions(+), 2 deletions(-) >> >> diff --git a/xen/common/device_tree.c b/xen/common/device_tree.c >> index dfdb10e488..117ccccb09 100644 >> --- a/xen/common/device_tree.c >> +++ b/xen/common/device_tree.c >> @@ -2108,6 +2108,9 @@ static int __init __unflatten_device_tree(const void *fdt, >> /* First pass, scan for size */ >> start = ((unsigned long)fdt) + fdt_off_dt_struct(fdt); >> size = unflatten_dt_node(fdt, 0, &start, NULL, NULL, 0); >> + if ( !size ) >> + return -EINVAL; >> + >> size = (size | 3) + 1; >> >> dt_dprintk(" size is %#lx allocating...\n", size); >> @@ -2125,11 +2128,19 @@ static int __init __unflatten_device_tree(const void *fdt, >> start = ((unsigned long)fdt) + fdt_off_dt_struct(fdt); >> unflatten_dt_node(fdt, mem, &start, NULL, &allnextp, 0); >> if ( be32_to_cpup((__be32 *)start) != FDT_END ) >> - printk(XENLOG_WARNING "Weird tag at end of tree: %08x\n", >> + { >> + printk(XENLOG_ERR "Weird tag at end of tree: %08x\n", >> *((u32 *)start)); >> + return -EINVAL; > What about memory that we allocated? Shouldn't it be freed in case of these two errors? > For now it is called from boot so we do panic but later in this series this could result > in a memory leak. Am I correct? Yeah, that's correct. Let me add the memory free handling in v8. >> + } >> + >> if ( be32_to_cpu(((__be32 *)mem)[size / 4]) != 0xdeadbeef ) >> - printk(XENLOG_WARNING "End of tree marker overwritten: %08x\n", >> + { >> + printk(XENLOG_ERR "End of tree marker overwritten: %08x\n", >> be32_to_cpu(((__be32 *)mem)[size / 4])); >> + return -EINVAL; >> + } >> + >> *allnextp = NULL; >> >> dt_dprintk(" <- unflatten_device_tree()\n"); > ~Michal From xen-devel-bounces@lists.xenproject.org Tue Jun 06 19:09:56 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 06 Jun 2023 19:09:56 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544172.849741 (Exim 4.92) (envelope-from ) id 1q6c3t-0005Fu-GJ; Tue, 06 Jun 2023 19:09:45 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544172.849741; Tue, 06 Jun 2023 19:09:45 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6c3t-0005Fn-DC; Tue, 06 Jun 2023 19:09:45 +0000 Received: by outflank-mailman (input) for mailman id 544172; Tue, 06 Jun 2023 19:09:43 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6c3r-0005Fd-RQ for xen-devel@lists.xenproject.org; Tue, 06 Jun 2023 19:09:43 +0000 Received: from NAM12-MW2-obe.outbound.protection.outlook.com (mail-mw2nam12on20619.outbound.protection.outlook.com [2a01:111:f400:fe5a::619]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id b04e08b7-049d-11ee-b232-6b7b168915f2; Tue, 06 Jun 2023 21:09:42 +0200 (CEST) Received: from MN2PR12MB4408.namprd12.prod.outlook.com (2603:10b6:208:26c::14) by BN9PR12MB5113.namprd12.prod.outlook.com (2603:10b6:408:136::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Tue, 6 Jun 2023 19:09:38 +0000 Received: from MN2PR12MB4408.namprd12.prod.outlook.com ([fe80::61d6:7feb:e8e8:bc4]) by MN2PR12MB4408.namprd12.prod.outlook.com ([fe80::61d6:7feb:e8e8:bc4%6]) with mapi id 15.20.6455.030; Tue, 6 Jun 2023 19:09:38 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: b04e08b7-049d-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=TmyFKrqckVjAetdczLC02ZC5lBek5/9BhGfF6m10DgTdytRYMtSvAuMVbDdFflWAZbyFhvX7hgAM1YWoo510ra1U+5jNcgG0+OnBuBLZ6k28cCqr417odulyWByYpNIF0jGuBefLvquJZjZr1Dnyzlh86QJaG3D+f5t9W8rDOmV80kjvXmrJ2VM8lHv9GWWLXF+Fj6OMbh87KKoFDVd270S00alKJYgx9o0QKv0hiubKwij5B3RuSslYuV2rVlx2uzTzhv8ikq1sSKdCBOhrLfnKf/om3v435nivCNA6TayrIu2kQEPa8JrPsUuMcDIYZ0A8Y6on1WQkBMAmUvwMhg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=QRCCUnj7US0D9q0dJGoxlMNei8MnZGvl67+RcMEadJA=; b=gIZWQZBOs/w/LC0h5GCroiBMoDq7bCTAzmqWPIXfLilVNCJRn5D9ilzBazfr/Ys1GmFokzaHQGxD58LD7bHFrtjhnJnB5+7VKt/RSlOpoen8CNIPz5e6QRQUfujcLRxnocZ21xj9dvFwwnMdJ+BLe7qgsSdY0e984SvGeefCgG/hpxGtpUEdFZswi3tEhgf5YgikTKkF11U+vBIVuhFdk604dq2wR3xWwr86nJxYF6x65QXUDDpOQDW1704H4wwXnydPDWzp8ekhkuovoA3EUb2F/x+8mFAwDfQjDN7vkNS7BtOZE4kgJem2UjMRjC3P9ffL2ScHpMzY9B+GOZxVbQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass header.d=amd.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=QRCCUnj7US0D9q0dJGoxlMNei8MnZGvl67+RcMEadJA=; b=QSPXNYcubZ/QrCNuN58/1R63grTcU1PgsGQbWR37hHal7Z5zgW5PfSZIiFTMmFneJUei75Jj5O2cRSwJaTJBwNydu4s8ZM3x5YT7C75dYUM/ACQlCWFz0D95Cm2G9FU3IdfNjWbZpVxdVLNQmaOhOqm046cj8yjEY2KomP+YGwE= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=amd.com; Message-ID: <308f68a8-9eb5-87d3-aaf0-61a6af33fd33@amd.com> Date: Tue, 6 Jun 2023 12:09:35 -0700 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.11.2 Subject: Re: [XEN][PATCH v7 04/19] common/device_tree: change __unflatten_device_tree() type Content-Language: en-US To: Julien Grall , xen-devel@lists.xenproject.org Cc: michal.orzel@amd.com, sstabellini@kernel.org, jbeulich@suse.com References: <20230602004824.20731-1-vikram.garhwal@amd.com> <20230602004824.20731-5-vikram.garhwal@amd.com> From: Vikram Garhwal In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-ClientProxiedBy: SJ0PR05CA0191.namprd05.prod.outlook.com (2603:10b6:a03:330::16) To MN2PR12MB4408.namprd12.prod.outlook.com (2603:10b6:208:26c::14) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: MN2PR12MB4408:EE_|BN9PR12MB5113:EE_ X-MS-Office365-Filtering-Correlation-Id: 66f23599-98e6-462d-b806-08db66c19303 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: M+8Ma4fDQn4JIcf6ke2XeMQ8dlJlnv6hTyJCavFTD/TIDGAJbaCBnuuLhw97Cj/XjZzeY2xDJGxGgswqUE5GhdgeQRJZeJ9x05cZB1cwxBE4zB3h3CRrgL3o6PBirFYFGOUP8C3335Zd6QAIVS4Rfh5RoJS70MmOlmHA10pbeR4nTUuO3sw4QP2EbZyatEMgw5sjZaHlczxSOTH1eaQUNo+pf7AlEftQf7uHqgbaBwXv+bK8Xqs5QAvttj0m+XvAh7M5Z0wa30C1HGhZfFIIKLHT5JAG63q56K6pfEqTY1LRDdtGpWuAUPZXhw4+FNt3WCFgjSM8os8KXluREzQw385IIQgWzXPEkvf7fChx2kn6QtcOH7etoQmGmxcT3rSXjjnEpvKstk0hYfxvpr71YJ+lqiEHmy+SGVjbJxyDHZoApVyOsJaBHm5g084QlGoGOAE59UGsT29y1engDQSiEid3TZl6EsrYD+GuDcs8KVfuMpuZNdyTXLFL5HsMRafRG5PxfTKdKQn79j8VwTYLHmjfPjSShCqhZ5DTCx8QDEpl8ZcvrRzf6lWDZYVfmY0pEkQCNMgDk1IavzTLCGEdEKBuxf0kFG/IqrlFjWI56VbPOO784E3k85CsGCESwPIvEan4eaBl6a6QThXzIikfzw== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MN2PR12MB4408.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(376002)(39860400002)(366004)(136003)(346002)(396003)(451199021)(44832011)(6506007)(26005)(53546011)(6512007)(31686004)(83380400001)(86362001)(2906002)(36756003)(186003)(31696002)(316002)(8676002)(2616005)(5660300002)(8936002)(41300700001)(38100700002)(6666004)(66556008)(66476007)(66946007)(4326008)(478600001)(6486002)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?ZDNPenRCZkY1Yjl2UVJlNDFYUFUzM2QzYU9WTVFabm5OK2h0VkJUN3dYa3Br?= =?utf-8?B?RmJWZWpHVzMxWS9wa3BueGh3dDI5eTUvOGwwUTZYbGZCeTMvUTdocWRhNzNT?= =?utf-8?B?VndGMkV5MUtyYTBHMzhGUVp2T1lQdTNIYVZKVXcwRUZSNDgrcHhINEFqaEE2?= =?utf-8?B?Ty9EVFpFblZaclVtbHlnUmJ0alJYTmdtdUpsMVRSbWdtZU5TZGhVbVlqVUpq?= =?utf-8?B?UHY3azd2QS9GV2F0Y0NaR3c2V1IxTDJaUEJKVGVIVmJ6eFNvcEt1Z3BQMzAw?= =?utf-8?B?OU9MYzZPUHFKZFlsd2pDM0VocFIvTEJRYkRXcmdoNkJCcUxzVEF2dElacUkv?= =?utf-8?B?QnkyUHFwWENYV0xQRmFZUlZ3YjdqZy9XLzFWTWRtNWtsZlY2WmFBVU96RUk2?= =?utf-8?B?c2EydHlnQ0ttUjVKTzUraWRGa1c5RXZPbThEL0c0REduSUk4ZUppK09HcjR0?= =?utf-8?B?VmFldjE4ZXVMblMwYit1dlFiMkF3RG1NVUg3YWZRc1VxRExpMkZsaWs3RGFW?= =?utf-8?B?UFRHOUZDUEdDdDN1Yk4xRUtNYklzbVJxSndvL1pBemZ6SmtGWmVTR0pIdHJG?= =?utf-8?B?Z0ZvNTJoTGdjdHFTVFpmRS8vSk1mMGtHUTFTM1JWRWdNYTFFWFd1Vy95NDF2?= =?utf-8?B?V0Q4NyszckdQMTZ2N3VWZXNLOEU1OWRpczJMcWtUdGM5R1kyQWJieUd6c00x?= =?utf-8?B?KzJyZ2tjL3piaG1HdHJDZDdNYWNJS1ZsdnRTZ2hSakdXNFBuc1poQTRrQWw2?= =?utf-8?B?b0h6RG1COXdFWFdkOTc5ZFV0T053OFJVTjZvdVpVNGgrSkFJVTc1K1h6cVVk?= =?utf-8?B?OG13Q2pROEZ4RkljQ2hSZURmNjVYYXhVdytTL2hPbDR5YzJrb3V4ZXdlalpW?= =?utf-8?B?YXJEZ3dLUGY2emRYVXFJOWlqbndZMkpGTkVKRFpHdWlrUnZwSzJta3V3Z3NT?= =?utf-8?B?N1l6cStqd3hoNENXTmlyQ3F4L2lPbUtYTWZwMmN4WEU3T0NZUDNBN1czUWVv?= =?utf-8?B?L1VJOUJWeUxwem9pMko5aitEU1U0SEdEUXQ2bUN4T0NjVkZjYjdFV3JzeWhW?= =?utf-8?B?MVM1OXVsMjFEeUJja3JTVXFmSlhLQUV6SDJwRmlKM0d0a3pYRDY5NW1JYnhY?= =?utf-8?B?Qkp3MHpCSUVOcHZ2OTRGZ3I3Q3VIZG1kc2hJd3hQWXYxRC9kV21OUWtjTE5R?= =?utf-8?B?U3dGZTdWS21CcjVBZUJPdlc0K2hESUVYSzc5YUNqa0tHYVk4OXNxbnpraEho?= =?utf-8?B?bzN2TDBLanZydFg1VUZtcndIeVNTc0wyWDVzRTNjN0NRdHpaYUhHclBVWXNP?= =?utf-8?B?MVRBb21qQ1B6UDN2cDhuaHV4MHQ1RTlhOWpGSFNzQmY4enN2UVBoNlBraFo5?= =?utf-8?B?OERPTHh3T0E4UTIrcS9lVDFVMUJVQ3JiVmlVZC9kb2RLZi9xS1VaL0l0L1RJ?= =?utf-8?B?eWxJQ25zbUU4UFVHMGlEVExHaUZwdUtMYzdRV3IzdWJkRlQyZkdETW5RRzM2?= =?utf-8?B?eHpVR0JlSTR0ampqeURyWEdzNUtlWjBJazRmMnM0N1JLaFFXdTM0TVZnODFm?= =?utf-8?B?YzdLOXR2NHVMbUt4c2ZoLzExQWZXVGkvY2xuSlh1ZDczNWwvSnNHRHFYZURB?= =?utf-8?B?RHlJVml2TXhtYXdxdjFic1VkbDdvQkF6QmYvSG5OcGxLRDVpaHpQMDZyQ255?= =?utf-8?B?SU5nSmVmS2U0aEoyK3lSS1cxZTBEclVjMjgzQUtyM3ArUVJCcFN6US9mOHVU?= =?utf-8?B?a2RqNkszK0RsNXRqazUxeUhNaXhvMWx3cFB0VS9uNXZXdnZFQUxzVnNKVE9v?= =?utf-8?B?NGdNRE5saW5vNFZhU1JUVmVreVBwUUtrb0RwZ044aXJqUytsZFQweWR3U0tX?= =?utf-8?B?UEJUTnBueityS0xMcktvZFI4Q2R3NDFYb2lTNy9MREJEVTVzak4yamNISlh5?= =?utf-8?B?M0JlcTVhc0oxUVpsNWNLeVV4ZGNzS3R2VWZ4NjYyc2djZW95MklLOUx2Ukkw?= =?utf-8?B?Rmd2UG1kS3VFNEtxV2M5K3liUDczd1hsRWV0dE5CTnAzUTdNQ2xSQ1drU1Bs?= =?utf-8?B?UzRuUlJ5Vk5ZRkJWNHRmNGF4WEJvUUVwTTNsRlpsN040Yk5GSnFPNm9pZ2FW?= =?utf-8?Q?8r478GP0bOfcf45l6rj5Gbvwu?= X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-Network-Message-Id: 66f23599-98e6-462d-b806-08db66c19303 X-MS-Exchange-CrossTenant-AuthSource: MN2PR12MB4408.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Jun 2023 19:09:38.6182 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: tQ4dcU/yfnUf/YMs/YrWgbN4ENaMLzxh6Cl0dmvftjpiz3Bz1fyVl8ExCyRfOqnpwQ9KnQg35MG56tsJMwDUnw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN9PR12MB5113 Hi Julien, Will update the commit message regarding why we need to export this for dtbo programming. On 6/5/23 12:04 PM, Julien Grall wrote: > Hi, > > Title: > > 'type' is a bit confusing here. How about "Export > __unflatten_device_tre()"? > > On 02/06/2023 01:48, Vikram Garhwal wrote: >> Following changes are done to __unflatten_device_tree(): >>      1. __unflatten_device_tree() is renamed to unflatten_device_tree(). >>      2. Remove __init and static function type. > > As there is no external caller yet, please explain why you want to > export the function. > > Cheers, > >> >> Signed-off-by: Vikram Garhwal >> Reviewed-by: Henry Wang >> --- >>   xen/common/device_tree.c      | 9 ++++----- >>   xen/include/xen/device_tree.h | 5 +++++ >>   2 files changed, 9 insertions(+), 5 deletions(-) >> >> diff --git a/xen/common/device_tree.c b/xen/common/device_tree.c >> index bbdab07596..16b4b4e946 100644 >> --- a/xen/common/device_tree.c >> +++ b/xen/common/device_tree.c >> @@ -2083,7 +2083,7 @@ static unsigned long unflatten_dt_node(const >> void *fdt, >>   } >>     /** >> - * __unflatten_device_tree - create tree of device_nodes from flat blob >> + * unflatten_device_tree - create tree of device_nodes from flat blob >>    * >>    * unflattens a device-tree, creating the >>    * tree of struct device_node. It also fills the "name" and "type" >> @@ -2092,8 +2092,7 @@ static unsigned long unflatten_dt_node(const >> void *fdt, >>    * @fdt: The fdt to expand >>    * @mynodes: The device_node tree created by the call >>    */ >> -static int __init __unflatten_device_tree(const void *fdt, >> -                                          struct dt_device_node >> **mynodes) >> +int unflatten_device_tree(const void *fdt, struct dt_device_node >> **mynodes) >>   { >>       unsigned long start, mem, size; >>       struct dt_device_node **allnextp = mynodes; >> @@ -2230,10 +2229,10 @@ dt_find_interrupt_controller(const struct >> dt_device_match *matches) >>     void __init dt_unflatten_host_device_tree(void) >>   { >> -    int error = __unflatten_device_tree(device_tree_flattened, >> &dt_host); >> +    int error = unflatten_device_tree(device_tree_flattened, &dt_host); >>         if ( error ) >> -        panic("__unflatten_device_tree failed with error %d\n", error); >> +        panic("unflatten_device_tree failed with error %d\n", error); >>         dt_alias_scan(); > > This function doesn't seem to be called in the case of the overlay > device-tree. Does this mean that it will never contain any alias? > >>   } >> diff --git a/xen/include/xen/device_tree.h >> b/xen/include/xen/device_tree.h >> index c2eada7489..2c35c0d391 100644 >> --- a/xen/include/xen/device_tree.h >> +++ b/xen/include/xen/device_tree.h >> @@ -178,6 +178,11 @@ int device_tree_for_each_node(const void *fdt, >> int node, >>    */ >>   void dt_unflatten_host_device_tree(void); >>   +/** >> + * unflatten any device tree. > > Most of the exported function in device_tre.h have documentation. Can > you do the same here? > >> + */ >> +int unflatten_device_tree(const void *fdt, struct dt_device_node >> **mynodes); > > NIT: From an external interface perspective, do we actually need to > pass an extra pointer? Can't we instead, return the pointer? > >> + >>   /** >>    * IRQ translation callback >>    * TODO: For the moment we assume that we only have ONE > > Cheers, > From xen-devel-bounces@lists.xenproject.org Tue Jun 06 19:11:36 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 06 Jun 2023 19:11:36 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544179.849751 (Exim 4.92) (envelope-from ) id 1q6c5Z-0006jL-2b; Tue, 06 Jun 2023 19:11:29 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544179.849751; Tue, 06 Jun 2023 19:11:29 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6c5Y-0006jE-Ur; Tue, 06 Jun 2023 19:11:28 +0000 Received: by outflank-mailman (input) for mailman id 544179; Tue, 06 Jun 2023 19:11:27 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6c5X-0006j0-5Z for xen-devel@lists.xenproject.org; Tue, 06 Jun 2023 19:11:27 +0000 Received: from NAM11-DM6-obe.outbound.protection.outlook.com (mail-dm6nam11on2061e.outbound.protection.outlook.com [2a01:111:f400:7eaa::61e]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id ec6a4962-049d-11ee-8611-37d641c3527e; Tue, 06 Jun 2023 21:11:23 +0200 (CEST) Received: from MN2PR12MB4408.namprd12.prod.outlook.com (2603:10b6:208:26c::14) by CY8PR12MB7145.namprd12.prod.outlook.com (2603:10b6:930:5f::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Tue, 6 Jun 2023 19:11:19 +0000 Received: from MN2PR12MB4408.namprd12.prod.outlook.com ([fe80::61d6:7feb:e8e8:bc4]) by MN2PR12MB4408.namprd12.prod.outlook.com ([fe80::61d6:7feb:e8e8:bc4%6]) with mapi id 15.20.6455.030; Tue, 6 Jun 2023 19:11:19 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: ec6a4962-049d-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=E4WFsOFZYvOLKD/GBPap0Evp4AW33Z2MehM0pFPSYWGw5cS5DiutVUcqwojRd4GSZBN0So12k9WIqIiizoDOAFPTwxlza/jXVcXxxP8IjApY0Y5cCNPrcN1IVWB/VEZbLceHKKc3jOUbI2tFLckQftulnq3CPnzQr/rWEc8Vw8sPlm48RKdHqZfLtIGGWWxZsj4UDgxznFnGfj3XZRip5jHjqnqMhDWAc/pfRYDJUN3ZnTf00HAn7LnibFxzB8zNE3VwqMSzAB5RzlMO0drkonbKApl1n+Iks/cLyviaqqLoT/OX32mKjABpHg9WhWLzoo41QZZWDVFqsQHQ4cJa0A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=pAavKR/JqEpfQuRicepUGQ1c2BecBcy5U2yV/p6fzRI=; b=TJp7y2Xfbp5IM0R4a1UY/B+EmKsiqSrJGzfZCpZO/CRw5vG/EUsKNjfvBahOqxb14lgl+YhE7y2HSpryIekqL/y02JbWcUHhIemNUz/g+2X+1mJdI/8o7IHEXtl065Bgd7amsI1BZlqEq3KxRO7Nhh7YNg6b0IN4cPsDVF9EJ9QGBV+hnL39MxeOJnxSHt/DfPSNh4qRufVuJ8hHQLyHrIksOESW63ow/FyNSFEY2tU9TBt+9kVfPbQsgQljt61zY9/pCrEy4eyndFk55ULq7c9p6V43cmFeRvJVF48zytGPDFGBmBS2QCCTO5fLn7lDhF7Xzir7z3YNAAD55rskIw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass header.d=amd.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=pAavKR/JqEpfQuRicepUGQ1c2BecBcy5U2yV/p6fzRI=; b=3y1xPjQe3D12K8JYZWoN7WLUKy/XPz1cGUO31OfDJNDAE2u9X+Q84GSSzhmAeP9GcgBLpxNW4TfLyKFhFQQHmwiS6nH6TgCToD1kz4Eonno2qWANsgL4+VOcAM+YShKR4dMWpxpuujP5BfmKW+6TLv2My9ejD08U3J+9kwOvB2g= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=amd.com; Message-ID: <9766a2a6-6205-498a-9a86-801f7602647e@amd.com> Date: Tue, 6 Jun 2023 12:11:15 -0700 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.11.2 Subject: Re: [XEN][PATCH v7 05/19] xen/arm: Add CONFIG_OVERLAY_DTB Content-Language: en-US To: Henry Wang , Jan Beulich Cc: "michal.orzel@amd.com" , "sstabellini@kernel.org" , Community Manager , Andrew Cooper , George Dunlap , Julien Grall , Wei Liu , Bertrand Marquis , Volodymyr Babchuk , "xen-devel@lists.xenproject.org" References: <20230602004824.20731-1-vikram.garhwal@amd.com> <20230602004824.20731-6-vikram.garhwal@amd.com> From: Vikram Garhwal In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-ClientProxiedBy: SJ0PR05CA0050.namprd05.prod.outlook.com (2603:10b6:a03:33f::25) To MN2PR12MB4408.namprd12.prod.outlook.com (2603:10b6:208:26c::14) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: MN2PR12MB4408:EE_|CY8PR12MB7145:EE_ X-MS-Office365-Filtering-Correlation-Id: a19033b2-8052-428f-2c62-08db66c1ceef X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: L2Ai5B5ZXv0Wo5RaME+ZiL+I+5CXeyzJdlov1GOzioQb1YG4GijY+OoAWf3H7XYFjI4x9fzkRyV2vKoTZ2oq5Gim9FMMKVKr61Gc9ORogWANW005jt4k0u9l8Od8pFqyCV0lrd50zUVyy8YqQHIiXHP+mg8fnaJj8rmtsWg0DmQ9U9anI5Ob+/2ZsB06Lt3YpmDuYaiBWRH0tik8woul+Bjg+Rq8euQ5WoQfN4FGhmb0+MfEIsz89mr1ZsutVXv8SunPUvRnoKqOJWxUhtSZn9ceCKqywttyI0I4rNgOM8L4Jr7RZxgfLu8JOr6CrB+9lkSlsqYqMNXco4JlOrV0XBO71G4iECz+s8pjaIVKHB9i48o5x6Jm8Nm7zehi2RSsBgc1NQnmRfmBeCIzEBtjoV+9uHEl72MN2cNFa44n+hZkXgMptwNvKu7t+0Qu99IZCxCdlKaITpTtQeLZmzJNa7258AsSCqtpgWEeGQCElm1CgeG/6Ybnyr7OyDrUKBp8UOOIY03KIXzgi95kJ7E2vTwQEFht/lyVCIfrydnK30Q+Wpdt3azmdRXepJA4yb1PGyIJbfXc9pNHpiCnQ/wp2gEzcEy8SlcwN7ogdwil0Zhnj1pQYgCFBj0+D/0LjnaoftJB3gaKp+LM7A8scTWOpg== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MN2PR12MB4408.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(396003)(376002)(346002)(136003)(39860400002)(366004)(451199021)(66556008)(8936002)(66476007)(4326008)(66946007)(8676002)(7416002)(316002)(54906003)(110136005)(41300700001)(2906002)(478600001)(31686004)(5660300002)(44832011)(6486002)(6512007)(6506007)(53546011)(26005)(186003)(83380400001)(6666004)(31696002)(86362001)(36756003)(2616005)(38100700002)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?M014cVRSa1JuMk1Db3ptbk8rMXg1bCt1bWNSQS9ETGc0WmtpcW0zRGx5eFZ6?= =?utf-8?B?Qk1UaUU4NDN0MndYdWdQUFZSclA3QllnZXRSSWFxTzU3YWtYR1l3TE1Xc1U1?= =?utf-8?B?YXZKYU1SM2RiR2ZCKzltQStTWVhucDZiZ1pjdlJNK3FOVnZuVExJdm5LZXNS?= =?utf-8?B?RnM5TUlLbnI4KzdiNDFTcEVyOGxuNHZ4OTBjM0pvZlRWZlI3YXJ5YWFaa2Jl?= =?utf-8?B?Tk9qeUVDTjN3b2NUb2ZpcVRHWG9hU012UjJKNFBJZ3dEUlNpenZkNkcyajZF?= =?utf-8?B?cGNVcEdLUVAzcHZQMEFoRG9ReEFKRnQ4bWhEd2N1VG5lNGtVMjk2R1ZCWFkw?= =?utf-8?B?UitKQWdEYnFxU0ZDQ2RJcFdRemVsdEUzRzIzVDFtK2lzZVAvVHhhR3hHVWFv?= =?utf-8?B?WTNtUDB6Um9jRDBOYzFWWDFyNFAxZUVjY0Z1dVlmNFlpZktZQjJuc2xVc1pa?= =?utf-8?B?U2Q0VVBBQkR3YVlZVG5PTWgwK2ZKTFRHVlZodEZMQWZlWEpCdVNVQmc2MUJX?= =?utf-8?B?bE91QVlLSmlOa1ZzR2N6dVRKa3VrSWV4L2k4SWZvVmRUR2pCdGZqN2YwMmZr?= =?utf-8?B?cTVzZGg0K2J6MWxrUkF3MTFBZ3ptYy9YaSsvdlBoUUkwZ05pb2tQY3RWRHZF?= =?utf-8?B?Qnoxc09mRGUrc1JxRWEyWjgxazVhUjdPcWxDaWg1UUtOcGZWSkZySGJUYm5G?= =?utf-8?B?Nkt4NW1lK1I1Y0NoQXMyL2NXU2NhbzNhY1VZWklOQTV6MnBNc2cwL0NHWUF1?= =?utf-8?B?bmI2cFdFN3hxL2ttaWoySWFrbXJKNGpsdUkzSkxNL1hibWdwbWFyRTJrSGF1?= =?utf-8?B?cTVmcmFPbHJuVkIvY3NGYkQ3QjA0TFVheGQxalFDdVZwQnphUHJOTENrN3Y5?= =?utf-8?B?M2Q1UWVHQmNyVXhHNUN0dUFmQTRnRFNndGZrQ3VJYmtDNTJkWkdVbVVLaU94?= =?utf-8?B?d2JlODl5d0g5TGdqSHpMdlpiMEc2ZDVuMUMzUWZuaUtmQTg3Y053b3VxZUQ4?= =?utf-8?B?QkpxR0xBdCtXTGxRMDVVd2tmQ1JVTGI1WGt5K29LZkx1YkxZNlFHaFFsQnZQ?= =?utf-8?B?UkZKWktPdFM0OURoWXkveVpKVWZxckVGbzRYck5RQjlqeTJCVk12NGIvNmMw?= =?utf-8?B?NmVCQ3R4TGJkWlRNNnhNb045dmtrUjBaZDJtWElFQ3g3Zi82Uk1ZZUFMZ0Vw?= =?utf-8?B?aWJnYi9GN2ZSQ0VDemQ2UmZ2Z3lhM2llTVdnS29VRGt6Slc3NjlBcDNFa1cr?= =?utf-8?B?Y0F5eWZpNTlSSHBSSUZ4ZC95TERjWVh3NklvR0dOcVoyQXRRQ3VsU3ArL0gr?= =?utf-8?B?RTB5S2Fub3M1MG9YL0dWejdpVjEyeUQ5Yk01SzVZOTIyTlcwblh6ZVJmeGN3?= =?utf-8?B?MW44RlNiaHhqSEtSVWN4b1g0b0Jadm9XZE9FdWZvV2NPaU9YVmNZMGpwdjEy?= =?utf-8?B?U0ZITVpkSGdVUzMzOWpwSnltM2dmbXlnN2t0NlIwdnNka293bjNFTGd6TSto?= =?utf-8?B?QmVQRDZveHZlbGtvaURyZHFLZXdlM0NlejQwc0VxZFhYTmNFWWxVcTlhMDRl?= =?utf-8?B?NVBtZldKdkNQSHdhYUkwNGNRb0o3eXlVUTZsekxyMUgxUmRuNGFzTE1ZS3Jy?= =?utf-8?B?QzFHVlBqVUhkSEZLMG9TdDZkaVR1SHhoSWNXcmhxUVRUcVBBZXRTTTRQai96?= =?utf-8?B?blJOUm00OFRxbXVrM1l4eXIwc1cyMndmNkFjMVRMRHhad3M2SmR4Ri9acHcz?= =?utf-8?B?QUo2cGNPTHhJUWs5MmFtMy83aGovSWFRUjFyK25kQ21jcSt1aHlUdW9FSld3?= =?utf-8?B?ODBpdkMyOERXbmFUUzdlamU1ZG9aQlVxN2IyY1ZKL0w4eVRWZXBwbjYwbE9p?= =?utf-8?B?NjNBeERIeGhhaEx6UGZBaFFHWkF6S1pnR2x5MmtUa3MyaUh1ZEtYMWgxSUIv?= =?utf-8?B?Z0ZUeTJRYnlsdGNJMVlIWFVhY01pbTkwODF2Um9ORDVCM001VUFob1hYS0pt?= =?utf-8?B?N0lvazl5aVVPb3poT2RlOEQzcTQzd0lBQTJLekpuQjlrTlZTOHhPZ2RURjBN?= =?utf-8?B?Y3UzZnFOUUl6bnBMTHRUR2pZKzdsbXRvSm1PMFdxMDhvdzgvdnNDKzAzOEc2?= =?utf-8?Q?kmUEweM2SoZYS4GsJPTXsqpFq?= X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-Network-Message-Id: a19033b2-8052-428f-2c62-08db66c1ceef X-MS-Exchange-CrossTenant-AuthSource: MN2PR12MB4408.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Jun 2023 19:11:19.0731 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: cUOFO9mdrxFUtrL+DOiOvyzExLw+scMEuxqQDCMb9eLM/z+zyop2ItZtgTSy02A3lKq90Z44oma0FZxvv84EFw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY8PR12MB7145 Thanks, will update the Changelog.md with Jan's suggestions. On 6/2/23 2:22 AM, Henry Wang wrote: > Hi Jan and Vikram, > >> -----Original Message----- >> Subject: Re: [XEN][PATCH v7 05/19] xen/arm: Add CONFIG_OVERLAY_DTB >> >>> diff --git a/CHANGELOG.md b/CHANGELOG.md >>> index 5bfd3aa5c0..a137fce576 100644 >>> --- a/CHANGELOG.md >>> +++ b/CHANGELOG.md >>> @@ -20,6 +20,8 @@ The format is based on [Keep a >> Changelog](https://keepachangelog.com/en/1.0.0/) >>> - Bus-lock detection, used by Xen to mitigate (by rate-limiting) the system >>> wide impact of a guest misusing atomic instructions. >>> - xl/libxl can customize SMBIOS strings for HVM guests. >>> + - On Arm, support for dynamic addition/removal of Xen device tree nodes >> using >>> + a device tree overlay binary(.dtbo). >> May I suggest "..., experimental support ..." here? > Great point! I agree using "experimental support" is better here. > > @Vikram: Just to be clear, if you agree and change the wording following Jan's > suggestion, you can keep my acked-by tag for the changelog :)) > > Kind regards, > Henry > >> Jan From xen-devel-bounces@lists.xenproject.org Tue Jun 06 19:55:26 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 06 Jun 2023 19:55:26 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544184.849761 (Exim 4.92) (envelope-from ) id 1q6cm2-0002ez-7P; Tue, 06 Jun 2023 19:55:22 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544184.849761; Tue, 06 Jun 2023 19:55:22 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6cm2-0002es-4k; Tue, 06 Jun 2023 19:55:22 +0000 Received: by outflank-mailman (input) for mailman id 544184; Tue, 06 Jun 2023 19:55:21 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6cm1-0002el-H8 for xen-devel@lists.xenproject.org; Tue, 06 Jun 2023 19:55:21 +0000 Received: from mail-lf1-x131.google.com (mail-lf1-x131.google.com [2a00:1450:4864:20::131]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 111a1ffe-04a4-11ee-b232-6b7b168915f2; Tue, 06 Jun 2023 21:55:20 +0200 (CEST) Received: by mail-lf1-x131.google.com with SMTP id 2adb3069b0e04-4f4b384c09fso7994921e87.3 for ; Tue, 06 Jun 2023 12:55:20 -0700 (PDT) Received: from fedora.. ([94.75.70.14]) by smtp.gmail.com with ESMTPSA id j29-20020ac2551d000000b004f1383d57ecsm1563284lfk.202.2023.06.06.12.55.19 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 06 Jun 2023 12:55:19 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 111a1ffe-04a4-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686081320; x=1688673320; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=7TGArhQdSQX8UOhmIpz6TBiOEP22ajLMR7OWHR6Nu4A=; b=O/XGaXCCKoTPUoZQ8DfwCH/WP0x17xGqKCKSMRVwnICDn5x6+ADpIfUG2vJJxCaDcN QFOtJe3BevRTdoRxJ1ihm4+sKe3JcEDxsdXFX3YdPQ+YGsT14pmvjZIUNfm3DpzQyQV1 sVz6ntBRlEqDBMyEDqmt/Phn47dsMM5EKpGP6bW/ObW/xhPDtskv/EzeaGrwm5Dh9Eup JIF3S1CRyf0y4cuYGUuv7/j7E4ppdu/YTOVcJg1lcvjR2QlxzsRNkH4IjTHkfq3C7COe oSiKG8EWvk4/M86K/1vgJf3wJayoGlvoweT7MwP38fVyJfMtgei/ecNoMkSJWBjYzHCn ImcA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686081320; x=1688673320; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=7TGArhQdSQX8UOhmIpz6TBiOEP22ajLMR7OWHR6Nu4A=; b=Lw8rQ7xi596fGcX8gatd/heJjKMhtjlKlX+wRczZqo/L/Otlc2SB+SHOHeW2p/d1Zy xqckWYjiPUmQBHazSeVhTM61/0xKJuiHWx084BQoGL67NUGQo6E9XQpi1o7XNQ7psCYd DWJ3T/wdilUkPIAnoKhxtaFe+ouzSSnD8O+VJmxsY+VVIhMscSV5sDhH+SaKVUb5CKPF 1fzJxHpTY4UlHKWstGl9q5yDkx8XZcaS3OA/F/mqrNMBHTbu/dBHPYl6PW5gqBxvjdp9 b3A3hKhprd/YyCt8LGB5N87otJVBrrScxBsPJXf8KccIP+EcpEKFm6cFOCCvyKjtHZM1 +Z4w== X-Gm-Message-State: AC+VfDwW3CMGc1+FIyp8ObX2N27ittrKIOILkX3H3ufrH7k5EmcvDM9A l7iCDA+2d23YLSUjxQMSl6m38m22unQ= X-Google-Smtp-Source: ACHHUZ57sB49WRMNcaI7ZfKQo7gAicuQco4hCa6Kjlrsr1+WkBj5jKHEmupI5ZX9n2A1vFpA6QoZyQ== X-Received: by 2002:a19:a416:0:b0:4f6:116d:6d26 with SMTP id q22-20020a19a416000000b004f6116d6d26mr1219679lfc.42.1686081319616; Tue, 06 Jun 2023 12:55:19 -0700 (PDT) From: Oleksii Kurochko To: xen-devel@lists.xenproject.org Cc: Jan Beulich , Andrew Cooper , Oleksii Kurochko , Bob Eshleman , Alistair Francis , Connor Davis Subject: [PATCH v1 1/8] xen/riscv: make sure that identity mapping isn't bigger then page size Date: Tue, 6 Jun 2023 22:55:09 +0300 Message-Id: <4ad639bed6b8aa6cee34288a7ce154db21d761b5.1686080337.git.oleksii.kurochko@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Signed-off-by: Oleksii Kurochko --- xen/arch/riscv/xen.lds.S | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/xen/arch/riscv/xen.lds.S b/xen/arch/riscv/xen.lds.S index 878130f313..74afbaab9b 100644 --- a/xen/arch/riscv/xen.lds.S +++ b/xen/arch/riscv/xen.lds.S @@ -20,6 +20,7 @@ SECTIONS . = XEN_VIRT_START; _start = .; .text : { + _idmap_start = .; _stext = .; /* Text section */ *(.text.header) @@ -35,6 +36,7 @@ SECTIONS *(.gnu.warning) . = ALIGN(POINTER_ALIGN); _etext = .; /* End of text section */ + _idmap_end = .; } :text . = ALIGN(PAGE_SIZE); @@ -174,3 +176,10 @@ ASSERT(!SIZEOF(.got), ".got non-empty") ASSERT(!SIZEOF(.got.plt), ".got.plt non-empty") ASSERT(_end - _start <= MB(2), "Xen too large for early-boot assumptions") + +/* + * We require that Xen is loaded at a page boundary, so this ensures that any + * code running on the identity map cannot cross a page boundary. + */ +ASSERT(IS_ALIGNED(_idmap_start, PAGE_SIZE), "_idmap_start should be page-aligned") +ASSERT(_idmap_end - _idmap_start <= PAGE_SIZE, "Identity mapped code is larger than a page size") -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Tue Jun 06 19:55:26 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 06 Jun 2023 19:55:26 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544187.849791 (Exim 4.92) (envelope-from ) id 1q6cm5-0003Oi-TJ; Tue, 06 Jun 2023 19:55:25 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544187.849791; Tue, 06 Jun 2023 19:55:25 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6cm5-0003OZ-Pl; Tue, 06 Jun 2023 19:55:25 +0000 Received: by outflank-mailman (input) for mailman id 544187; Tue, 06 Jun 2023 19:55:24 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6cm4-0002er-1t for xen-devel@lists.xenproject.org; Tue, 06 Jun 2023 19:55:24 +0000 Received: from mail-lf1-x12e.google.com (mail-lf1-x12e.google.com [2a00:1450:4864:20::12e]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 120e5a7a-04a4-11ee-8611-37d641c3527e; Tue, 06 Jun 2023 21:55:22 +0200 (CEST) Received: by mail-lf1-x12e.google.com with SMTP id 2adb3069b0e04-4f611ac39c5so6324491e87.2 for ; Tue, 06 Jun 2023 12:55:22 -0700 (PDT) Received: from fedora.. ([94.75.70.14]) by smtp.gmail.com with ESMTPSA id j29-20020ac2551d000000b004f1383d57ecsm1563284lfk.202.2023.06.06.12.55.20 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 06 Jun 2023 12:55:20 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 120e5a7a-04a4-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686081321; x=1688673321; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=P5ZlKuhoRDHAHEke7zy4B0qROcvwjfCq2K3tRqo2H9M=; b=YZ6C4Se0SQL9HgctTBmHpY8KVbIgMujcltWIX4TOTMQExmGRAxe1gkS6ctvFACrp3O AL/vpiYPZcMu+OdCzIKaoAUXI+BKSSF5zRoLw35yDnqhzBeXnkUvhdKjg023fXttztMZ 1mspfAnNg7hVGwiOa3nQxHrWyD7PnSsTYgvZeYrgLtzVcxsT1KzjCVAQLSR1BWqQczkO G/jc18/nY7Gf4JsB5+AUC3R9iacO+/JXdDFxt49CC2HPcelBMEzpdmY94hNLIMO9DWGF HKVPsBqNdPmEyzonh2LvAJJMvUXOGj/eqiMi3HyU0+bA0nMVC68zc1E5OH/Ue7ApHnWT ZbpQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686081321; x=1688673321; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=P5ZlKuhoRDHAHEke7zy4B0qROcvwjfCq2K3tRqo2H9M=; b=RmEsusTUYTf5jhWEX4iKaEtwSONodE/3mn0RznQjCzxzfGPlgFraX/n+HKTzCvKFSz FRiForrmp0snxeBlKCa6aMm71TOgr8vdNYxUjvWey7ax5GN/YAOSipjtH/lVNbGgASV1 w3JsuwS2cRDlEGTg7fxMd99I4ZtJwf2Ass5GtxgQPmbHD+XPraOM4MWNEqBNawBcUdMy oew0NerKslBhi68aXA02BPKvKSxGGgefC0QrQwwxc5xqtvSlmOFmSzSA5esEnlxIpocf FErshvyeiKgdTAs6z2ymCKyEOtt+LvXx1CiMp5QFU9tFotY/Wq7SWHsp+sOt8HOnLFRL qvsg== X-Gm-Message-State: AC+VfDySJBJ8Y6cu63vRRHPbQsJpOSbsBHa5SESWc6jnF5wSHneN32C3 7utpq9VrT3VvybLQ+kJAwoHBjInq7GA= X-Google-Smtp-Source: ACHHUZ6L0qbELbOxHqUXbl6i3ZhhXr/xDqThMRfeDj1DFSSjpLayi8x1Z0w/qzO67vt1VLNDqC6QuA== X-Received: by 2002:ac2:46c6:0:b0:4f6:3000:4d5a with SMTP id p6-20020ac246c6000000b004f630004d5amr1524831lfo.38.1686081321296; Tue, 06 Jun 2023 12:55:21 -0700 (PDT) From: Oleksii Kurochko To: xen-devel@lists.xenproject.org Cc: Jan Beulich , Andrew Cooper , Oleksii Kurochko , Bob Eshleman , Alistair Francis , Connor Davis Subject: [PATCH v1 3/8] xen/riscv: introduce reset_stack() function Date: Tue, 6 Jun 2023 22:55:11 +0300 Message-Id: X-Mailer: git-send-email 2.40.1 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Signed-off-by: Oleksii Kurochko --- xen/arch/riscv/riscv64/head.S | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/xen/arch/riscv/riscv64/head.S b/xen/arch/riscv/riscv64/head.S index 8887f0cbd4..6fb7dd80fd 100644 --- a/xen/arch/riscv/riscv64/head.S +++ b/xen/arch/riscv/riscv64/head.S @@ -27,8 +27,14 @@ ENTRY(start) add t3, t3, __SIZEOF_POINTER__ bltu t3, t4, .L_clear_bss + jal reset_stack + + tail start_xen + +ENTRY(reset_stack) la sp, cpu0_boot_stack li t0, STACK_SIZE add sp, sp, t0 - tail start_xen + ret + -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Tue Jun 06 19:55:26 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 06 Jun 2023 19:55:26 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544188.849798 (Exim 4.92) (envelope-from ) id 1q6cm6-0003St-El; Tue, 06 Jun 2023 19:55:26 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544188.849798; Tue, 06 Jun 2023 19:55:26 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6cm6-0003SR-7N; Tue, 06 Jun 2023 19:55:26 +0000 Received: by outflank-mailman (input) for mailman id 544188; Tue, 06 Jun 2023 19:55:25 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6cm5-0002er-1x for xen-devel@lists.xenproject.org; Tue, 06 Jun 2023 19:55:25 +0000 Received: from mail-lf1-x12f.google.com (mail-lf1-x12f.google.com [2a00:1450:4864:20::12f]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 127d81b0-04a4-11ee-8611-37d641c3527e; Tue, 06 Jun 2023 21:55:22 +0200 (CEST) Received: by mail-lf1-x12f.google.com with SMTP id 2adb3069b0e04-4f6148f9679so5914935e87.3 for ; Tue, 06 Jun 2023 12:55:22 -0700 (PDT) Received: from fedora.. ([94.75.70.14]) by smtp.gmail.com with ESMTPSA id j29-20020ac2551d000000b004f1383d57ecsm1563284lfk.202.2023.06.06.12.55.21 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 06 Jun 2023 12:55:21 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 127d81b0-04a4-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686081322; x=1688673322; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=R9dfuEcyOpcttJDizez0uwxVrhy0pEYRLPEtmcdqVH0=; b=cO8vQhjZKZBCx/OMXvcYedquJasxp/5/p/DIaMDSm2K3nQHlfOGDVpPnc9bY5HDhKK RPlE5am5L3iXLcij5OkzvzvNpdl3+Rfp2dKxUNFnGX0M7MsIGMKzOYS81zP8nygsuM80 eBInYtgi+/j7NN3H0eNvGjBZuvc/AOJvzrufzepeZtMJCn97QH5d4Ivhhe9W6qWqwi2K qOVeKgRz8ptdjKNhpeeE35ZyZvPpf80CF8fEblojihRui3ViqhqnXkiG8u2+BxZH6Tnl Jkm6JAZzGhE0eSFNKEjDbgKuDc6GBj5eq1o8d2j2jh0XGcDQ4qvVnNvj/B7jHjFdZ/y7 KmfQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686081322; x=1688673322; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=R9dfuEcyOpcttJDizez0uwxVrhy0pEYRLPEtmcdqVH0=; b=Ivig9W9Wh5s+b122Y9EsCksV7KaME+9udVpCVVa1qxKyTkKPbfSQxwOeRz3qSBDvEQ xOE4udFdTU+h/62nBVighrfC2HA0GJcV0D057mrkyr8hAAViukyWXlNqRrKS/pUdbM9E OU4tyGCUJxzH/59Hi2gKu6ARGmmObio3fsu1rHLQ8VeXZtCeTd7HFRflr0WMJrLeAoNj cYk5Q+uSuDH3SqcrKnDq/xbLS0QfctHa2daoADWjgI3dplfDNUcxIugE93y8Z2C2/LxZ X+F5nWHSfjr9VLa+7MTczNPdhhN8nsQxJZ1lK41zhT26jnW9uNjOxfAn9iorMfDA7XuZ aarg== X-Gm-Message-State: AC+VfDyPYfMd2xR2WvXZrwqFVCN0ye/vhTLTrgE4Yr4dL3yT1mxiBnxv WjJcH4H9NKXh1M+rWPEMT02zf4vsaLs= X-Google-Smtp-Source: ACHHUZ4U3H6nveqzFxmohTnQISG3EbtKgdJoOK4rxT3Anq8lXoVZ8R0n4farW5PFO3Mkc81zgFmGhw== X-Received: by 2002:ac2:46fc:0:b0:4f3:a91c:23d0 with SMTP id q28-20020ac246fc000000b004f3a91c23d0mr1668492lfo.31.1686081322050; Tue, 06 Jun 2023 12:55:22 -0700 (PDT) From: Oleksii Kurochko To: xen-devel@lists.xenproject.org Cc: Jan Beulich , Andrew Cooper , Oleksii Kurochko , Bob Eshleman , Alistair Francis , Connor Davis Subject: [PATCH v1 4/8] xen/riscv: introduce function for physical offset calculation Date: Tue, 6 Jun 2023 22:55:12 +0300 Message-Id: X-Mailer: git-send-email 2.40.1 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit The function was introduced to not calculate and save physical offset before MMU is enabled because access to start() is PC-relative and in case of linker_addr != load_addr it will result in incorrect value in phys_offset. Signed-off-by: Oleksii Kurochko --- xen/arch/riscv/include/asm/mm.h | 2 ++ xen/arch/riscv/mm.c | 18 +++++++++++++++--- xen/arch/riscv/riscv64/head.S | 2 ++ 3 files changed, 19 insertions(+), 3 deletions(-) diff --git a/xen/arch/riscv/include/asm/mm.h b/xen/arch/riscv/include/asm/mm.h index 64293eacee..996041ce81 100644 --- a/xen/arch/riscv/include/asm/mm.h +++ b/xen/arch/riscv/include/asm/mm.h @@ -11,4 +11,6 @@ void setup_initial_pagetables(void); void enable_mmu(void); void cont_after_mmu_is_enabled(void); +void calc_phys_offset(void); + #endif /* _ASM_RISCV_MM_H */ diff --git a/xen/arch/riscv/mm.c b/xen/arch/riscv/mm.c index 8ceed445cf..c092897f9a 100644 --- a/xen/arch/riscv/mm.c +++ b/xen/arch/riscv/mm.c @@ -19,9 +19,11 @@ struct mmu_desc { extern unsigned char cpu0_boot_stack[STACK_SIZE]; -#define PHYS_OFFSET ((unsigned long)_start - XEN_VIRT_START) -#define LOAD_TO_LINK(addr) ((addr) - PHYS_OFFSET) -#define LINK_TO_LOAD(addr) ((addr) + PHYS_OFFSET) +static unsigned long phys_offset; + +#define LOAD_TO_LINK(addr) ((unsigned long)(addr) - phys_offset) +#define LINK_TO_LOAD(addr) ((unsigned long)(addr) + phys_offset) + /* * It is expected that Xen won't be more then 2 MB. @@ -273,3 +275,13 @@ void __init noreturn noinline enable_mmu() switch_stack_and_jump((unsigned long)cpu0_boot_stack + STACK_SIZE, cont_after_mmu_is_enabled); } + +/* + * calc_phys_offset() should be used before MMU is enabled because access to + * start() is PC-relative and in case when load_addr != linker_addr phys_offset + * will have an incorrect value + */ +void calc_phys_offset(void) +{ + phys_offset = (unsigned long)start - XEN_VIRT_START; +} diff --git a/xen/arch/riscv/riscv64/head.S b/xen/arch/riscv/riscv64/head.S index 6fb7dd80fd..69f3a24987 100644 --- a/xen/arch/riscv/riscv64/head.S +++ b/xen/arch/riscv/riscv64/head.S @@ -29,6 +29,8 @@ ENTRY(start) jal reset_stack + jal calc_phys_offset + tail start_xen ENTRY(reset_stack) -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Tue Jun 06 19:55:26 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 06 Jun 2023 19:55:26 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544186.849781 (Exim 4.92) (envelope-from ) id 1q6cm4-00038p-Ly; Tue, 06 Jun 2023 19:55:24 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544186.849781; Tue, 06 Jun 2023 19:55:24 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6cm4-00038i-I7; Tue, 06 Jun 2023 19:55:24 +0000 Received: by outflank-mailman (input) for mailman id 544186; Tue, 06 Jun 2023 19:55:23 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6cm3-0002er-1m for xen-devel@lists.xenproject.org; Tue, 06 Jun 2023 19:55:23 +0000 Received: from mail-lf1-x135.google.com (mail-lf1-x135.google.com [2a00:1450:4864:20::135]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 119c6400-04a4-11ee-8611-37d641c3527e; Tue, 06 Jun 2023 21:55:21 +0200 (CEST) Received: by mail-lf1-x135.google.com with SMTP id 2adb3069b0e04-4f3bb395e69so8248867e87.2 for ; Tue, 06 Jun 2023 12:55:21 -0700 (PDT) Received: from fedora.. ([94.75.70.14]) by smtp.gmail.com with ESMTPSA id j29-20020ac2551d000000b004f1383d57ecsm1563284lfk.202.2023.06.06.12.55.19 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 06 Jun 2023 12:55:20 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 119c6400-04a4-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686081320; x=1688673320; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=t+18CatWiKovUOnQdDJlhtreSRlIgkyqtkY8A4pd8sw=; b=R75eONep1sHqYGlAQtJiVqzQtXpLFmwkLqxeB+GmSvuq/ciEdTvPszXfLahAMY7tGc D+uGE+KDjR/Utps1OLY6tk0WCWJsQAewCzZOidD8GjfgRsH6lz5Z8o+B4bvIopkJJwTO Xwzou3FZJGb/U8rkEEMl21Rd7QvyGPg69R6yhHwn8eIDksUHY2uYzlYQELOc+nTisMSx iENa3+/+nRb6vpqcGC7NUDL8OuRm62HzmsraTfCNxcWFqZDnMEHQRsQljCHyY4LUjmvm i5eGvMY7dJu3acRn0wIpTMTsk8Hfn9kZQ71AY3EN+4jCu84S3DuPUtV4P3k/BSPL3muf 3wCg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686081320; x=1688673320; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=t+18CatWiKovUOnQdDJlhtreSRlIgkyqtkY8A4pd8sw=; b=IOmyx6k4QuBbpt5rj0qkgG/Ay5CBoIHgMC1+mqKfU4MT5EtO647ggSfgPSsLliQRhr N5KXzhtZrWa9D6aKpHYVEZ+Jag1OuxCile2lj3/JTGKPojKW2KzZF0MrFADssu7jFyrl EMBYFq37LIcuB+ECAI+/6elFqwtE37czEEV8W+VSU3nCYYC+tZU6fMuKFy1kBdJKnEhF DHBWi00LAgGpHuPhPVkRlr6SzhcBs4Nv/NfSAortl4zUJohNe9fkAuysXIXhhfbh+J0t 9G8zywmk6anD+8GELKn+IEEt7gtYHKpaifokmidIRMfF6oNxljGqD5YDH0c3HVHvNtyd BUzg== X-Gm-Message-State: AC+VfDzv7aWGP30ZYXcQ0TdItwcqxBg4/ydWUx0isSTbpK7ludycjjN/ 0VcX5vAa57ScB+4qEhyqRyq4Z16iz2c= X-Google-Smtp-Source: ACHHUZ4UcloTqSs1Y4vaiE14ffnJJkLDv6vbidnhs+aE6gUIqCSpz0KuNcZqnYToz8dqHx/nXt0q0w== X-Received: by 2002:ac2:4ac5:0:b0:4ec:8524:65a4 with SMTP id m5-20020ac24ac5000000b004ec852465a4mr1178650lfp.55.1686081320441; Tue, 06 Jun 2023 12:55:20 -0700 (PDT) From: Oleksii Kurochko To: xen-devel@lists.xenproject.org Cc: Jan Beulich , Andrew Cooper , Oleksii Kurochko , Bob Eshleman , Alistair Francis , Connor Davis Subject: [PATCH v1 2/8] xen/riscv: add .sbss section to .bss Date: Tue, 6 Jun 2023 22:55:10 +0300 Message-Id: <6a0f3171323f0092b8374f2244182c7e7ca850c0.1686080337.git.oleksii.kurochko@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Sometimes variables are located in .sbss section but it won't be mapped after MMU will be enabled. To avoid MMU failures .sbss should be mapped Signed-off-by: Oleksii Kurochko --- xen/arch/riscv/xen.lds.S | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/xen/arch/riscv/xen.lds.S b/xen/arch/riscv/xen.lds.S index 74afbaab9b..9a2799bab5 100644 --- a/xen/arch/riscv/xen.lds.S +++ b/xen/arch/riscv/xen.lds.S @@ -151,7 +151,7 @@ SECTIONS *(.bss.percpu.read_mostly) . = ALIGN(SMP_CACHE_BYTES); __per_cpu_data_end = .; - *(.bss .bss.*) + *(.bss .bss.* .sbss) . = ALIGN(POINTER_ALIGN); __bss_end = .; } :text -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Tue Jun 06 19:55:27 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 06 Jun 2023 19:55:27 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544185.849771 (Exim 4.92) (envelope-from ) id 1q6cm3-0002ts-Em; Tue, 06 Jun 2023 19:55:23 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544185.849771; Tue, 06 Jun 2023 19:55:23 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6cm3-0002tl-Bt; Tue, 06 Jun 2023 19:55:23 +0000 Received: by outflank-mailman (input) for mailman id 544185; Tue, 06 Jun 2023 19:55:22 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6cm2-0002er-DG for xen-devel@lists.xenproject.org; Tue, 06 Jun 2023 19:55:22 +0000 Received: from mail-lf1-x133.google.com (mail-lf1-x133.google.com [2a00:1450:4864:20::133]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 10e4a760-04a4-11ee-8611-37d641c3527e; Tue, 06 Jun 2023 21:55:20 +0200 (CEST) Received: by mail-lf1-x133.google.com with SMTP id 2adb3069b0e04-4f3bb395e69so8248842e87.2 for ; Tue, 06 Jun 2023 12:55:20 -0700 (PDT) Received: from fedora.. ([94.75.70.14]) by smtp.gmail.com with ESMTPSA id j29-20020ac2551d000000b004f1383d57ecsm1563284lfk.202.2023.06.06.12.55.18 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 06 Jun 2023 12:55:18 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 10e4a760-04a4-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686081319; x=1688673319; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=xfn7sIE+CNXRBIEchH6s4LYuBRt7W2O5O+bU9eogZ74=; b=h/CYHpeXqTPq6RFrth593rV82N0KLDbZfhy8xMPlztCj8w++4cHOguUSTNaizP/QmB p+DGkWnvU8JygPnTMzX8M/zMEUqvGTV8ctWF3cyuMrkiZOEKWVPlw8kRX9Yr942GH4HA p883aMZ6GdhW/KmSYkWRtYnQxgL/jpyzgK8SixXUwSSXnOPbMmNQtVEPUjB2YHgTLeIq RduT/u3zv1AMr/M2hOPp05/0zJ3nD9Q5F8MYt1SmTSXdRgDdIgp5/QZ3AXsG8Z+1ar4l ZNo++ypyHykpeOs6qw6U+fyyWaJeh7/xkgaHT1QLXLCR8+h9os345ZEer/U2NgqUK9xA klZA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686081319; x=1688673319; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=xfn7sIE+CNXRBIEchH6s4LYuBRt7W2O5O+bU9eogZ74=; b=DSKUzACkduF0AYvrP/h12wEdmZYjb4oud+u5YG9hZNWbpKLQGTxP9bU+39sBi2IGv8 x+HDB6O4LlXXEldtB1wostgQ5OQ4I8PSNMsgqcrfRrvVxVnBXDXv3LikaMe0hcE2ggI8 w4PgnkZT+KHm9U8Lzu4912MjMImlTQ++IZ2nGjTdmpe0AAEL73EM/wwo//lLJ3IoetHI VvSiXDAMWUVFPZAI5QDtpGJ+Tjbbf1/gT9gQvbnqvVm7SZ9C9/GNmcBsefbdPvNkCvKI JDPlMiTYu6BaRvT7ls/5aSmKsFqHo5U6PPiuI9ecWFbY6IFQpGxxBaB6hmFmzlVoKsOO JlmA== X-Gm-Message-State: AC+VfDyxT1jDeyt6dZ5Lt+EX3qVfe3Y4SpnWQTgPXWMGUwJP92aa4uvK PBnd6WMjxTUw3kR9AmkRWVqoKgnJRtM= X-Google-Smtp-Source: ACHHUZ45ydIyjEvh8qRu6MQ6I2QA71jROXJT6WdamQTnl45IF/MmeIFUfocpuW6Wxnz+/4njoY/FeA== X-Received: by 2002:ac2:48ba:0:b0:4f6:20b1:ef95 with SMTP id u26-20020ac248ba000000b004f620b1ef95mr1183356lfg.37.1686081318938; Tue, 06 Jun 2023 12:55:18 -0700 (PDT) From: Oleksii Kurochko To: xen-devel@lists.xenproject.org Cc: Jan Beulich , Andrew Cooper , Oleksii Kurochko , Bob Eshleman , Alistair Francis , Connor Davis Subject: [PATCH v1 0/8] xen/riscv: introduce identity mapping Date: Tue, 6 Jun 2023 22:55:08 +0300 Message-Id: X-Mailer: git-send-email 2.40.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit The patch series introduces things necessary to implement identity mapping: 1. Make identity mapping for _start and stack. 2. Enable MMU. 3. Jump to the virtual address world 4. Remove identity mapping for _start and stack. Also current patch series introduces the calculation of physical offset before MMU is enabled as access to physical offset will be calculated wrong after MMU will be enabled because access to phys_off variable is PC-relative and in the case when linker address != load address, it will cause MMU fault. One more thing that was done is: * Added SPDX tags. * Added __ASSEMBLY__ guards. * move extern of cpu0_boot_stack to a header. The reason for this patch series can be found here: https://lore.kernel.org/xen-devel/4e336121-fc0c-b007-bf7b-430352563d55@citrix.com/ Oleksii Kurochko (8): xen/riscv: make sure that identity mapping isn't bigger then page size xen/riscv: add .sbss section to .bss xen/riscv: introduce reset_stack() function xen/riscv: introduce function for physical offset calculation xen/riscv: introduce identity mapping xen/riscv: add SPDX tags xen/riscv: add __ASSEMBLY__ guards xen/riscv: move extern of cpu0_boot_stack to header xen/arch/riscv/include/asm/config.h | 2 + xen/arch/riscv/include/asm/current.h | 2 + xen/arch/riscv/include/asm/early_printk.h | 2 + xen/arch/riscv/include/asm/mm.h | 9 +- xen/arch/riscv/include/asm/page-bits.h | 2 + xen/arch/riscv/include/asm/page.h | 6 ++ xen/arch/riscv/include/asm/traps.h | 2 + xen/arch/riscv/include/asm/types.h | 2 + xen/arch/riscv/mm.c | 119 +++++++++++++++------- xen/arch/riscv/riscv64/head.S | 40 +++++++- xen/arch/riscv/setup.c | 16 +-- xen/arch/riscv/xen.lds.S | 11 +- 12 files changed, 160 insertions(+), 53 deletions(-) -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Tue Jun 06 19:55:27 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 06 Jun 2023 19:55:27 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544189.849811 (Exim 4.92) (envelope-from ) id 1q6cm7-0003ur-N9; Tue, 06 Jun 2023 19:55:27 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544189.849811; Tue, 06 Jun 2023 19:55:27 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6cm7-0003u8-J1; Tue, 06 Jun 2023 19:55:27 +0000 Received: by outflank-mailman (input) for mailman id 544189; Tue, 06 Jun 2023 19:55:26 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6cm6-0002er-21 for xen-devel@lists.xenproject.org; Tue, 06 Jun 2023 19:55:26 +0000 Received: from mail-lf1-x12e.google.com (mail-lf1-x12e.google.com [2a00:1450:4864:20::12e]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 13064545-04a4-11ee-8611-37d641c3527e; Tue, 06 Jun 2023 21:55:23 +0200 (CEST) Received: by mail-lf1-x12e.google.com with SMTP id 2adb3069b0e04-4f611ac39c5so6324518e87.2 for ; Tue, 06 Jun 2023 12:55:23 -0700 (PDT) Received: from fedora.. ([94.75.70.14]) by smtp.gmail.com with ESMTPSA id j29-20020ac2551d000000b004f1383d57ecsm1563284lfk.202.2023.06.06.12.55.22 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 06 Jun 2023 12:55:22 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 13064545-04a4-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686081323; x=1688673323; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=efjoH6YD/NFQ9wxK29jeXVZ4gBqY6bo96HJMQ+wU7+s=; b=IzT6WqJv+D8ugHDKjmTICaR1Sxn3wyRwA3GFTrztineoxv69HfJ+OkIeiDmKwLV+fK 6I0m5K40P4q4b4jNbvtResiQ10VttI2r77l+iucyWTUv+2RhchZudesKoAREn4YRSvUW Y2WqVxdKrSMMCKQNC3NVaBw/QdsTX4/AzXJAewKHSKT38TOgQA3+LMg3OkoRlWqi4wkl 9P7S6tNcyvc9ThPkTQmj5dgySiXH4baKXK1puCTBQemMQJ8mgoYrP4lEiWfCGLsTMpwv nqRgR5mVCzxbC4xALShu791X1yzngMlNO0dNpj6pbgiiUFTsdGgXNcttJlGY9YMvw0pQ WPlw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686081323; x=1688673323; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=efjoH6YD/NFQ9wxK29jeXVZ4gBqY6bo96HJMQ+wU7+s=; b=Tb47hrsiwhdjSgkExIlIj7OCgnTmyrzDmoj1sOh5F2+8JzjoeN1Kk/gZKnAGABhSOU nEZvzinCJvPaFE1i+3sHSmAW+0K6eLk5Fl9zaz0jcH76hCTzXocfOVjVx7BkzYlHXjIx dxxTCCU8TRnGsHpMBFSujJCXaXq8eav6tcXA5qSlFN3yge3Px1hk+mY9pQuBw3j6SGWv dNjktVxjKJ85fPJ5Praf+ZwWj+I3NXrLKZeyU+9e4XnNUnCluFn/SgxTwYs0HTf4/5Or bedYkdKjhela6JrQBPZ5iSSkGq7CACHeXXEeubtOjOrgIPxEhPdpZ6P6BnFWdoM2Mon5 w9pw== X-Gm-Message-State: AC+VfDykR1/JU5UH+23hLzdY4Q8q1XsjNg7vKgtojCZ92p4ucZD4lExH 46WFgFRhaIdmlLaP2Cfo2wLIf9DC95A= X-Google-Smtp-Source: ACHHUZ5c9Rv5X/veMwg4l2ZWaYseSRPYtCf8TDawy3b6rVcB/VpclMQuUaY9txvzD8tLgvANkIjmGA== X-Received: by 2002:ac2:4c18:0:b0:4f2:6651:7c7b with SMTP id t24-20020ac24c18000000b004f266517c7bmr1328798lfq.61.1686081322877; Tue, 06 Jun 2023 12:55:22 -0700 (PDT) From: Oleksii Kurochko To: xen-devel@lists.xenproject.org Cc: Jan Beulich , Andrew Cooper , Oleksii Kurochko , Bob Eshleman , Alistair Francis , Connor Davis Subject: [PATCH v1 5/8] xen/riscv: introduce identity mapping Date: Tue, 6 Jun 2023 22:55:13 +0300 Message-Id: <32aef31768cd81ffc8c848af6c29cd8510bbbf6d.1686080337.git.oleksii.kurochko@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit The way how switch to virtual address was implemented in the commit e66003e7be ("xen/riscv: introduce setup_initial_pages") wasn't safe enough so identity mapping was introduced and used. Fixes: e66003e7be ("xen/riscv: introduce setup_initial_pages") Signed-off-by: Oleksii Kurochko --- xen/arch/riscv/include/asm/mm.h | 3 +- xen/arch/riscv/mm.c | 99 ++++++++++++++++++++++----------- xen/arch/riscv/riscv64/head.S | 30 ++++++++++ xen/arch/riscv/setup.c | 14 +---- 4 files changed, 99 insertions(+), 47 deletions(-) diff --git a/xen/arch/riscv/include/asm/mm.h b/xen/arch/riscv/include/asm/mm.h index 996041ce81..500fdc9c5a 100644 --- a/xen/arch/riscv/include/asm/mm.h +++ b/xen/arch/riscv/include/asm/mm.h @@ -9,7 +9,8 @@ void setup_initial_pagetables(void); void enable_mmu(void); -void cont_after_mmu_is_enabled(void); + +void remove_identity_mapping(void); void calc_phys_offset(void); diff --git a/xen/arch/riscv/mm.c b/xen/arch/riscv/mm.c index c092897f9a..ab790f571d 100644 --- a/xen/arch/riscv/mm.c +++ b/xen/arch/riscv/mm.c @@ -24,6 +24,11 @@ static unsigned long phys_offset; #define LOAD_TO_LINK(addr) ((unsigned long)(addr) - phys_offset) #define LINK_TO_LOAD(addr) ((unsigned long)(addr) + phys_offset) +/* + * Should be removed as soon as enough headers will be merged for inclusion of + * . + */ +#define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0])) /* * It is expected that Xen won't be more then 2 MB. @@ -35,8 +40,10 @@ static unsigned long phys_offset; * * It might be needed one more page table in case when Xen load address * isn't 2 MB aligned. + * + * 3 additional page tables are needed for identity mapping. */ -#define PGTBL_INITIAL_COUNT ((CONFIG_PAGING_LEVELS - 1) + 1) +#define PGTBL_INITIAL_COUNT ((CONFIG_PAGING_LEVELS - 1) + 1 + 3) pte_t __section(".bss.page_aligned") __aligned(PAGE_SIZE) stage1_pgtbl_root[PAGETABLE_ENTRIES]; @@ -75,6 +82,7 @@ static void __init setup_initial_mapping(struct mmu_desc *mmu_desc, unsigned int index; pte_t *pgtbl; unsigned long page_addr; + bool is_identity_mapping = (map_start == pa_start); if ( (unsigned long)_start % XEN_PT_LEVEL_SIZE(0) ) { @@ -108,16 +116,18 @@ static void __init setup_initial_mapping(struct mmu_desc *mmu_desc, { unsigned long paddr = (page_addr - map_start) + pa_start; unsigned int permissions = PTE_LEAF_DEFAULT; + unsigned long addr = (is_identity_mapping) ? + page_addr : LINK_TO_LOAD(page_addr); pte_t pte_to_be_written; index = pt_index(0, page_addr); - if ( is_kernel_text(LINK_TO_LOAD(page_addr)) || - is_kernel_inittext(LINK_TO_LOAD(page_addr)) ) - permissions = - PTE_EXECUTABLE | PTE_READABLE | PTE_VALID; + if ( is_kernel_text(addr) || + is_kernel_inittext(addr) ) + permissions = + PTE_EXECUTABLE | PTE_READABLE | PTE_VALID; - if ( is_kernel_rodata(LINK_TO_LOAD(page_addr)) ) + if ( is_kernel_rodata(addr) ) permissions = PTE_READABLE | PTE_VALID; pte_to_be_written = paddr_to_pte(paddr, permissions); @@ -232,22 +242,27 @@ void __init setup_initial_pagetables(void) linker_start, linker_end, load_start); + + if ( linker_start == load_start ) + return; + + setup_initial_mapping(&mmu_desc, + load_start, + load_start + PAGE_SIZE, + load_start); + + setup_initial_mapping(&mmu_desc, + (unsigned long)cpu0_boot_stack, + (unsigned long)cpu0_boot_stack + PAGE_SIZE, + (unsigned long)cpu0_boot_stack); } -void __init noreturn noinline enable_mmu() +/* + * enable_mmu() can't be __init because __init section isn't part of identity + * mapping so it will cause an issue after MMU will be enabled. + */ +void enable_mmu(void) { - /* - * Calculate a linker time address of the mmu_is_enabled - * label and update CSR_STVEC with it. - * MMU is configured in a way where linker addresses are mapped - * on load addresses so in a case when linker addresses are not equal - * to load addresses, after MMU is enabled, it will cause - * an exception and jump to linker time addresses. - * Otherwise if load addresses are equal to linker addresses the code - * after mmu_is_enabled label will be executed without exception. - */ - csr_write(CSR_STVEC, LOAD_TO_LINK((unsigned long)&&mmu_is_enabled)); - /* Ensure page table writes precede loading the SATP */ sfence_vma(); @@ -255,25 +270,41 @@ void __init noreturn noinline enable_mmu() csr_write(CSR_SATP, PFN_DOWN((unsigned long)stage1_pgtbl_root) | RV_STAGE1_MODE << SATP_MODE_SHIFT); +} + +void __init remove_identity_mapping(void) +{ + int i, j; + pte_t *pgtbl; + unsigned int index, xen_index; - asm volatile ( ".p2align 2" ); - mmu_is_enabled: /* - * Stack should be re-inited as: - * 1. Right now an address of the stack is relative to load time - * addresses what will cause an issue in case of load start address - * isn't equal to linker start address. - * 2. Addresses in stack are all load time relative which can be an - * issue in case when load start address isn't equal to linker - * start address. - * - * We can't return to the caller because the stack was reseted - * and it may have stash some variable on the stack. - * Jump to a brand new function as the stack was reseted + * id_addrs should be in sync with id mapping in + * setup_initial_pagetables() */ + unsigned long id_addrs[] = { + LINK_TO_LOAD(_start), + LINK_TO_LOAD(cpu0_boot_stack), + }; - switch_stack_and_jump((unsigned long)cpu0_boot_stack + STACK_SIZE, - cont_after_mmu_is_enabled); + pgtbl = stage1_pgtbl_root; + + for ( j = 0; j < ARRAY_SIZE(id_addrs); j++ ) + { + for ( pgtbl = stage1_pgtbl_root, i = CONFIG_PAGING_LEVELS - 1; i >= 0; i-- ) + { + index = pt_index(i, id_addrs[j]); + xen_index = pt_index(i, XEN_VIRT_START); + + if ( index != xen_index ) + { + pgtbl[index].pte = 0; + break; + } + + pgtbl = &pgtbl[index]; + } + } } /* diff --git a/xen/arch/riscv/riscv64/head.S b/xen/arch/riscv/riscv64/head.S index 69f3a24987..582078798a 100644 --- a/xen/arch/riscv/riscv64/head.S +++ b/xen/arch/riscv/riscv64/head.S @@ -31,6 +31,36 @@ ENTRY(start) jal calc_phys_offset + jal setup_initial_pagetables + + jal enable_mmu + + /* + * Calculate physical offset + * + * We can't re-use a value in phys_offset variable here as + * phys_offset is located in .bss and this section isn't + * 1:1 mapped and an access to it will cause MMU fault + */ + li t0, XEN_VIRT_START + la t1, start + sub t1, t1, t0 + + /* Calculate proper VA after jump from 1:1 mapping */ + la t0, .L_primary_switched + sub t0, t0, t1 + + /* Jump from 1:1 mapping world */ + jr t0 + +.L_primary_switched: + /* + * cpu0_boot_stack address is 1:1 mapping related so it should be + * recalculated after jump from 1:1 mapping world as 1:1 mapping + * will be removed soon in start_xen(). + */ + jal reset_stack + tail start_xen ENTRY(reset_stack) diff --git a/xen/arch/riscv/setup.c b/xen/arch/riscv/setup.c index 845d18d86f..c4ef0b3165 100644 --- a/xen/arch/riscv/setup.c +++ b/xen/arch/riscv/setup.c @@ -11,20 +11,10 @@ unsigned char __initdata cpu0_boot_stack[STACK_SIZE] void __init noreturn start_xen(unsigned long bootcpu_id, paddr_t dtb_addr) { - early_printk("Hello from C env\n"); - - setup_initial_pagetables(); - - enable_mmu(); - - for ( ;; ) - asm volatile ("wfi"); + remove_identity_mapping(); - unreachable(); -} + early_printk("Hello from C env\n"); -void __init noreturn cont_after_mmu_is_enabled(void) -{ early_printk("All set up\n"); for ( ;; ) -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Tue Jun 06 19:55:29 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 06 Jun 2023 19:55:29 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544190.849821 (Exim 4.92) (envelope-from ) id 1q6cm9-0004EL-5L; Tue, 06 Jun 2023 19:55:29 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544190.849821; Tue, 06 Jun 2023 19:55:29 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6cm9-0004E7-1A; Tue, 06 Jun 2023 19:55:29 +0000 Received: by outflank-mailman (input) for mailman id 544190; Tue, 06 Jun 2023 19:55:27 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6cm7-0002er-2B for xen-devel@lists.xenproject.org; Tue, 06 Jun 2023 19:55:27 +0000 Received: from mail-lf1-x12a.google.com (mail-lf1-x12a.google.com [2a00:1450:4864:20::12a]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 1376451d-04a4-11ee-8611-37d641c3527e; Tue, 06 Jun 2023 21:55:24 +0200 (CEST) Received: by mail-lf1-x12a.google.com with SMTP id 2adb3069b0e04-4f62b512fe2so3358224e87.1 for ; Tue, 06 Jun 2023 12:55:24 -0700 (PDT) Received: from fedora.. ([94.75.70.14]) by smtp.gmail.com with ESMTPSA id j29-20020ac2551d000000b004f1383d57ecsm1563284lfk.202.2023.06.06.12.55.22 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 06 Jun 2023 12:55:23 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 1376451d-04a4-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686081324; x=1688673324; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=Wh8BJIh+57sl7bOo0QhYsWa0pXdWsiCtmsxwnxt2RAU=; b=OSf8GtFqo2NuhZtcfIkC5FDn0ebuqJ1uQ7XzI6k3YI5keBWCuq9M2u4IyY7MPhvifJ t9P+Unj9Do1Vv0q570IxL+3snR23gk601FSsU5RGhzuSEZlMwRgfmMke9h2VcBD0d0Qq QAMaRW9r92Ind9Nued7KPU36F1bZdwJRmEodOIYP/Ck9DQ3HQ+W5Kqf/hJNVwsgFiBIQ NLahdPMnJ/xo1F+xZOb40fT5Zr2kvYPvnHZcrOZ0hTTahPclSVxkfkSsr0yhskFStN0d 0iON0sDj0jujKz12uzRbavsPR92hompWo6Fj/neSMErhluLfIW6FyjycSBqYddpXa4EW Dwjw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686081324; x=1688673324; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=Wh8BJIh+57sl7bOo0QhYsWa0pXdWsiCtmsxwnxt2RAU=; b=ibpWWxE2hkbEfwm1K1Liz4MRGgd1HPF78CcNa0a/QZ9IC+mi0fXR/9VyMVlOvxNJ8Q H+iHALOMqF8q0QIFOB6mK4tvTyOHB9u6dD90RgYDrDRTQfppXj1kQ8lQ1reDArKbxuvz gO7GtcAN6MOJ1nmA0AOh9s8gZYZjWdtC+yO5px5xidCPaDfKFJQIlRRBtkvvpf7eU9yl Jm3QtRnvA/QLv7sanPMHcNiESdaMoPsyp2srPFeTK1qJykKypyxUZRZwBLwmaDvfxwpO bGWEgjA33xtdeJqO66VIiSVhpZdmzsrnwk7aL88NC3W8hmdTbujMj3gJiKc9VRgd5Dj7 +Uog== X-Gm-Message-State: AC+VfDzvBK3Pe8EeEJ/t3MjC3nFTUpjN2NzMHSk+T0e5jKImbklo72SM XVvZa1N5mNHrK/PWRsC9Z7hRV6LSNQ4= X-Google-Smtp-Source: ACHHUZ7ntaUUio4KqesGs58TcVUdN7fp9cmIMj6BHSnc/mxy+bAhUnPCb+zwH0hWVqW0u7H9Bk9iaA== X-Received: by 2002:ac2:519a:0:b0:4f3:aa73:562 with SMTP id u26-20020ac2519a000000b004f3aa730562mr1307466lfi.2.1686081323644; Tue, 06 Jun 2023 12:55:23 -0700 (PDT) From: Oleksii Kurochko To: xen-devel@lists.xenproject.org Cc: Jan Beulich , Andrew Cooper , Oleksii Kurochko , Bob Eshleman , Alistair Francis , Connor Davis Subject: [PATCH v1 6/8] xen/riscv: add SPDX tags Date: Tue, 6 Jun 2023 22:55:14 +0300 Message-Id: <1034fa44a9b589a18f89b7849877c00ee0a362d5.1686080337.git.oleksii.kurochko@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Signed-off-by: Oleksii Kurochko --- xen/arch/riscv/include/asm/config.h | 2 ++ xen/arch/riscv/include/asm/current.h | 2 ++ xen/arch/riscv/include/asm/early_printk.h | 2 ++ xen/arch/riscv/include/asm/mm.h | 2 ++ xen/arch/riscv/include/asm/page-bits.h | 2 ++ xen/arch/riscv/include/asm/page.h | 2 ++ xen/arch/riscv/include/asm/traps.h | 2 ++ xen/arch/riscv/include/asm/types.h | 2 ++ xen/arch/riscv/mm.c | 2 ++ xen/arch/riscv/setup.c | 2 ++ 10 files changed, 20 insertions(+) diff --git a/xen/arch/riscv/include/asm/config.h b/xen/arch/riscv/include/asm/config.h index 38862df0b8..3ae35f57b3 100644 --- a/xen/arch/riscv/include/asm/config.h +++ b/xen/arch/riscv/include/asm/config.h @@ -1,3 +1,5 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ + #ifndef __RISCV_CONFIG_H__ #define __RISCV_CONFIG_H__ diff --git a/xen/arch/riscv/include/asm/current.h b/xen/arch/riscv/include/asm/current.h index d87e6717e0..b08f204df4 100644 --- a/xen/arch/riscv/include/asm/current.h +++ b/xen/arch/riscv/include/asm/current.h @@ -1,3 +1,5 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ + #ifndef __ASM_CURRENT_H #define __ASM_CURRENT_H diff --git a/xen/arch/riscv/include/asm/early_printk.h b/xen/arch/riscv/include/asm/early_printk.h index 05106e160d..c11693bbe1 100644 --- a/xen/arch/riscv/include/asm/early_printk.h +++ b/xen/arch/riscv/include/asm/early_printk.h @@ -1,3 +1,5 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ + #ifndef __EARLY_PRINTK_H__ #define __EARLY_PRINTK_H__ diff --git a/xen/arch/riscv/include/asm/mm.h b/xen/arch/riscv/include/asm/mm.h index 500fdc9c5a..3b04131628 100644 --- a/xen/arch/riscv/include/asm/mm.h +++ b/xen/arch/riscv/include/asm/mm.h @@ -1,3 +1,5 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ + #ifndef _ASM_RISCV_MM_H #define _ASM_RISCV_MM_H diff --git a/xen/arch/riscv/include/asm/page-bits.h b/xen/arch/riscv/include/asm/page-bits.h index 4a3e33589a..94190b3c61 100644 --- a/xen/arch/riscv/include/asm/page-bits.h +++ b/xen/arch/riscv/include/asm/page-bits.h @@ -1,3 +1,5 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ + #ifndef __RISCV_PAGE_BITS_H__ #define __RISCV_PAGE_BITS_H__ diff --git a/xen/arch/riscv/include/asm/page.h b/xen/arch/riscv/include/asm/page.h index a7e2eee964..8e8ec9ee36 100644 --- a/xen/arch/riscv/include/asm/page.h +++ b/xen/arch/riscv/include/asm/page.h @@ -1,3 +1,5 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ + #ifndef _ASM_RISCV_PAGE_H #define _ASM_RISCV_PAGE_H diff --git a/xen/arch/riscv/include/asm/traps.h b/xen/arch/riscv/include/asm/traps.h index f3fb6b25d1..2e896e0913 100644 --- a/xen/arch/riscv/include/asm/traps.h +++ b/xen/arch/riscv/include/asm/traps.h @@ -1,3 +1,5 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ + #ifndef __ASM_TRAPS_H__ #define __ASM_TRAPS_H__ diff --git a/xen/arch/riscv/include/asm/types.h b/xen/arch/riscv/include/asm/types.h index 0c0ce78c8f..7505663efe 100644 --- a/xen/arch/riscv/include/asm/types.h +++ b/xen/arch/riscv/include/asm/types.h @@ -1,3 +1,5 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ + #ifndef __RISCV_TYPES_H__ #define __RISCV_TYPES_H__ diff --git a/xen/arch/riscv/mm.c b/xen/arch/riscv/mm.c index ab790f571d..b50641a80e 100644 --- a/xen/arch/riscv/mm.c +++ b/xen/arch/riscv/mm.c @@ -1,3 +1,5 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ + #include #include #include diff --git a/xen/arch/riscv/setup.c b/xen/arch/riscv/setup.c index c4ef0b3165..befbd07fde 100644 --- a/xen/arch/riscv/setup.c +++ b/xen/arch/riscv/setup.c @@ -1,3 +1,5 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ + #include #include -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Tue Jun 06 19:55:29 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 06 Jun 2023 19:55:29 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544191.849825 (Exim 4.92) (envelope-from ) id 1q6cm9-0004H9-JJ; Tue, 06 Jun 2023 19:55:29 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544191.849825; Tue, 06 Jun 2023 19:55:29 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6cm9-0004Gf-C3; Tue, 06 Jun 2023 19:55:29 +0000 Received: by outflank-mailman (input) for mailman id 544191; Tue, 06 Jun 2023 19:55:28 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6cm8-0002er-2C for xen-devel@lists.xenproject.org; Tue, 06 Jun 2023 19:55:28 +0000 Received: from mail-lf1-x12a.google.com (mail-lf1-x12a.google.com [2a00:1450:4864:20::12a]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 1411477f-04a4-11ee-8611-37d641c3527e; Tue, 06 Jun 2023 21:55:25 +0200 (CEST) Received: by mail-lf1-x12a.google.com with SMTP id 2adb3069b0e04-4f6195d2b3fso4971252e87.1 for ; Tue, 06 Jun 2023 12:55:25 -0700 (PDT) Received: from fedora.. ([94.75.70.14]) by smtp.gmail.com with ESMTPSA id j29-20020ac2551d000000b004f1383d57ecsm1563284lfk.202.2023.06.06.12.55.23 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 06 Jun 2023 12:55:24 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 1411477f-04a4-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686081324; x=1688673324; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=+EcH5kcQKxxsGaNTd34XZ5jD66PVUtcw5BEPk5sk3Zo=; b=KJtpN5WDntZQgXJogrcQsPMis5suzLL0SLmEgaWEi22vWDVOv3Bpb5PVNwWtPgt4BF St2cD6/IOhij+eOJS9ADx+HetjbAJ++T53Mno7FDKIKbESTq3skRfX2o9uhfABX7su7c +8MVBnbhnNsreAGTP09p1IZtrK57fjTep27eYAzq2xUqYgX3Fdpt+MxNH57k9QwmaLVv va/ZQsGfC21RG00Vc+Bsf4vhP0hyfwlu7F7S/PKtuVyqsKDgQjQtyzxqej22C7EhPsWO 4Ph+w7cuaenaYB6DSBf6w8O6UI/vEPYTFtfJHSN2JBsFchDO7i3nMegcEmijrsuZ/7ra tovQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686081324; x=1688673324; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=+EcH5kcQKxxsGaNTd34XZ5jD66PVUtcw5BEPk5sk3Zo=; b=TN6tf5S6gh9tnm2D0R4Kgt8lalstoxLEYhYdqEhK9tzQUlPpsnSpJJKGCBgrwvjORF Z0CLbL1SQrbK/ZslG6qWs/k2+QYFjL6b4qY5tRI1+MvXAFg6J3rSRfPgG9ZwMdUgMufh +3kT0t/hwSi93QZhhF3PfFMfQnW9bJGMo1h8uWp4rqzTfLeG0zM1aGKZHHSdvjE55J2W 5h2WBmQGa2IP+y2Ss19gc3ZAwvrwxBNoNIMbU2FnMpa5/FiQ4zakINKM0IGgDlfE/wem whSkd2PXjTJ783ztZ7mvVgBSw7RTfM7KWrv3IZd19P4j1Q3cJo9Z4OX6dy+W70FIRQi9 A1bw== X-Gm-Message-State: AC+VfDyTqSICThWaJyhOSVm9nLMWlwCdbiFnH//F0qorQixs4eoofQSK 6Jsl68ZgnKvchxQ74Uw3tFT8/HsocSk= X-Google-Smtp-Source: ACHHUZ5oZksC0xqC4aMn5c8xPi0PD3LcmIk7XGGr3hG0ChIOf7A7YAiWxUtT2YhBvjCN3CqOmwUgAw== X-Received: by 2002:ac2:4c14:0:b0:4e9:bafc:88d0 with SMTP id t20-20020ac24c14000000b004e9bafc88d0mr1583584lfq.23.1686081324490; Tue, 06 Jun 2023 12:55:24 -0700 (PDT) From: Oleksii Kurochko To: xen-devel@lists.xenproject.org Cc: Jan Beulich , Andrew Cooper , Oleksii Kurochko , Bob Eshleman , Alistair Francis , Connor Davis Subject: [PATCH v1 7/8] xen/riscv: add __ASSEMBLY__ guards Date: Tue, 6 Jun 2023 22:55:15 +0300 Message-Id: <298e8876fca284eac7caf7e62339ead177da9609.1686080337.git.oleksii.kurochko@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Signed-off-by: Oleksii Kurochko --- xen/arch/riscv/include/asm/page.h | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/xen/arch/riscv/include/asm/page.h b/xen/arch/riscv/include/asm/page.h index 8e8ec9ee36..1c6add70a5 100644 --- a/xen/arch/riscv/include/asm/page.h +++ b/xen/arch/riscv/include/asm/page.h @@ -3,6 +3,8 @@ #ifndef _ASM_RISCV_PAGE_H #define _ASM_RISCV_PAGE_H +#ifndef __ASSEMBLY__ + #include #include @@ -60,4 +62,6 @@ static inline bool pte_is_valid(pte_t p) return p.pte & PTE_VALID; } +#endif /* __ASSEMBLY__ */ + #endif /* _ASM_RISCV_PAGE_H */ -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Tue Jun 06 19:55:31 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 06 Jun 2023 19:55:31 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544192.849841 (Exim 4.92) (envelope-from ) id 1q6cmB-0004kk-2R; Tue, 06 Jun 2023 19:55:31 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544192.849841; Tue, 06 Jun 2023 19:55:31 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6cmA-0004ji-S1; Tue, 06 Jun 2023 19:55:30 +0000 Received: by outflank-mailman (input) for mailman id 544192; Tue, 06 Jun 2023 19:55:29 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6cm9-0002er-2M for xen-devel@lists.xenproject.org; Tue, 06 Jun 2023 19:55:29 +0000 Received: from mail-lf1-x129.google.com (mail-lf1-x129.google.com [2a00:1450:4864:20::129]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 144bf0ef-04a4-11ee-8611-37d641c3527e; Tue, 06 Jun 2023 21:55:25 +0200 (CEST) Received: by mail-lf1-x129.google.com with SMTP id 2adb3069b0e04-4f62b552751so3270312e87.3 for ; Tue, 06 Jun 2023 12:55:25 -0700 (PDT) Received: from fedora.. ([94.75.70.14]) by smtp.gmail.com with ESMTPSA id j29-20020ac2551d000000b004f1383d57ecsm1563284lfk.202.2023.06.06.12.55.24 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 06 Jun 2023 12:55:24 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 144bf0ef-04a4-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686081325; x=1688673325; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=adjWBIjLafrAFiXOiNb5AAc0fFbNojcht2Nhfx9j3rY=; b=lLlE/Lkij5rFq1/swnQoTR/UnZJQUo2DNCfhq+FuydN0XGEcQCBCzeQudJxwRbtqFw cCWF0IHBvJkM3Ja/hbU3SSXSR4MBwgkgywR49W0FC4ISBLfVF+XFFndNNg1QO3Z2VHyU tgrMW4wePwhSIllB7WAUJck6VNsXiC4CbFLMv3k8qf8olqIL/MWPQVdGGrarwAWRhEus F4ftcQrY7w6WeICbhEbeUGHCsfri9C+hvymcstaifuOOuSpejhre30mZ8L3dy8LLV76h n79zx4qAE/j8H/kF9IR0PCuleFACwzY7IAFvKMwfcwKDD0Xp573LTo2czdFY8MZ7iyM+ 8z6w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686081325; x=1688673325; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=adjWBIjLafrAFiXOiNb5AAc0fFbNojcht2Nhfx9j3rY=; b=CwLEGPnjvnbRP0rv5HeNBgZSEqpMc44RQqANgKLoFytEsaBGvBghV6ISAlvTCPbkK9 kI3uwgWeC/rQuuHDb6b0ENxv9BxP4m2aRj9RlXwMIKKmAJE/6Gq2CQISCeFgmtHAQ1OO 806q603HICL+NTL30/OJLhloqD5/LuKCptxw87tjEtl5bp+7cpttVowUoH0k92u5Tz2d 4k4ecsz7n9m5a486mNjlwKdKFPuueSwkO0BgRTyio/VG7bxNaLY40CnoKYNKUqZKR8DA oNLE6jKFvz/gqkzueBHN0X2bH0234a/62AGedRpicAK9PZlOzbtfdzBCb5zwUFPSnHow Jndg== X-Gm-Message-State: AC+VfDxjvnXSbqSZO6BuskXKm5wKVA0381xJAcVe9qjVjTssCV0c2G4b gxasLrHzZ7ULhqy6JIDAOHEZbyuPRIY= X-Google-Smtp-Source: ACHHUZ5S3DssVanCU7X8GAZ1N4I05W+hlWQgRzwYEaGaONJ5RY9mmFBjBatvPLclkbh7M3F93PaCVg== X-Received: by 2002:a19:f809:0:b0:4f6:3677:54e with SMTP id a9-20020a19f809000000b004f63677054emr1178416lff.36.1686081325083; Tue, 06 Jun 2023 12:55:25 -0700 (PDT) From: Oleksii Kurochko To: xen-devel@lists.xenproject.org Cc: Jan Beulich , Andrew Cooper , Oleksii Kurochko , Bob Eshleman , Alistair Francis , Connor Davis Subject: [PATCH v1 8/8] xen/riscv: move extern of cpu0_boot_stack to header Date: Tue, 6 Jun 2023 22:55:16 +0300 Message-Id: X-Mailer: git-send-email 2.40.1 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Signed-off-by: Oleksii Kurochko --- xen/arch/riscv/include/asm/mm.h | 2 ++ xen/arch/riscv/mm.c | 2 -- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/xen/arch/riscv/include/asm/mm.h b/xen/arch/riscv/include/asm/mm.h index 3b04131628..fc3afa5521 100644 --- a/xen/arch/riscv/include/asm/mm.h +++ b/xen/arch/riscv/include/asm/mm.h @@ -8,6 +8,8 @@ #define pfn_to_paddr(pfn) ((paddr_t)(pfn) << PAGE_SHIFT) #define paddr_to_pfn(pa) ((unsigned long)((pa) >> PAGE_SHIFT)) +extern unsigned char cpu0_boot_stack[]; + void setup_initial_pagetables(void); void enable_mmu(void); diff --git a/xen/arch/riscv/mm.c b/xen/arch/riscv/mm.c index b50641a80e..56d3bbb422 100644 --- a/xen/arch/riscv/mm.c +++ b/xen/arch/riscv/mm.c @@ -19,8 +19,6 @@ struct mmu_desc { pte_t *pgtbl_base; }; -extern unsigned char cpu0_boot_stack[STACK_SIZE]; - static unsigned long phys_offset; #define LOAD_TO_LINK(addr) ((unsigned long)(addr) - phys_offset) -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Tue Jun 06 20:29:46 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 06 Jun 2023 20:29:46 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544231.849850 (Exim 4.92) (envelope-from ) id 1q6dJ9-0002MN-I7; Tue, 06 Jun 2023 20:29:35 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544231.849850; Tue, 06 Jun 2023 20:29:35 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6dJ9-0002MG-FZ; Tue, 06 Jun 2023 20:29:35 +0000 Received: by outflank-mailman (input) for mailman id 544231; Tue, 06 Jun 2023 20:29:33 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6dJ7-0002MA-ON for xen-devel@lists.xenproject.org; Tue, 06 Jun 2023 20:29:33 +0000 Received: from NAM12-MW2-obe.outbound.protection.outlook.com (mail-mw2nam12on20624.outbound.protection.outlook.com [2a01:111:f400:fe5a::624]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id d52fb317-04a8-11ee-8611-37d641c3527e; Tue, 06 Jun 2023 22:29:29 +0200 (CEST) Received: from MN2PR12MB4408.namprd12.prod.outlook.com (2603:10b6:208:26c::14) by BL0PR12MB4963.namprd12.prod.outlook.com (2603:10b6:208:17d::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Tue, 6 Jun 2023 20:29:24 +0000 Received: from MN2PR12MB4408.namprd12.prod.outlook.com ([fe80::61d6:7feb:e8e8:bc4]) by MN2PR12MB4408.namprd12.prod.outlook.com ([fe80::61d6:7feb:e8e8:bc4%6]) with mapi id 15.20.6455.030; Tue, 6 Jun 2023 20:29:23 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: d52fb317-04a8-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=RByOfWuDcO60Mg+g9cAgp9AJg33go+rxhoYPHl+AEY4E7FuAyXjRTMZPCk8oBYttHhi1AuzEEeNvb7XlrKfSYR9LtyR4xX2Fotm7Pyl18Pc+sOdC+U4Jhw2ZkNjHPQlt0HLgismTlxJuWolauRDzo7zspVbJw06wFOApQAb6+chPiZVTQI9eVvBbXLdl0YWy6ZBJB17y0PidSgajX7zUxdWdAapWg7MVU99fESh2Bl1attYYz1LTj5JrgSfRtWTtjXvCOmOTRr7Xq8vMgq/zb69WHIU57GKN3Ov9DAtJ0MMpkcBQcSxib7zntOSrhpKp8KuuWAotegzijxjXm2RGKQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=KUtqmPhMdCgIo+SwNL8lNC0TyJD4G8ISM6axJOzb6ac=; b=Fj7uVqsEJ8m8oDTkq53IrS6c7P5778nokqRVt0WhtmNY2sIE+9K7bxJVLQu5dDevXqpYosoTd5QI888VlVV0PY5tDajbaapbupb+XdChp71YD+sYNbFsMJz8TqISWxCojQZwIOTzV3YJQVs1Z38qXRMeQ11E2e+JO4GcDCpWo08xuKPpgUtZjkVkFDPQ/yEtnX6Z5qmZOHrfF7mAK45fxd1qKq2RFGzAaY9xoUpRlDoQZErgNnodzSrcjuOi1tvOLBDSDZhTRUbMOLAH03IAzSk6vLWTcMz5j7DH7NeUwlEX1aY4JO31c0637a1b4ZQRzjNTkiAjf8BDSn1oacou4g== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass header.d=amd.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=KUtqmPhMdCgIo+SwNL8lNC0TyJD4G8ISM6axJOzb6ac=; b=SWvG8efCxy5S275v5nHTYwYYN45Kc8m6KAlg4MFS2zvZ30Pk9GZxmk7/0cQj4ingZN1NW61AAbgyRRRxzZV1u3GJ2rG3DlQUT1Ei2jutQr4JAryXV/jGBTvULRkuEmPWBXc7O14xYNDEnZj7v9ODlCX+8oGn1ddbMkvuKb5+ZPI= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=amd.com; Message-ID: <007122c9-1ab2-dd5e-bed4-64333113e55a@amd.com> Date: Tue, 6 Jun 2023 13:29:21 -0700 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.11.2 Subject: Re: [XEN][PATCH v7 08/19] xen/device-tree: Add device_tree_find_node_by_path() to find nodes in device tree Content-Language: en-US To: Julien Grall , xen-devel@lists.xenproject.org Cc: michal.orzel@amd.com, sstabellini@kernel.org, jbeulich@suse.com, Luca.Fancellu@arm.com, Henry.Wang@arm.com References: <20230602004824.20731-1-vikram.garhwal@amd.com> <20230602004824.20731-9-vikram.garhwal@amd.com> From: Vikram Garhwal In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-ClientProxiedBy: BYAPR11CA0053.namprd11.prod.outlook.com (2603:10b6:a03:80::30) To MN2PR12MB4408.namprd12.prod.outlook.com (2603:10b6:208:26c::14) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: MN2PR12MB4408:EE_|BL0PR12MB4963:EE_ X-MS-Office365-Filtering-Correlation-Id: 9ca353af-99f9-4397-3eb2-08db66ccb734 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: YDTUGei3jAVJ72LLVCFq3E/AeiVsLoG/CLIO7SdNKUaP5RwPWZeYSBpBy9OeOvGwZKGpPipXfweE/v0l0hu6cx4/A+eVKfAElZhS+UfQuW5uVRcYRRx56+wMggQTTUFe57XojjbosGWH3D8YtQ9hCC6+qO56dLCj1DqWORWd2Kiozxd/2rOF7f1SqJOqQ/FdB0nsmYQs2BjqpddHXMZ8MMUPmaHt7JB5NUa83EwLowulMUXHLzRPPQMNRysRyaXWsGnejoWYeZtgdL57ugJXA05UGggvZqRbH1vTc/u36GWUazmKj9YirnZgb8FgLmIL9KwJNA/qbfQ8480pDJqkKQC48w35XN9Bzuh+rHM4TFvErMd5mfQiuGZUygDARA9Dj+xBVme3CavWlREGZmVr8pt30vIgvjWFJpWk1QnZAzCl/oWFHzclAnXBP14RcGUZxSNnNfEp8FHFci+Z5UOvh+PFuRgt0KLXMyHfxsJuROvUzFJB00lrpm471WDLifPAkeZhjj50fNp2H1nHNN9uS6vi6tpLCZGGaWSrMRrF2Qqx2hQf7mifxG4bLweTbznXF7Kv53W1tUuC65IBb2LEKUiMTUfl64nNAgDB8cgVGScAiDtdG19FKsO8hM3w2R6Dt9R4S3Xgb3qFdDXmdMWNz9e47bZG6BPcXZiUUgo+iPQ= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MN2PR12MB4408.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(376002)(346002)(136003)(396003)(39860400002)(366004)(451199021)(41300700001)(478600001)(316002)(44832011)(5660300002)(66556008)(2906002)(66946007)(4326008)(8676002)(66476007)(31686004)(8936002)(6486002)(86362001)(31696002)(36756003)(2616005)(38100700002)(186003)(53546011)(6506007)(83380400001)(26005)(6512007)(37363002)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?RXo2M3Y2eWxqK3RtL0dzZ3ZUNjZVYXp0bjI1d0Rrdy9FdWV2UFA5aGU1ZERM?= =?utf-8?B?bjErNCt4TzMvWnNJZUhXdDFmZ2pKZjZzNG5XejJqei8yMFk3SXpqc0xiVSsr?= =?utf-8?B?SElzdEpOS1BQNFhjdGQrQXFnbHJXa3BxdkFtbDFESUJzV2tNSUpmMWhZMmFs?= =?utf-8?B?RmV6ZnRNNlk2amZRQmx0NEhESEZkcGgzVGFhVENaWDRVem1XRlNjd3NOSDRk?= =?utf-8?B?WEFpL2taRnRuZklmUUdXV1VCSkEwVWt1ZmM3NVRKK1BkZzNRMzZXamZtOEtX?= =?utf-8?B?cjRpeDNmMVN0MDBhclhTRkQ4VStwZkhOMVdGalVpZTlEU29YNFpRVnNjZlNS?= =?utf-8?B?K3NKODl3a2tQd0prVGc3Q0g0RGROa3ZaejRkc1NCMGFVQXFFYWwwWE5MMW9H?= =?utf-8?B?eHBEL0h3eXF3cHNyQjJQV0pTU1BWcGNVZ1ZGdllyM29sOWxqdG95T0c1YkJn?= =?utf-8?B?SmNSMExvdDkzYldyUDFYc2xpaG1CT05UT2xTN1N1MG5DZXFCMmhRczE2d09y?= =?utf-8?B?aXA0Q294VnhzS3pPMG5KR2FINU1jamhNcXhvN0Z5ZzNWeGsvMXpVM1ZtY1N3?= =?utf-8?B?ZEx2VE8veEw2ZS8rZHBXY2EvbHpyN1d1ZGI5Ynl4RzRRUlVmSW1SVVIzMmhM?= =?utf-8?B?MkduOXpmdk5yMGlBMlN2cnU4UHR5K3lnV0x6bExGYmRSckYrOUw4SytwSFhX?= =?utf-8?B?U3h1bUg3ZDJNVmh3akJOUnB5U3FYNld5UVBRa3RhYUphUUs2U1lnWVFtRDY2?= =?utf-8?B?NTkzcS9MaGR2bUxLMnlrSFZWNjNnOGxqUE5COHRzK3FKZTZuQmhBdkVxUXNU?= =?utf-8?B?emtsTzFuTmMrRmRQbSs0YmtLdGxqZWk5NlBIc2hGWjZJZkZCNGZ6NHpZY3Vv?= =?utf-8?B?dUdDdFJCaDhzSWEzV1E1L2llT0VXdUE2bTRTcmR0QkZ1SUVtbEUvTHQ5SFox?= =?utf-8?B?WlU2UWdGUDVKUTdzaWZFeUliRm1KckdnVlZqMHdWTmxyTUVaOW4yZWJ4eENk?= =?utf-8?B?dnNRRndxeGRZaFBzeEJIYzN3ZmtJczl1M2Z0dmc5NytFL3JybkQ4UENWSmha?= =?utf-8?B?b0g0OFN2V0w4WldqYXNZQXFuc2s5YlFLMHhKNlBzYVpmV1B1MitFSG9yeWFI?= =?utf-8?B?R3VBc0s5RkJWMzUrTVFxUkpDV1FESnZWRjVCdmd3QkNoVGhPNGNpYW05eEMz?= =?utf-8?B?czVGcVYvbnhURUJMaXhrd1FjdW1lR2tKMTV0YURYZWlHN3YzL0ZNT2FTb3pI?= =?utf-8?B?UHpUenBiSldnME9SNkdRWVBCU3dTUEQ2K0pMelJ1UkwxQTdpeGRTb0YxWmFi?= =?utf-8?B?WGxNYjFSQ2w0UnVmYnpWTi9CazV6YkUyb3ZlaVlOOWUxVGkwWHpIaWxyZUZH?= =?utf-8?B?MVl3ZS9hZHRaNXdTVmhuellaemZ3NUsyc3VtRFBLaWVxclhaLzQrVDZIZDR4?= =?utf-8?B?eS91aWR5VUtBbDNHWklUaTEzUHh6UDdKYzhrZklVTTdrOXpmVkY5Y05nQUxU?= =?utf-8?B?S1pHSDg2RXZGaXRzNUdUNSt0RnhKZlA2VlVxalRDM1BxY3ZTZU15TVpxM2lG?= =?utf-8?B?VVVhckZxN0d5amhIdTBYVGJVYjFvSS95cHRKd3ZJcHlxVGx2MEVXUEx3SlMr?= =?utf-8?B?NVY4ZmVpRzhFUi9BUm1iTko2cjJkRkdIeWlaUlM1R1NIVThUVG9lTUYyWjFV?= =?utf-8?B?bnhqVjdWUTVXZDJVdXhHanJ1ZDRlLzlWYVZkUmRQcmViWVZNWHFHdmc5VTJs?= =?utf-8?B?cTg2MCtsZG4yankvOXJFN2tFUGF3cnBwYzlBcVFld3NuVWJtZTJ1eERUOE1Z?= =?utf-8?B?dmdTU2lESDJOWEErVlAzV2luRDBiUjE5WUM3djl4cU92bVRDVEVXWmY2UmNL?= =?utf-8?B?RkxTRDNDMy9UaFZ6ck9VVVJscEhKWE5pY0c4UnpuaUZEYVI0bDFubEV0ekpn?= =?utf-8?B?eFFjNm9VMjNNRWtVbUhOMEVlSnVIK3JzSVhYOGFyUG0vYjdjYkNrVExwR240?= =?utf-8?B?UE9udkpybGY3clVIL2xMTTNmY0NkUFl2YjBOdGF2UFd5eVZpMXRwWmNVaEZi?= =?utf-8?B?azBFN2NidmRMMjBxbVJmZmJFVXZVa1RpN3pEVUVlRi91cDVsV0ZuZTgvUUhY?= =?utf-8?Q?m01swbt8IHfN7b+OzNo/JKCGY?= X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-Network-Message-Id: 9ca353af-99f9-4397-3eb2-08db66ccb734 X-MS-Exchange-CrossTenant-AuthSource: MN2PR12MB4408.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Jun 2023 20:29:23.7698 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: g9udkDcXsi3A/dKCu7pkGKisJSlq7sC3cx4IssaZOxk0ofohIWA/XohAXcSL/2aO7LT4BsOEgYYs79Vox28neA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: BL0PR12MB4963 Hi, On 6/5/23 12:12 PM, Julien Grall wrote: > Hi, > > On 02/06/2023 01:48, Vikram Garhwal wrote: >> Add device_tree_find_node_by_path() to find a matching node with path >> for a > > AFAICT, the only difference in name between the new function and the > existing one is "device_tree" vs "dt". The latter is just a shorthand > of "device tree", so it feels to me the name are a bit too similar. > > From my understanding, the main difference between the two functions > are that the current one is starting from root whereas the current one > is starting from a given node. So how about > "dt_find_node_by_path_from()"? Thank you for the suggestion. This name was added in v3 as Luca Fancellu suggested to rename this function to "device_tree_find_node_by_path". I am okay with renaming it to dt_find_node_by_path_from(). Luca, Michal and Henry: Does the dt_find_node_by_path_from() name works for you? Regards, Vikram > >> dt_device_node. >> >> Reason behind this function: >>      Each time overlay nodes are added using .dtbo, a new fdt(memcpy of >>      device_tree_flattened) is created and updated with overlay >> nodes. This >>      updated fdt is further unflattened to a dt_host_new. Next, we >> need to find >>      the overlay nodes in dt_host_new, find the overlay node's parent >> in dt_host >>      and add the nodes as child under their parent in the dt_host. >> Thus we need >>      this function to search for node in different unflattened device >> trees. >> >> Also, make dt_find_node_by_path() static inline. >> >> Signed-off-by: Vikram Garhwal >> >> --- >> Changes from v6: >>      Rename "dt_node" to "from" >> --- >>   xen/common/device_tree.c      |  6 ++++-- >>   xen/include/xen/device_tree.h | 18 ++++++++++++++++-- >>   2 files changed, 20 insertions(+), 4 deletions(-) >> >> diff --git a/xen/common/device_tree.c b/xen/common/device_tree.c >> index 16b4b4e946..c5250a1644 100644 >> --- a/xen/common/device_tree.c >> +++ b/xen/common/device_tree.c >> @@ -358,11 +358,13 @@ struct dt_device_node >> *dt_find_node_by_type(struct dt_device_node *from, >>       return np; >>   } >>   -struct dt_device_node *dt_find_node_by_path(const char *path) >> +struct dt_device_node * >> +                    device_tree_find_node_by_path(struct >> dt_device_node *from, >> +                                                  const char *path) >>   { >>       struct dt_device_node *np; >>   -    dt_for_each_device_node(dt_host, np) >> +    dt_for_each_device_node(from, np) >>           if ( np->full_name && (dt_node_cmp(np->full_name, path) == >> 0) ) >>               break; >>   diff --git a/xen/include/xen/device_tree.h >> b/xen/include/xen/device_tree.h >> index 2c35c0d391..e239f7de26 100644 >> --- a/xen/include/xen/device_tree.h >> +++ b/xen/include/xen/device_tree.h >> @@ -561,13 +561,27 @@ struct dt_device_node >> *dt_find_node_by_type(struct dt_device_node *from, >>   struct dt_device_node *dt_find_node_by_alias(const char *alias); >>     /** >> - * dt_find_node_by_path - Find a node matching a full DT path >> + * device_tree_find_node_by_path - Generic function to find a node >> matching the >> + * full DT path for any given unflatten device tree >> + * @from: The device tree node to start searching from >>    * @path: The full path to match >>    * >>    * Returns a node pointer. >>    */ >> -struct dt_device_node *dt_find_node_by_path(const char *path); >> +struct dt_device_node * >> +                    device_tree_find_node_by_path(struct >> dt_device_node *from, >> +                                                  const char *path); > > The indentation looks slightly odd. In general, if the return type is > on its own line, then the function name is not indented on the new line. Will fix the indention. > >>   +/** >> + * dt_find_node_by_path - Find a node matching a full DT path in >> dt_host >> + * @path: The full path to match >> + * >> + * Returns a node pointer. >> + */ >> +static inline struct dt_device_node *dt_find_node_by_path(const char >> *path) >> +{ >> +    return device_tree_find_node_by_path(dt_host, path); >> +} >>     /** >>    * dt_find_node_by_gpath - Same as dt_find_node_by_path but >> retrieve the > > Cheers, > From xen-devel-bounces@lists.xenproject.org Tue Jun 06 20:33:56 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 06 Jun 2023 20:33:56 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544236.849861 (Exim 4.92) (envelope-from ) id 1q6dNB-0003mU-4w; Tue, 06 Jun 2023 20:33:45 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544236.849861; Tue, 06 Jun 2023 20:33:45 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6dNB-0003mN-1N; Tue, 06 Jun 2023 20:33:45 +0000 Received: by outflank-mailman (input) for mailman id 544236; Tue, 06 Jun 2023 20:33:44 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6dNA-0003mH-Gn for xen-devel@lists.xenproject.org; Tue, 06 Jun 2023 20:33:44 +0000 Received: from NAM12-BN8-obe.outbound.protection.outlook.com (mail-bn8nam12on20611.outbound.protection.outlook.com [2a01:111:f400:fe5b::611]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 6d37014c-04a9-11ee-b232-6b7b168915f2; Tue, 06 Jun 2023 22:33:43 +0200 (CEST) Received: from MN2PR12MB4408.namprd12.prod.outlook.com (2603:10b6:208:26c::14) by DM6PR12MB4139.namprd12.prod.outlook.com (2603:10b6:5:214::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Tue, 6 Jun 2023 20:33:40 +0000 Received: from MN2PR12MB4408.namprd12.prod.outlook.com ([fe80::61d6:7feb:e8e8:bc4]) by MN2PR12MB4408.namprd12.prod.outlook.com ([fe80::61d6:7feb:e8e8:bc4%6]) with mapi id 15.20.6455.030; Tue, 6 Jun 2023 20:33:40 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 6d37014c-04a9-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=hBs6eQ9npMemXf9nxgz5nIMThxdQNdNjE1L2nhZssx1QzJoIutc8zFs3gcjQ/AJSQhkQfF5x0NeIfrstWWqPR3cHG3LezXpN9DhOQErNwYYLlEmHpKXJrmXWVmv6/ktpP9z8GdMRqPq4pZo49ARGHnf5cP18lwchk/ZlQmWC1shou5kUiWhCHS+Ly6Wm87unJuRzyt3ueHeBYBvyi3bLoREvww1h1e2CgadzPm7zA37i2Q3U4XolLmW2CxF/Qc90Ri/FCk4gNkrB0RwHx9nMI4hn5CpZJps8qrNuMDtjbhbVkYCC0N75UEkpWEOTkK6KiZarGMYAq26t0dQFVT1USA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=/6+p8zqO5QnQqWj79oCRJlUkmOshIvTqZgbo1ZyT3XQ=; b=UDCoauNnxdrNW22Z3Jur5W83a8aCe66COHNXUaj1vhpXMVtL6JgjgqVsl7DhFgmTRI92irxDmJRNxrxtW9wAAOVAbZ5jXL37TYwV12cstEY8K3AYUbwy0BdN5d70vUHf4WYdiqtyArOUovjDpnKIU40hBZMCv9KtNN1XRimGozU282ZCBpyLIE0zRhCgCr3zplkSgpRSd3fTry3HPQCfAxb4LPmHr01wVbgPe7/xrABQT5kfILqAavDBN5q0OoP+qVYdIAAU0Z3xcns95EPWZGs5a/lzSxXvz13KMcR1GmbhVhApKCCMrbhaX5QdMVAyIm/jS9s/vubUogCx2/2KAw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass header.d=amd.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=/6+p8zqO5QnQqWj79oCRJlUkmOshIvTqZgbo1ZyT3XQ=; b=4Z1YXclgIpwsyjx5XL7AKGQylmUnmeaeXE50ZoaY3EgMOsnmM8FSnp7ZlvCgjUP21ABLDn3wYlcY4jRnfjpK1W8J7C+UNeeTi2FPGqJaN3VFoUz5yDt2w47uljV0wznYsvxP2N8OnruNncmbKJJu7idX6ou1Z2khD1/J7LlOFSA= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=amd.com; Message-ID: Date: Tue, 6 Jun 2023 13:33:36 -0700 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.11.2 Subject: Re: [XEN][PATCH v7 09/19] xen/iommu: Move spin_lock from iommu_dt_device_is_assigned to caller Content-Language: en-US To: Julien Grall , Michal Orzel , xen-devel@lists.xenproject.org Cc: sstabellini@kernel.org, jbeulich@suse.com, Andrew Cooper , George Dunlap , Wei Liu References: <20230602004824.20731-1-vikram.garhwal@amd.com> <20230602004824.20731-10-vikram.garhwal@amd.com> <1d4705b1-8e0d-ace9-333c-1e23d30c8afb@xen.org> From: Vikram Garhwal In-Reply-To: <1d4705b1-8e0d-ace9-333c-1e23d30c8afb@xen.org> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-ClientProxiedBy: BY3PR05CA0025.namprd05.prod.outlook.com (2603:10b6:a03:254::30) To MN2PR12MB4408.namprd12.prod.outlook.com (2603:10b6:208:26c::14) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: MN2PR12MB4408:EE_|DM6PR12MB4139:EE_ X-MS-Office365-Filtering-Correlation-Id: c5eb1b42-b7a3-48fd-62ac-08db66cd4fd9 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 7FION6idDjnP/qlPmdGDQ8xr99S1aOuYVFvllyyR5b8QfoTeQomSKGbMdiwj18N9AfN34YiMJXx9ACttWAH35sAt6w7x8e/1LrXpUXhIWQ9Dijo79fhKTroVhjTBjIJUFY6U3h6WI3mcLZR8/9E8t8wx/U/QrXzmo9cM5dUqJrPk/CA4tmBizlSoUEZgSwSSlKsqFjNUfswUoxwYAyN9orlH/kVbRIo9Z8cCpS+jDweeco3b/WOHfsAbsgQp31vXsDnN6ZDJV8DIj5x6CT2pitbjN/7Q+Uh9ytOs3Wy16RVuM0slheKSmdlkU1j0K1FyER1NNHQvwqLI2bOhNiu2sujdQKvRQ9C9yOoKzEwqvYNz+PEaS75/smDRj3/1094kxb4V/Lr5Jn07F1WwfnCTn4mXALwZU6aqaAbin0DoNvkuGr2gu673q9HSRlhJU1RNMQb+1k9ceVfmclY+YVchfRxdZHRT6335faBELw/3NlJI9cR+eLk3plTgOyZI8gXlPLhxeU/r3zt2QjeBwX3Csm3WMdPe9q4akvytxsXGqdPGS3D3Bka+qEIRrkotm1WKx3mVclJm4SAbagb5ZfOjEhLPC/JUsJKbF5ermVh0hNw2+iVuTxTZ1vm1JcbVQ1uCSNaATcxrhsoIWIkQvCy1IA== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MN2PR12MB4408.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(396003)(376002)(346002)(136003)(39860400002)(366004)(451199021)(66556008)(8936002)(66476007)(4326008)(66946007)(8676002)(316002)(54906003)(110136005)(41300700001)(2906002)(478600001)(31686004)(5660300002)(44832011)(6486002)(6512007)(6506007)(53546011)(26005)(186003)(83380400001)(6666004)(31696002)(86362001)(36756003)(2616005)(38100700002)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?bnh3Mnh3VkVTVGJmTzlLemJFc0ZEcXM1VDhYWFl0Sy9uanNpMkVEZEVkNE9O?= =?utf-8?B?MTB1dmZVN2pRNERqRkt3ODJhWDd0cDVRQzJhdDd0dytzZGZzL3BFdVI5U2NC?= =?utf-8?B?dmR6MnplRU1JbE1ER1UvSWJkcUhIUU9zSWcwM1hjRTMrZXJwdWtMRmtvREpH?= =?utf-8?B?djRzWDE0d1pDcmw0NVN2anVUMXhVdWRobHBzdUtZdW9sTXg5QnNqMlZSTElJ?= =?utf-8?B?YldhU1ZwNjNKWkRlY1B3dmk0aFZZd2VDVlVEZ29Ob0Q5RWRJTExRZzNveDQy?= =?utf-8?B?Qi9kcXQyTlNiZEtDc0RaVFpUUnQxU2VXa1llUW1pVUhlMzA3THRiWFprYjJE?= =?utf-8?B?UjRyRWFDWTNKaWEyeW5kc1hCNUFzK1ROa3hjNEtZQzVWTGFmeDhlaDRlZnU4?= =?utf-8?B?MDBTN3BJNEhkSVQ4aXpnTmhaNDhaS290YUl4RVNINVQxK29DNWcwTExCMklW?= =?utf-8?B?WkxUUHBSNVlGMzhTYmF6S1F5SlU2Y2dvUkFtSlcyellXSWxhSGVhbDFIbjl4?= =?utf-8?B?S2d6Sm5ONS9zNXpZcFZEbGd1akZWb0dKWDM3Z3pXRXFUL1RsczZuNzBYZytH?= =?utf-8?B?YmRDUUR4bVhnZTBuZ0JDN1lRZVM2Y2hXTEhEZVpwZlhpNmJiZlptUlBHYlFx?= =?utf-8?B?TG5kbEpUaHMzTU5la2lObXJENnB0eHZtNk5wdk9KTTloRzB0clptU1d4YXd4?= =?utf-8?B?Zm1XWjBHRW1GZGUrWjVkSXh6bEI2clg5dXp0aTVJakNnb3k2c2F1TE1FSUJE?= =?utf-8?B?V0ErQkdwVUpPQjJlUEhBRG5BUUlXd2dtQ2RnNVRCMk1DdkJMV3IvNVdYMllw?= =?utf-8?B?UHRmaHdwdUU0ZnduZzBuV0hvNXZmbG5zY2RKWFlISmFRU1ZDRkhCZjJxQWNu?= =?utf-8?B?aFhaRU4yUmlkUXl1SG45aEIvT3A3N2J5SkMyYVA1MElNelNoM2FwblMyYWc2?= =?utf-8?B?T3J1RG5aSlBDbVpHQk9oV1ZORDlGaU40aXhzRHNLSE9FRTAvREdUQjhBbjQ5?= =?utf-8?B?b1FUU3lkUUVYYnJXdC9pQnpYaXo2REpsa2pDcTZMbmFOUnM0QThTVGdQTGVo?= =?utf-8?B?WXd0Y28yTmVGb0xFRWxyUlhmSWlRVjBHYVpGaFV0Rml4RTg2NzNqVG9ReTZM?= =?utf-8?B?Q21mL3ZTdlhTMWF6NG9hTU5tcW0xNGpsNW9ZZ3dnNlNaTnphbkc3T2F5MnBp?= =?utf-8?B?cWh2aVBVWGhFUW9Va1FjdU5ZeFM0RmdWQ0JTVFAvVVdqdE9PNVZVV0Q3YkZk?= =?utf-8?B?enBDRy9tTFJQeGpCbGFvb1UvQlNnTnJUZjBaaG9JQ3RSWWpvclZqVTNyYjNY?= =?utf-8?B?S29zbUY4NTB3ZnM5ZU0wQUpjYW5VQXhOTU9kd2dReGltZmJ3dlhDbVVzV1pF?= =?utf-8?B?T1h4cmlWZG9zMlpqc2REUzMvdUlKRXBvbVcyMGlNQnZGK1lObHBpSWhKSHl5?= =?utf-8?B?TmNKaW1rWU1qdzJYL2xkYi8wME5lSWZDY0o5SzB0V0phL3dvd1BpbWR2cVRo?= =?utf-8?B?aHZPcW1hTXowdG5VSHJQek1JOTBnM3BFSERWSU5DNVpLckxoTnAxN3BEbkJz?= =?utf-8?B?RUppUmtYM0lWaFgxSFBXSitSUmNQbkNuV0drL00wT1JtSDZRT3FGRU10S3pj?= =?utf-8?B?UlpxVEVrSVBNbjNxRXVGQ3k3N3d0NDFvOS9jZGVvRVFYc3FKOFJFbXhsZzRr?= =?utf-8?B?WTN6Zm1qVDBUYStVOTEwWDd1Z3ZDVEtmd3MwNUFxRVpXcjdVamVVcUJUQ0VK?= =?utf-8?B?NnpqVzF3a1lMU21IOUFTY2RvNHRZcUtXMEZPUFN1Y1VxODI3MjEyUGZIQVJP?= =?utf-8?B?ZFByaGF6bU5aOFdSbFlyWU00RXRKV0pHMjZXTlpsNjRRZy9hcTRwWndOSUFL?= =?utf-8?B?ZzA3bithekJnMkRKellWTVhUbDFPbDFDbTEwbkpFMVczdU0yVGw5SFJiRXNB?= =?utf-8?B?VmFlazNsVTh5bWh2N3AvZGU4TTNueE1ZK0hhbmVPNmhZMTliWW9rTUhqWXh6?= =?utf-8?B?SlBsRXpHTDRuaWpsZE1YcUVYeEJ6Z3dpWnkrOERsaU8vbm5zYnpkMjNtMHlr?= =?utf-8?B?QjdRc1FMYnhIVUtQVng5Uk9SbnFVWDVIZnBWVFo1KzAxdHd6Tmt2Qi9EcFov?= =?utf-8?Q?FMz6qsVhlLju4P82K4Oggct6I?= X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-Network-Message-Id: c5eb1b42-b7a3-48fd-62ac-08db66cd4fd9 X-MS-Exchange-CrossTenant-AuthSource: MN2PR12MB4408.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Jun 2023 20:33:39.8972 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: EtuZSyXWexCU4cTIDDkJrNtyqQ18F/wa7YsSF2uj7LNZTKyDb05QQsOEUjQvVq1lD5S6hn37H2WZSBdrmpUqQQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR12MB4139 Hi, On 6/5/23 12:22 PM, Julien Grall wrote: > Hi, > > On 02/06/2023 08:45, Michal Orzel wrote: >> >> On 02/06/2023 02:48, Vikram Garhwal wrote: >>> diff --git a/xen/include/xen/iommu-private.h >>> b/xen/include/xen/iommu-private.h >>> new file mode 100644 >>> index 0000000000..5615decaff >>> --- /dev/null >>> +++ b/xen/include/xen/iommu-private.h >>> @@ -0,0 +1,27 @@ >>> +/* SPDX-License-Identifier: GPL-2.0-only */ >>> + /* >> incorrect indentation (<< 1) >> >>> + * xen/iommu-private.h >>> + * >>> + * >>> + * Copyright (C) 2023, Advanced Micro Devices, Inc. All Rights >>> Reserved. >>> + * Written by Vikram Garhwal >> I'm not sure if placing the copyright is appropriate, given a single >> prototype for a function >> not really implemented by you with just spinlocks removed. But I >> might be wrong. > > I agree. If you want to add a copyright then it should be the one from > the original author. > > But in this case, I don't think we should add an copyright as there is > nothing really interesting in the header. Thanks for pointing this out and explaining the process. Will remove in next version. > > Cheers, > From xen-devel-bounces@lists.xenproject.org Tue Jun 06 21:30:56 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 06 Jun 2023 21:30:56 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544243.849877 (Exim 4.92) (envelope-from ) id 1q6eGC-0001mx-BQ; Tue, 06 Jun 2023 21:30:36 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544243.849877; Tue, 06 Jun 2023 21:30:36 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6eGC-0001mq-8b; Tue, 06 Jun 2023 21:30:36 +0000 Received: by outflank-mailman (input) for mailman id 544243; Tue, 06 Jun 2023 21:30:35 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6eGB-0001mg-3b; Tue, 06 Jun 2023 21:30:35 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6eGA-0007Jo-It; Tue, 06 Jun 2023 21:30:34 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6eGA-0005VG-93; Tue, 06 Jun 2023 21:30:34 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q6eGA-0007WW-8e; Tue, 06 Jun 2023 21:30:34 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=GLzHgstZA7FdE6JMfRdbyDRYNlOxe85dekewZE5eXUE=; b=OXAdgteZD+9t9Ax4xF0EiRSIgK iaZJEybZCH/kB9BQYodCtj/0v1rCftbH3CNu3CRmt9k1BLxZsBiVgn8bpCEfRWUN60fB1+VNCte6I hAPsdmR7fEXdEkPc56GIe/X20wqF9iG+/daK5H4JoxMMkStuwk1D91KgUObuNAlqF3YE=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [ovmf test] 181221: all pass - PUSHED X-Osstest-Versions-This: ovmf=cdd20638bc97cef1356a5c687a412f869c637245 X-Osstest-Versions-That: ovmf=4bd0849d81b48233196092868081315ec4d9233d From: osstest service owner Date: Tue, 06 Jun 2023 21:30:34 +0000 flight 181221 ovmf real [real] http://logs.test-lab.xenproject.org/osstest/logs/181221/ Perfect :-) All tests in this flight passed as required version targeted for testing: ovmf cdd20638bc97cef1356a5c687a412f869c637245 baseline version: ovmf 4bd0849d81b48233196092868081315ec4d9233d Last test of basis 181213 2023-06-06 11:11:37 Z 0 days Testing same since 181221 2023-06-06 17:10:53 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Oliver Smith-Denny jobs: build-amd64-xsm pass build-i386-xsm pass build-amd64 pass build-i386 pass build-amd64-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-i386-pvops pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Pushing revision : To xenbits.xen.org:/home/xen/git/osstest/ovmf.git 4bd0849d81..cdd20638bc cdd20638bc97cef1356a5c687a412f869c637245 -> xen-tested-master From xen-devel-bounces@lists.xenproject.org Tue Jun 06 21:43:05 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 06 Jun 2023 21:43:05 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544251.849886 (Exim 4.92) (envelope-from ) id 1q6eS3-0003Nl-Kf; Tue, 06 Jun 2023 21:42:51 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544251.849886; Tue, 06 Jun 2023 21:42:51 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6eS3-0003Ne-I0; Tue, 06 Jun 2023 21:42:51 +0000 Received: by outflank-mailman (input) for mailman id 544251; Tue, 06 Jun 2023 21:42:50 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6eS2-0003NU-7u; Tue, 06 Jun 2023 21:42:50 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6eS1-0007fV-RT; Tue, 06 Jun 2023 21:42:49 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6eS1-0005nZ-7V; Tue, 06 Jun 2023 21:42:49 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q6eS1-0002ro-75; Tue, 06 Jun 2023 21:42:49 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=1yKI0dxOOMryUEbuZhA+uV1EKcBcqHxbk5r8gPZuoog=; b=oJ0u+WIRZbRZ0RKj37AxMI8zOV 94Q22OvUkhfY1QxnAiNkcLH033XIV80fIDvxrkzZQYieHKGuUOpygTqbfxdz9LHStQF2aU9SdKxCc snPzODWoajXKG8a9HC1PpTtFG+NZ9f5pRdsbFLW8DLVkiNNWJZoJtHC+rp3JnYhdFWd0=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable test] 181210: regressions - FAIL X-Osstest-Failures: xen-unstable:test-amd64-i386-libvirt-pair:xen-install/dst_host:fail:regression xen-unstable:test-amd64-i386-qemut-rhel6hvm-amd:xen-install:fail:regression xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:xen-install:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking X-Osstest-Versions-This: xen=b35b22acb887f682efe8385b3df165220bc84c86 X-Osstest-Versions-That: xen=b3880c365db89051728e1de6b6889c750cbdd915 From: osstest service owner Date: Tue, 06 Jun 2023 21:42:49 +0000 flight 181210 xen-unstable real [real] flight 181222 xen-unstable real-retest [real] http://logs.test-lab.xenproject.org/osstest/logs/181210/ http://logs.test-lab.xenproject.org/osstest/logs/181222/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: test-amd64-i386-libvirt-pair 11 xen-install/dst_host fail REGR. vs. 181194 test-amd64-i386-qemut-rhel6hvm-amd 7 xen-install fail REGR. vs. 181194 Tests which did not succeed, but are not blocking: test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 7 xen-install fail like 181194 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 181194 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop fail like 181194 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 181194 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 181194 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop fail like 181194 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop fail like 181194 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail like 181194 test-armhf-armhf-libvirt 16 saverestore-support-check fail like 181194 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail like 181194 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 181194 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop fail like 181194 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 181194 test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-i386-xl-pvshim 14 guest-start fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-i386-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-armhf-armhf-xl-multivcpu 15 migrate-support-check fail never pass test-armhf-armhf-xl-multivcpu 16 saverestore-support-check fail never pass test-amd64-i386-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-xl 15 migrate-support-check fail never pass test-armhf-armhf-xl 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass test-amd64-i386-libvirt 15 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 15 saverestore-support-check fail never pass test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail never pass test-armhf-armhf-xl-credit2 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit2 16 saverestore-support-check fail never pass test-armhf-armhf-xl-arndale 15 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt 15 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 15 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt-raw 14 migrate-support-check fail never pass version targeted for testing: xen b35b22acb887f682efe8385b3df165220bc84c86 baseline version: xen b3880c365db89051728e1de6b6889c750cbdd915 Last test of basis 181194 2023-06-05 16:40:12 Z 1 days Testing same since 181210 2023-06-06 08:53:29 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Alejandro Vallejo Andrew Cooper Henry Wang # CHANGELOG Jan Beulich jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64-xtf pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-prev pass build-i386-prev pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-xtf-amd64-amd64-1 pass test-xtf-amd64-amd64-2 pass test-xtf-amd64-amd64-3 pass test-xtf-amd64-amd64-4 pass test-xtf-amd64-amd64-5 pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl pass test-amd64-i386-xl pass test-amd64-coresched-i386-xl pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm fail test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-i386-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-i386-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-i386-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-i386-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-i386-qemut-rhel6hvm-amd fail test-amd64-i386-qemuu-rhel6hvm-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-i386-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-freebsd10-amd64 pass test-amd64-amd64-qemuu-freebsd11-amd64 pass test-amd64-amd64-qemuu-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-i386-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-i386-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-i386-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-amd64-i386-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale pass test-amd64-amd64-examine-bios pass test-amd64-i386-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 pass test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 pass test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine pass test-amd64-i386-examine pass test-amd64-i386-freebsd10-i386 pass test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-i386-qemut-rhel6hvm-intel pass test-amd64-i386-qemuu-rhel6hvm-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt pass test-amd64-i386-libvirt pass test-amd64-amd64-livepatch pass test-amd64-i386-livepatch pass test-amd64-amd64-migrupgrade pass test-amd64-i386-migrupgrade pass test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu pass test-amd64-amd64-pair pass test-amd64-i386-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-i386-libvirt-pair fail test-amd64-amd64-xl-pvshim pass test-amd64-i386-xl-pvshim fail test-amd64-amd64-pygrub pass test-armhf-armhf-libvirt-qcow2 pass test-amd64-amd64-xl-qcow2 pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw pass test-amd64-i386-libvirt-raw pass test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds pass test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-amd64-i386-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-i386-examine-uefi pass test-amd64-amd64-libvirt-vhd pass test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd pass test-amd64-i386-xl-vhd pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. ------------------------------------------------------------ commit b35b22acb887f682efe8385b3df165220bc84c86 Author: Alejandro Vallejo Date: Mon Jun 5 16:01:16 2023 +0100 x86/microcode: Add missing unlock in microcode_update_helper() microcode_update_helper() may return early while holding cpu_add_remove_lock, hence preventing any writers from taking it again. Leave through the `put` label instead so it's properly released. Fixes: 5ed12565aa32 ("microcode: rendezvous CPUs in NMI handler and load ucode") Signed-off-by: Alejandro Vallejo Reviewed-by: Andrew Cooper commit a5917ca28bf77a4770113446427fb22f81444b52 Author: Andrew Cooper Date: Mon Jun 5 10:48:59 2023 +0100 xen: Fix incorrect taint constant Insecure is the word being looked for here. Especially given the nature of the sole caller, and the (correct) comment next to it. Also update the taint marker from 'U' to 'I' for consistency; this isn't expected to impact anyone in practice. Fixes: 82c0d3d491cc ("xen: Add an unsecure Taint type") Signed-off-by: Andrew Cooper Acked-by: Jan Beulich Reviewed-by: Bertrand Marquis commit e291c4c3e1ec1a693e6b8de5562d6a9607ad2722 Author: Jan Beulich Date: Mon Jun 5 16:54:30 2023 +0200 x86emul: AVX512-FP16 testing Naming of some of the builtins isn't fully consistent with that of pre- existing ones, so there's a need for a new BR2() wrapper macro. With the tests providing some proof of proper functioning of the emulator code also enable use of the feature by guests, as there's no other infrastructure involved in enabling this ISA extension. Signed-off-by: Jan Beulich Acked-by: Andrew Cooper Acked-by: Henry Wang # CHANGELOG (qemu changes not included) From xen-devel-bounces@lists.xenproject.org Tue Jun 06 23:53:53 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 06 Jun 2023 23:53:53 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544262.849909 (Exim 4.92) (envelope-from ) id 1q6gUf-0008Ex-18; Tue, 06 Jun 2023 23:53:41 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544262.849909; Tue, 06 Jun 2023 23:53:40 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6gUe-0008Eq-UJ; Tue, 06 Jun 2023 23:53:40 +0000 Received: by outflank-mailman (input) for mailman id 544262; Tue, 06 Jun 2023 23:53:39 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6gUd-0008Eg-Cb; Tue, 06 Jun 2023 23:53:39 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6gUd-00027Y-BY; Tue, 06 Jun 2023 23:53:39 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6gUd-00010v-3P; Tue, 06 Jun 2023 23:53:39 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q6gUd-0003CI-2r; Tue, 06 Jun 2023 23:53:39 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=CJPWaa0yKwbMWY9vosroYUIyl/GhYooOA/UQsO3InbQ=; b=M/JBdl2tQwZ3iAvfpGp4u9vCjt vH13TRPKx6IbbSEh7HTieWP7zssB3H1ozVZFINvge8yiy1Bsr4/hlLmilufq5ABsDR8rhcOiqvRUc hB80ECgcLR8uDEMFOybuJoGjnxVw0UlXwxzkuVxvDft8mmbmguKGOKU3ZYymzmqt14lE=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [ovmf test] 181225: all pass - PUSHED X-Osstest-Versions-This: ovmf=ded0b489af09cde5afa05d74acdb12cd4b4f8394 X-Osstest-Versions-That: ovmf=cdd20638bc97cef1356a5c687a412f869c637245 From: osstest service owner Date: Tue, 06 Jun 2023 23:53:39 +0000 flight 181225 ovmf real [real] http://logs.test-lab.xenproject.org/osstest/logs/181225/ Perfect :-) All tests in this flight passed as required version targeted for testing: ovmf ded0b489af09cde5afa05d74acdb12cd4b4f8394 baseline version: ovmf cdd20638bc97cef1356a5c687a412f869c637245 Last test of basis 181221 2023-06-06 17:10:53 Z 0 days Testing same since 181225 2023-06-06 21:54:32 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Aryeh Chen Yong Li jobs: build-amd64-xsm pass build-i386-xsm pass build-amd64 pass build-i386 pass build-amd64-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-i386-pvops pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Pushing revision : To xenbits.xen.org:/home/xen/git/osstest/ovmf.git cdd20638bc..ded0b489af ded0b489af09cde5afa05d74acdb12cd4b4f8394 -> xen-tested-master From xen-devel-bounces@lists.xenproject.org Wed Jun 07 01:09:59 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 01:09:59 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544272.849928 (Exim 4.92) (envelope-from ) id 1q6hgA-0005vk-3J; Wed, 07 Jun 2023 01:09:38 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544272.849928; Wed, 07 Jun 2023 01:09:38 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6hg9-0005vd-Ud; Wed, 07 Jun 2023 01:09:37 +0000 Received: by outflank-mailman (input) for mailman id 544272; Wed, 07 Jun 2023 01:09:37 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6hg9-0005vT-DH; Wed, 07 Jun 2023 01:09:37 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6hg9-0002rE-1G; Wed, 07 Jun 2023 01:09:37 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6hg8-0005M6-HX; Wed, 07 Jun 2023 01:09:36 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q6hg8-0003ch-Gz; Wed, 07 Jun 2023 01:09:36 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=/aX8mUgiIxlpTQ4jGs+pPtgroUoSoLY46myHWs1bqTg=; b=MaXolHsUpxIcrHe/dJ9yMkB7mg 9kLzNjoplTTszJ0EvsNNpU2rk9vjjCEaO6DZRnbDdlrTTJpXMBYEsdn8EwV0NcX07yBmDpXgDeTXj gsAfTGJktkKLpg6k1kZ7llA7GA13Lm+5aLbFqGwUpWVX06TU2hMZ23QZeeFhP+KCKhD8=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [qemu-mainline test] 181212: regressions - FAIL X-Osstest-Failures: qemu-mainline:test-amd64-i386-libvirt-pair:xen-install/dst_host:fail:regression qemu-mainline:test-amd64-amd64-libvirt-pair:leak-check/check/src_host:fail:regression qemu-mainline:test-amd64-amd64-libvirt-pair:leak-check/check/dst_host:fail:regression qemu-mainline:test-amd64-i386-libvirt:leak-check/check:fail:regression qemu-mainline:test-amd64-amd64-libvirt-xsm:leak-check/check:fail:regression qemu-mainline:build-arm64-xsm:xen-build:fail:regression qemu-mainline:build-arm64:xen-build:fail:regression qemu-mainline:test-amd64-amd64-libvirt:leak-check/check:fail:regression qemu-mainline:test-amd64-i386-libvirt-xsm:leak-check/check:fail:regression qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:leak-check/check:fail:regression qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:leak-check/check:fail:regression qemu-mainline:test-amd64-amd64-libvirt-vhd:leak-check/check:fail:regression qemu-mainline:test-amd64-i386-libvirt-raw:leak-check/check:fail:regression qemu-mainline:test-amd64-amd64-xl-qcow2:leak-check/check:fail:regression qemu-mainline:test-armhf-armhf-libvirt:leak-check/check:fail:regression qemu-mainline:test-armhf-armhf-libvirt-qcow2:leak-check/check:fail:regression qemu-mainline:test-armhf-armhf-libvirt-raw:leak-check/check:fail:regression qemu-mainline:test-armhf-armhf-xl-vhd:leak-check/check:fail:regression qemu-mainline:test-amd64-i386-xl-vhd:leak-check/check:fail:regression qemu-mainline:test-amd64-i386-xl-vhd:guest-start/debian.repeat:fail:heisenbug qemu-mainline:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:build-arm64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking qemu-mainline:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking qemu-mainline:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking qemu-mainline:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking qemu-mainline:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking qemu-mainline:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking qemu-mainline:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking qemu-mainline:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking qemu-mainline:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking qemu-mainline:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking qemu-mainline:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: qemuu=369081c4558e7e940fa36ce59bf17b2e390f55d3 X-Osstest-Versions-That: qemuu=6972ef1440a9d685482d78672620a7482f2bd09a From: osstest service owner Date: Wed, 07 Jun 2023 01:09:36 +0000 flight 181212 qemu-mainline real [real] http://logs.test-lab.xenproject.org/osstest/logs/181212/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: test-amd64-i386-libvirt-pair 11 xen-install/dst_host fail REGR. vs. 180691 test-amd64-amd64-libvirt-pair 30 leak-check/check/src_host fail REGR. vs. 180691 test-amd64-amd64-libvirt-pair 31 leak-check/check/dst_host fail REGR. vs. 180691 test-amd64-i386-libvirt 23 leak-check/check fail REGR. vs. 180691 test-amd64-amd64-libvirt-xsm 23 leak-check/check fail REGR. vs. 180691 build-arm64-xsm 6 xen-build fail REGR. vs. 180691 build-arm64 6 xen-build fail REGR. vs. 180691 test-amd64-amd64-libvirt 23 leak-check/check fail REGR. vs. 180691 test-amd64-i386-libvirt-xsm 23 leak-check/check fail REGR. vs. 180691 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 21 leak-check/check fail REGR. vs. 180691 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 21 leak-check/check fail REGR. vs. 180691 test-amd64-amd64-libvirt-vhd 22 leak-check/check fail REGR. vs. 180691 test-amd64-i386-libvirt-raw 22 leak-check/check fail REGR. vs. 180691 test-amd64-amd64-xl-qcow2 24 leak-check/check fail REGR. vs. 180691 test-armhf-armhf-libvirt 21 leak-check/check fail REGR. vs. 180691 test-armhf-armhf-libvirt-qcow2 20 leak-check/check fail REGR. vs. 180691 test-armhf-armhf-libvirt-raw 20 leak-check/check fail REGR. vs. 180691 test-armhf-armhf-xl-vhd 20 leak-check/check fail REGR. vs. 180691 test-amd64-i386-xl-vhd 24 leak-check/check fail in 181201 REGR. vs. 180691 Tests which are failing intermittently (not blocking): test-amd64-i386-xl-vhd 21 guest-start/debian.repeat fail pass in 181201 Tests which did not succeed, but are not blocking: test-arm64-arm64-libvirt-raw 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-xsm 1 build-check(1) blocked n/a test-arm64-arm64-xl 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit1 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit2 1 build-check(1) blocked n/a test-arm64-arm64-xl-thunderx 1 build-check(1) blocked n/a test-arm64-arm64-xl-vhd 1 build-check(1) blocked n/a test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a build-arm64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 180691 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 180691 test-armhf-armhf-libvirt 16 saverestore-support-check fail like 180691 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail like 180691 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop fail like 180691 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail like 180691 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 180691 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop fail like 180691 test-amd64-i386-xl-pvshim 14 guest-start fail never pass test-amd64-i386-libvirt 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-i386-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-credit2 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit2 16 saverestore-support-check fail never pass test-amd64-i386-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-libvirt 15 migrate-support-check fail never pass test-armhf-armhf-xl 15 migrate-support-check fail never pass test-armhf-armhf-xl 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 15 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 16 saverestore-support-check fail never pass test-armhf-armhf-xl-multivcpu 15 migrate-support-check fail never pass test-armhf-armhf-xl-multivcpu 16 saverestore-support-check fail never pass test-armhf-armhf-xl-arndale 15 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 15 saverestore-support-check fail never pass version targeted for testing: qemuu 369081c4558e7e940fa36ce59bf17b2e390f55d3 baseline version: qemuu 6972ef1440a9d685482d78672620a7482f2bd09a Last test of basis 180691 2023-05-17 10:45:22 Z 20 days Failing since 180699 2023-05-18 07:21:24 Z 19 days 65 attempts Testing same since 181201 2023-06-06 01:39:30 Z 0 days 2 attempts ------------------------------------------------------------ People who touched revisions under test: Afonso Bordado Akihiko Odaki Akihiro Suda Alex Bennée Alex Williamson Alexander Bulekov Alexander Graf Alexander Ivanov Alistair Francis Ani Sinha Ani Sinha Anton Johansson BALATON Zoltan Bernhard Beschow Bin Meng Brian Cain Brice Goglin Camilla Conte Cindy Lu Clément Chigot Cornelia Huck Cédric Le Goater Cédric Le Goater Daniel Henrique Barboza Daniel P. Berrangé Daniil Kovalev David Hildenbrand Emanuele Giuseppe Esposito Enze Li Eric Auger Eric Blake Eric DeVolder Erico Nunes Eugenio Pérez Fabiano Rosas Fan Ni Fiona Ebner Francisco Iglesias Gavin Shan Gregory Price Gregory Price Hanna Czenczek Hao Zeng Hawkins Jiawei Igor Mammedov Ilya Leoshkevich Ira Weiny Jason Wang Jean-Louis Dupond Jean-Philippe Brucker Jiaxun Yang John Snow Jonathan Cameron Juan Quintela Kevin Wolf Laurent Vivier Lei Yang Leonardo Bras Maksim Davydov Marc-André Lureau Marcin Juszkiewicz Marco Liebel Mark Cave-Ayland Markus Armbruster Matheus Tavares Bernardino Mauro Matteo Cascella Michael S. Tsirkin Michael Tokarev Mostafa Saleh Nicholas Piggin Nicolas Saenz Julienne Palmer Dabbelt Paolo Bonzini Peter Maydell Peter Xu Philippe Mathieu-Daudé Raghu H Rene Engel Richard Henderson Richard Purdie Ricky Zhou Ryan Wendland Sebastian Ott Sergio Lopez Sid Manning Song Gao Stefan Hajnoczi Stefano Garzarella Steve Sistare Taylor Simpson Thomas Huth Thomas Weißschuh timothee.cocault@gmail.com Timothée Cocault Tommy Wu Viktor Prutyanov Vitaly Cheptsov Vivek Kasireddy Vladimir Sementsov-Ogievskiy Volker Rümelin Xinyu Li Zeng Hao Zhenyu Zhang Zhenzhong Duan jobs: build-amd64-xsm pass build-arm64-xsm fail build-i386-xsm pass build-amd64 pass build-arm64 fail build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt blocked build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl blocked test-armhf-armhf-xl pass test-amd64-i386-xl pass test-amd64-coresched-i386-xl pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm fail test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm fail test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-i386-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm fail test-arm64-arm64-libvirt-xsm blocked test-amd64-i386-libvirt-xsm fail test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm blocked test-amd64-i386-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-i386-qemuu-rhel6hvm-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-freebsd10-amd64 pass test-amd64-amd64-qemuu-freebsd11-amd64 pass test-amd64-amd64-qemuu-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-i386-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-amd64-i386-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 blocked test-armhf-armhf-xl-credit1 pass test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 blocked test-armhf-armhf-xl-credit2 pass test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-i386-freebsd10-i386 pass test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-i386-qemuu-rhel6hvm-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt fail test-armhf-armhf-libvirt fail test-amd64-i386-libvirt fail test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu pass test-amd64-amd64-pair pass test-amd64-i386-pair pass test-amd64-amd64-libvirt-pair fail test-amd64-i386-libvirt-pair fail test-amd64-amd64-xl-pvshim pass test-amd64-i386-xl-pvshim fail test-amd64-amd64-pygrub pass test-armhf-armhf-libvirt-qcow2 fail test-amd64-amd64-xl-qcow2 fail test-arm64-arm64-libvirt-raw blocked test-armhf-armhf-libvirt-raw fail test-amd64-i386-libvirt-raw fail test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds pass test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-amd64-i386-xl-shadow pass test-arm64-arm64-xl-thunderx blocked test-amd64-amd64-libvirt-vhd fail test-arm64-arm64-xl-vhd blocked test-armhf-armhf-xl-vhd fail test-amd64-i386-xl-vhd fail ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 13846 lines long.) From xen-devel-bounces@lists.xenproject.org Wed Jun 07 01:38:25 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 01:38:25 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544281.849941 (Exim 4.92) (envelope-from ) id 1q6i7w-0000va-Av; Wed, 07 Jun 2023 01:38:20 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544281.849941; Wed, 07 Jun 2023 01:38:20 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6i7w-0000vS-60; Wed, 07 Jun 2023 01:38:20 +0000 Received: by outflank-mailman (input) for mailman id 544281; Wed, 07 Jun 2023 01:38:19 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6i7v-0000vM-5a for xen-devel@lists.xenproject.org; Wed, 07 Jun 2023 01:38:19 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id f8dc8889-04d3-11ee-8611-37d641c3527e; Wed, 07 Jun 2023 03:38:16 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id DF53A60B45; Wed, 7 Jun 2023 01:38:14 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 0E009C433D2; Wed, 7 Jun 2023 01:38:12 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: f8dc8889-04d3-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1686101894; bh=VkXphGgITwqS2qBelPArt1k3PXjyQME1JBtsvwguZOk=; h=From:To:Cc:Subject:Date:From; b=SwynRGdxCil7iabPXfiQieJQWLxN+quh+h/NvK+78LrGSq3+3pmm7j1X4+YbGvKeW Jbd/eayWf6JgrrMxGErGKsNnsuyO8VtJavkVMQ2OxZcEX0H6h41RcHZR3LVk+rzGO4 2G6jyZc3qcKEenc3Ngh1zYs4BwE8RigibkTFqCzvv1PPznUDQWIU9R9akwZ4G9Ypwz 4DuwYmJB70+H618I/BufedXx2uHt2MibqJusT66S+qGehXEy2L03+ukAwedjhg2Qk1 HtEmIXeNLvCx3Fu3ZPWQK/NWqxv/zqB8xHwH07tsBfefPAzj5fEfclbPvn1XnL0hbm OvQfvybnmEHJA== From: Stefano Stabellini To: xen-devel@lists.xenproject.org Cc: sstabellini@kernel.org, jbeulich@suse.com, julien@xen.org, andrew.cooper3@citrix.com, roger.pau@citrix.com, bertrand.marquis@arm.com, roberto.bagnara@bugseng.com, Stefano Stabellini Subject: [PATCH] docs/misra: new rules addition Date: Tue, 6 Jun 2023 18:38:10 -0700 Message-Id: <20230607013810.3385316-1-sstabellini@kernel.org> X-Mailer: git-send-email 2.25.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit From: Stefano Stabellini For Dir 1.1, a document describing all implementation-defined behaviour (i.e. gcc-specific behavior) will be added to docs/misra, also including implementation-specific (gcc-specific) appropriate types for bit-field relevant to Rule 6.1. Rule 21.21 is lacking an example on gitlab but the rule is straightforward: we don't use stdlib at all in Xen. Signed-off-by: Stefano Stabellini --- We also discussed Rules 2.1, 5.5 and 7.4 but they require more work before we can decide one way or the other. --- docs/misra/rules.rst | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) diff --git a/docs/misra/rules.rst b/docs/misra/rules.rst index d5a6ee8cb6..0e298edeb8 100644 --- a/docs/misra/rules.rst +++ b/docs/misra/rules.rst @@ -40,6 +40,12 @@ existing codebase are work-in-progress. - Summary - Notes + * - `Dir 1.1 `_ + - Required + - Any implementation-defined behaviour on which the output of the + program depends shall be documented and understood + - + * - `Dir 2.1 `_ - Required - All source files shall compile without any compilation errors @@ -57,6 +63,13 @@ existing codebase are work-in-progress. header file being included more than once - + * - `Dir 4.11 `_ + - Required + - The validity of values passed to library functions shall be checked + - We do not have libraries in Xen (libfdt and others are not + considered libraries from MISRA C point of view as they are + imported in source form) + * - `Dir 4.14 `_ - Required - The validity of values received from external sources shall be @@ -133,6 +146,16 @@ existing codebase are work-in-progress. headers (xen/include/public/) are allowed to retain longer identifiers for backward compatibility. + * - `Rule 5.6 `_ + - Required + - A typedef name shall be a unique identifier + - + + * - `Rule 6.1 `_ + - Required + - Bit-fields shall only be declared with an appropriate type + - + * - `Rule 6.2 `_ - Required - Single-bit named bit fields shall not be of a signed type @@ -143,6 +166,12 @@ existing codebase are work-in-progress. - Octal constants shall not be used - + * - `Rule 7.2 `_ + - Required + - A "u" or "U" suffix shall be applied to all integer constants + that are represented in an unsigned type + - + * - `Rule 7.3 `_ - Required - The lowercase character l shall not be used in a literal suffix @@ -314,6 +343,11 @@ existing codebase are work-in-progress. used following a subsequent call to the same function - + * - Rule 21.21 + - Required + - The Standard Library function system of shall not be used + - + * - `Rule 22.2 `_ - Mandatory - A block of memory shall only be freed if it was allocated by means of a -- 2.25.1 From xen-devel-bounces@lists.xenproject.org Wed Jun 07 03:05:41 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 03:05:41 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544290.849960 (Exim 4.92) (envelope-from ) id 1q6jUH-00029Z-KI; Wed, 07 Jun 2023 03:05:29 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544290.849960; Wed, 07 Jun 2023 03:05:29 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6jUH-00029S-Hc; Wed, 07 Jun 2023 03:05:29 +0000 Received: by outflank-mailman (input) for mailman id 544290; Wed, 07 Jun 2023 03:05:28 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6jUG-00029M-5L for xen-devel@lists.xenproject.org; Wed, 07 Jun 2023 03:05:28 +0000 Received: from NAM12-BN8-obe.outbound.protection.outlook.com (mail-bn8nam12on20619.outbound.protection.outlook.com [2a01:111:f400:fe5b::619]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 25c38285-04e0-11ee-b232-6b7b168915f2; Wed, 07 Jun 2023 05:05:25 +0200 (CEST) Received: from BN9P221CA0021.NAMP221.PROD.OUTLOOK.COM (2603:10b6:408:10a::15) by DM4PR12MB5168.namprd12.prod.outlook.com (2603:10b6:5:397::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Wed, 7 Jun 2023 03:05:19 +0000 Received: from BN8NAM11FT095.eop-nam11.prod.protection.outlook.com (2603:10b6:408:10a:cafe::38) by BN9P221CA0021.outlook.office365.com (2603:10b6:408:10a::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.19 via Frontend Transport; Wed, 7 Jun 2023 03:05:18 +0000 Received: from SATLEXMB04.amd.com (165.204.84.17) by BN8NAM11FT095.mail.protection.outlook.com (10.13.176.206) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6455.33 via Frontend Transport; Wed, 7 Jun 2023 03:05:18 +0000 Received: from SATLEXMB05.amd.com (10.181.40.146) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Tue, 6 Jun 2023 22:05:11 -0500 Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB05.amd.com (10.181.40.146) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Tue, 6 Jun 2023 22:05:11 -0500 Received: from ubuntu.mshome.net (10.180.168.240) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server id 15.1.2375.34 via Frontend Transport; Tue, 6 Jun 2023 22:05:09 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 25c38285-04e0-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=C159BidfSM95iW8YhYTuuM9ZG+FP0owcja2LEzuBdULc24YBIQQLwvkKaS/bmKERvtf8RBm1ThE/VykQzRfoOXcExmO0IZmJ14LpYxRRDTa0VvA4/eT62Xg3WHphBziPXpOOrzvDZ6mGgrgQb06/TS6GSyFqBY7inILjSfokzO33RFua54ayHhuF/3wNsBBg4luP8+c9x7brNgPgHWxUiVhqphnTfP/83SKiUILjkkbyj8ByO3MyJsFDDdRTws7HKm1266FoztezxcPu37Qng7WqhWTIrD9YyZSdujNNZ7QgpnsmfJ7XtZvlK4hJMtMU3B+6N4InbqRvx3NVu1z5Xw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=e3XCxlbEKAvvYqyg8avJlBxcbRn0rYcgZKbcRhcCpFY=; b=VPUnelGF+WskcrH2q0gsU34o1nHD3Np7OfsUPWl4K0Zmvx3ca1i5Yh8fXYR0QQuvobqd3+HPAMsfHSc4TwBPUCRL/o9OElfUzNdZ04fC4HnULRJMPGWO1BRst6yUGLb5+eK04hU8Gr3gUokhyVR6sV7IKt6BVTqQydP5dfUlY/JPS1fcgY+v1pXHJgaJRzpN/HSiSRV/yrFH7DFKmyotOoA6ZZRGxmE9LGlutN8B9U4JzRnT/BMzO2Fd+Nm8f8zSDDUZqOEZSUIl4gvz0nEUzQvuWETRTtzbjSCKbmc/6pKaiUFFK6VFFV3v0pCX3py/5M+CQL5AYikEXbAlLGLBdw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=e3XCxlbEKAvvYqyg8avJlBxcbRn0rYcgZKbcRhcCpFY=; b=yLTyV4jx5IbNzR6qXhSOzXcf8QDFuxzo3hnuH9Nr5mxLXWbiyPrlbZMupIRWfAFvKLBS4JWU1m+QXxE8+Z3k6dXRuPV3av2omk/Vb/K94yA8ywAYVLa96/SjGUKNIe7wnd9r9LGP4fVIn2fA/04Cssxjkz4npN2sKenv3pCM5aw= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C From: Stewart Hildebrand To: CC: Stewart Hildebrand , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk , Rahul Singh , Jan Beulich , "Paul Durrant" , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= Subject: [PATCH v4 0/7] SMMU handling for PCIe Passthrough on ARM Date: Tue, 6 Jun 2023 23:02:13 -0400 Message-ID: <20230607030220.22698-1-stewart.hildebrand@amd.com> X-Mailer: git-send-email 2.40.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BN8NAM11FT095:EE_|DM4PR12MB5168:EE_ X-MS-Office365-Filtering-Correlation-Id: a0c45bee-e727-48d9-4c75-08db67040636 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 1xVOALicp9ngykG7ZQSBoMmGGhzAGMWyPNkbelhgVbxi4bB7Qarl73uNWGFw8rsppxdsJyRIsDPAaoIhu0voOb+oB2RR7Hco8Mq5g1qAlo0OM7oo6I8XNxOO3YQo5nGEOswR1d52n6xjd2P7X60CmuhwRhROrxHIl+Q5jtBVFKiAWm8bi7ihBH72BSY/JjUAu7hFEUofxX6hH0/LPx0+8l9FX7k8TeKRmo4ptiEolFziw0QnCuqWZzw60+pWM/k60tp5+sOXdck1oF8S1ZKjZFQhC3e7jY5vSo/smadnj42XS8toNA466eX3xoSn7PmABmoMuK3L4+8dzfGTnpHMkknGerA9EZX3IrDOmpdWN/Xg00hIILJmZBsByPEfc9GOvIDKCD2ayk2KoXiC0xB0hkY2oIK1iH1Bf1Wtp1nXJ6OKvW7ain8SY7VvRYF02WREu6hJ7WzySispjFEExnPnBpcWbwoCqMfN+sc/8Xcw6AIymfM0rXZ7eqmVlITYJ9EZXgR+l0diScO2vpOn2yPTGrHegWpmITcSYZE5xNziaWqXej+t2GxrfR2WPWAiR1ixksXT25X73U1fUvP9/3pTFFeRlY5FOFLkKIjkKdlRKOtVg9gvquPbnl3jhl5x+yhHO1/Xmb+KKaTNri4ST8RDhl4qLgfkXH+kvcRpT4WyYs3XCF8lpEjFyChZthS7o4XT0f12c0HlomVDk+TnXvO+Yi8j1qIeA6Utvdpl99td9kztp1Q6cvKUY+Ep29CemXWOebPp71bHD7zaMTnaUZULgQ== X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(376002)(346002)(396003)(136003)(39860400002)(451199021)(40470700004)(46966006)(36840700001)(478600001)(40460700003)(2906002)(83380400001)(2616005)(426003)(36860700001)(336012)(47076005)(82310400005)(186003)(1076003)(26005)(86362001)(82740400003)(356005)(81166007)(36756003)(40480700001)(6666004)(5660300002)(8676002)(8936002)(41300700001)(4326008)(70586007)(6916009)(70206006)(316002)(54906003)(44832011)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Jun 2023 03:05:18.4184 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: a0c45bee-e727-48d9-4c75-08db67040636 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com] X-MS-Exchange-CrossTenant-AuthSource: BN8NAM11FT095.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR12MB5168 This series introduces SMMU handling for PCIe passthrough on ARM. These patches are independent from (and don't depend on) the vPCI reference counting/locking work in progress, and should be able to be upstreamed independently. v3->v4: * split a change from ("xen/arm: Move is_protected flag to struct device") into a new separate patch * see individual patches for further details v2->v3: * drop "pci/arm: Use iommu_add_dt_pci_device()" * drop "RFC: pci/arm: don't do iommu call for phantom functions" * move invocation of sideband ID mapping function to add_device() platform_ops/iommu_ops hook v1->v2: * phantom device handling * shuffle around iommu_add_dt_pci_device() Oleksandr Andrushchenko (1): xen/arm: smmuv2: Add PCI devices support for SMMUv2 Oleksandr Tyshchenko (4): xen/arm: Improve readability of check for registered devices xen/arm: Move is_protected flag to struct device iommu/arm: Add iommu_dt_xlate() iommu/arm: Introduce iommu_add_dt_pci_sideband_ids API Rahul Singh (1): xen/arm: smmuv3: Add PCI devices support for SMMUv3 Stewart Hildebrand (1): iommu/arm: iommu_add_dt_pci_sideband_ids phantom handling xen/arch/arm/domain_build.c | 4 +- xen/arch/arm/include/asm/device.h | 14 ++ xen/common/device_tree.c | 2 +- xen/drivers/passthrough/arm/ipmmu-vmsa.c | 4 +- xen/drivers/passthrough/arm/smmu-v3.c | 81 ++++++++- xen/drivers/passthrough/arm/smmu.c | 122 +++++++++++--- xen/drivers/passthrough/device_tree.c | 205 ++++++++++++++++++++--- xen/include/xen/device_tree.h | 38 +++-- xen/include/xen/iommu.h | 22 ++- 9 files changed, 423 insertions(+), 69 deletions(-) -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Wed Jun 07 03:05:41 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 03:05:41 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544291.849969 (Exim 4.92) (envelope-from ) id 1q6jUM-0002Os-TA; Wed, 07 Jun 2023 03:05:34 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544291.849969; Wed, 07 Jun 2023 03:05:34 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6jUM-0002Ol-Q9; Wed, 07 Jun 2023 03:05:34 +0000 Received: by outflank-mailman (input) for mailman id 544291; Wed, 07 Jun 2023 03:05:33 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6jUL-00029M-3z for xen-devel@lists.xenproject.org; Wed, 07 Jun 2023 03:05:33 +0000 Received: from NAM11-BN8-obe.outbound.protection.outlook.com (mail-bn8nam11on20601.outbound.protection.outlook.com [2a01:111:f400:7eae::601]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 29760b33-04e0-11ee-b232-6b7b168915f2; Wed, 07 Jun 2023 05:05:32 +0200 (CEST) Received: from BYAPR07CA0090.namprd07.prod.outlook.com (2603:10b6:a03:12b::31) by MW4PR12MB5625.namprd12.prod.outlook.com (2603:10b6:303:168::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Wed, 7 Jun 2023 03:05:28 +0000 Received: from CO1NAM11FT003.eop-nam11.prod.protection.outlook.com (2603:10b6:a03:12b:cafe::f6) by BYAPR07CA0090.outlook.office365.com (2603:10b6:a03:12b::31) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33 via Frontend Transport; Wed, 7 Jun 2023 03:05:27 +0000 Received: from SATLEXMB03.amd.com (165.204.84.17) by CO1NAM11FT003.mail.protection.outlook.com (10.13.175.93) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6455.36 via Frontend Transport; Wed, 7 Jun 2023 03:05:26 +0000 Received: from SATLEXMB06.amd.com (10.181.40.147) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Tue, 6 Jun 2023 22:05:25 -0500 Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB06.amd.com (10.181.40.147) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Tue, 6 Jun 2023 22:05:24 -0500 Received: from ubuntu.mshome.net (10.180.168.240) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server id 15.1.2375.34 via Frontend Transport; Tue, 6 Jun 2023 22:05:23 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 29760b33-04e0-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=A31Zozbf4U0MlcxvxzzzVvE4IGw2EC3S72yZrehb3FaYhv4gPWixfRk56tPS8bry9AXH9wCagNWUoAZB/NqZDomr/0Z7B7Y8444YhVgtBTPC3EyIH/IPu8jUlkvwaUYW6rjJlMaiInqXDhPlf90g7ocGV5hxUQzMT2zSA25oL0uX+njVNNGVrtx+4L1nCtZQPKxKvHDh9mow7W9vMiZalrF+Btp4sD+AzIgKFwP6wyYyP5+WXxWEvZWS32FvkIZ23vS196JrCXFpOI3lUlUeOBKWKtqvMkzFKjmtaleKtyAe54qDttwGyWdMId8Kgr0bKQfJYlrMk5DuE+5/qSOZmg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=IR23MxhVQUAbCp/F/DH8joMby5YUmz7+v0X+yjQZ5Cw=; b=kuoGyO3tcw21UfhiSctHkgd4FEEsCYNVSLhgP/066BJ+AiyPbOYWshwbmiEsiRrQpPxpxejmwrNN7VfROqEpTeKg9HcL6q6WkgiYBeSI8OUwml7+XjwTG+5R0kxbOtFcdsfqvR62Nl1/uAbWKaw7txW6gFtJtVwqMCwrijjesTAKCaO8uz2TA51YjUq7Pz1vF4tlAVyx84LOs/n28bW75NzuHLvujwuNkDp3+5Dt9dMCkx4et+uuHLIHFkP75J7b0ZAatytcVpesp55YDOYHuWLIIDpAN0snN0OKdUL/2MvbLUEIJMj0aApuCPvKdqW7M5lEEbnbBGIbkOu6De1iMA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=IR23MxhVQUAbCp/F/DH8joMby5YUmz7+v0X+yjQZ5Cw=; b=19/bz30kSO09H3yJp76Ez4lWRUfoxYU5c9WhFWMunIwKRdh92zgNsqB3ZINgKpZOeoWfJb5YcDbTTRYn3jERqwoI6WOdodlwqLicnxRiAx0XZO6ZTDFW/NE1WJ4339yAjZe2gkDqCVxMeSnQquqtJyY6tOx5ua/x1P3kWtg+q70= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C From: Stewart Hildebrand To: CC: Oleksandr Tyshchenko , Stefano Stabellini , Julien Grall , Rahul Singh , Bertrand Marquis , "Stewart Hildebrand" Subject: [PATCH v4 1/7] xen/arm: Improve readability of check for registered devices Date: Tue, 6 Jun 2023 23:02:14 -0400 Message-ID: <20230607030220.22698-2-stewart.hildebrand@amd.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230607030220.22698-1-stewart.hildebrand@amd.com> References: <20230607030220.22698-1-stewart.hildebrand@amd.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO1NAM11FT003:EE_|MW4PR12MB5625:EE_ X-MS-Office365-Filtering-Correlation-Id: 098a4bd8-1043-4374-25a2-08db67040b4d X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: k+jlx5Akjo+zGyu7iVck76upxSHq5rS8qkW0Me8T2NGylBVEkGXZsfmA8fB/doL7g51nABr0dTn/QZwFUdO0ea2PRBYY4siZX0zeyoyMmGNlBMYUyqTv8k1yPrpdnvTaRT7YMwuRqgdq/V9zQ54cyFU6vXukcBhU3B5wn2assI3wqFHJ1f+w1/dvQPZ9jpgMsbeMDPWgEewDeaiPzQ1MWMiAp792Zb00AayewCABbZzdfRbrST0UsN8xjGMir9+uiPQk4c08kpvKFWra1uLevQ35bUQOaK8YdeEMT4auaLTwc1Zqawk7AizHI55KkNfgXgQNaZsR2qBtOhohttagMPiq58g8hRtQMyEAejCW/+k7MC3kZ9mwE1xuAmtY/nHy+4QSwqqlA6FpuRhVWQkfdZ3zn3gLI7ARvwTmB+EA1E194uv9N1g6a+oxrdw/RHD3arQzIPte1FIg+1nJeL5zQADG0qJaS7tD6pO1e2+pJH9t27r9J15DOXdvC+B54jOImCGttQZ9sNz2br6/CQ2zPVK93z1ha3q+flrY6UPDiueIVFqwMDdBmEnnJ87K4D4FGGTvBmVAM/N1Y5+xFusMO0IEisPnO8yO48Wrm8SFPfrQ8/tFjON+CB9KN2X49DAyEoYLjJtami/YjaI6kgO4OQOKFSn6BvLJVusfncydIuc2uh9gF6D6OU2vdoDLMi2RyYt4Lwj4nOUkj8KdTVKGEhQ9SBxHyOzBw4UauLSYikVn2r/dnX/dGAZ33G46hVgAv7GyOgQZu3S2TW3HNjEizA== X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(396003)(39860400002)(136003)(376002)(346002)(451199021)(40470700004)(46966006)(36840700001)(36756003)(82310400005)(44832011)(5660300002)(86362001)(2906002)(40480700001)(47076005)(6666004)(186003)(426003)(336012)(36860700001)(83380400001)(1076003)(26005)(356005)(81166007)(82740400003)(478600001)(40460700003)(54906003)(2616005)(316002)(41300700001)(6916009)(70206006)(70586007)(4326008)(8676002)(8936002)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Jun 2023 03:05:26.8630 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 098a4bd8-1043-4374-25a2-08db67040b4d X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com] X-MS-Exchange-CrossTenant-AuthSource: CO1NAM11FT003.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW4PR12MB5625 From: Oleksandr Tyshchenko Improve readability of check for devices already registered with the SMMU with legacy mmu-masters DT bindings by using is_protected. There are 2 device tree bindings for registering a device with the SMMU: * mmu-masters (legacy, SMMUv1/2 only) * iommus A device tree may include both mmu-masters and iommus properties (although it is unnecessary to do so). When a device appears in the mmu-masters list, np->is_protected and dev->iommu_fwspec both get set by the SMMUv1/2 driver. The function iommu_add_dt_device() is subsequently invoked for devices that have an iommus specification. The check as it was before this patch: if ( dev_iommu_fwspec_get(dev) ) return 0; and the new check: if ( dt_device_is_protected(np) ) return 0; are guarding against the same corner case: when a device has both mmu-masters and iommus specifications in the device tree. The is_protected naming is more descriptive. If np->is_protected is not set (i.e. false), but dev->iommu_fwspec is set, it is an error condition, so return an error in this case. Expand the comment to further clarify the corner case. Signed-off-by: Oleksandr Tyshchenko Signed-off-by: Stewart Hildebrand --- v3->v4: * new patch: this change was split from ("xen/arm: Move is_protected flag to struct device") --- xen/drivers/passthrough/device_tree.c | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/xen/drivers/passthrough/device_tree.c b/xen/drivers/passthrough/device_tree.c index 1c32d7b50cce..d9b63da7260a 100644 --- a/xen/drivers/passthrough/device_tree.c +++ b/xen/drivers/passthrough/device_tree.c @@ -141,12 +141,17 @@ int iommu_add_dt_device(struct dt_device_node *np) return -EINVAL; /* - * The device may already have been registered. As there is no harm in - * it just return success early. + * Devices that appear in the legacy mmu-masters list may have already been + * registered with the SMMU. In case a device has both a mmu-masters entry + * and iommus property, there is no need to register it again. In this case + * simply return success early. */ - if ( dev_iommu_fwspec_get(dev) ) + if ( dt_device_is_protected(np) ) return 0; + if ( dev_iommu_fwspec_get(dev) ) + return -EEXIST; + /* * According to the Documentation/devicetree/bindings/iommu/iommu.txt * from Linux. -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Wed Jun 07 03:05:59 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 03:05:59 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544292.849980 (Exim 4.92) (envelope-from ) id 1q6jUl-0002tw-71; Wed, 07 Jun 2023 03:05:59 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544292.849980; Wed, 07 Jun 2023 03:05:59 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6jUl-0002tp-48; Wed, 07 Jun 2023 03:05:59 +0000 Received: by outflank-mailman (input) for mailman id 544292; Wed, 07 Jun 2023 03:05:57 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6jUj-0002sk-Jw for xen-devel@lists.xenproject.org; Wed, 07 Jun 2023 03:05:57 +0000 Received: from NAM11-BN8-obe.outbound.protection.outlook.com (mail-bn8nam11on20601.outbound.protection.outlook.com [2a01:111:f400:7eae::601]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 36ad68e3-04e0-11ee-8611-37d641c3527e; Wed, 07 Jun 2023 05:05:53 +0200 (CEST) Received: from MW4PR04CA0115.namprd04.prod.outlook.com (2603:10b6:303:83::30) by MW4PR12MB7287.namprd12.prod.outlook.com (2603:10b6:303:22c::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Wed, 7 Jun 2023 03:05:48 +0000 Received: from CO1NAM11FT048.eop-nam11.prod.protection.outlook.com (2603:10b6:303:83:cafe::7a) by MW4PR04CA0115.outlook.office365.com (2603:10b6:303:83::30) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.19 via Frontend Transport; Wed, 7 Jun 2023 03:05:48 +0000 Received: from SATLEXMB03.amd.com (165.204.84.17) by CO1NAM11FT048.mail.protection.outlook.com (10.13.175.148) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6455.33 via Frontend Transport; Wed, 7 Jun 2023 03:05:47 +0000 Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Tue, 6 Jun 2023 22:05:46 -0500 Received: from ubuntu.mshome.net (10.180.168.240) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server id 15.1.2375.34 via Frontend Transport; Tue, 6 Jun 2023 22:05:44 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 36ad68e3-04e0-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=A7G5pFcTCYze0cZ0bsUJjfSoUvROVE74ZSeu1ld7Mk7P7IVpeV4eGV90eQFF+BXc23Gh9ITPTI3rVpTLjWpSRzOiz3nEYUqVEwL2LAheTTmIlDUsOynwidH19d6cNen9cqWEZ9C9XbVixjQMWgt55VdVFRpysOgqTlvD8KcL1VRRhehIRNAVzIwpLzzbm+wOc7qKSmfSwArgnxxemb7QWV2S4Q2vXheRC5cHpN24iSXTfU33vd4Q7GfQy8DcSnuph71j3edHNRWrww7p6jEJz6sX/5cTZiQj2co2OrSh5qpZvbi0KzE7OnXol93kDLug++QBmHSdvR8IRPlU+67KDw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=0vhE+gJtWzDt5s54scLJj3hXZ6GdKzqeUWBduIkmLOg=; b=Fwi2v4W7YmbM+IdQS/NQwX6aXOrdj6aIYt9JG7w+8eVxDkmd7uhpBOItF9Ka5a6UbNsVMoyJGGi9smECU9GMxpQi6BrUgXY3TpFTLw3hfxuCOFOk46+NA/SrK6DulUu3128AAV/Qrr5w3AivxNs6FpZTe6EIhsQjeNdVMqnSeMyxVyV6btN5SE6tiDNJOkKa0VTzv6c0kOiKuENoUgfU4yj+zCLMi46eAdoewhOayzb628XuYt+qCkDJQpC8SOgnYklDkDeucmKoaM2wdWjNDETOE4El9Cy/e4Ce5jePYcjkT2uRBjIF9R1HPJIMDPQ92ZSSwo+cU48bNX2cfLM7kg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=0vhE+gJtWzDt5s54scLJj3hXZ6GdKzqeUWBduIkmLOg=; b=E5k6akw0JUKf1h5KD5YvuEGF3CMw+fepVmVLmU7NgLFulBrs4GQQCQZ1JIhgsmmoFSREFDqACoZLQlO3NNIml5q0hhUY/1U6dFcIF6lVgGqldcbLVjRrycN3QLGdpWEYrV8pcFRI9MSn8oKm1AHqWvEm3z8BwK/5lGTMRp0wQEk= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C From: Stewart Hildebrand To: CC: Oleksandr Tyshchenko , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk , Rahul Singh , Stewart Hildebrand Subject: [PATCH v4 2/7] xen/arm: Move is_protected flag to struct device Date: Tue, 6 Jun 2023 23:02:15 -0400 Message-ID: <20230607030220.22698-3-stewart.hildebrand@amd.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230607030220.22698-1-stewart.hildebrand@amd.com> References: <20230607030220.22698-1-stewart.hildebrand@amd.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO1NAM11FT048:EE_|MW4PR12MB7287:EE_ X-MS-Office365-Filtering-Correlation-Id: d1d727e3-66da-4cff-3e5c-08db67041763 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: O6o+jMgG5hX5uAfbG0L3M3Osa2Qg7zKxevIeyF5p0+Gl5YFXCIfHYZksAJXfb7wR041l9+glNNj/8ATN8W4P64/jESdSoJnrvKFeaxwzXpOqWtMV3zTbM7sP/RY4nD2qqqiuDFJGJBDGH0SfwZDgkgGmg+6QyikLIwOUIGHHRWA0D0qb+FOG84347SgZNF9LvO2dmjnhFdOgzfqD74dZ9cZSDDDbkHBQzi7PZ79cvHfa9OumT0FFNFT+VLWH1EI7WYvfnMtxsl/CztHzHGsc/jkLEULCrSf/lytmzQRb5nBTovQa6Kt/XiLe8kW8U6Ary6sxD2HFJB7jifYdK/XiEPJaPWVExCJ5du/5pMAswaoK0naIOufHm52AhtHjC9tPYUX1DKP422Tg9mM/sk9Rtshdrg/jWTOqGupLS7lEwH/EAUK7m+9553d0mxLdT5n6TTsPxqNofCJYwzCVK+0eTJ76oovtqdIPIcYAnRSDC0Hd5lKcnFerdxz4uwpSxv00L8q7aWVytwxfnXi0dnnQvNQNWORgn4Dk0xnTjLsi41JP//y3+R9GpQwD1W1rZh2cRIrBhSenWVLPVW4vsKUMSE+9lj7WXI7qsA4MgelFZjuxvnsPxxdmNsufwrcYDjhw+DUsFSW8sB3IhxeSKxcIqlLwsPfa7evXVPcLbVhlpw0mLJi/mzIomwtLxtAYoFcncLum+RQP9N7FLohaQNSix/uf9QeVVHA7BYxQsszu2ydrnSNPpes1MCR5Nsq1HbSWEtVqONdIwrvq4oojUNQfCg== X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(136003)(396003)(39860400002)(376002)(346002)(451199021)(40470700004)(46966006)(36840700001)(81166007)(54906003)(478600001)(5660300002)(44832011)(8936002)(36756003)(2906002)(86362001)(8676002)(82310400005)(6916009)(70586007)(4326008)(70206006)(316002)(82740400003)(356005)(40480700001)(40460700003)(83380400001)(47076005)(41300700001)(1076003)(26005)(2616005)(186003)(426003)(966005)(336012)(36860700001)(6666004)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Jun 2023 03:05:47.1561 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: d1d727e3-66da-4cff-3e5c-08db67041763 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com] X-MS-Exchange-CrossTenant-AuthSource: CO1NAM11FT048.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW4PR12MB7287 From: Oleksandr Tyshchenko This flag will be re-used for PCI devices by the subsequent patches. Signed-off-by: Oleksandr Tyshchenko Signed-off-by: Stewart Hildebrand --- v3->v4: * move is_protected flag within struct device to reduce padding * re-add device_is_protected checks in add_device hooks in smmu-v3.c/ipmmu-vmsa.c * split mmu-masters check into separate patch v2->v3: * no change v1->v2: * no change downstream->v1: * rebase * s/dev_node->is_protected/dev_node->dev.is_protected/ in smmu.c * s/dt_device_set_protected(dev_to_dt(dev))/device_set_protected(dev)/ in smmu-v3.c * remove redundant device_is_protected checks in smmu-v3.c/ipmmu-vmsa.c (cherry picked from commit 59753aac77528a584d3950936b853ebf264b68e7 from the downstream branch poc/pci-passthrough from https://gitlab.com/xen-project/people/bmarquis/xen-arm-poc.git) --- xen/arch/arm/domain_build.c | 4 ++-- xen/arch/arm/include/asm/device.h | 14 ++++++++++++++ xen/common/device_tree.c | 2 +- xen/drivers/passthrough/arm/ipmmu-vmsa.c | 4 ++-- xen/drivers/passthrough/arm/smmu-v3.c | 5 +++-- xen/drivers/passthrough/arm/smmu.c | 2 +- xen/drivers/passthrough/device_tree.c | 8 ++++---- xen/include/xen/device_tree.h | 13 ------------- 8 files changed, 27 insertions(+), 25 deletions(-) diff --git a/xen/arch/arm/domain_build.c b/xen/arch/arm/domain_build.c index 3f4558ade67f..b229bfaae712 100644 --- a/xen/arch/arm/domain_build.c +++ b/xen/arch/arm/domain_build.c @@ -2524,7 +2524,7 @@ static int __init handle_device(struct domain *d, struct dt_device_node *dev, return res; } - if ( dt_device_is_protected(dev) ) + if ( device_is_protected(dt_to_dev(dev)) ) { dt_dprintk("%s setup iommu\n", dt_node_full_name(dev)); res = iommu_assign_dt_device(d, dev); @@ -3024,7 +3024,7 @@ static int __init handle_passthrough_prop(struct kernel_info *kinfo, return res; /* If xen_force, we allow assignment of devices without IOMMU protection. */ - if ( xen_force && !dt_device_is_protected(node) ) + if ( xen_force && !device_is_protected(dt_to_dev(node)) ) return 0; return iommu_assign_dt_device(kinfo->d, node); diff --git a/xen/arch/arm/include/asm/device.h b/xen/arch/arm/include/asm/device.h index b5d451e08776..8ac807482737 100644 --- a/xen/arch/arm/include/asm/device.h +++ b/xen/arch/arm/include/asm/device.h @@ -1,6 +1,8 @@ #ifndef __ASM_ARM_DEVICE_H #define __ASM_ARM_DEVICE_H +#include + enum device_type { DEV_DT, @@ -15,6 +17,8 @@ struct dev_archdata { struct device { enum device_type type; + bool is_protected; /* Shows that device is protected by IOMMU */ + uint8_t _pad[3]; #ifdef CONFIG_HAS_DEVICE_TREE struct dt_device_node *of_node; /* Used by drivers imported from Linux */ #endif @@ -94,6 +98,16 @@ int device_init(struct dt_device_node *dev, enum device_class class, */ enum device_class device_get_class(const struct dt_device_node *dev); +static inline void device_set_protected(struct device *device) +{ + device->is_protected = true; +} + +static inline bool device_is_protected(const struct device *device) +{ + return device->is_protected; +} + #define DT_DEVICE_START(_name, _namestr, _class) \ static const struct device_desc __dev_desc_##_name __used \ __section(".dev.info") = { \ diff --git a/xen/common/device_tree.c b/xen/common/device_tree.c index 8da105291184..7444da3e0aa5 100644 --- a/xen/common/device_tree.c +++ b/xen/common/device_tree.c @@ -1910,7 +1910,7 @@ static unsigned long __init unflatten_dt_node(const void *fdt, /* By default dom0 owns the device */ np->used_by = 0; /* By default the device is not protected */ - np->is_protected = false; + np->dev.is_protected = false; INIT_LIST_HEAD(&np->domain_list); if ( new_format ) diff --git a/xen/drivers/passthrough/arm/ipmmu-vmsa.c b/xen/drivers/passthrough/arm/ipmmu-vmsa.c index 611d9eeba5c3..a71fd76d89a3 100644 --- a/xen/drivers/passthrough/arm/ipmmu-vmsa.c +++ b/xen/drivers/passthrough/arm/ipmmu-vmsa.c @@ -1288,14 +1288,14 @@ static int ipmmu_add_device(u8 devfn, struct device *dev) if ( !to_ipmmu(dev) ) return -ENODEV; - if ( dt_device_is_protected(dev_to_dt(dev)) ) + if ( device_is_protected(dev) ) { dev_err(dev, "Already added to IPMMU\n"); return -EEXIST; } /* Let Xen know that the master device is protected by an IOMMU. */ - dt_device_set_protected(dev_to_dt(dev)); + device_set_protected(dev); dev_info(dev, "Added master device (IPMMU %s micro-TLBs %u)\n", dev_name(fwspec->iommu_dev), fwspec->num_ids); diff --git a/xen/drivers/passthrough/arm/smmu-v3.c b/xen/drivers/passthrough/arm/smmu-v3.c index 720aa69ff23e..8842db1ec07e 100644 --- a/xen/drivers/passthrough/arm/smmu-v3.c +++ b/xen/drivers/passthrough/arm/smmu-v3.c @@ -1521,13 +1521,14 @@ static int arm_smmu_add_device(u8 devfn, struct device *dev) */ arm_smmu_enable_pasid(master); - if (dt_device_is_protected(dev_to_dt(dev))) { + if ( device_is_protected(dev) ) + { dev_err(dev, "Already added to SMMUv3\n"); return -EEXIST; } /* Let Xen know that the master device is protected by an IOMMU. */ - dt_device_set_protected(dev_to_dt(dev)); + device_set_protected(dev); dev_info(dev, "Added master device (SMMUv3 %s StreamIds %u)\n", dev_name(fwspec->iommu_dev), fwspec->num_ids); diff --git a/xen/drivers/passthrough/arm/smmu.c b/xen/drivers/passthrough/arm/smmu.c index c37fa9af1366..d874417958b5 100644 --- a/xen/drivers/passthrough/arm/smmu.c +++ b/xen/drivers/passthrough/arm/smmu.c @@ -837,7 +837,7 @@ static int arm_smmu_dt_add_device_legacy(struct arm_smmu_device *smmu, master->of_node = dev_node; /* Xen: Let Xen know that the device is protected by an SMMU */ - dt_device_set_protected(dev_node); + device_set_protected(dev); for (i = 0; i < fwspec->num_ids; ++i) { if (!(smmu->features & ARM_SMMU_FEAT_STREAM_MATCH) && diff --git a/xen/drivers/passthrough/device_tree.c b/xen/drivers/passthrough/device_tree.c index d9b63da7260a..c60e78eaf556 100644 --- a/xen/drivers/passthrough/device_tree.c +++ b/xen/drivers/passthrough/device_tree.c @@ -34,7 +34,7 @@ int iommu_assign_dt_device(struct domain *d, struct dt_device_node *dev) if ( !is_iommu_enabled(d) ) return -EINVAL; - if ( !dt_device_is_protected(dev) ) + if ( !device_is_protected(dt_to_dev(dev)) ) return -EINVAL; spin_lock(&dtdevs_lock); @@ -65,7 +65,7 @@ int iommu_deassign_dt_device(struct domain *d, struct dt_device_node *dev) if ( !is_iommu_enabled(d) ) return -EINVAL; - if ( !dt_device_is_protected(dev) ) + if ( !device_is_protected(dt_to_dev(dev)) ) return -EINVAL; spin_lock(&dtdevs_lock); @@ -87,7 +87,7 @@ static bool_t iommu_dt_device_is_assigned(const struct dt_device_node *dev) { bool_t assigned = 0; - if ( !dt_device_is_protected(dev) ) + if ( !device_is_protected(dt_to_dev(dev)) ) return 0; spin_lock(&dtdevs_lock); @@ -146,7 +146,7 @@ int iommu_add_dt_device(struct dt_device_node *np) * and iommus property, there is no need to register it again. In this case * simply return success early. */ - if ( dt_device_is_protected(np) ) + if ( device_is_protected(dev) ) return 0; if ( dev_iommu_fwspec_get(dev) ) diff --git a/xen/include/xen/device_tree.h b/xen/include/xen/device_tree.h index c2eada748915..c2f315140560 100644 --- a/xen/include/xen/device_tree.h +++ b/xen/include/xen/device_tree.h @@ -90,9 +90,6 @@ struct dt_device_node { struct dt_device_node *next; /* TODO: Remove it. Only use to know the last children */ struct dt_device_node *allnext; - /* IOMMU specific fields */ - bool is_protected; - /* HACK: Remove this if there is a need of space */ bool_t static_evtchn_created; @@ -329,16 +326,6 @@ static inline domid_t dt_device_used_by(const struct dt_device_node *device) return device->used_by; } -static inline void dt_device_set_protected(struct dt_device_node *device) -{ - device->is_protected = true; -} - -static inline bool dt_device_is_protected(const struct dt_device_node *device) -{ - return device->is_protected; -} - static inline bool_t dt_property_name_is_equal(const struct dt_property *pp, const char *name) { -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Wed Jun 07 03:06:28 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 03:06:28 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544302.849990 (Exim 4.92) (envelope-from ) id 1q6jVE-0003bi-Jq; Wed, 07 Jun 2023 03:06:28 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544302.849990; Wed, 07 Jun 2023 03:06:28 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6jVE-0003bb-Gf; Wed, 07 Jun 2023 03:06:28 +0000 Received: by outflank-mailman (input) for mailman id 544302; Wed, 07 Jun 2023 03:06:27 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6jVD-0002sk-7Q for xen-devel@lists.xenproject.org; Wed, 07 Jun 2023 03:06:27 +0000 Received: from NAM12-MW2-obe.outbound.protection.outlook.com (mail-mw2nam12on2062c.outbound.protection.outlook.com [2a01:111:f400:fe5a::62c]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 48f07ddc-04e0-11ee-8611-37d641c3527e; Wed, 07 Jun 2023 05:06:25 +0200 (CEST) Received: from BN9PR03CA0116.namprd03.prod.outlook.com (2603:10b6:408:fd::31) by SA1PR12MB8919.namprd12.prod.outlook.com (2603:10b6:806:38e::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.32; Wed, 7 Jun 2023 03:06:21 +0000 Received: from BN8NAM11FT066.eop-nam11.prod.protection.outlook.com (2603:10b6:408:fd:cafe::e9) by BN9PR03CA0116.outlook.office365.com (2603:10b6:408:fd::31) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.19 via Frontend Transport; Wed, 7 Jun 2023 03:06:21 +0000 Received: from SATLEXMB04.amd.com (165.204.84.17) by BN8NAM11FT066.mail.protection.outlook.com (10.13.177.138) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6455.36 via Frontend Transport; Wed, 7 Jun 2023 03:06:21 +0000 Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Tue, 6 Jun 2023 22:06:20 -0500 Received: from ubuntu.mshome.net (10.180.168.240) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server id 15.1.2375.34 via Frontend Transport; Tue, 6 Jun 2023 22:06:19 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 48f07ddc-04e0-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Xxow2M9MOd3Z2b8h5M5Axcohjie9xXdjE+JYfBRq51g1p14lgqA3zEB5p7w/vfnd3OIZw04/I0qGjCVTHUGK9hDwHl81Ex62qYNceYz70CV+xnan+ZzAlUg7soHBSt6iVz4091JpiOD0k+U7dHX48N6dJbbnC31VvJwPV66sZKtMfLEzH5wfu+xYxibKn64BStrSVfQzQ6fThRR3PDAvUG1a3/0a2w4VhZj5gsV92IUSxbbsZOYQi7be5O2/xVYeOsSfF4EyruWP2mUxxTKVMHIDgMCn/u5OEkQ4ZmNCLfj+gQKWp7r+lT8/Na1yux6N5cOUKHUB2XPwZXI1X2cMNg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=dCjhvhQeWLTKE7ucXbp+AwYN9GScAyicPVw/L8OSrEY=; b=JKHoGJLD8HUkdDIBldahwyia1XJetPhUU9GmPkMCx18RfIV+pvS+URABHzl3gfXjY0IVz1m8FX3nHOi1rjxXxJqZt7kxUZTURdjCaF1fK1BC+VBsBFj6cWO5hVP33FykUjYED2ZxdVJgUO+GZgFA8+h+grtSY2yyC/B2Sg4YWaPZhmZX4se5KZuNLzcMijK48oGZwl5ILOwVLfZ55fEMHeDku4xorW1gXDIIpu1dJHDr/yFbuZ/5LozhuQdlk1NytPTHCue3x1UEIMN/XtImSx0VX4xZXiMUf+jXeGqPYchke6Q1Oo8vOxrmtvQWYgyPh1FwvC3mVM44jjYPnZPbcw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=dCjhvhQeWLTKE7ucXbp+AwYN9GScAyicPVw/L8OSrEY=; b=nSleHD2ycFd4+mL2Ff66xWgt7wvSf9ZhaC/nWE+Hp/mwu0OjXbwDvkeJBGM2dlIQpwJbvrtRxBPFJXv1k4yhVOnYerR4SXEeWU2go1Ed9suiasw33tQKe99ivz8XpBSYrgok1HlHqsYof8NBPBRQfYjR6CdjX+14vg/hZEl/up8= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C From: Stewart Hildebrand To: CC: Oleksandr Tyshchenko , Stefano Stabellini , Julien Grall , Rahul Singh , Bertrand Marquis , "Stewart Hildebrand" Subject: [PATCH v4 3/7] iommu/arm: Add iommu_dt_xlate() Date: Tue, 6 Jun 2023 23:02:16 -0400 Message-ID: <20230607030220.22698-4-stewart.hildebrand@amd.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230607030220.22698-1-stewart.hildebrand@amd.com> References: <20230607030220.22698-1-stewart.hildebrand@amd.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BN8NAM11FT066:EE_|SA1PR12MB8919:EE_ X-MS-Office365-Filtering-Correlation-Id: 6a031bd7-e07a-435a-f8a6-08db67042ba1 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: kTYd6IvCdjHxaL/hRo+VRTS28aPrqQ6MplLR5RlMMlUNqk1nA7mocbSXE7U45BDn4gZ3iNACdqyg0dxJAGmOG6ET64TcKmU8ItaUvy/VHOuGdtopc0sjlsGmUUSnF9HknbA3uhCasoBJkq3xCXI8EAfr/qefevZZgBC2DrAnGuAmU2cr6AEGdYyc11HSg6LLO5h/NmQVpGDKnDRo2v3ue7rIgHMV+fR9G19iQjx9UpnuWGwrlQdWkerDoqPy76OuZgmtLkwywqDQhb6u8s6N9F0TRQB/yw+VZfYYxG9dxw2gPLyy0HFGG1fOyZwwcMC+E5fwf0HtHl8EODlEEFpsNcEQ7mNjQvV+arHLyp3YLgXYZ8TUSaruAVfxrS9ujeWyKbUrSDxJJHEDKaymxId1KU/Fisr80F2nOTWGtziFQ5tx+sglExPj+SFzrOJ3nMkPnLLBK95woqO4xDl5Lhi3AMV+0lpAJBotRYCe4oMHiaEhfo4ftR8rSY3QTwacE8CHGAsBpJ+GKSOXXSFg2Vqd69io+2jaiHzWck9QF+pjXXz2ElNW0Uv9CuXX5SESu5IJgyTY+pmfd/+l/j7Xym2MJgnGyNLjrw5bWWOlsLM5rWxwgaHqMd7PkG6ongTi5jyq6INXqaiLxmsd+JJ0Homo7VyvpMthBOZs/FcDKndPzf1dytI6U2gjbL7NrmySZsPTATfDW+0eBIvkBbot1NA8xYEtUH6CPrMbr31FBGw4pkf485TFUjIuzQN9Nb7Vvl7F X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(346002)(396003)(376002)(39860400002)(136003)(451199021)(46966006)(40470700004)(36840700001)(36756003)(54906003)(82310400005)(2906002)(40460700003)(478600001)(8936002)(86362001)(41300700001)(5660300002)(8676002)(82740400003)(316002)(44832011)(81166007)(356005)(4326008)(70206006)(6916009)(70586007)(83380400001)(40480700001)(47076005)(1076003)(26005)(2616005)(186003)(36860700001)(426003)(336012)(966005)(6666004)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Jun 2023 03:06:21.2153 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 6a031bd7-e07a-435a-f8a6-08db67042ba1 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com] X-MS-Exchange-CrossTenant-AuthSource: BN8NAM11FT066.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA1PR12MB8919 From: Oleksandr Tyshchenko Move code for processing DT IOMMU specifier to a separate helper. This helper will be re-used for adding PCI devices by the subsequent patches as we will need exact the same actions for processing DT PCI-IOMMU specifier. While at it introduce NO_IOMMU to avoid magic "1". Signed-off-by: Oleksandr Tyshchenko Signed-off-by: Stewart Hildebrand --- v3->v4: * make dt_phandle_args *iommu_spec const * move !ops->add_device check to helper v2->v3: * no change v1->v2: * no change downstream->v1: * trivial rebase * s/dt_iommu_xlate/iommu_dt_xlate/ (cherry picked from commit c26bab0415ca303df86aba1d06ef8edc713734d3 from the downstream branch poc/pci-passthrough from https://gitlab.com/xen-project/people/bmarquis/xen-arm-poc.git) --- xen/drivers/passthrough/device_tree.c | 47 ++++++++++++++++++--------- 1 file changed, 31 insertions(+), 16 deletions(-) diff --git a/xen/drivers/passthrough/device_tree.c b/xen/drivers/passthrough/device_tree.c index c60e78eaf556..ff9e66ebf92a 100644 --- a/xen/drivers/passthrough/device_tree.c +++ b/xen/drivers/passthrough/device_tree.c @@ -127,15 +127,42 @@ int iommu_release_dt_devices(struct domain *d) return 0; } +/* This correlation must not be altered */ +#define NO_IOMMU 1 + +static int iommu_dt_xlate(struct device *dev, + const struct dt_phandle_args *iommu_spec) +{ + const struct iommu_ops *ops = iommu_get_ops(); + int rc; + + if ( !ops->dt_xlate ) + return -EINVAL; + + if ( !dt_device_is_available(iommu_spec->np) ) + return NO_IOMMU; + + rc = iommu_fwspec_init(dev, &iommu_spec->np->dev); + if ( rc ) + return rc; + + /* + * Provide DT IOMMU specifier which describes the IOMMU master + * interfaces of that device (device IDs, etc) to the driver. + * The driver is responsible to decide how to interpret them. + */ + return ops->dt_xlate(dev, iommu_spec); +} + int iommu_add_dt_device(struct dt_device_node *np) { const struct iommu_ops *ops = iommu_get_ops(); struct dt_phandle_args iommu_spec; struct device *dev = dt_to_dev(np); - int rc = 1, index = 0; + int rc = NO_IOMMU, index = 0; if ( !iommu_enabled ) - return 1; + return NO_IOMMU; if ( !ops ) return -EINVAL; @@ -163,22 +190,10 @@ int iommu_add_dt_device(struct dt_device_node *np) * The driver which supports generic IOMMU DT bindings must have * these callback implemented. */ - if ( !ops->add_device || !ops->dt_xlate ) + if ( !ops->add_device ) return -EINVAL; - if ( !dt_device_is_available(iommu_spec.np) ) - break; - - rc = iommu_fwspec_init(dev, &iommu_spec.np->dev); - if ( rc ) - break; - - /* - * Provide DT IOMMU specifier which describes the IOMMU master - * interfaces of that device (device IDs, etc) to the driver. - * The driver is responsible to decide how to interpret them. - */ - rc = ops->dt_xlate(dev, &iommu_spec); + rc = iommu_dt_xlate(dev, &iommu_spec); if ( rc ) break; -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Wed Jun 07 03:07:12 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 03:07:12 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544311.850000 (Exim 4.92) (envelope-from ) id 1q6jVu-0004I3-Ut; Wed, 07 Jun 2023 03:07:10 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544311.850000; Wed, 07 Jun 2023 03:07:10 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6jVu-0004Hw-Q2; Wed, 07 Jun 2023 03:07:10 +0000 Received: by outflank-mailman (input) for mailman id 544311; Wed, 07 Jun 2023 03:07:10 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6jVu-0002sk-0A for xen-devel@lists.xenproject.org; Wed, 07 Jun 2023 03:07:10 +0000 Received: from NAM10-DM6-obe.outbound.protection.outlook.com (mail-dm6nam10on2060a.outbound.protection.outlook.com [2a01:111:f400:7e88::60a]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 6273928d-04e0-11ee-8611-37d641c3527e; Wed, 07 Jun 2023 05:07:07 +0200 (CEST) Received: from MW2PR2101CA0019.namprd21.prod.outlook.com (2603:10b6:302:1::32) by CYYPR12MB8732.namprd12.prod.outlook.com (2603:10b6:930:c8::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Wed, 7 Jun 2023 03:07:04 +0000 Received: from CO1NAM11FT065.eop-nam11.prod.protection.outlook.com (2603:10b6:302:1:cafe::5c) by MW2PR2101CA0019.outlook.office365.com (2603:10b6:302:1::32) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.7 via Frontend Transport; Wed, 7 Jun 2023 03:07:04 +0000 Received: from SATLEXMB03.amd.com (165.204.84.17) by CO1NAM11FT065.mail.protection.outlook.com (10.13.174.62) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6455.33 via Frontend Transport; Wed, 7 Jun 2023 03:07:03 +0000 Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Tue, 6 Jun 2023 22:07:03 -0500 Received: from ubuntu.mshome.net (10.180.168.240) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server id 15.1.2375.34 via Frontend Transport; Tue, 6 Jun 2023 22:07:01 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 6273928d-04e0-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Itoey9ysYWthzmBqtfMYlz9VQ1D3dqmu3PRXAZNsXVYNxXy2D6QJQIfzHDabyl7GhzX42YeRaHV4kYhrnQOYVjdCvKohlZwTZHFz5r16t0geZNagYycd/x9TpDgqGjdmJ09I6HScuoFzcHjCk176gy00/O0sm5MBA4C5KOx3v3Jl6nQym1kmi2fe0BRbt30MGmBz9ZLDKZ8GhFa0JLkI41CU6/lXD7PMqYsM54c7EXtV6TN7jiummfUqSYgfrZ+dyRMM2Ca9Z7Kp4etwgukOMH7HuxSUh/FCG2e5EuYY8r/Uu3e/IbAvhCiAQDvoFL/0YBir3S5Dubym77PcUJDM5w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=wJAdGtIHyvrVYngxULF6IRmPI2fTcN9vqrIymUQEzeM=; b=ZluNPUL9su66cGN8W+78Z6qR3zUPH8NF/v5pa/1bMfnhinQBV1XRVroCohHoJmy1iTi0QH4CDqIQ4V0phgLz/nnzZ/KBxl2oZBQ8tFZHXg1Se37QRnGTVTOGPRWe7Zso7PLCTuLlaUGQgFaDP/qcqhVwDJT0+PUWQnXbOXpCl3yQALPOi5S7FwNjg7cQc96g303j2t3mJMAP2VcbTWLLJ+yClkipKcCQKe3LxCKhGExJ0kW1RTpjydiM/a+LEWdNNoZP2ioMf7rllv/3dX9bQ3lt0s9exj/acfjkAQCfZnbpS9T4qynlKSgF/NKO8xMA1CUd+BmVsSkBA0PmDBz7zQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=wJAdGtIHyvrVYngxULF6IRmPI2fTcN9vqrIymUQEzeM=; b=DTPLTwTfm6SkF8JFSOD+Y6CPTuBHgqB799Ibl2GCI68+LtioM53ZD2uYFP0tkamVFdFtlJp1hu5wbtn50BVVoM1FB/ukRK7iyCuWrAcC/bTRw7qeJuKVhkRIOMm2gDLeQjHWWco8CEo673JdShBLYP0jz4KsNBeAbTyOk8WxstU= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C From: Stewart Hildebrand To: CC: Oleksandr Tyshchenko , Stefano Stabellini , Julien Grall , Jan Beulich , Paul Durrant , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Rahul Singh , Bertrand Marquis , "Stewart Hildebrand" Subject: [PATCH v4 4/7] iommu/arm: Introduce iommu_add_dt_pci_sideband_ids API Date: Tue, 6 Jun 2023 23:02:17 -0400 Message-ID: <20230607030220.22698-5-stewart.hildebrand@amd.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230607030220.22698-1-stewart.hildebrand@amd.com> References: <20230607030220.22698-1-stewart.hildebrand@amd.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO1NAM11FT065:EE_|CYYPR12MB8732:EE_ X-MS-Office365-Filtering-Correlation-Id: 0362084f-5415-4f42-e466-08db67044508 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: eYOrRG4OkiPBcBXgqmpyRu9TG1nhLfq0IyOwS/KyaSrHUL/MItTlPv9tdQo8ky/OzZoGek1wlvz0TOgqbcoazFr1FU8rSvQx9wrM3y+1HmW0QqQk97nZwyXoGKcjtApWIN0T4PTTHArKHq6taE4OaqSgIHsYRJFH9uzNdCdfF8X1eQn8HeV17tlmRNdHciSfCcsr4dtlEb0uPUCpdhFxVYT0MxYgYnV1lkeZJZx+3JBVO9RxVMRt0sfTQ+ZZjZinmx0VHUHNSVfPX90UvmNexucquunTfAbBf218IdLG3vXB15yzfHJ5oT57cUMW9iatEZ9tgAkf6aUJfQVtMIHYf7/Rpb0Pgept1uz6qVTRVkQUC4CfPhwmAg+KQ0cLfNR87SQQnV02zyarYGzmrjuY3RwXkAKB8XPEpiPcs0wSzmS5+7JX8mBan3sDhQIOMOHuQ37lSXN3gXfWk1rciHUbvslfF95zGfFllSP4EXNxNeFz+fE+phrm45F3a9gJ8OZn4jAuRrLQyXi13wHyJ3tlGmwhFYYVO1+ql0YugH9Q4Mr7XTAfXMD8fiazywWbQN6JOs/4wWBkBKLbOZOthsIc5IZisqEgDotZX76PnjKOuopHG+5cx1riq92zuZSeGUZsAELWTw6lxUiPc/k6dX/wsmxVHYKflNBNs5YpbMOqcZtOow7iO2T6aYbipRJgWXsvLIfyZ2Dy/lpxiCsTNs+eXVWBGb2gClNEygHmw/RPt+EqTw3Z2iWpkEbDXdBRGHJyaMRd8FCKe1ToN4lmUH6Ec/2lzJ0rRT3+ImbWxgEVCIA= X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(136003)(396003)(376002)(346002)(39860400002)(451199021)(36840700001)(46966006)(40470700004)(8676002)(8936002)(478600001)(54906003)(966005)(6666004)(5660300002)(316002)(41300700001)(1076003)(26005)(6916009)(44832011)(186003)(4326008)(70206006)(70586007)(336012)(2616005)(83380400001)(40460700003)(2906002)(47076005)(426003)(82740400003)(81166007)(40480700001)(356005)(36860700001)(86362001)(82310400005)(36756003)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Jun 2023 03:07:03.7391 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 0362084f-5415-4f42-e466-08db67044508 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com] X-MS-Exchange-CrossTenant-AuthSource: CO1NAM11FT065.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: CYYPR12MB8732 From: Oleksandr Tyshchenko The main purpose of this patch is to add a way to register PCI device (which is behind the IOMMU) using the generic PCI-IOMMU DT bindings [1] before assigning that device to a domain. This behaves similarly to the existing iommu_add_dt_device API, except it handles PCI devices, and it is to be invoked from the add_device hook in the SMMU driver. The function of_map_id to translate an ID through a downstream mapping (which is also suitable for mapping Requester ID) was borrowed from Linux (v5.10-rc6) and updated according to the Xen code base. [1] https://www.kernel.org/doc/Documentation/devicetree/bindings/pci/pci-iommu.txt Signed-off-by: Oleksandr Tyshchenko Signed-off-by: Stewart Hildebrand --- v3->v4: * wrap #include and if ( acpi_disabled ) in #ifdef CONFIG_ACPI * fix Michal's remarks about style, parenthesis, and print formats * remove !ops->dt_xlate check since it is already in iommu_dt_xlate helper * rename s/iommu_dt_pci_map_id/dt_map_id/ because it is generic, not specific to iommu * update commit description v2->v3: * new patch title (was: iommu/arm: Introduce iommu_add_dt_pci_device API) * renamed function from: iommu_add_dt_pci_device to: iommu_add_dt_pci_sideband_ids * removed stale ops->add_device check * iommu.h: add empty stub iommu_add_dt_pci_sideband_ids for !HAS_DEVICE_TREE * iommu.h: add iommu_add_pci_sideband_ids helper * iommu.h: don't wrap prototype in #ifdef CONFIG_HAS_PCI * s/iommu_fwspec_free(pci_to_dev(pdev))/iommu_fwspec_free(dev)/ v1->v2: * remove extra devfn parameter since pdev fully describes the device * remove ops->add_device() call from iommu_add_dt_pci_device(). Instead, rely on the existing iommu call in iommu_add_device(). * move the ops->add_device and ops->dt_xlate checks earlier downstream->v1: * rebase * add const qualifier to struct dt_device_node *np arg in dt_map_id() * add const qualifier to struct dt_device_node *np declaration in iommu_add_pci_device() * use stdint.h types instead of u8/u32/etc... * rename functions: s/dt_iommu_xlate/iommu_dt_xlate/ s/dt_map_id/iommu_dt_pci_map_id/ s/iommu_add_pci_device/iommu_add_dt_pci_device/ * add device_is_protected check in iommu_add_dt_pci_device * wrap prototypes in CONFIG_HAS_PCI (cherry picked from commit 734e3bf6ee77e7947667ab8fa96c25b349c2e1da from the downstream branch poc/pci-passthrough from https://gitlab.com/xen-project/people/bmarquis/xen-arm-poc.git) --- xen/drivers/passthrough/device_tree.c | 134 ++++++++++++++++++++++++++ xen/include/xen/device_tree.h | 25 +++++ xen/include/xen/iommu.h | 22 ++++- 3 files changed, 180 insertions(+), 1 deletion(-) diff --git a/xen/drivers/passthrough/device_tree.c b/xen/drivers/passthrough/device_tree.c index ff9e66ebf92a..bd0aed5df651 100644 --- a/xen/drivers/passthrough/device_tree.c +++ b/xen/drivers/passthrough/device_tree.c @@ -154,6 +154,140 @@ static int iommu_dt_xlate(struct device *dev, return ops->dt_xlate(dev, iommu_spec); } +#ifdef CONFIG_HAS_PCI +int dt_map_id(const struct dt_device_node *np, uint32_t id, + const char *map_name, const char *map_mask_name, + struct dt_device_node **target, uint32_t *id_out) +{ + uint32_t map_mask, masked_id, map_len; + const __be32 *map = NULL; + + if ( !np || !map_name || (!target && !id_out) ) + return -EINVAL; + + map = dt_get_property(np, map_name, &map_len); + if ( !map ) + { + if ( target ) + return -ENODEV; + + /* Otherwise, no map implies no translation */ + *id_out = id; + return 0; + } + + if ( !map_len || (map_len % (4 * sizeof(*map))) ) + { + printk(XENLOG_ERR "%s: Error: Bad %s length: %u\n", np->full_name, + map_name, map_len); + return -EINVAL; + } + + /* The default is to select all bits. */ + map_mask = 0xffffffff; + + /* + * Can be overridden by "{iommu,msi}-map-mask" property. + * If df_property_read_u32() fails, the default is used. + */ + if ( map_mask_name ) + dt_property_read_u32(np, map_mask_name, &map_mask); + + masked_id = map_mask & id; + for ( ; (int)map_len > 0; map_len -= 4 * sizeof(*map), map += 4 ) + { + struct dt_device_node *phandle_node; + uint32_t id_base = be32_to_cpup(map + 0); + uint32_t phandle = be32_to_cpup(map + 1); + uint32_t out_base = be32_to_cpup(map + 2); + uint32_t id_len = be32_to_cpup(map + 3); + + if ( id_base & ~map_mask ) + { + printk(XENLOG_ERR "%s: Invalid %s translation - %s-mask (0x%"PRIx32") ignores id-base (0x%"PRIx32")\n", + np->full_name, map_name, map_name, map_mask, id_base); + return -EFAULT; + } + + if ( (masked_id < id_base) || (masked_id >= (id_base + id_len)) ) + continue; + + phandle_node = dt_find_node_by_phandle(phandle); + if ( !phandle_node ) + return -ENODEV; + + if ( target ) + { + if ( !*target ) + *target = phandle_node; + + if ( *target != phandle_node ) + continue; + } + + if ( id_out ) + *id_out = masked_id - id_base + out_base; + + printk(XENLOG_DEBUG "%s: %s, using mask %08"PRIx32", id-base: %08"PRIx32", out-base: %08"PRIx32", length: %08"PRIx32", id: %08"PRIx32" -> %08"PRIx32"\n", + np->full_name, map_name, map_mask, id_base, out_base, id_len, id, + masked_id - id_base + out_base); + return 0; + } + + printk(XENLOG_ERR "%s: no %s translation for id 0x%"PRIx32" on %s\n", + np->full_name, map_name, id, (target && *target) ? (*target)->full_name : NULL); + + /* + * NOTE: Linux bypasses translation without returning an error here, + * but should we behave in the same way on Xen? Restrict for now. + */ + return -EFAULT; +} + +int iommu_add_dt_pci_sideband_ids(struct pci_dev *pdev) +{ + const struct iommu_ops *ops = iommu_get_ops(); + struct dt_phandle_args iommu_spec = { .args_count = 1 }; + struct device *dev = pci_to_dev(pdev); + const struct dt_device_node *np; + int rc = NO_IOMMU; + + if ( !iommu_enabled ) + return NO_IOMMU; + + if ( !ops ) + return -EINVAL; + + if ( device_is_protected(dev) ) + return 0; + + if ( dev_iommu_fwspec_get(dev) ) + return -EEXIST; + + np = pci_find_host_bridge_node(pdev); + if ( !np ) + return -ENODEV; + + /* + * According to the Documentation/devicetree/bindings/pci/pci-iommu.txt + * from Linux. + */ + rc = dt_map_id(np, PCI_BDF(pdev->bus, pdev->devfn), "iommu-map", + "iommu-map-mask", &iommu_spec.np, iommu_spec.args); + if ( rc ) + return (rc == -ENODEV) ? NO_IOMMU : rc; + + rc = iommu_dt_xlate(dev, &iommu_spec); + if ( rc < 0 ) + { + iommu_fwspec_free(dev); + return -EINVAL; + } + + return rc; +} +#endif /* CONFIG_HAS_PCI */ + int iommu_add_dt_device(struct dt_device_node *np) { const struct iommu_ops *ops = iommu_get_ops(); diff --git a/xen/include/xen/device_tree.h b/xen/include/xen/device_tree.h index c2f315140560..8385cd538a58 100644 --- a/xen/include/xen/device_tree.h +++ b/xen/include/xen/device_tree.h @@ -892,6 +892,31 @@ int dt_count_phandle_with_args(const struct dt_device_node *np, */ int dt_get_pci_domain_nr(struct dt_device_node *node); +#ifdef CONFIG_HAS_PCI +/** + * dt_map_id - Translate an ID through a downstream mapping. + * @np: root complex device node. + * @id: device ID to map. + * @map_name: property name of the map to use. + * @map_mask_name: optional property name of the mask to use. + * @target: optional pointer to a target device node. + * @id_out: optional pointer to receive the translated ID. + * + * Given a device ID, look up the appropriate implementation-defined + * platform ID and/or the target device which receives transactions on that + * ID, as per the "iommu-map" and "msi-map" bindings. Either of @target or + * @id_out may be NULL if only the other is required. If @target points to + * a non-NULL device node pointer, only entries targeting that node will be + * matched; if it points to a NULL value, it will receive the device node of + * the first matching target phandle, with a reference held. + * + * Return: 0 on success or a standard error code on failure. + */ +int dt_map_id(const struct dt_device_node *np, uint32_t id, + const char *map_name, const char *map_mask_name, + struct dt_device_node **target, uint32_t *id_out); +#endif /* CONFIG_HAS_PCI */ + struct dt_device_node *dt_find_node_by_phandle(dt_phandle handle); #ifdef CONFIG_DEVICE_TREE_DEBUG diff --git a/xen/include/xen/iommu.h b/xen/include/xen/iommu.h index 405db59971c5..3cac177840f7 100644 --- a/xen/include/xen/iommu.h +++ b/xen/include/xen/iommu.h @@ -26,6 +26,9 @@ #include #include #include +#ifdef CONFIG_ACPI +#include +#endif #include TYPE_SAFE(uint64_t, dfn); @@ -219,7 +222,8 @@ int iommu_dt_domain_init(struct domain *d); int iommu_release_dt_devices(struct domain *d); /* - * Helper to add master device to the IOMMU using generic IOMMU DT bindings. + * Helpers to add master device to the IOMMU using generic (PCI-)IOMMU + * DT bindings. * * Return values: * 0 : device is protected by an IOMMU @@ -228,12 +232,28 @@ int iommu_release_dt_devices(struct domain *d); * (IOMMU is not enabled/present or device is not connected to it). */ int iommu_add_dt_device(struct dt_device_node *np); +int iommu_add_dt_pci_sideband_ids(struct pci_dev *pdev); int iommu_do_dt_domctl(struct xen_domctl *, struct domain *, XEN_GUEST_HANDLE_PARAM(xen_domctl_t)); +#else /* !HAS_DEVICE_TREE */ +static inline int iommu_add_dt_pci_sideband_ids(struct pci_dev *pdev) +{ + return 0; +} #endif /* HAS_DEVICE_TREE */ +static inline int iommu_add_pci_sideband_ids(struct pci_dev *pdev) +{ + int ret = 0; +#ifdef CONFIG_ACPI + if ( acpi_disabled ) +#endif + ret = iommu_add_dt_pci_sideband_ids(pdev); + return ret; +} + struct page_info; /* -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Wed Jun 07 03:07:36 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 03:07:36 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544313.850010 (Exim 4.92) (envelope-from ) id 1q6jWK-0004nD-7F; Wed, 07 Jun 2023 03:07:36 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544313.850010; Wed, 07 Jun 2023 03:07:36 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6jWK-0004n6-3Z; Wed, 07 Jun 2023 03:07:36 +0000 Received: by outflank-mailman (input) for mailman id 544313; Wed, 07 Jun 2023 03:07:35 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6jWI-0004mr-V1 for xen-devel@lists.xenproject.org; Wed, 07 Jun 2023 03:07:34 +0000 Received: from NAM11-DM6-obe.outbound.protection.outlook.com (mail-dm6nam11on2060b.outbound.protection.outlook.com [2a01:111:f400:7eaa::60b]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 71f46c71-04e0-11ee-b232-6b7b168915f2; Wed, 07 Jun 2023 05:07:33 +0200 (CEST) Received: from BYAPR07CA0022.namprd07.prod.outlook.com (2603:10b6:a02:bc::35) by SJ0PR12MB5421.namprd12.prod.outlook.com (2603:10b6:a03:3bb::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.32; Wed, 7 Jun 2023 03:07:30 +0000 Received: from CO1PEPF000042AA.namprd03.prod.outlook.com (2603:10b6:a02:bc:cafe::89) by BYAPR07CA0022.outlook.office365.com (2603:10b6:a02:bc::35) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.19 via Frontend Transport; Wed, 7 Jun 2023 03:07:30 +0000 Received: from SATLEXMB04.amd.com (165.204.84.17) by CO1PEPF000042AA.mail.protection.outlook.com (10.167.243.39) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6477.13 via Frontend Transport; Wed, 7 Jun 2023 03:07:28 +0000 Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Tue, 6 Jun 2023 22:07:20 -0500 Received: from ubuntu.mshome.net (10.180.168.240) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server id 15.1.2375.34 via Frontend Transport; Tue, 6 Jun 2023 22:07:19 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 71f46c71-04e0-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Fdf+zUekkZmRelrKbPqGS3pksN9fYa+PebeE8IB2GxW0UofxcWx8bNFyPod3wvwd04fI3JKjsHb8fEUTY0+A14qfT15NbfevHrYFWg03MXQjUFaO4zllPfppiSAurCeYI3ddel2lWC6pVAvT4XT10YG+xXjFqNNerywqeVNen8MAXPdhDQypSuH6cTQog0gbqyfKhkneSZCDWQIdwltlgB6IvT56IgHx+hsktDAMN2VCNTB3u4mRi+kxSQlCO5Yj9W4c24l+IscUFEz7xruELJ6EBsaDAsmlmDZUpRzULie3IxM3srR+0f8ew2RBQOeVZ1KX7bAwMdxeUBxj92FJpQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=cDZk7iF4AhnQAMe+ofo4jPmpjRfddhm3KfqYwi15ldw=; b=akKi5u0L1ZBcJh/ECRWclCyrZmYAx21f6ircuReLgd9fNt03Rjz/F0j533rpACp8N/k9PfRcXXXZzx00z/WGEyCp1JWfKWQYoUwwTD8qJ5PEJhhL4BLWGHADiDwthl+p3gX0qr8qusK5lw8qrsWMPKEz0m6PJAifCm6L2i8CQy7+vJ2ErKzpveA4fadR3E303bdptAHTSJN3anjXRRuUxy7mvHLDzYsG6R4McV5NWNu8/MuR0b41rPYnwPD8gCuj2hZbARd/a4jR+77Gpl0irHnW596yQyudPmYY9L/+JALqhsxduESHXcAQwO4YOPGFOj0PLAIrEkafOacbR1/XXg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=cDZk7iF4AhnQAMe+ofo4jPmpjRfddhm3KfqYwi15ldw=; b=cUBmYc05PXU/vL32juDZiTWvhlIzEoDVz3wVMPyQ6XtK7vt3wN/MqBlbzpqeSd8+7nNahzNVW94+P93SNdZrPNWKtODoLavysQ8AAAax00QesFIPUDkF8baJvOzpLl6VhL5/6qonCHIa/d3iL3PC81LnXFlDW/rQwDtj0P1LJVs= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C From: Stewart Hildebrand To: CC: Stewart Hildebrand , Stefano Stabellini , Julien Grall , Rahul Singh , Bertrand Marquis , "Jan Beulich" Subject: [PATCH v4 5/7] iommu/arm: iommu_add_dt_pci_sideband_ids phantom handling Date: Tue, 6 Jun 2023 23:02:18 -0400 Message-ID: <20230607030220.22698-6-stewart.hildebrand@amd.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230607030220.22698-1-stewart.hildebrand@amd.com> References: <20230607030220.22698-1-stewart.hildebrand@amd.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO1PEPF000042AA:EE_|SJ0PR12MB5421:EE_ X-MS-Office365-Filtering-Correlation-Id: ed1fadd7-69b4-44ef-2c03-08db6704540b X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: mc0mavjz+MTVAOWtsyJ+3KcXmZ/R5RF2rrtkjjHjftJcFP8BLxEYaj6VPVMp0ijrRAXHGaO7WccgwmdVCJjUsW8hPquZKRvOb0TRwZOUF/7LBOUEvrGvTFmExCHzpz4e+KQNdmZTV4xH3mDBMAmd8ZmxkHdUor4kkM7dmdEf33I0JnQpEHutfcofJeYcV3lHXbGA0yRUtPKJ3CUdS1mprNgU6/64pbKMLFzdmwQfxA5cNoHyDmpN+vqEKWolcs8NF9GR768G26kXcnwVwcALWlDhkS/WHGWvzwimERHC+wdEb8nUvI2NPNIuD4iTfdcPJ9jL1AZ4qY4YNV0AvKSv+XRMc1fCL7BO3FARmL72egQ4Nu1aLAPWmBy43dHQ3FZDbeoAdvim1C0yz5XtQqjUhMeO3KCPGcnXv1tkJ5fGAGwMuuC2Z2nbqOtqrKU9RJ7r4l2n/fywGGAiVqOmcx9gP5LT6KDT7JqxyG3ymf0hVi51Xx8h5x8ImcwNKs95BmphRyk7GUgFqr/g8deox02aNDbnS1PGaCKFouEcApNaN/47wB40arjCAlr5dbH4jPqGHSr8xkM65WgyKRSjL07NO/Oq6jo60hNxTtIs1VH1GZ2HZug5PFbPhxyPH4Lx9kdsT38y1F4GVfvNIZbnTFib/XRQPjB7hHOvwsgNt19zHxHOGOpVx3LgMg1MWYSsuHkCpRDih3KWWRb4WtcFuKVZc0sMEczi5JYO2FU8V1B5hXJoVCBROgJWu4b/yHbL7mI/ZzlTwg7w8pC/JcRLIHCaQA== X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(136003)(39860400002)(346002)(396003)(376002)(451199021)(36840700001)(46966006)(40470700004)(54906003)(40460700003)(478600001)(40480700001)(8936002)(5660300002)(44832011)(8676002)(36756003)(86362001)(2906002)(70206006)(6916009)(81166007)(82740400003)(70586007)(316002)(82310400005)(356005)(4326008)(41300700001)(2616005)(1076003)(36860700001)(47076005)(26005)(966005)(83380400001)(186003)(336012)(426003)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Jun 2023 03:07:28.9043 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: ed1fadd7-69b4-44ef-2c03-08db6704540b X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com] X-MS-Exchange-CrossTenant-AuthSource: CO1PEPF000042AA.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR12MB5421 Handle phantom functions in iommu_add_dt_pci_sideband_ids(). Each phantom function will have a unique requestor ID (RID)/BDF. On ARM, we need to map/translate the RID/BDF to an AXI stream ID for each phantom function according to the pci-iommu device tree mapping [1]. The RID/BDF -> AXI stream ID mapping in DT could allow phantom devices (i.e. devices with phantom functions) to use different AXI stream IDs based on the (phantom) function. [1] https://www.kernel.org/doc/Documentation/devicetree/bindings/pci/pci-iommu.txt Signed-off-by: Stewart Hildebrand --- v3->v4: * s/iommu_dt_pci_map_id/dt_map_id/ v2->v3: * new patch title (was: iommu/arm: iommu_add_dt_pci_device phantom handling) * rework loop to reduce duplication * s/iommu_fwspec_free(pci_to_dev(pdev))/iommu_fwspec_free(dev)/ v1->v2: * new patch --- xen/drivers/passthrough/device_tree.c | 33 ++++++++++++++++----------- 1 file changed, 20 insertions(+), 13 deletions(-) diff --git a/xen/drivers/passthrough/device_tree.c b/xen/drivers/passthrough/device_tree.c index bd0aed5df651..b7de0175ec7e 100644 --- a/xen/drivers/passthrough/device_tree.c +++ b/xen/drivers/passthrough/device_tree.c @@ -251,6 +251,7 @@ int iommu_add_dt_pci_sideband_ids(struct pci_dev *pdev) struct device *dev = pci_to_dev(pdev); const struct dt_device_node *np; int rc = NO_IOMMU; + unsigned int devfn = pdev->devfn; if ( !iommu_enabled ) return NO_IOMMU; @@ -268,21 +269,27 @@ int iommu_add_dt_pci_sideband_ids(struct pci_dev *pdev) if ( !np ) return -ENODEV; - /* - * According to the Documentation/devicetree/bindings/pci/pci-iommu.txt - * from Linux. - */ - rc = dt_map_id(np, PCI_BDF(pdev->bus, pdev->devfn), "iommu-map", - "iommu-map-mask", &iommu_spec.np, iommu_spec.args); - if ( rc ) - return (rc == -ENODEV) ? NO_IOMMU : rc; + do { + /* + * According to the Documentation/devicetree/bindings/pci/pci-iommu.txt + * from Linux. + */ + rc = dt_map_id(np, PCI_BDF(pdev->bus, devfn), "iommu-map", + "iommu-map-mask", &iommu_spec.np, iommu_spec.args); + if ( rc ) + return (rc == -ENODEV) ? NO_IOMMU : rc; - rc = iommu_dt_xlate(dev, &iommu_spec); - if ( rc < 0 ) - { - iommu_fwspec_free(dev); - return -EINVAL; + rc = iommu_dt_xlate(dev, &iommu_spec); + if ( rc < 0 ) + { + iommu_fwspec_free(dev); + return -EINVAL; + } + + devfn += pdev->phantom_stride; } + while ( (devfn != pdev->devfn) && + (PCI_SLOT(devfn) == PCI_SLOT(pdev->devfn)) ); return rc; } -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Wed Jun 07 03:07:53 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 03:07:53 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544319.850019 (Exim 4.92) (envelope-from ) id 1q6jWb-0005IP-LH; Wed, 07 Jun 2023 03:07:53 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544319.850019; Wed, 07 Jun 2023 03:07:53 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6jWb-0005II-If; Wed, 07 Jun 2023 03:07:53 +0000 Received: by outflank-mailman (input) for mailman id 544319; Wed, 07 Jun 2023 03:07:52 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6jWa-0004mr-7R for xen-devel@lists.xenproject.org; Wed, 07 Jun 2023 03:07:52 +0000 Received: from NAM11-DM6-obe.outbound.protection.outlook.com (mail-dm6nam11on20608.outbound.protection.outlook.com [2a01:111:f400:7eaa::608]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 7c7edec4-04e0-11ee-b232-6b7b168915f2; Wed, 07 Jun 2023 05:07:51 +0200 (CEST) Received: from MW4P223CA0029.NAMP223.PROD.OUTLOOK.COM (2603:10b6:303:80::34) by DM6PR12MB4188.namprd12.prod.outlook.com (2603:10b6:5:215::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Wed, 7 Jun 2023 03:07:48 +0000 Received: from CO1NAM11FT069.eop-nam11.prod.protection.outlook.com (2603:10b6:303:80:cafe::4f) by MW4P223CA0029.outlook.office365.com (2603:10b6:303:80::34) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33 via Frontend Transport; Wed, 7 Jun 2023 03:07:48 +0000 Received: from SATLEXMB03.amd.com (165.204.84.17) by CO1NAM11FT069.mail.protection.outlook.com (10.13.174.129) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6455.37 via Frontend Transport; Wed, 7 Jun 2023 03:07:47 +0000 Received: from SATLEXMB07.amd.com (10.181.41.45) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Tue, 6 Jun 2023 22:07:46 -0500 Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB07.amd.com (10.181.41.45) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Tue, 6 Jun 2023 20:07:46 -0700 Received: from ubuntu.mshome.net (10.180.168.240) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server id 15.1.2375.34 via Frontend Transport; Tue, 6 Jun 2023 22:07:44 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 7c7edec4-04e0-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=VX2I7YGOqbtsbXzDXz/xl4yLpE3DLW5h5EVLkIggwXtSmHIWfNGNqOWWZjAR0mLD+BzuaZSFXJFNUkCqVrfsrKCwgC90452oeiV8FCkrEfDA0bX9HnNZ+cXXjJ9c8qPLMxpK4UCFL5Ixpv4j1h2aCKk73BUVWJilKqBJjSVvTHd3uF5Ak65GIBdaSniH8o4ZqGcKRmT4hstYiQYCXNhSdrGVYelkO+3IkFqeIou6Q0aCEQ1EgOghAgIyQVJnAL33tnrTr1ncKwZbwSWjvCvjXtNi/4QLExNOyNBC28ODdthoKtgHgz1LIUoWalnGGYquQh1twlbHzNKGoCoW0LrDkQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=1NwxgsRLXVRgyixeYcAGGIjd7v3ZGkKgyTYitjgcDg4=; b=hZ2k0Vw9X1hXM1wrhePy4GCOPvggWXv6/w57PEP4KjZxPjdheGd4mwEx9jk2+Q6dDqK2WEdAPxrNbNoOkgee3jcmZiy71StTP1xabjpLsptQkKkOIyqVLe0+Fw9FW1Hgs+XuEjrT+5W1et03X29Iv3qVrLvjZc6/bJvg5FOOCZJKOb+OAvk8ISAdmdLZOcPtKd6WTR46GLRm7dQgfWLf4C1eisYS9mg7T74HTgv/9xLW7xBW+M/6FkIfvW7Dj7VkukaCCAx7eoPxsSiEYaFtBsCZzyCrQPvPLQzzk6kOceRAtWiQaWMy4slLe4M+ty/Vgyg5ypMgoSudlZybOE292w== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=1NwxgsRLXVRgyixeYcAGGIjd7v3ZGkKgyTYitjgcDg4=; b=jyrc7rRWOpJJdQFK+pchTu6H/vPzc9auD7tRPK2AIIKGtleUiPa+2UhAT9hXWe+SD+aP+nTMcf4tstn+JXJTCzzAHx3AfY9U/I7q1j0Vqohs2erdDwCqX5mRT5OPAzyOzg1vEclqGnfgcRVW9AAPyIAcaFgHlIaChYrsAOd0/oM= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C From: Stewart Hildebrand To: CC: Oleksandr Andrushchenko , Julien Grall , Rahul Singh , Stefano Stabellini , Bertrand Marquis , Volodymyr Babchuk , Oleksandr Tyshchenko , Stewart Hildebrand Subject: [PATCH v4 6/7] xen/arm: smmuv2: Add PCI devices support for SMMUv2 Date: Tue, 6 Jun 2023 23:02:19 -0400 Message-ID: <20230607030220.22698-7-stewart.hildebrand@amd.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230607030220.22698-1-stewart.hildebrand@amd.com> References: <20230607030220.22698-1-stewart.hildebrand@amd.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO1NAM11FT069:EE_|DM6PR12MB4188:EE_ X-MS-Office365-Filtering-Correlation-Id: 8697a878-05b0-470a-18c8-08db67045f30 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 8izQtLXcoNj0GTZSOUcmBnwjpZWTCArrv1Vz4My8n5vtJCCgxnih5scLWyNzLOmwVBVGDH/4B1O/COK+DPAOSKNvxr2/zt9JiGJ1dm8RreC8eTtLxq5Y6ou1zWVqlkZVu4KZ8LYSnWiDy5eITt+hFJjAneNJsbCtsjcaKbX/pEmYtiN7fUazqDSr+dWZjyPHStxk/PoMv/fvvapLhF/iTrOia7sguE4rFfEHC1LIdwuEsuuMFW1Jzx0kBUb/2LHM1jM16Z6hfOStVDinEASaNP7kzhObLxIHY2XtMlswS+aQg6JWUxDLhg/EDI9fMO2Db35qSV0yLXdoe1+DNpIzftwC9zdFA6eRz57YhI1BEPAkiJ236+vGKdzCFj5rC8kWv1P+O2ZQLyr5GHo2XDCYD3oJPriVhHyZJuJpcKzLCk02ijYWRoj/nqc+Gw1p732IvYyVjAUjnboqCz5IDxvZkz3nXvEnbmn84o/NYDstDMkGpff915Jwx3wDRLwT2XBPC3f7mnmEUfltPczkJH93ZNCehT+Oj0RSvx07ZSKjHCKESq6MJsBejufg9l+lyKXMhbgJA8w9krAUZGaiW41IQ51hqGDGOmyOk9Lbc9f2inUtAQCuW0+zkcNdos0IYodKEy0pW3qPFTjQz3D1TPsMDctpNWHQsfVseIdA5ds1DUWjEc+0A0+H0OHmKXw7eBCOgja6XevEGWrpZ+zp5QxPoBx2b1AbuH1BWp8M5n2zyB71u8Q8hbq2BfXOBiw34PHssyW3to/1DWT3bdVhyfdswuNmXWnV7OlFKlWbzFzCBwY= X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(346002)(396003)(376002)(136003)(39860400002)(451199021)(40470700004)(36840700001)(46966006)(40460700003)(966005)(6666004)(83380400001)(36860700001)(186003)(336012)(36756003)(426003)(2616005)(86362001)(82310400005)(81166007)(356005)(47076005)(82740400003)(1076003)(26005)(40480700001)(316002)(54906003)(70586007)(70206006)(8676002)(8936002)(6916009)(4326008)(5660300002)(44832011)(41300700001)(2906002)(478600001)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Jun 2023 03:07:47.6168 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 8697a878-05b0-470a-18c8-08db67045f30 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com] X-MS-Exchange-CrossTenant-AuthSource: CO1NAM11FT069.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR12MB4188 From: Oleksandr Andrushchenko Signed-off-by: Oleksandr Tyshchenko Signed-off-by: Oleksandr Andrushchenko Signed-off-by: Stewart Hildebrand --- v3->v4: * add new device_is_protected check in add_device hook to match SMMUv3 and IPMMU-VMSA drivers v2->v3: * invoke iommu_add_pci_sideband_ids() from add_device hook v1->v2: * ignore add_device/assign_device/reassign_device calls for phantom functions (i.e. devfn != pdev->devfn) downstream->v1: * wrap unused function in #ifdef 0 * remove the remove_device() stub since it was submitted separately to the list [XEN][PATCH v6 12/19] xen/smmu: Add remove_device callback for smmu_iommu ops https://lists.xenproject.org/archives/html/xen-devel/2023-05/msg00204.html * arm_smmu_(de)assign_dev: return error instead of crashing system * update condition in arm_smmu_reassign_dev * style fixup * add && !is_hardware_domain(d) into condition in arm_smmu_assign_dev() (cherry picked from commit 0c11a7f65f044c26d87d1e27ac6283ef1f9cfb7a from the downstream branch spider-master from https://github.com/xen-troops/xen.git) --- This is a file imported from Linux with modifications for Xen. What should be the coding style for Xen modifications? --- xen/drivers/passthrough/arm/smmu.c | 120 ++++++++++++++++++++++++----- 1 file changed, 99 insertions(+), 21 deletions(-) diff --git a/xen/drivers/passthrough/arm/smmu.c b/xen/drivers/passthrough/arm/smmu.c index d874417958b5..edb5345fb1cd 100644 --- a/xen/drivers/passthrough/arm/smmu.c +++ b/xen/drivers/passthrough/arm/smmu.c @@ -134,8 +134,20 @@ typedef enum irqreturn irqreturn_t; /* Device logger functions * TODO: Handle PCI */ -#define dev_print(dev, lvl, fmt, ...) \ - printk(lvl "smmu: %s: " fmt, dt_node_full_name(dev_to_dt(dev)), ## __VA_ARGS__) +#ifndef CONFIG_HAS_PCI +#define dev_print(dev, lvl, fmt, ...) \ + printk(lvl "smmu: %s: " fmt, dev_name(dev), ## __VA_ARGS__) +#else +#define dev_print(dev, lvl, fmt, ...) ({ \ + if ( !dev_is_pci((dev)) ) \ + printk(lvl "smmu: %s: " fmt, dev_name((dev)), ## __VA_ARGS__); \ + else \ + { \ + struct pci_dev *pdev = dev_to_pci((dev)); \ + printk(lvl "smmu: %pp: " fmt, &pdev->sbdf, ## __VA_ARGS__); \ + } \ +}) +#endif #define dev_dbg(dev, fmt, ...) dev_print(dev, XENLOG_DEBUG, fmt, ## __VA_ARGS__) #define dev_notice(dev, fmt, ...) dev_print(dev, XENLOG_INFO, fmt, ## __VA_ARGS__) @@ -187,6 +199,7 @@ static void __iomem *devm_ioremap_resource(struct device *dev, * Xen: PCI functions * TODO: It should be implemented when PCI will be supported */ +#if 0 /* unused */ #define to_pci_dev(dev) (NULL) static inline int pci_for_each_dma_alias(struct pci_dev *pdev, int (*fn) (struct pci_dev *pdev, @@ -196,6 +209,7 @@ static inline int pci_for_each_dma_alias(struct pci_dev *pdev, BUG(); return 0; } +#endif /* Xen: misc */ #define PHYS_MASK_SHIFT PADDR_BITS @@ -631,7 +645,7 @@ struct arm_smmu_master_cfg { for (i = 0; idx = cfg->smendx[i], i < num; ++i) struct arm_smmu_master { - struct device_node *of_node; + struct device *dev; struct rb_node node; struct arm_smmu_master_cfg cfg; }; @@ -723,7 +737,7 @@ arm_smmu_get_fwspec(struct arm_smmu_master_cfg *cfg) { struct arm_smmu_master *master = container_of(cfg, struct arm_smmu_master, cfg); - return dev_iommu_fwspec_get(&master->of_node->dev); + return dev_iommu_fwspec_get(master->dev); } static void parse_driver_options(struct arm_smmu_device *smmu) @@ -756,7 +770,7 @@ static struct device_node *dev_get_dev_node(struct device *dev) } static struct arm_smmu_master *find_smmu_master(struct arm_smmu_device *smmu, - struct device_node *dev_node) + struct device *dev) { struct rb_node *node = smmu->masters.rb_node; @@ -765,9 +779,9 @@ static struct arm_smmu_master *find_smmu_master(struct arm_smmu_device *smmu, master = container_of(node, struct arm_smmu_master, node); - if (dev_node < master->of_node) + if (dev < master->dev) node = node->rb_left; - else if (dev_node > master->of_node) + else if (dev > master->dev) node = node->rb_right; else return master; @@ -802,9 +816,9 @@ static int insert_smmu_master(struct arm_smmu_device *smmu, = container_of(*new, struct arm_smmu_master, node); parent = *new; - if (master->of_node < this->of_node) + if (master->dev < this->dev) new = &((*new)->rb_left); - else if (master->of_node > this->of_node) + else if (master->dev > this->dev) new = &((*new)->rb_right); else return -EEXIST; @@ -823,18 +837,24 @@ static int arm_smmu_dt_add_device_legacy(struct arm_smmu_device *smmu, struct arm_smmu_master *master; struct device_node *dev_node = dev_get_dev_node(dev); - master = find_smmu_master(smmu, dev_node); + master = find_smmu_master(smmu, dev); if (master) { dev_err(dev, "rejecting multiple registrations for master device %s\n", - dev_node->name); + dev_node ? dev_node->name : ""); return -EBUSY; } master = devm_kzalloc(dev, sizeof(*master), GFP_KERNEL); if (!master) return -ENOMEM; - master->of_node = dev_node; + master->dev = dev; + + if ( device_is_protected(dev) ) + { + dev_err(dev, "Already added to SMMU\n"); + return -EEXIST; + } /* Xen: Let Xen know that the device is protected by an SMMU */ device_set_protected(dev); @@ -844,7 +864,7 @@ static int arm_smmu_dt_add_device_legacy(struct arm_smmu_device *smmu, (fwspec->ids[i] >= smmu->num_mapping_groups)) { dev_err(dev, "stream ID for master device %s greater than maximum allowed (%d)\n", - dev_node->name, smmu->num_mapping_groups); + dev_node ? dev_node->name : "", smmu->num_mapping_groups); return -ERANGE; } master->cfg.smendx[i] = INVALID_SMENDX; @@ -880,6 +900,21 @@ static int arm_smmu_dt_add_device_generic(u8 devfn, struct device *dev) struct arm_smmu_device *smmu; struct iommu_fwspec *fwspec; +#ifdef CONFIG_HAS_PCI + if ( dev_is_pci(dev) ) + { + struct pci_dev *pdev = dev_to_pci(dev); + int ret; + + if ( devfn != pdev->devfn ) + return 0; + + ret = iommu_add_pci_sideband_ids(pdev); + if ( ret < 0 ) + iommu_fwspec_free(dev); + } +#endif + fwspec = dev_iommu_fwspec_get(dev); if (fwspec == NULL) return -ENXIO; @@ -911,11 +946,10 @@ static struct arm_smmu_device *find_smmu_for_device(struct device *dev) { struct arm_smmu_device *smmu; struct arm_smmu_master *master = NULL; - struct device_node *dev_node = dev_get_dev_node(dev); spin_lock(&arm_smmu_devices_lock); list_for_each_entry(smmu, &arm_smmu_devices, list) { - master = find_smmu_master(smmu, dev_node); + master = find_smmu_master(smmu, dev); if (master) break; } @@ -2007,6 +2041,7 @@ static bool arm_smmu_capable(enum iommu_cap cap) } #endif +#if 0 /* Not used */ static int __arm_smmu_get_pci_sid(struct pci_dev *pdev, u16 alias, void *data) { *((u16 *)data) = alias; @@ -2017,6 +2052,7 @@ static void __arm_smmu_release_pci_iommudata(void *data) { kfree(data); } +#endif static int arm_smmu_add_device(struct device *dev) { @@ -2024,12 +2060,13 @@ static int arm_smmu_add_device(struct device *dev) struct arm_smmu_master_cfg *cfg; struct iommu_group *group; void (*releasefn)(void *) = NULL; - int ret; smmu = find_smmu_for_device(dev); if (!smmu) return -ENODEV; + /* There is no need to distinguish here, thanks to PCI-IOMMU DT bindings */ +#if 0 if (dev_is_pci(dev)) { struct pci_dev *pdev = to_pci_dev(dev); struct iommu_fwspec *fwspec; @@ -2054,10 +2091,12 @@ static int arm_smmu_add_device(struct device *dev) &fwspec->ids[0]); releasefn = __arm_smmu_release_pci_iommudata; cfg->smmu = smmu; - } else { + } else +#endif + { struct arm_smmu_master *master; - master = find_smmu_master(smmu, dev->of_node); + master = find_smmu_master(smmu, dev); if (!master) { return -ENODEV; } @@ -2725,6 +2764,27 @@ static int arm_smmu_assign_dev(struct domain *d, u8 devfn, return -ENOMEM; } +#ifdef CONFIG_HAS_PCI + if ( dev_is_pci(dev) && !is_hardware_domain(d) ) + { + struct pci_dev *pdev = dev_to_pci(dev); + + printk(XENLOG_INFO "Assigning device %04x:%02x:%02x.%u to dom%d\n", + pdev->seg, pdev->bus, PCI_SLOT(devfn), PCI_FUNC(devfn), + d->domain_id); + + if ( devfn != pdev->devfn || pdev->domain == d ) + return 0; + + list_move(&pdev->domain_list, &d->pdev_list); + pdev->domain = d; + + /* dom_io is used as a sentinel for quarantined devices */ + if ( d == dom_io ) + return 0; + } +#endif + if (!dev_iommu_group(dev)) { ret = arm_smmu_add_device(dev); if (ret) @@ -2774,11 +2834,29 @@ out: return ret; } -static int arm_smmu_deassign_dev(struct domain *d, struct device *dev) +static int arm_smmu_deassign_dev(struct domain *d, u8 devfn, struct device *dev) { struct iommu_domain *domain = dev_iommu_domain(dev); struct arm_smmu_xen_domain *xen_domain; +#ifdef CONFIG_HAS_PCI + if ( dev_is_pci(dev) ) + { + struct pci_dev *pdev = dev_to_pci(dev); + + printk(XENLOG_INFO "Deassigning device %04x:%02x:%02x.%u from dom%d\n", + pdev->seg, pdev->bus, PCI_SLOT(devfn), PCI_FUNC(devfn), + d->domain_id); + + if ( devfn != pdev->devfn ) + return 0; + + /* dom_io is used as a sentinel for quarantined devices */ + if ( d == dom_io ) + return 0; + } +#endif + xen_domain = dom_iommu(d)->arch.priv; if (!domain || domain->priv->cfg.domain != d) { @@ -2806,13 +2884,13 @@ static int arm_smmu_reassign_dev(struct domain *s, struct domain *t, int ret = 0; /* Don't allow remapping on other domain than hwdom */ - if ( t && !is_hardware_domain(t) ) + if ( t && !is_hardware_domain(t) && t != dom_io ) return -EPERM; if (t == s) return 0; - ret = arm_smmu_deassign_dev(s, dev); + ret = arm_smmu_deassign_dev(s, devfn, dev); if (ret) return ret; -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Wed Jun 07 03:08:33 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 03:08:33 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544326.850030 (Exim 4.92) (envelope-from ) id 1q6jX5-0005wS-07; Wed, 07 Jun 2023 03:08:23 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544326.850030; Wed, 07 Jun 2023 03:08:22 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6jX4-0005wJ-T2; Wed, 07 Jun 2023 03:08:22 +0000 Received: by outflank-mailman (input) for mailman id 544326; Wed, 07 Jun 2023 03:08:21 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6jX3-0005Dg-JF for xen-devel@lists.xenproject.org; Wed, 07 Jun 2023 03:08:21 +0000 Received: from NAM02-DM3-obe.outbound.protection.outlook.com (mail-dm3nam02on20615.outbound.protection.outlook.com [2a01:111:f400:7e83::615]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 8d5d8bd0-04e0-11ee-8611-37d641c3527e; Wed, 07 Jun 2023 05:08:19 +0200 (CEST) Received: from SJ0PR05CA0035.namprd05.prod.outlook.com (2603:10b6:a03:33f::10) by IA0PR12MB8280.namprd12.prod.outlook.com (2603:10b6:208:3df::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.32; Wed, 7 Jun 2023 03:08:16 +0000 Received: from CO1PEPF000042AB.namprd03.prod.outlook.com (2603:10b6:a03:33f:cafe::df) by SJ0PR05CA0035.outlook.office365.com (2603:10b6:a03:33f::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.19 via Frontend Transport; Wed, 7 Jun 2023 03:08:16 +0000 Received: from SATLEXMB04.amd.com (165.204.84.17) by CO1PEPF000042AB.mail.protection.outlook.com (10.167.243.40) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6477.13 via Frontend Transport; Wed, 7 Jun 2023 03:08:15 +0000 Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Tue, 6 Jun 2023 22:08:14 -0500 Received: from ubuntu.mshome.net (10.180.168.240) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server id 15.1.2375.34 via Frontend Transport; Tue, 6 Jun 2023 22:08:12 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 8d5d8bd0-04e0-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=XbiBz0kecpBhF2DYbPmGd/kLtbfs6Ca8+4/xGF44TLE43g1wMSonzZjHcFFWTZbIFHXRpwDNV/cDMTSZvYliYg1t30LqUzqgbqseVRXdKT3sosFNdUBs+ScX2yiHKLPjKZ69qjoIL7PtEqGLfbjzMR9ytoReA0FXvfJ10A3NYYBN7sNOeIafGBtsOnDWmB8TM181gaYnhUJrsp91sU0wZTKF6zzlXzOX1O5q6lsHSr/Fqjv7rr30CVI8CJmsivZzP3HUbKxGEZhEyu9yeTkTZmGFsS34SDBXJHGbR/81UhObqrqFtGYg/hGf1V2xf4RxTsy8f9B7x7lT9BcLRlDh3Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=wRrQWmRSzu/GIUmuJ2fEbC87ERNVvfs7J7zPQvkONhA=; b=CSYcLwQAQD4HXLEzDUGCCQSTUMN57BX8GsuIlki6kdeUsidwsGx5nRenFJ/xnLpDFCaQI0+yGjqUZt2yHXtzVZfES6GVjepeeG0LOLYC3kg+KJFMeWr/GcohWSJ2YvgqA4KOFJ3Hn4WgN6M3yyTvZtnc/BArUHNpNGJjgAQuOlgeI86ghBpTJ6zUMfEa6T/6FTnFd8I+Lpab2Savz5Q1GHniGTcmX2DaBOvTRoWcwJ0THi5GIHizS1s/OW7/EuPtjxEpLPFI+HmPWyar11gYuHyATPUPpLj03VXd6gTUNmt11Hib8J0mfYStGxp5c2JYMy4ZY2FURLBIJJyzv7F5qg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=wRrQWmRSzu/GIUmuJ2fEbC87ERNVvfs7J7zPQvkONhA=; b=Lk/gF79vHhHHUMVSDVYBPx9GMbPmjMrDnZTmCf6TAtVn5v1vR9H1T4qDgc9juPdPbfgvsGKRefYpVUArPCPExm9x56z/yi7OYVtnpRm3FGWdZsNTQ6s/+AhXGbcdeqvvUfxOWljsUNIuvJRfIA/TA5GCIQiRoEgCW+nc9B0L5/o= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C From: Stewart Hildebrand To: CC: Rahul Singh , Bertrand Marquis , Stefano Stabellini , Julien Grall , Volodymyr Babchuk , Stewart Hildebrand Subject: [PATCH v4 7/7] xen/arm: smmuv3: Add PCI devices support for SMMUv3 Date: Tue, 6 Jun 2023 23:02:20 -0400 Message-ID: <20230607030220.22698-8-stewart.hildebrand@amd.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230607030220.22698-1-stewart.hildebrand@amd.com> References: <20230607030220.22698-1-stewart.hildebrand@amd.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO1PEPF000042AB:EE_|IA0PR12MB8280:EE_ X-MS-Office365-Filtering-Correlation-Id: 250657cf-1483-4a7b-4f46-08db67046fae X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: J+ykEm8fma+CPdpj2dIoU0v2cSX82VX2RObO6QAzu6d0H9oeYsMaVYJz35sSn9diEhle8Lf6NcRJ3wp3GAP3IfVgb64qWXqAuPjh/XwsGspWFpQe80es3BQmqfvTMOL2o7MK43rI3soRzhaIHbSbP/Zv73qpuQfEYOctsjjrWkX31LHMqXtMmUayXO7kUVW0nIlQ6drosNcohc36Z2Q1rGGeWrMc8QJRCkWfBG1Ag6snbGDmgjxLRmxORpSI6QrfE+nGUS4knSzXhbIM/kI3/luS0oVKAhYSN+zZmJCmxA41cOltmDtwwtrSrSo5ZburiwofntPu04/yy+1ssbGxZfPW8SVdxwzQgZujzjK+oRWUQbmlvFsAfwFN47kjVYegscfsXW3eS6H2Uax0Ic68ICcsCyoa5VNEFPScE64f3orNozobN+2ICp+fSWIdQ619V1LI5gAPzLWr5P63aJsZ+Ie3uy8gnoCgfewOLhJGsUS0PMBX55JnUNR/PfWeOgGcnpD5Y1M//JnQbFFvZf0mAwCZQoC16aXs1vYnn5BKNiev1Dynv9qSN1qIFWTNwGFVXPkMNZapMDRqhgksUVfa2mGlvSXXeDGMpqw5QM5Vb3r35GlMwHc340etOhvoMJv9tKYX4HMp+sPKYdMtVAMOFDyOkxTi3W+E5+O5+PclqNWVhIgO5eAdNeSdJBOATjj5gTtBSTpthXEoi2yytCQE+TYlgm+jGDfX5lVhR4u3/2N59CdNrbf9sc4u2gIpOiI8OVpFizheVC9DSxDqKNoUUQ== X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(376002)(346002)(136003)(39860400002)(396003)(451199021)(40470700004)(36840700001)(46966006)(36756003)(54906003)(40460700003)(2906002)(82310400005)(478600001)(86362001)(41300700001)(5660300002)(8676002)(8936002)(82740400003)(316002)(44832011)(356005)(81166007)(40480700001)(6916009)(4326008)(70586007)(70206006)(83380400001)(47076005)(1076003)(2616005)(26005)(186003)(426003)(336012)(36860700001)(966005)(6666004)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Jun 2023 03:08:15.2719 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 250657cf-1483-4a7b-4f46-08db67046fae X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com] X-MS-Exchange-CrossTenant-AuthSource: CO1PEPF000042AB.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: IA0PR12MB8280 From: Rahul Singh Signed-off-by: Rahul Singh Signed-off-by: Stewart Hildebrand --- v3->v4: * no change v2->v3: * rebase * invoke iommu_add_pci_sideband_ids() from add_device hook v1->v2: * ignore add_device/assign_device/reassign_device calls for phantom functions (i.e. devfn != pdev->devfn) downstream->v1: * rebase * move 2 replacements of s/dt_device_set_protected(dev_to_dt(dev))/device_set_protected(dev)/ from this commit to ("xen/arm: Move is_protected flag to struct device") so as to not break ability to bisect * adjust patch title (remove stray space) * arm_smmu_(de)assign_dev: return error instead of crashing system * remove arm_smmu_remove_device() stub * update condition in arm_smmu_reassign_dev * style fixup (cherry picked from commit 7ed6c3ab250d899fe6e893a514278e406a2893e8 from the downstream branch poc/pci-passthrough from https://gitlab.com/xen-project/people/bmarquis/xen-arm-poc.git) --- This is a file imported from Linux with modifications for Xen. What should be the coding style used for Xen modifications? --- xen/drivers/passthrough/arm/smmu-v3.c | 76 +++++++++++++++++++++++++-- 1 file changed, 72 insertions(+), 4 deletions(-) diff --git a/xen/drivers/passthrough/arm/smmu-v3.c b/xen/drivers/passthrough/arm/smmu-v3.c index 8842db1ec07e..427946e68f9d 100644 --- a/xen/drivers/passthrough/arm/smmu-v3.c +++ b/xen/drivers/passthrough/arm/smmu-v3.c @@ -1469,14 +1469,32 @@ static bool arm_smmu_sid_in_range(struct arm_smmu_device *smmu, u32 sid) } /* Forward declaration */ static struct arm_smmu_device *arm_smmu_get_by_dev(const struct device *dev); +static int arm_smmu_assign_dev(struct domain *d, u8 devfn, + struct device *dev, u32 flag); static int arm_smmu_add_device(u8 devfn, struct device *dev) { int i, ret; struct arm_smmu_device *smmu; struct arm_smmu_master *master; - struct iommu_fwspec *fwspec = dev_iommu_fwspec_get(dev); + struct iommu_fwspec *fwspec; + +#ifdef CONFIG_HAS_PCI + if ( dev_is_pci(dev) ) + { + struct pci_dev *pdev = dev_to_pci(dev); + int ret; + + if ( devfn != pdev->devfn ) + return 0; + + ret = iommu_add_pci_sideband_ids(pdev); + if ( ret < 0 ) + iommu_fwspec_free(dev); + } +#endif + fwspec = dev_iommu_fwspec_get(dev); if (!fwspec) return -ENODEV; @@ -1533,6 +1551,17 @@ static int arm_smmu_add_device(u8 devfn, struct device *dev) dev_info(dev, "Added master device (SMMUv3 %s StreamIds %u)\n", dev_name(fwspec->iommu_dev), fwspec->num_ids); +#ifdef CONFIG_HAS_PCI + if ( dev_is_pci(dev) ) + { + struct pci_dev *pdev = dev_to_pci(dev); + + ret = arm_smmu_assign_dev(pdev->domain, devfn, dev, 0); + if (ret) + goto err_free_master; + } +#endif + return 0; err_free_master: @@ -2622,6 +2651,27 @@ static int arm_smmu_assign_dev(struct domain *d, u8 devfn, struct arm_smmu_domain *smmu_domain; struct arm_smmu_xen_domain *xen_domain = dom_iommu(d)->arch.priv; +#ifdef CONFIG_HAS_PCI + if ( dev_is_pci(dev) && !is_hardware_domain(d) ) + { + struct pci_dev *pdev = dev_to_pci(dev); + + printk(XENLOG_INFO "Assigning device %04x:%02x:%02x.%u to dom%d\n", + pdev->seg, pdev->bus, PCI_SLOT(devfn), + PCI_FUNC(devfn), d->domain_id); + + if ( devfn != pdev->devfn || pdev->domain == d ) + return 0; + + list_move(&pdev->domain_list, &d->pdev_list); + pdev->domain = d; + + /* dom_io is used as a sentinel for quarantined devices */ + if ( d == dom_io ) + return 0; + } +#endif + spin_lock(&xen_domain->lock); /* @@ -2655,7 +2705,7 @@ out: return ret; } -static int arm_smmu_deassign_dev(struct domain *d, struct device *dev) +static int arm_smmu_deassign_dev(struct domain *d, uint8_t devfn, struct device *dev) { struct iommu_domain *io_domain = arm_smmu_get_domain(d, dev); struct arm_smmu_xen_domain *xen_domain = dom_iommu(d)->arch.priv; @@ -2667,6 +2717,24 @@ static int arm_smmu_deassign_dev(struct domain *d, struct device *dev) return -ESRCH; } +#ifdef CONFIG_HAS_PCI + if ( dev_is_pci(dev) ) + { + struct pci_dev *pdev = dev_to_pci(dev); + + printk(XENLOG_INFO "Deassigning device %04x:%02x:%02x.%u from dom%d\n", + pdev->seg, pdev->bus, PCI_SLOT(devfn), + PCI_FUNC(devfn), d->domain_id); + + if ( devfn != pdev->devfn ) + return 0; + + /* dom_io is used as a sentinel for quarantined devices */ + if ( d == dom_io ) + return 0; + } +#endif + spin_lock(&xen_domain->lock); arm_smmu_detach_dev(master); @@ -2686,13 +2754,13 @@ static int arm_smmu_reassign_dev(struct domain *s, struct domain *t, int ret = 0; /* Don't allow remapping on other domain than hwdom */ - if ( t && !is_hardware_domain(t) ) + if ( t && !is_hardware_domain(t) && (t != dom_io) ) return -EPERM; if (t == s) return 0; - ret = arm_smmu_deassign_dev(s, dev); + ret = arm_smmu_deassign_dev(s, devfn, dev); if (ret) return ret; -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Wed Jun 07 03:56:51 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 03:56:51 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544335.850046 (Exim 4.92) (envelope-from ) id 1q6kHo-00037N-QY; Wed, 07 Jun 2023 03:56:40 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544335.850046; Wed, 07 Jun 2023 03:56:40 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6kHo-00037G-NX; Wed, 07 Jun 2023 03:56:40 +0000 Received: by outflank-mailman (input) for mailman id 544335; Wed, 07 Jun 2023 03:56:39 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6kHn-000374-03; Wed, 07 Jun 2023 03:56:39 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6kHm-000758-UD; Wed, 07 Jun 2023 03:56:38 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6kHm-000405-Kj; Wed, 07 Jun 2023 03:56:38 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q6kHm-0004kS-KI; Wed, 07 Jun 2023 03:56:38 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=NxZm10PTsL2rLSEusMJ5nqpwv3wKc9KmLh6zQ9VDMJ4=; b=KSrhRTSB+aZF2V78EfKpu9J+07 eWZ2TguOl6iGpHaMjR7pUrdW4UbPauJZcNBQUtZvFwX+B4+EOXXT5nLuZZu6/vm95sfyjo4vZNZPU qd3pObNMmGB1jw9DTmOKkvpNewPE5StZWemHXC/7wq+NTcmkc6XdOECkWg1pxTx9DcQ0=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [qemu-mainline test] 181231: regressions - FAIL X-Osstest-Failures: qemu-mainline:build-arm64-xsm:xen-build:fail:regression qemu-mainline:build-arm64:xen-build:fail:regression qemu-mainline:build-amd64:xen-build:fail:regression qemu-mainline:build-i386:xen-build:fail:regression qemu-mainline:build-amd64-xsm:xen-build:fail:regression qemu-mainline:build-i386-xsm:xen-build:fail:regression qemu-mainline:build-armhf:xen-build:fail:regression qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-i386:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:build-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:build-arm64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:build-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:build-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pygrub:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking X-Osstest-Versions-This: qemuu=f5e6786de4815751b0a3d2235c760361f228ea48 X-Osstest-Versions-That: qemuu=6972ef1440a9d685482d78672620a7482f2bd09a From: osstest service owner Date: Wed, 07 Jun 2023 03:56:38 +0000 flight 181231 qemu-mainline real [real] http://logs.test-lab.xenproject.org/osstest/logs/181231/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-arm64-xsm 6 xen-build fail REGR. vs. 180691 build-arm64 6 xen-build fail REGR. vs. 180691 build-amd64 6 xen-build fail REGR. vs. 180691 build-i386 6 xen-build fail REGR. vs. 180691 build-amd64-xsm 6 xen-build fail REGR. vs. 180691 build-i386-xsm 6 xen-build fail REGR. vs. 180691 build-armhf 6 xen-build fail REGR. vs. 180691 Tests which did not succeed, but are not blocking: test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-xl-xsm 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-raw 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-xsm 1 build-check(1) blocked n/a test-arm64-arm64-xl 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit1 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit2 1 build-check(1) blocked n/a test-arm64-arm64-xl-thunderx 1 build-check(1) blocked n/a test-arm64-arm64-xl-vhd 1 build-check(1) blocked n/a test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a test-armhf-armhf-libvirt 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-qcow2 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-raw 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a test-armhf-armhf-xl-arndale 1 build-check(1) blocked n/a test-armhf-armhf-xl-multivcpu 1 build-check(1) blocked n/a test-armhf-armhf-xl-rtds 1 build-check(1) blocked n/a test-armhf-armhf-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-amd 1 build-check(1) blocked n/a test-amd64-i386-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-raw 1 build-check(1) blocked n/a test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-i386 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-amd64 1 build-check(1) blocked n/a test-amd64-coresched-i386-xl 1 build-check(1) blocked n/a test-amd64-coresched-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-xsm 1 build-check(1) blocked n/a build-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-shadow 1 build-check(1) blocked n/a test-amd64-amd64-xl-rtds 1 build-check(1) blocked n/a build-arm64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a build-armhf-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a build-i386-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-amd 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-pair 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-qcow2 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-vhd 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvshim 1 build-check(1) blocked n/a test-amd64-amd64-pair 1 build-check(1) blocked n/a test-amd64-amd64-pygrub 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-intel 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd11-amd64 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd12-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-multivcpu 1 build-check(1) blocked n/a test-amd64-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit1 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit1 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-intel 1 build-check(1) blocked n/a test-amd64-i386-xl 1 build-check(1) blocked n/a test-amd64-i386-xl-pvshim 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a version targeted for testing: qemuu f5e6786de4815751b0a3d2235c760361f228ea48 baseline version: qemuu 6972ef1440a9d685482d78672620a7482f2bd09a Last test of basis 180691 2023-05-17 10:45:22 Z 20 days Failing since 180699 2023-05-18 07:21:24 Z 19 days 66 attempts Testing same since 181231 2023-06-07 01:50:56 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Afonso Bordado Akihiko Odaki Akihiro Suda Alex Bennée Alex Williamson Alexander Bulekov Alexander Graf Alexander Ivanov Alistair Francis Ani Sinha Ani Sinha Anton Johansson BALATON Zoltan Bernhard Beschow Bin Meng Brian Cain Brice Goglin Camilla Conte Cindy Lu Clément Chigot Cornelia Huck Cédric Le Goater Cédric Le Goater Daniel Henrique Barboza Daniel P. Berrangé Daniil Kovalev David Hildenbrand Emanuele Giuseppe Esposito Enze Li Eric Auger Eric Blake Eric DeVolder Erico Nunes Eugenio Pérez Fabiano Rosas Fan Ni Fiona Ebner Francesco Cagnin Francisco Iglesias Gavin Shan Gregory Price Gregory Price Hanna Czenczek Hao Zeng Hawkins Jiawei Igor Mammedov Ilya Leoshkevich Ira Weiny Jason Wang Jean-Louis Dupond Jean-Philippe Brucker Jiaxun Yang John Snow Jonathan Cameron Juan Quintela Kevin Wolf Laurent Vivier Lei Yang Leonardo Bras Maksim Davydov Marc-André Lureau Marcin Juszkiewicz Marco Liebel Mark Cave-Ayland Markus Armbruster Matheus Tavares Bernardino Mauro Matteo Cascella Max Fritz Michael S. Tsirkin Michael Tokarev Michal Privoznik Mostafa Saleh Nicholas Piggin Nicolas Saenz Julienne Niek Linnenbank Palmer Dabbelt Paolo Bonzini Peter Maydell Peter Xu Philippe Mathieu-Daudé qianfan Zhao Raghu H Rene Engel Richard Henderson Richard Purdie Ricky Zhou Ryan Wendland Sebastian Ott Sergio Lopez Sid Manning Song Gao Stefan Hajnoczi Stefano Garzarella Steve Sistare Taylor Simpson Thomas Huth Thomas Weißschuh timothee.cocault@gmail.com Timothée Cocault Tommy Wu Vikram Garhwal Viktor Prutyanov Vitaly Cheptsov Vivek Kasireddy Vladimir Sementsov-Ogievskiy Volker Rümelin Xinyu Li Zeng Hao Zhenyu Zhang Zhenzhong Duan Zhuojia Shen jobs: build-amd64-xsm fail build-arm64-xsm fail build-i386-xsm fail build-amd64 fail build-arm64 fail build-armhf fail build-i386 fail build-amd64-libvirt blocked build-arm64-libvirt blocked build-armhf-libvirt blocked build-i386-libvirt blocked build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl blocked test-amd64-coresched-amd64-xl blocked test-arm64-arm64-xl blocked test-armhf-armhf-xl blocked test-amd64-i386-xl blocked test-amd64-coresched-i386-xl blocked test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-i386-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-amd64-libvirt-xsm blocked test-arm64-arm64-libvirt-xsm blocked test-amd64-i386-libvirt-xsm blocked test-amd64-amd64-xl-xsm blocked test-arm64-arm64-xl-xsm blocked test-amd64-i386-xl-xsm blocked test-amd64-amd64-qemuu-nested-amd blocked test-amd64-amd64-xl-pvhv2-amd blocked test-amd64-i386-qemuu-rhel6hvm-amd blocked test-amd64-amd64-dom0pvh-xl-amd blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-freebsd10-amd64 blocked test-amd64-amd64-qemuu-freebsd11-amd64 blocked test-amd64-amd64-qemuu-freebsd12-amd64 blocked test-amd64-amd64-xl-qemuu-ovmf-amd64 blocked test-amd64-i386-xl-qemuu-ovmf-amd64 blocked test-amd64-amd64-xl-qemuu-win7-amd64 blocked test-amd64-i386-xl-qemuu-win7-amd64 blocked test-amd64-amd64-xl-qemuu-ws16-amd64 blocked test-amd64-i386-xl-qemuu-ws16-amd64 blocked test-armhf-armhf-xl-arndale blocked test-amd64-amd64-xl-credit1 blocked test-arm64-arm64-xl-credit1 blocked test-armhf-armhf-xl-credit1 blocked test-amd64-amd64-xl-credit2 blocked test-arm64-arm64-xl-credit2 blocked test-armhf-armhf-xl-credit2 blocked test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-freebsd10-i386 blocked test-amd64-amd64-qemuu-nested-intel blocked test-amd64-amd64-xl-pvhv2-intel blocked test-amd64-i386-qemuu-rhel6hvm-intel blocked test-amd64-amd64-dom0pvh-xl-intel blocked test-amd64-amd64-libvirt blocked test-armhf-armhf-libvirt blocked test-amd64-i386-libvirt blocked test-amd64-amd64-xl-multivcpu blocked test-armhf-armhf-xl-multivcpu blocked test-amd64-amd64-pair blocked test-amd64-i386-pair blocked test-amd64-amd64-libvirt-pair blocked test-amd64-i386-libvirt-pair blocked test-amd64-amd64-xl-pvshim blocked test-amd64-i386-xl-pvshim blocked test-amd64-amd64-pygrub blocked test-armhf-armhf-libvirt-qcow2 blocked test-amd64-amd64-xl-qcow2 blocked test-arm64-arm64-libvirt-raw blocked test-armhf-armhf-libvirt-raw blocked test-amd64-i386-libvirt-raw blocked test-amd64-amd64-xl-rtds blocked test-armhf-armhf-xl-rtds blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-amd64-xl-shadow blocked test-amd64-i386-xl-shadow blocked test-arm64-arm64-xl-thunderx blocked test-amd64-amd64-libvirt-vhd blocked test-arm64-arm64-xl-vhd blocked test-armhf-armhf-xl-vhd blocked test-amd64-i386-xl-vhd blocked ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 15395 lines long.) From xen-devel-bounces@lists.xenproject.org Wed Jun 07 05:01:29 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 05:01:29 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544344.850062 (Exim 4.92) (envelope-from ) id 1q6lIL-0002YK-Ey; Wed, 07 Jun 2023 05:01:17 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544344.850062; Wed, 07 Jun 2023 05:01:17 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6lIL-0002YD-BU; Wed, 07 Jun 2023 05:01:17 +0000 Received: by outflank-mailman (input) for mailman id 544344; Wed, 07 Jun 2023 05:01:15 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6lIJ-0002Y3-HZ; Wed, 07 Jun 2023 05:01:15 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6lIJ-0000al-AK; Wed, 07 Jun 2023 05:01:15 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6lIJ-00074R-0Y; Wed, 07 Jun 2023 05:01:15 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q6lIJ-0004k2-0A; Wed, 07 Jun 2023 05:01:15 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=54++/L5gJ5Hcl12SBW/m3PfQjztx37fpnjKrARI8d1E=; b=x0oVgpkEla1f8gXbL0cYJYzuro zWXgDfMiJbzENpzvsWIthDNt/l6GYRN56C9rlk1s2Vi1fcExZjtgnLC045uqNgzHt5jm+LoyxQnyi BtKZnlhlvKX32yKnX+d74roFJM/f1qsPxZlgqrME5ICqQSSzjIqutNXZ15e1nJ/lKniA=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable-smoke test] 181233: tolerable all pass - PUSHED X-Osstest-Failures: xen-unstable-smoke:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking xen-unstable-smoke:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking xen-unstable-smoke:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking xen-unstable-smoke:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking xen-unstable-smoke:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: xen=64a647f8d817c6989edc000613b5afae19f03f99 X-Osstest-Versions-That: xen=b35b22acb887f682efe8385b3df165220bc84c86 From: osstest service owner Date: Wed, 07 Jun 2023 05:01:15 +0000 flight 181233 xen-unstable-smoke real [real] http://logs.test-lab.xenproject.org/osstest/logs/181233/ Failures :-/ but no regressions. Tests which did not succeed, but are not blocking: test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-armhf-armhf-xl 15 migrate-support-check fail never pass test-armhf-armhf-xl 16 saverestore-support-check fail never pass version targeted for testing: xen 64a647f8d817c6989edc000613b5afae19f03f99 baseline version: xen b35b22acb887f682efe8385b3df165220bc84c86 Last test of basis 181195 2023-06-05 17:02:08 Z 1 days Testing same since 181233 2023-06-07 02:04:37 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Luca Fancellu Stefano Stabellini jobs: build-arm64-xsm pass build-amd64 pass build-armhf pass build-amd64-libvirt pass test-armhf-armhf-xl pass test-arm64-arm64-xl-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-libvirt pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Pushing revision : To xenbits.xen.org:/home/xen/git/xen.git b35b22acb8..64a647f8d8 64a647f8d817c6989edc000613b5afae19f03f99 -> smoke From xen-devel-bounces@lists.xenproject.org Wed Jun 07 05:33:35 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 05:33:35 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544352.850072 (Exim 4.92) (envelope-from ) id 1q6lnV-00061C-30; Wed, 07 Jun 2023 05:33:29 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544352.850072; Wed, 07 Jun 2023 05:33:29 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6lnU-000615-W5; Wed, 07 Jun 2023 05:33:28 +0000 Received: by outflank-mailman (input) for mailman id 544352; Wed, 07 Jun 2023 05:33:27 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6lnT-00060v-Hy; Wed, 07 Jun 2023 05:33:27 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6lnT-0001IT-8R; Wed, 07 Jun 2023 05:33:27 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6lnS-00081K-Ts; Wed, 07 Jun 2023 05:33:26 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q6lnS-0000nz-TW; Wed, 07 Jun 2023 05:33:26 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=URGf0J5e/cxDL8pqrI/EiWmzSTGm1WOODK8fjkQe7yA=; b=AlLxJUhb+JR+sN24Q/XFK0adX4 FYnVUEAgDZlNjK1YfO+ZYZaG6itVGKSEZEth0+bRf6rOw0Q9rG7OMPGaFYkNKJrYY4oDbI/a/ho2L C9RDkJ9I4PyBfn+gZ95Pr1UH4+YCLMk+wKVKhLFYu7nLL8uwm7yLlf8YTGcc/fo5BWvM=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [ovmf test] 181234: all pass - PUSHED X-Osstest-Versions-This: ovmf=67fc78d026490ea4c375eeb19724abb40e7be8f2 X-Osstest-Versions-That: ovmf=ded0b489af09cde5afa05d74acdb12cd4b4f8394 From: osstest service owner Date: Wed, 07 Jun 2023 05:33:26 +0000 flight 181234 ovmf real [real] http://logs.test-lab.xenproject.org/osstest/logs/181234/ Perfect :-) All tests in this flight passed as required version targeted for testing: ovmf 67fc78d026490ea4c375eeb19724abb40e7be8f2 baseline version: ovmf ded0b489af09cde5afa05d74acdb12cd4b4f8394 Last test of basis 181225 2023-06-06 21:54:32 Z 0 days Testing same since 181234 2023-06-07 03:42:43 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Abner Chang Neo Hsueh jobs: build-amd64-xsm pass build-i386-xsm pass build-amd64 pass build-i386 pass build-amd64-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-i386-pvops pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Pushing revision : To xenbits.xen.org:/home/xen/git/osstest/ovmf.git ded0b489af..67fc78d026 67fc78d026490ea4c375eeb19724abb40e7be8f2 -> xen-tested-master From xen-devel-bounces@lists.xenproject.org Wed Jun 07 05:54:43 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 05:54:43 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544359.850083 (Exim 4.92) (envelope-from ) id 1q6m7m-0008UX-R0; Wed, 07 Jun 2023 05:54:26 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544359.850083; Wed, 07 Jun 2023 05:54:26 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6m7m-0008UQ-Mj; Wed, 07 Jun 2023 05:54:26 +0000 Received: by outflank-mailman (input) for mailman id 544359; Wed, 07 Jun 2023 05:54:25 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6m7l-0008UG-Ak; Wed, 07 Jun 2023 05:54:25 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6m7k-0001pX-UB; Wed, 07 Jun 2023 05:54:24 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6m7k-0000H1-JK; Wed, 07 Jun 2023 05:54:24 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q6m7k-0000EH-Ih; Wed, 07 Jun 2023 05:54:24 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=/v/G687EMtHqp7nB2IaDRawFurTLkUYp6r1bE87L//A=; b=rQWwJ6lb3RyRhcwGKwme38m5je 88eUFSaIRyzr4Orha/evZnVASFCCFWqvbUN/1VOSxLtvLt6WFS8PHHA1CQVfBCALWtctnXNE1kIzn URGa8qYQbSPbUhJIne2HmuAk6mdlqJo0aSW1Zhpysn0rmeoIntLfh6CjHUBdl/qUj7yY=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [linux-linus test] 181217: regressions - FAIL X-Osstest-Failures: linux-linus:test-armhf-armhf-xl-credit1:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-vhd:guest-start/debian.repeat:fail:heisenbug linux-linus:test-armhf-armhf-examine:reboot:fail:nonblocking linux-linus:test-armhf-armhf-xl-multivcpu:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-arndale:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking linux-linus:test-armhf-armhf-xl-credit2:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking linux-linus:test-armhf-armhf-libvirt:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-raw:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-qcow2:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-vhd:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-rtds:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-qcow2:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-raw:migrate-support-check:fail:nonblocking X-Osstest-Versions-This: linux=a4d7d701121981e3c3fe69ade376fe9f26324161 X-Osstest-Versions-That: linux=6c538e1adbfc696ac4747fb10d63e704344f763d From: osstest service owner Date: Wed, 07 Jun 2023 05:54:24 +0000 flight 181217 linux-linus real [real] flight 181238 linux-linus real-retest [real] http://logs.test-lab.xenproject.org/osstest/logs/181217/ http://logs.test-lab.xenproject.org/osstest/logs/181238/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: test-armhf-armhf-xl-credit1 8 xen-boot fail REGR. vs. 180278 Tests which are failing intermittently (not blocking): test-amd64-amd64-xl-vhd 21 guest-start/debian.repeat fail pass in 181238-retest Tests which did not succeed, but are not blocking: test-armhf-armhf-examine 8 reboot fail like 180278 test-armhf-armhf-xl-multivcpu 8 xen-boot fail like 180278 test-armhf-armhf-xl-arndale 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 180278 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 180278 test-armhf-armhf-xl-credit2 8 xen-boot fail like 180278 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 180278 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 180278 test-armhf-armhf-libvirt 8 xen-boot fail like 180278 test-armhf-armhf-libvirt-raw 8 xen-boot fail like 180278 test-armhf-armhf-libvirt-qcow2 8 xen-boot fail like 180278 test-armhf-armhf-xl 8 xen-boot fail like 180278 test-armhf-armhf-xl-vhd 8 xen-boot fail like 180278 test-armhf-armhf-xl-rtds 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 180278 test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qcow2 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass test-amd64-amd64-libvirt-raw 14 migrate-support-check fail never pass version targeted for testing: linux a4d7d701121981e3c3fe69ade376fe9f26324161 baseline version: linux 6c538e1adbfc696ac4747fb10d63e704344f763d Last test of basis 180278 2023-04-16 19:41:46 Z 51 days Failing since 180281 2023-04-17 06:24:36 Z 50 days 96 attempts Testing same since 181217 2023-06-06 15:44:55 Z 0 days 1 attempts ------------------------------------------------------------ 2631 people touched revisions under test, not listing them all jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl fail test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-freebsd11-amd64 pass test-amd64-amd64-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale fail test-amd64-amd64-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 fail test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 fail test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine fail test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt fail test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu fail test-amd64-amd64-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-amd64-pygrub pass test-amd64-amd64-libvirt-qcow2 pass test-armhf-armhf-libvirt-qcow2 fail test-amd64-amd64-libvirt-raw pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw fail test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds fail test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-amd64-xl-vhd fail test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd fail ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 332671 lines long.) From xen-devel-bounces@lists.xenproject.org Wed Jun 07 06:17:52 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 06:17:52 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544369.850101 (Exim 4.92) (envelope-from ) id 1q6mUF-0002he-Q7; Wed, 07 Jun 2023 06:17:39 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544369.850101; Wed, 07 Jun 2023 06:17:39 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6mUF-0002hX-MG; Wed, 07 Jun 2023 06:17:39 +0000 Received: by outflank-mailman (input) for mailman id 544369; Wed, 07 Jun 2023 06:17:37 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6mUD-0002hP-O6 for xen-devel@lists.xenproject.org; Wed, 07 Jun 2023 06:17:37 +0000 Received: from EUR05-DB8-obe.outbound.protection.outlook.com (mail-db8eur05on2062d.outbound.protection.outlook.com [2a01:111:f400:7e1a::62d]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id fdb0ad27-04fa-11ee-8611-37d641c3527e; Wed, 07 Jun 2023 08:17:34 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by PAXPR04MB8766.eurprd04.prod.outlook.com (2603:10a6:102:20d::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.32; Wed, 7 Jun 2023 06:17:31 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.030; Wed, 7 Jun 2023 06:17:30 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: fdb0ad27-04fa-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Q2BIjYpeXJPMAcEwjAM10MHs/kA3r+qvsl6HYVxvmXH9zO+nNlWg3PEFrl0FGpiTFJ+zB5fNVDpsUa85WXmmpQ60789TuGPokhFRCsnRnOe0I1KECGGedmTtTQdvJJWlrCxWWHaXEaGEykokyJJ/3JPxPdKuqF2qc2zEmV9DLz6Yg9X65X9+ITSTQl4kypsGBIBg+XUTFF7HU7VLvPzCqiJ3KyaXisJEHJ1XOOi+DNEy3S3X4mmVsOToqSHbaFHu9uqo+9h0psfeijMFnZFsfIrzHbUzff5FDP8DHH0Alnb1eFstODbnWtW/PcKgKPjUpBxdPjXfyFkcdw7DcKkZxg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=eDOjmyOzz76zmShyt9iByjI0GSvpNDj4zRniBntn140=; b=mCDX4sTodsgXdYWSfTM9Jmkb2RBlRZQBc7DpYO26VHLHFjsjsXKRRvb9/oLrUN10cNO9MnYrPjC3sfNary5o1RqTKXNenqXg7zyb3uZxlZAX2OLNg16Wo+sijFesCMhVGZCvxmhev1eX6XE8X21SVS8pt1U5yjBVcxfd9ZbvTjE+ctUuKt6cCxPSLJ2wy5mxX93DvyjvO03wldm/OAF4j1fwmMxzpJEd08yTA5QiwyBr6Qzmp8U53DtJHwn2sdF5b7M0WZlfj0XEhsx4xyamTRLpgKnJY7BRAe5HlmIk+eNOeagRy+15jK9OIslGIb8PlWoD5eE/7VYycA2W3j5N3w== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=eDOjmyOzz76zmShyt9iByjI0GSvpNDj4zRniBntn140=; b=oc6RqV13b0PT4UVff0OjTrQtWLHev8etiJ/5VZncaYKK8H+b1nsxaLx+osbeMtYYeRzRDWbbo+IIeBlKlNlDj1tYmFVSSufxm6mcwIXnAjyC/PN9g0PmSnk06de74VW9IuYYHajz0F/5SBGxVQDxUm+wLi5h+IPxnbGjHqsu3y4+sVZzOTrecy540PBy7Vp4w+AwV/++XSNrb/s51iPGkN/ddBvOv4Wv452KjUji0RlADmVGCn0EUZsE+vGOqOuhVHaIdPJcQ4yECeFG8H50DnQ++yJuVfa8OxqZMmmrKt5HtwVVBYpjZWHXhlBNZXMWboCk9eUjppuxuV6izvqblw== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <4b282f2f-bce8-4c98-897c-2866ec1b6dd0@suse.com> Date: Wed, 7 Jun 2023 08:17:30 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.11.2 Content-Language: en-US To: "xen-devel@lists.xenproject.org" Cc: Andrew Cooper , Wei Liu , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= From: Jan Beulich Subject: [PATCH] x86: allow non-BIGMEM configs to boot on >= 16Tb systems Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR3P281CA0101.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:a1::10) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|PAXPR04MB8766:EE_ X-MS-Office365-Filtering-Correlation-Id: af212d16-ee9a-41d4-f7f6-08db671edfa5 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 4UOKOHLB0nyXFo8k+K7H8dYXSZ511Zh/O++l7VWCpKM74u/8SPUqp4L545BgWkMIX91G5pwzlxchSY7RGNCPRk+LumOZxpg+hx6RP50t9H9nxVBX2UMITROiJ/4XkVoqjIE9JB+130YRoL2krIRtQZ2jNZypR1oEBuwPqtoZ2TG6xdeMAoKcWB0kFmsAse6Zi4znGyOZ/Hw8acINlw8tXeb8F7BWnRy52+GJjb2Wjq0c/7C+h9zKqGWgj79Rr0R1yReGf1dT4uIjhEunonroyOp/UX2P/rusGZ0+Mwhtz3j5Nt+cunUDiLPmtVjVkBUJMwHhnuzRobk0ha1DZhqW2mXOgx9pMPlaW6Ho0psxuNr/tsVTRfPgpo4h7xvXclUODEiBDsBaABmKjvfs36L0Li2z8AJcrn6lAHem7ZiN3AIkqqUM5Gm2M0AD8kognXutIuv0lVGP/FV4VWcjIzT0saT0Ti7F5WOwt+H+zwpA1qXYoleLlXpvheaH8y95SgKGKASh8ramMaXZt8sxEgrz3oR0vBnkcxXUNXBpbohlqNZOBLkNMexGKBsxT9oj3y2rTOJNLEnshGJxuSPlX0bbLn67RLcGqzONffwRHbdXbVEMEwTYLtUcaN1ikP1gUR/okuOAJ+mG4nQTalrD0vxhZg== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(39860400002)(346002)(366004)(396003)(376002)(136003)(451199021)(66476007)(66556008)(54906003)(478600001)(83380400001)(41300700001)(8936002)(8676002)(66946007)(2616005)(4326008)(38100700002)(6916009)(316002)(6486002)(186003)(26005)(6506007)(6512007)(86362001)(31696002)(5660300002)(2906002)(36756003)(31686004)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?TG9KMEROMHZiZFJTZEkvcTBPRHZxT0R1dTRodklWdmhMZFhMODRDdWVsU25L?= =?utf-8?B?Q0tQN0lxODRxL1F0OVEyclBxcG42Q1dhN3JUeWZpSkFxbmNZdEMrWVNUOC9Y?= =?utf-8?B?ZklwK3R3Z3FSMXo2dzU3YmQ3Ni92UndmaEFiTXA5UVdzaFNhbjlsZjdjZHV2?= =?utf-8?B?dG93NFRVblZvMDc4eHQwZjNEdHROdmlZNE1wWGhLb0MyWTBhMDFTQWxzQVNC?= =?utf-8?B?UmVKbkxVOE52WjR2dXpzdVlKdURVbVRqZ3FENUF2NmJBM1NwWi9IR2J2am5W?= =?utf-8?B?YW4zN2NGSVpRZkdZbmtRRnpNWFlKRFBJK3NSOTE1ZE5rRlVIKzVyTjd6ZGRQ?= =?utf-8?B?R0JEZjlJMzdTL0JvdStuVVkyNUtwcXRJNXd5V0pnQ0RzZXF3TSs1UFlxZVpo?= =?utf-8?B?bHpuYXdLd0hCOE1ldWZKMkFrNm95bVNibmRjMmhhNHgvYlJyK051ck9udkZQ?= =?utf-8?B?WnFkTFYzSmdTZDhIZXZ2Tk0vOHBsRWRHTUtCcTBkcmZKVm9zUk9qeG13ZDNi?= =?utf-8?B?VHNhU0M2cHoxOXFPSjNBUWQ3U1Y3Rk00QVhLaFVwYW1nYmJaQkF1VXFyS0Jy?= =?utf-8?B?M21KdTJvWHlwWE1KL1FKQm5PNlhYQ2lrRkVnMmdHYmFpUm1UelhNS2IwRTdo?= =?utf-8?B?aE11NDdxMXB1SmZVWlNZTmlIY3E5NnZJNkU0WVFrQzRLTE0rRkJnbytQaEd5?= =?utf-8?B?MXhzcFgva01MTTNZWDQ0aHZmMDJnSk9lTlR1Qkd1cW1LR0tIM0h1V2lsRExs?= =?utf-8?B?b2NuS05IRlQwcVlxbVdpRThKYlgxeDlrSTRWRXA1aXFXQ04xVkxvWUU3T0py?= =?utf-8?B?V3p4aVU0ekVucDNmT05GeGlQekJQQVZNVXZqM3NNTzJKTzBRTEhDMmFqdVd4?= =?utf-8?B?TlE5VHRwWUExcytDVXdqbWZUcUJrNE51Q2h4Z1VncmVyVGY5SGdpdlJ3L01a?= =?utf-8?B?M1Z6V1VaY1RoblFDMzJMR0FXc2N2NThtWE40amZsMG1TTkgxVzlSaHFiTzNt?= =?utf-8?B?bHdtM2dlMFFrM2x5NG92WlFzWkJqWmEzS3g4UlRxbFJSbE5saHk5emxNYnd4?= =?utf-8?B?Ym9aU2c1dGEyNVFzRVA2SThqWkdFMWg5NkpHb3JwOEVYRkdPUC9vZ3ZwSzho?= =?utf-8?B?amhoNE9CL0gyQlBTSTg3S2owRXdvU01vdmFaL3pZWG5MQWNtYnZYZXhvMElX?= =?utf-8?B?MVBMQ3VrcWtqWHNKVnN5MCtWeG8zV0RHN3lBbXVMWHFRRlY2MWFjWGpmeUE5?= =?utf-8?B?TXY5bEJHUHlLUkViaGp5bFZZU1B1YXhFN1ZNMlA0YmNYZE9vZHBrVUI4Qk5k?= =?utf-8?B?NkJQeGsrbnJrSkhjNDFNbGZ0a1RVMzZOY1FlSlBCREprOWRaYnVqQ2FvQjRR?= =?utf-8?B?VnF2VnNSTVZlS3hGV0hqMTFvMEJwcDVHRG55eTlOdHB1VTNVQ01Ed3BWRmFI?= =?utf-8?B?WC9PSHJXOFpkMWhldDhmeFpWL2pXSUlTekx2aXBxamNkdCthR0taY0E1NlBH?= =?utf-8?B?V05nQng2dnUzU1BUK2RiYkFRYmlxcldwSFlvWGtFVUgrSzJvdStGVEJrcG4v?= =?utf-8?B?Z0xYV2RFdUVROXBYZFh1V0E5OTZPS3Y4YUJOZUMvWElkMS9VK3ZOMzdjcTQy?= =?utf-8?B?UFNXaXFNVDFraUdHNXhZVkJzeGZsQnlWQWpucDM5OHBwNlhNTUtIa2NJZnY5?= =?utf-8?B?SlhNdkY4MStxRmdVenBSZDZjc2paUnp0NmswWjcycWI1dmdJOGVFemFRM3Vi?= =?utf-8?B?akszbWtmOWxEbXBrNjF3RDB4SnJSQ1FQV1hXaUE4cjJ6amhpYWp6Z1NVZXdS?= =?utf-8?B?SldiVEcrY2RGR0hiUGY4blRLWDJCUnZJdFl6c3Q0Nm5iZ09Pemgxd043RTdx?= =?utf-8?B?a3pmRGliSG02S2NCdFErVm11ZFJ0NzRkQlkvdnozcll3dVhLMjM0L1RZbDlG?= =?utf-8?B?RDFreGp6WFg4ZUVQNUpOYWxlck1IVVpsSFJNQStBK2hreFMvbmNCVDJNRHpz?= =?utf-8?B?emVWYW1zY091NWlmYitMVVpMQ2wzM05FdERxNitzZXYvcWlyWFdmdjFZcS9o?= =?utf-8?B?UnE4TUViZWdDMTZpOFQ1YUU3S1Q5Nk82T1ZYMGZzUE1KRGJIZ3FFQXdLNXQy?= =?utf-8?Q?lsTFxLoFvaj7logs2URso30Kk?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: af212d16-ee9a-41d4-f7f6-08db671edfa5 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Jun 2023 06:17:30.3287 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: C2q0v2GrwvGpPI5Ji3QezJuMCdRFY3JtH/TZ3F1teVjFVqSnGFdWqllymOpvofJ4tI41ZpcLDcz9uV8kMcW3BA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB8766 While frame table setup, directmap init, and boot allocator population respect all intended bounds, the logic passing memory to the heap allocator which wasn't passed to the boot allocator fails to respect max_{pdx,pfn}. This then typically triggers the BUG() in free_heap_pages() after checking page state, because of hitting a struct page_info instance which was set to all ~0. Of course all the memory above the 16Tb boundary is still going to remain unused; using it requires BIGMEM=y. And of course this fix similarly ought to help BIGMEM=y configurations on >= 123Tb systems (where all the memory beyond that boundary continues to be unused). Fixes: bac2000063ba ("x86-64: reduce range spanned by 1:1 mapping and frame table indexes") Signed-off-by: Jan Beulich --- Sadly the people reporting the issue have decided to go with the 16Tb limit, and hence the patch wasn't tested by them. I thought that I'd still post it, though. The "must not be passed to the boot allocator" for the range in question may already not be applicable anymore, with all page tables now being mapped via map_domain_page() (iirc this work has been completed). But of course there would be a risk that something else is/was overlooked, and hence the offending code is being fixed rather than purged (and the purging should occur once the directmap is properly gone). (This also seems preferable for potential backports of this change.) --- a/xen/arch/x86/setup.c +++ b/xen/arch/x86/setup.c @@ -1722,15 +1722,16 @@ void __init noreturn __start_xen(unsigne if ( max_page - 1 > virt_to_mfn(HYPERVISOR_VIRT_END - 1) ) { - unsigned long limit = virt_to_mfn(HYPERVISOR_VIRT_END - 1); + unsigned long lo = virt_to_mfn(HYPERVISOR_VIRT_END - 1); + unsigned long hi = pdx_to_pfn(max_pdx - 1) + 1; uint64_t mask = PAGE_SIZE - 1; if ( !highmem_start ) - xenheap_max_mfn(limit); + xenheap_max_mfn(lo); end_boot_allocator(); - /* Pass the remaining memory to the allocator. */ + /* Pass the remaining memory in the (lo, hi) range to the allocator. */ for ( i = 0; i < boot_e820.nr_map; i++ ) { uint64_t s, e; @@ -1739,10 +1740,12 @@ void __init noreturn __start_xen(unsigne continue; s = (boot_e820.map[i].addr + mask) & ~mask; e = (boot_e820.map[i].addr + boot_e820.map[i].size) & ~mask; - if ( PFN_DOWN(e) <= limit ) + if ( PFN_DOWN(e) <= lo || PFN_DOWN(s) >= hi ) continue; - if ( PFN_DOWN(s) <= limit ) - s = pfn_to_paddr(limit + 1); + if ( PFN_DOWN(s) <= lo ) + s = pfn_to_paddr(lo + 1); + if ( PFN_DOWN(e) > hi ) + e = pfn_to_paddr(hi); init_domheap_pages(s, e); } } From xen-devel-bounces@lists.xenproject.org Wed Jun 07 06:23:23 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 06:23:23 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544375.850111 (Exim 4.92) (envelope-from ) id 1q6mZY-0004Di-GO; Wed, 07 Jun 2023 06:23:08 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544375.850111; Wed, 07 Jun 2023 06:23:08 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6mZY-0004Db-DZ; Wed, 07 Jun 2023 06:23:08 +0000 Received: by outflank-mailman (input) for mailman id 544375; Wed, 07 Jun 2023 06:23:07 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6mZW-0004DU-VS for xen-devel@lists.xenproject.org; Wed, 07 Jun 2023 06:23:07 +0000 Received: from NAM10-BN7-obe.outbound.protection.outlook.com (mail-bn7nam10on20621.outbound.protection.outlook.com [2a01:111:f400:7e8a::621]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id c275cf5e-04fb-11ee-b232-6b7b168915f2; Wed, 07 Jun 2023 08:23:05 +0200 (CEST) Received: from BN8PR07CA0028.namprd07.prod.outlook.com (2603:10b6:408:ac::41) by DM4PR12MB6470.namprd12.prod.outlook.com (2603:10b6:8:b8::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Wed, 7 Jun 2023 06:23:01 +0000 Received: from BN8NAM11FT083.eop-nam11.prod.protection.outlook.com (2603:10b6:408:ac:cafe::4d) by BN8PR07CA0028.outlook.office365.com (2603:10b6:408:ac::41) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.19 via Frontend Transport; Wed, 7 Jun 2023 06:23:01 +0000 Received: from SATLEXMB03.amd.com (165.204.84.17) by BN8NAM11FT083.mail.protection.outlook.com (10.13.177.75) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6477.24 via Frontend Transport; Wed, 7 Jun 2023 06:23:01 +0000 Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Wed, 7 Jun 2023 01:23:01 -0500 Received: from [10.71.193.39] (10.180.168.240) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server id 15.1.2375.34 via Frontend Transport; Wed, 7 Jun 2023 01:22:59 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: c275cf5e-04fb-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=M9PK/JxVHRcfK554uMNZrqIx9QJLYEqrcL0ayVwOs+R+ZiR+DoKK73B16FN3LrySgduGOxeR7JOAS/sEo37fVh8B7SZemPEuBP/QYzcx7tW758ecb3oaNXjlkt5T9Od+H3+T1fvLErEC+E8BANFiJdTD8c7OoqgOtcXhAYxBR2FKn6y3ZMIJZNrDvKHT00Fh4ipfAwlqDS9DLHIbkNSbl8e9/eg9n7pjMQafTAoXNFcZKu8MRPIJ/8W635/d9S4V0IH0k3pwUlUhyaZ78Gg3bBVkz3WwDslL8wqQImmt+9ThNwplpaGxCQ6mH6MJd5Yp+SP/y4ximjQ/9HY1siMvFg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=upMnOKCVzaIaFKEpiAVGbV0GOa0uq9d3oTgjDwd0WHA=; b=VsknEwlO3bAGzdEbJqI9Rwo2peYpsabcalx3mGq1sPc4u+a1vlvTMonUN5p5pu8auaqrp2VRkqZSWYrsb83r2uSIwyjak4lsC9GtH+AYudKZ69qz21Ga7ySi+VhkIhvSlOaR+kC8TpzHmFmH7eVHjILiq5P5Vg+y2WHpl/RiFe4fdq7X49bv4B1bu33xEbX2o01xHcU14TVNE7z8E6JyY+lUxyDpve6QKTTjvyUs9DhHLjts4nMHdThG6dv29M7kfi+9n/g7ixn2JzWrETP4eQk+0s54W+6ej34vn8eHqw0MoWoaQPbYvUpXGDpbvx4phngOFp/m05sxss5Il6XZHA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=xen.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=upMnOKCVzaIaFKEpiAVGbV0GOa0uq9d3oTgjDwd0WHA=; b=qUQOEZOSELIRFwOBn06SYA1uXJXIys6CS+NNmvxp2Laeg2SyRTf/QT6Zc0BalexLmB+XFOU0tVYMWnt59wYo3KOz6hLCMtFakEIRBGPBBBlHKdIaul5ldR0CkHAidbI1hjiXMUuiCSiAy3Z275w/gYbcihKLz0IoI07pnOtwyBk= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C Message-ID: Date: Wed, 7 Jun 2023 08:22:59 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [XEN][PATCH v7 08/19] xen/device-tree: Add device_tree_find_node_by_path() to find nodes in device tree To: Vikram Garhwal , Julien Grall , CC: , , , References: <20230602004824.20731-1-vikram.garhwal@amd.com> <20230602004824.20731-9-vikram.garhwal@amd.com> <007122c9-1ab2-dd5e-bed4-64333113e55a@amd.com> Content-Language: en-US From: Michal Orzel In-Reply-To: <007122c9-1ab2-dd5e-bed4-64333113e55a@amd.com> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BN8NAM11FT083:EE_|DM4PR12MB6470:EE_ X-MS-Office365-Filtering-Correlation-Id: addfdec4-0f17-4d3d-bfbd-08db671fa521 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: UgTc8wF/SBVIucuiZdjGd2yrxboubSUMzLukRKk0PVsK2J6suG4KN9/M/Ex9stTakdLb0269JvMEcpHFl/Nu9Sqi0Jm2Be0Bv4j6RgGHNKkPa2e1MoTWli9TokDwWEmELl8WZwrI1VCAYn8HLGK2UY0dd5UUk5MWLEJMQbghn8a3SEuWd5HeDhayc37Lyjqfnw04Ou1HlhoZmUXniPZ5eX6oCZHVV7FuKHvxh/Wa+qk8FkFJKqPixi2uLObm/NbBOVIn/t2xi/rWvVO1DfuBJBUInBliL54eoc94e8sZ3PQSoee8DWSZ1w/UAS7tpUgUfOxZ6Aswk3+SR7Eyw3aTAFwZtBynAlFUgJiGNxGA6v14ELny8wBY+1mx5fQ8KVTUzaH4EegFeak+MhFxseQm2g3vv8TT6aBJoSk09P59WKE7jrQ9HJQIX4soRQPDaNO6tGddXdXoL59xr1Zf1ZB1yO5eTuIINGfZvF0oi/hChPTuoGZ7O5BKk1+fhvVrOavEtkzzJ9nFuVSDuQAo1MdTSqT9yyD+BKqt9v1OtYiocjx6aSbeLgklPb+1n970/Bt4cIbQL/P1sROnnbfrjbTgWXgrkd39EWirNVrNmkZR9FaBiEVB1UrY78OGTUSZ3eHmQ4GpU9O2M446la+OXfM/MwXxQXmpytG+OUh+Rc2EQNws7Mr4tJ7UBPvMJc0t4UwtSdi85c/tb/vqf2REXmJt84b8dFrLEKlGIptBOmBJkJwseM31TBufIZa/1FBnRwXVhCTJeGQiG/8e2p7BLcYYnleiOTH93flFWOwe4ivWv0xZhDG//3RPfuc/V70Oc0++ok+RDMLZNVQyTj6PZNb+pg== X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(346002)(39860400002)(396003)(136003)(376002)(451199021)(46966006)(40470700004)(36840700001)(47076005)(336012)(426003)(82740400003)(44832011)(110136005)(54906003)(16576012)(40480700001)(478600001)(8676002)(8936002)(41300700001)(316002)(70586007)(70206006)(356005)(81166007)(31696002)(5660300002)(4326008)(86362001)(40460700003)(36756003)(2906002)(4744005)(82310400005)(36860700001)(186003)(26005)(53546011)(31686004)(2616005)(37363002)(43740500002)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Jun 2023 06:23:01.4687 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: addfdec4-0f17-4d3d-bfbd-08db671fa521 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com] X-MS-Exchange-CrossTenant-AuthSource: BN8NAM11FT083.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR12MB6470 On 06/06/2023 22:29, Vikram Garhwal wrote: > Hi, > > On 6/5/23 12:12 PM, Julien Grall wrote: >> Hi, >> >> On 02/06/2023 01:48, Vikram Garhwal wrote: >>> Add device_tree_find_node_by_path() to find a matching node with path >>> for a >> >> AFAICT, the only difference in name between the new function and the >> existing one is "device_tree" vs "dt". The latter is just a shorthand >> of "device tree", so it feels to me the name are a bit too similar. >> >> From my understanding, the main difference between the two functions >> are that the current one is starting from root whereas the current one >> is starting from a given node. So how about >> "dt_find_node_by_path_from()"? > Thank you for the suggestion. This name was added in v3 as Luca Fancellu > suggested to rename this function to "device_tree_find_node_by_path". I > am okay with renaming it to dt_find_node_by_path_from(). > > Luca, Michal and Henry: Does the dt_find_node_by_path_from() name works > for you? Works for me. ~Michal From xen-devel-bounces@lists.xenproject.org Wed Jun 07 06:25:02 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 06:25:02 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544380.850122 (Exim 4.92) (envelope-from ) id 1q6mbD-0004li-U0; Wed, 07 Jun 2023 06:24:51 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544380.850122; Wed, 07 Jun 2023 06:24:51 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6mbD-0004lb-PK; Wed, 07 Jun 2023 06:24:51 +0000 Received: by outflank-mailman (input) for mailman id 544380; Wed, 07 Jun 2023 06:24:51 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6mbC-0004lV-Ur for xen-devel@lists.xenproject.org; Wed, 07 Jun 2023 06:24:50 +0000 Received: from EUR03-DBA-obe.outbound.protection.outlook.com (mail-dbaeur03on20629.outbound.protection.outlook.com [2a01:111:f400:fe1a::629]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 009f296e-04fc-11ee-8611-37d641c3527e; Wed, 07 Jun 2023 08:24:49 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by AS8PR04MB7671.eurprd04.prod.outlook.com (2603:10a6:20b:299::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Wed, 7 Jun 2023 06:24:46 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.030; Wed, 7 Jun 2023 06:24:46 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 009f296e-04fc-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=kkQGP5tfcGqMaD8p38YWo2ltz7SXevsPbfOZQxPxq7SBY9oMfxSjD0eI+XmoRkZW6jG7JOKaAxzFs8RXeV/dp8UYrZkuNlq1lP/g3vcVIBpe40UaGwO46J+n8BIxU+bg4Y3gjCku7xBo33/oLZ5MvDfaxlKka2RA2h5Bisw5VKnoZRjZxIZ5RFjJFBs8VmG8BgWRIcdHGF4fc6O0Pgka8/jzQEryjzD2KGup+zFlw12AzKmsRvTpGhCphps39bUpEQCgHAAh4FdsOykQJaV0qYkErW0uoTtci3Dl8ZkgeZOo9/Jk/6wAiyTIQi8c0+vnBb5RgxL8qRNu1J1gFMzFAw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=4p+bzo5gEg8xMHp4vUEkRwzl4DVSpUCuCRh4tkO0vf0=; b=KUu8NBNiqC2qaKoAdc5e4t31kAc8AcU2GsGAzxrjeki3KE0S9BTEJ8zMTpBJ1Hraerj65mOiqH/FLKgDbC4LFumCElK/d5UUZXA2yCsshzZ5xx9NPAJI51fHQq70hhLU57JMNtQT4SfacVKD49OVDtkkWpPXuW4RRz6rhhzeChXIDhv1BKJtDBqLRVq41ILPpACzj9v5pFPb2RwWBIP1PHI1VSjTJJPRcAGwhlEmcWYxFW3+cZKpc15LdKyAZxW5Nl57JSCQpDXJ5KTu0Adc6aiOT47TsNAtfvRHsw2MuR3pgRpbD2EupfcBK31ZflkRMaCIrENWQqiAKkauE4pCeA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=4p+bzo5gEg8xMHp4vUEkRwzl4DVSpUCuCRh4tkO0vf0=; b=UvwytD7JnW20EmL+4zeIBaDf6MIrgwKbh1aRAPSTYYdrUeqHC1lK50cXbb+mBuaqW+gskME8Gc8LhMrGPUaoX8Qhh3/xXE1UdHE+YXBd1ItjftuqlK5DCz6VSTDw7g5Kq0mzbC/3VmWQJgdwtGa1JRILnEiuTt/zeN/OW5FlIps6NCEHTCc2/dsaweshIxHlJAefuCIBzUr5+U8T94Yw6qtblI0HE6HwVi5u+r2FsL+f5Z9iPPHVJAjOelYxy8tVr0tw+TedDlGYZuFSmxMfO/MDz9qWpkbjVZL4IVZ+g6Lqkou+sp9j4pIF1+KjyLoWDhulZ/k3ixS/nuTNlXSlrA== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <37c77ba3-ea7c-f9ee-1725-f2c27b8afe8e@suse.com> Date: Wed, 7 Jun 2023 08:24:45 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.11.2 Subject: Re: [PATCH] amd: disable C6 after 1000 days on Fam17h models 30-3fh Content-Language: en-US To: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= Cc: Andrew Cooper , Wei Liu , George Dunlap , Julien Grall , Stefano Stabellini , xen-devel@lists.xenproject.org References: <20230605151036.18085-1-roger.pau@citrix.com> From: Jan Beulich In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: AS4P190CA0040.EURP190.PROD.OUTLOOK.COM (2603:10a6:20b:5d1::20) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|AS8PR04MB7671:EE_ X-MS-Office365-Filtering-Correlation-Id: a29fafe1-57fb-41f8-40ef-08db671fe357 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: WDmQrDKT+6TCiBRwJHTPq8g81CbnKeEfiA2Hj7k0WletKM+W1udF8wpo8oq6migGqxQasRG/+SAmdp0DifNC+mHfA70X9GbDFfy30wHCVwcrYxfK2AYQOimLewcFx5eLkhDWYQnfPYYHjCT39vQ4X6ytXN0I8sjUfAMOsutGB+VWWhJVCHzfXPApaw1eCcwwZh8fMckU8pNXyHhiXXPDEHRWHAgq/12+Y38A6GEdl8rDOxdxVxqYVhQSV4pmoga3tslo2fWCik2ZmaeHikZUgqXTZ15dM1nr8yq3z+Ri8qE2sVgxE/eK1Kxc29V09JndaNF321od4qDJ8OQx/zvOsGd/rUGXX/KLIpbkQ/2ajgREwXrYbjRxdjg5R6QHncMPgfy72U7zHyT36mrJ5xD3qCrxouidRRCsfg/nKiGomHvMf949ejKrC5sFQ5HgH+hutyvrBA6sl87HZi6/KfscY9us70PYiRBdo0/tYPj2hWKiZVHXa9kpZXNfu/ndtCZ0aK5B/5ThjZsku5OGGgFtGku87lOpP64uZC/FWor/Y5AYTileHzYPpJxEUtaUTIJjQH3B9cBY6KmXGAlerOItTgRqIl+BynRj60wsMD6Ai7D43jim+Q7u70ezmyKJ7MjetmTx0J6KHVDnIQ3Le9laMXfdsJ0DaTAlVno9VquNYTahSgJgtyOka7p2lciQl2cj X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(376002)(396003)(39860400002)(136003)(346002)(366004)(451199021)(36756003)(41300700001)(186003)(26005)(6512007)(6506007)(53546011)(5660300002)(83380400001)(2616005)(8676002)(8936002)(54906003)(478600001)(66946007)(66556008)(66476007)(4326008)(316002)(6486002)(38100700002)(2906002)(86362001)(6916009)(31696002)(31686004)(221023011)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?MVBNR3RXMm43cXdJOENqTm15T1N4TUVaeERwdC9rSlc2UGxnS1V1MnpqMmpF?= =?utf-8?B?MHcrT2V0TWpMWjRMbkpQaFU0ZytGUjg4NVRrZ2ZoV3pCTjBUOVMrSFNxL3Z6?= =?utf-8?B?d2xNVTR0b0tlUmd3Rkk1dlJGbnYxQkt4TXBCU2VBc0FvNzB2bjNyeU01RkZs?= =?utf-8?B?bmNMS1MxcEpLcGg1UHRlV3NhN0JWSjBqMXZaQnNLcEtIalFxZUNTaDEvRU4z?= =?utf-8?B?MHZhNXJQd3Y3TGNvK0RCVkdqc2haV29DQjdvYzk2QWcydmIzMWQxa2oyRnVW?= =?utf-8?B?Yy82Q2hFUUh6TU5CK2tRSTVrMTV2YUs4Sldtck9WZzhndHhxMVhsanNYcVFa?= =?utf-8?B?c2FjTGZPN0ZMNnFvM1piVCt3ZUx2Z1phbEJDNGFmSnVEeE00NG40U0lWTkFw?= =?utf-8?B?bUdPUGtSQjB6c1ZWY082NFE0WGIyZUhvRkczZE9iK0pxK1EvN1FDMThVTTRQ?= =?utf-8?B?YXptbUlBT0NCb2FrQ1hZTjgxbzlTejlJU2lHS1V6WGR2bm9PYjFsUjlvZmo1?= =?utf-8?B?L05lS3UzOGVqYjZ3dVhoTFRJQVc1ckV6alJ6RlBoVUNEVlVOQWVZZ0dPTE9J?= =?utf-8?B?Z3U2NXNjMEs2M09FWFBaZ0d2L0dtMUpzWC9OdEFwcTB5eklKd1dhZjZWeVVM?= =?utf-8?B?RitqTWNQYno1ZHV0YjBHT3pOWnlZTUx0eWpRdnZNdGpYakNhUWZuTkNFcGtU?= =?utf-8?B?dXRKZVVqbTBjaWtNRTVzaG5yUmZrVUNrb3ZvN08wYTQ4b0tOVlg4b1M0N29Z?= =?utf-8?B?aEREak9EbHNYWVJrQUhLT0ZlYW9EWE5QaU11ZnZLbWpKN3p4MTdlME1kbHpR?= =?utf-8?B?T3AvTXJZR1M3RXd3RVBFdDNFR1dIWWZiTVFkWDdKL0FDTEF6OGRyVllzU0F1?= =?utf-8?B?NC9FNFB4YU5JZmRjdnlDMG1wYyt2ZnBMaStCcnZLa2tEdW9OK0Zsa1ZlaHlK?= =?utf-8?B?TTNOOTlaeVNpLzBTVmJkMVZZaFV1TjZaVDZNbUxTRi9uM1ROSkY1LzZCaSs4?= =?utf-8?B?Ukg3d1JiZFJqOXBvMFpJSStFODhMbC9kZmlQWkwyRC9sSlg1TEtTUThrR3R3?= =?utf-8?B?VGphb1BXUDFGenF2UDFXWjRaOXhnc3l5RXBENnF4aDNLNnVXSjUrSldyb3BL?= =?utf-8?B?RzlQbks0WXVDajFsdWJwaldaS2Nzc0hXbXdlWWhhL1FURG9RWldTQVhXZUNk?= =?utf-8?B?Nkx2c3RxQnJISjV1MWNjUmZaZVEwMms2QS9OaWtsOUdxRVJoUTc1bGFROXM0?= =?utf-8?B?Y2RLY3F6SDI5aVJHWUdCT2piZ01CMzRBbWF5VjVSYVplRlpZU0NsditTbnNL?= =?utf-8?B?NmZ5MFcrK3FWMlRPM3JQdVQ0TWluemdCRHVoN2d4QjVwSzVPOGwyZGhub3ZG?= =?utf-8?B?d3BoYStYZXo0aUdpekE3ak1EN01BMlRyWUxBOWZBVERVQ3RkNnYzQVMxV2Za?= =?utf-8?B?dnFFaHJaSWNDSjIxL2VtdS9nUmpReWlseGlYUWcwckNjd2s2R2NCY0E5MkVE?= =?utf-8?B?dFhzS1lNM2VYMzliSlhnaCtWc0xWMmZ2N0tZNDFnR3loM3BTQkZwMENma0tn?= =?utf-8?B?T1Q4QVBKd1FnQWlnUENZQWxQN0hhdld0RVBzOUtaai9lSEwxQy9kNzZ0NU1P?= =?utf-8?B?M0lEVnZRNWZGYkFJSjE4eWE0akY0OWMzZk5qdkFOYUpWVC9LVFpnTVA4N3RB?= =?utf-8?B?UE9tV3pFLzg2RjRsM0JIbDJKakIwYnBHbm5HYU5BcXJTenowU3Zhc3BNaFRo?= =?utf-8?B?Vmw2Z3Zid3UzMFp3SFdRd0tDU2k1VGpRaGRxZlBaTFk1SXdTWTFiTEJuRmpR?= =?utf-8?B?cG9yR05kRzU5ZFpnQnUwZTFLazhaRFZNSXRXcFNob1RUekRBeFNOdVZmTzA3?= =?utf-8?B?SHpzdHlUbXkwMTJLclM3WERpZEQwM1NNb3g2YXNtdGFKK2lvQWVMMnR5aFM5?= =?utf-8?B?YnppWUg2Sk41Nm9YenZmZ0Z2S3RMM21iMUU5QllsRUlsOHRWSzIyRFRkZC9k?= =?utf-8?B?Sy9zUXhQSjN1YklZVWhmWVZPaFJ3aWF6S1BiTjZtSmZiQi9TYlp2RUptMzdK?= =?utf-8?B?SmxJdW92L0VuS3JqVkFVb0gxNjI1aUgzdDJUb2FBcEsrOHdjV01uVDJYeWpn?= =?utf-8?Q?y3rXHajis+EXCNdY/TCKnUhJP?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: a29fafe1-57fb-41f8-40ef-08db671fe357 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Jun 2023 06:24:46.0225 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: x81aylLIycQL0gvfwQJw34m328m8xTg7SLov4WKPMQ1cGO3YObrol6OJ1OonxNki/aYjKOSbS2X9XJwfvxAMnw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB7671 On 06.06.2023 14:47, Roger Pau Monné wrote: > On Mon, Jun 05, 2023 at 05:54:50PM +0200, Jan Beulich wrote: >> On 05.06.2023 17:10, Roger Pau Monne wrote: >>> As specified on Errata 1474: >>> >>> "A core will fail to exit CC6 after about 1044 days after the last >>> system reset. The time of failure may vary depending on the spread >>> spectrum and REFCLK frequency." >>> >>> Detect when running on AMD Fam17h models 30h-3fh and setup a timer to >>> prevent entering C6 after 1000 days have elapsed. Take into account >>> the TSC value at boot in order to account for any time elapsed before >>> Xen has been booted. >> >> Models 6x are also affected as per their RG. I have some trouble with >> the site, so it's too slow going to actually try and fish out the RGs >> for the other possible models. >> >> Given more than one set of models is affected I of course also wonder >> whether Hygon CPUs wouldn't be affected, too. But I realize we have >> hardly any means to find out. > > I've considered Hygon, but as you say I have no way I know to figure > out what models are affected. Well, see also Andrew's reply. >>> +static int __init cf_check amd_c6_errata(void) >>> +{ >>> + /* >>> + * Errata #1474: A Core May Hang After About 1044 Days >>> + * Set up a timer to disable C6 after 1000 days uptime. >>> + */ >>> + s_time_t; >>> + >>> + if (boot_cpu_data.x86_vendor != X86_VENDOR_AMD || >>> + boot_cpu_data.x86 != 0x17 || >>> + (boot_cpu_data.x86_model & 0xf0) != 0x30) >> >> Perhaps better ... & ~0xf, just to be future-proof? > > Right, will need to change anyway to account for 0x60 models. But > x86_model is a char, and hence the mask is 0xff only (8 bits). I understand it is right now, hence why I said future proof. I consider it possible that upon widening the field an expression like the one above might be overlooked. >>> + return 0; >>> + >>> + /* >>> + * Deduct current TSC value, this would be relevant if >>> + * kexec'ed for example. >>> + */ >>> + delta = DAYS(1000) - tsc_ticks2ns(rdtsc()); >> >> Generally the TSC can be written (and we actually do so under certain >> circumstances), so deriving any absolute time from the TSC value is of >> at best questionable value. > > It's IMO better than not accounting for the TSC at all. Worst > case is we end up disabling C6 before actually required, but that > would leave us in safe position anyway. Hmm, yes, fair point. >>> + if (delta > 0) { >>> + static struct timer errata_c6; >>> + >>> + init_timer(&errata_c6, disable_c6, NULL, 0); >>> + set_timer(&errata_c6, NOW() + delta); >>> + } else >>> + disable_c6(NULL); >> >> The log message is going to be misleading in this case. Maybe pass >> that as the so far unused handler argument? Albeit I realize that this >> will mean casting away const-ness, which isn't very nice. > > I think we could use the same message in both cases, what about: > > "Disabling C6 after 1000 days hardware uptime due to AMD errata 1474" But that's still misleading if TSC was ever written. The message is pretty long already, but inserting "apparent" would address this. >>> --- a/xen/include/xen/time.h >>> +++ b/xen/include/xen/time.h >>> @@ -53,6 +53,7 @@ struct tm wallclock_time(uint64_t *ns); >>> >>> #define SYSTEM_TIME_HZ 1000000000ULL >>> #define NOW() ((s_time_t)get_s_time()) >>> +#define DAYS(_d) ((s_time_t)((_d) * 86400000000000ULL)) >>> #define SECONDS(_s) ((s_time_t)((_s) * 1000000000ULL)) >>> #define MILLISECS(_ms) ((s_time_t)((_ms) * 1000000ULL)) >>> #define MICROSECS(_us) ((s_time_t)((_us) * 1000ULL)) >> >> While consistent with the other macros we have here, I think this would >> be neater as >> >> #define DAYS(_d) SECONDS((_d) * 86400ULL)) > > Hm, it would make more sense to introduce the missing macros between > DAYS() and SECONDS() (MINUTES() and HOURS()) and use HOURS() in DAYS()? Probably, but I didn't want to go as far as asking for this. Jan From xen-devel-bounces@lists.xenproject.org Wed Jun 07 06:27:38 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 06:27:38 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544385.850131 (Exim 4.92) (envelope-from ) id 1q6mdj-0005NO-9P; Wed, 07 Jun 2023 06:27:27 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544385.850131; Wed, 07 Jun 2023 06:27:27 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6mdj-0005NH-67; Wed, 07 Jun 2023 06:27:27 +0000 Received: by outflank-mailman (input) for mailman id 544385; Wed, 07 Jun 2023 06:27:26 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6mdh-0005NB-Tu for xen-devel@lists.xenproject.org; Wed, 07 Jun 2023 06:27:26 +0000 Received: from EUR05-AM6-obe.outbound.protection.outlook.com (mail-am6eur05on20615.outbound.protection.outlook.com [2a01:111:f400:7e1b::615]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 5d1922d8-04fc-11ee-8611-37d641c3527e; Wed, 07 Jun 2023 08:27:24 +0200 (CEST) Received: from FR3P281CA0146.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:95::18) by AS2PR08MB8480.eurprd08.prod.outlook.com (2603:10a6:20b:55e::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Wed, 7 Jun 2023 06:27:21 +0000 Received: from VI1EUR03FT061.eop-EUR03.prod.protection.outlook.com (2603:10a6:d10:95:cafe::f0) by FR3P281CA0146.outlook.office365.com (2603:10a6:d10:95::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.18 via Frontend Transport; Wed, 7 Jun 2023 06:27:21 +0000 Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by VI1EUR03FT061.mail.protection.outlook.com (100.127.144.125) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.24 via Frontend Transport; Wed, 7 Jun 2023 06:27:20 +0000 Received: ("Tessian outbound 3570909035da:v136"); Wed, 07 Jun 2023 06:27:19 +0000 Received: from 22b2691b1852.2 by 64aa7808-outbound-1.mta.getcheckrecipient.com id F4EA8A47-E816-4358-9B48-18E118109622.1; Wed, 07 Jun 2023 06:27:10 +0000 Received: from EUR02-DB5-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 22b2691b1852.2 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Wed, 07 Jun 2023 06:27:10 +0000 Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15) by GVXPR08MB7679.eurprd08.prod.outlook.com (2603:10a6:150:6f::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.32; Wed, 7 Jun 2023 06:27:03 +0000 Received: from AS8PR08MB7991.eurprd08.prod.outlook.com ([fe80::2db3:aa30:7be0:10a6]) by AS8PR08MB7991.eurprd08.prod.outlook.com ([fe80::2db3:aa30:7be0:10a6%4]) with mapi id 15.20.6455.030; Wed, 7 Jun 2023 06:27:03 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 5d1922d8-04fc-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=J2G+YudsYHCqGXXmaP2pV8XtfKK4C3s0h/wdj04WsJE=; b=89DO85ghggVeTx1pUt5wK1X+1/hu017nS44DoR+v2XVEK/1lb8DdJ7vWDOFH0aCu6lO3gsWbkXYMR9UhLbnerLCrp8qEi2UFGp6QIHtosBkuafbe6PIzR6n4gwyS3E9CVV1fiRKiVjP8n27C/tI/Ia8QKgF7+IMudgk5wTbfexA= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C X-CR-MTA-TID: 64aa7808 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=HvbKpBAhERA8chTP37j02JaRnE+HKfpTCxVUTHCxO3wXUTPzJGAVdTxn833taU71w/TnOuZQ4afKlmLLqlA8Q6hkv9hDHG3JXhqvdqmO85YtMonfnJ/xHQjV93omrV+AB/vRmfOp0RybTTSQuEgO+tJ4TcZ/Rnr+pYah20dcy7rRprxncwTBKGtMDESzuarNeZxSxXB6gOgYvv+2Wd/pY1gCHw/nnY2PJDuLIE+/+PKsLYQd0HtAfGhbSjs+VmrJcUYWyibMuuRHGuCsyQ8WXjYE+P/IxDgE9K5Ip9LI4X1cj8yxKuvRLvyON1oDzLzeQYCK04WdpE/+Q9NXC/zoBQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=J2G+YudsYHCqGXXmaP2pV8XtfKK4C3s0h/wdj04WsJE=; b=nxAPOOBahNr6fox5y7gXql9MibygJZ6qzC+romMHmw1uVluwGI205jVZXhjt1qWupQGxX6FrXGkIs71IEgQR2k8rUp3h1u6qJngrx8VBRU75+oOEiaSVYOqYJ71v17oNoTeNK5BKz2KzSicjoysqQpOMhspAAJHXS5ophiPp7aMu/c0+ckJoS+uDMlQPo9zDwkdnV4t/vMczhtGWgt2ynC8FbQopmhY0cnKdb5jqlZ8ky/j2JEAtssghPFPllDFNWqILmCfeBSGxUAg7dk16mp5No2EVzk4Ibs8So1G16kyiukuyo/WORE3jFbUaagGGkpME7TMk28EceDK7Gon23w== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=J2G+YudsYHCqGXXmaP2pV8XtfKK4C3s0h/wdj04WsJE=; b=89DO85ghggVeTx1pUt5wK1X+1/hu017nS44DoR+v2XVEK/1lb8DdJ7vWDOFH0aCu6lO3gsWbkXYMR9UhLbnerLCrp8qEi2UFGp6QIHtosBkuafbe6PIzR6n4gwyS3E9CVV1fiRKiVjP8n27C/tI/Ia8QKgF7+IMudgk5wTbfexA= From: Henry Wang To: Vikram Garhwal , "xen-devel@lists.xenproject.org" CC: "sstabellini@kernel.org" , "jbeulich@suse.com" , Luca Fancellu , Julien Grall , Michal Orzel Subject: RE: [XEN][PATCH v7 08/19] xen/device-tree: Add device_tree_find_node_by_path() to find nodes in device tree Thread-Topic: [XEN][PATCH v7 08/19] xen/device-tree: Add device_tree_find_node_by_path() to find nodes in device tree Thread-Index: AQHZlOwR4Ipv6iy3bEahGOYsyZBxb698mYGAgAGnzYCAAKXcgIAAAPGw Date: Wed, 7 Jun 2023 06:27:03 +0000 Message-ID: References: <20230602004824.20731-1-vikram.garhwal@amd.com> <20230602004824.20731-9-vikram.garhwal@amd.com> <007122c9-1ab2-dd5e-bed4-64333113e55a@amd.com> In-Reply-To: Accept-Language: zh-CN, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ts-tracking-id: 603CD96738F0544FAA05DB7071FA6691.0 x-checkrecipientchecked: true Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-traffictypediagnostic: AS8PR08MB7991:EE_|GVXPR08MB7679:EE_|VI1EUR03FT061:EE_|AS2PR08MB8480:EE_ X-MS-Office365-Filtering-Correlation-Id: 4de2936d-c534-47f0-b190-08db67203f85 x-checkrecipientrouted: true nodisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: Uz9IbtjdCdA1mU+UEoaBKL+gSgyY3LnOue5O/NXjjzZ7gozWhI63K4NodKSjbofVSR6IU13d2jh/pU+q5AW+40Z8zXfJCgZkdJiVVENDxMgsJ7cidEpY9Rjq7mpg/LVXIkV8XP4pgdRCryyU19fRnGDJL9k/Ss0PXlqtgB55+K+Ce2q5nFTx+sEBKS91Lrx49u8hIExX3GDI4osNhFPhvv3ijfhxAFXKv+qAxtmXpgKfBWfHLPTe1gp53jnVBN0AqgSvJ3lT/PrOz617vsY426gB8NJhkAdTGO9yPh6IwCR5Fz7KDcrvcsbIGf4io1mwMKMFVdCc1e4cbFb58cktrJ+fMD+jCNhqgOmCvj9acI4iv/5OffEjVzxNBMCvudBmq/THReSw+gwZEz2lStrHQdKsEeRDre2ZUJhUGJmOA7+WqWE8sHrf5UBCoKq/WODpJztGqNJC2DyZkf4uSJuY6kugsVy9GAEzx9iskxZUxVTUSBsvpCCoG3ElqrElz6/tHFsoKjOhsR+jNG0bVhWme320urgePX0qU6m33rUSog+gshvkmCnsiid402WjzeQ/6wGFeR5UPEyCY3Dlmxs8PlICSDQvSx5jzt+p/HjjEWJWfslNUmRPCrcnLaIA6naQTZ0OOnKKFo861fEm3Xoudw== X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB7991.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(376002)(366004)(396003)(39860400002)(136003)(346002)(451199021)(9686003)(6506007)(38100700002)(41300700001)(7696005)(186003)(26005)(83380400001)(71200400001)(478600001)(110136005)(4744005)(54906003)(122000001)(66446008)(66556008)(64756008)(66476007)(76116006)(55016003)(66946007)(316002)(2906002)(8676002)(52536014)(8936002)(5660300002)(4326008)(86362001)(38070700005)(33656002)(37363002);DIR:OUT;SFP:1101; Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: GVXPR08MB7679 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: VI1EUR03FT061.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: f16ea1ba-59ac-411f-e7c5-08db6720354c X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: d1ssRwv9BYkupwS2clDM1sI36/gs0H64Hdx7tH1nlKAsUTaqafU52Yu+TsveRt+OpHA32AoX3ogUitvwp4Czx4Iryz82fwwZqCckQsuaDFBq20pePrYQsEuts2XGWKScSOx+TLit7CWcHgNFuQJEd3XM2LdhcApgi406j+lv38Nzuvl1eneob0Rkj7ySZdmHMnUST3Qq+6q1mYtJqblQLE2/JoumssGmidkWOMjnhCC7s9LOZo8ah2oaHD7hn1638mMn3u2LOm2wm9ecgwP/Kt8lFqgmfiHQHcRSIUgKpakjYywvd2mK5z12PzFprEIXeIaReFrJ2okkSMnQ4CBDIjoaS1PCiVjY4m1WCpI+sydUWoZT3ky95DxwnRb3vN3x4jV5eH0rNxnxSzQH0IHEzBGDnQWmcFTVn8STqmAnOWc+mtgLQeTciUuo2JtJHaGw2h2rhkoHji7mEsaFiG12IFSIJuweBgGtZvngV2ouNkLSBvtNFI78oFCgOEN/LiP8dkAHspXZIUDOM9d2VYHr/5MUT/TOrVIN7Cxl2fmHB/8c++hdDfUsVVnn2ls6ZRiL7NW90d2/TVNneROyaKXj1b3JKvo9yKdqjG1Gurn1YZ5/HdSkRLnE4t8pySFl+I0eG32TKlzJNOszEeWvXv72tYZ/cqHLDh4bPkfpLhPDzrn3/yokHg5AZtwWQc/J8dy6553hQtcussroDAYqQ0sqUjpnnJwRR5PV/l1WVOjcdHbP7+AURkKBMUeGxCTbeIF9DaN8z3LnSPMyzP42KNVAhw== X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230028)(4636009)(346002)(396003)(376002)(136003)(39860400002)(451199021)(46966006)(36840700001)(40470700004)(55016003)(40480700001)(54906003)(7696005)(70586007)(110136005)(82740400003)(478600001)(81166007)(316002)(356005)(47076005)(8676002)(8936002)(41300700001)(4326008)(70206006)(186003)(336012)(36860700001)(83380400001)(40460700003)(26005)(6506007)(9686003)(86362001)(52536014)(5660300002)(2906002)(4744005)(33656002)(82310400005)(37363002);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Jun 2023 06:27:20.4147 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 4de2936d-c534-47f0-b190-08db67203f85 X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: VI1EUR03FT061.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS2PR08MB8480 SGkgVmlrcmFtLA0KDQo+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+ID4+IGlzIHN0YXJ0 aW5nIGZyb20gYSBnaXZlbiBub2RlLiBTbyBob3cgYWJvdXQNCj4gPj4gImR0X2ZpbmRfbm9kZV9i eV9wYXRoX2Zyb20oKSI/DQo+ID4gVGhhbmsgeW91IGZvciB0aGUgc3VnZ2VzdGlvbi4gVGhpcyBu YW1lIHdhcyBhZGRlZCBpbiB2MyBhcyBMdWNhIEZhbmNlbGx1DQo+ID4gc3VnZ2VzdGVkIHRvIHJl bmFtZSB0aGlzIGZ1bmN0aW9uIHRvICJkZXZpY2VfdHJlZV9maW5kX25vZGVfYnlfcGF0aCIuIEkN Cj4gPiBhbSBva2F5IHdpdGggcmVuYW1pbmcgaXQgdG8gZHRfZmluZF9ub2RlX2J5X3BhdGhfZnJv bSgpLg0KPiA+DQo+ID4gTHVjYSwgTWljaGFsIGFuZCBIZW5yeTogRG9lcyB0aGUgZHRfZmluZF9u b2RlX2J5X3BhdGhfZnJvbSgpIG5hbWUNCj4gd29ya3MNCj4gPiBmb3IgeW91Pw0KPiBXb3JrcyBm b3IgbWUuDQoNCisxDQoNCktpbmQgcmVnYXJkcywNCkhlbnJ5DQoNCj4gDQo+IH5NaWNoYWwNCg0K From xen-devel-bounces@lists.xenproject.org Wed Jun 07 06:37:48 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 06:37:48 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544393.850141 (Exim 4.92) (envelope-from ) id 1q6mnf-0006xI-Bk; Wed, 07 Jun 2023 06:37:43 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544393.850141; Wed, 07 Jun 2023 06:37:43 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6mnf-0006xB-8b; Wed, 07 Jun 2023 06:37:43 +0000 Received: by outflank-mailman (input) for mailman id 544393; Wed, 07 Jun 2023 06:37:41 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6mnd-0006x3-O3 for xen-devel@lists.xenproject.org; Wed, 07 Jun 2023 06:37:41 +0000 Received: from EUR03-DBA-obe.outbound.protection.outlook.com (mail-dbaeur03on20614.outbound.protection.outlook.com [2a01:111:f400:fe1a::614]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id cc004c52-04fd-11ee-8611-37d641c3527e; Wed, 07 Jun 2023 08:37:39 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by DB9PR04MB8202.eurprd04.prod.outlook.com (2603:10a6:10:24f::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.32; Wed, 7 Jun 2023 06:37:37 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.030; Wed, 7 Jun 2023 06:37:36 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: cc004c52-04fd-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=LGTKGULwAfkjdwLlSb3x20oOim0c5zelQ/GVMw/WAbB8IvhZeA1AN5D6AIULe8bd8+Z2VhsmoH9SEIY9GW0QfM7EV+5OMgYrksfL7AXLKPTdZVRV09gHlUO05h58UeO++QDXJuu7aFlsxNwsJot+qM6tBY1ozhXiVWaYMgeKtwvti9d8/lLOrzFF0WnO4esW1LizPAfxHF8t1NB88JpQQIDXr/er2whf7eEPOiifkknqkTf27NJSqs0fLpuuSp23jaP35x/O3GWU9ESVdZWUnOAq6B/f/ELwLuyAJ0AQOFJYg3D88Sbr6pH8IFJY56VH0ydQoSTPMgyb5ucq40/a+A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=kIvmbZ8QvtyV75kzqiZdh3kZ1MQSdNcSZP1FKdpQBnA=; b=GrhsQuHSzI6VdF1ecB4UyVcfUcCI0zTO8ZNO2WEYhXv3ZyFiEkafNa+/HoRrY1A3+VuSWvjjncq3o5qH7yJlbkQJjqRMPnMR9fclll3FDEL5UwSsCVub6U7xt39olcr220FRWZJd+4Ugb1vW5lsntF77964QNJ2WXymgm1Qs4x6Kq7hkylN3wbOXlfeL+8NFN+ojlAPFfiDxxoLqL2SX6Rzgx7toORg+M8DN7OF28RHRj3ENDzg0ys4EnHTkELVW569fCxtOnPWzwoUHb5kQtOh+spFH9PRjoJeOP/f4m8gKuMaGeRYUdbe56WC9LUKpNjKez22KkResKFt7te0chg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=kIvmbZ8QvtyV75kzqiZdh3kZ1MQSdNcSZP1FKdpQBnA=; b=MqNShdpL3bpOqIkOPGdcCNcOb1qLs3bRfmMWBP3Jum4WHbpFJm6rrNKDzO3evUcf/YXfpqexfSV/J5tea5JTJNCTBLKqHLRlv4Qbogfjryiq3sX4hrAyMiaz6H5b4psWZoZ6RIfONLqRMDGCCIEkXorQnH3+tjGH1oPH1io/aWgK4N20lPqv0j23yPJ2/A6NedxpCkB7ARaABFC5uRmoTD6j3loA4VYb6g79vrUxZkEmx63NTvk+gJqEFZJ5hQ1VplfJiO3WN6kd6F0kZAbF0k4x6PaFWUxg5WI7CDmOpM953c+71ZOD/QVp/fprYpQYkRlLxQ3N8hAvRx31Lb2uWQ== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: Date: Wed, 7 Jun 2023 08:37:36 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.11.2 Subject: Re: Xen reliance on non-standard GCC features Content-Language: en-US To: Stefano Stabellini Cc: "xen-devel@lists.xenproject.org" , Roberto Bagnara References: <1cd359e7-5245-a621-3be2-9323ba5b327b@bugseng.com> <8314e0fc-4ead-40fa-ef7b-4da8ce0655b4@suse.com> <80a512ac-d90e-930a-7ef7-8ebb5a80e801@bugseng.com> From: Jan Beulich In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR0P281CA0102.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:a9::18) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|DB9PR04MB8202:EE_ X-MS-Office365-Filtering-Correlation-Id: 9ebc0ca2-7100-43f9-c43f-08db6721ae7d X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: IlMk9u3pjhFg1Z3qDpngF1y94jwKKldl6A2dRjmoWafPtDG3LCZ83Unjlgw0vuYFtUhEXKi+QsmThqLtp8CbmpgOZY1KAFtMUtIojpiaR0DhMu0LV6SfA3ZTvcEZJnQSbhpwsggoJSeyt+gf/SdG786xRrgnIxL749iq1JM3+FKCdwd5qqiEko/LEp3clFphIaauizNEoj4doGJPHr2RZK9v1SByI2DlVpkDo2K8MZuw6wRqjL9RZgPXlwJRKuUA+azZViBgVwT8ZT7TSvI6t+shZSliCBIzGB1xgAoPOcXsjbbFo13h287l1lPhwJ0nEJzZc76qynt8acbbQt6Qe1d0o31tJiqKrOMaGFKDgCc59/dP378VQkaaYLyi6WWdnW+d/Ecv7ngJSGbcaOfR1KQfVj2wtBgyDjuapJr5yun8DVdW54OelarO3un6o2JEejJkk0rrRyuoSG9TX/FRSZCI4kS1n7A2gLJpzUGT8aJ2mADIHD6iMRALn7cGWNYxaBgNIzREswxINi9dmSBMNXgG2vtNF2+oN+HAWYekmSoAyF6veclL8gdwClVOMjlfN+2+9Rj3ggAveg43ljohIgSGMMOJSKDnU6/5V5/y2PcOH9NvEVvsnxqwqL3VsQm9CW3y5suPKp9YLOybgyH4Cg== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(346002)(39860400002)(376002)(366004)(396003)(136003)(451199021)(83380400001)(8676002)(8936002)(66556008)(4326008)(66476007)(66946007)(6916009)(316002)(5660300002)(31686004)(41300700001)(54906003)(2906002)(478600001)(38100700002)(6512007)(31696002)(26005)(86362001)(53546011)(186003)(6506007)(36756003)(6486002)(2616005)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?S3NjNnVqV2tkVHFKRUFva0QyeFZtdDF3NFpoUStYZGhXTGZxa2pVV3RWWko1?= =?utf-8?B?RTJRdEVnVEg0M0NTZEZEbDRzaExjUmdjMGZDN05idFBMNVZuejkwanVMYk5B?= =?utf-8?B?b3ZVbHFFeGMrTFBtUVB5NDlNWXYwQkNGNHJnNXN3QUNMRStrWlBaUzZIZTlX?= =?utf-8?B?TndFL2s4TTA0K2RWUWNVYkthYlFzTnllUG8zNURkQnVZZ3hSSmtjRnVYNElz?= =?utf-8?B?OC9US1J6eG9ubGY5b3NRbzMzRVhoY2lvV2FXa0JGdys0UldvRE1IVjlPbXkz?= =?utf-8?B?VFZwWGNwSGlmNk43UC9VRXZzSDN0b3JRM25WYVdXaTlqY3hWWTBFYUNIQ3RF?= =?utf-8?B?RFlXdy9sSUxOdmpMK2pQckNIL0lFZnpvaXorUVlsVmpGMS9hYTNGbytDL3I0?= =?utf-8?B?STlsWDNVSGwxR2xtOVE3QUVPVHZaenNORzA4cC9qY1NsTkFaYkZtZU1XQm16?= =?utf-8?B?WDBMUDFiQmxBRlg0Y1hIUWM3WHNhcG5PN0drK21IeXc1Ym9xdm44QndiclVY?= =?utf-8?B?REJIMTJleUFyZnhWWWJKR296cGFnaVQxQ0h1Ym1JMXFodUROZDB4YnNZanlE?= =?utf-8?B?T1BVY3d5NTRyZXp1Z1NTalRFRjQyMVZIRGtCUXk4UTlOb1dRNzZsc3VmY281?= =?utf-8?B?T1k2Z2lvdGRIUkJiUU82VVhFeXFaYnJhcHVaZ3BGUC9BTDlORUlGSlZOUWpl?= =?utf-8?B?ZVBkbCt3a3pVc0k3L2Y2enQwRzhWMSsyWGloRWxJRElRdisrUGdmMEFhajlR?= =?utf-8?B?dlpKT0wvdG5OTmJOeXh6OVg3elVjeERuSUIvMFFEaWpUMll3SWJJSkVOTWtY?= =?utf-8?B?elA3WW1qUUdOM0JxMDVUaDB2QjhlL1BEY3pMYnNFSXBYelAwY3pVeGNWRmov?= =?utf-8?B?MXFPdHhoSzBlem4zQkJGbFF5M3BBd3VSS2JCYkdHN3FMYXBuaUFWTzA1bllV?= =?utf-8?B?VnlzbGVjR051RnkvMFppbTlnVFBOZFIwYXpwaU9ER0JSNTVkUTl1NHV5MlNK?= =?utf-8?B?cEVSSCszd0UzWHpwZU16bXB1RnFqc2p4SDZpT1VlT3hpNTRWR1FkZkZUaUR4?= =?utf-8?B?NE1Gb3Q2Z0lNV0hERWM0czd0b1BMTjJzR1loaW5iNTlBVTNWZ2Q5b1Y2Q1hU?= =?utf-8?B?UUxRWEFpaUZRaHJJTFVuOXE3SS9jcXMxUWYraXZpdlNoMU1CSDI5VzlaRllj?= =?utf-8?B?Smw1MnY2ZkxHYVlmeFMwalp2eWk1dDN3YmZsYkUxcXFkamVnZVNaVnI4U1dQ?= =?utf-8?B?cHA3Z05JS3ZVbCsrRE9kdXBock5CZ25CbGFGYnJuV25tRjVpWUVPVmFzM0Vr?= =?utf-8?B?VWd5MTVLRXNZSnZmZ05oV2tWSUM0bW1jd3d3MXIrLzJtTy9VdWx1RXdzbHZo?= =?utf-8?B?amEwV1Z6cHFoTlRrcHZWSGhLRlJkcEdGL05XMUg2ZmlsbkJEU1A2V2crSlRx?= =?utf-8?B?R04vVkl0THBIYmZSWmhOUVNrVXdVc3JlaFhZb2lTckUyakZjQ2xWeXRvRElL?= =?utf-8?B?S1BpK09yTnB1N2syNE5EUStQNmp5dGxTckw4UTJVK0RlRERHeU5kQzdHeFNX?= =?utf-8?B?REJ3M0FVMGhDUVJFZHFxZzFxc3lrMzRJYU9vaFZXVkhlS2NDYVVyaGVKdVRa?= =?utf-8?B?UFAwU2h2a3ZpdkE5bW5LZmdMaXFZalRxTHNFb1QzU0hPTHlWZEwrdTE5MTVD?= =?utf-8?B?TjFwaDhma21UL3kyeEtRbGZoeDRVZVo5Qy9RanpVbVRCUTk5Zk1tdkIxbm5v?= =?utf-8?B?aTlnK0F5SWowL1d5MzBZYVBNWnRCL2ZOYk5abkl3SGhLYzBVVlNpTnRLdkZ3?= =?utf-8?B?Rmp6bXZ4SmVyMmpUSTBHVFNzb0lUZ1l0VkhUakhyY2h2S3Jid2llQndweW13?= =?utf-8?B?ankwQ0FDN1dISVI4TjdmTEpDYXBjYnJCT1ptSmkrZ0lhcnJwenMwSWQ3NThL?= =?utf-8?B?SzRFM213aFNqWUdtZFBaV0xLRnVnRVJyY243TFRMWWFFcU5oeVVVMThZb1RQ?= =?utf-8?B?c0VZR0Q2cHk5TE5WMHo5N1ZkYzlXSWZ4RDR3cnZtTXlpQWVaakxqRlRWU25H?= =?utf-8?B?TDQ5S24xc1czT01kR2Y4ME1Rdksxa2cxRVVmMVRrMGVOcmRCTDJzKzZ3NmVO?= =?utf-8?Q?nzaCXCFvaD6gUFHTP45jeElv/?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 9ebc0ca2-7100-43f9-c43f-08db6721ae7d X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Jun 2023 06:37:36.3913 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 9jDEAKtvZPOGFkk6yZFTWU8vr5s+s2CKWRyjX2a/8x1SoJ5hOSOtWPpcQGEvZ845JNrloOilLyaIsRQjLsIswA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR04MB8202 On 05.06.2023 23:39, Stefano Stabellini wrote: > On Mon, 5 Jun 2023, Roberto Bagnara wrote: >>>> Here is a list of extensions that are documented in the GCC manual: >>> >>> I suppose that this list wasn't meant to be complete? The most >>> prominent example is probably asm(). >> >> As far as I can tell the list was almost complete (I realize now >> that the use of the keyword __signed__ was omitted because >> investigation was not completed). But I am probably misunderstanding >> you. > > We also make use of the following extensions (please correct me if I am > wrong and these are not extensions): > > xen/include/xen/compiler.h:#define always_inline __inline__ __attribute__ ((__always_inline__)) > xen/include/xen/compiler.h:#define gnu_inline __inline__ __attribute__ ((__gnu_inline__)) > xen/include/xen/compiler.h:#define noinline __attribute__((__noinline__)) > xen/include/xen/compiler.h:#define noreturn __attribute__((__noreturn__)) > xen/include/xen/compiler.h:#define __packed __attribute__((__packed__)) > xen/include/xen/compiler.h:#define __weak __attribute__((__weak__)) > xen/include/xen/compiler.h:# define nocall __attribute__((__error__("Nonstandard ABI"))) > xen/include/xen/compiler.h:# define cf_check __attribute__((__cf_check__)) > xen/include/xen/compiler.h:# define fallthrough __attribute__((__fallthrough__)) > xen/include/xen/compiler.h:#define __aligned(a) __attribute__((__aligned__(a))) > xen/include/xen/compiler.h:#define __attribute_pure__ __attribute__((__pure__)) > xen/include/xen/compiler.h:#define __attribute_const__ __attribute__((__const__)) > xen/include/xen/compiler.h:#define __transparent__ __attribute__((__transparent_union__)) > xen/include/xen/compiler.h:#define __used __attribute__((__used__)) > xen/include/xen/compiler.h:#define __maybe_unused __attribute__((__unused__)) > xen/include/xen/compiler.h:#define __must_check __attribute__((__warn_unused_result__)) > xen/include/xen/compiler.h:#define __nonnull(...) __attribute__((__nonnull__(__VA_ARGS__))) > > It is possible that some of these don't show up in any of the relevant > code build as part of the minimal configuration for safety so you won't > see any errors/warnings in Eclair. > > Also, some of these extensions are probably no longer necessary, such as > __gnu_inline__. gnu_inline was already noticed as in use - see bsearch() and sort(). Iirc Andrew in particular wants it used in further places. Jan From xen-devel-bounces@lists.xenproject.org Wed Jun 07 07:20:08 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 07:20:08 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544398.850151 (Exim 4.92) (envelope-from ) id 1q6nSW-0002xU-Ik; Wed, 07 Jun 2023 07:19:56 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544398.850151; Wed, 07 Jun 2023 07:19:56 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6nSW-0002xN-Ew; Wed, 07 Jun 2023 07:19:56 +0000 Received: by outflank-mailman (input) for mailman id 544398; Wed, 07 Jun 2023 07:19:55 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6nSV-0002xH-Pn for xen-devel@lists.xenproject.org; Wed, 07 Jun 2023 07:19:55 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6nSU-0003qt-FT; Wed, 07 Jun 2023 07:19:54 +0000 Received: from gw1.octic.net ([88.97.20.152] helo=[10.0.1.102]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1q6nSU-00040f-7R; Wed, 07 Jun 2023 07:19:54 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=Bey50bjwYvRujspOOhD3sqcvYayICwTYw0zEZJ7SW2k=; b=kqyxy+Y1oq5EHXMsy5xUeW9RvG tM9oIWbfqYY0GL9+YpTDUH+tz+FBFTyue3OxolDMoCOTYgIrd4CrmFMwBd8h5OMYCjsAXdEtelmwq FWb2xioG+i9AVcormvBYnisFQwfsnqqwfnbobBem+0QOd8Q/qNyrkwKkhZGokI7owLmw=; Message-ID: <1f5aa53c-a9ed-41c3-2a4d-38538912cdd5@xen.org> Date: Wed, 7 Jun 2023 08:19:52 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.10.1 Subject: Re: [PATCH v4 0/7] SMMU handling for PCIe Passthrough on ARM To: Stewart Hildebrand , xen-devel@lists.xenproject.org Cc: Stefano Stabellini , Bertrand Marquis , Volodymyr Babchuk , Rahul Singh , Jan Beulich , Paul Durrant , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= References: <20230607030220.22698-1-stewart.hildebrand@amd.com> From: Julien Grall In-Reply-To: <20230607030220.22698-1-stewart.hildebrand@amd.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi Stewart, On 07/06/2023 04:02, Stewart Hildebrand wrote: > This series introduces SMMU handling for PCIe passthrough on ARM. These patches > are independent from (and don't depend on) the vPCI reference counting/locking > work in progress, and should be able to be upstreamed independently. Can you clarify how this code was tested? Does this require code not yet upstreamed? Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Wed Jun 07 07:28:18 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 07:28:18 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544403.850161 (Exim 4.92) (envelope-from ) id 1q6naL-0004Qk-BM; Wed, 07 Jun 2023 07:28:01 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544403.850161; Wed, 07 Jun 2023 07:28:01 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6naL-0004Qd-8D; Wed, 07 Jun 2023 07:28:01 +0000 Received: by outflank-mailman (input) for mailman id 544403; Wed, 07 Jun 2023 07:27:59 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6naJ-0004QX-SL for xen-devel@lists.xenproject.org; Wed, 07 Jun 2023 07:27:59 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6naJ-0003zc-Cs; Wed, 07 Jun 2023 07:27:59 +0000 Received: from gw1.octic.net ([88.97.20.152] helo=[10.0.1.102]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1q6naJ-0004Rf-7q; Wed, 07 Jun 2023 07:27:59 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:Subject: From:References:Cc:To:MIME-Version:Date:Message-ID; bh=VGNHJSJqzj3fv4NKScpJ1DySp13KWrN4IIG9Mk0gk78=; b=nKLZMG5y1UFGF+/eXpiD08DLT9 bs+xX5IX2cWwCUCfDq5IbaBjE6vGXc6YzWLbHR16xbQsoXNu+5at/BblVBFxUJnEOagC2OAF7Y0ww Ygz1lTGnoKe6YDEUBXTohuVFt6tT8HtZUmvc+5XwwNGkNrhjQy3AvB79kaetX7ouxVm8=; Message-ID: Date: Wed, 7 Jun 2023 08:27:56 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.10.1 To: Stewart Hildebrand , xen-devel@lists.xenproject.org Cc: Oleksandr Tyshchenko , Stefano Stabellini , Rahul Singh , Bertrand Marquis References: <20230607030220.22698-1-stewart.hildebrand@amd.com> <20230607030220.22698-2-stewart.hildebrand@amd.com> From: Julien Grall Subject: Re: [PATCH v4 1/7] xen/arm: Improve readability of check for registered devices In-Reply-To: <20230607030220.22698-2-stewart.hildebrand@amd.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi Stewart, On 07/06/2023 04:02, Stewart Hildebrand wrote: > From: Oleksandr Tyshchenko > > Improve readability of check for devices already registered with the SMMU with > legacy mmu-masters DT bindings by using is_protected. I am unconvinced with this change because... > > There are 2 device tree bindings for registering a device with the SMMU: > * mmu-masters (legacy, SMMUv1/2 only) > * iommus > > A device tree may include both mmu-masters and iommus properties (although it is > unnecessary to do so). When a device appears in the mmu-masters list, > np->is_protected and dev->iommu_fwspec both get set by the SMMUv1/2 driver. The > function iommu_add_dt_device() is subsequently invoked for devices that have an > iommus specification. > > The check as it was before this patch: > > if ( dev_iommu_fwspec_get(dev) ) > return 0; > > and the new check: > > if ( dt_device_is_protected(np) ) > return 0; > > are guarding against the same corner case: when a device has both mmu-masters > and iommus specifications in the device tree. The is_protected naming is more > descriptive. > > If np->is_protected is not set (i.e. false), but dev->iommu_fwspec is set, it is > an error condition, so return an error in this case. > > Expand the comment to further clarify the corner case. > > Signed-off-by: Oleksandr Tyshchenko > Signed-off-by: Stewart Hildebrand > --- > v3->v4: > * new patch: this change was split from ("xen/arm: Move is_protected flag to struct device") > --- > xen/drivers/passthrough/device_tree.c | 11 ++++++++--- > 1 file changed, 8 insertions(+), 3 deletions(-) > > diff --git a/xen/drivers/passthrough/device_tree.c b/xen/drivers/passthrough/device_tree.c > index 1c32d7b50cce..d9b63da7260a 100644 > --- a/xen/drivers/passthrough/device_tree.c > +++ b/xen/drivers/passthrough/device_tree.c > @@ -141,12 +141,17 @@ int iommu_add_dt_device(struct dt_device_node *np) > return -EINVAL; > > /* > - * The device may already have been registered. As there is no harm in > - * it just return success early. > + * Devices that appear in the legacy mmu-masters list may have already been > + * registered with the SMMU. In case a device has both a mmu-masters entry > + * and iommus property, there is no need to register it again. In this case > + * simply return success early. > */ > - if ( dev_iommu_fwspec_get(dev) ) > + if ( dt_device_is_protected(np) ) ... we now have two checks and it implies that it would be normal for dt_device_is_protected() to be false and ... > return 0; > > + if ( dev_iommu_fwspec_get(dev) ) ... this returning a non-zero value. Is there any other benefits with adding the two checks? If the others agree with the double check, then I think this should gain an ASSERT_UNREACHABLE() because AFAIU this is a programming error. > + return -EEXIST; > + > /* > * According to the Documentation/devicetree/bindings/iommu/iommu.txt > * from Linux. Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Wed Jun 07 07:39:40 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 07:39:40 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544409.850173 (Exim 4.92) (envelope-from ) id 1q6nlW-0005wb-Ac; Wed, 07 Jun 2023 07:39:34 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544409.850173; Wed, 07 Jun 2023 07:39:34 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6nlW-0005wU-7v; Wed, 07 Jun 2023 07:39:34 +0000 Received: by outflank-mailman (input) for mailman id 544409; Wed, 07 Jun 2023 07:39:32 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6nlU-0005wO-CD for xen-devel@lists.xenproject.org; Wed, 07 Jun 2023 07:39:32 +0000 Received: from EUR01-DB5-obe.outbound.protection.outlook.com (mail-db5eur01on0615.outbound.protection.outlook.com [2a01:111:f400:fe02::615]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 6f36c760-0506-11ee-8611-37d641c3527e; Wed, 07 Jun 2023 09:39:29 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by PAXPR04MB9107.eurprd04.prod.outlook.com (2603:10a6:102:229::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.32; Wed, 7 Jun 2023 07:39:25 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.030; Wed, 7 Jun 2023 07:39:25 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 6f36c760-0506-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Bm6D1cU3NCF/3onzqAyjcm2iQMUNpUraMTjxkWce1y9oVjSMozKFrQ4+aPf+Xb6sZh3ON+ymjUx1kc1H2SiGYGAun2RHnVBXC/sFWJIxaEByg4fY3GH6tw7Kv6j8+F5XbI6WxwHHc1D3vsq3KbtmGHiMlCGGtuNAExgfSWrWxoYNApszKkJGC4/DOpIIPPQjUFuWfVyPn+HWKHfDJriyg0NlNZ7a1TW3szt5S7AHCRkT3n7OeHUKFEzFqx6NEhruqsn21N64l1YX64UQkfob6bSqC2SzkZrqyDqMd3zCowrxZI+9cUaQkwZfX5Z1iaBB+l8moj+bbd7db5JY4kqbSQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=9dv5y/FiF06T9BPGtgoYurWqlFiMwyAnNPey3ZzlMG8=; b=S3iM0Q2VJdcV2+DEqYV26ZiKeCVRtJQJYo3TOwGyqvTcfJ2IGAlct34CajQXDNHIYWcZZSG5vB3eDKsXUBIOK4/3Wcj1c2smb3BYfs5tVzgivwAsFicbqeQdP83SES8Rcg03o2hZk+SvFKJ7A7QCdl6Sna1Rl6N8rCC7jwqH3lWRd06JY54sHoKRMuJfIKH79xxuUc2ZgVpdeyxPc9RatX/KTQSBa/V6l/dpWZgVEJT5a6pH/ZiBKn9TCvOx1aYq25APE9zuhIrq3ew1jn6k+642pPFLEgCUOq1iSLpglngSxtovgMOYct2StSPrdyO1gUgLd1JgkThaEiEi19kSHA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=9dv5y/FiF06T9BPGtgoYurWqlFiMwyAnNPey3ZzlMG8=; b=RJS1LXGc0omjGcOD/8d4yIk6CzkmLklaAVuWe97Q9iLlvs8H25eiCpWb8N1rW9DyHV6TZNHFXfqwQWVbj8xGQLP842RWvYxL0shyaQYXk4SJTjaeWwIcZzu7i1cZFqR53+61E8NMVxNlB37cIpq26CELoNYf4g5kx5c/nwTorHY8uOJZZZNpFNIFlEVEaAuM1hWxyuVVgfC5nDsQsQpXlWlflDrGFXcXea47sS5n8jNSyPAjKtv4NUIwUei+laQwZqFhwpiv4DCbGDsW/K7NmOMWYU4AbAKZFOI5LrUKFXOqQsp/mBbK+etyAReBAxiR0NYhN9Upie89+xw7JiW39A== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <968ba799-8fe4-e22f-b678-64e52f789026@suse.com> Date: Wed, 7 Jun 2023 09:39:25 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.11.2 Subject: Re: Xen reliance on non-standard GCC features Content-Language: en-US To: Roberto Bagnara Cc: Stefano Stabellini , "xen-devel@lists.xenproject.org" References: <1cd359e7-5245-a621-3be2-9323ba5b327b@bugseng.com> <8314e0fc-4ead-40fa-ef7b-4da8ce0655b4@suse.com> <80a512ac-d90e-930a-7ef7-8ebb5a80e801@bugseng.com> From: Jan Beulich In-Reply-To: <80a512ac-d90e-930a-7ef7-8ebb5a80e801@bugseng.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR3P281CA0165.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:a2::10) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|PAXPR04MB9107:EE_ X-MS-Office365-Filtering-Correlation-Id: ec59a687-573b-4a7b-b38a-08db672a5116 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: R5SyQzeJ1pOak0ttHsxcD11DzrwOMPT9iKP4i8nKbkdcJ0Rqm193bbHMct1RzDdfrVVO3IhlPcUumgZihtxViUu+1tFGBHmyzWokQpSvRP1mGeTW6S5CXIG1CQ9eIQYtKcUk1IVJd1gZRcLtMx50251gRIXpuryK7FGtGOrld9dQIhqdXut7HSH3xXmeWvYSRFiQTXoxCYk+8hG9YbP4/o8ukTqETOxqBtWHZ+4VbaggU4SA8ufMzb6SdlZ5coYfZrKC5wzG2yf5/qdhQ5hqhbzIEsFPAx651uKnbNoXn8wGa2GYGKNRAKra5oh4MjizGp2JVBUnF9fpb2OpXpsQQ87tGLmQm3qeZaUcwC9yaycpb9z05ca8tCHAujbbHDwbIZSerU0c+K0L3WJNLdjsFu/W3xd94iE/JwIkYrXmX5KC2MNyHVKNhSvy2c46UjIfaya/pJsHNRONeTD/oUdtSB2MkoVrATU8Q3vQIOnyD9GPNbCIGuhjxNcCgheJGg0rDnCUCYKbbLd6oxCX6nBeiLYP8WgmcCvn6AhbZoolrkVEQEZc+ZpK79Qpb90cUb9wiiDBlqJwTL481ts7mmRZHYck4htDgQGO8naGsC29TOwfogKyzecWnBcEdORUbSzaavAw+iXlRgCd3qJf2xQczw== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(366004)(346002)(136003)(376002)(39860400002)(396003)(451199021)(8676002)(8936002)(478600001)(54906003)(41300700001)(6506007)(5660300002)(316002)(6486002)(26005)(31686004)(66899021)(4326008)(66476007)(6916009)(66556008)(66946007)(53546011)(6512007)(2616005)(186003)(83380400001)(2906002)(30864003)(38100700002)(31696002)(36756003)(86362001)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?K0RtMFhWL05EK2tUT1NxV0FvL01ydFNJZklMeEFpell3TWRQdUVpalhuOG1s?= =?utf-8?B?ZUI2d1d1Q1N6VWFia2p1YWV4VldaNXF5ZnBaZmFzL1YrL05oTDNpRVZxNUdw?= =?utf-8?B?enRPZFp1WUYzMSt2U01wVXpITThDQ05nb3Y1N2FWODBjUmRVREcrSSswVFpB?= =?utf-8?B?UVJIcytWSWJqeHZ5ZnM5N083dUFNK3Y2d3JLeEdSelBJSk5saHF1L0VsSGVJ?= =?utf-8?B?cVIzb3dlczRWS0YzSkV0SEdTRU9RYXdNNHpsVjdRQ1JwZFI2YzJXK2xXQzFJ?= =?utf-8?B?aW1HZW5KM0NDcXhuOGhPRkEySFJMeHkyNFd2MktGRmJFblU1eXJTVFlCRkhY?= =?utf-8?B?VitTaHZpZkxhZ1V5Z3Q1MkFGazRkQkR0T1k0VUduTnVQclVCWW1JamFJSG9u?= =?utf-8?B?NDFtakNpVUdJbkl0Vk9teFhaWWNnNlBqNVJWaUdOWFI5SldzczdZQVlhYzFY?= =?utf-8?B?WjRuUE1qbUtGOWZIN28xdVRYRVB0WUtFWkhHRzhsVGhRUGxDZW1xczNPVTlZ?= =?utf-8?B?K1UwOTFkeUZwR3FSdlZjdVA3NCtObGhmaFhwV3g3Zm9hK2d2SkhPSzFnd2la?= =?utf-8?B?QTJaZVVrRm1VNDdQc0pLZHRCdysyZER2NjVHT3E1NDNtUzg1NHNsODlCYng1?= =?utf-8?B?SmZzYlpSRzY5QlN5dzZXL0R4QU1OaDdiMnRpeFNnNjRiekduMHNtZjZPS1o3?= =?utf-8?B?VEdKSHFJaFJMSE45Smlsb1lMTFEvb3hPV3Zaek1wT0tEdlR4eHYwbEVQcTE2?= =?utf-8?B?aGQvamRqamd4YWtrR0lEUHFVc3p6ZFNkdFN3M2szUUZ5bHQrY1JNU2dVaGN5?= =?utf-8?B?Uko4azZPaURVNDl5UFB0bXRreUI4eVA3amk3UG01ck54TVJLR0dmZFZSeHdz?= =?utf-8?B?OTY4NGhKM1R3bkZlVEZ3bWxXaW9XY2xDVnNrNWVNZk5ROFEwSmNWWTk5eTZ2?= =?utf-8?B?M09GMUlCYm5ONGdCVVk3NHBST2wzakVLMWFsS1I0dHFmM28zUndOUUprK0Vh?= =?utf-8?B?MXBVUW9SMW8xTTUrd0VTMDJ5cnliYUZSUGFHUkY3S1dGZTFyKzdLaDRnYlZP?= =?utf-8?B?c2FPb2JpNVBCWXViZG1Cc3dVOGNMRjRBaG9mMUJkRU5RMDc4L3hTaGFFaHdq?= =?utf-8?B?SGZyRHBIU3RFbHhXanZkWERjRForbUFJdkpEeUdyclQ4ZGdLVm16SzFydERV?= =?utf-8?B?RFpSSnBvcUx4ZE10alg3ckV6QXBOcm04WDdiK1I0UGhDRGRMTGhiTlRQMUdL?= =?utf-8?B?U2h5R0R4dFFWb25nSzl2RVlRSmo0U0t5V0ttMVNGZTd3elhPUW13L2YraFVB?= =?utf-8?B?UjJleGlBSGpKVk8xU3hGZjV0a0dYM04yU0dNU1k3RW1ZekZLUlZxT1RXVTdQ?= =?utf-8?B?N1FJWVNnSEF2TUhhRHArbTJBRElkdzltNDNUdW5HbUdFRVYzZnRvdzJVd3FQ?= =?utf-8?B?RUNaaGlkOVlRK0owU0M3Z0pjdjM3WUxNMndRUXhidXlwU3Jqb3V4UE41UVlv?= =?utf-8?B?U0dWcEVCbkl0RjEwWmtwWUN3eUp5OFdlSWVYWjc1Y05ubjFmYVI5OVhEWk50?= =?utf-8?B?MVJOQzVUV2VDYnRzVVhQOVNaMkc2RXpCVTBIYmFCOVhiNk5idHZZR3ZOQWdh?= =?utf-8?B?c3k3TGlOV1pDVEhpQWxpYy9ZaGFabEJrR3cvb0JjaWU0SHd2Q2JRckJ0Q1ZK?= =?utf-8?B?aWRPMENpWjFpelFjaFQ5RjZ2M1NzSTBoU3pSb1lXb3hqajBGK0x6S1QxWWQ2?= =?utf-8?B?aGtHMFVpdHFzTm9ONlJhYTRhWlpqak5raWtIcFNTSVFaa0g5aFJhY09YYWJO?= =?utf-8?B?dWtGb2lGL1dhaGhycENDOFNXK3hWcnRodlNqZU5JcXVNcEtIbkxUOEp2UkMz?= =?utf-8?B?V2dUN3RlcTlTSVFKaFBmTSs0cDFEa1VIbjlHUVNMWm5nWmNSL3V6MG1uc1pM?= =?utf-8?B?Y1MzZWVxZ2lERXZ5cFF2TSt6QjRJdkRTYzNJUmsvM1pKUUJ3ZmVialpOMVhS?= =?utf-8?B?RzIvUVNLUnpNZzFYN0tuUzZGYW91SDlPYkNqcDYxWkdtMGR5czlpMGJpOEhP?= =?utf-8?B?dExsV0Y5MGpBL3BmbHZpa3ZFTDdWYTJjRHptSnBsSExaM2RWYk16Y3ZobytK?= =?utf-8?Q?zcZvK+AOSLNli2MaDTVfzaM4E?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: ec59a687-573b-4a7b-b38a-08db672a5116 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Jun 2023 07:39:25.2041 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 8EqeHnOfp0q9JuppFwwOBrVJTxJzUJdLKI2fBxbVNgEVR/h5mVw0s8oNAhp5W8epdCUbHUPullirDvwdT5hZjQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB9107 On 05.06.2023 15:26, Roberto Bagnara wrote: > On 05/06/23 11:28, Jan Beulich wrote: >> On 05.06.2023 07:28, Roberto Bagnara wrote: >>> U1) Use of _Static_assert in C99 mode. >>> >>> U2) Empty initialization lists, both in C99 mode (ARM64 and X86_64) >>> and C18 mode (only X86_64). >>> >>> U3) Returning void expressions. >> >> As per above, tiny extensions like these are, I think, unlikely to be >> mentioned anywhere explicitly (or more than in passing). For the last of >> the three it may further be that it pre-dates when gcc started to >> properly document extensions. Oh, actually - U3 is documented along with >> -Wreturn-type. > > Noted: thanks! > >> Uses are generally intentional afaik, but eliminating cases of U2 and U3 >> would likely be possible with just slight overall impact. > > Ok. As this has an impact on MISRA compliance at some stage we will need > an official position on the subject. > >> As to U2, it's not clear why you distinguish C99 and C18 mode. > > I specified that because for MISRA compliance we need to stick > to one version of the language: while most translation units > are compiled in C99 mode, some are compiled in C18 mode and some > in C90 mode. However, I agree this is OT for the current discussion. > >> Throughout >> this summary of yours it would likely have been helpful if an example was >> provided for the behavior your describing, when the wording doesn't make >> it crystal clear (e.g. no example needed for U1 and U3 above). > > You are right: here are a few examples for U2: > > xen/arch/arm/cpuerrata.c:92.12-92.35: > empty initializer list (ill-formed for the C99 standard, ISO/IEC 9899:1999 Section 6.7.8: "An empty initialization list." [STD.emptinit]). Tool used is `/usr/bin/aarch64-linux-gnu-gcc-12' > xen/include/xen/spinlock.h:31.21-31.23: expanded from macro `_LOCK_DEBUG' > xen/include/xen/spinlock.h:143.57-143.67: expanded from macro `SPIN_LOCK_UNLOCKED' > xen/include/xen/spinlock.h:144.43-144.60: expanded from macro `DEFINE_SPINLOCK' I'm afraid this is a bad example, as it goes hand-in-hand with using another extension. I don't think using a non-empty initialization list is going to work with union lock_debug { }; > xen/arch/arm/cpuerrata.c:678.5-678.6: > empty initializer list (ill-formed for the C99 standard, ISO/IEC 9899:1999 Section 6.7.8: "An empty initialization list." [STD.emptinit]). Tool used is `/usr/bin/aarch64-linux-gnu-gcc-12' > > xen/arch/arm/cpufeature.c:33.5-33.6: > empty initializer list (ill-formed for the C99 standard, ISO/IEC 9899:1999 Section 6.7.8: "An empty initialization list." [STD.emptinit]). Tool used is `/usr/bin/aarch64-linux-gnu-gcc-12' Both of these are a common idiom we use: The "sentinel" of an array of compound type initializer. >>> U4) Static functions or variables used in inline functions with external >>> linkage. >> >> There's not a lot of "extern inline" that we've accumulated so far, I >> think. The only ones I'm aware of are sort() and bsearch(), and there >> the use is precisely for allowing the compiler to optimize away function >> calls. >> >> The documentation of this functionality is that of the gnu_inline >> function attribute, afaict. That would be 6.33.1 "Common Function >> Attributes" in 13.1.0 doc. > > No, it is not that one: > > xen/common/spinlock.c:316.29-316.40: > static function `observe_head(spinlock_tickets_t*)' is used in an inline function with external linkage (ill-formed for the C99 standard, ISO/IEC 9899:1999: "An ill-formed source detected by the parser." [STD.diag/ext_internal_in_extern_inline_quiet]). Tool used is `/usr/bin/aarch64-linux-gnu-gcc-12' > xen/common/spinlock.c:301.26-301.37: > `observe_head(spinlock_tickets_t*)' declared here > xen/include/xen/spinlock.h:180.1-180.4: > use 'static' to give inline function `_spin_lock_cb(spinlock_t*, void(*)(void*), void*)' internal linkage Oh, I see. I guess by introducing another wrapper we could deal with that in sufficiently unintrusive a way. >>> U5) Enumerator values outside the range of `int'. > > Examples: > > xen/arch/x86/include/asm/guest/hyperv-tlfs.h:477.9-477.26: Loc #1 [culprit: ISO C restricts enumerator values to range of 'int' (2147483648 is too large) (ill-formed for the C99 standard, ISO/IEC 9899:1999: "An ill-formed source detected by the parser." [STD.diag/ext_enum_value_not_int]). Tool used is `/usr/bin/x86_64-linux-gnu-gcc-12'] > xen/arch/x86/include/asm/guest/hyperv-tlfs.h:477.43-477.52: Loc #2 [evidence: ISO C restricts enumerator values to range of 'int' (2147483648 is too large)] > > xen/arch/x86/include/asm/guest/hyperv-tlfs.h:478.9-478.27: Loc #1 [culprit: ISO C restricts enumerator values to range of 'int' (2147483649 is too large) (ill-formed for the C99 standard, ISO/IEC 9899:1999: "An ill-formed source detected by the parser." [STD.diag/ext_enum_value_not_int]). Tool used is `/usr/bin/x86_64-linux-gnu-gcc-12'] > xen/arch/x86/include/asm/guest/hyperv-tlfs.h:478.43-478.52: Loc #2 [evidence: ISO C restricts enumerator values to range of 'int' (2147483649 is too large)] It's not entirely clear to me in how far hyperv-tlfs.h is a header fully of our own. It may be possible to switch to #define instead if we don't "follow" someone else's header. > xen/arch/x86/include/asm/hvm/svm/vmcb.h:143.5-143.27: Loc #1 [culprit: ISO C restricts enumerator values to range of 'int' (2147483648 is too large) (ill-formed for the C99 standard, ISO/IEC 9899:1999: "An ill-formed source detected by the parser." [STD.diag/ext_enum_value_not_int]). Tool used is `/usr/bin/x86_64-linux-gnu-gcc-12'] > xen/arch/x86/include/asm/hvm/svm/vmcb.h:143.31-143.38: Loc #2 [evidence: ISO C restricts enumerator values to range of 'int' (2147483648 is too large)] Here we have more leeway, and imo the offending enumerations are an abuse of "enum" in the first place. >>> U6) Empty declarations. > > Examples: > > xen/arch/arm/arm64/lib/find_next_bit.c:57.29: > empty declaration (ill-formed for the C99 standard, ISO/IEC 9899:1999 Section 6.7: "An empty declaration." [STD.emptdecl]). Tool used is `/usr/bin/aarch64-linux-gnu-gcc-12' > > xen/arch/arm/arm64/lib/find_next_bit.c:103.34: > empty declaration (ill-formed for the C99 standard, ISO/IEC 9899:1999 Section 6.7: "An empty declaration." [STD.emptdecl]). Tool used is `/usr/bin/aarch64-linux-gnu-gcc-12' Looks like these could be taken care of by finally purging our EXPORT_SYMBOL() stub. > xen/arch/arm/include/asm/vreg.h:143.26: > empty declaration (ill-formed for the C99 standard, ISO/IEC 9899:1999 Section 6.7: "An empty declaration." [STD.emptdecl]). Tool used is `/usr/bin/aarch64-linux-gnu-gcc-12' > > xen/arch/arm/include/asm/vreg.h:144.26: > empty declaration (ill-formed for the C99 standard, ISO/IEC 9899:1999 Section 6.7: "An empty declaration." [STD.emptdecl]). Tool used is `/usr/bin/aarch64-linux-gnu-gcc-12' I'm having trouble spotting anything suspicious there. > xen/arch/arm/include/asm/arm64/flushtlb.h:70.51: > empty declaration (ill-formed for the C99 standard, ISO/IEC 9899:1999 Section 6.7: "An empty declaration." [STD.emptdecl]). Tool used is `/usr/bin/aarch64-linux-gnu-gcc-12' Same here. I the tool having an issue with the instantiation of (inline) functions by way of a macro? >>> U7) Empty enum definitions. > > Example: > > xen/arch/arm/include/asm/vgic.h:275.6-275.17: > enum declaration `gic_sgi_mode' is incomplete (ill-formed for the C99 standard, ISO/IEC 9899:1999 Section 6.7.2.2: "An incomplete enum declaration." [STD.emptenum]). Tool used is `/usr/bin/aarch64-linux-gnu-gcc-12' > >> ... here I wonder whether instead you mean forward declaration of enums >> (i.e. what the standard allows for structures and unions only). > > It is reported as an enum forward declaration if the enum is later > properly declared. My understanding is that this is not the case > for the example above. asm/gic.h provides the full definition. There looks to be exactly one case (smp.c) where asm/vgic.h is included but asm/gic.h isn't. As there may be peculiarities to this, Arm maintainers would need to take a look to decide whether also including the other header that is an option. >>> U8) Conversion between incompatible pointer types. >> >> Do we have any uses that aren't, by using casts, documenting that the >> conversions are deliberate? Otherwise I would expect the compiler to >> warn, and hence the build to fail due to -Werror. Then again I'm sure >> we have ample uses of casts left which are actually bogus. > > Examples: > > xen/common/kernel.c:552.18-552.47: > implicit cast converts from `const __typeof__(*(¶ms))*' (that is `const struct xen_platform_parameters*') to `void*' (ill-formed for the C99 standard, ISO/IEC 9899:1999 Section 6.5.16.1: "Implicit conversion from a pointer to an incompatible pointer." [STD.pteincmp]). Tool used is `/usr/bin/aarch64-linux-gnu-gcc-12' > xen/include/xen/guest_access.h:65.23-65.24: expanded from macro `copy_to_guest_offset' > xen/include/xen/guest_access.h:104.5-104.41: expanded from macro `copy_to_guest' > > xen/common/kernel.c:566.14-566.59: > implicit cast converts from `const __typeof__(*(chgset))*' (that is `const char*') to `void*' (ill-formed for the C99 standard, ISO/IEC 9899:1999 Section 6.5.16.1: "Implicit conversion from a pointer to an incompatible pointer." [STD.pteincmp]). Tool used is `/usr/bin/aarch64-linux-gnu-gcc-12' > xen/include/xen/guest_access.h:65.23-65.24: expanded from macro `copy_to_guest_offset' > xen/include/xen/guest_access.h:104.5-104.41: expanded from macro `copy_to_guest' > > xen/common/kernel.c:613.14-613.41: > implicit cast converts from `const __typeof__(*(&fi))*' (that is `const struct xen_feature_info*') to `void*' (ill-formed for the C99 standard, ISO/IEC 9899:1999 Section 6.5.16.1: "Implicit conversion from a pointer to an incompatible pointer." [STD.pteincmp]). Tool used is `/usr/bin/aarch64-linux-gnu-gcc-12' > xen/include/xen/guest_access.h:123.23-123.24: expanded from macro `__copy_to_guest_offset' > xen/include/xen/guest_access.h:152.5-152.43: expanded from macro `__copy_to_guest' > > xen/common/kernel.c:645.14-645.71: > implicit cast converts from `const __typeof__(*(deny ? xen_deny() : saved_cmdline))*' (that is `const char*') to `void*' (ill-formed for the C99 standard, ISO/IEC 9899:1999 Section 6.5.16.1: "Implicit conversion from a pointer to an incompatible pointer." [STD.pteincmp]). Tool used is `/usr/bin/aarch64-linux-gnu-gcc-12' > xen/include/xen/guest_access.h:65.23-65.24: expanded from macro `copy_to_guest_offset' > xen/include/xen/guest_access.h:104.5-104.41: expanded from macro `copy_to_guest' > > xen/common/memory.c:1745.20-1745.53: > implicit cast converts from `const __typeof__(*(&topology))*' (that is `const struct xen_vnuma_topology_info*') to `void*' (ill-formed for the C99 standard, ISO/IEC 9899:1999 Section 6.5.16.1: "Implicit conversion from a pointer to an incompatible pointer." [STD.pteincmp]). Tool used is `/usr/bin/aarch64-linux-gnu-gcc-12' > xen/include/xen/guest_access.h:123.23-123.24: expanded from macro `__copy_to_guest_offset' > xen/include/xen/guest_access.h:152.5-152.43: expanded from macro `__copy_to_guest' > > xen/common/memory.c:1808.14-1808.47: > implicit cast converts from `const __typeof__(*(&topology))*' (that is `const struct xen_vnuma_topology_info*') to `void*' (ill-formed for the C99 standard, ISO/IEC 9899:1999 Section 6.5.16.1: "Implicit conversion from a pointer to an incompatible pointer." [STD.pteincmp]). Tool used is `/usr/bin/aarch64-linux-gnu-gcc-12' > xen/include/xen/guest_access.h:123.23-123.24: expanded from macro `__copy_to_guest_offset' > xen/include/xen/guest_access.h:152.5-152.43: expanded from macro `__copy_to_guest' > > xen/common/memory.c:1841.14-1841.47: > implicit cast converts from `const __typeof__(*(&grdm.map))*' (that is `const struct xen_reserved_device_memory_map*') to `void*' (ill-formed for the C99 standard, ISO/IEC 9899:1999 Section 6.5.16.1: "Implicit conversion from a pointer to an incompatible pointer." [STD.pteincmp]). Tool used is `/usr/bin/aarch64-linux-gnu-gcc-12' > xen/include/xen/guest_access.h:123.23-123.24: expanded from macro `__copy_to_guest_offset' > xen/include/xen/guest_access.h:152.5-152.43: expanded from macro `__copy_to_guest' These are all a common pattern. Line 65 in xen/guest_access.h is (void)((hnd).p == _s); \ i.e. not an assignment in the first place. Nearby assignments don't involve _s, yet that's pretty clearly what is being referred to by const __typeof__(*(...))*. In pointer comparisons, differring qualifiers are okay afaik (6.5.9), so I wonder whether the tool is becoming confused here. I don't know the acronyms used, but isn't STD.pteincmp referring to comparisons rather that assignments? > xen/common/efi/boot.c:335.16-335.56: > implicit cast converts from `const CHAR16*' (that is `const unsigned short*') to `void*' (ill-formed for the C99 standard, ISO/IEC 9899:1999 Section 6.5.16.1: "Implicit conversion from a pointer to an incompatible pointer." [STD.pteincmp]). Tool used is `/usr/bin/aarch64-linux-gnu-gcc-12' Same here - comparison of the result of wmemchr() (const CHAR16*) with an expression derived from "data" (void*). > xen/common/libfdt/fdt_overlay.c:733.69-733.87: > implicit cast converts from `const char*' to `void*' (ill-formed for the C99 standard, ISO/IEC 9899:1999 Section 6.5.16.1: "Implicit conversion from a pointer to an incompatible pointer." [STD.pteincmp]). Tool used is `/usr/bin/aarch64-linux-gnu-gcc-12' Same here again, I think. >>> U9) Conversion between function pointers and object pointers. > > Example: > xen/arch/x86/apic.c:1159.16-1159.55: Loc #1 [culprit: c_style cast converts from `const void*' to `unsigned(*)(void)' (ill-formed for the C99 standard, ISO/IEC 9899:1999 Annex J.5.7: "A pointer to a function is converted to a pointer to an object or a pointer to an object is converted to a pointer to a function (6.5.4, 6.3.2.3)." [STD.funojptr]). Tool used is `/usr/bin/x86_64-linux-gnu-gcc-12'] > >> Uses I'm readily aware of are deliberate. Plus isn't this shorthand >> for going through uintptr_t intermediately only anyway? > > I don't understand the last sentence. 6.3.2.3 allows conversions between integer and pointer types. Hence isn't intermediately going through uintptr_t merely a more verbose way of casting between function and object pointers directly: ptr = (void *)(uintptr_t)func; vs ptr = (void *)func; ? >>> Here is a list of extensions that are documented in the GCC manual: >> >> I suppose that this list wasn't meant to be complete? The most >> prominent example is probably asm(). > > As far as I can tell the list was almost complete (I realize now > that the use of the keyword __signed__ was omitted because > investigation was not completed). But I am probably misunderstanding > you. Well, your list didn't include asm(), which is an extension we can't do without. We also use __attribute__(()) extensively. And while hunting for extensions which aren't documented in their own dedicated sections, I think I had come across more. I didn't write these down, and if at all possible I'd prefer to avoid repeating the exercise. Jan From xen-devel-bounces@lists.xenproject.org Wed Jun 07 07:44:28 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 07:44:28 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544415.850184 (Exim 4.92) (envelope-from ) id 1q6nq5-0007Pu-WE; Wed, 07 Jun 2023 07:44:18 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544415.850184; Wed, 07 Jun 2023 07:44:17 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6nq5-0007Pn-T0; Wed, 07 Jun 2023 07:44:17 +0000 Received: by outflank-mailman (input) for mailman id 544415; Wed, 07 Jun 2023 07:44:16 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6nq4-0007Ph-4a for xen-devel@lists.xenproject.org; Wed, 07 Jun 2023 07:44:16 +0000 Received: from out0-216.mail.aliyun.com (out0-216.mail.aliyun.com [140.205.0.216]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 168f1fef-0507-11ee-8611-37d641c3527e; Wed, 07 Jun 2023 09:44:12 +0200 (CEST) Received: from localhost(mailfrom:houwenlong.hwl@antgroup.com fp:SMTPD_---.TNbNmQf_1686123841) by smtp.aliyun-inc.com; Wed, 07 Jun 2023 15:44:02 +0800 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 168f1fef-0507-11ee-8611-37d641c3527e X-Alimail-AntiSpam:AC=PASS;BC=-1|-1;BR=01201311R141e4;CH=green;DM=||false|;DS=||;FP=0|-1|-1|-1|0|-1|-1|-1;HT=ay29a033018047198;MF=houwenlong.hwl@antgroup.com;NM=1;PH=DS;RN=27;SR=0;TI=SMTPD_---.TNbNmQf_1686123841; Date: Wed, 07 Jun 2023 15:44:01 +0800 From: "Hou Wenlong" To: linux-kernel@vger.kernel.org Cc: "Lai Jiangshan" , "Alexey Makhalov" , "Andrew Morton" , "Andy Lutomirski" , "Anshuman Khandual" , "Borislav Petkov" , "Boris Ostrovsky" , "Brian Gerst" , "Dave Hansen" , "David Woodhouse" , "H. Peter Anvin" , "Ingo Molnar" , "Josh Poimboeuf" , "Juergen Gross" , "Kirill A. Shutemov" , "=?UTF-8?B?TWlrZSBSYXBvcG9ydCAoSUJNKQ==?=" , "Pasha Tatashin" , "Peter Zijlstra" , "=?UTF-8?B?U3JpdmF0c2EgUy4gQmhhdCAoVk13YXJlKQ==?=" , "Suren Baghdasaryan" , "Thomas Gleixner" , "Usama Arif" , , "VMware PV-Drivers Reviewers" , , Subject: Re: [PATCH RFC 0/4] x86/fixmap: Unify FIXADDR_TOP Message-ID: <20230607074401.GA53666@k08j02272.eu95sqa> References: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.21 (2010-09-15) On Mon, May 15, 2023 at 04:19:31PM +0800, Hou Wenlong wrote: > This patchset unifies FIXADDR_TOP as a variable for x86, allowing the > fixmap area to be movable and relocated with the kernel image in the > x86/PIE patchset [0]. This enables the kernel image to be relocated in > the top 512G of the address space. > > [0] https://lore.kernel.org/lkml/cover.1682673542.git.houwenlong.hwl@antgroup.com > > Hou Wenlong (4): > x86/vsyscall: Don't use set_fixmap() to map vsyscall page > x86/xen: Pin up to VSYSCALL_ADDR when vsyscall page is out of fixmap > area > x86/fixmap: Move vsyscall page out of fixmap area > x86/fixmap: Unify FIXADDR_TOP > > arch/x86/entry/vsyscall/vsyscall_64.c | 7 +----- > arch/x86/include/asm/fixmap.h | 28 ++++------------------- > arch/x86/include/asm/paravirt.h | 7 ++++++ > arch/x86/include/asm/paravirt_types.h | 4 ++++ > arch/x86/include/asm/vsyscall.h | 13 +++++++++++ > arch/x86/kernel/head64.c | 1 - > arch/x86/kernel/head_64.S | 6 ++--- > arch/x86/kernel/paravirt.c | 4 ++++ > arch/x86/mm/dump_pagetables.c | 3 ++- > arch/x86/mm/fault.c | 1 - > arch/x86/mm/init_64.c | 2 +- > arch/x86/mm/ioremap.c | 5 ++--- > arch/x86/mm/pgtable.c | 13 +++++++++++ > arch/x86/mm/pgtable_32.c | 3 --- > arch/x86/xen/mmu_pv.c | 32 +++++++++++++++++++-------- > 15 files changed, 77 insertions(+), 52 deletions(-) > > > base-commit: f585d5177e1aad174fd6da0e3936b682ed58ced0 > -- > 2.31.1 Hi, Just wanted to send a kind ping on this patchset. Thanks. From xen-devel-bounces@lists.xenproject.org Wed Jun 07 07:44:42 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 07:44:42 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544416.850194 (Exim 4.92) (envelope-from ) id 1q6nqI-0007j2-8R; Wed, 07 Jun 2023 07:44:30 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544416.850194; Wed, 07 Jun 2023 07:44:30 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6nqI-0007it-5W; Wed, 07 Jun 2023 07:44:30 +0000 Received: by outflank-mailman (input) for mailman id 544416; Wed, 07 Jun 2023 07:44:29 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6nqG-0007ht-O1 for xen-devel@lists.xenproject.org; Wed, 07 Jun 2023 07:44:29 +0000 Received: from bombadil.infradead.org (bombadil.infradead.org [2607:7c80:54:3::133]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 2099ec7c-0507-11ee-b232-6b7b168915f2; Wed, 07 Jun 2023 09:44:27 +0200 (CEST) Received: from hch by bombadil.infradead.org with local (Exim 4.96 #2 (Red Hat Linux)) id 1q6nqB-004n5l-03; Wed, 07 Jun 2023 07:44:23 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 2099ec7c-0507-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=bombadil.20210309; h=In-Reply-To:Content-Type:MIME-Version :References:Message-ID:Subject:Cc:To:From:Date:Sender:Reply-To: Content-Transfer-Encoding:Content-ID:Content-Description; bh=4Sx6PZ8z7yUHSRyrSyhfNlQuLMPtcylN+zdcdoTWpXg=; b=KEHhRRtM/7119LZoHZ21PYKQvf oxQ3RW7h1hm22BBehjrTIxZs+Hq4vNo2r7l6s04yZHqhXriMF63WHd9i5/zDyUJLhCmuIXXizFHjF 4Jsv/ky6uLqB5DrYaMtEapqpJJHQIp+5COiFf/fjdAb68jrejI06b4/3yOXZm25RDROV2sLsCI7/M LzYuzlMAcsstPZ3ok7GYLmLvIlnHuHYvruYjB+JVdJQz2zhH7pKYEIBJ1kQdE+vY6qsnVevIkJy2M ta9L6kYnOflYPdvVBtihfIYaqAzWLOjNSQvLp3cM2kFEDfgTrtzUdL7vORwRcQ+gVauExyOPeEpbw JiOgiSfQ==; Date: Wed, 7 Jun 2023 00:44:22 -0700 From: Christoph Hellwig To: Demi Marie Obenour Cc: Roger Pau =?iso-8859-1?Q?Monn=E9?= , Jens Axboe , Marek =?iso-8859-1?Q?Marczykowski-G=F3recki?= , xen-devel@lists.xenproject.org, linux-block@vger.kernel.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH 1/2] xen-blkback: Implement diskseq checks Message-ID: References: <20230601214823.1701-1-demi@invisiblethingslab.com> <20230601214823.1701-2-demi@invisiblethingslab.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20230601214823.1701-2-demi@invisiblethingslab.com> X-SRS-Rewrite: SMTP reverse-path rewritten from by bombadil.infradead.org. See http://www.infradead.org/rpr.html On Thu, Jun 01, 2023 at 05:48:22PM -0400, Demi Marie Obenour wrote: > + if (diskseq) { > + struct gendisk *disk = bdev->bd_disk; > + > + if (unlikely(disk == NULL)) { > + pr_err("%s: device %08x has no gendisk\n", > + __func__, vbd->pdevice); > + xen_vbd_free(vbd); > + return -EFAULT; > + } bdev->bd_disk is never NULL. > + diskseq_str = xenbus_read(XBT_NIL, dev->nodename, "diskseq", &diskseq_len); Please avoid the overly long line. > + if (IS_ERR(diskseq_str)) { > + int err = PTR_ERR(diskseq_str); > + diskseq_str = NULL; > + > + /* > + * If this does not exist, it means legacy userspace that does not .. even more so in comments. > + * support diskseq. > + */ > + if (unlikely(!XENBUS_EXIST_ERR(err))) { > + xenbus_dev_fatal(dev, err, "reading diskseq"); > + return; > + } > + diskseq = 0; > + } else if (diskseq_len <= 0) { > + xenbus_dev_fatal(dev, -EFAULT, "diskseq must not be empty"); > + goto fail; > + } else if (diskseq_len > 16) { No need for a else after a return. > + xenbus_dev_fatal(dev, -ERANGE, "diskseq too long: got %d but limit is 16", > + diskseq_len); > + goto fail; > + } else if (diskseq_str[0] == '0') { > + xenbus_dev_fatal(dev, -ERANGE, "diskseq must not start with '0'"); > + goto fail; > + } else { > + char *diskseq_end; > + diskseq = simple_strtoull(diskseq_str, &diskseq_end, 16); > + if (diskseq_end != diskseq_str + diskseq_len) { > + xenbus_dev_fatal(dev, -EINVAL, "invalid diskseq"); > + goto fail; > + } > + kfree(diskseq_str); > + diskseq_str = NULL; > + } And I suspect the code will be a lot easier to follow if you move the diskseq validation into a separate helper. From xen-devel-bounces@lists.xenproject.org Wed Jun 07 07:46:24 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 07:46:24 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544427.850207 (Exim 4.92) (envelope-from ) id 1q6ns6-000060-ML; Wed, 07 Jun 2023 07:46:22 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544427.850207; Wed, 07 Jun 2023 07:46:22 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6ns6-00005t-Ix; Wed, 07 Jun 2023 07:46:22 +0000 Received: by outflank-mailman (input) for mailman id 544427; Wed, 07 Jun 2023 07:46:21 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6ns5-00005n-8l for xen-devel@lists.xenproject.org; Wed, 07 Jun 2023 07:46:21 +0000 Received: from bombadil.infradead.org (bombadil.infradead.org [2607:7c80:54:3::133]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 640123a6-0507-11ee-b232-6b7b168915f2; Wed, 07 Jun 2023 09:46:20 +0200 (CEST) Received: from hch by bombadil.infradead.org with local (Exim 4.96 #2 (Red Hat Linux)) id 1q6ns0-004nZS-2l; Wed, 07 Jun 2023 07:46:16 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 640123a6-0507-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=bombadil.20210309; h=In-Reply-To:Content-Type:MIME-Version :References:Message-ID:Subject:Cc:To:From:Date:Sender:Reply-To: Content-Transfer-Encoding:Content-ID:Content-Description; bh=zx7QiNnFC0Cpwen1yiSTOeTK/8rpSNjru1sqAkfYhQU=; b=yAWYaRs/exv9l4aW3kRh15uGCe 26FluPYMyAqbRNSSIKILK5H+P/HRb+mLP2AVCZD8Q6/dOrzSkIWCs7Epg5moTHRi1Pj0dpEWULnsO O7NYmBvnRZqEt+xSMqI3EI3MQfvt5yQ42VPSZsOOdcFokDphTUPA66kyZ6YO1YnkrYywoCHQYV3Ea 0MDsIqEqxuTqVM0/S2p9YhiyYiGf5LX7u3r4ZZIlUTMCZAFMMuz8srwGclvl/WuS8PZXb9qms4iiV jkrDp65eAYRHr6bzEzcpMFs/3lcXVHwIJ6nXcIQysCnXcIa9qte7v7qw+LV/9Oskk3ET3QhPsIhKZ nl2txkrA==; Date: Wed, 7 Jun 2023 00:46:16 -0700 From: Christoph Hellwig To: Demi Marie Obenour Cc: Roger Pau =?iso-8859-1?Q?Monn=E9?= , Jens Axboe , Marek =?iso-8859-1?Q?Marczykowski-G=F3recki?= , xen-devel@lists.xenproject.org, linux-block@vger.kernel.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH 2/2] xen-blkback: Inform userspace that device has been opened Message-ID: References: <20230601214823.1701-1-demi@invisiblethingslab.com> <20230601214823.1701-3-demi@invisiblethingslab.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20230601214823.1701-3-demi@invisiblethingslab.com> X-SRS-Rewrite: SMTP reverse-path rewritten from by bombadil.infradead.org. See http://www.infradead.org/rpr.html > --- a/drivers/block/xen-blkback/xenbus.c > +++ b/drivers/block/xen-blkback/xenbus.c > @@ -3,6 +3,20 @@ > Copyright (C) 2005 Rusty Russell > Copyright (C) 2005 XenSource Ltd > > +In addition to the Xenstore nodes required by the Xen block device > +specification, this implementation of blkback uses a new Xenstore > +node: "opened". blkback sets "opened" to "0" before the hotplug script > +is called. Once the device node has been opened, blkback sets "opened" > +to "1". This is a really odd comment style, and a really strange place for it. To me it feels like this should just be a file in Documentation as it relates to how to use the driver, and doesn't really explain the code. From xen-devel-bounces@lists.xenproject.org Wed Jun 07 07:50:14 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 07:50:14 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544433.850216 (Exim 4.92) (envelope-from ) id 1q6nvh-0001Qj-5v; Wed, 07 Jun 2023 07:50:05 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544433.850216; Wed, 07 Jun 2023 07:50:05 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6nvh-0001Q4-1c; Wed, 07 Jun 2023 07:50:05 +0000 Received: by outflank-mailman (input) for mailman id 544433; Wed, 07 Jun 2023 07:50:04 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6nvg-0001Cj-7U for xen-devel@lists.xenproject.org; Wed, 07 Jun 2023 07:50:04 +0000 Received: from EUR03-AM7-obe.outbound.protection.outlook.com (mail-am7eur03on2060c.outbound.protection.outlook.com [2a01:111:f400:7eaf::60c]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id e84fc6ed-0507-11ee-8611-37d641c3527e; Wed, 07 Jun 2023 09:50:01 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by AS4PR04MB9337.eurprd04.prod.outlook.com (2603:10a6:20b:4e5::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.32; Wed, 7 Jun 2023 07:49:58 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.030; Wed, 7 Jun 2023 07:49:58 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: e84fc6ed-0507-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=I+UAzNJPBI0oRkx3KBJmNfOz7ypIQA2odDIuDZJrR3IipTIg7Z1YNkj50GlCkErVyHuz2fVpaz/rFmzzb/w/N30QSX/Legbnh3gObbI1R27wjp926iEaBtLsxqtqwCDxO8JgOLwDHsqJ+p+q9l5R0azKDN5c2kPe3dCNDfKzPa60v2zfSiqxOHUYSc28/3jm7F5qp4Dfo1/TRN3wkDxLNY4MKWMaLd+gLqSjgXucIaWV+mIQSv5Xg0Vx95kZHe4BoeygwLwFSk0nA6pCwOw1cH9WPe4aZUnlMSxIssuaB2CVxMTUL1+5egLgmhK4vhJExok1N1VT4x5ZbrsKXInoNQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=Sm4ALZX2TZ1d3Khf215OZzJFjp3/wU2zCbZPY+epx4E=; b=OJtPWiEDjr3HW4M5OMNTXRDgHUCJK/0YHEKHEcCRp1YvlELSMY00x1VI3SkAt60zZ4BvZ9rcDC41rVJVoEqMxbhSbAXbwnHhHZDlErlMuY+NvidUbGuMNLNCFP+V0rKktD6aX3REyyFmQUlKC7nu04qwG4dE+PXXqVuLRJ1xqm4IsKzuZHoFYawWJOEet+7QPBu1+OvqV2xuI6hsE3bi55PdWxlauWyGogJYcGxiWcEGorQ6Ldj620IbcU+clVbpIN+BygE9upzoL57fXmUDElDrfxKoaHhwj9+zIYbKp4LBrXpdDjEYzP+yQQdtcq5U4dyB1G6qgMrpzTUzHf/sMQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Sm4ALZX2TZ1d3Khf215OZzJFjp3/wU2zCbZPY+epx4E=; b=mA06USPw64/QTCKZj/gNOjUlepmOqm4K48up2w7OfojduCha1JjjlpRz7kZVvaR7ML6pDHrBNgX9+WYMOptZkSDYyoFTSiYGSSlxzbaaFx11f/C4HrmTadZ/yO5scJXr6vfIUgVZ7h/gl2aClRzDosPI1Awh1mc3I8JBq5k7lHWMBxeadhXcSxBMTMDp+6FgY5YgmOzLvzs0F20H3Jq0Bu3k+2hkTNDnH+91v/BOwQM36FDrzpRTUUaU5RtLpIrnglwrtJA4ildl+ONmtMv2Bn55EU5E+XwoLYQzies97zTLB9M5ez8Rz8UvBjme2ryAzYDA6HpjRrGeypGn7WoiYg== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: Date: Wed, 7 Jun 2023 09:49:59 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.11.2 Subject: Re: [PATCH v1 0/8] xen/riscv: introduce identity mapping Content-Language: en-US To: Oleksii Kurochko Cc: Andrew Cooper , Bob Eshleman , Alistair Francis , Connor Davis , xen-devel@lists.xenproject.org References: From: Jan Beulich In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR0P281CA0112.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:a8::11) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|AS4PR04MB9337:EE_ X-MS-Office365-Filtering-Correlation-Id: a6a7a9a6-dc90-4c2d-601a-08db672bca79 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: K2Z1arVl62L7LpVoaMBLMM9T9Bh0I9upI8gpcnw66puNFVs9c8POixaVc5huhHOYYZf8DZ0YQ0bk+VBYtVpd/YFJSFZou/XSsbOwNR+1rO4wJbybVuv3ADODWFf6H3MMgPK00j9LwtnxAqGy1NHC8XDQUHl7j4INJz/kNTBsh5C2/lqonjiS4EecMGnQS341scvxd52NMNtOPgqjq91LQ11EF38Q4qpW1KcwasiJchXDHns+1GQjdx1ZKsYDlJZ6+lzneYjMG70Or0KxJm4rKQgGxik3pY4Bx2r7wgAHRrDV9cDZiLQJxZnlWLv0muFttpWQwocfUhB1AoHAmp5Qc3+OhgkpbN7sleVXKkiQR1pcNQgbqeJkVpiVCR8y8/FPthMWt7P9UbBO0OSH6ee7WxrWfqTRyenQE6VYUul/Pb25mFGVQnXv1sz9bUEN2+01Tja8Nrb1HAGilq7/QOcvDDjVgUN7yscS5Jlwod58ZXxR9veGV6haSlBcTwnjdJmgvRJuEMBPvJXmM4fFc4H/6drKuUdjrLV+fmC7z7MYs5GKP0CXB6sQbGmbZ59lGOzJ/NyyQ/bGwExOUwxfQMIfKFHAQGtBXdOIefFrQ0s+2lucbm7GfRsPU6as7r8Z9rDg++bFwpdSnTGT31WvFWBZHQ== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(366004)(346002)(136003)(376002)(39860400002)(396003)(451199021)(8676002)(8936002)(478600001)(54906003)(966005)(41300700001)(6506007)(5660300002)(316002)(6486002)(26005)(31686004)(4326008)(66476007)(6916009)(66556008)(66946007)(53546011)(6512007)(2616005)(186003)(83380400001)(2906002)(38100700002)(31696002)(36756003)(86362001)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?Q0tQYmgyR1JYaFhWd3QyS0w3ZXhmdkJHMEtzYU12UlZyZys2MEFNY1YvMllG?= =?utf-8?B?Q0ZNeVVmck1oVUhGRHNOQ1pSejVrN2xWYlhMUlN0QW9iWS8zTXUreHVzU1Rh?= =?utf-8?B?WTFWd1ptTUFDcTFlWGJPWDRqd2tvS1NVNVZMYWdpUmhyUTVqMnI4b284cTda?= =?utf-8?B?UndVYVNqN0VoZVgzNTJhY2RSR3FLdHorcms1RjlESnBWVFFmbEEzTlhvSWVF?= =?utf-8?B?UVVEM3JvVURldTlMc0dtRi8vTTUrZTVQRytzYnd1ellRWDVCeXlSOWQ1TjVy?= =?utf-8?B?SzhUVDViSTFRUUlJL0dIajhwcFZ5dFJaTW9DaGRQVG1hSFVHQk5WQWx1a3RB?= =?utf-8?B?V0NXeGZ6UXMvbVFDZGwxN0lOYU5iZVlMR3M2aVpmYkQxaThBT3NkUmFLL2xk?= =?utf-8?B?S3pDZVlRMXErRGdBUmNNRFA4T0ZNcWZQdFlWenQzZ3pPdVl4ZGJuUXJrVDBB?= =?utf-8?B?S21qZXI1ZlpCSm5Oc3lzcHB2aTN2OUg4VHUvZURYTWFid2pFN0pjK1Fpb0kz?= =?utf-8?B?Qm8yZ2xXZ052V2tLWkNIL2VxWGE5YXF4Zm1RTG4zcVdlMFFNSWRCWnVqUkw2?= =?utf-8?B?YVVUNWdDMzY3UWwxWnVqdjgxdExscnZBcXVTaWlKVXdQQXB4K2R4MFovd3Jr?= =?utf-8?B?QlZqbVFFMlRSVGhaVU5tNkhJQzRaU1N0YlhjeXZIVFVqSzc3WWFMcklPQXJU?= =?utf-8?B?MDFHVWlLY2UxVTB2aTZwc2VUd21QemgvSVVUZTlrOU9wcTBtKzVUR1JoV29r?= =?utf-8?B?SWY0d0ZsbGlLWkJwSEhXTU0ySm9ZOUZwSnRUUlF0MHNvU200T2tTOGNDenJs?= =?utf-8?B?VDVBaW1UaHhjZm9HbHBqZnRsUmM2OTVJdWphbnBzQXhOaEs5ekhEa3huelBl?= =?utf-8?B?S1V3V2xEY3h0Nk1HR2pIL2JDYUgwdG1aUEgxdVY4cHh4SytuZnpadW1wZWlr?= =?utf-8?B?NURkOWE1ai9MeWI4VkxVMDZnLzVZU2RKc0Q4R01VL0V4Rm44WGVHTG5UdDY4?= =?utf-8?B?TXR3SG9NbkhsbytBeDFpVUhpTVpzd2Y4eG90bytTdGNVa3RyK2NPZ1A1bHZw?= =?utf-8?B?MGo2T2UxMXVwSUdCVHFTbHN6dE1PMjB6UUpmWnJFMFN2RVBvSXRJRDFjUTRI?= =?utf-8?B?a1ZzWkdGRUJjMTJGUWhLRXBHanpPbzhtR0N4Z2dpdk1mKyt3UXRsclhRYlBz?= =?utf-8?B?VHlhM011RGFTckt1Z1o4V0NBUytSUFZKSlJrU1dzdmRmUEd4WDlqR1NhcDZI?= =?utf-8?B?ZDd0Z1pQTjlvdDBmd050amdvdm9pbGtyS1ZETHcxcnJDMHRoWW1yZVA5M1Zr?= =?utf-8?B?YTFDZ0FYN3JENzd3cGdKckJqbEpPTHdaWkROQlBHc2ZKZXk1NkViNEdwdEpT?= =?utf-8?B?TWtZQWhpTWI5TW56aFVCc09DMUxiSVVJeSsrQjZZSkpHSng3U2VkYVNsTjdr?= =?utf-8?B?c2R3T214UVByNGpXZzhqcTRDUE9OZjdFWDh1RmtqNkRQTVViZWlJSWpGRjBY?= =?utf-8?B?WmtYYWE1dWsva1ZBUGdTamZ3TWZTVnZ1am1RTUM2aXdOOG9sWG14cWdVQ0gw?= =?utf-8?B?NUJGQlRLc0lzN2RzM3JFRGNoSWlEOU42M1lUa1dNQjNFUnVSSVExMlNGblo5?= =?utf-8?B?dm5QSXA1YzBob2gzaDkyUVdqYUExSldENStJdkhvZ1hMTXdRMFByT2trd25o?= =?utf-8?B?TlpNb3FWV21JSlRXdDUvZ2xJSDVGQ3FpdE0rcTBDaEZBWHpIZW1QNiswTmhS?= =?utf-8?B?QURqbTZTNDRlOUxTYTNsdk04QW5lRkhYVUxvdUF3TWtvSDFEKzFNSy95SGVh?= =?utf-8?B?Nk52NHdCWW1hTFJpamliaW9WbGdwbEpKRncrYkVKbEMzdnZTMTZBa1VNN0RS?= =?utf-8?B?M3E5UE9TLytMdm1NbnJVdnBNT3RtTUNxMlBROElYeUE0Vks0RmltUmo4NGFa?= =?utf-8?B?T2ZoUW1tSGh3dWNvWXRIUXFyQW9LS2JldjAzQTVuS2NXYlFLampmVjZvOUxG?= =?utf-8?B?dkZJUVdOUW1zK0t4UWh1Yk13c3M4ZG1PSXVVeDFwc01HTnR3ZEN4OUdxRlZK?= =?utf-8?B?dFFOZUFkc2QycTRZWGc2NEF1ZTl2eERkSDkxZlRWN0FjWHA2d0xWNDNORlIw?= =?utf-8?Q?+TlAtFgIgZsjcPNRxgPQwlhn/?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: a6a7a9a6-dc90-4c2d-601a-08db672bca79 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Jun 2023 07:49:58.2373 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: aDDL/DDKYcyJJJEUh9LwBicK//tnIzxDs4lLgRgUFCd204FpOvfZeUpKCArZVdD+nHNVc1+IC7aARJxFHpWMyQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS4PR04MB9337 On 06.06.2023 21:55, Oleksii Kurochko wrote: > The patch series introduces things necessary to implement identity mapping: > 1. Make identity mapping for _start and stack. > 2. Enable MMU. > 3. Jump to the virtual address world > 4. Remove identity mapping for _start and stack. > > Also current patch series introduces the calculation of physical offset before > MMU is enabled as access to physical offset will be calculated wrong after > MMU will be enabled because access to phys_off variable is PC-relative and > in the case when linker address != load address, it will cause MMU fault. > > One more thing that was done is: > * Added SPDX tags. > * Added __ASSEMBLY__ guards. These are are, aiui, a response to a comment from Andrew. Hence I think this wants expressing by a {Requested,Suggested,Reported}-by: tag in the respective patch. Jan > * move extern of cpu0_boot_stack to a header. > > The reason for this patch series can be found here: > https://lore.kernel.org/xen-devel/4e336121-fc0c-b007-bf7b-430352563d55@citrix.com/ > > Oleksii Kurochko (8): > xen/riscv: make sure that identity mapping isn't bigger then page size > xen/riscv: add .sbss section to .bss > xen/riscv: introduce reset_stack() function > xen/riscv: introduce function for physical offset calculation > xen/riscv: introduce identity mapping > xen/riscv: add SPDX tags > xen/riscv: add __ASSEMBLY__ guards > xen/riscv: move extern of cpu0_boot_stack to header > > xen/arch/riscv/include/asm/config.h | 2 + > xen/arch/riscv/include/asm/current.h | 2 + > xen/arch/riscv/include/asm/early_printk.h | 2 + > xen/arch/riscv/include/asm/mm.h | 9 +- > xen/arch/riscv/include/asm/page-bits.h | 2 + > xen/arch/riscv/include/asm/page.h | 6 ++ > xen/arch/riscv/include/asm/traps.h | 2 + > xen/arch/riscv/include/asm/types.h | 2 + > xen/arch/riscv/mm.c | 119 +++++++++++++++------- > xen/arch/riscv/riscv64/head.S | 40 +++++++- > xen/arch/riscv/setup.c | 16 +-- > xen/arch/riscv/xen.lds.S | 11 +- > 12 files changed, 160 insertions(+), 53 deletions(-) > From xen-devel-bounces@lists.xenproject.org Wed Jun 07 08:00:06 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 08:00:06 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544438.850226 (Exim 4.92) (envelope-from ) id 1q6o5A-0002DR-2n; Wed, 07 Jun 2023 07:59:52 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544438.850226; Wed, 07 Jun 2023 07:59:52 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6o59-0002DK-W4; Wed, 07 Jun 2023 07:59:51 +0000 Received: by outflank-mailman (input) for mailman id 544438; Wed, 07 Jun 2023 07:59:50 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6o58-0002DE-9n for xen-devel@lists.xenproject.org; Wed, 07 Jun 2023 07:59:50 +0000 Received: from EUR05-DB8-obe.outbound.protection.outlook.com (mail-db8eur05on2062a.outbound.protection.outlook.com [2a01:111:f400:7e1a::62a]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 46583ede-0509-11ee-b232-6b7b168915f2; Wed, 07 Jun 2023 09:59:49 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by AS4PR04MB9337.eurprd04.prod.outlook.com (2603:10a6:20b:4e5::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.32; Wed, 7 Jun 2023 07:59:47 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.030; Wed, 7 Jun 2023 07:59:47 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 46583ede-0509-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=TPnyfHi2Dxv/5nEk/ywkeoMhsL+Y7o4g3R0RWOw3oF+zVN5V2Q+9N+m3tEACU4wg4ICnRNCdTweoqdzOBhxyTqH26xGVgk4WVLo8ra3e/Ovi8NY08cBEGIwWOyWbWKBYbtpK6hygLY7/eDSRqiibc7M4W8dYVEViXKj5ZyedSOXcQlrkvGIlV66NUSSzRf8BZqSbAU5ebAJ/DWCvdOGJMa7Etk0defKJjxgrUC986BDd/dYC0Bkj3VkQfUXxli9d4Av7DYw9xW+TNKAMVhgwE8/8S6XzYhi8l3dP4TczTAUZyTjTy+5Ubjrfs47+KGAdDgIiOIlyMnlcLvYbmSxoug== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=zf8NJiitQcqSXr0G/SCMmKgkqguEKzJtyTQSegb1qsc=; b=QEfJ6tfaXnnDMVpo3BDerdBPuYAYHGnD33c5hNVjs/mcQsnZTzecPR0AvCZZojBPVruRN/oOJWqRTz9dFoKvjYQD/YDlY7C/k3FPepcKUYjU1feUY3JpwP7iFndk/BQEdb0F1yk/0MB7kyoVH6+E/SUlEkXmYahuq7yzQqK7hoYCdtio/wNVjvAfziU/j3ANrfCpxIkRK5AN+c0C7JjURHwW6Z7pxj+qdwSm2ikqwWMt0xbUli6pvnWE0VrKvhasmpZc9dqSMofEtGmmDYL6hFQQE1eIEMCvV9rEyC7rEzpXH8H2QsLoIzs9Prm4d0qGKfXlu0AB8OcGrd37ceKCCw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=zf8NJiitQcqSXr0G/SCMmKgkqguEKzJtyTQSegb1qsc=; b=iA4Nkm5mvADldWK8Keg3YAPRgVLHKRjRlNPdTOBmM2ArEMjzw2pW4lAiyVIRtC0bka18KcbDNJpYu0LOP3KNBs/Ug3eo3omrhlB7zpEjYjlE1MwmkpMLdSIpGAPQq+CRJVGtc5xNJrLDqZ0iJ5Hf23qfDLLQiemLplDTJ/000Wp4pIIneGDlu91AsDmPtYHK85U9QV5QcrUc73k3svuX0IygbbC6V8EL+5X9TDxG0Uae5SWBwSdtP9C/5hWsYhu7kjA5NdzP1KdPOq+Iry0yllt8t1cx0ZEvKoiH9xjYkkBSuBGAWvBFyjuFZUVa4p5hijTE+DRjj9WO8KpSbOPZTg== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <74765c0b-f463-896d-8f69-ecb1cf55cee0@suse.com> Date: Wed, 7 Jun 2023 09:59:47 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.11.2 Subject: Re: [PATCH v4 4/7] iommu/arm: Introduce iommu_add_dt_pci_sideband_ids API Content-Language: en-US To: Stewart Hildebrand Cc: Oleksandr Tyshchenko , Stefano Stabellini , Julien Grall , Paul Durrant , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Rahul Singh , Bertrand Marquis , xen-devel@lists.xenproject.org References: <20230607030220.22698-1-stewart.hildebrand@amd.com> <20230607030220.22698-5-stewart.hildebrand@amd.com> From: Jan Beulich In-Reply-To: <20230607030220.22698-5-stewart.hildebrand@amd.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR0P281CA0112.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:a8::11) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|AS4PR04MB9337:EE_ X-MS-Office365-Filtering-Correlation-Id: cadb3803-d59d-4a4a-2464-08db672d296e X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: QVlLhGu8rdc03m0kd8sYPQ5aJdZkfoD0imLNJkFmSLrLOysHHDxTqF60sx8vSOIljfb60HdRY3oL8BkkhOfRTWQvav8ypTv0O+zWWoLu2pY8dsjArxLaup4psgof2Tj+avOR5jc0KyB60ZKZfbU7nehVWdOcqTz2VLzdv8msZ4rXBQ+qUnNWnYBkf/uhj0JsER8f36hmO0oQfGPMZ88ZLw9whKzg6KSIX82jptqLGwjwzzjyUNMm22msNWrLxMJ+AZzzc4/XMiHqfbWZyx/lDmbbYw7L/uhCfSSr56TbrvrjQVhpBGjIY09AmXm+fWLeyfzTklEm8X0oaiC4zQz2bQstTK14Gvff2M8y1ycr2SCpiXqgOOgloN8M3trU3niE2DtqJ9MiBkEMNXsoggtjYWvm6xQ6bqr5OG/CHBdjKeEAmSuy6g8ibv3sERXGs8gX4VgVAh+6zIkW4dhdtlgIUwRWhJ5fjvcwvd6jz101wWwWe35hszVriKP2aLni6TI0z75oELjj1Mwuthy/luNx8MskiBNV3b/jkzbf6ZZg/pk2ySpCVOYRnhhWsR5e+BkkqwXdERo6ZVtNqMuGYGX6PG93MIy+Qikmg0O4cfDCuzFPAG5na86TEGsYJiRWDB+tlAnT/AjQgKbxkHqYMdmvNw== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(366004)(346002)(136003)(376002)(39860400002)(396003)(451199021)(8676002)(8936002)(478600001)(54906003)(41300700001)(6506007)(5660300002)(316002)(6486002)(26005)(31686004)(4326008)(66476007)(6916009)(66556008)(66946007)(53546011)(6512007)(2616005)(186003)(83380400001)(2906002)(38100700002)(31696002)(36756003)(86362001)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?YU9mSlQyRnFuUCtTVTl3YTB6MUtPd1g4RVNVL0NUZVR6MzVlcGFGWHB6UmY5?= =?utf-8?B?Yjh5TkN2b3FrY1cvYXNXR0wwWWp4UU8xUlhVZi9yWk8vMGo2bE43UldZOVBL?= =?utf-8?B?TmtxNjZwMmVuUDFUU0hnMlY1OUoyR3h3K245Wmp4NzhPQlZNVDFiQlUyOGQw?= =?utf-8?B?Y0xBL1NjTWpGWTV3bGlMUWIwcndyZm9uMUUxZUV3clIxTkZDTG1FdWVaNWJt?= =?utf-8?B?RlJZRVNiQnZVZjV3emJVbzY3RFFVYTdsazhaMHhVNXZrVUN5dXd0cnVDVHQ0?= =?utf-8?B?YnNnMno3QlRjMlgxSXZmNXRKc3doa3lzOStWN0pMdW9FSkR0UzRJZ3k1a1d1?= =?utf-8?B?b0FGZXA5Y1FpSDZiM3pkSU5LVmNHMzNlKzFOSytaSXE1dnQzUEpoVWxRVDBP?= =?utf-8?B?bW92K0RkOVpOVUwrZE51a0pzd2puSWt6UnBYWnhrb245bDlCU21NcVdjRDRn?= =?utf-8?B?bnl1SUVic1hCR0dKSnNmOFBaZHR4UFFpdnBmeXIrR0RBb1RsQk5rWkNnenVk?= =?utf-8?B?OVZ4bjVWOUp2ZjNKcUlVZnFuYllBQ0s4bktsTWRKRHhyZThCVTMyRlVmY29y?= =?utf-8?B?S2E4enpIVDQ2dkhXK01PUGlDTGV3a2FTVEVtRDBxbjlYZEZnZGpxbHowblY4?= =?utf-8?B?ckRDcWlzT1QvVkx1NU92Mk1LUWFFUTRPZzFWRTF4VmFGWlVHSWwvQTBoZkNk?= =?utf-8?B?VW81dUo5YXNaT1JFRlMyU3prMXpXdVBBbFJnUy9nV0dVeEpCdDkyZ2M2RWRl?= =?utf-8?B?NTNMMnVNUWRMaW53R3FyNXZ2cTNhVlhaUXZyQTJwNFJlUk01cDJKNXRsbDUz?= =?utf-8?B?azkyMlNFZEZLZVhocWtTRHR3SlN0TFFRSTBhTk13cVlGZzVCNkEvTUhBWExr?= =?utf-8?B?b09nM2lYSVYrQXYrOWJjRURXVnV2bEIreWJvOWVJMDNNUjhwNE91S3Y2ZWh2?= =?utf-8?B?Z0IrSXFyTmk3ekg3dXhwZElKRHQ0Tzc1SkFKeXMxMk5iZ2pIVWIrSGdhMzFt?= =?utf-8?B?TTZPdVNKRzFJaDV3RjhzMG90QytlamVTQkI1OHBaNGdIMlBRLzhReWRhVFhS?= =?utf-8?B?UlQ4NlNjWWZ6UE94TFFwOHR4aEpzNllONHBYOWZ2UzdEZGIxd3BwS2Y4VE9y?= =?utf-8?B?dGRvTUZhek9Fcll1TlJrcyswY09pdnRyTjZwZFJnSlVDUWE2SVBlaCtsZEFH?= =?utf-8?B?c2ZpMjE3MmlZaXNkYXB5NFR3cjlRRVN3by9sYVczR3drM010SDZRWkVuOWJa?= =?utf-8?B?UEp2WE1aTTVrUWorWkcxUEY5dkJrM0RxS0ZuRnYzWWFPbVFuMkEySVQ1eGFJ?= =?utf-8?B?MzdLbEg1Y2NlOVUwcnc3RVp3M3hjdDM3Y2I1Vk5DOU1IUDRPR1g0SFdJUHVy?= =?utf-8?B?aE13UHZZQUJtSGxJV3R6TkhJVjFrcG1wLzgzUVFZMENFU3RnRnJhTERCRzBK?= =?utf-8?B?SVZ3cVZFS1lkNWxVMEJpTHNFVUlNTGlBZndmSWgxMjlTNWZ3cm9LWHZvRU5G?= =?utf-8?B?U0Z5emsreGdYVStXRlAvbEd4SEFoSlBuR2RUb1BaeTZnUE1QZFpaS3gyZTRM?= =?utf-8?B?MU8vdDNkSXU1dExhczZySE52NmpDSGgvVXlCSmYwWmhPY0VCRVpNMUIxNHZS?= =?utf-8?B?TXlZVk9jdmNBblQrbE1WZUxLTWNva25mQm5qMFo1QXJ5YnRESTlTZVp0WENa?= =?utf-8?B?dC9RN1g5RkErbGQ0a1QxVElHNkpCeDNzRHhOSytEK2pTbkkzUzFmcnhZYnNR?= =?utf-8?B?bzF0cFZFckNNTlQ2NVBjbUlpeEdqeFpLZEpTTkFxM1dvQys5TVRKV21SZEdy?= =?utf-8?B?V3dIUWdud0J1TFd1Tm55T01vMndhekR3VGlnOXU3UUZ0MWxPczZvVEJ4K0xP?= =?utf-8?B?YWZ6clMrZTQzVG5WZmc2aVFTbnE3cEplMmZlQk5oWUM3ZGphYTgxYTFGVWxE?= =?utf-8?B?bTd3d2FtK3NkdjV0NC8rZUhtL2NKNGpVeE0xem05ajdaV2N1bUVmaHlsVlRh?= =?utf-8?B?OW5QUFJSUTFFb0dKSGlmTEhWM3lhR0FNYTMyelV6N1E0RkdzT28yV1JZREEz?= =?utf-8?B?NXlaNC9iMm54ZXpxUUxvanVENEdJQnVOSDN4OHVGemtKUnNpaEw0QWhnL25n?= =?utf-8?Q?ggVuXcLCTkorz7LkRNIkcUfa8?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: cadb3803-d59d-4a4a-2464-08db672d296e X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Jun 2023 07:59:47.0517 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: QSUr1LP3KJuxNxNJYe9oMIER6UGeztxmUaz1UHQSSTNSgyKjSj/KuzpHKiD3PvQ32uW0y1Fid4s+sPDlpcmlcg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS4PR04MB9337 On 07.06.2023 05:02, Stewart Hildebrand wrote: > --- a/xen/include/xen/iommu.h > +++ b/xen/include/xen/iommu.h > @@ -26,6 +26,9 @@ > #include > #include > #include > +#ifdef CONFIG_ACPI > +#include > +#endif This header is supposed to be usable without #ifdef, and then ... > @@ -228,12 +232,28 @@ int iommu_release_dt_devices(struct domain *d); > * (IOMMU is not enabled/present or device is not connected to it). > */ > int iommu_add_dt_device(struct dt_device_node *np); > +int iommu_add_dt_pci_sideband_ids(struct pci_dev *pdev); > > int iommu_do_dt_domctl(struct xen_domctl *, struct domain *, > XEN_GUEST_HANDLE_PARAM(xen_domctl_t)); > > +#else /* !HAS_DEVICE_TREE */ > +static inline int iommu_add_dt_pci_sideband_ids(struct pci_dev *pdev) > +{ > + return 0; > +} > #endif /* HAS_DEVICE_TREE */ > > +static inline int iommu_add_pci_sideband_ids(struct pci_dev *pdev) > +{ > + int ret = 0; > +#ifdef CONFIG_ACPI > + if ( acpi_disabled ) > +#endif ... you don't need #ifdef here either. > + ret = iommu_add_dt_pci_sideband_ids(pdev); > + return ret; > +} Also (nit) please follow (partly unwritten, I admit) style guidelines: A blank line between declaration(s) and statement(s), and another one ahead of a function's main "return". Jan From xen-devel-bounces@lists.xenproject.org Wed Jun 07 08:11:06 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 08:11:06 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544452.850238 (Exim 4.92) (envelope-from ) id 1q6oFr-0005CT-Oo; Wed, 07 Jun 2023 08:10:55 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544452.850238; Wed, 07 Jun 2023 08:10:55 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6oFr-0005CM-KL; Wed, 07 Jun 2023 08:10:55 +0000 Received: by outflank-mailman (input) for mailman id 544452; Wed, 07 Jun 2023 08:10:54 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6oFq-0005CG-95 for xen-devel@lists.xenproject.org; Wed, 07 Jun 2023 08:10:54 +0000 Received: from EUR03-DBA-obe.outbound.protection.outlook.com (mail-dbaeur03on20622.outbound.protection.outlook.com [2a01:111:f400:fe1a::622]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id d22bf7d1-050a-11ee-b232-6b7b168915f2; Wed, 07 Jun 2023 10:10:53 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by PA4PR04MB7981.eurprd04.prod.outlook.com (2603:10a6:102:c0::24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.32; Wed, 7 Jun 2023 08:10:50 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.030; Wed, 7 Jun 2023 08:10:49 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: d22bf7d1-050a-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=UZ5XbWa3mqX3u/aflwr0x6Ri3xwhHf46qelthap06K8hTcao9Cehq+og/6AeHhedbov+85c6hwGxXBw5MOCzcBOawWdMmkpDIluYSttXwovLMUNtue2pkX3X0/qPzNl02dYPoTn1mKgihRumSIY6yVI4yqcySp+FpmNMBSwpS9J3461IC8W0yEa48o2yTtVyblVLt+ULiD8G0PWNIAv/+msYA9pa9+xBBnrsXH+G/TeUaY2QiD7pesNC7FLBG7znjS4Mn4ZXKLxTi9KxkoyVK8YpKjwCIU4lOM4xWJ9mE3KFm7dLWIoNPaB7fgSc0/g7hHEYiCQqFaXRvDXSoTQJnw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=Rts7tco3YKsPHk9pqM0ENIs+7VFWwdimW9K3bGzOssc=; b=JwYxY9PCzjoK/hCKi3U4BB9I+WsU26c5k93pOak2HIJPBOcGpmRJLOp0EnqH1/+eiByVlO/xU9NtjGWjVC1l3CKzTcrnegsPbldDEJeMfggn1j2OvhGV7OS0jhdLrQy8GtLacog70ja/Dl+piz8BiCXXH2WMC+KlhS/+bjHuCAbERbrwC4DexD86wuFMoow1VA+V9F56YNKof3z8uWf6KwvTox7NeoxaO5kbHwxhAajgGAGwnvVYsf2myhM26AMtT2okNHi1fIuwXhQ6xVbCgHCVL2CqB5KoEac2Xxw3uHeX6x5faHhdz6tUZsADArsyiXkeRUuD/KT+w3oz1xXuig== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Rts7tco3YKsPHk9pqM0ENIs+7VFWwdimW9K3bGzOssc=; b=DWIUSCRCDOB2jD8KpNREn55lr7KKBsqtq+ztWQ2erQogG3+z34KSqayIVqEjwLKyTKlbZ2K32bBxHyr284k4veD5XNU2nOC9LcMuL3JfcwOi9rY4vowfFvXaL62flX8pAcc+yKgh8/kgRBWKZdyv8nNUQnjkbg51QtQ1Gqwrp87qM+tWxlDJf9BeXZkmyYyhpCv0i5fKjnmGpgnPWqpPlqT7LFoJhtmKCmosyN5UTW4ztbz+tR9PIYZgKEB/uuYhmnbpeR8ykl2keeN1NcE7/o1DABkwtFCLFG6VbcZEwu1DvNZj3wADnoh6OyhjUDlyjLTCky1DomZmYYvydkcaaQ== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <1f356d3b-7068-088a-a59b-eadbfb3f59cd@suse.com> Date: Wed, 7 Jun 2023 10:10:50 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.11.2 Subject: Re: [PATCH v2] xen: Fix incorrect taint constant Content-Language: en-US To: Andrew Cooper , Stefano Stabellini , Julien Grall , Bertrand Marquis Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , Volodymyr Babchuk , Xen-devel References: <20230605112303.1764183-1-andrew.cooper3@citrix.com> From: Jan Beulich In-Reply-To: <20230605112303.1764183-1-andrew.cooper3@citrix.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR0P281CA0224.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:ac::10) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|PA4PR04MB7981:EE_ X-MS-Office365-Filtering-Correlation-Id: 4121312e-8175-4a74-e318-08db672eb465 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 3bv+S4Futx41DPpTDdd9gtDoyweTtE/cmOdArV901DrM6s+ze3wF09fQMvwVAcrjI0anBjJg2n14rD/vsHfGf3UaMbKzjD1H5xBLbccBx/Y0nBKzKg+OgzNHrEWfYvVtjDQgrZgQTR/WDN4tc5LDhZ5ZE5CP22m2/DFcvFcRCUzWZ3vvgzSUyxbAY8ndc6ieHbYNitIVi9OXGnu7SIguLMZXocFu1K6XK+DZV5JRGFD1tMZEkaMp529amU+YFkuYJn05VYdpE/EairTuvoNRx/QorKtszIEpA7ewGDQJtZFjsmB8P7jm4UqO+DKrH8AesOrdfM7NK5AqzjcVgL/JbOA4dOr5uHqEdZF+z+cpPmvoi72r9aksaU0v3X8nmNd3Ldmkg737Lrm0yU8hMi8MIhagkeLQihvrfo14OcUYNeakPLv4Ff+OtNSdTiJF/Ob/EDr+2pSYs1Mty3N6yQhiXgLqFHSrozUILpnMDr/UNEYsZQNrpRXE3AbTxq8jTWmRFLperw2c6KU0yzHzhdzUKRHhHc4DbcjsMGmIC9ZVhco/8ba68Cz6/Hr6CG7AX50zHpJHoMtTpg0VHLKNR5payZAFqXt2T7Sm9Ni+0zLT85ywy4QcX8dOF5NtcjEWAZeVO5u55fXfdATMRVF6Nu8fNQ== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(396003)(376002)(366004)(346002)(39860400002)(136003)(451199021)(83380400001)(110136005)(478600001)(54906003)(6486002)(8676002)(8936002)(4326008)(66476007)(316002)(66946007)(66556008)(31696002)(38100700002)(5660300002)(41300700001)(86362001)(6666004)(36756003)(4744005)(2906002)(6512007)(26005)(186003)(6506007)(31686004)(53546011)(2616005)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?SXRUaC9iTzlydENTdS9xeDBTZUplWHlIMGRhSzBSKzZ3a21mUjVPbXd4Rno4?= =?utf-8?B?Z0hIZ0k5WHFLdHhLZmtXTTlUUGtCYS83V2l6QTVoSjg5VjBrelhZdW1BZXNX?= =?utf-8?B?RDZPNmx2TXhkaEo5TFhJQTFFZ09uYkhUWjJTcVFrenJCcDY0SDJMb09EYmdL?= =?utf-8?B?MVZyK1ZUOVlZdlhyV1RtQlNHMmpQMDhnRTdqUkJROE5ET1dsb2RVcDFVejVs?= =?utf-8?B?Smwrb0lMZml0a1pjUytwRm44TnlYRGdTUStpc2RnaTNxZ3U4S2RTdytrODg2?= =?utf-8?B?WXZSV1YrK1d4R0E5MGFWWnp6Z2NhVGxIQ1pWN010c2w5VEhiOWh6WG92NVZj?= =?utf-8?B?T0I4eTJibStiNUJjNUQvTk1BajN0ZERDcFh5RDl4QmNoVjZzeDJ0NS9LeDBa?= =?utf-8?B?S1ByRG5SQTdrZUtneDREVkhVU3B3SjhrOVE0dWhnRDJnVWNHSVFqd2VWOWFM?= =?utf-8?B?K1J5K2VJcThOS3RKUkhHV2JRUjBTWFNLSEEzcTMydmw1b2JCQ2RiSU9YY2xO?= =?utf-8?B?QkcrQzVhS1Ayb3dQN2JDZEhRNzJvWDhsYU9ITVE2YktaZ2gyM3JXNEVGYTZl?= =?utf-8?B?UzM4bEt0ZitMRWFMT3FEbU44QUl3dW50RkdRaTNhczlVOFhDS253RlMxd3Rj?= =?utf-8?B?QVlyUmNBZXFldDVYY2NPMGxJeXRkTGoxMTNyS0dJNk55ckR1Y2lTL1lSZElp?= =?utf-8?B?VHk0Zk5XbjM5bnJwSGo1dHE0ZUlEaVpzL2M3anNQWHQrVVZHUEhkT0V4cmNX?= =?utf-8?B?Ty9jajhkVDBOby9wbkZubGl1TEtPb3A0Sy8zM1E3OHdCSGllM0ZwdW5IVjVV?= =?utf-8?B?V0QvdGZQVnFrQS9Kcm8wNk5YckZYSVNsSjd6N3FjbjhhRkp4ekJ5Wm5vR1h2?= =?utf-8?B?dFVCWXEwenJ3S1JCbnltR0J0VzY5UzU4WWEvcjk1Q1Z0ZEdMbVI5TUJDdzlE?= =?utf-8?B?WE5hNExycUhVZ3ZwVVdrRWI1M0VaZHdEZXNSYzVwTDJrUFFXNEdEMjQ4THds?= =?utf-8?B?ZUo0aTltUFpPWEhQZEJ1bjdXU2hsTy94TWlINGpHSHhhZkRIYXVpRHFHcDhp?= =?utf-8?B?QnArNVkxRzJzZm9SazZ0NEhHKytCNGkrdVc1V0hRQmwvWFlCdjJFMGtNSGx3?= =?utf-8?B?RFA3NnhaZUlmSWMvdjJLR1JzNnVma0NBTnRCWjZEY2NRVnkva0hYM0cwWnFl?= =?utf-8?B?NDViU0tjM043SVpEcGxRa0tOamd6ZFp4Tm1IQWgrZDlCemtDRGs3STZQcUpB?= =?utf-8?B?ajVrRndDdklZSmFaZW9uVS8wMytSemNxTVRBVjRWZzE5WDFyT01QTURMUnVy?= =?utf-8?B?QU5zQkt3Qk01RDkxcFRVOW01UzFPNjJwejN2M2N6RDI3T3ZwVTF3NE9IS3Fi?= =?utf-8?B?QmVrT052cGs1cE96dkkrcTdRUmRzMVNoNHZ1MUJ2cTdJYWtKMGJ0SGxld2tT?= =?utf-8?B?cWtMSkVYRFhYR0h4S2Q1L0FlTUxCNkpaWmJxS3dlbWZHZUd5N3E3RGpyd1U1?= =?utf-8?B?V1FjaGwwcEhuU2NBbzdrUDcvSGxjcVI0Z2REbDd3aTRYNWkzYTVVVGR6ckZn?= =?utf-8?B?YjZOc2RPQmh0ME1tVEo5ZTY4eEF4Vk5UL0JNTmYrSkEyNW9yUkE3WWNENWI3?= =?utf-8?B?ZTB5VzMrMEtWSUQ4MVFjOGc0YldwSkV2eW1kVEZiQ1pvY1ZhY3RxY2ptdWlm?= =?utf-8?B?Yzk4WDQrTmZpVFZTSEgrSjVyZm9LOVNQemRlNlQxdURIaEVWcHpzK3BWRXg5?= =?utf-8?B?NmpUUjBhbjJNeE1hU2dYLzlHMDRrQ05ENkpLRGRwbEJJRFlIZE02V3RNWXVZ?= =?utf-8?B?S0lqTE5UeTUvWGRPcmxhdWM5NzBBcUtJMTRZMnBwV3daTjhQWk5lSDdRUThH?= =?utf-8?B?YnhTRWpzQTBFTi8wdzBpU25lMjhXOUo4VmQ5TWUwejFjUFlTWTgxWm8zZUR3?= =?utf-8?B?RmkxK0FGTjkvdlkva0lOZmtyelRkSGNzM0RaZm5EYkZTZENXbk1Rb3FtSUJF?= =?utf-8?B?YWp4TURmWERQKzFpdStQUUEwTXE0RGhDZWNxNDd6V3hZMjFIL0ZzZEZ6a1lq?= =?utf-8?B?Y0VpZHdZaWlUSXhNVzRtb0RpRlFQb3oyb1VEaTUyNWUwT0piQTY2aHhidko3?= =?utf-8?Q?Txf+vTrzHUzdxL8njV9ibgFbp?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 4121312e-8175-4a74-e318-08db672eb465 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Jun 2023 08:10:49.8407 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: jdTXQxeY0iR+Y/9wZr/3kR6eOXTUTXDAMLm413TXZxubBUyJY+i19lPSq86uOda4h+rh7lDvpOLjOlGYm/6Myw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR04MB7981 On 05.06.2023 13:23, Andrew Cooper wrote: > v2: > * Fix commmit message > * Update comment ahead of print_tainted() > * Change the emitted char from 'U' to 'I' Just to mention it: With this additional change I'm no longer considering this applicable to stable trees. I realize that one could argue that by taking it we could accelerate learning that we broke someone (if anyone), but I'm not inclined to follow this line of thinking. If Arm maintainers (seeing that only Arm uses this right now) think they want the change nevertheless, I'd include it, though. Jan From xen-devel-bounces@lists.xenproject.org Wed Jun 07 08:13:51 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 08:13:51 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544457.850247 (Exim 4.92) (envelope-from ) id 1q6oIb-0005lc-4R; Wed, 07 Jun 2023 08:13:45 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544457.850247; Wed, 07 Jun 2023 08:13:45 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6oIb-0005lV-18; Wed, 07 Jun 2023 08:13:45 +0000 Received: by outflank-mailman (input) for mailman id 544457; Wed, 07 Jun 2023 08:13:43 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6oIZ-0005lN-CL for xen-devel@lists.xenproject.org; Wed, 07 Jun 2023 08:13:43 +0000 Received: from EUR01-VE1-obe.outbound.protection.outlook.com (mail-ve1eur01on060f.outbound.protection.outlook.com [2a01:111:f400:fe1f::60f]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 3603cfe4-050b-11ee-8611-37d641c3527e; Wed, 07 Jun 2023 10:13:40 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by PR3PR04MB7225.eurprd04.prod.outlook.com (2603:10a6:102:83::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Wed, 7 Jun 2023 08:13:38 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.030; Wed, 7 Jun 2023 08:13:38 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 3603cfe4-050b-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=mcCn4mTusHjKvxYDaeV003VfWJaK/zNKSPgOqXQycWWkDE97z2Cxe4HYngShDOy+cXZ6M7GCNSuWF8cnuEg2MCnIiaWwBVSZGUu/6K8jisP5E4Je72Vi9t15A0nqUYXhKPGPCOv3obG1qHZ9FovYqBd5WpqLOCOgcSfM8wSP5TU85qDGg7b/HOS23Xwv6xUyeq3u40xAZg/2jwu4DkN16K5BIwYgN6kKaiD/ilorAneTSC++3sfbnHZDCCzLlSen0zeR+LGJ01118uBQX2CH/lQHeptNmFq2lroUPPlPI+12YyYNTSq7Um66rF6wof1c7Z6rCCm9B83Oe3w7X+tiBg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=AQuieCQht7QvH9PfzDBJ9uA2cMqJbgzwV1uDb4MegoY=; b=h7eAjaidmfmwH0z7BkUddBVt2FpAK58LScMrRWhhWkunMqj7rkrloEmy5uFNim6sGMyh5rxDttdjn5G1UWF0TCf+p6ufD7EkguZYq5lDG5oFcSTgxQp13qlCWIBUiXoVByODY7slwZxUhnNXIUJW9CVp5ZhXuFMhuc0xwv348edWZT0q5CWkpdjiyMiXHEbnDJNpKSzbGV190T9nKZSYCIttYzTZFEvwXr01dfpysV6LAP1GsQCb5q9GS5xPYiVriStPP64gQMFvQrwuNPvobcn3KadQnXz2P+E4rmlfTmfSDdPlnr/qYnaeRpZw9qtX6HxjmjzN6AoSmAEC7erwxA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=AQuieCQht7QvH9PfzDBJ9uA2cMqJbgzwV1uDb4MegoY=; b=B0AOBGUYZm8JPxxo28lJbqz7OT6ct3E4583wzrvbljeQD39Q1xgfUN7H+MUwG3gmUrgPCquKZ6mX+8hm0OdThWW1KeSlAVCIHKcnU8J/+dV7CPCm2e1k1l+ptveakogNd8yoVHRODD1NRA235bZGPhEyw8YBjAa6LsgiIjQ6Sr9SmdsP1YcYjr5qK58vxzJ4L2yFzsO6dSky4LOV4pHiJaJI5prSEOeBvk5JxKtX5LPhvndBWUXTpBgrxt0j0IhRgzOI7R4vPngHf8oHOR3g/HywM/wurLZSUasVBZRQ21gNY/i6I3nf18/1YNOdN4whlS3/FkzEh54RQ9k8n1wHIw== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: Date: Wed, 7 Jun 2023 10:13:39 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.11.2 Subject: Re: [PATCH] livepatch: apply_alternatives() is only used for livepatch Content-Language: en-US To: Julien Grall Cc: Stefano Stabellini , Bertrand Marquis , Volodymyr Babchuk , Andrew Cooper , Wei Liu , Roger Pau Monne , xen-devel@lists.xenproject.org References: <20230606172307.38857-1-roger.pau@citrix.com> <0fd63050-7592-c308-51d1-f8445d3fbd4b@xen.org> From: Jan Beulich In-Reply-To: <0fd63050-7592-c308-51d1-f8445d3fbd4b@xen.org> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR0P281CA0133.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:97::11) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|PR3PR04MB7225:EE_ X-MS-Office365-Filtering-Correlation-Id: 2086f867-2e2b-4ebf-38fd-08db672f193c X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: tQeLZfyMd7EULpjGqW2iVu00F2jkiF5s4R0H9juamJASNd7qAlRgHthTHAPH/1Ad+3c9SwkbXE/0I4g5KZ4bBUC78HuHVvu9IhknRWcahLI7mDFodOnBzd5RPqAxrR+NFyP5d3GwTvhZkbo9iAsSIe0Ej2OU/C0FtVCP/1uc+N0eDsi8UHdQqaSFtbevPJiq7PSF1uIMmU9sxS32OU7F4bIoAtQeqplf/MeeW1DOeT+w7kYP12rcRRi5fROVB1T/nA0K1ShK7HnGhAiUO+PJ0FWkvONlG5HcHjQNJ+cmD4FRNBpXeoYsd7IInOyv2f+xQEGR4oa20FxUD8r3SU9VF/nwvX+rgXh2dcyDxjOH0sHE79ssNzq6Y38SR1Owk5m6ZIhpNFZEJY2yclJXsvD+azGh+SUG8aYWH0OB9xOVQgHOK6Lo2FdHZS+fsGCKmlLErUBEAHsI481BIqEQ22U43UhgIHUtylZsEETNCJ3pMI4onj5PfQ8oCHBuwPWTZqNeaWO3rOHCa7vmbFVlPM8Pf3Pr2WkIjh34eHej57YSUV/qndnCVSKb7WRlgZ3kCg8YRgHSs1aa9BquGJZxo5Dyd90HsRTUsVGDaGJVNqc7+pcbbTKrX3tmrEeHo7KhK3+oOW7BGnu0n1lab2XHHLz9xg== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(376002)(366004)(396003)(39860400002)(136003)(346002)(451199021)(66556008)(66476007)(66946007)(2906002)(4744005)(31686004)(186003)(38100700002)(4326008)(5660300002)(36756003)(316002)(41300700001)(8936002)(8676002)(6916009)(6486002)(54906003)(478600001)(86362001)(31696002)(6512007)(6506007)(26005)(53546011)(2616005)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?dUFHNm96ektVaWNDcTYydXVGVzdkZXFnN1lQVUhuS2ZsZC9ydVhjN1ZYZ20v?= =?utf-8?B?M09wTHM0UVhMY1N2T3NXeGI1MWxBTzlrVjl1aDlMRllLbUNaNVJZQ3gyclJl?= =?utf-8?B?dHd4NjhIOXNVdi8rZEY4R3ZBU0xMNEtjQXBweUQzclRPUDV2YXNraU9mZGgy?= =?utf-8?B?YThJaFVzOERnY0NxQkJsejJCb3ZIZEJmbG1va1ptTXJDYnJjZVptNTFxUEhx?= =?utf-8?B?ZkVsS1lxdWVrZWowSkFYUG9YWm5MZnJHZXM5WWEzNXVjZHdTN2xka3BFd0FV?= =?utf-8?B?andsZlloZzRVY09SZnR1M0lJdHZZa09uQ2p5ZXpCTmdmd3FwWEtBc25QNkdk?= =?utf-8?B?NEwxSEpyRnM4bC9LZnNDKytkVE9PSjNxZGhkY3ozVFBkOUhZRnpuSzNoS01D?= =?utf-8?B?eDJsdlp5aEQyUWpkekVUeG8vdXNYQlc3QjVXQlZQeVhJMWRXeCthWXJtWStK?= =?utf-8?B?KzJqNjR5eEZtck1wcGJkdlQ4QlRiOGZUV3pDTy80dDJ4eVlLL2ozSG5tRCsx?= =?utf-8?B?WEdiVmtCcVlZUmNXNEdQV1Y0TzFrcVlLSHRWQ25BT3BaK3UyNEFmSWZJWXRE?= =?utf-8?B?ZU82WnppS01sM29tL2VtSng0d1R3c05ldHhYa3B6ZDlxaExTbE02Vm5yeWUx?= =?utf-8?B?N0dya0pHR1FoTjR5TnEzZnVtZEUwaCtQVGw0VlJ6RlM5RzE4SzdubzhVN2Ir?= =?utf-8?B?azRmRGw2OG1JRy9KVWU4T2w5eHd4NDVkcUFGaUxFbGdGdWt4TWpzcndkdkFx?= =?utf-8?B?NWF2T2R3WmRUblZwVDA3cWx0TkdBZWNMZU1GcXN1K3Fpanh1dnAyT2lxcm9L?= =?utf-8?B?UGl1V3dPaWZMUkdzMXNOZ0htbytvWGlhbjFKNlBsbS80dkI5Rkh4UUVGME81?= =?utf-8?B?NG1OaTYzck1VOFg1Y1J1U1BLbHVHT1MxUzBSR2JJS2lMbTFzbU45VnIxdCs3?= =?utf-8?B?aUZ4ZDNUS2NGZlRHL2pCV015SlRXSlJZV3dyT0M5elFyZStqRXJIWkprNlRn?= =?utf-8?B?WHpLT2RSektRNXRwS0NreE80QVNnUUV0bFFtcHhXSHptMzZOL2tVbXdkM2FY?= =?utf-8?B?UkFlQThUT09BTHlLQ1VEZUY3d0I2cFpwUnVlZVVIZ0loY1F0R0I2WXd0Yzht?= =?utf-8?B?YnFaYVF5Qk5IVmhUT3owOFZnKzFiTVBoUmtUdG8yQWs1ZUJueC9yMFIxTVg5?= =?utf-8?B?M2I0aXZjZ0YwSG40QXdXU2ZaYURacnVYblBrOE1CNitwS3ZGK24ycGpUVGtL?= =?utf-8?B?S2JQYjZOaWRRNUhTWFJIUTh1RkJxc2hiZTQzeFVPbWFKL012NEhPSGtvbGJj?= =?utf-8?B?cWpCOU5ZNmZaZmlYbUcwWnZRNFF2RktMRkZLUGJ2WGdpYUk2L1ZUdDNGOGc0?= =?utf-8?B?Z0JyU0Q4UWNROEhtT0d3UEZVZDFNVVRPUUYzMjBUTFhhODJHNHB3ZWRDaDFV?= =?utf-8?B?VVJ3cmdtZHpmSHhqaDc5Ym00Qy94dXg0cEJYY1BRUnBUbUNoRUVKeklUVHl0?= =?utf-8?B?V2xpT0hoK2IvM2xVcWJocE4zR0pDK3dtK0JUU3VGNGIwdFZkTzVXTEx6MFpj?= =?utf-8?B?STkrbGh3QldLQ0dGRTlTcVgrY2VoRnhNenNQNFZGdmVyOXFlOWsyT3ljNVhT?= =?utf-8?B?NDlUbFU3UGJoZ1BsV1VrQjJ4emdLMWxJVnZRUHRuWlRuUElRNkRSeXhxUDM0?= =?utf-8?B?ZE91WmxCMVpvYU9EeTkxWllqT2RKNWplNlVXbW15THN0a3ZPMjlkVi9uRm4z?= =?utf-8?B?U0tQUW9YeE9jbXh4MnhWWk1PVU9TV0VkU2RidVVJbXVURXV0SHg5UVVsQnd2?= =?utf-8?B?MFEvQW03ZFVWSFVQWWVwSEtzb0FZYThUeFNEZTZoNVlsTmZGSjNBQ3Avd2ZG?= =?utf-8?B?b3ZVMHZEcTdieEg5VG5nMHdjSGFIc3JmVzREOG9pRnJuOG9GWE5pK2hGMyt5?= =?utf-8?B?Z1l6M2pLZmV0VVVxdXliVlJoLzFucmFkWDlvOCtRU2huamlsRFg0QTZtNHBD?= =?utf-8?B?RjFlbW55WHl5blhBcThmSm9JOXFoSWNwb2Q5QjFSUTR3dktZVi9LZ1FBZitn?= =?utf-8?B?T21qZkF1TVNQK01DSzV1aTQ0QkZ3RzRGdzNDU2JCbG5EK2cwTURIemh3U2Ni?= =?utf-8?Q?8nk01fM2zqvTVDMCim4j13z8N?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 2086f867-2e2b-4ebf-38fd-08db672f193c X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Jun 2023 08:13:38.8806 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: s1HWq/9P6YySyxtTCFR8OQrjevYM27SGOxTDY74hrL9L9uLhV6UCT4J2iFp2plTMrFW5870hSCV4sXhnNx2MoQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PR3PR04MB7225 On 06.06.2023 20:10, Julien Grall wrote: > On 06/06/2023 18:23, Roger Pau Monne wrote: >> --- a/xen/arch/x86/alternative.c >> +++ b/xen/arch/x86/alternative.c >> @@ -358,11 +358,12 @@ static void init_or_livepatch _apply_alternatives(struct alt_instr *start, >> } >> } >> >> -void init_or_livepatch apply_alternatives(struct alt_instr *start, >> - struct alt_instr *end) > > NIT: It sounds like the init_* was a left-over after commit 67d01cdb5518 > ("x86: infrastructure to allow converting certain indirect calls to > direct ones"). Iirc this was intentional, to avoid the need for an #ifdef. Jan From xen-devel-bounces@lists.xenproject.org Wed Jun 07 08:14:41 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 08:14:41 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544462.850257 (Exim 4.92) (envelope-from ) id 1q6oJV-0006IJ-DO; Wed, 07 Jun 2023 08:14:41 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544462.850257; Wed, 07 Jun 2023 08:14:41 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6oJV-0006IC-AF; Wed, 07 Jun 2023 08:14:41 +0000 Received: by outflank-mailman (input) for mailman id 544462; Wed, 07 Jun 2023 08:14:39 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6oJT-0006I6-LI for xen-devel@lists.xenproject.org; Wed, 07 Jun 2023 08:14:39 +0000 Received: from EUR05-VI1-obe.outbound.protection.outlook.com (mail-vi1eur05on2062d.outbound.protection.outlook.com [2a01:111:f400:7d00::62d]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 574ff9d3-050b-11ee-8611-37d641c3527e; Wed, 07 Jun 2023 10:14:36 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by PR3PR04MB7225.eurprd04.prod.outlook.com (2603:10a6:102:83::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Wed, 7 Jun 2023 08:14:34 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.030; Wed, 7 Jun 2023 08:14:34 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 574ff9d3-050b-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=PvKZdhS/cOOl44uWDeswD3xxO/XisYgkV/vDdRISXRMvUGFzjPIQO+HDtN3Ps5VG0x3Tyrv34IBEyuxhAyrOZ7Tg7ACKP+Nx/8nmM7h4iFpURjORC6QmwGmLTcoVJeHKE323LmI8+wOfaOXJT3b9+XygpleFWQ4DnMCcmypwqJgTHpIqBgkIv25+NSp2rXZCiXPbGfLIUTPh9sKUNphgfEWiJ24uXN8v92DX0dU3Sh47MRfGRmlxjyotFp7d/Vn7YUiHf5nKcblksv9zLZCY1nMjsaUeqo5gQxGYaeXQ0ogjf5YFrEVLrilZZ7joeaMOhKa0Tc4gU0lb46DFPLNjaw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=1g3ISeRa7VRJey0FbHw9Y292xv4ZsdhCeKGZuofxBTo=; b=TJlig+ce7UQ9ZITf45xxDaxtOG1rxv/9+pxTh/gB+DqCetcTL082KBTjnJx2671GHmLJfGr4wXlluqYJk9hsL5VHNVQQBHBBaJea6PgSdnVpXU0/75g0y2oYBEoUvD41LCvmjRuhWgpIqapN5jYmgYCtUFegnNN1R9KsLOrBAAg2Mo5aUa3ZVM6nDo1vPn9dZoLNShBMhzjbqs5Ng5FOQCiuWowQvO7wpL2o3Df46nrmXmIDbUdgvI+ISo4Ovvv4Ja3stTBaZq05JPj0LB5xjFcFeDPOm867g9Kz58LR5tiNw/SIvG0DWTMfmqItGDb+TSExQX5a7WIXCvMaC9cI2w== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=1g3ISeRa7VRJey0FbHw9Y292xv4ZsdhCeKGZuofxBTo=; b=u4LN9jHqByKX4OqtNhQ+HJuxYyb+Cs2k4bsyzcEN/qKMFVSwYvGcb6ZwliBEMjgmuP9Cv1lc5Q7ReZUxwgxVFv8iI4LlMlW0BmckQ6gZdGs3w6kARyBUvz73Vz6yNtdvbXVlCfM3NURhup5ur3qVKkUuD97Ijeae/I0hqC7ld08TWUKQiGVsJQnPobU2K5X5WTQTdLV/Kt01IZd3TAX5mJC84B79ZkrhokFZ2LbYwZfId8isPKcGGTfepvpXL1WlUuTpXAFn0kHCUy2kjHDdCedyxwT0Y5uC1rmt8ZMLWbjkHl9mo7rMS4Ug2o97UuAenrDReDWXiP3XEekl7innjQ== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <37f6c3fd-5b7f-ddbd-b4b7-c72a797531eb@suse.com> Date: Wed, 7 Jun 2023 10:14:35 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.11.2 Subject: Re: [PATCH] livepatch: apply_alternatives() is only used for livepatch Content-Language: en-US To: Roger Pau Monne Cc: Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk , Andrew Cooper , Wei Liu , xen-devel@lists.xenproject.org References: <20230606172307.38857-1-roger.pau@citrix.com> From: Jan Beulich In-Reply-To: <20230606172307.38857-1-roger.pau@citrix.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR0P281CA0126.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:97::6) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|PR3PR04MB7225:EE_ X-MS-Office365-Filtering-Correlation-Id: dc5db1a5-3a3b-430f-b079-08db672f3a90 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: xAWjWHcUHxO6/5kfc0qddCvzNpxwBJ279o0JQNatF6YYjeG+AyTy50dSEGVmVOrV0WSgbjjy/AiG27p4mIZWb52hOadPBdHmiShWiOh1hah+prYqHumqv5GW/AoSuBCgAG9ydj6yi4XrLdl1PGLYnYnkZfYU2rGzIxv8VA4YA8r3QybRHDkHUCBSZGyQ6IlAShI9ZLphx/kXmFCDh3cXv5t71Ooz8wPPq4jFDcyCw6pqM28pq5hb1fJGStTDz71481cEbNPmzZCCYgypbUFUMM/VatXxIOeYFrrpsDGHfG2ygMBEeT48lKTieo8IK1MiRE15jnmyz/B0+lVYIh7Q0IgSG4Fh/1cJgJjMnhED75zm07WZGfgk99v4XsiltARg2rz8u2CePvV3yaqLG7KI5fhIjYOv6ldJASkq5hbdLlNX/i6esaUYgzcrV3eircE+zhoBnlvitDd+DylR5D2dir7bOFaF/hF6JcQHvFrCghbjAx+rCnnleC92ahU9EiGL4qjbFtOjseJcefki8C4Xc+UfwJ8LgxpZPeuZJ/Ct47U+Tk4ckD9rLTby3zvtUuEScTUi0lHH7x41tlDvDAGGfB16xeknVNdG/SvYWQb4H7OuUSQUp4PlyhkrHMCQv1YVbIGTafKuCSWXhqvG53m5Rg== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(376002)(366004)(396003)(39860400002)(136003)(346002)(451199021)(66556008)(66476007)(66946007)(2906002)(4744005)(31686004)(186003)(38100700002)(4326008)(5660300002)(36756003)(316002)(41300700001)(8936002)(8676002)(6916009)(6486002)(54906003)(478600001)(86362001)(31696002)(6512007)(6506007)(26005)(53546011)(2616005)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?MW9HMnBuRnV5dmVmR0lPbUNPbjg1dEFwU1dyd3VKaDEvd01MM1RCU2N1ZlVt?= =?utf-8?B?NDNFa21iOC8rbDFwL2pldXhWNEpzNHJORnd1L2VlamZhV055RkNEK2RHM0Uy?= =?utf-8?B?VnFxOXVCMit2T1phSzAvZGJsWkdTQ3kza2M4WnE3Y09kYVhEcCtNcHp3L0l0?= =?utf-8?B?TzJpWVp5SythZHVPQ0pvSnhFVGc1dWV2bnVKeC9uL0JBbDgrd0hmZ0ZYSGxR?= =?utf-8?B?dHpWblovcXRwcmJINENvVWRBUEFBeWp2bEg1S3VrZHhRQkRNOWdWV1pScHc0?= =?utf-8?B?QXEybnZJS2UvNTJENjFLV2VqbjRSck1KdVlHNGhaRGZveUdoU3Jxd241aVBa?= =?utf-8?B?WjZ6ZHpmNFQ1VklIRFNHK2Uyd3dEZ2U4TUE5SWw0bEFSMm1mcWpmZGdraWhw?= =?utf-8?B?WjBMaGhub0VkY1d5dlB1S3Z1dEtpQWtpTEk0U3I0QkJLbE9nKzVGVHBPb2gr?= =?utf-8?B?eGlmLy9hT3Z0MEx4cjJkaFpUcHI4cXF3M0Vtc015MUdHYlB2ayt6RitTMUdZ?= =?utf-8?B?aGtBUi9qSldXS3V4ai9nSXZqbksxQzZRYW1Bb1VqYW1mOFRqdER4djB4MjlJ?= =?utf-8?B?VzZheFJkNGt3eU0wblJMb3oyeFFYYmJpeEhNdzRLSGtEQzZlaUZMWlN3T0kv?= =?utf-8?B?SDkwOXpEVm8rR1ozZTdDbXF1OWNEdWZ1UUtXOUZYQVAxNytFUTIra3BEdGgr?= =?utf-8?B?dHdxN0VHNVVEV1F0NXVSWld4b09YWlpoTnhpblpZa2VTL3E5SCtBL3YvZ2VB?= =?utf-8?B?NmdpTVVXa3FNU2JKcFJWT1ZudjhRQTdncjB1VHVIV2U5RGNEam5xc2tDeEto?= =?utf-8?B?dnVueEJQUkZQYWZGM2ljZCtacjhsUVVGaWY5N1BEQkREZjVYZy9FTks3VlAx?= =?utf-8?B?eVVTc3ZsaSs2Uk5tUk1wY2VFWFhFYXJ3cUV5bkdzSFZyOGM1TG9UdXR0K0Jx?= =?utf-8?B?UVRGWG9NYys5R1ZlSWt4cE9BNTN6MXJ3ZUVOZkhPMzNyaVBsM0hUeVFmeEhm?= =?utf-8?B?d2pCUGJKdkdNOGZOMDNiUWRsTWk2LzJhSHVvOHRTTDA3c1NnNm8vM1pMalhN?= =?utf-8?B?YjN1M3dwR2l0dFloUkdncW9sSXFGZzVTek4xMEVUaTAxbFVJNGtvZzFSS21C?= =?utf-8?B?RTZmZytmTFpzNkl4V2xlNkpBVVpQQWNuQVQ1MjJqbTRmM3h4V3pKNmxiR1Vt?= =?utf-8?B?OU5qWVZvQW04NndVbVFJdk5RbG5xWWVEeDFqRFVZTnRqUU8yNVFneTAwbmpO?= =?utf-8?B?QTJlQXRaUC9ENW5XbldkUTBuTVY1VU83RWJTbm5UNTdROE56UXFlNEVrcmt1?= =?utf-8?B?UFlSWHhkUGhqaS8rdDdVT3Azd3g0RmpwdmhkN2xPSkMxNitEalpQY2Z5Nmt5?= =?utf-8?B?ZHd3cUlqeHBzekpGY1F4M3RERWlIamFtdVpuRVZUQWtCUHE2TjRuemJWb0px?= =?utf-8?B?b0lnb29adEl3MzNDeUFpN2V0YllzWWc0bjM4TTdzK2xjbk5pRm1jUCt4M1RS?= =?utf-8?B?Y212VGFGdE5BekEraldjZEZ5WFdtckx1TWxhaDhUZ2Y4KzFHUTk0ek9uZE10?= =?utf-8?B?bkc0b1FwWkxISWFnYlpoSjFuVkVHcUt1ZndJZEh0L2g2MnV3K2JjSERjemlF?= =?utf-8?B?STIweElsenQwZkNhSi9VV2QvWjZjcGlzQlZyWGcxQnBYYkl2aXZKU2dGY250?= =?utf-8?B?cDZVRzdJRGMxYkhZaGZNeER1ZzN6TVV3MTJHY0tscVhkNDRhWDhFdm03ZENE?= =?utf-8?B?VXl3ek9VU3lSbmhITWo0Q2o0M3lnSzNPcGJ3dzFkaE02c2MyQUljS0pZOC9v?= =?utf-8?B?M0djaFhDRVZYWlZibDFpeU1SamR1MFo4MlVnV3J1NlZLUXIzMEFuaExiaUdQ?= =?utf-8?B?NEVTRlRyUUFjV0g1U09mR1VZSzV0aHJHNi92MnVTVG5mUEd1MmJpM3NoTDBG?= =?utf-8?B?cWhUZEY3YVBuM3ZRYkp1aHl6SWNBZk5KRWY5Yy9McHNkc2VBWmhQYTZzLy9j?= =?utf-8?B?SUlPanZlOEZkYUMycHl4SW54S2dmU2lwRFB5RlBWRXlBekZrSEJLaDFzWndv?= =?utf-8?B?TkIwd3RnOU1HakdpYUhqTHlNRDBTZTZLQVpWKzZIWUJ1S1FNUVU1czd4Vk5K?= =?utf-8?Q?KUgNr95gWeiEVuP4ub9A2O03l?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: dc5db1a5-3a3b-430f-b079-08db672f3a90 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Jun 2023 08:14:34.7800 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: uCcRVjUo3omEO8pT8FtCCsVYi8BBYNC635Vsitgtbl824lbF+PSIxP8JJc6bJtRm9xMNSGxlxI+8kKpkO/0Orw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PR3PR04MB7225 On 06.06.2023 19:23, Roger Pau Monne wrote: > --- a/xen/arch/x86/include/asm/alternative.h > +++ b/xen/arch/x86/include/asm/alternative.h > @@ -24,7 +24,9 @@ struct __packed alt_instr { > > extern void add_nops(void *insns, unsigned int len); > /* Similar to alternative_instructions except it can be run with IRQs enabled. */ > +#ifdef CONFIG_LIVEPATCH > extern void apply_alternatives(struct alt_instr *start, struct alt_instr *end); > +#endif I don't see the need for an #ifdef on the declaration. We avoid such in a fair number of other cases, keeping the code better readable. Jan From xen-devel-bounces@lists.xenproject.org Wed Jun 07 08:16:53 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 08:16:53 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544468.850267 (Exim 4.92) (envelope-from ) id 1q6oLO-0006xz-Uh; Wed, 07 Jun 2023 08:16:38 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544468.850267; Wed, 07 Jun 2023 08:16:38 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6oLO-0006xs-RG; Wed, 07 Jun 2023 08:16:38 +0000 Received: by outflank-mailman (input) for mailman id 544468; Wed, 07 Jun 2023 08:16:38 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6oLO-0006xg-3R; Wed, 07 Jun 2023 08:16:38 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6oLN-0005fJ-MD; Wed, 07 Jun 2023 08:16:37 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6oLM-0005bZ-Lz; Wed, 07 Jun 2023 08:16:36 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q6oLM-0006kL-LY; Wed, 07 Jun 2023 08:16:36 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=HfAKgVwWfwMBdARHlURlk/gaImhzx+JhUG8lvO0UfTo=; b=WGm2g5lpKb9rBscTNUC1g2YZcl ahbAG/a02eb1CPtVm12WDUzCyD3JIQqczxrdqEz3v7rea/iF7zcrO71lxE3KFR3qTWSHvIpAllyKi eSfCEI25YXMMG81i9/O93eWEF2Uz2VHAbTMhElQMazAVtkK6DFNL7Pl1dmg70i5rQgaY=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable test] 181226: regressions - FAIL X-Osstest-Failures: xen-unstable:test-amd64-i386-libvirt-pair:xen-install/dst_host:fail:regression xen-unstable:test-amd64-i386-qemut-rhel6hvm-amd:xen-install:fail:heisenbug xen-unstable:test-amd64-i386-libvirt-pair:xen-install/src_host:fail:heisenbug xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:xen-install:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking X-Osstest-Versions-This: xen=b35b22acb887f682efe8385b3df165220bc84c86 X-Osstest-Versions-That: xen=b3880c365db89051728e1de6b6889c750cbdd915 From: osstest service owner Date: Wed, 07 Jun 2023 08:16:36 +0000 flight 181226 xen-unstable real [real] http://logs.test-lab.xenproject.org/osstest/logs/181226/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: test-amd64-i386-libvirt-pair 11 xen-install/dst_host fail REGR. vs. 181194 Tests which are failing intermittently (not blocking): test-amd64-i386-qemut-rhel6hvm-amd 7 xen-install fail in 181210 pass in 181226 test-amd64-i386-libvirt-pair 10 xen-install/src_host fail pass in 181210 Tests which did not succeed, but are not blocking: test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 7 xen-install fail in 181210 like 181194 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 181194 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop fail like 181194 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 181194 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 181194 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop fail like 181194 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop fail like 181194 test-armhf-armhf-libvirt 16 saverestore-support-check fail like 181194 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail like 181194 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail like 181194 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 181194 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop fail like 181194 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 181194 test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-i386-xl-pvshim 14 guest-start fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-i386-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-armhf-armhf-xl-multivcpu 15 migrate-support-check fail never pass test-armhf-armhf-xl-multivcpu 16 saverestore-support-check fail never pass test-amd64-i386-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-xl 15 migrate-support-check fail never pass test-armhf-armhf-xl 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass test-amd64-i386-libvirt 15 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 15 saverestore-support-check fail never pass test-armhf-armhf-xl-credit2 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit2 16 saverestore-support-check fail never pass test-armhf-armhf-xl-arndale 15 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt 15 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 15 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail never pass version targeted for testing: xen b35b22acb887f682efe8385b3df165220bc84c86 baseline version: xen b3880c365db89051728e1de6b6889c750cbdd915 Last test of basis 181194 2023-06-05 16:40:12 Z 1 days Testing same since 181210 2023-06-06 08:53:29 Z 0 days 2 attempts ------------------------------------------------------------ People who touched revisions under test: Alejandro Vallejo Andrew Cooper Henry Wang # CHANGELOG Jan Beulich jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64-xtf pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-prev pass build-i386-prev pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-xtf-amd64-amd64-1 pass test-xtf-amd64-amd64-2 pass test-xtf-amd64-amd64-3 pass test-xtf-amd64-amd64-4 pass test-xtf-amd64-amd64-5 pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl pass test-amd64-i386-xl pass test-amd64-coresched-i386-xl pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-i386-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-i386-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-i386-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-i386-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-i386-qemut-rhel6hvm-amd pass test-amd64-i386-qemuu-rhel6hvm-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-i386-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-freebsd10-amd64 pass test-amd64-amd64-qemuu-freebsd11-amd64 pass test-amd64-amd64-qemuu-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-i386-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-i386-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-i386-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-amd64-i386-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale pass test-amd64-amd64-examine-bios pass test-amd64-i386-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 pass test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 pass test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine pass test-amd64-i386-examine pass test-amd64-i386-freebsd10-i386 pass test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-i386-qemut-rhel6hvm-intel pass test-amd64-i386-qemuu-rhel6hvm-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt pass test-amd64-i386-libvirt pass test-amd64-amd64-livepatch pass test-amd64-i386-livepatch pass test-amd64-amd64-migrupgrade pass test-amd64-i386-migrupgrade pass test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu pass test-amd64-amd64-pair pass test-amd64-i386-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-i386-libvirt-pair fail test-amd64-amd64-xl-pvshim pass test-amd64-i386-xl-pvshim fail test-amd64-amd64-pygrub pass test-armhf-armhf-libvirt-qcow2 pass test-amd64-amd64-xl-qcow2 pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw pass test-amd64-i386-libvirt-raw pass test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds pass test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-amd64-i386-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-i386-examine-uefi pass test-amd64-amd64-libvirt-vhd pass test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd pass test-amd64-i386-xl-vhd pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. ------------------------------------------------------------ commit b35b22acb887f682efe8385b3df165220bc84c86 Author: Alejandro Vallejo Date: Mon Jun 5 16:01:16 2023 +0100 x86/microcode: Add missing unlock in microcode_update_helper() microcode_update_helper() may return early while holding cpu_add_remove_lock, hence preventing any writers from taking it again. Leave through the `put` label instead so it's properly released. Fixes: 5ed12565aa32 ("microcode: rendezvous CPUs in NMI handler and load ucode") Signed-off-by: Alejandro Vallejo Reviewed-by: Andrew Cooper commit a5917ca28bf77a4770113446427fb22f81444b52 Author: Andrew Cooper Date: Mon Jun 5 10:48:59 2023 +0100 xen: Fix incorrect taint constant Insecure is the word being looked for here. Especially given the nature of the sole caller, and the (correct) comment next to it. Also update the taint marker from 'U' to 'I' for consistency; this isn't expected to impact anyone in practice. Fixes: 82c0d3d491cc ("xen: Add an unsecure Taint type") Signed-off-by: Andrew Cooper Acked-by: Jan Beulich Reviewed-by: Bertrand Marquis commit e291c4c3e1ec1a693e6b8de5562d6a9607ad2722 Author: Jan Beulich Date: Mon Jun 5 16:54:30 2023 +0200 x86emul: AVX512-FP16 testing Naming of some of the builtins isn't fully consistent with that of pre- existing ones, so there's a need for a new BR2() wrapper macro. With the tests providing some proof of proper functioning of the emulator code also enable use of the feature by guests, as there's no other infrastructure involved in enabling this ISA extension. Signed-off-by: Jan Beulich Acked-by: Andrew Cooper Acked-by: Henry Wang # CHANGELOG (qemu changes not included) From xen-devel-bounces@lists.xenproject.org Wed Jun 07 08:20:44 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 08:20:44 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544475.850277 (Exim 4.92) (envelope-from ) id 1q6oPE-0008Oi-F1; Wed, 07 Jun 2023 08:20:36 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544475.850277; Wed, 07 Jun 2023 08:20:36 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6oPE-0008Ob-BY; Wed, 07 Jun 2023 08:20:36 +0000 Received: by outflank-mailman (input) for mailman id 544475; Wed, 07 Jun 2023 08:20:34 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6oPC-0008OV-Dc for xen-devel@lists.xenproject.org; Wed, 07 Jun 2023 08:20:34 +0000 Received: from esa4.hc3370-68.iphmx.com (esa4.hc3370-68.iphmx.com [216.71.155.144]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 294be4f7-050c-11ee-b232-6b7b168915f2; Wed, 07 Jun 2023 10:20:31 +0200 (CEST) Received: from mail-bn8nam11lp2169.outbound.protection.outlook.com (HELO NAM11-BN8-obe.outbound.protection.outlook.com) ([104.47.58.169]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 07 Jun 2023 04:20:16 -0400 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) by BLAPR03MB5377.namprd03.prod.outlook.com (2603:10b6:208:285::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Wed, 7 Jun 2023 08:20:14 +0000 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::192:6bdf:b105:64dd]) by SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::192:6bdf:b105:64dd%3]) with mapi id 15.20.6455.028; Wed, 7 Jun 2023 08:20:13 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 294be4f7-050c-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686126031; h=date:from:to:cc:subject:message-id:references: content-transfer-encoding:in-reply-to:mime-version; bh=o9a6W6IRcG9UxBfAKeTK53ItQxdXPk8auChJrgLAX5o=; b=hQ+pVBn21FdGbgbQ9nr5mcQUws9wDqOw7Z5wLhK8Fc+hrY0k+Zxz5hdM wZ3O+SarGB3qQF7Skv5skeYjPxTS+/QXU8AxjtCk93dmA8SuRRFolKowx Dc0dEUriQqPbiQC1427mUH02K7FMeAkTY09JQUhinno+M70aS02sztSPB Y=; X-IronPort-RemoteIP: 104.47.58.169 X-IronPort-MID: 114385224 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:hv9wvqrZruozFl7eaZjqBXfnoBJeBmJaZRIvgKrLsJaIsI4StFCzt garIBmPbPiJYGf3fYx/Pti/p0xS7JWDy4BkGgFvqythHyoR+JuZCYyVIHmrMnLJJKUvbq7FA +Y2MYCccZ9uHhcwgj/3b9ANeFEljfngqoLUUbKCYWYpA1c/Ek/NsDo788YhmIlknNOlNA2Ev NL2sqX3NUSsnjV5KQr40YrawP9UlKq04GtwUmAWP6gR5weAzyZNVfrzGInqR5fGatgMdgKFb 76rIIGRpgvx4xorA9W5pbf3GmVirmn6ZFXmZtJ+AsBOszAazsAA+v9T2Mk0MC+7vw6hjdFpo OihgLTrIesf0g8gr8xGO/VQO3kW0aSrY9YrK1Dn2SCY5xWun3cBX5yCpaz5VGEV0r8fPI1Ay RAXAAwDa0yqu+G7+u6ES85opu48KszpZYxK7xmMzRmBZRonabbqZvyToPV+jHI3jM0IGuvCb c0EbzYpdA7HfxBEJlYQDtQ5gfusgX78NTZfrTp5p4JuuzSVkFM3jeiraYSEEjCJbZw9ckKwv GXJ8n6/GhgHHNee1SCE4jSngeqncSbTAdtOT+3lrKQ26LGV7i8MARMbVmWFm/+Wk36TW+thK U4K0RN7+MDe82TuFLERRSaQrHOBvzYdXcRRCOww7AyRyqvS7B2dD2JCRTlEAPQvpMUxSBQp2 0WPktevCT8HmLSaSlqH+7uUpC/0Mi8QRUcZYy4YXwYfy9ruuoc+ilTIVNkLOKKwy9H4Bzz06 yqHoCg3m/MYistj/6Cy51XOmT+vjpnPUA8u5w/TU36l7wV2f4qsbcqj7l2zxfJBKpuJC1OFu 3MHs9aR4fpIDpyXkiGJBuIXE9mB4/eDLS2ZglN1GZQl3yqi9mTlfo1K5jx6YkBzPa4saTLvJ UPepw5VzJtSJ2exK796ZZqrDMYnxrSmEs7qPs04dfJLa5l1MQWBrCdnYBfJ23i3yRZ916YiJ Z2cbMCgS24ADrhqxya3QOFb1qI3wic5xiXYQpWTIwmb7IdyrUW9Ed8tWGZipMhihE9YiG05K +piCvY= IronPort-HdrOrdr: A9a23:WsiKNq7f0Egz0g+ZOQPXwPfXdLJyesId70hD6qm+c20tTiX4rb HXoB1/73XJYVkqKRQdcLy7Scu9qDbnhP1ICOoqXItKPjOW3FdARbsKheDfKn/bexEWndQtsp uIHZIObuEYzmIXsS852mSF+hobr+VvOZrHudvj X-Talos-CUID: =?us-ascii?q?9a23=3AT63euWr6OM6poj2yUDP1yDHmUfwrdyH08HTdGRO?= =?us-ascii?q?HCEFtaJeKT1qSoawxxg=3D=3D?= X-Talos-MUID: =?us-ascii?q?9a23=3AelLQ6g5f59TI35LNrYgfmGVZxowr/K2gBUMzr68?= =?us-ascii?q?AlNC0GCxJBTWfkh+OF9o=3D?= X-IronPort-AV: E=Sophos;i="6.00,223,1681185600"; d="scan'208";a="114385224" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=TeFQp/wQ2cZmyjfWMKDOXP0csNQ3uF2ZDxXdgdgOpQqjc8RiLNK+lACAvD0cO1aDVPzXoJn2+PDTpQEMa2dp5BWQIzNQPR1HnTZMNoTP4XKw4hWiA5yzsLOrN4gNnt3xy68oXVLHD3rYPMlfCXOt3Uc9stDjf8PCY8DXK0Npa843I8WN4xIeQj/knHAiBjAsLQnlByW38wfe5gnYLSjd2vWreImbGG4l14IV9pvTpBpZ8T34UEnpvGbAITx4psH1MvWxBtJY9Tvvz4bh/iRbEGxTP4MV2ijIYe426/dE7PBgb/yTAaUpe5o0nxWPFkHO8lgHZ3p3oe61Y7up+/kQHQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=yznqWHdJgNxhKmCmJ6V5rM3xWpehs3izcIMgPp7Rcec=; b=GCCEL/y1lhNGMT2djey6VWmZP8Uboa/lp4VZBLb2+eNpSCDgbtc/oLFs/Y+mKErd72YykxaGlU6fMm50GBBtoq04ARaP1ZgfMBvkatqfHLnq+ncDnB3d06cYhxPT7i/JKvIl1GAfeVGNDHBo12xS9PUXxnq6Cm6f+ikAcvStLnoS+1CUbukScvMW9PPNTWnvyTuwFP030HtAMgiG9RB5D7pBplSzSU8E9fvFBZeHQ97BZaeYvmHMvPKqGN2XNBlt7P9fkitz4LVwj0gnadBToLPaLReZ7bfOvPGTzRQ+3vXc9yfSA1KMLHr3mHcBqfebyXtgOuIE+Am7QGLaleW/9A== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=yznqWHdJgNxhKmCmJ6V5rM3xWpehs3izcIMgPp7Rcec=; b=g5jYDBW+acCxFoIVloYM3SVZjEybnnDMVqH1TMBzhr4sAKa4M/ew800lyW/u+if8xia05Ivku/JPg6z1a1ESQP+S2hMDxfmI9c4FrnWxrWgjl8lW01Ka+dC4kr7+Y2lQ3LlghYXeWCnym7gdJr08xuKBaGYufJKxnxhzCg+zbfc= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Date: Wed, 7 Jun 2023 10:20:08 +0200 From: Roger Pau =?utf-8?B?TW9ubsOp?= To: Demi Marie Obenour Cc: Jens Axboe , Alasdair Kergon , Mike Snitzer , dm-devel@redhat.com, Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= , linux-block@vger.kernel.org, linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org Subject: Re: [PATCH v2 13/16] xen-blkback: Implement diskseq checks Message-ID: References: <20230530203116.2008-1-demi@invisiblethingslab.com> <20230530203116.2008-14-demi@invisiblethingslab.com> Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: X-ClientProxiedBy: LO2P265CA0465.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:a2::21) To SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|BLAPR03MB5377:EE_ X-MS-Office365-Filtering-Correlation-Id: 8e28df12-13f1-4979-ab8f-08db67300481 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: /P8A9dXt53vvMtoJgUcoEVWck6EIwSHohrdPT5QHwZAejjGecYHPtowKl7ZBVfvA6pg1ddK/dkNJzxr0wmC4nnWg9q+a9LFDTBFQJ+Z8H4Ke+va8fkkU7RCZpNwl44/MPCaZJTH7/X7DB2J2AFdRA9MPOPo8BsrZdkfgCmhBsIC1EU4O7s5tRVrvl311JamRJPvTpA5PgMrYHlh4mcRj6MsmX7FJtl6fLFQUseJ/uL+BBQvWPmhMHGxuJ/8UksaKraCnlpIy3tRjW7TGD7Jb9lmVg3jFjv2JHabdLKQvx5ufVvK0bVOPnK9Nx4goYXAYcgFDgdqRfAkVmcHo7nibmJt7y1AohIUwDnqsqqU5bQbco4GpPdNVHao1PdU+trtdo51XMCfig1m0PLPeIfNQBjKIu3I56pXjLchSF0B5+fJ1gvhaxsNdq8caPlXmZ9eRGntz02wLSe7VyRzSWHovq+EyOvvM0cY+ZTUVOWUbUb7U+shpBs+fc3tkrtEfLd6TbSDWnCwRboC1EkdQnYE/uhMfwgwxi/wP8aKdgjE0MLU44deHtF32eGlY+1vxA7sx X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(7916004)(4636009)(39860400002)(136003)(396003)(346002)(366004)(376002)(451199021)(86362001)(83380400001)(478600001)(54906003)(82960400001)(6666004)(5660300002)(8936002)(8676002)(316002)(66946007)(66476007)(66556008)(4326008)(38100700002)(6916009)(41300700001)(6486002)(2906002)(85182001)(6506007)(6512007)(26005)(9686003)(33716001)(186003);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?cjNlWC9kNk9GR1RRczhNUzYzcWVaUUFOVWVNcnYwb2hmNVMvdGdGVVQyZ3FE?= =?utf-8?B?amcwLzdnd3FsMmZ2WlpRT2hZNG9Xb1A1ZUpSbVgyTjdjZTY0em01TkhPRzFL?= =?utf-8?B?SzViVmFCWUlpdUMxdjU3c0d2YkRRbTZhUHNvNDI0RWp2ZkFvZDJBVXN1bmxZ?= =?utf-8?B?ejNVbHdDUDcwLzd4Y2F3YUJnaDA4QVNoc1pYbGcraHN2cW15enNVMGJuSjN5?= =?utf-8?B?RkRHa3pXMm42UDRnVHR2b2xzYTM4OGlpOFpkcy9wYjFQNHFkZnNJRDZXMnBh?= =?utf-8?B?Zk95RVR0UCtrVVBZdWh6T3BQODhBcCtubWxrYy9QaStxUy9lUE9nRk9GVTF5?= =?utf-8?B?OVRJRG1tZU9vTFJpWHBsb01xRTVMeVNRYmJ2eVg1UDVXNjA1SjYvQkJVbnJw?= =?utf-8?B?UEJkTzNPa0dKc015UUZZbDl3WmxlYndXRVhJZ080OWJxc0ZXSjNHMFFlQXJp?= =?utf-8?B?RXZ6RWZHczlHVmRhNW1GVnBsRFowSDBNeTlHdzdvUFRKblIyRkhoUmhSYm92?= =?utf-8?B?cU1WL0Y4VUFYdVlvWUhvbHd4aTBnN09UdEJDTkd3TnNTSXliU1RiQjhCRC9v?= =?utf-8?B?QWoyU01kdHg1b0FBT000eU1RaUpHSEpreUhZOUZMTnNsRG8zUjJCOGhWN1k5?= =?utf-8?B?RzVyTmJyanlYdllnSWJyNGE2Rno5N1N3eHFoWCtMd0pManI4dCtMdDd4cXFh?= =?utf-8?B?WFB4RFNhQkNkcm40RFVEdjJmdExMU2IyaGxXMm9tQWExbXgvZnBCU3RGQWN3?= =?utf-8?B?MkN2SXpRTlJYMGNxNi9CTmMxTWNsTVFSYXgvZDJIVzNKa2p0Y1hHd2lJMVFP?= =?utf-8?B?ZVY0TUpHSTA0TFFQZDEvSVN3N2NIZ1NQcFhlTXJrMXJKRWE2M1JXU0JhWmht?= =?utf-8?B?WkJ5dmkvcXVaRGpuNVlEUWVQa3hNbWNSR0g2ZmIwR2M3SWluWWRKZ2FjMWMy?= =?utf-8?B?SkRTektrd3RBVlpPNjcxRWg3YStNZGdNT1NjcWNSYytnZkN3bzRyUzlxejI2?= =?utf-8?B?VUgvdnJLeCtZNlhWVjFjTFhYZERwTFlpbW1OMVpTTzhwUkNUa2l6ejlQV2ps?= =?utf-8?B?OGg1WFNJOEIzSm5XV2tEc2t1UFVxcVBiQms2V0RuRTAwRFg5Z3NPalR5Ykho?= =?utf-8?B?RlE1K1psT082cEFESDQ2RWxaQUN6OEJCUkJDN3pJSDZhTDZoejVjUS9HcDBp?= =?utf-8?B?S1FXK09OQURYUlEvcVU2M3VGQWJKaEw5Q2h1L3pSQXducWRNbHFLMnExRUly?= =?utf-8?B?SWlyc1cydkI1OWlEYUxROVRweWxtQmlsbVZHS2xyb0R4MFZaQnNIbm0wVTVx?= =?utf-8?B?RzArK0VlK1d5djE0b3ZpQTRPUU5OaEFpODFGVFNva3RqMzVJUG1hQUMvWC8v?= =?utf-8?B?Tm04Yng4c1dRQ2RBOUZuYVNCaFVld2hPQWhvNkRNZGFuVjBvSW5kU1FmYk1E?= =?utf-8?B?c0M3Yk9pYzlvT2Z1ZlJzR244NThTOHBNTFluVHB4SjM1N0hsMkhCcWorM2Fm?= =?utf-8?B?Q1F0SkZ2VGoyeDdvNkpyR3RqSlFWYnFsOXVaZHU1VFRwdlN3endsU21kTlo3?= =?utf-8?B?SmNhNmg0QkN6b1hHd0QweU1EcWpWWXlRbzVYSk1ITEN2bE02bGl6Y2ZibFdk?= =?utf-8?B?ZG8zREZLaURpN0tzNFQvZnJGYkxSaDRkeGFGQmJCTWhKOU1DdEdHejJIUU4r?= =?utf-8?B?N1Y3bmw4Y3g2NTNVR3JDTXFyM3lwSC9hcU03cmtXOGttWkFBQ1Y2N3psWjdF?= =?utf-8?B?NkplTytTc0xjRFJpREY4RHQvWk5lZkc2b1dEWVk1Y0NqKzN1ZGpsTnVUOFcr?= =?utf-8?B?Z1BFNzBKUHpvMUVlNjg4Zm9BelZjeElYMCtBdHIvdy9UYTRoRlRtTnNJRW94?= =?utf-8?B?bENTZTF4UmVRZktGNjhScldYQXlnS2tZTmRJbFZYTkx3ektvL2w4cjFZd0pO?= =?utf-8?B?SEdqVDJnckh5TVRwa2paUUxCV28yTnlFOWJJZTVaYkErMS8wVE9yemJtVVBw?= =?utf-8?B?VEZ2dExtMGpzc0Zzd2pLbmV2b1loUkF6UWQ5OFVXUkVMMGlidHh5ZUQ5ZGpM?= =?utf-8?B?elUyNHl1SWhFdWdXbGpIdGkwNjVPVW94TjhYaDhjUW4xUmx4eUY2WGd3STdo?= =?utf-8?B?OVl4NkNBenhWOEd3OWR5WW5KUVJvaFpNa0lMa05oS2xlb3Q3aFYrWFBUUHFE?= =?utf-8?B?UFE9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: =?utf-8?B?RExkQjdNbEtaQURNK0Y1ZlF0b1B1M0xwWTJoV2piZFJ4K3NWaTFPTUF3Z0xt?= =?utf-8?B?WVNvVHJiendHdm5DV3VKOGtUaWZlZkVScS9xbXY0TGQyb1ltZmtPbC80RzR3?= =?utf-8?B?Wm1yZVh5M3RkTWpsRGp3ekhGVUp6RzFub0NYUDl3alhoZEpOUCtCUGZMZXFS?= =?utf-8?B?SWJSS1Y4bG45VElVNWpnVWxtYVRHdlBxYUV1eGNueHNDYk54RDZlQmJ6Q1Rx?= =?utf-8?B?cmVybWZaQjRjcG9LMjc2ZGIzM2RVTjVDU0RuYlFlbWxXUnhpcnc1L0VQazU2?= =?utf-8?B?U3IyN3lyMnJYQ0pHQWRVeitibUFHOVJva3JRWXN5eFpvc0pQc2FJN09xL2xN?= =?utf-8?B?dnZZRVo2TFh6aGxZWFo2eERpeW5KSXZxTDJWTG85Mjl6a09mT1JaVStJbzFI?= =?utf-8?B?RjE5Uno3dU54b3ZqcVZpRzZMTitwOUgrZ294YzEwQTNDVG1pTXcxQVFmTHRU?= =?utf-8?B?MTBvNjYwZ2RoN2t6UEd4UDJRZkNWaDdNSkdncWVyVzAzM3AvaHZzRERPZ3Ev?= =?utf-8?B?aGJQdHZmeFlObDlmbDBZeUNhaDNSMUt4MXNDYW0yMmxGaE1uTUN3R2FNajRD?= =?utf-8?B?aFdRRFVqNEVpcVJXbmZBL3BNYXQ5bzUxaDA2ajMyYzdCcDJFOXlWRkt3dm9V?= =?utf-8?B?bzVsYkZuS0lUUGxQd0Q4djM2SzFBNW03Rm50alpBeDlGU2Z1ejFmU1ZESHly?= =?utf-8?B?M2FrVmJnZzM3L1VlcFUvRlN4TElXbTAvUlArdURNck8xZS80ZCtCa3VTbXho?= =?utf-8?B?REZQRVVpRENhQTg0b1U0VDVyd2ZDcFA0MHpEYXU4ZWt5NUUzN1JPdHZlZ0FN?= =?utf-8?B?SVdWckgzS1Y2OE5MSitOUHpxdUhiVDkvMlVja1JXTU14ajBCTmpBWDhPNGtp?= =?utf-8?B?a1AzeS9hS2Jtb0hjd0ExakkrbXhrQ0lYVHFBZzRlNnNhM3NrcWlneU5CeHV2?= =?utf-8?B?bm9CcnF2aFVKcmFMVU8yYVdva0VCMm9mbGx3V1VBSGYyK3l5VVVpelIrWDE5?= =?utf-8?B?SEF2TDgwdlZETXdGR29Vd1BsZXBmeTZYNnFnZFlSYmFaU2xhekdpSS9qWWEv?= =?utf-8?B?WDhDWC8zTXE5cXc2WGloY1lLdTAyTWNuQ1EwZ2I0a05MMU9kRVRBOFE2OUoz?= =?utf-8?B?TnB1MEZreGUvak81eGM1OUJ1RDhHZm9oSjg5U3pycEp6anBxTEQrNGZVbXFW?= =?utf-8?B?Rmh6Z0h0RkpadkpFcFhmK1Q3c0VIYXQ5VDMzVWZLSHNpNzRXY20vTTlLRWdm?= =?utf-8?B?T3ZZbDVmUklBQkhwWGQ2emNIdEFOMjQ5YnZxMjF1UTRENzNxQT09?= X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 8e28df12-13f1-4979-ab8f-08db67300481 X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Jun 2023 08:20:13.7528 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: rXjwqB5lyM38IYm0wuzJwV+Q5apU8EH/8zzGlz7twajZP/HMGK5kEwmhtlrnzLo8pygvcxeAS9clLCR4/vd56g== X-MS-Exchange-Transport-CrossTenantHeadersStamped: BLAPR03MB5377 On Tue, Jun 06, 2023 at 01:01:20PM -0400, Demi Marie Obenour wrote: > On Tue, Jun 06, 2023 at 10:25:47AM +0200, Roger Pau Monné wrote: > > On Tue, May 30, 2023 at 04:31:13PM -0400, Demi Marie Obenour wrote: > > > This allows specifying a disk sequence number in XenStore. If it does > > > not match the disk sequence number of the underlying device, the device > > > will not be exported and a warning will be logged. Userspace can use > > > this to eliminate race conditions due to major/minor number reuse. > > > Old kernels do not support the new syntax, but a later patch will allow > > > userspace to discover that the new syntax is supported. > > > > > > Signed-off-by: Demi Marie Obenour > > > --- > > > drivers/block/xen-blkback/xenbus.c | 112 +++++++++++++++++++++++------ > > > 1 file changed, 89 insertions(+), 23 deletions(-) > > > > > > diff --git a/drivers/block/xen-blkback/xenbus.c b/drivers/block/xen-blkback/xenbus.c > > > index 4807af1d58059394d7a992335dabaf2bc3901721..9c3eb148fbd802c74e626c3d7bcd69dcb09bd921 100644 > > > --- a/drivers/block/xen-blkback/xenbus.c > > > +++ b/drivers/block/xen-blkback/xenbus.c > > > @@ -24,6 +24,7 @@ struct backend_info { > > > struct xenbus_watch backend_watch; > > > unsigned major; > > > unsigned minor; > > > + unsigned long long diskseq; > > > > Since diskseq is declared as u64 in gendisk, better use the same type > > here too? > > simple_strtoull() returns an unsigned long long, and C permits unsigned > long long to be larger than 64 bits. Right, but the type of gendisk is u64. It's fine if you want to store the result of simple_strtoull() into an unsigned long long and do whatever checks to assert it matches the format expected by gendisk, but ultimately the field type would better use u64 for consistency IMO. > > > @@ -725,10 +749,46 @@ static void backend_changed(struct xenbus_watch *watch, > > > return; > > > } > > > > > > - if (be->major | be->minor) { > > > - if (be->major != major || be->minor != minor) > > > - pr_warn("changing physical device (from %x:%x to %x:%x) not supported.\n", > > > - be->major, be->minor, major, minor); > > > + diskseq_str = xenbus_read(XBT_NIL, dev->nodename, "diskseq", &diskseq_len); > > > + if (IS_ERR(diskseq_str)) { > > > + int err = PTR_ERR(diskseq_str); > > > + diskseq_str = NULL; > > > + > > > + /* > > > + * If this does not exist, it means legacy userspace that does not > > > + * support diskseq. > > > + */ > > > + if (unlikely(!XENBUS_EXIST_ERR(err))) { > > > + xenbus_dev_fatal(dev, err, "reading diskseq"); > > > + return; > > > + } > > > + diskseq = 0; > > > + } else if (diskseq_len <= 0) { > > > + xenbus_dev_fatal(dev, -EFAULT, "diskseq must not be empty"); > > > + goto fail; > > > + } else if (diskseq_len > 16) { > > > + xenbus_dev_fatal(dev, -ERANGE, "diskseq too long: got %d but limit is 16", > > > + diskseq_len); > > > + goto fail; > > > + } else if (diskseq_str[0] == '0') { > > > + xenbus_dev_fatal(dev, -ERANGE, "diskseq must not start with '0'"); > > > + goto fail; > > > + } else { > > > + char *diskseq_end; > > > + diskseq = simple_strtoull(diskseq_str, &diskseq_end, 16); > > > + if (diskseq_end != diskseq_str + diskseq_len) { > > > + xenbus_dev_fatal(dev, -EINVAL, "invalid diskseq"); > > > + goto fail; > > > + } > > > + kfree(diskseq_str); > > > + diskseq_str = NULL; > > > + } > > > > Won't it be simpler to use xenbus_scanf() with %llx formatter? > > xenbus_scanf() doesn’t check for overflow and accepts lots of junk it > really should not. Should this be fixed in xenbus_scanf()? That would be my preference, so that you can use it here instead of kind of open-coding it. > > Also, we might want to fetch "physical-device" and "diskseq" inside > > the same xenstore transaction. > > Should the rest of the xenstore reads be included in the same > transaction? I guess it would make the code simpler to indeed fetch everything inside the same transaction. > > Also, you tie this logic to the "physical-device" watch, which > > strictly implies that the "diskseq" node must be written to xenstore > > before the "physical-device" node. This seems fragile, but I don't > > see much better optiono since the "diskseq" is optional. > > What about including the diskseq in the "physical-device" node? Perhaps > use diskseq@major:minor syntax? Hm, how would you know whether the blkback instance in the kernel supports the diskseq syntax in physical-device? Can you fetch a disk using a diskseq identifier? Why I understand that this is an extra safety check in order to assert blkback is opening the intended device, is this attempting to fix some existing issue? I'm not sure I see how the major:minor numbers would point to a different device than the one specified by the toolstack unless the admin explicitly messes with the devices before blkback has got time to open them. But then the admin can already do pretty much everything it wants with the system. Thanks, Roger. From xen-devel-bounces@lists.xenproject.org Wed Jun 07 08:21:06 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 08:21:06 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544479.850287 (Exim 4.92) (envelope-from ) id 1q6oPg-0000UF-Rl; Wed, 07 Jun 2023 08:21:04 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544479.850287; Wed, 07 Jun 2023 08:21:04 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6oPg-0000U8-Oq; Wed, 07 Jun 2023 08:21:04 +0000 Received: by outflank-mailman (input) for mailman id 544479; Wed, 07 Jun 2023 08:21:03 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6oPf-0008OV-BC for xen-devel@lists.xenproject.org; Wed, 07 Jun 2023 08:21:03 +0000 Received: from EUR05-DB8-obe.outbound.protection.outlook.com (mail-db8eur05on20619.outbound.protection.outlook.com [2a01:111:f400:7e1a::619]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 3d42e659-050c-11ee-b232-6b7b168915f2; Wed, 07 Jun 2023 10:21:02 +0200 (CEST) Received: from DU2PR04CA0315.eurprd04.prod.outlook.com (2603:10a6:10:2b5::20) by DB3PR08MB8842.eurprd08.prod.outlook.com (2603:10a6:10:437::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.32; Wed, 7 Jun 2023 08:20:56 +0000 Received: from DBAEUR03FT050.eop-EUR03.prod.protection.outlook.com (2603:10a6:10:2b5:cafe::25) by DU2PR04CA0315.outlook.office365.com (2603:10a6:10:2b5::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33 via Frontend Transport; Wed, 7 Jun 2023 08:20:56 +0000 Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by DBAEUR03FT050.mail.protection.outlook.com (100.127.142.250) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.24 via Frontend Transport; Wed, 7 Jun 2023 08:20:56 +0000 Received: ("Tessian outbound 3570909035da:v136"); Wed, 07 Jun 2023 08:20:55 +0000 Received: from dfe7c6cc26d6.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 975D2168-A510-4B2B-A9B4-C40AE137839D.1; Wed, 07 Jun 2023 08:20:49 +0000 Received: from EUR03-DBA-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id dfe7c6cc26d6.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Wed, 07 Jun 2023 08:20:49 +0000 Received: from AM6PR08MB3784.eurprd08.prod.outlook.com (2603:10a6:20b:85::25) by AM9PR08MB6148.eurprd08.prod.outlook.com (2603:10a6:20b:284::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.32; Wed, 7 Jun 2023 08:20:47 +0000 Received: from AM6PR08MB3784.eurprd08.prod.outlook.com ([fe80::5e17:39a6:eec7:c482]) by AM6PR08MB3784.eurprd08.prod.outlook.com ([fe80::5e17:39a6:eec7:c482%4]) with mapi id 15.20.6455.034; Wed, 7 Jun 2023 08:20:46 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 3d42e659-050c-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=HgdeA4nka7GrSACwH5VRv/YIBEaQEJdl14TezReNxwc=; b=zwtHnOPiAylWmHzTyK7XCtgaOvZJOAjyi5ADXaXxWQlyFlIR/L7M34tjUbVncIbmvD9R1HWgFpj8NI3PeAgu8ZvUpfLavkZIjWAmoyFk9ocr5hIbi0Ik5c0UYW0Zmys/8/YhOEYklIEnUxEwM1BwpSpwuxQcMNGi8NTU4eho8pA= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C X-CheckRecipientChecked: true X-CR-MTA-CID: 69a21bf8aada36e9 X-CR-MTA-TID: 64aa7808 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Dg4GwOttvanJjcDnvhEvlkqHi4vdW02a2LuFgXCm3+aJ4V0BwHv0pwXZW+gUQ4UoC+yimv08ov45RwSVU/zo5p4UCcRUmb4qckwgGV5MLnvyGToheiVUj169Q6PHkXfLxmNPo3TzCJpOcrcdco0j68NLt8nYnZrgVEQLdg/mO+gjR+lp/o6lAs+JP3Mbrrf7CLVjy7rGYnJJi8oH17p/B8rjd6CtA6WtIQcs2PPHOLdgkWGmUZhh1MCBUPeTis4uNHSF13NuLN55zDa/axnZTJ9fHzzM9GVF63cqThDcsYI6Lv/1QHLmP9A51rWmVmofZPzg3ywMcEj0xLfAtn0Owg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=HgdeA4nka7GrSACwH5VRv/YIBEaQEJdl14TezReNxwc=; b=dI5Z0x43rU+m7DL6CiaFnMHPMNzsrFLD8FobYf7fOwcSxb8BXq80onBGNwHWnlaIOT0yC50dI6Apfyj7MpkVXa9b9YkRHVBlrUS/toeWCXh2Q0H1EgZdyiDMGLne39Q4pTNfSmvjaaUcDjr9fnhI1jdso5DXHyV8CnZqTuIejgrf3ApWtyJhc310iALXwqQyJFK6LbwpDf6NbKQ5J4gQnxoQt4ebhjbga5ODvo/u0fAppsrSNwkXYDRiwxJD+caj5QitQMlSuVX7tw9QdvUTinjdFakLKmq3cmouKKd3L2aaDeWMiHpT4ar2cfG/6JNzaj16oGdLlaWtJiVcpJVimQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=HgdeA4nka7GrSACwH5VRv/YIBEaQEJdl14TezReNxwc=; b=zwtHnOPiAylWmHzTyK7XCtgaOvZJOAjyi5ADXaXxWQlyFlIR/L7M34tjUbVncIbmvD9R1HWgFpj8NI3PeAgu8ZvUpfLavkZIjWAmoyFk9ocr5hIbi0Ik5c0UYW0Zmys/8/YhOEYklIEnUxEwM1BwpSpwuxQcMNGi8NTU4eho8pA= From: Bertrand Marquis To: Jan Beulich CC: Andrew Cooper , Stefano Stabellini , Julien Grall , =?iso-8859-1?Q?Roger_Pau_Monn=E9?= , Wei Liu , Volodymyr Babchuk , Xen-devel Subject: Re: [PATCH v2] xen: Fix incorrect taint constant Thread-Topic: [PATCH v2] xen: Fix incorrect taint constant Thread-Index: AQHZl6An0ZVCR8BjEkS3vk0sA5g2C69+/+QAgAACuYA= Date: Wed, 7 Jun 2023 08:20:46 +0000 Message-ID: References: <20230605112303.1764183-1-andrew.cooper3@citrix.com> <1f356d3b-7068-088a-a59b-eadbfb3f59cd@suse.com> In-Reply-To: <1f356d3b-7068-088a-a59b-eadbfb3f59cd@suse.com> Accept-Language: en-GB, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-mailer: Apple Mail (2.3731.600.7) Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-traffictypediagnostic: AM6PR08MB3784:EE_|AM9PR08MB6148:EE_|DBAEUR03FT050:EE_|DB3PR08MB8842:EE_ X-MS-Office365-Filtering-Correlation-Id: dff77b60-f97c-477d-e4ab-08db67301de4 x-checkrecipientrouted: true nodisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: XKqNgCkkw5kK4epMs/NbdMpOHm2MMiaX+MM9F52EDgC18Vg9cekCLfJA4DFwtADImVHV4pK1xuQsFyfRFXbdB6HMrUE/i3+kHjmO5EMsnZBrqKC0WuKdWdMPGvejR8y04Jkpcp7TAqXuL1lE1XXhSuMo1b/XK4zEAhO2dHM8TiU+Vd37ZUfFj9KmEYU4PLjTQfVuaGq4cJzTKyHSLsc/njt6FLuBPLR1DAqwGFwGqv+0YyusXfX8ikqLXWJHtPm9zyBAaLv7X5PsEFr909CFxAzT+CQOpIG+g2scTqJ9Kp07Z2KD+vFUaabEkxtwbL6+N3iIHCRkP4rdeFM7urdC9a5Oe3AWiOeF/aM52GOiG3iGRlkk1XSryidc2hDFsNMIbU4D5CQ4ZVaDHeYXWLXipCk9ZHXTmDx0RciBlskn1kKty/O2uIOZGODjkB8U02cUUa9ljQxxl9/KW0Zga3rmzMaaKoG96Bl3fzFSvFgp+48KwcmGob0xiWMbMMycDIGAXkuFuUjQFBg5f+hloboxtgOhYzrfjGAYQ5btaADQlMfEPyvRAkcbWSoDekPRSV+STzoZXdmvjKXZ9gxwBtYUgMWvgXEtUNWDUE+zrMhKlVIFa1PuIeMn8KEnajF4RwbArbDv+8Zuj6Hja97nZoBASg== X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM6PR08MB3784.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(376002)(346002)(39860400002)(366004)(396003)(136003)(451199021)(186003)(8676002)(8936002)(6916009)(4326008)(66556008)(66446008)(66476007)(64756008)(66946007)(91956017)(76116006)(5660300002)(316002)(41300700001)(54906003)(4744005)(83380400001)(2906002)(478600001)(122000001)(38100700002)(6512007)(6506007)(53546011)(86362001)(71200400001)(33656002)(6486002)(2616005)(38070700005)(36756003)(45980500001);DIR:OUT;SFP:1101; Content-Type: text/plain; charset="iso-8859-1" Content-ID: <2AFD00FFDDC5CA499A388D19CA9063F4@eurprd08.prod.outlook.com> Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR08MB6148 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: DBAEUR03FT050.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: 5338fee9-a601-4ef7-ca13-08db6730181d X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: RckeJmrdG6uGSVwQPmHSdTXvGL2rkRgMSNzGvy2hg42jDSRhxO9RoUQDFxediyrmgR/9nZnNTvhDs1dcV3ANyYX/NMAAmLRllFHubB1WyokGCFeb1HvrmsA/pua2Ur8Yi1zn6oDDe57Wlo04P8ReyhndU7uq21fp0UjVZxaMEdSKV9LMGLdVFg8uHm1D+oJwbdmphuLa00f9WX3ghzACipewKhNeKXdbxuYz4UJGiowhNg3B4mPvl7cMB2qV/ZXWcFTNNVC47ddWtro7gmheinRKuaYN1ibZTbKl9PlJKvc7UG0NwHnaKYjC1g5nYwqeOUPF7AWlujPl6aoO4AaffkMwOA/zyrytxIrsHI8UGamRlM5S/UFofJ/h+KB1oYpUzHY4HmZpacHXA/spu/Pco28UbQylVV9kZbYT8FDCTy1wlRnDOvqo594bo9OaoGchsbDZBrruTRGy8M6Yp4mzYn9+yLjd68VyJXt+oGNHMu0ThHIwTeYP3ASr4RPdIHdYeWAb18mjoCsD6oNFj4x5dF2d28CenG2h0meL3ASMaxHPlUXYiIW6iHR+WZX1oJbSWWX2vQze46lv1ZB2KysVXqWgTY6scnjLsVOIBdixWdsTdzy7E92g1mx0BY/QYLXk3niCcsIBmgI8oYT5m+MAU++Y8wx2b3tbece/VQYMV2WkkN4uAO9603B9e8re/LK7KqaJYSH2NnjU3Rf0Va+J+QkRNWyPJ+YOKear6U6yQL+ZqxLRI1fcR0txmHr3J64A X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(346002)(376002)(396003)(136003)(451199021)(40470700004)(46966006)(36840700001)(40460700003)(4744005)(47076005)(2906002)(336012)(83380400001)(2616005)(82310400005)(33656002)(36756003)(86362001)(356005)(81166007)(82740400003)(36860700001)(40480700001)(6486002)(41300700001)(5660300002)(316002)(8676002)(6862004)(8936002)(54906003)(478600001)(70206006)(70586007)(4326008)(6512007)(53546011)(6506007)(26005)(186003);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Jun 2023 08:20:56.0532 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: dff77b60-f97c-477d-e4ab-08db67301de4 X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: DBAEUR03FT050.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB3PR08MB8842 Hi Jan, > On 7 Jun 2023, at 10:10, Jan Beulich wrote: >=20 > On 05.06.2023 13:23, Andrew Cooper wrote: >> v2: >> * Fix commmit message >> * Update comment ahead of print_tainted() >> * Change the emitted char from 'U' to 'I' >=20 > Just to mention it: With this additional change I'm no longer > considering this applicable to stable trees. I realize that one could > argue that by taking it we could accelerate learning that we broke > someone (if anyone), but I'm not inclined to follow this line of > thinking. If Arm maintainers (seeing that only Arm uses this right > now) think they want the change nevertheless, I'd include it, > though. >=20 Not sure if it is what you mean here, but this is not a candidate for=20 backports definitely. Or do you mean something else here ? Bertrand > Jan From xen-devel-bounces@lists.xenproject.org Wed Jun 07 08:27:35 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 08:27:35 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544486.850297 (Exim 4.92) (envelope-from ) id 1q6oVp-0001DH-FF; Wed, 07 Jun 2023 08:27:25 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544486.850297; Wed, 07 Jun 2023 08:27:25 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6oVp-0001DA-Bp; Wed, 07 Jun 2023 08:27:25 +0000 Received: by outflank-mailman (input) for mailman id 544486; Wed, 07 Jun 2023 08:27:23 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6oVn-0001D1-Mo for xen-devel@lists.xenproject.org; Wed, 07 Jun 2023 08:27:23 +0000 Received: from esa4.hc3370-68.iphmx.com (esa4.hc3370-68.iphmx.com [216.71.155.144]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 1f2cf6f5-050d-11ee-b232-6b7b168915f2; Wed, 07 Jun 2023 10:27:22 +0200 (CEST) Received: from mail-bn8nam11lp2169.outbound.protection.outlook.com (HELO NAM11-BN8-obe.outbound.protection.outlook.com) ([104.47.58.169]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 07 Jun 2023 04:27:19 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by DM6PR03MB5019.namprd03.prod.outlook.com (2603:10b6:5:1e7::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.19; Wed, 7 Jun 2023 08:27:14 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606%4]) with mapi id 15.20.6455.030; Wed, 7 Jun 2023 08:27:14 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 1f2cf6f5-050d-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686126442; h=message-id:date:from:subject:to:cc:references: in-reply-to:content-transfer-encoding:mime-version; bh=sNeF+SQmOigNHZCtAXOjJRgjaNZujICR658QGDTnN8E=; b=JTqgYGuHl2nDCIniQjbBMPGXOAhIJKMV1M6hDYd/Cu0JAh3opVTBZHxI ooNfHAZ+Hxu5ndYOnitzGy+6sTG9AxGI4NNFRbG7ZGYg2GSQzCOrvM7SX 6/MCnLEaLQjASKcEhirnwewkA/6LaSIB3f0RIZTTjEJndo933W3nkyi7t c=; X-IronPort-RemoteIP: 104.47.58.169 X-IronPort-MID: 114385880 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:49hSda49QRuJBD6M5Q3svQxRtLvGchMFZxGqfqrLsTDasY5as4F+v jcbW2HVM/uJZzb2L4gkaN/i9B9UvJ6GmIRrGVc4+XwyHi5G8cbLO4+Ufxz6V8+wwm8vb2o8t plDNYOQRCwQZiWBzvt4GuG59RGQ7YnRGvynTraCYnsrLeNdYH9JoQp5nOIkiZJfj9G8Agec0 fv/uMSaM1K+s9JOGjt8B5mr9lU35JwehBtC5gZlPa4T4weH/5UoJMl3yZ+ZfiOQrrZ8RoZWd 86bpJml82XQ+QsaC9/Nut4XpWVTH9Y+lSDX4pZnc/DKbipq/0Te4Y5iXBYoUm9Fii3hojxE4 I4lWapc6+seFvakdOw1C3G0GszlVEFM0OevzXOX6aR/w6BaGpdFLjoH4EweZOUlFuhL7W5m0 uNIJjsSVQu5jtnv4L2cCed2m/55BZy+VG8fkikIITDxK98DGMmGaYOaoNhS0XE3m9xEGuvYa 4wBcz1zYR/cYhpJfFAKFJY5m+TujX76G9FagAvN+exrvC6OnEoojumF3Nn9I7RmQe18mEqCq 32A1GP+GhwAb/SUyCaf82LqjejK9c/+cNtLSOboq6462DV/wERNODY/UF+eg8C/1EqfUolZC RNKwAcX+P1aGEuDC4OVsweDiHyOswMYWtFQO/Yn8wzLwa3Riy6CHXQNRDNFbN0gtec1SCYs2 1vPmMnmbRRtrbmURHS15rqS6zSoNkA9J2IYeTUNSwdD5tD5uZwylTrGVNMlG6mw5vXqHRngz jbMqzIx750tisoM27S+7ErwqTumrZjUTSY4/gzSGGmi62tRdIOjIoCl91XfxfJBN5qCCEmMu mAenMqT5/xICouC/BFhW80IFbCtovyDYDvVhAc2G4F7rmr8vXm+YYpX/TdyYl9zNdoJciPoZ 0mVvh5N4JhUPz2haqofj5+NNvnGBJPITbzNPs04pPIXCnStXGdrJB1TWHM= IronPort-HdrOrdr: A9a23:HD+e0Ksm80wGpewDuxL9lyyX7skDYdV00zEX/kB9WHVpm6uj9/ xG/c576faQsl16ZJhOo6HjBED+ewK4yXcY2+Qs1NSZMjUO2lHYT72KhLGKqwEIcBeQygcy78 tdmqFFebnNMWQ= X-Talos-CUID: 9a23:5VobaGMfDWbjqO5DfzY3+kULIdsfe0aE7Hj3YEGiFFwzYejA X-Talos-MUID: 9a23:m98+JwXGpJgsj0bq/GHcrxhnMOJK2qLwDGEEypMk5Je+GBUlbg== X-IronPort-AV: E=Sophos;i="6.00,223,1681185600"; d="scan'208";a="114385880" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=n8cvls1dzcctAsHZ+SR8ILujZZmAtzLbm2iA0OLrPtVoNeJx7Qth/zuQE1qxbxKcy+1tvmgt4ct06us4SVjKEAdzS9Gm9b/WyowPGGX4WWdT3e5eRHIA+pDsX7EuLyfYgdvue0DjLFFI70ABRKxvvK8bGg7TpOy7Vyua8RhEg1hP86AwUTXEya/FDBh4kdgx9EIB9Vgx4QRMsXUgiESZwpiAhoiTavvtEdreu0xPWWA6UlKHHYAv1NvC6zFW/6TClAt1f2UmtA9ZHI0iW7bgQcsbpM+mFpjTfbsruH8ulrxwiaTkrQf50dnVcjfC2r5yPyPfic7iu7m3DAOBXvu65w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=qFLddoAdZkVVDy5gA7dtDLaUUQfv3wgSUnIh6Yu18l8=; b=AGd8AoYGPO8cNBsa5An+/2gV13dRqoX9bf/XxbSMsJaGEbQZIVit/dwJlEJ+yGhcui12UIlnSCzGM/OzSZ9uXiucVAIPQ/LtIa1Hxzf0eTAB+A4XSiPdY6mAUTSsFkEHSYSBtmCAy0agMA5zV8Y9/W1VLifCs/sV97IFLQKNS5gcqSu4NH1glVvk3OhSvHpMGPogo6Ba63uOH/WPnGCuqtvUFep3qTUIxBU9l9bkZozAuLoBaIykl00nS9MH8Jszx2JU1E5Gg8ZKhIkpd4U4nO2HDtIRsym1DD+V/spE4fimKlIi0tEPUlnHZ6HbcjZJL6YVyftJNTY0QyYsiAPa0w== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=qFLddoAdZkVVDy5gA7dtDLaUUQfv3wgSUnIh6Yu18l8=; b=e+S5dmh0//S20H208614ILZbmBtCmqW+ORLTpoy9y5usZlm69y7m0KTSY0/pwPzmp6tont3KCTRbmddkcqd3Fnfyop/aKTTNoPAoeFPqDs0CSCLaprw05Rh7T5su28H8cNtXyBR3CCKmF+TWGQLFpJOP06FKlGnEYjIS6euA03s= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: Date: Wed, 7 Jun 2023 09:27:03 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 From: Andrew Cooper Subject: Re: [PATCH v2] xen: Fix incorrect taint constant Content-Language: en-GB To: Jan Beulich , Stefano Stabellini , Julien Grall , Bertrand Marquis Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , Volodymyr Babchuk , Xen-devel References: <20230605112303.1764183-1-andrew.cooper3@citrix.com> <1f356d3b-7068-088a-a59b-eadbfb3f59cd@suse.com> In-Reply-To: <1f356d3b-7068-088a-a59b-eadbfb3f59cd@suse.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO2P123CA0028.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600::16) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|DM6PR03MB5019:EE_ X-MS-Office365-Filtering-Correlation-Id: 6736fcb6-c6cf-4ad0-c6a3-08db6730fe73 X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: UktvgwTaC7YSYCp5HmydQgLYAZMs6UAxVHkumMI7AcFU+wonkJG5vTJ8wlIQL4CDHjd8fQ2hCW+3hugJ6iMa/7xpVFCZq/OPue3fVaY3iGiElz0ONaD9oJPX9O4ZI8NfCk6RKHCm62+ARrCcFAaQFQMyzjhRoSP6fqo4g1MVN7TpHEv8tS3ImnqnZz/9jf+xBvs+Jlg7H1auB9Jli1RZrDFDQs2//yFTHS04pKPqFG5hVEQrC+9FGwGIVvfbV+gVcRwe8QTk0oHYPvW/aEwl4dz6/uP7SMslLETF2A9g9ITEWpY/xwmdda4yswryvZWXcd3Qsh8UI4OKSYdF1Ya2NBSNIPBV8FJoI+SnKTb9EFA/CVlKHIuoeeO87iRz/mHTmgrC/TBd+apy8M/JSgj71DPUnRBYXxz3JjysJ5ycALJ3s/CAtsDyxSMcRXGjhQ8gEwORikFkOX9+rcc0fDUBl3wtMKhcAB4fa+wbAGBN1BS4zpheGRYMqunE9NkWiKUf+Ifq9ZfGCF5wOPIw2Z3F/fuVmGala9h3PTPWIOwAmJCn1fntBwi1o32v+DMPGBBXTUZVIl0i0+yDJms9cgZguphbskoRIMZLpBEvnzZUVyS1p3itfQ3muG1zQHYobNGE90SGVPP/1Q0W53G4qHpvVA== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(376002)(346002)(366004)(396003)(39860400002)(136003)(451199021)(36756003)(478600001)(5660300002)(110136005)(54906003)(6666004)(8936002)(8676002)(316002)(4326008)(66476007)(66556008)(66946007)(41300700001)(38100700002)(2906002)(4744005)(82960400001)(26005)(6506007)(6512007)(31696002)(53546011)(86362001)(186003)(31686004)(2616005)(83380400001)(6486002)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?NjRTeEtjcTVNUjZIOTZMelNIa2hnNnZHNlByYVVVVitBQzZoZEx1TGZVSG11?= =?utf-8?B?SVlIYlFXOWZJVXFOWlp4czk3cUR2UmQzUW1rc2h3OU5vaFJCeTFocWNTR3Bu?= =?utf-8?B?RmRBTWR4VFhDT1Z5ZG1TaVB4dDhRczhKTVJiVkhWVndTWEhlblEzNTBtWHZV?= =?utf-8?B?OGFVSDhPMjVRajZnbWhYR3ltSXBkdWh1WFVOYU9xMHROR3poT1V2ZVRiUmJR?= =?utf-8?B?bXBob1pjQUxKYUFkamZ1akZiZGlLVnptZUlubXNyRkpvT09VWkUreWpoVUJk?= =?utf-8?B?Z1d4ZVZNUmVVVVlualhBeDJBSHF2WVpRd0hnTTZ4dkFCWlVyZWp6TVpaVUR2?= =?utf-8?B?c1VkRkpmd3NiWnBXM2FSQjJJWUhwZzRmaXFTNVJSUElmZmo2TjBqWlMvQ01V?= =?utf-8?B?SUJ1bFI5YURmdnUzZFZuTWJ0TGdCK0VPZmpCWXRLSWh1RkJUNDM5dlo1UWI2?= =?utf-8?B?bXhMSTZUTTViR09mU1dzQmFtOS96Z1pqSkhFYVVub056R3RtdThzWGRFaDZy?= =?utf-8?B?VStCenl1OXdndVNJeVZQV2dZMFNsS1VaRDl6L1NqY0s4c2lDbjZpcHlCcFNp?= =?utf-8?B?ZFJ2Y080ZlVUcXQ4amp2QzRCWUlyYU5jMyt5SXYyWDF3KzM2S3Z5bDhlbFhR?= =?utf-8?B?UzZVN0lKM1NZQk9hTWtjR1d3TzJGZ3RWaytWZWEyY2ExaWw3TjVIMTBLV0JC?= =?utf-8?B?Z3pQTzdibm9hcDVtOUkzUkFLWE1WS3pjY0w3bXcvQWNnaGtNL3JtdnNDeDBS?= =?utf-8?B?ZWpjQlVVWjQzZjJWVWsvYUI0UzZPbERENi9kTWVhbFNrL2VIZG42Mjdzbkl3?= =?utf-8?B?WnJBejB4MU1xbzVBZGNZVFVSaFMvM2dkWFErc3lFbVl5N203SzFSblNXeXdv?= =?utf-8?B?S2xJK2dpMHFzRGcwWHNZMjQ3YU9UaC9DWHRYN3FYRHVmWU0wbXZneEdyRHdy?= =?utf-8?B?Q01HRWJVV0ZhVWhrMS81aWp4MFk5a2hsMS9wUHBSdFM3c3ZFVS9zbld3WWdk?= =?utf-8?B?MytKL3k2eDFpTWlvbEtVcCs3MHdqcXlXK09pakNpa1hhMFZhZTJEd1VFRnor?= =?utf-8?B?YmQvOVJsbXY0V3lPR3FjVnQ2Y2JmVllIZ1BBYXduZXZwUW5uZkViZzVtNnQ1?= =?utf-8?B?V0xZaDFkeW9SNHJ0THJLWnlRK0hSN0g0V2VkWjg4cW45eWFBWlNmSHBPcU82?= =?utf-8?B?N3V2S0JBMW9EL2RmSk9UM3hXVFp2dVNnMHRPSS9UTEo1aGFiRzF6cE1FT1V0?= =?utf-8?B?K3lhSmE1ODlVWWhLLzNWMU5lNU9aR3ZISDVEQ2QwNzRVY0ZOOStrbmg0bFZq?= =?utf-8?B?cnFwT3g2ck9FZmoxMDlsVnpSOVZTUFIwZ2t4RGNPbFVkSFdLWWNHeHVqcnRk?= =?utf-8?B?UENTRkJ5citHY2llQzdSeWxiV1JwWnExbzM2VHpWZ0Q4TmhaU0ZXUTd0M01p?= =?utf-8?B?MkpNaEJuY0o4dWxEY0J1d1IvSWx5a0VrdTZzM3BvUG9GaU9VRFdoUDNHMCtU?= =?utf-8?B?M1RsVzJVdGdBQ0I5TEl5RVlQS3dUcWxoZW1YZ3VPUVdRYlMvZnByZnJYVEdl?= =?utf-8?B?NEgxd29Gc2Q1NUVZUkd3Y0Nma0NSa0M5Mk04ZG9nb3Y2Z0Y1aWxRS25TR1BS?= =?utf-8?B?Y2FSanpHQUhxdG4vYy9SaG80U2ZudzV6Q2dzblV1MHNVbWFLUWw2UXpPNy9Z?= =?utf-8?B?d1J4bkVZVkNqa1FQU3U3VVBJdHowLzhlM2wyRnRpUGc3WnhvQy9TSHhHQTk2?= =?utf-8?B?b0hob0pDd2FKbkFIanRTVlZ2KzI3K0liZnNsaDl6b2V2SnluUVB0Nnk1d1JD?= =?utf-8?B?WHZjbkEvaWFiQzloZTczb3dMdk9QSUdYUGNkYzZTWm1zVU14RUo4UVZMR21I?= =?utf-8?B?RnpHQUhkTWRDcHlZV2x1STFqKzNubEx3R09UWUNwNkRsVHptL09mOVcvejh5?= =?utf-8?B?TVBRMlhyaFB0VERlNnFuL0pvUW9sR205ejcrUTlzVzNqVjBWWmNNR3UwaUZF?= =?utf-8?B?MjNqdXJhaVBTMmFHRWg5endEVEVPTy82REZxZDZBVHRGZVFHR0hEVzNJaW5M?= =?utf-8?B?cEgzdnVXd1NqS05xM1o2S2t1SUZFbUkyeU56Z1J6blR4ZUkxWGVPUERqMHJB?= =?utf-8?B?d3JCaWhQV0ROS3RSQTJEUE1VSWs3TTJzWXZZT1N0V1lOcEwzbkNpRis2LzNx?= =?utf-8?B?WWc9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: 6NGnnmJiM/aW2VvP5aFoYY3T2M3e+r2fcYpmJ92wrc79NpI9Og2DjbR4hI11orXMaCiKA9We2NlkWQ/kKldh3ul7iJWTM6csObftaT9QE7ZO6G3AhnrWetQqV9isCMp8D97TknsTgmAYwidhY5nYYW0vElaLGpzr8ODMEvRuG1+6gyXi/54XL3bC/rYe+WWG9wnjJlmQUFpv8ovBU7GGcqiBfXBO3v6CvsSxLhK3uCdvtUimr9BkhgXAeUiabHfE0tRuoyfNF+GL8Hfwi/Fn09oGvzKSWAxN0HN+zQIDHEZTXTFQv/dZ9iPjTMW7mo3H821uL0hXwYH5SWw/h//GrodCCML8t0FbeO/N8VxmpGDtVRgIfAYoBNwV0KvlppaNuFsaxwWdEN11r3qUfCCVtN5SZcmr4DCAlIUpKLIpu4HXedbD5Jyqvkui0fsjix6Zdg6ryyaNXXIRJW4zTIf7SECncAfwJUv0A3TLWvC067A64i0YY6+YcB6pTSrEg08+hKFhwGyRbOUaPcNF7o4ilOlLuJuCnMV7Sd3Rlnq+ioSKGvS2iCHMxCfGMtrSnbn3OfH/X5eyDhxASoKvgaW6m/KCv/b8LDsEHOBlj5mrvfpJ/N9nB7XMjgCvzRwadQXEQ2q+sqRKAmAdyZ1l+kG0/S/H6N629Z4KlWCeH6JceeM1ThSzKYk2tKqufWOfB0u3y98Ey2ZoH7bcKjE2LaAeP0YUsatJ4QXEvfPJmHsm3pT5pt7ghAcENhgQJ/ezWvSAC1CekUV8CNUe0bLdg30ZzZjANhv6Dn1QeVQU4+NugquGRO+jObbzDbj3rtBio1gid8DoK/9cSNYJukW+XlF7oA+fkR/gD27XR3mZYDdGI5SPcjOACTP7hr4OnY4Wjmek0qlcCf9L0hrJD4Yh2vaPVg== X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 6736fcb6-c6cf-4ad0-c6a3-08db6730fe73 X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Jun 2023 08:27:13.0827 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: E1oKhzbQ25GUxtGKyrSCqZ+Cj/kVb5rkwllhYba6wLFti1AgjCaRReLk+lpdGlCQbSnN+7l/T+QLcCr4/h08e8fbzTCxrA1n3H6wddSSCFA= X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR03MB5019 On 07/06/2023 9:10 am, Jan Beulich wrote: > On 05.06.2023 13:23, Andrew Cooper wrote: >> v2: >> * Fix commmit message >> * Update comment ahead of print_tainted() >> * Change the emitted char from 'U' to 'I' > Just to mention it: With this additional change I'm no longer > considering this applicable to stable trees. I realize that one could > argue that by taking it we could accelerate learning that we broke > someone (if anyone), but I'm not inclined to follow this line of > thinking. If Arm maintainers (seeing that only Arm uses this right > now) think they want the change nevertheless, I'd include it, > though. I'm not overly fussed.  It's not hard to rebase around. ~Andrew From xen-devel-bounces@lists.xenproject.org Wed Jun 07 08:30:50 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 08:30:50 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544491.850307 (Exim 4.92) (envelope-from ) id 1q6oYx-0002de-UK; Wed, 07 Jun 2023 08:30:39 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544491.850307; Wed, 07 Jun 2023 08:30:39 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6oYx-0002dX-RG; Wed, 07 Jun 2023 08:30:39 +0000 Received: by outflank-mailman (input) for mailman id 544491; Wed, 07 Jun 2023 08:30:38 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6oYw-0002dR-0C for xen-devel@lists.xenproject.org; Wed, 07 Jun 2023 08:30:38 +0000 Received: from EUR02-DB5-obe.outbound.protection.outlook.com (mail-db5eur02on2061c.outbound.protection.outlook.com [2a01:111:f400:fe12::61c]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 9272d6d7-050d-11ee-8611-37d641c3527e; Wed, 07 Jun 2023 10:30:35 +0200 (CEST) Received: from AM0PR02CA0213.eurprd02.prod.outlook.com (2603:10a6:20b:28f::20) by PA4PR08MB5967.eurprd08.prod.outlook.com (2603:10a6:102:e7::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.32; Wed, 7 Jun 2023 08:30:33 +0000 Received: from AM7EUR03FT006.eop-EUR03.prod.protection.outlook.com (2603:10a6:20b:28f:cafe::f0) by AM0PR02CA0213.outlook.office365.com (2603:10a6:20b:28f::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.32 via Frontend Transport; Wed, 7 Jun 2023 08:30:33 +0000 Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by AM7EUR03FT006.mail.protection.outlook.com (100.127.141.21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.24 via Frontend Transport; Wed, 7 Jun 2023 08:30:32 +0000 Received: ("Tessian outbound 3570909035da:v136"); Wed, 07 Jun 2023 08:30:32 +0000 Received: from dcd5d1960048.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id EA3B9769-7C9C-429D-8E91-D444BE00E3C6.1; Wed, 07 Jun 2023 08:30:19 +0000 Received: from EUR02-DB5-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id dcd5d1960048.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Wed, 07 Jun 2023 08:30:19 +0000 Received: from AM6PR08MB3749.eurprd08.prod.outlook.com (2603:10a6:20b:8f::22) by AS4PR08MB8024.eurprd08.prod.outlook.com (2603:10a6:20b:587::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.36; Wed, 7 Jun 2023 08:30:18 +0000 Received: from AM6PR08MB3749.eurprd08.prod.outlook.com ([fe80::6457:d14f:abe0:be0e]) by AM6PR08MB3749.eurprd08.prod.outlook.com ([fe80::6457:d14f:abe0:be0e%4]) with mapi id 15.20.6455.030; Wed, 7 Jun 2023 08:30:18 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 9272d6d7-050d-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=qRnWqtyjSOfTIuj0u2e9fajLhII/WBb8MtvnsrmMI64=; b=+ASReKMlhNp/NYwVsc3hHPIOcGuRJ8jUqZiTPO39LB5YWt5VMpcZV+NKRSz0rCQetO5vcNMqqYmFi0biYe5z4wtqvyHlUpjJFkE4laweH2jRTgvhd6pGbeTde9Sm4vcj0TDWPAkaJRN2zZJPuwK5Dj6PLFE9z4ZcIuVkFUXefss= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C X-CheckRecipientChecked: true X-CR-MTA-CID: a4dc014d794ecc3b X-CR-MTA-TID: 64aa7808 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=l0PyH02yxrtAs4OAADfw8oWNmu03/kscVLBfps89YB+rnvz7NJz7/6gQD564RWKhaaHMnPUJ0gyoX0kUEmHwfX8HOIyIQRXYQrALeEvz1mi4YINKnZGvQcCiK/V7NwC19Jw7+GNYLmY1mZsxpmy5vbPD7zpTTZKkmuVS0JpeFUpmU/7+W8s8s8it8Lm0epF0A59hh1QsGS7f9sXoI0y9UBr+gZ4nEUI2KRuY0I3tOYOFca7riEF+ppUeVQyUsNJfWw1igczWLZ9ncm1fxdtBgEOKtLpxBHycwA8kOddzeNf2xcnE98DaoTwRWlAfFbTyTjqkjoMZLnFk/CpWMED3vg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=qRnWqtyjSOfTIuj0u2e9fajLhII/WBb8MtvnsrmMI64=; b=hNsH0oOP08Gu1oid4+RUxyFgiDfPkctyyNVnXG2S+1cztSI16UCrIIufM/qiZRL1LqrtpYnW0T/cMflWeMYMm9R6LS/Z4nKd37s6QuEFE0fFESq9KdY4iI/Sv3MR9Hd1Mz8rTyUlYUVM8c/d3oOGKIg/XVT87546xpZRCv3zthdpG0xzXOLnlZl8mByfyBGmSKA4Fpc8bUhG9fPe0J+3cLYxwWh7ZIScyQeGY/dM54ntM4Rk3ipp8zUMpSqAh3XhlZyCQ3t9f4lY18oNbjhNjSJrtGivLinEOB9kehmL80xlhZa41XjzeEJ7insUNSFA4++zjE49+06KwI+n2z0OjA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=qRnWqtyjSOfTIuj0u2e9fajLhII/WBb8MtvnsrmMI64=; b=+ASReKMlhNp/NYwVsc3hHPIOcGuRJ8jUqZiTPO39LB5YWt5VMpcZV+NKRSz0rCQetO5vcNMqqYmFi0biYe5z4wtqvyHlUpjJFkE4laweH2jRTgvhd6pGbeTde9Sm4vcj0TDWPAkaJRN2zZJPuwK5Dj6PLFE9z4ZcIuVkFUXefss= From: Luca Fancellu To: Vikram Garhwal CC: Julien Grall , "xen-devel@lists.xenproject.org" , "michal.orzel@amd.com" , "sstabellini@kernel.org" , "jbeulich@suse.com" , Henry Wang Subject: Re: [XEN][PATCH v7 08/19] xen/device-tree: Add device_tree_find_node_by_path() to find nodes in device tree Thread-Topic: [XEN][PATCH v7 08/19] xen/device-tree: Add device_tree_find_node_by_path() to find nodes in device tree Thread-Index: AQHZmLWi8+vNVoAZ4kq/761cbXnoFa9/AxyA Date: Wed, 7 Jun 2023 08:30:18 +0000 Message-ID: <5CECD509-2C18-4BC9-9A47-15BD4E5FD41C@arm.com> References: <20230602004824.20731-1-vikram.garhwal@amd.com> <20230602004824.20731-9-vikram.garhwal@amd.com> <007122c9-1ab2-dd5e-bed4-64333113e55a@amd.com> In-Reply-To: <007122c9-1ab2-dd5e-bed4-64333113e55a@amd.com> Accept-Language: en-GB, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-mailer: Apple Mail (2.3731.600.7) Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-traffictypediagnostic: AM6PR08MB3749:EE_|AS4PR08MB8024:EE_|AM7EUR03FT006:EE_|PA4PR08MB5967:EE_ X-MS-Office365-Filtering-Correlation-Id: 0b8e05a1-9046-4f76-cdeb-08db6731758e x-checkrecipientrouted: true nodisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: 69cL/dKXqqd/v+VNTe96yVJ3Y9smhdqIgmr+OOt8WecA862CuTNKij4cxMc9SfqPpHInDn82BHPLnGevn7ypIcnTDMvNFyUODfLAZnco4vI8RwLRt3KRBHaJJSRq6hq2xDV1XDv3xoFJbfgjnWM+Eg264O/zaWrFZuro/luYbXuIT30H38ZVfdM0HO7Kf5e1auisBVVwfoR5mvHLiQ5UhVuouNbfgdG9UBUK9iz0NE/I++Q8X9GNaQJWr186IJBnWWUSmeE2J6c4edzu/nlZTSyzIwbFNH+JMxYQfnfWNSAbu+F/g/xAPuYfX/nNjyXKep0kBx79Ezj+elU7rX7IpP5GPrT3sqfxrnKmYOJ2vH9KmK4C8xdMAjUXkWgLAQZKGfAFxEWVsGQTXqMk5XMiOb04MG2xLbhovsm7fQti+FkVo/3FQQdAKRbbZjz/iCKPd5VaA2vbVGfRT1Xdzlfd62oYBlktWwobaNIJ9V1fDcGSQUTkE/vojf+fED9gIJad2L0XVy6XJK2fhSCMGYjH33FyvkZC2LIfPkmb/7Ri0mD0snuy8Hn7rKeIL6E3RDWYDZzZ4f26WpfsiT2rioLRa8z9hqxuRgzNkhgt4wljuONJTo8Oxs6d1DHlM2DDluXYBG55XL3qD1tP7PXiki6s6VEBOw333p348/ptmml8zOc= X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM6PR08MB3749.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(366004)(396003)(39860400002)(136003)(346002)(376002)(451199021)(316002)(6486002)(41300700001)(2616005)(86362001)(38070700005)(53546011)(6512007)(6506007)(186003)(26005)(2906002)(4744005)(33656002)(122000001)(38100700002)(5660300002)(36756003)(8936002)(8676002)(91956017)(66946007)(76116006)(54906003)(478600001)(71200400001)(6916009)(64756008)(4326008)(66556008)(66476007)(66446008)(37363002)(45980500001);DIR:OUT;SFP:1101; Content-Type: text/plain; charset="us-ascii" Content-ID: <6B345BA571A4DD4F9E495D1A993A8E30@eurprd08.prod.outlook.com> Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS4PR08MB8024 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: AM7EUR03FT006.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: 28b91d9e-013d-40f7-7f3f-08db67316cf5 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: SnHMV0Dvp6qEYAvvR2hKVNQzNtORvOqomDmDIbExolzy9d5xGw2fI6ii/wPYrI3WWVDQRGx/agNRKju8U/UeM/4+BHSKyNRG+hXfKccbWB4x8h1wMgxqEG/ILjEmCsr7Nyr8eVLOnvrYE60+1aNhm26EoSNj+Ft+ORa5C/ThUfQTQo7bvHlB+SyQsajUuIz48Z6QXGdrbPSx9rsVfgeg6gwDmlGUJEI2i2IpDniYvXOknwSb9PRn05G33FZwZR1RLXBOOP1rnHwpyDOJ26XHPwxX2BNVPqkp47FBVlcNTMHLIHEl2UugcInAs/5bnYIgdt9QMPvwRYExJR4twKXkCWnubM5t164OQ+5r264pO2SsDgAOORTZUF7LjU6LJQSvWJDw7C4hurDyruT9dK+j6OMLcp92J6J8VZwj8qStxtNWemJrhMZzTYxOfJpX19jNO4ehL7gjnnOy+cwi3lSuJgfnm9V/GyF6Em7sM7Skk1qs9ZLGTfYMgaCXg95jhvKDM4KoAmGp35Xrjz/ZC69I26geHlz7tgJSqKIDkZ9GU3wwcDMArFZfyU74qN1akPHB6x9WYqGRjKsHaMo9ol4RGmONS/kzh2STdu7b43VUfv1GPkg5Yo4hWuFEYTLtcnNWmkqMH2dlG109QP29C/eynEQeeptCEiGhXE86QF+e28MoJDfKg7Oecav55JETH44SLRlOPEeHYlFnV0K8bMX95JJlZEsHtXbi3e7mMGT9M/zr/kHDQEmouw4W36wlZacVQrqDu+8PA5N7eryJFMqJ0w== X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(376002)(396003)(136003)(346002)(451199021)(36840700001)(46966006)(40470700004)(186003)(40460700003)(47076005)(2906002)(336012)(2616005)(86362001)(36756003)(33656002)(82310400005)(36860700001)(81166007)(82740400003)(40480700001)(356005)(316002)(6486002)(41300700001)(5660300002)(8936002)(8676002)(6862004)(54906003)(478600001)(53546011)(70206006)(4326008)(70586007)(6512007)(6506007)(26005)(37363002);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Jun 2023 08:30:32.5783 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 0b8e05a1-9046-4f76-cdeb-08db6731758e X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: AM7EUR03FT006.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR08MB5967 > On 6 Jun 2023, at 21:29, Vikram Garhwal wrote: >=20 > Hi, >=20 > On 6/5/23 12:12 PM, Julien Grall wrote: >> Hi, >>=20 >> On 02/06/2023 01:48, Vikram Garhwal wrote: >>> Add device_tree_find_node_by_path() to find a matching node with path f= or a >>=20 >> AFAICT, the only difference in name between the new function and the exi= sting one is "device_tree" vs "dt". The latter is just a shorthand of "devi= ce tree", so it feels to me the name are a bit too similar. >>=20 >> From my understanding, the main difference between the two functions are= that the current one is starting from root whereas the current one is star= ting from a given node. So how about "dt_find_node_by_path_from()"? > Thank you for the suggestion. This name was added in v3 as Luca Fancellu = suggested to rename this function to "device_tree_find_node_by_path". I am = okay with renaming it to dt_find_node_by_path_from(). >=20 > Luca, Michal and Henry: Does the dt_find_node_by_path_from() name works f= or you? Sure, go for it! Cheers, Luca= From xen-devel-bounces@lists.xenproject.org Wed Jun 07 08:33:06 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 08:33:06 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544497.850317 (Exim 4.92) (envelope-from ) id 1q6ob4-0003GD-EF; Wed, 07 Jun 2023 08:32:50 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544497.850317; Wed, 07 Jun 2023 08:32:50 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6ob4-0003G6-BK; Wed, 07 Jun 2023 08:32:50 +0000 Received: by outflank-mailman (input) for mailman id 544497; Wed, 07 Jun 2023 08:32:49 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6ob3-0003G0-DN for xen-devel@lists.xenproject.org; Wed, 07 Jun 2023 08:32:49 +0000 Received: from EUR02-AM0-obe.outbound.protection.outlook.com (mail-am0eur02on20626.outbound.protection.outlook.com [2a01:111:f400:fe13::626]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id e222f25d-050d-11ee-b232-6b7b168915f2; Wed, 07 Jun 2023 10:32:48 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by DUZPR04MB9746.eurprd04.prod.outlook.com (2603:10a6:10:4b1::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Wed, 7 Jun 2023 08:32:46 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.030; Wed, 7 Jun 2023 08:32:46 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: e222f25d-050d-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Qi0uvay6jNOeNFO95Qtqx0qGcxNH+oBqHv3VX7t9Vl9+fOK8fhzLIYyQxJfnSHTztBt2nKpgdPWbMhJcXsqQlYwgF2SUSm6R9RlQmuYsBcuCJDeNh/EDB+zLZwg49VBHb8+WnI3ldKnD6X6mTfDT1RiajyXbdC32W0Z5KqU1WrxR6I2gngFoSLbWq5Igpb+nJfw6MEgCwnPFuBQV2fZGg+mUDfQjek1kAaxJ044stl+hbyKnWRD3So5//Kuc8ICDVoUwX9YEzuusyjFWUgOQGEgiR3GfmnuAaTzdbbnY3dGRNCVW0kB2RducRhQxQwxMeOYz+UZ7C+K1bnAQVIn5Kg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=sWVl1QsY/cVcT3X9J19Z5ho+B2U7bWpJkaXyPw8HXxk=; b=e+zY1BCV0/ZMs3HOAJ89KJd8/ugHqfnNkMLcYf3a3+U/1InTpS7BTz4NfwQWAgKLsjptaLtMo6u00tlCyY75HOpDV8EqQKLyEFEksAbF8hg2UmW2gROeZ01kMtvdy2/FwdGHVU7WIppJaC1MvvnE30n6fAseq9HnqhSEq9AFFie6IPbiAW97lQ78F9e+JWSUufavjIYWh9BPzTzgxrxlW03VcQy6apMeGse0WB33LH/jsZRnxZXGQtqitMRXLCy03Ra6VCZ0cCTEB1In6jvM1JUTeDq3srnmKyHL0/NOCKDFSwi1fosBAnlUwgZu7J7Ucq0QqOtLEzpmidMR//xP6A== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=sWVl1QsY/cVcT3X9J19Z5ho+B2U7bWpJkaXyPw8HXxk=; b=S8KQeIzgwpuyIRGeMZirbFKKI5Umitf+wI/aVCO7kELAkHQpMyvSyc/jTC019yORAj4vP+3THaVVMb2j4H5t7igCI73v6ng6cl77uLXJmtPE0JmHwYxQuHMasowfbl4pAQm/+Bm4GGk4Ef60p17BNp0vXfSe6tQUwR7helRyay7Aj51TC+CdoWdVlkXYugBACRVMaaPXdwe+ttyWwibMXTL5xklsj5h/hIsNPjHWhi2AtLqM1eBpc6hLiWH2xdavNCSpiwV9j3lc5jEagCvb+9U2vxld1hng2NBMNjzXifqpzZbYKZLCLR9Lsp2Q15gFg7cmegpKSAwsZinwec+OEg== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <955f134b-75b8-f8a4-2e02-ae6def536ffb@suse.com> Date: Wed, 7 Jun 2023 10:32:46 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.11.2 Subject: Re: [PATCH] docs/misra: new rules addition Content-Language: en-US To: Stefano Stabellini , roberto.bagnara@bugseng.com Cc: julien@xen.org, andrew.cooper3@citrix.com, roger.pau@citrix.com, bertrand.marquis@arm.com, Stefano Stabellini , xen-devel@lists.xenproject.org References: <20230607013810.3385316-1-sstabellini@kernel.org> From: Jan Beulich In-Reply-To: <20230607013810.3385316-1-sstabellini@kernel.org> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR2P281CA0069.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:9a::10) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|DUZPR04MB9746:EE_ X-MS-Office365-Filtering-Correlation-Id: 41e0740e-ef5f-4f98-418c-08db6731c51e X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: uORp4cLhKZ/FjeQJCK25b3FnFEi8uOzxIfvv9tNfhvO0bMCLLXxDMgT1glTpRQxMeyUJ9dBXIxk5qrtYExs5GBm+e11WUjSehc4IBBPG9Gx/a2z1PyN9Fm3mvoVMkizJSF8FjbW8NWwgC+u36fCwM0IWNhNBc5cfW/7Q/D2Zc7OO7mdlzoS+Wc1+XLWg+WBBU96w7egWUnTKHMZ03sAAb8WYg5HM1/xc9yRL58dCmLHc4nHrf3uVUS/iM7O7i6XzF2jRPyRcRku+63t3Em0fAAFhRpCdfhr1zEZLuo0RLHO/qAVK+CrA9hYCIOKZkWkh9WBmdVmKYUB8l70WjifwXpEYGdnKNYhSUaam6HKdYinFweZCyS3r3lRmDA7/5650lDoF+zaiCANif2smybiDNmwD+zBX6bUljW8kUvVKRKJg6eEoO+dwBE9KH78YL64TFPi2oSMjqonT67fZZa0xta9479HuUKVIfbuDjzFkHhPjlVfcHqNjoCehxJNTmOYxHs0DNwZkr7POr22QUuZxrWaVSONdeATuctYxRoFuu7YTcMYkd3tK/Fbt4iCxCCxizcFNiRCskmSkFGhNTYdwJhpXFhFY3l+fGUGa/2pnd/jiBtxk1izWuj7ML4i6Mn3qnwTktpGSQqtgp/vNIzDiq0DKMpZldPGrqIdh30ULKaT8Pvvhl7zd4nqlxQBspsVS X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(366004)(136003)(396003)(346002)(39860400002)(376002)(451199021)(6486002)(36756003)(2616005)(83380400001)(31696002)(86362001)(26005)(38100700002)(6506007)(6512007)(53546011)(186003)(8936002)(5660300002)(8676002)(41300700001)(316002)(2906002)(31686004)(478600001)(66946007)(66556008)(66476007)(4326008)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?TU5CUzhibXJQRXNWeWxjSTFwT1ExdnRQU0VCNHZuRFhRRFlWR3U4YWE5OVEx?= =?utf-8?B?MFF6Z21tZ1BYTXVuRW5iZ0Mzd2xDekxpeCt6a09kdGpMWER4MkZkWXd1LzR1?= =?utf-8?B?T0FFb05QTERDL0hncTFrWDN3blJMSXlQRTBEaHZaNWxlNTlSUTFsNG9RZGRy?= =?utf-8?B?KzR4TTB1ekRUOXBaRWFlYlpoTjlkMExBcnMydHRjc3hKYkROYldrbVhDUDVU?= =?utf-8?B?RURnYWhVVnBnbGZxRThLK3lTMFhJQ2RwTjYycTFJNlQyM0N3QVYrdVFaMWxL?= =?utf-8?B?MVg2dUU3cktoVG8vejRVL1dmVEFrN1B3d2hLb1BiVW53VmVQeGhpK0Y2dTlR?= =?utf-8?B?Qnc1MjB1Q2sxVmlCR09Tb3pxM1ZIQnkwOThzWEFJV2o5QU5IK1JBdlIxZGpR?= =?utf-8?B?WlZjSFVZdkF6Y2JpVEx4Qm5DK05tcDAvK2ZlUThwdGZyRlhTeDNWODY5ZGN0?= =?utf-8?B?QldIMXBqcStYOVBMd09wdzRSaTRxdytLYUt4Q0c0b0VVT3BGTUlMcWhRQ1ho?= =?utf-8?B?b290TnF1WUZPTDdHa2J6Qmw2OFI0N3BlditEL2RDUUdtb0s0dVBWa28rMFRO?= =?utf-8?B?V1FYZmJ6MW0xRitsMDZ2VFh3WGh2VUxJWFZVK0JYM2xPRE93aTJrRnVpL1Qx?= =?utf-8?B?aVZxc1dBWFVNRlozMDBralZWS2ZxeFVWQUMzOEJCYWFMc0RJTkZzNFNGOGxS?= =?utf-8?B?eFZDUjJpYjV6ejNyNDhjV29IZ1V3TllZUklwWFlZUitkd21JZi92bExDZTMy?= =?utf-8?B?aDRhbmhkK2JoQmtRK2pXbkVuUWxVdXo1RC84Y0MzbXcvQkhza01VRFd0RWRz?= =?utf-8?B?R1dSM2R0SlR2RGZ2bDgxaWxXay9BdWo1ZUtlVmRMQzJkb2ZVbFhuaEM4VElJ?= =?utf-8?B?LzNhRFZkZU9qbk1tRjhKa0k0cnRQLzhGc2V4QkUwVkpNYW1memVSRDRVSXFL?= =?utf-8?B?YXBXMGJBbm1DVEgrOWRWMGNEOUM1QmlsY244WWNOeUJtNzFwaStVUjdmang4?= =?utf-8?B?L2J2SDhNcmxjc1RCZlhDQzd4bTNxNVFZb2RpakVJTlhUK3BtYnYrOUxjM3lU?= =?utf-8?B?bzE4b3JYNytkdWNmdGZacnQyeVA3blYrRHBPVHVPSkNFeTNxL0Q5MXRPMTV3?= =?utf-8?B?TEVGNjErblU4SEJhODNPY0llVXk5VXJrTzdadUlGVDBqTlNYMC9PbmRkV3Vo?= =?utf-8?B?OXg0a1dFbkFHa0hPYXFRQXB3STdPWm13TEZrVzlPTmErN2c5V0VPK3Fqa2RX?= =?utf-8?B?NHkrak5lZnA3UG1xbVVMYUFLdjAxamdJd1FoaWFHR1NzdjVZSWthM1ZvT1RG?= =?utf-8?B?MEovbjM4VUhEQ3RGVTFBMllZOENJRE1xYXcrbnBnVlpsTGY0NDZBazdOZ2NX?= =?utf-8?B?dmVnYmlBMllPRHlIZ1Q2bXQ1djF2ZStncTMxMGovYUhaVEVYbVJPekR2ZHNP?= =?utf-8?B?NEhKclF0NkwyaXJ1WkxRcHF3emJaaVpmaWpwOXJyVUE0WkcvSWlyWk1hb3Rt?= =?utf-8?B?Zzk0dk8wa09EL2lkSEdFVHRFMlZBUEdWbWRnYjZBN0FKbkVySjZEcXJORXd4?= =?utf-8?B?bEIvVEVybFJKVDZja1NVekYyeVh2YnpXY1NQM1prOFA1SmJ0R1lFcCtMbm5w?= =?utf-8?B?ZnVycmxUR3VPblY1LzljM09Ddmw2ZzZ5VE1MMk5mcCtLSml6cDRzZTRnQzlQ?= =?utf-8?B?N2NvY3B3MkQ0NDlHdFczWEdkUitGQ2ExZFl2Q3ZKVWRWOTNsWmtUZEd6UEhD?= =?utf-8?B?V0JwWnZMVE9UUkVJdTFKaXFSZlA5VFBZdFZ4TXBsa0dRRjR4WkJjNk5pcDZU?= =?utf-8?B?QjNaSzZTa2NESFl3MytURitOKzBycXd6eFZlODZzTXFuY3lURXlDMkl4UkJS?= =?utf-8?B?elBFU2RSTHd2SENxaWV6V0l0YXYzcVA5VjlLVmtpenlxZ2wvdGZnZGJPcG1o?= =?utf-8?B?NE5uVTdqajcycFJIT2EzY0FhL0pURTVtZnQ1N3QrQzZZZ1o3d3U3ckxTWTdj?= =?utf-8?B?VU43YWFFNzF6WkJ5b2pxYXZKdG1iN2ZuTG9KSFFjYldTS1MrTmtNeUF4c09B?= =?utf-8?B?U05FQWFuQm5pME9sSG5MUE9tR2xZcWozeTZua2dLUWtMT3R2eUdIQnhGaSt3?= =?utf-8?Q?0HBbvF+vzo2unZt4ZfnJooCqW?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 41e0740e-ef5f-4f98-418c-08db6731c51e X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Jun 2023 08:32:46.3338 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: c3IbVy8E32gF30BC62AfsOA4jgtGGrEe7kQI5iA+K1MZlgBAl+shz0JLB3Kzupq2uks3NDnY6BgtszdvpcYcmQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DUZPR04MB9746 On 07.06.2023 03:38, Stefano Stabellini wrote: > From: Stefano Stabellini > > For Dir 1.1, a document describing all implementation-defined behaviour > (i.e. gcc-specific behavior) will be added to docs/misra, also including > implementation-specific (gcc-specific) appropriate types for bit-field > relevant to Rule 6.1. > > Rule 21.21 is lacking an example on gitlab but the rule is > straightforward: we don't use stdlib at all in Xen. > > Signed-off-by: Stefano Stabellini > --- > We also discussed Rules 2.1, 5.5 and 7.4 but they require more work > before we can decide one way or the other. Since I wasn't able to attend yesterday's meeting, please forgive a couple of remarks: > @@ -133,6 +146,16 @@ existing codebase are work-in-progress. > headers (xen/include/public/) are allowed to retain longer > identifiers for backward compatibility. > > + * - `Rule 5.6 `_ > + - Required > + - A typedef name shall be a unique identifier > + - Considering that the rule requires uniqueness across the entire code base (and hence precludes e.g. two functions having identically named local typedefs), I'm a little puzzled this was adopted. I for one question that a use like the one mentioned is really at risk of being confusing. Instead I think that the need to change at least one of the names is at risk of making the code less readable then, even if ever so slightly. (All of this said - I don't know if we have any violations of this rule.) > + * - `Rule 6.1 `_ > + - Required > + - Bit-fields shall only be declared with an appropriate type > + - This requires you have settled on what "an appropriate type" is, i.e. whether our uses of e.g. types wider than int is meant to become a deviation, or will need eliminating. I suppose the outcome of this could do with mentioning as a remark here. > @@ -143,6 +166,12 @@ existing codebase are work-in-progress. > - Octal constants shall not be used > - > > + * - `Rule 7.2 `_ > + - Required > + - A "u" or "U" suffix shall be applied to all integer constants > + that are represented in an unsigned type > + - "Represented in an unsigned type" means there is a dependency on the target architecture and compiler capabilities: Representation can only be determined once knowing the underlying binary ABI, and uses in #if and alike require knowing the widest integer type's size that the compiler supports. As a consequence this looks like it may require, in certain cases, to add u/U conditionally. Any such conditionals pose a risk of cluttering the code. > @@ -314,6 +343,11 @@ existing codebase are work-in-progress. > used following a subsequent call to the same function > - > > + * - Rule 21.21 > + - Required > + - The Standard Library function system of shall not be used > + - I wish inapplicable (to us) rules would also be marked as such. Jan From xen-devel-bounces@lists.xenproject.org Wed Jun 07 08:34:50 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 08:34:50 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544502.850327 (Exim 4.92) (envelope-from ) id 1q6ocz-0003qH-Pt; Wed, 07 Jun 2023 08:34:49 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544502.850327; Wed, 07 Jun 2023 08:34:49 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6ocz-0003qA-N5; Wed, 07 Jun 2023 08:34:49 +0000 Received: by outflank-mailman (input) for mailman id 544502; Wed, 07 Jun 2023 08:34:48 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6ocy-0003q4-So for xen-devel@lists.xenproject.org; Wed, 07 Jun 2023 08:34:48 +0000 Received: from EUR02-AM0-obe.outbound.protection.outlook.com (mail-am0eur02on20606.outbound.protection.outlook.com [2a01:111:f400:fe13::606]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 2978dc2c-050e-11ee-b232-6b7b168915f2; Wed, 07 Jun 2023 10:34:48 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by DUZPR04MB9746.eurprd04.prod.outlook.com (2603:10a6:10:4b1::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Wed, 7 Jun 2023 08:34:46 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.030; Wed, 7 Jun 2023 08:34:46 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 2978dc2c-050e-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=KIyFxZeQ7jcu4aGfn/X71UbDZv/lLb/d4H73IxABiR8PypygBdtyKxAd9S6fNuT/93DDeQ8FSuV+OBh1g807HqYkGfymT2de4+48Dt7IAnI/75wbE2xzONwbUMr6kegdxSw/ZLHecX99ORsONeE0sDdTwS0TukQKHF/yAToJ3gWzVHDkCnDlmBHap8N0CfFjiGstX1PMjZ8VDEWOiM5psk0t1hD5Fg6l4nmo8xrDrIWITODMzRNFBaOoUA+ICsmrgvlrTCKu+VpUGdUbmrR7V+QHBhZ9qSl8mZR/TIic89xeGUOBuU1YOpESUjqMdUuNjUKPwbJMu4QGsqFWZRE3zA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=DqXVfS8dWoGA292OdjFTJPjsT5FSP3irJhSO3rnyOCc=; b=Hr/2xqiYf8YK1/FvOsj68x2SilGDyG3KttZBuiMbrEeEByPYeVprIgEvopGzxrEu6+IEgoQ4Y7iMz5Nsh5Gsn5+T4Xnc6uB7vIDCEGRVUfQS1N/VyOICnaQH3NLTV4WQvVV8ysCOgVMN6K4QrOBpIK29pe9TIOettibhD7KXUTPEVHcgEJW+jCdhMXw3QD3Fp8aDrPhp7teR5O7tnqiUsMTnLQtmtcpvaziBGbS0SdN/fBHN0B6bWAqPLmCNwHN/tN2Q9L5j+RsrQ9UJzXrVAbmbHZsAt+2TaxqAZ7H5sHDFT8c8JPLCgNJhOEA07+NvWcZnQPc3BW6MaF2zsRpcmw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=DqXVfS8dWoGA292OdjFTJPjsT5FSP3irJhSO3rnyOCc=; b=hYbrw30O7aboAMOR5nFoTlWQUFoZ7LLXRHyw6C941UVlanOj38CQUl/KkN6h5Nq+NeemJuVVfP/nhCy/L+EnRCyOfG78NSCwOVTzc3E1ORs9MW8wCUtZQ1vkGCgM08jZmnwDGiM0fKzWDQSFBWxTFc2Narc6vMn/aIB9fXCjbbGH7gdbifrY2gcobROP5MBo495UdQfH/yDJq9O/LwNTFTkGgyNWAZhe1VrKfWi+d/yIGMNYdldZzmjFwJX+alJIeonlcEGIeIzMKWdVlsFsSkqqg7yddJsx8Q/cxeM62IPEs7siod3lxNZBXAcPmnFB+AHSJlb8a/SuDyJzFGkEEA== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: Date: Wed, 7 Jun 2023 10:34:46 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.11.2 Subject: Re: [PATCH v2] xen: Fix incorrect taint constant Content-Language: en-US To: Bertrand Marquis Cc: Andrew Cooper , Stefano Stabellini , Julien Grall , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , Volodymyr Babchuk , Xen-devel References: <20230605112303.1764183-1-andrew.cooper3@citrix.com> <1f356d3b-7068-088a-a59b-eadbfb3f59cd@suse.com> From: Jan Beulich In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR0P281CA0168.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:b4::17) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|DUZPR04MB9746:EE_ X-MS-Office365-Filtering-Correlation-Id: 4756faa5-fe18-4f6b-a7dd-08db67320c84 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: jvVWq957In2EkrKzwiMRnDm+CIcWDx9zt5Zc4XBFWMTTq/ztsNa9YvmT7i6hI3zGRe5PnYu7LpF0UjXnoTVsZ7qlwuPw4C8/W9hlyYcuS5xH1DEHuwMxCU+8hWetdE6p6m7enBtz8ScEi0n4JBd3i2GcnTS2oM0guMXQRG2bO/ybIVvPE5Bw9qsSRVGRtLH0Aw8O052bVz2ij7zAqd0q25KE7tP/8PkpCkKs2L7JLhaQ6HYHMXYwg1ucJHHgQbvZuf7suFNd0HxJmcgiU5qj648HTrTMQzlFAhhRgjygZTH4fCK3WFSheBbOXmKHd3J3q9Sx4EF3UUSox2Y+dgOrxhSGYL+CbvnN3TdORyhTknpXDJ5HIwVr72/n7X7g7Y9avGZESIFCbj06Khz2xgjBX43wBLATS3YAirTkUntVVbFrahVCdIivrgeqey14XmMACi9ad/AssI2BlDN9rljTWNTbzF7SmZQT8I0CpfIXyvAywArep2ND+oL5urWTTh2YN0iAKLmLmk335PaoODNKQQgWOemIUOPOq1a0xy1ByK0ZNMqdNnfg4muV8+lz3qJyJuS70PMbszQr+R4qPCSxDLuuXgGsMR9Jo+YtzdAnYYcqN+y4rMrmluGWiKjvWzGJmtV2SpwZMQWKCqc5Qml8Bw== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(366004)(136003)(396003)(346002)(39860400002)(376002)(451199021)(6486002)(36756003)(2616005)(83380400001)(31696002)(86362001)(26005)(38100700002)(6506007)(6512007)(53546011)(186003)(8936002)(5660300002)(8676002)(41300700001)(316002)(4744005)(2906002)(31686004)(54906003)(478600001)(66946007)(66556008)(6916009)(66476007)(4326008)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?STFTM01lcEJEUzBlTTNwTFNJRUk4bjhDWFZiTk1iTTZRYlB2V092UjBsT1Nk?= =?utf-8?B?RGNwbGt3WVFUNGtrNC9IUnY0QVNrYTB6eVdRbEJaM2dLcHExVW0zMFBndDdF?= =?utf-8?B?U0tLTkFYUjJxbmJsKzZkdGMvQ1ZDdzJVUExtMDd5VVkwMDg5YnJUdXdkNGNM?= =?utf-8?B?YmZrTCtZRnFEKzhVMmFta1NxbXFiUXlBSzRybFZ5RGpIZUNVYTJmcFVFYlh1?= =?utf-8?B?dFBKWmtOQW1vR0MvZUVIMzBlMTRDTFRKQUNoMzdKRGVuQ2dPOGRaMC9TcUZl?= =?utf-8?B?dE96SHFHQm9IUFMvcFlpMndPRmpTWCsvNEI0dk9WRUxtNml0OEpHK1VMYzVU?= =?utf-8?B?QzlLd3FrMThFQnpmSjY0eXRIeU1JWEl1ZS92anhnd01WTll4ZzdNYzhvVUhD?= =?utf-8?B?Vkd5UjdDWEp2RmFQSVlIN2FnaVMvRDFrOFNGTXVFVTR3dDNCNkxONE5DQ1Jp?= =?utf-8?B?dXRFMG9pTEluQVo2Qmc1cEw2d2FDSFJDMHJodTFuUHRIWE5kRGFYSnVEdWl3?= =?utf-8?B?VmtHVTQyR0F1TDVCdTZieGZDSXNCcDIrUVA0ZDZ3OTlLbGFGZGZramVOL1dL?= =?utf-8?B?QnZnSHlLSnc4R0Q0c1Fqdjh0L3laZ29vYlR1ZVVIN1gwZ2hLYkNhNkU0MDh4?= =?utf-8?B?RlhEUm5LVTVUWUhUMXovVjc0NGRCSEhJd2F3NVhrQ1hlQ29UbEo4T01FSnNF?= =?utf-8?B?NG4vNEZmanVHbkZhWTJmdUFQMTJUWEQrVHVaSjJzL2lZSElrZGltZCtVUFFT?= =?utf-8?B?VTNOUFBJTGU3c096ek5JSVFvejhqbSsvSFVJQ3ZXMzF0ZjhuTWdNeGQ5R1lE?= =?utf-8?B?V1lWMW8wTTMrZDU4NXQzT3FTT29NbTRaR0pueTdyblo5alBlMy9wMGc5NGk0?= =?utf-8?B?Vk0xMjNoZDl2K1FOcWZpL2haNjJtZDduWTNTVG9yRTVJeG5EQVBjSUNpeUc3?= =?utf-8?B?UWdZbm40dFljN1RXemhmcGRsUEw2d2ZpUVQ0Mm9GaWVSTWo3REphd2kyNXA5?= =?utf-8?B?REh2NDJSaUx1WDFlZi9Obnc1V1M1UzlrL21DeDd5S04xeHNUSkZCS1NFT1Ex?= =?utf-8?B?SmFqak80ZWd1c2lnay9WMHc4ZWZzVG1lcEJFbGZnWWRWTHVUL3QyNUNjaEFq?= =?utf-8?B?ZkNNMzVDYmRjdDIzMDhyTk1hT3IyQno0S00wMVFXMGJVeGNFT2JWdG13MG1L?= =?utf-8?B?RWYrTVlOVWd6NUwrbXVsc0R3M0tIYVgySnNENHMvenkxaXYvTHl1aTF4YTlL?= =?utf-8?B?YXgwR0xoSmhZY1VodG41azVkL3NVWDJsY3duSHV0S2NNQ1FMcVRyRXYvcUxw?= =?utf-8?B?WGpSOUNjbDNLNHdyL1BFQmo0Q3o2dVROeXNvbEd2czc3bkQxcWZ6RDdDS0Nx?= =?utf-8?B?OHRKaHJNeFpITU9PNm1xU2FGdTJIRW1RL3poUkxLSHI1QWU4My9mRjNNNjZZ?= =?utf-8?B?WDFEeXViZm0rNWVqdy92eUZSYjNtS1FqeVZqN24yeVdqOXh0OFdBTU14SDBQ?= =?utf-8?B?QisyOFlpRmhVQUxnRlA1T1BqZEtMRUNGcXFCQ1FOQ0xuZzMvVGNhZmhGeEZi?= =?utf-8?B?NmN4Ly9wZXhpaUU1cnRPYlhOM3JITjFJZ3JUOFdwa0dYL3BSQk9ucitqN3ps?= =?utf-8?B?ZUp3akliVnA1VDJXRHNMT0htTm5oUVZoT1NYOFdicmNCdUhwRFZCWVJ1K3Bh?= =?utf-8?B?RWdhM3NsUVhzUkc3d0VTSjIzbUhmdlpuaGVGQXVpc3hUUDRIQVhTN1l1cjRm?= =?utf-8?B?RE9oVWtLN2ZRMlYwOTlQTGFtVm8zZnBJOGh0SVo2T0YwUUZKaUpHZjFaaS9C?= =?utf-8?B?c20vYlhySDFVTXRNZ3ZXUkhPdGxneWRlYVhnNmFhbk82U3pIVmpZTkpkYitz?= =?utf-8?B?MjlZWkgrUUdQK2VoOUhPRnBNOE5rbm5xN25SNmZKbzBzRjV6SDRiOWtqUEk3?= =?utf-8?B?dXFrbnNOVFIxcUlMMGc3YVBZM2hncWQ4bmV2SGZaenJMVGVSd3NaQXJkSWdp?= =?utf-8?B?b0c4NjhRcXZMclFZd1I5RVFpc1RBMUxsVEhZaFpjSWEwaDhQemRDbGlhaURC?= =?utf-8?B?eC9jek04c0VwMkYzU2NQVE5aYmNhTWxQcER2T2owb2ZTOG9laTVtdWdKMUdO?= =?utf-8?Q?fgR5i4Z/Jsw8NMUHVxxh+mg+4?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 4756faa5-fe18-4f6b-a7dd-08db67320c84 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Jun 2023 08:34:46.0403 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: a7cD3HoAHCRPXGvvbE1E6niqexuAP3jGuR7wVL22PvZAL0My9lxaZldEBV+vC2aJIk711MVCBYktO6fYB/8+gg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DUZPR04MB9746 On 07.06.2023 10:20, Bertrand Marquis wrote: > Hi Jan, > >> On 7 Jun 2023, at 10:10, Jan Beulich wrote: >> >> On 05.06.2023 13:23, Andrew Cooper wrote: >>> v2: >>> * Fix commmit message >>> * Update comment ahead of print_tainted() >>> * Change the emitted char from 'U' to 'I' >> >> Just to mention it: With this additional change I'm no longer >> considering this applicable to stable trees. I realize that one could >> argue that by taking it we could accelerate learning that we broke >> someone (if anyone), but I'm not inclined to follow this line of >> thinking. If Arm maintainers (seeing that only Arm uses this right >> now) think they want the change nevertheless, I'd include it, >> though. >> > > Not sure if it is what you mean here, but this is not a candidate for > backports definitely. > > Or do you mean something else here ? No, you got me right - I was asking whether to backport this. Jan From xen-devel-bounces@lists.xenproject.org Wed Jun 07 08:43:23 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 08:43:23 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544508.850337 (Exim 4.92) (envelope-from ) id 1q6olC-0005Mn-JU; Wed, 07 Jun 2023 08:43:18 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544508.850337; Wed, 07 Jun 2023 08:43:18 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6olC-0005Mg-Gp; Wed, 07 Jun 2023 08:43:18 +0000 Received: by outflank-mailman (input) for mailman id 544508; Wed, 07 Jun 2023 08:43:17 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6olB-0005MW-E2; Wed, 07 Jun 2023 08:43:17 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6olB-0006Mb-9c; Wed, 07 Jun 2023 08:43:17 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6olA-0007GU-Rn; Wed, 07 Jun 2023 08:43:16 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q6olA-000401-RF; Wed, 07 Jun 2023 08:43:16 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=chmN+6uft/XqHk4EoD83RwqFIETUtpw4+C6YXCywXiQ=; b=r+xwyfgd4h7irUYjdDBrjf8u8/ 7BQ50b3SiThniNmnbIw33NPJt19ovpKKgqDJ2iKwtX1hTKhIQts/Dvgd98X5JwY6q2ICXjRpV8AiY VQxqqyGgr/pmIaFxJUy1rjSt5S2zS0Q5aC2LT7DaGqYCMlWWozK38XcgNw05MmFWU3UE=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [qemu-mainline test] 181236: regressions - FAIL X-Osstest-Failures: qemu-mainline:build-arm64-xsm:xen-build:fail:regression qemu-mainline:build-arm64:xen-build:fail:regression qemu-mainline:build-amd64:xen-build:fail:regression qemu-mainline:build-i386:xen-build:fail:regression qemu-mainline:build-amd64-xsm:xen-build:fail:regression qemu-mainline:build-i386-xsm:xen-build:fail:regression qemu-mainline:build-armhf:xen-build:fail:regression qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-i386:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:build-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:build-arm64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:build-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:build-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pygrub:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking X-Osstest-Versions-This: qemuu=f5e6786de4815751b0a3d2235c760361f228ea48 X-Osstest-Versions-That: qemuu=6972ef1440a9d685482d78672620a7482f2bd09a From: osstest service owner Date: Wed, 07 Jun 2023 08:43:16 +0000 flight 181236 qemu-mainline real [real] http://logs.test-lab.xenproject.org/osstest/logs/181236/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-arm64-xsm 6 xen-build fail REGR. vs. 180691 build-arm64 6 xen-build fail REGR. vs. 180691 build-amd64 6 xen-build fail REGR. vs. 180691 build-i386 6 xen-build fail REGR. vs. 180691 build-amd64-xsm 6 xen-build fail REGR. vs. 180691 build-i386-xsm 6 xen-build fail REGR. vs. 180691 build-armhf 6 xen-build fail REGR. vs. 180691 Tests which did not succeed, but are not blocking: test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-xl-xsm 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-raw 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-xsm 1 build-check(1) blocked n/a test-arm64-arm64-xl 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit1 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit2 1 build-check(1) blocked n/a test-arm64-arm64-xl-thunderx 1 build-check(1) blocked n/a test-arm64-arm64-xl-vhd 1 build-check(1) blocked n/a test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a test-armhf-armhf-libvirt 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-qcow2 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-raw 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a test-armhf-armhf-xl-arndale 1 build-check(1) blocked n/a test-armhf-armhf-xl-multivcpu 1 build-check(1) blocked n/a test-armhf-armhf-xl-rtds 1 build-check(1) blocked n/a test-armhf-armhf-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-amd 1 build-check(1) blocked n/a test-amd64-i386-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-raw 1 build-check(1) blocked n/a test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-i386 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-amd64 1 build-check(1) blocked n/a test-amd64-coresched-i386-xl 1 build-check(1) blocked n/a test-amd64-coresched-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-xsm 1 build-check(1) blocked n/a build-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-shadow 1 build-check(1) blocked n/a test-amd64-amd64-xl-rtds 1 build-check(1) blocked n/a build-arm64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a build-armhf-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a build-i386-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-amd 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-pair 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-qcow2 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-vhd 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvshim 1 build-check(1) blocked n/a test-amd64-amd64-pair 1 build-check(1) blocked n/a test-amd64-amd64-pygrub 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-intel 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd11-amd64 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd12-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-multivcpu 1 build-check(1) blocked n/a test-amd64-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit1 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit1 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit2 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-intel 1 build-check(1) blocked n/a test-amd64-i386-xl 1 build-check(1) blocked n/a test-amd64-i386-xl-pvshim 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a version targeted for testing: qemuu f5e6786de4815751b0a3d2235c760361f228ea48 baseline version: qemuu 6972ef1440a9d685482d78672620a7482f2bd09a Last test of basis 180691 2023-05-17 10:45:22 Z 20 days Failing since 180699 2023-05-18 07:21:24 Z 20 days 67 attempts Testing same since 181231 2023-06-07 01:50:56 Z 0 days 2 attempts ------------------------------------------------------------ People who touched revisions under test: Afonso Bordado Akihiko Odaki Akihiro Suda Alex Bennée Alex Williamson Alexander Bulekov Alexander Graf Alexander Ivanov Alistair Francis Ani Sinha Ani Sinha Anton Johansson BALATON Zoltan Bernhard Beschow Bin Meng Brian Cain Brice Goglin Camilla Conte Cindy Lu Clément Chigot Cornelia Huck Cédric Le Goater Cédric Le Goater Daniel Henrique Barboza Daniel P. Berrangé Daniil Kovalev David Hildenbrand Emanuele Giuseppe Esposito Enze Li Eric Auger Eric Blake Eric DeVolder Erico Nunes Eugenio Pérez Fabiano Rosas Fan Ni Fiona Ebner Francesco Cagnin Francisco Iglesias Gavin Shan Gregory Price Gregory Price Hanna Czenczek Hao Zeng Hawkins Jiawei Igor Mammedov Ilya Leoshkevich Ira Weiny Jason Wang Jean-Louis Dupond Jean-Philippe Brucker Jiaxun Yang John Snow Jonathan Cameron Juan Quintela Kevin Wolf Laurent Vivier Lei Yang Leonardo Bras Maksim Davydov Marc-André Lureau Marcin Juszkiewicz Marco Liebel Mark Cave-Ayland Markus Armbruster Matheus Tavares Bernardino Mauro Matteo Cascella Max Fritz Michael S. Tsirkin Michael Tokarev Michal Privoznik Mostafa Saleh Nicholas Piggin Nicolas Saenz Julienne Niek Linnenbank Palmer Dabbelt Paolo Bonzini Peter Maydell Peter Xu Philippe Mathieu-Daudé qianfan Zhao Raghu H Rene Engel Richard Henderson Richard Purdie Ricky Zhou Ryan Wendland Sebastian Ott Sergio Lopez Sid Manning Song Gao Stefan Hajnoczi Stefano Garzarella Steve Sistare Taylor Simpson Thomas Huth Thomas Weißschuh timothee.cocault@gmail.com Timothée Cocault Tommy Wu Vikram Garhwal Viktor Prutyanov Vitaly Cheptsov Vivek Kasireddy Vladimir Sementsov-Ogievskiy Volker Rümelin Xinyu Li Zeng Hao Zhenyu Zhang Zhenzhong Duan Zhuojia Shen jobs: build-amd64-xsm fail build-arm64-xsm fail build-i386-xsm fail build-amd64 fail build-arm64 fail build-armhf fail build-i386 fail build-amd64-libvirt blocked build-arm64-libvirt blocked build-armhf-libvirt blocked build-i386-libvirt blocked build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl blocked test-amd64-coresched-amd64-xl blocked test-arm64-arm64-xl blocked test-armhf-armhf-xl blocked test-amd64-i386-xl blocked test-amd64-coresched-i386-xl blocked test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-i386-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-amd64-libvirt-xsm blocked test-arm64-arm64-libvirt-xsm blocked test-amd64-i386-libvirt-xsm blocked test-amd64-amd64-xl-xsm blocked test-arm64-arm64-xl-xsm blocked test-amd64-i386-xl-xsm blocked test-amd64-amd64-qemuu-nested-amd blocked test-amd64-amd64-xl-pvhv2-amd blocked test-amd64-i386-qemuu-rhel6hvm-amd blocked test-amd64-amd64-dom0pvh-xl-amd blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-freebsd10-amd64 blocked test-amd64-amd64-qemuu-freebsd11-amd64 blocked test-amd64-amd64-qemuu-freebsd12-amd64 blocked test-amd64-amd64-xl-qemuu-ovmf-amd64 blocked test-amd64-i386-xl-qemuu-ovmf-amd64 blocked test-amd64-amd64-xl-qemuu-win7-amd64 blocked test-amd64-i386-xl-qemuu-win7-amd64 blocked test-amd64-amd64-xl-qemuu-ws16-amd64 blocked test-amd64-i386-xl-qemuu-ws16-amd64 blocked test-armhf-armhf-xl-arndale blocked test-amd64-amd64-xl-credit1 blocked test-arm64-arm64-xl-credit1 blocked test-armhf-armhf-xl-credit1 blocked test-amd64-amd64-xl-credit2 blocked test-arm64-arm64-xl-credit2 blocked test-armhf-armhf-xl-credit2 blocked test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-freebsd10-i386 blocked test-amd64-amd64-qemuu-nested-intel blocked test-amd64-amd64-xl-pvhv2-intel blocked test-amd64-i386-qemuu-rhel6hvm-intel blocked test-amd64-amd64-dom0pvh-xl-intel blocked test-amd64-amd64-libvirt blocked test-armhf-armhf-libvirt blocked test-amd64-i386-libvirt blocked test-amd64-amd64-xl-multivcpu blocked test-armhf-armhf-xl-multivcpu blocked test-amd64-amd64-pair blocked test-amd64-i386-pair blocked test-amd64-amd64-libvirt-pair blocked test-amd64-i386-libvirt-pair blocked test-amd64-amd64-xl-pvshim blocked test-amd64-i386-xl-pvshim blocked test-amd64-amd64-pygrub blocked test-armhf-armhf-libvirt-qcow2 blocked test-amd64-amd64-xl-qcow2 blocked test-arm64-arm64-libvirt-raw blocked test-armhf-armhf-libvirt-raw blocked test-amd64-i386-libvirt-raw blocked test-amd64-amd64-xl-rtds blocked test-armhf-armhf-xl-rtds blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-amd64-xl-shadow blocked test-amd64-i386-xl-shadow blocked test-arm64-arm64-xl-thunderx blocked test-amd64-amd64-libvirt-vhd blocked test-arm64-arm64-xl-vhd blocked test-armhf-armhf-xl-vhd blocked test-amd64-i386-xl-vhd blocked ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 15395 lines long.) From xen-devel-bounces@lists.xenproject.org Wed Jun 07 08:43:31 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 08:43:31 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544511.850347 (Exim 4.92) (envelope-from ) id 1q6olP-0005gL-2f; Wed, 07 Jun 2023 08:43:31 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544511.850347; Wed, 07 Jun 2023 08:43:31 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6olO-0005gC-Uq; Wed, 07 Jun 2023 08:43:30 +0000 Received: by outflank-mailman (input) for mailman id 544511; Wed, 07 Jun 2023 08:43:29 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6olN-0005fZ-JD for xen-devel@lists.xenproject.org; Wed, 07 Jun 2023 08:43:29 +0000 Received: from EUR04-DB3-obe.outbound.protection.outlook.com (mail-db3eur04on061e.outbound.protection.outlook.com [2a01:111:f400:fe0c::61e]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 5f9b5016-050f-11ee-b232-6b7b168915f2; Wed, 07 Jun 2023 10:43:28 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by PAXPR04MB9201.eurprd04.prod.outlook.com (2603:10a6:102:232::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.36; Wed, 7 Jun 2023 08:43:25 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.030; Wed, 7 Jun 2023 08:43:25 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 5f9b5016-050f-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=HwttrdGXP4ryM47Pyn9wZgpM+YIPziAT8u6T/ovtx26mbTR4TGESh10D71C3QlCOBs/1mvQCceXKurrHMfn8sSiNvFkVyCtP06YQ3I9X8q00Ku5Wc5w4pIvjvYsURr2ptcTTglqWt1X8RH03vXnPtMQWf9cA2L5aP3r8xVZ1tGOxnbtq6fmnW3Wwdb7OyOveELztgaKBXYwQv0vt528LHphaJPR3KQlMKWj5cF0Tg3W+ch9XT6BIbWPGAHys91woF5fYQSYJAF5qIMVxTJaZqSX6o1yxn1dhAostVItCnX/bU+xvYLIF1fz6vR6OIUTrfhr8xsaZ0KxCamRvFcK+Bw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=U7eco710r6tGuzSiyWgsV5R06gelpMJu85kIuwVKIyc=; b=ZXYZbTxr0zBOPsOIBSYzSJIwsVJA6wIM5u1sw1O07Ssdt7/5VnflrHHcKZJz6p1KDqFxy6z8Oh194VkyxShWCNFHGtX3UQ/Jr+6DTLbPIjDRYEP532tCwRJa1fhdp4b4XfsXTlIeNlMC8IrgOgAL2GCWhIRPrqGWORfydKJ0xMFlfCrWEYctGvNDNTeUUlJ4Mq8OaBeKgeE5CMnkdaQrCZUeVfVtMdd62GZC0u/vhQSAVE4+Px9RMIhTwRKGqa7gDvUVlKSZDY1ZXP/6PGjp74Nmyko3s7YFhMuw2IPWngZhihpRrqMnJ6ueviYLb/QjDX8bhuEVVhOgVqBJXjypeA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=U7eco710r6tGuzSiyWgsV5R06gelpMJu85kIuwVKIyc=; b=RGlJP8UvXXUOIm6zoSUhYkTJyU4GAW1lRWCkafoWUt4QBbxLPE0YG1GTX87OK+cX1Bf2tJJ7RJs/B1grKxSUPP36A0lJQ/e0zkyu9rvSmK/YT7NHRidiKi4R9tPoPH/mDG8jLUm0T8HOm1NDeKadixaHx/ABpYYNFChpSO/o6W23t/Pa80UF3YlfL1KbytK4PT8428nz3rvgNTD3hsdtEDp+pXlp3RKX4W4KFuA56armuu+RUG54XO+XvgkZKWw/2gfbONZShf8Dk6+HniUFt5F4M5hShAz2R6vMQpFaOG/yPCuc7c2IEk9E1nFfMt1Km0lYtltLeU+6dJvmL4Kaww== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <9a34e419-ce1d-e452-47e8-fe220d600ab6@suse.com> Date: Wed, 7 Jun 2023 10:43:24 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.11.2 Subject: Re: [PATCH 1/2] x86: Introduce arch_domain_teardown() Content-Language: en-US To: Andrew Cooper , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= Cc: Xen-devel , Wei Liu , Stefano Stabellini , Julien Grall , Volodymyr Babchuk , Bertrand Marquis , Jens Wiklander References: <20230605144331.1819452-1-andrew.cooper3@citrix.com> <20230605144331.1819452-2-andrew.cooper3@citrix.com> <18a46079-8fa5-5e43-9296-56a8c6457133@citrix.com> From: Jan Beulich In-Reply-To: <18a46079-8fa5-5e43-9296-56a8c6457133@citrix.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: FR0P281CA0117.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:a8::15) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|PAXPR04MB9201:EE_ X-MS-Office365-Filtering-Correlation-Id: bb5c5a99-05a0-441d-b7de-08db67334187 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: fmahuaWXC9MgZoeu7RqkQZypoaNntZCwMe0tJX88aqENd5+sRLlxgoeyiNZxZHRPXXDRfX5Tz/Bv4aSbuYOWx004PxvcT9Px8AOyysXi2QH6iWd+g2o1gP1keQztqVrMRB8+MBJCTgcFb59g0hr4GMqBEC2089+MF5qmCZI2kMXcSLEU4ptfg0FlhOxkBG4WblCx5ImSCBYoWvfTNUzQ34GjV5tmMMmz1+Tr17hEsGscBbBjb5oZmEN4/VVoPhke3JK/i0NIJjMADtQL7yZGQtwi7d7DYOiq2t18I9Rxv6eiVGUcCl2uCBtJbWdpIteZEWqz9Hu4p6xNhuDlzUP/0hqKGLdF+3mTr5C8Y85N1sh0iVT4XZHfaaSY2Q/66+RaC/uv3K7XpXh6FKDEQ5F+DiI8Kdo5MHQqDgDS6Z1Dv//xU74vFCeNeDHTJg0ufydK+gpG6qFs/+t2mbSdsaCezZoAS6TQwf5ostU/Ge34lHpAwyC9xcRq2FfFF0erkVc5lVtsFTbHwntSqgzoxc9ItHc9HFwjU19ml3YlvUThoa9iyiUYXCDReMu/D3tBjPouLXkZ2LS3G64ZijWy5zUf6sqWzU8u0f7ABDPc9zCPTacC3g9ZVDAbg0yLl1mUCtz81f49D4kYs57ulNwSkzxIdA== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(136003)(346002)(376002)(366004)(396003)(39860400002)(451199021)(31686004)(26005)(6512007)(186003)(41300700001)(5660300002)(6506007)(53546011)(36756003)(4326008)(316002)(66946007)(66556008)(66476007)(8676002)(8936002)(2616005)(478600001)(110136005)(54906003)(86362001)(31696002)(2906002)(6486002)(38100700002)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?MXlVMUtBZW1HMS9kYkZHLzZSN1o5RkJ1ZUF4a2ZoaWU5ZFRoM2htOWY0T3do?= =?utf-8?B?ME1WYzBMY3lSSHJiYllrZE1CemxJMmNNSXFEQ0M4bVpaQTNYekJhRmdadndQ?= =?utf-8?B?NEMvZlhkd0JwT1NPTDJkYmovTElYdmdXc1VTWEJBRlN2UzJlZzFzazdidTJp?= =?utf-8?B?bFg0SjZjS1hjNk1YdERCZFQ5dDM0ZzlLWUlRZU1tNEpJZTVFdEEyeVNMRnFL?= =?utf-8?B?d25nd1N2YnVwRXRneEpRbG5MMTVSUVRwVExHcGtDOVN4VElodDVNekxVNlNE?= =?utf-8?B?V0NDMGREL3JQa0FRY0Uxc0w3N0M5b0dBOUZIdkhRUEJ1L1o2aktHLytOa3lx?= =?utf-8?B?QVhaSjhDRUNSUjVodjBNL2RuNkViem52V0huQWRTVFlNMTROOU16UUdTcmhV?= =?utf-8?B?SHJwUWtILzhYOGFzYkYva1N1RHNTT0ovYVVGZ0NJTENCWU54Q2EzdThaZlhz?= =?utf-8?B?TFJ5QS9yWnBJMGd0S3llclBtVFFsdm51bmovYWx1R1B0NnY3ZXU1SDQxTjhi?= =?utf-8?B?MGxNQXp1L0RWR0hTMU5SR0pKUVowQ09wRU9Jc0ZlYWhpMTNZdktKZzZzTVp5?= =?utf-8?B?K2xIdHZLaENpNlpoSi8wYVdHNk5RRjVvSWNLR3ovSEx4Z1hGZUJFOGowUHBn?= =?utf-8?B?bC9kT1R0c3h4NDNWdnBOM3J0emRUQy9aVFNMSlk5a0hOV2VuclZRU3NnVFlw?= =?utf-8?B?SGxuNkZLczkxZmhhSlNFQ2xwT2Fxb2VlUG9xdmE0S1l5ZFphc0FOdUlCNFZq?= =?utf-8?B?Y25ueDdtcVhCc2F3OTdpUUN4ZVZNci9EZm1DT1V2YXl1bXhDTlFiT0t0SkhG?= =?utf-8?B?Q25IczUyWTMyWGNvTlZZM2tZYk9PTHpld3NESS91dWIxZ1BzMkV4Vzk1aThV?= =?utf-8?B?YTFzTjl1RGx2VjVXUDIwbjIvVDBCOUQ4TGNMc2NqVUtGekF5dE1hd0FyVElo?= =?utf-8?B?UHNtRHNlbytreWxPcUl5YnhiVGt5VktYYUx5a1pMWmYyNkdWdUorQXl0aU4x?= =?utf-8?B?WFZ1MElDU2E3NEZaZU5DcURwWS9LTG1iZTdLM1RtMUt1b2paWVoyOU9uanNR?= =?utf-8?B?QlR1SkV0UVlROTFGbVNQRnZqSlRqZzNacU9wWVhEelJnZ0pXMGZGSUR5NDQv?= =?utf-8?B?YkZqZWRCdllVQXJpaG5JYTBXbkJ4bExKUkRpWHBaMDYxMkJWSS9tK0kyVkJT?= =?utf-8?B?RHVrd1h1ZmprRFNTaUM5RDFmUkpXOFQzdWlsbWlMbk5zWlRxM3VqVzR0MS9R?= =?utf-8?B?ZFM5ZFVMSU5JVjJ4cWNvTmdxVWR1SEk4cTNyNmJqdTFaRWJiNXN5cHc0ZUpG?= =?utf-8?B?NzFjUnBhV1plbEwvOUkvSXNlRGh6eEN1NHNNSWFZR1ZxeVNCcENVTW0wVjdQ?= =?utf-8?B?ay9RRDFKVkNiQzZtQ25vaWZjSmtuWUhCeC82R3B1VEhwL1ZBTEhLNndkRVB6?= =?utf-8?B?UGVhY1JKVHJrajYzblNlREdhSldjdFcwUkZKWTFhZllOdWlGVk92bDZhNDhD?= =?utf-8?B?cktIRVhEK0JhQ3ZjdElGOHFya3RZVWs5WGE3cVJZMjVESStCMFNBbFVoQ2tG?= =?utf-8?B?UnA3bDhkVXN1RDFzcHdGczMxbTl3L3U0V2t0T1N5Y1NXV2tUcEF5SHFqYXFv?= =?utf-8?B?Tm4zQlUxWlQwYlhUK2EvTVNqa2pKMnFobGJHL1B5cmxEQUtQbzBXQ0FnSjhS?= =?utf-8?B?cmNqQ3J5ZFJEUGU3b3o2VUdMckRyOCsrSllxdEsrYlV5QU5WL1JGd2xSRGZk?= =?utf-8?B?M2lJR3M1SmNlc0JzNWpKcExBZmpmdCthVjNIcXVDYWRNTXdjaFluRmlkcVRZ?= =?utf-8?B?L05wUGRkUm1IWUlrNDFNT1dWV3hZd2pXN3NMdGRUd2lTL2VQVWpod3ZGc1Ir?= =?utf-8?B?UmY2cWtJK1diRGx4QndSUHQ4OWwzTk5EdlQyTFFzMHo1d1BZb0J2WW1wMWdk?= =?utf-8?B?VVZlN1Q4RUYyN3dvY1VwYVVRRlRSMS9EOEdVWWlGSjc2WjFRTHJleWRVRi96?= =?utf-8?B?elYvQlhLTmhmdElnalRSemJocW0xTHJsY0ZKWjREWlRUWlVOeVpRU1IySGdH?= =?utf-8?B?dFBleDJiMnlhQ092QTlvM0YrVUhqUnhOSDhTMmlndXpVdjZTVWpTdndGNXpG?= =?utf-8?Q?hpAqqpWi4tMJ64aCZfErw6pmy?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: bb5c5a99-05a0-441d-b7de-08db67334187 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Jun 2023 08:43:24.5716 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: OC/mIS+rrXGf2+O6oDNyW0hiGhZpF7cav7/b49U9+Gg7wSR/irzUWd9Vl0kw1yjpGEQOiIveo/VzKc4qdhEVhg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB9201 On 05.06.2023 17:23, Andrew Cooper wrote: > On 05/06/2023 4:19 pm, Roger Pau Monné wrote: >> On Mon, Jun 05, 2023 at 03:43:30PM +0100, Andrew Cooper wrote: >>> diff --git a/xen/include/xen/sched.h b/xen/include/xen/sched.h >>> index 85242a73d374..854f3e32c00e 100644 >>> --- a/xen/include/xen/sched.h >>> +++ b/xen/include/xen/sched.h >>> @@ -589,6 +589,7 @@ struct domain >>> */ >>> struct { >>> unsigned int val; >>> + unsigned int arch_val; >> While I haven't looked at patch 2, wouldn't such continuation >> information better be encoded in arch_domain in whatever way is more >> suitable for each architecture? > > Well, it's filling a hole here on 64bit builds, which it couldn't do in > arch_domain. > > And it's contained inside teardown{} which already signals it as fairly > magic. Plus why have each architecture duplicate the field? I expect none of the arch_domain_teardown() instances will remain without an actual use of the new field, mid to long term. I don't want to override Roger's concern, but from my pov Acked-by: Jan Beulich Jan From xen-devel-bounces@lists.xenproject.org Wed Jun 07 08:45:05 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 08:45:05 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544521.850356 (Exim 4.92) (envelope-from ) id 1q6omu-0006Xe-Cw; Wed, 07 Jun 2023 08:45:04 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544521.850356; Wed, 07 Jun 2023 08:45:04 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6omu-0006XX-A9; Wed, 07 Jun 2023 08:45:04 +0000 Received: by outflank-mailman (input) for mailman id 544521; Wed, 07 Jun 2023 08:45:03 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6oms-0006XR-RR for xen-devel@lists.xenproject.org; Wed, 07 Jun 2023 08:45:02 +0000 Received: from esa1.hc3370-68.iphmx.com (esa1.hc3370-68.iphmx.com [216.71.145.142]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 94ea82f5-050f-11ee-8611-37d641c3527e; Wed, 07 Jun 2023 10:44:59 +0200 (CEST) Received: from mail-bn1nam02lp2046.outbound.protection.outlook.com (HELO NAM02-BN1-obe.outbound.protection.outlook.com) ([104.47.51.46]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 07 Jun 2023 04:44:56 -0400 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) by DM8PR03MB6262.namprd03.prod.outlook.com (2603:10b6:8:26::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Wed, 7 Jun 2023 08:44:53 +0000 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::192:6bdf:b105:64dd]) by SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::192:6bdf:b105:64dd%3]) with mapi id 15.20.6455.028; Wed, 7 Jun 2023 08:44:53 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 94ea82f5-050f-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686127500; h=date:from:to:cc:subject:message-id:references: content-transfer-encoding:in-reply-to:mime-version; bh=B8Gs9EUIR/TMp+iSSJdMCjqVuP2s6FDHOa+64lNv1P0=; b=AhoY0TbMqa+sT0AAlqkFbz4f+rPloJl3rmNAdGG1Fy5hVjWvvps296rr h6d/8FQhFjOxOlUT0/Tmv3AN/OavZuJvtKsIllL4iHcDlLpIlZFcNlEVO USsa/Lm7C2KH35k7BR1G76J5lvUL3GSw8otE/ZsNHF4HZsApCAq3zj6B4 8=; X-IronPort-RemoteIP: 104.47.51.46 X-IronPort-MID: 112295559 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:pyQ6cqPmcUl25irvrR3ml8FynXyQoLVcMsEvi/4bfWQNrUojg2EPx jQdDWnSb/mIYGGnc4snPtmwoRkG6JDWz99gSAto+SlhQUwRpJueD7x1DKtS0wC6dZSfER09v 63yTvGacajYm1eF/k/F3oDJ9CU6jufQAOKnUoYoAwgpLSd8UiAtlBl/rOAwh49skLCRDhiE/ Nj/uKUzAnf8s9JPGjxSs/rrRC9H5qyo42tG5gNmPJingXeF/5UrJMNHTU2OByOQrrl8RoaSW +vFxbelyWLVlz9F5gSNy+uTnuUiG9Y+DCDW4pZkc/HKbitq/0Te5p0TJvsEAXq7vh3S9zxHJ HehgrTrIeshFvWkdO3wyHC0GQkmVUFN0OevzXRSLaV/ZqAJGpfh66wGMa04AWEX0sRbWX9o7 PgUEQgcakmCl+SHw56wddA506zPLOGzVG8ekldJ6GmDSNwAGNXESaiM4sJE1jAtgMwIBezZe 8cSdTtoalLHfgFLPVAUTpk5mY9EhFGmK2Ee9A3T+PNxvza7IA9ZidABNPLPfdOHX4NNl1uwr WPa5WXpRBodMbRzzBLcqyj217KSwHKTtIQ6JoSF+KNxq12vnVMsDgIKRH+ervKLsxvrMz5YA wlOksY0loA++UmqZtj7QRyjoXSAswIcWtxfCOkz4keGza+8yw+JDG8JZj1MctorsIk6RlQC3 1CKt8nkCTxmrPueTnf13qySrC+gNDI9LmIYYyIACwwf7LHLrIR2gh/RQ9JLCqO5jtTpXzr3x liiqSEkgrwJgM0j1qOl/EvGiTahupjISAEu4gzdGGmi62tRYI+jepzt41zc5vVoMomUVB+Cs WIClszY6/oBZbmJlSqQUKAOEauv6vKtLjLRmxhsEoMn+jDr/GSsFahA7Tc7KEp3P8IsfT7yf FSVqQ5X/IVUPnahcelweY3ZNigx5a3pFNCgXPaNaNNLOsJ1bFXfoH8oYlOM1WfwlkRqibs4J ZqQbcerCzAdFLhjyz21Aewa1NfH2xwD+I8afrijpzzP7FZUTCT9pWstWLdWUt0E0Q== IronPort-HdrOrdr: A9a23:PNoloK75iQCMyapI+QPXwDjXdLJyesId70hD6qkQc3Fom62j5q STdZEgvyMc5wx/ZJhNo7690cq7MBbhHPxOkOos1N6ZNWGLhILPFuBfBOPZqAEIcBeOlNK1u5 0BT0EEMqyWMbB75/yKnDVREbwbsaa6GHbDv5ah859vJzsaGp2J921Ce2Cm+tUdfng9OXI+fq Dsn/Zvln6bVlk8SN+0PXUBV/irnay3qHq3CSR2fyLO8WO1/EiV1II= X-Talos-CUID: 9a23:urKZWG0sJ3BzInh45XcNNbxfOOx9bFvEyHvpG168UGd5ToyWZVSvwfYx X-Talos-MUID: =?us-ascii?q?9a23=3AuEYyOg5Buqa/mjCzzfz9/r/9xoxa2pmgVVsmkal?= =?us-ascii?q?dhPaCKjBhHxKShwaOF9o=3D?= X-IronPort-AV: E=Sophos;i="6.00,223,1681185600"; d="scan'208";a="112295559" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=JpqLy7cMjwr/12MLUpL/uaFgjOvCLYKtR2UmFwNZBflLQvFiNawTHxDZyxDsAdY2Cxfpp2X1W3GfFggKTuIGFpN12NleaGsjYHk3HTwgFWWEtSz0HiKEQ0FNAeOK2qMTOG2I0D1aFJE/GSvzabN1pfQ9xSqZn5dCqw6Fo4A1kiyu/D9OPO4qBKdMWDwMJ7/1sNhgLt+p8rsGelWS7W3cSP2PopOIbpgO98vN/txMFi+is1FJdJA50gxtsAD0V8Yl0E8wCjj9r1+WSTULptPl5fwtlLxQjS5qxsDewEZKgzjzJ6QtdNrzTjkcgDC52qQ+zI+JxmhxmJ0bcmJ1B527lA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=8unoHrz8WkWDLzD/un3fkjp7RuM9VT3cuUn1TDhP6pY=; b=ek7eJ1IAlGvfgngr3qtCS/P5Unpl8qTDhGvEAYtb/pDhsE/yXAUxzDWshzFtQvP7HiuBHRyy/eB/5SDAVfBfp1tbwVOIHzSfnFh/eGTxT7mZoGL2u137RbbaPfV24rYGhYqkZi8A9viIJOF2LwUQ7INsvKq4sm8Zj7JPqa8s9jZUe0IqKuXdBV+qibnrijYqSthijlkij6jKYePQhWxsBeZzfzT8zOfYPeh7NvItxy1lfg49qSwszxgZW3FzElqula5otofURYMId5/VgiMrKAWQtuTsQ6F7CODHKlloJiO9Cjl0bjEt/G+QmXKWwXLNu8M7hJFsDChfIz5QOseNKQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=8unoHrz8WkWDLzD/un3fkjp7RuM9VT3cuUn1TDhP6pY=; b=fel3jwlc+delArPgBJcj8wbPyBSzrm/X0R8nuhQW972BlR3+Cc+rGKsQfO9j3Oqi4udnKCsG87A4XVhkkq8QhiZHrRxDfWxiXvdhmjjEq4+bjq1M1SUAcsdqVFScc3uLABkjNaSvbiS1t/XKj8Xpx/ItcGfSbLLu1WnK+R97Spw= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Date: Wed, 7 Jun 2023 10:44:48 +0200 From: Roger Pau =?utf-8?B?TW9ubsOp?= To: Demi Marie Obenour Cc: Jens Axboe , Alasdair Kergon , Mike Snitzer , dm-devel@redhat.com, Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= , linux-block@vger.kernel.org, linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org Subject: Re: [PATCH v2 16/16] xen-blkback: Inform userspace that device has been opened Message-ID: References: <20230530203116.2008-1-demi@invisiblethingslab.com> <20230530203116.2008-17-demi@invisiblethingslab.com> Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: X-ClientProxiedBy: LNXP123CA0023.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:d2::35) To SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|DM8PR03MB6262:EE_ X-MS-Office365-Filtering-Correlation-Id: 100ceb4f-ead3-422e-a45d-08db67337685 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: pZyyBKMW9FLLvfYwN7by2w0Gti1FCw9kGin4VoCCU0fQh8UMQWdXIYp/mk9FQBfrLdsr4wpmWoLf84XECrepe7g+t2bYvtQhLcDSF6G11bkxaJ5k97pkOYat4DLvAUGR/BhEcI1qn9Q9jvLY2ggDpqjpuEdWSjZ+Z+EHczUkpmGYmzRxRaikqSyUSj/CNZePTEzVYsZssZm6DO9XpGDGp73ZcHi7xOadbsJUKQNvX0m1vbfl+2OQkN7duXJh0bo7b698wDfCMV/wVpMoo+3PGe00b232pWggUbrtDslQNKlZVkaBLlqsyNl/URSAFfMcCsVGu6Umu64LwRuNTlXH5JEvu8kLEiEFdWOY7IgkZmGLATU9fxKlzvXZkUr0ImaM7ZtCVwb7rpOHy2TJrxWEMfqYmgDCjE4jMHkLzALvv7m/ICA4/q6TYcWbjNshOM5j+MrsEXeg0R9vdxB2AhokUKjzpqMZ6Lbg3Ad9JovUJ83FV/ARy1meiH8Nq2OCKudl/5XIvzZBc/9gPXKdrc2N3ZnWVVnngTxhxLkIfJ+FZnFfhrQCTZNFoinvO6DISCtQ X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(7916004)(396003)(346002)(136003)(39860400002)(376002)(366004)(451199021)(6512007)(6506007)(9686003)(26005)(186003)(33716001)(83380400001)(6666004)(66556008)(82960400001)(2906002)(66946007)(66476007)(6486002)(8676002)(8936002)(85182001)(86362001)(38100700002)(5660300002)(54906003)(478600001)(41300700001)(316002)(4326008)(6916009);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?Q1FqaG44dmJ1dVFmR3FWRnNuU0luNDFOcGd6dEhBL0lyNDFWVFZaemFOSGIz?= =?utf-8?B?b3FyZTRsUHVyOVp5OE56Z1F3Sll6WW54ckdybzBadUF6MXk1OVFKcUc5Z1J3?= =?utf-8?B?U3NOSDQzQXpLeUlzbXdnOVRKUGQ5VVowbDNSYkJ6YW5mNEpEU2ZGOFpITUhu?= =?utf-8?B?a3JJMFg3ZUdUR005NWN5OXhoZGJIWHZVSStVT1YvaG4zc1VGUFMyOUVvL0hI?= =?utf-8?B?K0FzQ2VvUWx4VFRSbDZsWkRHMG0rcnN6R010cjU0SUhpSHdldVhxMHFhb2NY?= =?utf-8?B?OHdtajNDbjJoaG5nRjljcGtCaUZRUE50cU52Skpyd2xId05heTNkWEZ3TnVN?= =?utf-8?B?RjVnRVQwYzBiTUZpZDlwdTdPdXhPdVZlSldHbGNlbHNTV0hYTm1EQkN1bUdx?= =?utf-8?B?dHhBWThEOWxJUXhJQmtYeHZIblRYMitIalk3ZHUvSnVlSzVRYkY3aTNvRE1r?= =?utf-8?B?V0pzUHNwRjRaZVJSakRwU1hJak5uUWg1WGpUd3A5Y3Z5RnJqSUtBMElQdE9O?= =?utf-8?B?Z2NuQzROSXR4S1QzcWNRQ1FyYVpFR3RTbjhyTFU3T2FnYStOTXpydWJZQ25w?= =?utf-8?B?T2xDVmRCMEFyQmUvbURDT1V2UmxtZjc0b3pDalJ1MTRVM09NUkpRNXlWRFgz?= =?utf-8?B?Wm5QM3FPMGNFMUZLTU5PYk9IT0NKMlMrZm9SOG5UMkxrMnRGL3laM0QxR2JH?= =?utf-8?B?SHFaOUxjQnhoRExvZUZFL2xTMDl4czJvbkNNOEdkVFNxN1dmVUd5TTJSUzNV?= =?utf-8?B?Uml5TzgrTTlHa3psK0YvSWQxRXZDM1Mzd3FNbGVNRGFHVWFoQ01VOU56Sm9q?= =?utf-8?B?VTBtZ0xrRXhsdTFGWUM3WnhDTUdtKzhoUkszNUpCN1dIYnFEdUdVUDlldFZ0?= =?utf-8?B?bzZkakdyWFhXQXRKMDVId2ZyYklETUVlamVKSmh4ZnA3cVI0dHN5S240N3pw?= =?utf-8?B?MlIrdk1kdTFzWDM0dkpFSHNBcnpKUC95SFcxWm13ZFRPc09UdzZycTdBdVhs?= =?utf-8?B?NFlBdWlnSEJEdC8zeGlvQ0RWYVlTWXptMTd0ekZPRVpCbE1wdnphdXZDemIz?= =?utf-8?B?M3pFK01FMjdtT3VCdzdwY29FREg4d2pPaHVNZTVXRS82a291QWxremgvRGtl?= =?utf-8?B?c2J5SjBaRzBoYmNoRVpOTmJsbkNER3BORjc1endsZkRXL2NGRklYeFVHNWdn?= =?utf-8?B?MzJJUk5Oak93cE9vYm5BVEtMZ0xhcld6aVJ4UXhXK2hOb3p0eG1FUmpQSjlH?= =?utf-8?B?b0V4emRSV3ovWFhDblZWaWg1Rmw2cUZRb1l1b3pFWlR2dGxyNWlvWjQvM0Iz?= =?utf-8?B?dnZWSWpqYTJvTjllL0oxRTFSRnVISmsvMWNtKzRuSWR3V00vM2RXTFFIcm9v?= =?utf-8?B?eGVaM0c1bmZDblZJMlR0QkY1a2hVT3duN0JOWUV0QjNuZ3I3VHFpMWJ5Umln?= =?utf-8?B?cXFHWXFCQXJtTkMxWWczNDFxRXJCZm9aT2RXSlJxOU92bXlxUCswZDBoWCtX?= =?utf-8?B?VWRlWnlwMklHN0JYeWJLQkVSVGZBYjd4ZEZGa1VaZmhWMys5cms0ZlJoaDBW?= =?utf-8?B?c1pmbUErMHA0alJJQzJ6a3lKOHhKZFRvYkdFYUpGOEhEQ25ySXZVNmNnVjE5?= =?utf-8?B?c3ZjN3M2ajhEMWZuY1dOdWo2RGVNdERRdHR1L0JRa2VONUZMVU9sRU5JZFlw?= =?utf-8?B?WUJBL05EOXR1QVZsL3JJK0ZaanUzdnlGZDZRaTcwajdaejk4TkxZOGpBRWZC?= =?utf-8?B?M3pvNGhRQlJ1NzU0K1JJSWMrVldadzhocEw1RUtEb2VFekM3WitZYVJlL3Z2?= =?utf-8?B?emtrM0ZVUVpFUUFVMTRkL2lQckM2M1ZBeWh4MExSQmUxUjU2QTY2YWRtRFVZ?= =?utf-8?B?bzdlUC9jclB5OHFWbjZUWFZlOGZ2YkYrTUZRL0ZtakJCQS9SWE5DbWNGWTFy?= =?utf-8?B?QmIwOUlYTWVnQTNNNEFXVGtPWEV4akU2NForM3VCY3JDa3FIQnkyaDZTRHJl?= =?utf-8?B?MlFvVnR2R3h0MGx6RWZJcG1HcnNVZGFsZUJLbVJsNUVwUHI5QXJNaE83UFl0?= =?utf-8?B?MFQ0aXBqR21LRHdLNnFhMHJhSW5nMzgxSVpnK1Z2TlJibmJac3hZdmE3eEh3?= =?utf-8?B?Mld2ZDEzM1ZzbmNNdldxRnQ4TCtCQW51cHF1SkJmZW9MOFlqaVNGeGN6ekdj?= =?utf-8?B?Y1E9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: =?utf-8?B?V0JaTGxOcXFvU3k4NytBalBTSjkzTHpseGQ0ZzdvOGxlV25sNzZpbFVNVi9Y?= =?utf-8?B?V2VwTnJpUXFMWEdXQ29hRisxUjIweXcxVTBCcysyeDhtOEQ5dzh1Q0VOamkx?= =?utf-8?B?T3VtUklPOXBYblcwMDFIdk5pYjNhd3pnTFpBUzdjYWxTOUF2UEVHU2VaQUt1?= =?utf-8?B?cmJ4NU9lMnlEV3dOeUpQWi9XczVaVVZ5ZnVSTmtKV3JwUFVwa2tMWTVVN0py?= =?utf-8?B?SWNJa3Y0NHVmeWhqRzJWTldoY05VRHZPak11U2J5N3V6VXVxa21aRUs1Yito?= =?utf-8?B?R1NWekZyL3pWcFB6ai9ZRTVtYWtzTUVvYWhhaWlHdnFFSHlMaWhSLzUveXlh?= =?utf-8?B?cW9mY254ZDkrdVNzcWQzUENWRXRrTzdKWjgyMVFIWHBHUU1leml2MzM5VlFZ?= =?utf-8?B?V2p0TTdpdzRORjZEQWdLV25WbkRlK2dvQmRBcWF6SUFhRUFnMXpobVpXSUg2?= =?utf-8?B?MitYa1RDQzAzcXpJT0NVZ2puazNhZWxCc25MOGE2eGY3QlQvQm83RWxQcHpI?= =?utf-8?B?YzRmWElxbkRwWWlKR3QvbmVEQk1IZ2o3dldvdW9na0hRWVIwREU2OUpRU3Y3?= =?utf-8?B?TkpKZkMrYnNBaldEanBkNDZtTnBPeUVhd0E0QWZTNTBqd1h3OTZFV3gvZEJv?= =?utf-8?B?MTAwdndHUDJDREdocUdSdGtRemJsY2RNMDFYQWtlVCthSEZFd29ERklqSUtZ?= =?utf-8?B?b0l2dVVsdTF4ZndjY3V0SG1OOVRsV2xwYlE0U1JCSm1xMVpOUnUwQzFQZ0wv?= =?utf-8?B?RU52bVpXU050Q2JaUEYzUkpXaHFpU2hZdVpCKzdyaWJwMEk3U3VXYTJ3U1VM?= =?utf-8?B?WnJNNk44WU5YODBHbDkzWmxjV2FnMCtkOGJJK0ZIVkc0bVpoODh4NENCS3Q1?= =?utf-8?B?dkdNK0ErRHdPU1ZTRVVVeWl1Mm80M3ZObFdLV215MG9hQXhIdG1zK3Jza3Ur?= =?utf-8?B?SkE2YXY0OFFRb0l6RU15NUR4ZDJEaVpMWlRwdHBmOFVBU09HUFBqZjc4ZEx0?= =?utf-8?B?WWphZCsrRVViemFseW1EZk01MDhkVit0dytWRDhjNUltK3NMQ0FscExGRTFm?= =?utf-8?B?cXlMZ0F1NGdnR1BXQXM5NDJhMmtDNFNqamFWQk5RU04rcjhLN3YrNzRINytS?= =?utf-8?B?YmpjdFJuU3RnanY5b2d4aXM2MWRzclkzMG9vejl4bmZUbWxnbzRmMzRNUkV0?= =?utf-8?B?VGJURFk5bHFKSHNQOXQwazRGcWM0ZHBTZUIyaEVWUFJHNlhYY05sTW01Yzdk?= =?utf-8?B?bWlhb2tTY1hHMVg1Q1ZWczRZeG9qb05Ka0JKUmwrZi9rUEg4Zz09?= X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 100ceb4f-ead3-422e-a45d-08db67337685 X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Jun 2023 08:44:53.5073 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: lcUZYPJhUlbOjaoCqPw2FuG2t2ZjpY42mE/INCLsd0w2m7PdBdQpsHWkS6l0XTh4o47Jaw2wYA9bmrbbbkP4yA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM8PR03MB6262 On Tue, Jun 06, 2023 at 01:31:25PM -0400, Demi Marie Obenour wrote: > On Tue, Jun 06, 2023 at 11:15:37AM +0200, Roger Pau Monné wrote: > > On Tue, May 30, 2023 at 04:31:16PM -0400, Demi Marie Obenour wrote: > > > Set "opened" to "0" before the hotplug script is called. Once the > > > device node has been opened, set "opened" to "1". > > > > > > "opened" is used exclusively by userspace. It serves two purposes: > > > > > > 1. It tells userspace that the diskseq Xenstore entry is supported. > > > > > > 2. It tells userspace that it can wait for "opened" to be set to 1. > > > Once "opened" is 1, blkback has a reference to the device, so > > > userspace doesn't need to keep one. > > > > > > Together, these changes allow userspace to use block devices with > > > delete-on-close behavior, such as loop devices with the autoclear flag > > > set or device-mapper devices with the deferred-remove flag set. > > > > There was some work in the past to allow reloading blkback as a > > module, it's clear that using delete-on-close won't work if attempting > > to reload blkback. > > Should blkback stop itself from being unloaded if delete-on-close is in > use? Hm, maybe. I guess that's the best we can do right now. > > Isn't there some existing way to check whether a device is opened? > > (stat syscall maybe?). > > Knowing that the device has been opened isn’t enough. The block script > needs to be able to wait for blkback (and not something else) to open > the device. Otherwise it will be confused if the device is opened by > e.g. udev. Urg, no, the block script cannot wait indefinitely for blkback to open the device, as it has an execution timeout. blkback is free to only open the device upon guest frontend connection, and that (when using libxl) requires the hotplug scripts execution to be finished so the guest can be started. > > I would like to avoid adding more xenstore blkback state if such > > information can be fetched from other methods. > > I don’t think it can be, unless the information is passed via a > completely different method. Maybe netlink(7) or ioctl(2)? Arguably > this information should not be stored in Xenstore at all, as it exposes > backend implementation details to the frontend. Could you maybe use sysfs for this information? We have all sorts of crap in xenstore, but it would be best if we can see of placing stuff like this in another interface. Thanks, Roger. From xen-devel-bounces@lists.xenproject.org Wed Jun 07 08:47:33 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 08:47:33 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544526.850367 (Exim 4.92) (envelope-from ) id 1q6op8-000799-SH; Wed, 07 Jun 2023 08:47:22 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544526.850367; Wed, 07 Jun 2023 08:47:22 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6op8-000792-Ni; Wed, 07 Jun 2023 08:47:22 +0000 Received: by outflank-mailman (input) for mailman id 544526; Wed, 07 Jun 2023 08:47:20 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6op6-00078c-SG for xen-devel@lists.xenproject.org; Wed, 07 Jun 2023 08:47:20 +0000 Received: from esa2.hc3370-68.iphmx.com (esa2.hc3370-68.iphmx.com [216.71.145.153]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id e7bccd34-050f-11ee-8611-37d641c3527e; Wed, 07 Jun 2023 10:47:17 +0200 (CEST) Received: from mail-bn1nam02lp2049.outbound.protection.outlook.com (HELO NAM02-BN1-obe.outbound.protection.outlook.com) ([104.47.51.49]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 07 Jun 2023 04:47:15 -0400 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) by DM8PR03MB6262.namprd03.prod.outlook.com (2603:10b6:8:26::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Wed, 7 Jun 2023 08:47:13 +0000 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::192:6bdf:b105:64dd]) by SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::192:6bdf:b105:64dd%3]) with mapi id 15.20.6455.028; Wed, 7 Jun 2023 08:47:13 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: e7bccd34-050f-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686127638; h=date:from:to:cc:subject:message-id:references: in-reply-to:mime-version; bh=TXyktJokEBU34tivD1OmVlT5HWopySQGUrE14jMT4I0=; b=gvZTYL8WWNKINRj50cR9SJD2AJhDYOGNYdgFTM1Lh8x4mV1ua5uJjJSD //6ZJW8R/eoyWCDsiXwJxa+nFLjcbRmoPN0PpOe5lo3pWsASJgkF9WjFv dHg/PKv1XwCmgTj5e2ltu9p8ptuKWq9XdOxJaGRwLwztYMFbJrhHkTWjk M=; X-IronPort-RemoteIP: 104.47.51.49 X-IronPort-MID: 111767837 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:ORH4GKh30WFqFdHPOswiqBMkX1615REKZh0ujC45NGQN5FlHY01je htvDWmPbv6MZzT1KtBwO4i0/U8PsMKHn9QxSgdtrCpnRXwb9cadCdqndUqhZCn6wu8v7q5Ex 55HNoSfdpBcolv0/ErF3m3J9CEkvU2wbuOgTrWCYmYpHlUMpB4J0XpLg/Q+jpNjne+3CgaMv cKai8DEMRqu1iUc3lg8sspvkzsx+qyq0N8klgZmP6sT4geBzyB94K83fsldEVOpGuG4IcbiL wrz5OnR1n/U+R4rFuSknt7TGqHdauePVeQmoiM+t5mK2nCulARrukoIHKN0hXNsoyeIh7hMJ OBl7vRcf+uL0prkw4zxWzEAe8130DYvFLXveRBTuuTLp6HKnueFL1yDwyjaMKVBktubD12i+ tQGdS0WbUzav9mK3eOxG8x+pvsiA+nkadZ3VnFIlVk1DN4AaLWbGeDgw4Yd2z09wMdTAfzZe swVLyJ1awjNaAFOPVFRD48imOCvhT/0dDgwRFC9/PJrpTSMilEoluS8WDbWUoXiqcF9hEGXq 3iA523kKhobKMae2XyO9XfEaurnxHqiB9xNRObnnhJsqATU+1FUBxIfb2eQuue+hVGBCvB/M mVBr0LCqoB3riRHVOLVXRe1vXqFtR40QMdLHqsx7wTl4rHP/w+TC2wATzhAQN8rrsk7QXotz FDht9H0AT1itpWFRHTb8a2bxRu4NDIJN2YEaWkBRBEc/tj4iIgpi1TESdMLOJCyitr5CDTh2 QegpSI1h6gQpcMT3qD99lfC6xqzorDZQwhz4R/YNkq14wU8aIO7aoiA7VnA8e0GPIufVkOGv nUPh46Z9u9mMH2WvCmEQeFIFrfw4f+AaGfYmQQ3Q8hn8Cmx8Xm+e4wW+Ct5OEpiLscDf3nuf VPXvgRSopRUORNGcJNKXm54MOxypYCIKDgvfqm8ggZmCnSpSDK6wQ== IronPort-HdrOrdr: A9a23:ZLEz0Kmv42/NV+LhxzWiD+dg5yfpDfIi3DAbv31ZSRFFG/Fw9v rDoB1/73TJYVkqN03I9ervBEDjexPhHO9OgLX5VI3KNGOKhILCFvAA0WKN+UyEJwTOssJbyK d8Y+xfJbTLfDxHZB/BkWuFL+o= X-Talos-CUID: 9a23:WKmBRG4PBcQTFV5zS9ss6hMJAcN5K0Xm8GqBKR6dG0ZWSZK1RgrF X-Talos-MUID: 9a23:6qNO7QalctnjEuBT7njRuXZtO85S34+1FkcCjqpXmemdHHkl X-IronPort-AV: E=Sophos;i="6.00,223,1681185600"; d="scan'208";a="111767837" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=c311jBEhHZr0r9rubvkk0MH3h0Zy3m7pLajhJ6u4/1jHARfEIyFPl2Y3lEnBOCyngOD2sstTXwFzN2xb3QJsgdAlZzP0zj6hsx9cE5fa6hXk/TBjKcZBYjfW8PX1jBlEN7EUCoOpy+OqBJCZNyhOkngvlAR1n2084X40bLoiyISbFfqYfmd1tpMBIoxBMqd/v51V+3HxtKCKnDhfzJboVkWXdBL5g2EP3YyhQ+U4PNKGlNGM+wKLLlBdMEQT7FpCmVhsSgG9tAJpa86YBc8YqhpwQDTd/+Ba2KhMxqHI+ApEKg6ci+m/M2ui3X0DrX6zBaeXTI6BPRE7uWa1tMyZ/Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=R41ycdtGBp8x31As+gryMGntCQYt9c19C8Pfcj9qd0w=; b=UArUivx5uI4GXvJ/LjtTDKGeQPefMNaq9rpTwl3unAMFnexbrEIOMtE9vuFjROsQ8Fj5WAC5Ct9pcC9n310U0o3ssmHj6Sbeba97aDfuxs+L0D+uhfegIKAstRbKYROUyqm5ruk6Z8fD87Yfn/xKbrBjsNB+BkEVlLWcdCsQ/HVmq3x5zje2utCXG0AqRctLWaY5yb7gmdYelOOSK5FwqPywEYLQR0sGf9gNpu6QymZTIWKGQzJTTP6NWM/wH3ctBA6429nlLsNRWYZM2kfaB0M0Ed7Fs/Rsb3g6yNz9i4+0Oxh3w2x/IsuavvO5jQY2KyJywvAaISPsYDhpbMNfwA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=R41ycdtGBp8x31As+gryMGntCQYt9c19C8Pfcj9qd0w=; b=H77Os8LfO5YyVNKOtgT0yviRp5+ZLJ2WoTBsJFm0fK9qFk3RCsThbaixlI/R741ixlROGl7XbUi93eT9wN2TSu4u9O+D6G02GuFiDK2i3OUdEn/YQz1wRL60J+IhTGwYvb31vPbKBQutDewZ7HoZ+w5odVrbKGE3Oo2z2h5O5wk= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Date: Wed, 7 Jun 2023 10:47:07 +0200 From: Roger Pau =?utf-8?B?TW9ubsOp?= To: Jan Beulich Cc: Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk , Andrew Cooper , Wei Liu , xen-devel@lists.xenproject.org Subject: Re: [PATCH] livepatch: apply_alternatives() is only used for livepatch Message-ID: References: <20230606172307.38857-1-roger.pau@citrix.com> <37f6c3fd-5b7f-ddbd-b4b7-c72a797531eb@suse.com> Content-Type: text/plain; charset=utf-8 Content-Disposition: inline In-Reply-To: <37f6c3fd-5b7f-ddbd-b4b7-c72a797531eb@suse.com> X-ClientProxiedBy: LO4P123CA0572.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:276::22) To SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|DM8PR03MB6262:EE_ X-MS-Office365-Filtering-Correlation-Id: c5eb0a4a-0c58-44cb-310d-08db6733ca1a X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: uk+Crflws05x7cbPC+SEw4V02cNPf3c+HO9Fm4mjPFItprDeHeQ2oykokPb9eJUU0yXF1s6ojE5RZZqDFMt8kRFDUYOHTT7wCy5l9ZVxMIITodxzExJYSmzwEykYW0uUPHnapH2dxP+luyhM5y+O01dZVkwmbV3QCFb0jKrRZmbK3PDNzU3+GbKbVTjLY3X0drlbaZgjJ+QUPeve4G+gjsnOB2q3xJM/xD8xXqV9yVNx5YrSExyIdBXuYlBG0ld7HCjYnGvP0HTayh+WnS7PFO+KxlGOJsfYrk4N8kyrZyVfMotV6tXBjKTjSGYb62euQ+hfj/FxKZKK+CULv8qSuSRpdEKDYB+dcdOHJ7gHSEh2JpAIjBA/GV6jTUWP8PvyLLU9sJ+0YsDRcngJB4sIm4mMDEtUzUDwENqhwrLGZ6W9wIdy9k2aIW9HHkwFyJXacIyIJi0mKqjiPrptUVhu4RXfDh0U6vSo/Hi9lNOivt1vhLH4sR0Wg3egQn1jtZvmYQ4+zJ2xyIwiMWcY6b0Ag0olZn8WxHYbDsEJVvwLZD1s+ckDcZzWTXHszpSMkemx X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(7916004)(396003)(346002)(136003)(39860400002)(376002)(366004)(451199021)(6512007)(6506007)(9686003)(26005)(186003)(53546011)(33716001)(6666004)(4744005)(66556008)(82960400001)(2906002)(66946007)(66476007)(6486002)(8676002)(8936002)(85182001)(86362001)(38100700002)(5660300002)(54906003)(478600001)(41300700001)(316002)(4326008)(6916009);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?NHJ5OVVRSHlpY0ZmTWhLZFl2SC9IQ2I3WElXUElmWGsyNElRM3NNdGg4L3kr?= =?utf-8?B?TXhVQitUOTB3T1BUSFFmWjVqQVdOVTBnVzVoTnF6SC9HRWUzeE9NdmtKcDRx?= =?utf-8?B?NzJqTlFEOEQ1K3NDT2FVcWVLTDg0dU0xejNyWENFMjVyalByOWFacHNKcU84?= =?utf-8?B?RWJhdGFsVXVKMXNZS2pFQVI5eDJORXdkbkRna2ZxcDhVTFNVbkdsdGU1ZnFk?= =?utf-8?B?L1JHdGRBV3V3NVppZHRHR2V2Szcwa2M4Wk5DV1J0TnhReXNPek5td2VLNDVp?= =?utf-8?B?UGVhdm9vMUk5SUJzYWNReWEwa0laUUE0dXhTUU40b3ZobVJFT0ZPQWVyek5G?= =?utf-8?B?OU4yWTlxbjdjU0VFbzZZU1l0N0kxV2hqS2V2SUs4S01tS3poK2pFL1ZMQ2gy?= =?utf-8?B?aU91OW41ejZzZnJzU3puYWZwS2xWT0JpUEtKdllNQnJSRW9MeGlod0ZNM3Jt?= =?utf-8?B?NlJ6UWdSSjB0MzUvdDBWN1BwZGNTN2t6bUhMOTFpcDhSRCtIQkZhMURiT1ZX?= =?utf-8?B?SklIQ3lCWDl6ODBrWkh1SEI4dVp5ZkFjUnlBUTMzMHluNUpuRWxPalBrNXNC?= =?utf-8?B?K0N4SXk5NmgrdlBYaHhiUVkybzFzaDFacElpamsrRWgzMzlTcmFpZFR1ZzFX?= =?utf-8?B?RjNlczJDN1ErNnpJb1l0QXZBcjBmdkljNmJpVTZQVnVZZ0pGblV1ZGxMWmp3?= =?utf-8?B?NmNNcFI2UTU1SVhSUC9pYUFxMWthN2pKMVd4VTA2bzcySDBSVEFJN0srcDZu?= =?utf-8?B?YUtnbCtwdjdnaDVrNlkxM3hKb3ZHQUErekIrekZIY2MxaHFjTTMrZE5adkVq?= =?utf-8?B?QVpkQXgzMzhiV3BTbittVm9oVFc1SVpUWFV4VGN6Qkk0aURXeWU5ZS9yZVMv?= =?utf-8?B?VHdQTzBISDNVdnlhcU9YbldoZmZpVmltQWMxSWM3a0V2RmJsajlXS0NzY0l1?= =?utf-8?B?cGgxWGJJREx0NXFiV2M0VUlaSkxHUk1EQS9uUnUrTnFLQTBNQXNLbmFaNGdS?= =?utf-8?B?eC9UWU1xc1E2ZDFpV2RhUDRsdWtGMWxSZUgxcWhxRzhUVysyck5XT3NaUi9y?= =?utf-8?B?SmV6K3NFaWZzcVRWS045ZWFJK0RNamZ3TlVmU0haa1BLQVduUXd4WFhmRW56?= =?utf-8?B?SitMRyt3bUYxMHROMHZGeG4wSmFzbG9mME5nd2FnOU82VE5DWVNCZ0NsL1JO?= =?utf-8?B?OVJsbmN1b1dKZVpScmtNRjY0eFZ3ZGhnbTlRSU9ibEJlM2N1Qi9URHVDNEhM?= =?utf-8?B?T3RSTXBTVnRsblJJazhTbWphenpWejd5Q2NUdjR3YStXdnBnY1dSSC8yeVdw?= =?utf-8?B?S3V2UUVaRHBCWXl3MlkvNHZLdVJUcVpBZW1zaHE2OE1wSVZkNGNrZlk3Mkxo?= =?utf-8?B?bWZkTU00YXB0OWc2V2lGUmVwc2ZBcDJtd1VjeDdvRmlaSForQWM5b3J6UDV3?= =?utf-8?B?cXhmUGJjb3o2cFpsRldYSXVXY3VDUTNaZVhGZEtSekFBSEQ1aHJUR1RKREtV?= =?utf-8?B?bjRMSXhxRGl4dVAydnBnQVpwNytKSHVVellRL2hpK2w1bDlqUnpCTFlMbjU5?= =?utf-8?B?akZLY29TSHpRQStGOHFudGgwYjd1aG94M21ZaFE5by9xTUhqMUgrc0VMdzQ1?= =?utf-8?B?T1M3Wis4dTdwdmYzY3F1T0xRUUovMzFrdVZ2UjZnN3I3Q2ZrNkxRS1Z4WjR6?= =?utf-8?B?Mk5NVjdoMENaS1FSNmhwRGM5WFZwd1ZDR0VZM1ZMbDVYa3lUUVp3UUNjUm41?= =?utf-8?B?LzZWQTdXTmVkd1JGL09NM3kya1p4SUsvWktEYngrTDB4UjZ4WUIyMGlVUHMx?= =?utf-8?B?MkJrS2R0S0NLWksycklpeDE3bkdYUzlaTTFxTTdOdHA5czkwS0xvcDVRWGZO?= =?utf-8?B?MjZwRmw1Q1luaHJYR3VzTy9acEh4bXlZb0hkSjdFdFRpbmdXWENHQnBLSnBH?= =?utf-8?B?dUJvZ0dyUDMvTFpjcEp6NGtYbGpxWkV6eFRZb0ZESExRdTh5U3diSXVnSE1k?= =?utf-8?B?UnV4dXNseGVtUEljVWlCWnRQTE4vY1AvcDJQNFk3WmVJUjRMRzJCdlFxYUNE?= =?utf-8?B?TWVQOUNMZzlhbEJDMVFWanJDcDllQXp2d0x6ekVqOFdTbGFnWEVjNFZQc2xN?= =?utf-8?B?blV3bGZCRWcvQWxJcE01MCthTDk3cVlBMVZtSW1IUzBQNXJvLzZrOTlPRWpZ?= =?utf-8?B?Ymc9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: dLTvocj63fXBSAyVnPmYPs5pijEhv9q6We3hqlSyTEOxWtqt0ac1rrgmlKRe7/pDFIn6/ZL5yybXkKA+lvVY2Vmk1vWrW/FPgNx7idOVTzJtJJaF/xspho22PT/ScKsP8Tpq/XfBr4nbiL/9M8wB6Zt5OX9pRwclFBQPWh18ZrtNq8V/Vk8YfmvRSxIDwGlc6HWBQ0adjv3BxPzUzhLtGWcHO6RkMvkKpyMIHUQtANHiOVx7Slbo8JQnm+3m1l/6jF6ZRRl69JhdA4/5qgwRYg0CVGkXlGk5Jz/eR3uqSur6E7rqT+QfsSRCpWUE+RNJW1pbIhNNqN2nuYW5Esu+3V6/BJl4XDpqZayyF8gbPzUYGfJL06R5NIYvBtPll6gmuHeTI3OwjI3uiNRqWWIWbQ1n6rhVMnNgIHBDJY5DBygn6yf4CpXm19iBJqQcFasT0ieXp7I7YQBRI1E0F68fkOs/MMmA8bXAXFgVXpZjFVQvuVAGyvUOqobdp9NdOmsgrLrEsfiHKC3kVTNIdGQtVvFgCxyZLwykO0y3oU8e5uOrzS7rSEQhY8WOM8APY5em8RKhcaVqvKPd921TYvBtAPEp6nkrAxTAoxXDl2YBT/K0YYEOfuNn58UPeWtFOFr9pg7+KP+mUE+w3KMvszpe/t1AoqA8GWiJKlSt41doAIHzwP4q9n8Pv1zN87ZcUSQ047zqWxE8fwlI1Kc+AtaT2FaZ+zGb78ivxiS34oCIFD34dMAR7Gm8JDpidouqhSLAcVBMU6l6zkkNojf/0yuxtc4yE197PIHoQoYeYy4e69oEgYPJWG7fT/zDZmh3/1EJXa9hXwt+7Xp9/je91j1TZ3zHvhRX/dJP0DJ9YhuIWLHtjkp2o7YpXEZ2pWiBeUsavRaPxDGuwFeVtadD4Lw3+A== X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: c5eb0a4a-0c58-44cb-310d-08db6733ca1a X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Jun 2023 08:47:13.5872 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: PgrvZM7NVK2xzeUV0YYGKnY5PeAEum9jqj6NlP45EiaROz1o81cF4lKW/d73hL7a8SvDiotLxEwsp5EGsPQbPQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM8PR03MB6262 On Wed, Jun 07, 2023 at 10:14:35AM +0200, Jan Beulich wrote: > On 06.06.2023 19:23, Roger Pau Monne wrote: > > --- a/xen/arch/x86/include/asm/alternative.h > > +++ b/xen/arch/x86/include/asm/alternative.h > > @@ -24,7 +24,9 @@ struct __packed alt_instr { > > > > extern void add_nops(void *insns, unsigned int len); > > /* Similar to alternative_instructions except it can be run with IRQs enabled. */ > > +#ifdef CONFIG_LIVEPATCH > > extern void apply_alternatives(struct alt_instr *start, struct alt_instr *end); > > +#endif > > I don't see the need for an #ifdef on the declaration. We avoid such > in a fair number of other cases, keeping the code better readable. Hm, yes, we will get a linker error anyway if attempted to use without livepatch enabled. Thanks, Roger. From xen-devel-bounces@lists.xenproject.org Wed Jun 07 08:57:02 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 08:57:02 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544533.850380 (Exim 4.92) (envelope-from ) id 1q6oyI-0000K8-Tq; Wed, 07 Jun 2023 08:56:50 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544533.850380; Wed, 07 Jun 2023 08:56:50 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6oyI-0000K1-QT; Wed, 07 Jun 2023 08:56:50 +0000 Received: by outflank-mailman (input) for mailman id 544533; Wed, 07 Jun 2023 08:56:49 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6oyH-0000Jt-8K for xen-devel@lists.xenproject.org; Wed, 07 Jun 2023 08:56:49 +0000 Received: from esa4.hc3370-68.iphmx.com (esa4.hc3370-68.iphmx.com [216.71.155.144]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 3a3bf29f-0511-11ee-8611-37d641c3527e; Wed, 07 Jun 2023 10:56:45 +0200 (CEST) Received: from mail-bn8nam12lp2170.outbound.protection.outlook.com (HELO NAM12-BN8-obe.outbound.protection.outlook.com) ([104.47.55.170]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 07 Jun 2023 04:56:27 -0400 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) by MW4PR03MB6650.namprd03.prod.outlook.com (2603:10b6:303:12d::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Wed, 7 Jun 2023 08:56:24 +0000 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::192:6bdf:b105:64dd]) by SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::192:6bdf:b105:64dd%3]) with mapi id 15.20.6455.028; Wed, 7 Jun 2023 08:56:24 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 3a3bf29f-0511-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686128206; h=date:from:to:cc:subject:message-id:references: content-transfer-encoding:in-reply-to:mime-version; bh=Y3Fpgo8nY2m9lgyDJQmGgrPbgr+iuosX7fwpbBrw91A=; b=Zusiak0uRNduwtJHArmzt7gWtmkrbxFcwuC1Qjl0YdyVDSUBqSF1sS5D qZJ0rCZpIkoH08/wurWrytIG4mEDH12N8wyV8dZR2u1YRK1zZ9x7GEmWC MwxUZCdzRJXD8M3iSD1jC3BXM1++UOyjYnBs2qQnXVIRvXpKMF4WJ2PjL Y=; X-IronPort-RemoteIP: 104.47.55.170 X-IronPort-MID: 114389810 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:b0b4zqiTzcnZlv9QdQwy7Lu5X1615xEKZh0ujC45NGQN5FlHY01je htvWWmAaPmMZjGhKN0iadm/phgBuMPTydcwHQdtqyk8Q3kb9cadCdqndUqhZCn6wu8v7q5Ex 55HNoSfdpBcolv0/ErF3m3J9CEkvU2wbuOgTrWCYmYpHlUMpB4J0XpLg/Q+jpNjne+3CgaMv cKai8DEMRqu1iUc3lg8sspvkzsx+qyq0N8klgZmP6sT4geBzyB94K83fsldEVOpGuG4IcbiL wrz5OnR1n/U+R4rFuSknt7TGqHdauePVeQmoiM+t5mK2nCulARrukoIHKN0hXNsoyeIh7hMJ OBl7vRcf+uL0prkw4zxWzEAe8130DYvFLXveRBTuuTLp6HKnueFL1yDwyjaMKVBktubD12i+ tQecxECRwzbv9mx65GKG8pFt5sjFubSadZ3VnFIlVk1DN4AaLWaGeDgw48d2z09wMdTAfzZe swVLyJ1awjNaAFOPVFRD48imOCvhT/0dDgwRFC9/PJrpTSMilEsluGyaLI5efTTLSlRtlyfq W/cuXzwHzkRNcCFyCrD+XWp7gPKtXqiBNlCRe3hrpaGhnWjx24eARA4b2KwvNCytUDnAOpQD ncbr39GQa8asRbDosPGdx+lpH+JuDYMVtwWFPc1gCmdx6yR7wuHC2wsSj9adMdgpMIwXSYt1 FKCg5XuHzMHmKaOVXuX+7OQrDWzESsYN2kPYWkDVwRty9Puup0phxTDCNNqCreoj8bdECv1h TuNqUAWubIXisIa0rShynrOiTmsu5vhQxY840PcWWfNxgFzaZOhZoeowUPG9vsGJ4GcJnGeu FAUls7Y6/oBZaxhjwSISeQJWbuvt/CMNWSGhUY1RsZ5sTOw53SkYIZcpilkI1tkOdoFfjmvZ 1LPvQRW59lYO37CgbJLXr9dwv8ClcDIfekJnNiNMLKivrAZmNe7wRxT IronPort-HdrOrdr: A9a23:l+3vz6gE4g7fKSyBL9KO6mE/OHBQX7123DAbv31ZSRFFG/FwyP rCoB1L73XJYWgqM03I+eruBEBPewK4yXdQ2/hoAV7EZnichILIFvAa0WKG+VHd8kLFltK1uZ 0QEJSWTeeAd2SS7vyKnzVQcexQp+VvmZrA7Ym+854ud3ANV0gJ1XYENu/xKDwTeOApP+taKH LKjfA32gZINE5nJ/hSQRI+Lpv+juyOsKijTQ8NBhYh5gXLpTS06ITiGxzd8gYCXyhJybIC93 GAtwDi/K2sv9yy1xeZjgbontlrseqk7uEGKN2Hi8ATJDmpogG0ZL55U7nHkCEprPqp4FMKls CJhxs7Jcx8517YY2nwixrw3AvL1ioo9hbZuBWlqEqmhfa8aCMxCsJHi44cWhzF63A4tNU59K 5QxWqWu7deEBuFxU3GlpP1fiAvsnDxjWspkOYVgXAaeYwCaIVJpYha2E9OCp8PEA/z9YhiOu hzC8P34upQbDqhHjjkl1gq5ObpcmU4Hx+ATERHksuJ0wJOlHQ89EcczNx3pAZ1yLsND71/o8 jUOKVhk79DCuUMa7hmOesHScyrTkTQXBPlKgupUBXaPZBCH0iIh4/84b0z6u3vUocP1oEOlJ PIV04dnXIuenjpFdaF0PRwg17wqV2GLHfQI/xlltpEUuWWfsuvDcTDciFgryKYmYRePiWBMM zDfK6/AJfYXB7T8MhyrkrDsqJpWAkjuf0uy6gGsm2107P2w63Rx5vmmaXoVczQOAdhfF/DKV 0+exW2DPl8zymQKw3FaV7qKj/QRnA= X-Talos-CUID: 9a23:CGJbJG45+N55DbCyA9ss8hU1Fek5KkXmy1zzEh6bIFc2SIe6cArF X-Talos-MUID: 9a23:aBZgMgQIp5MwxZftRXTchTNvPcpG2Z2lFWkGrptf4PGLEBd/bmI= X-IronPort-AV: E=Sophos;i="6.00,223,1681185600"; d="scan'208";a="114389810" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=L0ajfO0Wld7q0MahRFz+of/PFS35PQ5ihOIrEhH+ISL/C2i2K0zBGPVDSUQASsPaiPeGH7JKXak14iJA4yTN2kTfdKdYlZJOljMnhhb5tH+OnTGnbMAitm+Jjb3GiN1bJzCnDAQI9qmronyaEgCsHfcXfVkJb+YVHNmHhs/SDPBCXw7tuK/A5B5fc63EKDqYjyK+NDsEcE5zz6tdytL4HRO/y1RxMgh0nSe6o6gn6YOMzImJmo8SEF44SwkMZI0edsbfhbf2gCceXcumWv3wVOcG6PxzGAskh9sbtaidz+CqGm8cvporLVAu8tky/BF35q1NvPJXRn/0K8F8bRLCWw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=lt2f7KVyWIbz4YeWnga6LibsjXxap/b3ciX5xZjwqhI=; b=fa6K1b6RYDePyHAm7s1h1nmSdCBVuWUJVEBXusC9wRVQmcr/LtY53R1fozAZL252g87F4Nf9Y64hI/NgHddO/13IIMGcmaFi43qTIfoZD6GgqYs72NkRelJ6UnWuZoP3glk93szKokg0wi+hD/Yqnquen+vmSdA4JhIlfr5wL30CJz34zIJP0DMzzrOXkv/cuJeIM67+p18e9cS5UYm5GBAAiPOFiLxP/hWdVQ94SyppMMSmfUuhXax9Bt64kc+hxf+Fk0Q2CxN4frhpzH2Pc9FR2/C7ph14UKZivrLEEqP6tygTDDi1z2vgxThb7JBezmzD4vXlknZ2tuXp/Opl2Q== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=lt2f7KVyWIbz4YeWnga6LibsjXxap/b3ciX5xZjwqhI=; b=Yc5MxTaV0M5e5Mwn9+WL9Y4cPpNvs3Ql5v5H7zKB/k8ve2+e9wrx/nUuzX0boFOGqXS68t7mmF1OMUah/XDC66Dg3tPoemvr1eSz7Y6Q82R3zZcGh8BMXx8e+mjKJNQiGC2n3trfLz0Ze/whN2QAWmzIJwPsGrjfoy8Fa3kAL4o= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Date: Wed, 7 Jun 2023 10:56:18 +0200 From: Roger Pau =?utf-8?B?TW9ubsOp?= To: Julien Grall Cc: xen-devel@lists.xenproject.org, Stefano Stabellini , Bertrand Marquis , Volodymyr Babchuk , Jan Beulich , Andrew Cooper , Wei Liu Subject: Re: [PATCH] livepatch: apply_alternatives() is only used for livepatch Message-ID: References: <20230606172307.38857-1-roger.pau@citrix.com> <0fd63050-7592-c308-51d1-f8445d3fbd4b@xen.org> Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <0fd63050-7592-c308-51d1-f8445d3fbd4b@xen.org> X-ClientProxiedBy: LO4P123CA0305.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:196::22) To SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|MW4PR03MB6650:EE_ X-MS-Office365-Filtering-Correlation-Id: 0fa54213-3766-40f6-82b8-08db67351249 X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 5bOT+YkOMDJawsQRiYrRhNUkD1F1XzRlpRiAjdKTf6nDxCX68ibigkdSaKzoZOiU3lT9crK4SaE4/6XmBNpR9S+3TjZMWD9Hcg05k7AYc0AO8ZBc4PKf+3xnpd2ljxQsozczT2JMCehCLzMXWPCwblaTY93kaRjjigIGuazUsV6R3lNQVCxP8LBa5Q44cEWDBuwKwghPx19jrfCyQZ494FwpG6tpZiA/FRCTxv73U/uF2ZHY4A2JFweYVYDSWjjx7abMim6raC4f7/e5JZTCi+0FQYwE/jCiAIEH9ByZZYxFDn7Y2gLV880sxJc82PetukWHGTijEtz8Is6vFLxM2Getn31lg+pgWQ/BoDHywhAU4myrwB2eXCNj5xqYgQYUrHUH+RVoSMSN1qoa1PAvP0BLWxC10McFZiATEoVj3XK9tyipSMPBHLTd1fBOTc9/xWPUG2hAMbPDIGipRXSgRr/kV/puFAFwhqbrlZtLrqO8da3JWIbmfK8zHklKJ1m5skO0aFl1Rf738JvGE7sHn3zkAjNMfwiD5IwPVVCa3nvRv2De275cgt+QVddx+2ST X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(7916004)(4636009)(39860400002)(396003)(366004)(136003)(346002)(376002)(451199021)(9686003)(26005)(6666004)(6506007)(6512007)(53546011)(54906003)(82960400001)(478600001)(6486002)(186003)(83380400001)(6916009)(66476007)(66946007)(4326008)(66556008)(316002)(5660300002)(38100700002)(8676002)(8936002)(2906002)(86362001)(41300700001)(33716001)(85182001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?ZElFUTN4MGV4SXRhNSt1WnprbFo1UndLbHljaEo5N0p2dGMwRmErR2ZtdjNv?= =?utf-8?B?K2NZV3pYQ25tNUVNYkZDd3hGSzc3dFFZc05hUzRFdGdvY2R6VFVyZkxERmF1?= =?utf-8?B?dElUeDJNa1lrVEdJSzZ2NzI0ZUNWVklNSThjcFpocFpUWVdtYkhDb0ZFdTI0?= =?utf-8?B?TDNReVR2S0JXQzNlVTBkWUJpdm9pZmJVQSs2WndsVjcvQVhsNlUvT1VGQnpM?= =?utf-8?B?TGZQMTJjR2p0QWVNdlNIWlQ1SU1MdDBycUljSGxhRG5SVHlsN3BzK1l5Wjdn?= =?utf-8?B?bG5YcFpvYVNxclN3VGthd1Z1WWcveXNzdjU5WHVpZXM0dDlkWGUxM1hRbnFn?= =?utf-8?B?QVZmcENnWFdwYTVaVk51blNkVG0vQVR3MnhnVy9PbkJLb3JwZVdpSFFBakpt?= =?utf-8?B?SmhuTytnTVZiMmtrRVJpZ0hIaUY0V2JaWHlMYVZuelFyT3BqQTg3b3V5eUdv?= =?utf-8?B?T29Iejh5Z005azlyMTlCV1dndzlBODYramtKNDF5bWF2dFZiYWxwaXpYZlc2?= =?utf-8?B?eTBjTCtWcC9zZ3JtT1htNktpOFFzYVI0R0x3WVJVSVRrUTFadWcwNXJ0NzA5?= =?utf-8?B?MkZUMEZNZC83dmJ0SzhUSTdRMHlleUJTZVdFbHpHNWd4WStwdWhPSU9nZStX?= =?utf-8?B?b09YUVhBMVkrci9qTTg0em1IdFIyK29Md3hmcE9wdkFJSWpSRTJzdXRTWkFy?= =?utf-8?B?NkE1OXVXQmRyR1dLNU83dDhlMThrd1ZxUTF6Zk84RWpTVFRScDRkaGV5RVZv?= =?utf-8?B?TlVxZWFNMnR5WVFOZDdHbnFCVXhxK3VMYmZmeHBNaXBZRThFdGlaQTRQUlpU?= =?utf-8?B?Njg5Zm1YMloxZjR5bFFWVkNkOWZHalY0cXJ4aDI3TkQ4QnRXaGJrVEM0RW1y?= =?utf-8?B?cUNvdDVmejgwMkszQW1UYkk4Qjl5d0UxRkd0SWFCdmVmK2h5VmhjTFhmRUhL?= =?utf-8?B?NVA1bmozZERicTNKZU5Ha0xCcmNMREhnU2NWclFyME5zNDRUUUltV3liaUxT?= =?utf-8?B?V1d1MkljS0JyNFhTRXNrRjZVRTRDeU9UTEdhbkQvMUhSZkk1S1k3VVVkY3RS?= =?utf-8?B?MW1LbXZweFJhZDlaaVF2Rm1QVll1UkR1Zk9uR3lNMXc4a09HK3lRcDlYbm04?= =?utf-8?B?Yi94VGlLMTNxU2ExZi9vSmJwSURCd05tcERhZy8zcHlCWDhZcXFML3VtUEo3?= =?utf-8?B?bllUVVRSRUxTZ2VCeGcrTGVXT0R2MTVuTFJxZHo4eEpHMW9QZ0tMMG8wMVF6?= =?utf-8?B?TnhDa2g0dWE5WFBZbWtXWHpZdWcxZUprM2RvZEtQWUlac0haOTRpcjYwMWNx?= =?utf-8?B?VHJrK2l2RE4rcUh5bXkycUhlN2hEdExNQmgxMW9iTjV4aFRJYmN3ZEpVc2g2?= =?utf-8?B?MFp1N0dLTnNnOTdRS2pOdWNYL3FBa2VnRGNyV1lOZTdiSUJXSlpYbjF3dXBR?= =?utf-8?B?Vkc5Q0NZbnc0U3pHT3h6SmNzTmNZdWltczMvOGxVUzhKQ3l0MWxENHVPMm53?= =?utf-8?B?RWNxVTh6REJzVzYzeFhRVHh3c1V2MWpTUzNNY2Y0QTFDam5vcjZHVE5JcXVS?= =?utf-8?B?djQwenNSYmEvU0llUUU5UUNLYm9KY1V4T3QzRDVrckUxakh6T2VoRm5BaFhX?= =?utf-8?B?US9VM28xd0RlbnYvcGhxY1NKUmhidUFLYnlrWUpva0Y5aG9hN0hkTHZCYkpO?= =?utf-8?B?aEsrZmdRRDNiUHI3R2RETklwT2k5TktUb01wRjVqdTVoOVJFUzlCRHpPQVdw?= =?utf-8?B?L3UxdGdCVU1IWHZJWnE1N0lEMVV2eUNJaGVRSlllQTFQRXlUTzczcFQ0T05T?= =?utf-8?B?U1hWaE5WdTVpT3E5czFnTDVWZGdibGhYbEd4YWNjWENlRGhWbE4wbi9pUlNF?= =?utf-8?B?MXZ2OStXUlNqT3dNd1NtZkJ5SzBVNlVCZitwWEl5Z3ZWeXlaa3VJbFdSeW5Z?= =?utf-8?B?N1EyQmZ5U1B1UllHZFBqTzU3TXNIcmlSQkg0RW51aW9wdTRJZGFYRmpKcURk?= =?utf-8?B?RGRJYkV3eGhabE01cmJzRm9hZC9UM2NSdXB0Z013VEZOakpPa2JXdlFHelFG?= =?utf-8?B?NmJiYkZ3dW03SkN6SGlkUHVCRjJWU2IyY3cxdS9iQ3ZxbURNaGlSc2Z0L3p1?= =?utf-8?B?YTI3MVRmWXUyaEVPcmZCVjlzNkdiQ2xMY3crMGE1VlhyLzlBY1c1ck9CK3pG?= =?utf-8?B?eVE9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: wBR3Cx+T+OkDJxUJfGeK9/tdvJn97YZdmSzquvJUbt663NEQknrE7a+Cpd2gD9+YvWN1hRJFGkYYRcASb2BoFE/gtU+TvFVk4hD3uOLWYeD/ZP8IL2Udce0S2tyK2vRrIFiBI0RfI9ydq7Ikwq8drr+FlT04c8YJZoXrSxcIC6sSYgx74n+pDi+ebedoccXmPZGarV8nAdXdYmSX4+lsxO/XfllpMq13kf5RK45VjtWHTVgUJTJuATUMEL2CeGEz4T/sr5fJhIQETXJL0m/V3//pBvz81vlHPMrT6xDTAhUEUeVtReo4sf7cfIVisHkdXpT+/SCpX8l6PSDN4EH6o3tfT6Qln3zV+9AkJSXbvbl43RfQW1rjYbeBzVsWkdy+dkhUTwODRJOjkXqv0N4u3n7f9/yi6NxHMuiGS6nTSTM+bIJLY8K0YtNeFggLCTkyWN8eAULhBwEStJcxdDuh5jUXFOze7fYJvTOhIxkVlWoX6CXWhNiwWNkYufA/ymFIV8YP7uGeS5U3TGvvtz6dYVQES95y1h6uSH92BEbaIkeNUeFTL1I6HzitmXR20cpDmU8oSR45j5UjXQnF5UIZwB3USqc+a4hQHaNLS5NxPav3AXLV5KzyAas74zhd7F34hXIk2kxAUfK4cZ6w/4ZDziWuYFwIn+9CkUodcH5zyi7aah3yx7rVRO4A/MWpUa8ojn7qNYEGRaSmn5WgPgpaTDSN31vJwD+kVkFoltCupZ5z2U5Etrbp92mu8M43JnxWKbQ9Y7+J909muSA/U5sXbfffRNAwUrbNuSLhwPc0W6cJyYN2/DTyzhxODkgXQhhn9gZl7nCSumySFGR0L8j+1YEELvvCb7ubywhVnvcty60EDE2WqGpPrOIY3RrdFHEW9iUOfv07j3koLZcPBhy8Bw== X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 0fa54213-3766-40f6-82b8-08db67351249 X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Jun 2023 08:56:24.2659 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: hJnZ5wJRoQ7BJhxc48THbRnerHwb2F8OszUCcE/E7OmSipYpC4q263Q0EmhWX3G48cYIhLpOX1l4Qxr1IdPXOQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW4PR03MB6650 On Tue, Jun 06, 2023 at 07:10:05PM +0100, Julien Grall wrote: > Hi Roger, > > On 06/06/2023 18:23, Roger Pau Monne wrote: > > Guard it with CONFIG_LIVEPATCH. Note alternatives are applied at boot > > using _apply_alternatives(). > > > > Signed-off-by: Roger Pau Monné > > Reviewed-by: Julien Grall Thanks! > > --- > > xen/arch/arm/alternative.c | 2 ++ > > xen/arch/arm/include/asm/alternative.h | 2 ++ > > xen/arch/x86/alternative.c | 5 +++-- > > xen/arch/x86/include/asm/alternative.h | 2 ++ > > 4 files changed, 9 insertions(+), 2 deletions(-) > > > > diff --git a/xen/arch/arm/alternative.c b/xen/arch/arm/alternative.c > > index 7366af4ea646..016e66978b6d 100644 > > --- a/xen/arch/arm/alternative.c > > +++ b/xen/arch/arm/alternative.c > > @@ -223,6 +223,7 @@ void __init apply_alternatives_all(void) > > vunmap(xenmap); > > } > > +#ifdef CONFIG_LIVEPATCH > > int apply_alternatives(const struct alt_instr *start, const struct alt_instr *end) > > { > > const struct alt_region region = { > > @@ -232,6 +233,7 @@ int apply_alternatives(const struct alt_instr *start, const struct alt_instr *en > > return __apply_alternatives(®ion, 0); > > } > > +#endif > > /* > > * Local variables: > > diff --git a/xen/arch/arm/include/asm/alternative.h b/xen/arch/arm/include/asm/alternative.h > > index d3210e82f9e5..ce82dc1ca0d2 100644 > > --- a/xen/arch/arm/include/asm/alternative.h > > +++ b/xen/arch/arm/include/asm/alternative.h > > @@ -29,7 +29,9 @@ typedef void (*alternative_cb_t)(const struct alt_instr *alt, > > int nr_inst); > > void apply_alternatives_all(void); > > +#ifdef CONFIG_LIVEPATCH > > int apply_alternatives(const struct alt_instr *start, const struct alt_instr *end); > > +#endif > > #define ALTINSTR_ENTRY(feature, cb) \ > > " .word 661b - .\n" /* label */ \ > > diff --git a/xen/arch/x86/alternative.c b/xen/arch/x86/alternative.c > > index 99482766b51f..21af0e825822 100644 > > --- a/xen/arch/x86/alternative.c > > +++ b/xen/arch/x86/alternative.c > > @@ -358,11 +358,12 @@ static void init_or_livepatch _apply_alternatives(struct alt_instr *start, > > } > > } > > -void init_or_livepatch apply_alternatives(struct alt_instr *start, > > - struct alt_instr *end) > > NIT: It sounds like the init_* was a left-over after commit 67d01cdb5518 > ("x86: infrastructure to allow converting certain indirect calls to direct > ones"). I think it doesn't warrant a fixes tag in this case. The commit you point out should also have added the livepatch guards in x86 at least, since that's the only caller of apply_alternatives() after the patch. Thanks, Roger. From xen-devel-bounces@lists.xenproject.org Wed Jun 07 09:01:55 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 09:01:55 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544538.850389 (Exim 4.92) (envelope-from ) id 1q6p36-0001nq-Fg; Wed, 07 Jun 2023 09:01:48 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544538.850389; Wed, 07 Jun 2023 09:01:48 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6p36-0001nj-Ct; Wed, 07 Jun 2023 09:01:48 +0000 Received: by outflank-mailman (input) for mailman id 544538; Wed, 07 Jun 2023 09:01:47 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6p35-0001nd-Cl for xen-devel@lists.xenproject.org; Wed, 07 Jun 2023 09:01:47 +0000 Received: from esa4.hc3370-68.iphmx.com (esa4.hc3370-68.iphmx.com [216.71.155.144]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id ec0e52f2-0511-11ee-8611-37d641c3527e; Wed, 07 Jun 2023 11:01:44 +0200 (CEST) Received: from mail-dm6nam11lp2176.outbound.protection.outlook.com (HELO NAM11-DM6-obe.outbound.protection.outlook.com) ([104.47.57.176]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 07 Jun 2023 05:01:32 -0400 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) by SJ0PR03MB5951.namprd03.prod.outlook.com (2603:10b6:a03:2de::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Wed, 7 Jun 2023 09:01:28 +0000 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::192:6bdf:b105:64dd]) by SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::192:6bdf:b105:64dd%3]) with mapi id 15.20.6455.028; Wed, 7 Jun 2023 09:01:27 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: ec0e52f2-0511-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686128505; h=from:to:cc:subject:date:message-id: content-transfer-encoding:mime-version; bh=BbHVqC8Fc2JYs6Fc+MVl7kF3al+4sK+IegdfOfo/jNo=; b=gA3RCi8Wr6OqA9UGl9elmD7pNMWvpGRpoOJU9OkeEfOP9tE/HsBuNIxi UosHKo6CWFNocMJt+cOTddtMbua45BovDjJsgvpEHf+aNACWfR67pFPT9 foLmjHXaFC1HQLhMUW0nELcQDYSSknAzFC3GEGaClSt9CropwgM3JWl0m k=; X-IronPort-RemoteIP: 104.47.57.176 X-IronPort-MID: 114390415 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:pnFtQKwjbOMgwcAwNd56t+enxyrEfRIJ4+MujC+fZmUNrF6WrkUFn 2RMUGqOa/aCamX3ft1ybou2/UwBvcDXzdBlSgQ+rSAxQypGp/SeCIXCJC8cHc8wwu7rFxs7s ppEOrEsCOhuExcwcz/0auCJQUFUjP3OHfykTrafYEidfCc8IA85kxVvhuUltYBhhNm9Emult Mj75sbSIzdJ4RYtWo4vw/zF8EsHUMja4mtC5QRgPa8T5TcyqlFOZH4hDfDpR5fHatE88t6SH 47r0Ly/92XFyBYhYvvNfmHTKxBirhb6ZGBiu1IOM0SQqkEqSh8ai87XAME0e0ZP4whlqvgqo Dl7WT5cfi9yVkHEsLx1vxC1iEiSN4UekFPMCSDXXcB+UyQq2pYjqhljJBheAGEWxgp4KVoW7 tEhFA08VQvAt/ya77SJasBHpP12eaEHPKtH0p1h5RfwKK9/BLzmHeDN79Ie2yosjMdTG/qYf 9AedTdkcBXHZVtIJ0sTD5U92uyvgxETcRUB8A7T+fVxvjeVlVMvuFTuGIO9ltiiX8Jak1zev mvb12/4HgsbJJqUzj/tHneE37aTxnKjBNtPfFG+3t41pkzC/FENMSMbbmqhp+GjzX+VB90Kf iT4/QJr98De7neDXtT7GhG1vnOAlhodQMZLVf037hmXzajZ6BrfAXILJhZac8AvvsIyQT0s1 3eKksnvCDgpt6eaIVqf67OVoDWaKSUTa2gYakcsRwYf/8Pqpo11ixvVV8tiC4a8lNizEjb1q xi0qyw5i6QWnNQ8/ayx9lDagBqhvpHMCAUy423/XGio8wd4b46NfJGz5B7Q6vMoBJmdZkmMu j4Dgcf2xOIBF5iJkASERewfG7fv7PGAWAAwmnZqFpglsjiopXiqeNkJ5CkkfRg3dMEZZTXuf Unf/xtL44NeN2eraqkxZJ+tD8Mtzu7rEtGNuu3oU+eiq6NZLGevlByCr2bJhwgBTGBEfXkDB Kqm IronPort-HdrOrdr: A9a23:RSVOf6iOwJqV4kCC2Te/n1e9s3BQX7F23DAbv31ZSRFFG/FwyP rCoB1L73XJYWgqM03I+eruBEBPewK/yXcT2/hoAV7CZniehILMFu1fBOTZslnd8kHFltK1tp 0QDpSWdueAamSS5PySiGfYLz9J+qj8zEnCv5a6854Cd3AIV0k2hD0JcTpzX3cGMzWvQvECZe uhz/sCgwDlVWUcb8y9CHVAd+/fp+fTnJajTQ8aCwUh4AyuiyrtzLLhCRCX0joXTjsKmN4ZgC P4uj28wp/mn+Cwyxfa2WOWx5NKmOH5wt8GKN2QhtMTIjDMjB/tQIh6QbWNsB08venqwlc3l9 vnpQsmIq1ImjvsV1DwhSGo9xjr0T4o5XOn4ViEgUH7qci8YD4hEcJOia9QbxOcsiMbzZhB+Z MO+1jcm4tcDBvGkii4z9/UVytynk7xhXY5i+Ycg1FWTINbQr5Mqo40+l9TDf47bVTHwbFiNN MrINDX5f5Qf1/fR3fFvlN3yNjpZXg3FgfueDlxhuWllxxt2FxpxUoRw8IS2l0a8ogmdpVC7+ PYdox1ibBnVKYtHO1ALdZEZfHyJn3GQBrKPm7XC0/gDrs7N3XErIOyyKkp5dutZIcDwPIJ6d j8uWtjxC8Pkn/VeI2zNMUhyGGPfIz9Z0Wh9ihm3ek2hlWmL4CbcxFqSzgV4ridSrskc4jmss 2ISexr6s/YXBfT8LlyrnLDsuFpWB8jue0uy6MGsgG107b2A7yvkNDnW9DuA5eoOQoYewrEcw s+tX7IVY990nw= X-Talos-CUID: 9a23:QnXvSWFLduBkbdxjqmJcrFU5I/wYQ0bGj0fOD2C+O0ZAY5+sHAo= X-Talos-MUID: =?us-ascii?q?9a23=3AMPQjog/18O/MgpqGNuel7zKQf+c3xbX/Mn0TqKs?= =?us-ascii?q?LgPieMzRqfAa20DviFw=3D=3D?= X-IronPort-AV: E=Sophos;i="6.00,223,1681185600"; d="scan'208";a="114390415" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=EDyfLN1Kj7WFdfN+aUBmS5Zj0XN0b6+hpqCYASK+58G6/2JWxL7Oijn66AkpwStbMsu1YLc5chxaCbXwqq4TnadsinGSCxtTXRxmMn2eQPiArOQe4bpfhi/po7L1nyqjwRZpy03c0A37KSW5rzjkv9lwLreZfvJVrl/BQyWMwCExsv0lz8gvSVn+SSk8VRsk1K77JAas/krL/imvpzs1l55v3QbkbMtdLhkoitL4YTH+rXcAH6lwXJdioT3FcaxGU9yxATU/EHVvjWp84115g+lrT3ABET1wO1hCIpDQCzON1TAmQbZvDNbNntpC+CQ/kfHUGNAjr0IQy/Q8+YYCAQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=k+APwtEMbwH8K+zNBUg7BHZBWWxyyOMBtV/ndUDuzRQ=; b=EFQAGIl3iMMztXdnlvMzcZJkQH7ly3GGF9eJ1rBKjoTnsec8t7rpCghxEZSBJ3fytZ9IFc8JcO6Xx5q9R0Fr0zGSjmCJA0jsETwrV84R5jE7jcJKxa5+mBlGdDNinkRR8KEglmz0qmZy+5YbJixyiWWA07wC96UAy9B/naMKTohV1CcJAgRFUiM6lgscCCFnauoUcpOffg3saBH+xi/mlv+aRo5er2rBXdQJo7i+/VQiQKaULIzUKlk98/Jhsm2eswlhWA4JOXUBnrOrvzl0Wg+xl7ZHBo1fUtrO/vnY4PSYYqR+vI6PAQW4muZ7SBFBoSOZjINCaKAahlQfk/g/cQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=k+APwtEMbwH8K+zNBUg7BHZBWWxyyOMBtV/ndUDuzRQ=; b=cTNqdzt1OycpNu04dX4YWhmgKkqspn+v/pwXxgtplM/KxlFOBbqkWRsHe0RGJZuiD/Udo4cnD/lUgue/4otoBrWWYTfRJ9XmrQNTBIeQ1zelS3HrxBywr8OlqnpLtJ/mJ7LEqGWv/Fre5MQ4edVHsMDMMe0C70Zp2mIb9Ny6Ves= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; From: Roger Pau Monne To: xen-devel@lists.xenproject.org Cc: Roger Pau Monne , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk , Jan Beulich , Andrew Cooper , Wei Liu , Julien Grall Subject: [PATCH v2] livepatch: apply_alternatives() is only used for livepatch Date: Wed, 7 Jun 2023 11:01:20 +0200 Message-Id: <20230607090120.49597-1-roger.pau@citrix.com> X-Mailer: git-send-email 2.40.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO2P123CA0040.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600::28) To SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|SJ0PR03MB5951:EE_ X-MS-Office365-Filtering-Correlation-Id: cd4cc189-5439-47ee-1d2e-08db6735c731 X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: BBnAN6ZEWMUTg1Op8grMaaFgDYNzwaF32ELHZAvi0QveTqGT6ZjoUe9fzccTwOP6FRNIbrF5nnNBwM13P2AEFho9b6cZndXsCfJ3PcfASrANPjLxFoAQrODvz0Q7MiWg6ZZ2TBgxdWQZrbINbX3LrY3PJCGVsPdjhqUhZ9+uyKEmjTYCWG9KvdsMja8lY61ubBGxJhnQtDOzotvceMPjfahYnHzkI51D1m8iqLIU0h3itu8wRUJmlI/uys7wC4/GkCXwG/PQ/WxR7AFkbyZOJieQKAzJ1p0T/kW0O4ShwbzokcIWZzewPKSVU5OrzFTa29e3k8oZ64SVptYJUEl1/o1MW2vX1QcSpGfG+ouN/5QZmeMleLWM/gztb2TnYZtyZ0zq69YAHmleTLi8wvA0wVOADcU1uscGoxGmcIWuZu59BYYI+s8xShCZI3u4TZBGsGaGgCtYj8skfYGDRNx1em5jj8nTOBiym5qBLKgQzyml2SSjIen8BCo7JR8xne7gHFhj2ECEVKEKPH9nU87xbyWEGNT/SpyY2tHBEVJcWpQEex3pcz9lMHdbEL3oRwZA X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(396003)(366004)(136003)(346002)(376002)(39860400002)(451199021)(6486002)(6666004)(186003)(2616005)(83380400001)(86362001)(36756003)(38100700002)(82960400001)(6512007)(1076003)(6506007)(26005)(6916009)(316002)(54906003)(8676002)(4326008)(66946007)(66556008)(8936002)(66476007)(5660300002)(478600001)(41300700001)(2906002)(7416002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?a1dvRmZBK0xIK1JLbDdZYkttTXRzU2h1c3JtZGZaa3pOTStSSmJqSVVxcnY2?= =?utf-8?B?L29VRUgyMTJHY2gyM3Q5VHZpd2gzdk8rbmRRQ1VWdGVNdmZlV0JVSHZnSE9P?= =?utf-8?B?N0NUdXI4WVhFdzVVa2h0ZG1TUWtJTksrTFF1cXdqYTdrbXNFVzVkUlgwcFVQ?= =?utf-8?B?bSsrZXI1MDV6TDNXN1AzanFtMnQ2N0xwUlJMbDJ5dTRrZHk0ZHhpQkM4T1Rk?= =?utf-8?B?VEd6UUwzUUFXYm52UFZuNkI0cVhOVlFxY0JRNDVEV2NPOGdPcTBRUXZDT20r?= =?utf-8?B?OHM2WW5SUHhzZ0w1dDNGMTFtVkNtdFdnQTZsVjNjQnlISk0yNldiWEV2T0Np?= =?utf-8?B?TEcrMHBReFFpQmVDUERWNzU3blNNanR2WWMvaVhRdGtnS25aMUduRGZSR1Uv?= =?utf-8?B?OGRscXZFZUhlZnBUaThtNjAzUllmL1MrRmh1V096RWo0TFcwQXhuK3pqbDRr?= =?utf-8?B?NkUwQWlUN0tXanVxNVlwYXRTTTliZmpKanh4Q0F5anYyWmlwd0RkZ0tka01Y?= =?utf-8?B?NHdHOElmK2k2OERpNThkK2tiSnBOa3M0MmYwSGZsbWE2OFJvamYwNGRiMk11?= =?utf-8?B?UVoxMTlYVm9NOGk4STZ2dFp6Q1VjNkpHRHRFM20vUmtjWnF5My9RSGJQU3Er?= =?utf-8?B?MmpqaWFJZURpN0p5cS8wNTJLeGZwcFl5L2ZVTW42cUpSRTRWS0QrTXlvSlk0?= =?utf-8?B?Rk9SaU5vMGhXUnh2VzlDQzhuRjJqR2tPUXRKZVVERk1NYThwTUpRaDFaQko4?= =?utf-8?B?VnZhcnlTaVQ0alJBYnpRbmIySUVSU21wWGNlN2lwdWtZdm5mcFF0b1dla3Nh?= =?utf-8?B?RHU4REFzNS83Wk1HMS9kcW5lQUNxUUd4TFNZdmU0Mm1qazM3VUZDa05hSG9p?= =?utf-8?B?SjJveDVuT0U5bWJ4SjNIRzBzci90SGFrVkxXczVUdHlZM0krSVRLbGE2VmU1?= =?utf-8?B?TFdSa3hYSEd3MW8vbEl6ZitxdHByQ3YrQVp0Z1d2OVFXWTl3dWE3MEFFUzR4?= =?utf-8?B?ejlmSXo4MmkwcERUQStKckhLTUpyVDZVU1M1dUVGekRLeEhnRDFEdWp1eDNx?= =?utf-8?B?TWFsOWl5eGxTenhJeFlCdGppQ1RadHJWUC9pRTlEY0FwUUxId2hnZHNZUmtx?= =?utf-8?B?anBtZkpZV0hlTUpGSzF4ZGt4WSs2Z3V5MUE5S2Y0dUc5MUVqMVRweHhXQmFP?= =?utf-8?B?Y0F2MHNEZnhFbUJIRFVlMEJRdmhERDNKdDA5UldkWjRZc2xPL2hFWWdFLzNE?= =?utf-8?B?V211dERFR3ZpRnh1Tnl4SEJFWXprM3JXV3BGWWw2M1oxaGczTkdDVUo1S3Qz?= =?utf-8?B?YjFiTGJERXFuUE1JaHQrNkVYOFQ0THJhT0ZlSE82VW51TmlUaGpza2M5QkdG?= =?utf-8?B?KzI3Qi90aXZBMFMvZmJ2UnJ3emFYa3o3NFdGYTUvUjl1ZXpZNW0zdlpZZnNR?= =?utf-8?B?ZVN4OEY4OHp5NW5zL2FGc2h5R3RtVnpLTnk0ZXV1dkJEUHNoekd3SmZpZXZM?= =?utf-8?B?aTNmS3NZNVpZNlNURUV4eWxWV2hkckJnNkNxWnVpWURidnNYdWZ6MG1CUnp6?= =?utf-8?B?cE0xbXQ2eVVXWnpiQlJaOGMrNkRTZ3Q4bzZlMS9vdnBxOFZ4OXhCbkYraU54?= =?utf-8?B?VFBEM1hKYlhqY1dFZjdWa1RhUDRQOFVCQkJCbVJ3dkJPUWJpaGdQUnNiYVEz?= =?utf-8?B?WFRBc052ak9ITm00N0dFMG01c05xYW5udnZvK3h6YTF3Z3VZVU5lVVB4dG83?= =?utf-8?B?OGUzZzhFMFlSaDN4eVpYS09lUjF3VlZUbGVtNkpSNk1IZVFhMEVQUlVWbmVs?= =?utf-8?B?VkhSOVJMSjdzeEhLaWN0eC92SFhpb1YyM1RON2YvK3NCdkN1V0FVZ294MlZZ?= =?utf-8?B?TjdsM3dnd3pxZTdydWR5QUh5MU9oN0lJN3ZYYlJkT2xSeXdJRGQyUzFld0VR?= =?utf-8?B?cHVqV1RmcXg1TlI2bWd5dURicW1GMFpHR05lRXdNSSs1WHh2TmRTUVI1dTFZ?= =?utf-8?B?QUl4VUEvb1owNW5iMytNNWNXTXkvN0dQblBCQ1dlckNTU3VxRDdYbVBKY1N1?= =?utf-8?B?dDJzaFg5a2hvVzRVTXJtcEpYTFdNdDI4RitsU04xU2lyN3ljRDNKUkg4Z0p4?= =?utf-8?B?Z0g0TEtNdm1qdXcxbGpOL3d1VDdSbUEraWdNQ3VmOGZRaVdpUEI4T3IxK1Js?= =?utf-8?B?VVE9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: fBTziGaRV5AkQOn08f/1YOh4LWXZwMeKAR0YH3/nrEgJrkh5ArF9gf6EayNXtBpPipmPDau88aAmkuaoL5wOr1XlH/+oT+ekS8hyd2Qy+gQGAGBkq56dBALWr/BkX/Ec4VeHb/fYTyV0YBuJjFpEzwWtNI1YYtwrvSkknUuSyP+9ebNV/6GbxWqNJJJRyxHBCc1VeBTT5wx4iE/+8JkJAy3S0DWUIb0uUbmHa5w2+47kvP/eMTX4ETlZ9WAe+/4q9UhIolzAre/ZgG7Ho5+y0tEsLF8D4FviEmIueUPVW3YGhvJuIfCJ9nITeJ8iRr5VFnIRqArKoopyFHBbOd3uPNWF0XkSOiTrei+a7p1yzPS5Ez51qM8Eyw6XcAImdzrXkIgX06cz7QvSrK8m/NNS6UfdgkXP/XvbFVi88UZn4eHoh23CF1VOXC3VR7ZSSRK7LlKZf16qjjDHwmRS6zyR6eB2fZclIPt/e6Bsrr3TQV/sNGtynrZDn6FSVjN4NJIb8PkeDJye6m5KvaQ82obvqZXyWurNQHLyFWcgepAV9T7ImeJxge24XRhbsXbdcirfi2p/j+gTZWfeowp1Ikma+t3l3U/7LAE/lTx1eAkU2cT+ab+gUp2H77ybqBL7pEhOEBl7DpUYOXM8pI/9/GyB95x40l5VLzj8kYPJUWf/BfjnR3FtHHosLfIPwIRG7ITqLOj3mnut6SjE3umWHVK9rPeXG69NzcX6x5iD5bCng/I2oiUXiLoRkEFYV7SGvhi4n4b7Jn6X+W8krkLibthYQ7i+qRB8bqTmqMtYCw/d56M8Qw/6oWiZspJfiqBGWvYp7GouRsm+aUK0S/WobWXW/fCn3VLF9HuqTfLXZkYYCUnmifv436pK7NQUNj2GpPAbdlUmNuCrExGXOj6NppUFaHA6sJcWHBLVo7qSy3EU3Eg= X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: cd4cc189-5439-47ee-1d2e-08db6735c731 X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Jun 2023 09:01:27.8491 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: hU47qv9j9KySBz5yd5o52eb4puz7h4Q7819C/1CMooXCt74Zxq0nUvQXDA7cKFUbYbYqTJoE8BEl5qi8Tz4R2Q== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR03MB5951 Guard it with CONFIG_LIVEPATCH. Note alternatives are applied at boot using _apply_alternatives(). Signed-off-by: Roger Pau Monné Reviewed-by: Julien Grall --- Changes since v1: - Do not guard function prototypes. --- Andrew raised a valid point of moving the prototype to a common header, but since I'm not longer touching the prototypes I'm not introducing such header here. --- xen/arch/arm/alternative.c | 2 ++ xen/arch/x86/alternative.c | 5 +++-- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/xen/arch/arm/alternative.c b/xen/arch/arm/alternative.c index 7366af4ea646..016e66978b6d 100644 --- a/xen/arch/arm/alternative.c +++ b/xen/arch/arm/alternative.c @@ -223,6 +223,7 @@ void __init apply_alternatives_all(void) vunmap(xenmap); } +#ifdef CONFIG_LIVEPATCH int apply_alternatives(const struct alt_instr *start, const struct alt_instr *end) { const struct alt_region region = { @@ -232,6 +233,7 @@ int apply_alternatives(const struct alt_instr *start, const struct alt_instr *en return __apply_alternatives(®ion, 0); } +#endif /* * Local variables: diff --git a/xen/arch/x86/alternative.c b/xen/arch/x86/alternative.c index 99482766b51f..21af0e825822 100644 --- a/xen/arch/x86/alternative.c +++ b/xen/arch/x86/alternative.c @@ -358,11 +358,12 @@ static void init_or_livepatch _apply_alternatives(struct alt_instr *start, } } -void init_or_livepatch apply_alternatives(struct alt_instr *start, - struct alt_instr *end) +#ifdef CONFIG_LIVEPATCH +void apply_alternatives(struct alt_instr *start, struct alt_instr *end) { _apply_alternatives(start, end, true); } +#endif static unsigned int __initdata alt_todo; static unsigned int __initdata alt_done; -- 2.40.0 From xen-devel-bounces@lists.xenproject.org Wed Jun 07 09:03:45 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 09:03:45 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544544.850400 (Exim 4.92) (envelope-from ) id 1q6p4q-0002Py-VD; Wed, 07 Jun 2023 09:03:36 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544544.850400; Wed, 07 Jun 2023 09:03:36 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6p4q-0002Pr-RO; Wed, 07 Jun 2023 09:03:36 +0000 Received: by outflank-mailman (input) for mailman id 544544; Wed, 07 Jun 2023 09:03:35 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6p4p-0002Pj-3H for xen-devel@lists.xenproject.org; Wed, 07 Jun 2023 09:03:35 +0000 Received: from esa1.hc3370-68.iphmx.com (esa1.hc3370-68.iphmx.com [216.71.145.142]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 2d4c0336-0512-11ee-b232-6b7b168915f2; Wed, 07 Jun 2023 11:03:33 +0200 (CEST) Received: from mail-mw2nam12lp2040.outbound.protection.outlook.com (HELO NAM12-MW2-obe.outbound.protection.outlook.com) ([104.47.66.40]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 07 Jun 2023 05:03:31 -0400 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) by SA3PR03MB7284.namprd03.prod.outlook.com (2603:10b6:806:303::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.19; Wed, 7 Jun 2023 09:03:29 +0000 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::192:6bdf:b105:64dd]) by SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::192:6bdf:b105:64dd%3]) with mapi id 15.20.6455.028; Wed, 7 Jun 2023 09:03:29 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 2d4c0336-0512-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686128613; h=date:from:to:cc:subject:message-id:references: content-transfer-encoding:in-reply-to:mime-version; bh=JHxpHd7ywyA1TOO4ie5/qUEgsui1FR3Hpxle43ed2z4=; b=ZKg9DB8zfzJLSgMenszinltDV4Mt9IQ0Nsu3LJ7ELuCKZU854Ojeocjn gzoHtzxEfGjxEgeKmGb/mY9MdJOiixylcNANQR01lgeEFd7KLkzb4So6n 0MPuDpTetrQcI3ykEyrL5HlUmABKOntaxxJ1bZARz8XgNn2HCIvqZl+MR g=; X-IronPort-RemoteIP: 104.47.66.40 X-IronPort-MID: 112298142 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:2mWKK61T7MV8OehnPPbD5U1wkn2cJEfYwER7XKvMYLTBsI5bpzdRy GNMXz+HbqyONzOmf91/bN6x/RxXv8fSztA1TAY4pC1hF35El5HIVI+TRqvS04F+DeWYFR46s J9OAjXkBJppJpMJjk71atANlVEliefTAOK6ULWeUsxIbVcMYD87jh5+kPIOjIdtgNyoayuAo tq3qMDEULOf82cc3lk8teTb8HuDgNyo4GlD5gJmOqgS1LPjvyJ94Kw3dPnZw0TQGuG4LsbiL 87fwbew+H/u/htFIrtJRZ6iLyXm6paLVeS/oiI+t5qK23CulQRrukoPD9IOaF8/ttm8t4sZJ OOhF3CHYVxB0qXkwIzxWvTDes10FfUuFLTveRBTvSEPpqFvnrSFL/hGVSkL0YMkFulfHEtgz s43cAoxMxGNqvyZzfWrbrJWr5F2RCXrFNt3VnBI6xj8VKxjZK+ZBqLA6JlfwSs6gd1IEbDGf c0FZDFzbRPGJRpSJlMQD5F4l+Ct7pX9W2QA9BTJ+uxpvS6PlGSd05C0WDbRUsaNSshP2F6Ru 0rN/njjAwFcP9uaodaA2iv13LWezXqnAur+EpWd/fh22UOwl1BLVgczaFuZgeGrqVaxDoc3x 0s8v3BGQbIJ3E6hQ8T5Xha4iGWZpRNaUN1Ve8Uq5QfIxqfK7gKxAmkfUiUHeNEgrNUxRzEhy hmOhdyBLSNrmK2YTzSa7Lj8hSipJSEfIGsGZCkFZQgI+d/upMc0lB2nZtR+FK+4iPXlFDe2x CqFxAAAgLEUgd8Oxr+M11nNiDKxpbDEVgcwoA7QWwqN5A5jeJSsYYDu7FHB9OtBN66QVFzHt 38B8+Cc4eYVS46MlyiERukABpmt5vCMKjqahkRgd6TN7Byo8n+nOIVPujd3IR4zNt5eIWOxJ kjOpQlW+ZlfemOwarN6aJ6wDMJsyrX8EdPiVbbfad8mjoVNSTJrNRpGPSa4t10BWmB1+U3jE f93qfqRMEs= IronPort-HdrOrdr: A9a23:cH3vz6DmHCZXh0DlHejHsseALOsnbusQ8zAXPh9KJCC9I/bzqy nxpp8mPH/P5wr5lktQ++xoX5PwOU80lKQFmLX5WI3PYOCIghrNEGgP1+vfKl7balDDH5BmpM BdmsFFYbWfbGSS5fyKmjVQeOxQpeVvnprY5ts3mBxWPHpXguxbnnBE4kHxKDwGeCB2Qb4CUL aM7MtOoDStPVwRc8SAH3EAG8TTutHRk5riQBgeQzoq8hOHgz+E4KPzV0Hw5GZUbxp/hZMZtU TVmQ3w4auu99m91x/nzmfWq7hGhdf7zdNHJcqUzuwYMC/lhAqEbJloH5eCoDc2iuey70tCqq iFnz4Qe+BIr1/BdGC8phXgnyHmzTYV8nfnjXuVm2Hqr8DVTC8zT5Mpv/MRTjLpr24b+P1s2q NC2GyU87JREBP7hSz4o/zFTQtjmEaYqWcr1cQTk3tce40Db6I5l/1owGplVLM7WA7q4oEuF+ djSOna+fZtaFufK0vUu2F+qebcLEgbL1OjeAwvq8aV2z9ZkDRS1E0D3vESmX8G6dYUV4REz/ 6sCNUmqJh+CustKY5tDuYIRsW6TkbXRwjXDW6UKVP7UIkaJnP2rYLt6rld3pDnRHUx9upypH 39aiIZiYZrEHieSvFmnac7vywleV/NEwgEkaplltpEUr6VfsuZDcTMciFqryKamYRgPiTqYY fOBHtoOY6dEYKXI/cu4+TfYegmFZBMarxghv8LH3Szn+nsFqrG8sTmTde7HsucLd9jYBK0Pk c+ X-Talos-CUID: 9a23:CVwXuGNvlegbi+5DRQNJz3w7QvoZL3zT4Wn/LgioLT1TYejA X-Talos-MUID: 9a23:0vqisAv8r1cXG4oemc2noTpkKJ52wPWSUB4XtKgGmemcJw9oNGLI X-IronPort-AV: E=Sophos;i="6.00,223,1681185600"; d="scan'208";a="112298142" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=h+hIe3qnBbkIeOfgTJwcSDXmFzPGXAKzmDl5xgjwNOjqoYZntUhbg/1O8b8GKnzBmcOJOYC9AFlpr6AyM4BtmCMlBBvId40YgynOCb6QmQ8fxWP3N5tmS10MYJ16zY1wV4/zuy6rxWI9RepubCRKqDmnHNWnBVabpyvNm5RbVQy5wUtLuYxvvdZ56RGLBlaN0CJHv+vftndhM/2biMKLsUXmHWF9i6iYNUkB3qYFd1VqToNPDjOZ2vRuEz7aVAG1VMn/z0H7l+y3rRgmLV4lr9DXu/fcALlZsCcyxJs0KWwm2bVJEb5edpJ/z4hFKvijkJLcskkoCUTqm/KPWwv9nw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=4pVeP0uKucP8nRkF6l7VzLPXFFNp4GPvGtutR0D5kGM=; b=KzJYWSen/qZKffJ5NzHtAodF30ouwpcO0fxeq7eEkxv7tRldXBuwZnk46kwY8+Cenu37u4hzV7mbLBSnA65vvAfTSNYrEsME0GQupgkemFD1PB7/+Gly4daFZTWWutSlZIh1Fhb3O6uJuJ9Xv5xtIxvKzmCGTG2ND5jfaOAg7zXj2qFmkmaLIg+XIHZVN2VhEFv8gugWYv6wxoyi7ap28+kF1gAS7vV740ge/dBI3niC3pCV05njn33nQKhaHCx8+FpcI8ZQ3WNaq1iKUNFaoW51IybqWjnp0k4teAsbCmSzXmmCGI1DFghFFCr4Nycclj7ZiOf82Old2DAw/DqiJg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=4pVeP0uKucP8nRkF6l7VzLPXFFNp4GPvGtutR0D5kGM=; b=EBz1EaE3kdcIAZTj3w/ZxwI1AHlOlR6rvz8tonjElp4S7oXaVq2vhkd4PC8ECcCGDYHZIW6CiKbLXNan2rBNZswpzkxGMNiJUtI6VoF3QJWOjgUK02QoTtT22gzuYO+8YasETh3mngLxgDFk6YigrQgzGFX19YyfS8FNvt3/E6g= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Date: Wed, 7 Jun 2023 11:03:22 +0200 From: Roger Pau =?utf-8?B?TW9ubsOp?= To: Jan Beulich Cc: Andrew Cooper , Xen-devel , Wei Liu , Stefano Stabellini , Julien Grall , Volodymyr Babchuk , Bertrand Marquis , Jens Wiklander Subject: Re: [PATCH 1/2] x86: Introduce arch_domain_teardown() Message-ID: References: <20230605144331.1819452-1-andrew.cooper3@citrix.com> <20230605144331.1819452-2-andrew.cooper3@citrix.com> <18a46079-8fa5-5e43-9296-56a8c6457133@citrix.com> <9a34e419-ce1d-e452-47e8-fe220d600ab6@suse.com> Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <9a34e419-ce1d-e452-47e8-fe220d600ab6@suse.com> X-ClientProxiedBy: LO4P123CA0112.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:192::9) To SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|SA3PR03MB7284:EE_ X-MS-Office365-Filtering-Correlation-Id: b7000155-6833-4d99-b5ef-08db67360f83 X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: xrC2CInwNgRLpURkJDOd1zQxgUyC3AUv6nAPgJu0a11mjT6BMvYNfrWTud47up/iLmwBWD0otchZuljMDUFry+vrpxUwqvBuqHWkaXhr3BeINCx5Ikf5GhUto5dF+KP2G2hOxwZYKmEGrXmX//ykSw0pZnfP7QheBMXyfMrUpvB73W+2Vp/HrZ2/ynQfET5wXVRjqQZoKfq3YB9hxHxfp6Rzx00LjStB+grAEsH52PLRsbDxMKxr2pe/ZxomKQoJa++sqWFRgvupXOejsoxbw+Awz2V+WkLV+HZEgnbLLV4Vc2NbxHQ1PPs7W79d8aiIwSl3wWTot/6+1zWEMoVWFzZHtqGOuBTLXHKrpz8Ga3pijpqmMDH7QXCebZ1mhSm7DDoitdvaPbxMkPJxl4jqG2HG+thTFCuKx6fa8hWwumSU8J/n+7iEneXqSU2Jtplm8JC2kmLXT4yjOwo4MtMz7i8EEVHNx0bQywdpnOJPrd96Cif7ARGYzz9Oz+XbOksQLFgZ27VUf7T9geDp+H+aXV7H0VRKsQnB+IViCTLqVbncWW30TX8ODygBu0AXauNVoH14gI7G7iynTN74v23gyasb+QTvqNlhywPIT4phRI8= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(7916004)(396003)(136003)(346002)(39860400002)(366004)(376002)(451199021)(186003)(2906002)(86362001)(82960400001)(66946007)(66556008)(66476007)(85182001)(4326008)(6916009)(26005)(9686003)(6512007)(6506007)(53546011)(8936002)(8676002)(41300700001)(5660300002)(6486002)(478600001)(38100700002)(33716001)(6666004)(316002)(54906003);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?djR5dDFBTGwxWWVHeldqK0h2b2ovdTkxL0VuSTFPeU4xbFYwL2JubFRaM1Nm?= =?utf-8?B?Q24xQzVDQ2JEZGh1QVQxQkhCTjVCdjBibXlyb2lGaExLaWZnY0JIbjBtZEp3?= =?utf-8?B?bEdwdVc2TDhKc29qWmNjVmgzVFNHOHpPSjBJdW91SUgyOUFLMzFrYkFpaEg4?= =?utf-8?B?bXNRdlp0ZDNiQ2wzdERyT2lFQkRLNzFEZ1NnZnFsQUhRU3lEM2xUMEJtNTA5?= =?utf-8?B?NDF6a2craTlDS2d1RGtYdFk0ZFhSeUtNRWJXTVQ4THlxUjZEcVZxWmZzZ25Z?= =?utf-8?B?K1grY0hOV2ZhdTIxZWZpUHd5SjlZbmtUNkFHeW9zelI4dHh5eFZvR05qUDln?= =?utf-8?B?dW13U2tjcVZlRDdsdDFtQjRPUGE0QWp2Z2JFb0pYS0VvYkcvQjdSZWZCL0Y4?= =?utf-8?B?SzV0ZDVaUHF2dEVLb3pvQTZiYXdUVkpNN0c4ZVBpWGJHRlhOMExBMW1MYTV5?= =?utf-8?B?SnJFc3RCa3BaTVBpMW5UdStVQ3lJNXQ3OEdBemdHcldrVUovcm84R0dHdFZl?= =?utf-8?B?cUtJUzEyb0RQb0NGcVZrdnFsRW14R2lJK3h1bTZvcVpQdGZhNmN0YVorSDBU?= =?utf-8?B?bS9GRHI4UjV5aG0yWDBVL0ozeUJ5ajRoVTJmVVo2cUJmZ21JWDFiR2V3Q2RL?= =?utf-8?B?MXAxM2FXTkZuenBvNlVGZUh1RWtTRlNEemVvaWx5ZnZPWEI0K25wYXJZR0Ft?= =?utf-8?B?T2t6THNWdTJnY2w3alQ4N1o2TFlwMm04aUVOOStiNkRSaEl5SjlyU051UVI1?= =?utf-8?B?S2tNSld5bXpVV3FUajlXeVY3R3FCWmZodTR1bUJqTmJLYnJJVmlyMWFYdmEr?= =?utf-8?B?WW1HNFp6ODZWSTViZ3ZVN3pMTmR0ZnNZeVZEaHlCdUhTQXRxYStnL295N0lk?= =?utf-8?B?VjBMbEdWWGxxZHFKZk4rWmZ0WEtLc0VGYUdqcW9zZkd3RkptdlBiR2pIbmho?= =?utf-8?B?VWtTTG5KTUtyaVl5K1RRcDFheTZvS3B1M0Z1c0ZhV3JxYmpjWmtrRTVLWCs3?= =?utf-8?B?bk00Y1BYbjZzd3R4YURMOUljb3RKWkRFWXhnelFaNkZqRWQwUmtZSjA4WGV0?= =?utf-8?B?bjNyV01mdkhjYXRpbFZxemV6TjZ1UFlUTmVaMkQ1SHRMc2xNL0ZycTlIMEhX?= =?utf-8?B?UVpkKzJ3V1Z1WDN5Szg2OEY0QkVYWGtaR1ZpTTlteXh6UlRJOXI5aFplU2pB?= =?utf-8?B?Y3RSTU95REJ3eXB1YTAwWkNWMkdrMkI0TjhVak8veFlKSWt1K2FzM0FCQXlx?= =?utf-8?B?RFUzK2R6YXJocVE2bDBGSXFWa3ZuSkp3RTlCUEZjN29HSVQwMXN3VUdZd0dk?= =?utf-8?B?OEVxWXpRcmRzcnM4ZlNhUEcrZm0xMXAvRVhtbmI4MjFTdTlkOGM0SWJ4UXBX?= =?utf-8?B?eWkzVmJ3L3c4OWZoS1BnaTNkTlpxVERGendyUkdzNm1CKzBwQ25OL1REeXlX?= =?utf-8?B?QmZLb3BzUnN6aXFGU1dSOHluMkZuUnNrRUlqWWJQYTBVNHdaZG1QU0V3MTR1?= =?utf-8?B?SEhHZTRpY0QyUXdNeExwS2xUSFhTcFc1aUVpQjB1VE5OZExkbVhEaHpLaElk?= =?utf-8?B?L0t6VHM3UVhFQ3k2Y295R1RESXU3ZzgxUkFsalFLZEhhSVhtcms1bEUxRllv?= =?utf-8?B?U1NmNDJueDI0MDlwQVBCNy9RcVgyUVN0UGp6NUFxY21OZ0NmN2VDazNCWW9J?= =?utf-8?B?UUgvanNNV25KSzFZK01YUGFZTDJ2d1BiL28yVWw4cXhZMEhFNGV0TGZyRmwz?= =?utf-8?B?S2NpYk1CNHlydWh4a3VidHoxb2JDU1ZUR0g2cmFoc0wxOWREYUxJcFVDYW9x?= =?utf-8?B?UDZxdEVZb2R5QjZ4b2Z1Wk51WTkzbG9QODlleWZBTWJibmoxdUtjVXBKQ3R2?= =?utf-8?B?ZjZKM29ITjAvMW42R21Cemo3aTVtZ1N6TUlVTUtEUnA5OEhHeUhzdGJMaSsv?= =?utf-8?B?SlZDeVg5L1UzZmJ1L1JvYm1JQ09mYTVoR0E4c2xwY01wUVdISUo5a0t5K1Jl?= =?utf-8?B?Qld5MCs5cFlnVWtFaGpIYkFBbnU5UW1ocG5ZeldBOFpmSWlBc0hsN0JuT1dN?= =?utf-8?B?bWNabVAvMnMwOS9rbkl3bWh2Rk9zU0RrZU02NHVnVGlNM2ttUXVFUmd5OTI4?= =?utf-8?B?OEpOOTZlS2ovUVhjZzFPaCtxVFRPaDJWdU9zWE9wUFBCaktlNmpLOGhJSnZR?= =?utf-8?B?aVE9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: v5/kJP0P+ccJG4Mt6O7pZsUxI7OTtuxmTYJGdMLMDLi7U5iCsKpoPf/xnd9LHqzmxnXtnbPLauajP5DLLeGlKgkSepehS1cxqS63NbkebP4vu5tFq5HkphPAi9TFC1Is2XeaZo3SJfxsIUBJLSWcpCoId2LDmJShwvrT1j/InWvAb3BtA0Dqne/VE7iA9ky8vv0hDoLCZit+6SLp0JAyU5eHYiTFw/bh5XXpdbtxiTSbW539FAYlG+qlgmw30GD71jiUW9Og5bjuF1BzE7jqDxjizM8qUCAM1/Ui36Y60LiFIj998RzorhvcB49uTuu2ZqzfpKp1s7kxy0NwhUeIiEqMsm4hKuuP7OFOSTOvjmFjMvhE5ruanxNcVCnY3QExlldqTVr1nF0Ik8ynA7RItyYadOBfSrOG/3nQMV98PLQmjfJv2bUW09A09v8PQNVV96naNWgtMPtVLGosdtX5avdm+53oddsoUDgDGrsU1MklUKCbSDF1O7uk0H4OwR4v36uWy5ftSw/Gs9OPbH94MUyP0C8iJL/aSMEIlmHwRJf4NdCQi8JWKWOyAvzXCOEs2urGD4zdVmvtPNq6u113LJ4SVSo3j/fX5YK1LtL9kaCY2s1DKZBb9kS6a9AUsZJL0wCJD3n9Pk1X66r0nA17WbAK0yW1Yc51IftHndJ624A2aouo7uSlb3Xe3r7xgBWa6so+vARjmV8HMIgGY2k6Imf0icyAZbSGAn7HvNUOoWg2M1At/sNuBVJdMNejC+3NyQ6B7LjmcQxF9mZUCxhT9jgqMvZMFTRtXpVgTQX6/mwSkdsRoGoSezNGGaqsmQROBDverr6G2+XIXu7lDLgG6Jcb03lBk36ReOw9B5lSLy10/P/9FVHiDyTmEk+4H240AipwEmBXv6sctJ5y02iSCl9Z7E2VWNZsRQh+Df3itoU= X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: b7000155-6833-4d99-b5ef-08db67360f83 X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Jun 2023 09:03:29.1762 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: a7pYXoRAimV5vFhvqIm0A1J1BEFopdxpSRIB+deOMo+geKtB0ryQvEnoIu873FWD6AlUf3D1rEFKRbul1pfSSA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA3PR03MB7284 On Wed, Jun 07, 2023 at 10:43:24AM +0200, Jan Beulich wrote: > On 05.06.2023 17:23, Andrew Cooper wrote: > > On 05/06/2023 4:19 pm, Roger Pau Monné wrote: > >> On Mon, Jun 05, 2023 at 03:43:30PM +0100, Andrew Cooper wrote: > >>> diff --git a/xen/include/xen/sched.h b/xen/include/xen/sched.h > >>> index 85242a73d374..854f3e32c00e 100644 > >>> --- a/xen/include/xen/sched.h > >>> +++ b/xen/include/xen/sched.h > >>> @@ -589,6 +589,7 @@ struct domain > >>> */ > >>> struct { > >>> unsigned int val; > >>> + unsigned int arch_val; > >> While I haven't looked at patch 2, wouldn't such continuation > >> information better be encoded in arch_domain in whatever way is more > >> suitable for each architecture? > > > > Well, it's filling a hole here on 64bit builds, which it couldn't do in > > arch_domain. > > > > And it's contained inside teardown{} which already signals it as fairly > > magic. > > Plus why have each architecture duplicate the field? I expect none of > the arch_domain_teardown() instances will remain without an actual > use of the new field, mid to long term. > > I don't want to override Roger's concern, but from my pov > Acked-by: Jan Beulich Oh, no worries, I was meaning to reply I was fine with Andrews justification, but forgot. Thanks, Roger From xen-devel-bounces@lists.xenproject.org Wed Jun 07 09:05:20 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 09:05:20 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544549.850409 (Exim 4.92) (envelope-from ) id 1q6p6L-00030E-8u; Wed, 07 Jun 2023 09:05:09 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544549.850409; Wed, 07 Jun 2023 09:05:09 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6p6L-000307-69; Wed, 07 Jun 2023 09:05:09 +0000 Received: by outflank-mailman (input) for mailman id 544549; Wed, 07 Jun 2023 09:05:07 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6p6J-0002zx-QI for xen-devel@lists.xenproject.org; Wed, 07 Jun 2023 09:05:07 +0000 Received: from EUR04-HE1-obe.outbound.protection.outlook.com (mail-he1eur04on2071.outbound.protection.outlook.com [40.107.7.71]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 6424841f-0512-11ee-8611-37d641c3527e; Wed, 07 Jun 2023 11:05:04 +0200 (CEST) Received: from AM5PR1001CA0054.EURPRD10.PROD.OUTLOOK.COM (2603:10a6:206:15::31) by DB9PR08MB6729.eurprd08.prod.outlook.com (2603:10a6:10:2ac::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.32; Wed, 7 Jun 2023 09:04:31 +0000 Received: from AM7EUR03FT045.eop-EUR03.prod.protection.outlook.com (2603:10a6:206:15:cafe::f8) by AM5PR1001CA0054.outlook.office365.com (2603:10a6:206:15::31) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33 via Frontend Transport; Wed, 7 Jun 2023 09:04:31 +0000 Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by AM7EUR03FT045.mail.protection.outlook.com (100.127.140.150) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.22 via Frontend Transport; Wed, 7 Jun 2023 09:04:31 +0000 Received: ("Tessian outbound 8b05220b4215:v136"); Wed, 07 Jun 2023 09:04:30 +0000 Received: from aaaf3ab06462.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 509EAF6D-243E-40EA-876E-10E2F62ADF32.1; Wed, 07 Jun 2023 09:04:24 +0000 Received: from EUR01-DB5-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id aaaf3ab06462.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Wed, 07 Jun 2023 09:04:24 +0000 Received: from AM6PR08MB3784.eurprd08.prod.outlook.com (2603:10a6:20b:85::25) by DB9PR08MB6458.eurprd08.prod.outlook.com (2603:10a6:10:258::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Wed, 7 Jun 2023 09:04:22 +0000 Received: from AM6PR08MB3784.eurprd08.prod.outlook.com ([fe80::5e17:39a6:eec7:c482]) by AM6PR08MB3784.eurprd08.prod.outlook.com ([fe80::5e17:39a6:eec7:c482%4]) with mapi id 15.20.6455.034; Wed, 7 Jun 2023 09:04:22 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 6424841f-0512-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=F64Mo46Eja+CcpQHdAyeauc/jy1QchVAqlyZ9Ot8T0E=; b=IukwhkVYjmimS3nx80DDqHeLfy+BvbN1BgTnkle3oS4zKnxrlV/apAa9+jd5n6+Ugi2CDh+D5RlvWqxJkRQkigJxv1ZFCnifXSUH+Est5IaUxfK1/iFK9TSts5kWx4V9UymQFSwEHpwKXjB81HWL1zCXeV2aDi1jX1iAIAQf+Ak= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C X-CheckRecipientChecked: true X-CR-MTA-CID: feea83a7af251028 X-CR-MTA-TID: 64aa7808 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Q/JjqVspf8phfdg+n2mA9yh3FFnsWnm3Q5t7SCXY4SzvdX8K9l2FWQhHpaiG0XB/nIylebP/WeTDHIqBwsO2dzy0liq547+fC+U2OcsfxTzXjBgaRN6XVWqOI8BMESL38hTpxyTtIxLyiGL+Mqx8HeuOnOg+sZxHITDy/tzb2zbGvqSQnbCusqzlfqimB5lqsZ24X+H4DnJK6A8XaFktT1PeY9OCsoa2QLqknjLvotHC1bEfD5SuTqSJAS+RIHAjRHWJV/JAH7SK1KnZZihepJ2/YupHTCnm8qjjxKEwzDwNQjCpdt7AQlbMXB3Z5AhcxzGpI4r9CpfLrTkd/lxBxQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=F64Mo46Eja+CcpQHdAyeauc/jy1QchVAqlyZ9Ot8T0E=; b=k1c84AQmT33IeFKV33ZdNkulLWpaqqLFgRgQg5w2tDJEkfrtr4OZJTZUZ3DRRBCY6iJdk8qtNsCBu1LrYPhP9QHSQcpxexaZCQpdTExaQiKhtudD1r8W8cC81n/POdXOdxuf9vT0GgX3xbKT03pE681SMpD4edWa+dbSwSN8VwRAf+hhy28YmkHlUhH+s0xSvI1yZhhKIlLrzFvM/DpyrvuaRgRgZ0B4MVi9duGUexVTc/HDo+73c7ItjZEp6t8tw8CIKNyA4oGzJKnl96d6d7gt8P87zNb4S5QGMSscFz+5nZXgj1Nv42xA3BTxblKNHX7z8xr3t2FxFgDJWgQouA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=F64Mo46Eja+CcpQHdAyeauc/jy1QchVAqlyZ9Ot8T0E=; b=IukwhkVYjmimS3nx80DDqHeLfy+BvbN1BgTnkle3oS4zKnxrlV/apAa9+jd5n6+Ugi2CDh+D5RlvWqxJkRQkigJxv1ZFCnifXSUH+Est5IaUxfK1/iFK9TSts5kWx4V9UymQFSwEHpwKXjB81HWL1zCXeV2aDi1jX1iAIAQf+Ak= From: Bertrand Marquis To: Andrew Cooper CC: Jan Beulich , Stefano Stabellini , Julien Grall , =?iso-8859-1?Q?Roger_Pau_Monn=E9?= , Wei Liu , Volodymyr Babchuk , Xen-devel Subject: Re: [PATCH v2] xen: Fix incorrect taint constant Thread-Topic: [PATCH v2] xen: Fix incorrect taint constant Thread-Index: AQHZl6An0ZVCR8BjEkS3vk0sA5g2C69+/+QAgAAEh4CAAApegA== Date: Wed, 7 Jun 2023 09:04:19 +0000 Message-ID: <297AC2D4-B9AA-493E-AA67-850F749A8D31@arm.com> References: <20230605112303.1764183-1-andrew.cooper3@citrix.com> <1f356d3b-7068-088a-a59b-eadbfb3f59cd@suse.com> In-Reply-To: Accept-Language: en-GB, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-mailer: Apple Mail (2.3731.600.7) Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-traffictypediagnostic: AM6PR08MB3784:EE_|DB9PR08MB6458:EE_|AM7EUR03FT045:EE_|DB9PR08MB6729:EE_ X-MS-Office365-Filtering-Correlation-Id: 670493f4-3522-44d7-b875-08db673634a6 x-checkrecipientrouted: true nodisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: SBeq2Hqy7Pkk9QYqSx5ajpOm/do7t8xzP+pP/UhWMZrT1A4utl09Io3CPQpJ3J2gVQ/TVZGCaMYfGtJsQDGwrHaNVOpH95N+BtHfvZMFbZAnyUsWwqWBH6MFihSCQ2+XewgPLzrVt7TSB/YdKyIVtALeXQAeb0if4ejgH+Lqaa0LZ9SJb+FOhjSd3ECWGCtykJ2pQQMqPacyDwACX9XPiWP6us5o6zH/u0yBCq0tHYnvcIPlGlpkVYZdTYnoA03Ulv9Hgimo/CY2uTdVzQVw1Oa3SeFlT5kpM4iEnJiNgdn2724wsy1EV25FrugAO16vlmUQtavbjR7rMIIPP5fcrxfFgRmbrBnpqs621EikTZthoJWiEm3Mih+v6d9SpGM3NzXMuhW0Uze1MzohPgVj5lUKOBoAyqS41zPlTYeaC/d5yXCbqKFn8lNGiHo38aDPQVVx4QQHOE6I9sVq8SO1zQ6fUo7uCYkx85DnAX5xhz2YvJ+KypQAuSPvqyzpMVtCGrjcRUIUR4LaR/hWL/MkxIDhtiDzrujyZOcMRLFOPFzm5QPGaApw2SSOcCuJS5V1WPoNDYVYpZ2y4z+E4n9N13XJfjrtJconLJjj/Th0sEayGEf/oH4jnwDfPB6NBBxLR2oM1QKVOQEiWt2PAmT8Rg== X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM6PR08MB3784.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(136003)(39860400002)(396003)(376002)(366004)(346002)(451199021)(4326008)(66946007)(8676002)(6916009)(8936002)(91956017)(66556008)(66476007)(76116006)(36756003)(6486002)(478600001)(6666004)(86362001)(66446008)(64756008)(316002)(41300700001)(5660300002)(54906003)(2906002)(4744005)(33656002)(71200400001)(186003)(38070700005)(38100700002)(122000001)(53546011)(2616005)(83380400001)(6512007)(6506007)(45980500001);DIR:OUT;SFP:1101; Content-Type: text/plain; charset="iso-8859-1" Content-ID: <0D535A1A683DEF49AAFDE7BA74C8FE82@eurprd08.prod.outlook.com> Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR08MB6458 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: AM7EUR03FT045.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: 4bd80aee-86da-48c3-bb31-08db67362def X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: G5mmXVULnrnTQNoqKQl+WhgsTlEvZpKZhhA9feYNHh+yQ0DLmWg67uCMJ44XpNDCJ+8Szx40GZj6vW+eSO+7lZJ3x1ZWhYlS0dkq+XThIwTPkD5xOjD3d7TU/7WcDFoV+7SdwzdLor50fy3801tIiNQzxwmG4Goxqrs9/bZdqaghJzp/xQ/sf0txZX06sZu3+7SFGhp7mxnWSGqQQnlYLYwsmDF678s3EvYXqEeOelph9ENsus3xOZBHff9beVwbnTkYdX7GKJtRU887B+17Yl+Y41Hq7mHLnDIgZQqMm0dBewAdgV4ggdaaYXx2uqjKD0Iix6EWsZBFt/XkIMsyLubdU9BBCg54AaREkuh2KwZDqPIYgV1FRbez5ofRGXdLrMldcwlkcswitY1pDGhIQEPVUef+uQYPqOlKVv4yfzcEmVMl99YbEAk25I4wzX64Crh3EoyLVL3WKSqoLZAlGewBR9Ks1e7YQVR/NQ86aMbRSJtW1YuMjNO9cCz5dgUlFJUMHRU86OFF4l6az8beT1xTI6GFCn5k5/D+KTWmdKS3xEYiEZhJuU3XKRpRGf99XdS843wUnV8l+XIvxm5+HPhIvMFNc7GwSpZTgICiE/Yv6AqQsKW9VjmUWLC0kNwbFasTSjzn3oaQeiFP0ApbpyH9YjN47FAcf1haVTHpCsyUO5oLRWaUQ40ABLhS2j3nHAbGdQQUV1sPH7USQM2BCxUWU+bF/PwhvsvspUf7gQW+udyAykmvlK1gahHZ/TYZ X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(136003)(346002)(376002)(396003)(451199021)(46966006)(40470700004)(36840700001)(47076005)(53546011)(2616005)(26005)(6512007)(6506007)(83380400001)(41300700001)(36860700001)(6486002)(6666004)(186003)(336012)(40460700003)(478600001)(54906003)(81166007)(70586007)(70206006)(82310400005)(82740400003)(356005)(4326008)(40480700001)(316002)(5660300002)(8936002)(6862004)(2906002)(4744005)(86362001)(8676002)(33656002)(36756003);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Jun 2023 09:04:31.1824 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 670493f4-3522-44d7-b875-08db673634a6 X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: AM7EUR03FT045.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR08MB6729 Hi Andrew, > On 7 Jun 2023, at 10:27, Andrew Cooper wrote: >=20 > On 07/06/2023 9:10 am, Jan Beulich wrote: >> On 05.06.2023 13:23, Andrew Cooper wrote: >>> v2: >>> * Fix commmit message >>> * Update comment ahead of print_tainted() >>> * Change the emitted char from 'U' to 'I' >> Just to mention it: With this additional change I'm no longer >> considering this applicable to stable trees. I realize that one could >> argue that by taking it we could accelerate learning that we broke >> someone (if anyone), but I'm not inclined to follow this line of >> thinking. If Arm maintainers (seeing that only Arm uses this right >> now) think they want the change nevertheless, I'd include it, >> though. >=20 > I'm not overly fussed. It's not hard to rebase around. I agree with Jan here and I do not think we should backport. This is not fixing a bug and could induce some misunderstanding if we backport this change on a stable version. Cheers Bertrand >=20 > ~Andrew From xen-devel-bounces@lists.xenproject.org Wed Jun 07 09:06:01 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 09:06:01 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544554.850420 (Exim 4.92) (envelope-from ) id 1q6p71-0003XO-Ha; Wed, 07 Jun 2023 09:05:51 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544554.850420; Wed, 07 Jun 2023 09:05:51 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6p71-0003XH-Em; Wed, 07 Jun 2023 09:05:51 +0000 Received: by outflank-mailman (input) for mailman id 544554; Wed, 07 Jun 2023 09:05:50 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6p70-0003X7-6A for xen-devel@lists.xenproject.org; Wed, 07 Jun 2023 09:05:50 +0000 Received: from EUR04-HE1-obe.outbound.protection.outlook.com (mail-he1eur04on2085.outbound.protection.outlook.com [40.107.7.85]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 7dbdc605-0512-11ee-8611-37d641c3527e; Wed, 07 Jun 2023 11:05:47 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by AM8PR04MB7842.eurprd04.prod.outlook.com (2603:10a6:20b:245::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Wed, 7 Jun 2023 09:05:17 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.030; Wed, 7 Jun 2023 09:05:17 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 7dbdc605-0512-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=j61z2be28LWX0FYoqOTdoh++6WvL3zZvqtDJplHtvmtkpFuhPmUNkg9F1JZRS42+DuTOjM63hIYkfx/Nv8LDuWtG9zDL58MwvimT4tOOwhIDqJTsbv/8RPryQQiolwkqX77O8+eCrh/0TWofNBz/0VUFcVFFlR8FzpeJjIjryT7se1cVxwFVHlIZON37ZsG/Ckm2Mv8h43xH1pRTY7gLbtNeqAvvl6EcIdRJpmPiPkKjJD/1KlAINKum34zd4KlC8wUh7hiOmiPMFqyf+9MMNx3hHnWgSdsqabXSt+i9cW3iA78YgE7s2pvogj0NVPdCwYxf6BdTeCsF9BI7lt9kRA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=E+3oVSBcD7IM0Z3l0dlg0CNigJthDWljpZG+kthmr/0=; b=ko6dmPojmlqKgpXYlVPhidTi6wKeYSCI1AXPmJ59uEkVU92WxorRfp46J+nW+//CU57MyPgWvY3MppJf3ohQW2FAcHHsochcGBrBHr5Gb6UcMNdQDGJKmYvoWehOi4QECEpzybanNpLP2du7dMkL+kFIJsEQ9cnu1PSl1hYfBmhN8FU0qiwLK5h5xPf9MYqdh9bope2ox0nzOPZu4rZSMdGHUVq4voAQv40HvCSwMJ5ekmk4ngbDMEa9Q/0QvZgQxWKx3aCyIw2zk5b4dKtWaCGrzsWz1G05jFGCNWhOHKyT8v+VeguMqnQ3ftjez9gwJlSndVYlbrmqmFJ6nCOYwA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=E+3oVSBcD7IM0Z3l0dlg0CNigJthDWljpZG+kthmr/0=; b=JXjxvt3NgIuJvN361j7n/ZTnFvEChj+YCScDUWiMsgr9PGxSZ2aZrvhaKxK9jFQvNX/1fr+++PwuUcwNPGp0ppno9vofw3dmaDJMYuJy2VY0sM5OTQFwSK+KzdWK62/XXRICHWcrN3QAu6uGMzy1ByLSS9lSABBf3OHy4dTC2M100D5C34Au2a/RWuht5GliB735BVBz6kQn9BXLAK6H+dIwng1IIm5RoYqdWQpfoljsG/lNHlxJTv6e5iouGughWCLVYgp2m9MDGITrK6WJaDVY3kLyMwDm5mM1jQ0/EO/2NZgaqZSS0BIlenC/KEXY1etsiPUbOuKnoxS94VaGMQ== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <680b23b6-5f2d-b513-92fe-6f91c4793915@suse.com> Date: Wed, 7 Jun 2023 11:05:17 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.11.2 Subject: Re: [PATCH] libs/light: use the cpuid feature names from cpufeatureset.h Content-Language: en-US To: Roger Pau Monne Cc: andrew.cooper3@citrix.com, Wei Liu , Anthony PERARD , Juergen Gross , xen-devel@lists.xenproject.org References: <20230605103657.14191-1-roger.pau@citrix.com> From: Jan Beulich In-Reply-To: <20230605103657.14191-1-roger.pau@citrix.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR3P281CA0051.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:4a::9) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|AM8PR04MB7842:EE_ X-MS-Office365-Filtering-Correlation-Id: 8209983b-93f2-41cd-35e1-08db67364ff3 X-LD-Processed: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: OoFcNi26nHvOArxIZXlxv+a5VWVzeXPRzYJzhA8Ih1f9aY/Rs/tyA+vIVciydn89FYAEzOqNFXznUM1oer+9EH5YhlfmIRIQvZnSKP0vAw+IdM1hArFEfqSgvZybcX76hBsduWt9xGVWf+JA8DlDQogqDSAnn8nkGq3KWwQs+Avzcza5dy5DODtyp70BV9f9q5WhuFEMplap2lBu41/Fby1nmn/fmNVO1lH0g4z527zq2F4fzE8GJIW2SlzBgogl1nbvQYniM9F9Jj1eiH1alB7DsjTZab2vnD5iI6JZ3B7W/NE76LUyBH8mjctm0tADo26o6r9ER8YSt9x/wcFbKVlZecWLAIsS6k0CVAXb8h1VV5vKftRTDfNBMDrIXzV6gI0Ra86DMomon/chtVoGxYIkDepctNXK8dQrw6cC1g+K+3QJnkytp/e6iJZnfoSPKJn8R8G+XgSTo8lgddsZfgFaZfSK9H7MXkWFx40hzcYgjnCV2aLeXI2VTFTK6aWf1ZHoehQSFCWo60l1d2dhezH6ghoSQaNYYrgxVm+mGZdMg4SpAJGcDHFgAuUNnUtaWBw/fUEkW7ic5evfOmflZrPTPPlgofqBGZ0K7dBKOO9oDHUd3WvWxttbCZ1B/Jz02rLexFvLI604Mf52pnHhWw== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(366004)(346002)(376002)(396003)(39860400002)(136003)(451199021)(5660300002)(38100700002)(53546011)(186003)(6512007)(26005)(6506007)(2616005)(54906003)(2906002)(478600001)(86362001)(31696002)(6486002)(36756003)(66556008)(66476007)(66946007)(4326008)(8676002)(6916009)(8936002)(31686004)(41300700001)(316002)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?azlPcnVWellkb3RCSHB2MHZaQnFIYnBEdmtOQkpReFdnU3RjeGpLcXdIODQr?= =?utf-8?B?aWVoNC9RNDhubFF5bmg0NEtRME5aM0liNFVYRTRFbXRZNGNoNlpwK0ZLVzFp?= =?utf-8?B?c0dRUFU2K1lUR0xHMytUai9Cd1dibk9tRGxMOFZFUlB2aXZ1T2lpTzBSc25L?= =?utf-8?B?cnFSb1dkYXh1eVArUWlxZTRzWS9rZUFqeEpIOS9xN1ZFTHFxaEI2Z2grZ3My?= =?utf-8?B?VU1udWRMb0hOYmxKL3BLdGJxcVhnQzZQRVhNUjBMQm5FQm5NcnROR0lNdlBW?= =?utf-8?B?OEVjKzZ4N25RU2k4cGgxeWZoK0F0b1poVml3Ykp5LzZETTRDQUtRVDc3Nktk?= =?utf-8?B?T1ozRzRJUFQ2Vkd3VHg3MktPQ0lKZ05MdjN2MHZjMzFvT0gvMy9QTmlkOXly?= =?utf-8?B?VU9OZnNpdmZoMDF4NHNjeGEwS2VXYTVlV3JuQ2IrekwvUFdGWm1nQlRBK3Ex?= =?utf-8?B?aXk4ZnFuTkJlc1dldFdNY1RZS2FCTHIrZ1kveVFXTWdRczVzY0VIZ3JxL0dU?= =?utf-8?B?YlJNZ2daWDl6RDM0ZlB3TzBaNEF1OUdYdEtXWEkxNVJkQndBbUd4Z3RRMGNC?= =?utf-8?B?ZmZOb203V0hNNWJWVkN3bURUTFNvWnRCS0RSU3Z4MkFHQnB3OXU1eUdoYkNp?= =?utf-8?B?S01Ld1BKSGpVWjk1bEUyYUpndUFGMTJLNmNVN0taajBwZmhJNjV2cmU3dDRB?= =?utf-8?B?Q3NoeGdXRGZIdW1PQ0VWWHRCR3NqRjNGWU5qTW1CRkxXUGhCYS9wWjB3dVAy?= =?utf-8?B?UHJrS2UvTWpiMVp2aW1PS3hIZWNyenVIQmZjbGY2MWczdUNHbjUwZU5yakEr?= =?utf-8?B?N3dlOUh5a0tJdWhnNGFOZG51M1YxWXN4V1p5a0VNemVYL0dnQ1QwNkFIWTIw?= =?utf-8?B?RzNZeHRsWENLMzA0cTRJbW12di9ON2M1VW1VMkJwYXk1Q3creWtrbmRWM2k2?= =?utf-8?B?YlJrRmM3d0NValhGZFA4bGtON29IMC9FOGdmWVlXdVI2OHBudkIxTm1RZzR5?= =?utf-8?B?Tkx4Tm1MeE5OSFpjQkdBakQvajMrcEoxSUdOMWw4TzBiOWs2M2VabTRXTEwz?= =?utf-8?B?K0M1aHoySDBBTWhWNHN0LytRN1ZreGZaM0IrMnl0VjZZaDVxZEhFUENiYkh3?= =?utf-8?B?eXUwMVgxVEZzbWZMYUF5RmM1QjlUK0dxOHlSWnFBUHBHcFRjOVZ2ZDFaeW1L?= =?utf-8?B?OGg2ZVdUcTdqWW8wTmJJeXNDemxSQW1SM0ZSVVozQW44dUdkYnRBMktMTlVC?= =?utf-8?B?Rm5pWWNObDZ4bzQ2ZTVhQlNCVkVvYnlLZXJ5OXBDQWVrK0NUUFBSc3JMTWpj?= =?utf-8?B?U0dwSlZQOTRueUxJYWE0VDE3ZnNSbExzWE5Wb2ZpYlhZdHhGcWR6bHNGQWxj?= =?utf-8?B?SWRiMWRUdnRaSXphZWxFbDdxQnBkUXJBaHpHekVQU2pBMTM3VjZ3UHZQd0tN?= =?utf-8?B?R1VaenNFWTl0RFBvTDFmN0N5dmhvU1hIdmhZMkJQdU1jcGVrL0M0RmdMWklR?= =?utf-8?B?RWo4ZjFmbCsvaXRJSkk2a3VUOTNaZG9xY3hrMlRjeXZzRWVad0VrdTBRcmlQ?= =?utf-8?B?eVN0engvQi9mU1lSUGd2bGh5R0s2azhjbEVFcm80M3pNTytaMGo4TTVidWZP?= =?utf-8?B?di9TVlFnazQwVXE5SWFHNW5GNTNhOU0waWpUMWVKWSsvQTlGQmhVTTRmN3Jq?= =?utf-8?B?aHAzOFNTdC9SNnM3N2p2MFBzajlHTGx1YjlLTmZtU2gxRGhMU256VUkzMjhB?= =?utf-8?B?MlRnbmRVNHhVNmhJRlI1d1ZMZGFBMUx0VlRCTE1FaUhEc2V3VlNLNy9YSkJN?= =?utf-8?B?M1NrSGJYbjJURUpGYkJXaVZaM0RhcU8veklpQldWcHZ0MWFPZ1lWNjJEWllN?= =?utf-8?B?Q2RqQTEyekVyZGtPNno2L2JQMHZPOW9xQ2U5QUdPTld1YXZxOTFUR0d0bzdT?= =?utf-8?B?T3RsNWFXV0Ryd2YzZjRuejNjQ0hVeHpnYmRnQmZMVlU3cm1sZkpWWlU3d0Jq?= =?utf-8?B?T0xtejJhb2x0R0tLZUlROVJkRUdxRXZUWTYva3dDOEVDQnFicnZLdmtUR2dF?= =?utf-8?B?cE1oaGJ0U0U1eTlhUXhaRTVOSzNZSzJYclVVeHhKdTIzbEk4VGdHYnp1emhN?= =?utf-8?Q?/8mCOnBZpSh4jjpLOBObs2q0a?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 8209983b-93f2-41cd-35e1-08db67364ff3 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Jun 2023 09:05:17.2008 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: Kzs+KEU63detT1yXcIL1ycKZDWVozX1zndq/Hg/HwLC/WSMkYvlMdlgGAVqxF6N2zVKf00nXuE2XMUIubXIFEQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM8PR04MB7842 On 05.06.2023 12:36, Roger Pau Monne wrote: > @@ -51,7 +53,7 @@ void libxl_cpuid_dispose(libxl_cpuid_policy_list *p_cpuid_list) > * Used for the static structure describing all features. > */ > struct cpuid_flags { > - char* name; > + const char* name; Nit: Would you mind also moving * to its designated position at this occasion? > @@ -81,6 +83,14 @@ static libxl_cpuid_policy_list cpuid_find_match(libxl_cpuid_policy_list *list, > return *list + i; > } > > +static int search_feature(const void *a, const void *b) > +{ > + const char *key = a; > + const char *feat = ((struct { const char *n; } *)b)->n; Urgh - what a cast. There's no connection at all between this and struct feature_name in libxl_cpuid_parse_config(). I think you want to move that type declaration out of the function, to also use it here. But if not, comments on both sides are going to be necessary imo. > + return strncmp(key, feat, strlen(key)) ?: strlen(key) - strlen(feat); Why not simply return strcmp(key, feat); ? Both names are nul-terminated, first and foremost because otherwise using strlen() wouldn't be appropriate either. > @@ -342,6 +214,28 @@ int libxl_cpuid_parse_config(libxl_cpuid_policy_list *cpuid, const char* str) > if(!strncmp(str, flag->name, sep - str) && flag->name[sep - str] == 0) > break; > } > + if (flag->name == NULL) { > + const struct feature_name *feat; > + /* Provide a NUL terminated feature name to the search helper. */ > + char *name = strndup(str, sep - str); > + > + if (name == NULL) > + return 4; > + > + feat = bsearch(name, features, ARRAY_SIZE(features), sizeof(features[0]), > + search_feature); > + free(name); > + > + if (feat != NULL) { > + f.name = feat->name; > + f.leaf = feature_to_cpuid[feat->bit / 32].leaf; > + f.subleaf = feature_to_cpuid[feat->bit / 32].subleaf; > + f.reg = feature_to_cpuid[feat->bit / 32].reg; > + f.bit = feat->bit % 32; > + f.length = 1, > + flag = &f; Nit: Too deep indentation throughout here. Jan From xen-devel-bounces@lists.xenproject.org Wed Jun 07 09:10:42 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 09:10:42 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544560.850430 (Exim 4.92) (envelope-from ) id 1q6pBY-000568-7s; Wed, 07 Jun 2023 09:10:32 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544560.850430; Wed, 07 Jun 2023 09:10:32 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6pBY-000561-3D; Wed, 07 Jun 2023 09:10:32 +0000 Received: by outflank-mailman (input) for mailman id 544560; Wed, 07 Jun 2023 09:10:31 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6pBX-00055v-48 for xen-devel@lists.xenproject.org; Wed, 07 Jun 2023 09:10:31 +0000 Received: from EUR04-VI1-obe.outbound.protection.outlook.com (mail-vi1eur04on0608.outbound.protection.outlook.com [2a01:111:f400:fe0e::608]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 2626d282-0513-11ee-b232-6b7b168915f2; Wed, 07 Jun 2023 11:10:30 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by PAWPR04MB9838.eurprd04.prod.outlook.com (2603:10a6:102:380::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.32; Wed, 7 Jun 2023 09:10:27 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.030; Wed, 7 Jun 2023 09:10:27 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 2626d282-0513-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=RmDpn4wEaOcfKSvXzBUlkNubvFLF/gEKfNTYs2GA/fY+qS79neGs1BZj3Zelz7E3AXGT+krGmRoT6qnQ0iLDmHsBGBa/KTdZ0ATK8P54qaKq7R/veG3CrqSU42SOeo/01OyHxUbxub/zzZ7QusEactjHTJp1uKAZYUeDZJmSYevMtXL088CyH+t6q+T6RWMA0wHTtZJbnDQdSbMMHDiaQqwm0EQTA+BRA9KaQHyWHB4ZDS7HwdWfvHToyPYzuh9JhYMTzm43LT9MUc2ab8tD0269/p7Hkn1gpvsfR1Z7phnzGuLT5L+IllL+N3u4m5bNLRLx0B+z1BaoIVkdmaQyDw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=YP+IbsYJMlYC25NkZV8IWkUlH8FiUEwuE1hTTg7c8KA=; b=n6GniQL+WH5qyhzRRz414rk9zbBbfpwu1fq+0axos5WmOZJvBDkkTQYX4p8fzP+rkE4QK3TeSeZyTkmoeeKfIu2C1F54ygzFcwVFQkRzjoW1Yim5ncX/jpSaNIxXpEyQJlKlgdFyrSV+0CoZJ4Nfkprm9WkULWT96PCkPC26Rdes5qfulnYAQ/ySTZOHgm9jCFVVD+DixHB1+XvaHr2de9Cj3Slex2FZ2WFp+WLcTFJ/vdZU7vYexQZSjR7IZybgtSUL9uv8FIoen9w82wK9PKKJefXoK3/1bSUytg1D+AX1axk1+WFIzFvzl1KZgY1199+J4ds51ToCbwwxOyXlOQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=YP+IbsYJMlYC25NkZV8IWkUlH8FiUEwuE1hTTg7c8KA=; b=E4HWk0oTrjMwImzoeZt8cYpRErQJ3tLsl+Fgtieaatifgo39vcM5fi+i+F3N+hOSxfvQJhXJYbvICm9qjuL61A055TXPOcdNmdcHmYQrpQAMJuxhBAwFXWmcNgAhwWwEpqInP28crOMfAk29IMirLB5c1sj00H75FM/eny6PSXhV+hISIuumbcPVH8Z2+NJ+fCz6Uf3CFD40iuDKvp32WJIhl21I6hL1ggoWzOIoIArw03HxMADPaQE206TgmLlE5XPDG4i7BOEIninVPKDWMQ+XtBPKO8k5UxVuwV8vcZPYbVCsoVe16rv7OJolyTB/ltBSb96UV8etdOVhcZRMiQ== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: Date: Wed, 7 Jun 2023 11:10:27 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.11.2 Subject: Re: [PATCH v2] livepatch: apply_alternatives() is only used for livepatch Content-Language: en-US To: Roger Pau Monne Cc: Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk , Andrew Cooper , Wei Liu , Julien Grall , xen-devel@lists.xenproject.org References: <20230607090120.49597-1-roger.pau@citrix.com> From: Jan Beulich In-Reply-To: <20230607090120.49597-1-roger.pau@citrix.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: FR0P281CA0164.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:b3::6) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|PAWPR04MB9838:EE_ X-MS-Office365-Filtering-Correlation-Id: d3b61285-2ede-4a17-f009-08db673708ac X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 6kxor8AavIRX2pRajKKjyh9qKVTmuNQa/OxdyHVcuTiHwfhws2RgBUhhLkRqZ2a8eAnppHur5xsHDey3ID5FwpZCXenkpaDktwDex67Cm1hHsxzrVtb+kWIn+k0VgPoatZIn3uZ7k7RowtgVhuL9poJu54pcwEFp5WqD0pwUUcFUnQyqVnqNJLMm4z28Lmj783/JTpsCEFZol69fMPLthH5cfMYCxHDBJTu+iS1smko3fN9zNwbgk3GLdtsxGi1GzeTFVDEs7iYySn7DHNjYPi9bb1JIlAyfvUdOJH8D9y0PZ72zLle/vz5/kFc6WTHSyoLENec2Bz4rvSKnsiAeUq258M/OUNBKo5y2gIVOCLiY47YZSQJv1ohb2qKfmVRm9xPO+7V2a4ZIG5YVJawWiwnasofttbAAM8KKFckK/lnkkbINE7U62JWkZVI6iAXDk4J/Udr3fK2xZyssgeuHIhUrQ7+JYTKgVI7L6w/yE47CpKCfDdyFp7HJ/EAVmwrKszshpkBG0Zqr5bBsMrtQ9ka4UEKTl8kZrHBxyC3e8moTT46E8whEfQ2Zd1U3yPMCusQoTNxuNSSBn0X2M+mx7747KC5CB1NUbMPkDrpoOkekxL1Zl1wgw4Xwrv3WaQ3kMKQrULb6TxJG19hhAM4t5w== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(136003)(346002)(366004)(376002)(39860400002)(396003)(451199021)(26005)(2616005)(6506007)(6512007)(53546011)(66946007)(6916009)(316002)(31686004)(66556008)(4326008)(66476007)(6486002)(186003)(2906002)(478600001)(31696002)(54906003)(36756003)(4744005)(5660300002)(8936002)(8676002)(86362001)(41300700001)(38100700002)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?SmovVGcrN0czcXltekZ0aFk5RkpPcE02RjR0bitIUzdDKzYrQ1NrbnphTHpV?= =?utf-8?B?blh1eGpGWThacW5WMG1LOW03alRueUNtdnRheXdKL2MvZVoyak96ZnYwNDBw?= =?utf-8?B?TnozS2MySGVzVGlpd3dvcm9jWWl1WlI5eWZkWWpvZTBIcnhtMXNwMXpIUnpm?= =?utf-8?B?QUU5ZE9xSmwvanhEbElTTU84NzBFWFFWU0J1QVpyWW5vR2xCZ2Z1Yk1hLzd2?= =?utf-8?B?VTg2U1V2TVFzVHNyaFVpaVFuYXBPWjdaeDI2RUxNSHN6OVBVSTZZZkRMNnZn?= =?utf-8?B?RzVuRVBjQytvbUtId0M3dWZ2VVpBV2szanBnaE51MnBGeS94ODZvNnNQQ0Fz?= =?utf-8?B?ZGpzYkd0STFOeExvZ2p1T0loQUlYbTQzYW9VeGZOOXpyY3J0YnQrZTEyMFZy?= =?utf-8?B?YmVtV2lYZkJzaTRUaXI3YkxXL2QzWlZ6UkExSC9Bcnhkbjloelc1bE9pRmU2?= =?utf-8?B?UTBNMTlBOHhHWlVSeDRqdmRRTTZRZmpYOVlCaUZSMGVqOU1qdGViKzBWTU5s?= =?utf-8?B?U3BZbUxLelNBVU9jak9NQ01Sck9COEZlOG1kUlF4UE1ianlIbXpQSnVBY0pM?= =?utf-8?B?YVBURlY0NG9RdFByMTFBTW55blhsQTU5SjJJYXFEYlJkTlM3U1BwY3F6SnNN?= =?utf-8?B?OGtxWXd6b0VhVk4zUGlMYWxlY3N5U3lsc3RqTS9reHlLY3NlRXM1L0Q4Vk9q?= =?utf-8?B?alp0ODZOV3loZ3E2L3NYd2ZVek1McCthNkxKcDNXblczTjNyMXpzM1FKTi9S?= =?utf-8?B?RFF3N2YrRG1HUnpoVktqWVRIeDhqUUhxVWF0S2Q4cll1N0dQKzZRUFVNTXlX?= =?utf-8?B?bjI2cjR4cTd5VWxOZ2ZqNkZieDB2V2pBejEwL3dtandtOEg3VjVCeGljS1M5?= =?utf-8?B?d3dFd3c5dldvNDRuYlZKRlhCOVlocGFhdEpkWUo2ekhuR0dwWUplVlhtVnZT?= =?utf-8?B?bEZYS00xdmZEMlJHRGg5by9pUTBPaWkwUDU4MWlhSy93WFJzekpLQWNNcjgw?= =?utf-8?B?a0pmVjdSQUplaHVFRVZwQldWTzFBZGdtUlRva3N1WXZ0bDM1ZnhNM0xVNlRt?= =?utf-8?B?ZUFHbGlNbTlYdWJ2NVBlbWhIdzhqc3JGMEZ5aERlaW90K0tGZlRnSjFORU9L?= =?utf-8?B?UEo5MVE0OWp1L2FhOXZ5K3ZaZlYwbmlGMEs1eU5SbFdtVktsbGRuTXlRSnFE?= =?utf-8?B?aDlCOVBWaWtvRzU2NVoweWVsd29hZjd2SXgrTmZxL2s3YllsQWY3bTVCdkZo?= =?utf-8?B?Q3RUMWV6R3p3QWhSeE85VDlBYW93OS9PelJzQXlrdHh4T2hJUHNlalNGeHl0?= =?utf-8?B?OG1PUnU5MkMxSldoalJJTmd6cVdmWVdQbkZyL3o5WUJ4L1huV3I3Rk5iUzNw?= =?utf-8?B?T3NWcTlmZGUya2JnWFhtOHNHMjcyUmhqYjlaZzF5bHhsQU9Fb2ZPRC94TlBQ?= =?utf-8?B?dExHR3EvOHBqdlVsWmpvUTN1TWp3U29BS01JZndSSmE1UDJRL214UzA1WDJh?= =?utf-8?B?YmFCbDlyR2JXWFREcmVIbmhxOW95UWN5WHdyOTF5bW5Md3BPeWEwd3hrKzAr?= =?utf-8?B?S3N6QWNLb01Xd3ZPcUc4TEJCRnRBd0dpb0N4Tk8xaDBacDNHdEg4cm91WUk2?= =?utf-8?B?YjZxV3RDVVBacmRveUxrUXZjNUhwN2svemxOVmNjcmVzemFBN0lqWXVEY1lH?= =?utf-8?B?Q3hoemZWblBESFhOclFMOTMydms3a1FXaWU5dXY3SHA5MXBKVjBpSXBGRDZQ?= =?utf-8?B?dkNib3FBZEQxNTZOcjgxbE40bEhLL1VuY0lwa3NPK0IvdjRmRTcwWDZkeHBr?= =?utf-8?B?eEVRNU5JeEdaaHVQVDEwaVd2NU11Ny8wV21uZzYrZEQ3cHpXUGh4L0NMMlUw?= =?utf-8?B?cjFib0V3SDlKajFSOGM4RkpGcitvVXRTbzEveHBwZlE5T0VPRjFHMXg5WVBV?= =?utf-8?B?NzRwQnlFQnFuTjNnSGdHdU1NSVRaQVAwSTRwa1puNjRyN24wRE5kZFAzL2sr?= =?utf-8?B?S1lIUkVqS1V0VWlvUU94a05QeW9PNUVVWGpwcUdjWEdxcTA4TTh4RFh1TzFI?= =?utf-8?B?UWlsalRkVy9zNUNvT25FR3Jub29yT09JL1FRRXJXdWFMNXQ3OFFhRHpzYjV2?= =?utf-8?Q?wU4FS3aQlkmr9VUPU2mFImtno?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: d3b61285-2ede-4a17-f009-08db673708ac X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Jun 2023 09:10:27.0672 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: DB3QT/w+bxgFgIBTO9zwapQioApqoiUFbR8CxUS5B1xCEI2Ymu3Biu8cwsZxm8j3uAE4wooYyM51Caop5unh6w== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAWPR04MB9838 On 07.06.2023 11:01, Roger Pau Monne wrote: > Guard it with CONFIG_LIVEPATCH. Note alternatives are applied at boot > using _apply_alternatives(). > > Signed-off-by: Roger Pau Monné > Reviewed-by: Julien Grall Reviewed-by: Jan Beulich albeit the implicit ack therein is only on the assumption that (apart from me) it is generally deemed better ... > --- a/xen/arch/x86/alternative.c > +++ b/xen/arch/x86/alternative.c > @@ -358,11 +358,12 @@ static void init_or_livepatch _apply_alternatives(struct alt_instr *start, > } > } > > -void init_or_livepatch apply_alternatives(struct alt_instr *start, > - struct alt_instr *end) > +#ifdef CONFIG_LIVEPATCH ... to have the #ifdef than the init_or_livepatch attribute. Jan > +void apply_alternatives(struct alt_instr *start, struct alt_instr *end) > { > _apply_alternatives(start, end, true); > } > +#endif > > static unsigned int __initdata alt_todo; > static unsigned int __initdata alt_done; From xen-devel-bounces@lists.xenproject.org Wed Jun 07 09:18:09 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 09:18:09 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544565.850439 (Exim 4.92) (envelope-from ) id 1q6pIp-0005jz-TP; Wed, 07 Jun 2023 09:18:03 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544565.850439; Wed, 07 Jun 2023 09:18:03 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6pIp-0005js-Qe; Wed, 07 Jun 2023 09:18:03 +0000 Received: by outflank-mailman (input) for mailman id 544565; Wed, 07 Jun 2023 09:18:02 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6pIo-0005jm-Oi for xen-devel@lists.xenproject.org; Wed, 07 Jun 2023 09:18:02 +0000 Received: from esa1.hc3370-68.iphmx.com (esa1.hc3370-68.iphmx.com [216.71.145.142]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 3257cfb7-0514-11ee-b232-6b7b168915f2; Wed, 07 Jun 2023 11:18:01 +0200 (CEST) Received: from mail-bn1nam02lp2046.outbound.protection.outlook.com (HELO NAM02-BN1-obe.outbound.protection.outlook.com) ([104.47.51.46]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 07 Jun 2023 05:17:57 -0400 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) by BY5PR03MB5048.namprd03.prod.outlook.com (2603:10b6:a03:1e8::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Wed, 7 Jun 2023 09:17:52 +0000 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::192:6bdf:b105:64dd]) by SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::192:6bdf:b105:64dd%3]) with mapi id 15.20.6455.028; Wed, 7 Jun 2023 09:17:52 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 3257cfb7-0514-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686129481; h=date:from:to:cc:subject:message-id:references: content-transfer-encoding:in-reply-to:mime-version; bh=XT5MIM0WjhTNdhd0vMd9vu1XL1cgiC9ffzabSjHAx+s=; b=EKXuFaS6L3pqHqxRmq9xWEpmtb2/OfoSEWvyFbetejKzx2XDrWQCZEx2 2dMW4Fy5DfNIrwWXG2Nn9VL0y4Pf3/gudPEObAUH26ftcSamXM8ly6yXr G7YUPQlT9jxG/850KQXmgVcPPDEtf7K+E3wIEPonMjKnjpAAna14RkT6D o=; X-IronPort-RemoteIP: 104.47.51.46 X-IronPort-MID: 112299620 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:ui5Ye6tYye7SNxIc+PnONPInsOfnVMBfMUV32f8akzHdYApBsoF/q tZmKTqHOv7YYjChe9B2atjjo0IG7MfWnNIxTwU/+X0yRX5H+JbJXdiXEBz9bniYRiHhoOCLz O1FM4Wdc5pkJpP4jk3wWlQ0hSAkjclkfpKlVKiffHg3HVQ+IMsYoUoLs/YjhYJ1isSODQqIu Nfjy+XSI1bg0DNvWo4uw/vrRChH4rKq4Fv0gnRkPaoQ5AGGyCFMZH4iDfrZw0XQE9E88tGSH 44v/JnhlkvF8hEkDM+Sk7qTWiXmlZaLYGBiIlIPM0STqkAqSh4ai87XB9JFAatjsB2bnsgZ9 Tl4ncfYpTHFnEH7sL91vxFwS0mSNEDdkVPNCSDXXce7lyUqf5ZwqhnH4Y5f0YAwo45K7W9yG fMwCxEGbReMiPKK6+iHFNVCxeVyFMLNI9ZK0p1g5Wmx4fcOZ7nmG/+Pz/kBmTA6i4ZJAOrUY NcfZXx3dhPcbhZTO1ARTpUjgOOvgXq5eDpdwL6XjfNvvy6Pk0osif6xbrI5efTTLSlRtlyfq W/cuXzwHzkRNcCFyCrD+XWp7gPKtXqiAthDRePirpaGhnW92mgzGgdRX2G6sOK8oVWGBeoYd BMtr39GQa8asRbDosPGdx+yrWOAvxUcc8FNCOB84waIooLP+BqQDGUASj9HafQludUwSDhs0 UWG9/vrGDhuvbu9WX+bsLCOoluaMyUPMXULYyNCSAIf+sTiu6k6lBeJRdFmeIaLidnyFSD10 iq9hiE0jLUOjuYGz6y+u1vAhlqEuZzhXgMzoALNUQqN7AxjbYqhT4Wt4Erc67BLK4PxZkmMu j0IltaT6MgKDIqRj2qdTeMVBrar6v2ZdjrGjjZS84IJ8j2s/zupe9lW6TQmfkNxaJ5YJ3nuf VPZvh5X6NlLJny2YKRrYoW3TcM30aznEtejXffRBjZTXqVMmMa81HkGTSatM6rFySDATYlX1 U+nTPuR IronPort-HdrOrdr: A9a23:Rcs5zqis90IA4g9+3ux2ZwRT0XBQX4113DAbv31ZSRFFG/FwWf re+sjzsiWE9Ar5PUtNpTnuAtj5fZrjz+843WB8B8bHYOEJ0FHYZL2Lw+PZsnfd8gfFh5hgPZ 4JSdk0NDUbZWIKwPoSmTPIWurIo+P3jZxA+92utEuFFjsaHJ2Ihj0RYm3wfywGITWqHaBJa6 Z0yfA36AZIEk5nF/hTaEN1ONQqZrXw5efbiFk9ZyLP7jPg40LKmdzH+mCjr20ju7wm+8ZXzU H11zbh7qGUu/unyhnavlWjnah+qZ/a09NGMseFkaEuW0XRozftXp1oX4uYsCkyu/zH0idYrP D85y04N8BE8XnWZW3dm2qd5yDQlAw243vV01WfmnfUocvlLQhKdfZ8uQ== X-Talos-CUID: =?us-ascii?q?9a23=3A5Eg2G2uzOOO6/zkYwB9he8cC6IsGU3bey3jfM3O?= =?us-ascii?q?TU1o3dJPWaA6o84V7xp8=3D?= X-Talos-MUID: =?us-ascii?q?9a23=3Ab5o8/w32VN0yJcSAGVkaM83ioTUjzbiqKFIX1p8?= =?us-ascii?q?8utifMAdrA2mly2voe9py?= X-IronPort-AV: E=Sophos;i="6.00,223,1681185600"; d="scan'208";a="112299620" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=oYy6lyXuPomyNkpZBT2LVpdICuKlizF/xHkrJFo+GXEbBMeXPKME81P4znNnkmDrSwJ8bITvLaOw2j9gBfJ8LKxh/Y3pXgGsouAT4P4h+6znvW6NaxKGWotpqKAL5AE4sWW0PpTRI8aEj9uibED4WQqFPDUwazpcHyDIbaM2t7mQiMX634kz2rBmB+faMdGk1jSmh3yed6iIWmcv4Iz1vhzP23CCv6XrXVRP1l6ovrHXvCk9eSx6uVDdHLMrjGahiqnm+MEtDnXxfBQKzLuc4rPQKrM4LTMRSjxDNOYUVXgv69iTdp3jqsMMtzhGXapP57wk+reynovmd8oqYOyfqg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=s3bIl+1C7USBtnM/LMd4oorYK5XHyI9s1ohMk+Xd9Kg=; b=fhOlRQX2kfN9sitGmWHcQl4BOhmTHt7B5GwEx75824y3Fas9YU62rV1JVDiMoNYqyOHS4nU3yu20Wtno5FtNBX/iHRCCXaWC4BD46LCXILOoU8jWWzi8Erizpv0f8f/fbKor9XMKAcF6SVu81xpKJj1PNc72lX7m8HgSfHVNJRMJBS/SeEtX1M7545/2AZYu7EWX+GVKBi6hTHSrYREHnAD9oYO0g9EsLGVbYKaaBYHRGWgtf9/pK7+9fVTCJUPrQDZXBh7URSuFLn0pbuFArRcuVpY1D8U/1Mh0CXqLbk+3HWTRhkUW3Ok5460tdbu8VrqIEfMHunUi/r17kOkg7Q== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=s3bIl+1C7USBtnM/LMd4oorYK5XHyI9s1ohMk+Xd9Kg=; b=VejCiOmliKD0aowDKkRkn+kgPrWGXEEMA+oixnDaYMYIPVVNtIUebBgRMJiK6l5W7kYsWqCz3gBWgiFZ0PqZ8gj77yZjZR6GcQcsGwRoj6W372a+ObnU1J5S0S11EWfM5otYmq5QB+ADL3eXMCYc66tRxi3eYL+JT3apWxWVWgQ= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Date: Wed, 7 Jun 2023 11:17:45 +0200 From: Roger Pau =?utf-8?B?TW9ubsOp?= To: Jan Beulich Cc: Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk , Andrew Cooper , Wei Liu , Julien Grall , xen-devel@lists.xenproject.org Subject: Re: [PATCH v2] livepatch: apply_alternatives() is only used for livepatch Message-ID: References: <20230607090120.49597-1-roger.pau@citrix.com> Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: X-ClientProxiedBy: LO4P123CA0021.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:151::8) To SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|BY5PR03MB5048:EE_ X-MS-Office365-Filtering-Correlation-Id: 3f01ca0d-e996-4a12-6483-08db673811be X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: p7nNwMxXPd8bJsknIlEYUhX2ybgjMiRmqKLPGy/E55pcGOP2rL+SR8lZv9VAF+84B1XLffUVsIDDBMGh3fdjaxzKSAfVMkbabZE94JSuo8e731saTlQ4Q3uDDILVXO5bSc19grVQ6I14zKUXxlNOMOcOAHmS2yaJVkO95PbyGXGMFgmc1LhsqjpsWsnV78MfocighX5okDEcRBHAGQwFRxpRt5mpYyMuhr5CSkd40u+DWUf6axqCNpv5eFMHHMzeAvk3PyXTYbSliR6w6Hw20z2621sWBQHcCk8zXQ4ejQcqxFgkIjHu/BE9LyCofGxPD+PaWWFx9EC3G/sHKee2nJfxgO7URiYvKAReaPVRKIXC2Ct5mKO3wQ0AOwYOePTDV5AjoN4Sr5q2eRkgZFrzvLEGHK7yfp+gL7ZMOnA0PNCJTx/xPXqY9Kq7svNkEPOdSEs2KNIgQNnuHxk7SQnXgBAWatr8irREY5Ft9j1MEjQQEi4TOq2pK8XhRmvE4oQpPz6C41UL68BNlujaIjywY6d+Y195jnBMRa4p9hS4jaH+sZVHUIgMmZjgwA7m3cnN X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(7916004)(4636009)(136003)(376002)(39860400002)(346002)(366004)(396003)(451199021)(2906002)(8936002)(5660300002)(8676002)(41300700001)(6916009)(66476007)(4326008)(66556008)(316002)(66946007)(54906003)(6666004)(6486002)(478600001)(6506007)(6512007)(9686003)(53546011)(33716001)(26005)(38100700002)(86362001)(85182001)(186003)(82960400001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?UVFiNldmeWlVeVFBUDBuOEV6N09vTnU3UW5ZVlJxUllRUE1NS1pXOWdZa1RV?= =?utf-8?B?QUFMQ2JkRFdRL2l2a1VXb3kvZ0c0V3ZmYVJ2N0JSWjgvN0hYNW13YmNKZjBI?= =?utf-8?B?bG9pYnQzY1NMK2pVVXZWZHFPMERiR2wwMlhZU1ZHK0R1U1ZUNTZNNzQ5bUZw?= =?utf-8?B?Y254MjhZeGpyTVYvZllLNEo0NS8zVDd4WUk1T09BQW1CRFhzc2dvL2NLTExy?= =?utf-8?B?KzFVdnZnLzRSditTb29UMkRrTzh5clJITlBoYzhURUNIUVJ2M3JFUUdhalRH?= =?utf-8?B?YjNxK2s4ZGF2WU5BT2Z2WjF3Yk11TnVzcHlsRC9mMDdDcFRxYnhWK1NiZjRp?= =?utf-8?B?NkI5ZVdaMHVpRXhyZnFGYkhUSXNnSHdkS0JsRnZrSVZtTUtPb3ZTY3ZJZTRX?= =?utf-8?B?eUhYM2FyWGRjc1k3NDBpa1RUbyt4T0VZbE92LzlXa2kraE1mK2VXei9XQlpv?= =?utf-8?B?RjU3UUlscEpNRXBlanVlVC9OaUxpU2tJTjBnL1kxak1LaU80ZVNycXMrU0Fk?= =?utf-8?B?eUFvQk5qMW5OaFBla0NkYUNlRmxxMW14RnhYejdWWGw1aWtPYjZ5alY3ZVg4?= =?utf-8?B?MzVEYkhxSzVvTnNCelg1TGZTV3dqcmNVaXlNN3VkT1pubytLUjNKSTlhZ3hi?= =?utf-8?B?NFRXYUdGTzNPUzJGVHRzSm56VDdrdFNjUkl0WWtiOU1ERmJzdnNWU2FuZFJs?= =?utf-8?B?VHREL0M1K3V6eHJqaXhjT3pOTW5TZEhWZ3NjS1l1Y0U5d0tWT3NPaHcwSTFD?= =?utf-8?B?Zk16THVnNG52RnRLNTVmUDVIbUkwRlBVVm5DWnZKU0d6MHlBQVAxeExlMWdS?= =?utf-8?B?SElCSHdwMlhPeHdDUElVcUxpczhMcHQ4WXgvUVhlR1lVOVhzaHloU3hzbTlt?= =?utf-8?B?cFlTcmFDRHhXOEpBVWhlVUJjRjA2NDR4SEpYbTZZVWJITTBENFlaNkk2ajVH?= =?utf-8?B?QUpaVUNJdmxnbmVKVm9BYTk1S1J5clc4a0paVU9PZGx6Z3ptbEZZMjc0MDZC?= =?utf-8?B?ZmsvUHpxZDRBRTdWYU5WUHRlcm5veU1JR3grSUFWMUVLYTVLM1VlcGZiRzJC?= =?utf-8?B?MEYrRFdGSkVpdUhsQUFOZkIxQXB6a1p4aDZwTUw0OFVHcjlKcDdhM2lxUlhZ?= =?utf-8?B?U1FIT2V5dDY3THllQXRCWldodFZkN0VyYnhYVzByeHlJNjZzd2RKdDV3eWJq?= =?utf-8?B?SFQvaXV4T0daVzhPMUhDSFNsRjNKeW9pbTFUc0hwT1VScVE4bUNWckY2emlR?= =?utf-8?B?dDRsVUp4RVhpZU1wMnJOWXhBTEYyb3hDSERJeDhza3VaM1VyRTVROHlsKzZI?= =?utf-8?B?OEJWTkRRdFVrb2VaUWNNV3lCU2c0ZW1reVlpRFBTeVd4ZEViVmpmeTcrNXJs?= =?utf-8?B?MmgxMTNIaGtDcGxxMVRnK0d6dnhTU1ZOT2xBYjI3RjdzTHRXemhmaklBMkRH?= =?utf-8?B?alJ1QS9IT0hMa1JYR3FQT3ZQMC9Jd2hkcFpRUEpyVjRPNmQ4UU9rNmRvd2dO?= =?utf-8?B?L3dKYWt1L3dKYllHbFFaQlFxWWxBU1lkek45ODAxbWtEMWQwd2FFK1BuWFpI?= =?utf-8?B?dFV3V2J4dlNpRWRTMGxLSnArcWFSTG11ZlJHZGdCNWZ1YXpoZFRUOXMwRU0v?= =?utf-8?B?bGgxV0ZOSDMxcTdzMXhBTmZZaU9tMVVPYTM1czVJVDRqWFJMWTdmUmZ6SS8x?= =?utf-8?B?OHgyZkpKQ2x0djhOSXZmM2R4UDNjblZBZkpRUDN6dS93MnM2U05wRnFkWFMy?= =?utf-8?B?U0NJak85UCtDZDhPbUxhMUdMZW9GYTJZNTRmUVVFejJTblJ5RGZJV3JpVk5I?= =?utf-8?B?OGZMZ3pkY1ZKcXhXaldjU0RGL0dIYkVzQk5qZXN3THlGNU5VVG5ZdlozTUNY?= =?utf-8?B?SnV3aDJXWlI4VDhNRTFzSWk5dkczYVN5SzFRazhCR0pjNHN1VFBEd2x6TjJ2?= =?utf-8?B?RFRTYTN2T0xPNm1ORFRTdzZUQ2tVeldRajhzY2U2S3JCNWVUdXdHaXZUeVR1?= =?utf-8?B?VVY5a09CZS9qZ2JOanBEQVQvR29EcHpnakkwcW5ta2NzU3pMalQ3UkdFMURw?= =?utf-8?B?UXNaZkdXeUNQdWNXTDBuOURlWDR1QnFud01kUUNYYnZialBvTjlBT0RKb0Iy?= =?utf-8?B?V3FzNHlOb1hpU1dyR2JCVXRZRFJnYjEvS3d0UE9TMFBDdHBMcTBFVVQxOWNp?= =?utf-8?B?MlE9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: BQPSF6ChjRtYd/T0vqJYBENVhf3owORGoUNjFp/EnA6fVJ/yo9Wnsqpn1nZRG4np0KOBuRGlKyJPTE0j6lpgj7RllnL9/B6rxT50yiCS7PQ+oflmUL/k2aSYSzAAQy2hYJ8mozes8x8NG+ux0IkAoXIHx6ppA16HuCat4crXFX0dumCto3H9K1UTQ6hj0SqurE/4t4iNPNVvQsm9DaRC3qgzAKbMqo93TtumfjYgtAUnelUvqlrzbuKJv8METG/OBH177Hp9tfpLuWnPqMzZWgkURuhK7mFl3JhJwgEMmgeVmcHSMO1SzN8QG7xRklJnfsgbXFQCEGpAiT+fFNxZ86u22smoggwdtWcNJqEbcKB4O3PvB5KPyI4CxPSxhgPWf4gj2vr9Ia+JlYSn04nj+8P6mopKN24/egxBT/eN/PJpfohcWvvtzR3YsGCuaMyhqiJ8Ox1v+pTZPXIM0OtazabzYX4UR6cL0Yqew/GVl+CygztPw6A/ULyYEx9IQyqSKawesph8e6RYs3EGzPHnfxAtBFFrVGcqmUMw9kqwJ0aS9Oy23knlKX7MIJrEyzmQ1/mw4fb7unuc6yNrSWpUx1RX6agupnOB/wJSBnVlRtTzSNXmU8KrJDcGG70N3EPhWKW/EKFM3PM7ylqEdO2GnlPsXszewOld6ipCB2NsZ2+aDSCe6MdQI8L8Bi6dAoyFUD1rF+qBIc1+FDIyfHnGgzHh3wwAzP7pc5/QQdLqEwq2RBRBtE7WSGPknhYRdZgWEAFHAQ1x4ZkhVz4vNiHo3LSNhJDwSYzlfzj9zozj1bbKlcvSjwB7D65xz8BdEiBsc5H+u/vXI+pYz+w/K8yS9Kxh16BxAWaaYAIMnVUVg3JsIu8AVYuahABT2IDfi+NW0G5NmFTqNfpkbb7PAS5DxFrY8kgIeYAGrPqYWDtIpp4= X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 3f01ca0d-e996-4a12-6483-08db673811be X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Jun 2023 09:17:52.0038 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: c4rwG5sH9OmDWNOmUuFJXU4WnWaUGc+ocwSlDlcZ78JHRoGhmAmhAotPMDbgIGuJl77w63SGFBjq8e8BK1CV0Q== X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY5PR03MB5048 On Wed, Jun 07, 2023 at 11:10:27AM +0200, Jan Beulich wrote: > On 07.06.2023 11:01, Roger Pau Monne wrote: > > Guard it with CONFIG_LIVEPATCH. Note alternatives are applied at boot > > using _apply_alternatives(). > > > > Signed-off-by: Roger Pau Monné > > Reviewed-by: Julien Grall > > Reviewed-by: Jan Beulich > albeit the implicit ack therein is only on the assumption that (apart > from me) it is generally deemed better ... > > > --- a/xen/arch/x86/alternative.c > > +++ b/xen/arch/x86/alternative.c > > @@ -358,11 +358,12 @@ static void init_or_livepatch _apply_alternatives(struct alt_instr *start, > > } > > } > > > > -void init_or_livepatch apply_alternatives(struct alt_instr *start, > > - struct alt_instr *end) > > +#ifdef CONFIG_LIVEPATCH > > ... to have the #ifdef than the init_or_livepatch attribute. But the init_or_livepatch attribute doesn't remove the function when !CONFIG_LIVEPATCH, so it's not a replacement for the ifdef. IOW: it's my understanding that the purpose of init_or_livepatch is to add the __init attribute if livepatch is not enabled, but apply_alternatives() should never have the __init attribute because it's solely used by livepatch, it's not used at boot. Thanks, Roger. From xen-devel-bounces@lists.xenproject.org Wed Jun 07 09:20:21 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 09:20:21 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544570.850450 (Exim 4.92) (envelope-from ) id 1q6pKs-00077V-9k; Wed, 07 Jun 2023 09:20:10 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544570.850450; Wed, 07 Jun 2023 09:20:10 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6pKs-00077O-5u; Wed, 07 Jun 2023 09:20:10 +0000 Received: by outflank-mailman (input) for mailman id 544570; Wed, 07 Jun 2023 09:20:08 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6pKq-00077I-K0 for xen-devel@lists.xenproject.org; Wed, 07 Jun 2023 09:20:08 +0000 Received: from esa2.hc3370-68.iphmx.com (esa2.hc3370-68.iphmx.com [216.71.145.153]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 7d50a6a9-0514-11ee-b232-6b7b168915f2; Wed, 07 Jun 2023 11:20:06 +0200 (CEST) Received: from mail-bn8nam04lp2049.outbound.protection.outlook.com (HELO NAM04-BN8-obe.outbound.protection.outlook.com) ([104.47.74.49]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 07 Jun 2023 05:19:57 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by CO1PR03MB5764.namprd03.prod.outlook.com (2603:10b6:303:6c::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Wed, 7 Jun 2023 09:19:54 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606%4]) with mapi id 15.20.6455.030; Wed, 7 Jun 2023 09:19:52 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 7d50a6a9-0514-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686129606; h=message-id:date:from:subject:to:cc:references: in-reply-to:content-transfer-encoding:mime-version; bh=lxSehOCXvTuK9a/M3jJsqqYW/nw6ZGiQ5JqxYviLNh0=; b=f8k/8eNcdggHBmI2aGlg36jDLpz/mRE1xBcxgnEOyuWI7zvgLeFDTzP8 W9xBopC1SFGDkInqW5Zl5Qh14Eauq70BQeOMK0xh2yFh+43F0mxizrWkV sNo/Nk8cG3CCGgA6KLkjQTGUHqWbidjyPkiLj6yjrhGwAtkdejj0q135m E=; X-IronPort-RemoteIP: 104.47.74.49 X-IronPort-MID: 111771539 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:vyj0xqDboExQ0xVW/7Xiw5YqxClBgxIJ4kV8jS/XYbTApDkrhDQBm GscWTrVOPeNNmr0f9p3OYq//EICsJeAmtBnQQY4rX1jcSlH+JHPbTi7wuUcHAvJd5GeExg3h yk6QoOdRCzhZiaE/n9BCpC48T8nk/nOHuGmYAL9EngZbRd+Tys8gg5Ulec8g4p56fC0GArIs t7pyyHlEAbNNwVcbCRMs8pvlDs15K6p4G1A4QRnDRx2lAS2e0c9Xcp3yZ6ZdxMUcqEMdsamS uDKyq2O/2+x13/B3fv8z94X2mVTKlLjFVDmZkh+AsBOsTAbzsAG6Y4pNeJ0VKtio27hc+ada jl6ncfYpQ8BZsUgkQmGOvVSO3kW0aZuoNcrLZUj2CA6IoKvn3bEmp1T4E8K0YIw6u0rAWYXz tkicx8CNymuqduq2JW4Rbw57igjBJGD0II3nFhFlW2cJ9B2BJfJTuPN+MNS2yo2ioZWB/HCa sEFaD1pKhPdfxlIPVRRA5U79AuqriCnL3sE9xTK+exrsgA/zyQouFTpGPPTdsaHWoN+mUGAq 3id12/4HgsbJJqUzj/tHneE37aWwnyiBdlDfFG+3vs6pXO14UtDNDIXfmeyusP6oF+GcM0Kf iT4/QJr98De7neDTNPwQhm5q36spQMHVpxbFOhSwBqW1qPe7gKdB24FZj1MctorsIkxXzNC/ l2Um9LkAxR/vbvTTmiSnp+eoCmuIyETISkHbDUdUAoey9D5pcc4iRenZuhkFKm5n9jkAwbay jqBrDU9r7gLhMtN3KK+lXjYhxq8q56PSRQ6ji3VUXis6gdRbYusdYuur1Pc6J5oPIufC1WMo nUAs8yf9/wVS4GAkjSXR+cAF63v4OyKWAAwmnZqFpglsj6rq3iqeNgM5CkkfBs4dMEZZTXuf Unf/xtL44NeN2eraqkxZJ+tD8Mtzu7rEtGNuu3oU+eiq6NZLGevlByCr2bKjwgBTGBEfXkDB Kqm IronPort-HdrOrdr: A9a23:FftSfKCpi50HNurlHeilsseALOsnbusQ8zAXPh9KJCC9I/bzqy nxpp8mPHjP+UMssRAb6KK90cy7IU80mqQFkbX5UY3SIDUO/VHYT72KjrGSsAEIeReOi9K1vJ 0IG8QQaeEYT2IK7/oShjPIbOrIqOP3hJxA7t2uvkuFODsaDp2IgT0JdDpzX3cGCDVuNN4cLt 6x98BHrz2vdTA+adm6PGAMW6zmq8fQnJzrTBYaD1p/gTP+ww+A2frfKVy1zx0eWzRAzfML9n XEqRXw4uGGv+ugwhHR+mfP59B9mcfnyPFEGMuQ4/JlZQnEu0KNXsBMSreCtDc6rKWG70srqs DFp1MaM8F6+xrqDyqISU+G4Wfd+Qdrz0Wn5U6TgHPlr8C8bik9EdB9iYVQdQacw1Y8vflnuZ g7m16xht5yN1ftjS7979/HW1VBjUyvu0cvluYVkjh2TZYeUrlMtoYSlXklV6voJBiKrrzPLd MeTv00pcwmMm9yVkqp/lWHFebcG0jaHX+9MwA/U4KuomFrtUE863Fd5NcehDMl+I80ZpFY74 3/Q95VfYp1P4YrhJJGdZE8qPSMexvwqDL3QSivyAfcZew60jT22t/KyYRw29uRPLAWwJwu3L THUE5ZvXM1YCvVeLSz9awOzSr2BEmjUTPxjuFY54V4sqD7X/7CKyeCSDkV4rOdisRaPffgH9 qtNJVKR8L5LWXhFZ0h5XyEZ7BibUYlaok4pdo9RhaystvGQ7ea0dDzQbLtHoCoKzwjQ2+XOA pmYBHDYPp71ASQRnTjigPQQm7sfEu63b8YKtm9w9Qu X-Talos-CUID: 9a23:EULEemAHUYgjXGP6EzlsqE4TQ/sASCbywy7pDmGBFX5OS7LAHA== X-Talos-MUID: 9a23:qSzJZwlD/J5cmqJqxyIxdnpnZOJGxYOJWHwikL46stK+dgZhAxyC2WE= X-IronPort-AV: E=Sophos;i="6.00,223,1681185600"; d="scan'208";a="111771539" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=dop8eDig57IE7alr5CDOMHwR7G40z5bB2Mvq4kfT4ZROJ1x39HnJIGs1sGr8lW+DMURE8+XGe3A4PZBtNaVtejvd4O91auPMcw0LiyARnrIVNSRzG6aXft2Afy3kZJWx6gCoeGqLiMYGXbVFNn0kcBQcUxallx035NF+cBSNOraMqRUVjvzeAJApbPYYKxXiFyQzWad9FKJnZhhOZg/uIoBIB1S2c5S6T9zD7hHRHw9Xb6Ts6PTlhUFKtpjCeE/7YZzmbD6HRBpVbsXl9QU2DheLa2oMJMiBi/CR4xKZ5WQuzX53T0swmoTM6XzLVr1pfGNCkpKJwGfbibr4mrsz6Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=/siiXUBYf9Zsjtfi2bfaZ6N+sIbNb6Nnq5u30yeg/7k=; b=bWAzJHGiNlojx3YYCoJPwywFwWAB3ukqk7Y/+C6d1Db08OxwWjogCSRQqzbIUsZKQBmmA4easK+ZjGE/D4xgCqknezhqayEZoZ6/dsTRDKmd/drmKELU9C4SBdm5ogPi4BoSI74pmMz1i/7l3T0s7WPTy6bTuaZZB6FM97naozsFbNx9iIg9YP/M0DxbN/hBACrC0s3+X732CM7iNbS14VmJQ/Wl7l5XNfLjtApn6202mctw1Rt8dLHESDhhpTBMuFxcYyT/S65sQR5+uJ6CvweS5BN1NyOdA6WGgMCvDetCdXnzNFw5mGmWyRgNQb6lv0eo2m1kV1/ouh8a6fFX8A== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=/siiXUBYf9Zsjtfi2bfaZ6N+sIbNb6Nnq5u30yeg/7k=; b=O8zo3qACKmLBa2yxnSpY8Ew+DpnM/RY8hI1hRPDD+cfVz9LAM1/FLXHvxEybLknSexQapCtwE6iCnQ06SHrpsxvZWKHDcOEK7jmwXBHYjNfnCnSpAXaXEqg47MRLtiY4xMA882Qx0b+Rf52cH6MpttmjpAxXhu9zy4SC/1doEWM= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: Date: Wed, 7 Jun 2023 10:19:45 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 From: Andrew Cooper Subject: Re: [PATCH v2] livepatch: apply_alternatives() is only used for livepatch Content-Language: en-GB To: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Jan Beulich Cc: Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk , Wei Liu , Julien Grall , xen-devel@lists.xenproject.org References: <20230607090120.49597-1-roger.pau@citrix.com> In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO4P123CA0184.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:1a4::9) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|CO1PR03MB5764:EE_ X-MS-Office365-Filtering-Correlation-Id: a2a6d48f-a194-4ce2-8300-08db67385948 X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: AFpwNnR3thvj+qbrSIBMPARdiiX7FVjRcxZmf5SwUlo8CkS+ZJ+fotBetvH3nUglwE2g6cjNG5M7/UyHb25OPwneF9jnAmBkSWJh/VBQInX0X/witzDbxzl4iStXIhy7RU9J3QY+t/jKC4VDQXsyCbOnAwPadQv16EtZe/1lW9+Z2Wh/pv86OuVBAZY3Fd87AJQ+IYWsIyDAWWzsd9EeqAzfHynKorsqSVGb1i4prPlZbISNw5VdOFL3kHaJPjIckGVDRZa7VJ70T9Yl6QpcnAhqejH8BXLmdNDvN7gZS7UfGI6QNYJNibTEfbNGrtop9/2fWJ0HdSf1OtkutNKrDGmFWQE+aSkk8upR7Jhf6ZQScfcNQQXnyKZBTBnghlsJ4uOHpvM9nZkvhJshrjKUIWH4q1y9YZ6t1iyF6qCRqD17L+RAeXU6xzVmaiwoaATY9TJqPpIIIc566Q3dO3UuApXksEancOHkrv7ezLKqprkCiOOmVRa1ZUxtqz0IAwVu3liPLLoC4p4p4ZTNNsqHFCRe8a5aDuf6BVTJqHZQQLLbflJKUuozLbgAB3JyjZFRaNiR5dPZW8YkV/vo1E9mAXxEiDcKs1tYz/JkC5criD8GRUp79hdhq3VChwnPGs33z/kstRJVug+curGNZVQR+g== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(346002)(136003)(366004)(376002)(39860400002)(396003)(451199021)(86362001)(54906003)(110136005)(4326008)(66476007)(38100700002)(66946007)(6666004)(66556008)(6486002)(478600001)(2906002)(36756003)(186003)(2616005)(5660300002)(8936002)(41300700001)(8676002)(316002)(31696002)(82960400001)(31686004)(26005)(53546011)(6512007)(6506007)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?L0V1VVRkYUN4OUZWdGtNWXY3cXU4d0FTaVRDK0NOOHBJc3U4MWhKc1FJSnJJ?= =?utf-8?B?SGdtOVRjZW1yL0N3SnlPSHJNRDkxcGc0Z3RkNEl1M1V3N0gxVlM1VHE0NS9u?= =?utf-8?B?OFRQL25PUkdXREZVb20rc20yeFRveTFqbTVEbVU4Q2pkUGJHRXcvL2FHNXpk?= =?utf-8?B?RDdnY3NtWDdWaHhRdjlSOHl4cXhWU3hnVkV6RVU1ZHpMVnVxcVhYNlhiODMr?= =?utf-8?B?NWNINi9qMnFsbERwLysrSWF1WXE4dTNITWljWTFWaE9WcFJyUkpCY3ZHc0NO?= =?utf-8?B?TjdwSHhnZlRHNnY3VzQ2UEswT2ovOWtuYnR0UlNSRkwwSEdNZXdpOTgzQlNW?= =?utf-8?B?bU5WRWIwSGYrc1MxT2RheHdlbjJoOVRSU0hpVVY1NFRWSHl3UFkzcTVseTZO?= =?utf-8?B?R0lpam1jQWZ0cStia3AxOGxGaWkyckZRUXZWUmRUOVRjNk0xc21PWVpCNEZU?= =?utf-8?B?NGs2V3dtMFNZc09rNHJzN1k4bDBqS1RheTIwYnFsZmEwcUZaZzhzVEYvY2ll?= =?utf-8?B?L0hENmVMTTlUOU4zV2N5RzVtek9PS2dzc0FEMkpsNHBnSjR3dWJtMno3OWM5?= =?utf-8?B?bkhtWG5YcXJYbFNBUkd5dys1aHN0S3dyODUxaUc5cU5COVhCZlUraCthM3lQ?= =?utf-8?B?K3g3NmZGSG4yU1o4bnZUWTlueHpYR2FEdVZ1NGhoUXpnTUFaVGFJR3h2UWFw?= =?utf-8?B?OXAzME1CZW1UMkZpeXpjaFM3R3U4a0hFZ0VhczJSOFZUMTdwVlZVWU5mQVQz?= =?utf-8?B?cHVWRkQzTnJCQVdZbjB4b2ppSVlYcTVlRXdxOVMwWG5aSFJRNWZJVjJ6aWVw?= =?utf-8?B?bEpXa0lmczlHSDZZM1ZsTGtoQVNmNC9Vem1UWmZZakttVjl0Rnc2bU5SdzY3?= =?utf-8?B?YldrSVdvQWI3V0g2bStMN3JwYnZBalM4UW44YkpTdFY0M21WbzlxRnh6SDFs?= =?utf-8?B?NFVpTWlnOGRraTZEUC83QkhPZmkxUWtISHJWbDVRMTJBcDVEbjg4bkZFamVp?= =?utf-8?B?OStVQS9pamhUc09Tb0hWb0Y2SXgxSHZyWFFrblVZQ0oxYzc4cDV2bVMweVBC?= =?utf-8?B?YTFPZzdZSGpMbnBOTGNSQmRxTy9JQytyanV1dEpPaitIR1I3MWRid1lieXM1?= =?utf-8?B?S2h4RHVZSHFoVVlOWE1EbDNSNXpQYlQzL1ZWUzFIZk01SjBSVng2RFhHVnRs?= =?utf-8?B?cFJJM2UwQjZ1VTNGZmh6eVNNMTZGNTFucDZaWlRuVHQzQ1R3ZlBqRkVYMkVU?= =?utf-8?B?N0hiWVZ1M3NvQWxRSnF5dS9CZE1DSytpU3RFNEtPQ0QvOTZxVGFacGU2TVN6?= =?utf-8?B?b1VudU5ycngxamxEUzZ6VjF0NURUSEwxYXBoalA0Sk4vZDdReFNrU3F3YzJI?= =?utf-8?B?dForSVVHNDZTVTN1WUh2WEd6VkM5MkhvUnBLcXZJWjBoZG9OMXY4NTFMRC85?= =?utf-8?B?QkVKQ084YW9JOGNYd3BITjlaNFJ2MmpJYTZuc2hTTUtJRHEwT0xLTUN0V1V2?= =?utf-8?B?MFRvdkk3Z25PR0VKazM0eitqcXNaRzU0L1pNcTAxbGRKVW5zWW5IZUYveGlL?= =?utf-8?B?QmxwcVJkVUM3aXhiVVFkaWNyeTNBTlRnU1BxZmJ1RjdkNTNiVERQR0tkSmhZ?= =?utf-8?B?VDUzMkx2ZlBmd1ROeU9Ka1ZMSE9TVnlHUnQzOVJGRE1FYUZWYkdrTWFQWVBj?= =?utf-8?B?TkxqRXJsNUpsK2VENUUvY2RsdkF6N2taMXRmTFY2bjlJNU9TU2IzWmY4NzZJ?= =?utf-8?B?ekYzQU5lTGZLbzRqWXo1Qk40MmFFb2hRZDcxL3VLTU5iYlY0NzBsTEhibnUr?= =?utf-8?B?ZHoxSnVpQTBSU0UyNDh6ay8rbTRBTEMvVTFqSkhuZTZNcFQ5Tk04WkE0R3Y5?= =?utf-8?B?dDFWUER6b1NqNFY5QU9ObStMUWtkRmRPRHUyeS85T2lNT0wrc21OMmVoTW5I?= =?utf-8?B?WXFydDdobm9ybXAwNzc5S2tRb2Y1S3RWV1laTkh4czBFaXhEUENOUmRiU09F?= =?utf-8?B?SFNyeDF4aFF4MVhVSDVVSzJib3ZpS1g0YWIrZWJhZUM0YXVFeGs3WXNKSE9j?= =?utf-8?B?OER6YUxGc3pvZkdRVXkxRFp2L1BhNGxKeDJUV21HK21xUDdROUM5MDRybkNw?= =?utf-8?B?LytVRlRpaGY2aGdDWG9yTWFMSTFKTXhFZFl0bUE2ZWlmb3d4cDc0VHUwUlp6?= =?utf-8?B?SXc9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: 5oNLNdhzMHFP6midM1NHwbrolo4BkZggKXNzBWAwIvoVaMbEGCT6QriWQDobCNcp5Izas0xrDQ0t7n00InZT/d7HB20Egwbj4h0MhILg2zjGn735aaPl4VCIXJN9ihiOaFXyhoTbmYcI2F8U4zQPQJcJbg3U/9RnjAV4VpoijAaplf0wFFmCM18R8vWTQFteyjVtIgjd80vxSBtIk9tpjnUUYlygk2ST8Y13TbR3DmXRkfQAnlNgqeZ3XBC9LoJoiTxhW1ZE/3MXuigd2l+FANyAAiu83NAYcsmKquYc06Sn/GaMfO78wf68gKXoerfl+OCLYPdq0aB7s14IGMCgeiCZ285x4j+ztcSB63l3bi8mF391/Tk6o+kuM6TV16H1xLswemSd4DXDg/5A0ISut1ULvGG92e0mfF+dDJKwcReipbKqXo93y3waOzWDnjAw+/ejiI3eyb3g50J07u6ydLaqsAHPJ78sRtKl1DDP15xx8mLGjl405mpAQMWPUP84ZWU7g7eG+2jBWYgGCwayy0XylqnlZLodl6KOw1mfNhvtgHyiO9vhZ7aXHb/qJR0wvd04Zl2yZf27uW1IZm8lJHeYLFX3ITz6czdUr4D4P11jadZKD0Y+otTBB4rMCfRC+0PJaoZAk9MEVf5VtH2QBzM9oAI38vnz83zHYnWhqdOinjmhD1sgBMHtS+edCqy9wEBw9zni8GOnZvnRvijTNzeyizQswDyNdnzdaf34X/pWdq8lPff/s3+pgGENiF06K6DoUi+/olyF/6zjwlcHKGontirE99sWIKOmrV5wHj6m5FSiObJOxX2ZtHmgwvhDZ0dM1FPNgwmXtpl0TDO8f9gwU2R/igOdH3OZWiQsjs6Dg7ClLeofiF0VEQDhf9DY/3BJUu5kA+YnHqKTeMPqvZSTqKj3tDlHPrFBgDjGfEg= X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: a2a6d48f-a194-4ce2-8300-08db67385948 X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Jun 2023 09:19:52.0357 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: /y3Pf851/6HnXpR2BZKvE+KHPK9xRvm4qi9MzmJoVvRhled3bTvdFjLOZP6QJuydqh7USlyqBEEgu4wu/4o2uy+42M5oe8gBkc3gNsjV34w= X-MS-Exchange-Transport-CrossTenantHeadersStamped: CO1PR03MB5764 On 07/06/2023 10:17 am, Roger Pau Monné wrote: > On Wed, Jun 07, 2023 at 11:10:27AM +0200, Jan Beulich wrote: >> On 07.06.2023 11:01, Roger Pau Monne wrote: >>> Guard it with CONFIG_LIVEPATCH. Note alternatives are applied at boot >>> using _apply_alternatives(). >>> >>> Signed-off-by: Roger Pau Monné >>> Reviewed-by: Julien Grall >> Reviewed-by: Jan Beulich >> albeit the implicit ack therein is only on the assumption that (apart >> from me) it is generally deemed better ... >> >>> --- a/xen/arch/x86/alternative.c >>> +++ b/xen/arch/x86/alternative.c >>> @@ -358,11 +358,12 @@ static void init_or_livepatch _apply_alternatives(struct alt_instr *start, >>> } >>> } >>> >>> -void init_or_livepatch apply_alternatives(struct alt_instr *start, >>> - struct alt_instr *end) >>> +#ifdef CONFIG_LIVEPATCH >> ... to have the #ifdef than the init_or_livepatch attribute. > But the init_or_livepatch attribute doesn't remove the function when > !CONFIG_LIVEPATCH, so it's not a replacement for the ifdef. > > IOW: it's my understanding that the purpose of init_or_livepatch is to > add the __init attribute if livepatch is not enabled, but > apply_alternatives() should never have the __init attribute because > it's solely used by livepatch, it's not used at boot. For context, Jan you missed the MISRA call yesterday where this was identified as an emitted-but-undeferenced function. ~Andrew From xen-devel-bounces@lists.xenproject.org Wed Jun 07 09:27:55 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 09:27:55 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544576.850460 (Exim 4.92) (envelope-from ) id 1q6pS8-0007pT-3q; Wed, 07 Jun 2023 09:27:40 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544576.850460; Wed, 07 Jun 2023 09:27:40 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6pS8-0007pM-1B; Wed, 07 Jun 2023 09:27:40 +0000 Received: by outflank-mailman (input) for mailman id 544576; Wed, 07 Jun 2023 09:27:39 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6pS7-0007p9-7g for xen-devel@lists.xenproject.org; Wed, 07 Jun 2023 09:27:39 +0000 Received: from NAM11-CO1-obe.outbound.protection.outlook.com (mail-co1nam11on20619.outbound.protection.outlook.com [2a01:111:f400:7eab::619]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 88a7d203-0515-11ee-8611-37d641c3527e; Wed, 07 Jun 2023 11:27:35 +0200 (CEST) Received: from BN9P223CA0026.NAMP223.PROD.OUTLOOK.COM (2603:10b6:408:10b::31) by SJ1PR12MB6363.namprd12.prod.outlook.com (2603:10b6:a03:453::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Wed, 7 Jun 2023 09:27:31 +0000 Received: from BN8NAM11FT109.eop-nam11.prod.protection.outlook.com (2603:10b6:408:10b:cafe::b6) by BN9P223CA0026.outlook.office365.com (2603:10b6:408:10b::31) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.19 via Frontend Transport; Wed, 7 Jun 2023 09:27:31 +0000 Received: from SATLEXMB04.amd.com (165.204.84.17) by BN8NAM11FT109.mail.protection.outlook.com (10.13.176.221) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6455.36 via Frontend Transport; Wed, 7 Jun 2023 09:27:30 +0000 Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Wed, 7 Jun 2023 04:27:30 -0500 Received: from XIR-MICHALO-L1.xilinx.com (10.180.168.240) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server id 15.1.2375.34 via Frontend Transport; Wed, 7 Jun 2023 04:27:29 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 88a7d203-0515-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=lSWQUHUtDYoz60l0jIfuqn9hy0453lsOQQZaaCMFhdB69ClRpQ20Y1B9AabYSnS5LpGFfbv67YCp6A0MUjwN0s4+hK+ojNIehcAu5beVEffPGJbFdGIsZtkqP45GzHVLOSfT/wivg+hUMjHcIfJZ70jZdUo88AzkTM+dkrihD3OchADuCFj1XJdQ670DzkoBq9IkitmC5MzhccivAROfKRb/se190SxH1l8Toum4hJnO0UAflgK3h+NC7ZXk9zDVhKTivj30QWnOe3zub1JUr28j0Ac7489W4MYBQoxVKonWwko9bLR3ScTAjsb76givuyViQqK/qMnWKGN5UByv8w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=JZbvHWkBcc8kAxTc1427ad6bE2o+h4yuG/qDarpDUxQ=; b=c+E7bMjnLdiI3wSXP5SRZwR7mlDuXJXgViS5wMTegv+O2HJGD0JlvjSZcNnHZ0rwA2XcFWUexc+UeU12KsrbMXTL74VliJ9rIovlpQsJfxW2WtdGRbSeul+7pnLfwF0TsUshRnf1YFRiiZd0HDcbvHPVr7PBDNKwBNgUoJ6DMKvauD72REcVkSZHJEDCbITU+fw2OFt43UG+oYyQSG2E23mYmTBfbrjEUBKaDI1QBUZv9AQmBK6BB4Wz3DGe8AbtmUNUGX21VVnsgOHRcc6y/zjhZbmhqLIgXnQPYWECm7DfeVpwx4cK1VkC49ZQrODp+6VTFemVELXlMzW5AjPjWA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=JZbvHWkBcc8kAxTc1427ad6bE2o+h4yuG/qDarpDUxQ=; b=yW8s4bzBD0jIpb2qErvTPMIWDwej9vqLlKdLmjGSbJTgkyFSHC5NuJZK7veqmYDm/eeJFdcevAKH173cgJYgiaPZ2m4yMPajj260Wx7Yuhlo80zUh9CmIu3GcCC/oE5ZF8JHUsOA3XNjLeAjCdTrdNVJnoRkNEbOLBi7CEf6xfc= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C From: Michal Orzel To: CC: Michal Orzel , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk Subject: [PATCH 0/4] xen/arm: pl011: Use correct accessors Date: Wed, 7 Jun 2023 11:27:23 +0200 Message-ID: <20230607092727.19654-1-michal.orzel@amd.com> X-Mailer: git-send-email 2.25.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BN8NAM11FT109:EE_|SJ1PR12MB6363:EE_ X-MS-Office365-Filtering-Correlation-Id: cc697075-15ac-4b10-bf2a-08db67396b10 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: JFsm9IqRDlaOM2k1jAcqivmokPhFYoP0kwbZ6pwXQVKiXw+bsgBU2rdZMpMN5MlI9JmhxoodAL3nESpO0sDP07IHTwM+E47F6too4kg/Pc5PHitogfXkPat50ZEmi6UIg+0btwZO3wXAnA4AqFQEvxBr0PhThgCOyDjJlNloDwLWC4J7qtGwkxRs4Ygv87aagwPtBDz9TreucE1pTVJVgqxojOkzR54sGBHapEJgrYR7LD2gfhm/Ulpc1uSTiKm9a6cpXM6ayJg48YtzVkdFvMLU2D305AiXQ6dTJj5wKCXTHd2xd3NgAmrMJ/qVIBhj+7Sd4P1U4sF4XdBs/1+umrxCtybK1z4tRBoR2nSWSordhTMkisl+v5xuELl54Ls+Sah7cpPZxH56FF38IBLZnoOCgMa+AWr7nA+uw3VshD6QKa+v7u8xp+i6sLUo4tgYrtKhnLq2OmEMZ1yO+u6Y1jLwbes4KY96v2jDXB8t2LcXt0pj9++GwV3tUUtwwczJ1qOhfJU0ycDzUnSeDMwzph0wN6XHempJ1cs6ulgAZfIJhJzCtc9ee8wKJtwRhd7udqdvdMRfnIBo3vckBD4PBkQ9oTk9hlh0oxSmuWRcSozaZ3hnhGniZH8aVXsCpGgaQMkoqX5pD4FM9FfabuJ9tWIQgFYaxsMjCtVENeXBM2wu3oNcSoCTsj7c/PdAGxVOJiGp4p+a4uYIyLiY+rrwqJyibT6EfHVofQ0WD7fjdbOYuAtk2WN27C+lqe5E38qt+CstCcOQzAV1BvZzryoMr+nvjweJ0Y3W059Pmpmx/KlNDHhyNk6xOjrzVxo2E/Dv X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(136003)(346002)(39860400002)(396003)(376002)(451199021)(36840700001)(40470700004)(46966006)(47076005)(83380400001)(966005)(336012)(426003)(82740400003)(44832011)(54906003)(40480700001)(478600001)(8676002)(8936002)(41300700001)(316002)(70206006)(70586007)(356005)(81166007)(5660300002)(6916009)(4326008)(86362001)(40460700003)(36756003)(6666004)(2906002)(82310400005)(36860700001)(186003)(1076003)(26005)(2616005)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Jun 2023 09:27:30.9644 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: cc697075-15ac-4b10-bf2a-08db67396b10 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com] X-MS-Exchange-CrossTenant-AuthSource: BN8NAM11FT109.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ1PR12MB6363 At the moment we have a real mix of accessors used for PL011 registers across early printk and runtime driver resulting in a) not spec compliant behavior and b) inconsistency. This series: - switches to use the 8/16-bit accessors in normal case, - adds support to use 32-bit only accessors. The behavior is now the same as in Linux. The last patch adding support for SBSA UART in dt boot was added to make the merge process easier. Also, arm,sbsa-uart property is usually present next to arm,pl011 which would casue the pl011 driver to believe it is driving PL011 and not SBSA, therefore resulting in accessing the registers that shall not be touched (as oppose to just failing). Discussion: https://lore.kernel.org/xen-devel/b31a9f06-1ad8-b882-2fb0-84a84a1accb8@xen.org/T/# Michal Orzel (4): xen/arm: debug-pl011: Use correct accessors xen/arm: debug-pl011: Add support for 32-bit only MMIO xen/arm: pl011: Use correct accessors xen/arm: pl011: Add SBSA UART device-tree support docs/misc/arm/early-printk.txt | 3 ++ xen/arch/arm/Kconfig.debug | 7 ++++ xen/arch/arm/arm32/debug-pl011.inc | 12 +++--- xen/arch/arm/arm64/debug-pl011.inc | 12 +++--- xen/arch/arm/include/asm/pl011-uart.h | 19 +++++++++ xen/drivers/char/pl011.c | 57 ++++++++++++++++++++++++--- 6 files changed, 92 insertions(+), 18 deletions(-) -- 2.25.1 From xen-devel-bounces@lists.xenproject.org Wed Jun 07 09:27:56 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 09:27:56 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544578.850474 (Exim 4.92) (envelope-from ) id 1q6pSO-0008DF-EP; Wed, 07 Jun 2023 09:27:56 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544578.850474; Wed, 07 Jun 2023 09:27:56 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6pSO-0008D8-9b; Wed, 07 Jun 2023 09:27:56 +0000 Received: by outflank-mailman (input) for mailman id 544578; Wed, 07 Jun 2023 09:27:55 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6pSM-00089h-Vy for xen-devel@lists.xenproject.org; Wed, 07 Jun 2023 09:27:54 +0000 Received: from NAM11-CO1-obe.outbound.protection.outlook.com (mail-co1nam11on2060b.outbound.protection.outlook.com [2a01:111:f400:7eab::60b]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 93395952-0515-11ee-b232-6b7b168915f2; Wed, 07 Jun 2023 11:27:53 +0200 (CEST) Received: from BN0PR04CA0025.namprd04.prod.outlook.com (2603:10b6:408:ee::30) by SA1PR12MB8095.namprd12.prod.outlook.com (2603:10b6:806:33f::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Wed, 7 Jun 2023 09:27:49 +0000 Received: from BN8NAM11FT022.eop-nam11.prod.protection.outlook.com (2603:10b6:408:ee:cafe::f2) by BN0PR04CA0025.outlook.office365.com (2603:10b6:408:ee::30) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.34 via Frontend Transport; Wed, 7 Jun 2023 09:27:48 +0000 Received: from SATLEXMB04.amd.com (165.204.84.17) by BN8NAM11FT022.mail.protection.outlook.com (10.13.176.112) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6477.24 via Frontend Transport; Wed, 7 Jun 2023 09:27:48 +0000 Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Wed, 7 Jun 2023 04:27:32 -0500 Received: from XIR-MICHALO-L1.xilinx.com (10.180.168.240) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server id 15.1.2375.34 via Frontend Transport; Wed, 7 Jun 2023 04:27:30 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 93395952-0515-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=cFjCnFMc2lmarIabjWLZCCEtgMmEZDrR9qFFfvT02sgpxU9Z8qQ7Od3/z4n9hej60RhlB6PwBGX6gIYOVcLoslz7JVNWBO0lKiXsKMFRtsPgL6nAz59fSJlWaLDVAbOorzyebu1Q3Uk7wSogvplJD1zNRb/Ui0G+Id8dW4RC+0XgTUSxyZCFoKOg3Yc2OsivyAnckDwvnKBP/61tLrhTWknZ+tx1dI0dAlZsjx4FESrpgsEVQbdbzhwZ9crEjm+0dggREoTJsE5m/87jMA5vq9sXid7F4mp4KW/v2hORU3BDlKr7wpTfgJimBIYKspsycQqfumOMOVaSWK39wU+dyg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=R98uFfHZVa1myY/azuIH4bMaUuCmPRTnAIKrAgYKBu4=; b=Y7RKgMKzVoBnqA9pchorKI2jcr5iMyTGiL/W95AQXTEF6PTPhTFdx2csr5okXNW5xnOcucvHekclhTUlV+/UVIEYI8EpgvBQ9DYbL+MBubcwaGjYccguqIAYfDVOPwbAXjzUp4b2F2WWgYrRNBThjAOdhg/6xwZXB50R8Mj4chfUPdDsIyS6nFAfJB8nR1Z0wUCGPFqH3Zry1ihcon5mmqEEt84HP6ZSq1gt/ICvDSRUHkwtj4ERG0qpPlRIK9YuzR/IsmNLL6W7+uq0gPh9RaUOh1c9w9kE2JNdalWuQyAWBvnhJRZaQNCZL0ARjHXDTYoHaZMNrKJmua++SUoPRA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=R98uFfHZVa1myY/azuIH4bMaUuCmPRTnAIKrAgYKBu4=; b=QCTzPS+ZsgDM3eYLpD4EG+LBHsmmVQNCHkFc1axLasf1uVcWolwlPTjufMSVxMXoe/himnjhFMMrVTHgddQSXI8ZebLfIioh9X5CEYaS3hPA0wgG93pdtgKUJyu/VsCcyYifGpc3hppAGdbhEaMuN8QJ0DuCb+bJIrJuc9YM51g= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C From: Michal Orzel To: CC: Michal Orzel , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk Subject: [PATCH 1/4] xen/arm: debug-pl011: Use correct accessors Date: Wed, 7 Jun 2023 11:27:24 +0200 Message-ID: <20230607092727.19654-2-michal.orzel@amd.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230607092727.19654-1-michal.orzel@amd.com> References: <20230607092727.19654-1-michal.orzel@amd.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BN8NAM11FT022:EE_|SA1PR12MB8095:EE_ X-MS-Office365-Filtering-Correlation-Id: e18bc765-03f6-46c2-c383-08db67397560 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: +y5v0KUXBn5ltYOvS/9qKff63wB9TRruezPas+CVmrXNl2FR/I2C3Q5W5ssiMPUGWJ0El2n6nWESFhkqbAW4whZmFZjr9htGkvmLd8UEJOHCZKawiZMeMEXNN0dteQzDXIxftmO3jg9HXOBHCQJr8AvjzhRAalI8auVyOWV4AmDWaHh1uMfWo9aT2zET39tKiH1POELaFG23gmwv1ljIDOD3WwIgopaBeCISIBkmDE5IBDTojRVzJL1qtlwPhOYQRr1eLpwyojwjkhywLjvldVbOsA4BJnJYs3E9NHSUPururEJrSAUMU62oSzPiE8HbIKz6KTYJJvNDO0+bawEQjveIegjL+sQD2tBrv8TVskiuy0eV617LcG/e7J5jRVmG+Kg7MWX5SjtdFWJESwe7nwIKEnQ/H44AZXT2yXFUSwZiLbskYdExr5IGMKAFsnVyjXYTbVu9dHin528gkZu6g0MoYR3iLiay251xTVWa3SFBdJ17fHO9U13btGn+CkjjyAcywh08fSPA/M4YytZGkyUNeySWQ+2c2f+IeFO0/ZBx3SBjxv4PfupGh11A6MH0Q0UtuJvY7XMSaNRz3DMvCwGZ4ta71MPogX16sJjAXWhMYLk9p2AS591UmEdkv21WURXAs251ftYVtUv+QloiqXmSE/YyFaEuJ6ByWgIN+RRWywLIuYHzTIAQExKz/Ux4Edsf0X+pvr4VYJucsSA9HNvuoeNzrB51XocEPy2idRHb+lbNf86ZDWRGyAbVjOd1Ea31/Og5qjbOxPE2QHC7Ag== X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(346002)(376002)(396003)(136003)(451199021)(40470700004)(36840700001)(46966006)(83380400001)(40460700003)(47076005)(336012)(426003)(2906002)(2616005)(36756003)(86362001)(82310400005)(356005)(81166007)(82740400003)(36860700001)(40480700001)(41300700001)(316002)(6666004)(5660300002)(8936002)(8676002)(478600001)(54906003)(6916009)(70586007)(70206006)(4326008)(26005)(1076003)(186003)(44832011)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Jun 2023 09:27:48.2661 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: e18bc765-03f6-46c2-c383-08db67397560 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com] X-MS-Exchange-CrossTenant-AuthSource: BN8NAM11FT022.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA1PR12MB8095 Although most PL011 UARTs can cope with 32-bit accesses, some of the old legacy ones might not. PL011 registers are 8/16-bit wide and this shall be perceived as the normal behavior. Modify early printk pl011 code for arm32/arm64 to use the correct accessors depending on the register size (refer ARM DDI 0183G, Table 3.1). Signed-off-by: Michal Orzel --- Next patch will override strX,ldrX with macros but I prefer to keep the history clean (+ possibiltity for a backport if needed). --- xen/arch/arm/arm32/debug-pl011.inc | 12 ++++++------ xen/arch/arm/arm64/debug-pl011.inc | 6 +++--- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/xen/arch/arm/arm32/debug-pl011.inc b/xen/arch/arm/arm32/debug-pl011.inc index c527f1d4424d..9fe0c2503831 100644 --- a/xen/arch/arm/arm32/debug-pl011.inc +++ b/xen/arch/arm/arm32/debug-pl011.inc @@ -26,13 +26,13 @@ */ .macro early_uart_init rb, rc, rd mov \rc, #(7372800 / CONFIG_EARLY_UART_PL011_BAUD_RATE % 16) - str \rc, [\rb, #FBRD] /* -> UARTFBRD (Baud divisor fraction) */ + strb \rc, [\rb, #FBRD] /* -> UARTFBRD (Baud divisor fraction) */ mov \rc, #(7372800 / CONFIG_EARLY_UART_PL011_BAUD_RATE / 16) - str \rc, [\rb, #IBRD] /* -> UARTIBRD (Baud divisor integer) */ + strh \rc, [\rb, #IBRD] /* -> UARTIBRD (Baud divisor integer) */ mov \rc, #WLEN_8 /* 8n1 */ - str \rc, [\rb, #LCR_H] /* -> UARTLCR_H (Line control) */ + strb \rc, [\rb, #LCR_H] /* -> UARTLCR_H (Line control) */ ldr \rc, =(RXE | TXE | UARTEN) /* RXE | TXE | UARTEN */ - str \rc, [\rb, #CR] /* -> UARTCR (Control Register) */ + strh \rc, [\rb, #CR] /* -> UARTCR (Control Register) */ .endm /* @@ -42,7 +42,7 @@ */ .macro early_uart_ready rb, rc 1: - ldr \rc, [\rb, #FR] /* <- UARTFR (Flag register) */ + ldrh \rc, [\rb, #FR] /* <- UARTFR (Flag register) */ tst \rc, #BUSY /* Check BUSY bit */ bne 1b /* Wait for the UART to be ready */ .endm @@ -53,7 +53,7 @@ * rt: register which contains the character to transmit */ .macro early_uart_transmit rb, rt - str \rt, [\rb, #DR] /* -> UARTDR (Data Register) */ + strb \rt, [\rb, #DR] /* -> UARTDR (Data Register) */ .endm /* diff --git a/xen/arch/arm/arm64/debug-pl011.inc b/xen/arch/arm/arm64/debug-pl011.inc index 6d60e78c8ba3..df713eff4922 100644 --- a/xen/arch/arm/arm64/debug-pl011.inc +++ b/xen/arch/arm/arm64/debug-pl011.inc @@ -25,13 +25,13 @@ */ .macro early_uart_init xb, c mov x\c, #(7372800 / CONFIG_EARLY_UART_PL011_BAUD_RATE % 16) - strh w\c, [\xb, #FBRD] /* -> UARTFBRD (Baud divisor fraction) */ + strb w\c, [\xb, #FBRD] /* -> UARTFBRD (Baud divisor fraction) */ mov x\c, #(7372800 / CONFIG_EARLY_UART_PL011_BAUD_RATE / 16) strh w\c, [\xb, #IBRD] /* -> UARTIBRD (Baud divisor integer) */ mov x\c, #WLEN_8 /* 8n1 */ - str w\c, [\xb, #LCR_H] /* -> UARTLCR_H (Line control) */ + strb w\c, [\xb, #LCR_H] /* -> UARTLCR_H (Line control) */ ldr x\c, =(RXE | TXE | UARTEN) - str w\c, [\xb, #CR] /* -> UARTCR (Control Register) */ + strh w\c, [\xb, #CR] /* -> UARTCR (Control Register) */ .endm /* -- 2.25.1 From xen-devel-bounces@lists.xenproject.org Wed Jun 07 09:27:57 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 09:27:57 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544579.850484 (Exim 4.92) (envelope-from ) id 1q6pSP-0008UZ-Lp; Wed, 07 Jun 2023 09:27:57 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544579.850484; Wed, 07 Jun 2023 09:27:57 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6pSP-0008US-I4; Wed, 07 Jun 2023 09:27:57 +0000 Received: by outflank-mailman (input) for mailman id 544579; Wed, 07 Jun 2023 09:27:56 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6pSO-0007p9-77 for xen-devel@lists.xenproject.org; Wed, 07 Jun 2023 09:27:56 +0000 Received: from NAM02-SN1-obe.outbound.protection.outlook.com (mail-sn1nam02on2060a.outbound.protection.outlook.com [2a01:111:f400:7ea9::60a]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 93e5247f-0515-11ee-8611-37d641c3527e; Wed, 07 Jun 2023 11:27:54 +0200 (CEST) Received: from BN0PR04CA0025.namprd04.prod.outlook.com (2603:10b6:408:ee::30) by MW5PR12MB5650.namprd12.prod.outlook.com (2603:10b6:303:19e::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Wed, 7 Jun 2023 09:27:50 +0000 Received: from BN8NAM11FT022.eop-nam11.prod.protection.outlook.com (2603:10b6:408:ee:cafe::5d) by BN0PR04CA0025.outlook.office365.com (2603:10b6:408:ee::30) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.34 via Frontend Transport; Wed, 7 Jun 2023 09:27:49 +0000 Received: from SATLEXMB04.amd.com (165.204.84.17) by BN8NAM11FT022.mail.protection.outlook.com (10.13.176.112) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6477.24 via Frontend Transport; Wed, 7 Jun 2023 09:27:49 +0000 Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Wed, 7 Jun 2023 04:27:49 -0500 Received: from XIR-MICHALO-L1.xilinx.com (10.180.168.240) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server id 15.1.2375.34 via Frontend Transport; Wed, 7 Jun 2023 04:27:48 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 93e5247f-0515-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=YL1h80F2FZ10lQdRJMkb80SDnRP+ig3NqBhwJ78E5Xr/+d/iZwz9DObxOHAXe9a6TjrtzwClfHfEXr/FVr/nL+jv86Os/Mg/2i+p4BQ43go7Klc2vZ9MWlUBL3G5IBsf4ddH/6J4B+rBKrbj0pNQ3sP6WfXWn+H4dcnjgmTZ4Q+I81niDvpcwj5TQB0vQwe3QQ/YQZW8QiOUKh/C9uKJ2an78efBel/aH0KlcgRaeaZ83ZacrCxlSZpsgMw5cewTVqvzt+JgtIXdfyprtSZchVAXrXyVJdf5+UMv2LluECXuuXzsQNKuvznfVKE+qtUxiHogqSP5XbMO74KVBgzX2A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=OTo7I0DVrCkuyNeXEOXOkuzsUeukIRgS1qykKhC9IWw=; b=ifVNbolO2CFVQTNc9XbfEe8Gf/0eljW3JJHvii1ws13WlpxPl5Yha+0Gc0EXCocl/um6YHJSuPBOtHfLdvSH2MvVVTDrTTdXmBstQBXr6R1dMckiaw7kdF7TXvtBV0CADt0WjUkBWhey6ryl1SIfxRhXi9uy4nN3le+YEjHyiCGtuJ8jqG++irAII+y0aJ4FRkkvtmYC02+At8tlUWn5/E832E8bVmk+u0PSfVTZSWBK78KaAG+R7Wj+epQsjV38CexbPOZOzTv4pFKrPZnCKxtcCzykxHIJFVqq4enwr/ewVHsNQtJ9aGURBhknvO+YToTiMGtcnaYWzvnNY7GC0Q== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=OTo7I0DVrCkuyNeXEOXOkuzsUeukIRgS1qykKhC9IWw=; b=qAPqpjJZCl30H2p+s16ogobwhluzSyyAQIPsRgGn+W0e9JHZXIjG0yM9tQSBx/NKfhousxAVCDMWNVOrT8EhNX3qTqO5xcn61BtJiS/Rg5ld0F/Xh85mQA2WQGZ+SlQsiDOOijrh9bp2DM35cKYyXvdHBSJzuvvU7edo5E1uJ6E= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C From: Michal Orzel To: CC: Michal Orzel , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk Subject: [PATCH 2/4] xen/arm: debug-pl011: Add support for 32-bit only MMIO Date: Wed, 7 Jun 2023 11:27:25 +0200 Message-ID: <20230607092727.19654-3-michal.orzel@amd.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230607092727.19654-1-michal.orzel@amd.com> References: <20230607092727.19654-1-michal.orzel@amd.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BN8NAM11FT022:EE_|MW5PR12MB5650:EE_ X-MS-Office365-Filtering-Correlation-Id: 43246eb3-bf50-47af-8c8c-08db67397651 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: rJRNV4WpAVB5NkqfhR92+wX8QjUo92RVxyA9P3uUlJAC6I//pp9B4D0rvPleAC1a+XCPQnDzYUV4TJnd61hwjqSvCVap7OmbyewhScJFv1jbDMBOIeRg/m1v2HLFkP+e5OLc+SIGz7on/9Bu5CPn67azpY2BTWCHM9PowVEc46RB+bSORAlXd/h8qsvvJN2K4vKtHVHBg34FDBpjO4Ek3A0dgP2pHLX1B4ZBUX9I+42r7fNqfXCWecnuwx9SAyE0/isXXVeh2kbvMl0ZorZ/i8WuZx9iDAll1qK1fj+dzmynGQNyXWLejDMiWk+ZkiBle9XvMjtH6zngCS2SAp3Y7Io7xzlTkSiwln6ct7RSITeFE5ncpbHkT/ngqPkYMhmAT6T01BS7MdOQGleO/GvUMpzOJoR54zSrBAbMAOeMSAjtKtRbk3LzC93xzW6hP7mjuyTeFvl5YWCgkDs+ve9gJ+l061SES3dE+Kbu2gqp/KrDGvgn9AcfK2ULh+1Yf95vS/w7/ktrN+cHYkt71omXvZKxl3NTgRfZWRkbWrpzFxPyWw5L2OcHxAflWU23CmYAvSqY4qWjpjX3LoPwvgF8ojJTyeF/PZd8mgRxhR6zbkhREuHvrzp2oDk1kIyjRkOHSCG8XHMH0Czfo58qpE+UAIxj6Uw/jgTU8Yp4lZC3lIbzXsYD3J+ONv2S0P/+ckpJhJOCeR/kVzMpE5YXVZnA8s40TNrzmithwhiULbHgeX7nGRHW19AT4AMWTtsRXtPqlPdoFgntZOW394g9VvEq0Q== X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(396003)(136003)(39860400002)(376002)(346002)(451199021)(40470700004)(36840700001)(46966006)(54906003)(40460700003)(478600001)(40480700001)(6916009)(44832011)(8936002)(8676002)(2906002)(36756003)(5660300002)(86362001)(82310400005)(4326008)(81166007)(70206006)(70586007)(356005)(316002)(82740400003)(2616005)(1076003)(41300700001)(26005)(47076005)(36860700001)(83380400001)(186003)(336012)(6666004)(426003)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Jun 2023 09:27:49.8441 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 43246eb3-bf50-47af-8c8c-08db67397651 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com] X-MS-Exchange-CrossTenant-AuthSource: BN8NAM11FT022.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW5PR12MB5650 There are implementations of PL011 that can only handle 32-bit accesses as oppose to the normal behavior where accesses are 8/16-bit wide. This is usually advertised by setting a dt property 'reg-io-width' to 4. Introduce CONFIG_EARLY_UART_PL011_MMIO32 Kconfig option to be able to enable the use of 32-bit only accessors in PL011 early printk code. Define macros PL011_{STRH,STRB,LDRH} to distinguish accessors for normal case from 32-bit MMIO one and use them in arm32/arm64 pl011 early printk code. Update documentation accordingly. Signed-off-by: Michal Orzel --- I might want to align the indentation of operands but doing so in this patch is rather no go as it would limit the visibility of the scope of this patch. Something to do in the future. --- docs/misc/arm/early-printk.txt | 3 +++ xen/arch/arm/Kconfig.debug | 7 +++++++ xen/arch/arm/arm32/debug-pl011.inc | 12 ++++++------ xen/arch/arm/arm64/debug-pl011.inc | 12 ++++++------ xen/arch/arm/include/asm/pl011-uart.h | 19 +++++++++++++++++++ 5 files changed, 41 insertions(+), 12 deletions(-) diff --git a/docs/misc/arm/early-printk.txt b/docs/misc/arm/early-printk.txt index aa22826075a4..bc2d65aa2ea3 100644 --- a/docs/misc/arm/early-printk.txt +++ b/docs/misc/arm/early-printk.txt @@ -26,6 +26,9 @@ Other options depends on the driver selected: If CONFIG_EARLY_UART_PL011_BAUD_RATE is set to 0 then the code will not try to initialize the UART, so that bootloader or firmware settings can be used for maximum compatibility. + + - CONFIG_EARLY_UART_PL011_MMIO32 is, optionally, used to enable 32-bit + only accesses to registers. - scif - CONFIG_EARLY_UART_SCIF_VERSION_* is, optionally, the interface version of the UART. Default to version NONE. diff --git a/xen/arch/arm/Kconfig.debug b/xen/arch/arm/Kconfig.debug index 842d768280c4..eec860e88e0b 100644 --- a/xen/arch/arm/Kconfig.debug +++ b/xen/arch/arm/Kconfig.debug @@ -253,6 +253,13 @@ config EARLY_UART_PL011_BAUD_RATE default 115200 if EARLY_PRINTK_FASTMODEL default 0 +config EARLY_UART_PL011_MMIO32 + bool "32-bit only MMIO for PL011 early printk" + depends on EARLY_UART_PL011 + help + If specified, all accesses to PL011 registers made from early printk code + will be done using 32-bit only accessors. + config EARLY_UART_INIT depends on EARLY_UART_PL011 && EARLY_UART_PL011_BAUD_RATE != 0 def_bool y diff --git a/xen/arch/arm/arm32/debug-pl011.inc b/xen/arch/arm/arm32/debug-pl011.inc index 9fe0c2503831..5833da2a235c 100644 --- a/xen/arch/arm/arm32/debug-pl011.inc +++ b/xen/arch/arm/arm32/debug-pl011.inc @@ -26,13 +26,13 @@ */ .macro early_uart_init rb, rc, rd mov \rc, #(7372800 / CONFIG_EARLY_UART_PL011_BAUD_RATE % 16) - strb \rc, [\rb, #FBRD] /* -> UARTFBRD (Baud divisor fraction) */ + PL011_STRB \rc, [\rb, #FBRD] /* -> UARTFBRD (Baud divisor fraction) */ mov \rc, #(7372800 / CONFIG_EARLY_UART_PL011_BAUD_RATE / 16) - strh \rc, [\rb, #IBRD] /* -> UARTIBRD (Baud divisor integer) */ + PL011_STRH \rc, [\rb, #IBRD] /* -> UARTIBRD (Baud divisor integer) */ mov \rc, #WLEN_8 /* 8n1 */ - strb \rc, [\rb, #LCR_H] /* -> UARTLCR_H (Line control) */ + PL011_STRB \rc, [\rb, #LCR_H] /* -> UARTLCR_H (Line control) */ ldr \rc, =(RXE | TXE | UARTEN) /* RXE | TXE | UARTEN */ - strh \rc, [\rb, #CR] /* -> UARTCR (Control Register) */ + PL011_STRH \rc, [\rb, #CR] /* -> UARTCR (Control Register) */ .endm /* @@ -42,7 +42,7 @@ */ .macro early_uart_ready rb, rc 1: - ldrh \rc, [\rb, #FR] /* <- UARTFR (Flag register) */ + PL011_LDRH \rc, [\rb, #FR] /* <- UARTFR (Flag register) */ tst \rc, #BUSY /* Check BUSY bit */ bne 1b /* Wait for the UART to be ready */ .endm @@ -53,7 +53,7 @@ * rt: register which contains the character to transmit */ .macro early_uart_transmit rb, rt - strb \rt, [\rb, #DR] /* -> UARTDR (Data Register) */ + PL011_STRB \rt, [\rb, #DR] /* -> UARTDR (Data Register) */ .endm /* diff --git a/xen/arch/arm/arm64/debug-pl011.inc b/xen/arch/arm/arm64/debug-pl011.inc index df713eff4922..430594610b2c 100644 --- a/xen/arch/arm/arm64/debug-pl011.inc +++ b/xen/arch/arm/arm64/debug-pl011.inc @@ -25,13 +25,13 @@ */ .macro early_uart_init xb, c mov x\c, #(7372800 / CONFIG_EARLY_UART_PL011_BAUD_RATE % 16) - strb w\c, [\xb, #FBRD] /* -> UARTFBRD (Baud divisor fraction) */ + PL011_STRB w\c, [\xb, #FBRD] /* -> UARTFBRD (Baud divisor fraction) */ mov x\c, #(7372800 / CONFIG_EARLY_UART_PL011_BAUD_RATE / 16) - strh w\c, [\xb, #IBRD] /* -> UARTIBRD (Baud divisor integer) */ + PL011_STRH w\c, [\xb, #IBRD] /* -> UARTIBRD (Baud divisor integer) */ mov x\c, #WLEN_8 /* 8n1 */ - strb w\c, [\xb, #LCR_H] /* -> UARTLCR_H (Line control) */ + PL011_STRB w\c, [\xb, #LCR_H] /* -> UARTLCR_H (Line control) */ ldr x\c, =(RXE | TXE | UARTEN) - strh w\c, [\xb, #CR] /* -> UARTCR (Control Register) */ + PL011_STRH w\c, [\xb, #CR] /* -> UARTCR (Control Register) */ .endm /* @@ -41,7 +41,7 @@ */ .macro early_uart_ready xb, c 1: - ldrh w\c, [\xb, #FR] /* <- UARTFR (Flag register) */ + PL011_LDRH w\c, [\xb, #FR] /* <- UARTFR (Flag register) */ tst w\c, #BUSY /* Check BUSY bit */ b.ne 1b /* Wait for the UART to be ready */ .endm @@ -52,7 +52,7 @@ * wt: register which contains the character to transmit */ .macro early_uart_transmit xb, wt - strb \wt, [\xb, #DR] /* -> UARTDR (Data Register) */ + PL011_STRB \wt, [\xb, #DR] /* -> UARTDR (Data Register) */ .endm /* diff --git a/xen/arch/arm/include/asm/pl011-uart.h b/xen/arch/arm/include/asm/pl011-uart.h index 5bb563ec0814..27c9bfa444cb 100644 --- a/xen/arch/arm/include/asm/pl011-uart.h +++ b/xen/arch/arm/include/asm/pl011-uart.h @@ -21,6 +21,25 @@ #ifndef __ASM_ARM_PL011_H #define __ASM_ARM_PL011_H +#ifdef __ASSEMBLY__ + +/* + * PL011 registers are 8/16-bit wide. However, there are implementations that + * can only handle 32-bit accesses. The following macros used in early printk + * are defined to distinguish accessors for normal case from 32-bit MMIO one. + */ +#ifdef CONFIG_EARLY_UART_PL011_MMIO32 +#define PL011_STRH str +#define PL011_STRB str +#define PL011_LDRH ldr +#else +#define PL011_STRH strh +#define PL011_STRB strb +#define PL011_LDRH ldrh +#endif + +#endif /* __ASSEMBLY__ */ + /* PL011 register addresses */ #define DR (0x00) #define RSR (0x04) -- 2.25.1 From xen-devel-bounces@lists.xenproject.org Wed Jun 07 09:28:02 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 09:28:02 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544580.850494 (Exim 4.92) (envelope-from ) id 1q6pSU-0000QY-4r; Wed, 07 Jun 2023 09:28:02 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544580.850494; Wed, 07 Jun 2023 09:28:02 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6pSU-0000QR-1r; Wed, 07 Jun 2023 09:28:02 +0000 Received: by outflank-mailman (input) for mailman id 544580; Wed, 07 Jun 2023 09:28:00 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6pSS-0007p9-IR for xen-devel@lists.xenproject.org; Wed, 07 Jun 2023 09:28:00 +0000 Received: from NAM02-DM3-obe.outbound.protection.outlook.com (mail-dm3nam02on20612.outbound.protection.outlook.com [2a01:111:f400:7e83::612]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 963355aa-0515-11ee-8611-37d641c3527e; Wed, 07 Jun 2023 11:27:58 +0200 (CEST) Received: from BN0PR10CA0029.namprd10.prod.outlook.com (2603:10b6:408:143::7) by DS0PR12MB6462.namprd12.prod.outlook.com (2603:10b6:8:c6::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Wed, 7 Jun 2023 09:27:54 +0000 Received: from BN8NAM11FT020.eop-nam11.prod.protection.outlook.com (2603:10b6:408:143:cafe::83) by BN0PR10CA0029.outlook.office365.com (2603:10b6:408:143::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33 via Frontend Transport; Wed, 7 Jun 2023 09:27:54 +0000 Received: from SATLEXMB04.amd.com (165.204.84.17) by BN8NAM11FT020.mail.protection.outlook.com (10.13.176.223) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6477.23 via Frontend Transport; Wed, 7 Jun 2023 09:27:54 +0000 Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Wed, 7 Jun 2023 04:27:52 -0500 Received: from XIR-MICHALO-L1.xilinx.com (10.180.168.240) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server id 15.1.2375.34 via Frontend Transport; Wed, 7 Jun 2023 04:27:51 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 963355aa-0515-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=SGV4gzwikXD0RhBY7ZkIGrFXVMstyQ4eZQz+WRQbc57DKZ/IhdDAo3JRVwNwH65T/oaswEQ7gbeMJeeMqU4i+74x2FRyeMmIBmuYs0lH0X7CGmWrMrN/+BtNrX7JIttyryX35LOFYC4yniQqawQ8CueDMH6v4bgdha4nSyos6euLEj/tQEyfXCM+MTNaJhvGhC/pjaT0CRuj+PDmEAqmuOtDlTzigIQlSGpjWa3oeqHjhqeu2ftXbvBHfpTORP3HKQkXs8XkyTuHwhEiXIRY5ESOlMJ7hQzDY+A01lq14vdu+1K4CxtXyCdJkTl01JWcbBB1OzJk3eR942eyxNSLog== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=Bdyg4wduBHS4jVU1X22vJpEOlAmdB1Wdxc+0O1Wdu78=; b=DvhLKzNwd7eZ3v/1347Dg+zNdhLBpfJLDffNfyPoDJBQw2G8dffACDy/sNk+4Y9JfeZetTaoyB1Wpb4MbeYjQM9qLN/xabBx92pUMx/3gPfnGkMEfRv6/PFi39KpIX0sRT3BojmS5M+v7wvI08gglscS5iEV74M2cV/eHqanJAnWa2hOXDYYjuLR81wl7Dt3hxb6dYEIvj4eV/iE/m4eVppf/6ZrKxKMq+Y4OeatzgswiX3rWV6jv1sIImCfFsco/6I99YM4qNuoRBWM7JchwT1dLXqZQhluCtDmdM3dCXFrGU65T82cCQhj+/8cMYvFC0A3HAQh/WJ0mUlwN+N7Hg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Bdyg4wduBHS4jVU1X22vJpEOlAmdB1Wdxc+0O1Wdu78=; b=T/bvn1wB22kPeu+r1903F9qEXPCpWzDOMgHByCwJC6n3CLKiF8iUcTD8jlOgRV6psMcll6/ijGXifmD4CGdz6JLa/A2/dbM0pUzTz9xsb8tWdZcKa/7OYzCYmoLQGxzAM7f2LRoE4ICxE0LUHnmDtS6bXpnomF+z8WMYd1Ur/TA= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C From: Michal Orzel To: CC: Michal Orzel , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk Subject: [PATCH 4/4] xen/arm: pl011: Add SBSA UART device-tree support Date: Wed, 7 Jun 2023 11:27:27 +0200 Message-ID: <20230607092727.19654-5-michal.orzel@amd.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230607092727.19654-1-michal.orzel@amd.com> References: <20230607092727.19654-1-michal.orzel@amd.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BN8NAM11FT020:EE_|DS0PR12MB6462:EE_ X-MS-Office365-Filtering-Correlation-Id: bb995567-5812-46e7-2cf2-08db673978de X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 9SrKz96UMzrO9J2Gh0/6ejJLqJtYjeRQzXDNw1SCGUSzlc2XpIi4YvfO9AJY1MyO3BP7JQkuEaFhlnHxa3oAgJM9G64X4aeYfRlvZdJOOjsaolFlGngitbbWYzwF7T8vBXoqknM0AH0x/GTGwTmfkhOGOaGWlYNb5g3orJBcQRzxUFgcAC3oaUWhqru+5+rlZsj5zr7sOC0i0d2x5UIx3Gn2Pkqnjgqte4bpH082Lu7j+MRKjP6cVsDjXcL/fIaY9XYQw7r23Ze4cHwo2wIREqYGGZYgEmBAKJBOjCATG3kGquUJJtgJrGl8DPKt9FzV8cuRJCpapMpicoa+WDeXWSqvrH00tDFm98+PJ9IFSNHQgdV2TN5/WrXnRX6JP4Ete9RuXcyy/f38NNIOzf0cjvuPp/0NCx6xbrJ24/Mu7d6oal1OhoXmyonnRr0lsR693t1tt+Wcm8z8tfJRUvmu7Lb1gyzsd1n17FGehMtzA+eXti6FCMGv3zSSW3MY7DGor82XxppC6cx+0I3FF9T8hVxR8zVriAwdtDx7eMYz7r08k3UNAEqG0U6AIi4+cKRW57StnTeF2IBJ9jXf+F5pEFsxVxzXhNMLstxUaypL8loYlBq5hMYBUrn/BRxNXvtg5Ps+dPftgWgdcvlue24TAp5D8/f1Pg6NXzed8fWu+p0juqLf7MI0fZdI2cv7O/F+jujh8IgdQLfcsexfgGtm1yx6dxtWuV7caVk3/FrxLQgC/WS0Vma8qxDUMTaKoB2cotg/ZPVG3j61NYsJfQuomg== X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(396003)(346002)(136003)(39860400002)(376002)(451199021)(36840700001)(40470700004)(46966006)(1076003)(26005)(186003)(2616005)(426003)(336012)(83380400001)(47076005)(36756003)(6666004)(36860700001)(82310400005)(2906002)(8676002)(8936002)(54906003)(82740400003)(44832011)(478600001)(81166007)(4326008)(40480700001)(5660300002)(6916009)(316002)(40460700003)(86362001)(41300700001)(356005)(70586007)(70206006)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Jun 2023 09:27:54.1211 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: bb995567-5812-46e7-2cf2-08db673978de X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com] X-MS-Exchange-CrossTenant-AuthSource: BN8NAM11FT020.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS0PR12MB6462 We already have all the bits necessary in PL011 driver to support SBSA UART thanks to commit 032ea8c736d10f02672863c6e369338f948f7ed8 that enabled it for ACPI. Plumb in the remaining part for device-tree boot: - add arm,sbsa-uart compatible to pl011_dt_match (no need for a separate struct and DT_DEVICE_START as SBSA is a subset of PL011), - from pl011_dt_uart_init(), check for SBSA UART compatible to determine the UART type in use. Signed-off-by: Michal Orzel --- After this series the last thing not to be in spec for newer UARTs (well, for rev1.5 introduced in 2007 I believe) is incorrect FIFO size. We hardcode it to 16 but in r1.5 it is 32. This requires checking the peripheral ID register or using arm,primecell-periphid dt property for overriding HW. Something to be done in the future (at least 16 is not harmful). --- xen/drivers/char/pl011.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/xen/drivers/char/pl011.c b/xen/drivers/char/pl011.c index 403b1ac06551..f7bf3ad117af 100644 --- a/xen/drivers/char/pl011.c +++ b/xen/drivers/char/pl011.c @@ -286,7 +286,7 @@ static int __init pl011_dt_uart_init(struct dt_device_node *dev, int res; paddr_t addr, size; uint32_t io_width; - bool mmio32 = false; + bool mmio32 = false, sbsa; if ( strcmp(config, "") ) { @@ -320,7 +320,9 @@ static int __init pl011_dt_uart_init(struct dt_device_node *dev, } } - res = pl011_uart_init(res, addr, size, false, mmio32); + sbsa = dt_device_is_compatible(dev, "arm,sbsa-uart"); + + res = pl011_uart_init(res, addr, size, sbsa, mmio32); if ( res < 0 ) { printk("pl011: Unable to initialize\n"); @@ -335,6 +337,8 @@ static int __init pl011_dt_uart_init(struct dt_device_node *dev, static const struct dt_device_match pl011_dt_match[] __initconst = { DT_MATCH_COMPATIBLE("arm,pl011"), + /* No need for a separate struct as SBSA UART is a subset of PL011 */ + DT_MATCH_COMPATIBLE("arm,sbsa-uart"), { /* sentinel */ }, }; -- 2.25.1 From xen-devel-bounces@lists.xenproject.org Wed Jun 07 09:28:02 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 09:28:02 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544581.850502 (Exim 4.92) (envelope-from ) id 1q6pSU-0000UM-Ns; Wed, 07 Jun 2023 09:28:02 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544581.850502; Wed, 07 Jun 2023 09:28:02 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6pSU-0000SD-9J; Wed, 07 Jun 2023 09:28:02 +0000 Received: by outflank-mailman (input) for mailman id 544581; Wed, 07 Jun 2023 09:28:00 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6pSS-00089h-JL for xen-devel@lists.xenproject.org; Wed, 07 Jun 2023 09:28:00 +0000 Received: from NAM11-BN8-obe.outbound.protection.outlook.com (mail-bn8nam11on20600.outbound.protection.outlook.com [2a01:111:f400:7eae::600]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 956ecfd6-0515-11ee-b232-6b7b168915f2; Wed, 07 Jun 2023 11:27:56 +0200 (CEST) Received: from BN0PR10CA0025.namprd10.prod.outlook.com (2603:10b6:408:143::22) by SA1PR12MB8597.namprd12.prod.outlook.com (2603:10b6:806:251::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.36; Wed, 7 Jun 2023 09:27:53 +0000 Received: from BN8NAM11FT020.eop-nam11.prod.protection.outlook.com (2603:10b6:408:143:cafe::c) by BN0PR10CA0025.outlook.office365.com (2603:10b6:408:143::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.19 via Frontend Transport; Wed, 7 Jun 2023 09:27:53 +0000 Received: from SATLEXMB04.amd.com (165.204.84.17) by BN8NAM11FT020.mail.protection.outlook.com (10.13.176.223) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6477.23 via Frontend Transport; Wed, 7 Jun 2023 09:27:52 +0000 Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Wed, 7 Jun 2023 04:27:50 -0500 Received: from XIR-MICHALO-L1.xilinx.com (10.180.168.240) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server id 15.1.2375.34 via Frontend Transport; Wed, 7 Jun 2023 04:27:49 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 956ecfd6-0515-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=d5NxaWmhfcIBjwqdl2ZCR8gdUbJQ1d0kZbg1HfIYiV1O28f8uXe3NT3detUltOiHAf3dT+osibjO+XIe/ejs+UVjFlIIhRq+9b8C/eWMwh5s8shiNgxzlgzrjAOseaWGrEK+o2jthjMGJ7g+POPh0Fem0VX06ZTXFR27nWmJ2u+mMBxcRZbcy3aI1iEx89RzourLBIqd7NUoykgPUb6nUAXsHqOHhfGTn/G4GcpQ+U4Erp60Hpv6ETOL707DzrWS6c0yEU72ssRJdSWu0gdoiRz/m946twkJW3Q2MwgkmuutuJ8XHf3Mpsy8ysbtj1JkMkyfPRdCGfZUDe2bGL7r/A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=SCI9MwarsbRlj2FJ9hBho2GnuBuTU9RG25ioTaHG3ao=; b=SPHBuI9u3zdrWmfrZBT2sqAh38updItX+sdSX6yQzqlc+ud1RHUn16y3HYrvbY9hc9Pzu8PF4jr6sNRvEC261reWNV7Jomm4Tf2ErbY1AVzOzr4qaGusnHe70MnlF022v4U3RGet7ZCGKHC2EoYg0KKmddfhPTGgQE8MYE9Hmizl0+xRcYqT4vlO/xTAo8EZTvlTWebTG5f0DHkwXJZfRjrS0pU+8jYZ2dU071HfSIrSw9DdehBLlUCA/Drwf9QkIbOie8gbRW0Uea/z7Gx47+h0KbGSqebATug1Ab3HrzMEcFIlYx63CNbUC00pl9i6YFvb9t3HyUsABi+q6oDHfg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=SCI9MwarsbRlj2FJ9hBho2GnuBuTU9RG25ioTaHG3ao=; b=HnOMR4yPVJKKaKpTYp8eaUCROER4ZnkkiXd1ElazADmvP6lHUTnIp0S+lwj9ls4pujd6tgemDNxdkU3cbJAgGyvGYJga62wnUJfpYF+dw+XPkPUO6Epi73gqUtmmH8FLqdNrYD530nQmEV/2uNBTtigqwHsLVndXav36zmdS6dM= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C From: Michal Orzel To: CC: Michal Orzel , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk Subject: [PATCH 3/4] xen/arm: pl011: Use correct accessors Date: Wed, 7 Jun 2023 11:27:26 +0200 Message-ID: <20230607092727.19654-4-michal.orzel@amd.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230607092727.19654-1-michal.orzel@amd.com> References: <20230607092727.19654-1-michal.orzel@amd.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BN8NAM11FT020:EE_|SA1PR12MB8597:EE_ X-MS-Office365-Filtering-Correlation-Id: b9949e3a-1cb8-468d-c34f-08db6739780e X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: VEq5zneSHZgdJSAFFcnj+rIwQNozBtJj1PF9x31nRpnLIJmmu6BzOy5hBoEhhwMqzcWW3rgqBHTlHwn/fpwK5zuTn7mzsQFChxFijR9tAYRGZEgBWFDrMfFvq1J0DYyDgDtgag4J434blmqVstuA1RyDPF1VMEovLqqO63wxyhsGQF3EBAsI9EnvtzT2eFhrNLAyilmVTngVpZUfflH/x59pWyA5PNL0xO2GlS2Clhbhbo9z+LCkFiXlJRhkR2KM+0tpt4SbEc+slI9lYQvr0onVN4384/7v2PYRhINNdns9zEU6zp6MEttZJmbkwayXkwpzccR67CMpOHv2bwaFtJOQ9Aev9r1hs3l9iKF77iMoonV1+TdPJOL+lWr660g/zSybdUFNo3C+8rkz6JznhwBbB6T9ity2yUNjCqcV6xv65OPuRM8fX3CaA6wHSBtS5FE/6XTpC6xJKcftMYZ5pQ2uv2yv8CyQBwaaPnYHgq4LXFmXiXegGvHQVG4fWX6rhXjh/BklXNINre09Q0xLLG3z/wF3pVVw17OIL+3NGalXkEhjWX08aem+rCDbjXSWb6VyEo3Eil1j999UHwSswIgQOXi8ACFZCNBjs/dln1viLVPnHd1RHUAqDegSgIE42PnVQ3o1XOdJ/sajAl0M43vwaVjT7bUryhdd5XnSK+KjzCziRFw4MOlNKwHm0p2I6XQFtgk4VrARMwQyhKKi3V1jfZrNkfnCE0QH7PgZ8jZF3/vNcYJy+jcZVvPeqnlK89BDeJ5nJ0chGpiftVxi6g== X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(136003)(396003)(376002)(346002)(39860400002)(451199021)(36840700001)(46966006)(40470700004)(316002)(40460700003)(41300700001)(426003)(336012)(2616005)(83380400001)(86362001)(82310400005)(36860700001)(47076005)(186003)(44832011)(1076003)(26005)(2906002)(81166007)(356005)(82740400003)(40480700001)(5660300002)(36756003)(8676002)(8936002)(70206006)(70586007)(54906003)(478600001)(4326008)(6916009)(6666004)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Jun 2023 09:27:52.7618 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: b9949e3a-1cb8-468d-c34f-08db6739780e X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com] X-MS-Exchange-CrossTenant-AuthSource: BN8NAM11FT020.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA1PR12MB8597 At the moment, we use 32-bit only accessors (i.e. readl/writel) to match the SBSA v2.x requirement. This should not be the default case for normal PL011 where accesses shall be 8/16-bit (max register size is 16-bit). There are however implementations of this UART that can only handle 32-bit MMIO. This is advertised by dt property "reg-io-width" set to 4. Introduce new struct pl011 member mmio32 and replace pl011_{read/write} macros with static inline helpers that use 32-bit or 16-bit accessors (largest-common not to end up using different ones depending on the actual register size) according to mmio32 value. By default this property is set to false, unless: - reg-io-width is specified with value 4, - SBSA UART is in use. For now, no changes done for ACPI due to lack of testing possibilities (i.e. current behavior maintained resulting in 32-bit accesses). Signed-off-by: Michal Orzel --- xen/drivers/char/pl011.c | 53 +++++++++++++++++++++++++++++++++++----- 1 file changed, 47 insertions(+), 6 deletions(-) diff --git a/xen/drivers/char/pl011.c b/xen/drivers/char/pl011.c index 052a6512515c..403b1ac06551 100644 --- a/xen/drivers/char/pl011.c +++ b/xen/drivers/char/pl011.c @@ -41,6 +41,7 @@ static struct pl011 { /* unsigned int timeout_ms; */ /* bool_t probing, intr_works; */ bool sbsa; /* ARM SBSA generic interface */ + bool mmio32; /* 32-bit only MMIO */ } pl011_com = {0}; /* These parity settings can be ORed directly into the LCR. */ @@ -50,9 +51,30 @@ static struct pl011 { #define PARITY_MARK (PEN|SPS) #define PARITY_SPACE (PEN|EPS|SPS) -/* SBSA v2.x document requires, all reads/writes must be 32-bit accesses */ -#define pl011_read(uart, off) readl((uart)->regs + (off)) -#define pl011_write(uart, off,val) writel((val), (uart)->regs + (off)) +/* + * By default, PL011 accesses shall be done using 8/16-bit accessors to + * support legacy devices that cannot cope with 32-bit. On the other hand, + * there are implementations of PL011 that can only handle 32-bit MMIO. Also, + * SBSA v2.x requires 32-bit accesses. Note that for default case, we use + * largest-common accessors (i.e. 16-bit) not to end up using different ones + * depending on the actual register size. + */ +static inline void +pl011_write(struct pl011 *uart, unsigned int offset, unsigned int val) +{ + if ( uart->mmio32 ) + writel(val, uart->regs + offset); + else + writew(val, uart->regs + offset); +} + +static inline unsigned int pl011_read(struct pl011 *uart, unsigned int offset) +{ + if ( uart->mmio32 ) + return readl(uart->regs + offset); + + return readw(uart->regs + offset); +} static unsigned int pl011_intr_status(struct pl011 *uart) { @@ -222,7 +244,8 @@ static struct uart_driver __read_mostly pl011_driver = { .vuart_info = pl011_vuart, }; -static int __init pl011_uart_init(int irq, paddr_t addr, paddr_t size, bool sbsa) +static int __init +pl011_uart_init(int irq, paddr_t addr, paddr_t size, bool sbsa, bool mmio32) { struct pl011 *uart; @@ -233,6 +256,9 @@ static int __init pl011_uart_init(int irq, paddr_t addr, paddr_t size, bool sbsa uart->stop_bits = 1; uart->sbsa = sbsa; + /* Set 32-bit MMIO also for SBSA since v2.x requires it */ + uart->mmio32 = (mmio32 || sbsa); + uart->regs = ioremap_nocache(addr, size); if ( !uart->regs ) { @@ -259,6 +285,8 @@ static int __init pl011_dt_uart_init(struct dt_device_node *dev, const char *config = data; int res; paddr_t addr, size; + uint32_t io_width; + bool mmio32 = false; if ( strcmp(config, "") ) { @@ -280,7 +308,19 @@ static int __init pl011_dt_uart_init(struct dt_device_node *dev, return -EINVAL; } - res = pl011_uart_init(res, addr, size, false); + /* See linux Documentation/devicetree/bindings/serial/pl011.yaml */ + if ( dt_property_read_u32(dev, "reg-io-width", &io_width) ) + { + if ( io_width == 4 ) + mmio32 = true; + else if ( io_width != 1 ) + { + printk("pl011: Unsupported reg-io-width (%"PRIu32")\n", io_width); + return -EINVAL; + } + } + + res = pl011_uart_init(res, addr, size, false, mmio32); if ( res < 0 ) { printk("pl011: Unable to initialize\n"); @@ -328,8 +368,9 @@ static int __init pl011_acpi_uart_init(const void *data) /* trigger/polarity information is not available in spcr */ irq_set_type(spcr->interrupt, IRQ_TYPE_LEVEL_HIGH); + /* TODO - mmio32 proper handling (for now set to true) */ res = pl011_uart_init(spcr->interrupt, spcr->serial_port.address, - PAGE_SIZE, sbsa); + PAGE_SIZE, sbsa, true); if ( res < 0 ) { printk("pl011: Unable to initialize\n"); -- 2.25.1 From xen-devel-bounces@lists.xenproject.org Wed Jun 07 09:36:36 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 09:36:36 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544613.850518 (Exim 4.92) (envelope-from ) id 1q6paW-0003H1-AE; Wed, 07 Jun 2023 09:36:20 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544613.850518; Wed, 07 Jun 2023 09:36:20 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6paW-0003Gu-7a; Wed, 07 Jun 2023 09:36:20 +0000 Received: by outflank-mailman (input) for mailman id 544613; Wed, 07 Jun 2023 09:36:19 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6paU-0003Go-Vk for xen-devel@lists.xenproject.org; Wed, 07 Jun 2023 09:36:19 +0000 Received: from esa2.hc3370-68.iphmx.com (esa2.hc3370-68.iphmx.com [216.71.145.153]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id bfb28676-0516-11ee-b232-6b7b168915f2; Wed, 07 Jun 2023 11:36:17 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: bfb28676-0516-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686130577; h=from:to:cc:subject:date:message-id:mime-version: content-transfer-encoding; bh=MfqlRSKXjNcHMQl9hIr6JSkINcyXDDRVYu2HzQ0JtB0=; b=En3l1iuz9Qs2fybYCuaGQd8lpi+CdgfV44X/tktxd0TuSHVZZKkVjFlS iDUVk58oQNL0neztsrLwBNlpiFUYnORXyOuXCrt7kuYLtFQlIRLRwSfo0 +d7rnBFqccdWPVvVOAUtOTjQFCudrHJG8DmjZGps2NEK62bPPA3E/IZ6f E=; Authentication-Results: esa2.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none X-SBRS: 4.0 X-MesageID: 111773754 X-Ironport-Server: esa2.hc3370-68.iphmx.com X-Remote-IP: 162.221.156.123 X-Policy: $RELAYED IronPort-Data: A9a23:MEAaPKLHbTh9+0qBFE+R/JUlxSXFcZb7ZxGr2PjKsXjdYENShWMBy 2UZUTuCOaqNMWbyc9AgbY/n8RlXusfTz4NgGlRlqX01Q3x08seUXt7xwmUcnc+xBpaaEB84t ZV2hv3odp1coqr0/0/1WlTZhSAgk/rOHvykU7Ss1hlZHWdMUD0mhQ9oh9k3i4tphcnRKw6Ws Jb5rta31GWNglaYCUpKrfrbwP9TlK6q4mhA4ARhPakjUGL2zBH5MrpOfcldEFOgKmVkNrbSb /rOyri/4lTY838FYj9yuu+mGqGiaue60Tmm0hK6aYD76vRxjnVaPpIAHOgdcS9qZwChxLid/ jnvWauYEm/FNoWU8AgUvoIx/ytWZcWq85efSZSzXFD6I+QrvBIAzt03ZHzaM7H09c5RDzpK+ PwBIgk0Y06DqdmnwKmAE7NF05FLwMnDZOvzu1llxDDdS/0nXYrCU+PB4towMDUY354UW6yEP oxANGQpNU6bC/FMEg5/5JYWteGknHTgNRZfr0qYv/Ef6GnP1g1hlrPqNbI5f/TTHJwKwR3H+ z6uE2LRUzsaG87G2T28wnOKnNDFzSKqW64rC+jtnhJtqALKnTFCYPEMbnOrrP/8hkOgVtZ3L 00P5jFovaU07FasTNT2Q1u/unHslgUHR9NaHuk+6QeM4qnZ+QCUAi4DVDEpQNknv88/QXotz E2Em/vgADApu7qQIU9x7Z/N82n0Y3JMazZfO2ldF1BtD8TfTJ8bqByUSttjCaSMt9CrGR/L0 jCRl3FkruBG5SIU7JmT8VfCijOqg5HGSA8p+wnaNl6YAhNFiJ2NPNLxtwWChRpUBMPAFwTa4 iBY8ySLxLpWZaxhghBhVwnk8FuBw/+eeAPRjld0d3XK32T8oiXzFWy8DdwXGauIDirmUWWxC KMwkVkLjHO2AJdNRfEfXm5JI552pZUM7Py8PhwuUvJAY4JqaCiM9zx0aEib0gjFyRZ8z/lgZ 83HKpfwVB727JiLKhLsH4/xNpdxn0gDKZ77H8inn3xLL5LADJJqdVv1GATXNb1ohE91iA7U7 8xeJ6O3J+Z3CYXDjt3s2ddLdzgidCFrba0aXuQLLoZv1CI6QjB+YxIQqJt9E7FYc1N9z7yZr y/sAhADlTISRxTvcG23V5yqU5u3Nb4XkJ7xFXVE0YqAs5T7XbuS0Q== IronPort-HdrOrdr: A9a23:CICXH6vAlFIGZtQxAckkntPI7skCQYAji2hC6mlwRA09TyXGrb HMoB1L73/JYWgqOU3IwerwSZVpQRvnhOdICPoqTMeftWjdySqVxeRZh/qB/9SOIVyCygcw79 YGT0E6MqyPMbEYt7e73ODbKadd/DDvysnB6ImuqgYIcegpUdAe0+4QMG2m+yZNNXF77O8CZe ChD7181kGdkBosH6KG7o9pZYf+Tw6nruO4XfbOaiRK1CC+yReTrJLqGRmR2RkTFxtJ3LcZ6G DA1yDp+6m5tPm/6xnEk0ve9Y5fltfNwsZKQJXksLlWFhzcziKTIKhxUbyLuz445Mmp9VYRid HJ5zswIshp7HvVX2et5T/gwRPp3joC42LrjXWYnXzgi8rkQy9SMbsDuatpNj/ir2YwttB116 xGm0iDsYBMMB/GlCPho/DVShBDjCOP0D4fuN9Wq0YafZoVabdXo4Ba1lhSCo08ECXz751iOP VyDfvb+O1dfTqhHjfkVyhUsZqRt0YIb0+7q3s5y5eoOv9t7SpEJn4jtZUid7E7hc8Aotd/lr j52+9T5cJzp4ctHNBA7aE6MI6K4yX2MGbx2G7+GyWTKIgXf33KsJL5+7Mz+aWjf4EJ1oI7nN DbXEpfrnNaQTOjNSSi5uwAzvn2ehTxYR39jsVFo5RpsLz1Q7TmdSWFVVA1isOl5/ESGNfSVf q/MI9fR6aLFxqhJa9ZmwnlH5VCI3gXV8MY/t49RlKVu8rObonnrPbSfvrfLKfkVTwkRmT8CH 0eWyWbHrQO0mm7HnvjxBTBUXLkfULyuZp2DajB5uAWjJMAM4Vd2zJlwmhRJvv7YQGqnpZGNX eWeomX5Z9TjVPGi1r10w== X-Talos-CUID: 9a23:uBm3RmG5nCQlgtDmqmJB+hUQF8A8eETkwSnQDXSpCX1SEee8HAo= X-Talos-MUID: =?us-ascii?q?9a23=3AfRWN/wyknWPvHv1ojSMHZI2S2JWaqPWECG8fyIU?= =?us-ascii?q?BgvmFEzZPMWec3Tebe5Byfw=3D=3D?= X-IronPort-AV: E=Sophos;i="6.00,223,1681185600"; d="scan'208";a="111773754" From: Andrew Cooper To: Xen-devel CC: Andrew Cooper , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , "Stefano Stabellini" , Michal Orzel Subject: [PATCH] CI: Fix the github actions Coverity run Date: Wed, 7 Jun 2023 10:36:12 +0100 Message-ID: <20230607093612.2219286-1-andrew.cooper3@citrix.com> X-Mailer: git-send-email 2.30.2 MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit The Install step is failing with: Package python-dev is not available, but is referred to by another package. This may mean that the package is missing, has been obsoleted, or E: Package 'python-dev' has no installation candidate is only available from another source However the following packages replace it: python2-dev python2 python-dev-is-python3 which is a side effect of ubuntu-latest having changed from 20.04 to 22.04. Drop python-dev as python3-dev is already present, and used a fixed runs-on to avoid such problems in the future. Signed-off-by: Andrew Cooper --- CC: Roger Pau Monné CC: Stefano Stabellini CC: Michal Orzel Untested. This needs to be committed and wait until the next cron on the main repo (which has the appropriate secret token) for an end-to-end test. --- .github/workflows/coverity.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/coverity.yml b/.github/workflows/coverity.yml index 427fb86f947f..60ac8dee5570 100644 --- a/.github/workflows/coverity.yml +++ b/.github/workflows/coverity.yml @@ -8,7 +8,7 @@ on: jobs: coverity: - runs-on: ubuntu-latest + runs-on: ubuntu-22.04 steps: - name: Install build dependencies run: | @@ -18,7 +18,7 @@ jobs: libbz2-dev e2fslibs-dev uuid-dev ocaml \ ocaml-findlib libyajl-dev \ autoconf libtool liblzma-dev \ - python3-dev golang python-dev libsystemd-dev + python3-dev golang libsystemd-dev - uses: actions/checkout@v2 with: -- 2.30.2 From xen-devel-bounces@lists.xenproject.org Wed Jun 07 09:41:45 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 09:41:45 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544621.850528 (Exim 4.92) (envelope-from ) id 1q6pfX-0004iy-Vs; Wed, 07 Jun 2023 09:41:31 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544621.850528; Wed, 07 Jun 2023 09:41:31 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6pfX-0004ir-RV; Wed, 07 Jun 2023 09:41:31 +0000 Received: by outflank-mailman (input) for mailman id 544621; Wed, 07 Jun 2023 09:41:30 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6pfW-0004il-RY for xen-devel@lists.xenproject.org; Wed, 07 Jun 2023 09:41:30 +0000 Received: from EUR05-VI1-obe.outbound.protection.outlook.com (mail-vi1eur05on20616.outbound.protection.outlook.com [2a01:111:f400:7d00::616]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 7a4abe3e-0517-11ee-b232-6b7b168915f2; Wed, 07 Jun 2023 11:41:29 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by AS8PR04MB8979.eurprd04.prod.outlook.com (2603:10a6:20b:42e::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Wed, 7 Jun 2023 09:41:27 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.030; Wed, 7 Jun 2023 09:41:26 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 7a4abe3e-0517-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=nRYOwSUlVPCP5tY1eOTIDNqe4KBjJTg4Rkv1+LO2fAB4BmaHOOmPFV4Zlw3k7nG9doXp4tUtml0HK0JfOflrgQq4K8HfUnmrmgaigfj/8Vk/PXBbvuj0YQirQZ8VcrmqBdh2duOxBRLuTcl2E3NFjGOBX6MN/0yiDWo2eYCp0KJOE6Uqz97DGv6bgLVmn8GSVOqd5Rgu0u5sKHcZa1GfPAtcBCBUT/bqdAGyHRPTtmlRjevMpqemCtdr/B3xGosHOldavEnjL0uPz2LjbUFZvBGErv1ZCFIkuemFkZ9FqlkCRfSVV+nVH5aZG6zi+fqX52TzYi0v119z96gBlcgsQA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=VgiZ0t3JvhPPvFdp7H1rr5uqGPk/tLlbwEYKPq8KVdo=; b=LeGcxks24Lr3htX0jFIRHZxn1Sb11iKp+RCYvvJN/NClydzm6ofwFdM06ftVmhH757ipkhZQX0sjH5o4rIY2Cf7J7tSZzGzqN4u+mKh/bOfMCP2ilKGyXqynb4h5R9b0FujvP1aLfGQYeIg0qx6iBvVd6wNIlO29z2AT+9tf0JfFEqQYk8bs0ZPdHp9Ty3cDlaM/DUqLtaOMtx2fVWZhdwwjeo+9ECew7xQZWa+2k5JugZ/XG59iOg152xOvDmwWIYVMj/gHwAvIQ8PIpMRvXIIDLG7nGb6rvnva0M8nUFhysyEkyhCSxpxBbfAadFMENhYiT7efbvHU4IAUztL7kQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=VgiZ0t3JvhPPvFdp7H1rr5uqGPk/tLlbwEYKPq8KVdo=; b=bgBdqag0GRhjnzoluloTPH5Rni95/gY7G6I5+p/CWMox5Aa6PDbWL/jLJWbaGTMy/6GTwOkZsw8Kc72G2k0YrYB4b/q1MiEeUM9VPSowVU4QskheqLn8ds6rgw7MtrrNmVpCpHCKnJcjhpoUOtmQ9txI0iQcnCeo1KLXD9CRoSjJL9w41IvOh6G1SgOa/D1JOIXgnVdE0faG9U9wTaSyL5HL3K1hn9bvP+C7IiF7w1petzTZ1fyI5CaBoTQOAFxH9+8sn2ntptqJJbf01AAHKBbKZFKVHLz0QiQZHy7HdGGo0d1pmjSEfkDDKv6+sp0Trr9Agq2xkSMXNyol51+vig== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <2e194ebe-f8e8-128a-0ad6-227f8a9be976@suse.com> Date: Wed, 7 Jun 2023 11:41:24 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.11.2 Subject: Re: [PATCH v3 1/3] multiboot2: parse vga= option when setting GOP mode Content-Language: en-US To: Roger Pau Monne Cc: Andrew Cooper , Wei Liu , xen-devel@lists.xenproject.org References: <20230601130518.48874-1-roger.pau@citrix.com> <20230601130518.48874-2-roger.pau@citrix.com> From: Jan Beulich In-Reply-To: <20230601130518.48874-2-roger.pau@citrix.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR3P281CA0089.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:1f::18) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|AS8PR04MB8979:EE_ X-MS-Office365-Filtering-Correlation-Id: 81a4b34d-f951-4cd8-c42a-08db673b5d2f X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: FmCR3fuZMDSgeA7iVPbf9HdFaTgX1G6rbHtC/6GEFytPjKo5Te8ZlqfZtC/mK9/cRCmHelteWjUJeElYEPFNXqHtAVn1OUWKjAyeeybBsY7bFxnC68MMa9+l4Annf2fIdMJUrTwrzCi4dP+f1O2+e9gxY100Aq2/a7Mdqbv/WyfLx/+Gz7Gpuzsa1uYgVzseK9Q7iduk8eeesv1WVhgYTEs127CQ7LbiagiPGNlPHLrKEI8UF6TJKWgT7ldK6eroz/bUukHU0ahaAhZv09h3yBx+VCAS+qp+6G7x4IRx8MrfhYDh0EEeYGToCKMLv+VxHIquNzBzUk9C5EILrRX7hD3wHgVo7CQSHGJlujOJAs8obENQvMbgV8EgrpJGG7Gkqi16vPhHtIQ38imxHIJz46z+a3UDpEGKBG708JOcW7+WGwGQm+IQb5JRA2Szc6zfawOlkPZFVguDyW8gq6etIuEEPkqquspI2kcJbHN3yZlRhrbfdQ8OVB4kfRQcMGRYS+LEM+Veolg1HIOhOkADuO7ikuWFLQAAjTbGAlYFaWIZxPADRPfoRRyAVilQtpta2+1weIxq+DLxGf/bD9Crhv7H4pahpdwr3Q/p8E68m70ZaOvssvzTxpQZ7AHEE8Wb2z7N3DO7T9zwvIkzCT0CEQ== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(376002)(39860400002)(396003)(136003)(346002)(366004)(451199021)(478600001)(31686004)(6506007)(26005)(6512007)(54906003)(186003)(41300700001)(2906002)(2616005)(66946007)(66556008)(66476007)(38100700002)(6916009)(4326008)(53546011)(86362001)(5660300002)(83380400001)(31696002)(316002)(36756003)(8936002)(6486002)(8676002)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?djhVTmdqNUxZSTRZSDFjS3pUSGpIL0RXanhtRDJEYUNpWGpQNUQzdnphL2hO?= =?utf-8?B?V0RkYXhLNlZEMjNGbTJpb0t1ZThEekVFYzMrMWpNYi83MlpPSm1lWFArMUxz?= =?utf-8?B?WlBXZHJTRVVTVlRsbUNJSFdjTk05TXlPLy9ySTFIWGFjVDhCa3c1QzB0YzFM?= =?utf-8?B?QkMwMThXT0Y2NXJOQmdEZDl6L2J0QjNsVTJJS3N4WmZGTUQzL0s4MlA4NXJU?= =?utf-8?B?TjRiVHdZaUF5WHljQ2JJZUdqS0ljS3JJVlJpOG5BMFlQZ21UZGxSc3dLUWEx?= =?utf-8?B?ZHBJbnQrbDRqSnlzOHk5VGhQbFFUZzVhOVF4RHdObFpRalpTOWNBN3Jlb3BK?= =?utf-8?B?cDNoeVE1Y2VGTWVNT2JqUzZTcFFLaHZOZDB6YStXSXJzMnZtRkhBMXlyK3Bp?= =?utf-8?B?RFVxTWJYTk94QTNBQ002eWdSUzFqa01kZ05Ib1JPL1BCT0ZDa29iZlV1WXQ4?= =?utf-8?B?Rk5US2pmZW5oZm44U2JGOGl0UjlyZjNSRHM4SjZzM01FVEtXTzQ4dlJZRVZy?= =?utf-8?B?bzFoSGgvcmlwQ29yVkYzQjhXaktBeHl5YmkxSitQbkw0NTcxVk5xRUtRb1lN?= =?utf-8?B?SjJlLytGNHQ0ejkxTHJBWDU1QWZjSWJOUkZDeEU1Mmk1VEdHbGpGUlFPYkFp?= =?utf-8?B?bFBScDZTTG9tNVcvaFFMT05xWDVHSW1zaWVtK0NaNmsva3pxanJQUmFFUVBQ?= =?utf-8?B?SHNPOXpScnFVU0htNHAyTXZnUXl0Rm5NVXNrVnhPd2pUTE9JMzE0KzhBdHZq?= =?utf-8?B?eDFYNnRGQWNmTlI2RmxTa3Zab2xGZWg4OHBFMlN4ZG43UGxsZ3c2b1pJYVJa?= =?utf-8?B?Mnk0ZnV5ME85MGpISTVNYXZXVUhBcEVtVVZuTTBvQng0MVJtcGFnRk4rYXFa?= =?utf-8?B?azZiSGl3SWcxY2twYUdubVJTKzlKR0owZjUvdnBXRnBJakpXTG1mYytrSjVq?= =?utf-8?B?TDhsT0JmN3hhallROUFBQzhZQU8zaWkvMHVmUzBlZ1Z2Z3lMQWdqZE5FdjE0?= =?utf-8?B?ejlhUzc4Uktkemg1RnJ1KzBuaU1qczV4WURuVVVZRUtkRUdLRW4vQmk4VVht?= =?utf-8?B?M3BzMGk4QzhEZ0ovdTlIVkF5MG9pcU1RV1ZCU0t6bzBaZVFYK1RrRk5ZMVF2?= =?utf-8?B?SU5aRWticTVoZGo3Tkp1ZHpVZTdyNWxMS0VIU1RyWmRwaDUzVlVwNVJNeFpU?= =?utf-8?B?VC81clVRRUNmZjA2S2pnUmdTbUJHenpTSXN5bFJqNjY0SFhQNXFjcUFOVGgv?= =?utf-8?B?MTFwK3J6NHdXcDlWSTVDeUpCbjUyWThxZmhlZ243emdNMEZvejNTZ3BiQWtR?= =?utf-8?B?YlpPRnl5cnNmamw4SWR0SCtGK1lFVkZ5OU1LN1daN2t4c2RQeDBuUkduclVk?= =?utf-8?B?TzZ1bHplRyttUFFjeGJId0lMNXZHNzdGYW04RHFTTFJGMzVWcGw4LzhFZ0h3?= =?utf-8?B?SVN4THhLWEltcG1GOFMwNVI2MStqOWpYcUxZZmFKM0NhRG10VXFBNWx5alJi?= =?utf-8?B?MEZ0ZmJZd2wxV0NvSWZuTzUzVVc4aEVlV1A0YytHYUdpN3B2akcxSjF5ZHpa?= =?utf-8?B?VXFZZ3ZQb3lLTUxkdk5lZ0NtejJtN0ltUWJ4aFpCSGhWVC81U3pzNUJsc3o1?= =?utf-8?B?bDVrQkZBbENWUzV4YzREb0o3dFNaN3lRYjNPdVRwYUVXc2dZR0FuNkxBaWZh?= =?utf-8?B?WU0zNDBVdEQyNUNYeHdVNVlob3REdnd5eWJrc083OFdib3JjOFM0dHZIc25H?= =?utf-8?B?bGJwMm1UMGlDU1hGZDNrQnVENUhaY1FVd2NzVThQalk4UEw4RUt5cVdyUXF0?= =?utf-8?B?aDBjdEFJcWpaaSszQjhsSnc5empSdGFxRzU5TkRtb0ZnT3ZHcmFKQU5QTys0?= =?utf-8?B?UlNTYXJLQWxvTkJyalJ1OGJ5V2kreGpKTmdlNDNtZ0NsY3BMbTdmRmtqMmZx?= =?utf-8?B?R2JRVWpYbTRhdVdFQjE2MTdvSTRzd2ZOSGM4Y0Y4MnNoWHJLejJWdkl2cGV3?= =?utf-8?B?aHVDWnk0ODREZjFpNmN3Y2JtV2NKcFVaaGR4a0xNUDFmaGlpdVZYWGd2VFAz?= =?utf-8?B?TEFrUGV0VnQ0eXJXbXJyamJ2V21YMDdqQ3owM2JIbTcza2VUSmVMMDcvNHFV?= =?utf-8?Q?ol0PVWoUYVx3GFiK3EKEW+RjM?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 81a4b34d-f951-4cd8-c42a-08db673b5d2f X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Jun 2023 09:41:26.8234 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: qboTaVyBeOYk6/JVA+Y3PNMICZyD1GfbwrTsEu5xWDythzeDvJnqV8D0ldQjzcPTpj0vu8SlhQM/Zg2VTAnkUw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB8979 On 01.06.2023 15:05, Roger Pau Monne wrote: > --- a/xen/arch/x86/boot/head.S > +++ b/xen/arch/x86/boot/head.S > @@ -226,9 +226,10 @@ __efi64_mb2_start: > jmp x86_32_switch > > .Lefi_multiboot2_proto: > - /* Zero EFI SystemTable and EFI ImageHandle addresses. */ > + /* Zero EFI SystemTable, EFI ImageHandle addresses and cmdline. */ > xor %esi,%esi > xor %edi,%edi > + xor %edx,%edx While perhaps better to leave this as you have it, ... > @@ -266,6 +267,13 @@ __efi64_mb2_start: > cmove MB2_efi64_ih(%rcx),%rdi > je .Lefi_mb2_next_tag > > + /* Get command line from Multiboot2 information. */ > + cmpl $MULTIBOOT2_TAG_TYPE_CMDLINE,MB2_tag_type(%rcx) > + jne .Lno_cmdline > + lea MB2_tag_string(%rcx),%rdx > + jmp .Lefi_mb2_next_tag > +.Lno_cmdline: ... in new blocks of code I think it would be nice if commas were followed by visually separating blanks. > @@ -329,7 +337,8 @@ __efi64_mb2_start: > > /* > * efi_multiboot2() is called according to System V AMD64 ABI: > - * - IN: %rdi - EFI ImageHandle, %rsi - EFI SystemTable. > + * - IN: %rdi - EFI ImageHandle, %rsi - EFI SystemTable, > + * %rdx - MB2 cmdline > */ > call efi_multiboot2 All you obtain is a pointer to the string, which is fine from what I was able to establish, but that's not entirely obvious: The MBI structure used has a size field, so it could have been that the string isn't nul-terminated, and hence the size would also need passing. May I ask that this be mentioned at least in the description? > --- a/xen/arch/x86/efi/efi-boot.h > +++ b/xen/arch/x86/efi/efi-boot.h > @@ -786,7 +786,30 @@ static bool __init efi_arch_use_config_file(EFI_SYSTEM_TABLE *SystemTable) > > static void __init efi_arch_flush_dcache_area(const void *vaddr, UINTN size) { } > > -void __init efi_multiboot2(EFI_HANDLE ImageHandle, EFI_SYSTEM_TABLE *SystemTable) > +/* Return the first occurrence of opt in cmd. */ > +static const char __init *get_option(const char *cmd, const char *opt) > +{ > + const char *s = cmd, *o = NULL; > + > + if ( !cmd || !opt ) > + return NULL; > + > + while ( (s = strstr(s, opt)) != NULL ) > + { > + if ( s == cmd || *(s - 1) == ' ' ) Iirc I had asked before: Not allowing for at least tab? (See cmdline.c:delim_chars_comma[] for what the non-EFI parsing permits, which in turn might be going a little too far especially with permitting comma as well.) > + { > + o = s + strlen(opt); I don't think the comment ahead of the function describes this behavior, i.e. in particular the adding of the length of the option. > @@ -807,7 +830,41 @@ void __init efi_multiboot2(EFI_HANDLE ImageHandle, EFI_SYSTEM_TABLE *SystemTable > > if ( gop ) > { > - gop_mode = efi_find_gop_mode(gop, 0, 0, 0); > + const char *last = cmdline; Nit: Maybe better "cur" than "last"? > + unsigned int width = 0, height = 0, depth = 0; > + bool keep_current = false; > + > + while ( (last = get_option(last, "vga=")) != NULL ) > + { > + if ( !strncmp(last, "gfx-", 4) ) > + { > + width = simple_strtoul(last + 4, &last, 10); > + if ( *last == 'x' ) > + height = simple_strtoul(last + 1, &last, 10); > + if ( *last == 'x' ) > + depth = simple_strtoul(last + 1, &last, 10); > + if ( *last != ' ' && *last != '\t' && *last != '\0' && > + *last != ',' ) > + width = height = depth = 0; > + keep_current = false; > + } > + else if ( !strncmp(last, "current", 7) ) > + keep_current = true; > + else if ( !strncmp(last, "keep", 4) ) > + { > + /* Ignore. */ Maybe "Ignore here, handled in ..."? Jan From xen-devel-bounces@lists.xenproject.org Wed Jun 07 09:45:46 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 09:45:46 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544627.850538 (Exim 4.92) (envelope-from ) id 1q6pjc-0005OF-IZ; Wed, 07 Jun 2023 09:45:44 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544627.850538; Wed, 07 Jun 2023 09:45:44 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6pjc-0005O8-Fi; Wed, 07 Jun 2023 09:45:44 +0000 Received: by outflank-mailman (input) for mailman id 544627; Wed, 07 Jun 2023 09:45:43 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6pjb-0005O2-5K for xen-devel@lists.xenproject.org; Wed, 07 Jun 2023 09:45:43 +0000 Received: from EUR02-DB5-obe.outbound.protection.outlook.com (mail-db5eur02on2060b.outbound.protection.outlook.com [2a01:111:f400:fe12::60b]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 114b3e56-0518-11ee-b232-6b7b168915f2; Wed, 07 Jun 2023 11:45:42 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by AS8PR04MB8979.eurprd04.prod.outlook.com (2603:10a6:20b:42e::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Wed, 7 Jun 2023 09:45:40 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.030; Wed, 7 Jun 2023 09:45:40 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 114b3e56-0518-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=RbdRtPOZ1u89hqx/+u9A8/Vn+qud80V4jcjofjpKFsG9KjFGrvViRB0ju5GOipXVD2j9CNLI8585OT+23U1czlvPZg+h+lLdLy2xGLIkLjImPObI8B64AvxC8GcO5hEbJwkewDK44G/Rmygs7jY0budoK8k+K8Tw0rsBZVK6Pp3iYXICn2l/h1Fd8aafpf2uxv+ZBCK6AdC9iWvglyWEq2cy+tC3TaLW6fK8Fib/VHbwbrbbJKn/Z7IO/zKveOBDruS2HmnXsIdJ0eQdQScePfOXdnwehBIEhcd3wj21OIGC25F7UkXDb545S5MOc9kprtYQv1Io4dR8wuDXz9BKpw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=uNVouugmfcsIzMB9KzPXm+NCFnNeViitT7+nwpVyXEc=; b=WT7pW4SIAhRnBkbdJFT3bhhOO3WwMipZcOLpBENXCXOvv11KagMOGOx0Wg4GXW4k5ex7Zs15ePXDHarJ5FKXqFV3k7Iwi3QI3KpFrCB7j0cHO0p/TMe7CAjjHKSrfFrowJs4Wmm3YYJfb0SgG7LKmDLMUNJL8ksmWmbn1B3zOAQ5ZtTZ0mzf2of6ALJUF3WCtyAPvkhH1r/wgqVTrwwBy9XTt0BaVAcCZXQ+V7icru1kVXwm3TC4bXCoK3N3JEwUjNQ4zr3YUiGxJh7sXjIsA0f9bPdW1m6UsnYv9RMRYgCUMHdALuz27yYFyJkoQg7rGy50aYFVRbSLGAgycggEBw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=uNVouugmfcsIzMB9KzPXm+NCFnNeViitT7+nwpVyXEc=; b=YKUMHeQeQMqDAGLb/C/6tCSLfV172eD9ckuG816MXsgDXf4kYZaAiN5s2ZPFMhc8BNrShbDUxoZxFGLciMLLcoG+a7RRf1xE762Jw/vI5Mj8W4t6A7/Oix4oq+MkJbonkBx0363ftYPON6iY8FGqgFrWcy0Y3JgmOm497+iSm/k3ANxNtjKC9pbJH7FkmR1tjfNHrw1dBhcEV+SzciCFys2aa2gGLe/Xj4OH9UthcduGBmQ22ELVuIJhcvitrzqVG4A9QvSvB8ScP9JZgsM3rWmWBUGdWyYnhY9VaP2ICiXSEAIzFBfXIeIHZeQ3qr6+oddhvslVMQrM38Rhc8TBzw== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: Date: Wed, 7 Jun 2023 11:45:38 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.11.2 Subject: Re: [PATCH v3 2/3] multiboot2: do not set StdOut mode unconditionally Content-Language: en-US To: Roger Pau Monne Cc: Andrew Cooper , Wei Liu , xen-devel@lists.xenproject.org References: <20230601130518.48874-1-roger.pau@citrix.com> <20230601130518.48874-3-roger.pau@citrix.com> From: Jan Beulich In-Reply-To: <20230601130518.48874-3-roger.pau@citrix.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: FR0P281CA0167.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:b4::13) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|AS8PR04MB8979:EE_ X-MS-Office365-Filtering-Correlation-Id: 0a231d76-3650-4bee-e63c-08db673bf430 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: CfiEogudtXw2JWXz72XRfeutD71PiPkwSc0KpCNe5rkBDNaLPWmjyAHso2Za1QBZ1u6hw3dHBvzXldzSNTOJaYDzzKTpO5odAulyPo7XUznoV4jpGT/nrj/BMqI++NIXKJaGKop8CimPAw7uKf7HaTeTGDNL0yHyTZ0H26pSh/Eup+FDFnUS3PcLE6vOK2tP9qEoRbLaxUYRFaIb9zZG/M3l+Y1wA6r3zwv/wwu4gBnW08R36hiPq3obLc432Rh+wkWi2R1hEVPAlPbOuaCeYQh+JtNq8+tyYoI+NUjDl+KNjCHcQbPL7xQ3AraBp1VNdwpaenkL5C7ejwdEV0GP7xs5gMHB0vRhWCtKAUxqJLgeUq72cYtv3sRjuWOV53nX6FqulQ9vRJYvm6YQc8XvbDDVHCE+zWeXf886v0VTaoUW2LTiwYIxsdEUMOKVdif/VFFr9kFALuRvtdzIIaoM0svSv+r63CmBcNZrcFg3WLEENP7XR+3BDbzUsclcl0HOq4fzziQQQmtT2y+mHLjlIFgOICgBjUYht+149Y0cyGWiwRSYDunTvkAeN7cf6o1bHXlDoStW7MJsASTdMU7lGUXtz5hRjAd2lO463DOmuT8OmYdHUg50RymkIUDMRP7yMyboRHBZeq8UIxJ+sW8Q9A== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(376002)(39860400002)(396003)(136003)(346002)(366004)(451199021)(478600001)(31686004)(6506007)(26005)(6512007)(54906003)(186003)(41300700001)(2906002)(4744005)(2616005)(66946007)(66556008)(66476007)(38100700002)(6916009)(4326008)(53546011)(86362001)(5660300002)(31696002)(316002)(36756003)(8936002)(6486002)(8676002)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?SWlyUDVjM1RPanVQTmIzWFg1K0lSSmhGRXE5WnpyaGkzakp3WGsrTTV3Y3J6?= =?utf-8?B?Z2ptU1RnSTVTNisyRDk0UlJ4dFZ5QU5oK2syeHM3djJEZWRnREZJOTRhd29m?= =?utf-8?B?aUVWVFR2RHFlNVZQTEtvM2wwVEpKM2U2b2ZpdzRyZkJNVDB3Qk1VN2tNVTEz?= =?utf-8?B?RzVDS3h6N2dSMW51dkx6bUNIMW9KdXRiZ3lERXVLMlRLelhzRCtYTzdQT2N4?= =?utf-8?B?UksxZy9RcmtTNXovbkErUHFpWEhHUUxVWEt0dTRxRlRuTEI2Z3F3elBUdUJk?= =?utf-8?B?b0xLWThsNnFRUEtUK1RQM1laOXExSXZLQnRPdXdVbjFBZzN0L1Y5UU0zMnps?= =?utf-8?B?UkhLeENrS3RabVNzelpmaElpcXUzQVptMW9RQlVpbFpsZXl2NGxqZnVDTmxK?= =?utf-8?B?N3d2OTZYcVR4RURwUGlyWTN0RGYyT3VvcHB3YzQwNTBGWjZMVDZEVUc4eGNl?= =?utf-8?B?Vy9kWld5Y0dpS3dHTHNOWGUrQUdLM1Q0TFQ3MXJDN0dGbFhpcno3eVJMV0xs?= =?utf-8?B?dWxhemtVLzR3dHVQQ3FqcUc4aEc3L2Jja3l0QUZtQ2tPR0oxbjVHNVF3S2JD?= =?utf-8?B?RE1JY2VtUjdINmhPSFU2SWdsd1gyWEVFUkF1cVhCT3d6cysyWml4bFR6Yk05?= =?utf-8?B?Umt3TXVxblFTNnA3WGE5WDhrV3ZGcngrakI5K0RLUDB4aFFwOFE1eG1CZHRM?= =?utf-8?B?eUdCNE42N0ZBa0o0dmZ5a2V2M212ekh4YjQvdkYxR2grUDlMbG5HcUtaZjFE?= =?utf-8?B?dVlkMVBUVkNtUmJNZ0tsZGluM2FWWituUUM0QzE1ckx1YktjR2FTbGc4aTZl?= =?utf-8?B?SHFyMllSWS9sd2llWS9NR2tuTW0vUGkxZzIzTWk4YUhQbk9JcXorR1YrMkpq?= =?utf-8?B?ZWl3MmZYcHYzTkt2WjBYR2Jka1MrWXlkTlBCUTcwenVzS2FMUXVkVzV5aHBS?= =?utf-8?B?WlZoNjd4MVhta2ZtbjI4UnA3KzlxdTdDcWxweDRkcWhNdHlRR0FtQVBOUXZk?= =?utf-8?B?OWs3V1VNMnI5TjZaMjBYaUJyeUtBRXJLa05haklGVE5hdWY1UWNoc1ZUZGFk?= =?utf-8?B?K0JqRGs1bVhHMnFBUGgwTG5teWErbVNLNzB6NlQyVjFoSnVzcUszdE5BZVR5?= =?utf-8?B?aVlEc01nTVN1SWpiRitKcWZKaDVaT1dTdzZXSjNLc3V5UU1ieTg1M2d4c1JF?= =?utf-8?B?aDVHTUlWZ3JYbzdQVUhiMGdNS3FReFNwUmIrdkJHS2tVN0txS0FkV1FwK3lz?= =?utf-8?B?L1UrQkZOYldQTE1KUm5wNk9KbUtwaC9UVXp2K0haRU83VkVwdmpmK1VTMHBN?= =?utf-8?B?OEpxdHZ3NFNYOExHeFJhZXYyOTVqMVJEWnBZU2JDclRWNHgxMEF6TmdBdmtG?= =?utf-8?B?Z1ZadlNkSWVzS0VTWCswZUIrUEVKMUE3Ny9OUWV1SThBUnQxbUdDdFRPMGcy?= =?utf-8?B?OE83Zzg3V2V0ajMvc0JFb3BKR3FabWtCeVg0S2k4Tm5IU3MyMkRZenQ3WVIw?= =?utf-8?B?L0lpZWNzQU5GQ05jcDhxems4ankvc1VWdU0zMUh1RUtOaDJBUFY4TU52VDBQ?= =?utf-8?B?TnYvZThnVmc5UmRMMGtYdURQYTBwRHBXK0FzWWVIWEJUWlJoMGVkQ0sxSCtp?= =?utf-8?B?dVcvYmZOTVhicEtDRUtsQ2pOVTcyVEFPc3dYRzQvRXpXd3BoOTg1S0VvMUZF?= =?utf-8?B?YmpXcmoyazEyVjFqVlBobTNRRDJLN1VuTzRKOFQ4R01makhmZjFIM2VlMTJ0?= =?utf-8?B?RDN5WWpVNUpVakZGVFhTZ3l1NEFJemJuU0xmdU1NU0pqZFprMFNrTnZ1bXJk?= =?utf-8?B?MFRicUtyK0JiR0VYQnJwSWM4MXg4cTRwMU9zbDRiQmQrTzhyZzNic0hnd2wy?= =?utf-8?B?dmtHMTVGaE5BVDVOOHJwWmFlU3grZC9raTRmUVBEekszU05IaVcvNmlyMjBy?= =?utf-8?B?OFVPemYzWDdjUzRPOWMvelJSUlJIc0YxNTg4cGlXdE9GVFVxam5uVUhybDdH?= =?utf-8?B?YUU4N2dDNDhTZHdaVTEybmUyY01DbzcwMk5VSTRUM0lEditPcVlDSzlrODlQ?= =?utf-8?B?VmtMUjRRdzAzeitGL211QWdDZ3BOdjRDU29remdYd1d6MGZIeWYvWWs0TWNo?= =?utf-8?Q?GgYS1ElxrKwrWIavHgqRfZXEz?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 0a231d76-3650-4bee-e63c-08db673bf430 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Jun 2023 09:45:40.2027 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: ljr5oARV5s6vjE17mmG8l17hQXrz1m9iBEW3+nrioNo+eR0OYYXke/Wj3JfcFr65oP9jnNy8pQJabcG7QarNpw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB8979 On 01.06.2023 15:05, Roger Pau Monne wrote: > Only initialize StdOut if the current StdOut mode is unusable. This > avoids forcefully switching StdOut to the maximum supported > resolution, and thus very likely changing the GOP mode without having > first parsed the command line options. > > Signed-off-by: Roger Pau Monné > --- > The code is very similar to the approach suggested by Jan, please let > me know if you would be OK with your suggested-by tag added. I'm okay either way; I only suggested the "how", not the "that" after all. In any event Reviewed-by: Jan Beulich Jan From xen-devel-bounces@lists.xenproject.org Wed Jun 07 10:08:22 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 10:08:22 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544646.850555 (Exim 4.92) (envelope-from ) id 1q6q5G-00089S-FO; Wed, 07 Jun 2023 10:08:06 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544646.850555; Wed, 07 Jun 2023 10:08:06 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6q5G-00089L-Cb; Wed, 07 Jun 2023 10:08:06 +0000 Received: by outflank-mailman (input) for mailman id 544646; Wed, 07 Jun 2023 10:08:05 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6q5F-00089F-OM for xen-devel@lists.xenproject.org; Wed, 07 Jun 2023 10:08:05 +0000 Received: from EUR05-VI1-obe.outbound.protection.outlook.com (mail-vi1eur05on2061d.outbound.protection.outlook.com [2a01:111:f400:7d00::61d]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 3145deee-051b-11ee-b232-6b7b168915f2; Wed, 07 Jun 2023 12:08:04 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by DB9PR04MB9579.eurprd04.prod.outlook.com (2603:10a6:10:306::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.32; Wed, 7 Jun 2023 10:07:57 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.030; Wed, 7 Jun 2023 10:07:56 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 3145deee-051b-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=KQXO7hXRy46jMaL7laowhsvZPOqSh4EXdHRKiaWT4uDpmIB+oHiXk1gKf4bvKISWCba5AEZzpCxW9NklKPgqTXMCVEPvKjdaP8f5IJCZxtANVE3RXpx94HVwRDcq5qSRAKh6W7xM5JiuMO60PdSRHamb6dnSL6VJxC42Dcy/5WcqmMXM6SHx08fnlAh8ZCL7geetwZn6jKOB2M9a6+bswsLXTonnuta5w4SVvEM33q65k13IOteQk3uPfHClT2Fwu7rnKy/9pNc1IhHsYR4+JjPAykX1eshbRBU3u89UMWaabloYymmZGjeCofymaiXthOKKvyFsmbOCXGOjXvK3aQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=7aSI9lSvPAdTvYt8KMrXmfa1BHJy5GIgor8Sau9mKbI=; b=DO9sNXFpSozg8oRiZ8Us7e1Yoz1arN+OzAZflkaCN6I4x0/Ax4029jG8jF9/zge6hBwicYLRm2Zh0nqL+MdIj5hU2YdGIZ457rnO9N0Tn/G7Z6NAQULOK6XdV7MzG0Ey95M0i5ICw7v4qryO/eEW1BPbVAOWUyF8aa0PdrAAN4Fny6X/yqyu/QGpH3+sPVob+k/YLcp24/uxW9ER6wk1Yjs6ARp9Drpwtf3fftw0P/QLrPt6Dy4OUHlLZj7aELDop/ttXrMMYE9s2/ZXEVugi6vG0rW9ohY9C0clr0AeKb/63zun9gessdbljhXdjSOAhW4q6/rOLPcY8QA/CvHMlw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=7aSI9lSvPAdTvYt8KMrXmfa1BHJy5GIgor8Sau9mKbI=; b=UOH/dg3B1eA6wGWTGf2PwUbKnw2Ih1ejnu9tWQIhgVAlxM+1SxWIl2Z8lvCdAhS3NQYcPV3kedNiABzDI/8ZsIYrIiX8Le4eFJcQ3zBOXySPBM1Zf5hBKFxkNOk3g3mzv4ZDK9+tB3NcoQ7a8n/dNsYYFMJKA86VS+eeA0/Lnj2glrndfRbbz8MmRTNwJUtIyckPkGSlugEOO+S+e1D9LSr8l/WxlnyXieV6fyfebOp7J4cVofRYJ/WpggsxOXCjyoDvXC1fWfw6pbdJsiNDyx4LXcm6EkU6HuA63KqSU2WoN+mYXBng8cAFi34AEfPduUEkZ8FwxKMje7HEqbqC2A== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <0a0671ea-9209-37fc-1d9f-1c38aff45bba@suse.com> Date: Wed, 7 Jun 2023 12:07:54 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.11.2 Subject: Re: [PATCH v3 3/3] cmdline: parse multiple instances of the vga option Content-Language: en-US To: Roger Pau Monne Cc: Andrew Cooper , George Dunlap , Julien Grall , Stefano Stabellini , Wei Liu , xen-devel@lists.xenproject.org References: <20230601130518.48874-1-roger.pau@citrix.com> <20230601130518.48874-4-roger.pau@citrix.com> From: Jan Beulich In-Reply-To: <20230601130518.48874-4-roger.pau@citrix.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR0P281CA0084.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:1e::23) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|DB9PR04MB9579:EE_ X-MS-Office365-Filtering-Correlation-Id: 6563e871-0085-4a40-4a59-08db673f10b3 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: NPgvYUk8E0RGNpZE4rnDute9fsEkUiAf9OnmSofcbfqCPMq8ZNoO6vMkznb+Abnt+dB5714iAnnWjH4mTWZW4uneI4MxX4PI6QDBg4tWot3w/aaWsvl2Mar2s3wUpoGMx90B2yLvLbST5FH4GO/ZT7c+6YmHLAIWHNRld1ya1vAdmBA18vzldhsgxmd9Kp8qUjPFCxmXwz9yyBDzn6mf/v3hYIU+XRRF/5Ger4lJCgsrBQziLWJdG4rdj6S4WMCv90rmFYl4QLLzD7QxSLlSTMZV5L/X7r4jOMaiFLposVlLchZIG680uoNF4XRAmncImd5Tv/pRSir/uK29G8MULVRlQiMhP39LUPhKcsqQw3IM9oaLAhlVAK/zvIdtA1/GRMhu0YqhvlANgGi3V0D2MbM5mz6YX5XSzIUEKMFUFS1aBBWB7atN3bIZMgv/N1Onid+X1gvwmMcmgp1gA3T2M3u4tjNST8A0uvioylM4HXx+ZMUIWXvpH+zVURIdrWKTu5xUAB34O+A3X7Bm4bj10ey/E9ONlcusyUSqOsp3xTSjQdAbssUKJ5T9kQYKT6P9I6JEkx0Lpd3N63qK2/LgtnUPXQJohaTUjtHXCi6lFTsQiDJ/0H7tf3M2eb2Z3MUULQAej7mEyOql1HQq1Xc27g== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(39860400002)(376002)(366004)(396003)(136003)(346002)(451199021)(31696002)(2906002)(2616005)(36756003)(86362001)(38100700002)(6486002)(41300700001)(5660300002)(316002)(8676002)(8936002)(54906003)(478600001)(66556008)(66946007)(31686004)(66476007)(4326008)(6512007)(53546011)(6506007)(6916009)(26005)(186003)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?ZVZsWUdVNU5zOU9sUEtseUZOWVRUcS9CUTQ3VXExWlRGTGRaMmRGSjZrZHNo?= =?utf-8?B?N0tCcU05dFJHa1pJVkpSL1hwcVlYaTRHWnJERXZic0wrS0JlY3JNZUx5K0NV?= =?utf-8?B?OGJiajQ3c1M1TXdNQ0VpOTUxUURGM0pkaVpRZUdtVlo2ODJwM3plYnRCSUxm?= =?utf-8?B?emZNajZieDhWTDVOTFQ1Q1dVSFdJTUFScjBnSjZYOFpjTC9PUGlzUXpJNy9W?= =?utf-8?B?c0lUbjdPVE8yM1g5elJ3bFp6NHJuN0poVmZpK2t6WGRNS1ZiV2tNVisreXoy?= =?utf-8?B?bWl5VFVsZnZwS01pSWZQK2g2M2lYYmJxcFVPN2ZsMWlJSXZLaGpBQTVpbk85?= =?utf-8?B?aTgzN3krblZNckFFaE5wajJSYnNUWnhsYkUwcDIrcVBBOUVKeDJLWDhWd24y?= =?utf-8?B?bE1DRUU2TEJmZnpndDZ5bHJSLzRTb3BqNEVkZkFGdmpITWNUdnhWQ1VuVVRo?= =?utf-8?B?U3JUZ2ZwVmxqcHNMWHJBUkFBeEtwdFY3WUxQN096VDh6dVM0eHFaUVk0K3ZY?= =?utf-8?B?ZG5VWjRyN3dHRG9yVUhKSjZTWDRLVzFPVWRqZ21kK2ZTMGkzSlpQc3ZRQ0V6?= =?utf-8?B?bytWMGgvZ1E4cG5rVFAxT0h4ZWVmczNFZVRKU1M0QUVVOU53d1RUQ3FQMW9T?= =?utf-8?B?bVF3UlF5VnZVMHN1aERXcFdDVmtpdTVibitaSW1rL2VQWnlVV2ZFRGZadUll?= =?utf-8?B?am82VWp3cmxMMlpYTjM5Y09NOEZNb0k3UEE1Sk5UaDRrbHFZOHdjdHhvQlJ1?= =?utf-8?B?Qmx3MFg0RWFvZVBQOHY5TWFwbnlYQzI0MjNXNXRvZE9aMUNmRkgvYUs5Q1hr?= =?utf-8?B?c2FFc0pxTjlwUU0xNnZkSXY2cFlRU1dhbDFoMGVuMUtEbVovYndEN1k5amh0?= =?utf-8?B?Q3hXdkc0WjRBMFlhVnNyVVN5SWxKV2hlancrMVJEcXFPNmNjRG5iekNYUUVs?= =?utf-8?B?c0dhRFQrQ0tuZzdTclBnV0Nxejd4MGwzTGtnaHFzaHEyVXBwT3JDaHB4OExm?= =?utf-8?B?MFlSeCtiYUlFV2MraU1Ubmc4dEE0R0pOK2RCMkgrcEg4UmNIb3MxZWgxOHVm?= =?utf-8?B?TVBwVWlkTHlVSWZQQ3ZBTmFmRytnRnJXblZDTHdKYlRxWXRKM1BkcDI5WGxh?= =?utf-8?B?cVMrNGM5YnhHUXBhZklpNVgvS2xSWFlqNGtIM1AxbW4xRWRycHVQaE9zVVJw?= =?utf-8?B?WU94d1p3aHA5L3F4SjZRWkZKOElKaTVyTUgzLzR4bXBLaExuK1BsM3Z1M3dt?= =?utf-8?B?V1NYdUQ5TVNCUWJwT09DYmRSc0M2WXNqRmxSSUgyaFhDUk4xU2tpZ2dCMWll?= =?utf-8?B?eENDT3pGaktMeFRDYS9XQUNIRFFXblJFc0IvOUd3ZmpBSktackd1bE14Nmxz?= =?utf-8?B?U1hxNmJZU3doakVEellRSFdGUG1kQzJoenZOUjFIWXRLalBZbmkrQWtrWnB4?= =?utf-8?B?Z2NLVU9lTmxvcitqTHUxWXhBOFJsVFdSTjd0ZkV4YURBb0c2NVFJNzVQRGJR?= =?utf-8?B?RTV5aG9aOW5wU1RibVVOR3RzU3Jqc29wUG9HeFlDeXB6WGtNbkhpaXFPVzJ6?= =?utf-8?B?R1l4WVF1aUhuOXhna01uMXZpRThwZVJ0QzAzWko2MlJDOGtOY2dwL0FLRTVZ?= =?utf-8?B?aWtLV1YrNDA2NjkrSjhWdFZtb2dxVWVOQkpMc0UveWFvaHpGd1o0Q0dpWjFO?= =?utf-8?B?NDZYYXppdmFLK1JhendBaHM5UTYwUkJTMW1RWVdReExBdE5aZzBWRTg3RU1Y?= =?utf-8?B?Y242aHA5WWhXZTRHWGpqa3Njd0xKcHhWN3JIMlk3cndrVXJ3L2tvdzRoZUR0?= =?utf-8?B?ZHJRRXU1V2F0RnJQeUt0RFZ3cnEyWG1lckxoUDZnUWJVSGxmZnF5eWQ1bnlI?= =?utf-8?B?M04yU0dvNEQwSUR6anFYNU5BMmJCZzZ1NzJEWG9yc0EyeVlqUUlGUEF6TVZY?= =?utf-8?B?UzFQMFpWUDBEMXkxK0xRYlFRQjRLVEg4NE5aWGhteGZGaStKQTNsbWptMXV4?= =?utf-8?B?TDAzM1FHL2kwQlNZOWlrUTBhQmVIb0hCRzdKWHhkdU9Ick15L3QveHk3RkNs?= =?utf-8?B?am56NHE2c3JtUkdIdlFybEo3b3plUlZvb1g0SWw5SWtnVGRBZSt0Nk41bll4?= =?utf-8?Q?x/ihVZjWpZReQoBB1qd4cV8Oe?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 6563e871-0085-4a40-4a59-08db673f10b3 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Jun 2023 10:07:56.5182 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: JQFsuGp48pDy+jmFrGGBUb6D99/UTOVlw8jIqyNjMwzLAUWpzpvkPIMDN+2rU2Iu408Pgywd4fo6spd0y4+aog== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR04MB9579 On 01.06.2023 15:05, Roger Pau Monne wrote: > --- a/docs/misc/xen-command-line.pandoc > +++ b/docs/misc/xen-command-line.pandoc > @@ -2628,6 +2628,9 @@ with the specified width, height and depth. > `ask` option. (N.B menu modes are displayed in hex, so `` > should be a hexadecimal number) > > +Note that all the occurrences of the vga option in the command line are parsed, > +and hence later occurrences can overwrite selections done by prior ones. I'm not a native speaker, but is it perhaps more "override" that you mean? > --- a/xen/arch/x86/boot/cmdline.c > +++ b/xen/arch/x86/boot/cmdline.c > @@ -277,59 +277,58 @@ static u16 rows2vmode(unsigned int rows) > > static void vga_parse(const char *cmdline, early_boot_opts_t *ebo) > { > - const char *c; > - unsigned int tmp, vesa_depth, vesa_height, vesa_width; > - > - c = find_opt(cmdline, "vga=", true); > - > - if ( !c ) > - return; > + const char *c = cmdline; > > - ebo->boot_vid_mode = ASK_VGA; I think this needs to stay here along with the addition of the related "else if" below. Otherwise I expect behavior for e.g. a sole "vga=keep" on the command line would change (in no longer prompting for the mode to use). Jan From xen-devel-bounces@lists.xenproject.org Wed Jun 07 10:11:03 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 10:11:03 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544651.850566 (Exim 4.92) (envelope-from ) id 1q6q86-00018T-Tp; Wed, 07 Jun 2023 10:11:02 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544651.850566; Wed, 07 Jun 2023 10:11:02 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6q86-00018M-QR; Wed, 07 Jun 2023 10:11:02 +0000 Received: by outflank-mailman (input) for mailman id 544651; Wed, 07 Jun 2023 10:11:01 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6q85-00018G-EG for xen-devel@lists.xenproject.org; Wed, 07 Jun 2023 10:11:01 +0000 Received: from EUR04-HE1-obe.outbound.protection.outlook.com (mail-he1eur04on2047.outbound.protection.outlook.com [40.107.7.47]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 9974401f-051b-11ee-8611-37d641c3527e; Wed, 07 Jun 2023 12:10:59 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by PA4PR04MB7536.eurprd04.prod.outlook.com (2603:10a6:102:e1::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.32; Wed, 7 Jun 2023 10:10:30 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.030; Wed, 7 Jun 2023 10:10:30 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 9974401f-051b-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Bz8UMz/cHOLiWErazJMJ9g0Peklsk085iknONArTUNAjBv9rAAWykxp6K8dHw2HDWA0Nd3Y2rMalti46e9lcp4jYJRgUvOoKsUtpyaJq+L8l16PTkcokzrj8EtyGsBpa/uao2YcmCX0Z2/7CWdEWouVnOaK6I2bcL3Lk47yHcNMaTlrv69yC6MUUR5j2YER7NE9WPrScabaXZaAiZiA7seAhlHtpfLhlemyFAjEXLhdEEYVm5Cf5kS3P4Ubrp91OMz70XLXFBfHLhr6apiAgL/09m/ofPKeZ+RBi1xae+nzs5hB6kAHaiPPtAx46VTlaqcjb3hpmY4+8w+LN28hDMQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=TRbe3Kmu+Sx6WUUptByxwKbGx12xnGMNkv8suN/TSWE=; b=EV0VJ0I1Nm2HUA54wpwji6hSy/glMR5kwr3wsnfmRLycObbytwpAD2htFf0OCR+OhU6M51LzXVS2cK3SKoskum1RMh1yQqCwCgUoaqXgdBiLJt4fDDeG+NwKg+aj01NlvW7BpJutxPY3/pQvYgKBQOtRAeYnXIXoGf6k0kibTGVPwFV8jGsrMO5tQiYi/jPmKUbBVm3Kt/aHJWnhgDyq1amv7rSsQTAFGFGPejBbpaNIOrxfHMeEnDvYt6ZwAMwFG6TmPsShkpl1PGGsJ2FPASVhlXuBJLeIJEvy/W0zNryn2z+1I/QfYCkqCYwwdOSFW/PSiHmapA4tSnr4G9a6RQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=TRbe3Kmu+Sx6WUUptByxwKbGx12xnGMNkv8suN/TSWE=; b=XfsKTTf3Q9pSYLc0EkTHlxBOugciI1N16tycFroYr/iCF5R1Qv4uuNuSb2TCFOUNnbB9JW67kzjZ75NmI2keAct7Ej6rpB0ioEt5gW0l1IihsYFR205sFBxn1DEf4H2JROe9qXy6BghdfUhFNPYLNR8cwPkRngRdYQFxScCeK78IJUfzW+rMZrXIRLj2RgpOrXm00YzRhQ056SpC0M7UL1ey0xtgeH2E1z4f2Z5FF5UjghomkZA8nQ3SwP6nFOk3aU+365dlTdWFOPpdNgM0rUoLynTwBnCKgBXhDyLs7W93uLUcm85hr27KDEHZduYCbU39z3zHu6fjZUcFKv31ZA== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <7453fd92-0dcc-c278-df57-f119240bae65@suse.com> Date: Wed, 7 Jun 2023 12:10:28 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.11.2 Subject: Re: [PATCH v3 1/3] multiboot2: parse vga= option when setting GOP mode Content-Language: en-US To: Roger Pau Monne Cc: Andrew Cooper , Wei Liu , xen-devel@lists.xenproject.org References: <20230601130518.48874-1-roger.pau@citrix.com> <20230601130518.48874-2-roger.pau@citrix.com> From: Jan Beulich In-Reply-To: <20230601130518.48874-2-roger.pau@citrix.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR2P281CA0036.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:14::23) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|PA4PR04MB7536:EE_ X-MS-Office365-Filtering-Correlation-Id: c21e6f8f-bd48-4384-64a3-08db673f6c8f X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: a11F5hqV/E5EXFkSPfbIaTGXkLWcagTKon1ZJiQ6nwlt4nOV3SPBWqoP2ZQRlskzNVLU+Mp94Id1n8g6+6nA8mAM1q+BRPP43RgsB7DYen55LVv91CSeikkaXjZAsRa/8NdjgVZWrLmQr/seRDaPz5ZQMCCiW5ljz0h3BeRM4tRtE73J5NcQWoha1j6j3scvx06qQiCGcYk3IyMYBsbYNN8seUIUw1ofLBnb/AWnLpkGlgwqw8thgmdUkn+Wmr4Bh+UOKq4gRIRF2ZkUi/ELymB0UEmM8SS5akL9zMbJc+dccUbigMzZeprx6Dq4ytgvV8rTCjxIuTEldfflefBdAnt1IlcRRZgzhwq5AnsN7Sdw9tm+Avyb4ABAx+a1nZTwh7Mtc4qAQEfecUfZvUT6oYlnLJzb2Xl0bGkhf2J1Okfb+kCYSxP4A9zn/+wc1cTR0MR+2CbNUcUKelB8m8t2K3SRrt+8izwH+XMKz3qV89dZ+fCmG0rtKuZmY+HWQkE2//2uzNe3/g0Twz9bCWYwSLfaxMB+/Li9SuZPoUaoArZu2mZs3QXdnrKqBARd5PeVtRLDZ5RvRarzPivY7DxFERednPZ2gfF2BBp5/ITnZa57V6rbahaEZWQFGqtRX4TBQ4Vm5H9dFOlyr2KMzjMUbQ== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(366004)(396003)(376002)(346002)(39860400002)(136003)(451199021)(478600001)(54906003)(6486002)(8676002)(8936002)(4326008)(66476007)(316002)(66556008)(66946007)(31696002)(6916009)(5660300002)(41300700001)(38100700002)(86362001)(36756003)(2906002)(6512007)(26005)(186003)(6506007)(31686004)(53546011)(2616005)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?ZkFSZm45Qk9pMlIxb2hObndsYUFIOTd1Z3FnU3lUTXY5YjZ1SXNENTRsQzdl?= =?utf-8?B?T3FHWnRHaW9TbkdKOWdvREVnY2hYNUZnTlFjdnVkT2tqM0oxWUNFcnlMdS9q?= =?utf-8?B?UlZwOUdQc2IyNXEwMktXMWMrZFAwNDdYaWNRTGRoK013dXkvUnNNWHpPUngw?= =?utf-8?B?bEs1bmQ3RTROV0pHNEY4aFZHYlJUUkNiblp0VDVKdnhxQ0txRzhSNXlsWkw2?= =?utf-8?B?eDIxZDV5S1JNTnhCcXUzQmEvd1MvdVZLeEVQOU50UEVXZ2xyQlp6cTZ2eUkx?= =?utf-8?B?Y3RuUUJXVjRvQ2xINHdmajlJQzVJTmxXRUJFUzVtejh6SzBsbTY3WHNpamta?= =?utf-8?B?TWJnVVA2YS9VcTdqZm5HdHBpd1M4YnZzemoxcldJVVJqQldTYWo3VXZTMHdp?= =?utf-8?B?Z2RmbjB6a01vamhrQVc0WmlKU3dibzdMRHVCVkcyUDRLUHVRaE9GRDZ6R0oz?= =?utf-8?B?Uk0rNUIvcHdoRjZMbDFmSXJVS1VUN1pyUnd6SzJjNlQvSURlajc5WTc1a1hl?= =?utf-8?B?Y2pTY2FLNWNNL2xWMUg3TzY0R09DNVZsb2paZU5NY2F6d2c5YTl5Y1l2cFFN?= =?utf-8?B?eXU1ZjZsUy9nUFhKL2hVOWdLRjZBT0luaHNtd0ZCUm95VEZSWjVBbTdKK2kv?= =?utf-8?B?dGt3UlEwUkpEUmt1MUNRUWJqblBFakJxSUZGUnc5UWpSTEkyYVhBUVFzbGxy?= =?utf-8?B?a29QSmZSeDhlR0REcGhXRzArMURoUER2OWc4TThob2xyT2xFdk0vemVoWWxy?= =?utf-8?B?Tm9LNXZGazBxZUNFd05BOFBQZWthYWNZNEx5UURVSW56VVBmOXptSHZYMUIw?= =?utf-8?B?YmJJU2I5WEMyMXVveGp6ME1wc2QrY1FKK0pVRS9hM3N5TEcrcmkxQ203eEda?= =?utf-8?B?Wll2T3J2UFExYXFBTzNwVnlIb3dIdTVhYnF1VFh2TVg4eVZlZFdFTmwwKzhK?= =?utf-8?B?WjVjWGQvTTZUZVpMSVpNb25mdkdtQkhkU1hXcHJvQkp3REVJRGFZYVBvMWpy?= =?utf-8?B?R012NzRCdysxSzNXUk1tcEx3bVZkWXZqZ0JLYVM3eElxb1ZFSnR5aUZmdFBG?= =?utf-8?B?V1dhSFJzWk13OXJsQ200SHhnV1JBaXE3QXUyNHRNOG43Z05yL3dweExkYTRa?= =?utf-8?B?WXRFYkpUa3ZIN1pBMk5YNklLWEgrRWczMFBuWU93Slo0SjNheTRleGJrK1ht?= =?utf-8?B?ejNMS0FZY0paNjRZdStabEhGZGxTRGJ2SVJ0Um80NDFXZlpTb0ZtMDQ2SHZj?= =?utf-8?B?aVpTaWtBUk9oWlRvS2p3U1d3SzU5a3dwK014U0dDMldwMndjc0JGSEhYa3h0?= =?utf-8?B?dnFmbUx1S2lWRFNEeWYvNzRwM3loc3B4NHFDb2gyWmFJbTZ3WmY3ZERZVGZ4?= =?utf-8?B?V2lXSGw1Q3FvcWJrQkFPbW5JcXlBNnhKa3pDajFBd1VvVVNxOE5jY1VCaFM4?= =?utf-8?B?amNSNGtzYjBrdVYrY0lUVHFVcHJ3L2plUzd3Z2RVV0s1ZWEwdkNtYjUvK3F3?= =?utf-8?B?UWlBWjdQTEJmQVVHRGFmWkVUYkNKU2dPcW5JZzZhTkE1NmRrc1I3ZkxXVFZX?= =?utf-8?B?bnJrdzdxSXFpZkd3TlhvYmFrc3ZWYnUrRk9LaEhmWXNpNGVyR1B4MVNVVHVE?= =?utf-8?B?QVVuUHpyVGdEUGFyNUJQQzBGaUh0a3YraCtzaXRKell2VU1JaGsyTVg2NVF6?= =?utf-8?B?OE1FYzM5ZjhNdExPcktjSTZVaWJ5RnBWdk95VW9naGZheXhNRXVvci9xaTFN?= =?utf-8?B?ajBMRjNodUFnRjRnUW5mNGJYeldkQm1oY09OSDJ1NW1hSlR3aElmampYa1U4?= =?utf-8?B?MThDOG11eERQWXlHMitHRmw0dW1HcHR6ZmJUM200bkJKbTBScmxPY0VCNGxh?= =?utf-8?B?RSt5OW41SkVwVC9nUDQ2L3NTRkNTT29iNVJ4Szlrbkd1Nit1cFN5SFNGTXIw?= =?utf-8?B?WWd4TVVFZ0ZDQTlKdUJHcW5CTTRGalQvSC9LaGd2MGtCQUUxNXB0OE9SQkpW?= =?utf-8?B?TkEwNXFwWG80M2ozUno2MFQzZ0sva3BFV3pXcmtKemxvQWNCclEwZFlPbjFs?= =?utf-8?B?YXlpdjJ1NXpISkIwTTVQVWIxbWxNekdPWE9OVnhHR0RzYkZMWWlMOFVsZFpM?= =?utf-8?Q?DH8Qy8cQAdsARaHp07bt6diYX?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: c21e6f8f-bd48-4384-64a3-08db673f6c8f X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Jun 2023 10:10:30.6002 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: /FIqCWbJfLl/2tH1a7mpy5lVVifY7vjiOkjzn3QeJ3W6mvm4zUAeEX37gAIcf2oUFhQfrWNavowFQzwdJN0L2A== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR04MB7536 On 01.06.2023 15:05, Roger Pau Monne wrote: > @@ -807,7 +830,41 @@ void __init efi_multiboot2(EFI_HANDLE ImageHandle, EFI_SYSTEM_TABLE *SystemTable > > if ( gop ) > { > - gop_mode = efi_find_gop_mode(gop, 0, 0, 0); > + const char *last = cmdline; > + unsigned int width = 0, height = 0, depth = 0; > + bool keep_current = false; > + > + while ( (last = get_option(last, "vga=")) != NULL ) > + { > + if ( !strncmp(last, "gfx-", 4) ) > + { > + width = simple_strtoul(last + 4, &last, 10); > + if ( *last == 'x' ) > + height = simple_strtoul(last + 1, &last, 10); > + if ( *last == 'x' ) > + depth = simple_strtoul(last + 1, &last, 10); > + if ( *last != ' ' && *last != '\t' && *last != '\0' && > + *last != ',' ) You check for an appropriate terminator here. > + width = height = depth = 0; > + keep_current = false; > + } > + else if ( !strncmp(last, "current", 7) ) Don't you also need to do so here, and maybe even ... > + keep_current = true; > + else if ( !strncmp(last, "keep", 4) ) > + { > + /* Ignore. */ ... here? Jan From xen-devel-bounces@lists.xenproject.org Wed Jun 07 10:15:29 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 10:15:29 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544657.850576 (Exim 4.92) (envelope-from ) id 1q6qCB-0001oI-Iy; Wed, 07 Jun 2023 10:15:15 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544657.850576; Wed, 07 Jun 2023 10:15:15 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6qCB-0001oB-Ex; Wed, 07 Jun 2023 10:15:15 +0000 Received: by outflank-mailman (input) for mailman id 544657; Wed, 07 Jun 2023 10:15:14 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6qCA-0001o5-8D for xen-devel@lists.xenproject.org; Wed, 07 Jun 2023 10:15:14 +0000 Received: from EUR04-VI1-obe.outbound.protection.outlook.com (mail-vi1eur04on062f.outbound.protection.outlook.com [2a01:111:f400:fe0e::62f]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 301815bc-051c-11ee-8611-37d641c3527e; Wed, 07 Jun 2023 12:15:12 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by PA4PR04MB7536.eurprd04.prod.outlook.com (2603:10a6:102:e1::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.32; Wed, 7 Jun 2023 10:15:09 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.030; Wed, 7 Jun 2023 10:15:09 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 301815bc-051c-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=EhoTfTnlGWWkmwhJo60WVUsT0H3ztTG7Z8sCvRbEqr47bEwoJJ2oSdFGTv/rk0rJvLf9xqMAxiiPonxod9scYXPg3mPt9rZEDA9S7mPt9fuLwAkrgCW+VmJspYnKbC9bBeDMuDvctOGDUFq4UVRswb8cCmnTzZb3RZnVnz4zgPxchMJ1RonHhfhigh+1Qn+nPMB9KJ4/EcbAvKMZe+QxpvEuPliWqdnrDs8Vsa87xQwo66cbsP22jnhZyn1SDmZVqF8Oyq1D97+Ic/+SRUZniXLUQGGG9dttFAkXmKPKNmw3M0Hdw2YKiUwrhpP802RtYL8e+c1Z+ah73aj7f9ThxA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=+aJz+t2PSCbEWj5gihmkCGP/+VySLxHHiBzb94h11JU=; b=fTD4RDgTpox+sw1XoBApbsIQ8VbQbEFsdUjOVFSS1kIabMF0RMrdMIZjvEUQf9aypqeefUcYAuW8/8pCUFXMox6kjJuVVv6Yk5eWvxKUF5zI2XDeWKFtUHR2SYNTVLo2vi8wLuZvWiOEZmPdAfIdLkXmCyHOtxOhkDvwQuLLZq6kRzgMkt04KQ6yGAm/01MSuX55MQsoZdOle//w5rJ+RsQkpvmIu79MVCmcJDhfpHuv37wCr1WGUG2DigbWnD1l1l8Z/mrPtFyBqq914Fy7mLgLmvXqA8xKB92Bf1VD7cuAz5LIYNtV22HLf94ZZvHRXipYa74pq45J3z37PTXJ7A== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=+aJz+t2PSCbEWj5gihmkCGP/+VySLxHHiBzb94h11JU=; b=n6dH9hKsAggkWceWStVjDl2vW0ZwV6cgWitA4Wcze020U+C2VxSmWr/WyxrgRJXc0QbpegLrMqlaHHj5GWOymnqFem6PQ71lPtLpNT52xY5uucrBmKELSmMaTmWkXl0zIeiKz0RwInVsSn84ztgyOQaUYBMb+2+0mOUyEqg5dyPu/gdMEiVrsJNbaPzZcbRv83kBmhoL8vQBjbjKbukR629LBwRSpLplBOfE6xhwNdeP7lpO9zIpeX3/ZJ9I6kDB7KtxeUdu1R6TOTXyPpKqkCPxiH3bHE/1xugHtclc8csigySihDEw80eL3J5AMW7MMSosg0D1/gPighqze9NNHw== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <60fd188c-ba17-d34c-0a97-37f8e807a8fd@suse.com> Date: Wed, 7 Jun 2023 12:15:07 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.11.2 Subject: Re: [PATCH v2] livepatch: apply_alternatives() is only used for livepatch Content-Language: en-US To: Andrew Cooper Cc: Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk , Wei Liu , Julien Grall , xen-devel@lists.xenproject.org, =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= References: <20230607090120.49597-1-roger.pau@citrix.com> From: Jan Beulich In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: FR0P281CA0200.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:ad::11) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|PA4PR04MB7536:EE_ X-MS-Office365-Filtering-Correlation-Id: f10fc15b-51a9-4e52-f1b4-08db674012d3 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: iCKlCItlzoTuqj2TTj0skrYCd3hREjsApJlDc2sURZ73eIjKJ2dcbqFKhBHt4XmEFTohpxXWgmAwsoSFqTLggVskU5RdthdI3GCmBXKx88IMuMDBhY9FtXVzKLC3bi0Je/5I1UFeLhSwZBX98eAM7A/uh5a74IRGygzVhDGKkMV0H1/ZgSvIHbR4j2h18dvCte2/W5Puyh5qcJeVA9wfJOHceB9hnyF1Do0BZXwinwhELGvOFknfzobaCUKkkOXtYSrKOKXMmUviae2Xnipb1YuJBrdUz/BtulV944WYhw4jLoiAzSpf23OTnrG+f6iHa1f6KiHGnAUpdsR9P5y6/V9PsDceui4jfFe4CXYXDvO6M4YLM3+gGsHhxmUz6ngQCxgBhuxtVUge2nXquNXdxpLLYmvTeBbcXVTAHhd/VwOyKDcBv5h+qfDBFhRlsc7rBg9lJQ26weRo1MDqMTSZCa8lspBKqqUIeH0HBFQdgfsGCVZ80nnlFHPS9vGecEw3l1VYkEyDclPqvizVRPCRgnTmi/2deSIoO3WkE0oOkEvqDM5MioIvYTZp+8+joHkVYkb8NpvBckbXciwpTJ8x6zHId4iWT63SVtofkxbIdz26kfv93QD3+NGkZtfNJTz09ePD5hy+kfHWNfISwMzktg== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(366004)(396003)(376002)(346002)(39860400002)(136003)(451199021)(478600001)(54906003)(6486002)(8676002)(8936002)(4326008)(66476007)(316002)(66556008)(66946007)(31696002)(6916009)(5660300002)(41300700001)(38100700002)(86362001)(36756003)(2906002)(6512007)(26005)(186003)(6506007)(31686004)(53546011)(2616005)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?T1lWU0Z0VGNDbXFIUzB1bWFXekxmZlNMOFdmNTM2M3lGdGx3eTJWMVZkbEJC?= =?utf-8?B?YkRFVjFVSEdVNW91c015V3BRUGlubUxUN0dNMUw0UDFBcWU0Q3k5UjBKRlZn?= =?utf-8?B?SlFmSXVRa0JkcHVFeDBzTlZua0NSQU93aFFRUHl6dmNnNGJBd1ZXNzhpRms2?= =?utf-8?B?WlpUV1pKc21IaFdXRzJ3QkNJOStjVTVWM1ZHYnNKV0k3UmZMbXNmbGczK3lV?= =?utf-8?B?ZjYwWnZsQXBBTVZEZzdobXdaSjgxZGYyemtEK1NXamJpVVZ4ZGhPcDlYVVVW?= =?utf-8?B?ZEhzKzBEL1NMbHo3YldnYllFaVhQR3BwNlJUSFI1bTdlc3hKR004TnRpc0dY?= =?utf-8?B?N29pTWlUeS95QW1EVllXL3MzcE5PRW5TUUpmYUdOb3lSMlplbWJMMzc2S2RE?= =?utf-8?B?Z1hMTDJoczZ2b0hrY090VW5URVl1WG1mMW5kdTZGV1poV081TStFVStzdHFP?= =?utf-8?B?M3RBdXoxUFY2T2txb2R1QUM3QWJtaGpDNmtkVE1YbkFpWTJROWd3QTMyczhH?= =?utf-8?B?NnFPQ3RWT3ExRTk4Sjc2d2lpb2I0Snh1RFVmWC85NTVpOTRnWkY5Q2JHVG0x?= =?utf-8?B?a1o3ayt3dklpM0pVbDVYWTBFWlZlZHBETnFQNGxTKzN2TVBCdVU4M2owazBY?= =?utf-8?B?YUsyMXc3UUQ2ZVZYSmcrdWtLWThEQ2lTZGNPMytvaE5LVk00cGU4MEtRUlMr?= =?utf-8?B?Wm55UWhsbnN6NGcrS21SazY3THRmYmxZN0JNUkh0SU5LOW5jaXVMc01BL3VL?= =?utf-8?B?bmg4dU0wSnI5SnJubjZFRDRhK2UxZVlTTUFFbGxYd1FPOGdPUWpxcE1sckIw?= =?utf-8?B?SmUrbk5CYk5aSmt5Nzhhb0hEbVF3QUcwaFhSL0NHZGRXRE91VC8rbDlkcGFN?= =?utf-8?B?ZDFxMkFDU0E3aFNtbmRZVUJVNGZxeXJrMklJV1o3d2dRcTV1OU9IQ1RqT2Nt?= =?utf-8?B?ZDVTYzZiSVZKLzAzYVA0b1NZTnk3Vll1MThzWndZbUVNeGlhNEs1b2xDM0p4?= =?utf-8?B?dEE1eGxXdDBoMEJKV25ZUWZRcCs4ZDZCZmhwRG80aXJjVXJ2U25qTTNlK3pQ?= =?utf-8?B?UWZ5TERuL0d3RTFPTEdLdEF6bmc1NXkwb1BZKzFFc1ZWVU1uQXFRbWFkd05M?= =?utf-8?B?OUc1bzVDclV5TUZRTndkQkpYdUxVNTFONTZuSlNRVW9HVXd0YmlCQm8rWFRB?= =?utf-8?B?K3E4WDNINHdJNjZrNW8rUDhyeW1UdmczRWFHRE5CdzhIdmJBb042ODFoSjhM?= =?utf-8?B?VUtCL3FORkhBSVQ5SnBLcnpCWmE4NDhhaDBuTjNVS3ErSUxMVHM3WDNmM0lE?= =?utf-8?B?MjllRXh3R0JnYWVValB3WlR1cjJpcjVWZDdFZVRuZzZFaHJkZi9ZTGo0SzVm?= =?utf-8?B?ZFNMSE9oYklqdVNBUzlqY3ZVdmJpK2V1R3Voa0NwN01abmFVS3I0SVVQL1FL?= =?utf-8?B?dnRzYVFHamljVUVjL2ExMWlHSFpOdE0wSkF5QmZXcndzVVlMaHpacUs5WmVE?= =?utf-8?B?Y2RueDhETVVuY1dNMHR6OEU1MVQxN2NFT2Rqb2YwbVB0emtodUpjYmxmQzll?= =?utf-8?B?VzVwYnRwcDM2TWIxcEtFbk81dFBveGZxUG9Rd21BbmF0ZmNJbS9xNDVRdm91?= =?utf-8?B?QWsxdW4rWjFQVXdpR2JaK2pzSVBMYTY1S29HdjRldlArbmJHWWtKVGx4aWNJ?= =?utf-8?B?T3F3OHJTZzRhYWdGRlJNWGtHTU5UWlJHb2NLT1kza1hpcTgzVlhNV1NPWkFp?= =?utf-8?B?VDFKVmRtRnRIYjU5R2NnQmNXSTY5ZEE3UXNoV1krMkRHeUowWEpsUnJ6b2dq?= =?utf-8?B?bjUwSnc3dlRmOThneGxlZ21KQlRqMFRXaUd6OERlZ0ZTYmtESVVyTkdkam5s?= =?utf-8?B?Vlc2RkV6ZU9NWC9YdG9KcmQ2YkpUbHM3SEVKVFBieUx2RFZWZmZybEYzMzkv?= =?utf-8?B?SFV1QUFqVytUbnhJVy9tVk5QSHgzV1A2MkFzT0pZTHdaU1AvTEpQVDYxQ0ox?= =?utf-8?B?TmkyMFUxUHdsaG1XcnlIekUreStIKzB2aWk0QzR3YzRIdTh5Z1VNSkttUkc4?= =?utf-8?B?U0hCZ3g0MkNmeERkU0JpQkNKNmhxNDFlR1k2TWMyWmNEN3AxM3pyMVR2N3oz?= =?utf-8?Q?MYGuArQhhWryZnhytEdZroGp9?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: f10fc15b-51a9-4e52-f1b4-08db674012d3 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Jun 2023 10:15:09.5962 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: gvkqUwt4s9iKwEekn4ufj2EFpkCPqK1m9CfZwNWkFJ28qMM4tD9ndL49DiXuipJEw865vtxG/UA4zsYay7kcHw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR04MB7536 On 07.06.2023 11:19, Andrew Cooper wrote: > On 07/06/2023 10:17 am, Roger Pau Monné wrote: >> On Wed, Jun 07, 2023 at 11:10:27AM +0200, Jan Beulich wrote: >>> On 07.06.2023 11:01, Roger Pau Monne wrote: >>>> Guard it with CONFIG_LIVEPATCH. Note alternatives are applied at boot >>>> using _apply_alternatives(). >>>> >>>> Signed-off-by: Roger Pau Monné >>>> Reviewed-by: Julien Grall >>> Reviewed-by: Jan Beulich >>> albeit the implicit ack therein is only on the assumption that (apart >>> from me) it is generally deemed better ... >>> >>>> --- a/xen/arch/x86/alternative.c >>>> +++ b/xen/arch/x86/alternative.c >>>> @@ -358,11 +358,12 @@ static void init_or_livepatch _apply_alternatives(struct alt_instr *start, >>>> } >>>> } >>>> >>>> -void init_or_livepatch apply_alternatives(struct alt_instr *start, >>>> - struct alt_instr *end) >>>> +#ifdef CONFIG_LIVEPATCH >>> ... to have the #ifdef than the init_or_livepatch attribute. >> But the init_or_livepatch attribute doesn't remove the function when >> !CONFIG_LIVEPATCH, so it's not a replacement for the ifdef. >> >> IOW: it's my understanding that the purpose of init_or_livepatch is to >> add the __init attribute if livepatch is not enabled, but >> apply_alternatives() should never have the __init attribute because >> it's solely used by livepatch, it's not used at boot. > > For context, Jan you missed the MISRA call yesterday where this was > identified as an emitted-but-undeferenced function. Ah, this helps. Thanks, Jan From xen-devel-bounces@lists.xenproject.org Wed Jun 07 10:16:00 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 10:16:00 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544661.850585 (Exim 4.92) (envelope-from ) id 1q6qCj-0002J0-QD; Wed, 07 Jun 2023 10:15:49 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544661.850585; Wed, 07 Jun 2023 10:15:49 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6qCj-0002It-Nd; Wed, 07 Jun 2023 10:15:49 +0000 Received: by outflank-mailman (input) for mailman id 544661; Wed, 07 Jun 2023 10:15:48 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6qCi-0002Ig-PW for xen-devel@lists.xenproject.org; Wed, 07 Jun 2023 10:15:48 +0000 Received: from mail-lf1-x12c.google.com (mail-lf1-x12c.google.com [2a00:1450:4864:20::12c]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 4552720f-051c-11ee-b232-6b7b168915f2; Wed, 07 Jun 2023 12:15:47 +0200 (CEST) Received: by mail-lf1-x12c.google.com with SMTP id 2adb3069b0e04-4f004cc54f4so8913126e87.3 for ; Wed, 07 Jun 2023 03:15:47 -0700 (PDT) Received: from [192.168.202.197] ([94.75.70.14]) by smtp.gmail.com with ESMTPSA id p22-20020ac246d6000000b004f37b88eacfsm1770328lfo.187.2023.06.07.03.15.46 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 07 Jun 2023 03:15:46 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 4552720f-051c-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686132947; x=1688724947; h=mime-version:user-agent:content-transfer-encoding:references :in-reply-to:date:cc:to:from:subject:message-id:from:to:cc:subject :date:message-id:reply-to; bh=E5lxxK/xMpqofr08SFrgsXPsNcUoNAtV4pO/43/mWz0=; b=OaFSNwiKY9qpGYmwLRnwh3akWNUriM8AKUI//tVmJIV++Wyzsf2J2OfxfpNR6JkEIV 1gpTlxAud+b3irQez+wdYhCr2G5R76Pnj1EAVs7OVBAATvGvecPwuTch4r8QpFPFezVO I0ztHzW/gvYGNTsLhQ0FPXQLabuHS5LB+e1WkpQsdaiHG/4aHj4lI95k4k5cx8QhY9ql JzbJ9lz5J1AZ+cj1iP7t7Q991LQ+LTQntHu4Br/76Z3Qyqu/cHz0A46TFZUrTXyFQtWg c41HAZYe2VYh2H2X7tpMp17rAbbZc6JR9dlXjJ+QztXtkUG09Lk48Xx1XpUA+wyyP7Mn q19Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686132947; x=1688724947; h=mime-version:user-agent:content-transfer-encoding:references :in-reply-to:date:cc:to:from:subject:message-id:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=E5lxxK/xMpqofr08SFrgsXPsNcUoNAtV4pO/43/mWz0=; b=S35r9Rdt8M3h3lcSRQ+DfjmNMigO6CoAN/jJrhVTGIh5gpZNHLV0y7yYVTzkSLP3mQ inKKpW3/sanRzvazDn+F3lAmzd4TivFpGj6BbQH5wghgMYTEo56wx0Qe62c0BBzjqDo8 rRsmMK6JETeNXJdPKVTFjqnQa6ii5VdXW/Lli2yBQCK1CiE/uAuYwq+AkZQHLPkoz7F0 1g6SkwyGoEOuZUo+bPhG6w9C6ibl0rlwjkRsMfNzlw1sjhi62Vlz8OJQzc8tzdRZcc+N WctnGcJrjdiX4MsYDx/4xy9BEankaBvVUpUuhl3bcYxRkXeQUmq7gRC4JUjXMmiNXUYq iNTA== X-Gm-Message-State: AC+VfDwmh0lZiIinL9RCa37Vnd1wRAP1Ghz35lOb3RDmrr2KyCKvhnFq mK4J40pas33nrfZoZKmyBgg= X-Google-Smtp-Source: ACHHUZ5zDivWkYsuCppYNux00zVDtguDXRp5DgCISFRqH1dn5mNI9Eau2iDH23nBCjb3xUJjm7d33Q== X-Received: by 2002:ac2:4479:0:b0:4f3:afcc:e1bb with SMTP id y25-20020ac24479000000b004f3afcce1bbmr2072881lfl.1.1686132946711; Wed, 07 Jun 2023 03:15:46 -0700 (PDT) Message-ID: <799c7cfeca4787ce86451b2b8dfb9315310fa3e9.camel@gmail.com> Subject: Re: [PATCH v1 0/8] xen/riscv: introduce identity mapping From: Oleksii To: Jan Beulich Cc: Andrew Cooper , Bob Eshleman , Alistair Francis , Connor Davis , xen-devel@lists.xenproject.org Date: Wed, 07 Jun 2023 13:15:45 +0300 In-Reply-To: References: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable User-Agent: Evolution 3.48.2 (3.48.2-1.fc38) MIME-Version: 1.0 On Wed, 2023-06-07 at 09:49 +0200, Jan Beulich wrote: > On 06.06.2023 21:55, Oleksii Kurochko wrote: > > The patch series introduces things necessary to implement identity > > mapping: > > =C2=A0 1. Make identity mapping for _start and stack. > > =C2=A0 2. Enable MMU. > > =C2=A0 3. Jump to the virtual address world > > =C2=A0 4. Remove identity mapping for _start and stack. > >=20 > > Also current patch series introduces the calculation of physical > > offset before > > MMU is enabled as access to physical offset will be calculated > > wrong after > > MMU will be enabled because access to phys_off variable is PC- > > relative and > > in the case when linker address !=3D load address, it will cause MMU > > fault. > >=20 > > One more thing that was done is: > > =C2=A0 * Added SPDX tags. > > =C2=A0 * Added __ASSEMBLY__ guards. >=20 > These are are, aiui, a response to a comment from Andrew. Hence I > think > this wants expressing by a {Requested,Suggested,Reported}-by: tag in > the > respective patch. Thanks for a remark. ~ Oleksii > > =C2=A0 * move extern of cpu0_boot_stack to a header. > >=20 > > The reason for this patch series can be found here: > > https://lore.kernel.org/xen-devel/4e336121-fc0c-b007-bf7b-430352563d55@= citrix.com/ > >=20 > > Oleksii Kurochko (8): > > =C2=A0 xen/riscv: make sure that identity mapping isn't bigger then pag= e > > size > > =C2=A0 xen/riscv: add .sbss section to .bss > > =C2=A0 xen/riscv: introduce reset_stack() function > > =C2=A0 xen/riscv: introduce function for physical offset calculation > > =C2=A0 xen/riscv: introduce identity mapping > > =C2=A0 xen/riscv: add SPDX tags > > =C2=A0 xen/riscv: add __ASSEMBLY__ guards > > =C2=A0 xen/riscv: move extern of cpu0_boot_stack to header > >=20 > > =C2=A0xen/arch/riscv/include/asm/config.h=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0 |=C2=A0=C2=A0 2 + > > =C2=A0xen/arch/riscv/include/asm/current.h=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0 |=C2=A0=C2=A0 2 + > > =C2=A0xen/arch/riscv/include/asm/early_printk.h |=C2=A0=C2=A0 2 + > > =C2=A0xen/arch/riscv/include/asm/mm.h=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0 |=C2=A0=C2=A0 9 +- > > =C2=A0xen/arch/riscv/include/asm/page-bits.h=C2=A0=C2=A0=C2=A0 |=C2=A0= =C2=A0 2 + > > =C2=A0xen/arch/riscv/include/asm/page.h=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0 |=C2=A0=C2=A0 6 ++ > > =C2=A0xen/arch/riscv/include/asm/traps.h=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0 |=C2=A0=C2=A0 2 + > > =C2=A0xen/arch/riscv/include/asm/types.h=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0 |=C2=A0=C2=A0 2 + > > =C2=A0xen/arch/riscv/mm.c=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0 | 119 +++++++++++++++--- > > ---- > > =C2=A0xen/arch/riscv/riscv64/head.S=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 |=C2=A0 40 +++++++- > > =C2=A0xen/arch/riscv/setup.c=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 |= =C2=A0 16 +-- > > =C2=A0xen/arch/riscv/xen.lds.S=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 |=C2=A0 11 = +- > > =C2=A012 files changed, 160 insertions(+), 53 deletions(-) > >=20 >=20 From xen-devel-bounces@lists.xenproject.org Wed Jun 07 10:16:18 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 10:16:18 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544663.850595 (Exim 4.92) (envelope-from ) id 1q6qD2-0002jZ-1w; Wed, 07 Jun 2023 10:16:08 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544663.850595; Wed, 07 Jun 2023 10:16:08 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6qD1-0002jS-VY; Wed, 07 Jun 2023 10:16:07 +0000 Received: by outflank-mailman (input) for mailman id 544663; Wed, 07 Jun 2023 10:16:07 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6qD1-0002j3-2r for xen-devel@lists.xenproject.org; Wed, 07 Jun 2023 10:16:07 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6qD0-00005v-LC; Wed, 07 Jun 2023 10:16:06 +0000 Received: from [15.248.2.248] (helo=[10.24.67.28]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1q6qD0-0003WX-D8; Wed, 07 Jun 2023 10:16:06 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=Eir5h+++jJYHRdfdOVrzLvnP6Z1BdZQSacpNlu1LMXk=; b=gI5pxNMRvw9UfAqHWsSMaBU6pA iJNKF6K0D7UIdWcUjhaqMcVHpSWY//ofrBzyG40eBrptqIa9/Pr6idoVs31BFzeRAjRwfz51bTt1E VwNxVR55tAbJUUc7WYmkKdReoUHZdOwxUJWSvz+PS6wKxuID0/tqZ/oJA2uQITxsVXPY=; Message-ID: Date: Wed, 7 Jun 2023 11:16:04 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH v8 05/12] arm/sve: save/restore SVE context switch Content-Language: en-US To: Luca Fancellu , xen-devel@lists.xenproject.org Cc: bertrand.marquis@arm.com, wei.chen@arm.com, Stefano Stabellini , Volodymyr Babchuk References: <20230531072413.868673-1-luca.fancellu@arm.com> <20230531072413.868673-6-luca.fancellu@arm.com> From: Julien Grall In-Reply-To: <20230531072413.868673-6-luca.fancellu@arm.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi Luca, On 31/05/2023 08:24, Luca Fancellu wrote: > Save/restore context switch for SVE, allocate memory to contain > the Z0-31 registers whose length is maximum 2048 bits each and > FFR who can be maximum 256 bits, the allocated memory depends on > how many bits is the vector length for the domain and how many bits > are supported by the platform. > > Save P0-15 whose length is maximum 256 bits each, in this case the > memory used is from the fpregs field in struct vfp_state, > because V0-31 are part of Z0-31 and this space would have been > unused for SVE domain otherwise. > > Create zcr_el{1,2} fields in arch_vcpu, initialise zcr_el2 on vcpu > creation given the requested vector length and restore it on > context switch, save/restore ZCR_EL1 value as well. > > List import macros from Linux in README.LinuxPrimitives. > > Signed-off-by: Luca Fancellu Acked-by: Julien Grall Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Wed Jun 07 10:16:35 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 10:16:35 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544668.850605 (Exim 4.92) (envelope-from ) id 1q6qDI-0003Eu-A8; Wed, 07 Jun 2023 10:16:24 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544668.850605; Wed, 07 Jun 2023 10:16:24 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6qDI-0003Em-7G; Wed, 07 Jun 2023 10:16:24 +0000 Received: by outflank-mailman (input) for mailman id 544668; Wed, 07 Jun 2023 10:16:22 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6qDG-0002Ig-Kn for xen-devel@lists.xenproject.org; Wed, 07 Jun 2023 10:16:22 +0000 Received: from esa1.hc3370-68.iphmx.com (esa1.hc3370-68.iphmx.com [216.71.145.142]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 588aec85-051c-11ee-b232-6b7b168915f2; Wed, 07 Jun 2023 12:16:21 +0200 (CEST) Received: from mail-dm6nam10lp2109.outbound.protection.outlook.com (HELO NAM10-DM6-obe.outbound.protection.outlook.com) ([104.47.58.109]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 07 Jun 2023 06:16:18 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by BY1PR03MB7239.namprd03.prod.outlook.com (2603:10b6:a03:534::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6433.23; Wed, 7 Jun 2023 10:16:11 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606%4]) with mapi id 15.20.6455.030; Wed, 7 Jun 2023 10:16:11 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 588aec85-051c-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686132981; h=message-id:date:from:subject:to:cc:references: in-reply-to:content-transfer-encoding:mime-version; bh=/gNm6+CfLO0ptz7VZDZ41Bg8E8kNfaw4fQ4ZupxO2sE=; b=ElC/1U/el6OR1V3806C1Xnoa6a6CJzyKUVV8yWKGlmXXpqYFvZKeEKB1 LtXJEH8S7z7ScsthV+bUOVu19/3BiOQKAvP8ZeMZzu2sLj8hJSemtZ3Ze MEXoz51Dv5MTugrQdpZSO/Zr5jyVgueTgaHzpUgyqt5qz8EW8M6/IgoYv g=; X-IronPort-RemoteIP: 104.47.58.109 X-IronPort-MID: 112306542 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:vwXWz6l1zOo+WahUkKWtLEvo5gxUJ0RdPkR7XQ2eYbSJt1+Wr1Gzt xJMCDuAbvaJNGKmc4x+PITlpx9Q75XXzIAySQY+rCtjFCMWpZLJC+rCIxarNUt+DCFhoGFPt JxCN4aafKjYaleG+39B55C49SEUOZmgH+a6U6icfHgqH2eIcQ954Tp7gek1n4V0ttawBgKJq LvartbWfVSowFaYCEpNg064gE0p5KyaVA8w5ARkPqgV5ACGzhH5MbpETU2PByqgKmVrNrbSq 9brlNmR4m7f9hExPdKp+p6TnpoiG+O60aCm0xK6aoD66vRwjnVaPpUTbZLwXXx/mTSR9+2d/ f0W3XCGpaXFCYWX8AgVe0Ew/yiTpsSq8pefSZS0mZT7I0Er7xIAahihZa07FdRwxwp5PY1B3 cc8cTNScTGDvtj1npmVQdJSnochN+C+aevzulk4pd3YJdAPZMmbBonvu5pf1jp2gd1SF/HDY cZfcSBocBnLfxxIPBEQFY46m+CrwHL4dlW0qnrM/fZxvzeVkVw3ieC8WDbWUoXiqcF9t0CUv G/ZuU/+BQkXLoe3wjuZ6HO8wOTImEsXXapLTefjrqA33Af7Kmo7Fx8aaWaKuueFuhCbZf1Zc EZO3DYXlP1nnKCsZpynN/Gim1aGtBMBX9tbE8Uh9RqAjKHT5m6xBHUATzNHQMwrsokxXzNC/ kSSg9rjCDhrsbuUYXGQ7LGZqXW1Iyd9BXAGTT8JS00C+daLiJE+iFfDQ8huFIaxj8bpAnfgz jaSti88ir4Py8kR2M2GEUvvhjutot3FS1Az7wCOBma9tFohNciiepCi7kXd4bBYNoGFQ1Kdv X8C3c+D8OQJCpLLnyuIKAkQIIyUCz++GGW0qTZS81MJrlxBJ1bLkVhs3QxD IronPort-HdrOrdr: A9a23:qHY1H6HeZzNOTA3GpLqFBJHXdLJyesId70hD6qkvc3Fom52j/f xGws5x6faVslkssb8b6La90dq7MBfhHPlOkPQs1NaZLXPbUQ6TQL2KgrGSoAEIdxeOjtK1kJ 0QCJSWa+eAc2SS7/yb3ODQKb9Jrri6GeKT9J7jJh9WPH5XgspbnmJE42igYypLrUV9dPgE/M 323Ls6m9PsQwVgUu2LQl0+G8TTrdzCk5zrJTYAGh4c8QGLyRel8qTzHRS01goXF2on+8ZrzU H11yjCoomzufCyzRHRk0fV8pRtgdPkjv9OHtaFhMQ5IijlziyoeINicbufuy1dmpDn1H8a1P 335zswNcV67H3cOkmzvBvWwgHllA0j7nfzoGXo9EfLkIjcfnYXGsBBjYVWfl/y8Ew7puxx16 pNwiawq4dXJQmoplWw2/H4EzVR0makq3srluAey1ZFV5EFVbNXpYsDuGtIDZY7Gj7g4oxPKp giMCjl3ocZTbqmVQGZgoE2q+bcHkjbXy32CHTqg/blnAS/xxtCvgglLM92pAZzyHtycegH2w 3+CNUaqFh/dL5mUUtDPpZwfSKWMB24ffueChPkHb2gLtBNB07w X-Talos-CUID: =?us-ascii?q?9a23=3A6KmDJWlDAVhMMOiHPpXTRr8cUNfXOUb5lXSPPG6?= =?us-ascii?q?4MFwqFpa7QmSu4OBmiOM7zg=3D=3D?= X-Talos-MUID: =?us-ascii?q?9a23=3ATCB+UA8OJFHtClwHBVRbbcOQf9hq75iTOVsTraV?= =?us-ascii?q?YnverM3d6YRGBtQ3iFw=3D=3D?= X-IronPort-AV: E=Sophos;i="6.00,223,1681185600"; d="scan'208";a="112306542" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=dvt8SGQ+Pu8IMlGyq/FoNlD4F+N0JCOH5F6nAJabVpvXc/N6e6CdpJRcb93IHknWNiY5Rj5kNWgfAwWlakhDgHVt6oeTA0oFh6WEV7QAQPHZXfTiidrGeeAHQA2bb3SWhWyCQWXnntBeCbCAP2if+zY5ZeqJgfT23xJqo07fgShZemi6YTF5o2Mr7pT8jka1ZGj8SF5SiL0bCujm5Q40pteusZmj1P1qTIFfjTID0emu4+wsbCk2DJgq+NO6IRdVlpVTW+CXlQbD15XZ30Y3xhakSCHaAbt0uzFJcGTtzR79gA+6N68WPrm6XZii9JxC47KpxbT/AMrox+9buYOhZg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=SrwK6+fhZcohYE8jUc1dakYfq8Ws9LON8Axv9ZQrpRY=; b=VK3T92h05Ni1iD5BsGlbiAsS5e/1NHj9Q4gn0zw52C6hFm8E+JPZsQFLlHeREsWo3AW57Wd86KAueDh1DaTWUdL9Iu+ulM9bK5z5txwoYqJTGPGasTQJQLMORhuzrsf951dQEan+LMU0qUHqy97nIrKgBfcJctogmpmqjoNCmpb/oTuvauTDmNuC6QeF2EgU0fbvm2SOGqcunCxLseJq4lZAx/vYSJmMv+Y6mc0Jmsm9OATNpChUcvIXUr7bV1oEoE9WBIXtzrDtDSuqkQOWyAdRo4clQwDm7D9DULjngMgV+p+RYm3jSpfkg4DmUcieYN0YO/9xgTmjfT42OW8G0A== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=SrwK6+fhZcohYE8jUc1dakYfq8Ws9LON8Axv9ZQrpRY=; b=dRXrJU0XxEan1FCRFUopER/PcO/xrUv/dHsYWwsTUzUJgER/EX2rFcxlfbYYKDWVkhHS6o/w0xAeaByUSfeVsBE89T0vQa66rKy6tmYvu79tQ5b3/5dPS+Mbm3mb7Mz4q0zvzPrdmqiDwVLoRLAg/9jy5oO9RUpXQ0MQvK25Kyc= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: <26555c3c-f68f-c6b8-1926-7e9f35a6b820@citrix.com> Date: Wed, 7 Jun 2023 11:16:04 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 From: Andrew Cooper Subject: Re: [PATCH v3 3/3] cmdline: parse multiple instances of the vga option Content-Language: en-GB To: Jan Beulich , Roger Pau Monne Cc: George Dunlap , Julien Grall , Stefano Stabellini , Wei Liu , xen-devel@lists.xenproject.org References: <20230601130518.48874-1-roger.pau@citrix.com> <20230601130518.48874-4-roger.pau@citrix.com> <0a0671ea-9209-37fc-1d9f-1c38aff45bba@suse.com> In-Reply-To: <0a0671ea-9209-37fc-1d9f-1c38aff45bba@suse.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO4P265CA0278.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:37a::19) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|BY1PR03MB7239:EE_ X-MS-Office365-Filtering-Correlation-Id: e72e0dc1-652d-42ff-11af-08db67403737 X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: rqVxp5qWIJGDEvRrzKL5h1VsAJF0CR3ezW8yU4ZmR5m+5NsDDx/RNCSDxiej7mdXL7SfNKnN0tFzd0QQ+oJ4tMr2VprNT83HR9bFM05U0xgquPGgeVLXje+V8nsQhB8oBK9dUhd9Lsq2hkb1YAfGY7sszFqj7XclZ1uH+45WpKwuyVhSPITSbC9rmFOuNLyOV1f5CnIlpgQC3svTXjfuk6v6pAGovp/Fn+Q/uRR67zYwlnXeKsDjM3nGt8WsJsdx9GnotntQJwPQityq3iCFYSZiAIo2idIwKm2A5h04UOAE8vpHk+lG6R9ABINM54YDahX+92cxcfCXdMfm8V9+NpfI1KEIJ4psV8dxymMa4/qWPVtuNJztZ8xWGInUcZk+S5i8DS2IUqmyp6f0scWsGMs0e5Es7xIQmYxQgNvJ/YGaCtDlKju55A3vDQi4evnZUPTXDZlscRGEhG3/tqPce71sADwyHnsJIVIBcGqBMbEj3YJgq9Gp7/WJp9/D1J3hlS0xaknrrmcor53FYWsvlWWEJXMpQ+R44Rc1L6o0PgfvrAZJPZDICFCjV8eK3Rn0TRvUOexLXXNV5FX6SszOd51y+PcHb1e0B66hEEF2xXlqyAds295XbMj7MnRaqTq4RxaLT05DELrU00sIg5BVzA== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(396003)(376002)(136003)(366004)(39860400002)(346002)(451199021)(26005)(31686004)(53546011)(6512007)(41300700001)(38100700002)(186003)(6506007)(6666004)(6486002)(2616005)(478600001)(54906003)(110136005)(8936002)(66476007)(82960400001)(66556008)(316002)(6636002)(5660300002)(66946007)(4326008)(8676002)(31696002)(86362001)(2906002)(36756003)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?anJtT2dDRnhoZmZQdzBmdS80MEM3NHp0UVpRNTQ1ZjFjOU8rWTM0c3BYV21F?= =?utf-8?B?dmZ0NWJvbVZpS1pnZFBoUTJIbDRWOWg2L3FJVndZYmpDZnIrZ1VDR3RwSjlm?= =?utf-8?B?SWdLV0haODRyNStmWDI4RHpuNGlrcFgrUGx6QlNwR1JoOFQvR2pFdmt4bjZp?= =?utf-8?B?MjA3bFJERzBlVjcycVVlNVZiQ0x1MmlqVEh6WDQ1SmtWeHRqSTVtMGNsSExL?= =?utf-8?B?Q1hpS1pZTmdqSWZMbU1LMVBNeHdvUjRDUmdTUDVHeVgwdkE2NVZuQzZ1WitH?= =?utf-8?B?UHIxMnN4OGY1SWhRazZ2VjgzVlV6Smk5K09hNW9LK21jME9zTjJpVDB5N3hx?= =?utf-8?B?dEt3QWRIN3dwZkNCOUVtdFJCVEJVSjc2N096VW9BTit6bEhwd0xXa3d3Zng2?= =?utf-8?B?cVJmMzAyc0VqclE1M1RNTmM3MmRYdjEzUnRzLyszenNLNWQraS9JUUExTWNy?= =?utf-8?B?SkF2d1A5TlkwbjVIbE5UZ3RGNTdCMlozeHRrVmJSOW0vQTluUmtCa0JobDNq?= =?utf-8?B?dGtWdDJPQ3paZkxSbTVnU2QxT05IRXJ3Rkh6azg0NTJrWi9KOU1WenZEWXlT?= =?utf-8?B?Y1d4MHFOVjB1OUVBWmNuakRyY2tIV09xaWZLL2daeW0xMHg1dnRrUFhzV1Vx?= =?utf-8?B?bndLeHh0WVl5V1RZd2poOVVjaTZkbWJydFd5YzBoYTBZVlVMcENGY0RlZEp0?= =?utf-8?B?MXZ6SVVlQlRqa1hKUDJFL0xaN3dDbGJKekE3SUxjd1RKcWlwSGxVaTRqMzJB?= =?utf-8?B?bEJDald4NHFNd09KRklwWEZEVkhqaWVZdzZmK3ZOTWlWc1RkRGpVaTZydlh1?= =?utf-8?B?bXlkY0pQZitBV1U3VlErWk5GV3RwcGZxcXJSVi80K1dJR3FDVVRISDZXbCtL?= =?utf-8?B?aSt3MEp5RnRvY0svdm9rMFJjTkgvc0RpMGg4WVQvN3RlL2I4NCtUN1p3dnZX?= =?utf-8?B?Rzlza1I4a0c0cmY4OUorMGdDamtGY1RmeVFDUlQ2NWpkQ0YyZEpEWVFndE5a?= =?utf-8?B?UUx4ZC8zcVpkRldVWGp2QlQ5OUpUUG15VDZDL0tJWko4T1JJS1o5TnVLeW1W?= =?utf-8?B?ZVRJQjFPbGoxWHk4N1BEbWp5eVNSRkpQU2RIU05tei9oWmw5OVlMck5Wb21S?= =?utf-8?B?VTBhZnFBSmxMYVRiODJTQ2xrYndkMXJOT3h1eUZUaU1UWmRTNGFtV2NGeDBu?= =?utf-8?B?a1FNUm81bit0blR6ZWNiQXlHZG9vanMxVE1TRTFQekl3ZFJ4WStaQ1JrU2RV?= =?utf-8?B?ZDRKdjlDeVZSdzB5OExmTFpvY1JDd0lBbHZ3SDFYbUpyeE4vN0pvVHF5UXVM?= =?utf-8?B?eW8rcGZLdUlUdDl2K0FGSElxTUJxaWdGSXVqT0M5MzF6RkRyTi9Rb2MvUWdj?= =?utf-8?B?UzNLRGViWjM2Uml4L3g5em5BL2NraW1zMFpvRXhsUlNIMVhFZ0tDOXQza2VT?= =?utf-8?B?bVR5ejZMcWxSc2dBNG0vZFhGNHVIK2ZiVVB0NGFjc0QzSEFNMnZyNDEzc3FG?= =?utf-8?B?VjNzK1F3bkJXcm1pOElCN1hLcFZPNWxBZ3hLVWsrTmF2ZitZQWxRMkJ4YnBC?= =?utf-8?B?NUFLb0RnRzhVbDk5aC90UVIyWmVDZis2TXMvT01Ed3NMd2psZDZxdHRhbGNn?= =?utf-8?B?Y3BSZFFRaXBwVVZNTzVFT0lVWVAvdVF5N3dWMGUydFRPeG9LdENOZjhLdllR?= =?utf-8?B?M3Mxa2dVUSs3SkwxQ25MaEVleUlnMDNya0NYM1MxZ2YzZGp2aTZaR09KRG4v?= =?utf-8?B?ZUZmQlpRMXFnNU1ESGo2bUdZaGtJZzlWYjZIYnZUSmZ4aHlPQ0xJaUQ0VjZq?= =?utf-8?B?QzlXQUlUeVFmUndmNllKQWJEZU0yU0lXaUYzbnl0RzMva1l2WnZRUnFIaWhZ?= =?utf-8?B?YjNrUXF1cVZsTUpkbUV5L2EwbDNXbitBR1RnbXY0V3RwWFJsdThBSm52bXhF?= =?utf-8?B?OHNFTUlJNmR3T3ZoeXVhS1E1QlZCb1J5SFNta1hJcEF3L1VJL3JsbDFTNU5m?= =?utf-8?B?V0l1ZThqcHRFREVud2E3SENubjVRaDZiR1FPK1cvTHZsNWVlTWYweWs0VjhV?= =?utf-8?B?WW0xb3BMU1Y0dGNUeDd4bHZiZDZqaDhUQXhXS2UyT1pzYmVYZmZVbDlmWGpt?= =?utf-8?B?NFNydTR6TnVuSnFGTkM3Nit4NU9LN0xvVk0xMjRDQnJtTDNBVzVTUDRBRVp6?= =?utf-8?B?MVE9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: kj1TTHblkc0X6GgdrFGSRTO207tPxAwG7UTkAcpvTK+kIDLfK1E7aIEYiPTi3Q+9D79e36TTfXMsPmfUC21NrSZ+8jgUGxuZBwwF+r8VwBbHzjNz3TvLIJVg8NCp4irbYUn5VYMmNOpfO1f4IuqfFk/4zhsvqAe4DB8bzjokbCMUCzasn7lqz3ZHunNt5WJfyvNCdW5Uwezm90ot+75t022lezLJmRdYMco3tGYNoO4ijfJvV0I/0WyYwpiZJGsi3sC4JMdnmVUQ8aBBFIUCI0JkMVVoPUVi9dP9BiUJNJbSgq4PE9AGxjsp7y8jrPAhIGawl1wRp9kH7bINpLOZCariYRsyZTcAzTixi6SG2CwP3XHCRkevCvlSDQqbNIJ8bfqwGJVTbyyx+XqS0MOZCBqqdgAApzjeA4xJdIXco+e+ffqmL3++7oZ6MFRngj+zKCgQgtFdQo0DirVNrZWRfv0qmhGrLefqiH3IN1CON/fLb+NGNefgGQLSt+B8tq6qFUyrF8IFlw3wH2+32ixbU0pWRFRyTeJFtqqrIrvfg0bU1ImYAnxoZ1wnXJryiIRvbSWyfR4LniR3D+l0znUjmx6+t6umoUTMfVmnXf7DkB5za9kl81hafhIDMV5JgooETq/fMuiDcnlllvkLccL5NX91oGpkoLwID79M3PaapRf5DKnIjMpP6SYDTLI0+O4/mPRWiazy6tJm2m+rA+6/BmSnh0RXWbYYEaZNVSqf3Bqm+LLg0rvvW6XLaAOp1t/L+YQ0yBl596jqmLKFR7c32dwsiodU0k946ew4IydPO95qe2b/Kk4vKsuWOPZ9OUcOCs3vCnRC9ZDNPHOis69Ml5zMZpb5nERbbS1Q9oHlqJU= X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: e72e0dc1-652d-42ff-11af-08db67403737 X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Jun 2023 10:16:10.7854 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: aSLOjZdQ81Ex1j6q9aiyVvnekrDJZHcy6H/rUawbw/YAizanf7ERTS9QAmjzvN8D1RvTJot+LOSJ65g9pMEKLl+XUErQbKnWP6Zf7vlYg7M= X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY1PR03MB7239 On 07/06/2023 11:07 am, Jan Beulich wrote: > On 01.06.2023 15:05, Roger Pau Monne wrote: >> --- a/docs/misc/xen-command-line.pandoc >> +++ b/docs/misc/xen-command-line.pandoc >> @@ -2628,6 +2628,9 @@ with the specified width, height and depth. >> `ask` option. (N.B menu modes are displayed in hex, so `` >> should be a hexadecimal number) >> >> +Note that all the occurrences of the vga option in the command line are parsed, >> +and hence later occurrences can overwrite selections done by prior ones. > I'm not a native speaker, but is it perhaps more "override" that you > mean? I don't think this is appropriate to say in the cmdline docs.  Absent bugs, all command line options get parsed left->right with latest-takes-precedence. It is a bug that vga= didn't behave like this. It might be ok to say "Note, prior to Xen 4.18, only the first instance of vga= got parsed, with subsequent instances getting ignored". Explicitly calling out the default behaviour in one option does nothing but confuse things. ~Andrew From xen-devel-bounces@lists.xenproject.org Wed Jun 07 10:19:43 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 10:19:43 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544678.850615 (Exim 4.92) (envelope-from ) id 1q6qGT-00048n-Ts; Wed, 07 Jun 2023 10:19:41 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544678.850615; Wed, 07 Jun 2023 10:19:41 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6qGT-00048g-RH; Wed, 07 Jun 2023 10:19:41 +0000 Received: by outflank-mailman (input) for mailman id 544678; Wed, 07 Jun 2023 10:19:39 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6qGR-00048a-TQ for xen-devel@lists.xenproject.org; Wed, 07 Jun 2023 10:19:39 +0000 Received: from EUR04-HE1-obe.outbound.protection.outlook.com (mail-he1eur04on2050.outbound.protection.outlook.com [40.107.7.50]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id ce8c3a49-051c-11ee-8611-37d641c3527e; Wed, 07 Jun 2023 12:19:38 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by AS8PR04MB8152.eurprd04.prod.outlook.com (2603:10a6:20b:3fb::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.36; Wed, 7 Jun 2023 10:19:08 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.030; Wed, 7 Jun 2023 10:19:08 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: ce8c3a49-051c-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=RX5xisyb7K4RUWfBTnrO2bNd5t+Bhkvn4k7H6NnUNSjLzIoy+juCnwlZBPhOHRbnQaoP8T+ACxB4CnxNL/CialWsDGvy4ua2YGAOhDfLTxK3OjbbgRDEh+6lznHntVmYiNVHabzATlopzQpyHfpWrLgZl+m9gfGL7Mj25T/+4rLfTgy8t4f/5O7qBsz2ThN4B7i3tEScSTqcNSy9J/M7y6GHeIROGDY01+8mvT4qS5qx7KEmw+OD6uJ0CMlzGoL7dZD+ITonESYNqciT1sVBVUDlK60mx7tqeJj895Mx52LA5irRLNi5LNT4681V+HJC2HYKIZFcQfeFNh6sPZn+jw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=wzAetTIwQXdC7Zhwn9GtVFyz+TsaxBc7lbOayXvekiI=; b=bEhdDMvAv+67PYttWXUeBGRUEzwwzkWyaZnYw0P5Sa6rfLSohk485hiwOXdqrS7F1yEpsNNU64p7I3EwZD65oxYsEGAnfzf0Pt6hMYfsZbGfHridPiRQDMz8A2txfd7g2snnSiIKKwPmDL0xgGaMOG2WdKLrfPRoCengU2dliwZ6oe5YTRUpR0QbGtTFIC8d5y+Uikg4tVqxig75+GJ2egYTqTZ2IYVBn1h0MaoH81ZFp2n+oL+H3pMoKJFxTDb95GR0d7gx+ECw7cR16yErtInDq1U8woPevhPwyR5G/jdJVVjzIgpOjrKF4/nTNs8BRtxzpymGggzmIkU9IOSLCw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=wzAetTIwQXdC7Zhwn9GtVFyz+TsaxBc7lbOayXvekiI=; b=CN9jw7xOYzD1xi2dyWgGvULtmsqAEfUIDLLZoAdRgJMQWeFlAdV/OVS5kHYE1U8nOfAaf1Q3Ubk8efk5YxQnYVVJ9fBzkRV2ZUULwAPtznpfT1HLrBcFvhc3xtP8NJWDOySFFRH0gCk8ev+XhkpFbJVl1UF+hWS7pVq6lCl/xwoXt7McQY2twT9tCNyLurCV1T68LzCT5hIhC1L7jUqxSmm+M4i5Rjk15bk+yUQpuTU89IJ/Hrn28c3h9PPSd96MuK3MRREedhry/LywehbMdaWUD45P5ZQe3Rgr3P4B0kZ1j9Ks2RRcAhxwcr4Dec3gnpM+OYMm8vIdnud4UHV8sg== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: Date: Wed, 7 Jun 2023 12:19:06 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.11.2 Subject: Re: [PATCH v2] livepatch: apply_alternatives() is only used for livepatch Content-Language: en-US To: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= Cc: Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk , Andrew Cooper , Wei Liu , Julien Grall , xen-devel@lists.xenproject.org References: <20230607090120.49597-1-roger.pau@citrix.com> From: Jan Beulich In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: FR3P281CA0096.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:a1::8) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|AS8PR04MB8152:EE_ X-MS-Office365-Filtering-Correlation-Id: 43dc08e8-426d-44da-0ede-08db6740a152 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: HIMZs0O+3vGv2UKqd7cm2zu8VD+SIBaLkRZjTPyrZU1pL9z6PqNrV076wHIeJ1gshcZmopuXwJ2evv5yPPV5sQpMHUBZHQ5wP8IAyS2ybEliBdzkkrlfMBGAveis+uDgpQZZ7vtEsqh+faNG+pV0I5ZGSLMKp7QT5/OKL8WMWUS7Zx4RIKyYyBpt5e24RL68gaS8BIsLxSrUzF+SosiFMY3kZ4ZKvHDCC+Z7n6mJJg+A+Q2KapdLh74/Zg7yjskfYNotZFhwqVpff913iWFUzAtzwadPfr9xgowSQBA/66PsD+IdPFWilMM/wGcasdU59WVr1lofrQuk/NLEG8ji6ieHrx5ikf4XtV2ciIKGio1e0VhxtOjJ0azR6mrJ6g/gxDM8+lUo2CEOWxirWk+1yfDbErLvfBuG3nKI12xCDfu7aHy2jQj0NChz+SfEzcuJs4Z7dQfLlov7n+ggI2CYRQnhxOT5dKRL3BEMhkv/MocMIkkms+p8ATQxePobEE6OeRyvdIB8Vl5e3trrsmeo/mzlxdbmlHctSE4TUTYgm2Ihj/PVod3OKllzBJ2YHa7d6C90z0eZ3tANDxV7YmeIur7n/Hvn3yHYWnx0q1syQwh4ovEWgIrxiJmJZ1uRSceRYA8vY/Fkv0rkv7N9B7LnYA== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(366004)(39860400002)(136003)(396003)(346002)(376002)(451199021)(316002)(6486002)(41300700001)(2616005)(86362001)(31696002)(6506007)(53546011)(6512007)(186003)(26005)(2906002)(38100700002)(36756003)(5660300002)(8936002)(8676002)(66946007)(31686004)(54906003)(478600001)(6916009)(4326008)(66556008)(66476007)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?WTYySkw3S20rUzJTL3RvYzA2V3NuVjJLOE15djRHSGRoeW90YmkyODRTY0R6?= =?utf-8?B?NStEbXd1KzJ1VUdFVThLTUs4c29tSms5UUlIOEJDaXR2V0RzMVp4T2dsR1ZT?= =?utf-8?B?Z0M2amdranEzZlk5YnFhZVRpeFQxTEYxMHM4a1VDdzloZTdMQkV0a1VFRWxZ?= =?utf-8?B?U2tLcHRHZlhBd0RwZFRNem90bDB6dmo0b0RYT0wyQktuRHhnby8wODFxUWND?= =?utf-8?B?cldkWWFaMG5DMi9PVktaa2JOYTZKY2V3MnBWQ1hrR0hreVRpa3VwQzFYSW9B?= =?utf-8?B?K0NZNGh4VzFRQ2ZqQURLMk8xMmltYThYaFBKY3ZBMUNPNDdaQVYyZVBoRGdO?= =?utf-8?B?Nk5XaWoxUk1keTlpREdzUnRLYUVoSmI0blkzTDNLZENJRWNia2pkd2VDVUVk?= =?utf-8?B?bjBqRlAzQ0M3VldSZUdoajdWMlQ0OVpTaEplVjlqSGx2Z05qcHBYY1JqOFZ3?= =?utf-8?B?TDFsbS9qWUNZb25NWXJYeEhNNzhsSjMweEZxSGZ5eUZDdTl4TEhNKzNDUFpQ?= =?utf-8?B?YTVTV3FIM2VNaDc4ZExmYVFabkJJOTcrMS9DR3IzaHhxeXVUdWZDOEh2SFls?= =?utf-8?B?TU44bmhod1ZpR3FsWFVSYWtVMHNQdWJGbUl2MThWcEhZMVZqRlhRSmxGMlF4?= =?utf-8?B?WDRkbzAreFdPYUVJTXd4bGlhbDZJWCtiUG1KSUhXbmpwRUprOG1MNEdrc1lp?= =?utf-8?B?QzdzMCt3UUhDR3RoNS9jTS9DV3h3dnY4Vk03MHJ4c0ZCNUdaRnR3d1dWQkRm?= =?utf-8?B?ZHExaDZxZFhHQTBJYzJZWVZPNUtNek1HT2UwT204RWJoMUltUmJMQVRubnZn?= =?utf-8?B?d0hmNFdlejNJamdGVUFIaXlpeEFWZkxkM1VSdC9QOWVmaUI0bDY5dnZZM2xZ?= =?utf-8?B?TkVNcTRJL2JvYUhDK0pzTit3V3QrRmI0VHlRQTlmeTkxWk1qNS9OTHQ0dk41?= =?utf-8?B?UHM2K0hmZVdqYkx6RU40bFBPYi8rblI0ZXkvQ1dXUWxiVWxwRFVrUTFpUDQ1?= =?utf-8?B?Y1Npb0sxSVlkMTZmNlZlWmJiYndUbFg3a1V2cHVldnAxS3JZTEJHeWNLUEdF?= =?utf-8?B?WW8yY1VoRDdKZmtTemtmQXlCcXBtTFA4MWJraVpkdWdmTW1xcUFpaWZOZmlR?= =?utf-8?B?dEJadFoyRG84dzZKOEx0OUhXUHhrMlhhL2hkZHUzUDFwMDNLc3U5c296RmZW?= =?utf-8?B?ckRWaE9LZURYVW5kYThtUWNsV2o2cURVMjZ2dDlaU1FHWnd0Umc3bk8raUYx?= =?utf-8?B?akdobGNlaWZ6Kzg1d2ZJQTFvemlEZUxyWUtldjlLYWpDeENmaW0rRit4NVdw?= =?utf-8?B?UHdJMFp3YWpJcVVxN3p4Nlh1YlF1WFMvaUdRa3EzUlJpdWtycTNWSklWRkxr?= =?utf-8?B?ZWpJNm1naFJPanFlYnNEN3FNZVFkQlJxMWVVRE5ZOFRCVTQ4Ym5aOGFUbjdM?= =?utf-8?B?anVCcXJJMnlWT0xvOGVBRjVGR0Z1Wkw2emRmeDN3dkZ2RnZCRFJvUlN6TXBw?= =?utf-8?B?U3BRSXc2enBkeUFyUTBkZGFoVzRyU0tlVUNnVUc4Z2gzTG11dmJOU2c5N2VR?= =?utf-8?B?UXdyZEhVT2dSSTluSTVYYXh0OVd1Y1FIcHJoSVgyL0JGQmNJdW52WGs0dURz?= =?utf-8?B?ckowMk5VNmRBSnBTQ0dHMGNjRmo5QU1rLy9uVnhnUWlHbDNLOXg1MllsZURs?= =?utf-8?B?eVY2RGY4SFEyMTNaOUtPMjRjVTBtYzBSWW9RVmFzbUY5S0hFWTh1ZHBTeGxv?= =?utf-8?B?cjg1M0VOQzdBT1NwbTdyRmtHdm90NVRmNUdHSFZlTUE5OVJvOTFFUzVFZGxt?= =?utf-8?B?eThjOXRYbXk2OGRTSTkvTlp2TWxma2hhcDE3YjBFZGFvNGcrOHRBd1NYSkJX?= =?utf-8?B?Zm5Vd2lYRUYwTThwOVdnM0FFaGoyVjdha1pBWnZaZEVvZW5sSnlHaVJrblFZ?= =?utf-8?B?ZXk3RkE2RDJBQnlvTTlrajAwODN3bDdySEtFR05NVCsya3hid1BmQnpZR0xD?= =?utf-8?B?dERjLzRzWXY1Yzk5V0tJZnRYQnBOdnJiTWh1RDQreXJ3WjRBNHByaSszNGFP?= =?utf-8?B?TEVGd1g0VGtsZDRzVm0rRDQzdW1MRkEyc0FmOVBldXpOTUdhWGhDazVncmsw?= =?utf-8?Q?PWvByyLkHYWZe1IIYUtJPbBNe?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 43dc08e8-426d-44da-0ede-08db6740a152 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Jun 2023 10:19:08.6181 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: rmZQ7OKBNmwKqnBHn6+/4ieQ5dnnDdT/8F6gwvYzbbOZsrY8aakTFK17L2l8eKlRko2/a05pI+OI1PjmRWtjYg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB8152 On 07.06.2023 11:17, Roger Pau Monné wrote: > On Wed, Jun 07, 2023 at 11:10:27AM +0200, Jan Beulich wrote: >> On 07.06.2023 11:01, Roger Pau Monne wrote: >>> Guard it with CONFIG_LIVEPATCH. Note alternatives are applied at boot >>> using _apply_alternatives(). >>> >>> Signed-off-by: Roger Pau Monné >>> Reviewed-by: Julien Grall >> >> Reviewed-by: Jan Beulich >> albeit the implicit ack therein is only on the assumption that (apart >> from me) it is generally deemed better ... >> >>> --- a/xen/arch/x86/alternative.c >>> +++ b/xen/arch/x86/alternative.c >>> @@ -358,11 +358,12 @@ static void init_or_livepatch _apply_alternatives(struct alt_instr *start, >>> } >>> } >>> >>> -void init_or_livepatch apply_alternatives(struct alt_instr *start, >>> - struct alt_instr *end) >>> +#ifdef CONFIG_LIVEPATCH >> >> ... to have the #ifdef than the init_or_livepatch attribute. > > But the init_or_livepatch attribute doesn't remove the function when > !CONFIG_LIVEPATCH, Yes up to here. > so it's not a replacement for the ifdef. That depends how you look at it. We don't meaningfully care about a few extra bytes in .init.text, I think. So it really is the Misra requirement of not having unreferenced symbols which makes the difference here. Jan From xen-devel-bounces@lists.xenproject.org Wed Jun 07 10:20:11 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 10:20:11 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544681.850626 (Exim 4.92) (envelope-from ) id 1q6qGx-0005SN-8Q; Wed, 07 Jun 2023 10:20:11 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544681.850626; Wed, 07 Jun 2023 10:20:11 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6qGx-0005SG-3w; Wed, 07 Jun 2023 10:20:11 +0000 Received: by outflank-mailman (input) for mailman id 544681; Wed, 07 Jun 2023 10:20:09 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6qGv-0005S0-HK for xen-devel@lists.xenproject.org; Wed, 07 Jun 2023 10:20:09 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6qGu-0000BQ-U0; Wed, 07 Jun 2023 10:20:08 +0000 Received: from [15.248.2.248] (helo=[10.24.67.28]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1q6qGu-0003bS-OI; Wed, 07 Jun 2023 10:20:08 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=aBsd4w/ulCOyoxi6G1xdN8lfydwrXFh6SHWU1DVOGwY=; b=4AeN+jcDJKMwsgF0UePD75EeGk WJsAgxjL3XQd837Is4tFELLUeggZa2+RIhqfDfVSdUttt2xj8LHqI+ikpIf2VX6/Hrlu14fRONIEM FiakolxWJby/qDtCyECtVnfBDaKbu0DB1o5sn4rIgN5dQiWTOikqlrQme/U57Ln4MkTw=; Message-ID: <2c1399c7-458a-61cd-fa81-945c96383210@xen.org> Date: Wed, 7 Jun 2023 11:20:06 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH v1 6/8] xen/riscv: add SPDX tags Content-Language: en-US To: Oleksii Kurochko , xen-devel@lists.xenproject.org Cc: Jan Beulich , Andrew Cooper , Bob Eshleman , Alistair Francis , Connor Davis References: <1034fa44a9b589a18f89b7849877c00ee0a362d5.1686080337.git.oleksii.kurochko@gmail.com> From: Julien Grall In-Reply-To: <1034fa44a9b589a18f89b7849877c00ee0a362d5.1686080337.git.oleksii.kurochko@gmail.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi Oleksii, On 06/06/2023 20:55, Oleksii Kurochko wrote: > Signed-off-by: Oleksii Kurochko > --- > xen/arch/riscv/include/asm/config.h | 2 ++ > xen/arch/riscv/include/asm/current.h | 2 ++ > xen/arch/riscv/include/asm/early_printk.h | 2 ++ > xen/arch/riscv/include/asm/mm.h | 2 ++ > xen/arch/riscv/include/asm/page-bits.h | 2 ++ > xen/arch/riscv/include/asm/page.h | 2 ++ > xen/arch/riscv/include/asm/traps.h | 2 ++ > xen/arch/riscv/include/asm/types.h | 2 ++ > xen/arch/riscv/mm.c | 2 ++ > xen/arch/riscv/setup.c | 2 ++ > 10 files changed, 20 insertions(+) > > diff --git a/xen/arch/riscv/include/asm/config.h b/xen/arch/riscv/include/asm/config.h > index 38862df0b8..3ae35f57b3 100644 > --- a/xen/arch/riscv/include/asm/config.h > +++ b/xen/arch/riscv/include/asm/config.h > @@ -1,3 +1,5 @@ > +/* SPDX-License-Identifier: GPL-2.0-or-later */ The default license for Xen is GPL-2.0-only. So any particular reason to diverge? Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Wed Jun 07 10:28:34 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 10:28:34 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544688.850636 (Exim 4.92) (envelope-from ) id 1q6qOo-0006B5-0U; Wed, 07 Jun 2023 10:28:18 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544688.850636; Wed, 07 Jun 2023 10:28:17 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6qOn-0006Ay-To; Wed, 07 Jun 2023 10:28:17 +0000 Received: by outflank-mailman (input) for mailman id 544688; Wed, 07 Jun 2023 10:28:16 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6qOm-0006As-Im for xen-devel@lists.xenproject.org; Wed, 07 Jun 2023 10:28:16 +0000 Received: from esa4.hc3370-68.iphmx.com (esa4.hc3370-68.iphmx.com [216.71.155.144]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 005658bb-051e-11ee-8611-37d641c3527e; Wed, 07 Jun 2023 12:28:12 +0200 (CEST) Received: from mail-co1nam11lp2176.outbound.protection.outlook.com (HELO NAM11-CO1-obe.outbound.protection.outlook.com) ([104.47.56.176]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 07 Jun 2023 06:28:06 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by MW5PR03MB6905.namprd03.prod.outlook.com (2603:10b6:303:1aa::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Wed, 7 Jun 2023 10:28:04 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606%4]) with mapi id 15.20.6455.030; Wed, 7 Jun 2023 10:28:04 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 005658bb-051e-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686133691; h=message-id:date:from:subject:to:cc:references: in-reply-to:content-transfer-encoding:mime-version; bh=mGcXTwtFwH6ir4Rg+tTeHYeMBq4O3wqYS4yOihdIj6A=; b=AcZ4rDh3NlKPONWu0C8fWBhFRVslavX0Wcq07At/GJUKcZ/FS1RzBx48 XvDolwp9c4Oq4SP02oz2GQJ1B9+7V9Ik33Lq/+hJl4/+VOd4VviyPNJlj +KOuDo/U8aLIXEjY7tlwmdKhF3xhalhhz2SWKexAwx9uLtKEVQ6XMX9tG 4=; X-IronPort-RemoteIP: 104.47.56.176 X-IronPort-MID: 114400577 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:4p/qqqgSD5/l2HyFgDI9iodSX161/BEKZh0ujC45NGQN5FlHY01je htvXTiFPayNZ2CkeownbYmyph8H7MfVmtRqHVNp+XowRnkb9cadCdqndUqhZCn6wu8v7q5Ex 55HNoSfdpBcolv0/ErF3m3J9CEkvU2wbuOgTrWCYmYpHlUMpB4J0XpLg/Q+jpNjne+3CgaMv cKai8DEMRqu1iUc3lg8sspvkzsx+qyq0N8klgZmP6sT4geBzyB94K83fsldEVOpGuG4IcbiL wrz5OnR1n/U+R4rFuSknt7TGqHdauePVeQmoiM+t5mK2nCulARrukoIHKN0hXNsoyeIh7hMJ OBl7vRcf+uL0prkw4zxWzEAe8130DYvFLXveRBTuuTLp6HKnueFL1yDwyjaMKVBktubD12i+ tQdFzIoMUqiqd7t57+dW7crr5V6DfPSadZ3VnFIlVk1DN4AaLWaGuDhwoYd2z09wMdTAfzZe swVLyJ1awjNaAFOPVFRD48imOCvhT/0dDgwRFC9/PJrpTSMilEvluGybrI5efTTLSlRtm+eq njL4CLSBRYCOcbE4TGE7mitlqnEmiaTtIc6TeTkqqYy3QLMroAVIDkpC3Xjrev+tnSnB4tOC XEouS4HqKdnoSRHSfG4BXVUukWsvBQRRt5RGO0S8xyWx+zf5APxLnMfUjdLZdgitck3bT8nz FmEm5XuHzMHmL+ITXOQ8J+EoDX0PjIaRUcIaDUYVwID75/mqZsqkxPUZt95Fei+ididMQ/3x zeGvS0vnYI5hMQA17i41V3fijfqrZ/MJiYq4i3HU2Tj6Rl2DKanaJah7Vzz5PNJPoGfCFKGu RAsi8WYqewDE5yJvCiMW/kWWqGk4e6fNz/RikIpGIMunwlB4FamdIFUpTp5fUFgN59dfSezO RCN/wRM+JVUIX2mK7dtZJ68ANgryq6mEsn5UvfTbZxFZZ0ZmBK7wRyCrHW4hwjF+HXAW4lmU XtHWa5A1UonNJk= IronPort-HdrOrdr: A9a23:lehyJKlUiwu4u5LbBt3+I1MjyB/pDfLc3DAbv31ZSRFFG/Fw9/ rCoB17726StN91YhsdcL+7V5VoLUmzyXcx2/hzAV7AZniDhILLFuFfBOLZqlWNJ8S9zJ8+6U 4JScND4bbLfD1HZKjBgTVRE7wbsaW6GKLDv5ag85+6JzsaFZ2J7G1Ce3em+lUdfnghOXKgfq DsnPauoVCbCA0qR/X+PFYpdc7ZqebGkZr3CCR2eiLOuGG1/EuVAKeRKWni4isj X-Talos-CUID: 9a23:rO20AmD4DrzG4Zj6EyxY9mtLQOELTib6wVHBfQiRWD9IcoTAHA== X-Talos-MUID: 9a23:XYWpbQW+t3Ofwf3q/BvT2h86ONUv3563VBkcs6g6+M2tMCMlbg== X-IronPort-AV: E=Sophos;i="6.00,223,1681185600"; d="scan'208";a="114400577" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=OGtRE38DiK3FhWlwAN00kNZyXePem5i/OevOWk67de1f6HubN1wf3oHMpbNIa/L5/+I3L6uGbw8KCFVTBZtARB4Tg14wbavNdA8N6LqcYsVDeouRNbO/AKyg3Oj0jOXJemr+r7QyuokTUzeVZdc22XkQrAQ1dz0tS7MicqGO0d4Sk2F9V9OZvrDinLsYj9k/pya0/FAj0Yt2+B4cu6516YhloO+9++Sm3gqCkBoSmWRzqJnCnbAUQNXf6cA6tvm2gDVvskDBNN8uovHJXk45O/5gP3fpTDg8PgTdSuT6LGBh/vPvf4leh8EzaqKh7+E/9buP4q4itGPu+GSydwcdqg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=Zf6HOy8l9I2/Q878vB2/jqKosS5kysyoc1OjHEG+dOA=; b=gqIG+kofKvINr3l9OeXlcunDLPWfygFPyiRKI4M0mIrtUd8DW6Wl/GShaRm9XMFw3jc02b8UroWqXFQ34HsraUrJvprLjgFW3BWauKlFxe8p39DX8B5jnH9czVzvUtp5p0dyzvX/HDofFDE06RcxTEMqWJjdXYbji48auckPAcCYSBt3+Bw7YolXmzRKBux/uty/60gA3U+3zbvjpNlcGIJ/oqXCdbhbqGfDBnrLpn5ZqSjgPxSC2Bv7omISgPW3ROpoIGmTJoqrhDjbDUwZ8eGnRwmRUY7qGalXaXh7nNRdX2g9iUyFS0BeoRdwZxZFJp3vAV+avMwc+yom/Kml5A== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Zf6HOy8l9I2/Q878vB2/jqKosS5kysyoc1OjHEG+dOA=; b=Msy4l3Z13DaUN03yrbEF1pXtLoflaMwnzvF6o1B5yNpq+jNzmIpmo6EQsF+g4UNujymKpTO07k2AnsovRC5nbOth8e6m7lQHh9HpZoGyg2rEScDCOyhS9DWCTbVWlQNFYwrieWkonqmFvswtVmNaa+BA5FcN+7MKY5h65/+1oaM= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: <3857ae6a-0c3d-7d19-7706-db3dc4a08a3f@citrix.com> Date: Wed, 7 Jun 2023 11:27:58 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 From: Andrew Cooper Subject: Re: [PATCH v2] livepatch: apply_alternatives() is only used for livepatch Content-Language: en-GB To: Jan Beulich , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= Cc: Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk , Wei Liu , Julien Grall , xen-devel@lists.xenproject.org References: <20230607090120.49597-1-roger.pau@citrix.com> In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO6P265CA0009.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:339::14) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|MW5PR03MB6905:EE_ X-MS-Office365-Filtering-Correlation-Id: ebf06b88-fb53-4080-1f96-08db6741e0b7 X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: zf9HAGrduvOq1RzSPWM5hcv9WHR8jImpneS3Pmc/Dv23BDqL2PElNop3+SL+FA6yVPxPEH0i40qI4mpCufIev8nxTGRSHsiu6ugKv3sS1ldIrUUoUIvbJ90siTAgw1ShbdhpB8OnvMRIc6yr2AtuHQYrnf2qRXRdznVBIf4csrs5xvFKbZZMYOuK+2Xs642nGwJh+RooKtSjK2+7/wTeCafoPtB6BXHDY18/i9gWWARraft1tN3BWqhutBSPeIRbglHF3WhhZONwug452Hwu0kO1ebbhE0qdQegyRUuTY+4pb/lKBAl7mxkHfm4Z9LtEkdk6Mc3bDEGRJ1Pam4G6WZ/5VgOLqwm8EbAxHCzNw12nZ1J3a4YZKJDKKbocyrRQ+joLJFFdjK02e6nTt0Nba5OgJWnQm8fcORgTH5herjguHjvket5j7592y52edFWTm5dLQCQo0jO5a7rORh3biKoc5akpey0inmt8amLh5SqV9R+quiwkb8q2uZvDOxLIZN4DHvDnAzm0wmBxaDy+TxagZeeTF0fahEUCh7iJ0ZPqxtVs6M5G9tt+2wzW0BZdpXfZwU9/4FRklSCVaV+WW885LuuS6HWJVQPkaDiaBWTAFcf/wflaBC68+poBlvw+AF7+bcZ0VyLrCj6TIx5dHw== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(376002)(39860400002)(346002)(396003)(136003)(366004)(451199021)(2906002)(31686004)(41300700001)(8936002)(8676002)(5660300002)(316002)(66476007)(66556008)(66946007)(6636002)(4326008)(110136005)(54906003)(478600001)(6666004)(36756003)(6486002)(186003)(53546011)(86362001)(31696002)(2616005)(83380400001)(82960400001)(6506007)(6512007)(26005)(38100700002)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?R01vT1MrOGplcEZsTGxtaHcvUTdQakp5dlcxcTB1NzZ0cFVmS0Q1cHlySmpQ?= =?utf-8?B?TGs3TEQ1RDJQYjNnRFd4UHhTNExocW5DbWhkWnc2OEZTTWp2L1hScklrd0xY?= =?utf-8?B?My9TRW1JOVcxbGJ4MjBXWjludUdDSGQzTzNwZGpkN2hDSklBR00wVkZNSU9a?= =?utf-8?B?YTIzekFQVGJZVUJDV2lUY1BzaURyUEttV1I2TUlPUnAzS3FJcFVWNmJiZkVY?= =?utf-8?B?Umg0Q2YrY2NWL3dxS1ZKYlpOZHB2QjVkSHRsV0RSb05oRk1Hc0I1ZjBVMGcv?= =?utf-8?B?T1N1MkJ6dWtWaUVacGR5bE1ENWF6WmlrVWNIWWY4YkRlUWZjK05aaE9pV0pO?= =?utf-8?B?RWduUEpYMDhzMUh5Snh2aFhBc2ptek92U2tuTTE3NlZXRmNRRm90c2djMjZO?= =?utf-8?B?Nk0ybnJCcFFFaGJrM1Zuc1J0WUh5RzBDMXR5UGVtTE9DVllvV29EOHhuZitt?= =?utf-8?B?Nk1VcitmRXJxN0ZZZThwcDJyWmxwVkRiM25wN0FJdFUwWnh3a0NaS3BnTmpL?= =?utf-8?B?WnlHcWo5ZHRmM1JhT3BmUUgvcExIRmFoWHRlaE5GZU4yRjVKUUpRWnI4YUpM?= =?utf-8?B?eTk4d0JsQ0NacEFYa3kvSWhrNkFUZTJJMmhEMFE2OTF3TWJMWDN1RUNPMGxj?= =?utf-8?B?NFlvSGlSY0V0RWhrS09ROHdCYmVlUzJKUEdpK1J3Z0pqa3UrdlZjQU5INENp?= =?utf-8?B?ZHUvTHdhekhYUkx2a016TFdzdVlwQzBZblU4VU1qSGxnUVF3cGMybUFuNXB4?= =?utf-8?B?NXB1RkI0a0lTOWJrcG8rRjdLUU5YYnRrZkhzeEZyMWNJYkVSRU1CM0l2N1pm?= =?utf-8?B?c1N3V05Wc1hvQUFvWkxaSm8rS0xCemd5SkRmc1JhdHA4Vi9MTDBUUWJpajNY?= =?utf-8?B?czF1TURQT1p2UEh4TzdGSnVvajYxQmxLNTZOb3Fpem0rNmdZVVpRVkN1Zjky?= =?utf-8?B?RG5JSTRXUmNLY3ZSRHNMallYZFYzakVyVEY4V3JXS1psaitGaUVCT1cyUkJv?= =?utf-8?B?NnRYaXF1QmlTYjNrUXFSb0g0QUZZSnBXR3pIVlg1RzJFdExPcDd6Q1loVkY3?= =?utf-8?B?bWVxaVFvVUMyS3Y2eWFjVWFSdDZkdndGb3h6d3d0Uk5jV00rK1NlbjZ1Z1FV?= =?utf-8?B?QVM0dmlmR0ZzSDB1NlphWnUwV1JMdGFETmpMcU1FSmVYVkV4Y1R4KzJCZHgz?= =?utf-8?B?VjZ5T1VabHkyVGFvaXpMVHV2QUpTV0lRRDN3Nnd2dkQ3MUM3K244UmFBd0RE?= =?utf-8?B?RjV2MkhyTDUxUUduM1M5VncrWDJHT3kvNlNHRTFVbGdwLytxY1Y0d3RYT1pY?= =?utf-8?B?WWFycnZsdDVIMkp1L3ltSG9ndkh3SHpzUHNmTHp1Qzl0N2pyWGdwOTh3Z1Jm?= =?utf-8?B?SFliRVlqRGdVMHNzK2k0Qkt6UmcwNnEydWFVbE8zbG44SVdqNVZoSmNKS1ZO?= =?utf-8?B?U2gwbzd0eWtHdWdPbml3VzB4RlBubVNoMXBqc2FVVjFsdHpyaUxyNjZPdEFO?= =?utf-8?B?SU5uZDJ4cU5WUjBhVk1ReDFwL0xtRVZtTkpaTGEyYi9WTnRhRXpJWThzRlRV?= =?utf-8?B?bDJNNFhpZCt3TklFc2k4M1JIVVBONWVIK2lYOEhRQ2dPRTIvMHhmRkQzZCtU?= =?utf-8?B?Vjk2bTFiZ1ExeWVITHRCVm94WDhOSzUzRHdVTnlCY3VKUkpaK1V0eERZbldG?= =?utf-8?B?cFhiOHBnSCtHdUlHS2kxa2ZvNlJyK0RPVHlMUzVIZ1pQVjhnNmxlcDltbWdD?= =?utf-8?B?OEw3aE5sTm1GaE5QOEZ0Sy9Jb0gxOElmckJBZ0VtQU1qbzEyR2orZFIyZmJH?= =?utf-8?B?Z096eHFkd1VQcjhxbVVuOVdscHBaM3MrMGxYVDZoRlZmZzJTK3dDdk9JcEUw?= =?utf-8?B?c0VZZmF6c1ovOHcwcU9IaTRMdm1yL21kUkNaTk5qR2xpeG56M0trVDNHR2hY?= =?utf-8?B?ZnVWYTRWNlB2LzdEaHVab241dHZsUExBbitadGhYdThKMjhkbmJQQ0pTMnpo?= =?utf-8?B?Z1N6aUxNak0yeGgwOSswTzVHMEk5Q09PSWQ1cW5laFh0RWY2VEwxTjBpNHFK?= =?utf-8?B?VjJxTlMvSERnZ1pjemNaYjh3OVA0U1UxZlE2VlZkMEhSWmc5NHRMSXZSbHlq?= =?utf-8?B?QzdrUEFXQkdPTnRGOTBDNko1a1ZhaVdLbTNZRnVuM1RKRVEvaHkzemZtR25F?= =?utf-8?B?Y0E9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: VaXqMIXsKqupcKIz/KARI3szLxYgCjEitr9jo1mJm4TKkmAiY194Amu+ajcdj2IG2PWQl0Hht8G/45YFIcXXJZIZU38zLtsq6eLtDdDNkzunmr68DtK9JUnFN/+un6CsVA/FSGtB9umNwwsG4qkMMr2DbP1f3D0FNE7tfl2zBABqp1Hh8CjTdvSuXTaP0aEs/23dZniAVaoE6W3Goj8lcqd5+QeXDhEOSzkQ+gp9UhvvDD0qH7CTEJk9yn8g6lyI/bBZ/gRZnbRUulNX0hInmoIylm8H61ZXmN1xpTs+nCtbaYjckAknB5Gligr7XdHXsI3Po/jJriUB/TFt65bh/+65DoPE9HrIW0yLRaKj5OqrFMF8Ju/C4NKkCdUjCIt5SW02LOenmFG/0ctzAh2GWwnCHcuqeuhLle5UNCmWCDKre1+/PC6UNWbWlNhDyYKT2KrGt4eWLOchFjgT1wEqnNBaddXkm6ezR7iIBW8VrLx3KKB2PWevFgJYvfoyLjjWyl7FtnKmwf9sRQ2+6MYfFeJihyI3nuhGm/DYL/amNw5R6BVhSaefkL1ibpXn5NNDcAENSdZkwJrt0eC+/bjhQTGYIxiljEUu2e1fXVJiL3+/vutH3Hs4rbsWxHmpT7BxJjjMY2d16oxU/6pYFVllteUyiehmqBFKPiF/08SRCCTvoveNunpjkoY2KzEdhnZVgY163gjEs18hkB10g2RQ+CuHwljnu55gpCSMwRr+Su+x/1+wTYYeEGAHmeHDQcBwB9f1cSLFTanmz1XiomODbnUGubrcqxa1Y6/NuGikHijet8DGsZYd/+czOJ65bM4SyaxPM29mxAZwY7OlrEXBrbP75GcwBNNvOxYKXYFdV7sJxWBxC2wSWa0N4rA5tZe7OiX2NWmdYomilca0JWZ02WDaMIct+FBPRJ1F7gzDlb8= X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: ebf06b88-fb53-4080-1f96-08db6741e0b7 X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Jun 2023 10:28:04.6100 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 75rkFPbXq3vag6Tfa78M1Z+aUuvhgegRrfoTepMA9gl8Orx/BRIWd7YrUMJXhQRV1Y4uap+K2uerthDWM7LBnU1z3tfruBD99nhxi823P2E= X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW5PR03MB6905 On 07/06/2023 11:19 am, Jan Beulich wrote: > On 07.06.2023 11:17, Roger Pau Monné wrote: >> On Wed, Jun 07, 2023 at 11:10:27AM +0200, Jan Beulich wrote: >>> On 07.06.2023 11:01, Roger Pau Monne wrote: >>>> Guard it with CONFIG_LIVEPATCH. Note alternatives are applied at boot >>>> using _apply_alternatives(). >>>> >>>> Signed-off-by: Roger Pau Monné >>>> Reviewed-by: Julien Grall >>> Reviewed-by: Jan Beulich >>> albeit the implicit ack therein is only on the assumption that (apart >>> from me) it is generally deemed better ... >>> >>>> --- a/xen/arch/x86/alternative.c >>>> +++ b/xen/arch/x86/alternative.c >>>> @@ -358,11 +358,12 @@ static void init_or_livepatch _apply_alternatives(struct alt_instr *start, >>>> } >>>> } >>>> >>>> -void init_or_livepatch apply_alternatives(struct alt_instr *start, >>>> - struct alt_instr *end) >>>> +#ifdef CONFIG_LIVEPATCH >>> ... to have the #ifdef than the init_or_livepatch attribute. >> But the init_or_livepatch attribute doesn't remove the function when >> !CONFIG_LIVEPATCH, > Yes up to here. > >> so it's not a replacement for the ifdef. > That depends how you look at it. We don't meaningfully care about a > few extra bytes in .init.text, I think. So it really is the Misra > requirement of not having unreferenced symbols which makes the > difference here. A different option, which I've recommended before for other reasons, is to build with function/data sections (already supported for livepatch), and use --gc-sections at link time. That would remove examples like this from the final binary, and there's probably wiggle-room at the MISRA level to say "we comply with this because the linker deletes it". ~Andrew From xen-devel-bounces@lists.xenproject.org Wed Jun 07 10:33:02 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 10:33:02 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544693.850647 (Exim 4.92) (envelope-from ) id 1q6qTB-0007bO-KS; Wed, 07 Jun 2023 10:32:49 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544693.850647; Wed, 07 Jun 2023 10:32:49 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6qTB-0007bH-Ex; Wed, 07 Jun 2023 10:32:49 +0000 Received: by outflank-mailman (input) for mailman id 544693; Wed, 07 Jun 2023 10:32:48 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6qT9-0007bB-V7 for xen-devel@lists.xenproject.org; Wed, 07 Jun 2023 10:32:47 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6qT6-0000Nq-Sz; Wed, 07 Jun 2023 10:32:44 +0000 Received: from 54-240-197-230.amazon.com ([54.240.197.230] helo=[192.168.13.206]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1q6qT6-00043G-Jx; Wed, 07 Jun 2023 10:32:44 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=VLKd6Z9vhuRniRTnClU+Y7JrViZSz8Pjgm+joPP6aeE=; b=s9smKEiKrLnpuehT1O33g/U1xG O8JthCjLoe6L2EEJgldonbeJP0tiRxFzEUcxiSJKL6I6nRPEaYcuadoUblODd0Jcw3d2SqbhbWKWO ItU+n5EO5Ez4wgwCNv6BEkC0z9Yj4Nme9dhQ2ufXTx3z9xlEDJV//fDasszASyGWKCeM=; Message-ID: <53608ce9-bcf9-2b1f-5090-55bded317f40@xen.org> Date: Wed, 7 Jun 2023 11:32:40 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH v8 00/12] SVE feature for arm guests Content-Language: en-US To: Luca Fancellu , xen-devel@lists.xenproject.org Cc: bertrand.marquis@arm.com, wei.chen@arm.com, Stefano Stabellini , Volodymyr Babchuk , Andrew Cooper , George Dunlap , Jan Beulich , Wei Liu , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Nick Rosbrook , Anthony PERARD , Juergen Gross , Christian Lindig , David Scott , =?UTF-8?Q?Marek_Marczykowski-G=c3=b3recki?= , Henry Wang , Community Manager References: <20230531072413.868673-1-luca.fancellu@arm.com> From: Julien Grall In-Reply-To: <20230531072413.868673-1-luca.fancellu@arm.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi Luca, On 31/05/2023 08:24, Luca Fancellu wrote: > This serie is introducing the possibility for Dom0 and DomU guests to use > sve/sve2 instructions. > > SVE feature introduces new instruction and registers to improve performances on > floating point operations. > > The SVE feature is advertised using the ID_AA64PFR0_EL1 register, SVE field, and > when available the ID_AA64ZFR0_EL1 register provides additional information > about the implemented version and other SVE feature. > > New registers added by the SVE feature are Z0-Z31, P0-P15, FFR, ZCR_ELx. > > Z0-Z31 are scalable vector register whose size is implementation defined and > goes from 128 bits to maximum 2048, the term vector length will be used to refer > to this quantity. > P0-P15 are predicate registers and the size is the vector length divided by 8, > same size is the FFR (First Fault Register). > ZCR_ELx is a register that can control and restrict the maximum vector length > used by the exception level and all the lower exception levels, so for > example EL3 can restrict the vector length usable by EL3,2,1,0. > > The platform has a maximum implemented vector length, so for every value > written in ZCR register, if this value is above the implemented length, then the > lower value will be used. The RDVL instruction can be used to check what vector > length is the HW using after setting ZCR. > > For an SVE guest, the V0-V31 registers are part of the Z0-Z31, so there is no > need to save them separately, saving Z0-Z31 will save implicitly also V0-V31. > > SVE usage can be trapped using a flag in CPTR_EL2, hence in this serie the > register is added to the domain state, to be able to trap only the guests that > are not allowed to use SVE. > > This serie is introducing a command line parameter to enable Dom0 to use SVE and > to set its maximum vector length that by default is 0 which means the guest is > not allowed to use SVE. Values from 128 to 2048 mean the guest can use SVE with > the selected value used as maximum allowed vector length (which could be lower > if the implemented one is lower). > For DomUs, an XL parameter with the same way of use is introduced and a dom0less > DTB binding is created. > > The context switch is the most critical part because there can be big registers > to be saved, in this serie an easy approach is used and the context is > saved/restored every time for the guests that are allowed to use SVE. > > Luca Fancellu (12): > xen/arm: enable SVE extension for Xen > xen/arm: add SVE vector length field to the domain > xen/arm: Expose SVE feature to the guest > xen/arm: add SVE exception class handling > arm/sve: save/restore SVE context switch > xen/common: add dom0 xen command line argument for Arm > xen: enable Dom0 to use SVE feature > xen/physinfo: encode Arm SVE vector length in arch_capabilities > tools: add physinfo arch_capabilities handling for Arm > xen/tools: add sve parameter in XL configuration > xen/arm: add sve property for dom0less domUs > xen/changelog: Add SVE and "dom0" options to the changelog for Arm The series is now committed. Note that I had to resolve a minor conflict in the CHANGELOG. Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Wed Jun 07 10:50:07 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 10:50:07 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544699.850655 (Exim 4.92) (envelope-from ) id 1q6qjk-0000sD-4S; Wed, 07 Jun 2023 10:49:56 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544699.850655; Wed, 07 Jun 2023 10:49:56 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6qjk-0000s6-1e; Wed, 07 Jun 2023 10:49:56 +0000 Received: by outflank-mailman (input) for mailman id 544699; Wed, 07 Jun 2023 10:49:55 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6qji-0000s0-Tw for xen-devel@lists.xenproject.org; Wed, 07 Jun 2023 10:49:54 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6qjh-0000qS-SU; Wed, 07 Jun 2023 10:49:53 +0000 Received: from 54-240-197-230.amazon.com ([54.240.197.230] helo=[192.168.13.206]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1q6qjh-0004ty-Lk; Wed, 07 Jun 2023 10:49:53 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=LDN6gO7jFfKIWZ+qS/a4+1bxq6Y04R9l52k4aKls4Eo=; b=jr67EYC0CK6x8gyOifnueTaR2M tzS2uh9vVGLE6je69J0N2CSFpsbA67Qf2OaOtsZMBOGHEjIjtMmX3KMk6kkZN2U7U//A2Hj+RwgOy Q4zBoaZWwF6KZJ3lmYEXvhz4xnsFxGJ4rQXqh9qQGKfMMEsEFjuy58aRuTg4xPwxwD2E=; Message-ID: Date: Wed, 7 Jun 2023 11:49:51 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH v6 05/14] tools/xenstore: use accounting buffering for node accounting Content-Language: en-US To: Juergen Gross , xen-devel@lists.xenproject.org Cc: Wei Liu , Anthony PERARD References: <20230530082424.32126-1-jgross@suse.com> <20230530082424.32126-6-jgross@suse.com> From: Julien Grall In-Reply-To: <20230530082424.32126-6-jgross@suse.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi Juergen, On 30/05/2023 09:24, Juergen Gross wrote: > Add the node accounting to the accounting information buffering in > order to avoid having to undo it in case of failure. > > This requires to call domain_nbentry_dec() before any changes to the > data base, as it can return an error now. > > Signed-off-by: Juergen Gross Acked-by: Julien Grall Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Wed Jun 07 10:51:49 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 10:51:49 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544704.850666 (Exim 4.92) (envelope-from ) id 1q6qlY-0002EM-Gk; Wed, 07 Jun 2023 10:51:48 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544704.850666; Wed, 07 Jun 2023 10:51:48 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6qlY-0002EF-DE; Wed, 07 Jun 2023 10:51:48 +0000 Received: by outflank-mailman (input) for mailman id 544704; Wed, 07 Jun 2023 10:51:47 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6qlX-0002E6-9i for xen-devel@lists.xenproject.org; Wed, 07 Jun 2023 10:51:47 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6qlW-0000rl-Ma; Wed, 07 Jun 2023 10:51:46 +0000 Received: from 54-240-197-238.amazon.com ([54.240.197.238] helo=[192.168.13.206]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1q6qlW-0004vy-Fp; Wed, 07 Jun 2023 10:51:46 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=bWBQDB6tVxgs+Sxlp6SBaFcE+cI7z8rDEM9UPFrBAm0=; b=18pnDcoxV+FPYrpe+FFMu8AM+N Fgy7ksgkYYk53DQWPxDrjRIBTlMeZE1uTTVBIKx5lJ4f7srnS23lLrbb3/c3wMv3cuH8Aj3AK9qMF Lv0PkopbrnEGdFziDO1JhqSk7sIsN/ZX9M+yDY84SVWhYcgq3xxNv98p/04+uGpOrN48=; Message-ID: Date: Wed, 7 Jun 2023 11:51:44 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH v6 12/14] tools/xenstore: use generic accounting for remaining quotas Content-Language: en-US To: Juergen Gross , xen-devel@lists.xenproject.org Cc: Wei Liu , Anthony PERARD References: <20230530082424.32126-1-jgross@suse.com> <20230530082424.32126-13-jgross@suse.com> From: Julien Grall In-Reply-To: <20230530082424.32126-13-jgross@suse.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi Juergen, On 30/05/2023 09:24, Juergen Gross wrote: > The maxrequests, node size, number of node permissions, and path length > quota are a little bit special, as they are either active in > transactions only (maxrequests), or they are just per item instead of > count values. Nevertheless being able to know the maximum number of > those quota related values per domain would be beneficial, so add them > to the generic accounting. > > The per domain value will never show current numbers other than zero, > but the maximum number seen can be gathered the same way as the number > of nodes during a transaction. > > To be able to use the const qualifier for a new function switch > domain_is_unprivileged() to take a const pointer, too. > > For printing the quota/max values, adapt the print format string to > the longest quota name (now 17 characters long). > > Signed-off-by: Juergen Gross Acked-by: Julien Grall Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Wed Jun 07 11:29:12 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 11:29:12 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544709.850676 (Exim 4.92) (envelope-from ) id 1q6rLR-0005kU-BK; Wed, 07 Jun 2023 11:28:53 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544709.850676; Wed, 07 Jun 2023 11:28:53 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6rLR-0005kN-7a; Wed, 07 Jun 2023 11:28:53 +0000 Received: by outflank-mailman (input) for mailman id 544709; Wed, 07 Jun 2023 11:28:51 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6rLP-0005kC-M8; Wed, 07 Jun 2023 11:28:51 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6rLP-0001ip-Ff; Wed, 07 Jun 2023 11:28:51 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6rLP-0006Md-4F; Wed, 07 Jun 2023 11:28:51 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q6rLP-0008JJ-3m; Wed, 07 Jun 2023 11:28:51 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=69C8EjMaBC8j1RWuZ97dQTFX5N6S8Aayzu6DF4Domk0=; b=YOo9XtFuv+TQ2lSIdRA49IVWnM ecSRnKcdKGofMvcmLfMNXDy62sjkz3zR5HybXEuVlCy9Iuj1qLYVgva8y6e0FxAQpVBRzO8CLgdcY aB3NIRRksQBP6X/zFwBNYjoZje+/+jh1ZMkzkIGmYFmbp+/YOutOUkxsQXsTGk3sftTE=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [ovmf test] 181245: all pass - PUSHED X-Osstest-Versions-This: ovmf=c082da89cfb2dd9640272741b7f176ede3cc41bb X-Osstest-Versions-That: ovmf=67fc78d026490ea4c375eeb19724abb40e7be8f2 From: osstest service owner Date: Wed, 07 Jun 2023 11:28:51 +0000 flight 181245 ovmf real [real] http://logs.test-lab.xenproject.org/osstest/logs/181245/ Perfect :-) All tests in this flight passed as required version targeted for testing: ovmf c082da89cfb2dd9640272741b7f176ede3cc41bb baseline version: ovmf 67fc78d026490ea4c375eeb19724abb40e7be8f2 Last test of basis 181234 2023-06-07 03:42:43 Z 0 days Testing same since 181245 2023-06-07 09:11:19 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Nickle Wang jobs: build-amd64-xsm pass build-i386-xsm pass build-amd64 pass build-i386 pass build-amd64-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-i386-pvops pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Pushing revision : To xenbits.xen.org:/home/xen/git/osstest/ovmf.git 67fc78d026..c082da89cf c082da89cfb2dd9640272741b7f176ede3cc41bb -> xen-tested-master From xen-devel-bounces@lists.xenproject.org Wed Jun 07 12:37:53 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 12:37:53 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544734.850693 (Exim 4.92) (envelope-from ) id 1q6sPw-0004j1-L4; Wed, 07 Jun 2023 12:37:36 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544734.850693; Wed, 07 Jun 2023 12:37:36 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6sPw-0004iu-IW; Wed, 07 Jun 2023 12:37:36 +0000 Received: by outflank-mailman (input) for mailman id 544734; Wed, 07 Jun 2023 12:36:49 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6sPB-0004hY-Mt for xen-devel@lists.xenproject.org; Wed, 07 Jun 2023 12:36:49 +0000 Received: from smtp-out2.suse.de (smtp-out2.suse.de [2001:67c:2178:6::1d]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id f58351d0-052f-11ee-8611-37d641c3527e; Wed, 07 Jun 2023 14:36:43 +0200 (CEST) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by smtp-out2.suse.de (Postfix) with ESMTPS id 3DFF21FDB0; Wed, 7 Jun 2023 12:36:43 +0000 (UTC) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id 19A4713776; Wed, 7 Jun 2023 12:36:43 +0000 (UTC) Received: from dovecot-director2.suse.de ([192.168.254.65]) by imap2.suse-dmz.suse.de with ESMTPSA id ubJ8Bdt5gGQySgAAMHmgww (envelope-from ); Wed, 07 Jun 2023 12:36:43 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: f58351d0-052f-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1; t=1686141403; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version: content-transfer-encoding:content-transfer-encoding; bh=PGvn6ZdohOOtVUUdOvyiYpScXO3VVCt1a9Kf6pUq/oo=; b=c+AMWVzZLkboDs3i9HYvNVea+80TZY8OLFt31HnDAQD8RVVGlB/WU3txkylDnJV+TljaBf Uuxyhud9XLrbu6MzRg6uAjrkRJnWOHLj9hpjrtFfE4ZBWBMvoFRH7OoVldnlUA0WhSjxoI Onf1if4shMM1/GQMrW0D95Yx3gFqGFw= From: Petr Pavlu To: jgross@suse.com, sstabellini@kernel.org, oleksandr_tyshchenko@epam.com Cc: xen-devel@lists.xenproject.org, linux-kernel@vger.kernel.org, Petr Pavlu Subject: [PATCH] xen/xenbus: Avoid a lockdep warning when adding a watch Date: Wed, 7 Jun 2023 14:36:24 +0200 Message-Id: <20230607123624.15739-1-petr.pavlu@suse.com> X-Mailer: git-send-email 2.35.3 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit The following lockdep warning appears during boot on a Xen dom0 system: [ 96.388794] ====================================================== [ 96.388797] WARNING: possible circular locking dependency detected [ 96.388799] 6.4.0-rc5-default+ #8 Tainted: G EL [ 96.388803] ------------------------------------------------------ [ 96.388804] xenconsoled/1330 is trying to acquire lock: [ 96.388808] ffffffff82acdd10 (xs_watch_rwsem){++++}-{3:3}, at: register_xenbus_watch+0x45/0x140 [ 96.388847] but task is already holding lock: [ 96.388849] ffff888100c92068 (&u->msgbuffer_mutex){+.+.}-{3:3}, at: xenbus_file_write+0x2c/0x600 [ 96.388862] which lock already depends on the new lock. [ 96.388864] the existing dependency chain (in reverse order) is: [ 96.388866] -> #2 (&u->msgbuffer_mutex){+.+.}-{3:3}: [ 96.388874] __mutex_lock+0x85/0xb30 [ 96.388885] xenbus_dev_queue_reply+0x48/0x2b0 [ 96.388890] xenbus_thread+0x1d7/0x950 [ 96.388897] kthread+0xe7/0x120 [ 96.388905] ret_from_fork+0x2c/0x50 [ 96.388914] -> #1 (xs_response_mutex){+.+.}-{3:3}: [ 96.388923] __mutex_lock+0x85/0xb30 [ 96.388930] xenbus_backend_ioctl+0x56/0x1c0 [ 96.388935] __x64_sys_ioctl+0x90/0xd0 [ 96.388942] do_syscall_64+0x5c/0x90 [ 96.388950] entry_SYSCALL_64_after_hwframe+0x72/0xdc [ 96.388957] -> #0 (xs_watch_rwsem){++++}-{3:3}: [ 96.388965] __lock_acquire+0x1538/0x2260 [ 96.388972] lock_acquire+0xc6/0x2b0 [ 96.388976] down_read+0x2d/0x160 [ 96.388983] register_xenbus_watch+0x45/0x140 [ 96.388990] xenbus_file_write+0x53d/0x600 [ 96.388994] vfs_write+0xe4/0x490 [ 96.389003] ksys_write+0xb8/0xf0 [ 96.389011] do_syscall_64+0x5c/0x90 [ 96.389017] entry_SYSCALL_64_after_hwframe+0x72/0xdc [ 96.389023] other info that might help us debug this: [ 96.389025] Chain exists of: xs_watch_rwsem --> xs_response_mutex --> &u->msgbuffer_mutex [ 96.413429] Possible unsafe locking scenario: [ 96.413430] CPU0 CPU1 [ 96.413430] ---- ---- [ 96.413431] lock(&u->msgbuffer_mutex); [ 96.413432] lock(xs_response_mutex); [ 96.413433] lock(&u->msgbuffer_mutex); [ 96.413434] rlock(xs_watch_rwsem); [ 96.413436] *** DEADLOCK *** [ 96.413436] 1 lock held by xenconsoled/1330: [ 96.413438] #0: ffff888100c92068 (&u->msgbuffer_mutex){+.+.}-{3:3}, at: xenbus_file_write+0x2c/0x600 [ 96.413446] An ioctl call IOCTL_XENBUS_BACKEND_SETUP (record #1 in the report) results in calling xenbus_alloc() -> xs_suspend() which introduces ordering xs_watch_rwsem --> xs_response_mutex. The xenbus_thread() operation (record #2) creates xs_response_mutex --> &u->msgbuffer_mutex. An XS_WATCH write to the xenbus file then results in a complain about the opposite lock order &u->msgbuffer_mutex --> xs_watch_rwsem. The dependency xs_watch_rwsem --> xs_response_mutex is spurious. Avoid it and the warning by changing the ordering in xs_suspend(), first acquire xs_response_mutex and then xs_watch_rwsem. Reverse also the unlocking order in xs_suspend_cancel() for consistency, but keep xs_resume() as is because it needs to have xs_watch_rwsem unlocked only after exiting xs suspend and re-adding all watches. Signed-off-by: Petr Pavlu --- drivers/xen/xenbus/xenbus_xs.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/xen/xenbus/xenbus_xs.c b/drivers/xen/xenbus/xenbus_xs.c index 12e02eb01f59..028a182bcc9e 100644 --- a/drivers/xen/xenbus/xenbus_xs.c +++ b/drivers/xen/xenbus/xenbus_xs.c @@ -840,8 +840,8 @@ void xs_suspend(void) { xs_suspend_enter(); - down_write(&xs_watch_rwsem); mutex_lock(&xs_response_mutex); + down_write(&xs_watch_rwsem); } void xs_resume(void) @@ -866,8 +866,8 @@ void xs_resume(void) void xs_suspend_cancel(void) { - mutex_unlock(&xs_response_mutex); up_write(&xs_watch_rwsem); + mutex_unlock(&xs_response_mutex); xs_suspend_exit(); } -- 2.35.3 From xen-devel-bounces@lists.xenproject.org Wed Jun 07 12:39:10 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 12:39:10 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544740.850704 (Exim 4.92) (envelope-from ) id 1q6sRI-0005FZ-01; Wed, 07 Jun 2023 12:39:00 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544740.850704; Wed, 07 Jun 2023 12:38:59 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6sRH-0005FS-TF; Wed, 07 Jun 2023 12:38:59 +0000 Received: by outflank-mailman (input) for mailman id 544740; Wed, 07 Jun 2023 12:38:58 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6sRG-0005FL-IO for xen-devel@lists.xenproject.org; Wed, 07 Jun 2023 12:38:58 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6sRG-0003Oq-5H; Wed, 07 Jun 2023 12:38:58 +0000 Received: from 54-240-197-238.amazon.com ([54.240.197.238] helo=[192.168.13.206]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1q6sRF-0001Fv-Tk; Wed, 07 Jun 2023 12:38:58 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=mLsi62p53O/nCX8P8vKVsx8Ha0wiUvhXcpkEa2fDg1w=; b=dm5Ce/SIAMy2hTZBwunTbGrOeG 9jaGlxlMWckLFoIRQNlKckyEOWxJpbfSITb+RSQrnalUHODvW4MVVe/wvSGc0+h8jpButYmgxzv6O U7yRleRWoyrgC+tur08/9S+mpV2l848AGkurJJs5Qn9/x47Q9XmgQhCqCJEzbWNHy/lk=; Message-ID: Date: Wed, 7 Jun 2023 13:38:55 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH v6 00/14] tools/xenstore: rework internal accounting Content-Language: en-US To: Juergen Gross , xen-devel@lists.xenproject.org Cc: Wei Liu , Anthony PERARD , Andrew Cooper , George Dunlap , Jan Beulich , Stefano Stabellini References: <20230530082424.32126-1-jgross@suse.com> From: Julien Grall In-Reply-To: <20230530082424.32126-1-jgross@suse.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi Juergen, On 30/05/2023 09:24, Juergen Gross wrote: > This series reworks the Xenstore internal accounting to use a uniform > generic framework. It is adding some additional useful diagnostic > information, like accounting trace and max. per-domain and global quota > values seen. > > Changes in V2: > - added patch 1 (leftover from previous series) > - rebase > > Changes in V3: > - addressed comments > > Changes in V4: > - fixed patch 3 > > Changes in V5: > - addressed comments > > Changes in V6: > - addressed comments > > Juergen Gross (14): > tools/xenstore: take transaction internal nodes into account for quota > tools/xenstore: manage per-transaction domain accounting data in an > array > tools/xenstore: introduce accounting data array for per-domain values > tools/xenstore: add framework to commit accounting data on success > only > tools/xenstore: use accounting buffering for node accounting > tools/xenstore: add current connection to domain_memory_add() > parameters > tools/xenstore: use accounting data array for per-domain values > tools/xenstore: add accounting trace support > tools/xenstore: add TDB access trace support > tools/xenstore: switch transaction accounting to generic accounting > tools/xenstore: remember global and per domain max accounting values > tools/xenstore: use generic accounting for remaining quotas > tools/xenstore: switch get_optval_int() to get_optval_uint() > tools/xenstore: switch quota management to be table based I have committed the series. Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Wed Jun 07 12:45:25 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 12:45:25 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544745.850714 (Exim 4.92) (envelope-from ) id 1q6sXH-0006kl-K7; Wed, 07 Jun 2023 12:45:11 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544745.850714; Wed, 07 Jun 2023 12:45:11 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6sXH-0006ke-HA; Wed, 07 Jun 2023 12:45:11 +0000 Received: by outflank-mailman (input) for mailman id 544745; Wed, 07 Jun 2023 12:45:09 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6sXF-0006kY-LM for xen-devel@lists.xenproject.org; Wed, 07 Jun 2023 12:45:09 +0000 Received: from NAM12-BN8-obe.outbound.protection.outlook.com (mail-bn8nam12on20612.outbound.protection.outlook.com [2a01:111:f400:fe5b::612]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 21093d05-0531-11ee-8611-37d641c3527e; Wed, 07 Jun 2023 14:45:06 +0200 (CEST) Received: from DM6PR18CA0001.namprd18.prod.outlook.com (2603:10b6:5:15b::14) by LV3PR12MB9188.namprd12.prod.outlook.com (2603:10b6:408:19b::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Wed, 7 Jun 2023 12:45:03 +0000 Received: from DM6NAM11FT082.eop-nam11.prod.protection.outlook.com (2603:10b6:5:15b:cafe::f1) by DM6PR18CA0001.outlook.office365.com (2603:10b6:5:15b::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.19 via Frontend Transport; Wed, 7 Jun 2023 12:45:03 +0000 Received: from SATLEXMB04.amd.com (165.204.84.17) by DM6NAM11FT082.mail.protection.outlook.com (10.13.173.107) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6455.23 via Frontend Transport; Wed, 7 Jun 2023 12:45:03 +0000 Received: from SATLEXMB08.amd.com (10.181.40.132) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Wed, 7 Jun 2023 07:45:02 -0500 Received: from SATLEXMB04.amd.com (10.181.40.145) by SATLEXMB08.amd.com (10.181.40.132) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Wed, 7 Jun 2023 05:45:02 -0700 Received: from [192.168.137.15] (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server id 15.1.2375.34 via Frontend Transport; Wed, 7 Jun 2023 07:45:00 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 21093d05-0531-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=kx5+lDXf3BOu0sWhUd/0EiZOi7u70OR4ffCT4ezayVCQKfthLstGuxc6v8Y+ucnbo63U5kVcLABucPHnd44JjeJe26XF71ffaqrluG8Xtgg3NCbiM0xHKLyuhmAsMCUXdzGxWILS5aD79QAxbQpBkiHK3IzFhtKINXnI6IUgr1Nh/Zev/CHIFvNdEA+k5PeI8pjY+c5FM8iLpm/rilradQ1oy+hNAkrPWQHh0cFJMF8/zsyf5xVcppj6461mdTKswM3psz/FuMSdMeM3azqOiEGaVpGVm1sllCMlQwW/kXn/0fw8I3RdHtD82+NcDa71NC+G8llcM3ehdXXzxEenUg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=WsGl4ktTBObDoB/1wlaqLnmqeysCIlQV0YUZkEaCR84=; b=BZK7WBVDkRmuNpeODEZlQcsZu1Rh0qsvf78cKFTGZJwILArbS6UDa5q3z2Ev2kb3+imj+tW+M1Wq1h6e5rRhBt5+4uAxQQuHMyUp++hoKPHwIuTpGI4v/zwVfPSIm2WgrAg0bOgh3tmc6N04aOz1R5wKcFgEc7jgWgCsQeFPrNYOr8ejYP99Iqk003DehdnFf+HF4q9pLsFPQVHZRlcgzHk0OLvHbBnobMTcYx5INSoPhh3iXB6YT5IgGZNUgFhBe9HgBm/e/Dwi+XEei+mABrIE7+hCxF/V1TYllYiiiqKelEKpS6xMWKex0iXLuabBqc+T5o+5fB1jrowBnseDcQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=suse.com smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=WsGl4ktTBObDoB/1wlaqLnmqeysCIlQV0YUZkEaCR84=; b=14D7NPq2Xkef2AIyI/AsHZZ3suYZzvHh1OGTwSLfNCaQiPxHyW26qd9iVSeL5pXuekX/mx66hubWlh0yPBO3SLNh7cR+E7crJHjVbg0wviKL9h+gCSEWxBsy/wOb5V449V1lMc/2uuJzr1+2WXW7gf7fFXq2FrUnKSeWAJVnOD8= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C Message-ID: Date: Wed, 7 Jun 2023 08:45:00 -0400 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH v4 4/7] iommu/arm: Introduce iommu_add_dt_pci_sideband_ids API To: Jan Beulich CC: Oleksandr Tyshchenko , Stefano Stabellini , Julien Grall , Paul Durrant , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Rahul Singh , Bertrand Marquis , References: <20230607030220.22698-1-stewart.hildebrand@amd.com> <20230607030220.22698-5-stewart.hildebrand@amd.com> <74765c0b-f463-896d-8f69-ecb1cf55cee0@suse.com> Content-Language: en-US From: Stewart Hildebrand In-Reply-To: <74765c0b-f463-896d-8f69-ecb1cf55cee0@suse.com> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DM6NAM11FT082:EE_|LV3PR12MB9188:EE_ X-MS-Office365-Filtering-Correlation-Id: ca2edc8a-b3c8-4d37-6a4f-08db67550391 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: WwGjIvG8yt9JkCGCxBGZUjrmMc5pToHk7pkG2emHAhABNboNeka3/5olUVjN/umwmaS72oxcDDuXxe2uOeWf3bsLVmkf4ebwwNjTPKJ/2oW593ww/WF2nzrdouafkZDmSeJIV6Plngy+JHj3b+G1wznBwAhrOiZnhd2nY+s6XeyQfrArJ6K21rjUfImbv9gGQvmuep1yscMfibmtEnEHFr4bqcNLTxnYRXkYaeXRnJSmww6zTM88PdhZ+7W6uYu7OgzFTWCApInigSQobGpYd1CYKBaXknvj9sDTjtQ4eGA2KufsDtHWRWK7lM+gYE9Qgpngkzr+5wPDjroLMVe2nSHxNJ+35gV/DfhtuUTXa/bZv4qTCNN4Ugv6fu1IwjjwgMfScHi6Zn7tLMxkcnQZIAp21QhdPcNtOifWEVb3Q4xI1yVxjaM14fCCSeo5sh23vTpowwcQw9I6BK+cYZrChYVBlpEejfMuQh6UuTXsCst1z1lO2Y+WfNPALjbE3pTsR4cdyYxxGIVQQ0jnQj6EKPUtifPFzqkAOlpJKJahH9dFNWXs57ifCmoyazgVE7bEWetSST9FBeSHfRs0mUQjPyhkivZiZo89RKNAgpu+yxvEQtRd2wkp1vKPdcoXRi4DYZccW7nBEWJyRbUtmk9T/8RAvxxQPDqWl6IhUmHUofdOD6JAoUZ5vWyazHFccHXAbLcfRbmb/R4eoURT0sSpsvTVJqI+F4Dn97U6OCwmVtFfv3lfTespRJOverfFqouH3QjJ2etEBGHtzYQ2IbgOWYM8gXriBlj0NUAOm6J0bgU= X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(346002)(376002)(136003)(39860400002)(396003)(451199021)(36840700001)(46966006)(40470700004)(40480700001)(54906003)(70586007)(16576012)(82740400003)(478600001)(81166007)(356005)(316002)(6916009)(47076005)(8676002)(8936002)(41300700001)(4326008)(70206006)(2616005)(186003)(426003)(336012)(36860700001)(966005)(83380400001)(40460700003)(26005)(53546011)(31696002)(86362001)(44832011)(5660300002)(2906002)(82310400005)(36756003)(31686004)(36900700001)(43740500002);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Jun 2023 12:45:03.2018 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: ca2edc8a-b3c8-4d37-6a4f-08db67550391 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com] X-MS-Exchange-CrossTenant-AuthSource: DM6NAM11FT082.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: LV3PR12MB9188 On 6/7/23 03:59, Jan Beulich wrote: > On 07.06.2023 05:02, Stewart Hildebrand wrote: >> --- a/xen/include/xen/iommu.h >> +++ b/xen/include/xen/iommu.h >> @@ -26,6 +26,9 @@ >> #include >> #include >> #include >> +#ifdef CONFIG_ACPI >> +#include >> +#endif > > This header is supposed to be usable without #ifdef, and then ... You suggested adding the #ifdef https://lists.xenproject.org/archives/html/xen-devel/2023-05/msg01409.html Please clarify >> @@ -228,12 +232,28 @@ int iommu_release_dt_devices(struct domain *d); >> * (IOMMU is not enabled/present or device is not connected to it). >> */ >> int iommu_add_dt_device(struct dt_device_node *np); >> +int iommu_add_dt_pci_sideband_ids(struct pci_dev *pdev); >> >> int iommu_do_dt_domctl(struct xen_domctl *, struct domain *, >> XEN_GUEST_HANDLE_PARAM(xen_domctl_t)); >> >> +#else /* !HAS_DEVICE_TREE */ >> +static inline int iommu_add_dt_pci_sideband_ids(struct pci_dev *pdev) >> +{ >> + return 0; >> +} >> #endif /* HAS_DEVICE_TREE */ >> >> +static inline int iommu_add_pci_sideband_ids(struct pci_dev *pdev) >> +{ >> + int ret = 0; >> +#ifdef CONFIG_ACPI >> + if ( acpi_disabled ) >> +#endif > > ... you don't need #ifdef here either. > >> + ret = iommu_add_dt_pci_sideband_ids(pdev); >> + return ret; >> +} > > Also (nit) please follow (partly unwritten, I admit) style guidelines: > A blank line between declaration(s) and statement(s), and another one > ahead of a function's main "return". OK From xen-devel-bounces@lists.xenproject.org Wed Jun 07 12:49:28 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 12:49:28 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544750.850723 (Exim 4.92) (envelope-from ) id 1q6sbP-0007Lx-4a; Wed, 07 Jun 2023 12:49:27 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544750.850723; Wed, 07 Jun 2023 12:49:27 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6sbP-0007Lq-1r; Wed, 07 Jun 2023 12:49:27 +0000 Received: by outflank-mailman (input) for mailman id 544750; Wed, 07 Jun 2023 12:49:25 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6sbM-0007Lk-Pz for xen-devel@lists.xenproject.org; Wed, 07 Jun 2023 12:49:25 +0000 Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id b79da748-0531-11ee-8611-37d641c3527e; Wed, 07 Jun 2023 14:49:21 +0200 (CEST) Received: from fmsmga008.fm.intel.com ([10.253.24.58]) by fmsmga104.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 07 Jun 2023 05:49:17 -0700 Received: from vsmyers-mobl2.amr.corp.intel.com (HELO [10.212.146.233]) ([10.212.146.233]) by fmsmga008-auth.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 07 Jun 2023 05:49:16 -0700 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: b79da748-0531-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1686142161; x=1717678161; h=message-id:date:mime-version:subject:to:cc:references: from:in-reply-to:content-transfer-encoding; bh=96j5LP+QrdvCGDRDBIDgXK+1HoouV0Xv0Dmwi4N0S9M=; b=nwFyXZmi/DiGqXa46dzeKdrWW3w4m3RLQlwc3ykmmZZeuBzdJ30CU2Gb SsAQqPi9qrKeh2pZYJ0OpxjVX0nOzEGqep2WvaIkPT0ULZpWzRCCMbWWc 2hKNc/FAvGQ4xxNsk0RlEKYq3R1YPDAPbJbHilc5/jS6/MhTk43HZ8Ct2 sDl0AflnDpXhGcQWvosPHViHjMmuQombOzPiP1HOuKjDjc1wvNV7CCV7/ Z+3+yfPrGCJP7ORGVFZFhvIl2H1lNAKOBzYyOBFh7qtReMZNvUHyg31s1 0sb5augaEimGI1cY2FAek4+bsz/yJufM7tVGnofXnkMBJiCNWxti0lC2s g==; X-IronPort-AV: E=McAfee;i="6600,9927,10733"; a="355829398" X-IronPort-AV: E=Sophos;i="6.00,224,1681196400"; d="scan'208";a="355829398" X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10733"; a="774592705" X-IronPort-AV: E=Sophos;i="6.00,224,1681196400"; d="scan'208";a="774592705" Message-ID: <1f633e99-d294-6932-31e9-0eb158d030ea@intel.com> Date: Wed, 7 Jun 2023 05:49:15 -0700 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH RFC 0/4] x86/fixmap: Unify FIXADDR_TOP Content-Language: en-US To: Hou Wenlong , linux-kernel@vger.kernel.org Cc: Lai Jiangshan , Alexey Makhalov , Andrew Morton , Andy Lutomirski , Anshuman Khandual , Borislav Petkov , Boris Ostrovsky , Brian Gerst , Dave Hansen , David Woodhouse , "H. Peter Anvin" , Ingo Molnar , Josh Poimboeuf , Juergen Gross , "Kirill A. Shutemov" , "Mike Rapoport (IBM)" , Pasha Tatashin , Peter Zijlstra , "Srivatsa S. Bhat (VMware)" , Suren Baghdasaryan , Thomas Gleixner , Usama Arif , virtualization@lists.linux-foundation.org, VMware PV-Drivers Reviewers , x86@kernel.org, xen-devel@lists.xenproject.org References: From: Dave Hansen In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit On 5/15/23 01:19, Hou Wenlong wrote: > This patchset unifies FIXADDR_TOP as a variable for x86, allowing the > fixmap area to be movable and relocated with the kernel image in the > x86/PIE patchset [0]. This enables the kernel image to be relocated in > the top 512G of the address space. What problems does this patch set solve? How might that solution be visible to end users? Why is this problem important to you? Also, while you're waiting for someone to review _your_ code, have you considered reviewing anyone else's code? I don't think I've seen any review activity from you lately. From xen-devel-bounces@lists.xenproject.org Wed Jun 07 12:51:17 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 12:51:17 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544755.850733 (Exim 4.92) (envelope-from ) id 1q6sd2-0000IM-ET; Wed, 07 Jun 2023 12:51:08 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544755.850733; Wed, 07 Jun 2023 12:51:08 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6sd2-0000IE-Bo; Wed, 07 Jun 2023 12:51:08 +0000 Received: by outflank-mailman (input) for mailman id 544755; Wed, 07 Jun 2023 12:51:07 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6sd1-0000I1-1z; Wed, 07 Jun 2023 12:51:07 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6sd0-0003cW-Qb; Wed, 07 Jun 2023 12:51:06 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6sd0-0001pi-Bn; Wed, 07 Jun 2023 12:51:06 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q6sd0-0005bS-BQ; Wed, 07 Jun 2023 12:51:06 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=b7RW0iIxWO/jNdHS76x99IIrogCzuR05v/U78tks4+Y=; b=vE4ZvL8YIGovxJ2xC17s5Ve2hu zyK3ModeQC6PfMVumtRw+8M//wVpI/JRPXc8VkDe9P0KcaavgEWNcspCE8T96yVuX0A1z3GGxn3Cg Z8XGltsdXbxzRKNjA+VlGQphBr+8ES4is+AJcjZ1tNpU7ALfx+30xGjiPaY6jXVCetQQ=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable-smoke test] 181246: regressions - trouble: blocked/fail X-Osstest-Failures: xen-unstable-smoke:build-amd64:xen-build:fail:regression xen-unstable-smoke:build-arm64-xsm:xen-build:fail:regression xen-unstable-smoke:build-armhf:xen-build:fail:regression xen-unstable-smoke:build-amd64-libvirt:build-check(1):blocked:nonblocking xen-unstable-smoke:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking xen-unstable-smoke:test-amd64-amd64-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking xen-unstable-smoke:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking xen-unstable-smoke:test-armhf-armhf-xl:build-check(1):blocked:nonblocking X-Osstest-Versions-This: xen=cb8b18d49ad804108ead8667179794b0ead66f2a X-Osstest-Versions-That: xen=64a647f8d817c6989edc000613b5afae19f03f99 From: osstest service owner Date: Wed, 07 Jun 2023 12:51:06 +0000 flight 181246 xen-unstable-smoke real [real] http://logs.test-lab.xenproject.org/osstest/logs/181246/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-amd64 6 xen-build fail REGR. vs. 181233 build-arm64-xsm 6 xen-build fail REGR. vs. 181233 build-armhf 6 xen-build fail REGR. vs. 181233 Tests which did not succeed, but are not blocking: build-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a version targeted for testing: xen cb8b18d49ad804108ead8667179794b0ead66f2a baseline version: xen 64a647f8d817c6989edc000613b5afae19f03f99 Last test of basis 181233 2023-06-07 02:04:37 Z 0 days Testing same since 181246 2023-06-07 11:02:03 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Christian Lindig George Dunlap Henry Wang # CHANGELOG Julien Grall Luca Fancellu jobs: build-arm64-xsm fail build-amd64 fail build-armhf fail build-amd64-libvirt blocked test-armhf-armhf-xl blocked test-arm64-arm64-xl-xsm blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64 blocked test-amd64-amd64-libvirt blocked ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. ------------------------------------------------------------ commit cb8b18d49ad804108ead8667179794b0ead66f2a Author: Luca Fancellu Date: Wed May 31 08:24:13 2023 +0100 xen/changelog: Add SVE and "dom0" options to the changelog for Arm Arm now can use the "dom0=" Xen command line option and the support for guests running SVE instructions is added, put entries in the changelog. Mention the "Tech Preview" status and add an entry in SUPPORT.md Signed-off-by: Luca Fancellu Acked-by: Henry Wang # CHANGELOG Reviewed-by: Bertrand Marquis commit 870394de44766d6d1972c2e27be2f0a289162b04 Author: Luca Fancellu Date: Wed May 31 08:24:12 2023 +0100 xen/arm: add sve property for dom0less domUs Add a device tree property in the dom0less domU configuration to enable the guest to use SVE. Update documentation. Signed-off-by: Luca Fancellu Reviewed-by: Bertrand Marquis Reviewed-by: Michal Orzel Acked-by: Julien Grall commit b46e8207d0aedad7bb23d14c055d95e625d366b0 Author: Luca Fancellu Date: Wed May 31 08:24:11 2023 +0100 xen/tools: add sve parameter in XL configuration Add sve parameter in XL configuration to allow guests to use SVE feature. Signed-off-by: Luca Fancellu Reviewed-by: Anthony PERARD commit 56a7aaa16bfe43945a0031319c60c7f323c46254 Author: Luca Fancellu Date: Wed May 31 08:24:10 2023 +0100 tools: add physinfo arch_capabilities handling for Arm On Arm, the SVE vector length is encoded in arch_capabilities field of struct xen_sysctl_physinfo, make use of this field in the tools when building for arm. Create header arm-arch-capabilities.h to handle the arch_capabilities field of physinfo for Arm. Signed-off-by: Luca Fancellu Acked-by: George Dunlap Acked-by: Christian Lindig Reviewed-by: Anthony PERARD commit 9392bf6a3a44978373f2c54a4c69d739f437b3bc Author: Luca Fancellu Date: Wed May 31 08:24:09 2023 +0100 xen/physinfo: encode Arm SVE vector length in arch_capabilities When the arm platform supports SVE, advertise the feature in the field arch_capabilities in struct xen_sysctl_physinfo by encoding the SVE vector length in it. Signed-off-by: Luca Fancellu Reviewed-by: Bertrand Marquis commit fd53bc7af0eaa9d37ca3ec8b517190cc3e3df9ed Author: Luca Fancellu Date: Wed May 31 08:24:08 2023 +0100 xen: enable Dom0 to use SVE feature Add a command line parameter to allow Dom0 the use of SVE resources, the command line parameter sve=, sub argument of dom0=, controls the feature on this domain and sets the maximum SVE vector length for Dom0. Add a new function, parse_signed_integer(), to parse an integer command line argument. Signed-off-by: Luca Fancellu Reviewed-by: Jan Beulich # !arm Reviewed-by: Bertrand Marquis commit f2095a51ac53d2da97f724d49ec3aedbb290080e Author: Luca Fancellu Date: Wed May 31 08:24:07 2023 +0100 xen/common: add dom0 xen command line argument for Arm Currently x86 defines a Xen command line argument dom0= where there can be specified dom0 controlling sub-options, to use it also on Arm, move the code that loops through the list of arguments from x86 to the common code and from there, call architecture specific functions to handle the comma separated sub-options. No functional changes are intended. Signed-off-by: Luca Fancellu Reviewed-by: Jan Beulich Reviewed-by: Bertrand Marquis commit ac5855d5c7ea123be3fb32b17b9cd4ad483b4205 Author: Luca Fancellu Date: Wed May 31 08:24:06 2023 +0100 arm/sve: save/restore SVE context switch Save/restore context switch for SVE, allocate memory to contain the Z0-31 registers whose length is maximum 2048 bits each and FFR who can be maximum 256 bits, the allocated memory depends on how many bits is the vector length for the domain and how many bits are supported by the platform. Save P0-15 whose length is maximum 256 bits each, in this case the memory used is from the fpregs field in struct vfp_state, because V0-31 are part of Z0-31 and this space would have been unused for SVE domain otherwise. Create zcr_el{1,2} fields in arch_vcpu, initialise zcr_el2 on vcpu creation given the requested vector length and restore it on context switch, save/restore ZCR_EL1 value as well. List import macros from Linux in README.LinuxPrimitives. Signed-off-by: Luca Fancellu Reviewed-by: Bertrand Marquis Acked-by: Julien Grall commit 3c6e7262410fe95f96aae32765531de41a6f392f Author: Luca Fancellu Date: Wed May 31 08:24:05 2023 +0100 xen/arm: add SVE exception class handling SVE has a new exception class with code 0x19, introduce the new code and handle the exception. Signed-off-by: Luca Fancellu Reviewed-by: Bertrand Marquis Reviewed-by: Julien Grall commit c5ff38cdd833fcf2cbb8fb49e362eac05888b3d4 Author: Luca Fancellu Date: Wed May 31 08:24:04 2023 +0100 xen/arm: Expose SVE feature to the guest When a guest is allowed to use SVE, expose the SVE features through the identification registers. Signed-off-by: Luca Fancellu Acked-by: Julien Grall Reviewed-by: Bertrand Marquis commit 8043e80de93a9377454b6186390a3e931cc4b273 Author: Luca Fancellu Date: Wed May 31 08:24:03 2023 +0100 xen/arm: add SVE vector length field to the domain Add sve_vl field to arch_domain and xen_arch_domainconfig struct, to allow the domain to have an information about the SVE feature and the number of SVE register bits that are allowed for this domain. sve_vl field is the vector length in bits divided by 128, this allows to use less space in the structures. The field is used also to allow or forbid a domain to use SVE, because a value equal to zero means the guest is not allowed to use the feature. Check that the requested vector length is lower or equal to the platform supported vector length, otherwise fail on domain creation. Check that only 64 bit domains have SVE enabled, otherwise fail. Signed-off-by: Luca Fancellu Reviewed-by: Bertrand Marquis Acked-by: Julien Grall commit ddcbaa42d8515d8e372d10f9a8014b4c5b7cc536 Author: Luca Fancellu Date: Wed May 31 08:24:02 2023 +0100 xen/arm: enable SVE extension for Xen Enable Xen to handle the SVE extension, add code in cpufeature module to handle ZCR SVE register, disable trapping SVE feature on system boot only when SVE resources are accessed. While there, correct coding style for the comment on coprocessor trapping. Now cptr_el2 is part of the domain context and it will be restored on context switch, this is a preparation for saving the SVE context which will be part of VFP operations, so restore it before the call to save VFP registers. To save an additional isb barrier, restore cptr_el2 before an existing isb barrier and move the call for saving VFP context after that barrier. To keep a (mostly) specularity of ctxt_switch_to() and ctxt_switch_from(), move vfp_save_state() up in the function. Change the KConfig entry to make ARM64_SVE symbol selectable, by default it will be not selected. Create sve module and sve_asm.S that contains assembly routines for the SVE feature, this code is inspired from linux and it uses instruction encoding to be compatible with compilers that does not support SVE, imported instructions are documented in README.LinuxPrimitives. Signed-off-by: Luca Fancellu Reviewed-by: Bertrand Marquis Acked-by: Julien Grall (qemu changes not included) From xen-devel-bounces@lists.xenproject.org Wed Jun 07 13:11:24 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 13:11:24 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544764.850747 (Exim 4.92) (envelope-from ) id 1q6swS-0002qU-6O; Wed, 07 Jun 2023 13:11:12 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544764.850747; Wed, 07 Jun 2023 13:11:12 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6swS-0002qN-3P; Wed, 07 Jun 2023 13:11:12 +0000 Received: by outflank-mailman (input) for mailman id 544764; Wed, 07 Jun 2023 13:11:10 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6swQ-0002qH-7p for xen-devel@lists.xenproject.org; Wed, 07 Jun 2023 13:11:10 +0000 Received: from verein.lst.de (verein.lst.de [213.95.11.211]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id c3ce3a1d-0534-11ee-b232-6b7b168915f2; Wed, 07 Jun 2023 15:11:08 +0200 (CEST) Received: by verein.lst.de (Postfix, from userid 2407) id 01FC26732D; Wed, 7 Jun 2023 15:11:05 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: c3ce3a1d-0534-11ee-b232-6b7b168915f2 Date: Wed, 7 Jun 2023 15:11:04 +0200 From: Christoph Hellwig To: Lyude Paul Cc: Christoph Hellwig , Juergen Gross , Stefano Stabellini , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , x86@kernel.org, "H. Peter Anvin" , Ben Skeggs , Karol Herbst , xen-devel@lists.xenproject.org, iommu@lists.linux.dev, linux-kernel@vger.kernel.org, nouveau@lists.freedesktop.org Subject: Re: [PATCH 3/4] drm/nouveau: stop using is_swiotlb_active Message-ID: <20230607131104.GA19206@lst.de> References: <20230518134253.909623-1-hch@lst.de> <20230518134253.909623-4-hch@lst.de> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.17 (2007-11-01) On Thu, May 18, 2023 at 04:30:49PM -0400, Lyude Paul wrote: > Reviewed-by: Lyude Paul > > Thanks for getting to this! I've tentantively queued this up in the dma-mapping for-next tree. Let me know if you'd prefer it to go through the nouveau tree. From xen-devel-bounces@lists.xenproject.org Wed Jun 07 13:13:14 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 13:13:14 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544770.850757 (Exim 4.92) (envelope-from ) id 1q6syF-0003Oh-Hu; Wed, 07 Jun 2023 13:13:03 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544770.850757; Wed, 07 Jun 2023 13:13:03 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6syF-0003Oa-Ef; Wed, 07 Jun 2023 13:13:03 +0000 Received: by outflank-mailman (input) for mailman id 544770; Wed, 07 Jun 2023 13:13:02 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6syE-0003OU-Q8 for xen-devel@lists.xenproject.org; Wed, 07 Jun 2023 13:13:02 +0000 Received: from verein.lst.de (verein.lst.de [213.95.11.211]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 06f042b7-0535-11ee-8611-37d641c3527e; Wed, 07 Jun 2023 15:13:00 +0200 (CEST) Received: by verein.lst.de (Postfix, from userid 2407) id 33B3F6732D; Wed, 7 Jun 2023 15:12:58 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 06f042b7-0535-11ee-8611-37d641c3527e Date: Wed, 7 Jun 2023 15:12:57 +0200 From: Christoph Hellwig To: Juergen Gross Cc: Marek =?iso-8859-1?Q?Marczykowski-G=F3recki?= , Christoph Hellwig , Stefano Stabellini , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , x86@kernel.org, "H. Peter Anvin" , Ben Skeggs , Karol Herbst , Lyude Paul , xen-devel@lists.xenproject.org, iommu@lists.linux.dev, linux-kernel@vger.kernel.org, nouveau@lists.freedesktop.org Subject: Re: [PATCH 2/4] x86: always initialize xen-swiotlb when xen-pcifront is enabling Message-ID: <20230607131257.GB19206@lst.de> References: <20230518134253.909623-1-hch@lst.de> <20230518134253.909623-3-hch@lst.de> <20230519040405.GA10818@lst.de> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.17 (2007-11-01) On Mon, May 22, 2023 at 10:37:09AM +0200, Juergen Gross wrote: > In normal cases PCI passthrough in PV guests requires to start the guest > with e820_host=1. So it should be rather easy to limit allocating the > 64MB in PV guests to the cases where the memory map has non-RAM regions > especially in the first 1MB of the memory. > > This will cover even hotplug cases. The only case not covered would be a > guest started with e820_host=1 even if no PCI passthrough was planned. > But this should be rather rare (at least I hope so). So is this an ACK for the patch and can we go ahead with it? (I'd still like to merge swiotlb-xen into swiotlb eventually, but it's probably not going to happen this merge window) From xen-devel-bounces@lists.xenproject.org Wed Jun 07 13:20:52 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 13:20:52 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544776.850768 (Exim 4.92) (envelope-from ) id 1q6t5e-0004uk-Bv; Wed, 07 Jun 2023 13:20:42 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544776.850768; Wed, 07 Jun 2023 13:20:42 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6t5e-0004ud-7R; Wed, 07 Jun 2023 13:20:42 +0000 Received: by outflank-mailman (input) for mailman id 544776; Wed, 07 Jun 2023 13:20:41 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6t5d-0004uT-6p; Wed, 07 Jun 2023 13:20:41 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6t5c-0004Ks-Tm; Wed, 07 Jun 2023 13:20:40 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6t5b-0003rB-RN; Wed, 07 Jun 2023 13:20:40 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q6t5b-0007za-Qu; Wed, 07 Jun 2023 13:20:39 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=E2XTl+gz557siGCdP8CyZgznc8VFfH0ahOOlbdHuZ6s=; b=eC3xB9rUBkIH7u7Ms8AkBU/KJY nwSRX8lmPIi7IVG5qc+OHYpDu7uhAUaAEvs49k8zX6DnxJRxDtMHIbIESrJCWf4GuqYaQS0hlveRb HvSkfXa9rZCloaB3w6Fhn7hjuKUj18leFnb/hIClibrEsfYk7lGFS89pyQhVpBwF45SQ=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [libvirt test] 181239: tolerable all pass - PUSHED X-Osstest-Failures: libvirt:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking libvirt:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking libvirt:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking libvirt:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking libvirt:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking libvirt:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking libvirt:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt:saverestore-support-check:fail:nonblocking libvirt:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking libvirt:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking libvirt:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking libvirt:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-qcow2:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-qcow2:saverestore-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking libvirt:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking libvirt:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking libvirt:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking X-Osstest-Versions-This: libvirt=17565ee0aa14cfb9e6114efb0354bc3a008351af X-Osstest-Versions-That: libvirt=1b8c1ce704788c08a764183aca74f3043d7733e4 From: osstest service owner Date: Wed, 07 Jun 2023 13:20:39 +0000 flight 181239 libvirt real [real] http://logs.test-lab.xenproject.org/osstest/logs/181239/ Failures :-/ but no regressions. Tests which did not succeed, but are not blocking: test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail like 181205 test-armhf-armhf-libvirt 16 saverestore-support-check fail like 181205 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail like 181205 test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-i386-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-i386-libvirt 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt 15 migrate-support-check fail never pass test-arm64-arm64-libvirt 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-i386-libvirt-raw 14 migrate-support-check fail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-qcow2 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-qcow2 15 saverestore-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail never pass test-armhf-armhf-libvirt 15 migrate-support-check fail never pass test-armhf-armhf-libvirt-raw 14 migrate-support-check fail never pass version targeted for testing: libvirt 17565ee0aa14cfb9e6114efb0354bc3a008351af baseline version: libvirt 1b8c1ce704788c08a764183aca74f3043d7733e4 Last test of basis 181205 2023-06-06 04:18:52 Z 1 days Testing same since 181239 2023-06-07 04:18:51 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Peter Krempa 김인수 jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-i386-libvirt-xsm pass test-amd64-amd64-libvirt pass test-arm64-arm64-libvirt pass test-armhf-armhf-libvirt pass test-amd64-i386-libvirt pass test-amd64-amd64-libvirt-pair pass test-amd64-i386-libvirt-pair pass test-arm64-arm64-libvirt-qcow2 pass test-armhf-armhf-libvirt-qcow2 pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw pass test-amd64-i386-libvirt-raw pass test-amd64-amd64-libvirt-vhd pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Pushing revision : To xenbits.xen.org:/home/xen/git/libvirt.git 1b8c1ce704..17565ee0aa 17565ee0aa14cfb9e6114efb0354bc3a008351af -> xen-tested-master From xen-devel-bounces@lists.xenproject.org Wed Jun 07 13:25:39 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 13:25:39 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544783.850776 (Exim 4.92) (envelope-from ) id 1q6tAJ-0005Wi-TM; Wed, 07 Jun 2023 13:25:31 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544783.850776; Wed, 07 Jun 2023 13:25:31 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6tAJ-0005Wb-QY; Wed, 07 Jun 2023 13:25:31 +0000 Received: by outflank-mailman (input) for mailman id 544783; Wed, 07 Jun 2023 13:25:31 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6tAI-0005WV-5f for xen-devel@lists.xenproject.org; Wed, 07 Jun 2023 13:25:31 +0000 Received: from bombadil.infradead.org (bombadil.infradead.org [2607:7c80:54:3::133]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id c3d7d498-0536-11ee-b232-6b7b168915f2; Wed, 07 Jun 2023 15:25:29 +0200 (CEST) Received: from 2a02-8389-2341-5b80-8c8c-28f8-1274-e038.cable.dynamic.v6.surfer.at ([2a02:8389:2341:5b80:8c8c:28f8:1274:e038] helo=localhost) by bombadil.infradead.org with esmtpsa (Exim 4.96 #2 (Red Hat Linux)) id 1q6tAA-0065rT-1N; Wed, 07 Jun 2023 13:25:22 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: c3d7d498-0536-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=bombadil.20210309; h=Content-Transfer-Encoding: MIME-Version:Message-Id:Date:Subject:Cc:To:From:Sender:Reply-To:Content-Type: Content-ID:Content-Description:In-Reply-To:References; bh=/2ulYW69Fet+oQidjF0EozGV7t1Yw4gVukyr/Zwn4NI=; b=aSYlXJYrUG9pogF6BrsKOLkr3d kaC12Xqhh/9MC/zCfVYGWt1reUOEbN5jFS7Z6z8gF63YwkwJU+nHV93D3/ZB3QBMK98DWX0ELlcAF eVuSvlauRr+jkv+SxCd/xUgSTU2KDJW1h5L6jNrtevLdviK1sYUrviAijzbMtBiUBbckG90oL04vq 0vNOCA3K9YR7XTrKoXA9aAeglmQ+eQ+RcDPs54/CURN45PbDALIrTixKVMIVMa3tnFTwq/7P3HfhH oCq8s8DR0CvnhqdrCG6JiqJ5S/s9H0GEWfpBa5bYsJB10w778Wd6pTQVK2nybgniQ+I7e/mljumiA I+1CS0tA==; From: Christoph Hellwig To: jgross@suse.com, sstabellini@kernel.org, oleksandr_tyshchenko@epam.com Cc: xen-devel@lists.xenproject.org, iommu@lists.linux.dev Subject: [PATCH, RFC] swiotlb-xen: fix dma to physical address translation for cache operations Date: Wed, 7 Jun 2023 15:25:18 +0200 Message-Id: <20230607132518.15381-1-hch@lst.de> X-Mailer: git-send-email 2.39.2 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-SRS-Rewrite: SMTP reverse-path rewritten from by bombadil.infradead.org. See http://www.infradead.org/rpr.html All other places in swiotlb-xen got from PFN to BFN and then call phys_to_dma on the result or vice versa, but the reverse mapping used for cache maintenance skips the BFN to PFN mapping. [Note: only found by code inspection, please review very carefully!] Signed-off-by: Christoph Hellwig --- drivers/xen/swiotlb-xen.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/drivers/xen/swiotlb-xen.c b/drivers/xen/swiotlb-xen.c index 67aa74d201627d..e4620303138b4d 100644 --- a/drivers/xen/swiotlb-xen.c +++ b/drivers/xen/swiotlb-xen.c @@ -234,7 +234,7 @@ static dma_addr_t xen_swiotlb_map_page(struct device *dev, struct page *page, done: if (!dev_is_dma_coherent(dev) && !(attrs & DMA_ATTR_SKIP_CPU_SYNC)) { - if (pfn_valid(PFN_DOWN(dma_to_phys(dev, dev_addr)))) + if (pfn_valid(PFN_DOWN(phys))) arch_sync_dma_for_device(phys, size, dir); else xen_dma_sync_for_device(dev, dev_addr, size, dir); @@ -258,7 +258,7 @@ static void xen_swiotlb_unmap_page(struct device *hwdev, dma_addr_t dev_addr, BUG_ON(dir == DMA_NONE); if (!dev_is_dma_coherent(hwdev) && !(attrs & DMA_ATTR_SKIP_CPU_SYNC)) { - if (pfn_valid(PFN_DOWN(dma_to_phys(hwdev, dev_addr)))) + if (pfn_valid(PFN_DOWN(paddr))) arch_sync_dma_for_cpu(paddr, size, dir); else xen_dma_sync_for_cpu(hwdev, dev_addr, size, dir); @@ -276,7 +276,7 @@ xen_swiotlb_sync_single_for_cpu(struct device *dev, dma_addr_t dma_addr, phys_addr_t paddr = xen_dma_to_phys(dev, dma_addr); if (!dev_is_dma_coherent(dev)) { - if (pfn_valid(PFN_DOWN(dma_to_phys(dev, dma_addr)))) + if (pfn_valid(PFN_DOWN(paddr))) arch_sync_dma_for_cpu(paddr, size, dir); else xen_dma_sync_for_cpu(dev, dma_addr, size, dir); @@ -296,7 +296,7 @@ xen_swiotlb_sync_single_for_device(struct device *dev, dma_addr_t dma_addr, swiotlb_sync_single_for_device(dev, paddr, size, dir); if (!dev_is_dma_coherent(dev)) { - if (pfn_valid(PFN_DOWN(dma_to_phys(dev, dma_addr)))) + if (pfn_valid(PFN_DOWN(paddr))) arch_sync_dma_for_device(paddr, size, dir); else xen_dma_sync_for_device(dev, dma_addr, size, dir); -- 2.39.2 From xen-devel-bounces@lists.xenproject.org Wed Jun 07 13:42:12 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 13:42:12 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544792.850803 (Exim 4.92) (envelope-from ) id 1q6tQO-0008Cx-Nm; Wed, 07 Jun 2023 13:42:08 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544792.850803; Wed, 07 Jun 2023 13:42:08 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6tQO-0008Cq-Jv; Wed, 07 Jun 2023 13:42:08 +0000 Received: by outflank-mailman (input) for mailman id 544792; Wed, 07 Jun 2023 13:42:07 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6tQN-0007uj-41 for xen-devel@lists.xenproject.org; Wed, 07 Jun 2023 13:42:07 +0000 Received: from EUR05-AM6-obe.outbound.protection.outlook.com (mail-am6eur05on2062b.outbound.protection.outlook.com [2a01:111:f400:7e1b::62b]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 16b3361b-0539-11ee-8611-37d641c3527e; Wed, 07 Jun 2023 15:42:05 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by AM9PR04MB8698.eurprd04.prod.outlook.com (2603:10a6:20b:43d::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Wed, 7 Jun 2023 13:42:02 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.030; Wed, 7 Jun 2023 13:42:02 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 16b3361b-0539-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=by5nRT545AJSWkSL9EraCx5i5aSDsfLfd7zQJSwNFGbc3NEqPF88iEK1klBtzoJoF0bh+qWT5G0oHujntEA2b8rK8A2idPM07QA1i/32mp1dpyE7JnJoSNcEi+LX4mCearxeDUH216TdVCfSzm5VdqHZDrSB5Y7pVPy+30Or8W2Zx+Vy2bDpIlklRMGYsWIn08/5TdbX31uEJGAZGu70BfSFLRnzU9SWdMktxoQ96pI5BX9AqwHAR1ho9I13eAsel/I8XnFxQ7O60o+fAb6waH3MHa9ZxlvOQBViMaMZ1j9VdRJnnef6165EMk8T2gEMkFAQf6yDZlsCbW1sLfrbKQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=vZtgqitJeU1NED135HtzzAhU8zoe9Ra9zb/jcn6PWSY=; b=b+nqBErRNRGafOsdauUVI+oMBIF7lAA7KamzkIA+p8+XIja3iX9JhZAPE0efpG5OhEbjLKIBfKM2txfTOr5pviiJdtJ1N2goHCaonvkSbdkirVZHjtv/PDFz7LVLrMDFfXvidC5YK23vSpTHyRpFHXMtTIMVLty2J/QnIqYbi9YzSbhLhl0HuPm2rbhjhaII4QjmOk//NBeRAWeEeg1wReiO3PBFkCo8JSijf3e5URK91+zOJ2xj/UMIrMJR0j8LBpWAoVP5KA6c/POW1//00/IQaO0cr3Uf/zt53qZ5wN2YKkw+lUyHzEiY1fIR0Zmbh3TYDPjO8faU04pep5FOPw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=vZtgqitJeU1NED135HtzzAhU8zoe9Ra9zb/jcn6PWSY=; b=mtXI9Ukv075U0anIbcXL7BEkT7us9np1nc5tY1yw6mbpppcG+ioq6tDdhw5Q727auFgrwOOA+BAO9t2Ar9ON8v7LWjHgENXOc7F7pq/rOrm+qgrupOurLJJDaDMPw7lrb8Mjvvj4GxjZYTdqqPGgQ2hq4t7S97l/Gj4GaLRbeSXTtOSwrxhhye4Z+ucmDLNHjM0fY2KAsV+LcAnFWfITcTa1b/y5tSd7J2LoyLW/OoAtb/lUIXqujQlRl/p6GMY7EbvkFXz8ayG3XS7PQjyTzZBHjOZPiMDHL0K0PQV4L39KrmSMyUiXE1efVnhVPqXuktpqFuzpYYTr6/O0KzT0nw== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <97f1cd06-07b2-992f-15b5-e8367a50b8cf@suse.com> Date: Wed, 7 Jun 2023 15:41:59 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.11.2 Subject: Re: [PATCH v4 4/7] iommu/arm: Introduce iommu_add_dt_pci_sideband_ids API Content-Language: en-US To: Stewart Hildebrand Cc: Oleksandr Tyshchenko , Stefano Stabellini , Julien Grall , Paul Durrant , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Rahul Singh , Bertrand Marquis , xen-devel@lists.xenproject.org References: <20230607030220.22698-1-stewart.hildebrand@amd.com> <20230607030220.22698-5-stewart.hildebrand@amd.com> <74765c0b-f463-896d-8f69-ecb1cf55cee0@suse.com> From: Jan Beulich In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR0P281CA0219.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:ac::12) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|AM9PR04MB8698:EE_ X-MS-Office365-Filtering-Correlation-Id: 59d11f58-dd80-4c30-75f4-08db675cf913 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: yKSCwTcLlPaXf6dah5ShRJHW8twYORHyDQlaZExdMHS/V92ghAz6N/Xx7UECUfThC4SVUc1X3memrosJ9GyMh/IPK59r3/9R+F+GLiAarnYVb0x1r1WxhypC/szyHMNzj8W7X0UgsdcHbAA8tXYSlJvqfLYRoxF9AWhTEiKMQ+LWCrfzamU64i53ARC8BVCeQlT7+poUSMJA5IrOvESrgy7krLxxkZl5Hm2rYabjez/gtyJEERksylcxVsDuIzpqNvLra3dIS0+twPsNlkvcofQbpwSdYz0+Dhz9N14Z6667YRRKDCiPKAlOdUpiEFm4irYcnCIKmpAFqSgxpqqFOmJy5rAIUDjS08KYDhpxqVlO+Z2joYe8qcCPyS8mfmP4JewZ/HPweFNLsMJxDf//zYYRfxWoFxMcDnzLQVg5I0ZpGLKHzddzdR0VT38Fonb+0r2c80KUKKRH1GmRR9zXqBSZJpIyEpUPkFyrCWlpdBGYzQ7uChg7OjYd+8tKEwwRxOt06X26PePm6AsNl2u2JAN2p6dbgH4zBjmeTv4YVgXxtE5ozI5eYe2WtY2+vXPohl+JEMhZka14Z+Yz+BGOiE/jCjONuiaQ9j3tHvZHn0qJkHF7HbGu0NhkQmT+BdhaCYm5uIKuT8NwRXKIDHpBgw== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(366004)(136003)(39860400002)(396003)(346002)(376002)(451199021)(6512007)(53546011)(2616005)(26005)(6506007)(31686004)(316002)(83380400001)(4326008)(66476007)(66946007)(6916009)(66556008)(966005)(6486002)(6666004)(186003)(31696002)(478600001)(54906003)(36756003)(4744005)(2906002)(66899021)(5660300002)(8676002)(8936002)(86362001)(41300700001)(38100700002)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?bTEvTEowenMxWWVKM1hSY0FaVVYxRTRaSnZHVHMrYkpEYlNuc0c2SmpwNGxY?= =?utf-8?B?WjhUbnBMWlZBVE4zVXZwVG9qelQ2b09OQ2trRWdhR3k3TVJaMWJQeHhxRmIx?= =?utf-8?B?QnJmbHNuVVZrTmF2VUpacVcxMzZOcVc1cVV5ZlJGdFg0N0xTUEx2SjFHYS9I?= =?utf-8?B?K2E1Z2lsTlkxbVowZEQ3RDlmTG1WT0hvRlhJaGJ3bVBjUDRNcEY1WitJcmto?= =?utf-8?B?T2FaRUJybm1uM2xqL2dtenlTYUZ2N1FCUVRPc3YyS29pR28ycXlkMllsSHlw?= =?utf-8?B?dURxWWZPbjBPb2tZZmp0QnZ3N2JDcHd2U0t5Vlg2MWxET0psSmFJS3czTVlZ?= =?utf-8?B?c0hDYmdGODQzWkk0Z1drelNaUGRsRmU3VVMrY0RoNVFzSzZyb3J2VE5FclpU?= =?utf-8?B?ZmF1OFNMYVVKT0NmdU5qODFuelByczcydHUwbTV5VlRkTGNISFVrQTBaWGVJ?= =?utf-8?B?aU1nQzZwWFArc1FvdVJBcnAvS2dRZ2xKM3hnRDlkUjFsQVlyQUpQZ3E3MlRC?= =?utf-8?B?QkpNbGV5S0JtYmN1UGRYWHFuOUtYN08yeXplRW5WbFRJejBCTnd4VmsrRGVx?= =?utf-8?B?VjhRWDdpaUtUYnZQb2JQVi8rNjRIdlVOK3pmSjJ4U0NScGFPZjhOZXlJZ3lt?= =?utf-8?B?R0dtdlhIUVNCb0JvUFQrZzBacC9OTDFGWk1mSmtxN0VvVi80QnhFM0JBY1JO?= =?utf-8?B?ZDVOVXcyV0ZGc1ltZjAyOEZIVXEzRVNYZWNlT2Y1QVFFVFlLdnhaTXlMUUxW?= =?utf-8?B?Wmo5ZnhRdzNxUTM4cTF0b1Q2UDAreENRM1ZhSnowQnptSUs2cHJreHpRS1R3?= =?utf-8?B?TnNEWGlpTStzVXdmOE5ZMXZuUjd6bjFvdGxvTUQwNW9kT0FxWmdGNm1HRnor?= =?utf-8?B?OXdLV1VzREcydVk2WnZZY3JOaU53SEhOOERCM2s4aVlzMkVZSm8zaUJ5VzFK?= =?utf-8?B?QS80S3lMNGp1ZVpCcFd4S3BqelJZc3NyYmlpS0c5b1BuVktRZEF1NUhTV3kz?= =?utf-8?B?cWZBRVE2dXdjV2Z6dk92UElOLzVzb2JkS0FoZzd4MU9oZEVvTU9kdU9jTVNE?= =?utf-8?B?ZDZqRzhNL1hrR24zdDRqYkFSNVdzVkRJZGFDWjhpeXJHNXk3YTZKOGpHaUNN?= =?utf-8?B?Tkh1VkZqclNEbzRMYjdDTDZlQitFWHRJMXZsc1ZmM0lxeHBkSllLMWI4ZHRZ?= =?utf-8?B?ZFF3SmxlbHpOVjRJR2VEdmdYakwvSys3YktPaGM2Y1pLWU1Qdkl1Z1plSUtx?= =?utf-8?B?bGdXbDRDU0dpZ1FlWllhL3Vqbks3R3RnSXUxelRwVDQ2Y1EwblVBanhDSlRB?= =?utf-8?B?SnNacGFscXpVR21iL1FqNlZONlcyWmJyRXJ5YURkTWxKemRLaFA5Ulh2MVVO?= =?utf-8?B?S2ZxTGtDaXVhYm1vVXVYVEx2RjNWWW1iSVdSdDkyTy80cjc0M0Y5UnhseWdQ?= =?utf-8?B?WS9mTy94ZWpMWk8xMUhSajJmbSsvQzM1NXo5L0tYSjhNdUNmeUVyd1h4TkFa?= =?utf-8?B?TnRiWmV1TzNueE9MWkJoZmR4MVlacHJ0RVp0ZlFJM2pCY0dSNkVTbzBjWDFi?= =?utf-8?B?aS9lLzkwSWFTWXJZd251NU92YUdrS3VvdXMvMmlNeHVDa2RZTEtDRmZ4b2Rh?= =?utf-8?B?SU1iS2E0OWtlMmo2UWEzM25ROGJQYkhqdXpoNktDRFl6WDFXeVpBZnlSMzg1?= =?utf-8?B?dThmVXNaaDhlRC9ySytvQmwrWjdBdU01WU1HVzBOd0g1WEZUSEZQdFNYVDBC?= =?utf-8?B?QkUxTnFCUjI2eDRWVlFBL0NWcm93amJIY2RDSG5JVnpyM1hxU01XY2tMMDc2?= =?utf-8?B?MVNMOCs1N1dYT2h3V3pJMGE3SWY0M1V0bTNBUFRsSTVtaHlIdVVQYzUwMEFx?= =?utf-8?B?dHZ1V2IrRmhmdWpVS0tUd3Q3M29saTFCeTNsbVl4RFV2ZHE2M0kxeG9ENmRx?= =?utf-8?B?T0RJUjZ3aWFrZFYycUw3V1N6WjArbFdDeHVucWZxc1BwQnpBR25sSHFSNlRz?= =?utf-8?B?T1RjRTBsTUVaRnpUMlpGUUlEWFZjd0M3WURGUFhBTmJ2K3R4bXNoQVAvU0Zu?= =?utf-8?B?YktiUHNobzcrVVZ6K3M0WDYwc00xdmVwbzdRcGdPL0t1aU1WbXhTaXh4Slgr?= =?utf-8?Q?GJS9CLacd5X+GiOL9XJprS4Rv?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 59d11f58-dd80-4c30-75f4-08db675cf913 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Jun 2023 13:42:01.9657 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 1zReTT5KQzWPxApVjl18zbOZE5oZD+XReGR4S4aTnJMdun4IS7YYI0MWvv0oPnnJkoRxCgQY/IQ4FOYzOKr1Kw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR04MB8698 On 07.06.2023 14:45, Stewart Hildebrand wrote: > On 6/7/23 03:59, Jan Beulich wrote: >> On 07.06.2023 05:02, Stewart Hildebrand wrote: >>> --- a/xen/include/xen/iommu.h >>> +++ b/xen/include/xen/iommu.h >>> @@ -26,6 +26,9 @@ >>> #include >>> #include >>> #include >>> +#ifdef CONFIG_ACPI >>> +#include >>> +#endif >> >> This header is supposed to be usable without #ifdef, and then ... > > You suggested adding the #ifdef > > https://lists.xenproject.org/archives/html/xen-devel/2023-05/msg01409.html > > Please clarify Hmm, indeed. Which is a sign that neither solution is really nice. I guess the one with #ifdef is slightly preferable because it'll avoid (as said in the earlier reply you refer to above) the need for every arch, even if ignorant of ACPI altogether, needing to have an asm/acpi.h. I guess we really need to deal with all of this better in / by having suitable common code. Jan From xen-devel-bounces@lists.xenproject.org Wed Jun 07 13:42:12 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 13:42:12 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544791.850792 (Exim 4.92) (envelope-from ) id 1q6tQC-0007uw-94; Wed, 07 Jun 2023 13:41:56 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544791.850792; Wed, 07 Jun 2023 13:41:56 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6tQC-0007up-6P; Wed, 07 Jun 2023 13:41:56 +0000 Received: by outflank-mailman (input) for mailman id 544791; Wed, 07 Jun 2023 13:41:54 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6tQA-0007uj-KG for xen-devel@lists.xenproject.org; Wed, 07 Jun 2023 13:41:54 +0000 Received: from NAM11-DM6-obe.outbound.protection.outlook.com (mail-dm6nam11on20619.outbound.protection.outlook.com [2a01:111:f400:7eaa::619]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 0d265e2d-0539-11ee-8611-37d641c3527e; Wed, 07 Jun 2023 15:41:49 +0200 (CEST) Received: from MW4PR02CA0019.namprd02.prod.outlook.com (2603:10b6:303:16d::23) by DM8PR12MB5432.namprd12.prod.outlook.com (2603:10b6:8:32::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Wed, 7 Jun 2023 13:41:45 +0000 Received: from CO1NAM11FT099.eop-nam11.prod.protection.outlook.com (2603:10b6:303:16d:cafe::59) by MW4PR02CA0019.outlook.office365.com (2603:10b6:303:16d::23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33 via Frontend Transport; Wed, 7 Jun 2023 13:41:45 +0000 Received: from SATLEXMB03.amd.com (165.204.84.17) by CO1NAM11FT099.mail.protection.outlook.com (10.13.175.171) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6455.36 via Frontend Transport; Wed, 7 Jun 2023 13:41:44 +0000 Received: from SATLEXMB05.amd.com (10.181.40.146) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Wed, 7 Jun 2023 08:41:44 -0500 Received: from SATLEXMB04.amd.com (10.181.40.145) by SATLEXMB05.amd.com (10.181.40.146) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Wed, 7 Jun 2023 08:41:44 -0500 Received: from [192.168.137.15] (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server id 15.1.2375.34 via Frontend Transport; Wed, 7 Jun 2023 08:41:43 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 0d265e2d-0539-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=hWY62Z4yE5Ehv4Fa+nAoUrYfw6CHyqAiIc49iFRjkWLSmbkEBD3O4nLLqNT0kp0Gs0Yz2DMKAznpvFa3cR4WsT8WG4Si5qwqqv3s4tmQKg3tOYcRsxGjs/E/oljlzAU5BbZeblYkMPKz52/MPppYSO1dybiTrXueaQEu1rCALva29AEn1chyTdBBXbdmmaJE9EYibkLpNmcCNTLMPeR17hn+9yCUk9KQvdEpf99aqtwH2QnxluilW4SA2Lxade07rKXRr//rhutVYOV7ahV8Cr6Uu/2Rb3ZhEl9ZYAVSgRsv7O0LYG9a2w1CI13sCHvMdrQHSmvk9AC6ENP4Dh5ucg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=1v1FDPr2GuYUhQsWFjLxq2YKCqwiKSRq0redPbb5Ug4=; b=Cp3UClAPWRzBjRZ+WK9YdzOIQUK73pkEyRMp+vrzfWLkE2DdMwfo1tPSjt39nvCZt9guWvq0HhMktbIs2/r7rmOzl8c98UGss7IPjNcWhJcSkc274dYyFumJ1CKnkY9J7xmyrRSTJRa6clJWfMQ9cWP6GAAerpH4YWHat5txDkmZ7MGsLYtJXgD6rcUceIJKuiBGXNzmNW2p6nYG03fN83Vt4rzRJkCsi+sZMfqH7/XObDuBSmNEs8omSZOi4T2rAPBTjOQC8M2uk4ahOiG8n1Jur2heTWhgaPmm70Ugql2wS19nAx86KT2ZZQ2QoyWnQqOCiGQVqp+igbG4cptZfQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=xen.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=1v1FDPr2GuYUhQsWFjLxq2YKCqwiKSRq0redPbb5Ug4=; b=sby/mt9K1MR54nqXzG8KQAPtyBwIyZJr0uJWECdQRjzSQ4796BuK2aMOy2Shtk9QVjhO+bngrvDtopxG5AWSrZwnciRmK49qw+JdG7aGhS4EQujeqn6LLXenhKmSSP66fYB68/1VhgitadCy64k5vypP3kqhzXIQon3DzHjcXjA= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C Message-ID: <347c6352-83ed-bbd5-8569-97619fb4faf8@amd.com> Date: Wed, 7 Jun 2023 09:41:37 -0400 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH v4 1/7] xen/arm: Improve readability of check for registered devices Content-Language: en-US To: Julien Grall , CC: Oleksandr Tyshchenko , Stefano Stabellini , Rahul Singh , Bertrand Marquis References: <20230607030220.22698-1-stewart.hildebrand@amd.com> <20230607030220.22698-2-stewart.hildebrand@amd.com> From: Stewart Hildebrand In-Reply-To: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO1NAM11FT099:EE_|DM8PR12MB5432:EE_ X-MS-Office365-Filtering-Correlation-Id: 45370726-04d5-4b52-2f80-08db675cef1e X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: DdQs2JO3qn9LqYyXs1Rrk22ztH2dre/3Mw1Vxe8/YeI2gTFVUQRbkxRN8CM/prnR7C6q55GHPFwCP2QLh27OiZYqp1LeBY7+6DgENDOFEYr8gLt5G6OF/YWSrgoi1viDPSwQkMiY411cVFoOUoQspiq3QOoIYnEULfFyfiNtYJ7NnbpXmQdEqESwo6T5YdBLIv8BRWtoESdzE4zeXBowVGg9tLsSXU2aX9DdetPkf0YV8PJwsiqUyvi5JePmEGhrqPrpi9V+PqE0VmB7OGIDXdZtKZOLOFh6XYgCQdye5XkpJj2x02nTsOMhnZ3pcO3Mqy/poLjLVUZeJy3ZYFydddWgwwRdY4505L3SXX7EEJ/NUfBEi7vVAuISpXYY2/ClofKg/hJvC9Q42iUdyP8yfMKd8XlQzlUN+nIlzAiCp/7EULx4+VrHmCnODeP9gLebdNhrUPwA7qGTRCW0LWjKcmiKMJbLGvbxbwL6nakTgpZ+mc/YVKs5E8JUFxmqpdEiHeSdmFCx2cySutbOPw9c0iv4vsww9y3JViNhe6+Xlgo2NKHAxozMhwgKsh16qt8HSxg3+OhaQen6owtcTi6TKswk3v3u8l9d/A/VrWyuz5XHcBxzWeSW6ObIXL+Bfeva64cSuCIFWx51PPB51J2JD2jCaKXZ3qKTqLa6YoVmYuph390O6+4H2BDyvHeThbz5CGc2O/abbTmcuf1bl3YToqFEtiZXXGT0fbh2VSjAsrreWYCGGfD0unsPkfTantZIRbkUf3RopMP3YzjAw9OdkbvqdTQObNutqWENvA2XGa67NtuNUmeienGPX2I91zqN X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(346002)(136003)(376002)(39860400002)(396003)(451199021)(36840700001)(46966006)(40470700004)(86362001)(16576012)(81166007)(82740400003)(83380400001)(54906003)(356005)(110136005)(47076005)(4326008)(336012)(426003)(70206006)(70586007)(6666004)(82310400005)(478600001)(2906002)(36756003)(186003)(40460700003)(36860700001)(2616005)(5660300002)(8936002)(41300700001)(8676002)(40480700001)(316002)(31696002)(44832011)(31686004)(26005)(53546011)(43740500002)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Jun 2023 13:41:44.8036 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 45370726-04d5-4b52-2f80-08db675cef1e X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com] X-MS-Exchange-CrossTenant-AuthSource: CO1NAM11FT099.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM8PR12MB5432 On 6/7/23 03:27, Julien Grall wrote: > Hi Stewart, > > On 07/06/2023 04:02, Stewart Hildebrand wrote: >> From: Oleksandr Tyshchenko >> >> Improve readability of check for devices already registered with the SMMU with >> legacy mmu-masters DT bindings by using is_protected. > > I am unconvinced with this change because... > >> >> There are 2 device tree bindings for registering a device with the SMMU: >> * mmu-masters (legacy, SMMUv1/2 only) >> * iommus >> >> A device tree may include both mmu-masters and iommus properties (although it is >> unnecessary to do so). When a device appears in the mmu-masters list, >> np->is_protected and dev->iommu_fwspec both get set by the SMMUv1/2 driver. The >> function iommu_add_dt_device() is subsequently invoked for devices that have an >> iommus specification. >> >> The check as it was before this patch: >> >>    if ( dev_iommu_fwspec_get(dev) ) >>        return 0; >> >> and the new check: >> >>    if ( dt_device_is_protected(np) ) >>        return 0; >> >> are guarding against the same corner case: when a device has both mmu-masters >> and iommus specifications in the device tree. The is_protected naming is more >> descriptive. >> >> If np->is_protected is not set (i.e. false), but dev->iommu_fwspec is set, it is >> an error condition, so return an error in this case. >> >> Expand the comment to further clarify the corner case. >> >> Signed-off-by: Oleksandr Tyshchenko >> Signed-off-by: Stewart Hildebrand >> --- >> v3->v4: >> * new patch: this change was split from ("xen/arm: Move is_protected flag to struct device") >> --- >>   xen/drivers/passthrough/device_tree.c | 11 ++++++++--- >>   1 file changed, 8 insertions(+), 3 deletions(-) >> >> diff --git a/xen/drivers/passthrough/device_tree.c b/xen/drivers/passthrough/device_tree.c >> index 1c32d7b50cce..d9b63da7260a 100644 >> --- a/xen/drivers/passthrough/device_tree.c >> +++ b/xen/drivers/passthrough/device_tree.c >> @@ -141,12 +141,17 @@ int iommu_add_dt_device(struct dt_device_node *np) >>           return -EINVAL; >> >>       /* >> -     * The device may already have been registered. As there is no harm in >> -     * it just return success early. >> +     * Devices that appear in the legacy mmu-masters list may have already been >> +     * registered with the SMMU. In case a device has both a mmu-masters entry >> +     * and iommus property, there is no need to register it again. In this case >> +     * simply return success early. >>        */ >> -    if ( dev_iommu_fwspec_get(dev) ) >> +    if ( dt_device_is_protected(np) ) > ... we now have two checks and it implies that it would be normal for > dt_device_is_protected() to be false and ... > >>           return 0; >> >> +    if ( dev_iommu_fwspec_get(dev) ) > > ... this returning a non-zero value. Is there any other benefits with > adding the two checks? No, I can't think of any good rationale for the 2nd check. After splitting this change from the other patch ("xen/arm: Move is_protected flag to struct device"), I simply wanted to evaluate it on its own. > If the others agree with the double check, then I think this should gain > an ASSERT_UNREACHABLE() because AFAIU this is a programming error. Right, if the 2nd check was justified, there should be an ASSERT_UNREACHABLE(), good point. But I don't think the 2nd check is justified. If the 2nd check is dropped (keeping only the is_protected check), then do you think the change is justified? >> +        return -EEXIST; >> + >>       /* >>        * According to the Documentation/devicetree/bindings/iommu/iommu.txt >>        * from Linux. > > Cheers, > > -- > Julien Grall From xen-devel-bounces@lists.xenproject.org Wed Jun 07 13:47:13 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 13:47:13 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544802.850813 (Exim 4.92) (envelope-from ) id 1q6tVF-0000hz-9V; Wed, 07 Jun 2023 13:47:09 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544802.850813; Wed, 07 Jun 2023 13:47:09 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6tVF-0000hs-6B; Wed, 07 Jun 2023 13:47:09 +0000 Received: by outflank-mailman (input) for mailman id 544802; Wed, 07 Jun 2023 13:47:08 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6tVE-0000hm-6Y for xen-devel@lists.xenproject.org; Wed, 07 Jun 2023 13:47:08 +0000 Received: from esa6.hc3370-68.iphmx.com (esa6.hc3370-68.iphmx.com [216.71.155.175]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id c9733dc5-0539-11ee-b232-6b7b168915f2; Wed, 07 Jun 2023 15:47:06 +0200 (CEST) Received: from mail-dm6nam10lp2105.outbound.protection.outlook.com (HELO NAM10-DM6-obe.outbound.protection.outlook.com) ([104.47.58.105]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 07 Jun 2023 09:46:57 -0400 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) by MW4PR03MB6459.namprd03.prod.outlook.com (2603:10b6:303:122::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Wed, 7 Jun 2023 13:46:55 +0000 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::192:6bdf:b105:64dd]) by SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::192:6bdf:b105:64dd%3]) with mapi id 15.20.6455.028; Wed, 7 Jun 2023 13:46:55 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: c9733dc5-0539-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686145626; h=from:to:cc:subject:date:message-id: content-transfer-encoding:mime-version; bh=846YRDLuaXpMFnIsm3THLtgrWWRRlYqy8JLQRH1S3Ws=; b=RVnMOnk6zmePb9/MvAPKLovaiTfOAcH/V4sCKWfIm+QmAmrn8c30e1kC tEhGPP9+Y4jKX7d131NTHgC1m9vX0ZCZVBV2YLPA4F/8hXWgBXVqM6AF1 zHtYEuaNoV4Ehe1HKpqtS+psLhKRi6Acfpgy2ipibCX6j5CSFQf5XqfhF 0=; X-IronPort-RemoteIP: 104.47.58.105 X-IronPort-MID: 111241108 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:4+gf566WyKD9TUvV3IcowQxRtB7GchMFZxGqfqrLsTDasY5as4F+v jYfDzqHPv+LMzemKtByPI6/9x4H68Tdn4BnGQU+qSoxHi5G8cbLO4+Ufxz6V8+wwm8vb2o8t plDNYOQRCwQZiWBzvt4GuG59RGQ7YnRGvynTraCYnsrLeNdYH9JoQp5nOIkiZJfj9G8Agec0 fv/uMSaM1K+s9JOGjt8B5mr9lU35JwehBtC5gZlPa4T4weE/5UoJMl3yZ+ZfiOQrrZ8RoZWd 86bpJml82XQ+QsaC9/Nut4XpWVTH9Y+lSDX4pZnc/DKbipq/0Te4Y5iXBYoUm9Fii3hojxE4 I4lWapc6+seFvakdOw1C3G0GszlVEFM0OevzXOX6aR/w6BaGpdFLjoH4EweZOUlFuhL7W5m6 OMlEmFVcwC4qc2M4PGEdfFv2/wiM5y+VG8fkikIITDxK98DGMiGb4CUoNhS0XE3m9xEGuvYa 4wBcz1zYR/cYhpJfFAKFJY5m+TujX76G9FagAvN+exrvC6OnEooiOWF3Nn9I7RmQe1PmUmVv CTe9nnRCRAGLt2PjzGC9xpAg8eWxHqhBNtLTO3QGvhCmFaNmkcxUUUsZwWk/Of6r2OjUOlFJ BlBksYphe1onKCxdfHtUhv9rHOasxo0X9tLD/Z8+AyL0rDT4QuSGi4DVDEpQN4sudIyRDcq/ kSUhN6vDjtq2JWKTVqN+7HSqim9URX5NkcHbC4ACAcAvd/qpdhrigqVF44+VqmoktfyBDf8h SiQqzQzjKkSishN0Lin+VfAgHSnoZ2hohMJ2zg7l1mNtmtRDLNJraTygbQHxZ6s9Lqkc2Q= IronPort-HdrOrdr: A9a23:bt6Oi6/CM0CuhTiuDvduk+AcI+orL9Y04lQ7vn2ZKSY5TiX4rb HKoB1/73XJYVkqN03I9ervBEDiewK/yXcW2+ks1N6ZNWGLhILBFupfBODZsl7d8kPFl9K01c 1bAtJD4N+bNykGsS4tijPIb+rJw7O8gd+Vbf+19QYIcenzAZsQlzuQDGygYypLbTgDP7UVPr yG6PFKojKxEE5nFfhSVhE+Lo7+T8SgruOeXSI7 X-Talos-CUID: 9a23:hxFeJ2+2nXc8RSkU836Vv1MLJ/p0KmDN91n/GW/7NllxS+CtSEDFrQ== X-Talos-MUID: =?us-ascii?q?9a23=3AvoNsFgy8LWvgACflh7MwimdCroWaqLylFhwms8x?= =?us-ascii?q?egfvaKnFueBKwkT+MWIByfw=3D=3D?= X-IronPort-AV: E=Sophos;i="6.00,224,1681185600"; d="scan'208";a="111241108" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=dGasqRTTFZ7FReM87rQowZ97S63kExs8z1ONHX/GpliuvPvNFd0J2fZDddUkb+NcHvVznLcASfij3i5OWe63mxF38voOnoNOsyEmikHxrbntc2Fp4AKtpU1di36SgtTVE/wYvfPbKmAXpHQ2Y3EMMZYyGX2HMtMmiMI/qDD9OGSts0fbE6lrA7tUdhg0MYeQc+/VcCeyQ0isqJrHZoDE4jtH4By/PqcjvfLJdfy1YsYs1cL+0zx8J9/LC4yEEVoh+5lt2zJzrKNLZPLvYYMCcNJZAIXxNajTc8xYhY7WGflA8ocK/YBT1hIrvi1W+IJe5mJ72GQwCgjPxrn8w2633w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=RS1NMkxzqfv1+nm1W4arEpqF7PXRDdlJ5L3ySeizlsM=; b=UIzi9qz1gGTHZ70oMy+uNfLPXzzYXj3Qcd+jGiRaryOafOM6l4ExJWCqP8zNVzQOLjKAigPotHSxf1xsDwIKhrFns4FWful/Jak0ejrfXr2gGHlgWx/oVZUrPP6Cvd/ZO9TooJsY14mGzKL5HbE5LDSubU3KR+DgRPgazU4aBRBrsdzDrl4YFUxCvtbte9mb90DcmBLZ37A0BR93PO5ZX1SeUqyGPy9KJZQ8m7dNr+2cAhlGmCIeZeGbC8qTxLcWI7PQdX5M88yn+8NlVXMH/39wdT1Q+2aY66BPekE3xj9nKusKf3/8z0BF1xsYAVjm5hyQBySPSGtLck1M7z/oEQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=RS1NMkxzqfv1+nm1W4arEpqF7PXRDdlJ5L3ySeizlsM=; b=SrutX3I30OYg3p2JFs97XTPdANANobAHfmdIHCC2QxZf51GEESsp3sjwDhmmX2dpENNsTG/fVu6MTMikVRQKvvWvp+2Xa6znsP65bAyHVqIgpQcI9Ey3q4qsxB4BRZXA08F267RPqac0jBPlKrnzD5hmObij6OZkJO8fQb0sAeo= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; From: Roger Pau Monne To: xen-devel@lists.xenproject.org Cc: Roger Pau Monne , Jan Beulich , Andrew Cooper , Wei Liu Subject: [PATCH] x86/hvm: print valid CR4 bits in case of error Date: Wed, 7 Jun 2023 15:46:38 +0200 Message-Id: <20230607134638.53070-1-roger.pau@citrix.com> X-Mailer: git-send-email 2.40.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LNXP265CA0069.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:5d::33) To SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|MW4PR03MB6459:EE_ X-MS-Office365-Filtering-Correlation-Id: bab2da2d-7fe2-4761-e57e-08db675da7d0 X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 4f7YWOersrtml+B6YrmgUnbCalDqd94QXZcrswBJod9JqvwTcUFY7PvU0THl9XW4CuRTMhdNy78rMvAMS4eKQGzexmEVFqbXno78gQNVd+QUfOwLGKpCin+144J7wQYyarrnxsDBHJSzD0VZAKLAp3V3uXVolrHC/KvGIF2HnHPsTsX0lt1aiDu+i7x4jkzjoahZf0HVAlzO47elDq+c99T9UJs8eCI3Gj9QrT/nv1OWz+78L4GbAZRAS56h2lH6OeXwl1oHCnqzQ9Qoir0lRCoFCrXN0/S0JuDbKquae4XztvksCXIG0USxGH3yqOnRq6wLb+KQlJQHMrofmmmHv/ToV0SR8neOcZH/9F9IcL05wrkEhfs2Sj6cshQhjlXvmVIc9Y0oQ6PH4uS+Dq6l22+0TIMGfd0tkuhNhJ7M8se9xJU6MMrTkxsGRoA48YSEXP6zB+jFWo+gWke3E8PXS8tZ7A3UpkrNI3NLrocEFsyGtttW0QrNsZkOcKoEKd7clhgrA82QNNxkDh+fM0KIJYR8xQBGa1JRVvZZEn5t0IzlBkn6WPtxGjJfIMVsqjPq X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(346002)(136003)(366004)(376002)(39860400002)(396003)(451199021)(86362001)(83380400001)(54906003)(4326008)(66476007)(6916009)(38100700002)(66946007)(6666004)(66556008)(6486002)(478600001)(2906002)(36756003)(186003)(2616005)(5660300002)(8936002)(41300700001)(8676002)(316002)(82960400001)(26005)(1076003)(6512007)(6506007);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?aE1XWHdlVk9zdlpuOHdBc2FjMFFvUnc3QWFTdEYvYU9qV3ZSYjNCcGVMdWts?= =?utf-8?B?aTFJTUk1RCtaRGpacHRleWpsUjVaRWR2UjJHUHJlTWF1eFZsTVg1d3NWU0xy?= =?utf-8?B?N2d5Q1BEbXd6MjhOQXNRKzVMK3kvYjFqL2lNSkxLNWp1blFQTnlHS3ZaQXEy?= =?utf-8?B?WW1EeHZ0TS9jYUFtRXNWSXRObzAxVTR0YWRzMHcvTUppdHQ2VnJtakJ3bWM5?= =?utf-8?B?MjJoM3ovNXlmaFFDblBoQXEzZFUxbmQ3ZS9qR3JVYjU1RThVZmVOdFRWMTUz?= =?utf-8?B?QjRnUXhoYVBEb3kzelgyQ2JzTlZEeDA1RW81YmpHTFJaNTcrQm4wMVQ5TWMr?= =?utf-8?B?eks5cU1IcDk5S1FBVWxpc3hoamhtUW1icnB6bHZkRWtreGorV3NZNnFDL1p4?= =?utf-8?B?NjBlZTkzRGNkT2x4aGxqMDhNcFVhM1liamsvMTZ0UFI5TXlnN1doME8yM1hI?= =?utf-8?B?cVhpd0UzNk9VbkhOa3Q3cDNLUEJJRXJhQTFtNWc4c0J1V1JxME9zbmo3V1BV?= =?utf-8?B?SEZERGdHNUVqWFhnU3prcGJ5SVd5ZDV4V3JEeUk1Qlo0dlRJNXU5cVJUOWo5?= =?utf-8?B?TkMzdklsamN1cmYvV1JURmpNVzNjb3BQTzhwVW1qRmFJeklzOEFRRHd2RmtC?= =?utf-8?B?NjZFOWJyaFZrTUZGaHBaTTQvdlBUanVwVTRmbHBka0J6ejc5Mm5Vdkk2ektJ?= =?utf-8?B?UTNuSEhmWWR3ZjNVbVZlQ3p5V09Ea2MrVndDWkhlMXJXbHVuNDdZdlFiQXQw?= =?utf-8?B?T0NvWE00MHcvUzNkOWZPTEJHbVA3bzA1VmJFNXZoUWlCamU4bUI3YWp3b1dK?= =?utf-8?B?b0Y1dWFlczMvQUR5Z1VETFlsUUpIQUYrQkpwTlNaanRLOXFqc0VrRTdJMEdR?= =?utf-8?B?NlZTeHc3L0Nwek9VbzRoZkNuYkNST05zKzlOc2ovZnEySzhoc21xV0s0d3hP?= =?utf-8?B?RTczY1Zjc05RUmtzRkV5akN2enhZenUvL2hUczdVR2lxSm5RYWlQTXFrTGVu?= =?utf-8?B?Z0xBVG1ob0s1M2x5ODc3elI5M0NDdGg5M2FVdlNDc0JXaU9qRWFtZEhKWFNq?= =?utf-8?B?MytrRkFjak84YkxHRGVOWUtEby9NZGNpVWxoaGV5NXI0bFhrbmhDT04rRktn?= =?utf-8?B?T3ZVb3pZb2hxRHBJSG9NaDhQbElsVnBERk1TcE14UDJaeG5ucW1qM2doMlJn?= =?utf-8?B?VU5mQWZYRE5xbE9sdmNIRGRRdU1XcTRDS0xjYlFtMUVMaDBZaklhK3YxSm9X?= =?utf-8?B?TDZ3NU5CSlY1R3ZWdEhEY1pKMVVxbU9sU000WEpwSVFkS2FpZCsvVGxLMjdz?= =?utf-8?B?SVM3QlFEaDRKQVJZTnNUazZtY2NIRTFiSEVUNmxVRFZFQzBUNFM4RHlmb3RQ?= =?utf-8?B?dDhPcVhDNWRQUmNSemVDaVl6cXl3VEVxWXVQckdraXIxek5uR2U4bmxsekdB?= =?utf-8?B?T1UyTEZUVFBPZEQ4bFVKdzVub2FCM1JyTmVvMFZJc05sZjVkazc4TlNWMUJw?= =?utf-8?B?aWJUSGxMOTFyT2lwYkxPT3FOdWJLR1pEQ29ic1l0SmxyeXo1dnJTTUFiZ2Y3?= =?utf-8?B?Nmd5TENJOS95OVVoWXlLYTBFR3VSeHVibXJPVElCYnMrVHV0V0JnSHBsaE0v?= =?utf-8?B?YWtvYTBZUXBocGZhNkFLSVlmSlBWcVZFM25ORWJEWnVzMjZuaUNENytUYncr?= =?utf-8?B?V1JudC8zeUp3c3BESjZud3ZxcGRWaVBDV1VRR3p0aW42VDVrbThYSjVHTUIx?= =?utf-8?B?bVRUZjdVUk41Tnh5YUh5R2NxYjF6RHdhb0YrZXJTUnBXWWxrUjVBRlRackdU?= =?utf-8?B?bGh2MzdDZ2o3azZmeWZoQkJrZnYxeUgxMFNkVWdJR3liQXhteEc0aU1Lb04r?= =?utf-8?B?cjhxcm5PanUyTUF2d3Ywa2RvdWJzS2lJdzlKdG05WFdXazJSbUFFWFQyUWZW?= =?utf-8?B?L2g3VGYxMHpLZ3ExOWhqTnlvNnFoWmhwODdWM3hFTWFRZjFGRFNZeHlHS1Rv?= =?utf-8?B?QUd1ZjYrN25XeGI2eE0yWllFdjduNSs3aE44Mm5FZWZLTTQxWituTW8reGJk?= =?utf-8?B?MEd2K2lYajRNT3JsTko0eTNQRUxwT2xaYUhzMEJReVUxU3RhdDRRMzVNVzZM?= =?utf-8?B?a1NrU3MxTE1EeVlkOEhMa1VRUVBpSjBQMVI0MW1lOWV6RkJzallEa3hqbkox?= =?utf-8?B?bGc9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: xlIlmN2IDGPWdibjTeZLuwTFBFUw4M0BWWKB/IIqXnqOp1iq8j13QcRjoHwEXpaR/nvEK8dHQcQSlrwwVdAhWs8xsV23q0gieFK4EtFVAJ5Ghm6SNfK0T6dpCLHmyG9xOAvwHAkm3Pkct8aaelZWROdpvm6Tm7Eb+YmeboUdfSzaeVAv9K/BlIgwvP+VghymD98oXwQ8v0IxDCMJNyN8eTwYdUc1zIW4KifFGAfBXYaxkQVtGiaB9A/r9fYW8yrCfCnq55hQRsQUJIA7MEPKatJSVElxCoQ4GGGmayWHdXocyd2Od/1Kc1rttdXXvJj5cL1dGlFJjMNzZkTLama2QLkb8RAFax3aLM7hB5eLO0SJx74pR8fr4dIsKpVytVWW2cu416T/0x+sw5zF6QplTr4FIPQI9QFIeP017PcXdsD5lQJnOKKibL5Pbwmpjf4YGZPg4Fh7sz0YUPO6Q2f66KfIUkyAsZZr39D/edcF02y3EuPKRgw6yz72bBcONz2dGfSAVCCb6bnoGjLOdSSPr44cHFQCfoGlyiU4O8Tyu3zAJ94O2J8USwjPGPVdLXVdhtFZJRsDZdvbSZgrAbEx7mEqPJYoqXsDFJTTXVkSKUKUvYYU1gkwwU1O26pYrFylnoBajynGQLOCEOqF9dUI3UIC0aXdRFyZ9B2rTVwEZnjr8wex+7jXVkAgL052xP4OfJVC8Gbn4PvrE6kqDjpkgXErCMNq73eGDjH6vSN5Ink9de1e8zz69Utc+ociARrxpscYkpodSq+sCrGousPm07x1M5dEO4qUK9yMguv3FrW9iLiH6ku4YQNsO5HyGu59 X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: bab2da2d-7fe2-4761-e57e-08db675da7d0 X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Jun 2023 13:46:55.0471 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: Bta85j0X7e3y0nLFqxwiItdQnoy+64DNeMXzM5xN/e9eaS79xBR5RStqZSAxmck6sV5obuULnKx5yZRdNel0OQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW4PR03MB6459 Some of the current users of hvm_cr4_guest_valid_bits() to check whether a CR4 value is correct don't print the valid mask, and thus the resulting error messages are not as helpful as they could be. Amend callers to always print the value of hvm_cr4_guest_valid_bits(), and take the opportunity of also adjusting all the users to use the same print formatter. No functional change intended. Signed-off-by: Roger Pau Monné --- xen/arch/x86/hvm/domain.c | 4 ++-- xen/arch/x86/hvm/hvm.c | 8 ++++---- xen/arch/x86/hvm/svm/svmdebug.c | 2 +- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/xen/arch/x86/hvm/domain.c b/xen/arch/x86/hvm/domain.c index deec74fdb4f5..8951230a9f52 100644 --- a/xen/arch/x86/hvm/domain.c +++ b/xen/arch/x86/hvm/domain.c @@ -266,8 +266,8 @@ int arch_set_info_hvm_guest(struct vcpu *v, const vcpu_hvm_context_t *ctx) if ( v->arch.hvm.guest_cr[4] & ~hvm_cr4_guest_valid_bits(d) ) { - gprintk(XENLOG_ERR, "Bad CR4 value: %#016lx\n", - v->arch.hvm.guest_cr[4]); + gprintk(XENLOG_ERR, "Bad CR4 value: %#016lx (valid: %016lx)\n", + v->arch.hvm.guest_cr[4], hvm_cr4_guest_valid_bits(d)); return -EINVAL; } diff --git a/xen/arch/x86/hvm/hvm.c b/xen/arch/x86/hvm/hvm.c index 2d6e4bb9c682..f27be2cefc0b 100644 --- a/xen/arch/x86/hvm/hvm.c +++ b/xen/arch/x86/hvm/hvm.c @@ -1018,8 +1018,8 @@ static int cf_check hvm_load_cpu_ctxt(struct domain *d, hvm_domain_context_t *h) if ( ctxt.cr4 & ~hvm_cr4_guest_valid_bits(d) ) { - printk(XENLOG_G_ERR "HVM%d restore: bad CR4 %#" PRIx64 "\n", - d->domain_id, ctxt.cr4); + printk(XENLOG_G_ERR "HVM%d restore: bad CR4 %#016lx (valid: %016lx)\n", + d->domain_id, ctxt.cr4, hvm_cr4_guest_valid_bits(d)); return -EINVAL; } @@ -2461,8 +2461,8 @@ int hvm_set_cr4(unsigned long value, bool may_defer) if ( value & ~hvm_cr4_guest_valid_bits(v->domain) ) { HVM_DBG_LOG(DBG_LEVEL_1, - "Guest attempts to set reserved bit in CR4: %lx", - value); + "Guest attempts to set reserved bit in CR4: %#016lx (valid: %#016lx)", + value, hvm_cr4_guest_valid_bits(v->domain)); return X86EMUL_EXCEPTION; } diff --git a/xen/arch/x86/hvm/svm/svmdebug.c b/xen/arch/x86/hvm/svm/svmdebug.c index 7d6dc9ef47db..df5da29f8fb3 100644 --- a/xen/arch/x86/hvm/svm/svmdebug.c +++ b/xen/arch/x86/hvm/svm/svmdebug.c @@ -124,7 +124,7 @@ bool svm_vmcb_isvalid(const char *from, const struct vmcb_struct *vmcb, valid = hvm_cr4_guest_valid_bits(v->domain); if ( cr4 & ~valid ) - PRINTF("CR4: invalid bits are set (%#"PRIx64", valid: %#"PRIx64")\n", + PRINTF("CR4: invalid bits are set (%#016lx, valid: %#016lx)\n", cr4, valid); if ( vmcb_get_dr6(vmcb) >> 32 ) -- 2.40.0 From xen-devel-bounces@lists.xenproject.org Wed Jun 07 13:54:49 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 13:54:49 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544809.850828 (Exim 4.92) (envelope-from ) id 1q6tcQ-0002BP-2v; Wed, 07 Jun 2023 13:54:34 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544809.850828; Wed, 07 Jun 2023 13:54:34 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6tcQ-0002BI-0I; Wed, 07 Jun 2023 13:54:34 +0000 Received: by outflank-mailman (input) for mailman id 544809; Wed, 07 Jun 2023 13:54:32 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6tcO-0002BC-H4 for xen-devel@lists.xenproject.org; Wed, 07 Jun 2023 13:54:32 +0000 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by se1-gles-flk1.inumbo.com (Halon) with ESMTP id d26baccf-053a-11ee-8611-37d641c3527e; Wed, 07 Jun 2023 15:54:29 +0200 (CEST) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 407F2AB6; Wed, 7 Jun 2023 06:55:14 -0700 (PDT) Received: from e125770.cambridge.arm.com (e125770.arm.com [10.1.199.1]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 10B713F587; Wed, 7 Jun 2023 06:54:27 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: d26baccf-053a-11ee-8611-37d641c3527e From: Luca Fancellu To: xen-devel@lists.xenproject.org Cc: wei.chen@arm.com, bertrand.marquis@arm.com, Wei Liu , Anthony PERARD Subject: [PATCH] docs: Fix xl.cfg documentation Date: Wed, 7 Jun 2023 14:54:19 +0100 Message-Id: <20230607135419.3498902-1-luca.fancellu@arm.com> X-Mailer: git-send-email 2.34.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit A recent change to the documentation for the xl.cfg introduced a build error, fix the issue. Fixes: b46e8207d0ae ("xen/tools: add sve parameter in XL configuration") Signed-off-by: Luca Fancellu --- Apologise for the error! I think I was building an old version of the docs and after the clarification from Andrew about refreshing the files with ./configure I was able to reproduce the issue. I didn't put any tag like Reported-by/Suggested-by because I don't know if they can be put here? Anyway I guess it can be done on commit, Andrew reported the issue and Michal was quick enough to suggest the fix before I've started working on it :) --- docs/man/xl.cfg.5.pod.in | 2 ++ 1 file changed, 2 insertions(+) diff --git a/docs/man/xl.cfg.5.pod.in b/docs/man/xl.cfg.5.pod.in index 1b4e13ab647b..3979be2a590a 100644 --- a/docs/man/xl.cfg.5.pod.in +++ b/docs/man/xl.cfg.5.pod.in @@ -2955,6 +2955,8 @@ Currently, only the "sbsa_uart" model is supported for ARM. =back +=over 4 + =item B The `sve` parameter enables Arm Scalable Vector Extension (SVE) usage for the -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Wed Jun 07 13:59:51 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 13:59:51 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544815.850839 (Exim 4.92) (envelope-from ) id 1q6thN-0002na-Ll; Wed, 07 Jun 2023 13:59:41 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544815.850839; Wed, 07 Jun 2023 13:59:41 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6thN-0002nT-Iw; Wed, 07 Jun 2023 13:59:41 +0000 Received: by outflank-mailman (input) for mailman id 544815; Wed, 07 Jun 2023 13:59:40 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6thM-0002nN-JL for xen-devel@lists.xenproject.org; Wed, 07 Jun 2023 13:59:40 +0000 Received: from NAM10-MW2-obe.outbound.protection.outlook.com (mail-mw2nam10on2060f.outbound.protection.outlook.com [2a01:111:f400:7e89::60f]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 897fc370-053b-11ee-8611-37d641c3527e; Wed, 07 Jun 2023 15:59:38 +0200 (CEST) Received: from MW4P221CA0028.NAMP221.PROD.OUTLOOK.COM (2603:10b6:303:8b::33) by BN9PR12MB5273.namprd12.prod.outlook.com (2603:10b6:408:11e::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.34; Wed, 7 Jun 2023 13:59:32 +0000 Received: from CO1PEPF000044F0.namprd05.prod.outlook.com (2603:10b6:303:8b:cafe::3a) by MW4P221CA0028.outlook.office365.com (2603:10b6:303:8b::33) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33 via Frontend Transport; Wed, 7 Jun 2023 13:59:31 +0000 Received: from SATLEXMB03.amd.com (165.204.84.17) by CO1PEPF000044F0.mail.protection.outlook.com (10.167.241.70) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6477.13 via Frontend Transport; Wed, 7 Jun 2023 13:59:31 +0000 Received: from SATLEXMB07.amd.com (10.181.41.45) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Wed, 7 Jun 2023 08:59:30 -0500 Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB07.amd.com (10.181.41.45) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Wed, 7 Jun 2023 06:59:30 -0700 Received: from [10.71.193.39] (10.180.168.240) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server id 15.1.2375.34 via Frontend Transport; Wed, 7 Jun 2023 08:59:29 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 897fc370-053b-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Xs3BqkLQOENJZpBSjTBUJhL3Jbueqy+D8UcjfJVjewOuamCaHL7CEWgOM8amHKAt7HZX51GNxU9YvDfboNSyZJBf7sljaAAS7ODBS0NhQOHb/SpsLL4vAQ/SLXka/tcR7z2MroSzSskQl8hOWFZ7cqowhZneb0m0KeR4W/UPbADXmDa8kiw0N305QjgHusTOAXm4Z07RUW7QmkG43EnPZ6b93XdSdnEhdNo24EF2RkKh/VVEEZFHippsmSt1cNLD9dM5YTZQZW7JfmhoaIL8SwiPfEZ3+UrU5fa9L7j1vrgW3AXU/aepddMC1QpBmvM0MQ9+qjLqvIZTy1QaTI9cFw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=rWMBH0KBr6+BkBaXDHO9duJEf9Cq1gaoZmkzqw8bcfc=; b=M4TM4FUVs9E41tkNptMOXv4UwvQtF+V3jom6x7GMQosBBfy/QeZ4YWQa7zYTEDykiB50JzVFSgbXC6FF4cG5XM7j3uKv+/k14rDxV9ElEqdNtdZLhbtpzvQaxVjBnpEqaAr+bJOFtthyhXXhJeFaXd6X2a4Lc/8yoQ8ulv/YVLmbJ19Ya+ZsDqIGpF8xTNotK37dElCfL+IgLWBgTZ2K0FtRPGUbN1gwRJKzOZLsyXwJ7aUXf5Y6FBXQOpjlYf8eywYvCZm0oBK2buU0PNZVZZQzJ1Gj8Va4FqoAtiZEAn7L0Ug8BX9kALUj0oQdFNOPAeM0mbqhEuwDT06bF85qRA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=arm.com smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=rWMBH0KBr6+BkBaXDHO9duJEf9Cq1gaoZmkzqw8bcfc=; b=3p/a+2P01VjOynwWsUV8twhC00Q6KVL+BUOWfYgQ6crmHmqbTNEMll44dJJQAEY4XYfsYDBwwgNDEXHZh7IGfDJO5IF8zakqruE0hP9JRa4ujNGD8b1EvKjLMPOxC7P2oEPiQk8m5L0VDAn+4bSHtTtsZsJfLtV2UMAvG5ZeB6w= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C Message-ID: <6e15c9de-d8ec-2900-1fe3-5d743f5ae1d7@amd.com> Date: Wed, 7 Jun 2023 15:59:28 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH] docs: Fix xl.cfg documentation Content-Language: en-US To: Luca Fancellu , CC: , , Wei Liu , Anthony PERARD References: <20230607135419.3498902-1-luca.fancellu@arm.com> From: Michal Orzel In-Reply-To: <20230607135419.3498902-1-luca.fancellu@arm.com> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO1PEPF000044F0:EE_|BN9PR12MB5273:EE_ X-MS-Office365-Filtering-Correlation-Id: b1f9af41-91f5-4b05-e985-08db675f6ab2 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: ka1SKJ+/6umwWH4RHBZMN2TYCqiqGFcLcipBy2TKeeWNaf25bnUlkoyo8CnO17CEAIchjE1gpQp2KCJpNWy/RaB1Dd+Gv4zJAVNw6HRDpNoJ/bkppcJQSbL1FcUAI7nxeLSmK1Oj03b1LYMzb9/otizcmu73BjFRy2t2R+3aJaigPg3o24SxEjcyu8LmFHsU7VLhq/hxpJfG9Z7D61/1jV26URAnr19/7Zn+hxq3sxoi/M/9pSn0hmEuHt7y5eTaqqZgAMCeeNKUk3UYI0vTgsbqYH2/qAq+668Ezb6Mnv15eKkXYLAN/jGUo2Gq0KxXI7K6PlzNEwb9i1+wN6Msmi4xn/3IsQyCgN3S9qv25fsRyrgFSNnRutSwbqE13Bk8qUEfo98iElKJHCRHnDOSejmtNuTySoQ6kHnmevD8Coi3Xt2Vg4HtfJBHLrZZnnMR5xOLP4XCqVZ1GRVlnXig1xP7pAHOQLkNwVrQeEXbMQggE1jqI8oqL/HfWwjZP7XGiIY+4jdG9Bdyiy8gCt8x7fFqrF8MXkimD0jWx4zJUzOxR0FRCF0PV+/P7mPYOuKSTl6Pccg0VrdpCwUW27jnr8C/wxGlSDdky9IGmoupXcqr06vsGLqLGUtNBwyRnd5SqP1b0VYwxtNdfokIYKeU27lqSugLy5rsQsQLoucOz6cfjKnqH6wXrpvKrBaCPR6ERHFjs/Is0x1xZSIuE5kzg3vLt3ajMro6jELDx+qLwTpuMAtTNgTWIaPf170a/Rbhmj3TXNJDLMW6Q/xyLClwE2JBQ6AlXmqmEufYYMf/7vXz0YoNfLwq525+cklH5joo X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(396003)(39860400002)(346002)(136003)(376002)(451199021)(36840700001)(40470700004)(46966006)(478600001)(110136005)(54906003)(16576012)(186003)(2616005)(26005)(53546011)(82310400005)(36860700001)(426003)(336012)(47076005)(36756003)(2906002)(4744005)(40480700001)(40460700003)(44832011)(4326008)(81166007)(356005)(70206006)(70586007)(8676002)(86362001)(5660300002)(31696002)(82740400003)(8936002)(316002)(41300700001)(31686004)(43740500002)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Jun 2023 13:59:31.1315 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: b1f9af41-91f5-4b05-e985-08db675f6ab2 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com] X-MS-Exchange-CrossTenant-AuthSource: CO1PEPF000044F0.namprd05.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN9PR12MB5273 On 07/06/2023 15:54, Luca Fancellu wrote: > > > A recent change to the documentation for the xl.cfg introduced a build > error, fix the issue. > > Fixes: b46e8207d0ae ("xen/tools: add sve parameter in XL configuration") > Signed-off-by: Luca Fancellu Tested and looks good. Reviewed-by: Michal Orzel Tested-by: Michal Orzel ~Michal From xen-devel-bounces@lists.xenproject.org Wed Jun 07 14:00:23 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 14:00:23 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544821.850848 (Exim 4.92) (envelope-from ) id 1q6ti3-0004IF-1l; Wed, 07 Jun 2023 14:00:23 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544821.850848; Wed, 07 Jun 2023 14:00:23 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6ti2-0004I8-VB; Wed, 07 Jun 2023 14:00:22 +0000 Received: by outflank-mailman (input) for mailman id 544821; Wed, 07 Jun 2023 14:00:21 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6ti1-0002nN-1X for xen-devel@lists.xenproject.org; Wed, 07 Jun 2023 14:00:21 +0000 Received: from EUR03-DBA-obe.outbound.protection.outlook.com (mail-dbaeur03on20603.outbound.protection.outlook.com [2a01:111:f400:fe1a::603]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id a30e91a3-053b-11ee-8611-37d641c3527e; Wed, 07 Jun 2023 16:00:19 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by AS8PR04MB8946.eurprd04.prod.outlook.com (2603:10a6:20b:42d::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Wed, 7 Jun 2023 14:00:17 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.030; Wed, 7 Jun 2023 14:00:16 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: a30e91a3-053b-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=AIOnB8bAhdTwu3jqHJBQtU43UihaPhVwcCAZq8lXs6BeupIyFJppQfkUnztbcklCsTX69592isNGlBNgL58nADUxvEBvqUMUFJNKkN4r0fZlWKGu0WFOBuxxxdJpgBfQQMiSezZMWDaRabYYnENBvKcYUbqqLZz2yDhrHjNyhVaWhnjm3bxzDbhs5bvyXm+BTy7ltIdpRM92CPZYMC11pQdDX+lVRSf8ON3dTfOoLfo2Oj1F7tcEzDxGNWUj228XJBtUAJ7IHvIlICfIH38GN8OhWfOiaBPGFqzADWIJrNm23QZNc05IRst93Xhyo6SY3J6XmVEuwr55xN0BtqKH5g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=riGuLPKZzej+EH/OSBAvKcqPD21wGhsOdJJjNaisKXo=; b=mTwur1gGEeMeaf5I+A2GtkWA/L5tc6nAnlb84fiStt/zioKnzVpb7xeZhUqDm/BzIK8acCFI18sHRuVu4RpkoY5StyzN6NPRov3aAQzkPUNzy1Ms2/tJSxJS5vtLj3F1JAHkaJQeL8h9AHJSVlN1B/xw0xzYtxdJPRP+fq7MVMv7By3F3gRVjhH2p8xQ/nriLCBc/q8f5wfYjyZSU6Bxlheokg9M0BVDkLLY/on/zp1dD9027mByIHeY24BXUX7nOkRf5ljbt8agUB/dSyM3Q+Nm5T8rcZu3KujKgy0KC46kUo2Ngup317V/vAeBXX+SZ+62K30lqlWrmUctbtDngg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=riGuLPKZzej+EH/OSBAvKcqPD21wGhsOdJJjNaisKXo=; b=AgoQo99KQdxmLse3tb0jh+hnmCVUPAF4W9l8B6eOGInKHV0cipracIDjBS0CdC43gLr09BxEWagIazHOV+IxTp4dL/QQtxEXLD4L9fsYg/qcaqWF5CMa9lRRv1R7WQYAcMf2ytqX16xchwsljAi5CDhCQcvBSWwVzWGGZn4fkSDMPuSHLTe9rp6n0up05VG9P38mquEWgHUOnZkI5cGeWD8GuDjsqlQGFgHsUAW7fk2w3SoHbn2pmYZaatIh5xtItgUz6yfNbBTgBKfuJDdRdN3KwAfqH6nH3tOlsiyJRDPPFviAay6jF0ukInJySP4FuUiuhIV6c2q+vEcRn1zJHQ== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <3da62adc-b307-6505-f333-a7b211869a15@suse.com> Date: Wed, 7 Jun 2023 16:00:14 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.11.2 Subject: Re: [PATCH] x86/hvm: print valid CR4 bits in case of error Content-Language: en-US To: Roger Pau Monne Cc: Andrew Cooper , Wei Liu , xen-devel@lists.xenproject.org References: <20230607134638.53070-1-roger.pau@citrix.com> From: Jan Beulich In-Reply-To: <20230607134638.53070-1-roger.pau@citrix.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR2P281CA0112.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:9d::14) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|AS8PR04MB8946:EE_ X-MS-Office365-Filtering-Correlation-Id: e2e40393-1e8d-45ce-a768-08db675f85a1 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: uxFGTkbZR36pSIXQpSVIywvb9DvIPTb5ZFLNHwkmxsZwfIseTiIStcx1T23LmYWpMUrzRWWidxsvs9G3g3/jNtM6cMqDsf6L1zMMO+4Cnh4rHYHsOIQQZ6QYSiCAmTuJZYcGiaTEMrBnSjhf6Mx8UtLb/4HbQyfcpEE1mocVWgMz16K4eMpox32U2vs8/i4408+hckCH0Zii0M6cW/Y8dqKxwk3gDiZeZATTgTHjPPcA8jq4qzyZQa6g2dxSkjvfeRBQfsxNpywkNQFWyeLp1NdxJEj9pkkKDsR8iFJRCpmiDjjRKiq83kiExMelgjM7nllAm0pJ5TmVTb6pWeqXpQ6rDGpX1R9GQkmZEwF66NzHtd8G8lu7qYt4qifCt3fk1eaht1x4oyJ5HzX0ffFLC4Ydx+xvpfXJ9Zt/TNF+lza7AS3dRy/5mshGgxyGHIO/W6eZbvIIpCorWRojUk9jHGRkdBJxT3SsAKlkqKAiLn7w4eZQYh19SGBbIKri4x/HZKa843W92Oas37wYPg5SDrOa7sIRhPgZYVpiGaVfCGAX/3sCCaqLaqzmk6V2EKN3zr2GwPyMGrLepjCWXJSqs9Wyqh8GQGvam+g5XyKXhXqNDvyzzyyA1c/U/fP87nIGNfaqxHakAndVWRHkCKAwLw== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(366004)(346002)(376002)(396003)(39860400002)(136003)(451199021)(5660300002)(38100700002)(53546011)(186003)(6512007)(26005)(6506007)(2616005)(83380400001)(54906003)(2906002)(478600001)(86362001)(31696002)(6486002)(36756003)(66556008)(66476007)(66946007)(4326008)(8676002)(6916009)(8936002)(31686004)(41300700001)(316002)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?Nk94aEJtNFZML1JUZTY3VDRpcU0zVS9XQVdId1NyTDhNSFZoV1ViaTFKWFRG?= =?utf-8?B?dGdqMWxQZ0h3b2F4TTltNTkvTzhyRnROMDdXemx4U3lmMzAvbmNmTCtqNWpQ?= =?utf-8?B?ZE14QVdzK252K0doY0xyL2Q5dnZ0TmtJbUd3YmpSOW04bVVjM21VL2s3WnBY?= =?utf-8?B?OTFHK3N2MllON0dmQ2cxVS9lOGVuT3FLUXhCamNjc1hLVmw0Z2szdTJKcnhF?= =?utf-8?B?dThiTTcyTEsvTElvT0VvNlFDdEVnSHpQclFzTE9ZNUQ3KzFZOGg0OGRuM0lw?= =?utf-8?B?M28zeDBYYWZ6aFlxYWtlU3VLeUhiZFZRVXY3Sk5QOHJqbml1LytXR3lmYlBD?= =?utf-8?B?Rk5VU1hITEF3MFcrREl0dHg0Wng4MUJxUUh6end2WFlDNUFmOWhPV21OT0pp?= =?utf-8?B?eWsrV3M1eVUxWEQzOHByNmZRWjEwMzY0TW9KbWYzbExTYmIvQ2JTQ1Eya21I?= =?utf-8?B?bytoQml5c2dFZ2hIaU9RdmRDYWVTaE5RbXhtMnhpY0xyN01EdDYrY3hKaDNy?= =?utf-8?B?dDUzZmM4RmRzSEYxWnRiNlZ2QSs0ZTY4dTdENXB2NUc0RGh3Z3dmWTBXQjA2?= =?utf-8?B?Q21TdlM1djFYNnlCeDVIdGNuNjYrQ3JKVWdiMW1PdXF1dDJTdVhpa3lka3ZG?= =?utf-8?B?cUZQOFAyTEd4aGxkQUJPRHRjM2g2LzhKR0JGaDAxNG1UbUFvc0lOUTJmbnFM?= =?utf-8?B?RlcrcS83VWppYXJ6bkJybGdrVEJnSmZRRmtma0pRL0pPMzc1OXF5czB4aTky?= =?utf-8?B?a3BFS1RBTlRETFl5RnVQOUxGZmplbC9mTC9zY1cwQmxQbmhycWdFbWwwQ2JH?= =?utf-8?B?bjh5cnI4RE5Zdml0bWYzZGhkT3diZlhVV2lhVG93VTd4ZDBRQXoyNmJzTy9D?= =?utf-8?B?Z1JhYW00Wk5ub0ZkbkF4SG11amVjbEJrWG5DUzVpczE0V3NVZG9zZHJHTmhP?= =?utf-8?B?K0xEM0lOL0l3QXB5eXBRdXUrQVoybnRCVmhyc2hCVE4yblYvVUlkSFlQVTBj?= =?utf-8?B?eFlvdmhTWldMSktsdzBZVzBJWWJjZTFSUzdCVU1Lb3pTVjBmUXJiMml2Wjhh?= =?utf-8?B?eUJkTnpPK0JTTExWbjQzQndDZ2lpUU9xb09TRCtKSEZ5S2x0M0JFdVVMZ29I?= =?utf-8?B?Y0I3TEk3STFubTdRNFFrSUszem4ycHZjMEw2bHBVSUExU3dhVVYzQXBDS2FH?= =?utf-8?B?eWluQ205WmlIOUt0MWRKQUYvLzVUSmp4YVBPWWV1dFN6TDVnWTlMT1dTK1VC?= =?utf-8?B?OGRLS1pzVjA2anI3NFIzY0hpWU9SOFNjMWFpWWVOdnNXcURvM0cyZ1FJaHdB?= =?utf-8?B?aDh6NEZ5OUlvOEV2ZFdvbTFkRGFaSnBYYWhYZzlyZmxtRU9wcFZMTHFrV2tz?= =?utf-8?B?MktzRUM4dExyVDNDcVBBaWs0a0tzMk4wUUdtT3B4N0w2d3FzNU9IU0tjdmd0?= =?utf-8?B?TXVSRUZraU1SeStWZ2Z0RUZTTldqbU1qamQ3YXlIU0w4QktNcjNSeFMrYktm?= =?utf-8?B?S1J1VlVwT3hpZFpOY2ZsMGhza2tTeVdRcnl3Q3YvOEppcDVRLzlVZE1KQmg5?= =?utf-8?B?cTdSekRPNVhkTmlJWk5zcGhyWkxiblhZZVgwQUw3WUNjWWtwdGlTUnV5TU8r?= =?utf-8?B?QjJ1a1FOM0NBM2NrZXpJdHBBUk9wQW9TVFJyLzd2VEx5RXNSaFcxWW5KdHZK?= =?utf-8?B?YkVJUXdHMTVvN1VvS2daa0I5eVVBOHVKS21WV1VSdzdHOERrN2RndFl3NXVq?= =?utf-8?B?SURzQW84UVEwQmlIRXQ2MHN4bUxmUEhHM0xtbzU2THFJZFNGUzdTdmJjYXJK?= =?utf-8?B?UzV2a2RGWW1rSHZIdTU1M2RkK2NUK3VlYjRxSEZxMUE5M3RnMXRXVjFPLzBU?= =?utf-8?B?K0Jwc3QvSW81aTcrOC9ZcGVVdXZzN1BOZERvMWprT0h3eThPTm0vV3ZidUJC?= =?utf-8?B?dllaUEpacVlvMXY0S280bzRtV204Q1FQKzdJaGNDSDVMMXNmTnJXZVZpN1oy?= =?utf-8?B?ZFBZU0dVNHBlSzhCNHBmV1JVS1ZzeXNsTUFxVnFId0xmSlcrMmVyV1Z0UGR2?= =?utf-8?B?U0t2OEpLaVFES1d2RDBNQVp5M2lsWSt5bWtrQStnSGt6aHpKclRkZExRN0hu?= =?utf-8?Q?+RfVzY8J28wppEDowV270Uv8i?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: e2e40393-1e8d-45ce-a768-08db675f85a1 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Jun 2023 14:00:16.6742 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: kuPtbQRqgorjH48CkBmiSdtM/O7qLvJB919EQfYiEnkvuVsgOYHwnFhKOE8I34M9NsMnRZr2MMli3dp/4DwSDw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB8946 On 07.06.2023 15:46, Roger Pau Monne wrote: > --- a/xen/arch/x86/hvm/domain.c > +++ b/xen/arch/x86/hvm/domain.c > @@ -266,8 +266,8 @@ int arch_set_info_hvm_guest(struct vcpu *v, const vcpu_hvm_context_t *ctx) > > if ( v->arch.hvm.guest_cr[4] & ~hvm_cr4_guest_valid_bits(d) ) > { > - gprintk(XENLOG_ERR, "Bad CR4 value: %#016lx\n", > - v->arch.hvm.guest_cr[4]); > + gprintk(XENLOG_ERR, "Bad CR4 value: %#016lx (valid: %016lx)\n", > + v->arch.hvm.guest_cr[4], hvm_cr4_guest_valid_bits(d)); > return -EINVAL; > } > > --- a/xen/arch/x86/hvm/hvm.c > +++ b/xen/arch/x86/hvm/hvm.c > @@ -1018,8 +1018,8 @@ static int cf_check hvm_load_cpu_ctxt(struct domain *d, hvm_domain_context_t *h) > > if ( ctxt.cr4 & ~hvm_cr4_guest_valid_bits(d) ) > { > - printk(XENLOG_G_ERR "HVM%d restore: bad CR4 %#" PRIx64 "\n", > - d->domain_id, ctxt.cr4); > + printk(XENLOG_G_ERR "HVM%d restore: bad CR4 %#016lx (valid: %016lx)\n", I'm not convinced printing a lot of leading zeros is really useful here. However, if you switch to that model, then all uses of the # modifier need to go away (in the earlier instance it would be nice if you also fixed the pre-existing issue then). Jan From xen-devel-bounces@lists.xenproject.org Wed Jun 07 14:25:10 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 14:25:10 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544828.850865 (Exim 4.92) (envelope-from ) id 1q6u5n-0006qE-2U; Wed, 07 Jun 2023 14:24:55 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544828.850865; Wed, 07 Jun 2023 14:24:55 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6u5m-0006q7-V9; Wed, 07 Jun 2023 14:24:54 +0000 Received: by outflank-mailman (input) for mailman id 544828; Wed, 07 Jun 2023 14:24:54 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6u5m-0006q0-7K for xen-devel@lists.xenproject.org; Wed, 07 Jun 2023 14:24:54 +0000 Received: from esa2.hc3370-68.iphmx.com (esa2.hc3370-68.iphmx.com [216.71.145.153]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 09a9307f-053f-11ee-b232-6b7b168915f2; Wed, 07 Jun 2023 16:24:50 +0200 (CEST) Received: from mail-bn1nam02lp2046.outbound.protection.outlook.com (HELO NAM02-BN1-obe.outbound.protection.outlook.com) ([104.47.51.46]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 07 Jun 2023 10:24:33 -0400 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) by CO1PR03MB5729.namprd03.prod.outlook.com (2603:10b6:303:96::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Wed, 7 Jun 2023 14:24:26 +0000 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::192:6bdf:b105:64dd]) by SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::192:6bdf:b105:64dd%3]) with mapi id 15.20.6455.028; Wed, 7 Jun 2023 14:24:26 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 09a9307f-053f-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686147892; h=date:from:to:cc:subject:message-id:references: in-reply-to:mime-version; bh=3f7Or1ioTFNeqh0OVt28PV9eovUo/IqkGBXo4Kbv5BQ=; b=PfNaS2Y1A3SUMRmcOn2jnm7cDckRCE91SZvGi0uoIPbIlZnhDp7yW8k3 mQrhBzt90gjErlpj6xjQ+RL1IREOdTmyr1v8U8S0yzLQb4MQrJSFXvhiV ImrKrrlFQROHDwQnRw0OR5oMbv8iG6vkgp6N0dTdYFC9rZHdh5n1lZo0t 8=; X-IronPort-RemoteIP: 104.47.51.46 X-IronPort-MID: 111809537 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:6yD20av2U0fo/G+uGBHSs1jN6efnVHBfMUV32f8akzHdYApBsoF/q tZmKW+DOf+DY2SjLdp/PNuy9E0O7cDWz4BkSwJrrSo0ESMQ+JbJXdiXEBz9bniYRiHhoOCLz O1FM4Wdc5pkJpP4jk3wWlQ0hSAkjclkfpKlVKiffHg3HVQ+IMsYoUoLs/YjhYJ1isSODQqIu Nfjy+XSI1bg0DNvWo4uw/vrRChH4rKq4Fv0gnRkPaoQ5AGGyCFPZH4iDfrZw0XQE9E88tGSH 44v/JnhlkvF8hEkDM+Sk7qTWiXmlZaLYGBiIlIPM0STqkAqSh4ai87XB9JFAatjsB2bnsgZ9 Tl4ncfYpTHFnEH7sL91vxFwS0mSNEDdkVPNCSDXXce7lyUqf5ZwqhnH4Y5f0YAwo45K7W9yG fMwch8Qc0Clqb2PmOziEvt23s4bEcasI9ZK0p1g5Wmx4fcOZ7nmG/+Pz/kBmTA6i4ZJAOrUY NcfZXx3dhPcbhZTO1ARTpUjgOOvgXq5eDpdwL6XjfNvvy6Pk0osif6xbrI5efTTLSlRtlyfq W/cuXzwHzkRNcCFyCrD+XWp7gPKtXqiAdJKReDjqZaGhnWC6mItAUBOcGCb/+C4g1GZXel9O hQtr39GQa8asRbDosPGdx+yrWOAvxUcc8FNCOB84waIooLL5y6JC25CSSROAPQ2uclzSTE02 1uhm9LyGScpoLCTUWia9LqfsXW1Iyd9EIMZTSoNTA9A6d+6pog21kjLVow7TPDzicDpEzbtx TzMtDI5m7gYkc8M0eO84EzDhDWv4JPOS2bZ+znqY45s1SshDKbNWmBiwQGEhRqcBO51lmW8g UU= IronPort-HdrOrdr: A9a23:3nTdta/MWE8TNXcPY+Zuk+DqI+orL9Y04lQ7vn2ZKCY7TiX8ra uTdZsgpHrJYVoqOU3I4OrwW5VoIkmzyXcK2/hyAV7KZmCP0gbFEGgF1/qH/9SKIU3DH4BmpN 5dWpk7JNrsDUVryebWiTPIa+rIGeP3l5xAU92uqUtQcQ== X-Talos-CUID: =?us-ascii?q?9a23=3AhZoTm2hLEihtjzG6b9ImxiN8xDJuKFLA0Sf2DRC?= =?us-ascii?q?BUTgwEK+PEVWoxawjjJ87?= X-Talos-MUID: =?us-ascii?q?9a23=3Aqc2aIw/PGKyYpRI60zs3aL6Qf9ZE7ZqnVRgoqrV?= =?us-ascii?q?YosiNKgt2ABWM1A3iFw=3D=3D?= X-IronPort-AV: E=Sophos;i="6.00,224,1681185600"; d="scan'208";a="111809537" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=RR6z1+p8Ce4x5bvEUfTajh/8+DTzWMA9qwbThNFDfiJe0WynFnN1e4e05ZhITrVxhJU2ufcNS29JJ64uA2+oZcZsZC2CjrRiuMRwJwKH/3qH2ZhyDxWhn0dSBmA2tYeDd9PlKSXMnZABiXOzGy6M9k+SBfK4bNSFN6TwsHVbZ8ZFXNwd2O7nxRiD4T0ENir4YeGm3rrTeWbRtjiTA7YAT6sOLVACqwhVnap/gVKtXZZIcIk20FlnQw4zUyxK7h1OMaOaK2VDoLbk2rSNDGn3wco19DTkmfCRXYol+EHjCdn+jJWyh55mU2P5c94nX14Tj8OPM+xUsXvaOncAFxRbTw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=ZsqxCh9gvftqPvjISefLsroxBhpp/2yePn/eDeXSnm0=; b=F2MlJ0mQ82d6R1bL750pkAWtVFUk6gi0xW/hxogcgqw+I1plqLS0kG2jHXW32NhPWEec8UsuVuUzogO1P7N8LW4bJLFK131kKifGaqjO57XLx4ET+uqqxTvfrncwW3m7Tt04DyHGSRs5Nupouwi/n5nve9VAAeKMVfYF2EUNCoV6xvI931BdHHRB8pfg7HVRCVY2kH4CXy25qgfqXi5L+zFOL7TksyNO4nvy7rtQI3Hm8Q1NeJ0A9AuBOYtV1wgJjm4+Qmr4xuf6KSBkAcpcC5Jp+IAjWYL8hzEDqM15s9+oo5qQ/Ve2VG8TuBdkSzFJRS3TG0p9/IMqI/vF86VRBg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=ZsqxCh9gvftqPvjISefLsroxBhpp/2yePn/eDeXSnm0=; b=t09ramoK1/WjmZTgGqHQ8DtnjiB7gzfpSn3RTOVbeUuc5uRSJmB5Gfz8OppMQQRaiMT0j94Arj/AZeV6KoUHCd53FWACnbm20BJkHC/WkrzK0DCEhoESksa1ifwNbRCiqEsOx9Twa5VA/oDUL/+B/lR+lgH9+WX5NObYJADkwW8= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Date: Wed, 7 Jun 2023 16:24:19 +0200 From: Roger Pau =?utf-8?B?TW9ubsOp?= To: Jan Beulich Cc: Andrew Cooper , Wei Liu , xen-devel@lists.xenproject.org Subject: Re: [PATCH] x86/hvm: print valid CR4 bits in case of error Message-ID: References: <20230607134638.53070-1-roger.pau@citrix.com> <3da62adc-b307-6505-f333-a7b211869a15@suse.com> Content-Type: text/plain; charset=utf-8 Content-Disposition: inline In-Reply-To: <3da62adc-b307-6505-f333-a7b211869a15@suse.com> X-ClientProxiedBy: LO2P265CA0144.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:9f::36) To SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|CO1PR03MB5729:EE_ X-MS-Office365-Filtering-Correlation-Id: dcb103ac-ec0f-41d5-92a8-08db6762e57c X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: iop+xfSLTj0cfns+etzhVRmrbJIjnM9Uj2YevGuODkNwWYoCVfQhggZKdkUnkMxpEY0Q5smQpJDiEEcP0zRwk8SCwTgG7U/0MyqqrqdI0hz20tjv5yWcuftcTVkVN5/Aqg7r15eVjLKD04YbA17YS4nNGqlUrNcrGmSI7iWUYnx7ph4pz6UTFe7fArK94TKLV6u1ilkC/uTwN1l1Qwr82M59W1y/OR9y9MrQfH0R1UfqR6FrKP3tB2Cp/+6E23g/fQ5cbqodag4k6mt/LZyd4UotwEsD4tKtFkg1YR+ST6lkClqCwLOMnfnhtZVQDq2UFU3bTkkBMbvCGjEJlyFWFZeETAtFerckcKnJO5RqMwMe1i8c2jGmpKgJHXd+9zD4RehcxxqBNlPbdAh9jDaFiRg8MsPm9jH6MsElO34Y9Udthz1+0U+OKe6nAm5odv/6j7rDH5OCpU/501xQzut3Kew/5L9fsvXEs7BKmpPHqhmz0XifAnxGlkIgLcNrijzWxq1oUUB5CJunJ7OGcJKZP+3n7SLdrkLL5U2Rel4NABqqrhQ6vKkpk8hzTP9e3f8PtkLb35a+vbp5oOy4xR2urcTjkLBjBVc9/3KAf/dIopA= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(7916004)(4636009)(346002)(376002)(136003)(39860400002)(396003)(366004)(451199021)(478600001)(38100700002)(85182001)(82960400001)(66946007)(4326008)(6916009)(66476007)(54906003)(86362001)(8676002)(8936002)(5660300002)(2906002)(316002)(41300700001)(83380400001)(66556008)(6506007)(26005)(6512007)(53546011)(9686003)(33716001)(186003)(6486002)(6666004)(67856001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?dGxhd2MwdHFOMkpTVWh3WCtYdytVNUpMWXZJRktnN3BjVTBwaHkwVEdzaDgr?= =?utf-8?B?a25qUGJLWGFRaWdKbTVDL1BiVVdjbUNLUDh5Nkg2UVNneWNmVENoWjRWYzR2?= =?utf-8?B?Rkh1ODNrQVE0SlpNN2FieGV3WW8vVktXdXRocGdEWGhGZ05KSkxPaGNlckdF?= =?utf-8?B?cFZYSkRkM1luL1FHVGFrY1lZMEQydkFZc0JxQTJDY0Ezc2drM3J5cWg1ZlRt?= =?utf-8?B?UWl3dGt5TG1hMDZvVWxHYWdIenpvTkRjTHk5MlBBYmV0WGZyem1KTHhUTTFh?= =?utf-8?B?UEUyNGlFc2hQWFNtMG84cXVERjBuWHl4cm16M2NFSHgzLzh4MzBDOVRwc2ZT?= =?utf-8?B?K0NoSkE4elp6azFtRWorM0VwYURyOWk3eThNZ1Z5OVh1VG40cW9NbDFGQjlL?= =?utf-8?B?R1NTcGsyUktuRXNIWWt0WjBvYVE5ZU01aU5HbmQwNW1jQ3NuTmVHSVlOZmdK?= =?utf-8?B?dFpWcUtGMU1SSkJNRmtwOGpsdjl3QmovUFpKSm5GcUNEVit5Sit0Rks1ZElz?= =?utf-8?B?SjZ4a1RzdHFvbDF5d2wzMER2akUyaTFsUCt0RnV1NmtLQlRVaG1pSCtnK2wv?= =?utf-8?B?cHBDcXdYVnhiSjIwNER2M2tPSENPQW12cUN6MjFXK3JtbUpGTEY5ZHMxTjdB?= =?utf-8?B?ZkcwSFAwMzBhZEIrNmd1Y1JzWHpWM25uRnFZbmQwNDh1VTEySHVlM1BScGw4?= =?utf-8?B?RWZKTllkYkM1b2x5a21VTmZZc1p5L1Bvd1hISzVqZDZqOWpoNTRZalo1bVho?= =?utf-8?B?clg2cW5ONU1DblNva3R6TmxWdnlOK25MWjBOMGQ0Y0pTaENQY3lpME02eVE5?= =?utf-8?B?d0xrZEM2RElrcEFRZXF4VTBPajlseTdpb0pHeTdSRFVQSU8zRDlpTUkzMEQ1?= =?utf-8?B?Y3lvU1ErbVVkcGNjc1d6aVl3MkRHb1lhU2xCU2NPVjBQOE90VlJDL0RXc2NX?= =?utf-8?B?Qjl3MC9XWE9XWjFsZzV5Y2hLUG9zVVFrNE1XOE1MV3l2ekROcG1SeUwwYjFL?= =?utf-8?B?aG11YVIrc05RMlhGMDl1ZTFmOWV4dFRqazVVcW9DSExVZEtqaDdJalNuK1Uz?= =?utf-8?B?VWRqQU5mbGY3azNJVWNjZS9XZjByN2IxdlVaeEtRSXdCcGNUckpsbjg5Y0RJ?= =?utf-8?B?eGxMdTd3dVlYRnR2eEpCMFVTUXhXTlFyaU1jTW1sNG01SXdWcDV0bEFqc3p5?= =?utf-8?B?cmxBVTEvTm5LSWw2VlNjdi9iWVh4SExDRHBqeWV1dkszeHhNMUVXSFJyQXg2?= =?utf-8?B?ZjdoeXBaNC9RbGlkN3JRSms1UUd3eTVlYTdMVnNsNmhkMGJzbDRndUlGaDdv?= =?utf-8?B?Nmh6R3ZHQzdudDVNVlBSdzBoaktTcGNMN0xUN0hEWm1FNkJpR3lTNkFuL0pn?= =?utf-8?B?TU12Sy83OGxOeGpDWFpsN3V1b1lwbDFKNlRLMFJ2dVBSeC9hdXNYWWFFWXNj?= =?utf-8?B?OTRNRXpMcGhRWTIzT2FEL3phTGViUENsWUFUYTZkbXJVQlhBRlQzaHZ5RW1u?= =?utf-8?B?bGNtdEZVSmFwV0pkV2E0U09TbDdCbVowN1Y3WGx0U3FaVDlnall0WFJkOWkw?= =?utf-8?B?aXBoSm1EcnYvS1VEWjdWM1ZKM1FERkE1VTNRRjlCdmlDbTRnRzRadXdvV2to?= =?utf-8?B?RDZET0x6YmlQdHRDOCtwYURCWDIwSzRZdHVwN0Y4Q0ZPRVNzdFAwa2xRSVA3?= =?utf-8?B?Yndmd1hNaTdNWjBUa2V2TnVmNjJ2VXpmRjZEUVZUS3JRYWFNOE8razE1aFI1?= =?utf-8?B?NWF4QmZ4L0NHYWMxZFpkVWdzVnMrcm1MSHY1Tm5VN3dZaFNOeWZZMldvYSsw?= =?utf-8?B?aTRjQm1ZbXJXWFBQOVhJVis0SG5oaVJ2MU9UR2Jka3hrNkVKbW5KMlFSUlBo?= =?utf-8?B?blBzTUc1VzA0ZmhpN1JJNFR0YVhxdVh1TnYrVWZwa0ozNVkvSStxWDE1U1A1?= =?utf-8?B?M2hFTzIzTkZ4ai9DS01sQ0N6eXdGcGV5bEZKNTFoYzV2dnVEVGVEUW1pUXpQ?= =?utf-8?B?VE5aK2FDYmpTNUdiVEdWMVl3WUx6Vk9xMlRVWmRIbXhtbnpab1pZNGJsb2M0?= =?utf-8?B?RGhJODFUSngvSGtHaTZwcEhzU0dGNE15UURrdm9ncGVXRWZzb3h5Q0M5MTNE?= =?utf-8?B?SUhFTVRFQXNoQlZYRXlOZ3VsMkd1NU05ZVZaRGV1KzRpbHJYck91S2lMS1ha?= =?utf-8?B?dlE9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: YDlzWSqeaBKuIM5AiPEvcPklgeF1+g7WTbmux9nJQSmQ/6hT2x3a57klihpnLvwWY0Pj0YLrXdjrzLERhnVyxERLnxStO2HOL3Z3MrKqlgS++E+NsjHjIOJINyzX3NrBcGXhDFFoKuSYA1NaejKeEUlEc9p1dMwF2eZAXtG8NHExoNoTaYNVwAnLQQUeYxqKgiSRFc1/Qat8ClGDj3o0b9lMuC3tYRiZDNA/EHM/rfnhBzky7cgOL64ZueZx4jEvbCLPb5gFJ3OCLr+rmRXJkI+v9hV6/dTSAcI9OKmuDJkgGbHGrMSXoGc60yOVh2d3ceUGgbB6wZG57cYRPYWvFR4QceE1mvffmrn0VtxtJoBJ+cQXDh+HDWXvJDMgTHq1c7J7vc8HH3+avCCoitSmGOoEd2yY74wwzaZB1qcoCkQBcyib7tYHUrR3ZPSvedIcL7E3RDvf+PUnc3P2v2Yn8jE2L5Rja1qiotVbZA6n5aFEy28awa4bhNMyKgimBf5hqyNjoA1l7IwcSI81fZKoHZqPcafk/b2JUcmyjIUboBDESq4zUFf5bz9rqbww7/n43Ed0XNJ6rcssgoxuYuxm76dsNSEoWHhYy917GlBlq7WO/mzeoxe0INrKqeB1wTKKlZSwWPpB3jF5xDuMEgRuWY3KvQaW7E6ipML1uKDX1pT/LIoNortXHBpKGvRh5oonSBaFaK4J6/yCqtzkAGkSxzTMMFYt4WqLQX2zYvjlkxhqYlDCZV3HcLoorRKf9eAF8XvNWTew6kORX1x7NlsYJ05gv2ApnnunTfBhq50sSoRHFMPjZv48Cn5d1iL0+/YV X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: dcb103ac-ec0f-41d5-92a8-08db6762e57c X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Jun 2023 14:24:26.0445 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: Ftzr0Gvh6dB93jj+5kifFocIijffIioSB1k0lUJzAOSG5c0Sb5+h1sNlIk3FxNmtLmNmypaxJ+HjKMxTo3o0EQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: CO1PR03MB5729 On Wed, Jun 07, 2023 at 04:00:14PM +0200, Jan Beulich wrote: > On 07.06.2023 15:46, Roger Pau Monne wrote: > > --- a/xen/arch/x86/hvm/domain.c > > +++ b/xen/arch/x86/hvm/domain.c > > @@ -266,8 +266,8 @@ int arch_set_info_hvm_guest(struct vcpu *v, const vcpu_hvm_context_t *ctx) > > > > if ( v->arch.hvm.guest_cr[4] & ~hvm_cr4_guest_valid_bits(d) ) > > { > > - gprintk(XENLOG_ERR, "Bad CR4 value: %#016lx\n", > > - v->arch.hvm.guest_cr[4]); > > + gprintk(XENLOG_ERR, "Bad CR4 value: %#016lx (valid: %016lx)\n", > > + v->arch.hvm.guest_cr[4], hvm_cr4_guest_valid_bits(d)); > > return -EINVAL; > > } > > > > --- a/xen/arch/x86/hvm/hvm.c > > +++ b/xen/arch/x86/hvm/hvm.c > > @@ -1018,8 +1018,8 @@ static int cf_check hvm_load_cpu_ctxt(struct domain *d, hvm_domain_context_t *h) > > > > if ( ctxt.cr4 & ~hvm_cr4_guest_valid_bits(d) ) > > { > > - printk(XENLOG_G_ERR "HVM%d restore: bad CR4 %#" PRIx64 "\n", > > - d->domain_id, ctxt.cr4); > > + printk(XENLOG_G_ERR "HVM%d restore: bad CR4 %#016lx (valid: %016lx)\n", > > I'm not convinced printing a lot of leading zeros is really useful here. > However, if you switch to that model, then all uses of the # modifier > need to go away (in the earlier instance it would be nice if you also > fixed the pre-existing issue then). Hm, I've got those messed up. What would you be your preference then? (%#lx?) I would be happy with that also. Thanks, Roger. From xen-devel-bounces@lists.xenproject.org Wed Jun 07 14:38:21 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 14:38:21 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544835.850881 (Exim 4.92) (envelope-from ) id 1q6uId-0008ND-89; Wed, 07 Jun 2023 14:38:11 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544835.850881; Wed, 07 Jun 2023 14:38:11 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6uId-0008N6-4a; Wed, 07 Jun 2023 14:38:11 +0000 Received: by outflank-mailman (input) for mailman id 544835; Wed, 07 Jun 2023 14:38:10 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6uIc-0008Mw-E2; Wed, 07 Jun 2023 14:38:10 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6uIc-00063d-8j; Wed, 07 Jun 2023 14:38:10 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6uIc-00069U-1h; Wed, 07 Jun 2023 14:38:10 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q6uIc-0004UO-1I; Wed, 07 Jun 2023 14:38:10 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=KHQGnSBYnam7nYR3lA05DTwrNO1Xu4RqZDfdq9P9rgU=; b=VEGLGHoLvBQnMXNflaeWizlTXi j/UhxM1J3TAjI1DZtZ4emrmCJEGr+hddylx3VtGl0TKvaCY2AcC1pOm1d10qXdbCc/XeANOxXznvH H1+qZa+qJjbgnLKUd79bJIwDMUDafZIkYwxHgaeZkrYs/oq9wfJxnrnsKm8/dX0wLoes=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable-smoke test] 181248: regressions - trouble: blocked/fail X-Osstest-Failures: xen-unstable-smoke:build-amd64:xen-build:fail:regression xen-unstable-smoke:build-arm64-xsm:xen-build:fail:regression xen-unstable-smoke:build-armhf:xen-build:fail:regression xen-unstable-smoke:build-amd64-libvirt:build-check(1):blocked:nonblocking xen-unstable-smoke:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking xen-unstable-smoke:test-amd64-amd64-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking xen-unstable-smoke:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking xen-unstable-smoke:test-armhf-armhf-xl:build-check(1):blocked:nonblocking X-Osstest-Versions-This: xen=685048441e1cd935b622bba47d3ca612e75b4ef6 X-Osstest-Versions-That: xen=64a647f8d817c6989edc000613b5afae19f03f99 From: osstest service owner Date: Wed, 07 Jun 2023 14:38:10 +0000 flight 181248 xen-unstable-smoke real [real] http://logs.test-lab.xenproject.org/osstest/logs/181248/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-amd64 6 xen-build fail REGR. vs. 181233 build-arm64-xsm 6 xen-build fail REGR. vs. 181233 build-armhf 6 xen-build fail REGR. vs. 181233 Tests which did not succeed, but are not blocking: build-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a version targeted for testing: xen 685048441e1cd935b622bba47d3ca612e75b4ef6 baseline version: xen 64a647f8d817c6989edc000613b5afae19f03f99 Last test of basis 181233 2023-06-07 02:04:37 Z 0 days Failing since 181246 2023-06-07 11:02:03 Z 0 days 2 attempts Testing same since 181248 2023-06-07 13:00:26 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Christian Lindig George Dunlap Henry Wang # CHANGELOG Juergen Gross Julien Grall Luca Fancellu jobs: build-arm64-xsm fail build-amd64 fail build-armhf fail build-amd64-libvirt blocked test-armhf-armhf-xl blocked test-arm64-arm64-xl-xsm blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64 blocked test-amd64-amd64-libvirt blocked ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 447 lines long.) From xen-devel-bounces@lists.xenproject.org Wed Jun 07 15:03:19 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 15:03:19 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544845.850896 (Exim 4.92) (envelope-from ) id 1q6ugl-0003ML-96; Wed, 07 Jun 2023 15:03:07 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544845.850896; Wed, 07 Jun 2023 15:03:07 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6ugl-0003ME-5W; Wed, 07 Jun 2023 15:03:07 +0000 Received: by outflank-mailman (input) for mailman id 544845; Wed, 07 Jun 2023 15:03:06 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6ugj-0003M2-Qg for xen-devel@lists.xenproject.org; Wed, 07 Jun 2023 15:03:06 +0000 Received: from EUR04-VI1-obe.outbound.protection.outlook.com (mail-vi1eur04on061b.outbound.protection.outlook.com [2a01:111:f400:fe0e::61b]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 654a227a-0544-11ee-8611-37d641c3527e; Wed, 07 Jun 2023 17:03:01 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by PAXPR04MB8816.eurprd04.prod.outlook.com (2603:10a6:102:20f::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.32; Wed, 7 Jun 2023 15:02:57 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.030; Wed, 7 Jun 2023 15:02:57 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 654a227a-0544-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=V04r3tAeyS3cf/MBOabVA7fHQ4hYLaXMXfSsyfXLD2l5gVBGL5zeoZOyJI66BkDUiFz9F1/d+yxVG3SPFDsqugUlAHRxcvkX6A1HLq6+qQbldbOUtPruyFtZW45RH0LZUpzKjAxguLKrLQrrv3gYgQ6VER1DWbD8kxsRgw31Sm1nEQFqlKudde5jCX5IlNfop5hcYmri2EuGjzKiCNgt7hbolq2EtK9oZsdmXkjO6Q2e44IELj+AJmHlLw9UPUmSZeXct9lik5h08a9RLUN1p9JiKycd9qf1G5hfdGYK+FRe9sYrt/GEkLpJqGIaHfTghAHUowP0MXRJbtyV9a6txA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=T7EMO1kpZYHBUu+TatAgJD1QTGifOIbHgUy6aM/ox3E=; b=RBh1Vc6Xp1VZ6IR9+BlCWQHnt3qpfwiOxS8hAVfMZMLqUZDuVU9Sa/3Jw9rE0wiTtb0OwTmGF5OPzAUdZd5o2M+5eOudpbTug2fqkU321rDbmiDaW+cr7uWMenQpAmjTE98sIhA70Zd9hhwNozsmvi+YawaoQZZWAcm4f47l+yLd17uLyxz+Jx3/8jd06t3BF+cCgFxWGP8Qw2ydcklAqnJLwYY57Ny8+a1KBG2mKGkpv7dUfxtmtjzWbDQR7tPprx6BdEh2FBxEkG/WfVSUGAZgsD+nyWmRtNwUz72dj7UQ5MPJRE9wOqJJn/80DROhW56tYURnzT7FFM0zyIEhVw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=T7EMO1kpZYHBUu+TatAgJD1QTGifOIbHgUy6aM/ox3E=; b=Fl1Nr4QUrE/msWOJN4G812h5zsPiUTSkAyLyqO6M7LPis4bRDoguodJ2QhmEIMZ9XNNS7kIBl4yQgWcOktQOE1ePpPn30A3oa28NUvrGQhJkal+snRFR7+N1YfWOxjVC7a2wwhT2gnUAEc1M4G1RDPMQlXOgZYhnO9DUbL6WZLsMF0MfDL079BygsLb2n9RHRqIFGDFYlhurgLpSqc4+zGSU1XhQnHLpM/3auRsnm8LzOOFFAhkxGoWyLl+YhoPilP8iIuTx1petZMDYI0k696QtJStkuZxSHmaOJO4wxlVymAFe7gflzyiKYOfwXqWyQKBjCfT/KsrAKO2K8B+1iQ== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <9e6e7d7c-7c8e-c031-1268-02b6bf96ffb1@suse.com> Date: Wed, 7 Jun 2023 17:02:55 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.11.2 Subject: Re: [PATCH] x86/hvm: print valid CR4 bits in case of error Content-Language: en-US To: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= Cc: Andrew Cooper , Wei Liu , xen-devel@lists.xenproject.org References: <20230607134638.53070-1-roger.pau@citrix.com> <3da62adc-b307-6505-f333-a7b211869a15@suse.com> From: Jan Beulich In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: FR3P281CA0042.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:4a::13) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|PAXPR04MB8816:EE_ X-MS-Office365-Filtering-Correlation-Id: 77dfd9b9-c3ad-4f53-2801-08db676846f1 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: G/dU/zdsfhJd7L+we0gfqTwSuwd0DGKDV9hItJerZrSRGjkVYHdjwowIvEJtJNfetC3LQU0y/eoW1FCY534BW544RtbV7R+JSAVDxmKbUbeMhZ8QbaDfK+hIH0gSWhL77t+Jcq51h1N80Ua9c55xHM17UmiD2wALiHZi6vxRTmBqQj2a3lC86KmPfROtlS1zmxFZQEODnkux9cv22d0AqxxkTFrJE/Jcygdru9QJNdx07mAp+/h9dYN9KZOe/t3w1ZxCfoq9ACgwZStEGDO1z9k48jq4p9BwRCgqGQORurxyT4ogpOW+A+rBNDLo2O1h36HJprMMoMelNVBzvVleklFsH4BrjYk/qyMdiOpKiGXXBg+lXfD2uhyJlg2HR+AwGFr/Kp5/rgqatGMBkvYodV2rKINAlLY0SwxtWJ3mA2ZoO9ul1Ma2rUGdZHivhwrfK2q3EA5/V9RibDEfSaN/Xjq+oFMWUMSZOTR86gTTO72lV4OA0Bq3++Ml/An3Dut2Pg1EoLnSK/ZDRrxEHxAYoA/UEFP4+SU17u488nUuu+8bzCQGSfRI0iZFDC17FQU+MyMhuc0+Y44c0fj4huObzXbmzP55RSNp9CRclf8MTEdK8WKausRI14BvSL5Phyc5zHpolJfh450OpoIVaCc9tQ== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(396003)(39860400002)(376002)(136003)(346002)(366004)(451199021)(186003)(83380400001)(2906002)(2616005)(86362001)(36756003)(31696002)(38100700002)(316002)(6486002)(41300700001)(5660300002)(8936002)(8676002)(54906003)(478600001)(66476007)(66946007)(53546011)(4326008)(31686004)(6512007)(6916009)(6506007)(66556008)(26005)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?TEd5akwxc3BYdnZXYlpuTVpXdUlMVi9EbGJvZ1pybDRmTXNRQVVUNWMzeFBp?= =?utf-8?B?K1hlUThBam90Z3JEd3pHaGdFZ3lGQmZBTkdZekhqUjB5ZFR3UUxEanFRSWg1?= =?utf-8?B?djdkSXBlMk0zQkFwZ292UFpON3plZkJmMmZBVStyWmtRbUw3U3JZUDBIb0t6?= =?utf-8?B?a3VlUTEydmxzUHgrR01NMDU2NlF6Q1RQd1dSVTBoalp4Zk0vZ2N3NHh5dWht?= =?utf-8?B?WDNEWUx5L21xdjRyczY1K3hPcnpVbExZbGgwbHFuN0h1ZXNxeU1JVFlPc05u?= =?utf-8?B?enBFQ3FWYTBKOU5FaHN4T0srR0tOZGZmUnptalZXNzMzc2w3Y3BYd01sM21r?= =?utf-8?B?ZXBSNTZLYkxZa1dGRXd2NzNZMXNnbFkzTXRuVHJvUjRRKzlOMmtBZGRXbk1a?= =?utf-8?B?WmgvNzdRTkFBUnlDZGtnbjZQdllMNVoxNXNUaTUrZnVGc3dabjdZUUZUK0gy?= =?utf-8?B?dm05cTBEeTQ2VG1TYkVuN3NINi9GYmdEWWdkZ0tHL2d0MDA0UFJPREx6Qzd4?= =?utf-8?B?QmRYUVE3emUrZ3p5N3ZtOVFEbnE3R3Z2Q01YcVR6MmREeXVkczdPVldtU3NJ?= =?utf-8?B?Z01YUnVxRk82UC9aMGdiVnpXM3FaNUpSdUUvK2h0b2pub2RtZm9YYlAvWlN1?= =?utf-8?B?a21WVncvK0NFM0o5bkZPcGRvSXBVZE5yZEdZMngya3ljSkdhb2NmZ0hLZGN5?= =?utf-8?B?OU5wd1A0Ym55bStDaTM4NCtkMGJrTkkyVVkwU0t6Z28wa1Zyczduc0VZYk02?= =?utf-8?B?TW1vRC9KK2d0Z1orY3RvNnhnemUyOUYrdkVUYWZwYWNSaHZLU2F6WmwyaURF?= =?utf-8?B?MDNOYndNbHVkMkRQUGdhV2NiMWZ5SjNmYXVBUi9BUmo4NXRJS1MzOE1zK3Ry?= =?utf-8?B?cm9KTkZ2YWxCWGk5RG5CWWJIcUYwS1NIZ0c3ZFZFWE54LzVnQUd5eWpqSHpq?= =?utf-8?B?SS81RmcvNDc4dWxWV3JGUmdDU3ZtVTloaGxqNWluYmlvK3ZIMU9TOTRlZEwz?= =?utf-8?B?dXN0UFptcFVSTStZajJORndsK1MrcVFzMW1YTm1zVDRRT0d3eXh5bkdIK1FG?= =?utf-8?B?eE5VZ0NESXFiaTZZZFFNSWQzY3M1VHIvQ2lWQk9heEpDeVkzdHQxMDZ3S1Fw?= =?utf-8?B?eEd0MUc0TENTVVQ5OFpZUktEQXhzNFlpQWhaTGFhZEJOd3Byc2JBNExSM2JB?= =?utf-8?B?UXc3a09KWmUxbVFNMG40eXVZUmczaldtTHlNMHVZdnRlS3V6NE85Skl0dzI1?= =?utf-8?B?QTU0dVpQQUNYYXZUQmx6SXNVaVJTbDJuMWF6NGNjai9VS1lPN1p0eDFGakFs?= =?utf-8?B?Mkd3eXFQQWlvWFZQM21mNnFiSk9GbTJSN3FpaFhmUHh2RnJZclFFRGJBeUtX?= =?utf-8?B?eTh4Y1VsMituMk4yMno0cWxoNjRBNTVpZVRNa28vK3FMK0p4UWkyZ21Jbzlz?= =?utf-8?B?YmtZTGhoQ0hFN1RiQkpnTDBYR2FSbTNiYmUwYVBHOGtramMyU2RVR3NjRWQ5?= =?utf-8?B?c0djRTEzRS9KM1cxczAydnE4TnV5WFpCTzhXNmFtTGVFTkFZQ0toQWRRdXV0?= =?utf-8?B?NFpwL3Frd3pSZW1OblU3TDhDMlYrNGExNHR0ZStKSE9KK1dsbERzbVNLRy8v?= =?utf-8?B?cThXNWxUNTFFcDliTXduQW5lcU5RUmVsaXo2NHBsMWZtWHNaZTJidTcvN3E4?= =?utf-8?B?Y2RtWFNNWk56K1lBMy9YeTJ3N1JjVUkwNTNBa3V1OVhZODE0RW9yYUtjME8v?= =?utf-8?B?TEM2RURJVm1HVDM1dWdyRVZSZkNBdzArb1d0NzBmNFdRMWM0eHA1NU0vMm5i?= =?utf-8?B?K0VhYjdTdGRyUWxQbzZ3bTlpRXBlbnBSTjFuRDM1U0hWdGc5SjV1VzJINGJT?= =?utf-8?B?OENvUHVJZm5WV3pIVlNwajcvVHR4MGo2TkJSMExXKytCU0R6ZHhVUCtSRUpN?= =?utf-8?B?SlQzWE1Va25STG5ZQ0VFS3ozV211ckE0azNUSjRiWjExVTFqK3ZGUEJnam1J?= =?utf-8?B?MWZGYlc1NVNLRDllS3Q2TWNXOXo5L3hodFQ5eXhuTzhRQ2lJLzNQazlnbStP?= =?utf-8?B?S2h6Tm1FeFBQWWEzTGwvang5WTlsSExWcWtyOGFXb1hQK0VEOVA0dlIvWXVH?= =?utf-8?Q?QbQTCnLcHlkxW2WFA+5NtXsdb?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 77dfd9b9-c3ad-4f53-2801-08db676846f1 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Jun 2023 15:02:57.0293 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: ThhctORBIU3+ll+HQW4KklHvODe7lZ0DAubhOKcqdPqN32kNq4onZrAcfB9AnfGypggS363FhJ+NIMeLc7HzUA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB8816 On 07.06.2023 16:24, Roger Pau Monné wrote: > On Wed, Jun 07, 2023 at 04:00:14PM +0200, Jan Beulich wrote: >> On 07.06.2023 15:46, Roger Pau Monne wrote: >>> --- a/xen/arch/x86/hvm/domain.c >>> +++ b/xen/arch/x86/hvm/domain.c >>> @@ -266,8 +266,8 @@ int arch_set_info_hvm_guest(struct vcpu *v, const vcpu_hvm_context_t *ctx) >>> >>> if ( v->arch.hvm.guest_cr[4] & ~hvm_cr4_guest_valid_bits(d) ) >>> { >>> - gprintk(XENLOG_ERR, "Bad CR4 value: %#016lx\n", >>> - v->arch.hvm.guest_cr[4]); >>> + gprintk(XENLOG_ERR, "Bad CR4 value: %#016lx (valid: %016lx)\n", >>> + v->arch.hvm.guest_cr[4], hvm_cr4_guest_valid_bits(d)); >>> return -EINVAL; >>> } >>> >>> --- a/xen/arch/x86/hvm/hvm.c >>> +++ b/xen/arch/x86/hvm/hvm.c >>> @@ -1018,8 +1018,8 @@ static int cf_check hvm_load_cpu_ctxt(struct domain *d, hvm_domain_context_t *h) >>> >>> if ( ctxt.cr4 & ~hvm_cr4_guest_valid_bits(d) ) >>> { >>> - printk(XENLOG_G_ERR "HVM%d restore: bad CR4 %#" PRIx64 "\n", >>> - d->domain_id, ctxt.cr4); >>> + printk(XENLOG_G_ERR "HVM%d restore: bad CR4 %#016lx (valid: %016lx)\n", >> >> I'm not convinced printing a lot of leading zeros is really useful here. >> However, if you switch to that model, then all uses of the # modifier >> need to go away (in the earlier instance it would be nice if you also >> fixed the pre-existing issue then). > > Hm, I've got those messed up. What would you be your preference then? > (%#lx?) Yes. > I would be happy with that also. Oh, even better then. Jan From xen-devel-bounces@lists.xenproject.org Wed Jun 07 15:15:56 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 15:15:56 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544852.850917 (Exim 4.92) (envelope-from ) id 1q6ut1-00050k-SV; Wed, 07 Jun 2023 15:15:47 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544852.850917; Wed, 07 Jun 2023 15:15:47 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6ut1-0004zi-On; Wed, 07 Jun 2023 15:15:47 +0000 Received: by outflank-mailman (input) for mailman id 544852; Wed, 07 Jun 2023 15:06:51 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6ukN-0003xK-6A for xen-devel@lists.xenproject.org; Wed, 07 Jun 2023 15:06:51 +0000 Received: from alpha.anastas.io (alpha.anastas.io [104.248.188.109]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id ebdca35c-0544-11ee-8611-37d641c3527e; Wed, 07 Jun 2023 17:06:47 +0200 (CEST) Received: from authenticated-user (alpha.anastas.io [104.248.188.109]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by alpha.anastas.io (Postfix) with ESMTPSA id 24D543F080; Wed, 7 Jun 2023 08:06:45 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: ebdca35c-0544-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=anastas.io; s=mail; t=1686150406; bh=MqSTVgN8W4JFO8/qevC0vl0BG1dZ8uNRDCoKmByWs9o=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=btyrT/pk+Te4i55ISjLi8KGE7q7G3/DuAkl6W4i8R1fYCiQuPkTd104AHSpwvTKUd 5EZKxXr2IDKvwcEAz54Zhp4yizEGYgGe41bLCuHKyhPtjjqKxIYlbRTaKWguTNo2nL 4W79k3RuJxn9yHAeqwSNAvn377iDFlCxIXOS223cBWcVoa7ap3ZMgfek0fmcDg8dKn YMGx7dsrRDWMj863F3gVtYdrHNpmuQa6WLlbeua7FIJ7hBPn8N7RIMEc3bOF95oEXT 4aBBOylKhflADtS4FLVDNuUQ1k0VFPtSwiRReuG4W9Krc29gSQ+u4Qu7LC+/Q6hWj4 idFRuM1g1DvTA== From: Shawn Anastasio To: xen-devel@lists.xenproject.org Cc: tpearson@raptorengineering.com, Shawn Anastasio , Andrew Cooper , George Dunlap , Jan Beulich , Julien Grall , Stefano Stabellini , Wei Liu , Shawn Anastasio Subject: [PATCH 1/3] xen: Add files needed for minimal Power build Date: Wed, 7 Jun 2023 10:06:32 -0500 Message-Id: In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Add the build system changes required to build for ppc64le (POWER8+). Following in the footsteps of the initial riscv port, only building the head.o target, which boots to an infinite loop, is supported: $ make XEN_TARGET_ARCH=ppc64 -C xen openpower_defconfig $ make XEN_TARGET_ARCH=ppc64 SUBSYSTEMS=xen -C xen TARGET=ppc64/head.o This port targets POWER8+ CPUs running in Little Endian mode specifically, and does not boot on older machines. Additionally, this initial skeleton only implements the PaPR/pseries boot protocol which allows it to be booted in a standard QEMU virtual machine: $ qemu-system-ppc64 -M pseries-5.2 -m 256M -kernel ppc64/head.o Where possible, this patch uses header definitions and support routines from the original Xen PowerPC port present in Xen 3.2.3. Though we are targeting a much newer ISA than that original port did, some of the definitions have remained similar enough for reuse. Signed-off-by: Shawn Anastasio --- config/ppc64.mk | 5 + xen/Makefile | 5 +- xen/arch/ppc/Kconfig | 42 +++++ xen/arch/ppc/Kconfig.debug | 0 xen/arch/ppc/Makefile | 17 ++ xen/arch/ppc/Rules.mk | 0 xen/arch/ppc/arch.mk | 11 ++ xen/arch/ppc/configs/openpower_defconfig | 13 ++ xen/arch/ppc/include/asm/config.h | 63 +++++++ xen/arch/ppc/include/asm/msr.h | 67 +++++++ xen/arch/ppc/include/asm/page-bits.h | 7 + xen/arch/ppc/include/asm/processor.h | 173 ++++++++++++++++++ xen/arch/ppc/include/asm/reg_defs.h | 218 +++++++++++++++++++++++ xen/arch/ppc/ppc64/Makefile | 1 + xen/arch/ppc/ppc64/asm-offsets.c | 0 xen/arch/ppc/ppc64/head.S | 67 +++++++ xen/arch/ppc/setup.c | 14 ++ xen/arch/ppc/xen.lds.S | 173 ++++++++++++++++++ 18 files changed, 874 insertions(+), 2 deletions(-) create mode 100644 config/ppc64.mk create mode 100644 xen/arch/ppc/Kconfig create mode 100644 xen/arch/ppc/Kconfig.debug create mode 100644 xen/arch/ppc/Makefile create mode 100644 xen/arch/ppc/Rules.mk create mode 100644 xen/arch/ppc/arch.mk create mode 100644 xen/arch/ppc/configs/openpower_defconfig create mode 100644 xen/arch/ppc/include/asm/config.h create mode 100644 xen/arch/ppc/include/asm/msr.h create mode 100644 xen/arch/ppc/include/asm/page-bits.h create mode 100644 xen/arch/ppc/include/asm/processor.h create mode 100644 xen/arch/ppc/include/asm/reg_defs.h create mode 100644 xen/arch/ppc/ppc64/Makefile create mode 100644 xen/arch/ppc/ppc64/asm-offsets.c create mode 100644 xen/arch/ppc/ppc64/head.S create mode 100644 xen/arch/ppc/setup.c create mode 100644 xen/arch/ppc/xen.lds.S diff --git a/config/ppc64.mk b/config/ppc64.mk new file mode 100644 index 0000000000..a46de35cf1 --- /dev/null +++ b/config/ppc64.mk @@ -0,0 +1,5 @@ +CONFIG_PPC64 := y +CONFIG_PPC64_64 := y +CONFIG_PPC64_$(XEN_OS) := y + +CONFIG_XEN_INSTALL_SUFFIX := diff --git a/xen/Makefile b/xen/Makefile index e89fc461fc..db5454fb58 100644 --- a/xen/Makefile +++ b/xen/Makefile @@ -38,7 +38,7 @@ EFI_MOUNTPOINT ?= $(BOOT_DIR)/efi ARCH=$(XEN_TARGET_ARCH) SRCARCH=$(shell echo $(ARCH) | \ sed -e 's/x86.*/x86/' -e s'/arm\(32\|64\)/arm/g' \ - -e s'/riscv.*/riscv/g') + -e s'/riscv.*/riscv/g' -e s'/ppc.*/ppc/g') export ARCH SRCARCH # Allow someone to change their config file @@ -244,7 +244,7 @@ include $(XEN_ROOT)/Config.mk export TARGET_SUBARCH := $(XEN_TARGET_ARCH) export TARGET_ARCH := $(shell echo $(XEN_TARGET_ARCH) | \ sed -e 's/x86.*/x86/' -e s'/arm\(32\|64\)/arm/g' \ - -e s'/riscv.*/riscv/g') + -e s'/riscv.*/riscv/g' -e s'/ppc.*/ppc/g') export CONFIG_SHELL := $(SHELL) export CC CXX LD NM OBJCOPY OBJDUMP ADDR2LINE @@ -563,6 +563,7 @@ _clean: $(Q)$(MAKE) $(clean)=xsm $(Q)$(MAKE) $(clean)=crypto $(Q)$(MAKE) $(clean)=arch/arm + $(Q)$(MAKE) $(clean)=arch/ppc $(Q)$(MAKE) $(clean)=arch/riscv $(Q)$(MAKE) $(clean)=arch/x86 $(Q)$(MAKE) $(clean)=test diff --git a/xen/arch/ppc/Kconfig b/xen/arch/ppc/Kconfig new file mode 100644 index 0000000000..e80a5fb036 --- /dev/null +++ b/xen/arch/ppc/Kconfig @@ -0,0 +1,42 @@ +config PPC + def_bool y + +config PPC64 + def_bool y + select 64BIT + +config ARCH_DEFCONFIG + string + default "arch/ppc/configs/openpower_defconfig" + +menu "Architecture Features" + +source "arch/Kconfig" + +endmenu + +menu "ISA Selection" + +choice + prompt "Base ISA" + default POWER_ISA_2_07B if PPC64 + help + This selects the base ISA version that Xen will target. + +config POWER_ISA_2_07B + bool "POWER ISA 2.07B+" + help + Target version 2.07B+ of the POWER ISA (POWER8+) + +config POWER_ISA_3_00 + bool "POWER ISA 3.00+" + help + Target version 3.00+ of the POWER ISA (POWER9+) + +endchoice + +endmenu + +source "common/Kconfig" + +source "drivers/Kconfig" diff --git a/xen/arch/ppc/Kconfig.debug b/xen/arch/ppc/Kconfig.debug new file mode 100644 index 0000000000..e69de29bb2 diff --git a/xen/arch/ppc/Makefile b/xen/arch/ppc/Makefile new file mode 100644 index 0000000000..b3ad837d4b --- /dev/null +++ b/xen/arch/ppc/Makefile @@ -0,0 +1,17 @@ +obj-$(CONFIG_PPC64) += ppc64/ +obj-y += setup.o + +$(TARGET): $(TARGET)-syms + cp -f $< $@ + +$(TARGET)-syms: $(objtree)/prelink.o $(obj)/xen.lds + $(LD) $(XEN_LDFLAGS) -T $(obj)/xen.lds -N $< $(build_id_linker) -o $@ + $(NM) -pa --format=sysv $(@D)/$(@F) \ + | $(objtree)/tools/symbols --all-symbols --xensyms --sysv --sort \ + >$(@D)/$(@F).map + +$(obj)/xen.lds: $(src)/xen.lds.S FORCE + $(call if_changed_dep,cpp_lds_S) + +.PHONY: include +include: diff --git a/xen/arch/ppc/Rules.mk b/xen/arch/ppc/Rules.mk new file mode 100644 index 0000000000..e69de29bb2 diff --git a/xen/arch/ppc/arch.mk b/xen/arch/ppc/arch.mk new file mode 100644 index 0000000000..c185a5028a --- /dev/null +++ b/xen/arch/ppc/arch.mk @@ -0,0 +1,11 @@ +######################################## +# Power-specific definitions + +ppc-march-$(CONFIG_POWER_ISA_2_07B) := power8 +ppc-march-$(CONFIG_POWER_ISA_3_00) := power9 + +CFLAGS += -mcpu=$(ppc-march-y) -mstrict-align -mcmodel=large -mabi=elfv2 -mno-altivec -mno-vsx + +# TODO: Drop override when more of the build is working +override ALL_OBJS-y = arch/$(TARGET_ARCH)/built_in.o +override ALL_LIBS-y = diff --git a/xen/arch/ppc/configs/openpower_defconfig b/xen/arch/ppc/configs/openpower_defconfig new file mode 100644 index 0000000000..8783eb3488 --- /dev/null +++ b/xen/arch/ppc/configs/openpower_defconfig @@ -0,0 +1,13 @@ +# CONFIG_SCHED_CREDIT is not set +# CONFIG_SCHED_RTDS is not set +# CONFIG_SCHED_NULL is not set +# CONFIG_SCHED_ARINC653 is not set +# CONFIG_TRACEBUFFER is not set +# CONFIG_HYPFS is not set +# CONFIG_GRANT_TABLE is not set +# CONFIG_SPECULATIVE_HARDEN_ARRAY is not set + +CONFIG_PPC64=y +CONFIG_DEBUG=y +CONFIG_DEBUG_INFO=y +CONFIG_EXPERT=y diff --git a/xen/arch/ppc/include/asm/config.h b/xen/arch/ppc/include/asm/config.h new file mode 100644 index 0000000000..7a2862ef7a --- /dev/null +++ b/xen/arch/ppc/include/asm/config.h @@ -0,0 +1,63 @@ +#ifndef __PPC_CONFIG_H__ +#define __PPC_CONFIG_H__ + +#include +#include + +#if defined(CONFIG_PPC64) +#define LONG_BYTEORDER 3 +#define ELFSIZE 64 +#define MAX_VIRT_CPUS 1024u +#else +#error "Unsupported PowerPC variant" +#endif + +#define BYTES_PER_LONG (1 << LONG_BYTEORDER) +#define BITS_PER_LONG (BYTES_PER_LONG << 3) +#define POINTER_ALIGN BYTES_PER_LONG + +#define BITS_PER_LLONG 64 + +/* xen_ulong_t is always 64 bits */ +#define BITS_PER_XEN_ULONG 64 + +#define CONFIG_PPC_L1_CACHE_SHIFT 7 +#define CONFIG_PAGEALLOC_MAX_ORDER 18 +#define CONFIG_DOMU_MAX_ORDER 9 +#define CONFIG_HWDOM_MAX_ORDER 10 + +#define OPT_CONSOLE_STR "dtuart" +#define INVALID_VCPU_ID MAX_VIRT_CPUS + +/* Linkage for PPC */ +#ifdef __ASSEMBLY__ +#define ALIGN .align 2 + +#define ENTRY(name) \ + .globl name; \ + ALIGN; \ + name: +#endif + +#define XEN_VIRT_START _AT(UL, 0x400000) + +#define SMP_CACHE_BYTES (1 << 6) + +#define STACK_ORDER 2 +#define STACK_SIZE (PAGE_SIZE << STACK_ORDER) + +/* 288 bytes below the stack pointer must be preserved by interrupt handlers */ +#define STACK_VOLATILE_AREA 288 + +/* size of minimum stack frame; C code can write into the caller's stack */ +#define STACK_FRAME_OVERHEAD 32 + +#endif /* __PPC_CONFIG_H__ */ +/* + * Local variables: + * mode: C + * c-file-style: "BSD" + * c-basic-offset: 4 + * indent-tabs-mode: nil + * End: + */ diff --git a/xen/arch/ppc/include/asm/msr.h b/xen/arch/ppc/include/asm/msr.h new file mode 100644 index 0000000000..7ef0b5e3ad --- /dev/null +++ b/xen/arch/ppc/include/asm/msr.h @@ -0,0 +1,67 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ +/* + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + * + * Copyright (C) IBM Corp. 2005 + * + * Authors: Jimi Xenidis + */ + +#ifndef _POWERPC_MSR_H +#define _POWERPC_MSR_H + +#ifdef __ASSEMBLY__ +#define ULL(x) x +#else +#define ULL(x) x ## ULL +#endif + +/* Flags in MSR: */ +#define MSR_SF ULL(0x8000000000000000) +#define MSR_TA ULL(0x4000000000000000) +#define MSR_ISF ULL(0x2000000000000000) +#define MSR_HV ULL(0x1000000000000000) +#define MSR_VMX ULL(0x0000000002000000) +#define MSR_MER ULL(0x0000000000200000) +#define MSR_POW ULL(0x0000000000040000) +#define MSR_ILE ULL(0x0000000000010000) +#define MSR_EE ULL(0x0000000000008000) +#define MSR_PR ULL(0x0000000000004000) +#define MSR_FP ULL(0x0000000000002000) +#define MSR_ME ULL(0x0000000000001000) +#define MSR_FE0 ULL(0x0000000000000800) +#define MSR_SE ULL(0x0000000000000400) +#define MSR_BE ULL(0x0000000000000200) +#define MSR_FE1 ULL(0x0000000000000100) +#define MSR_IP ULL(0x0000000000000040) +#define MSR_IR ULL(0x0000000000000020) +#define MSR_DR ULL(0x0000000000000010) +#define MSR_PMM ULL(0x0000000000000004) +#define MSR_RI ULL(0x0000000000000002) +#define MSR_LE ULL(0x0000000000000001) + +/* MSR bits set on the systemsim simulator */ +#define MSR_SIM ULL(0x0000000020000000) +#define MSR_SYSTEMSIM ULL(0x0000000010000000) + +/* On a trap, srr1's copy of msr defines some bits as follows: */ +#define MSR_TRAP_FE ULL(0x0000000000100000) /* Floating Point Exception */ +#define MSR_TRAP_IOP ULL(0x0000000000080000) /* Illegal Instruction */ +#define MSR_TRAP_PRIV ULL(0x0000000000040000) /* Privileged Instruction */ +#define MSR_TRAP ULL(0x0000000000020000) /* Trap Instruction */ +#define MSR_TRAP_NEXT ULL(0x0000000000010000) /* PC is next instruction */ +#define MSR_TRAP_BITS (MSR_TRAP_FE|MSR_TRAP_IOP|MSR_TRAP_PRIV|MSR_TRAP) + +#endif /* _POWERPC_MSR_H */ diff --git a/xen/arch/ppc/include/asm/page-bits.h b/xen/arch/ppc/include/asm/page-bits.h new file mode 100644 index 0000000000..4c01bf9716 --- /dev/null +++ b/xen/arch/ppc/include/asm/page-bits.h @@ -0,0 +1,7 @@ +#ifndef __PPC_PAGE_BITS_H__ +#define __PPC_PAGE_BITS_H__ + +#define PAGE_SHIFT 16 /* 64 KiB Pages */ +#define PADDR_BITS 48 + +#endif /* __PPC_PAGE_BITS_H__ */ diff --git a/xen/arch/ppc/include/asm/processor.h b/xen/arch/ppc/include/asm/processor.h new file mode 100644 index 0000000000..0ab7bfc9df --- /dev/null +++ b/xen/arch/ppc/include/asm/processor.h @@ -0,0 +1,173 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ +/* + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + * + * Copyright IBM Corp. 2005, 2006, 2007 + * Copyright Raptor Engineering, LLC + * + * Authors: Hollis Blanchard + * Christian Ehrhardt + * Timothy Pearson + * Shawn Anastasio + */ + +#ifndef _ASM_PROCESSOR_H_ +#define _ASM_PROCESSOR_H_ + +#include +#include +#include + +#define IOBMP_BYTES 8192 +#define IOBMP_INVALID_OFFSET 0x8000 + +/* most assembler do not know this instruction */ +#define HRFID .long 0x4c000224 + +/* Processor Version Register (PVR) field extraction */ + +#define PVR_VER(pvr) (((pvr) >> 16) & 0xFFFF) /* Version field */ +#define PVR_REV(pvr) (((pvr) >> 0) & 0xFFFF) /* Revison field */ + +#define __is_processor(pv) (PVR_VER(mfspr(SPRN_PVR)) == (pv)) + +/* + * IBM has further subdivided the standard PowerPC 16-bit version and + * revision subfields of the PVR for the PowerPC 403s into the following: + */ + +#define PVR_FAM(pvr) (((pvr) >> 20) & 0xFFF) /* Family field */ +#define PVR_MEM(pvr) (((pvr) >> 16) & 0xF) /* Member field */ +#define PVR_CORE(pvr) (((pvr) >> 12) & 0xF) /* Core field */ +#define PVR_CFG(pvr) (((pvr) >> 8) & 0xF) /* Configuration field */ +#define PVR_MAJ(pvr) (((pvr) >> 4) & 0xF) /* Major revision field */ +#define PVR_MIN(pvr) (((pvr) >> 0) & 0xF) /* Minor revision field */ + +/* Processor Version Numbers */ + +#define PVR_403GA 0x00200000 +#define PVR_403GB 0x00200100 +#define PVR_403GC 0x00200200 +#define PVR_403GCX 0x00201400 +#define PVR_405GP 0x40110000 +#define PVR_STB03XXX 0x40310000 +#define PVR_NP405H 0x41410000 +#define PVR_NP405L 0x41610000 +#define PVR_601 0x00010000 +#define PVR_602 0x00050000 +#define PVR_603 0x00030000 +#define PVR_603e 0x00060000 +#define PVR_603ev 0x00070000 +#define PVR_603r 0x00071000 +#define PVR_604 0x00040000 +#define PVR_604e 0x00090000 +#define PVR_604r 0x000A0000 +#define PVR_620 0x00140000 +#define PVR_740 0x00080000 +#define PVR_750 PVR_740 +#define PVR_740P 0x10080000 +#define PVR_750P PVR_740P +#define PVR_7400 0x000C0000 +#define PVR_7410 0x800C0000 +#define PVR_7450 0x80000000 +#define PVR_8540 0x80200000 +#define PVR_8560 0x80200000 +/* + * For the 8xx processors, all of them report the same PVR family for + * the PowerPC core. The various versions of these processors must be + * differentiated by the version number in the Communication Processor + * Module (CPM). + */ +#define PVR_821 0x00500000 +#define PVR_823 PVR_821 +#define PVR_850 PVR_821 +#define PVR_860 PVR_821 +#define PVR_8240 0x00810100 +#define PVR_8245 0x80811014 +#define PVR_8260 PVR_8240 + +/* 64-bit processors */ +#define PVR_NORTHSTAR 0x0033 +#define PVR_PULSAR 0x0034 +#define PVR_POWER4 0x0035 +#define PVR_ICESTAR 0x0036 +#define PVR_SSTAR 0x0037 +#define PVR_POWER4p 0x0038 +#define PVR_970 0x0039 +#define PVR_POWER5 0x003A +#define PVR_POWER5p 0x003B +#define PVR_970FX 0x003C +#define PVR_630 0x0040 +#define PVR_630p 0x0041 +#define PVR_970MP 0x0044 +#define PVR_BE 0x0070 + +#ifdef __ASSEMBLY__ + +#define LOADADDR(rn, name) \ + lis rn, name##@highest; \ + ori rn, rn, name##@higher; \ + rldicr rn, rn, 32, 31; \ + oris rn, rn, name##@h; \ + ori rn, rn, name##@l + +#define SET_REG_TO_CONST(reg, value) \ + lis reg, (((value) >> 48) & 0xFFFF); \ + ori reg, reg, (((value) >> 32) & 0xFFFF); \ + rldicr reg, reg, 32, 31; \ + oris reg, reg, (((value) >> 16) & 0xFFFF); \ + ori reg, reg, ((value) &0xFFFF); + +#define SET_REG_TO_LABEL(reg, label) \ + lis reg, (label) @highest; \ + ori reg, reg, (label) @higher; \ + rldicr reg, reg, 32, 31; \ + oris reg, reg, (label) @h; \ + ori reg, reg, (label) @l; + +/* Taken from Linux kernel source (arch/powerpc/boot/ppc_asm.h) */ +#define FIXUP_ENDIAN \ + tdi 0, 0, 0x48; /* Reverse endian of b . + 8 */ \ + b $ + 44; /* Skip trampoline if endian is good */ \ + .long 0xa600607d; /* mfmsr r11 */ \ + .long 0x01006b69; /* xori r11,r11,1 */ \ + .long 0x00004039; /* li r10,0 */ \ + .long 0x6401417d; /* mtmsrd r10,1 */ \ + .long 0x05009f42; /* bcl 20,31,$+4 */ \ + .long 0xa602487d; /* mflr r10 */ \ + .long 0x14004a39; /* addi r10,r10,20 */ \ + .long 0xa6035a7d; /* mtsrr0 r10 */ \ + .long 0xa6037b7d; /* mtsrr1 r11 */ \ + .long 0x2400004c /* rfid */ + +#define _GLOBAL(name) \ + .section ".text"; \ + .align 2; \ + .globl name; \ + .type name, @function; \ + name: + +#define _STATIC(name) \ + .section ".text"; \ + .align 2; \ + .type name, @function; \ + name: + +#define _ENTRY(name) name + +#else /* __ASSEMBLY__ */ +#endif /* __ASSEMBLY__ */ + +#endif diff --git a/xen/arch/ppc/include/asm/reg_defs.h b/xen/arch/ppc/include/asm/reg_defs.h new file mode 100644 index 0000000000..ac435517cc --- /dev/null +++ b/xen/arch/ppc/include/asm/reg_defs.h @@ -0,0 +1,218 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ +/* + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + * + * Copyright IBM Corp. 2005, 2007 + * + * Authors: Jimi Xenidis + * Christian Ehrhardt + */ + +#ifndef _ASM_REG_DEFS_H_ +#define _ASM_REG_DEFS_H_ + +#ifdef __ASSEMBLY__ + +#define UL(x) x + +/* Condition Register Bit Fields */ + +#define cr0 0 +#define cr1 1 +#define cr2 2 +#define cr3 3 +#define cr4 4 +#define cr5 5 +#define cr6 6 +#define cr7 7 + + +/* General Purpose Registers (GPRs) */ + +#define r0 0 +#define r1 1 +#define r2 2 +#define r3 3 +#define r4 4 +#define r5 5 +#define r6 6 +#define r7 7 +#define r8 8 +#define r9 9 +#define r10 10 +#define r11 11 +#define r12 12 +#define r13 13 +#define r14 14 +#define r15 15 +#define r16 16 +#define r17 17 +#define r18 18 +#define r19 19 +#define r20 20 +#define r21 21 +#define r22 22 +#define r23 23 +#define r24 24 +#define r25 25 +#define r26 26 +#define r27 27 +#define r28 28 +#define r29 29 +#define r30 30 +#define r31 31 + +/* Floating Point Registers (FPRs) */ +#define fr0 0 +#define fr1 1 +#define fr2 2 +#define fr3 3 +#define fr4 4 +#define fr5 5 +#define fr6 6 +#define fr7 7 +#define fr8 8 +#define fr9 9 +#define fr10 10 +#define fr11 11 +#define fr12 12 +#define fr13 13 +#define fr14 14 +#define fr15 15 +#define fr16 16 +#define fr17 17 +#define fr18 18 +#define fr19 19 +#define fr20 20 +#define fr21 21 +#define fr22 22 +#define fr23 23 +#define fr24 24 +#define fr25 25 +#define fr26 26 +#define fr27 27 +#define fr28 28 +#define fr29 29 +#define fr30 30 +#define fr31 31 + +/* Vector Registers (FPRs) */ +#define vr0 0 +#define vr1 1 +#define vr2 2 +#define vr3 3 +#define vr4 4 +#define vr5 5 +#define vr6 6 +#define vr7 7 +#define vr8 8 +#define vr9 9 +#define vr10 10 +#define vr11 11 +#define vr12 12 +#define vr13 13 +#define vr14 14 +#define vr15 15 +#define vr16 16 +#define vr17 17 +#define vr18 18 +#define vr19 19 +#define vr20 20 +#define vr21 21 +#define vr22 22 +#define vr23 23 +#define vr24 24 +#define vr25 25 +#define vr26 26 +#define vr27 27 +#define vr28 28 +#define vr29 29 +#define vr30 30 +#define vr31 31 + +#else /* defined(__ASSEMBLY__) */ + +#define UL(x) x ## UL + +#endif + +/* Special Purpose Registers */ +#define SPRN_VRSAVE 256 +#define SPRN_DSISR 18 +#define SPRN_DAR 19 +#define SPRN_DEC 22 +#define SPRN_SRR0 26 +#define SPRN_SRR1 27 +#define SPRN_TBRL 268 +#define SPRN_TBRU 269 +#define SPRN_SPRG0 272 +#define SPRN_SPRG1 273 +#define SPRN_SPRG2 274 +#define SPRN_SPRG3 275 +#define SPRN_TBWL 284 +#define SPRN_TBWU 285 + +#define SPRN_HSPRG0 304 +#define SPRN_HSPRG1 305 +#define SPRN_HDEC 310 +#define SPRN_HIOR 311 +#define SPRN_RMOR 312 +#define SPRN_HRMOR 313 +#define SPRN_HSRR0 314 +#define SPRN_HSRR1 315 +#define SPRN_LPCR 318 +#define SPRN_LPIDR 319 + +/* Performance monitor spr encodings */ +#define SPRN_MMCRA 786 +#define MMCRA_SAMPHV UL(0x10000000) /* state of MSR HV when SIAR set */ +#define MMCRA_SAMPPR UL(0x08000000) /* state of MSR PR when SIAR set */ +#define MMCRA_SAMPLE_ENABLE UL(0x00000001) /* enable sampling */ +#define NUM_PMCS 8 +#define SPRN_PMC1 787 +#define SPRN_PMC2 788 +#define SPRN_PMC3 789 +#define SPRN_PMC4 790 +#define SPRN_PMC5 791 +#define SPRN_PMC6 792 +#define SPRN_PMC7 793 +#define SPRN_PMC8 794 +#define SPRN_MMCR0 795 +#define MMCR0_FC UL(0x80000000) /* freeze counters */ +#define MMCR0_FCS UL(0x40000000) /* freeze in supervisor state */ +#define MMCR0_FCP UL(0x20000000) /* freeze in problem state */ +#define MMCR0_FCM1 UL(0x10000000) /* freeze counters while MSR mark = 1 */ +#define MMCR0_FCM0 UL(0x08000000) /* freeze counters while MSR mark = 0 */ +#define MMCR0_PMAE UL(0x04000000) /* performance monitor alert enabled */ +#define MMCR0_PMAO UL(0x00000080) /* performance monitor alert occurred */ +#define MMCR0_FCH UL(0x00000001) /* freeze conditions in hypervisor */ +#define SPRN_SIAR 796 +#define SPRN_SDAR 797 +#define SPRN_MMCR1 798 + +/* As defined for PU G4 */ +#define SPRN_HID0 1008 +#define SPRN_HID1 1009 +#define SPRN_HID4 1012 + +#define SPRN_DABR 1013 +#define SPRN_HID5 1014 +#define SPRN_DABRX 1015 +#define SPRN_HID6 1017 +#define SPRN_HID7 1018 +#define SPRN_HID8 1019 +#define SPRN_PIR 1023 + +#endif /* _ASM_REG_DEFS_H_ */ diff --git a/xen/arch/ppc/ppc64/Makefile b/xen/arch/ppc/ppc64/Makefile new file mode 100644 index 0000000000..24aaeb84df --- /dev/null +++ b/xen/arch/ppc/ppc64/Makefile @@ -0,0 +1 @@ +obj-y += head.o \ No newline at end of file diff --git a/xen/arch/ppc/ppc64/asm-offsets.c b/xen/arch/ppc/ppc64/asm-offsets.c new file mode 100644 index 0000000000..e69de29bb2 diff --git a/xen/arch/ppc/ppc64/head.S b/xen/arch/ppc/ppc64/head.S new file mode 100644 index 0000000000..d91b0972ae --- /dev/null +++ b/xen/arch/ppc/ppc64/head.S @@ -0,0 +1,67 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ +/* + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * Copyright (C) 2005, 2006 IBM Corp. + * Copyright (C) 2023 Raptor Engineering, LLC + * + * Authors: Jimi Xenidis + * Hollis Blanchard + * Timothy Pearson + * Shawn Anastasio + */ + +#include +#include +#include +#include + +.section .text.header, "ax", %progbits + +ENTRY(start) + /* NOTE: (OF only) r3-r7 contain data passed to kernel from fw */ + FIXUP_ENDIAN + + /* Set MSR_HV bit */ + mfmsr r8 + li r9, MSR_HV >> 48 + sldi r9, r9, 48 + or r8, r8, r9 + mtmsrd r8 + + /* set up the initial stack */ + SET_REG_TO_LABEL(r1, cpu0_boot_stack) + li r8, 0 + std r8, 0(r1) + + /* call the init function */ + LOADADDR(r12,start_xen) + mtctr r12 + bctrl + + /* should never return */ + trap + + /* Note! GDB 6.3 makes the very stupid assumption that PC > SP means we are + * in a Linux signal trampoline, and it begins groping for a struct + * rt_sigframe on the stack. Naturally, this fails miserably for our + * backtrace. To work around this behavior, we must make certain that our + * stack is always above our text, e.g. in the data section. */ + .data /* DO NOT REMOVE; see GDB note above */ + .align 4 +cpu0_boot_stack_bottom: + .space STACK_SIZE +cpu0_boot_stack: + .space STACK_FRAME_OVERHEAD diff --git a/xen/arch/ppc/setup.c b/xen/arch/ppc/setup.c new file mode 100644 index 0000000000..c9509fb6a6 --- /dev/null +++ b/xen/arch/ppc/setup.c @@ -0,0 +1,14 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ +#include +#include + +void __init noreturn start_xen(void) +{ + for ( ;; ) + { + // Set current hardware thread to very low priority + asm volatile("or 31,31,31"); + } + + unreachable(); +} diff --git a/xen/arch/ppc/xen.lds.S b/xen/arch/ppc/xen.lds.S new file mode 100644 index 0000000000..89fcdc9c00 --- /dev/null +++ b/xen/arch/ppc/xen.lds.S @@ -0,0 +1,173 @@ +#include + +#undef ENTRY +#undef ALIGN + +OUTPUT_ARCH(powerpc:common64) +ENTRY(start) + +PHDRS +{ + text PT_LOAD ; +#if defined(BUILD_ID) + note PT_NOTE ; +#endif +} + +/** + * OF's base load address is 0x400000 (XEN_VIRT_START). + * By defining sections this way, we can keep our virtual address base at 0x400000 + * while keeping the physical base at 0x0. + * + * Without this, OF incorrectly loads .text at 0x400000 + 0x400000 = 0x800000. + * Taken from x86/xen.lds.S + */ +#ifdef CONFIG_LD_IS_GNU +# define DECL_SECTION(x) x : AT(ADDR(#x) - XEN_VIRT_START) +#else +# define DECL_SECTION(x) x : AT(ADDR(x) - XEN_VIRT_START) +#endif + +SECTIONS +{ + . = XEN_VIRT_START; + + DECL_SECTION(.text) { + _stext = .; /* Text section */ + *(.text.header) + + *(.text.cold) + *(.text.unlikely .text.*_unlikely .text.unlikely.*) + + *(.text) +#ifdef CONFIG_CC_SPLIT_SECTIONS + *(.text.*) +#endif + + *(.fixup) + *(.gnu.warning) + . = ALIGN(POINTER_ALIGN); + _etext = .; /* End of text section */ + } :text + + . = ALIGN(PAGE_SIZE); + DECL_SECTION(.rodata) { + _srodata = .; /* Read-only data */ + *(.rodata) + *(.rodata.*) + *(.data.rel.ro) + *(.data.rel.ro.*) + + VPCI_ARRAY + + . = ALIGN(POINTER_ALIGN); + _erodata = .; /* End of read-only data */ + } :text + + #if defined(BUILD_ID) + . = ALIGN(4); + DECL_SECTION(.note.gnu.build-id) { + __note_gnu_build_id_start = .; + *(.note.gnu.build-id) + __note_gnu_build_id_end = .; + } :note :text + #endif + _erodata = .; /* End of read-only data */ + + . = ALIGN(PAGE_SIZE); + DECL_SECTION(.data.ro_after_init) { + __ro_after_init_start = .; + *(.data.ro_after_init) + . = ALIGN(PAGE_SIZE); + __ro_after_init_end = .; + } : text + + DECL_SECTION(.data.read_mostly) { + *(.data.read_mostly) + } :text + + . = ALIGN(PAGE_SIZE); + DECL_SECTION(.data) { /* Data */ + *(.data.page_aligned) + . = ALIGN(8); + __start_schedulers_array = .; + *(.data.schedulers) + __end_schedulers_array = .; + + HYPFS_PARAM + + *(.data .data.*) + CONSTRUCTORS + } :text + + . = ALIGN(PAGE_SIZE); /* Init code and data */ + __init_begin = .; + DECL_SECTION(.init.text) { + _sinittext = .; + *(.init.text) + _einittext = .; + . = ALIGN(PAGE_SIZE); /* Avoid mapping alt insns executable */ + } :text + + . = ALIGN(PAGE_SIZE); + DECL_SECTION(.init.data) { + *(.init.rodata) + *(.init.rodata.*) + + . = ALIGN(POINTER_ALIGN); + __setup_start = .; + *(.init.setup) + __setup_end = .; + + __initcall_start = .; + *(.initcallpresmp.init) + __presmp_initcall_end = .; + *(.initcall1.init) + __initcall_end = .; + + LOCK_PROFILE_DATA + + *(.init.data) + *(.init.data.rel) + *(.init.data.rel.*) + + . = ALIGN(8); + __ctors_start = .; + *(.ctors) + *(.init_array) + *(SORT(.init_array.*)) + __ctors_end = .; + } :text + . = ALIGN(POINTER_ALIGN); + __init_end = .; + + DECL_SECTION(.bss) { /* BSS */ + __bss_start = .; + *(.bss.stack_aligned) + . = ALIGN(PAGE_SIZE); + *(.bss.page_aligned) + . = ALIGN(PAGE_SIZE); + __per_cpu_start = .; + *(.bss.percpu.page_aligned) + *(.bss.percpu) + . = ALIGN(SMP_CACHE_BYTES); + *(.bss.percpu.read_mostly) + . = ALIGN(SMP_CACHE_BYTES); + __per_cpu_data_end = .; + *(.bss .bss.*) + . = ALIGN(POINTER_ALIGN); + __bss_end = .; + } :text + _end = . ; + + /* Section for the device tree blob (if any). */ + DECL_SECTION(.dtb) { *(.dtb) } :text + + DWARF2_DEBUG_SECTIONS + + DISCARD_SECTIONS + + STABS_DEBUG_SECTIONS + + ELF_DETAILS_SECTIONS +} -- 2.30.2 From xen-devel-bounces@lists.xenproject.org Wed Jun 07 15:15:56 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 15:15:56 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544853.850924 (Exim 4.92) (envelope-from ) id 1q6ut2-00056P-74; Wed, 07 Jun 2023 15:15:48 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544853.850924; Wed, 07 Jun 2023 15:15:48 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6ut2-00054D-10; Wed, 07 Jun 2023 15:15:48 +0000 Received: by outflank-mailman (input) for mailman id 544853; Wed, 07 Jun 2023 15:06:52 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6ukO-0003y0-OE for xen-devel@lists.xenproject.org; Wed, 07 Jun 2023 15:06:52 +0000 Received: from alpha.anastas.io (alpha.anastas.io [104.248.188.109]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id ed5d198b-0544-11ee-b232-6b7b168915f2; Wed, 07 Jun 2023 17:06:50 +0200 (CEST) Received: from authenticated-user (alpha.anastas.io [104.248.188.109]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by alpha.anastas.io (Postfix) with ESMTPSA id ABDCD3F083; Wed, 7 Jun 2023 08:06:47 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: ed5d198b-0544-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=anastas.io; s=mail; t=1686150408; bh=jdDMw3/DDAuOH0kHDqrmKQF6OjPTpwJqojrrVzdGhEA=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=VevSMB2SyIaEVB5lNVMtC2td0VLDL9IH2mMrEMQVz+8jhEnTvfMBD0L3maQCeFNHW n4hRnWIjrkLgUT66XBxEvQh2Q50CLjS+HNr95PqKy6uzDQ1Y/MjG19KjYYxz9gqNkV epc9tBssfqIxr9o57I2+Vpozb827ambEZAhZIgRBuB3Xui3ddfafEeuUPFYx1h9qym +JtEecEXjk1TK0e9NzNANrg3SX9tK3UsxB+prm/FxWf0dBV3Y3VjWi73TkCyYGtuGn /phc+fsmhktB5WMJnOmVYvq2t+lwgvS0Ej0dRcUsgtKDrZWRPMs9lA9eq6CHJ4+JYT jvOwo2jm3zxBg== From: Shawn Anastasio To: xen-devel@lists.xenproject.org Cc: tpearson@raptorengineering.com, Shawn Anastasio , Andrew Cooper , George Dunlap , Jan Beulich , Julien Grall , Stefano Stabellini , Wei Liu , Shawn Anastasio Subject: [PATCH 2/3] xen/ppc: Implement early serial printk on PaPR/pseries Date: Wed, 7 Jun 2023 10:06:33 -0500 Message-Id: In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit On typical Power VMs (e.g. QEMU's -M pseries), a variety of services are provided by OpenFirmware, including an early serial console. Implement the required interfaces to call into OpenFirmware and write to the serial console. Since OpenFirmware runs in 32-bit Big Endian mode and Xen runs in 64-bit Little Endian mode, a thunk is required to save/restore any potentially-clobbered registers as well as to perform the required endianness switch. Thankfully, linux already has such a routine, which was imported into head.S. Support for bare metal (PowerNV) will be implemented in a future patch. Signed-off-by: Shawn Anastasio --- xen/arch/ppc/Kconfig.debug | 5 + xen/arch/ppc/Makefile | 3 +- xen/arch/ppc/boot_of.c | 122 +++++++++++++++++++++++ xen/arch/ppc/configs/openpower_defconfig | 1 + xen/arch/ppc/early_printk.c | 36 +++++++ xen/arch/ppc/include/asm/boot.h | 31 ++++++ xen/arch/ppc/include/asm/bug.h | 6 ++ xen/arch/ppc/include/asm/byteorder.h | 74 ++++++++++++++ xen/arch/ppc/include/asm/cache.h | 6 ++ xen/arch/ppc/include/asm/config.h | 3 + xen/arch/ppc/include/asm/early_printk.h | 14 +++ xen/arch/ppc/include/asm/processor.h | 54 +++++++++- xen/arch/ppc/include/asm/string.h | 6 ++ xen/arch/ppc/include/asm/types.h | 64 ++++++++++++ xen/arch/ppc/ppc64/asm-offsets.c | 55 ++++++++++ xen/arch/ppc/ppc64/head.S | 59 +++++++++++ xen/arch/ppc/setup.c | 20 +++- 17 files changed, 555 insertions(+), 4 deletions(-) create mode 100644 xen/arch/ppc/boot_of.c create mode 100644 xen/arch/ppc/early_printk.c create mode 100644 xen/arch/ppc/include/asm/boot.h create mode 100644 xen/arch/ppc/include/asm/bug.h create mode 100644 xen/arch/ppc/include/asm/byteorder.h create mode 100644 xen/arch/ppc/include/asm/cache.h create mode 100644 xen/arch/ppc/include/asm/early_printk.h create mode 100644 xen/arch/ppc/include/asm/string.h create mode 100644 xen/arch/ppc/include/asm/types.h diff --git a/xen/arch/ppc/Kconfig.debug b/xen/arch/ppc/Kconfig.debug index e69de29bb2..3c25a446e8 100644 --- a/xen/arch/ppc/Kconfig.debug +++ b/xen/arch/ppc/Kconfig.debug @@ -0,0 +1,5 @@ +config EARLY_PRINTK + bool "Enable early printk" + default DEBUG + help + Enables early printk debug messages \ No newline at end of file diff --git a/xen/arch/ppc/Makefile b/xen/arch/ppc/Makefile index b3ad837d4b..00b3b7baf3 100644 --- a/xen/arch/ppc/Makefile +++ b/xen/arch/ppc/Makefile @@ -1,5 +1,6 @@ obj-$(CONFIG_PPC64) += ppc64/ -obj-y += setup.o +obj-y += setup.o boot_of.o +obj-$(CONFIG_EARLY_PRINTK) += early_printk.o $(TARGET): $(TARGET)-syms cp -f $< $@ diff --git a/xen/arch/ppc/boot_of.c b/xen/arch/ppc/boot_of.c new file mode 100644 index 0000000000..9447d92661 --- /dev/null +++ b/xen/arch/ppc/boot_of.c @@ -0,0 +1,122 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ +/* + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + * + * Copyright IBM Corp. 2005, 2006, 2007 + * Copyright Raptor Engineering, LLC + * + * Authors: Jimi Xenidis + * Hollis Blanchard + * Shawn Anastasio + */ + +#include +#include +#include +#include +#include + +#define ADDR(x) (uint32_t)(unsigned long)(x) + +/* OF entrypoint*/ +static unsigned long of_vec; + +/* OF device handles*/ +static int bof_chosen; +static int of_out; + +static int of_call(const char *service, uint32_t nargs, uint32_t nrets, + int32_t rets[], ...) +{ + int rc; + va_list args; + int i; + struct of_service s = { 0 }; + + s.ofs_service = cpu_to_be32(ADDR(service)); + s.ofs_nargs = cpu_to_be32(nargs); + s.ofs_nrets = cpu_to_be32(nrets); + + /* copy all the params into the args array */ + va_start(args, rets); + + for ( i = 0; i < nargs; i++ ) + { + s.ofs_args[i] = cpu_to_be32(va_arg(args, uint32_t)); + } + + va_end(args); + + rc = enter_prom(&s, of_vec); + + /* yes always to the copy, just in case */ + for ( i = 0; i < nrets; i++ ) + { + rets[i] = be32_to_cpu(s.ofs_args[i + nargs]); + } + + return rc; +} + +static int of_finddevice(const char *devspec) +{ + int rets[1] = { OF_FAILURE }; + + of_call("finddevice", 1, 1, rets, devspec); + if ( rets[0] == OF_FAILURE ) + return OF_FAILURE; + + return rets[0]; +} + +static int of_getprop(int ph, const char *name, void *buf, uint32_t buflen) +{ + int rets[1] = { OF_FAILURE }; + + of_call("getprop", 4, 1, rets, ph, ADDR(name), buf, buflen); + + if ( rets[0] == OF_FAILURE ) + return OF_FAILURE; + + return rets[0]; +} + +int of_write(int ih, const char *addr, uint32_t len) +{ + int rets[1] = { OF_FAILURE }; + + if ( of_call("write", 3, 1, rets, ih, addr, len) == OF_FAILURE ) + return OF_FAILURE; + + return rets[0]; +} + +void of_putchar(char c) +{ + if ( c == '\n' ) + { + char buf = '\r'; + (void) of_write(of_out, &buf, 1); + } + (void) of_write(of_out, &c, 1); +} + +void boot_of_init(unsigned long vec) +{ + of_vec = vec; + bof_chosen = of_finddevice("/chosen"); + of_getprop(bof_chosen, "stdout", &of_out, sizeof(of_out)); + of_out = be32_to_cpu(of_out); +} \ No newline at end of file diff --git a/xen/arch/ppc/configs/openpower_defconfig b/xen/arch/ppc/configs/openpower_defconfig index 8783eb3488..f7cc075e45 100644 --- a/xen/arch/ppc/configs/openpower_defconfig +++ b/xen/arch/ppc/configs/openpower_defconfig @@ -10,4 +10,5 @@ CONFIG_PPC64=y CONFIG_DEBUG=y CONFIG_DEBUG_INFO=y +CONFIG_EARLY_PRINTK=y CONFIG_EXPERT=y diff --git a/xen/arch/ppc/early_printk.c b/xen/arch/ppc/early_printk.c new file mode 100644 index 0000000000..ab9213d801 --- /dev/null +++ b/xen/arch/ppc/early_printk.c @@ -0,0 +1,36 @@ +/* SPDX-License-Identifier: GPL-2.0 */ +/* + * Power early printk using OpenFirmware or OPAL + * + * Copyright Raptor Engineering, LLC + * + * Authors: Shawn Anastasio + */ + +#include +#include + +static void (*putchar_func)(char); + +void early_printk_init(bool is_of) +{ + putchar_func = is_of ? of_putchar : NULL; +} + +void early_puts(const char *s, size_t nr) +{ + if ( !putchar_func ) + return; + + while ( nr-- > 0 ) + putchar_func(*s++); +} + +void early_printk(const char *s) +{ + if ( !putchar_func ) + return; + + while ( *s ) + putchar_func(*s++); +} \ No newline at end of file diff --git a/xen/arch/ppc/include/asm/boot.h b/xen/arch/ppc/include/asm/boot.h new file mode 100644 index 0000000000..96d56f9650 --- /dev/null +++ b/xen/arch/ppc/include/asm/boot.h @@ -0,0 +1,31 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ +/* + * Copyright Raptor Engineering, LLC + * + * Authors: Shawn Anastasio <@raptorengineering.com> + */ + +#ifndef _ASM_PPC_BOOT_H +#define _ASM_PPC_BOOT_H + +#include + +/* a collection of interfaces used during boot. */ +enum { + OF_FAILURE = -1, + OF_SUCCESS = 0, +}; + +struct of_service { + __be32 ofs_service; + __be32 ofs_nargs; + __be32 ofs_nrets; + __be32 ofs_args[10]; +}; + +extern int enter_prom(struct of_service *args, unsigned long entry); + +void boot_of_init(unsigned long); +void of_putchar(char c); + +#endif /* _ASM_PPC_BOOT_H */ \ No newline at end of file diff --git a/xen/arch/ppc/include/asm/bug.h b/xen/arch/ppc/include/asm/bug.h new file mode 100644 index 0000000000..40022a757b --- /dev/null +++ b/xen/arch/ppc/include/asm/bug.h @@ -0,0 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0 */ + +#ifndef _ASM_PPC_BUG_H +#define _ASM_PPC_BUG_H + +#endif /* _ASM_PPC_BUG_H */ \ No newline at end of file diff --git a/xen/arch/ppc/include/asm/byteorder.h b/xen/arch/ppc/include/asm/byteorder.h new file mode 100644 index 0000000000..ac840f9b1c --- /dev/null +++ b/xen/arch/ppc/include/asm/byteorder.h @@ -0,0 +1,74 @@ +/* SPDX-License-Identifier: GPL-2.0 */ +#ifndef _ASM_POWERPC_BYTEORDER_H +#define _ASM_POWERPC_BYTEORDER_H + +#include +#include + +static inline __u16 ld_le16(const volatile __u16 *addr) +{ + __u16 val; + + asm volatile ("lhbrx %0,0,%1" : "=r" (val) : "r" (addr), "m" (*addr)); + return val; +} + +static inline void st_le16(volatile __u16 *addr, const __u16 val) +{ + asm volatile ("sthbrx %1,0,%2" : "=m" (*addr) : "r" (val), "r" (addr)); +} + +static inline __u32 ld_le32(const volatile __u32 *addr) +{ + __u32 val; + + asm volatile ("lwbrx %0,0,%1" : "=r" (val) : "r" (addr), "m" (*addr)); + return val; +} + +static inline void st_le32(volatile __u32 *addr, const __u32 val) +{ + asm volatile ("stwbrx %1,0,%2" : "=m" (*addr) : "r" (val), "r" (addr)); +} + +static inline __attribute_const__ __u16 ___arch__swab16(__u16 value) +{ + __u16 result; + + asm("rlwimi %0,%1,8,16,23" + : "=r" (result) + : "r" (value), "0" (value >> 8)); + return result; +} + +static inline __attribute_const__ __u32 ___arch__swab32(__u32 value) +{ + __u32 result; + + asm("rlwimi %0,%1,24,16,23\n\t" + "rlwimi %0,%1,8,8,15\n\t" + "rlwimi %0,%1,24,0,7" + : "=r" (result) + : "r" (value), "0" (value >> 24)); + return result; +} + +#define __arch__swab16(x) ___arch__swab16(x) +#define __arch__swab32(x) ___arch__swab32(x) + +/* The same, but returns converted value from the location pointer by addr. */ +#define __arch__swab16p(addr) ld_le16(addr) +#define __arch__swab32p(addr) ld_le32(addr) + +/* The same, but do the conversion in situ, ie. put the value back to addr. */ +#define __arch__swab16s(addr) st_le16(addr,*addr) +#define __arch__swab32s(addr) st_le32(addr,*addr) + +#define __BYTEORDER_HAS_U64__ +#ifndef __powerpc64__ +#define __SWAB_64_THRU_32__ +#endif /* __powerpc64__ */ + +#include + +#endif /* _ASM_POWERPC_BYTEORDER_H */ diff --git a/xen/arch/ppc/include/asm/cache.h b/xen/arch/ppc/include/asm/cache.h new file mode 100644 index 0000000000..677a2b3915 --- /dev/null +++ b/xen/arch/ppc/include/asm/cache.h @@ -0,0 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0 */ + +#ifndef _ASM_PPC_CACHE_H +#define _ASM_PPC_CACHE_H + +#endif /* _ASM_PPC_CACHE_H */ \ No newline at end of file diff --git a/xen/arch/ppc/include/asm/config.h b/xen/arch/ppc/include/asm/config.h index 7a2862ef7a..a3438de92b 100644 --- a/xen/arch/ppc/include/asm/config.h +++ b/xen/arch/ppc/include/asm/config.h @@ -52,6 +52,9 @@ /* size of minimum stack frame; C code can write into the caller's stack */ #define STACK_FRAME_OVERHEAD 32 +/* size of minimum stack frame that can hold an entire cpu_user_regs struct */ +#define STACK_SWITCH_FRAME_SIZE (UREGS_sizeof + STACK_FRAME_OVERHEAD) + #endif /* __PPC_CONFIG_H__ */ /* * Local variables: diff --git a/xen/arch/ppc/include/asm/early_printk.h b/xen/arch/ppc/include/asm/early_printk.h new file mode 100644 index 0000000000..a9566a1240 --- /dev/null +++ b/xen/arch/ppc/include/asm/early_printk.h @@ -0,0 +1,14 @@ +#ifndef __EARLY_PRINTK_H__ +#define __EARLY_PRINTK_H__ + +#include + +#ifdef CONFIG_EARLY_PRINTK +void early_printk_init(bool is_of); +void early_printk(const char *str); +#else +static inline void early_printk_init(bool is_of) {} +static inline void early_printk(const char *s) {} +#endif + +#endif /* __EARLY_PRINTK_H__ */ \ No newline at end of file diff --git a/xen/arch/ppc/include/asm/processor.h b/xen/arch/ppc/include/asm/processor.h index 0ab7bfc9df..63409f003a 100644 --- a/xen/arch/ppc/include/asm/processor.h +++ b/xen/arch/ppc/include/asm/processor.h @@ -114,7 +114,42 @@ #define PVR_970MP 0x0044 #define PVR_BE 0x0070 -#ifdef __ASSEMBLY__ +#ifndef __ASSEMBLY__ + +#include + +/* User-accessible registers: nost of these need to be saved/restored + * for every nested Xen invocation. */ +struct cpu_user_regs +{ + uint64_t gprs[32]; + uint64_t lr; + uint64_t ctr; + uint64_t srr0; + uint64_t srr1; + uint64_t pc; + uint64_t msr; + uint64_t fpscr; /* XXX Is this necessary */ + uint64_t xer; + uint64_t hid4; /* debug only */ + uint64_t dar; /* debug only */ + uint32_t dsisr; /* debug only */ + uint32_t cr; + uint32_t __pad; /* good spot for another 32bit reg */ + uint32_t entry_vector; +}; + +static __inline__ void sync(void) +{ + __asm__ __volatile__("sync"); +} + +static __inline__ void isync(void) +{ + __asm__ __volatile__("isync"); +} + +#else #define LOADADDR(rn, name) \ lis rn, name##@highest; \ @@ -152,6 +187,22 @@ .long 0xa6037b7d; /* mtsrr1 r11 */ \ .long 0x2400004c /* rfid */ +/* Taken from Linux kernel source (arch/powerpc/boot/crt0.S) */ +.macro OP_REGS op, width, start, end, base, offset + .Lreg=\start + .rept (\end - \start + 1) + \op .Lreg,\offset+\width*.Lreg(\base) + .Lreg=.Lreg+1 + .endr +.endm + +#define SAVE_GPRS(start, end, base) OP_REGS std, 8, start, end, base, 0 +#define REST_GPRS(start, end, base) OP_REGS ld, 8, start, end, base, 0 +#define SAVE_GPR(n, base) SAVE_GPRS(n, n, base) +#define REST_GPR(n, base) REST_GPRS(n, n, base) +#define SAVE_NVGPRS(base) SAVE_GPRS(14, 31, base) +#define REST_NVGPRS(base) REST_GPRS(14, 31, base) + #define _GLOBAL(name) \ .section ".text"; \ .align 2; \ @@ -167,7 +218,6 @@ #define _ENTRY(name) name -#else /* __ASSEMBLY__ */ #endif /* __ASSEMBLY__ */ #endif diff --git a/xen/arch/ppc/include/asm/string.h b/xen/arch/ppc/include/asm/string.h new file mode 100644 index 0000000000..aed83b0d47 --- /dev/null +++ b/xen/arch/ppc/include/asm/string.h @@ -0,0 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0 */ + +#ifndef _ASM_PPC_STRING_H +#define _ASM_PPC_STRING_H + +#endif /* _ASM_PPC_STRING_H */ \ No newline at end of file diff --git a/xen/arch/ppc/include/asm/types.h b/xen/arch/ppc/include/asm/types.h new file mode 100644 index 0000000000..44b5df49f2 --- /dev/null +++ b/xen/arch/ppc/include/asm/types.h @@ -0,0 +1,64 @@ +/* from xen/include/asm-x86/types.h */ + +#ifndef _PPC_TYPES_H +#define _PPC_TYPES_H + +#ifndef __ASSEMBLY__ +typedef unsigned short umode_t; + +/* + * __xx is ok: it doesn't pollute the POSIX namespace. Use these in the + * header files exported to user space + */ + +typedef __signed__ char __s8; +typedef unsigned char __u8; + +typedef __signed__ short __s16; +typedef unsigned short __u16; + +typedef __signed__ int __s32; +typedef unsigned int __u32; + +#if defined(__GNUC__) && !defined(__STRICT_ANSI__) +#if defined(__ppc__) +typedef __signed__ long long __s64; +typedef unsigned long long __u64; + +#elif defined(__PPC64__) +typedef __signed__ long __s64; +typedef unsigned long __u64; +#endif +#endif + +typedef signed char s8; +typedef unsigned char u8; + +typedef signed short s16; +typedef unsigned short u16; + +typedef signed int s32; +typedef unsigned int u32; + +#if defined(__ppc__) +typedef signed long long s64; +typedef unsigned long long u64; +typedef unsigned int size_t; +#elif defined(__PPC64__) +typedef signed long s64; +typedef unsigned long u64; +typedef unsigned long size_t; +#endif + +typedef unsigned long paddr_t; +#define PRIpaddr "08lx" + +/* DMA addresses come in generic and 64-bit flavours. */ + +typedef unsigned long dma_addr_t; +typedef u64 dma64_addr_t; + +typedef unsigned short xmem_bufctl_t; + +#endif /* __ASSEMBLY__ */ +#endif diff --git a/xen/arch/ppc/ppc64/asm-offsets.c b/xen/arch/ppc/ppc64/asm-offsets.c index e69de29bb2..a6de2b2768 100644 --- a/xen/arch/ppc/ppc64/asm-offsets.c +++ b/xen/arch/ppc/ppc64/asm-offsets.c @@ -0,0 +1,55 @@ +/* + * Generate definitions needed by assembly language modules. + * This code generates raw asm output which is post-processed + * to extract and format the required data. + */ + +#include + +#define DEFINE(_sym, _val) \ + asm volatile ("\n.ascii\"==>#define " #_sym " %0 /* " #_val " */<==\"" \ + : : "i" (_val) ) +#define BLANK() \ + asm volatile ( "\n.ascii\"==><==\"" : : ) +#define OFFSET(_sym, _str, _mem) \ + DEFINE(_sym, offsetof(_str, _mem)); + +/* base-2 logarithm */ +#define __L2(_x) (((_x) & 0x00000002) ? 1 : 0) +#define __L4(_x) (((_x) & 0x0000000c) ? ( 2 + __L2( (_x)>> 2)) : __L2( _x)) +#define __L8(_x) (((_x) & 0x000000f0) ? ( 4 + __L4( (_x)>> 4)) : __L4( _x)) +#define __L16(_x) (((_x) & 0x0000ff00) ? ( 8 + __L8( (_x)>> 8)) : __L8( _x)) +#define LOG_2(_x) (((_x) & 0xffff0000) ? (16 + __L16((_x)>>16)) : __L16(_x)) + +void __dummy__(void) +{ + DEFINE(GPR_WIDTH, sizeof(unsigned long)); + DEFINE(FPR_WIDTH, sizeof(double)); + + OFFSET(UREGS_gprs, struct cpu_user_regs, gprs); + OFFSET(UREGS_r0, struct cpu_user_regs, gprs[0]); + OFFSET(UREGS_r1, struct cpu_user_regs, gprs[1]); + OFFSET(UREGS_r13, struct cpu_user_regs, gprs[13]); + OFFSET(UREGS_srr0, struct cpu_user_regs, srr0); + OFFSET(UREGS_srr1, struct cpu_user_regs, srr1); + OFFSET(UREGS_pc, struct cpu_user_regs, pc); + OFFSET(UREGS_msr, struct cpu_user_regs, msr); + OFFSET(UREGS_lr, struct cpu_user_regs, lr); + OFFSET(UREGS_ctr, struct cpu_user_regs, ctr); + OFFSET(UREGS_xer, struct cpu_user_regs, xer); + OFFSET(UREGS_hid4, struct cpu_user_regs, hid4); + OFFSET(UREGS_dar, struct cpu_user_regs, dar); + OFFSET(UREGS_dsisr, struct cpu_user_regs, dsisr); + OFFSET(UREGS_cr, struct cpu_user_regs, cr); + OFFSET(UREGS_fpscr, struct cpu_user_regs, fpscr); + DEFINE(UREGS_sizeof, sizeof(struct cpu_user_regs)); +} + +/* + * Local variables: + * mode: C + * c-file-style: "BSD" + * c-basic-offset: 4 + * indent-tabs-mode: nil + * End: + */ diff --git a/xen/arch/ppc/ppc64/head.S b/xen/arch/ppc/ppc64/head.S index d91b0972ae..d5ca1c08ad 100644 --- a/xen/arch/ppc/ppc64/head.S +++ b/xen/arch/ppc/ppc64/head.S @@ -65,3 +65,62 @@ cpu0_boot_stack_bottom: .space STACK_SIZE cpu0_boot_stack: .space STACK_FRAME_OVERHEAD + +/* Adapted from Linux kernel source (arch/powerpc/boot/crt0.S) */ +_GLOBAL(enter_prom) + mflr r0 + std r0,16(r1) + stdu r1,-STACK_SWITCH_FRAME_SIZE(r1) /* Save SP and create stack space */ + + /* Because PROM is running in 32b mode, it clobbers the high order half + * of all registers that it saves. We therefore save those registers + * PROM might touch to the stack. (r0, r3-r13 are caller saved) + */ + SAVE_GPR(2, r1) + SAVE_GPR(13, r1) + SAVE_NVGPRS(r1) + mfcr r10 + mfmsr r11 + std r10,UREGS_cr(r1) + std r11,UREGS_msr(r1) + + /* Put PROM address in SRR0 */ + mtsrr0 r4 + + /* Setup our trampoline return addr in LR */ + bcl 20,31,$+4 +0: mflr r4 + addi r4,r4,(1f - 0b) + mtlr r4 + + /* Prepare a 32-bit mode big endian MSR + */ + SET_REG_TO_CONST(r12, MSR_SF | MSR_LE) + andc r11,r11,r12 + mtsrr1 r11 + rfid + +1: /* Return from OF */ + FIXUP_ENDIAN + + /* Just make sure that r1 top 32 bits didn't get + * corrupt by OF + */ + rldicl r1,r1,0,32 + + /* Restore the MSR (back to 64 bits) */ + ld r0,UREGS_msr(r1) + mtmsrd r0 + isync + + /* Restore other registers */ + REST_GPR(2, r1) + REST_GPR(13, r1) + REST_NVGPRS(r1) + ld r4,UREGS_cr(r1) + mtcr r4 + + addi r1,r1,STACK_SWITCH_FRAME_SIZE + ld r0,16(r1) + mtlr r0 + blr diff --git a/xen/arch/ppc/setup.c b/xen/arch/ppc/setup.c index c9509fb6a6..fb12d4df34 100644 --- a/xen/arch/ppc/setup.c +++ b/xen/arch/ppc/setup.c @@ -1,9 +1,27 @@ /* SPDX-License-Identifier: GPL-2.0-or-later */ #include #include +#include +#include -void __init noreturn start_xen(void) +void __init noreturn start_xen(unsigned long r3, unsigned long r4, + unsigned long r5, unsigned long r6, + unsigned long r7) { + if ( r5 ) + { + /* OF boot protocol */ + boot_of_init(r5); + early_printk_init(true); + } + else + { + /* kexec boot: Unimplemented */ + __builtin_trap(); + } + + early_printk("Hello, ppc64le!\n"); + for ( ;; ) { // Set current hardware thread to very low priority -- 2.30.2 From xen-devel-bounces@lists.xenproject.org Wed Jun 07 15:15:56 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 15:15:56 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544850.850913 (Exim 4.92) (envelope-from ) id 1q6ut1-0004xV-Lz; Wed, 07 Jun 2023 15:15:47 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544850.850913; Wed, 07 Jun 2023 15:15:47 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6ut1-0004xO-IU; Wed, 07 Jun 2023 15:15:47 +0000 Received: by outflank-mailman (input) for mailman id 544850; Wed, 07 Jun 2023 15:06:47 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6ukJ-0003xK-Fv for xen-devel@lists.xenproject.org; Wed, 07 Jun 2023 15:06:47 +0000 Received: from alpha.anastas.io (alpha.anastas.io [104.248.188.109]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id ea0dfbbf-0544-11ee-8611-37d641c3527e; Wed, 07 Jun 2023 17:06:45 +0200 (CEST) Received: from authenticated-user (alpha.anastas.io [104.248.188.109]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by alpha.anastas.io (Postfix) with ESMTPSA id 695F03F060; Wed, 7 Jun 2023 08:06:41 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: ea0dfbbf-0544-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=anastas.io; s=mail; t=1686150402; bh=rtdgOgaEuLkzOn+6Czh7oy86GIqcCqilxzRpoDRtYzQ=; h=From:To:Cc:Subject:Date:From; b=HiUC6aNRJqtqu+vsbzJsqqkPTweHYZe4EoWUuA6MaYUx6DSqG3xcWrCxBrVCCc0nG mqfj8K9s96Icvm95wThwTZAMTPhz+HFh/Ag1TRziSGWtDPAkDVGQ1bClqxcv7q5gxx pc3EZTYZiA7PaaoPB+CtymlqpPZeQsIWYPKaGqnW35BOJnP3mne38W+9jteWILQQP6 Z2Nhj4dZVF+8tRHbSNhePn8C8+6XsLbOmrVSg8+FIk6R3Xiblp7R+YozUEt6rYOrW7 Z7IuvKunEzf318/5r8yfndEojpK2xeCy9Xl0A/Lfvo+9gu0CxFPvhfuDCGiw1fXDE2 sBW0qOA1lOUxA== From: Shawn Anastasio To: xen-devel@lists.xenproject.org Cc: tpearson@raptorengineering.com, Shawn Anastasio , Andrew Cooper , George Dunlap , Jan Beulich , Julien Grall , Stefano Stabellini , Wei Liu Subject: [PATCH 0/3] Initial support for Power Date: Wed, 7 Jun 2023 10:06:31 -0500 Message-Id: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Hello all, This patch series adds support for building a minimal image (head.o-only) for Power ISA 2.07B+ (POWER8+) systems. The first patch boots to an infinite loop and the second adds early serial console support on pseries VMs, with bare metal support planned next. Since Xen previously had support for a much older version of the ISA in version 3.2.3, we were able to carry over some headers and support routines from that version. Unlike that initial port though, this effort focuses solely on POWER8+ CPUs that are capable of running in Little Endian mode. With an appropriate powerpc64le-linux-gnu cross-toolchain, the minimal image can be built with: $ make XEN_TARGET_ARCH=ppc64 -C xen openpower_defconfig $ make XEN_TARGET_ARCH=ppc64 SUBSYSTEMS=xen -C xen TARGET=ppc64/head.o The resulting head.o can then be booted in a standard QEMU/pseries VM: $ qemu-system-ppc64 -M pseries-5.2 -m 256M -kernel xen/ppc64/head.o \ -vga none -serial mon:stdio -nographic Thanks, Shawn Shawn Anastasio (3): xen: Add files needed for minimal Power build xen/ppc: Implement early serial printk on PaPR/pseries maintainers: Add PPC64 maintainer MAINTAINERS | 3 + config/ppc64.mk | 5 + xen/Makefile | 5 +- xen/arch/ppc/Kconfig | 42 +++++ xen/arch/ppc/Kconfig.debug | 5 + xen/arch/ppc/Makefile | 18 ++ xen/arch/ppc/Rules.mk | 0 xen/arch/ppc/arch.mk | 11 ++ xen/arch/ppc/boot_of.c | 122 +++++++++++++ xen/arch/ppc/configs/openpower_defconfig | 14 ++ xen/arch/ppc/early_printk.c | 36 ++++ xen/arch/ppc/include/asm/boot.h | 31 ++++ xen/arch/ppc/include/asm/bug.h | 6 + xen/arch/ppc/include/asm/byteorder.h | 74 ++++++++ xen/arch/ppc/include/asm/cache.h | 6 + xen/arch/ppc/include/asm/config.h | 66 +++++++ xen/arch/ppc/include/asm/early_printk.h | 14 ++ xen/arch/ppc/include/asm/msr.h | 67 +++++++ xen/arch/ppc/include/asm/page-bits.h | 7 + xen/arch/ppc/include/asm/processor.h | 223 +++++++++++++++++++++++ xen/arch/ppc/include/asm/reg_defs.h | 218 ++++++++++++++++++++++ xen/arch/ppc/include/asm/string.h | 6 + xen/arch/ppc/include/asm/types.h | 64 +++++++ xen/arch/ppc/ppc64/Makefile | 1 + xen/arch/ppc/ppc64/asm-offsets.c | 55 ++++++ xen/arch/ppc/ppc64/head.S | 126 +++++++++++++ xen/arch/ppc/setup.c | 32 ++++ xen/arch/ppc/xen.lds.S | 173 ++++++++++++++++++ 28 files changed, 1428 insertions(+), 2 deletions(-) create mode 100644 config/ppc64.mk create mode 100644 xen/arch/ppc/Kconfig create mode 100644 xen/arch/ppc/Kconfig.debug create mode 100644 xen/arch/ppc/Makefile create mode 100644 xen/arch/ppc/Rules.mk create mode 100644 xen/arch/ppc/arch.mk create mode 100644 xen/arch/ppc/boot_of.c create mode 100644 xen/arch/ppc/configs/openpower_defconfig create mode 100644 xen/arch/ppc/early_printk.c create mode 100644 xen/arch/ppc/include/asm/boot.h create mode 100644 xen/arch/ppc/include/asm/bug.h create mode 100644 xen/arch/ppc/include/asm/byteorder.h create mode 100644 xen/arch/ppc/include/asm/cache.h create mode 100644 xen/arch/ppc/include/asm/config.h create mode 100644 xen/arch/ppc/include/asm/early_printk.h create mode 100644 xen/arch/ppc/include/asm/msr.h create mode 100644 xen/arch/ppc/include/asm/page-bits.h create mode 100644 xen/arch/ppc/include/asm/processor.h create mode 100644 xen/arch/ppc/include/asm/reg_defs.h create mode 100644 xen/arch/ppc/include/asm/string.h create mode 100644 xen/arch/ppc/include/asm/types.h create mode 100644 xen/arch/ppc/ppc64/Makefile create mode 100644 xen/arch/ppc/ppc64/asm-offsets.c create mode 100644 xen/arch/ppc/ppc64/head.S create mode 100644 xen/arch/ppc/setup.c create mode 100644 xen/arch/ppc/xen.lds.S -- 2.30.2 From xen-devel-bounces@lists.xenproject.org Wed Jun 07 15:15:56 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 15:15:56 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544855.850931 (Exim 4.92) (envelope-from ) id 1q6ut2-0005EE-Ht; Wed, 07 Jun 2023 15:15:48 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544855.850931; Wed, 07 Jun 2023 15:15:48 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6ut2-0005DM-B4; Wed, 07 Jun 2023 15:15:48 +0000 Received: by outflank-mailman (input) for mailman id 544855; Wed, 07 Jun 2023 15:06:53 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6ukP-0003y0-T5 for xen-devel@lists.xenproject.org; Wed, 07 Jun 2023 15:06:53 +0000 Received: from alpha.anastas.io (alpha.anastas.io [104.248.188.109]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id ef1ac626-0544-11ee-b232-6b7b168915f2; Wed, 07 Jun 2023 17:06:53 +0200 (CEST) Received: from authenticated-user (alpha.anastas.io [104.248.188.109]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by alpha.anastas.io (Postfix) with ESMTPSA id F3BA63F089; Wed, 7 Jun 2023 08:06:50 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: ef1ac626-0544-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=anastas.io; s=mail; t=1686150411; bh=l1qqAGFyMyk7B24/OER4BemZKz0tyFRaVZ+91zT92kg=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=YEYkaS+YpSJGJ3G6VP8YsIMlwG802JU0ekWnglk6ZzsiW3NGY0JM790pAPbCVItIs u9blG88k0ulXvy4+sv6/IPrCnsUrhdgvUG8AstC/RXWAbVyw/gw8eaAPMHi6a4jrEr nZ79GxAT3R+h9ZUmVopkNMrWVB5OL4CeipuGURURJ2s0eYEJZZjGBJvfhKWrcBak59 FLnE40UgT1KJ3w/ZrHMbrZYzBc+l0t0/Svq2NGlALasqkl0h+i6U5m9ddTiq7wrzFk 5X7bmi3aFLq4Zk6PrZOcSgrw7UgB+z1MkWA7aqvDseDrpVjCcc6+YeQRAttRd7s/yY nHfAfCSd+guFA== From: Shawn Anastasio To: xen-devel@lists.xenproject.org Cc: tpearson@raptorengineering.com, Shawn Anastasio , Andrew Cooper , George Dunlap , Jan Beulich , Julien Grall , Stefano Stabellini , Wei Liu , Shawn Anastasio Subject: [PATCH 3/3] maintainers: Add PPC64 maintainer Date: Wed, 7 Jun 2023 10:06:34 -0500 Message-Id: <2ec38b52d944919934b2326a1924200aa954008d.1686148363.git.shawn@anastas.io> In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Signed-off-by: Shawn Anastasio --- MAINTAINERS | 3 +++ 1 file changed, 3 insertions(+) diff --git a/MAINTAINERS b/MAINTAINERS index 1bb7a6a839..bcd36f9019 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -451,6 +451,9 @@ M: Wei Liu S: Supported T: git https://xenbits.xenproject.org/git-http/ovmf.git +PPC64 +M: Shawn Anastasio + POWER MANAGEMENT M: Jan Beulich S: Supported -- 2.30.2 From xen-devel-bounces@lists.xenproject.org Wed Jun 07 15:19:08 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 15:19:08 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544877.850952 (Exim 4.92) (envelope-from ) id 1q6uw5-0007FC-2b; Wed, 07 Jun 2023 15:18:57 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544877.850952; Wed, 07 Jun 2023 15:18:57 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6uw4-0007F5-Vk; Wed, 07 Jun 2023 15:18:56 +0000 Received: by outflank-mailman (input) for mailman id 544877; Wed, 07 Jun 2023 15:18:55 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6uw3-0007Ey-Ns for xen-devel@lists.xenproject.org; Wed, 07 Jun 2023 15:18:55 +0000 Received: from esa2.hc3370-68.iphmx.com (esa2.hc3370-68.iphmx.com [216.71.145.153]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 9bb7ce0c-0546-11ee-8611-37d641c3527e; Wed, 07 Jun 2023 17:18:53 +0200 (CEST) Received: from mail-dm6nam12lp2172.outbound.protection.outlook.com (HELO NAM12-DM6-obe.outbound.protection.outlook.com) ([104.47.59.172]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 07 Jun 2023 11:18:49 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by BY5PR03MB5282.namprd03.prod.outlook.com (2603:10b6:a03:22a::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Wed, 7 Jun 2023 15:18:46 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606%4]) with mapi id 15.20.6455.030; Wed, 7 Jun 2023 15:18:46 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 9bb7ce0c-0546-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686151133; h=message-id:date:subject:to:cc:references:from: in-reply-to:content-transfer-encoding:mime-version; bh=t0nE1vS+krqiPIVvb1gt/aSnRfsnoKW1opWOn5zZLTQ=; b=BBFgWNICLwZsxi7Hg6FMqrWgl19UCYpzMYDvLtirRCAgR7ZZMnfKq6MY dUYNkSG5ZoDf3ZZWhRPkx9nVhOTvCl0aJTchOZ+/GjuB6eDb4bKJ7My2q nvy6qRBrs9YhG8wSbsGVEotWGP/M/MPhnUVFrrKJrhQJw+tLVRwAgQ5MM 8=; X-IronPort-RemoteIP: 104.47.59.172 X-IronPort-MID: 111818116 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:ZK4BjK1MndBWCNvra/bD5Thwkn2cJEfYwER7XKvMYLTBsI5bpzRTn WAcCmvUb/+JZGOjftx1aYS/oRsBuZDWmNcyTFZupC1hF35El5HIVI+TRqvS04F+DeWYFR46s J9OAjXkBJppJpMJjk71atANlVEliefTAOK6ULWeUsxIbVcMYD87jh5+kPIOjIdtgNyoayuAo tq3qMDEULOf82cc3lk8teTb8HuDgNyo4GlD5gJmOqgR1LPjvyJ94Kw3dPnZw0TQGuG4LsbiL 87fwbew+H/u/htFIrtJRZ6iLyXm6paLVeS/oiI+t5qK23CulQRrukoPD9IOaF8/ttm8t4sZJ OOhF3CHYVxB0qXkwIzxWvTDes10FfUuFLTveRBTvSEPpqFvnrSFL/hGVSkL0YMkFulfIm5Oy f4kChk0QwmYpN2Eyavme/Vcr5F2RCXrFNt3VnBI6xj8VKxjbbWdBqLA6JlfwSs6gd1IEbDGf c0FZDFzbRPGJRpSJlMQD5F4l+Ct7pX9W2QA9BTJ+uxqsi6Kk1YZPLvFabI5fvSjQ8lPk1nej WXB52njWTkRNcCFyCrD+XWp7gPKtXqiAdJLROThqJaGhnW49mIuSzo7f2Cc/9rn0FOFV+1OC X4Lr39GQa8asRbDosPGdxi5q36NulgbQchdF8Uz7Q3Lwa3Riy6dG2MNCDBIbtcrsMsrbTUw0 xmCmNaBLSxitviZRGyQ8p+QrCiuIm4FIGkafygGQAAZpd75r+kbkR/OCN1jHaidh8fwXzr3x liipiUkm68ai8JN0qyh5E3GmBqlvJ2PRQkwji3IWkq14wU/Y5SqD7FE8nDe5PdEaYqcEF+Iu SFen9DEtb9US5aQiCaKXeMBWqmz4OqIOyHdhlgpGIQ98zOq+DioeoU4DCxCGXqF+/0sIVfBC HI/cysKjHOPFBNGtZNKXr8= IronPort-HdrOrdr: A9a23:EZRS4auMhom1jVd508W/ms8u7skDp9V00zEX/kB9WHVpm6uj5q KTdZUgpHzJYVMqMxsdcL+7VZVoPkmskqKdjbN8AV7AZmnbUQmTQr2KhLGKqwEIcBeeygcy78 hdmqFFebvNJEk/hcLopBO+CZIlzMOc+K6lwefSpk0dKD1CeuVp6xQ8EAGAVldrTxNNHpohCZ qb4Y5OvD3IQwVyUviG X-Talos-CUID: 9a23:UfKZ2W/J4pO+JWK7knyVv20bGvwnTl/09VrJOGyHO29wFYyJeXbFrQ== X-Talos-MUID: 9a23:SEBcfgvkY0yG5A10ls2nrwFsCYRPzo6VLx4uz88bgMW7JA5CJGLI X-IronPort-AV: E=Sophos;i="6.00,224,1681185600"; d="scan'208";a="111818116" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=MS5TRCBc2NR61pTafnRw7083D35LbXatbBRuzmGCAxQF/vDPSHZa4mQCJLZ1jESyDT2HAFgMRqVXDHpHBURnJih1duF5r2BvYhAJWVFVobJE1Ua/Ny2jDvOITntXyOWD9XmErGjn/m3Yxc6tX5fUSnAr9J2hmofiMvTvP9g4iYJ5dgf/BYkuPJmtaHAj7LKxTGwlaImLhv61/pPLUYlprGDMsIkMCE4bZBpoPkMhVr/XiDqXSNufyGTnqvAn5HXXZsHq2ie/1c++EXQIuGULcssdmDoJCzfydwBT7NFwbV4zr8NkgXclcY6HSDnINX5xXc2NfFf76tGkRArKVwrl1Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=t0nE1vS+krqiPIVvb1gt/aSnRfsnoKW1opWOn5zZLTQ=; b=YnRKdDQqqiIdw4SBqDhzthC1rLeDzj8jGcbrHrftUeTV7lg20TcYumhLSZE0GfrNaIoNJbb3IM7YWgtNXJBRj6NlM2bsACMReHDHi+IHhi5VuZ9lvMOoBiN26EwuGGXC3DM93EP4+etLp6YURLbmhj5jGZd1qKquBM6q7aEd2L2eNA5xLz2G58K8UvFvPvqW0cFODtE2ZsFWtMAHCYke4cRYkSOJjQqd3kUytxWCOe3qlNsC2VzSEijXizQ7sRaXK8c9WN0EVdFiJljK/P6uBvbeuP8k5BnSj2GA7oUjQTICNl5YOJ7fJl6YyQU2WOdZRhUXZ9j36aIdHhEukwVgRw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=t0nE1vS+krqiPIVvb1gt/aSnRfsnoKW1opWOn5zZLTQ=; b=v1O3erVyWfMHImplwyaRm0p+SEwksJU9o9QgvjBUPgFxyNyVaw/ug6km7uJccvugwkZFDcSwNM/2q4XfuuyYQ4xF51BKEn2gLsm0MvKlGtMpVePBKdDoHS2vWwnJ6xvDC9Tbeozo+Ef2y1sLHMycxbyqW/mx9Haan1vvDxHaRyM= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: Date: Wed, 7 Jun 2023 16:18:40 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH] docs: Fix xl.cfg documentation Content-Language: en-GB To: Michal Orzel , Luca Fancellu , xen-devel@lists.xenproject.org Cc: wei.chen@arm.com, bertrand.marquis@arm.com, Wei Liu , Anthony PERARD References: <20230607135419.3498902-1-luca.fancellu@arm.com> <6e15c9de-d8ec-2900-1fe3-5d743f5ae1d7@amd.com> From: Andrew Cooper In-Reply-To: <6e15c9de-d8ec-2900-1fe3-5d743f5ae1d7@amd.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: LO4P123CA0618.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:314::20) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|BY5PR03MB5282:EE_ X-MS-Office365-Filtering-Correlation-Id: 777c6c0c-257a-407d-053c-08db676a7cb4 X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: L4EhY/9LB8TjzWUpDxPnjDoT3W0PYQS0McPaYSBT1KMRJoGEFhL1T5WOwU7XgdlcmV9yMOd/OEbRDGhVEiqAwCrS03fGv19xzSsXr+tKg8yMN5oqXSW5dBg6tESyy88ohf64S5XSMWqLj75iVhaoqjIPeGpiazLss3l00RMeLOdymSwMWav7KimWiDI8SMRNnIafSF6tJ3BSraMQFNZmqAXjPoyouWFPvQagF7CzWDaHYq55zSMvNxk1FhO/VNFp/Oxh3q//nrkja+srYiFOsangXyVHcc0UkpN17Jxe9Sn6y9GwIeE0+az9UgxvQbBQykyXj/IZp6w+rq17mnm+9yyHoXS0M9kH1Pri3S5iEdk7bFp1zUuOhMEiT8WYj1CcJB0VAdydFxSv2xN7TCXPWjeouo7CNGqi6rSer/ThRNsE0hWh0JzC1ssZjahYFLKNeT3K9jnh2eg+UPbID2oAEyEfL+F5iS62lFo+INXGp74N0uG1VXWNa8gcMgR7g82tBC9dYKYB0oaatrRQLxqmd8byZ39LoIpyXrQu2FHNWZkfla0f8uIUFeHZj8vJBmrLxwtVy5L5lEnmGy84sLWReM1sJ0dI4oI5Twmi82gGKfT8ta0Acvd8vwVfuTf6LxWXJiq2wk3e5ncSpqzcV+EBog== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(396003)(346002)(136003)(376002)(39860400002)(366004)(451199021)(110136005)(478600001)(54906003)(8936002)(8676002)(82960400001)(41300700001)(316002)(66556008)(66946007)(66476007)(31696002)(38100700002)(5660300002)(4326008)(86362001)(36756003)(6666004)(4744005)(2906002)(6486002)(31686004)(26005)(6506007)(6512007)(53546011)(107886003)(186003)(2616005)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?SlhJcUlhaEhhWTZlRk5HdTFXdHdQMTBLRmNHTDd6cUxnbHBYbGc3UUxrall2?= =?utf-8?B?aC94ZndZQUNRL3NkVG4zSkFCZWkwd2xkcHpVTTJFcWh1ejRLOFhXN3VZZWo5?= =?utf-8?B?UkxqZVV2Z1lxcG5BVWNuMUlIU3M1NWFYaUo1eEtScExqYVFOYzhSZW1EOEdl?= =?utf-8?B?cHI5Zk1YYlJYdmRhUUxVZ2JucHI4SVV3ZXJJWVN6RDFtQUZoTmtSNXAzL1hq?= =?utf-8?B?VUtvdEd4NFJDOXZXZHFOZXpIZjVBWGN5anFYMXhiczZZQ2E1N3BDWGs2UXBI?= =?utf-8?B?MnNOU2V2Qnk3Zk5taTEwMGZSOHpFNVVZV1pPRlpTelk1VFBoYjlPZVY3bjcr?= =?utf-8?B?ZjAzeU44NG9EUGZXRzJ1VDFUSTlsSFZqSWVKcTF2ZmNJSW1HVUVrd1RoaE1x?= =?utf-8?B?elIwbWcvemxpbHJ6WGNQUVVEWnZCUEFQd3JSRzUrbEJJaWszVGo0cVpHYTNs?= =?utf-8?B?WmdqanlneTRyc1Nuci9sb1lrdm10UlBnQlR3b2F3ckNZS2V6dG04MWtTRno0?= =?utf-8?B?VHc0UHRCRVMrVHQvS2hud0xKa0c3a3ZWZ01YZy9GR1h4R3hWWWZPV1BUT3pS?= =?utf-8?B?SlppNTlqZ1JhQjBoQXNHb2RHRERhMnh4ZkRNOG1va0gxWXB6YS9JOGZDQlA2?= =?utf-8?B?ckdSQmhtYkkrcGM0QkZjYlhkZDFrK1RMVHJWNTd0RzVuNXBweDlhSjRoUW9o?= =?utf-8?B?Rm5ZK3pKRDV2NVpBd1FTUFBTV2hvVldQRHpTeU5uSUhZVFR6UTg0eEZ0aVFJ?= =?utf-8?B?d2pwdzlZS21oVkphSUtWSkpMWWFGZXZUdGhrSFdSMGViUFV2M2JBam1wK2Ry?= =?utf-8?B?SzFyUUQ2czJKWkFWQ2NDd3RXTTJsSlRsRTBMWWxKVTlXcThSRVhqdmhleDdQ?= =?utf-8?B?R2RtRENLd0tYTFBJNGNaRVUxZGlBSE9Zdmh5TDhyUWQ0aGdTWHUyUDNvNFRm?= =?utf-8?B?M3BJdnRmRm82QnprSmdxUnEySU9wZ3lzY2E1bzR4eGNyN1FJSU9hZHdMVFph?= =?utf-8?B?NE9DTkd0SlpZTkRlSnNXVGVhWXpmWUFxUFZEeTRheUNJUHY4UHZpb3FNQ2dN?= =?utf-8?B?bHlybWlvaXNhZVBlMTVrRmVkT3NITk0rUG8zYlN2eURaeXljYys1NjM4em94?= =?utf-8?B?L0FVMC95VFRpQllDZVBHR0Z6VkZmYUdvd2Y4Ulk4Z0ZEcG8xVHJrbEVXOWor?= =?utf-8?B?SnBDNkZEckZqYnE1SmgwN3o5dXNPSUY2ejNwdEUvdU5WS2FzUkNLbkMrRWMw?= =?utf-8?B?NVRpckN0cHQ5NElvbnZmM2R2NmU1TUdqOVMrd1ZmRW5HVzg4WHRFSlI2TjQ3?= =?utf-8?B?R1ltWElNenJaK3QzWFpCSUtLMDN3T2Y2R1FuaWNYMTROeGNhVE1WQjZWVFlD?= =?utf-8?B?TDJ6MDRhNXVmTmhyRWVxVUNNSGs3VlpMTzVSYVJ1VUhFdjdlSXVLRy81T2Q2?= =?utf-8?B?aGE5cGF6a1lnZ0NoaGY3TXhMNlVBSGt2bzZ2VUlkWDhBUTRMTms0S2g4dk1k?= =?utf-8?B?R2hqZWhHdDEyNHl5UFgzZk1PYmlSa3RLQ1dxS1pVQmZZenRxbEhwcU1UZ2hE?= =?utf-8?B?Qi9oQkthWjB6YjVEUW1TNkFWd2xvWFcxQktIQXdxU2lIaTN2aWZNS0lmakJp?= =?utf-8?B?eklXVU5vSk52NHRLaWRRZUlhVy8zeWVTTmV0SmVDWGpGcEM1K0Y3aGMyYnVS?= =?utf-8?B?d0ROeVFHUm9YamUyY0ZsU1RRRXZ1cU9lenpNaEVQc21nTW5scUxYWWhQL0I3?= =?utf-8?B?QXFUcjNFUW9BbmNZTngrVWdlVXd5aEc1SjBYeWY5eE15QWhlVTZraGwyRkNQ?= =?utf-8?B?L01BdHduaGdmWjJlSjFRK2JoMTVUcWFGMUlVOGxyckFYcEZycFdqTmE4STJF?= =?utf-8?B?RURrMmVaY1RmUCtMc2RjTTNwS0c2YWI1T3NQQ2FMRDNHNzBKbHg4ZGVPZGRH?= =?utf-8?B?SGNnSXVoeUlZSjRNanRlMURKbVJyY3RDeWZVNm91RXBuclVvakZUaEZnM0Yr?= =?utf-8?B?U0pXTDEvWVBWdEo4dHVpczErMGRXVnFaMXJXeW5RL2hHb2gwSW0xaVRScGZv?= =?utf-8?B?REJRVE9OVnVTYVpWK2FvN1ZNbDFlVWgzQkpxUm9jZmdENzFQSS9lenVZbDZP?= =?utf-8?B?SnBvYTF5eWNVUlQ2czlnVlUzMXJjVHdzd1JaRFVQVTNBeTJxc2EzZHBscERD?= =?utf-8?B?S2c9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: Ho7T+Bv2OWfByNK+MQHP+tsf9SRKcFWaddzM5R/q+5VcrDk1mzT2ga052yw+7D1wzlbtbkP66/DhLAcHNmBB3S4PUrBh84Pu0assq1DfDybEl+BD5n4DzZpHQcVSOoHbts2HVSJ+OswCTvCADqrfgdTobl/yMxjT7JETFboAOjy8zvmkVWZxuxNrlYxuvQGMt7whBjQgy6+Z1i9ZOOLBIiBinriLE1WNLKqIRQqRkB9Yb9rVGmKBm3xnS9piK30ryMSbCmWxpONMYUmjsBWCps2l1CJdRf2iy5IbD0KQoi0Mb+EYGlLjxYVfIHJPpzFHm6IkkcgVeL/1eDquyIAGR7iOUHyWHvgNBj40SJuQkS5Dr02BSHy+M6Ocp0PBnuSjvJ0QD+kzqtRa5pkP+8HXSs8Cjq9V35SlfXyOIRt9XHApxMl3By4b8wtiuAjP7ZLkyMdMP80n9aW0iTTuWK6SLlXwclbCKGDaLzHhH5AWZ/9vt8/VG/sxqnsSX3mUPzgaSeJRT9DjJ+1v6UFiWaCZBMjErML6WMbqEsWmsvPjz3bNzhH4i+Odt4JRb58cWUC34FxO3NBMVIX6/Tusa9YrrIX5Nj+HcMqtvxqIAr8fp63Bs/S5SgLlk2btOam3xl+2cWXburCNfdt94qPY1ei4ZarKjs2AYHGkzMWgxXXxX8OL8PKlhS9PFJgUmDg8c5+is1o8XbEw2wQTsWWYKny+nFlLotKCQratJ0uCwadKCblSc7y1VF4lk9YBJ8NlWJY7ZCmEAs5vQGgpRddxmeuDRncVTpAuQ5ZdVGzeVXYugMfGgamplJtkCpsmsGlv9AlzAwK1Y8bt3wikyiIY7HGvZQ== X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 777c6c0c-257a-407d-053c-08db676a7cb4 X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Jun 2023 15:18:46.2839 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: WBGr8Tx+5q01KZASooCQzDpSWdMmw+ZE5jjT4McM3K7QX0gFnBxklHbQrmlxXgK8H80b3j1+McNzCTE7Ourn1DQgAU1S2vUheudhJTm/YV8= X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY5PR03MB5282 On 07/06/2023 2:59 pm, Michal Orzel wrote: > On 07/06/2023 15:54, Luca Fancellu wrote: >> >> A recent change to the documentation for the xl.cfg introduced a build >> error, fix the issue. >> >> Fixes: b46e8207d0ae ("xen/tools: add sve parameter in XL configuration") >> Signed-off-by: Luca Fancellu > Tested and looks good. > > Reviewed-by: Michal Orzel > Tested-by: Michal Orzel Committed, thanks. ~Andrew From xen-devel-bounces@lists.xenproject.org Wed Jun 07 15:49:10 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 15:49:10 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544887.850975 (Exim 4.92) (envelope-from ) id 1q6vPD-0002Hd-J5; Wed, 07 Jun 2023 15:49:03 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544887.850975; Wed, 07 Jun 2023 15:49:03 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6vPD-0002HW-G2; Wed, 07 Jun 2023 15:49:03 +0000 Received: by outflank-mailman (input) for mailman id 544887; Wed, 07 Jun 2023 15:49:01 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6vPB-0002HQ-Fb for xen-devel@lists.xenproject.org; Wed, 07 Jun 2023 15:49:01 +0000 Received: from esa6.hc3370-68.iphmx.com (esa6.hc3370-68.iphmx.com [216.71.155.175]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id cffff296-054a-11ee-b232-6b7b168915f2; Wed, 07 Jun 2023 17:48:59 +0200 (CEST) Received: from mail-co1nam11lp2172.outbound.protection.outlook.com (HELO NAM11-CO1-obe.outbound.protection.outlook.com) ([104.47.56.172]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 07 Jun 2023 11:48:50 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by DM6PR03MB5321.namprd03.prod.outlook.com (2603:10b6:5:22a::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Wed, 7 Jun 2023 15:48:48 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606%4]) with mapi id 15.20.6455.030; Wed, 7 Jun 2023 15:48:48 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: cffff296-054a-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686152938; h=message-id:date:from:subject:to:cc:references: in-reply-to:content-transfer-encoding:mime-version; bh=qZoO84QhpTSPnGhVHYEKFRHg0aN2tknsrJ1yoY15YAI=; b=QHwAbR/F18mZuZ3GTdJXwta0ebQaRY1ZLQtJn3uoZ7HxfIiUdq2+0tcN h8U/Gaou3gcWJAjMcbPpHcBnZa+QxcThnJzTmLCyB3IWCtY0Vz/gOsBSE D9ou2gRw7nJq5c0qLKZdyOXBrqvg685rTkh2dg9COfmNUROxjU5qeoMPr 4=; X-IronPort-RemoteIP: 104.47.56.172 X-IronPort-MID: 111261598 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:22auzKCHAP6gIxVW/wTiw5YqxClBgxIJ4kV8jS/XYbTApDsi1D1Ux mJKWmCCPfeJajP0eI9za4u1p0IC7MWDy9FhQQY4rX1jcSlH+JHPbTi7wuUcHAvJd5GeExg3h yk6QoOdRCzhZiaE/n9BCpC48T8nk/nOHuGmYAL9EngZbRd+Tys8gg5Ulec8g4p56fC0GArIs t7pyyHlEAbNNwVcbCRMs8pvlDs15K6p4G1A4QRkDRx2lAS2e0c9Xcp3yZ6ZdxMUcqEMdsamS uDKyq2O/2+x13/B3fv8z94X2mVTKlLjFVDmZkh+AsBOsTAbzsAG6Y4pNeJ0VKtio27hc+ada jl6ncfYpQ8BZsUgkQmGOvVSO3kW0aZuoNcrLZUj2CA6IoKvn3bEmp1T4E8K0YIw3uVmA3pe8 eEkJiEIVE6Pq8/q/bnkc7w57igjBJGD0II3nFhFlGicJtF/BJfJTuPN+MNS2yo2ioZWB/HCa sEFaD1pKhPdfxlIPVRRA5U79AuqriCnL3sE9xTI++xuvDK7IA9ZidABNPL8fNCQSNoTtUGfv m/cpEzyAw0ANczZwj2Amp6prraWxHmlAd9DRNVU8NZBuAWY3kkWEiEaFkuQ++uVqFe0AtRQf hl8Fi0G6PJaGFaQZsnwWVi0rWCJujYYWsFMCKsq5QeV0K3W7g2FQG8eQVZpatYrqcs3TjwCz UKSkpXiAjkHmKKRYWKQ8PGTtzzaBMQOBWoLZCtBRgxc5dDm+dg3lkiWEYwlF7OphNroHz222 yqNsCU1m7QUi4gMyrm/+lfExTmro/AlUzII2+keZUr9hisRWWJvT9bABYTzhRqYELukcw== IronPort-HdrOrdr: A9a23:8VQ9Walg9m5vTV0GNS3Lhcks4FbpDfM4iWdD5ihNYBxZY6Wkfp +V/MjzhCWUtN9OYh8dcIi7SdS9qXO1z+8T3WBjB8bfYOCGghrlEGgG1+HfKlLbalbDH4JmpM JdmstFeZLN5DpB/LzHCWCDer5KrbXpgcPY59s2pE0dKz2CHpsQlzuRfTzra3GeKjM2YaYRJd 653I5qtjCgcXMYYoCQHX8eRdXOoNXNidbPfQMGLwRP0njOsRqYrJrBVzSI1BYXVD1ChZ0493 LergD/7qK/99mm1x7n0XPJ5Zg+oqqg9jIDPr3OtiEmEESotu+aXvUkZ1REhkFznAib0idprD ALmWZnAy080QKJQoj/m2qT5+Cp6kdR15al8y7XvVLT5fXjQjQ0EsxAgp8cXCf4xiMbzYpB+Z MO5nmesZVPCxPGgWDa3PjnEz9Xtmfcmwt7rQY050YvDLf2rIUh97A37QdbFowNEzn9751iGO 5yDNvE7PITal+CaWvF11Mfi+BE8U5Daytub3Jy8/B96QIm1ExR3g8d3ogSj30A/JUyR91N4P nFKL1hkPVLQtUNZaxwCe8dSY/vY1a9DC7kISaXOxDqBasHM3XCp9r+56g0/vijfNgNwIEpkJ rMXVtEvSo5el7oC8eJwJpXmyq9ClmVTHDo0IVT9pJ5srrzSP7iNjCCUkknl4+6r/AWEqTgKo COEYMTB+WmIXrlGI5P0QG7UZFWJX4SWNZQoNohW16V5sLNMJDjsebWNPbfTYCdYQrMmlmPdU frcAKDVvmotHrbK0MQqCKhKE/Fawjg4Iw1HK3WltJjvLQwCg== X-Talos-CUID: =?us-ascii?q?9a23=3A1wPJsGtmgHw2Q/TB2tFRnlDX6IsBcWzf12fUPnO?= =?us-ascii?q?2GGNTFrG5ZAOt8/xdxp8=3D?= X-Talos-MUID: 9a23:TiDmnQaqKuKXN+BTnAe0jylHMd1U7+e+IxofvbcfsZCCOnkl X-IronPort-AV: E=Sophos;i="6.00,224,1681185600"; d="scan'208";a="111261598" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Mu/R4EnV2IodtKaDGeS3eYZwgBX+ndAnrXrvw0f7RVR5e6xdI3O7PrMT8AEaIOwzFEvDJTJbHaIxOGZgsUhVsF1V3quO7/Z5iPVibU4H+PkJm8Dfv4m2RskWcoLCs4WpZnik5vYXZQa/jEasZudlWqlXqTwTojwrQU+TvUj6qYUOOBjIC+chqvuHJYF+u9XqeyFDY04EuN5Ff/fs1Y2vTkZTwoGFqz/SKbU4k9xHPYoxyH9Jiw6KeatYso77rbm3WYnwnMmYPgetpviFQNZknZwJpXFOdi65pPtIY8hUCl1qxKPR9nAVcuSdTIdEq8PjSmlTJqVT0xFngHtcmaczSg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=GtwyNaqKcRRK4Ez0+YYUwPrhpl8Qdy0sMv26mhKpbDg=; b=SvqdsKBeiJGRtgHhFFX1SiDd0rxmBBhF4iDm6rv11l6J1sgWbuC6dYQCx574lztuHCyzg6oIwb7oG0y79k54Xu9ptZMX1FyTZpJr2mXX7TVJoY4/YzCekVi5JdPw+grn7f3OP2alPco+XvWYyBgFG2NzQljmFAK7KG17CT+94o75KtDnhoeyDkAiNMq1hbTsX9s/NlDYbe2xEQcBcOvpB6w8YZfmJmlhzq2wb3xzvXGHlNu3CohhANavaBOG63h/DpQUfbS6B8g00YKOqZxHzeC4gwMFRnCzuchFH5XuU1DnFvqbPOhj0wYcisZ5yvA01KqP0Of97uzRyFIiR7554Q== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=GtwyNaqKcRRK4Ez0+YYUwPrhpl8Qdy0sMv26mhKpbDg=; b=L0WVleM/lpKu0yhgLFNbDmKDPkidU9OIZjIt8yxq6ZIg07GYv4doVRFJjZ5oF1Kn7hu4GFn/jkeaQ5TcjTLv35WQW5U/Norx/X0YBHyfupRv3pVJ97YWnQchWEc5aGYcmNWyrlm0HtVq0+oFF/1roOp7wpwNoxFH5wDodubq+6w= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: <728efea9-2d30-fa55-473f-df3a18742ace@citrix.com> Date: Wed, 7 Jun 2023 16:48:42 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 From: Andrew Cooper Subject: Re: [PATCH] x86/hvm: print valid CR4 bits in case of error Content-Language: en-GB To: Roger Pau Monne , xen-devel@lists.xenproject.org Cc: Jan Beulich , Wei Liu References: <20230607134638.53070-1-roger.pau@citrix.com> In-Reply-To: <20230607134638.53070-1-roger.pau@citrix.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO4P123CA0496.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:1ab::15) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|DM6PR03MB5321:EE_ X-MS-Office365-Filtering-Correlation-Id: c1e952ab-6ca2-4dcd-575c-08db676eaef6 X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: ErM4cz9fsLYzgBZQX3e5iiv2C0bhczCglzv0WHKG68w0rS3tng8yt7aoCzxp7cvPf3+iGOV1mzZK6xf4KnWYvKyhVGfU+nQuEzTrGsDmOJkQH9eFUgPfSYbkBvCbhTs6GoC+eKa2wDP4yMmaHKyS4eLssHaO61aQI0YRLT/QM0sWnzW/W3W9qJts7VxlSaV4uPyQfb9oulh25u2smDPlTqPI29gZb4DiliPHCceaSBN2PqN5WRI5AjGKWlmUxxsVlC4RU9dl63GOm9b1UQryBaCINx1njEbFox1A/kwhW/PLkQpzZwLLbSQow6iwwCOfv4SG5FmYGznDIJJK1kR7PzRHGDTJ676+74Nz7bvb6vVKHQaF7xU1gJlSGtmaGaM00oWThSCmsXPeomD55JG0SF2tHGxIWCvJQgsjpDLly/MDVyMw0mLUB87Ww7T88uYAwC+Rol6+C2J67lCwb5Ij1sjyF4tZ6bb7AUdqUPKQcQtTIHzolVfXkAaq8jDHyi+5tz3VVKdZR0/YasqL1lSMxaPvtDMF+RX7yqegkxKBNI3xMxKNNEsF+zzZO8z5dukVWKsAYc0OjET1CN8LioMTL1fvel1ODeJhcwP5D+CiJEe6Y66ZDTmRvyJdAhl48GUIQTtcHT+2mtE3uiq6S+sbGA== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(376002)(366004)(396003)(39860400002)(136003)(346002)(451199021)(86362001)(83380400001)(478600001)(8936002)(8676002)(316002)(41300700001)(54906003)(66476007)(66946007)(66556008)(38100700002)(5660300002)(4326008)(31696002)(6486002)(82960400001)(6666004)(36756003)(2906002)(6512007)(26005)(186003)(6506007)(31686004)(53546011)(2616005)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?VUdsVXFTQWxmYk1PejIvZG5tTncvY0xMQ0JhVHZYSWlPRnNmbkNieHpYQ3pW?= =?utf-8?B?S3NCajRHYmtpNmR3Z3U4N3FUbU1RRlNlQ2UxTlhCTm9aZmZ2MVh3c1NOSWVK?= =?utf-8?B?elQxZzFDYnMvdjRMVDdkZ0JNYTJsMG5YOVlvaDdRNUxDNmUrY25zUDd6TWha?= =?utf-8?B?dUhtWHFwSm5JbzJhSE55VTk5SlRjdzlnSXNQc2tqdVVidSszYUYvdm5IZlBR?= =?utf-8?B?QmtsRXZ2d1Fna2prRUFzYnRCMkNwWkttWXpVL2k0K2k0dFB2eDhNOEJmcGlv?= =?utf-8?B?UWNJbk1VNVRNMUNGdDhLVFNRK3Yzd01Qd1I5alBFNS93K3lZNlFQU3hXd0Vt?= =?utf-8?B?VWhYclFZT3h0S0JNc0g5Q1hmOVR1a2toK2lwa2hRL0p4NFd3T053aDM5Q3Z3?= =?utf-8?B?clhsK2orV1FxMnVqTU1iUVc2d21XTThQZytQVmFBWFNFTFhtYTBSd3BJbUpB?= =?utf-8?B?clRySGVUcXBUSDZkNXo3elBEbFBBeVplUS9Qa2wzVXZ6SlB6empiUWN0WGln?= =?utf-8?B?ek40S3Y4T2hGYW5QWloycFlhK1lIZzg4aklsc1pFaG9IdnYyeXYvRktYcVo2?= =?utf-8?B?RGhTWHk2ZHk5MnFjYjBudzFkT2I0ZjlGRyt4cGpleGRDdVZ1cjNJaU90RE1r?= =?utf-8?B?YXV4eHVPMVhab2tWcmxVb2xWUVdoTzUvYWlqaGJyeWJVVjJNdE00b1IvSVhu?= =?utf-8?B?SVI4UGIxOU1zazIyZlNZMFRYUFJrWWNBZG9JUE9FQXY1dFRXTmFMMGpBcFVV?= =?utf-8?B?dWs2c0pXOC94eDhyZ3poL0hYV01LYXJvM2poQ1l6bkhGU2NDVVpRc1hvcnBB?= =?utf-8?B?a01KTmZOc2I1aUsrY1FIQ2RQRDlUT1h1dHlRSjhGUSsvWjZhOGlKTG9LZ0wv?= =?utf-8?B?dlV0RUIwcm1iNENXVldEUUpTcmtyaC9mYWswT0VZYnN0RUd1VDBEYVRaS09M?= =?utf-8?B?RnJCb0FySHQzaHlLV3p4TzhFT2d4LytsQlh3WlYyMTNtb25TM081S04ydzJT?= =?utf-8?B?TXZ2U0ZDeHhCQjdJTXh2aVEreHpWbm00VGlxbzdRc3dpNHVzTElnN3kvUSs2?= =?utf-8?B?Z3JNUFozdjVwNmpwUlhBbjlRMjVZbTBzeTBrcWVJNmlqU2tmcjR3bzVQUFVi?= =?utf-8?B?L1RiSUFhSkJndkRibUMyTC9hODRpSEVpYlhnV0IzWU9sN09pMEI5OXBkMHNu?= =?utf-8?B?Mk9TS1hMQ09zQllLdmF5Q2ZRN2oybXJjaEZLSEYxc3RUQTRRbVpGV2dzMjRt?= =?utf-8?B?ZHorK3piQTFSUDc4aW1tQklIV0dRV0tianhrYU1EYnRabSsyeHhTSjZOK2hM?= =?utf-8?B?N0xRWitMZ3pNNllKSi9UWTlPR0dUYzNTQ2Z2ZGp3ZHY1MXI2VjZ4bitiTHdH?= =?utf-8?B?dWxJV1o2U3lXaFg0MHMrdzVRZ0xQWXdTTzdvd290NHphbENqa1AzUm92MGs4?= =?utf-8?B?Y1J6Nmo0OEZMTHkyNzNwbWFaNFBHb2R3Sk9nS3JFOG5hejU0T2FpSklvR3Fx?= =?utf-8?B?dnRKTUMreFVXYlpOSVdVYXByME9jWHphWmhKeThjMXhnS2FnYzdxNyszUmhI?= =?utf-8?B?clVMTGlWRk9MQUJta1VZOVpoL0dicC95cXFwNzJKZU95Y21tZHBrQ0ZwS1gr?= =?utf-8?B?SURaS1V2RHVFajBZak9HNkY1bS9kZnNaMzhjdnpjMXVhOTRSRk1IU0JMYysx?= =?utf-8?B?Z0k3OW0yNHVTUklsNmVGSDlLbXk4aXh1SlhZVVBMQTdhS0w5elloT285bUQz?= =?utf-8?B?cFk5ZEJZbTlJMzVRUnJ6bkY1K1pZaFJya3FNNXRVMHpWNFhhc0xWRUVYRU85?= =?utf-8?B?STgvaElrR2dNYUZuVEZGeThyTmxZOC80NzZlU2dkcXhHNEhuTDUzYmluZ3Bz?= =?utf-8?B?cENoTDBYYjc4d0JBWEtJNm80SW1laWc2SVJ5aENJOVh0b1VUMXpJSU1OTFVa?= =?utf-8?B?aVVpb1lGdEMzOUxOTWdHOURlRGVqU3RDOFlONDJLSDFVSHZTWmlWd2dybzJO?= =?utf-8?B?dHcxV2JnS2k2Smw4aEFFWE5JR2ZTak55WWY3VVV3MDE1anNvaXN1UGdQUFFo?= =?utf-8?B?bkNFM0VYWVpTM1VrT01vUXhRa2VQMURhVDhZdHVCUm9YREdGaCtuTGFvcUZl?= =?utf-8?B?OG1CcDk4NzV3MmoxMEgyUzZXcy9Qd2FvUSs2Z1ZhUDhsVmc2elBReTlUTUMx?= =?utf-8?B?ZXc9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: JGj6JRNs5wpak6iAu+k+dxMqWfWkSuSf5sffW5vH8cn+v4YShoe8ZMVrp0qzdbs0bgWQ8jvH5+eT/tmPEkejRCXjCeDbyTZYf5IYitsoUld2Jy5u9YvaP1P0sTFrk6/bOaJVigWhEeFfnUniSwDvGkh7xyLKnkRIW87UsnSj09V4wFOczeGnOgmXKNT5Ky1Z5NeHNvpfSuf3XvQu67Whl7Ad1l4JRvVRj0lsjBuxn3TfW2ueLozsPdTIv88IXaOEt6ierEJOd6ckgNSGNgsm+WWumTm6uNoPjcxxB9aD5oENw00Ssh4JOHrCCHLy4bJzoeJfry/36jOCsMQH7SjdLeRJB7oYdtF84DNtTcUM+9h95LXmoNCK0ZJkEiEGkDpv6O74za51rPMmZPTXw2bj3CrHbuHiWHNwcFskM9DsYLNmZMgoSL+Cdm08jWravOz/49Q1cx2MHz5u2spu/+uV9xSyvJE/g07mFpxPrDpUBO64Cg5nN4N92tFgrxBGOMjj0fxWcIPUqbzbeWe/1NnsJGVQ4/FVzF+QlPFGl29ZjxH0l13tTKs2aK8O9KY/GAg+9zwklhS4VnvXCjzsiB/wuXG6zeEH4gj0/5YdQvdGf7fEA79kBQaUYUMFEnM3Msv6LSvepVBN0NqUpAhUNMK74DVJ6/s9Oa6INoB26REr50Za/UYvyBcsoWGOGAbacBg3drabTrJ4OLNpntG0dhyDpjNY1lqddSQbU3dqA6MkqdU/STQpVjgagH9QzXpP9CLpazGomL3LX4nOptr/OcSULRzHlgJ9Gi4io1nzPnIqefDRwq1J6Pq5kroUS2gBehm+ X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: c1e952ab-6ca2-4dcd-575c-08db676eaef6 X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Jun 2023 15:48:48.5166 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: lzsN9QNtRiD4F2qlplrAznnbXkgGCTpIiUertYY0XnoyB9ULJKv06PLSwNpj4X2xPJfOV1cnUEgihdT4gSmIPZNPImXcHyoch/BXC8Ze10w= X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR03MB5321 On 07/06/2023 2:46 pm, Roger Pau Monne wrote: > Some of the current users of hvm_cr4_guest_valid_bits() to check > whether a CR4 value is correct don't print the valid mask, and thus > the resulting error messages are not as helpful as they could be. > > Amend callers to always print the value of hvm_cr4_guest_valid_bits(), > and take the opportunity of also adjusting all the users to use the > same print formatter. > > No functional change intended. > > Signed-off-by: Roger Pau Monné > --- > xen/arch/x86/hvm/domain.c | 4 ++-- > xen/arch/x86/hvm/hvm.c | 8 ++++---- > xen/arch/x86/hvm/svm/svmdebug.c | 2 +- > 3 files changed, 7 insertions(+), 7 deletions(-) > > diff --git a/xen/arch/x86/hvm/domain.c b/xen/arch/x86/hvm/domain.c > index deec74fdb4f5..8951230a9f52 100644 > --- a/xen/arch/x86/hvm/domain.c > +++ b/xen/arch/x86/hvm/domain.c > @@ -266,8 +266,8 @@ int arch_set_info_hvm_guest(struct vcpu *v, const vcpu_hvm_context_t *ctx) > > if ( v->arch.hvm.guest_cr[4] & ~hvm_cr4_guest_valid_bits(d) ) > { > - gprintk(XENLOG_ERR, "Bad CR4 value: %#016lx\n", > - v->arch.hvm.guest_cr[4]); > + gprintk(XENLOG_ERR, "Bad CR4 value: %#016lx (valid: %016lx)\n", > + v->arch.hvm.guest_cr[4], hvm_cr4_guest_valid_bits(d)); I suspect you want to call this once and store it in a variable. It's a non-inline function which also isn't marked attr_const, so it will get called twice. Also, if you're extending like this, then you actually want (valid %lx, rejected %lx) passing in cr4 ^ valid for rejected.  It's almost always 1 bit which is rejected at a time, and the xor form is easier to read, not least because it matches the X86_CR4_blah constant of the bad feature. ~Andrew From xen-devel-bounces@lists.xenproject.org Wed Jun 07 16:00:48 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 16:00:48 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544892.850985 (Exim 4.92) (envelope-from ) id 1q6vaU-0005BX-KR; Wed, 07 Jun 2023 16:00:42 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544892.850985; Wed, 07 Jun 2023 16:00:42 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6vaU-0005BQ-He; Wed, 07 Jun 2023 16:00:42 +0000 Received: by outflank-mailman (input) for mailman id 544892; Wed, 07 Jun 2023 16:00:41 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6vaT-0005BK-Ep for xen-devel@lists.xenproject.org; Wed, 07 Jun 2023 16:00:41 +0000 Received: from out5-smtp.messagingengine.com (out5-smtp.messagingengine.com [66.111.4.29]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 712d2f46-054c-11ee-8611-37d641c3527e; Wed, 07 Jun 2023 18:00:38 +0200 (CEST) Received: from compute6.internal (compute6.nyi.internal [10.202.2.47]) by mailout.nyi.internal (Postfix) with ESMTP id 869505C0135; Wed, 7 Jun 2023 12:00:36 -0400 (EDT) Received: from mailfrontend2 ([10.202.2.163]) by compute6.internal (MEProxy); Wed, 07 Jun 2023 12:00:36 -0400 Received: by mail.messagingengine.com (Postfix) with ESMTPA; Wed, 7 Jun 2023 12:00:35 -0400 (EDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 712d2f46-054c-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= invisiblethingslab.com; h=cc:cc:content-type:content-type:date :date:from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:sender:subject:subject:to:to; s=fm1; t= 1686153636; x=1686240036; bh=5028jVPHP9PdFYdLuVCSXCH9vrAc5KtFszG WksMpGUc=; b=C1cAy4eG464IqwFzu5xeP8gAE0QO3dLhTabsmagrE6+5R6TBxmH pvqIWi2MhW7XF++PVFirKmt/IhrFVF9S4TlHsMzlUbCfYF9odjPncT8XMrzJosos kPB0xE/usXX0McDFIiZUqyZ7fKbpxkvofxzL4XBtKGAO9fYDVczXLbBHhy4LuCjk EuRo9k9bs1b4Q/LufMkRTlvH6+agpSy+sBSlG1Oqxhaf17gJR8Xy87qMkxpecZSD BXSK2SDOOZmSi0H/BVWOX4TlJaywLxpCysr+/V8LCGmaJ3INEaYiGf5k6z8uhUDC cSkvagZov6MfRIgGYo+ic5Pv5TdHMImHh5w== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-type:content-type:date:date :feedback-id:feedback-id:from:from:in-reply-to:in-reply-to :message-id:mime-version:references:reply-to:sender:subject :subject:to:to:x-me-proxy:x-me-proxy:x-me-sender:x-me-sender :x-sasl-enc; s=fm1; t=1686153636; x=1686240036; bh=5028jVPHP9PdF YdLuVCSXCH9vrAc5KtFszGWksMpGUc=; b=vHwfFTGT/5ssYIxdP7wETLuuxk6eC ARgxzVUapDh+HCKJJ8iHh24XSq02KTaPS6M0Wt9XlqjMnO59fEC0q+Myz3byIQ+r 4eH+at1xsN5LoszpsLl4kMETWuXanw/kSXECpBBmoe2fFdFqqDccXU4Qc/ulqjxr /UfuPuhs66RaE8mbOYgAkPq17kIAw2UbmlfFlJvqptPtot5Vk6cELU1U8T2iU/m2 WzMqVGJgdxCYjhiK6Ug/dB1dJelA/OiMIF6wxslWBXtkTvyRNfLF+FCZH9yVY1FV Bpi/5dcOovMKPvtCy+Bs8MqZGv3pamgiWbyisiytKLVkgKCK3rZmDumgA== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvhedrgedtgedgleehucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne cujfgurhepfffhvfevuffkfhggtggujgesghdtreertddtvdenucfhrhhomhepffgvmhhi ucforghrihgvucfqsggvnhhouhhruceouggvmhhisehinhhvihhsihgslhgvthhhihhngh hslhgrsgdrtghomheqnecuggftrfgrthhtvghrnhepudeileefueetvdelheeuteffjeeg jeegffekleevueelueekjeejudffteejkeetnecuvehluhhsthgvrhfuihiivgeptdenuc frrghrrghmpehmrghilhhfrhhomhepuggvmhhisehinhhvihhsihgslhgvthhhihhnghhs lhgrsgdrtghomh X-ME-Proxy: Feedback-ID: iac594737:Fastmail Date: Wed, 7 Jun 2023 12:00:29 -0400 From: Demi Marie Obenour To: Christoph Hellwig Cc: Roger Pau =?utf-8?B?TW9ubsOp?= , Jens Axboe , Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= , xen-devel@lists.xenproject.org, linux-block@vger.kernel.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH 1/2] xen-blkback: Implement diskseq checks Message-ID: References: <20230601214823.1701-1-demi@invisiblethingslab.com> <20230601214823.1701-2-demi@invisiblethingslab.com> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha512; protocol="application/pgp-signature"; boundary="CTS34Y4jd0AZd9RG" Content-Disposition: inline In-Reply-To: --CTS34Y4jd0AZd9RG Content-Type: text/plain; protected-headers=v1; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Date: Wed, 7 Jun 2023 12:00:29 -0400 From: Demi Marie Obenour To: Christoph Hellwig Cc: Roger Pau =?utf-8?B?TW9ubsOp?= , Jens Axboe , Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= , xen-devel@lists.xenproject.org, linux-block@vger.kernel.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH 1/2] xen-blkback: Implement diskseq checks On Wed, Jun 07, 2023 at 12:44:22AM -0700, Christoph Hellwig wrote: > On Thu, Jun 01, 2023 at 05:48:22PM -0400, Demi Marie Obenour wrote: > > + if (diskseq) { > > + struct gendisk *disk =3D bdev->bd_disk; > > + > > + if (unlikely(disk =3D=3D NULL)) { > > + pr_err("%s: device %08x has no gendisk\n", > > + __func__, vbd->pdevice); > > + xen_vbd_free(vbd); > > + return -EFAULT; > > + } >=20 > bdev->bd_disk is never NULL. Fixed in v3. > > + diskseq_str =3D xenbus_read(XBT_NIL, dev->nodename, "diskseq", &disks= eq_len); >=20 > Please avoid the overly long line. Fixed in v3. > > + if (IS_ERR(diskseq_str)) { > > + int err =3D PTR_ERR(diskseq_str); > > + diskseq_str =3D NULL; > > + > > + /* > > + * If this does not exist, it means legacy userspace that does not >=20 > .. even more so in comments. Fixed in v3. > > + * support diskseq. > > + */ > > + if (unlikely(!XENBUS_EXIST_ERR(err))) { > > + xenbus_dev_fatal(dev, err, "reading diskseq"); > > + return; > > + } > > + diskseq =3D 0; > > + } else if (diskseq_len <=3D 0) { > > + xenbus_dev_fatal(dev, -EFAULT, "diskseq must not be empty"); > > + goto fail; > > + } else if (diskseq_len > 16) { >=20 > No need for a else after a return. Fixed in v3. > > + xenbus_dev_fatal(dev, -ERANGE, "diskseq too long: got %d but limit i= s 16", > > + diskseq_len); > > + goto fail; > > + } else if (diskseq_str[0] =3D=3D '0') { > > + xenbus_dev_fatal(dev, -ERANGE, "diskseq must not start with '0'"); > > + goto fail; > > + } else { > > + char *diskseq_end; > > + diskseq =3D simple_strtoull(diskseq_str, &diskseq_end, 16); > > + if (diskseq_end !=3D diskseq_str + diskseq_len) { > > + xenbus_dev_fatal(dev, -EINVAL, "invalid diskseq"); > > + goto fail; > > + } > > + kfree(diskseq_str); > > + diskseq_str =3D NULL; > > + } >=20 > And I suspect the code will be a lot easier to follow if you move > the diskseq validation into a separate helper. Fixed in v3. --=20 Sincerely, Demi Marie Obenour (she/her/hers) Invisible Things Lab --CTS34Y4jd0AZd9RG Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQIzBAEBCgAdFiEEdodNnxM2uiJZBxxxsoi1X/+cIsEFAmSAqaEACgkQsoi1X/+c IsH5yhAAnK+FHobE4EaJLu/MXl1mYHrYhpZKqUOIopKg1xODd1RlWyQI95qq3vHX AnwOhHN+Wv/PbJ0vhvL+/DtuC56AIaCxzhShuZmqZjvLDPwdvi73nSf4xiV7SLWG 6GfMhn9Mo8MGoj+ek88P10z9bIwrfdCWnvnuns6bcGlHsMkrx/B3Jzk5ZOD1QWWj W6jzKRmUDCv+RKHcajLUB3iM2JTTYOLcljqldvSyRv1SySytToLRtTWfZrOJS7Z2 Tjf9heSRPhvHPvcaHyidiaZ87xQjcmI4LRzOXEybxFd6uxIf4QpDD4rschFu25NL TTEFPRIocqwHQgyVcG8aIu86nizNf7f/O/iLfQhNTuYQ1mbq6l8QNyAcJ6sXMz0A fms3iMGiH2LF/pi8vEprOfiC1+0L+whpAqEEogIWh4zYp/tM0raENGZNJL6ZTwXI BPkVkAmsrZAQljrzecbtjRWPZJUDmi+u9XGFCjY9MX7oHtnRH22hLdVeYqd1NljD bgleEMTPiV/ZhPhOPi/Fyccze9VneSOjQ7QoKii0JaiECzatJFr3ZoIgwpIJsv17 KSglgXTjzQpGPURe+RK+rQWMAlb6V2gT3mNC36txOv8j+Y6CuL3xfwGIdfP5nLh+ qTO2n1i40TxJ0VEZa9kD67tyqrLuOS7kru2hQbdhvW9f92eOPo4= =m1I6 -----END PGP SIGNATURE----- --CTS34Y4jd0AZd9RG-- From xen-devel-bounces@lists.xenproject.org Wed Jun 07 16:01:28 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 16:01:28 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544895.850994 (Exim 4.92) (envelope-from ) id 1q6vb8-0005eZ-T6; Wed, 07 Jun 2023 16:01:22 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544895.850994; Wed, 07 Jun 2023 16:01:22 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6vb8-0005eS-QX; Wed, 07 Jun 2023 16:01:22 +0000 Received: by outflank-mailman (input) for mailman id 544895; Wed, 07 Jun 2023 16:01:21 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6vb7-0005eK-Pn for xen-devel@lists.xenproject.org; Wed, 07 Jun 2023 16:01:21 +0000 Received: from out5-smtp.messagingengine.com (out5-smtp.messagingengine.com [66.111.4.29]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 88ddc2d4-054c-11ee-b232-6b7b168915f2; Wed, 07 Jun 2023 18:01:19 +0200 (CEST) Received: from compute2.internal (compute2.nyi.internal [10.202.2.46]) by mailout.nyi.internal (Postfix) with ESMTP id 856305C0229; Wed, 7 Jun 2023 12:01:16 -0400 (EDT) Received: from mailfrontend1 ([10.202.2.162]) by compute2.internal (MEProxy); Wed, 07 Jun 2023 12:01:16 -0400 Received: by mail.messagingengine.com (Postfix) with ESMTPA; Wed, 7 Jun 2023 12:01:14 -0400 (EDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 88ddc2d4-054c-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= invisiblethingslab.com; h=cc:cc:content-type:content-type:date :date:from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:sender:subject:subject:to:to; s=fm1; t= 1686153676; x=1686240076; bh=2UoO8B7Qn0k2QzL7d+OGaqTzOAQvpjpsvVc EYJCpl1o=; b=P/sylwK0Oo2scXna9wnN25CgyGn7pCDm4HvPPp51OQzHyuY1XG+ yLkTAfQZoYJXMxIzSsuzfnGWCr8F/fElncTbLW2wbEK4XTxSdgSbZnhqQWccdP30 3Exd1VvNZr2iXIxUAp5RrlUX/YI6V0erTq6QVQbAMkwNlkg7l2Y/fNMQCcPxBiHA Z553O/RH7ofCxhjZGOaV/I2raxnI2QtDJN7SrjD+ssxFyXWRP3fDShCTeoviSgmj pIeUOHd8RtMXxKoLKMXixeVYS2kerT7qigsYgpWWVEP3yUTPX9/ljHFstEx6DGTq 8X2qvxn1rbw9t+cJ+BXLws7pGe0aPCX8lPQ== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-type:content-type:date:date :feedback-id:feedback-id:from:from:in-reply-to:in-reply-to :message-id:mime-version:references:reply-to:sender:subject :subject:to:to:x-me-proxy:x-me-proxy:x-me-sender:x-me-sender :x-sasl-enc; s=fm1; t=1686153676; x=1686240076; bh=2UoO8B7Qn0k2Q zL7d+OGaqTzOAQvpjpsvVcEYJCpl1o=; b=M+SYPvvFAPpg2FqxW2Ocp8tcv/oST 7Xl28iQJ0aAb48lYJanERjkGIkM9A0YzEhJIO9v6fW+Cgp2URoa0x8d0xbGavyR+ 2YaTycU097kwVROrl0P+4Xv5VfX+KjQzryn53sqeNJyLQhHTAV63B35FRDUFQhQm sHqRFCer8HEi330HHhdOU8cye4/t7+kaiL7/as4GQfEA9WaBiRuTE87VcKg8zJXa VVAATsp5Mv3wEhf7v6Q/CSHeiMjU+jIwz8y5m8jrKqui9RmaUOTJ+DWrjmFwXCPh rKWInA60g5hv7g3su31JEKu8s0bk4pjo+FaS9zoMqsKWumXQqUxfZoy5w== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvhedrgedtgedgleeiucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne cujfgurhepfffhvfevuffkfhggtggujgesghdtreertddtvdenucfhrhhomhepffgvmhhi ucforghrihgvucfqsggvnhhouhhruceouggvmhhisehinhhvihhsihgslhgvthhhihhngh hslhgrsgdrtghomheqnecuggftrfgrthhtvghrnhepudeileefueetvdelheeuteffjeeg jeegffekleevueelueekjeejudffteejkeetnecuvehluhhsthgvrhfuihiivgeptdenuc frrghrrghmpehmrghilhhfrhhomhepuggvmhhisehinhhvihhsihgslhgvthhhihhnghhs lhgrsgdrtghomh X-ME-Proxy: Feedback-ID: iac594737:Fastmail Date: Wed, 7 Jun 2023 12:01:11 -0400 From: Demi Marie Obenour To: Christoph Hellwig Cc: Roger Pau =?utf-8?B?TW9ubsOp?= , Jens Axboe , Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= , xen-devel@lists.xenproject.org, linux-block@vger.kernel.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH 2/2] xen-blkback: Inform userspace that device has been opened Message-ID: References: <20230601214823.1701-1-demi@invisiblethingslab.com> <20230601214823.1701-3-demi@invisiblethingslab.com> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha512; protocol="application/pgp-signature"; boundary="WgIi5Tes309KNxkl" Content-Disposition: inline In-Reply-To: --WgIi5Tes309KNxkl Content-Type: text/plain; protected-headers=v1; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Date: Wed, 7 Jun 2023 12:01:11 -0400 From: Demi Marie Obenour To: Christoph Hellwig Cc: Roger Pau =?utf-8?B?TW9ubsOp?= , Jens Axboe , Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= , xen-devel@lists.xenproject.org, linux-block@vger.kernel.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH 2/2] xen-blkback: Inform userspace that device has been opened On Wed, Jun 07, 2023 at 12:46:16AM -0700, Christoph Hellwig wrote: > > --- a/drivers/block/xen-blkback/xenbus.c > > +++ b/drivers/block/xen-blkback/xenbus.c > > @@ -3,6 +3,20 @@ > > Copyright (C) 2005 Rusty Russell > > Copyright (C) 2005 XenSource Ltd > > =20 > > +In addition to the Xenstore nodes required by the Xen block device > > +specification, this implementation of blkback uses a new Xenstore > > +node: "opened". blkback sets "opened" to "0" before the hotplug script > > +is called. Once the device node has been opened, blkback sets "opened" > > +to "1". >=20 > This is a really odd comment style, and a really strange place for it. > To me it feels like this should just be a file in Documentation as it > relates to how to use the driver, and doesn't really explain the code. Will fix in v3. --=20 Sincerely, Demi Marie Obenour (she/her/hers) Invisible Things Lab --WgIi5Tes309KNxkl Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQIzBAEBCgAdFiEEdodNnxM2uiJZBxxxsoi1X/+cIsEFAmSAqckACgkQsoi1X/+c IsGmCg/+PbmcJVAb/MiNuNHzPQ/Vq7YzVW9qFtwIrvQC5Eb7EjXPWQ4P5TRbBdZS tH4aoGHWANtB8/M1Gh8GmtYHttitFzuO7oe22pIisvOAM4+28uvXojLN3v4SjrhE /Dn7xkvivLfKKqmTUbyv5cPbhZVc96VeZ5mn0Gt57+oGMQU+DE4BAG8rRicYW2Ok isEAlvI+V08xKVW0dOYu9Qis/Qm48kQhbCZHWTuXlIrKBgcTYu40LQMrYg9nd8YB 9uQ75fyAiuZMM55fu54spREudNDP1FkFX5uuXj2A1M8Yjl7G93RMaizvUrjPLeUO fKbiWrk8Nlc0OKnS4WOAYtnvsTpH6LaJuZA7/IT5sYG7fXT0B0krVxvZsgInNxKJ nsbr46g4Sv2LoJTifF8rrF+ujGBWceDkB5VIo6bhYqNbJ8xLGfaFEYrF7XcliWf0 RstpIOa7kKVA0GV/l8HezD+Iez1BoUatPsPq1cdzp7bTsN2rgG6VK+0jWmV01n/N 8wyHxfXU8Z3NpTNFPJXgjTu4zqcLsKpmpsbP5Ee7W3bKNrUZXIRL6spGRJcOxcsi POrPJ72Zf8Sw+vULlK0+hKSf3BtckaTVmCU9e3qJE+4ukrzpoFVvf96mPVaXLMaT OLY/3zj/5bNxCzSC+GWKTMTg2lL6Txbyfyht0YkfmUL3Rgh9i9Y= =nc8R -----END PGP SIGNATURE----- --WgIi5Tes309KNxkl-- From xen-devel-bounces@lists.xenproject.org Wed Jun 07 16:15:16 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 16:15:16 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544905.851005 (Exim 4.92) (envelope-from ) id 1q6voG-0007LM-2f; Wed, 07 Jun 2023 16:14:56 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544905.851005; Wed, 07 Jun 2023 16:14:56 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6voF-0007LF-VW; Wed, 07 Jun 2023 16:14:55 +0000 Received: by outflank-mailman (input) for mailman id 544905; Wed, 07 Jun 2023 16:14:54 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6voE-0007L9-TU for xen-devel@lists.xenproject.org; Wed, 07 Jun 2023 16:14:54 +0000 Received: from out5-smtp.messagingengine.com (out5-smtp.messagingengine.com [66.111.4.29]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 6f711920-054e-11ee-b232-6b7b168915f2; Wed, 07 Jun 2023 18:14:53 +0200 (CEST) Received: from compute4.internal (compute4.nyi.internal [10.202.2.44]) by mailout.nyi.internal (Postfix) with ESMTP id B0E555C0156; Wed, 7 Jun 2023 12:14:52 -0400 (EDT) Received: from mailfrontend2 ([10.202.2.163]) by compute4.internal (MEProxy); Wed, 07 Jun 2023 12:14:52 -0400 Received: by mail.messagingengine.com (Postfix) with ESMTPA; Wed, 7 Jun 2023 12:14:51 -0400 (EDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 6f711920-054e-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= invisiblethingslab.com; h=cc:cc:content-type:content-type:date :date:from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:sender:subject:subject:to:to; s=fm1; t= 1686154492; x=1686240892; bh=QKN//D7ch2wGcis9ZuO+0faQUbCTNZMH3AV l7UWGzdA=; b=Mgdjc0heA9TJLiUXmgzW+Y2ZlCDLFpas+Ymt4B9XT31z+LiMb79 5kTpRt5Q2Su+FIcVtau2DhPDXi7uL7Rj7JEwPG8TT9Nl2slnd4LTFfkycFqzMPuZ Ug6XSb9X1kcGEt9AZxBYZ9Y4uOQCebobSkJ3By0Y1n3UEujGvyjlup82PlKfJT9c MGP3qsimyrv3Cilu9LINDWsGySS2n9qGh082z4RpBK+psVpbfbT6UgOxNpz9HYvc JmGpyyCRWdTcKbEDciAeUhVT0/lTVJuAFT8KmmWMP009BbPIt4GdmYW7trAwkRQN 0No89GkOZdl6sXurulELBgGguqtSrWSYnug== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-type:content-type:date:date :feedback-id:feedback-id:from:from:in-reply-to:in-reply-to :message-id:mime-version:references:reply-to:sender:subject :subject:to:to:x-me-proxy:x-me-proxy:x-me-sender:x-me-sender :x-sasl-enc; s=fm1; t=1686154492; x=1686240892; bh=QKN//D7ch2wGc is9ZuO+0faQUbCTNZMH3AVl7UWGzdA=; b=DpXRUWMGSsazhraVGXGV5QIr9QPqL yyJmYEu8DScVfJV8rN/tpaCA2NSD+W0VYv/5xvfiW/bjOJY0591/U4itzKSgjQ71 SPEOcyB75zawDPN4Ok9jUEE8BxIIKCI3McyTMp1eXFWvTslRywp+lGPehhbZ6dBM t8RVYGILdS04K1m6P32UB+/EyNSE/P4aqeKXXAmgp43Cv4nJkJtSXDdaq24ZCTvC 0dWQA5EthbGW4uTYC5yNBdF5csixSXWUYSAhoffZgnpEN9nUXB+RkcEOIevINvKs qDbtnogdMkqtAuJ6N+O2v79apbt7O1a/I3MS6GwnpQvN0R3vYW5Fu9DrQ== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvhedrgedtgedgleelucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne cujfgurhepfffhvfevuffkfhggtggujgesghdtreertddtjeenucfhrhhomhepffgvmhhi ucforghrihgvucfqsggvnhhouhhruceouggvmhhisehinhhvihhsihgslhgvthhhihhngh hslhgrsgdrtghomheqnecuggftrfgrthhtvghrnhepvdejteegkefhteduhffgteffgeff gfduvdfghfffieefieekkedtheegteehffelnecuvehluhhsthgvrhfuihiivgeptdenuc frrghrrghmpehmrghilhhfrhhomhepuggvmhhisehinhhvihhsihgslhgvthhhihhnghhs lhgrsgdrtghomh X-ME-Proxy: Feedback-ID: iac594737:Fastmail Date: Wed, 7 Jun 2023 12:14:46 -0400 From: Demi Marie Obenour To: Roger Pau =?utf-8?B?TW9ubsOp?= Cc: Jens Axboe , Alasdair Kergon , Mike Snitzer , dm-devel@redhat.com, Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= , linux-block@vger.kernel.org, linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org Subject: Re: [PATCH v2 13/16] xen-blkback: Implement diskseq checks Message-ID: References: <20230530203116.2008-1-demi@invisiblethingslab.com> <20230530203116.2008-14-demi@invisiblethingslab.com> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha512; protocol="application/pgp-signature"; boundary="0tmOeWojyIbdbJsu" Content-Disposition: inline In-Reply-To: --0tmOeWojyIbdbJsu Content-Type: text/plain; protected-headers=v1; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Date: Wed, 7 Jun 2023 12:14:46 -0400 From: Demi Marie Obenour To: Roger Pau =?utf-8?B?TW9ubsOp?= Cc: Jens Axboe , Alasdair Kergon , Mike Snitzer , dm-devel@redhat.com, Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= , linux-block@vger.kernel.org, linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org Subject: Re: [PATCH v2 13/16] xen-blkback: Implement diskseq checks On Wed, Jun 07, 2023 at 10:20:08AM +0200, Roger Pau Monn=C3=A9 wrote: > On Tue, Jun 06, 2023 at 01:01:20PM -0400, Demi Marie Obenour wrote: > > On Tue, Jun 06, 2023 at 10:25:47AM +0200, Roger Pau Monn=C3=A9 wrote: > > > On Tue, May 30, 2023 at 04:31:13PM -0400, Demi Marie Obenour wrote: > > > > This allows specifying a disk sequence number in XenStore. If it d= oes > > > > not match the disk sequence number of the underlying device, the de= vice > > > > will not be exported and a warning will be logged. Userspace can u= se > > > > this to eliminate race conditions due to major/minor number reuse. > > > > Old kernels do not support the new syntax, but a later patch will a= llow > > > > userspace to discover that the new syntax is supported. > > > >=20 > > > > Signed-off-by: Demi Marie Obenour > > > > --- > > > > drivers/block/xen-blkback/xenbus.c | 112 +++++++++++++++++++++++--= ---- > > > > 1 file changed, 89 insertions(+), 23 deletions(-) > > > >=20 > > > > diff --git a/drivers/block/xen-blkback/xenbus.c b/drivers/block/xen= -blkback/xenbus.c > > > > index 4807af1d58059394d7a992335dabaf2bc3901721..9c3eb148fbd802c74e6= 26c3d7bcd69dcb09bd921 100644 > > > > --- a/drivers/block/xen-blkback/xenbus.c > > > > +++ b/drivers/block/xen-blkback/xenbus.c > > > > @@ -24,6 +24,7 @@ struct backend_info { > > > > struct xenbus_watch backend_watch; > > > > unsigned major; > > > > unsigned minor; > > > > + unsigned long long diskseq; > > >=20 > > > Since diskseq is declared as u64 in gendisk, better use the same type > > > here too? > >=20 > > simple_strtoull() returns an unsigned long long, and C permits unsigned > > long long to be larger than 64 bits. >=20 > Right, but the type of gendisk is u64. It's fine if you want to store > the result of simple_strtoull() into an unsigned long long and do > whatever checks to assert it matches the format expected by gendisk, > but ultimately the field type would better use u64 for consistency IMO. I changed my mind on this, not least because the 16-byte length limit means that the value is limited to UINT64_MAX anyway. > > > > @@ -725,10 +749,46 @@ static void backend_changed(struct xenbus_wat= ch *watch, > > > > return; > > > > } > > > > =20 > > > > - if (be->major | be->minor) { > > > > - if (be->major !=3D major || be->minor !=3D minor) > > > > - pr_warn("changing physical device (from %x:%x to %x:%x) not sup= ported.\n", > > > > - be->major, be->minor, major, minor); > > > > + diskseq_str =3D xenbus_read(XBT_NIL, dev->nodename, "diskseq", &d= iskseq_len); > > > > + if (IS_ERR(diskseq_str)) { > > > > + int err =3D PTR_ERR(diskseq_str); > > > > + diskseq_str =3D NULL; > > > > + > > > > + /* > > > > + * If this does not exist, it means legacy userspace that does n= ot > > > > + * support diskseq. > > > > + */ > > > > + if (unlikely(!XENBUS_EXIST_ERR(err))) { > > > > + xenbus_dev_fatal(dev, err, "reading diskseq"); > > > > + return; > > > > + } > > > > + diskseq =3D 0; > > > > + } else if (diskseq_len <=3D 0) { > > > > + xenbus_dev_fatal(dev, -EFAULT, "diskseq must not be empty"); > > > > + goto fail; > > > > + } else if (diskseq_len > 16) { > > > > + xenbus_dev_fatal(dev, -ERANGE, "diskseq too long: got %d but lim= it is 16", > > > > + diskseq_len); > > > > + goto fail; > > > > + } else if (diskseq_str[0] =3D=3D '0') { > > > > + xenbus_dev_fatal(dev, -ERANGE, "diskseq must not start with '0'"= ); > > > > + goto fail; > > > > + } else { > > > > + char *diskseq_end; > > > > + diskseq =3D simple_strtoull(diskseq_str, &diskseq_end, 16); > > > > + if (diskseq_end !=3D diskseq_str + diskseq_len) { > > > > + xenbus_dev_fatal(dev, -EINVAL, "invalid diskseq"); > > > > + goto fail; > > > > + } > > > > + kfree(diskseq_str); > > > > + diskseq_str =3D NULL; > > > > + } > > >=20 > > > Won't it be simpler to use xenbus_scanf() with %llx formatter? > >=20 > > xenbus_scanf() doesn=E2=80=99t check for overflow and accepts lots of j= unk it > > really should not. Should this be fixed in xenbus_scanf()? >=20 > That would be my preference, so that you can use it here instead of > kind of open-coding it. This winds up being a much more invasive patch as it requires changing sscanf(). It also has a risk (probably mostly theoretical) of breaking buggy userspace that passes garbage values here. > > > Also, we might want to fetch "physical-device" and "diskseq" inside > > > the same xenstore transaction. > >=20 > > Should the rest of the xenstore reads be included in the same > > transaction? >=20 > I guess it would make the code simpler to indeed fetch everything > inside the same transaction. Okay, will change in v3. > > > Also, you tie this logic to the "physical-device" watch, which > > > strictly implies that the "diskseq" node must be written to xenstore > > > before the "physical-device" node. This seems fragile, but I don't > > > see much better optiono since the "diskseq" is optional. > >=20 > > What about including the diskseq in the "physical-device" node? Perhaps > > use diskseq@major:minor syntax? >=20 > Hm, how would you know whether the blkback instance in the kernel > supports the diskseq syntax in physical-device? That=E2=80=99s what the next patch is for =F0=9F=99=82. > Can you fetch a disk using a diskseq identifier? Not yet, although I have considered adding this ability. It would be one step towards a =E2=80=9Cdiskseqfs=E2=80=9D that userspace could use to = open a device by diskseq. > Why I understand that this is an extra safety check in order to assert > blkback is opening the intended device, is this attempting to fix some > existing issue? Yes, it is. I have a block script (written in C) that validates the device it has opened before passing the information to blkback. It uses the diskseq to do this, but for that protection to be complete, blkback must also be aware of it. > I'm not sure I see how the major:minor numbers would point to a > different device than the one specified by the toolstack unless the > admin explicitly messes with the devices before blkback has got time > to open them. But then the admin can already do pretty much > everything it wants with the system. Admins typically refer to e.g. device-mapper devices by name, not by major:minor number. If a device is destroyed and recreated right as the block script is running, this race condition can occur. --=20 Sincerely, Demi Marie Obenour (she/her/hers) Invisible Things Lab --0tmOeWojyIbdbJsu Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQIzBAEBCgAdFiEEdodNnxM2uiJZBxxxsoi1X/+cIsEFAmSArPoACgkQsoi1X/+c IsG2Sw/+IRODwFvB3hw6+YXnA+p574mfNGw2RAkb4TUKRkKNV9k6a/f7TWk3gk52 dYk5ddTL3KtZNQ0JHuP+MGSsrFHCtFSXR1hwC0jYOSFSrfIHlsFlMJVnYZpdoN0n vaCWJOthQ2GiUshPKEU5moQUY6h1ncIXazZ+qp+w9ys+NhSuFl1WS3mTg8sFYMH/ DFjVJ34RJgE+l2HAaDfWTpWWD9KnaGSNtnbZT7X6xa3i0c65SeugbFqzi+dGYEJj kHki/FyHT4118O6S5+oK/4w2p+lr5iF71MqLxPlFLBjZuhjb+75uo7qDR8iN9bDU p+CH5NiBR9JjZ1AK5kZds8OdhRNjJTVpWfKQBkGd+CS0EXeKGhgCpFItjSmrtwCg jzClxpTP7/V4pLSjH8eotBIm2g8PX3lkTjyGHujhyQ8zNCAofL8rFVYa7gkkU5ZV Vr8MH7FNiUZuXkPVuotQ9/QI7XmnBnwxwxvddzo9F4nrewgOQP6/Xn9w7MnTiYN8 O+ixXsULrj01Zna4lFUEwg95dscNrRKKjqoKsvxF/uJrLfdxHdAjZcYgSdJYr9gy ApUsWXuknsYldPizjC6qkLaJGU1v43xOUODGpELnOqC9mlW8d8TlmfrwnXDUpOhX i6Uvu+htPNKFH4x1ExbZ0k997nR0Pq1fmZc1mpCsv8wzPALSswY= =XMZ2 -----END PGP SIGNATURE----- --0tmOeWojyIbdbJsu-- From xen-devel-bounces@lists.xenproject.org Wed Jun 07 16:17:20 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 16:17:20 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544911.851015 (Exim 4.92) (envelope-from ) id 1q6vqZ-0007tS-FR; Wed, 07 Jun 2023 16:17:19 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544911.851015; Wed, 07 Jun 2023 16:17:19 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6vqZ-0007tL-BL; Wed, 07 Jun 2023 16:17:19 +0000 Received: by outflank-mailman (input) for mailman id 544911; Wed, 07 Jun 2023 16:17:18 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6vqY-0007tB-3H; Wed, 07 Jun 2023 16:17:18 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6vqX-0000bt-Sf; Wed, 07 Jun 2023 16:17:17 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6vqX-0000qR-Ef; Wed, 07 Jun 2023 16:17:17 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q6vqX-0001oz-E3; Wed, 07 Jun 2023 16:17:17 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=hjGRPmTfe5JUojXYPCaHauHHvLYYa9V6YUGxfTOfKuI=; b=WOGX9Na6uDM4wGQw/lggJTppl0 Umkjwwb/XI+PtktfRFfmEcg99kx/VAYkYgJ+RaTRetD6tJn8OxyETPy/d78fUPEPFrrx8MQ/qrmYw 6UrgDsSNx8d4TP0WNR2a7hDNn1agwhbRAzfEKkFgB3clNQTvJJXT9tQAmkI1mimGSpEs=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable test] 181243: regressions - FAIL X-Osstest-Failures: xen-unstable:test-amd64-i386-libvirt-pair:xen-install/dst_host:fail:regression xen-unstable:test-armhf-armhf-examine:reboot:fail:regression xen-unstable:test-amd64-i386-xl-qemut-debianhvm-i386-xsm:debian-hvm-install:fail:regression xen-unstable:test-amd64-amd64-xl-qcow2:guest-start/debian.repeat:fail:regression xen-unstable:build-arm64-pvops:kernel-build:fail:regression xen-unstable:test-arm64-arm64-examine:build-check(1):blocked:nonblocking xen-unstable:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking xen-unstable:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking xen-unstable:test-arm64-arm64-xl:build-check(1):blocked:nonblocking xen-unstable:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking xen-unstable:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking xen-unstable:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking xen-unstable:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking xen-unstable:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking X-Osstest-Versions-This: xen=64a647f8d817c6989edc000613b5afae19f03f99 X-Osstest-Versions-That: xen=b3880c365db89051728e1de6b6889c750cbdd915 From: osstest service owner Date: Wed, 07 Jun 2023 16:17:17 +0000 flight 181243 xen-unstable real [real] http://logs.test-lab.xenproject.org/osstest/logs/181243/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: test-amd64-i386-libvirt-pair 11 xen-install/dst_host fail REGR. vs. 181194 test-armhf-armhf-examine 8 reboot fail REGR. vs. 181194 test-amd64-i386-xl-qemut-debianhvm-i386-xsm 12 debian-hvm-install fail REGR. vs. 181194 test-amd64-amd64-xl-qcow2 21 guest-start/debian.repeat fail REGR. vs. 181194 build-arm64-pvops 6 kernel-build fail REGR. vs. 181194 Tests which did not succeed, but are not blocking: test-arm64-arm64-examine 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-raw 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-xsm 1 build-check(1) blocked n/a test-arm64-arm64-xl 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit1 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit2 1 build-check(1) blocked n/a test-arm64-arm64-xl-thunderx 1 build-check(1) blocked n/a test-arm64-arm64-xl-vhd 1 build-check(1) blocked n/a test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 181194 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop fail like 181194 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 181194 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 181194 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop fail like 181194 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop fail like 181194 test-armhf-armhf-libvirt 16 saverestore-support-check fail like 181194 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail like 181194 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail like 181194 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 181194 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop fail like 181194 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 181194 test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-i386-xl-pvshim 14 guest-start fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-i386-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-armhf-armhf-xl-multivcpu 15 migrate-support-check fail never pass test-armhf-armhf-xl-multivcpu 16 saverestore-support-check fail never pass test-amd64-i386-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-xl 15 migrate-support-check fail never pass test-armhf-armhf-xl 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 16 saverestore-support-check fail never pass test-amd64-i386-libvirt 15 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 15 saverestore-support-check fail never pass test-armhf-armhf-xl-credit2 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit2 16 saverestore-support-check fail never pass test-armhf-armhf-xl-arndale 15 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt 15 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 15 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail never pass version targeted for testing: xen 64a647f8d817c6989edc000613b5afae19f03f99 baseline version: xen b3880c365db89051728e1de6b6889c750cbdd915 Last test of basis 181194 2023-06-05 16:40:12 Z 1 days Failing since 181210 2023-06-06 08:53:29 Z 1 days 3 attempts Testing same since 181243 2023-06-07 08:19:16 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Alejandro Vallejo Andrew Cooper Henry Wang # CHANGELOG Jan Beulich Luca Fancellu Stefano Stabellini jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64-xtf pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-prev pass build-i386-prev pass build-amd64-pvops pass build-arm64-pvops fail build-armhf-pvops pass build-i386-pvops pass test-xtf-amd64-amd64-1 pass test-xtf-amd64-amd64-2 pass test-xtf-amd64-amd64-3 pass test-xtf-amd64-amd64-4 pass test-xtf-amd64-amd64-5 pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl blocked test-armhf-armhf-xl pass test-amd64-i386-xl pass test-amd64-coresched-i386-xl pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-i386-xl-qemut-debianhvm-i386-xsm fail test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-i386-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm blocked test-amd64-i386-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm blocked test-amd64-i386-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-i386-qemut-rhel6hvm-amd pass test-amd64-i386-qemuu-rhel6hvm-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-i386-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-freebsd10-amd64 pass test-amd64-amd64-qemuu-freebsd11-amd64 pass test-amd64-amd64-qemuu-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-i386-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-i386-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-i386-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-amd64-i386-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale pass test-amd64-amd64-examine-bios pass test-amd64-i386-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 blocked test-armhf-armhf-xl-credit1 pass test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 blocked test-armhf-armhf-xl-credit2 pass test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine blocked test-armhf-armhf-examine fail test-amd64-i386-examine pass test-amd64-i386-freebsd10-i386 pass test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-i386-qemut-rhel6hvm-intel pass test-amd64-i386-qemuu-rhel6hvm-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt pass test-amd64-i386-libvirt pass test-amd64-amd64-livepatch pass test-amd64-i386-livepatch pass test-amd64-amd64-migrupgrade pass test-amd64-i386-migrupgrade pass test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu pass test-amd64-amd64-pair pass test-amd64-i386-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-i386-libvirt-pair fail test-amd64-amd64-xl-pvshim pass test-amd64-i386-xl-pvshim fail test-amd64-amd64-pygrub pass test-armhf-armhf-libvirt-qcow2 pass test-amd64-amd64-xl-qcow2 fail test-arm64-arm64-libvirt-raw blocked test-armhf-armhf-libvirt-raw pass test-amd64-i386-libvirt-raw pass test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds pass test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-amd64-i386-xl-shadow pass test-arm64-arm64-xl-thunderx blocked test-amd64-amd64-examine-uefi pass test-amd64-i386-examine-uefi pass test-amd64-amd64-libvirt-vhd pass test-arm64-arm64-xl-vhd blocked test-armhf-armhf-xl-vhd pass test-amd64-i386-xl-vhd pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. ------------------------------------------------------------ commit 64a647f8d817c6989edc000613b5afae19f03f99 Author: Luca Fancellu Date: Thu May 25 09:34:01 2023 +0100 maintainers: Add Xen MISRA Analysis Tools section Add a section for the Xen MISRA Analysis Tools. Signed-off-by: Luca Fancellu Acked-by: Stefano Stabellini commit 1d7c45f895b6b1fc42086ac645765279fd52bc31 Author: Luca Fancellu Date: Thu May 25 09:34:00 2023 +0100 xen/misra: diff-report.py: add report patching feature Add a feature to the diff-report.py script that improves the comparison between two analysis report, one from a baseline codebase and the other from the changes applied to the baseline. The comparison between reports of different codebase is an issue because entries in the baseline could have been moved in position due to addition or deletion of unrelated lines or can disappear because of deletion of the interested line, making the comparison between two revisions of the code harder. Having a baseline report, a report of the codebase with the changes called "new report" and a git diff format file that describes the changes happened to the code from the baseline, this feature can understand which entries from the baseline report are deleted or shifted in position due to changes to unrelated lines and can modify them as they will appear in the "new report". Having the "patched baseline" and the "new report", now it's simple to make the diff between them and print only the entry that are new. Signed-off-by: Luca Fancellu Acked-by: Stefano Stabellini Tested-by: Stefano Stabellini commit 43840b53f6dbe220159a14d7beb9884947a76211 Author: Luca Fancellu Date: Thu May 25 09:33:59 2023 +0100 xen/misra: add diff-report.py tool Add a new tool, diff-report.py that can be used to make diff between reports generated by xen-analysis.py tool. Currently this tool supports the Xen cppcheck text report format in its operations. The tool prints every finding that is in the report passed with -r (check report) which is not in the report passed with -b (baseline). Signed-off-by: Luca Fancellu Acked-by: Stefano Stabellini Tested-by: Stefano Stabellini commit b35b22acb887f682efe8385b3df165220bc84c86 Author: Alejandro Vallejo Date: Mon Jun 5 16:01:16 2023 +0100 x86/microcode: Add missing unlock in microcode_update_helper() microcode_update_helper() may return early while holding cpu_add_remove_lock, hence preventing any writers from taking it again. Leave through the `put` label instead so it's properly released. Fixes: 5ed12565aa32 ("microcode: rendezvous CPUs in NMI handler and load ucode") Signed-off-by: Alejandro Vallejo Reviewed-by: Andrew Cooper commit a5917ca28bf77a4770113446427fb22f81444b52 Author: Andrew Cooper Date: Mon Jun 5 10:48:59 2023 +0100 xen: Fix incorrect taint constant Insecure is the word being looked for here. Especially given the nature of the sole caller, and the (correct) comment next to it. Also update the taint marker from 'U' to 'I' for consistency; this isn't expected to impact anyone in practice. Fixes: 82c0d3d491cc ("xen: Add an unsecure Taint type") Signed-off-by: Andrew Cooper Acked-by: Jan Beulich Reviewed-by: Bertrand Marquis commit e291c4c3e1ec1a693e6b8de5562d6a9607ad2722 Author: Jan Beulich Date: Mon Jun 5 16:54:30 2023 +0200 x86emul: AVX512-FP16 testing Naming of some of the builtins isn't fully consistent with that of pre- existing ones, so there's a need for a new BR2() wrapper macro. With the tests providing some proof of proper functioning of the emulator code also enable use of the feature by guests, as there's no other infrastructure involved in enabling this ISA extension. Signed-off-by: Jan Beulich Acked-by: Andrew Cooper Acked-by: Henry Wang # CHANGELOG (qemu changes not included) From xen-devel-bounces@lists.xenproject.org Wed Jun 07 16:24:17 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 16:24:17 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544919.851025 (Exim 4.92) (envelope-from ) id 1q6vxA-00010X-7n; Wed, 07 Jun 2023 16:24:08 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544919.851025; Wed, 07 Jun 2023 16:24:08 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6vxA-00010Q-56; Wed, 07 Jun 2023 16:24:08 +0000 Received: by outflank-mailman (input) for mailman id 544919; Wed, 07 Jun 2023 16:24:06 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6vx8-00010F-Sh; Wed, 07 Jun 2023 16:24:06 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6vx8-0000ju-Hv; Wed, 07 Jun 2023 16:24:06 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6vx8-00010h-08; Wed, 07 Jun 2023 16:24:06 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q6vx7-00040z-Vy; Wed, 07 Jun 2023 16:24:05 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Message-Id:Subject:To; bh=sJU+rH8aVFoHKmSzkWfNsV56DfqY/rvyauore6LzF0M=; b=XSGs9C+twwmtnXco6q0Ht6SG13 /uuclFgpoFTkzFaKEKAh7DjoI7cq4k9zluGPrkqcZRlQzROrQKFFaZmoWZQeZdMhJ+XU/Xnnyj8ST 1CYQZOBt4Gf1ZoWvADiyVo428jrUzNeZ9tzam0vDqk0jW0RIAPP39my2WYHkCeeNSyVA=; To: xen-devel@lists.xenproject.org Subject: [xen-unstable-smoke bisection] complete build-amd64 Message-Id: From: osstest service owner Date: Wed, 07 Jun 2023 16:24:05 +0000 branch xen-unstable-smoke xenbranch xen-unstable-smoke job build-amd64 testid xen-build Tree: qemu git://xenbits.xen.org/qemu-xen-traditional.git Tree: qemuu git://xenbits.xen.org/qemu-xen.git Tree: xen git://xenbits.xen.org/xen.git *** Found and reproduced problem changeset *** Bug is in tree: xen git://xenbits.xen.org/xen.git Bug introduced: b46e8207d0aedad7bb23d14c055d95e625d366b0 Bug not present: 56a7aaa16bfe43945a0031319c60c7f323c46254 Last fail repro: http://logs.test-lab.xenproject.org/osstest/logs/181258/ commit b46e8207d0aedad7bb23d14c055d95e625d366b0 Author: Luca Fancellu Date: Wed May 31 08:24:11 2023 +0100 xen/tools: add sve parameter in XL configuration Add sve parameter in XL configuration to allow guests to use SVE feature. Signed-off-by: Luca Fancellu Reviewed-by: Anthony PERARD For bisection revision-tuple graph see: http://logs.test-lab.xenproject.org/osstest/results/bisect/xen-unstable-smoke/build-amd64.xen-build.html Revision IDs in each graph node refer, respectively, to the Trees above. ---------------------------------------- Running cs-bisection-step --graph-out=/home/logs/results/bisect/xen-unstable-smoke/build-amd64.xen-build --summary-out=tmp/181258.bisection-summary --basis-template=181233 --blessings=real,real-bisect,real-retry xen-unstable-smoke build-amd64 xen-build Searching for failure / basis pass: 181248 fail [host=himrod2] / 181233 ok. Failure / basis pass flights: 181248 / 181233 (tree with no url: minios) (tree with no url: ovmf) (tree with no url: seabios) Tree: qemu git://xenbits.xen.org/qemu-xen-traditional.git Tree: qemuu git://xenbits.xen.org/qemu-xen.git Tree: xen git://xenbits.xen.org/xen.git Latest 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8c51cd970509b97d8378d175646ec32889828158 685048441e1cd935b622bba47d3ca612e75b4ef6 Basis pass 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8c51cd970509b97d8378d175646ec32889828158 64a647f8d817c6989edc000613b5afae19f03f99 Generating revisions with ./adhoc-revtuple-generator git://xenbits.xen.org/qemu-xen-traditional.git#3d273dd05e51e5a1ffba3d98c7437ee84e8f8764-3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 git://xenbits.xen.org/qemu-xen.git#8c51cd970509b97d8378d175646ec32889828158-8c51cd970509b97d8378d175646ec32889828158 git://xenbits.xen.org/xen.git#64a647f8d817c6989edc000613b5afae19f03f99-685048441e1cd935b622bba47d3ca612e75b4ef6 Loaded 5001 nodes in revision graph Searching for test results: 181233 pass 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8c51cd970509b97d8378d175646ec32889828158 64a647f8d817c6989edc000613b5afae19f03f99 181246 fail 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8c51cd970509b97d8378d175646ec32889828158 cb8b18d49ad804108ead8667179794b0ead66f2a 181247 pass 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8c51cd970509b97d8378d175646ec32889828158 64a647f8d817c6989edc000613b5afae19f03f99 181249 fail 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8c51cd970509b97d8378d175646ec32889828158 cb8b18d49ad804108ead8667179794b0ead66f2a 181250 pass 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8c51cd970509b97d8378d175646ec32889828158 f2095a51ac53d2da97f724d49ec3aedbb290080e 181251 pass 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8c51cd970509b97d8378d175646ec32889828158 56a7aaa16bfe43945a0031319c60c7f323c46254 181248 fail 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8c51cd970509b97d8378d175646ec32889828158 685048441e1cd935b622bba47d3ca612e75b4ef6 181252 fail 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8c51cd970509b97d8378d175646ec32889828158 b46e8207d0aedad7bb23d14c055d95e625d366b0 181253 pass 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8c51cd970509b97d8378d175646ec32889828158 56a7aaa16bfe43945a0031319c60c7f323c46254 181255 fail 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8c51cd970509b97d8378d175646ec32889828158 b46e8207d0aedad7bb23d14c055d95e625d366b0 181256 pass 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8c51cd970509b97d8378d175646ec32889828158 56a7aaa16bfe43945a0031319c60c7f323c46254 181258 fail 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8c51cd970509b97d8378d175646ec32889828158 b46e8207d0aedad7bb23d14c055d95e625d366b0 Searching for interesting versions Result found: flight 181233 (pass), for basis pass For basis failure, parent search stopping at 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8c51cd970509b97d8378d175646ec32889828158 56a7aaa16bfe43945a0031319c60c7f323c46254, results HASH(0x5578f6ae9c48) HASH(0x5578f6ae6838) HASH(0x5578f6ae4cb0) For basis failure, parent search stopping at 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8c51cd970509b97d8378d175646ec32889828158 f2095a51ac53d2da97f724d49ec3aedbb290080e, results HASH(0x5578f6ae6e38) For basis failure, parent search stopping at 3d273dd05e51e5a1\ ffba3d98c7437ee84e8f8764 8c51cd970509b97d8378d175646ec32889828158 64a647f8d817c6989edc000613b5afae19f03f99, results HASH(0x5578f6adcb48) HASH(0x5578f6ae1780) Result found: flight 181246 (fail), for basis failure (at ancestor ~1551) Repro found: flight 181247 (pass), for basis pass Repro found: flight 181248 (fail), for basis failure 0 revisions at 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8c51cd970509b97d8378d175646ec32889828158 56a7aaa16bfe43945a0031319c60c7f323c46254 No revisions left to test, checking graph state. Result found: flight 181251 (pass), for last pass Result found: flight 181252 (fail), for first failure Repro found: flight 181253 (pass), for last pass Repro found: flight 181255 (fail), for first failure Repro found: flight 181256 (pass), for last pass Repro found: flight 181258 (fail), for first failure *** Found and reproduced problem changeset *** Bug is in tree: xen git://xenbits.xen.org/xen.git Bug introduced: b46e8207d0aedad7bb23d14c055d95e625d366b0 Bug not present: 56a7aaa16bfe43945a0031319c60c7f323c46254 Last fail repro: http://logs.test-lab.xenproject.org/osstest/logs/181258/ commit b46e8207d0aedad7bb23d14c055d95e625d366b0 Author: Luca Fancellu Date: Wed May 31 08:24:11 2023 +0100 xen/tools: add sve parameter in XL configuration Add sve parameter in XL configuration to allow guests to use SVE feature. Signed-off-by: Luca Fancellu Reviewed-by: Anthony PERARD Revision graph left in /home/logs/results/bisect/xen-unstable-smoke/build-amd64.xen-build.{dot,ps,png,html,svg}. ---------------------------------------- 181258: tolerable ALL FAIL flight 181258 xen-unstable-smoke real-bisect [real] http://logs.test-lab.xenproject.org/osstest/logs/181258/ Failures :-/ but no regressions. Tests which did not succeed, including tests which could not be run: build-amd64 6 xen-build fail baseline untested jobs: build-amd64 fail ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary From xen-devel-bounces@lists.xenproject.org Wed Jun 07 16:29:48 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 16:29:48 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544927.851038 (Exim 4.92) (envelope-from ) id 1q6w2T-0001eB-TZ; Wed, 07 Jun 2023 16:29:37 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544927.851038; Wed, 07 Jun 2023 16:29:37 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6w2T-0001e4-QF; Wed, 07 Jun 2023 16:29:37 +0000 Received: by outflank-mailman (input) for mailman id 544927; Wed, 07 Jun 2023 16:29:36 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6w2S-0001dy-3f for xen-devel@lists.xenproject.org; Wed, 07 Jun 2023 16:29:36 +0000 Received: from out5-smtp.messagingengine.com (out5-smtp.messagingengine.com [66.111.4.29]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 7bfd1ac0-0550-11ee-8611-37d641c3527e; Wed, 07 Jun 2023 18:29:33 +0200 (CEST) Received: from compute5.internal (compute5.nyi.internal [10.202.2.45]) by mailout.nyi.internal (Postfix) with ESMTP id BF0E05C0086; Wed, 7 Jun 2023 12:29:32 -0400 (EDT) Received: from mailfrontend1 ([10.202.2.162]) by compute5.internal (MEProxy); Wed, 07 Jun 2023 12:29:32 -0400 Received: by mail.messagingengine.com (Postfix) with ESMTPA; Wed, 7 Jun 2023 12:29:32 -0400 (EDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 7bfd1ac0-0550-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= invisiblethingslab.com; h=cc:cc:content-type:content-type:date :date:from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:sender:subject:subject:to:to; s=fm1; t= 1686155372; x=1686241772; bh=bUr9dN6x+m5YErGXG0FICdeoXK08ytJsDEF SjGRa3as=; b=OrZvbelqCa/0tqKTechh0z0HPyvmfhxGP2W3ddoa8fVZRmQXlXV Vjp2GR3zZyS+SRQzKlfBju3iLOduALS8eB4RYO3uj1duw3aY4aj4MkV+hfiUOgqJ lV+jJBsh2vC+l1y707PpwWJz8qwjZ4pN/GCdiV9+sA1C+DwLeoVfxMEgaFGdWcVg puim0Z1Gyp917MTEnDb/pT+Ya7Aaz02Z20v4BOAeMVnlI6RHswffQV24K2963ST3 pztIBcEPqwoJcaYhe4XvriF0SsA4ef61AdsQc1C0xUmgT7iM/qsaU5gSZON5LLqb VdE1Y6+/iOpBLl5QJO37vrGBAhhNOdbwZPQ== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-type:content-type:date:date :feedback-id:feedback-id:from:from:in-reply-to:in-reply-to :message-id:mime-version:references:reply-to:sender:subject :subject:to:to:x-me-proxy:x-me-proxy:x-me-sender:x-me-sender :x-sasl-enc; s=fm1; t=1686155372; x=1686241772; bh=bUr9dN6x+m5YE rGXG0FICdeoXK08ytJsDEFSjGRa3as=; b=E5lsJTODJhwSHO9/yyANsfAFyHQ1A lQ2GlpI14MxzAL1Pk+TDMJ2qKrmAJs19J310TkgO3nUKvZjwJ3JfRIgb6r+QWFO+ oqLbAW4Q0Y55ACD3RWWrIi/V4a0+pD6cYH33ycyMqbV4Z9ThAWrMPKv03my1uNlN fW612SIN/aQMX71OPPZderfopsfUGOktZJ8VfMdZ4X4HTdXOiccKX8/Wafhx4HKi dPgHYNQ9qHhRTWtgHKen/U46L3rUYaOeY+sZVaDy6KvaDq28wKNRz+mZpEPFvo1U T1s/PIvvAbsM7uE/KBIHVAHj0XYDMYY6XgQv0Tio3nTI70IqZ7c69Z8bA== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvhedrgedtgedguddtvdcutefuodetggdotefrod ftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfgh necuuegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmd enucfjughrpeffhffvvefukfhfgggtuggjsehgtderredttdejnecuhfhrohhmpeffvghm ihcuofgrrhhivgcuqfgsvghnohhurhcuoeguvghmihesihhnvhhishhisghlvghthhhinh hgshhlrggsrdgtohhmqeenucggtffrrghtthgvrhhnpedvjeetgeekhfetudfhgfetffeg fffguddvgffhffeifeeikeektdehgeetheffleenucevlhhushhtvghrufhiiigvpedtne curfgrrhgrmhepmhgrihhlfhhrohhmpeguvghmihesihhnvhhishhisghlvghthhhinhhg shhlrggsrdgtohhm X-ME-Proxy: Feedback-ID: iac594737:Fastmail Date: Wed, 7 Jun 2023 12:29:26 -0400 From: Demi Marie Obenour To: Roger Pau =?utf-8?B?TW9ubsOp?= Cc: Jens Axboe , Alasdair Kergon , Mike Snitzer , dm-devel@redhat.com, Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= , linux-block@vger.kernel.org, linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org Subject: Re: [PATCH v2 16/16] xen-blkback: Inform userspace that device has been opened Message-ID: References: <20230530203116.2008-1-demi@invisiblethingslab.com> <20230530203116.2008-17-demi@invisiblethingslab.com> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha512; protocol="application/pgp-signature"; boundary="T6W25fvao3OB3Dc6" Content-Disposition: inline In-Reply-To: --T6W25fvao3OB3Dc6 Content-Type: text/plain; protected-headers=v1; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Date: Wed, 7 Jun 2023 12:29:26 -0400 From: Demi Marie Obenour To: Roger Pau =?utf-8?B?TW9ubsOp?= Cc: Jens Axboe , Alasdair Kergon , Mike Snitzer , dm-devel@redhat.com, Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= , linux-block@vger.kernel.org, linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org Subject: Re: [PATCH v2 16/16] xen-blkback: Inform userspace that device has been opened On Wed, Jun 07, 2023 at 10:44:48AM +0200, Roger Pau Monn=C3=A9 wrote: > On Tue, Jun 06, 2023 at 01:31:25PM -0400, Demi Marie Obenour wrote: > > On Tue, Jun 06, 2023 at 11:15:37AM +0200, Roger Pau Monn=C3=A9 wrote: > > > On Tue, May 30, 2023 at 04:31:16PM -0400, Demi Marie Obenour wrote: > > > > Set "opened" to "0" before the hotplug script is called. Once the > > > > device node has been opened, set "opened" to "1". > > > >=20 > > > > "opened" is used exclusively by userspace. It serves two purposes: > > > >=20 > > > > 1. It tells userspace that the diskseq Xenstore entry is supported. > > > >=20 > > > > 2. It tells userspace that it can wait for "opened" to be set to 1. > > > > Once "opened" is 1, blkback has a reference to the device, so > > > > userspace doesn't need to keep one. > > > >=20 > > > > Together, these changes allow userspace to use block devices with > > > > delete-on-close behavior, such as loop devices with the autoclear f= lag > > > > set or device-mapper devices with the deferred-remove flag set. > > >=20 > > > There was some work in the past to allow reloading blkback as a > > > module, it's clear that using delete-on-close won't work if attempting > > > to reload blkback. > >=20 > > Should blkback stop itself from being unloaded if delete-on-close is in > > use? >=20 > Hm, maybe. I guess that's the best we can do right now. I=E2=80=99ll implement this. > > > Isn't there some existing way to check whether a device is opened? > > > (stat syscall maybe?). > >=20 > > Knowing that the device has been opened isn=E2=80=99t enough. The bloc= k script > > needs to be able to wait for blkback (and not something else) to open > > the device. Otherwise it will be confused if the device is opened by > > e.g. udev. >=20 > Urg, no, the block script cannot wait indefinitely for blkback to open > the device, as it has an execution timeout. blkback is free to only > open the device upon guest frontend connection, and that (when using > libxl) requires the hotplug scripts execution to be finished so the > guest can be started. I=E2=80=99m a bit confused here. My understanding is that blkdev_get_by_de= v() already opens the device, and that happens in the xenstore watch handler. I have tested this with delete-on-close device-mapper devices, and it does work. > > > I would like to avoid adding more xenstore blkback state if such > > > information can be fetched from other methods. > >=20 > > I don=E2=80=99t think it can be, unless the information is passed via a > > completely different method. Maybe netlink(7) or ioctl(2)? Arguably > > this information should not be stored in Xenstore at all, as it exposes > > backend implementation details to the frontend. >=20 > Could you maybe use sysfs for this information? Probably? This would involve adding a new file in sysfs. > We have all sorts of crap in xenstore, but it would be best if we can > see of placing stuff like this in another interface. Fair. > Thanks, Roger. --=20 Sincerely, Demi Marie Obenour (she/her/hers) Invisible Things Lab --T6W25fvao3OB3Dc6 Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQIzBAEBCgAdFiEEdodNnxM2uiJZBxxxsoi1X/+cIsEFAmSAsGoACgkQsoi1X/+c IsEv9xAAh+0oREoh82YjIN1bf0M1x4FiXf8Db1W1nyF5Mx6GR8TSALA4UdBF2ZhR wBwIpZKAJBxV5wW48ABeWatkop35EaE8V3Ort7gf5IeOoX4f13W3KiPPEO49b6Ar hEdL93rM4XH4bNxeXAYh7OUi2of/zjJl+n4IOVV8Bl0c5WL65J+H4yQ+6VQdcsgr K1DBOJgLy1ljc7MJWQHW44MFVvx4DE84BjTO1fuAZzrQ7OG3EvGh6f0WcodtzZk9 gfaSAv1c98EZcihrdaHl0NDxgybr8BZug+L1xq9so8+z5Kywi98TMOqd20pGwJkX sALzQMVV/0gdWv1pXVxH/c8RO3RO0+eZoCS/N0/a3Ae/EldhlO8DKZ8UXq+vJ1V7 L4eGvdfBU1oqTKTXq5jekUTPF66oaW9TEFYTkW64n/hWRdFiRG8PEoglMC5YZB9G yrCgqCdHPDHtG3TEPE0p1HqF9DFGffIE/OGhzEXvx0UXdVdB+J8oZa+G9W2yaKMZ kuyC54J0FhOMkRFodoGgkpWnxpiC6mJMHnlEdpeSxWI41elg3jvH9MkHVOL9sTrr bSQnmjwNBlxMlsbjo9Li6vzinnLNvwQR2LGT0t9vk7GFBI9wa0LWMReyO3mzz5c8 E5/g1pRZo3Jw/n/FWdQfdWiQQ3T4KSmHuV4ddrApHwIhrnl6WAg= =I2t4 -----END PGP SIGNATURE----- --T6W25fvao3OB3Dc6-- From xen-devel-bounces@lists.xenproject.org Wed Jun 07 17:04:45 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 17:04:45 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544934.851050 (Exim 4.92) (envelope-from ) id 1q6waL-00061C-LJ; Wed, 07 Jun 2023 17:04:37 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544934.851050; Wed, 07 Jun 2023 17:04:37 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6waL-000615-If; Wed, 07 Jun 2023 17:04:37 +0000 Received: by outflank-mailman (input) for mailman id 544934; Wed, 07 Jun 2023 17:04:35 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6waJ-00060v-R4; Wed, 07 Jun 2023 17:04:35 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6waJ-0001ZR-Jd; Wed, 07 Jun 2023 17:04:35 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6waJ-0001wx-31; Wed, 07 Jun 2023 17:04:35 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q6waJ-0002tn-2P; Wed, 07 Jun 2023 17:04:35 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=ddSvehBhaX7X7NTutlPYu90FbZVF/EGXWMSxcXCdRCs=; b=FKGYYe+CUfy1tg9DNPIWgtmzgc 9eXAN5ZEudopwtBIWS8u1I+b1lQqYrQS1YsXnj4aqeWY3CJQs+XMNZIGQdlay5DRS73UY1U6SyNns hcYsCj1IZNX4a2BQxSvBkFutthxPq0cMQF3sD0O1WWdtQcvGcfrW85MqW7Ar95IYWpiY=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable-smoke test] 181254: regressions - trouble: blocked/fail X-Osstest-Failures: xen-unstable-smoke:build-amd64:xen-build:fail:regression xen-unstable-smoke:build-arm64-xsm:xen-build:fail:regression xen-unstable-smoke:build-armhf:xen-build:fail:regression xen-unstable-smoke:build-amd64-libvirt:build-check(1):blocked:nonblocking xen-unstable-smoke:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking xen-unstable-smoke:test-amd64-amd64-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking xen-unstable-smoke:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking xen-unstable-smoke:test-armhf-armhf-xl:build-check(1):blocked:nonblocking X-Osstest-Versions-This: xen=685048441e1cd935b622bba47d3ca612e75b4ef6 X-Osstest-Versions-That: xen=64a647f8d817c6989edc000613b5afae19f03f99 From: osstest service owner Date: Wed, 07 Jun 2023 17:04:35 +0000 flight 181254 xen-unstable-smoke real [real] http://logs.test-lab.xenproject.org/osstest/logs/181254/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-amd64 6 xen-build fail REGR. vs. 181233 build-arm64-xsm 6 xen-build fail REGR. vs. 181233 build-armhf 6 xen-build fail REGR. vs. 181233 Tests which did not succeed, but are not blocking: build-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a version targeted for testing: xen 685048441e1cd935b622bba47d3ca612e75b4ef6 baseline version: xen 64a647f8d817c6989edc000613b5afae19f03f99 Last test of basis 181233 2023-06-07 02:04:37 Z 0 days Failing since 181246 2023-06-07 11:02:03 Z 0 days 3 attempts Testing same since 181248 2023-06-07 13:00:26 Z 0 days 2 attempts ------------------------------------------------------------ People who touched revisions under test: Christian Lindig George Dunlap Henry Wang # CHANGELOG Juergen Gross Julien Grall Luca Fancellu jobs: build-arm64-xsm fail build-amd64 fail build-armhf fail build-amd64-libvirt blocked test-armhf-armhf-xl blocked test-arm64-arm64-xl-xsm blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64 blocked test-amd64-amd64-libvirt blocked ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 447 lines long.) From xen-devel-bounces@lists.xenproject.org Wed Jun 07 17:28:32 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 17:28:32 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544941.851060 (Exim 4.92) (envelope-from ) id 1q6wxJ-00007e-Ib; Wed, 07 Jun 2023 17:28:21 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544941.851060; Wed, 07 Jun 2023 17:28:21 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6wxJ-00007W-Fj; Wed, 07 Jun 2023 17:28:21 +0000 Received: by outflank-mailman (input) for mailman id 544941; Wed, 07 Jun 2023 17:28:19 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6wxH-00007M-Sn; Wed, 07 Jun 2023 17:28:19 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6wxH-000272-NM; Wed, 07 Jun 2023 17:28:19 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6wxH-0002tt-8P; Wed, 07 Jun 2023 17:28:19 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q6wxH-000883-83; Wed, 07 Jun 2023 17:28:19 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=OLFHzd7gDZ5b9iwe6E8JDLUl6onK67cq3snUxs+ya1k=; b=SISQLaWYOeox31y0D0ZNPfkO+a uE9Rieg+YANcwjMGjESgkc4G+cGeBI1RscmMZPHMb/Sx9BThnydN2eEKLiQFk/SUGjfb/+nuUb/5Y tXmZYupZUBdh/z6EaHt9iH1gd4jVPTd0fW+mhgS48RDjqLUMaWWOhj+Z+qqFoEPe9loI=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [linux-linus test] 181240: regressions - FAIL X-Osstest-Failures: linux-linus:test-armhf-armhf-xl-credit1:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-vhd:guest-start/debian.repeat:fail:heisenbug linux-linus:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:debian-hvm-install:fail:heisenbug linux-linus:test-armhf-armhf-examine:reboot:fail:nonblocking linux-linus:test-armhf-armhf-xl-multivcpu:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-arndale:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking linux-linus:test-armhf-armhf-xl-credit2:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking linux-linus:test-armhf-armhf-libvirt:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-raw:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-qcow2:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-vhd:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-rtds:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-qcow2:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-raw:migrate-support-check:fail:nonblocking X-Osstest-Versions-This: linux=a4d7d701121981e3c3fe69ade376fe9f26324161 X-Osstest-Versions-That: linux=6c538e1adbfc696ac4747fb10d63e704344f763d From: osstest service owner Date: Wed, 07 Jun 2023 17:28:19 +0000 flight 181240 linux-linus real [real] http://logs.test-lab.xenproject.org/osstest/logs/181240/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: test-armhf-armhf-xl-credit1 8 xen-boot fail REGR. vs. 180278 Tests which are failing intermittently (not blocking): test-amd64-amd64-xl-vhd 21 guest-start/debian.repeat fail in 181217 pass in 181240 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm 12 debian-hvm-install fail pass in 181217 Tests which did not succeed, but are not blocking: test-armhf-armhf-examine 8 reboot fail like 180278 test-armhf-armhf-xl-multivcpu 8 xen-boot fail like 180278 test-armhf-armhf-xl-arndale 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 180278 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 180278 test-armhf-armhf-xl-credit2 8 xen-boot fail like 180278 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 180278 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 180278 test-armhf-armhf-libvirt 8 xen-boot fail like 180278 test-armhf-armhf-libvirt-raw 8 xen-boot fail like 180278 test-armhf-armhf-libvirt-qcow2 8 xen-boot fail like 180278 test-armhf-armhf-xl 8 xen-boot fail like 180278 test-armhf-armhf-xl-vhd 8 xen-boot fail like 180278 test-armhf-armhf-xl-rtds 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 180278 test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qcow2 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass test-amd64-amd64-libvirt-raw 14 migrate-support-check fail never pass version targeted for testing: linux a4d7d701121981e3c3fe69ade376fe9f26324161 baseline version: linux 6c538e1adbfc696ac4747fb10d63e704344f763d Last test of basis 180278 2023-04-16 19:41:46 Z 51 days Failing since 180281 2023-04-17 06:24:36 Z 51 days 97 attempts Testing same since 181217 2023-06-06 15:44:55 Z 1 days 2 attempts ------------------------------------------------------------ 2631 people touched revisions under test, not listing them all jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl fail test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm fail test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-freebsd11-amd64 pass test-amd64-amd64-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale fail test-amd64-amd64-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 fail test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 fail test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine fail test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt fail test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu fail test-amd64-amd64-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-amd64-pygrub pass test-amd64-amd64-libvirt-qcow2 pass test-armhf-armhf-libvirt-qcow2 fail test-amd64-amd64-libvirt-raw pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw fail test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds fail test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-amd64-xl-vhd pass test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd fail ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 332671 lines long.) From xen-devel-bounces@lists.xenproject.org Wed Jun 07 17:39:35 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 17:39:35 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544949.851071 (Exim 4.92) (envelope-from ) id 1q6x7v-0001k5-My; Wed, 07 Jun 2023 17:39:19 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544949.851071; Wed, 07 Jun 2023 17:39:19 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6x7v-0001jy-K1; Wed, 07 Jun 2023 17:39:19 +0000 Received: by outflank-mailman (input) for mailman id 544949; Wed, 07 Jun 2023 17:39:18 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6x7u-0001jo-25; Wed, 07 Jun 2023 17:39:18 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6x7t-0002S0-Qo; Wed, 07 Jun 2023 17:39:17 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6x7t-0003Yq-Jh; Wed, 07 Jun 2023 17:39:17 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q6x7t-0002Eh-HC; Wed, 07 Jun 2023 17:39:17 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=XzSjRwd6ounjcAcT0VrIZvMP/1aS/f0X377+E8FF9PQ=; b=sOLUoRvMNBenW6/L4sn/OOlklS FzYUHUinsd/0G0F7meAwspRN4v5jX6tWzr1qiEmjyjJB0ypb4+HrfGcVS8sVH4I3EpIN/Sb13LtCk vT9+B4O6CCobu6btvo+uy6YoG+WkwIw/9fU1TldRprQIPDZE0yj2OPu5qtiPgvt5YMwc=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [ovmf test] 181257: all pass - PUSHED X-Osstest-Versions-This: ovmf=8d238f1433397397b4d05b38cb2460929429241f X-Osstest-Versions-That: ovmf=c082da89cfb2dd9640272741b7f176ede3cc41bb From: osstest service owner Date: Wed, 07 Jun 2023 17:39:17 +0000 flight 181257 ovmf real [real] http://logs.test-lab.xenproject.org/osstest/logs/181257/ Perfect :-) All tests in this flight passed as required version targeted for testing: ovmf 8d238f1433397397b4d05b38cb2460929429241f baseline version: ovmf c082da89cfb2dd9640272741b7f176ede3cc41bb Last test of basis 181245 2023-06-07 09:11:19 Z 0 days Testing same since 181257 2023-06-07 15:40:44 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Ni, Ray Ray Ni Sami Mujawar jobs: build-amd64-xsm pass build-i386-xsm pass build-amd64 pass build-i386 pass build-amd64-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-i386-pvops pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Pushing revision : To xenbits.xen.org:/home/xen/git/osstest/ovmf.git c082da89cf..8d238f1433 8d238f1433397397b4d05b38cb2460929429241f -> xen-tested-master From xen-devel-bounces@lists.xenproject.org Wed Jun 07 18:08:27 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 18:08:27 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544958.851087 (Exim 4.92) (envelope-from ) id 1q6xZv-0005Es-Tz; Wed, 07 Jun 2023 18:08:15 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544958.851087; Wed, 07 Jun 2023 18:08:15 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6xZv-0005El-Qx; Wed, 07 Jun 2023 18:08:15 +0000 Received: by outflank-mailman (input) for mailman id 544958; Wed, 07 Jun 2023 18:08:14 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6xZt-0005Ef-UF for xen-devel@lists.xenproject.org; Wed, 07 Jun 2023 18:08:14 +0000 Received: from esa5.hc3370-68.iphmx.com (esa5.hc3370-68.iphmx.com [216.71.155.168]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 42de3c2d-055e-11ee-b232-6b7b168915f2; Wed, 07 Jun 2023 20:08:12 +0200 (CEST) Received: from mail-dm6nam12lp2176.outbound.protection.outlook.com (HELO NAM12-DM6-obe.outbound.protection.outlook.com) ([104.47.59.176]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 07 Jun 2023 14:07:59 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by PH0PR03MB5718.namprd03.prod.outlook.com (2603:10b6:510:40::23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Wed, 7 Jun 2023 18:07:54 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606%4]) with mapi id 15.20.6455.030; Wed, 7 Jun 2023 18:07:53 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 42de3c2d-055e-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686161292; h=message-id:date:from:subject:to:cc:references: in-reply-to:content-transfer-encoding:mime-version; bh=D78uW7GzEZhpHSkh+vvBdzahosiyg5WbVwnUC+OiwA0=; b=RlgXUJqtVdQm+KRnb0+YdLEyQ96cJ6yYVULVjINGH+CVE0yrEhden4P/ QEDp7KvmNeqWyXRdydMA2nmw0XVq+85dIaOP8mslagL2LeKEGy4TfBMC+ yT6fgdfuszGCeZdc2NB1I8ljbirPAsHJlcsr00356c1NhKB1nn45oDCuu k=; X-IronPort-RemoteIP: 104.47.59.176 X-IronPort-MID: 110703816 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:8Oeft65fRBS2FS4+AI7A1AxRtL/GchMFZxGqfqrLsTDasY5as4F+v mBMCm/QbveOZDT8KNkiaoni908G7cOEzoM1TlBprSE3Hi5G8cbLO4+Ufxz6V8+wwm8vb2o8t plDNYOQRCwQZiWBzvt4GuG59RGQ7YnRGvynTraCYnsrLeNdYH9JoQp5nOIkiZJfj9G8Agec0 fv/uMSaM1K+s9JOGjt8B5mr9lU35JwehBtC5gZlPa4T4weE/5UoJMl3yZ+ZfiOQrrZ8RoZWd 86bpJml82XQ+QsaC9/Nut4XpWVTH9Y+lSDX4pZnc/DKbipq/0Te4Y5iXBYoUm9Fii3hojxE4 I4lWapc6+seFvakdOw1C3G0GszlVEFM0OevzXOX6aR/w6BaGpdFLjoH4EweZOUlFuhL7W5m+ 8YmCWEXQ0G/nt2V/bSqe/h925sjM5y+VG8fkikIITDxK98DGMqGb4CUoNhS0XE3m9xEGuvYa 4wBcz1zYR/cYhpJfFAKFJY5m+TujX76G9FagAvN+exrvC6OnUooj+aF3Nn9I7RmQe18mEqCq 32A1GP+GhwAb/SUyCaf82LqjejK9c/+cNtLTOLgra4z3jV/wEQRMwQvDHzgnMKfpVCOd49dF FYlqgMH+P1aGEuDC4OVsweDiGWEtwEac9NWGvYm4RrLy628yxaUAC0IQyBMbPQitdQqXno62 1mRhdTrCDdz9rqPRhq16q+ZpCmpPi49N2YaeSgeQA0K4t/urZsyiB2JRdFmeIa3hNDoHTD7w xiRsTMzwb4UiKYj1bi//F3BqyKhoN7OVAFdzh7MQmuv4wd9ZYikT4+l817W6bBHNonxZkaFl GgJnY6Z9u9mMH2WvCmEQeFIELT34f+AaWfYmQQ2QMdn8Cmx8Xm+e4wW+Ct5OEpiLscDf3nuf VPXvgRSopRUORNGcJNKXm54MOxypYCIKDgvfqu8ggZmCnSpSDK6wQ== IronPort-HdrOrdr: A9a23:glxx+q6et7Qn0Wn6rgPXwAzXdLJyesId70hD6qkQc3Fom62j5q WTdZEgvyMc5wx/ZJhNo7690cq7MBHhHPxOgbX5VI3KNGXbUQOTR72KhrGSoAEIdReeygZcv5 0QCZSXCrfLfCVHZRCR2njFLz4iquP3j5xBnY3lvhNQpZkBUdAZ0+9+YDzrdXFedU19KrcSMo GT3cZDryrIQwVtUizqbkN1OdQqvrfw5evbXSI= X-Talos-CUID: 9a23:TB6R2GD+hSNQlZj6Eyddym9FAO10TmTi70rWMn6pGDs2SKLAHA== X-Talos-MUID: =?us-ascii?q?9a23=3Ai5uF0gwpWDWRYb1Pr/AVmZe5EOyaqKaVEXlUts4?= =?us-ascii?q?7gO+rKxxcZjWilgXna6Zyfw=3D=3D?= X-IronPort-AV: E=Sophos;i="6.00,224,1681185600"; d="scan'208";a="110703816" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=T8uIS1YoGC9qxbavbVfEvtrXXtcS6OJB1KMXqOoQDMEgBT2Dg1T1ALxQQdr8E3MUFhlCO3aaBxIUjAGwqU/0TIjBkjyHJ4plvfhtdZi2kjh66H9tdSS857PcaZF6g32sgcvxxqO35Tkm3J+MoR+6ksGa01zyzVWvLuDt/jo0IG0l9Dse3tfWT/Din/AJGf1dGPaJegGARZxtTxP0PxQQ6hq11r8VIJyp7962bT+d6Z9gKkqy/wBkEpmInZrmVoPCCcwoc2fCbQuOy0YbJhWHHw81NEk57xdH+vi9eHK1MxxdNoqkDblvlhgAnS6wBMMH2SJ2r+19S5EFLm1WOqVbPw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=vldaK20ltYy9hgaPKrVmj2hkVjXD0XLuGfzjcC48qMk=; b=dk6QXTdqfhhOPQ2MNYb491LosY5QfC1ChHQ/HN+iG7TeC2Zv5+7si7Wi9Isn2wg7bSeFNL7pknr4nOqTN8lG9XTFNn1v3aIXHA2ybjv747XnaMT+7j/u06F6YgQ3Vm0IU2cujHSLZ9is2+rtzsBaXS6KLvY9/8TC759wedbmGImua+MtkLrSfazoED7X0vTINTrkpZFn+/8sbdE5ySgriFhE5aIHs0+adr3BlK/UIV+TcPyoK2YjWWDLwYc4Cud5pfxUiNXH58bvhRFufrdxk9x/z1b7neyt1Led4J2dBHi7blQKnjK73qjz2gOUw/rLRz60FuHcYCyYfvyl2QeTFQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=vldaK20ltYy9hgaPKrVmj2hkVjXD0XLuGfzjcC48qMk=; b=CGjbnFe63g5gZoPWlUD3CpfA+A3ANG1WIp8ejxg6rCoX0csU6aL51TSGDZe+Z5vDUpSRC8u6baUWCRNPOx4Z56oBERvpsC5DT30NmySSxiGlcsLN5NQyxPZCyCeRvR6pqTKG7cqrT52zzgN1T9pGCCcCPrUzNkq/srBc349jlKc= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: Date: Wed, 7 Jun 2023 19:07:48 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 From: Andrew Cooper Subject: Re: [PATCH 0/3] Initial support for Power Content-Language: en-GB To: Shawn Anastasio , xen-devel@lists.xenproject.org Cc: tpearson@raptorengineering.com, George Dunlap , Jan Beulich , Julien Grall , Stefano Stabellini , Wei Liu References: In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO4P123CA0678.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:351::18) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|PH0PR03MB5718:EE_ X-MS-Office365-Filtering-Correlation-Id: 4bef3025-d6b8-4aec-3740-08db67821d1f X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 7/oD2Dl5/Rmwbbp8g/y/aOG3vKOyKjhTvCW5JvqSr9jwHtRW6PawANVxdVUxaMYw3TCgzXdyi2cfUrDIOizHNOyK/HPs5RF2ib3e55tzNjLBPlods6Hk4WXifs16mT1bF3ca9LtnMoyiY7owtLrm9/2WVrM8a995ztRrO+f9Fcx1m3KJNSBlvA0AcPT+oYAhjJ6ETAxXaWPcUn8YaoEW1Z1OLwfsMtWMKf61MABYM65hwbgxEmW1E2vnxtJ/rIB7T5CNZRaOnVM0duGhPaAsobd7Oz9DSag8MiTNLVbYd71BEvDABP+OWSB9KPxLc3EpVS3hSGPbyM+sfxHVmHdZ6nz2l8720Ht4q/84kgo7f7BEAqyiKekurh1fT6rzVh/1icbZQsJ0UZ4XK0cFoJqTHWERU6v7AEKFwiFsBisxK7imNgi6nPG0Zqto1yiOTjtyWzoa1IIgiRGfC8rAMpkOCfHTDX9Rupi6dWoPrOI0wd05qzsg8yNIX6m5zmkJE0JtnMn/tFlJW881C32pRfIaB88wANbqmZcsNHCZkAcEy5HMCFDTqlsDloxC5ay/2ywR8pVaKhv6P5UFQH8RyK0avHdy6IFSVQE06A4VLRWFA8ZEXBx9eC/GIxo303HJZrxtPysXGW4ev0J9zeZwjlGP/g== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(376002)(346002)(39860400002)(366004)(396003)(136003)(451199021)(8676002)(4326008)(66556008)(66476007)(8936002)(66946007)(31686004)(5660300002)(316002)(41300700001)(54906003)(66899021)(2906002)(478600001)(82960400001)(38100700002)(6512007)(6506007)(86362001)(53546011)(186003)(26005)(31696002)(36756003)(6486002)(966005)(2616005)(83380400001)(6666004)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?bGQ5NGNjMUZNVDI3VGllK3NTZHkrbkI3SWxyNk5DN3ZqOElGaEhVbFVaV1VC?= =?utf-8?B?dGdqZHp5VDBVU1hqSDJIT3RQRndzMGZMd2Z4Q1hPTnkralY2c0lNbUp1c0dy?= =?utf-8?B?YnpMbC9uRjNNeFMyTTJMRk1KcXhqZFBBOVNDaXErOG9teHBlcFZ5emF1TUZ1?= =?utf-8?B?MCtNay91QTFUaU5tTDBob1ZSNElXOXZ5dC9HTm1mVURYNFFNVFJxZGhVUUlZ?= =?utf-8?B?b1YyTERIYkRMRDBJbGpPY3lkMGhaK0xJUzcvak5qOG9kY0tmMkw5Z0tpdWJr?= =?utf-8?B?L0grelFVbWNtaTlSOHJyS3pnUWZXWk0xalZnN2ptSmJLWUdiQkdIdlZOai84?= =?utf-8?B?RTd4eDU0eTRTNGk2M2FtQXl2eUE5UEtvdXNlSFVGWFJiMXFUUmo4S0ttVDVu?= =?utf-8?B?SlR5QUtSdGhVVS9ZSjRWYWpzL29KK1NLdG1qeXU4SGhnRTdGUm9tdDgzbjFs?= =?utf-8?B?WWh4eTVSQ0N6OS9peUFIc1RQWE1aUGREUy9GamxCOUFkQ1dVWGVJdXBBY0JQ?= =?utf-8?B?SXJ3UldLVTNlQmZFR21DeHlQMDVJdUR1YlhCL3hJQ0VJNUR3Ym5TbHVCMkFJ?= =?utf-8?B?Tzd6T29FSG4yem9aMzZVZ2lQMmhPZzZEdTJJMmRuaG1XK2lNU2RIbHk2QWJp?= =?utf-8?B?Nm1GTWVIS3FRdDZoOWFvRzRmS2lLOUpRTmdsQllHT1pOR01VU1k2QSs4ejBs?= =?utf-8?B?TUxWS0c5ZENaOU1VTkhnUUZKMXl2NUtnclZqMTJmajJvdnZQZ3lkTEszRjVn?= =?utf-8?B?L2NvR0VXaWhXU3NYMnQwc2VDYzMrdkxlMk5haGtRR2tMRktyUFFMRkV2R3VJ?= =?utf-8?B?eE9YdTlBS3FUU2R0dndZSXRLTGZNTzQzQUxTU2pJc0ZpYXFOT1dXMjV4T2Ey?= =?utf-8?B?SXhXUmVWczZXa2N3UEpkQ3NWd3Nna2llanRvNlMwdGdFMEJkZk42czdZeGV5?= =?utf-8?B?SkVIbG5GS3lsK3NsUjY5ZEtRWG4vYXJsTGkvaUZsdm9Pa28zRUFqZ2ljbHVG?= =?utf-8?B?eEpINitUNFlESnNxY2dNWHg4TW05N2JGWG1hYnlNLy9kcE11RHZ6cVQ2Q0VN?= =?utf-8?B?QnRLa1dub2c1aEJ6RzZpWkhTYUxKUm5RVWVBVUVTQ0NQQWdtdFM3ZmszS2xv?= =?utf-8?B?WHY4M2NQWGdNMFZQWkY1TTFkODNyUWprZlppWHZSQUNQK1lCN0dJUWV2VHdt?= =?utf-8?B?K3Q3ODBibWRpNXRyRkwrVVlBa1h4aTVZVXhLeDRqSThtQUJMVTl2U05NcmVB?= =?utf-8?B?SFVLN0p2OWhqcWl5NkU3OWwvMDFhUE05YWNBV0I1OUlFTEhqaGhxc0tnUTE5?= =?utf-8?B?T2ZGTVdzcVdKeHNpMnZHaXRrQnNCTWFXZTMzTGFVZ2diU1dheDJNSnRXMCth?= =?utf-8?B?M3h1cUhQVUxuKzNvNnl2NVQrSnVZUjViT1ZVRER2dTQzek4ybFdTdENTMnY0?= =?utf-8?B?LzMxYmJ1c1lUeDhSYTJZT0ZQS0xuT0VwVXd3MXA0UThkQzQ1OUNDeEtONm1C?= =?utf-8?B?eUd2bFB2RnNleGFqdTB1OGN2NE0vYnkyTFFrTHVreEwwRFBUa0VMQ09ZVm8r?= =?utf-8?B?bEhmZVR4bGEvb0o2c1BZallTU0cxMno0RFYvcWRYQWRtd0ZlcHVsaUJXR2hS?= =?utf-8?B?cklkdGx2RGZybFZOL2tTc3phaUtPTUpUQllocjhRaEwzOWJKbUFZc3JRenZv?= =?utf-8?B?ekJUNm53OGF2dDBiMTBDSFZheUd6ZFdCYWp5MGx6ejlkVXdUa2x1M2lqdEFj?= =?utf-8?B?UFU3dVpMWnRBd3dSTlUvcmxtZzJZT1FVV01WdVVIVjQ5ZHdqY3dJbnZzV1Bm?= =?utf-8?B?ZXgzTXZLNi9DUUpKMlduTHFLWGEwZDJoU2tQYms5bmtTZHRhcDltYzJqUmlk?= =?utf-8?B?bGVOSTF0cWpORmpyZUhkMWFlQmZybnVRQnRkbEM2UzJDSDBNek9PdnIxUnlo?= =?utf-8?B?QXBMNVd6czgwQnNlOGZTOVlUbHF0YmdYbkFlM2dsRGw2S2drVnNqWU44RjdZ?= =?utf-8?B?bHBTWjI0QVdWbllFZjR5aXhJTjRDV1hlYjkxRFhDTlVqejhhV1Q1eERtYXpk?= =?utf-8?B?WkhKSi9ua1lueGx2OVZhVkh5MFc4QUlDRG1jNy9xWjBQS2R5TDhVak5XeGsw?= =?utf-8?B?L01wOUkyVmY0aUd6bVJrYWRFODYzdmpkRGorcWZRK2tpK0x0cG1BQ3gvZGg0?= =?utf-8?B?R0E9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: =?utf-8?B?V3RkN3B3V3BJcDVaQ2lUS3AvV3grQU5NMllWUHBOMjFjZlpTb1dEN25xWjNX?= =?utf-8?B?TTRPczl3bzBCR3VLaWp4SVlVTUhFQ1Exa2ZKbVNGZXB0Smg5UnppaVdQN2Er?= =?utf-8?B?ZHdtQ0ZWWVhjMDlSR2lsUGk3eWhJSXViVWFGZXZvbG83VE55ZjEvdFZZZi8y?= =?utf-8?B?RlUvc2ZJMnJodldWQmdaclI1QmljR0MzOFJEL2loL29YcXBCZ3VXUGRyelRD?= =?utf-8?B?b2pvamJIdmdyZEJNKytIYjhZLzJ6MFNVMHZ0Zms5WHE4aUlzSUR4TWxVZyt6?= =?utf-8?B?MmpNMHZNdk5RQ2FpM3NJYkFwcWJJNXMyWSs2cXkzL2lGMkNrSFlickcvdmYz?= =?utf-8?B?UXc3VzFSb1pveEo5N09PWForbDhKWnptL1U5dUlyeDNjeHZRWVFnVEZiOTBU?= =?utf-8?B?a0NIWEswN0l5Rk0zWEVjWFVjeXRNS3g3N1FOTFFNbkQxWVdwbGRpRGcySVBk?= =?utf-8?B?YlYzS281cTdOWHVLM2g3SDFnYkFkalhveW83TGRXL3dLbTIwMWlHOEErRDVZ?= =?utf-8?B?SHRha25rdjRoc21YNFZIQjRVOEpqaGFvSmJIeXoxM1BVWVNiQkEvQStheVg2?= =?utf-8?B?eTE2SjJNQm9vbjlIOUtydFFLUU5pOVJOVXhJdGgvam1ycHZDdzZKaHh0dmtU?= =?utf-8?B?SjZXMUZTdmFtZDY0b01TTm5DSE15NGhXdERibHptM0tIVEpoMk15cm5KSFVM?= =?utf-8?B?MWh3WEhXLzQrQ1Jzand0SEVocXhXbkNhcWI4OUhhSEhVY3d3Q1VWY0NrbnNm?= =?utf-8?B?VU80MGZVeHAycmtuZzl2dDRTS05tamN1b1NGckJQUG9hQzFmemZ0RFpHeFdy?= =?utf-8?B?QW9NTkwwSU5idkZGR2t5SzFRTmVqamNMM0FVSFpzU0huUHF1eCtjUjRHL2FV?= =?utf-8?B?dXBvSWV3dFRXRUdxalNnOXpOZTB2WHlYWmRwK0kvT3doSTUzYXBmek9tRVl2?= =?utf-8?B?azNkMkVvT2lEOEx2d0JFbzNXVS9hQysyYmRINFE3dnNnTVpHMzJtR3lsVEVQ?= =?utf-8?B?ekM0WGlWa3ZZR0owZTY0VG9jOEJjbVJoVWRyMzNVOFhOeDllOWF2aS9ZczVM?= =?utf-8?B?ZkNVdnF6NUIxUTJkRHY0Wlh0ME5YOHliZlVsS0FldjZJSi9kaGIxbzZRTEkx?= =?utf-8?B?d1loTDF3UVpONHdRZlZwMmZWVXJnSWlDbDl5cEx5SVprVFphckpnMUNiaVpn?= =?utf-8?B?WDRJckVBTE9pSnI5cnF1ejJBQTgrZUpweFc0bUlqVlA1L050blFMWis1TlVi?= =?utf-8?Q?O3k52ouIHIUmkef?= X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 4bef3025-d6b8-4aec-3740-08db67821d1f X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Jun 2023 18:07:53.8230 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 1HRVm4N1ZGgq5kqxUol651BS36r+0bHmMvoZoxnbCCUcrJPK2l4kSL6+J5uINUbbfcOyxFyvryq/Zlhybve3fp3YSkcCkxIY5pPsVKGCeg4= X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR03MB5718 On 07/06/2023 4:06 pm, Shawn Anastasio wrote: > Hello all, > > This patch series adds support for building a minimal image > (head.o-only) for Power ISA 2.07B+ (POWER8+) systems. The first patch > boots to an infinite loop and the second adds early serial console > support on pseries VMs, with bare metal support planned next. > > Since Xen previously had support for a much older version of the ISA in > version 3.2.3, we were able to carry over some headers and support > routines from that version. Unlike that initial port though, this effort > focuses solely on POWER8+ CPUs that are capable of running in Little > Endian mode. > > With an appropriate powerpc64le-linux-gnu cross-toolchain, the minimal > image can be built with: > > $ make XEN_TARGET_ARCH=ppc64 -C xen openpower_defconfig > $ make XEN_TARGET_ARCH=ppc64 SUBSYSTEMS=xen -C xen TARGET=ppc64/head.o > > The resulting head.o can then be booted in a standard QEMU/pseries VM: > > $ qemu-system-ppc64 -M pseries-5.2 -m 256M -kernel xen/ppc64/head.o \ > -vga none -serial mon:stdio -nographic > > Thanks, > Shawn > > Shawn Anastasio (3): > xen: Add files needed for minimal Power build > xen/ppc: Implement early serial printk on PaPR/pseries > maintainers: Add PPC64 maintainer Oh wow - this is a surprise, but certainly a good one. We've recently done just a similar exercise with RISCV64, starting with getting cross-compilation and a basic smoke test into our CI. We use gitlab CI, and one example is https://gitlab.com/xen-project/xen/-/pipelines/889871648  (search for riscv64 in amongst all the x86 and ARM). The configuration is all in tree, in the automation/ directory.  Relevant files to copy/tweak are: automation/build/archlinux/current-riscv64.dockerfile (x86 cross compile container) automation/scripts/qemu-smoke-riscv64.sh (smoke test script) automation/gitlab-ci/{build,test}.yaml (wire the jobs up) The smoke test looks on stdout for "All set up" which can be any string put out via earlyprintk. If you look around in the Xen tree at bb62c25e3e5c and take the makefile override's in particular, you should be able to get `make -C xen build` work without any magic TARGET= overrides, and without most of the headers you've added in patch 1.  The trick is to have a head.S which doesn't include any files (except the config.h it gets implicitly). We're still trying to do some re-arranging to the common / arch split to remove unnecessary boilerplate.  Having a set of PPC headers too will make it easier to spot the rough edges in the current boundary. Looking to the future, where could XenProject get some real hardware to put into our CI systems?  We'd want to do that in due course. I see you've nominated yourself as maintainer, which is of course fine.  How much time do you have to put towards this?  It is some part of a full time job, or just your own free time? Do you have any suggested reading for those of us who are invariably going to need to learn some of the CPU/platform/architecture details, but aren't really PPC-literate right now? Thanks, and welcome. ~Andrew From xen-devel-bounces@lists.xenproject.org Wed Jun 07 18:29:53 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 18:29:53 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544964.851096 (Exim 4.92) (envelope-from ) id 1q6xuf-0007gx-ML; Wed, 07 Jun 2023 18:29:41 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544964.851096; Wed, 07 Jun 2023 18:29:41 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6xuf-0007gq-JV; Wed, 07 Jun 2023 18:29:41 +0000 Received: by outflank-mailman (input) for mailman id 544964; Wed, 07 Jun 2023 18:29:40 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6xue-0007gk-Dm for xen-devel@lists.xenproject.org; Wed, 07 Jun 2023 18:29:40 +0000 Received: from galois.linutronix.de (galois.linutronix.de [193.142.43.55]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 400e7615-0561-11ee-8611-37d641c3527e; Wed, 07 Jun 2023 20:29:34 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 400e7615-0561-11ee-8611-37d641c3527e From: Thomas Gleixner DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linutronix.de; s=2020; t=1686162573; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=0vhANbTQxhW5giEgdQGefPD2Te4s/UC7F1qDEdOjzG0=; b=Mo7738aD+YotFaAvA5/ObujektbVcCYSas0zkHcEOWfQQrl8ZTc7i/g5UJWB/I7qd3aPpx D9IqLWq8iOUr1ZQqXlngl2cfBao8fNu4CGXKcpGjxggXz8HIfzDmo8h9tC//7H4DY4yI/g XQag2wldSYYM+/zTYUeIU22/CCMKNnrNQFMAYvEffPwFIY5450/eHdZ1quVfXMtlpfzkfm Xjb8T5mR1MBaMavj145MvDt1tuUUtB4EDj0IWGj8080CtI5KuD8T4VSfekn9sXObLqatQY /oNfNVpg7nj2VOqs5BMOldxSX1HC+9bjp7eFGMdHPj+7lZayUHPRYuHYvpk5eA== DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=linutronix.de; s=2020e; t=1686162573; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=0vhANbTQxhW5giEgdQGefPD2Te4s/UC7F1qDEdOjzG0=; b=/h0BEeBYLORpbcZp0MX6wq1y2VNw6+Wea4DCG/vpqwQeLOBfgwkSRAUP4ZtqpiT3J0Wu21 xKOnKuP3naVH45BQ== To: Hou Wenlong , linux-kernel@vger.kernel.org Cc: Lai Jiangshan , Hou Wenlong , Alexey Makhalov , Andrew Morton , Andy Lutomirski , Anshuman Khandual , Borislav Petkov , Boris Ostrovsky , Brian Gerst , Dave Hansen , David Woodhouse , "H. Peter Anvin" , Ingo Molnar , Josh Poimboeuf , Juergen Gross , "Kirill A. Shutemov" , "Mike Rapoport (IBM)" , Pasha Tatashin , Peter Zijlstra , "Srivatsa S. Bhat (VMware)" , Suren Baghdasaryan , Usama Arif , virtualization@lists.linux-foundation.org, VMware PV-Drivers Reviewers , x86@kernel.org, xen-devel@lists.xenproject.org Subject: Re: [PATCH RFC 0/4] x86/fixmap: Unify FIXADDR_TOP In-Reply-To: References: Date: Wed, 07 Jun 2023 20:29:32 +0200 Message-ID: <877csfjfcj.ffs@tglx> MIME-Version: 1.0 Content-Type: text/plain On Mon, May 15 2023 at 16:19, Hou Wenlong wrote: > This patchset unifies FIXADDR_TOP as a variable for x86, allowing the > fixmap area to be movable and relocated with the kernel image in the > x86/PIE patchset [0]. This enables the kernel image to be relocated in > the top 512G of the address space. What for? What's the use case. Please provide a proper argument why this is generally useful and important. Thanks, tglx From xen-devel-bounces@lists.xenproject.org Wed Jun 07 18:57:05 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 18:57:05 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544971.851113 (Exim 4.92) (envelope-from ) id 1q6yKv-0002c8-RN; Wed, 07 Jun 2023 18:56:49 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544971.851113; Wed, 07 Jun 2023 18:56:49 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6yKv-0002c1-Nr; Wed, 07 Jun 2023 18:56:49 +0000 Received: by outflank-mailman (input) for mailman id 544971; Wed, 07 Jun 2023 18:56:47 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6yKt-0002br-Kp; Wed, 07 Jun 2023 18:56:47 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6yKt-00049G-Ej; Wed, 07 Jun 2023 18:56:47 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6yKt-0007jL-5i; Wed, 07 Jun 2023 18:56:47 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q6yKt-0006uZ-5G; Wed, 07 Jun 2023 18:56:47 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=yZQbnaHML6pa1aTkz6VCS+QsQD51hnPm7NH2OkZZlC4=; b=RTrXnOP78lQ4020UKG1poNzztA dR7j7iXfzAvm5WoaIRaJkZ945vyjnDFguFw5qWp/wIA9BwtASStfPXiRiSt8pl12xmsE5HtuXkfmD UE+tsUYI9wz9oKMRPOxYJhlH/9Ezf7brHhRC0Ae9r8teem59+1IKMWJUraH4FWnw6XYw=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [qemu-mainline test] 181244: regressions - FAIL X-Osstest-Failures: qemu-mainline:build-arm64-xsm:xen-build:fail:regression qemu-mainline:build-arm64:xen-build:fail:regression qemu-mainline:build-amd64:xen-build:fail:regression qemu-mainline:build-i386:xen-build:fail:regression qemu-mainline:build-amd64-xsm:xen-build:fail:regression qemu-mainline:build-i386-xsm:xen-build:fail:regression qemu-mainline:build-armhf:xen-build:fail:regression qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-i386:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:build-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:build-arm64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:build-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:build-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pygrub:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking X-Osstest-Versions-This: qemuu=f5e6786de4815751b0a3d2235c760361f228ea48 X-Osstest-Versions-That: qemuu=6972ef1440a9d685482d78672620a7482f2bd09a From: osstest service owner Date: Wed, 07 Jun 2023 18:56:47 +0000 flight 181244 qemu-mainline real [real] http://logs.test-lab.xenproject.org/osstest/logs/181244/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-arm64-xsm 6 xen-build fail REGR. vs. 180691 build-arm64 6 xen-build fail REGR. vs. 180691 build-amd64 6 xen-build fail REGR. vs. 180691 build-i386 6 xen-build fail REGR. vs. 180691 build-amd64-xsm 6 xen-build fail REGR. vs. 180691 build-i386-xsm 6 xen-build fail REGR. vs. 180691 build-armhf 6 xen-build fail REGR. vs. 180691 Tests which did not succeed, but are not blocking: test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-xl-xsm 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-raw 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-xsm 1 build-check(1) blocked n/a test-arm64-arm64-xl 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit1 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit2 1 build-check(1) blocked n/a test-arm64-arm64-xl-thunderx 1 build-check(1) blocked n/a test-arm64-arm64-xl-vhd 1 build-check(1) blocked n/a test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a test-armhf-armhf-libvirt 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-qcow2 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-raw 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a test-armhf-armhf-xl-arndale 1 build-check(1) blocked n/a test-armhf-armhf-xl-multivcpu 1 build-check(1) blocked n/a test-armhf-armhf-xl-rtds 1 build-check(1) blocked n/a test-armhf-armhf-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-amd 1 build-check(1) blocked n/a test-amd64-i386-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-raw 1 build-check(1) blocked n/a test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-i386 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-amd64 1 build-check(1) blocked n/a test-amd64-coresched-i386-xl 1 build-check(1) blocked n/a test-amd64-coresched-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-xsm 1 build-check(1) blocked n/a build-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-shadow 1 build-check(1) blocked n/a test-amd64-amd64-xl-rtds 1 build-check(1) blocked n/a build-arm64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a build-armhf-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a build-i386-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-amd 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-pair 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-qcow2 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-vhd 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvshim 1 build-check(1) blocked n/a test-amd64-amd64-pair 1 build-check(1) blocked n/a test-amd64-amd64-pygrub 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-intel 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd11-amd64 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd12-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-multivcpu 1 build-check(1) blocked n/a test-amd64-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit1 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit1 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit2 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-intel 1 build-check(1) blocked n/a test-amd64-i386-xl 1 build-check(1) blocked n/a test-amd64-i386-xl-pvshim 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a version targeted for testing: qemuu f5e6786de4815751b0a3d2235c760361f228ea48 baseline version: qemuu 6972ef1440a9d685482d78672620a7482f2bd09a Last test of basis 180691 2023-05-17 10:45:22 Z 21 days Failing since 180699 2023-05-18 07:21:24 Z 20 days 68 attempts Testing same since 181231 2023-06-07 01:50:56 Z 0 days 3 attempts ------------------------------------------------------------ People who touched revisions under test: Afonso Bordado Akihiko Odaki Akihiro Suda Alex Bennée Alex Williamson Alexander Bulekov Alexander Graf Alexander Ivanov Alistair Francis Ani Sinha Ani Sinha Anton Johansson BALATON Zoltan Bernhard Beschow Bin Meng Brian Cain Brice Goglin Camilla Conte Cindy Lu Clément Chigot Cornelia Huck Cédric Le Goater Cédric Le Goater Daniel Henrique Barboza Daniel P. Berrangé Daniil Kovalev David Hildenbrand Emanuele Giuseppe Esposito Enze Li Eric Auger Eric Blake Eric DeVolder Erico Nunes Eugenio Pérez Fabiano Rosas Fan Ni Fiona Ebner Francesco Cagnin Francisco Iglesias Gavin Shan Gregory Price Gregory Price Hanna Czenczek Hao Zeng Hawkins Jiawei Igor Mammedov Ilya Leoshkevich Ira Weiny Jason Wang Jean-Louis Dupond Jean-Philippe Brucker Jiaxun Yang John Snow Jonathan Cameron Juan Quintela Kevin Wolf Laurent Vivier Lei Yang Leonardo Bras Maksim Davydov Marc-André Lureau Marcin Juszkiewicz Marco Liebel Mark Cave-Ayland Markus Armbruster Matheus Tavares Bernardino Mauro Matteo Cascella Max Fritz Michael S. Tsirkin Michael Tokarev Michal Privoznik Mostafa Saleh Nicholas Piggin Nicolas Saenz Julienne Niek Linnenbank Palmer Dabbelt Paolo Bonzini Peter Maydell Peter Xu Philippe Mathieu-Daudé qianfan Zhao Raghu H Rene Engel Richard Henderson Richard Purdie Ricky Zhou Ryan Wendland Sebastian Ott Sergio Lopez Sid Manning Song Gao Stefan Hajnoczi Stefano Garzarella Steve Sistare Taylor Simpson Thomas Huth Thomas Weißschuh timothee.cocault@gmail.com Timothée Cocault Tommy Wu Vikram Garhwal Viktor Prutyanov Vitaly Cheptsov Vivek Kasireddy Vladimir Sementsov-Ogievskiy Volker Rümelin Xinyu Li Zeng Hao Zhenyu Zhang Zhenzhong Duan Zhuojia Shen jobs: build-amd64-xsm fail build-arm64-xsm fail build-i386-xsm fail build-amd64 fail build-arm64 fail build-armhf fail build-i386 fail build-amd64-libvirt blocked build-arm64-libvirt blocked build-armhf-libvirt blocked build-i386-libvirt blocked build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl blocked test-amd64-coresched-amd64-xl blocked test-arm64-arm64-xl blocked test-armhf-armhf-xl blocked test-amd64-i386-xl blocked test-amd64-coresched-i386-xl blocked test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-i386-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-amd64-libvirt-xsm blocked test-arm64-arm64-libvirt-xsm blocked test-amd64-i386-libvirt-xsm blocked test-amd64-amd64-xl-xsm blocked test-arm64-arm64-xl-xsm blocked test-amd64-i386-xl-xsm blocked test-amd64-amd64-qemuu-nested-amd blocked test-amd64-amd64-xl-pvhv2-amd blocked test-amd64-i386-qemuu-rhel6hvm-amd blocked test-amd64-amd64-dom0pvh-xl-amd blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-freebsd10-amd64 blocked test-amd64-amd64-qemuu-freebsd11-amd64 blocked test-amd64-amd64-qemuu-freebsd12-amd64 blocked test-amd64-amd64-xl-qemuu-ovmf-amd64 blocked test-amd64-i386-xl-qemuu-ovmf-amd64 blocked test-amd64-amd64-xl-qemuu-win7-amd64 blocked test-amd64-i386-xl-qemuu-win7-amd64 blocked test-amd64-amd64-xl-qemuu-ws16-amd64 blocked test-amd64-i386-xl-qemuu-ws16-amd64 blocked test-armhf-armhf-xl-arndale blocked test-amd64-amd64-xl-credit1 blocked test-arm64-arm64-xl-credit1 blocked test-armhf-armhf-xl-credit1 blocked test-amd64-amd64-xl-credit2 blocked test-arm64-arm64-xl-credit2 blocked test-armhf-armhf-xl-credit2 blocked test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-freebsd10-i386 blocked test-amd64-amd64-qemuu-nested-intel blocked test-amd64-amd64-xl-pvhv2-intel blocked test-amd64-i386-qemuu-rhel6hvm-intel blocked test-amd64-amd64-dom0pvh-xl-intel blocked test-amd64-amd64-libvirt blocked test-armhf-armhf-libvirt blocked test-amd64-i386-libvirt blocked test-amd64-amd64-xl-multivcpu blocked test-armhf-armhf-xl-multivcpu blocked test-amd64-amd64-pair blocked test-amd64-i386-pair blocked test-amd64-amd64-libvirt-pair blocked test-amd64-i386-libvirt-pair blocked test-amd64-amd64-xl-pvshim blocked test-amd64-i386-xl-pvshim blocked test-amd64-amd64-pygrub blocked test-armhf-armhf-libvirt-qcow2 blocked test-amd64-amd64-xl-qcow2 blocked test-arm64-arm64-libvirt-raw blocked test-armhf-armhf-libvirt-raw blocked test-amd64-i386-libvirt-raw blocked test-amd64-amd64-xl-rtds blocked test-armhf-armhf-xl-rtds blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-amd64-xl-shadow blocked test-amd64-i386-xl-shadow blocked test-arm64-arm64-xl-thunderx blocked test-amd64-amd64-libvirt-vhd blocked test-arm64-arm64-xl-vhd blocked test-armhf-armhf-xl-vhd blocked test-amd64-i386-xl-vhd blocked ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 15395 lines long.) From xen-devel-bounces@lists.xenproject.org Wed Jun 07 19:01:36 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 19:01:36 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544979.851123 (Exim 4.92) (envelope-from ) id 1q6yPX-00049t-GQ; Wed, 07 Jun 2023 19:01:35 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544979.851123; Wed, 07 Jun 2023 19:01:35 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6yPX-00049m-Db; Wed, 07 Jun 2023 19:01:35 +0000 Received: by outflank-mailman (input) for mailman id 544979; Wed, 07 Jun 2023 19:01:33 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6yPV-00049g-Bs for xen-devel@lists.xenproject.org; Wed, 07 Jun 2023 19:01:33 +0000 Received: from alpha.anastas.io (alpha.anastas.io [104.248.188.109]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id b5c033d9-0565-11ee-8611-37d641c3527e; Wed, 07 Jun 2023 21:01:30 +0200 (CEST) Received: from authenticated-user (alpha.anastas.io [104.248.188.109]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by alpha.anastas.io (Postfix) with ESMTPSA id 89EA93F07D; Wed, 7 Jun 2023 12:01:27 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: b5c033d9-0565-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=anastas.io; s=mail; t=1686164488; bh=HgHLAVvRx1JQuA4pPUJu+MoDSy5figbCmBjCnuvfZvE=; h=Date:Subject:From:To:Cc:References:In-Reply-To:From; b=IeQ17NZV/i/MjnYdawmuLCAb2x1PYc/0uP8iptg/aoULxYL3mqtMc8ty6zRNC5NiE AQCmrtn45etcUBAZOzrsSKjSwWs9dA/1P5TbI9nWVPU3+xbm54YUCP04XE53jH/V3v lY+nJOncBpRCUR14hgCaB1whEpcGVor0ORM7tthI3IqngHk4tPzB5rIsFxzgdgMxdL F6pmC4DblvoYLKEWLD1XIE2Zyo1x2x8uK2CIAz4xjUA9k89epYKataCawIpDBbievh Jdi9ZgSmtjidngKubFaN6ELsMRAbg7motJw2jLtClM67H10soxtPJUo7m1KGuvHGOh bf89BMgxDQeag== Mime-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=UTF-8 Date: Wed, 07 Jun 2023 14:01:24 -0500 Message-Id: Subject: Re: [PATCH 0/3] Initial support for Power From: "Shawn Anastasio" To: "Andrew Cooper" , Cc: , "George Dunlap" , "Jan Beulich" , "Julien Grall" , "Stefano Stabellini" , "Wei Liu" References: In-Reply-To: On Wed Jun 7, 2023 at 1:07 PM CDT, Andrew Cooper wrote: > Oh wow - this is a surprise, but certainly a good one. I'm glad to hear that! > We've recently done just a similar exercise with RISCV64, starting with > getting cross-compilation and a basic smoke test into our CI. I see. I used the initial RISC-V patch as a model for patch 1, though I didn't realize that the TARGET=3D override were unnecessary for getting a minimal image building. > We use gitlab CI, and one example is > https://gitlab.com/xen-project/xen/-/pipelines/889871648=C2=A0 (search fo= r > riscv64 in amongst all the x86 and ARM). > > The configuration is all in tree, in the automation/ directory.=C2=A0 > Relevant files to copy/tweak are: > > automation/build/archlinux/current-riscv64.dockerfile (x86 cross compile > container) > automation/scripts/qemu-smoke-riscv64.sh (smoke test script) > automation/gitlab-ci/{build,test}.yaml (wire the jobs up) > > The smoke test looks on stdout for "All set up" which can be any string > put out via earlyprintk. Thanks for the pointer -- I'll use this as a model to implement a similar smoke test for PPC64. > If you look around in the Xen tree at bb62c25e3e5c and take the makefile > override's in particular, you should be able to get `make -C xen build` > work without any magic TARGET=3D overrides, and without most of the > headers you've added in patch 1.=C2=A0 The trick is to have a head.S whic= h > doesn't include any files (except the config.h it gets implicitly). Perfect. I'll start work on a v2 without the TARGET=3D overrides and without the headers in patch #1. > We're still trying to do some re-arranging to the common / arch split to > remove unnecessary boilerplate.=C2=A0 Having a set of PPC headers too wil= l > make it easier to spot the rough edges in the current boundary. Great. I've been using arch/arm and arch/riscv as models for which headers to define (as well as the build errors that inevitably pop up when including xen/lib.h or similar). Is this a reasonable approach for now? > Looking to the future, where could XenProject get some real hardware to > put into our CI systems?=C2=A0 We'd want to do that in due course. As an employee of Raptor Engineering, my recommendation for an OpenPOWER system would definitely be the Talos II or Blackbird families from Raptor Computing Systems: https://www.raptorcs.com/ :) > I see you've nominated yourself as maintainer, which is of course fine.= =C2=A0 > How much time do you have to put towards this?=C2=A0 It is some part of a > full time job, or just your own free time? I'm currently working on the port full-time for Raptor Engineering. > Do you have any suggested reading for those of us who are invariably > going to need to learn some of the CPU/platform/architecture details, > but aren't really PPC-literate right now? We have a pretty extensive library of documentation covering the ISA as well as CPU and platform details available here: https://wiki.raptorcs.com/wiki/Category:Documentation > Thanks, and welcome. Thanks! Shawn From xen-devel-bounces@lists.xenproject.org Wed Jun 07 19:30:51 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 19:30:51 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544987.851139 (Exim 4.92) (envelope-from ) id 1q6yrZ-0007b5-Po; Wed, 07 Jun 2023 19:30:33 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544987.851139; Wed, 07 Jun 2023 19:30:33 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6yrZ-0007ay-Ln; Wed, 07 Jun 2023 19:30:33 +0000 Received: by outflank-mailman (input) for mailman id 544987; Wed, 07 Jun 2023 19:30:33 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6yrY-0007as-Td for xen-devel@lists.xenproject.org; Wed, 07 Jun 2023 19:30:33 +0000 Received: from esa5.hc3370-68.iphmx.com (esa5.hc3370-68.iphmx.com [216.71.155.168]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id c2972716-0569-11ee-b232-6b7b168915f2; Wed, 07 Jun 2023 21:30:30 +0200 (CEST) Received: from mail-bn7nam10lp2106.outbound.protection.outlook.com (HELO NAM10-BN7-obe.outbound.protection.outlook.com) ([104.47.70.106]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 07 Jun 2023 15:30:21 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by SJ0PR03MB7049.namprd03.prod.outlook.com (2603:10b6:a03:4ee::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Wed, 7 Jun 2023 19:30:15 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606%4]) with mapi id 15.20.6455.030; Wed, 7 Jun 2023 19:30:15 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: c2972716-0569-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686166230; h=message-id:date:from:subject:to:cc:references: in-reply-to:content-transfer-encoding:mime-version; bh=d901K3FsQlArWyfEAVNSw8MoDUStTJpdR+xbJqnJY20=; b=IfbbJYI6WfIm7ZaQNRhLQ4orPX6E/9nB3S0SbtlneHbTamnQparfBXO7 NwBZLf+uDxWXzL6jNPqCWgSjypKv4KwHHclFrw0jzCxfTnlPFXkwCxJaq qL7JDwJZAiZx6H3ECwus7LFu5B41Hl8BbPS0M3k4wVc299OWw0vYSxNvv 0=; X-IronPort-RemoteIP: 104.47.70.106 X-IronPort-MID: 110716793 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:1u4xLaLQro11leZPFE+RVpQlxSXFcZb7ZxGr2PjKsXjdYENS0j0Ez TYcDzrXb/aIZTf1eN5zaomzpkkAsJXVz4dnGgplqX01Q3x08seUXt7xwmUcnc+xBpaaEB84t ZV2hv3odp1coqr0/0/1WlTZhSAgk/rOHvykU7Ss1hlZHWdMUD0mhQ9oh9k3i4tphcnRKw6Ws Jb5rta31GWNglaYCUpKrfrbwP9TlK6q4mhA4ARhPasjUGL2zBH5MrpOfcldEFOgKmVkNrbSb /rOyri/4lTY838FYj9yuu+mGqGiaue60Tmm0hK6aYD76vRxjnVaPpIAHOgdcS9qZwChxLid/ jnvWauYEm/FNoWU8AgUvoIx/ytWZcWq85efSZSzXFD6I+QrvBIAzt03ZHzaM7H09c55On1r+ aIfDgwocz3Ztvvr+4CnceVF05FLwMnDZOvzu1lG5BSAVbMMZ8+GRK/Ho9hFwD03m8ZCW+7EY NYUYiZuaxKGZABTPlAQC9Q1m+LAanvXKmUE7g7K4/VvpTGLkmSd05C0WDbRUvWMSd9YgQCzo WXe8n6iKhobKMae2XyO9XfEaurnxHqjB9tMS+zjnhJsqHzKyVcsVAUOaUuA5siDigmxRfJSJ 2VBr0LCqoB3riRHVOLVRB2xv3istxgVQMZZCKs772ml2qfSpgqUGGUAZjpAc8A98t87QyQw0 V2ElM+vAiZg2JWJUX+U7KyTqxuoMDAJKnUPYyAFSwYI+djlr8c4iRenZtRpHbOxj9b1MSrt2 D3Mpy87750RkMoK2qOT7V3BxTW2qfDhVRUp7w/aWmak6AJRZ4O/YYGsr1/B4p5oM4KxXlSH+ n8elKCjAPsmCJiMkGmHRroLFbTwv/KdamSE3xhoAoUr8Cmr9zi7Z4dM7TpiJUBvdMEZZTvuZ 0yVsgRUjHNOAEaXgWZMS9rZI6wXIWLITLwJiti8ggJyX6VM IronPort-HdrOrdr: A9a23:fTxeYKmggNj/e+TqpUj0D9LOxMbpDfLo3DAbv31ZSRFFG/Fw9/ rCoB17726QtN91YhsdcL+7V5VoLUmzyXcX2/hyAV7BZmnbUQKTRekP0WKL+Vbd8kbFh41gPM lbEpSXCLfLfCJHZcSR2njELz73quP3jJxBho3lvghQpRkBUdAF0+/gYDzranGfQmN9dP0EPa vZ3OVrjRy6d08aa8yqb0N1JNQq97Xw5fTbiQdtPW9f1DWz X-Talos-CUID: 9a23:RQHnlG432i4ewWkEINss+nUIP8x7dVvh6Wr9eX6hVF1bVIaZYArF X-Talos-MUID: 9a23:4YfiGgh0PDia2tmO/R437cMpFZ5n2JvyEFgxga5BivOEciNuGzqRpWHi X-IronPort-AV: E=Sophos;i="6.00,225,1681185600"; d="scan'208";a="110716793" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=mQTbiEqXqweUi8m0u9k9BBoz+i2b9I0NfFQOvf24Xna3W9omIEVxjEQu9WZPiSKaHjpd21ho3+epI9rAHetMpkngZfRKFwGjBXAZCax4p3BQSIxaeFKYRdD27QCTKm2kbaEShdKBjeD4G62gnKsonKtRlgmtCS++55byo7xuX0L1bxSpxln/Xa2XmKoObptpr31isKMgNuPPppwpqRSxU49ZVeHFoEtFKU83P4r8UaOIolFZ7z3McLmgDPqnwI7hPWSiAS0QBHYqR1mJqsMqazwVzDz8G2rVlftiLA7BuNiJqNRf42sCqV6koNcdNBzecn3ywPCErsSbUmKwa0AeHg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=d901K3FsQlArWyfEAVNSw8MoDUStTJpdR+xbJqnJY20=; b=GIvxMSv++FHK9tyl5jJfe/PtTS22640Jrr3gnXl2UmhO+p95C7HPe1cdpmASoBKvA3p/NAQkux2bXrBb1OLpl/Mu1sV67n902S7xPABitR473wK5SnYkOnc+uQfdn0x2Dnq/G54zFEgM80cmArDfxH6TSZ/rIn8MneOk/ORvXvf6RQkQe4U2pT0i9WBDE8fgESNqogoUnpRPBfjDp2Qk6gujt0y9nA5/rjgEcWqCR8HQVn01suhBZsDHMozawV1yg/OuEmrBgE1Ke1i9mkhgqH8cFxlB7Vv2bMcesVW10nd2RX+5i3l+2+LFTZKhIqehmu/Hy64ohHny4HVrrC+Myw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=d901K3FsQlArWyfEAVNSw8MoDUStTJpdR+xbJqnJY20=; b=oTmSCAt5B4S0Y9mDdzFY5vjBlQkPh+XTNzlqxqeRjCHLeFefE7rDWCKEKm+MPf4EPrGN7tSgMPdVnA0efX5yeMJNp61bTWTny/DO6lB4Fyd6c+31Mvc3TvNE/9OZLjLYmYe5nYTJZ1mn1ppy+mQjwrFJtgqDF+FClFl8Mc+cGAM= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: <704339f1-4103-62ad-49f8-b7df1fc8b7de@citrix.com> Date: Wed, 7 Jun 2023 20:30:09 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 From: Andrew Cooper Subject: Re: [PATCH 0/3] Initial support for Power Content-Language: en-GB To: Shawn Anastasio , xen-devel@lists.xenproject.org Cc: tpearson@raptorengineering.com, George Dunlap , Jan Beulich , Julien Grall , Stefano Stabellini , Wei Liu References: In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO4P123CA0025.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:151::12) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|SJ0PR03MB7049:EE_ X-MS-Office365-Filtering-Correlation-Id: 80f970bf-a32f-4a98-06ca-08db678d9e5b X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: Iyhfx82t+r8cZf7jSLub4MCvWCVWVJAoxf9CtY3We5zQpybG6e0iAUrOM5JbtDm6VHJbfayy6EDXYvIc9BxHZu42NYCYsEMd6KFpuUUvJX9wnP/Dy2m1Du9PUi8h+zcK0F3WILndU0tXsMY7QBiR2FlFao7K7YCNttlrPtV9xRVvGuPTGPOwlcYTThFAUsqghEaOiSlJGhljW/xXOAMa9Odn+nWcywTeOrhxqPS1BZ8T2OE2x0T+aLi661U30kf4fFroB6EUSXpAgnTnY44P7sRCc0EzNGk69gecuCedPmM2DQHeIl4uAv72GEZ73kAdEQf+i6RypbstcX5wFIrjYyvbuhm9I/efoTB8X07s3d5iwXMQqAsH1BudKU8CXxwGIe8SLIid2BxR27u3EKGfUp2wYiWSISoZ8T9U8LLDHiu2MQrnvarn+W1/QYLNJOPa9+2QeqsqTYsgRGYgSGkRSbRpsk6+jSFzcYW3aSKHaPWfxlWlmT2Qo2j6K8Eh+7AmHQB6V92iIavcdzSJyKf4QnSEQx0ULDtLu8oGfW32evtcAUU1ItSKJSP7ejnqTyP1LhaTmDmuIF5PJYnc108Rm16O9wEPR6x3rbJWMUFkyUExunzlNeVYSsFTdcGFgsHdUiSAiEKSTpNrHWRLR0tSKQ== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(396003)(39860400002)(346002)(376002)(366004)(136003)(451199021)(66476007)(478600001)(4326008)(66946007)(31686004)(316002)(2906002)(8936002)(41300700001)(8676002)(54906003)(66556008)(6666004)(5660300002)(6486002)(6512007)(6506007)(26005)(966005)(53546011)(82960400001)(38100700002)(2616005)(186003)(36756003)(86362001)(31696002)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?WVJFd25nQVZKbEY1NG02YnUwVTh4WWZaRDFQNFpPTStOd3pFOFRzSmM2WStB?= =?utf-8?B?Q082YnpDVWo2WjliY1FSekJRVm5TZkgvQXZ2YXFoTnIxbW9QdVJGYk8yWmRM?= =?utf-8?B?bWRwSjlTcW4xY1c2Z1JKdDkzN3lkcXhLb0g5YnpPNlpnWGVzZ1hzUVZuby9C?= =?utf-8?B?RnJ4aERNN3JzNmFZQm1FcFJtVm9kcXg5WXFxUGhHbDJ0bStzU094T0VzeTkw?= =?utf-8?B?Qm5qblBheHRJSWZacERCM3VMNXgwS1JjVktGcnRhODNHa1g5Q3JQWi8rYllN?= =?utf-8?B?MmhvcEY0TWo2Yi96dmdhWWZTZlBQR2h3c1VvQm9aTUJtR2VYOW9wdmpjQ25z?= =?utf-8?B?ak5xZEFjZldVZEowUjNlSlpKMjQyV3F5TmNiWTB4YVNGZk5ScHBNZ0ZhMXk4?= =?utf-8?B?Ylg2SWFpZVRKc3Iza2pDL0FQTnVNZW5qZDR5SFA3QkZiSTFDMERmYTArNXFp?= =?utf-8?B?cnZkQXo3SzY5eXZtRUlkSS9xNy9tWGtRZmc3Vlk4NUZWeEpYMndMN1BkczVu?= =?utf-8?B?Rlp4bC9WQllTUmRtam56Z3JJZHAxRkI3WVUxQVVCYkNrV3EwS1NOU2JSQmZu?= =?utf-8?B?Q1ZwMDNsMTVtZFU4QXVsYnJJRElrOXVJTUIwU3Z0Y0ROQmdQWjd5SFZtU1Q5?= =?utf-8?B?aGRUR0NMbkZyaUFsSjk1c1djdS9OMmt2dElrOFV5amxXblFxS0dBNGNvRWtZ?= =?utf-8?B?T0g1ZURZbVo1cm5aZkdseG5uQUZXZDZBUVdBYjNvaTlZaUw1Y21zWVlJdU01?= =?utf-8?B?ekoreDIvRU1UYUlCSDNuNmllb3NpYkFEUldzQmZBekJ1OEtOcjRycHdOMDVJ?= =?utf-8?B?K1hsZHZCelFLRjUwU1JIK0ZoUldNR2UrMUt5MDFybVZJemVYWThUZ0FvT0Zq?= =?utf-8?B?dllPN3dCdnNXakZkV09lSW4zRjJzU0FuaVRaNVVEbHhxRGpoY1JyZldBcVpm?= =?utf-8?B?OHhpd29ZemhMMTZ5bjBQY0dhL0pucW5SVVo4bFhrbmcrYzl5V1FHQ0xCR2lN?= =?utf-8?B?VXJ4QkIvZCszTFNiV2orNGpxRmVST3J2ZkJXVnJQMXJ2bFkwTnFaSjROK21Q?= =?utf-8?B?d0pUT1dFa2FSVUNndUJVY3p4MkJGc1JEYmhzaUpFRDVLcGUrd0tZd1JxSGln?= =?utf-8?B?Sit3TmErTHp3UXJ4WEhLUUFZT3NiSDhveHd2MXZHVTRlc2VTV2V1YXBpRmF1?= =?utf-8?B?ZnljRVp5SGtQbS9YV0Y4N3B0eDhhdXVWU2txQkxoSGxlOGxWVkpZM0hWQ0NV?= =?utf-8?B?WjRDRmNyZlZjNVplOVpZTmNDTFRaWkxOMHBadWtwRlhRNzZjaFduM2ZFTHp6?= =?utf-8?B?L0p3NzBxc01Bcy90ZTd6RW5Mb2t3MWFyV1N0eE9DbXhzdmNOWnBlcTVSeDVM?= =?utf-8?B?cTJ4N05GSVNnOHMwOTFKTkNaZHJEaXZIY0wzVFprbnprVmNBMFRyU2dqdng3?= =?utf-8?B?WlpLU2l6dlMyN3NBeDJnOWJtKzR6VjBwT1kyQWFXclhLUXYwZ3c4ZnEycTk3?= =?utf-8?B?U3hrTXB6SnIwS1VPQlRiWThxbXJmU3dVM2J3Q1piRnNnQTF6U2t3ejN2MVMx?= =?utf-8?B?aEFEOC9QRGptaGRTMGZsZEdFc2JtRCtUZ0pzcnFxQzZtbmtZdGpUVGI4eG8r?= =?utf-8?B?ZUY0QmpaQTZqeVQxMDdwejVXWG5RbUFnajVsRmdvMUx6Z0pxWCtCemNjSnFZ?= =?utf-8?B?bnhlNkErVEdsdTF4bmJkWlI3dFZuNUVhMUs1bG4zODdORkVvbkc4TFlvYzRN?= =?utf-8?B?ak84OWxGU3FBMm5ITUpHMm0rTkM4U1k2ekc3MXdZdGNielhGTlo2dlhNVTd6?= =?utf-8?B?MENIcVJ2R3JjUWZyRm1nbkxTOG9Wak5UTXhaTEx4ZWtCUUpXbGl5NCtIY0hk?= =?utf-8?B?dStsSEN4VDZBSUpEV0VqTWVHaksxWVA4REVTeXkzMTl5OHhWZWd6YWJITk9S?= =?utf-8?B?ZytsTGFvTVc2dmRqLy9ZeE13MzlXNnBDUDNuVFRXakpQVW5GbHJFRkREWDBI?= =?utf-8?B?ejY4TmU3ZFM0U2IvWDk3QU1iVGx3OGZRY05rcHlmd3owVGJoOTZrZkd6N3RV?= =?utf-8?B?RDhyNkhKMThCS0kzYWpQTEg1ckJmdlZBN2FncWRBenIrcDJBb3ZCMnJkUjAz?= =?utf-8?B?UTJOQ25hTDZaSFY2NFQrZFdlenhML3Y3L1UxeXRJcS9mdU8xaVRGWWY5UUlF?= =?utf-8?B?c0E9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: =?utf-8?B?dWJLUHl5MDJoRGRLM25OZUNGTmRaRFhTNUc4cyszcCtOMzU0NGc2RUljeUZj?= =?utf-8?B?cDY4Uk1BMDV3ZDV1eUxGbERWSGxmMllhVGVuMno1WW83U1BBUVk5azgxYVFI?= =?utf-8?B?Q09vcFV4QVRodW4xSW1aVjRUV0tUaVRDS0pDUzhQdWlkem1QcnduRWRiaHpw?= =?utf-8?B?SFBRTDNqMEg4S3dNQXZDTHNMYXRhaWVNcTE3L3M4RHJWSkEvRGpsd3VJVjZk?= =?utf-8?B?WTc3NUlvRVhBWUs2NFdXRDEvNEFLbGU5SkNxdzRGVlpLdjFncSswekU2WStU?= =?utf-8?B?VGV0WE13ZmU4S2h6bE92bFVKaWtGNEk3blFJSk1XbTZxWWllMEVFeGhFeEZH?= =?utf-8?B?R3ZjNUE5NGxZTDFSRlZReUVYa3RjMHFVNVE0ZWFDQXhrOWd1cFdUSkxpSlcy?= =?utf-8?B?Y2RIek9DeE9zWXVhK3V3NUxTTFQrdkwwd3NBT25YNHdtb0JmenhoRCtHYk03?= =?utf-8?B?N1A1WGZQSlJqdVlTNUdmRnNyemtJRHBxL1RKVHNrY0FpNlRTZG5zdGRjN2Fv?= =?utf-8?B?b3pFMVJnekMxeGpuUmN5cCtGVzc1WmcvS3AyZ3JYRHU2OFpqQzNPQ1VCeG12?= =?utf-8?B?Skdsa3RacGhuRW1UMnZVaVRCcklKYlBoQUJFQ29kd2I2UkkzTmdCY3o0OXZM?= =?utf-8?B?M1RDeHNuTHkxUlZlVThwYjFmYzVYMHQzRE1XMDd0SVRmMFZGNUhxK1Y4RnVw?= =?utf-8?B?TmJEbmRXMkpva3VucmJMQ3RpOVd1RG00K2lzMjBjZktXSVBzaWpVVG5hdjcz?= =?utf-8?B?K2xhWWtMQ0xudS83ZDI3TnBQL3lNT0JCRzA5R3RRZkFlcnF4UHFLTW1DMWVO?= =?utf-8?B?c0RhOUp5RGxsRWR4NlM4YlFSZVU3ZHdhaEQ4ZXk3WXZrQVYzb0lVQUZTRzFy?= =?utf-8?B?UWQ2VGx3ZS81a21nNFVDZFBkYzhZdU9uNDVyeDJ1YkFPRm80ZDJuY1BaRE1H?= =?utf-8?B?QzRaN1NESFk2bmFHTmtjOUxFaEx3MEVEVWZZYWJSOFB4K3hiSnJzWE9Cd3VF?= =?utf-8?B?WitveUlNempiOHM4c25vUkdsdHhLNk1zTDV4amhPK0JySUJjaVZyTXM4NWFH?= =?utf-8?B?MFlaOVNvczFINHI2VjNPMUUyOTduRTBDWXhIQit4d2l0VzRZejUyWnFjMzR3?= =?utf-8?B?d1h2WDRYbHpJdUR5blhZMGdua1B5V1Q0MUdnc3RKWnYxOXJhVE9iZnhGMUVr?= =?utf-8?B?bGhQMkJUT1QvL1UxV0tyK0ZLYUhVVFRhZDYyTllGa2JFT0N5UUJYa1dKVUVa?= =?utf-8?Q?7JnBXFe0FrL3u2a?= X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 80f970bf-a32f-4a98-06ca-08db678d9e5b X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Jun 2023 19:30:15.3229 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 1Jgm1EgwhSxgmKqJgk/6Oe3hEpXN3XIMBYKdmgRwNiTLy+4Mk5hdSDy1fuDvM1xLeXXqBwzwI8TS/y3hqlV1Y5M3ZQDm2yz8dKiW3Z0Jzfw= X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR03MB7049 On 07/06/2023 8:01 pm, Shawn Anastasio wrote: >> If you look around in the Xen tree at bb62c25e3e5c and take the makefile >> override's in particular, you should be able to get `make -C xen build` >> work without any magic TARGET= overrides, and without most of the >> headers you've added in patch 1.  The trick is to have a head.S which >> doesn't include any files (except the config.h it gets implicitly). > Perfect. I'll start work on a v2 without the TARGET= overrides and > without the headers in patch #1. Ok, in which case you probably want a first patch series doing: 1) New docker container (only - this wants to be taken early and set up in CI) 2) one-or-more initial build system + head.S infinite loop patch.  Probably the maintainer patch too. 3) Wiring the build(s) into build.yaml You'll want to join the https://gitlab.com/xen-project/ and I can set you up with a place to run the full CI (we have a reasonably custom setup which the communal runners don't like).  You may also want to hang out on oftc.org #xendevel  and/or the matrix bridge thereof. Then a second patch series doing early printk, and adding the smoke test script and wiring it into test.yaml. ~Andrew From xen-devel-bounces@lists.xenproject.org Wed Jun 07 19:47:52 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 19:47:52 +0000 Received: from list by lists.xenproject.org with outflank-mailman.544994.851154 (Exim 4.92) (envelope-from ) id 1q6z8F-0000oX-77; Wed, 07 Jun 2023 19:47:47 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 544994.851154; Wed, 07 Jun 2023 19:47:47 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6z8F-0000oQ-4F; Wed, 07 Jun 2023 19:47:47 +0000 Received: by outflank-mailman (input) for mailman id 544994; Wed, 07 Jun 2023 19:47:45 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6z8D-0000oG-IV; Wed, 07 Jun 2023 19:47:45 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6z8D-0005OQ-Ha; Wed, 07 Jun 2023 19:47:45 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q6z8D-0002cZ-9l; Wed, 07 Jun 2023 19:47:45 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q6z8D-0003ea-9H; Wed, 07 Jun 2023 19:47:45 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=FgyN6qRIM4aapnCkLlAOAIUdtiv1ghZdRfLbBn9C9kg=; b=sETDvO5yp6m0ibpT1SIMib8zED J7vzWP7msSExwh1fTDYjXeq4cIRXprH58xKdulZlY3OHEgjdalbVCGDi6eJiBV6JezIdzDk9suHyL 7BA8snKaTKFqop3jfstSR3B5yZeQf5cA4r32gJsWMXOtYSk/6rEncTsMmR+N9i4hFr7Q=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable-smoke test] 181266: regressions - FAIL X-Osstest-Failures: xen-unstable-smoke:build-arm64-xsm:xen-build:fail:regression xen-unstable-smoke:build-armhf:xen-build:fail:regression xen-unstable-smoke:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking xen-unstable-smoke:test-armhf-armhf-xl:build-check(1):blocked:nonblocking xen-unstable-smoke:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking X-Osstest-Versions-This: xen=0c2d0d32b341eb79bb095fd3f35b9a2672333d64 X-Osstest-Versions-That: xen=64a647f8d817c6989edc000613b5afae19f03f99 From: osstest service owner Date: Wed, 07 Jun 2023 19:47:45 +0000 flight 181266 xen-unstable-smoke real [real] http://logs.test-lab.xenproject.org/osstest/logs/181266/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-arm64-xsm 6 xen-build fail REGR. vs. 181233 build-armhf 6 xen-build fail REGR. vs. 181233 Tests which did not succeed, but are not blocking: test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 15 migrate-support-check fail never pass version targeted for testing: xen 0c2d0d32b341eb79bb095fd3f35b9a2672333d64 baseline version: xen 64a647f8d817c6989edc000613b5afae19f03f99 Last test of basis 181233 2023-06-07 02:04:37 Z 0 days Failing since 181246 2023-06-07 11:02:03 Z 0 days 4 attempts Testing same since 181266 2023-06-07 18:00:26 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Christian Lindig George Dunlap Henry Wang # CHANGELOG Juergen Gross Julien Grall Luca Fancellu Michal Orzel jobs: build-arm64-xsm fail build-amd64 pass build-armhf fail build-amd64-libvirt pass test-armhf-armhf-xl blocked test-arm64-arm64-xl-xsm blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-libvirt pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 461 lines long.) From xen-devel-bounces@lists.xenproject.org Wed Jun 07 21:27:10 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 21:27:10 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545015.851180 (Exim 4.92) (envelope-from ) id 1q70gE-0002jr-Hs; Wed, 07 Jun 2023 21:26:58 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545015.851180; Wed, 07 Jun 2023 21:26:58 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q70gE-0002jk-FI; Wed, 07 Jun 2023 21:26:58 +0000 Received: by outflank-mailman (input) for mailman id 545015; Wed, 07 Jun 2023 21:26:57 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q70gD-0002je-Bz for xen-devel@lists.xenproject.org; Wed, 07 Jun 2023 21:26:57 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [2604:1380:4641:c500::1]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 059bf33a-057a-11ee-8611-37d641c3527e; Wed, 07 Jun 2023 23:26:54 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id E74E1616E2; Wed, 7 Jun 2023 21:26:52 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id A066EC433EF; Wed, 7 Jun 2023 21:26:51 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 059bf33a-057a-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1686173212; bh=UM7gIhudZZFJIj4696jJkmgh8v6/NA8OnspsUhRWDzM=; h=Date:From:To:cc:Subject:In-Reply-To:References:From; b=eTj4/2lfkJsz4QtXGYAYTvWaLFNwDeSBRFYYaqWs285IpxT0RlqN9+IkY6Etrqeae 2KOBADdMElMmOpB3y7im7+qJGQN/DAz3dgtKdwsyAHze9VLqRC0Ou6j7ivhA3GQ7Nf EZFIC0p+nxpmSi/NtUnlwVnz3i0DTLAticdcyAKl77nm3nzok8bdwc5mnb8T8IbQIt FXDj/oP3LfV4PnbLx+WFkd127+w7ibk+TyuAsVYWM2C7iSJ2HQp1UisEAkZ/DAiTxf BoPFJ8aSqq5Pttq7aMkLlPrKu8qJaRIjKBd8XX9Vo9GvY+3NvYU2g84XgBULqXEFGg JqFSYnNw9Fb3Q== Date: Wed, 7 Jun 2023 14:26:50 -0700 (PDT) From: Stefano Stabellini X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop To: Andrew Cooper cc: Xen-devel , =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= , Stefano Stabellini , Michal Orzel Subject: Re: [PATCH] CI: Fix the github actions Coverity run In-Reply-To: <20230607093612.2219286-1-andrew.cooper3@citrix.com> Message-ID: References: <20230607093612.2219286-1-andrew.cooper3@citrix.com> User-Agent: Alpine 2.22 (DEB 394 2020-01-19) MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="8323329-1659974247-1686173212=:3567387" This message is in MIME format. The first part should be readable text, while the remaining parts are likely unreadable without MIME-aware tools. --8323329-1659974247-1686173212=:3567387 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8BIT On Wed, 7 Jun 2023, Andrew Cooper wrote: > The Install step is failing with: > > Package python-dev is not available, but is referred to by another package. > This may mean that the package is missing, has been obsoleted, or > E: Package 'python-dev' has no installation candidate > is only available from another source > However the following packages replace it: > python2-dev python2 python-dev-is-python3 > > which is a side effect of ubuntu-latest having changed from 20.04 to 22.04. > > Drop python-dev as python3-dev is already present, and used a fixed runs-on to > avoid such problems in the future. > > Signed-off-by: Andrew Cooper Acked-by: Stefano Stabellini > --- > CC: Roger Pau Monné > CC: Stefano Stabellini > CC: Michal Orzel > > Untested. This needs to be committed and wait until the next cron on the main > repo (which has the appropriate secret token) for an end-to-end test. > --- > .github/workflows/coverity.yml | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/.github/workflows/coverity.yml b/.github/workflows/coverity.yml > index 427fb86f947f..60ac8dee5570 100644 > --- a/.github/workflows/coverity.yml > +++ b/.github/workflows/coverity.yml > @@ -8,7 +8,7 @@ on: > > jobs: > coverity: > - runs-on: ubuntu-latest > + runs-on: ubuntu-22.04 > steps: > - name: Install build dependencies > run: | > @@ -18,7 +18,7 @@ jobs: > libbz2-dev e2fslibs-dev uuid-dev ocaml \ > ocaml-findlib libyajl-dev \ > autoconf libtool liblzma-dev \ > - python3-dev golang python-dev libsystemd-dev > + python3-dev golang libsystemd-dev > > - uses: actions/checkout@v2 > with: > -- > 2.30.2 > --8323329-1659974247-1686173212=:3567387-- From xen-devel-bounces@lists.xenproject.org Wed Jun 07 21:31:44 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 21:31:44 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545021.851191 (Exim 4.92) (envelope-from ) id 1q70kp-0004FT-73; Wed, 07 Jun 2023 21:31:43 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545021.851191; Wed, 07 Jun 2023 21:31:43 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q70kp-0004FM-4K; Wed, 07 Jun 2023 21:31:43 +0000 Received: by outflank-mailman (input) for mailman id 545021; Wed, 07 Jun 2023 21:31:41 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q70kn-0004FC-2b; Wed, 07 Jun 2023 21:31:41 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q70km-0007hZ-RS; Wed, 07 Jun 2023 21:31:40 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q70km-00082n-G6; Wed, 07 Jun 2023 21:31:40 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q70km-0004s9-Fc; Wed, 07 Jun 2023 21:31:40 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=N+9GutRrIoGETJH6o49EpYufzWQ/TpK82yezMxLvs2o=; b=lsX9TKrrUrp/MiGfOP2bwYIPiC Ffeavmze/o/SgnrKdhBBHPMoyttTOM9fDS8SEE8famHxAeYrUi09Qc69xMM5j/B7P8Js0EWp7ghfs /3wO1dkxdCXyV5hfSm69WlH0HW1WEtuFKqdWXaSuHkuuiM5vJaTHFlhQ+GvYAeSng9bE=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable-smoke test] 181273: regressions - FAIL X-Osstest-Failures: xen-unstable-smoke:build-arm64-xsm:xen-build:fail:regression xen-unstable-smoke:build-armhf:xen-build:fail:regression xen-unstable-smoke:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking xen-unstable-smoke:test-armhf-armhf-xl:build-check(1):blocked:nonblocking xen-unstable-smoke:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking X-Osstest-Versions-This: xen=0c2d0d32b341eb79bb095fd3f35b9a2672333d64 X-Osstest-Versions-That: xen=64a647f8d817c6989edc000613b5afae19f03f99 From: osstest service owner Date: Wed, 07 Jun 2023 21:31:40 +0000 flight 181273 xen-unstable-smoke real [real] http://logs.test-lab.xenproject.org/osstest/logs/181273/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-arm64-xsm 6 xen-build fail REGR. vs. 181233 build-armhf 6 xen-build fail REGR. vs. 181233 Tests which did not succeed, but are not blocking: test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 15 migrate-support-check fail never pass version targeted for testing: xen 0c2d0d32b341eb79bb095fd3f35b9a2672333d64 baseline version: xen 64a647f8d817c6989edc000613b5afae19f03f99 Last test of basis 181233 2023-06-07 02:04:37 Z 0 days Failing since 181246 2023-06-07 11:02:03 Z 0 days 5 attempts Testing same since 181266 2023-06-07 18:00:26 Z 0 days 2 attempts ------------------------------------------------------------ People who touched revisions under test: Christian Lindig George Dunlap Henry Wang # CHANGELOG Juergen Gross Julien Grall Luca Fancellu Michal Orzel jobs: build-arm64-xsm fail build-amd64 pass build-armhf fail build-amd64-libvirt pass test-armhf-armhf-xl blocked test-arm64-arm64-xl-xsm blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-libvirt pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 461 lines long.) From xen-devel-bounces@lists.xenproject.org Wed Jun 07 21:53:28 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 21:53:28 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545028.851201 (Exim 4.92) (envelope-from ) id 1q715c-0006g6-VF; Wed, 07 Jun 2023 21:53:12 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545028.851201; Wed, 07 Jun 2023 21:53:12 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q715c-0006fz-Qp; Wed, 07 Jun 2023 21:53:12 +0000 Received: by outflank-mailman (input) for mailman id 545028; Wed, 07 Jun 2023 21:53:11 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q715b-0006ft-Mr for xen-devel@lists.xenproject.org; Wed, 07 Jun 2023 21:53:11 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id afb8f1f3-057d-11ee-8611-37d641c3527e; Wed, 07 Jun 2023 23:53:08 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id CD2366171A; Wed, 7 Jun 2023 21:53:06 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 063D5C433EF; Wed, 7 Jun 2023 21:53:04 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: afb8f1f3-057d-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1686174786; bh=fMldTn9JrUTXMck43SR/8GKlLRZh+XwUq7tjXmYV7tE=; h=Date:From:To:cc:Subject:In-Reply-To:References:From; b=rjl/y4tO5ICMKXA3vTGxXoO6l7GMCtLNeMe2aNKEbx81kxt5QSz9qK7m8RqtMQQ97 9BlYizvY4uYk+wRS/fwcOiBkEC6eF8QDD1cBdI8dVc83mBVeMayWckrIKDQBmligJz aEanxCnc1H5Mfg/6927dQpnUJTW4jLvc29drJHQUTxa9k1NZAYcNS+QTkFRc+oB+4r 0w/EJcUOHmz2AyzdBgMwZZnOpZYuuUsYK7RdvufZmFXHwOE539nrmp60/MZKTKiY+Z 5sQxOu36UX7938h63dQs3F2DZce01tlCdrfqvdjMr31KAgtoZs/iVdFju4OMU5YEsA aEsBFW0y9wUoQ== Date: Wed, 7 Jun 2023 14:53:03 -0700 (PDT) From: Stefano Stabellini X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop To: Jan Beulich cc: Stefano Stabellini , roberto.bagnara@bugseng.com, julien@xen.org, andrew.cooper3@citrix.com, roger.pau@citrix.com, bertrand.marquis@arm.com, Stefano Stabellini , xen-devel@lists.xenproject.org Subject: Re: [PATCH] docs/misra: new rules addition In-Reply-To: <955f134b-75b8-f8a4-2e02-ae6def536ffb@suse.com> Message-ID: References: <20230607013810.3385316-1-sstabellini@kernel.org> <955f134b-75b8-f8a4-2e02-ae6def536ffb@suse.com> User-Agent: Alpine 2.22 (DEB 394 2020-01-19) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII On Wed, 7 Jun 2023, Jan Beulich wrote: > On 07.06.2023 03:38, Stefano Stabellini wrote: > > From: Stefano Stabellini > > > > For Dir 1.1, a document describing all implementation-defined behaviour > > (i.e. gcc-specific behavior) will be added to docs/misra, also including > > implementation-specific (gcc-specific) appropriate types for bit-field > > relevant to Rule 6.1. > > > > Rule 21.21 is lacking an example on gitlab but the rule is > > straightforward: we don't use stdlib at all in Xen. > > > > Signed-off-by: Stefano Stabellini > > --- > > We also discussed Rules 2.1, 5.5 and 7.4 but they require more work > > before we can decide one way or the other. > > Since I wasn't able to attend yesterday's meeting, please forgive a > couple of remarks: No problem > > @@ -133,6 +146,16 @@ existing codebase are work-in-progress. > > headers (xen/include/public/) are allowed to retain longer > > identifiers for backward compatibility. > > > > + * - `Rule 5.6 `_ > > + - Required > > + - A typedef name shall be a unique identifier > > + - > > Considering that the rule requires uniqueness across the entire code > base (and hence precludes e.g. two functions having identically named > local typedefs), I'm a little puzzled this was adopted. I for one > question that a use like the one mentioned is really at risk of being > confusing. Instead I think that the need to change at least one of > the names is at risk of making the code less readable then, even if > ever so slightly. (All of this said - I don't know if we have any > violations of this rule.) I don't think we have many local typedefs and I think we have only few violations if I remember right. I'll let Roberto confirm how many. This rule was considered not a difficult rule (some difficult rules were found, namely 2.1, 5.5 and 7.4.) > > + * - `Rule 6.1 `_ > > + - Required > > + - Bit-fields shall only be declared with an appropriate type > > + - > > This requires you have settled on what "an appropriate type" is, i.e. > whether our uses of e.g. types wider than int is meant to become a > deviation, or will need eliminating. I suppose the outcome of this > could do with mentioning as a remark here. Yes, Roberto showed the "appropriate types" for gcc and there were plenty including unsigned long if I remember right. I didn't write the full list down. Roberto do you have the list ready? I can add it in the Notes section here. > > @@ -143,6 +166,12 @@ existing codebase are work-in-progress. > > - Octal constants shall not be used > > - > > > > + * - `Rule 7.2 `_ > > + - Required > > + - A "u" or "U" suffix shall be applied to all integer constants > > + that are represented in an unsigned type > > + - > > "Represented in an unsigned type" means there is a dependency on the > target architecture and compiler capabilities: Representation can only > be determined once knowing the underlying binary ABI, and uses in #if > and alike require knowing the widest integer type's size that the > compiler supports. As a consequence this looks like it may require, in > certain cases, to add u/U conditionally. Any such conditionals pose a > risk of cluttering the code. I don't think there is any plan to add u/U conditionally, and I can see that would be undesirable. I think the idea is to add u/U to all constants meant to be unsigned. But also here I'll Roberto chime in -- he said they already have a draft patch to fix this. > > @@ -314,6 +343,11 @@ existing codebase are work-in-progress. > > used following a subsequent call to the same function > > - > > > > + * - Rule 21.21 > > + - Required > > + - The Standard Library function system of shall not be used > > + - > > I wish inapplicable (to us) rules would also be marked as such. Yes, actually it could be a good idea to say "inapplicable" in the Notes section for all the rules like this one. I can write a patch for it. From xen-devel-bounces@lists.xenproject.org Wed Jun 07 23:27:02 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 23:27:02 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545035.851216 (Exim 4.92) (envelope-from ) id 1q72YE-0007Yk-Ko; Wed, 07 Jun 2023 23:26:50 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545035.851216; Wed, 07 Jun 2023 23:26:50 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q72YE-0007Yd-I4; Wed, 07 Jun 2023 23:26:50 +0000 Received: by outflank-mailman (input) for mailman id 545035; Wed, 07 Jun 2023 23:26:49 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q72YD-0007YT-Ib; Wed, 07 Jun 2023 23:26:49 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q72YD-0001l9-Af; Wed, 07 Jun 2023 23:26:49 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q72YC-00053I-Sa; Wed, 07 Jun 2023 23:26:48 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q72YC-00048A-SC; Wed, 07 Jun 2023 23:26:48 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=9OwkiS4hb4dpDvyz0KS8+MetjNtI4tSdF9vAidBHHMo=; b=QyTxP0VZY85C7rWIsemC1Nrxny pY9QTTcnYG8eMLDQgLRTDqz5oIardC3AwPkoSVl+uDLJrY9amtsk4deSJnofo6t57H3xDUhtpZ4Ma ZnO2oLMehy5trNdUkly85ISK3LLmWV7oV/e4miTEqxtL7rLFSyC4F1hSGQZfob9+yeeI=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable-smoke test] 181277: regressions - FAIL X-Osstest-Failures: xen-unstable-smoke:build-arm64-xsm:xen-build:fail:regression xen-unstable-smoke:build-armhf:xen-build:fail:regression xen-unstable-smoke:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking xen-unstable-smoke:test-armhf-armhf-xl:build-check(1):blocked:nonblocking xen-unstable-smoke:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking X-Osstest-Versions-This: xen=0c2d0d32b341eb79bb095fd3f35b9a2672333d64 X-Osstest-Versions-That: xen=64a647f8d817c6989edc000613b5afae19f03f99 From: osstest service owner Date: Wed, 07 Jun 2023 23:26:48 +0000 flight 181277 xen-unstable-smoke real [real] http://logs.test-lab.xenproject.org/osstest/logs/181277/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-arm64-xsm 6 xen-build fail REGR. vs. 181233 build-armhf 6 xen-build fail REGR. vs. 181233 Tests which did not succeed, but are not blocking: test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 15 migrate-support-check fail never pass version targeted for testing: xen 0c2d0d32b341eb79bb095fd3f35b9a2672333d64 baseline version: xen 64a647f8d817c6989edc000613b5afae19f03f99 Last test of basis 181233 2023-06-07 02:04:37 Z 0 days Failing since 181246 2023-06-07 11:02:03 Z 0 days 6 attempts Testing same since 181266 2023-06-07 18:00:26 Z 0 days 3 attempts ------------------------------------------------------------ People who touched revisions under test: Christian Lindig George Dunlap Henry Wang # CHANGELOG Juergen Gross Julien Grall Luca Fancellu Michal Orzel jobs: build-arm64-xsm fail build-amd64 pass build-armhf fail build-amd64-libvirt pass test-armhf-armhf-xl blocked test-arm64-arm64-xl-xsm blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-libvirt pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 461 lines long.) From xen-devel-bounces@lists.xenproject.org Wed Jun 07 23:31:31 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 23:31:31 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545043.851229 (Exim 4.92) (envelope-from ) id 1q72ca-0000YU-71; Wed, 07 Jun 2023 23:31:20 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545043.851229; Wed, 07 Jun 2023 23:31:20 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q72ca-0000YN-4A; Wed, 07 Jun 2023 23:31:20 +0000 Received: by outflank-mailman (input) for mailman id 545043; Wed, 07 Jun 2023 23:31:19 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q72cZ-0000YD-NP; Wed, 07 Jun 2023 23:31:19 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q72cZ-0001qJ-K8; Wed, 07 Jun 2023 23:31:19 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q72cZ-0005Ar-6t; Wed, 07 Jun 2023 23:31:19 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q72cZ-0005xK-6R; Wed, 07 Jun 2023 23:31:19 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=jxEK28QMdwiICY8djDepn9SQf1MfMj/ydS3dDOfip4E=; b=L+Nttt/egJ0dk47DG1Y84Ign3Y EGtugyYnArZMCXicqNmakPc1rE4wsjpFuoVZ5qLQeY5HYpTxLpVF4usX8m7T2WoDRfVq35k2mWTUr avKxg/6qIOT3LHmX52G2384mn3tAIqReR9tEoLOQ4HrAjCNQIHi/TO5ZKaghepHj4SEk=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [ovmf test] 181268: tolerable FAIL - PUSHED X-Osstest-Failures: ovmf:test-amd64-i386-xl-qemuu-ovmf-amd64:xen-install:fail:heisenbug X-Osstest-Versions-This: ovmf=69abcf1e78b67e7ce9ac53a9fe1ce61877df984c X-Osstest-Versions-That: ovmf=8d238f1433397397b4d05b38cb2460929429241f From: osstest service owner Date: Wed, 07 Jun 2023 23:31:19 +0000 flight 181268 ovmf real [real] flight 181276 ovmf real-retest [real] http://logs.test-lab.xenproject.org/osstest/logs/181268/ http://logs.test-lab.xenproject.org/osstest/logs/181276/ Failures :-/ but no regressions. Tests which are failing intermittently (not blocking): test-amd64-i386-xl-qemuu-ovmf-amd64 7 xen-install fail pass in 181276-retest version targeted for testing: ovmf 69abcf1e78b67e7ce9ac53a9fe1ce61877df984c baseline version: ovmf 8d238f1433397397b4d05b38cb2460929429241f Last test of basis 181257 2023-06-07 15:40:44 Z 0 days Testing same since 181268 2023-06-07 18:40:44 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Gua Guo jobs: build-amd64-xsm pass build-i386-xsm pass build-amd64 pass build-i386 pass build-amd64-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-i386-pvops pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 fail ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Pushing revision : To xenbits.xen.org:/home/xen/git/osstest/ovmf.git 8d238f1433..69abcf1e78 69abcf1e78b67e7ce9ac53a9fe1ce61877df984c -> xen-tested-master From xen-devel-bounces@lists.xenproject.org Wed Jun 07 23:53:52 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 07 Jun 2023 23:53:52 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545051.851243 (Exim 4.92) (envelope-from ) id 1q72yE-00031q-2d; Wed, 07 Jun 2023 23:53:42 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545051.851243; Wed, 07 Jun 2023 23:53:42 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q72yD-00031j-VY; Wed, 07 Jun 2023 23:53:41 +0000 Received: by outflank-mailman (input) for mailman id 545051; Wed, 07 Jun 2023 23:53:39 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q72yB-00031Z-Sm; Wed, 07 Jun 2023 23:53:39 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q72yB-0002PF-Jc; Wed, 07 Jun 2023 23:53:39 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q72yB-0005xk-5E; Wed, 07 Jun 2023 23:53:39 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q72yB-0003iD-4h; Wed, 07 Jun 2023 23:53:39 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=PkU1Nb3UoUjPuz10GqWFkMmagQ+vwySuA6C09+mpN3s=; b=zKvFOxWjakg4qtUNG/Ycw6wuP2 StiGYuMaBaVVbZwv8ZgEMZOMwxT+Nt80novG1roKUUOLrltFj4HaqK0nQE2rrRVOBIyK0SD2YpAC8 Cde2lxr+pD/x9l12dAHM6/ma+VNcILLDE1DXzQa7qHE1e1VxFXpXyVom4c2awRuMEDVo=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [qemu-mainline test] 181271: regressions - FAIL X-Osstest-Failures: qemu-mainline:build-arm64-xsm:xen-build:fail:regression qemu-mainline:build-arm64:xen-build:fail:regression qemu-mainline:build-amd64:xen-build:fail:regression qemu-mainline:build-i386:xen-build:fail:regression qemu-mainline:build-amd64-xsm:xen-build:fail:regression qemu-mainline:build-i386-xsm:xen-build:fail:regression qemu-mainline:build-armhf:xen-build:fail:regression qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-i386:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:build-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:build-arm64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:build-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:build-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pygrub:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking X-Osstest-Versions-This: qemuu=4f65e89f8cf0e079b4ec3ddfede314bbb4e35c76 X-Osstest-Versions-That: qemuu=6972ef1440a9d685482d78672620a7482f2bd09a From: osstest service owner Date: Wed, 07 Jun 2023 23:53:39 +0000 flight 181271 qemu-mainline real [real] http://logs.test-lab.xenproject.org/osstest/logs/181271/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-arm64-xsm 6 xen-build fail REGR. vs. 180691 build-arm64 6 xen-build fail REGR. vs. 180691 build-amd64 6 xen-build fail REGR. vs. 180691 build-i386 6 xen-build fail REGR. vs. 180691 build-amd64-xsm 6 xen-build fail REGR. vs. 180691 build-i386-xsm 6 xen-build fail REGR. vs. 180691 build-armhf 6 xen-build fail REGR. vs. 180691 Tests which did not succeed, but are not blocking: test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-xl-xsm 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-raw 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-xsm 1 build-check(1) blocked n/a test-arm64-arm64-xl 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit1 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit2 1 build-check(1) blocked n/a test-arm64-arm64-xl-thunderx 1 build-check(1) blocked n/a test-arm64-arm64-xl-vhd 1 build-check(1) blocked n/a test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a test-armhf-armhf-libvirt 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-qcow2 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-raw 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a test-armhf-armhf-xl-arndale 1 build-check(1) blocked n/a test-armhf-armhf-xl-multivcpu 1 build-check(1) blocked n/a test-armhf-armhf-xl-rtds 1 build-check(1) blocked n/a test-armhf-armhf-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-amd 1 build-check(1) blocked n/a test-amd64-i386-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-raw 1 build-check(1) blocked n/a test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-i386 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-amd64 1 build-check(1) blocked n/a test-amd64-coresched-i386-xl 1 build-check(1) blocked n/a test-amd64-coresched-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-xsm 1 build-check(1) blocked n/a build-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-shadow 1 build-check(1) blocked n/a test-amd64-amd64-xl-rtds 1 build-check(1) blocked n/a build-arm64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a build-armhf-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a build-i386-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-amd 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-pair 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-qcow2 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-vhd 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvshim 1 build-check(1) blocked n/a test-amd64-amd64-pair 1 build-check(1) blocked n/a test-amd64-amd64-pygrub 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-intel 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd11-amd64 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd12-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-multivcpu 1 build-check(1) blocked n/a test-amd64-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit1 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit1 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit2 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-intel 1 build-check(1) blocked n/a test-amd64-i386-xl 1 build-check(1) blocked n/a test-amd64-i386-xl-pvshim 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a version targeted for testing: qemuu 4f65e89f8cf0e079b4ec3ddfede314bbb4e35c76 baseline version: qemuu 6972ef1440a9d685482d78672620a7482f2bd09a Last test of basis 180691 2023-05-17 10:45:22 Z 21 days Failing since 180699 2023-05-18 07:21:24 Z 20 days 69 attempts Testing same since 181271 2023-06-07 19:09:58 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Afonso Bordado Akihiko Odaki Akihiro Suda Alex Bennée Alex Williamson Alexander Bulekov Alexander Graf Alexander Ivanov Alistair Francis Ani Sinha Ani Sinha Anthony PERARD Anton Johansson BALATON Zoltan Bernhard Beschow Bin Meng Brian Cain Brice Goglin Camilla Conte Chuck Zmudzinski Cindy Lu Clément Chigot Cornelia Huck Cédric Le Goater Cédric Le Goater Daniel Henrique Barboza Daniel P. Berrangé Daniil Kovalev David Hildenbrand David Woodhouse Emanuele Giuseppe Esposito Enze Li Eric Auger Eric Blake Eric DeVolder Erico Nunes Eugenio Pérez Fabiano Rosas Fan Ni Fiona Ebner Francesco Cagnin Francisco Iglesias Gavin Shan Gregory Price Gregory Price Hanna Czenczek Hao Zeng Hawkins Jiawei Igor Mammedov Ilya Leoshkevich Ira Weiny Jagannathan Raman Jason Wang Jean-Louis Dupond Jean-Philippe Brucker Jiaxun Yang John Snow Jonathan Cameron Juan Quintela Kevin Wolf Laurent Vivier Lei Yang Leonardo Bras Maksim Davydov Marc-André Lureau Marcin Juszkiewicz Marco Liebel Mark Cave-Ayland Markus Armbruster Matheus Tavares Bernardino Mauro Matteo Cascella Max Fritz Michael S. Tsirkin Michael Tokarev Michal Privoznik Mostafa Saleh Nicholas Piggin Nicolas Saenz Julienne Niek Linnenbank Palmer Dabbelt Paolo Bonzini Peter Maydell Peter Xu Philippe Mathieu-Daudé qianfan Zhao Raghu H Rene Engel Richard Henderson Richard Purdie Ricky Zhou Ryan Wendland Sebastian Ott Sergio Lopez Sid Manning Song Gao Stefan Hajnoczi Stefano Garzarella Steve Sistare Taylor Simpson Thomas Huth Thomas Weißschuh timothee.cocault@gmail.com Timothée Cocault Tommy Wu Vikram Garhwal Viktor Prutyanov Vitaly Cheptsov Vivek Kasireddy Vladimir Sementsov-Ogievskiy Volker Rümelin Xinyu Li Zeng Hao Zhenyu Zhang Zhenzhong Duan Zhuojia Shen jobs: build-amd64-xsm fail build-arm64-xsm fail build-i386-xsm fail build-amd64 fail build-arm64 fail build-armhf fail build-i386 fail build-amd64-libvirt blocked build-arm64-libvirt blocked build-armhf-libvirt blocked build-i386-libvirt blocked build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl blocked test-amd64-coresched-amd64-xl blocked test-arm64-arm64-xl blocked test-armhf-armhf-xl blocked test-amd64-i386-xl blocked test-amd64-coresched-i386-xl blocked test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-i386-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-amd64-libvirt-xsm blocked test-arm64-arm64-libvirt-xsm blocked test-amd64-i386-libvirt-xsm blocked test-amd64-amd64-xl-xsm blocked test-arm64-arm64-xl-xsm blocked test-amd64-i386-xl-xsm blocked test-amd64-amd64-qemuu-nested-amd blocked test-amd64-amd64-xl-pvhv2-amd blocked test-amd64-i386-qemuu-rhel6hvm-amd blocked test-amd64-amd64-dom0pvh-xl-amd blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-freebsd10-amd64 blocked test-amd64-amd64-qemuu-freebsd11-amd64 blocked test-amd64-amd64-qemuu-freebsd12-amd64 blocked test-amd64-amd64-xl-qemuu-ovmf-amd64 blocked test-amd64-i386-xl-qemuu-ovmf-amd64 blocked test-amd64-amd64-xl-qemuu-win7-amd64 blocked test-amd64-i386-xl-qemuu-win7-amd64 blocked test-amd64-amd64-xl-qemuu-ws16-amd64 blocked test-amd64-i386-xl-qemuu-ws16-amd64 blocked test-armhf-armhf-xl-arndale blocked test-amd64-amd64-xl-credit1 blocked test-arm64-arm64-xl-credit1 blocked test-armhf-armhf-xl-credit1 blocked test-amd64-amd64-xl-credit2 blocked test-arm64-arm64-xl-credit2 blocked test-armhf-armhf-xl-credit2 blocked test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-freebsd10-i386 blocked test-amd64-amd64-qemuu-nested-intel blocked test-amd64-amd64-xl-pvhv2-intel blocked test-amd64-i386-qemuu-rhel6hvm-intel blocked test-amd64-amd64-dom0pvh-xl-intel blocked test-amd64-amd64-libvirt blocked test-armhf-armhf-libvirt blocked test-amd64-i386-libvirt blocked test-amd64-amd64-xl-multivcpu blocked test-armhf-armhf-xl-multivcpu blocked test-amd64-amd64-pair blocked test-amd64-i386-pair blocked test-amd64-amd64-libvirt-pair blocked test-amd64-i386-libvirt-pair blocked test-amd64-amd64-xl-pvshim blocked test-amd64-i386-xl-pvshim blocked test-amd64-amd64-pygrub blocked test-armhf-armhf-libvirt-qcow2 blocked test-amd64-amd64-xl-qcow2 blocked test-arm64-arm64-libvirt-raw blocked test-armhf-armhf-libvirt-raw blocked test-amd64-i386-libvirt-raw blocked test-amd64-amd64-xl-rtds blocked test-armhf-armhf-xl-rtds blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-amd64-xl-shadow blocked test-amd64-i386-xl-shadow blocked test-arm64-arm64-xl-thunderx blocked test-amd64-amd64-libvirt-vhd blocked test-arm64-arm64-xl-vhd blocked test-armhf-armhf-xl-vhd blocked test-amd64-i386-xl-vhd blocked ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 15891 lines long.) From xen-devel-bounces@lists.xenproject.org Thu Jun 08 01:19:08 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 08 Jun 2023 01:19:08 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545063.851265 (Exim 4.92) (envelope-from ) id 1q74Ib-0001up-Iq; Thu, 08 Jun 2023 01:18:49 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545063.851265; Thu, 08 Jun 2023 01:18:49 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q74Ib-0001ui-DV; Thu, 08 Jun 2023 01:18:49 +0000 Received: by outflank-mailman (input) for mailman id 545063; Thu, 08 Jun 2023 01:18:49 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q74Ia-0001uY-Vz; Thu, 08 Jun 2023 01:18:48 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q74Ia-0003MN-V1; Thu, 08 Jun 2023 01:18:48 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q74Ia-0000Aa-Ia; Thu, 08 Jun 2023 01:18:48 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q74Ia-00085d-I8; Thu, 08 Jun 2023 01:18:48 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=K2VdPlCc5WWwGJBwALm1is3b/oWQEeY3+TN3UOBSWUk=; b=TZ7a9xJFF4T0RRc2u3bMpNjAyp G1FZZHXlQ7Z0vjhobtBVuj4CJ29eZ5kAcSBCIWQJIV/KPIOrBfki1bmdtjeI/gnzHcF2FTrpCZpcL KEySLmfwEyZlMfTCct3UcAIhREf69Zw1nNrJFB/zyNbpECdHsw3akpkvzWgkn90EsriM=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable-smoke test] 181280: regressions - FAIL X-Osstest-Failures: xen-unstable-smoke:build-arm64-xsm:xen-build:fail:regression xen-unstable-smoke:build-armhf:xen-build:fail:regression xen-unstable-smoke:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking xen-unstable-smoke:test-armhf-armhf-xl:build-check(1):blocked:nonblocking xen-unstable-smoke:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking X-Osstest-Versions-This: xen=0c2d0d32b341eb79bb095fd3f35b9a2672333d64 X-Osstest-Versions-That: xen=64a647f8d817c6989edc000613b5afae19f03f99 From: osstest service owner Date: Thu, 08 Jun 2023 01:18:48 +0000 flight 181280 xen-unstable-smoke real [real] http://logs.test-lab.xenproject.org/osstest/logs/181280/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-arm64-xsm 6 xen-build fail REGR. vs. 181233 build-armhf 6 xen-build fail REGR. vs. 181233 Tests which did not succeed, but are not blocking: test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 15 migrate-support-check fail never pass version targeted for testing: xen 0c2d0d32b341eb79bb095fd3f35b9a2672333d64 baseline version: xen 64a647f8d817c6989edc000613b5afae19f03f99 Last test of basis 181233 2023-06-07 02:04:37 Z 0 days Failing since 181246 2023-06-07 11:02:03 Z 0 days 7 attempts Testing same since 181266 2023-06-07 18:00:26 Z 0 days 4 attempts ------------------------------------------------------------ People who touched revisions under test: Christian Lindig George Dunlap Henry Wang # CHANGELOG Juergen Gross Julien Grall Luca Fancellu Michal Orzel jobs: build-arm64-xsm fail build-amd64 pass build-armhf fail build-amd64-libvirt pass test-armhf-armhf-xl blocked test-arm64-arm64-xl-xsm blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-libvirt pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 461 lines long.) From xen-devel-bounces@lists.xenproject.org Thu Jun 08 02:37:00 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 08 Jun 2023 02:37:00 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545081.851314 (Exim 4.92) (envelope-from ) id 1q75Vz-0002JE-KP; Thu, 08 Jun 2023 02:36:43 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545081.851314; Thu, 08 Jun 2023 02:36:43 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q75Vz-0002J6-F7; Thu, 08 Jun 2023 02:36:43 +0000 Received: by outflank-mailman (input) for mailman id 545081; Thu, 08 Jun 2023 02:36:41 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q75Vx-0002Iw-Sy; Thu, 08 Jun 2023 02:36:41 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q75Vx-0005We-Ql; Thu, 08 Jun 2023 02:36:41 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q75Vx-00020E-DC; Thu, 08 Jun 2023 02:36:41 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q75Vx-0002TD-Cn; Thu, 08 Jun 2023 02:36:41 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=4i2DdSfzgQSYWDsxM3pNvRLuT1sTLZkfIAUXhAp2QyM=; b=qonCb1qFcQ9p1SlcMtIXLe9QmF JVGtVdpiht4uzYH1BXYeG60Ar/EuKhzGW4VC6rAHLtB8nHqoQoiP+qKWn4IZJtUBecKEXifhGR0ys pHNL8AZfwJTMh2EF+YrVqNqUOEuMpv7NVlYzn0n8PaStBWbLiP0iCU1weLop4HKu7xcg=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable test] 181261: tolerable FAIL - PUSHED X-Osstest-Failures: xen-unstable:test-amd64-i386-libvirt-pair:xen-install/dst_host:fail:heisenbug xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking X-Osstest-Versions-This: xen=64a647f8d817c6989edc000613b5afae19f03f99 X-Osstest-Versions-That: xen=b3880c365db89051728e1de6b6889c750cbdd915 From: osstest service owner Date: Thu, 08 Jun 2023 02:36:41 +0000 flight 181261 xen-unstable real [real] flight 181284 xen-unstable real-retest [real] http://logs.test-lab.xenproject.org/osstest/logs/181261/ http://logs.test-lab.xenproject.org/osstest/logs/181284/ Failures :-/ but no regressions. Tests which are failing intermittently (not blocking): test-amd64-i386-libvirt-pair 11 xen-install/dst_host fail pass in 181284-retest Tests which did not succeed, but are not blocking: test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 181194 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop fail like 181194 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 181194 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 181194 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop fail like 181194 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop fail like 181194 test-armhf-armhf-libvirt 16 saverestore-support-check fail like 181194 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail like 181194 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail like 181194 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 181194 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop fail like 181194 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 181194 test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-i386-xl-pvshim 14 guest-start fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-i386-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-armhf-armhf-xl-multivcpu 15 migrate-support-check fail never pass test-armhf-armhf-xl-multivcpu 16 saverestore-support-check fail never pass test-amd64-i386-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-xl 15 migrate-support-check fail never pass test-armhf-armhf-xl 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass test-amd64-i386-libvirt 15 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 15 saverestore-support-check fail never pass test-armhf-armhf-xl-credit2 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit2 16 saverestore-support-check fail never pass test-armhf-armhf-xl-arndale 15 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt 15 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 15 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail never pass version targeted for testing: xen 64a647f8d817c6989edc000613b5afae19f03f99 baseline version: xen b3880c365db89051728e1de6b6889c750cbdd915 Last test of basis 181194 2023-06-05 16:40:12 Z 2 days Failing since 181210 2023-06-06 08:53:29 Z 1 days 4 attempts Testing same since 181243 2023-06-07 08:19:16 Z 0 days 2 attempts ------------------------------------------------------------ People who touched revisions under test: Alejandro Vallejo Andrew Cooper Henry Wang # CHANGELOG Jan Beulich Luca Fancellu Stefano Stabellini jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64-xtf pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-prev pass build-i386-prev pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-xtf-amd64-amd64-1 pass test-xtf-amd64-amd64-2 pass test-xtf-amd64-amd64-3 pass test-xtf-amd64-amd64-4 pass test-xtf-amd64-amd64-5 pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl pass test-amd64-i386-xl pass test-amd64-coresched-i386-xl pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-i386-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-i386-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-i386-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-i386-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-i386-qemut-rhel6hvm-amd pass test-amd64-i386-qemuu-rhel6hvm-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-i386-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-freebsd10-amd64 pass test-amd64-amd64-qemuu-freebsd11-amd64 pass test-amd64-amd64-qemuu-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-i386-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-i386-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-i386-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-amd64-i386-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale pass test-amd64-amd64-examine-bios pass test-amd64-i386-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 pass test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 pass test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine pass test-amd64-i386-examine pass test-amd64-i386-freebsd10-i386 pass test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-i386-qemut-rhel6hvm-intel pass test-amd64-i386-qemuu-rhel6hvm-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt pass test-amd64-i386-libvirt pass test-amd64-amd64-livepatch pass test-amd64-i386-livepatch pass test-amd64-amd64-migrupgrade pass test-amd64-i386-migrupgrade pass test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu pass test-amd64-amd64-pair pass test-amd64-i386-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-i386-libvirt-pair fail test-amd64-amd64-xl-pvshim pass test-amd64-i386-xl-pvshim fail test-amd64-amd64-pygrub pass test-armhf-armhf-libvirt-qcow2 pass test-amd64-amd64-xl-qcow2 pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw pass test-amd64-i386-libvirt-raw pass test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds pass test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-amd64-i386-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-i386-examine-uefi pass test-amd64-amd64-libvirt-vhd pass test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd pass test-amd64-i386-xl-vhd pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Pushing revision : To xenbits.xen.org:/home/xen/git/xen.git b3880c365d..64a647f8d8 64a647f8d817c6989edc000613b5afae19f03f99 -> master From xen-devel-bounces@lists.xenproject.org Thu Jun 08 03:18:42 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 08 Jun 2023 03:18:42 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545094.851329 (Exim 4.92) (envelope-from ) id 1q76AV-0006qJ-J4; Thu, 08 Jun 2023 03:18:35 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545094.851329; Thu, 08 Jun 2023 03:18:35 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q76AV-0006qC-Fw; Thu, 08 Jun 2023 03:18:35 +0000 Received: by outflank-mailman (input) for mailman id 545094; Thu, 08 Jun 2023 03:18:34 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q76AU-0006q2-Ao; Thu, 08 Jun 2023 03:18:34 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q76AU-0006fE-7E; Thu, 08 Jun 2023 03:18:34 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q76AU-00030d-0J; Thu, 08 Jun 2023 03:18:34 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q76AT-0006OL-WB; Thu, 08 Jun 2023 03:18:33 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=8degoxsTs6TG9lD8EyFndauUDE+kd7Wwc+le4p7g2c0=; b=iW2JdevSxfH+xF3zjRbJBUoEaq l+RYk9QpACkqEk5E3D+n54Qq2wek2QQD46EaEqqX12+VZQHV2z2bOrjJtSOQJHDuOlCIkoXACxAGu yyzmdLGEkOpcBXsDB8B2n3H6o5D0enOcvi529J7DYJFfnL/r3cXanV3Ypfx3Rqf/bnFk=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable-smoke test] 181285: regressions - FAIL X-Osstest-Failures: xen-unstable-smoke:build-arm64-xsm:xen-build:fail:regression xen-unstable-smoke:build-armhf:xen-build:fail:regression xen-unstable-smoke:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking xen-unstable-smoke:test-armhf-armhf-xl:build-check(1):blocked:nonblocking xen-unstable-smoke:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking X-Osstest-Versions-This: xen=0c2d0d32b341eb79bb095fd3f35b9a2672333d64 X-Osstest-Versions-That: xen=64a647f8d817c6989edc000613b5afae19f03f99 From: osstest service owner Date: Thu, 08 Jun 2023 03:18:33 +0000 flight 181285 xen-unstable-smoke real [real] http://logs.test-lab.xenproject.org/osstest/logs/181285/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-arm64-xsm 6 xen-build fail REGR. vs. 181233 build-armhf 6 xen-build fail REGR. vs. 181233 Tests which did not succeed, but are not blocking: test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 15 migrate-support-check fail never pass version targeted for testing: xen 0c2d0d32b341eb79bb095fd3f35b9a2672333d64 baseline version: xen 64a647f8d817c6989edc000613b5afae19f03f99 Last test of basis 181233 2023-06-07 02:04:37 Z 1 days Failing since 181246 2023-06-07 11:02:03 Z 0 days 8 attempts Testing same since 181266 2023-06-07 18:00:26 Z 0 days 5 attempts ------------------------------------------------------------ People who touched revisions under test: Christian Lindig George Dunlap Henry Wang # CHANGELOG Juergen Gross Julien Grall Luca Fancellu Michal Orzel jobs: build-arm64-xsm fail build-amd64 pass build-armhf fail build-amd64-libvirt pass test-armhf-armhf-xl blocked test-arm64-arm64-xl-xsm blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-libvirt pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 461 lines long.) From xen-devel-bounces@lists.xenproject.org Thu Jun 08 05:17:02 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 08 Jun 2023 05:17:02 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545090.851345 (Exim 4.92) (envelope-from ) id 1q780y-0002T6-RM; Thu, 08 Jun 2023 05:16:52 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545090.851345; Thu, 08 Jun 2023 05:16:52 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q780y-0002Sz-Ok; Thu, 08 Jun 2023 05:16:52 +0000 Received: by outflank-mailman (input) for mailman id 545090; Thu, 08 Jun 2023 02:58:42 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q75rG-0004rr-CX for xen-devel@lists.xenproject.org; Thu, 08 Jun 2023 02:58:42 +0000 Received: from NAM10-DM6-obe.outbound.protection.outlook.com (mail-dm6nam10on20604.outbound.protection.outlook.com [2a01:111:f400:7e88::604]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 5e3b6ef6-05a8-11ee-b232-6b7b168915f2; Thu, 08 Jun 2023 04:58:40 +0200 (CEST) Received: from MW3PR05CA0021.namprd05.prod.outlook.com (2603:10b6:303:2b::26) by PH0PR12MB7470.namprd12.prod.outlook.com (2603:10b6:510:1e9::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Thu, 8 Jun 2023 02:58:35 +0000 Received: from CO1PEPF000042AA.namprd03.prod.outlook.com (2603:10b6:303:2b:cafe::2c) by MW3PR05CA0021.outlook.office365.com (2603:10b6:303:2b::26) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.19 via Frontend Transport; Thu, 8 Jun 2023 02:58:35 +0000 Received: from SATLEXMB04.amd.com (165.204.84.17) by CO1PEPF000042AA.mail.protection.outlook.com (10.167.243.39) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6477.13 via Frontend Transport; Thu, 8 Jun 2023 02:58:35 +0000 Received: from cjq-desktop.amd.com (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Wed, 7 Jun 2023 21:58:30 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 5e3b6ef6-05a8-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=b0dY5/27g2eph55w8e9ozNkKel7en8xmUTUTELADSm63S9QkDMUO0zfByDQuRFOwPWk4cx7CSa+O0PMrFxrNDvzlJds8qCOuVK4JfwzZAHP6i/NfV5mXL8eiZPR7cyUyIgfIbp170WyMOVIpSlJfcAbtEy+TAdG37UKqenGkb679Sy12sZnw0JLlkUXKwxBkE6N1F43SU0w5+e9dPk/YEr0wNj9wOqbBKzYXEWqroSMlQ8BgZwDhxhbRJk4ff+yqrbFG+OaUNfkW/F3ATUwuHdYGrrZdQlTw+nDOnop16vu6/i4mEF4A/15XcEGbcxBU/IoiB+jon568vhMNOpy7sQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=x8/Q2+Pz93oHH5y9Q2HrhJbwQdEQfl4i0Cdc66N/5YM=; b=Uj/oCKxoUqbWMOKcj4jo1L/DkMRAXV2Aei26htHiX13jo7VXshS0OvncSTFYCNYuNC0lVo+vnA8DngKgXnbVSY+fqETtPfleZpf5TPPvsngjPUMYXpONnD85XguKKxvTJwXeFNslOiw8p405SAEJ/He2sZtSs/13xE9wTedL9CVyP8LLPSNbwE1Gmb+tBtEl2qtsMDYS8AuIBATpUoAI79mKtGip1B+0Xof1XiGKzFzwjVq4WvCRb6WedIUn6CEyeYLFyW6Wy6VgGHKlJ8yT6HdaxhqygjLjqVji0OGnrpP7ifWUt6/Wf0fU0pqk1y7xa/Sjkt0JxZBuTBjkL9RDpA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=redhat.com smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=x8/Q2+Pz93oHH5y9Q2HrhJbwQdEQfl4i0Cdc66N/5YM=; b=wSHhmWSumB3sFnBFZ690t1nAu904qEAaQBRpmC2dWZ825fZXoJGPICoi1nu7ff5iYL2LHAHFfrwtQO/Wuw3hRSrbVoi7+ZNf6uTIjRqQU9DRH1pMXz3WjzFfvrGT/2gQCML2q3C3DdrwjjZSnwSsJ4o6oSZkEx+k6fd7HU1Pe7Y= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C From: Jiqian Chen To: Gerd Hoffmann , "Michael S . Tsirkin" , Stefano Stabellini , Anthony PERARD , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Jan Beulich , Antonio Caggiano , "Dr . David Alan Gilbert" , Robert Beckett , , CC: Alex Deucher , Christian Koenig , Stewart Hildebrand , Xenia Ragiadakou , Honglei Huang , Julia Zhang , Huang Rui , Jiqian Chen Subject: [QEMU PATCH 0/1] Date: Thu, 8 Jun 2023 10:56:54 +0800 Message-ID: <20230608025655.1674357-1-Jiqian.Chen@amd.com> X-Mailer: git-send-email 2.34.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain X-Originating-IP: [10.180.168.240] X-ClientProxiedBy: SATLEXMB03.amd.com (10.181.40.144) To SATLEXMB04.amd.com (10.181.40.145) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO1PEPF000042AA:EE_|PH0PR12MB7470:EE_ X-MS-Office365-Filtering-Correlation-Id: 4caee1c4-31b0-4e16-d363-08db67cc4075 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: nZKmOSBEr5DSUNcMJ6bkEXLRSrlThNUwc4c1tzXEfUJv/O25PxkVLF504ewymgm63acKs6Omz6TnZpk0h8iIPWRtyr4VI9H5/xkZv9rf1bXdk4vf9UeDoNytS9iGB5fHvuYrA26fLGtBl88O2jogFwXH5H/WRMLu6AKThEorUigg9rcMbdYwm1BFBPJmRn3xjZIPQs/ObRcaFYhb+D790FiYf9xV/DMV6xU7zd/Zfz9uyr0UrOd2ctl7GGnCO64Smv9wrehpUz71ezqAsQWJWzVFVdEywiRc1fmNMA+kR8d9BKzUmslTHb91QbWmKrvkQAwidMXiipNqrntBLASQ7PMpi7E2zSMnF7ZxMluepTK+/hNrQwhBFsqwWU1YuopYwXHA+3DmXvPl/LralUjSq4PZP1NEOIDIKiDx3jtchN0Gs/EdoRCk1Gm3Jwfic3R20PRz4rd8yedNvEN8mPJhAFqE2e/2xUnmhJIPp0w7W6juzHMFuIIVs/PXWxQuMRBRxCmgT77M9xnJevQtGyxZ3ByHGNrrZcI63AJOlng156Xx2lFePSQfdLtowUK337bVcNKNvoD2MgU37tzCr3hZODk2ore3CEWQdGW0yJOPPsF+uFtEXIncLLPH/0EvfKrMfAVR2/Ba3Dtiv2c1k05T4WZK1r/3lIKYCZo9kAXnZ89BL88Gy8SyLmq8U0B/t78u34i0vLcU67ny/PSF6Jj286WN8i+XXDZMWlVzJXG6t1aB1BV2xw5I4qxs4oihB7soyXQjTqjJKuKP5f65l6FxJt0mozVhPI1H5x/dCv5TWgg= X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(136003)(376002)(346002)(396003)(451199021)(46966006)(40470700004)(36840700001)(47076005)(2616005)(26005)(1076003)(356005)(81166007)(921005)(316002)(40480700001)(83380400001)(70206006)(70586007)(4326008)(7696005)(6666004)(16526019)(186003)(36860700001)(426003)(336012)(40460700003)(478600001)(82310400005)(110136005)(36756003)(54906003)(2906002)(5660300002)(8676002)(82740400003)(8936002)(86362001)(41300700001)(7416002)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 08 Jun 2023 02:58:35.4103 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 4caee1c4-31b0-4e16-d363-08db67cc4075 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com] X-MS-Exchange-CrossTenant-AuthSource: CO1PEPF000042AA.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR12MB7470 Hi all, I am working to implement virtgpu S3 function on Xen. Currently on Xen, if we start a guest who enables virtgpu, and then run "echo mem > /sys/power/state" to suspend guest. And run "sudo xl trigger s3resume" to resume guest. We can find that the guest kernel comes back, but the display doesn't. It just shown a black screen. Through reading codes, I founded that when guest was during suspending, it called into Qemu to call virtio_gpu_gl_reset. In virtio_gpu_gl_reset, it destroyed all resources and reset renderer. This made the display gone after guest resumed. I think we should keep resources or prevent they being destroyed when guest is suspending. So, I add a new status named freezing to virtgpu, and add a new ctrl message VIRTIO_GPU_CMD_STATUS_FREEZING to get notification from guest. If freezing is set to true, and then Qemu will realize that guest is suspending, it will not destroy resources and will not reset renderer. If freezing is set to false, Qemu will do its origin actions, and has no other impaction. And now, display can come back and applications can continue their status after guest resumes. Jiqian Chen (1): virtgpu: do not destroy resources when guest suspend hw/display/virtio-gpu-gl.c | 9 ++++++- hw/display/virtio-gpu-virgl.c | 3 +++ hw/display/virtio-gpu.c | 26 +++++++++++++++++++-- include/hw/virtio/virtio-gpu.h | 3 +++ include/standard-headers/linux/virtio_gpu.h | 9 +++++++ 5 files changed, 47 insertions(+), 3 deletions(-) -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 08 05:17:02 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 08 Jun 2023 05:17:02 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545092.851352 (Exim 4.92) (envelope-from ) id 1q780z-0002WU-5V; Thu, 08 Jun 2023 05:16:53 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545092.851352; Thu, 08 Jun 2023 05:16:53 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q780y-0002Vf-Vc; Thu, 08 Jun 2023 05:16:52 +0000 Received: by outflank-mailman (input) for mailman id 545092; Thu, 08 Jun 2023 02:58:53 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q75rQ-0004sU-UZ for xen-devel@lists.xenproject.org; Thu, 08 Jun 2023 02:58:52 +0000 Received: from NAM11-BN8-obe.outbound.protection.outlook.com (mail-bn8nam11on20601.outbound.protection.outlook.com [2a01:111:f400:7eae::601]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 63a1b64e-05a8-11ee-8611-37d641c3527e; Thu, 08 Jun 2023 04:58:50 +0200 (CEST) Received: from MW4P221CA0005.NAMP221.PROD.OUTLOOK.COM (2603:10b6:303:8b::10) by SJ2PR12MB8720.namprd12.prod.outlook.com (2603:10b6:a03:539::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Thu, 8 Jun 2023 02:58:41 +0000 Received: from CO1PEPF000042A8.namprd03.prod.outlook.com (2603:10b6:303:8b:cafe::59) by MW4P221CA0005.outlook.office365.com (2603:10b6:303:8b::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33 via Frontend Transport; Thu, 8 Jun 2023 02:58:41 +0000 Received: from SATLEXMB04.amd.com (165.204.84.17) by CO1PEPF000042A8.mail.protection.outlook.com (10.167.243.37) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6477.13 via Frontend Transport; Thu, 8 Jun 2023 02:58:41 +0000 Received: from cjq-desktop.amd.com (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Wed, 7 Jun 2023 21:58:35 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 63a1b64e-05a8-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=hHnTvZELV5fQRc/5XKlqBcucRzsEVOheRTQB+wBLFYswRCfx5tXCAn4mDlFhjFMHrYOE7TQ48faAhpnnvpL2BHhglD+nrtf6DDuPLeIrMWiR/2Ss8CZjpvtSmuzAzBafbRQ7sI5nU5Pn4BvKyzgSLHmSjCnRnFBbmEHLTI6wzEtVcMu8eHSDrpCmDahQkY3uAQZ2hhIC76o3pJ76EuaeuXbzjka4VPyzeEy7i1SaiEm/q4TgiunG4To7KhclADj0CR/bwz5CUMZ+KwM2mQbceglipSEeKyL3c7LPCH0zmH6oY30keSzpFivnOWHzNvQMQW/3hZrW5k0QbjluafhHhw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=aK8k7wmBdZjOn2C5EO1ZKL5Opw/gfR8vtLglsPFkJG4=; b=ZI7h8vzQh5gyhB+pm+fPeVbB7IgoNTK5mUsAGaRyKA86RxvXD8ibvLVdheXpgZlPfR4Gd/28ANHh3eViTxWsFOHkd9fNpZ5nxVE2n6R1B8QPPU5mCmqgNijdhRCU8LTyZZMXBAuM5w37Vq7MV0Bym2g6cOnDL42J+yy2JwOJdHe1Rqzjy4XfMGzYLxXMiwT7C9UPn65LFF7XQkVql6bkg6NaVsHBFPsZx4JV5tMra/9fLwBTxgp9I3XyMIIS/JMyXteMgp5sjGKOJOYqVwZ5GZPfe9w9vqCl+yJuLTDSm5wriYui1HGobi8c/D9SAk0aLsd4gblL0liqS4Gl9LDiBQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=redhat.com smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=aK8k7wmBdZjOn2C5EO1ZKL5Opw/gfR8vtLglsPFkJG4=; b=Lf/l3y0c9ntwIb5bWanzkJ1t9QJRRC9nDVaPtDXg5SXC7Eimgyaczy3bO1STNPewITbZuKfqNu+fFEd+A4ZCpWkpJGf7P9SX6ffTVR5o/OJXhl2y9ZHeXMpnbQK2TrBJJo0hyqXhcvFaQ747MbUzps17gq2N9awFyn1FQaF/8n8= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C From: Jiqian Chen To: Gerd Hoffmann , "Michael S . Tsirkin" , Stefano Stabellini , Anthony PERARD , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Jan Beulich , Antonio Caggiano , "Dr . David Alan Gilbert" , Robert Beckett , , CC: Alex Deucher , Christian Koenig , Stewart Hildebrand , Xenia Ragiadakou , Honglei Huang , Julia Zhang , Huang Rui , Jiqian Chen Subject: [QEMU PATCH 1/1] virtgpu: do not destroy resources when guest suspend Date: Thu, 8 Jun 2023 10:56:55 +0800 Message-ID: <20230608025655.1674357-2-Jiqian.Chen@amd.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20230608025655.1674357-1-Jiqian.Chen@amd.com> References: <20230608025655.1674357-1-Jiqian.Chen@amd.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain X-Originating-IP: [10.180.168.240] X-ClientProxiedBy: SATLEXMB03.amd.com (10.181.40.144) To SATLEXMB04.amd.com (10.181.40.145) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO1PEPF000042A8:EE_|SJ2PR12MB8720:EE_ X-MS-Office365-Filtering-Correlation-Id: dc5dfc70-2937-4659-ce06-08db67cc43fa X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: J7oHQ15EcAJHkXnoUM31E6qEgZTTZyMDHiGDqXF3jtpqpK1JTVW6tBpTCYSBxyJvg17jQrhYFraV3ASMbCBxRF7oe3uWVLWu4u40oAtuKsIEBhXwNOKml+NnugeEyrAQ1j+xMr00NmP62Gqdn/BwdMG8KWTkQ0UjvwdaH5CR/tq999l/zHYkiKSYmJOQQZTZ7lVyvikaP9sAoSqvidyMCK0ml8bfSa9RAh+IkNGBkPP3a53DdR6YgZTEVEgfOzre8JOgumRYJOM8O6B3T5Hx1/a5/BzeHoz36dTm8o6tOo1oVMDZpNJhWflsDnBDepkLowde2Ye2MOyCw4a691oIKaUMYSuujk0lVjNJo+2059Xu+dBlwswfgsqLrKrd/AZ+rICQqAUmGhwKAdoKzcWObh8sa3m9Zjqre2tjnaqDtq4MNqxjEIxlMudAtnYCOFA1SYb88PnjKorN2HgPfhGv6b1djHyMxvEEcw5TBIxyawkVyLrepxvGYsFNyq4V//rGWA9j4hx4pggoMpomX4j3y9VjgfVVRVc9rp67PT7WPkYL051gMK9xA0VXPAeVKzj0Xer60BPgHQmI61qXc69SAKCd3qJMwvmAmg1sLzeIbmZqfUpjKKNPBOqJ6SRRb2nFkF/oHtLI73Zo650u8AiaotNAxTRrXu+PCGljU6pMKCbvc8Sj0bCcY5of7v63sxa1JYHqv375ccx+1BZHfmml4I1O/frJpNXMbifx8INGoCk7S7UtbQUIEMbAWSteKDVRSkuJD3pTXJwB11JuKnwWruylVLYiZG6jtfHJikrN0D4= X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(376002)(39860400002)(136003)(396003)(346002)(451199021)(46966006)(36840700001)(40470700004)(70586007)(15650500001)(478600001)(70206006)(316002)(2906002)(8936002)(41300700001)(4326008)(8676002)(110136005)(54906003)(6666004)(5660300002)(7416002)(7696005)(26005)(40460700003)(1076003)(82740400003)(921005)(356005)(2616005)(16526019)(40480700001)(83380400001)(47076005)(36860700001)(186003)(336012)(81166007)(36756003)(86362001)(82310400005)(426003)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 08 Jun 2023 02:58:41.2994 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: dc5dfc70-2937-4659-ce06-08db67cc43fa X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com] X-MS-Exchange-CrossTenant-AuthSource: CO1PEPF000042A8.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ2PR12MB8720 After suspending and resuming guest VM, you will get a black screen, and the display can't come back. This is because when guest did suspending, it called into qemu to call virtio_gpu_gl_reset. In function virtio_gpu_gl_reset, it destroyed resources and reset renderer, which were used for display. As a result, guest's screen can't come back to the time when it was suspended and only showed black. So, this patch adds a new ctrl message VIRTIO_GPU_CMD_STATUS_FREEZING to get notification from guest. If guest is during suspending, it sets freezing status of virtgpu to true, this will prevent destroying resources and resetting renderer when guest calls into virtio_gpu_gl_reset. If guest is during resuming, it sets freezing to false, and then virtio_gpu_gl_reset will keep its origin actions and has no other impaction. Signed-off-by: Jiqian Chen --- hw/display/virtio-gpu-gl.c | 9 ++++++- hw/display/virtio-gpu-virgl.c | 3 +++ hw/display/virtio-gpu.c | 26 +++++++++++++++++++-- include/hw/virtio/virtio-gpu.h | 3 +++ include/standard-headers/linux/virtio_gpu.h | 9 +++++++ 5 files changed, 47 insertions(+), 3 deletions(-) diff --git a/hw/display/virtio-gpu-gl.c b/hw/display/virtio-gpu-gl.c index e06be60dfb..e11ad233eb 100644 --- a/hw/display/virtio-gpu-gl.c +++ b/hw/display/virtio-gpu-gl.c @@ -100,7 +100,14 @@ static void virtio_gpu_gl_reset(VirtIODevice *vdev) */ if (gl->renderer_inited && !gl->renderer_reset) { virtio_gpu_virgl_reset_scanout(g); - gl->renderer_reset = true; + /* + * If guest is suspending, we shouldn't reset renderer, + * otherwise, the display can't come back to the time when + * it was suspended after guest resumed. + */ + if (!g->freezing) { + gl->renderer_reset = true; + } } } diff --git a/hw/display/virtio-gpu-virgl.c b/hw/display/virtio-gpu-virgl.c index 73cb92c8d5..183ec92d53 100644 --- a/hw/display/virtio-gpu-virgl.c +++ b/hw/display/virtio-gpu-virgl.c @@ -464,6 +464,9 @@ void virtio_gpu_virgl_process_cmd(VirtIOGPU *g, case VIRTIO_GPU_CMD_GET_EDID: virtio_gpu_get_edid(g, cmd); break; + case VIRTIO_GPU_CMD_STATUS_FREEZING: + virtio_gpu_cmd_status_freezing(g, cmd); + break; default: cmd->error = VIRTIO_GPU_RESP_ERR_UNSPEC; break; diff --git a/hw/display/virtio-gpu.c b/hw/display/virtio-gpu.c index 5e15c79b94..8f235d7848 100644 --- a/hw/display/virtio-gpu.c +++ b/hw/display/virtio-gpu.c @@ -373,6 +373,16 @@ static void virtio_gpu_resource_create_blob(VirtIOGPU *g, QTAILQ_INSERT_HEAD(&g->reslist, res, next); } +void virtio_gpu_cmd_status_freezing(VirtIOGPU *g, + struct virtio_gpu_ctrl_command *cmd) +{ + struct virtio_gpu_status_freezing sf; + + VIRTIO_GPU_FILL_CMD(sf); + virtio_gpu_bswap_32(&sf, sizeof(sf)); + g->freezing = sf.freezing; +} + static void virtio_gpu_disable_scanout(VirtIOGPU *g, int scanout_id) { struct virtio_gpu_scanout *scanout = &g->parent_obj.scanout[scanout_id]; @@ -986,6 +996,9 @@ void virtio_gpu_simple_process_cmd(VirtIOGPU *g, case VIRTIO_GPU_CMD_RESOURCE_DETACH_BACKING: virtio_gpu_resource_detach_backing(g, cmd); break; + case VIRTIO_GPU_CMD_STATUS_FREEZING: + virtio_gpu_cmd_status_freezing(g, cmd); + break; default: cmd->error = VIRTIO_GPU_RESP_ERR_UNSPEC; break; @@ -1344,6 +1357,8 @@ void virtio_gpu_device_realize(DeviceState *qdev, Error **errp) QTAILQ_INIT(&g->reslist); QTAILQ_INIT(&g->cmdq); QTAILQ_INIT(&g->fenceq); + + g->freezing = false; } void virtio_gpu_reset(VirtIODevice *vdev) @@ -1352,8 +1367,15 @@ void virtio_gpu_reset(VirtIODevice *vdev) struct virtio_gpu_simple_resource *res, *tmp; struct virtio_gpu_ctrl_command *cmd; - QTAILQ_FOREACH_SAFE(res, &g->reslist, next, tmp) { - virtio_gpu_resource_destroy(g, res); + /* + * If guest is suspending, we shouldn't destroy resources, + * otherwise, the display can't come back to the time when + * it was suspended after guest resumed. + */ + if (!g->freezing) { + QTAILQ_FOREACH_SAFE(res, &g->reslist, next, tmp) { + virtio_gpu_resource_destroy(g, res); + } } while (!QTAILQ_EMPTY(&g->cmdq)) { diff --git a/include/hw/virtio/virtio-gpu.h b/include/hw/virtio/virtio-gpu.h index 2e28507efe..c21c2990fb 100644 --- a/include/hw/virtio/virtio-gpu.h +++ b/include/hw/virtio/virtio-gpu.h @@ -173,6 +173,7 @@ struct VirtIOGPU { uint64_t hostmem; + bool freezing; bool processing_cmdq; QEMUTimer *fence_poll; QEMUTimer *print_stats; @@ -284,5 +285,7 @@ void virtio_gpu_virgl_reset_scanout(VirtIOGPU *g); void virtio_gpu_virgl_reset(VirtIOGPU *g); int virtio_gpu_virgl_init(VirtIOGPU *g); int virtio_gpu_virgl_get_num_capsets(VirtIOGPU *g); +void virtio_gpu_cmd_status_freezing(VirtIOGPU *g, + struct virtio_gpu_ctrl_command *cmd); #endif diff --git a/include/standard-headers/linux/virtio_gpu.h b/include/standard-headers/linux/virtio_gpu.h index 2da48d3d4c..aefffbd751 100644 --- a/include/standard-headers/linux/virtio_gpu.h +++ b/include/standard-headers/linux/virtio_gpu.h @@ -116,6 +116,9 @@ enum virtio_gpu_ctrl_type { VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID, VIRTIO_GPU_RESP_ERR_INVALID_CONTEXT_ID, VIRTIO_GPU_RESP_ERR_INVALID_PARAMETER, + + /* status */ + VIRTIO_GPU_CMD_STATUS_FREEZING = 0x1300, }; enum virtio_gpu_shm_id { @@ -453,4 +456,10 @@ struct virtio_gpu_resource_unmap_blob { uint32_t padding; }; +/* VIRTIO_GPU_CMD_STATUS_FREEZING */ +struct virtio_gpu_status_freezing { + struct virtio_gpu_ctrl_hdr hdr; + __u32 freezing; +}; + #endif -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 08 06:06:54 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 08 Jun 2023 06:06:54 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545115.851371 (Exim 4.92) (envelope-from ) id 1q78nI-0008Qp-LG; Thu, 08 Jun 2023 06:06:48 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545115.851371; Thu, 08 Jun 2023 06:06:48 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q78nI-0008Qi-Il; Thu, 08 Jun 2023 06:06:48 +0000 Received: by outflank-mailman (input) for mailman id 545115; Thu, 08 Jun 2023 06:06:46 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q78nG-0008QY-Ni; Thu, 08 Jun 2023 06:06:46 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q78nG-0002P2-Ji; Thu, 08 Jun 2023 06:06:46 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q78nG-0005Cp-7S; Thu, 08 Jun 2023 06:06:46 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q78nG-0008JD-6y; Thu, 08 Jun 2023 06:06:46 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=fTwFpFJ/046x9Cvb7fCd4KiPFLIHidYe5bapjfeqYHI=; b=Po2QNbPFuJwm5XZUNAWdwDwe6A tv1k5jAAFGoF7IA2IlJgrWn/W5HOkBOD1VgypBRb5IDUboLCpmaJUClsKFj/Ck5Q8G+3sfA6pteVN vWeBMoR6dp5BFiB1eWFeNc000arRKcKew6+6DN4hQg7b/rEbgGJ5xo89B4Pjt4ttnPkA=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable-smoke test] 181292: regressions - FAIL X-Osstest-Failures: xen-unstable-smoke:build-arm64-xsm:xen-build:fail:regression xen-unstable-smoke:build-armhf:xen-build:fail:regression xen-unstable-smoke:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking xen-unstable-smoke:test-armhf-armhf-xl:build-check(1):blocked:nonblocking xen-unstable-smoke:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking X-Osstest-Versions-This: xen=0c2d0d32b341eb79bb095fd3f35b9a2672333d64 X-Osstest-Versions-That: xen=64a647f8d817c6989edc000613b5afae19f03f99 From: osstest service owner Date: Thu, 08 Jun 2023 06:06:46 +0000 flight 181292 xen-unstable-smoke real [real] http://logs.test-lab.xenproject.org/osstest/logs/181292/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-arm64-xsm 6 xen-build fail REGR. vs. 181233 build-armhf 6 xen-build fail REGR. vs. 181233 Tests which did not succeed, but are not blocking: test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 15 migrate-support-check fail never pass version targeted for testing: xen 0c2d0d32b341eb79bb095fd3f35b9a2672333d64 baseline version: xen 64a647f8d817c6989edc000613b5afae19f03f99 Last test of basis 181233 2023-06-07 02:04:37 Z 1 days Failing since 181246 2023-06-07 11:02:03 Z 0 days 9 attempts Testing same since 181266 2023-06-07 18:00:26 Z 0 days 6 attempts ------------------------------------------------------------ People who touched revisions under test: Christian Lindig George Dunlap Henry Wang # CHANGELOG Juergen Gross Julien Grall Luca Fancellu Michal Orzel jobs: build-arm64-xsm fail build-amd64 pass build-armhf fail build-amd64-libvirt pass test-armhf-armhf-xl blocked test-arm64-arm64-xl-xsm blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-libvirt pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 461 lines long.) From xen-devel-bounces@lists.xenproject.org Thu Jun 08 06:40:08 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 08 Jun 2023 06:40:08 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545125.851392 (Exim 4.92) (envelope-from ) id 1q79JS-0003qx-Nc; Thu, 08 Jun 2023 06:40:02 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545125.851392; Thu, 08 Jun 2023 06:40:02 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q79JS-0003q1-Jf; Thu, 08 Jun 2023 06:40:02 +0000 Received: by outflank-mailman (input) for mailman id 545125; Thu, 08 Jun 2023 06:40:01 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q79JR-0003Qg-QN for xen-devel@lists.xenproject.org; Thu, 08 Jun 2023 06:40:01 +0000 Received: from NAM11-CO1-obe.outbound.protection.outlook.com (mail-co1nam11on20608.outbound.protection.outlook.com [2a01:111:f400:7eab::608]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 49401732-05c7-11ee-8611-37d641c3527e; Thu, 08 Jun 2023 08:39:59 +0200 (CEST) Received: from DS0PR17CA0013.namprd17.prod.outlook.com (2603:10b6:8:191::11) by CH3PR12MB8583.namprd12.prod.outlook.com (2603:10b6:610:15f::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.39; Thu, 8 Jun 2023 06:39:53 +0000 Received: from DM6NAM11FT064.eop-nam11.prod.protection.outlook.com (2603:10b6:8:191:cafe::a7) by DS0PR17CA0013.outlook.office365.com (2603:10b6:8:191::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.19 via Frontend Transport; Thu, 8 Jun 2023 06:39:54 +0000 Received: from SATLEXMB04.amd.com (165.204.84.17) by DM6NAM11FT064.mail.protection.outlook.com (10.13.172.234) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6477.24 via Frontend Transport; Thu, 8 Jun 2023 06:39:54 +0000 Received: from cjq-desktop.amd.com (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Thu, 8 Jun 2023 01:39:48 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 49401732-05c7-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=PmaptGuD2GBc3Erj51VSLB+iVrs9NA2isZqYZ6FnXs/AtvXf4TomLdKJUPMZl863d7lqszilBuN0sEsclMdNeDTP7HnGUZay2jNm1P9gXk1u3sj9B+jP/DYohxs9gDYfxhzCCSsVxbAZlEp4+/7WkvdCwK2AFV0xi81jZUemEdWV1dgfX/Iqv4vHRt6zMmUSakB7j8NREvCOMd0y8eyVywax4RrlTLXtqDs/swHOZoRgRabdNtl99pi3f5YPx/E/PteS92ONqVWSO3w8n8CwzLGmOmc4d15YXx4Q7oxf9xNvBPt7BuAAZwULiwse2lvZ+mB9LcnBZnOfU7z/6IzVnw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=xrtqlwI917BueYUVd+Vj4XNp2MgxV5oyRTF8tuln7BI=; b=ekqYcGQizGX+hupoXdDnp5lx/V81+HA775CKTucUZ9cXpdehloEz0VGlDYur1fdFXZPmT45Xohp+X4jIUW/yF/F7ocSLqtvD2/Hs8oIB9A+QIhPSZB7qAhEVBwbugvSmpG5ezF/mVf1FT0fj7kxQ0A2tGoL62sms0o+v7vJizKZCb2mb454hKDdUH0kte8VWeyAxOey1iLHGOIhOMlEqhr+kcgpSIfNLxQh9wKgXpc3ixWo35+luwmJAM4VG9GLulxCzLZfHY9cTLGIBufBkvfMdP9VGWsyOa0q0I/+Qbs3Xf5H1TxK7DUrkIHWrw7kNxZ7/OWGklogy9PAdelBW9w== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=redhat.com smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=xrtqlwI917BueYUVd+Vj4XNp2MgxV5oyRTF8tuln7BI=; b=NVS71tzMbJZenRTJdg6aH9ioiYPD147R7UHri7SW504YN9HhWCNWSNJ5AiD/OeqtZydZGUl6sqr8EUDxjmg+xYN/GgeZu54lAd8aVhSZ3y6nYy8syiq9BHL6B9cd1M/q3q7z4RNfA2Gj/xHK/eiawZ3AMJIpRko7ywrgPgfrm4k= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C From: Jiqian Chen To: David Airlie , Gerd Hoffmann , Gurchetan Singh , Chia-I Wu , Juergen Gross , Stefano Stabellini , Oleksandr Tyshchenko , Boris Ostrovsky , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , , , , CC: Alex Deucher , Christian Koenig , Stewart Hildebrand , Xenia Ragiadakou , Honglei Huang , Julia Zhang , Huang Rui , Jiqian Chen Subject: [LINUX KERNEL PATCH 1/1] virtgpu: init vq during resume and notify qemu guest status Date: Thu, 8 Jun 2023 14:38:57 +0800 Message-ID: <20230608063857.1677973-2-Jiqian.Chen@amd.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20230608063857.1677973-1-Jiqian.Chen@amd.com> References: <20230608063857.1677973-1-Jiqian.Chen@amd.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain X-Originating-IP: [10.180.168.240] X-ClientProxiedBy: SATLEXMB03.amd.com (10.181.40.144) To SATLEXMB04.amd.com (10.181.40.145) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DM6NAM11FT064:EE_|CH3PR12MB8583:EE_ X-MS-Office365-Filtering-Correlation-Id: fda92b22-3c30-4018-db28-08db67eb2b81 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: mraRXTL0VjJ+Icyy7dYgi2WD2hoFFqX1rpVqbf8b0tqCWFGKQFU4YNC5zoZKt5So0rNz36rg1ELrvgZmrEj8uXDhXTIRucl3hh8pJf9+3c+6VaiCl3IeaGvpqgpHFjiaWdKCPlmDl+OWIl8dyY+yHMDRcc6mmaQr872IKvzLH1kGiwRNm12xL3xd1f1zWGmTK4Qzggu2GkOLw4WyurJqCkRXrCIb3vQZgaNZ08qtQYskRJFTT0I9M271KSdrmhnFJaE5y+L0K6mUzWGLZCNvibUPaLBH2W6Q3oCSBrl2GG3nKrmdfuj4l+QJ/yIx7m3HEoC7EBIu/QU+x/kwP1EE5X/FoZ9oGA3A0z33JxP2Q2UHNDbLj6pFEEfJLjEgAwR3OOp+DxXrdhL02BskFb0mXJgkKc4BhpKhOAE+LTKNWxeYA9qHyQImerCoO2IqWSmbZ8BzFhMLk7CJ9kW2jS0hVkV8roXIH84yIyY9dZqQ4FTX7Czszf12FE+vFEbs81bBMFpbTlFVf3JKL056JmZICe9F0hMtIQKoamV/8BxwmltLIYAAVIXB3UcwbfCZ5DVE5Ce3Qh+0BdoaMUiBdvvKD/2jAc1vXtIeWsaODQKSXv1xflO1woDuDmhAI9bkTBNDCXf6cMPBr6mUYU8bs1xdAIrA0oYYOFtgrRFBwx5vdJ1gC896HotRtFH4AGE2P1G+353i7APj3jbYTAQHB/Axc7tznHgHsDrgCgrNy0MZPrcdt+4luosZ3DUsrGJaRVdMOEbqvjA8HRTiKgCbHkwxdB+HS6BLo0KlMsfwE11eZiw= X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(396003)(346002)(136003)(376002)(451199021)(36840700001)(40470700004)(46966006)(7416002)(83380400001)(47076005)(426003)(336012)(82740400003)(110136005)(54906003)(40480700001)(478600001)(8676002)(8936002)(41300700001)(316002)(70586007)(70206006)(356005)(921005)(81166007)(4326008)(5660300002)(86362001)(40460700003)(36756003)(6666004)(7696005)(2906002)(82310400005)(36860700001)(16526019)(186003)(1076003)(26005)(2616005)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 08 Jun 2023 06:39:54.7181 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: fda92b22-3c30-4018-db28-08db67eb2b81 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com] X-MS-Exchange-CrossTenant-AuthSource: DM6NAM11FT064.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH3PR12MB8583 This patch solves two problem: First, when we suspended guest VM, it called into Qemu to call virtio_reset->__virtio_queue_reset, this cleared all virtuqueue information of virtgpu on Qemu end. As a result, after guest resumed, guest sended ctrl/cursor requests to Qemu through virtqueue, but Qemu can't get requests from the virtqueue now. In function virtio_queue_notify, vq->vring.desc is NULL. So, this patch add freeze and restore function for virtgpu driver. In freeze function, it flushes all virtqueue works and deletes virtqueues. In restore function, it initializes virtqueues. And then, Qemu and guest can communicate normally. Second, when we suspended guest VM, it called into Qemu to call virtio_reset->virtio_gpu_gl_reset, this destroyed resources and reset renderer which were used for display. As a result, after guest resumed, the display can't come back and we only saw a black screen. So, this patch add a new ctrl message VIRTIO_GPU_CMD_STATUS_FREEZING. When guest is during suspending, we set freezing status to true to notify Qemu that guest entered suspending, and then Qemu will not destroy resources. When guest is during resuming, we set freezing status to false to notify Qemu that guest exited suspending, and then Qemu will keep its origin actions. As a result, the display can come back and everything of guest can come back to the time when guest was suspended. Signed-off-by: Jiqian Chen --- drivers/gpu/drm/virtio/virtgpu_drv.c | 32 ++++++++++++++++++++++++++++ drivers/gpu/drm/virtio/virtgpu_drv.h | 3 +++ drivers/gpu/drm/virtio/virtgpu_kms.c | 30 ++++++++++++++++++-------- drivers/gpu/drm/virtio/virtgpu_vq.c | 15 +++++++++++++ include/uapi/linux/virtio_gpu.h | 9 ++++++++ 5 files changed, 80 insertions(+), 9 deletions(-) diff --git a/drivers/gpu/drm/virtio/virtgpu_drv.c b/drivers/gpu/drm/virtio/virtgpu_drv.c index add075681e18..d5f9a6fbdbe4 100644 --- a/drivers/gpu/drm/virtio/virtgpu_drv.c +++ b/drivers/gpu/drm/virtio/virtgpu_drv.c @@ -130,6 +130,34 @@ static void virtio_gpu_config_changed(struct virtio_device *vdev) schedule_work(&vgdev->config_changed_work); } +static int virtio_gpu_freeze(struct virtio_device *dev) +{ + struct drm_device *ddev = dev->priv; + struct virtio_gpu_device *vgdev = ddev->dev_private; + int ret; + + ret = virtio_gpu_cmd_status_freezing(vgdev, 1); + if (!ret) { + flush_work(&vgdev->ctrlq.dequeue_work); + flush_work(&vgdev->cursorq.dequeue_work); + vgdev->vdev->config->del_vqs(vgdev->vdev); + } + return ret; +} + +static int virtio_gpu_restore(struct virtio_device *dev) +{ + struct drm_device *ddev = dev->priv; + struct virtio_gpu_device *vgdev = ddev->dev_private; + int ret; + + ret = virtio_gpu_init_vqs(dev); + if (!ret) { + ret = virtio_gpu_cmd_status_freezing(vgdev, 0); + } + return ret; +} + static struct virtio_device_id id_table[] = { { VIRTIO_ID_GPU, VIRTIO_DEV_ANY_ID }, { 0 }, @@ -156,6 +184,10 @@ static struct virtio_driver virtio_gpu_driver = { .driver.owner = THIS_MODULE, .id_table = id_table, .probe = virtio_gpu_probe, +#ifdef CONFIG_PM + .freeze = virtio_gpu_freeze, + .restore = virtio_gpu_restore, +#endif .remove = virtio_gpu_remove, .config_changed = virtio_gpu_config_changed }; diff --git a/drivers/gpu/drm/virtio/virtgpu_drv.h b/drivers/gpu/drm/virtio/virtgpu_drv.h index af6ffb696086..7f9cc1f3ad98 100644 --- a/drivers/gpu/drm/virtio/virtgpu_drv.h +++ b/drivers/gpu/drm/virtio/virtgpu_drv.h @@ -282,6 +282,7 @@ extern struct drm_ioctl_desc virtio_gpu_ioctls[DRM_VIRTIO_NUM_IOCTLS]; void virtio_gpu_create_context(struct drm_device *dev, struct drm_file *file); /* virtgpu_kms.c */ +int virtio_gpu_init_vqs(struct virtio_device *vdev); int virtio_gpu_init(struct virtio_device *vdev, struct drm_device *dev); void virtio_gpu_deinit(struct drm_device *dev); void virtio_gpu_release(struct drm_device *dev); @@ -425,6 +426,8 @@ virtio_gpu_cmd_set_scanout_blob(struct virtio_gpu_device *vgdev, uint32_t width, uint32_t height, uint32_t x, uint32_t y); +int virtio_gpu_cmd_status_freezing(struct virtio_gpu_device *vgdev, uint32_t freezing); + /* virtgpu_display.c */ int virtio_gpu_modeset_init(struct virtio_gpu_device *vgdev); void virtio_gpu_modeset_fini(struct virtio_gpu_device *vgdev); diff --git a/drivers/gpu/drm/virtio/virtgpu_kms.c b/drivers/gpu/drm/virtio/virtgpu_kms.c index 5a3b5aaed1f3..871b7ba98257 100644 --- a/drivers/gpu/drm/virtio/virtgpu_kms.c +++ b/drivers/gpu/drm/virtio/virtgpu_kms.c @@ -114,16 +114,33 @@ static void virtio_gpu_get_capsets(struct virtio_gpu_device *vgdev, vgdev->num_capsets = num_capsets; } -int virtio_gpu_init(struct virtio_device *vdev, struct drm_device *dev) +int virtio_gpu_init_vqs(struct virtio_device *vdev) { static vq_callback_t *callbacks[] = { virtio_gpu_ctrl_ack, virtio_gpu_cursor_ack }; static const char * const names[] = { "control", "cursor" }; + struct drm_device *dev = vdev->priv; + struct virtio_gpu_device *vgdev = dev->dev_private; + struct virtqueue *vqs[2]; + int ret; + + virtio_gpu_init_vq(&vgdev->ctrlq, virtio_gpu_dequeue_ctrl_func); + virtio_gpu_init_vq(&vgdev->cursorq, virtio_gpu_dequeue_cursor_func); + + ret = virtio_find_vqs(vgdev->vdev, 2, vqs, callbacks, names, NULL); + if (ret) { + DRM_ERROR("failed to find virt queues\n"); + return ret; + } + vgdev->ctrlq.vq = vqs[0]; + vgdev->cursorq.vq = vqs[1]; + return 0; +} +int virtio_gpu_init(struct virtio_device *vdev, struct drm_device *dev) +{ struct virtio_gpu_device *vgdev; - /* this will expand later */ - struct virtqueue *vqs[2]; u32 num_scanouts, num_capsets; int ret = 0; @@ -144,8 +161,6 @@ int virtio_gpu_init(struct virtio_device *vdev, struct drm_device *dev) ida_init(&vgdev->ctx_id_ida); ida_init(&vgdev->resource_ida); init_waitqueue_head(&vgdev->resp_wq); - virtio_gpu_init_vq(&vgdev->ctrlq, virtio_gpu_dequeue_ctrl_func); - virtio_gpu_init_vq(&vgdev->cursorq, virtio_gpu_dequeue_cursor_func); vgdev->fence_drv.context = dma_fence_context_alloc(1); spin_lock_init(&vgdev->fence_drv.lock); @@ -207,13 +222,10 @@ int virtio_gpu_init(struct virtio_device *vdev, struct drm_device *dev) DRM_INFO("features: %ccontext_init\n", vgdev->has_context_init ? '+' : '-'); - ret = virtio_find_vqs(vgdev->vdev, 2, vqs, callbacks, names, NULL); + ret = virtio_gpu_init_vqs(vdev); if (ret) { - DRM_ERROR("failed to find virt queues\n"); goto err_vqs; } - vgdev->ctrlq.vq = vqs[0]; - vgdev->cursorq.vq = vqs[1]; ret = virtio_gpu_alloc_vbufs(vgdev); if (ret) { DRM_ERROR("failed to alloc vbufs\n"); diff --git a/drivers/gpu/drm/virtio/virtgpu_vq.c b/drivers/gpu/drm/virtio/virtgpu_vq.c index b1a00c0c25a7..34976bccc330 100644 --- a/drivers/gpu/drm/virtio/virtgpu_vq.c +++ b/drivers/gpu/drm/virtio/virtgpu_vq.c @@ -1302,3 +1302,18 @@ void virtio_gpu_cmd_set_scanout_blob(struct virtio_gpu_device *vgdev, virtio_gpu_queue_ctrl_buffer(vgdev, vbuf); } + +int virtio_gpu_cmd_status_freezing(struct virtio_gpu_device *vgdev, uint32_t freezing) +{ + struct virtio_gpu_status_freezing *cmd_p; + struct virtio_gpu_vbuffer *vbuf; + + cmd_p = virtio_gpu_alloc_cmd(vgdev, &vbuf, sizeof(*cmd_p)); + memset(cmd_p, 0, sizeof(*cmd_p)); + + cmd_p->hdr.type = cpu_to_le32(VIRTIO_GPU_CMD_STATUS_FREEZING); + cmd_p->freezing = freezing; + virtio_gpu_queue_ctrl_buffer(vgdev, vbuf); + virtio_gpu_notify(vgdev); + return 0; +} \ No newline at end of file diff --git a/include/uapi/linux/virtio_gpu.h b/include/uapi/linux/virtio_gpu.h index f556fde07b76..15b0c4d2f504 100644 --- a/include/uapi/linux/virtio_gpu.h +++ b/include/uapi/linux/virtio_gpu.h @@ -116,6 +116,9 @@ enum virtio_gpu_ctrl_type { VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID, VIRTIO_GPU_RESP_ERR_INVALID_CONTEXT_ID, VIRTIO_GPU_RESP_ERR_INVALID_PARAMETER, + + /* status */ + VIRTIO_GPU_CMD_STATUS_FREEZING = 0x1300, }; enum virtio_gpu_shm_id { @@ -453,4 +456,10 @@ struct virtio_gpu_resource_unmap_blob { __le32 padding; }; +/* VIRTIO_GPU_CMD_STATUS_FREEZING */ +struct virtio_gpu_status_freezing { + struct virtio_gpu_ctrl_hdr hdr; + __u32 freezing; +}; + #endif -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 08 06:40:08 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 08 Jun 2023 06:40:08 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545124.851382 (Exim 4.92) (envelope-from ) id 1q79JO-0003Qt-9l; Thu, 08 Jun 2023 06:39:58 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545124.851382; Thu, 08 Jun 2023 06:39:58 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q79JO-0003Qm-5y; Thu, 08 Jun 2023 06:39:58 +0000 Received: by outflank-mailman (input) for mailman id 545124; Thu, 08 Jun 2023 06:39:57 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q79JN-0003Qg-2S for xen-devel@lists.xenproject.org; Thu, 08 Jun 2023 06:39:57 +0000 Received: from NAM02-DM3-obe.outbound.protection.outlook.com (mail-dm3nam02on20618.outbound.protection.outlook.com [2a01:111:f400:7e83::618]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 4598c833-05c7-11ee-8611-37d641c3527e; Thu, 08 Jun 2023 08:39:53 +0200 (CEST) Received: from DM6PR06CA0082.namprd06.prod.outlook.com (2603:10b6:5:336::15) by MN2PR12MB4143.namprd12.prod.outlook.com (2603:10b6:208:1d0::24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Thu, 8 Jun 2023 06:39:49 +0000 Received: from DM6NAM11FT058.eop-nam11.prod.protection.outlook.com (2603:10b6:5:336:cafe::d) by DM6PR06CA0082.outlook.office365.com (2603:10b6:5:336::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.34 via Frontend Transport; Thu, 8 Jun 2023 06:39:49 +0000 Received: from SATLEXMB04.amd.com (165.204.84.17) by DM6NAM11FT058.mail.protection.outlook.com (10.13.172.216) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6477.25 via Frontend Transport; Thu, 8 Jun 2023 06:39:48 +0000 Received: from cjq-desktop.amd.com (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Thu, 8 Jun 2023 01:39:43 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 4598c833-05c7-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=BLA1/oX+x/PyhZi6Vfp5Yeh1jcmyb3uH60pIifiMXRqJ3A2KfPT0yoj7Z7pjybsmj60LXegC+/YzRIkdzMvS37jOUm//u8sxQVpPmxC0PpT5O+6l3hgGIPjrhGhiybNvE5gXDxL4bxzlnFlOgPdoTxEX/JwPVYe4zaHC7UJLH4t9b565glZDyj46SryoIcmO51akGgL9Cnuy5sIfqHlTxV4EK0aQc3FNg3xWl1COI6pSbxpszDkKfA2QRibyNaO/nfoemdsQ5bvc3up7++ROqmv3RKf+xjvgFZHnIYXKTG6sLRZp9VGK2FDXgWJUQ5iPKr4mAWtge8aL02hEo3XXRQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=1UJZo7DxsPMnt083QgXmO3D2aIxk1wWdHIMn8hZzztg=; b=b6VSdNHpkXc3UbARS4Meh9H6aDqhRm28EwSD8RT6TbnrZ3YvEvBHfdo+2GhlixJkyMF7jFWuc5osHRINSqSw1hItIyjth4zHWMECu6zeC+3ZXX6eHaL+ZiiPOSkNrjXVWKAR2ljTI318LvDMW/LLXedz6NToCm6WXv7Oz1vfKnBHtclcz55APQbIG7NbPHHeIQjCGQYVZHkO2X2b7olfd9vnSQ+srPmG25V9GRUmuWQOIjtakfcek3CFY2AD8C5gE28gkg3iOnrN+xqfW1DjEkmDdZKvNjKWoGgl4MCzpiGDOcATq71mVw1+rTYBUumENIyWNWVGAZ1qFJU+bNtD0g== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=redhat.com smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=1UJZo7DxsPMnt083QgXmO3D2aIxk1wWdHIMn8hZzztg=; b=cW7NCLFfQDlmoNcAGkLr9DFDEwva0MZg9d2XugKHZZIdqFMwI/kS4g9w60V2UripT83FJ9edscxEvazJQmshCkI+EJcLazAAwZpYxuIqepsXrxjGw5KIHYU8JAJm5JmCfakVxl9/i1D5oQZGs+AiMVF0ZxyhjgmDI1UbQtmfM9o= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C From: Jiqian Chen To: David Airlie , Gerd Hoffmann , Gurchetan Singh , Chia-I Wu , Juergen Gross , Stefano Stabellini , Oleksandr Tyshchenko , Boris Ostrovsky , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , , , , CC: Alex Deucher , Christian Koenig , Stewart Hildebrand , Xenia Ragiadakou , Honglei Huang , Julia Zhang , Huang Rui , Jiqian Chen Subject: [LINUX KERNEL PATCH 0/1] add S3 support for virtgpu Date: Thu, 8 Jun 2023 14:38:56 +0800 Message-ID: <20230608063857.1677973-1-Jiqian.Chen@amd.com> X-Mailer: git-send-email 2.34.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain X-Originating-IP: [10.180.168.240] X-ClientProxiedBy: SATLEXMB03.amd.com (10.181.40.144) To SATLEXMB04.amd.com (10.181.40.145) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DM6NAM11FT058:EE_|MN2PR12MB4143:EE_ X-MS-Office365-Filtering-Correlation-Id: f2f4f0b8-55dd-45e7-4138-08db67eb2817 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: ln5c5JwgQp4z0mzXRHycb7Vh0WPcAjrNz0CghYRlb2YRx519G+hutEwGJeHMaQft0wVTH062EtFTSOPqFOdKJkOz+m1eWDSvbuHBSy/LAagk65Zx6bqn2SzmAopnkAR+WSXB8HnSU8gMJk3La3Xd6wTCdDzqnMkS3UNMU4q67RbsNEDXEIS9fos10Ke3vH4dd5vEOQ5lPl2lNtlCTN2Y7I2dLSKlt9L9lMPvPErsOlK08EkbCRbEBGJFHISTTXmTBGvgc37sjr0xvtVxM12QZETL5ycIUesYsqw99gI2rPJnwWcdjvZZ/TcLRz1Jx8BO6LP1x5AdwWopgBByQIMs9wTNvsvnFf9qOMpUFt9dl28HmDOWD2mDddcFkBRZmzC47q7PeNVe5BR1IJUpFxI1YiOgaooxxJekTU9x5bs0ANsR/u7xdq5izYyZB4NYrzSqwmXPgX/kXjbziuaC1O/if0q8Bsh8shnN6SNqIlXtFGYxjb+5sJxP3rvHiUiK+6YwQg0JmNaR4+TJYWGZzykBQjiMLr5EPqDscxocGx3Htv+VTbGZV+QUTbnx6vVrRX2ch63iqOu6p2eQNgHDNXjb04UucaR1dQfssjW3Y/NausClkSDZsO5kUZz1LJ2nMiLSPZQANJZHMcg9P0ugi2tLaI3MRSsNBOBfM3tex+tRxlH/lV5FoobSRw6T7k8jgnvJS/JpFFGsiAI7G2DQnWD8bwC1Cov/CcpCBTAaxYsnx/8zU8ffCo69Et5W+QDp0nisFPUb6FQb7NJ5iRhvXD0G5w== X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(136003)(396003)(39860400002)(376002)(346002)(451199021)(36840700001)(40470700004)(46966006)(41300700001)(6666004)(40480700001)(36756003)(966005)(8676002)(8936002)(5660300002)(110136005)(7416002)(70586007)(70206006)(4326008)(54906003)(316002)(478600001)(40460700003)(2906002)(7696005)(82310400005)(1076003)(26005)(186003)(83380400001)(336012)(47076005)(36860700001)(2616005)(426003)(356005)(81166007)(921005)(16526019)(86362001)(82740400003)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 08 Jun 2023 06:39:48.9864 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: f2f4f0b8-55dd-45e7-4138-08db67eb2817 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com] X-MS-Exchange-CrossTenant-AuthSource: DM6NAM11FT058.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN2PR12MB4143 Hi all, I am working to implement virtgpu S3 function on Xen. Currently on Xen, if we start a guest who enables virtgpu, and then run "echo mem > /sys/power/state" to suspend guest. And run "sudo xl trigger s3resume" to resume guest. We can find that the guest kernel comes back, but the display doesn't. It just shows a black screen. In response to the above phenomenon, I have found two problems. First, if we move mouse on the black screen, guest kernel still sends a cursor request to Qemu, but Qemu doesn't response. Because when guest is suspending, it calls device_suspend, and then call into Qemu to call virtio_reset->__virtio_queue_reset. In __virtio_queue_reset, it clears all virtqueue information on Qemu end. So, after guest resumes, Qemu can't get message from virtqueue. Second, the reason why display can't come back is that when guest is suspending, it calls into Qemu to call virtio_reset->virtio_gpu_gl_reset. In virtio_gpu_gl_reset, it destroys all resources and resets renderer, which are used for display. So after guest resumes, the display can't come back to the status when guest is suspended. This patch initializes virtqueue when guest is resuming to solve first problem. And it notifies Qemu that guest is suspending to prevent Qemu destroying resources, this is to solve second problem. And then, I can bring the display back, and everything continues their actions after guest resumes. Modifications on Qemu end is: https://lore.kernel.org/qemu-devel/20230608025655.1674357-2-Jiqian.Chen@amd.com/ Best regards, Jiqian Chen. Jiqian Chen (1): virtgpu: init vq during resume and notify qemu guest status drivers/gpu/drm/virtio/virtgpu_drv.c | 32 ++++++++++++++++++++++++++++ drivers/gpu/drm/virtio/virtgpu_drv.h | 3 +++ drivers/gpu/drm/virtio/virtgpu_kms.c | 30 ++++++++++++++++++-------- drivers/gpu/drm/virtio/virtgpu_vq.c | 15 +++++++++++++ include/uapi/linux/virtio_gpu.h | 9 ++++++++ 5 files changed, 80 insertions(+), 9 deletions(-) -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 08 07:07:10 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 08 Jun 2023 07:07:10 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545135.851401 (Exim 4.92) (envelope-from ) id 1q79jc-0007Rs-L2; Thu, 08 Jun 2023 07:07:04 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545135.851401; Thu, 08 Jun 2023 07:07:04 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q79jc-0007Rl-I9; Thu, 08 Jun 2023 07:07:04 +0000 Received: by outflank-mailman (input) for mailman id 545135; Thu, 08 Jun 2023 07:07:03 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q79jb-0007Rf-My for xen-devel@lists.xenproject.org; Thu, 08 Jun 2023 07:07:03 +0000 Received: from NAM10-MW2-obe.outbound.protection.outlook.com (mail-mw2nam10on20627.outbound.protection.outlook.com [2a01:111:f400:7e89::627]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 0fddaf7c-05cb-11ee-8611-37d641c3527e; Thu, 08 Jun 2023 09:07:01 +0200 (CEST) Received: from BL1PR12MB5849.namprd12.prod.outlook.com (2603:10b6:208:384::18) by SJ0PR12MB6928.namprd12.prod.outlook.com (2603:10b6:a03:47a::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.39; Thu, 8 Jun 2023 07:06:55 +0000 Received: from BL1PR12MB5849.namprd12.prod.outlook.com ([fe80::4ef5:2244:743b:9989]) by BL1PR12MB5849.namprd12.prod.outlook.com ([fe80::4ef5:2244:743b:9989%4]) with mapi id 15.20.6455.030; Thu, 8 Jun 2023 07:06:54 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 0fddaf7c-05cb-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=d3gPtMfabsJAAGISuVmhFQJ+3NVB5iNQr3JD8k5W0odouWwwvleLwGUBv7BclnI7z3skEzEfzig12Zkf5bq+3h0NFqPeg6qoOFovxBSMJB83WLttRtRN42eK9Cj1//70zmifGCfwbBA1/hH39qhkueuSAXoIH5NxQX4pmzEDjGW6jgcY2d2p0uXIJ5o4FzXFPzOYllnHjNnFW4D+dzQ1R/UaBzr/qvGBdFd9Bx3QATL7SrrWKwbpcrHvk8fwt426UJ2/5R2hsqcEKYtij9yyzaM5XzPdqPv2mJdN6r4pXPFiE4IUg2cRidkZJ5IretOtQdJ6KcOip3N44tYd8TLjvg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=l4coUB961KUBDW+TwzRGeXmOkSZMYjTGe4/4ArywONo=; b=jvWTvPBqS5xPtEC2AKVhdQ5ipeSVU/gAKdaSUA5HksSexGsA/ojU3hgy8TTiKhV+gkfNvkG1rrH1B1jBqOz98lhhqqRJCnpp/kNBpyRShjmuYd9PMwMuJqAnYwCa8K/1/3pFwj9CfgxoTjjAfJo5hA64ZHfPYWSlTVuGYZqI/BT/ug8xe0fbhn3ft67XXu+D/cflVZylacNtSvU7hKxwws0krfCQKdIjfXZw8e8WnOaUwzJkixOhodw/pGIHX4aAUsUfGQYRjaX/W00wW7337xgD2STuLquAm+LxSh4JKZLqQ8RsvxTKjXpDVvrp0wR8yzY5s4nUfHsNaMtV8bKqSg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass header.d=amd.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=l4coUB961KUBDW+TwzRGeXmOkSZMYjTGe4/4ArywONo=; b=u4G2d6Wwjl6q76AVRLjbDa7uVE1jBhzKsHNMnbFKiUa+wNfUGsARNqZDWDJI+7qc26hQS5LgWc15+gaGtwL+Al5jqpEvRYO6V9FO9+kWASkcT1zVHYTGorqb711VPHJPbsxBPzLq5ljunQ1UXz2ZWDnlndYqwYFstfdwYRk4bD0= From: "Chen, Jiqian" To: Gerd Hoffmann , "Michael S . Tsirkin" , Stefano Stabellini , Anthony PERARD , =?iso-8859-1?Q?Roger_Pau_Monn=E9?= , Jan Beulich , Antonio Caggiano , "Dr . David Alan Gilbert" , Robert Beckett , "qemu-devel@nongnu.org" , "xen-devel@lists.xenproject.org" CC: "Deucher, Alexander" , "Koenig, Christian" , "Hildebrand, Stewart" , Xenia Ragiadakou , "Huang, Honglei1" , "Zhang, Julia" , "Huang, Ray" , "Chen, Jiqian" Subject: Re: [QEMU PATCH 0/1] Thread-Topic: [QEMU PATCH 0/1] Thread-Index: AQHZmbUg+D/AFshzGkyCkFnupRc4g6+BASWA Date: Thu, 8 Jun 2023 07:06:54 +0000 Message-ID: References: <20230608025655.1674357-1-Jiqian.Chen@amd.com> In-Reply-To: <20230608025655.1674357-1-Jiqian.Chen@amd.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ms-exchange-imapappendstamp: IA0PR12MB8254.namprd12.prod.outlook.com (15.20.6455.003) authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=amd.com; x-ms-exchange-messagesentrepresentingtype: 1 x-ms-publictraffictype: Email x-ms-traffictypediagnostic: BL1PR12MB5849:EE_|SJ0PR12MB6928:EE_ x-ms-office365-filtering-correlation-id: c2803e9c-c8f6-4760-2126-08db67eef0fe x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: QIT3qmrUQVy9iWnNn/Q54K7TAhLbE4KPnegMwGsHQnVbPrkbGvBLlwe+qbGOljG6QcmZmgPMs4ilMWVLlvdrfdvjTWtIFgwO+Fi6nZx9U0yup2Q9sf+hRlVSZwpO2SO8TQpGAsfIMVqDtRiUr4MSdxB9DPuAOhUa0A12uPtoEgG3OO8ClB8LsDDz3IwjSeiwUbNMSbmTZRUHK8fSWXiOeQBgw9RocCkjDnweET5O6E09hzO/1hWoHMWFmH4D7qp6tLI85FxfKaArhPxQnc50zrAQTbhP0yBzpisOUQn3ezlTxOyLiSxeoeZ0JfWZFZGYLZrVj4HvmaHwL/YbV4e8y61B/At1+pxsXCefo4OEMrbMk1pqqXrY3wqbeyc9VhMHFXXbmUhVetnXa5FDwnLd2a4p6vTosN1aZJKRNjjnafckvzCdU+RvqIEVZ7KMtbIbXxv9oZF2IhHUAkjEwECOljJSqN3cih+1kOqnKDjn3XL61GmNWcD0engq/AFpxuE0bplzSyF4zgvVkT7BhI/RXvU+nE2uwqNpEi62UCcTBTsqfE5+CKkslnc0Jk8gZqnDQE21f4Y9Cm7ACmA92V4zW6mDVsUTPZgXFk7/nfEYdIj1tJY8YlWI2tgk0XECa8i1 x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BL1PR12MB5849.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(346002)(396003)(366004)(136003)(39860400002)(376002)(451199021)(6506007)(53546011)(9686003)(186003)(966005)(26005)(7696005)(71200400001)(122000001)(76116006)(66946007)(66556008)(66476007)(66446008)(64756008)(921005)(4326008)(478600001)(83380400001)(38070700005)(8936002)(8676002)(33656002)(5660300002)(52536014)(55016003)(38100700002)(110136005)(54906003)(316002)(7416002)(41300700001)(2906002);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?iso-8859-1?Q?eWX2xNZh3ZMuZXr+hX1h8psWEvubwBITOCF2LFVg6Q2uiflOz7Y9k8pLh9?= =?iso-8859-1?Q?vx8hdWs0vvvUPKDAdYS0Q2Zh0r+VUYRP+LisfCXd9U3ZVnuK+Wi6480mKb?= =?iso-8859-1?Q?ex5wH0lgu0Nyj75X+5XHfG3fgWPenD46OYY/T38MEU9aAhBYnZZC1XikNp?= =?iso-8859-1?Q?ikOH7jeNobF/+58Jl5N5mJn+4d1GCqyW7ErZv0W4ZUlTwNM+suRzIWHaJH?= =?iso-8859-1?Q?wniULysOlITxj04ijcgniML79//Lnl2vXnoOk6sHIBZX13qji0GDqGZ6GT?= =?iso-8859-1?Q?IgiVHeweGr+v4Xyv+5kuteecIJhDMsCFMbeNcLh5OtL61eKcLR4gtaAOKk?= =?iso-8859-1?Q?V5lNe2IG+Ftm/y/VW37nZdorEgo5RhjEt2Hb2XQQEHZ5ki+RY6mMdCeT+z?= =?iso-8859-1?Q?XPZ9PQ5xtSgjULa//oCEBoTrQdqfgFZEQbhNXYaYZgdl7WoEMq9/T7Eb5W?= =?iso-8859-1?Q?LyD98eWMi/w24QK6DMid+gvIkCqMUo6tur+2rPS7UG48iaaEm3p0zfTWYp?= =?iso-8859-1?Q?HsXvg9yRefd5AXHeFqdUVgDOUrelQ4V8GgQYU1dQPxACNZz66M0mg5SXhf?= =?iso-8859-1?Q?Shf9C+KTfk9HzlCGCSD73XWlkTMsgTLJgRawpuDx7cveaDN9vMYq3ttluj?= =?iso-8859-1?Q?Ucr9mcoQlFCDLrHq+FxPqQTWu7+mG8iQs8WuuRusWhp9oVBXPpFtj69+10?= =?iso-8859-1?Q?l+/0um4brqIUmBKZZ5+BMft6CqRLzKr74GfmQoZK8Njd7mcZ/ctfKLHigZ?= =?iso-8859-1?Q?hmx8ksMoUIcIaD+pUyvYvLW4vxOlrvbPRWia6DTvg1Lm+/OlPit4P4F27p?= =?iso-8859-1?Q?66m3I/cij4W1s1P7XcLUmcfdPHtIycOXaPOqot6zohE2orDilPsNOCqrlk?= =?iso-8859-1?Q?O9mg1zBw+Wgr8pPhIn+2z7YwpwDbKLqcTweyCCZsNJV4VcqKQQz2jub0zW?= =?iso-8859-1?Q?1Ghr/uiSfu7Oc+P5SO+JLBJ5kSFp4W2qXOklF+xYJ6byIy1EC4J7+vxdRO?= =?iso-8859-1?Q?TMbPQNXbviANovKKqz0WBKARU5QD2pbQJDJ9iYm0ay3f6y2dKOgdEW0HpF?= =?iso-8859-1?Q?zZKFHpwYl01+gpp9fHIhIaGWnHUF3LRCXIZXzBn4/a9n+CB59KZkGmWHz3?= =?iso-8859-1?Q?zrcbuqYtgetv/uuxMEf3AerVdqn5sDLuEJtvrj2QxWbf1R0dU2vcRcTYp3?= =?iso-8859-1?Q?kbViZxjy14tIUhVvW5GkvTOW8QKhb0nb0DcyqQmlJP3YE/NNJCnFeGiWvp?= =?iso-8859-1?Q?0T/qO3Dr4xH66ozdmHNLmjWLXo3m29flKR/R7Xu0iZTR6ps/vZb62TNfk0?= =?iso-8859-1?Q?/DZYUOEe7rj/U6yg51a9WoEQyDAXhIoL4K2YnAvH2UyMJK08saO/Bjjjqf?= =?iso-8859-1?Q?vI1+Y+gz9As/y00QsMDisyWOTdZtagfnojs1qCzaryEuphvvl7dVPX1u88?= =?iso-8859-1?Q?1PHLwpxVl6i8ui7UFVjEDjj/QZqhQKq+D8rlnTooGxuQhVbHofPYBZfLyl?= =?iso-8859-1?Q?SKSKsWR/nnob00VuLo67Kp3+n+3Iu8LBwbNH+RyWNWUgrkpd7dE8CYjXoC?= =?iso-8859-1?Q?Id0J3E7GsBMTuBCwrPxRy2q2iK8/4L6Zlc36orv5P2Nnj+EkFbu2UqSoV5?= =?iso-8859-1?Q?MrZ2FgXQx7Cvc=3D?= Content-Type: text/plain; charset="iso-8859-1" Content-ID: <1B7724F9128152459879568A95F8D6D0@amdcloud.onmicrosoft.com> Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: BL1PR12MB5849.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: c2803e9c-c8f6-4760-2126-08db67eef0fe X-MS-Exchange-CrossTenant-originalarrivaltime: 08 Jun 2023 07:06:54.5761 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: tnPAO6fvvHx8MmzYRpLGOZuN/pkymc14ogBljB8vU7+IFn1oON2XPao4mb6Qfi3yOV/NzKuRZbwMWvMlR80ZxA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR12MB6928 Hi all, Modifications on kernel end is: https://lore.kernel.org/lkml/20230608063857.1677973-2-Jiqian.Chen@amd.com/T= /#u On 2023/6/8 10:56, Jiqian Chen wrote: > Hi all, >=20 > I am working to implement virtgpu S3 function on Xen. >=20 > Currently on Xen, if we start a guest who enables virtgpu, and then > run "echo mem > /sys/power/state" to suspend guest. And run > "sudo xl trigger s3resume" to resume guest. We can find that > the guest kernel comes back, but the display doesn't. It just shown a > black screen. >=20 > Through reading codes, I founded that when guest was during suspending, > it called into Qemu to call virtio_gpu_gl_reset. In virtio_gpu_gl_reset, > it destroyed all resources and reset renderer. This made the display > gone after guest resumed. >=20 > I think we should keep resources or prevent they being destroyed when > guest is suspending. So, I add a new status named freezing to virtgpu, > and add a new ctrl message VIRTIO_GPU_CMD_STATUS_FREEZING to get > notification from guest. If freezing is set to true, and then Qemu will > realize that guest is suspending, it will not destroy resources and will > not reset renderer. If freezing is set to false, Qemu will do its origin > actions, and has no other impaction. >=20 > And now, display can come back and applications can continue their > status after guest resumes. >=20 > Jiqian Chen (1): > virtgpu: do not destroy resources when guest suspend >=20 > hw/display/virtio-gpu-gl.c | 9 ++++++- > hw/display/virtio-gpu-virgl.c | 3 +++ > hw/display/virtio-gpu.c | 26 +++++++++++++++++++-- > include/hw/virtio/virtio-gpu.h | 3 +++ > include/standard-headers/linux/virtio_gpu.h | 9 +++++++ > 5 files changed, 47 insertions(+), 3 deletions(-) >=20 --=20 Best regards, Chen, Jiqian. From xen-devel-bounces@lists.xenproject.org Thu Jun 08 07:13:21 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 08 Jun 2023 07:13:21 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545148.851415 (Exim 4.92) (envelope-from ) id 1q79pT-0000Xj-92; Thu, 08 Jun 2023 07:13:07 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545148.851415; Thu, 08 Jun 2023 07:13:07 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q79pT-0000Xc-6M; Thu, 08 Jun 2023 07:13:07 +0000 Received: by outflank-mailman (input) for mailman id 545148; Thu, 08 Jun 2023 07:13:05 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q79pR-0000XS-Nl; Thu, 08 Jun 2023 07:13:05 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q79pR-00040z-GY; Thu, 08 Jun 2023 07:13:05 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q79pR-0008Cd-5l; Thu, 08 Jun 2023 07:13:05 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q79pR-0000vl-5I; Thu, 08 Jun 2023 07:13:05 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Message-Id:Subject:To; bh=dlBe7+VKw1FtTVMteHPNu7C0ibMLk2jLW0dVPriQdKc=; b=d6U4yFcLy+/vh3MSyorFQtUYXh LiZUWnoM5/vXQmyOohEh42xYnjWE5JhZX7X3LCmDQf4GS89/yLvonYi6sMb5FyJaRFdaa7WT3tLHF xgUHWSqIixyOeQecyBqAdMVn4B1JoXMPTKFSs1lcVLg1V/mP3IGiXaRfFqCFIW1FqEcs=; To: xen-devel@lists.xenproject.org Subject: [xen-unstable-smoke bisection] complete build-arm64-xsm Message-Id: From: osstest service owner Date: Thu, 08 Jun 2023 07:13:05 +0000 branch xen-unstable-smoke xenbranch xen-unstable-smoke job build-arm64-xsm testid xen-build Tree: qemuu git://xenbits.xen.org/qemu-xen.git Tree: xen git://xenbits.xen.org/xen.git *** Found and reproduced problem changeset *** Bug is in tree: xen git://xenbits.xen.org/xen.git Bug introduced: 56a7aaa16bfe43945a0031319c60c7f323c46254 Bug not present: 9392bf6a3a44978373f2c54a4c69d739f437b3bc Last fail repro: http://logs.test-lab.xenproject.org/osstest/logs/181294/ commit 56a7aaa16bfe43945a0031319c60c7f323c46254 Author: Luca Fancellu Date: Wed May 31 08:24:10 2023 +0100 tools: add physinfo arch_capabilities handling for Arm On Arm, the SVE vector length is encoded in arch_capabilities field of struct xen_sysctl_physinfo, make use of this field in the tools when building for arm. Create header arm-arch-capabilities.h to handle the arch_capabilities field of physinfo for Arm. Signed-off-by: Luca Fancellu Acked-by: George Dunlap Acked-by: Christian Lindig Reviewed-by: Anthony PERARD For bisection revision-tuple graph see: http://logs.test-lab.xenproject.org/osstest/results/bisect/xen-unstable-smoke/build-arm64-xsm.xen-build.html Revision IDs in each graph node refer, respectively, to the Trees above. ---------------------------------------- Running cs-bisection-step --graph-out=/home/logs/results/bisect/xen-unstable-smoke/build-arm64-xsm.xen-build --summary-out=tmp/181294.bisection-summary --basis-template=181233 --blessings=real,real-bisect,real-retry xen-unstable-smoke build-arm64-xsm xen-build Searching for failure / basis pass: 181292 fail [host=rochester1] / 181233 [host=rochester0] 181195 ok. Failure / basis pass flights: 181292 / 181195 Tree: qemuu git://xenbits.xen.org/qemu-xen.git Tree: xen git://xenbits.xen.org/xen.git Latest 8c51cd970509b97d8378d175646ec32889828158 0c2d0d32b341eb79bb095fd3f35b9a2672333d64 Basis pass 8c51cd970509b97d8378d175646ec32889828158 b35b22acb887f682efe8385b3df165220bc84c86 Generating revisions with ./adhoc-revtuple-generator git://xenbits.xen.org/qemu-xen.git#8c51cd970509b97d8378d175646ec32889828158-8c51cd970509b97d8378d175646ec32889828158 git://xenbits.xen.org/xen.git#b35b22acb887f682efe8385b3df165220bc84c86-0c2d0d32b341eb79bb095fd3f35b9a2672333d64 Loaded 5001 nodes in revision graph Searching for test results: 181195 pass 8c51cd970509b97d8378d175646ec32889828158 b35b22acb887f682efe8385b3df165220bc84c86 181233 [host=rochester0] 181246 fail 8c51cd970509b97d8378d175646ec32889828158 cb8b18d49ad804108ead8667179794b0ead66f2a 181248 fail 8c51cd970509b97d8378d175646ec32889828158 685048441e1cd935b622bba47d3ca612e75b4ef6 181254 [host=rochester0] 181260 pass 8c51cd970509b97d8378d175646ec32889828158 b35b22acb887f682efe8385b3df165220bc84c86 181265 [host=rochester0] 181269 [host=rochester0] 181266 fail 8c51cd970509b97d8378d175646ec32889828158 0c2d0d32b341eb79bb095fd3f35b9a2672333d64 181270 [host=rochester0] 181274 pass 8c51cd970509b97d8378d175646ec32889828158 3c6e7262410fe95f96aae32765531de41a6f392f 181273 fail 8c51cd970509b97d8378d175646ec32889828158 0c2d0d32b341eb79bb095fd3f35b9a2672333d64 181275 pass 8c51cd970509b97d8378d175646ec32889828158 9392bf6a3a44978373f2c54a4c69d739f437b3bc 181277 fail 8c51cd970509b97d8378d175646ec32889828158 0c2d0d32b341eb79bb095fd3f35b9a2672333d64 181278 fail 8c51cd970509b97d8378d175646ec32889828158 b46e8207d0aedad7bb23d14c055d95e625d366b0 181280 fail 8c51cd970509b97d8378d175646ec32889828158 0c2d0d32b341eb79bb095fd3f35b9a2672333d64 181282 fail 8c51cd970509b97d8378d175646ec32889828158 56a7aaa16bfe43945a0031319c60c7f323c46254 181286 pass 8c51cd970509b97d8378d175646ec32889828158 9392bf6a3a44978373f2c54a4c69d739f437b3bc 181285 fail 8c51cd970509b97d8378d175646ec32889828158 0c2d0d32b341eb79bb095fd3f35b9a2672333d64 181289 fail 8c51cd970509b97d8378d175646ec32889828158 56a7aaa16bfe43945a0031319c60c7f323c46254 181291 pass 8c51cd970509b97d8378d175646ec32889828158 9392bf6a3a44978373f2c54a4c69d739f437b3bc 181292 fail 8c51cd970509b97d8378d175646ec32889828158 0c2d0d32b341eb79bb095fd3f35b9a2672333d64 181294 fail 8c51cd970509b97d8378d175646ec32889828158 56a7aaa16bfe43945a0031319c60c7f323c46254 Searching for interesting versions Result found: flight 181195 (pass), for basis pass For basis failure, parent search stopping at 8c51cd970509b97d8378d175646ec32889828158 9392bf6a3a44978373f2c54a4c69d739f437b3bc, results HASH(0x564c8a0a8208) HASH(0x564c8a119640) HASH(0x564c8a139018) For basis failure, parent search stopping at 8c51cd970509b97d8378d175646ec32889828158 3c6e7262410fe95f96aae32765531de41a6f392f, results HASH(0x564c8a0932f8) For basis failure, parent search stopping at 8c51cd970509b97d8378d175646ec32889828158 b35b22acb887f682efe8385b3df165220bc84c86, results HASH(0x\ 564c8a099100) HASH(0x564c8a0a8508) Result found: flight 181246 (fail), for basis failure (at ancestor ~1552) Repro found: flight 181260 (pass), for basis pass Repro found: flight 181266 (fail), for basis failure 0 revisions at 8c51cd970509b97d8378d175646ec32889828158 9392bf6a3a44978373f2c54a4c69d739f437b3bc No revisions left to test, checking graph state. Result found: flight 181275 (pass), for last pass Result found: flight 181282 (fail), for first failure Repro found: flight 181286 (pass), for last pass Repro found: flight 181289 (fail), for first failure Repro found: flight 181291 (pass), for last pass Repro found: flight 181294 (fail), for first failure *** Found and reproduced problem changeset *** Bug is in tree: xen git://xenbits.xen.org/xen.git Bug introduced: 56a7aaa16bfe43945a0031319c60c7f323c46254 Bug not present: 9392bf6a3a44978373f2c54a4c69d739f437b3bc Last fail repro: http://logs.test-lab.xenproject.org/osstest/logs/181294/ commit 56a7aaa16bfe43945a0031319c60c7f323c46254 Author: Luca Fancellu Date: Wed May 31 08:24:10 2023 +0100 tools: add physinfo arch_capabilities handling for Arm On Arm, the SVE vector length is encoded in arch_capabilities field of struct xen_sysctl_physinfo, make use of this field in the tools when building for arm. Create header arm-arch-capabilities.h to handle the arch_capabilities field of physinfo for Arm. Signed-off-by: Luca Fancellu Acked-by: George Dunlap Acked-by: Christian Lindig Reviewed-by: Anthony PERARD Revision graph left in /home/logs/results/bisect/xen-unstable-smoke/build-arm64-xsm.xen-build.{dot,ps,png,html,svg}. ---------------------------------------- 181294: tolerable ALL FAIL flight 181294 xen-unstable-smoke real-bisect [real] http://logs.test-lab.xenproject.org/osstest/logs/181294/ Failures :-/ but no regressions. Tests which did not succeed, including tests which could not be run: build-arm64-xsm 6 xen-build fail baseline untested jobs: build-arm64-xsm fail ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary From xen-devel-bounces@lists.xenproject.org Thu Jun 08 07:58:22 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 08 Jun 2023 07:58:22 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545157.851428 (Exim 4.92) (envelope-from ) id 1q7AX3-00053B-Q0; Thu, 08 Jun 2023 07:58:09 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545157.851428; Thu, 08 Jun 2023 07:58:09 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7AX3-000534-NL; Thu, 08 Jun 2023 07:58:09 +0000 Received: by outflank-mailman (input) for mailman id 545157; Thu, 08 Jun 2023 07:58:08 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7AX1-00052y-SC for xen-devel@lists.xenproject.org; Thu, 08 Jun 2023 07:58:08 +0000 Received: from esa1.hc3370-68.iphmx.com (esa1.hc3370-68.iphmx.com [216.71.145.142]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 31283a2e-05d2-11ee-8611-37d641c3527e; Thu, 08 Jun 2023 09:58:03 +0200 (CEST) Received: from mail-bn8nam12lp2170.outbound.protection.outlook.com (HELO NAM12-BN8-obe.outbound.protection.outlook.com) ([104.47.55.170]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 08 Jun 2023 03:57:54 -0400 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) by PH7PR03MB6941.namprd03.prod.outlook.com (2603:10b6:510:156::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.39; Thu, 8 Jun 2023 07:57:51 +0000 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::192:6bdf:b105:64dd]) by SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::192:6bdf:b105:64dd%3]) with mapi id 15.20.6455.028; Thu, 8 Jun 2023 07:57:46 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 31283a2e-05d2-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686211083; h=date:from:to:cc:subject:message-id:references: content-transfer-encoding:in-reply-to:mime-version; bh=mLra20I4PusolTicxcb34kFEYtwPrsNxNgfFIBX4cis=; b=KN7P91eMhMcv1JNw+ky4Out53+62YqSTf2ivZyKy+iiz+/XSXZmapkDo P9fOWvt2Eq3rwab/G9dnwz2nxbDhKHMLk4Wkm+qQdhf5ngKUMKPIN2Ecq HCe5D90yCX+QYDArHdGVc3D7L1IMy3GblLlGiuMTK5dkiPhLx0OTLA3mE 8=; X-IronPort-RemoteIP: 104.47.55.170 X-IronPort-MID: 112443163 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:Xn2DRaDqs5S2NRVW/wjiw5YqxClBgxIJ4kV8jS/XYbTApDtxhGEAn GdLWG6GOPaJZGT9Kd1wOdmx/B8C6MLUyYVkQQY4rX1jcSlH+JHPbTi7wuUcHAvJd5GeExg3h yk6QoOdRCzhZiaE/n9BCpC48T8nk/nOHuGmYAL9EngZbRd+Tys8gg5Ulec8g4p56fC0GArIs t7pyyHlEAbNNwVcbCRMs8pvlDs15K6p4G1A7gRnDRx2lAS2e0c9Xcp3yZ6ZdxMUcqEMdsamS uDKyq2O/2+x13/B3fv8z94X2mVTKlLjFVDmZkh+AsBOsTAbzsAG6Y4pNeJ0VKtio27hc+ada jl6ncfYpQ8BZsUgkQmGOvVSO3kW0aZuoNcrLZUj2CA6IoKvn3bEmp1T4E8K0YIw3LksXn1D8 sUjOBc0cAHb2tO1+J2xRbw57igjBJGD0II3nFhFlGucJ9B2BJfJTuPN+MNS2yo2ioZWB/HCa sEFaD1pKhPdfxlIPVRRA5U79AuqriCnL3sE9xTI+OxuvDC7IA9ZidABNPLPfdOHX4NNl1uwr WPa5WXpRBodMbRzzBLcqyjw2rSWw3iTtIQ6SJGEtf5tgFqqn2EwFAxJcXW3nte3hRvrMz5YA wlOksY0loAi+UruQtTjUhmQpH+fogVaS9dWC/c96gyG1uzT+QnxLmoOQyNFadcmnNQrXjFs3 ViM9/v2ARR/vbvTTmiSnop4thu3MCkRaGUENSkNSFJf58G5+d5ryBXSUtxkDai5yMXvHi39y CyLqy54gKgPickM1OOw+lWvby+Qm6UlhzUdvm3/Nl9JJCsjOeZJu6TABYDn0Mt9 IronPort-HdrOrdr: A9a23:SnGx8qA5hmvU987lHelo55DYdb4zR+YMi2TDt3oddfU1SL38qy nKpp4mPHDP5wr5NEtPpTniAtjjfZq/z/5ICOAqVN/PYOCPggCVxepZnOjfKlPbehEX9oRmpN 1dm6oVMqyMMbCt5/yKnDVRELwbsaa6GLjDv5a785/0JzsaE52J6W1Ce2GmO3wzfiZqL7wjGq GR48JWzgDQAkj+PqyAdx84t/GonayzqK7b X-Talos-CUID: 9a23:JlNQGGOA0C/ryu5DfnY8q1IZHfkeYlrk0maIfn67MUljR+jA X-Talos-MUID: 9a23:64KxKwuETMKWlpj/3s2n2B1ed8dv46OXUU0ujYRZn+eICgJ+NGLI X-IronPort-AV: E=Sophos;i="6.00,226,1681185600"; d="scan'208";a="112443163" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Ix/EYztl/2t2Vxt2b0YOL2+ymai6PfZHyQaKQKMDlpjt9ZCMurvRSUTSnTVBdDXqbWz8oJDDpUzh02j6mPjZKfo1RenYQZbOSAa7JXID/yO+duUF+Zh0LvTZw5Og8C4HjVnpL9PjagjxAHQ0h6dGglr96zXT0/k3DRJZxwjJmQq4dvMIFEWrKKbajMAtu+QuI4T8gYCTb8xfp0Qkk7xqvpWNP8yWfmSBnNPNq53DB3fWslThdCi9DPyC/icQbwZr3NNNcF2IUeYda2a+shZpaVjeABttD7Asuq5hhpuaicIj9352rEsXJitawNT3qMH5Rr2d1Wp6/BVFY13wfNbO+w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=Ve2oKjF/o8rEcHfMYjsFlKjExdHYjnictDl38XxXMEE=; b=nfQmAsMpVR1TV9x9QRq+/W1x5bjkIkvy47ydB5/QNL8gTGSeOKjTeO44s4+LF8aNSpbXuKGsg0HEUI8efyK9CXGSy/H06frs5lNFWM3HxLq57pn1ej7nN8z9bEvIcfWOhDANWmH8MWalcv+h1U1daS6W86FoA7JzamsOfUywcbkgSNZQUBbJq0rlptoP1ihG1Suip1/wjsyjbPskKpFGcodvjhuk62uAzD61NF5UqeQGMLKapwhIdYd2MsdGKwV+MlRAvFO3MztEKAoo9q5jNDwciMGIvbsVN73VjzfB0fOtiv8cYUsmmSwsnTH3B2KRKWaw8hXF0mNkh+SGgKfyBg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Ve2oKjF/o8rEcHfMYjsFlKjExdHYjnictDl38XxXMEE=; b=ghqbY9GClyBVMMhYvQWQGACA57MjVz2+Iq5Xe1SKPBk4/HhB4mPC18gXJu6AISz8kf3qnAitX3Zwy53IXroflfpIgc2XgLuwBwLs151xRdxU2+VA+M3gkQLEIDAwfDYbn5iK2k7U1S/z2npJ7/yUgYkUtK9mHHc7fTKA7atJ2Uw= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Date: Thu, 8 Jun 2023 09:57:41 +0200 From: Roger Pau =?utf-8?B?TW9ubsOp?= To: Andrew Cooper Cc: xen-devel@lists.xenproject.org, Jan Beulich , Wei Liu Subject: Re: [PATCH] x86/hvm: print valid CR4 bits in case of error Message-ID: References: <20230607134638.53070-1-roger.pau@citrix.com> <728efea9-2d30-fa55-473f-df3a18742ace@citrix.com> Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <728efea9-2d30-fa55-473f-df3a18742ace@citrix.com> X-ClientProxiedBy: LO0P123CA0005.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:354::17) To SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|PH7PR03MB6941:EE_ X-MS-Office365-Filtering-Correlation-Id: 4fa119fe-fc56-4d4e-7c74-08db67f60bd0 X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: pGHVA+X2bNQ1VqR+tE7qt6fgfM32x+9l1jJ8PM5USXbzAnNk1mlxyQLf0KvfYp6R7kYT3cKdWCgCUPr6PyIsqrre3LUfH6y5zpSUo6EiMaJQZFsUR4S8ArJCEOz2cK/TBUadRuQvMNlOffW0TUoKE5s/nSYo+zvjUh/jbHz36FokyjO8D/yuoMl8ja+cQWnoKUvzR3OzEp/kNq7ZUzDqLtc7Bi3N8JBBOQ/ttU4CI8xYSsrSD7L09deB2TZYct12VCU8Nfg7aM8vh9quFceUTXnqhHOm7G/tuNqAYATm2Hn/oepAFEALF+qo3BBqNRVVdsh+5GW9XpwWmkJrk+b7JYp7JI0RKvIvMFX2kOSPVr0EpjWM2q5pck58G9brnWg/l7/8yJW4MFpFkkfEM18/2pnryDSdoHb+z2rIQ9nK/nr8BRzg3RbOhiD7cI95lyOIIeeKnSgAbamETgysTL7D9bjAMTdsQqPP7ABVDZL9NUdgq9F1cbwOklwdiJTHr/Gbj104HorCSTsNwLBtwwnOk+55YSCLKjI3n/Di4zdVH4fV0Ro/IBN1dV21SAYAKPH9 X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(7916004)(4636009)(346002)(39860400002)(136003)(396003)(366004)(376002)(451199021)(85182001)(2906002)(86362001)(33716001)(5660300002)(6666004)(83380400001)(186003)(9686003)(6512007)(6506007)(26005)(53546011)(6486002)(82960400001)(478600001)(54906003)(66946007)(316002)(66556008)(66476007)(6636002)(4326008)(38100700002)(41300700001)(8936002)(8676002)(6862004);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?UTVBUGN5ZmlXQ0hZVFYwcVpRZ2RvTG9HZWNKcDZ1cmcrV003Z3Z3VmJia2JY?= =?utf-8?B?YVpyS21NaGZsK0VYbzQreVBpd3p3OVlWWFBOdm5wYmJDVmVHVUVUZmNmcmxv?= =?utf-8?B?cWpHeUVGY2VtZU8rOG9pdi80SjU2UGVsN0FoaVQvRzkrTkNPeUppeFpWUkN6?= =?utf-8?B?S0lIcVVRT0tsWTJETGk3Ykx3YTVKeVdEMlFnWlJ6NlgybjdpTUZhdXQ3M05K?= =?utf-8?B?aTZSeThpWTZKMW5oUUc4a2FOT2k0ejVjdEpxeFJxQWo3elpGZlFROG9sRWdY?= =?utf-8?B?OXM2QmF1L2MxMHRWbUNkMmFmaloya1RtWWtRS3lMendWajRGYUJPdklSMUJM?= =?utf-8?B?SUxuM25UdjFySzQ5SjFKZCtGNUpZY2JCUXcwVHl0bnVtTVQ2cjJwdmoyKzNv?= =?utf-8?B?bmh6MjcrcEpla2IyNkc1QVM4ZnFwdWVqOUp5Z3p2Z0NuTHNtbitVVi92ZFBP?= =?utf-8?B?aUY3ZkN1MERLOHJNMTVZbWgvMzdGeG0zT2l1S2lOdjY2S09Ta3ltWnVUZmtO?= =?utf-8?B?cTR1cnpTMlovbHB1QS9CSkRPUG81Unl0WFUxd2JWREdTNDRrNVV0UzRkcWJr?= =?utf-8?B?OWpEOUd1QVRTT0p1RFM5ZXl1NER6MGhSSW9ZcWxCbWh1OUthbVhiaTFOaWJo?= =?utf-8?B?VmhWekpVK1UvR0pqYy90T1FtL2txRTQwVG9DaWZtQlZCUkdKMXRzUTRialhz?= =?utf-8?B?dTh6cXhhVzZyTXliTGozbnB6WHYzTUhoZG1GdEdnc2ZIWFI1c2NtRGNpSWU3?= =?utf-8?B?QW1rYkJmY0p1YllmUHBraUx1SGFRS3N0L2dNNXFXUUJkL1oxbHZXbDM5SjE0?= =?utf-8?B?TmtGZmp3Z0JSSEVoQ3RVNEIrYUtubzZhbzBmblg4NitKNDUwM3BpV3Bma0Zz?= =?utf-8?B?blozc3VxRGw1cDhKd3NjeURReG1HbENnd0N1YjNldHd3c2ovZk13d0lDeS9E?= =?utf-8?B?Y3Y5QzBIYVdVelVhRUhIS0lUeno1eE1YSmtIOUhxTmJ1bWFSRjlWNXFMOGxP?= =?utf-8?B?cFRublkyUEpyVmhVcWdIVVN2REdEcG8xeFhTbG5Ua0c5MExWd2tBR05aR3Bi?= =?utf-8?B?dHdsd2JMSlZ3RUpRUzR3ZlRJRGkrVzlvLzBrT2dSZ0VDM1hJbFdDdi9HRHdy?= =?utf-8?B?S21UVkxRMVhFMzVJZ1hheS84YnBweGw0R0tDdXorSTVBWWZvMHh6bTFCTm5u?= =?utf-8?B?MFBwZzRnRmFmeno4SisyaHpqWllPUjVYRS9QZ3RGNWhodDl6TzBkZEc3c1ZY?= =?utf-8?B?UnBDQVlsRXNQd2FHRXdQaE4wcWM5endjQ0IvM1ZVM09uekhacjNKNGxEcnZX?= =?utf-8?B?RFVFTzZMdnNCNE0rb1ZaWFBqQjZINjF4UVFXbkVlN2F2U2w4RHlnWnBDSnRG?= =?utf-8?B?M1QvcU9FZW5TdFJpVUM3VEgyRWpuc3h2STk1QmpGaTY5Rk1SdGN5YVpDVzRn?= =?utf-8?B?VnJOSlZ5L0NNWDdkdUdMK3RQbjhISjBlSzlobzhaMlJRUC9ZUStQWmpkRExi?= =?utf-8?B?dFN2R2ZCdWxucmNDRVBOMUxyRXRwcWs3REE0QjY2NGFVREhJZFI3clJSWWs1?= =?utf-8?B?SW9vdWVGN2FZUUw5UXVaZHVzUHdRMUJSeDY4WTEyQmJZSVY5Y0htNWcxNW54?= =?utf-8?B?SmFsdWFWb1RKalNKejhkZWFiS1hPWTdqQVZxKzhST0pXMHdEKzBGNUJ0cXdo?= =?utf-8?B?cEZJTjREbG9MWURVUFdoTGlRZmFuRUdsODd0QzY0alpOUWhYcVZaQm9qNS9W?= =?utf-8?B?eXAvVmJsc1ZCaGJTWWhUS3pqd01NRXpnOGFHeFloNnVkUGpTcFlrNWR6RFBV?= =?utf-8?B?eFlrODhxTXltUnI5eDRZMDh3NE9yZC9nVHFFR2d3RjBxQXEyMVZldjkvNDBF?= =?utf-8?B?MXo4ZStVOTgzRFlsVnExM3pnZkttaEphUDZDdnI3c1RzS2JiUmNUTHNyODN3?= =?utf-8?B?UEk5bzJveDd5YmowMWVjbGt1ZEtlNUMvMHdqTmJFYm5LeDdwTmF3QVF4ZkFF?= =?utf-8?B?YVpBNkRqd2N3Q1FNSkJBR0VMYW11WS9PeGFrWkk0Mm9ua2Rkd01BcjZSc0l0?= =?utf-8?B?d3ZRazBnT0tvUmp5dXBQeGNtSEJEUGhDd1JQanp4RHUxK1ZmUVdKUXBsbWhU?= =?utf-8?B?UDI5N3lOdHBQNEhQOTVZKzIweFRKQW5PL1Jna2xEdUYyWGZSN1VUS1dBNW1h?= =?utf-8?B?WkE9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: xrGrH5DQs6yY/wry7JEUw3ncs6opJnySQULK37n5V/FB2hRujXiF5Y+KUJmLJ2Wd2mPCfu1Ub9Ka/oQo3Ck2v4J47oV4oS7U2ilo/w/5UwdOjZN9DtLTcrk1XWNLN2Z1BrDS8nVCCeTNZjuukRJFrjxVDdS/pKfbW53bNZrbd1AmWAfmnviSvzpdGA1QdZySY1sVjWVg6QJgAMQihvQaUPQG6SZqx/+Dv614T0LcsGfpTm9RpvMx7B9qdKDuGFV+NIysQmH1BzjGvr2Lg90172SxSaJbst0T9iuUTJjB3dMr7ng/paEBI3AUZbxj7mlhjCCpPAEl78vhH7aIAkUEkicgOsIMhfoxlEe4QRatvKUbnvETSRSf+YAYRutWUetECN6Buunu+zYe3vp8+YyGl5lPzIEvlQblYJPpo0JbkmNLs+UjQZitW6PSE72g+MGOpViq1GQQQi7Hc9YqJe0eNL7MUF6BOBN7mixiTF0p5nmZb4k8/2FisVfhi3+lIAXOJAdDRznFqkfdZ8buLhNGkvmkLtOhc63Mr6QXhI6NmjrqZ7rPA9/GlzDMU2/xYXGMz+oOgoX3WEBE8vCB87fWYMY0XizfIjPHh4XOUuQMGZDnNL8K1um6126oeAsCbORMdU4XfV3/3m0+uHQiGJ6v2u/9VohDoC3F3QXzKhDsFUVajacFWg7T3Gp+WTvjWtFozXn5JAs95dL4ajitr/wuHY44MSva/R0MHKmF0YLKedTkV81JfwMZv3n/uftsk2ylDb/Ol3zwDJfjIVrm0rtWci0LMQmu9rdAWfXlqtbw0HSENHZ25jXXMncdpZ0+SU1S X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 4fa119fe-fc56-4d4e-7c74-08db67f60bd0 X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 08 Jun 2023 07:57:46.3877 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: n5MSXbJWmi9z8GdYgF9pz9Gg2v+4M1I12rBST1+JFcg5Pu4JPIDAQuK5bOLcMnY6x1jb2GjH05qEM/2UwCQPZg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH7PR03MB6941 On Wed, Jun 07, 2023 at 04:48:42PM +0100, Andrew Cooper wrote: > On 07/06/2023 2:46 pm, Roger Pau Monne wrote: > > Some of the current users of hvm_cr4_guest_valid_bits() to check > > whether a CR4 value is correct don't print the valid mask, and thus > > the resulting error messages are not as helpful as they could be. > > > > Amend callers to always print the value of hvm_cr4_guest_valid_bits(), > > and take the opportunity of also adjusting all the users to use the > > same print formatter. > > > > No functional change intended. > > > > Signed-off-by: Roger Pau Monné > > --- > > xen/arch/x86/hvm/domain.c | 4 ++-- > > xen/arch/x86/hvm/hvm.c | 8 ++++---- > > xen/arch/x86/hvm/svm/svmdebug.c | 2 +- > > 3 files changed, 7 insertions(+), 7 deletions(-) > > > > diff --git a/xen/arch/x86/hvm/domain.c b/xen/arch/x86/hvm/domain.c > > index deec74fdb4f5..8951230a9f52 100644 > > --- a/xen/arch/x86/hvm/domain.c > > +++ b/xen/arch/x86/hvm/domain.c > > @@ -266,8 +266,8 @@ int arch_set_info_hvm_guest(struct vcpu *v, const vcpu_hvm_context_t *ctx) > > > > if ( v->arch.hvm.guest_cr[4] & ~hvm_cr4_guest_valid_bits(d) ) > > { > > - gprintk(XENLOG_ERR, "Bad CR4 value: %#016lx\n", > > - v->arch.hvm.guest_cr[4]); > > + gprintk(XENLOG_ERR, "Bad CR4 value: %#016lx (valid: %016lx)\n", > > + v->arch.hvm.guest_cr[4], hvm_cr4_guest_valid_bits(d)); > > I suspect you want to call this once and store it in a variable. > > It's a non-inline function which also isn't marked attr_const, so it > will get called twice. I wasn't specially concerned about this, it's an error path where the second call will happen, and there's already a printk which will make the cost of calling hvm_cr4_guest_valid_bits() negligible compared to the printk. > Also, if you're extending like this, then you actually want > > (valid %lx, rejected %lx) > > passing in cr4 ^ valid for rejected.  It's almost always 1 bit which is > rejected at a time, and the xor form is easier to read, not least > because it matches the X86_CR4_blah constant of the bad feature. I will adjust as requested. Thanks, Roger. From xen-devel-bounces@lists.xenproject.org Thu Jun 08 08:05:01 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 08 Jun 2023 08:05:01 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545167.851439 (Exim 4.92) (envelope-from ) id 1q7AdT-00075w-Tx; Thu, 08 Jun 2023 08:04:47 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545167.851439; Thu, 08 Jun 2023 08:04:47 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7AdT-00075p-QR; Thu, 08 Jun 2023 08:04:47 +0000 Received: by outflank-mailman (input) for mailman id 545167; Thu, 08 Jun 2023 08:04:45 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7AdR-00075j-TM for xen-devel@lists.xenproject.org; Thu, 08 Jun 2023 08:04:45 +0000 Received: from esa3.hc3370-68.iphmx.com (esa3.hc3370-68.iphmx.com [216.71.145.155]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 1f59faab-05d3-11ee-b232-6b7b168915f2; Thu, 08 Jun 2023 10:04:43 +0200 (CEST) Received: from mail-dm6nam12lp2175.outbound.protection.outlook.com (HELO NAM12-DM6-obe.outbound.protection.outlook.com) ([104.47.59.175]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 08 Jun 2023 04:04:40 -0400 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) by PH0PR03MB6235.namprd03.prod.outlook.com (2603:10b6:510:ed::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Thu, 8 Jun 2023 08:04:38 +0000 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::192:6bdf:b105:64dd]) by SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::192:6bdf:b105:64dd%3]) with mapi id 15.20.6455.028; Thu, 8 Jun 2023 08:04:38 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 1f59faab-05d3-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686211483; h=date:from:to:cc:subject:message-id:references: content-transfer-encoding:in-reply-to:mime-version; bh=zoQb50xL5TWx/gE1OPqbo5C0InHiRy2tL85536B4+JQ=; b=WOEiWabHY/Lx2ORx8r68NS+alIGxNKYMNMntP965tzVKmvO3xcVJkLwS pmJwS4QLenfmbibvbt8IBwkZeicSr6ICV1iNofu+xZoNbxEcVMV4hzk9q urmocDM4jeQoq1PDtCTipiUwPjAJJFqYPU+pgsFvdtLnLaR36PBSN3J6k o=; X-IronPort-RemoteIP: 104.47.59.175 X-IronPort-MID: 112043366 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:x8zrFKzv8CDP82akL0V6t+cRxyrEfRIJ4+MujC+fZmUNrF6WrkUHy GIYCj2GbPyMZzOnctAiOYvjo0kEuJOAzodkQQpq+SAxQypGp/SeCIXCJC8cHc8wwu7rFxs7s ppEOrEsCOhuExcwcz/0auCJQUFUjP3OHfykTrafYEidfCc8IA85kxVvhuUltYBhhNm9Emult Mj75sbSIzdJ4RYtWo4vw/zF8EsHUMja4mtC5QRgPaAT5TcyqlFOZH4hDfDpR5fHatE88t6SH 47r0Ly/92XFyBYhYvvNfmHTKxBirhb6ZGBiu1IOM0SQqkEqSh8ai87XAME0e0ZP4whlqvgqo Dl7WT5cfi9yVkHEsLx1vxC1iEiSN4UekFPMCSDXXcB+UyQq2pYjqhljJBheAGEWxgp4KU8Xz MIzbzYPVSqaiOaL+52qVLBIgtt2eaEHPKtH0p1h5RfwKK98BLzmHeDN79Ie2yosjMdTG/qYf 9AedTdkcBXHZVtIJ0sTD5U92uyvgxETcRUB8A7T+fVxvjmVlVMsuFTuGIO9ltiiX8Jak1zev mvb12/4HgsbJJqUzj/tHneE37aVxX+gA9xMfFG+3uMzjESX5G82NCVIU1eis924oUC7evsKf iT4/QJr98De7neDXtT7GhG1vnOAlhodQMZLVf037hmXzajZ6BrfAXILJhZDYtE7sM49RRQxy 0SE2djuAFRHr7m9WX+bsLCOoluP1TM9KGYDYWoISFUD6ty6+oUr1EuQE5BkDbK/icDzFXfo2 TeWoSMihrIVy8kWy6G8+lOBiDWpznTUcjMICszsdjrNxmtEiESNPuRENXCzAS58Ebuk IronPort-HdrOrdr: A9a23:v5I0K6Ema33+RNcepLqELMeALOsnbusQ8zAXPiBKJCC9E/bo8v xG+c5w6faaslkssR0b9+xoW5PwI080l6QU3WB5B97LMDUO0FHCEGgI1/qA/9SPIUzDHu4279 YbT0B9YueAcGSTW6zBkXWF+9VL+qj5zEix792uq0uE1WtRGtldBwESMHf9LmRGADNoKLAeD5 Sm6s9Ot1ObCA8qhpTSPAhiYwDbzee77a7bXQ== X-Talos-CUID: 9a23:SspH6WOr8JYNFO5DdnBeymVTHMIeSGTSyErrDF6mUEJtV+jA X-Talos-MUID: 9a23:xL9WfQrOdDjN9cIuL1Eezyw7ON5swaeLNHhTl5kfqe2FHiJ1Gh7I2Q== X-IronPort-AV: E=Sophos;i="6.00,226,1681185600"; d="scan'208";a="112043366" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=d6uk1vKTaNMU+GLPRElpnny7m8SIQdq6oVuEWymBNBEsEdGGmZnu1fq7J3wj+BJOqKGf7jF5J5foMVnJe6/OleJ6P5t/KsWKd+/Di6cOArN8eMDAdzeE50u3ZhpVtsKf9PA9GpsQVDHQFFR6/2HB8suOTzRWYPRXHk3Vmk8Gacg3M5DNJtz/qF0gFx8WeLshr0jx4d9XnWJw8eBuvj3lkiSNRykG0zE/qa9iuEgQbLHEMG2p7t6q31FtOK0nohu/t5pEsXthRJGeQ8QRx4JI6kAVOKwJ5qzoGEJGs3QfuvhotVSOOcxx2hhGcTBmQt/ydoTlMaJGqTgbTNHzsv65xw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=8SG/mQjHi1IESN+dMkY0nPEfRAyKCI6s7zJCk2PQWOc=; b=Jc4k3lV4AbABNxn4R8vvo/hJ8KnKHja/B1JTS30nEItisfdSeeZ+QgpvBZxMnLHcHd4xsvsAHCPRo3O94rwSC8tZAnRtiG7DltjPfsjnU9n2M3J2aYqPDQ9PJkYjme83sDejbtsrZtlRC9jVg1mHJwiSsMnkkMxQ//KXjwoXW2Y0G+QzhC8HtidKI7ACf0jFN+DSKZMyzKturjNoJp+steMumrgh9v01zy3HqPhJADg9LUjvjiwcuRZHRkmEHen24U9bVhgsYkX5BNWOwYXCrLsIqnbDqizs7Sz6GVsQQb8qfRD+YJ8spO0MCTbM9OfouN4c+ImwW81jin7RB22hIQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=8SG/mQjHi1IESN+dMkY0nPEfRAyKCI6s7zJCk2PQWOc=; b=bqHoIAhIAfvnxgARxhpVP/vlEb8+zCLQK3t9GaISF+3JCJMVpY6kL3NU+xNAoroOfTuz8G3IjycJjCH6bt/w7Tz5b8GvWQULdzOpJRxNpXhImtKlYn55KdBLqMgVEJ7/LYO21h1uvvPuJp+/ocznY/AaDHco5Cwjrmc9j+F5bhE= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Date: Thu, 8 Jun 2023 10:04:22 +0200 From: Roger Pau =?utf-8?B?TW9ubsOp?= To: Andrew Cooper Cc: xen-devel@lists.xenproject.org, Jan Beulich , Wei Liu Subject: Re: [PATCH] x86/hvm: print valid CR4 bits in case of error Message-ID: References: <20230607134638.53070-1-roger.pau@citrix.com> <728efea9-2d30-fa55-473f-df3a18742ace@citrix.com> Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: X-ClientProxiedBy: LO2P123CA0066.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:1::30) To SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|PH0PR03MB6235:EE_ X-MS-Office365-Filtering-Correlation-Id: 0e8cff25-75b5-4dfe-5bee-08db67f7016c X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: KGwPXEQ5GKczKcXZ5yE1sgDO2SOh9PulSJK6n3EePX95AUCcXzJjU4MyKMm02LHmGbfEbpGVoGd6msMpyDM5wkaZdYaaIk9U/wltGzxAj1TW+/LYe2sygibs68ljHZF3TyKwXdhhw3EOdLZtvpvcuX7F49TALP6jxd+ziJRt2W6oI6ZwTrzKfYwqk/pbZOjF9dFn7cd+kV1f2CHI6LtyJcdCcF8f/ZdGWUYrCtu/X7l4rTZkncauDnyK077p7gXmjV9GWL1wW1D1FfAioLTy8QaWVJ6cUkU1GuMB8mLt3aq1CBVz2sughuKK4Qk7zg/RNO+hqq1ItG2IqZcEA5ADtH8nlWFPEszhZVHkxHyQ1QdFXpHN2oqrGhJxJw57h3OH+eUODvDRoSLKNo/zTUti6v9u5nPhNeDkk2IkNijqFFmVJif3fod6qIg1mz7ckoifBD2Qhjtu4ntk7Xeey6zwMarEdyuFa3bSIyyYi6/i48kjycPSiTGdwqhL1+Zjsv0ZwtJgJfg4g+nxAmc8v0CsKH/VhyyZ6dW1GjjZluVqm68b8kI1BnJo5uc/2pPRorhX X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(7916004)(136003)(396003)(39860400002)(346002)(366004)(376002)(451199021)(83380400001)(478600001)(6506007)(33716001)(186003)(53546011)(9686003)(6512007)(26005)(54906003)(41300700001)(85182001)(82960400001)(6636002)(66556008)(66476007)(4326008)(66946007)(2906002)(38100700002)(6862004)(8676002)(6486002)(8936002)(316002)(6666004)(5660300002)(86362001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?cGFBVWRFTHcxQUZ0Y010b24rdHRNSndyUVRBcUFBaUoxYWovaDEwOUFDV3BU?= =?utf-8?B?L2RNanlhRG9tSUU4MkhkQ0dlOVFPSkhmTnJnNk1TeXE1TDNtcUNXZ1RQSVdP?= =?utf-8?B?ekJmNllhL2M3clQ1UTdQeERCNGhSczMxVFlVKzNRRHJyUnpPRmU5M2xKa3J2?= =?utf-8?B?NFhnUUxOL3hrdmRjUVpYOXRDVmFyR2hEMWcwdDB1ZnNwaW5ZcndWRnNuWXF5?= =?utf-8?B?cnFzZkVNR20vQTE1MFhJd2lJMjN5ajF5VmxVWXp2R3NsUzVndFpBVkQwbDdv?= =?utf-8?B?d0E0aStEeFdRSjNyeVdUd2JXU2hXekNNbXhkaUV6M1BPdTcyUERkYUZlQkRX?= =?utf-8?B?TEJTRSszdkdFY25ZK2RYekh0Z0dkU0tJWnFHbTZ5MVBDVWZRWjZ5QlEvTTNX?= =?utf-8?B?OGJIWUk0N0JHaXFUL09RL2ttVEZ5VEtvUzR6TGhKeGFudHB2Sk53Y1E1aVZ3?= =?utf-8?B?Q0lkRW1way9paUVFaVZiZXJGMFRvSGRxYTZvZ09yd1RuVmJvNlpaaTVBd1dl?= =?utf-8?B?TU5QdmFZWWRlV1BTZTM3UTNZR3VqY0czd3h1bDhYNmJNczF3WFJQeGRIaHR3?= =?utf-8?B?T2pCMmlOU2xnY3gvVTFOd2JrclptSElTeEkzK053RCtoTmppZ0RoSWRjNU9X?= =?utf-8?B?ZXpQKzBTTElFWE5HQnBDMDNxSEN1Tml4cmJaZXA0dm5tU3lOaHBDTUZic2g5?= =?utf-8?B?YUFmeUIxWDNDS1lvWUREcm5jamFsY0VEemxuMTFFOEE2YTBkZEpoektRM1M4?= =?utf-8?B?Y3poYWJVTzliMlZPZ2ZBb1I2azc2OForbkJxR2ltdDA0MWNxUWtHMHJBb09i?= =?utf-8?B?cVhDd2ZCcjVyVXQ3d3F2M0dMbHVDYWtCRVhLVEJtN3RrM1ZONTFXcHVqbmpo?= =?utf-8?B?R0s3dlROQkt1TllvYjlZRkhpNUlUdHcyVVoxdWdZVDlSb28vbmoyenR1NE56?= =?utf-8?B?OGFtenJVakJLSVJ1SndFVStMNlFTSHdRd1Z5ejVKVkxkZGdLOGpGR0s3SjFN?= =?utf-8?B?Rkl3aGlTZG9lQjZSRUwvd1FPanZQdGlTVTAwenBqV3JQNkVXL04ydnZHZlFB?= =?utf-8?B?MG4wVi81ZXZ1Q0hPVWNlUmN3RThKbmNMYlpiUk8wVEc1cWIzZDhraWl6ZU9K?= =?utf-8?B?Y2RpSzF0by9MU0VReHlCUG84RXRHN1FlaTlzalY1WS90Vm0zMGdjU0ZuRDNm?= =?utf-8?B?NEU4OEE2SFNsVFo3RDllVDE1L0QvN3phR2FmS2J0NWJ1eldjNXB6cm9pekNq?= =?utf-8?B?aWM4cUZ5YkdDSGZLemROZy91eFh3di80cEJZb2JqNEE5SjRTWTdBOXg1MXhI?= =?utf-8?B?Mk5sRG1jbXA4NXJWdlRmbzN0WHB1Mmp3dWd5aGxJSEhPbVB6Z1FDQnFxazlZ?= =?utf-8?B?cFVwRU9ubXBKMTdEdHVxK0kxZWgvck1wYXlodlNCblhrWkIwRkpwRzF0a3BR?= =?utf-8?B?NU5tYitVK2JMdWU4UTRoOFd4S04yTGxwVENWdkl4aFF5eFp5UE1qZnFzSE5W?= =?utf-8?B?SzF2dmdZakhtZ3cyelVEQlA3dU9CWXpDWW9UZ0VWK2xLRmFQUW9tMGZFc0dZ?= =?utf-8?B?ek5tcXlVbzVIL2k2K1VFQjFsL282dFJGcERSRWUrcFJsbUlLM3UwakVESEJR?= =?utf-8?B?OVdEQnI4eVE0TnA1bGV6UlVjbW1SYUFISC9iM3pCMFFoZGNEbzJZVklObzFN?= =?utf-8?B?VVZmZEhMMFQ1RUIwWXZkcCt3eU1vejFheWJhc21NY2JVUmRTTHU5d1d2Tnd1?= =?utf-8?B?V0J6QkpBYVdmOWlTQkc1Vk0yeDVrTmM1YkNjUm9odjRQU29EeXRoejVob21G?= =?utf-8?B?cGkxdXc0eURNSVRWR0xlNjE5WkRIaVRmb1lsdnNFUURIaCtkUkFkbnhZUXUr?= =?utf-8?B?OFJXcTRaelZFdG1ZbGMxc01PVFA3eGlpTVlMamdqdU13S1ZWRmpFM0pJeUlF?= =?utf-8?B?a1MxcTNWWDI1ZVRQR2N4cVhzUmtOVkNScjcxaFF4ZTRmSFBxZ3dXWnNlSUVn?= =?utf-8?B?NXU3QXI2UEptRWJmLzl0dzlIcFdBM3g2Vmpsa3BJU1lwVGx3TFJTWFBHMVNH?= =?utf-8?B?YmlrQ3VhSy9wN2ZVUzhpekdmZCthUUhLMXFpZHVwRmY5NGdZdU5MeGYrZHg4?= =?utf-8?B?d0M3aFRuMFByRFA5M0taZ0NtSFlHMXd5dm53QVBEVHF1dWVEVWZVc0g1dzVQ?= =?utf-8?B?S0E9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: Ljsq3l9GerZRn5jk245+3bygjpa/MSkFuCJX6IzrUGsccdiGhJ7y+i7dQ4mKeiAo/fVQlSFV+xCo2Zo43heAmTn5hHqo03Upj+o12O7u0HsssXEOzt02Tr/htENeNHOHX1VKwyTNo1O1H+gmdJ42/F1h2S9uEOdpaPqXBF2n8VvwquYHfbBwQKypV+iR9pYZjyjHQyC4VL08WlifIkm0sWuggK/DpOZm7S5X5Rre8gZutHY+xOeQITZXYe8/haOcFSvajwe/WUw45z6znZNCijZFLpm8LGstYHyRlUm2AFDpqCR1ZhoU6JLyuI23q/W8bf3+PKscALKiKQtUHQLFZWz3ZgC2L9lQTvxBtiwBxXIf0QdVfNncrkAxUQpcFYnq0MZuviudpGlmoJwyNs7T2RvnK3q09rWbSFKDxCbaHMXQzR7rlyNzlUrn0EV+14FpZaqi8Bpw5cLlvpMVKwxgIMZk0ClEfx+FSB4i2pl+AOpv/nPYtv4DBS5aLR4lxtkq0X1iedsRy7gXUiUeeAiJP5xSkQtG55iQkvl9dr05zeodCSH0vLLB7PLPLcFYlKEbZUfWw+o6BD+/Auqgnw9ZLTWS2oVArjJtgfX6cmy64O+YIDBynLTjTh98WuhGZaa2FpUPOt5k7N17R5RHq4r5zCwvFRD+Eip3vUw1+gpM0HzI9vwRiOQmSay9VtFO8Fq4Io2AjNz2Wd7PZ/wkQ9/bBILE/l2+209RqKcxV3l1mnAi1JtsYVNqjQl+zLIPuZqT8ZdOVs3WxXpD6V0Y+0ymnbybgOTWk/M4TQXAmpQQqWL/bPdqg9UgtiEeLDTQTMuc X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 0e8cff25-75b5-4dfe-5bee-08db67f7016c X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 08 Jun 2023 08:04:38.3911 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: f+DZDHZ0/Vw8D9c0rwMSDxi7KqneF1Zsepn8ziWPzYg0szfupi9StwM5K8fdh2uFEEaEfVYiTIyAJYKF21LsbA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR03MB6235 On Thu, Jun 08, 2023 at 09:57:41AM +0200, Roger Pau Monné wrote: > On Wed, Jun 07, 2023 at 04:48:42PM +0100, Andrew Cooper wrote: > > On 07/06/2023 2:46 pm, Roger Pau Monne wrote: > > > Some of the current users of hvm_cr4_guest_valid_bits() to check > > > whether a CR4 value is correct don't print the valid mask, and thus > > > the resulting error messages are not as helpful as they could be. > > > > > > Amend callers to always print the value of hvm_cr4_guest_valid_bits(), > > > and take the opportunity of also adjusting all the users to use the > > > same print formatter. > > > > > > No functional change intended. > > > > > > Signed-off-by: Roger Pau Monné > > > --- > > > xen/arch/x86/hvm/domain.c | 4 ++-- > > > xen/arch/x86/hvm/hvm.c | 8 ++++---- > > > xen/arch/x86/hvm/svm/svmdebug.c | 2 +- > > > 3 files changed, 7 insertions(+), 7 deletions(-) > > > > > > diff --git a/xen/arch/x86/hvm/domain.c b/xen/arch/x86/hvm/domain.c > > > index deec74fdb4f5..8951230a9f52 100644 > > > --- a/xen/arch/x86/hvm/domain.c > > > +++ b/xen/arch/x86/hvm/domain.c > > > @@ -266,8 +266,8 @@ int arch_set_info_hvm_guest(struct vcpu *v, const vcpu_hvm_context_t *ctx) > > > > > > if ( v->arch.hvm.guest_cr[4] & ~hvm_cr4_guest_valid_bits(d) ) > > > { > > > - gprintk(XENLOG_ERR, "Bad CR4 value: %#016lx\n", > > > - v->arch.hvm.guest_cr[4]); > > > + gprintk(XENLOG_ERR, "Bad CR4 value: %#016lx (valid: %016lx)\n", > > > + v->arch.hvm.guest_cr[4], hvm_cr4_guest_valid_bits(d)); > > > > I suspect you want to call this once and store it in a variable. > > > > It's a non-inline function which also isn't marked attr_const, so it > > will get called twice. > > I wasn't specially concerned about this, it's an error path where the > second call will happen, and there's already a printk which will make > the cost of calling hvm_cr4_guest_valid_bits() negligible compared to > the printk. > > > Also, if you're extending like this, then you actually want > > > > (valid %lx, rejected %lx) > > > > passing in cr4 ^ valid for rejected.  It's almost always 1 bit which is > > rejected at a time, and the xor form is easier to read, not least > > because it matches the X86_CR4_blah constant of the bad feature. But cr4 ^ valid is not correct to represent rejected bits, what about valid bits not set by the guest? Those would also appear in the rejected mask for no reason. I think we want to print cr4 & ~valid, like used in the validity checks. From xen-devel-bounces@lists.xenproject.org Thu Jun 08 08:11:05 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 08 Jun 2023 08:11:05 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545173.851449 (Exim 4.92) (envelope-from ) id 1q7AjU-00007m-JP; Thu, 08 Jun 2023 08:11:00 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545173.851449; Thu, 08 Jun 2023 08:11:00 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7AjU-00007f-FK; Thu, 08 Jun 2023 08:11:00 +0000 Received: by outflank-mailman (input) for mailman id 545173; Thu, 08 Jun 2023 08:10:59 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7AjT-00007W-EN for xen-devel@lists.xenproject.org; Thu, 08 Jun 2023 08:10:59 +0000 Received: from mail-lf1-x12f.google.com (mail-lf1-x12f.google.com [2a00:1450:4864:20::12f]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id fed26b5e-05d3-11ee-8611-37d641c3527e; Thu, 08 Jun 2023 10:10:57 +0200 (CEST) Received: by mail-lf1-x12f.google.com with SMTP id 2adb3069b0e04-4f62cf9755eso434525e87.1 for ; Thu, 08 Jun 2023 01:10:57 -0700 (PDT) Received: from [192.168.202.197] ([94.75.70.14]) by smtp.gmail.com with ESMTPSA id q14-20020ac2510e000000b004f64fb058f7sm98631lfb.225.2023.06.08.01.10.55 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 08 Jun 2023 01:10:55 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: fed26b5e-05d3-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686211856; x=1688803856; h=mime-version:user-agent:content-transfer-encoding:references :in-reply-to:date:cc:to:from:subject:message-id:from:to:cc:subject :date:message-id:reply-to; bh=FecPW7WF+fj+fSsMSdgAEe6LdyFLQ6jYIlPQF1916mg=; b=dikZuKbrzoqtTBrsGMBEGvBG5hGrw5Io3DFojCz8xAWu8juhIkVbSejxvNdtOsFLKB nwYZzQ1YCGJhnGbc6xDhlw8MbGvIzINflj3kKvZhAkW4CCMzZj+H3wsAptlg7lIk76+P 5RShorfi67DxqvdDlR02Bhimn2dIS48BQsNTACZiDEjTpWR+i6edSEpoHGxn5uE/NS4l WP8mJY3JLcmy9s5W5xm/2TEX+PwShglg/zqHHOj/FtCx3BIg7T5mUuKCEe1evSK4H+rx SkJmpHfXGuIOmb/vfVoqay0AORunUSZwC/K8sLgi3+vFyZB2NehLbn+5hFBhO0cbtcky X5Nw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686211856; x=1688803856; h=mime-version:user-agent:content-transfer-encoding:references :in-reply-to:date:cc:to:from:subject:message-id:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=FecPW7WF+fj+fSsMSdgAEe6LdyFLQ6jYIlPQF1916mg=; b=NGIINDvq1nz9G9n3CBeoxwgrJcmonkUOU+hFoDom9vvN8XkUL7PwieahISK4l3hJEx vo7QzzMYG/rsouA8jzbzoNECmIFTenYYc3jqzRRZRf0s8X2NUwe7w4UNzjmfZSntWx7G iOdB04YSjCP7Kh586laLRzIvLSNNrd4h7qDfUpmZ9Cc3kQuFJZyvWV0R1Q8Iyv+TzS9e 7A48jblAXayi8d0ihjd10UICaAXhpvHthpfy+x/j1itEaA6zXxquRfYv9ouoRz9HJCqJ 0UY+4ZhAeKclfuowTxG6qy+NAiqs7UA0CjWkCNCEaYTaDMyArekj5Ow/4H2meZG9s27p N/6w== X-Gm-Message-State: AC+VfDyBgNyXExkAKDuG++9HnYd86/3c+uJ0WJvordDqz8zttZdQsXHL 1mZS5RySxlLpNTEgDKZaPGM= X-Google-Smtp-Source: ACHHUZ40y3hU1r8ePcVIxpVzeM+P/SP26r8paSpMX0rKiwAHyN9T8Eg3j9+6yscF0IjXGufMPPSMIg== X-Received: by 2002:ac2:4c0c:0:b0:4f6:d9e:7c3a with SMTP id t12-20020ac24c0c000000b004f60d9e7c3amr3264945lfq.47.1686211855855; Thu, 08 Jun 2023 01:10:55 -0700 (PDT) Message-ID: Subject: Re: [PATCH v1 6/8] xen/riscv: add SPDX tags From: Oleksii To: Julien Grall , xen-devel@lists.xenproject.org Cc: Jan Beulich , Andrew Cooper , Bob Eshleman , Alistair Francis , Connor Davis Date: Thu, 08 Jun 2023 11:10:54 +0300 In-Reply-To: <2c1399c7-458a-61cd-fa81-945c96383210@xen.org> References: <1034fa44a9b589a18f89b7849877c00ee0a362d5.1686080337.git.oleksii.kurochko@gmail.com> <2c1399c7-458a-61cd-fa81-945c96383210@xen.org> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable User-Agent: Evolution 3.48.2 (3.48.2-1.fc38) MIME-Version: 1.0 Hi Julien, On Wed, 2023-06-07 at 11:20 +0100, Julien Grall wrote: > Hi Oleksii, >=20 > On 06/06/2023 20:55, Oleksii Kurochko wrote: > > Signed-off-by: Oleksii Kurochko > > --- > > =C2=A0 xen/arch/riscv/include/asm/config.h=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 | 2 ++ > > =C2=A0 xen/arch/riscv/include/asm/current.h=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0 | 2 ++ > > =C2=A0 xen/arch/riscv/include/asm/early_printk.h | 2 ++ > > =C2=A0 xen/arch/riscv/include/asm/mm.h=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0 | 2 ++ > > =C2=A0 xen/arch/riscv/include/asm/page-bits.h=C2=A0=C2=A0=C2=A0 | 2 ++ > > =C2=A0 xen/arch/riscv/include/asm/page.h=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0 | 2 ++ > > =C2=A0 xen/arch/riscv/include/asm/traps.h=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0 | 2 ++ > > =C2=A0 xen/arch/riscv/include/asm/types.h=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0 | 2 ++ > > =C2=A0 xen/arch/riscv/mm.c=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0 | 2 ++ > > =C2=A0 xen/arch/riscv/setup.c=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 | = 2 ++ > > =C2=A0 10 files changed, 20 insertions(+) > >=20 > > diff --git a/xen/arch/riscv/include/asm/config.h > > b/xen/arch/riscv/include/asm/config.h > > index 38862df0b8..3ae35f57b3 100644 > > --- a/xen/arch/riscv/include/asm/config.h > > +++ b/xen/arch/riscv/include/asm/config.h > > @@ -1,3 +1,5 @@ > > +/* SPDX-License-Identifier: GPL-2.0-or-later */ >=20 > The default license for Xen is GPL-2.0-only. So any particular reason > to=20 > diverge? Thanks for a remark. There is no any particular reason for that. I copied it from on of a file from RISC-V arch directory. I'll change it to GPL-2.0-only in the next version of the patch series. ~ Oleksii From xen-devel-bounces@lists.xenproject.org Thu Jun 08 08:12:56 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 08 Jun 2023 08:12:56 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545179.851459 (Exim 4.92) (envelope-from ) id 1q7AlH-0000kj-1f; Thu, 08 Jun 2023 08:12:51 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545179.851459; Thu, 08 Jun 2023 08:12:51 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7AlG-0000kc-V6; Thu, 08 Jun 2023 08:12:50 +0000 Received: by outflank-mailman (input) for mailman id 545179; Thu, 08 Jun 2023 08:12:49 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7AlF-0000kS-Kk; Thu, 08 Jun 2023 08:12:49 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7AlF-0005na-Cp; Thu, 08 Jun 2023 08:12:49 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7AlE-0002Mq-P5; Thu, 08 Jun 2023 08:12:48 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q7AlE-0004nv-Og; Thu, 08 Jun 2023 08:12:48 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=MqVRYN9icYsz3Bwj5/OuRXilOQ1ZwTJzK0duDgxGBJ0=; b=ggdYiEi7zXpgIFC57c9AY9yBfq LH95uSlbRSlAyNG8zFLln01K3Yq4vmiF9W5znpPzEtK+WTUSWFQWQLtiu1CFWL3Xz0iJNU2Y0Kj89 UO4KItEWEx4d0B0fy6fGvRiB6qaEpGQbvscLUqIH8HepRaVkSWmyPUjX4HEs3uOGYBjw=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [qemu-mainline test] 181281: regressions - FAIL X-Osstest-Failures: qemu-mainline:build-arm64-xsm:xen-build:fail:regression qemu-mainline:build-arm64:xen-build:fail:regression qemu-mainline:build-amd64:xen-build:fail:regression qemu-mainline:build-i386:xen-build:fail:regression qemu-mainline:build-amd64-xsm:xen-build:fail:regression qemu-mainline:build-i386-xsm:xen-build:fail:regression qemu-mainline:build-armhf:xen-build:fail:regression qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-i386:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:build-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:build-arm64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:build-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:build-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pygrub:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking X-Osstest-Versions-This: qemuu=4f65e89f8cf0e079b4ec3ddfede314bbb4e35c76 X-Osstest-Versions-That: qemuu=6972ef1440a9d685482d78672620a7482f2bd09a From: osstest service owner Date: Thu, 08 Jun 2023 08:12:48 +0000 flight 181281 qemu-mainline real [real] http://logs.test-lab.xenproject.org/osstest/logs/181281/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-arm64-xsm 6 xen-build fail REGR. vs. 180691 build-arm64 6 xen-build fail REGR. vs. 180691 build-amd64 6 xen-build fail REGR. vs. 180691 build-i386 6 xen-build fail REGR. vs. 180691 build-amd64-xsm 6 xen-build fail REGR. vs. 180691 build-i386-xsm 6 xen-build fail REGR. vs. 180691 build-armhf 6 xen-build fail REGR. vs. 180691 Tests which did not succeed, but are not blocking: test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-xl-xsm 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-raw 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-xsm 1 build-check(1) blocked n/a test-arm64-arm64-xl 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit1 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit2 1 build-check(1) blocked n/a test-arm64-arm64-xl-thunderx 1 build-check(1) blocked n/a test-arm64-arm64-xl-vhd 1 build-check(1) blocked n/a test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a test-armhf-armhf-libvirt 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-qcow2 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-raw 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a test-armhf-armhf-xl-arndale 1 build-check(1) blocked n/a test-armhf-armhf-xl-multivcpu 1 build-check(1) blocked n/a test-armhf-armhf-xl-rtds 1 build-check(1) blocked n/a test-armhf-armhf-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-amd 1 build-check(1) blocked n/a test-amd64-i386-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-raw 1 build-check(1) blocked n/a test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-i386 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-amd64 1 build-check(1) blocked n/a test-amd64-coresched-i386-xl 1 build-check(1) blocked n/a test-amd64-coresched-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-xsm 1 build-check(1) blocked n/a build-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-shadow 1 build-check(1) blocked n/a test-amd64-amd64-xl-rtds 1 build-check(1) blocked n/a build-arm64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a build-armhf-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a build-i386-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-amd 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-pair 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-qcow2 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-vhd 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvshim 1 build-check(1) blocked n/a test-amd64-amd64-pair 1 build-check(1) blocked n/a test-amd64-amd64-pygrub 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-intel 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd11-amd64 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd12-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-multivcpu 1 build-check(1) blocked n/a test-amd64-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit1 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit1 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-intel 1 build-check(1) blocked n/a test-amd64-i386-xl 1 build-check(1) blocked n/a test-amd64-i386-xl-pvshim 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a version targeted for testing: qemuu 4f65e89f8cf0e079b4ec3ddfede314bbb4e35c76 baseline version: qemuu 6972ef1440a9d685482d78672620a7482f2bd09a Last test of basis 180691 2023-05-17 10:45:22 Z 21 days Failing since 180699 2023-05-18 07:21:24 Z 21 days 70 attempts Testing same since 181271 2023-06-07 19:09:58 Z 0 days 2 attempts ------------------------------------------------------------ People who touched revisions under test: Afonso Bordado Akihiko Odaki Akihiro Suda Alex Bennée Alex Williamson Alexander Bulekov Alexander Graf Alexander Ivanov Alistair Francis Ani Sinha Ani Sinha Anthony PERARD Anton Johansson BALATON Zoltan Bernhard Beschow Bin Meng Brian Cain Brice Goglin Camilla Conte Chuck Zmudzinski Cindy Lu Clément Chigot Cornelia Huck Cédric Le Goater Cédric Le Goater Daniel Henrique Barboza Daniel P. Berrangé Daniil Kovalev David Hildenbrand David Woodhouse Emanuele Giuseppe Esposito Enze Li Eric Auger Eric Blake Eric DeVolder Erico Nunes Eugenio Pérez Fabiano Rosas Fan Ni Fiona Ebner Francesco Cagnin Francisco Iglesias Gavin Shan Gregory Price Gregory Price Hanna Czenczek Hao Zeng Hawkins Jiawei Igor Mammedov Ilya Leoshkevich Ira Weiny Jagannathan Raman Jason Wang Jean-Louis Dupond Jean-Philippe Brucker Jiaxun Yang John Snow Jonathan Cameron Juan Quintela Kevin Wolf Laurent Vivier Lei Yang Leonardo Bras Maksim Davydov Marc-André Lureau Marcin Juszkiewicz Marco Liebel Mark Cave-Ayland Markus Armbruster Matheus Tavares Bernardino Mauro Matteo Cascella Max Fritz Michael S. Tsirkin Michael Tokarev Michal Privoznik Mostafa Saleh Nicholas Piggin Nicolas Saenz Julienne Niek Linnenbank Palmer Dabbelt Paolo Bonzini Peter Maydell Peter Xu Philippe Mathieu-Daudé qianfan Zhao Raghu H Rene Engel Richard Henderson Richard Purdie Ricky Zhou Ryan Wendland Sebastian Ott Sergio Lopez Sid Manning Song Gao Stefan Hajnoczi Stefano Garzarella Steve Sistare Taylor Simpson Thomas Huth Thomas Weißschuh timothee.cocault@gmail.com Timothée Cocault Tommy Wu Vikram Garhwal Viktor Prutyanov Vitaly Cheptsov Vivek Kasireddy Vladimir Sementsov-Ogievskiy Volker Rümelin Xinyu Li Zeng Hao Zhenyu Zhang Zhenzhong Duan Zhuojia Shen jobs: build-amd64-xsm fail build-arm64-xsm fail build-i386-xsm fail build-amd64 fail build-arm64 fail build-armhf fail build-i386 fail build-amd64-libvirt blocked build-arm64-libvirt blocked build-armhf-libvirt blocked build-i386-libvirt blocked build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl blocked test-amd64-coresched-amd64-xl blocked test-arm64-arm64-xl blocked test-armhf-armhf-xl blocked test-amd64-i386-xl blocked test-amd64-coresched-i386-xl blocked test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-i386-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-amd64-libvirt-xsm blocked test-arm64-arm64-libvirt-xsm blocked test-amd64-i386-libvirt-xsm blocked test-amd64-amd64-xl-xsm blocked test-arm64-arm64-xl-xsm blocked test-amd64-i386-xl-xsm blocked test-amd64-amd64-qemuu-nested-amd blocked test-amd64-amd64-xl-pvhv2-amd blocked test-amd64-i386-qemuu-rhel6hvm-amd blocked test-amd64-amd64-dom0pvh-xl-amd blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-freebsd10-amd64 blocked test-amd64-amd64-qemuu-freebsd11-amd64 blocked test-amd64-amd64-qemuu-freebsd12-amd64 blocked test-amd64-amd64-xl-qemuu-ovmf-amd64 blocked test-amd64-i386-xl-qemuu-ovmf-amd64 blocked test-amd64-amd64-xl-qemuu-win7-amd64 blocked test-amd64-i386-xl-qemuu-win7-amd64 blocked test-amd64-amd64-xl-qemuu-ws16-amd64 blocked test-amd64-i386-xl-qemuu-ws16-amd64 blocked test-armhf-armhf-xl-arndale blocked test-amd64-amd64-xl-credit1 blocked test-arm64-arm64-xl-credit1 blocked test-armhf-armhf-xl-credit1 blocked test-amd64-amd64-xl-credit2 blocked test-arm64-arm64-xl-credit2 blocked test-armhf-armhf-xl-credit2 blocked test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-freebsd10-i386 blocked test-amd64-amd64-qemuu-nested-intel blocked test-amd64-amd64-xl-pvhv2-intel blocked test-amd64-i386-qemuu-rhel6hvm-intel blocked test-amd64-amd64-dom0pvh-xl-intel blocked test-amd64-amd64-libvirt blocked test-armhf-armhf-libvirt blocked test-amd64-i386-libvirt blocked test-amd64-amd64-xl-multivcpu blocked test-armhf-armhf-xl-multivcpu blocked test-amd64-amd64-pair blocked test-amd64-i386-pair blocked test-amd64-amd64-libvirt-pair blocked test-amd64-i386-libvirt-pair blocked test-amd64-amd64-xl-pvshim blocked test-amd64-i386-xl-pvshim blocked test-amd64-amd64-pygrub blocked test-armhf-armhf-libvirt-qcow2 blocked test-amd64-amd64-xl-qcow2 blocked test-arm64-arm64-libvirt-raw blocked test-armhf-armhf-libvirt-raw blocked test-amd64-i386-libvirt-raw blocked test-amd64-amd64-xl-rtds blocked test-armhf-armhf-xl-rtds blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-amd64-xl-shadow blocked test-amd64-i386-xl-shadow blocked test-arm64-arm64-xl-thunderx blocked test-amd64-amd64-libvirt-vhd blocked test-arm64-arm64-xl-vhd blocked test-armhf-armhf-xl-vhd blocked test-amd64-i386-xl-vhd blocked ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 15891 lines long.) From xen-devel-bounces@lists.xenproject.org Thu Jun 08 08:13:48 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 08 Jun 2023 08:13:48 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545186.851469 (Exim 4.92) (envelope-from ) id 1q7AmB-0001I4-CI; Thu, 08 Jun 2023 08:13:47 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545186.851469; Thu, 08 Jun 2023 08:13:47 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7AmB-0001Hx-8M; Thu, 08 Jun 2023 08:13:47 +0000 Received: by outflank-mailman (input) for mailman id 545186; Thu, 08 Jun 2023 08:13:45 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7Am9-0001Hc-TP for xen-devel@lists.xenproject.org; Thu, 08 Jun 2023 08:13:45 +0000 Received: from esa4.hc3370-68.iphmx.com (esa4.hc3370-68.iphmx.com [216.71.155.144]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 618f63a0-05d4-11ee-8611-37d641c3527e; Thu, 08 Jun 2023 10:13:43 +0200 (CEST) Received: from mail-bn7nam10lp2105.outbound.protection.outlook.com (HELO NAM10-BN7-obe.outbound.protection.outlook.com) ([104.47.70.105]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 08 Jun 2023 04:13:21 -0400 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) by PH0PR03MB6384.namprd03.prod.outlook.com (2603:10b6:510:aa::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.28; Thu, 8 Jun 2023 08:13:17 +0000 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::192:6bdf:b105:64dd]) by SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::192:6bdf:b105:64dd%3]) with mapi id 15.20.6455.028; Thu, 8 Jun 2023 08:13:17 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 618f63a0-05d4-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686212023; h=date:from:to:cc:subject:message-id:references: content-transfer-encoding:in-reply-to:mime-version; bh=GIsjqDvm1niR+/yE/bliJdfEeSoDQy4pEnm48fyRhIg=; b=fh3MovR1txcBVUfnac84fVSVEHAl3oGyFV4TGg2giNS42LDYH/BcAumc mCYf6i3tdj4I2/n/s3Z9o70aSA2kDQucDZlCSZNH6qJBeWjDysvpfqnFJ rDfy7ZaJNt9CSU6JbXJ7EWM5BzoIoxD+hho7kGZezkqGWNbiN47u198uN Q=; X-IronPort-RemoteIP: 104.47.70.105 X-IronPort-MID: 114541990 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:6WJG260bvvjeAym5n/bD5eVwkn2cJEfYwER7XKvMYLTBsI5bp2ZVn zAdW2jTbKzZa2GnfYojao7k/R4H7ZaAn4RgT1dtpC1hF35El5HIVI+TRqvS04F+DeWYFR46s J9OAjXkBJppJpMJjk71atANlVEliefTAOK6ULWeUsxIbVcMYD87jh5+kPIOjIdtgNyoayuAo tq3qMDEULOf82cc3lk8teTb8HuDgNyo4GlD5gJmNagS1LPjvyJ94Kw3dPnZw0TQGuG4LsbiL 87fwbew+H/u/htFIrtJRZ6iLyXm6paLVeS/oiI+t5qK23CulQRrukoPD9IOaF8/ttm8t4sZJ OOhF3CHYVxB0qXkwIzxWvTDes10FfUuFLTveRBTvSEPpqFvnrSFL/hGVSkL0YMkFulfX1pU+ qAYKmo3dzu9xOCy77ukZ/JCv5F2RCXrFNt3VnBI6xj8VK5ja7acBqLA6JlfwSs6gd1IEbDGf c0FZDFzbRPGJRpSJlMQD5F4l+Ct7pX9W2QA9BTJ+uxouy6KlFEZPLvFabI5fvSQQspYhACAr 3/u9GXlGBAKcteYzFJp91r137OSwXqqCdp6+LuQqM9Ann2X3G0qJQQTbEulkMOkgBKQVIcKQ 6AT0m90xUQoz2S7Q9+4UxCmrXqsuh8HR8EWA+A88BuKyKff/0CeHGdsZiVadNUsucsyRDor/ lyEhdXkAXpoqrL9YXec/bedqXW1IzoYKUcLYCNCRgwAi+QPu6k2hxPLC9xlT6i8i4StHSmqm mjX6i8jm78UkMgHkb2h+kzKiC6toZ6PSRMp4gLQXSSu6QYRiJOZWrFEIGPztZ5oRLt1hHHc4 xDoR+D2ADgyMKyw IronPort-HdrOrdr: A9a23:ETfGiK48NxDFm7qxkQPXwHPXdLJyesId70hD6qm+c31om6uj5q aTdZUgpHjJYVMqMk3I9ursBEDtex/hHNtOkOos1VnLZnibhILqFvAe0WPaqweQZBEWj9Qtq5 uIEZIfNDSANykfsS+g2njALz9I+rDum5xAx92urUuFKzsEV0gK1XYdNu/0KCNLrSB9dOsEPa vZyMpbhiaqPU8aZt68ARA+LpL+juyOupL6QAIMQyUq4gmWjT+u9dfBYmOl9yZbfTNT4KsotV PImQzh5qmlrrWSxxLG23XIhq4m6OfJ+59sBNGslsNQEDnqhwqyDb4RI4G/gA== X-Talos-CUID: 9a23:SidiLm0E75av7F7/twmxV7xfRPs/fSHdzi3qOmSGSmRtZ7SKZES+wfYx X-Talos-MUID: =?us-ascii?q?9a23=3AuLXl3g+GSI4RJNVSagl5NiiQf5lZybqODFoMqLg?= =?us-ascii?q?fvvCUKx1KJj3BojviFw=3D=3D?= X-IronPort-AV: E=Sophos;i="6.00,226,1681185600"; d="scan'208";a="114541990" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=X6kZGG4iXSbuZgYwh2wg8SR2n9u55FoP0tP3Bf5hBU0D+1cPUjZ1RweXEpWvoIN21+xMFCtohIJ8/LGLLsGtPyqk85w8HCMtMi+W+B/6L4SRcomM1cIBeNp8oVo/CeJ9SWch/QYAx15/qSgsGb5SVtNyoCtB+mxHUA6EKiHrm7dsyOqdkCuVQkG4yV+Dcez3AwEjz3Gs/R0GaR/En8kxsNhzWc/dZBt97mbn3vaSz/usHS+p1mzjM7iK0DQmkQwZnw9v7+irWHfKwfr2+P5Gs+tKMVlGd06gByRN8ETAjoVyZcToNtr14Co36P0oXM6q9FKAH705g17DZRVSxs6fZw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=s1QjEzIgSPtV4EYswQghhDTDiijxbUwOXLVBrKUhDK0=; b=TzW/GQzp9PRVpg5Bmf7TdxYsDkCS5EVxQGO0cSV/UwuRmqMrwkWnkSb4/O2j+kfNh8f7Xn7hTewpvwuvG2KkSlJ4FkwOp75+CwHuMOS+2MMNxY47D3AEcU5eoUDleD4iL4HWyMmdx2UYtH5edY9KM110+IMvn3XmuQMgh2o/Yn6VG4DuaZ1qSFCe8LjuGWPlvbhSZFdlPS0zZAn/g8hd8gENlm4Wzb+12nTdtDOe2+Nob5gN5HfdIuDravsydCJMLwTEyuIZg292CSQ1mUgCVVxFLDrylU1cXnNGw9Q5BryU5I93BFz2U2z9rw0YEOp5qhoqNQXugNNZOFsTOAGVuw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=s1QjEzIgSPtV4EYswQghhDTDiijxbUwOXLVBrKUhDK0=; b=gMieyegMXXPFhH9QnFowHNvNT/DHUhkSqg1YCoX3wPQaOfVa/sTt5pQ4qj8FRspfFoSkYCDEYGnDbn9+7e37o48HfMXkN2FOcxFGlKxCqpUGbyFw2BREpFTn40dEnGvUuAxDUlhOtxiixt5AqKmShITGH275BWxy4FR4pnICOfU= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Date: Thu, 8 Jun 2023 10:13:11 +0200 From: Roger Pau =?utf-8?B?TW9ubsOp?= To: Andrew Cooper Cc: Xen-devel , Stefano Stabellini , Michal Orzel Subject: Re: [PATCH] CI: Fix the github actions Coverity run Message-ID: References: <20230607093612.2219286-1-andrew.cooper3@citrix.com> Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <20230607093612.2219286-1-andrew.cooper3@citrix.com> X-ClientProxiedBy: LO4P265CA0138.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:2c4::9) To SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|PH0PR03MB6384:EE_ X-MS-Office365-Filtering-Correlation-Id: 030da7d8-0efb-4b23-390e-08db67f836c5 X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: w3LIxNX8VNpBev3z5LecmtyaLke9p2s88sSjn6G+FXVxRF/cTavnifYcfnWwgc8TCBQ8FacuNgLE1wgJMvgo3uxhv6CMS+DS3N+ylkegErYqe8H+mEQf7jD8kmQcSyM6x5goMOAkSBJ8m8T6FBB07lPNfwixDfbM0PX3w21ocobPcAsgsjS7sdR5+9pG/eJjqqi4rEl7v9DEv291XWDX2NDCyw6WXIqU6HWBcSB5FHLNNavpA57xKT8MyDjbdw40IMzoduU5o1d8ZiSEA/EWX7H80QlasdLe4gA3aydFXG+EDxRNNaA1VwsXCyBHGlOj6xN+NeDX5ALQD57TWv+dyQyALa8J7yaX+Lj/Uj9UGMPTcUEuKZHI5yfR89ELyM9U7A5RWrpF3zw/sL8CEu6basRwlKw3IT+3tHrPtfeB6dc89Jzd4StpkBspCLYu4P+CDdhU5QczhNcDUDgY/5XKySRDwttP47MeuxlE5VPsomynq+JZKQU7HSojb5aVXaszQylmwCLc2fA5vR/igXsBWDThXrfOZitwV4OpjEFmJoEVyV235l18FOFGRWHlrT7r X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(7916004)(376002)(366004)(39860400002)(396003)(346002)(136003)(451199021)(5660300002)(8676002)(6862004)(41300700001)(2906002)(316002)(8936002)(4326008)(4744005)(66476007)(6636002)(66556008)(66946007)(54906003)(6486002)(6506007)(26005)(186003)(9686003)(6512007)(82960400001)(33716001)(478600001)(6666004)(38100700002)(85182001)(86362001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?MmUwSXRwNVQ4N3MwYkNyaXczZldtUEIxbHJXek92bllrR0hiR1R5YU5VcDRX?= =?utf-8?B?OEJpajIwMmF1b1o1NmVlN2xCelFSYmxmeFBXN2tSWlFUMDZ1QXlFRnkzYURN?= =?utf-8?B?dm9qL0toYXhrK1A0MFZtWlNpTVI4N052eUI0QjZRMU53MEs2d3R4THVTdytN?= =?utf-8?B?S1l5RGNkVCtOMGxiMGo0MDFaTmt5UHQ0aFRMYkVielVhYUQveG5wWklCbElJ?= =?utf-8?B?RWRsZWduTnJUOXk2alNBWUZPQ2QxR2tBL1NKVEl1ZlkzaWo5WlVQT3J6dDFo?= =?utf-8?B?NEVKVlUwcENIUEkyRGUvc0V5QzN4aXNVRDZTUDczZ0NsYkgrUmpBOEtaMmNU?= =?utf-8?B?VVlRU21nckZaUVd4ODlSTU53ZGg3R1FUSzFZWG4wYytDRHZmY1ZLUDMxOE9y?= =?utf-8?B?WWI0aWw3bEQ1YTc2aGpVeFlUL3hhS1JXMlhYb3FoU05SWlU2bnRNMFltR04v?= =?utf-8?B?ODdqK3dIRWdpR0lkYi90U1I0RldNSHRRdDRWb1FyUTRuY1BxREpBWDEwd3Ev?= =?utf-8?B?TzBMdExiYzFYdkgzY3cvVnRyNmNwa3NwMU5JYm9NZHBxbDljRXMwaUE5RVJi?= =?utf-8?B?aVpXQ3h5UnQybUNwSVpnM2Z6YzR0V2pZYTFpb3NueDNEeGM4Q044eGRWNnZk?= =?utf-8?B?THQyZUo2VEx6UVIyZzY1cHJNVlNTbW5VVlpCQnpTcEtuUCtjampQb1Urd1ht?= =?utf-8?B?d1JIbVNxZHhkdnllV0JRYXJlQkxUNHNKd3NkVitLY1NXTmJhZGcrQjdXZ0p0?= =?utf-8?B?Q0xXNTdWZXhvR0RHdkFGekR5UHRtbjZ1SDJWYXczQ09ZVTZkL0NYRjFyNWdj?= =?utf-8?B?SVpYbytxOWNzbUFMN3Ywb1AwaVVDdUxkOWlHUDV4NlY5enRhSHI1b2FkckZr?= =?utf-8?B?amNkczBYQ2VXdXFBU1ZxWFF2M3NlODRxMVYzYUhHeDRiOHZKemFDSTc1MVBB?= =?utf-8?B?WklQY1NHMzRvTHUzZGpCUnN4Zko0S1o1aXo3L3cxa1ZFM0ZxYXRoWmtJN3RC?= =?utf-8?B?MlBBZ2ZhWEZGaFM1Wk5iN0hJL3lyM1h3M2owbitXVGNNaC8wYnMrUGM4SVNu?= =?utf-8?B?SFNjM1VTMDBuV2F1L3F4Yy9rR1BBb2pSaFFRcldBQ3BCUWJjUTRnSVFpQWlG?= =?utf-8?B?RSttR3VtSHRVTWxCT2NvazN4Tk96ZFN3TmdlYUdmUCtZTjZZczdIbGxzcGxN?= =?utf-8?B?TzZkMUdGL1FITmNCM05ia1I3NmFXaDJwYWRhazhGRElXekpHb2phcEJkaUFN?= =?utf-8?B?aDU0WTVvRGx4Z1Bhc1g5VnFTcjlrRGE0Smt4dVphQ0Exemlrd1lzTU02ZklN?= =?utf-8?B?OEdkNHJjWmZuSXJ6ZFZXVDYxRnFqenUvRXkramhIaWw5dTRWbk1oRTdJckVO?= =?utf-8?B?QkFhL2VuRUhVRm12dHRsbnBma1E5NjBNV1A1cnI0ZzJoRGx3MVlraDRsOXcy?= =?utf-8?B?TklZRWtXL01uRisrYTg3WGFYZkJKN094aHp0RzVRY1dUU253VkxVbDdPYU1m?= =?utf-8?B?S2k1bHVFM3lVS0VscXVCS2p2Ykt5LzZZZDllT3hGNm1RSnRsVndhOE5Dd3pH?= =?utf-8?B?UkgwckFhUVJvc1ZYV01rb01VS3ltZnpOcWYrQ1BLbFdMdHdWYnFqc3ZxcnZP?= =?utf-8?B?UUVjRzQ2TzBVZ3N2UTE2WCtEa1BSNmpYNXJMa2xnUTRmZXhtQTMzaDV0Mmh0?= =?utf-8?B?bDNtNkhBT2puSWRibHhJNFduUTVxY0d3bEJzZkhGNGZidjRsbE5NWlhlY0pO?= =?utf-8?B?NGw4R2tCWHVvUXVMckFKc2ZMMExCazcyVFpHbklkYjZrNXBLdmxIa3FCcmV0?= =?utf-8?B?U1dFTkJMbVVSb1M1YzhPd1BzQXBRZmpJYkFvZUxFZkhPdklOL3oxZmxvcU54?= =?utf-8?B?SXhGdjQ3UDcyTVFWaHYzT2p1dHkxNmpRMnhFZ2FYcittOG9QL1dPSmFzV1U1?= =?utf-8?B?eVQxbFRxVW1BMDNlRjhLWllhVWlDdkZ1L1VNcDlmT3RwWXZ6ekltVnJWeVlR?= =?utf-8?B?TnRRNFZCZURhbTN4Z3ZrSjhkRGszL1M3ZUdMd2xKQUdSQXpVRFhOVHBLdWVE?= =?utf-8?B?UkRpMmFXOW5rbm5sQXMwUWpkdXp0dzg2cHRHSjdMa2pDakVvZnFvRWxvREVX?= =?utf-8?B?cmh5NjlBUnM5MFZDNkdQSU1nSnVsSzRVa3ZiMnRKbEtFYlVNcjhVRlJ1WDFB?= =?utf-8?B?OXc9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: DVOKkYslhw8dItJ4KQhStjK/iRcDEQQs3aFHNnQCwAl4hroBZmdiPd+oydt4HC3OlseItZKs6v211CSZgEZCKOzZidfiPqeaQ/wKwiWZnavzLwEsA7ayO2hb6xmEaP702p2I9/IAmPOnMJPZtdTdT+cMAxZpxCTfsspZ3a88KtB8djnbwzmma4F1j9d3srbPdeiZWX+hhfuuclTgQBHraReCCRUBmv3ANhxyd5YlkUlSTggnuPpFNY96yyiIhyliEzQ6CSu/qZT39oWwxBKBotxJTtHwudWdcZFMT0xgk8wSgf7eYcwNS3sXnQSli67lsOxWmRXS65Tkk0STYPujVF6uITiImIETTa3luajiY6+P4LYloLjGqWEGLSJaQBCXUX+fCZJYxYODTOW89UO2LhuQnBSMtNAngqRfzaW36H5WeCnVxENaF2xkBWmyqB+HOygWmzy7jXDEzdT0KEFsJfDvix2Cg09mQTWLp8NZ1nWcmNisvVKcqi4qVuAt9+QA/M9lWlPbCAt+wwA+3TvAXLI+M9K5FTRM6rFfGvbm8kNi1Ub3fTxMK1eJYMJbJCGvNF3nH/l7aYthxOPiWmnp9sWnBhmd41mWaRu0TowTEhlUEcVW+OQ2/8feMHaQ/pIteANHq3VOBQIJLA7xxRa1Ta3Ecn5V5zgOp3t1xV42gMPMuyv1Zpu7EI6TQMfaB8fCC2mruqqPldmFMqw7ypSrfh6+0QVz1zpxi4WCQGl3Vj54XbiX7Xjo1YpCVQTXBl1b6BVnkTikaBQQbnLJZRNsimjsLc8/LP/uMQphjEi8ofiOVXioLM9P23puWWzy5PFHj5VVBqzasugmzAmsky/pew== X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 030da7d8-0efb-4b23-390e-08db67f836c5 X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 08 Jun 2023 08:13:17.3471 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: x17joLZmfoAL/ENUmlvwSERra8AiZ/gssvNrJJ1+po6LTIbhEriVEm8HTKd0dPVWqvmqGxS9wVCrQzTDeKwD/w== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR03MB6384 On Wed, Jun 07, 2023 at 10:36:12AM +0100, Andrew Cooper wrote: > The Install step is failing with: > > Package python-dev is not available, but is referred to by another package. > This may mean that the package is missing, has been obsoleted, or > E: Package 'python-dev' has no installation candidate > is only available from another source > However the following packages replace it: > python2-dev python2 python-dev-is-python3 > > which is a side effect of ubuntu-latest having changed from 20.04 to 22.04. > > Drop python-dev as python3-dev is already present, and used a fixed runs-on to > avoid such problems in the future. > > Signed-off-by: Andrew Cooper Reviewed-by: Roger Pau Monné Thanks, Roger. From xen-devel-bounces@lists.xenproject.org Thu Jun 08 08:19:57 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 08 Jun 2023 08:19:57 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545192.851479 (Exim 4.92) (envelope-from ) id 1q7Arv-00021i-4m; Thu, 08 Jun 2023 08:19:43 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545192.851479; Thu, 08 Jun 2023 08:19:43 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7Arv-00021b-1D; Thu, 08 Jun 2023 08:19:43 +0000 Received: by outflank-mailman (input) for mailman id 545192; Thu, 08 Jun 2023 08:19:41 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7Art-00021R-Mo; Thu, 08 Jun 2023 08:19:41 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7Art-0005vm-CX; Thu, 08 Jun 2023 08:19:41 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7Ars-0002Zn-UQ; Thu, 08 Jun 2023 08:19:40 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q7Ars-0006V4-Tx; Thu, 08 Jun 2023 08:19:40 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=w0M1LuLyWS1ziaTgpR+6aIyioAsZpazCEyiS7PaBxOI=; b=eLiJ7NlRbIspSXcGTM9ok+SEEJ o0B8rh9ZZhOw1T+Wf1F4TRBMvPNCx/K+9BbHbDXOd9HPdtCvAwj28u4vDDjosXIut2bhbZf0GiJ9i /9FBvp9xnCfmlntVlfafG8PqCjpPo7CjoBm3/Ut0pzx8DmMMpEs5d/hFwDzhkYLfBD8A=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable-smoke test] 181295: regressions - FAIL X-Osstest-Failures: xen-unstable-smoke:build-arm64-xsm:xen-build:fail:regression xen-unstable-smoke:build-armhf:xen-build:fail:regression xen-unstable-smoke:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking xen-unstable-smoke:test-armhf-armhf-xl:build-check(1):blocked:nonblocking xen-unstable-smoke:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking X-Osstest-Versions-This: xen=0c2d0d32b341eb79bb095fd3f35b9a2672333d64 X-Osstest-Versions-That: xen=64a647f8d817c6989edc000613b5afae19f03f99 From: osstest service owner Date: Thu, 08 Jun 2023 08:19:40 +0000 flight 181295 xen-unstable-smoke real [real] http://logs.test-lab.xenproject.org/osstest/logs/181295/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-arm64-xsm 6 xen-build fail REGR. vs. 181233 build-armhf 6 xen-build fail REGR. vs. 181233 Tests which did not succeed, but are not blocking: test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 15 migrate-support-check fail never pass version targeted for testing: xen 0c2d0d32b341eb79bb095fd3f35b9a2672333d64 baseline version: xen 64a647f8d817c6989edc000613b5afae19f03f99 Last test of basis 181233 2023-06-07 02:04:37 Z 1 days Failing since 181246 2023-06-07 11:02:03 Z 0 days 10 attempts Testing same since 181266 2023-06-07 18:00:26 Z 0 days 7 attempts ------------------------------------------------------------ People who touched revisions under test: Christian Lindig George Dunlap Henry Wang # CHANGELOG Juergen Gross Julien Grall Luca Fancellu Michal Orzel jobs: build-arm64-xsm fail build-amd64 pass build-armhf fail build-amd64-libvirt pass test-armhf-armhf-xl blocked test-arm64-arm64-xl-xsm blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-libvirt pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 461 lines long.) From xen-devel-bounces@lists.xenproject.org Thu Jun 08 08:29:48 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 08 Jun 2023 08:29:48 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545199.851489 (Exim 4.92) (envelope-from ) id 1q7B1W-0003Ws-33; Thu, 08 Jun 2023 08:29:38 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545199.851489; Thu, 08 Jun 2023 08:29:38 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7B1V-0003Wl-VY; Thu, 08 Jun 2023 08:29:37 +0000 Received: by outflank-mailman (input) for mailman id 545199; Thu, 08 Jun 2023 08:29:36 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7B1U-0003WK-5b for xen-devel@lists.xenproject.org; Thu, 08 Jun 2023 08:29:36 +0000 Received: from esa1.hc3370-68.iphmx.com (esa1.hc3370-68.iphmx.com [216.71.145.142]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 94aa7412-05d6-11ee-b232-6b7b168915f2; Thu, 08 Jun 2023 10:29:34 +0200 (CEST) Received: from mail-mw2nam12lp2046.outbound.protection.outlook.com (HELO NAM12-MW2-obe.outbound.protection.outlook.com) ([104.47.66.46]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 08 Jun 2023 04:29:25 -0400 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) by SJ0PR03MB7052.namprd03.prod.outlook.com (2603:10b6:a03:4e1::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Thu, 8 Jun 2023 08:29:24 +0000 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::192:6bdf:b105:64dd]) by SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::192:6bdf:b105:64dd%3]) with mapi id 15.20.6455.028; Thu, 8 Jun 2023 08:29:24 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 94aa7412-05d6-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686212974; h=date:from:to:cc:subject:message-id:references: content-transfer-encoding:in-reply-to:mime-version; bh=s5UfRwrxBGPQw1ksmHRPbDzehOZoq/nA1XECyphARXc=; b=V4qnKn8X9Ex2mDNLzGkCNQomXKo/juwdO2f/CEcdN0YctBrgakdN5Mgl TJxkJA2rgsq0A3TAq2KZ9ag4/016gLldq3a+2+ZYg6FUN4aGFNVZuY2i8 qbNpGQlhIqLR25dpCSTMEiNCXrOx2GQJXsDbG/jN3/Hd6Fb1vZWrDB0qd w=; X-IronPort-RemoteIP: 104.47.66.46 X-IronPort-MID: 112448154 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:Z8zlDq5iuQ+exh1tlXUKbAxRtHvHchMFZxGqfqrLsTDasY5as4F+v mQWCmuOMvyNYWHyLtEjb9u0pBlUsMDVztNjQVQ5riphHi5G8cbLO4+Ufxz6V8+wwm8vb2o8t plDNYOQRCwQZiWBzvt4GuG59RGQ7YnRGvynTraCYnsrLeNdYH9JoQp5nOIkiZJfj9G8Agec0 fv/uMSaM1K+s9JOGjt8B5mr9lU35JwehBtC5gZlPa4T7AeH/5UoJMl3yZ+ZfiOQrrZ8RoZWd 86bpJml82XQ+QsaC9/Nut4XpWVTH9Y+lSDX4pZnc/DKbipq/0Te4Y5iXBYoUm9Fii3hojxE4 I4lWapc6+seFvakdOw1C3G0GszlVEFM0OevzXOX6aR/w6BaGpdFLjoH4EweZOUlFuhL7W5m2 vVIIw4rfx+6qcGa4/GRQ9IxucUIM5y+VG8fkikIITDxK98DGMqGZpqQoNhS0XE3m9xEGuvYa 4wBcz1zYR/cYhpJfFAKFJY5m+TujX76G9FagAvN+exrvC6NkkotjtABM/KMEjCObd9SkUuC4 HrP4kzyAw0ANczZwj2Amp6prraWx3+nCNtPSNVU8NY3q02N+m0uMCQxckOkh+mahVTicelAf hl8Fi0G6PJaGFaQZtXwWhyQoXiavwUdUd5dD+077g6WzqPepQ2eAwAsRy5Lb9EOt8IsQzEuk FOK9/vgCj9HqrCZSXuBsLyTqFuaIi4UMX0PfwcHQBED7t2lp5s85jrDS5NvHbC4ivXvFD3wy izMpy87750WhNQO3r+2/njGhSytvZnDSgMp5gTRUXmh5wk/b4mgD6Ss6F7G/bNKKIGSTXGfs 3Ue3cuT9uYDCdeKjiPlaOEMGqy5ovWIKjvRhXZxEJQ7sTeg4XiuecZX+j4WDFdkNIMIdCHkZ GfXuBhN/9lDMX2yd6h1bomtTcMwwsDd+c/NU/nVap9LfcJ3fQrepiV2PxbMgSbqjVQmlrw5N dGDa8GwAH0GCKNhij2rW+Ma1rxtzSc7rY/Oea3GI92c+eL2TBaopX0taTNisshRAHu4nTjo IronPort-HdrOrdr: A9a23:G7onnapr57uthxW1nBDPqCAaV5rveYIsimQD101hICG9Evb0qy nOpoV/6faQslwssR4b9uxoVJPvfZq+z+8W3WByB9eftWDd0QPFEGgL1+DfKlbbak7DH4BmtJ uJc8JFeafN5VoRt7eG3OFveexQvOVu88qT9JjjJ28Gd3APV0n5hT0JcjpyFCdNNW57LKt8Lr WwzOxdqQGtfHwGB/7LfUXsD4D41rv2fIuNW29+OyIa X-Talos-CUID: 9a23:y9pm8mHLSebgOpq8qmJI/R4fJOY0fUTz71vzYGWxMjtWSZaKHAo= X-Talos-MUID: 9a23:AITs3goTuMz8zmb4LsEez2xJJNlU4pmWMWcqiYogq+qLL3BaACjI2Q== X-IronPort-AV: E=Sophos;i="6.00,226,1681185600"; d="scan'208";a="112448154" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=KkGvDoFLayPBVRfeOJn+r/SaFz3/A8QpeQzoL103hppbBfee/Oq9CH1nScaZJql6O69GRm1wFEMC6zk9rbyWHr4srUohXWwa4tVP8X+VhAdaSrc5wUlS7Z7qFDJAk5ojdOD4sOONdKyRjbF8n1EF0kKe5tkzemr+uKmyNOTgpUrUzEvjlWCRfpfmJ1O3oVeVHFMc8wS5GknBGTwwfdFn0oPq8f/NBKskjhIx+/CAmgfXQbvkonLjefjxqBFkpI+s2tneSd81hHuWzVLtsMgce+KAZKAd0U9MaeQEz5mwuVFYgnlw+8X7iboDa8Ri1oEUAOwR0Ds9njKqGFeIfeoL8A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=umgdw07tohzefqm1klTgcXD7BeA8TvKMRB+InE5P3jg=; b=MVE8mbcVXYeBeRSccmnnm19EWiILjFW+kp1R0ktzakkIxBKYij3VtBEKXc9Q8vOHLtsuUwf7xJU50GdF9rFkt3l0m7K08tCP0janwr/d0C8gHdA/ZvD/AtZ6AmS186foYfx0cHC5ZEWK+9Q8oOT3I8TSUNMgpn3ix4KCQKcOFBQSlEhiq6T2figV3hpZc8OQkc/W7oKZVxeBVniZgnuR4ERicIJO5ueeRgd9j8nSaUnH2tfFzVVYpwtaZhXdMn8ikBnE4kmqOi5F6yhluvIx2W9ggwwm/+I+DPvGrSTpHp4MVtmrNf7I8w7PcPUVa4xA4AcQ0XdelghxCRCM3S1Pbg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=umgdw07tohzefqm1klTgcXD7BeA8TvKMRB+InE5P3jg=; b=JWbJtmC6urNxsU2yv/LcNd3AO9QSR0VtRHaGij94f3oOYcOiXeNpjzZXQzmgIZ6fKEshsY2rpRNpe5eWMl/KzsHSeTDegFFts+bYm7KAA4bkHzGSSX8dt50fqPOsxmVTCu2Gf73jI7aPw1HbxZ47tHbIxRKSICC6gUXQVtPh4Go= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Date: Thu, 8 Jun 2023 10:29:18 +0200 From: Roger Pau =?utf-8?B?TW9ubsOp?= To: Demi Marie Obenour Cc: Jens Axboe , Alasdair Kergon , Mike Snitzer , dm-devel@redhat.com, Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= , linux-block@vger.kernel.org, linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org Subject: Re: [PATCH v2 13/16] xen-blkback: Implement diskseq checks Message-ID: References: <20230530203116.2008-1-demi@invisiblethingslab.com> <20230530203116.2008-14-demi@invisiblethingslab.com> Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: X-ClientProxiedBy: LO4P123CA0071.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:153::22) To SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|SJ0PR03MB7052:EE_ X-MS-Office365-Filtering-Correlation-Id: 4afe84c0-0120-48bd-6361-08db67fa76e9 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: TB6dm0wrZV9D3MSiBPmVQExFIRPMRGyECAvtMs3kaxuuCvmNWQ8zZtzAW3tkCHL19VqbRpSpKGNj8ShY70oSo8qWVrCmyaT2b9UflgBXvu97JCK+BOrncDejWWWZUZ8HQwf8GjuhMcX/0NG5M1pVQt94mU64wjSsElDw3CO1TLCIKuoazGh/hSySqTMmjH3Xb83N8/922d91+g4aaJoUI6ylkMPXZ/so12R8eWaA8ECZx+ZIQX1FaNNfjc0W0ZLsM0FDRizM8ErhneRU2jMGlQubOJ4yQqgqkJhE/+dbefcgu8RPFnARU77piYAZIXh/cqhEpsAgwMVlnmLdiZ5PydJ3wN8iIplxJUz97Qr+mgBka1Caqhwxd4AuJ9Np0n6yJecpif5FprpN6HV7hyaJFd01Wtgqwlwi4NssXjDFiB4F43Iwbqd23CBozZQZRiOLLZtB0kUuTewtysLFCT0pDh7KckTMnbZtvQM+Hlp3y3B9zZMf9H57hkqx72El/3vIPxHKRLkdqV0KtJ6+uXxBfmmFJ5Df08Ln5ODu5jrqHbocFDpcpPcdiahmlBUv/dWH X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(7916004)(4636009)(346002)(376002)(39860400002)(396003)(366004)(136003)(451199021)(66476007)(478600001)(66946007)(4326008)(6916009)(316002)(2906002)(8936002)(41300700001)(8676002)(5660300002)(54906003)(66556008)(6666004)(6486002)(6512007)(6506007)(26005)(9686003)(82960400001)(38100700002)(33716001)(83380400001)(186003)(85182001)(86362001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?VkxDUzJyZktLN2owa01HQjZCall5eGcvWjVzM1ZHWHhCVzFhMlZKUlJHRVBS?= =?utf-8?B?RUFzT1VwMkp5aWFrSWNBbDFIS3ZyOG85b250Q2t0aG5STENtcmREbUpPZlNL?= =?utf-8?B?WWpGMXJOdS9LeG5NMGpFbTNQNDNXUHhCWmkyR09XMUpXSUFCTXdoZzdjYlVo?= =?utf-8?B?T0JrUk1TVkE2ZDFJOVdLek1nbjZEYkZpeGZmZklsUVU3bXlzeFhaQzdWYU5w?= =?utf-8?B?a3dONzk5Nm51REd6aVhXMEkwSG1lK3NDUDZFNkZwZmIvV2VMYTliY1RTTW1B?= =?utf-8?B?UnR2U20yZTRzRi9IcnBMSGYrcGlUR1VXbzd1TSs3MnlpM21pa05XN2pqbUk2?= =?utf-8?B?VjllVkQrTTJtc3p3dXB0TFM1RU5zaVM3WEp5N29BTXpUUXp6NXE1N1ZtTmVQ?= =?utf-8?B?TEIxL2ZiSDVDS2lUTzAvTHp6MDQ1LzJDWUdHVmpYbkpEWlNMNm5wMnZXWHBC?= =?utf-8?B?d3FrQWdZNStjMzhtVnVuR1BTNWZabUI5amM3RGxLYjQveE93cFgwOEtjb01k?= =?utf-8?B?aVllZlVycDFzakwxVjhnT1J4UTNwcGl0YlpMT3huSHB3ZVQ2QnYwNkxqL3BY?= =?utf-8?B?OTRxbXlpM29KYWY5REQxUzBpQWRpMzRBTS9LdlFKZUxYd0VyWVdXVWpBYjBz?= =?utf-8?B?bmE0Sm42ZXBIUkpuYUlQd05FbkRTay9sUThEYjhKb2YrMVltdFZBaytOWWtm?= =?utf-8?B?UTcwVWNxUUdrY2s0ZENTeHhJdy9Paml0UFBKRVYzRWhEWkdMbnFRbW5xN0VW?= =?utf-8?B?TUQ1RjFOZjArNkpGNnZPTnJiY1NxUFlPdW04RDhJcklJTFNXTU8wWmVYVFNx?= =?utf-8?B?d3RqNHY2WXJhQklYa2dSTjBUM0RxVmpZWFZSUXU2dVRHSHpXRWtUeThlTWlU?= =?utf-8?B?aHlaYjdRdDBkMGdSbFAvYTRQdkhZemRwNWx2aWVmaElSOG12eGs5T0o5Ylhi?= =?utf-8?B?RHdudlFHTHdlVHc4NDRYZ1Fha0VVTXlQZW4zaGRmeVE1ajJQUWV2SnNleXlp?= =?utf-8?B?SVI0OUQ2dm5EanRBV2g4TEFBZjFsVnBvb3NCdlZnY3VLY2htcUFkNEhrQWpS?= =?utf-8?B?Q21lNXAwQUdaNEtHOEo3RzNKZys4aTBHRC9iQkQvVXJ1aGdrMDh2UWt4Y3BE?= =?utf-8?B?Z1VDODhIRG92YnZsWmxZRG9XOEtybDZYbkhic2sya1IweWhHNFhxVDlkK3dS?= =?utf-8?B?RnNQaVRsM3g1aGkxZlpmM0JtSFVvWGVycGVOSXA3V1gxeE1IRCtjNUpjUWJ6?= =?utf-8?B?bG5rTWQ0NXkxQnlkck1nV0UwQk9HaWhpU2NTMDdUTjFWK0lhbEsxM1I5K1NW?= =?utf-8?B?U1dhbnFlSS94VEVHWC9SOVVKM1N3MW4yRnNYbzlzQkdoaFYwQkhUY3IrT1pU?= =?utf-8?B?WVNCenBUU2EyUU1GNlpCWGxBblF0VjRjSWxxeXpNajlqbW5uN3ZhSHVPZEp0?= =?utf-8?B?ckNxM08ydFRvdzJLS09JaUlJVWJiMG9mVzUrWEYvWURidEJidlJqUHZpeWth?= =?utf-8?B?NlNhWEZXNDNrdmtlU2UwUTFRSDZEREpTY095aE90Y0pzSVVLbWxSYTR6SStF?= =?utf-8?B?eXg2MC9tSUFmSFBwbGZBVWt5QWR0alBXWm1wTjZnWGZwdGdJWDkvclE1UGZD?= =?utf-8?B?TExXWUdUMjdDdWJlK01VTzhURnFxdkFESXFrUXkvVWY4Ukg2WWFNQlNrdEZ6?= =?utf-8?B?SFV6SExac0lZWE9EQ1EzbVpxcmJKWnphdjNZTkJzUml2alBvbHA0eWJ1UHBZ?= =?utf-8?B?Z1dZekU0Mmg4QU1NQWliRDRlOGFCRUhELy9DTzVGUUh4TjluVjNBekxiK2M2?= =?utf-8?B?ZndPUkkvWFo1THZIdnY4dEZKdlk5bldZMDVmTHc0NFgyN1daK1phVjVqL2xh?= =?utf-8?B?U2JxZ09PaVJPRmJJS0U5TmFiQnppY3lqalBhTjhMaUJqN25kWFNCWXBsNVpG?= =?utf-8?B?bkNqd0QwWnhobGJ5V05na1hvN0RVSWd1OW5tcnEwUmN6RmdmNTdMeUg1TUlj?= =?utf-8?B?UHpDMHlYNmVVUGwxZnY3ak9PRnozTzlEYlIyUkpSMC9Db3FvVGpnMWNBME94?= =?utf-8?B?Q0RIRmM3b1dQMGJpUE0xNUovcHQ3NS9YNVhIYTRIaHJ0VFpIV0FoWXM4YVBr?= =?utf-8?B?UGY0enRGZk1Od3lFa2ZCdnlaUVhnOVJ1ZSs3d0oxZnd2WjZsZU5DSkFaTmRK?= =?utf-8?B?MVE9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: =?utf-8?B?VGdrNXNnS013WVRPVVJ3V1JtL2tnVXRzcUdRdHRqNWd3QkxUNnNlb0UwdGpO?= =?utf-8?B?MEh3QXU0SEQ1UkRrSzVISm5oakN2ZlBMZVlNTTU1ZjRtcmN3OGk5NndjQUxF?= =?utf-8?B?Nm5ueFZqU3B6L3NMTm92NTArOXBWNnpFdCt1UkhKcW1uRS9pU1NBWkVyODho?= =?utf-8?B?UnVIWFlwbzJQb0tteFJVUkJrQ3d0YVZhREJUREk5WjJlSS8zMnduK3hjcVNp?= =?utf-8?B?eVRZckxNY0V4UUJNR2llMFUvWUFFTlZ5UXlQZ0FjYUY5TUxGeStheStITmlZ?= =?utf-8?B?eWxPUXo4Tk1LZ0hJMFN2dkZWa2JxYlZsZk5jRlp2SVdLc1pQSGd6aFYxR2NR?= =?utf-8?B?Qk8rQmdNTzZybktjd2FnSHhFbXhIekxLNnY2bkRDbktRblpXcnJyU2p2R3NU?= =?utf-8?B?Rm5nZ2JrMDQwMk9XQ01YUzR2ditTZmduRDc3dzRKUnBxY24xdG9xK1E1MjZL?= =?utf-8?B?K3o5SFRlaTVFRVJIamhNNDZ6cGd2dElrT3hId3ZvZnBscG1CY2ZhRXQ4M0pv?= =?utf-8?B?VFpuSzRrbWJiU0lBRFVQRWtDUDNLNWt5VlN6RHpPTy9hN1N4ZEZRbWJFbXBr?= =?utf-8?B?VFVIUnRvaVpXTUE3aTlzNGQyRWxva3R2bGdHWWpWWjhnVG92N3lDK0p2TFUx?= =?utf-8?B?bnkxME1PRnQ1WXdxN2UwYndEZi9PeE83UUlpU21lWk40N3FKT1U0cjhWVkJj?= =?utf-8?B?dmk4ZzhRdlNBZ21pbEM4QW95MVZFZWdXTHcxZElOYXJqVXVqK2tvY1JVQzJ1?= =?utf-8?B?WW5FTXJBcWNUeG1PalhsQkpMUVRndlRnaE1OTkhmYjVqZW0vdmxKN2dtTDVw?= =?utf-8?B?MmxMaEtkaVFnc1B5TlptREFGSjEwR0h5bFR5T3dvb01OSkU1MWZ1Y1IxQmRn?= =?utf-8?B?VWNyYzg4cWFESHdTT1NBT2ZWK1pkNTcvd3h3MXIzN2pIcWpLUWZvTjNNVGFH?= =?utf-8?B?a3Z0MlFINUhhNm5nU3FBMWdvU3pqSEIzcXNNR2J2eENkSXJzU1czTlpVUC9D?= =?utf-8?B?aHRtUExCZ1pCZ0hTL3JCcTh4MHVJUDhUVE1yR0hveEtDVzVXTnY2RXRFYk9V?= =?utf-8?B?RjBWcmpvSjhmNThmVDJMWmhsYmhGQ0YxQURqWDRib0VKdTQwcE5lOC9LdHNz?= =?utf-8?B?TUhRU29tWitGUmo2NkpGQUtPY2o3NzBBd3JmT214Mit1eHhCa2JCT1ZsT1Z4?= =?utf-8?B?TitldmtXMFhndDJtcm5RbFpoQ0NvcTlnU1ZiTWlaeGpLL01oR3RSdHhBYThh?= =?utf-8?B?bkJnMGVmTWtOM0w3RXlhc2FwUG5GMkFkaUFGVVZwMnVNc0lFdz09?= X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 4afe84c0-0120-48bd-6361-08db67fa76e9 X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 08 Jun 2023 08:29:24.1132 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: Ozwqg25F9uXKQWGwzS7CSPW5c7lRPHZdjCy0M7AxAUbwKBu47gSlG1HKfKkWZG4cqvWm+EVpemsrtaO+E6f1Tg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR03MB7052 On Wed, Jun 07, 2023 at 12:14:46PM -0400, Demi Marie Obenour wrote: > On Wed, Jun 07, 2023 at 10:20:08AM +0200, Roger Pau Monné wrote: > > On Tue, Jun 06, 2023 at 01:01:20PM -0400, Demi Marie Obenour wrote: > > > On Tue, Jun 06, 2023 at 10:25:47AM +0200, Roger Pau Monné wrote: > > > > On Tue, May 30, 2023 at 04:31:13PM -0400, Demi Marie Obenour wrote: > > > > > - if (be->major | be->minor) { > > > > > - if (be->major != major || be->minor != minor) > > > > > - pr_warn("changing physical device (from %x:%x to %x:%x) not supported.\n", > > > > > - be->major, be->minor, major, minor); > > > > > + diskseq_str = xenbus_read(XBT_NIL, dev->nodename, "diskseq", &diskseq_len); > > > > > + if (IS_ERR(diskseq_str)) { > > > > > + int err = PTR_ERR(diskseq_str); > > > > > + diskseq_str = NULL; > > > > > + > > > > > + /* > > > > > + * If this does not exist, it means legacy userspace that does not > > > > > + * support diskseq. > > > > > + */ > > > > > + if (unlikely(!XENBUS_EXIST_ERR(err))) { > > > > > + xenbus_dev_fatal(dev, err, "reading diskseq"); > > > > > + return; > > > > > + } > > > > > + diskseq = 0; > > > > > + } else if (diskseq_len <= 0) { > > > > > + xenbus_dev_fatal(dev, -EFAULT, "diskseq must not be empty"); > > > > > + goto fail; > > > > > + } else if (diskseq_len > 16) { > > > > > + xenbus_dev_fatal(dev, -ERANGE, "diskseq too long: got %d but limit is 16", > > > > > + diskseq_len); > > > > > + goto fail; > > > > > + } else if (diskseq_str[0] == '0') { > > > > > + xenbus_dev_fatal(dev, -ERANGE, "diskseq must not start with '0'"); > > > > > + goto fail; > > > > > + } else { > > > > > + char *diskseq_end; > > > > > + diskseq = simple_strtoull(diskseq_str, &diskseq_end, 16); > > > > > + if (diskseq_end != diskseq_str + diskseq_len) { > > > > > + xenbus_dev_fatal(dev, -EINVAL, "invalid diskseq"); > > > > > + goto fail; > > > > > + } > > > > > + kfree(diskseq_str); > > > > > + diskseq_str = NULL; > > > > > + } > > > > > > > > Won't it be simpler to use xenbus_scanf() with %llx formatter? > > > > > > xenbus_scanf() doesn’t check for overflow and accepts lots of junk it > > > really should not. Should this be fixed in xenbus_scanf()? > > > > That would be my preference, so that you can use it here instead of > > kind of open-coding it. > > This winds up being a much more invasive patch as it requires changing > sscanf(). It also has a risk (probably mostly theoretical) of breaking > buggy userspace that passes garbage values here. Well, if the current function is not suitable for your purposes it would be better to fix it rather than open-code what you need. Mostly because further usages would then also need to open-code whatever required. > > > > Also, you tie this logic to the "physical-device" watch, which > > > > strictly implies that the "diskseq" node must be written to xenstore > > > > before the "physical-device" node. This seems fragile, but I don't > > > > see much better optiono since the "diskseq" is optional. > > > > > > What about including the diskseq in the "physical-device" node? Perhaps > > > use diskseq@major:minor syntax? > > > > Hm, how would you know whether the blkback instance in the kernel > > supports the diskseq syntax in physical-device? > > That’s what the next patch is for 🙂. Hm, I think we should separate diskseq support from the notify open stuff: it's possible a different (non-Linux) backend wants to implement open notify support but doesn't have diskseq. > > Can you fetch a disk using a diskseq identifier? > > Not yet, although I have considered adding this ability. It would be > one step towards a “diskseqfs” that userspace could use to open a device > by diskseq. > > > Why I understand that this is an extra safety check in order to assert > > blkback is opening the intended device, is this attempting to fix some > > existing issue? > > Yes, it is. I have a block script (written in C) that validates the > device it has opened before passing the information to blkback. It uses > the diskseq to do this, but for that protection to be complete, blkback > must also be aware of it. But if your block script opens the device, and keeps it open until blkback has also taken a reference to it, there's no way such device could be removed and recreated in the window you point out above, as there's always a reference on it taken? > > I'm not sure I see how the major:minor numbers would point to a > > different device than the one specified by the toolstack unless the > > admin explicitly messes with the devices before blkback has got time > > to open them. But then the admin can already do pretty much > > everything it wants with the system. > > Admins typically refer to e.g. device-mapper devices by name, not by > major:minor number. If a device is destroyed and recreated right as the > block script is running, this race condition can occur. Right, but what about this device recreation happening after the admin has written the guest config file but before the call to (lib)xl happens? blkback would also end up using a different device than indented, and your proposed approach doesn't fix this. The only way to solve this would be to reference devices by UUID (iow: diskseq) directly in the guest config file. Then the block script will open the device by diskseq and pass the major:minor numbers to blkback. Thanks, Roger. From xen-devel-bounces@lists.xenproject.org Thu Jun 08 08:36:31 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 08 Jun 2023 08:36:31 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545204.851499 (Exim 4.92) (envelope-from ) id 1q7B81-000501-P8; Thu, 08 Jun 2023 08:36:21 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545204.851499; Thu, 08 Jun 2023 08:36:21 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7B81-0004zu-MA; Thu, 08 Jun 2023 08:36:21 +0000 Received: by outflank-mailman (input) for mailman id 545204; Thu, 08 Jun 2023 08:36:20 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7B80-0004zk-3K; Thu, 08 Jun 2023 08:36:20 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7B7z-0006Pt-NA; Thu, 08 Jun 2023 08:36:19 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7B7z-0002wy-9y; Thu, 08 Jun 2023 08:36:19 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q7B7z-0007Nq-9S; Thu, 08 Jun 2023 08:36:19 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=8djsizzo1p0F1Hash/VIDT9ZBAoj+yu4T+CePsOjXZU=; b=dn7yLkZZSqshyOZDcluNUcw3YV hx04KRzeHz72NvIK9zvtwM4gY/nuJg1wrBPHQtsFs9q0UbR9nNbdl19Rrvx3/K/tjso8DQ8uQBoxb NjZ7/OKaa8SA8LQ/s3NLdXjnoKbEW+YVFaddDH2FJcfO/Xnpdpk7AO5VmebwvF6U/750=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [linux-linus test] 181264: regressions - FAIL X-Osstest-Failures: linux-linus:test-armhf-armhf-xl-credit1:xen-boot:fail:regression linux-linus:test-amd64-amd64-freebsd12-amd64:guest-start/freebsd.repeat:fail:heisenbug linux-linus:test-armhf-armhf-examine:reboot:fail:nonblocking linux-linus:test-armhf-armhf-xl-multivcpu:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-arndale:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking linux-linus:test-armhf-armhf-xl-credit2:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking linux-linus:test-armhf-armhf-libvirt:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-raw:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-qcow2:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-vhd:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-rtds:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-qcow2:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-raw:migrate-support-check:fail:nonblocking X-Osstest-Versions-This: linux=a27648c742104a833a01c54becc24429898d85bf X-Osstest-Versions-That: linux=6c538e1adbfc696ac4747fb10d63e704344f763d From: osstest service owner Date: Thu, 08 Jun 2023 08:36:19 +0000 flight 181264 linux-linus real [real] flight 181297 linux-linus real-retest [real] http://logs.test-lab.xenproject.org/osstest/logs/181264/ http://logs.test-lab.xenproject.org/osstest/logs/181297/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: test-armhf-armhf-xl-credit1 8 xen-boot fail REGR. vs. 180278 Tests which are failing intermittently (not blocking): test-amd64-amd64-freebsd12-amd64 21 guest-start/freebsd.repeat fail pass in 181297-retest Tests which did not succeed, but are not blocking: test-armhf-armhf-examine 8 reboot fail like 180278 test-armhf-armhf-xl-multivcpu 8 xen-boot fail like 180278 test-armhf-armhf-xl-arndale 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 180278 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 180278 test-armhf-armhf-xl-credit2 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 180278 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 180278 test-armhf-armhf-libvirt 8 xen-boot fail like 180278 test-armhf-armhf-libvirt-raw 8 xen-boot fail like 180278 test-armhf-armhf-libvirt-qcow2 8 xen-boot fail like 180278 test-armhf-armhf-xl 8 xen-boot fail like 180278 test-armhf-armhf-xl-vhd 8 xen-boot fail like 180278 test-armhf-armhf-xl-rtds 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 180278 test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qcow2 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass test-amd64-amd64-libvirt-raw 14 migrate-support-check fail never pass version targeted for testing: linux a27648c742104a833a01c54becc24429898d85bf baseline version: linux 6c538e1adbfc696ac4747fb10d63e704344f763d Last test of basis 180278 2023-04-16 19:41:46 Z 52 days Failing since 180281 2023-04-17 06:24:36 Z 52 days 98 attempts Testing same since 181264 2023-06-07 17:43:55 Z 0 days 1 attempts ------------------------------------------------------------ 2631 people touched revisions under test, not listing them all jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl fail test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-freebsd11-amd64 pass test-amd64-amd64-freebsd12-amd64 fail test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale fail test-amd64-amd64-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 fail test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 fail test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine fail test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt fail test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu fail test-amd64-amd64-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-amd64-pygrub pass test-amd64-amd64-libvirt-qcow2 pass test-armhf-armhf-libvirt-qcow2 fail test-amd64-amd64-libvirt-raw pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw fail test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds fail test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-amd64-xl-vhd pass test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd fail ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 332694 lines long.) From xen-devel-bounces@lists.xenproject.org Thu Jun 08 09:12:18 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 08 Jun 2023 09:12:18 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545212.851508 (Exim 4.92) (envelope-from ) id 1q7Bgb-0000u5-LX; Thu, 08 Jun 2023 09:12:05 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545212.851508; Thu, 08 Jun 2023 09:12:05 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7Bgb-0000ty-IP; Thu, 08 Jun 2023 09:12:05 +0000 Received: by outflank-mailman (input) for mailman id 545212; Thu, 08 Jun 2023 09:12:04 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7BgZ-0000ts-Oy for xen-devel@lists.xenproject.org; Thu, 08 Jun 2023 09:12:04 +0000 Received: from esa6.hc3370-68.iphmx.com (esa6.hc3370-68.iphmx.com [216.71.155.175]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 860a73dc-05dc-11ee-b232-6b7b168915f2; Thu, 08 Jun 2023 11:12:01 +0200 (CEST) Received: from mail-dm6nam10lp2104.outbound.protection.outlook.com (HELO NAM10-DM6-obe.outbound.protection.outlook.com) ([104.47.58.104]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 08 Jun 2023 05:11:54 -0400 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) by CO1PR03MB5873.namprd03.prod.outlook.com (2603:10b6:303:9b::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.41; Thu, 8 Jun 2023 09:11:51 +0000 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::192:6bdf:b105:64dd]) by SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::192:6bdf:b105:64dd%3]) with mapi id 15.20.6455.028; Thu, 8 Jun 2023 09:11:51 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 860a73dc-05dc-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686215521; h=date:from:to:cc:subject:message-id:references: content-transfer-encoding:in-reply-to:mime-version; bh=ld0IbPUaYGimz9l/wNKkUCKWIHHFY8JFQHV/g/RnSM0=; b=ZUx4Oa56tjbvE8KpfiBnZP64CUKtTiA6UGD4msa+5ZemcojDA/Q8kQiv 2i4oU2PIYNDwsNnWceikwrhpJYRErWeb4whAvUDkQ0k0ZPkrcvPPtNALy UCIKnGFMtdNauExYvpu9XSoM4Iq1Iovd+0BZSoi0INGY1Iaw6pfWbKfoj M=; X-IronPort-RemoteIP: 104.47.58.104 X-IronPort-MID: 111362467 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:gRrISq8H+tlT1lIFHKpmDrUDwn6TJUtcMsCJ2f8bNWPcYEJGY0x3z WobXGGEOPaOYjOhf9lwbIrn80xSusSDzdQ1TAVv+So8E34SpcT7XtnIdU2Y0wF+jCHgZBk+s 5hBMImowOQcFCK0SsKFa+C5xZVE/fjUAOG6UKicYXoZqTZMEE8JkQhkl/MynrlmiN24BxLlk d7pqojUNUTNNwRcawr40Ird7ks31BjOkGlA5AdmO6gb5Aa2e0Q9V/rzG4ngdxMUfaEMdgKKb 76r5K20+Grf4yAsBruN+losWhRXKlJ6FVHmZkt+A8BOsDAbzsAB+v9T2M4nQVVWk120c+VZk 72hg3ASpTABZcUgkMxFO/VR/roX0aduoNcrKlDn2SCfItGvn9IBDJyCAWlvVbD09NqbDklL0 9olEA4wMCyehue3mriXWMtqhPoseZyD0IM34hmMzBn/JNN/GdXvZvuP4tVVmjAtmspJAPDSI dIDbiZiZwjBZBsJPUoLDJU5n6GjgXyXnz9w8QrJ4/ZopTWDilUpjNABM/KMEjCObd9SkUuC4 HrP4kzyAw0ANczZwj2Amp6prraWxHilAt5MS9VU8NZv2neNwVc2ByQXXHm1vvi/zUKsZvlQf hl8Fi0G6PJaGFaQZtXwWhyQoXiavwUdUd5dD+077g6WzqPepQ2eAwAsRy5Lb9EOt8IsQzEuk FOK9/vgCj9HqrCZSXuBsLyTqFuaIi4UMX0PfwcHQBED7t2lp5s85jrDS5NvHbC4ivXvFD3wy izMpy87750WhNQO3r+2/njGhSytvZnDSgMp5gTRUXmh5wk/b4mgD6Ss6F7G/bNKKIGSTXGfs 3Ue3cuT9uYDCdeKjiPlaOEMGqy5ovWIKjvRhXZxEJQ7sTeg4XiuecZX+j4WDFdkNIMIdCHkZ GfXuBhN/9lDMX2yd6h1bomtTcMwwsDd+c/NU/nVap9CZ8Z3fQrepCV2PxfIgybqjVQmlrw5N dGDa8GwAH0GCKNhij2rW+Ma1rxtzSc7rY/Oea3GI92c+eL2TBaopX0tajNisshRAHu4nTjo IronPort-HdrOrdr: A9a23:K6o0K6ENXiALmxKjpLqEGMeALOsnbusQ8zAXPiBKJCC9E/bo8/ xG+c5w6faaslkssR0b9+xoW5PwJE80l6QFgrX5VI3KNGXbUQ2TTb2KhbGI/9SKIVydygcy78 ddmtNFebrN5VgRt7eH3OG7eexQv+VuJsqT9JnjJ3QGd3AaV0l5hT0JbDpyiidNNXN77ZxSLu vk2uN34wCOVF4wdcqBCnwMT4H41qD2fMKPW29/O/Y/gjP+9g+V1A== X-Talos-CUID: =?us-ascii?q?9a23=3AFVc5Jmqv4dewM4xNLqIKcvbmUcUDVEDl8kqOH1K?= =?us-ascii?q?5DGczQpGHa1mSxqwxxg=3D=3D?= X-Talos-MUID: 9a23:xeXqqQSoKghuLHbMRXTp3ht8M/xN7J2vAWIDjpQA/MWWCAd/bmI= X-IronPort-AV: E=Sophos;i="6.00,226,1681185600"; d="scan'208";a="111362467" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=cbwSJlEEPCdRF+NE1GYbn8TVRNDWNN9IKLZMLgfTqC1gpojyjkiYDmIzQMx6ecPgoPxa273VdlMm28HjTtC9qysVuU7YJJItpJ+Q6UolE4FVDRInH3/Fy85bZ8URkEdQV2vYWZkQabWHooPXZqDutx8xAV/R3C06GN21gYxzrX4mhi+vmJrPdIL4o4gZWrupM9Q0FLwby/IYw3XEi3D7ZA1iPkynwi9fpKDagUKto5DT8R64WaPh0nDKpFjPRoh69kaa5Ty0gSF8iC+y/vvFItC82Ucm6bkseoR+PNmOeDFy+4HuAbXuc8aaphBoLH72Vf/X4qv6Fx1wxyQyB+CkCA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=tyYSjQ9TsbDN4DAzwXQdpwJ89qF1zxgw1zHOP2E+Lqs=; b=HpRpN+eHGwT5aDcg1c8ZnXfMcRrCKufmBVqDy/n/tKNaPECP+6aAA23iATxsPIlm5z2pxC+NUsEyDVyM0sRzdgcFfQjoZb/UT9CtkdV68+tldbszpO06ckwL2gkd8inKoM0J8owdVKK4wlytr6hp2Lj2w6A2lUkMXE7VW54k2q6OAz7gOX+k0G0DvsA4y9ZwRjItCRJrj/Zqxr47Y61W1pAc0y81IXgZHMVRtf1Lws6GR5mWqDMnM+5xTvoQarSZkAk8q7BxtkmAhDDiGZqQ+u4B5B28Ltbbm1aJtH6T1BkfYeKBLUT5rBmbsI1FeYFM5HF9j5+uc8KNotd9vfjueA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=tyYSjQ9TsbDN4DAzwXQdpwJ89qF1zxgw1zHOP2E+Lqs=; b=c8GrdWJD+xtpouUNKdBRtR9iurP7kEO8PUennvcMCxzxnXZVDhwRVpK67BFi/cmgkBfggfSe1AymZcCTRGPZFGhvT2YfD0G/Z1av3WvK2vM6NRhq2ld91UgG4w7wn9ogfLW+5kBkZRFmfkBu2tM5nWdeXkg5LJp3GeupbduW7Kg= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Date: Thu, 8 Jun 2023 11:11:44 +0200 From: Roger Pau =?utf-8?B?TW9ubsOp?= To: Demi Marie Obenour Cc: Jens Axboe , Alasdair Kergon , Mike Snitzer , dm-devel@redhat.com, Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= , linux-block@vger.kernel.org, linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org Subject: Re: [PATCH v2 16/16] xen-blkback: Inform userspace that device has been opened Message-ID: References: <20230530203116.2008-1-demi@invisiblethingslab.com> <20230530203116.2008-17-demi@invisiblethingslab.com> Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: X-ClientProxiedBy: LO4P123CA0165.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:18a::8) To SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|CO1PR03MB5873:EE_ X-MS-Office365-Filtering-Correlation-Id: 5a92e457-0e57-41c2-64fc-08db68006509 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: dCG8b2hegsg5rquNK13BWen0/GsRzM6xXZiOhxfEyAMdMAnJYozEKuCWGAZfzRUkyzOqj7zbF2Epjy6oWFIEJoPPE/aoghB95mmztY2XNBuAGa3/0t9erJCwMNJFlzDbXasfs4nIBuyts2Nc8ixx7EXIyBMGJufdFpAsZ0KRe63M9c923ra+wgN5Razrs/rMX4uVXam+UoLaAeQWg9gEaVHrcc+n4d9hBjHSBOfs4s8rNWyhcW1Xk6hQ6eWKyKeAKSCdgV0hdRMZfw9qOyUnK/PL0prBAwIGNApixfsLgMqmuRxosY8zvSOFls1rI8sD9DWl0y0kUFmwcRF6i0Mt67qJfXCt9wIzKEO2lGYlsEPJeCeonMpYUZ3qndZ4mVhEMnbVlt/uzYfjU1cUXtHLKKai+gowtY3tXoXo0IhYkrTYJdgva1lfNC0DDetNq+Zcv7wyc2yqY4zMZ0R/zUxrtDD1iQhuKdu6fgXEmOI1L9XAB5areu79jYIiRghH6m73m0BiWB7P7bzhj+4akwMRBwLOKV9zUkhKL1J77p0m2Hcyd/jjUcFyJS0q8L7ljzEb X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(7916004)(366004)(396003)(346002)(376002)(39860400002)(136003)(451199021)(54906003)(82960400001)(478600001)(5660300002)(8936002)(8676002)(4326008)(6916009)(66556008)(66476007)(316002)(66946007)(41300700001)(38100700002)(186003)(83380400001)(6486002)(6666004)(9686003)(6506007)(26005)(6512007)(86362001)(33716001)(2906002)(85182001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?Sm5NMDZ5anEvcVRzVzVZc0pFK203dGhsRW9uTXFjdGZpNDNYZ0lxOEl3a3px?= =?utf-8?B?ZTM2YjFjSE1UcDYzQzFVcUkyc1NnV0pKbVh6MWdDMUY5N0Q4RnNPQlV6WDdR?= =?utf-8?B?UndTT3BOaDlBZ1hqeG1nbFdLOCtIZjB1ZlcxU2tHcEV1ck55R2w0eG1FOGtF?= =?utf-8?B?THA4Qi9kRWJYZnY5TXZiWVBDTjJhWi93cWhYY2JuQUJlMTJ1UUNOeFlKODZN?= =?utf-8?B?NVQxbVQ4UEdrb3NhVlB5dDczMkF6bHJ0WHN1ZFZuRTVKZGltM0hrRnBudU1M?= =?utf-8?B?OEtrZ1hGSFB3Z2hmcTExN0xyeThsQm8rQ0lzUnk1RDVMOEdCYVdKUXkwMXZ4?= =?utf-8?B?Vy9rTVlGUjFudFphOTNFdWEyMHZSVklRbTRldXVzZmtReEwwN3I4OXJKUUlF?= =?utf-8?B?Z0N4cCtwZEtFcGpMTFczZVZhOU1YU2hka0ZPYTMzakFzak1hR2lmMForT0pp?= =?utf-8?B?cFNLa2NTZERpMENDRFc2S0NUVW1xcXFXd1ExaUJQb2pEZXc5MDhPQWg3UUtL?= =?utf-8?B?QVZnVFhuMU1EYVc3WmFzcVJiTjVZQW50MXFwN05jS2pHVlgxZnB3cFBVVk92?= =?utf-8?B?ZXBIdm4zcDkwL08vbFNqdzZvOC80QnlPSUhoRjg2Vnp0WVQ3ckxPVmU1ZnJw?= =?utf-8?B?d2hLU0lvMnVjRVhyaXkrT2k4d1MzVWFLaTYzNUhXYUx5ZlVyY1FQYXpucloy?= =?utf-8?B?c1BCVmxMYjAxZ1R1VG1Td3JwY3pySUpQNWF3dWljVzZLS0dMRmZqc0xKVDBJ?= =?utf-8?B?QjZpaTZ4eXFhL2dHcmtXdjhUYWVid3I2a2EvRmowZ1BMZjFNOEJJMnBpS1F0?= =?utf-8?B?N0grODNhN3VGc082NlMrRm1MdkJKbzVyOWdScEhtak5pNlVMZXl6OUVxWksx?= =?utf-8?B?TVFML3YyaGpkOGk1RlBTSXNxbVFtcklSVHl4T1NZbitjRWFuM21ySUNCMENG?= =?utf-8?B?clRoakZFUkJvVWlGQ0JpbEhCaEU3WkNOZXJYQmRKNVIrQ0h1blkxZ3NycWVo?= =?utf-8?B?YXZXVlVmTnZhenJVYUxLRzB6b3VyVW5jbHp3K1NXaGNkdTVRdnJxMk1KQjNJ?= =?utf-8?B?Qk1WalR6cDdBM1IrNHdkeitZcHN5UGhzTklOT1lYZUZvcXdCMXdrOEx2aFRO?= =?utf-8?B?UWx4b1VwTTVFN1l2U1g4L1BJYW5vSzRkaUkzc0NsUUE5Rm42R0tFbGh4Y1VR?= =?utf-8?B?azZWWEd0WUpycFZZUGdrVnVsWHRzU2dxd2ROQVFldkhMQ2xjcjR1Z0VMSkhz?= =?utf-8?B?SE9ZajVJNDZYOUMvYWVqMkpZdFFTVHJxQUFsZFNXUzhFV1JMV3NUZXFmekZB?= =?utf-8?B?cDZOakRndi9SWXMwcmRHNXhmU0JNYnYxeERLNWpqYTlZTURxTmxCSzN3UWRE?= =?utf-8?B?cUNLbjBlYlhsSFN1WDVuWkc3Zm4wdXNPZVlpZ2xrUzUvMSt6L241OHdSWCtt?= =?utf-8?B?UVZyY1NqQ2hZaHloSkNGWVdwbmJGeU9GclNUaXdvN1VuQ21Yam1tYWVVc1Vz?= =?utf-8?B?SEFsZmhYNVByRVlqNFlqZ01mQ204ZHFGZTlrdU81QVAydVA2dExWaHEzdGdy?= =?utf-8?B?cHZqTVE4M21RZU1xUThxMGpZd2tRQUxSVXhSVEdCYU8xRzIzMFVHL2w0YUV2?= =?utf-8?B?U1lhK1BrYW5VRGNwY044QVdjL0V2OTM5VzdaRDhNZlNDZ1g1U29SRzFsc2pw?= =?utf-8?B?M2tKdlR6eHlHeXVFcStIN3ZiOGt2ZWRSWmh0ZENzeGdSekFLa05yVTlzbUNp?= =?utf-8?B?cDNKNlduMTJGWjhhYW9wTGwvOTk1RDFPS1JoSG5aWlpQYWtJMFg0QXFwUmJT?= =?utf-8?B?K214VnE0TzJ5YlkwSWVvcFZTQmIxMFROYzR0MlNVUlNBVXd4L1M2N1VwRzk2?= =?utf-8?B?Um9GdXYvVjVSLzZNZGdETGtLN3pLaVVoeFFZNnA5ZTg1eU9TeEFBc1czZXZa?= =?utf-8?B?QnBSSHdIZWhoMTFlUG5oWU9IOVhlU3YwU1hvcGxNckZzZ2xHY1FNV2FNZGR1?= =?utf-8?B?Tkl0aE5kbjd2Yi9KL2RiNnpnZFVWWEpIVGFiYXM5ZFlONFlOR3AzcGwwYTNw?= =?utf-8?B?RnJRWlFlZDV4WUxlMkNiQmlXTnNjYm9renlxdEJhMTJGQTNDdGx4eVV1aFBM?= =?utf-8?B?Yk93U0NvdE5nNFlNUWdOZ1B1d0RoZ0NMZlZaaS9RM0xIU1pMaGRieEVueW9K?= =?utf-8?B?S0E9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: =?utf-8?B?YysvMmlUblhpWlEveVhHbTVKeVpmOEd3UnlMUUFiRGNSSElEdEhPQXlpQ2h4?= =?utf-8?B?eGppREZTWkUyanlNUGRJL0tzcFRHaFU2S0xUOWluYk16akJvTlQzT2UrSEth?= =?utf-8?B?bGN5L2huTklOVW1UYW9mZ2xGYjBGODBoZXRhSkF5UUtaTjVndnhRL1NDVlFz?= =?utf-8?B?bTd5cVJxM1VEbHhVVnAxelhHNHNkeXYyRkltSkFCQWFaZFVPWmpqR3hIakla?= =?utf-8?B?NHk0OWhMOVorL0tJZy82eTQxa3FhSUI2a1hrSDM5Ym1oR1hBT044ak5nZzdF?= =?utf-8?B?cnJCcVYxYnJ6aHRhYjJmbTFtWlFuVXRTZCtkeU1CNFRxdGFBWEIwczhwOEtO?= =?utf-8?B?WmZNYXMxTW03K0x0S2JhallaZzV5YmpyYkxjNEsyL2J0L2V2QTUrTCtVVVhv?= =?utf-8?B?Q2prYkpORU1NaXIvWWFoZE1pdlFoZGxnS3k5NjEvdnJScWZwYjEzOHIra3hD?= =?utf-8?B?VFZQd0tPeWU1MUowYThqK1BmNllrcG12OStqREJsV2lna0hNdHkxRUhQa2g5?= =?utf-8?B?cWhqdkhnZWhrS05ZQk5wL2ZyaGFiNVZLc0J1Sm8rODRNMDIzT25vUm05dlo0?= =?utf-8?B?enZXRTYzQ2pzMGdwdnljTm02QjBtenhaM2M1UU1BYWkxNXU1K084TzZ2RUsz?= =?utf-8?B?VHdBTjRhdTRTSXlMM1ZxUmFDM2J5bll6OEhSNXFuNHE2QUQ1REdESzFGcDRh?= =?utf-8?B?TnRVWEhoTk9Cc0IxU0JKWllhRmtLeG5EN2ZKSTQyekhMMG44UUlQZ1ZIeHYw?= =?utf-8?B?akltNHYrdVowZkRDaitEU3BIRTRqNEtvR3RTNEpydHZpYzVJb1lPL3JJY0dP?= =?utf-8?B?MHliamtia0FBc0ZPNThRUU5OMGkzZFdiRXdOYURUUDJMUEVDZVdWTWdWMTR3?= =?utf-8?B?SzR1WmFLcTBYZC8zdFdvdXBEUzQrait4a1NGU2JicEpLN0RlYkhKV1B2MlUr?= =?utf-8?B?dEI3TDlZTWs2VEdyNnR3bWJoVTFSVUZYL3U5aXZqaWkyNjN2UHNGYXdQTzN4?= =?utf-8?B?VDI5Wmlya0hxaC9lNEhsNmQ0dytFVmlhZzZFem1PT0tmaW8vaEJXeFFPc1Bs?= =?utf-8?B?UUo2a0NjYnRNQllwVG0wWUZNWWJVYm1HR1NJRm5qYnVaeWFVOHFZTHF5QVdz?= =?utf-8?B?cUx3ak9TMjNTR2VRRzd5bjFiZk5BYWxxYlRGK3FEbHFOckZxOVNVdGRpc0pU?= =?utf-8?B?cE4wclpnOUFCUEV6NmFCRnhGSFFBUjRDem9LUXFCeEpzcXZabUtjckVKVHN0?= =?utf-8?B?dEpUZnVHaU82N0N2Tk5MOTVVcjR3Y3VHRkVuK2x2cDVrcmtDZz09?= X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 5a92e457-0e57-41c2-64fc-08db68006509 X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 08 Jun 2023 09:11:51.1063 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: JDbJaNQ6GmtpULeYEdhhy+D1txRQFQPG3J1OPXhgq6JekeCDtbzJMyzyH8nusFK95yTFN5CpbvcW6hefzymvgQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: CO1PR03MB5873 On Wed, Jun 07, 2023 at 12:29:26PM -0400, Demi Marie Obenour wrote: > On Wed, Jun 07, 2023 at 10:44:48AM +0200, Roger Pau Monné wrote: > > On Tue, Jun 06, 2023 at 01:31:25PM -0400, Demi Marie Obenour wrote: > > > On Tue, Jun 06, 2023 at 11:15:37AM +0200, Roger Pau Monné wrote: > > > > On Tue, May 30, 2023 at 04:31:16PM -0400, Demi Marie Obenour wrote: > > > > > Set "opened" to "0" before the hotplug script is called. Once the > > > > > device node has been opened, set "opened" to "1". > > > > > > > > > > "opened" is used exclusively by userspace. It serves two purposes: > > > > > > > > > > 1. It tells userspace that the diskseq Xenstore entry is supported. > > > > > > > > > > 2. It tells userspace that it can wait for "opened" to be set to 1. > > > > > Once "opened" is 1, blkback has a reference to the device, so > > > > > userspace doesn't need to keep one. > > > > > > > > > > Together, these changes allow userspace to use block devices with > > > > > delete-on-close behavior, such as loop devices with the autoclear flag > > > > > set or device-mapper devices with the deferred-remove flag set. > > > > > > > > There was some work in the past to allow reloading blkback as a > > > > module, it's clear that using delete-on-close won't work if attempting > > > > to reload blkback. > > > > > > Should blkback stop itself from being unloaded if delete-on-close is in > > > use? > > > > Hm, maybe. I guess that's the best we can do right now. > > I’ll implement this. Let's make this a separate patch. > > > > Isn't there some existing way to check whether a device is opened? > > > > (stat syscall maybe?). > > > > > > Knowing that the device has been opened isn’t enough. The block script > > > needs to be able to wait for blkback (and not something else) to open > > > the device. Otherwise it will be confused if the device is opened by > > > e.g. udev. > > > > Urg, no, the block script cannot wait indefinitely for blkback to open > > the device, as it has an execution timeout. blkback is free to only > > open the device upon guest frontend connection, and that (when using > > libxl) requires the hotplug scripts execution to be finished so the > > guest can be started. > > I’m a bit confused here. My understanding is that blkdev_get_by_dev() > already opens the device, and that happens in the xenstore watch > handler. I have tested this with delete-on-close device-mapper devices, > and it does work. Right, but on a very contended system there's no guarantee of when blkback will pick up the update to "physical-device" and open the device, so far the block script only writes the physical-device node and exits. With the proposed change the block script will also wait for blkback to react to the physcal-device write, hence making VM creation slower. > > > > I would like to avoid adding more xenstore blkback state if such > > > > information can be fetched from other methods. > > > > > > I don’t think it can be, unless the information is passed via a > > > completely different method. Maybe netlink(7) or ioctl(2)? Arguably > > > this information should not be stored in Xenstore at all, as it exposes > > > backend implementation details to the frontend. > > > > Could you maybe use sysfs for this information? > > Probably? This would involve adding a new file in sysfs. > > > We have all sorts of crap in xenstore, but it would be best if we can > > see of placing stuff like this in another interface. > > Fair. Let's see if that's a suitable approach, and we can avoid having to add an extra node to xenstore. Thanks, Roger. From xen-devel-bounces@lists.xenproject.org Thu Jun 08 09:33:33 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 08 Jun 2023 09:33:33 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545217.851519 (Exim 4.92) (envelope-from ) id 1q7C18-0003MY-D7; Thu, 08 Jun 2023 09:33:18 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545217.851519; Thu, 08 Jun 2023 09:33:18 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7C18-0003MR-9m; Thu, 08 Jun 2023 09:33:18 +0000 Received: by outflank-mailman (input) for mailman id 545217; Thu, 08 Jun 2023 09:33:17 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7C17-0003ML-IT for xen-devel@lists.xenproject.org; Thu, 08 Jun 2023 09:33:17 +0000 Received: from out0-212.mail.aliyun.com (out0-212.mail.aliyun.com [140.205.0.212]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 7bb3b861-05df-11ee-8611-37d641c3527e; Thu, 08 Jun 2023 11:33:13 +0200 (CEST) Received: from localhost(mailfrom:houwenlong.hwl@antgroup.com fp:SMTPD_---.TOc6qlT_1686216783) by smtp.aliyun-inc.com; Thu, 08 Jun 2023 17:33:04 +0800 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 7bb3b861-05df-11ee-8611-37d641c3527e X-Alimail-AntiSpam:AC=PASS;BC=-1|-1;BR=01201311R551e4;CH=green;DM=||false|;DS=||;FP=0|-1|-1|-1|0|-1|-1|-1;HT=ay29a033018047201;MF=houwenlong.hwl@antgroup.com;NM=1;PH=DS;RN=28;SR=0;TI=SMTPD_---.TOc6qlT_1686216783; Date: Thu, 08 Jun 2023 17:33:03 +0800 From: "Hou Wenlong" To: Dave Hansen Cc: , "Lai Jiangshan" , "Alexey Makhalov" , "Andrew Morton" , "Andy Lutomirski" , "Anshuman Khandual" , "Borislav Petkov" , "Boris Ostrovsky" , "Brian Gerst" , "Dave Hansen" , "David Woodhouse" , "H. Peter Anvin" , "Ingo Molnar" , "Josh Poimboeuf" , "Juergen Gross" , "Kirill A. Shutemov" , "=?UTF-8?B?TWlrZSBSYXBvcG9ydCAoSUJNKQ==?=" , "Pasha Tatashin" , "Peter Zijlstra" , "=?UTF-8?B?U3JpdmF0c2EgUy4gQmhhdCAoVk13YXJlKQ==?=" , "Suren Baghdasaryan" , "Thomas Gleixner" , "Usama Arif" , , "VMware PV-Drivers Reviewers" , , Subject: Re: [PATCH RFC 0/4] x86/fixmap: Unify FIXADDR_TOP Message-ID: <20230608093303.GA16983@k08j02272.eu95sqa> References: <1f633e99-d294-6932-31e9-0eb158d030ea@intel.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1f633e99-d294-6932-31e9-0eb158d030ea@intel.com> User-Agent: Mutt/1.5.21 (2010-09-15) On Wed, Jun 07, 2023 at 08:49:15PM +0800, Dave Hansen wrote: > On 5/15/23 01:19, Hou Wenlong wrote: > > This patchset unifies FIXADDR_TOP as a variable for x86, allowing the > > fixmap area to be movable and relocated with the kernel image in the > > x86/PIE patchset [0]. This enables the kernel image to be relocated in > > the top 512G of the address space. > > What problems does this patch set solve? How might that solution be > visible to end users? Why is this problem important to you? > > Also, while you're waiting for someone to review _your_ code, have you > considered reviewing anyone else's code? I don't think I've seen any > review activity from you lately. Hello, Sorry for bothering you. This patch is not important; it is just a part of our PIE patchset. I should be more patient. We want to build the kernel as PIE and allow the kernel image area, including the fixmap area, to be placed at any virtual address. We have also implemented a PV Linux guest based on PIE, which can be used in software virtualization similar to Lguest. PIE makes the guest kernel share the host kernel space similar to a normal userspace process. Additionally, we are considering whether it is possible to use PIE and PVOPS to implement a user-mode kernel. Thank you for your advice. I will participate more actively in community review activities. Sorry again for bothering you. Thanks. From xen-devel-bounces@lists.xenproject.org Thu Jun 08 09:49:02 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 08 Jun 2023 09:49:02 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545224.851534 (Exim 4.92) (envelope-from ) id 1q7CG6-0004zS-Mq; Thu, 08 Jun 2023 09:48:46 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545224.851534; Thu, 08 Jun 2023 09:48:46 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7CG6-0004zL-KB; Thu, 08 Jun 2023 09:48:46 +0000 Received: by outflank-mailman (input) for mailman id 545224; Thu, 08 Jun 2023 09:48:45 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7CG5-0004zF-IU for xen-devel@lists.xenproject.org; Thu, 08 Jun 2023 09:48:45 +0000 Received: from esa6.hc3370-68.iphmx.com (esa6.hc3370-68.iphmx.com [216.71.155.175]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id a6844137-05e1-11ee-8611-37d641c3527e; Thu, 08 Jun 2023 11:48:43 +0200 (CEST) Received: from mail-mw2nam12lp2041.outbound.protection.outlook.com (HELO NAM12-MW2-obe.outbound.protection.outlook.com) ([104.47.66.41]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 08 Jun 2023 05:48:36 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by BN8PR03MB5026.namprd03.prod.outlook.com (2603:10b6:408:d6::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.38; Thu, 8 Jun 2023 09:48:33 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606%4]) with mapi id 15.20.6455.030; Thu, 8 Jun 2023 09:48:33 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: a6844137-05e1-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686217722; h=message-id:date:from:subject:to:cc:references: in-reply-to:content-transfer-encoding:mime-version; bh=otLtSthc3/zbrH7rJpdBQ7hJg5KtQblmMCWQORN/gi8=; b=gklKX74eoMwq8j4k+9Z/MxEuiCf2nPT0Y7SbwRa5seiIeQ/0NDAX6wG1 TXED6uh/lGT1AuNBByxrLbI6d9IfbFEbtHyyv02pZm4I7TS58l77Vhb3z DyAskeKXKwuz81719g7Wz0rHWQ3M4x8mi+xG1c5F2Ou+1mzSfcG9F6Xwd E=; X-IronPort-RemoteIP: 104.47.66.41 X-IronPort-MID: 111366894 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:VqRgeKPB3Mux2BTvrR2HlsFynXyQoLVcMsEvi/4bfWQNrUp0gTUBm DBKCG/TPqyCZGWkftl/PoizoxgB65fSm9E3Sgto+SlhQUwRpJueD7x1DKtS0wC6dZSfER09v 63yTvGacajYm1eF/k/F3oDJ9CU6jufQAOKnUoYoAwgpLSd8UiAtlBl/rOAwh49skLCRDhiE/ Nj/uKUzAnf8s9JPGjxSs/rrRC9H5qyo42tG5gxmPJingXeF/5UrJMNHTU2OByOQrrl8RoaSW +vFxbelyWLVlz9F5gSNy+uTnuUiG9Y+DCDW4pZkc/HKbitq/0Te5p0TJvsEAXq7vh3S9zxHJ HehgrTrIeshFvWkdO3wyHC0GQkmVUFN0OevzXRSLaV/ZqAJGpfh66wGMa04AWEX0t1lH0Zqz uIYEzlXYhaz17/vmvGQatA506zPLOGzVG8ekldJ6GiDSNMZG9XESaiM4sJE1jAtgMwIBezZe 8cSdTtoalLHfgFLPVAUTpk5mY9EhFGmK2Ee9A3T+/RxvzG7IA9ZidABNPL8fNCQSNoTtUGfv m/cpEzyAw0ANczZwj2Amp6prraWxHilBtJDSNVU8NZrmk/J62YUMCY8RESarPuDgBCafd92f hl8Fi0G6PJaGFaQZsnwWVi0rWCJujYYWsFMCKsq5QeV0K3W7g2FQG8eQVZpatYrqcs3TjwCz UKSkpXiAjkHmKKRYWKQ8PGTtzzaBMQOBWoLZCtBSBRf5dDm+ds3lkiXEo8lF7OphNroHz222 yqNsCU1m7QUi4gMyrm/+lfExTmro/AlUzII2+keZUr9hisRWWJvT9bABYTzhRqYELukcw== IronPort-HdrOrdr: A9a23:9ap46awWlAdM/x1zkyBiKrPxMegkLtp133Aq2lEZdPULSKGlfp GV9sjziyWetN9wYh4dcB67SdC9qADnhPlICO4qTMqftWjdyRGVxeRZgbcKrAeQeBEWmtQtsJ uINpIOc+EYbmIK8/oSgjPZLz9I+rDunsGVbKXlvg9QpGlRGt5dBmxCe2Km+yNNNW977NYCZf ihDp0tnUvdRZ1bVLXyOpFDNNKz1eHjpdbDW1orFhQn4A6BgXeB76P7KQGR2lMzQi5C2rAr9E nCikjc6r+4u/+25xfA3yuLhq4m1OfJ+59mPoihm8IVIjLjhkKBY5lgYaSLuHQYsfyi81Ejlf jLulMFM95o433cU2mpqV/G2hXm0hwp93j+oGXozEfLkIjcfnYXGsBBjYVWfl/w7Fchhsh11O Zu03iCv5RaIBvclGCljuK4HS1Cpw6Rmz4PgOQTh3tQXc83b6JQl5UW+AdwHI0bFCz3xYg7GK 1FDd3a5txRbVSGBkqp9VVH8ZiJZDAeDx2GSk8Ntoi81CVXpmlwyw8iyMkWjh47heUAYqgBw9 6BHrVjlblIQMNTR7l6Hv09Tcy+DXGIaQ7QMUqJSG6XVJ0vCjbokdra8b817OaldNgj150pgq nMV1teqCobZ1/uM8uTx5dGmyq9AVlVZQ6diP222qIJ/4EVHNHQQGm+oREV4oWdSswkc47ms6 3ZAuMQPxfhRVGebbqhkTeOHaW6EkNuI/H9iuxLKm5mnfi7WrECltarBso7d4CdWAoMayfYPk YpegTVCYFp0n2LM0WI9SQ5HUmdNXDCwQ== X-Talos-CUID: =?us-ascii?q?9a23=3AHP/LuGnsda7JFlhoHd26YdIRPobXOUbP0lD0GFG?= =?us-ascii?q?4Mm8zRLulGQLJouBPs/M7zg=3D=3D?= X-Talos-MUID: 9a23:OV53lAu7ytIfgxsQfc2nhStwbupi5JyVIlESsJgEgcPaEQp9EmLI X-IronPort-AV: E=Sophos;i="6.00,226,1681185600"; d="scan'208";a="111366894" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=bkr8suNJJOKTUQrfjHYzdYRO0oT32zCBGbX4FCyGOpjmZ57cWhPhusjmmr1RSyuz3a2VukyZ228gmwYpjbkm/DPXpE5FP0cB/SQB6/K24OGcX5B3Wx4ckIH+WifCfdk1yRl189Ty+j+PgJdoY8V/RGGQKctExFO9Vg8+VSBB0vz05iHIHEkr9K03SYgPAZjXT4ClnGlxdXRZ+rZ1Rtl66ZSmdf4lE004JaTC63G+CQe0G6pIkeKO+FgczWxxTEK9o8iQyzjSNgBs6VfKrx1A8FjYmwDgddNQN+pfCuNYMUgzHrYGIen+GjzwobNi6S07nJoZ1g6nFc0p5Szli6nToA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=DnX6xQdZ+BbyTiZmTs7DyQy14pw7XGe9QvfyLNYMAHw=; b=k4Sbdm8RU9oXFGWjorkTRu2fLgsXBKY3vSm0/WDPR1uwoWPRNbOUFtz+Tqymf1Ps1nrlGTNFKnTShYY3ZfPS9/sozFTMr5O+4UxF0BbbIAc5iNTI1WufMIx18T9hnD+wjjUEKv0b4DwL2ldqhgIProqLA2QZXvkDUMgjjQL9/9Jc7VRebM+GDGf4DsscwjiZxkIoTc+pm/d0w8fXw79Kzmi2OmwKFuGxxYI96/bPZkvQm9lJHDmj9s0K3vKKP+XVfe6ugp9Qi/Vbq27BHFhW1711vVjClmGBjQnZf4Rgk/vA8LzGOeVwbtCEORBvm0gs2GMH06NLzkE61NDW/i/Hbg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=DnX6xQdZ+BbyTiZmTs7DyQy14pw7XGe9QvfyLNYMAHw=; b=d1++bULv4D3Ox3FoCcHPgvgg/8w2fh6frA90QrddDHolY9LjwxqRzCMYP6udBRcUW2GiuPozUFwR382XAL6BV0v0qBpHdXBHWNM7JXuV5zJ5OpeyWq9W5zFN8mADW4j9EfzVW0n5MVFc0wmHCh9VIun0o2FhJ18tm/AjgBXV4hA= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: <6f5bfe07-a0f1-e05b-b727-2dbc19d06369@citrix.com> Date: Thu, 8 Jun 2023 10:48:26 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 From: Andrew Cooper Subject: Re: [PATCH] x86/hvm: print valid CR4 bits in case of error Content-Language: en-GB To: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= Cc: xen-devel@lists.xenproject.org, Jan Beulich , Wei Liu References: <20230607134638.53070-1-roger.pau@citrix.com> <728efea9-2d30-fa55-473f-df3a18742ace@citrix.com> In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO6P123CA0058.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:310::19) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|BN8PR03MB5026:EE_ X-MS-Office365-Filtering-Correlation-Id: 46107d47-546a-45a3-252c-08db68058592 X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: jGgCObX2BQBiSOFYibCnHeJcDKIjyYxWIxO5rEnzG4v9rHh7iUpOlK32t5gWTvxbXh4tfSTvK84hvn+ZsStqevWpcotjsV4uTX6KiyjGiEUbj0Clyu/TzFdTJxcinuD8+LqL3F5mp+jx8dS9L9ivVETOibqDBkLJpAlGmLNizCU/DK6ahNIDbznb5r1JSjD+7pc1CccJu7+LkADnSrn03YDC/8K5qMsZk6Hn1R6XSgoY+JJJxAOu7FGiyNbctmAY3bQmsnnwZ1hrVurnMjN9EGJd22krOzZhz0/x4pVb96zGlwCwSVt7BBZQpsHFmEcsxtSAbs8uWztRYb/RX6RMDYjoYc8pcNVoyG7kjeo3sffDfyTpZw3a7KqKo3BWJMT1CI4N/42dEJrJ3O8VO7niqQW+g1cl7fbtIHc6DIHAp4Dd2hGtR4KuItZQwry0P96+BauVUdliOAEbNeJec6WQMQYf3jXtVDadMxOZ+T0xTUQ35+hjGWHeM6R0YC2tZ2j2OPAR7Lmh6NMrMKM+s5eP0dQ06UAzk5I42yKoYAOKZLARX5ZP94Hx9aapvr8QCXLQQ1XCNlremBpWDYb6B8IXRcxNVCaJKO181x7qNcUIKnwj2u34srsDwAf2CSpgBFQazj3cyz8O4+sRfcey5XkFMw== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(136003)(376002)(396003)(346002)(366004)(39860400002)(451199021)(26005)(6512007)(6506007)(53546011)(31686004)(2616005)(83380400001)(186003)(6666004)(82960400001)(2906002)(66946007)(66476007)(66556008)(6486002)(5660300002)(38100700002)(8936002)(86362001)(8676002)(37006003)(54906003)(36756003)(478600001)(6862004)(31696002)(41300700001)(316002)(4326008)(6636002)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?Y215K1hQWWc3WGpWNldPKytwa3o2d2FrZ2lxWExkYUpKNmx6TnlzMVZadmNJ?= =?utf-8?B?OVNGK1luREx4NHFlZ3ZCSjNOREJlNzNNWDJ0aVFHVjRZNkdCWXgrYU9xVXIv?= =?utf-8?B?SEZUVGxtM1p3Unl0TXpSQitIdUk5MmJrdEZMVmtrSlNhVGo0VzFZWElBZW1U?= =?utf-8?B?TFZTdGt0OEF4MmVjNFNidlJBMksrZnhjeS9rUnJrWm8vNDNvbGdYREhvcU11?= =?utf-8?B?a2RnOGRGZkFzbDJia0NPUEpwcG1TcUw1c1F1ekFLU3ZXTGtpQ1BEV0VET2kw?= =?utf-8?B?K1dISEd5WVJZbzdkWHdQT25QUUUvSzVmOHJiZnFuZGFwbUZxcThMQVRVL2tO?= =?utf-8?B?RDN1bzFweU5lSUMrQXJuUFJGODQ1MExHYVdtRWJuMWh2SGV4UG53d1BEV3A5?= =?utf-8?B?cnN0UVVqQ253Y2tOZUxLeXRjaXBMbmM5ZlpWZTJqaUZCUDhXcGpxTFBnQm0r?= =?utf-8?B?K2VNQ09DM0NPaTNKY0dFTUk1ZEhZYlZxSFBYQ2ZlSlBHajAyMzdqbWFzeklE?= =?utf-8?B?VjdVUnh6SGF6K3hNcW1DOHFJbE9JK0s1TTJPTGs1RnV0NjBENGllOGNySFNQ?= =?utf-8?B?My9EdXZVd0dkTjh6Z2lXcDNRaStOa0RaMm8vUFNTcitTK1VxeFJ3UmFGVURq?= =?utf-8?B?MFNZcThEUkw3MW1mVWJoMlhxZSt2c25vTE1GdTE3MUV1d1BBc2lrbEpsYmtE?= =?utf-8?B?QjZDUFB0MGpUcHZjYUwrRjhjNmgyWnpBYTlhNWsxUTk4VG13aDJPa1MrbXd4?= =?utf-8?B?VWh6R2MxYnJqNklGNVhxcHM4UEw5SVV5QWduaUpjendVM05BM2pPMDNCeG12?= =?utf-8?B?WndjT05OdHJFK0xyck1uaUlaeFlyOHlOclVYa21lQ2F2WWFyOHdOWGlxVEZZ?= =?utf-8?B?Ymg0YmFyZXFKbEcxV2QwZWFpN1lPa0kzNEpNODFjczl2VlB5YnhoZlFXcDFk?= =?utf-8?B?VkxKY2Ywc05xVnNVNVlCV0pJNE50OWFqWmFEdFMrVHBXTzc0L0xEZFNxd3pB?= =?utf-8?B?TUdYTDNobURyRUVYZmRTYUNLT1QyaFJQbXpRNGc0QTNFZHNXMkFLWUtMNWJ3?= =?utf-8?B?dVFISVFCc1cxdkJCcjRGTkdnM1NZVEdyQXl4aGJtTDZpRW5RVi9GY24zS3dn?= =?utf-8?B?WlZGZDhUV3BNUVVkVlJ0K0RVSDFaK2JCSDhRaEFPUHRTb1lHT3JJZ0ptSm9u?= =?utf-8?B?T1lJd3huOUFTKy9UUGVsRlpXd2RFVU1LaVI0bm5RelpKMFdnMFBlbHRodmZl?= =?utf-8?B?bWZYZW5PeXEwbFhqT0I3UGoySDVBa1dVNGlEdS9lUEVqaXVpOXUxT0xaR2g0?= =?utf-8?B?T2NlSE80VGhZaXJTMXlIWVg4OWdEVUxac1hWd040c3czMHFhRzdyT1dYMnZR?= =?utf-8?B?UTdjRkFSY21wZHRDNmpjOVgrVWR5VHpwcGpaY3U4bWVnT1RSa0w3TXBQejZJ?= =?utf-8?B?Z3BIZ3RuYkdRN3gwZXR1T3UybC9kQnhpVUFDYkNveitQTW1rTHg4QTVXdkhh?= =?utf-8?B?SXQvQjRaRXhFZ1B6WTZKOVFxUmUrYWVIMVF1Qk85TUdOaFRCeFJuRmM0MHVh?= =?utf-8?B?Sk1KL0ZWQms1U1FpZzhucE9JWG1UVGRDd1pDOHgxVEtsMWs5MkhjaVpac0tC?= =?utf-8?B?Yzl2OENNQTFibVdqa1RWcGhMQTduam1yR3ZYdlg2N0MzZzArRVpObC9GQVFj?= =?utf-8?B?U3B6R3hiMkROMXN3WEVqMGt0Y1UrMFNMRzRKZURxcnVZd3hxcTRSQVZlYW8v?= =?utf-8?B?TGEvczlEUkJIYUdnMmlNMVZMRnlyYjNraEhVa3dBVXgrK0VkUnJIMndyR2E0?= =?utf-8?B?RjNmS2lHZ0RCWDBReDNjcmIrQ2FaeWs2NXN6bXZXdGhjY29MelR4TDZWRFlX?= =?utf-8?B?RGZMS050bUJjVUVJK0xCSnFoeW5LR1BYSlBSdUUzNUh1U3V3SHNTQWVVV0ZH?= =?utf-8?B?eWNZWWk5dTR6L0dST3ozMGVESWxMUTJqOVRCK2Z5R2NxcFljTlN1TC9WVDAx?= =?utf-8?B?VVZrN1ZlbHc4WkMyMC9JQXFreXpmb0lZNGh3VTZHejBRdDlzNEJyS2dkRm9C?= =?utf-8?B?SHdMNys4cDF3LzlyWklFUTVBOWZoSFA5TWhJZUVuWTZvOGFUdE1uQTlCaThi?= =?utf-8?B?a2pSd2VQc0ZodFpzK0YrT2ovQ0dOZHhyZUZOREJVVitkR3o0OUFWcmk3NTNk?= =?utf-8?B?Rmc9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: agNemfOTOoC6Q9ilBI7/iFrHC5E/j3e7tdovgAGDr+pXUZUg/Eb6UpUQpEgNCwKg05JeWfPGOiHQLy6IHQNJxfHTTSN4udKmB7EHguVjWBsyVQQjkzqMZNE09e0pSx6FfPvVKH755TMsotyNRFZkfTEWK1VvR0dVGQhtZB+uN61BTjpwZ35F58wpJy0L2PofOgopTTPMXtj6tugnXo/Pb9ZDyd5BZ7/HYuYFJwYPySS5q6laT47SRlM2QO+7EcgfXJjapj7071f3h5MLfmtdsksAX9/BPDAWJa6DKjaqyDmrZyd+n4c8tVJ6R/WlBwnYw6WzD4hfEIshtaHWkr/ljWfbUWNgPltuvbxDhpgkyO6oFCzsE36HRwvCPfXsIdFxXaQwo5/WDVwpG1TOyVa9n28868RnQVE/qAEnt/yzmR1jFOfB1HKrFzPMwQ8XOlimQyDS1WGrHlfu0X3M5Tqu3AZ846BXTzIV469Sa43Ua6apG63Q2zN2oykLw/iPWQbiLU5cUN9K2pfOXY+J+GydKEOrhHNOcDzbGTNRwZ7ec6ekjWNxZTC3j8rdNQ94EkHTQ6Z8z2ztFiVPExZWNMu338o0b88Zh9hps06T6B5BeDBjiFFRadig/KmgNq0v5QXPXSIOcjKm/C0G/t1lMeeoCxhZomSKf91QBSMH+tbFTz9BPlJDyn8Zyur4wB9Zn5AzCJlM/dDFOc0EmAKOfHli532/YqnIkigi+lJVz8dlEJWb0jkGWsVP/xHaO35rkFpXP4Fvr8+mGMeoXKjjQwmmodbqmhi5DhdQvTkuhbJcyEU5+5SOV2pS/rp+3xPtmd5w X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 46107d47-546a-45a3-252c-08db68058592 X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 08 Jun 2023 09:48:33.1242 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: wfVX42iJQHhX03bH23RIJ1JiiNUTD+CBKHp+uwjhSDRsAsO7+HlgssPAw5ZgVMVa/ABq33gg5jI7ht8dHmlrB+5SNF/l20pC3q1lym2P6w8= X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN8PR03MB5026 On 08/06/2023 9:04 am, Roger Pau Monné wrote: > On Thu, Jun 08, 2023 at 09:57:41AM +0200, Roger Pau Monné wrote: >> On Wed, Jun 07, 2023 at 04:48:42PM +0100, Andrew Cooper wrote: >>> On 07/06/2023 2:46 pm, Roger Pau Monne wrote: >>>> Some of the current users of hvm_cr4_guest_valid_bits() to check >>>> whether a CR4 value is correct don't print the valid mask, and thus >>>> the resulting error messages are not as helpful as they could be. >>>> >>>> Amend callers to always print the value of hvm_cr4_guest_valid_bits(), >>>> and take the opportunity of also adjusting all the users to use the >>>> same print formatter. >>>> >>>> No functional change intended. >>>> >>>> Signed-off-by: Roger Pau Monné >>>> --- >>>> xen/arch/x86/hvm/domain.c | 4 ++-- >>>> xen/arch/x86/hvm/hvm.c | 8 ++++---- >>>> xen/arch/x86/hvm/svm/svmdebug.c | 2 +- >>>> 3 files changed, 7 insertions(+), 7 deletions(-) >>>> >>>> diff --git a/xen/arch/x86/hvm/domain.c b/xen/arch/x86/hvm/domain.c >>>> index deec74fdb4f5..8951230a9f52 100644 >>>> --- a/xen/arch/x86/hvm/domain.c >>>> +++ b/xen/arch/x86/hvm/domain.c >>>> @@ -266,8 +266,8 @@ int arch_set_info_hvm_guest(struct vcpu *v, const vcpu_hvm_context_t *ctx) >>>> >>>> if ( v->arch.hvm.guest_cr[4] & ~hvm_cr4_guest_valid_bits(d) ) >>>> { >>>> - gprintk(XENLOG_ERR, "Bad CR4 value: %#016lx\n", >>>> - v->arch.hvm.guest_cr[4]); >>>> + gprintk(XENLOG_ERR, "Bad CR4 value: %#016lx (valid: %016lx)\n", >>>> + v->arch.hvm.guest_cr[4], hvm_cr4_guest_valid_bits(d)); >>> I suspect you want to call this once and store it in a variable. >>> >>> It's a non-inline function which also isn't marked attr_const, so it >>> will get called twice. >> I wasn't specially concerned about this, it's an error path where the >> second call will happen, and there's already a printk which will make >> the cost of calling hvm_cr4_guest_valid_bits() negligible compared to >> the printk. >> >>> Also, if you're extending like this, then you actually want >>> >>> (valid %lx, rejected %lx) >>> >>> passing in cr4 ^ valid for rejected.  It's almost always 1 bit which is >>> rejected at a time, and the xor form is easier to read, not least >>> because it matches the X86_CR4_blah constant of the bad feature. > But cr4 ^ valid is not correct to represent rejected bits, what about > valid bits not set by the guest? Those would also appear in the > rejected mask for no reason. I think we want to print cr4 & ~valid, > like used in the validity checks. Urgh, you're right.  cr4 & ~valid is what I was going for. Not sure where the ^ came from - I'll search back through my debugging patches in some copious free time, because it's relevant somewhere in a related area. ~Andrew From xen-devel-bounces@lists.xenproject.org Thu Jun 08 10:00:06 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 08 Jun 2023 10:00:06 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545231.851545 (Exim 4.92) (envelope-from ) id 1q7CQy-0006ZW-T7; Thu, 08 Jun 2023 10:00:00 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545231.851545; Thu, 08 Jun 2023 10:00:00 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7CQy-0006ZP-Py; Thu, 08 Jun 2023 10:00:00 +0000 Received: by outflank-mailman (input) for mailman id 545231; Thu, 08 Jun 2023 09:59:58 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7CQw-0006ZJ-Ng for xen-devel@lists.xenproject.org; Thu, 08 Jun 2023 09:59:58 +0000 Received: from esa6.hc3370-68.iphmx.com (esa6.hc3370-68.iphmx.com [216.71.155.175]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 37b6fec9-05e3-11ee-8611-37d641c3527e; Thu, 08 Jun 2023 11:59:55 +0200 (CEST) Received: from mail-bn7nam10lp2105.outbound.protection.outlook.com (HELO NAM10-BN7-obe.outbound.protection.outlook.com) ([104.47.70.105]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 08 Jun 2023 05:59:53 -0400 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) by SJ0PR03MB6375.namprd03.prod.outlook.com (2603:10b6:a03:399::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.19; Thu, 8 Jun 2023 09:59:49 +0000 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::192:6bdf:b105:64dd]) by SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::192:6bdf:b105:64dd%3]) with mapi id 15.20.6455.028; Thu, 8 Jun 2023 09:59:48 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 37b6fec9-05e3-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686218395; h=from:to:cc:subject:date:message-id: content-transfer-encoding:mime-version; bh=sB+gFOPOK+7Cs0Iq/Lgo4Ursr0hs7/vKTpHzBmsolDw=; b=F4gS4DZtp5Ewlbv8JweGi8VTZ4D9/5+XIJZFJhgUs1HYh/pd6H72rDeY qtjxQzgImtBaLB6ds8v7B6VuKqJE1PbEkwx9mpVJ72APdVavw1W0KdWQ0 pYiRGx5w8nI1tXVBk1zU2GPHBxciZg2DX0yHTvsgfeUYhC0BHeu3skyQG w=; X-IronPort-RemoteIP: 104.47.70.105 X-IronPort-MID: 111368200 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:tOajGqqP4iDlJmlmjx8ilNV90P5eBmI+ZBIvgKrLsJaIsI4StFCzt garIBmOa63cNDH0f9wlYNm2804F7MKGzddqSFRp/HhhRS4X95uZCYyVIHmrMnLJJKUvbq7FA +Y2MYCccZ9uHhcwgj/3b9ANeFEljfngqoLUUbKCYWYpA1c/Ek/NsDo788YhmIlknNOlNA2Ev NL2sqX3NUSsnjV5KQr40YrawP9UlKq04GtwUmAWP6gR5weAzylNVfrzGInqR5fGatgMdgKFb 76rIIGRpgvx4xorA9W5pbf3GmVirmn6ZFXmZtJ+AsBOszAazsAA+v9T2Mk0MC+7vw6hjdFpo OihgLTrIesf0g8gr8xGO/VQO3kW0aSrY9YrK1Dn2SCY5xWun3cBX5yCpaz5VGEV0r8fPI1Ay RAXADIjVzmnhKXq+52QFMdVgpwKAPu6E5xK7xmMzRmBZRonabbqZvySoPV+g3I3jM0IGuvCb c0EbzYpdA7HfxBEJlYQDtQ5gfusgX78NTZfrTp5p4JuuzSVkFM3j+CraYKIEjCJbZw9ckKwv GXJ8n6/GhgHHNee1SCE4jSngeqncSbTAdtLT+PorKYy6LGV7jIZFDJNdVq5msW0iWWYcoxuF nJM4wN7+MDe82TuFLERRSaQsHOC+xIRRddUO+k78x2WjLrZ5R6DAWoJRSIHb8Yp3Oc0TzE30 l6Cn/vyGCdi9raSTBq16bO8vT60fy8PIgc/iTQsSAIE55zppt41hxeWFtJ7Svft05vyBC36x C2MoG4mnbIPgMUX1qK9u1fanzaroZuPRQkwjunKYl+YAspCTNbNT+SVBZLzt56s8K7xooG9g UU5 IronPort-HdrOrdr: A9a23:NKQWO6wMbXbs+JOL5id4KrPxrOskLtp133Aq2lEZdPULSKGlfp GV9sjziyWetN9IYgBapTiBUJPwIk80hqQFm7X5XI3SFzUO3VHFEGgM1/qE/9SNIUzDH6tmpN 9dmstFeZfN5DpB/KDHCWCDer5OruVvsprY/Ns2pE0dLz2CHpsQizuRfTzrd3GeKjMnObMJUL 6nouZXrTupfnoaKu6hAGMeYuTFr9rX0Lr7fB8vHXccmUWzpALtzIS/PwmT3x8YXT8K66wl63 L5nwvw4bjmm+2nyyXby3TY4/1t6ZTcI5p4dYKxY/ouW3XRYzWTFcdcsnq5zXIISdSUmRcXeR /30lId1opImjfslyqO0GbQMkHboUoTAjnZuBKlaDLY0LPEbSN/BMxbiY1DdBzFr0ImodFnya pOm3mUrpxNEHr77VLADnfzJmJXf2eP0A4feNQo/gtieJpbbKUUoZ0U/UtTHptFFCXm6Jo/GO 0rCM3H/v5ZfV6Tcnic5wBUsZSRd2V2Gg3DTlkJu8ST3TQTlHdlz1EAzMhamnsb7poyR5RN+u yBOKV1k7NFSNMQcMtGda48aNryDnaITQPHMWqUL1iiHKYbO2jVo5qy+7kx7PHCQu188HLzou WybLp1jx9DR6u1M7zx4HRiyGG9fFmA X-Talos-CUID: =?us-ascii?q?9a23=3A5XQEZWn6x8QbqWqWMxd+c9vH4e3XOX/z9V70IAj?= =?us-ascii?q?kMklCFpOsTQe51JE1vNU7zg=3D=3D?= X-Talos-MUID: =?us-ascii?q?9a23=3A+1vBfwzhEYjGmqgjE0YoExYDDbiaqPqkFG9WsZQ?= =?us-ascii?q?EgPWJNgdWEmmssQrvW6Zyfw=3D=3D?= X-IronPort-AV: E=Sophos;i="6.00,226,1681185600"; d="scan'208";a="111368200" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Ut/dSEyGJx6CNhFvGTMJ9mByaoGwcoEMURae76dK9pEXalx6kp/K4HuxNgr19Wobgg22+gRxOEI9RoQc+ZQnN3KUYuRHvm0nZhQDM8KPUP6c2Y/ilmL3nrDh6GlLynevDjnRd9G3DXV+d74SPxXVbbrnYdDdBKEjSOhEygSoQyimU1GCOTneEaBnekMk/NP6QKsx54uBvruYLcfxjyW+yz9kUtZcV/bOhNJSlPYsLrbNT1LQ7uv+lc76hDZUgdkCz678VvrZjodMztQYOHn5HTmeVrfxtey6MinPjDzCnaUwEKcvTgIeV+EWNBgncAYQRRgZi19GdQh0IrvYJhXVSg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=e1QU0dYzulxauBxU4qhjBQFTkxKTkA1hhqxS4oXfsBw=; b=iNJJdeAd5zpL0/S0XiAooXl2hXs9HmNS08uIGRmnnCRMx6lp9UXDD8TdqyRuix3XJEFvwf5Xp5iE6KVSyPIHL+RRAYzhlVdCcLSXLBJCkC8pNiBQMtgBEL9C3c3Zxza6U2MBTUFy/v6MwDE/MDfub5W5R3RI8n2aQajOAsveB2lE3mBQitJNsMX2CnEGlqfaOcSs5AWGfHkGr3VCBHj5Bejmnkf4rRUyxBy6pthR6VE57OuY43XnhtxccrDSv9DI4afUWDbrQ8uzK7BAdw4To2RV/T7T/CsDBvEWWyJ538pEnTFmAcg/uRUh7vifGxABJ3RirhvT2L5/Uw0kJpBj5A== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=e1QU0dYzulxauBxU4qhjBQFTkxKTkA1hhqxS4oXfsBw=; b=pbdOyqVjgeXSpofL0tVRqav9MlKTzYv3eTZkdwNG1/RT7HuAneGqnIOyFOy8mt8/E64rpI75RuDZAp7X6DZy3wTSnd45SOljyuotE78V8rCl2H6WZnV36qQh/tmOi28doXY2l2gcqjtzlqYv41Hr/QToxYhLdhxew/Hm7vnXq0U= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; From: Roger Pau Monne To: xen-devel@lists.xenproject.org Cc: Roger Pau Monne , Jan Beulich , Andrew Cooper , Wei Liu Subject: [PATCH v2] x86/hvm: print valid CR4 bits in case of error Date: Thu, 8 Jun 2023 11:59:39 +0200 Message-Id: <20230608095939.67105-1-roger.pau@citrix.com> X-Mailer: git-send-email 2.40.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO4P265CA0232.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:315::14) To SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|SJ0PR03MB6375:EE_ X-MS-Office365-Filtering-Correlation-Id: 45fff010-a833-4842-e4c8-08db68071822 X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 0JVvwd31+6gBVGbJybPMOSqAyHqdV+h8MEP0hCh5hdc4AqHeonpqwX2/86uYlLNQqsong3xS4cLDWvNRE6X4vSjiCsSKXqpeuMrV0adpTLPZwT1JX/ondT4oWwHezt1R7B65BXrwX3FqiJkAJhrCpR5Xbh996pt+RHDU/oLVBqRPVuhtVT5S45yhDokKEw+/6nIPT0JG3hSQeJeBe6CoXNgk0NXA/6+7oZDGFMkFd859j0KXrCGP8VQ57XNotLhCFnbjwG+FQzCHJVs017x2EfB/BfRyFWpabfoegiv13sXtDIt+UeaSd5S/Hr9pWj6+CLhvev2A9vA0uD/Jc6dK5NHAOCWs1HnXaXoC/fENH+p/OZpAFulhvaur2trTFGIjT8aQYCNaTj08AOZ7YqkPuRpm3A1v2Ep7UPEtEyWgouW4sJyO3+bdENFaHbiDrJVjhzUUWXyQcpN1yZOBYqao5Ndq0cnXLJvZedIc81aZxdcQu760d4wrpK/weVojt+DVUHvJNnUkocgkwIlnfn4Pxd5CQaSEwTLj0NRIKrnk0ry8aia8uPpYz2yGhp69vmcL4rsZX0spxcG17jIex87hsz0lbN1qhMprsUSAt8C4AbE= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(376002)(346002)(396003)(136003)(366004)(451199021)(6512007)(1076003)(26005)(6506007)(38100700002)(41300700001)(6486002)(6666004)(83380400001)(186003)(2616005)(478600001)(54906003)(4326008)(6916009)(66476007)(66946007)(82960400001)(316002)(66556008)(5660300002)(8936002)(8676002)(86362001)(2906002)(36756003);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?a0lQZGlvLy83Qm9RdFo3YUdiZEgvSkoxTFd3OHdXckVGd3d5RFdoSi96aVhM?= =?utf-8?B?WE90OEtCMFV4OEkvQXhZVVZzYnl3S2pYdTNWMTFOZVpnc0EzWHh5alU4cktC?= =?utf-8?B?N0JraVhVcnlKaU5WcFRVRjJHWFpRb3ZwZUtaWDBxZUZYRWQ4dXlJSHY4bHdQ?= =?utf-8?B?Tk4wZTJaQnZiTmowNkJRM3EzWXFtUU9IYmZBaDdFTk1mR3Mxb0dpTVgzSWF2?= =?utf-8?B?T0V5QXRnSTJCd3VDUU1oaVV6UFdHVmxIYzI4WHp1VEJ6SFk0Z0hYc1JVbld3?= =?utf-8?B?WDlqU0ljZnBTVU1zMVl4cDBWV1V1bEZwdUhWQWJvVExXVENyQVZTNlhQZHpK?= =?utf-8?B?bTZjSEczSGY2OU5HU0twQVd0SXl4OXltaCs4YitWb3kzNTJ2eW5OcDJnZld4?= =?utf-8?B?aEtGYkZxT3VVVFhmWmRuWkFIdURQNzdDQlJzUzErNVBaVTRuS2l0Wm5JREEv?= =?utf-8?B?cUlJaWIxSUhyUk8rVjVxQm1UVUFOMHluc0xKdjF1cTRaYmxYeWVTRTlKbXZG?= =?utf-8?B?cUNSTDRXNCt3elAxSXdTZ0FqbWdTQ1kvaVRGTjMwSUluSEFablVPUTY0MFds?= =?utf-8?B?NWU4YTNwd1piVXAyZ3RZd3FpeFdHUXl6eFFLU00zTzhrYWRuWFFadXdtdGdU?= =?utf-8?B?cFdxME53THdKUndRUzVBT2hJVDEwbnJCT1JDa0c5ZlFSOGlWUUpwbDFhbHM1?= =?utf-8?B?YlA4b092TVFLbGhwQWZnczJTQXJjdDcwUjVjeGlES0NnRmlwaUY3QVdMT2dF?= =?utf-8?B?djNZRzhyaHBPRDlxY285MzhxU3FpUkFRME5lVlgzby9VOVBuUGl2OVlGVWtG?= =?utf-8?B?N1g5TVNOYzFOYzB3a2FnbDdiUFpqTE5Nb1VRckN5OVNFYUo5VVdKb0MwZUtk?= =?utf-8?B?MjNuR2lGUlNhK0lrWVkrc3k3UkVMb2pITldTRE1iUE9rVlJaRzlydk5jNFRs?= =?utf-8?B?S1daQm45UlZLZlNFM1ZNek4xVDIvcjY0QjJ0d0dGNkhRWFYvektNbldEUWZ3?= =?utf-8?B?S1E0TktRajA2RjdBOW56YzZtMHlNTlZXc2hnSHNJc1RjRENBWHZaZ3RTbExY?= =?utf-8?B?RnFZSDN0cHF0ejI4SGF1VjI5TGMxSkRaUXJYTXRCemxaVkVyQTVFanMxSjIr?= =?utf-8?B?Y3BXWWdtRmJDbDZWbjg3WWhwQUEydnpBdlR3Vm5DL2M3cm8yd0lvKzJaVkUv?= =?utf-8?B?d2NXaXhac3F6T2lPRGRWNVZMWkxQQ1UxTm5wWW1GOW80emVYR25vbktvNUl2?= =?utf-8?B?SGh2L002dmtCN3k2bE1CT2JhSHI4K0E1a3dTZlNLdTdiUUtFKytvamJVL1Ry?= =?utf-8?B?Yi93N3BhU2JEZjJZa093QkRPR3k2cUg3cCt5K2lTcVVGV2RmUlJyTEEyNEFm?= =?utf-8?B?azNtV2tNYm1NR1pQcjdkem85ZG9sSEV1UzVpUGtlSFptWlN0UmI4TU9vSTQx?= =?utf-8?B?Zit3QXJ3SlEwc1RQNkhibnhXcjlCZDVnWlJzQk5OVXlqdTFQZkhMT1phNkRX?= =?utf-8?B?bDlxOWhOSlpEVk9PNVhzeERuR3hsZ080N0NrL1BYWFJrVytlOUZ0dkdSUlZZ?= =?utf-8?B?RTkxbFdXUUg0bGRxdjlKYzdXdUZuemtmcFlsdlBiWDhGdkdTUy9KWVlvR1R2?= =?utf-8?B?VG1NeGVvaTBjaUw2VzdjL2llc0VpcXZ1ZFh2SzFhRXFueTlLcWs3VjBQOVVZ?= =?utf-8?B?Zlh6cTJYRzRNL3ZDMGlOYVNmLzJqYmxLSHIyTVdZaW82SFVNWDVydWc0cWZa?= =?utf-8?B?UFhnREtGWXpCZElZbmkyWlY3UFJuN01Ec1k0T1djcytrTFB4QTNIK2VOaHJ4?= =?utf-8?B?UHJrSlFkaHFPU292ZkxRN3lIeU1GVG8wSkxoUEFZZWdSUkIvL2F1bys0SXFL?= =?utf-8?B?WXRCdTdEc0poRis4R1ZTZ0lBY0hJWkRIYzU2R2xUTlNhTVZTZTd3aUp1ejRx?= =?utf-8?B?MnB1eEtEY3hoRW5VVEVhczBZYjhoWVFVRXJnOGxTeURYd0VpUUMyMzAzTmta?= =?utf-8?B?RHhEcE1zWEYzOWJ5eVloZ21Pam5PZ3BrMFhlQTNMY2hSZ2dsWStoR00ycith?= =?utf-8?B?ZGJKeGdjQlVNS1lJYldJRjJDSzRIU3BVbmZEL2JKQ1BYQno1SWZCelp6OW5U?= =?utf-8?B?VkhtUVZkL2lwSFpDdCthUkxTSWp4MzhKRFIrMkI3dlFNRnpycmplZUQ0M0FE?= =?utf-8?B?VHc9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: BMgj/eNBAYn+tcef4Un8nkh8WYvmEVYu6QDbRXnfPdPG5puQ2M38ftYTey43m2k5OSUN42F21eugGdRYsrBs+v3R0/yjXsGcOIZzjoZGnQ/bSPSbp5VfFkCQvM41BDw1fnNOUzP99Sb8WcW43BbJ70geD24lWuVYqQn6iPLyfCXAe4RmVX6Flo/duCIKWxc6DVcLwD+Udvnz12VA6psS+vN119+djd+06UUrPlr1eNj5iSCyfecviaPZg5uryhVWingE8cyYdJwVEoYW7uMwzhMq10iFSaZ/N5lPNuWuMiDBwYgU9M9q4KsuHst0ahJQ92mpuODA6JFrshN/cJ77mIB8qs6HELoswv44Ltq4FPyFHK71gM2OHiEZtOddUbs9i30YW9pKlG28YRfZbDAxxiW+WEd/AqE4dgvjKsPbcyEOdL631xQEpon2S39n6hxKaoRkKVmcLh79VTPbrfXUwfDgCqb33nyeukUCCEct+3vTYYfo+Tmu2eP05UGBExSeI49RLwg3yZFxL/s7hE4gDocoP5Wz+I6uGzfSL8Q8KaVhQxQizpX2EDgcsyREZtmMqY1NuJ/0gY2V1ydlHF9Xi7YEx1ST5CdqKfvVbfrxdHRorI9j31aBRHM71vPTjw5fO0UrrzlxBj4rH1l0r93iEuxF4YS10XJynaeSv4hErODVkBn6UT8jVO/9jzDKxzD4XEG+oMj6sJtyJ1IacaSTKUziYsee7zJb3HCR35BWQdXlUclPMfHAWyTDfnRid7rpuoTxO7mxEvqYUW8AE/rXyCfQ5tJm6xU6VlPQ8Im/CWSnzcnDYdBRJdUhyEDrMp6d X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 45fff010-a833-4842-e4c8-08db68071822 X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 08 Jun 2023 09:59:48.5453 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 7umhWsisWlCNSoWv2y/HkQXTVBEHhTU0YYR4pXiNW5iLOPTMp/dTFQrtS80Y7hTD3RSS6pXQQBMUf52+ofUotA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR03MB6375 Some of the current users of hvm_cr4_guest_valid_bits() don't print the valid mask in case of error, and thus the resulting error messages are not as helpful as they could be. Amend callers to always print the value of hvm_cr4_guest_valid_bits() together with the rejected bits in the checked value. Also take the opportunity and adjust all the users to use the same print formatter. No functional change intended. Signed-off-by: Roger Pau Monné --- Changes since v1: - Use %#lx formatter uniformly. - Print rejected bits together with the valid mask. --- xen/arch/x86/hvm/domain.c | 9 ++++++--- xen/arch/x86/hvm/hvm.c | 16 +++++++++------- xen/arch/x86/hvm/svm/svmdebug.c | 4 ++-- 3 files changed, 17 insertions(+), 12 deletions(-) diff --git a/xen/arch/x86/hvm/domain.c b/xen/arch/x86/hvm/domain.c index deec74fdb4f5..efee7fab3e19 100644 --- a/xen/arch/x86/hvm/domain.c +++ b/xen/arch/x86/hvm/domain.c @@ -107,6 +107,7 @@ int arch_set_info_hvm_guest(struct vcpu *v, const vcpu_hvm_context_t *ctx) struct segment_register cs, ds, ss, es, tr; const char *errstr; int rc; + unsigned long valid; if ( ctx->pad != 0 ) return -EINVAL; @@ -264,10 +265,12 @@ int arch_set_info_hvm_guest(struct vcpu *v, const vcpu_hvm_context_t *ctx) if ( v->arch.hvm.guest_efer & EFER_LME ) v->arch.hvm.guest_efer |= EFER_LMA; - if ( v->arch.hvm.guest_cr[4] & ~hvm_cr4_guest_valid_bits(d) ) + valid = hvm_cr4_guest_valid_bits(d); + if ( v->arch.hvm.guest_cr[4] & ~valid ) { - gprintk(XENLOG_ERR, "Bad CR4 value: %#016lx\n", - v->arch.hvm.guest_cr[4]); + gprintk(XENLOG_ERR, "Bad CR4 value: %#lx (valid: %#lx, rejected: %#lx)\n", + v->arch.hvm.guest_cr[4], valid, + v->arch.hvm.guest_cr[4] & ~valid); return -EINVAL; } diff --git a/xen/arch/x86/hvm/hvm.c b/xen/arch/x86/hvm/hvm.c index 2d6e4bb9c682..6fa7046835cf 100644 --- a/xen/arch/x86/hvm/hvm.c +++ b/xen/arch/x86/hvm/hvm.c @@ -991,6 +991,7 @@ static int cf_check hvm_load_cpu_ctxt(struct domain *d, hvm_domain_context_t *h) struct hvm_hw_cpu ctxt; struct segment_register seg; const char *errstr; + unsigned long valid; /* Which vcpu is this? */ if ( vcpuid >= d->max_vcpus || (v = d->vcpu[vcpuid]) == NULL ) @@ -1016,10 +1017,11 @@ static int cf_check hvm_load_cpu_ctxt(struct domain *d, hvm_domain_context_t *h) return -EINVAL; } - if ( ctxt.cr4 & ~hvm_cr4_guest_valid_bits(d) ) + valid = hvm_cr4_guest_valid_bits(d); + if ( ctxt.cr4 & ~valid ) { - printk(XENLOG_G_ERR "HVM%d restore: bad CR4 %#" PRIx64 "\n", - d->domain_id, ctxt.cr4); + printk(XENLOG_G_ERR "HVM%d restore: bad CR4 %#lx (valid: %#lx, rejected %#lx)\n", + d->domain_id, ctxt.cr4, valid, ctxt.cr4 & ~valid); return -EINVAL; } @@ -2456,13 +2458,13 @@ int hvm_set_cr3(unsigned long value, bool noflush, bool may_defer) int hvm_set_cr4(unsigned long value, bool may_defer) { struct vcpu *v = current; - unsigned long old_cr; + unsigned long old_cr, valid = hvm_cr4_guest_valid_bits(v->domain); - if ( value & ~hvm_cr4_guest_valid_bits(v->domain) ) + if ( value & ~valid ) { HVM_DBG_LOG(DBG_LEVEL_1, - "Guest attempts to set reserved bit in CR4: %lx", - value); + "Guest attempts to set reserved bit in CR4: %#lx (valid: %#lx, rejected %#lx)", + value, valid, value & ~valid); return X86EMUL_EXCEPTION; } diff --git a/xen/arch/x86/hvm/svm/svmdebug.c b/xen/arch/x86/hvm/svm/svmdebug.c index 7d6dc9ef47db..de046ed929a8 100644 --- a/xen/arch/x86/hvm/svm/svmdebug.c +++ b/xen/arch/x86/hvm/svm/svmdebug.c @@ -124,8 +124,8 @@ bool svm_vmcb_isvalid(const char *from, const struct vmcb_struct *vmcb, valid = hvm_cr4_guest_valid_bits(v->domain); if ( cr4 & ~valid ) - PRINTF("CR4: invalid bits are set (%#"PRIx64", valid: %#"PRIx64")\n", - cr4, valid); + PRINTF("CR4: invalid value: %#lx (valid: %#lx, rejected: %#lx)\n", + cr4, valid, cr4 & ~valid); if ( vmcb_get_dr6(vmcb) >> 32 ) PRINTF("DR6: bits [63:32] are not zero (%#"PRIx64")\n", -- 2.40.0 From xen-devel-bounces@lists.xenproject.org Thu Jun 08 10:01:46 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 08 Jun 2023 10:01:46 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545236.851555 (Exim 4.92) (envelope-from ) id 1q7CSa-00085n-7p; Thu, 08 Jun 2023 10:01:40 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545236.851555; Thu, 08 Jun 2023 10:01:40 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7CSa-00085g-54; Thu, 08 Jun 2023 10:01:40 +0000 Received: by outflank-mailman (input) for mailman id 545236; Thu, 08 Jun 2023 10:01:38 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7CSY-00085a-CT for xen-devel@lists.xenproject.org; Thu, 08 Jun 2023 10:01:38 +0000 Received: from esa5.hc3370-68.iphmx.com (esa5.hc3370-68.iphmx.com [216.71.155.168]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 73fa240f-05e3-11ee-b232-6b7b168915f2; Thu, 08 Jun 2023 12:01:37 +0200 (CEST) Received: from mail-mw2nam12lp2044.outbound.protection.outlook.com (HELO NAM12-MW2-obe.outbound.protection.outlook.com) ([104.47.66.44]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 08 Jun 2023 06:01:30 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by PH0PR03MB5864.namprd03.prod.outlook.com (2603:10b6:510:38::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Thu, 8 Jun 2023 10:01:25 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606%4]) with mapi id 15.20.6455.030; Thu, 8 Jun 2023 10:01:25 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 73fa240f-05e3-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686218497; h=message-id:date:from:subject:to:cc:references: in-reply-to:content-transfer-encoding:mime-version; bh=nb5CaHjwk290S4szU/qdBjkdwOER9ldcL9C9acbk4L4=; b=K67MaPhgyveG409Y0OfODhsu5DgAQ3XSapVdrWx8f0dTMyOeSwcTiIwn ipCvs5o1QyN8CjeCAn6oBm83BCemoSM2vDhjxoVKGBZ37hhgMuSNEaPEv RfEV1NnyEyKwh8LC5LBzjJFxA9jpNqlk1w8kbrkxCH7cJIvay4K/2UGud A=; X-IronPort-RemoteIP: 104.47.66.44 X-IronPort-MID: 110792559 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:6gTjCqx3OCRZ9DP21dZ6t+cVxyrEfRIJ4+MujC+fZmUNrF6WrkVRx moYDWGGb/uNYTSgLthzbIXk/EgOscfSz9JmTwZkpCAxQypGp/SeCIXCJC8cHc8wwu7rFxs7s ppEOrEsCOhuExcwcz/0auCJQUFUjP3OHfykTrafYEidfCc8IA85kxVvhuUltYBhhNm9Emult Mj75sbSIzdJ4RYtWo4vw/zF8EsHUMja4mtC5QRgPaAT5TcyqlFOZH4hDfDpR5fHatE88t6SH 47r0Ly/92XFyBYhYvvNfmHTKxBirhb6ZGBiu1IOM0SQqkEqSh8ai87XAME0e0ZP4whlqvgqo Dl7WT5cfi9yVkHEsLx1vxC1iEiSN4UekFPMCSDXXcB+UyQq2pYjqhljJBheAGEWxgp4KWETq d4aMhMsUjnZvduk2ZDlRstRnO12eaEHPKtH0p1h5RfwKK98BLX8GeDN79Ie2yosjMdTG/qYf 9AedTdkcBXHZVtIJ0sTD5U92uyvgxETcRUB8A7T+fVxvTaVkFAZPLvFabI5fvSjQ8lPk1nej WXB52njWTkRNcCFyCrD+XWp7gPKtXqiAN1DTuDlp5aGhnWI2VAvFgM2d2eAsOWH10qYWPYcK ksbr39GQa8asRbDosPGdw21pjuIswARX/JUEvYm80edx6zM+QGbC2MYCDlbZ7QOtsU7WDgr3 V+hhM7yCHpkt7j9YW2Z3qeZq3W1Iyd9EIMZTSoNTA9A5sa5pog210jLVow7TPLzicDpEzbtx TzMtDI5m7gYkc8M0eO84EzDhDWv4JPOS2bZ+znqY45s1SshDKbNWmBiwQKzASpoRGpBcmS8g Q== IronPort-HdrOrdr: A9a23:d4Kk+aFFF+sewpwBpLqE7ceALOsnbusQ8zAXPiFKOHpom6mj/P xG885rsSMc5AxwZJhCo6HmBEDjex7hHPdOiOF6AV7FZniEhILCFvAG0WKN+UyDJ8TIzIJgPH ZbEpSXWbXLY2ST067BjzWFLw== X-Talos-CUID: =?us-ascii?q?9a23=3ADUcr1Gn/S2bFPSSgxEm4M7wzFhLXOX2AkFXSOWy?= =?us-ascii?q?ZNU8zcoSHUH3O9IFZieM7zg=3D=3D?= X-Talos-MUID: =?us-ascii?q?9a23=3AiHacHAxk41kLLm0j/BYRw0Vv0E+aqL+xNHwTj7U?= =?us-ascii?q?kh/KVKRItPxGeqHe2RYByfw=3D=3D?= X-IronPort-AV: E=Sophos;i="6.00,226,1681185600"; d="scan'208";a="110792559" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=fyG0QCJdFsrtdcC2L5vPysfRBf/TwbLcj8FbZMzNlSYdAkIE1qVV7569OivRAn7kmXK1YIYZi0t/A4kctIklQWS2KAvVssuxm3lkppEcaoGq4yESEsG/xh9zTsZLu8YZlqilsZU6NIpuj1hnjiE4IMDoP4C32WF+/zYiby9Ja+GoZ85Q3aHb2d9aUw4SuPia5rMs4If2QvC99HzbOi+zeY9ypPmzxbhnhhSb7kpGAxdxZSRBb2MxG5Xz1Vg+IVi4Ra955Vb3fLmcK1yurjlwr5G39cmiJXzipP6QWfuMaYXGbX5uoMM52cGQ7t7HYk+A4Abh9yZU0oQEkqg2Xv+UVg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=nb5CaHjwk290S4szU/qdBjkdwOER9ldcL9C9acbk4L4=; b=VaS/j3QfNSVEg2MqAFNrWgh9pd7kK6y407kkbsFtb8bWZAjAy2T1I+XNuvpfQ6/QsRuNWrnyOLNrT03WenF57YfEHCyQLjSiMqmY+Qz2p7c6iaWiZoddzcMrxVDy9/V4vxKIOxkgJaJ9yhrd2g11G7ysIESe9iXBCMs55/HgHrXj/m5jbIhsx7BQLQfEyEtTCcjpxCtgBvWo3o4da2MKhM6AitpuW+zbtAn+l/9D5sEfDpo5u5YP7YDVE2Y/GXR7yEUeLSBSDrGSH2eVXBPmRIriuNt7R6HIKEw0tQES+7vG7PTP2YTVvLh3oK5nSzmRPiKNpyO1IzOTpY/DDyjj8w== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=nb5CaHjwk290S4szU/qdBjkdwOER9ldcL9C9acbk4L4=; b=TUOy5sDb1cfkx9hYxD0/dFjz0gcP6d/BhWj7TKi6urvnoSISMaH94ZhuC/LFZWL0vaUjqan7bR+tQmvo2zSWzQFXGcdgCb6uJQ1ITm7kgiyY2vRIZNAXoPlzwtwXuYD3bfVOobfxLL/rKozNk3ytUEPD01HaqQTpWB7xMaWVhik= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: Date: Thu, 8 Jun 2023 11:01:19 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 From: Andrew Cooper Subject: Re: [PATCH v2] x86/hvm: print valid CR4 bits in case of error Content-Language: en-GB To: Roger Pau Monne , xen-devel@lists.xenproject.org Cc: Jan Beulich , Wei Liu References: <20230608095939.67105-1-roger.pau@citrix.com> In-Reply-To: <20230608095939.67105-1-roger.pau@citrix.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO2P265CA0214.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:9e::34) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|PH0PR03MB5864:EE_ X-MS-Office365-Filtering-Correlation-Id: 5c2ac6e7-d27c-4fc9-1fd2-08db680751cc X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: YDJTPdONUKBKNdsV0IjKtWlPY+CQ/R3LE74sJ45UM63y6s8d0HnapjQRfH9yoJTPcyHymQvzozE+YDbC5GBSgEAqsJyl52CRtAzGcfO0EWJqzuJY8ovThBtrDno1R5xTqyq7isCIRscdTOPutPd2IcB7mV7gfAjjbNPblBUkhE5BnRZTMlgp/GyG+WO8+jN1HOFhBuzmccFVV503VpyGjPuPi0FcSRKG18zz2ogCpF36IrL/PlhNfR09o4CO5ZGDpCQRkT2jgTEUhW6GPj5dXnAfA2VmvLIX1Lz170rmN7P/FM5blEBq4ZrxrwSivDCp00lsmlGC3JT4/ajy+B/FbSpsKf3wJVTnmw765eT1xMeBJ2Xq4S/hRyEORH4Y08PM6+EL7mPrjARYH6jpfsSMRWK0lWUoCASYdoSPXgmF6Rb5Gwza400q5IC0fAN1u4Y2u52RxYj6Ob8JOo88oWv7OftjlgZmecENduv7NRtVy8SBemTWtDofGNIxbjqrw2CCBeinLMJN9FeocEOOcfI2EZmuyHPqfZKbRUaKEv6awmGtLOJhf0KcYpe5AT6b4jIuU//dXpLP6C+FtI2RZe3TAFTt7r6YK5QLodbGDvqYtgai9gpB/sLQxF1iHCfBPIhVS4BKbd8/5bUyte3K0CUXeA== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(376002)(396003)(136003)(346002)(366004)(39860400002)(451199021)(36756003)(5660300002)(2906002)(4744005)(31696002)(86362001)(31686004)(6666004)(6486002)(83380400001)(53546011)(6512007)(26005)(6506007)(82960400001)(316002)(478600001)(54906003)(66946007)(38100700002)(4326008)(41300700001)(2616005)(186003)(66556008)(66476007)(8936002)(8676002)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?ekdNcVc3UjBvMXZCUEc1TmE2Smx6NG9HanI0dVplSXpzSHdQRGJHWGVqeFRo?= =?utf-8?B?WkduRTRpMHhsNTFVekRkamRGWnFvU0lObTllUmgwSS80ZFlzcGJ5T2diTW1z?= =?utf-8?B?NWwvUjQwL2RjbHl0cGIzR1daYVNyZ0pzc0pSY3BLZk5ab0hDK1liVzFPbEJY?= =?utf-8?B?RnR1ZnR0aVNrV2ZHb0N5MVh5Szl6RDI1OWdIM2NyZXM5SXpNZEdwbjYzdkJ3?= =?utf-8?B?VldYc2pndXZZdFlPTEh5eDNDdVJTYlJWVU43bWtLMVFGVEM4WXZxRGNPVUMv?= =?utf-8?B?aWlhQzlPMCtRaGxmWjRqdDNUUFdxckU0YVpJVy9GSTNqelZBYStMZGJXSENj?= =?utf-8?B?OGVjQ2FuUGRhNHFyZGYwT0xyd1hVaEFwNittS1FEWDJqVzBVd1JuMkhxNHN0?= =?utf-8?B?a3M4UlZhakNmZ2tjM1ZZd04xVmJZRUFWT21qQmNENitUdFd4N0pUQWtLTjdJ?= =?utf-8?B?WFNFSkY4Y1pobm5yV1dlRndGcHk1ZlpJTFd1Ym5CTVhGK1E0R3g2U3cyOFlm?= =?utf-8?B?bVl5bEZZSXVidmYralRuN3pqMEU4dmNGaE1aNUl3UjR5RkpvWjJhckJyR2kw?= =?utf-8?B?WVBlR0lQckdhU2JxODlrNHc3QjZZbDNwSVV3SittaGNPSGQ2Uk1PdWZiaktZ?= =?utf-8?B?emlWVjkwUWRDVkJtYnVwd2xpTk9QZG8rUUI4UmI3bXBVUWM0emJMMXk1NlBn?= =?utf-8?B?SEJsZjNmOEkvVVdsQzRpU0k2TGZCeWZsemtYVnk2dG5XdW1NQ0MvdkZ5eE9V?= =?utf-8?B?dXNxSVNES09DRTRLa3VUV1g0bldFRnAzeEpiZXNybjE0NkkxT0JVaVV5dTFl?= =?utf-8?B?T2xGeHFvbSsrL3RDZXJvZERCeGhBMjZ1K2Q0K3YvK1RvWXJJanVYandzdGVC?= =?utf-8?B?UDZLNzlQSkZrRDZ1U1dYU0Y2elVlV0pWeWhWVWx1MHhMbE5YS3c2TXpYa3No?= =?utf-8?B?TVVyTVcyYzJFSzc3Mkp0M2VoMTZudm5sMmRINVlNQkVUTFVOR3JzNjZJWHdu?= =?utf-8?B?RnpqeHhRditwWStTNUxmRC9kVy9nTndmSHR4QXlZcy9Bc1AxTG1QZkk0ZzJB?= =?utf-8?B?bzA5VDMzaFRBbTNQRWdxQUkzZFlRUmVXM0JrR2tyVFdMekt1WDRDWSs3dE5v?= =?utf-8?B?N2JPdUJ1K2MvbzBuaFRTRDNscHNPYUxqYm9XUVRmckhaMnczV3JJdC8reWk1?= =?utf-8?B?UVJ2YWxIazZSYmozYUE2Vk9jR2EwSmgvWC80b1czRTBncjQ5dk5qc05WWlBM?= =?utf-8?B?OFcyTVlGaSsvaXZobmhmUmYwTWFMMC9EMmdjUXJ4UDZEakRlek9VU0RyZ3k4?= =?utf-8?B?bXdORCtjcGRVUFF1Z2I3T2U0U2UrWFVxVTNHRjBvWEJPcjVqU2ozVzAzSERn?= =?utf-8?B?RGlTNzJQMXdiSHo3U1U4VVFOZVo5ZjB4c3RJY2h6Y09kQmQxaXM0eS9jbUVq?= =?utf-8?B?dDlwUE9YaTdlMmRnRTJDM0U5d0xwSUo2NHNNbUxtYmx4Mmh6WDd2MzJJa1o4?= =?utf-8?B?ckpJRkRJWmdlK2NWa3NMcDVtaXlUWFp3SHZScytXNGtJWEJQWHNCUmR3YVhD?= =?utf-8?B?ZGgreVEwM3NsQU1XQUM4YVVQM09wNllZanFhOE9rdEN2T2VHY0kyNHpQUGlt?= =?utf-8?B?eWFHK2NtMzBScXlZMkJRMGVzQjUrcVEzUm16am91aFhsWVBwSmQxVVRoT0N4?= =?utf-8?B?Zm5mY3RGQ0hBaFo2MlJ3YnA3N0NqMHRaYjBWL2x6dUZQaDlSd2JtTUMwWEg3?= =?utf-8?B?WENKZVRpdWpEbkd4cWVMei9zQUhzeEN3OUZzQS9FRDAxVVByUUwrUDFDT1B1?= =?utf-8?B?NGIrZDI4WGREZXRFTUE1Q3BGdW04V3M5czJsZXhRVXpwL3hnOENoVE9YcXBw?= =?utf-8?B?dExKNWdlRUxHR2hSTXI4b2c0T0gwdmtXLy9UTW0rYnB2cG1jSHNSRmFJdktu?= =?utf-8?B?WEFhaW1XOUtzdVlrVzFmZUw3L0ZiYXc3dVMvY0U0aU9kZmtObFd4QXdqang2?= =?utf-8?B?cWhZNzhHaGZwalJZWktZZ2Q3NncyZllOYUdQQzZRSUJxVUFOc3hhNU5rTW1P?= =?utf-8?B?c0liaklOc0FoaWVWcFRveXpDQjVvUjFzOVJhSi80aEVNQS8rQzhWaEI0NFcv?= =?utf-8?B?T1JmbmZ6cElyRWRSUHBic2l5WjNIRm0vOU5HRFg4MmlEQmJsd1dMWU10NmND?= =?utf-8?B?OHc9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: Ccto610BfWOIW1PvvMBgIFULMp7bTaM8l+hwDUXnteCP66RYZM0kwe5vObz+7z3hAKDzFKaTqpqLsRwY5VKTextAii5rwXmngvdaXVTmTisERM7TrA5JmMnyQGID7/Bov2VpiYy8UbV9WAKonx1VhrI81nXW3LexGajlwZaeWt4M2I4t146mOjLDG3Az+u/MDl2XqI4r8tCsX47t7soVerT94ogSLOpB18A+S+qGOow0MfZd+mUQEaEqzeuOK1Y27S+JnS3N9+ts0JkXixr17v6yTbQVTQAGZFBCjcWTRzp7f24TpW2YKLbE0lCC4MFhmWnPeg8QMn/PjkiVpQufZeHzIbGEOyMyx8h/rQIOlEA2lcxZzrn+5S4vPOBnHOHXFu1fqp/7OYERZZxUQ3MYUE92oLvYCOwRJgA7lViY8IeEug8UZU69MGW0vS6+O6f5sYKoYVRmvFiQNOjBfsdfcew9n17PNVCwlSeMacW4FxGEriWVJ47g68LS001XzmDclz0GZq96iEdX30+LnWBcCcTo51wmGSfUrvAYbd5IuWskeJjZPJt9Sa00L4zFacKqS4r2i2amRPh2KT/Z+grNTNRD3lGThiBqNLLQLW7WARoFRsP8Z1/9CGxlOMtXrct3KFYuIjv0F85EJGE2xPRD6vq/eBKa65BJGMNeT7RPKrEntnV3cRsxKxdTc/TrbLzaTpcpdwFK1tDbgUxBWOzDmPy8ODBNMNq6J/ap17i78bCcnnCiQF6VQMCUhJ9jKBcLgLoawAg8URvMz1Igs58EWfYRkJdQbAvuVZItUOaAFdVrBQFDmWgbMX0aQRhkrt28 X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 5c2ac6e7-d27c-4fc9-1fd2-08db680751cc X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 08 Jun 2023 10:01:25.2536 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: J2hqXuNKPfLP1OYJJwJNM9/lJ1G7n0KJu447o+kQdKQZGNqfBNt7hW7Z5EE7CE6uTpInv9ST+b6/MBtxRxGoaz5L8IhTKhOydDVAih31hSU= X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR03MB5864 On 08/06/2023 10:59 am, Roger Pau Monne wrote: > Some of the current users of hvm_cr4_guest_valid_bits() don't print > the valid mask in case of error, and thus the resulting error messages > are not as helpful as they could be. > > Amend callers to always print the value of hvm_cr4_guest_valid_bits() > together with the rejected bits in the checked value. Also take the > opportunity and adjust all the users to use the same print formatter. > > No functional change intended. > > Signed-off-by: Roger Pau Monné Acked-by: Andrew Cooper From xen-devel-bounces@lists.xenproject.org Thu Jun 08 10:09:25 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 08 Jun 2023 10:09:25 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545242.851565 (Exim 4.92) (envelope-from ) id 1q7CZr-0000Py-2F; Thu, 08 Jun 2023 10:09:11 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545242.851565; Thu, 08 Jun 2023 10:09:11 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7CZq-0000Pr-UG; Thu, 08 Jun 2023 10:09:10 +0000 Received: by outflank-mailman (input) for mailman id 545242; Thu, 08 Jun 2023 10:09:09 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7CZp-0000Pj-Mj for xen-devel@lists.xenproject.org; Thu, 08 Jun 2023 10:09:09 +0000 Received: from esa5.hc3370-68.iphmx.com (esa5.hc3370-68.iphmx.com [216.71.155.168]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 8037807a-05e4-11ee-8611-37d641c3527e; Thu, 08 Jun 2023 12:09:07 +0200 (CEST) Received: from mail-bn8nam12lp2168.outbound.protection.outlook.com (HELO NAM12-BN8-obe.outbound.protection.outlook.com) ([104.47.55.168]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 08 Jun 2023 06:09:04 -0400 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) by DM6PR03MB5291.namprd03.prod.outlook.com (2603:10b6:5:229::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Thu, 8 Jun 2023 10:09:02 +0000 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::192:6bdf:b105:64dd]) by SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::192:6bdf:b105:64dd%3]) with mapi id 15.20.6455.028; Thu, 8 Jun 2023 10:09:02 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 8037807a-05e4-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686218946; h=date:from:to:cc:subject:message-id:references: in-reply-to:mime-version; bh=aWljPlVMSdoT9SYIrb8PJl+i7YDeVSfUCamQpnFrIKA=; b=H86Z2F1nvzhPgIDBAsA50bWBt1pdQcVs2q3+fmNpV2dr8eeB0G/kmLMH 5gysNpwKUpNXzswy6F4eA4V2+C6DKO9UCnzMaiftcIGbSRUmFsa3N2Sah kXmucIm83bMlX8OJvatNAnfL2TuK0Yn+2/V9LnptMhmZT9ZhQ2qttmg4Q E=; X-IronPort-RemoteIP: 104.47.55.168 X-IronPort-MID: 110793610 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:PNFkOasfGyImZBJ8qKAPs1rQ8OfnVBReMUV32f8akzHdYApBsoF/q tZmKTiDM6uCYGemLogiaYvjoR8FuZDVy9JgQQY6+yg1Fn8R+JbJXdiXEBz9bniYRiHhoOCLz O1FM4Wdc5pkJpP4jk3wWlQ0hSAkjclkfpKlVKiffHg3HVQ+IMsYoUoLs/YjhYJ1isSODQqIu Nfjy+XSI1bg0DNvWo4uw/vrRChH4rKq4Fv0gnRkPaoQ5AGGxyFMZH4iDfrZw0XQE9E88tGSH 44v/JnhlkvF8hEkDM+Sk7qTWiXmlZaLYGBiIlIPM0STqkAqSh4ai87XB9JFAatjsB2bnsgZ9 Tl4ncfYpTHFnEH7sL91vxFwS0mSNEDdkVPNCSDXXce7lyUqf5ZwqhnH4Y5f0YAwo45K7W9yG fMwIRkGSSivxO6K2rucZNFswcIxfdnuM9ZK0p1g5Wmx4fcOZ7nmGv+Pz/kImTA6i4ZJAOrUY NcfZXx3dhPcbhZTO1ARTpUjgOOvgXq5eDpdwL6XjfNvvy6Pk0osjf60boq9lt+iHK25mm6Co W3L5SLhCwwyP92D0zuVtHmrg4cjmAuiAdpNRebmr6YCbFu731A1EC0ZXEaB/uScgGTuaoJSe k8tw397xUQ13AnxJjXnZDW0rXuFlh8aRdtLEuc+5R2Ny6zb+AKQDC4PSTspQNU2vsg7bT8nz FmEm5XlBlRHubKWYWiQ+redsXW5Pi19BXQEZDMWQBEt4NT5pow3yBXVQb5LHKvwgtDrFDXY2 T2GrCEiwb4UiKYj0qyh+FndjjGEp57XTxU07AHaQmKk6AxiYIevIYev7DDz6fdGMZbcRF2Gt 3sshceT9qYNAIuLmSjLR/8CdJmt5vCYIHjfjERpEp0J6Tug4TigcJpW7TU4I11mWu4UdDmsb ELNtAd54J5IIGDsfaJxe5i2Cckh0e7nD9uNaxzPRt9HY5w0fgnX+ihrPBSUxzq0zhhqlrwjM 5CGd8rqFWwdFals0DuxQaEazKMvwSc9g2jUQPgX0iia7FZXX1bNIZ9tDbdERrlRAH+syOkNz +tiCg== IronPort-HdrOrdr: A9a23:/dJHcqHbEErhENDQpLqEL8eALOsnbusQ8zAXP0AYc20yTiX4ra CTdZEgviMc5wxxZJhNo6HkBEDiewKkyXcW2/hoAV7KZmCP1wWVxelZnPDfKlbbaknDH4BmpM BdWpk7JefcSX5dpq/BjDVQFexL/PC3tJqFv6P16VBDbS9XUIlczyFfTjy2LyRNNWp7LKt8G5 qY6tBGtDa7EE57Uu2wGmMZWezOvP3n/aiWAyI7Ow== X-Talos-CUID: =?us-ascii?q?9a23=3AV3cNDmj2Ji0gM7Pl5084p9xs7DJue1TW60/8YEO?= =?us-ascii?q?EE29OZoWVDlmCqbNhnJ87?= X-Talos-MUID: 9a23:lYx+8wqvJzawk7HAK4AezyheEt9Y7K2zMh8QtJ8s6/jUOH1zAg7I2Q== X-IronPort-AV: E=Sophos;i="6.00,226,1681185600"; d="scan'208";a="110793610" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=OKRiUIkexSloXOd++Y6kyvSK9RwARju3a3yo6XVHy1Brgva6f0fFgxH441NyQ14rWfFyfoGD07Bp9x6dw76rXKBr7aPboC0AiRIoisTJxenSIyaDclvYVmnjPJwdDOoOamou4hnKDjqzA46wEHg4mK9v/Hcjjlt52j5LMXraR88ZZFUlVDs0OzpsC9CCUDPKtKKRAB9SJM2SWp70P9YyWMCKqI2IDlXHp+6lNffTB2JPXIY83lbe2ESA2nOid/RAs/srBnytsemIgAgZxHo+LxGNHpe7JqE43qW+iZUIVrSLfDM21m5M52GRuxqwGGLQX7KUqQ/YqG2BowSMVgzFnA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=hWch4lippnOTCX/KUqLusehQC0U+PU7xym8rA7/K7JA=; b=fda2um28a2/muW29En8RgnxRfdRAKpSicr5tOmkGdNhQjk8zZsfSJsk/GZwDFakQvTFzTwsM94edWkUjG84RwZ4JO7s0OfEYHfMIuPfmp2DCJ2TDO5IkPrftaX74VbsLLh4WnknEkg1F0NI94nPSpssDhWcZaoMu8Ll3DwpE0O8W1EmXgvdZwRco/8rwEY+IkksY3VzJHAOGySvAroy6XiBk1rFDwxvpFUToU9ce2AQcB0Oi4Oha5Midn6hYGsrTRmWxdt4R0qQpHIERDwVR5GoJXWAA0i+5/3tu1b32oaXyg1Ge83Z+YeyB+JIhdxbfRqGdFd57+x4BoVNAQXmqGw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=hWch4lippnOTCX/KUqLusehQC0U+PU7xym8rA7/K7JA=; b=ixtp3ceEZxQWjixYmACwcSC8U/sJZ/8Xcf/a9nQtbeIdLO9QR7YBGIggWgb/iiK+8cccuQTvDJI1NPXrAryi2aUnlzRvwacG2/G3R2VgfH0wMZY9OOPOp9p6GQkXOODaQlUK9P0Hlu134RZQrErJBrzuKen3gPNnYrkRTYVZn38= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Date: Thu, 8 Jun 2023 12:08:55 +0200 From: Roger Pau =?utf-8?B?TW9ubsOp?= To: Demi Marie Obenour Cc: Jens Axboe , Alasdair Kergon , Mike Snitzer , dm-devel@redhat.com, Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= , linux-block@vger.kernel.org, linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org Subject: Re: [PATCH v2 16/16] xen-blkback: Inform userspace that device has been opened Message-ID: References: <20230530203116.2008-1-demi@invisiblethingslab.com> <20230530203116.2008-17-demi@invisiblethingslab.com> Content-Type: text/plain; charset=utf-8 Content-Disposition: inline In-Reply-To: <20230530203116.2008-17-demi@invisiblethingslab.com> X-ClientProxiedBy: LO4P123CA0113.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:192::10) To SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|DM6PR03MB5291:EE_ X-MS-Office365-Filtering-Correlation-Id: 405d24ae-cdaa-4f0a-f8ef-08db6808620f X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 4V237diHWQAFu6s3XWs6gwdUyJG3RdOh0i0aujbf7hjd6Sg+VtaVI2OPleX29zBnDlXDtrbHofno/ddkhB9U81G82Kh0hhuWhjJzKLwIvtXG9wCMKCjy/Ly81VN+nLJpH9PLAhLhkqUxbJjeUlkonssp62HvR+vzvvndtpQzpRydTF1eVhAuZc2eRRezoQYXP1dvsJO0aqS4Hi5stm+BpHbr/7TY8I8ziY6Rkj4pZyY9RPCr5VmIQr4VWMPdcMZpzS8zlzZ1+hLof3fnwtqiEEOW248j9YOHsp8Z7utl+e/ksBmEzCvBdmfovRbDcQiGUWOcH5HrP4TTLitEUeBoGSQLjNjtcQ++YJbSaFZlSxYPZZTHP5cM7cUoxwrCtG+wGeU/BaU/AtXJkl2YPlj5LgC6VryAtl6npLhpaRPBwPARztMrmW7ELlpZqoCA4iQbfR7W9OIwE4zjb/fyZgJ7GpIym2PPXDpqOXbWGnk5LQNfdzuc+r9xRNnRvgMc9fRsgw/gL0Ko26K9QYacxLNnMSHEIDnyNLfaCu8CWbx7BLBInMPZ8WOcU5u4wRGnd2gVo8ZypSJmEvVtTyEYYISvM1pHH03B7a+ba7VfDLW2cuo= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(7916004)(4636009)(366004)(376002)(346002)(136003)(396003)(39860400002)(451199021)(6512007)(9686003)(6506007)(38100700002)(41300700001)(6486002)(6666004)(26005)(186003)(83380400001)(478600001)(54906003)(66476007)(4326008)(82960400001)(316002)(66946007)(8676002)(66556008)(6916009)(8936002)(2906002)(33716001)(5660300002)(86362001)(85182001)(67856001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?bUZaWnVKTnpLTFcxTzhtK25rS042RDMwMzFxY3N4bDVhYzg5MXZlaTZhVDJv?= =?utf-8?B?dHgxM0ZiSVQ0dDY2c2Y1R2ZKV0Y0VEFrUFNRZmtEd0c4bEJhRDRxVWhRRG43?= =?utf-8?B?dEgvcWVyRGx0eU5vdUYvUUorMVJ1QlJIa1lSMERSOXQ3NzhheGZlS2hnNHBl?= =?utf-8?B?dnFudkwweXdCK2JkU0J1NWJQZWNXakNLREdOOFhCQ3JaeDBzZXZkOVBZVDd4?= =?utf-8?B?Nk9pN00wTDRkZXZVZ2ptUVpPWkFlR3V3M2pRU2lZcmlFbkQ0bEkycEJsNW1O?= =?utf-8?B?citqNzQ3TzFiNXB4WnpOR25JQmtpZ3FmL2llMlZsd0cyQlFGVmwwY0tXWFRU?= =?utf-8?B?NE41Y0h3bGtDYXFsMVYzUTFsdTVwMHZJVTYySHdxbk5sUlMwdEt4emp1N2Jt?= =?utf-8?B?bkNMS1gxZzl4SytmQ21xODk4V3czcHd4dmNDOXVxVnRpV2N1bHp1Nmpvai9z?= =?utf-8?B?NXlxck4yMGxJRlJ3VUhKUWZrS0dYQjZEemVwaWE2bU1oQ0Y0ZmNkbUIzcGpv?= =?utf-8?B?dWFDTVJwZUxFdnBZVUJSaFZqdlJrYTJxN2JuaHh1WVh0YTZEUWFmNTY3NWs0?= =?utf-8?B?NGcyU1lDZ1dZd1d2NmcxaVZpbUFJUjVaWVcrQlMyRDh1NFY5L3pFYkFacThh?= =?utf-8?B?TVVUV2NqMFhpRkcvMGVLM25VeWRNZG45YXR3SUV2bTZKTndROTJzNy9pR1l3?= =?utf-8?B?ZWNlK1lsZGJNaWdhR1M2dlFZL3hMUTZFQXZQcm1vRlY3MnFNR25lRDN4QlRO?= =?utf-8?B?UCtEZUR5ZGFWSVF5Tnp6ZFFnQmNXQjRvVkl1UTVud2ZQeUN3QklpZnpwNHgx?= =?utf-8?B?ZXo3cFhxNVFEZkFwczhGbm5YamRRSmZIMzNXelZGdmdoOHl0Vkc1VG0zUlhx?= =?utf-8?B?QUJ1NHg3WmhlN1hQczd4eFFrU1R2WWdQbjVCQ3N0SXlvZ0F5QmVialJ3cG8x?= =?utf-8?B?WENGeEhtUXJYMXpKQ1lzRGZPZmlsYUhRMld5MmJkbHBSc1VyMFNacUxGM3h0?= =?utf-8?B?cmk4VWhwdW9hNDJRRmpsV0dRbk1ZSjFaRWNMbVloQ2h0RnU5NkQ2enNwNzAx?= =?utf-8?B?M2krWnM3ODdFT1VFTFVpQ2pLTnlmU2tFdXVjZkV4ZVFwZXV6YVNSaEMyWjBq?= =?utf-8?B?bW8vZFY4T2Vkcmk2RHIxUTBxbnpPSld3Mk1tOGdyMTJndVRMemhFOVRCZDFB?= =?utf-8?B?Z0ZLQlJvRUo1elVlT3NuaWtWMjZkOGRDWDZGR1lSZlZ3L2JqdUhTSGZEUVVG?= =?utf-8?B?Tmw3aTlpU0w2dDMydEZ3Zmh4V2dEbUEyOFJlWENDOXdNTjg2aUJ6Zmlhemww?= =?utf-8?B?WkFXZG92Q3h4UTFvSVplNmxEN1puNnBmRjc4NzdVS2V1aHhTcHJRV1hPbnhu?= =?utf-8?B?ZEw0VmFUQ0d2elRoQ2lhMXREZ0d6S0xyOUNtY2NXZW5iUCtBanFvTW12STRP?= =?utf-8?B?Z2xCVUVBVzQwMkdYMHNaVDNKOTJBVzNVdldhbUpNUTcvN0VOaEZTRTlmQUtG?= =?utf-8?B?LzZVWEhyaXRwdkxsSm9vWTNUd1g0Tll5NkxwcjM1V3NhUGxhVjFtMlhJeWpM?= =?utf-8?B?cU93aThOdVd2NHl5MXpHNGxFclVkazJZVElPTEVZdS8wcWdMYVp5UnFoNnpB?= =?utf-8?B?Zm01d3lNK0FFZFRZQVRQTGxteDVYekFUWTlIWVdvZnk4Mnp5emFFUkJENUZz?= =?utf-8?B?ekhwYXFJZ09BZ0IxeGVGSXdwbUVaNEh3ZTd4dFkwaDlLa1RMSVhtSzhDQUJM?= =?utf-8?B?NDhjYnpqTmVCWVU4WDl4aHVxamN5eDBwMU5DeklvYUtTazlCbXFOUlQyNTBj?= =?utf-8?B?N0pZQXIxNW5YOCt2Yy9xdndMR2ExbXduamk1SGd1dUxaNGtnTkhUUmpiUjJx?= =?utf-8?B?Z0dVa0YyODIvR0JnWm1DZFpoenR6TWVLc0ZhNVVRb1RqSHh2a1FBZnlTNVNG?= =?utf-8?B?azFNTDZpZ0RMRTUzVW9YZGV1aUdNdGtJK0ZCU2dqZzhsTmVKekR1eVUvZVJR?= =?utf-8?B?dFZCcFB1MzYwZzcwdXBpKzRlTVZMdmkzUndSbVRaYkc2RThmWGt0NEMvTnZm?= =?utf-8?B?MlNQNVJWWi9PUFRadGhGa0RGNE11RURsNjJOUk9HMTJmRVZEbUdJK29MZDg5?= =?utf-8?B?ZGlvSDhRdUxxZm8ybFFaQ09vcnhUYW9mM0V3Y3FkMUJFM1FnSHVGeHlFUWtR?= =?utf-8?B?REE9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: =?utf-8?B?bTdyOFNMVDdtU3RPTDNiTHVsYnNzQURrNjZzU205MWo1V0g0WDBSdzYrc3B1?= =?utf-8?B?UFBxZjNmdG91S1REZEJ6QlQrT3Q3aEM0NkRxdEhvcWNIQnkzREVwRTMzSUhD?= =?utf-8?B?WGU4dkNubm9SMDRRMldURndpd2Z4ZEUxS2Y3NGw2R3Z5VVVVR0FIbTRNNnJ0?= =?utf-8?B?eFhYVHV0U2ViQzBLM3pWWW5KUm9NVzFCekk0RUZsang4OGV6Y3cxMGIyNmVV?= =?utf-8?B?dFhnRlVISXptWEZkdWNCQ1pFZVU1YWJudTBEOGh0alZCUHdySzZUUFVaRDcw?= =?utf-8?B?a1pjZUxTOUVJdHEyblpMU0RFSThFd1F4cGprWlpoRnRKZFlPT2lsck9ud0V5?= =?utf-8?B?NlhybGJxQlpVQ1U0elpTZWh5aG9EUmxucUZ5aGNtdWcvb0E0bFcyVnROemVw?= =?utf-8?B?OW5WNzhocGJNSzB3TXlHNHViZmpYakdLSUlkcU4zSDgzMDg1cnNxUzNNUE5O?= =?utf-8?B?Qm14eEpOR0tQaWhLd0l0ZVEwaGVNUys0N3F5Wkc4QVhOQjhKZEx1eU14NHR2?= =?utf-8?B?OUFDVlBBMXd1dFU3V1NacUhoK1JWanRtMWYyMWxIOTJQa3M2enlacVZSdHpG?= =?utf-8?B?YzliUkt3NGttSHlDTUhZTys5R04vOUowSkdXWStBclFldjJOQmxmTWtoZXNs?= =?utf-8?B?M0wzVU9HNnpVUjg4NUF2NGJOSmtLRnRYbWE1WHlwTjFwSFQrYy9NRk1YdVpC?= =?utf-8?B?Z0xrMG5EbEYwSFlNTDlXNWN2alUxdXdxYXZBaXlwZ0V5Smsxd0t3a0RuVkor?= =?utf-8?B?VHFLKzdOUXcwTmptdmRJZUZBV3BTcDIxaVMxNmhPbGxmQWYrazFuM0RCczJD?= =?utf-8?B?dENRQXJJeER1K3VOdVIrbjNNOCtReitFcjJ6Z1NPbjh2ZTRtY3VLNjVkY0Uy?= =?utf-8?B?emsxcm0vRC9rQ2JXc1ExL3dVZENQa3ZrZzU2TE5adDlwd2tHWlFqZ2FyYVlj?= =?utf-8?B?N21GRmI3VWNLNEpTTGN3YVc1ZTlucW1hUk1GWkROYnlGcVF1a2NsNzNaQU04?= =?utf-8?B?UlVtcVhZc2MreExPTVBLSllWREIxNnVDR2hxUWlVQWczV2NjMnQ5ak9DVkpz?= =?utf-8?B?TE43UTI2cE1SbTlWUE5zM1IxeVcxVGxweDdBTVI1c1FrTXNyd2k5RjE3bUMy?= =?utf-8?B?QlhDOGwyZi9VdXVpeC9tUEMwYUlyR1dyZExWOHN2bmJ0SnViQWh6dHdvYm12?= =?utf-8?B?eTZoZnI5RHREMWdodk45MWI5U2Vrb0FFTVR5WFpIc3cvejN1bkV5RGhjeHZx?= =?utf-8?B?SWhQVjhwNG1PRlNsUElNenZBWlNYTEQyY1RqcE5USXNTSXBYUT09?= X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 405d24ae-cdaa-4f0a-f8ef-08db6808620f X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 08 Jun 2023 10:09:01.9910 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 3lCGQazFV4igjyPs3o7iPz4lopdzhhmn5X7rgjYOjddc6kvZr/NjRRMGHxsFaVI9vCMMfXpCAHfgECEjJRuyQw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR03MB5291 On Tue, May 30, 2023 at 04:31:16PM -0400, Demi Marie Obenour wrote: > Set "opened" to "0" before the hotplug script is called. Once the > device node has been opened, set "opened" to "1". > > "opened" is used exclusively by userspace. It serves two purposes: > > 1. It tells userspace that the diskseq Xenstore entry is supported. > > 2. It tells userspace that it can wait for "opened" to be set to 1. > Once "opened" is 1, blkback has a reference to the device, so > userspace doesn't need to keep one. > > Together, these changes allow userspace to use block devices with > delete-on-close behavior, such as loop devices with the autoclear flag > set or device-mapper devices with the deferred-remove flag set. Now that I think a bit more about this, how are you planning to handle reboot with such devices? It's fine for loop (because those get instantiated by the block script), but likely not with other block devices, as on reboot the toolstack will find the block device is gone. I guess the delete-on-close is only intended to be used for loop devices? (or in general block devices that are instantiated by the block script itself) Thanks, Roger. From xen-devel-bounces@lists.xenproject.org Thu Jun 08 10:09:46 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 08 Jun 2023 10:09:46 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545247.851575 (Exim 4.92) (envelope-from ) id 1q7CaQ-0000vE-AB; Thu, 08 Jun 2023 10:09:46 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545247.851575; Thu, 08 Jun 2023 10:09:46 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7CaQ-0000v7-6p; Thu, 08 Jun 2023 10:09:46 +0000 Received: by outflank-mailman (input) for mailman id 545247; Thu, 08 Jun 2023 10:09:44 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7CaO-0000uq-LC; Thu, 08 Jun 2023 10:09:44 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7CaO-0000GG-Fj; Thu, 08 Jun 2023 10:09:44 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7CaN-00062O-Go; Thu, 08 Jun 2023 10:09:43 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q7CaN-00055C-GM; Thu, 08 Jun 2023 10:09:43 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=ajnE9VNcXIPu+KVUJkMPib7ifrnNPc7d/7dIgzUklzI=; b=BJFNsrQzRRJ0cxbDMpNwq+Pock S+yHEmhexFrJx0+Y1g4xp9uCuBJhJ6FdtCowmJkvYj4zOsPply5CsYbQThcfgaheEWIw1XeDx1RMM FkwiHDhTztT6uGWE+WEFoA55dA9bGuwkHsq2su5eZNH4bSuQvY3eG/HLqblxgEHaRmaU=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [ovmf test] 181298: all pass - PUSHED X-Osstest-Versions-This: ovmf=8314a85893f5b75baa0031a5138028188a626243 X-Osstest-Versions-That: ovmf=69abcf1e78b67e7ce9ac53a9fe1ce61877df984c From: osstest service owner Date: Thu, 08 Jun 2023 10:09:43 +0000 flight 181298 ovmf real [real] http://logs.test-lab.xenproject.org/osstest/logs/181298/ Perfect :-) All tests in this flight passed as required version targeted for testing: ovmf 8314a85893f5b75baa0031a5138028188a626243 baseline version: ovmf 69abcf1e78b67e7ce9ac53a9fe1ce61877df984c Last test of basis 181268 2023-06-07 18:40:44 Z 0 days Testing same since 181298 2023-06-08 07:41:00 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Simon Wang jobs: build-amd64-xsm pass build-i386-xsm pass build-amd64 pass build-i386 pass build-amd64-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-i386-pvops pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Pushing revision : To xenbits.xen.org:/home/xen/git/osstest/ovmf.git 69abcf1e78..8314a85893 8314a85893f5b75baa0031a5138028188a626243 -> xen-tested-master From xen-devel-bounces@lists.xenproject.org Thu Jun 08 10:13:04 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 08 Jun 2023 10:13:04 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545254.851584 (Exim 4.92) (envelope-from ) id 1q7CdR-0002PF-PI; Thu, 08 Jun 2023 10:12:53 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545254.851584; Thu, 08 Jun 2023 10:12:53 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7CdR-0002P8-Lx; Thu, 08 Jun 2023 10:12:53 +0000 Received: by outflank-mailman (input) for mailman id 545254; Thu, 08 Jun 2023 10:12:52 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7CdQ-0002P0-Ot for xen-devel@lists.xenproject.org; Thu, 08 Jun 2023 10:12:52 +0000 Received: from outpost1.zedat.fu-berlin.de (outpost1.zedat.fu-berlin.de [130.133.4.66]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 05d73362-05e5-11ee-b232-6b7b168915f2; Thu, 08 Jun 2023 12:12:50 +0200 (CEST) Received: from inpost2.zedat.fu-berlin.de ([130.133.4.69]) by outpost.zedat.fu-berlin.de (Exim 4.95) with esmtps (TLS1.3) tls TLS_AES_256_GCM_SHA384 (envelope-from ) id 1q7Cck-000hkd-IA; Thu, 08 Jun 2023 12:12:10 +0200 Received: from p57bd96d9.dip0.t-ipconnect.de ([87.189.150.217] helo=[192.168.178.81]) by inpost2.zedat.fu-berlin.de (Exim 4.95) with esmtpsa (TLS1.3) tls TLS_AES_256_GCM_SHA384 (envelope-from ) id 1q7Cck-0049Nn-9l; Thu, 08 Jun 2023 12:12:10 +0200 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 05d73362-05e5-11ee-b232-6b7b168915f2 Message-ID: <0e74974450a15870f13ff36ab5dd60924368c0d9.camel@physik.fu-berlin.de> Subject: Re: [PATCH v3 30/34] sh: Convert pte_free_tlb() to use ptdescs From: John Paul Adrian Glaubitz To: "Vishal Moola (Oracle)" , Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Yoshinori Sato Date: Thu, 08 Jun 2023 12:12:09 +0200 In-Reply-To: <20230531213032.25338-31-vishal.moola@gmail.com> References: <20230531213032.25338-1-vishal.moola@gmail.com> <20230531213032.25338-31-vishal.moola@gmail.com> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable User-Agent: Evolution 3.48.2 MIME-Version: 1.0 X-Original-Sender: glaubitz@physik.fu-berlin.de X-Originating-IP: 87.189.150.217 X-ZEDAT-Hint: PO On Wed, 2023-05-31 at 14:30 -0700, Vishal Moola (Oracle) wrote: > Part of the conversions to replace pgtable constructor/destructors with > ptdesc equivalents. Also cleans up some spacing issues. >=20 > Signed-off-by: Vishal Moola (Oracle) > --- > arch/sh/include/asm/pgalloc.h | 9 +++++---- > 1 file changed, 5 insertions(+), 4 deletions(-) >=20 > diff --git a/arch/sh/include/asm/pgalloc.h b/arch/sh/include/asm/pgalloc.= h > index a9e98233c4d4..5d8577ab1591 100644 > --- a/arch/sh/include/asm/pgalloc.h > +++ b/arch/sh/include/asm/pgalloc.h > @@ -2,6 +2,7 @@ > #ifndef __ASM_SH_PGALLOC_H > #define __ASM_SH_PGALLOC_H > =20 > +#include > #include > =20 > #define __HAVE_ARCH_PMD_ALLOC_ONE > @@ -31,10 +32,10 @@ static inline void pmd_populate(struct mm_struct *mm,= pmd_t *pmd, > set_pmd(pmd, __pmd((unsigned long)page_address(pte))); > } > =20 > -#define __pte_free_tlb(tlb,pte,addr) \ > -do { \ > - pgtable_pte_page_dtor(pte); \ > - tlb_remove_page((tlb), (pte)); \ > +#define __pte_free_tlb(tlb, pte, addr) \ > +do { \ > + pagetable_pte_dtor(page_ptdesc(pte)); \ > + tlb_remove_page_ptdesc((tlb), (page_ptdesc(pte))); \ > } while (0) > =20 > #endif /* __ASM_SH_PGALLOC_H */ Acked-by: John Paul Adrian Glaubitz --=20 .''`. John Paul Adrian Glaubitz : :' : Debian Developer `. `' Physicist `- GPG: 62FF 8A75 84E0 2956 9546 0006 7426 3B37 F5B5 F913 From xen-devel-bounces@lists.xenproject.org Thu Jun 08 10:49:37 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 08 Jun 2023 10:49:37 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545259.851594 (Exim 4.92) (envelope-from ) id 1q7DCt-00060k-HL; Thu, 08 Jun 2023 10:49:31 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545259.851594; Thu, 08 Jun 2023 10:49:31 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7DCt-00060d-El; Thu, 08 Jun 2023 10:49:31 +0000 Received: by outflank-mailman (input) for mailman id 545259; Thu, 08 Jun 2023 10:49:30 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7DCs-00060T-8y; Thu, 08 Jun 2023 10:49:30 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7DCs-00015u-3h; Thu, 08 Jun 2023 10:49:30 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7DCr-0007jD-Pu; Thu, 08 Jun 2023 10:49:29 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q7DCr-0005th-PT; Thu, 08 Jun 2023 10:49:29 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=Bru+De9o07xCm95kh3aewR0Uy2ZDyMlfRLIQgHijG54=; b=vgHTzAGDUw0lkHZv2XAOQXyDzA mkLORa4ZFtQBguJ8HbU7CdC24ofqgpYnNOpIzsLuRhrT9r+fGUru0F44G5HJSR+cSOQWQjrveYuIA td6liD0nOhS34PSkx19RiaCNVI4HLaDU2Qa4KWwhbu4uSBlHNcdIzxPRqOLg1kjV6Vsw=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable-smoke test] 181301: regressions - FAIL X-Osstest-Failures: xen-unstable-smoke:build-arm64-xsm:xen-build:fail:regression xen-unstable-smoke:build-armhf:xen-build:fail:regression xen-unstable-smoke:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking xen-unstable-smoke:test-armhf-armhf-xl:build-check(1):blocked:nonblocking xen-unstable-smoke:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking X-Osstest-Versions-This: xen=0c2d0d32b341eb79bb095fd3f35b9a2672333d64 X-Osstest-Versions-That: xen=64a647f8d817c6989edc000613b5afae19f03f99 From: osstest service owner Date: Thu, 08 Jun 2023 10:49:29 +0000 flight 181301 xen-unstable-smoke real [real] http://logs.test-lab.xenproject.org/osstest/logs/181301/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-arm64-xsm 6 xen-build fail REGR. vs. 181233 build-armhf 6 xen-build fail REGR. vs. 181233 Tests which did not succeed, but are not blocking: test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 15 migrate-support-check fail never pass version targeted for testing: xen 0c2d0d32b341eb79bb095fd3f35b9a2672333d64 baseline version: xen 64a647f8d817c6989edc000613b5afae19f03f99 Last test of basis 181233 2023-06-07 02:04:37 Z 1 days Failing since 181246 2023-06-07 11:02:03 Z 0 days 11 attempts Testing same since 181266 2023-06-07 18:00:26 Z 0 days 8 attempts ------------------------------------------------------------ People who touched revisions under test: Christian Lindig George Dunlap Henry Wang # CHANGELOG Juergen Gross Julien Grall Luca Fancellu Michal Orzel jobs: build-arm64-xsm fail build-amd64 pass build-armhf fail build-amd64-libvirt pass test-armhf-armhf-xl blocked test-arm64-arm64-xl-xsm blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-libvirt pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 461 lines long.) From xen-devel-bounces@lists.xenproject.org Thu Jun 08 11:02:29 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 08 Jun 2023 11:02:29 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545266.851604 (Exim 4.92) (envelope-from ) id 1q7DPC-0008Ni-L4; Thu, 08 Jun 2023 11:02:14 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545266.851604; Thu, 08 Jun 2023 11:02:14 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7DPC-0008Nb-IW; Thu, 08 Jun 2023 11:02:14 +0000 Received: by outflank-mailman (input) for mailman id 545266; Thu, 08 Jun 2023 11:02:13 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7DPB-0008NV-OP for xen-devel@lists.xenproject.org; Thu, 08 Jun 2023 11:02:13 +0000 Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id ea81eadd-05eb-11ee-8611-37d641c3527e; Thu, 08 Jun 2023 13:02:10 +0200 (CEST) Received: from [160.78.167.217] (mozart.cs.unipr.it [160.78.167.217]) by support.bugseng.com (Postfix) with ESMTPSA id 09BB74EE0738; Thu, 8 Jun 2023 13:02:09 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: ea81eadd-05eb-11ee-8611-37d641c3527e Message-ID: Date: Thu, 8 Jun 2023 13:02:09 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.12) Gecko/20050929 Thunderbird/1.0.7 Fedora/1.0.7-1.1.fc4 Mnenhy/0.7.3.0 From: Roberto Bagnara Subject: Re: [PATCH] docs/misra: new rules addition To: Stefano Stabellini , Jan Beulich Cc: julien@xen.org, andrew.cooper3@citrix.com, roger.pau@citrix.com, bertrand.marquis@arm.com, Stefano Stabellini , xen-devel@lists.xenproject.org References: <20230607013810.3385316-1-sstabellini@kernel.org> <955f134b-75b8-f8a4-2e02-ae6def536ffb@suse.com> Content-Language: en-US In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi there. Please see below. On 07/06/23 23:53, Stefano Stabellini wrote: > On Wed, 7 Jun 2023, Jan Beulich wrote: >>> + * - `Rule 5.6 `_ >>> + - Required >>> + - A typedef name shall be a unique identifier >>> + - >> >> Considering that the rule requires uniqueness across the entire code >> base (and hence precludes e.g. two functions having identically named >> local typedefs), I'm a little puzzled this was adopted. I for one >> question that a use like the one mentioned is really at risk of being >> confusing. Instead I think that the need to change at least one of >> the names is at risk of making the code less readable then, even if >> ever so slightly. (All of this said - I don't know if we have any >> violations of this rule.) > > I don't think we have many local typedefs and I think we have only few > violations if I remember right. I'll let Roberto confirm how many. This > rule was considered not a difficult rule (some difficult rules were > found, namely 2.1, 5.5 and 7.4.) There currently are 30 violations for ARM64: - some involve a typedef module_name (in the call it was said this should be renamed module_name_t, which will solve the issue); - most concern repeated typedefs (UINT64 and similar) which are repeated in xen/arch/arm/include/asm/arm64/efibind.h and xen/include/acpi/actypes.h - ret_t and phys_addr_t are also redefined in a couple of places. There are 90 violations for X86_64, for the same reasons, plus - another set of typedefs for basic types (such as u8); - repeated typedefs for things like guest_l1e_t in the same header file: xen/arch/x86/include/asm/guest_pt.h:60.39-60.49: for program `xen/.xen-syms.0', the identifier for typedef `guest_l1e_t' is reused xen/arch/x86/include/asm/guest_pt.h:128.22-128.32: for program `xen/.xen-syms.0', the identifier for typedef `guest_l1e_t' is reused The indicated lines read as follows: typedef struct { guest_intpte_t l1; } guest_l1e_t; typedef l1_pgentry_t guest_l1e_t; >>> + * - `Rule 6.1 `_ >>> + - Required >>> + - Bit-fields shall only be declared with an appropriate type >>> + - >> >> This requires you have settled on what "an appropriate type" is, i.e. >> whether our uses of e.g. types wider than int is meant to become a >> deviation, or will need eliminating. I suppose the outcome of this >> could do with mentioning as a remark here. > > Yes, Roberto showed the "appropriate types" for gcc and there were > plenty including unsigned long if I remember right. I didn't write the > full list down. > > Roberto do you have the list ready? I can add it in the Notes section > here. GCC supports all integer types including enums. In the analyzed configurations of the project, bit-fields are declared of the following types, in addition to the ones the compiler *has* to support according to C99: ARM64: unsigned char, unsigned short, unsigned long, unsigned long long; X86_64: unsigned char, unsigned short, unsigned long, enum. >>> @@ -143,6 +166,12 @@ existing codebase are work-in-progress. >>> - Octal constants shall not be used >>> - >>> >>> + * - `Rule 7.2 `_ >>> + - Required >>> + - A "u" or "U" suffix shall be applied to all integer constants >>> + that are represented in an unsigned type >>> + - >> >> "Represented in an unsigned type" means there is a dependency on the >> target architecture and compiler capabilities: Representation can only >> be determined once knowing the underlying binary ABI, and uses in #if >> and alike require knowing the widest integer type's size that the >> compiler supports. As a consequence this looks like it may require, in >> certain cases, to add u/U conditionally. Any such conditionals pose a >> risk of cluttering the code. > > I don't think there is any plan to add u/U conditionally, and I can see > that would be undesirable. I think the idea is to add u/U to all > constants meant to be unsigned. But also here I'll Roberto chime in -- > he said they already have a draft patch to fix this. Yes, the patch will add U to all implicitly unsigned literals. An open thing is whether it should also add that suffix in order to avoid inconsistencies. Here is an example: /* INIT Record (for IPF) */ #define CPER_NOTIFY_INIT \ UUID_LE(0xCC5263E8, 0x9308, 0x454a, 0x89, 0xD0, 0x34, 0x0B, \ 0xD3, 0x9B, 0xC9, 0x8E) /* Non-Maskable Interrupt */ #define CPER_NOTIFY_NMI \ UUID_LE(0x5BAD89FF, 0xB7E6, 0x42c9, 0x81, 0x4A, 0xCF, 0x24, \ 0x85, 0xD6, 0xE9, 0x8A) While 0xCC5263E8 is implicitly unsigned, 0x5BAD89FF is signed. My inclination would be to add a U suffix to both, in order to restore consistency in addition of complying with Rule 7.2. Someone might say "I want to minimize the number of U suffixes that are added, and keep the inconsistency". Please note that the semantic inconsistency is present in the original code; adding one U would keep that semantic inconsistency and introduce a visual inconsistency; adding two Us would remove both the semantic inconsistency and the visual inconsistency. Given that the first argument of UUID_LE is used for lots of bitwise operations, the option of adding two Us will also solve lots of violations of Series 10 guidelines. >>> @@ -314,6 +343,11 @@ existing codebase are work-in-progress. >>> used following a subsequent call to the same function >>> - >>> >>> + * - Rule 21.21 >>> + - Required >>> + - The Standard Library function system of shall not be used >>> + - >> >> I wish inapplicable (to us) rules would also be marked as such. > > Yes, actually it could be a good idea to say "inapplicable" in the Notes > section for all the rules like this one. I can write a patch for it. It depends on the audience: if you want to facilitate certification for Xen-based products, "inapplicable" would not help, as no assessor would accept that. What an assessor would want to see is "enforced, zero violations". If, instead, your are writing for a different audience then "inapplicable" can be appropriate, even though I think what you really mean is "any patch introducing a call to stdlib.h's int system(const char *command) would immediately be rejected by maintainers". Which is not in contrast with having the rule in the coding standard and having it automatically checked by tools. From xen-devel-bounces@lists.xenproject.org Thu Jun 08 11:23:16 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 08 Jun 2023 11:23:16 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545273.851615 (Exim 4.92) (envelope-from ) id 1q7DjJ-0002RE-CQ; Thu, 08 Jun 2023 11:23:01 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545273.851615; Thu, 08 Jun 2023 11:23:01 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7DjJ-0002R7-9S; Thu, 08 Jun 2023 11:23:01 +0000 Received: by outflank-mailman (input) for mailman id 545273; Thu, 08 Jun 2023 11:23:00 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7DjI-0002Qx-84; Thu, 08 Jun 2023 11:23:00 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7DjH-0001rI-QN; Thu, 08 Jun 2023 11:22:59 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7DjH-00015a-BY; Thu, 08 Jun 2023 11:22:59 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q7DjH-0000zB-B2; Thu, 08 Jun 2023 11:22:59 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=bD+uE/USsx6yEfYihEDZV2Y3IIhxCrGlwguxnEogq4I=; b=2gwCa9BM0LRIPJGULGu3L0I9pO YJlty+AFBwCgCp7BPvukBjDdARMtwcoUFX8JVuDV8V/TOgDXOt7MG9KeaSGGcnRyjsz54SlBkCJ4H S9lOaagx+q0a53yGPwQ7F4hyJAHzCaeylPv3uMTgRewa78S5kCMT2NHwyT/AftizNOiw=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [qemu-mainline test] 181299: regressions - FAIL X-Osstest-Failures: qemu-mainline:build-arm64-xsm:xen-build:fail:regression qemu-mainline:build-arm64:xen-build:fail:regression qemu-mainline:build-amd64:xen-build:fail:regression qemu-mainline:build-i386:xen-build:fail:regression qemu-mainline:build-amd64-xsm:xen-build:fail:regression qemu-mainline:build-i386-xsm:xen-build:fail:regression qemu-mainline:build-armhf:xen-build:fail:regression qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-i386:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:build-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:build-arm64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:build-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:build-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pygrub:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking X-Osstest-Versions-This: qemuu=4f65e89f8cf0e079b4ec3ddfede314bbb4e35c76 X-Osstest-Versions-That: qemuu=6972ef1440a9d685482d78672620a7482f2bd09a From: osstest service owner Date: Thu, 08 Jun 2023 11:22:59 +0000 flight 181299 qemu-mainline real [real] http://logs.test-lab.xenproject.org/osstest/logs/181299/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-arm64-xsm 6 xen-build fail REGR. vs. 180691 build-arm64 6 xen-build fail REGR. vs. 180691 build-amd64 6 xen-build fail REGR. vs. 180691 build-i386 6 xen-build fail REGR. vs. 180691 build-amd64-xsm 6 xen-build fail REGR. vs. 180691 build-i386-xsm 6 xen-build fail REGR. vs. 180691 build-armhf 6 xen-build fail REGR. vs. 180691 Tests which did not succeed, but are not blocking: test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-xl-xsm 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-raw 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-xsm 1 build-check(1) blocked n/a test-arm64-arm64-xl 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit1 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit2 1 build-check(1) blocked n/a test-arm64-arm64-xl-thunderx 1 build-check(1) blocked n/a test-arm64-arm64-xl-vhd 1 build-check(1) blocked n/a test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a test-armhf-armhf-libvirt 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-qcow2 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-raw 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a test-armhf-armhf-xl-arndale 1 build-check(1) blocked n/a test-armhf-armhf-xl-multivcpu 1 build-check(1) blocked n/a test-armhf-armhf-xl-rtds 1 build-check(1) blocked n/a test-armhf-armhf-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-amd 1 build-check(1) blocked n/a test-amd64-i386-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-raw 1 build-check(1) blocked n/a test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-i386 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-amd64 1 build-check(1) blocked n/a test-amd64-coresched-i386-xl 1 build-check(1) blocked n/a test-amd64-coresched-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-xsm 1 build-check(1) blocked n/a build-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-shadow 1 build-check(1) blocked n/a test-amd64-amd64-xl-rtds 1 build-check(1) blocked n/a build-arm64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a build-armhf-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a build-i386-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-amd 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-pair 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-qcow2 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-vhd 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvshim 1 build-check(1) blocked n/a test-amd64-amd64-pair 1 build-check(1) blocked n/a test-amd64-amd64-pygrub 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-intel 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd11-amd64 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd12-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-multivcpu 1 build-check(1) blocked n/a test-amd64-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit1 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit1 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-intel 1 build-check(1) blocked n/a test-amd64-i386-xl 1 build-check(1) blocked n/a test-amd64-i386-xl-pvshim 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a version targeted for testing: qemuu 4f65e89f8cf0e079b4ec3ddfede314bbb4e35c76 baseline version: qemuu 6972ef1440a9d685482d78672620a7482f2bd09a Last test of basis 180691 2023-05-17 10:45:22 Z 22 days Failing since 180699 2023-05-18 07:21:24 Z 21 days 71 attempts Testing same since 181271 2023-06-07 19:09:58 Z 0 days 3 attempts ------------------------------------------------------------ People who touched revisions under test: Afonso Bordado Akihiko Odaki Akihiro Suda Alex Bennée Alex Williamson Alexander Bulekov Alexander Graf Alexander Ivanov Alistair Francis Ani Sinha Ani Sinha Anthony PERARD Anton Johansson BALATON Zoltan Bernhard Beschow Bin Meng Brian Cain Brice Goglin Camilla Conte Chuck Zmudzinski Cindy Lu Clément Chigot Cornelia Huck Cédric Le Goater Cédric Le Goater Daniel Henrique Barboza Daniel P. Berrangé Daniil Kovalev David Hildenbrand David Woodhouse Emanuele Giuseppe Esposito Enze Li Eric Auger Eric Blake Eric DeVolder Erico Nunes Eugenio Pérez Fabiano Rosas Fan Ni Fiona Ebner Francesco Cagnin Francisco Iglesias Gavin Shan Gregory Price Gregory Price Hanna Czenczek Hao Zeng Hawkins Jiawei Igor Mammedov Ilya Leoshkevich Ira Weiny Jagannathan Raman Jason Wang Jean-Louis Dupond Jean-Philippe Brucker Jiaxun Yang John Snow Jonathan Cameron Juan Quintela Kevin Wolf Laurent Vivier Lei Yang Leonardo Bras Maksim Davydov Marc-André Lureau Marcin Juszkiewicz Marco Liebel Mark Cave-Ayland Markus Armbruster Matheus Tavares Bernardino Mauro Matteo Cascella Max Fritz Michael S. Tsirkin Michael Tokarev Michal Privoznik Mostafa Saleh Nicholas Piggin Nicolas Saenz Julienne Niek Linnenbank Palmer Dabbelt Paolo Bonzini Peter Maydell Peter Xu Philippe Mathieu-Daudé qianfan Zhao Raghu H Rene Engel Richard Henderson Richard Purdie Ricky Zhou Ryan Wendland Sebastian Ott Sergio Lopez Sid Manning Song Gao Stefan Hajnoczi Stefano Garzarella Steve Sistare Taylor Simpson Thomas Huth Thomas Weißschuh timothee.cocault@gmail.com Timothée Cocault Tommy Wu Vikram Garhwal Viktor Prutyanov Vitaly Cheptsov Vivek Kasireddy Vladimir Sementsov-Ogievskiy Volker Rümelin Xinyu Li Zeng Hao Zhenyu Zhang Zhenzhong Duan Zhuojia Shen jobs: build-amd64-xsm fail build-arm64-xsm fail build-i386-xsm fail build-amd64 fail build-arm64 fail build-armhf fail build-i386 fail build-amd64-libvirt blocked build-arm64-libvirt blocked build-armhf-libvirt blocked build-i386-libvirt blocked build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl blocked test-amd64-coresched-amd64-xl blocked test-arm64-arm64-xl blocked test-armhf-armhf-xl blocked test-amd64-i386-xl blocked test-amd64-coresched-i386-xl blocked test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-i386-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-amd64-libvirt-xsm blocked test-arm64-arm64-libvirt-xsm blocked test-amd64-i386-libvirt-xsm blocked test-amd64-amd64-xl-xsm blocked test-arm64-arm64-xl-xsm blocked test-amd64-i386-xl-xsm blocked test-amd64-amd64-qemuu-nested-amd blocked test-amd64-amd64-xl-pvhv2-amd blocked test-amd64-i386-qemuu-rhel6hvm-amd blocked test-amd64-amd64-dom0pvh-xl-amd blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-freebsd10-amd64 blocked test-amd64-amd64-qemuu-freebsd11-amd64 blocked test-amd64-amd64-qemuu-freebsd12-amd64 blocked test-amd64-amd64-xl-qemuu-ovmf-amd64 blocked test-amd64-i386-xl-qemuu-ovmf-amd64 blocked test-amd64-amd64-xl-qemuu-win7-amd64 blocked test-amd64-i386-xl-qemuu-win7-amd64 blocked test-amd64-amd64-xl-qemuu-ws16-amd64 blocked test-amd64-i386-xl-qemuu-ws16-amd64 blocked test-armhf-armhf-xl-arndale blocked test-amd64-amd64-xl-credit1 blocked test-arm64-arm64-xl-credit1 blocked test-armhf-armhf-xl-credit1 blocked test-amd64-amd64-xl-credit2 blocked test-arm64-arm64-xl-credit2 blocked test-armhf-armhf-xl-credit2 blocked test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-freebsd10-i386 blocked test-amd64-amd64-qemuu-nested-intel blocked test-amd64-amd64-xl-pvhv2-intel blocked test-amd64-i386-qemuu-rhel6hvm-intel blocked test-amd64-amd64-dom0pvh-xl-intel blocked test-amd64-amd64-libvirt blocked test-armhf-armhf-libvirt blocked test-amd64-i386-libvirt blocked test-amd64-amd64-xl-multivcpu blocked test-armhf-armhf-xl-multivcpu blocked test-amd64-amd64-pair blocked test-amd64-i386-pair blocked test-amd64-amd64-libvirt-pair blocked test-amd64-i386-libvirt-pair blocked test-amd64-amd64-xl-pvshim blocked test-amd64-i386-xl-pvshim blocked test-amd64-amd64-pygrub blocked test-armhf-armhf-libvirt-qcow2 blocked test-amd64-amd64-xl-qcow2 blocked test-arm64-arm64-libvirt-raw blocked test-armhf-armhf-libvirt-raw blocked test-amd64-i386-libvirt-raw blocked test-amd64-amd64-xl-rtds blocked test-armhf-armhf-xl-rtds blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-amd64-xl-shadow blocked test-amd64-i386-xl-shadow blocked test-arm64-arm64-xl-thunderx blocked test-amd64-amd64-libvirt-vhd blocked test-arm64-arm64-xl-vhd blocked test-armhf-armhf-xl-vhd blocked test-amd64-i386-xl-vhd blocked ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 15891 lines long.) From xen-devel-bounces@lists.xenproject.org Thu Jun 08 12:37:35 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 08 Jun 2023 12:37:35 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545288.851630 (Exim 4.92) (envelope-from ) id 1q7Et4-0001LP-Ut; Thu, 08 Jun 2023 12:37:10 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545288.851630; Thu, 08 Jun 2023 12:37:10 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7Et4-0001LI-S3; Thu, 08 Jun 2023 12:37:10 +0000 Received: by outflank-mailman (input) for mailman id 545288; Thu, 08 Jun 2023 12:37:09 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7Et3-0001L8-CH; Thu, 08 Jun 2023 12:37:09 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7Et3-0003Q5-7F; Thu, 08 Jun 2023 12:37:09 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7Et3-0003mU-0E; Thu, 08 Jun 2023 12:37:09 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q7Et2-0005CK-Vy; Thu, 08 Jun 2023 12:37:08 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=ygjGnT2/0KG6xXQrVrzkza+fIwX7vP8vJLryG+7DvHc=; b=Hp4LSWt1PXXdf8V4MfN407SoDX NTL7vkf5vZMCUkHAwUN7MNwIgGl6kUb+fzHTmxw9Bkt7EwoZmVSX96p7moYP7+EjkWtirXJncW4Iq ZP+uxLqlC+DG7fIoYnA2EyscuqTOfQzC6HHG39JFOeebsdutAXP871/qbBVr5JMrzClk=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable-smoke test] 181303: regressions - FAIL X-Osstest-Failures: xen-unstable-smoke:build-arm64-xsm:xen-build:fail:regression xen-unstable-smoke:test-amd64-amd64-xl-qemuu-debianhvm-amd64:guest-start/debianhvm.repeat:fail:regression xen-unstable-smoke:build-armhf:xen-build:fail:regression xen-unstable-smoke:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking xen-unstable-smoke:test-armhf-armhf-xl:build-check(1):blocked:nonblocking xen-unstable-smoke:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking X-Osstest-Versions-This: xen=6915a120641b5d232762af7882266048cf039ca0 X-Osstest-Versions-That: xen=64a647f8d817c6989edc000613b5afae19f03f99 From: osstest service owner Date: Thu, 08 Jun 2023 12:37:08 +0000 flight 181303 xen-unstable-smoke real [real] http://logs.test-lab.xenproject.org/osstest/logs/181303/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-arm64-xsm 6 xen-build fail REGR. vs. 181233 test-amd64-amd64-xl-qemuu-debianhvm-amd64 20 guest-start/debianhvm.repeat fail REGR. vs. 181233 build-armhf 6 xen-build fail REGR. vs. 181233 Tests which did not succeed, but are not blocking: test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 15 migrate-support-check fail never pass version targeted for testing: xen 6915a120641b5d232762af7882266048cf039ca0 baseline version: xen 64a647f8d817c6989edc000613b5afae19f03f99 Last test of basis 181233 2023-06-07 02:04:37 Z 1 days Failing since 181246 2023-06-07 11:02:03 Z 1 days 12 attempts Testing same since 181303 2023-06-08 11:00:25 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Andrew Cooper Christian Lindig George Dunlap Henry Wang # CHANGELOG Juergen Gross Julien Grall Luca Fancellu Michal Orzel Roger Pau Monne Roger Pau Monné Stefano Stabellini jobs: build-arm64-xsm fail build-amd64 pass build-armhf fail build-amd64-libvirt pass test-armhf-armhf-xl blocked test-arm64-arm64-xl-xsm blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64 fail test-amd64-amd64-libvirt pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 504 lines long.) From xen-devel-bounces@lists.xenproject.org Thu Jun 08 13:11:21 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 08 Jun 2023 13:11:21 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545286.851640 (Exim 4.92) (envelope-from ) id 1q7FPz-0005cb-JG; Thu, 08 Jun 2023 13:11:11 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545286.851640; Thu, 08 Jun 2023 13:11:11 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7FPz-0005cU-Gk; Thu, 08 Jun 2023 13:11:11 +0000 Received: by outflank-mailman (input) for mailman id 545286; Thu, 08 Jun 2023 12:19:01 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7EbV-0007um-UD for xen-devel@lists.xenproject.org; Thu, 08 Jun 2023 12:19:01 +0000 Received: from spartacus.cs.unipr.it (unknown [160.78.48.47]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id a51f0749-05f6-11ee-8611-37d641c3527e; Thu, 08 Jun 2023 14:18:59 +0200 (CEST) Received: from [160.78.167.217] (mozart.cs.unipr.it [160.78.167.217]) by spartacus.cs.unipr.it (Postfix) with ESMTPSA id 2F338503EDF; Thu, 8 Jun 2023 14:18:58 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: a51f0749-05f6-11ee-8611-37d641c3527e Message-ID: <9df8560d-4b06-2ab4-b09a-30241dd19676@cs.unipr.it> Date: Thu, 8 Jun 2023 14:18:57 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.12) Gecko/20050929 Thunderbird/1.0.7 Fedora/1.0.7-1.1.fc4 Mnenhy/0.7.3.0 Subject: Re: Xen reliance on non-standard GCC features Content-Language: en-US To: Jan Beulich Cc: Stefano Stabellini , "xen-devel@lists.xenproject.org" , "consulting@bugseng.com" References: <1cd359e7-5245-a621-3be2-9323ba5b327b@bugseng.com> <8314e0fc-4ead-40fa-ef7b-4da8ce0655b4@suse.com> <80a512ac-d90e-930a-7ef7-8ebb5a80e801@bugseng.com> <968ba799-8fe4-e22f-b678-64e52f789026@suse.com> From: Roberto Bagnara Organization: BUGSENG srl In-Reply-To: <968ba799-8fe4-e22f-b678-64e52f789026@suse.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit On 07/06/23 09:39, Jan Beulich wrote: > On 05.06.2023 15:26, Roberto Bagnara wrote: >> On 05/06/23 11:28, Jan Beulich wrote: >>> On 05.06.2023 07:28, Roberto Bagnara wrote: >> You are right: here are a few examples for U2: >> >> xen/arch/arm/cpuerrata.c:92.12-92.35: >> empty initializer list (ill-formed for the C99 standard, ISO/IEC 9899:1999 Section 6.7.8: "An empty initialization list." [STD.emptinit]). Tool used is `/usr/bin/aarch64-linux-gnu-gcc-12' >> xen/include/xen/spinlock.h:31.21-31.23: expanded from macro `_LOCK_DEBUG' >> xen/include/xen/spinlock.h:143.57-143.67: expanded from macro `SPIN_LOCK_UNLOCKED' >> xen/include/xen/spinlock.h:144.43-144.60: expanded from macro `DEFINE_SPINLOCK' > > I'm afraid this is a bad example, as it goes hand-in-hand with using > another extension. I don't think using a non-empty initialization list > is going to work with > > union lock_debug { }; Yes, this is C99 undefined behavior 58: "A structure or union is defined as containing no named members (6.7.2.1)." Here is another example: lpae_t pte = {}; whereas we have typedef union { uint64_t bits; lpae_pt_t pt; lpae_p2m_t p2m; lpae_walk_t walk; } lpae_t; >> xen/arch/arm/cpuerrata.c:678.5-678.6: >> empty initializer list (ill-formed for the C99 standard, ISO/IEC 9899:1999 Section 6.7.8: "An empty initialization list." [STD.emptinit]). Tool used is `/usr/bin/aarch64-linux-gnu-gcc-12' >> >> xen/arch/arm/cpufeature.c:33.5-33.6: >> empty initializer list (ill-formed for the C99 standard, ISO/IEC 9899:1999 Section 6.7.8: "An empty initialization list." [STD.emptinit]). Tool used is `/usr/bin/aarch64-linux-gnu-gcc-12' > > Both of these are a common idiom we use: The "sentinel" of an array > of compound type initializer. Wouldn't it be possible writing such sentinels in a standard-compliant way, like {0} or similar, instead of {}? >>>> U6) Empty declarations. >> >> Examples: >> >> xen/arch/arm/arm64/lib/find_next_bit.c:57.29: >> empty declaration (ill-formed for the C99 standard, ISO/IEC 9899:1999 Section 6.7: "An empty declaration." [STD.emptdecl]). Tool used is `/usr/bin/aarch64-linux-gnu-gcc-12' >> >> xen/arch/arm/arm64/lib/find_next_bit.c:103.34: >> empty declaration (ill-formed for the C99 standard, ISO/IEC 9899:1999 Section 6.7: "An empty declaration." [STD.emptdecl]). Tool used is `/usr/bin/aarch64-linux-gnu-gcc-12' > > Looks like these could be taken care of by finally purging our > EXPORT_SYMBOL() stub. > >> xen/arch/arm/include/asm/vreg.h:143.26: >> empty declaration (ill-formed for the C99 standard, ISO/IEC 9899:1999 Section 6.7: "An empty declaration." [STD.emptdecl]). Tool used is `/usr/bin/aarch64-linux-gnu-gcc-12' >> >> xen/arch/arm/include/asm/vreg.h:144.26: >> empty declaration (ill-formed for the C99 standard, ISO/IEC 9899:1999 Section 6.7: "An empty declaration." [STD.emptdecl]). Tool used is `/usr/bin/aarch64-linux-gnu-gcc-12' > > I'm having trouble spotting anything suspicious there. The macro expands to definitions of inline functions and after the macro invocation there is a ";". The preprocessed code is then: static inline void foo() { ... } ; where the final ";" is an empty declaration not allowed by the C99 language standard. Removing the ";" after the macro invocation is a possible solution, but other possibilities exist if this is strongly unwanted. We are preparing a new list in RST format, which would go under docs/misra and constitute a more convenient way for the community to take note of the used extensions and contribute to the discussion about their adequacy. From xen-devel-bounces@lists.xenproject.org Thu Jun 08 13:59:39 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 08 Jun 2023 13:59:39 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545300.851651 (Exim 4.92) (envelope-from ) id 1q7GAk-0001YV-4X; Thu, 08 Jun 2023 13:59:30 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545300.851651; Thu, 08 Jun 2023 13:59:30 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7GAk-0001YO-1R; Thu, 08 Jun 2023 13:59:30 +0000 Received: by outflank-mailman (input) for mailman id 545300; Thu, 08 Jun 2023 13:59:28 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7GAi-0001YD-2k for xen-devel@lists.xenproject.org; Thu, 08 Jun 2023 13:59:28 +0000 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by se1-gles-flk1.inumbo.com (Halon) with ESMTP id ac27c465-0604-11ee-8611-37d641c3527e; Thu, 08 Jun 2023 15:59:23 +0200 (CEST) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 5DE77AB6; Thu, 8 Jun 2023 07:00:08 -0700 (PDT) Received: from e125770.cambridge.arm.com (e125770.arm.com [10.1.199.1]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id D5A413F6C4; Thu, 8 Jun 2023 06:59:21 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: ac27c465-0604-11ee-8611-37d641c3527e From: Luca Fancellu To: xen-devel@lists.xenproject.org Cc: bertrand.marquis@arm.com, wei.chen@arm.com, Wei Liu , Anthony PERARD , =?UTF-8?q?Marek=20Marczykowski-G=C3=B3recki?= , Andrew Cooper Subject: [PATCH 1/2] tools: Fix ifdef for aarch64 that should include also arm Date: Thu, 8 Jun 2023 14:59:12 +0100 Message-Id: <20230608135913.560413-1-luca.fancellu@arm.com> X-Mailer: git-send-email 2.34.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Commit 56a7aaa16bfe introduced some SVE related code that is protected by '#if defined(__aarch64__)', the issue is that this doesn't take into consideration when the toolstack is compiled for an arm32 Dom0 running on an arm64 platform, it should be able to create SVE enabled guests but with the current code it's not. So fix the issue by compiling the code when the toolstack is compiled for both arm32 and arm64. Fixes: 56a7aaa16bfe ("tools: add physinfo arch_capabilities handling for Arm") Signed-off-by: Luca Fancellu Reported-by: Andrew Cooper --- tools/include/xen-tools/arm-arch-capabilities.h | 2 +- tools/python/xen/lowlevel/xc/xc.c | 2 +- tools/xl/xl_info.c | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/tools/include/xen-tools/arm-arch-capabilities.h b/tools/include/xen-tools/arm-arch-capabilities.h index 3849e897925d..4aa4c6c34a99 100644 --- a/tools/include/xen-tools/arm-arch-capabilities.h +++ b/tools/include/xen-tools/arm-arch-capabilities.h @@ -14,7 +14,7 @@ static inline unsigned int arch_capabilities_arm_sve(unsigned int arch_capabilities) { -#if defined(__aarch64__) +#if defined(__arm__) || defined(__aarch64__) unsigned int sve_vl = MASK_EXTR(arch_capabilities, XEN_SYSCTL_PHYSCAP_ARM_SVE_MASK); diff --git a/tools/python/xen/lowlevel/xc/xc.c b/tools/python/xen/lowlevel/xc/xc.c index 491e88977fd3..e14e223ec903 100644 --- a/tools/python/xen/lowlevel/xc/xc.c +++ b/tools/python/xen/lowlevel/xc/xc.c @@ -911,7 +911,7 @@ static PyObject *pyxc_physinfo(XcObject *self) "hw_caps", cpu_cap, "virt_caps", virt_caps); -#if defined(__aarch64__) +#if defined(__arm__) || defined(__aarch64__) if ( objret ) { unsigned int sve_vl_bits; PyObject *py_arm_sve_vl; diff --git a/tools/xl/xl_info.c b/tools/xl/xl_info.c index ddc42f96b979..72e87eac46d1 100644 --- a/tools/xl/xl_info.c +++ b/tools/xl/xl_info.c @@ -226,7 +226,7 @@ static void output_physinfo(void) ); /* Print arm SVE vector length only on ARM platforms */ -#if defined(__aarch64__) +#if defined(__arm__) || defined(__aarch64__) maybe_printf("arm_sve_vector_length : %u\n", arch_capabilities_arm_sve(info.arch_capabilities) ); -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 08 13:59:39 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 08 Jun 2023 13:59:39 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545301.851655 (Exim 4.92) (envelope-from ) id 1q7GAk-0001bN-Co; Thu, 08 Jun 2023 13:59:30 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545301.851655; Thu, 08 Jun 2023 13:59:30 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7GAk-0001aS-88; Thu, 08 Jun 2023 13:59:30 +0000 Received: by outflank-mailman (input) for mailman id 545301; Thu, 08 Jun 2023 13:59:28 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7GAi-0001YD-9j for xen-devel@lists.xenproject.org; Thu, 08 Jun 2023 13:59:28 +0000 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by se1-gles-flk1.inumbo.com (Halon) with ESMTP id acdd517b-0604-11ee-8611-37d641c3527e; Thu, 08 Jun 2023 15:59:24 +0200 (CEST) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 8F7491042; Thu, 8 Jun 2023 07:00:09 -0700 (PDT) Received: from e125770.cambridge.arm.com (e125770.arm.com [10.1.199.1]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 14D2F3F6C4; Thu, 8 Jun 2023 06:59:22 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: acdd517b-0604-11ee-8611-37d641c3527e From: Luca Fancellu To: xen-devel@lists.xenproject.org Cc: bertrand.marquis@arm.com, wei.chen@arm.com, =?UTF-8?q?Marek=20Marczykowski-G=C3=B3recki?= , Wei Liu , Anthony PERARD , Andrew Cooper Subject: [PATCH 2/2] tools/python: Fix memory leak on error path Date: Thu, 8 Jun 2023 14:59:13 +0100 Message-Id: <20230608135913.560413-2-luca.fancellu@arm.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20230608135913.560413-1-luca.fancellu@arm.com> References: <20230608135913.560413-1-luca.fancellu@arm.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Commit 56a7aaa16bfe introduced a memory leak on the error path for a Py_BuildValue built object that on some newly introduced error path has not the correct reference count handling, fix that by decrementing the refcount in these path. Fixes: 56a7aaa16bfe ("tools: add physinfo arch_capabilities handling for Arm") Signed-off-by: Luca Fancellu Reported-by: Andrew Cooper --- tools/python/xen/lowlevel/xc/xc.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/tools/python/xen/lowlevel/xc/xc.c b/tools/python/xen/lowlevel/xc/xc.c index e14e223ec903..d3ea350e07b9 100644 --- a/tools/python/xen/lowlevel/xc/xc.c +++ b/tools/python/xen/lowlevel/xc/xc.c @@ -919,11 +919,16 @@ static PyObject *pyxc_physinfo(XcObject *self) sve_vl_bits = arch_capabilities_arm_sve(pinfo.arch_capabilities); py_arm_sve_vl = PyLong_FromUnsignedLong(sve_vl_bits); - if ( !py_arm_sve_vl ) + if ( !py_arm_sve_vl ) { + Py_DECREF(objret); return NULL; + } - if( PyDict_SetItemString(objret, "arm_sve_vl", py_arm_sve_vl) ) + if( PyDict_SetItemString(objret, "arm_sve_vl", py_arm_sve_vl) ) { + Py_DECREF(py_arm_sve_vl); + Py_DECREF(objret); return NULL; + } } #endif -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 08 14:03:40 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 08 Jun 2023 14:03:40 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545312.851670 (Exim 4.92) (envelope-from ) id 1q7GEk-0003db-Rw; Thu, 08 Jun 2023 14:03:38 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545312.851670; Thu, 08 Jun 2023 14:03:38 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7GEk-0003dU-PC; Thu, 08 Jun 2023 14:03:38 +0000 Received: by outflank-mailman (input) for mailman id 545312; Thu, 08 Jun 2023 14:03:37 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7GEj-0003dO-GO for xen-devel@lists.xenproject.org; Thu, 08 Jun 2023 14:03:37 +0000 Received: from smtp-out1.suse.de (smtp-out1.suse.de [195.135.220.28]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 42b68ee0-0605-11ee-b232-6b7b168915f2; Thu, 08 Jun 2023 16:03:36 +0200 (CEST) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by smtp-out1.suse.de (Postfix) with ESMTPS id 921EA21A14; Thu, 8 Jun 2023 14:03:35 +0000 (UTC) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id 1B625138E6; Thu, 8 Jun 2023 14:03:35 +0000 (UTC) Received: from dovecot-director2.suse.de ([192.168.254.65]) by imap2.suse-dmz.suse.de with ESMTPSA id 21U+BbffgWRCbwAAMHmgww (envelope-from ); Thu, 08 Jun 2023 14:03:35 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 42b68ee0-0605-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1; t=1686233015; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version: content-transfer-encoding:content-transfer-encoding; bh=xLZHfs84yXjkQpWBr2AnjtulNIQynm+15xDEC6bGzuQ=; b=B1BzVMJKO7TeqDYmcc2zaHSMN6eIb/lygNZttFSrSJoMUQLDWuQmBUvxa3GM+u6Ar6tK8D fxHuEZv/8kO6nBmS7dq40Wp9OJc49L42sD6N3s2LIzcNQx7M1ECOJ0ObJASujCtaIrUlpM 8COeN5AFtNL1FH3j3PVvtFzlinSONV0= From: Juergen Gross To: linux-kernel@vger.kernel.org, x86@kernel.org, virtualization@lists.linux-foundation.org, kvm@vger.kernel.org Cc: Juergen Gross , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , "H. Peter Anvin" , "Srivatsa S. Bhat (VMware)" , Alexey Makhalov , VMware PV-Drivers Reviewers , Paolo Bonzini , Wanpeng Li , Vitaly Kuznetsov , Boris Ostrovsky , xen-devel@lists.xenproject.org Subject: [RFC PATCH 0/3] x86/paravirt: Get rid of paravirt patching Date: Thu, 8 Jun 2023 16:03:30 +0200 Message-Id: <20230608140333.4083-1-jgross@suse.com> X-Mailer: git-send-email 2.35.3 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit This is a small series getting rid of paravirt patching by switching completely to alternative patching for the same functionality. The basic idea is to add the capability to switch from indirect to direct calls via a special alternative patching option. This removes _some_ of the paravirt macro maze, but most of it needs to stay due to the need of hiding the call instructions from the compiler in order to avoid needless register save/restore. What is going away is the nasty stacking of alternative and paravirt patching and (of course) the special .parainstructions linker section. I have tested the series on bare metal and as Xen PV domain to still work. RFC because I'm quite sure there will be some objtool work needed (at least removing the specific paravirt handling). Juergen Gross (3): x86/paravirt: move some functions and defines to alternative x86/alternative: add indirect call patching x86/paravirt: switch mixed paravirt/alternative calls to alternative_2 arch/x86/include/asm/alternative.h | 26 +++++- arch/x86/include/asm/paravirt.h | 39 ++------- arch/x86/include/asm/paravirt_types.h | 68 +++------------- arch/x86/include/asm/qspinlock_paravirt.h | 4 +- arch/x86/include/asm/text-patching.h | 12 --- arch/x86/kernel/alternative.c | 99 +++++++++++------------ arch/x86/kernel/callthunks.c | 17 ++-- arch/x86/kernel/kvm.c | 4 +- arch/x86/kernel/module.c | 20 ++--- arch/x86/kernel/paravirt.c | 54 ++----------- arch/x86/kernel/vmlinux.lds.S | 13 --- arch/x86/tools/relocs.c | 2 +- arch/x86/xen/irq.c | 2 +- 13 files changed, 111 insertions(+), 249 deletions(-) -- 2.35.3 From xen-devel-bounces@lists.xenproject.org Thu Jun 08 14:03:44 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 08 Jun 2023 14:03:44 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545313.851681 (Exim 4.92) (envelope-from ) id 1q7GEq-0003u5-4G; Thu, 08 Jun 2023 14:03:44 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545313.851681; Thu, 08 Jun 2023 14:03:44 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7GEp-0003ty-W1; Thu, 08 Jun 2023 14:03:43 +0000 Received: by outflank-mailman (input) for mailman id 545313; Thu, 08 Jun 2023 14:03:42 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7GEo-0003dO-Gy for xen-devel@lists.xenproject.org; Thu, 08 Jun 2023 14:03:42 +0000 Received: from smtp-out2.suse.de (smtp-out2.suse.de [195.135.220.29]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 461cc15d-0605-11ee-b232-6b7b168915f2; Thu, 08 Jun 2023 16:03:41 +0200 (CEST) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by smtp-out2.suse.de (Postfix) with ESMTPS id 7F8181FDE2; Thu, 8 Jun 2023 14:03:41 +0000 (UTC) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id 08836138E6; Thu, 8 Jun 2023 14:03:41 +0000 (UTC) Received: from dovecot-director2.suse.de ([192.168.254.65]) by imap2.suse-dmz.suse.de with ESMTPSA id MiimAL3fgWRNbwAAMHmgww (envelope-from ); Thu, 08 Jun 2023 14:03:41 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 461cc15d-0605-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1; t=1686233021; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=fp+OTBD+PsAVny4MElvFbEiEkBxBNl/baVO5isnQtoY=; b=ss+xsdVYTfzXmgQT3XdqGS/n+mYezJ8tevviSy1LBm5I7FKYytbnw4qdZSV0S0nhLPzCwc r0RFzytmT/nYEHOtN8dSd0B5R1ZzitdLseYUDklOwS2Txz8xg1sagZuhO5aMjML//jglki lbD8FJk1g4v56KFLmLBpLOdjxh+YoYs= From: Juergen Gross To: linux-kernel@vger.kernel.org, x86@kernel.org, virtualization@lists.linux-foundation.org, kvm@vger.kernel.org Cc: Juergen Gross , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , "H. Peter Anvin" , "Srivatsa S. Bhat (VMware)" , Alexey Makhalov , VMware PV-Drivers Reviewers , Paolo Bonzini , Wanpeng Li , Vitaly Kuznetsov , Boris Ostrovsky , xen-devel@lists.xenproject.org Subject: [RFC PATCH 1/3] x86/paravirt: move some functions and defines to alternative Date: Thu, 8 Jun 2023 16:03:31 +0200 Message-Id: <20230608140333.4083-2-jgross@suse.com> X-Mailer: git-send-email 2.35.3 In-Reply-To: <20230608140333.4083-1-jgross@suse.com> References: <20230608140333.4083-1-jgross@suse.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit As a preparation for replacing paravirt patching completely by alternative patching, move some backend functions and #defines to alternative code and header. Signed-off-by: Juergen Gross --- arch/x86/include/asm/alternative.h | 16 ++++++++++++ arch/x86/include/asm/paravirt.h | 12 --------- arch/x86/include/asm/paravirt_types.h | 4 +-- arch/x86/include/asm/qspinlock_paravirt.h | 4 +-- arch/x86/kernel/alternative.c | 10 ++++++++ arch/x86/kernel/kvm.c | 4 +-- arch/x86/kernel/paravirt.c | 30 +++++++---------------- arch/x86/xen/irq.c | 2 +- 8 files changed, 41 insertions(+), 41 deletions(-) diff --git a/arch/x86/include/asm/alternative.h b/arch/x86/include/asm/alternative.h index d7da28fada87..a5a4944ce5d1 100644 --- a/arch/x86/include/asm/alternative.h +++ b/arch/x86/include/asm/alternative.h @@ -335,6 +335,22 @@ static inline int alternatives_text_reserved(void *start, void *end) */ #define ASM_NO_INPUT_CLOBBER(clbr...) "i" (0) : clbr +/* Macro for creating assembler functions avoiding any C magic. */ +#define DEFINE_ASM_FUNC(func, instr, sec) \ + asm (".pushsection " #sec ", \"ax\"\n" \ + ".global " #func "\n\t" \ + ".type " #func ", @function\n\t" \ + ASM_FUNC_ALIGN "\n" \ + #func ":\n\t" \ + ASM_ENDBR \ + instr "\n\t" \ + ASM_RET \ + ".size " #func ", . - " #func "\n\t" \ + ".popsection") + +void x86_BUG(void); +void x86_nop(void); + #else /* __ASSEMBLY__ */ #ifdef CONFIG_SMP diff --git a/arch/x86/include/asm/paravirt.h b/arch/x86/include/asm/paravirt.h index b49778664d2b..3474dac4607d 100644 --- a/arch/x86/include/asm/paravirt.h +++ b/arch/x86/include/asm/paravirt.h @@ -726,18 +726,6 @@ static __always_inline unsigned long arch_local_irq_save(void) #undef PVOP_VCALL4 #undef PVOP_CALL4 -#define DEFINE_PARAVIRT_ASM(func, instr, sec) \ - asm (".pushsection " #sec ", \"ax\"\n" \ - ".global " #func "\n\t" \ - ".type " #func ", @function\n\t" \ - ASM_FUNC_ALIGN "\n" \ - #func ":\n\t" \ - ASM_ENDBR \ - instr "\n\t" \ - ASM_RET \ - ".size " #func ", . - " #func "\n\t" \ - ".popsection") - extern void default_banner(void); #else /* __ASSEMBLY__ */ diff --git a/arch/x86/include/asm/paravirt_types.h b/arch/x86/include/asm/paravirt_types.h index 4acbcddddc29..fe58f1882e9c 100644 --- a/arch/x86/include/asm/paravirt_types.h +++ b/arch/x86/include/asm/paravirt_types.h @@ -557,8 +557,6 @@ void paravirt_enter_lazy_mmu(void); void paravirt_leave_lazy_mmu(void); void paravirt_flush_lazy_mmu(void); -void _paravirt_nop(void); -void paravirt_BUG(void); unsigned long paravirt_ret0(void); #ifdef CONFIG_PARAVIRT_XXL u64 _paravirt_ident_64(u64); @@ -568,7 +566,7 @@ void pv_native_irq_enable(void); unsigned long pv_native_read_cr2(void); #endif -#define paravirt_nop ((void *)_paravirt_nop) +#define paravirt_nop ((void *)x86_nop) extern struct paravirt_patch_site __parainstructions[], __parainstructions_end[]; diff --git a/arch/x86/include/asm/qspinlock_paravirt.h b/arch/x86/include/asm/qspinlock_paravirt.h index 42b17cf10b10..2189b3379b1c 100644 --- a/arch/x86/include/asm/qspinlock_paravirt.h +++ b/arch/x86/include/asm/qspinlock_paravirt.h @@ -54,8 +54,8 @@ __PV_CALLEE_SAVE_REGS_THUNK(__pv_queued_spin_unlock_slowpath, ".spinlock.text"); "pop %rdx\n\t" \ FRAME_END -DEFINE_PARAVIRT_ASM(__raw_callee_save___pv_queued_spin_unlock, - PV_UNLOCK_ASM, .spinlock.text); +DEFINE_ASM_FUNC(__raw_callee_save___pv_queued_spin_unlock, + PV_UNLOCK_ASM, .spinlock.text); #else /* CONFIG_64BIT */ diff --git a/arch/x86/kernel/alternative.c b/arch/x86/kernel/alternative.c index f615e0cb6d93..b7c70479fe58 100644 --- a/arch/x86/kernel/alternative.c +++ b/arch/x86/kernel/alternative.c @@ -253,6 +253,16 @@ static void __init_or_module noinline optimize_nops(u8 *instr, size_t len) } } +/* Low-level backend functions usable from alternative code replacements. */ +DEFINE_ASM_FUNC(x86_nop, "", .entry.text); +EXPORT_SYMBOL_GPL(x86_nop); + +noinstr void x86_BUG(void) +{ + BUG(); +} +EXPORT_SYMBOL_GPL(x86_BUG); + /* * Replace instructions with better alternatives for this CPU type. This runs * before SMP is initialized to avoid SMP problems with self modifying code. diff --git a/arch/x86/kernel/kvm.c b/arch/x86/kernel/kvm.c index 1cceac5984da..d025fc630115 100644 --- a/arch/x86/kernel/kvm.c +++ b/arch/x86/kernel/kvm.c @@ -803,8 +803,8 @@ extern bool __raw_callee_save___kvm_vcpu_is_preempted(long); "cmpb $0, " __stringify(KVM_STEAL_TIME_preempted) "+steal_time(%rax)\n\t" \ "setne %al\n\t" -DEFINE_PARAVIRT_ASM(__raw_callee_save___kvm_vcpu_is_preempted, - PV_VCPU_PREEMPTED_ASM, .text); +DEFINE_ASM_FUNC(__raw_callee_save___kvm_vcpu_is_preempted, + PV_VCPU_PREEMPTED_ASM, .text); #endif static void __init kvm_guest_init(void) diff --git a/arch/x86/kernel/paravirt.c b/arch/x86/kernel/paravirt.c index ac10b46c5832..dfad56679f88 100644 --- a/arch/x86/kernel/paravirt.c +++ b/arch/x86/kernel/paravirt.c @@ -34,14 +34,8 @@ #include #include -/* - * nop stub, which must not clobber anything *including the stack* to - * avoid confusing the entry prologues. - */ -DEFINE_PARAVIRT_ASM(_paravirt_nop, "", .entry.text); - /* stub always returning 0. */ -DEFINE_PARAVIRT_ASM(paravirt_ret0, "xor %eax,%eax", .entry.text); +DEFINE_ASM_FUNC(paravirt_ret0, "xor %eax,%eax", .entry.text); void __init default_banner(void) { @@ -49,12 +43,6 @@ void __init default_banner(void) pv_info.name); } -/* Undefined instruction for dealing with missing ops pointers. */ -noinstr void paravirt_BUG(void) -{ - BUG(); -} - static unsigned paravirt_patch_call(void *insn_buff, const void *target, unsigned long addr, unsigned len) { @@ -64,11 +52,11 @@ static unsigned paravirt_patch_call(void *insn_buff, const void *target, } #ifdef CONFIG_PARAVIRT_XXL -DEFINE_PARAVIRT_ASM(_paravirt_ident_64, "mov %rdi, %rax", .text); -DEFINE_PARAVIRT_ASM(pv_native_save_fl, "pushf; pop %rax", .noinstr.text); -DEFINE_PARAVIRT_ASM(pv_native_irq_disable, "cli", .noinstr.text); -DEFINE_PARAVIRT_ASM(pv_native_irq_enable, "sti", .noinstr.text); -DEFINE_PARAVIRT_ASM(pv_native_read_cr2, "mov %cr2, %rax", .noinstr.text); +DEFINE_ASM_FUNC(_paravirt_ident_64, "mov %rdi, %rax", .text); +DEFINE_ASM_FUNC(pv_native_save_fl, "pushf; pop %rax", .noinstr.text); +DEFINE_ASM_FUNC(pv_native_irq_disable, "cli", .noinstr.text); +DEFINE_ASM_FUNC(pv_native_irq_enable, "sti", .noinstr.text); +DEFINE_ASM_FUNC(pv_native_read_cr2, "mov %cr2, %rax", .noinstr.text); #endif DEFINE_STATIC_KEY_TRUE(virt_spin_lock_key); @@ -90,9 +78,9 @@ unsigned int paravirt_patch(u8 type, void *insn_buff, unsigned long addr, unsigned ret; if (opfunc == NULL) - /* If there's no function, patch it with paravirt_BUG() */ - ret = paravirt_patch_call(insn_buff, paravirt_BUG, addr, len); - else if (opfunc == _paravirt_nop) + /* If there's no function, patch it with x86_BUG() */ + ret = paravirt_patch_call(insn_buff, x86_BUG, addr, len); + else if (opfunc == x86_nop) ret = 0; else /* Otherwise call the function. */ diff --git a/arch/x86/xen/irq.c b/arch/x86/xen/irq.c index 6092fea7d651..5d132f5a5d7d 100644 --- a/arch/x86/xen/irq.c +++ b/arch/x86/xen/irq.c @@ -45,7 +45,7 @@ static const typeof(pv_ops) xen_irq_ops __initconst = { /* Initial interrupt flag handling only called while interrupts off. */ .save_fl = __PV_IS_CALLEE_SAVE(paravirt_ret0), .irq_disable = __PV_IS_CALLEE_SAVE(paravirt_nop), - .irq_enable = __PV_IS_CALLEE_SAVE(paravirt_BUG), + .irq_enable = __PV_IS_CALLEE_SAVE(x86_BUG), .safe_halt = xen_safe_halt, .halt = xen_halt, -- 2.35.3 From xen-devel-bounces@lists.xenproject.org Thu Jun 08 14:05:48 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 08 Jun 2023 14:05:48 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545323.851690 (Exim 4.92) (envelope-from ) id 1q7GGc-0004pA-Jc; Thu, 08 Jun 2023 14:05:34 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545323.851690; Thu, 08 Jun 2023 14:05:34 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7GGc-0004p3-Gt; Thu, 08 Jun 2023 14:05:34 +0000 Received: by outflank-mailman (input) for mailman id 545323; Thu, 08 Jun 2023 14:05:33 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7GGb-0004or-Cf; Thu, 08 Jun 2023 14:05:33 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7GGb-0005TQ-71; Thu, 08 Jun 2023 14:05:33 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7GGa-0005u0-NQ; Thu, 08 Jun 2023 14:05:32 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q7GGa-0002yj-Mu; Thu, 08 Jun 2023 14:05:32 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=XjMdNUge+n/HIffO6vJRv2K/9iLLii4a6v6K0xnLqzQ=; b=becdedHWkkEC7etfWvZVceKK30 bJxX+TYfFdq8pI4hLGQXoIGmGcC+8bzqG4ve3tgLbVGMBe6y2pjhWesxZHQOQPUX1LG+VbeLO5cSx Pdv+uT4P2sHqwAAqCelcFE67ZosljU0FraLqlQZXYuGoU5UsNt3SxuT/KMWbXW7Qhm7Q=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable test] 181290: tolerable FAIL X-Osstest-Failures: xen-unstable:test-amd64-i386-xl-vhd:guest-start/debian.repeat:fail:heisenbug xen-unstable:test-amd64-i386-libvirt-pair:xen-install/dst_host:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking X-Osstest-Versions-This: xen=64a647f8d817c6989edc000613b5afae19f03f99 X-Osstest-Versions-That: xen=64a647f8d817c6989edc000613b5afae19f03f99 From: osstest service owner Date: Thu, 08 Jun 2023 14:05:32 +0000 flight 181290 xen-unstable real [real] http://logs.test-lab.xenproject.org/osstest/logs/181290/ Failures :-/ but no regressions. Tests which are failing intermittently (not blocking): test-amd64-i386-xl-vhd 21 guest-start/debian.repeat fail pass in 181261 Tests which did not succeed, but are not blocking: test-amd64-i386-libvirt-pair 11 xen-install/dst_host fail in 181261 like 181243 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 181261 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop fail like 181261 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 181261 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 181261 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop fail like 181261 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop fail like 181261 test-armhf-armhf-libvirt 16 saverestore-support-check fail like 181261 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail like 181261 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail like 181261 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 181261 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop fail like 181261 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 181261 test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-i386-xl-pvshim 14 guest-start fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-i386-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-armhf-armhf-xl-multivcpu 15 migrate-support-check fail never pass test-armhf-armhf-xl-multivcpu 16 saverestore-support-check fail never pass test-amd64-i386-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-xl 15 migrate-support-check fail never pass test-armhf-armhf-xl 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass test-amd64-i386-libvirt 15 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 15 saverestore-support-check fail never pass test-armhf-armhf-xl-credit2 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit2 16 saverestore-support-check fail never pass test-armhf-armhf-xl-arndale 15 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt 15 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 15 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail never pass version targeted for testing: xen 64a647f8d817c6989edc000613b5afae19f03f99 baseline version: xen 64a647f8d817c6989edc000613b5afae19f03f99 Last test of basis 181290 2023-06-08 02:39:11 Z 0 days Testing same since (not found) 0 attempts jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64-xtf pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-prev pass build-i386-prev pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-xtf-amd64-amd64-1 pass test-xtf-amd64-amd64-2 pass test-xtf-amd64-amd64-3 pass test-xtf-amd64-amd64-4 pass test-xtf-amd64-amd64-5 pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl pass test-amd64-i386-xl pass test-amd64-coresched-i386-xl pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-i386-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-i386-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-i386-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-i386-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-i386-qemut-rhel6hvm-amd pass test-amd64-i386-qemuu-rhel6hvm-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-i386-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-freebsd10-amd64 pass test-amd64-amd64-qemuu-freebsd11-amd64 pass test-amd64-amd64-qemuu-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-i386-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-i386-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-i386-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-amd64-i386-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale pass test-amd64-amd64-examine-bios pass test-amd64-i386-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 pass test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 pass test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine pass test-amd64-i386-examine pass test-amd64-i386-freebsd10-i386 pass test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-i386-qemut-rhel6hvm-intel pass test-amd64-i386-qemuu-rhel6hvm-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt pass test-amd64-i386-libvirt pass test-amd64-amd64-livepatch pass test-amd64-i386-livepatch pass test-amd64-amd64-migrupgrade pass test-amd64-i386-migrupgrade pass test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu pass test-amd64-amd64-pair pass test-amd64-i386-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-i386-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-i386-xl-pvshim fail test-amd64-amd64-pygrub pass test-armhf-armhf-libvirt-qcow2 pass test-amd64-amd64-xl-qcow2 pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw pass test-amd64-i386-libvirt-raw pass test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds pass test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-amd64-i386-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-i386-examine-uefi pass test-amd64-amd64-libvirt-vhd pass test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd pass test-amd64-i386-xl-vhd fail ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Published tested tree is already up to date. From xen-devel-bounces@lists.xenproject.org Thu Jun 08 14:41:29 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 08 Jun 2023 14:41:29 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545332.851706 (Exim 4.92) (envelope-from ) id 1q7GpD-0000ic-DI; Thu, 08 Jun 2023 14:41:19 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545332.851706; Thu, 08 Jun 2023 14:41:19 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7GpD-0000iV-A6; Thu, 08 Jun 2023 14:41:19 +0000 Received: by outflank-mailman (input) for mailman id 545332; Thu, 08 Jun 2023 14:41:18 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7GpC-0000iL-75; Thu, 08 Jun 2023 14:41:18 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7GpC-0006KZ-0p; Thu, 08 Jun 2023 14:41:18 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7GpB-0006gc-N7; Thu, 08 Jun 2023 14:41:17 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q7GpB-0002vF-Mh; Thu, 08 Jun 2023 14:41:17 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=M5WEiPdlAcFbgBaVzslPot4OSMMkdc1rrMzRyip0N0I=; b=OE1JLp+lHPWkXRlAVMi8KZmZMe ZEks8usDchi0eyDtR/+cMLCj/Bqlj9s5LA92mNqh5hGcVw9L3RUzNOhiwkknzQUPn1qZSnONNSNcK PVmtmExnDj+ksEJnS1KYkv1gTjGbOUev8BlDxKKnJEDZpRjWzf4OOZdH6fYd3Xb8XZIU=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable-smoke test] 181307: regressions - FAIL X-Osstest-Failures: xen-unstable-smoke:build-arm64-xsm:xen-build:fail:regression xen-unstable-smoke:build-armhf:xen-build:fail:regression xen-unstable-smoke:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking xen-unstable-smoke:test-armhf-armhf-xl:build-check(1):blocked:nonblocking xen-unstable-smoke:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking X-Osstest-Versions-This: xen=6915a120641b5d232762af7882266048cf039ca0 X-Osstest-Versions-That: xen=64a647f8d817c6989edc000613b5afae19f03f99 From: osstest service owner Date: Thu, 08 Jun 2023 14:41:17 +0000 flight 181307 xen-unstable-smoke real [real] http://logs.test-lab.xenproject.org/osstest/logs/181307/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-arm64-xsm 6 xen-build fail REGR. vs. 181233 build-armhf 6 xen-build fail REGR. vs. 181233 Tests which did not succeed, but are not blocking: test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 15 migrate-support-check fail never pass version targeted for testing: xen 6915a120641b5d232762af7882266048cf039ca0 baseline version: xen 64a647f8d817c6989edc000613b5afae19f03f99 Last test of basis 181233 2023-06-07 02:04:37 Z 1 days Failing since 181246 2023-06-07 11:02:03 Z 1 days 13 attempts Testing same since 181303 2023-06-08 11:00:25 Z 0 days 2 attempts ------------------------------------------------------------ People who touched revisions under test: Andrew Cooper Christian Lindig George Dunlap Henry Wang # CHANGELOG Juergen Gross Julien Grall Luca Fancellu Michal Orzel Roger Pau Monne Roger Pau Monné Stefano Stabellini jobs: build-arm64-xsm fail build-amd64 pass build-armhf fail build-amd64-libvirt pass test-armhf-armhf-xl blocked test-arm64-arm64-xl-xsm blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-libvirt pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 504 lines long.) From xen-devel-bounces@lists.xenproject.org Thu Jun 08 15:20:15 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 08 Jun 2023 15:20:15 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545339.851717 (Exim 4.92) (envelope-from ) id 1q7HQi-0004i3-DD; Thu, 08 Jun 2023 15:20:04 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545339.851717; Thu, 08 Jun 2023 15:20:04 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7HQi-0004hZ-8d; Thu, 08 Jun 2023 15:20:04 +0000 Received: by outflank-mailman (input) for mailman id 545339; Thu, 08 Jun 2023 15:20:03 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7HQh-0004Ma-9i for xen-devel@lists.xenproject.org; Thu, 08 Jun 2023 15:20:03 +0000 Received: from alpha.anastas.io (alpha.anastas.io [104.248.188.109]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id ee79bcee-060f-11ee-8611-37d641c3527e; Thu, 08 Jun 2023 17:20:00 +0200 (CEST) Received: from authenticated-user (alpha.anastas.io [104.248.188.109]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by alpha.anastas.io (Postfix) with ESMTPSA id 4234C3F08A; Thu, 8 Jun 2023 08:19:57 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: ee79bcee-060f-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=anastas.io; s=mail; t=1686237597; bh=MEdMrtrEbaXEOTDN5wW9v1iuRb0aqWvv9PeE0L9i3GI=; h=Date:Subject:From:To:Cc:References:In-Reply-To:From; b=aPsNXl0gLpgW6RkF5gqseAhubFsHeUdRpP1oHDCByZb/0TFTNN0trc6pub/Ti8+7T Hm5nh3M2WrWoOWQ8D4kS0Z/it/umuiUPFsbJNB/VVvFmSDPcxOafd4yWXhMQ7VZz1q I/BvxkXi7CRildBUDXMNMgKLp7eJeSv76SyxuTInb9AE1RsvzD188Ush6JvDD6/2/k VxyjwZZ1HRT7ViMR5rzOPphtp3N0rf/R6dacV6/9UECnH9iRohNxgtRxLb/U3lmnSR ie1+uMrd8cxLd3zNv0f1vpB37OXQVBYxZoGjvtnoEb9KaYxyUMe6owC2ik0AzVyWmA KRrEaFU3FDRgg== Mime-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=UTF-8 Date: Thu, 08 Jun 2023 10:19:56 -0500 Message-Id: Subject: Re: [PATCH 0/3] Initial support for Power From: "Shawn Anastasio" To: "Andrew Cooper" , Cc: , "George Dunlap" , "Jan Beulich" , "Julien Grall" , "Stefano Stabellini" , "Wei Liu" References: <704339f1-4103-62ad-49f8-b7df1fc8b7de@citrix.com> In-Reply-To: <704339f1-4103-62ad-49f8-b7df1fc8b7de@citrix.com> On Wed Jun 7, 2023 at 2:30 PM CDT, Andrew Cooper wrote: > Ok, in which case you probably want a first patch series doing: > > 1) New docker container (only - this wants to be taken early and set up > in CI) > 2) one-or-more initial build system + head.S infinite loop patch.=C2=A0 > Probably the maintainer patch too. > 3) Wiring the build(s) into build.yaml > > You'll want to join the https://gitlab.com/xen-project/ and I can set > you up with a place to run the full CI (we have a reasonably custom > setup which the communal runners don't like).=C2=A0 You may also want to = hang > out on oftc.org #xendevel=C2=A0 and/or the matrix bridge thereof. > > Then a second patch series doing early printk, and adding the smoke test > script and wiring it into test.yaml. Sounds good. I've gone ahead and requested access to that GitLab organization and will get to work on a series doing the things you've requested. P.S. It seems mail from my server is getting rejected by your server, so I'm unable to respond to you directly. Once I have access to my corporate email this should be resolved, but until then I'll reach out to you from a personal email address. Thanks. From xen-devel-bounces@lists.xenproject.org Thu Jun 08 15:23:28 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 08 Jun 2023 15:23:28 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545345.851726 (Exim 4.92) (envelope-from ) id 1q7HTp-0005hF-Ut; Thu, 08 Jun 2023 15:23:17 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545345.851726; Thu, 08 Jun 2023 15:23:17 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7HTp-0005h8-Rt; Thu, 08 Jun 2023 15:23:17 +0000 Received: by outflank-mailman (input) for mailman id 545345; Thu, 08 Jun 2023 15:23:17 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7HTo-0005h2-Rn for xen-devel@lists.xenproject.org; Thu, 08 Jun 2023 15:23:17 +0000 Received: from out4-smtp.messagingengine.com (out4-smtp.messagingengine.com [66.111.4.28]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 62749292-0610-11ee-b232-6b7b168915f2; Thu, 08 Jun 2023 17:23:15 +0200 (CEST) Received: from compute3.internal (compute3.nyi.internal [10.202.2.43]) by mailout.nyi.internal (Postfix) with ESMTP id 47EE85C01C4; Thu, 8 Jun 2023 11:23:13 -0400 (EDT) Received: from mailfrontend1 ([10.202.2.162]) by compute3.internal (MEProxy); Thu, 08 Jun 2023 11:23:13 -0400 Received: by mail.messagingengine.com (Postfix) with ESMTPA; Thu, 8 Jun 2023 11:23:12 -0400 (EDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 62749292-0610-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= invisiblethingslab.com; h=cc:cc:content-type:content-type:date :date:from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:sender:subject:subject:to:to; s=fm1; t= 1686237793; x=1686324193; bh=8NQR1QgWkz5FJshx76hkwpBKXiFIu2ZBcaz eZgfU2HU=; b=RNr33zvInGlHpMqFqPaWlax+/J8+13RX1z3cGoqD0m0mN6T9KFG uTT4/u3eB4me0Falzaq63/Eemzr1qJtHm5R4bTa8/r21DQf3Yy7mwtd6p44inMtv 0JFHYicLUv9e4toFh/H+7UvqWYmznpmzIV8bwPZGVgN1aAjulb6mWWGTf5WDsgkG rZwYYXi71/jw29GnspjgKa4nND6h73b7Z45UJ+V1JeDMzWDWboGXkrnkjvcMfrRv zLPcHRFbZ3s/gvU0VvNCzIiLatTypTI+C2CnkczM93CuSEorSSoiJSOIjD8Lkb3V yhBs5btMqhSesOtB0QYdVIDZfxKD7tLgL6w== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-type:content-type:date:date :feedback-id:feedback-id:from:from:in-reply-to:in-reply-to :message-id:mime-version:references:reply-to:sender:subject :subject:to:to:x-me-proxy:x-me-proxy:x-me-sender:x-me-sender :x-sasl-enc; s=fm1; t=1686237793; x=1686324193; bh=8NQR1QgWkz5FJ shx76hkwpBKXiFIu2ZBcazeZgfU2HU=; b=yqh6JQeZP2OslVaaN0b9gaJwAlpTD X84n2uEtVHFyB3O6aAGEmbiRHVdgmgZ1eZfw1LHyV/naZqMA4EWAQblH1eYvCfIp 1ILnCXQdTmPHGuBrkgAf4XOyMsdanOPcdhRJj3AgqmEBTNgHBZ6jW5o9mkBd78cP iQB6nWQxUxd58M93OJIJPp21F9ntgyYSSVlATbT34ifDAcfcHb4U4tRTbO3/ttRq 8ZoiGHF714dhLWiQSBSv3sFvK2s2f3O1uT5BZhKq/1jH3cxvVSj1tmIje4cfQl4N niXqwKld7slr8EPB4FvoLVPY6HzzBH+naNWCw/er4ElkDhh+l/n4pilOw== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvhedrgedtiedgkeejucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne cujfgurhepfffhvfevuffkfhggtggujgesghdtreertddtjeenucfhrhhomhepffgvmhhi ucforghrihgvucfqsggvnhhouhhruceouggvmhhisehinhhvihhsihgslhgvthhhihhngh hslhgrsgdrtghomheqnecuggftrfgrthhtvghrnhepvdejteegkefhteduhffgteffgeff gfduvdfghfffieefieekkedtheegteehffelnecuvehluhhsthgvrhfuihiivgeptdenuc frrghrrghmpehmrghilhhfrhhomhepuggvmhhisehinhhvihhsihgslhgvthhhihhnghhs lhgrsgdrtghomh X-ME-Proxy: Feedback-ID: iac594737:Fastmail Date: Thu, 8 Jun 2023 11:23:07 -0400 From: Demi Marie Obenour To: Roger Pau =?utf-8?B?TW9ubsOp?= Cc: Jens Axboe , Alasdair Kergon , Mike Snitzer , dm-devel@redhat.com, Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= , linux-block@vger.kernel.org, linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org Subject: Re: [PATCH v2 16/16] xen-blkback: Inform userspace that device has been opened Message-ID: References: <20230530203116.2008-1-demi@invisiblethingslab.com> <20230530203116.2008-17-demi@invisiblethingslab.com> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha512; protocol="application/pgp-signature"; boundary="PU98An8gDVvBtzYA" Content-Disposition: inline In-Reply-To: --PU98An8gDVvBtzYA Content-Type: text/plain; protected-headers=v1; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Date: Thu, 8 Jun 2023 11:23:07 -0400 From: Demi Marie Obenour To: Roger Pau =?utf-8?B?TW9ubsOp?= Cc: Jens Axboe , Alasdair Kergon , Mike Snitzer , dm-devel@redhat.com, Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= , linux-block@vger.kernel.org, linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org Subject: Re: [PATCH v2 16/16] xen-blkback: Inform userspace that device has been opened On Thu, Jun 08, 2023 at 11:11:44AM +0200, Roger Pau Monn=C3=A9 wrote: > On Wed, Jun 07, 2023 at 12:29:26PM -0400, Demi Marie Obenour wrote: > > On Wed, Jun 07, 2023 at 10:44:48AM +0200, Roger Pau Monn=C3=A9 wrote: > > > On Tue, Jun 06, 2023 at 01:31:25PM -0400, Demi Marie Obenour wrote: > > > > On Tue, Jun 06, 2023 at 11:15:37AM +0200, Roger Pau Monn=C3=A9 wrot= e: > > > > > On Tue, May 30, 2023 at 04:31:16PM -0400, Demi Marie Obenour wrot= e: > > > > > > Set "opened" to "0" before the hotplug script is called. Once = the > > > > > > device node has been opened, set "opened" to "1". > > > > > >=20 > > > > > > "opened" is used exclusively by userspace. It serves two purpo= ses: > > > > > >=20 > > > > > > 1. It tells userspace that the diskseq Xenstore entry is suppor= ted. > > > > > >=20 > > > > > > 2. It tells userspace that it can wait for "opened" to be set t= o 1. > > > > > > Once "opened" is 1, blkback has a reference to the device, so > > > > > > userspace doesn't need to keep one. > > > > > >=20 > > > > > > Together, these changes allow userspace to use block devices wi= th > > > > > > delete-on-close behavior, such as loop devices with the autocle= ar flag > > > > > > set or device-mapper devices with the deferred-remove flag set. > > > > >=20 > > > > > There was some work in the past to allow reloading blkback as a > > > > > module, it's clear that using delete-on-close won't work if attem= pting > > > > > to reload blkback. > > > >=20 > > > > Should blkback stop itself from being unloaded if delete-on-close i= s in > > > > use? > > >=20 > > > Hm, maybe. I guess that's the best we can do right now. > >=20 > > I=E2=80=99ll implement this. >=20 > Let's make this a separate patch. Good idea. > > > > > Isn't there some existing way to check whether a device is opened? > > > > > (stat syscall maybe?). > > > >=20 > > > > Knowing that the device has been opened isn=E2=80=99t enough. The = block script > > > > needs to be able to wait for blkback (and not something else) to op= en > > > > the device. Otherwise it will be confused if the device is opened = by > > > > e.g. udev. > > >=20 > > > Urg, no, the block script cannot wait indefinitely for blkback to open > > > the device, as it has an execution timeout. blkback is free to only > > > open the device upon guest frontend connection, and that (when using > > > libxl) requires the hotplug scripts execution to be finished so the > > > guest can be started. > >=20 > > I=E2=80=99m a bit confused here. My understanding is that blkdev_get_b= y_dev() > > already opens the device, and that happens in the xenstore watch > > handler. I have tested this with delete-on-close device-mapper devices, > > and it does work. >=20 > Right, but on a very contended system there's no guarantee of when > blkback will pick up the update to "physical-device" and open the > device, so far the block script only writes the physical-device node > and exits. With the proposed change the block script will also wait > for blkback to react to the physcal-device write, hence making VM > creation slower. Only block scripts that choose to wait for device open suffer this performance penalty. My current plan is to only do so for delete-on-close devices which are managed by the block script itself. Other devices will not suffer a performance hit. In the long term, I would like to solve this problem entirely by using an ioctl to configure blkback. The ioctl would take a file descriptor argument, avoiding the need for a round-trip through xenstore. This also solves a security annoyance with the current design, which is that the device is opened by a kernel thread and so the security context of whoever requested the device to be opened is lost. > > > > > I would like to avoid adding more xenstore blkback state if such > > > > > information can be fetched from other methods. > > > >=20 > > > > I don=E2=80=99t think it can be, unless the information is passed v= ia a > > > > completely different method. Maybe netlink(7) or ioctl(2)? Arguab= ly > > > > this information should not be stored in Xenstore at all, as it exp= oses > > > > backend implementation details to the frontend. > > >=20 > > > Could you maybe use sysfs for this information? > >=20 > > Probably? This would involve adding a new file in sysfs. > >=20 > > > We have all sorts of crap in xenstore, but it would be best if we can > > > see of placing stuff like this in another interface. > >=20 > > Fair. >=20 > Let's see if that's a suitable approach, and we can avoid having to > add an extra node to xenstore. I thought about this some more and realized that in Qubes OS, we might want to include the diskseq in the information dom0 gets about each exported block device. This would allow dom0 to write the xenstore node itself, but it would require some way for dom0 to be informed about blkback having this feature. --=20 Sincerely, Demi Marie Obenour (she/her/hers) Invisible Things Lab --PU98An8gDVvBtzYA Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQIzBAEBCgAdFiEEdodNnxM2uiJZBxxxsoi1X/+cIsEFAmSB8l4ACgkQsoi1X/+c IsFSYA//XhC38a6SDufwf6y+xaRXnVDYSdUsP21JYKyDgiz9s6lEag0nuPNrUkLt +pQdAxPoPq99fFKrhleiVEbr1GtEBonRU6qMCe/cUJ/BqTkUyJ75EOeRtxFjr7DI QC9dbaly+Q+WkiLwmtHiaWgk56TaGp+GqYrG2Zj6w0fmIwOmZ59IRaDeIqwJYA6p T4vagAEMK+f3poK6sWfEhZE2IJ5tGqyZwxvpVPY3ldnm5wS9n5WmNZF0rM7lKGzF J8S8ITQut9DtW9NicTQfFz1jjIMDs3KFReSPchQ41+IRUx6nM3sjr6RnE2kBCER8 io/OtNbe6TVv5LxDe2bDLpEzPesjl3RNrx+mgC/LpIaO8JhvZEYpF49XmgQbXRhe HMob73O0quNIUMQLqQ18zunfqE4wIq8Yfv4E146jRaItTN+AZT4oAFZZJb8f43BS c95GNTtjdguBVeLKb3Vi9dH9bgqtO9CbDop9PeP1T05q2VHxMTEGhf2XkZoOCCxI oMIV9IEbkBcVQT/nVZa56Suqgp6XKy/llGIrvk45bhraLT8ljpoHUeZnjQaJxJEO YWr7ImrznVH+57dQbSlkQrWKZcp8f0dzzfoDGGWXP6UTTA9JiiVMkqjmk6YZEyQL VGban/xP4mC8GD10OtAsc/b3n0w87wxVYjYT9hdDtgIBUzjcGP4= =1nZV -----END PGP SIGNATURE----- --PU98An8gDVvBtzYA-- From xen-devel-bounces@lists.xenproject.org Thu Jun 08 15:24:24 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 08 Jun 2023 15:24:24 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545352.851737 (Exim 4.92) (envelope-from ) id 1q7HUk-0006EN-7g; Thu, 08 Jun 2023 15:24:14 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545352.851737; Thu, 08 Jun 2023 15:24:14 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7HUk-0006EG-4i; Thu, 08 Jun 2023 15:24:14 +0000 Received: by outflank-mailman (input) for mailman id 545352; Thu, 08 Jun 2023 15:24:13 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7HUj-00067D-FV for xen-devel@lists.xenproject.org; Thu, 08 Jun 2023 15:24:13 +0000 Received: from out4-smtp.messagingengine.com (out4-smtp.messagingengine.com [66.111.4.28]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 84307fcb-0610-11ee-8611-37d641c3527e; Thu, 08 Jun 2023 17:24:11 +0200 (CEST) Received: from compute2.internal (compute2.nyi.internal [10.202.2.46]) by mailout.nyi.internal (Postfix) with ESMTP id 0F3BC5C01E9; Thu, 8 Jun 2023 11:24:10 -0400 (EDT) Received: from mailfrontend2 ([10.202.2.163]) by compute2.internal (MEProxy); Thu, 08 Jun 2023 11:24:10 -0400 Received: by mail.messagingengine.com (Postfix) with ESMTPA; Thu, 8 Jun 2023 11:24:09 -0400 (EDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 84307fcb-0610-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= invisiblethingslab.com; h=cc:cc:content-type:content-type:date :date:from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:sender:subject:subject:to:to; s=fm1; t= 1686237850; x=1686324250; bh=IUwV7Mu/3eeunQeH2XK30qt0uf9HHgiQtGt /LtpN1XE=; b=qkWSqIIhlL3j6f0o2QA3qjwAhifNX1DVceBxIUx80pu40CAbu00 rG8BdFX5TCACouopEHlb/IMkNI6qtZMhwvR1Gpd2ltEgWLJhh+qDJTfx9LUwP2U+ o0Fnd4VynfaIdgELqjIQRNOIHQhlhIOySyb7sxw+A8h9WXGlJLNX5TuEaelLmWl9 IHXDFCtEKOBWm53s1hjhnawK1T6f4p0vAdJAR1bHw0WcxN/w0tYVo7/wNliOfqVw QFshIhJe7kV1vhILMaT6wk7/PswRPwurSQM0aCBHgAisq8tgX3p1f37FDNrrNYlb KFbLXDHXtO5kNgHG2pvFIdm2g/n67mDPTdg== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-type:content-type:date:date :feedback-id:feedback-id:from:from:in-reply-to:in-reply-to :message-id:mime-version:references:reply-to:sender:subject :subject:to:to:x-me-proxy:x-me-proxy:x-me-sender:x-me-sender :x-sasl-enc; s=fm1; t=1686237850; x=1686324250; bh=IUwV7Mu/3eeun QeH2XK30qt0uf9HHgiQtGt/LtpN1XE=; b=Wp7Efil1kW9JdynZmx2MHe+A9VB/H TzHbaEQQCyWkxQ1ekigse3L5qwdYtyNNlAl5Gc0Q38lykiETgRSoo/IADKhUr1P1 PLZwmj2CWn1DNebeSS2a+J8JfTI6EhHn95VkHFtWe7bWG4VOeDVfbgwIJM8LFt9w 3lsWcrcB6a58Whlq4ynJ8YLYzmJ9dOXcFmWOUmDJVnfR8scNHQ0LZ5FrErrW+bJt aHAcspBnYmYdLtxeQqvmSBpYyBmaV2jT6bT4bzaq+7AM5k4anQ1dCc8eMbqEanct 4j3nErhC4feMyerw6a4iCzJH247hXmm4itdQUHnSBPlX9s8ffOuagZSTw== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvhedrgedtiedgkeejucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne cujfgurhepfffhvfevuffkfhggtggujgesghdtreertddtjeenucfhrhhomhepffgvmhhi ucforghrihgvucfqsggvnhhouhhruceouggvmhhisehinhhvihhsihgslhgvthhhihhngh hslhgrsgdrtghomheqnecuggftrfgrthhtvghrnhepvdejteegkefhteduhffgteffgeff gfduvdfghfffieefieekkedtheegteehffelnecuvehluhhsthgvrhfuihiivgeptdenuc frrghrrghmpehmrghilhhfrhhomhepuggvmhhisehinhhvihhsihgslhgvthhhihhnghhs lhgrsgdrtghomh X-ME-Proxy: Feedback-ID: iac594737:Fastmail Date: Thu, 8 Jun 2023 11:24:06 -0400 From: Demi Marie Obenour To: Roger Pau =?utf-8?B?TW9ubsOp?= Cc: Jens Axboe , Alasdair Kergon , Mike Snitzer , dm-devel@redhat.com, Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= , linux-block@vger.kernel.org, linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org Subject: Re: [PATCH v2 16/16] xen-blkback: Inform userspace that device has been opened Message-ID: References: <20230530203116.2008-1-demi@invisiblethingslab.com> <20230530203116.2008-17-demi@invisiblethingslab.com> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha512; protocol="application/pgp-signature"; boundary="DG4zdBvb0kvaNjmD" Content-Disposition: inline In-Reply-To: --DG4zdBvb0kvaNjmD Content-Type: text/plain; protected-headers=v1; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Date: Thu, 8 Jun 2023 11:24:06 -0400 From: Demi Marie Obenour To: Roger Pau =?utf-8?B?TW9ubsOp?= Cc: Jens Axboe , Alasdair Kergon , Mike Snitzer , dm-devel@redhat.com, Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= , linux-block@vger.kernel.org, linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org Subject: Re: [PATCH v2 16/16] xen-blkback: Inform userspace that device has been opened On Thu, Jun 08, 2023 at 12:08:55PM +0200, Roger Pau Monn=C3=A9 wrote: > On Tue, May 30, 2023 at 04:31:16PM -0400, Demi Marie Obenour wrote: > > Set "opened" to "0" before the hotplug script is called. Once the > > device node has been opened, set "opened" to "1". > >=20 > > "opened" is used exclusively by userspace. It serves two purposes: > >=20 > > 1. It tells userspace that the diskseq Xenstore entry is supported. > >=20 > > 2. It tells userspace that it can wait for "opened" to be set to 1. > > Once "opened" is 1, blkback has a reference to the device, so > > userspace doesn't need to keep one. > >=20 > > Together, these changes allow userspace to use block devices with > > delete-on-close behavior, such as loop devices with the autoclear flag > > set or device-mapper devices with the deferred-remove flag set. >=20 > Now that I think a bit more about this, how are you planning to handle > reboot with such devices? It's fine for loop (because those get > instantiated by the block script), but likely not with other block > devices, as on reboot the toolstack will find the block device is > gone. >=20 > I guess the delete-on-close is only intended to be used for loop > devices? (or in general block devices that are instantiated by the > block script itself) You understand correctly. --=20 Sincerely, Demi Marie Obenour (she/her/hers) Invisible Things Lab --DG4zdBvb0kvaNjmD Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQIzBAEBCgAdFiEEdodNnxM2uiJZBxxxsoi1X/+cIsEFAmSB8pcACgkQsoi1X/+c IsFDgg/+LvYLn6bwcjUeONWEIyGKyw603h+1aYfMvgtLZNeFOldTtAfcVOMlZy8y SSlLFAqfePxh7n7mCyi03wisScbGDY+iDNI+6Y0pmCKmrKXzZEKkRdXld9mejI/c Sp5g2yz9lEV0lwqrX4vBMFux41AdCe9CwTxQ072RQabojUem8EdmvV82l88YJrBU ZPe6mgZEknzAIDrbth/FIA7eowKITBrEwdDmdsHw1HzGzJcHbfpzdxKgcdg0r/b0 cqf2DdIi1DHUsCzjTILR6akwxuprAvEArGy00iB+wS+eXfZBZIBlLrwsAFYSwZSD tRAZ0BgjeL5b0MxTP5KP1rRB6p4hBPxVyuBduDEaaBdsNJJcAHGDgiuvkTVKqMZM HzaSWI9HCuJ/xIRTtAd620ogZDwlzjkVsc3vHo++hDEF3WvwEaKjfNjvVr1wg4HC NQ+Tc4JllfsJgwAp6D7zsEAL/KwlcoQqZYf1o/Z9ukjCU+iRL9NXhPtMPX4Kjdqn HPdBnnjAU8dyMebH0N4ltPt6CZw9cQ1V43QtJy89OpEt0PqF7BkIRkdXZ3yw8pAN jCjWYIKy54g5Qzm3G/zQ7J3oc83/o0KWdZIfpZCWdZmO3mHD3i2fb/opIngDxsbR M9HcUCFwbGOuwQ97S4t2XB2dXP106oxDkCRphDEwDFq9BpWmxQQ= =wJOc -----END PGP SIGNATURE----- --DG4zdBvb0kvaNjmD-- From xen-devel-bounces@lists.xenproject.org Thu Jun 08 15:33:46 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 08 Jun 2023 15:33:46 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545358.851747 (Exim 4.92) (envelope-from ) id 1q7Hdn-0007kv-0Y; Thu, 08 Jun 2023 15:33:35 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545358.851747; Thu, 08 Jun 2023 15:33:34 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7Hdm-0007ko-Tt; Thu, 08 Jun 2023 15:33:34 +0000 Received: by outflank-mailman (input) for mailman id 545358; Thu, 08 Jun 2023 15:33:34 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7Hdm-0007ki-3D for xen-devel@lists.xenproject.org; Thu, 08 Jun 2023 15:33:34 +0000 Received: from out4-smtp.messagingengine.com (out4-smtp.messagingengine.com [66.111.4.28]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id d313b2fe-0611-11ee-b232-6b7b168915f2; Thu, 08 Jun 2023 17:33:32 +0200 (CEST) Received: from compute3.internal (compute3.nyi.internal [10.202.2.43]) by mailout.nyi.internal (Postfix) with ESMTP id B39A65C00E4; Thu, 8 Jun 2023 11:33:31 -0400 (EDT) Received: from mailfrontend1 ([10.202.2.162]) by compute3.internal (MEProxy); Thu, 08 Jun 2023 11:33:31 -0400 Received: by mail.messagingengine.com (Postfix) with ESMTPA; Thu, 8 Jun 2023 11:33:30 -0400 (EDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: d313b2fe-0611-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= invisiblethingslab.com; h=cc:cc:content-type:content-type:date :date:from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:sender:subject:subject:to:to; s=fm1; t= 1686238411; x=1686324811; bh=bk7X7cG0vAXQHVnw4CA+kDw3ByHbOWHJInS wfkkzHY8=; b=GBD0CSjijdigVUsvpDPVSARqWo7A/3D/qG+ji6CJ8nkz9tWCs7w zl2Uuan4dpswf7TkqNwGmREgHmoZjfqWmDkFHet/tmyIYm8h4WlpNXbsC9PyzbG+ 1F4uo8CkdvAcxL2MK6DoaPIgDgm6Mf9GIbtruQyT5aX8xLxlN+3Fzib5BXnGFtDy 2XtQB5lL+GcqvflWDaKw3Lf9DagabGt0/EboBfDTRuJwhGVCDXHCKn9LvS7FvGiR aLHcgE1nH7RLX3PF9rF0YR8QjQq7D8z20woWsrd97LPk1Tf5nySZ67V2M4odgMp8 EQn26MbnsKJKE1sfp9qtocbi5jOVZZNCz8A== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-type:content-type:date:date :feedback-id:feedback-id:from:from:in-reply-to:in-reply-to :message-id:mime-version:references:reply-to:sender:subject :subject:to:to:x-me-proxy:x-me-proxy:x-me-sender:x-me-sender :x-sasl-enc; s=fm1; t=1686238411; x=1686324811; bh=bk7X7cG0vAXQH Vnw4CA+kDw3ByHbOWHJInSwfkkzHY8=; b=BcCHXL7O/AS+XCPF4rcyZ3lxI2UJ6 wO4Hg/SDkzmMPw/NFljpJ/N4DKuLTe59gczbSSgHWl2yFucjtYVFAQBIpPAtmN4k jC5jC+HHF4mYmXEa1OmZDgFm6ylnsPdyF3mktGwKjK4w4YmeYBn6wlmAYw11u/h7 Dgd8GNHoYlh19kT3jiHH8QAWxAF5a5rP8t0O0SvwV0EiWifVdLkfADEvHCXLW8wQ bbcUShcMnzSLHkiYILmwFmdTRXVscfEsuDXvY8Vxk7f6Ek5DKYnCDOf4+xsfkZKB 79pnyvKnIpq/FtatVgXMslaH/E/JTn7ed1ue+XWEWo3nBllRtNh0v9gNg== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvhedrgedtiedgkeelucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne cujfgurhepfffhvfevuffkfhggtggujgesghdtreertddtjeenucfhrhhomhepffgvmhhi ucforghrihgvucfqsggvnhhouhhruceouggvmhhisehinhhvihhsihgslhgvthhhihhngh hslhgrsgdrtghomheqnecuggftrfgrthhtvghrnhepvdejteegkefhteduhffgteffgeff gfduvdfghfffieefieekkedtheegteehffelnecuvehluhhsthgvrhfuihiivgeptdenuc frrghrrghmpehmrghilhhfrhhomhepuggvmhhisehinhhvihhsihgslhgvthhhihhnghhs lhgrsgdrtghomh X-ME-Proxy: Feedback-ID: iac594737:Fastmail Date: Thu, 8 Jun 2023 11:33:26 -0400 From: Demi Marie Obenour To: Roger Pau =?utf-8?B?TW9ubsOp?= Cc: Jens Axboe , Alasdair Kergon , Mike Snitzer , dm-devel@redhat.com, Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= , linux-block@vger.kernel.org, linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org Subject: Re: [PATCH v2 13/16] xen-blkback: Implement diskseq checks Message-ID: References: <20230530203116.2008-1-demi@invisiblethingslab.com> <20230530203116.2008-14-demi@invisiblethingslab.com> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha512; protocol="application/pgp-signature"; boundary="r3sHQtKDb7zekSfB" Content-Disposition: inline In-Reply-To: --r3sHQtKDb7zekSfB Content-Type: text/plain; protected-headers=v1; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Date: Thu, 8 Jun 2023 11:33:26 -0400 From: Demi Marie Obenour To: Roger Pau =?utf-8?B?TW9ubsOp?= Cc: Jens Axboe , Alasdair Kergon , Mike Snitzer , dm-devel@redhat.com, Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= , linux-block@vger.kernel.org, linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org Subject: Re: [PATCH v2 13/16] xen-blkback: Implement diskseq checks On Thu, Jun 08, 2023 at 10:29:18AM +0200, Roger Pau Monn=C3=A9 wrote: > On Wed, Jun 07, 2023 at 12:14:46PM -0400, Demi Marie Obenour wrote: > > On Wed, Jun 07, 2023 at 10:20:08AM +0200, Roger Pau Monn=C3=A9 wrote: > > > On Tue, Jun 06, 2023 at 01:01:20PM -0400, Demi Marie Obenour wrote: > > > > On Tue, Jun 06, 2023 at 10:25:47AM +0200, Roger Pau Monn=C3=A9 wrot= e: > > > > > On Tue, May 30, 2023 at 04:31:13PM -0400, Demi Marie Obenour wrot= e: > > > > > > - if (be->major | be->minor) { > > > > > > - if (be->major !=3D major || be->minor !=3D minor) > > > > > > - pr_warn("changing physical device (from %x:%x to %x:%x) not= supported.\n", > > > > > > - be->major, be->minor, major, minor); > > > > > > + diskseq_str =3D xenbus_read(XBT_NIL, dev->nodename, "diskseq"= , &diskseq_len); > > > > > > + if (IS_ERR(diskseq_str)) { > > > > > > + int err =3D PTR_ERR(diskseq_str); > > > > > > + diskseq_str =3D NULL; > > > > > > + > > > > > > + /* > > > > > > + * If this does not exist, it means legacy userspace that do= es not > > > > > > + * support diskseq. > > > > > > + */ > > > > > > + if (unlikely(!XENBUS_EXIST_ERR(err))) { > > > > > > + xenbus_dev_fatal(dev, err, "reading diskseq"); > > > > > > + return; > > > > > > + } > > > > > > + diskseq =3D 0; > > > > > > + } else if (diskseq_len <=3D 0) { > > > > > > + xenbus_dev_fatal(dev, -EFAULT, "diskseq must not be empty"); > > > > > > + goto fail; > > > > > > + } else if (diskseq_len > 16) { > > > > > > + xenbus_dev_fatal(dev, -ERANGE, "diskseq too long: got %d but= limit is 16", > > > > > > + diskseq_len); > > > > > > + goto fail; > > > > > > + } else if (diskseq_str[0] =3D=3D '0') { > > > > > > + xenbus_dev_fatal(dev, -ERANGE, "diskseq must not start with = '0'"); > > > > > > + goto fail; > > > > > > + } else { > > > > > > + char *diskseq_end; > > > > > > + diskseq =3D simple_strtoull(diskseq_str, &diskseq_end, 16); > > > > > > + if (diskseq_end !=3D diskseq_str + diskseq_len) { > > > > > > + xenbus_dev_fatal(dev, -EINVAL, "invalid diskseq"); > > > > > > + goto fail; > > > > > > + } > > > > > > + kfree(diskseq_str); > > > > > > + diskseq_str =3D NULL; > > > > > > + } > > > > >=20 > > > > > Won't it be simpler to use xenbus_scanf() with %llx formatter? > > > >=20 > > > > xenbus_scanf() doesn=E2=80=99t check for overflow and accepts lots = of junk it > > > > really should not. Should this be fixed in xenbus_scanf()? > > >=20 > > > That would be my preference, so that you can use it here instead of > > > kind of open-coding it. > >=20 > > This winds up being a much more invasive patch as it requires changing > > sscanf(). It also has a risk (probably mostly theoretical) of breaking > > buggy userspace that passes garbage values here. >=20 > Well, if the current function is not suitable for your purposes it > would be better to fix it rather than open-code what you need. Mostly > because further usages would then also need to open-code whatever > required. That is fair. > > > > > Also, you tie this logic to the "physical-device" watch, which > > > > > strictly implies that the "diskseq" node must be written to xenst= ore > > > > > before the "physical-device" node. This seems fragile, but I don= 't > > > > > see much better optiono since the "diskseq" is optional. > > > >=20 > > > > What about including the diskseq in the "physical-device" node? Pe= rhaps > > > > use diskseq@major:minor syntax? > > >=20 > > > Hm, how would you know whether the blkback instance in the kernel > > > supports the diskseq syntax in physical-device? > >=20 > > That=E2=80=99s what the next patch is for =F0=9F=99=82. >=20 > Hm, I think we should separate diskseq support from the notify open > stuff: it's possible a different (non-Linux) backend wants to > implement open notify support but doesn't have diskseq. I like this idea! What about having blkback set diskseq to zero? Userspace could then replace it with the actual value. > > > Can you fetch a disk using a diskseq identifier? > >=20 > > Not yet, although I have considered adding this ability. It would be > > one step towards a =E2=80=9Cdiskseqfs=E2=80=9D that userspace could use= to open a device > > by diskseq. > >=20 > > > Why I understand that this is an extra safety check in order to assert > > > blkback is opening the intended device, is this attempting to fix some > > > existing issue? > >=20 > > Yes, it is. I have a block script (written in C) that validates the > > device it has opened before passing the information to blkback. It uses > > the diskseq to do this, but for that protection to be complete, blkback > > must also be aware of it. >=20 > But if your block script opens the device, and keeps it open until > blkback has also taken a reference to it, there's no way such device > could be removed and recreated in the window you point out above, as > there's always a reference on it taken? This assumes that the block script is not killed in the meantime, which is not a safe assumption due to timeouts and the OOM killer. > > > I'm not sure I see how the major:minor numbers would point to a > > > different device than the one specified by the toolstack unless the > > > admin explicitly messes with the devices before blkback has got time > > > to open them. But then the admin can already do pretty much > > > everything it wants with the system. > >=20 > > Admins typically refer to e.g. device-mapper devices by name, not by > > major:minor number. If a device is destroyed and recreated right as the > > block script is running, this race condition can occur. >=20 > Right, but what about this device recreation happening after the admin > has written the guest config file but before the call to (lib)xl > happens? blkback would also end up using a different device than > indented, and your proposed approach doesn't fix this. The only way to > solve this would be to reference devices by UUID (iow: diskseq) > directly in the guest config file. That would be a good idea, but it is orthogonal to this patch. My script opens the device and uses various means to check that it did open the correct device. It then passes the diskseq to blkback. > Then the block script will open the device by diskseq and pass the > major:minor numbers to blkback. Alternatively, the toolstack could write both the diskseq and major:minor numbers and be confident that it is referring to the correct device, no matter how long ago it got that information. This could be quite useful for e.g. one VM exporting a device to another VM by calling losetup(8) and expecting a human to make a decision based on various properties about the device. In this case there is no upper bound on the race window. --=20 Sincerely, Demi Marie Obenour (she/her/hers) Invisible Things Lab --r3sHQtKDb7zekSfB Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQIzBAEBCgAdFiEEdodNnxM2uiJZBxxxsoi1X/+cIsEFAmSB9MkACgkQsoi1X/+c IsGCMxAAqG5vSBmNdrqnGJZtBSgrA3UZ/y3fsa0PnxKkWgF3nhun+A8UeKOmjz0t RW9nmG3h6EhpC6XwBop/HnjHIRUS7Z77yDPGtyCHluCNQM3Tj2LOoK6rPn5TVxiR lsfvUkI41GYaOBKbQ+IEo9IKqpZZE7QIAnVZG8xNW7Klb67Pgi+Q2zb535Ghw67u xCaV90KBqXTqPZj4hODd8FT/4ewealg7a8Gsb+94TiXMhNPLFMgUbldwURuVp7gl +16jnXeKkgJ+ccw0Q6UueDxx5o5T3tArta/rfjy2YW18te6QKfv7Ro51eIjCBS3k uInhLdrnAbfUUW4Y6XzPWXIc2ggBgxIxbhO/illtppLzqBXnlRsXdsSijk3E2y4/ Qg56hHb3xDNXKmN6J4HOIF03AEAoD4R3aqt0WB8SKHNN3YMhTequs2RCmGTOrHTf QdXVw07joEeYwsZhgrVVtHEGheBeM0+2zdzgF5rUyy/8dS7wyIliFQgNOW8fPRXt RYPLy6GV+BJZtgTL0LrSw/kCcXEozbPI7Ju4nqwmQVzeXuklYYDvt8nkLkeY3bzz o895IvUlQGKODDHxJb55eCN6A7ztY9K4sb6gij7ny0RWjHuQezGIA334zfV0n3EM J4QwgQsldOF/lYTnpCefwXdOWf5PxXENvQi1G25JJWn4Z8JvpGw= =TpT1 -----END PGP SIGNATURE----- --r3sHQtKDb7zekSfB-- From xen-devel-bounces@lists.xenproject.org Thu Jun 08 16:29:04 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 08 Jun 2023 16:29:04 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545367.851763 (Exim 4.92) (envelope-from ) id 1q7IVH-0005JR-Au; Thu, 08 Jun 2023 16:28:51 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545367.851763; Thu, 08 Jun 2023 16:28:51 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7IVH-0005JK-6h; Thu, 08 Jun 2023 16:28:51 +0000 Received: by outflank-mailman (input) for mailman id 545367; Thu, 08 Jun 2023 16:28:50 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7IVG-0005JA-3P; Thu, 08 Jun 2023 16:28:50 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7IVF-0000m6-Ql; Thu, 08 Jun 2023 16:28:49 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7IVF-0000jt-Cm; Thu, 08 Jun 2023 16:28:49 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q7IVF-0000xi-CG; Thu, 08 Jun 2023 16:28:49 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=N8Bi6qo9C7ySu7ELeCaIHF536/BBbUw/3Md54CCp2o8=; b=s6zKE84dV32zRFswp2Ug4SrQxC 6OLhaH46ux6gudXQfg7CClMzJY0AGaniKiabJ7/AERcJ5baMHpYpPZtLtL/d2hr1XL7W470yxWbS0 V2P6ns1oJUKvyRc3gokQ1VIYFben3ldL6i2PgX0x0iEEAIBAUJUC89p1Uk2GPxuX5cuo=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable-smoke test] 181309: regressions - FAIL X-Osstest-Failures: xen-unstable-smoke:build-arm64-xsm:xen-build:fail:regression xen-unstable-smoke:build-armhf:xen-build:fail:regression xen-unstable-smoke:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking xen-unstable-smoke:test-armhf-armhf-xl:build-check(1):blocked:nonblocking xen-unstable-smoke:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking X-Osstest-Versions-This: xen=6915a120641b5d232762af7882266048cf039ca0 X-Osstest-Versions-That: xen=64a647f8d817c6989edc000613b5afae19f03f99 From: osstest service owner Date: Thu, 08 Jun 2023 16:28:49 +0000 flight 181309 xen-unstable-smoke real [real] http://logs.test-lab.xenproject.org/osstest/logs/181309/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-arm64-xsm 6 xen-build fail REGR. vs. 181233 build-armhf 6 xen-build fail REGR. vs. 181233 Tests which did not succeed, but are not blocking: test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 15 migrate-support-check fail never pass version targeted for testing: xen 6915a120641b5d232762af7882266048cf039ca0 baseline version: xen 64a647f8d817c6989edc000613b5afae19f03f99 Last test of basis 181233 2023-06-07 02:04:37 Z 1 days Failing since 181246 2023-06-07 11:02:03 Z 1 days 14 attempts Testing same since 181303 2023-06-08 11:00:25 Z 0 days 3 attempts ------------------------------------------------------------ People who touched revisions under test: Andrew Cooper Christian Lindig George Dunlap Henry Wang # CHANGELOG Juergen Gross Julien Grall Luca Fancellu Michal Orzel Roger Pau Monne Roger Pau Monné Stefano Stabellini jobs: build-arm64-xsm fail build-amd64 pass build-armhf fail build-amd64-libvirt pass test-armhf-armhf-xl blocked test-arm64-arm64-xl-xsm blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-libvirt pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 504 lines long.) From xen-devel-bounces@lists.xenproject.org Thu Jun 08 16:38:42 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 08 Jun 2023 16:38:42 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545374.851773 (Exim 4.92) (envelope-from ) id 1q7Ieb-0006nj-7a; Thu, 08 Jun 2023 16:38:29 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545374.851773; Thu, 08 Jun 2023 16:38:29 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7Ieb-0006nc-3l; Thu, 08 Jun 2023 16:38:29 +0000 Received: by outflank-mailman (input) for mailman id 545374; Thu, 08 Jun 2023 16:38:27 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7IeZ-0006nW-7X for xen-devel@lists.xenproject.org; Thu, 08 Jun 2023 16:38:27 +0000 Received: from mail-ua1-f52.google.com (mail-ua1-f52.google.com [209.85.222.52]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id e313b5cb-061a-11ee-b232-6b7b168915f2; Thu, 08 Jun 2023 18:38:25 +0200 (CEST) Received: by mail-ua1-f52.google.com with SMTP id a1e0cc1a2514c-784f7f7deddso307485241.3 for ; Thu, 08 Jun 2023 09:38:25 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: e313b5cb-061a-11ee-b232-6b7b168915f2 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686242304; x=1688834304; h=content-transfer-encoding:cc:to:subject:message-id:date:from :reply-to:in-reply-to:references:mime-version:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=maYgySw253aQp+1qS+G3fizKuN5LyFWhl5CeH3Pd1Rc=; b=XzexsevLKj/uqZSFU8Fg6TWwxyWizkP8dGkBBdWlJZaOwscmYT/dcDO5yJC7FuSqXQ CUYEl4IoQboStGZmxjmUPgf/EkYWMaMRY0T+WUSWxOYPNNmTVYws1HnRR32KUExwijcf khHEqsXpC9n6Q+Oj+WxBsqD4F1TGYn1wLWJxqBG6YsEC+TfLGYK3IrhcbpuD1DQZI9MA bnPr7751MCUQYOjKIdKrow5eqcW7/8ddd3M0GZnZuCvleKsbZ6SqjdEXrh4LbDRtZ74o dK9PKGTct7uaBKHK8uD28YJa4kAe/EN6FDJtuhJuhw3hssseJZtLfJckghYFSUF93k0y RxJQ== X-Gm-Message-State: AC+VfDyzU8wR3cOOFQDmtPUTPYh3aNs+f+DEOdDJgw7hrF1oxokrItdl zzHYDL/4l8/uTYEdYR/kEVjoye8Sgij7Mcum4Sk= X-Google-Smtp-Source: ACHHUZ5OuS4967TKEwaba2HW4aCd+g3iM/cEQnhv0qE6rpTWD8+Kx3Y4nbhBskp4M2bmvvjQskRJR9egBehwEfbyMAY= X-Received: by 2002:a67:fb11:0:b0:437:e49d:634a with SMTP id d17-20020a67fb11000000b00437e49d634amr1996709vsr.35.1686242302273; Thu, 08 Jun 2023 09:38:22 -0700 (PDT) MIME-Version: 1.0 References: <20230605102840.1521549-1-ross.lagerwall@citrix.com> In-Reply-To: <20230605102840.1521549-1-ross.lagerwall@citrix.com> Reply-To: konrad@darnok.org From: Konrad Rzeszutek Wilk Date: Thu, 8 Jun 2023 12:38:11 -0400 Message-ID: Subject: Re: [PATCH v3] iscsi_ibft: Fix finding the iBFT under Xen Dom 0 To: Ross Lagerwall Cc: linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org, Jan Beulich , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , x86@kernel.org, Juergen Gross , Boris Ostrovsky , Peter Jones , Konrad Rzeszutek Wilk Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable It looks fine to me, but could I ask you to triple check that on non-Xen it still detects the iBFT? Thx! On Mon, Jun 5, 2023 at 6:28=E2=80=AFAM Ross Lagerwall wrote: > > To facilitate diskless iSCSI boot, the firmware can place a table of > configuration details in memory called the iBFT. The presence of this > table is not specified, nor is the precise location (and it's not in the > E820) so the kernel has to search for a magic marker to find it. > > When running under Xen, Dom 0 does not have access to the entire host's > memory, only certain regions which are identity-mapped which means that > the pseudo-physical address in Dom0 =3D=3D real host physical address. > Add the iBFT search bounds as a reserved region which causes it to be > identity-mapped in xen_set_identity_and_remap_chunk() which allows Dom0 > access to the specific physical memory to correctly search for the iBFT > magic marker (and later access the full table). > > This necessitates moving the call to reserve_ibft_region() somewhat > later so that it is called after e820__memory_setup() which is when the > Xen identity mapping adjustments are applied. The precise location of > the call is not too important so I've put it alongside dmi_setup() which > does similar scanning of memory for configuration tables. > > Finally in the iBFT find code, instead of using isa_bus_to_virt() which > doesn't do the right thing under Xen, use early_memremap() like the > dmi_setup() code does. > > The result of these changes is that it is possible to boot a diskless > Xen + Dom0 running off an iSCSI disk whereas previously it would fail to > find the iBFT and consequently, the iSCSI root disk. > > Signed-off-by: Ross Lagerwall > --- > > In v3: > * Expanded commit message. > * Used IBFT_ constants. > > arch/x86/kernel/setup.c | 2 +- > arch/x86/xen/setup.c | 28 +++++++++++++++++++--------- > drivers/firmware/iscsi_ibft_find.c | 26 +++++++++++++++++--------- > include/linux/iscsi_ibft.h | 10 +++++++++- > 4 files changed, 46 insertions(+), 20 deletions(-) > > diff --git a/arch/x86/kernel/setup.c b/arch/x86/kernel/setup.c > index 16babff771bd..616b80507abd 100644 > --- a/arch/x86/kernel/setup.c > +++ b/arch/x86/kernel/setup.c > @@ -796,7 +796,6 @@ static void __init early_reserve_memory(void) > > memblock_x86_reserve_range_setup_data(); > > - reserve_ibft_region(); > reserve_bios_regions(); > trim_snb_memory(); > } > @@ -1032,6 +1031,7 @@ void __init setup_arch(char **cmdline_p) > if (efi_enabled(EFI_BOOT)) > efi_init(); > > + reserve_ibft_region(); > dmi_setup(); > > /* > diff --git a/arch/x86/xen/setup.c b/arch/x86/xen/setup.c > index c2be3efb2ba0..8b5cf7bb1f47 100644 > --- a/arch/x86/xen/setup.c > +++ b/arch/x86/xen/setup.c > @@ -6,6 +6,7 @@ > */ > > #include > +#include > #include > #include > #include > @@ -764,17 +765,26 @@ char * __init xen_memory_setup(void) > BUG_ON(memmap.nr_entries =3D=3D 0); > xen_e820_table.nr_entries =3D memmap.nr_entries; > > - /* > - * Xen won't allow a 1:1 mapping to be created to UNUSABLE > - * regions, so if we're using the machine memory map leave the > - * region as RAM as it is in the pseudo-physical map. > - * > - * UNUSABLE regions in domUs are not handled and will need > - * a patch in the future. > - */ > - if (xen_initial_domain()) > + if (xen_initial_domain()) { > + /* > + * Xen won't allow a 1:1 mapping to be created to UNUSABL= E > + * regions, so if we're using the machine memory map leav= e the > + * region as RAM as it is in the pseudo-physical map. > + * > + * UNUSABLE regions in domUs are not handled and will nee= d > + * a patch in the future. > + */ > xen_ignore_unusable(); > > +#ifdef CONFIG_ISCSI_IBFT_FIND > + /* Reserve 0.5 MiB to 1 MiB region so iBFT can be found *= / > + xen_e820_table.entries[xen_e820_table.nr_entries].addr = =3D IBFT_START; > + xen_e820_table.entries[xen_e820_table.nr_entries].size = =3D IBFT_END - IBFT_START; > + xen_e820_table.entries[xen_e820_table.nr_entries].type = =3D E820_TYPE_RESERVED; > + xen_e820_table.nr_entries++; > +#endif > + } > + > /* Make sure the Xen-supplied memory map is well-ordered. */ > e820__update_table(&xen_e820_table); > > diff --git a/drivers/firmware/iscsi_ibft_find.c b/drivers/firmware/iscsi_= ibft_find.c > index 94b49ccd23ac..71f51303c2ba 100644 > --- a/drivers/firmware/iscsi_ibft_find.c > +++ b/drivers/firmware/iscsi_ibft_find.c > @@ -42,8 +42,6 @@ static const struct { > }; > > #define IBFT_SIGN_LEN 4 > -#define IBFT_START 0x80000 /* 512kB */ > -#define IBFT_END 0x100000 /* 1MB */ > #define VGA_MEM 0xA0000 /* VGA buffer */ > #define VGA_SIZE 0x20000 /* 128kB */ > > @@ -52,9 +50,9 @@ static const struct { > */ > void __init reserve_ibft_region(void) > { > - unsigned long pos; > + unsigned long pos, virt_pos =3D 0; > unsigned int len =3D 0; > - void *virt; > + void *virt =3D NULL; > int i; > > ibft_phys_addr =3D 0; > @@ -70,13 +68,20 @@ void __init reserve_ibft_region(void) > * so skip that area */ > if (pos =3D=3D VGA_MEM) > pos +=3D VGA_SIZE; > - virt =3D isa_bus_to_virt(pos); > + > + /* Map page by page */ > + if (offset_in_page(pos) =3D=3D 0) { > + if (virt) > + early_memunmap(virt, PAGE_SIZE); > + virt =3D early_memremap_ro(pos, PAGE_SIZE); > + virt_pos =3D pos; > + } > > for (i =3D 0; i < ARRAY_SIZE(ibft_signs); i++) { > - if (memcmp(virt, ibft_signs[i].sign, IBFT_SIGN_LE= N) =3D=3D > - 0) { > + if (memcmp(virt + (pos - virt_pos), ibft_signs[i]= .sign, > + IBFT_SIGN_LEN) =3D=3D 0) { > unsigned long *addr =3D > - (unsigned long *)isa_bus_to_virt(pos = + 4); > + (unsigned long *)(virt + pos - virt_p= os + 4); > len =3D *addr; > /* if the length of the table extends pas= t 1M, > * the table cannot be valid. */ > @@ -84,9 +89,12 @@ void __init reserve_ibft_region(void) > ibft_phys_addr =3D pos; > memblock_reserve(ibft_phys_addr, = PAGE_ALIGN(len)); > pr_info("iBFT found at %pa.\n", &= ibft_phys_addr); > - return; > + goto out; > } > } > } > } > + > +out: > + early_memunmap(virt, PAGE_SIZE); > } > diff --git a/include/linux/iscsi_ibft.h b/include/linux/iscsi_ibft.h > index 790e7fcfc1a6..e2742748104d 100644 > --- a/include/linux/iscsi_ibft.h > +++ b/include/linux/iscsi_ibft.h > @@ -21,12 +21,20 @@ > */ > extern phys_addr_t ibft_phys_addr; > > +#ifdef CONFIG_ISCSI_IBFT_FIND > + > /* > * Routine used to find and reserve the iSCSI Boot Format Table. The > * physical address is set in the ibft_phys_addr variable. > */ > -#ifdef CONFIG_ISCSI_IBFT_FIND > void reserve_ibft_region(void); > + > +/* > + * Physical bounds to search for the iSCSI Boot Format Table. > + */ > +#define IBFT_START 0x80000 /* 512kB */ > +#define IBFT_END 0x100000 /* 1MB */ > + > #else > static inline void reserve_ibft_region(void) {} > #endif > -- > 2.31.1 > From xen-devel-bounces@lists.xenproject.org Thu Jun 08 17:11:21 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 08 Jun 2023 17:11:21 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545385.851783 (Exim 4.92) (envelope-from ) id 1q7JAD-0002dp-Qp; Thu, 08 Jun 2023 17:11:09 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545385.851783; Thu, 08 Jun 2023 17:11:09 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7JAD-0002di-NO; Thu, 08 Jun 2023 17:11:09 +0000 Received: by outflank-mailman (input) for mailman id 545385; Thu, 08 Jun 2023 17:11:08 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7JAC-0002dY-3h; Thu, 08 Jun 2023 17:11:08 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7JAB-0001m5-QR; Thu, 08 Jun 2023 17:11:07 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7JAB-0001hQ-Ce; Thu, 08 Jun 2023 17:11:07 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q7JAB-0002GB-CC; Thu, 08 Jun 2023 17:11:07 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=HoEq5S88eRJXEdjxIgG4RBCz9HYm9mNggVzeTNnVyi0=; b=XdLXjLqbVh+eSL50br81IV9TxJ 6IvnmbN+0r/G80Npi//+SjSyKm8NimmYNXa9eYMYsgkgZ5V2wpp6ceYr7/lBAsp3G+zvahAHFOaiM GE0/g11w0emNAmWDU/MUPTSn/NGTWqXMV5mkL5i6DEbGClGf9vEsu4t/osVI+kT2As4g=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [qemu-mainline test] 181305: regressions - FAIL X-Osstest-Failures: qemu-mainline:build-arm64-xsm:xen-build:fail:regression qemu-mainline:build-arm64:xen-build:fail:regression qemu-mainline:build-amd64:xen-build:fail:regression qemu-mainline:build-i386:xen-build:fail:regression qemu-mainline:build-amd64-xsm:xen-build:fail:regression qemu-mainline:build-i386-xsm:xen-build:fail:regression qemu-mainline:build-armhf:xen-build:fail:regression qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-i386:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:build-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:build-arm64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:build-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:build-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pygrub:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking X-Osstest-Versions-This: qemuu=4f65e89f8cf0e079b4ec3ddfede314bbb4e35c76 X-Osstest-Versions-That: qemuu=6972ef1440a9d685482d78672620a7482f2bd09a From: osstest service owner Date: Thu, 08 Jun 2023 17:11:07 +0000 flight 181305 qemu-mainline real [real] http://logs.test-lab.xenproject.org/osstest/logs/181305/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-arm64-xsm 6 xen-build fail REGR. vs. 180691 build-arm64 6 xen-build fail REGR. vs. 180691 build-amd64 6 xen-build fail REGR. vs. 180691 build-i386 6 xen-build fail REGR. vs. 180691 build-amd64-xsm 6 xen-build fail REGR. vs. 180691 build-i386-xsm 6 xen-build fail REGR. vs. 180691 build-armhf 6 xen-build fail REGR. vs. 180691 Tests which did not succeed, but are not blocking: test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-xl-xsm 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-raw 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-xsm 1 build-check(1) blocked n/a test-arm64-arm64-xl 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit1 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit2 1 build-check(1) blocked n/a test-arm64-arm64-xl-thunderx 1 build-check(1) blocked n/a test-arm64-arm64-xl-vhd 1 build-check(1) blocked n/a test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a test-armhf-armhf-libvirt 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-qcow2 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-raw 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a test-armhf-armhf-xl-arndale 1 build-check(1) blocked n/a test-armhf-armhf-xl-multivcpu 1 build-check(1) blocked n/a test-armhf-armhf-xl-rtds 1 build-check(1) blocked n/a test-armhf-armhf-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-amd 1 build-check(1) blocked n/a test-amd64-i386-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-raw 1 build-check(1) blocked n/a test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-i386 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-amd64 1 build-check(1) blocked n/a test-amd64-coresched-i386-xl 1 build-check(1) blocked n/a test-amd64-coresched-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-xsm 1 build-check(1) blocked n/a build-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-shadow 1 build-check(1) blocked n/a test-amd64-amd64-xl-rtds 1 build-check(1) blocked n/a build-arm64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a build-armhf-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a build-i386-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-amd 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-pair 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-qcow2 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-vhd 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvshim 1 build-check(1) blocked n/a test-amd64-amd64-pair 1 build-check(1) blocked n/a test-amd64-amd64-pygrub 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-intel 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd11-amd64 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd12-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-multivcpu 1 build-check(1) blocked n/a test-amd64-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit1 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit1 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-intel 1 build-check(1) blocked n/a test-amd64-i386-xl 1 build-check(1) blocked n/a test-amd64-i386-xl-pvshim 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a version targeted for testing: qemuu 4f65e89f8cf0e079b4ec3ddfede314bbb4e35c76 baseline version: qemuu 6972ef1440a9d685482d78672620a7482f2bd09a Last test of basis 180691 2023-05-17 10:45:22 Z 22 days Failing since 180699 2023-05-18 07:21:24 Z 21 days 72 attempts Testing same since 181271 2023-06-07 19:09:58 Z 0 days 4 attempts ------------------------------------------------------------ People who touched revisions under test: Afonso Bordado Akihiko Odaki Akihiro Suda Alex Bennée Alex Williamson Alexander Bulekov Alexander Graf Alexander Ivanov Alistair Francis Ani Sinha Ani Sinha Anthony PERARD Anton Johansson BALATON Zoltan Bernhard Beschow Bin Meng Brian Cain Brice Goglin Camilla Conte Chuck Zmudzinski Cindy Lu Clément Chigot Cornelia Huck Cédric Le Goater Cédric Le Goater Daniel Henrique Barboza Daniel P. Berrangé Daniil Kovalev David Hildenbrand David Woodhouse Emanuele Giuseppe Esposito Enze Li Eric Auger Eric Blake Eric DeVolder Erico Nunes Eugenio Pérez Fabiano Rosas Fan Ni Fiona Ebner Francesco Cagnin Francisco Iglesias Gavin Shan Gregory Price Gregory Price Hanna Czenczek Hao Zeng Hawkins Jiawei Igor Mammedov Ilya Leoshkevich Ira Weiny Jagannathan Raman Jason Wang Jean-Louis Dupond Jean-Philippe Brucker Jiaxun Yang John Snow Jonathan Cameron Juan Quintela Kevin Wolf Laurent Vivier Lei Yang Leonardo Bras Maksim Davydov Marc-André Lureau Marcin Juszkiewicz Marco Liebel Mark Cave-Ayland Markus Armbruster Matheus Tavares Bernardino Mauro Matteo Cascella Max Fritz Michael S. Tsirkin Michael Tokarev Michal Privoznik Mostafa Saleh Nicholas Piggin Nicolas Saenz Julienne Niek Linnenbank Palmer Dabbelt Paolo Bonzini Peter Maydell Peter Xu Philippe Mathieu-Daudé qianfan Zhao Raghu H Rene Engel Richard Henderson Richard Purdie Ricky Zhou Ryan Wendland Sebastian Ott Sergio Lopez Sid Manning Song Gao Stefan Hajnoczi Stefano Garzarella Steve Sistare Taylor Simpson Thomas Huth Thomas Weißschuh timothee.cocault@gmail.com Timothée Cocault Tommy Wu Vikram Garhwal Viktor Prutyanov Vitaly Cheptsov Vivek Kasireddy Vladimir Sementsov-Ogievskiy Volker Rümelin Xinyu Li Zeng Hao Zhenyu Zhang Zhenzhong Duan Zhuojia Shen jobs: build-amd64-xsm fail build-arm64-xsm fail build-i386-xsm fail build-amd64 fail build-arm64 fail build-armhf fail build-i386 fail build-amd64-libvirt blocked build-arm64-libvirt blocked build-armhf-libvirt blocked build-i386-libvirt blocked build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl blocked test-amd64-coresched-amd64-xl blocked test-arm64-arm64-xl blocked test-armhf-armhf-xl blocked test-amd64-i386-xl blocked test-amd64-coresched-i386-xl blocked test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-i386-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-amd64-libvirt-xsm blocked test-arm64-arm64-libvirt-xsm blocked test-amd64-i386-libvirt-xsm blocked test-amd64-amd64-xl-xsm blocked test-arm64-arm64-xl-xsm blocked test-amd64-i386-xl-xsm blocked test-amd64-amd64-qemuu-nested-amd blocked test-amd64-amd64-xl-pvhv2-amd blocked test-amd64-i386-qemuu-rhel6hvm-amd blocked test-amd64-amd64-dom0pvh-xl-amd blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-freebsd10-amd64 blocked test-amd64-amd64-qemuu-freebsd11-amd64 blocked test-amd64-amd64-qemuu-freebsd12-amd64 blocked test-amd64-amd64-xl-qemuu-ovmf-amd64 blocked test-amd64-i386-xl-qemuu-ovmf-amd64 blocked test-amd64-amd64-xl-qemuu-win7-amd64 blocked test-amd64-i386-xl-qemuu-win7-amd64 blocked test-amd64-amd64-xl-qemuu-ws16-amd64 blocked test-amd64-i386-xl-qemuu-ws16-amd64 blocked test-armhf-armhf-xl-arndale blocked test-amd64-amd64-xl-credit1 blocked test-arm64-arm64-xl-credit1 blocked test-armhf-armhf-xl-credit1 blocked test-amd64-amd64-xl-credit2 blocked test-arm64-arm64-xl-credit2 blocked test-armhf-armhf-xl-credit2 blocked test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-freebsd10-i386 blocked test-amd64-amd64-qemuu-nested-intel blocked test-amd64-amd64-xl-pvhv2-intel blocked test-amd64-i386-qemuu-rhel6hvm-intel blocked test-amd64-amd64-dom0pvh-xl-intel blocked test-amd64-amd64-libvirt blocked test-armhf-armhf-libvirt blocked test-amd64-i386-libvirt blocked test-amd64-amd64-xl-multivcpu blocked test-armhf-armhf-xl-multivcpu blocked test-amd64-amd64-pair blocked test-amd64-i386-pair blocked test-amd64-amd64-libvirt-pair blocked test-amd64-i386-libvirt-pair blocked test-amd64-amd64-xl-pvshim blocked test-amd64-i386-xl-pvshim blocked test-amd64-amd64-pygrub blocked test-armhf-armhf-libvirt-qcow2 blocked test-amd64-amd64-xl-qcow2 blocked test-arm64-arm64-libvirt-raw blocked test-armhf-armhf-libvirt-raw blocked test-amd64-i386-libvirt-raw blocked test-amd64-amd64-xl-rtds blocked test-armhf-armhf-xl-rtds blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-amd64-xl-shadow blocked test-amd64-i386-xl-shadow blocked test-arm64-arm64-xl-thunderx blocked test-amd64-amd64-libvirt-vhd blocked test-arm64-arm64-xl-vhd blocked test-armhf-armhf-xl-vhd blocked test-amd64-i386-xl-vhd blocked ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 15891 lines long.) From xen-devel-bounces@lists.xenproject.org Thu Jun 08 17:21:52 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 08 Jun 2023 17:21:52 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545393.851794 (Exim 4.92) (envelope-from ) id 1q7JKV-0004DG-0K; Thu, 08 Jun 2023 17:21:47 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545393.851794; Thu, 08 Jun 2023 17:21:46 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7JKU-0004D9-Ru; Thu, 08 Jun 2023 17:21:46 +0000 Received: by outflank-mailman (input) for mailman id 545393; Thu, 08 Jun 2023 17:21:45 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7JKT-0004Cz-HM; Thu, 08 Jun 2023 17:21:45 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7JKS-0001wg-DM; Thu, 08 Jun 2023 17:21:44 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7JKR-0001w0-Vd; Thu, 08 Jun 2023 17:21:44 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q7JKR-0004MA-VB; Thu, 08 Jun 2023 17:21:43 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=pXYu0mpLkbTUGa/7UEfcHi46PFMdZS5wdHngRTsXxOg=; b=bx4mUc0BokKldGcaED6MyYzU9w Wu9H+5JuF3vyUWhqwrZyJGqsQ21I9FEgdoa7HhP++dRPVF7hu4umpLpCTME0LbN5ebH9w10SYkSP4 xsI82gW4qR7ISloBlPiYZJEokxxV86NkjG7Iy87nl0H7hemG0oZS4pt7T5CpARl649xY=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [libvirt test] 181293: tolerable all pass - PUSHED X-Osstest-Failures: libvirt:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking libvirt:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking libvirt:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking libvirt:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking libvirt:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking libvirt:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking libvirt:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking libvirt:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt:saverestore-support-check:fail:nonblocking libvirt:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking libvirt:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking libvirt:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking libvirt:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-qcow2:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-qcow2:saverestore-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking libvirt:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking libvirt:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking X-Osstest-Versions-This: libvirt=9b743ee19053db2fc3da8fba1e9cf81915c1e2f4 X-Osstest-Versions-That: libvirt=17565ee0aa14cfb9e6114efb0354bc3a008351af From: osstest service owner Date: Thu, 08 Jun 2023 17:21:43 +0000 flight 181293 libvirt real [real] http://logs.test-lab.xenproject.org/osstest/logs/181293/ Failures :-/ but no regressions. Tests which did not succeed, but are not blocking: test-armhf-armhf-libvirt 16 saverestore-support-check fail like 181239 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail like 181239 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail like 181239 test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-i386-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-i386-libvirt 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt 15 migrate-support-check fail never pass test-arm64-arm64-libvirt 16 saverestore-support-check fail never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-i386-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-libvirt 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-qcow2 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-qcow2 15 saverestore-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail never pass test-armhf-armhf-libvirt-raw 14 migrate-support-check fail never pass version targeted for testing: libvirt 9b743ee19053db2fc3da8fba1e9cf81915c1e2f4 baseline version: libvirt 17565ee0aa14cfb9e6114efb0354bc3a008351af Last test of basis 181239 2023-06-07 04:18:51 Z 1 days Testing same since 181293 2023-06-08 04:18:54 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Jim Fehlig jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-i386-libvirt-xsm pass test-amd64-amd64-libvirt pass test-arm64-arm64-libvirt pass test-armhf-armhf-libvirt pass test-amd64-i386-libvirt pass test-amd64-amd64-libvirt-pair pass test-amd64-i386-libvirt-pair pass test-arm64-arm64-libvirt-qcow2 pass test-armhf-armhf-libvirt-qcow2 pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw pass test-amd64-i386-libvirt-raw pass test-amd64-amd64-libvirt-vhd pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Pushing revision : To xenbits.xen.org:/home/xen/git/libvirt.git 17565ee0aa..9b743ee190 9b743ee19053db2fc3da8fba1e9cf81915c1e2f4 -> xen-tested-master From xen-devel-bounces@lists.xenproject.org Thu Jun 08 17:40:42 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 08 Jun 2023 17:40:42 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545400.851803 (Exim 4.92) (envelope-from ) id 1q7Jcc-0006lJ-De; Thu, 08 Jun 2023 17:40:30 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545400.851803; Thu, 08 Jun 2023 17:40:30 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7Jcc-0006lC-9P; Thu, 08 Jun 2023 17:40:30 +0000 Received: by outflank-mailman (input) for mailman id 545400; Thu, 08 Jun 2023 17:40:28 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7Jca-0006l6-D8 for xen-devel@lists.xenproject.org; Thu, 08 Jun 2023 17:40:28 +0000 Received: from esa3.hc3370-68.iphmx.com (esa3.hc3370-68.iphmx.com [216.71.145.155]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 8bdf1db7-0623-11ee-b232-6b7b168915f2; Thu, 08 Jun 2023 19:40:25 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 8bdf1db7-0623-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686246025; h=from:to:cc:subject:date:message-id:mime-version: content-transfer-encoding; bh=wfkq+LBBsnzmQtNZri50TTkQkuzfMTjeadDBsGMpKlA=; b=dxWwbdMdEZaSyqCblWgkarzM9BsBpeYJqzMi7v88tptJX3+ot09TSpSX bCqrK18zfVIRoDgbjHY+Sfc7Liz+l94Ae1V7cEa1yw87xdT5tlZOmLZ1q 4ZPTKJkvpgs1e3lWbDw+Q/9DyGQTsHn+9tifZAFyyisWAQu0W9RYE3mu8 0=; Authentication-Results: esa3.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none X-SBRS: 4.0 X-MesageID: 112119566 X-Ironport-Server: esa3.hc3370-68.iphmx.com X-Remote-IP: 162.221.156.123 X-Policy: $RELAYED IronPort-Data: A9a23:2B2sd6MunL5hV23vrR27l8FynXyQoLVcMsEvi/4bfWQNrUog0jUBn GdNXGrTaf6PZTb3L9F+a4ri9hsA78SHzNA2Ggto+SlhQUwRpJueD7x1DKtS0wC6dZSfER09v 63yTvGacajYm1eF/k/F3oDJ9CU6jufQAOKnUoYoAwgpLSd8UiAtlBl/rOAwh49skLCRDhiE/ Nj/uKUzAnf8s9JPGjxSs/rrRC9H5qyo42tG5gxmP5ingXeF/5UrJMNHTU2OByOQrrl8RoaSW +vFxbelyWLVlz9F5gSNy+uTnuUiG9Y+DCDW4pZkc/HKbitq/0Te5p0TJvsEAXq7vh3S9zxHJ HehgrTrIeshFvWkdO3wyHC0GQkmVUFN0OevzXRSLaV/ZqAJGpfh66wGMa04AWEX0sJ7UGBz/ 8YXEzQqUAq5hMKE0Yy2ePY506zPLOGzVG8eknRpzDWfBvc6W5HTBa7N4Le03h9p2JoIR6yHI ZNEN3w2Nk+ojx5nYz/7DLoXmuuyi2a5WDpfsF+P/oI84nTJzRw327/oWDbQUoXTH5wMzxvG+ Aoq+UypDR0lOIzOkAOi9yu8rNDjvzPgSJAdQejQGvlC3wTImz175ActfUu2p7y1h1CzX/pbK lcI4Ww+oK4q7kupQ9LhGRqirxasvBEGXMFLO/Yn8wzLwa3Riy6dG2MNCDBIbtcrsMsrbTUw0 xmCmNaBONB0mOTLEzTHrO7S9G7sf3FPdgfueBPoUyMh74jinYsJgSnLaeh5Kq2VvMzLFAPvl mXiQDcFu50fissC1qOe9F/Bgi6xqpWhcjPZ9jk7TUr+sFonOdfNi5iArAGCsK0edNrxokyp5 iBspiSI0AwZ4XhhfgSpSf5FIrym7u3t3Nb00Q82RMlJG9hAFheekWFsDNNWfh8B3iUsI2WBj KrvVeR5uvdu0IOCN/MfXm5II51CIVLcPdrkTOvISdFFf4J8cgSKlAk3Ox7Ohj63wBN2zvFmU Xt+TSpLJSxDYZmLMRLsH7tNuVPV7n5WKZzvqWDTkE38jOv2iI+9QrYZKlqeBt3VH4vdyDg5B +13bpPQoz0GCb2WX8Ui2dJLRbz8BSRhVM+eRg0+XrLrHzeK70l/U6GLm+lwJtANcmY8vr6gw 0xRk3RwkDLX7UAr4y3QApy/QNsDhapCkE8= IronPort-HdrOrdr: A9a23:R2EyEKloR/XVvQYy73gSG3kaIfTpDfIN3DAbv31ZSRFFG/FwWf re5cjztCWE8Ar5PUtLpTnuAtjkfZqxz+8X3WBzB9eftWvdyQ+VxehZhOOIogEIcBeOkdK1u5 0QFZSWy+edMbG5t6vHCcWDfOrICePozImYwd3C1HtkT0VRZ7l94wByBkK3GlB/LTM2Z6YEKA == X-Talos-CUID: =?us-ascii?q?9a23=3AYh2pTGhl+5W/hJ5vF1h8pYXGfDJuVnGMzUraGUC?= =?us-ascii?q?DDUFXUoeWaW2Bxq5WjJ87?= X-Talos-MUID: 9a23:fRDXcAXoUvzMcz7q/G/jiA5uZJYx2oOrUVAnrrkkq9KUJyMlbg== X-IronPort-AV: E=Sophos;i="6.00,227,1681185600"; d="scan'208";a="112119566" From: Andrew Cooper To: Xen-devel CC: Andrew Cooper , Anthony PERARD , Juergen Gross , Luca Fancellu Subject: [PATCH] tools: Move MASK_INSR to common-macros.h Date: Thu, 8 Jun 2023 18:40:14 +0100 Message-ID: <20230608174014.2500954-1-andrew.cooper3@citrix.com> X-Mailer: git-send-email 2.30.2 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain MASK_EXTR() and MASK_INSR() are a matching pair. Keep them together. Fixes: 56a7aaa16bfe ("tools: add physinfo arch_capabilities handling for Arm") Signed-off-by: Andrew Cooper --- CC: Anthony PERARD CC: Juergen Gross CC: Luca Fancellu --- tools/include/xen-tools/common-macros.h | 1 + tools/libs/light/libxl_internal.h | 2 -- 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/tools/include/xen-tools/common-macros.h b/tools/include/xen-tools/common-macros.h index d53b88182560..168691be0e93 100644 --- a/tools/include/xen-tools/common-macros.h +++ b/tools/include/xen-tools/common-macros.h @@ -73,6 +73,7 @@ #endif #define MASK_EXTR(v, m) (((v) & (m)) / ((m) & -(m))) +#define MASK_INSR(v, m) (((v) * ((m) & -(m))) & (m)) #ifndef __must_check #define __must_check __attribute__((__warn_unused_result__)) diff --git a/tools/libs/light/libxl_internal.h b/tools/libs/light/libxl_internal.h index 8aba3e138909..61f4fe1dec55 100644 --- a/tools/libs/light/libxl_internal.h +++ b/tools/libs/light/libxl_internal.h @@ -132,8 +132,6 @@ #define DIV_ROUNDUP(n, d) (((n) + (d) - 1) / (d)) -#define MASK_INSR(v, m) (((v) * ((m) & -(m))) & (m)) - #define LIBXL__LOGGING_ENABLED #ifdef LIBXL__LOGGING_ENABLED -- 2.30.2 From xen-devel-bounces@lists.xenproject.org Thu Jun 08 17:57:38 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 08 Jun 2023 17:57:38 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545381.851819 (Exim 4.92) (envelope-from ) id 1q7Jsx-0008M0-QM; Thu, 08 Jun 2023 17:57:23 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545381.851819; Thu, 08 Jun 2023 17:57:23 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7Jsx-0008Lt-MS; Thu, 08 Jun 2023 17:57:23 +0000 Received: by outflank-mailman (input) for mailman id 545381; Thu, 08 Jun 2023 16:41:33 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7IhZ-0008Cm-Fb for xen-devel@lists.xenproject.org; Thu, 08 Jun 2023 16:41:33 +0000 Received: from madras.collabora.co.uk (madras.collabora.co.uk [46.235.227.172]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 522cacaa-061b-11ee-8611-37d641c3527e; Thu, 08 Jun 2023 18:41:31 +0200 (CEST) Received: from [192.168.178.53] (82-71-8-225.dsl.in-addr.zen.co.uk [82.71.8.225]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits)) (No client certificate requested) (Authenticated sender: bbeckett) by madras.collabora.co.uk (Postfix) with ESMTPSA id 16AEE6606EC6; Thu, 8 Jun 2023 17:41:30 +0100 (BST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 522cacaa-061b-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=collabora.com; s=mail; t=1686242490; bh=Rzujm8ZEu4vFHkLsK4BgjWVbvoM14g7ZNrm+vswmQsU=; h=Date:Subject:To:Cc:References:From:In-Reply-To:From; b=jWgmTkGu1rjEplOwPqxZHUReS50eP89h/htmAUkvtGNCAMCXYAqVHeYmUHwHz2LDX /U/GMLG4mBASufKBUXErAHExpIP4BlHJpNZNP5v+YQLkQkOLueACNSk72wLJi0wUsE MHU6siynd/dV/cZiyE11QRx9dRqF0aA+OpgoAS2QrmN2W44hdMF/eQknCsIjSRJp3t 2amueOH5W3tCYW1TlHCVl1IS03QJnPpFrrPFNeNa31WIBaqHrJNhL40N7Y+Nva60z+ flK15+ndQoMY+sJwl6UPlsDGCVklazd36BHYVS61OsxK3cc4TvzRGQ9auRWDfUZMzE n4DuGzs5oQmFA== Message-ID: Date: Thu, 8 Jun 2023 17:41:27 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.2 Subject: Re: [QEMU PATCH 1/1] virtgpu: do not destroy resources when guest suspend To: Jiqian Chen , Gerd Hoffmann , "Michael S . Tsirkin" , Stefano Stabellini , Anthony PERARD , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Jan Beulich , "Dr . David Alan Gilbert" , qemu-devel@nongnu.org, xen-devel@lists.xenproject.org Cc: Alex Deucher , Christian Koenig , Stewart Hildebrand , Xenia Ragiadakou , Honglei Huang , Julia Zhang , Huang Rui References: <20230608025655.1674357-1-Jiqian.Chen@amd.com> <20230608025655.1674357-2-Jiqian.Chen@amd.com> Content-Language: en-US From: Robert Beckett In-Reply-To: <20230608025655.1674357-2-Jiqian.Chen@amd.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit On 08/06/2023 03:56, Jiqian Chen wrote: > After suspending and resuming guest VM, you will get > a black screen, and the display can't come back. > > This is because when guest did suspending, it called > into qemu to call virtio_gpu_gl_reset. In function > virtio_gpu_gl_reset, it destroyed resources and reset > renderer, which were used for display. As a result, > guest's screen can't come back to the time when it was > suspended and only showed black. > > So, this patch adds a new ctrl message > VIRTIO_GPU_CMD_STATUS_FREEZING to get notification from > guest. If guest is during suspending, it sets freezing > status of virtgpu to true, this will prevent destroying > resources and resetting renderer when guest calls into > virtio_gpu_gl_reset. If guest is during resuming, it sets > freezing to false, and then virtio_gpu_gl_reset will keep > its origin actions and has no other impaction. > > Signed-off-by: Jiqian Chen > --- > hw/display/virtio-gpu-gl.c | 9 ++++++- > hw/display/virtio-gpu-virgl.c | 3 +++ > hw/display/virtio-gpu.c | 26 +++++++++++++++++++-- > include/hw/virtio/virtio-gpu.h | 3 +++ > include/standard-headers/linux/virtio_gpu.h | 9 +++++++ > 5 files changed, 47 insertions(+), 3 deletions(-) > > diff --git a/hw/display/virtio-gpu-gl.c b/hw/display/virtio-gpu-gl.c > index e06be60dfb..e11ad233eb 100644 > --- a/hw/display/virtio-gpu-gl.c > +++ b/hw/display/virtio-gpu-gl.c > @@ -100,7 +100,14 @@ static void virtio_gpu_gl_reset(VirtIODevice *vdev) > */ > if (gl->renderer_inited && !gl->renderer_reset) { > virtio_gpu_virgl_reset_scanout(g); > - gl->renderer_reset = true; > + /* > + * If guest is suspending, we shouldn't reset renderer, > + * otherwise, the display can't come back to the time when > + * it was suspended after guest resumed. > + */ > + if (!g->freezing) { > + gl->renderer_reset = true; > + } > } > } > > diff --git a/hw/display/virtio-gpu-virgl.c b/hw/display/virtio-gpu-virgl.c > index 73cb92c8d5..183ec92d53 100644 > --- a/hw/display/virtio-gpu-virgl.c > +++ b/hw/display/virtio-gpu-virgl.c > @@ -464,6 +464,9 @@ void virtio_gpu_virgl_process_cmd(VirtIOGPU *g, > case VIRTIO_GPU_CMD_GET_EDID: > virtio_gpu_get_edid(g, cmd); > break; > + case VIRTIO_GPU_CMD_STATUS_FREEZING: > + virtio_gpu_cmd_status_freezing(g, cmd); > + break; > default: > cmd->error = VIRTIO_GPU_RESP_ERR_UNSPEC; > break; > diff --git a/hw/display/virtio-gpu.c b/hw/display/virtio-gpu.c > index 5e15c79b94..8f235d7848 100644 > --- a/hw/display/virtio-gpu.c > +++ b/hw/display/virtio-gpu.c > @@ -373,6 +373,16 @@ static void virtio_gpu_resource_create_blob(VirtIOGPU *g, > QTAILQ_INSERT_HEAD(&g->reslist, res, next); > } > > +void virtio_gpu_cmd_status_freezing(VirtIOGPU *g, > + struct virtio_gpu_ctrl_command *cmd) > +{ > + struct virtio_gpu_status_freezing sf; > + > + VIRTIO_GPU_FILL_CMD(sf); > + virtio_gpu_bswap_32(&sf, sizeof(sf)); > + g->freezing = sf.freezing; > +} > + > static void virtio_gpu_disable_scanout(VirtIOGPU *g, int scanout_id) > { > struct virtio_gpu_scanout *scanout = &g->parent_obj.scanout[scanout_id]; > @@ -986,6 +996,9 @@ void virtio_gpu_simple_process_cmd(VirtIOGPU *g, > case VIRTIO_GPU_CMD_RESOURCE_DETACH_BACKING: > virtio_gpu_resource_detach_backing(g, cmd); > break; > + case VIRTIO_GPU_CMD_STATUS_FREEZING: > + virtio_gpu_cmd_status_freezing(g, cmd); > + break; > default: > cmd->error = VIRTIO_GPU_RESP_ERR_UNSPEC; > break; > @@ -1344,6 +1357,8 @@ void virtio_gpu_device_realize(DeviceState *qdev, Error **errp) > QTAILQ_INIT(&g->reslist); > QTAILQ_INIT(&g->cmdq); > QTAILQ_INIT(&g->fenceq); > + > + g->freezing = false; > } > > void virtio_gpu_reset(VirtIODevice *vdev) > @@ -1352,8 +1367,15 @@ void virtio_gpu_reset(VirtIODevice *vdev) > struct virtio_gpu_simple_resource *res, *tmp; > struct virtio_gpu_ctrl_command *cmd; > > - QTAILQ_FOREACH_SAFE(res, &g->reslist, next, tmp) { > - virtio_gpu_resource_destroy(g, res); > + /* > + * If guest is suspending, we shouldn't destroy resources, > + * otherwise, the display can't come back to the time when > + * it was suspended after guest resumed. > + */ What should happen if qemu is torn down while the guest is suspended. Currently there is no other place where the resources will be destroyed. While it is likely viable to rely on process auto tear down of mem and files from the host cleanup point of view, it feels bad to rely on that. Perhaps an inverted conditional with destroy loop in virtio_gpu_device_unrealize() would suffice? I am not a qemu expert, but I am assuming that the unrealize call will be called during machine destruction if the guest is suspended. Also if qemu supports (or intends to support in future) hotplugging of the device, the would help avoid leaks until qemu exit too. > + if (!g->freezing) { > + QTAILQ_FOREACH_SAFE(res, &g->reslist, next, tmp) { > + virtio_gpu_resource_destroy(g, res); > + } > } > > while (!QTAILQ_EMPTY(&g->cmdq)) { > diff --git a/include/hw/virtio/virtio-gpu.h b/include/hw/virtio/virtio-gpu.h > index 2e28507efe..c21c2990fb 100644 > --- a/include/hw/virtio/virtio-gpu.h > +++ b/include/hw/virtio/virtio-gpu.h > @@ -173,6 +173,7 @@ struct VirtIOGPU { > > uint64_t hostmem; > > + bool freezing; > bool processing_cmdq; > QEMUTimer *fence_poll; > QEMUTimer *print_stats; > @@ -284,5 +285,7 @@ void virtio_gpu_virgl_reset_scanout(VirtIOGPU *g); > void virtio_gpu_virgl_reset(VirtIOGPU *g); > int virtio_gpu_virgl_init(VirtIOGPU *g); > int virtio_gpu_virgl_get_num_capsets(VirtIOGPU *g); > +void virtio_gpu_cmd_status_freezing(VirtIOGPU *g, > + struct virtio_gpu_ctrl_command *cmd); > > #endif > diff --git a/include/standard-headers/linux/virtio_gpu.h b/include/standard-headers/linux/virtio_gpu.h > index 2da48d3d4c..aefffbd751 100644 > --- a/include/standard-headers/linux/virtio_gpu.h > +++ b/include/standard-headers/linux/virtio_gpu.h > @@ -116,6 +116,9 @@ enum virtio_gpu_ctrl_type { > VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID, > VIRTIO_GPU_RESP_ERR_INVALID_CONTEXT_ID, > VIRTIO_GPU_RESP_ERR_INVALID_PARAMETER, > + > + /* status */ > + VIRTIO_GPU_CMD_STATUS_FREEZING = 0x1300, > }; > > enum virtio_gpu_shm_id { > @@ -453,4 +456,10 @@ struct virtio_gpu_resource_unmap_blob { > uint32_t padding; > }; > > +/* VIRTIO_GPU_CMD_STATUS_FREEZING */ > +struct virtio_gpu_status_freezing { > + struct virtio_gpu_ctrl_hdr hdr; > + __u32 freezing; > +}; > + > #endif From xen-devel-bounces@lists.xenproject.org Thu Jun 08 18:18:27 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 08 Jun 2023 18:18:27 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545411.851828 (Exim 4.92) (envelope-from ) id 1q7KD6-0002UN-DQ; Thu, 08 Jun 2023 18:18:12 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545411.851828; Thu, 08 Jun 2023 18:18:12 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7KD6-0002UG-AP; Thu, 08 Jun 2023 18:18:12 +0000 Received: by outflank-mailman (input) for mailman id 545411; Thu, 08 Jun 2023 18:18:11 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7KD5-0002U6-1i; Thu, 08 Jun 2023 18:18:11 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7KD4-0003Kn-Kt; Thu, 08 Jun 2023 18:18:10 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7KD4-0003Dx-E4; Thu, 08 Jun 2023 18:18:10 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q7KD4-0005lA-DZ; Thu, 08 Jun 2023 18:18:10 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=MFKYvciE+FInKgirZPlzbGqeZhEUQD5UUv5zK3gu2Qo=; b=c6XnFl+IL/GiEBSpntkTu1tagl lOGASlaO03WnnIgWkwJmh1pIVxyhfVshQzhe9qAT9RJIXXNlZnGL+cC6IIt+VtUYr6o7Eg/492LRd fDTj4Y5q6fMSNMx2pyri0clIZgml3kmdI8lwxKLcCGj1xN8F1zb6T7I5tUOCI0vf762E=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable-smoke test] 181311: regressions - FAIL X-Osstest-Failures: xen-unstable-smoke:build-arm64-xsm:xen-build:fail:regression xen-unstable-smoke:build-armhf:xen-build:fail:regression xen-unstable-smoke:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking xen-unstable-smoke:test-armhf-armhf-xl:build-check(1):blocked:nonblocking xen-unstable-smoke:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking X-Osstest-Versions-This: xen=6915a120641b5d232762af7882266048cf039ca0 X-Osstest-Versions-That: xen=64a647f8d817c6989edc000613b5afae19f03f99 From: osstest service owner Date: Thu, 08 Jun 2023 18:18:10 +0000 flight 181311 xen-unstable-smoke real [real] http://logs.test-lab.xenproject.org/osstest/logs/181311/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-arm64-xsm 6 xen-build fail REGR. vs. 181233 build-armhf 6 xen-build fail REGR. vs. 181233 Tests which did not succeed, but are not blocking: test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 15 migrate-support-check fail never pass version targeted for testing: xen 6915a120641b5d232762af7882266048cf039ca0 baseline version: xen 64a647f8d817c6989edc000613b5afae19f03f99 Last test of basis 181233 2023-06-07 02:04:37 Z 1 days Failing since 181246 2023-06-07 11:02:03 Z 1 days 15 attempts Testing same since 181303 2023-06-08 11:00:25 Z 0 days 4 attempts ------------------------------------------------------------ People who touched revisions under test: Andrew Cooper Christian Lindig George Dunlap Henry Wang # CHANGELOG Juergen Gross Julien Grall Luca Fancellu Michal Orzel Roger Pau Monne Roger Pau Monné Stefano Stabellini jobs: build-arm64-xsm fail build-amd64 pass build-armhf fail build-amd64-libvirt pass test-armhf-armhf-xl blocked test-arm64-arm64-xl-xsm blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-libvirt pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 504 lines long.) From xen-devel-bounces@lists.xenproject.org Thu Jun 08 19:33:45 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 08 Jun 2023 19:33:45 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545421.851839 (Exim 4.92) (envelope-from ) id 1q7LO0-0002Dk-0C; Thu, 08 Jun 2023 19:33:32 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545421.851839; Thu, 08 Jun 2023 19:33:31 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7LNz-0002Dd-Th; Thu, 08 Jun 2023 19:33:31 +0000 Received: by outflank-mailman (input) for mailman id 545421; Thu, 08 Jun 2023 19:33:31 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7LNz-0002DU-4q for xen-devel@lists.xenproject.org; Thu, 08 Jun 2023 19:33:31 +0000 Received: from esa4.hc3370-68.iphmx.com (esa4.hc3370-68.iphmx.com [216.71.155.144]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 56c6c53b-0633-11ee-b232-6b7b168915f2; Thu, 08 Jun 2023 21:33:28 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 56c6c53b-0633-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686252808; h=from:to:cc:subject:date:message-id:mime-version: content-transfer-encoding; bh=klSREHJNAcrzUx91QfjCn18YHLc5p2l+4cu9MJNosAQ=; b=Sql3ma5tgvnFEYJFbSsZKce+B3XDwGRzUQzW+E13HPoTuyt4N0berURN 6dAd5xi4VA7kXW85LWkYGwqMCOCzpnBBPC+I4N+tMCc59/m7oZ2AuM1D3 HA4VOlCMuP13wg0y8/7CpZu9ZOXjEVXObe5939++px6IrB6wjIRcC2uq6 U=; Authentication-Results: esa4.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none X-SBRS: 4.0 X-MesageID: 114631615 X-Ironport-Server: esa4.hc3370-68.iphmx.com X-Remote-IP: 162.221.156.123 X-Policy: $RELAYED IronPort-Data: A9a23:6QSR0K3+O7icrrqZD/bD5dNxkn2cJEfYwER7XKvMYLTBsI5bpzdWz DFMD22GafmPM2Xzc9t0aI/g9xwEvcWBzoM2GQZvpC1hF35El5HIVI+TRqvS04F+DeWYFR46s J9OAjXkBJppJpMJjk71atANlVEliefTAOK6ULWeUsxIbVcMYD87jh5+kPIOjIdtgNyoayuAo tq3qMDEULOf82cc3lk8teTb8HuDgNyo4GlD5gJmNagR1LPjvyJ94Kw3dPnZw0TQGuG4LsbiL 87fwbew+H/u/htFIrtJRZ6iLyXm6paLVeS/oiI+t5qK23CulQRrukoPD9IOaF8/ttm8t4sZJ OOhF3CHYVxB0qXkwIzxWvTDes10FfUuFLTveRBTvSEPpqFvnrSFL/hGVSkL0YMkFulfGmIfr cEHBSkxQzub1vjsnu29YLhimZF2RCXrFNt3VnBIyDjYCbAtQIzZQrWM7thdtNsyrpkQR7CEP ZNfMGcxKk2aOHWjOX9OYH46tM6uimPybHtzr1WNqLBsy2PS0BZwwP7mN9+9ltmiHJwJwB3B+ Dubl4j/KjE8C9HF1TuPySKtuffVnH/bBqIWJJTto5aGh3XMnzdOWXX6T2CTsfS/z0KzRd9bA 0gV4TY167g/8lSxSdvwVAH+p2SL1jYYRtFZVeMz7gqAzq7Jyw+DAy4PSTspVTA9nJZoH3pwj AbPxo63Q2U169V5VE5x6J+PrmLqBDc4NFMvTjdVV1FbvN/J8Y8s20enoslYLIa5idj8GDfVy j+MrTQji7h7sfPnx5lX7nic3Wvy+8Ghohodo1yOAzn7tl8RiJuNPdTA1LTN0RpXwG91pHGlt WNMpcWR5ftm4XqlxH3UG7Vl8F1ECp+43Nzgbb1HRcNJG9GRF5mLI+htDMlWfhsBDyr9UWaBj LXvkQ1Q/oRPG3ChcLV6ZYm8Y+xzk/i+T4i0DKqJMYEeCnSUSONg1Hs3DXN8Iki3yBR8+U3BE crznTmQ4YYyVv08kWveqxY12r433CEurV4/triipylLJYG2PSbPIZ9caQvmUwzMxP/cyOkj2 4oFZpTiJtQ2eLGWXxQ7BqZJcQlQdSVqW8iqwyGVH8baSjdb9KgaI6e56dscl0ZNxcy5Ss+gE qmBZ3Jl IronPort-HdrOrdr: A9a23:oSpN56CCVPY5jTXlHemp55DYdb4zR+YMi2TDtnoBLyC9F/byqy nApoV+6faZslYssRIb6Le90cu7LE80nKQdieMs1NGZLWrbUQCTXeRfBOXZsl/d8hrFmtK1BJ 0AT0AuYOefMbAl5fyU3DWF X-Talos-CUID: 9a23:H0BCqGCBuMpWiNH6EzJkpRYpBe08TlD21CbKeRHnD0w4RqLAHA== X-Talos-MUID: 9a23:b/rgIgUyTMbL/Sfq/B/Kuzw4KMZi2PSvN1gXkMkm5emABQUlbg== X-IronPort-AV: E=Sophos;i="6.00,227,1681185600"; d="scan'208";a="114631615" From: Andrew Cooper To: Xen-devel CC: Andrew Cooper , Christian Lindig , =?UTF-8?q?Edwin=20T=C3=B6r=C3=B6k?= , Rob Hoes , Luca Fancellu Subject: [PATCH] tools/ocaml/xc: Fix xc_physinfo() bindings Date: Thu, 8 Jun 2023 20:33:12 +0100 Message-ID: <20230608193312.2520222-1-andrew.cooper3@citrix.com> X-Mailer: git-send-email 2.30.2 MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit The original change doesn't compile on ARM: xenctrl_stubs.c: In function 'stub_xc_physinfo': xenctrl_stubs.c:821:16: error: unused variable 'arch_cap_flags_tag' [-Werror=unused-variable] 821 | int r, arch_cap_flags_tag; | ^~~~~~~~~~~~~~~~~~ cc1: all warnings being treated as errors but it was buggy too. First, it tried storing an int in a pointer slot, causing heap corruption. Next, it is not legitimate to exclude arm32 in the toolstack as it explicitly can operate an arm64 toolstack and build arm64 domains. That in turn means that you can't stash a C uint32_t in an OCaml int. Rewrite the arch_capabilities handling from scratch. Break it out into a separate function, and make the construction of arch_physinfo_cap_flags common to prevent other indirection bugs. Reintroduce arm_physinfo_caps with the fields broken out. Fixes: 56a7aaa16bfe ("tools: add physinfo arch_capabilities handling for Arm") Signed-off-by: Andrew Cooper --- CC: Christian Lindig CC: Edwin Török CC: Rob Hoes CC: Luca Fancellu RFC - untested because I'm failing at cross-compiling ARM Ocaml, but staging has been broken too long... --- tools/ocaml/libs/xc/xenctrl.ml | 7 +++- tools/ocaml/libs/xc/xenctrl.mli | 7 +++- tools/ocaml/libs/xc/xenctrl_stubs.c | 52 ++++++++++++++++++++--------- 3 files changed, 48 insertions(+), 18 deletions(-) diff --git a/tools/ocaml/libs/xc/xenctrl.ml b/tools/ocaml/libs/xc/xenctrl.ml index bf23ca50bb15..d6c6eb73db44 100644 --- a/tools/ocaml/libs/xc/xenctrl.ml +++ b/tools/ocaml/libs/xc/xenctrl.ml @@ -128,10 +128,15 @@ type physinfo_cap_flag = | CAP_Gnttab_v1 | CAP_Gnttab_v2 +type arm_physinfo_caps = + { + sve_vl: int; + } + type x86_physinfo_cap_flag type arch_physinfo_cap_flags = - | ARM of int + | ARM of arm_physinfo_caps | X86 of x86_physinfo_cap_flag list type physinfo = diff --git a/tools/ocaml/libs/xc/xenctrl.mli b/tools/ocaml/libs/xc/xenctrl.mli index ed1e28ea30a0..3bfc16edba96 100644 --- a/tools/ocaml/libs/xc/xenctrl.mli +++ b/tools/ocaml/libs/xc/xenctrl.mli @@ -113,10 +113,15 @@ type physinfo_cap_flag = | CAP_Gnttab_v1 | CAP_Gnttab_v2 +type arm_physinfo_caps = + { + sve_vl: int; + } + type x86_physinfo_cap_flag type arch_physinfo_cap_flags = - | ARM of int + | ARM of arm_physinfo_caps | X86 of x86_physinfo_cap_flag list type physinfo = { diff --git a/tools/ocaml/libs/xc/xenctrl_stubs.c b/tools/ocaml/libs/xc/xenctrl_stubs.c index a03da31f6f2c..6b2869af04ef 100644 --- a/tools/ocaml/libs/xc/xenctrl_stubs.c +++ b/tools/ocaml/libs/xc/xenctrl_stubs.c @@ -812,13 +812,46 @@ CAMLprim value stub_xc_send_debug_keys(value xch_val, value keys) CAMLreturn(Val_unit); } +CAMLprim value physinfo_arch_caps(const xc_physinfo_t *info) +{ + CAMLparam0(); + CAMLlocal2(arch_cap_flags, arch_obj); + int tag = -1; + +#if defined(__arm__) || defined(__aarch64__) + + tag = 0; /* tag ARM */ + + arch_obj = caml_alloc_tuple(1); + + Store_field(arch_obj, 0, + Val_int(MASK_EXTR(info->arch_capabilities, + XEN_SYSCTL_PHYSCAP_ARM_SVE_MASK) * 128)); + +#elif defined(__i386__) || defined(__x86_64__) + + tag = 1; /* tag x86 */ + + arch_obj = Tag_cons; + +#endif + + if ( tag < 0 ) + caml_failwith("Unhandled architecture"); + + arch_cap_flags = caml_alloc_small(1, tag); + Store_field(arch_cap_flags, 0, arch_obj); + + return arch_cap_flags; +} + CAMLprim value stub_xc_physinfo(value xch_val) { CAMLparam1(xch_val); - CAMLlocal4(physinfo, cap_list, arch_cap_flags, arch_cap_list); + CAMLlocal2(physinfo, cap_list); xc_interface *xch = xch_of_val(xch_val); xc_physinfo_t c_physinfo; - int r, arch_cap_flags_tag; + int r; caml_enter_blocking_section(); r = xc_physinfo(xch, &c_physinfo); @@ -846,20 +879,7 @@ CAMLprim value stub_xc_physinfo(value xch_val) Store_field(physinfo, 7, caml_copy_nativeint(c_physinfo.scrub_pages)); Store_field(physinfo, 8, cap_list); Store_field(physinfo, 9, Val_int(c_physinfo.max_cpu_id + 1)); - -#if defined(__i386__) || defined(__x86_64__) - arch_cap_list = Tag_cons; - - arch_cap_flags_tag = 1; /* tag x86 */ - - arch_cap_flags = caml_alloc_small(1, arch_cap_flags_tag); - Store_field(arch_cap_flags, 0, arch_cap_list); - Store_field(physinfo, 10, arch_cap_flags); -#elif defined(__aarch64__) - Store_field(physinfo, 10, Val_int(c_physinfo.arch_capabilities)); -#else - caml_failwith("Unhandled architecture"); -#endif + Store_field(physinfo, 10, physinfo_arch_caps(&c_physinfo)); CAMLreturn(physinfo); } base-commit: 6915a120641b5d232762af7882266048cf039ca0 prerequisite-patch-id: 85ffb6cbe1ddfdec0afb2ac5c2cfd8910ddfd783 -- 2.30.2 From xen-devel-bounces@lists.xenproject.org Thu Jun 08 19:38:17 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 08 Jun 2023 19:38:17 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545426.851848 (Exim 4.92) (envelope-from ) id 1q7LSa-0002pS-Ja; Thu, 08 Jun 2023 19:38:16 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545426.851848; Thu, 08 Jun 2023 19:38:16 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7LSa-0002pL-Gr; Thu, 08 Jun 2023 19:38:16 +0000 Received: by outflank-mailman (input) for mailman id 545426; Thu, 08 Jun 2023 19:38:15 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7LSY-0002pD-V6 for xen-devel@lists.xenproject.org; Thu, 08 Jun 2023 19:38:15 +0000 Received: from EUR05-DB8-obe.outbound.protection.outlook.com (mail-db8eur05on20623.outbound.protection.outlook.com [2a01:111:f400:7e1a::623]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 00c9bb4e-0634-11ee-b232-6b7b168915f2; Thu, 08 Jun 2023 21:38:12 +0200 (CEST) Received: from AS9PR06CA0383.eurprd06.prod.outlook.com (2603:10a6:20b:460::30) by GV1PR08MB7732.eurprd08.prod.outlook.com (2603:10a6:150:53::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Thu, 8 Jun 2023 19:38:06 +0000 Received: from AM7EUR03FT041.eop-EUR03.prod.protection.outlook.com (2603:10a6:20b:460:cafe::e0) by AS9PR06CA0383.outlook.office365.com (2603:10a6:20b:460::30) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.19 via Frontend Transport; Thu, 8 Jun 2023 19:38:06 +0000 Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by AM7EUR03FT041.mail.protection.outlook.com (100.127.140.233) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.25 via Frontend Transport; Thu, 8 Jun 2023 19:38:06 +0000 Received: ("Tessian outbound 945aec65ec65:v136"); Thu, 08 Jun 2023 19:38:06 +0000 Received: from d2a64280a075.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id D9DC837B-5200-4E02-B373-B1318579EC10.1; Thu, 08 Jun 2023 19:37:13 +0000 Received: from EUR02-VI1-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id d2a64280a075.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Thu, 08 Jun 2023 19:37:13 +0000 Received: from AM6PR08MB3749.eurprd08.prod.outlook.com (2603:10a6:20b:8f::22) by AM8PR08MB6417.eurprd08.prod.outlook.com (2603:10a6:20b:362::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.32; Thu, 8 Jun 2023 19:37:11 +0000 Received: from AM6PR08MB3749.eurprd08.prod.outlook.com ([fe80::ed0b:5730:a1f9:577b]) by AM6PR08MB3749.eurprd08.prod.outlook.com ([fe80::ed0b:5730:a1f9:577b%4]) with mapi id 15.20.6455.037; Thu, 8 Jun 2023 19:37:11 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 00c9bb4e-0634-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=n++UqojOSOM73ZUCVkaPazLm1GBQO/VQViA7ZsVp7VE=; b=4OmdcSVO8XBL6Qr1zZOGgs+Zos8bmo8pV3yUm3qCOX1DQD6Hh0BZXg+Kae5hkxMJja0MdYJmjBZhqJcfcKQEMFOKaB2Mv7S4EZo997JltJ0jEtDXDpaMkTmmYa1CG4Z8/2GggPxMrKtDcYKmRuf/ckDS1puKICnnJWvT/6eSpCM= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C X-CheckRecipientChecked: true X-CR-MTA-CID: cdad0697cc15dd54 X-CR-MTA-TID: 64aa7808 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Ev9q1X6Ds5aN0ua0/+qXFCWjeCZnB52rjfh5jlsRvP3UaNBb6JRaQczMegM5IC/KMUX49xj7lksavZwQxxLByL2wu097GK1utaRsi9X8co7SLXGylTuJ2sgZHeR6HPluoVfkiesrE2P1fue26IsUSXWYO1i8osrK2vENyKrq5oC1HX7Oi8dsKyd8Mz3/1M+jX+Qn6qKiIXkUiox6D59QBqIfuM3Cyocme99Mu3ZFaxZsS5G0dH3oXlDSeyiqOdafBqMB+jLg9hjC91IFW6rGfyziZx6w2NZAvFkHSudP3srBMrFl8RWDGRvT1TsKCJX5mhPWOagKWtCCYgNh2emf7g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=n++UqojOSOM73ZUCVkaPazLm1GBQO/VQViA7ZsVp7VE=; b=LaZFLYP7b27ZzqP7qjQVKHuBsWEZPjjShhQeq4bdWDkku3CTDOAnN66bdZB0VYtZOJNqdcjy1scnF6Qcpwc1HQG1S+lXNHwT9bFpfBz9zDLCw42SjlHk3ZxQOUYW9L+q1XHZcQopesqndFoqrC+k90qpDquDXTs/Wdy+b12S23RD8IGlFcjACgXsebwaALgV6weiHlqAGTy0nyqRMRF7NnhLsc9rpxrKlXXI/5efDUkfKubGnGNvm7C0WTqZg3wSag29ymoW4vJNGfkbcy4uq+ZI2flitpyLgMxDcg+WPGtzkHli5RQLZpVyhTd5dg9yjePyEtYSw6FwaIhhf90hLw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=n++UqojOSOM73ZUCVkaPazLm1GBQO/VQViA7ZsVp7VE=; b=4OmdcSVO8XBL6Qr1zZOGgs+Zos8bmo8pV3yUm3qCOX1DQD6Hh0BZXg+Kae5hkxMJja0MdYJmjBZhqJcfcKQEMFOKaB2Mv7S4EZo997JltJ0jEtDXDpaMkTmmYa1CG4Z8/2GggPxMrKtDcYKmRuf/ckDS1puKICnnJWvT/6eSpCM= From: Luca Fancellu To: Andrew Cooper CC: Xen-devel , Anthony PERARD , Juergen Gross Subject: Re: [PATCH] tools: Move MASK_INSR to common-macros.h Thread-Topic: [PATCH] tools: Move MASK_INSR to common-macros.h Thread-Index: AQHZmjBTIpVZOkjuH06O82Z2wJSQ2a+BTMwA Date: Thu, 8 Jun 2023 19:37:08 +0000 Message-ID: <9BAB3408-676E-4801-BCE1-4DB7BE081ADB@arm.com> References: <20230608174014.2500954-1-andrew.cooper3@citrix.com> In-Reply-To: <20230608174014.2500954-1-andrew.cooper3@citrix.com> Accept-Language: en-GB, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-mailer: Apple Mail (2.3731.600.7) Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-traffictypediagnostic: AM6PR08MB3749:EE_|AM8PR08MB6417:EE_|AM7EUR03FT041:EE_|GV1PR08MB7732:EE_ X-MS-Office365-Filtering-Correlation-Id: 0766fca6-010d-4a40-c505-08db6857e1ca x-checkrecipientrouted: true nodisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: rnS/7pl8KTBs7pRoQ+cf/DSgiXuV6k/+x1OYsGuRiDu2gxJ/f0IziilN7vFapJMOyHrxtykrAXo6iLd1Rx5WhGUJA4Q3e3++dh0Y6KoAgU9v3dhBspvOXoOpIojKz0mOAqFiKgtP5ax9OBWFeOIZ5nFFtIU53O9zI6cYZw1UlXIpDc8/ul1nbOYdqGMecNVDSzgkOb3hY8/BziqTIgAw9TjToAMmALcaq2AkMf7K4gLTog6s4WUyuqG+g1QsfHJFjsxfaCaYT3ER5WIYbky/ay01o9Fh5+tWHxqicPxpm7wpigeD+3gxlVG+KDLfTywvL+edIceWGBuoxMgI5i0gekSHpZa9/8BzxUCXpVkwoPv62QHox/eAzwOySXlRn7gsYXdCZvrNiX3raOT1wds+X0dcK+5xm7Qg/8cHenvzs7bIe77r/auuG3kLzMKZ9ysn67bZq20MV7wDuII7f7hHSdelhmFft5Rgjz7/KhPPXEZ7myJziiB8KkpcH4Uhid+XWhUNeMbsmoBKwxKfIOPQSKpBdtKFqzM15Y2N6nhRJIdBFedlVn/nkI3e1aQo0A5iYRbN3Vg1zJ7bUSUaKw/rwETWna2uknOCGUPQVFQcxrr2wnro4YBbdX3aoR1cJFe4QJOlHQyOeDRYHMdM+BSmSg== X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM6PR08MB3749.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(346002)(396003)(366004)(39860400002)(376002)(136003)(451199021)(6506007)(26005)(6512007)(53546011)(122000001)(83380400001)(86362001)(36756003)(186003)(2906002)(33656002)(38070700005)(2616005)(8676002)(5660300002)(316002)(64756008)(8936002)(41300700001)(6666004)(66946007)(76116006)(38100700002)(66476007)(71200400001)(91956017)(66556008)(54906003)(4326008)(6916009)(478600001)(66446008)(6486002)(45980500001);DIR:OUT;SFP:1101; Content-Type: text/plain; charset="utf-8" Content-ID: Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM8PR08MB6417 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: AM7EUR03FT041.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: 3fe6ee82-eedc-433f-63ce-08db6857bfa1 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 0QSkbHkowf2OmiZfP2iu6blAUBa10UjEYxDBrrpYJAMI4Y/Sfqx68RexF7v4tfQYwcn5P/3C7fqBk9CZW2BLi22UYNgXkauJ5u5bfilkyDFa5bNQXBn9G2G1girXl132kVv0MSn0wydnzD0e189JFvcl5AVo1qFfllId+xgeKZCxB2mI0NapmAmt7D6Dcna3bEMgC2Blbc0WL6jFcySsVHy3w2rTjXGfv4+9MMxmmgoul+4SHnf5LuKwpGLWuI81+dqm1Uz1t7OwqF5A1w/XsMDhNuGDbEwvqnxOhdsZbWgxkbroVS4pkMSa7xWsWZCwd73Kxw+y3n3AcpgqsuHmOpu4p4BZ0936tZS4Gj7eMUpzyF6AZ6JrN18iwoRzU6iMeaHTMBsIzSbcvM5m6RHEdrSLsT2hYZpCCbKVQ0NWoBpxlHvetYMarun5N7E2byNnLBKeWpD2ZYxgxwh8hTA1IDwxK7fEbnndgnOSNEyRnq68XRELB8dSGSqEKQUzM3uv9kToBTgpNKPvNPw0qZj6lCZciFN5XnXv+XZ9n17B+fTbLr0sx432ZpqpGMPQaaGNfjRzmyn5dtl9tzQviLE1VWcl0LgwLF8I52XnQx2p486Gk87jHRAI9QuQqMjfxVyUGKlwNFb+rOPVlM2KgXfGXlXeAxjLj3SelJLXnlud9BBPjvfUyc55YZiP0BnFlFbAea83YZ+rCHoccoEXrAl0mWP9Y4i+3t0PE9I0yWrtMww3mlcMFeoGudKR/MFuL24z X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230028)(4636009)(376002)(396003)(136003)(346002)(39860400002)(451199021)(40470700004)(46966006)(36840700001)(336012)(6862004)(8936002)(8676002)(41300700001)(4326008)(70586007)(70206006)(5660300002)(316002)(40480700001)(54906003)(40460700003)(2906002)(478600001)(81166007)(6512007)(82740400003)(53546011)(86362001)(6506007)(186003)(33656002)(356005)(107886003)(36756003)(26005)(6486002)(47076005)(83380400001)(2616005)(82310400005)(36860700001)(6666004);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 08 Jun 2023 19:38:06.2037 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 0766fca6-010d-4a40-c505-08db6857e1ca X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: AM7EUR03FT041.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: GV1PR08MB7732 DQoNCj4gT24gOCBKdW4gMjAyMywgYXQgMTg6NDAsIEFuZHJldyBDb29wZXIgPGFuZHJldy5jb29w ZXIzQGNpdHJpeC5jb20+IHdyb3RlOg0KPiANCj4gTUFTS19FWFRSKCkgYW5kIE1BU0tfSU5TUigp IGFyZSBhIG1hdGNoaW5nIHBhaXIuICBLZWVwIHRoZW0gdG9nZXRoZXIuDQo+IA0KPiBGaXhlczog NTZhN2FhYTE2YmZlICgidG9vbHM6IGFkZCBwaHlzaW5mbyBhcmNoX2NhcGFiaWxpdGllcyBoYW5k bGluZyBmb3IgQXJtIikNCg0KSSBkb27igJl0IHRoaW5rIHRoaXMgcGF0Y2ggaXMgZml4aW5nIGEg YnVnOg0KDQojIyMgRml4ZXM6DQoNCklmIHlvdXIgcGF0Y2ggZml4ZXMgYSBidWcgaW4gYSBzcGVj aWZpYyBjb21taXQsIGUuZy4geW91IGZvdW5kIGFuIGlzc3VlIHVzaW5nDQpgYGdpdCBiaXNlY3Rg YCwgcGxlYXNlIHVzZSB0aGUgYEZpeGVzOmAgdGFnIHdpdGggdGhlIGZpcnN0IDEyIGNoYXJhY3Rl cnMgb2YNCnRoZSBjb21taXQgaWQsIGFuZCB0aGUgb25lIGxpbmUgc3VtbWFyeS4NCg0KPiBTaWdu ZWQtb2ZmLWJ5OiBBbmRyZXcgQ29vcGVyIDxhbmRyZXcuY29vcGVyM0BjaXRyaXguY29tPg0KDQpC dXQgaXQgbWFrZXMgc2Vuc2UsIHNvIA0KDQpSZXZpZXdlZC1ieTogTHVjYSBGYW5jZWxsdSA8bHVj YS5mYW5jZWxsdUBhcm0uY29tPg0KDQo+IC0tLQ0KPiBDQzogQW50aG9ueSBQRVJBUkQgPGFudGhv bnkucGVyYXJkQGNpdHJpeC5jb20+DQo+IENDOiBKdWVyZ2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5j b20+DQo+IENDOiBMdWNhIEZhbmNlbGx1IDxsdWNhLmZhbmNlbGx1QGFybS5jb20+DQo+IC0tLQ0K PiB0b29scy9pbmNsdWRlL3hlbi10b29scy9jb21tb24tbWFjcm9zLmggfCAxICsNCj4gdG9vbHMv bGlicy9saWdodC9saWJ4bF9pbnRlcm5hbC5oICAgICAgIHwgMiAtLQ0KPiAyIGZpbGVzIGNoYW5n ZWQsIDEgaW5zZXJ0aW9uKCspLCAyIGRlbGV0aW9ucygtKQ0KPiANCj4gZGlmZiAtLWdpdCBhL3Rv b2xzL2luY2x1ZGUveGVuLXRvb2xzL2NvbW1vbi1tYWNyb3MuaCBiL3Rvb2xzL2luY2x1ZGUveGVu LXRvb2xzL2NvbW1vbi1tYWNyb3MuaA0KPiBpbmRleCBkNTNiODgxODI1NjAuLjE2ODY5MWJlMGU5 MyAxMDA2NDQNCj4gLS0tIGEvdG9vbHMvaW5jbHVkZS94ZW4tdG9vbHMvY29tbW9uLW1hY3Jvcy5o DQo+ICsrKyBiL3Rvb2xzL2luY2x1ZGUveGVuLXRvb2xzL2NvbW1vbi1tYWNyb3MuaA0KPiBAQCAt NzMsNiArNzMsNyBAQA0KPiAjZW5kaWYNCj4gDQo+ICNkZWZpbmUgTUFTS19FWFRSKHYsIG0pICgo KHYpICYgKG0pKSAvICgobSkgJiAtKG0pKSkNCj4gKyNkZWZpbmUgTUFTS19JTlNSKHYsIG0pICgo KHYpICogKChtKSAmIC0obSkpKSAmIChtKSkNCj4gDQo+ICNpZm5kZWYgX19tdXN0X2NoZWNrDQo+ ICNkZWZpbmUgX19tdXN0X2NoZWNrIF9fYXR0cmlidXRlX18oKF9fd2Fybl91bnVzZWRfcmVzdWx0 X18pKQ0KPiBkaWZmIC0tZ2l0IGEvdG9vbHMvbGlicy9saWdodC9saWJ4bF9pbnRlcm5hbC5oIGIv dG9vbHMvbGlicy9saWdodC9saWJ4bF9pbnRlcm5hbC5oDQo+IGluZGV4IDhhYmEzZTEzODkwOS4u NjFmNGZlMWRlYzU1IDEwMDY0NA0KPiAtLS0gYS90b29scy9saWJzL2xpZ2h0L2xpYnhsX2ludGVy bmFsLmgNCj4gKysrIGIvdG9vbHMvbGlicy9saWdodC9saWJ4bF9pbnRlcm5hbC5oDQo+IEBAIC0x MzIsOCArMTMyLDYgQEANCj4gDQo+ICNkZWZpbmUgRElWX1JPVU5EVVAobiwgZCkgKCgobikgKyAo ZCkgLSAxKSAvIChkKSkNCj4gDQo+IC0jZGVmaW5lIE1BU0tfSU5TUih2LCBtKSAoKCh2KSAqICgo bSkgJiAtKG0pKSkgJiAobSkpDQo+IC0NCj4gI2RlZmluZSBMSUJYTF9fTE9HR0lOR19FTkFCTEVE DQo+IA0KPiAjaWZkZWYgTElCWExfX0xPR0dJTkdfRU5BQkxFRA0KPiAtLSANCj4gMi4zMC4yDQo+ IA0KDQo= From xen-devel-bounces@lists.xenproject.org Thu Jun 08 19:43:22 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 08 Jun 2023 19:43:22 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545433.851865 (Exim 4.92) (envelope-from ) id 1q7LXJ-0004IR-9m; Thu, 08 Jun 2023 19:43:09 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545433.851865; Thu, 08 Jun 2023 19:43:09 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7LXJ-0004IK-5d; Thu, 08 Jun 2023 19:43:09 +0000 Received: by outflank-mailman (input) for mailman id 545433; Thu, 08 Jun 2023 19:43:07 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7LXH-0004IE-CC for xen-devel@lists.xenproject.org; Thu, 08 Jun 2023 19:43:07 +0000 Received: from EUR02-VI1-obe.outbound.protection.outlook.com (mail-vi1eur02on20616.outbound.protection.outlook.com [2a01:111:f400:fe16::616]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id b014fc08-0634-11ee-b232-6b7b168915f2; Thu, 08 Jun 2023 21:43:06 +0200 (CEST) Received: from DB6PR07CA0073.eurprd07.prod.outlook.com (2603:10a6:6:2b::11) by AM8PR08MB5588.eurprd08.prod.outlook.com (2603:10a6:20b:1d4::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Thu, 8 Jun 2023 19:43:00 +0000 Received: from DBAEUR03FT028.eop-EUR03.prod.protection.outlook.com (2603:10a6:6:2b:cafe::bb) by DB6PR07CA0073.outlook.office365.com (2603:10a6:6:2b::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.19 via Frontend Transport; Thu, 8 Jun 2023 19:43:00 +0000 Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by DBAEUR03FT028.mail.protection.outlook.com (100.127.142.236) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.26 via Frontend Transport; Thu, 8 Jun 2023 19:43:00 +0000 Received: ("Tessian outbound 3a01b65b5aad:v136"); Thu, 08 Jun 2023 19:43:00 +0000 Received: from 163b0a1ce422.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 4778FB78-45F0-4E51-84F6-9C2F9CD2E474.1; Thu, 08 Jun 2023 19:42:17 +0000 Received: from EUR05-VI1-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 163b0a1ce422.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Thu, 08 Jun 2023 19:42:17 +0000 Received: from AM6PR08MB3749.eurprd08.prod.outlook.com (2603:10a6:20b:8f::22) by PAWPR08MB9123.eurprd08.prod.outlook.com (2603:10a6:102:343::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Thu, 8 Jun 2023 19:42:15 +0000 Received: from AM6PR08MB3749.eurprd08.prod.outlook.com ([fe80::ed0b:5730:a1f9:577b]) by AM6PR08MB3749.eurprd08.prod.outlook.com ([fe80::ed0b:5730:a1f9:577b%4]) with mapi id 15.20.6455.037; Thu, 8 Jun 2023 19:42:15 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: b014fc08-0634-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Srqw9J3xxN6qtCT/cbadtl7Xg9FeM3KiXnaaekfxwik=; b=R1nBeFNQp5BIF7vLOUOLc0IBAG9feBBJUwPIewYoaLVm/LXyHNNqxMlVjdAcQvG1fP6aOuqsTfJdY37Sorv3jBAOb+ELI2sfcaC3hpnpPr9DVEhHtSI7nNF0J9JrvX3JM7/hcgcQQbOcuPF1h8bLvpdgyWHGBOBPeChDObT1+ho= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C X-CheckRecipientChecked: true X-CR-MTA-CID: 8c46adcc2f0b95bd X-CR-MTA-TID: 64aa7808 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=G9lJ5YK63V+HDvw67+RGv0Bviv7JPZ7APWP/HZcos2LayrpHRXmgxnEzA1dWd2bXJk+UmQJpFrvDf6Bzasfvsn7x32OZGQWh1I1Xr1KXTAQjFllsoXobe2SaUq6UokNe6DcrG8YBTqX8Bviv2A00tRUQJhWelnYzT9Dnp5qf7G8nwIZdu2nvcErzahspiBccMEiJMK02h1N8T7u1afASJMXkYWOhvofP46aQ5Y4XmeAeMfsKGO7qfxnxawMwQ98ROnj504f0eKUIg3qVaWmgJWxyXqMoyTclrs30tcwyxyilNl0YClvm1fwpHwASPlSp5+Us9rIUNO45BdIGTfHONQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=Srqw9J3xxN6qtCT/cbadtl7Xg9FeM3KiXnaaekfxwik=; b=EZPnS9a4ApjshWevgFQe9wki6IODIL2ao9TumOWVNJvQInG/U1DYiUEgddlXvnfkt0stOBr69/wDDYPXd1MUbPeBc4JA6OaDDN6qWyETfy0GMcdpJ0A58yCZD20Cz80WLMGKHqDzUdFK2sepHtKAZ20i1uqlFs19lD/W0Ht1KQkqIWMYS+436UVfI5UwmdD4YdVA0+mxjoKnaI/KK40VlbnQHBWBAQM1fRpB7MYKbUOD8Vkp9eP9O62McFJ3uNcwJqKJJgrXpshgqssu2wY5QbqVr6hW9L24z45eibfRBav42Vea5TmXyZxlxt46lZoJz+Vaixs/ign3eex2wPmHNg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Srqw9J3xxN6qtCT/cbadtl7Xg9FeM3KiXnaaekfxwik=; b=R1nBeFNQp5BIF7vLOUOLc0IBAG9feBBJUwPIewYoaLVm/LXyHNNqxMlVjdAcQvG1fP6aOuqsTfJdY37Sorv3jBAOb+ELI2sfcaC3hpnpPr9DVEhHtSI7nNF0J9JrvX3JM7/hcgcQQbOcuPF1h8bLvpdgyWHGBOBPeChDObT1+ho= From: Luca Fancellu To: Andrew Cooper CC: Xen-devel , Christian Lindig , =?utf-8?B?RWR3aW4gVMO2csO2aw==?= , Rob Hoes Subject: Re: [PATCH] tools/ocaml/xc: Fix xc_physinfo() bindings Thread-Topic: [PATCH] tools/ocaml/xc: Fix xc_physinfo() bindings Thread-Index: AQHZmkAheWFMmzgfmUmnydtfr7bB9K+BThkA Date: Thu, 8 Jun 2023 19:42:15 +0000 Message-ID: <4C12184F-18A3-4499-9CB3-183E1AF709B3@arm.com> References: <20230608193312.2520222-1-andrew.cooper3@citrix.com> In-Reply-To: <20230608193312.2520222-1-andrew.cooper3@citrix.com> Accept-Language: en-GB, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-mailer: Apple Mail (2.3731.600.7) Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-traffictypediagnostic: AM6PR08MB3749:EE_|PAWPR08MB9123:EE_|DBAEUR03FT028:EE_|AM8PR08MB5588:EE_ X-MS-Office365-Filtering-Correlation-Id: 180aa5da-0d7d-4774-f716-08db6858911b x-checkrecipientrouted: true nodisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: cTKt79URDgD9irfkVIf54/NvrjYEYQ9V7UdrGRpfVzjvPdd38H6bkCykHVBywNwTJZ2goqDWxc7RhhKhH46BATbRojyIMTJa8rjJanV9qceuOofYyqko65TVJyp35o4vWNhWCCWZHOwl5UrYMNypFEfjJ6wcUYhEDNq7SqcK6B5OV1OSVJBa8t9cSwO6zRfXNI/snnLm9HZoQ1F64xr/4K1A4U9T/ZXy+5PqI9VJNeCCOCZRhDl2hU1jjjfOIPkAoRrBQVWinrQ4LilgkxPKTegpVWA2eXmLvwbz5at7cxUWCZuaexQ+gCLdnRMjSNIYTXWpmzsk1deVzepI1fQUjNvYk9yUvwE0DnE9qvqiKNGap2IKg8uBNsU4HE81XeJetK1cM9yGZkSX/jhWzX+bH8/dYrl4N3hgZWotlU7BPP+QzTs8mkwptZfNWwOTgoktrC/VlL+sq03GH2/0ArcJ3NABsX5HjUsTSiWYRcomaUv2Mqkm9ZKb5yxuxluZFVXOj9GYduFIZH6v2zcC8bGn7jbw3S1/gmPehkF1INW++fOzjeFWV524Ky+aV7lWYese0UzGjs6/idch1HTGT5S68Fr9HVoC6vbdT9ttkgpP8QuVTFcObeaKRlXfu4jTVlOYk60VoQ7eEETzq+0DJ36pbg== X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM6PR08MB3749.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(396003)(136003)(376002)(39860400002)(346002)(366004)(451199021)(4326008)(6916009)(8676002)(66946007)(8936002)(91956017)(66476007)(66556008)(76116006)(36756003)(6486002)(478600001)(64756008)(86362001)(316002)(41300700001)(66446008)(83380400001)(5660300002)(54906003)(71200400001)(33656002)(2906002)(38070700005)(186003)(53546011)(38100700002)(122000001)(2616005)(6512007)(6506007)(26005)(45980500001);DIR:OUT;SFP:1101; Content-Type: text/plain; charset="utf-8" Content-ID: Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAWPR08MB9123 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: DBAEUR03FT028.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: 4cf63de4-3768-40d8-c494-08db68587638 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: hpBwsdRQp5z7gJl++LJIX2lH6AIauUNDpeeS8DGeq3q57cf6sgsZxjBnymBetQ21BdVHw/6JzhG6LhcXJRrEi5mTDkUqD8FPnwLCHT/SRoLRSA/TyxKCaJ5IejXAqYMqTl9Kp7VAbSdjAO1YhTfdmM9QASr0yJreNBHxjg17DkOEOuZGvFFZDnfitwMl9szwn/jZyb9wJzDgHS+l8gtvOwea1RADKGgWgUJUF0H3iik1qQb+YZf+0UEX2/9WYViilsqAUbFfbIvS4ejg4xAsnFzGFi/iWnr4FwBcFt+IDGSvRGMObvJXJubpMUFLOUeeqBL1p6EmRFJmKNsWyO72zanY+GLK75DcXezBIrTXEH36t36f+booeenOOugZEcwEEjED0VOhOhNLJcRbZ+zarfgYqxzFZpTx6dDHlWcNRJplLO/d9AOBVH4mqJt25MP5XxyyPfTEtt6j3PWO08ShCkKDVRK0t5BWdPWwbV9tE+Zi5/RtWrQbSciJoKNHVyvcxjIVeo9pgPvUdMIvHXJ+HzAxF1lpgIvvuHACMFgyTCF/LG5PnACZUUb1V8Yv9jcVGJyq0EPAhJj2OSyMtyL3E1ss+ycUtTE1p7VrWl3riBNZSCpKkzteZzGcAMWHZLA1/MqNy009IjGiBM7mGc8UtU1ngfiqoAL6pbgMS5nJDpTGLV2mXSxNN+q+R3GcCh4O0qUciBTG+I+14OMQzXNaDEmazzh3RSeb/7qbvbrEu48nQAWsYHNtCAxt13x7mzH5 X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230028)(4636009)(136003)(346002)(396003)(39860400002)(376002)(451199021)(36840700001)(46966006)(40470700004)(107886003)(186003)(26005)(6506007)(53546011)(6512007)(2616005)(336012)(83380400001)(47076005)(82310400005)(86362001)(36860700001)(2906002)(54906003)(6486002)(36756003)(8676002)(82740400003)(478600001)(6862004)(33656002)(40480700001)(5660300002)(41300700001)(40460700003)(4326008)(356005)(8936002)(81166007)(70206006)(70586007)(316002);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 08 Jun 2023 19:43:00.3840 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 180aa5da-0d7d-4774-f716-08db6858911b X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: DBAEUR03FT028.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM8PR08MB5588 DQoNCj4gT24gOCBKdW4gMjAyMywgYXQgMjA6MzMsIEFuZHJldyBDb29wZXIgPGFuZHJldy5jb29w ZXIzQGNpdHJpeC5jb20+IHdyb3RlOg0KPiANCj4gVGhlIG9yaWdpbmFsIGNoYW5nZSBkb2Vzbid0 IGNvbXBpbGUgb24gQVJNOg0KPiANCj4gIHhlbmN0cmxfc3R1YnMuYzogSW4gZnVuY3Rpb24gJ3N0 dWJfeGNfcGh5c2luZm8nOg0KPiAgeGVuY3RybF9zdHVicy5jOjgyMToxNjogZXJyb3I6IHVudXNl ZCB2YXJpYWJsZSAnYXJjaF9jYXBfZmxhZ3NfdGFnJyBbLVdlcnJvcj11bnVzZWQtdmFyaWFibGVd DQo+ICAgIDgyMSB8ICAgICAgICAgaW50IHIsIGFyY2hfY2FwX2ZsYWdzX3RhZzsNCj4gICAgICAg IHwgICAgICAgICAgICAgICAgXn5+fn5+fn5+fn5+fn5+fn5+DQo+ICBjYzE6IGFsbCB3YXJuaW5n cyBiZWluZyB0cmVhdGVkIGFzIGVycm9ycw0KPiANCj4gYnV0IGl0IHdhcyBidWdneSB0b28uDQo+ IA0KPiBGaXJzdCwgaXQgdHJpZWQgc3RvcmluZyBhbiBpbnQgaW4gYSBwb2ludGVyIHNsb3QsIGNh dXNpbmcgaGVhcCBjb3JydXB0aW9uLg0KPiANCj4gTmV4dCwgaXQgaXMgbm90IGxlZ2l0aW1hdGUg dG8gZXhjbHVkZSBhcm0zMiBpbiB0aGUgdG9vbHN0YWNrIGFzIGl0IGV4cGxpY2l0bHkNCj4gY2Fu IG9wZXJhdGUgYW4gYXJtNjQgdG9vbHN0YWNrIGFuZCBidWlsZCBhcm02NCBkb21haW5zLiAgVGhh dCBpbiB0dXJuIG1lYW5zDQo+IHRoYXQgeW91IGNhbid0IHN0YXNoIGEgQyB1aW50MzJfdCBpbiBh biBPQ2FtbCBpbnQuDQo+IA0KPiBSZXdyaXRlIHRoZSBhcmNoX2NhcGFiaWxpdGllcyBoYW5kbGlu ZyBmcm9tIHNjcmF0Y2guICBCcmVhayBpdCBvdXQgaW50byBhDQo+IHNlcGFyYXRlIGZ1bmN0aW9u LCBhbmQgbWFrZSB0aGUgY29uc3RydWN0aW9uIG9mIGFyY2hfcGh5c2luZm9fY2FwX2ZsYWdzIGNv bW1vbg0KPiB0byBwcmV2ZW50IG90aGVyIGluZGlyZWN0aW9uIGJ1Z3MuDQo+IA0KPiBSZWludHJv ZHVjZSBhcm1fcGh5c2luZm9fY2FwcyB3aXRoIHRoZSBmaWVsZHMgYnJva2VuIG91dC4NCj4gDQo+ IEZpeGVzOiA1NmE3YWFhMTZiZmUgKCJ0b29sczogYWRkIHBoeXNpbmZvIGFyY2hfY2FwYWJpbGl0 aWVzIGhhbmRsaW5nIGZvciBBcm0iKQ0KPiBTaWduZWQtb2ZmLWJ5OiBBbmRyZXcgQ29vcGVyIDxh bmRyZXcuY29vcGVyM0BjaXRyaXguY29tPg0KPiAtLS0NCj4gQ0M6IENocmlzdGlhbiBMaW5kaWcg PGNocmlzdGlhbi5saW5kaWdAY2l0cml4LmNvbT4NCj4gQ0M6IEVkd2luIFTDtnLDtmsgPGVkd2lu LnRvcm9rQGNsb3VkLmNvbT4NCj4gQ0M6IFJvYiBIb2VzIDxSb2IuSG9lc0BjaXRyaXguY29tPg0K PiBDQzogTHVjYSBGYW5jZWxsdSA8bHVjYS5mYW5jZWxsdUBhcm0uY29tPg0KPiANCj4gUkZDIC0g dW50ZXN0ZWQgYmVjYXVzZSBJJ20gZmFpbGluZyBhdCBjcm9zcy1jb21waWxpbmcgQVJNIE9jYW1s LCBidXQgc3RhZ2luZw0KPiBoYXMgYmVlbiBicm9rZW4gdG9vIGxvbmcuLi4NCg0KVGhhbmsgeW91 IGZvciB0aGlzIHBhdGNoLCBJ4oCZbGwgdHJ5IGluIHRoZSBuZXh0IGRheXMgdG8gYnVpbGQgaXQg Zm9yIEFybQ0KDQo+IC0tLQ0KPiB0b29scy9vY2FtbC9saWJzL3hjL3hlbmN0cmwubWwgICAgICB8 ICA3ICsrKy0NCj4gdG9vbHMvb2NhbWwvbGlicy94Yy94ZW5jdHJsLm1saSAgICAgfCAgNyArKyst DQo+IHRvb2xzL29jYW1sL2xpYnMveGMveGVuY3RybF9zdHVicy5jIHwgNTIgKysrKysrKysrKysr KysrKysrKystLS0tLS0tLS0NCj4gMyBmaWxlcyBjaGFuZ2VkLCA0OCBpbnNlcnRpb25zKCspLCAx OCBkZWxldGlvbnMoLSkNCj4gDQo+IGRpZmYgLS1naXQgYS90b29scy9vY2FtbC9saWJzL3hjL3hl bmN0cmwubWwgYi90b29scy9vY2FtbC9saWJzL3hjL3hlbmN0cmwubWwNCj4gaW5kZXggYmYyM2Nh NTBiYjE1Li5kNmM2ZWI3M2RiNDQgMTAwNjQ0DQo+IC0tLSBhL3Rvb2xzL29jYW1sL2xpYnMveGMv eGVuY3RybC5tbA0KPiArKysgYi90b29scy9vY2FtbC9saWJzL3hjL3hlbmN0cmwubWwNCj4gQEAg LTEyOCwxMCArMTI4LDE1IEBAIHR5cGUgcGh5c2luZm9fY2FwX2ZsYWcgPQ0KPiAgIHwgQ0FQX0du dHRhYl92MQ0KPiAgIHwgQ0FQX0dudHRhYl92Mg0KPiANCj4gK3R5cGUgYXJtX3BoeXNpbmZvX2Nh cHMgPQ0KPiArICB7DQo+ICsgICAgc3ZlX3ZsOiBpbnQ7DQo+ICsgIH0NCj4gKw0KPiB0eXBlIHg4 Nl9waHlzaW5mb19jYXBfZmxhZw0KPiANCj4gdHlwZSBhcmNoX3BoeXNpbmZvX2NhcF9mbGFncyA9 DQo+IC0gIHwgQVJNIG9mIGludA0KPiArICB8IEFSTSBvZiBhcm1fcGh5c2luZm9fY2Fwcw0KPiAg IHwgWDg2IG9mIHg4Nl9waHlzaW5mb19jYXBfZmxhZyBsaXN0DQo+IA0KPiB0eXBlIHBoeXNpbmZv ID0NCj4gZGlmZiAtLWdpdCBhL3Rvb2xzL29jYW1sL2xpYnMveGMveGVuY3RybC5tbGkgYi90b29s cy9vY2FtbC9saWJzL3hjL3hlbmN0cmwubWxpDQo+IGluZGV4IGVkMWUyOGVhMzBhMC4uM2JmYzE2 ZWRiYTk2IDEwMDY0NA0KPiAtLS0gYS90b29scy9vY2FtbC9saWJzL3hjL3hlbmN0cmwubWxpDQo+ ICsrKyBiL3Rvb2xzL29jYW1sL2xpYnMveGMveGVuY3RybC5tbGkNCj4gQEAgLTExMywxMCArMTEz LDE1IEBAIHR5cGUgcGh5c2luZm9fY2FwX2ZsYWcgPQ0KPiAgIHwgQ0FQX0dudHRhYl92MQ0KPiAg IHwgQ0FQX0dudHRhYl92Mg0KPiANCj4gK3R5cGUgYXJtX3BoeXNpbmZvX2NhcHMgPQ0KPiArICB7 DQo+ICsgICAgc3ZlX3ZsOiBpbnQ7DQo+ICsgIH0NCj4gKw0KPiB0eXBlIHg4Nl9waHlzaW5mb19j YXBfZmxhZw0KPiANCj4gdHlwZSBhcmNoX3BoeXNpbmZvX2NhcF9mbGFncyA9DQo+IC0gIHwgQVJN IG9mIGludA0KPiArICB8IEFSTSBvZiBhcm1fcGh5c2luZm9fY2Fwcw0KPiAgIHwgWDg2IG9mIHg4 Nl9waHlzaW5mb19jYXBfZmxhZyBsaXN0DQo+IA0KPiB0eXBlIHBoeXNpbmZvID0gew0KPiBkaWZm IC0tZ2l0IGEvdG9vbHMvb2NhbWwvbGlicy94Yy94ZW5jdHJsX3N0dWJzLmMgYi90b29scy9vY2Ft bC9saWJzL3hjL3hlbmN0cmxfc3R1YnMuYw0KPiBpbmRleCBhMDNkYTMxZjZmMmMuLjZiMjg2OWFm MDRlZiAxMDA2NDQNCj4gLS0tIGEvdG9vbHMvb2NhbWwvbGlicy94Yy94ZW5jdHJsX3N0dWJzLmMN Cj4gKysrIGIvdG9vbHMvb2NhbWwvbGlicy94Yy94ZW5jdHJsX3N0dWJzLmMNCj4gQEAgLTgxMiwx MyArODEyLDQ2IEBAIENBTUxwcmltIHZhbHVlIHN0dWJfeGNfc2VuZF9kZWJ1Z19rZXlzKHZhbHVl IHhjaF92YWwsIHZhbHVlIGtleXMpDQo+IENBTUxyZXR1cm4oVmFsX3VuaXQpOw0KPiB9DQo+IA0K PiArQ0FNTHByaW0gdmFsdWUgcGh5c2luZm9fYXJjaF9jYXBzKGNvbnN0IHhjX3BoeXNpbmZvX3Qg KmluZm8pDQo+ICt7DQo+ICsgQ0FNTHBhcmFtMCgpOw0KPiArIENBTUxsb2NhbDIoYXJjaF9jYXBf ZmxhZ3MsIGFyY2hfb2JqKTsNCj4gKyBpbnQgdGFnID0gLTE7DQo+ICsNCj4gKyNpZiBkZWZpbmVk KF9fYXJtX18pIHx8IGRlZmluZWQoX19hYXJjaDY0X18pDQo+ICsNCj4gKyB0YWcgPSAwOyAvKiB0 YWcgQVJNICovDQo+ICsNCj4gKyBhcmNoX29iaiA9IGNhbWxfYWxsb2NfdHVwbGUoMSk7DQo+ICsN Cj4gKyBTdG9yZV9maWVsZChhcmNoX29iaiwgMCwNCj4gKyAgICBWYWxfaW50KE1BU0tfRVhUUihp bmZvLT5hcmNoX2NhcGFiaWxpdGllcywNCj4gKyAgICAgIFhFTl9TWVNDVExfUEhZU0NBUF9BUk1f U1ZFX01BU0spICogMTI4KSk7DQo+ICsNCj4gKyNlbGlmIGRlZmluZWQoX19pMzg2X18pIHx8IGRl ZmluZWQoX194ODZfNjRfXykNCj4gKw0KPiArIHRhZyA9IDE7IC8qIHRhZyB4ODYgKi8NCj4gKw0K PiArIGFyY2hfb2JqID0gVGFnX2NvbnM7DQo+ICsNCj4gKyNlbmRpZg0KPiArDQo+ICsgaWYgKCB0 YWcgPCAwICkNCj4gKyBjYW1sX2ZhaWx3aXRoKCJVbmhhbmRsZWQgYXJjaGl0ZWN0dXJlIik7DQo+ ICsNCj4gKyBhcmNoX2NhcF9mbGFncyA9IGNhbWxfYWxsb2Nfc21hbGwoMSwgdGFnKTsNCj4gKyBT dG9yZV9maWVsZChhcmNoX2NhcF9mbGFncywgMCwgYXJjaF9vYmopOw0KPiArDQo+ICsgcmV0dXJu IGFyY2hfY2FwX2ZsYWdzOw0KPiArfQ0KPiArDQo+IENBTUxwcmltIHZhbHVlIHN0dWJfeGNfcGh5 c2luZm8odmFsdWUgeGNoX3ZhbCkNCj4gew0KPiBDQU1McGFyYW0xKHhjaF92YWwpOw0KPiAtIENB TUxsb2NhbDQocGh5c2luZm8sIGNhcF9saXN0LCBhcmNoX2NhcF9mbGFncywgYXJjaF9jYXBfbGlz dCk7DQo+ICsgQ0FNTGxvY2FsMihwaHlzaW5mbywgY2FwX2xpc3QpOw0KPiB4Y19pbnRlcmZhY2Ug KnhjaCA9IHhjaF9vZl92YWwoeGNoX3ZhbCk7DQo+IHhjX3BoeXNpbmZvX3QgY19waHlzaW5mbzsN Cj4gLSBpbnQgciwgYXJjaF9jYXBfZmxhZ3NfdGFnOw0KPiArIGludCByOw0KPiANCj4gY2FtbF9l bnRlcl9ibG9ja2luZ19zZWN0aW9uKCk7DQo+IHIgPSB4Y19waHlzaW5mbyh4Y2gsICZjX3BoeXNp bmZvKTsNCj4gQEAgLTg0NiwyMCArODc5LDcgQEAgQ0FNTHByaW0gdmFsdWUgc3R1Yl94Y19waHlz aW5mbyh2YWx1ZSB4Y2hfdmFsKQ0KPiBTdG9yZV9maWVsZChwaHlzaW5mbywgNywgY2FtbF9jb3B5 X25hdGl2ZWludChjX3BoeXNpbmZvLnNjcnViX3BhZ2VzKSk7DQo+IFN0b3JlX2ZpZWxkKHBoeXNp bmZvLCA4LCBjYXBfbGlzdCk7DQo+IFN0b3JlX2ZpZWxkKHBoeXNpbmZvLCA5LCBWYWxfaW50KGNf cGh5c2luZm8ubWF4X2NwdV9pZCArIDEpKTsNCj4gLQ0KPiAtI2lmIGRlZmluZWQoX19pMzg2X18p IHx8IGRlZmluZWQoX194ODZfNjRfXykNCj4gLSBhcmNoX2NhcF9saXN0ID0gVGFnX2NvbnM7DQo+ IC0NCj4gLSBhcmNoX2NhcF9mbGFnc190YWcgPSAxOyAvKiB0YWcgeDg2ICovDQo+IC0NCj4gLSBh cmNoX2NhcF9mbGFncyA9IGNhbWxfYWxsb2Nfc21hbGwoMSwgYXJjaF9jYXBfZmxhZ3NfdGFnKTsN Cj4gLSBTdG9yZV9maWVsZChhcmNoX2NhcF9mbGFncywgMCwgYXJjaF9jYXBfbGlzdCk7DQo+IC0g U3RvcmVfZmllbGQocGh5c2luZm8sIDEwLCBhcmNoX2NhcF9mbGFncyk7DQo+IC0jZWxpZiBkZWZp bmVkKF9fYWFyY2g2NF9fKQ0KPiAtIFN0b3JlX2ZpZWxkKHBoeXNpbmZvLCAxMCwgVmFsX2ludChj X3BoeXNpbmZvLmFyY2hfY2FwYWJpbGl0aWVzKSk7DQo+IC0jZWxzZQ0KPiAtIGNhbWxfZmFpbHdp dGgoIlVuaGFuZGxlZCBhcmNoaXRlY3R1cmUiKTsNCj4gLSNlbmRpZg0KPiArIFN0b3JlX2ZpZWxk KHBoeXNpbmZvLCAxMCwgcGh5c2luZm9fYXJjaF9jYXBzKCZjX3BoeXNpbmZvKSk7DQo+IA0KPiBD QU1McmV0dXJuKHBoeXNpbmZvKTsNCj4gfQ0KPiANCj4gYmFzZS1jb21taXQ6IDY5MTVhMTIwNjQx YjVkMjMyNzYyYWY3ODgyMjY2MDQ4Y2YwMzljYTANCj4gcHJlcmVxdWlzaXRlLXBhdGNoLWlkOiA4 NWZmYjZjYmUxZGRmZGVjMGFmYjJhYzVjMmNmZDg5MTBkZGZkNzgzDQo+IC0tIA0KPiAyLjMwLjIN Cj4gDQoNCg== From xen-devel-bounces@lists.xenproject.org Thu Jun 08 20:18:10 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 08 Jun 2023 20:18:10 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545439.851874 (Exim 4.92) (envelope-from ) id 1q7M56-0007uy-3m; Thu, 08 Jun 2023 20:18:04 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545439.851874; Thu, 08 Jun 2023 20:18:04 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7M56-0007uo-0A; Thu, 08 Jun 2023 20:18:04 +0000 Received: by outflank-mailman (input) for mailman id 545439; Thu, 08 Jun 2023 20:18:02 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7M54-0007ue-P5; Thu, 08 Jun 2023 20:18:02 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7M54-00066Q-K6; Thu, 08 Jun 2023 20:18:02 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7M54-00060k-Bo; Thu, 08 Jun 2023 20:18:02 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q7M54-0004QE-BE; Thu, 08 Jun 2023 20:18:02 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=KwsVJw5IJ2xttmMQcAmu+N6gmmcls1TZPWTECGAehNA=; b=ae3WVVF4TyuLOinqKFtwkcfbbR Y03hzXJqu8Fet/bKWpK0ZP+MuJ6sLtkDJUyhudO2FOMdyrm0DhDmDUKroWCgb7tFS2QptTyHHoL5w 0kUXhFI0D+BdvMGs7aZ93HTJZLpRE8GEtJBUhQ8gMN8pxoZL24f6J6p+dM5iJ8ZHr2d8=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable-smoke test] 181314: regressions - FAIL X-Osstest-Failures: xen-unstable-smoke:build-arm64-xsm:xen-build:fail:regression xen-unstable-smoke:build-armhf:xen-build:fail:regression xen-unstable-smoke:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking xen-unstable-smoke:test-armhf-armhf-xl:build-check(1):blocked:nonblocking xen-unstable-smoke:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking X-Osstest-Versions-This: xen=6915a120641b5d232762af7882266048cf039ca0 X-Osstest-Versions-That: xen=64a647f8d817c6989edc000613b5afae19f03f99 From: osstest service owner Date: Thu, 08 Jun 2023 20:18:02 +0000 flight 181314 xen-unstable-smoke real [real] http://logs.test-lab.xenproject.org/osstest/logs/181314/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-arm64-xsm 6 xen-build fail REGR. vs. 181233 build-armhf 6 xen-build fail REGR. vs. 181233 Tests which did not succeed, but are not blocking: test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 15 migrate-support-check fail never pass version targeted for testing: xen 6915a120641b5d232762af7882266048cf039ca0 baseline version: xen 64a647f8d817c6989edc000613b5afae19f03f99 Last test of basis 181233 2023-06-07 02:04:37 Z 1 days Failing since 181246 2023-06-07 11:02:03 Z 1 days 16 attempts Testing same since 181303 2023-06-08 11:00:25 Z 0 days 5 attempts ------------------------------------------------------------ People who touched revisions under test: Andrew Cooper Christian Lindig George Dunlap Henry Wang # CHANGELOG Juergen Gross Julien Grall Luca Fancellu Michal Orzel Roger Pau Monne Roger Pau Monné Stefano Stabellini jobs: build-arm64-xsm fail build-amd64 pass build-armhf fail build-amd64-libvirt pass test-armhf-armhf-xl blocked test-arm64-arm64-xl-xsm blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-libvirt pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 504 lines long.) From xen-devel-bounces@lists.xenproject.org Thu Jun 08 22:35:31 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 08 Jun 2023 22:35:31 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545453.851893 (Exim 4.92) (envelope-from ) id 1q7ODp-0004sY-RE; Thu, 08 Jun 2023 22:35:13 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545453.851893; Thu, 08 Jun 2023 22:35:13 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7ODp-0004sR-Oc; Thu, 08 Jun 2023 22:35:13 +0000 Received: by outflank-mailman (input) for mailman id 545453; Thu, 08 Jun 2023 22:35:13 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7ODp-0004sH-5M; Thu, 08 Jun 2023 22:35:13 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7ODo-0000VS-RK; Thu, 08 Jun 2023 22:35:12 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7ODo-0000oP-Df; Thu, 08 Jun 2023 22:35:12 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q7ODo-0000bB-DF; Thu, 08 Jun 2023 22:35:12 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=AGZZ525Yj1wd44Tf3t4dEXLUb6ZORI2+++lY/iiqmIA=; b=Tq4mPRh6zTEfomQS77gOPjoGBp vU1k/7EAPP5mZqxbRR42SUz8Tbq79kgXAIwgzVY2Zj2N8CC8J1AhISpMBMJKm0KzGAZPju/7TFGdj zFB5cZ53t/RTi/MYcU3lltzaaQ8C9K0/4rYudxbpKP5Od2+7NHfJUlPoFLgbMZV5W7dc=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable-smoke test] 181316: regressions - FAIL X-Osstest-Failures: xen-unstable-smoke:build-arm64-xsm:xen-build:fail:regression xen-unstable-smoke:build-armhf:xen-build:fail:regression xen-unstable-smoke:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking xen-unstable-smoke:test-armhf-armhf-xl:build-check(1):blocked:nonblocking xen-unstable-smoke:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking X-Osstest-Versions-This: xen=6915a120641b5d232762af7882266048cf039ca0 X-Osstest-Versions-That: xen=64a647f8d817c6989edc000613b5afae19f03f99 From: osstest service owner Date: Thu, 08 Jun 2023 22:35:12 +0000 flight 181316 xen-unstable-smoke real [real] http://logs.test-lab.xenproject.org/osstest/logs/181316/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-arm64-xsm 6 xen-build fail REGR. vs. 181233 build-armhf 6 xen-build fail REGR. vs. 181233 Tests which did not succeed, but are not blocking: test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 15 migrate-support-check fail never pass version targeted for testing: xen 6915a120641b5d232762af7882266048cf039ca0 baseline version: xen 64a647f8d817c6989edc000613b5afae19f03f99 Last test of basis 181233 2023-06-07 02:04:37 Z 1 days Failing since 181246 2023-06-07 11:02:03 Z 1 days 17 attempts Testing same since 181303 2023-06-08 11:00:25 Z 0 days 6 attempts ------------------------------------------------------------ People who touched revisions under test: Andrew Cooper Christian Lindig George Dunlap Henry Wang # CHANGELOG Juergen Gross Julien Grall Luca Fancellu Michal Orzel Roger Pau Monne Roger Pau Monné Stefano Stabellini jobs: build-arm64-xsm fail build-amd64 pass build-armhf fail build-amd64-libvirt pass test-armhf-armhf-xl blocked test-arm64-arm64-xl-xsm blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-libvirt pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 504 lines long.) From xen-devel-bounces@lists.xenproject.org Thu Jun 08 22:39:30 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 08 Jun 2023 22:39:30 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545460.851904 (Exim 4.92) (envelope-from ) id 1q7OHx-0005Sh-Dd; Thu, 08 Jun 2023 22:39:29 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545460.851904; Thu, 08 Jun 2023 22:39:29 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7OHx-0005Sa-9i; Thu, 08 Jun 2023 22:39:29 +0000 Received: by outflank-mailman (input) for mailman id 545460; Thu, 08 Jun 2023 22:39:29 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7OHx-0005SU-13 for xen-devel@lists.xenproject.org; Thu, 08 Jun 2023 22:39:29 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 53028c5b-064d-11ee-b232-6b7b168915f2; Fri, 09 Jun 2023 00:39:27 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 52A1161560; Thu, 8 Jun 2023 22:39:26 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id D6270C433D2; Thu, 8 Jun 2023 22:39:24 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 53028c5b-064d-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1686263965; bh=t98gCWRtymUpoZf2mA9dWX7sG7VwReFqVahHJeFbYJg=; h=Date:From:To:cc:Subject:In-Reply-To:References:From; b=QhDX1EeauvALW/A0C4QysHEPgUnWgcw6UiH80gFVGkqq0l9NGBnz2ahZdJo1TalIO kS5st9OEDQvWUyjhVc1tGC0xCWHIs4Xu1X6MgHpUrEEeUvaEeAEeyx5hTaf9SVZgE3 M/d7JTbuq88EAgNDYmGBClVjQeMWYuwQ374R7QcLgSFf6WG+hQuluJ8xNqmDFvZmyM vUzaBe3PDm7KLaIUtjWHzWj++n6jkSk89s2eILJI3xdTJdgSQKmN3K9YA3fdkqHE9K fO16cGQNQJflbRz+qdFyxeDCVaaVoc+0KztbeX22jp8Ft430wdLZvFlFD1wgXcfaQF 2sBIYKdnv8ChQ== Date: Thu, 8 Jun 2023 15:39:23 -0700 (PDT) From: Stefano Stabellini X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop To: Jiatong Shen cc: xen-users@lists.xenproject.org, sstabellini@kernel.org, xen-devel@lists.xenproject.org, julien@xen.org, bertrand.marquis@arm.com Subject: Re: Asking for help to debug xen efi on Kunpeng machine In-Reply-To: Message-ID: References: User-Agent: Alpine 2.22 (DEB 394 2020-01-19) MIME-Version: 1.0 Content-Type: multipart/mixed; BOUNDARY="8323329-1331518572-1686263885=:3803068" Content-ID: This message is in MIME format. The first part should be readable text, while the remaining parts are likely unreadable without MIME-aware tools. --8323329-1331518572-1686263885=:3803068 Content-Type: text/plain; CHARSET=UTF-8 Content-Transfer-Encoding: 8BIT Content-ID: Hi Jiatong, Do you have access to the serial? If so, it is possible that the boot is actually successful and it is only the screen initialization the problem. If kunpeng 920 is a UEFI/ACPI machine, we know that there are issues with screen initialization. Cheers, Stefano On Fri, 9 Jun 2023, Jiatong Shen wrote: > Hello community, >     > I need help for debugging XEN on aarch64 architecture. The machine I am working on is a kunpeng 920 armv8 compatible CPU. I use debian 11 > as operating system and installed xen-system-arm64 without any problem. But when I boot into xen hypervisor mode, the machine screen is > black out without any output or any helpful debugging message.  > >   Could you generously provide some hints for debugging the issue?  Thank you very much in advance and looking forward to hearing from you. > > -- > > Best Regards, > > Jiatong Shen > > --8323329-1331518572-1686263885=:3803068-- From xen-devel-bounces@lists.xenproject.org Thu Jun 08 22:43:55 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 08 Jun 2023 22:43:55 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545485.851931 (Exim 4.92) (envelope-from ) id 1q7OM2-0007pU-8S; Thu, 08 Jun 2023 22:43:42 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545485.851931; Thu, 08 Jun 2023 22:43:42 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7OM2-0007pN-5n; Thu, 08 Jun 2023 22:43:42 +0000 Received: by outflank-mailman (input) for mailman id 545485; Thu, 08 Jun 2023 22:43:40 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7OM0-0007pC-IQ for xen-devel@lists.xenproject.org; Thu, 08 Jun 2023 22:43:40 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [2604:1380:4641:c500::1]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id e7f597e9-064d-11ee-8611-37d641c3527e; Fri, 09 Jun 2023 00:43:38 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 90BAB63F17; Thu, 8 Jun 2023 22:43:36 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 041E6C433EF; Thu, 8 Jun 2023 22:43:33 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: e7f597e9-064d-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1686264216; bh=s/roKiwIpEWTPQAAmU12DOXtTPMNzR+NigpYF0r52tE=; h=Date:From:To:cc:Subject:In-Reply-To:References:From; b=N+C//+qPNMJMEZqOZqUeRGk+m1d0p94LawSZ5cnrs2pLaMOpBEszkznP/aKaIA5UK S+fsgTpr8vcgY7YfL7L4FyEmX5o7dvdLWT06dSFcvAHuJ14zA2uqGO0TPZ0xhqxxzg a48NCaEuJ4EIpgcYmB45+mCXSZm9s0mVRZSnCBJj7Lnr8DxnyHs5z/Xe2lKIqLFUyy XBpLrtFYNWfvmIgAgZD/Tbq6UDtPYUkmLpBdABbvXUMpuJCmbZNffGU034Ia6yhvG1 Ttzav0/quy9Y0NZPk547GRpx5nsLPsTtkUprFNP5TEwyqeWQf6Vq+Hr6Mgp6f/9PBg miWJaHkVn2AxQ== Date: Thu, 8 Jun 2023 15:43:32 -0700 (PDT) From: Stefano Stabellini X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop To: Bernhard Beschow cc: Stefano Stabellini , mst@redhat.com, qemu-devel@nongnu.org, Richard Henderson , Marcel Apfelbaum , David Woodhouse , Eduardo Habkost , Chuck Zmudzinski , Aurelien Jarno , =?UTF-8?Q?Herv=C3=A9_Poussineau?= , Paul Durrant , Paolo Bonzini , =?UTF-8?Q?Philippe_Mathieu-Daud=C3=A9?= , Anthony Perard , xen-devel@lists.xenproject.org Subject: Re: [PATCH v4 0/7] Resolve TYPE_PIIX3_XEN_DEVICE In-Reply-To: Message-ID: References: <20230403074124.3925-1-shentey@gmail.com> <20230421033757-mutt-send-email-mst@kernel.org> <9EB9A984-61E5-4226-8352-B5DDC6E2C62E@gmail.com> User-Agent: Alpine 2.22 (DEB 394 2020-01-19) MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="8323329-891826009-1686264215=:3803068" This message is in MIME format. The first part should be readable text, while the remaining parts are likely unreadable without MIME-aware tools. --8323329-891826009-1686264215=:3803068 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8BIT On Mon, 5 Jun 2023, Bernhard Beschow wrote: > Am 22. Mai 2023 15:42:03 UTC schrieb Bernhard Beschow : > > > > > >Am 15. Mai 2023 20:52:40 UTC schrieb Stefano Stabellini : > >>On Sat, 13 May 2023, Bernhard Beschow wrote: > >>> Am 21. April 2023 07:38:10 UTC schrieb "Michael S. Tsirkin" : > >>> >On Mon, Apr 03, 2023 at 09:41:17AM +0200, Bernhard Beschow wrote: > >>> >> There is currently a dedicated PIIX3 device model for use under Xen. By reusing > >>> >> existing PCI API during initialization this device model can be eliminated and > >>> >> the plain PIIX3 device model can be used instead. > >>> >> > >>> >> Resolving TYPE_PIIX3_XEN_DEVICE results in less code while also making Xen > >>> >> agnostic towards the precise south bridge being used in the PC machine. The > >>> >> latter might become particularily interesting once PIIX4 becomes usable in the > >>> >> PC machine, avoiding the "Frankenstein" use of PIIX4_ACPI in PIIX3. > >>> > > >>> >xen stuff so I assume that tree? > >>> > >>> Ping > >> > >>I am OK either way. Michael, what do you prefer? > >> > >>Normally I would suggest for you to pick up the patches. But as it > >>happens I'll have to likely send another pull request in a week or two > >>and I can add these patches to it. > >> > >>Let me know your preference and I am happy to follow it. > > > >Hi Stefano, > > > >Michael's PR was merged last week. How about including this series into your PR then? > > Ping Sorry for the late reply, it looks like patch #3 breaks the build: [1888/4025] Compiling C object libcommon.fa.p/hw_isa_piix3.c.o FAILED: libcommon.fa.p/hw_isa_piix3.c.o cc -m64 -mcx16 -Ilibcommon.fa.p -Iui -I../ui -I/usr/include/capstone -I/usr/include/pixman-1 -I/usr/include/libpng16 -I/usr/include/spice-server -I/usr/include/spice-1 -I/usr/include/p11-kit-1 -I/usr/include/libusb-1.0 -I/usr/include/SDL2 -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/usr/include/libmount -I/usr/include/blkid -I/usr/include/gio-unix-2.0 -I/usr/include/slirp -I/usr/include/gtk-3.0 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/freetype2 -I/usr/include/fribidi -I/usr/include/uuid -I/usr/include/cairo -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/atk-1.0 -I/usr/include/at-spi2-atk/2.0 -I/usr/include/dbus-1.0 -I/usr/lib/x86_64-linux-gnu/dbus-1.0/include -I/usr/include/at-spi-2.0 -I/usr/include/vte-2.91 -I/usr/include/virgl -I/usr/include/cacard -I/usr/include/nss -I/usr/include/nspr -I/usr/include/PCSC -fdiagnostics-color=auto -Wall -Winvalid-pch -Werror -std=gnu11 -O2 -g -fstack-protector-strong -U_FORTIFY_SOURCE -D_FORTIFY_SOURC E=2 -Wundef -Wwrite-strings -Wmissing-prototypes -Wstrict-prototypes -Wredundant-decls -Wold-style-declaration -Wold-style-definition -Wtype-limits -Wformat-security -Wformat-y2k -Winit-self -Wignored-qualifiers -Wempty-body -Wnested-externs -Wendif-labels -Wexpansion-to-defined -Wimplicit-fallthrough=2 -Wmissing-format-attribute -Wno-missing-include-dirs -Wno-shift-negative-value -Wno-psabi -isystem /builds/Vikram.garhwal/qemu-ioreq/linux-headers -isystem linux-headers -iquote . -iquote /builds/Vikram.garhwal/qemu-ioreq -iquote /builds/Vikram.garhwal/qemu-ioreq/include -iquote /builds/Vikram.garhwal/qemu-ioreq/host/include/x86_64 -iquote /builds/Vikram.garhwal/qemu-ioreq/host/include/generic -iquote /builds/Vikram.garhwal/qemu-ioreq/tcg/i386 -pthread -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -fno-strict-aliasing -fno-common -fwrapv -fPIE -D_DEFAULT_SOURCE -D_XOPEN_SOURCE=600 -DNCURSES_WIDECHAR=1 -D_REENTRANT -Wno-undef -DSTRUCT_IOVEC_DEFINED -MD -MQ libcommon.fa.p/hw _isa_piix3.c.o -MF libcommon.fa.p/hw_isa_piix3.c.o.d -o libcommon.fa.p/hw_isa_piix3.c.o -c ../hw/isa/piix3.c ../hw/isa/piix3.c:265:13: error: ‘pci_piix3_realize’ defined but not used [-Werror=unused-function] 265 | static void pci_piix3_realize(PCIDevice *dev, Error **errp) | ^~~~~~~~~~~~~~~~~ cc1: all warnings being treated as errors --8323329-891826009-1686264215=:3803068-- From xen-devel-bounces@lists.xenproject.org Thu Jun 08 22:54:15 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 08 Jun 2023 22:54:15 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545499.851941 (Exim 4.92) (envelope-from ) id 1q7OW4-0000zP-Au; Thu, 08 Jun 2023 22:54:04 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545499.851941; Thu, 08 Jun 2023 22:54:04 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7OW4-0000zI-7q; Thu, 08 Jun 2023 22:54:04 +0000 Received: by outflank-mailman (input) for mailman id 545499; Thu, 08 Jun 2023 22:54:02 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7OW2-0000z8-LN; Thu, 08 Jun 2023 22:54:02 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7OW2-0000yQ-DC; Thu, 08 Jun 2023 22:54:02 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7OW2-0001EP-3S; Thu, 08 Jun 2023 22:54:02 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q7OW2-0003mn-33; Thu, 08 Jun 2023 22:54:02 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=Y6Lzj0TYmdfT/+WilKLlc7GRJjQv9nAy4kihKl0MpFM=; b=yu8/sb2uyZYA1lABPsEYPazJ80 q1TZ47plOJA4koJekmwiQ6bZbM3E9E5bn6eamNcfB+q4bC1Z5olFg7hzTSSfAzF516xQ4wXLSJIyX 1I1dvO7m4KVVg3N5QdLkHcwgkXWjSq6vkyVg5SYAK4EZbU7KrUU4cLpOWIluInGOi+5A=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [linux-linus test] 181300: regressions - FAIL X-Osstest-Failures: linux-linus:test-armhf-armhf-xl-credit1:xen-boot:fail:regression linux-linus:test-armhf-armhf-examine:reboot:fail:nonblocking linux-linus:test-armhf-armhf-xl-multivcpu:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-arndale:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking linux-linus:test-armhf-armhf-xl-credit2:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking linux-linus:test-armhf-armhf-libvirt:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-raw:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-qcow2:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-vhd:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-rtds:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-qcow2:migrate-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-raw:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: linux=5f63595ebd82f56a2dd36ca013dd7f5ff2e2416a X-Osstest-Versions-That: linux=6c538e1adbfc696ac4747fb10d63e704344f763d From: osstest service owner Date: Thu, 08 Jun 2023 22:54:02 +0000 flight 181300 linux-linus real [real] flight 181318 linux-linus real-retest [real] http://logs.test-lab.xenproject.org/osstest/logs/181300/ http://logs.test-lab.xenproject.org/osstest/logs/181318/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: test-armhf-armhf-xl-credit1 8 xen-boot fail REGR. vs. 180278 Tests which did not succeed, but are not blocking: test-armhf-armhf-examine 8 reboot fail like 180278 test-armhf-armhf-xl-multivcpu 8 xen-boot fail like 180278 test-armhf-armhf-xl-arndale 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 180278 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 180278 test-armhf-armhf-xl-credit2 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 180278 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 180278 test-armhf-armhf-libvirt 8 xen-boot fail like 180278 test-armhf-armhf-libvirt-raw 8 xen-boot fail like 180278 test-armhf-armhf-libvirt-qcow2 8 xen-boot fail like 180278 test-armhf-armhf-xl 8 xen-boot fail like 180278 test-armhf-armhf-xl-vhd 8 xen-boot fail like 180278 test-armhf-armhf-xl-rtds 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 180278 test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qcow2 14 migrate-support-check fail never pass test-amd64-amd64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass version targeted for testing: linux 5f63595ebd82f56a2dd36ca013dd7f5ff2e2416a baseline version: linux 6c538e1adbfc696ac4747fb10d63e704344f763d Last test of basis 180278 2023-04-16 19:41:46 Z 53 days Failing since 180281 2023-04-17 06:24:36 Z 52 days 99 attempts Testing same since 181300 2023-06-08 08:39:21 Z 0 days 1 attempts ------------------------------------------------------------ 2633 people touched revisions under test, not listing them all jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl fail test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-freebsd11-amd64 pass test-amd64-amd64-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale fail test-amd64-amd64-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 fail test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 fail test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine fail test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt fail test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu fail test-amd64-amd64-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-amd64-pygrub pass test-amd64-amd64-libvirt-qcow2 pass test-armhf-armhf-libvirt-qcow2 fail test-amd64-amd64-libvirt-raw pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw fail test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds fail test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-amd64-xl-vhd pass test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd fail ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 332858 lines long.) From xen-devel-bounces@lists.xenproject.org Thu Jun 08 23:43:16 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 08 Jun 2023 23:43:16 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545510.851951 (Exim 4.92) (envelope-from ) id 1q7PHO-0006Yk-5c; Thu, 08 Jun 2023 23:42:58 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545510.851951; Thu, 08 Jun 2023 23:42:58 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7PHO-0006Yd-2v; Thu, 08 Jun 2023 23:42:58 +0000 Received: by outflank-mailman (input) for mailman id 545510; Thu, 08 Jun 2023 23:42:56 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7PHM-0006YQ-24; Thu, 08 Jun 2023 23:42:56 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7PHL-00024F-QK; Thu, 08 Jun 2023 23:42:55 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7PHL-0002Gg-4c; Thu, 08 Jun 2023 23:42:55 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q7PHL-0000qW-4C; Thu, 08 Jun 2023 23:42:55 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=AU1rNHi0kTZyDe5wHfDAqbSn3w+A3Bep7WXWQH+DHRI=; b=OurKKFkPaQ993f7f3jwStFH5nU vWnhigkIgKhhzG87xo99V5xkXNbION30QKjqxwDfagktJh48E5aqRG8oLuU/zlk91DsJIW/ZKmgZy ivPIbGkxbu7XCUQPZXXvgBxEzjKLezrJwRRe6Hs/RMDow7J2+0RhO7CSM7JjDCbp2pZA=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [qemu-mainline test] 181312: regressions - FAIL X-Osstest-Failures: qemu-mainline:build-arm64-xsm:xen-build:fail:regression qemu-mainline:build-arm64:xen-build:fail:regression qemu-mainline:build-amd64:xen-build:fail:regression qemu-mainline:build-i386:xen-build:fail:regression qemu-mainline:build-amd64-xsm:xen-build:fail:regression qemu-mainline:build-i386-xsm:xen-build:fail:regression qemu-mainline:build-armhf:xen-build:fail:regression qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-i386:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:build-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:build-arm64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:build-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:build-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pygrub:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking X-Osstest-Versions-This: qemuu=45ae97993a75f975f1a01d25564724c7e10a543f X-Osstest-Versions-That: qemuu=6972ef1440a9d685482d78672620a7482f2bd09a From: osstest service owner Date: Thu, 08 Jun 2023 23:42:55 +0000 flight 181312 qemu-mainline real [real] http://logs.test-lab.xenproject.org/osstest/logs/181312/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-arm64-xsm 6 xen-build fail REGR. vs. 180691 build-arm64 6 xen-build fail REGR. vs. 180691 build-amd64 6 xen-build fail REGR. vs. 180691 build-i386 6 xen-build fail REGR. vs. 180691 build-amd64-xsm 6 xen-build fail REGR. vs. 180691 build-i386-xsm 6 xen-build fail REGR. vs. 180691 build-armhf 6 xen-build fail REGR. vs. 180691 Tests which did not succeed, but are not blocking: test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-xl-xsm 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-raw 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-xsm 1 build-check(1) blocked n/a test-arm64-arm64-xl 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit1 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit2 1 build-check(1) blocked n/a test-arm64-arm64-xl-thunderx 1 build-check(1) blocked n/a test-arm64-arm64-xl-vhd 1 build-check(1) blocked n/a test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a test-armhf-armhf-libvirt 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-qcow2 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-raw 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a test-armhf-armhf-xl-arndale 1 build-check(1) blocked n/a test-armhf-armhf-xl-multivcpu 1 build-check(1) blocked n/a test-armhf-armhf-xl-rtds 1 build-check(1) blocked n/a test-armhf-armhf-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-amd 1 build-check(1) blocked n/a test-amd64-i386-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-raw 1 build-check(1) blocked n/a test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-i386 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-amd64 1 build-check(1) blocked n/a test-amd64-coresched-i386-xl 1 build-check(1) blocked n/a test-amd64-coresched-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-xsm 1 build-check(1) blocked n/a build-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-shadow 1 build-check(1) blocked n/a test-amd64-amd64-xl-rtds 1 build-check(1) blocked n/a build-arm64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a build-armhf-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a build-i386-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-amd 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-pair 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-qcow2 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-vhd 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvshim 1 build-check(1) blocked n/a test-amd64-amd64-pair 1 build-check(1) blocked n/a test-amd64-amd64-pygrub 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-intel 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd11-amd64 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd12-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-multivcpu 1 build-check(1) blocked n/a test-amd64-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit1 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit1 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit2 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-intel 1 build-check(1) blocked n/a test-amd64-i386-xl 1 build-check(1) blocked n/a test-amd64-i386-xl-pvshim 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a version targeted for testing: qemuu 45ae97993a75f975f1a01d25564724c7e10a543f baseline version: qemuu 6972ef1440a9d685482d78672620a7482f2bd09a Last test of basis 180691 2023-05-17 10:45:22 Z 22 days Failing since 180699 2023-05-18 07:21:24 Z 21 days 73 attempts Testing same since 181312 2023-06-08 17:40:24 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Afonso Bordado Akihiko Odaki Akihiro Suda Alex Bennée Alex Williamson Alexander Bulekov Alexander Graf Alexander Ivanov Alistair Francis Ani Sinha Ani Sinha Anthony PERARD Anton Johansson BALATON Zoltan Bastian Koppelmann Bernhard Beschow Bin Meng Brian Cain Brice Goglin Camilla Conte Chuck Zmudzinski Cindy Lu Clément Chigot Cornelia Huck Cédric Le Goater Cédric Le Goater Daniel Henrique Barboza Daniel P. Berrangé Daniil Kovalev David Hildenbrand David Woodhouse Emanuele Giuseppe Esposito Enze Li Eric Auger Eric Blake Eric DeVolder Erico Nunes Eugenio Pérez Fabiano Rosas Fan Ni Fiona Ebner Francesco Cagnin Francisco Iglesias Gavin Shan Gregory Price Gregory Price Hanna Czenczek Hao Zeng Hawkins Jiawei Igor Mammedov Ilya Leoshkevich Ira Weiny Jagannathan Raman Jason Wang Jean-Louis Dupond Jean-Philippe Brucker Jiaxun Yang John Snow Jonathan Cameron Juan Quintela Kevin Wolf Laurent Vivier Lei Yang Leonardo Bras Maksim Davydov Marc-André Lureau Marcin Juszkiewicz Marco Liebel Mark Cave-Ayland Markus Armbruster Matheus Tavares Bernardino Mauro Matteo Cascella Max Fritz Michael S. Tsirkin Michael Tokarev Michal Privoznik Mostafa Saleh Nicholas Piggin Nicolas Saenz Julienne Niek Linnenbank Palmer Dabbelt Paolo Bonzini Peter Maydell Peter Xu Philippe Mathieu-Daudé qianfan Zhao Raghu H Rene Engel Richard Henderson Richard Purdie Ricky Zhou Ryan Wendland Sebastian Ott Sergio Lopez Sid Manning Song Gao Stefan Hajnoczi Stefano Garzarella Steve Sistare Taylor Simpson Thomas Huth Thomas Weißschuh timothee.cocault@gmail.com Timothée Cocault Tommy Wu Vikram Garhwal Viktor Prutyanov Vitaly Cheptsov Vivek Kasireddy Vladimir Sementsov-Ogievskiy Volker Rümelin Xinyu Li Zeng Hao Zhenyu Zhang Zhenzhong Duan Zhuojia Shen jobs: build-amd64-xsm fail build-arm64-xsm fail build-i386-xsm fail build-amd64 fail build-arm64 fail build-armhf fail build-i386 fail build-amd64-libvirt blocked build-arm64-libvirt blocked build-armhf-libvirt blocked build-i386-libvirt blocked build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl blocked test-amd64-coresched-amd64-xl blocked test-arm64-arm64-xl blocked test-armhf-armhf-xl blocked test-amd64-i386-xl blocked test-amd64-coresched-i386-xl blocked test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-i386-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-amd64-libvirt-xsm blocked test-arm64-arm64-libvirt-xsm blocked test-amd64-i386-libvirt-xsm blocked test-amd64-amd64-xl-xsm blocked test-arm64-arm64-xl-xsm blocked test-amd64-i386-xl-xsm blocked test-amd64-amd64-qemuu-nested-amd blocked test-amd64-amd64-xl-pvhv2-amd blocked test-amd64-i386-qemuu-rhel6hvm-amd blocked test-amd64-amd64-dom0pvh-xl-amd blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-freebsd10-amd64 blocked test-amd64-amd64-qemuu-freebsd11-amd64 blocked test-amd64-amd64-qemuu-freebsd12-amd64 blocked test-amd64-amd64-xl-qemuu-ovmf-amd64 blocked test-amd64-i386-xl-qemuu-ovmf-amd64 blocked test-amd64-amd64-xl-qemuu-win7-amd64 blocked test-amd64-i386-xl-qemuu-win7-amd64 blocked test-amd64-amd64-xl-qemuu-ws16-amd64 blocked test-amd64-i386-xl-qemuu-ws16-amd64 blocked test-armhf-armhf-xl-arndale blocked test-amd64-amd64-xl-credit1 blocked test-arm64-arm64-xl-credit1 blocked test-armhf-armhf-xl-credit1 blocked test-amd64-amd64-xl-credit2 blocked test-arm64-arm64-xl-credit2 blocked test-armhf-armhf-xl-credit2 blocked test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-freebsd10-i386 blocked test-amd64-amd64-qemuu-nested-intel blocked test-amd64-amd64-xl-pvhv2-intel blocked test-amd64-i386-qemuu-rhel6hvm-intel blocked test-amd64-amd64-dom0pvh-xl-intel blocked test-amd64-amd64-libvirt blocked test-armhf-armhf-libvirt blocked test-amd64-i386-libvirt blocked test-amd64-amd64-xl-multivcpu blocked test-armhf-armhf-xl-multivcpu blocked test-amd64-amd64-pair blocked test-amd64-i386-pair blocked test-amd64-amd64-libvirt-pair blocked test-amd64-i386-libvirt-pair blocked test-amd64-amd64-xl-pvshim blocked test-amd64-i386-xl-pvshim blocked test-amd64-amd64-pygrub blocked test-armhf-armhf-libvirt-qcow2 blocked test-amd64-amd64-xl-qcow2 blocked test-arm64-arm64-libvirt-raw blocked test-armhf-armhf-libvirt-raw blocked test-amd64-i386-libvirt-raw blocked test-amd64-amd64-xl-rtds blocked test-armhf-armhf-xl-rtds blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-amd64-xl-shadow blocked test-amd64-i386-xl-shadow blocked test-arm64-arm64-xl-thunderx blocked test-amd64-amd64-libvirt-vhd blocked test-arm64-arm64-xl-vhd blocked test-armhf-armhf-xl-vhd blocked test-amd64-i386-xl-vhd blocked ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 16087 lines long.) From xen-devel-bounces@lists.xenproject.org Thu Jun 08 23:58:20 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 08 Jun 2023 23:58:20 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545517.851961 (Exim 4.92) (envelope-from ) id 1q7PWB-0008AN-Fb; Thu, 08 Jun 2023 23:58:15 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545517.851961; Thu, 08 Jun 2023 23:58:15 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7PWB-0008AG-Cj; Thu, 08 Jun 2023 23:58:15 +0000 Received: by outflank-mailman (input) for mailman id 545517; Thu, 08 Jun 2023 23:58:13 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7PW8-0008A7-VP for xen-devel@lists.xenproject.org; Thu, 08 Jun 2023 23:58:13 +0000 Received: from esa3.hc3370-68.iphmx.com (esa3.hc3370-68.iphmx.com [216.71.145.155]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 50964093-0658-11ee-8611-37d641c3527e; Fri, 09 Jun 2023 01:58:09 +0200 (CEST) Received: from mail-bn1nam02lp2049.outbound.protection.outlook.com (HELO NAM02-BN1-obe.outbound.protection.outlook.com) ([104.47.51.49]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 08 Jun 2023 19:58:02 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by DS7PR03MB5480.namprd03.prod.outlook.com (2603:10b6:5:2d1::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Thu, 8 Jun 2023 23:57:59 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606%4]) with mapi id 15.20.6455.030; Thu, 8 Jun 2023 23:57:58 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 50964093-0658-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686268689; h=message-id:date:from:subject:to:cc:references: in-reply-to:content-transfer-encoding:mime-version; bh=FoMG9AT0Qxg4pnTuky90ZhIp/J6nW7DU7CZeeBI5QAk=; b=fo23geaRfupOJyf0qr3kqJyoNLrOwRAGUk/3Dvwpl6jr+qjO0WMcqDx9 ykHl/65EpXxyyFp1WY1fb6Q7kIJLfjNczAgwH5a2KJpSSDid3gDeh5dGq MD2JbKb6ifsQEtVTqOfr3aWCBpMke5w0gETvoQBzMTDTy8VJxBE5HO7JQ M=; X-IronPort-RemoteIP: 104.47.51.49 X-IronPort-MID: 112153763 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:G9JWDK1jShIruvFwRfbD5Ux3kn2cJEfYwER7XKvMYLTBsI5bpz0Az zQYWm2GOquCYjPyKdt/PN62oxkPv5/dx9NjQFRvpC1hF35El5HIVI+TRqvS04F+DeWYFR46s J9OAjXkBJppJpMJjk71atANlVEliefTAOK6ULWeUsxIbVcMYD87jh5+kPIOjIdtgNyoayuAo tq3qMDEULOf82cc3lk8teTb8HuDgNyo4GlD5gJmNagQ1LPjvyJ94Kw3dPnZw0TQGuG4LsbiL 87fwbew+H/u/htFIrtJRZ6iLyXm6paLVeS/oiI+t5qK23CulQRrukoPD9IOaF8/ttm8t4sZJ OOhF3CHYVxB0qXkwIzxWvTDes10FfUuFLTveRBTvSEPpqFvnrSFL/hGVSkL0YMkFulfC0Zp2 6wmBDE2d1OknbqYmouxTMpCiZF2RCXrFNt3VnBI6xj8Vaxja7aaBqLA6JlfwSs6gd1IEbDGf c0FZDFzbRPGJRpSJlMQD5F4l+Ct7pX9W2QA9BTJ+uxqui6PnWSd05C0WDbRUvWMSd9YgQCzo WXe8n6iKhobKMae2XyO9XfEaurnxHqhAd9JS+PjnhJsqEGBmnciUiQ2bnWi+ffguk+kZPxlG mVBr0LCqoB3riRHVOLVTgC+oHmCsVgeWtNWHMU+6QeQ2uzV5RqUAi4PSTspQNU8ssMeTCYs2 lXPk96BLThutqCFDHuH8/KXoCm0NCw9KW4ZeTRCTA0L+dDvrYg/yBXVQb5LG6eph9n0H3f1y iqLqiElr7wJiIgA0KDT1U/GhzaEpZXTSAMxoALNUQqN4R5+foOjT4+l817W6bBHNonxZl2Au mUU3sOF7/EmE56AjmqOTf8LEbXv4OyKWBXAmlRoEJQn+xyk/2ajdMZe+jh4J0pvdMoJERftY UnOqStY/ppXPX23felweY33FsdC5azhE8n1E/XVdsFmfJd8bkmE8TtoaErW2Hri+GAgnKU7N I2zfsO8S3oXYYxjzTyrV6IF2KUq3SsW22zeX9b4wg6h3L7YY2SaIZ8dOUaKKP8w6KafpAjE2 81eOcqUxlNUV+iWSjHe9YseN3gGJHIxCJTq7cdQc4arJgtgBXFkEf7Kyq0Jf41+g78Tl+HG5 HixV0ZUjl3lihXvLAyQaTZ5da/rVJBzhXshOGonOlPA82Mqa5ym9K4ZX5IydKsg8qpoyvscZ 9sMfsibRN5IVijA/jAQfLH9pYp5eRKzjBiSOSe/ezg+Z9hrQAmh0trlfQbr8CQfJi+2vtE5u LquykXQRp9rbxRvCoPaZeyiy3u1vGMBg6RiUk3QON5RdU7wto9wJETZjPAtJNoXAQ7e3Tbc3 AGTaT8Equ3di4s09sTVn6eCrpfvH+YWNklbBWjf6Z6tNTTG82+k38lGWeOFFRjZVWXp6OCha P9TwvXULvIKhhBJvpB6HrItyrgxj/P/9+FyzQl+GnjPKVOxBdtILmaDwpNnt6tD3LZVtAK6H EWV9bFyM6+GNdn+DHYeIQMkaqKI0vR8sjDI7/0zCEH74jJnuruBTUhWeRKLjUR1JrxvMZhjx vw9oskI8A+uoh0wO92Cg2Zf8GHkBmQKVKM1t5cbKJXmhgoi1hdJZpm0IjP255SGcJNIP08mK zSXlYLLgrgazU3HG1IoGHHL3+F1ipMJtxRHilQFIjyhnd7IheQ+2hFL2TI+Ug1RwxNE1KR1M 21mX2VtIKiI7TpsrM1EW2+hHUdEHBLf9kGZ41QRlWbSSE2pfm3CJWk8MKCG+0Vx22ZBdTpS+ vec1W3nWDDtYun+2yIzXQhurPmLZcFq/wjL3sm9HsqtFYgmbDbshKSjI2EPrnPPGcosgEjMp sFp8fx2ZKm9MjQfy4U3ApeXk7QZTguJIkRGQPd87OUIG33RfHe53j3mFqyqUsZEJviP+0nhD cVrfphLT07miHfIqS0HD6kRJbMyhOQu+NcJZrLsIygBrqebqT1q9pnX80ASmVMWfjmnqu5lQ qu5St5IOjX4aad884MVkPR5Bw== IronPort-HdrOrdr: A9a23:BTum3aoOgB0d1kSzX8QiLFoaV5rveYIsimQD101hICG9Evb0qy nOpoV/6faQslwssR4b9uxoVJPvfZq+z+8W3WByB9eftWDd0QPFEGgL1+DfKlbbak7DH4BmtJ uJc8JFeafN5VoRt7eG3OFveexQvOVu88qT9JjjJ28Gd3APV0n5hT0JcjpyFCdNNW57LKt8Lr WwzOxdqQGtfHwGB/7LfUXsD4D41rv2fIuNW29+OyIa X-Talos-CUID: 9a23:782TwW5RO6fMyu4Rjdss/mkzNJAbXnzm1TT3OReWU19jTp67RgrF X-Talos-MUID: 9a23:lmj9lgbFMFsAVOBTqy2wnwA4DedTzb32Bhk9kI85lfO1HHkl X-IronPort-AV: E=Sophos;i="6.00,228,1681185600"; d="scan'208";a="112153763" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=gChBozy6rNxYIJAUxZ0R7D/onMQY9kV7D7T25x+QDCLOUu9vbpOVkQqk2S2yXYtPEPXqx2TU5xTdWd6V6Gf23A75rXUfwKgy/H2qL/7Qrg4TLDETmrRIgUl3kx5Ul5IDtNnxuaPd6GeiP3yWwDe1Ql3AsPkkvLf4p91J5d/zdoSbZjx7lsdljwIDB7qNEnekxn+2CbsyNn8q5IzxI4ZPoosH0qIPxEiHxXq0cIm/nQM/QIkIaoCF+Ha+R/PDvW4PNKpg5MJGsWMe8YvrbnAKHr2bpQr59kczhL17neuBdGRmrQ18b/rDcCTgPK1sNOqP73WYjrPNMaqneASqlMJH2A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=twRHBMfVYuU/sueZMOcTln+DbJUpGF3uGhwyeaWZnqc=; b=QhzP205u0k7zky00uwfaOjDEWDduxqIGSx4NWY5VBWvm9hSYJ8tYAvoQ6ekSjU3Ax97YmZOY0FgAS34TQushF39dnuTI/ah+nAxgDdeF4PpiXKrywsD9ZyYmhWUvSut4fMjhSinhL7ik1d5a1RpFSar3uiNEixyHOdLXRQCJhpkQXdFq7rDWjsp5bUJVJqrNaV1WH/RDGtbI4OyxZ/gLMr2Kl4edX8DOAWFMLfK1+oH0gnrMUamgy6g1n6TCjpa/tUFfGAdn1L6IQQU81tOagtS5Nd/CDfBSewxnFgTlQXtOTMJDPpmnQeq1WQ/di6emlQfzp9rjblF83xXT/2ivXA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=twRHBMfVYuU/sueZMOcTln+DbJUpGF3uGhwyeaWZnqc=; b=nBKGmEvNoXDU0sP7aZglr12KpN6y8/p70xI1nn+GkPLJ6SAe+tO2HlxPVg2LgvJbsMgqtcZ7m6LSzCl0jlJjBJ/+DOevVz981CMRkrg/pCfjemKhYLeyB9xthIouhQQXMLEg53vFDke+ssPxJQffwacgYKkULVqlwoau7KcbxhQ= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: Date: Fri, 9 Jun 2023 00:57:46 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 From: Andrew Cooper Subject: Re: [patch] x86/realmode: Make stack lock work in trampoline_compat() Content-Language: en-GB To: Yunhong Jiang , Thomas Gleixner Cc: "Kirill A. Shutemov" , LKML , x86@kernel.org, David Woodhouse , Brian Gerst , Arjan van de Veen , Paolo Bonzini , Paul McKenney , Tom Lendacky , Sean Christopherson , Oleksandr Natalenko , Paul Menzel , "Guilherme G. Piccoli" , Piotr Gorski , Usama Arif , Juergen Gross , Boris Ostrovsky , xen-devel@lists.xenproject.org, Russell King , Arnd Bergmann , linux-arm-kernel@lists.infradead.org, Catalin Marinas , Will Deacon , Guo Ren , linux-csky@vger.kernel.org, Thomas Bogendoerfer , linux-mips@vger.kernel.org, "James E.J. Bottomley" , Helge Deller , linux-parisc@vger.kernel.org, Paul Walmsley , Palmer Dabbelt , linux-riscv@lists.infradead.org, Mark Rutland , Sabin Rapan , "Michael Kelley (LINUX)" , Dave Hansen References: <20230508181633.089804905@linutronix.de> <20230508185218.962208640@linutronix.de> <20230524204818.3tjlwah2euncxzmh@box.shutemov.name> <87y1lbl7r6.ffs@tglx> <87sfbhlwp9.ffs@tglx> <20230529023939.mc2akptpxcg3eh2f@box.shutemov.name> <87bki3kkfi.ffs@tglx> <20230529203129.sthnhzgds7ynddxd@box.shutemov.name> <87h6rujdvl.ffs@tglx> <20230608233402.GA3430@yjiang5-mobl.amr.corp.intel.com> In-Reply-To: <20230608233402.GA3430@yjiang5-mobl.amr.corp.intel.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO4P123CA0531.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:2c5::15) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|DS7PR03MB5480:EE_ X-MS-Office365-Filtering-Correlation-Id: efee3851-b35c-4e33-83d6-08db687c2f65 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: e+AbUJeVW7ib0ohKWmoeV98ceD1LTVE96e28OGQMKjnKhN1Mjv7h54/sfuzygJnjvBRhDShI/4CF1ybJnVHU0oZWVOd2Uo+F9EDwEyTCWeMy8DlnwfAWpMi+o248SYu/6mW/4+e1Rabb28hTqbWwoT8ooLt+aAtNrZTtXh1gcSPu4h0qmE0PrME7U3JCL7lnu35CCBIHjIWp/nbHXRR4QE2MVdJ7geF3F+0Ibot9oioD29PEKLE1XTomU7T1vsMwvfoOeGPMlO3D+Febb9ArUrpcVb3h/eMfkowTM3aEc+yCuhlj2tAt8r4mgtWmfWgu7lK3GDTvkSldnAW4FwkyI2NU1DNFuVDfhi2Nk+SR+MWqN4bwAFXcLduButyw/as7N1M/NX64aFmD6tt2pnYFiUh50LeBTNCj83Y7yRakO33dNnW5jWQzTZ3q32CBOYL1SuktsoK8OQbowtHs0HUeoKima4wzcJnci6u1kxSSU0wQ1M1QZN44ADwSxMsJVJ0lspuHDZZuzS0T8S1L1O7K/LhsUEkiGCQ+kJMpoDP85GrwjOEWqXIoPI7bDEecZqts/HZppavI0y2ODMl/0LKaCXwbHQLAeNtBb9OrqJJ00ZVGUsD8/Fcuus3udAtMysdH3+jQoOTlOlgKbjXvEdOzLw== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(366004)(376002)(346002)(396003)(136003)(39860400002)(451199021)(6512007)(53546011)(2616005)(38100700002)(6506007)(41300700001)(31686004)(6486002)(6666004)(26005)(83380400001)(186003)(966005)(478600001)(110136005)(54906003)(4326008)(316002)(66946007)(82960400001)(66476007)(8676002)(66556008)(7416002)(7406005)(8936002)(2906002)(5660300002)(31696002)(86362001)(36756003)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?U1BVdm9oYjVRNlkyRzBqOFZDMFd5M21WSTZJbldPeGplODF0eStJRDhRQlQ0?= =?utf-8?B?VURKeGhSWDU0aGhnM1VzajY5M1VvTGdqclRQVkJucnpqSWVWQ3dQOHY1Y0Qz?= =?utf-8?B?MEZjYlo2QVJVK3FrdUJMZUR5Y01rOUxpTnAwa1JrdXFKOXFqWEp4U1VNMDdz?= =?utf-8?B?aWNJRmZ5anFaZkNJSTduSnIrL0J1UU5nUDVUSmh2dzY1VWRLdlNGamJWNHJU?= =?utf-8?B?UlBWVGI5elBZaTFub2cvVnRlMnY4UVJLVmRVNWxPOG5PTExCMEM5bjl2dUJk?= =?utf-8?B?a2E5Uys1RVpSRlpmRGF1dTUzSDZUSG96RUE1ckw2ako1VVE0ZnJNNTBZKzZH?= =?utf-8?B?Nnp3R3MrTmFxaCtoMCtjTlB3NmpNTjRES3lHa2VwZ0lHN2lYZFNCZzU3K3dR?= =?utf-8?B?d3loejZPUFFLdVVPN204L2MvT2J6dXhvSDlSY2dLMEgyREJLZlNCcUpqZXU4?= =?utf-8?B?ZHRtbGc5TEF3L2F6Y0lYUWxGTUlKMXBWWTJuQjNlZmpMV1lvNjlyRGh1dHZw?= =?utf-8?B?V3hFdmE3T1REZU5YNVBVZUd3ZWdaa3MrV1d3cDlxZjNFYU91NTdDKzZUcFRo?= =?utf-8?B?WWhkQzJxTXRsNC80MXBOZHN3eHZPb2I0MlVPUGZRbnphUWQ0WTRnSDByWVBq?= =?utf-8?B?T1paOWZVVXE1bFJpcmRWY2xNMzVwYW53QytlRlJwNmdiWm82cGlTTzMwQTli?= =?utf-8?B?TzlqNWtDUW1TWlRETkVzK1FURS9JMW8xOElSRXZ3cEM4dTBQY1ZHOXIzUXh6?= =?utf-8?B?bjA1MklWenJrREQzc0dKdExrUCtaL0QvTDQ1Nk5YSFJlMUFXR2orZ3kzTlEw?= =?utf-8?B?Z2R0LzFoT1ltRlN5ei9LNmp5anllT3hZdjAxaVBSMndsODhqaDhXYU9HSk5B?= =?utf-8?B?L2JyejRsTWpaN1ljQnpnQkVVT2lkYWN3MWJSRDJFRjNHWWx6UDIrQjV5REF4?= =?utf-8?B?b3RpMzIxVmdEb005V0g0Uy8xVm9vdzFENmc4WUdKQ3phbmNpbVpCVExyU0JJ?= =?utf-8?B?eEhYSUl1Q3ltdVM2Uk85ejBuc0xNSlFOc0FUVklkQnNtdTRWZENNejJyeDJ5?= =?utf-8?B?M0hJS01mWm82TFcvU2lRbE00RmcxellQV1F6THFyNnJXVkp3dk04QWdDcWtK?= =?utf-8?B?SFI4cXNrWUpIYWNSdmV5Qko3cVpBZmFSZ3R0Z3prKzUxQzlyTUNrVUs4dVA3?= =?utf-8?B?UzlBWUFhTnFocVArTTN4YWczN0lJMEZQQ1l1a1ZVZk91YXh3SjdxY1ZkZXQ5?= =?utf-8?B?RFJlTEc0cjNHNElHeHBBYlR0VVlBNXk4ZnhBRUJJbG9jWFpTd1NRc25ndmVV?= =?utf-8?B?TGRKdkZFL0lpbW5aN2ZMVER4VmNERjRmajBUWWd3NU5PeXh0OE9sQ0RjYWZX?= =?utf-8?B?a1BtajRFT2tyNE5BUXFrRUVtL1Z4OTVsMDQyZEk1UG42VGV6QkRSR3RxajVw?= =?utf-8?B?R0g0d3RsdVVVZXBsaHZGTzRpOERCbXdEdHN3VUtaTWYvTmcwN0lHcmFPNmxs?= =?utf-8?B?UUxoUm5PNlVNU1A4R0IvZFE2R3BTT2NEZm1wb3FnNnQ0V2tUZUh3TjFIamZU?= =?utf-8?B?aS91blZENVRoWVR1RGFsNTM2clBTRURGNzkzeHNRakI4eFdjci93Vjdlc2Rj?= =?utf-8?B?cHVRZmFvNFQwNDhqYytFS3UrcFFZVlFBWi9sbDcwdHJQaDB3cHQ5c1RZc1Ru?= =?utf-8?B?TGVieFdtNkVOWi8vS1dzeDdCOG9rSVVIeTVYdFFPVzlFaWNnTC9RZWVSdndz?= =?utf-8?B?Rm9pT2kzdWNUd0tFcHJaTHVPTndNSEwzVkl0Sm96WDZ1YnZtNDhDbWdNU3RX?= =?utf-8?B?NmhBNytGVVZ1UU92QXByTlAxUzhVUzdsSm5aMG4ya1drQ0xMMVh2Ym1yNG9Y?= =?utf-8?B?emhFL2p0WkVHd3NmUXFxUDdvYnAxTWdWKytqVkFLN3NpQTAzclhPQjY3Yy9m?= =?utf-8?B?TjZLdW1mTVp3alVwMDZha3NZaWxUS1lGQWt5L01EUUpnQXRKalZ4SFRMdzhw?= =?utf-8?B?YXo1OUtyWWN3R2ZwWmZPbFhWa3NxbDN4eEdqWVllRFZWNmU1TnFLdXNteU9o?= =?utf-8?B?VlBKYTJucmwxRUlFZmxhaGRmaHpOTjBLaHdDRTNGTGFhWFFmWWZXMmtDZGxY?= =?utf-8?B?MWpHRS81TE1XUWlGd1JsL1FqSHZFTXhqZ2d2TW11Wk9VZjdiNi8yWlE1d2ZE?= =?utf-8?B?TFE9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: =?utf-8?B?SEVmMS9XZ1U1NVpYSGphQVI4VXY5WGZwb01sK01uMkk1NUZsYnJWQ0VmR201?= =?utf-8?B?R1ZCOVUrTkJxY3Y0SnFVOVF3eFphUjdEWGJVUmVJbzRKNUpYODVzVEU1d0I2?= =?utf-8?B?cy9yTVRUWTNCcmdjb0VTRUNlK05Iell2Uk9kQzRrUkRzK0lLRHViYTRuMXFa?= =?utf-8?B?dDVXdjkzblRqV1QxY0tqdllDUlJJVzJwNXplZms2YVJOMkwrRFZ4NVhrR0RL?= =?utf-8?B?V01QOURoVzA4Myt6U2xad04xVzQwMG1RTTZSNEVqdWdqMW9rUzJQWUozekFK?= =?utf-8?B?RVg3M2Vtbko1RUxXV3NTa3h0WEM2L2RwSmNPakZwbUphRGdRSVJkcXBpZTNO?= =?utf-8?B?bS94Wlkrb2FBVXVweVJQY2F0UWtWWlhxdkc3V01WTzA2VkJXV2srMTc4MHVj?= =?utf-8?B?N0R6cllJQmg0eUc3V1dxK25IK2pibWlVeVVtS2FEcWNtZTFVdnBrOFVjNHhF?= =?utf-8?B?R29kcmphaUdwSGF6ei9MbDZCTTJLK0pDY2kveHg1Y21GZjBNV1hkc2JvTG1Q?= =?utf-8?B?SVZyYlgxSmowcEZmNFZrMEpRaHdQN2Jwc0lXVXRLT2xmSFNLOEd3dVY1SUcx?= =?utf-8?B?UlRrQmtYNlc3OS90SlNBZThkbmx2OFN2WGRiZmRJQUhyMy9pUERFMGFLQzFL?= =?utf-8?B?am9VckpSY1hWd0xEemhVVEl1ZUlPWm1nMjdkWDFhcWIyZkoyQm5pdGI0RXpJ?= =?utf-8?B?MW9VcVdNY20wOUdlZE1qZ3B4bTBiVTRORENHTnE5S2RhcFRxWGZuSCtta1p4?= =?utf-8?B?YWptSUppNS9ibXU5b1NHeEV6bDR4UkdVTWJPWkZSWkJMSi9GTm1zQVo4OXFv?= =?utf-8?B?eDVySHhBYm9oVnZKRDRBSHUyNGZBOFVZeDg3V0plR2RKV2FVVEZwNFNSME8x?= =?utf-8?B?N1doVUplYmJVaGZ0cGNXdEkvaUdRL2FqUnZ0UGZiY2VWdkIwcVlhaTlmZTU3?= =?utf-8?B?YXZQUnlFUkFwaERWTVVGc3JNRGQ2MEJ3U21xeVRKN1NEVDhKU3dnOVAwU1FU?= =?utf-8?B?UFlxRExtUGE0QlEwTXlwV1BiZGxjTEFOWGV4YlgzVTNSTjZzS1VsOVY2Z3d3?= =?utf-8?B?cXdxc1o1SnI2ZDhReDFyMmVFeGk4SXgyZGFCaWE5alYySUgrZ0JjRlpsZkRo?= =?utf-8?B?ZzRTd3NuWWRQc25JMVh3VDZYdE82VnVxbXJ0Tk85WVhzc0ozR2owQW8vTE1B?= =?utf-8?B?TXdyc3lCWWU4T3B1SlU5YTE1WGk3dzlvd21LRGhjZnVZeDZabVM1TndDeVBT?= =?utf-8?B?QVdwcmlLSjN0U2FaVFgvWVJyUWtmcDhGM3BrdVpabGxWbFVJemE2YXJrTnBl?= =?utf-8?B?clhjaHlaL1ptNFIwa2JSZ0xDN0R0Ui9qY1Z4MFBLOHA2YUNoVWgyc0tXR0hM?= =?utf-8?B?ZTUwd1hBQkgzLzF3ZkJ0RllPQmxNbXhTdVp3L0RUU2d2UXJhNGhSTXR4V0NT?= =?utf-8?B?WEhRR1RHdWYyckJFcytkaDhCRXFxWmt2dEVjaFkxaWs3UWFtTnV6bWprNW5r?= =?utf-8?B?clZPS1hqUnNzNjMvN2VtbkhGNkZSVFhBbEQ3eWF3bUc3TEZycHUyaW81T0ZC?= =?utf-8?B?cHVDanFGb015UThwZnphbjRsQmNCQVNKaWR4RTFZVXFJOTRMcGZ0cFdkbldu?= =?utf-8?B?UWdyVWFycGxmTW9XNWFzOHpzclN6VEdLMk5EM2w3T3dPc3NNL1hzUXY4eHhD?= =?utf-8?B?R0ZCSXBhUFhKOE9hc1pqTEE2S2YvT01WTjhiR3BSWThnbUwvUThnaWxaRmVp?= =?utf-8?B?WHVxaVpyaFlZaW1MYVBwMU1sRTVIdlZoYUFHSndDMzJOWmxUVHVuczhiV0Nm?= =?utf-8?B?RHZpMEhoVTh5dkYrYXBJSW9pZjB3MlRaRnBZNjQxaXVrZ21CcUpxSVNVUlZV?= =?utf-8?B?OWdOK3VhWm9EdHlpRTYvWmtPOHVHNGdwZnJqaTFpa1Y0OXpUTFBHUE9PblUw?= =?utf-8?B?OFROUGQwdTJLaDFtWlJiMkF2K28xbjJ5R3lEY3FkamFMd2tHb1ZaRVBXL0RR?= =?utf-8?B?M0ZHUTIzUS9aVE9tM0JzZVR6dkRmQnFyOXdhK213UEI3WHQyR0dnb2FHdjR4?= =?utf-8?B?aXUvQnMrcEUybE0xQUVYUzJneFNHV3VsODFrVGhzOTJwaVFTZ1VRVzc4UHFD?= =?utf-8?B?RlhjNjcrZFNOQ1k0OVR3K0RVQU8rNTZZY1RYK2xZRmg4d01UNlVFdGdSRUFL?= =?utf-8?B?Ujl2T0lmYy9wMUJJbEdmUUlJQ29lbWl3R2VJaE9DdEx0QWQwMDlHYmk1Y1pF?= =?utf-8?B?T0lDeE5xWjdJYnh6RUNHTzM2ZEFHRnBSY1FTMXRpVU8wMVgxQXA5aTNWQkx5?= =?utf-8?Q?H81Ms29J6W+zMF6HU5?= X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: efee3851-b35c-4e33-83d6-08db687c2f65 X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 08 Jun 2023 23:57:58.7005 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: q6cijT48448siu7RBl4wHpEnyWYKilV2aKk4pSUdJVyPMihzLQdu1rf4+HdFDafGMkWJMkeIpnSFgvWFANo6JDNH32GkRjqC9tCO0fvAK4M= X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR03MB5480 On 09/06/2023 12:34 am, Yunhong Jiang wrote: > On Tue, May 30, 2023 at 12:46:22PM +0200, Thomas Gleixner wrote: >> The stack locking and stack assignment macro LOAD_REALMODE_ESP fails to >> work when invoked from the 64bit trampoline entry point: >> >> trampoline_start64 >> trampoline_compat >> LOAD_REALMODE_ESP <- lock > One possibly dumb question and hope get some hints. There's a phrase.  "The only dumb question is the one not asked". If you have this question, there's an excellent chance that someone else reading this thread has the same question. > The LOAD_REALMODE_ESP is > defined under .code16 directive and will be used by 32-bit mode caller also. Is > it ok because the instructions there will be same for both 16-bit and 32-bit? I > checked > https://ftp.gnu.org/old-gnu/Manuals/gas-2.9.1/html_chapter/as_16.html#SEC205 and > don't find much information there. The position of the LOAD_REALMODE_ESP .macro itself doesn't matter.  It's just some text which gets pasted elsewhere.  Imagine it just the same as running the C preprocessor on a file before compiling it. As you note, some expansions of the macro are in .code16, and some are not.  This does result in different bytes being emitted.  The default operands size flips between .code16 and .code32, so there will be some 0x66 prefixes in one mode, and not in others. The important point is the l suffix on btsl, which forces it to be long (32bit) irrespective of the default operand size. So yes, it will work, but that's because gas is handling the differing encodings automatically based on the default operand size where the LOAD_REALMODE_ESP gets expanded. Hope this helps, ~Andrew From xen-devel-bounces@lists.xenproject.org Fri Jun 09 00:23:50 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 09 Jun 2023 00:23:50 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545527.851977 (Exim 4.92) (envelope-from ) id 1q7Pug-0003pw-Mh; Fri, 09 Jun 2023 00:23:34 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545527.851977; Fri, 09 Jun 2023 00:23:34 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7Pug-0003pp-Jq; Fri, 09 Jun 2023 00:23:34 +0000 Received: by outflank-mailman (input) for mailman id 545527; Fri, 09 Jun 2023 00:23:33 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7Puf-0003ox-SO for xen-devel@lists.xenproject.org; Fri, 09 Jun 2023 00:23:33 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id dd4ce4d6-065b-11ee-b232-6b7b168915f2; Fri, 09 Jun 2023 02:23:32 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 885BC6518B; Fri, 9 Jun 2023 00:23:31 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 0DE13C433EF; Fri, 9 Jun 2023 00:23:28 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: dd4ce4d6-065b-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1686270211; bh=OpDb7/RjL4XjYjMeFWJxEnsOXV1XjZsBrKHObfFQFHQ=; h=Date:From:To:cc:Subject:In-Reply-To:References:From; b=GAksM/2LKgQhmQ5t7bcwMGoXUW1k6MVBTMBTbGIDCeezK/OFO3GwRa9+AdRzo98RL vn6dwF1UEGwZKihgMa7nrKTN0vxkV8Och6SWdUPATQ5vyh6V5zfrQ8Zd4cpS8D4WDr 4OKarCpBJ98D9nuIBKtdOqy8n8rHInt3JKl9jOG8WVOyQbdDR0HOXu+iuqFmhsSnM6 AQxrF2vDExEatQFht6UQhexEJWZD+1lVvcO/seAeY/z2z9WMGEzNj2hKR8BAXY29qZ zjtwOeR1SjHFuWvb6v8lBT+AX7hXjrPnXbkKdmB45WemON5wpd68fHCtgcyxNxTkNk Y6WEvrDc2vF7g== Date: Thu, 8 Jun 2023 17:23:27 -0700 (PDT) From: Stefano Stabellini X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop To: Stefano Stabellini cc: Bernhard Beschow , mst@redhat.com, qemu-devel@nongnu.org, Richard Henderson , Marcel Apfelbaum , David Woodhouse , Eduardo Habkost , Chuck Zmudzinski , Aurelien Jarno , =?UTF-8?Q?Herv=C3=A9_Poussineau?= , Paul Durrant , Paolo Bonzini , =?UTF-8?Q?Philippe_Mathieu-Daud=C3=A9?= , Anthony Perard , xen-devel@lists.xenproject.org Subject: Re: [PATCH v4 0/7] Resolve TYPE_PIIX3_XEN_DEVICE In-Reply-To: Message-ID: References: <20230403074124.3925-1-shentey@gmail.com> <20230421033757-mutt-send-email-mst@kernel.org> <9EB9A984-61E5-4226-8352-B5DDC6E2C62E@gmail.com> User-Agent: Alpine 2.22 (DEB 394 2020-01-19) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII On Thu, 8 Jun 2023, Stefano Stabellini wrote: > On Mon, 5 Jun 2023, Bernhard Beschow wrote: > > Am 22. Mai 2023 15:42:03 UTC schrieb Bernhard Beschow : > > > > > > > > >Am 15. Mai 2023 20:52:40 UTC schrieb Stefano Stabellini : > > >>On Sat, 13 May 2023, Bernhard Beschow wrote: > > >>> Am 21. April 2023 07:38:10 UTC schrieb "Michael S. Tsirkin" : > > >>> >On Mon, Apr 03, 2023 at 09:41:17AM +0200, Bernhard Beschow wrote: > > >>> >> There is currently a dedicated PIIX3 device model for use under Xen. By reusing > > >>> >> existing PCI API during initialization this device model can be eliminated and > > >>> >> the plain PIIX3 device model can be used instead. > > >>> >> > > >>> >> Resolving TYPE_PIIX3_XEN_DEVICE results in less code while also making Xen > > >>> >> agnostic towards the precise south bridge being used in the PC machine. The > > >>> >> latter might become particularily interesting once PIIX4 becomes usable in the > > >>> >> PC machine, avoiding the "Frankenstein" use of PIIX4_ACPI in PIIX3. > > >>> > > > >>> >xen stuff so I assume that tree? > > >>> > > >>> Ping > > >> > > >>I am OK either way. Michael, what do you prefer? > > >> > > >>Normally I would suggest for you to pick up the patches. But as it > > >>happens I'll have to likely send another pull request in a week or two > > >>and I can add these patches to it. > > >> > > >>Let me know your preference and I am happy to follow it. > > > > > >Hi Stefano, > > > > > >Michael's PR was merged last week. How about including this series into your PR then? > > > > Ping > > Sorry for the late reply, it looks like patch #3 breaks the build: I noticed now that this patch series got committed (the right version without the build failure), thanks Anthony for sending the pull request! From xen-devel-bounces@lists.xenproject.org Fri Jun 09 00:25:28 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 09 Jun 2023 00:25:28 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545508.851988 (Exim 4.92) (envelope-from ) id 1q7PwM-0004PW-3V; Fri, 09 Jun 2023 00:25:18 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545508.851988; Fri, 09 Jun 2023 00:25:18 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7PwL-0004PP-Ux; Fri, 09 Jun 2023 00:25:17 +0000 Received: by outflank-mailman (input) for mailman id 545508; Thu, 08 Jun 2023 23:34:12 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7P8t-0005aS-KW for xen-devel@lists.xenproject.org; Thu, 08 Jun 2023 23:34:12 +0000 Received: from mga12.intel.com (mga12.intel.com [192.55.52.136]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id f4c77fff-0654-11ee-b232-6b7b168915f2; Fri, 09 Jun 2023 01:34:06 +0200 (CEST) Received: from fmsmga002.fm.intel.com ([10.253.24.26]) by fmsmga106.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 08 Jun 2023 16:34:03 -0700 Received: from yjiang5-mobl.amr.corp.intel.com (HELO localhost) ([10.144.161.97]) by fmsmga002-auth.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 08 Jun 2023 16:34:03 -0700 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: f4c77fff-0654-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1686267246; x=1717803246; h=date:from:to:cc:subject:message-id:references: mime-version:in-reply-to; bh=sN7dvQMQ+/TpXG6CIcwf0XKyIcjODwPRfKZrLnuiPSY=; b=W6Eb4O2hS3W67gc5Deu1Phca8nByLkStwMEpSAfK10zpuoqhYmxnWQLq o79Dj6Fa+/GiIIb7e7mIVoKDaN5fKsvNfhnWfMBvOpuA1aXPMJJtT7z3t 3q5PsEHkiySrRqb28J//oJ3o85hrr2u/EIXJMP1fQWzEdzDbMEFzvP6Z9 AMaSGmJvWASebkjo/2xrkHVTlGE/fv1byoHx9jNS4EBQaIEy5ddH2V2cr NgAhDouXQqx776x04+lBmJ5x7ywxA4VPTBcrnA9CQFeB7S3bCsOIjalem cdWL4vXCyndyxw/47bGVGFkh4agjSDO5Rg18txKEMApc0GP6hKge31YeN Q==; X-IronPort-AV: E=McAfee;i="6600,9927,10735"; a="337097732" X-IronPort-AV: E=Sophos;i="6.00,227,1681196400"; d="scan'208";a="337097732" X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10735"; a="822822455" X-IronPort-AV: E=Sophos;i="6.00,227,1681196400"; d="scan'208";a="822822455" Date: Thu, 8 Jun 2023 16:34:02 -0700 From: Yunhong Jiang To: Thomas Gleixner Cc: "Kirill A. Shutemov" , LKML , x86@kernel.org, David Woodhouse , Andrew Cooper , Brian Gerst , Arjan van de Veen , Paolo Bonzini , Paul McKenney , Tom Lendacky , Sean Christopherson , Oleksandr Natalenko , Paul Menzel , "Guilherme G. Piccoli" , Piotr Gorski , Usama Arif , Juergen Gross , Boris Ostrovsky , xen-devel@lists.xenproject.org, Russell King , Arnd Bergmann , linux-arm-kernel@lists.infradead.org, Catalin Marinas , Will Deacon , Guo Ren , linux-csky@vger.kernel.org, Thomas Bogendoerfer , linux-mips@vger.kernel.org, "James E.J. Bottomley" , Helge Deller , linux-parisc@vger.kernel.org, Paul Walmsley , Palmer Dabbelt , linux-riscv@lists.infradead.org, Mark Rutland , Sabin Rapan , "Michael Kelley (LINUX)" , Dave Hansen Subject: Re: [patch] x86/realmode: Make stack lock work in trampoline_compat() Message-ID: <20230608233402.GA3430@yjiang5-mobl.amr.corp.intel.com> References: <20230508181633.089804905@linutronix.de> <20230508185218.962208640@linutronix.de> <20230524204818.3tjlwah2euncxzmh@box.shutemov.name> <87y1lbl7r6.ffs@tglx> <87sfbhlwp9.ffs@tglx> <20230529023939.mc2akptpxcg3eh2f@box.shutemov.name> <87bki3kkfi.ffs@tglx> <20230529203129.sthnhzgds7ynddxd@box.shutemov.name> <87h6rujdvl.ffs@tglx> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <87h6rujdvl.ffs@tglx> On Tue, May 30, 2023 at 12:46:22PM +0200, Thomas Gleixner wrote: > The stack locking and stack assignment macro LOAD_REALMODE_ESP fails to > work when invoked from the 64bit trampoline entry point: > > trampoline_start64 > trampoline_compat > LOAD_REALMODE_ESP <- lock One possibly dumb question and hope get some hints. The LOAD_REALMODE_ESP is defined under .code16 directive and will be used by 32-bit mode caller also. Is it ok because the instructions there will be same for both 16-bit and 32-bit? I checked https://ftp.gnu.org/old-gnu/Manuals/gas-2.9.1/html_chapter/as_16.html#SEC205 and don't find much information there. From xen-devel-bounces@lists.xenproject.org Fri Jun 09 00:25:28 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 09 Jun 2023 00:25:28 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545525.851992 (Exim 4.92) (envelope-from ) id 1q7PwM-0004St-Ab; Fri, 09 Jun 2023 00:25:18 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545525.851992; Fri, 09 Jun 2023 00:25:18 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7PwM-0004S3-6E; Fri, 09 Jun 2023 00:25:18 +0000 Received: by outflank-mailman (input) for mailman id 545525; Fri, 09 Jun 2023 00:23:06 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7PuD-0003ox-Px for xen-devel@lists.xenproject.org; Fri, 09 Jun 2023 00:23:06 +0000 Received: from mga06.intel.com (mga06b.intel.com [134.134.136.31]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id ca83634d-065b-11ee-b232-6b7b168915f2; Fri, 09 Jun 2023 02:23:02 +0200 (CEST) Received: from orsmga005.jf.intel.com ([10.7.209.41]) by orsmga104.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 08 Jun 2023 17:22:59 -0700 Received: from yjiang5-mobl.amr.corp.intel.com (HELO localhost) ([10.144.161.97]) by orsmga005-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 08 Jun 2023 17:22:57 -0700 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: ca83634d-065b-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1686270182; x=1717806182; h=date:from:to:cc:subject:message-id:references: mime-version:content-transfer-encoding:in-reply-to; bh=hfORcgQzuOPbSklLPJdOW8LVCo5d5Go2LF+sADUuhiU=; b=jMUdpbiwVMO+e60NkyZAr1CNJI9PrbStuflucU5ezMfmnjJ2HGSbMvTm PxYOgeICo1Tasf9osuP3KBxTp610pNOlGeTp6/mQ7PNp4rcONhtu9fQBH niVrIhJ1duaWarqTz+yYrrp8mJjD9wZy6B9VUpoGNo0Xb9Fo2qlMV+J3S gUxS1un9zo9RDZHB33tkoxmjPFzxbn0D38E/57N03ovEYr/gNbtrk/KiX 8JHL2rpgLoCbq2lnk1xbY8fiLBNnLxCt3RchTT68CdGpQzdOSlaztZoQF DsNWF5WT3W/IO/upreRrWiO/Ac3z61mnsVUWchlyOB92WPqSeS0GPX1ja w==; X-IronPort-AV: E=McAfee;i="6600,9927,10735"; a="421061870" X-IronPort-AV: E=Sophos;i="6.00,228,1681196400"; d="scan'208";a="421061870" X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10735"; a="884393196" X-IronPort-AV: E=Sophos;i="6.00,228,1681196400"; d="scan'208";a="884393196" Date: Thu, 8 Jun 2023 17:22:57 -0700 From: Yunhong Jiang To: Andrew Cooper Cc: Thomas Gleixner , "Kirill A. Shutemov" , LKML , x86@kernel.org, David Woodhouse , Brian Gerst , Arjan van de Veen , Paolo Bonzini , Paul McKenney , Tom Lendacky , Sean Christopherson , Oleksandr Natalenko , Paul Menzel , "Guilherme G. Piccoli" , Piotr Gorski , Usama Arif , Juergen Gross , Boris Ostrovsky , xen-devel@lists.xenproject.org, Russell King , Arnd Bergmann , linux-arm-kernel@lists.infradead.org, Catalin Marinas , Will Deacon , Guo Ren , linux-csky@vger.kernel.org, Thomas Bogendoerfer , linux-mips@vger.kernel.org, "James E.J. Bottomley" , Helge Deller , linux-parisc@vger.kernel.org, Paul Walmsley , Palmer Dabbelt , linux-riscv@lists.infradead.org, Mark Rutland , Sabin Rapan , "Michael Kelley (LINUX)" , Dave Hansen Subject: Re: [patch] x86/realmode: Make stack lock work in trampoline_compat() Message-ID: <20230609002257.GA3661@yjiang5-mobl.amr.corp.intel.com> References: <20230508185218.962208640@linutronix.de> <20230524204818.3tjlwah2euncxzmh@box.shutemov.name> <87y1lbl7r6.ffs@tglx> <87sfbhlwp9.ffs@tglx> <20230529023939.mc2akptpxcg3eh2f@box.shutemov.name> <87bki3kkfi.ffs@tglx> <20230529203129.sthnhzgds7ynddxd@box.shutemov.name> <87h6rujdvl.ffs@tglx> <20230608233402.GA3430@yjiang5-mobl.amr.corp.intel.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: On Fri, Jun 09, 2023 at 12:57:46AM +0100, Andrew Cooper wrote: > On 09/06/2023 12:34 am, Yunhong Jiang wrote: > > On Tue, May 30, 2023 at 12:46:22PM +0200, Thomas Gleixner wrote: > >> The stack locking and stack assignment macro LOAD_REALMODE_ESP fails to > >> work when invoked from the 64bit trampoline entry point: > >> > >> trampoline_start64 > >> trampoline_compat > >> LOAD_REALMODE_ESP <- lock > > One possibly dumb question and hope get some hints. > > There's a phrase.  "The only dumb question is the one not asked". > > If you have this question, there's an excellent chance that someone else > reading this thread has the same question. > > > The LOAD_REALMODE_ESP is > > defined under .code16 directive and will be used by 32-bit mode caller also. Is > > it ok because the instructions there will be same for both 16-bit and 32-bit? I > > checked > > https://ftp.gnu.org/old-gnu/Manuals/gas-2.9.1/html_chapter/as_16.html#SEC205 and > > don't find much information there. > > The position of the LOAD_REALMODE_ESP .macro itself doesn't matter.  > It's just some text which gets pasted elsewhere.  Imagine it just the > same as running the C preprocessor on a file before compiling it. > > As you note, some expansions of the macro are in .code16, and some are > not.  This does result in different bytes being emitted.  The default > operands size flips between .code16 and .code32, so there will be some > 0x66 prefixes in one mode, and not in others. > > The important point is the l suffix on btsl, which forces it to be long > (32bit) irrespective of the default operand size. > > So yes, it will work, but that's because gas is handling the differing > encodings automatically based on the default operand size where the > LOAD_REALMODE_ESP gets expanded. > > Hope this helps, Thank you for the explaination, it's quite clear now. > > ~Andrew From xen-devel-bounces@lists.xenproject.org Fri Jun 09 00:48:04 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 09 Jun 2023 00:48:04 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545540.852006 (Exim 4.92) (envelope-from ) id 1q7QIC-0007WE-4Z; Fri, 09 Jun 2023 00:47:52 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545540.852006; Fri, 09 Jun 2023 00:47:52 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7QIC-0007W7-1f; Fri, 09 Jun 2023 00:47:52 +0000 Received: by outflank-mailman (input) for mailman id 545540; Fri, 09 Jun 2023 00:47:50 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7QIA-0007Vv-SO; Fri, 09 Jun 2023 00:47:50 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7QIA-00042R-ML; Fri, 09 Jun 2023 00:47:50 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7QIA-0003lT-48; Fri, 09 Jun 2023 00:47:50 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q7QIA-0007Bg-3f; Fri, 09 Jun 2023 00:47:50 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=utqyJV5RhtbbHvvMRy5KXarm/ABFzk4JS07hbXQYE0Q=; b=lQ8+VIPishEY1CoJZSnSX3lPl+ euQG6LUbqjG9n2uCWJrN124RVL6hsHJxGoVLCd294oGK3DsmHam+zlllbttpV/hLrBkfqykrAvctK 8rB0rOQrxCatZaJE5zldYJCgyuiaaKcXDn5A/phcWXgMpxxlOZrwQy2iYvccH7faB9nU=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable-smoke test] 181319: regressions - FAIL X-Osstest-Failures: xen-unstable-smoke:build-arm64-xsm:xen-build:fail:regression xen-unstable-smoke:build-armhf:xen-build:fail:regression xen-unstable-smoke:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking xen-unstable-smoke:test-armhf-armhf-xl:build-check(1):blocked:nonblocking xen-unstable-smoke:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking X-Osstest-Versions-This: xen=6915a120641b5d232762af7882266048cf039ca0 X-Osstest-Versions-That: xen=64a647f8d817c6989edc000613b5afae19f03f99 From: osstest service owner Date: Fri, 09 Jun 2023 00:47:50 +0000 flight 181319 xen-unstable-smoke real [real] http://logs.test-lab.xenproject.org/osstest/logs/181319/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-arm64-xsm 6 xen-build fail REGR. vs. 181233 build-armhf 6 xen-build fail REGR. vs. 181233 Tests which did not succeed, but are not blocking: test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 15 migrate-support-check fail never pass version targeted for testing: xen 6915a120641b5d232762af7882266048cf039ca0 baseline version: xen 64a647f8d817c6989edc000613b5afae19f03f99 Last test of basis 181233 2023-06-07 02:04:37 Z 1 days Failing since 181246 2023-06-07 11:02:03 Z 1 days 18 attempts Testing same since 181303 2023-06-08 11:00:25 Z 0 days 7 attempts ------------------------------------------------------------ People who touched revisions under test: Andrew Cooper Christian Lindig George Dunlap Henry Wang # CHANGELOG Juergen Gross Julien Grall Luca Fancellu Michal Orzel Roger Pau Monne Roger Pau Monné Stefano Stabellini jobs: build-arm64-xsm fail build-amd64 pass build-armhf fail build-amd64-libvirt pass test-armhf-armhf-xl blocked test-arm64-arm64-xl-xsm blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-libvirt pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 504 lines long.) From xen-devel-bounces@lists.xenproject.org Fri Jun 09 01:34:46 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 09 Jun 2023 01:34:46 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545554.852027 (Exim 4.92) (envelope-from ) id 1q7R1N-0002mn-0w; Fri, 09 Jun 2023 01:34:33 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545554.852027; Fri, 09 Jun 2023 01:34:32 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7R1M-0002m1-Po; Fri, 09 Jun 2023 01:34:32 +0000 Received: by outflank-mailman (input) for mailman id 545554; Fri, 09 Jun 2023 01:34:31 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7R1L-0002jw-AQ; Fri, 09 Jun 2023 01:34:31 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7R1K-0003KN-E4; Fri, 09 Jun 2023 01:34:30 +0000 Received: from 54-240-197-232.amazon.com ([54.240.197.232] helo=[10.95.166.95]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1q7R1K-0005Cv-6o; Fri, 09 Jun 2023 01:34:30 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=B3h+18k1zK1HHzSTWiiO1IwIppFZgRkziWTk8ZGxEo0=; b=vVddEZF1fy8iX8TBHC6k2Vh4pX r6NUD+qoU+vexzF/fX3E2cZMrjsQNfvbuU0pW/tVjaBKdVYpjszr92Esh0RDDE4sGtdohOmd2OvDP 6PqOaWhOFpWhjU6n/HQG6Fs9bKTjftk+R2c3iwOMOWtkBL9OF+rWWNPiU1TZ06LJMKA4=; Message-ID: Date: Fri, 9 Jun 2023 02:34:28 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: Asking for help to debug xen efi on Kunpeng machine Content-Language: en-US To: Stefano Stabellini , Jiatong Shen Cc: xen-users@lists.xenproject.org, xen-devel@lists.xenproject.org, bertrand.marquis@arm.com References: From: Julien Grall In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit On 08/06/2023 23:39, Stefano Stabellini wrote: > Hi Jiatong, > > Do you have access to the serial? If so, it is possible that the boot > is actually successful and it is only the screen initialization the > problem. > > If kunpeng 920 is a UEFI/ACPI machine, we know that there are issues > with screen initialization. More importantly, you may want to check that if Xen was compiled with ACPI enabled (unlikely if this is the package from Debian). If not, you will need to build your own Xen. Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Fri Jun 09 02:45:45 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 09 Jun 2023 02:45:45 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545589.852050 (Exim 4.92) (envelope-from ) id 1q7S81-0002v2-5o; Fri, 09 Jun 2023 02:45:29 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545589.852050; Fri, 09 Jun 2023 02:45:29 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7S80-0002uu-W5; Fri, 09 Jun 2023 02:45:28 +0000 Received: by outflank-mailman (input) for mailman id 545589; Fri, 09 Jun 2023 02:45:28 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7S80-0002uk-61; Fri, 09 Jun 2023 02:45:28 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7S7z-0005Nc-92; Fri, 09 Jun 2023 02:45:27 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7S7y-0000Hj-OX; Fri, 09 Jun 2023 02:45:26 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q7S7y-000303-Ny; Fri, 09 Jun 2023 02:45:26 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=tHRm+2bo5V8fUrzeS27rZj0kkYQ5J4s81PHgOEmsGig=; b=6RuLW3EH33Txxes/zJ2d+lf22G M1BxGsa2G2zy6GR++EqbB2NNUtBXZTPcutnTMfabJAJjrlHtVqJwNxiTqbVUkM8EfUBrjS6h2HoA8 WXlEE3B8sRSTJAZa3K5gczJeiREVknw8mvUFIoXbV8Dof+xCrTY5ntFYcjjpKRxofQ64=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable-smoke test] 181323: regressions - FAIL X-Osstest-Failures: xen-unstable-smoke:build-arm64-xsm:xen-build:fail:regression xen-unstable-smoke:build-armhf:xen-build:fail:regression xen-unstable-smoke:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking xen-unstable-smoke:test-armhf-armhf-xl:build-check(1):blocked:nonblocking xen-unstable-smoke:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking X-Osstest-Versions-This: xen=6915a120641b5d232762af7882266048cf039ca0 X-Osstest-Versions-That: xen=64a647f8d817c6989edc000613b5afae19f03f99 From: osstest service owner Date: Fri, 09 Jun 2023 02:45:26 +0000 flight 181323 xen-unstable-smoke real [real] http://logs.test-lab.xenproject.org/osstest/logs/181323/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-arm64-xsm 6 xen-build fail REGR. vs. 181233 build-armhf 6 xen-build fail REGR. vs. 181233 Tests which did not succeed, but are not blocking: test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 15 migrate-support-check fail never pass version targeted for testing: xen 6915a120641b5d232762af7882266048cf039ca0 baseline version: xen 64a647f8d817c6989edc000613b5afae19f03f99 Last test of basis 181233 2023-06-07 02:04:37 Z 2 days Failing since 181246 2023-06-07 11:02:03 Z 1 days 19 attempts Testing same since 181303 2023-06-08 11:00:25 Z 0 days 8 attempts ------------------------------------------------------------ People who touched revisions under test: Andrew Cooper Christian Lindig George Dunlap Henry Wang # CHANGELOG Juergen Gross Julien Grall Luca Fancellu Michal Orzel Roger Pau Monne Roger Pau Monné Stefano Stabellini jobs: build-arm64-xsm fail build-amd64 pass build-armhf fail build-amd64-libvirt pass test-armhf-armhf-xl blocked test-arm64-arm64-xl-xsm blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-libvirt pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 504 lines long.) From xen-devel-bounces@lists.xenproject.org Fri Jun 09 03:17:35 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 09 Jun 2023 03:17:35 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545597.852060 (Exim 4.92) (envelope-from ) id 1q7Scz-0006R7-MM; Fri, 09 Jun 2023 03:17:29 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545597.852060; Fri, 09 Jun 2023 03:17:29 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7Scz-0006R0-IN; Fri, 09 Jun 2023 03:17:29 +0000 Received: by outflank-mailman (input) for mailman id 545597; Fri, 09 Jun 2023 03:17:28 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7Scy-0006Qq-23; Fri, 09 Jun 2023 03:17:28 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7Scx-00064t-OW; Fri, 09 Jun 2023 03:17:27 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7Scx-0001eZ-5U; Fri, 09 Jun 2023 03:17:27 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q7Scx-0004en-50; Fri, 09 Jun 2023 03:17:27 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=S1qLoBHRMMc7Ka6YwYYrbK6ZHrh/ZXLZ9DoLqox3KlQ=; b=FA7q6kGLjL73iFWKpIE+NihgbT SPLFpo7l+FO8WC/hCFGN8ei9DdZJ0FMKfuLa+yUWkVqLH/lpCo4RoT67McysCLXgCt4sgoQjdAGC2 8ZrbncFTlG3l1SoYhz0237CZAz9nGGZOMRjl9nsHvFDMP34ZRAbleVM1pT5FF7s0vJjA=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [qemu-mainline test] 181322: regressions - FAIL X-Osstest-Failures: qemu-mainline:build-arm64-xsm:xen-build:fail:regression qemu-mainline:build-arm64:xen-build:fail:regression qemu-mainline:build-amd64:xen-build:fail:regression qemu-mainline:build-i386:xen-build:fail:regression qemu-mainline:build-amd64-xsm:xen-build:fail:regression qemu-mainline:build-i386-xsm:xen-build:fail:regression qemu-mainline:build-armhf:xen-build:fail:regression qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-i386:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:build-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:build-arm64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:build-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:build-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pygrub:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking X-Osstest-Versions-This: qemuu=5f9dd6a8ce3961db4ce47411ed2097ad88bdf5fc X-Osstest-Versions-That: qemuu=6972ef1440a9d685482d78672620a7482f2bd09a From: osstest service owner Date: Fri, 09 Jun 2023 03:17:27 +0000 flight 181322 qemu-mainline real [real] http://logs.test-lab.xenproject.org/osstest/logs/181322/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-arm64-xsm 6 xen-build fail REGR. vs. 180691 build-arm64 6 xen-build fail REGR. vs. 180691 build-amd64 6 xen-build fail REGR. vs. 180691 build-i386 6 xen-build fail REGR. vs. 180691 build-amd64-xsm 6 xen-build fail REGR. vs. 180691 build-i386-xsm 6 xen-build fail REGR. vs. 180691 build-armhf 6 xen-build fail REGR. vs. 180691 Tests which did not succeed, but are not blocking: test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-xl-xsm 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-raw 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-xsm 1 build-check(1) blocked n/a test-arm64-arm64-xl 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit1 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit2 1 build-check(1) blocked n/a test-arm64-arm64-xl-thunderx 1 build-check(1) blocked n/a test-arm64-arm64-xl-vhd 1 build-check(1) blocked n/a test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a test-armhf-armhf-libvirt 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-qcow2 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-raw 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a test-armhf-armhf-xl-arndale 1 build-check(1) blocked n/a test-armhf-armhf-xl-multivcpu 1 build-check(1) blocked n/a test-armhf-armhf-xl-rtds 1 build-check(1) blocked n/a test-armhf-armhf-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-amd 1 build-check(1) blocked n/a test-amd64-i386-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-raw 1 build-check(1) blocked n/a test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-i386 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-amd64 1 build-check(1) blocked n/a test-amd64-coresched-i386-xl 1 build-check(1) blocked n/a test-amd64-coresched-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-xsm 1 build-check(1) blocked n/a build-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-shadow 1 build-check(1) blocked n/a test-amd64-amd64-xl-rtds 1 build-check(1) blocked n/a build-arm64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a build-armhf-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a build-i386-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-amd 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-pair 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-qcow2 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-vhd 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvshim 1 build-check(1) blocked n/a test-amd64-amd64-pair 1 build-check(1) blocked n/a test-amd64-amd64-pygrub 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-intel 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd11-amd64 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd12-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-multivcpu 1 build-check(1) blocked n/a test-amd64-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit1 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit1 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-intel 1 build-check(1) blocked n/a test-amd64-i386-xl 1 build-check(1) blocked n/a test-amd64-i386-xl-pvshim 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a version targeted for testing: qemuu 5f9dd6a8ce3961db4ce47411ed2097ad88bdf5fc baseline version: qemuu 6972ef1440a9d685482d78672620a7482f2bd09a Last test of basis 180691 2023-05-17 10:45:22 Z 22 days Failing since 180699 2023-05-18 07:21:24 Z 21 days 74 attempts Testing same since 181322 2023-06-09 00:07:15 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Afonso Bordado Akihiko Odaki Akihiro Suda Alex Bennée Alex Williamson Alexander Bulekov Alexander Graf Alexander Ivanov Alistair Francis Ani Sinha Ani Sinha Anthony PERARD Anton Johansson BALATON Zoltan Bastian Koppelmann Bernhard Beschow Bin Meng Brian Cain Brice Goglin Camilla Conte Christian Schoenebeck Chuck Zmudzinski Cindy Lu Clément Chigot Cornelia Huck Cédric Le Goater Cédric Le Goater Daniel Henrique Barboza Daniel P. Berrangé Daniil Kovalev David Hildenbrand David Woodhouse Emanuele Giuseppe Esposito Enze Li Eric Auger Eric Blake Eric DeVolder Erico Nunes Eugenio Pérez Fabiano Rosas Fan Ni Fiona Ebner Francesco Cagnin Francisco Iglesias Gavin Shan Gregory Price Gregory Price Hanna Czenczek Hao Zeng Hawkins Jiawei Igor Mammedov Ilya Leoshkevich Ira Weiny Jagannathan Raman Jason Wang Jean-Louis Dupond Jean-Philippe Brucker Jiaxun Yang John Snow Jonathan Cameron Juan Quintela Kevin Wolf Laurent Vivier Lei Yang Leonardo Bras Maksim Davydov Marc-André Lureau Marcin Juszkiewicz Marco Liebel Mark Cave-Ayland Markus Armbruster Matheus Tavares Bernardino Mauro Matteo Cascella Max Fritz Michael S. Tsirkin Michael Tokarev Michal Privoznik Mostafa Saleh Nicholas Piggin Nicolas Saenz Julienne Niek Linnenbank Palmer Dabbelt Paolo Bonzini Peter Maydell Peter Xu Philippe Mathieu-Daudé qianfan Zhao Raghu H Rene Engel Richard Henderson Richard Purdie Ricky Zhou Ryan Wendland Sebastian Ott Sergio Lopez Sid Manning Song Gao Stefan Hajnoczi Stefano Garzarella Steve Sistare Taylor Simpson Thomas Huth Thomas Weißschuh timothee.cocault@gmail.com Timothée Cocault Tommy Wu Vikram Garhwal Viktor Prutyanov Vitaly Cheptsov Vivek Kasireddy Vladimir Sementsov-Ogievskiy Volker Rümelin Xinyu Li Zeng Hao Zhenyu Zhang Zhenzhong Duan Zhuojia Shen jobs: build-amd64-xsm fail build-arm64-xsm fail build-i386-xsm fail build-amd64 fail build-arm64 fail build-armhf fail build-i386 fail build-amd64-libvirt blocked build-arm64-libvirt blocked build-armhf-libvirt blocked build-i386-libvirt blocked build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl blocked test-amd64-coresched-amd64-xl blocked test-arm64-arm64-xl blocked test-armhf-armhf-xl blocked test-amd64-i386-xl blocked test-amd64-coresched-i386-xl blocked test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-i386-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-amd64-libvirt-xsm blocked test-arm64-arm64-libvirt-xsm blocked test-amd64-i386-libvirt-xsm blocked test-amd64-amd64-xl-xsm blocked test-arm64-arm64-xl-xsm blocked test-amd64-i386-xl-xsm blocked test-amd64-amd64-qemuu-nested-amd blocked test-amd64-amd64-xl-pvhv2-amd blocked test-amd64-i386-qemuu-rhel6hvm-amd blocked test-amd64-amd64-dom0pvh-xl-amd blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-freebsd10-amd64 blocked test-amd64-amd64-qemuu-freebsd11-amd64 blocked test-amd64-amd64-qemuu-freebsd12-amd64 blocked test-amd64-amd64-xl-qemuu-ovmf-amd64 blocked test-amd64-i386-xl-qemuu-ovmf-amd64 blocked test-amd64-amd64-xl-qemuu-win7-amd64 blocked test-amd64-i386-xl-qemuu-win7-amd64 blocked test-amd64-amd64-xl-qemuu-ws16-amd64 blocked test-amd64-i386-xl-qemuu-ws16-amd64 blocked test-armhf-armhf-xl-arndale blocked test-amd64-amd64-xl-credit1 blocked test-arm64-arm64-xl-credit1 blocked test-armhf-armhf-xl-credit1 blocked test-amd64-amd64-xl-credit2 blocked test-arm64-arm64-xl-credit2 blocked test-armhf-armhf-xl-credit2 blocked test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-freebsd10-i386 blocked test-amd64-amd64-qemuu-nested-intel blocked test-amd64-amd64-xl-pvhv2-intel blocked test-amd64-i386-qemuu-rhel6hvm-intel blocked test-amd64-amd64-dom0pvh-xl-intel blocked test-amd64-amd64-libvirt blocked test-armhf-armhf-libvirt blocked test-amd64-i386-libvirt blocked test-amd64-amd64-xl-multivcpu blocked test-armhf-armhf-xl-multivcpu blocked test-amd64-amd64-pair blocked test-amd64-i386-pair blocked test-amd64-amd64-libvirt-pair blocked test-amd64-i386-libvirt-pair blocked test-amd64-amd64-xl-pvshim blocked test-amd64-i386-xl-pvshim blocked test-amd64-amd64-pygrub blocked test-armhf-armhf-libvirt-qcow2 blocked test-amd64-amd64-xl-qcow2 blocked test-arm64-arm64-libvirt-raw blocked test-armhf-armhf-libvirt-raw blocked test-amd64-i386-libvirt-raw blocked test-amd64-amd64-xl-rtds blocked test-armhf-armhf-xl-rtds blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-amd64-xl-shadow blocked test-amd64-i386-xl-shadow blocked test-arm64-arm64-xl-thunderx blocked test-amd64-amd64-libvirt-vhd blocked test-arm64-arm64-xl-vhd blocked test-armhf-armhf-xl-vhd blocked test-amd64-i386-xl-vhd blocked ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 16165 lines long.) From xen-devel-bounces@lists.xenproject.org Fri Jun 09 03:44:06 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 09 Jun 2023 03:44:06 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545604.852069 (Exim 4.92) (envelope-from ) id 1q7T2U-0001Ng-LU; Fri, 09 Jun 2023 03:43:50 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545604.852069; Fri, 09 Jun 2023 03:43:50 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7T2U-0001NZ-Ia; Fri, 09 Jun 2023 03:43:50 +0000 Received: by outflank-mailman (input) for mailman id 545604; Fri, 09 Jun 2023 03:43:49 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7T2T-0001NA-Cw for xen-devel@lists.xenproject.org; Fri, 09 Jun 2023 03:43:49 +0000 Received: from NAM12-DM6-obe.outbound.protection.outlook.com (mail-dm6nam12on2061c.outbound.protection.outlook.com [2a01:111:f400:fe59::61c]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id d5b0b03f-0677-11ee-8611-37d641c3527e; Fri, 09 Jun 2023 05:43:46 +0200 (CEST) Received: from BL1PR12MB5849.namprd12.prod.outlook.com (2603:10b6:208:384::18) by IA1PR12MB7517.namprd12.prod.outlook.com (2603:10b6:208:41a::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.39; Fri, 9 Jun 2023 03:43:41 +0000 Received: from BL1PR12MB5849.namprd12.prod.outlook.com ([fe80::4ef5:2244:743b:9989]) by BL1PR12MB5849.namprd12.prod.outlook.com ([fe80::4ef5:2244:743b:9989%4]) with mapi id 15.20.6455.030; Fri, 9 Jun 2023 03:43:41 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: d5b0b03f-0677-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=X9jW2YTrgS6FN4aNMAtVgKqJccTuIfeSWmhWNxT980OwCi0fcel4lKwu41/iTu9NjUM5GdORp7LQ+DUI0XKdYOrouL1Ol/i/psU7CRCkW55quOy923Dd56x+3ZwLz8IJ6ExAaX53uU6ZPBtYpdm3X2E2zQFxOkzQgzy4l3YXnykipo+LT53Y1CURPw76lfe/RXjVkScwVHcEoXNe2VY3JGcj7SdLOcrqvSF+/SwzfD6Q6haFEtMscTPhF4f49CfpGbG2fPJhBai7/3xvRocmZigkU2/+znrWIsvM+feyAUw6unYBwdyMHADfdlnBqsCDKKrKljO9uPMCagFo+tKo1A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=ZrHiDZPjPHUyJiKvacNAwa2Xt8Rb8r3yrDXqgxt+bHY=; b=J8XfnlSJw0JqUeRlXjTV/Sb3UJdJDe+kU/pyzfz6BpNXHrGDo0AdFKpyUsO0n3ggWsHdhjFVtE9+8O7BnttVKiZkWlldffpbpymTekknCKGYc49/tSq6ZNvjZGijKrfU4SwUCrkG1QHm6+bUi43BXnWZwfwFaKdttYP6s2WLZ7+YTo04gwKYQFZCayzrvuDPoKW0N+aqGypHK9SEIqSJ1ZgO3JysuJukVXEuNo2vDkvHdCQkpmb+ajlD8KIaWIeeIdMum74zeZjQ0iAt37eGrTz1aDfjMpPvL33/7AunQi/ee63V1Gvzt2IOC9ZRCEHl795B0b2FWz3aeG0d1nV9UQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass header.d=amd.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=ZrHiDZPjPHUyJiKvacNAwa2Xt8Rb8r3yrDXqgxt+bHY=; b=jv985U/XcOiFiGwgtdnoJIxSJw47AouGukMvA3l0C2yadVhwX77zWqRDuLLPBXArQ4HWxpKc/W5gJV9hyVfaphSt3HGJ24p1OT+dAmr0hh4SqOoU/SRnVJKMMAcVUk8tjSMm5fMcUYW++7bZvmsh3Ni+l5xFVV2Bph5RcHGNE2Y= From: "Chen, Jiqian" To: Robert Beckett , "Chen, Jiqian" , Gerd Hoffmann , "Michael S . Tsirkin" , Stefano Stabellini , Anthony PERARD , =?utf-8?B?Um9nZXIgUGF1IE1vbm7DqQ==?= , Jan Beulich , "Dr . David Alan Gilbert" , "qemu-devel@nongnu.org" , "xen-devel@lists.xenproject.org" CC: "Deucher, Alexander" , "Koenig, Christian" , "Hildebrand, Stewart" , Xenia Ragiadakou , "Huang, Honglei1" , "Zhang, Julia" , "Huang, Ray" Subject: Re: [QEMU PATCH 1/1] virtgpu: do not destroy resources when guest suspend Thread-Topic: [QEMU PATCH 1/1] virtgpu: do not destroy resources when guest suspend Thread-Index: AQHZmbUjDQZRLEUzRUmYVwd7de4D46+BHLmAgAE9RoA= Date: Fri, 9 Jun 2023 03:43:41 +0000 Message-ID: References: <20230608025655.1674357-1-Jiqian.Chen@amd.com> <20230608025655.1674357-2-Jiqian.Chen@amd.com> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ms-exchange-imapappendstamp: MN2PR12MB2927.namprd12.prod.outlook.com (15.20.6455.003) authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=amd.com; x-ms-exchange-messagesentrepresentingtype: 1 x-ms-publictraffictype: Email x-ms-traffictypediagnostic: BL1PR12MB5849:EE_|IA1PR12MB7517:EE_ x-ms-office365-filtering-correlation-id: 8a01669a-8403-4028-0f38-08db689bb7db x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: K7wAbL9AGsDybBh3bNDwQUJYu1RzV8EEicCwvB2MWqyx801EVRFSPei4lNWXrSpPzjWG0Tsn9WUob4Rg7nSeMK3VE5D2UMKbUepQn8E7vyxyyi23+5YVoL8WUPXBK/7p+66mwlV0F8vibzbK5Q4aTHsTK87bljtnIUD2hIdABpfWZtwlKeINvzNpk6U1EMuVF7OPmetcUOHTvsPdzVfRX2uj7r3NAHI9mBqBfS6oYGnm9XumVFuoYKF4sXcgsMGE6uUMop+Ym8YOZxQigo9eSilInwMVrfyd3J36+RvSLqrW2Ftiu7Jg8a55M6x3AfrHYYlju62OaeIHP5/y1uqSQUyeBI+TxiEXFn5e0vmuKQ8ncK0T6m2+95XdDAoouDor5JhVM8rGKVhZ2y75udPmokaGOfGLqlVP1fKGTSz5yGc3aERZL5oYFJ3ut9xybUBCOkiyYf9ycFXJi6RmT6MeaA/3FeRrH5N5UDtGAihZVVzZueVB7EUkT1VdfLyuglB3t15dEq1kOMEjotBGqqnBV4WXG/oLcCVaEvzxqWYDvULMgN4KmgQgDwowMmahsczYp34VeIxHD6bijbteVN+0LYH3tqz1FqsbPH/giYSUfPz6Csd5zg3tZf/yb9foH1hkUOqd2h78f6FE4HjUqHeNcg== x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BL1PR12MB5849.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(136003)(366004)(376002)(39860400002)(396003)(346002)(451199021)(66476007)(66556008)(66446008)(66946007)(64756008)(76116006)(478600001)(110136005)(54906003)(8676002)(52536014)(8936002)(5660300002)(71200400001)(4326008)(316002)(41300700001)(7696005)(38100700002)(55016003)(122000001)(921005)(9686003)(53546011)(38070700005)(6506007)(7416002)(186003)(26005)(33656002)(2906002)(15650500001)(83380400001);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?RjJNbWNHTi9KVVVoMmU1VzVtdG5IMG0rQmZzUmg3ZXJ6NkxkaDNkOE5CbHRD?= =?utf-8?B?OVc1Y1dNNFZtYzJvZlcwd2JCQlBnWjNoTi8rS3NMYTE5RFZvZHdyRXY3Qlo5?= =?utf-8?B?Rlh4MkhOczhxZnUxMHJJNzVHWTRQdFVTODBGODd6SDJRYXFVWGk1Wk5wVGFi?= =?utf-8?B?bUFGY2IvY3RQM0J6YitnY3Q4WVg2SDVwVWYvTXNDQVhJcnRIV1JRMHNkMXZi?= =?utf-8?B?Wm5qWVBORzJTM2xTZENvbm5pK29jTFdHR1pKK3hYVEFDK2VWOUlrMjA5RmRw?= =?utf-8?B?L3UyZVI4UWRoNmRKVGt6UW1DYzZyMXhnTHRaM29veXMxU0JxYlI1QkNLM3A0?= =?utf-8?B?THFVcGRUQjY2aFN3U3JRRVpxYVhMQ1ppcGlMZG1pQXM0NlE4WHdlWUhraTZr?= =?utf-8?B?VXRlaFVnT3NjNTQ2dzRiUmJKaW94ZHBOZVZxYVpzU2NVTnpEM3czT2tLU2JJ?= =?utf-8?B?TCtNRjdwbTQ5VCtxNmdSQ2dNUklhMDRQNG8zcC9vd0tBbCtkeXllKzk3c1ZN?= =?utf-8?B?bTh2Sm5HS0FiUEpwTzlsZUR2aFdUbTJ0RlRVZXBKam9vVzMvQzYyaER1TVh5?= =?utf-8?B?eUpINFFLSTl2Z3VnaTlZOEM0blAzSzVIWW44Ty9QQWxNc2J5ZDErU2E4RDZw?= =?utf-8?B?TTkvMURqdHZCTjMvd2QydUNONGhSUWQycEQyRG0za0hrZTJMdnpCd3VrRXZD?= =?utf-8?B?M2ZXTnp2dWdUM05MVnA4Uk1JdXVrMCsrMktEZkt3UXFkaExFdWhaa09kU29o?= =?utf-8?B?NTZmMVVHbG9SUDJZUEJVL0xDMlE2YWpVdk5VRVBBSnJiWUNNRVY1WEp2cTIz?= =?utf-8?B?TFFxWWtEY2JjQjFxd3d5UTBJYnl4aThuMnk1QlIxekxxRjdkalg5YS9KM0pI?= =?utf-8?B?Y1NyMTBJMi9FcTNGZE9vd3ViN052djJWQWVmTFVzTDRVRElDSUJqd0JPcnAx?= =?utf-8?B?d1c5eDFIcXFsYkN6ZW03TW5RTGIwaUlpZHVDYWU4T2x1NXB2VG1lbzJRTjZy?= =?utf-8?B?aitpaUpmOTE2Qkc2K05LRVlaK2xHSTFWaFVZZlJQeTAzYWtQblJVbXIzVWFN?= =?utf-8?B?VW5WUHd0dU1RL1lIUHZ6SmQxQzUrOGxzOUl3V3RrcWpMRU9TS24ycEwxejQw?= =?utf-8?B?blFLYWdYNVp5QW93cjJGRytGWnZ3dGxtUHhHYVNMZVZzUG42MXZYb05LV0JI?= =?utf-8?B?dXdVRFpSQXRBajZhU0ExZUprVHovUEUyMkJXREYrVDdQSFB4cjZQdUtISzZD?= =?utf-8?B?eEM5dVlJdGMyTjA1ZnlCbkNqYzdKdnhGNTN2SGdEMmpibDBPZnd2bjQ3elhT?= =?utf-8?B?azBUS2c2Z09EaUhUNEFKVTFYSXNVdHQ4T1p0cmE1djZ0eVhnbHVaVmRLRjcw?= =?utf-8?B?b0J3TWFmM3ZjTG9yelRyNHBIb01BVlJZRkJoM0tqYlpNaXNTY290MHd3NU1G?= =?utf-8?B?YzBCVXFxbHErT0ZBd0dYdjY5Y0UxeDNkZWo4eFA3YXNFS3h1K3pzakRpdHRo?= =?utf-8?B?c1cxSnl6UjlUQlg4VERIeCsvRGVNQjhkbFRnQ1Z2YkI3SmNibk9Ba25RSkdY?= =?utf-8?B?d3g5ZW5PVmRZWDArZGE0eGIyLzlSZlpiSzlPeHJ5dmg4Q2lmZGxnajRvS1kr?= =?utf-8?B?Vi9tdS9scXJTV2tPNXlsQUhQS09kMEFzb3I3U3hwb0hQSkxGZlNDK0FaSG5u?= =?utf-8?B?eU15TGJkZlJwN3BsaWdWL3IyQy9JdTR0OVVramlYbzNpTUlnVVE3Y3ZNR2Zz?= =?utf-8?B?NStWZ1FIWHdtbmVNYnNDQ2xnY1V6NXp3bXQyZmk1MDUyMnZyZS9NeUk0aXN1?= =?utf-8?B?RHlNWmo4UHo0bG5ReEZMSjBUVkxiaGg0SnQxd0N5dzNtamdnTytqY1dNaFdV?= =?utf-8?B?cFQxby9xcFlzaGxpYWVLUksxQ1lVc1hwRmZuZWMwWDE1anZTcjV2SEgxdjJl?= =?utf-8?B?M09hZkZ2L0duc1pZL0tkOUU2YmJDUVV1WU50QWpURDlRbTNMMCt5djlkUGRY?= =?utf-8?B?bDU1eGxGS3JtUmFabnl0L005eHlVMEFyOVFmQ2NnUzl3VnlWNzg5OU4ranVK?= =?utf-8?B?YlNDRVV5WG1qTUlQMzRwbUtzb3QvRkxHUDYrWWE4N0Y2US83VkxjaW5XY3JP?= =?utf-8?Q?7D/Y=3D?= Content-Type: text/plain; charset="utf-8" Content-ID: <78FD6141B5B82B419CE9E69E8FF2662D@amdcloud.onmicrosoft.com> Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: BL1PR12MB5849.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 8a01669a-8403-4028-0f38-08db689bb7db X-MS-Exchange-CrossTenant-originalarrivaltime: 09 Jun 2023 03:43:41.6570 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: 0wULbrki2V9pLOJok+Wz5nTF0neNAl0IQtJA9rqznxZ6ysVnlJZtCdi0jPg7ruffkrLbySOoH5a4bOlO1YCDSw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: IA1PR12MB7517 T24gMjAyMy82LzkgMDA6NDEsIFJvYmVydCBCZWNrZXR0IHdyb3RlOg0KPiANCj4gT24gMDgvMDYv MjAyMyAwMzo1NiwgSmlxaWFuIENoZW4gd3JvdGU6DQo+PiBBZnRlciBzdXNwZW5kaW5nIGFuZCBy ZXN1bWluZyBndWVzdCBWTSwgeW91IHdpbGwgZ2V0DQo+PiBhIGJsYWNrIHNjcmVlbiwgYW5kIHRo ZSBkaXNwbGF5IGNhbid0IGNvbWUgYmFjay4NCj4+DQo+PiBUaGlzIGlzIGJlY2F1c2Ugd2hlbiBn dWVzdCBkaWQgc3VzcGVuZGluZywgaXQgY2FsbGVkDQo+PiBpbnRvIHFlbXUgdG8gY2FsbCB2aXJ0 aW9fZ3B1X2dsX3Jlc2V0LiBJbiBmdW5jdGlvbg0KPj4gdmlydGlvX2dwdV9nbF9yZXNldCwgaXQg ZGVzdHJveWVkIHJlc291cmNlcyBhbmQgcmVzZXQNCj4+IHJlbmRlcmVyLCB3aGljaCB3ZXJlIHVz ZWQgZm9yIGRpc3BsYXkuIEFzIGEgcmVzdWx0LA0KPj4gZ3Vlc3QncyBzY3JlZW4gY2FuJ3QgY29t ZSBiYWNrIHRvIHRoZSB0aW1lIHdoZW4gaXQgd2FzDQo+PiBzdXNwZW5kZWQgYW5kIG9ubHkgc2hv d2VkIGJsYWNrLg0KPj4NCj4+IFNvLCB0aGlzIHBhdGNoIGFkZHMgYSBuZXcgY3RybCBtZXNzYWdl DQo+PiBWSVJUSU9fR1BVX0NNRF9TVEFUVVNfRlJFRVpJTkcgdG8gZ2V0IG5vdGlmaWNhdGlvbiBm cm9tDQo+PiBndWVzdC4gSWYgZ3Vlc3QgaXMgZHVyaW5nIHN1c3BlbmRpbmcsIGl0IHNldHMgZnJl ZXppbmcNCj4+IHN0YXR1cyBvZiB2aXJ0Z3B1IHRvIHRydWUsIHRoaXMgd2lsbCBwcmV2ZW50IGRl c3Ryb3lpbmcNCj4+IHJlc291cmNlcyBhbmQgcmVzZXR0aW5nIHJlbmRlcmVyIHdoZW4gZ3Vlc3Qg Y2FsbHMgaW50bw0KPj4gdmlydGlvX2dwdV9nbF9yZXNldC4gSWYgZ3Vlc3QgaXMgZHVyaW5nIHJl c3VtaW5nLCBpdCBzZXRzDQo+PiBmcmVlemluZyB0byBmYWxzZSwgYW5kIHRoZW4gdmlydGlvX2dw dV9nbF9yZXNldCB3aWxsIGtlZXANCj4+IGl0cyBvcmlnaW4gYWN0aW9ucyBhbmQgaGFzIG5vIG90 aGVyIGltcGFjdGlvbi4NCj4+DQo+PiBTaWduZWQtb2ZmLWJ5OiBKaXFpYW4gQ2hlbiA8SmlxaWFu LkNoZW5AYW1kLmNvbT4NCj4+IC0tLQ0KPj4gwqAgaHcvZGlzcGxheS92aXJ0aW8tZ3B1LWdsLmPC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHzCoCA5ICsrKysrKy0NCj4+IMKgIGh3 L2Rpc3BsYXkvdmlydGlvLWdwdS12aXJnbC5jwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB8 wqAgMyArKysNCj4+IMKgIGh3L2Rpc3BsYXkvdmlydGlvLWdwdS5jwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB8IDI2ICsrKysrKysrKysrKysrKysrKystLQ0KPj4gwqAg aW5jbHVkZS9ody92aXJ0aW8vdmlydGlvLWdwdS5owqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAg fMKgIDMgKysrDQo+PiDCoCBpbmNsdWRlL3N0YW5kYXJkLWhlYWRlcnMvbGludXgvdmlydGlvX2dw dS5oIHzCoCA5ICsrKysrKysNCj4+IMKgIDUgZmlsZXMgY2hhbmdlZCwgNDcgaW5zZXJ0aW9ucygr KSwgMyBkZWxldGlvbnMoLSkNCj4+DQo+PiBkaWZmIC0tZ2l0IGEvaHcvZGlzcGxheS92aXJ0aW8t Z3B1LWdsLmMgYi9ody9kaXNwbGF5L3ZpcnRpby1ncHUtZ2wuYw0KPj4gaW5kZXggZTA2YmU2MGRm Yi4uZTExYWQyMzNlYiAxMDA2NDQNCj4+IC0tLSBhL2h3L2Rpc3BsYXkvdmlydGlvLWdwdS1nbC5j DQo+PiArKysgYi9ody9kaXNwbGF5L3ZpcnRpby1ncHUtZ2wuYw0KPj4gQEAgLTEwMCw3ICsxMDAs MTQgQEAgc3RhdGljIHZvaWQgdmlydGlvX2dwdV9nbF9yZXNldChWaXJ0SU9EZXZpY2UgKnZkZXYp DQo+PiDCoMKgwqDCoMKgwqAgKi8NCj4+IMKgwqDCoMKgwqAgaWYgKGdsLT5yZW5kZXJlcl9pbml0 ZWQgJiYgIWdsLT5yZW5kZXJlcl9yZXNldCkgew0KPj4gwqDCoMKgwqDCoMKgwqDCoMKgIHZpcnRp b19ncHVfdmlyZ2xfcmVzZXRfc2Nhbm91dChnKTsNCj4+IC3CoMKgwqDCoMKgwqDCoCBnbC0+cmVu ZGVyZXJfcmVzZXQgPSB0cnVlOw0KPj4gK8KgwqDCoMKgwqDCoMKgIC8qDQo+PiArwqDCoMKgwqDC oMKgwqDCoCAqIElmIGd1ZXN0IGlzIHN1c3BlbmRpbmcsIHdlIHNob3VsZG4ndCByZXNldCByZW5k ZXJlciwNCj4+ICvCoMKgwqDCoMKgwqDCoMKgICogb3RoZXJ3aXNlLCB0aGUgZGlzcGxheSBjYW4n dCBjb21lIGJhY2sgdG8gdGhlIHRpbWUgd2hlbg0KPj4gK8KgwqDCoMKgwqDCoMKgwqAgKiBpdCB3 YXMgc3VzcGVuZGVkIGFmdGVyIGd1ZXN0IHJlc3VtZWQuDQo+PiArwqDCoMKgwqDCoMKgwqDCoCAq Lw0KPj4gK8KgwqDCoMKgwqDCoMKgIGlmICghZy0+ZnJlZXppbmcpIHsNCj4+ICvCoMKgwqDCoMKg wqDCoMKgwqDCoMKgIGdsLT5yZW5kZXJlcl9yZXNldCA9IHRydWU7DQo+PiArwqDCoMKgwqDCoMKg wqAgfQ0KPj4gwqDCoMKgwqDCoCB9DQo+PiDCoCB9DQo+PiDCoCBkaWZmIC0tZ2l0IGEvaHcvZGlz cGxheS92aXJ0aW8tZ3B1LXZpcmdsLmMgYi9ody9kaXNwbGF5L3ZpcnRpby1ncHUtdmlyZ2wuYw0K Pj4gaW5kZXggNzNjYjkyYzhkNS4uMTgzZWM5MmQ1MyAxMDA2NDQNCj4+IC0tLSBhL2h3L2Rpc3Bs YXkvdmlydGlvLWdwdS12aXJnbC5jDQo+PiArKysgYi9ody9kaXNwbGF5L3ZpcnRpby1ncHUtdmly Z2wuYw0KPj4gQEAgLTQ2NCw2ICs0NjQsOSBAQCB2b2lkIHZpcnRpb19ncHVfdmlyZ2xfcHJvY2Vz c19jbWQoVmlydElPR1BVICpnLA0KPj4gwqDCoMKgwqDCoCBjYXNlIFZJUlRJT19HUFVfQ01EX0dF VF9FRElEOg0KPj4gwqDCoMKgwqDCoMKgwqDCoMKgIHZpcnRpb19ncHVfZ2V0X2VkaWQoZywgY21k KTsNCj4+IMKgwqDCoMKgwqDCoMKgwqDCoCBicmVhazsNCj4+ICvCoMKgwqAgY2FzZSBWSVJUSU9f R1BVX0NNRF9TVEFUVVNfRlJFRVpJTkc6DQo+PiArwqDCoMKgwqDCoMKgwqAgdmlydGlvX2dwdV9j bWRfc3RhdHVzX2ZyZWV6aW5nKGcsIGNtZCk7DQo+PiArwqDCoMKgwqDCoMKgwqAgYnJlYWs7DQo+ PiDCoMKgwqDCoMKgIGRlZmF1bHQ6DQo+PiDCoMKgwqDCoMKgwqDCoMKgwqAgY21kLT5lcnJvciA9 IFZJUlRJT19HUFVfUkVTUF9FUlJfVU5TUEVDOw0KPj4gwqDCoMKgwqDCoMKgwqDCoMKgIGJyZWFr Ow0KPj4gZGlmZiAtLWdpdCBhL2h3L2Rpc3BsYXkvdmlydGlvLWdwdS5jIGIvaHcvZGlzcGxheS92 aXJ0aW8tZ3B1LmMNCj4+IGluZGV4IDVlMTVjNzliOTQuLjhmMjM1ZDc4NDggMTAwNjQ0DQo+PiAt LS0gYS9ody9kaXNwbGF5L3ZpcnRpby1ncHUuYw0KPj4gKysrIGIvaHcvZGlzcGxheS92aXJ0aW8t Z3B1LmMNCj4+IEBAIC0zNzMsNiArMzczLDE2IEBAIHN0YXRpYyB2b2lkIHZpcnRpb19ncHVfcmVz b3VyY2VfY3JlYXRlX2Jsb2IoVmlydElPR1BVICpnLA0KPj4gwqDCoMKgwqDCoCBRVEFJTFFfSU5T RVJUX0hFQUQoJmctPnJlc2xpc3QsIHJlcywgbmV4dCk7DQo+PiDCoCB9DQo+PiDCoCArdm9pZCB2 aXJ0aW9fZ3B1X2NtZF9zdGF0dXNfZnJlZXppbmcoVmlydElPR1BVICpnLA0KPj4gK8KgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBzdHJ1Y3QgdmlydGlvX2dw dV9jdHJsX2NvbW1hbmQgKmNtZCkNCj4+ICt7DQo+PiArwqDCoMKgIHN0cnVjdCB2aXJ0aW9fZ3B1 X3N0YXR1c19mcmVlemluZyBzZjsNCj4+ICsNCj4+ICvCoMKgwqAgVklSVElPX0dQVV9GSUxMX0NN RChzZik7DQo+PiArwqDCoMKgIHZpcnRpb19ncHVfYnN3YXBfMzIoJnNmLCBzaXplb2Yoc2YpKTsN Cj4+ICvCoMKgwqAgZy0+ZnJlZXppbmcgPSBzZi5mcmVlemluZzsNCj4+ICt9DQo+PiArDQo+PiDC oCBzdGF0aWMgdm9pZCB2aXJ0aW9fZ3B1X2Rpc2FibGVfc2Nhbm91dChWaXJ0SU9HUFUgKmcsIGlu dCBzY2Fub3V0X2lkKQ0KPj4gwqAgew0KPj4gwqDCoMKgwqDCoCBzdHJ1Y3QgdmlydGlvX2dwdV9z Y2Fub3V0ICpzY2Fub3V0ID0gJmctPnBhcmVudF9vYmouc2Nhbm91dFtzY2Fub3V0X2lkXTsNCj4+ IEBAIC05ODYsNiArOTk2LDkgQEAgdm9pZCB2aXJ0aW9fZ3B1X3NpbXBsZV9wcm9jZXNzX2NtZChW aXJ0SU9HUFUgKmcsDQo+PiDCoMKgwqDCoMKgIGNhc2UgVklSVElPX0dQVV9DTURfUkVTT1VSQ0Vf REVUQUNIX0JBQ0tJTkc6DQo+PiDCoMKgwqDCoMKgwqDCoMKgwqAgdmlydGlvX2dwdV9yZXNvdXJj ZV9kZXRhY2hfYmFja2luZyhnLCBjbWQpOw0KPj4gwqDCoMKgwqDCoMKgwqDCoMKgIGJyZWFrOw0K Pj4gK8KgwqDCoCBjYXNlIFZJUlRJT19HUFVfQ01EX1NUQVRVU19GUkVFWklORzoNCj4+ICvCoMKg wqDCoMKgwqDCoCB2aXJ0aW9fZ3B1X2NtZF9zdGF0dXNfZnJlZXppbmcoZywgY21kKTsNCj4+ICvC oMKgwqDCoMKgwqDCoCBicmVhazsNCj4+IMKgwqDCoMKgwqAgZGVmYXVsdDoNCj4+IMKgwqDCoMKg wqDCoMKgwqDCoCBjbWQtPmVycm9yID0gVklSVElPX0dQVV9SRVNQX0VSUl9VTlNQRUM7DQo+PiDC oMKgwqDCoMKgwqDCoMKgwqAgYnJlYWs7DQo+PiBAQCAtMTM0NCw2ICsxMzU3LDggQEAgdm9pZCB2 aXJ0aW9fZ3B1X2RldmljZV9yZWFsaXplKERldmljZVN0YXRlICpxZGV2LCBFcnJvciAqKmVycnAp DQo+PiDCoMKgwqDCoMKgIFFUQUlMUV9JTklUKCZnLT5yZXNsaXN0KTsNCj4+IMKgwqDCoMKgwqAg UVRBSUxRX0lOSVQoJmctPmNtZHEpOw0KPj4gwqDCoMKgwqDCoCBRVEFJTFFfSU5JVCgmZy0+ZmVu Y2VxKTsNCj4+ICsNCj4+ICvCoMKgwqAgZy0+ZnJlZXppbmcgPSBmYWxzZTsNCj4+IMKgIH0NCj4+ IMKgIMKgIHZvaWQgdmlydGlvX2dwdV9yZXNldChWaXJ0SU9EZXZpY2UgKnZkZXYpDQo+PiBAQCAt MTM1Miw4ICsxMzY3LDE1IEBAIHZvaWQgdmlydGlvX2dwdV9yZXNldChWaXJ0SU9EZXZpY2UgKnZk ZXYpDQo+PiDCoMKgwqDCoMKgIHN0cnVjdCB2aXJ0aW9fZ3B1X3NpbXBsZV9yZXNvdXJjZSAqcmVz LCAqdG1wOw0KPj4gwqDCoMKgwqDCoCBzdHJ1Y3QgdmlydGlvX2dwdV9jdHJsX2NvbW1hbmQgKmNt ZDsNCj4+IMKgIC3CoMKgwqAgUVRBSUxRX0ZPUkVBQ0hfU0FGRShyZXMsICZnLT5yZXNsaXN0LCBu ZXh0LCB0bXApIHsNCj4+IC3CoMKgwqDCoMKgwqDCoCB2aXJ0aW9fZ3B1X3Jlc291cmNlX2Rlc3Ry b3koZywgcmVzKTsNCj4+ICvCoMKgwqAgLyoNCj4+ICvCoMKgwqDCoCAqIElmIGd1ZXN0IGlzIHN1 c3BlbmRpbmcsIHdlIHNob3VsZG4ndCBkZXN0cm95IHJlc291cmNlcywNCj4+ICvCoMKgwqDCoCAq IG90aGVyd2lzZSwgdGhlIGRpc3BsYXkgY2FuJ3QgY29tZSBiYWNrIHRvIHRoZSB0aW1lIHdoZW4N Cj4+ICvCoMKgwqDCoCAqIGl0IHdhcyBzdXNwZW5kZWQgYWZ0ZXIgZ3Vlc3QgcmVzdW1lZC4NCj4+ ICvCoMKgwqDCoCAqLw0KPiANCj4gDQo+IFdoYXQgc2hvdWxkIGhhcHBlbiBpZiBxZW11IGlzIHRv cm4gZG93biB3aGlsZSB0aGUgZ3Vlc3QgaXMgc3VzcGVuZGVkLg0KPiBDdXJyZW50bHkgdGhlcmUg aXMgbm8gb3RoZXIgcGxhY2Ugd2hlcmUgdGhlIHJlc291cmNlcyB3aWxsIGJlIGRlc3Ryb3llZC4g V2hpbGUgaXQgaXMgbGlrZWx5IHZpYWJsZSB0byByZWx5IG9uIHByb2Nlc3MgYXV0byB0ZWFyIGRv d24gb2YgbWVtIGFuZCBmaWxlcyBmcm9tIHRoZSBob3N0IGNsZWFudXAgcG9pbnQgb2Ygdmlldywg aXQgZmVlbHMgYmFkIHRvIHJlbHkgb24gdGhhdC4NCj4gUGVyaGFwcyBhbiBpbnZlcnRlZCBjb25k aXRpb25hbCB3aXRoIGRlc3Ryb3kgbG9vcCBpbiB2aXJ0aW9fZ3B1X2RldmljZV91bnJlYWxpemUo KSB3b3VsZCBzdWZmaWNlPw0KPiANCj4gSSBhbSBub3QgYSBxZW11IGV4cGVydCwgYnV0IEkgYW0g YXNzdW1pbmcgdGhhdCB0aGUgdW5yZWFsaXplIGNhbGwgd2lsbCBiZSBjYWxsZWQgZHVyaW5nIG1h Y2hpbmUgZGVzdHJ1Y3Rpb24gaWYgdGhlIGd1ZXN0IGlzIHN1c3BlbmRlZC4NCj4gQWxzbyBpZiBx ZW11IHN1cHBvcnRzIChvciBpbnRlbmRzIHRvIHN1cHBvcnQgaW4gZnV0dXJlKSBob3RwbHVnZ2lu ZyBvZiB0aGUgZGV2aWNlLCB0aGUgd291bGQgaGVscCBhdm9pZCBsZWFrcyB1bnRpbCBxZW11IGV4 aXQgdG9vLg0KPiANCg0KSGkgQm9iLA0KDQpUaGFuayB5b3UgZm9yIHJldmlld2luZy4NCkkgZGlk bid0IGNvbnNpZGVyIHRoYXQgc2l0dWF0aW9uIGJlZm9yZS4gSXQgc2VlbXMgbGVha3Mgd2lsbCBo YXBwZW4gaW4gdGhhdCBzaXR1YXRpb24uIEkgd2lsbCB0cnkgdG8gc29sdmUgdGhpcyBwcm9ibGVt LCBhbmQgdGhlbiBnZXQgeW91IGEgcmVzcG9uc2UuDQoNCj4gDQo+PiArwqDCoMKgIGlmICghZy0+ ZnJlZXppbmcpIHsNCj4+ICvCoMKgwqDCoMKgwqDCoCBRVEFJTFFfRk9SRUFDSF9TQUZFKHJlcywg JmctPnJlc2xpc3QsIG5leHQsIHRtcCkgew0KPj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqAgdmly dGlvX2dwdV9yZXNvdXJjZV9kZXN0cm95KGcsIHJlcyk7DQo+PiArwqDCoMKgwqDCoMKgwqAgfQ0K Pj4gwqDCoMKgwqDCoCB9DQo+PiDCoCDCoMKgwqDCoMKgIHdoaWxlICghUVRBSUxRX0VNUFRZKCZn LT5jbWRxKSkgew0KPj4gZGlmZiAtLWdpdCBhL2luY2x1ZGUvaHcvdmlydGlvL3ZpcnRpby1ncHUu aCBiL2luY2x1ZGUvaHcvdmlydGlvL3ZpcnRpby1ncHUuaA0KPj4gaW5kZXggMmUyODUwN2VmZS4u YzIxYzI5OTBmYiAxMDA2NDQNCj4+IC0tLSBhL2luY2x1ZGUvaHcvdmlydGlvL3ZpcnRpby1ncHUu aA0KPj4gKysrIGIvaW5jbHVkZS9ody92aXJ0aW8vdmlydGlvLWdwdS5oDQo+PiBAQCAtMTczLDYg KzE3Myw3IEBAIHN0cnVjdCBWaXJ0SU9HUFUgew0KPj4gwqAgwqDCoMKgwqDCoCB1aW50NjRfdCBo b3N0bWVtOw0KPj4gwqAgK8KgwqDCoCBib29sIGZyZWV6aW5nOw0KPj4gwqDCoMKgwqDCoCBib29s IHByb2Nlc3NpbmdfY21kcTsNCj4+IMKgwqDCoMKgwqAgUUVNVVRpbWVyICpmZW5jZV9wb2xsOw0K Pj4gwqDCoMKgwqDCoCBRRU1VVGltZXIgKnByaW50X3N0YXRzOw0KPj4gQEAgLTI4NCw1ICsyODUs NyBAQCB2b2lkIHZpcnRpb19ncHVfdmlyZ2xfcmVzZXRfc2Nhbm91dChWaXJ0SU9HUFUgKmcpOw0K Pj4gwqAgdm9pZCB2aXJ0aW9fZ3B1X3ZpcmdsX3Jlc2V0KFZpcnRJT0dQVSAqZyk7DQo+PiDCoCBp bnQgdmlydGlvX2dwdV92aXJnbF9pbml0KFZpcnRJT0dQVSAqZyk7DQo+PiDCoCBpbnQgdmlydGlv X2dwdV92aXJnbF9nZXRfbnVtX2NhcHNldHMoVmlydElPR1BVICpnKTsNCj4+ICt2b2lkIHZpcnRp b19ncHVfY21kX3N0YXR1c19mcmVlemluZyhWaXJ0SU9HUFUgKmcsDQo+PiArwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHN0cnVjdCB2aXJ0aW9fZ3B1X2N0 cmxfY29tbWFuZCAqY21kKTsNCj4+IMKgIMKgICNlbmRpZg0KPj4gZGlmZiAtLWdpdCBhL2luY2x1 ZGUvc3RhbmRhcmQtaGVhZGVycy9saW51eC92aXJ0aW9fZ3B1LmggYi9pbmNsdWRlL3N0YW5kYXJk LWhlYWRlcnMvbGludXgvdmlydGlvX2dwdS5oDQo+PiBpbmRleCAyZGE0OGQzZDRjLi5hZWZmZmJk NzUxIDEwMDY0NA0KPj4gLS0tIGEvaW5jbHVkZS9zdGFuZGFyZC1oZWFkZXJzL2xpbnV4L3ZpcnRp b19ncHUuaA0KPj4gKysrIGIvaW5jbHVkZS9zdGFuZGFyZC1oZWFkZXJzL2xpbnV4L3ZpcnRpb19n cHUuaA0KPj4gQEAgLTExNiw2ICsxMTYsOSBAQCBlbnVtIHZpcnRpb19ncHVfY3RybF90eXBlIHsN Cj4+IMKgwqDCoMKgwqAgVklSVElPX0dQVV9SRVNQX0VSUl9JTlZBTElEX1JFU09VUkNFX0lELA0K Pj4gwqDCoMKgwqDCoCBWSVJUSU9fR1BVX1JFU1BfRVJSX0lOVkFMSURfQ09OVEVYVF9JRCwNCj4+ IMKgwqDCoMKgwqAgVklSVElPX0dQVV9SRVNQX0VSUl9JTlZBTElEX1BBUkFNRVRFUiwNCj4+ICsN Cj4+ICvCoMKgwqAgLyogc3RhdHVzICovDQo+PiArwqDCoMKgIFZJUlRJT19HUFVfQ01EX1NUQVRV U19GUkVFWklORyA9IDB4MTMwMCwNCj4+IMKgIH07DQo+PiDCoCDCoCBlbnVtIHZpcnRpb19ncHVf c2htX2lkIHsNCj4+IEBAIC00NTMsNCArNDU2LDEwIEBAIHN0cnVjdCB2aXJ0aW9fZ3B1X3Jlc291 cmNlX3VubWFwX2Jsb2Igew0KPj4gwqDCoMKgwqDCoCB1aW50MzJfdCBwYWRkaW5nOw0KPj4gwqAg fTsNCj4+IMKgICsvKiBWSVJUSU9fR1BVX0NNRF9TVEFUVVNfRlJFRVpJTkcgKi8NCj4+ICtzdHJ1 Y3QgdmlydGlvX2dwdV9zdGF0dXNfZnJlZXppbmcgew0KPj4gK8KgwqDCoCBzdHJ1Y3QgdmlydGlv X2dwdV9jdHJsX2hkciBoZHI7DQo+PiArwqDCoMKgIF9fdTMyIGZyZWV6aW5nOw0KPj4gK307DQo+ PiArDQo+PiDCoCAjZW5kaWYNCg0KLS0gDQpCZXN0IHJlZ2FyZHMsDQpKaXFpYW4gQ2hlbi4NCg== From xen-devel-bounces@lists.xenproject.org Fri Jun 09 04:41:22 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 09 Jun 2023 04:41:22 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545613.852085 (Exim 4.92) (envelope-from ) id 1q7Tvt-0007nU-Ut; Fri, 09 Jun 2023 04:41:05 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545613.852085; Fri, 09 Jun 2023 04:41:05 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7Tvt-0007nN-S0; Fri, 09 Jun 2023 04:41:05 +0000 Received: by outflank-mailman (input) for mailman id 545613; Fri, 09 Jun 2023 04:41:04 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7Tvs-0007nD-C9; Fri, 09 Jun 2023 04:41:04 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7Tvs-00084k-4o; Fri, 09 Jun 2023 04:41:04 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7Tvr-0006hj-R9; Fri, 09 Jun 2023 04:41:03 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q7Tvr-0000I4-Qf; Fri, 09 Jun 2023 04:41:03 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=v29nL+F+zTZKMlls4LgzqAAe5Mni7tk4VD8QPWwPg8U=; b=U/C5+i6nLAAg2gaEiE9HuV7usj 93EFG2j8BIjLpAm7Lou1iDcJ0A2FVWL5W2dmH5C/BETCanyeNLM4g0hEcytrCHm+9u4jAg48Vepbd KF+n8m2uf1AuFqrZG1PeY3tLpS2yVYYxeYyNfrEb0R3Ns7Xr9VVrDLRaCtugNEFu0Bjc=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable-smoke test] 181326: regressions - FAIL X-Osstest-Failures: xen-unstable-smoke:build-arm64-xsm:xen-build:fail:regression xen-unstable-smoke:build-armhf:xen-build:fail:regression xen-unstable-smoke:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking xen-unstable-smoke:test-armhf-armhf-xl:build-check(1):blocked:nonblocking xen-unstable-smoke:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking X-Osstest-Versions-This: xen=6915a120641b5d232762af7882266048cf039ca0 X-Osstest-Versions-That: xen=64a647f8d817c6989edc000613b5afae19f03f99 From: osstest service owner Date: Fri, 09 Jun 2023 04:41:03 +0000 flight 181326 xen-unstable-smoke real [real] http://logs.test-lab.xenproject.org/osstest/logs/181326/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-arm64-xsm 6 xen-build fail REGR. vs. 181233 build-armhf 6 xen-build fail REGR. vs. 181233 Tests which did not succeed, but are not blocking: test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 15 migrate-support-check fail never pass version targeted for testing: xen 6915a120641b5d232762af7882266048cf039ca0 baseline version: xen 64a647f8d817c6989edc000613b5afae19f03f99 Last test of basis 181233 2023-06-07 02:04:37 Z 2 days Failing since 181246 2023-06-07 11:02:03 Z 1 days 20 attempts Testing same since 181303 2023-06-08 11:00:25 Z 0 days 9 attempts ------------------------------------------------------------ People who touched revisions under test: Andrew Cooper Christian Lindig George Dunlap Henry Wang # CHANGELOG Juergen Gross Julien Grall Luca Fancellu Michal Orzel Roger Pau Monne Roger Pau Monné Stefano Stabellini jobs: build-arm64-xsm fail build-amd64 pass build-armhf fail build-amd64-libvirt pass test-armhf-armhf-xl blocked test-arm64-arm64-xl-xsm blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-libvirt pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 504 lines long.) From xen-devel-bounces@lists.xenproject.org Fri Jun 09 05:05:30 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 09 Jun 2023 05:05:30 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545586.852101 (Exim 4.92) (envelope-from ) id 1q7UJS-0002Re-46; Fri, 09 Jun 2023 05:05:26 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545586.852101; Fri, 09 Jun 2023 05:05:26 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7UJR-0002Qh-Vh; Fri, 09 Jun 2023 05:05:25 +0000 Received: by outflank-mailman (input) for mailman id 545586; Fri, 09 Jun 2023 02:33:06 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7Rw2-0001ua-Kp for xen-devel@lists.xenproject.org; Fri, 09 Jun 2023 02:33:06 +0000 Received: from mail-yb1-xb30.google.com (mail-yb1-xb30.google.com [2607:f8b0:4864:20::b30]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id f3d20993-066d-11ee-8611-37d641c3527e; Fri, 09 Jun 2023 04:33:02 +0200 (CEST) Received: by mail-yb1-xb30.google.com with SMTP id 3f1490d57ef6-bacf685150cso1248072276.3; Thu, 08 Jun 2023 19:33:01 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: f3d20993-066d-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686277980; x=1688869980; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=Le5TsvdsK/7RBEoOC22sDwIJqqYwFldtkLeYfBEYa/g=; b=X1baz/rCTHp01pMXuCLxiIa9k24EZ6wms3JN2v6EWNonqh4f7LU4YelF9WguIL7cAd AMomTsD7Pt9bcxuv/gx2EkvLs+IwEMHixsrireNpzqnkWHK7RZ7zv0IJiYZLLmMC7Occ bj5N665qaycUay48xUnVz2On8hb1gS/aZcJYNVbFFoKVDmI6GjEvM4pJevIY7MK93aAF CV4HryK7j485Vjs1VspHuMXy4qfua8ExQ1EQHH6lu9igRUK3V9jao21WHPx4P+1qArLC frZtzkN8H8yy62TgYQBAqwu+jcQV2DS1xCGsGNnAIPW6vu+p4PDY0C0sx/2RR4uCoqWC R9ew== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686277980; x=1688869980; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=Le5TsvdsK/7RBEoOC22sDwIJqqYwFldtkLeYfBEYa/g=; b=UeesAQYvDY7sV6rUYn+KSrhww86uk3C0Hk8IzzgywwE/P8SAitAULKt2gUog7g+WvF n/5Umi/fWGC9Mm0OloA2w9Z4BF8oBsXIJB/yIswcaPb5dHN/IzzK+KQpgqwPuCHcHtfc dhcsT0JsXAkvPJot1c54dmvnD3RI40GXIuM4gHNwogwPRbKFs0RxZbWzC78MEiwFYlVY XncikPCBlU6yK0cmOIwzqI9XqhwVKj8QIb9/sbMDk4IB4zaYNbcCq506wQtuIWuqUr99 /jxtwPgkTaDSUdKeMUaYWNW/J2aI2jaW+vsAK0ixt3p0gii4/MONqRIyCBDk2odl0JZQ Ohog== X-Gm-Message-State: AC+VfDwQRc/ANQlFwVgF7O9CVc7agyIur+UEtGeLJodoTc0DNrMfo6DA 9r44bqFzdOkV1t3J7/5OT9gEKlp7/VNckKbKXLA= X-Google-Smtp-Source: ACHHUZ42ZwLV7jR7njZJKxzkhKAKb1MoAdpbsBrdhUfr28u7/7SK2j2lwtz/BXGMzOjJoA0tq080l+uBcHPJ21RkzRU= X-Received: by 2002:a25:8c92:0:b0:ba8:792c:1a2f with SMTP id m18-20020a258c92000000b00ba8792c1a2fmr1255748ybl.40.1686277980215; Thu, 08 Jun 2023 19:33:00 -0700 (PDT) MIME-Version: 1.0 References: In-Reply-To: From: Jiatong Shen Date: Fri, 9 Jun 2023 10:32:49 +0800 Message-ID: Subject: Re: Asking for help to debug xen efi on Kunpeng machine To: Julien Grall Cc: Stefano Stabellini , xen-users@lists.xenproject.org, xen-devel@lists.xenproject.org, bertrand.marquis@arm.com Content-Type: multipart/alternative; boundary="00000000000000deac05fda9304c" --00000000000000deac05fda9304c Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Thank you for your answer. Can you teach me how to verify if acpi is enabled? Best regards,. Jiatong Shen On Fri, Jun 9, 2023 at 9:34=E2=80=AFAM Julien Grall wrote: > > > On 08/06/2023 23:39, Stefano Stabellini wrote: > > Hi Jiatong, > > > > Do you have access to the serial? If so, it is possible that the boot > > is actually successful and it is only the screen initialization the > > problem. > > > > If kunpeng 920 is a UEFI/ACPI machine, we know that there are issues > > with screen initialization. > > More importantly, you may want to check that if Xen was compiled with > ACPI enabled (unlikely if this is the package from Debian). If not, you > will need to build your own Xen. > > Cheers, > > -- > Julien Grall > --=20 Best Regards, Jiatong Shen --00000000000000deac05fda9304c Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Thank you for your answer. Can you teach me how to verify = if acpi is enabled?

Best regards,.
Jiatong= Shen

On Fri, Jun 9, 2023 at 9:34=E2=80=AFAM Julien Grall <julien@xen.org> wrote:


On 08/06/2023 23:39, Stefano Stabellini wrote:
> Hi Jiatong,
>
> Do you have access to the serial? If so, it is possible that the boot<= br> > is actually successful and it is only the screen initialization the > problem.
>
> If kunpeng 920 is a UEFI/ACPI machine, we know that there are issues > with screen initialization.

More importantly, you may want to check that if Xen was compiled with
ACPI enabled (unlikely if this is the package from Debian). If not, you will need to build your own Xen.

Cheers,

--
Julien Grall


--

Best Regards,

Jiatong Shen=
--00000000000000deac05fda9304c-- From xen-devel-bounces@lists.xenproject.org Fri Jun 09 05:05:32 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 09 Jun 2023 05:05:32 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545549.852096 (Exim 4.92) (envelope-from ) id 1q7UJR-0002OB-Rk; Fri, 09 Jun 2023 05:05:25 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545549.852096; Fri, 09 Jun 2023 05:05:25 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7UJR-0002O4-Oj; Fri, 09 Jun 2023 05:05:25 +0000 Received: by outflank-mailman (input) for mailman id 545549; Fri, 09 Jun 2023 01:23:40 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7Qqp-0001m6-U2 for xen-devel@lists.xenproject.org; Fri, 09 Jun 2023 01:23:40 +0000 Received: from mail-yb1-xb32.google.com (mail-yb1-xb32.google.com [2607:f8b0:4864:20::b32]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 42a32ced-0664-11ee-b232-6b7b168915f2; Fri, 09 Jun 2023 03:23:38 +0200 (CEST) Received: by mail-yb1-xb32.google.com with SMTP id 3f1490d57ef6-ba8374001abso1285128276.2; Thu, 08 Jun 2023 18:23:38 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 42a32ced-0664-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686273817; x=1688865817; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=MEPQYGbMNK5oj5vl0CdvAX63gLovKSlWu/GcxyuZD6g=; b=GMzw9eg2fJj4gC9F2y9I3eRImN69ZKQaBUDrjWPgN+b15ZSeUZiZVGnHiQgD63R+dd Ab58Puy3xlOVVGCulI4bTbznnmqBXMnGPsL5Aso4IGVX2oI4S5noI6A+GJc6BRLXCErW +SJoZ4W0N33wIMRhsNvYxSbKe1std5/S437AxFWUZ+CWJQTyesNSTTIP0AxAIDrdpHbJ u8Zoo9b/QC9eiszHmVRWcoJmisOhceFVRS33ihO80rPt6Zl1sI46+nRlSLTzK69+ofeA RemQxP3O1uUjGlT/xOSPyByzJT21UmPgfo/hH2V7e6Dd/ZViqID3Zu3Q9e+e32oEVdUm z1hg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686273817; x=1688865817; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=MEPQYGbMNK5oj5vl0CdvAX63gLovKSlWu/GcxyuZD6g=; b=YGyVsEHC2W5Cpk8L51zca+yzJE2YS7Ni8cS0yJNaPPtGLoHWRaJ+tGjX9hhkJl/DMS kkl2U76CBEpTI4RA/Q6KEWdXvf3tSVxUjmW1y3ppIBMzO2VPXxVAaLKRb+FN2osPyYJ9 LKi7WKO/LoUQLXbmnEcOXmMRbpYU4TpicAhxnlHZU42oxQbw9MXajIItAbssIEvbScNq CMpky15zh6yFiOTRY6zRlZ6Y2A3TbxTm5FMr9gJhgCE7mCq3vrfqWEaxFYko6NRLJUzK smHd3EWgXz+/HglwCDooQPxjXFVkWlkW3bSUR+SJfslhYuqHaTnZj1X4tUVGlevdSLrp BcgA== X-Gm-Message-State: AC+VfDxV9kWCaxTUlQO/QU8Dgzt+hyshrs69FjWNT2FidawgVJ5bWRow 0imdW+Y1K5OD56cxd0aaJWKNOGa2xf2Gid7yT+M= X-Google-Smtp-Source: ACHHUZ4DBbY8hAIsD2jK2BAIse6BXEBJWVLn7yIBFpsx70R86mbAIUiu58CxRop/uy/PBcAYBmFN8LRcaPYQ65Zb8U0= X-Received: by 2002:a25:420b:0:b0:bb1:f091:296f with SMTP id p11-20020a25420b000000b00bb1f091296fmr1218052yba.36.1686273817541; Thu, 08 Jun 2023 18:23:37 -0700 (PDT) MIME-Version: 1.0 References: In-Reply-To: From: Jiatong Shen Date: Fri, 9 Jun 2023 09:23:26 +0800 Message-ID: Subject: Re: Asking for help to debug xen efi on Kunpeng machine To: Stefano Stabellini Cc: xen-users@lists.xenproject.org, xen-devel@lists.xenproject.org, julien@xen.org, bertrand.marquis@arm.com Content-Type: multipart/alternative; boundary="000000000000e380be05fda837b6" --000000000000e380be05fda837b6 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Hi Stefano, Thank you very much for the reply. I do have access to serial but the machine is near my work space right now, so I might need some extra time to go to datacenter first. I'll let you know if it is indeed working. Thank you very much again. Best regards,. Jiatong Shen On Fri, Jun 9, 2023 at 6:39=E2=80=AFAM Stefano Stabellini wrote: > Hi Jiatong, > > Do you have access to the serial? If so, it is possible that the boot > is actually successful and it is only the screen initialization the > problem. > > If kunpeng 920 is a UEFI/ACPI machine, we know that there are issues > with screen initialization. > > Cheers, > > Stefano > > On Fri, 9 Jun 2023, Jiatong Shen wrote: > > Hello community, > > > > I need help for debugging XEN on aarch64 architecture. The machine I am > working on is a kunpeng 920 armv8 compatible CPU. I use debian 11 > > as operating system and installed xen-system-arm64 without any problem. > But when I boot into xen hypervisor mode, the machine screen is > > black out without any output or any helpful debugging message. > > > > Could you generously provide some hints for debugging the issue? > Thank you very much in advance and looking forward to hearing from you. > > > > -- > > > > Best Regards, > > > > Jiatong Shen > > > > --=20 Best Regards, Jiatong Shen --000000000000e380be05fda837b6 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Hi Stefano,

=C2=A0 =C2=A0Thank you very= much for the reply. I do have access to serial but the machine is near my = work space right now, so=C2=A0
I might need some extra time to go= to datacenter first. I'll let you know if it is indeed working.=C2=A0 = =C2=A0

=C2=A0 Thank you very much again.


Best regards,.

Jiat= ong Shen

On Fri, Jun 9, 2023 at 6:39=E2=80=AFAM Stefano Stabellini &= lt;sstabellini@kernel.org>= wrote:
Hi Jiato= ng,

Do you have access to the serial? If so, it is possible that the boot
is actually successful and it is only the screen initialization the
problem.

If kunpeng 920 is a UEFI/ACPI machine, we know that there are issues
with screen initialization.

Cheers,

Stefano

On Fri, 9 Jun 2023, Jiatong Shen wrote:
> Hello community,
> =C2=A0 =C2=A0
> I need help for debugging=C2=A0XEN on aarch64 architecture. The machin= e I am working on is a kunpeng 920 armv8 compatible CPU. I use debian 11 > as operating system and installed xen-system-arm64 without any problem= . But when I boot into xen hypervisor mode, the machine screen is
> black out without any output or any helpful debugging message.=C2=A0 >
> =C2=A0 Could you generously=C2=A0provide some hints for debugging the = issue?=C2=A0 Thank you very much in advance and looking=C2=A0forward to hea= ring from you.
>
> --
>
> Best Regards,
>
> Jiatong Shen
>
>


--

Best Regards,

Jiatong= Shen
--000000000000e380be05fda837b6-- From xen-devel-bounces@lists.xenproject.org Fri Jun 09 07:02:15 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 09 Jun 2023 07:02:15 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545633.852121 (Exim 4.92) (envelope-from ) id 1q7W8I-0006ij-3Z; Fri, 09 Jun 2023 07:02:02 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545633.852121; Fri, 09 Jun 2023 07:02:02 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7W8I-0006ic-0k; Fri, 09 Jun 2023 07:02:02 +0000 Received: by outflank-mailman (input) for mailman id 545633; Fri, 09 Jun 2023 07:02:01 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7W8H-0006iS-5h; Fri, 09 Jun 2023 07:02:01 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7W8F-0003Ks-H9; Fri, 09 Jun 2023 07:01:59 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7W8F-0005CZ-AG; Fri, 09 Jun 2023 07:01:59 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q7W8F-0007hv-9r; Fri, 09 Jun 2023 07:01:59 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=lZs76geg9925TrDWVbWcMAqSS129eHCx+URulHOoPzE=; b=H7ICHgxe0ExVeFgTtgTwnFV+oy K3fqKJ++gbL6NDkdRrfONguyc8KJrR4jAc9DvjZC3tVoKXXPvrR1vBZP+ly2T+t49BM/BkUXhVfnz ZbrqCEpBO+J3AD788WPLyUb8IOZXeotlgGV+DJhHauB3v9gRfNULu1Z9i4oowE5PHpzQ=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable-smoke test] 181330: regressions - FAIL X-Osstest-Failures: xen-unstable-smoke:build-arm64-xsm:xen-build:fail:regression xen-unstable-smoke:build-armhf:xen-build:fail:regression xen-unstable-smoke:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking xen-unstable-smoke:test-armhf-armhf-xl:build-check(1):blocked:nonblocking xen-unstable-smoke:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking X-Osstest-Versions-This: xen=6915a120641b5d232762af7882266048cf039ca0 X-Osstest-Versions-That: xen=64a647f8d817c6989edc000613b5afae19f03f99 From: osstest service owner Date: Fri, 09 Jun 2023 07:01:59 +0000 flight 181330 xen-unstable-smoke real [real] http://logs.test-lab.xenproject.org/osstest/logs/181330/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-arm64-xsm 6 xen-build fail REGR. vs. 181233 build-armhf 6 xen-build fail REGR. vs. 181233 Tests which did not succeed, but are not blocking: test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 15 migrate-support-check fail never pass version targeted for testing: xen 6915a120641b5d232762af7882266048cf039ca0 baseline version: xen 64a647f8d817c6989edc000613b5afae19f03f99 Last test of basis 181233 2023-06-07 02:04:37 Z 2 days Failing since 181246 2023-06-07 11:02:03 Z 1 days 21 attempts Testing same since 181303 2023-06-08 11:00:25 Z 0 days 10 attempts ------------------------------------------------------------ People who touched revisions under test: Andrew Cooper Christian Lindig George Dunlap Henry Wang # CHANGELOG Juergen Gross Julien Grall Luca Fancellu Michal Orzel Roger Pau Monne Roger Pau Monné Stefano Stabellini jobs: build-arm64-xsm fail build-amd64 pass build-armhf fail build-amd64-libvirt pass test-armhf-armhf-xl blocked test-arm64-arm64-xl-xsm blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-libvirt pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 504 lines long.) From xen-devel-bounces@lists.xenproject.org Fri Jun 09 07:58:27 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 09 Jun 2023 07:58:27 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545640.852132 (Exim 4.92) (envelope-from ) id 1q7X0m-0003fm-A1; Fri, 09 Jun 2023 07:58:20 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545640.852132; Fri, 09 Jun 2023 07:58:20 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7X0m-0003ff-6Z; Fri, 09 Jun 2023 07:58:20 +0000 Received: by outflank-mailman (input) for mailman id 545640; Fri, 09 Jun 2023 07:58:19 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7X0l-0003fV-I0; Fri, 09 Jun 2023 07:58:19 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7X0l-0004b0-Dx; Fri, 09 Jun 2023 07:58:19 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7X0k-0007ZF-SV; Fri, 09 Jun 2023 07:58:18 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q7X0k-00016O-Rw; Fri, 09 Jun 2023 07:58:18 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=QCHAFOrz6CBVG9R8F/q8U8ysmsPVRCcx5wgIrTV5Pxc=; b=rtzStfBiPNsjXF7KGPcnqUDlVF Ok1s4UY4MNW8OYbw6OExVfYAjllG4vyQvgxSEt1QDTaf+/CgU8kpXgECnO2YuEDxrgG1Pj9K49X+2 LcsXDl+MpR+K0YLqkHF1TFO9gKOX/ssxfyqnv6yTCgXrf6NYRLCEuugM2T957rx3MZVU=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [qemu-mainline test] 181327: regressions - FAIL X-Osstest-Failures: qemu-mainline:build-arm64-xsm:xen-build:fail:regression qemu-mainline:build-arm64:xen-build:fail:regression qemu-mainline:build-amd64:xen-build:fail:regression qemu-mainline:build-i386:xen-build:fail:regression qemu-mainline:build-amd64-xsm:xen-build:fail:regression qemu-mainline:build-i386-xsm:xen-build:fail:regression qemu-mainline:build-armhf:xen-build:fail:regression qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-i386:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:build-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:build-arm64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:build-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:build-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pygrub:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking X-Osstest-Versions-This: qemuu=5f9dd6a8ce3961db4ce47411ed2097ad88bdf5fc X-Osstest-Versions-That: qemuu=6972ef1440a9d685482d78672620a7482f2bd09a From: osstest service owner Date: Fri, 09 Jun 2023 07:58:18 +0000 flight 181327 qemu-mainline real [real] http://logs.test-lab.xenproject.org/osstest/logs/181327/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-arm64-xsm 6 xen-build fail REGR. vs. 180691 build-arm64 6 xen-build fail REGR. vs. 180691 build-amd64 6 xen-build fail REGR. vs. 180691 build-i386 6 xen-build fail REGR. vs. 180691 build-amd64-xsm 6 xen-build fail REGR. vs. 180691 build-i386-xsm 6 xen-build fail REGR. vs. 180691 build-armhf 6 xen-build fail REGR. vs. 180691 Tests which did not succeed, but are not blocking: test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-xl-xsm 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-raw 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-xsm 1 build-check(1) blocked n/a test-arm64-arm64-xl 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit1 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit2 1 build-check(1) blocked n/a test-arm64-arm64-xl-thunderx 1 build-check(1) blocked n/a test-arm64-arm64-xl-vhd 1 build-check(1) blocked n/a test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a test-armhf-armhf-libvirt 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-qcow2 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-raw 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a test-armhf-armhf-xl-arndale 1 build-check(1) blocked n/a test-armhf-armhf-xl-multivcpu 1 build-check(1) blocked n/a test-armhf-armhf-xl-rtds 1 build-check(1) blocked n/a test-armhf-armhf-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-amd 1 build-check(1) blocked n/a test-amd64-i386-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-raw 1 build-check(1) blocked n/a test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-i386 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-amd64 1 build-check(1) blocked n/a test-amd64-coresched-i386-xl 1 build-check(1) blocked n/a test-amd64-coresched-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-xsm 1 build-check(1) blocked n/a build-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-shadow 1 build-check(1) blocked n/a test-amd64-amd64-xl-rtds 1 build-check(1) blocked n/a build-arm64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a build-armhf-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a build-i386-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-amd 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-pair 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-qcow2 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-vhd 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvshim 1 build-check(1) blocked n/a test-amd64-amd64-pair 1 build-check(1) blocked n/a test-amd64-amd64-pygrub 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-intel 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd11-amd64 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd12-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-multivcpu 1 build-check(1) blocked n/a test-amd64-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit1 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit1 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit2 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-intel 1 build-check(1) blocked n/a test-amd64-i386-xl 1 build-check(1) blocked n/a test-amd64-i386-xl-pvshim 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a version targeted for testing: qemuu 5f9dd6a8ce3961db4ce47411ed2097ad88bdf5fc baseline version: qemuu 6972ef1440a9d685482d78672620a7482f2bd09a Last test of basis 180691 2023-05-17 10:45:22 Z 22 days Failing since 180699 2023-05-18 07:21:24 Z 22 days 75 attempts Testing same since 181322 2023-06-09 00:07:15 Z 0 days 2 attempts ------------------------------------------------------------ People who touched revisions under test: Afonso Bordado Akihiko Odaki Akihiro Suda Alex Bennée Alex Williamson Alexander Bulekov Alexander Graf Alexander Ivanov Alistair Francis Ani Sinha Ani Sinha Anthony PERARD Anton Johansson BALATON Zoltan Bastian Koppelmann Bernhard Beschow Bin Meng Brian Cain Brice Goglin Camilla Conte Christian Schoenebeck Chuck Zmudzinski Cindy Lu Clément Chigot Cornelia Huck Cédric Le Goater Cédric Le Goater Daniel Henrique Barboza Daniel P. Berrangé Daniil Kovalev David Hildenbrand David Woodhouse Emanuele Giuseppe Esposito Enze Li Eric Auger Eric Blake Eric DeVolder Erico Nunes Eugenio Pérez Fabiano Rosas Fan Ni Fiona Ebner Francesco Cagnin Francisco Iglesias Gavin Shan Gregory Price Gregory Price Hanna Czenczek Hao Zeng Hawkins Jiawei Igor Mammedov Ilya Leoshkevich Ira Weiny Jagannathan Raman Jason Wang Jean-Louis Dupond Jean-Philippe Brucker Jiaxun Yang John Snow Jonathan Cameron Juan Quintela Kevin Wolf Laurent Vivier Lei Yang Leonardo Bras Maksim Davydov Marc-André Lureau Marcin Juszkiewicz Marco Liebel Mark Cave-Ayland Markus Armbruster Matheus Tavares Bernardino Mauro Matteo Cascella Max Fritz Michael S. Tsirkin Michael Tokarev Michal Privoznik Mostafa Saleh Nicholas Piggin Nicolas Saenz Julienne Niek Linnenbank Palmer Dabbelt Paolo Bonzini Peter Maydell Peter Xu Philippe Mathieu-Daudé qianfan Zhao Raghu H Rene Engel Richard Henderson Richard Purdie Ricky Zhou Ryan Wendland Sebastian Ott Sergio Lopez Sid Manning Song Gao Stefan Hajnoczi Stefano Garzarella Steve Sistare Taylor Simpson Thomas Huth Thomas Weißschuh timothee.cocault@gmail.com Timothée Cocault Tommy Wu Vikram Garhwal Viktor Prutyanov Vitaly Cheptsov Vivek Kasireddy Vladimir Sementsov-Ogievskiy Volker Rümelin Xinyu Li Zeng Hao Zhenyu Zhang Zhenzhong Duan Zhuojia Shen jobs: build-amd64-xsm fail build-arm64-xsm fail build-i386-xsm fail build-amd64 fail build-arm64 fail build-armhf fail build-i386 fail build-amd64-libvirt blocked build-arm64-libvirt blocked build-armhf-libvirt blocked build-i386-libvirt blocked build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl blocked test-amd64-coresched-amd64-xl blocked test-arm64-arm64-xl blocked test-armhf-armhf-xl blocked test-amd64-i386-xl blocked test-amd64-coresched-i386-xl blocked test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-i386-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-amd64-libvirt-xsm blocked test-arm64-arm64-libvirt-xsm blocked test-amd64-i386-libvirt-xsm blocked test-amd64-amd64-xl-xsm blocked test-arm64-arm64-xl-xsm blocked test-amd64-i386-xl-xsm blocked test-amd64-amd64-qemuu-nested-amd blocked test-amd64-amd64-xl-pvhv2-amd blocked test-amd64-i386-qemuu-rhel6hvm-amd blocked test-amd64-amd64-dom0pvh-xl-amd blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-freebsd10-amd64 blocked test-amd64-amd64-qemuu-freebsd11-amd64 blocked test-amd64-amd64-qemuu-freebsd12-amd64 blocked test-amd64-amd64-xl-qemuu-ovmf-amd64 blocked test-amd64-i386-xl-qemuu-ovmf-amd64 blocked test-amd64-amd64-xl-qemuu-win7-amd64 blocked test-amd64-i386-xl-qemuu-win7-amd64 blocked test-amd64-amd64-xl-qemuu-ws16-amd64 blocked test-amd64-i386-xl-qemuu-ws16-amd64 blocked test-armhf-armhf-xl-arndale blocked test-amd64-amd64-xl-credit1 blocked test-arm64-arm64-xl-credit1 blocked test-armhf-armhf-xl-credit1 blocked test-amd64-amd64-xl-credit2 blocked test-arm64-arm64-xl-credit2 blocked test-armhf-armhf-xl-credit2 blocked test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-freebsd10-i386 blocked test-amd64-amd64-qemuu-nested-intel blocked test-amd64-amd64-xl-pvhv2-intel blocked test-amd64-i386-qemuu-rhel6hvm-intel blocked test-amd64-amd64-dom0pvh-xl-intel blocked test-amd64-amd64-libvirt blocked test-armhf-armhf-libvirt blocked test-amd64-i386-libvirt blocked test-amd64-amd64-xl-multivcpu blocked test-armhf-armhf-xl-multivcpu blocked test-amd64-amd64-pair blocked test-amd64-i386-pair blocked test-amd64-amd64-libvirt-pair blocked test-amd64-i386-libvirt-pair blocked test-amd64-amd64-xl-pvshim blocked test-amd64-i386-xl-pvshim blocked test-amd64-amd64-pygrub blocked test-armhf-armhf-libvirt-qcow2 blocked test-amd64-amd64-xl-qcow2 blocked test-arm64-arm64-libvirt-raw blocked test-armhf-armhf-libvirt-raw blocked test-amd64-i386-libvirt-raw blocked test-amd64-amd64-xl-rtds blocked test-armhf-armhf-xl-rtds blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-amd64-xl-shadow blocked test-amd64-i386-xl-shadow blocked test-arm64-arm64-xl-thunderx blocked test-amd64-amd64-libvirt-vhd blocked test-arm64-arm64-xl-vhd blocked test-armhf-armhf-xl-vhd blocked test-amd64-i386-xl-vhd blocked ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 16165 lines long.) From xen-devel-bounces@lists.xenproject.org Fri Jun 09 08:18:13 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 09 Jun 2023 08:18:13 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545656.852148 (Exim 4.92) (envelope-from ) id 1q7XJm-0006l1-Gq; Fri, 09 Jun 2023 08:17:58 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545656.852148; Fri, 09 Jun 2023 08:17:58 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7XJm-0006ku-Dx; Fri, 09 Jun 2023 08:17:58 +0000 Received: by outflank-mailman (input) for mailman id 545656; Fri, 09 Jun 2023 08:17:57 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7XJk-0006kl-Vt for xen-devel@lists.xenproject.org; Fri, 09 Jun 2023 08:17:57 +0000 Received: from mail-wm1-x329.google.com (mail-wm1-x329.google.com [2a00:1450:4864:20::329]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 224ff57c-069e-11ee-b232-6b7b168915f2; Fri, 09 Jun 2023 10:17:54 +0200 (CEST) Received: by mail-wm1-x329.google.com with SMTP id 5b1f17b1804b1-3f7e7fc9fe6so14344445e9.3 for ; Fri, 09 Jun 2023 01:17:54 -0700 (PDT) Received: from smtpclient.apple (default-46-102-197-194.interdsl.co.uk. [46.102.197.194]) by smtp.gmail.com with ESMTPSA id w18-20020a05600018d200b0030af54c5f33sm3727039wrq.113.2023.06.09.01.17.53 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Fri, 09 Jun 2023 01:17:53 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 224ff57c-069e-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cloud.com; s=cloud; t=1686298674; x=1688890674; h=to:references:message-id:content-transfer-encoding:cc:date :in-reply-to:from:subject:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=0673QD8w4Nwt++U7Gvm+SP1CQSpzK2BtO+u5FWqFJRM=; b=AbdYJPBOinh96qZoLGVeocPM1AfOwyJ+up/8Nlg/Fi/MA9/s0M/Zsxbl4xMbtETfxL 690+yGX9/+3R6K4N7lEE3fEoTU33k/MnlkbKhR8jd8Yh/c1Pj8x0PBg/dbiIV8LOKJeF HnrFzrJgvlUtBuLIDp1LQzKyml6xGaCbyv2zA= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686298674; x=1688890674; h=to:references:message-id:content-transfer-encoding:cc:date :in-reply-to:from:subject:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=0673QD8w4Nwt++U7Gvm+SP1CQSpzK2BtO+u5FWqFJRM=; b=AF0UViulyu37a4qdnjBHAfGI6wBPTwpdHo/wXY2NFm0e3kTQThhxxHitubWkd0BmfN Ya5ca+UxJWPFtCmW+RIyK8kzZNvnxo7x7hILFbIABrn7Q48FdSQ4U92v604WuhaySMug tIlMG2MwLCQrGMa957IVWHbzJw63Iq4KCRud1naIKSimmkfsSriMjvMAcLOwqXut3xAH Ptuj5oK67kVuONMFGgCYmS0ONsVzcfnZZHybU5kHLEwoO1KBcriPrSazg6qwCm8GolVr ZVRgA1UBh7BEeJoqNx7b9MRrUL+JEGWbXX0knJfUOcg+DP5fIM+5v3A5aTIQlH2Hd4Hc FAAw== X-Gm-Message-State: AC+VfDxou037HqBFBMwj0eKMAnxQEIW9iBhzIT2WHHq1gwD8VmyAg5MT 2VMTVaoyCQ3p2wCc9kqKhIcspA== X-Google-Smtp-Source: ACHHUZ4AEsxoEqReEOrGEvhZ+fFDP+hvuePU10jewFIC8Vn/d7UjAm8aZtwnjX1r1i4al44TkOlL2w== X-Received: by 2002:a1c:7203:0:b0:3f5:146a:c79d with SMTP id n3-20020a1c7203000000b003f5146ac79dmr550970wmc.15.1686298674075; Fri, 09 Jun 2023 01:17:54 -0700 (PDT) Content-Type: text/plain; charset=utf-8 Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3696.120.41.1.3\)) Subject: Re: [PATCH] tools/ocaml/xc: Fix xc_physinfo() bindings From: Christian Lindig In-Reply-To: <20230608193312.2520222-1-andrew.cooper3@citrix.com> Date: Fri, 9 Jun 2023 09:17:52 +0100 Cc: Xen-devel , =?utf-8?B?RWR3aW4gVMO2csO2aw==?= , Rob Hoes , Luca Fancellu Content-Transfer-Encoding: quoted-printable Message-Id: References: <20230608193312.2520222-1-andrew.cooper3@citrix.com> To: Andrew Cooper X-Mailer: Apple Mail (2.3696.120.41.1.3) > On 8 Jun 2023, at 20:33, Andrew Cooper = wrote: >=20 > +type arm_physinfo_caps =3D > + { > + sve_vl: int; > + } > + Does the OCaml side need to know about the structure of this value or is = it enough to pass it around as an abstract value because all logic is on = the C side? I assume the OCaml side needs at least a way to persist the = value and hence needs to know some representation.=20 > Store_field(arch_obj, 0, > + Val_int(MASK_EXTR(info->arch_capabilities, > + XEN_SYSCTL_PHYSCAP_ARM_SVE_MASK) * = 128)); > + What is the =E2=80=9C* 128=E2=80=9D achieving as part of this encoding? =E2=80=94 C= From xen-devel-bounces@lists.xenproject.org Fri Jun 09 08:47:21 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 09 Jun 2023 08:47:21 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545660.852158 (Exim 4.92) (envelope-from ) id 1q7Xlx-0001lj-Qd; Fri, 09 Jun 2023 08:47:05 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545660.852158; Fri, 09 Jun 2023 08:47:05 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7Xlx-0001lc-Mo; Fri, 09 Jun 2023 08:47:05 +0000 Received: by outflank-mailman (input) for mailman id 545660; Fri, 09 Jun 2023 08:47:04 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7Xlw-0001lW-8Q for xen-devel@lists.xenproject.org; Fri, 09 Jun 2023 08:47:04 +0000 Received: from EUR05-DB8-obe.outbound.protection.outlook.com (mail-db8eur05on20609.outbound.protection.outlook.com [2a01:111:f400:7e1a::609]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 33013df1-06a2-11ee-8611-37d641c3527e; Fri, 09 Jun 2023 10:47:01 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by AM8PR04MB7890.eurprd04.prod.outlook.com (2603:10a6:20b:24e::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Fri, 9 Jun 2023 08:46:58 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.039; Fri, 9 Jun 2023 08:46:57 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 33013df1-06a2-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=kXoFrJZTsbhYe0/9NSH+0/Aq4egnRVW7JO8lA/YTFoXQf7qWocbnnQ4+NkI/cdPzzGJczE9cdx0FmDwyGX02SYdux8obgYvOBV2FuQ9+aGIl6N+VAMDhMhCCtS3/FLZT9k95PNR/1SSkKOURM2+IpALt767X0oQ9N823ohLmeBNM2ZqTIxqzok0B0NIRMl0lAXrBKujYxLXgwwiqWy7Q6cwYc6SwmZ6D0K3U4xdOH94sqqH4CtEz+zYIWVC6P3I8t4IWHAs3GOEfSZdo1vGkqHBD9lLBou0py3jnu1OYQB9/d2+8iVKGosTItlrFH49BoyvO0Jf4j6MdT0jia90srQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=z3Z4MVVfumThxoDxqxipl3niLROoLu8PrxF0ZfFefZ4=; b=I2JNe3amJwgRUOD4VOXmzQr6tALwXLuKeOQRR7pwgMVSF9DIA+Rd3qH1vY0WqDqy0X7efAGG2tGcH2vNExK83Yhpz+lZ2yEswqiZ1bkgy4J7KqSAjGYc7QGwikeLpoCRHDCjyUnOfjjZCtvNSZSxpXrAv3b605EmtkrzuKWV6JLSmt/GbdfXbf9wcO3FiQIwBUzauvHnkaBcxwLGtPn3Sq8CgTL/GWD1wQVqpWkmqVaVRIWLxZKiJQSG/gYQ7Jk3pmGderezF+jAixdN07U94oEfP/OTdRAgjYk0Snwfz6GiQ9ITLQqn/wZCyIrflqdzZ6Hotclvo3IkROLiJOTyYw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=z3Z4MVVfumThxoDxqxipl3niLROoLu8PrxF0ZfFefZ4=; b=avfhfu4Dixmub39I9NQET8a4iizhfgG1gb2WcYgtSPPQ5uTyAiCa+QGCtny0Tvd8x5F+VJjLqqKPuIWecyT6Uf3mVj+lecOepERoF7d6SZYBD67sgQaV9C/hnWqlw+NeS+7Dd95B4bE6I7wkRTHpp3/ztnVa40I34yzf576HNpNgZvzWQd5T0pcDrUQGhvY7JUtreOJdACnIu6WYyFcENPgs3k2j6hh+5cvTS5IoxJoZQpt5XvVab80gYsrQdGGwD2wyNpUJPEqVc1uOKS4+Am77Enwl7U9m5RHOY+UPsiurjd9uZqT706IdZ9jKh2LqpxlQc9Ex0hgrbKZp30WTeQ== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <6a8f2634-8580-e757-c57e-821387642fdc@suse.com> Date: Fri, 9 Jun 2023 10:46:55 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH] docs/misra: new rules addition Content-Language: en-US To: Roberto Bagnara Cc: julien@xen.org, andrew.cooper3@citrix.com, roger.pau@citrix.com, bertrand.marquis@arm.com, Stefano Stabellini , xen-devel@lists.xenproject.org, Stefano Stabellini References: <20230607013810.3385316-1-sstabellini@kernel.org> <955f134b-75b8-f8a4-2e02-ae6def536ffb@suse.com> From: Jan Beulich In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR2P281CA0013.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:a::23) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|AM8PR04MB7890:EE_ X-MS-Office365-Filtering-Correlation-Id: 0fe2852a-e042-438d-7475-08db68c61544 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: TdwIC5nGdE8r4JEJWCZhi3UmjjfldbyHF2Hgyl0IlY5I8CJLDHKMqEFPfWFcLCawh79xpOm8SOd/0qd3WFaHsWIyV9DyczlK8lgkPXJ6HFgfcOcrIq6osYveHh6iuVa1tV2KRLMG6ljrQYIGUi40Ch2O2zpNvCxeV2pvpphVzm6XMib4s862a+TNntpZw69gCk4huXdB8vVT0Wn1YuI5Bdrj+HBnISwL9Ff0c3Q81bSdriTY6/rO97Q+7/zx4zZPAQ0SDhJu4u3f3JTXZ48CEc6A5Oj6lv2gprNfEsSVqDZEdxD16vUcs2+nqFUmFRmYFq7f5XonOnto4V8JFFS14TJy3/WlIE7ap5gVd/6aRzwE1ubm7aHnJI2o0tSQvUMNYqCB/9V/Ho8b3Ycm0V5l8mebOYPd5RbETXQ05Vh84UJWY2+CzDsh96jRuSHJmZsj026YEGxUi/gHTdMv34YkKowoumPSLizzRKCP9h3G4wSWWr06X2IVzXSPy/Y5iCYWwN5MO+F26ZtoRvDOTBzJMddLlI8D7040KDH+QjD1QF6sGhneMxOBS2nZLlBVuKb5uf+vPJ7eu7CbpMa5rSAgE8rQuPdhbjH3cTicZ3kbEKGwYZhf8rpxb9ihwf6ZwimTHXTUuRvCfIjeyKIgE6cmLw== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(376002)(396003)(136003)(366004)(39860400002)(346002)(451199021)(6512007)(6506007)(53546011)(26005)(31686004)(186003)(2616005)(83380400001)(66899021)(66556008)(2906002)(66946007)(66476007)(6486002)(5660300002)(8936002)(8676002)(86362001)(31696002)(38100700002)(36756003)(54906003)(41300700001)(478600001)(316002)(6916009)(4326008)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?bXdwUHBscVZ2bnY5NzNNQzV5Rm5OMGxJaDEzdlRRV1RoSEMvZG1ldFgwRTlK?= =?utf-8?B?WnM2eTBDTHdsMmtZUjdMYUtsWkJGZ0pMTmVONjBxWXN0cndvM3FaU0o2Zi9D?= =?utf-8?B?RjZxajgyNUdoeXZka0M3b0RVU25XSGxEeS9uRStRcnR1aks4M0E3dERJS0Yw?= =?utf-8?B?VGNWRnJ6ek9jVXFSTkVNTTJXUFlRclpmVFdZQ1hxN1dGK1QxR1NKVTR2c3VR?= =?utf-8?B?QTBJUndDNHNSQUZEUGFhNTNoZjJCUENyL3VlejRMUkxBSFpKRnIxM2puSU54?= =?utf-8?B?OHo3Q0FtNEVSL1JWc2d4TTJuN2IyOHlYRHRVUU1Ca1dFNUFwamRhcnpEdXo1?= =?utf-8?B?UGltWmx0UGpDaHpGMHhjVFNQcmRqRzVVMG5iTXhybkhXVHpWSndNcVhUa25V?= =?utf-8?B?Rzh4bDBRZmRpSlViVU9vc0V6ZUxaWnpyVGhzQnVVeWljQ1ZheWtJT3BTSE4r?= =?utf-8?B?cnBXMXdKRTdEbUhWUkxFdXN5d25CNkIyNGwyZXZreHkzNjEwRVk4bTFTMXhy?= =?utf-8?B?ODV4RDFtZUxnVFIrVE5FbkJBVENocWpTanI1OFBoQ012dXc5RFJtY1p2emhm?= =?utf-8?B?ZUJhc2FDVFpzb3BRU2pBNUEvN1FXTzVNR2ZyT3RiaFI3enN5K2phaHE4NzZ6?= =?utf-8?B?b25IWjIxeDJ2QWk3WnZMUlI0QlJwQ3pWTE5qbXJ2SDJKRkt1L0doK0ZpSmt0?= =?utf-8?B?bEk2VWR0OTFYSkdGRjFRek96eGlxVVIwYUJPTU43Y0VZRXhIVHhNRGFoNHJN?= =?utf-8?B?dTM2UkhDNktWSlg3SUc4Z2dSeTd1TEY5ZWwrSWZpbG9tVXNQMGRXM29sdkJl?= =?utf-8?B?UjkrQ3pFdFRnamNjOHR1clNldzh2Slp3UUk5cnYxWmlad0xMUUtZbndNY1U1?= =?utf-8?B?TmNrSlZLOWovQ1EvcWJYZnlzNmtzQ2RHOGp0KzRDcmY2aUhtaEV6U1FNTjdW?= =?utf-8?B?K2lodE5uS1NtTkt1ZlRpOEJraG5WVGlDS1RZc0hlMnRrdlN4QzVVZlN2ZEUr?= =?utf-8?B?dm1kSzU1N05jL3JINUF2MTVkazlQMTl4dHoydVlDMXhSbmJTMTRwTFE1VGZH?= =?utf-8?B?L2VNUm9TOSt1eG4vUUREUlpaak96ODhEdGtUSm9uM0oxMW55S2xyNW9VRU50?= =?utf-8?B?MnpISHV2TXNiUjBWMFczTytuZm5sZHVISjlDbXlVK1ZDdmRLdmdra3VGK0x4?= =?utf-8?B?cDlIYlJCTDJuSldTYjZycXBURFBZZ0E0c2JsRzJTOVZVWnRnM3lGRy9iajVy?= =?utf-8?B?c25rUW5KWExTczJNd2tTbVErT3FYWS9QZVNmb29GMlU3YTM3SmF3Tlo1Tnhr?= =?utf-8?B?YVM1cHY2eGtiRWVReHk0djFSTzlWOHBhTGZUakVwaWlDOEdDanFWQk9jZEl2?= =?utf-8?B?WWR0YzJIUWg0L3Y3R0VOcHlBZ25xTXR4M01Gdlk3SGNSdDRyZkh1ZmM0SVdx?= =?utf-8?B?V0FNM2NlTXB1elpPZFZkcFNzclhoMC91dFFLN2o5OHlJRUdZUTg0QUNxWnQy?= =?utf-8?B?bUlFL1ZnSmpJUjJubDBLd0gwaHNORDIremtkazNoRDYvaTJoNDhHZTNXaU9t?= =?utf-8?B?MkFtNHdOU09LdHN1dmhoN3JNMmNTSm5ZNHpYRWRKSGtGYXd6WFNzQmlrTW5j?= =?utf-8?B?dnJZcmx5d1JGZU52cEtUWmxxVndJMWVrMEZBcDREQzJNdkJsRmdPbTViaWFy?= =?utf-8?B?S2xaR3JLTmE0QWkxL09ydmI2N1FyMzM4WE0vcWVPYjZBL1VFY28wdG9IY25n?= =?utf-8?B?UlNtRDRkQWdvejUvYXlDWkVSU1NWdXBOQ3VGeVRRZTFWcGZPZVRrRFBpTUgw?= =?utf-8?B?bkJSYzhFeU90L2d0blFPbmJvZnZzYlNmczdobWxsV25uUWJQbEhYRTdIMXdF?= =?utf-8?B?R2hXQW9xQXFhdVU4WjdWK1ptMWxaVXVpdnV4ZTdxaUZJdFVYWEpWa3VDdEMv?= =?utf-8?B?M1kxWU5YTllsL0RjMXNJL3RTTGVnTlZGcnNxUDJicmRENk1qZkRlNm5PTWVR?= =?utf-8?B?WTU2ZndwVTcwMW5mVDNYQzRBVzJ6TjlKSG1NakhSSVJwelNUbFRVTTN2TkN4?= =?utf-8?B?QXJrY2NuT1JDSkZoZjg3SDcySFY0OFBzbzhDR1Q3QlhjVTRFd00rSk5VZlNl?= =?utf-8?Q?p2wOLhZqLXw2OinPUec7F05gk?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 0fe2852a-e042-438d-7475-08db68c61544 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Jun 2023 08:46:57.4353 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: bm3hwZ8CH5L/zT/VNHWRI8ZKf0MpvnqPADwhqaRHKV0mnbWCeKPLj5n8n4mB4MXn7w7F/jGJ2eaXqi+33N2bxQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM8PR04MB7890 On 08.06.2023 13:02, Roberto Bagnara wrote: > On 07/06/23 23:53, Stefano Stabellini wrote: >> On Wed, 7 Jun 2023, Jan Beulich wrote: >>>> + * - `Rule 5.6 `_ >>>> + - Required >>>> + - A typedef name shall be a unique identifier >>>> + - >>> >>> Considering that the rule requires uniqueness across the entire code >>> base (and hence precludes e.g. two functions having identically named >>> local typedefs), I'm a little puzzled this was adopted. I for one >>> question that a use like the one mentioned is really at risk of being >>> confusing. Instead I think that the need to change at least one of >>> the names is at risk of making the code less readable then, even if >>> ever so slightly. (All of this said - I don't know if we have any >>> violations of this rule.) >> >> I don't think we have many local typedefs and I think we have only few >> violations if I remember right. I'll let Roberto confirm how many. This >> rule was considered not a difficult rule (some difficult rules were >> found, namely 2.1, 5.5 and 7.4.) > > There currently are 30 violations for ARM64: > > - some involve a typedef module_name (in the call it was said this should > be renamed module_name_t, which will solve the issue); > - most concern repeated typedefs (UINT64 and similar) which are repeated > in xen/arch/arm/include/asm/arm64/efibind.h > and xen/include/acpi/actypes.h > - ret_t and phys_addr_t are also redefined in a couple of places. > > There are 90 violations for X86_64, for the same reasons, plus > > - another set of typedefs for basic types (such as u8); > - repeated typedefs for things like guest_l1e_t in the same header file: > > xen/arch/x86/include/asm/guest_pt.h:60.39-60.49: > for program `xen/.xen-syms.0', the identifier for typedef `guest_l1e_t' is reused > xen/arch/x86/include/asm/guest_pt.h:128.22-128.32: > for program `xen/.xen-syms.0', the identifier for typedef `guest_l1e_t' is reused > > The indicated lines read as follows: > > typedef struct { guest_intpte_t l1; } guest_l1e_t; > typedef l1_pgentry_t guest_l1e_t; So this is an example where I don't think we can sensibly do away with the re-use of the same typedef name: We use it so we can build the same source files multiple ways, dealing with different paging modes guests may be in. Jan From xen-devel-bounces@lists.xenproject.org Fri Jun 09 08:48:45 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 09 Jun 2023 08:48:45 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545666.852174 (Exim 4.92) (envelope-from ) id 1q7XnO-0002N0-GQ; Fri, 09 Jun 2023 08:48:34 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545666.852174; Fri, 09 Jun 2023 08:48:34 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7XnO-0002MO-CS; Fri, 09 Jun 2023 08:48:34 +0000 Received: by outflank-mailman (input) for mailman id 545666; Fri, 09 Jun 2023 08:48:33 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7XnM-0002Ik-QH; Fri, 09 Jun 2023 08:48:32 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7XnL-0006Nf-Om; Fri, 09 Jun 2023 08:48:31 +0000 Received: from 54-240-197-232.amazon.com ([54.240.197.232] helo=[10.95.166.95]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1q7XnL-0007RR-IX; Fri, 09 Jun 2023 08:48:31 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=aqFy0pQ6nOJyxXES3DP4OG1nlgIw/JzaB4f7+GcMv2U=; b=BdrNBqpt747BJZx3Aq0795Fecp 9p0fP0Kx2dO4Jx2Oj2UJ5eyOD04Ztuym8FA0spobomSfIPubdBQgyFDWPFq+4lCmZPmdpAuc60xy0 rByVHOBgJh8jQcCZvkRGLxriMl/peaa3cnCD6L/dWkMkttPeyL9X0yogS2kNYdfR995Q=; Message-ID: <78899eac-9de8-3626-8f40-98f993984f95@xen.org> Date: Fri, 9 Jun 2023 09:48:29 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: Asking for help to debug xen efi on Kunpeng machine Content-Language: en-US To: Jiatong Shen Cc: Stefano Stabellini , xen-users@lists.xenproject.org, xen-devel@lists.xenproject.org, bertrand.marquis@arm.com References: From: Julien Grall In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hello, On 09/06/2023 03:32, Jiatong Shen wrote: > Thank you for your answer. Can you teach me how to verify if acpi is > enabled? You usually look at the .config. But I am not sure if this is provided by the Debian package. If not, then your best option would be to build your own Xen. To select ACPI, you want to use the menuconfig and select UNSUPPORTED and ACPI. Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Fri Jun 09 08:54:58 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 09 Jun 2023 08:54:58 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545690.852195 (Exim 4.92) (envelope-from ) id 1q7XtR-0004le-3o; Fri, 09 Jun 2023 08:54:49 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545690.852195; Fri, 09 Jun 2023 08:54:49 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7XtR-0004lX-0o; Fri, 09 Jun 2023 08:54:49 +0000 Received: by outflank-mailman (input) for mailman id 545690; Fri, 09 Jun 2023 08:54:47 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7XtP-0004lR-4S for xen-devel@lists.xenproject.org; Fri, 09 Jun 2023 08:54:47 +0000 Received: from EUR04-DB3-obe.outbound.protection.outlook.com (mail-db3eur04on062e.outbound.protection.outlook.com [2a01:111:f400:fe0c::62e]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 4777f48c-06a3-11ee-8611-37d641c3527e; Fri, 09 Jun 2023 10:54:45 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by PA4PR04MB9270.eurprd04.prod.outlook.com (2603:10a6:102:2a5::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.39; Fri, 9 Jun 2023 08:54:42 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.039; Fri, 9 Jun 2023 08:54:41 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 4777f48c-06a3-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=PYGav2Syd7eBIxdqT7kpVXKUD8iJWZU3zbz0lYWq2XtH2RsSDEtuGz668ySB+xDXGXsZrUXC70pxC2fACdya8XzXyPcjP3Hi1DWqIad4JDsIeXlg134yTmyAZZM1R9RMIivHUj63GWRkLSMjcd9Oc3hqm7c8UqREzfcGCu3lsQm4AcZjP8KQFwOMWbF+jAwJZRcZKSp3EU66BA5+szSIU/fvY3xg8TjJkfXkuXOuzjJwgLx8i9enJPSsNHGxi7RoLB5IS6OR3A5WPIjQmES96KSSboIKyuI9cNRPq1I1Z21LVzxZGJ4TMiCswoPtkKkNJ9kEKREr8Ro6uhFyDmG/qw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=VE1oF5I5wbN4sICMzWI5ENwPeCVLgxBi+LEDXnKy5Vw=; b=nuBVhTSmQaJRe31MSjxwivDa8x5Zz4cAYUEtBHcb8hdhoZ74iwuWERYHT0/WnDnuleriKlLrGAyNri4AmrsGXWA2P6byC+4pGOU1ahu4JsJxmP5d5/hCct9ahlLfcvgs7EuicDk3RpKwSwJZ3zGoAyXjZtjrxcQy59DqzfECxTaGMsBUK2A8LlpPIc0dN7dLFKK6v0mClp/zhsVf+Dcp46AZdpwSD9XuPeCEJH2aoXUxvdffUmKnwvqzFS8g2VLwZj7WG55uculxDinTBh8uPObxG5/Of1IvrgyIqQExHBHzc1EuKgmVyhZdwb8j8QTK0dGk+8kjOhxp171YoaMl1g== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=VE1oF5I5wbN4sICMzWI5ENwPeCVLgxBi+LEDXnKy5Vw=; b=K26MYiHOX3l391Plz79ItDh4ruEOm39Ksa85u149CzPaGjQEON5As1VwIf+p3RO+wQB0Ad7fZmi0o7ISXtSe37madVpE3r0ToPIAUnS743Yprf1LSBaIl6Z/h3etRdhwzlqABMeJqFGLhME785ibC3GxTbhpy2AxXdjeZn3xGqSW9U2tRZJ6ZNTMN21QKQsP0kj/+Whz9vmTTMxS68rVICSt4p9deZcy0Ej0Yd2bGEjP6ZwJix9tIJwc0WKdlQnpJFP1CGVPEI0vgDn7KVvl2wGTKY0dQACKKWEiadpw1TB2zryqw7LlLGF/4RLC2RgJ1px5XNxbWEw/KU5G2Nj5Mw== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <4f5e33e7-9606-2cc7-79ec-c03cc724b6c6@suse.com> Date: Fri, 9 Jun 2023 10:54:39 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: Xen reliance on non-standard GCC features Content-Language: en-US To: Roberto Bagnara Cc: Stefano Stabellini , "xen-devel@lists.xenproject.org" , "consulting@bugseng.com" References: <1cd359e7-5245-a621-3be2-9323ba5b327b@bugseng.com> <8314e0fc-4ead-40fa-ef7b-4da8ce0655b4@suse.com> <80a512ac-d90e-930a-7ef7-8ebb5a80e801@bugseng.com> <968ba799-8fe4-e22f-b678-64e52f789026@suse.com> <9df8560d-4b06-2ab4-b09a-30241dd19676@cs.unipr.it> From: Jan Beulich In-Reply-To: <9df8560d-4b06-2ab4-b09a-30241dd19676@cs.unipr.it> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR2P281CA0088.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:9b::13) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|PA4PR04MB9270:EE_ X-MS-Office365-Filtering-Correlation-Id: 58cfef7d-476b-40ec-c765-08db68c729a0 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: qLMS0h/Mf/OVK5Mcw5+2ZoFs0vpPpjtsIf+mXx2GBMF2yzY8P8LLHbt1WLjGyNwiANJajPvugm4Si1m74mIdF2fpMl9Wfae7P/g/wMl2+yqv0McZnT6I8bMJuAqMCUdHFjpoLHLCNhERY788ASSPnqktGqwtMMETIQw9qIKB8SnEPtAWP4bwdpJ69tYvBdx2cWmJD2PVZmlz/9nHsdXPgA0mx9Px+LM4B4fhzyd2JyURfi5fk43lGYMcSf6ZSEV7HGazy4PJNv19djvAkLBAhcxkD09uPaZGzgxMPCIzN6Layt/yMNiTd0CAesozrNBkqaP359MkHWTi5hmkrFg/LRIvbBubXQCWOncIpf83By19IeYsxxF2dc9FUE7G5sjEFzZSQlS23A5ELHVcQ24pt4v54CWglqgvjm5C/J8hauh+DUcSZeysAxw6ZASLjyoLBMLC9Z+C6eyuNU7UbvgZjLbkLowYCG04kP/MkLLFBMgQY9FeDtxkEfraBRFN5EhtUaWjrABhLPfK+ENhtMhPx6LMtb/S9B/u/pZT4H+hDJiyjUmB9IBv6LJ35YqY+OCbEdtxYZG6ZihRzOSypSZDXHC1p0MNiG1jkPWmhu7wNngZ+F2csLDOjqHvwoFMc2VUkvIs8i/9S94vZjRXBCxbYQ== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(366004)(346002)(376002)(136003)(396003)(39860400002)(451199021)(36756003)(86362001)(31696002)(478600001)(4326008)(54906003)(6916009)(316002)(66946007)(66476007)(66556008)(6486002)(8936002)(8676002)(41300700001)(2906002)(5660300002)(38100700002)(2616005)(6512007)(26005)(6506007)(186003)(53546011)(83380400001)(31686004)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?bUxTTEFMMmxyWi9tVTNOLzZNL3VTeUh0aHVjOHRMQmpqM0Z0SFJJVnQvbVpF?= =?utf-8?B?SndoQitPNlVsdGFqMFowSG82MzlmNm5lZGZaODhieWh2cHUrejg5S2dQSXJI?= =?utf-8?B?OEt0TGg0U040bWlIbjh5TWFWM2JQVGZYTnJ5U1ErZ1RGSTJaUEd5eFlNc0tZ?= =?utf-8?B?RWZzQVdjVlArYjNiQWFwYlZINERHMTYzbnhBdFJqb3U5QjNBR0IwZ28yd2FC?= =?utf-8?B?azk5Y0hpUDdNS09SMGUyWFZ4b0RLemdNQnRrcGErd0NuR2NhcTIyQmxKdjJj?= =?utf-8?B?eW5PZytIT3VXVGEwdjBXWDFxRGwzTG5XeW5LOWs0UjZYUm9sTjBIMHMxMTFq?= =?utf-8?B?UVpaUGN6NlRwV0NUZU1GajVTNlVZa1ZWSDJDdkZMVSt5SWpUWGpFMW1ZcHNj?= =?utf-8?B?S2tpaEI0ZnBBZWdRUXdUbk4wbUtDNzBqWFRDT0p1bFFQYkgwQk1NelpPcjhj?= =?utf-8?B?NlJrcUl0SHdUTk9hZkM5ejhnV1BxdlI0Zzk0eFZpdGoyUUw1cmw3YXAvUW40?= =?utf-8?B?aXhEdThhUXhweDM1aW9CWXdHTVJ6MTJZalN6YXNSRjNjNis0ZmUxNWZrRys5?= =?utf-8?B?MElHQ1dZR2g1WWZ2cVFKMkNxNEZ5dS9QdXVPeVlFcFNrYzNSMHpxazVsYUMv?= =?utf-8?B?S29Xd1hNNFU2QzFQMjZvWVU0Y1RoSkNqK1I1M2tlNEdmdkFtSFR1TjFJSHpt?= =?utf-8?B?b1dZZ3phMVkzRXRuLy80ZVFvS09ISTRVUjlzc2MrbXRsQkNLRkR6b05oUVBq?= =?utf-8?B?bkYrd1dHSXZIWjdWdEQ4T3drcEkzYm9WcCs3NUhNTk4zQ1lETjdmUWIzTkl2?= =?utf-8?B?MkhMRXBzRW11MU5kZFJpbElaT2RtVFpYL3A3cmNCVWRuYjZSTDhyRldsd29H?= =?utf-8?B?Q3gyZHkxZk04RmxyTjZBcnZobHhYYmlKNTg3VmROc3IxYTRLalRnU2VFbnZE?= =?utf-8?B?amdUNVNDOGFSSlBTcWMzdk1BYjQ0ZDhtRWxiTnFqcmlyL2xHTE5HOG16TGVx?= =?utf-8?B?TmlFQzVmOVJpTUpvOTE1OU9ON2pSb1N1SElnb2FBWWNxRExXQ1o0bnVvTlFs?= =?utf-8?B?bys5b05XNnpYbGJabkVQQktkb0ZXa0dxeDBBczFnZEcxWHROVFVpOEFIYmdj?= =?utf-8?B?Vi8yYmdYdkw3M3l4NDd4YytPM1UvOXlERkpaWHhRaDltQkMzVmQ0ZnJ4K2hD?= =?utf-8?B?OEZhb1RYRkI0aUFqbTU3ZWQzek1jaVBOQUYyUVVuUjBXZktYSzRheG1BR21i?= =?utf-8?B?Z3UvRG81b1J5ZDdrbkFVNUdEYlFYdlQ4VEFMNWJEWTFyMUk1Ym1UcEhjNFVQ?= =?utf-8?B?RGg5ellDUXlEUEhVbjdXSnRmS1hBU2FJalVqa0VZQjdVdFEwTnFPUWVUWmlU?= =?utf-8?B?SjhxNGIwQ0Z2L0x2YzVHYjFsV1RSRTBqdkZWK2o5MGlKSGdsSUhKNW95aTZl?= =?utf-8?B?eDR2VEFzMW5IR3NwVjdEblczZzVFRDNTY1NwbzlORnpyamJCZk5udzVJQ0tI?= =?utf-8?B?OU90RXBCdVp0TEhuK2FzNmg2OGEyWExRdFc2NktRWlQ2b2t5SW9rZHh4WnIz?= =?utf-8?B?Z1MrSEZLZDRJdlEzQjc3WlM0bUI0dm1WRWI1K3NUQXFNU2ZJMzdzMm0vamlU?= =?utf-8?B?QU9sRUpNR2JtVGRMS2dDeTZHcG9NVGRMa2t2YW9HMURZdTJBRlRZRXdzOWpV?= =?utf-8?B?YStFZi9ETTlpRVh2VDVQQkhXMkVyQVFXbnQyVnUxbHFoWFNCM2w2TDlaeW13?= =?utf-8?B?YWM2K0E3RXIxY3V1ZkszSTBmbEhwSExOSndZdjBUWjRRRWhaSFByZm5tbjFG?= =?utf-8?B?VGJud1czUjMxZWw0LzFGajZPZUVFaXBQeWo1ODREWExmSXdFT2F6dDZuZGE1?= =?utf-8?B?YVoyaFR6M0xhSkI1STJxcUlLaU96VWhjUXU4UitEa1gyeE1pdWNPU1RTL2dQ?= =?utf-8?B?U2RvSXFFOVd1YXNzbVdEQTRDd21NTHV3UGo3VkRkVzVsNzZXV3hnbUt1Wldh?= =?utf-8?B?aHBPVXVHZHU3djE5MVhiZ2cyUWt6NnpmQWNmNlV4RTU1MVdqcW9EbDhIaXFN?= =?utf-8?B?R3E2a1ROVnZaVHBsY1BQTFpRZVhqeG5STUZqcVBQZW15MTAvbG5EN1FheG43?= =?utf-8?Q?TDV0WwUW0s6bCmYxg2QGI1a7Y?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 58cfef7d-476b-40ec-c765-08db68c729a0 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Jun 2023 08:54:41.0663 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: Qny+jqD4z7O5fKIuK1iESa1mlfnXlKOkR6pLDm0uBikTFuwLLAPxAE5HEen4vE6Ekz3aCCZfIU8pdqBdoWaCYQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR04MB9270 On 08.06.2023 14:18, Roberto Bagnara wrote: > On 07/06/23 09:39, Jan Beulich wrote: >> On 05.06.2023 15:26, Roberto Bagnara wrote: >>> On 05/06/23 11:28, Jan Beulich wrote: >>>> On 05.06.2023 07:28, Roberto Bagnara wrote: >>> You are right: here are a few examples for U2: >>> >>> xen/arch/arm/cpuerrata.c:92.12-92.35: >>> empty initializer list (ill-formed for the C99 standard, ISO/IEC 9899:1999 Section 6.7.8: "An empty initialization list." [STD.emptinit]). Tool used is `/usr/bin/aarch64-linux-gnu-gcc-12' >>> xen/include/xen/spinlock.h:31.21-31.23: expanded from macro `_LOCK_DEBUG' >>> xen/include/xen/spinlock.h:143.57-143.67: expanded from macro `SPIN_LOCK_UNLOCKED' >>> xen/include/xen/spinlock.h:144.43-144.60: expanded from macro `DEFINE_SPINLOCK' >> >> I'm afraid this is a bad example, as it goes hand-in-hand with using >> another extension. I don't think using a non-empty initialization list >> is going to work with >> >> union lock_debug { }; > > Yes, this is C99 undefined behavior 58: > "A structure or union is defined as containing no named members (6.7.2.1)." > > Here is another example: > > lpae_t pte = {}; > > whereas we have > > typedef union { > uint64_t bits; > lpae_pt_t pt; > lpae_p2m_t p2m; > lpae_walk_t walk; > } lpae_t; > > >>> xen/arch/arm/cpuerrata.c:678.5-678.6: >>> empty initializer list (ill-formed for the C99 standard, ISO/IEC 9899:1999 Section 6.7.8: "An empty initialization list." [STD.emptinit]). Tool used is `/usr/bin/aarch64-linux-gnu-gcc-12' >>> >>> xen/arch/arm/cpufeature.c:33.5-33.6: >>> empty initializer list (ill-formed for the C99 standard, ISO/IEC 9899:1999 Section 6.7.8: "An empty initialization list." [STD.emptinit]). Tool used is `/usr/bin/aarch64-linux-gnu-gcc-12' >> >> Both of these are a common idiom we use: The "sentinel" of an array >> of compound type initializer. > > Wouldn't it be possible writing such sentinels in a standard-compliant > way, like {0} or similar, instead of {}? I would be possible, sure, but the question is whether we want that. Iirc in review comments we've been asking to preferably use {}, for being shorter / less clutter without resulting in any ambiguity. >>>>> U6) Empty declarations. >>> >>> Examples: >>> >>> xen/arch/arm/arm64/lib/find_next_bit.c:57.29: >>> empty declaration (ill-formed for the C99 standard, ISO/IEC 9899:1999 Section 6.7: "An empty declaration." [STD.emptdecl]). Tool used is `/usr/bin/aarch64-linux-gnu-gcc-12' >>> >>> xen/arch/arm/arm64/lib/find_next_bit.c:103.34: >>> empty declaration (ill-formed for the C99 standard, ISO/IEC 9899:1999 Section 6.7: "An empty declaration." [STD.emptdecl]). Tool used is `/usr/bin/aarch64-linux-gnu-gcc-12' >> >> Looks like these could be taken care of by finally purging our >> EXPORT_SYMBOL() stub. >> >>> xen/arch/arm/include/asm/vreg.h:143.26: >>> empty declaration (ill-formed for the C99 standard, ISO/IEC 9899:1999 Section 6.7: "An empty declaration." [STD.emptdecl]). Tool used is `/usr/bin/aarch64-linux-gnu-gcc-12' >>> >>> xen/arch/arm/include/asm/vreg.h:144.26: >>> empty declaration (ill-formed for the C99 standard, ISO/IEC 9899:1999 Section 6.7: "An empty declaration." [STD.emptdecl]). Tool used is `/usr/bin/aarch64-linux-gnu-gcc-12' >> >> I'm having trouble spotting anything suspicious there. > > The macro expands to definitions of inline functions > and after the macro invocation there is a ";". > > The preprocessed code is then: > > static inline void foo() { ... } > ; > > where the final ";" is an empty declaration not allowed by > the C99 language standard. Oh, I see. > Removing the ";" after the macro invocation is a possible solution, > but other possibilities exist if this is strongly unwanted. We have other macros to instantiate functions, and there no stray semicolons are used. I think this wants doing the same way here, but it being Arm code the ultimate say is with the Arm maintainers. Jan From xen-devel-bounces@lists.xenproject.org Fri Jun 09 09:04:36 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 09 Jun 2023 09:04:36 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545703.852205 (Exim 4.92) (envelope-from ) id 1q7Y2j-0006Ne-4j; Fri, 09 Jun 2023 09:04:25 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545703.852205; Fri, 09 Jun 2023 09:04:25 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7Y2j-0006NX-1l; Fri, 09 Jun 2023 09:04:25 +0000 Received: by outflank-mailman (input) for mailman id 545703; Fri, 09 Jun 2023 09:04:24 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7Y2i-0006NR-73 for xen-devel@lists.xenproject.org; Fri, 09 Jun 2023 09:04:24 +0000 Received: from EUR05-VI1-obe.outbound.protection.outlook.com (mail-vi1eur05on20612.outbound.protection.outlook.com [2a01:111:f400:7d00::612]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 9f2ebd38-06a4-11ee-b232-6b7b168915f2; Fri, 09 Jun 2023 11:04:23 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by DU2PR04MB8885.eurprd04.prod.outlook.com (2603:10a6:10:2e0::23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.38; Fri, 9 Jun 2023 09:04:18 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.039; Fri, 9 Jun 2023 09:04:18 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 9f2ebd38-06a4-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=dR1cz5sLILX3z0BcAcNiuXdOVQCB5lh4m9uEnrUMZYI/rCXdFoylIJPsHqTsplmLF131ZYRK5SwoyNqcGifTzS/HCK1qT9/ctzqBgySZ4VpSHY2TJ15KXfsp9t/ydg4yJXzMLcSDV1jK9jTBT1m3RG88y0XOwQl4w6cKKSCZ2h8GC2MVXDVCaiQaiAdJRsHzprKKMSf4X6EPrXPuXfK6yenJaf9iXJHT9IUNyaSV9jO1+y5BAVr0vphJz13zJGDaM9LZlYJwFavJtZlgGXZiRHoNtFNxVR5oiKby7WusRg4kvWgOpCP9tN684H6SC+OnNhvk4DNzvmGCEOBb++2A7Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=/BqDHaZVdTMlAiI0cCvelxjHso/HKHC46qE1Me19eFg=; b=ENEv9bsM89z6D4jmTpUNHnDL6ESeFpZPGPCI52KSJttm7h33YeQrwQFJQ1WDierdQufbEmAZSAk3LjCg2QPv7JiTSCZytgvA/k5QzJ4SWgXEfet3lcXucEXcZJ+7oXXeY3XPaRYNohfJx0nWDEjofmwRXYq7Tj6qhhe8NVkWNL1xkg4QY9MtPaSGBLaBoImAylL39p0Xdl9VO1h0p91orp7SNkIqSZX0wk9xZOo4QkUVpXMFDy3yxN/ybZiLhHIIBqh2xhmI9KD3IhK8xnJL90xsHEE4BgeH6L7VrP8Oy8y+gGmL8uhCc+VlFW7W1KaLhUN4nROKcgoxTBKMUJYGQQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=/BqDHaZVdTMlAiI0cCvelxjHso/HKHC46qE1Me19eFg=; b=PQ15oR50JX5ivznwtlKui4g8SLaklqx83YmCpep4CYNRKg/CcRvX0MMgWcEdll0NQ4kI+oAftLThLUx4XXjnMjC7JIDx/cHlEAxmQ+EIamSrh8oFgvnBoTHu6ITqR9AVFBuoYK1vqgs15eKk1Fje1ShBEvNb+RtZk9R65Quw4JQsuAabOCtTG9q4pzIo9GVdrW8MgNt5KZY3+2snhaeIw/b7py3ddW0pT5HPBhKU6gjOLtRCMzFK5y/L8OIa4/joNt8/hRm2AEWUnj/HE9tFapMMNnDfeSaDn7ntphkTsaBxTMLhmBAuJBINITq5aJz1BmgEnrswMKxdPsDJfsgKMw== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <3ad44f3b-587f-07e6-4601-59b961954c9d@suse.com> Date: Fri, 9 Jun 2023 11:04:16 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH 3/3] maintainers: Add PPC64 maintainer Content-Language: en-US To: Shawn Anastasio Cc: tpearson@raptorengineering.com, Andrew Cooper , George Dunlap , Julien Grall , Stefano Stabellini , Wei Liu , Shawn Anastasio , xen-devel@lists.xenproject.org References: <2ec38b52d944919934b2326a1924200aa954008d.1686148363.git.shawn@anastas.io> From: Jan Beulich In-Reply-To: <2ec38b52d944919934b2326a1924200aa954008d.1686148363.git.shawn@anastas.io> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR0P281CA0047.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:48::18) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|DU2PR04MB8885:EE_ X-MS-Office365-Filtering-Correlation-Id: a62fd179-baa0-46da-0b43-08db68c881a5 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: fBx1n1FhF7YS/ij54HnSZr/qEQIb/PtlsdS/woqEmdRtl+IwBMmSAs3ou5MuLDyrICN1/+S5qVEverrqou5hQ8nrShvDHlCumZ9saxKIfXZrbAbFe4wmaef37x2Oi/KifmE6dOVAl3fMA3jgzjn7A94Wcu3SQAmJo1odmaDB8Ou7OuuZtdv9nru28Y52793mnir7wWgaFvJuXm7idqOyIvEmWdUv+v0y48PNFods0B1DXADGWI3rjEffuEJ590rhDcNY3lYDqv7pJ8/JAGGPQC1org7l1BTDMWLZgLmt8HB7Vr/jg+RzzQ/2Ws/09c6CEwYPETT4pz8BpyNO3sPncD2nEVWTvJ8mI+scpfBGWZxhl97ET6IVKg5jDv0RBADQxBJRBRgh2b6HQz75PHqNqxDvVCp0EH2Mv7kuGo4nljSMvQLXfcLhdM3ONjf0yMJTnQ5zpLu7ZFZWD5c8jJhmw1dPiYy1I/SLL+/58KiABYAZ/L0SECAMrBmLJLu4ycGtrDnKIMi5SdOF5IpQR2gVVpmo1AiojJY0G6daS5zKNaK5p4i+DUxmY7BGqwAfldCEScSVaW2qlgOxNkDbcz9UukxmjH1qCB10KlA5Vuh/XFPXtSkwcMZk5YPFJ4IF0d0xo52vR2Fdhg7oJTyM5XdxMg== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(346002)(396003)(366004)(136003)(39850400004)(376002)(451199021)(31686004)(26005)(186003)(5660300002)(41300700001)(53546011)(6512007)(6506007)(36756003)(66556008)(966005)(66476007)(66946007)(4326008)(478600001)(2616005)(8676002)(54906003)(8936002)(31696002)(4744005)(6916009)(86362001)(6486002)(316002)(38100700002)(2906002)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?RUVuVlB5NC9uTTdlRllYREFHVEhXUzI2a2dqTENiVHZ3ZllETWJWeFB2Rys0?= =?utf-8?B?N0l1M3BFejFCR1Z2Zys1dG8xYXhQNUdZeXhwNU1udFhWVGRRM3hHR0daSWhI?= =?utf-8?B?UGhrM0pNbE5STUZvNi9XL2lINDA4T1VYdkdTRFlSQWdyalpTRVFNR3QxVSta?= =?utf-8?B?MXRKQW1FN3k3SUt2Z2JQR3lQNFY2akRMZE9Xd3AvN0MvRXhaRUtZQWlXRGM3?= =?utf-8?B?b0IzNW5tRnp1S2xOVmlDY1k5blBURkpOSTFRcWR3RXY5NUQ2NmplR0pybkho?= =?utf-8?B?RGN6MWtvZEJSdk9ONS9kQjVUSUxMZ2dSem5WdFBmd3BWM1hzTW1XN2l1ZEV5?= =?utf-8?B?MHNUamkyc0tzMkd3M0huT1NNS1lNMGJmcElxTGF5ZW81dlZXb0xiYkUreHJi?= =?utf-8?B?d2N2eGtla0R3LysrNFoxRzFubGNJOVZRQ21mV3hRMWZWd1hxQlNqUGxZVXhM?= =?utf-8?B?Nm0yamZ6S0IvTUkzQWlyQW9OaVM3U2JyWVJ3cWkweVJ3Z2Z0b3gvRDYvanUz?= =?utf-8?B?ckRsMGxYT2VObm8wS2FMVUNFekRKeW9FQVdEWjJOdnNtRk1uY1JzSlNmbXNB?= =?utf-8?B?dUVERENFN3B6M1o1V2xqVklPMFB0ajZuWXNGdnBhVlRCTjZDWTlNcWxETnp1?= =?utf-8?B?aVF1SnRSRGhlSVA3Tkh5ZDNsanZEb0tlVWsyeEw2aTBhaDE0YmppR1Avc0RF?= =?utf-8?B?bklqS0NJNitucUY0MVNiME5Jc0tNZ0JUZEVMZ005eG5OQXRMRFpMWE9rUWtI?= =?utf-8?B?aEw1b0R5UCtlSWZ2TXY5Z25LUjREMG50dDNFUHFEZWlpMjh5NTVSbUFQMnhL?= =?utf-8?B?MUF4SWdCK2pzdTJRZlAxSlY2SEsrcHJya2pudzBaTlFiTlFZSDI5aVVGNzRP?= =?utf-8?B?WGFpTkpkZWxHaklGS21BWHZkc0trUFgxdlcrZTZ1a0xBOW1nQno0Um8wNzVs?= =?utf-8?B?VWtsanIveTBpZitkb3Erd25RKzUxa2E0VytkU2FlYUEwUXpUR3dyUlUvQVJs?= =?utf-8?B?emY1ZTIyTGJzK2J1dzlGcFFHRU52VFRHSzRKdkpFR3lTNURMTjRUUGhyUk1F?= =?utf-8?B?cWQyY2ZkbXZhWmZvWGRRRFVKaFZQUmxLZ2NrZnVISklLQmlYTjN4Q2RaOVhR?= =?utf-8?B?NnJ5S1oxOGxOL0k2UXhMOTJwY2VmRVlNYzQ5dVVlYU80L0R3bzAxQlRkaThR?= =?utf-8?B?VCs3SW9ldGRPK0dPMzJleXdPSXRNMldoVHlNbWRwK2tzcm1TTE5FZ0ZWN01V?= =?utf-8?B?SlQ0S2dva1J3M1pPTWhGVk5VTkVhYStMSE5iZjU2aldqUDVwdjJERlhiKzFR?= =?utf-8?B?NGVVQ2ttR004eGVsWitZREpkUjVaeTE0KzRnQkkxRkY3ck4xMlFxU0FyN1JD?= =?utf-8?B?SVhXd2thTUd0TVpIT1ljY0dQdm9PM3h1aVVHVllOZG1uNSsvcFNaWW1xSjJK?= =?utf-8?B?anJIc2c4QVc1VnE1UmhLTGNTRVdhRzYyT1ZacFFubU9ncHh6T2hPS3Jpdll3?= =?utf-8?B?RHRBY2RrcytWOGdpTi93aHlaVE5rQTNSWW1GRjhGeitPVmpVUnBmeXgrYjdK?= =?utf-8?B?VUxvbTFGN090MDZuMUZ3ejF4Y1lhNW5wbCtjbFJQZWZTaFRFeGRYcXJjMWl1?= =?utf-8?B?cDM3QWcxYlBSYmpNUFN3L0x4YWRoT0FkK1ZhSGUxZHhmR0xsMDhTTTBHSWdB?= =?utf-8?B?Q05FL2Y1c1RBNDZqNFhXWWs4QWQ5S3Ixd0piM0ttU3dXTDFjelpEMXQ1R2hh?= =?utf-8?B?UGdhRFJremMyZnFuS201emZVRXdhNUdUYWw3ZVJqY3VXWEFOWGh5N29RdVpu?= =?utf-8?B?SjByTnIyMUZIOGF2d0RTdE8yaEhYRDhCTndnWnUvbXlmS1RWbHE2VzFiZm1p?= =?utf-8?B?ZkZyOWIyd2JEOXdkSDFwUHpQV3lUV0ZJUkRGOEUzZVVRNkwyU1lkTkFidDF0?= =?utf-8?B?UmM0SXI0VDh0VVl4S3A1K3R6MlhjeDFoWDF4bjZjbmtVVkJGbk1qbk5tT3M2?= =?utf-8?B?Q0NmZitVdHk4ZisxOVB1WUk0QVRpaldOdGp3NXNMYm5xNGs2VmpuRlovMFRU?= =?utf-8?B?Ti9ieFllaTBGYXZENVdtTFdKS0llblNHdTJxQUMvc0ovQk1VU3Rjckpmb3Jt?= =?utf-8?Q?M/QDyJwAkS3NNjTH51C6hlLWt?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: a62fd179-baa0-46da-0b43-08db68c881a5 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Jun 2023 09:04:18.3133 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: bSOCQM6L6n4L6lOq1XRl6hcD+64gKh4NGlsFi42YMU+yaHPW3ZgUXA91oO604QnqYSO4JbARDw/jbD2Vy5s4HA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU2PR04MB8885 On 07.06.2023 17:06, Shawn Anastasio wrote: > --- a/MAINTAINERS > +++ b/MAINTAINERS > @@ -451,6 +451,9 @@ M: Wei Liu > S: Supported > T: git https://xenbits.xenproject.org/git-http/ovmf.git > > +PPC64 > +M: Shawn Anastasio > + > POWER MANAGEMENT > M: Jan Beulich > S: Supported Nit: You want to move your insertion further down, to maintain alphabetic sorting. You further want at least one F: line; see e.g. RISC-V's entry. Jan From xen-devel-bounces@lists.xenproject.org Fri Jun 09 09:10:56 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 09 Jun 2023 09:10:56 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545709.852214 (Exim 4.92) (envelope-from ) id 1q7Y8r-0007rL-Qi; Fri, 09 Jun 2023 09:10:45 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545709.852214; Fri, 09 Jun 2023 09:10:45 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7Y8r-0007rE-Ng; Fri, 09 Jun 2023 09:10:45 +0000 Received: by outflank-mailman (input) for mailman id 545709; Fri, 09 Jun 2023 09:10:44 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7Y8q-0007r3-0Q; Fri, 09 Jun 2023 09:10:44 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7Y8p-0006wj-Rc; Fri, 09 Jun 2023 09:10:43 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7Y8p-00010Q-9B; Fri, 09 Jun 2023 09:10:43 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q7Y8p-0004kr-8L; Fri, 09 Jun 2023 09:10:43 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=bYZdk7wU+S5HPD3c1tlJZYXDsWWHxV/ce+Zg7R7gdAk=; b=Iqv4Jci+y83rYpwMjFH1zyjizL /Dp3YauwWySf2wPuEyWRFsYcCa+aFw+b1B0CeY7sGBapZG+EfXrkTtyl5DBZcLQmxrg2BAau42BG+ Vp76/TcmUcnas/1CLDsgyJGkYeCbfmMvJZNJw8CazIIlryzeurn9O4gh+RkC5larDgfg=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [linux-linus test] 181320: regressions - FAIL X-Osstest-Failures: linux-linus:test-armhf-armhf-xl-credit1:xen-boot:fail:regression linux-linus:test-amd64-amd64-libvirt-qcow2:guest-start/debian.repeat:fail:regression linux-linus:test-amd64-amd64-xl-vhd:guest-start/debian.repeat:fail:heisenbug linux-linus:test-armhf-armhf-examine:reboot:fail:nonblocking linux-linus:test-armhf-armhf-xl-multivcpu:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-arndale:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking linux-linus:test-armhf-armhf-xl-credit2:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking linux-linus:test-armhf-armhf-libvirt:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-raw:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-qcow2:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-vhd:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-rtds:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-raw:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-qcow2:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: linux=8d15d5e1851b1bbb9cd3289b84c7f32399e06ac5 X-Osstest-Versions-That: linux=6c538e1adbfc696ac4747fb10d63e704344f763d From: osstest service owner Date: Fri, 09 Jun 2023 09:10:43 +0000 flight 181320 linux-linus real [real] flight 181332 linux-linus real-retest [real] http://logs.test-lab.xenproject.org/osstest/logs/181320/ http://logs.test-lab.xenproject.org/osstest/logs/181332/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: test-armhf-armhf-xl-credit1 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-libvirt-qcow2 19 guest-start/debian.repeat fail REGR. vs. 180278 Tests which are failing intermittently (not blocking): test-amd64-amd64-xl-vhd 21 guest-start/debian.repeat fail pass in 181332-retest Tests which did not succeed, but are not blocking: test-armhf-armhf-examine 8 reboot fail like 180278 test-armhf-armhf-xl-multivcpu 8 xen-boot fail like 180278 test-armhf-armhf-xl-arndale 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 180278 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 180278 test-armhf-armhf-xl-credit2 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 180278 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 180278 test-armhf-armhf-libvirt 8 xen-boot fail like 180278 test-armhf-armhf-libvirt-raw 8 xen-boot fail like 180278 test-armhf-armhf-libvirt-qcow2 8 xen-boot fail like 180278 test-armhf-armhf-xl 8 xen-boot fail like 180278 test-armhf-armhf-xl-vhd 8 xen-boot fail like 180278 test-armhf-armhf-xl-rtds 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 180278 test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qcow2 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass version targeted for testing: linux 8d15d5e1851b1bbb9cd3289b84c7f32399e06ac5 baseline version: linux 6c538e1adbfc696ac4747fb10d63e704344f763d Last test of basis 180278 2023-04-16 19:41:46 Z 53 days Failing since 180281 2023-04-17 06:24:36 Z 53 days 100 attempts Testing same since 181320 2023-06-08 23:09:56 Z 0 days 1 attempts ------------------------------------------------------------ 2654 people touched revisions under test, not listing them all jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl fail test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-freebsd11-amd64 pass test-amd64-amd64-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale fail test-amd64-amd64-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 fail test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 fail test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine fail test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt fail test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu fail test-amd64-amd64-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-amd64-pygrub pass test-amd64-amd64-libvirt-qcow2 fail test-armhf-armhf-libvirt-qcow2 fail test-amd64-amd64-libvirt-raw pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw fail test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds fail test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-amd64-xl-vhd fail test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd fail ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 336183 lines long.) From xen-devel-bounces@lists.xenproject.org Fri Jun 09 09:15:56 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 09 Jun 2023 09:15:56 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545716.852224 (Exim 4.92) (envelope-from ) id 1q7YDj-0008TK-DM; Fri, 09 Jun 2023 09:15:47 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545716.852224; Fri, 09 Jun 2023 09:15:47 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7YDj-0008TD-AS; Fri, 09 Jun 2023 09:15:47 +0000 Received: by outflank-mailman (input) for mailman id 545716; Fri, 09 Jun 2023 09:15:46 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7YDi-0008T7-JL for xen-devel@lists.xenproject.org; Fri, 09 Jun 2023 09:15:46 +0000 Received: from EUR01-VE1-obe.outbound.protection.outlook.com (mail-ve1eur01on0626.outbound.protection.outlook.com [2a01:111:f400:fe1f::626]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 366ff708-06a6-11ee-8611-37d641c3527e; Fri, 09 Jun 2023 11:15:44 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by AM8PR04MB7217.eurprd04.prod.outlook.com (2603:10a6:20b:1db::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.42; Fri, 9 Jun 2023 09:15:42 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.039; Fri, 9 Jun 2023 09:15:41 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 366ff708-06a6-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=QNx/BV2NdckBqZJ9GcQWRjoA2lSMznnDkkATnhHslSokgcXGXjsaVSXF2S7RLLWHluWnmUI8ezBYjXBJjyOiyLM2NAqbIyd/9hSxwZiuO9z6OXSi9vkvTEFAyKmzt/v1Pm+dWiMEsO2c+vk3A9kV2H6cj4z4xW8PgWXg6YDk3vEk4aFUdeAlr93DrHfz5F2mdylV+JX/uupqrnF2i5/aCc1YZ8abnCGZW6WwTdWoTW7oersG8XDlv93VvW4tFZR+uS1+0yDGuZ2LxpviCGPbdjVwrBDFfc0+bYfq4YtjqleebJlUwyZfZ12Yro3uyIuXJGNwjN0ZtjzfTbGD5+umlw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=cEDtN8N5kHk/NUBdxttDUqJow0ZcwhO9+VdFQkGmzP8=; b=XNmziYgCxQusu4kgk3BpK+GkcULuuDhUCLV4vIUi3jwUp2ygYQeQbXkBT8BOdkbO4uJZyHq7VKG4pqFl9LmWjUhcG91qmIRU/PYffBb+Yw8txTnrzlunTcTmqS9gqkvXiqpnLSw3LiM9h1nmy/5KZdXoFp/c2rZEoXi66RUB6n/mn47a3cNvUcHifgCpB+RbOcNfI9DRyXTIP9SMhJBp2v0UMgUT8Qc4RzMba32yIGjlRtfaAfLl2AdOZghyuswhrNcimaEns892yvI8pPIBCuRoFuDLasiCRZY4g/Hcg9cxTSmtNILAtZ14vN+/SVw2T1ZjBniY8LLVZri3Oq1kIQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=cEDtN8N5kHk/NUBdxttDUqJow0ZcwhO9+VdFQkGmzP8=; b=0tXSerjNF4hfYj/VRHIx/Fjzq+XztaNI2uYKz3JBtqGSx1zTLCdlyhKo1mlRXJm2CuD5bLiAIXOonoIaAnHrVxLDzxiK0oqpIZnHDXHt1C7Rz8zSlpfzRB3n8bgWm+eP20/ZMHTSFsLvqwGb2+GM87dKnUD4Ep8h3WEobircho5wcQRvG00a/XpBs5ZOyLg7B+bHfBljrFddC/kotYaTpXwyAXhdiKCDxDrOlhfjfWYra/psujmz7ux6c1GwtpMT9sTywAhZQasOFyH0XrC95BQDkh9pH4CF2eDX0BK0FS4jZ2Xt3SVazFwbOSyOqvGGb0ESVhPHCAEBxjfQGyL2Xg== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <9676af82-7af2-24d4-838d-6f5a90c1d604@suse.com> Date: Fri, 9 Jun 2023 11:15:38 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH 1/3] xen: Add files needed for minimal Power build Content-Language: en-US To: Shawn Anastasio Cc: tpearson@raptorengineering.com, Andrew Cooper , George Dunlap , Julien Grall , Stefano Stabellini , Wei Liu , Shawn Anastasio , xen-devel@lists.xenproject.org References: From: Jan Beulich In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR2P281CA0115.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:9d::17) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|AM8PR04MB7217:EE_ X-MS-Office365-Filtering-Correlation-Id: 922fb61d-6562-4993-1625-08db68ca18a2 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 1DlPEHpP1dFhTW0zHcaqaxL2fJbcqBpRvuxG5qEBaAhqNMF6hc5Lmg+qH81jPpvihlTwIhRleVsO7SL0kSvC1mRCWonEfTE1MKB8SwW50fSwZiKLIYLdXDl7xr8f75ifYP5NrEMAfpgP2YHTU4+nxR0ylA4IykBQ63MYZQeKOfvHGPkCaGTJTkto7LVLcHmpoar00S7arAP2/qf8YcqtCdMkCvyzhMVXclMEQHAdzaRwQBGFSFz1cDFe+djWUZMbY1xwwdrjfnGdsmvGIQmKbfDka5mbbXSqFu1WXacTcbeyr1gUI+YRl1FzHlSprUzQCDe+lZ8r9e00kq4CGKm0v3xTSOsvKmeOYCBFq32zNcT4p0B+BkBBs7VnBnEG3I9/XL0cSJWj/oCk20ZQxTy8HhYemoaOYOpCZuYvrUKwZbO6bHLmDQMyztXWf4yS3b6u9RAOk4UaSRQM2TE+YsGqzFvRvgXvEyQ3YSltyTHqqnE2p+SLesRkHhALduJ0KIi7kbQtdh7DbOQmzr4keJwLRnF8iduQRxIDcQ9DaaWgSVz1YtzRKELR9+ldgEHWnHoyKCH0zXnSK5s6kFIbDng76MwOyP8cjDnnHqcJtEC5QrFe2+qFLEdf6W7vreI06NwnUZAHZMdtZOARhusG6b9vww== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(39860400002)(136003)(376002)(396003)(346002)(366004)(451199021)(2906002)(53546011)(26005)(6506007)(6512007)(186003)(36756003)(38100700002)(31696002)(86362001)(2616005)(41300700001)(6666004)(316002)(6486002)(478600001)(31686004)(54906003)(4326008)(66556008)(66946007)(66476007)(6916009)(8936002)(8676002)(5660300002)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?eklMVlpkQ2hDVU9uQmtOR1QzdVpzQzRJWk9RM0ZkY0t2dTNweU0yZXM4NlYv?= =?utf-8?B?dkdneEc3eU50emhwdW1FZzA1QlpLYkNRMnpsTGRjOU53S3BCN3lMZ1pFRC9O?= =?utf-8?B?VmVFS1NqZCtMZFNhYUZSTE1CeEFOMkVqZFZqclhuNHhYM21kS2x1Mjlwemd0?= =?utf-8?B?Mk1YcFpxNGV4anRsenE3ZTVzcEl1bFVEYTltMm1keHhhNGZqdzhYNjMvRnRN?= =?utf-8?B?MXJrWFFqa3RYTzFxR2hyUGo1NmxkQjBtZS9jakhKTnFKeEkzQ0FCVXJEQ2FY?= =?utf-8?B?TlJtTDk3SUhJMzMyM282eDFHbzRVaEV2YWRWdmNNZW5xcHZ0cDVqTUd5bE5n?= =?utf-8?B?SGtCL1lHckpucm9ZNTUyNWZiWmV0UzRPcGJ4aGZ2ZkdvN0FCdVIxQzhvRnhH?= =?utf-8?B?R1YxbXZQbmZFY0lJcld2VVltK0h5VDZBY0Q5elBEdDEwUVc5RGpPRTg1SjB1?= =?utf-8?B?N05DRWJLRlQ1ZWpkV2NDNkprYTNFYnIxNmFjdVNaaEdIbmhxemw4UTJtNjVU?= =?utf-8?B?YUFmOVdtT3UrcWlGNGxPcUZsSkFUTjFvbnh2djFLa3lmSENJK1loc0NkaWFH?= =?utf-8?B?eVBmdnRKVUVSNTltbXZPRjJIUXBmbWhpMlVyQVE1Z2JPTkoyd3hqYUtKelVH?= =?utf-8?B?NUtWWmxhYUtURi82RWZxOUc0SHZzQTZKOFZoMnFoRWZEb0xxN2gxR3E3WUdH?= =?utf-8?B?ZTFaQjhmM3k1Rkt1T2hBQ0JWdGVraFFTUFdha05xdHJJQSs2VnlGazBlclZp?= =?utf-8?B?TnlVcHBlWFpvS0hHb2dRRVc3ZE1kRlRyYmVJeGJvTnJDYlVPMXhsRGhNd2Jv?= =?utf-8?B?OG5rT0FGaE1vZk1CdFBhMm5lZzRmMi9DRWNWTUR4QWh0eXA3eTQ4dEVuQnJw?= =?utf-8?B?WDVNZnZ2NW56OEI5c1F6cUQ3TWcxVFBvNWZKVzlGMUU0NS9lWjUycWhXM2h3?= =?utf-8?B?ZTNKdWtxT1RRZml4ZEloV1lORC94NmhhRENKOGRVSEtGeWYrVGJpMkdwNmVk?= =?utf-8?B?b1gxVTRmdG5FbStiK2oyOVJXemxoQUVhRk5vNlpaak5aMTY1ZituY1EvS3hj?= =?utf-8?B?SnpCQ2FTNFJpODNxdUNSNitZaWYzeTRXTjBZUy83QUVKcitSL05DKzJDMkJ2?= =?utf-8?B?NTg4V29wS05jdmszTUdCTFRxc2dDOE4xQmMrTXNCSWMzaDBWejRYQUJab1hW?= =?utf-8?B?eGtjTzhpckxhV3NLM2dmVzNrczE0MnYvdGg3a2lGWTdlZWJtZW02SkxzUExk?= =?utf-8?B?N1NIdW8wNnNtRXA1b3pkb3FHL0JsdnB5eHlGVVpGR0N3d1FkNmhtT0xmZ1BJ?= =?utf-8?B?d1NiODNXV28raWZiVU1tK0FXTVFUK0s4bHhzNnJlVnU4K3RYRGkwU1kyK2J2?= =?utf-8?B?S20xdFlicEdjL21PWDBpRzBqVkNuc3hrMkR1bm5FNklQREh6dlNWbW8rQ3kr?= =?utf-8?B?bHNXbVdtdzA3SkU3Q0lMMVQyclFVekU1UEdQbzRESStwRHlLeEJCWnkxWnh5?= =?utf-8?B?Ry92M0E3MHVjVzUvZGdpbC9TR2dIbS9IQlE0ZXdJbzdTQWpJaFBKL1ZNU3Ni?= =?utf-8?B?S3Fxck5yMlVBSnU0ejh0ZHdIc1MvcnowdEFYMHBKMmthc3ROb1h4WFpqcFFL?= =?utf-8?B?aEkxdzFTZFlHOXN2eVZvQm9jYU4yL1d5b1dkSGFmd3JqQlZKaUJVMlF1bVlZ?= =?utf-8?B?RlRzWEVyRnY4Y1ZyKy9uK2hUN2lvTlBldjJxaGlUMHpyNEtpblFJK3FHei9Y?= =?utf-8?B?RXZIZ0VSbDVPUjNhM2swWHhxMkJRSVdzY2RCZVRxai8vM2V1N2hrYUNOUWs0?= =?utf-8?B?ZXhJNEhYWXRGazJ6dWtFNHFydXNoMFNlanZCWFMzMlJzSHo2c0EyRnFUU0t2?= =?utf-8?B?N3BHTmRHb2xkTkxjQ0d4NTAzWVMrUUpOUFBnOTZBcUFnelk3YVhTbVNWODV3?= =?utf-8?B?NlVGeWIrM3k2TU5NS0JhZU0xVm1vUTAxZ0w4VW1la0ZqTTkvQ2NDOHdQWmJs?= =?utf-8?B?bEJsTjk0cThjbXZKSVJPYm85WG41Rmp0Z04wWmlTN3B1cVVKSGhSOVprVlNu?= =?utf-8?B?ZjhFMldjUm5MMGZQNFI5WnZORENlU0dlajVHeDcvREthWnVBN3dWNk5QemNO?= =?utf-8?Q?Kx1hmLarZmtGyFb1zK/ZsNY4A?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 922fb61d-6562-4993-1625-08db68ca18a2 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Jun 2023 09:15:41.0138 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: e5QnU5uox6Tujy0vQ3gBR5ehZiIP5uHKGRa57VieYdDi/FCzK3/UJ6xeo9GNNA9wqrKKDrKJwPC/GgxmGHhgvg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM8PR04MB7217 On 07.06.2023 17:06, Shawn Anastasio wrote: > Add the build system changes required to build for ppc64le (POWER8+). > Following in the footsteps of the initial riscv port, only building > the head.o target, which boots to an infinite loop, is supported: > > $ make XEN_TARGET_ARCH=ppc64 -C xen openpower_defconfig > $ make XEN_TARGET_ARCH=ppc64 SUBSYSTEMS=xen -C xen TARGET=ppc64/head.o > > This port targets POWER8+ CPUs running in Little Endian mode specifically, > and does not boot on older machines. Additionally, this initial skeleton > only implements the PaPR/pseries boot protocol which allows it to be > booted in a standard QEMU virtual machine: > > $ qemu-system-ppc64 -M pseries-5.2 -m 256M -kernel ppc64/head.o > > Where possible, this patch uses header definitions and support routines > from the original Xen PowerPC port present in Xen 3.2.3. Though we are > targeting a much newer ISA than that original port did, some of the > definitions have remained similar enough for reuse. > > Signed-off-by: Shawn Anastasio Just a few small remarks, as following Andrew's comments I expect the patch will shrink quite a bit: > --- /dev/null > +++ b/config/ppc64.mk > @@ -0,0 +1,5 @@ > +CONFIG_PPC64 := y > +CONFIG_PPC64_64 := y > +CONFIG_PPC64_$(XEN_OS) := y The first of the 64-s here are a little odd; looking at RISC-V's counterpart, wouldn't this want to be CONFIG_PPC := y CONFIG_PPC_64 := y CONFIG_PPC_$(XEN_OS) := y > --- /dev/null > +++ b/xen/arch/ppc/Kconfig > @@ -0,0 +1,42 @@ > +config PPC > + def_bool y Is this necessary? Iirc PPC is frequently used as a name for 32-bit PPC (but then also elsewhere as covering both 32- and 64-bit), so I'm not sure we want this without having a need for it. > +config PPC64 > + def_bool y > + select 64BIT > + > +config ARCH_DEFCONFIG > + string > + default "arch/ppc/configs/openpower_defconfig" > + > +menu "Architecture Features" > + > +source "arch/Kconfig" > + > +endmenu > + > +menu "ISA Selection" > + > +choice > + prompt "Base ISA" > + default POWER_ISA_2_07B if PPC64 > + help > + This selects the base ISA version that Xen will target. > + > +config POWER_ISA_2_07B > + bool "POWER ISA 2.07B+" > + help > + Target version 2.07B+ of the POWER ISA (POWER8+) > + > +config POWER_ISA_3_00 > + bool "POWER ISA 3.00+" > + help > + Target version 3.00+ of the POWER ISA (POWER9+) What are the + in here meant to indicate? Since this is about a baseline ISA, I find such a use (presumably standing for "or newer") ambiguous. Jan From xen-devel-bounces@lists.xenproject.org Fri Jun 09 09:18:52 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 09 Jun 2023 09:18:52 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545722.852235 (Exim 4.92) (envelope-from ) id 1q7YGX-0000gz-05; Fri, 09 Jun 2023 09:18:41 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545722.852235; Fri, 09 Jun 2023 09:18:40 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7YGW-0000gs-TE; Fri, 09 Jun 2023 09:18:40 +0000 Received: by outflank-mailman (input) for mailman id 545722; Fri, 09 Jun 2023 09:18:39 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7YGV-0000gc-Iy; Fri, 09 Jun 2023 09:18:39 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7YGV-00075z-6Q; Fri, 09 Jun 2023 09:18:39 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7YGU-0001Fk-U3; Fri, 09 Jun 2023 09:18:39 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q7YGU-0001VR-SI; Fri, 09 Jun 2023 09:18:38 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=TP0DEtyXMgOfBgDsyTNTpONSINbSU5DOPlihvqDEFnY=; b=55+YCRJE4YK1xXAJG7LzBJ5/Vj Fex00jS89x+7Op9GW0F2pFUNPPap9BoDuwWe8/KXM6SDgdkkPAB1UuaTABTSHcwLduS3ykKVha3j8 +OKiRNH3OblR351ZFJdM74eSAMnHSKSP95D74VOlm1wxZQ+5gBib/XhKeNv/J/OhFdC0=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable-smoke test] 181333: regressions - FAIL X-Osstest-Failures: xen-unstable-smoke:build-arm64-xsm:xen-build:fail:regression xen-unstable-smoke:build-armhf:xen-build:fail:regression xen-unstable-smoke:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking xen-unstable-smoke:test-armhf-armhf-xl:build-check(1):blocked:nonblocking xen-unstable-smoke:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking X-Osstest-Versions-This: xen=6915a120641b5d232762af7882266048cf039ca0 X-Osstest-Versions-That: xen=64a647f8d817c6989edc000613b5afae19f03f99 From: osstest service owner Date: Fri, 09 Jun 2023 09:18:38 +0000 flight 181333 xen-unstable-smoke real [real] http://logs.test-lab.xenproject.org/osstest/logs/181333/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-arm64-xsm 6 xen-build fail REGR. vs. 181233 build-armhf 6 xen-build fail REGR. vs. 181233 Tests which did not succeed, but are not blocking: test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 15 migrate-support-check fail never pass version targeted for testing: xen 6915a120641b5d232762af7882266048cf039ca0 baseline version: xen 64a647f8d817c6989edc000613b5afae19f03f99 Last test of basis 181233 2023-06-07 02:04:37 Z 2 days Failing since 181246 2023-06-07 11:02:03 Z 1 days 22 attempts Testing same since 181303 2023-06-08 11:00:25 Z 0 days 11 attempts ------------------------------------------------------------ People who touched revisions under test: Andrew Cooper Christian Lindig George Dunlap Henry Wang # CHANGELOG Juergen Gross Julien Grall Luca Fancellu Michal Orzel Roger Pau Monne Roger Pau Monné Stefano Stabellini jobs: build-arm64-xsm fail build-amd64 pass build-armhf fail build-amd64-libvirt pass test-armhf-armhf-xl blocked test-arm64-arm64-xl-xsm blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-libvirt pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 504 lines long.) From xen-devel-bounces@lists.xenproject.org Fri Jun 09 09:23:09 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 09 Jun 2023 09:23:09 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545729.852245 (Exim 4.92) (envelope-from ) id 1q7YKe-000286-Ha; Fri, 09 Jun 2023 09:22:56 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545729.852245; Fri, 09 Jun 2023 09:22:56 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7YKe-00027z-Ed; Fri, 09 Jun 2023 09:22:56 +0000 Received: by outflank-mailman (input) for mailman id 545729; Fri, 09 Jun 2023 09:22:55 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7YKd-00027t-1j for xen-devel@lists.xenproject.org; Fri, 09 Jun 2023 09:22:55 +0000 Received: from EUR04-HE1-obe.outbound.protection.outlook.com (mail-he1eur04on2040.outbound.protection.outlook.com [40.107.7.40]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 357cfc1e-06a7-11ee-8611-37d641c3527e; Fri, 09 Jun 2023 11:22:52 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by AS8PR04MB8053.eurprd04.prod.outlook.com (2603:10a6:20b:2ad::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.39; Fri, 9 Jun 2023 09:22:24 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.039; Fri, 9 Jun 2023 09:22:23 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 357cfc1e-06a7-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=e1tkPXcFE7mOfPtvZw/i8s4zl3J4xESU6yzzVbuDCnGzll0KMUbob+JKFlMr66fe8TTUIt3SjC/uCn6CcXzJpyWjxINdsCp3o3fzOsiUrGIo1g2BZs0JCZWcF7bUDOqcXcWkrFyImOsIwCFVqq44StmEyLXT9IY9aKIbJRDtxi3WyW9pG8qYzB3HpzNB50A+LGmVh/+WoMeo0W98WXgRP0Y4BabdZr068CGKSeW98nybhHtQGHDx8NGgqzZHY2wQ7AvyZEYA2TWED6PosmkbJLhlFCWI0WRGPgOOtpSS/fm0gEalJpFUOlHUV5uxxPg9lvuw2KOKo6iz606rpTR7iQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=eSKU4UdbxaiRWFlrzwPHNShPPcIdaushNx1dN13n7rM=; b=cUHWcy9tVNgE4vr3T1Oix140NW+cuYjOxsqD/NAIjjQMBeXwr8OTUA7Zyk5wn0z3bMOGFp5KBI37E7+YqXpCb4G8ryeQo772qN9zieakdrfwpK6spqpbYSBhsPxoatiwqbkTpHULs6UbX2yHMdarKWaSY0Xhx8pDGLLqZGlH3nqCxrYSx559xyAqxmmnzTwS9xmzQo973LytfzPkbhdTnJO/nH7BHfDsDbxE4IpH5yM0Fyf6slaQdWdcN9P7wM+XzR9u2AjpUtAiIY3wlJdyL0bnA8Zp6ZFqGmxC148D/OTG1I9wwG07xXrGm1qgyI0wNIE9YOzIXHGbCN3N9jZ4Ow== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=eSKU4UdbxaiRWFlrzwPHNShPPcIdaushNx1dN13n7rM=; b=MJY/nlQCHQjFzYYqxRkcVFzGaXNk2bLHDeukbhaCwOuX0YifQA4LCPyXRaHCg4HErsLj14ZvjEnAP9Q3pVdydMoEDvvUbDcNEGAtj/L0Vl+p38EPzxujYeilRHbrgwF6UqjOYAOal48hfM8e5kgPyyAOU8cHleo1HJ3ESqy0KNDcWfS6iMEOL+B1bcH3r5lA8tn0lfcIOuEoc8+WrwZhiS8jSsv4S/KjzTys2yPeW1DeccoweTQ+jWT1XEsbqS3359LxvaSli/K1iLuvrzO4pq+G7zuyv7LguPqv9GH55OPprzdNn368YuPB0ButTlTyI/u02KOARNp/5OUl52ZreA== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <0c0a19de-dde3-8b98-4354-6d3d2019179b@suse.com> Date: Fri, 9 Jun 2023 11:22:21 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH 2/3] xen/ppc: Implement early serial printk on PaPR/pseries Content-Language: en-US To: Shawn Anastasio Cc: tpearson@raptorengineering.com, Andrew Cooper , George Dunlap , Julien Grall , Stefano Stabellini , Wei Liu , Shawn Anastasio , xen-devel@lists.xenproject.org References: From: Jan Beulich In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR2P281CA0141.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:9e::20) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|AS8PR04MB8053:EE_ X-MS-Office365-Filtering-Correlation-Id: f2ff0088-a4fa-48f1-f9a7-08db68cb082b X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: SHPtIrGztU0aKvf79Pc2JtobHI9MVChaGzzXoZ3csHF889bBvH2mltXjnrn1pHIp3XPyEdLtUHhyDGDbImrLENVUZu5wqMffYDJ5SYxGhqeKnhXZQe36PynT8alykJdzZHkOr/MlrRLgNmcAIsE9z4IuhqbnMoRgz/J3z1g4Mr2zwNSykl8tM5LzVnfAKkEPUVL3EljPWcxH0lRDapBFNYba2z5tcW7lsLaPPeV5X3+sqJGJKQFxsWgx9aJbKaV8CiLL8qallZE6RdM+WDPNPqc7j9C3winirsVP/vPGw7XqiGnnObZw+zNtxSPtbGV0jqVqagSNcNcLLwS76+ypnMLxWHotEMHBfi21ROtH9xUBihV7yQjT504UqHciCuwSUqZsXv6TPidbot+uZcN+UNHCYS+s7KUA3YDaqxnhrpHC3QSWx/grT4dJAnQLiOye7gQkAblPxvBHYUa8nzSIqA7wCs6iPm1NqHB4YZGgmQy7Fo0G3kCir5WHLo2GO7JMtKmO44qpfMJYwtE5g7KdYSHxxgYvKqog7AoTfZQWX8aJp+qjAcoHk57TR5oxrJxen5hGecA8PHcNDvaD/cqGC9pD9WlifFnmOKCHzohxjl4oMgJJ1awd7QP5dOzesdhSev+g+xAko3CM+O35XhLVmw== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(39860400002)(346002)(136003)(376002)(366004)(396003)(451199021)(66556008)(66946007)(66476007)(478600001)(54906003)(8676002)(5660300002)(36756003)(8936002)(31686004)(6916009)(4326008)(316002)(41300700001)(6486002)(38100700002)(6512007)(6506007)(53546011)(186003)(26005)(2616005)(86362001)(83380400001)(31696002)(2906002)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?S2xTWVphR1FzQ2tJd09ydnVEY0k4UEVnc3hqYVVYZWhrSUdGKzhPNDZQbDR4?= =?utf-8?B?a2RwYTJMcWY2UEFLNndmRDVRRlMyK1kvaUlFS1Z5QmNESmRTTGZ6ek5pWnJy?= =?utf-8?B?Ri9lbkEybkFDeXNxbnErTWY4Ump0ZWVvd1BMcEhzNFdJcFJLR3FCcnAva3p2?= =?utf-8?B?VWtOdHdRcXlZaEVHamdWbUxEY0FIOFhJVGhuNkUrZ04zajFuUjdJeENWcUlR?= =?utf-8?B?azlDdWY3WjA4UFpQUzVwOThOUkNQVDZ0YVNLbEpYdXlZU0Z1OVdVZ0ZOcm4x?= =?utf-8?B?SGkyUWkrNldvVWpmZEoxM3lJSmJkVW9KYWttcWtNamhza3dia1VxYTZOd01p?= =?utf-8?B?VjAvVUx0L05RaDA2MC9kN0twczRuay9kWldTRjdSaENmL3lucjVqci9nMVZZ?= =?utf-8?B?U2drRDR4NjBZR1orRmFxd25tZFhZUlZFMmlWeGlONUIvMFZCcFdkQ09KT0Fa?= =?utf-8?B?YWRQVnlwVEhncUtPTWg1eEFQTVNTc2hDVmtlRUp1dVlJNDA0ZUN3Mm5heTB2?= =?utf-8?B?bVY0RDM3dlZjNnJMcTFZa3RMa2htaTNMM2hJYWlodk9FQ2FlQzQySkxDVVdM?= =?utf-8?B?ZWNsUzlkNlVqakUzS2VGNE9UTHNVUFBlbWFJeGpRNFdHMUg4RXl0YXBaYndQ?= =?utf-8?B?MkR1M2lnY1hVR2VSbkQwb0xmbm4rZUpPY2hUTUhKdXRaN3E0dEhSOFdTM29I?= =?utf-8?B?ZTQ5WXIxZDh3OW0rajdKR1YyM3Z0WEJRbWl0Yk04UGJySy9DVUZOazZ1YmF1?= =?utf-8?B?WW1RVnZEQkkzakFGUFRnRTNUZmVjRmQxbDNLUnljdDBxL0lLZnA5L2JzNHl4?= =?utf-8?B?WVV5WlF3eGgxWVIwSS9PYkxGTlN5emV3SlZOc3l2Q1J3RE9pMklaNi9KWjVI?= =?utf-8?B?T3pYNm1jYUgxUkpPajlRWkY3cWhYQXd6eGMxd3lRZzhiWkhSMWF2Y2dUMzgr?= =?utf-8?B?MmdkV3luWllkeEhvelZvdVdxalVjUzJ6WHpSNFZIOUVwQkRlWEE0OFpvUVVz?= =?utf-8?B?WFl1dUw5SGtBWVhrcWZpM3dobURhSWxHTkFJMnNtWW5LUzNkWVB1TnhZU3F2?= =?utf-8?B?L2Y1bHBCeHZhU0s1T3JtdFhzTGdtbWE4c0I0bHAxSDJUL3BSb2dVSjdWUFhu?= =?utf-8?B?djJjOVJPaml0SjR5SDczcTl5VFNEWXprQ3RjdXd2VTE4dU9MMUUwbnBBUmVI?= =?utf-8?B?bEM5cmtNL0R6MXViM3pFRzU4NHR3UERCc1FKSCt0cmFIb29GcHg3WjdJQ2Z3?= =?utf-8?B?T1JXWko3OFNkdWhYL09FK0VVZjF4WElSM1NHblpYWlN3VC83TitkcjdvTndl?= =?utf-8?B?MVF0RmFRaU13WDlIMGkvdmZnTVQ1VUdRdXIxK1hSSXRJeVdtOUcyTlNUbXJF?= =?utf-8?B?ck0wZDhYTGhCaEtZMlVmckFqcytpczVQU1VtZXNtcUZsU3NKcC82WVBIanNx?= =?utf-8?B?akFrV002RUJjT0FuOXVNSVc1MTV4VG1xYUF2WG53dEEzQ2FBcHVtVlZtVnRj?= =?utf-8?B?R29IR3hBNWI5YUpGTlpRNHZweW9QWUFoZUlJWnh6VDdTU1dnbHYxTnBTQ2R4?= =?utf-8?B?Nm5KRERJMXlXUUg3ZUV3WjNHRHZHMVN3N0gwQThxRzdpUHhtUDJLWCthb2Fk?= =?utf-8?B?VVZBTzBWY2JpdFRRbDB5a0JIRXhzU0J2UGVZQ0J6SzFBZXl3OFUra1ptUUQz?= =?utf-8?B?YVhxZlJ4YXFvT08rYUlEbU95ZWtBeUtSbERJSzgzUkswTGRHTVVHbkxUK3Rr?= =?utf-8?B?NjNabHpnbzY2L0pGL0lOelZTQnpqZ0J5cUw2UnJVRkp0TXhKN0tSbVZSa2d2?= =?utf-8?B?VGVieUhXdVU1V0Y0azlTbWZZRFhQV0tYQWlhSEMrdG1nQmh1NzFQZUREWFVZ?= =?utf-8?B?ZFlkUk5VaDZ6dUsreHh6WjZ5ejBMLzVWQ2x0bVdFOUJFOEJjSFZQcENYSnJW?= =?utf-8?B?SzBHTStiTjRzUkl0YWFtbHdQRlZlVGI3d0RkNEdmUDQ1NGxnNzh5MTlUYmMz?= =?utf-8?B?YTRhdGYrMSs5K3FYcVJkZGw3YVB5UnlJUk01VlVISFZhVHNLSHR4MHBxRGxj?= =?utf-8?B?STF2RmM4MFJLTm9scUpuUGtLK210bUNwMjBXNThqUC9oQW8vZDhqcG5leE51?= =?utf-8?Q?nnZZ1d0w01EiyGYBe5UEoxAiS?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: f2ff0088-a4fa-48f1-f9a7-08db68cb082b X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Jun 2023 09:22:22.9830 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: eEwsycf3DDEuNRw9Du+4h/JNGPzUIe011QVdKPzytxRc+T7jsWIMCc4vZrVixL8/9J8cyoi4HsOrfGDShBLOIw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB8053 On 07.06.2023 17:06, Shawn Anastasio wrote: > On typical Power VMs (e.g. QEMU's -M pseries), a variety of services > are provided by OpenFirmware, including an early serial console. > Implement the required interfaces to call into OpenFirmware and write > to the serial console. > > Since OpenFirmware runs in 32-bit Big Endian mode and Xen runs in > 64-bit Little Endian mode, a thunk is required to save/restore > any potentially-clobbered registers as well as to perform the > required endianness switch. Thankfully, linux already has such > a routine, which was imported into head.S. > > Support for bare metal (PowerNV) will be implemented in a future > patch. > > Signed-off-by: Shawn Anastasio Just a couple of nits: > xen/arch/ppc/Kconfig.debug | 5 + > xen/arch/ppc/Makefile | 3 +- > xen/arch/ppc/boot_of.c | 122 +++++++++++++++++++++++ > xen/arch/ppc/configs/openpower_defconfig | 1 + > xen/arch/ppc/early_printk.c | 36 +++++++ > xen/arch/ppc/include/asm/boot.h | 31 ++++++ > xen/arch/ppc/include/asm/bug.h | 6 ++ > xen/arch/ppc/include/asm/byteorder.h | 74 ++++++++++++++ > xen/arch/ppc/include/asm/cache.h | 6 ++ > xen/arch/ppc/include/asm/config.h | 3 + > xen/arch/ppc/include/asm/early_printk.h | 14 +++ > xen/arch/ppc/include/asm/processor.h | 54 +++++++++- > xen/arch/ppc/include/asm/string.h | 6 ++ > xen/arch/ppc/include/asm/types.h | 64 ++++++++++++ > xen/arch/ppc/ppc64/asm-offsets.c | 55 ++++++++++ > xen/arch/ppc/ppc64/head.S | 59 +++++++++++ > xen/arch/ppc/setup.c | 20 +++- > 17 files changed, 555 insertions(+), 4 deletions(-) > create mode 100644 xen/arch/ppc/boot_of.c Unless required, in new additions we tend to prefer dashes over underscores. In filenames it is pretty rare that dashes really need avoiding. > --- a/xen/arch/ppc/Kconfig.debug > +++ b/xen/arch/ppc/Kconfig.debug > @@ -0,0 +1,5 @@ > +config EARLY_PRINTK > + bool "Enable early printk" > + default DEBUG > + help > + Enables early printk debug messages > \ No newline at end of file There are many examples of this throughout the patch, which you want to take care of. > --- /dev/null > +++ b/xen/arch/ppc/boot_of.c > @@ -0,0 +1,122 @@ > +/* SPDX-License-Identifier: GPL-2.0-or-later */ By default we mean to use ... > --- /dev/null > +++ b/xen/arch/ppc/early_printk.c > @@ -0,0 +1,36 @@ > +/* SPDX-License-Identifier: GPL-2.0 */ ... the more modern form of this (GPL-2.0-only). Anything deviating from that may want justifying in the description. Jan From xen-devel-bounces@lists.xenproject.org Fri Jun 09 09:29:44 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 09 Jun 2023 09:29:44 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545734.852255 (Exim 4.92) (envelope-from ) id 1q7YR5-0002lW-8Q; Fri, 09 Jun 2023 09:29:35 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545734.852255; Fri, 09 Jun 2023 09:29:35 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7YR5-0002lP-4w; Fri, 09 Jun 2023 09:29:35 +0000 Received: by outflank-mailman (input) for mailman id 545734; Fri, 09 Jun 2023 09:29:33 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7YR3-0002lJ-Oe for xen-devel@lists.xenproject.org; Fri, 09 Jun 2023 09:29:33 +0000 Received: from esa4.hc3370-68.iphmx.com (esa4.hc3370-68.iphmx.com [216.71.155.144]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 2252ba60-06a8-11ee-8611-37d641c3527e; Fri, 09 Jun 2023 11:29:31 +0200 (CEST) Received: from mail-sn1nam02lp2040.outbound.protection.outlook.com (HELO NAM02-SN1-obe.outbound.protection.outlook.com) ([104.47.57.40]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 09 Jun 2023 05:29:27 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by BL1PR03MB6071.namprd03.prod.outlook.com (2603:10b6:208:31b::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Fri, 9 Jun 2023 09:29:25 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606%4]) with mapi id 15.20.6455.030; Fri, 9 Jun 2023 09:29:24 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 2252ba60-06a8-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686302971; h=message-id:date:from:subject:to:cc:references: in-reply-to:content-transfer-encoding:mime-version; bh=LVrOtWmIrdQRh9+NRF3AzWdRjq0ZCo4oveKfWj/nTCE=; b=XRmSM8kiLMUEN3A5uayGkqk6MRixoasqKARAztIb8IFiqiQknjAGta5B PhEhYF6zfx1haXhOL/bFvhys1Mul46N8vg4vm8H2tFUfb/ilyQ+w0O4Hl J+duJbhOsQQKccixcSwZFq+Zv3MF7YH5wzFsIVbckptu0tCUMKPu6YmbV w=; X-IronPort-RemoteIP: 104.47.57.40 X-IronPort-MID: 114704520 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:dw8OLKpy+/XIpW1tKB40mBi6ODNeBmK6ZBIvgKrLsJaIsI4StFCzt garIBmBOvyJM2D9Ld9wYYyzp0IAscKByd8wQQdo+30zFXsSpZuZCYyVIHmrMnLJJKUvbq7FA +Y2MYCccZ9uHhcwgj/3b9ANeFEljfngqoLUUbKCYWYpA1c/Ek/NsDo788YhmIlknNOlNA2Ev NL2sqX3NUSsnjV5KQr40YrawP9UlKq04GtwUmAWP6gR5weAzylNV/rzGInqR5fGatgMdgKFb 76rIIGRpgvx4xorA9W5pbf3GmVirmn6ZFXmZtJ+AsBOszAazsAA+v9T2Mk0MC+7vw6hjdFpo OihgLTrIesf0g8gr8xGO/VQO3kW0aSrY9YrK1Dn2SCY5xWun3cBX5yCpaz5VGEV0r8fPI1Ay RAXAHMCU0i/mdnt+fHhGsl9lsIjDe7nHqpK7xmMzRmBZRonabbqZv2QoOR+hXI3jM0IGuvCb c0EbzYpdA7HfxBEJlYQDtQ5gfusgX78NTZfrTp5p4JuuzSVkFM3jeerbIK9lt+iHK25mm6xo G7c8nu/KRYdLNGFkhKO8262h/+JliT+MG4XPOThqqEy3ADJngT/DjUueUnh/tWYjneSWoscI QtJ9g4Pn64boRnDot7VGkfQTGS/lhwWVsdUEuY6wBqQ0aeS6AGcbkAfTjdebvQvssYtWTUxk F6O9/v1HTFmqqaST1qH/6+Iqim/PycUK2IPfy4CQk0O5NyLiIMuihPCSP5zHajzicf6cRnr2 CyDpiU6g7QVjOYI2r+98FSBhCijzrDWSiYl6wORWXiqhitiZIe6YYWu4EPH5O1BK66DR0Gdu 2IJncef6u0DF5CLm2qGR+BlNKGk4bOJPSPRhXZrHoI97HK99ni7Z4dS7TpiYkBzPa45lSTBZ UbSvUZK4sZVNX7yN6tvOdrtU4It0LTqEsnjWrbMdN1Sb5NtdQiBuiZzeUqX2GOrm08p+U0iB aqmnQ+XJS5yIcxaIPCeHY/xDZdDKvgC+F7u IronPort-HdrOrdr: A9a23:olwkJa9pj+fTucMQE+Juk+D+I+orL9Y04lQ7vn2ZHyYlCPBws/ re5cjzsiWE7gr5OUtQ/uxoXZPrfZqyz+8X3WB8B9eftWrdyQ+VxeNZnOnfKmbbalXDH4dmvM 8KT0EUMqyUMbEVt6fHyTj9O8o8xsKK6aW57N2utEuFjjsHV0ij1WpE48qgfXGejTMpOaYE X-Talos-CUID: 9a23:mp2y3G2PTT9EdZhkPDevb7xfWc8YKkHD9yzpYBXoKXd5Tr20blOy0fYx X-Talos-MUID: 9a23:vCJnagRNdNcV3cegRXTUqCM4a+tJ552CCRlOm9Jbt+2lBypZbmI= X-IronPort-AV: E=Sophos;i="6.00,228,1681185600"; d="scan'208";a="114704520" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=YPGRBSJfUTKmCSe7PHGpw2RQscVe1eq+wA1rC6SVuX81PrPnIGeHptqvAiwUn9lVjsuXB3LqWbXiSYebPN7LPWbEzcnmFBTndIZQHW8yrxvPTGeVqUMeyBtKN3V4zg/T9WUplU5pIdj+rDXJ8hKMwPOnfRwGmMXo37SOLF9CqrsQGotkWALRseW5W9pDIrTzHS9XDqmWpgEbpb9Gp3fusuJbjyxXeRAjHzLLslGDwVKQ8eICvmRHtaG6GaWnYWEoUGyEVYnvGNLTihGXx5VDModt8p9jM/KEw9nBH+/Anqlpy9Z+geMazi9kJO96vGQoeTMYaiUczW+jB9phMaPjvQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=LVrOtWmIrdQRh9+NRF3AzWdRjq0ZCo4oveKfWj/nTCE=; b=KalBKwtNU1Pf/RQnwFi7UEdsM2PiX1C8qTOnmhiE7J4wxHggN65dbpTt4q1k8xSOMV0DQX7SrMpTXy4TeswEYMqh88V+pqdF/0tLMmjKErgjgkF1ZtgzbJXbfExwepxX93noRoaHY1jWXq3cLIganPD+t0Y+yGmXuKsQBO4r5/mSEEnTIZoUvOIoTektS1Vsfw9AHCde1moK9cSV8C0Q+FipSoBW+V0O9/PUC9xrtjiFSH/rqBViZw+U6RXaHpOF7wOMN6SnNYOxfNFZSCqjruw+xCQ2TRENe4xZDjsyiFqc+mGUYaG+pa9uB18FykCWHenbX7yO4D0YEMxrAOnsLQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=LVrOtWmIrdQRh9+NRF3AzWdRjq0ZCo4oveKfWj/nTCE=; b=euXmfmeoak5GpVCJ7TjA1XdEnlL05UlHuT5UA8mMJji+JoBOaYKPQ85M4cfOFHPJAwOgM5XZTxuQjGHoD322A/Y2pF7WOLMfDwW/pkQ4VsoitmtBK5M+oe6ziJxGZGMVeQwN7yu41Qyp7iLGFdoDjBD6dzhd9KbE6fyHWdZd0PQ= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: <0b24d36b-adbc-9e7c-df6e-8754c269855d@citrix.com> Date: Fri, 9 Jun 2023 10:29:18 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 From: Andrew Cooper Subject: Re: [PATCH 2/3] xen/ppc: Implement early serial printk on PaPR/pseries Content-Language: en-GB To: Jan Beulich , Shawn Anastasio Cc: tpearson@raptorengineering.com, George Dunlap , Julien Grall , Stefano Stabellini , Wei Liu , Shawn Anastasio , xen-devel@lists.xenproject.org References: <0c0a19de-dde3-8b98-4354-6d3d2019179b@suse.com> In-Reply-To: <0c0a19de-dde3-8b98-4354-6d3d2019179b@suse.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: LO4P123CA0329.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:18c::10) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|BL1PR03MB6071:EE_ X-MS-Office365-Filtering-Correlation-Id: c9d2881e-1b89-4671-ba4b-08db68cc0365 X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: lSNxbAEFHwwEPWHdSR/9nkjRr7JyZOqnaRrXsZee0yGz03JIa4bRRqRdnCTREK2xQhsEN3+70ApVN2PTB6RkYIvJ9ioURCrG3NJ8LxlNsZFj6lPscFzXi+HynK4Zz93rFgJzbDY/n9rmMFiHS8WWLsMGCkX5R8o28Izr7R3udASYFoCXLm+C7Zvz13zsTwcNGE5MA7smWBFrH3eg0eBoR5J4guaAa0DTfkI2e20d45Ja5JR5JztGE+3bvGKT9G3wGFE1ge2sSe6bfdTN3NUSxMBSLRwWp2LV3osrQj0KeGj/uz8B3tcnr1llcZypFAkDyN6sBOzUEYavFiNFZ4EZ6jPSjpRE+4Wd5nH+Ao1nfI35MOyS48BnSKmSiSrO1LbRIEy1H+xe8/c7GFlR9F5bDXsMQM0lgihABY7ijcda6mZYgVXdd9oCDJ7gwXC3dDZOPmRZSii2PSH6IRtWScH1ClGff2aW9+F0WAWgUKtUSFOxXqMU7NyJLTKiR+GcI1MXzRLbCbE57wngF3rCct7tZbtqhqmKrAGGIcTGmFVSrwzMtDMzuU+doAqayk88ZgoTZGLHbvJAMLwOfHMkvWwGEqTOEvraQxsfoaM711tDtK009kQYYp8RhJjCK/ty/fpz8jdz7QlUGZe/WBwD4OIl0Q== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(366004)(39860400002)(396003)(376002)(346002)(136003)(451199021)(86362001)(110136005)(82960400001)(8676002)(8936002)(478600001)(38100700002)(66556008)(316002)(5660300002)(31696002)(66476007)(4326008)(66946007)(41300700001)(6666004)(2906002)(4744005)(6486002)(36756003)(54906003)(6512007)(53546011)(186003)(26005)(6506007)(31686004)(2616005)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?K1p6azdLbWZDa2d0VTNxVDZxbTRPZjdwUDJHSlpEdHJzMG83Q0ZmK2wyUFM5?= =?utf-8?B?U3gvdWcrdGpVSU9QdWtvVlVEa09pLzhrSFh1Zk8vSEh4MjB0ZkxQdG9yaWhL?= =?utf-8?B?ZzM1L2RQSmQ4a3JyWVEzK2FCaGNhNTFiUThST0lEbGhUVmNXV1FxWG4zZkRF?= =?utf-8?B?ZmczOURIbFRKUVQxYURQcFNVSkNMOGVETWFzYWpJRklIbitqaEhxQ0pzWG5P?= =?utf-8?B?RXFRVUNsSktkQnZKOC91dGM4NlF2R3A5K28zQit4K0VMZ2dVdkdmY3Z3dmg5?= =?utf-8?B?eXhkTTF1eGE1ZFQxNWF4Q09vL2xGaFdQYkZ2TGhQckI4UVUzVmdUYjhBNUwv?= =?utf-8?B?WEhOQ0lWVDIzOVR0WXNVQWZZL21Ec0dvQXEzUzZNam5zLzJRb1FCYWxCOUFp?= =?utf-8?B?c0duaGQ5VWpIZlRWOERrZnhhWlJqWkZIc0hUUlRXdUQ4MGFlQTdERDJtUnBl?= =?utf-8?B?T1JkRW5zbzRSNHcyY1F1T3RkamtSdVA3ZjlKSEdMVTFtZktjZTVIcC9YbXVn?= =?utf-8?B?djNTQ0V2SS9tUE5iUjRkOVl5emNNc0xFYWxFc0ZQNXQrWTFNVUhPTE50SVZL?= =?utf-8?B?NjB2QzFPaDdCNy93dHdidzA2dENFTFJsTkEycHVwKzdTYjZJZ1IrR0VYQnlG?= =?utf-8?B?dlNpWEo0dzRabnpIaldsK3cxeWVCRkNlZEdkOHd0YTNOMjM4ZVp2WG1MQ25q?= =?utf-8?B?NGdWc1QvNEpMQjRMNm40eVNyTWRCUjNSNGxqUGt6VThpNHJGeW9pRjArN1E4?= =?utf-8?B?b21jWUpyQks0VU4vZDF3U0xEVEdIbVdMUnRFdzhDKzJlVFBrVS9rQVdxVWZk?= =?utf-8?B?WXlUa3JEQ3kxZi9KTFBEUHhSVCtxSlRlNVhPQ0pDUk01c0hYOHRWN3VnVU1M?= =?utf-8?B?TkllbHRYSzNmaDd4bFUydHA0TXFDWExTVEwwSE5xT0VmbVE0OEpZcXYraXp2?= =?utf-8?B?SGx4QXpmVXB2cFdNVTB0Z0hMRm81RkFPT3NNQ284RHBJaStQZkVnOE1MUmNV?= =?utf-8?B?UGJOTTdXTXNhMTVlbWhYT1hGRHNjNjdQNVFTRllCaldJNnIydVpneFNDbmRr?= =?utf-8?B?UVR5SWlFZ2tqZkVQUUJTUW9FQVV0cy8ybEswekx2dTlNUXp4eWZPY2g4amZK?= =?utf-8?B?cThMdVZxTTVXK1FMZ2Z5RmM3dVBuN0xYUi9EeVFUeTcxa0gzTlBWekdVa0d5?= =?utf-8?B?TVZYVVpPTzlwQ08ySWllcXpCY1FKMGxWWVJSc0N1OE1PR3oyVi9OTnZ3ZGtE?= =?utf-8?B?c1ZYWDJETnJFaVU3S1EyRDNjQnZ0eTFMTG1CYWN0SUNtQmJzdlhFc1kyL2NY?= =?utf-8?B?QVhMNkRyTHpSak1MN2xKRjdyNEhIdTcxY3ZNNW1QWDBJODNSUUc2TFRQRzFv?= =?utf-8?B?VE9QTEY3TmFrVFh2VkRWck5VZXRTSUZEMlhFSmtuY3c2cjVFcFg2cXdzUHdQ?= =?utf-8?B?VHBEcjdrbnZvWTRvYjlCcWg3YXBOTjltc1AwR2xIdm1lSzBOYkM1YlRZMkFz?= =?utf-8?B?eU1VaXRrTlN5VjltdmZxbXpnQU1sRklxVnN1QWJuSXk5cUxxckU5TDBnZmRN?= =?utf-8?B?WDRaT1paWEM0ZE1Lck12Z2pOQ1lYcVJsS0ltS1Zid1ZVRUFFb0RiM3Zld29E?= =?utf-8?B?Yk4wR1RQK3JpVVBEUzUwOW5vYVQzd1dmRUVSQk91ZkRkQkRoaEkvdUNWVDZq?= =?utf-8?B?NGNJV0xDKytGUFJtZkRSRGFwekxCd3N2anJISGI5V2JDL00yNkNqb01GNkdr?= =?utf-8?B?WW9ZNjhPTkVjWXdoNGo0ZSsxUC9YamNQTlU5bzRsbmxvajFTK0xpYVEyT2Ry?= =?utf-8?B?dUM5Qmp6a2JTcHRlVlNsZnBGK2UyMmdObGJ3M1ljQVZHMDcxSXpPK25HaTdy?= =?utf-8?B?enlZYkRFZnBsSStBbjFESXBTSUZqeHpSckpjY2lRZlNGK2xVeHlCS0NDdjh3?= =?utf-8?B?TlRMc1QxenBGQTBKOGJldS9lbzZ3amF6WnNJWUtkajZ0RUpZdUw2UnRXMHpT?= =?utf-8?B?alUyRk84UHpjWXFuYUtMaVoxaXhnT1N6Rk5GS0R5Nm9RZGI1QXhoT1I3dWN0?= =?utf-8?B?bUVkOXNJQjF3bGZ0eXJObXE1YVVOaTgvK094NUZzczhPYysza3ZNVHZQTnhD?= =?utf-8?B?dG40UjZBUW9IVnFyT3c2dXdRaE5DRkswVml5Z3pHRll6QlRWa0lWMXIwc2k2?= =?utf-8?B?ZFE9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: =?utf-8?B?TmlTbVc5eWtpSElEc3BqV2FpZ0dTL0tGWWVxR2lUZGJha0d0U0JsSEFzYko5?= =?utf-8?B?eEtZbnFsU2tGQXpjb2dQbnhtM0t3SERXU2hHVE16QkZNZU9rZzBLY0srdUd4?= =?utf-8?B?MUwzSldUb3g2MzEzZCswU2xQbFNLQWxiUTJXb2VKSmpMVzRLUkNlb2Jtam03?= =?utf-8?B?dWpKdVh2dE1CeTRXemo3c3RMbnZlNGdDdll5aDlhVUlSanJJU3F3eExSaEsr?= =?utf-8?B?enJCZ254WnJzbzJWRit4dDFiVEpCNjlqTzFoRlBDTTJWOVI4UzgzaVpSczFz?= =?utf-8?B?QzUrbkhnQ0R0ODNyUTV6ekxtQkErL0czdnd2TXB4djhGR0xXRStKUWtqZ2o4?= =?utf-8?B?YzJHck9wby83Rm1JSFpBaXQ0b0RLRS9IUHlWVFltRlNRMmpIdVd2VWZDQjJH?= =?utf-8?B?Z2liSm1PeklURjVRM0tnVzQ3RlJxNzdhaS9RR1VvZlR4NUJ2cGY4bm9mN21M?= =?utf-8?B?QnNiTjc3VHFLd2pTaWtWbjk2VncwZ3VzMWVndDRxS2p6LytleUpCYi9yUlJL?= =?utf-8?B?NmkzTGpRbklxNm1LMWdpdWdscURDYlBYREZwMjNVSHQ5MUsrWkhIQjE4ejRK?= =?utf-8?B?bGZ5aDRrSHdLSjlxdTlGZGdPZlFZeElaL0ZQTFhtTUMyVHZHNU9VbGV2clYr?= =?utf-8?B?VFVwZGlXMGRVM3ZWSXJhUTNSQ2NobFc2VGQxQjRkRWZhTWZSV01xcVVnQkhk?= =?utf-8?B?UWVlUmtXVDFQVmJDZjFHaE1SNHRGdkhCT3ArbVNxUDM4L3lYUjJJQ0F0am5S?= =?utf-8?B?QUYyaFlCRTRMVUJsT3N6cUNwMTV1aWNpRm9Fdlp5dFlxcjdCazdiOFNYeDNE?= =?utf-8?B?VjFIRGUyUlhxRkJmK2RTK2UzTGhoZlphdGFHS2pZRXkvS1ppTlVBN3Y2SE9m?= =?utf-8?B?bGRkc2lveWcxWDNvZlIyR25HVzNnelBKQjJDWTRRL2NiczFSZlk3NjdJMGNT?= =?utf-8?B?UTVQMUY4MDVqb2JqaUZPTkFiT2NUU09jby9pOGpGdXJRKzVrM05rUVF0Rm5m?= =?utf-8?B?aFhZZS9lZnRCckwzang3ZUFoNlJzNEZNQWd6N1FkSWhNcTQ3ZTRBYnRNdUNa?= =?utf-8?B?Mk8vM2NyMWRTVEZBbHFibzlrVWU2R3JQeXp2NDB0anlySU8wcGxSL050bDR4?= =?utf-8?B?RUwyMSthYll4VEZvMHplUldpTjFoeCtnaDJMZ0Q4dXUyeklwU3F0Zmo4N0xP?= =?utf-8?B?bUwrWE9TUmdSQW9PTU9FYU1YanU0NDlBbXZubTV2c0xKWWNaT0FDTzQ4UTB1?= =?utf-8?Q?Q3Tl2VcsXgtsgt/?= X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: c9d2881e-1b89-4671-ba4b-08db68cc0365 X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Jun 2023 09:29:24.5571 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: uqr5QLXTxg1dPLcltsiOGELrn7evPUPkEt1R5QhYhYNxxSR//TswpJ8oBt3HSCSA1jauj6SmKWrLF4CBfZwauQ/VTkuNqoAiR59kU3H9O/I= X-MS-Exchange-Transport-CrossTenantHeadersStamped: BL1PR03MB6071 On 09/06/2023 10:22 am, Jan Beulich wrote: >> --- /dev/null >> +++ b/xen/arch/ppc/boot_of.c >> @@ -0,0 +1,122 @@ >> +/* SPDX-License-Identifier: GPL-2.0-or-later */ > By default we mean to use ... > >> --- /dev/null >> +++ b/xen/arch/ppc/early_printk.c >> @@ -0,0 +1,36 @@ >> +/* SPDX-License-Identifier: GPL-2.0 */ > ... the more modern form of this (GPL-2.0-only). Anything deviating from > that may want justifying in the description. GPL-2.0-or-later is fine. It's only the un-qualified GPL-2.0 form which is deprecated, and should be replaced with an -or-later or -only suffix, as chosen by the copyright holder. ~Andrew From xen-devel-bounces@lists.xenproject.org Fri Jun 09 09:32:10 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 09 Jun 2023 09:32:10 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545740.852264 (Exim 4.92) (envelope-from ) id 1q7YTU-0004Dk-O8; Fri, 09 Jun 2023 09:32:04 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545740.852264; Fri, 09 Jun 2023 09:32:04 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7YTU-0004Dd-Ks; Fri, 09 Jun 2023 09:32:04 +0000 Received: by outflank-mailman (input) for mailman id 545740; Fri, 09 Jun 2023 09:32:04 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7YTU-0004DV-35 for xen-devel@lists.xenproject.org; Fri, 09 Jun 2023 09:32:04 +0000 Received: from EUR04-DB3-obe.outbound.protection.outlook.com (mail-db3eur04on0630.outbound.protection.outlook.com [2a01:111:f400:fe0c::630]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 7d002475-06a8-11ee-8611-37d641c3527e; Fri, 09 Jun 2023 11:32:02 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by PAXPR04MB9304.eurprd04.prod.outlook.com (2603:10a6:102:2b6::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.32; Fri, 9 Jun 2023 09:31:58 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.039; Fri, 9 Jun 2023 09:31:58 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 7d002475-06a8-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=JwrW3AylT+RhJv7TZQA5zdEDmKJsy6HDiekZdVn5cd6tZZEDRjV7N09l/v903jM2SDEjE8yNs0UMhZ5C1nSg6QUNEQRtDnHCk7653z4yWv8Zjt3d71BRJ4MOQdcz5BhRtnYktpTGL9aH5InoZX07lXbrB0cWy+V8yZAI68T5taTOrenLyixmqujF0yLibtqk8Sw6mS2UOw9xquV6qcry5F/kddzg2vvvlJ1ZhMp6naykSWFj29/Q10PA4cZZs5mB5VG+d1ijegZhjidS6ONTHsmw54LUrvRiH6xLnEt7ibLBH+BupC7PiX38kTh2df8DoH7cgMUAgAMqN8a2CAKR0A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=p3zI9Mh/x5ZJX9Vk3bxj5HHqfaHgpWBbNS0I8Uu63V4=; b=MBxE8pO7pv/M5P9jtQFRXjZqbTxG/A/e0CWN9LCNtdjmzsvuvYsaMy9J/gqj3jgcYDTdRV6M5LDMAjdFloxikze1cARkJAEqfh4CvG1ObBd+RWiKEC8L0uTm5qFeXuG994Uv6qa1pfyxp+xn3T2lgQFja2qjdaX17Hskr2p766Pd700idcElF8ESC7fT0a2464bFJk2v53tK+rplHxpLjHWa7ceTucIJRrrKxNf1Rjg3UcZoSupADTjlAIO6/UqTdSR/OJcZT5C8pXxBVoNH3LcOj6ULu/uXjwdJXiOFrf7PPuSxCgwyZWhYxKhxVq3J0VXYQG5kLi6rusvxxWz40A== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=p3zI9Mh/x5ZJX9Vk3bxj5HHqfaHgpWBbNS0I8Uu63V4=; b=GMwen8avMMxHQGzL2kfhUYjViGdjN0P9FxBHxKsq8/ORdwyjAOoiKcldqJD5bfiE/cWQOJIpTFS55oeIbEajUKdjvckY6FANHm9enrkSRCjyvG3fi8YoTcP+p9g2ADeLMKV3B4BK4ye7l24cKSfw3GUO869gtVmNYypREzvhkR60QRlfkdTbNCnfUqw9fcllwaiWJFzsb5qe9Nsf0Jeg1Vd1RsItm29fV0/X066sADOitqK/6zJ+pPPR/UPSBn+y4fXxDPBLtmCp88BeP63UaTVGpNUd5G6ISZiiJrRsZdUaRF/EvKeZrHs4JFEggCVbUyJzEJl25+uSx9m7dTgUSA== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: Date: Fri, 9 Jun 2023 11:31:56 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH] tools: Move MASK_INSR to common-macros.h Content-Language: en-US To: Andrew Cooper , Luca Fancellu Cc: Anthony PERARD , Juergen Gross , Xen-devel References: <20230608174014.2500954-1-andrew.cooper3@citrix.com> From: Jan Beulich In-Reply-To: <20230608174014.2500954-1-andrew.cooper3@citrix.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR0P281CA0220.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:ac::15) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|PAXPR04MB9304:EE_ X-MS-Office365-Filtering-Correlation-Id: 2cca001e-1a4c-48ce-af8c-08db68cc5f3a X-LD-Processed: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: zaV2l77dk/xe06vxiwGM2epPI7c12sbTbQrbuKFyF5ihCe3cLb5X7JRk6CUK23PsvAIa0mlIk2s14fA/Jj5xiv2oxPAJgTnk8tmOiRpS1ze5cFSPKsZDjsXuZYxxbQHFayFDhJg2isMroitNOGUL96Cu1dOn7x51ZqrqLK1uivWcY+n5eTa4vm3mhEl4nVgrAmS4W9yh0vbnQ097PNoOydvBJZmLBexToiCHjMnfjdWmQjUAO/PG92+Na+zkyj7HL851ytVMQxG8Vf36q5FcJlAr5oqsUkC0lwDSHtQsfw4llREMYKBeWlfPv0plTbe7JduCWBLgRVRHSK7m/j+0FflnegzUVh8mi4oQLrK3vYQVh+4uMfBgjMzBOwmFzTyR4NynDCyOUObUr7CHODJKedyEXG2klTQIkzdeXcxGTxOqxhxcLDAxeeXduwJtXVHsD0Z/DBe1u4EdjcSzzRz3GpMp6wCDRw+RAsVH+QrTOhtadnE2MMdru9S8loLEjKQQsCCbUiFTfz4eY/JJBmsXJC5DzVyrBf8l3ABqMqBJEi3/1qAeQ9uH7sLI8rNFzzsR/xqmKNEdNZAVR1UIidS3HF9gt5Quy5Xh1pXKgh4CDEoJCY0KjfCH5zA1F/cv3IdUg0xGcmRVkQtsD59fOfcFRA== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(346002)(366004)(396003)(376002)(136003)(39860400002)(451199021)(2616005)(6486002)(186003)(66476007)(66946007)(54906003)(110136005)(478600001)(8676002)(316002)(38100700002)(4326008)(8936002)(41300700001)(66556008)(83380400001)(26005)(6512007)(53546011)(6506007)(86362001)(31696002)(5660300002)(2906002)(36756003)(31686004)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?dm9iZmdzSkF1U2pMdnZQbGRlWGY4TVozRHA2NWdkUE9TejRTR1dlRzlJb0I1?= =?utf-8?B?ODhoVnhXSEhxQVdjNDdlazlETGZJVE43bk9uekJ5SnpOOGFFbTdkVys3MjZk?= =?utf-8?B?TVl2cWozY1VFbFoyVnBjdVRSWnRTT2lGeHdQMGI1ZzhLYU1HaHB6SXlMMzF0?= =?utf-8?B?Z2VCMnk3UmZwQ2JqVzQyV0x2c08xZzJlZ0ovd2w5MlVydUM3QkQvR1R2eE5k?= =?utf-8?B?SzdTeStnaFUrajVZOFczS2NJZm91YkFBL0hPbmFwbGFQeitndURqVmxXbmFJ?= =?utf-8?B?cXRhaHpLSHJIOWpOMEViS3U2c0V0WjdGYk4ydko5aHBVM1lsU0FNRnB4bit4?= =?utf-8?B?R3BhL0l3aUd3b3ZNbGgrZFJhVU9acnM5Y05uWHRXSU50SE9LUnUxajlpdzJ3?= =?utf-8?B?R2QwbHFUZ1NiU1R2K2V0ZlN4TER6M1hHbU45NnFNbzJJUHhqM3FLVjlvSnNa?= =?utf-8?B?dWkrV3crbkpCWmtHM0NyZWxBQ3pMZysrTFR0Y1poNi9vNzRXUFJFZUt4LzVJ?= =?utf-8?B?a0duUHBrVTgva0Rxd015ZHFSZ2Z2d2hUNWc1VUlKZk0ra0hzUXd0cVl0eFBv?= =?utf-8?B?L1dXRXVjamxXMEl3T2ZERkJ0OUVHVU5BcFc5c3FSZ1RBd0RJbEZ4b2RnTjFh?= =?utf-8?B?OFp1NkJTNkVPWkRvUThiTmRKd2c4ZWdHTFA5ZDdyY3NwOEgrTU9CQmR0b3E5?= =?utf-8?B?Ym55N2gveDJLT3JrUTF6emwyN2w4dUNwY21aNW56ZE9jeFV1dEwvTHpSOHNM?= =?utf-8?B?am1wOUpsTTJieWsxNEJVRFl0NHc3MDZ3djZERXArbzNTOXNPU2NRcnBHdFZq?= =?utf-8?B?RjZaRFh6QVRXbTN2RHFNL0FwbkdBNGF6NlV1ZUJmZ1J1amVVOW9acWZmT0Iy?= =?utf-8?B?eW9IRmhJSUxhNE9PMEQ5S1A3SzQ2cTBReWZxMkRCZ1d0dlZLbWNmb2Z3WVJX?= =?utf-8?B?TUpJZVdoMi8rYWtXSE8waVVMWkFMTCtLaTRVT3R5YSsvSEhINmVBY1d2Mnpi?= =?utf-8?B?aDFVOGVtK1VmNlBpdnk5YzJ1M0svQ003cHFLUVM0eHFwckg5Ynlrb2pvMXRD?= =?utf-8?B?Ulo0NGladEwwbm5tZXVwNmpTVE5tNWdCM21FdFRXTlFsaFFhQ05UTXUxbEZn?= =?utf-8?B?cno5NkFIeG5BVURvVlVwNFpDV1ZaS2lFSWFBNEtNQ0tvT3ZlRnc0cDJzemMx?= =?utf-8?B?MFAwOXVNaVdNc2xpczlOZzlOSDBKa29TK3hYQ0tGbjk0WWEyTitVNmNTd3ha?= =?utf-8?B?TE5DaXptNEQwTHI5RDE0aG5PbXArTnppLzFBa0p3VkpOeTNiM3QyRk9LVGY2?= =?utf-8?B?S3gyOWJmMmdxNTJHRWpEUldsN0FYemEydjlubU16YllIS2pJTy80elQvd2Ny?= =?utf-8?B?a1MwZG01VXVlNVNCRGJGNXdHaTdOdFJxbU5WeFB5QzBaSGI5VnV2d3lOekxt?= =?utf-8?B?MEdVa2l1WUtIazV3R1h5TzNOdTAvaGNRNWFHRXpLdGtzN0h0VTV6Tm5abDZN?= =?utf-8?B?ZVl6Rzd6ZXdMRDBEOGhtVlN3VTRONFBMZWl5dkUzU3g2YzNKVkJPZFJtOUxC?= =?utf-8?B?SlQwSWVBOGF2NkszaTF0ZXJ6UXdPTXpuYWh4cFp0TWQ0WStiSVhPUWEwaDJi?= =?utf-8?B?SXdLbHRQODhITFQvVkJERHZnRS9jTG4vbHhqV0UwcDlLQmE4b3hVR1RIMGRv?= =?utf-8?B?RlpzTUo2eWdaSE03eXliRTVwV3paK2NvRWloOHhOa0FKbE1iOHR5MU9IN1JU?= =?utf-8?B?MnhDY3dnbHUwMDJqZjRzaGdjdEFUM0hZbDJVV2c0UkpXa1d4TkFnVFlLVlhS?= =?utf-8?B?cFdNQzdOSVlJamlrQmxOMkV2UTVPakNFd3FNOThoR0NXWGVlQ3BzR2JmYmtM?= =?utf-8?B?YmVOd1RhY3RpckVRckJRYVh3eE5HY0dqZTBBNlZXaW5yTDBBZThUbGFhZGJs?= =?utf-8?B?SWtXVWt6R09wQno5NFNIb1RVQUJlRW8zbU1VdS9pRFJxMXk4eTQ4dEpPNWt0?= =?utf-8?B?MzBuSFBmTDFwaFJIYk9kdGF2bzZ6dnRQblVjejlBanlieHRqa1V0T3o2Umdw?= =?utf-8?B?cVhkWUtDTnpTd1kyM2pjNklDQWxZV3V0UU1lbHBUMS9YMjlMK1BDa3lvTlJY?= =?utf-8?Q?kLBAgu43Z4GVN8/Sj697TJyKT?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 2cca001e-1a4c-48ce-af8c-08db68cc5f3a X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Jun 2023 09:31:58.4587 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: V7pq/0Sr/2FzCd4XeNQCYw2SaCnh2u2xV3rbRlOae0JYE1kYVIvV+61BTqd7b8x98ffbaZ1O4x7ObznJDDU2Vg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB9304 On 08.06.2023 19:40, Andrew Cooper wrote: > MASK_EXTR() and MASK_INSR() are a matching pair. Keep them together. Right, that's one thing which should have been done right away. The other is that both macros should have been purged from tools/tests/x86_emulator/x86-emulate.h (which includes xen-tools/common-macros.h). Luca? Jan > Fixes: 56a7aaa16bfe ("tools: add physinfo arch_capabilities handling for Arm") > Signed-off-by: Andrew Cooper > --- > CC: Anthony PERARD > CC: Juergen Gross > CC: Luca Fancellu > --- > tools/include/xen-tools/common-macros.h | 1 + > tools/libs/light/libxl_internal.h | 2 -- > 2 files changed, 1 insertion(+), 2 deletions(-) > > diff --git a/tools/include/xen-tools/common-macros.h b/tools/include/xen-tools/common-macros.h > index d53b88182560..168691be0e93 100644 > --- a/tools/include/xen-tools/common-macros.h > +++ b/tools/include/xen-tools/common-macros.h > @@ -73,6 +73,7 @@ > #endif > > #define MASK_EXTR(v, m) (((v) & (m)) / ((m) & -(m))) > +#define MASK_INSR(v, m) (((v) * ((m) & -(m))) & (m)) > > #ifndef __must_check > #define __must_check __attribute__((__warn_unused_result__)) > diff --git a/tools/libs/light/libxl_internal.h b/tools/libs/light/libxl_internal.h > index 8aba3e138909..61f4fe1dec55 100644 > --- a/tools/libs/light/libxl_internal.h > +++ b/tools/libs/light/libxl_internal.h > @@ -132,8 +132,6 @@ > > #define DIV_ROUNDUP(n, d) (((n) + (d) - 1) / (d)) > > -#define MASK_INSR(v, m) (((v) * ((m) & -(m))) & (m)) > - > #define LIBXL__LOGGING_ENABLED > > #ifdef LIBXL__LOGGING_ENABLED From xen-devel-bounces@lists.xenproject.org Fri Jun 09 09:33:56 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 09 Jun 2023 09:33:56 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545745.852275 (Exim 4.92) (envelope-from ) id 1q7YVC-0004mH-4V; Fri, 09 Jun 2023 09:33:50 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545745.852275; Fri, 09 Jun 2023 09:33:50 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7YVC-0004mA-03; Fri, 09 Jun 2023 09:33:50 +0000 Received: by outflank-mailman (input) for mailman id 545745; Fri, 09 Jun 2023 09:33:48 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7YVA-0004m4-HT for xen-devel@lists.xenproject.org; Fri, 09 Jun 2023 09:33:48 +0000 Received: from esa2.hc3370-68.iphmx.com (esa2.hc3370-68.iphmx.com [216.71.145.153]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id ba99a4f9-06a8-11ee-b232-6b7b168915f2; Fri, 09 Jun 2023 11:33:46 +0200 (CEST) Received: from mail-dm6nam11lp2169.outbound.protection.outlook.com (HELO NAM11-DM6-obe.outbound.protection.outlook.com) ([104.47.57.169]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 09 Jun 2023 05:33:43 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by PH7PR03MB7223.namprd03.prod.outlook.com (2603:10b6:510:243::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6433.24; Fri, 9 Jun 2023 09:33:41 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606%4]) with mapi id 15.20.6455.030; Fri, 9 Jun 2023 09:33:41 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: ba99a4f9-06a8-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686303226; h=message-id:date:from:subject:to:cc:references: in-reply-to:content-transfer-encoding:mime-version; bh=H79UFLgxw7KKovMhydB+oo927T9/OQ++b5HVQWEzUR4=; b=JlZSwz5awxvrdmjCzQgxcXcXzMtuhKJVmdANpBtpejN14Z0xzIJ+J8AB CYovncQ9BGsbqvmXVINbYFkBw5GHhubCQlEd9W94ADA4gQjcYo63MFj6W V1MRoZcXh+UV854zszKQTRTySVKNGcEc9GhkFrJeOlFsBDTTNDk9aHpBL 8=; X-IronPort-RemoteIP: 104.47.57.169 X-IronPort-MID: 112073506 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:tNqNXaqYVjkDOGA/mBFomxAEg/1eBmLZZBIvgKrLsJaIsI4StFCzt garIBmDMquLM2Onft8lb96z9B4BuZ7SmIRnG1NpqSg2RnlAp5uZCYyVIHmrMnLJJKUvbq7FA +Y2MYCccZ9uHhcwgj/3b9ANeFEljfngqoLUUbKCYWYpA1c/Ek/NsDo788YhmIlknNOlNA2Ev NL2sqX3NUSsnjV5KQr40YrawP9UlKq04GtwUmAWP6gR5weAzylNV/rzGInqR5fGatgMdgKFb 76rIIGRpgvx4xorA9W5pbf3GmVirmn6ZFXmZtJ+AsBOszAazsAA+v9T2Mk0MC+7vw6hjdFpo OihgLTrIesf0g8gr8xGO/VQO3kW0aSrY9YrK1Dn2SCY5xWun3cBX5yCpaz5VGEV0r8fPI1Ay RAXACIkUFPTuOCI+ruQWK5sisgtNebIYIxK7xmMzRmBZRonabbqZvyToPN9gnI3jM0IGuvCb c0EbzYpdA7HfxBEJlYQDtQ5gfusgX78NTZfrTp5p4JuuzSVkFM3jeeraYSEEjCJbZw9ckKwj 2TK5WnmRDodM8SS02Gt+XOwnO7f2yj8Xer+EZXhr6Qy3wbOnjJ75Bs+e0aFvvOejmWEAttvb HcGvXAOiYEUzRn+JjX6d1jiyJKehTYeUddNF+wx6CmW17HZpQ2eAwAsSiNKYZoovck9SDguy 3eAhdavDjtq2JWXRmia7ay8ti6pNG4eKmpqTT8JS04J7sfupKk3jwnTVZBzHaitlNr3FDrsh TeQo0ADa647iMcK0+C3+A7Bijf1/5zRFFdrt0PQQ36v6R5/aMi9fYu05FPH7PFGaoGEUl2Gu 3tCkM+bhAwTMayweOW2aL1lNNmUCzytalUwXXYH80EdygmQ IronPort-HdrOrdr: A9a23:AEPOAq5OJkjEpnQeZgPXwPfXdLJyesId70hD6qm+c20tTiX4rb HXoB1/73XJYVkqKRQdcLy7Scu9qDbnhP1ICOoqXItKPjOW3FdARbsKheDfKn/bexEWndQtsp uIHZIObuEYzmIXsS852mSF+hobr+VvOZrHudvj X-Talos-CUID: 9a23:L0bP6WFhrc54HvzjqmJ13XBXSv8nTEfU52WXI0O0B39Ga+GaHAo= X-Talos-MUID: 9a23:PdzQhQkCBg5GztmVidkIdnpMKfl36YOqI3pUmKVBgNvDbwxUEhGk2WE= X-IronPort-AV: E=Sophos;i="6.00,228,1681185600"; d="scan'208";a="112073506" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=V8XljpCQHiCt4kPe3bRRmB1cFzRtolnmnk1VCLechXPdcagLsthxIDO3qz/axRHeJJ1ZoGyfyIWsfQlH7QSaHDgdPKKwmaNh40gXUPz26OvQWGNqbdg4TPPfoF8lw80IhiKP70GODj5MMKxBVNIV9sq+HDrSgsX9lLQGt5/SxUe0tZRO8Ca7GvD00ukU7djEC1RFECw+KN51J71HLhIcBcHcECLxl72ekBaNqxNFh1jfp9HbD9ineWEJsRpPo9a+vORqZ1d4AwntgXi/UuvYnIei4dhNV+mnqFsjiaQjS8tLPTUdamgM8mrwW03y3KFww7L7gnV3fh4+o3vjG1mnfQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=5h+XW1aJ9yMfSE9dPXkPuSLt2sAT9XbEY8yJCPADeqc=; b=i/rqUu6SC8ORfuI0KYs4pHE2r8BabY0w/7ZxkTQyzFqwYUQsGGgJXZX5JlfHuQ3o5PVZlYYOn8uc/RzqKvIDmQCzy2ZRuKcj15wOH0KozwrGhG7xIlrSJ/kYuFEDwtRJoiSnhV9wKniByRqaSESUu7PlFuF82NxloXPtINuRtjdHgnjj8MctDtRQkwrr4/34SHdr7msVW93bbN/kdRV8hVhJQabuA1VILd7QhQzk3oyt7kphGYMa5QdPbD2dSGqTHQmi4xh5vcmUzoyQjK2j6eqpqygsM6GQhAZv9kaIHsjwCO0PBkS7FIh7RPalIB1QndG8OJJAlucEjdxD7hwXRw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=5h+XW1aJ9yMfSE9dPXkPuSLt2sAT9XbEY8yJCPADeqc=; b=DstnYMdMTRTg44nWlK0fhy3cSZPwHWznmNKoPrrOluzY/+GeD7SNSeM38t+q+gtel8kRiff6UwpFkiZDl31l8czG31p73TOEsBmRcTfZwSabA6LGllhVGV8Cq1bOPAoTGoWRFi5obaxroPINiXmSxRaaBp8xk8thuRCPIFiiRYo= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: Date: Fri, 9 Jun 2023 10:33:34 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 From: Andrew Cooper Subject: Re: [PATCH] tools: Move MASK_INSR to common-macros.h Content-Language: en-GB To: Jan Beulich , Luca Fancellu Cc: Anthony PERARD , Juergen Gross , Xen-devel References: <20230608174014.2500954-1-andrew.cooper3@citrix.com> In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO2P123CA0043.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600::31) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|PH7PR03MB7223:EE_ X-MS-Office365-Filtering-Correlation-Id: 41e62945-61d7-41b7-dc0f-08db68cc9c2d X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: S/OplE5lcfUE1wI5hgeVdHV7fxuf/Hb5G67O9GGPGGTOQlblG4FGt7ALbgMZ5+1jLJ1Gn7rYajUmR0Gm3nUJnot6xJY+zUCH1hJGM0EJTZ5YzzsFd9hu3XeakHEV6CrJ3+i10Fg+Oax4P1mUG3NNZov7Zl9W0jJiFq72m32vGohoZjj2b72FR1PHVAxVsYzi5fxhs+i0hlfzANTs7n9cQRdtRQjH36A8e0hSWgMaQ18ADGKiLba7gEKTho7C0eMfIzffaRvU4kZdkfz+o5l7UHYYp57bq+CujjGj1dQWnX4bVITmNyhMBt3NM3RuBatTCD34QWUzaW4Wl6SaOgt0TSc/9vO7w6GOh4JgDotZeiS3vE2a6OuZssM0JpddbKLqa7Swrr6yv2FdOgAJDXJce0ayx7UnhqYBNSWIDn/Pw9Xq/474dz9BRP2HOvCnvzlN1cPXAT+iVD71wGtQUbD08n3Z1ricRuHqPHQjRIzfrBwcgbt1E2D+ynp9rOh+2qRyWyQnSJF9Cz04H7D6Y0HG6YGpssXlEvx4k3kedy0ywryuMSbEnfYWMqadZy1oCdxjSKlbzx+cMAetl9YHAOW+El9y6oukRhvXCZN8MrqTeXRlTjIa7dWUnQlpA9S6h5oi0dniKyaeF4gKhl/lRzgMFA== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(396003)(366004)(39860400002)(346002)(136003)(376002)(451199021)(478600001)(6666004)(53546011)(186003)(86362001)(36756003)(31696002)(6512007)(6486002)(26005)(38100700002)(2616005)(82960400001)(41300700001)(66556008)(4326008)(66476007)(2906002)(4744005)(316002)(5660300002)(31686004)(66946007)(8936002)(6506007)(8676002)(54906003)(110136005)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?THhjSzhIcUFpWHNESDNNUC8yVmNNc0dVWDQrR255WkhzQ281YVRUalc2VGxz?= =?utf-8?B?VFAvV05Sd3ZyMnh2NXl0Vm5kcUc4MzRUd0g3aHRXVGE2U01odGRubHdrZUNI?= =?utf-8?B?ZklpLzBWWHE4OHZIYTdwV2NZQzVoMXdrS3h4SFFPZVBZMnZ1bENrTHlMc3FB?= =?utf-8?B?dnQxVEVJS1RWRkpBZDhuMU5GR1E4TGtNTFR3ZGw0WnF3dStEUmd3WXNlZjh3?= =?utf-8?B?a3RlUDRUc3FaZXBJTS9XZEk5cmZ6MlVEZEg0YVpwemI0SGRHTjRwaGdCLzdQ?= =?utf-8?B?bHAwMGQ5SFVPQi9aejdNZzdvSUx4aHlVZm9sNUw3WEF0U2dmeGZHOGhUNHl0?= =?utf-8?B?emZ6ckM0bmpTRHhhSjhra1R4S0xlbGI2dHZ1aFo4UUF2RzhiQVFyMTEvLzk0?= =?utf-8?B?a1ZyTzd5SnA2Nm0yeGFneXdSd0JJRExIREZWMEx4UDNmRXJ4TCtwVEl3dHRu?= =?utf-8?B?QjFWMEhqS2VjTzk0OEg2L1pWeE8yeElFZ1hnaHllZms3WkhabjNaek1hdFp0?= =?utf-8?B?c296ekxIZk9xMVVlaGtrVlE0Mm50OGRtMnVRRFpJRWlKNHBKM3o5SFRGd0k2?= =?utf-8?B?TGZ5L1JDZnZTVll4a1ZCUldOVTBkcFpUbHBDekk4ZHEwOCtOOHQ5b3JzZFZ3?= =?utf-8?B?enpHQk1SSlpBaTNWZG5mamxKbWtLbG96Z0Vrdlpsak00cThWdmptUS9MNkhJ?= =?utf-8?B?RXFmbHJ1bUVqSXhkanRqb3BwS1FaZHRwMTU4dmVKVjczc3JUVklHa1Y0VmM5?= =?utf-8?B?ZGJlYXBtZEtUNTh5Vjhwc3NEVWp0YzJVeGdUOFFjNEYvYnRmc3kwQ0R5YnhV?= =?utf-8?B?bWk1MUlTa3QxbkljTWxscEFPV1RZM2NnRDdzWG5sSEhVUE45ZHdpYU03aXJm?= =?utf-8?B?aldVREpKb3RISXppbldhSjZtS3hNMkk2OSt1UFZlUmVTbnlwQlZweU04V0hx?= =?utf-8?B?YkJTQVNWZjZreDFscW1ZVm1KNWdOU3A1blRtdnhPcU9aS2V4Y0NlMzdFMnNh?= =?utf-8?B?SGlKS2RXVFZDUVlYNXVOd090Z2gybGlnbVlqMXIxejZBZWZxTkhmV3dYcUVr?= =?utf-8?B?Y05YaVNiNEpGN0h1UWE0bzR5RGh0djdHOXJIRVR1V29Tc3luNC9FVGVRcVkx?= =?utf-8?B?MGFSRTk4QmVuc2ZlY0NnVEFrY1orZW1kMHVVamx6S3M0SzVYWWg1UUg2aXph?= =?utf-8?B?T1p5dXdTSFRBbGQ4bzNaSjR2Y2xkOEtvMHRHV1g4OTQ2cGRwdEtjditaRGp6?= =?utf-8?B?NmtFem4zcFA2cTVXWjBBRGNlQUtGQ2FnOGdNV292YUo5OThiT0w1M1o1My9m?= =?utf-8?B?bityUVV6dEUyTDFzZk1YZUJ5K0JGTTZjeUZhS2NBeGhmOVg1QlF0Rk1pSDBR?= =?utf-8?B?MnZCOHVydFE3ckRYV2JmcWZlT044ak45VGFPc0RnSkdpUVN5ZzdUMUJieVVl?= =?utf-8?B?bjFKMHFpMzVFR3UzbnhsSUs1Zyt5eTRhSW9qNExJYUhRYnFEeTBSOE04UDda?= =?utf-8?B?L3c5Z3ZiTnVxeXdHeEZjRkZnbktVRTlYdzl0cExWSG1KMG5vRVFFdGJjSzN5?= =?utf-8?B?WGdHVDNqOWlkREdBZG92YUxvM0RndkxwRkhaY01ZY0oyMXhhTXFEUEdYN0Yy?= =?utf-8?B?alRSaGxIWUJwYm1vSWdtUC9CaWgwY3RPZHZsVTloaDhvNDU0azByTHJCZWVo?= =?utf-8?B?ckN5RDFqd2dQcmxRd3RHQmczTkk2a3VmSnp5cTM2ZGtxQ1FYbVE2MzR3Sk5r?= =?utf-8?B?NEdKbTBJazQ5OW10NkRNbjFmQmMrN2x1Tjcram1pVWlEcnJPOU1WWlJLTXpE?= =?utf-8?B?U1RRaXJQOEgwS3JpcjVHSXhtanFaUHhDeEsyS0tabjlCZE9SV3FhNlZhQ1dp?= =?utf-8?B?djl1KzFhTGpoam5SYXJnMTRmNmFvaDhoempVU1dRRzQwMm5EZmdtVVYyTGlp?= =?utf-8?B?K1BtdENWMzAwWlllYW1wSGdkT3FGQzBSbzJ0dVVJd2hmUDVLbEtldG1IZ2tw?= =?utf-8?B?eVRKdUtxeURTaDNETGxoT1VwRHBjTlErMnhXK21haDZVMG4wejcvZzc5MXZR?= =?utf-8?B?OWJLME5QdlZuQlQwZ3RBZFhYYnRwR09PYVVpNmY3RGNCSVNCeFEzZExQRlJp?= =?utf-8?B?VlZUZkxPRW9HUVpGNndWcUdta2tEMTB2L2tVeVhKeHF3RG15eDE3S1BGVURq?= =?utf-8?B?eWc9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: jKLPobUTMETa/RgYBmtdUBYS0s9WzyAW8fGgFcOkIhyZtnl/E2L4Zk64X0/lN4uOVIg+GgvQBFuNzhmRt0K1ZZ8xWALnFZt3khV4llI05Kzj0lTfSJYJoUVMU0iEv+AGyx6xOA9K7nh0ixtMIxVSyGTCKIgcSc/pvYU8xEgjDWC6TFhsdArcnpURd2Md5ERCBoerJhaDityEu1SL+fMpVLkw/oxP2s1ju3zraH9gMID5ghd5U9EfH15l2Xxv3PK4jZkIAx/VHSU1r0VAtrhTna5S/l6psX3+G5Vz3UhNOqm6zq+Q7qb1PakXQ7ew5rqQs+2RbKhv+4oXZR5wtnRaalsmGt9NietP61GfsvoR4oOohZqmjqMuSSS/G8qw9X9tcWF9uYoCB8icz/9FCajp8eb6XTz9JP29KyY362MLjX151s4GEEfv3mx1gBB5xY204BrsYo78zurcpav+1RI00STqUYGjo2yxBj3uvosAemFUjicwedGHFcnC4XsSMB2IuZbWLYO5pVTuG4RSvHX2Yai8+G7abQfDbOqcrdOoPnx2f65gJt+ZIGWhOhn/L4VbW7s7TBQCiGtt+m7fkXRvEK/fEKczNHzETDXxXscQI+k8pyrtwyyJHN4UJIwMQJMBU82rG8V0T9NKJuLaUZrE1xlEF15LKCyDeVYJrYaRjRVw/JyzNgjy+XiRWIgo0x6/WA9NzGG4xFqAsY2mCoxHu2LM9xoX9ElADmcwCX9hqzxuRJNQWu51A2xn0vOkjCC4syUNklZXtPFEKl7IonheAjgaxb3YsYzP3TI7b46lnEISJ4VG8vcdIuxB7WkM5pW4 X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 41e62945-61d7-41b7-dc0f-08db68cc9c2d X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Jun 2023 09:33:40.8718 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 8zp4sMiuiC4Ju63yn07bE93ub2r0fOFmOyfVlJFgqERL/cBa9NSR9BMp2xnw4WdNU4JG5iF5z4cyCdXJ0rn/vzsWKCtVY9XSdm45Yl3MhS0= X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH7PR03MB7223 On 09/06/2023 10:31 am, Jan Beulich wrote: > On 08.06.2023 19:40, Andrew Cooper wrote: >> MASK_EXTR() and MASK_INSR() are a matching pair. Keep them together. > Right, that's one thing which should have been done right away. > The other is that both macros should have been purged from > tools/tests/x86_emulator/x86-emulate.h (which includes > xen-tools/common-macros.h). Luca? Hmm - I explicitly checked that, and concluded they didn't...  Happy to purge them if I'm wrong. ~Andrew From xen-devel-bounces@lists.xenproject.org Fri Jun 09 09:36:57 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 09 Jun 2023 09:36:57 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545750.852285 (Exim 4.92) (envelope-from ) id 1q7YY2-0005Nb-HA; Fri, 09 Jun 2023 09:36:46 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545750.852285; Fri, 09 Jun 2023 09:36:46 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7YY2-0005NU-EH; Fri, 09 Jun 2023 09:36:46 +0000 Received: by outflank-mailman (input) for mailman id 545750; Fri, 09 Jun 2023 09:36:45 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7YY0-0005NO-T8 for xen-devel@lists.xenproject.org; Fri, 09 Jun 2023 09:36:45 +0000 Received: from NAM11-CO1-obe.outbound.protection.outlook.com (mail-co1nam11on20608.outbound.protection.outlook.com [2a01:111:f400:7eab::608]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 23f89a43-06a9-11ee-b232-6b7b168915f2; Fri, 09 Jun 2023 11:36:42 +0200 (CEST) Received: from PH7PR10CA0003.namprd10.prod.outlook.com (2603:10b6:510:23d::24) by SN7PR12MB7954.namprd12.prod.outlook.com (2603:10b6:806:344::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Fri, 9 Jun 2023 09:36:38 +0000 Received: from SN1PEPF000252A0.namprd05.prod.outlook.com (2603:10b6:510:23d:cafe::8f) by PH7PR10CA0003.outlook.office365.com (2603:10b6:510:23d::24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.27 via Frontend Transport; Fri, 9 Jun 2023 09:36:37 +0000 Received: from SATLEXMB04.amd.com (165.204.84.17) by SN1PEPF000252A0.mail.protection.outlook.com (10.167.242.7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6477.13 via Frontend Transport; Fri, 9 Jun 2023 09:36:35 +0000 Received: from SATLEXMB06.amd.com (10.181.40.147) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Fri, 9 Jun 2023 04:36:35 -0500 Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB06.amd.com (10.181.40.147) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Fri, 9 Jun 2023 04:36:34 -0500 Received: from [10.71.193.39] (10.180.168.240) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server id 15.1.2375.34 via Frontend Transport; Fri, 9 Jun 2023 04:36:33 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 23f89a43-06a9-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=jAP3h2S3/PN9hEFmMbuRmNYzH96gmtv5D8Dh+fyicDAWIGM5BWaMl6CPx4b6XOgHlgz6CP1rCma2G2nCoFaB62zPa6FXeMtPu1cDRrXaXK2plftpCavEH9w/8Z8EuD/Z5eEVoJnUw5PsXgRPYQmutxUxtfOWYAKHjCsS7nrh0eiqbwHXL5/+V/BOulQE49h9nSmbevAg9FGGD3ulM2VCiw9xDf29mJqpizCWWyx+ENcdvP3J4VGQxZWbdLe/qnhnyNm2RAmUWyag5rINIZsumSBlx7UhBbSxGcR3whoU8YOq7n7AMA0wANVsnNnrtgoVe4MXKZGeUjYTpbGanE9wFQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=yoqt0ZH7gZsrkAN5dbkVkm74ZnmBovzVLSU6Qi9oBuo=; b=KGc8BCX/FOL0mdYGRgC0LbHkuzDPxx99cN8we6Uv8l424hDQLcNTksQCNUjtBeQSW50NA+6GOaSx1iiBLO0ib21rpSuvacsPmP8fudf+Rl0s5PVvgk90MB1jpFkMvLY5sIFcyeXZD4JKhfuz4VvyRjOdueOgMXplITIJGSKxF0/NHt0vxoHQ00iNtBsulR6Am261P5ax4NiWp79ERvjUNOSVlON02EP4kzd5PlTLBkhrbqh2VYlNnGRLuM9By14HCH/IUy1DJ2FUbaY15ECuRy9zHifv0nXYLvbrEgSIgeD/CXpHIYJ5YFlWv4thrYaEqvewr5k7qosgeOijQhuOEg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=suse.com smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=yoqt0ZH7gZsrkAN5dbkVkm74ZnmBovzVLSU6Qi9oBuo=; b=zrDAYHGGpAbwq8yc5zh7TNR1mTQjlHVze/kP3TA4h4JuM4KAbqYFZuVBns5ekc/bsrAQ+5EPmp233zCdTa3+ZxdLbXM4x8lPpc0NecNht7qFS2crP3p5lVEgohjTeWg8d7zIqaInAdEnimcsKUtmaocHXwvuA2z4XGDQXGkbVD0= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C Message-ID: <8efd91fd-bb36-9073-654f-fef32d0da443@amd.com> Date: Fri, 9 Jun 2023 11:36:33 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: Xen reliance on non-standard GCC features To: Jan Beulich , Roberto Bagnara CC: Stefano Stabellini , "xen-devel@lists.xenproject.org" , "consulting@bugseng.com" References: <1cd359e7-5245-a621-3be2-9323ba5b327b@bugseng.com> <8314e0fc-4ead-40fa-ef7b-4da8ce0655b4@suse.com> <80a512ac-d90e-930a-7ef7-8ebb5a80e801@bugseng.com> <968ba799-8fe4-e22f-b678-64e52f789026@suse.com> <9df8560d-4b06-2ab4-b09a-30241dd19676@cs.unipr.it> <4f5e33e7-9606-2cc7-79ec-c03cc724b6c6@suse.com> Content-Language: en-US From: Michal Orzel In-Reply-To: <4f5e33e7-9606-2cc7-79ec-c03cc724b6c6@suse.com> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SN1PEPF000252A0:EE_|SN7PR12MB7954:EE_ X-MS-Office365-Filtering-Correlation-Id: 5b2cc6cf-6fa3-414f-7447-08db68cd048d X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: DxgJ8TD0ct+HwU3SdAbDzjd9vcjfN8sU+zEq3fOzVN5LrO5WgAbiC0rkBDnzvJTWGn0Bo0WopR5rRa8NCL7VBGuZqg/ggMWr+IQU3oCSLiIhkV+1Kq/vsk4PzrSjLWwCmpOXJFlzFvd/QGGo/0ymTUq1MNpsNiW/gBt2qNBVJ0vvAwBX0jMcj+ElHIEI7tO/JQyvrSzsKQtrPwecPkWqpVkdd6maGwf6gGomTqKaFNLn/auLmS3zg789saBJQJKzkJlUUdj6cgJKYieJKce3nuP+pLc6wScl4PYS8B9NsJG7TCzQSIEKECXcVHKf7/0etjE4ktbNdNsrFvOVl03tVRRrrHFIVySrRRJeKaq3xgPvcE98zHNWNB75D33PNN3uVY5+4G5genY5EHkkHsY9tPFC4OCVUQWI3d9LpW0U/3hnS8z0RS/pgLsCbh8HxAyFMMCFOw0tljLqsocjF2bCSv+FuzodeQcFzHoN73LQwaxix1pdkCj5ogezesmdU6IowTfBOjYrax6mfQ1DXfKoAcCS4YiM3BZuse8JWtE+FTpXBAqC/sMlfSv3NLwoE0pXxQNMpK6iRyC2Lryod95VZ/QWhv6L4K/zR90wToeA4HZjhe4bLs6bvqAd0/7J9MBISWiZUHvgZQEmFhFTczOh0xnQQIXCnjx5OCzfU1gRn7UNWp/mj+rDQmEd0sFcAbcwUYzfLDMbf2ZZMXeeoYFG9P5p52YGeTq9H6pgDDZxdnfvUxHX47lbmzO1QN/mIjS0iaq/OL96vKg0VD8NgLz5xZLjk+iji+5GfgBY8qzGoqtzYBPsz8FCJCekW/TfqMpW X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(396003)(39860400002)(346002)(376002)(136003)(451199021)(46966006)(36840700001)(40470700004)(53546011)(36756003)(40480700001)(26005)(82310400005)(186003)(5660300002)(426003)(41300700001)(336012)(478600001)(2616005)(54906003)(8936002)(83380400001)(16576012)(8676002)(110136005)(70586007)(316002)(70206006)(81166007)(356005)(4326008)(82740400003)(2906002)(31696002)(86362001)(36860700001)(44832011)(47076005)(40460700003)(31686004)(43740500002)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Jun 2023 09:36:35.6395 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 5b2cc6cf-6fa3-414f-7447-08db68cd048d X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com] X-MS-Exchange-CrossTenant-AuthSource: SN1PEPF000252A0.namprd05.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN7PR12MB7954 On 09/06/2023 10:54, Jan Beulich wrote: > > > On 08.06.2023 14:18, Roberto Bagnara wrote: >> On 07/06/23 09:39, Jan Beulich wrote: >>> On 05.06.2023 15:26, Roberto Bagnara wrote: >>>> On 05/06/23 11:28, Jan Beulich wrote: >>>>> On 05.06.2023 07:28, Roberto Bagnara wrote: >>>> You are right: here are a few examples for U2: >>>> >>>> xen/arch/arm/cpuerrata.c:92.12-92.35: >>>> empty initializer list (ill-formed for the C99 standard, ISO/IEC 9899:1999 Section 6.7.8: "An empty initialization list." [STD.emptinit]). Tool used is `/usr/bin/aarch64-linux-gnu-gcc-12' >>>> xen/include/xen/spinlock.h:31.21-31.23: expanded from macro `_LOCK_DEBUG' >>>> xen/include/xen/spinlock.h:143.57-143.67: expanded from macro `SPIN_LOCK_UNLOCKED' >>>> xen/include/xen/spinlock.h:144.43-144.60: expanded from macro `DEFINE_SPINLOCK' >>> >>> I'm afraid this is a bad example, as it goes hand-in-hand with using >>> another extension. I don't think using a non-empty initialization list >>> is going to work with >>> >>> union lock_debug { }; >> >> Yes, this is C99 undefined behavior 58: >> "A structure or union is defined as containing no named members (6.7.2.1)." >> >> Here is another example: >> >> lpae_t pte = {}; >> >> whereas we have >> >> typedef union { >> uint64_t bits; >> lpae_pt_t pt; >> lpae_p2m_t p2m; >> lpae_walk_t walk; >> } lpae_t; >> >> >>>> xen/arch/arm/cpuerrata.c:678.5-678.6: >>>> empty initializer list (ill-formed for the C99 standard, ISO/IEC 9899:1999 Section 6.7.8: "An empty initialization list." [STD.emptinit]). Tool used is `/usr/bin/aarch64-linux-gnu-gcc-12' >>>> >>>> xen/arch/arm/cpufeature.c:33.5-33.6: >>>> empty initializer list (ill-formed for the C99 standard, ISO/IEC 9899:1999 Section 6.7.8: "An empty initialization list." [STD.emptinit]). Tool used is `/usr/bin/aarch64-linux-gnu-gcc-12' >>> >>> Both of these are a common idiom we use: The "sentinel" of an array >>> of compound type initializer. >> >> Wouldn't it be possible writing such sentinels in a standard-compliant >> way, like {0} or similar, instead of {}? > > I would be possible, sure, but the question is whether we want that. Iirc > in review comments we've been asking to preferably use {}, for being > shorter / less clutter without resulting in any ambiguity. > >>>>>> U6) Empty declarations. >>>> >>>> Examples: >>>> >>>> xen/arch/arm/arm64/lib/find_next_bit.c:57.29: >>>> empty declaration (ill-formed for the C99 standard, ISO/IEC 9899:1999 Section 6.7: "An empty declaration." [STD.emptdecl]). Tool used is `/usr/bin/aarch64-linux-gnu-gcc-12' >>>> >>>> xen/arch/arm/arm64/lib/find_next_bit.c:103.34: >>>> empty declaration (ill-formed for the C99 standard, ISO/IEC 9899:1999 Section 6.7: "An empty declaration." [STD.emptdecl]). Tool used is `/usr/bin/aarch64-linux-gnu-gcc-12' >>> >>> Looks like these could be taken care of by finally purging our >>> EXPORT_SYMBOL() stub. >>> >>>> xen/arch/arm/include/asm/vreg.h:143.26: >>>> empty declaration (ill-formed for the C99 standard, ISO/IEC 9899:1999 Section 6.7: "An empty declaration." [STD.emptdecl]). Tool used is `/usr/bin/aarch64-linux-gnu-gcc-12' >>>> >>>> xen/arch/arm/include/asm/vreg.h:144.26: >>>> empty declaration (ill-formed for the C99 standard, ISO/IEC 9899:1999 Section 6.7: "An empty declaration." [STD.emptdecl]). Tool used is `/usr/bin/aarch64-linux-gnu-gcc-12' >>> >>> I'm having trouble spotting anything suspicious there. >> >> The macro expands to definitions of inline functions >> and after the macro invocation there is a ";". >> >> The preprocessed code is then: >> >> static inline void foo() { ... } >> ; >> >> where the final ";" is an empty declaration not allowed by >> the C99 language standard. > > Oh, I see. > >> Removing the ";" after the macro invocation is a possible solution, >> but other possibilities exist if this is strongly unwanted. > > We have other macros to instantiate functions, and there no stray > semicolons are used. I think this wants doing the same way here, but it > being Arm code the ultimate say is with the Arm maintainers. Apart from vreg.h the same applies to TLB_HELPER of arm32/arm64. I think also TYPE_SAFE would want to be fixed. ~Michal From xen-devel-bounces@lists.xenproject.org Fri Jun 09 09:37:48 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 09 Jun 2023 09:37:48 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545756.852295 (Exim 4.92) (envelope-from ) id 1q7YZ1-0005yd-VW; Fri, 09 Jun 2023 09:37:47 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545756.852295; Fri, 09 Jun 2023 09:37:47 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7YZ1-0005yW-Sb; Fri, 09 Jun 2023 09:37:47 +0000 Received: by outflank-mailman (input) for mailman id 545756; Fri, 09 Jun 2023 09:37:46 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7YZ0-0005NO-6l for xen-devel@lists.xenproject.org; Fri, 09 Jun 2023 09:37:46 +0000 Received: from EUR05-AM6-obe.outbound.protection.outlook.com (mail-am6eur05on20609.outbound.protection.outlook.com [2a01:111:f400:7e1b::609]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 48664e18-06a9-11ee-b232-6b7b168915f2; Fri, 09 Jun 2023 11:37:43 +0200 (CEST) Received: from AS9PR06CA0158.eurprd06.prod.outlook.com (2603:10a6:20b:45c::16) by AM9PR08MB5908.eurprd08.prod.outlook.com (2603:10a6:20b:283::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.32; Fri, 9 Jun 2023 09:37:40 +0000 Received: from AM7EUR03FT043.eop-EUR03.prod.protection.outlook.com (2603:10a6:20b:45c:cafe::ab) by AS9PR06CA0158.outlook.office365.com (2603:10a6:20b:45c::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.26 via Frontend Transport; Fri, 9 Jun 2023 09:37:40 +0000 Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by AM7EUR03FT043.mail.protection.outlook.com (100.127.140.160) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.27 via Frontend Transport; Fri, 9 Jun 2023 09:37:39 +0000 Received: ("Tessian outbound 5154e9d36775:v136"); Fri, 09 Jun 2023 09:37:39 +0000 Received: from 9bd14464ad0e.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 0584B5DC-7FAE-4DDA-A809-5E543390C4C9.1; Fri, 09 Jun 2023 09:37:32 +0000 Received: from EUR01-VE1-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 9bd14464ad0e.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Fri, 09 Jun 2023 09:37:32 +0000 Received: from AM6PR08MB3749.eurprd08.prod.outlook.com (2603:10a6:20b:8f::22) by AS2PR08MB9740.eurprd08.prod.outlook.com (2603:10a6:20b:604::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.36; Fri, 9 Jun 2023 09:37:30 +0000 Received: from AM6PR08MB3749.eurprd08.prod.outlook.com ([fe80::ed0b:5730:a1f9:577b]) by AM6PR08MB3749.eurprd08.prod.outlook.com ([fe80::ed0b:5730:a1f9:577b%4]) with mapi id 15.20.6455.037; Fri, 9 Jun 2023 09:37:30 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 48664e18-06a9-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=CuU3SgvnK7MDsOwCCGmAlrRRrtahHvYoYwml7YKnp9Q=; b=wdKPg03pqiHl07jAGMd7+HPDz3AuKd3vxXOArGRGOPOsg7N1CobYCSp8yN90mzvZQf3KWamLzelG6tlWP3wdFuTC0heI36vP8MaTMDxgp+rKhVzBnpYL8FiL6VcpBARH4bts8bHLRS36tQExUviOM6L5XkxaXTB+ocjWB7jT22o= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C X-CheckRecipientChecked: true X-CR-MTA-CID: 3fdb2f82a6b878fb X-CR-MTA-TID: 64aa7808 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=X07rhNoe6lHgrQ/THlSE2rlkiCeMy2y4q29k/Obud9Y6rwwkvDD/Rjjv57YzGF1qJFWLrfptzLxFLIAO+MpbBSdVlEQPkro+uPB/Ex8A9k4FYZDdRwob5DV4QpykKM9YleChanHXLt3ssr9xIiJV1U+KYk8irqcGDwTwEsf3LaMPgLwcHxmfnqbjcr4jp8B2VlY1JmIHzL2R9vKX7Tnz+usSDX0ykcNglOAQD7HkEj9ZiBCMkP4TUDdB65OsXrxSUBb72TOniqEcV/og3VDntlGxOLCYrdjSEBBJPh71XUkTmzcbezIGrZOi49NfdNOUmJzSnAkNBCbYvfPgmRarlA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=CuU3SgvnK7MDsOwCCGmAlrRRrtahHvYoYwml7YKnp9Q=; b=a64D9PBt+2a35od7fQla0gzkkTbHmmYFjWSlcpWuD3PbarUhFOiohgyi/V2kLmFMUpWpXN1mUHzRA9zIoPXSGP5Sx90lxLQhqnm+gUnAw0j8HyDptny2+5+RS+byHFejLHzXPo4eFFNeyvoA9poAnDo1R/S9am0txvfy5XyC00UdVgLn+83tc/vjGFxAJrof5RxyBGIBeB3G3707Ml664NMbwOXS3AfI1k0TlAN4L382TBil6uyQzTpOTG6uCVyu4eIHarmVCY5u44QrTIZ8eZnICYudoIitli+XjFdgxvzQr/EQidOc2hESooAYkYxIfS+WDD9Sp+GccSaHYLvgfw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=CuU3SgvnK7MDsOwCCGmAlrRRrtahHvYoYwml7YKnp9Q=; b=wdKPg03pqiHl07jAGMd7+HPDz3AuKd3vxXOArGRGOPOsg7N1CobYCSp8yN90mzvZQf3KWamLzelG6tlWP3wdFuTC0heI36vP8MaTMDxgp+rKhVzBnpYL8FiL6VcpBARH4bts8bHLRS36tQExUviOM6L5XkxaXTB+ocjWB7jT22o= From: Luca Fancellu To: Jan Beulich CC: Andrew Cooper , Anthony PERARD , Juergen Gross , Xen-devel Subject: Re: [PATCH] tools: Move MASK_INSR to common-macros.h Thread-Topic: [PATCH] tools: Move MASK_INSR to common-macros.h Thread-Index: AQHZmjBTIpVZOkjuH06O82Z2wJSQ2a+CNhYAgAABfoA= Date: Fri, 9 Jun 2023 09:37:27 +0000 Message-ID: <53C45F71-F746-44A0-B100-18C1A302CD1F@arm.com> References: <20230608174014.2500954-1-andrew.cooper3@citrix.com> In-Reply-To: Accept-Language: en-GB, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-mailer: Apple Mail (2.3731.600.7) Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-traffictypediagnostic: AM6PR08MB3749:EE_|AS2PR08MB9740:EE_|AM7EUR03FT043:EE_|AM9PR08MB5908:EE_ X-MS-Office365-Filtering-Correlation-Id: 2a053ed4-4f0c-4e56-187b-08db68cd2ad9 x-checkrecipientrouted: true nodisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: /KZVT0vQCzH1IJe+bTaKs5v8UbBL0MFiDDcPrA1dDaBKmZ5FWvcIvFJv9Jnpx7Q9ztOYcB7fKTqq4+ZozH8hjZsxwRDNXO5GVvixn8e0D5b528A9KT96jXbwg8CAujawOnhIa8pjn8VfqJzt/8nfpAcTDLpsm2rcPX1KpmJQcwM8dIsoZFuW29Dk2x7RmFV3Q+cQU0X+2PnelYYqVbMg3yxxXe4o0M5kN+CDt2LWmdavWHa3xfzLwb+7ci6LnLsJD2JGkpgkuSYhqY3Kz+k9IGZlldQd2sWuurE2NGi7FijsDpXiYynWdMXp0ihGY+pCvDJyQvmj7zL9sPuqkVMVuP55SURs2qFAljCw0vBycuSvEyTPuZ5S9jhFuY8756GtrNXOy60wb7dHr2uM8s60sUfee+RRdjgP2KOAyeX+32qMAgTVhEFbJ1dqPzDBbMSJ5g612YpRAwpNbdUlAaIGoSAqqbSmDr9Yl/K8bhZAQixEUtA2T+2j+Pc2gnsD0oFswfdm3iYXvkqoo9TWhKlYcxV5nZquFaVBsgU5bCth/cR6LI1XAuR+8PWCuKu66egBdUo2ZlM6RUQDpaCXL+DHC1Dzp/QWQOlYdNZEXgtbjorZPGF0qoZQ2A7Gp4gIOvBgSH8JVmunG1Ox/gDKrdMSn/u6Jstv1H2MuEBH9GKN0EPcagpP+k0dw+Fw1A2XJBjC02Ldeyc1KCSHmlryObbuZA== X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM6PR08MB3749.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(346002)(376002)(366004)(396003)(136003)(451199021)(316002)(6486002)(41300700001)(2616005)(83380400001)(86362001)(26005)(6512007)(53546011)(38070700005)(186003)(6506007)(2906002)(33656002)(122000001)(38100700002)(5660300002)(8936002)(36756003)(8676002)(91956017)(66946007)(76116006)(54906003)(478600001)(71200400001)(6916009)(4326008)(6666004)(66556008)(66476007)(64756008)(66446008)(45980500001);DIR:OUT;SFP:1101; Content-Type: text/plain; charset="utf-8" Content-ID: <3B160A89762E26438CC4841E092AB605@eurprd08.prod.outlook.com> Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS2PR08MB9740 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: AM7EUR03FT043.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: e59b0772-7032-497c-d5f4-08db68cd239d X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: Tv6gGhVeVl4SFZqsaEiitcttVmfADQtk44gPjtCPhDscyeREEu+S2JroO2Sq501KcAb9hvKup7nhH7ykpNKLRITb5S6SF8Nz3KeeVTzf7/zy+HUSC/QckH5iB8hoGKrEKatmq2QnIhnRpANV6Rw3lnFpzttHxksXhhQKIyEVJTY019m8qjwEJ40k2zhyFrpGHa8kwdaxbvUoUx6z+ob5T34gd1vCEqDtrZqAYGbqh5ey52fNpr2S4hKnHC6BTqSvlrms6A0fjbcQqfpthCjIeRPI0nOoF9ubaJJ4dy0ttjYQ8YmTtwlO9zpWbzW3wbHFgV1ZZDYchfyX1URhGX0W4ogJWoT+CeDJRpx6xw1ftt3zbn6cwfuW7mMfl6H+Ol4dbGc4QRZS6eaGKwsLqmYoe0+HeJesUkaw1fx4qm3BN4jgPHTREgC6yjYWuTR/mKw2AplG1Pu+FortflkF/tPf6ag4vb6Pk/m5iV88/pR+RifF38jnyCvX99CtMOHk/YN3hfORH+EXT+IkZrupex0K5Lp2s0SZfc+/j/3drRzatFWvG4y3DsHt2xPuND7k4NGaI8R2QnXsmVweFjf50W5mdEivTUm6GukIdzR0X62sSV3d6GWwb+7QEKn2/FGUDrcDFK8rftIS4AJ8Z/upYT8W9hFtSrtpZVAmogKjMSa28guWDlvOgeGTOVf2Y4R3edICkVJXHlxAF7H/7hw+sw88mgMRjjOYJow1ADfi65yYrWKJy3tYcSjZ/SO81ON1HbH/ X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(346002)(136003)(396003)(376002)(451199021)(40470700004)(36840700001)(46966006)(40460700003)(47076005)(83380400001)(336012)(40480700001)(82740400003)(33656002)(8676002)(8936002)(6486002)(6862004)(81166007)(41300700001)(316002)(70206006)(356005)(70586007)(5660300002)(4326008)(86362001)(478600001)(2906002)(6666004)(36756003)(82310400005)(36860700001)(54906003)(6506007)(26005)(6512007)(186003)(2616005)(53546011);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Jun 2023 09:37:39.8887 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 2a053ed4-4f0c-4e56-187b-08db68cd2ad9 X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: AM7EUR03FT043.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR08MB5908 DQoNCj4gT24gOSBKdW4gMjAyMywgYXQgMTA6MzEsIEphbiBCZXVsaWNoIDxqYmV1bGljaEBzdXNl LmNvbT4gd3JvdGU6DQo+IA0KPiBPbiAwOC4wNi4yMDIzIDE5OjQwLCBBbmRyZXcgQ29vcGVyIHdy b3RlOg0KPj4gTUFTS19FWFRSKCkgYW5kIE1BU0tfSU5TUigpIGFyZSBhIG1hdGNoaW5nIHBhaXIu ICBLZWVwIHRoZW0gdG9nZXRoZXIuDQo+IA0KPiBSaWdodCwgdGhhdCdzIG9uZSB0aGluZyB3aGlj aCBzaG91bGQgaGF2ZSBiZWVuIGRvbmUgcmlnaHQgYXdheS4NCj4gVGhlIG90aGVyIGlzIHRoYXQg Ym90aCBtYWNyb3Mgc2hvdWxkIGhhdmUgYmVlbiBwdXJnZWQgZnJvbQ0KPiB0b29scy90ZXN0cy94 ODZfZW11bGF0b3IveDg2LWVtdWxhdGUuaCAod2hpY2ggaW5jbHVkZXMNCj4geGVuLXRvb2xzL2Nv bW1vbi1tYWNyb3MuaCkuIEx1Y2E/DQoNCm1tbSByaWdodCBJ4oCZdmUgbWlzc2VkIHRoYXQsIGlm IEFuZHJldyBjYW4gaGFuZGxlIGl0IGluIHRoaXMgcGF0Y2ggSeKAmW0gb2ssIGlmIHlvdQ0Kd2Fu dCBtZSB0byBzZW5kIGEgcGF0Y2ggSSBjYW4gZG8gaXQNCg0KPiANCj4gSmFuDQo+IA0KPj4gRml4 ZXM6IDU2YTdhYWExNmJmZSAoInRvb2xzOiBhZGQgcGh5c2luZm8gYXJjaF9jYXBhYmlsaXRpZXMg aGFuZGxpbmcgZm9yIEFybSIpDQo+PiBTaWduZWQtb2ZmLWJ5OiBBbmRyZXcgQ29vcGVyIDxhbmRy ZXcuY29vcGVyM0BjaXRyaXguY29tPg0KPj4gLS0tDQo+PiBDQzogQW50aG9ueSBQRVJBUkQgPGFu dGhvbnkucGVyYXJkQGNpdHJpeC5jb20+DQo+PiBDQzogSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1 c2UuY29tPg0KPj4gQ0M6IEx1Y2EgRmFuY2VsbHUgPGx1Y2EuZmFuY2VsbHVAYXJtLmNvbT4NCj4+ IC0tLQ0KPj4gdG9vbHMvaW5jbHVkZS94ZW4tdG9vbHMvY29tbW9uLW1hY3Jvcy5oIHwgMSArDQo+ PiB0b29scy9saWJzL2xpZ2h0L2xpYnhsX2ludGVybmFsLmggICAgICAgfCAyIC0tDQo+PiAyIGZp bGVzIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAyIGRlbGV0aW9ucygtKQ0KPj4gDQo+PiBkaWZm IC0tZ2l0IGEvdG9vbHMvaW5jbHVkZS94ZW4tdG9vbHMvY29tbW9uLW1hY3Jvcy5oIGIvdG9vbHMv aW5jbHVkZS94ZW4tdG9vbHMvY29tbW9uLW1hY3Jvcy5oDQo+PiBpbmRleCBkNTNiODgxODI1NjAu LjE2ODY5MWJlMGU5MyAxMDA2NDQNCj4+IC0tLSBhL3Rvb2xzL2luY2x1ZGUveGVuLXRvb2xzL2Nv bW1vbi1tYWNyb3MuaA0KPj4gKysrIGIvdG9vbHMvaW5jbHVkZS94ZW4tdG9vbHMvY29tbW9uLW1h Y3Jvcy5oDQo+PiBAQCAtNzMsNiArNzMsNyBAQA0KPj4gI2VuZGlmDQo+PiANCj4+ICNkZWZpbmUg TUFTS19FWFRSKHYsIG0pICgoKHYpICYgKG0pKSAvICgobSkgJiAtKG0pKSkNCj4+ICsjZGVmaW5l IE1BU0tfSU5TUih2LCBtKSAoKCh2KSAqICgobSkgJiAtKG0pKSkgJiAobSkpDQo+PiANCj4+ICNp Zm5kZWYgX19tdXN0X2NoZWNrDQo+PiAjZGVmaW5lIF9fbXVzdF9jaGVjayBfX2F0dHJpYnV0ZV9f KChfX3dhcm5fdW51c2VkX3Jlc3VsdF9fKSkNCj4+IGRpZmYgLS1naXQgYS90b29scy9saWJzL2xp Z2h0L2xpYnhsX2ludGVybmFsLmggYi90b29scy9saWJzL2xpZ2h0L2xpYnhsX2ludGVybmFsLmgN Cj4+IGluZGV4IDhhYmEzZTEzODkwOS4uNjFmNGZlMWRlYzU1IDEwMDY0NA0KPj4gLS0tIGEvdG9v bHMvbGlicy9saWdodC9saWJ4bF9pbnRlcm5hbC5oDQo+PiArKysgYi90b29scy9saWJzL2xpZ2h0 L2xpYnhsX2ludGVybmFsLmgNCj4+IEBAIC0xMzIsOCArMTMyLDYgQEANCj4+IA0KPj4gI2RlZmlu ZSBESVZfUk9VTkRVUChuLCBkKSAoKChuKSArIChkKSAtIDEpIC8gKGQpKQ0KPj4gDQo+PiAtI2Rl ZmluZSBNQVNLX0lOU1IodiwgbSkgKCgodikgKiAoKG0pICYgLShtKSkpICYgKG0pKQ0KPj4gLQ0K Pj4gI2RlZmluZSBMSUJYTF9fTE9HR0lOR19FTkFCTEVEDQo+PiANCj4+ICNpZmRlZiBMSUJYTF9f TE9HR0lOR19FTkFCTEVEDQo+IA0KDQo= From xen-devel-bounces@lists.xenproject.org Fri Jun 09 09:38:11 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 09 Jun 2023 09:38:11 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545757.852306 (Exim 4.92) (envelope-from ) id 1q7YZE-0006KS-At; Fri, 09 Jun 2023 09:38:00 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545757.852306; Fri, 09 Jun 2023 09:38:00 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7YZE-0006KJ-57; Fri, 09 Jun 2023 09:38:00 +0000 Received: by outflank-mailman (input) for mailman id 545757; Fri, 09 Jun 2023 09:37:59 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7YZD-0006IW-8J for xen-devel@lists.xenproject.org; Fri, 09 Jun 2023 09:37:59 +0000 Received: from esa1.hc3370-68.iphmx.com (esa1.hc3370-68.iphmx.com [216.71.145.142]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 4f8b324b-06a9-11ee-8611-37d641c3527e; Fri, 09 Jun 2023 11:37:56 +0200 (CEST) Received: from mail-dm6nam11lp2171.outbound.protection.outlook.com (HELO NAM11-DM6-obe.outbound.protection.outlook.com) ([104.47.57.171]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 09 Jun 2023 05:37:53 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by PH7PR03MB7223.namprd03.prod.outlook.com (2603:10b6:510:243::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6433.24; Fri, 9 Jun 2023 09:37:48 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606%4]) with mapi id 15.20.6455.030; Fri, 9 Jun 2023 09:37:48 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 4f8b324b-06a9-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686303476; h=message-id:date:from:subject:to:cc:references: in-reply-to:content-transfer-encoding:mime-version; bh=oW0ymwZZ0sgX3hy2nWihjRNskOeWi3NTY8m4d1dyiL0=; b=eP7Iy0ze1tSiUDybvPONxee2RBO+ES+o+Vtzz5wP79JupDxc0BYlAg+B gH/dUn2cJh6i8ggx4vuH42byHrg2eCMbH9A4O0i3zGxIQDX24P5LajwFS v57mbtOwEePKJK7chWsAec2m6OscGH++8TT8RrfQyKqv4xEABcfR6P84v I=; X-IronPort-RemoteIP: 104.47.57.171 X-IronPort-MID: 112607582 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:KnStnaO254prH4jvrR1zlsFynXyQoLVcMsEvi/4bfWQNrUoh02AOy jAcXGmHPvvbZWT8edp2bYy180MP6sLcnIVjHQto+SlhQUwRpJueD7x1DKtS0wC6dZSfER09v 63yTvGacajYm1eF/k/F3oDJ9CU6jufQAOKnUoYoAwgpLSd8UiAtlBl/rOAwh49skLCRDhiE/ Nj/uKUzAnf8s9JPGjxSs/rrRC9H5qyo42tG5gxmPpingXeF/5UrJMNHTU2OByOQrrl8RoaSW +vFxbelyWLVlz9F5gSNy+uTnuUiG9Y+DCDW4pZkc/HKbitq/0Te5p0TJvsEAXq7vh3S9zxHJ HehgrTrIeshFvWkdO3wyHC0GQkmVUFN0OevzXRSLaV/ZqAJGpfh66wGMa04AWEX0sZHO2h/y O01FD0qX1Onq9ik++2DG/Y506zPLOGzVG8ekldJ6GiASNoDH9XESaiM4sJE1jAtgMwIBezZe 8cSdTtoalLHfgFLPVAUTpk5mY9EhFGmK2Ee9A3T+PVxujeKpOBy+OGF3N79U9qGX8hK2G2fo XrL5T/RCRAGLt2PjzGC9xpAg8eWxHmlAN1PROfQGvhComWQ6i8aDAEqfwHlncT6qGuMf80GE hlBksYphe1onKCxdfH2Xwe5u2KFtxhaX9tWH+w1wAqJzbfYpQ2eAwAsXjNHLdArqsIybTgrz UOS2cPkAyR1t7+YQm7b8a2bxRu/NTcUKykeYjUDTiMO597+rMc4iRenZtJ+G6fzgNTzEjz0x y2ipTI7wb4UiKY2O76T+FnGh3ego8bPRwtsvwHPBDv6t0V+eZKvYJGu5R7D9/FcIY2FT16H+ n8Zh8yZ6+NIBpaI/MCQfNgw8HiSz67tGFXhbZRHRfHNKxzFF6afQL1t IronPort-HdrOrdr: A9a23:e80o96gcjFcACbYUd/lxOv6OHnBQXuUji2hC6mlwRA09TyVXrb HWoB17726NtN91YhsdcL+7Scy9qB/nhPxICMwqTNSftWrd2VdATrsSibcKqgeIc0bDH6xmtZ uIGJIOb+EYY2IK6/oSIzPVLz/j+rS6GWyT6ts2Bk0CcT1X X-Talos-CUID: =?us-ascii?q?9a23=3AVFaU6WsmmCngM/gbmma8Vgm66IsFQkfU/UrBDnO?= =?us-ascii?q?1LlcqbJGvW2TPwPJ7xp8=3D?= X-Talos-MUID: 9a23:VsCcdwu8o8sylnxPj82npglhGIRh57iSIhpTrahFmey2ETMpAmLI X-IronPort-AV: E=Sophos;i="6.00,228,1681185600"; d="scan'208";a="112607582" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=mx1JK8/p+//FI4BCWZC1AMRbjyM9R3cLLi94ZleI+/E0idx2aP59Z+JpDFn4qirj71iX6cN4STUj9nGKZky1602mtkzfCl9lkTq+yNVI5JAqe/oDBq0Ut2q9+bbZgRXaRJjURqz383JJ/kjs52wtntUz1C+tJI8FpCXl2KdFb9isX+VHjQ369t3PaDU7/ZrtIlB1699ifyALKi8PSYIzlXWw+jFqRMNPB/2eetb1J3MZoL+TowtB61wLqRv1ZezsM1jPlSDEBwLF8zeE098ByQwt2rXwNFJCnWbU9Vd35kQ0KAITFCSGDCrr5RnW39OEENB0XV0JyfOYmnK3M2aEJA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=MTIR5zHV5J2M3URXNiR1BWBtKeuimdMt5LWSJcWJM+k=; b=MYb4JpHrJKrxVIJ9M39WNiR3Qb/zd63BzQbymzNFONqsXZJABmptR5iK1hdUF6AuxuHFaIitkJjWkkruNFzysSKLNqlvu55eC+uKoa/aK4vkSCW8JkDwDd9E+4AZ5m0F9qNQ1iw7X+asYjkEwTy1Jo97wJ722KcdFMdcV86aJBSH4smWS73drf6uD0TPi0NDSC55g/uq4v2uzocuYwFbQSpzaLyQEY9dk1RsJPVkfqd4C48WTGP6ZlWosoazs4CV2KKDqw4/mrZeW/keEGutH+yT6iZ389SM5v3L7VEbOLu9hAHQGIxbORR1ONjrTrQPMKnmN7QnyZMcevtHLUC1PQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=MTIR5zHV5J2M3URXNiR1BWBtKeuimdMt5LWSJcWJM+k=; b=ZX2ZFIDNkAM49FyUafn6IXLIcnYsR6w1aN+UpoYCB6vYAEGgwlmqwV7DnCIK0VFqSCi+M7bAa1ezDhzSr+cJE2nggE2IIPtrK52FpzYZYMQcDXIfdA1PNCdVPcNYivR4f+99cd0m3rCbLkkip5H3UPAvrONqzW8zCwcuAu3Dl0A= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: Date: Fri, 9 Jun 2023 10:37:43 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 From: Andrew Cooper Subject: Re: [PATCH] tools/ocaml/xc: Fix xc_physinfo() bindings Content-Language: en-GB To: Christian Lindig Cc: Xen-devel , =?UTF-8?B?RWR3aW4gVMO2csO2aw==?= , Rob Hoes , Luca Fancellu References: <20230608193312.2520222-1-andrew.cooper3@citrix.com> In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO4P123CA0177.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:18a::20) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|PH7PR03MB7223:EE_ X-MS-Office365-Filtering-Correlation-Id: d39d3ea7-6cf5-48ba-f091-08db68cd2fdd X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: Hfd3vokCt/SIpMDSwg9vHQVCe5DfuJck71ohQS4rfCNEDxHHbnIAO/WcMExYnfEqfWlnjDK2Ht0sL3ZhLCO1qc9LyX2BTqOue7sfAcqx8aczM/Q2QbaumAUdPXs5QKzaPcYneKjAOP4701fJOpW+tLnGj4iLZ2HLk/I7qAEKFFmwy+8YB1XK/Sfij/O+l0N/VtpXW9exHvHbaTRiYxVd9KkzoyzyGLPtbfDc0goZ2r2v+JAhrMWnMlTHo9hlobz8cOIq37LWx0Et+yO+JrewmWW5v17j8HTAdpbrBYs9HTORNEfFcfRZZB51G1Yehw7ZzZoEwEx6XdAVYd9a4DQPnLCFFT+i6Y485bCAD/Cuayu6D22LiE2WzbZrikeeApcA37GOmoWAS5ZSRrpHA81nkmLUgwi8Y3AS6Y+8dnaROBvZwIxAoUqWiPjQd+YVB28Z+/IewfiWkL/UvhZYUTxrAVZMK0E6r+iyjEwNmOmjnVxO1J+KAMTbVYNnHBslI0JDR7HkiacV0qNbf7p0OwDBSLYSXid0vcpsBvoq1bgg2VN9t2tz53dBwnoJbO9RAxQ1Om3gIF6r8M+tHyAxTf/w1MNuoNFi6KLyLj2ZxZTlP6Bpml74PyJWSsloPNWgf29ZbGJVXP34fMeyWwyc2KliDQ== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(396003)(366004)(39860400002)(346002)(136003)(376002)(451199021)(478600001)(6666004)(53546011)(186003)(86362001)(36756003)(31696002)(6512007)(6486002)(26005)(38100700002)(2616005)(82960400001)(41300700001)(66556008)(6916009)(4326008)(66476007)(2906002)(316002)(5660300002)(31686004)(66946007)(8936002)(6506007)(8676002)(54906003)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?UFRPb1VndUhzRnJ4MkNqb2NOZGVhT0xHalY3TVQ4NXNiQURkc0pFdTNzVWJY?= =?utf-8?B?b0wwdldXeFFGSW96Vnl5aGZHbTlGTkd0NVFPQ1pIdWZDNFpid3o2Y1cxVG5V?= =?utf-8?B?dmtvU3BKeWw1djRVOUtFZys5ZS9jUC90Yk84emt5d2JyajhIeUxPbE4xMllJ?= =?utf-8?B?UG9jOUlPY1c5L21NNW1TTXpIbmZwZ2h0Tyt6a0s5d0J0WnNZcWVrVnMxVTFQ?= =?utf-8?B?WDhnQUdKZXBDRjkwQ3lFUTVjVnpLUDA0RXM1Z3F4emlRMTgvQmJ5MWZkVEtJ?= =?utf-8?B?eTR4YzlSQk9Dc3grdmtScDRhcHBUVlEvWmt3TEFNUVJ2S1NpM3pFUEZsYXd4?= =?utf-8?B?K1docWcvdHlWT214K2JPbXBSUXhUUkVsdEljbmxGdytQQlpleXJUOWNsSTFK?= =?utf-8?B?VVNMdW5XYWpBR09XajFiU1NWYmhTR0JkbzQ3SjhadmUwRTRJZE93Z3plUUVN?= =?utf-8?B?ZlBoYTJNeXhWOU0zUlJHYmlkd0pQelorNHc1YXpvbW9ML2RFeVVtRVdzR2JQ?= =?utf-8?B?WUxmVjU2YkNSZ2FGcHVCU3hQQTRudTJnZ1RKeFlSQkcwdXVlaDA5clNMN2ti?= =?utf-8?B?R0xoOWRJWUZGR2JWcDR4RlEwSXl5MExEaUxOb0Y3ZkdncWNSYVhoZnozaTZh?= =?utf-8?B?ZEpjbGJla252UU9qUUtnam56SHZUbThDbVBLbDZXMXhZelJieEtRM29NL3dL?= =?utf-8?B?c0NxRjdORW96MlgzQ2VpYWd5RU9KcytIZGdhTEptZjlxYi9PYlRzWWFBNVFI?= =?utf-8?B?MmF6Zzd2L2RrN2p0UDZkZUl3cXFpNkNEK21FZ3NTc29rSmt0Z2JUcWMvYnNu?= =?utf-8?B?cmhuU2hZQ1NYSTBsUmhBbkJyTVpOR1FyWVNZV0RnWGFMazBQT2U5S1FBSVBh?= =?utf-8?B?WUtqMHpSdlNDK1p6T2EwbTcrZGFDbG80L05xYzgwQ3VlNUtRT0IvTjM2SWFL?= =?utf-8?B?aWNqSURGNHQ0RlBEZ2JTendaNDBSdlJtN3hJYXRDOE1CaDdYNFBDN3k0b1d6?= =?utf-8?B?UTNzUkNLSDJZc1M0TVh0WFZQSndBaWd1akQra0c3NzFJbjNkL1NyRnd1Y1Z0?= =?utf-8?B?QnJiN3pqcXZXOWkzdzBJTDM4Z2Q0WEhZcSt0L0VzdlpXYXZoSzlRTnZ5Y2RI?= =?utf-8?B?ZDBSRHNqaGNuNXZybTcyL0VRSTJyNy9kS1Y5WnRhbG8zR1VyaW5wTWpnTk83?= =?utf-8?B?VHE1Q1daMmN4Um9MYnlQWnU2SUJjc2VmdTBYRTl0eHNScVdsWHZxMElzRHc1?= =?utf-8?B?d29wZ2VvT1l2U0RoYnhRSVpqRVB2cWJnbnRBbENBVDg2V3hhc1pmR2RrUDBX?= =?utf-8?B?WndZYXZUVWdJSE4yRzJVN3BMV2RxZm1JdU1GNWZudnFTUUZ5bzY0aFVXYXhY?= =?utf-8?B?cVZNZHMzeFJHQmF3Z1BxN1cvL0FzUEEzUzQ3TXhKOUJTK2t3d0VKZWVUa3kz?= =?utf-8?B?eCtzWVZCdEtJdFVGdUtkV3RZTlRJdUJJb1hNL1g2SjQ4NDZTSWdLb1lXcS9D?= =?utf-8?B?ZzZsaCsrVnFpUDZiZENNNVpydWxDMHNhRFlndXZ5UDFBYk5kdy9uNW9vMW5V?= =?utf-8?B?Mk9MZE9sdnM5REMxVTRSMktyZ243bmRTOXZaZnp4OHp2K2xrQmVmMjBkZHdI?= =?utf-8?B?alg5UXFOMlJQa0NWUGdOK3dJWFJQMGQ3VURVUDhqTDRucHlBdHFjUHp0VHc5?= =?utf-8?B?UkhiWWd4MnNDMjFBWWhYMXBxZEZHdlgvTVBETTJVcnVYQjJOeTRTZlQ5ekZ4?= =?utf-8?B?RUd6YTlZWEJ0bVdBV1pKNEU2c1FMR3N6N3dKU1hYQVJRNEtzVld3UVRtZHlT?= =?utf-8?B?WGlTRllFL1JCY3VMdDlMY0I1eU5GbGJGbUQrN1orNWtCMHZZSndQSGJ0Mklp?= =?utf-8?B?cm4vN3N2NkZ5czVWWlpHUlF1U3Y3WVpxV3dndFRiU2pHZk12UkdvN1ZYdzRQ?= =?utf-8?B?d2Fyc1p6b09KMFJVckJkSy9YTmdTZzI2U1B4cEtTOGtpU0RYVkxmOUhIUVNw?= =?utf-8?B?OGNoNlowaFJUV0VGVjQ0OE5FWkttNDFjY05LZFRubTdJSjFPQWFmVEZYQVRY?= =?utf-8?B?OFljZDV1S1dZQUZicENNandXbVQ5dENHb3FHWFJZRXp4VmN2LytvNll3Y3F3?= =?utf-8?B?ZUhIYUc0WEtMT3Nic0RYNkRwdUllYmZwYVgwV1JNakhkbi9aM1NiZStUcUph?= =?utf-8?B?NWc9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: qFC/sQcq13oL1CI1StsggTaQKGyvFs2kXkx+64Dbn3PPAvX4mQ6zzG3BF4wTUEhDAvICL1LhAadCS89cyjnk1ZeX9k5JP/Vbx8xd0MHTuZtf/Nk1Ht80vGam31uWkvUc7XNQuXbooxMPGYUkDtSvLxNl+z21l4e5U16iOALg+0Gm42OKINvHbhq28l5lpjEFhN+Zy1ceTtV3e6lQUuQpdckkLQajQrzA11+1Nwny+zVKanewwi+zEHJMBIUiS00BivQNUFFC0yvKdzAd1LJPFKM8+HJWsyjvuEcCvqf8P2qg9Kan9M5HHb/ZALfuDpxwNm91RcNH0wpgEmGUtlJybJ+d3qJpptyvTzp49T4tn8SGHO6tvEAjMft+TU1MO6KY+2mz+jYsvmhlAxr3MzcrOjZ+Q8OPO62q9Tx0gx3MXk1KzindHM84+oOz/2b1fzT+DkDnlDUgoyLqmlOUhfCkT9zdEt2gzH+aHqCKfybPVBZqebIOWRFKXDI2hfeEaEs0fBj+KDjoGFJEiWXPpqXXI8yVjI8RuVh9ndbJ/ZA1S3bY5+7myksKQcY3yHn68xn3ROXgxe+taDH8ke4WbaxL9yeP6ZGt3dYyA6lyubzgLQHeFvmlAOo7d5dRgyZaAJhW0b9WCJk6ngtqoRJ5cKPJkx+BjSjGhmkJoClKEkAl8teGYnVWmImounHTjwjfs49nFtCe5sgt6y5GR0v3BAic99GDjs1WXFqZ7X/cVtTQzC/eG0eE6kiwnlE1NPLn97gHjBQ8BboGq1vWkyCH/BJ6pk+A5LPy+cB0BR/7E73TnNx8mnarwUMc97efvJBhkRrK X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: d39d3ea7-6cf5-48ba-f091-08db68cd2fdd X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Jun 2023 09:37:48.6165 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: w9KmP1tKfPjiiDBbmScgXTGA7zQwbeUvbD/6ijNVyGaYk3KI1K4m3K1wDZuKPfi/sMdYRbFyKi6NaFa7UQvUt4cE8a8CfXzHXaRJNgrDvzY= X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH7PR03MB7223 On 09/06/2023 9:17 am, Christian Lindig wrote: >> On 8 Jun 2023, at 20:33, Andrew Cooper wrote: >> >> +type arm_physinfo_caps = >> + { >> + sve_vl: int; >> + } >> + > > Does the OCaml side need to know about the structure of this value or is it enough to pass it around as an abstract value because all logic is on the C side? I assume the OCaml side needs at least a way to persist the value and hence needs to know some representation. Yes, Ocaml does need to know about the structure. info->arch_capabilities is a collection of misc info.  It was intended to be just a bitmap of things, hence why it's a list on the x86 side (We added fields, then had to revert and I haven't got back around to reworking that yet). But now ARM have put a non-bit field field into it, where a toolstack needs to select a domain_create sve_vl setting between min(0, physinfo.sve_vl) The Ocaml code doesn't have an #include so doesn't have the masks/constants required to decompose the integer into it's constitute parts. > >> Store_field(arch_obj, 0, >> + Val_int(MASK_EXTR(info->arch_capabilities, >> + XEN_SYSCTL_PHYSCAP_ARM_SVE_MASK) * 128)); >> + > What is the “* 128” achieving as part of this encoding? No functional change from before...  except it was previously hidden in a different header file which I'm in the process of deleting. The vector length is a multiple of 128.  This value is more amenable to being understood in a log file by a human. ~Andrew From xen-devel-bounces@lists.xenproject.org Fri Jun 09 09:39:15 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 09 Jun 2023 09:39:15 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545766.852315 (Exim 4.92) (envelope-from ) id 1q7YaG-000754-Iz; Fri, 09 Jun 2023 09:39:04 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545766.852315; Fri, 09 Jun 2023 09:39:04 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7YaG-00074x-Fm; Fri, 09 Jun 2023 09:39:04 +0000 Received: by outflank-mailman (input) for mailman id 545766; Fri, 09 Jun 2023 09:39:03 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7YaF-00074n-CH for xen-devel@lists.xenproject.org; Fri, 09 Jun 2023 09:39:03 +0000 Received: from EUR05-VI1-obe.outbound.protection.outlook.com (mail-vi1eur05on20603.outbound.protection.outlook.com [2a01:111:f400:7d00::603]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 777c9fa4-06a9-11ee-b232-6b7b168915f2; Fri, 09 Jun 2023 11:39:02 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by DB9PR04MB9790.eurprd04.prod.outlook.com (2603:10a6:10:4c5::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.32; Fri, 9 Jun 2023 09:38:59 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.039; Fri, 9 Jun 2023 09:38:59 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 777c9fa4-06a9-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=dQgtnPT8J6gFLjty228yQD3T7pbOxA0QF4kqfZ08+dpSTKCre0JvFUAbUTEL8Yj5pdmJEGt422Ofl90okd7fnferBmgciobn6+zfxRjU3gIRhIfKpKQLUOQokeRP5h7UXfsfK4IdYgqdohO4Lg/UKeNHngUXnP4FU7gAbl3TwPtQNo464IOU4fhj05jq0zWtglsaZpoMy47LmSqTTn3Ag144xYNufKmeAlQs05PvSBu8u4b7lUG4CR0rELSzI2fQ38MyaQ/+2mextLmJVeqQEJ6rM4PwJv7C3jMue2TVGiUuiqsLCrF5b4SyiPM6DfnP8kxvOz5EYgzDOydXddZaNw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=1Axb7SAVZHw9HP/uNPKJAVMsTCGxkkXt6pz1ZmizR2U=; b=dDx4L7AO6bkMaRcfXqC2Yt4xE2X7QbXTZwc+RU2tZAKFfVVEU5QX2gkWZVBml8gzr6qJ8xIZ+gCqj8yIFYNlP791JMNqzZGw0iJj6gu+6Fl3OVVmdBRunOIVXinpcco/WyhNBN3eMYuoLPij9zvNFDOzm0zkqOsUsCFPeaWqasxb2SsTCJpiW3I1HTNWqkx3EQyv/eDJemGZDNXc3QBUuHVH9rleHaQg1zS4y24mtBT54Gg/Rk8UE6UjflonhEunnek22pcFEnz6L4kaQtYsFWu9hzMdGryQdp5TNdD4NSlZ6OBPLcdeHi+ivIBRg5sG26ie/9g+VnFhLnTbR/oR0w== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=1Axb7SAVZHw9HP/uNPKJAVMsTCGxkkXt6pz1ZmizR2U=; b=qFbARXjavjkpn/1y3xwpvtraYWYygCMZnOWUUStMez4/hU4jKOXc9xwW0j3LHFkiaugvVxkDMB7hr7nf+SubKfui3Fkl4FE0VaYashUIvL8r7AibhM2iNjlaSy/GtBDJBntiilth9oRUBmbTjsHmFkmXrFREg/BXUeXqpT7XQbztbcT38vgRILFmzTjInjAT+kUa0L9KK4UWx6tAy34B/+5lrz9eSwXk4Y2FRjQQRo/M/Lw/MOJLElrssqh9H/XD+CohlAX0zeCOmBvafPMQ5VcsiIi+mdVDtOAOyQTT2IL4VM3PhAKgcV0xT477yIQWCXHVICljHv39xjiutjkxkw== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: Date: Fri, 9 Jun 2023 11:38:57 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH 2/3] xen/ppc: Implement early serial printk on PaPR/pseries Content-Language: en-US To: Andrew Cooper Cc: tpearson@raptorengineering.com, George Dunlap , Julien Grall , Stefano Stabellini , Wei Liu , Shawn Anastasio , xen-devel@lists.xenproject.org, Shawn Anastasio References: <0c0a19de-dde3-8b98-4354-6d3d2019179b@suse.com> <0b24d36b-adbc-9e7c-df6e-8754c269855d@citrix.com> From: Jan Beulich In-Reply-To: <0b24d36b-adbc-9e7c-df6e-8754c269855d@citrix.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR2P281CA0029.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:14::16) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|DB9PR04MB9790:EE_ X-MS-Office365-Filtering-Correlation-Id: 55d5d49e-96f1-4461-3edd-08db68cd5a09 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: eZuJS0LaAlr22AQT6x9ZeLwBdp3Tit25PWkKK9aJqlhJ5kBy309c0izMrHHKFx2zOiWvAQTRvAGr0yfiNnHF1bsBxKsffrNzYQSUBlMQ6VUmDKnOtUavF+mV1Z7bfvAon/PFULRtFPUF0kAfY4iU8RNZv/1VcmueGpYI2jp8K180kZ743iYqvKBDJjZtA85+bcv1jhTVCsSDcv9FEJVrN2ErY5+PRNq35yNo43RQy0jPMdMYBUelcf9ykBuojsdSPsMu5FRre0kmQeIf0ePf8lJ2XIV+zdaKeA2SBmZ0hPt8CYriijt1jI/iq8D+7wum7tDrkXFo+2Y/4yPMJEvicn6KDsOzYd8OD2qevrZMBiHteVnr2dqpgl9PTOs/Nizbv34OFuvKyJOj6NG9p8dW+L5EjqUEfR+eisVcrbUF13rmovHauBKWjChDhWsJtP8rEyt++Wfs24b6hUA5I9kfiiyWRsMNI9luxsbmx9AgpMTo6LYKJZwF0Qz/jajZeP4jnKAbVYZTb67c6m4wD2tZdReVsJfRB1zYIKj2vx7YZIt8SuCtjm56ERXj9re8kjQfQ1FAAqwQnde2DsgfxGAGIbQiGEmFpiGRkYD9oDc/YaX2U3ARoF80W4pnq6TQ2vpa7lGOY2zoNxN+fFpjRoq6Uw== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(346002)(396003)(366004)(376002)(39860400002)(136003)(451199021)(41300700001)(54906003)(31696002)(4744005)(2906002)(36756003)(478600001)(8936002)(38100700002)(86362001)(8676002)(5660300002)(4326008)(31686004)(6916009)(66946007)(66556008)(66476007)(6506007)(26005)(53546011)(6512007)(2616005)(316002)(186003)(6486002)(966005)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?ekR0OHg1Z2xPRXhZQnB1Y3NsVFV1eXhsdGJuKzVnQldiSERZZC9DY2VkTEQ2?= =?utf-8?B?Y29zN2prU0VsR0h5bVJOU0ZDUS84eE91MVVNZjV3UTBIQmVrMTlKLyt2NzF2?= =?utf-8?B?N2lNNENOZ2FMaWV6eDdjdExrbXVIQVhJTXIwbW5OTHpYZkhJNXYyUXpYRGxE?= =?utf-8?B?WVcwckdseXBLMXRRdDFZV2lqQktJYkJOMHZLeS9uSkFQUWw4azB2cVVza0E5?= =?utf-8?B?SE5sYXJmdEkveGxiVTdSeE9ZR0plcllQVklNb2U4OFEyb2M2Z0JNWFpXRG1y?= =?utf-8?B?eVYrajdiUDd3aWhZMGsrc2J2T0NTYjI1bHNZN3NHNHVYY1dKeGN1UXZXZ21k?= =?utf-8?B?Sis5c3JReUc5bFpJaDU5RTYxdjJBcDVZMkt6WEVuYUpaOUVWSkoydk1CMTIx?= =?utf-8?B?WTZEVzV2MURPVWFsYktyRXVvMFlyN1ZXWlRJWEIzWjR4WFBZRm1xYnJKT0NB?= =?utf-8?B?TVZGcGFIaVRCRVYrblpqRFEzYk0xOVhGSEw2U1dpQkNUMUJjSE9oR0s0T1hw?= =?utf-8?B?a1F3dlArY1d1bXpIMVh6K2grYmtpK3hzaktqQU1malRoc2hUWWR0M09qdGV6?= =?utf-8?B?RzVPSzBoVlZRRHlHWHIwb2g0MFRXT0EydGkxZnVhQURwdjFSL3BtaStGTnQw?= =?utf-8?B?NHJmYkNibFo1ckIxNWdjMzBkcWlvNitTYkJUTjExZmkxRFdCd1ZzYTd4UDFm?= =?utf-8?B?K2ZEM2RORWk2eWtZRVNZcTdrc0lZQytFdzFHUm5RVkgrSmJkT0lXZDBIYXJO?= =?utf-8?B?Ui9sTVh3OTh4Z3FLMDdvZjhGcGp3K2VwcTBldU1TVTM3Rkh6MmMxZFZVcjJW?= =?utf-8?B?eXVaSTUzOXlwMjBscmV1VllYaTZLMlFrMkpwWmVnL3pTVDhVakp6WWF0aTF3?= =?utf-8?B?am9rVkxkbzdHT1VrTWR3SmFDaEMzcks3MkVWaHVRYytvMUNNL2VUckUrVmNM?= =?utf-8?B?cCtMMjdZcTVDcXZKS1hQa2I1OG9CeUN1MnNLVjJpdUJzeU1uZk05S2YzNHpq?= =?utf-8?B?SEVvbDZjRVBRb29LOUdDZmJJUTVXUUxBMlJOY3d4ZElqUVJ3M09pUHF0dktS?= =?utf-8?B?cHNXbEdxQkRDa2p0YzNlZ2E4ZnVicjdRWm1KdktwN2FyYkk3NVA3S201bUJY?= =?utf-8?B?bkJzRUQ4M2pFQ2VTUSttRXJyTm5WbGo0TDdqbHdkclVtaVVCTEFvd24wQVpv?= =?utf-8?B?NzJtWExhYlhKS29uQ3B5NWhxRWYzVEo1Wm96azNvOXNRRC9IbzB6QTdWb2h2?= =?utf-8?B?ZjFjZnRybW9kZnFSWFdTK3N6NW94TVh4SmhCbmI3a2NLWTZZVjBoaWUyQ0RC?= =?utf-8?B?dVJ6bDJ1ZE5tekhvdmlsUlh0NXlkeExVd0ZDNjJyYU9YNzRUay95STRkQnBm?= =?utf-8?B?bVBrT3JWeE9XN2s2OER2dXZoOC9IV3g0Z2lLMGJBa2JTQXdqY21Fa2dhKzFF?= =?utf-8?B?QXB6YzVFbmF3Z21JeldXYkZmZ1dkejd3MGpOODRzLzdkbFlUVVJNNisrNnFU?= =?utf-8?B?MXd1Unk3TnVTK0c2Y3g5bkR3ak4xZ0pjeUdYcGY3NDZxRGlNUUFNUDdpUHIr?= =?utf-8?B?MmNqN3FlVElLeFNCdjNxQk15YTVaYUtUYlFOdW5oMmd4R0JSYThMSDh4RXhm?= =?utf-8?B?bDhXNGN0MW04eTdXWVdva3o3UExrazhuVVFPZ3VZSENORFo0ZEZrSVFDNXo0?= =?utf-8?B?Qjg1WG93ZThYdk5mWERvUWx5OHZNTXE0NFBjbUlySW80RnhlVGVYYU1qVXZG?= =?utf-8?B?SXdoZmJlUVRrR08rV3VLS2IxUnlJZTFHU2FoT3BDTzFvREZ1SDNBWmxhKzhT?= =?utf-8?B?bnNSVUxHQUJpSHBaRm5wUjR6SGNZc0g2NnNOeGpwK2VJK1VVbXhSRUJmY2NG?= =?utf-8?B?SGVhdU5Nc2dUN3dCUGtiWVJyWjZmRjRYajhkdGIwUjMxWnNuT2E4bHZqcHBy?= =?utf-8?B?cVUyWWUzU2kvNDN0Yk9uUXFZczMraWxFTVBKU2Njc3B2UXUzekhkWmhBMG40?= =?utf-8?B?MkNjOVZxQVBSZWRhWWIrRzVIQ3V6RWxjS3djRmxxWkJGQzdLbnAycWhVYXBE?= =?utf-8?B?UkpHdzBlWFQyWkNFVm9VYWNJZTE1bEd4TmFCdTNYR01vbTBLVm9xamxHRDFm?= =?utf-8?Q?VBLB/JpeBhGRwAsXN5V9KfAwI?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 55d5d49e-96f1-4461-3edd-08db68cd5a09 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Jun 2023 09:38:59.3246 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: KKp8BawsvX9lRkadzOax/5qYZTt9OURK0jaFB/qv3ysMikW/9m+YNAFDMTrGMusB8OoCWPXM7CxE78pnHKuvnw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR04MB9790 On 09.06.2023 11:29, Andrew Cooper wrote: > On 09/06/2023 10:22 am, Jan Beulich wrote: >>> --- /dev/null >>> +++ b/xen/arch/ppc/boot_of.c >>> @@ -0,0 +1,122 @@ >>> +/* SPDX-License-Identifier: GPL-2.0-or-later */ >> By default we mean to use ... >> >>> --- /dev/null >>> +++ b/xen/arch/ppc/early_printk.c >>> @@ -0,0 +1,36 @@ >>> +/* SPDX-License-Identifier: GPL-2.0 */ >> ... the more modern form of this (GPL-2.0-only). Anything deviating from >> that may want justifying in the description. > > GPL-2.0-or-later is fine. Hmm, I was merely following https://lists.xen.org/archives/html/xen-devel/2023-06/msg00415.html. The text at the top of ./COPYING looks to suggest -only, and I'm unaware of any other place where our default is actually written down. Jan > It's only the un-qualified GPL-2.0 form which is deprecated, and should > be replaced with an -or-later or -only suffix, as chosen by the > copyright holder. > > ~Andrew From xen-devel-bounces@lists.xenproject.org Fri Jun 09 09:43:50 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 09 Jun 2023 09:43:50 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545772.852324 (Exim 4.92) (envelope-from ) id 1q7Yeh-0000A3-7Y; Fri, 09 Jun 2023 09:43:39 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545772.852324; Fri, 09 Jun 2023 09:43:39 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7Yeh-00009u-4j; Fri, 09 Jun 2023 09:43:39 +0000 Received: by outflank-mailman (input) for mailman id 545772; Fri, 09 Jun 2023 09:43:38 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7Yef-00009o-V9 for xen-devel@lists.xenproject.org; Fri, 09 Jun 2023 09:43:37 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7Yea-0007gc-N7; Fri, 09 Jun 2023 09:43:32 +0000 Received: from 54-240-197-233.amazon.com ([54.240.197.233] helo=[192.168.17.204]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1q7Yea-0001HJ-Gc; Fri, 09 Jun 2023 09:43:32 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=FbHm2t5dbwS1ffW0/hJffqbSSP8AlGgyqCLMZcSxaZA=; b=d7xjs2u/YSetzuy0S26tQVBtg0 HXQavlVEXPKldiliCzNkTB92Cb7LzSKjAYNH5c+ypPJniztnLIKPww41AIraOGW3YNoK44T3ivsv7 NdIzYjPwmwSrbv3HwervpFOWVY0WTEp3bA/ouyOlFnbBIPiNeE9Tb8vkcuoWCJB6IvtY=; Message-ID: <5003962a-11b0-af10-afc8-335e82fd4d41@xen.org> Date: Fri, 9 Jun 2023 10:43:30 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH 2/3] xen/ppc: Implement early serial printk on PaPR/pseries Content-Language: en-US To: Jan Beulich , Andrew Cooper Cc: tpearson@raptorengineering.com, George Dunlap , Stefano Stabellini , Wei Liu , Shawn Anastasio , xen-devel@lists.xenproject.org, Shawn Anastasio References: <0c0a19de-dde3-8b98-4354-6d3d2019179b@suse.com> <0b24d36b-adbc-9e7c-df6e-8754c269855d@citrix.com> From: Julien Grall In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi, On 09/06/2023 10:38, Jan Beulich wrote: > On 09.06.2023 11:29, Andrew Cooper wrote: >> On 09/06/2023 10:22 am, Jan Beulich wrote: >>>> --- /dev/null >>>> +++ b/xen/arch/ppc/boot_of.c >>>> @@ -0,0 +1,122 @@ >>>> +/* SPDX-License-Identifier: GPL-2.0-or-later */ >>> By default we mean to use ... >>> >>>> --- /dev/null >>>> +++ b/xen/arch/ppc/early_printk.c >>>> @@ -0,0 +1,36 @@ >>>> +/* SPDX-License-Identifier: GPL-2.0 */ >>> ... the more modern form of this (GPL-2.0-only). Anything deviating from >>> that may want justifying in the description. >> >> GPL-2.0-or-later is fine. > > Hmm, I was merely following > https://lists.xen.org/archives/html/xen-devel/2023-06/msg00415.html. > The text at the top of ./COPYING looks to suggest -only, and I'm > unaware of any other place where our default is actually written down. We had several discussion in the past about using GPLv2+ license in Xen (see [1], [2]). It has always been unclear what is the impact on contribution with such license. So I think we should stick with GPL-2.0 for new code unless there is a reason to diverge. Cheers, [1] https://patchwork.kernel.org/project/xen-devel/patch/1474985810-12289-1-git-send-email-lars.kurth@citrix.com/#19650817 [2] https://lore.kernel.org/all/alpine.DEB.2.22.394.2208231140140.15247@ubuntu-linux-20-04-desktop/ -- Julien Grall From xen-devel-bounces@lists.xenproject.org Fri Jun 09 09:44:12 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 09 Jun 2023 09:44:12 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545774.852335 (Exim 4.92) (envelope-from ) id 1q7YfE-0000fz-Gh; Fri, 09 Jun 2023 09:44:12 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545774.852335; Fri, 09 Jun 2023 09:44:12 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7YfE-0000fs-CX; Fri, 09 Jun 2023 09:44:12 +0000 Received: by outflank-mailman (input) for mailman id 545774; Fri, 09 Jun 2023 09:44:10 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7YfC-0000cT-Bz for xen-devel@lists.xenproject.org; Fri, 09 Jun 2023 09:44:10 +0000 Received: from esa6.hc3370-68.iphmx.com (esa6.hc3370-68.iphmx.com [216.71.155.175]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 2d3bc536-06aa-11ee-8611-37d641c3527e; Fri, 09 Jun 2023 11:44:08 +0200 (CEST) Received: from mail-dm3nam02lp2044.outbound.protection.outlook.com (HELO NAM02-DM3-obe.outbound.protection.outlook.com) ([104.47.56.44]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 09 Jun 2023 05:44:01 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by SJ0PR03MB5856.namprd03.prod.outlook.com (2603:10b6:a03:2df::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.38; Fri, 9 Jun 2023 09:43:55 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606%4]) with mapi id 15.20.6455.030; Fri, 9 Jun 2023 09:43:55 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 2d3bc536-06aa-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686303848; h=message-id:date:from:subject:to:cc:references: in-reply-to:content-transfer-encoding:mime-version; bh=qOUMLfCZ7KwLZt4dYp0BD/7AeTwD1IxitLwcqErvdJo=; b=Cw4nVWfp0MW9ax12fCXh5FA61RDNaezVg4W5iu+hulmdViTT+KWA8FqT s3dv+AHoLtFe7q7vrxEwl5myDrhV7O+OigNSeugzLj6I5yJvP7gGgHN/n 1Rta59ocvY0xU37IrRdAqLCM/jXdG3U6sY8KPKwKwqyENWtYLMAzg5BRV E=; X-IronPort-RemoteIP: 104.47.56.44 X-IronPort-MID: 111515627 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:yrDzpaJmWz6gVQQJFE+Rc5QlxSXFcZb7ZxGr2PjKsXjdYENShDUAm DEbCDjVPv6CYjegKdF+YNu38E8P7JWEz4VqGVFlqX01Q3x08seUXt7xwmUcnc+xBpaaEB84t ZV2hv3odp1coqr0/0/1WlTZhSAgk/rOHvykU7Ss1hlZHWdMUD0mhQ9oh9k3i4tphcnRKw6Ws Jb5rta31GWNglaYCUpKrfrbwP9TlK6q4mhA4ARuPasjUGL2zBH5MrpOfcldEFOgKmVkNrbSb /rOyri/4lTY838FYj9yuu+mGqGiaue60Tmm0hK6aYD76vRxjnVaPpIAHOgdcS9qZwChxLid/ jnvWauYEm/FNoWU8AgUvoIx/ytWZcWq85efSZSzXFD6I+QrvBIAzt03ZHzaM7H09c5rH0dRy eRCCwoBRT+GmP+XxoOwGu5F05FLwMnDZOvzu1lG5BSBV7MKZMuGRK/Ho9hFwD03m8ZCW+7EY NYUYiZuaxKGZABTPlAQC9Q1m+LAanvXKmUE7g7K4/dppTSPpOBy+OGF3N79U9qGX8hK2G2fo XrL5T/RCRAGLt2PjzGC9xpAg8eWxHqmAd9MTuLQGvhCgQWq7TUNBCAsUXCkiNm+kGeeAuwOE hlBksYphe1onKCxdfH/VRClpH+PvjYHRsFdVeY97Wml1rLZ6hyCAW4sVDdZdNs8uck5RDon2 0WImdyvDjtq2JWXVHac+7G8vT60fy8PIgcqfjQYRAEI593ipoAbjR/VSNtnVqmvgbXdBjXY0 z2M6i8kiN07ls4CyKOy+1ncnzu3p5/hVAct+gLNU2Sq7wV0aZSkYYPu4l/ehd5QIYDcQlSfs Xwsn8mF8PtIHZyLjDaKQugGAPeu/fntGCbciEFpN5An/i+x8mXlfIc43d1lDEJgM8JBdTqyZ kbW4VlV/MULYCfsarJraYWsDchs1bLnCdnuSvHTaJxJf4R1cwiEuippYCZ8wlzQraTlqolnU b/zTCpmJS9y5XhPpNZue9og7A== IronPort-HdrOrdr: A9a23:Y4xIt65NGO5N6WsaqwPXwO7XdLJyesId70hD6qkmc20uTiW9rb HWoB19726TtN9xYgBGpTnkAsO9qBznhP1ICOUqXYtKPzOW3FdATrsSj7cKmAeQYxEWn9Q1vc xdmsNFebjN5DZB7PrS0U2RD8sn29Wf9bDAv5ak856vd21XgmNbgjuRxjz1LqS+fmd7OaY= X-Talos-CUID: 9a23:lN/nsWNrf8vZCe5DRDdB63IMQOMfflbyyWjNAkmJAjZuYejA X-Talos-MUID: =?us-ascii?q?9a23=3AqBceyQx4BI6YkdeaDC1gNbJkRIGaqKX2MWtUj5k?= =?us-ascii?q?7gc2vKgVQPC20rG2JE7Zyfw=3D=3D?= X-IronPort-AV: E=Sophos;i="6.00,228,1681185600"; d="scan'208";a="111515627" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=gPV0kIWFze1CSYE8kFmA/BfjWTdmbr8WKzozE3jwSJRLujjxMQ1fbEnSE8/xMT3M1MKkh+dOayNJrLogSAmBxeb2fQj351wKwWrGHkSZUgRf6GWl3rT18qzT3Gbx9Rbc2qnPJLewTDWmdq3JEiHPUWiRLc55SfBNzDEINRgrU4luI59O9s5iPc0v3u9TiJwm3os0nw8IzwK/DfNC560cVrvUghii4qMJd3ZBEEhxfsr02KY9x8/EWGB+BlNQGdfYWfgVFTgzZaTRGv0eBoRTOaV7qMdlqfRCAP7F6qoRdDlivk8vk2fpqZKyqwLLvJ9y6QSBsTwJFHvSKqDtd/FUQQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=qOUMLfCZ7KwLZt4dYp0BD/7AeTwD1IxitLwcqErvdJo=; b=S/3umUEkG8TOWd894SXfh50qLeAKp5GQvQ8ytKebK8cgvEcpXhysRU28nsBAmoMsehlWCnCYgwtkJ7dp+9XgQd09LrYnFv/tp28WO4L4pk9R8DYqAEVbhGSoNfqq/WlK/yTp14jhvFEhBD+7JNf0MyQDp2tklz+PkZih+FNpEddFW8BzEd0tOYrHxLbzg7ajV2LzE47jrNO73CUTAIjwefwkBBwJ0LMCdTQGBGV8hikzMscafaQumW+AlNOenPdsC6l8se5OvXBb7Ho0oszAj6pIYS3sVDy6pwEW++Dtt1vzdiaKPzvXb8Nm8AmztaQ4xz82Nos3iDsQCPE54OHrpw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=qOUMLfCZ7KwLZt4dYp0BD/7AeTwD1IxitLwcqErvdJo=; b=rSBt0UOwznEn+V5cA+QWNX/FF91C2K3gC+wH+NKmbTTn5nRQvI3Dpphc/Y0VdqSFWXHhTk9BHSzHuecZzu28mikw+H8A37816JkHSmtoB4KB5zAZNwz5bimgJeHNBDgFJQvW8DvoUi4xjLL4zVOiF//lCEqo4GXrwUZ/5uZWEYo= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: Date: Fri, 9 Jun 2023 10:43:49 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 From: Andrew Cooper Subject: Re: [PATCH 2/3] xen/ppc: Implement early serial printk on PaPR/pseries Content-Language: en-GB To: Jan Beulich Cc: tpearson@raptorengineering.com, George Dunlap , Julien Grall , Stefano Stabellini , Wei Liu , Shawn Anastasio , xen-devel@lists.xenproject.org, Shawn Anastasio References: <0c0a19de-dde3-8b98-4354-6d3d2019179b@suse.com> <0b24d36b-adbc-9e7c-df6e-8754c269855d@citrix.com> In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LNXP265CA0059.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:5d::23) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|SJ0PR03MB5856:EE_ X-MS-Office365-Filtering-Correlation-Id: d769bbec-7266-436d-22b5-08db68ce0a71 X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: O1TCQmtjzSNsjrlBD6QMCORKNBk8uxf72/LT4y+0lOzcE1T5U7QV4jzWGSKGKj6V6yvmTOuZcgQQUT0EMesZjt3CAAMXPcbEAgwb6hiWrl5PTQndGFq+egqgEO/sHoAa8hIg/Ia8lZ/l4MeAMuFKhstpeq+215mR9PvsvEPEq8kBVNarPqesqsMJFsKTbOIlHuVd+uJtl5ybedWau8b5YbEWvVv6YF7/9HTr4iTefxGQYGSajnjrE3i92HO7io7mbtsJGhCzld+XNW5MZgyIe3/pXG8xTNFTWoSoIYVEneBgYe5vfkOe155A2zzQ5VwhxHS/5efr3UxZeo1LnIMbSURPoIlhRem3PkA6EfTnHhHrVUXshiUklUqlSsZzd8kwRUVPeWcSauG8bKkAG+Zt86IVL8wjz1UVKqKUwrP4gdnS95tyxDGl+ZVO8UdZW6Y2Ujb5K2YkzAfAEPMVF/JPDy4bm8ZbJD6SIqf1KztvSoegkK8LZGt9JtoBdXqam5HE1YNmYm6oZoVzjkGLwTSJ/UZhdRJQCoa3SGdZ5rocQyvLU3uIpKhryF7tYxWNVfugdn6Adt0A9qa/5fnhgnSvPq4nzv91ZVUkjGW4lgLk/UpawLTt6oQsKfgLztse7NnOAgzGoNbozKsKeiWiLR9EMA== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(396003)(136003)(346002)(376002)(39860400002)(366004)(451199021)(86362001)(2906002)(2616005)(26005)(6506007)(186003)(53546011)(6512007)(478600001)(31696002)(82960400001)(38100700002)(6486002)(36756003)(966005)(6666004)(5660300002)(8936002)(8676002)(31686004)(41300700001)(66476007)(4326008)(6916009)(66556008)(66946007)(316002)(54906003)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?Y054M2xIclJFZG1iQmNlVzl0VG1DdjhnTXdHbnZCS2s4RUVxVmhLYnRQa01X?= =?utf-8?B?amRqaFFVWWxOT2dYZU5obFU5bEkrdHJvdHJZUnlmYTlmMEVkR0o4NnF1T0J6?= =?utf-8?B?ZGpwMFB3SHBwTVZ6bklTdDMyVCtjaTRrS3M5L1o1RXl0Wk54Yld2dmQ0THJh?= =?utf-8?B?dlNpUmViZ1lKZjNraExURVU5a2s1OVhLUUc0SXRVQndnVWRlY2t3ajlmcVky?= =?utf-8?B?K1FnakRlNkpzV0o5a3kybzB4TGxnN3hTaEQ4OFRFbHo2ajNTQk81YXJKdlJp?= =?utf-8?B?Y25hMG1wTXFaLzhKelZwTmg1cHBvS0FwSmtrL2RndjdrLzkvOWUwck9TTzQ1?= =?utf-8?B?bXM3ZlpZRWtVR2hRdjhHUHNOUWNwQzUwM0hDVFl1c1RMYjlCQ29EdUxjWWt5?= =?utf-8?B?dmJvdGhBZ2huQXJvWS9oWUIzNGpLczVGaWoxdkU5SlRTenBUMFhGQlA0WDNE?= =?utf-8?B?RzNpbVQxTnZIWG9hOFhBTnBsME9ZN0taUG9MUUMyTzRmSVFiR3FWN0h2elVi?= =?utf-8?B?clRoTi9kUzM3ZjM5aEZvRUlGVWxicGZvYjU2dmNENFFBQXd3L3pvNE1vZFlq?= =?utf-8?B?YjMxYmFiV1JnWUZCZHpxUHplV0FSR3J3YVhhbEtPWE45NXhhU1VncXZSc2JS?= =?utf-8?B?TDZKY0ZOOGwveEhIeSs1UGZEaEF6M1g1dTA3c0MydS9uMm5lNEN2UWR1TnFF?= =?utf-8?B?bkl2Ly9tM2xpS0hlWHlZZWhkcE5oRjFibFZLb0lPZ0plM25pUmh6d3d4ZXBi?= =?utf-8?B?V3JWZ2dSeU1BU041S1QxNjc2WHFkK2d3b1JwZGhnMDA1Rm5pcnJ1V2dMTEdF?= =?utf-8?B?aVBCS0FFM21qQ1B6bVkxMzU2NGpLRndONm96eVMrNlFtU3p1empseEVrWE1v?= =?utf-8?B?VC9QL21XOCtTWjJGN3hrUlZGMDRBMTlYZ3hTb3U1bXNIUGZKK2JySzc3UnpO?= =?utf-8?B?NkdrdVR5a1VqeHBtbVhSZk1JS2ZFVld3cXBUTG9LYWpySHJzSGxxRi9RVTBo?= =?utf-8?B?TXd1ZjlodEhoS08vTmZpSGdFcW1wVHBlOHNHUEh2OXVscDhaYWtNZnFhbVNm?= =?utf-8?B?NXV0bmp4THpiN0dxNU5Dalo5ekJiNmVzQjZSSVZxcmQrcnc0eTI4ZWdPSzB0?= =?utf-8?B?aW1melZsV3NLZDdHc0dhdlhkcDRVMFpxYWZObEozM1U0djNKa3VsbkI0RWVL?= =?utf-8?B?VS9jZDdqeFpkUk1ZMzBIc09ZWVJzcC9SV2R1RkZrUjlPMWwrWHFSRkdKU0F5?= =?utf-8?B?SkNyYVpSckl0ZjZrcHExaFJKWFBRQnlHQ2ZGT0JYRnNDSjZlRmpCdlF3b3Ar?= =?utf-8?B?b0dRWXNuZkplRmlKdENyeUNsWWNHZTBxM0ZWZEJrWXo3bXBUWFZOdk5wTlJK?= =?utf-8?B?NWh1cXhQVTU4dUdCVCtPSS83UTBPbDFWTUtIWDAxR2dBaUF0S1dxWkhJWjBO?= =?utf-8?B?NGpCZlJQOWM4SGxtbnR5d1ZSL21USktyVFNaaUU1aVF2dzZaY05PWWoxNTMz?= =?utf-8?B?aGlwNWhTekUxWm9RSVJYOWdUR3haVU01T1E1bzN0Q21zUjlvRmJlelZNZUlh?= =?utf-8?B?b3dFVkJla0pBa0ZoUFljbnN0b25TL250a0VhZzFMZWxWTVFIaUllOGQ3cWRr?= =?utf-8?B?QzJaUk9VNE9KNDlaRUljaUtUcFh6VmdiaW1zNnRnN2loR3kzZVhqNkVLc3RL?= =?utf-8?B?YjJLdkoxUEFMc3dyQ1dZaUE1a2RYeTBuVEVYMW9xQmVNUlB2V0wzQWNtQlEz?= =?utf-8?B?d0pqSHVjT0hUUDR3T1NLTysxQ08yMDhmb1doTzJPQ1lvMDJENTRUVW03bkZR?= =?utf-8?B?N0xudjA4NEMxL3h3cmFwSXpZb2tWNnpZT3VwSm42OXcrZXJqV2gwYlpUaXhC?= =?utf-8?B?eVBqSE9RWnlqbXkvSEdSdDViWkR1SXcrazZKY2dEcjZqUzdOYjBPVGM3RHFP?= =?utf-8?B?emVRS2UrNU1VeFR1SEJld3FvYlF3R3Q0a3U4NzNKcTgwanRtL25xQjRjaVhv?= =?utf-8?B?WlVRcHZMSVdFUUE5ZFRBdlRyaGMzQWtucUplNWNaT2R4Z05GTk9tWElRUzgw?= =?utf-8?B?MVQzZUhFTUI0NzFpei83eERibGZJalVjeTY4Zm5Na01SNVh2d1o3b2ZMaThs?= =?utf-8?B?bmVuOFovOWRObVNUZGN3UU5lVW4rRGpvNGplL0pGc1ZTVTRRbmpPWlBiZmZu?= =?utf-8?B?MXc9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: =?utf-8?B?Ukd6eitLWWNGRVBhb1BFTGVKdXVDeDVqNDZtdlZkYUV5TnlxaXQxellQUE5k?= =?utf-8?B?QWxVYlJhQVhZYmQrYXFJS0xmeXQxN1RuRld5cElIZk9tcktZank5aThEK092?= =?utf-8?B?L3ZhWGhwbnJ0M0xqenN1TDBJV2NZeGE3b2IwbHZxOHZJZURHWU4zTWtqUi90?= =?utf-8?B?dm1vVkZEOG1ReERaUDVrYUlqY3pOYUNaSndoSVZLQW1aQlRFcFFrYnpuL0Ez?= =?utf-8?B?a1BWQndWSys5V3pLZzhibGp0MmxpVHpBOWg4Q3RucUdkWFJuSGpFNHZZMTNE?= =?utf-8?B?WGxOcmhPd2FLeWtGSExCNTgxSmM3d3d2YzdoWTNiVmdpTmJQKytHTlMwQnlt?= =?utf-8?B?MmdKcytuWnliRkNURjJRaEZhZ1I3RXA0ak43Q0ExYW5PM2VBVWhTYnk2aDJj?= =?utf-8?B?QnNSTGVOb0kxcGJQSWhHejZRSDVFa3I4cXdkem9kRTVtRlJwN1ZxaGlObFpB?= =?utf-8?B?cFV1MEd5WUJPZlNKTThKWFREM2Z0bXB3ekQ3bVBqaFVFMnE4aVZmeWpsVUpz?= =?utf-8?B?ZEZCNXMyOGVyMDdXcjhWZUxOQzZSYnNOU1hIMlUxNUhnSTVaNGE2NkJ4SDRj?= =?utf-8?B?NHpMVjVXV2RGWXV1TVRXb2RzQWRQelpKYU8ySW9yTVRpeWJXdmZVRnoya3ZP?= =?utf-8?B?bFdXZnpwMnhYN0grR0RVdXJLQmZxWWtFRzJIMUp2OTU0VjhYMFJta1Rla0dV?= =?utf-8?B?WldtejJocVorUmJ6VXF4SWZnRUhWL0tmYnVjejc0dnUyMVByQVZHVjQwcXQz?= =?utf-8?B?M085WXJhTE5qVzJ6OTVXZERyZlQ0Z0xTdmpXTEhtQ21GYi9HMi9UbmZhdm9J?= =?utf-8?B?L1R5UzVKdEVSdDZ4NHB2bzA3bGJMYlNHOU5MdjJSVkpTTDRpelpEWFd3Z0hz?= =?utf-8?B?VmdHbXVZVmt0MU5CUU40VWd1K0thSmhvSEx5WFdNOGJaNW11QlB4THdtalpw?= =?utf-8?B?cTRsWS9lUVkweTg3Y1Yva2pFbnUvbWZOM1Mvek1vdnlTNXBtZDRTMStBRmVh?= =?utf-8?B?TWQ4TWRQRG5sVy9OMXhEY3hFSHpPeU1XL0phU3ArNEw2d1daVkZvTXcyTkhk?= =?utf-8?B?MmN4ODdLWFlMaWNyTURwZXBWMkJxTVJMS1NGcGxBZFJOOXNTV040WjZ4Z1Bx?= =?utf-8?B?emdESXZyN3FWdkdobk9uYVgzSVY2STZwY0kvYVV3a0c2STY5c0lMek5lZzlV?= =?utf-8?B?cnFWQUtGa3NOUFNYRG9hZ0E3MEppV3J3RG52bEFpMGN2M2ZKRk5NRjNMdUx0?= =?utf-8?Q?am+n/jVvZ28QouN?= X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: d769bbec-7266-436d-22b5-08db68ce0a71 X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Jun 2023 09:43:55.3212 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: VQKuoxOujlorY9soIcijHYnae82PgDIO6zbG7bFDBjGp8YwWkrTer4b4D70riqSwbeS2o0IhbPaxk+Y738vuiMDZ8qiZowFXzcclWh944ZY= X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR03MB5856 On 09/06/2023 10:38 am, Jan Beulich wrote: > On 09.06.2023 11:29, Andrew Cooper wrote: >> On 09/06/2023 10:22 am, Jan Beulich wrote: >>>> --- /dev/null >>>> +++ b/xen/arch/ppc/boot_of.c >>>> @@ -0,0 +1,122 @@ >>>> +/* SPDX-License-Identifier: GPL-2.0-or-later */ >>> By default we mean to use ... >>> >>>> --- /dev/null >>>> +++ b/xen/arch/ppc/early_printk.c >>>> @@ -0,0 +1,36 @@ >>>> +/* SPDX-License-Identifier: GPL-2.0 */ >>> ... the more modern form of this (GPL-2.0-only). Anything deviating from >>> that may want justifying in the description. >> GPL-2.0-or-later is fine. > Hmm, I was merely following > https://lists.xen.org/archives/html/xen-devel/2023-06/msg00415.html. > The text at the top of ./COPYING looks to suggest -only, and I'm > unaware of any other place where our default is actually written down. The license is chosen by the submitter/copyright holder, based on their preferences/wishes. It's fine for Xen to say "if you've got no vested interest, we recommend GPL-2.0-only", but that is strictly a recommendation and no more. If the submitter chooses GPL-2.0-or-later, that is their prerogative.  We have plenty of GPL-2.0-or-later code in Xen. ~Andrew From xen-devel-bounces@lists.xenproject.org Fri Jun 09 09:46:34 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 09 Jun 2023 09:46:34 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545782.852344 (Exim 4.92) (envelope-from ) id 1q7YhP-0001Jy-Rq; Fri, 09 Jun 2023 09:46:27 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545782.852344; Fri, 09 Jun 2023 09:46:27 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7YhP-0001Jr-PI; Fri, 09 Jun 2023 09:46:27 +0000 Received: by outflank-mailman (input) for mailman id 545782; Fri, 09 Jun 2023 09:46:26 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7YhO-0001Jl-PJ for xen-devel@lists.xenproject.org; Fri, 09 Jun 2023 09:46:26 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7YhM-0007k4-Gz; Fri, 09 Jun 2023 09:46:24 +0000 Received: from 54-240-197-233.amazon.com ([54.240.197.233] helo=[192.168.17.204]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1q7YhM-0001S2-Ab; Fri, 09 Jun 2023 09:46:24 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=GaXD/WNuFNC1Tope1mNHZbDOEHLNTi1eV9ZwIPv3J3U=; b=bZd6waMiu/GPI+l+dHzrX6V9nq 5ZTkc2Y2KPjOSfcaB5WvTStG2wz1CXHZtnBH1aESyn9pUmSFDRqRVMJgyifYSpV4KIZb15y5z3GT2 AcqxMK1yFh/jyIKUR+3XzCjuae7zLcfcalP2H6dZiszo7XTGNpxa9GGz2z/Be67RO1sE=; Message-ID: <1c35f696-5a65-06da-8af5-685b8ad2e849@xen.org> Date: Fri, 9 Jun 2023 10:46:22 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH 2/3] xen/ppc: Implement early serial printk on PaPR/pseries Content-Language: en-US To: Andrew Cooper , Jan Beulich Cc: tpearson@raptorengineering.com, George Dunlap , Stefano Stabellini , Wei Liu , Shawn Anastasio , xen-devel@lists.xenproject.org, Shawn Anastasio References: <0c0a19de-dde3-8b98-4354-6d3d2019179b@suse.com> <0b24d36b-adbc-9e7c-df6e-8754c269855d@citrix.com> From: Julien Grall In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi Andrew, On 09/06/2023 10:43, Andrew Cooper wrote: > On 09/06/2023 10:38 am, Jan Beulich wrote: >> On 09.06.2023 11:29, Andrew Cooper wrote: >>> On 09/06/2023 10:22 am, Jan Beulich wrote: >>>>> --- /dev/null >>>>> +++ b/xen/arch/ppc/boot_of.c >>>>> @@ -0,0 +1,122 @@ >>>>> +/* SPDX-License-Identifier: GPL-2.0-or-later */ >>>> By default we mean to use ... >>>> >>>>> --- /dev/null >>>>> +++ b/xen/arch/ppc/early_printk.c >>>>> @@ -0,0 +1,36 @@ >>>>> +/* SPDX-License-Identifier: GPL-2.0 */ >>>> ... the more modern form of this (GPL-2.0-only). Anything deviating from >>>> that may want justifying in the description. >>> GPL-2.0-or-later is fine. >> Hmm, I was merely following >> https://lists.xen.org/archives/html/xen-devel/2023-06/msg00415.html. >> The text at the top of ./COPYING looks to suggest -only, and I'm >> unaware of any other place where our default is actually written down. > > The license is chosen by the submitter/copyright holder, based on their > preferences/wishes. > > It's fine for Xen to say "if you've got no vested interest, we recommend > GPL-2.0-only", but that is strictly a recommendation and no more. > > If the submitter chooses GPL-2.0-or-later, that is their prerogative. > We have plenty of GPL-2.0-or-later code in Xen. From my past experience, the submitters tend to just copy the license from an existing file in Xen rather than explicitly choosing it. So I think it is fair to ask the question because our original and default license is GPLv2 nor GPLv2+. Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Fri Jun 09 09:48:09 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 09 Jun 2023 09:48:09 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545787.852355 (Exim 4.92) (envelope-from ) id 1q7Yj2-0001uT-71; Fri, 09 Jun 2023 09:48:08 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545787.852355; Fri, 09 Jun 2023 09:48:08 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7Yj2-0001uM-3l; Fri, 09 Jun 2023 09:48:08 +0000 Received: by outflank-mailman (input) for mailman id 545787; Fri, 09 Jun 2023 09:48:07 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7Yj1-0001uG-2a for xen-devel@lists.xenproject.org; Fri, 09 Jun 2023 09:48:07 +0000 Received: from EUR04-HE1-obe.outbound.protection.outlook.com (mail-he1eur04on2052.outbound.protection.outlook.com [40.107.7.52]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id bb771e8a-06aa-11ee-b232-6b7b168915f2; Fri, 09 Jun 2023 11:48:05 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by DB9PR04MB9962.eurprd04.prod.outlook.com (2603:10a6:10:4c4::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.32; Fri, 9 Jun 2023 09:47:35 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.039; Fri, 9 Jun 2023 09:47:35 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: bb771e8a-06aa-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=kXHdYjzYYF7EqAHPaa+dUQmIoouk1WJih+CMyiL8zzxqjutLcYmm63fgufxHlTU/X2DHdzZBVz8x6n1i85x9r3xNjIFSP1b+K6Ef3NbepbgY6IGKcSuOVgUwrkp5PsSaXx0DZnzTB76zP8tEHk2EqbjKJmBmSS36bNdBxmpHRpqhoJ4I6vWzC+HtVL1vx9Ie/mzUL5zxmPQG7MxAqrD3gMFODnbfIPBx8RgZXaPpmb0pQDnlKwW4LKAkn/Nalu4uxUrX9J+RtZkQbw/K5Cl5X2JgLIRHxiK7JMVjfxKXwUO07R3cSdDCb4k7G3WuHkGkqU2g6U5N2bgbNdVJPOn3vQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=eFjd+GCVzXTAW7Y23VnBIz8RizZRzYtdgZQjws2wBpI=; b=ApLuT61/yHAKdZrLZ7/FO7+MfTmeBTlTXaAkAHIqsUHKPNLHoCrF/YMldYZTAyILrkJRR4YdZTH83PkxIuIE7fHDdaNKgjZTckG14vzdyWiX2lgn5eHJFv/L6U6voO8x8BCcJoGv5hNG+z4v3sEtuunPFPR94UV57kmVrFSTTHCKyHtuH2rDnd6At+HBWljxLhjhjhOldo3hX33Z+sNeH7KfBSHu5dMn/6dW7ra2e/qXjdzh6XcyidsZ3Z4GDsg1K+8gnSRtx9bVJNMcHHf451vVKjHW8ztTAjnbe1on/sPPHyCtDQMQ75hj93tccoTOe68ya704fvgbGyw8oJiOtg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=eFjd+GCVzXTAW7Y23VnBIz8RizZRzYtdgZQjws2wBpI=; b=UAGu5AIgx1KZmdnV2fv7zOpXT+826VHJ2i5io+QA04TcqmG8QJbrhR2MKrJJPoVU4fZowrgscVV1uUh3SRkuU5d4pWYmuhW5AcMx3AyeVX4zya5PzSJqlzUWF3hT0p3mwXlDH64ARUgmrw620IlKLbgRMoUFbOySQn26jmeoDXOj/PHCQRlphd2Yy9SKlJqm4AU1VS4KOR5JIQ0H8shoCj1iLtlUojzy4gcKUFC98RR58KW9H0OedveYR+MfRbB3lRw4q6VaZuaRkGkaDb+1DfJwcsqWk5dAc8uvLUpco/LZuSoZ/UDvdAcvqEUw6IFa+dz5TjeOGOmR7UGZ5VNS9Q== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <13d13f3a-26b7-ea99-8ba3-f868cee1e3ac@suse.com> Date: Fri, 9 Jun 2023 11:47:33 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: Xen reliance on non-standard GCC features Content-Language: en-US To: Michal Orzel Cc: Stefano Stabellini , "xen-devel@lists.xenproject.org" , "consulting@bugseng.com" , Roberto Bagnara References: <1cd359e7-5245-a621-3be2-9323ba5b327b@bugseng.com> <8314e0fc-4ead-40fa-ef7b-4da8ce0655b4@suse.com> <80a512ac-d90e-930a-7ef7-8ebb5a80e801@bugseng.com> <968ba799-8fe4-e22f-b678-64e52f789026@suse.com> <9df8560d-4b06-2ab4-b09a-30241dd19676@cs.unipr.it> <4f5e33e7-9606-2cc7-79ec-c03cc724b6c6@suse.com> <8efd91fd-bb36-9073-654f-fef32d0da443@amd.com> From: Jan Beulich In-Reply-To: <8efd91fd-bb36-9073-654f-fef32d0da443@amd.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR2P281CA0013.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:a::23) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|DB9PR04MB9962:EE_ X-MS-Office365-Filtering-Correlation-Id: b9a3f43c-e649-416e-4506-08db68ce8dd1 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: /3o5C/by/ph3EOUz7w0SMAhMlnZcv7i2JRoeaNdcf6nhREfQ30HHrW9CpysAcLAFeV1YFYdhAKtnks6L+xvtR1UPGQai4mWp7NnLL6R57gwLWhBSOftoYjZTKb69NCl0zRPJaSAIQ8klV7fgwwkL2RzKN/fmvn8jPMmmKea17Ida4rev88gpVmUivYIAVrkQufIU5L65WJYRrgvW2UYCHlpcDo2iQ/eQsuYjKJZA+EoWgI1YTT/c6QGyhOocv0VW4aA/KXa4MdO7plyD842pKY3RKhFHUJKhd3WLb4NZZRFm4sIIAx2oPaSTEjiPmKiDTQdORD+VTEi+lLEN8xafoekCvoJnlBWevxM9r/qTq3xHgbRSIETxgRbHl5t/+zCz6KAUG8TDwHELUWt/kFecy8JoowOgeRUwrp429JZ3LXFY7a0fqAgIBpaHVdPOCAUmLyB0KFpC2boKyLK4O+2o6ERo/oPCQTHYIkVwFZZSE581ELOwQh60x2Hy/+Tfzbsnw3Jz8h8H2HaL0O1PThMpFmB5SWcH3xRYSFUt+6lXMYQMHx1SOSAyrrWctvUINwCPAnsjYqiOWyiDRnxYW9tBbb+e+DrxfMgn4gDr2lYRVnl5F1FaynVOn7AL7tUrQOS32NhJpJoIkkw8zv758lvfPw== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(366004)(136003)(39860400002)(396003)(346002)(376002)(451199021)(53546011)(6512007)(2616005)(26005)(66946007)(6506007)(186003)(4326008)(83380400001)(66556008)(31686004)(66476007)(6916009)(6486002)(316002)(31696002)(478600001)(54906003)(36756003)(2906002)(8936002)(8676002)(86362001)(5660300002)(41300700001)(38100700002)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?elhBNFVyWUQ2VmhGb0tPWHNvTHVpWVhrUXgzWDB5UkJPUms4OGhpdGNQRkpV?= =?utf-8?B?L3lVc2czN1Vna21JeGJMcGpmVkVHWmlaVUNWK1VHUWozZTB5L3cySXdvY2oz?= =?utf-8?B?UzNqOC9VdFlwa1N5SjhRbFRsSnQ5d0JXa3B4Uk9qbFVkSDAwVExIcFZUNWQ1?= =?utf-8?B?WUc5VzE2cHJoY1FWcENTVVg2Y29zb2V3M21VUmpVR1JYZ3lEWnBEM0xyQ3dt?= =?utf-8?B?dkM4V1N5bk5yL1Z4ZzhOZTFSYzhrWC8xdVJ5TkpPbXNzeC94L2lCeWhLTlEv?= =?utf-8?B?cys5SDU0aFg3ZHBWeHNxU0NsYSt6cG9iRzFoRGl5TnBIeUhKSzVacktEV0ZI?= =?utf-8?B?Y0RpTmJKSzc0RjVsRUt0aFFMSzByQVl3S21wUEtmOFR6Y3pTQ0xGTUVjdU5S?= =?utf-8?B?MnFmVUMrUDdjUk9HOG9QMExLNWkvRENvYmtmRVp4ZkwwZDQ1blRmMGZjYkdN?= =?utf-8?B?ZjFpZnVPUW04ZEhNQXF3Mk1ZM1JQU056T0FaWUNuajJ2RTJpcERwY0M1QTVK?= =?utf-8?B?dEFJeC84b2pnSGZBUHZJanQ4cXkrcVpVZ010WFFNYnc3aXpTUFN2eFpDdE9y?= =?utf-8?B?Zlh4dmlKWXpNcmRvN0lPMGVoR3E4bTBSUjROU1E3ZmNoVkdIWHFZd2JtQ3Ux?= =?utf-8?B?WFFkVXVSWHZBY05TUU5aNjlQNkZiRU9kVjZUNXk3enJZUjdpSjJOcUpyNkVI?= =?utf-8?B?V3oyMVFhR2ljZ0tJNVM5WXRLWUVQQVNZK3ZqejB3WERCNzZub0drdXV5TGdv?= =?utf-8?B?R0s0QVJXZ1o5NFJCYWFMdzZyeFQvM1Z3amkxMmt0OVZ3WHVIYnZCbjVHa3JP?= =?utf-8?B?T3cxazBBOHV1YVNwcXUwZ1RjQmlKQllKUGIyMldoWDR5NHV1S04rNDBDOXQr?= =?utf-8?B?dWhOV3BOZVpWK0lFV0kyejdWVHI2c0kzUzhSMmhFb1FkS2R1M092ZlVCa25G?= =?utf-8?B?cjVUN0ZENmxsMnRTVTNucFQrNU5SRnNjQ0lFQmdwV3laaFhXVW9OR2h6K3Fl?= =?utf-8?B?T1lnbVI5V0puelVVUTZjY3owNmt4VjU1U3dBNTBJamRIMUxjcU5NenNmRDNU?= =?utf-8?B?ZjB5YmpMQjdkWUpPOWxTeWxTcHRYdGo4bERvbFpXQjV4QTQ5ajdiK1VJK3Vt?= =?utf-8?B?ZmY5SExqMjQycFVHSEV6SDVkcG05c3RYQjZ3TXdhbjYxaVFnNTF6U3FETG1Y?= =?utf-8?B?N0tNYS9UMHFIYjFWb20rSHpPTnV1a2tZMDJkdWpKSDFtNHhsTkl6S0tBdnIw?= =?utf-8?B?SHVZbHlkRklKcWNMVVVUUjRveUFTWDZXSXFMSnNvcmpQbzlOOVJHMk5LYm9a?= =?utf-8?B?ZjcvTEdubFU2T1VtenVHeGdpSFJnNE5YdzFCV0p6c1ROTEU1elZZRlJ0Q0E4?= =?utf-8?B?SFVzN2dUUmxDNWF0MFFsWENLdHhOVlV1aE9xcjlwODNlbmtCb3NNZ2RRTjNN?= =?utf-8?B?bklMRWxZODRHKzdOeVRVMW9DLytpa21zVzY2blVaUjVuRGd3SUo3NU5wSElH?= =?utf-8?B?blh6L1grM0hWNDdtdmVPbXB6Z1hhSVhsZ1gzVTgwQVd2dmR3U1p5QTVIUTBX?= =?utf-8?B?MkNzeURDS2tvYzFYWHl2YkdYTTYzaSsxYkFuVEZPRmlOVmlxODlYZGtOWEx0?= =?utf-8?B?OUdtVjZkZW5hVXZ0QWdJNTREMUZMRkxBSDRsZit3Rks1bXBVZVFrTmN6UGt4?= =?utf-8?B?ZGlDNk14VjkzUTJNQmxiZ29Xcmw0Z21iTlVzYlhGdXRYRXJjOGd6TmFTdTM5?= =?utf-8?B?OGcvTHFxdnBWTkd6QnFWNGZtQXFKTk4rVllob0txMjl5S2QrQUlKVU5seVU3?= =?utf-8?B?bjlLZE1NelpDUW9tMnd1Q0xOd0hDU3VMT25oOWRzL1Q5Uk5aNG1WOUNzNnd6?= =?utf-8?B?Rkk5VXN3S3RYSDRnUXkwWDQyQzBMNHFGOVBlalNJanEydkF1K2gxSzlKTHpL?= =?utf-8?B?NUxSN3dmYjVMbTRLclpoeENMaDFrOWNuOGNVWWR1YTZjbzkrQkNjNTg4MjRN?= =?utf-8?B?eVlHaHJPR3hETEFaeXgweWM3bmVrN2RwMHBvZDZUNGRhN1ZZMkZZd3JVM3Jx?= =?utf-8?B?bHZUMkc0TEFjQ3A1a0RIMVBJRjhUNTVPbXBIMFhnU3dZRUpZOWwvR2FQWWFy?= =?utf-8?Q?eKHgG0XHhrEYiz3Upxm62O/v7?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: b9a3f43c-e649-416e-4506-08db68ce8dd1 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Jun 2023 09:47:35.5895 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: kJx5zQZDIRVdM95lGsN1EgegTm2Mnes8xx66DMtlQYIq/qn477DHAA0X5eWpTo9QLeh6BkqJhXFhqpxQ1s7XoA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR04MB9962 On 09.06.2023 11:36, Michal Orzel wrote: > On 09/06/2023 10:54, Jan Beulich wrote: >> On 08.06.2023 14:18, Roberto Bagnara wrote: >>> On 07/06/23 09:39, Jan Beulich wrote: >>>> On 05.06.2023 15:26, Roberto Bagnara wrote: >>>>> On 05/06/23 11:28, Jan Beulich wrote: >>>>>> On 05.06.2023 07:28, Roberto Bagnara wrote: >>>>>>> U6) Empty declarations. >>>>> >>>>> Examples: >>>>> >>>>> xen/arch/arm/arm64/lib/find_next_bit.c:57.29: >>>>> empty declaration (ill-formed for the C99 standard, ISO/IEC 9899:1999 Section 6.7: "An empty declaration." [STD.emptdecl]). Tool used is `/usr/bin/aarch64-linux-gnu-gcc-12' >>>>> >>>>> xen/arch/arm/arm64/lib/find_next_bit.c:103.34: >>>>> empty declaration (ill-formed for the C99 standard, ISO/IEC 9899:1999 Section 6.7: "An empty declaration." [STD.emptdecl]). Tool used is `/usr/bin/aarch64-linux-gnu-gcc-12' >>>> >>>> Looks like these could be taken care of by finally purging our >>>> EXPORT_SYMBOL() stub. >>>> >>>>> xen/arch/arm/include/asm/vreg.h:143.26: >>>>> empty declaration (ill-formed for the C99 standard, ISO/IEC 9899:1999 Section 6.7: "An empty declaration." [STD.emptdecl]). Tool used is `/usr/bin/aarch64-linux-gnu-gcc-12' >>>>> >>>>> xen/arch/arm/include/asm/vreg.h:144.26: >>>>> empty declaration (ill-formed for the C99 standard, ISO/IEC 9899:1999 Section 6.7: "An empty declaration." [STD.emptdecl]). Tool used is `/usr/bin/aarch64-linux-gnu-gcc-12' >>>> >>>> I'm having trouble spotting anything suspicious there. >>> >>> The macro expands to definitions of inline functions >>> and after the macro invocation there is a ";". >>> >>> The preprocessed code is then: >>> >>> static inline void foo() { ... } >>> ; >>> >>> where the final ";" is an empty declaration not allowed by >>> the C99 language standard. >> >> Oh, I see. >> >>> Removing the ";" after the macro invocation is a possible solution, >>> but other possibilities exist if this is strongly unwanted. >> >> We have other macros to instantiate functions, and there no stray >> semicolons are used. I think this wants doing the same way here, but it >> being Arm code the ultimate say is with the Arm maintainers. > Apart from vreg.h the same applies to TLB_HELPER of arm32/arm64. > I think also TYPE_SAFE would want to be fixed. Indeed. For this last one I wonder though whether it wouldn't be better to continue to permit (really: require) the semicolon at the use sites, by putting the typedef-s last and omitting the semicolon in the macro definitions. Jan From xen-devel-bounces@lists.xenproject.org Fri Jun 09 09:54:40 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 09 Jun 2023 09:54:40 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545793.852364 (Exim 4.92) (envelope-from ) id 1q7Yp7-0003PI-1V; Fri, 09 Jun 2023 09:54:25 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545793.852364; Fri, 09 Jun 2023 09:54:25 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7Yp6-0003PB-Uq; Fri, 09 Jun 2023 09:54:24 +0000 Received: by outflank-mailman (input) for mailman id 545793; Fri, 09 Jun 2023 09:54:24 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7Yp5-0003P5-U4 for xen-devel@lists.xenproject.org; Fri, 09 Jun 2023 09:54:24 +0000 Received: from esa4.hc3370-68.iphmx.com (esa4.hc3370-68.iphmx.com [216.71.155.144]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 99428f5c-06ab-11ee-8611-37d641c3527e; Fri, 09 Jun 2023 11:54:20 +0200 (CEST) Received: from mail-dm6nam10lp2102.outbound.protection.outlook.com (HELO NAM10-DM6-obe.outbound.protection.outlook.com) ([104.47.58.102]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 09 Jun 2023 05:54:16 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by SN4PR03MB6782.namprd03.prod.outlook.com (2603:10b6:806:215::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.32; Fri, 9 Jun 2023 09:54:12 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606%4]) with mapi id 15.20.6455.030; Fri, 9 Jun 2023 09:54:12 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 99428f5c-06ab-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686304460; h=message-id:date:from:subject:to:cc:references: in-reply-to:content-transfer-encoding:mime-version; bh=C+L6op5DniXeSCfEV6FchGf1Lj7dsQg4xJd1GuHKi5g=; b=G9bEQLTwpw4S5/HEM/sPClFWy5YZjBgxll0dcd6QvLVMCFG9EHdRxKMl 5pwSMDStVjeUTV21bSY87gEtyhhnbgFhtQgOn6bfpz5JQRf6S9J7DCUb5 OkQZ2nmX42G7/wisblu8oBct16K+09nWWdF1kQfiqqpkeYpoH3WI9HDgK g=; X-IronPort-RemoteIP: 104.47.58.102 X-IronPort-MID: 114707086 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:vEoJaKwVdVwxnMcn1396t+eaxyrEfRIJ4+MujC+fZmUNrF6WrkUBy WIeW26APPeKMGbzL9p1aYqw8xtT65WBn9I3Hgc4riAxQypGp/SeCIXCJC8cHc8wwu7rFxs7s ppEOrEsCOhuExcwcz/0auCJQUFUjP3OHfykTrafYEidfCc8IA85kxVvhuUltYBhhNm9Emult Mj75sbSIzdJ4RYtWo4vw/zF8EsHUMja4mtC5QRgPaAT5zcyqlFOZH4hDfDpR5fHatE88t6SH 47r0Ly/92XFyBYhYvvNfmHTKxBirhb6ZGBiu1IOM0SQqkEqSh8ai87XAME0e0ZP4whlqvgqo Dl7WT5cfi9yVkHEsLx1vxC1iEiSN4UekFPMCSDXXcB+UyQq2pYjqhljJBheAGEWxgp4KWdv9 uwhLBQxVxuKl8G38ZDgT7dSrMt2eaEHPKtH0p1h5RfwKK9+BLzmHeDN79Ie2yosjMdTG/qYf 9AedTdkcBXHZVtIJ0sTD5U92uyvgxETcRUB8A7T+fVxvjiVlVQruFTuGIO9ltiibMNZhEuH4 EnB+Hz0GEoyP92D0zuVtHmrg4cjmAuiAd5NTOLgpqACbFu7n0wVCzlVU1WAmN6FmmyZZcNSA Gk49X97xUQ13AnxJjXnZDW6vXqFsxg0S9dWVeog52mlyKDZ/gKYDWgsVSNaZZots8pebSAy2 1aThNTvLSZmqKGSU3+b+baSoD6oOC4aa2QFYEcsVhAZ6tPupIUyiBPnTdt5FqOxyNrvFlnY3 DSivCU4wbIJgqYjzKWy4lbOhTu3upHSTwkd/AzPQmW/4wV2ZYioapap71ed5vFFRK6JQ1/Es HUalsy26OEVEYrLhCGLWP8KHryi+7CCKjK0qUVvFoYn3z2r8mW/dJsW4TYWGatyGsMNeDusb EqNvwpUvcdXJCHzNfUxZJ+tAcM3y6SmDc7iSv3fcttJZN52aROD+yZtI0WX2ggBjXQRrE32A r/DGe7EMJrQIfgPIOaeLwvF7YIW+w== IronPort-HdrOrdr: A9a23:nMoL0KiOR3Nqdr/vf/LVI6wGYnBQX8d23DAbv31ZSRFFG/FwyP rCoB1L73XJYWgqM03I+eruBEBPewKkyXcH2/h3AV7EZniahILIFvAZ0WKG+VHd8kLFh41gPM tbAs1D4ZjLfCNHZKXBkXeF+rQboOVvmZrA7Ym+854ud3ATV0gJ1XYHNu/xKDwTeOApP+teKH PR3Lskm9L2Ek5nEvhTS0N1F9Qq4Lbw5eDbSC9DIyRixBiFjDuu5rK/Ox+E3i0GWzcK7aY+/X PDmwnZ4Lzml/2g0BfT20La8pwTwbLau5d+Lf3JrvJQBiTniw6uaogkc7qevAotqOXqxEc2nM LKqxIAOd02z3/KZGm6rTbkxgGl+jcz7H3Jz0OenBLY0IHEbQN/L/AEqZNScxPf5UZllNZg0J hT12bck5ZMFxvPkAn0+tCNDnhR5wCJiEtntdRWo21UUIMYZrMUhYsD/HlNGJNFOC7h8ogoHM RnEcmZzvdLdlGxaWzfowBUsZeRd0V2Oi3DblkJu8ST3TQTtHdlz3EAzMhapXsE/IJVcegy28 30doBT0J1eRM4faqxwQM0bR9GsN2DLSRXQdEqPPFXODsg8SjLwgq+yxI9wyPCheZQOwpd3so /GSklkuWk7fF+rIdGS3adM7gvGTAyGLHXQI/llltpEU4DHNf/W2XXpciFrryLgmYRQPiTjYY fxBHoMaMWTalcHGu5yrnnDstdpWD8jufYuy6UGsmK107P2w7LRx5zmmdboVczQ+GUfKyrCK0 pGegTPD+N9yW3uckPEoXHqKgbQkwrEjN1NLJQ= X-Talos-CUID: =?us-ascii?q?9a23=3AYQTPt2pVp8CVHdJ+5gCnf+DmUcYEcW3kyFPsGkS?= =?us-ascii?q?xGUVoeZ/OTAGu0qwxxg=3D=3D?= X-Talos-MUID: 9a23:PWZhRAjT+Uo3DVFHm4mHx8Mpbedu4IDtDk42qLI6q+ujCz19EBKxg2Hi X-IronPort-AV: E=Sophos;i="6.00,228,1681185600"; d="scan'208";a="114707086" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=UfLLk2KDjlG6ISaY3pZBF6DRu08EvO0EveXthFX1Llf7fDjVgTgvd030b5kKYigs9QJ3Zkg8/6y6kxbeQe8dEODfArSRaChHuikMtpFs/bS/4xNPj29eMgx8RyW3m7bI5eI7jq0X1rfQpTT9hL19urj1V96seNwS7a3C2iZWRvUULSPYlCvSuAdr+a9a9Waeu2P7+9BlNXU+kYSzCxitfeQsqXrEI0i7R0e0ps32Fiwq0/ZsK7NLbuNqNOUGkGQUSmuAJs3kzr2xGz38U+sBY78BOshIrBfCRHp6IZ1PFZxfHEt26YvVHP+rL0MWc+vrt0MvdsAuMShs7glbaQP4Rg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=C+L6op5DniXeSCfEV6FchGf1Lj7dsQg4xJd1GuHKi5g=; b=nacEl5bxVVTx8P+MQHfocfmjWj4HD5V/QIw6ymOj0BTg/ndjQN6cyaQDEISuqxkCPpJQiY9BlVr1wCVy2TFQpyr+52+98BWsFrBvZalyn/4q7nXsnJRPXP0HYBmhrGIE60J+ikMuIWUBW+6/bYJXTvp0/hjC+9L9BSwzhpmHZowaYzQPGhkPJduZ/YDfJ5WKfE2V/63JNYO2F8aJhhkOT78EHYoDYgZx3RP1QSQ6wgZbfGLaeaRQc7dCoh9dyHKARcKCTz03xBP61GgX03uO74UBNT0f1gkp8A5WMRzqcc7DhlxargZMJnjj/9UvIRUYXh2selYMqBSQkvkMgA5mqw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=C+L6op5DniXeSCfEV6FchGf1Lj7dsQg4xJd1GuHKi5g=; b=ZYsWHbWj69U+GcN3b2acPGqXnluMi5Kj7PJfXqet06V/LYxMzLV4GxJl0asvsgoKVWDY8oat++tDPJS54m5H8ZQjAXJxPTzd96PH2PLVhLLkAJLjMzTj5d2Eq6u74IGUUC9fJe5QrUoiNh9088SnPxd05ZJ2EHOAfBI7cqEUmj8= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: Date: Fri, 9 Jun 2023 10:54:05 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 From: Andrew Cooper Subject: Re: [PATCH 2/3] xen/ppc: Implement early serial printk on PaPR/pseries Content-Language: en-GB To: Julien Grall , Jan Beulich Cc: tpearson@raptorengineering.com, George Dunlap , Stefano Stabellini , Wei Liu , Shawn Anastasio , xen-devel@lists.xenproject.org, Shawn Anastasio References: <0c0a19de-dde3-8b98-4354-6d3d2019179b@suse.com> <0b24d36b-adbc-9e7c-df6e-8754c269855d@citrix.com> <1c35f696-5a65-06da-8af5-685b8ad2e849@xen.org> In-Reply-To: <1c35f696-5a65-06da-8af5-685b8ad2e849@xen.org> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO2P265CA0401.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:f::29) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|SN4PR03MB6782:EE_ X-MS-Office365-Filtering-Correlation-Id: 315c86ed-8038-4288-65c4-08db68cf7a1c X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: ihonxSP5XC7yOv88kEoXN3F2Aj0J1T99HY9WCxvhnCi2HC/dClCDiXGhJjYifldoRrg2cVBKPS5Pg/zhZgMUk8yb8jDBT5u7H1t/NVwRH/1/1+Fi+Mcy+aE7JvUR4VUbTg/OGx8LjvB2+jZ1UKi6K9GsfEr8tmYhCPeM4MBpNUT7z293stPSL0rrUtOXjh7igtdoT7pXch/QkcB7C88S7X0qXG0Rbu6cjnLCP5kYH9b5kWR6TqdbJBmbrb32Gdg/eguj3uU++MCtWXo24Q9mJ4dBPHBeKC8vuvEihyxEbTaaWM1nsoAFQk0+gAKiVuMEU0OHfb3EihETYo5byZZArXWvnsYDo7RKg1/wr8nuOeT0/L8XvT4E1foMQtuTB5yEK7YCc5Zi5DAs38eHaPNkYoDi7a1AbrVOYBfu/axihEyVFdkUwM/PvNokp/GJxYdq+JJxl9tYxnaVT/bjQDJL3PszLEmi3hEr9fiyAIJuookrP2ZaQlED9f0Fi8tMZrrDtdEAth5xhYPRYdDiX/pWFuZuokCIjQXV7nZlpwCC82nzlV4gTr5DuUW2eC/IMdiT29dF9TNRab7064NN3ODWrG21uy2M6CUlDroeyaUU8SzhC4b6fFau3E1nui/5IGa4i8sFIgR0xby26zOaiyuxeg== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(366004)(39860400002)(376002)(396003)(346002)(136003)(451199021)(2906002)(478600001)(38100700002)(966005)(31696002)(36756003)(83380400001)(6666004)(6486002)(2616005)(53546011)(6512007)(86362001)(82960400001)(26005)(186003)(6506007)(5660300002)(316002)(31686004)(8936002)(8676002)(66946007)(66476007)(66556008)(4326008)(110136005)(54906003)(41300700001)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?cVRaMlRtOGFkOVY0NGdTbEU0RjNPbStCWnc3YlhGSWZHcmR1cmhXa0N2VU9H?= =?utf-8?B?TGtsUlU1WThNSjdaL29jQTV5SnIxSkRDcG05WnFRS0Q1Nk1obnZEa1FxazJG?= =?utf-8?B?dnV2bTNMb0N4RGVzWjBvZDRuVzZDNTdCbVNvbmZ0Skx5ZFRuU0JXS3RYNHFq?= =?utf-8?B?Wmo4NlluSlpMNndZYkNwUC9vcERSbTc5TFlLNkFVeHpUMFlteWtlMGI4aUxO?= =?utf-8?B?SWhoeHo5VW9SSG5IbjY5R3Y5aDZVVHRESXNRRWEybzdjZ3VMeG0yejc3a3NH?= =?utf-8?B?VC9YWGFkZ0tFNms3dnNkS1JxaE1ld0ZibzlIT3JIeFBJUnI4V2kxVnM3cm40?= =?utf-8?B?aXV5OVYwSXZRanF3VkR2SVdHUlBFZjh3K1ZwWHNxZ1dFaXYwTlE5R1BSNUdi?= =?utf-8?B?WDRtL294UkQzd1h1N2VudVk4ZklkT3VoUXdoWE4rOWl6ZXFMRU43L1h5NHEv?= =?utf-8?B?OUl3V3dyYW1rQmluUEZKNitLZE9KMVpIMjRZQzB3YUNObUxJVzEzNXd6RlE4?= =?utf-8?B?d3RBalZyVlVSVXg1TE9WWGhFakFrdHE0RUNTTjU2RCtYY1NEZ1NpTmxjakkw?= =?utf-8?B?akpXb05HTjVXQnh3YUFUeTM0ejV3QUlkVU5nTkVJQk5EdnBuOUo3bklzK2Qz?= =?utf-8?B?R2N0cVZFdXVhZXovamFWQ1lCakUzZk9lRmRhdFhEdFpTems5K2tIVjRoa3pU?= =?utf-8?B?cEZBUmUzcFJmVThJZjhYV2J6UEpzSlRwSGZJYzJDREJvRDFNWEhYaFZzbWtk?= =?utf-8?B?M2ZTUXgwL3dZNHVqdXV0UXpDREdhZnlsOHIvTllQOGJPRmMwNW9nb3dYbmFs?= =?utf-8?B?b2YycHlpQml0OUk5c0tuVFpIN0cxeGlZTXJQY0VpcW9Xd0s1aWdqTUIzcDFl?= =?utf-8?B?U1VIMGJKaGZHWXlobFdrZGp6TmxuRER5VDFuQW1kSEVZZjNoTzU0MEg5cCs1?= =?utf-8?B?TmV3MldDbnpibjRDUG1pbmpSaG9Gei9DTURDYjIvbUtYcnEzOW5zUVBKMzI1?= =?utf-8?B?TmtLNXB2OWljQ0gyM0JnV1dRZEF0bUx0Qk4wM1RzUXdFUThQSVFoUmpKM2pY?= =?utf-8?B?VFJhTVN1ZENpck5ON2pENzY2NnpSLzJRMDJVa091VmsraWtqTXVXdmFZZ0VW?= =?utf-8?B?am9GeVdoeVlXeWJTU1ZwK1AzbWdSRW1OcGtvQ3Boci9qYWlyWEZQWlZiLzZL?= =?utf-8?B?dG9kYkw5Z1VKcVRaZnJScFdLN3NHWjYzSUVQN0JPRmdFR2pyanc3dEtFdXRv?= =?utf-8?B?Siszd2lKZWkvRjFBUzRSUVpqVVZBaldKdHBJdFNHdzIxaWh0QWQ2SW5VS0ZQ?= =?utf-8?B?eGZRdlJNc041cE5IcVNlUm41cGFrVDFSVG9jcnhmZHJUQVJGcVZrN2FlMTFj?= =?utf-8?B?eXNUdHRMbFFSRTBRMU9pZWpCbTBpd1ZkWlJ4U2lXb3FKOHFKbkY2Y3NlNENa?= =?utf-8?B?Tk12KzJ3aE81ajdGSXg1YjAvNTF6enpKN1YwTmJxODFzVmtMSDRkODVaNlJa?= =?utf-8?B?WW50TnFRZWRrRXd5VXczNWIyVW5PckluVDROV0JiUXp1RWk2WG4zUTFrVko4?= =?utf-8?B?ODF5YjVDNmJQemNJV0VsdlFHdmVOTUczVFNOMjFNMkJjUE1NRk56MUtIdzVu?= =?utf-8?B?V0FZalJob0JWL2I0V3hxK2treG8zQVk4czBVaWpudnJmK0ZhbDB5OEZZSDAz?= =?utf-8?B?enlyMExUOXhJNXpOSXVqK0lKa3B6WXlyK0ZkallFWHQralVMaHNmNE9yVE1y?= =?utf-8?B?R1crMDFLSVdoVmlzcVdLY3Nhc3BzRlI3Q1FQQVpyV0hkNUxqcnRBc2MyU1N1?= =?utf-8?B?M2J1SzV6Z0ZaVjk3Tm44NjQ4aVRMR1FaRW82SVV4L1NHTUtTeXFUU2o2cGhL?= =?utf-8?B?eHBEeE90dUJqdmFOdlVhOW9kejAvZi84VmdUM0cxdmkvRE5CeDh5cXI5Y0Ro?= =?utf-8?B?eStRcDVpclpubFFuMTN3SXJXR3hWZWF1VXJHWW9DRDA2WWs3aXRHS3FRbVAy?= =?utf-8?B?QVdReXZCNmpzcWNrWlQ1eGp3MiswMlNEbGZWODA1bEtqTko2cnhHaEp5OTAw?= =?utf-8?B?azNkTGxkK1BIaEtpTnp0Z1lrQjlRMnpqM3N1RUlRWS9tOU53UzBxMzdpc1NG?= =?utf-8?B?ZTJPUHNqNVZwYjY2ZWRVbkNsRlUwUWdBZXoraGJ0ODdaSHlwMUNoT0J2dHlV?= =?utf-8?B?Rnc9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: =?utf-8?B?UHFDTHRUTGptdXlMWFZWZ2kvVURGZGhYQWIzSGZrQndoK2RJNHpmWC9SeElm?= =?utf-8?B?dXZ2VmVYeVFQZlRMQ0k5NWw3WHVUcWdQVm5kQ0NFSzl0UGhRQXB2T2JyQzdV?= =?utf-8?B?WUpFajJ1dUJ3U0tETzRlVGFoMkJzZjgyM0FQNmh2WlBEVU55YXROMXBmVG0z?= =?utf-8?B?WXRmT1V1b1plODNUSjNUZXBpT0xYRk15VEhSckFhbnFiRlhKakduYnhVMURR?= =?utf-8?B?dnJQU1NpeHdOZFZDNVpRcldGSHZGdzRWMU4vMSt6cXlaODhlRmJHejF0MTgx?= =?utf-8?B?NFJYT1JHakVZWTl0OEdlMVZNN3lDSk9NcURhM0tzbmV3Q3RGTVZJaUlEVXNC?= =?utf-8?B?YVNRcUF6RnhWTmo2Zmppb0IyWEI3M2dnVkQwTXBRcytHSE53VUo0Um5mbTMv?= =?utf-8?B?eHRJUVREa05Bb09mbFdUM01NVWo4M3lOZEc4RlNyNVd3QmxJNE85OGpLVEk4?= =?utf-8?B?aGVXVGI2cWdBTWl4NFZPSFJ5YlppY1ROcS9ETmJsY1l5SlhUcUNyUk9FdHJE?= =?utf-8?B?cDZySTZ6YkJtcXdWb1VRakErZjY0OUNRTmczdkNVZlhLbDRPSUdWL1FZb1Bz?= =?utf-8?B?SEY4eDlxL2NWd3pab3Q3TFVRcVRDZlBUeVBHZThlbjNsUGZCZ25uZjJOVFFT?= =?utf-8?B?c0E3T2hoZ1o4VDR5S2ZLRFdtMTBGblJEV0J6VE1rdkJ3cno2UmNvL3RBNk5h?= =?utf-8?B?VmRQN0FVZTZMbjIrd1dFcHFkb2NXZ0d6RUwwb2RHVFBFeVdpNVduVnh6cTdW?= =?utf-8?B?ZXZ0bE5kTHcwV0pGS2ZHT0JNUjFtMGFKTWozQUxpZE1ldDNkS25DaW1FZ1o4?= =?utf-8?B?NWFoNVFOK0NkUXMrSC84MEFsYjNUaXptR2xURzVXV0JEZmdDY08xVkVKNk8v?= =?utf-8?B?QUhUV3I3YWhxQnlESldEdVBnOHlQaVU2YkJBU05JQXpvNTFVbHRkZW1XeDNP?= =?utf-8?B?NVpZNzJWT09tTG1lenVnaUgvZGNNenFmamo4ak9TSVBqOHBmZFAvbm4rTnkz?= =?utf-8?B?bHZSVUxoUUx5SElRbTMxMlpXQUcvL3dIYVNnOU51M2R0SEdKZURyUk1yekpX?= =?utf-8?B?MWRzSXFERURFbmtGTHRzSzNzeGJCTHZiRkwwdks4dEkxUVFONElhYmZVdENN?= =?utf-8?B?cWNDMnRoZ2MvMHJCS2VBWnVhWnkyTnN3aDM2T1V5WWYyRU9qdFJvR21TVWhB?= =?utf-8?B?NU9NVGNncnA0dTJ3WkJWakJsNnhBTkhocUdHSjVjSHNOd0ZaejJCODZaWlU0?= =?utf-8?Q?i8oCd/lJeVhEz6k?= X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 315c86ed-8038-4288-65c4-08db68cf7a1c X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Jun 2023 09:54:12.1670 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: lr/EVdEB3SB8bFlnkpBk1ZnE1KiZCMx05qxUVasEyE5NAG6xKw7zSiNIZadXjMewQ56vPqk8PONE51cY+N63gzqoSqDXr1MS13hxsnWjsXg= X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN4PR03MB6782 On 09/06/2023 10:46 am, Julien Grall wrote: > On 09/06/2023 10:43, Andrew Cooper wrote: >> On 09/06/2023 10:38 am, Jan Beulich wrote: >>> On 09.06.2023 11:29, Andrew Cooper wrote: >>>> On 09/06/2023 10:22 am, Jan Beulich wrote: >>>>>> --- /dev/null >>>>>> +++ b/xen/arch/ppc/boot_of.c >>>>>> @@ -0,0 +1,122 @@ >>>>>> +/* SPDX-License-Identifier: GPL-2.0-or-later */ >>>>> By default we mean to use ... >>>>> >>>>>> --- /dev/null >>>>>> +++ b/xen/arch/ppc/early_printk.c >>>>>> @@ -0,0 +1,36 @@ >>>>>> +/* SPDX-License-Identifier: GPL-2.0 */ >>>>> ... the more modern form of this (GPL-2.0-only). Anything >>>>> deviating from >>>>> that may want justifying in the description. >>>> GPL-2.0-or-later is fine. >>> Hmm, I was merely following >>> https://lists.xen.org/archives/html/xen-devel/2023-06/msg00415.html. >>> The text at the top of ./COPYING looks to suggest -only, and I'm >>> unaware of any other place where our default is actually written down. >> >> The license is chosen by the submitter/copyright holder, based on their >> preferences/wishes. >> >> It's fine for Xen to say "if you've got no vested interest, we recommend >> GPL-2.0-only", but that is strictly a recommendation and no more. >> >> If the submitter chooses GPL-2.0-or-later, that is their prerogative. >> We have plenty of GPL-2.0-or-later code in Xen. > > From my past experience, the submitters tend to just copy the license > from an existing file in Xen rather than explicitly choosing it. So I > think it is fair to ask the question because our original and default > license is GPLv2 nor GPLv2+. Did you read the bit in the cover letter about part of this code being derived from the out-of-tree port years ago? You're blindly assuming that there is even a choice of license available to be used. The submitter chooses the license to use.  You can request that they justify it, but you cannot demand that they change it. ~Andrew From xen-devel-bounces@lists.xenproject.org Fri Jun 09 10:00:18 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 09 Jun 2023 10:00:18 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545798.852375 (Exim 4.92) (envelope-from ) id 1q7Yuj-0004xr-M6; Fri, 09 Jun 2023 10:00:13 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545798.852375; Fri, 09 Jun 2023 10:00:13 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7Yuj-0004xk-Io; Fri, 09 Jun 2023 10:00:13 +0000 Received: by outflank-mailman (input) for mailman id 545798; Fri, 09 Jun 2023 10:00:11 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7Yuh-0004xe-Sg for xen-devel@lists.xenproject.org; Fri, 09 Jun 2023 10:00:11 +0000 Received: from mail-wm1-x329.google.com (mail-wm1-x329.google.com [2a00:1450:4864:20::329]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 6abf8080-06ac-11ee-8611-37d641c3527e; Fri, 09 Jun 2023 12:00:09 +0200 (CEST) Received: by mail-wm1-x329.google.com with SMTP id 5b1f17b1804b1-3f6da07feb2so15347555e9.0 for ; Fri, 09 Jun 2023 03:00:09 -0700 (PDT) Received: from smtpclient.apple (default-46-102-197-194.interdsl.co.uk. [46.102.197.194]) by smtp.gmail.com with ESMTPSA id z10-20020a05600c220a00b003f735d6fa74sm2185509wml.9.2023.06.09.03.00.08 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Fri, 09 Jun 2023 03:00:08 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 6abf8080-06ac-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cloud.com; s=cloud; t=1686304809; x=1688896809; h=to:references:message-id:content-transfer-encoding:cc:date :in-reply-to:from:subject:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=WLgQ0rVnQakpGZ8A3oVfU/k9TYTJbZaybJm7RhzWVrk=; b=CqxeXY5dxewp6GI2klkHgjlrKQ42m1Z2rYkkObhm+suuUKi38olmKW9OnTbccQz1Xw AHTZcHShW8hMNAPkhXw2avCwZlHexN76dOGwaLczKJRjBtgWtUuYh3+MvUgU7yR5ilOU 71QySvZs5ZqRApU3uFyh0Wq610zF5N1K8SbTs= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686304809; x=1688896809; h=to:references:message-id:content-transfer-encoding:cc:date :in-reply-to:from:subject:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=WLgQ0rVnQakpGZ8A3oVfU/k9TYTJbZaybJm7RhzWVrk=; b=UHz4cdT8vFmYTdhGiWlp5qdiuN0HwYwC3IVh8lEQjI7Pu2y9QM8usNaor60u3AfcwU 50u1vJWSUS68tvZXF0B8C9P83vTW0z1nCKws5LjpT6gP0sNij60v/m95g8MgiQlDGuNi iSkQ7liZL+NOBzTx7IaKkqAjgDF6HobRykJjbzSzGWCR799FgD2yxlQeptoyiJJfTkA/ xXymMkpqkfbTQW3PHG6hkHTjvRjPCfO1DMrQ5je9WiCb3oNa6hSJEg2wpTmJNVWiG9t5 LhOU+rEyfNfBi1kfgbzzHS3KMY2Fi5ux4C/lBQIjzXhnCt74VX7FNiBRUi6fdgtz8Pik 50DQ== X-Gm-Message-State: AC+VfDw37ob8u9VIj3R1M6VCNExObp/YDRq9ndUysQ4K1xzaIqUza743 lgGwBCZxkeVRBX0TQyVUun6NAA== X-Google-Smtp-Source: ACHHUZ4jBqshVAdUCBKmalHygp/lyfhdI4fXgcyAXrh3Fcx+go5paSfqtidOqJLD7+BSVqQERlnCTA== X-Received: by 2002:a1c:7c1a:0:b0:3f7:e7a5:5bc5 with SMTP id x26-20020a1c7c1a000000b003f7e7a55bc5mr698883wmc.24.1686304809153; Fri, 09 Jun 2023 03:00:09 -0700 (PDT) Content-Type: text/plain; charset=us-ascii Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3696.120.41.1.3\)) Subject: Re: [PATCH] tools/ocaml/xc: Fix xc_physinfo() bindings From: Christian Lindig In-Reply-To: Date: Fri, 9 Jun 2023 11:00:08 +0100 Cc: Xen-devel , =?utf-8?B?RWR3aW4gVMO2csO2aw==?= , Rob Hoes , Luca Fancellu Content-Transfer-Encoding: quoted-printable Message-Id: References: <20230608193312.2520222-1-andrew.cooper3@citrix.com> To: Andrew Cooper X-Mailer: Apple Mail (2.3696.120.41.1.3) > On 9 Jun 2023, at 10:37, Andrew Cooper = wrote: >=20 > On 09/06/2023 9:17 am, Christian Lindig wrote: >>> On 8 Jun 2023, at 20:33, Andrew Cooper = wrote: >>>=20 >>> +type arm_physinfo_caps =3D >>> + { >>> + sve_vl: int; >>> + } >>> + >>=20 >> Does the OCaml side need to know about the structure of this value or = is it enough to pass it around as an abstract value because all logic is = on the C side? I assume the OCaml side needs at least a way to persist = the value and hence needs to know some representation. >=20 > Yes, Ocaml does need to know about the structure. >=20 > [..] >=20 > The vector length is a multiple of 128. This value is more amenable = to > being understood in a log file by a human. Acked-by: Christian Lindig From xen-devel-bounces@lists.xenproject.org Fri Jun 09 10:06:59 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 09 Jun 2023 10:06:59 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545802.852385 (Exim 4.92) (envelope-from ) id 1q7Z1B-0005Zi-CS; Fri, 09 Jun 2023 10:06:53 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545802.852385; Fri, 09 Jun 2023 10:06:53 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7Z1B-0005Zb-8o; Fri, 09 Jun 2023 10:06:53 +0000 Received: by outflank-mailman (input) for mailman id 545802; Fri, 09 Jun 2023 10:06:52 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7Z1A-0005ZV-IB for xen-devel@lists.xenproject.org; Fri, 09 Jun 2023 10:06:52 +0000 Received: from esa4.hc3370-68.iphmx.com (esa4.hc3370-68.iphmx.com [216.71.155.144]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 594dfee1-06ad-11ee-b232-6b7b168915f2; Fri, 09 Jun 2023 12:06:50 +0200 (CEST) Received: from mail-co1nam11lp2176.outbound.protection.outlook.com (HELO NAM11-CO1-obe.outbound.protection.outlook.com) ([104.47.56.176]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 09 Jun 2023 06:06:34 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by SA0PR03MB5626.namprd03.prod.outlook.com (2603:10b6:806:ba::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Fri, 9 Jun 2023 10:06:31 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606%4]) with mapi id 15.20.6455.030; Fri, 9 Jun 2023 10:06:31 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 594dfee1-06ad-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686305210; h=message-id:date:from:subject:to:cc:references: in-reply-to:content-transfer-encoding:mime-version; bh=dLcG8+ZWyKDayaENU0K8aXfwa/sJQK+nCUqVyTvyMx8=; b=hY7IQSqajP02ICRb2UWh3jO9EhlhdH7zu5ovXSYTzk6EPNQaTJyT4JdY OnjsdkhYj2YJMPmi0vo0a4iP1J5aEunkdk5lPwLSTdviRDfj8Ief37j3Y lhc5k5KM2p6JsDAHTYFEy10p4xhQ8FE+wEUtfSIsjDhCEEk2XLzAlLRkJ Y=; X-IronPort-RemoteIP: 104.47.56.176 X-IronPort-MID: 114708386 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:pLX6tqn6hfZUOxV10iSNwT3o5gy1J0RdPkR7XQ2eYbSJt1+Wr1Gzt xIXWmuCPv2JNmPxf94lb4u390xXv5XWz9NiTws/qHszFyMWpZLJC+rCIxarNUt+DCFhoGFPt JxCN4aafKjYaleG+39B55C49SEUOZmgH+a6U6icfHgqH2eIcQ954Tp7gek1n4V0ttawBgKJq LvartbWfVSowFaYCEpNg064gE0p5KyaVA8w5ARkPqgV5A+GzBH5MbpETU2PByqgKmVrNrbSq 9brlNmR4m7f9hExPdKp+p6TnpoiG+O60aCm0xK6aoD66vRwjnVaPpUTbZLwXXx/mTSR9+2d/ f0W3XCGpaXFCYWX8AgVe0Ew/yiTpsSq8pefSZS0mZT7I0Er7xIAahihZa07FdRwxwp5PY1B3 dETLQEJUEG5u6Xs0p7qR7JUicEKE8a+aevzulk4pd3YJdAPZMmaBo7tvJpf1jp2gd1SF/HDY cZfcSBocBnLfxxIPBEQFY46m+CrwHL4dlW0qnrM/fZxvzeVkVI3ieezWDbWUoXiqcF9t0CUv G/ZuU/+BQkXLoe3wjuZ6HO8wOTImEsXXapLTeHnrq4x0AP7Kmo7VA1Gexyek/2DiEu4d+MHD kgVpQ8Wov1nnKCsZpynN/Gim1agoxUVHfRZFeY37AWQ4qPO5kCSAW1sZi5MbpkqudE7QRQu1 0SVhJX5CDp3qrqXRHmBsLCOoluaOycPKnQZTTQZVgZD6N7myLzflTrKR9dnVaWy19v8HGipx yjQ9XdgwbIOkcQMyqO3u0jdhC6hrYTISQhz4RjLWmWi7UVyY4vNi5GU1GU3JM1odO6xJmRtd lBd8yRCxIji1a2wqRE= IronPort-HdrOrdr: A9a23:1WMM46ilrEReI/B7pqCQQkmR+3BQXh4ji2hC6mlwRA09TyX5ra 2TdZUgpHrJYVMqMk3I9uruBEDtex3hHP1OkOss1NWZPDUO0VHARO1fBOPZqAEIcBeOldK1u5 0AT0B/YueAd2STj6zBkXSF+wBL+qj6zEiq792usEuEVWtRGsVdB58SMHfiLqVxLjM2YqYRJd 6nyedsgSGvQngTZtTTPAh/YwCSz+e78q4PeHQ9dmca1DU= X-Talos-CUID: =?us-ascii?q?9a23=3AHhvZZGqoVCmkKf9n4SUyNWzmUe0ud0zZ8ibqHwj?= =?us-ascii?q?iG0o4ReatRlq5x6wxxg=3D=3D?= X-Talos-MUID: =?us-ascii?q?9a23=3AZrwtwA9N9sA9oYq35mFO7CuQf5t4s4rpLXIJq5c?= =?us-ascii?q?DveW1bQl0Omi4tDviFw=3D=3D?= X-IronPort-AV: E=Sophos;i="6.00,228,1681185600"; d="scan'208";a="114708386" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Jwlq9jY4Urt+GmMpvHddZ777JOv5G6biVmURn1p/piEcASMd125xaXzsNO4uv4bSjqnBVwB+krvh1GPcjE3UNVJXlYvJ3x0ZIu+Ar4Hae+hjc/EuSQrOzrxFD6Y9I3YBm/Kd7g2CwSs8nuHAoU3zKHOt1vVbc5tJgx6e/gvHjuyLWQZEOdOft5q1HiL7pSiEI+ag5tI3m+hjF7YAK5nJOC4PUGx1aO71IWltcNh3Zcld/DfYsyKVcq5Rk2KIwtefqGlsCY2vzhhoHwfLYLDFbJuT6VGb6LaK5ttDfzGkA+Bu7K8u8YcAWAimmiuVPHDlnwgiP42i9fUyUDTcqdwsFw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=l3oIEoC83UskXLNO9RkeGsekOzRadA5EOva+PTLNrb4=; b=cMZd4d5fxQL1mXPPIi9e6lCoHxEdvtogbwiTrtqUYkP/PqeB7PE8geI9Apl0QkTleO+TTvOo9a4HH3VzckMWbxvAyGFtY3loyrxI2hLKL93SKNLJxE/cywwL9IO4x9EmAR4jWDJJ+xy72NqCiO6PecJvNtFKQ+nAna4WrPjl3O0BXTRR1T0kkbk3erazRQSCTVjjMD+a+FaQ3j4ATYk3YvqaE7n7yGXBGjXxxoRPZSINYbX7AlQ14IIBDfosT9FEQll+DVj4mkIqo/WS1cNiV98EIb/rKecbQ7B7LLZ1R2QEzO6qHVzAh7ma6rbd5VPLvZf0HwEFVjM2p8AMPGYjrw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=l3oIEoC83UskXLNO9RkeGsekOzRadA5EOva+PTLNrb4=; b=w/VYvHDk0CfqD+V+bW7y/gW5oaGZHlGOc9z6pwwFlQDtLiRcoUs/d0fUFNrbtB5GrVpKwqVB8TNcTxPJl0GyEhRtOBp0ftWYn3w9bh0xwc3M6G4VLwwlN/4BqPoYyKgbgrajDC1X9LL0ly2WoqIi6tNJMNRMb1vJeZeaxgySnzY= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: <8c69d867-0c71-a6b2-39b7-30e82a71f97a@citrix.com> Date: Fri, 9 Jun 2023 11:06:25 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 From: Andrew Cooper Subject: Re: [PATCH] tools: Move MASK_INSR to common-macros.h Content-Language: en-GB To: Luca Fancellu Cc: Xen-devel , Anthony PERARD , Juergen Gross References: <20230608174014.2500954-1-andrew.cooper3@citrix.com> <9BAB3408-676E-4801-BCE1-4DB7BE081ADB@arm.com> In-Reply-To: <9BAB3408-676E-4801-BCE1-4DB7BE081ADB@arm.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO4P123CA0620.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:294::16) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|SA0PR03MB5626:EE_ X-MS-Office365-Filtering-Correlation-Id: e11efc05-1da6-4fae-b8ec-08db68d132ad X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: bI8BV87IfgCxBHO6GLMhZjwsmSXU8NFyM1QA22APDmyLoubB+06LsXIuz4NOQfYNrJ9OdZbAYcp5W7HJP7CspqpEDyWKH80KLrCftoyYT/1K+M7Oum4WzfpLySOb5FbLBBrNxes+uCq1ULMFxYrQgo9y/sFhyACy/9CwSQzde4rv+kKN6cRaKkKqESKouXJ0oFhhoLeUuJzyoctn53wYDRVMEIpNmE6C+gHFpNYN4bnGmXzWE63GOFBT9vJ8Q7RKANV2FnCuMrRAMyP+LOBGoCZ6lgTwzXLmF3QzkClqKEf0oFYgsNYD+N87T4MZ2PRUJoWnbwlfN5UmpNvi5BSIpfqpI295fSeK4Q8Op7bLTNCcMR6OUHq5mcnO5rZBTgDUTwALPfh2cUdnBMUAnXSf8HGHxIf0SnOSvL3AsDnoZ9yV5Mr8Fh3Y44dLqIyBybXXlzhOMGnoxhaNxdZfPHjKE9KF7Woy3/k109qNCVq2uDf4R1fjtt4HQDrl1IagigwfwOpaMvgKJnJ60QvrjYRrT5miiv9W1XO7R0BOoJ5+78CjuSm2wi/O+CLsYFo846YOxpXKJGRUiVM8BXDM6j+iJWVQgKKHeWAGAe/1bQ816iCfZk7WnPjGVKjiBtAvSv89iFkhAgj1aAiozCcCAHbsRw== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(346002)(366004)(136003)(396003)(39860400002)(376002)(451199021)(54906003)(86362001)(2616005)(31696002)(53546011)(26005)(6512007)(6486002)(36756003)(6666004)(478600001)(186003)(2906002)(6506007)(38100700002)(66946007)(4326008)(31686004)(6916009)(66476007)(8936002)(5660300002)(8676002)(66556008)(82960400001)(316002)(41300700001)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?cDF4N3dCcVRYYk5vV2duQjNob09rUHJTT2JqY2xUaFJ3amxpaGtTY3FkaXhI?= =?utf-8?B?enROdDJFd2VYOWN4eElNanRqWkRBWjUvSlhFdDRqeG11S21maTFseitwWlZk?= =?utf-8?B?NnFla2h5QUl0ZVpYZHB3TW9YeW9idS9ETllXSERhdlh1b2VES0d3ajJHYnpR?= =?utf-8?B?b1VmRzRONTlTSjVkZ2NsMHE4WDZhWGIxbnYrODJDVXdRdUhKN3BUQVpyRWc3?= =?utf-8?B?K0dhRWZ0dWQzN041RGlYQXNLM0hjSFovdG9FZFpOa3dTc2pFRHBPd2FtcjRi?= =?utf-8?B?eW1VRkpacDdqUGxTZEJWMWphZkZVd2dyc2xTMGo5RmdNZUVlSit5Ty9GVXVq?= =?utf-8?B?eFUyRmJmZFFYUVNOa1g5aW9pcDhkWmUzdE1JRksvTDdWOFBxamdhbnh5YXQx?= =?utf-8?B?TUg5ZDlsNHJONy9qeVA5bkNqZ2dJNXFMdVAyZ3AwSHpML2I2dTB0SExwZ2hr?= =?utf-8?B?QUQ4RnJoaUNJaU9uTm1qN3Z2WU5neU8xVHZXZjVGV1N3OEUwalo5WDdZeFBx?= =?utf-8?B?TW9qMUdocm8zT1pIOGdlYXZuYkdveTU2cFJXaHlvNjFxQTJRTUtyYll4ZzZy?= =?utf-8?B?aFpGR2llejFPRGtCM3BhdjJnY25Mc1pZenZxbWJmODM3d3VCVXp5ZUMrd1Zm?= =?utf-8?B?cVNRUWc2Zzk2MURUNGFLWnlNRmdaUXh5cmJFNlBQR09LNzQ1T2FFRlZFeFVy?= =?utf-8?B?WHJ4em1TQ2QwekhEYm1NeEJTdUNhSHc0SUFVWFVBTEYwbGFMUE11OUpIa3RD?= =?utf-8?B?VGd0QzhvR01MVlJibzNFdDZKMVdOZ3BsZHYvQ1FQd0ZUNU90QjFNVmROdFZy?= =?utf-8?B?OE9lTHJkaE1sTy9hZURKZVRXTS82aGN0QzRjMDV5cEdMWkc4WS9ZUm8yekxF?= =?utf-8?B?NHpwZitKa1AzVVA1U0JqNStqYTJFMzBLUEFNQUJidmRuOGJDTHBUY1JXL2pE?= =?utf-8?B?U0FGWHh3YVlKQVIyVlo2Z2F4Rzl2Z2xMVEJ2b0F3N0RrT0puUXVUekZ0WXg1?= =?utf-8?B?RTM4NEZQT3YvamRuemxmM0EvakRBVXovMlVoUjFCUWhGSWoxRW1VemhHN3dk?= =?utf-8?B?bmZqZHpDRG56eDcwdllrbWVaWmRWOVR2NUNuNFBJMUxTSm91UDFBeU16L2J1?= =?utf-8?B?Tk9aNFVsZHJHSno0UjBXQ3RhTmVpam0yc3JMMXQ1MEhoY1o1TnB2dERpYmJW?= =?utf-8?B?SkZvcytpQ3lFeDhMU3FXTHhDdXdPM1QxelhjYkV5aXlLdkNFRGpwbVBnL2hx?= =?utf-8?B?a0lnbkllN3NFZVZpRUlRTnE0aWlXSzAxOGtyZWIweWFDOFFuUWZvQXZ2Zkpp?= =?utf-8?B?NCtzSmROM0pYelBUSnBOeEFyV2dNVFNhQzBpMGVBUFZ5RGRsdnFZRHAzeENY?= =?utf-8?B?aWVhZTE5Z0N2aEdNeCtsUXNldDVWdGtLalpKN0hwVU1xUDZxamlJZzNPcU5M?= =?utf-8?B?TWkxTTVsdzdrNGNBcWJvWnRJZHN2QWJtcjRCa0dZNTBPSUdrRlpsUGRSZzFI?= =?utf-8?B?MWZzVTFhZVphMG5aWGpFN0ZwWVlNaVgxaE5zeFhCb0VSK09SU2FQTXpsWitL?= =?utf-8?B?cHhKcmM0QWVCZzhobmwyUm5XRTkrYW9kRWM3cDB6dVFlNnpnN0RTa3VGZlJX?= =?utf-8?B?MFNBc0lreElJTkFkWGpac1hyRytVRkk1eDVHWlZCY0dMc1Z5YjN1R2VRTzZo?= =?utf-8?B?MFhMeUtmMGt3ZmJqWnhINkx0L0FGOVZVOXU3WVZXL0h6UkNiNmNaa2Jpck5N?= =?utf-8?B?azN2SmY4eVR4NWVPQkZTSGFFMTlHWTZyQUdYZjZQQlc2bklhUFRJaldwSWk0?= =?utf-8?B?bjhoTlZEZ0RITkxHbWV1NC9FQ0U1S0NKbUtMWFNvYnYvT1Ywd2dRTXkrSXZx?= =?utf-8?B?WVVkRy8valI5aTZhbnBJbUxIUnJOK0FnVUZnV1FYOFNhZVFvd1JBWkRoOTZx?= =?utf-8?B?dzYxSC81TGYwMlQwQU9QNElzM3lLOE9Wc1FBenExdCtNM3o5YTBueDExNEJW?= =?utf-8?B?RXhBeW5sYldXWkFNN2NaMXV0VmlQaXhwa25yamgvVEU2cUVUYW1LTjhQWVJx?= =?utf-8?B?SmhvcFQ1aE1LdDFxeXRXOFNad3FlSVdVNDZ6aWhwUkFJcWwxcXU5M1RyVzdQ?= =?utf-8?B?cVRvYkx2Z1NzMi9MK09ySGpESytJSVhkVGtiRlRRZ3hsVEVraE1tcm00Z1Fi?= =?utf-8?B?N2c9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: EeKN5gL2/EOavRDWCsxunWsxxo/9GFxX7WV4FYQM8w9CL3TK/D6SdYgxyNsclIwSSmaiWBiBnitlxgBdoW+nxPutUN8gkO7Tu95fuzA5fqf7dflBi8GvNoYm3AjPz8OdrRwfByeskkNJrD5/I9AKHpKUuobWQkE+pYgXUer2Oki5J7vr2ilXv3tinAWz4gI+Jv2AFpkX4WNZRLD+vh8299BK7dYxHsGz7Q8bpzs3zPcsnyxrWz+ZTQfOxKqR2DptX8pWFLmTRsc3QfgCbpwmjgH0W6PU+b27+2jUo9tNEYbnYCW10wCDqbqVM56JasLcYgQ0noSO8geqy32vGnZTFN37Iu4WV7QvV1WN4rGaBfykCI6LxHeZzY7wG7sB0HKaxgZrmy5axJqwv/565lEVtNauYO4wmemnOAVA+uLaGWpFAC4M0eotml5FerVDjOpzvG5O8aq+IL0i0Wy4mzvDDF8CFKpgYVnz6GkdrxcTKFZQGgZDL1BLQKuuwvB9zXeZ/i8c3/wD/qeftvEPKk3Sj5Ha0NXNqwW2F/TFmCkVDQpo36Ce04BOx7pKORzYF0imdwOZaq9jSl7GhHAuRb+Qm5I8XQMJzXNoBJHdpNm+wNPXLwYk+JgeohX/tZXjroaFmT9cWANJ+uM3jDkYLnOslPMmg5T0MnDIfygDnU8cq3aJMAeFMnWBgwjC6jxJi78elUX2hwejPWj1OrkjAwjmQjTp1TzcS2LSRu0hW8N+5MGZTcUNNzCdqZN3kOKSsvL2VJeTS/Js0HRGOsIpVcqc13iow4NO+IQRolpnn8lMGBTbaI3jnMRvBAz/8fUxzgSc X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: e11efc05-1da6-4fae-b8ec-08db68d132ad X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Jun 2023 10:06:31.3204 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: RA/Aus4Sb15mRAYdGSc4J9u/TO1m3h4vmXxgKXIF3CmRbuyarx2hTDhTcThlwXS85MpkC4Oh4rW1mcXlBxQ8UPCf48BW80iiJupspAlj4Y8= X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA0PR03MB5626 On 08/06/2023 8:37 pm, Luca Fancellu wrote: >> On 8 Jun 2023, at 18:40, Andrew Cooper wrote: >> >> MASK_EXTR() and MASK_INSR() are a matching pair. Keep them together. >> >> Fixes: 56a7aaa16bfe ("tools: add physinfo arch_capabilities handling for Arm") > I don’t think this patch is fixing a bug: > > ### Fixes: > > If your patch fixes a bug in a specific commit, e.g. you found an issue using > ``git bisect``, please use the `Fixes:` tag with the first 12 characters of > the commit id, and the one line summary. That a poor explanation... Fixes: is about corrections to the patch, not bugs. 56a7aaa16bfe is unlikely to be backported, but if a downstream were to backport your SVE patches, Fixes: identify all other patches they need to take. Fixes: was specifically invented to let tooling (partially) automate the task if finding new patches to backport, based on what had already been backported. Concrete bugs are the majority reason for a Fixes tag, sure, but not the only reason.  In this case, a downstream absolutely doesn't want to get into a position where these macros aren't together in a pair, because it there will be a case in the future where it causes a build error. >> Signed-off-by: Andrew Cooper > But it makes sense, so > > Reviewed-by: Luca Fancellu Thanks.  As you've already indicated that you're ok with fixing up x86-emulate.h in v2, I'll retain this. ~Andrew From xen-devel-bounces@lists.xenproject.org Fri Jun 09 10:10:46 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 09 Jun 2023 10:10:46 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545809.852396 (Exim 4.92) (envelope-from ) id 1q7Z4l-00074W-00; Fri, 09 Jun 2023 10:10:35 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545809.852396; Fri, 09 Jun 2023 10:10:34 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7Z4k-00074P-Ri; Fri, 09 Jun 2023 10:10:34 +0000 Received: by outflank-mailman (input) for mailman id 545809; Fri, 09 Jun 2023 10:10:33 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7Z4j-00074H-R4 for xen-devel@lists.xenproject.org; Fri, 09 Jun 2023 10:10:33 +0000 Received: from esa4.hc3370-68.iphmx.com (esa4.hc3370-68.iphmx.com [216.71.155.144]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id dbf15a94-06ad-11ee-b232-6b7b168915f2; Fri, 09 Jun 2023 12:10:29 +0200 (CEST) Received: from mail-dm6nam11lp2170.outbound.protection.outlook.com (HELO NAM11-DM6-obe.outbound.protection.outlook.com) ([104.47.57.170]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 09 Jun 2023 06:10:27 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by SA0PR03MB5626.namprd03.prod.outlook.com (2603:10b6:806:ba::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Fri, 9 Jun 2023 10:10:25 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606%4]) with mapi id 15.20.6455.030; Fri, 9 Jun 2023 10:10:25 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: dbf15a94-06ad-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686305429; h=message-id:date:subject:from:to:cc:references: in-reply-to:content-transfer-encoding:mime-version; bh=Wjpl/s0Ng5vqFXOP9g2y5WT0Sro9g3sPniC+E+tUFrM=; b=WBiAlkavXLqt4ZxunYP7hQcraE67eL2m2esznBQoGTP+C/5dm7UnMw3a l9BxF2FYxYgl9gsEWyzzWLSNPdF/MwzQk3X1sEWPitC505IjXn6pDEjT3 ZlfmRLKs+8VJGQv7AYJMZJSlfT3uGGG51ZaaULpToT6z0Mu3BEHb5rSK7 A=; X-IronPort-RemoteIP: 104.47.57.170 X-IronPort-MID: 114708743 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:iS9H1aohuLBYZxTAjtqHI/vPMvFeBmLZZBIvgKrLsJaIsI4StFCzt garIBmEbP+KMTajeNsibtux8hgEvZPQx9NiGgRo+SwzECsT85uZCYyVIHmrMnLJJKUvbq7FA +Y2MYCccZ9uHhcwgj/3b9ANeFEljfngqoLUUbKCYWYpA1c/Ek/NsDo788YhmIlknNOlNA2Ev NL2sqX3NUSsnjV5KQr40YrawP9UlKq04GtwUmAWP6gR5weAzylNV/rzGInqR5fGatgMdgKFb 76rIIGRpgvx4xorA9W5pbf3GmVirmn6ZFXmZtJ+AsBOszAazsAA+v9T2Mk0MC+7vw6hjdFpo OihgLTrIesf0g8gr8xGO/VQO3kW0aSrY9YrK1Dn2SCY5xWun3cBX5yCpaz5VGEV0r8fPI1Ay RAXACEAbSCmg/uU+/W2Ztlzh+0qPcvLE5xK7xmMzRmBZRonabbqZvyToPN9gnI3jM0IGuvCb c0EbzYpdA7HfxBEJlYQDtQ5gfusgX78NTZfrTp5p4JuuzSVkFM3jeeraYWNEjCJbZw9ckKwj 2TK5WnmRDodM8SS02Gt+XOwnO7f2yj8Xer+EZXhr6I12A3Mmjd75Bs+CBiF4ue/1HOFXfV8c Es04DAFpPIO6xn+JjX6d1jiyJKehTYeUddNF+wx6CmW17HZpQ2eAwAsSiNKYZoovck9SDguy 3eAhdavDjtq2JWXRmia7ay8ti6pNG4eKmpqTT8JS04J7sfupKk3jwnTVZBzHaitlNr3FDrsh TeQo0ADa647iMcK0+C3+A7Bijf1/5zRFFdqvkPQQ36v6R5/aMi9fYu05FPH7PFGaoGEUl2Gu 3tCkM+bhAwTMayweOW2aL1lNNmUCzytalUwXXYH80EdygmQ IronPort-HdrOrdr: A9a23:4lmoTKpElZya+rkgcGfpDZEaV5v+LNV00zEX/kB9WHVpm5Oj+f xGzc516farslossSkb6Ky90KnpewK5yXcH2/hvAV7CZniqhILMFusC0WKM+UyZJ8STzJ8+6U 4kSdkCNDSSNyk3sS+Z2njCLz9I+rDum83J9ITjJjVWPHtXgspbnmBE43OgYzRLrX59dPwE/f Snl696jgvlXU5SQtWwB3EDUeSGj9rXlKj+aRpDKw875BKIhTaI7qe/NxSDxB8RXx5G3L9nqA H+4kLEz5Tml8v+5g7X1mfV4ZgTsNz9yuFbDMjJptkJJi7qggOIYp0kf7GZpjg6rMym9V5vut jRpBULOdh19hrqDy6IiCqo/zOl/Ccl6nfkx1Pdq2Dku9bFSDUzDNcErZ5FczPCgnBQ/O1U4e Zu5Sa0ppBXBRTPkGDW/N7TTSxnkUKyvD4LjfMTtXpCSoETAYUh7rD3vXklUqvoLhiKrLzPI9 MeS/00I8wmN29yWkqp+1WHBubcB0jbUC32GnTq8fblrQS+1EoJvnfwgvZv30soxdYFUJ9D6P 3DMqN00J9zbuJ+V9MnOM4xBfKtDGrDWBTNN3/XB2/GOuUoB1LhwqSHuoncwomRCcA1JV8J6c n8eUIdumgod030D8qSmJVN7xDWWW24GS/g08dE+vFCy/XBrRXQQFi+oX0V4r2dSs8kc4Tmcu f2PIgTD+7oLGPoF4oM1wriW4NKIX1bVMEOoN40V1+Hv8qOc+TRx6bmWeeWIKCoHScvW2v5DH dGVD/vJN9Y5kTuXnPjmhDeV37kZ0S695NtF6rR+fQV1eE2R8ZxmxlQjU786tCAKDVEvKBzdE xiIKn/mqf+vmWy9Xag1RQfBvOcNDcg3FzNaQI5meZRCTKFTV8qgaTtRVxv X-Talos-CUID: =?us-ascii?q?9a23=3AiI75w2j9Orx2E2eRbCakA1y8sDJuY3De/FLUOm2?= =?us-ascii?q?DTmtFeKKUYFaB+oNLjJ87?= X-Talos-MUID: 9a23:79B7UAhVuKPlA9QZsO52FcMpaYRWoLqoVn02l7Il4M6kLzZbMm2hk2Hi X-IronPort-AV: E=Sophos;i="6.00,228,1681185600"; d="scan'208";a="114708743" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=fyGzLOSdGRaX50umAyHqKVfGLcqqwOTtkB4lfq1ab+sLhHPOT84hfCz5B4XWM3K5sJBveStR5SjKmYb7u7Y0CrhRI5D2G42gLU0bgsAD/jMYWOS52LMO9XeDnLC+2c7t/d2JP908vPt8q+T+G2cjiPNAXkUDGhV3PpEif+EVgSdrBUlbkVrdD1cMm0pv56T9HVE3LqnCrC8m9mHIsaGTQ91KNdN5R7Zj27CgxiP8lcH0ELXcSoz7P3iYpPpsJLHFakbHTXuVFVw1QFVtjIt8K00rY55AHvTLboyHEodPxJyqaXv5awZomLXB+VUVK4bXk/ZuumYTiuLCwR9kH3fE8g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=Ff4nZVtzN8zb9/AOwMi8Rs+t6C439FiqvtWuwSUXTcM=; b=CvOjpmVc75ldNrKT/0kHCrlMimFE0eQKheVSR1UvMyAERfxQwXn9PnzUAroyjDYUfVNrazIYzamsIEIMHOe2XQGS3ZFqG5Kn9obugMAORrzDc2PktmHfXtILs3Qw8Iwqj/FT669v1hmMaPGy1vqxzwIanQTP1tfPNqEyIVmWieV2UIHPUzr9IelbYgmqGNMiRGJyKEpTTIwGgH1VThts7FT2GJ2kEJ0eHJitXp8i+BIB2uL2lMPaY28WbBfxsUyzcS2tCEG2OVHZhkA5MPJeEjXv3QwxKzJ9yVRAahKrXn9JAShZ6xQu2sKSjJ9/XA2WyKoaRswMag02tjEFbYIJdg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Ff4nZVtzN8zb9/AOwMi8Rs+t6C439FiqvtWuwSUXTcM=; b=q7KshDGLg97GpIbGyBoLTidGYf8hzEBI6Kf3TOmtxMGAucl03QdN0J/qV28H6CyohXS0XMLHoE3KGXDdgxu2Qq4BDv48nmCpF5eqSoUNuiAHpvKValkUTANI6VxheReK+Gr+CN6z5xm2bP8SfmMwoHTUSIONfj4Z57wds/bII5A= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: <5005b885-c6f6-cc45-c65b-df9440964c24@citrix.com> Date: Fri, 9 Jun 2023 11:10:20 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH] tools: Move MASK_INSR to common-macros.h Content-Language: en-GB From: Andrew Cooper To: Jan Beulich , Luca Fancellu Cc: Anthony PERARD , Juergen Gross , Xen-devel References: <20230608174014.2500954-1-andrew.cooper3@citrix.com> In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO4P265CA0012.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:2ad::7) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|SA0PR03MB5626:EE_ X-MS-Office365-Filtering-Correlation-Id: e615fc77-c04c-4a24-01a7-08db68d1be71 X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: JR4NpuKSYg8C8L1m6yxOh2qUJEOihyyYKZDZ2NyvzuYeZxzaN8jEza/VRz8RuYmY9r3l7gCfoMRhskkA4vKK9NEdA73ZINXpLCksTkP0/q818racvhhPznSHlmUUIAFFvl8WE5jNeTJq8eHgEMKh2fRlNoiDMVO4svmUGPPquQ3H1AJheKfKZ2wsiskr7rHNng7/KjqdpLm3yc9HWopp5Wl/AsjQZm8sPsxc1R6dfvIn7Aw2mB3GpTqy0L4yEzyRjcH56dSpKlwSzZixXs5xPwroY/aghhavO40aaV1yXJvXDdoJbs0FDqFHiZ7h9Cx4y57PkVcPulKJ00auaa7I5OMfFx7GPMcqIhO6LvZlrmu5runCSXYGuGrIoH118CT32aZKHSYHqhbhdjDmJtFwtbZWtNpaRqMtqcDs5CHse5jB08IPc3c1yE7shhHsn+m3cXAK5zFSfgM/zeCiunoNsr8qui8pdbmLohcNTAjThsBKksc3C+rYDqXPGlyzCzifgpxTh4WpuLBZ0A2u9H2nYpQBJkpMglCaHHF+A8d954aeQQj6dQlS6CHFH8t5HwgTEIfZNyrdoiaQVyA/KVDjYon7LAD/sJmATerus091dwbGLtv3adOFSqCSeTh7GOHGa8yOj5BlEQ2oPrvVFqrI5Q== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(346002)(366004)(136003)(396003)(39860400002)(376002)(451199021)(54906003)(86362001)(110136005)(2616005)(31696002)(53546011)(26005)(6512007)(6486002)(36756003)(6666004)(478600001)(186003)(2906002)(4744005)(6506007)(38100700002)(66946007)(4326008)(31686004)(66476007)(8936002)(5660300002)(8676002)(66556008)(82960400001)(316002)(41300700001)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?TEdZcFpUMUlHWVk0a3BRQlFFRVNZdHJERDVyekNmRmVqL05aSGFtWmExMnhx?= =?utf-8?B?ZmlYdmJCU3p3NkxYUFUza0ZxZXJ5SHI2UlJYa3lhS1p6bW92ZWZNWFVwRG0x?= =?utf-8?B?NXo1eGxqNmlZWW9YZEwvcm1JazdoM25ZeVFIN3k0VVZJeU5OdytvTzhHSzla?= =?utf-8?B?bGtMWHRxL2JadmI5a08ycjdHVm9XWDhPS29xWmNrbERiSmZkODJZeFg0RUo0?= =?utf-8?B?OHhIRnhNWkFxU05sZE1MWCtxLzJ3U0oyTll5SlFJSmQ0S2MwRTRHN0tWYkV6?= =?utf-8?B?cCt1TmM2eGNUZjIrZi9ucXYrdkYyZ3U1TklLUkZQUW44dDBOT2ZTRHdWby9h?= =?utf-8?B?RDRVdUdVSWdZamp1RTB1YVN5TlhrdEtISHg1R1U5SXM1VUxMZEhmc1N3dFVq?= =?utf-8?B?RkY0TjBBSktGbGx0WWRKR0FWUXJ5TGVYS1RscW5FWU42aUZkeXMrcGhMVEpS?= =?utf-8?B?SmdDLzZ3b05CS1VPNG5qZWNLdWJTN1JQU2x4YWJPUmJpNlB2T0U2T0xsZjhF?= =?utf-8?B?WWc1Mmo5SE41MDR0eFBqMDZVaDFGN2hiRysydTl5NWNxRlVwOWpteFZ6OUtO?= =?utf-8?B?OG9TSTVGWTF4bWVpd2J1a253MEc0Wi9WbzBqRHZ5T090N0IreWgrcGdyTmE0?= =?utf-8?B?WHhUSURGcEttemdMeUdXakVpcGdkV1Uxc2VXL3l5M1JrT2pBMXhiM0d0MkdT?= =?utf-8?B?bFZTL1E3MHBIZ3dtbEZkUXRGUS9IeFlsZDhwQnh3dWN3WjFFZWN6cVN0WkY0?= =?utf-8?B?TGFocWtaUGNMblE0dXpMaGFZY2xsemFOd2JubkNUbDBobjhNUU9uYmR3dmc3?= =?utf-8?B?OE1BeDg5ZlBxZFEvUXlBSURBcWpXY0ZPam5KWFNQTUMwMU90N29pSDFJNHBI?= =?utf-8?B?R1RHdFJzTFNVaUppNmwrVms1eXhCejdWYzdncTg5ZjFDay9vTHc4Nm1FM1VO?= =?utf-8?B?ZlMwNTJLRE45YzQ3aFRkQ3dYc3pHcGNJTmVxOThJSkNPUC9jQXlmaXRHQ2Y2?= =?utf-8?B?Zm96WVRXMjZmN3IySlU1UFovQjRwVU5vUWJhYzI5a25YeE9DTklDaWl6ejdp?= =?utf-8?B?dEdpeDFTRDNaRUJ1T1VOZzN4djRaYTQvT1I3RnVUVjRiNDlDNTdHYVNZSEww?= =?utf-8?B?bWZOdUFHR3AvYXAxQWVNUi9Rek4wK3ZPRkN5ekpCM1V6MHdXMCs5REo5aHY0?= =?utf-8?B?MjNLYVlNVmh3bDJtTFMrQ0RYZXNqdnFFNDdxblI1RTNHU2ZnTmcyaUw0VWxV?= =?utf-8?B?MFNPVVFEL1F4aytBZEhSUkVzcVBNYkMvbWhqR1o0cFROTGZWU2t3REEyUDUy?= =?utf-8?B?UHl1cWgvSmg2WFRPS0xhdXltQVQyL0orVFBVY0dMUVVlWEp0eWEveUxMTll2?= =?utf-8?B?L3AzMHl1T1F3bGJNL1hBSnArU0prOEgwaVkwM0ZYVktmRTJFVXBzd1NXTEFM?= =?utf-8?B?UEt3blZ3L0VqMllkR2dOTFJwakQrVldCUzZsZ1ZGb2NPalFmcThZSjJMVUZw?= =?utf-8?B?cWlndVJnZFZCa3FCaGg3SkZoVzRIRlR0WGxnczROcFhGdWlQeDRQZ1hsWUZG?= =?utf-8?B?Q0R3QjNGRGMwZWhwLzZDRldhVkJob3JDbGN0cXg5V3NaSlZ1b0JxUGV0WlpP?= =?utf-8?B?aHZsSUFvdklHSC9mUU16ODZnNlozSlFvUU5TanVxRU1iK2dZU2FBNzNHbHNo?= =?utf-8?B?Z2FkT2RpRG5DS21CR3BIZXhGS0VJZUV3THU5YXA4MlZzWUt0eFpFYkZZNTVt?= =?utf-8?B?T1BvNUQxeU95Vk9UTjd2V2FnTGRmZDltTUtUYmNoUDIxcFVuN1J1SXNyS0tz?= =?utf-8?B?TEdYVGRpajNSTnltN0U4V1ZteUg2NlRRRHRGUGcxaldUcWJSMFREak9UUGxI?= =?utf-8?B?SDRPbXhobEN4c3BmK0NpYmhZZ1k5RURhM0JvWGNUU2ZVdXlxaWhKb0FlTnMx?= =?utf-8?B?KzBQUHZXQWdaQWdIcy8wK05La0YzZ3Qxb2svSGMwMzR0elJpcU9vUGI2Q25i?= =?utf-8?B?S2F3M2E0V3g0S01jSnc3MjJjdEtjRVhOd2UvYldTYnR2Vi9MbXJqK0VycGlP?= =?utf-8?B?c2wrUTdMSlhvLzlXd0ljZnVWZ0FldWF2SkdLcndlSXBjYlkzazNZKzhSaTNC?= =?utf-8?B?d0JMZm5DN1F4V0RsS3MyWFdpWlFFZFNqakZUN0lQNGlocE9LZW4xelhuTVFO?= =?utf-8?B?b2c9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: 5DaS2Ol0z1xtsfecoIfylbDIpuIDPn2Nzv8hJ8iO125O51WMD7I83JMujHFB7rT4J8SCeNGxbMcUBSX1yZDT8UUyfNFOS/u54NeK2XGd/DVyytbnmUbeWIbE0q1XBxeNvbKQhyB0PPZyChxX6IWzTAj99E8pyjm8JLPFyRA+m1FU6X56fmZPvXRGGalU57CnTS2qiEx2ljmoEvH31HUOwHyG5QKrjd35heqpx0Osvea/1s4ez36VPth9suMYcnQBtnIIVyF2K0N8/l87HJLerF6gh8YtTL7YAWzXF9EyBn5p2nwXnS6Re8O+ThhaE748icBItD1JTNs9a05+dhhwiiUqrx77IMapKoSQQf+yvOkbKOZFijhDFwO4sxjfmNhLT72o1JxK+IqtaxDnwHaMvhF6JOBjRDgS0jfdLRCAkAQifKhIwav35gAZPuioUayr9evKtHP7VBibQE7dO3Rwahp/mWrN65q2vM4o/o6JXpgw7iFBTnSPhEp8+85ssPDWkmJ1TjMnpNYdOIIOMwXC9uuRsUzLHdbXKdQrWiDDTLjQXMGt2NDfudX+u40G4V3FwXk1sxjZjPjbin0IB2ssjJSId5X+8O2FAFz0lkZTCYOYBmetoGDlGe+02MyUn3bGmsOMPHoxW+5FNhVGl+fFu/EDhaOhfj4R3/hb7ee0CX3Z1yEEXVcDxsGoCV2rtG42LSN5IpMmj9wko/Lt8ZUmqwGBrQre2sttaB/0rKT/TX28PyXMpVx9eIBBcHtMks9M26O2+XvwUinmxJdW0Tj9zlXlFX4asD/teStTDoQ8bhdOvriIZdTRvoiEi7laPKgt X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: e615fc77-c04c-4a24-01a7-08db68d1be71 X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Jun 2023 10:10:25.7867 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: Ahw+QDZM7vVIb+l17Sxo48HBIAh326A96MRnxk3KubyRzZ9l8toIVx3/7953EkFP+fT8Ruc1IzJI0zQqJKh0DPXNBg0SVNFpJWjJFwZycHU= X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA0PR03MB5626 On 09/06/2023 10:33 am, Andrew Cooper wrote: > On 09/06/2023 10:31 am, Jan Beulich wrote: >> On 08.06.2023 19:40, Andrew Cooper wrote: >>> MASK_EXTR() and MASK_INSR() are a matching pair. Keep them together. >> Right, that's one thing which should have been done right away. >> The other is that both macros should have been purged from >> tools/tests/x86_emulator/x86-emulate.h (which includes >> xen-tools/common-macros.h). Luca? > Hmm - I explicitly checked that, and concluded they didn't...  Happy to > purge them if I'm wrong. I think I was looking in an old branch.  Fixed for v2. ~Andrew From xen-devel-bounces@lists.xenproject.org Fri Jun 09 10:11:01 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 09 Jun 2023 10:11:01 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545810.852405 (Exim 4.92) (envelope-from ) id 1q7Z51-0007RD-71; Fri, 09 Jun 2023 10:10:51 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545810.852405; Fri, 09 Jun 2023 10:10:51 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7Z51-0007R6-3X; Fri, 09 Jun 2023 10:10:51 +0000 Received: by outflank-mailman (input) for mailman id 545810; Fri, 09 Jun 2023 10:10:49 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7Z4z-00074H-Tl for xen-devel@lists.xenproject.org; Fri, 09 Jun 2023 10:10:49 +0000 Received: from EUR04-HE1-obe.outbound.protection.outlook.com (mail-he1eur04on2053.outbound.protection.outlook.com [40.107.7.53]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id e81dfdb9-06ad-11ee-b232-6b7b168915f2; Fri, 09 Jun 2023 12:10:49 +0200 (CEST) Received: from AM6P192CA0094.EURP192.PROD.OUTLOOK.COM (2603:10a6:209:8d::35) by GVXPR08MB7895.eurprd08.prod.outlook.com (2603:10a6:150:17::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.32; Fri, 9 Jun 2023 10:10:16 +0000 Received: from AM7EUR03FT058.eop-EUR03.prod.protection.outlook.com (2603:10a6:209:8d:cafe::a7) by AM6P192CA0094.outlook.office365.com (2603:10a6:209:8d::35) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.27 via Frontend Transport; Fri, 9 Jun 2023 10:10:16 +0000 Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by AM7EUR03FT058.mail.protection.outlook.com (100.127.140.247) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.29 via Frontend Transport; Fri, 9 Jun 2023 10:10:15 +0000 Received: ("Tessian outbound e13c2446394c:v136"); Fri, 09 Jun 2023 10:10:15 +0000 Received: from 5851d6929970.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 83374FCE-01C1-4DD1-8057-AFAEB7461237.1; Fri, 09 Jun 2023 10:10:09 +0000 Received: from EUR05-VI1-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 5851d6929970.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Fri, 09 Jun 2023 10:10:09 +0000 Received: from AM6PR08MB3749.eurprd08.prod.outlook.com (2603:10a6:20b:8f::22) by VI1PR08MB5455.eurprd08.prod.outlook.com (2603:10a6:803:135::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.32; Fri, 9 Jun 2023 10:10:05 +0000 Received: from AM6PR08MB3749.eurprd08.prod.outlook.com ([fe80::ed0b:5730:a1f9:577b]) by AM6PR08MB3749.eurprd08.prod.outlook.com ([fe80::ed0b:5730:a1f9:577b%4]) with mapi id 15.20.6455.037; Fri, 9 Jun 2023 10:10:05 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: e81dfdb9-06ad-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=WB6SQNBRWIkjfM8eI97XnBZEBH+3QYHy6iLNKMT4L8c=; b=rLwVyR166O53zVwOf26k08248yYcYYMrBL0x2OkH+rVdh8pGKe9mGrdWDTeYONeoJ/YpbSJYmjDlLSEXJp+BLaZTeqhL8bfS+1puhkE9NG+ZZFpJrUjMGvc00I8C6x/uU89Hf0lkA8/rJbCQAqAplASdaf2HGF7ecAdzc/xPnwY= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C X-CheckRecipientChecked: true X-CR-MTA-CID: af53128548eff236 X-CR-MTA-TID: 64aa7808 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=ZqcYNDg89ZxH+eRGh3+pdjGoeOFQx1D0xJ1A4oRNuGbGOwCFp1njdOKudn9nUWkqAZeW7Nap1pjewBjyKgJCaveu2LMrWCdB+361cws6neODVRFMM8nQLHUGecNEN5mTmpUJncFI+0daV4j1tQzL65nK2R+1Nvu1Y8NbQeQCpL9TfxKKehSDZJZ9aPof1bwJ+OaKTirPj7yMC58HktRZMjaA8HqaEApO3nvL/UOhM2sfwff6zXR5trXSMwlswPWYN0kdabuwbKfTXPdJt1TdTSIZ2DfzIR3Zpvc3NYUla/ibEHG4YMCtPmbxoUrlcHVP6qRYRVGvcKKRH/LG5tSRlg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=WB6SQNBRWIkjfM8eI97XnBZEBH+3QYHy6iLNKMT4L8c=; b=mHYMaDPNbAJ9CE4RLefJblT/8S2a1iEzYUKv4JzorcqNYPHxUdi99xHWkVpTDYmv//L5/1kzCNS9TWPT0hFmyJIdmGL9NJepgwZ1TltAcKI1zMBlKNxEXIvEUMy9a/KF1bcd06p98/ZHyZDE6Umz+clImdhbdajEaBDQN2rGp1FV2IOlpP9Yi183tvG1qvKZvYos2qBDOTC2YVpw8cT3TE5YQt8gKdjkd+UdNGK9lkO7IbmiNd/4hl8fvBgh6NQ+AFZ+qXseULmVw94Lj099fXy7LSQ+KusgAmf1kMOBiN4OfogLpR49Y6leSWo0rIOI8WjCqUw6ulkT+NVKx010gA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=WB6SQNBRWIkjfM8eI97XnBZEBH+3QYHy6iLNKMT4L8c=; b=rLwVyR166O53zVwOf26k08248yYcYYMrBL0x2OkH+rVdh8pGKe9mGrdWDTeYONeoJ/YpbSJYmjDlLSEXJp+BLaZTeqhL8bfS+1puhkE9NG+ZZFpJrUjMGvc00I8C6x/uU89Hf0lkA8/rJbCQAqAplASdaf2HGF7ecAdzc/xPnwY= From: Luca Fancellu To: Andrew Cooper CC: Xen-devel , Anthony PERARD , Juergen Gross Subject: Re: [PATCH] tools: Move MASK_INSR to common-macros.h Thread-Topic: [PATCH] tools: Move MASK_INSR to common-macros.h Thread-Index: AQHZmjBTIpVZOkjuH06O82Z2wJSQ2a+BTMwAgADy7ICAAAD5AA== Date: Fri, 9 Jun 2023 10:10:05 +0000 Message-ID: <57CC0EF8-1C97-4B0D-8FAD-8BEFD2929973@arm.com> References: <20230608174014.2500954-1-andrew.cooper3@citrix.com> <9BAB3408-676E-4801-BCE1-4DB7BE081ADB@arm.com> <8c69d867-0c71-a6b2-39b7-30e82a71f97a@citrix.com> In-Reply-To: <8c69d867-0c71-a6b2-39b7-30e82a71f97a@citrix.com> Accept-Language: en-GB, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-mailer: Apple Mail (2.3731.600.7) Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-traffictypediagnostic: AM6PR08MB3749:EE_|VI1PR08MB5455:EE_|AM7EUR03FT058:EE_|GVXPR08MB7895:EE_ X-MS-Office365-Filtering-Correlation-Id: e5b703e9-417a-4915-3ac9-08db68d1b8bf x-checkrecipientrouted: true nodisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: PvhW5Cs41lafRnkiGRQRqsp8Of6cOVJUczHw4Oh1xiEQj68wwzy3yn+QK8lFX11MouRF0HZ6qaOWsUvPacd3aTxDJFYUX1RBGMYbEOZdVG038PZtJBfvdhOq2aIze2fiRkti1t+go+Od++bjZ5aw+b37/emHjahPbk5K1RMyhQc3QWWvG1qHXq9bfQU2QoNQY0qstjHnVfEm7TxN5IqJaG5a+TcTb+ds4JdV4T+yQ/IkK7gK56i5NGPIO09XGFAOA0yK0t2LHe3FSebJAdYYflcApRHJzGFeT8NkZLzmNBl+gFTLDBZde9PMdznOkebQAZgSjwjG3xvrMN5yp4LLSF8k89Z8iLY8D1/OZyI0XhZzfhSlJHOEm7zSLa3nzx4wHnUCBA8lI9oYwQjzmm0V8pfiNBkNrYB3pFgf0lrOjl5Yx4TWfG4YbuQAkECRBqMMcmEl2Kq/AtpFz84HtWEnf/7T5k9mAByGMOXDA1zGRfLWHn8YCXguXswiH9oBykyxLo8Tj8a1fZjBUg9gr5mqV6UrSMEvM3xRp6S/ZxN8Vf0SuTyUo8Sc6kmkh3EORI95UaGkyXXQTTmKS29j9Ck1NJMsUZ1zNEoAM2gyzCAjiUTWfFl8oVqeBeb7bBUFehxRZ+PcpmJPs27rPPidqyJevQ== X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM6PR08MB3749.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(136003)(376002)(366004)(346002)(396003)(39860400002)(451199021)(186003)(8936002)(8676002)(478600001)(54906003)(6486002)(41300700001)(316002)(5660300002)(91956017)(66946007)(26005)(66476007)(4326008)(66556008)(71200400001)(6916009)(66446008)(76116006)(53546011)(6506007)(6512007)(64756008)(2616005)(2906002)(38100700002)(38070700005)(122000001)(33656002)(86362001)(36756003)(45980500001);DIR:OUT;SFP:1101; Content-Type: text/plain; charset="utf-8" Content-ID: <9D502457659ECA40B6A06E8D39F8342D@eurprd08.prod.outlook.com> Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR08MB5455 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: AM7EUR03FT058.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: 141bce50-fd24-4ab1-6c5b-08db68d1b23f X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: Q+z/pAgpHpORtwQSTv952nPkObeVh3R3Qi6YxmciQ5lSrGkY8F+Bkj/rGUtBd9e2sB+8w4hlGUFb2PnZHIoDI6M7H4xFASGNMSiZAGqDWo29T4U67meW799jM5gvNMoOLQ7cjoXaYgQCdePKVewyf9+ABkviJNcz5boh/S7qCIMQRBKiBnC612VJlwpeNK8JS0ughU4Zb/q9WVXoodF254PTf/pj0kVv1r43sNUCmbLI1vTO18wJQBv/wnO97IkE4B3Lj5xDpPuB049HC0WWr7tVhivalzAlUuD8Zu14B7DF1VNe66WmM3cr1Ao5V5JgyZLTFLA1P+rh/FM36SUmZKf7UAY4S5zL2ad7huH4gCka/nSDSCW7SOD/Fp6aKP8AP10op8sJ270BVV9A1BEZmyTQUKR9GX+olHcC+sPNiMi53N9qiR62XDTwmArqoEcmUdjjbzOoiNDcK62SCZ2rKuVFoK5hpvrUejrTlL9MYz5unuVF0V/mFO0FiS7wQyB48kReB69Z4qVw8f6e0OdLvt8V+X0geuBsUM8h5+vqXwIL26bEZ0v5JbqHEG3ROAbGYWckbMMNrq364/5wdRPdttLu7oaySPo3GWWW+QlTxgw1ZqLtqxfF77cRsntNgTxTR0o3haWbkFOe4CX1G5RfCnKUVo+yGUYuKj8v2NB5yf0BercW61S+Tfn7VCx8S419xrC8CcMmP9hy4vEuW4kPmWi3ZJR8HYif8+5Dj9wZQ8fnpO3npA4sTq3s3ji/Sd2h X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230028)(4636009)(396003)(136003)(376002)(346002)(39860400002)(451199021)(36840700001)(46966006)(40470700004)(70206006)(70586007)(6862004)(8676002)(5660300002)(8936002)(36756003)(4326008)(54906003)(478600001)(40460700003)(316002)(41300700001)(6486002)(40480700001)(53546011)(82740400003)(81166007)(356005)(2616005)(6512007)(186003)(6506007)(26005)(47076005)(36860700001)(86362001)(82310400005)(2906002)(336012)(33656002)(107886003);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Jun 2023 10:10:15.9425 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: e5b703e9-417a-4915-3ac9-08db68d1b8bf X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: AM7EUR03FT058.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: GVXPR08MB7895 DQoNCj4gT24gOSBKdW4gMjAyMywgYXQgMTE6MDYsIEFuZHJldyBDb29wZXIgPGFuZHJldy5jb29w ZXIzQGNpdHJpeC5jb20+IHdyb3RlOg0KPiANCj4gT24gMDgvMDYvMjAyMyA4OjM3IHBtLCBMdWNh IEZhbmNlbGx1IHdyb3RlOg0KPj4+IE9uIDggSnVuIDIwMjMsIGF0IDE4OjQwLCBBbmRyZXcgQ29v cGVyIDxhbmRyZXcuY29vcGVyM0BjaXRyaXguY29tPiB3cm90ZToNCj4+PiANCj4+PiBNQVNLX0VY VFIoKSBhbmQgTUFTS19JTlNSKCkgYXJlIGEgbWF0Y2hpbmcgcGFpci4gIEtlZXAgdGhlbSB0b2dl dGhlci4NCj4+PiANCj4+PiBGaXhlczogNTZhN2FhYTE2YmZlICgidG9vbHM6IGFkZCBwaHlzaW5m byBhcmNoX2NhcGFiaWxpdGllcyBoYW5kbGluZyBmb3IgQXJtIikNCj4+IEkgZG9u4oCZdCB0aGlu ayB0aGlzIHBhdGNoIGlzIGZpeGluZyBhIGJ1ZzoNCj4+IA0KPj4gIyMjIEZpeGVzOg0KPj4gDQo+ PiBJZiB5b3VyIHBhdGNoIGZpeGVzIGEgYnVnIGluIGEgc3BlY2lmaWMgY29tbWl0LCBlLmcuIHlv dSBmb3VuZCBhbiBpc3N1ZSB1c2luZw0KPj4gYGBnaXQgYmlzZWN0YGAsIHBsZWFzZSB1c2UgdGhl IGBGaXhlczpgIHRhZyB3aXRoIHRoZSBmaXJzdCAxMiBjaGFyYWN0ZXJzIG9mDQo+PiB0aGUgY29t bWl0IGlkLCBhbmQgdGhlIG9uZSBsaW5lIHN1bW1hcnkuDQo+IA0KPiBUaGF0IGEgcG9vciBleHBs YW5hdGlvbi4uLg0KPiANCj4gRml4ZXM6IGlzIGFib3V0IGNvcnJlY3Rpb25zIHRvIHRoZSBwYXRj aCwgbm90IGJ1Z3MuDQo+IA0KPiA1NmE3YWFhMTZiZmUgaXMgdW5saWtlbHkgdG8gYmUgYmFja3Bv cnRlZCwgYnV0IGlmIGEgZG93bnN0cmVhbSB3ZXJlIHRvDQo+IGJhY2twb3J0IHlvdXIgU1ZFIHBh dGNoZXMsIEZpeGVzOiBpZGVudGlmeSBhbGwgb3RoZXIgcGF0Y2hlcyB0aGV5IG5lZWQNCj4gdG8g dGFrZS4NCj4gDQo+IEZpeGVzOiB3YXMgc3BlY2lmaWNhbGx5IGludmVudGVkIHRvIGxldCB0b29s aW5nIChwYXJ0aWFsbHkpIGF1dG9tYXRlIHRoZQ0KPiB0YXNrIGlmIGZpbmRpbmcgbmV3IHBhdGNo ZXMgdG8gYmFja3BvcnQsIGJhc2VkIG9uIHdoYXQgaGFkIGFscmVhZHkgYmVlbg0KPiBiYWNrcG9y dGVkLg0KDQpPayB0aGlzIG1ha2VzIHNlbnNlLCBzbyB0aGF0IGEgdG9vbCBjYW4gZWFzaWx5IHVu ZGVyc3RhbmQgd2hlcmUgdG8gcHV0IHRoZSBmb2N1cy4NCg0KPiANCj4gQ29uY3JldGUgYnVncyBh cmUgdGhlIG1ham9yaXR5IHJlYXNvbiBmb3IgYSBGaXhlcyB0YWcsIHN1cmUsIGJ1dCBub3QgdGhl DQo+IG9ubHkgcmVhc29uLiAgSW4gdGhpcyBjYXNlLCBhIGRvd25zdHJlYW0gYWJzb2x1dGVseSBk b2Vzbid0IHdhbnQgdG8gZ2V0DQo+IGludG8gYSBwb3NpdGlvbiB3aGVyZSB0aGVzZSBtYWNyb3Mg YXJlbid0IHRvZ2V0aGVyIGluIGEgcGFpciwgYmVjYXVzZSBpdA0KPiB0aGVyZSB3aWxsIGJlIGEg Y2FzZSBpbiB0aGUgZnV0dXJlIHdoZXJlIGl0IGNhdXNlcyBhIGJ1aWxkIGVycm9yLg0KPiANCj4+ PiBTaWduZWQtb2ZmLWJ5OiBBbmRyZXcgQ29vcGVyIDxhbmRyZXcuY29vcGVyM0BjaXRyaXguY29t Pg0KPj4gQnV0IGl0IG1ha2VzIHNlbnNlLCBzbyANCj4+IA0KPj4gUmV2aWV3ZWQtYnk6IEx1Y2Eg RmFuY2VsbHUgPGx1Y2EuZmFuY2VsbHVAYXJtLmNvbT4NCj4gDQo+IFRoYW5rcy4gIEFzIHlvdSd2 ZSBhbHJlYWR5IGluZGljYXRlZCB0aGF0IHlvdSdyZSBvayB3aXRoIGZpeGluZyB1cA0KPiB4ODYt ZW11bGF0ZS5oIGluIHYyLCBJJ2xsIHJldGFpbiB0aGlzLg0KDQpzdXJlLCB0aGFua3MgZm9yIGZp eGluZyBpdA0KDQo+IA0KPiB+QW5kcmV3DQoNCg== From xen-devel-bounces@lists.xenproject.org Fri Jun 09 10:11:25 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 09 Jun 2023 10:11:25 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545814.852414 (Exim 4.92) (envelope-from ) id 1q7Z5P-0007zq-Ga; Fri, 09 Jun 2023 10:11:15 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545814.852414; Fri, 09 Jun 2023 10:11:15 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7Z5P-0007zj-DV; Fri, 09 Jun 2023 10:11:15 +0000 Received: by outflank-mailman (input) for mailman id 545814; Fri, 09 Jun 2023 10:11:13 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7Z5N-0007wv-Ph for xen-devel@lists.xenproject.org; Fri, 09 Jun 2023 10:11:13 +0000 Received: from esa4.hc3370-68.iphmx.com (esa4.hc3370-68.iphmx.com [216.71.155.144]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id f473c19e-06ad-11ee-8611-37d641c3527e; Fri, 09 Jun 2023 12:11:10 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: f473c19e-06ad-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686305471; h=from:to:cc:subject:date:message-id:mime-version: content-transfer-encoding; bh=fTKAHh/rmBdxwsIm4/S0Fz5U5kFl6UH8k2F7EeisTpk=; b=JXHw/q1UM4yMWKQJhP+FQh9UB0uUd0+sB+vseJF+ho/gbnmdz2tdCWlp +bmkO2HZfyoC/BE4JIU3CCecsqJj9d1HyU9uoAoet730HZtf2ijW0rCW6 Byl5bRzy7Aq6209Hv+DhlmlYv8C12AyD7x+VLcwHt9BZH6SmCbvhTesGc A=; Authentication-Results: esa4.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none X-SBRS: 4.0 X-MesageID: 114708932 X-Ironport-Server: esa4.hc3370-68.iphmx.com X-Remote-IP: 162.221.156.123 X-Policy: $RELAYED IronPort-Data: A9a23:S0Bu5qBOOofroRVW/xnjw5YqxClBgxIJ4kV8jS/XYbTApDh0gzxSn 2tOCGyEaKyDYmT0Lot3O43j8hxS7MDWm9VhQQY4rX1jcSlH+JHPbTi7wuUcHAvJd5GeExg3h yk6QoOdRCzhZiaE/n9BCpC48T8nk/nOHuGmYAL9EngZbRd+Tys8gg5Ulec8g4p56fC0GArIs t7pyyHlEAbNNwVcbCRMs8pvlDs15K6p4G1A7gRlDRx2lAS2e0c9Xcp3yZ6ZdxMUcqEMdsamS uDKyq2O/2+x13/B3fv8z94X2mVTKlLjFVDmZkh+AsBOsTAbzsAG6Y4pNeJ0VKtio27hc+ada jl6ncfYpQ8BZsUgkQmGOvVSO3kW0aZuoNcrLZUj2CA6IoKvn3bEmp1T4E8K0YIwxshvGHNJ8 P4jFyEVXgmag7P1+u6qRbw57igjBJGD0II3v3hhyXfSDOo8QICFSKLPjTNa9G5u3IYUR6+YP pdHL2M1N3wsYDUWUrsTILs4kP2lmT/UdDpApUjOjaE2/3LS3Ep6172F3N/9I4XWGp0Fzx3Cz o7A11ipCRQYENmt8CS6zULrjdHslyDEe7tHQdVU8dY12QbOlwT/EiY+RVa95PW0lEO6c9ZeM FAPvDojq7Ao806mRcW7WAe3yFaAoxUVHdRZFeY37AWQ4qPO5kCSAW1sZjxOcts9r+ctWCcnk FSOmrvBJxZirbmUQnK17aqPoHW5Pi19BXAGTT8JS00C+daLnW0opkuRFJA5Svfz14CrX2iqm FhmsRTSmZ0vo9YSxaK+/2v4kiqcv4HNH00PuhTYCzfNAhxCWKapYImh6F7+5PlGLZqEQlTpg EXoi/Ry/8hVU8jTyXXlrPElWejwuq3baGG0bUtHRcFJyti7x5K0kWm8ChlaLVwhDMsLcCSBj KT76VIIv8870JdHgMZKj2ON5ycCl/KI+THZuhf8MLJzjmBZLlPvwc2XTRf4M5rRuEYti7ojH pyQbNyhC30XYYw+kmroHbtMi+V2mXturY82eXwc507+uYdymVbPEetVWLdwRr1RAFy4TPX9r I8EapriJ+R3W+zieCjHmbP/3nhTRUXX8ave8pQNHsbae1oOJY3UI6OJqV/XU9A/zvs9eyah1 i3VZ3K0P3Kl1SCfcFTSOyA7AF4tNL4mxU8G0eUXFQ7A8xAejUyHts/zq7NfkWEbydFe IronPort-HdrOrdr: A9a23:i91QbaqZLL1iNNxifAqDNsAaV5v+LNV00zEX/kB9WHVpm5Oj+f xGzc516farslossSkb6Ky90KnpewK5yXcH2/hvAV7CZniqhILMFusC0WKM+UyZJ8STzJ8+6U 4kSdkCNDSSNyk3sS+Z2njCLz9I+rDum83J9ITjJjVWPHtXgspbnmBE43OgYzRLrX59dPwE/f Snl696jgvlXU5SQtWwB3EDUeSGj9rXlKj+aRpDKw875BKIhTaI7qe/NxSDxB8RXx5G3L9nqA H+4kLEz5Tml8v+5g7X1mfV4ZgTsNz9yuFbDMjJptkJJi7qggOIYp0kf7GZpjg6rMym9V5vut jRpBULOdh19hrqDy6IiCqo/zOl/Ccl6nfkx1Pdq2Dku9bFSDUzDNcErZ5FczPCgnBQ/O1U4e Zu5Sa0ppBXBRTPkGDW/N7TTSxnkUKyvD4LjfMTtXpCSoETAYUh7rD3vXklUqvoLhiKrLzPI9 MeS/00I8wmN29yWkqp+1WHBubcB0jbUC32GnTq8fblrQS+1EoJvnfwgvZv30soxdYFUJ9D6P 3DMqN00J9zbuJ+V9MnOM4xBfKtDGrDWBTNN3/XB2/GOuUoB1LhwqSHuoncwomRCcA1JV8J6c n8eUIdumgod030D8qSmJVN7xDWWW24GS/g08dE+vFCy/XBrRXQQFi+oX0V4r2dSs8kc4Tmcu f2PIgTD+7oLGPoF4oM1wriW4NKIX1bVMEOoN40V1+Hv8qOc+TRx6bmWeeWIKCoHScvW2v5DH dGVD/vJN9Y5kTuXnPjmhDeV37kZ0S695NtF6rR+fQV1eE2R8ZxmxlQjU786tCAKDVEvKBzdE xiIKn/mqf+vmWy9Xag1RQfBvOcNDcg3FzNaQI5meZRCTKFTV8qgaTtRVxv X-Talos-CUID: =?us-ascii?q?9a23=3ALAR+e2lPX4flxkJnAyWr7kLbr+DXOUHz1G7CJEq?= =?us-ascii?q?6Mll4UI2MUFvBu5k4gsU7zg=3D=3D?= X-Talos-MUID: 9a23:zF7hmQmtwzZ4EEuyAEdwdnpeZMxt4YCrOnkTrqo2/MK6FiZzBBSk2WE= X-IronPort-AV: E=Sophos;i="6.00,228,1681185600"; d="scan'208";a="114708932" From: Andrew Cooper To: Xen-devel CC: Andrew Cooper , Anthony PERARD , Juergen Gross , Luca Fancellu , Jan Beulich , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Wei Liu Subject: [PATCH] tools: Move MASK_INSR to common-macros.h Date: Fri, 9 Jun 2023 11:11:05 +0100 Message-ID: <20230609101105.2585951-1-andrew.cooper3@citrix.com> X-Mailer: git-send-email 2.30.2 MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MASK_EXTR() and MASK_INSR() are a matching pair. Keep them together. Drop the pair from x86-emulate.h which includes common-macros.h. Fixes: 56a7aaa16bfe ("tools: add physinfo arch_capabilities handling for Arm") Signed-off-by: Andrew Cooper --- CC: Anthony PERARD CC: Juergen Gross CC: Luca Fancellu CC: Jan Beulich CC: Roger Pau Monné CC: Wei Liu v2: * Drop from x86-emulate.h too. --- tools/include/xen-tools/common-macros.h | 1 + tools/libs/light/libxl_internal.h | 2 -- tools/tests/x86_emulator/x86-emulate.h | 3 --- 3 files changed, 1 insertion(+), 5 deletions(-) diff --git a/tools/include/xen-tools/common-macros.h b/tools/include/xen-tools/common-macros.h index d53b88182560..168691be0e93 100644 --- a/tools/include/xen-tools/common-macros.h +++ b/tools/include/xen-tools/common-macros.h @@ -73,6 +73,7 @@ #endif #define MASK_EXTR(v, m) (((v) & (m)) / ((m) & -(m))) +#define MASK_INSR(v, m) (((v) * ((m) & -(m))) & (m)) #ifndef __must_check #define __must_check __attribute__((__warn_unused_result__)) diff --git a/tools/libs/light/libxl_internal.h b/tools/libs/light/libxl_internal.h index 8aba3e138909..61f4fe1dec55 100644 --- a/tools/libs/light/libxl_internal.h +++ b/tools/libs/light/libxl_internal.h @@ -132,8 +132,6 @@ #define DIV_ROUNDUP(n, d) (((n) + (d) - 1) / (d)) -#define MASK_INSR(v, m) (((v) * ((m) & -(m))) & (m)) - #define LIBXL__LOGGING_ENABLED #ifdef LIBXL__LOGGING_ENABLED diff --git a/tools/tests/x86_emulator/x86-emulate.h b/tools/tests/x86_emulator/x86-emulate.h index de1f82668010..aa1ed75ec890 100644 --- a/tools/tests/x86_emulator/x86-emulate.h +++ b/tools/tests/x86_emulator/x86-emulate.h @@ -51,9 +51,6 @@ #define DEFINE_PER_CPU(type, var) type per_cpu_##var #define this_cpu(var) per_cpu_##var -#define MASK_EXTR(v, m) (((v) & (m)) / ((m) & -(m))) -#define MASK_INSR(v, m) (((v) * ((m) & -(m))) & (m)) - #define __init #define __maybe_unused __attribute__((__unused__)) -- 2.30.2 From xen-devel-bounces@lists.xenproject.org Fri Jun 09 10:12:38 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 09 Jun 2023 10:12:38 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545826.852425 (Exim 4.92) (envelope-from ) id 1q7Z6V-0000JU-VK; Fri, 09 Jun 2023 10:12:23 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545826.852425; Fri, 09 Jun 2023 10:12:23 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7Z6V-0000JN-S1; Fri, 09 Jun 2023 10:12:23 +0000 Received: by outflank-mailman (input) for mailman id 545826; Fri, 09 Jun 2023 10:12:23 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7Z6V-0000JD-3C for xen-devel@lists.xenproject.org; Fri, 09 Jun 2023 10:12:23 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7Z6S-0008UD-LY; Fri, 09 Jun 2023 10:12:20 +0000 Received: from 54-240-197-225.amazon.com ([54.240.197.225] helo=[192.168.17.204]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1q7Z6S-0002XU-FQ; Fri, 09 Jun 2023 10:12:20 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=cPDfQPTnC55FGcDPGvjRkjeY+j8UG3Uy9bOdGy7TU64=; b=1HFo160GRjrzcUHrjiAJm2udnf ozvpC6Yc+JW9NrNEPvy8sGhuvTU7WvVzVzTVeLBZKSPcYlgTppUPWhNZ8eLLkG9wePWbF/cihVhHS WuEXEBT65jTu2FZtDl2kNyzCTOrahIObAOwpSOxnup5LIUCYlKYqb9fp+ehE21IEWJ9s=; Message-ID: Date: Fri, 9 Jun 2023 11:12:18 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.11.2 Subject: Re: [PATCH 2/3] xen/ppc: Implement early serial printk on PaPR/pseries Content-Language: en-US To: Andrew Cooper , Jan Beulich Cc: tpearson@raptorengineering.com, George Dunlap , Stefano Stabellini , Wei Liu , Shawn Anastasio , xen-devel@lists.xenproject.org, Shawn Anastasio References: <0c0a19de-dde3-8b98-4354-6d3d2019179b@suse.com> <0b24d36b-adbc-9e7c-df6e-8754c269855d@citrix.com> <1c35f696-5a65-06da-8af5-685b8ad2e849@xen.org> From: Julien Grall In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Hi Andrew, On 09/06/2023 10:54, Andrew Cooper wrote: > On 09/06/2023 10:46 am, Julien Grall wrote: >> On 09/06/2023 10:43, Andrew Cooper wrote: >>> On 09/06/2023 10:38 am, Jan Beulich wrote: >>>> On 09.06.2023 11:29, Andrew Cooper wrote: >>>>> On 09/06/2023 10:22 am, Jan Beulich wrote: >>>>>>> --- /dev/null >>>>>>> +++ b/xen/arch/ppc/boot_of.c >>>>>>> @@ -0,0 +1,122 @@ >>>>>>> +/* SPDX-License-Identifier: GPL-2.0-or-later */ >>>>>> By default we mean to use ... >>>>>> >>>>>>> --- /dev/null >>>>>>> +++ b/xen/arch/ppc/early_printk.c >>>>>>> @@ -0,0 +1,36 @@ >>>>>>> +/* SPDX-License-Identifier: GPL-2.0 */ >>>>>> ... the more modern form of this (GPL-2.0-only). Anything >>>>>> deviating from >>>>>> that may want justifying in the description. >>>>> GPL-2.0-or-later is fine. >>>> Hmm, I was merely following >>>> https://lists.xen.org/archives/html/xen-devel/2023-06/msg00415.html. >>>> The text at the top of ./COPYING looks to suggest -only, and I'm >>>> unaware of any other place where our default is actually written down. >>> >>> The license is chosen by the submitter/copyright holder, based on their >>> preferences/wishes. >>> >>> It's fine for Xen to say "if you've got no vested interest, we recommend >>> GPL-2.0-only", but that is strictly a recommendation and no more. >>> >>> If the submitter chooses GPL-2.0-or-later, that is their prerogative. >>> We have plenty of GPL-2.0-or-later code in Xen. >> >> From my past experience, the submitters tend to just copy the license >> from an existing file in Xen rather than explicitly choosing it. So I >> think it is fair to ask the question because our original and default >> license is GPLv2 nor GPLv2+. > > Did you read the bit in the cover letter about part of this code being > derived from the out-of-tree port years ago? Yes I read it... But I didn't check the original license and ... > > You're blindly assuming that there is even a choice of license available > to be used. ... I didn't assume anything here. I made a generic statement because your e-mail lead to think that all the submitter made a conscious decision. Note that, from past discussion, we agreed that it would be fine to re-license from gplv2+ to gplv2-only without requesting the original author. So technically there is a choice. As a side note, "blindly" is not very inclusive. We may have different view, but it doesn't mean yours is better than mine (and vice-versa). You could have express your opinion without saying "blindly" and it would have come across less rude. > The submitter chooses the license to use.  You can request that they > justify it, but you cannot demand that they change it. Strictly speaking we can refuse any code. That count for license as well. Anyway, I didn't request a change here. I merely pointed out that any use of GPLv2+ should be justified because on Arm most of the people don't pay attention on the license and pick the one from an existing file. Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Fri Jun 09 10:12:38 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 09 Jun 2023 10:12:38 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545827.852435 (Exim 4.92) (envelope-from ) id 1q7Z6c-0000ay-5m; Fri, 09 Jun 2023 10:12:30 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545827.852435; Fri, 09 Jun 2023 10:12:30 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7Z6c-0000ar-30; Fri, 09 Jun 2023 10:12:30 +0000 Received: by outflank-mailman (input) for mailman id 545827; Fri, 09 Jun 2023 10:12:28 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7Z6a-0000aA-MO for xen-devel@lists.xenproject.org; Fri, 09 Jun 2023 10:12:28 +0000 Received: from NAM11-BN8-obe.outbound.protection.outlook.com (mail-bn8nam11on20601.outbound.protection.outlook.com [2a01:111:f400:7eae::601]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 213c7b5b-06ae-11ee-8611-37d641c3527e; Fri, 09 Jun 2023 12:12:25 +0200 (CEST) Received: from SA0PR11CA0038.namprd11.prod.outlook.com (2603:10b6:806:d0::13) by DS7PR12MB5717.namprd12.prod.outlook.com (2603:10b6:8:70::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Fri, 9 Jun 2023 10:12:22 +0000 Received: from SN1PEPF0002636A.namprd02.prod.outlook.com (2603:10b6:806:d0:cafe::74) by SA0PR11CA0038.outlook.office365.com (2603:10b6:806:d0::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.26 via Frontend Transport; Fri, 9 Jun 2023 10:12:24 +0000 Received: from SATLEXMB03.amd.com (165.204.84.17) by SN1PEPF0002636A.mail.protection.outlook.com (10.167.241.135) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6477.24 via Frontend Transport; Fri, 9 Jun 2023 10:12:21 +0000 Received: from SATLEXMB05.amd.com (10.181.40.146) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Fri, 9 Jun 2023 05:12:21 -0500 Received: from SATLEXMB04.amd.com (10.181.40.145) by SATLEXMB05.amd.com (10.181.40.146) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Fri, 9 Jun 2023 05:12:20 -0500 Received: from [10.71.193.39] (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server id 15.1.2375.34 via Frontend Transport; Fri, 9 Jun 2023 05:12:19 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 213c7b5b-06ae-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=XGwUpvVcvQBvl/O+Qgm0Ju0defp3B4/rADO4cCIPclq2jrWuSZ29eRp65KgrNOqPC+xkpdyCiAyTbDrcszaklYTSxdM5AkuvNBZOUD7bLy8tYJ6aqHqgtjJSBmXtA3LsZstdTm4xHrJzcl1gQROUfYJcyCerigwGGtZUKQAYZ7iWGTc6mi6icJguZ8B76CPOJubCOpY1o4gdqyWVQFOwo3+3q33QxcI0pK5fF2qMkfgI6zeKBBn5sOY8VL79jPe4EemAuSF41y6Fd1p4P1BKw52qDSMzJ6qv7aJZ3VOiER8a5tU8cJDhKHM4W5+GcwKU5/VBHqxpXleEuqnrVHKSJQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=LYwscvVKSm378Zqb4KQqIVqGUwWHCkp1VBCCXv4bPGE=; b=c+FEGfJk7itqh5mf5NQtVq25eTKLXJf8yElqvPQwjlWGveAPrWIpRCljnEOvCtnzNX7gwhfAl9sEzBdadYrGs2JRwToDdyq+fE9/FRy4Uy2e4Cj10fcTcd/cbnhMpuCjPma7Ymfrl98CfzSLvliSgNH1v6NGc7HcFklxgwf//gQsxNfUAQnv+ss/QJbTe/3kPYaXnyc/CQ7slhzHreeoHcl3okaHvsTDkFn0MRjCGlNyOnwmqSelOXk7boUMcN7dTOrGywlRYM3xE+aBztOMtLr2TjtVcSNZu5nJ/diPzAdtPCflmk9JlULg7UeTHP3/587mN6ldSklZioO6WqAK6A== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=suse.com smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=LYwscvVKSm378Zqb4KQqIVqGUwWHCkp1VBCCXv4bPGE=; b=F9OPl2zUEBdyyWxFJI+BdBBuYNJEgMgm8Zit/J6D2XICsjHiv9sMaiuan30zxNPtHRqu69uc4dw8/3N89XovsUS1iEWgvIcc1kXFy7NhS+04I3iCTNseQZSWpYxEDTEilKJE/35DJ2PgP3GFy6JhLgAY6EwZuea8k0vxvqgdpfo= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C Message-ID: <95de848c-8bcb-c16c-b196-d979f1ce0db2@amd.com> Date: Fri, 9 Jun 2023 12:12:19 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: Xen reliance on non-standard GCC features Content-Language: en-US To: Jan Beulich CC: Stefano Stabellini , "xen-devel@lists.xenproject.org" , "consulting@bugseng.com" , Roberto Bagnara References: <1cd359e7-5245-a621-3be2-9323ba5b327b@bugseng.com> <8314e0fc-4ead-40fa-ef7b-4da8ce0655b4@suse.com> <80a512ac-d90e-930a-7ef7-8ebb5a80e801@bugseng.com> <968ba799-8fe4-e22f-b678-64e52f789026@suse.com> <9df8560d-4b06-2ab4-b09a-30241dd19676@cs.unipr.it> <4f5e33e7-9606-2cc7-79ec-c03cc724b6c6@suse.com> <8efd91fd-bb36-9073-654f-fef32d0da443@amd.com> <13d13f3a-26b7-ea99-8ba3-f868cee1e3ac@suse.com> From: Michal Orzel In-Reply-To: <13d13f3a-26b7-ea99-8ba3-f868cee1e3ac@suse.com> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SN1PEPF0002636A:EE_|DS7PR12MB5717:EE_ X-MS-Office365-Filtering-Correlation-Id: cc175d60-b372-4c39-6dff-08db68d2038f X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: u40rBlVMZv2YCSwqU+lR3webGlnVNtzXvheq+cc+TEEPhJ5s6mE8bkO/5qgNmbAF0GjqvKF+sOC0yFBL09SdDpt5NM6RsiVkms6XPURO8qjDtg2fkaouNxJyVtV4Eht+wK9Wys6Iceuiw805qA16JF/557FiBplfLXNNARo7DErYGuQUE635phvqiFIp7YC3Ego8m9NmXPAPbOryce8+vsrFyWv3FC+ugOOKUcch0clckMFse0W/prQfPjzbuC6dbJEq3P5LO9BO1AHzCDTW6QEjTc9ePS9hybUrYLEbSHfwRTMfrLsOoZD6zxcHeMSjsud75WU+qdxhfioI/BRVwRFEycZlwNZau7XxHKKZBwrC5sSJfQXIjN4ha0kv9vmcgaLLOrRubaclk8Zs1AL21yAauE9wDbBXPLiMCOuSu+CCTZL3OVCr6oCeUQc+EsMmR+x/T/XxIlR5wMEVoOlqTfgaPSfOiO5gFachnHcHgwmyZ/MZ7xY6IB0oykLmagj87v9zO/yipYohDfqoFT9udwi2IyxrPuHQAlH6XcfFPE8RxfuXnURwrdbqckvFwZ1B7p8bgLxf2l1Gce6kWhqrGyAQ7V8i7OfQKierN9fSTJRzMSxwP9EyP8wsoxBWtD7o9lZZhaOqVooIEkGs8wJWX5cr9V7Ab0oNRctLvW/D1G3fu45b5YDkS5OY11QQ51tprD1PKp3Kd5Kf//AJz+cuCfHz6b9n58F4f2UxMa8EZdP4C0hHe6xBSgJN3XVqHbQZgotxHx5Q4sSRL5LKeH7EHfH8mic6fOdAz4B6fv0uwA8pGVRFfeEIbOvPdpqlVcuS X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(376002)(346002)(396003)(39860400002)(136003)(451199021)(40470700004)(36840700001)(46966006)(70586007)(81166007)(2906002)(82740400003)(356005)(70206006)(16576012)(54906003)(44832011)(8676002)(5660300002)(36756003)(86362001)(8936002)(31696002)(6916009)(4326008)(316002)(40480700001)(478600001)(41300700001)(40460700003)(336012)(2616005)(82310400005)(26005)(53546011)(186003)(426003)(31686004)(36860700001)(83380400001)(47076005)(36900700001)(43740500002);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Jun 2023 10:12:21.4428 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: cc175d60-b372-4c39-6dff-08db68d2038f X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com] X-MS-Exchange-CrossTenant-AuthSource: SN1PEPF0002636A.namprd02.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR12MB5717 On 09/06/2023 11:47, Jan Beulich wrote: > > > On 09.06.2023 11:36, Michal Orzel wrote: >> On 09/06/2023 10:54, Jan Beulich wrote: >>> On 08.06.2023 14:18, Roberto Bagnara wrote: >>>> On 07/06/23 09:39, Jan Beulich wrote: >>>>> On 05.06.2023 15:26, Roberto Bagnara wrote: >>>>>> On 05/06/23 11:28, Jan Beulich wrote: >>>>>>> On 05.06.2023 07:28, Roberto Bagnara wrote: >>>>>>>> U6) Empty declarations. >>>>>> >>>>>> Examples: >>>>>> >>>>>> xen/arch/arm/arm64/lib/find_next_bit.c:57.29: >>>>>> empty declaration (ill-formed for the C99 standard, ISO/IEC 9899:1999 Section 6.7: "An empty declaration." [STD.emptdecl]). Tool used is `/usr/bin/aarch64-linux-gnu-gcc-12' >>>>>> >>>>>> xen/arch/arm/arm64/lib/find_next_bit.c:103.34: >>>>>> empty declaration (ill-formed for the C99 standard, ISO/IEC 9899:1999 Section 6.7: "An empty declaration." [STD.emptdecl]). Tool used is `/usr/bin/aarch64-linux-gnu-gcc-12' >>>>> >>>>> Looks like these could be taken care of by finally purging our >>>>> EXPORT_SYMBOL() stub. >>>>> >>>>>> xen/arch/arm/include/asm/vreg.h:143.26: >>>>>> empty declaration (ill-formed for the C99 standard, ISO/IEC 9899:1999 Section 6.7: "An empty declaration." [STD.emptdecl]). Tool used is `/usr/bin/aarch64-linux-gnu-gcc-12' >>>>>> >>>>>> xen/arch/arm/include/asm/vreg.h:144.26: >>>>>> empty declaration (ill-formed for the C99 standard, ISO/IEC 9899:1999 Section 6.7: "An empty declaration." [STD.emptdecl]). Tool used is `/usr/bin/aarch64-linux-gnu-gcc-12' >>>>> >>>>> I'm having trouble spotting anything suspicious there. >>>> >>>> The macro expands to definitions of inline functions >>>> and after the macro invocation there is a ";". >>>> >>>> The preprocessed code is then: >>>> >>>> static inline void foo() { ... } >>>> ; >>>> >>>> where the final ";" is an empty declaration not allowed by >>>> the C99 language standard. >>> >>> Oh, I see. >>> >>>> Removing the ";" after the macro invocation is a possible solution, >>>> but other possibilities exist if this is strongly unwanted. >>> >>> We have other macros to instantiate functions, and there no stray >>> semicolons are used. I think this wants doing the same way here, but it >>> being Arm code the ultimate say is with the Arm maintainers. >> Apart from vreg.h the same applies to TLB_HELPER of arm32/arm64. >> I think also TYPE_SAFE would want to be fixed. > > Indeed. For this last one I wonder though whether it wouldn't be better > to continue to permit (really: require) the semicolon at the use sites, > by putting the typedef-s last and omitting the semicolon in the macro > definitions. This would be an error I think since the functions are defined using this type so it must be defined first. Unless there is a way to forward typedef. All in all, removing semicolon at use sites is simpler. ~Michal From xen-devel-bounces@lists.xenproject.org Fri Jun 09 10:14:08 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 09 Jun 2023 10:14:08 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545836.852445 (Exim 4.92) (envelope-from ) id 1q7Z81-0001Si-Je; Fri, 09 Jun 2023 10:13:57 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545836.852445; Fri, 09 Jun 2023 10:13:57 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7Z81-0001Sb-FX; Fri, 09 Jun 2023 10:13:57 +0000 Received: by outflank-mailman (input) for mailman id 545836; Fri, 09 Jun 2023 10:13:56 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7Z80-0001ST-1V for xen-devel@lists.xenproject.org; Fri, 09 Jun 2023 10:13:56 +0000 Received: from esa5.hc3370-68.iphmx.com (esa5.hc3370-68.iphmx.com [216.71.155.168]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 54b73a94-06ae-11ee-8611-37d641c3527e; Fri, 09 Jun 2023 12:13:52 +0200 (CEST) Received: from mail-dm3nam02lp2040.outbound.protection.outlook.com (HELO NAM02-DM3-obe.outbound.protection.outlook.com) ([104.47.56.40]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 09 Jun 2023 06:13:47 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by SJ0PR03MB5391.namprd03.prod.outlook.com (2603:10b6:a03:287::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.38; Fri, 9 Jun 2023 10:13:42 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606%4]) with mapi id 15.20.6455.030; Fri, 9 Jun 2023 10:13:42 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 54b73a94-06ae-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686305633; h=message-id:date:from:subject:to:cc:references: in-reply-to:content-transfer-encoding:mime-version; bh=LVO6Ve5cTySLZSAkPlvkrNAtq3RsdHk65R1hUZNp46M=; b=WGHK1JiFGGOf4LztCIkYZ67it69I+CVqgpYY3uc2X0XTVh3KF8Iy+1AR gM91SfOoLV5au4vTLVKc0+6QcsL3MQMGILRQfILJHyV9fZRGqj65CTyY5 1Jagu2f+tEczgfkLkYL5JklxtMAhRl6fqF7mo0ebIeSSQ3hboXJZxNOa2 I=; X-IronPort-RemoteIP: 104.47.56.40 X-IronPort-MID: 110940934 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:yLm7IqrYMaTqoNpann96V7cbhydeBmLSZBIvgKrLsJaIsI4StFCzt garIBmOOPiLY2H0eN5+bITi90oG7JHWyNBqHQFv/C80H3sT8ZuZCYyVIHmrMnLJJKUvbq7FA +Y2MYCccZ9uHhcwgj/3b9ANeFEljfngqoLUUbKCYWYpA1c/Ek/NsDo788YhmIlknNOlNA2Ev NL2sqX3NUSsnjV5KQr40YrawP9UlKq04GtwUmAWP6gR5weAzylNV/rzGInqR5fGatgMdgKFb 76rIIGRpgvx4xorA9W5pbf3GmVirmn6ZFXmZtJ+AsBOszAazsAA+v9T2Mk0MC+7vw6hjdFpo OihgLTrIesf0g8gr8xGO/VQO3kW0aSrY9YrK1Dn2SCY5xWun3cBX5yCpaz5VGEV0r8fPI1Ay RAXABwvLR6BqOK1/Jy2b9F0q9ogL5jlP5xK7xmMzRmBZRonabbqZv2QoPN9h3I3jM0IGuvCb c0EbzYpdA7HfxBEJlYQDtQ5gfusgX78NTZfrTp5p4JuuzSVkFM3jearbIK9lt+iHK25mm6xo G7c8nu/KRYdLNGFkhKO8262h/+JliT+MG4XPOThrq822AzImgT/DjU3UGTn8Lqp1ne9QuoYN 2sP8BcBkrkLoRnDot7VGkfQTGS/lg4RXZ9cHvM37CmJy7HI+ECJC24cVDlDZdc68sgsSlQC1 FCTmMjyLSdyq7DTQnWYnp+QsDi7fyYcK2QPYSsZZQIf5p/op4RbpjDlQ8tnEaW1psboAjy2y DePxAAhg50DgMhN0L+0lW0rmBqpr5nNCwIwvQPeWzr/6hsjPNL9IYu19VLc8PBMap6DSUWMt 2QFnM7Y6/0SCZaKl2qGR+Bl8KyV2stp+Qb02TZHd6TNPRz0k5J/Vei8OA1DGXo= IronPort-HdrOrdr: A9a23:dGyRpKg6O24cU9oRVdD85BpO8nBQXmEji2hC6mlwRA09TyVXra GTdZMgpHnJYVcqKRYdcLW7UpVoLkmwyXcY2+Us1PKZLWrbUIXBFvAf0WKg+UycJ8XGntQtqp uICpIOduEYb2IbsS+K2njdLz96+qj/zEnAv463pEuFDzsaCZ2IiT0XNu/xKDwSeOApP/QE/b Onl7t6jgvlV3QLT9ixQkIIV/LEoLTw5ejbSC9DKR47yRWEyQil4r7iExSew34lIkhy6IZn32 jZshDzop6uufGjyhPayiv64plMlMH6o+EzdPCku4w6KijMlg3tXohnVrGY1QpF2N2S1A== X-Talos-CUID: 9a23:Hw8gc2FC2EvLXUi6qmJL1g0aGO8lcUHzwVLoO2KmCmU4Rr6KHAo= X-Talos-MUID: 9a23:pDgesAtAF1aBTOp0VM2npTRdaJYr8/iXC1k11okhoMO5GhNhAmLI X-IronPort-AV: E=Sophos;i="6.00,228,1681185600"; d="scan'208";a="110940934" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=aYD1Dh7YAdiVSNpNT5TfMPNSbKA2r6Lfqz0UQJfxVYIBC2NB6B2lXneD4Cqfv9cq5VTA1ppWQdToFxDCzSyj0CBzDjpuI7ynWXgizaZ4XWKRLaSamOR49mvN5wcRj7UTm7syAayNzMlg5U3K7URzo9HDGLpdUGyi7DXthweeQr8kYsxU8xE9S7+lhtJcqefod/XcMAMCgwIrDq3klrJqGzVtQiBk2Jgenz8Iuj255mnR97Sqxi0SXQMUvY5u/knwq+fMY0CMSiCo03rsrGYjgazlR9wrBmEyoh64CutBAvxOexdpLmUzOjCkUNrhIs9nkcdoDlbrqcVu0drXvOSSNg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=Ul/fQ4UrBZ+wAke+ySmgGeM8anjZv5AWRY7n6/qNx/0=; b=jcAUpwV9ZTJIO5kj7KARHStpBXXDYcDGdqGS3Npd2hcupqWkSJbTWi5NSrMDnRTOT6ArM+tGe4CQgHQvpxZqCvfh36n0EKjMV/dihUhFDvL+t+oDwffm+2rbIPT343XQXR1gaphjDcEkmINi4zQKxFStYJXKkrEQtdQwLOsgrSrq6l7yY2tSML4LsQ7tE5GBXcnNNtMrECUaJ1YyszmkKdXCPIX3nU5hpuMVeCz2aHQgO/CKCi5XyX2cp6dFIJi5kcgHTfmjpy34SqNg97hqpSdGSYuW/4tuIbGPOG0O9w9r0GwXuzgMM/iKIlMscHS6o6/bqFtrR7uowIdZ1F5xPg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Ul/fQ4UrBZ+wAke+ySmgGeM8anjZv5AWRY7n6/qNx/0=; b=IaoYGlwNxClymf41oBfzxisryrFsgWVmIPehhMlX+8djKOXPU50kZ3QJM+fF0XlfwMk8KolsLYTd+R97S61hPKVQCwMRElFqGw3xgO+FmJLeTrr+RV6NLY43TC9T6OdEydWKbvMn3PjfG4yCAzJJbiO3pc0zbUa/RYlIKrgGKqM= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: <37ec54d8-02f3-206a-56a2-1af59d19bf82@citrix.com> Date: Fri, 9 Jun 2023 11:13:36 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 From: Andrew Cooper Subject: Re: [PATCH v2] tools: Move MASK_INSR to common-macros.h Content-Language: en-GB To: Xen-devel Cc: Anthony PERARD , Juergen Gross , Luca Fancellu , Jan Beulich , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu References: <20230609101105.2585951-1-andrew.cooper3@citrix.com> In-Reply-To: <20230609101105.2585951-1-andrew.cooper3@citrix.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO3P265CA0027.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:387::17) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|SJ0PR03MB5391:EE_ X-MS-Office365-Filtering-Correlation-Id: de5d2dc8-2302-4599-979b-08db68d233a8 X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: HvFtARBfH5Ex+mn2rCEv9SRlXrf/X9tkGVgyYKzAzjwdKN2d7Z1c4U2aFEYEEtvdk8dH+x1rxkzjTV4cfXxon1gbyCM1gq870KbbVr2Gc2VT36Rhnf+PguWbJSyqc9P/rmU6fWcTC+hijgxHIPzS5Bgv9goe5xeQEiDdQx9lgfP8Z9YkofU11DaK1vpwEfXiqZ2NUqkxkeDKqvSr+ZPcKVts4ahipKkKodYID9n5ujtAxMzuByxYXfrPtmjRNDcdCaK51uFpyBsLUh4jBnfBIQ7G8RdItOz5IlAmQoxUVeCA7f9WHHuCjVC/wDhx5a08vwR8xn84OEN4LDwb3I6FZVXCTQsgDHEk5zDIUK2Cg8tGK91jUugCPX50JfYYexv2BMOo+TDuN+jsrDkeO6M0Vy6yOBWFU2rMzf4KsW4n+ZrJpgEJ2tPwezoGWRgSscJU+QH9qbpicy77UEf93mXcb/2Akxnqym7rTssNHoYqaLt7uPqkZsTB5/sdkvbDMlHJucrHxDehDTjCcd2bhRWv/nU3G0mgnb7dNo7/HgwjlZ2zmQw4uiFqfrUcFjupNV6lTSA8JSg4OL/CdMJZHYYDPUN/cElUaQrXFT9fGgqQb4ct3B6Uuw6GKJPWSwVxkMyLxJtGKvkFpSjciur4piVlYQ== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(346002)(366004)(396003)(376002)(136003)(39860400002)(451199021)(8936002)(66556008)(66946007)(66476007)(2906002)(8676002)(41300700001)(5660300002)(478600001)(4326008)(6916009)(6666004)(6486002)(31686004)(54906003)(316002)(53546011)(6506007)(26005)(186003)(6512007)(2616005)(82960400001)(83380400001)(36756003)(38100700002)(86362001)(31696002)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?VjJlNEJEUTh4RnNZZHBGSzMwTkFHZ1VMZlB0Q1VOa3NVZS9PRnZidHlhRGR2?= =?utf-8?B?cGlwa1hzQjRuOTROVjg3NDVqeXFxYWNBTmxXaVRwUGZOWktuWGhXd3pGT2kw?= =?utf-8?B?WXV2ZXZ5eFhBbDNydUlWV1QzbThxK1BUWmFTc2x1d094c2hYTEM2ZWJlaXpq?= =?utf-8?B?cXB2dDZseDRReFZRaXhqRytjOFdCSVdRY2dycTc1dEdJU2E3RElyQjdQa1B4?= =?utf-8?B?RWNaM2YyL01TVjRHOFEyK05uQS9CbVNZYjdjdGFDT3crMnUyVDZkdTd3cmc3?= =?utf-8?B?UmJTNXZjdHhtWS8xM1hML1pvMkw0dmRTN0o4amhvTHc0UGErZk5pOUFxWGZy?= =?utf-8?B?ZWIrOTl4UHowMG5qUW8yN013QUJQY3ZMVkJ5Uk9YdWZIMjVmUVB5Si8rZW9N?= =?utf-8?B?RzVsVVo3bW10QmFRaXh2dmxKL1BYZHVzNmFkbERuRk0wT1hGcVl5cmNvUUQx?= =?utf-8?B?UVZxcXZ6TEpqQUJ4VXhwckZudUVIcld2M05OKzErQ0RXaWRWcGpWOEp0a3I4?= =?utf-8?B?MEFvT0RMU1VvVHJqSVlNWkY4WW5YbUgzZ2t2c3hXMjlKR3ZPTXI4cFFZRito?= =?utf-8?B?akJpcXN2R0plVldJLzRhNHJCZE1mMTd6ZjJsZmt2K0pSamRLZW1vc2FHUzlM?= =?utf-8?B?cHdIRjk0V3BNdWJBeFpMeWtuaGJDT3JhLytQWjZWSnU3Uys5OUF6cnlWR0d1?= =?utf-8?B?b1FxeWhjMkJBUytkREpBZXRiWUVwaC9HNkVMUWdzSFRUMGtZSEh4UWFCcENF?= =?utf-8?B?OTlyaFdDMnBocDJ6ajdjV0MrWlZ1ZThFeVB5MlIvREMxRXQxd2JhVHlIemVC?= =?utf-8?B?a1dsOHNPUlVPTDdqZHhmWnozcTVYcGdxMWxYU1pDNUEyRnNGMXNaRXpyR3RN?= =?utf-8?B?WGVOWVZ4UU4yRFJ4WE1QMW9FNFJQcElueGRyVTdGakRnNUhsT0lkSFF0NDdu?= =?utf-8?B?UkxJcCtRbHdmQ3lGN0NBNXN6czdnekZBRWNlemplZ0Z1OUJ0RXR3c3BJajN2?= =?utf-8?B?eExjREZZZTBDQ3JGYUk4dWIvZ0MrYjQ3TFJQelhuNFgweS9uaVhVRG1sRzdJ?= =?utf-8?B?dWpkTmhlejlPZHRpWDlJc2M3bGdYdWliRkhtTlZud2U0a3JCTFp6MW9TQS9E?= =?utf-8?B?UUVvY0t1NU1ZUUpmWExqWmRDZ2gzUHR1VXhRVzA0RmU3enlwTjhjbktGVk0x?= =?utf-8?B?QVB5Uk1MUWRMMU9TU1V2NUFUaCtERTBJYjUza3MwcUsySGZ2TUZJNjd5ZlFt?= =?utf-8?B?emxVMXY3aVlPMEdxYXM5TzUvWnptdWEzSGU3V0tWbkRQUWdBdGJHNVFEeUdV?= =?utf-8?B?azJNalNySW54cjRpdWp1ZDIwdFM1RTVRc3d2bXNxazBaWUJSMGsyRjNUYTdj?= =?utf-8?B?Qk51eEl2MUt6akFzWDAyMDU3aytMemZ6dzJIc2piQjk4Sm90OEFKaVlHRCsv?= =?utf-8?B?ZEROU2Q2Z1V6Wmg0Yyt5Q2VFYVhSb3Z4QmtWZTY5WGZialVnUTNBdFJvcjlJ?= =?utf-8?B?bUZibzNxSWVrZG1wd3JxNXhpWHpFelc3RVBOaU1EUVZOVXkrUVpjMHlTZHo4?= =?utf-8?B?bFBiZ2VidEZGdGxWenFwcTNSWDZUaDJYM1dZMUh0eUxCWUIrbE9aQ0JjRm5G?= =?utf-8?B?TmRvVmdmT21La0JYZlEzL0VEUlNockhWZXJLRFA4alBieG55WEpKV1I1ZWxP?= =?utf-8?B?ZlVmaE16Y0ZHYzE2Y1hQOWdUWC9MSi9lcFd0blQ5SlQ0TTV1MUlRZm1xT2c0?= =?utf-8?B?dUVjN0VnKzkzQ2YyRHVyRGVTOFhWWS9lL1FMb3hKaGM3SlNHTjgyV1NtdDRL?= =?utf-8?B?aUhQUUZCdG9yam9GUi9PZnlVZFNGUkRlOG1wbnNrZVBSY1ZpSFVoV2dSQ2Qx?= =?utf-8?B?alZsSm1RdXBXSHNzZ0hVekhOSnpnL0pwRlpTZm1TRHRsYzNpQmszV2JmSzA4?= =?utf-8?B?NnZQbjEvMzBQUVVLZEExaHZKTTROb1RGZlJrZVVzSDJNQVc0QlFjOVhocm4x?= =?utf-8?B?MGF3eXdZTldSKzRoM0t2b0JQb0hHZnpZektnTW9VdDgwNnVGSFlMa1JOWnFZ?= =?utf-8?B?VlVUc3R4b3czd1lCVU1sQVY3cEwwaVRZb3diZ2RlOVNyWDJqZk4xMlpITzFQ?= =?utf-8?B?WVJJUExFOTJJaThEdk9QNE80cWxnNm9wWkZuNllMSjY1OTZLNUZobTJqNTJp?= =?utf-8?B?Zmc9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: 1p2yI3uU0tPpZKrMM7Bw5gyxRyUP7xIyqk5ImuVz8aV1N8Kztu/y9eA/lQUBqc31vG3e65M1LnqEVjBXUzVu60zdKdKHmd9PJHy6X9NoJ4klhXqNmFluvtW8ndqnSkwN21B8TvY0HYiusoMHWzl61RU+mn1KUE7dkCjqiSEEvkbEwFTJEYeE/iNqYRo7+/eKeXpkd1rLjM3VOTwklmS2SXfGZOUCO4mpeVnGPPR5kNrNhjw4/603SqYMVgcS1qr3efY1b1FxPt7AQkbPDUgM8alp+kWY7Op+T6KkWkQUbyn11VAzO+eLZPWU0TFQ8AAXlbikrxDotRzouih7sBkCX2fiKJXoLHeO2PRnFeSGUGcG2I05V0E/HrDYmygLhRbCX5ee1fzqbrGMyYPhiXrRPzZImEK1g9mi1vPtjLlIkF6QeZatZiH6m7d3+i0YzzldT9igjnpdiLk0d0NjR88JKk4kDfuXskjbv/Khx58Dond63+e35ICD0Ycq4Mz+CfREzB4OVxomZkM/iFEfInRS2/YzppUJVsatI3EJHUAkT+qVFVZ3cseRAIo01yFCsEoqsBkThDcSw9GGRzifVF0xhXvgRqPs9vIT4fzITRAdJrRm30wua910TOcjZVbT9cLvAGesoFwnrbhFHjOXlw0j1cb6ufEgAOKdA88yt8Zegk/MPJYENNZyb0FR3dmLjQtWjsGGBqg4A9OfD2h208hYt7x+En/X/BjBIUjvbp6NdlPdGBxtjWHJxrJjbHtCqofwSyUzOlpK6qmmFPW7uj3coonVQKVY1O+RqxMH3ST8DHr4Msmkkmr9SLcAGL/ixBS6toJG8QVX61cszW+Rp6IXFw== X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: de5d2dc8-2302-4599-979b-08db68d233a8 X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Jun 2023 10:13:42.3548 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: t5FdzlDvJvJxAR9ryWQgnMrbsJMOcyk3vyr9jL6c0sXFDpSmg+qDz+nUVY47yyS4QZ/5E8TSVPWn+JU2QjcEjH0cc+YkbEszUrhbGWLiZPY= X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR03MB5391 Urgh, well I'm failing at email today.  This is v2.  Everything else in the patch is as intended. ~Andrew On 09/06/2023 11:11 am, Andrew Cooper wrote: > MASK_EXTR() and MASK_INSR() are a matching pair. Keep them together. > > Drop the pair from x86-emulate.h which includes common-macros.h. > > Fixes: 56a7aaa16bfe ("tools: add physinfo arch_capabilities handling for Arm") > Signed-off-by: Andrew Cooper > --- > CC: Anthony PERARD > CC: Juergen Gross > CC: Luca Fancellu > CC: Jan Beulich > CC: Roger Pau Monné > CC: Wei Liu > > v2: > * Drop from x86-emulate.h too. > --- > tools/include/xen-tools/common-macros.h | 1 + > tools/libs/light/libxl_internal.h | 2 -- > tools/tests/x86_emulator/x86-emulate.h | 3 --- > 3 files changed, 1 insertion(+), 5 deletions(-) > > diff --git a/tools/include/xen-tools/common-macros.h b/tools/include/xen-tools/common-macros.h > index d53b88182560..168691be0e93 100644 > --- a/tools/include/xen-tools/common-macros.h > +++ b/tools/include/xen-tools/common-macros.h > @@ -73,6 +73,7 @@ > #endif > > #define MASK_EXTR(v, m) (((v) & (m)) / ((m) & -(m))) > +#define MASK_INSR(v, m) (((v) * ((m) & -(m))) & (m)) > > #ifndef __must_check > #define __must_check __attribute__((__warn_unused_result__)) > diff --git a/tools/libs/light/libxl_internal.h b/tools/libs/light/libxl_internal.h > index 8aba3e138909..61f4fe1dec55 100644 > --- a/tools/libs/light/libxl_internal.h > +++ b/tools/libs/light/libxl_internal.h > @@ -132,8 +132,6 @@ > > #define DIV_ROUNDUP(n, d) (((n) + (d) - 1) / (d)) > > -#define MASK_INSR(v, m) (((v) * ((m) & -(m))) & (m)) > - > #define LIBXL__LOGGING_ENABLED > > #ifdef LIBXL__LOGGING_ENABLED > diff --git a/tools/tests/x86_emulator/x86-emulate.h b/tools/tests/x86_emulator/x86-emulate.h > index de1f82668010..aa1ed75ec890 100644 > --- a/tools/tests/x86_emulator/x86-emulate.h > +++ b/tools/tests/x86_emulator/x86-emulate.h > @@ -51,9 +51,6 @@ > #define DEFINE_PER_CPU(type, var) type per_cpu_##var > #define this_cpu(var) per_cpu_##var > > -#define MASK_EXTR(v, m) (((v) & (m)) / ((m) & -(m))) > -#define MASK_INSR(v, m) (((v) * ((m) & -(m))) & (m)) > - > #define __init > #define __maybe_unused __attribute__((__unused__)) > From xen-devel-bounces@lists.xenproject.org Fri Jun 09 10:23:04 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 09 Jun 2023 10:23:04 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545845.852461 (Exim 4.92) (envelope-from ) id 1q7ZGc-00033p-Jb; Fri, 09 Jun 2023 10:22:50 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545845.852461; Fri, 09 Jun 2023 10:22:50 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7ZGc-00033i-Gd; Fri, 09 Jun 2023 10:22:50 +0000 Received: by outflank-mailman (input) for mailman id 545845; Fri, 09 Jun 2023 10:22:48 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7ZGa-00033a-Dc for xen-devel@lists.xenproject.org; Fri, 09 Jun 2023 10:22:48 +0000 Received: from EUR04-DB3-obe.outbound.protection.outlook.com (mail-db3eur04on060c.outbound.protection.outlook.com [2a01:111:f400:fe0c::60c]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 932dca7b-06af-11ee-b232-6b7b168915f2; Fri, 09 Jun 2023 12:22:45 +0200 (CEST) Received: from DUZPR01CA0024.eurprd01.prod.exchangelabs.com (2603:10a6:10:46b::11) by DBAPR08MB5589.eurprd08.prod.outlook.com (2603:10a6:10:1a2::23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.39; Fri, 9 Jun 2023 10:22:42 +0000 Received: from DBAEUR03FT042.eop-EUR03.prod.protection.outlook.com (2603:10a6:10:46b:cafe::d9) by DUZPR01CA0024.outlook.office365.com (2603:10a6:10:46b::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.25 via Frontend Transport; Fri, 9 Jun 2023 10:22:42 +0000 Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by DBAEUR03FT042.mail.protection.outlook.com (100.127.142.143) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.26 via Frontend Transport; Fri, 9 Jun 2023 10:22:42 +0000 Received: ("Tessian outbound 99a3040377ca:v136"); Fri, 09 Jun 2023 10:22:42 +0000 Received: from 5410ba077d60.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 2F476C90-AF23-411F-B304-3F646160C3EA.1; Fri, 09 Jun 2023 10:22:34 +0000 Received: from EUR01-VE1-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 5410ba077d60.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Fri, 09 Jun 2023 10:22:34 +0000 Received: from AM6PR08MB3749.eurprd08.prod.outlook.com (2603:10a6:20b:8f::22) by DB9PR08MB6377.eurprd08.prod.outlook.com (2603:10a6:10:259::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Fri, 9 Jun 2023 10:22:32 +0000 Received: from AM6PR08MB3749.eurprd08.prod.outlook.com ([fe80::ed0b:5730:a1f9:577b]) by AM6PR08MB3749.eurprd08.prod.outlook.com ([fe80::ed0b:5730:a1f9:577b%4]) with mapi id 15.20.6455.037; Fri, 9 Jun 2023 10:22:32 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 932dca7b-06af-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=VEgxVGj/6Ts1+OXEIwG0zdMv408dRVj+MkNs94KIegY=; b=ITNMsGuIpnln2p0zybToKANg533APART6QXCkoH5IxW5IxMH6AVrhjSIV7P/mzKLrrqsAnsOFiOY+8mZki4tBhBmpu6a1OdNYeG/n+GD4xFE2wrsb+7SUzVhA93wiVdksqsjRAt+6ATO4sCpGpV4n5Kr+Xv7qUaban1A/+KWlRQ= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C X-CheckRecipientChecked: true X-CR-MTA-CID: 04539b9a38a8afe3 X-CR-MTA-TID: 64aa7808 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=PhVAhJRUsNCyvPYv/Q8LuyDTMFLnJAJCbiySIerzavSD67BZCMCxTlzv+dDhuXrSbTtAkvViFxeWmVJJYv3WdfERkfkCnaouhJM0yM6bzAf2aSM/VlPB8S0cyfMEBimFO1ulF//MYynNlyYjJ80+EKRp+Jy9V9L/uCzWr+2gz9fonBJbrpzYiSHomAMNNX0TDiJzTpWiLvr5g+JJehTF77T2PlNDtRUAxuBBnDA/qwGn5BBSLdKRxb5kMv2sj1Aw/dn1TdUWe+n+cgzXZHxy/H3yVA7czfsAzfMH1+IaZX2HgkmihHBcg5LiXBSTXJ6iFbnh0udOC0r9VoeE0ZwbQw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=VEgxVGj/6Ts1+OXEIwG0zdMv408dRVj+MkNs94KIegY=; b=JoalCeqfQ9gfUDPdrQqzQFEeJ17OLjzF3Tq84cOt+7WzvbzbCM6+qBxk+0shtYtF6c149wrmApdz6RE5F4RiEq4IPGvFLkhsWeCoxMV6dKfwUfinKn4EpV9aPsazZgAWo/lO/+ajSi38VFPrGZOCT71zV523tv0dsQe1K1osv1Ns5c+0IJtBrICqoAwvtBv9mGFSCC3tKrXBvCtnwB81nJglHcz8J3sATqaLs/yPt384DmjMnkCLvBR1ejwbbalP7NnKG5kHVIGL4guQ62ttPJOnmg9OXnswEyxNLyJo4xGPvZmi5PVemRb9bVdDoJjMA1bGC+X4jG3I0Ck8rvEOzA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=VEgxVGj/6Ts1+OXEIwG0zdMv408dRVj+MkNs94KIegY=; b=ITNMsGuIpnln2p0zybToKANg533APART6QXCkoH5IxW5IxMH6AVrhjSIV7P/mzKLrrqsAnsOFiOY+8mZki4tBhBmpu6a1OdNYeG/n+GD4xFE2wrsb+7SUzVhA93wiVdksqsjRAt+6ATO4sCpGpV4n5Kr+Xv7qUaban1A/+KWlRQ= From: Luca Fancellu To: Andrew Cooper CC: Xen-devel , Anthony PERARD , Juergen Gross , Jan Beulich , =?utf-8?B?Um9nZXIgUGF1IE1vbm7DqQ==?= , Wei Liu Subject: Re: [PATCH] tools: Move MASK_INSR to common-macros.h Thread-Topic: [PATCH] tools: Move MASK_INSR to common-macros.h Thread-Index: AQHZmrrAvvMQGZvR/EOn/oeFX1CtTq+CQxeA Date: Fri, 9 Jun 2023 10:22:32 +0000 Message-ID: References: <20230609101105.2585951-1-andrew.cooper3@citrix.com> In-Reply-To: <20230609101105.2585951-1-andrew.cooper3@citrix.com> Accept-Language: en-GB, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-mailer: Apple Mail (2.3731.600.7) Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-traffictypediagnostic: AM6PR08MB3749:EE_|DB9PR08MB6377:EE_|DBAEUR03FT042:EE_|DBAPR08MB5589:EE_ X-MS-Office365-Filtering-Correlation-Id: fde72a71-4023-42fa-6791-08db68d37574 x-checkrecipientrouted: true nodisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: 7J+RmnZnWZz+28yafLkIaw9oM7ybFcl0yt6h6l4GEPj50iFIUncY3tgFqfefQQv6eUDTnv3VL28Ihg5YZAhb7ykKHN6ON1off4GG44188F71ljF4615Oty12kTw4maa0CAlNGjIZBTEyUwK5furJ0ZWf42qf6Qe42FDwbRH0cRZcbYCJQdphjEwEdvQFCOmcz2vU75jTpbKp2tbTAL46ETo8SHP98pVMhHbZplb/6r2mCInmKGP+VpivmsY3N/37ePUOhyRsLw/ICZ9lyPc4H/le30BhnOgixOI58qSppGp1h9AhfjLo1Vjka9TUOS/O98XrF9TyrWew89YpfzHUB4UCxCMlEn3RcQdXmPKtcu0KsHQCx08KrExUi+4DOMzIILrCIlQS2eP0vvhaUe0x4Z2anNv5XXxWnLuvlzNMJmP7qkWODgqgSM2kokJCZ175vRK/DQrBW4m8l7MACMO8TIEOKvOFYqQ7lT5Z1gs7qeYj0oIF4BSc1aYM9U1ESAkELD3Or43oETIgAuldiU/vSr8E2rjW1dt4lo8HmEhhMENTlhc8YMfEwkcw+ooSZPFtMw7YcvII/gn7jsM4E9piJVML+WpkU+0AJkywBkdaFpLpQvkMG4Lkgca+FCZzL0DunwjOoJgnBSS3V3X7W1pNBQ== X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM6PR08MB3749.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(366004)(346002)(136003)(396003)(39860400002)(376002)(451199021)(83380400001)(5660300002)(122000001)(38100700002)(38070700005)(186003)(53546011)(6512007)(6506007)(26005)(2616005)(54906003)(2906002)(33656002)(71200400001)(478600001)(6486002)(8676002)(36756003)(66556008)(66476007)(91956017)(76116006)(6916009)(4326008)(8936002)(66946007)(86362001)(66446008)(41300700001)(316002)(64756008)(45980500001);DIR:OUT;SFP:1101; Content-Type: text/plain; charset="utf-8" Content-ID: <3D664FD96C72AE4D834F230AAFA56739@eurprd08.prod.outlook.com> Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR08MB6377 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: DBAEUR03FT042.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: 6202629f-59b7-45e4-d38e-08db68d36f8b X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: mltsPOk73QDBYPqYOVh5HWmQEJKdMi0coFTE6DZhYMp2S9rDau1E0ydi43UzbH36TwNiTU1Y40WHfFcMWTOr2w3h6WseBzKnrspKYGnfyUVeQqzfqjJ7CQnw4fVvu5sqKYuyJoLP+aHNl6ep/SpgI8nlLYBWH/GDB89I198CZvrbhxiKggUn8n8dROU7Ip+osn/PHQGmqg75hmz/hhm6rTE7ynUcJM3sc/UiHP639Hnxo8Le3z07xiGl+gHkxRstCSeUw8gs+9hHVfquDbpmcecYXIoS6zCI3j2ofzBD7BTE2N9ZGllX8OOjkbi8d8AOHxkQcSewHFSNCfWqMkAipUpX4LjJIFSbExkB6d9CsdJXhYoheWTzgIKs2cFYJn51KOaNVOxGylgTGMZ3JmJN7zbd4ZYi3Blri6pW3GR8BdtpUZuQeQxNITvFGZMZcsDOW+ntCDWt1IgTmDzLh1MviT6tWx/ktWt9K/1tMkwbb0fdSuzM9JqVNB+hs9oU+q187k5CF8nto1LlA7e9hO7HS4pijfbD3+qceBq4R8sOprXev6neC64ijaqjEUFLPAqtgOIvAAiWGH9wCOk4wpKFpna+Soi+ixetJZAL25DVqSb1HdAejg9QzGZJnTF7CWRkAGyhJA0GzAu2csSggpyydVMCiDXBlS9eVwcyLg0wx7J0SyYcqPzGYSdl2cxti/Op4dF7/stmuq94ddP0xaadqKNH9KqwzptwgxwWrasoYOFP+/Fkg+NXB5mLoGdHlJ5i X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(346002)(136003)(376002)(396003)(451199021)(46966006)(40470700004)(36840700001)(6486002)(316002)(40460700003)(41300700001)(82310400005)(86362001)(83380400001)(47076005)(36860700001)(26005)(53546011)(6506007)(186003)(6512007)(2616005)(33656002)(2906002)(81166007)(356005)(82740400003)(40480700001)(336012)(5660300002)(36756003)(8936002)(6862004)(8676002)(70586007)(70206006)(54906003)(478600001)(4326008);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Jun 2023 10:22:42.0852 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: fde72a71-4023-42fa-6791-08db68d37574 X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: DBAEUR03FT042.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBAPR08MB5589 DQoNCj4gT24gOSBKdW4gMjAyMywgYXQgMTE6MTEsIEFuZHJldyBDb29wZXIgPGFuZHJldy5jb29w ZXIzQGNpdHJpeC5jb20+IHdyb3RlOg0KPiANCj4gTUFTS19FWFRSKCkgYW5kIE1BU0tfSU5TUigp IGFyZSBhIG1hdGNoaW5nIHBhaXIuICBLZWVwIHRoZW0gdG9nZXRoZXIuDQo+IA0KPiBEcm9wIHRo ZSBwYWlyIGZyb20geDg2LWVtdWxhdGUuaCB3aGljaCBpbmNsdWRlcyBjb21tb24tbWFjcm9zLmgu DQo+IA0KPiBGaXhlczogNTZhN2FhYTE2YmZlICgidG9vbHM6IGFkZCBwaHlzaW5mbyBhcmNoX2Nh cGFiaWxpdGllcyBoYW5kbGluZyBmb3IgQXJtIikNCj4gU2lnbmVkLW9mZi1ieTogQW5kcmV3IENv b3BlciA8YW5kcmV3LmNvb3BlcjNAY2l0cml4LmNvbT4NCg0KSSB0aGluayB5b3UgZm9yZ290IHRv IHJldGFpbiBteSBSLWJ5Og0KDQpSZXZpZXdlZC1ieTogTHVjYSBGYW5jZWxsdSA8bHVjYS5mYW5j ZWxsdUBhcm0uY29tPg0KDQoNCg0KPiAtLS0NCj4gQ0M6IEFudGhvbnkgUEVSQVJEIDxhbnRob255 LnBlcmFyZEBjaXRyaXguY29tPg0KPiBDQzogSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1c2UuY29t Pg0KPiBDQzogTHVjYSBGYW5jZWxsdSA8bHVjYS5mYW5jZWxsdUBhcm0uY29tPg0KPiBDQzogSmFu IEJldWxpY2ggPEpCZXVsaWNoQHN1c2UuY29tPg0KPiBDQzogUm9nZXIgUGF1IE1vbm7DqSA8cm9n ZXIucGF1QGNpdHJpeC5jb20+DQo+IENDOiBXZWkgTGl1IDx3bEB4ZW4ub3JnPg0KPiANCj4gdjI6 DQo+ICogRHJvcCBmcm9tIHg4Ni1lbXVsYXRlLmggdG9vLg0KPiAtLS0NCj4gdG9vbHMvaW5jbHVk ZS94ZW4tdG9vbHMvY29tbW9uLW1hY3Jvcy5oIHwgMSArDQo+IHRvb2xzL2xpYnMvbGlnaHQvbGli eGxfaW50ZXJuYWwuaCAgICAgICB8IDIgLS0NCj4gdG9vbHMvdGVzdHMveDg2X2VtdWxhdG9yL3g4 Ni1lbXVsYXRlLmggIHwgMyAtLS0NCj4gMyBmaWxlcyBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwg NSBkZWxldGlvbnMoLSkNCj4gDQo+IGRpZmYgLS1naXQgYS90b29scy9pbmNsdWRlL3hlbi10b29s cy9jb21tb24tbWFjcm9zLmggYi90b29scy9pbmNsdWRlL3hlbi10b29scy9jb21tb24tbWFjcm9z LmgNCj4gaW5kZXggZDUzYjg4MTgyNTYwLi4xNjg2OTFiZTBlOTMgMTAwNjQ0DQo+IC0tLSBhL3Rv b2xzL2luY2x1ZGUveGVuLXRvb2xzL2NvbW1vbi1tYWNyb3MuaA0KPiArKysgYi90b29scy9pbmNs dWRlL3hlbi10b29scy9jb21tb24tbWFjcm9zLmgNCj4gQEAgLTczLDYgKzczLDcgQEANCj4gI2Vu ZGlmDQo+IA0KPiAjZGVmaW5lIE1BU0tfRVhUUih2LCBtKSAoKCh2KSAmIChtKSkgLyAoKG0pICYg LShtKSkpDQo+ICsjZGVmaW5lIE1BU0tfSU5TUih2LCBtKSAoKCh2KSAqICgobSkgJiAtKG0pKSkg JiAobSkpDQo+IA0KPiAjaWZuZGVmIF9fbXVzdF9jaGVjaw0KPiAjZGVmaW5lIF9fbXVzdF9jaGVj ayBfX2F0dHJpYnV0ZV9fKChfX3dhcm5fdW51c2VkX3Jlc3VsdF9fKSkNCj4gZGlmZiAtLWdpdCBh L3Rvb2xzL2xpYnMvbGlnaHQvbGlieGxfaW50ZXJuYWwuaCBiL3Rvb2xzL2xpYnMvbGlnaHQvbGli eGxfaW50ZXJuYWwuaA0KPiBpbmRleCA4YWJhM2UxMzg5MDkuLjYxZjRmZTFkZWM1NSAxMDA2NDQN Cj4gLS0tIGEvdG9vbHMvbGlicy9saWdodC9saWJ4bF9pbnRlcm5hbC5oDQo+ICsrKyBiL3Rvb2xz L2xpYnMvbGlnaHQvbGlieGxfaW50ZXJuYWwuaA0KPiBAQCAtMTMyLDggKzEzMiw2IEBADQo+IA0K PiAjZGVmaW5lIERJVl9ST1VORFVQKG4sIGQpICgoKG4pICsgKGQpIC0gMSkgLyAoZCkpDQo+IA0K PiAtI2RlZmluZSBNQVNLX0lOU1IodiwgbSkgKCgodikgKiAoKG0pICYgLShtKSkpICYgKG0pKQ0K PiAtDQo+ICNkZWZpbmUgTElCWExfX0xPR0dJTkdfRU5BQkxFRA0KPiANCj4gI2lmZGVmIExJQlhM X19MT0dHSU5HX0VOQUJMRUQNCj4gZGlmZiAtLWdpdCBhL3Rvb2xzL3Rlc3RzL3g4Nl9lbXVsYXRv ci94ODYtZW11bGF0ZS5oIGIvdG9vbHMvdGVzdHMveDg2X2VtdWxhdG9yL3g4Ni1lbXVsYXRlLmgN Cj4gaW5kZXggZGUxZjgyNjY4MDEwLi5hYTFlZDc1ZWM4OTAgMTAwNjQ0DQo+IC0tLSBhL3Rvb2xz L3Rlc3RzL3g4Nl9lbXVsYXRvci94ODYtZW11bGF0ZS5oDQo+ICsrKyBiL3Rvb2xzL3Rlc3RzL3g4 Nl9lbXVsYXRvci94ODYtZW11bGF0ZS5oDQo+IEBAIC01MSw5ICs1MSw2IEBADQo+ICNkZWZpbmUg REVGSU5FX1BFUl9DUFUodHlwZSwgdmFyKSB0eXBlIHBlcl9jcHVfIyN2YXINCj4gI2RlZmluZSB0 aGlzX2NwdSh2YXIpIHBlcl9jcHVfIyN2YXINCj4gDQo+IC0jZGVmaW5lIE1BU0tfRVhUUih2LCBt KSAoKCh2KSAmIChtKSkgLyAoKG0pICYgLShtKSkpDQo+IC0jZGVmaW5lIE1BU0tfSU5TUih2LCBt KSAoKCh2KSAqICgobSkgJiAtKG0pKSkgJiAobSkpDQo+IC0NCj4gI2RlZmluZSBfX2luaXQNCj4g I2RlZmluZSBfX21heWJlX3VudXNlZCBfX2F0dHJpYnV0ZV9fKChfX3VudXNlZF9fKSkNCj4gDQo+ IC0tIA0KPiAyLjMwLjINCj4gDQoNCg== From xen-devel-bounces@lists.xenproject.org Fri Jun 09 10:28:54 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 09 Jun 2023 10:28:54 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545857.852475 (Exim 4.92) (envelope-from ) id 1q7ZMG-0003li-AZ; Fri, 09 Jun 2023 10:28:40 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545857.852475; Fri, 09 Jun 2023 10:28:40 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7ZMG-0003lb-77; Fri, 09 Jun 2023 10:28:40 +0000 Received: by outflank-mailman (input) for mailman id 545857; Fri, 09 Jun 2023 10:28:39 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7ZMF-0003lV-8R for xen-devel@lists.xenproject.org; Fri, 09 Jun 2023 10:28:39 +0000 Received: from esa4.hc3370-68.iphmx.com (esa4.hc3370-68.iphmx.com [216.71.155.144]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 646c78a1-06b0-11ee-b232-6b7b168915f2; Fri, 09 Jun 2023 12:28:37 +0200 (CEST) Received: from mail-bn7nam10lp2100.outbound.protection.outlook.com (HELO NAM10-BN7-obe.outbound.protection.outlook.com) ([104.47.70.100]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 09 Jun 2023 06:28:35 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by MN2PR03MB5087.namprd03.prod.outlook.com (2603:10b6:208:1ad::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.31; Fri, 9 Jun 2023 10:28:32 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606%4]) with mapi id 15.20.6455.030; Fri, 9 Jun 2023 10:28:32 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 646c78a1-06b0-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686306517; h=message-id:date:from:subject:to:references:in-reply-to: content-transfer-encoding:mime-version; bh=zYiIxoTTutRV8T/eRdOJYgCN43AZgVhW4YINiX3cz20=; b=GjJdgrTkPg8mxLTfxiWGHDhmXxqtjfbm3SkP2dp1J6TvEAwiq9cSWg16 NKKr/8/u5e4YZt7WGKDqV4TwT2vhb4wXPehw6dwi+u1akpv9KkXmA7WRh kGEbQ3ZsPZue5BgfJO6gbTYdpeE8GAjH+nLfS5WFKL+h/JtkUkULqFKJK Y=; X-IronPort-RemoteIP: 104.47.70.100 X-IronPort-MID: 114710646 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:FahFb62dS6gekdzeX/bD5d9wkn2cJEfYwER7XKvMYLTBsI5bp2ZSy jAdDD+Ca/eDM2KnLox2Yd7j/RhS75aBmoBmQAE6pC1hF35El5HIVI+TRqvS04F+DeWYFR46s J9OAjXkBJppJpMJjk71atANlVEliefTAOK6ULWeUsxIbVcMYD87jh5+kPIOjIdtgNyoayuAo tq3qMDEULOf82cc3lk8teTb8HuDgNyo4GlD5gJmNagQ1LPjvyJ94Kw3dPnZw0TQGuG4LsbiL 87fwbew+H/u/htFIrtJRZ6iLyXm6paLVeS/oiI+t5qK23CulQRrukoPD9IOaF8/ttm8t4sZJ OOhF3CHYVxB0qXkwIzxWvTDes10FfUuFLTveRBTvSEPpqFvnrSFL/hGVSkL0YMkFulfGE9Mq q0zEy82RBGOlqHmnbCiabhwmZF2RCXrFNt3VnBI6xj8VK5ja7acBqLA6JlfwSs6gd1IEbDGf c0FZDFzbRPGJRpSJlMQD5F4l+Ct7pX9W2QA9BTJ+uxouy6KlFQZPLvFabI5fvSjQ8lPk1nej WXB52njWTkRNcCFyCrD+XWp7gPKtXqiBN1LTOPkqJaGhnW/x3Y6WDsuBWKqnvSFl1W3dNFAN lItr39GQa8asRbDosPGdw21pjuIswARX/JUEvYm80edx6zM+QGbC2MYCDlbZ7QbWNQeQDUr0 hqDmYzvDDk26LmNEyvFrvGTsC+4PjUTISkafygYQAAZ4t7l5oYukhbISdUlG6mw5jHoJQzNL /mxhHBWr90uYQQjjs1XIXivb+qQm6X0 IronPort-HdrOrdr: A9a23:2FVMRq0bjNectQuREtHMlQqjBHYkLtp133Aq2lEZdPU0SKGlfq GV7ZEmPHrP4gr5N0tOpTntAse9qBDnhPxICOsqXYtKNTOO0AeVxelZhrcKqAeQeBEWmNQ96U 9hGZIOcuEZDzJB/LvHCN/TKadd/DGFmprY+ts31x1WPGVXgzkL1XYANu6ceHcGIzVuNN4CO7 e3wNFInDakcWR/VLXBOpFUN9KzweEijfjdEGc7OyI= X-Talos-CUID: 9a23:b8Eq4m+/y9+ZCgOxqu6Vv1c6GJ90WUbC913RLl77WTtrUZ7EVUDFrQ== X-Talos-MUID: =?us-ascii?q?9a23=3AyTXB6AxO+278aBsX2LO0Uw1BT/SaqIivEmldt61?= =?us-ascii?q?Wgti7OBBtID6yjyuqXLZyfw=3D=3D?= X-IronPort-AV: E=Sophos;i="6.00,228,1681185600"; d="scan'208";a="114710646" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=bMrgCGn7PUoLNX2i6GG0640ndJPoW3YXP9q0bz7lpYcW79aB/dgxkvgHjsyVBWkNltO/0/3/lubmVCbjTDf4Tacmc4gpuczUw0LMcmiqed9spDbLUtxbFRiJE2oOosRPavm8IDQMNsN8b3Qt++CyNU6B4jElP3Wp+Bp1JzPgpL6ZyN2btC084AHOYFiJkff4XiM5O/YLIN+x1vUfo2cKinkx7uMcUrIbZKyHaClGUzAT3H9EIIYj/iOo0OOGjIwlRabhX4E7Z6IrGxTSV3z2uOzWPCguiWXmpJ3HvT/GLSoIIYtpfKlVpuajSusghk895IzY41za2vv5dSfyGTqskw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=yWwgl+C/+cuopAVZm3p6v7vP6JdZ5AE0al17UA70W8E=; b=LA8KV/Elrj5dCTLWUu6IftI2n8XDSTqoA/kvdkHMyJdfOQZmojpXjBW2TTpqUHliKfDir5U92sgHarDqYkyZEzN/1dcwuA8t47oYQEAVI+y7aQ+DUYgnRKTX4f9yLUFvgC745FQZwj+sqZ2r+08fBoKu1YGmPEYmLbfn93O7iYgqEb0JMlPJCKu19SUdkV7lGk9uMysVBbxer958/cZ3k6DmEyL37EDzAONcEAYGORhW26dOK/mIKh6bWpK9sL7AIFxiksxDqyFQAf+M+Wr+wgjjGQq4nl5CJLaQtWqFljqvR2JQqsjawxmJ10h8MT345egKRarz72XrCULhawgC3Q== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=yWwgl+C/+cuopAVZm3p6v7vP6JdZ5AE0al17UA70W8E=; b=M297VQf3wnM7tt8LwXSEfihd40DwFL1UfTQnpbYts9FFmD0t8S3DVL9XRxZZ7MowTrYl3ghrL8C5Yc/SK1nNX50udrR1aGi1I6KMFL5DLcyHJeqhKwmSOhni0qyDir8AkUrJIOfSxT9gaiar17GcAiP5wNVAoIJnKA/r0sHt33w= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: Date: Fri, 9 Jun 2023 11:28:27 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 From: Andrew Cooper Subject: Re: [PATCH v2] tools: Move MASK_INSR to common-macros.h Content-Language: en-GB To: xen-devel@lists.xenproject.org References: <20230609101105.2585951-1-andrew.cooper3@citrix.com> In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO4P265CA0038.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:2ac::6) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|MN2PR03MB5087:EE_ X-MS-Office365-Filtering-Correlation-Id: ce8ffdbd-050c-4b72-f730-08db68d44606 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: lmUlOIgGNgq+wRAV81BTCIKz7/I5mlnfmpVAGbq70D3GhfEl/XNQrcOKEQR57LvuUTxVDqH+ypqh9XoMvQJvhW98pGchCsqhQrcBD8eF9/yWjLnrQjT4MBptnGHkDmt0jOptbf9Bduke7/KwjexoO3Jel35mOfkyLpvhPXid6QQPkXd0qSL86PVBo08y8z60uoic4kQWa+FD9ph4yB3dkTgAgdgLs+tD+DFOlp3J7+2gCSyMYntbJNQ+GECOJZ2xiR+uDf3HSEnRPUip2M0rmxUgFIPHCfs9pkxB5P9DUPpIxjdSd6jIGr0TWlcrzf74JehOV6Agxphoz3/9gMrKO/3C75fxdth41ESuGVLin5JlvoDy/de2bz3EfglmIjNVoRZvsW5SEeW1R37lTsPfqBr1ufOvUAmClihRzfpx4RVvm0RB3yy3Aih9JTVsJTx8SE7WEnNQfhZzZH+9/ZkHGx5A5cGuYt2nje0qtJxQqkS0oKlYkODZTTXV+D0JKBWr4mtMOcYXuOCZlFHW1nn+iDENjiZ5Or/4y49mOO6FZJoVIKCn/e4vM/7k4DtQt7RKP1x2vccxqeM1IBiyAoMQpaU0evPGVfvf+5l+4HfofWW14Rb+M+H8abXidO6M2vRfJAkAfizceN37NUGwraxQng== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(366004)(346002)(39860400002)(396003)(136003)(376002)(451199021)(82960400001)(6666004)(478600001)(5660300002)(8676002)(8936002)(36756003)(4744005)(86362001)(31696002)(2906002)(6916009)(66476007)(66556008)(66946007)(316002)(38100700002)(41300700001)(26005)(6506007)(6512007)(31686004)(53546011)(186003)(2616005)(6486002)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?RnF1c2swRnR6clByeklIWk1yai9saTk5a01Ec1oySUpROHVEbndJdGllTjhj?= =?utf-8?B?MXRMTzkxU0hKT3hqNzJJc2d2ZzZhSHB2dzFrTE9xTi9Ic0xZNnA3SVI5RGFI?= =?utf-8?B?L0ZiblZkVmFoU1h1R00rcUpqV0c4M09WTlNGbDVoNFZ6UStlSUVKaWtYbytU?= =?utf-8?B?WUhNenlaRmhlWDdHd0dsaWZER0pLOWJRcEdvU2YxMkZXQXVTZHNNR2dCRXFa?= =?utf-8?B?OXhsak9SYS80OGo1MkkraXVPWXR3YXcwSThoSGQ0WU41K1lmUE5vRDdJSUFu?= =?utf-8?B?SjkrVkZJdjJPb2xLT3VyUHJwVmJsU0Y1NDRzSkcySUVidEgvU1VsZFByS2h0?= =?utf-8?B?T0VWek1jRXg2akJ4WUVkRXo0aFYxYnNEQThKR0M2Z2FTcG92Kyt1di92aFFU?= =?utf-8?B?bS8vR2FkZFhGL1BxTDlHVGlER3dTOGFjdjNpR0lUUDNvaVB2T211MDRya3c0?= =?utf-8?B?MDVtSjZkb1RIYnJyYTZkQVJleDNYUUV3ZTJNOU9Ycit5MzZ2SlNWZVdBSTZF?= =?utf-8?B?Y1VvRm53b3ppeFg5TDFJVXpyR3Yzdk5rT3M0L0lZWWYzRWR3c2FSZyttNzhh?= =?utf-8?B?aloyek9YU3lsVUhFeGJSREZsQnB2dDlsTXVSY0RYcHZ5b1p5aGE1SC9ZR2Fs?= =?utf-8?B?UnlET0x3T1BVbHFZUDRuck1aNDNWaFhuZ2lrditVcFR2dmxPZHR6UG9BTTJ1?= =?utf-8?B?S3lWYW5rQ2hPeWgrMTBhRXZKTjFIQXNmeWJweXMrK0x0ZjBoQkdneThIbWx4?= =?utf-8?B?cWxwQU50MzU2dTVhWHEybEVJS2ZINEpaUzUyMzgwa25sYThEcEdQVzRZRG5r?= =?utf-8?B?N1VoV1lldDV4MUhSNnhvOC8vTzB3ajg1UHJULytKcGt0N0M2MEg0VnQxYTVz?= =?utf-8?B?NlFFZGxJdnVkOTRacDZUeVJ2WExzdWVDNStCU2pudENUUEFHNEtVMlF0Qmk1?= =?utf-8?B?bFJXQWJWR3BwVFJIOU5HK1d1RThtOTVZa2pQaXlOZDI2aUFqNEJjejFBUUh1?= =?utf-8?B?eEJXazFCU0xsTkdUOXFxUGlhOUlwKzVraXR0dVhSRklGc0FqTXhzSG9kcWNX?= =?utf-8?B?UUFGKzFneW5hVDdieDI5VElBT3lVdXBrSTh1TE1NR1ozNlBSR2ZDamhpc3p1?= =?utf-8?B?VGcwUmxuVUx0S0Y3ZWd2L1Z4dUlFemRyTXJEcVNQdTdpdklVb1pmaXZuUWFt?= =?utf-8?B?UUswa2dvUzZsaUI5a2sxckVPTGR5aWF1Z3p3M0ZabmIycTZPWEdrWE5UU2dq?= =?utf-8?B?cUxFNUNpcitENnRWZTZtMndsZUJWTGlwL0loZXpibUhtWGdGZmF1RFhGbjRY?= =?utf-8?B?MzlCRzFpQ2g1SkVZNExXMVcvL2g2bmdRYXoyTzROYkZybTlCZzFkTHc5WnVx?= =?utf-8?B?d1VXUWttRVpQYXZ0a2trQXRWYjRuZ1NEbVBJMkNOdnVtMEpyZ2NDSkRqcFBj?= =?utf-8?B?QW5qZ1AyRGFQYTZTSmFOMXE3RUIwc2dUMkFxWDZ5WjBnYThENGtHRUwraWZr?= =?utf-8?B?NUVvekZ3M2tZckpnNnpnS3RRTmJnc2VQUUtPa1FReU5uN0gzTlRTalQvNksw?= =?utf-8?B?WHQzV3Vwa2t1dGxNS3hPekJEWEsram9WMkMyVTBkL1ZJMTdjZWN1VEo4N1BO?= =?utf-8?B?a3RzNXUwRGZnaStkcGtGeGlJcGxNN3NvUm9iT2FQQlVoM01FczhXcHB5clQ0?= =?utf-8?B?U0JJaGNYUXlCcVZkc0JuVDBTUnpnTEgvOFk5OVlMUzJkZUxDb0RTSlJOUkxh?= =?utf-8?B?VTBVVm0vTTgwYzlYb1Jlbk4ydzdNZ0xEREZmQXhZRS9jbHpEQndKK0ZSOGpq?= =?utf-8?B?a0Z1Q3JnMXJNY3lBbFpnMzhtUVZXbE9IYzBYbGZ1SzZ5aHdUU281bjd0UExM?= =?utf-8?B?cGQ5aGppVXUrcFQyTjdreFYzNnRCQVcxTzhCaFBNNDF2aURxMWxSRUg4MTIr?= =?utf-8?B?WnZUdEhJMEh4eks2VTRsQmNtVTNPcG9MSy80WDRYRDNIaVAyS28zeFBVc0xh?= =?utf-8?B?SStvTTNKbkhLVnRuTngydDVzY1FDcEZjZGtwSHBhaWJwTGxOSzludmY5YTZp?= =?utf-8?B?WHBEMGpKNFArOXZtbFI3MEFVcWdiTWQxNnp6UmkxbmhFbHB1QjVFNkFlYUN6?= =?utf-8?B?SFl4L2FmS2xsb1VtdEw0aGEwYllUOVl5OHZCUWpkMnhQUm1qcmEwRTZqSVpZ?= =?utf-8?B?Vmc9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: 57BQ3QlpOIeZwbn0KvGyaB88mvxq/Log1IiVSetiipiDSuWCMEiv1SE3tJjJMgthsKiZ3o5b0ToLNAG6ygnuplZkMHyv8AeTMbhwVTgR95XR3//W9dqt3H6QJ6/0P3d62wfcyAMg3TwSOn/4AYpgQIVxlTLPIhQnCY5IH4vJBvUwqelXHFncO2P/Xazt9a7KtU9mdtcA5uwaeeoeZ10zoS14MikUcGLyeGvnEcVSex+eq1DGyiGj3MyPwMjLy4GQ7YZvjsgEXkPMIHtlIKjP1VGBLPPKIVQAsLyKwCxnYJzwVeOya9MvHervngSfe/44g9bPi9qLW3n/R8OhIk63F729VeJKDTJ4a9ryDPeUUQ1/tA9n2ry90lbBp0d3wxrNI1umjajEETwh8VMjZNGyJSdcZiE6dMv2nHGTM3k7atkQcINcK9FToY+NSwUhvySinuienOCNjUhpNKl1dL2Rf+rz/tMrpTG0KP0gEA4jlp6oAGLRCEZfZI1aJAsN1hpqk8nl2tA92yVJD1Eu3V+Is6mRQFsSjU+vErsH0GaxDpe+mtDFw/GIH89B+wtviCToio4lkCAfd/R1ONctAkriJRXDdNekk1aQLqUSqvRoVikNKULzXYnLWwqtnJP6Df1RQsJS5vSKAWxJNqnlwNKQodKk/2gXxPAGBwmR1gCaBs337fop9WR13C8lk3YpWnc3Cw5M+uR1KZSITyDTN8jB/V7IsdTYgbZgw00tq8Quf9HAvAiwHa7JRfYAx8k/PTrq66jkHOukMiWn9MryRuwQkg== X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: ce8ffdbd-050c-4b72-f730-08db68d44606 X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Jun 2023 10:28:32.3179 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: s2OCkxgWPuhV7x+FOoa+uklRiCXYvENmYdSX3pt4QUNPkXsVMEXXSzRocEdUp0dPO9Yb3oLpUmJVanEKRtP7+n1spgoRH0InJRN11mcwHEA= X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN2PR03MB5087 On 09/06/2023 11:22 am, Luca Fancellu wrote: > >> On 9 Jun 2023, at 11:11, Andrew Cooper wrote: >> >> MASK_EXTR() and MASK_INSR() are a matching pair. Keep them together. >> >> Drop the pair from x86-emulate.h which includes common-macros.h. >> >> Fixes: 56a7aaa16bfe ("tools: add physinfo arch_capabilities handling for Arm") >> Signed-off-by: Andrew Cooper > I think you forgot to retain my R-by: > > Reviewed-by: Luca Fancellu I did.  I'm very sorry.  I need more coffee. Thanks, ~Andrew From xen-devel-bounces@lists.xenproject.org Fri Jun 09 10:47:20 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 09 Jun 2023 10:47:20 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545862.852485 (Exim 4.92) (envelope-from ) id 1q7Ze4-0006C0-NG; Fri, 09 Jun 2023 10:47:04 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545862.852485; Fri, 09 Jun 2023 10:47:04 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7Ze4-0006Bt-K2; Fri, 09 Jun 2023 10:47:04 +0000 Received: by outflank-mailman (input) for mailman id 545862; Fri, 09 Jun 2023 10:47:03 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7Ze2-0006Bn-W2 for xen-devel@lists.xenproject.org; Fri, 09 Jun 2023 10:47:03 +0000 Received: from esa3.hc3370-68.iphmx.com (esa3.hc3370-68.iphmx.com [216.71.145.155]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id f6076c76-06b2-11ee-b232-6b7b168915f2; Fri, 09 Jun 2023 12:47:01 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: f6076c76-06b2-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686307621; h=date:from:to:cc:subject:message-id:references: mime-version:in-reply-to; bh=dM7o+uJm3jltHB6pCR+shMRrsvJK+PlElVIJWU5Ryow=; b=YaomjJJikdhGKxiogQLyM21Bit/mHwULkuZWRtor0O9ZTBQgkVKfPOWH E1mTmovTxShsBviOL8Lv1T4BnA/nhr8lxGEMm69w4K9dQCTDUScoREtZf vu68gHOfbPXC0ctyWEbxEWXpOwS5a7C7au/lL6UJ01KZytbgpOARudee1 M=; Authentication-Results: esa3.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none X-SBRS: 4.0 X-MesageID: 112212280 X-Ironport-Server: esa3.hc3370-68.iphmx.com X-Remote-IP: 162.221.156.123 X-Policy: $RELAYED IronPort-Data: A9a23:SwSY0qrT9axPg4ExK0lFKEzLB31eBmI0YhIvgKrLsJaIsI4StFCzt garIBmGOf2DYWujctwnad7goU0P7cXRy4RiHAY4pCg2Hi9B8puZCYyVIHmrMnLJJKUvbq7FA +Y2MYCccZ9uHhcwgj/3b9ANeFEljfngqoLUUbKCYWYpA1c/Ek/NsDo788YhmIlknNOlNA2Ev NL2sqX3NUSsnjV5KQr40YrawP9UlKq04GtwUmAWP6gR5weAzyhNVfrzGInqR5fGatgMdgKFb 76rIIGRpgvx4xorA9W5pbf3GmVirmn6ZFXmZtJ+AsBOszAazsAA+v9T2Mk0MC+7vw6hjdFpo OihgLTrIesf0g8gr8xGO/VQO3kW0aSrY9YrK1Dn2SCY5xWun3cBX5yCpaz5VGEV0r8fPI1Ay RAXABQwdz2G2KHr/Le+ENR3jPQYCNLuf6pK7xmMzRmBZRonaZXKQqGM7t5ExjYgwMtJGJ4yZ eJAN2ApNk6ZJUQSZBFOUslWcOSA3xETdxVRrk6VoqwmpXDe1gVr3JDmMcbPe8zMTsJQ9qqdj jufpT6gWEtKbLRzzxK19CyimO/XsRnQY9pPBrCmtdVPjVCqkzl75Bo+CgLg/KjRZlSFc8lEN 0Ue9y4qrK4z3E+mVN/wW1u/unHslgUcVtxMHvwS5wSEy66S6AGcbkABVSJpctEqtMYqAzct0 zehht7sGHljvaOYTVqb8bGbqy70PjIaRUcYZCQERBEJpdnupo0+lAnISP5nEai8lNqzHiv/q xiPpTI1irFVhNYF2qGx9E3Cqz2pr5nNCAUy423/Un2g8StwYYe3YIru4l+d8PUoBIuVU1Cbs H8sm8GU7+cVEdeLmTDlaO8XF7G07PWXGDTbhRhkGJxJ3z2w4XOnfI1WyDhjPkptaZxCfzL1C GfToQRM/4RSOlOwYKZ8f4WqTcMwwsDIDd34UtjEY9wIZYJ+HCef9iZod0+W3kj3nUQsmL15M pCeGe60DXceDKhPyDuwTv0al7gxyUgW1W7VAJz20Rmj+b6ff2KOD6cINkOUaeI057/Cpx/am /5WL8aQwg9TePH/aCLQt4UUKDg3wWMTXM6s7ZYNL6jaf1QgQTt6YxPM/V8/U6hYholQyaSVw nS4AHJDwmrEoWbCaizfPxiPd4jTdZp4qHs6OwklMlCpx2UvbO6T0UsPS3ckVeJ5rbI+lJaYW 9FAIpzdWaoXFlwr7hxHNfHAQJpemANHbO5kFw6se3ABcpFpXGQlEfe0L1K0pEHi4sda3PbSQ oFMNSuBG/LvojiO6+6IAM9DN3vr4RAgdBtaBiMk2OV7dkT265RNICfslPIxKMxkAUydlmXAi 1fMW0pH/rmlT2oJHD7h3/nskmtUO7EmQhoy85fzsN5ayhU2DkL8mNQdAY5kjBjWVX/u+bXKW Amm56iUDRHzp34T69AUO+8yncoDCy7H++cyIvJMQC+aMDxGy9pIfhG74CW4nvcdm+cA6FPnC hrnFxszEezhBf4J2WU5fGINBtlvH9lN8tUOxZzZ+HnH2RI= IronPort-HdrOrdr: A9a23:qmGjV6rE/2DMQuuA2mcmXPMaV5obeYIsimQD101hICG9Ffb1qy nOppsmPHrP4wr5N0tPpTntAsi9qArnhOdICOsqTNWftXjd2FdARbsKheGO/9SKIVycygcy79 YGT4FOTPH2EFhmnYLbzWCDYrAdKQC8gcWVbDHlvhNQcT0= X-Talos-CUID: 9a23:Jj4GHWyHkuQZiU80TJJ3BgUwJ9kIdyKekUvVJhWFEmxZc5mOTBy5rfY= X-Talos-MUID: =?us-ascii?q?9a23=3AzmdNLA44YlZvQSlSKlQjDVG1xoxY5fqgFkAVva8?= =?us-ascii?q?tgJHZJyFueBy4gTmOF9o=3D?= X-IronPort-AV: E=Sophos;i="6.00,229,1681185600"; d="scan'208";a="112212280" Date: Fri, 9 Jun 2023 11:46:53 +0100 From: Anthony PERARD To: Stefano Stabellini CC: Bernhard Beschow , , , Richard Henderson , Marcel Apfelbaum , David Woodhouse , Eduardo Habkost , Chuck Zmudzinski , Aurelien Jarno , =?iso-8859-1?Q?Herv=E9?= Poussineau , Paul Durrant , Paolo Bonzini , Philippe =?iso-8859-1?Q?Mathieu-Daud=E9?= , Subject: Re: [PATCH v4 0/7] Resolve TYPE_PIIX3_XEN_DEVICE Message-ID: <0372b3c8-fc50-4d61-83da-72748a439405@perard> References: <20230403074124.3925-1-shentey@gmail.com> <20230421033757-mutt-send-email-mst@kernel.org> <9EB9A984-61E5-4226-8352-B5DDC6E2C62E@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Disposition: inline In-Reply-To: On Thu, Jun 08, 2023 at 03:43:32PM -0700, Stefano Stabellini wrote: > On Mon, 5 Jun 2023, Bernhard Beschow wrote: > > Am 22. Mai 2023 15:42:03 UTC schrieb Bernhard Beschow : > > > > > > > > >Am 15. Mai 2023 20:52:40 UTC schrieb Stefano Stabellini : > > >>On Sat, 13 May 2023, Bernhard Beschow wrote: > > >>> Am 21. April 2023 07:38:10 UTC schrieb "Michael S. Tsirkin" : > > >>> >On Mon, Apr 03, 2023 at 09:41:17AM +0200, Bernhard Beschow wrote: > > >>> >> There is currently a dedicated PIIX3 device model for use under Xen. By reusing > > >>> >> existing PCI API during initialization this device model can be eliminated and > > >>> >> the plain PIIX3 device model can be used instead. > > >>> >> > > >>> >> Resolving TYPE_PIIX3_XEN_DEVICE results in less code while also making Xen > > >>> >> agnostic towards the precise south bridge being used in the PC machine. The > > >>> >> latter might become particularily interesting once PIIX4 becomes usable in the > > >>> >> PC machine, avoiding the "Frankenstein" use of PIIX4_ACPI in PIIX3. > > >>> > > > >>> >xen stuff so I assume that tree? > > >>> > > >>> Ping > > >> > > >>I am OK either way. Michael, what do you prefer? > > >> > > >>Normally I would suggest for you to pick up the patches. But as it > > >>happens I'll have to likely send another pull request in a week or two > > >>and I can add these patches to it. > > >> > > >>Let me know your preference and I am happy to follow it. > > > > > >Hi Stefano, > > > > > >Michael's PR was merged last week. How about including this series into your PR then? > > > > Ping > > Sorry for the late reply, it looks like patch #3 breaks the build: Hi Stefano, Sorry I forgot to reply to these mails. I've sent a pull request for this earlier this week (along with other patches I had to send), so the series should be applied now. I guess the build issue is due to trying to apply the same patch again. Cheers, -- Anthony PERARD From xen-devel-bounces@lists.xenproject.org Fri Jun 09 11:34:03 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 09 Jun 2023 11:34:03 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545869.852495 (Exim 4.92) (envelope-from ) id 1q7aNK-0003ES-8B; Fri, 09 Jun 2023 11:33:50 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545869.852495; Fri, 09 Jun 2023 11:33:50 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7aNK-0003EL-3x; Fri, 09 Jun 2023 11:33:50 +0000 Received: by outflank-mailman (input) for mailman id 545869; Fri, 09 Jun 2023 11:33:49 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7aNJ-0003EF-2u for xen-devel@lists.xenproject.org; Fri, 09 Jun 2023 11:33:49 +0000 Received: from esa3.hc3370-68.iphmx.com (esa3.hc3370-68.iphmx.com [216.71.145.155]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 7e7081fe-06b9-11ee-b232-6b7b168915f2; Fri, 09 Jun 2023 13:33:47 +0200 (CEST) Received: from mail-mw2nam04lp2175.outbound.protection.outlook.com (HELO NAM04-MW2-obe.outbound.protection.outlook.com) ([104.47.73.175]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 09 Jun 2023 07:33:44 -0400 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) by BY5PR03MB5347.namprd03.prod.outlook.com (2603:10b6:a03:218::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Fri, 9 Jun 2023 11:33:42 +0000 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::192:6bdf:b105:64dd]) by SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::192:6bdf:b105:64dd%3]) with mapi id 15.20.6455.028; Fri, 9 Jun 2023 11:33:42 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 7e7081fe-06b9-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686310427; h=date:from:to:cc:subject:message-id:references: content-transfer-encoding:in-reply-to:mime-version; bh=T/TjCHREq3AyRvJhWU4LXWI1ZuO08PV1L7sf3TMwlKM=; b=fzmfD+aoyfFgadwoF2wTM+vHorTukf4sFyou/9VFHMoC0BCj6YDTjDiP FsfqH50tpCQZyLVJl/a/iJ5++z72veuERzi8yW/fR0CyVB0NoCne+Vuob qAuKY+Aw9KgLjRClvSlPJxt97cnsoOvvpBB1fqVdaFkoffHPLViiV8voA k=; X-IronPort-RemoteIP: 104.47.73.175 X-IronPort-MID: 112217308 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:FguO+6+AgRCAI0y8QCy8DrUDTn+TJUtcMsCJ2f8bNWPcYEJGY0x3n WEeCmyEOvmCZWr3eYtxb42y90hXv5LQzYdrTAZs+CE8E34SpcT7XtnIdU2Y0wF+jCHgZBk+s 5hBMImowOQcFCK0SsKFa+C5xZVE/fjUAOG6UKicYXoZqTZMEE8JkQhkl/MynrlmiN24BxLlk d7pqojUNUTNNwRcawr40Ird7ks31BjOkGlA5AdmO6ga5Aa2e0Q9V/rzG4ngdxMUfaEMdgKKb 76r5K20+Grf4yAsBruN+losWhRXKlJ6FVHmZkt+A8BOsDAbzsAB+v9T2M4nQVVWk120c+VZk 72hg3ASpTABZcUgkMxFO/VR/roX0aduoNcrKlDn2SCfItGvn9IBDJyCAWlvVbD09NqbDkluy +YBBR8KVyqggtyOyeiwac9xiv8seZyD0IM34hmMzBn/JNN+HdXmfP+P4tVVmjAtmspJAPDSI dIDbiZiZwjBZBsJPUoLDJU5n6GjgXyXnz9w8QrJ4/ZopTeIilUujdABM/KMEjCObd9SkUuC4 HrP4kzyAw0ANczZwj2Amp6prraWx3miB9lKRNVU8NZgpV+IwVQ9MyQyD3S0iv7gjkGhUPJmf hl8Fi0G6PJaGFaQZsnwWVi0rWCJujYYWsFMCKsq5QeV0K3W7g2FQG8eQVZpatM8s9QtbSc3z VLPlNTsbRRrrbacD3yU8LyZqTevESEPKCkJYipsZSkv7sTnoYozpgnSVdslG6mw5vXqHRngz jbMqzIx74j/luYO3qS/uFXY2TSlo8CVShZvv1qKGGW48gl+eYipIZSy7kTW5upBK4DfSUSdu H8DmI6V6+Vm4YyxqRFhid4lRNmBj8tp+hWF6bKzN/HNLwiQxkM= IronPort-HdrOrdr: A9a23:KCMk7qgpXjvLyyE2+9HYgiNqsHBQXjIji2hC6mlwRA09TyX4rb HKoB1/726NtN9/Yh0dcLy7V5VoIkmsl6Kdg7NwAV7KZmCP0waVxedZg7cKqAeQeBEWmNQ96Y 5wN6xlFpnyAVx2ycH3/hO8H8s8zMLvytHOuc7Oi3N2U0VoZ6Vsqxx0BQaXe3cGIng+ObMpUJ 6H+I5Fqz6sPW4cZsO9Bn4KG/LIocbGjvvdEHo7Lg9i8gOJljOu5vrxGwWV0BEEQ1p0q4sfzQ == X-Talos-CUID: 9a23:buFUzG5+MJsKumsUNNss1HAOA+0KdUTn73LuG0biAkVPVbGuRgrF X-Talos-MUID: 9a23:HP4MawVH0ozCmG7q/DXJhiplDOlT2oD0J08mlswCtNaPFRUlbg== X-IronPort-AV: E=Sophos;i="6.00,229,1681185600"; d="scan'208";a="112217308" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=FFGL2XQ4lRCyC2mD7lHHIDdEChivfU+HX/HQWOf39J3joaTbNLGWG09W26A6/ZOuX1RPHHA9QDixtOx0sI1HiCkL3qaRVHmasjBRSmO10UkGqXC5mf+7qB8D8593mIN1v4fI9g98955SccWdB4U/h1BWvbRYOgSAst1Vyt/UWySeReYZ5fYgFlcw7OzJ0RVemDsKUeOvUaSNAo7hpaC9rdfJ25KxmJTucLYf9Ids6ES8jHqyXXnO/0xZAD29LD/FPbUX2AFvta6bZolz8UDjVvJ6gO61HpcHErl2QucW/XzU54kccvqNG1E9uvoRvF3wfoZec/gD72jnl64pmFVxyw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=iOsQUTkBx3IDdfRpwia8cJwS2pY3dbVitKXqGD315ks=; b=k5zGgXoQH+6hFjzwjdC4/Mg8dtvzVzFeDPSJX3PHOnRqMPl8eJEDiolC5SZjhz/r16N8IQn7ALAvlzN92w3aP+93/p6cqGlzsyrrWXuQ16rpoAvTRePgj6uuflQetqI6WveuQAsls5n9HulNsMxjg8nEi+p2vJObb5x+ok5lw/HzwPwDVcN2/Wa0PbnCzwWa60TLjiklSG9GFml+3pOne3hMtCNsbNaQ+FibQlVZRCV6+onV9LVUzrBnYgSKxah/ImcReC9CNG/Y4csPg0RKKv5F82yntsvLaQCnaE9m3GRYl8yZ6t7OkB+mdTfOEmeSKSkElsomIBog0FDBnHyRpw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=iOsQUTkBx3IDdfRpwia8cJwS2pY3dbVitKXqGD315ks=; b=tan3zVzT4iKnEcb0ifRrH8PEvAXIFdrQJ+9F2xeAKr0QwW3Qe4Xe2DgmY40L9Fd0HVf7N2OtWty2svz9nOOmQJc+gM8l8ih/IyrJTsziCKfYKkdX8Mz9NnlNpN1X+gaZ8EcFoxwYZnUfM5bP1J2BQoE+ceaARuoziSNcnaQEREI= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Date: Fri, 9 Jun 2023 13:33:35 +0200 From: Roger Pau =?utf-8?B?TW9ubsOp?= To: Andrew Cooper Cc: Xen-devel , Anthony PERARD , Juergen Gross , Luca Fancellu , Jan Beulich , Wei Liu Subject: Re: [PATCH] tools: Move MASK_INSR to common-macros.h Message-ID: References: <20230609101105.2585951-1-andrew.cooper3@citrix.com> Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <20230609101105.2585951-1-andrew.cooper3@citrix.com> X-ClientProxiedBy: LNXP265CA0049.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:5d::13) To SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|BY5PR03MB5347:EE_ X-MS-Office365-Filtering-Correlation-Id: a220a197-460e-4c5a-9ac0-08db68dd6080 X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: JHTBZmcGcj9fkhMvCols+Vge2f32QwOe+8LqKGGffJOppjcC3T7fd5oeqc1uEbuGmG6NK6MhXZs5IcDaEXeIGvzsjxB60PX4vt7Yvycb73nl/n7XHObJxPywpXuDUpP9TMcFzRIIlHeFOAwP5Sfje0b9NWxDrCG6ZkBhBPpNY/F+nQqh9vdfx+gcERjVIDY/lmixmnYd1MXhZb0pk/XSmKsGniP7yXfFifpRVzqqVjcnop7ItpY4+F/ciGL7btPPJVxdXGX3xnPUhsyRkpuOlLErYv+GLrcgCSWW0IlHhY0kYEa63PkewQ4rWN1T6SfSojjsgcQru9UpiQ30PXOlyR9nQD3FGxeLsUgo7KOBhtQ5dgye57dz2eKXWqOMzNeZzhqErTkm35fNtPkgwpbeXKsSK5mZGW6ogAlq2Xs1x3sx9o6HeE1kgKENKvW+fBxiUQQ1yobJB+Q9tX7o7KG727TgfLG65o1k5oGuU3X3zuAdm16W+jiR/NvZ2LY2vXvqTbN5/3g04KyrFmcK1moGLGxQmu0QacTgh/Q5KgbuQSAUwQ1bvZv9wNHNs7eOJB+q X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(7916004)(346002)(396003)(366004)(39860400002)(136003)(376002)(451199021)(6486002)(6666004)(85182001)(86362001)(38100700002)(82960400001)(6512007)(6506007)(9686003)(26005)(33716001)(186003)(8936002)(41300700001)(8676002)(4326008)(6636002)(6862004)(2906002)(5660300002)(4744005)(478600001)(316002)(54906003)(66946007)(66556008)(66476007);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?Sm10MHM2OEVJSVgvbXBZeDB5OVRjL3JEMU5qYWdzTGE2UDhyNTYyRXhmdWll?= =?utf-8?B?clRucWZZRUNEdFREVjlqeEx6NGlsOEJQd0FjT0trbldNRDFuQjh3OXhUUEtn?= =?utf-8?B?M0VXV0NqTXB5YXRYa3UwNmJ2Nk40YTdQNDBLVUo5VnZKcGFJK0hDakdXdmwz?= =?utf-8?B?QWlOYTFuREJENkVwVHNJNjBSTUNqM1dPY2lhNkpyQmJoSGk1N0UzV2RpUTV3?= =?utf-8?B?RWxISU14RXJjcDl2L3BBVWRqNmVvSGpTM1RURHYzdnlCelpNeEtWN3poc3RM?= =?utf-8?B?eVh5VWdVR2tQbzB2cmZncFU0Q0dQM0VxS09hQUtBdFQ5UGQyOHNCTm4rOHVt?= =?utf-8?B?YXNJeXpFc0ozVWpRMmQzdW45KzYxM092bjc3b0lReENEeVpzSjdLY2sxVlow?= =?utf-8?B?dzNGSGxDRWkvU1J2Tmw4T0tUWTNPZ0l6MDZlUWZKOGhqV0czSU80bkpLWjlG?= =?utf-8?B?TVZNc2pvSEZNWkY1M0FlVExPSnk4VVVMWTArdHFjR0RYS09FNG0vejBZK3JE?= =?utf-8?B?NVlSb1oyU0d5TzJYeHcrYlVMOG42R3NqUlRzS0dSeWdhN3djWlN5eUN1Qnha?= =?utf-8?B?b1VWeHpZY0JjNm9LcUQxNzgrWVJXVEkrY3I4YndrWnN1ZDJGNCtDTExyZDNC?= =?utf-8?B?SVVlU1BSRVc2WUEzQktRcEZZaGtjdFRRMXpXblRETFd2RU1tWS9KVStiK1Vx?= =?utf-8?B?UzV4WDFMOWFDYVRXd3lBWFp5d2xNbHFHVHo3Y2pXTXNVZUlGVklFd1BSMGZy?= =?utf-8?B?dGd3ZTRUa2JGYUtuMHNvNCs0WmdkbGtuN0lHbmppcldkQ1pPdllNU1FVbUs1?= =?utf-8?B?Mkl1TTBKS3RmdTFwM09ZKzhBV3Y1T3RMYWtHOW1QNytGUFFvYWJWcVFORjh6?= =?utf-8?B?Ky9SaTVMZTNmTFY4NCtnZTNuMUZQZ2dZSEowZVZEeXIyaEd5UXpaWm13T1Bw?= =?utf-8?B?TGNtazJmTkU5UFdyNVoydzBWTW0wTkNBVGdQZUhsTG92eStvUUVsMlNFZVh4?= =?utf-8?B?S3NjRFhMS0FoVFlFK3ZYZFNZZE85TFF4Q2pjMXVCb0dqVHoyNGJXOVhyenEr?= =?utf-8?B?VmdnbGZkTUZCd0ZJTGMrTUF0N0xhSUpoL3ppVjRZWHRubXJNWmVNQjB6U25B?= =?utf-8?B?NmxwNm8vSURXY0d2eW90eUw5SFZsUFVXdFRyeHN1d0xDcVlOTFVaNUJBWk9Y?= =?utf-8?B?WmF4N3orTHlGQWhhODV3UVpubmxYL1FVVytjZFNlZzV3bU1qRWlxbmExb1Mz?= =?utf-8?B?TDVqaEdKZFplUWFCNE9IV2JpaHgrNmlsam9ZL3NoekdpUnVvZXRlamlJamhT?= =?utf-8?B?SVFVZkRNZzhOK2w4NGVFd0hldGhndlRuZWRxUnVjVkoyTFd6cmdSUTNKWnp1?= =?utf-8?B?R3RJQXhrdVdSMEdhL0JoZ3Z5WXlpL2ZKd2FzTUd2aUFRS2VlbmVwU0RrdWxI?= =?utf-8?B?U09Zb2h5QkJab1dEN0lONEdtSUVuU2RCRFlnNjFnZ2NlWml3eFJNbGpIQ3dI?= =?utf-8?B?cmVJRWpBV2Q3QXR6UnFKeWNENjEzdlRtenZSSkNMU2R6N2VOcTRMZkRqdCtl?= =?utf-8?B?cEN4UDRQQVlNNk5Za2N4aUc4Q2Rsak5hU25sVEZFYm9wcjQzNUtWSkk2czQ3?= =?utf-8?B?SGplS3NoM1hoejV5WkFia3MzaTZjN0d4SkN6anc4WGFwWFQwaWsxRjVEd1lh?= =?utf-8?B?QXFOQmt0c1ZEaTd5RERMRGJmcWxTNW80SHkzcWdVMytkTURjTmFnOEp5Mk1T?= =?utf-8?B?ZGJqVFFtSkg1d2FvdTk5UlpNdVNSNXAzYzA1KzludXRKWVpXL2w2UU8wMHJQ?= =?utf-8?B?aGhCTDBSZ2hFdlZ5dVVJZG93YTAwYzk3bXlmbVhTY2RUN01udkxmTHBlOUFv?= =?utf-8?B?K0FIQUd5NjRSeFZoajdKSFovYm5IOE1zK3pjckMzcDhjaCtIV21JNWQ0TGRl?= =?utf-8?B?bGV1N3BhR0pzZVgrbFg5YklUOE1QQnFtalFDc0RXUnZUV0xRQnNXWW1DM3RB?= =?utf-8?B?c2tVMWJkcFZrWHVTVHZsNXNJbFphVFBzdjhTeHdjKzA2V1phVVdkNlRBOVRK?= =?utf-8?B?QTJHdjhPYW13ZEM1T1Vsb0JkL3ZlRXFJTFAvVkhjMzB2MjJpa2FwWVNUbFpO?= =?utf-8?Q?4gDjRDhLgkDZrqSFQH+E/kHLD?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: 3+8gL77SOGB++0Nx5M1XjerKMvpomh6iYL3geasG0Wv0szuTnAHtBX1aJsISpe8lNEU8xoipwo6rA3QWtystwjyy7FvZhlRVmZobRjKFn+pzH9RorevsHz8fAhxutKv+QXv27b5SWScUoe2Qw37Oq60srKoNHqwTVNgHF5gqlZI+1lc6UUQLtkGWHJBqRWThu2Aqu5MrwilHLlXWDNmp5LtwNdjuE9m0e4/exXdeVmN7Dk8y7HO6m9XPC/M83rioBMOxIz6EeVZe/dpbQ6XdIXnoVFysPGjwCm7MPqcTfg67CsajE6pMijwmTY7imnZNTyZ+EQkD6gjHGAmbTPH+a9x/gjgaXLJ1yuyt7OSOVDRFR79EzpVAepduQo7Nx2k74IpQgnffdz4wY/NNZ9T6U54kfpp6dB41XLOa47iW8gTaJEIJupD9Kh+iiaZuUs/NcV2et8lHf84JEkDje5OpfawskIALOCev0K/feOn3X+zBhUj/wYr6iUYHcNegG9KL+qnVTVJo3pWD06jgu+jwjOcW0uNh2ebALrku84Nbjxqi0BYAfqFB/DUIZbXe5idveSP824brToUh6e3TZOKwbWdunoK2H6hJwvOGHXc9BeQAdcd8VUYRZZO5QfxK7l7SNZg6x8rwlsdrKD1y5GMXE/aWcjTnrjR8/o+d2F6ZnWrEJROklHP/z6e4gXuw9962e0gDXkvUMkqKpmKAAeZfgUlHHmVCVF49j4XLibXBl5sp5drdSB3FyOXZg/+v9peyhj11ueVByyTEDk+QDG8LVU6MfGVeeHfMqacWYuO9HsTusMGGyxvVCn43yy2qr1z8h5EG02A8cEmA6URau5I1SQ== X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: a220a197-460e-4c5a-9ac0-08db68dd6080 X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Jun 2023 11:33:42.0675 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: BBFCIs2nIEHKgq3xgRt53hTjdKeArFAn26bnnp6HCkrpzz8dvzWnkOtyUhukuWG/pcRdHIHt+gxTIuPWhMPx0g== X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY5PR03MB5347 On Fri, Jun 09, 2023 at 11:11:05AM +0100, Andrew Cooper wrote: > MASK_EXTR() and MASK_INSR() are a matching pair. Keep them together. > > Drop the pair from x86-emulate.h which includes common-macros.h. > > Fixes: 56a7aaa16bfe ("tools: add physinfo arch_capabilities handling for Arm") > Signed-off-by: Andrew Cooper Acked-by: Roger Pau Monné Thanks, Roger. From xen-devel-bounces@lists.xenproject.org Fri Jun 09 11:39:09 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 09 Jun 2023 11:39:09 +0000 Received: from list by lists.xenproject.org with outflank-mailman.545874.852505 (Exim 4.92) (envelope-from ) id 1q7aSF-0003tB-Pg; Fri, 09 Jun 2023 11:38:55 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 545874.852505; Fri, 09 Jun 2023 11:38:55 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7aSF-0003t4-N9; Fri, 09 Jun 2023 11:38:55 +0000 Received: by outflank-mailman (input) for mailman id 545874; Fri, 09 Jun 2023 11:38:54 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7aSE-0003sd-3w; Fri, 09 Jun 2023 11:38:54 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7aSD-00020J-Rq; Fri, 09 Jun 2023 11:38:53 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7aSD-0001Cb-Hi; Fri, 09 Jun 2023 11:38:53 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q7aSD-00060X-HB; Fri, 09 Jun 2023 11:38:53 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=BA6gJXLZTHlgvnkQmb26ztUyez1yuDucM1JoqmBF6D4=; b=QMwwYMrXgsxvtiTY4bSrTJsdqT MUu9WjH1oOymic/orMb7gIm3AQ7N52vwMVx9USTeWfUvF1Jmwn7koYilfybwmY6jivSABhqtnkYwg uA6rcYaasWexSGdbhZ0OzDG23/U4oVAWe90NOkmRPGePA6No09EjQYdaO+zNpzDtfCnY=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable-smoke test] 181338: regressions - FAIL X-Osstest-Failures: xen-unstable-smoke:build-arm64-xsm:xen-build:fail:regression xen-unstable-smoke:build-armhf:xen-build:fail:regression xen-unstable-smoke:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking xen-unstable-smoke:test-armhf-armhf-xl:build-check(1):blocked:nonblocking xen-unstable-smoke:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking X-Osstest-Versions-This: xen=6915a120641b5d232762af7882266048cf039ca0 X-Osstest-Versions-That: xen=64a647f8d817c6989edc000613b5afae19f03f99 From: osstest service owner Date: Fri, 09 Jun 2023 11:38:53 +0000 flight 181338 xen-unstable-smoke real [real] http://logs.test-lab.xenproject.org/osstest/logs/181338/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-arm64-xsm 6 xen-build fail REGR. vs. 181233 build-armhf 6 xen-build fail REGR. vs. 181233 Tests which did not succeed, but are not blocking: test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 15 migrate-support-check fail never pass version targeted for testing: xen 6915a120641b5d232762af7882266048cf039ca0 baseline version: xen 64a647f8d817c6989edc000613b5afae19f03f99 Last test of basis 181233 2023-06-07 02:04:37 Z 2 days Failing since 181246 2023-06-07 11:02:03 Z 2 days 23 attempts Testing same since 181303 2023-06-08 11:00:25 Z 1 days 12 attempts ------------------------------------------------------------ People who touched revisions under test: Andrew Cooper Christian Lindig George Dunlap Henry Wang # CHANGELOG Juergen Gross Julien Grall Luca Fancellu Michal Orzel Roger Pau Monne Roger Pau Monné Stefano Stabellini jobs: build-arm64-xsm fail build-amd64 pass build-armhf fail build-amd64-libvirt pass test-armhf-armhf-xl blocked test-arm64-arm64-xl-xsm blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-libvirt pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 504 lines long.) From xen-devel-bounces@lists.xenproject.org Fri Jun 09 12:18:31 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 09 Jun 2023 12:18:31 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546012.852599 (Exim 4.92) (envelope-from ) id 1q7b4V-0005DM-Jh; Fri, 09 Jun 2023 12:18:27 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546012.852599; Fri, 09 Jun 2023 12:18:27 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7b4V-0005DF-H0; Fri, 09 Jun 2023 12:18:27 +0000 Received: by outflank-mailman (input) for mailman id 546012; Fri, 09 Jun 2023 12:18:26 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7b4U-0005Bq-NW for xen-devel@lists.xenproject.org; Fri, 09 Jun 2023 12:18:26 +0000 Received: from EUR04-DB3-obe.outbound.protection.outlook.com (mail-db3eur04on0625.outbound.protection.outlook.com [2a01:111:f400:fe0c::625]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id bb734612-06bf-11ee-b232-6b7b168915f2; Fri, 09 Jun 2023 14:18:25 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by PAXPR04MB8428.eurprd04.prod.outlook.com (2603:10a6:102:1ce::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.32; Fri, 9 Jun 2023 12:18:21 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.039; Fri, 9 Jun 2023 12:18:22 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: bb734612-06bf-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=OyMbpwGwX0oxnY/zjzt92U6skBLv/FsIFQLBmWqX0TGiRL8HxYmIAJzI/54yH5+6C2UlBGT8uAn6PybjInUgChoPsRN1lQ39LXKTGFuL8Ekx3a3qMWk+k6egclE3hlXshhGQe2UhMelFd+njI+K0QXNkykh5FSFPkYOAJTtWyBzv8DkDNKPg+GCQ6RW9DM3E3THI5L4dJxml1hAkkmxKIbXaK2wY0oH087ZwmLkUzi/y/636gWWa4JBPvFUEjdwbWPXtFV8dJXOxK+VtAppTYZpFfJZaTAPJ2ML3JOMPHgjR+QQRbjU7l8GWcgAjdrYFa1OhIKnwelkvJrTz+guyjQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=6ObMLwA7V1HyG/B2tHduxJWUbzB50EudVKLfou/mcIU=; b=ntyn/99FPalzpROdogbI/3L43PpWORSF4iJDaKbgO965UxRFNu4flrLczWGQCK1g6PtYaPGrbG0GXjqoFJwfXcGg1Z6wQMyzSwK8NEUqdTtOq4xjX3O5OMPdt8A5txECl+58e4goOu3/THbQLpXSMmNDeQIGcJy7FiY5uYdfY5aR8eIOx/G985HKblcUD+1e0400dcIXXmKSnwJywZUaR6gMvU0OlADpr7TK7D9BSWqD6OLFxs2x3Y7UyU2GKKkchH45rxdUNEP1p3xn/j/kpDFM57vLel5I3NQGKRdGjV7C/2ED1zSe5sVyusOy0+7nJa8iHQMzb5ENXwitUgYlfA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=6ObMLwA7V1HyG/B2tHduxJWUbzB50EudVKLfou/mcIU=; b=yrzqxSaYOfnM0UUPpfiKxcBZ5qD8lPPvH8+zq3kyPIYFdrE5Hpml5+uNy4gxH+Aro8ftbyZR4NKURhrYS0E/vOOhjXE/PxOsEd+uHYX72jxkKMD61EOJhKBuXYJH9YsjFXhOHTUpj8mvBVhS7qJIpJSEIEpZh0gEH0Gddo+UlNp/JKz6BpI70x723PAJizpeNjn2U060l1RCHmZiWL2mP6v1cZWcgstR6cg4MXZIGMnNHBxJf9o//FQAQKnJ9zYzbnzf+la6VafCA/d/T3LluIAgy9smIyaTYEFfgdAYnCDJ9F0P6X5ZvBEFElyD9stDYelkaKA0/hW9aEViPXUSyA== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <35c5fc05-a365-2f95-3528-1d80fbd229be@suse.com> Date: Fri, 9 Jun 2023 14:18:18 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: Xen reliance on non-standard GCC features Content-Language: en-US To: Michal Orzel Cc: Stefano Stabellini , "xen-devel@lists.xenproject.org" , "consulting@bugseng.com" , Roberto Bagnara References: <1cd359e7-5245-a621-3be2-9323ba5b327b@bugseng.com> <8314e0fc-4ead-40fa-ef7b-4da8ce0655b4@suse.com> <80a512ac-d90e-930a-7ef7-8ebb5a80e801@bugseng.com> <968ba799-8fe4-e22f-b678-64e52f789026@suse.com> <9df8560d-4b06-2ab4-b09a-30241dd19676@cs.unipr.it> <4f5e33e7-9606-2cc7-79ec-c03cc724b6c6@suse.com> <8efd91fd-bb36-9073-654f-fef32d0da443@amd.com> <13d13f3a-26b7-ea99-8ba3-f868cee1e3ac@suse.com> <95de848c-8bcb-c16c-b196-d979f1ce0db2@amd.com> From: Jan Beulich In-Reply-To: <95de848c-8bcb-c16c-b196-d979f1ce0db2@amd.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR3P281CA0117.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:a3::8) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|PAXPR04MB8428:EE_ X-MS-Office365-Filtering-Correlation-Id: 7b680992-fb83-4b7f-2ade-08db68e39deb X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: ULAFUIxfVkDfvJjpa48L4DsNiXR6WThf+QJKrN1QeWHutfanSMjeLoRd9Iz5tSfvcZL+CzvzvNn92HcKic3hUZwZVD/qn71njNnTQVqqeN2KD33CL4BVlTt1t7MlztvnA+TEMVKladpkYP1G41HKJbn0E02znQeZOed237r48TgX63Cilv/JM0UOYDjQYbzmC9Z5m31i9LmdibM7ccO9uI65o0YeqTSF2bgEBn3wmp/e0nZiTveS0ByRB4W39yfcKVT7A9nqOA0Tm8PE39DA4p6XLg+cn7Vlp6ysf/d1k9Qd4FljJj3Tt0wjKT8plgNsJwtPBBxotEkHTHl5yQVuUBKp94hsowTk0vbyJdOwO0nbTI49W91AdIP+UBmHVVZf+eKWD3wZ1HSO4p+w7ZZKlMjEMFFWYWvs37IxJd81vTQv1dkl12H0Zb+5ET76GcJPAjleEm1RwDOl6KzW4XBHA1t6g2xe4A+vpNiF8s4mJJdOtV7Z7phGzblLXq+gxAoqMclGyapZqh3GhqdYczI2teifl3ge0FfY6r4KHcgBhszTxm1zz7SB4567lS0nVsxuslwo8Tpc1z4004ZgCCE3wuJbyTWc5SAVbyNgKO8DePGucO7eDmenJ8msi7LfJfQ76aa5ScbrzrGYYpfTvXdYiA== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(396003)(136003)(39860400002)(366004)(376002)(346002)(451199021)(54906003)(478600001)(8676002)(2906002)(8936002)(5660300002)(31696002)(36756003)(86362001)(6916009)(66556008)(66476007)(66946007)(316002)(4326008)(6506007)(41300700001)(2616005)(38100700002)(6512007)(53546011)(26005)(83380400001)(6486002)(31686004)(186003)(6666004)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?aFNLWTVIMVBWRk4ySnRFRjhaVGMxSnE0eXVJNzVOMmtHN0IwcEJ2MHZVK1FS?= =?utf-8?B?N0tNY2lFVlMvZjY1dnZKR01ha2pLcGEvZFI1bWh2SWVQVmRMRS8vRUZvYjFs?= =?utf-8?B?WmxKMS9DQkZZRmRISnhPQ1NEdkxyU2YyV09MOU5ISElERzZselRENHNNdGQ0?= =?utf-8?B?eUFzRUV5RHVhVTYzdUs3Y1JVdUN1ZE80NTA3T24yeU5RMHJMUVM2eFlaYkFs?= =?utf-8?B?bzRveDUrTEladmNsT0JpdmIwY3lCNDBsQ2N4ZDRhaE5UUWVYdzlXSFJlKy9Y?= =?utf-8?B?WVhnYzUzSWNkem40MWRUL0xCTzJBVzNlR29haHQwSVVXM1MweHA3MVRTcTQx?= =?utf-8?B?WEFPRk5na0M0L1NYWklWMHhXc21XSXZ1SWVwdktHcXdQY3ZtYzlJMHgxZzc3?= =?utf-8?B?TzdOaUlTOUVqajhPWmNrTkV3KzdCZG1IUU5uWkJ6NTJFOXZJSXZWQk53c09G?= =?utf-8?B?LzRpeGhJQ1Y3WkNjVm5WelB0bFRUdTYybDNraTZFMXZSTmFLcWg4Tzk1cjYw?= =?utf-8?B?RTZzOWlBME5Pby9TRS80RUp3YkdYeEowRkVmSGdEU0czRnNUckdwY29Ib1hj?= =?utf-8?B?QkQvTGVUSWd1WlpJcUVzdkt1MEdOSlpGSHV3OVlhVE55aE4wM283MXVkZUxM?= =?utf-8?B?ZmdyczZCd0lDUkppbStsbFRRVkF4N3N1MkRxWkdiVjhiaHduNjBqQmxBdE5H?= =?utf-8?B?a0prbUoyMWxSNForQlZrZXhTQm9oRlhpRUVZaDBlU21IaWh4OUZYOWJtMHdp?= =?utf-8?B?RW15N0hqRDQwYzV3TXN2V2gyZ3FQTlNYaExZSkd2dXo4enBwTzA2Z3Q2Qm5I?= =?utf-8?B?QVozMmVZTWV2SS9SaFBOd2xHMHZqQ2tZWUxOQkYyQkk3bk4zZ1RIbzdGcHFm?= =?utf-8?B?RE1IaHZjRENKcjAyUmJXVGk4Z1FlZ0NUbmxWaFRRL1NSU0tSWUVhdzJtYitP?= =?utf-8?B?ZWlrT0FEMWwrRnJlOHppaVh1MFRyT2tvN0QwUWljSEYvY1E2Q2ZpZVhxMkMv?= =?utf-8?B?OG9RQ1JKM1RldnR2c0g0QnBPOElURnpxM0JwUkc4QmRkNmNSN0xNcW1BWVlL?= =?utf-8?B?Wm1lY2RmT0gvT3NrZmJtUFRvb0ovQUdmYW9TTFRoZjU3NWlUTGdXVHprTHlr?= =?utf-8?B?VUVoRiszTXBUODA5MzJiOW9vMHo0Z2s3VzEzUzRVZFBkSHFhK0o2ZmhsOVpQ?= =?utf-8?B?THd2bmc3SFlCSlV1U3lYYmNOczRmaHh4V0ZGOGNmVUlBWVdSaDd1am5OYVdD?= =?utf-8?B?TzRpVUxlVmxyajZ3SnFGd0s5SlNrSDlYTkJIeXIzeEFWeG80QzlYM1c5WnJL?= =?utf-8?B?WElBSmNxNHZENjBSbkxmTnFKU0ZEYk4xSGFpTkZXV2t5Y1FCM1lQVWx0Mk04?= =?utf-8?B?NUZMWXpZUGhqQnJyVldqMWF6aGRaSEVVK2cyR29CWC9SZi8vcTRneDF2UmMr?= =?utf-8?B?Tnl5eHhBYTFFblpvUy9uZ085T0VWa2YycVdqck9ya29jTWlCdE5VSlp1emJw?= =?utf-8?B?SVRoemptWmVjMVZtRlBsQW96Zks4Q0NJeThDMnp4TXVPWG94Q2RPYUdLaHI4?= =?utf-8?B?SDIreW5KT3dES0l4OENFYW0rNmFSY0xGSkd1RGFpbnVTV3NpYVhqSWJTL0dR?= =?utf-8?B?WmNUaVJ5cDB2Tm83RHVMQ0Foc0VIUlFMbHpNblhodDRwQk54R1c3bG1ITHZi?= =?utf-8?B?bndTRkJ2V2pYSXBETkJBOUJxb1NYenlUUmZnMGI5Zlc0YUhFbUYxQUc5dXNw?= =?utf-8?B?VFpCV1NJWHZFbUF5amNybC9Sa3duN1NQZm5WWjJPMXU5bFI4dlR2SjJMMENR?= =?utf-8?B?bmVweC9mR3BadWEwUTEyYVJPRVRybVpLSTdDdmc0SDNZQmdiVUcybU4wOHBJ?= =?utf-8?B?UHBaSndTMExBVDBmOG5pV2ZpUXZ1RGVsK3RmQjNiY0N6U3VBWDg0L0V1WnlI?= =?utf-8?B?MEFNTzZZdTNDSFh4WUZXSHcwVWp2N0pqZS9RdmRCK1FjSStWMVY2eXNaa3lJ?= =?utf-8?B?VUdSczZSKzlueGMwOGlLUWMyWHdPU2xhbXVYVFo3cnIrZVphMjNURGl1cHR3?= =?utf-8?B?a1BiWDJnUVY3QmdaY0V1dURLSktCdXVnM1dianFJNEpuQVZSUTUzaW5rakln?= =?utf-8?Q?fX/l3pfNJzIzMILu/6lJVsh3Y?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 7b680992-fb83-4b7f-2ade-08db68e39deb X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Jun 2023 12:18:22.2602 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: nPMtBrsReUbn5+D5bdEZoXBbhujh9EzdqdAh/ev4Axup24gtGbaH6XyAsL2kQIyPX0/Ahf8aOZ919uoOd0jzDQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB8428 On 09.06.2023 12:12, Michal Orzel wrote: > > > On 09/06/2023 11:47, Jan Beulich wrote: >> >> >> On 09.06.2023 11:36, Michal Orzel wrote: >>> On 09/06/2023 10:54, Jan Beulich wrote: >>>> On 08.06.2023 14:18, Roberto Bagnara wrote: >>>>> On 07/06/23 09:39, Jan Beulich wrote: >>>>>> On 05.06.2023 15:26, Roberto Bagnara wrote: >>>>>>> On 05/06/23 11:28, Jan Beulich wrote: >>>>>>>> On 05.06.2023 07:28, Roberto Bagnara wrote: >>>>>>>>> U6) Empty declarations. >>>>>>> >>>>>>> Examples: >>>>>>> >>>>>>> xen/arch/arm/arm64/lib/find_next_bit.c:57.29: >>>>>>> empty declaration (ill-formed for the C99 standard, ISO/IEC 9899:1999 Section 6.7: "An empty declaration." [STD.emptdecl]). Tool used is `/usr/bin/aarch64-linux-gnu-gcc-12' >>>>>>> >>>>>>> xen/arch/arm/arm64/lib/find_next_bit.c:103.34: >>>>>>> empty declaration (ill-formed for the C99 standard, ISO/IEC 9899:1999 Section 6.7: "An empty declaration." [STD.emptdecl]). Tool used is `/usr/bin/aarch64-linux-gnu-gcc-12' >>>>>> >>>>>> Looks like these could be taken care of by finally purging our >>>>>> EXPORT_SYMBOL() stub. >>>>>> >>>>>>> xen/arch/arm/include/asm/vreg.h:143.26: >>>>>>> empty declaration (ill-formed for the C99 standard, ISO/IEC 9899:1999 Section 6.7: "An empty declaration." [STD.emptdecl]). Tool used is `/usr/bin/aarch64-linux-gnu-gcc-12' >>>>>>> >>>>>>> xen/arch/arm/include/asm/vreg.h:144.26: >>>>>>> empty declaration (ill-formed for the C99 standard, ISO/IEC 9899:1999 Section 6.7: "An empty declaration." [STD.emptdecl]). Tool used is `/usr/bin/aarch64-linux-gnu-gcc-12' >>>>>> >>>>>> I'm having trouble spotting anything suspicious there. >>>>> >>>>> The macro expands to definitions of inline functions >>>>> and after the macro invocation there is a ";". >>>>> >>>>> The preprocessed code is then: >>>>> >>>>> static inline void foo() { ... } >>>>> ; >>>>> >>>>> where the final ";" is an empty declaration not allowed by >>>>> the C99 language standard. >>>> >>>> Oh, I see. >>>> >>>>> Removing the ";" after the macro invocation is a possible solution, >>>>> but other possibilities exist if this is strongly unwanted. >>>> >>>> We have other macros to instantiate functions, and there no stray >>>> semicolons are used. I think this wants doing the same way here, but it >>>> being Arm code the ultimate say is with the Arm maintainers. >>> Apart from vreg.h the same applies to TLB_HELPER of arm32/arm64. >>> I think also TYPE_SAFE would want to be fixed. >> >> Indeed. For this last one I wonder though whether it wouldn't be better >> to continue to permit (really: require) the semicolon at the use sites, >> by putting the typedef-s last and omitting the semicolon in the macro >> definitions. > This would be an error I think since the functions are defined using this type > so it must be defined first. Unless there is a way to forward typedef. Well, I didn't make the suggestion without first checking whether that would (likely) be possible. > All in all, > removing semicolon at use sites is simpler. Simpler - yes. But syntax-wise I think it is best if, except in special cases, kind-of-statements and kind-of-declarations ended with a semicolon. Special cases would be in particular ones where macro definition and macro use are next to one another. Jan From xen-devel-bounces@lists.xenproject.org Fri Jun 09 12:21:30 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 09 Jun 2023 12:21:30 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546024.852609 (Exim 4.92) (envelope-from ) id 1q7b7K-0006dn-0s; Fri, 09 Jun 2023 12:21:22 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546024.852609; Fri, 09 Jun 2023 12:21:21 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7b7J-0006df-UM; Fri, 09 Jun 2023 12:21:21 +0000 Received: by outflank-mailman (input) for mailman id 546024; Fri, 09 Jun 2023 12:21:20 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7b7I-0006dV-H3; Fri, 09 Jun 2023 12:21:20 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7b7I-0002wq-BL; Fri, 09 Jun 2023 12:21:20 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7b7H-0004ZU-U4; Fri, 09 Jun 2023 12:21:20 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q7b7H-0007Il-Ta; Fri, 09 Jun 2023 12:21:19 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=JfamblaijrASsETw3UJOVVu3Ii6iFVNbbXKANO2BttQ=; b=n67zl4Fg1JAnGHP0lUwCf3Ycog /wkL9TSCM5N6ep6wrVhB1aFbmuQ2Qv1dCTRraspivBunitGsmSAS3rqujb4GlTzFb4wrQBHrt6qJP L4dn4gZnmln1uQU5mEb5dPt4opnG0VXfTzQCTXZmkdQFcpBBf5rbfINo7hhWjEpRpyi8=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable test] 181325: trouble: broken/fail/pass X-Osstest-Failures: xen-unstable:test-armhf-armhf-libvirt-qcow2::broken:regression xen-unstable:test-armhf-armhf-libvirt-qcow2:host-install(5):broken:heisenbug xen-unstable:test-amd64-i386-xl-vhd:guest-start/debian.repeat:fail:heisenbug xen-unstable:test-armhf-armhf-xl-multivcpu:debian-install:fail:heisenbug xen-unstable:test-amd64-i386-qemuu-rhel6hvm-amd:guest-start.2:fail:heisenbug xen-unstable:test-armhf-armhf-libvirt-raw:debian-di-install:fail:heisenbug xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: xen=64a647f8d817c6989edc000613b5afae19f03f99 X-Osstest-Versions-That: xen=64a647f8d817c6989edc000613b5afae19f03f99 From: osstest service owner Date: Fri, 09 Jun 2023 12:21:19 +0000 flight 181325 xen-unstable real [real] http://logs.test-lab.xenproject.org/osstest/logs/181325/ Failures and problems with tests :-( Tests which did not succeed and are blocking, including tests which could not be run: test-armhf-armhf-libvirt-qcow2 broken Tests which are failing intermittently (not blocking): test-armhf-armhf-libvirt-qcow2 5 host-install(5) broken pass in 181290 test-amd64-i386-xl-vhd 21 guest-start/debian.repeat fail in 181290 pass in 181325 test-armhf-armhf-xl-multivcpu 12 debian-install fail pass in 181290 test-amd64-i386-qemuu-rhel6hvm-amd 15 guest-start.2 fail pass in 181290 test-armhf-armhf-libvirt-raw 12 debian-di-install fail pass in 181290 Tests which did not succeed, but are not blocking: test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail in 181290 like 181261 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail in 181290 like 181261 test-armhf-armhf-xl-multivcpu 15 migrate-support-check fail in 181290 never pass test-armhf-armhf-xl-multivcpu 16 saverestore-support-check fail in 181290 never pass test-armhf-armhf-libvirt-raw 14 migrate-support-check fail in 181290 never pass test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail in 181290 never pass test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 181290 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop fail like 181290 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 181290 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 181290 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop fail like 181290 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop fail like 181290 test-armhf-armhf-libvirt 16 saverestore-support-check fail like 181290 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 181290 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop fail like 181290 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 181290 test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-i386-xl-pvshim 14 guest-start fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-i386-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-i386-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-xl 15 migrate-support-check fail never pass test-armhf-armhf-xl 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass test-amd64-i386-libvirt 15 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 15 saverestore-support-check fail never pass test-armhf-armhf-xl-arndale 15 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 16 saverestore-support-check fail never pass test-armhf-armhf-xl-credit2 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit2 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt 15 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 15 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 16 saverestore-support-check fail never pass version targeted for testing: xen 64a647f8d817c6989edc000613b5afae19f03f99 baseline version: xen 64a647f8d817c6989edc000613b5afae19f03f99 Last test of basis 181325 2023-06-09 01:53:43 Z 0 days Testing same since (not found) 0 attempts jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64-xtf pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-prev pass build-i386-prev pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-xtf-amd64-amd64-1 pass test-xtf-amd64-amd64-2 pass test-xtf-amd64-amd64-3 pass test-xtf-amd64-amd64-4 pass test-xtf-amd64-amd64-5 pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl pass test-amd64-i386-xl pass test-amd64-coresched-i386-xl pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-i386-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-i386-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-i386-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-i386-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-i386-qemut-rhel6hvm-amd pass test-amd64-i386-qemuu-rhel6hvm-amd fail test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-i386-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-freebsd10-amd64 pass test-amd64-amd64-qemuu-freebsd11-amd64 pass test-amd64-amd64-qemuu-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-i386-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-i386-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-i386-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-amd64-i386-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale pass test-amd64-amd64-examine-bios pass test-amd64-i386-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 pass test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 pass test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine pass test-amd64-i386-examine pass test-amd64-i386-freebsd10-i386 pass test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-i386-qemut-rhel6hvm-intel pass test-amd64-i386-qemuu-rhel6hvm-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt pass test-amd64-i386-libvirt pass test-amd64-amd64-livepatch pass test-amd64-i386-livepatch pass test-amd64-amd64-migrupgrade pass test-amd64-i386-migrupgrade pass test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu fail test-amd64-amd64-pair pass test-amd64-i386-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-i386-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-i386-xl-pvshim fail test-amd64-amd64-pygrub pass test-armhf-armhf-libvirt-qcow2 broken test-amd64-amd64-xl-qcow2 pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw fail test-amd64-i386-libvirt-raw pass test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds pass test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-amd64-i386-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-i386-examine-uefi pass test-amd64-amd64-libvirt-vhd pass test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd pass test-amd64-i386-xl-vhd pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary broken-job test-armhf-armhf-libvirt-qcow2 broken broken-step test-armhf-armhf-libvirt-qcow2 host-install(5) Published tested tree is already up to date. From xen-devel-bounces@lists.xenproject.org Fri Jun 09 12:28:07 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 09 Jun 2023 12:28:07 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546033.852620 (Exim 4.92) (envelope-from ) id 1q7bDh-0007N9-Su; Fri, 09 Jun 2023 12:27:57 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546033.852620; Fri, 09 Jun 2023 12:27:57 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7bDh-0007N2-Pe; Fri, 09 Jun 2023 12:27:57 +0000 Received: by outflank-mailman (input) for mailman id 546033; Fri, 09 Jun 2023 12:27:56 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7bDg-0007Mt-RI for xen-devel@lists.xenproject.org; Fri, 09 Jun 2023 12:27:56 +0000 Received: from mail-ed1-x52b.google.com (mail-ed1-x52b.google.com [2a00:1450:4864:20::52b]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 0f809a42-06c1-11ee-b232-6b7b168915f2; Fri, 09 Jun 2023 14:27:55 +0200 (CEST) Received: by mail-ed1-x52b.google.com with SMTP id 4fb4d7f45d1cf-5169f920a9dso3783884a12.0 for ; Fri, 09 Jun 2023 05:27:55 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 0f809a42-06c1-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686313675; x=1688905675; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=e6eznpnb4WE1YrVxeEoTzAdGBnzBAGxVYJjgDduCRWY=; b=A0qVZhFsJvyNxYngSYEwCP1x84ItLbc0oJsvh6HpK44cekoqJ/aDLJwvLyRMpUc9QD 2V1F6+Yqz41DmRoQQ5HH72YHuC3f8qs0lAjkQ5U+8nPFliJRbRl4DbR3zmpTciKQXYCl 0Xz0OnYsCjsUnmMwLCQY/o4bZu//hAJNb0wFgFzFIfSI55GjZGonFp5dH9OhUHBBWUGc DZIbcF1m9s9t+V04tySvAmQUR8E70DSFcSoZH6gSpSrcf4ACnORoFf5p0t/gCuk9U8Zr PYG30KcknjKomwvYlaXC1TxT5purx5LuJRpjhdFh1vhfjhCcHgAJeEVc7NFEDhzApV+5 POBw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686313675; x=1688905675; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=e6eznpnb4WE1YrVxeEoTzAdGBnzBAGxVYJjgDduCRWY=; b=l/qz6KPw+5C7pkXd2UODPWP9Iyi5CWi3LFqOzHb4iMYiZ/UtOLmKjbUspuPvX18Zs1 8At1TEq/xUEF15pMXOPR96PQjbJMbc8YXT7Soea4OIRI3yfwbs0zUPMGlJM5P9nQPJsV LwuaDjivT3Y5PCkYxtCI8Sj84OJHJ7Xl08tkBne4PntrH5T5SdMKWe1Dgg9xs5uIOHxu JQapJ4Wujl1dbkyXeoYdND2v9Ekrx/H1JtNIrCTUHPQ90lscsTEYpy87HDcdVRov7vPr HFSMIwTkabRpdQ8Dm6iIHF8kq1NrlPODncGFbOInHRffolBVeej1o8lamtN/gyjySGxe 174Q== X-Gm-Message-State: AC+VfDyC6IMqXw12GBMbM1Bh4VCLvGjYL6fAyzdRGCzIG3roe+/lPEJ8 U0OB+4YT1PCcgSyAWrkov53LhW97tOkEeQZWXerXFdu2 X-Google-Smtp-Source: ACHHUZ7C0QCrSclOVlBMuSDBw2xkfuIARt30LEC2XPFYcZ21DStRA2u7nDRl8fDluB/kg7DHC/HbtkZi8ueWiD7nrHQ= X-Received: by 2002:a05:6402:1018:b0:516:4414:eba0 with SMTP id c24-20020a056402101800b005164414eba0mr1866574edu.4.1686313674808; Fri, 09 Jun 2023 05:27:54 -0700 (PDT) MIME-Version: 1.0 References: <20230609101105.2585951-1-andrew.cooper3@citrix.com> In-Reply-To: <20230609101105.2585951-1-andrew.cooper3@citrix.com> From: Jason Andryuk Date: Fri, 9 Jun 2023 08:27:42 -0400 Message-ID: Subject: Re: [PATCH] tools: Move MASK_INSR to common-macros.h To: Andrew Cooper Cc: Xen-devel , Anthony PERARD , Juergen Gross , Luca Fancellu , Jan Beulich , =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= , Wei Liu Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Fri, Jun 9, 2023 at 6:11=E2=80=AFAM Andrew Cooper wrote: > > MASK_EXTR() and MASK_INSR() are a matching pair. Keep them together. > > Drop the pair from x86-emulate.h which includes common-macros.h. > > Fixes: 56a7aaa16bfe ("tools: add physinfo arch_capabilities handling for = Arm") > Signed-off-by: Andrew Cooper Reviewed-by: Jason Andryuk I have (and will now be dropping) an equivalent patch for my forthcoming HWP v4 series. Thanks, Jason From xen-devel-bounces@lists.xenproject.org Fri Jun 09 13:14:04 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 09 Jun 2023 13:14:04 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546044.852635 (Exim 4.92) (envelope-from ) id 1q7bw2-0004JF-8G; Fri, 09 Jun 2023 13:13:46 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546044.852635; Fri, 09 Jun 2023 13:13:46 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7bw2-0004J8-5g; Fri, 09 Jun 2023 13:13:46 +0000 Received: by outflank-mailman (input) for mailman id 546044; Fri, 09 Jun 2023 13:13:44 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7bw0-0004J2-Ey for xen-devel@lists.xenproject.org; Fri, 09 Jun 2023 13:13:44 +0000 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by se1-gles-sth1.inumbo.com (Halon) with ESMTP id 7512cba6-06c7-11ee-b232-6b7b168915f2; Fri, 09 Jun 2023 15:13:43 +0200 (CEST) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id B4331AB6; Fri, 9 Jun 2023 06:14:27 -0700 (PDT) Received: from C3HXLD123V.arm.com (unknown [10.57.73.171]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 184F03F71E; Fri, 9 Jun 2023 06:13:40 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 7512cba6-06c7-11ee-b232-6b7b168915f2 From: Bertrand Marquis To: xen-devel@lists.xenproject.org Cc: Stefano Stabellini , Julien Grall , Volodymyr Babchuk Subject: [PATCH] xen/arm: rename guest_cpuinfo in domain_cpuinfo Date: Fri, 9 Jun 2023 15:13:28 +0200 Message-Id: <7e18eceb2fb2f4cac991773a8697e9bf50b89aaf.1686316358.git.bertrand.marquis@arm.com> X-Mailer: git-send-email 2.39.2 (Apple Git-143) MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Rename the guest_cpuinfo structure to domain_cpuinfo as it is not only used for guests but also for dom0 so domain is a more suitable name. While there also rename the create_guest_cpuinfo function to create_domain_cpuinfo to be coherent. Signed-off-by: Bertrand Marquis --- xen/arch/arm/arm64/vsysreg.c | 6 ++-- xen/arch/arm/cpufeature.c | 40 +++++++++++++-------------- xen/arch/arm/include/asm/cpufeature.h | 2 +- xen/arch/arm/vcpreg.c | 2 +- 4 files changed, 25 insertions(+), 25 deletions(-) diff --git a/xen/arch/arm/arm64/vsysreg.c b/xen/arch/arm/arm64/vsysreg.c index fe31f7b3827f..b5d54c569b33 100644 --- a/xen/arch/arm/arm64/vsysreg.c +++ b/xen/arch/arm/arm64/vsysreg.c @@ -76,7 +76,7 @@ TVM_REG(CONTEXTIDR_EL1) case HSR_SYSREG_##reg: \ { \ return handle_ro_read_val(regs, regidx, hsr.sysreg.read, hsr, \ - 1, guest_cpuinfo.field.bits[offset]); \ + 1, domain_cpuinfo.field.bits[offset]); \ } void do_sysreg(struct cpu_user_regs *regs, @@ -300,7 +300,7 @@ void do_sysreg(struct cpu_user_regs *regs, case HSR_SYSREG_ID_AA64PFR0_EL1: { - register_t guest_reg_value = guest_cpuinfo.pfr64.bits[0]; + register_t guest_reg_value = domain_cpuinfo.pfr64.bits[0]; if ( is_sve_domain(v->domain) ) { @@ -336,7 +336,7 @@ void do_sysreg(struct cpu_user_regs *regs, * When the guest has the SVE feature enabled, the whole id_aa64zfr0_el1 * needs to be exposed. */ - register_t guest_reg_value = guest_cpuinfo.zfr64.bits[0]; + register_t guest_reg_value = domain_cpuinfo.zfr64.bits[0]; if ( is_sve_domain(v->domain) ) guest_reg_value = system_cpuinfo.zfr64.bits[0]; diff --git a/xen/arch/arm/cpufeature.c b/xen/arch/arm/cpufeature.c index b53e1a977601..5f4644865505 100644 --- a/xen/arch/arm/cpufeature.c +++ b/xen/arch/arm/cpufeature.c @@ -14,7 +14,7 @@ DECLARE_BITMAP(cpu_hwcaps, ARM_NCAPS); -struct cpuinfo_arm __read_mostly guest_cpuinfo; +struct cpuinfo_arm __read_mostly domain_cpuinfo; #ifdef CONFIG_ARM_64 static bool has_sb_instruction(const struct arm_cpu_capabilities *entry) @@ -191,45 +191,45 @@ void identify_cpu(struct cpuinfo_arm *c) /* * This function is creating a cpuinfo structure with values modified to mask * all cpu features that should not be published to guest. - * The created structure is then used to provide ID registers values to guests. + * The created structure is then used to provide ID registers values to domains. */ -static int __init create_guest_cpuinfo(void) +static int __init create_domain_cpuinfo(void) { /* Use the sanitized cpuinfo as initial guest cpuinfo */ - guest_cpuinfo = system_cpuinfo; + domain_cpuinfo = system_cpuinfo; #ifdef CONFIG_ARM_64 /* Hide MPAM support as xen does not support it */ - guest_cpuinfo.pfr64.mpam = 0; - guest_cpuinfo.pfr64.mpam_frac = 0; + domain_cpuinfo.pfr64.mpam = 0; + domain_cpuinfo.pfr64.mpam_frac = 0; /* Hide SVE by default */ - guest_cpuinfo.pfr64.sve = 0; - guest_cpuinfo.zfr64.bits[0] = 0; + domain_cpuinfo.pfr64.sve = 0; + domain_cpuinfo.zfr64.bits[0] = 0; /* Hide MTE support as Xen does not support it */ - guest_cpuinfo.pfr64.mte = 0; + domain_cpuinfo.pfr64.mte = 0; /* Hide PAC support as Xen does not support it */ - guest_cpuinfo.isa64.apa = 0; - guest_cpuinfo.isa64.api = 0; - guest_cpuinfo.isa64.gpa = 0; - guest_cpuinfo.isa64.gpi = 0; + domain_cpuinfo.isa64.apa = 0; + domain_cpuinfo.isa64.api = 0; + domain_cpuinfo.isa64.gpa = 0; + domain_cpuinfo.isa64.gpi = 0; #endif /* Hide AMU support */ #ifdef CONFIG_ARM_64 - guest_cpuinfo.pfr64.amu = 0; + domain_cpuinfo.pfr64.amu = 0; #endif - guest_cpuinfo.pfr32.amu = 0; + domain_cpuinfo.pfr32.amu = 0; /* Hide RAS support as Xen does not support it */ #ifdef CONFIG_ARM_64 - guest_cpuinfo.pfr64.ras = 0; - guest_cpuinfo.pfr64.ras_frac = 0; + domain_cpuinfo.pfr64.ras = 0; + domain_cpuinfo.pfr64.ras_frac = 0; #endif - guest_cpuinfo.pfr32.ras = 0; - guest_cpuinfo.pfr32.ras_frac = 0; + domain_cpuinfo.pfr32.ras = 0; + domain_cpuinfo.pfr32.ras_frac = 0; return 0; } @@ -237,7 +237,7 @@ static int __init create_guest_cpuinfo(void) * This function needs to be run after all smp are started to have * cpuinfo structures for all cores. */ -__initcall(create_guest_cpuinfo); +__initcall(create_domain_cpuinfo); /* * Local variables: diff --git a/xen/arch/arm/include/asm/cpufeature.h b/xen/arch/arm/include/asm/cpufeature.h index 03fe684b4d36..894f278a4a5a 100644 --- a/xen/arch/arm/include/asm/cpufeature.h +++ b/xen/arch/arm/include/asm/cpufeature.h @@ -461,7 +461,7 @@ static inline void update_system_features(const struct cpuinfo_arm *cpuinfo) extern struct cpuinfo_arm cpu_data[]; #define current_cpu_data cpu_data[smp_processor_id()] -extern struct cpuinfo_arm guest_cpuinfo; +extern struct cpuinfo_arm domain_cpuinfo; #endif /* __ASSEMBLY__ */ diff --git a/xen/arch/arm/vcpreg.c b/xen/arch/arm/vcpreg.c index 4adfc0a68d0e..39aeda9dab62 100644 --- a/xen/arch/arm/vcpreg.c +++ b/xen/arch/arm/vcpreg.c @@ -169,7 +169,7 @@ TVM_REG32(CONTEXTIDR, CONTEXTIDR_EL1) case HSR_CPREG32(reg): \ { \ return handle_ro_read_val(regs, regidx, cp32.read, hsr, 1, \ - guest_cpuinfo.field.bits[offset]);\ + domain_cpuinfo.field.bits[offset]);\ } /* helper to define cases for all registers for one CRm value */ -- 2.39.2 (Apple Git-143) From xen-devel-bounces@lists.xenproject.org Fri Jun 09 13:18:55 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 09 Jun 2023 13:18:55 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546050.852646 (Exim 4.92) (envelope-from ) id 1q7c0y-0004x1-Rw; Fri, 09 Jun 2023 13:18:52 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546050.852646; Fri, 09 Jun 2023 13:18:52 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7c0y-0004wu-OX; Fri, 09 Jun 2023 13:18:52 +0000 Received: by outflank-mailman (input) for mailman id 546050; Fri, 09 Jun 2023 13:18:51 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7c0x-0004wj-Be; Fri, 09 Jun 2023 13:18:51 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7c0x-0004DV-1o; Fri, 09 Jun 2023 13:18:51 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7c0w-0007gB-Is; Fri, 09 Jun 2023 13:18:50 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q7c0w-0000Hv-IO; Fri, 09 Jun 2023 13:18:50 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=aiGgltt1EcEdTylEruUQkzPf6xNTIlqH5/x+7+bFZmo=; b=n8hkrePc6ce7XJqxxwYV8tzd+V PB9LvqLNRKRkDggl3iSpCTrHGB8r376BRIZ2xSIqJIRLxGDzUrztL28lU9JCSRqhIk1p+1LS1EJFX Q5lHP1dOr+HuuB8ITle5yUyIKgliV3ilIH9W6dM+if2brK5l4dJhtx0QI7gJCXLuBjjU=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable-smoke test] 181340: regressions - FAIL X-Osstest-Failures: xen-unstable-smoke:build-arm64-xsm:xen-build:fail:regression xen-unstable-smoke:build-armhf:xen-build:fail:regression xen-unstable-smoke:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking xen-unstable-smoke:test-armhf-armhf-xl:build-check(1):blocked:nonblocking xen-unstable-smoke:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking X-Osstest-Versions-This: xen=6915a120641b5d232762af7882266048cf039ca0 X-Osstest-Versions-That: xen=64a647f8d817c6989edc000613b5afae19f03f99 From: osstest service owner Date: Fri, 09 Jun 2023 13:18:50 +0000 flight 181340 xen-unstable-smoke real [real] http://logs.test-lab.xenproject.org/osstest/logs/181340/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-arm64-xsm 6 xen-build fail REGR. vs. 181233 build-armhf 6 xen-build fail REGR. vs. 181233 Tests which did not succeed, but are not blocking: test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 15 migrate-support-check fail never pass version targeted for testing: xen 6915a120641b5d232762af7882266048cf039ca0 baseline version: xen 64a647f8d817c6989edc000613b5afae19f03f99 Last test of basis 181233 2023-06-07 02:04:37 Z 2 days Failing since 181246 2023-06-07 11:02:03 Z 2 days 24 attempts Testing same since 181303 2023-06-08 11:00:25 Z 1 days 13 attempts ------------------------------------------------------------ People who touched revisions under test: Andrew Cooper Christian Lindig George Dunlap Henry Wang # CHANGELOG Juergen Gross Julien Grall Luca Fancellu Michal Orzel Roger Pau Monne Roger Pau Monné Stefano Stabellini jobs: build-arm64-xsm fail build-amd64 pass build-armhf fail build-amd64-libvirt pass test-armhf-armhf-xl blocked test-arm64-arm64-xl-xsm blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-libvirt pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 504 lines long.) From xen-devel-bounces@lists.xenproject.org Fri Jun 09 13:19:43 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 09 Jun 2023 13:19:43 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546057.852655 (Exim 4.92) (envelope-from ) id 1q7c1l-0005T0-4j; Fri, 09 Jun 2023 13:19:41 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546057.852655; Fri, 09 Jun 2023 13:19:41 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7c1l-0005St-1x; Fri, 09 Jun 2023 13:19:41 +0000 Received: by outflank-mailman (input) for mailman id 546057; Fri, 09 Jun 2023 13:19:39 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7c1j-0005Se-7r for xen-devel@lists.xenproject.org; Fri, 09 Jun 2023 13:19:39 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7c1g-0004EA-CV; Fri, 09 Jun 2023 13:19:36 +0000 Received: from 54-240-197-233.amazon.com ([54.240.197.233] helo=[192.168.17.204]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1q7c1g-0001nN-62; Fri, 09 Jun 2023 13:19:36 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=gmAa6+t7ceWiF+7N95hf8jBeMsq4KJMoZ11v3Yk8DaM=; b=bL6OtC22HzNzMvX2AbpsNwURrM Q7ota62jSNlXtb+eMw0x7IAmJEyCrfJpCzLgsd61sIKJwMz6ULmChJL0ZR5gpeGhd2YzC2XqolZGi 8IGivj0qVcRWWWj2ntZI36+AiPNIFqeW6wN3kXmH7hnUjcFh2U3cyCpnR1PqJyI0Qqcg=; Message-ID: <063e14e4-4f88-f4aa-56b4-0b450f69e73f@xen.org> Date: Fri, 9 Jun 2023 14:19:34 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.11.2 Subject: Re: Xen reliance on non-standard GCC features Content-Language: en-US To: Jan Beulich , Roberto Bagnara Cc: Stefano Stabellini , "xen-devel@lists.xenproject.org" , "consulting@bugseng.com" References: <1cd359e7-5245-a621-3be2-9323ba5b327b@bugseng.com> <8314e0fc-4ead-40fa-ef7b-4da8ce0655b4@suse.com> <80a512ac-d90e-930a-7ef7-8ebb5a80e801@bugseng.com> <968ba799-8fe4-e22f-b678-64e52f789026@suse.com> <9df8560d-4b06-2ab4-b09a-30241dd19676@cs.unipr.it> <4f5e33e7-9606-2cc7-79ec-c03cc724b6c6@suse.com> From: Julien Grall In-Reply-To: <4f5e33e7-9606-2cc7-79ec-c03cc724b6c6@suse.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi Jan, On 09/06/2023 09:54, Jan Beulich wrote: > On 08.06.2023 14:18, Roberto Bagnara wrote: >> On 07/06/23 09:39, Jan Beulich wrote: >>> On 05.06.2023 15:26, Roberto Bagnara wrote: >>>> On 05/06/23 11:28, Jan Beulich wrote: >>>>> On 05.06.2023 07:28, Roberto Bagnara wrote: >>>> You are right: here are a few examples for U2: >>>> >>>> xen/arch/arm/cpuerrata.c:92.12-92.35: >>>> empty initializer list (ill-formed for the C99 standard, ISO/IEC 9899:1999 Section 6.7.8: "An empty initialization list." [STD.emptinit]). Tool used is `/usr/bin/aarch64-linux-gnu-gcc-12' >>>> xen/include/xen/spinlock.h:31.21-31.23: expanded from macro `_LOCK_DEBUG' >>>> xen/include/xen/spinlock.h:143.57-143.67: expanded from macro `SPIN_LOCK_UNLOCKED' >>>> xen/include/xen/spinlock.h:144.43-144.60: expanded from macro `DEFINE_SPINLOCK' >>> >>> I'm afraid this is a bad example, as it goes hand-in-hand with using >>> another extension. I don't think using a non-empty initialization list >>> is going to work with >>> >>> union lock_debug { }; >> >> Yes, this is C99 undefined behavior 58: >> "A structure or union is defined as containing no named members (6.7.2.1)." >> >> Here is another example: >> >> lpae_t pte = {}; >> >> whereas we have >> >> typedef union { >> uint64_t bits; >> lpae_pt_t pt; >> lpae_p2m_t p2m; >> lpae_walk_t walk; >> } lpae_t; >> >> >>>> xen/arch/arm/cpuerrata.c:678.5-678.6: >>>> empty initializer list (ill-formed for the C99 standard, ISO/IEC 9899:1999 Section 6.7.8: "An empty initialization list." [STD.emptinit]). Tool used is `/usr/bin/aarch64-linux-gnu-gcc-12' >>>> >>>> xen/arch/arm/cpufeature.c:33.5-33.6: >>>> empty initializer list (ill-formed for the C99 standard, ISO/IEC 9899:1999 Section 6.7.8: "An empty initialization list." [STD.emptinit]). Tool used is `/usr/bin/aarch64-linux-gnu-gcc-12' >>> >>> Both of these are a common idiom we use: The "sentinel" of an array >>> of compound type initializer. >> >> Wouldn't it be possible writing such sentinels in a standard-compliant >> way, like {0} or similar, instead of {}? > > I would be possible, sure, but the question is whether we want that. Iirc > in review comments we've been asking to preferably use {}, for being > shorter / less clutter without resulting in any ambiguity. > >>>>>> U6) Empty declarations. >>>> >>>> Examples: >>>> >>>> xen/arch/arm/arm64/lib/find_next_bit.c:57.29: >>>> empty declaration (ill-formed for the C99 standard, ISO/IEC 9899:1999 Section 6.7: "An empty declaration." [STD.emptdecl]). Tool used is `/usr/bin/aarch64-linux-gnu-gcc-12' >>>> >>>> xen/arch/arm/arm64/lib/find_next_bit.c:103.34: >>>> empty declaration (ill-formed for the C99 standard, ISO/IEC 9899:1999 Section 6.7: "An empty declaration." [STD.emptdecl]). Tool used is `/usr/bin/aarch64-linux-gnu-gcc-12' >>> >>> Looks like these could be taken care of by finally purging our >>> EXPORT_SYMBOL() stub. >>> >>>> xen/arch/arm/include/asm/vreg.h:143.26: >>>> empty declaration (ill-formed for the C99 standard, ISO/IEC 9899:1999 Section 6.7: "An empty declaration." [STD.emptdecl]). Tool used is `/usr/bin/aarch64-linux-gnu-gcc-12' >>>> >>>> xen/arch/arm/include/asm/vreg.h:144.26: >>>> empty declaration (ill-formed for the C99 standard, ISO/IEC 9899:1999 Section 6.7: "An empty declaration." [STD.emptdecl]). Tool used is `/usr/bin/aarch64-linux-gnu-gcc-12' >>> >>> I'm having trouble spotting anything suspicious there. >> >> The macro expands to definitions of inline functions >> and after the macro invocation there is a ";". >> >> The preprocessed code is then: >> >> static inline void foo() { ... } >> ; >> >> where the final ";" is an empty declaration not allowed by >> the C99 language standard. > > Oh, I see. > >> Removing the ";" after the macro invocation is a possible solution, >> but other possibilities exist if this is strongly unwanted. > > We have other macros to instantiate functions, and there no stray > semicolons are used. I think this wants doing the same way here, but it > being Arm code the ultimate say is with the Arm maintainers. I don't think there is a reason to keep the ";" after. So I would be fine if this is removed. Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Fri Jun 09 14:09:05 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 09 Jun 2023 14:09:05 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546070.852670 (Exim 4.92) (envelope-from ) id 1q7cnJ-0002dr-U9; Fri, 09 Jun 2023 14:08:49 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546070.852670; Fri, 09 Jun 2023 14:08:49 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7cnJ-0002dk-QC; Fri, 09 Jun 2023 14:08:49 +0000 Received: by outflank-mailman (input) for mailman id 546070; Fri, 09 Jun 2023 14:08:04 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7cma-0002cq-QN for xen-devel@lists.xenproject.org; Fri, 09 Jun 2023 14:08:04 +0000 Received: from mail-wr1-f51.google.com (mail-wr1-f51.google.com [209.85.221.51]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 0c0c451a-06cf-11ee-b232-6b7b168915f2; Fri, 09 Jun 2023 16:08:02 +0200 (CEST) Received: by mail-wr1-f51.google.com with SMTP id ffacd0b85a97d-30e56fc9fd2so1794761f8f.0 for ; Fri, 09 Jun 2023 07:08:02 -0700 (PDT) Received: from raton (lfbn-idf1-1-119-188.w82-124.abo.wanadoo.fr. [82.124.204.188]) by smtp.gmail.com with ESMTPSA id e8-20020adff348000000b00304adbeeabbsm4601028wrp.99.2023.06.09.07.08.00 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 09 Jun 2023 07:08:00 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 0c0c451a-06cf-11ee-b232-6b7b168915f2 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686319682; x=1688911682; h=content-transfer-encoding:content-disposition:mime-version :message-id:subject:cc:to:from:date:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=Gg7DsMTfj/KJ76M+QDc4B4gyYVLz441GJruIrtS336U=; b=DnsGq0ke/vVeQytporu+zdcioRvuuJ8oKr3XK3K6KNkj7bVSDISU0XKj7hnxg5m1ek xxpvj8Nvb/8vb8JTMIzaZIUNsaTHn4zH+3LDWCSgcpOwHjDOMjbWhm4y1oVhn/OC2PK4 6V3bVGJotOtUbA2MgodMagr4kLHV/ffVyLkxh7/Yd3sQcyPJPu2W3bfsxe6+QB+PVZNq 1ELq42c3grhLMO7klDpSN7FHJs5a7H1srVqD/GPUGSu0eygpocoIS9KKBIaP61mEEEWI yNIWy6MCLkbJo/gEdDte1GlER6FrDWcAWCT4gN/zvOfyBvcFfkn4J4Clj53XydByu1P9 b1/w== X-Gm-Message-State: AC+VfDwZaiNF6DWHTDVuJr+ctjeSwSNPDeS4gIFHio6cMP4QFVN9JL1O B4x/xt2KC1IV+seCv8fByeqv69WjvMzSBjZr X-Google-Smtp-Source: ACHHUZ6m2VKFj3K/UNqUvgayeRcba/umAu/0L+r6NNLaCJqBEDVURTzj5E/ZPtquT1gDPVOPsKex1Q== X-Received: by 2002:a05:6000:1cf:b0:30a:e619:3a71 with SMTP id t15-20020a05600001cf00b0030ae6193a71mr1173497wrx.23.1686319681374; Fri, 09 Jun 2023 07:08:01 -0700 (PDT) Date: Fri, 9 Jun 2023 16:07:54 +0200 From: David Morel To: xen-devel@lists.xenproject.org Cc: samuel.verschelde@vates.fr Subject: RHEL 8.8 and derivatives: suspend and live migration issue Message-ID: MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: inline Content-Transfer-Encoding: 8bit Hello, This mail is meant to be more of a summary plus a heads up, I don't think there is any action needed on it. A user reported [1] a crash when live migrating a VM running Rocky Linux 8.8. After investigation it appears to be happening: - for RHEL derivatives when migrating from 8.7 to 8.8. - on suspend/resume - on live migration With a callstack we provided, Roger Pau Monné quickly identified the issue as being the addition of: - x86/idt: Remove address operator on function machine_check() [2] While missing: - x86/xen: Split HVM vector callback setup and interrupt gate allocation [3] Version-wise: - 4.18.0-466.el8 will start having the issue as it integrate [2]. - 4.18.0-477 are versions used in 8.8 releases, these versions will therefore have the issue. - 4.18.0-488 that can be found in CentOS 8 Stream integrates [3] and works fine. According to the RPM changelog I think the bugzilla entry at RH should be the number 2187810 [4], but that is not publicly available. The -488 versions are not yet available for the derivative distributions. We do not think there is much to do, raising this to Rocky Linux or Alma directly likely won't change their kernel upgrade plan. [1] https://xcp-ng.org/forum/topic/7420/live-migrate-of-rocky-linux-8-8-vm-crashes-reboots-vm [2] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/drivers/xen/events/events_base.c?id=fbaed278a3cc72a46aadae667b8c6754b78640a6 [3] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/drivers/xen/events/events_base.c?id=a0bb51f2638e0810c347024679239fd10a8f7990 [4] https://bugzilla.redhat.com/show_bug.cgi?id=2187810 -- David Morel From xen-devel-bounces@lists.xenproject.org Fri Jun 09 14:24:33 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 09 Jun 2023 14:24:33 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546078.852679 (Exim 4.92) (envelope-from ) id 1q7d2G-00053T-9E; Fri, 09 Jun 2023 14:24:16 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546078.852679; Fri, 09 Jun 2023 14:24:16 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7d2G-00053M-6W; Fri, 09 Jun 2023 14:24:16 +0000 Received: by outflank-mailman (input) for mailman id 546078; Fri, 09 Jun 2023 14:24:14 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7d2E-00053G-3B for xen-devel@lists.xenproject.org; Fri, 09 Jun 2023 14:24:14 +0000 Received: from esa6.hc3370-68.iphmx.com (esa6.hc3370-68.iphmx.com [216.71.155.175]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 4d0cad58-06d1-11ee-b232-6b7b168915f2; Fri, 09 Jun 2023 16:24:12 +0200 (CEST) Received: from mail-mw2nam04lp2168.outbound.protection.outlook.com (HELO NAM04-MW2-obe.outbound.protection.outlook.com) ([104.47.73.168]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 09 Jun 2023 10:23:57 -0400 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) by MW4PR03MB6458.namprd03.prod.outlook.com (2603:10b6:303:121::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.42; Fri, 9 Jun 2023 14:23:56 +0000 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::192:6bdf:b105:64dd]) by SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::192:6bdf:b105:64dd%3]) with mapi id 15.20.6455.028; Fri, 9 Jun 2023 14:23:55 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 4d0cad58-06d1-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686320652; h=date:from:to:cc:subject:message-id:references: content-transfer-encoding:in-reply-to:mime-version; bh=hOxvSz3e1SlP0IKgRLf4Inrz2ducAuu1a5g/FKTSyYI=; b=C1Yqkq4l7J5StxGWeajP62rjDF9wgyQYy7h6wyaVULcq357EMsB7vRIA kWak1XPgRf22qimZunHz5PVqRT6Jd8u/hW0rBbqWO0x+te59XalAZHPqg KUSwc2JxMmVSf54m+71OajjTuK9NMvrQmkxYqPkfqMDwPyb3E7IDb0Q2/ Y=; X-IronPort-RemoteIP: 104.47.73.168 X-IronPort-MID: 111546699 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:LDuuhKxi86sgBdYyJmJ6t+cExyrEfRIJ4+MujC+fZmUNrF6WrkUDm mYbUGDUO6qIYTDwLYsiaI3ipEsOusWEmIAyQAI/rSAxQypGp/SeCIXCJC8cHc8wwu7rFxs7s ppEOrEsCOhuExcwcz/0auCJQUFUjP3OHfykTrafYEidfCc8IA85kxVvhuUltYBhhNm9Emult Mj75sbSIzdJ4RYtWo4vw/zF8EsHUMja4mtC5QRgPaET5TcyqlFOZH4hDfDpR5fHatE88t6SH 47r0Ly/92XFyBYhYvvNfmHTKxBirhb6ZGBiu1IOM0SQqkEqSh8ai87XAME0e0ZP4whlqvgqo Dl7WT5cfi9yVkHEsLx1vxC1iEiSN4UekFPMCSDXXcB+UyQq2pYjqhljJBheAGEWxgp4KTxK/ /sIBCsdUg2S2OHs6bK4RcB+3Nt2eaEHPKtH0p1h5RfwKK56BLX8GeDN79Ie2yosjMdTG/qYf 9AedTdkcBXHZVtIJ0sTD5U92uyvgxETcRUB8A7T+fVxvDOVlVIhuFTuGIO9ltiiX8Jak1zev mvb12/4HgsbJJqUzj/tHneE37aWwH+lBtNDfFG+3uZ6ggGL+jcLMgYtTWTn+ui1lla1ResKf iT4/QJr98De7neDQtDjXhH+pXmesxo0RdNMHvZ85hvl4rrZ5UOVC3YJShZFacc6r4kmSDoyz FiLktj1Qzt1v9W9UnuY67qQ6y2/IzMeLWIGaSIsUwIZ7sKlrptbs/7UZtNqEarwi8KvHzj1m 2yOtHJn2eVVitMX3aKm+1yBmyirupXCUg8y4EPQQ36h6QR6IoWiYuRE9GTm0BqJF67BJnHpg ZTOs5H2ADwmZX1VqBGwfQ== IronPort-HdrOrdr: A9a23:g7nCia+aFbdlYPD5uCBuk+DnI+orL9Y04lQ7vn2ZhyYlC/Bw9v re5MjzsCWftN9/YgBEpTntAtjjfZqYz+8X3WBzB9aftWvdyQ+VxehZhOOI/9SjIU3DH4VmpM BdmsZFebvN5JtB4foSIjPULz/t+ra6GWmT69vj8w== X-Talos-CUID: 9a23:pvJfWG8VOiTmptP2BnKVvxMQEMc1XmbN8GrBfEziIGZqR5SHE0DFrQ== X-Talos-MUID: 9a23:pQ/vzQYqydoCdOBTry/u2Cleb99S+J+2NxxWgJkao8KaDHkl X-IronPort-AV: E=Sophos;i="6.00,229,1681185600"; d="scan'208";a="111546699" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=b9zPsr48PByP78QFhW07yto6qGxYiVKx3fVRCfxKitG+8rZjInFzBgDVJz938wbLPrikTifiuqgbmD33K9ylJffSOtymMfI/05QHCRFdp9EXWLDuDZMGJ8NGHQy4xr6b1NtUpvfSxHqyuygn8MJkSTOSRoHpXd7HE7oSAafDqIYP/QaeGfvnISursyN3PO6uhD/9lW+cMMX+TdwPn9OwpJm89gBEWEdlbyO1nnUsAHB9t7rOYWAnfqCIYRwcozlvA1syKs5/VKqAikEqJWjW8KQF9kVsJ0FKyp1NEWrsUfMPoDG/w5J9jAeXTI7YvPy8xkd0rg1kltDSbNN7Cl23cg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=DRwNSNm/3CDdAaK/iUyDSGKTbzYTMyRIaMq1Ol835Y4=; b=gztnMhqT4DPFjjT3pK5v5DAMHCR2+iI80Oiksb9YC/MTCaQz3HW+YAsFcbILNEybvi8uOAYPAprCBsncgCAWM1/a5XNrwvYZKP6W88B9vaLdjJBGmJBt4JH7NGKJ8G+kEXFB1HiXBtqa1F0FLMBPOqIxxQPUN1naNUC5AUSBNtmvLQ2G2dfsGIPfE7d9b7LlM9zC/mq1vW16mEg2W3xgZ+E0+2AWJRMSv+UF3fQftSjWFpBpkMAZ6LOdWqWLbXRyoVVAc73jdMYLk3DiZg7/qC3A4083RiA+KpC4NobFfY5YxQ8GeYNlnvol0LlloJ1N7wLV6uI19kCRrgQpcESFkw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=DRwNSNm/3CDdAaK/iUyDSGKTbzYTMyRIaMq1Ol835Y4=; b=CjBQuLb1XuOmvFiEWjLuyQFPLEcLyuJO8/fY6euL3lEdg0rccynmDVJcwia2EIBh3lnbMGCd1uZrrTNJT7ZHMVGhYJOLXt9WHKfWPAkD0uBEZr1ebf8qywT8GINewyinQjXd5ggungntn5z0l4ZolVEmuf1a3jtqPccaeJrPX0Y= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Date: Fri, 9 Jun 2023 16:23:48 +0200 From: Roger Pau =?utf-8?B?TW9ubsOp?= To: David Morel Cc: xen-devel@lists.xenproject.org, samuel.verschelde@vates.fr Subject: Re: RHEL 8.8 and derivatives: suspend and live migration issue Message-ID: References: Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: X-ClientProxiedBy: LO2P265CA0153.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:9::21) To SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|MW4PR03MB6458:EE_ X-MS-Office365-Filtering-Correlation-Id: 7b5685a5-4ef4-4d0e-22a0-08db68f5285a X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: STSJ4k68wrCtt6ZHi7XBM42iX77A2SbHuf9OZoiZElYLfHPayU5cDhhArNRnde+Xsbq8vVTixBFR7ETONA1BRNCB491F4hi6yCF14dLzOfkGMTdy/pZVtPWxjX0eJvOHYB0WSch0BEITNvAD1P5WTfX65RHP5aCU4a/wnXVbW+fDdZDI/ZCvvx61lPtFjDEZLwpcNtqse4gO1tu+s94CaOjc0IphClNw+yGJ1XsSGFUssMIpvtOeZJC/ATp2hYtrYkqg0N0zkcAX+cUn+PMF7jeMaj9wt+uZ/U13j8dT7LdvSsYGFaKN9ANfkU5/bVXYUoXh50Crx57dBNLmXwsQTolQg1f81aYvnbc05OSWDZx9gFz1BtFKbpQweZf6bsKw3ci7hvXAoOTav/A2fecNc1VgmZFhB4DeMU9BqZI6xGw0kBdHtVZ7doe72bKIFgwpFfmFYPhyc8wUMtdm2nDiAyThaCRmxrkcCwwNj/Yp79Vu8xp2u6YHw5WVjAl1LV5Vwvff1OB4rg8Ypta9ES9ar0MCK/zIZ/LVZRRN9A23rCw= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(7916004)(346002)(366004)(39860400002)(376002)(136003)(396003)(451199021)(6486002)(478600001)(316002)(966005)(66556008)(66476007)(4326008)(6916009)(6666004)(66946007)(41300700001)(5660300002)(8676002)(86362001)(186003)(6512007)(26005)(6506007)(9686003)(4744005)(2906002)(8936002)(33716001)(82960400001)(38100700002)(83380400001)(85182001)(15650500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?Z2VCa3N1Rys1VjVUY1pONG9hN01DUkZnM2NYamlTVnEzVytmdEYzeHdBTlp0?= =?utf-8?B?aFVRQ3lodkNaSEFLeWJ0QytiU1I3aU5SRDhCZVlXUnJGMUpTWFhZdWNYeDNB?= =?utf-8?B?VXBDZE1ET3JOYnljN29GQ3FRakxSeHNrUzluZzYzVTZWZ3lRL0FReXR1Njgx?= =?utf-8?B?N2JVUjgvZUdSY0s2ZWJHNlVobmNNSmNNZSsvYmR1dzNCVzM3aWQvWmQ3ck9o?= =?utf-8?B?VThiMTR5Ny9DaG5vUVgvZll2S3dKWTRhOWZqeFBtUk1kK3pZNzZSR1ZxMDV1?= =?utf-8?B?bFp6anluZTNTQkZEWENraXZrYkpnV1MrbC9lTW0wTVlMQ1RDLzhBUVg4WkRR?= =?utf-8?B?RTlYYkdJRXhZSW05ZE83cjY5dTBBdUdJTGprY0RyZlJMVmgrNHUxeThMRS9h?= =?utf-8?B?aWd4eWpWdVgyUXZMenVwMm91Q1psWEdlSHg2ZkZySkNxby96SXVjQVpmYndH?= =?utf-8?B?bkxJcUlSVzJaSG5MR0NvZU5VNkZWeXJZU3dDMGtyelluemY1S05yUzZBcGFj?= =?utf-8?B?c0lpa1p0Vy8yenNIMGpzNzJuclI4SDJmeWRrbGsyRUhHcFFtUkRqbVEyTk9a?= =?utf-8?B?bTIzRFNxd1pOMFM4aWp6TEJYV3kxWTFCVHRZRHMvZTlCR29YV25nZWNKdUlR?= =?utf-8?B?eUluNzl5eVlnZWk4RTRaOUxnUXE0Y0VVeVBrd21yUnRUTEFTUkdoMGUxYzI4?= =?utf-8?B?U1FOMks5c0tBeG1ESHNHQTFvSkZ5Nm9sa3BzNm5heGpBcy8wRzR2OHhOblFu?= =?utf-8?B?VC9LWlBWQ1podWtLNkpWelloNzcwMDdNWEd6TktvSndXcUN5RVJieFBaNEtx?= =?utf-8?B?TlplamJLOUY1UEVaRFo4dDc2aXQraEhidXhDcVgrOXNrRWpnOFRNMTNaSFNw?= =?utf-8?B?ejBnejZBclphb0J4bk5HWW9qOExveDJ4V1psKytJUEVxb2xBdHVsNC9TTXBr?= =?utf-8?B?QVF1THRpZE5oTWg3SUNZajBENzR3WllabU5OWHNnNTBNQlZlSm44NnNOdWRF?= =?utf-8?B?YzZGQVhJWFVncWJzdTZBT3NJRWc5UENHQjVlU3ZPdk9lY3ZmRk5CRmlodnRs?= =?utf-8?B?TlNHM0xSWTE4c09hN09uWmtPVU5YNUZmMXFTbXFwYzFRVHB6azkxdEw5VExw?= =?utf-8?B?aG5iNnBXYVlBYjlXeERzRm1yVjRyM2hydFhtWFhoN2RFZHJ1dlN4MkQ4a2sw?= =?utf-8?B?bnE5ZVpCMW9BbWU3b096a3BMVmFQZWJJMzNBTTVnVVNqK3UzQnM1SWNHNnlI?= =?utf-8?B?NG1qeU9CREJyZU9iWW1WQmpTcXhOVGlEKzNxMUV1dnhpS3U2dWgrazRjODhu?= =?utf-8?B?MEowNGlmeXlQTmE2THd3RXM5c1JBelNKbXAxN3BWb0VBTFBoR1ZISHA2L3Mw?= =?utf-8?B?WHk2bG5PUDBOMDlSMTBHSmRiM2gyd2p0QkE5Unl0OWVjOVlaUC9GRmtpNDhI?= =?utf-8?B?d1hOY1djNnI1eVZmYUxQQktRRkJYRStSUTdaeHlJZTNFaEl5K0JZc01VMVFY?= =?utf-8?B?UitsVithNlVtY2g0MWlZQVJ3UlhmY1JHandRQjRqVEQ1NTlYNHVNZUxwdDJU?= =?utf-8?B?UlZBY0l5Sit6NEVJUVdOR1MzaXBOaWtxTW0wa3QwOUF2WXduTVpTQjR1ak9v?= =?utf-8?B?c05ONjBRMXI3QWxEeEI3MXFMMXprbFNjVzNTTXNJL3ZNR04zaXVaUlJEOVdz?= =?utf-8?B?MEk0WTBqTWNPZzZITDI0SFJVOEhCT3h6TGd3bjZhUU1YMUVUbUtQTE1ITCtj?= =?utf-8?B?R2pOUzA2ZkFEVzVFNk8wU3hWSHRsS2gvMkY2TkpSNjlDQnQ2OHZTKzZmcjRt?= =?utf-8?B?eG1MOFNtakl3aUtCUlRrc3F3dzhVZjB3Ny9HS0dSRHRqdW5QazdGM0pJR2hv?= =?utf-8?B?VDI5N0g4UHhMTHZIeHRTS0hLejNpT1ZSMlhFeXJhQXQxVjlCSzBWaGMxOWRl?= =?utf-8?B?Y25helZRSTFhOXczenc4TWg4elNZTUZEbFBwa2w1NTZwd2hieXhqakVNWTdv?= =?utf-8?B?dUJZMFJzR2N6VTR0dk13UWRubjQyS3plREh6cUt4TFF2dkQydU1mRmh0Ym9i?= =?utf-8?B?aXFnbTMzM05RWEREWWY5bTYwQ2Q1ajMxMEo2SFh0MytsWWVOUnFxcU5EVkN6?= =?utf-8?Q?wYHpsGPSiuQlfmB63sH87H1wV?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: f/032z8cZNfFazewj/0nE77YQZSPviobHrKHk3BFE2BLQpmZBkVS6wFnrkTFzwgQaHqqZAX6qT++NHX969Yj72v3sd79YicrKsviIVJEaD27K36BRcayPou5eH+Hv/z7JKF5DhalLJhjNqM9otSPBJ0a87uuVI/poc7Mf13xEbJ+vOIteSl8VAmhY+nNTAntmO4pCvc1F08ICcD2KRAcgaJtedf60LG10FjIgDkn9cRG0CUPwLhSKnXfgBxtJ5NLUHeuFqHASIQ7dvM0vtyzNKWD5ENDeXSHmAqtFmNChVOc531EDXy/nodiNdYRO0E07BiB/qFV32DJF5x3cK/wPHbB7mUngA7VZmqYOthtl/CaksfiHkBTA5PZfVuTTGE0/3qDo7j9b/8mHxdugOYyA5jkASJq+MRjol1g73n+cTnn+ot6+xrbU5SiBzYQfJo0S6pBCUVDIYaMsv7f2sdi/E/jdmR6zYWlOHXU8lvTCLPeWz8cRBskfrEyTsp95+/9R1aTUaIY9kmhZvJVCGIPh5AezL4gczT8anpplHGh1seEK8X8xYhxFUksUY32oHCfnOJmxKHa5lFeFSvvsLoUUsjXhx2z5KPvxQvU2N+OkJCCJQHAwLAWAlxH0xsz5dThrWO5gkOrGmF5X99UE2PWK4KW6Q0PFk5A+n556XGdtGIY4ttb2tpvfoFdiyRjE3ymKzLTKZQEQGsF/SEbSa7Ia6Kz/KViUVXq4sygbojnRPI7ql5obSV0uvQH8/Qysy303HRQAW5Lhh93SCljfunilzA/P7onnHgvLZGI28wY+hs= X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 7b5685a5-4ef4-4d0e-22a0-08db68f5285a X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Jun 2023 14:23:55.8416 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: ReCyps2qFhuYw9qdzS33OwuLai1jzig6XIl+WqWJFFkFMti9rrtnRk6yPj7ZmCWaMhWvQZiNWAyr3noDDZTR+A== X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW4PR03MB6458 On Fri, Jun 09, 2023 at 04:07:54PM +0200, David Morel wrote: > Hello, > > This mail is meant to be more of a summary plus a heads up, I don't think > there is any action needed on it. > > A user reported [1] a crash when live migrating a VM running Rocky Linux > 8.8. After investigation it appears to be happening: > - for RHEL derivatives when migrating from 8.7 to 8.8. > - on suspend/resume > - on live migration > > With a callstack we provided, Roger Pau Monné quickly identified the > issue as being the addition of: > - x86/idt: Remove address operator on function machine_check() [2] No, the above reference is incorrect, the issue is caused by the backport of [0]: 06184325a1cc x86/idt: Annotate alloc_intr_gate() with __init Without having backported the mentioned Xen commit (x86/xen: Split HVM vector callback setup and interrupt gate allocation). Regards, Roger. [0] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=06184325a1cce27a02a688d98740f90fe06e0133 From xen-devel-bounces@lists.xenproject.org Fri Jun 09 14:25:52 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 09 Jun 2023 14:25:52 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546085.852690 (Exim 4.92) (envelope-from ) id 1q7d3d-0005f1-N0; Fri, 09 Jun 2023 14:25:41 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546085.852690; Fri, 09 Jun 2023 14:25:41 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7d3d-0005es-Jb; Fri, 09 Jun 2023 14:25:41 +0000 Received: by outflank-mailman (input) for mailman id 546085; Fri, 09 Jun 2023 14:25:39 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7d3b-0005ek-Fz for xen-devel@lists.xenproject.org; Fri, 09 Jun 2023 14:25:39 +0000 Received: from EUR03-AM7-obe.outbound.protection.outlook.com (mail-am7eur03on2061b.outbound.protection.outlook.com [2a01:111:f400:7eaf::61b]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 814d05fa-06d1-11ee-b232-6b7b168915f2; Fri, 09 Jun 2023 16:25:38 +0200 (CEST) Received: from AS9PR06CA0018.eurprd06.prod.outlook.com (2603:10a6:20b:462::11) by DU0PR08MB9653.eurprd08.prod.outlook.com (2603:10a6:10:449::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.41; Fri, 9 Jun 2023 14:25:34 +0000 Received: from AM7EUR03FT017.eop-EUR03.prod.protection.outlook.com (2603:10a6:20b:462:cafe::cd) by AS9PR06CA0018.outlook.office365.com (2603:10a6:20b:462::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.26 via Frontend Transport; Fri, 9 Jun 2023 14:25:33 +0000 Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by AM7EUR03FT017.mail.protection.outlook.com (100.127.140.184) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.27 via Frontend Transport; Fri, 9 Jun 2023 14:25:33 +0000 Received: ("Tessian outbound 3570909035da:v136"); Fri, 09 Jun 2023 14:25:33 +0000 Received: from d3513fa0ee7c.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 5148FF8F-C164-449A-BC89-71F52581C961.1; Fri, 09 Jun 2023 14:25:26 +0000 Received: from EUR03-DBA-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id d3513fa0ee7c.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Fri, 09 Jun 2023 14:25:26 +0000 Received: from AM6PR08MB3784.eurprd08.prod.outlook.com (2603:10a6:20b:85::25) by PAVPR08MB9089.eurprd08.prod.outlook.com (2603:10a6:102:32a::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.32; Fri, 9 Jun 2023 14:25:24 +0000 Received: from AM6PR08MB3784.eurprd08.prod.outlook.com ([fe80::5e17:39a6:eec7:c482]) by AM6PR08MB3784.eurprd08.prod.outlook.com ([fe80::5e17:39a6:eec7:c482%4]) with mapi id 15.20.6455.034; Fri, 9 Jun 2023 14:25:24 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 814d05fa-06d1-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=WmhE+I2M7oc/0YLB1PK3/zPbN1oV0hZIX4fdmICidM0=; b=2lXp3hk1d0izeECax6LVsrEeaUOMRlAU4jyPjkdZYqsK+QwAtwGT4ITKERyQglCddQyRu2OpODz+/7oUHiLFfAVOit21mgjGirVPwtPnD9ESMEznqv6BkePDOZb65dYxcDCxYyOFCXAZeQNCM9dcaUfx/mhhemHJH+bjLHROpfU= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C X-CheckRecipientChecked: true X-CR-MTA-CID: 15f32560548da5e5 X-CR-MTA-TID: 64aa7808 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=l1fSTpnU2PFBniKgY5QGGV/ms2l7PtbV0taclPjfSUFMQ9WU60U3QCP/plMrQzDUYI1apqFvGWVg45wiF/ougYKppZ27G8/rU1JTaF4k1dIJ0l8xhJzXTBt/WywNW+bv9AD9/v8RQI8OfEp93z5IzkwXwYkkfZcn+6IVSNFNJHKBpDHSL3YT5Wxp4A+uwRevU0YDDAABy1prUhE2rXlHDfvlw5I1+gFE/hXH6CTeBZqy7JHxjUqQhTsNKSrTEQ0bOKaO1KTjGGSfaAvfXpwX6HOZnSGHu+a0/KaXUga6UcxuSvIJpgZBZUG5XWHQN0nDaZBECD9XQBXf1ozI+Vm6bQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=WmhE+I2M7oc/0YLB1PK3/zPbN1oV0hZIX4fdmICidM0=; b=dPgYawDGcIEg+l0nlBybAjdUZs9gflZVw2Klyc4qM7Du+hdhu+y4M10zICwNAZmVca1sSZWLKhz50HYzg4RcUE0GcUcrr0LklNSmVIs4WeNCCDPHZGRfL4iYfWuqgN+tu/jjQLvMZ2kjoj68u/r2xSLLGKMq1iIkiaZ8F+2Y8FgEq6IwA+kSjmLwuvnyIfi0EFfA3FhVMIVYfG7rqNgsnsqNCi/VsFO2gWQIIWkZTBuyEMWgmNu2y2yy5JqBe3bwRTs96mbzuRsCO/Rm8GJ0RHYxCOW2lL7dgyeTLGU047IhsdBFeFWOOq9jOv+nfeTE8+QrEwPx1vqKQyDcp5xSrA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=WmhE+I2M7oc/0YLB1PK3/zPbN1oV0hZIX4fdmICidM0=; b=2lXp3hk1d0izeECax6LVsrEeaUOMRlAU4jyPjkdZYqsK+QwAtwGT4ITKERyQglCddQyRu2OpODz+/7oUHiLFfAVOit21mgjGirVPwtPnD9ESMEznqv6BkePDOZb65dYxcDCxYyOFCXAZeQNCM9dcaUfx/mhhemHJH+bjLHROpfU= From: Bertrand Marquis To: Julien Grall CC: Jan Beulich , Roberto Bagnara , Stefano Stabellini , "xen-devel@lists.xenproject.org" , "consulting@bugseng.com" Subject: Re: Xen reliance on non-standard GCC features Thread-Topic: Xen reliance on non-standard GCC features Thread-Index: AQHZl26d8Aek6tjnZE6ifkCnLNFck6978WEAgABCdQCAAsOqgIAB4G6AgAFZQICAAEoFAIAAElgA Date: Fri, 9 Jun 2023 14:25:24 +0000 Message-ID: <17C59D5C-795E-4591-A7C9-A4C5179BF373@arm.com> References: <1cd359e7-5245-a621-3be2-9323ba5b327b@bugseng.com> <8314e0fc-4ead-40fa-ef7b-4da8ce0655b4@suse.com> <80a512ac-d90e-930a-7ef7-8ebb5a80e801@bugseng.com> <968ba799-8fe4-e22f-b678-64e52f789026@suse.com> <9df8560d-4b06-2ab4-b09a-30241dd19676@cs.unipr.it> <4f5e33e7-9606-2cc7-79ec-c03cc724b6c6@suse.com> <063e14e4-4f88-f4aa-56b4-0b450f69e73f@xen.org> In-Reply-To: <063e14e4-4f88-f4aa-56b4-0b450f69e73f@xen.org> Accept-Language: en-GB, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-mailer: Apple Mail (2.3731.600.7) Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-traffictypediagnostic: AM6PR08MB3784:EE_|PAVPR08MB9089:EE_|AM7EUR03FT017:EE_|DU0PR08MB9653:EE_ X-MS-Office365-Filtering-Correlation-Id: 4512b15e-ffab-4e56-f89b-08db68f562a3 x-checkrecipientrouted: true nodisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: 2lFSusc2N2QrT2L6s1NyMWoE9iUdzS2YPFNPK7dNDhv5KpJS9yixZLLOr1NHTskmu4Pi95wxVxD9Hyig8LM5c99xKnbiqYxwCXkiwmeqCZVWvDOsu2aS4ufPgdfpvsOVIsRGTgX+JouQPrX6sRVekf8rTYDyzjjvooddEkGWBviPb3aMTpPyj/ItHRsgwgG4A0QHuC7hJPmgoxqaP2FiDig60zdohWTylXltdoOqyONr/sO2plPr2zD2gnqoFEUV9VINkIL7J8g3tTtYTXX/QWukpioPwmWvE8QXJuVilBxDE4/qe77bJCP20aoGCKL+X+iV2FeJJzkWUSWAa4RDtCAlZY5anLMpb6CBSVpay5XECg6f6oVzkEzJ0f5lM/DwS146LaRedjt+afSBOfKnlNh82Ab0tCpCV7WXfkBdSdLp2Mc7BtpfuRbYCC4WtCzYvqqt0v2IQFuwR5Fs6z4qZtvnSJ7KKfHYAXY8wvjg95sIvh8jfUNvGlpnmPCs7zxztFka7ri6JPIz15WeqeaolKnFy57hzTZmTvnSQ8ITHlw3tpP5n1dKkBAggGVVmE+B4Z+GJAmKKAuEy62WLaxbaUYJ4jJKig0KpjSe8jqPkOrqWRmU67377YF2w2kPmAf1W8yGdbmD9XSXhzDGTOFhzw== X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM6PR08MB3784.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(136003)(346002)(396003)(376002)(366004)(39860400002)(451199021)(122000001)(6506007)(53546011)(6512007)(186003)(83380400001)(33656002)(86362001)(38070700005)(2616005)(38100700002)(26005)(36756003)(41300700001)(66556008)(8936002)(54906003)(2906002)(64756008)(76116006)(91956017)(478600001)(6916009)(8676002)(4326008)(316002)(5660300002)(66946007)(71200400001)(6486002)(66476007)(66446008)(45980500001);DIR:OUT;SFP:1101; Content-Type: text/plain; charset="us-ascii" Content-ID: Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAVPR08MB9089 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: AM7EUR03FT017.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: 7a709845-33c5-4e49-7b0b-08db68f55d68 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: wif/mFXxqHINnAXq2ccuuRIP2qZZxRqN6ZD5+uPo2EV3RrFiFQhzB50xWhEvamRKsfedkRfCQq+qCJVvoFlXSO7okDSdbNyZqaUSHtXngWYTE9L8Fw4lrHFuIYARESCSVKPyJ5g/0lz+q9iigaEyZw9zHUGDwnJz5PlAZ2p/i6WAJ1PvKMGJnIxlUCCFshjcnjZhEBkeadaJBFZMy2+nEiLTOA4vcGqluY0dtOnGfmO3h7uKGIb9yjxldfqIPqNrtyhQSojaaPhYfNP8hgk5y14YuT7J81/DJcR12eaXwxnsP9UYzYNXgr7RrzLz5IstSCmqFXZUN635QquX4lQh3xjK5qryinEJT7im+jzwWWYSeGhtD6+62VCZrdTkR3hDLcsTBB/+2JqRfzHaLx5IN4GrTw3q9ztidANOikCjyVpIQdrzci70CKYnYcCjp6U6bMKVe4l4WmTpQUHNwPLRM1+Cf87GsqqFnn/h6mPBtErYocktb/vthA3c7fXzab4fXfwPYr8VDUWH/LidvwW6ZLiFeBvFN07g/ufvNednKJQsjqbMhsSWm+W2gd2giDm8WaaxT0SoyAHqh4jExMIjvYmvfzT4lrms0+G7/KfppRDjMEhqtWX4MbeIeJ1uz2KwvmPp16xFmDBP3zw+SOxhw4/wmk/zVEuXPaFEuSWX0/XAUqISXzijeKPXUImkudH3NcKWBai+ZFWN+AanKmJn/2a+ngc0ILJMXsEQzoaky2LXJhKrukg6ZR4RqgdZc9AO X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230028)(4636009)(136003)(396003)(39860400002)(346002)(376002)(451199021)(36840700001)(46966006)(40470700004)(36756003)(2906002)(86362001)(33656002)(82310400005)(5660300002)(40480700001)(2616005)(47076005)(6486002)(336012)(186003)(83380400001)(107886003)(36860700001)(40460700003)(6506007)(53546011)(26005)(6512007)(356005)(81166007)(82740400003)(478600001)(54906003)(4326008)(6862004)(316002)(41300700001)(70586007)(70206006)(8936002)(8676002);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Jun 2023 14:25:33.3465 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 4512b15e-ffab-4e56-f89b-08db68f562a3 X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: AM7EUR03FT017.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU0PR08MB9653 Hi, > On 9 Jun 2023, at 15:19, Julien Grall wrote: >=20 > Hi Jan, >=20 > On 09/06/2023 09:54, Jan Beulich wrote: >> On 08.06.2023 14:18, Roberto Bagnara wrote: >>> On 07/06/23 09:39, Jan Beulich wrote: >>>> On 05.06.2023 15:26, Roberto Bagnara wrote: >>>>> On 05/06/23 11:28, Jan Beulich wrote: >>>>>> On 05.06.2023 07:28, Roberto Bagnara wrote: >>>>> You are right: here are a few examples for U2: >>>>>=20 >>>>> xen/arch/arm/cpuerrata.c:92.12-92.35: >>>>> empty initializer list (ill-formed for the C99 standard, ISO/IEC 9899= :1999 Section 6.7.8: "An empty initialization list." [STD.emptinit]). Tool = used is `/usr/bin/aarch64-linux-gnu-gcc-12' >>>>> xen/include/xen/spinlock.h:31.21-31.23: expanded from macro `_LOCK_DE= BUG' >>>>> xen/include/xen/spinlock.h:143.57-143.67: expanded from macro `SPIN_L= OCK_UNLOCKED' >>>>> xen/include/xen/spinlock.h:144.43-144.60: expanded from macro `DEFINE= _SPINLOCK' >>>>=20 >>>> I'm afraid this is a bad example, as it goes hand-in-hand with using >>>> another extension. I don't think using a non-empty initialization list >>>> is going to work with >>>>=20 >>>> union lock_debug { }; >>>=20 >>> Yes, this is C99 undefined behavior 58: >>> "A structure or union is defined as containing no named members (6.7.2.= 1)." >>>=20 >>> Here is another example: >>>=20 >>> lpae_t pte =3D {}; >>>=20 >>> whereas we have >>>=20 >>> typedef union { >>> uint64_t bits; >>> lpae_pt_t pt; >>> lpae_p2m_t p2m; >>> lpae_walk_t walk; >>> } lpae_t; >>>=20 >>>=20 >>>>> xen/arch/arm/cpuerrata.c:678.5-678.6: >>>>> empty initializer list (ill-formed for the C99 standard, ISO/IEC 9899= :1999 Section 6.7.8: "An empty initialization list." [STD.emptinit]). Tool = used is `/usr/bin/aarch64-linux-gnu-gcc-12' >>>>>=20 >>>>> xen/arch/arm/cpufeature.c:33.5-33.6: >>>>> empty initializer list (ill-formed for the C99 standard, ISO/IEC 9899= :1999 Section 6.7.8: "An empty initialization list." [STD.emptinit]). Tool = used is `/usr/bin/aarch64-linux-gnu-gcc-12' >>>>=20 >>>> Both of these are a common idiom we use: The "sentinel" of an array >>>> of compound type initializer. >>>=20 >>> Wouldn't it be possible writing such sentinels in a standard-compliant >>> way, like {0} or similar, instead of {}? >> I would be possible, sure, but the question is whether we want that. Iir= c >> in review comments we've been asking to preferably use {}, for being >> shorter / less clutter without resulting in any ambiguity. >>>>>>> U6) Empty declarations. >>>>>=20 >>>>> Examples: >>>>>=20 >>>>> xen/arch/arm/arm64/lib/find_next_bit.c:57.29: >>>>> empty declaration (ill-formed for the C99 standard, ISO/IEC 9899:1999= Section 6.7: "An empty declaration." [STD.emptdecl]). Tool used is `/usr/b= in/aarch64-linux-gnu-gcc-12' >>>>>=20 >>>>> xen/arch/arm/arm64/lib/find_next_bit.c:103.34: >>>>> empty declaration (ill-formed for the C99 standard, ISO/IEC 9899:1999= Section 6.7: "An empty declaration." [STD.emptdecl]). Tool used is `/usr/b= in/aarch64-linux-gnu-gcc-12' >>>>=20 >>>> Looks like these could be taken care of by finally purging our >>>> EXPORT_SYMBOL() stub. >>>>=20 >>>>> xen/arch/arm/include/asm/vreg.h:143.26: >>>>> empty declaration (ill-formed for the C99 standard, ISO/IEC 9899:1999= Section 6.7: "An empty declaration." [STD.emptdecl]). Tool used is `/usr/b= in/aarch64-linux-gnu-gcc-12' >>>>>=20 >>>>> xen/arch/arm/include/asm/vreg.h:144.26: >>>>> empty declaration (ill-formed for the C99 standard, ISO/IEC 9899:1999= Section 6.7: "An empty declaration." [STD.emptdecl]). Tool used is `/usr/b= in/aarch64-linux-gnu-gcc-12' >>>>=20 >>>> I'm having trouble spotting anything suspicious there. >>>=20 >>> The macro expands to definitions of inline functions >>> and after the macro invocation there is a ";". >>>=20 >>> The preprocessed code is then: >>>=20 >>> static inline void foo() { ... } >>> ; >>>=20 >>> where the final ";" is an empty declaration not allowed by >>> the C99 language standard. >> Oh, I see. >>> Removing the ";" after the macro invocation is a possible solution, >>> but other possibilities exist if this is strongly unwanted. >> We have other macros to instantiate functions, and there no stray >> semicolons are used. I think this wants doing the same way here, but it >> being Arm code the ultimate say is with the Arm maintainers. >=20 > I don't think there is a reason to keep the ";" after. So I would be fine= if this is removed. +1 Cheers Bertrand From xen-devel-bounces@lists.xenproject.org Fri Jun 09 14:26:09 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 09 Jun 2023 14:26:09 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546086.852700 (Exim 4.92) (envelope-from ) id 1q7d3v-00063L-0b; Fri, 09 Jun 2023 14:25:59 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546086.852700; Fri, 09 Jun 2023 14:25:58 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7d3u-00063E-Rx; Fri, 09 Jun 2023 14:25:58 +0000 Received: by outflank-mailman (input) for mailman id 546086; Fri, 09 Jun 2023 14:25:58 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7d3u-00061u-0C for xen-devel@lists.xenproject.org; Fri, 09 Jun 2023 14:25:58 +0000 Received: from esa2.hc3370-68.iphmx.com (esa2.hc3370-68.iphmx.com [216.71.145.153]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 89ec38c9-06d1-11ee-8611-37d641c3527e; Fri, 09 Jun 2023 16:25:54 +0200 (CEST) Received: from mail-dm6nam10lp2107.outbound.protection.outlook.com (HELO NAM10-DM6-obe.outbound.protection.outlook.com) ([104.47.58.107]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 09 Jun 2023 10:25:50 -0400 Received: from DM6PR03MB5372.namprd03.prod.outlook.com (2603:10b6:5:24f::15) by BN8PR03MB5027.namprd03.prod.outlook.com (2603:10b6:408:db::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.42; Fri, 9 Jun 2023 14:25:48 +0000 Received: from DM6PR03MB5372.namprd03.prod.outlook.com ([fe80::bbf:868:7b79:bb29]) by DM6PR03MB5372.namprd03.prod.outlook.com ([fe80::bbf:868:7b79:bb29%6]) with mapi id 15.20.6477.016; Fri, 9 Jun 2023 14:25:46 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 89ec38c9-06d1-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686320754; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=hx5rQWpyb7TD5cURIEjgmk67DtGDlVNPSPhNBnJlcG8=; b=KI1d0rhbrrdj7RgaWOw/jxL+16ZfGUKb9Llcc259B066RMlS82nhDoe2 ACHHfMbJTfiZusbd7i5uUqcvW2yVOO52XiVudhlz89IlHSSWPvuiVkVar 8lWjA/nHpAEGJ8NYeAXZtHWrMXAzscOFnZsxLKUOewEMTDSQCsjpoWcWo c=; X-IronPort-RemoteIP: 104.47.58.107 X-IronPort-MID: 112105733 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:tvNBNaA6tSRGQhVW/y3jw5YqxClBgxIJ4kV8jS/XYbTApG8mgTAOy TZLW2HQP/ncMWanftt/bNuzp08HuZbTz4NnQQY4rX1jcSlH+JHPbTi7wuUcHAvJd5GeExg3h yk6QoOdRCzhZiaE/n9BCpC48T8nk/nOHuGmYAL9EngZbRd+Tys8gg5Ulec8g4p56fC0GArIs t7pyyHlEAbNNwVcbCRMs8pvlDs15K6p4G1A7wRnDRx2lAS2e0c9Xcp3yZ6ZdxMUcqEMdsamS uDKyq2O/2+x13/B3fv8z94X2mVTKlLjFVDmZkh+AsBOsTAbzsAG6Y4pNeJ0VKtio27hc+ada jl6ncfYpQ8BZsUgkQmGOvVSO3kW0aZuoNcrLZUj2CA6IoKvn3bEmp1T4E8K0YIwwcN9Al9wt sAhF3MHQwGni/Kp0JjgY7w57igjBJGD0II3nFhFlGmcIdN4BJfJTuPN+MNS2yo2ioZWB/HCa sEFaD1pKhPdfxlIPVRRA5U79AuqriCnL3sE9xTI9exuuze7IA9ZidABNPLPfceRA8FckUuCu WvC+0zyAw0ANczZwj2Amp6prraWx3qjBd1JT9VU8NZQq1jLzDQTLiYKFna7scWX20+kVPFmf hl8Fi0G6PJaGFaQZtr6WQexrFaItwQaXNkWFPc1gCmJy6zJ80OaC3ICQzppdtMrrok1SCYs2 1vPmMnmbRR/vbvQRX+D+7O8qTKpJTNTPWIEfTUDTwYO/5/kuo5bphDFQ8tnEaW1psboAjy2y DePxAAiiLEDpcoK0bin51fBgiLqqpWhZgs04ArQdnio4gNweMiuYInAwVLDxf9ELYufHh+Ns RAsl8GA4aYOBJeWmSqlROQLAaHv5vCZPTmaillqd7Exp2qF+HO5e41UpjZkKy9BMMkefiTyS FTOog4X75hWVFOgarV2eMS2ENgwyrb7FsXNUerdZd5DJJN2cWev5CNpY0OL93rgnEgljec0P pLzWcWrC2wTBYxkwSCwSuNb1qUkrh3S3kvWTJH/ihiij7yXYSfNTa9faQPRKOck8KmDvQPZt c5FMNeHwAleV+u4ZTTL9YkULhYBKn1T6Y3KlvG7v9WremJOcFzNwdeIqV/9U+SJR5hoq9o= IronPort-HdrOrdr: A9a23:0ujIOqvcZN3agVYV+EGx8zH27skDSdV00zEX/kB9WHVpmwKj5r mTdZUgpGfJYVMqMk3I9urwXZVoLUmsl6KdpLNhXotKPzOGhILLFvAH0WKK+VSJcBEWtNQ86U 4KSdkYNDSfNykdsS842mWF+hQbreVvPJrGuQ4W9RlQcT0= X-Talos-CUID: =?us-ascii?q?9a23=3AC1O5a2knbc552taRXmiEQuZho7rXOUb4xnTuHQy?= =?us-ascii?q?EMFkqQpCEbVOA57NOyOM7zg=3D=3D?= X-Talos-MUID: 9a23:QhEIbQm1X4AzH0Zo7SdHdnpYH8Iw6fyuLnsR0rgGq/WqZC1qNBSk2WE= X-IronPort-AV: E=Sophos;i="6.00,229,1681185600"; d="scan'208";a="112105733" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=UxEHmnZsFdGXJeAJzjJ7mRivY2tutyFvxHf0ua4hl5Xok0Snjh0RR7oMp40XRxmX7DDb9mw6+Ej80sd0kIPVY4oZh3kpRvWL2rYemPFyw0EYE6Orwgk4ArtRzuYPnn9NQhDDfAlFe4jHcNdPt1gjKRAiZtP981fXIOSy0ROhJAKj+4v1/3CkirdbHUW+MLkGaLoRCLrOB1JHGFbntbUOK4nKrH1gMp+nliDRRVNrOFSH1CnvWOfQc0tFpUKFKEWgdzIU01RoqZfYXgtQ2RCYAk2/pcW4E2g104RUbB0up7vVEk5wL2GU0XD/wSwDq/EDciptJatRTCpf/FlwW8M+ng== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=hx5rQWpyb7TD5cURIEjgmk67DtGDlVNPSPhNBnJlcG8=; b=LFm8LbxXt+Tj3HoHtbDlFjTA93+vgLo1rzODF4JRzu09c6cFva27zcQs5wz3LdEY40fu+QPVQLNNeUGpDWjYLvm6g5g0uG9e0rkwxkNBQvwcVMBe5aafOAt8JNxsnV0mCsgKU5we1WKPOe52+THVzkpDdZOf7tpUbDVOafrlYjZoPt1/ALmSdv2Mn0Mqz239wbZQ7Yj+18r+3GKdn3Xuq0qvL/O3apSLjrU2nvdAc8uQsbrbwz1zzuUAd10y5VIEVjA1qQhslaErtMsbQQUaPcQ3IFET+iyJqk5lildhzjJ2hAobWUDr6TkmFv8AbPIdCWuJyumJTdmUgVwm5sOL5g== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=hx5rQWpyb7TD5cURIEjgmk67DtGDlVNPSPhNBnJlcG8=; b=utH7+Z3fQfA8NhBP0YNS7qNi+wY5t2hfEZI8GLKWpm9IoY7fazDrbjsL5Gdd4tj9e/mQmXBk5MdijmV8tEutMRUbZ/8XEaXdMBVTQ8+JZ+slcFpnz8yeKJ02QO1mKEee8kl46KwzKlNXctsy4lem7ykUZ+iRHKTTQcLn99BvKl4= From: Ross Lagerwall To: "konrad@darnok.org" CC: "linux-kernel@vger.kernel.org" , "xen-devel@lists.xenproject.org" , Jan Beulich , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , "x86@kernel.org" , Juergen Gross , Boris Ostrovsky , Peter Jones , Konrad Rzeszutek Wilk Subject: Re: [PATCH v3] iscsi_ibft: Fix finding the iBFT under Xen Dom 0 Thread-Topic: [PATCH v3] iscsi_ibft: Fix finding the iBFT under Xen Dom 0 Thread-Index: AQHZl5iUB8Nip0x2EkODpNV/3CMDS6+BIAiAgAFsndI= Date: Fri, 9 Jun 2023 14:25:46 +0000 Message-ID: References: <20230605102840.1521549-1-ross.lagerwall@citrix.com> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: msip_labels: authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: DM6PR03MB5372:EE_|BN8PR03MB5027:EE_ x-ms-office365-filtering-correlation-id: 2d15fab9-9080-49f0-4381-08db68f56a96 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: QJQxxFOB8o+cL7bo40YuKn6eVusABvWCbRbxuK1Gn5QUOAF7iPSWE15oy1bWFsTZNAr0EIvuGJ6lWvtipz26Fu5ncfTAw3hPue/sXV78DBDuvG0BDZ7Qorz4KEqGVJwG6mjkD1vad4Na8GIHfCm1Zltc4bXNhtM2zz9zmCecRHtYgiCosEX9gAWSWNidH5EKobrw2ST/mM1hPyFxZKXOoRlDa1VfBr71l6tjFw4x+egRqL+4wmmS4rhdneqqDCJJ2xNKc3JOH8VS5yi8XcE9DOQwfN62NpqvFrzks7L2YXiQULVsZpK3vWmrL95E+Gmde+AaAraM/DcfDF2knfDDKrjeuKCYZUSjtBKRp1qCFTodhYDPXMr/9Mc2wv4JzaItxWsYSbNeqtXO2z61jq2yDVR5e9Zh3Aqc7Ts/zQ35bXxo6faqF+hKnQcCu+gauwnL4MOK9H5q7InMSjjf1/ltieiFCmNDHoWzbX8B7KTEAnrBilzAOmoS+tinwjtGwMg2YzDzNHx1t4XmkLaL9XnCtgSuCbWEhQeiYJEPvTKaGUWK0k6lvoCDGKXMVXh5ZIppJuIPIQ7zc4qeWmt7Jx76crGj5hgTba8SKb1knwq+dCsXJ/8TfKWu5hJsQ6+p9zJx x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DM6PR03MB5372.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(396003)(346002)(366004)(136003)(39860400002)(376002)(451199021)(316002)(7696005)(41300700001)(86362001)(83380400001)(38070700005)(9686003)(53546011)(186003)(6506007)(7416002)(26005)(44832011)(2906002)(33656002)(122000001)(82960400001)(38100700002)(55016003)(52536014)(5660300002)(8936002)(8676002)(91956017)(64756008)(66446008)(76116006)(66556008)(66946007)(66476007)(54906003)(71200400001)(478600001)(4326008)(6916009);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?OWVpTSt1blNRTlV1RGhrQ0ZIOUU3NkpDUUFWMXV2WEt2eGdVbmlIdDd2R0FJ?= =?utf-8?B?RGlmRzJ3U2xRVUU3UVpEb0lTd3RsK0lxR2c3bnlqN0orSnVaQ2VRUmx1bWNN?= =?utf-8?B?Uy9wM3NjMGhoZjRrakJveXFuVkFaY0tDYzdGUkt6aE1VU1JXYjZ4b2FCMSti?= =?utf-8?B?RytVNDFjMG1vTmZBWG9qY0I0dU54SzlmUmcrb0FwTnJZUFdvM2JHcTJQbVU2?= =?utf-8?B?SXdBVFBMV2VBTlUzUFlUc0R2d1UzSXc2YlZsMjJaaEF5V3ZCRS9RVGNqZllq?= =?utf-8?B?Y0ZtbGVJR21NRVVLZ3k0eThTRzdQMVFFNVZHR3FaVmR0OElpd2c0cDByWGZo?= =?utf-8?B?aW5YTzJadUFtUjJYV0JmYk1OV2R3Ui9kalRlaDdONnZHZDFWVFVtc08rMEJL?= =?utf-8?B?WTcrcm4zazVxeEY5MnVwV1lzaURnVDRERWllQ1RWQWpMWFhiMU12dGdpQ2du?= =?utf-8?B?VllEelM2dndsbWV4TWpkV3I5NVBmZlkvK1hSTjYxRkZtQW1sSWpwTlBNWlJR?= =?utf-8?B?SGN0QVF6MUdRQ0Y5aHFHTGFueXRWTVFBa254SlV6SjY0ejZiN0NQaUlqcDNY?= =?utf-8?B?WlF5eWtpNWFJaU9YNG1XYnhVY1hubHo4M1Y1U3U2UXhpWVhjanpvaDBCVVBC?= =?utf-8?B?bng2RlZaTGFaeklnak83cmU4MnNENjJJZEdXSTFoT01Yc2Z5OFVlc1l5ZENF?= =?utf-8?B?Mmgwb0RmczlEeE5PSzZFMGFLUlFQREpyUDFsOTN0c0VucjJTWGJjdGVwZzJu?= =?utf-8?B?RkxOUG92TERHeEhWL2tmbEh6a2RlN3Y3U091ay9WdkROemxUS1NPUVl5cU5a?= =?utf-8?B?MXNqMjdBS0JLaGo5Vlp0blZoeUtPRkx5VnJXTjJBUjlnY3hRQllINU9jdkhn?= =?utf-8?B?Y0Q5ZDVOV3RXeHhpam1YUHJJSnhOYWxaNDJEMnNCdDVFYnNXem1TeGRjVjV1?= =?utf-8?B?Z1AvNlhmUG95YjIwUlZBT0dqaE5Gc2NTVTZaU0w5cW0zbTQ0ZkNOOEpPVWpn?= =?utf-8?B?QlFuNUFFYXBJT1VZaFZpZUc5QWxPODdRMVpvMUtmSG1tcU5zSVFkOWROM1BF?= =?utf-8?B?MVY2c1Q0aVZ4ZWpMS0t6TkgxRHNMVjdXZFZ2dFVZOXF2UVQvUE5MWWZ1NzB2?= =?utf-8?B?eHUzUUVsOWgxcWp2T09FdU1hK2lUeVRnMGRGOVUwc2didWl4QjZNK0czSkI4?= =?utf-8?B?OEFiM1FlUC9XU0JwbEg2R21qeGxWTkJxRDBmNm1OdlpLMUdVdm1qNWg0bXdG?= =?utf-8?B?YWpKbnJuQi91c1dnOTMydTlLRy9VQXJKdUVwbjRqQ2tpbXRYOHY1K2VnZnBU?= =?utf-8?B?a3Q2VlJkbmxVcXBVeHRkaUhiSTNaQkZjOXBmM3I3cG5wdTF5aEcyQXVoZWhX?= =?utf-8?B?NkJDZE1iUUp1cGx0aysycEhNbHFDZFRVUU9UbldraXRpWnpBelRVL2hQcG1m?= =?utf-8?B?YWJuU1EyakZYWVpHN2htUFczc1BjSHVISUYrSm84eTUvTUdlcUVCZktObnFy?= =?utf-8?B?NlIvRnRCN3RQU0xYSkIvRzRtWGxvKzRNTk4vcXFFUGRaTTlzczVIUmNWNllH?= =?utf-8?B?M2dXVjBtNlVwWGx0WUI2QTJYMkFaS0IwY2wyYS9RbDArS0thRlhna3NrSTJF?= =?utf-8?B?UlkxSHJnVlNrOG0zMy80bFpJODV2QjVDMHhwL0lvLzFZZHhtNlkzVVZ0MXlR?= =?utf-8?B?VTREL2ZHV3dURllUbkxiNWowNUhqeFZIandaZE9TRUVlOGJSdWowemZCZmxT?= =?utf-8?B?YWhVNUxEWXNGRkNYdThnQjhtMHpvY29Ga3VmRGVEWVVCT05jRXdWZ3FQaXlK?= =?utf-8?B?bHNXZU9WN01QRTdDTVpHUldjYnp4ZlVzRjZtZDB0WnRWL2lMOW5sU3FCMFQ3?= =?utf-8?B?MS8wY2NWM3h6UGZBV1FZL0Y1alNPS2c3WVVGQXNxVGtOemNxU3Q2dUFpelJW?= =?utf-8?B?TGNGVGtySEErMkdqZ21uZFRvZGY3Z1pkSlBiSnhQbEtWc3JFb1JvSTlWaXZS?= =?utf-8?B?SmFKTzdidHFlejcrdzZXWXF2RnRLaDkrdjkyaEhJVjZDMDdaZW0xTXhDNjdN?= =?utf-8?B?Wm5KZVIwQ0s2Z05YMklkYzl4OHJMWE13L3Bud20vck1OY2YwVUxnbnZKbUJ2?= =?utf-8?Q?OYK8r/Fb5P0SK/U799cy9nGJ+?= Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: =?utf-8?B?VTNqQXoxcitpTTdqUGRLRnJ2TS82M3JKbFY0WmdFYzRRdVRsV1lTQnVJL1lY?= =?utf-8?B?bkR6MjIvWFBtRE5mYk1MNmFDM0E5bnZoUks4WnRUMjZOQzYyTTdwTFJqMHVK?= =?utf-8?B?T0lNc3NFQ0hHWld0UisrZ1JvdVlRRUxZV0hwbndLbThENy9SNzlzbEc1VGpl?= =?utf-8?B?bUd3dkJLQ21qMThlT1ZtdUlyZ04zb3BLN3BnM3lSNnBtLzlJa1VlM1RmK3lG?= =?utf-8?B?UkQ2ZnB5Q21JWWV6aEx3SHBPL1NRN2lxNjUzNkR2blV6cFNWcXg0UldhN0Rz?= =?utf-8?B?TmFYUklVbDk0ZHgwQXB4Ym9aVkhQZEoxZ0IyYllzRHN3dkdvQnVzazNVSkZO?= =?utf-8?B?S0d5ZzFJeGhrYklGWjd0Uks0S2p3ekhNbHNxZFJCSkpSKzZUaXNMTDhpbkFr?= =?utf-8?B?VHoyN2I2NG96aHVxY1lCSDQ3RkdrL0Q3MWI4NVBHdEhtYk05R3BjWWl0NlZQ?= =?utf-8?B?SlRkTHg2YmJPV0pUMHFoRTUyUnF3OHRyRnBPWFU4TEFodUQyZE9TYk4xdmlz?= =?utf-8?B?V3JLUTJnNkRTZS95NmhMVm5yVHpKc2EvVnljeWl1RDExTEJGYS90N0dyUjh2?= =?utf-8?B?WlBOYWpRdHpDWkpjb3o1WDJwbG5IcEVNV2xIY0NFSlJSeS9VSVhKYVhOWWZr?= =?utf-8?B?WWRhbmZsSGQ3dk5yUEJSRWQ3Z2VpclFIZFhxajN2ZDBkbDIvc2FPSm9IejRS?= =?utf-8?B?ejdxeXVSdnJlaFVrandTTy94cTBnZjBoYVRhZ0pSRFBvV0FSNW80NFhRbVc0?= =?utf-8?B?a3Y3OUhHVU5oNGhRdWZGbXNUWWtzL1NaWVVlS0ZSMHUxV0l1RFRkK1krMklh?= =?utf-8?B?RUk3dmtTbDRUNzFzNjNVWG5aK2tBanliT2tMdjJqUGNDVXh0Ly9rNGgxOEd4?= =?utf-8?B?eEVqNUhxdWtua29iZCt0OWRTSnpZN3F5TXNYZ2NNTGZkUGRCN2s5RXlLSWZD?= =?utf-8?B?Q1lCa3BIRmgvYm8yQU9zbkdxbmhMSld1T0owaWYrTXFhV2lRSFdOTkZob24r?= =?utf-8?B?VEFIN0Frb1hQVWVNU3lOWWlucUd1NGxJdSswNC9LUDN5S1pQMjNjUHFoZHZv?= =?utf-8?B?VXdJRUNCeVlwR01Bb1NxMzZ2VUpFaUZ1K1NsWktFWjFGUXRXb3QwNFcyOVJN?= =?utf-8?B?MWJzSjFsRTlXT3dPZnBRUWE1WHBNM1gxamdrN0x3UVFEamNNUUNtNmQ2TFJV?= =?utf-8?B?ODgzMG9iV3hKdDZkcFYxK3AzOHc0WE54SXRjK1JCVDJHVDFVa3NVNThwNnlo?= =?utf-8?B?Z2N6bVpCWlpJdGp1MXlwM0p0M2JoUHN5QXF2a2FHeVRTbnpVUFVxU2RBUlpO?= =?utf-8?B?eWMzOFJBMi9TYUlhWDdRU1dYdFdoNUFwYnl1Q1BJQm42ZDBPeXV3ZGticGhi?= =?utf-8?B?UjNBZ0FJSXhLb3Q2eG1SZzlJUFpwVGtqZlkwQzVVWVNWeHVlR3gxZ3NBMTM1?= =?utf-8?Q?8C/Wo++8?= X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: DM6PR03MB5372.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 2d15fab9-9080-49f0-4381-08db68f56a96 X-MS-Exchange-CrossTenant-originalarrivaltime: 09 Jun 2023 14:25:46.7183 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: j2BS4R6gZHdnDnpCLp9X7pcXBOfwRozADc5LOtRw/1xTLI1lapqstHgs3RGepdCIu15Qb9tlyprvPSDoxIHpUWPADKa6dV2j8Ttm793YEHo= X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN8PR03MB5027 PiBGcm9tOiBYZW4tZGV2ZWwgPHhlbi1kZXZlbC1ib3VuY2VzQGxpc3RzLnhlbnByb2plY3Qub3Jn PiBvbiBiZWhhbGYgb2YgS29ucmFkIFJ6ZXN6dXRlayBXaWxrIDxrb25yYWRAZGFybm9rLm9yZz4K PiBTZW50OiBUaHVyc2RheSwgSnVuZSA4LCAyMDIzIDU6MzggUE0KPiBUbzogUm9zcyBMYWdlcndh bGwgPHJvc3MubGFnZXJ3YWxsQGNpdHJpeC5jb20+Cj4gQ2M6IGxpbnV4LWtlcm5lbEB2Z2VyLmtl cm5lbC5vcmcgPGxpbnV4LWtlcm5lbEB2Z2VyLmtlcm5lbC5vcmc+OyB4ZW4tZGV2ZWxAbGlzdHMu eGVucHJvamVjdC5vcmcgPHhlbi1kZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZz47IEphbiBCZXVs aWNoIDxqYmV1bGljaEBzdXNlLmNvbT47IFRob21hcyBHbGVpeG5lciA8dGdseEBsaW51dHJvbml4 LmRlPjsgSW5nbyBNb2xuYXIgPG1pbmdvQHJlZGhhdC5jb20+OyBCb3Jpc2xhdiBQZXRrb3YgPGJw QGFsaWVuOC5kZT47IERhdmUgSGFuc2VuIDxkYXZlLmhhbnNlbkBsaW51eC5pbnRlbC5jb20+OyB4 ODZAa2VybmVsLm9yZyA8eDg2QGtlcm5lbC5vcmc+OyBKdWVyZ2VuIEdyb3NzIDxqZ3Jvc3NAc3Vz ZS5jb20+OyBCb3JpcyBPc3Ryb3Zza3kgPGJvcmlzLm9zdHJvdnNreUBvcmFjbGUuY29tPjsgUGV0 ZXIgSm9uZXMgPHBqb25lc0ByZWRoYXQuY29tPjsgS29ucmFkIFJ6ZXN6dXRlayBXaWxrIDxrb25y YWRAa2VybmVsLm9yZz4KPiBTdWJqZWN0OiBSZTogW1BBVENIIHYzXSBpc2NzaV9pYmZ0OiBGaXgg ZmluZGluZyB0aGUgaUJGVCB1bmRlciBYZW4gRG9tIDAgCj4gwqAKPiBJdCBsb29rcyBmaW5lIHRv IG1lLCBidXQgY291bGQgSSBhc2sgeW91IHRvIHRyaXBsZSBjaGVjayB0aGF0IG9uCj4gbm9uLVhl biBpdCBzdGlsbCBkZXRlY3RzIHRoZSBpQkZUPwo+IAo+IFRoeCEKCkkgaGF2ZSBjaGVja2VkIGFn YWluLCBhbmQgeWVzLCBpdCBzdGlsbCBkZXRlY3RzIHRoZSBpQkZUIGluIHRoZSBub24tWGVuCmNh c2UgYW5kIHRoZSBpbmZvcm1hdGlvbiBpbiAvc3lzL2Zpcm13YXJlL2liZnQgbG9va3MgY29ycmVj dC4KClJvc3MKCj4gCj4gT24gTW9uLCBKdW4gNSwgMjAyMyBhdCA2OjI44oCvQU0gUm9zcyBMYWdl cndhbGwgPHJvc3MubGFnZXJ3YWxsQGNpdHJpeC5jb20+IHdyb3RlOgo+ID4KPiA+IFRvIGZhY2ls aXRhdGUgZGlza2xlc3MgaVNDU0kgYm9vdCwgdGhlIGZpcm13YXJlIGNhbiBwbGFjZSBhIHRhYmxl IG9mCj4gPiBjb25maWd1cmF0aW9uIGRldGFpbHMgaW4gbWVtb3J5IGNhbGxlZCB0aGUgaUJGVC4g VGhlIHByZXNlbmNlIG9mIHRoaXMKPiA+IHRhYmxlIGlzIG5vdCBzcGVjaWZpZWQsIG5vciBpcyB0 aGUgcHJlY2lzZSBsb2NhdGlvbiAoYW5kIGl0J3Mgbm90IGluIHRoZQo+ID4gRTgyMCkgc28gdGhl IGtlcm5lbCBoYXMgdG8gc2VhcmNoIGZvciBhIG1hZ2ljIG1hcmtlciB0byBmaW5kIGl0Lgo+ID4K PiA+IFdoZW4gcnVubmluZyB1bmRlciBYZW4sIERvbSAwIGRvZXMgbm90IGhhdmUgYWNjZXNzIHRv IHRoZSBlbnRpcmUgaG9zdCdzCj4gPiBtZW1vcnksIG9ubHkgY2VydGFpbiByZWdpb25zIHdoaWNo IGFyZSBpZGVudGl0eS1tYXBwZWQgd2hpY2ggbWVhbnMgdGhhdAo+ID4gdGhlIHBzZXVkby1waHlz aWNhbCBhZGRyZXNzIGluIERvbTAgPT0gcmVhbCBob3N0IHBoeXNpY2FsIGFkZHJlc3MuCj4gPiBB ZGQgdGhlIGlCRlQgc2VhcmNoIGJvdW5kcyBhcyBhIHJlc2VydmVkIHJlZ2lvbiB3aGljaCBjYXVz ZXMgaXQgdG8gYmUKPiA+IGlkZW50aXR5LW1hcHBlZCBpbiB4ZW5fc2V0X2lkZW50aXR5X2FuZF9y ZW1hcF9jaHVuaygpIHdoaWNoIGFsbG93cyBEb20wCj4gPiBhY2Nlc3MgdG8gdGhlIHNwZWNpZmlj IHBoeXNpY2FsIG1lbW9yeSB0byBjb3JyZWN0bHkgc2VhcmNoIGZvciB0aGUgaUJGVAo+ID4gbWFn aWMgbWFya2VyIChhbmQgbGF0ZXIgYWNjZXNzIHRoZSBmdWxsIHRhYmxlKS4KPiA+Cj4gPiBUaGlz IG5lY2Vzc2l0YXRlcyBtb3ZpbmcgdGhlIGNhbGwgdG8gcmVzZXJ2ZV9pYmZ0X3JlZ2lvbigpIHNv bWV3aGF0Cj4gPiBsYXRlciBzbyB0aGF0IGl0IGlzIGNhbGxlZCBhZnRlciBlODIwX19tZW1vcnlf c2V0dXAoKSB3aGljaCBpcyB3aGVuIHRoZQo+ID4gWGVuIGlkZW50aXR5IG1hcHBpbmcgYWRqdXN0 bWVudHMgYXJlIGFwcGxpZWQuIFRoZSBwcmVjaXNlIGxvY2F0aW9uIG9mCj4gPiB0aGUgY2FsbCBp cyBub3QgdG9vIGltcG9ydGFudCBzbyBJJ3ZlIHB1dCBpdCBhbG9uZ3NpZGUgZG1pX3NldHVwKCkg d2hpY2gKPiA+IGRvZXMgc2ltaWxhciBzY2FubmluZyBvZiBtZW1vcnkgZm9yIGNvbmZpZ3VyYXRp b24gdGFibGVzLgo+ID4KPiA+IEZpbmFsbHkgaW4gdGhlIGlCRlQgZmluZCBjb2RlLCBpbnN0ZWFk IG9mIHVzaW5nIGlzYV9idXNfdG9fdmlydCgpIHdoaWNoCj4gPiBkb2Vzbid0IGRvIHRoZSByaWdo dCB0aGluZyB1bmRlciBYZW4sIHVzZSBlYXJseV9tZW1yZW1hcCgpIGxpa2UgdGhlCj4gPiBkbWlf c2V0dXAoKSBjb2RlIGRvZXMuCj4gPgo+ID4gVGhlIHJlc3VsdCBvZiB0aGVzZSBjaGFuZ2VzIGlz IHRoYXQgaXQgaXMgcG9zc2libGUgdG8gYm9vdCBhIGRpc2tsZXNzCj4gPiBYZW4gKyBEb20wIHJ1 bm5pbmcgb2ZmIGFuIGlTQ1NJIGRpc2sgd2hlcmVhcyBwcmV2aW91c2x5IGl0IHdvdWxkIGZhaWwg dG8KPiA+IGZpbmQgdGhlIGlCRlQgYW5kIGNvbnNlcXVlbnRseSwgdGhlIGlTQ1NJIHJvb3QgZGlz ay4KPiA+Cj4gPiBTaWduZWQtb2ZmLWJ5OiBSb3NzIExhZ2Vyd2FsbCA8cm9zcy5sYWdlcndhbGxA Y2l0cml4LmNvbT4KPiA+IC0tLQo+ID4KPiA+IEluIHYzOgo+ID4gKiBFeHBhbmRlZCBjb21taXQg bWVzc2FnZS4KPiA+ICogVXNlZCBJQkZUXyBjb25zdGFudHMuCj4gPgo+ID7CoCBhcmNoL3g4Ni9r ZXJuZWwvc2V0dXAuY8KgwqDCoMKgwqDCoMKgwqDCoMKgwqAgfMKgIDIgKy0KPiA+wqAgYXJjaC94 ODYveGVuL3NldHVwLmPCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHwgMjggKysrKysrKysr KysrKysrKysrKy0tLS0tLS0tLQo+ID7CoCBkcml2ZXJzL2Zpcm13YXJlL2lzY3NpX2liZnRfZmlu ZC5jIHwgMjYgKysrKysrKysrKysrKysrKystLS0tLS0tLS0KPiA+wqAgaW5jbHVkZS9saW51eC9p c2NzaV9pYmZ0LmjCoMKgwqDCoMKgwqDCoMKgIHwgMTAgKysrKysrKysrLQo+ID7CoCA0IGZpbGVz IGNoYW5nZWQsIDQ2IGluc2VydGlvbnMoKyksIDIwIGRlbGV0aW9ucygtKQo+ID4KPiA+IGRpZmYg LS1naXQgYS9hcmNoL3g4Ni9rZXJuZWwvc2V0dXAuYyBiL2FyY2gveDg2L2tlcm5lbC9zZXR1cC5j Cj4gPiBpbmRleCAxNmJhYmZmNzcxYmQuLjYxNmI4MDUwN2FiZCAxMDA2NDQKPiA+IC0tLSBhL2Fy Y2gveDg2L2tlcm5lbC9zZXR1cC5jCj4gPiArKysgYi9hcmNoL3g4Ni9rZXJuZWwvc2V0dXAuYwo+ ID4gQEAgLTc5Niw3ICs3OTYsNiBAQCBzdGF0aWMgdm9pZCBfX2luaXQgZWFybHlfcmVzZXJ2ZV9t ZW1vcnkodm9pZCkKPiA+Cj4gPsKgwqDCoMKgwqDCoMKgwqAgbWVtYmxvY2tfeDg2X3Jlc2VydmVf cmFuZ2Vfc2V0dXBfZGF0YSgpOwo+ID4KPiA+IC3CoMKgwqDCoMKgwqAgcmVzZXJ2ZV9pYmZ0X3Jl Z2lvbigpOwo+ID7CoMKgwqDCoMKgwqDCoMKgIHJlc2VydmVfYmlvc19yZWdpb25zKCk7Cj4gPsKg wqDCoMKgwqDCoMKgwqAgdHJpbV9zbmJfbWVtb3J5KCk7Cj4gPsKgIH0KPiA+IEBAIC0xMDMyLDYg KzEwMzEsNyBAQCB2b2lkIF9faW5pdCBzZXR1cF9hcmNoKGNoYXIgKipjbWRsaW5lX3ApCj4gPsKg wqDCoMKgwqDCoMKgwqAgaWYgKGVmaV9lbmFibGVkKEVGSV9CT09UKSkKPiA+wqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqAgZWZpX2luaXQoKTsKPiA+Cj4gPiArwqDCoMKgwqDCoMKgIHJl c2VydmVfaWJmdF9yZWdpb24oKTsKPiA+wqDCoMKgwqDCoMKgwqDCoCBkbWlfc2V0dXAoKTsKPiA+ Cj4gPsKgwqDCoMKgwqDCoMKgwqAgLyoKPiA+IGRpZmYgLS1naXQgYS9hcmNoL3g4Ni94ZW4vc2V0 dXAuYyBiL2FyY2gveDg2L3hlbi9zZXR1cC5jCj4gPiBpbmRleCBjMmJlM2VmYjJiYTAuLjhiNWNm N2JiMWY0NyAxMDA2NDQKPiA+IC0tLSBhL2FyY2gveDg2L3hlbi9zZXR1cC5jCj4gPiArKysgYi9h cmNoL3g4Ni94ZW4vc2V0dXAuYwo+ID4gQEAgLTYsNiArNiw3IEBACj4gPsKgwqAgKi8KPiA+Cj4g PsKgICNpbmNsdWRlIDxsaW51eC9pbml0Lmg+Cj4gPiArI2luY2x1ZGUgPGxpbnV4L2lzY3NpX2li ZnQuaD4KPiA+wqAgI2luY2x1ZGUgPGxpbnV4L3NjaGVkLmg+Cj4gPsKgICNpbmNsdWRlIDxsaW51 eC9rc3RydG94Lmg+Cj4gPsKgICNpbmNsdWRlIDxsaW51eC9tbS5oPgo+ID4gQEAgLTc2NCwxNyAr NzY1LDI2IEBAIGNoYXIgKiBfX2luaXQgeGVuX21lbW9yeV9zZXR1cCh2b2lkKQo+ID7CoMKgwqDC oMKgwqDCoMKgIEJVR19PTihtZW1tYXAubnJfZW50cmllcyA9PSAwKTsKPiA+wqDCoMKgwqDCoMKg wqDCoCB4ZW5fZTgyMF90YWJsZS5ucl9lbnRyaWVzID0gbWVtbWFwLm5yX2VudHJpZXM7Cj4gPgo+ ID4gLcKgwqDCoMKgwqDCoCAvKgo+ID4gLcKgwqDCoMKgwqDCoMKgICogWGVuIHdvbid0IGFsbG93 IGEgMToxIG1hcHBpbmcgdG8gYmUgY3JlYXRlZCB0byBVTlVTQUJMRQo+ID4gLcKgwqDCoMKgwqDC oMKgICogcmVnaW9ucywgc28gaWYgd2UncmUgdXNpbmcgdGhlIG1hY2hpbmUgbWVtb3J5IG1hcCBs ZWF2ZSB0aGUKPiA+IC3CoMKgwqDCoMKgwqDCoCAqIHJlZ2lvbiBhcyBSQU0gYXMgaXQgaXMgaW4g dGhlIHBzZXVkby1waHlzaWNhbCBtYXAuCj4gPiAtwqDCoMKgwqDCoMKgwqAgKgo+ID4gLcKgwqDC oMKgwqDCoMKgICogVU5VU0FCTEUgcmVnaW9ucyBpbiBkb21VcyBhcmUgbm90IGhhbmRsZWQgYW5k IHdpbGwgbmVlZAo+ID4gLcKgwqDCoMKgwqDCoMKgICogYSBwYXRjaCBpbiB0aGUgZnV0dXJlLgo+ ID4gLcKgwqDCoMKgwqDCoMKgICovCj4gPiAtwqDCoMKgwqDCoMKgIGlmICh4ZW5faW5pdGlhbF9k b21haW4oKSkKPiA+ICvCoMKgwqDCoMKgwqAgaWYgKHhlbl9pbml0aWFsX2RvbWFpbigpKSB7Cj4g PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAvKgo+ID4gK8KgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoCAqIFhlbiB3b24ndCBhbGxvdyBhIDE6MSBtYXBwaW5nIHRvIGJlIGNyZWF0 ZWQgdG8gVU5VU0FCTEUKPiA+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKiByZWdp b25zLCBzbyBpZiB3ZSdyZSB1c2luZyB0aGUgbWFjaGluZSBtZW1vcnkgbWFwIGxlYXZlIHRoZQo+ ID4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAqIHJlZ2lvbiBhcyBSQU0gYXMgaXQg aXMgaW4gdGhlIHBzZXVkby1waHlzaWNhbCBtYXAuCj4gPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgICoKPiA+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKiBVTlVTQUJM RSByZWdpb25zIGluIGRvbVVzIGFyZSBub3QgaGFuZGxlZCBhbmQgd2lsbCBuZWVkCj4gPiArwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICogYSBwYXRjaCBpbiB0aGUgZnV0dXJlLgo+ID4g K8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAqLwo+ID7CoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoCB4ZW5faWdub3JlX3VudXNhYmxlKCk7Cj4gPgo+ID4gKyNpZmRlZiBDT05G SUdfSVNDU0lfSUJGVF9GSU5ECj4gPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAvKiBS ZXNlcnZlIDAuNSBNaUIgdG8gMSBNaUIgcmVnaW9uIHNvIGlCRlQgY2FuIGJlIGZvdW5kICovCj4g PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB4ZW5fZTgyMF90YWJsZS5lbnRyaWVzW3hl bl9lODIwX3RhYmxlLm5yX2VudHJpZXNdLmFkZHIgPSBJQkZUX1NUQVJUOwo+ID4gK8KgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqAgeGVuX2U4MjBfdGFibGUuZW50cmllc1t4ZW5fZTgyMF90YWJs ZS5ucl9lbnRyaWVzXS5zaXplID0gSUJGVF9FTkQgLSBJQkZUX1NUQVJUOwo+ID4gK8KgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqAgeGVuX2U4MjBfdGFibGUuZW50cmllc1t4ZW5fZTgyMF90YWJs ZS5ucl9lbnRyaWVzXS50eXBlID0gRTgyMF9UWVBFX1JFU0VSVkVEOwo+ID4gK8KgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqAgeGVuX2U4MjBfdGFibGUubnJfZW50cmllcysrOwo+ID4gKyNlbmRp Zgo+ID4gK8KgwqDCoMKgwqDCoCB9Cj4gPiArCj4gPsKgwqDCoMKgwqDCoMKgwqAgLyogTWFrZSBz dXJlIHRoZSBYZW4tc3VwcGxpZWQgbWVtb3J5IG1hcCBpcyB3ZWxsLW9yZGVyZWQuICovCj4gPsKg wqDCoMKgwqDCoMKgwqAgZTgyMF9fdXBkYXRlX3RhYmxlKCZ4ZW5fZTgyMF90YWJsZSk7Cj4gPgo+ ID4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZmlybXdhcmUvaXNjc2lfaWJmdF9maW5kLmMgYi9kcml2 ZXJzL2Zpcm13YXJlL2lzY3NpX2liZnRfZmluZC5jCj4gPiBpbmRleCA5NGI0OWNjZDIzYWMuLjcx ZjUxMzAzYzJiYSAxMDA2NDQKPiA+IC0tLSBhL2RyaXZlcnMvZmlybXdhcmUvaXNjc2lfaWJmdF9m aW5kLmMKPiA+ICsrKyBiL2RyaXZlcnMvZmlybXdhcmUvaXNjc2lfaWJmdF9maW5kLmMKPiA+IEBA IC00Miw4ICs0Miw2IEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3Qgewo+ID7CoCB9Owo+ID4KPiA+wqAg I2RlZmluZSBJQkZUX1NJR05fTEVOIDQKPiA+IC0jZGVmaW5lIElCRlRfU1RBUlQgMHg4MDAwMCAv KiA1MTJrQiAqLwo+ID4gLSNkZWZpbmUgSUJGVF9FTkQgMHgxMDAwMDAgLyogMU1CICovCj4gPsKg ICNkZWZpbmUgVkdBX01FTSAweEEwMDAwIC8qIFZHQSBidWZmZXIgKi8KPiA+wqAgI2RlZmluZSBW R0FfU0laRSAweDIwMDAwIC8qIDEyOGtCICovCj4gPgo+ID4gQEAgLTUyLDkgKzUwLDkgQEAgc3Rh dGljIGNvbnN0IHN0cnVjdCB7Cj4gPsKgwqAgKi8KPiA+wqAgdm9pZCBfX2luaXQgcmVzZXJ2ZV9p YmZ0X3JlZ2lvbih2b2lkKQo+ID7CoCB7Cj4gPiAtwqDCoMKgwqDCoMKgIHVuc2lnbmVkIGxvbmcg cG9zOwo+ID4gK8KgwqDCoMKgwqDCoCB1bnNpZ25lZCBsb25nIHBvcywgdmlydF9wb3MgPSAwOwo+ ID7CoMKgwqDCoMKgwqDCoMKgIHVuc2lnbmVkIGludCBsZW4gPSAwOwo+ID4gLcKgwqDCoMKgwqDC oCB2b2lkICp2aXJ0Owo+ID4gK8KgwqDCoMKgwqDCoCB2b2lkICp2aXJ0ID0gTlVMTDsKPiA+wqDC oMKgwqDCoMKgwqDCoCBpbnQgaTsKPiA+Cj4gPsKgwqDCoMKgwqDCoMKgwqAgaWJmdF9waHlzX2Fk ZHIgPSAwOwo+ID4gQEAgLTcwLDEzICs2OCwyMCBAQCB2b2lkIF9faW5pdCByZXNlcnZlX2liZnRf cmVnaW9uKHZvaWQpCj4gPsKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKiBzbyBz a2lwIHRoYXQgYXJlYSAqLwo+ID7CoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBpZiAo cG9zID09IFZHQV9NRU0pCj4gPsKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoCBwb3MgKz0gVkdBX1NJWkU7Cj4gPiAtwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoCB2aXJ0ID0gaXNhX2J1c190b192aXJ0KHBvcyk7Cj4gPiArCj4gPiArwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoCAvKiBNYXAgcGFnZSBieSBwYWdlICovCj4gPiArwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoCBpZiAob2Zmc2V0X2luX3BhZ2UocG9zKSA9PSAwKSB7Cj4gPiArwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgaWYgKHZpcnQpCj4gPiAr wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgIGVhcmx5X21lbXVubWFwKHZpcnQsIFBBR0VfU0laRSk7Cj4gPiArwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgdmlydCA9IGVhcmx5X21lbXJlbWFwX3JvKHBv cywgUEFHRV9TSVpFKTsKPiA+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoCB2aXJ0X3BvcyA9IHBvczsKPiA+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg IH0KPiA+Cj4gPsKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIGZvciAoaSA9IDA7IGkg PCBBUlJBWV9TSVpFKGliZnRfc2lnbnMpOyBpKyspIHsKPiA+IC3CoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBpZiAobWVtY21wKHZpcnQsIGliZnRfc2lnbnNbaV0u c2lnbiwgSUJGVF9TSUdOX0xFTikgPT0KPiA+IC3CoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIDApIHsKPiA+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBpZiAobWVtY21wKHZpcnQgKyAocG9zIC0gdmlydF9wb3Mp LCBpYmZ0X3NpZ25zW2ldLnNpZ24sCj4gPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIElCRlRfU0lHTl9MRU4pID09IDAp IHsKPiA+wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoCB1bnNpZ25lZCBsb25nICphZGRyID0KPiA+IC3CoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAodW5z aWduZWQgbG9uZyAqKWlzYV9idXNfdG9fdmlydChwb3MgKyA0KTsKPiA+ICvCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAo dW5zaWduZWQgbG9uZyAqKSh2aXJ0ICsgcG9zIC0gdmlydF9wb3MgKyA0KTsKPiA+wqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBs ZW4gPSAqYWRkcjsKPiA+wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAvKiBpZiB0aGUgbGVuZ3RoIG9mIHRoZSB0YWJsZSBleHRl bmRzIHBhc3QgMU0sCj4gPsKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAqIHRoZSB0YWJsZSBjYW5ub3QgYmUgdmFsaWQuICov Cj4gPiBAQCAtODQsOSArODksMTIgQEAgdm9pZCBfX2luaXQgcmVzZXJ2ZV9pYmZ0X3JlZ2lvbih2 b2lkKQo+ID7CoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBpYmZ0X3BoeXNfYWRkciA9IHBvczsKPiA+ wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgbWVtYmxvY2tfcmVzZXJ2ZShpYmZ0X3BoeXNfYWRkciwg UEFHRV9BTElHTihsZW4pKTsKPiA+wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgcHJfaW5mbygiaUJG VCBmb3VuZCBhdCAlcGEuXG4iLCAmaWJmdF9waHlzX2FkZHIpOwo+ID4gLcKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqAgcmV0dXJuOwo+ID4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgZ290byBvdXQ7Cj4gPsKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqAgfQo+ID7CoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAg fQo+ID7CoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB9Cj4gPsKgwqDCoMKgwqDCoMKg wqAgfQo+ID4gKwo+ID4gK291dDoKPiA+ICvCoMKgwqDCoMKgwqAgZWFybHlfbWVtdW5tYXAodmly dCwgUEFHRV9TSVpFKTsKPiA+wqAgfQo+ID4gZGlmZiAtLWdpdCBhL2luY2x1ZGUvbGludXgvaXNj c2lfaWJmdC5oIGIvaW5jbHVkZS9saW51eC9pc2NzaV9pYmZ0LmgKPiA+IGluZGV4IDc5MGU3ZmNm YzFhNi4uZTI3NDI3NDgxMDRkIDEwMDY0NAo+ID4gLS0tIGEvaW5jbHVkZS9saW51eC9pc2NzaV9p YmZ0LmgKPiA+ICsrKyBiL2luY2x1ZGUvbGludXgvaXNjc2lfaWJmdC5oCj4gPiBAQCAtMjEsMTIg KzIxLDIwIEBACj4gPsKgwqAgKi8KPiA+wqAgZXh0ZXJuIHBoeXNfYWRkcl90IGliZnRfcGh5c19h ZGRyOwo+ID4KPiA+ICsjaWZkZWYgQ09ORklHX0lTQ1NJX0lCRlRfRklORAo+ID4gKwo+ID7CoCAv Kgo+ID7CoMKgICogUm91dGluZSB1c2VkIHRvIGZpbmQgYW5kIHJlc2VydmUgdGhlIGlTQ1NJIEJv b3QgRm9ybWF0IFRhYmxlLiBUaGUKPiA+wqDCoCAqIHBoeXNpY2FsIGFkZHJlc3MgaXMgc2V0IGlu IHRoZSBpYmZ0X3BoeXNfYWRkciB2YXJpYWJsZS4KPiA+wqDCoCAqLwo+ID4gLSNpZmRlZiBDT05G SUdfSVNDU0lfSUJGVF9GSU5ECj4gPsKgIHZvaWQgcmVzZXJ2ZV9pYmZ0X3JlZ2lvbih2b2lkKTsK PiA+ICsKPiA+ICsvKgo+ID4gKyAqIFBoeXNpY2FsIGJvdW5kcyB0byBzZWFyY2ggZm9yIHRoZSBp U0NTSSBCb290IEZvcm1hdCBUYWJsZS4KPiA+ICsgKi8KPiA+ICsjZGVmaW5lIElCRlRfU1RBUlQg MHg4MDAwMCAvKiA1MTJrQiAqLwo+ID4gKyNkZWZpbmUgSUJGVF9FTkQgMHgxMDAwMDAgLyogMU1C ICovCj4gPiArCj4gPsKgICNlbHNlCj4gPsKgIHN0YXRpYyBpbmxpbmUgdm9pZCByZXNlcnZlX2li ZnRfcmVnaW9uKHZvaWQpIHt9Cj4gPsKgICNlbmRpZgo+ID4gLS0KPiA+IDIuMzEuMQo+ID4KPiA= From xen-devel-bounces@lists.xenproject.org Fri Jun 09 14:46:59 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 09 Jun 2023 14:46:59 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546099.852710 (Exim 4.92) (envelope-from ) id 1q7dNz-0000Oq-Qn; Fri, 09 Jun 2023 14:46:43 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546099.852710; Fri, 09 Jun 2023 14:46:43 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7dNz-0000Oj-OB; Fri, 09 Jun 2023 14:46:43 +0000 Received: by outflank-mailman (input) for mailman id 546099; Fri, 09 Jun 2023 14:46:42 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7dNy-0000OZ-Pl; Fri, 09 Jun 2023 14:46:42 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7dNy-0006IV-DW; Fri, 09 Jun 2023 14:46:42 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7dNx-0002IS-V3; Fri, 09 Jun 2023 14:46:42 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q7dNx-0005uI-Ub; Fri, 09 Jun 2023 14:46:41 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=nV5EqzvJxEnXrYZXblukuT8eQcsDuInETmaJniYyXdw=; b=Qzhw9he3qTOs6qqyU6b0kYRXrA MiOwPxfUSHW0x/xgBdTYDleYubJKY47a0e+wlwTLNgThxpl24M85WKocxa7TdJU+p3vwQC85CgXsI yN2Ice/1zi2Py8rypsG+cYv1O3DYUkHnQl1pl1F0rV5iQko42OErl6WDkNRwIFSAgrfc=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [libvirt test] 181328: tolerable all pass - PUSHED X-Osstest-Failures: libvirt:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking libvirt:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking libvirt:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking libvirt:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking libvirt:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking libvirt:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking libvirt:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking libvirt:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt:saverestore-support-check:fail:nonblocking libvirt:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking libvirt:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-qcow2:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-qcow2:saverestore-support-check:fail:nonblocking libvirt:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking libvirt:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking libvirt:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking libvirt:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking X-Osstest-Versions-This: libvirt=d09b73b5601e7d974698fc62d1fbc64efb7093dc X-Osstest-Versions-That: libvirt=9b743ee19053db2fc3da8fba1e9cf81915c1e2f4 From: osstest service owner Date: Fri, 09 Jun 2023 14:46:41 +0000 flight 181328 libvirt real [real] http://logs.test-lab.xenproject.org/osstest/logs/181328/ Failures :-/ but no regressions. Tests which did not succeed, but are not blocking: test-armhf-armhf-libvirt 16 saverestore-support-check fail like 181293 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail like 181293 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail like 181293 test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-i386-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-i386-libvirt 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt 15 migrate-support-check fail never pass test-arm64-arm64-libvirt 16 saverestore-support-check fail never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-i386-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-qcow2 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-qcow2 15 saverestore-support-check fail never pass test-armhf-armhf-libvirt 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-check fail never pass test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail never pass test-armhf-armhf-libvirt-raw 14 migrate-support-check fail never pass version targeted for testing: libvirt d09b73b5601e7d974698fc62d1fbc64efb7093dc baseline version: libvirt 9b743ee19053db2fc3da8fba1e9cf81915c1e2f4 Last test of basis 181293 2023-06-08 04:18:54 Z 1 days Testing same since 181328 2023-06-09 04:21:22 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Michal Privoznik jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-i386-libvirt-xsm pass test-amd64-amd64-libvirt pass test-arm64-arm64-libvirt pass test-armhf-armhf-libvirt pass test-amd64-i386-libvirt pass test-amd64-amd64-libvirt-pair pass test-amd64-i386-libvirt-pair pass test-arm64-arm64-libvirt-qcow2 pass test-armhf-armhf-libvirt-qcow2 pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw pass test-amd64-i386-libvirt-raw pass test-amd64-amd64-libvirt-vhd pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Pushing revision : To xenbits.xen.org:/home/xen/git/libvirt.git 9b743ee190..d09b73b560 d09b73b5601e7d974698fc62d1fbc64efb7093dc -> xen-tested-master From xen-devel-bounces@lists.xenproject.org Fri Jun 09 15:01:52 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 09 Jun 2023 15:01:52 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546106.852720 (Exim 4.92) (envelope-from ) id 1q7dcY-0002th-3h; Fri, 09 Jun 2023 15:01:46 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546106.852720; Fri, 09 Jun 2023 15:01:46 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7dcY-0002ta-0c; Fri, 09 Jun 2023 15:01:46 +0000 Received: by outflank-mailman (input) for mailman id 546106; Fri, 09 Jun 2023 15:01:44 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7dcW-0002tU-Pt for xen-devel@lists.xenproject.org; Fri, 09 Jun 2023 15:01:44 +0000 Received: from alpha.anastas.io (alpha.anastas.io [104.248.188.109]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 8a8cbb38-06d6-11ee-8611-37d641c3527e; Fri, 09 Jun 2023 17:01:42 +0200 (CEST) Received: from authenticated-user (alpha.anastas.io [104.248.188.109]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by alpha.anastas.io (Postfix) with ESMTPSA id 3D6E73F08F; Fri, 9 Jun 2023 08:01:39 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 8a8cbb38-06d6-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=anastas.io; s=mail; t=1686322900; bh=gGf3xBZw1bq2aiF9uzm2Kn4g3gEGfeF8irHjU0jGdSs=; h=Date:Cc:Subject:From:To:References:In-Reply-To:From; b=A6j/9LZfHyL2/ii4lCGSPrQziw7yLVfU/3RvOgFhzHtVBcCTuwGNkF6KXWx4qdl29 U1pjYsoahzKiSjGbmcbe/RR7leXpObM2mmRkpxyaIjN+XxM8+HTwe3mSRr7mVyZ3Bk ai80yifsK9XwV88qiHLc05Kz6uHudB70mI2iaiT/R3mIp3hZO2N9tmLDmkEeHzF3C9 4emEQ9jSvr4ihbaZyBM6K0+LutvjYokE+fasXmCLGyUjWkXzsurbwhIll16DWomjmU w+z1oKKRDL1D8OguHR0Egs6aVZamfC6ezQTGnZ5bmdQk36SPe8e0sM6/VFnJ5r7suw KqYIZVZPb7Ecw== Mime-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=UTF-8 Date: Fri, 09 Jun 2023 10:01:38 -0500 Message-Id: Cc: , "George Dunlap" , "Stefano Stabellini" , "Wei Liu" , "Shawn Anastasio" , Subject: Re: [PATCH 2/3] xen/ppc: Implement early serial printk on PaPR/pseries From: "Shawn Anastasio" To: "Julien Grall" , "Andrew Cooper" , "Jan Beulich" References: <0c0a19de-dde3-8b98-4354-6d3d2019179b@suse.com> <0b24d36b-adbc-9e7c-df6e-8754c269855d@citrix.com> <1c35f696-5a65-06da-8af5-685b8ad2e849@xen.org> In-Reply-To: On Fri Jun 9, 2023 at 5:12 AM CDT, Julien Grall wrote: > Strictly speaking we can refuse any code. That count for license as=20 > well. Anyway, I didn't request a change here. I merely pointed out that= =20 > any use of GPLv2+ should be justified because on Arm most of the people= =20 > don't pay attention on the license and pick the one from an existing file= . Hi Julien, The choice of GPLv2+ for many of the files in this patchset was indeed inherited from old IBM-written Xen code that the files in question were derived from. I did not realize it was permissible or even desirable to relicense those to GPLv2-only. As for the new files, GPLv2+ was chosen to remain consistent and to open the door for future derivations from GPLv2+ licensed code, either from the older Xen tree or from the Linux ppc tree, much of which is also licensed as GPLv2+. If it would reduce friction, these files could be relicensed to GPLv2-only. Thanks, Shawn From xen-devel-bounces@lists.xenproject.org Fri Jun 09 15:08:52 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 09 Jun 2023 15:08:52 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546111.852730 (Exim 4.92) (envelope-from ) id 1q7djB-0003by-Qj; Fri, 09 Jun 2023 15:08:37 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546111.852730; Fri, 09 Jun 2023 15:08:37 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7djB-0003br-NS; Fri, 09 Jun 2023 15:08:37 +0000 Received: by outflank-mailman (input) for mailman id 546111; Fri, 09 Jun 2023 15:08:36 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7djA-0003bl-81 for xen-devel@lists.xenproject.org; Fri, 09 Jun 2023 15:08:36 +0000 Received: from smtp-out2.suse.de (smtp-out2.suse.de [195.135.220.29]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 8079b9a9-06d7-11ee-8611-37d641c3527e; Fri, 09 Jun 2023 17:08:34 +0200 (CEST) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by smtp-out2.suse.de (Postfix) with ESMTPS id 86C721FDF7; Fri, 9 Jun 2023 15:08:33 +0000 (UTC) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id 3376613A47; Fri, 9 Jun 2023 15:08:33 +0000 (UTC) Received: from dovecot-director2.suse.de ([192.168.254.65]) by imap2.suse-dmz.suse.de with ESMTPSA id NnMoC3FAg2TjfAAAMHmgww (envelope-from ); Fri, 09 Jun 2023 15:08:33 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 8079b9a9-06d7-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1; t=1686323313; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=PyXQdqFRmgObnfEOQbBv8T12i3muDroYiZVMZoQ7xA4=; b=AAkQV1lc0zKowuEDwSF71lAMUt6ug+Wf76t8n+l4ZPuEu+Zon6mXjNCCuhGXdOBeT0Xto8 y01RJ7l/V14zr+3rlRy0fv5x4Kce65aOTT3jhkb3MNZDLuisXTs5plfF+e00Wq8O6VD+lT 7c/BnWqvS0lIGO2p4VKqa66GLvwRj9w= Message-ID: Date: Fri, 9 Jun 2023 17:08:32 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH v3] iscsi_ibft: Fix finding the iBFT under Xen Dom 0 Content-Language: en-US To: Ross Lagerwall , linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org Cc: Jan Beulich , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , x86@kernel.org, Boris Ostrovsky , Peter Jones , Konrad Rzeszutek Wilk References: <20230605102840.1521549-1-ross.lagerwall@citrix.com> From: Juergen Gross In-Reply-To: <20230605102840.1521549-1-ross.lagerwall@citrix.com> Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="------------MpO0aqOHPizWxQTFzinPIViv" This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --------------MpO0aqOHPizWxQTFzinPIViv Content-Type: multipart/mixed; boundary="------------VYzwh8M6sjS0dNkhphJsn5i2"; protected-headers="v1" From: Juergen Gross To: Ross Lagerwall , linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org Cc: Jan Beulich , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , x86@kernel.org, Boris Ostrovsky , Peter Jones , Konrad Rzeszutek Wilk Message-ID: Subject: Re: [PATCH v3] iscsi_ibft: Fix finding the iBFT under Xen Dom 0 References: <20230605102840.1521549-1-ross.lagerwall@citrix.com> In-Reply-To: <20230605102840.1521549-1-ross.lagerwall@citrix.com> --------------VYzwh8M6sjS0dNkhphJsn5i2 Content-Type: multipart/mixed; boundary="------------FRRN0O07PbwvhNz4VuUV0kKu" --------------FRRN0O07PbwvhNz4VuUV0kKu Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: base64 T24gMDUuMDYuMjMgMTI6MjgsIFJvc3MgTGFnZXJ3YWxsIHdyb3RlOg0KPiBUbyBmYWNpbGl0 YXRlIGRpc2tsZXNzIGlTQ1NJIGJvb3QsIHRoZSBmaXJtd2FyZSBjYW4gcGxhY2UgYSB0YWJs ZSBvZg0KPiBjb25maWd1cmF0aW9uIGRldGFpbHMgaW4gbWVtb3J5IGNhbGxlZCB0aGUgaUJG VC4gVGhlIHByZXNlbmNlIG9mIHRoaXMNCj4gdGFibGUgaXMgbm90IHNwZWNpZmllZCwgbm9y IGlzIHRoZSBwcmVjaXNlIGxvY2F0aW9uIChhbmQgaXQncyBub3QgaW4gdGhlDQo+IEU4MjAp IHNvIHRoZSBrZXJuZWwgaGFzIHRvIHNlYXJjaCBmb3IgYSBtYWdpYyBtYXJrZXIgdG8gZmlu ZCBpdC4NCj4gDQo+IFdoZW4gcnVubmluZyB1bmRlciBYZW4sIERvbSAwIGRvZXMgbm90IGhh dmUgYWNjZXNzIHRvIHRoZSBlbnRpcmUgaG9zdCdzDQo+IG1lbW9yeSwgb25seSBjZXJ0YWlu IHJlZ2lvbnMgd2hpY2ggYXJlIGlkZW50aXR5LW1hcHBlZCB3aGljaCBtZWFucyB0aGF0DQo+ IHRoZSBwc2V1ZG8tcGh5c2ljYWwgYWRkcmVzcyBpbiBEb20wID09IHJlYWwgaG9zdCBwaHlz aWNhbCBhZGRyZXNzLg0KPiBBZGQgdGhlIGlCRlQgc2VhcmNoIGJvdW5kcyBhcyBhIHJlc2Vy dmVkIHJlZ2lvbiB3aGljaCBjYXVzZXMgaXQgdG8gYmUNCj4gaWRlbnRpdHktbWFwcGVkIGlu IHhlbl9zZXRfaWRlbnRpdHlfYW5kX3JlbWFwX2NodW5rKCkgd2hpY2ggYWxsb3dzIERvbTAN Cj4gYWNjZXNzIHRvIHRoZSBzcGVjaWZpYyBwaHlzaWNhbCBtZW1vcnkgdG8gY29ycmVjdGx5 IHNlYXJjaCBmb3IgdGhlIGlCRlQNCj4gbWFnaWMgbWFya2VyIChhbmQgbGF0ZXIgYWNjZXNz IHRoZSBmdWxsIHRhYmxlKS4NCj4gDQo+IFRoaXMgbmVjZXNzaXRhdGVzIG1vdmluZyB0aGUg Y2FsbCB0byByZXNlcnZlX2liZnRfcmVnaW9uKCkgc29tZXdoYXQNCj4gbGF0ZXIgc28gdGhh dCBpdCBpcyBjYWxsZWQgYWZ0ZXIgZTgyMF9fbWVtb3J5X3NldHVwKCkgd2hpY2ggaXMgd2hl biB0aGUNCj4gWGVuIGlkZW50aXR5IG1hcHBpbmcgYWRqdXN0bWVudHMgYXJlIGFwcGxpZWQu IFRoZSBwcmVjaXNlIGxvY2F0aW9uIG9mDQo+IHRoZSBjYWxsIGlzIG5vdCB0b28gaW1wb3J0 YW50IHNvIEkndmUgcHV0IGl0IGFsb25nc2lkZSBkbWlfc2V0dXAoKSB3aGljaA0KPiBkb2Vz IHNpbWlsYXIgc2Nhbm5pbmcgb2YgbWVtb3J5IGZvciBjb25maWd1cmF0aW9uIHRhYmxlcy4N Cj4gDQo+IEZpbmFsbHkgaW4gdGhlIGlCRlQgZmluZCBjb2RlLCBpbnN0ZWFkIG9mIHVzaW5n IGlzYV9idXNfdG9fdmlydCgpIHdoaWNoDQo+IGRvZXNuJ3QgZG8gdGhlIHJpZ2h0IHRoaW5n IHVuZGVyIFhlbiwgdXNlIGVhcmx5X21lbXJlbWFwKCkgbGlrZSB0aGUNCj4gZG1pX3NldHVw KCkgY29kZSBkb2VzLg0KPiANCj4gVGhlIHJlc3VsdCBvZiB0aGVzZSBjaGFuZ2VzIGlzIHRo YXQgaXQgaXMgcG9zc2libGUgdG8gYm9vdCBhIGRpc2tsZXNzDQo+IFhlbiArIERvbTAgcnVu bmluZyBvZmYgYW4gaVNDU0kgZGlzayB3aGVyZWFzIHByZXZpb3VzbHkgaXQgd291bGQgZmFp bCB0bw0KPiBmaW5kIHRoZSBpQkZUIGFuZCBjb25zZXF1ZW50bHksIHRoZSBpU0NTSSByb290 IGRpc2suDQo+IA0KPiBTaWduZWQtb2ZmLWJ5OiBSb3NzIExhZ2Vyd2FsbCA8cm9zcy5sYWdl cndhbGxAY2l0cml4LmNvbT4NCg0KUmV2aWV3ZWQtYnk6IEp1ZXJnZW4gR3Jvc3MgPGpncm9z c0BzdXNlLmNvbT4NCg0KDQpKdWVyZ2VuDQoNCg== --------------FRRN0O07PbwvhNz4VuUV0kKu Content-Type: application/pgp-keys; name="OpenPGP_0xB0DE9DD628BF132F.asc" Content-Disposition: attachment; filename="OpenPGP_0xB0DE9DD628BF132F.asc" Content-Description: OpenPGP public key Content-Transfer-Encoding: quoted-printable -----BEGIN PGP PUBLIC KEY BLOCK----- xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjri oyspZKOBycWxw3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2 kaV2KL9650I1SJvedYm8Of8Zd621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i 1TXkH09XSSI8mEQ/ouNcMvIJNwQpd369y9bfIhWUiVXEK7MlRgUG6MvIj6Y3Am/B BLUVbDa4+gmzDC9ezlZkTZG2t14zWPvxXP3FAp2pkW0xqG7/377qptDmrk42GlSK N4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEBAAHNHEp1ZXJnZW4gR3Jvc3Mg PGpnQHBmdXBmLm5ldD7CwHkEEwECACMFAlOMcBYCGwMHCwkIBwMCAQYVCAIJCgsE FgIDAQIeAQIXgAAKCRCw3p3WKL8TL0KdB/93FcIZ3GCNwFU0u3EjNbNjmXBKDY4F UGNQH2lvWAUy+dnyThpwdtF/jQ6j9RwE8VP0+NXcYpGJDWlNb9/JmYqLiX2Q3Tye vpB0CA3dbBQp0OW0fgCetToGIQrg0MbD1C/sEOv8Mr4NAfbauXjZlvTj30H2jO0u +6WGM6nHwbh2l5O8ZiHkH32iaSTfN7Eu5RnNVUJbvoPHZ8SlM4KWm8rG+lIkGurq qu5gu8q8ZMKdsdGC4bBxdQKDKHEFExLJK/nRPFmAuGlId1E3fe10v5QL+qHI3EIP tyfE7i9Hz6rVwi7lWKgh7pe0ZvatAudZ+JNIlBKptb64FaiIOAWDCx1SzR9KdWVy Z2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+wsB5BBMBAgAjBQJTjHCvAhsDBwsJ CAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey/HmQf/RtI7kv5A2PS4 RF7HoZhPVPogNVbC4YA6lW7DrWf0teC0RR3MzXfy6pJ+7KLgkqMlrAbN/8Dvjoz7 8X+5vhH/rDLa9BuZQlhFmvcGtCF8eR0T1v0nC/nuAFVGy+67q2DH8As3KPu0344T BDpAvr2uYM4tSqxK4DURx5INz4ZZ0WNFHcqsfvlGJALDeE0LhITTd9jLzdDad1pQ SToCnLl6SBJZjDOX9QQcyUigZFtCXFst4dlsvddrxyqT1f17+2cFSdu7+ynLmXBK 7abQ3rwJY8SbRO2iRulogc5vr/RLMMlscDAiDkaFQWLoqHHOdfO9rURssHNN8WkM nQfvUewRz80hSnVlcmdlbiBHcm9zcyA8amdyb3NzQG5vdmVsbC5jb20+wsB5BBMB AgAjBQJTjHDXAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/ Ey8PUQf/ehmgCI9jB9hlgexLvgOtf7PJnFOXgMLdBQgBlVPO3/D9R8LtF9DBAFPN hlrsfIG/SqICoRCqUcJ96Pn3P7UUinFG/I0ECGF4EvTE1jnDkfJZr6jrbjgyoZHi w/4BNwSTL9rWASyLgqlA8u1mf+c2yUwcGhgkRAd1gOwungxcwzwqgljf0N51N5Jf VRHRtyfwq/ge+YEkDGcTU6Y0sPOuj4Dyfm8fJzdfHNQsWq3PnczLVELStJNdapwP OoE+lotufe3AM2vAEYJ9rTz3Cki4JFUsgLkHFqGZarrPGi1eyQcXeluldO3m91NK /1xMI3/+8jbO0tsn1tqSEUGIJi7ox80eSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1 c2UuZGU+wsB5BBMBAgAjBQJTjHDrAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgEC F4AACgkQsN6d1ii/Ey+LhQf9GL45eU5vOowA2u5N3g3OZUEBmDHVVbqMtzwlmNC4 k9Kx39r5s2vcFl4tXqW7g9/ViXYuiDXb0RfUpZiIUW89siKrkzmQ5dM7wRqzgJpJ wK8Bn2MIxAKArekWpiCKvBOB/Cc+3EXE78XdlxLyOi/NrmSGRIov0karw2RzMNOu 5D+jLRZQd1Sv27AR+IP3I8U4aqnhLpwhK7MEy9oCILlgZ1QZe49kpcumcZKORmzB TNh30FVKK1EvmV2xAKDoaEOgQB4iFQLhJCdP1I5aSgM5IVFdn7v5YgEYuJYx37Io N1EblHI//x/e2AaIHpzK5h88NEawQsaNRpNSrcfbFmAg987ATQRTjHAWAQgAyzH6 AOODMBjgfWE9VeCgsrwH3exNAU32gLq2xvjpWnHIs98ndPUDpnoxWQugJ6MpMncr 0xSwFmHEgnSEjK/PAjppgmyc57BwKII3sV4on+gDVFJR6Y8ZRwgnBC5mVM6JjQ5x Dk8WRXljExRfUX9pNhdE5eBOZJrDRoLUmmjDtKzWaDhIg/+1Hzz93X4fCQkNVbVF LELU9bMaLPBG/x5q4iYZ2k2ex6d47YE1ZFdMm6YBYMOljGkZKwYde5ldM9mo45mm we0icXKLkpEdIXKTZeKDO+Hdv1aqFuAcccTg9RXDQjmwhC3yEmrmcfl0+rPghO0I v3OOImwTEe4co3c1mwARAQABwsBfBBgBAgAJBQJTjHAWAhsMAAoJELDendYovxMv Q/gH/1ha96vm4P/L+bQpJwrZ/dneZcmEwTbe8YFsw2V/Buv6Z4Mysln3nQK5ZadD 534CF7TDVft7fC4tU4PONxF5D+/tvgkPfDAfF77zy2AH1vJzQ1fOU8lYFpZXTXIH b+559UqvIB8AdgR3SAJGHHt4RKA0F7f5ipYBBrC6cyXJyyoprT10EMvU8VGiwXvT yJz3fjoYsdFzpWPlJEBRMedCot60g5dmbdrZ5DWClAr0yau47zpWj3enf1tLWaqc suylWsviuGjKGw7KHQd3bxALOknAp4dN3QwBYCKuZ7AddY9yjynVaD5X7nF9nO5B jR/i1DG86lem3iBDXzXsZDn8R38=3D =3D2wuH -----END PGP PUBLIC KEY BLOCK----- --------------FRRN0O07PbwvhNz4VuUV0kKu-- --------------VYzwh8M6sjS0dNkhphJsn5i2-- --------------MpO0aqOHPizWxQTFzinPIViv Content-Type: application/pgp-signature; name="OpenPGP_signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="OpenPGP_signature" -----BEGIN PGP SIGNATURE----- wsB5BAABCAAjFiEEhRJncuj2BJSl0Jf3sN6d1ii/Ey8FAmSDQHAFAwAAAAAACgkQsN6d1ii/Ey/7 UAf6A1EdYB1UDIAliXeURevLWbCz1ll1QMq2+0LNbTntjftcBzNckEif5Ee8IniwRlmAK/pPkYG4 XIs0+zPlHTtdfK/7nQbd1DgaRB96W0AozwY0G2MroJ1cdWfOZ6N1KBggA21LvrzCO+Auxzj+Xwzi 0jUx6i4hnWsudjOARbJQNJWomylj6xz0XSq+img8UIq8BF5seX/LIxdUfYbKdkDm1xe3cd2R8wDT f2cPijZUXJVw4nw4ip/svSR8pBx2H8Se1A8jbAfhH155Fvdlc0YnQ12JBUfWM3eaeZnxcvMXzF/R kSxcO4ovE9UbRYaRfuglJkTxyWmXIZdXdeHTIjZ+6Q== =WKT/ -----END PGP SIGNATURE----- --------------MpO0aqOHPizWxQTFzinPIViv-- From xen-devel-bounces@lists.xenproject.org Fri Jun 09 15:14:11 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 09 Jun 2023 15:14:11 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546116.852740 (Exim 4.92) (envelope-from ) id 1q7doP-00053c-Ca; Fri, 09 Jun 2023 15:14:01 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546116.852740; Fri, 09 Jun 2023 15:14:01 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7doP-00053V-9q; Fri, 09 Jun 2023 15:14:01 +0000 Received: by outflank-mailman (input) for mailman id 546116; Fri, 09 Jun 2023 15:14:00 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7doO-00053P-1u for xen-devel@lists.xenproject.org; Fri, 09 Jun 2023 15:14:00 +0000 Received: from esa1.hc3370-68.iphmx.com (esa1.hc3370-68.iphmx.com [216.71.145.142]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 3fe6c601-06d8-11ee-8611-37d641c3527e; Fri, 09 Jun 2023 17:13:56 +0200 (CEST) Received: from mail-dm6nam12lp2172.outbound.protection.outlook.com (HELO NAM12-DM6-obe.outbound.protection.outlook.com) ([104.47.59.172]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 09 Jun 2023 11:13:53 -0400 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) by PH7PR03MB7161.namprd03.prod.outlook.com (2603:10b6:510:2b7::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.38; Fri, 9 Jun 2023 15:13:51 +0000 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::192:6bdf:b105:64dd]) by SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::192:6bdf:b105:64dd%3]) with mapi id 15.20.6455.028; Fri, 9 Jun 2023 15:13:50 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 3fe6c601-06d8-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686323636; h=date:from:to:cc:subject:message-id:references: content-transfer-encoding:in-reply-to:mime-version; bh=o//AMS6AK7pS6LI/eJeqEo91TLLQJAfVS1VEeMAsz0o=; b=WL4d70/ffaxbtLe4l22KlrfRtQ/etnznoNhZLUlZB8kx2EzJJ+4p2zKj 9noiOsu8Ef7geRCqDZL7PiMoSLxHET4z2C6uedODrMHazYXGbEDQ+GHuk R63hTuN0JD6iOaniXXshwVnRx8K3KbAiYlhYw92bCHbhhP5gcegt8VPBw Y=; X-IronPort-RemoteIP: 104.47.59.172 X-IronPort-MID: 112646623 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:bZ2Nea0tQXqpWgi0i/bD5ZFxkn2cJEfYwER7XKvMYLTBsI5bp2dTn GdMXGqOM/+MNmSmf4tya4W290sOsZPVmtY3SAs6pC1hF35El5HIVI+TRqvS04F+DeWYFR46s J9OAjXkBJppJpMJjk71atANlVEliefTAOK6ULWeUsxIbVcMYD87jh5+kPIOjIdtgNyoayuAo tq3qMDEULOf82cc3lk8teTb8HuDgNyo4GlD5gJmNKgS1LPjvyJ94Kw3dPnZw0TQGuG4LsbiL 87fwbew+H/u/htFIrtJRZ6iLyXm6paLVeS/oiI+t5qK23CulQRrukoPD9IOaF8/ttm8t4sZJ OOhF3CHYVxB0qXkwIzxWvTDes10FfUuFLTveRBTvSEPpqFvnrSFL/hGVSkL0YMkFulfE0921 +wmJBo3MhGZuvOp57uJd+cymZF2RCXrFNt3VnBI6xj8VKxjbbWdBqLA6JlfwSs6gd1IEbDGf c0FZDFzbRPGJRpSJlMQD5F4l+Ct7pX9W2QA9BTJ+uxqsi6Kk1YZPLvFabI5fvSQQspYhACAr 3/u9GXlGBAKcteYzFJp91r137WRwX2lAtl6+LuQ3fpUkUaBn1wqBzokZV6yhte2mGukcocKQ 6AT0m90xUQoz2SnQ9z8dxy+vn+fvxQYVsZQEus18wWEwOzf5APxLmEURDlMQN8rrsk7QXom1 TehltzqLSZivL2cVTSW8bL8hSi0ODQHIHUqZiIeSwYBpd75r+kbgheKQtt9HaqdlND5GTjsh TuNqUAWgrwJiMcR2qaT/FbZgimtrJzEUg404ArMWmuvqAh+YeaNY42u9Eie5/JHJ4WxUFaMp j4HltKY4eRICouC/ASJQeMQDPSq6uyDPTn0n1FiBd8i+i6r9nrleppfiBluKUEsPssadDvBZ E7IpRgX9JJVJGGtb6J8f8S2EctC8ET7PdHsV/SRYt8QZJF0LVWD5Hs3OhTW2H3xmk8xl615I Y2cbcunEXcdD+Jg0SayQOAel7Qsw0jS2F/ueHwy9Dz/uZL2WZJfYe5t3IemBgzh0J65nQ== IronPort-HdrOrdr: A9a23:Eg5ibq1du1lXLFnmIQMlTgqjBNEkLtp133Aq2lEZdPU1SKylfq WV98jzuiWYtN98YhsdcLO7WZVoP0myyXcd2+B4AV7IZmXbUQWTQr1f0Q== X-Talos-CUID: 9a23:0/3QzWMDX7+XA+5DSgdf1l4qFuofLnzH8WbPBEaKNGg3V+jA X-Talos-MUID: 9a23:73sJ+Ag4CITUvG0W46p0LMMpH8NW8r+8UXA0nrI0i8yNEgJ/KRKHpWHi X-IronPort-AV: E=Sophos;i="6.00,229,1681185600"; d="scan'208";a="112646623" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=MG5W8fW7znhzZrsehrUf+oRsqJ5qSek90bj/Jw12qTbtTuow27wF/Pn521HgRXQChEIRfwgN5qx4NR1TMp96o8jh29wMesjkxb5rIhYtEPiNc4fUNJ534KpiTdb3tw/rii9+wp70Yc8wBAcv3ZfbNj+io6BWsFejzmrcInjiTcS4kruqKEpXrasDnhYZOEmdz5XVE9scgVIB8VkNpIREi+/T07hUCUPXTyv4srwKErQh9fzyvTRwfH4CV3DBWMgn9YYeoj1aHaYdgl1w08EOsiiLiCb9tVt1647I7gz+iKbmXJgB1rnRbnApxE+ya3HPYmouU4v8Sh0i0L/cNO+2lA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=wUFXXxMg0k7jjDh8dJSp3UUZ4jZR4bpZshfn2ePp5xY=; b=DfNb5wiJdbzef7VQIiTGOv1Zkqu0hwue0nl839Jmtb6xV4+bgPP8gPeO2XzIvhMs1e8daW113DfSSVDJPhycNzShbgB2dEgXbPQuhUNNZMoMxPgNkAPSCGbV5FXmQ0FIRCDyLmh6ifYm4z77TzN+zd3dMMc3l547EJJ0ihH//WoVJi9q9cG98ntwgj21m1zPCwQSsLCewgMrMruBNZx0vrK3Yn3lNo1yMvinZE3p4Fv7WS38t+nXwpoiGITB8LQTRQWEJxgqKmbSgrJUdhaK9vhuEkdQln6fKsnnidx2ljN74+idxAPbxOxZFBuQ56f+4ze3Sixtnvi0pMNS0Sr/jQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=wUFXXxMg0k7jjDh8dJSp3UUZ4jZR4bpZshfn2ePp5xY=; b=xc9cuqmEt1agA7HSV7HBF2UsvPbtjTsgOTp7DYfVQurmPC9AtoxNP8ma5H2nxvZ1bHgOxUgdi9Ag25P2AiWGKyN10qn377AjltUmy5T0UKmMYMxs0UuhkQYiRBpJWQlBF3/8FoJj+vrzX+JFoca25bFFrnuCM3fA1Fl+UMn7IRs= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Date: Fri, 9 Jun 2023 17:13:45 +0200 From: Roger Pau =?utf-8?B?TW9ubsOp?= To: Demi Marie Obenour Cc: Jens Axboe , Alasdair Kergon , Mike Snitzer , dm-devel@redhat.com, Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= , linux-block@vger.kernel.org, linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org Subject: Re: [PATCH v2 13/16] xen-blkback: Implement diskseq checks Message-ID: References: <20230530203116.2008-1-demi@invisiblethingslab.com> <20230530203116.2008-14-demi@invisiblethingslab.com> Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: X-ClientProxiedBy: LO4P123CA0542.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:319::7) To SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|PH7PR03MB7161:EE_ X-MS-Office365-Filtering-Correlation-Id: ec3c429e-66d9-47fd-0a74-08db68fc218f X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: d5Ue7PcpP3u2dMM+Io7ktvMTdxS4q70nuNMJpQW//v/SbPPgr113/8gaoXOdhKo6Xpxg8hVmXhE3HtQK+ipE1bgmg24ROvuZILfGFzqaj4NDz/aWpFTaV/rXL5EY3uYCOkXgN2eLnC1bGLxDnLRZl5BrfGk0x3D7PYKL6LcziWT0/XkVABeYTG1CxleI9AWEl4OaM70vQ0xalCNuo/qPkvEBSsZR0rb4ITo629Wzek/NDscPu5wQ/Rqsn2t4xOU6cYr7jxIAUKuam0jYW7ODghBV17OAsEaT3Jxy+kSEHtMLT0ISl53hUqRChf07pNxhvi81jolg1iVd5DNRYiOIv3igqyjea7vqgEOU7nHG0cCU+sDmJpd3Gcc/46T1kn7GxmmW7W9AuP4b60m9oGe1rOxttg3ABXDUvlwV/cZWOyYRG1toJXaHX35z6ZUESfcYp4IV/FBwCYlEa+YaaSO0rEmGmw9JIXdqbZR8LP6zqYlifiZsQ+sYGAe6dzTFQfOk9vvZoE57r+iAFizXPGky/bY+A6cWD8EgKYfEDiwbbUrlc29pdourFd5yGvqoxBf1o5p7B5y/3UfGPr1ugIeaczt0cyzhOT+VRdcko2w9xHo= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(7916004)(4636009)(346002)(376002)(366004)(136003)(396003)(39860400002)(451199021)(2906002)(5660300002)(6916009)(41300700001)(8936002)(8676002)(4326008)(54906003)(66556008)(66476007)(66946007)(478600001)(316002)(6666004)(6486002)(186003)(33716001)(86362001)(83380400001)(85182001)(82960400001)(6506007)(6512007)(9686003)(26005)(38100700002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?VnJYUlA5U2NnaVFqdlc0V1R5MTNzaXJMR05RQzI1Z0h5SDJHUTBHcjhIbk1Q?= =?utf-8?B?ZDYzc3ZtVExlajVzL1RTSXpPc1lpQVZMWXN5dHMxaFc2K0FXcDBFeUEzdng4?= =?utf-8?B?OEJxbnN3K1d4ZXhvb2xhRFY4cVhsTzd0OXB4TmZJeGtQeGdpK1NYUUtUS3Fs?= =?utf-8?B?c3lyQXhVaHpjODNqRDhqUURKeFZaZ1NzQ04rZnkxRE5TS3VrS2twMlNuYzk2?= =?utf-8?B?dmdnakhhaVovSXZSNmdRS3MyWGtVa1Yxc1FzK3ltZHozQ3k0ZjM0d3owTmhu?= =?utf-8?B?Tk82WDc4ZVVDK1A5SXIwdUl0R1RqUjQ1QjZjQXR2eEZBT1A2OEd4b3NJOHJW?= =?utf-8?B?MytLeEI2UlI3VVNMb21YRkE1QkNUdnRiSmVDb2pHdDBxTFMvZHlsaFJqcEJ2?= =?utf-8?B?WjhKcUhic3lwRWhDZUxvNkFJV3psTDdNYWR2VlB1eHE0Z3hUWlRwV1BtMGRS?= =?utf-8?B?TnZjV3kvVXVZdDZDZFhHeStQK3pBY1JmaWpabXp3V290MjBNK3J0ZGNFanRI?= =?utf-8?B?MHM1YkVmSEZlOGZMNVpFYlp3RXcvWXRSYTFkSHRPaHBkL1BIZzE2MzcwcVJu?= =?utf-8?B?MzdyZEQwamtoT2tpN010VngxWUprcktjVytYdzBJd0djc3J3UFBFaGYwY0h3?= =?utf-8?B?WXkyb2t5RE5SM0pzN1FIVTdHUFdPVDRORXlOT3A0YTkrVDNEUVhHMHc3ZHRu?= =?utf-8?B?bkhhQWhwRzc4ZkdJLzhmM2UraG1QcVpIN0x0eGNROEs0cHR6akxhOHZJRGcz?= =?utf-8?B?WFJLWS9reUF6SWI5QkhFQWF5RlkyclVIRytFSnEvOThWeXNtUXpkbmlwVGVl?= =?utf-8?B?M1N6NjNCdG5pZHhQOFRMWE1BYnM0b0JYbjlrUmlIZFc0Q2VtQzBIUFM5djBZ?= =?utf-8?B?MmZwcWxLYU1mN2Z6c2J4d2h0MXM3R0pjN3ZNS1c3UnkvKzZ2ZVNhdVNRWEhy?= =?utf-8?B?R0daZ1U0ZjdhV2xTeVV5UFlIeGoxemp6WmF4c3Y4WGFESlhrR1gyc0NBL0h3?= =?utf-8?B?MVN2TUVSSFEvUzFaS1NPL2J5TittQzBhZ3gzUG10NzB6WkpWWlJwTnhydjI4?= =?utf-8?B?RWQvRDk1OWVDZW1WSVdWMjZwaVZnZzk2cWpBSm05d3FNUitPakdZd0dTTzZq?= =?utf-8?B?K1o2V0VJWWpXYUlDTEFQaW9lMlhDWXhNWGs1WUg2eWFPWlZZUWJGeHBkK0NV?= =?utf-8?B?cE1KL0xwamROZmhwRGh4SjAzUmQzSlErNFdlVFlSYWNlOXRCaVQweEo1WFcw?= =?utf-8?B?KzR1c3BHb1RWQjh6OHVZNU03eTRDU2I2NWt4KzI3THhEWDNYdVJJMVk0d0Rw?= =?utf-8?B?Rmpab3VvWmhhRHVqNXZYRzdyTkxTaDF1V2s0aC9JcjJOamNQalR3eXo3cGc2?= =?utf-8?B?WmJCcXZhTTNrS3NEdjRLQ2J5RjFNWGk4SU1XaVFHck9JMlo1V3NOanBCYkY3?= =?utf-8?B?NGNaMmFYTEpYWkFUMHJJV1ZMNmJNR1hxeDBIc1JNeHA4bFd3RWZmK2Y3aXh1?= =?utf-8?B?UUt6ZXB0YllhemdTUnh6K1A1QTdZaVFPb2M0TFNvcWNqbVBWYnR5RXpzZnVE?= =?utf-8?B?ZkJyOWx1RmxZRXI1aDVIMVVIcU44MHRqTm9NL2MwMGsveWlNdVIvVktMKytQ?= =?utf-8?B?VUwreEdMT0UvREJZN0haaGpDRGNYNnF4ZmpvSHcvZEYwcFE4ZGFJM28wb2ZY?= =?utf-8?B?U3FmV2tMZnB4SHQ2VDZYakdsOU9HVWQvRm5DYXJPQ2Q2ZUZjK29mNUdvS1NN?= =?utf-8?B?cXhuVjRzYmRqamx0SVg1by9oYXkzaFNVTUZyRVB5bmVhMVg0VklWdjFyc241?= =?utf-8?B?cGprakR5VXdWTzczajI4aDVrSXorTnBWNCtjMjdhaml3VjhTaGxDays2ajA2?= =?utf-8?B?bW92NnN0NS9sWjhUd1BidlEyT3NmZ1VtYUR2dVpveURlVllQalFEcTNnVHhz?= =?utf-8?B?bEloTytVN0NUSGk1bFNtZWh2ZVFxRDNkNnBneldEVU54UFRuQVo1ZGszWnlI?= =?utf-8?B?bGlRZzVvRUxRN2w4cGw2MWNKSTVhMVNCRFg0VnFXNDNXc1lFSWl4WmNTMEtB?= =?utf-8?B?ak9IdDlqREp3NXI5a2kwZ2NFYkJCU3dNTUZwZW5QVHhRbHZsTENza2xRQU5E?= =?utf-8?Q?l33QYGAbTGml6xbV0FTDYJxoi?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: =?utf-8?B?ZFlkUnFaZ1htMk9XeE5JblFpY1FIVndFM0hNUDVxUE82YVYyV2hiSUorTmJU?= =?utf-8?B?UVpHek9KUVF3WnhyZ1g1V3VNcmtSWjZOMmFBakVubDlZVTlxakF4WUhTNjda?= =?utf-8?B?V2pveERBcGVDd0hxaUo5WnNlMWFsaVZUR3UwbzFlTE1ZME1aSHhSUWw0RXpw?= =?utf-8?B?TXMzSFFoUUdHTWJxUjdSNUI1M01KOHBBSG5rY0VoSmp5Ri8zc1Fnd2RiL2pS?= =?utf-8?B?Y0Z6RytWc1ZndUQrSERLSHAyTHpNSnJWL2FRSFFlN3BQclpCbWZZa3k2Q2JW?= =?utf-8?B?OTl0eUU5WUpOazlpQ0pIOHl3aHdIYUREYkI1WHNCeHhQekFUYzVMZ0xqM2sv?= =?utf-8?B?ZzVvWnVPWnljSjJ0amlPU3JUd2JsTjM5b1pyTXVWYjVnVmVoa2IxcW9YTnNn?= =?utf-8?B?TGwzWHlmOS95Q010WmpsVWVPejNVZzRtb2RMV2RlUi9aWlR5ZkhndzRaVm1i?= =?utf-8?B?ekpHSy9mejRtVkVTZWpIKzZMK2RmeHNMWVgyQjZwUUVhY0FkdGVGRG0wcDlT?= =?utf-8?B?ekprd0hZODM4L3ZmS05aWnlFQm5yeHJyNDlYUFZFRUlGdGYwSkVBcXNEblpm?= =?utf-8?B?M2Y4RDhxUlIzZzVYOU9KMVNuQ2RmMmw2VEZobGZrKy95VmtxZTVlQlFSbkpV?= =?utf-8?B?SU9KblFPTlJQVTUrdFIvZ3JBM01URmdiSDRQQ2F1dDViU3l3SDJIalRnR1Bq?= =?utf-8?B?SjlLdnNxelNlRm05NEpBRzJqNkw3MExrVzhNRE1hekY4dGl2bVFWQm1UbTV3?= =?utf-8?B?TkNmbjU5dkg3MFVaalI4L3NyUGhCRks0TDlZZlFwRG9SSnZjaXR5NmMrUElW?= =?utf-8?B?Tm1JMzhTNC9hM3l1Qlgva3hPS3R0K3dzLzdoNXlVclErS0VPK3RZc0lnamRp?= =?utf-8?B?OGpKbk9HVjYzWHRqb2RQa0ZYN1VxQmI4YXNFT240c2Y2RGtySXloR1IyeXpD?= =?utf-8?B?WmJjL0ZvOTVrRmY4YXZsampaM0ZUb0JRZm5GSVR6RnJGU1huQThTYWNqTzZH?= =?utf-8?B?cGd4TVFuN3VWSjk1WGtpV0xsU3pzZjVkMzJpdkRWOGZwQmZpMGU0RnFCVDRD?= =?utf-8?B?M3M3SDN2OThnekZEOXR2WDQ4TzBUSm9MSTZrdTBKU2VLWE5XKzlqanlSeXZ3?= =?utf-8?B?dmNmQXQxc0hqSGR1ZjFLZzdVZWtKZVVWR0V4a3NPNVh5ZXNoU1RRNVo5V2tr?= =?utf-8?B?dmdMWnU5YUcvZ0hRSmQzTUFUc0Nvd1VNdFllZFVaRDdReWlnT2Fpb1ZvZkVG?= =?utf-8?B?ZEl5UW9FTWx6cWJIQXBiWlVNTG13bGJmYVFOajhQWlVsbFNTUT09?= X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: ec3c429e-66d9-47fd-0a74-08db68fc218f X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Jun 2023 15:13:50.9092 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: Eg9Y3LdB42Eq1+kEALYd0hKxNYVHh3U6763fXGi05G2CJRGSVkWu8BSrqOcAkO8EBORhfhmdpt8TcZejcFjLhQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH7PR03MB7161 On Thu, Jun 08, 2023 at 11:33:26AM -0400, Demi Marie Obenour wrote: > On Thu, Jun 08, 2023 at 10:29:18AM +0200, Roger Pau Monné wrote: > > On Wed, Jun 07, 2023 at 12:14:46PM -0400, Demi Marie Obenour wrote: > > > On Wed, Jun 07, 2023 at 10:20:08AM +0200, Roger Pau Monné wrote: > > > > On Tue, Jun 06, 2023 at 01:01:20PM -0400, Demi Marie Obenour wrote: > > > > > On Tue, Jun 06, 2023 at 10:25:47AM +0200, Roger Pau Monné wrote: > > > > > > On Tue, May 30, 2023 at 04:31:13PM -0400, Demi Marie Obenour wrote: > > > > > > Also, you tie this logic to the "physical-device" watch, which > > > > > > strictly implies that the "diskseq" node must be written to xenstore > > > > > > before the "physical-device" node. This seems fragile, but I don't > > > > > > see much better optiono since the "diskseq" is optional. > > > > > > > > > > What about including the diskseq in the "physical-device" node? Perhaps > > > > > use diskseq@major:minor syntax? > > > > > > > > Hm, how would you know whether the blkback instance in the kernel > > > > supports the diskseq syntax in physical-device? > > > > > > That’s what the next patch is for 🙂. > > > > Hm, I think we should separate diskseq support from the notify open > > stuff: it's possible a different (non-Linux) backend wants to > > implement open notify support but doesn't have diskseq. > > I like this idea! What about having blkback set diskseq to zero? > Userspace could then replace it with the actual value. I think it would be better if we used a sysfs node, because blkfront has no business is knowing whether diskseq is supported by the backend or not. xenstore should be reserved to features exposed between blkfront and blkback if possible. I know we haven't been very good at this however. > > > > Can you fetch a disk using a diskseq identifier? > > > > > > Not yet, although I have considered adding this ability. It would be > > > one step towards a “diskseqfs” that userspace could use to open a device > > > by diskseq. > > > > > > > Why I understand that this is an extra safety check in order to assert > > > > blkback is opening the intended device, is this attempting to fix some > > > > existing issue? > > > > > > Yes, it is. I have a block script (written in C) that validates the > > > device it has opened before passing the information to blkback. It uses > > > the diskseq to do this, but for that protection to be complete, blkback > > > must also be aware of it. > > > > But if your block script opens the device, and keeps it open until > > blkback has also taken a reference to it, there's no way such device > > could be removed and recreated in the window you point out above, as > > there's always a reference on it taken? > > This assumes that the block script is not killed in the meantime, > which is not a safe assumption due to timeouts and the OOM killer. Doesn't seem very reliable to use with delete-on-close either then. > > > > I'm not sure I see how the major:minor numbers would point to a > > > > different device than the one specified by the toolstack unless the > > > > admin explicitly messes with the devices before blkback has got time > > > > to open them. But then the admin can already do pretty much > > > > everything it wants with the system. > > > > > > Admins typically refer to e.g. device-mapper devices by name, not by > > > major:minor number. If a device is destroyed and recreated right as the > > > block script is running, this race condition can occur. > > > > Right, but what about this device recreation happening after the admin > > has written the guest config file but before the call to (lib)xl > > happens? blkback would also end up using a different device than > > indented, and your proposed approach doesn't fix this. The only way to > > solve this would be to reference devices by UUID (iow: diskseq) > > directly in the guest config file. > > That would be a good idea, but it is orthogonal to this patch. My > script opens the device and uses various means to check that it did > open the correct device. It then passes the diskseq to blkback. How you do this with losetup? I guess there's an atomic way to setup a loop device and get its diskseq? > > Then the block script will open the device by diskseq and pass the > > major:minor numbers to blkback. > > Alternatively, the toolstack could write both the diskseq and > major:minor numbers and be confident that it is referring to the > correct device, no matter how long ago it got that information. > This could be quite useful for e.g. one VM exporting a device to > another VM by calling losetup(8) and expecting a human to make a > decision based on various properties about the device. In this > case there is no upper bound on the race window. Instead of playing with xenstore nodes, it might be better to simply have blkback export on sysfs the diskseq of the opened device, and let the block script check whether that's correct or not. That implies less code in the kernel side, and doesn't pollute xenstore. Regards, Roger. From xen-devel-bounces@lists.xenproject.org Fri Jun 09 15:16:13 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 09 Jun 2023 15:16:13 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546123.852750 (Exim 4.92) (envelope-from ) id 1q7dqV-0005hJ-U7; Fri, 09 Jun 2023 15:16:11 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546123.852750; Fri, 09 Jun 2023 15:16:11 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7dqV-0005hC-RM; Fri, 09 Jun 2023 15:16:11 +0000 Received: by outflank-mailman (input) for mailman id 546123; Fri, 09 Jun 2023 15:16:11 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7dqU-0005h6-Sr for xen-devel@lists.xenproject.org; Fri, 09 Jun 2023 15:16:11 +0000 Received: from mga17.intel.com (mga17.intel.com [192.55.52.151]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 8d7594a9-06d8-11ee-b232-6b7b168915f2; Fri, 09 Jun 2023 17:16:07 +0200 (CEST) Received: from orsmga008.jf.intel.com ([10.7.209.65]) by fmsmga107.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 09 Jun 2023 08:16:03 -0700 Received: from mdeisher-mobl3.amr.corp.intel.com (HELO [10.212.149.144]) ([10.212.149.144]) by orsmga008-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 09 Jun 2023 08:16:02 -0700 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 8d7594a9-06d8-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1686323767; x=1717859767; h=message-id:date:mime-version:subject:to:cc:references: from:in-reply-to:content-transfer-encoding; bh=WsfbXnCcsa4TSM5XB3U7xjDRRc9X6Hu2PjNqEmPgRBA=; b=WrvLmo8GuJTdogObdujeozYDmCSrZb9/ocNfeXdmbLIokIiPmZ+QH59F V2swluS13c5Fb5sKNOvtBcVZLXNslNUj4miG5knjIg8VViQ3e/ovZk0n5 qk//O/sIAjKCN1VubxY2YCc0GzXAL66gehy4SN9lmhzdDFg9gi9h7Z3wR SXZtJQsGzREGW3pwYog3+9cdy5RoZ7pfMkq2JZXnwNH/nqP2FDvmjV0U2 /SwPyNJMlYMK66ChQocY/LOSpIrNtm6bsCTwxasfTYgTCtVsrqzaULFBo Gj8DISg44qsRvBIzxsWw6hPgsNKXZH/eKeV5wrXB9hyaYy78BwszaOqjZ w==; X-IronPort-AV: E=McAfee;i="6600,9927,10736"; a="337978233" X-IronPort-AV: E=Sophos;i="6.00,229,1681196400"; d="scan'208";a="337978233" X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10736"; a="740198658" X-IronPort-AV: E=Sophos;i="6.00,229,1681196400"; d="scan'208";a="740198658" Message-ID: <2e28fcdb-f0ff-dca4-3dc4-34b11cc7e469@intel.com> Date: Fri, 9 Jun 2023 08:16:02 -0700 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH v3] iscsi_ibft: Fix finding the iBFT under Xen Dom 0 Content-Language: en-US To: Ross Lagerwall , linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org Cc: Jan Beulich , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , x86@kernel.org, Juergen Gross , Boris Ostrovsky , Peter Jones , Konrad Rzeszutek Wilk References: <20230605102840.1521549-1-ross.lagerwall@citrix.com> From: Dave Hansen In-Reply-To: <20230605102840.1521549-1-ross.lagerwall@citrix.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit On 6/5/23 03:28, Ross Lagerwall wrote: > The result of these changes is that it is possible to boot a diskless > Xen + Dom0 running off an iSCSI disk whereas previously it would fail to > find the iBFT and consequently, the iSCSI root disk. Acked-by: Dave Hansen # for x86 The work in this patch seems pretty evenly split between x86 and iSCSI. Any preferences on who picks it up? From xen-devel-bounces@lists.xenproject.org Fri Jun 09 15:20:14 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 09 Jun 2023 15:20:14 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546128.852760 (Exim 4.92) (envelope-from ) id 1q7duH-00074v-E7; Fri, 09 Jun 2023 15:20:05 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546128.852760; Fri, 09 Jun 2023 15:20:05 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7duH-00074L-Az; Fri, 09 Jun 2023 15:20:05 +0000 Received: by outflank-mailman (input) for mailman id 546128; Fri, 09 Jun 2023 15:20:04 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7duG-0006oo-6l; Fri, 09 Jun 2023 15:20:04 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7duF-00078G-UU; Fri, 09 Jun 2023 15:20:03 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7duF-0003Hl-HL; Fri, 09 Jun 2023 15:20:03 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q7duF-0007kn-Gx; Fri, 09 Jun 2023 15:20:03 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=fbls0VcFJFLEehq2ecy5wC/ft7P3JY1e7agm3lLuRSY=; b=Ycm8XgBxvcaQOxAQlSA2RUvQzG HC36cR8mv+eu5jPj9RN69gf1hPZwgneoY2J30fvdBmIOl/4aEaXSStp90GUkrll1dAHDUe3DFiMD2 Y+3AXf8Sf0qrkGZjFO15mCBzyzrVgsKBvp3vPvJGZ+hA38f13hlBeCcofvNzNPxlKjIc=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable-smoke test] 181342: regressions - FAIL X-Osstest-Failures: xen-unstable-smoke:build-arm64-xsm:xen-build:fail:regression xen-unstable-smoke:build-armhf:xen-build:fail:regression xen-unstable-smoke:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking xen-unstable-smoke:test-armhf-armhf-xl:build-check(1):blocked:nonblocking xen-unstable-smoke:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking X-Osstest-Versions-This: xen=3a82e4501c4ec4d53b764c5b69955997b03d1137 X-Osstest-Versions-That: xen=64a647f8d817c6989edc000613b5afae19f03f99 From: osstest service owner Date: Fri, 09 Jun 2023 15:20:03 +0000 flight 181342 xen-unstable-smoke real [real] http://logs.test-lab.xenproject.org/osstest/logs/181342/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-arm64-xsm 6 xen-build fail REGR. vs. 181233 build-armhf 6 xen-build fail REGR. vs. 181233 Tests which did not succeed, but are not blocking: test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 15 migrate-support-check fail never pass version targeted for testing: xen 3a82e4501c4ec4d53b764c5b69955997b03d1137 baseline version: xen 64a647f8d817c6989edc000613b5afae19f03f99 Last test of basis 181233 2023-06-07 02:04:37 Z 2 days Failing since 181246 2023-06-07 11:02:03 Z 2 days 25 attempts Testing same since 181342 2023-06-09 14:01:58 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Andrew Cooper Christian Lindig George Dunlap Henry Wang # CHANGELOG Juergen Gross Julien Grall Luca Fancellu Michal Orzel Roger Pau Monne Roger Pau Monné Stefano Stabellini jobs: build-arm64-xsm fail build-amd64 pass build-armhf fail build-amd64-libvirt pass test-armhf-armhf-xl blocked test-arm64-arm64-xl-xsm blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-libvirt pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 520 lines long.) From xen-devel-bounces@lists.xenproject.org Fri Jun 09 15:23:15 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 09 Jun 2023 15:23:15 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546135.852770 (Exim 4.92) (envelope-from ) id 1q7dxA-0007lq-Rl; Fri, 09 Jun 2023 15:23:04 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546135.852770; Fri, 09 Jun 2023 15:23:04 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7dxA-0007lj-Ox; Fri, 09 Jun 2023 15:23:04 +0000 Received: by outflank-mailman (input) for mailman id 546135; Fri, 09 Jun 2023 15:23:03 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7dx9-0007lW-Sr for xen-devel@lists.xenproject.org; Fri, 09 Jun 2023 15:23:03 +0000 Received: from mail-ua1-f52.google.com (mail-ua1-f52.google.com [209.85.222.52]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 854e3492-06d9-11ee-b232-6b7b168915f2; Fri, 09 Jun 2023 17:23:01 +0200 (CEST) Received: by mail-ua1-f52.google.com with SMTP id a1e0cc1a2514c-78a57844f42so578811241.2 for ; Fri, 09 Jun 2023 08:23:01 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 854e3492-06d9-11ee-b232-6b7b168915f2 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686324180; x=1688916180; h=cc:to:subject:message-id:date:from:reply-to:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=nQqVwNedjmV60oRhPco6EQYeo8VJiEqTl1Z9bsEQOPU=; b=PDoKd2BkuHhjROVQtN04GsVcjd56jgW4W3f21FTIx0QeLxKJlcMF7Cn5quS6/Gb8Pu VfRf84lfQ7Z/OirYoXl3v6ACngrhnUe+ipvlgB7xJy95mqKBz9VZhY7iCYYK+3qzz86c fI+dk99VuXcyHH+tldKadbl3I2W79VF6Oa1RSxGbw1GMqw6MUKd1uV9+3hU1UB+VjtQZ mmA6B+Nx7gILAQA1zbgRwRXA1guqSn0v+XyhWxUWYCNifQoZYAdTfnmaGu9rwOYyPA60 kkM6brfyAheOOqGU7Kpd/KuwQxPcizbmOSwLdfgp7qh8vlraorRrNcfaAMXve0OfElxf mkoQ== X-Gm-Message-State: AC+VfDyvTyuC9sCydePIUvj4a3Z8DikLgnV5WnW9Cy6orspjGGYzc59W oG9R235KKb7XQq4PGbZ7ka1HHkvVnQkhK94c0uw= X-Google-Smtp-Source: ACHHUZ4yDgT/O64a7DQTPB5PKNSyMMwmN45AKeJo37e6UZwH+7lncvHgUnaepJI6DMXcxx55fG3VCzIpyAZBXMlptWk= X-Received: by 2002:a67:e913:0:b0:43d:ca34:d016 with SMTP id c19-20020a67e913000000b0043dca34d016mr701555vso.1.1686324179948; Fri, 09 Jun 2023 08:22:59 -0700 (PDT) MIME-Version: 1.0 References: <20230605102840.1521549-1-ross.lagerwall@citrix.com> In-Reply-To: Reply-To: konrad@darnok.org From: Konrad Rzeszutek Wilk Date: Fri, 9 Jun 2023 11:22:48 -0400 Message-ID: Subject: Re: [PATCH v3] iscsi_ibft: Fix finding the iBFT under Xen Dom 0 To: Juergen Gross Cc: Ross Lagerwall , LKML , xen-devel@lists.xenproject.org, Jan Beulich , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , X86 ML , Boris Ostrovsky , Peter Jones , Konrad Rzeszutek Wilk Content-Type: multipart/alternative; boundary="000000000000b8d91605fdb3f14f" --000000000000b8d91605fdb3f14f Content-Type: text/plain; charset="UTF-8" Feel free to add my Acked-by. Dave, are you OK with the change in where the reserve call is made? Thx On Fri, Jun 9, 2023, 11:08 AM Juergen Gross wrote: > On 05.06.23 12:28, Ross Lagerwall wrote: > > To facilitate diskless iSCSI boot, the firmware can place a table of > > configuration details in memory called the iBFT. The presence of this > > table is not specified, nor is the precise location (and it's not in the > > E820) so the kernel has to search for a magic marker to find it. > > > > When running under Xen, Dom 0 does not have access to the entire host's > > memory, only certain regions which are identity-mapped which means that > > the pseudo-physical address in Dom0 == real host physical address. > > Add the iBFT search bounds as a reserved region which causes it to be > > identity-mapped in xen_set_identity_and_remap_chunk() which allows Dom0 > > access to the specific physical memory to correctly search for the iBFT > > magic marker (and later access the full table). > > > > This necessitates moving the call to reserve_ibft_region() somewhat > > later so that it is called after e820__memory_setup() which is when the > > Xen identity mapping adjustments are applied. The precise location of > > the call is not too important so I've put it alongside dmi_setup() which > > does similar scanning of memory for configuration tables. > > > > Finally in the iBFT find code, instead of using isa_bus_to_virt() which > > doesn't do the right thing under Xen, use early_memremap() like the > > dmi_setup() code does. > > > > The result of these changes is that it is possible to boot a diskless > > Xen + Dom0 running off an iSCSI disk whereas previously it would fail to > > find the iBFT and consequently, the iSCSI root disk. > > > > Signed-off-by: Ross Lagerwall > > Reviewed-by: Juergen Gross > > > Juergen > > --000000000000b8d91605fdb3f14f Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Feel free to add my Acked-by.

=
Dave, are you OK with the change in where the reserve cal= l is made?

Thx

On F= ri, Jun 9, 2023, 11:08 AM Juergen Gross <jgross@suse.com> wrote:
= On 05.06.23 12:28, Ross Lagerwall wrote:
> To facilitate diskless iSCSI boot, the firmware can place a table of > configuration details in memory called the iBFT. The presence of this<= br> > table is not specified, nor is the precise location (and it's not = in the
> E820) so the kernel has to search for a magic marker to find it.
>
> When running under Xen, Dom 0 does not have access to the entire host&= #39;s
> memory, only certain regions which are identity-mapped which means tha= t
> the pseudo-physical address in Dom0 =3D=3D real host physical address.=
> Add the iBFT search bounds as a reserved region which causes it to be<= br> > identity-mapped in xen_set_identity_and_remap_chunk() which allows Dom= 0
> access to the specific physical memory to correctly search for the iBF= T
> magic marker (and later access the full table).
>
> This necessitates moving the call to reserve_ibft_region() somewhat > later so that it is called after e820__memory_setup() which is when th= e
> Xen identity mapping adjustments are applied. The precise location of<= br> > the call is not too important so I've put it alongside dmi_setup()= which
> does similar scanning of memory for configuration tables.
>
> Finally in the iBFT find code, instead of using isa_bus_to_virt() whic= h
> doesn't do the right thing under Xen, use early_memremap() like th= e
> dmi_setup() code does.
>
> The result of these changes is that it is possible to boot a diskless<= br> > Xen + Dom0 running off an iSCSI disk whereas previously it would fail = to
> find the iBFT and consequently, the iSCSI root disk.
>
> Signed-off-by: Ross Lagerwall <ross.lagerwall@citrix.com= >

Reviewed-by: Juergen Gross <jgross@suse.com>


Juergen

--000000000000b8d91605fdb3f14f-- From xen-devel-bounces@lists.xenproject.org Fri Jun 09 15:28:14 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 09 Jun 2023 15:28:14 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546141.852780 (Exim 4.92) (envelope-from ) id 1q7e1v-0008Qo-DN; Fri, 09 Jun 2023 15:27:59 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546141.852780; Fri, 09 Jun 2023 15:27:59 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7e1v-0008Qh-9z; Fri, 09 Jun 2023 15:27:59 +0000 Received: by outflank-mailman (input) for mailman id 546141; Fri, 09 Jun 2023 15:27:58 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7e1u-0008Qb-KZ for xen-devel@lists.xenproject.org; Fri, 09 Jun 2023 15:27:58 +0000 Received: from mail-vs1-f44.google.com (mail-vs1-f44.google.com [209.85.217.44]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 351b3973-06da-11ee-8611-37d641c3527e; Fri, 09 Jun 2023 17:27:56 +0200 (CEST) Received: by mail-vs1-f44.google.com with SMTP id ada2fe7eead31-43c8e0a92f0so1310060137.0 for ; Fri, 09 Jun 2023 08:27:56 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 351b3973-06da-11ee-8611-37d641c3527e X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686324475; x=1688916475; h=cc:to:subject:message-id:date:from:reply-to:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=43th5QMsZDijo9cteC+0sKwCM5Cj2XjJIHl6elq6ONs=; b=inakbX6ZJ1f29JxL7/rD1frXcnJmCNYiqz5CCiBeQ+Hr3FlQdgfb45x6QevYyncU2F wxr2n6Vte4QtTmSt47C+kfqgTogt8es2JNNlg9JIiU4x011G4Zblbj8Z7yxYhHFsn9yg W+8jsL4zr7Dq5jwMPdEZCRRBLc9PqWZWoX0+TY2sjeDU5iwtLzFn8NZlQ9wax0inrO1F L+dKU2yVUVMjLUQ9FDwCdF3ykR3OFdBT+sv1FN0y3OTF1alR5nid/2jeKL8jHXeM95Wv CvcgzmaFHho3m5X1wMe0ysVJPPy3BDOBKIgdNBQQaYO95M7MqXfW02tx+xiPlJ1GXlMl RHxA== X-Gm-Message-State: AC+VfDykX64H7rJJmY0UkXd1d996ivSeT0+MOrL8q5oSZ2TfDSVS3fya DyCrIb+feENMM3BXE2UxKgdSKjniOu6Alltq3UU= X-Google-Smtp-Source: ACHHUZ4g9D8crZxpTy/9o0HunWZ51BMvKaGJ4xdKuc4m/J0crMvKn5jdtfcjP7iClc3XLG9LiZVR16EQo25cX6tN1Pg= X-Received: by 2002:a05:6102:330b:b0:439:6c06:606e with SMTP id v11-20020a056102330b00b004396c06606emr2407797vsc.0.1686324475347; Fri, 09 Jun 2023 08:27:55 -0700 (PDT) MIME-Version: 1.0 References: <20230605102840.1521549-1-ross.lagerwall@citrix.com> <2e28fcdb-f0ff-dca4-3dc4-34b11cc7e469@intel.com> In-Reply-To: <2e28fcdb-f0ff-dca4-3dc4-34b11cc7e469@intel.com> Reply-To: konrad@darnok.org From: Konrad Rzeszutek Wilk Date: Fri, 9 Jun 2023 11:27:43 -0400 Message-ID: Subject: Re: [PATCH v3] iscsi_ibft: Fix finding the iBFT under Xen Dom 0 To: Dave Hansen Cc: Ross Lagerwall , LKML , xen-devel@lists.xenproject.org, Jan Beulich , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , X86 ML , Juergen Gross , Boris Ostrovsky , Peter Jones , Konrad Rzeszutek Wilk Content-Type: multipart/alternative; boundary="000000000000544d3b05fdb40377" --000000000000544d3b05fdb40377 Content-Type: text/plain; charset="UTF-8" Usually I put it in my tree (ibft) but since it is so simple and the user is Xen it would make more sense to do it via the Xen tree (Juergen). Thx On Fri, Jun 9, 2023, 11:16 AM Dave Hansen wrote: > On 6/5/23 03:28, Ross Lagerwall wrote: > > The result of these changes is that it is possible to boot a diskless > > Xen + Dom0 running off an iSCSI disk whereas previously it would fail to > > find the iBFT and consequently, the iSCSI root disk. > > Acked-by: Dave Hansen # for x86 > > The work in this patch seems pretty evenly split between x86 and iSCSI. > Any preferences on who picks it up? > --000000000000544d3b05fdb40377 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Usually I put it in my tree (ibft) but since it is s= o simple and the user is Xen it would make more sense to do it via the Xen = tree (Juergen).

Thx

On Fri, Jun 9, 2023, 11:16 AM D= ave Hansen <dave.hansen@intel.c= om> wrote:
On 6/5/23 03:28, = Ross Lagerwall wrote:
> The result of these changes is that it is possible to boot a diskless<= br> > Xen + Dom0 running off an iSCSI disk whereas previously it would fail = to
> find the iBFT and consequently, the iSCSI root disk.

Acked-by: Dave Hansen <dave.hansen@linux.intel.com> # fo= r x86

The work in this patch seems pretty evenly split between x86 and iSCSI.
Any preferences on who picks it up?
--000000000000544d3b05fdb40377-- From xen-devel-bounces@lists.xenproject.org Fri Jun 09 15:30:46 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 09 Jun 2023 15:30:46 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546147.852790 (Exim 4.92) (envelope-from ) id 1q7e4V-0001QG-QH; Fri, 09 Jun 2023 15:30:39 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546147.852790; Fri, 09 Jun 2023 15:30:39 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7e4V-0001Q9-N6; Fri, 09 Jun 2023 15:30:39 +0000 Received: by outflank-mailman (input) for mailman id 546147; Fri, 09 Jun 2023 15:30:38 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7e4U-0001Px-Ck for xen-devel@lists.xenproject.org; Fri, 09 Jun 2023 15:30:38 +0000 Received: from smtp-out1.suse.de (smtp-out1.suse.de [195.135.220.28]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 94af8300-06da-11ee-8611-37d641c3527e; Fri, 09 Jun 2023 17:30:36 +0200 (CEST) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by smtp-out1.suse.de (Postfix) with ESMTPS id C1BA721A52; Fri, 9 Jun 2023 15:30:35 +0000 (UTC) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id 1B4F213A47; Fri, 9 Jun 2023 15:30:35 +0000 (UTC) Received: from dovecot-director2.suse.de ([192.168.254.65]) by imap2.suse-dmz.suse.de with ESMTPSA id 15IlBZtFg2TCBQAAMHmgww (envelope-from ); Fri, 09 Jun 2023 15:30:35 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 94af8300-06da-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1; t=1686324635; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=d94E8AgYIhh2TcR8GAa4pqXaKEyMXrp9qtcGnxmJ05Q=; b=FYARqL8+eFPf9B9O0l/vajm2HuBacoui0nQU6yR5BMtWOvEOdzC07XDO0HpVhAPLxOkTfl o7GduvkREDwPMh0RYmFlGwmj3BOyFA4bOXtz1IKyDHM522GWwTb2c1uh+g990XJczdCYEn Re+5TumIsxGtK0+6mUbdy/TQTi8C3p0= Message-ID: <6d725c37-9612-ab87-3fea-04ab8b1086ed@suse.com> Date: Fri, 9 Jun 2023 17:30:34 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH v3] iscsi_ibft: Fix finding the iBFT under Xen Dom 0 Content-Language: en-US To: konrad@darnok.org, Dave Hansen Cc: Ross Lagerwall , LKML , xen-devel@lists.xenproject.org, Jan Beulich , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , X86 ML , Boris Ostrovsky , Peter Jones , Konrad Rzeszutek Wilk References: <20230605102840.1521549-1-ross.lagerwall@citrix.com> <2e28fcdb-f0ff-dca4-3dc4-34b11cc7e469@intel.com> From: Juergen Gross In-Reply-To: Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="------------YdUb71KwJ80UEkQ6kOl4hleq" This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --------------YdUb71KwJ80UEkQ6kOl4hleq Content-Type: multipart/mixed; boundary="------------Da5MB78BOV6dm0E1QoP0oX5u"; protected-headers="v1" From: Juergen Gross To: konrad@darnok.org, Dave Hansen Cc: Ross Lagerwall , LKML , xen-devel@lists.xenproject.org, Jan Beulich , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , X86 ML , Boris Ostrovsky , Peter Jones , Konrad Rzeszutek Wilk Message-ID: <6d725c37-9612-ab87-3fea-04ab8b1086ed@suse.com> Subject: Re: [PATCH v3] iscsi_ibft: Fix finding the iBFT under Xen Dom 0 References: <20230605102840.1521549-1-ross.lagerwall@citrix.com> <2e28fcdb-f0ff-dca4-3dc4-34b11cc7e469@intel.com> In-Reply-To: --------------Da5MB78BOV6dm0E1QoP0oX5u Content-Type: multipart/mixed; boundary="------------AalVfgcSf6WC5ftLUErmhx3J" --------------AalVfgcSf6WC5ftLUErmhx3J Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: base64 T24gMDkuMDYuMjMgMTc6MjcsIEtvbnJhZCBSemVzenV0ZWsgV2lsayB3cm90ZToNCj4gVXN1 YWxseSBJIHB1dCBpdCBpbiBteSB0cmVlIChpYmZ0KSBidXQgc2luY2UgaXQgaXMgc28gc2lt cGxlIGFuZCB0aGUgdXNlciBpcyBYZW4gDQo+IGl0IHdvdWxkIG1ha2UgbW9yZSBzZW5zZSB0 byBkbyBpdCB2aWEgdGhlIFhlbiB0cmVlIChKdWVyZ2VuKS4NCg0KV29ya3MgZm9yIG1lLg0K DQoNCkp1ZXJnZW4NCg0KPiANCj4gVGh4DQo+IA0KPiBPbiBGcmksIEp1biA5LCAyMDIzLCAx MToxNiBBTSBEYXZlIEhhbnNlbiA8ZGF2ZS5oYW5zZW5AaW50ZWwuY29tIA0KPiA8bWFpbHRv OmRhdmUuaGFuc2VuQGludGVsLmNvbT4+IHdyb3RlOg0KPiANCj4gICAgIE9uIDYvNS8yMyAw MzoyOCwgUm9zcyBMYWdlcndhbGwgd3JvdGU6DQo+ICAgICAgPiBUaGUgcmVzdWx0IG9mIHRo ZXNlIGNoYW5nZXMgaXMgdGhhdCBpdCBpcyBwb3NzaWJsZSB0byBib290IGEgZGlza2xlc3MN Cj4gICAgICA+IFhlbiArIERvbTAgcnVubmluZyBvZmYgYW4gaVNDU0kgZGlzayB3aGVyZWFz IHByZXZpb3VzbHkgaXQgd291bGQgZmFpbCB0bw0KPiAgICAgID4gZmluZCB0aGUgaUJGVCBh bmQgY29uc2VxdWVudGx5LCB0aGUgaVNDU0kgcm9vdCBkaXNrLg0KPiANCj4gICAgIEFja2Vk LWJ5OiBEYXZlIEhhbnNlbiA8ZGF2ZS5oYW5zZW5AbGludXguaW50ZWwuY29tDQo+ICAgICA8 bWFpbHRvOmRhdmUuaGFuc2VuQGxpbnV4LmludGVsLmNvbT4+ICMgZm9yIHg4Ng0KPiANCj4g ICAgIFRoZSB3b3JrIGluIHRoaXMgcGF0Y2ggc2VlbXMgcHJldHR5IGV2ZW5seSBzcGxpdCBi ZXR3ZWVuIHg4NiBhbmQgaVNDU0kuDQo+ICAgICBBbnkgcHJlZmVyZW5jZXMgb24gd2hvIHBp Y2tzIGl0IHVwPw0KPiANCg0K --------------AalVfgcSf6WC5ftLUErmhx3J Content-Type: application/pgp-keys; name="OpenPGP_0xB0DE9DD628BF132F.asc" Content-Disposition: attachment; filename="OpenPGP_0xB0DE9DD628BF132F.asc" Content-Description: OpenPGP public key Content-Transfer-Encoding: quoted-printable -----BEGIN PGP PUBLIC KEY BLOCK----- xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjri oyspZKOBycWxw3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2 kaV2KL9650I1SJvedYm8Of8Zd621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i 1TXkH09XSSI8mEQ/ouNcMvIJNwQpd369y9bfIhWUiVXEK7MlRgUG6MvIj6Y3Am/B BLUVbDa4+gmzDC9ezlZkTZG2t14zWPvxXP3FAp2pkW0xqG7/377qptDmrk42GlSK N4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEBAAHNHEp1ZXJnZW4gR3Jvc3Mg PGpnQHBmdXBmLm5ldD7CwHkEEwECACMFAlOMcBYCGwMHCwkIBwMCAQYVCAIJCgsE FgIDAQIeAQIXgAAKCRCw3p3WKL8TL0KdB/93FcIZ3GCNwFU0u3EjNbNjmXBKDY4F UGNQH2lvWAUy+dnyThpwdtF/jQ6j9RwE8VP0+NXcYpGJDWlNb9/JmYqLiX2Q3Tye vpB0CA3dbBQp0OW0fgCetToGIQrg0MbD1C/sEOv8Mr4NAfbauXjZlvTj30H2jO0u +6WGM6nHwbh2l5O8ZiHkH32iaSTfN7Eu5RnNVUJbvoPHZ8SlM4KWm8rG+lIkGurq qu5gu8q8ZMKdsdGC4bBxdQKDKHEFExLJK/nRPFmAuGlId1E3fe10v5QL+qHI3EIP tyfE7i9Hz6rVwi7lWKgh7pe0ZvatAudZ+JNIlBKptb64FaiIOAWDCx1SzR9KdWVy Z2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+wsB5BBMBAgAjBQJTjHCvAhsDBwsJ CAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey/HmQf/RtI7kv5A2PS4 RF7HoZhPVPogNVbC4YA6lW7DrWf0teC0RR3MzXfy6pJ+7KLgkqMlrAbN/8Dvjoz7 8X+5vhH/rDLa9BuZQlhFmvcGtCF8eR0T1v0nC/nuAFVGy+67q2DH8As3KPu0344T BDpAvr2uYM4tSqxK4DURx5INz4ZZ0WNFHcqsfvlGJALDeE0LhITTd9jLzdDad1pQ SToCnLl6SBJZjDOX9QQcyUigZFtCXFst4dlsvddrxyqT1f17+2cFSdu7+ynLmXBK 7abQ3rwJY8SbRO2iRulogc5vr/RLMMlscDAiDkaFQWLoqHHOdfO9rURssHNN8WkM nQfvUewRz80hSnVlcmdlbiBHcm9zcyA8amdyb3NzQG5vdmVsbC5jb20+wsB5BBMB AgAjBQJTjHDXAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/ Ey8PUQf/ehmgCI9jB9hlgexLvgOtf7PJnFOXgMLdBQgBlVPO3/D9R8LtF9DBAFPN hlrsfIG/SqICoRCqUcJ96Pn3P7UUinFG/I0ECGF4EvTE1jnDkfJZr6jrbjgyoZHi w/4BNwSTL9rWASyLgqlA8u1mf+c2yUwcGhgkRAd1gOwungxcwzwqgljf0N51N5Jf VRHRtyfwq/ge+YEkDGcTU6Y0sPOuj4Dyfm8fJzdfHNQsWq3PnczLVELStJNdapwP OoE+lotufe3AM2vAEYJ9rTz3Cki4JFUsgLkHFqGZarrPGi1eyQcXeluldO3m91NK /1xMI3/+8jbO0tsn1tqSEUGIJi7ox80eSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1 c2UuZGU+wsB5BBMBAgAjBQJTjHDrAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgEC F4AACgkQsN6d1ii/Ey+LhQf9GL45eU5vOowA2u5N3g3OZUEBmDHVVbqMtzwlmNC4 k9Kx39r5s2vcFl4tXqW7g9/ViXYuiDXb0RfUpZiIUW89siKrkzmQ5dM7wRqzgJpJ wK8Bn2MIxAKArekWpiCKvBOB/Cc+3EXE78XdlxLyOi/NrmSGRIov0karw2RzMNOu 5D+jLRZQd1Sv27AR+IP3I8U4aqnhLpwhK7MEy9oCILlgZ1QZe49kpcumcZKORmzB TNh30FVKK1EvmV2xAKDoaEOgQB4iFQLhJCdP1I5aSgM5IVFdn7v5YgEYuJYx37Io N1EblHI//x/e2AaIHpzK5h88NEawQsaNRpNSrcfbFmAg987ATQRTjHAWAQgAyzH6 AOODMBjgfWE9VeCgsrwH3exNAU32gLq2xvjpWnHIs98ndPUDpnoxWQugJ6MpMncr 0xSwFmHEgnSEjK/PAjppgmyc57BwKII3sV4on+gDVFJR6Y8ZRwgnBC5mVM6JjQ5x Dk8WRXljExRfUX9pNhdE5eBOZJrDRoLUmmjDtKzWaDhIg/+1Hzz93X4fCQkNVbVF LELU9bMaLPBG/x5q4iYZ2k2ex6d47YE1ZFdMm6YBYMOljGkZKwYde5ldM9mo45mm we0icXKLkpEdIXKTZeKDO+Hdv1aqFuAcccTg9RXDQjmwhC3yEmrmcfl0+rPghO0I v3OOImwTEe4co3c1mwARAQABwsBfBBgBAgAJBQJTjHAWAhsMAAoJELDendYovxMv Q/gH/1ha96vm4P/L+bQpJwrZ/dneZcmEwTbe8YFsw2V/Buv6Z4Mysln3nQK5ZadD 534CF7TDVft7fC4tU4PONxF5D+/tvgkPfDAfF77zy2AH1vJzQ1fOU8lYFpZXTXIH b+559UqvIB8AdgR3SAJGHHt4RKA0F7f5ipYBBrC6cyXJyyoprT10EMvU8VGiwXvT yJz3fjoYsdFzpWPlJEBRMedCot60g5dmbdrZ5DWClAr0yau47zpWj3enf1tLWaqc suylWsviuGjKGw7KHQd3bxALOknAp4dN3QwBYCKuZ7AddY9yjynVaD5X7nF9nO5B jR/i1DG86lem3iBDXzXsZDn8R38=3D =3D2wuH -----END PGP PUBLIC KEY BLOCK----- --------------AalVfgcSf6WC5ftLUErmhx3J-- --------------Da5MB78BOV6dm0E1QoP0oX5u-- --------------YdUb71KwJ80UEkQ6kOl4hleq Content-Type: application/pgp-signature; name="OpenPGP_signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="OpenPGP_signature" -----BEGIN PGP SIGNATURE----- wsB5BAABCAAjFiEEhRJncuj2BJSl0Jf3sN6d1ii/Ey8FAmSDRZoFAwAAAAAACgkQsN6d1ii/Ey8g KAf9GS4tYCjeixFx5AZsFx6igVAUnOEQ0lKrYmt8EqYspuYkKQeZC4N2P/3v6rZYsDfgIDSr8+m6 Xbm/dgVUXJszvjuONQylQD+xJ/wJe+OJntTZAcDo7Q97vnSjGHY3igFNcTq8FX7XCR++aQUZovQR EhgSCXDJzT8QoMKMW/yO8fXIWqZA4xWCfHsV/nb+uNlF7j785jVjnKGja2D1Y5I7sEXokwrqSSRN nLkyY3nFZZyeUkLfMWTzprf1CUT66AaQ0xma8UdkOdPx22jVoGLm6JcfNTKAq/5GviGE7yan/H9I 9P09rAkpaiIgMJ+qCRkeX/7gP3tVAaPlZAgShaH/ag== =IhaL -----END PGP SIGNATURE----- --------------YdUb71KwJ80UEkQ6kOl4hleq-- From xen-devel-bounces@lists.xenproject.org Fri Jun 09 15:32:40 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 09 Jun 2023 15:32:40 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546156.852806 (Exim 4.92) (envelope-from ) id 1q7e6L-00024T-D0; Fri, 09 Jun 2023 15:32:33 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546156.852806; Fri, 09 Jun 2023 15:32:33 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7e6L-00024M-9y; Fri, 09 Jun 2023 15:32:33 +0000 Received: by outflank-mailman (input) for mailman id 546156; Fri, 09 Jun 2023 15:32:31 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7e6J-00024C-3E for xen-devel@lists.xenproject.org; Fri, 09 Jun 2023 15:32:31 +0000 Received: from mga01.intel.com (mga01.intel.com [192.55.52.88]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id d6843a29-06da-11ee-b232-6b7b168915f2; Fri, 09 Jun 2023 17:32:28 +0200 (CEST) Received: from orsmga005.jf.intel.com ([10.7.209.41]) by fmsmga101.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 09 Jun 2023 08:32:24 -0700 Received: from mdeisher-mobl3.amr.corp.intel.com (HELO [10.212.149.144]) ([10.212.149.144]) by orsmga005-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 09 Jun 2023 08:32:23 -0700 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: d6843a29-06da-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1686324748; x=1717860748; h=message-id:date:mime-version:subject:to:cc:references: from:in-reply-to:content-transfer-encoding; bh=v51RHSTw8xEjQxppc1XRi8stX/tlHpxTk03qUolx73Y=; b=Mq9O4tqkAzCmTj7rhN5nQ9WG5kP0gxT8mOd1UQLQX3pZSfMYJnhZIg99 TwN4oUgnIVxLajlby0kIDCSMYwsmAHMFS6PyhWxVmyLVZL2cs6+AEZ0Jj pHM0yAh0vGMCrJqn+f8KjEsYbp8+GvPZthtAcYX38plEEELETUMDwjdY2 rS/AHiEpM08jgFb40TIbx+op3R2lNvF3Ngd7gjKvQgVXB59D7fdruzOB5 M3rMXuTtm4OYrK9IWVFmfYxOk5uCy+aC2M1CBaS+wsXJSKUCFjMQ6VDwE wHB3pl76fg8+pOo1aTPu89DyQu8CImFNDMU0wzbIDx3wo2110TZQiRrOw w==; X-IronPort-AV: E=McAfee;i="6600,9927,10736"; a="385988579" X-IronPort-AV: E=Sophos;i="6.00,229,1681196400"; d="scan'208";a="385988579" X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10736"; a="884633183" X-IronPort-AV: E=Sophos;i="6.00,229,1681196400"; d="scan'208";a="884633183" Message-ID: <74ec3164-1d1d-7546-6008-9d028354e50a@intel.com> Date: Fri, 9 Jun 2023 08:32:23 -0700 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH v3] iscsi_ibft: Fix finding the iBFT under Xen Dom 0 Content-Language: en-US To: konrad@darnok.org, Juergen Gross Cc: Ross Lagerwall , LKML , xen-devel@lists.xenproject.org, Jan Beulich , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , X86 ML , Boris Ostrovsky , Peter Jones , Konrad Rzeszutek Wilk References: <20230605102840.1521549-1-ross.lagerwall@citrix.com> From: Dave Hansen In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit On 6/9/23 08:22, Konrad Rzeszutek Wilk wrote: > Dave, are you OK with the change in where the reserve call is made? The move makes logical sense. I'm not 100% confident it won't regress anything, but the blast radius should be limited to iSCSI. But, yeah, I'm OK with it. From xen-devel-bounces@lists.xenproject.org Fri Jun 09 15:34:14 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 09 Jun 2023 15:34:14 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546161.852816 (Exim 4.92) (envelope-from ) id 1q7e7o-0002do-OE; Fri, 09 Jun 2023 15:34:04 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546161.852816; Fri, 09 Jun 2023 15:34:04 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7e7o-0002dh-L0; Fri, 09 Jun 2023 15:34:04 +0000 Received: by outflank-mailman (input) for mailman id 546161; Fri, 09 Jun 2023 15:34:04 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7e7o-0002db-0i for xen-devel@lists.xenproject.org; Fri, 09 Jun 2023 15:34:04 +0000 Received: from esa3.hc3370-68.iphmx.com (esa3.hc3370-68.iphmx.com [216.71.145.155]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 0e26d241-06db-11ee-b232-6b7b168915f2; Fri, 09 Jun 2023 17:34:02 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 0e26d241-06db-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686324842; h=from:to:cc:subject:date:message-id:mime-version: content-transfer-encoding; bh=9g2HVasZifNxLi5ro/3MzuJQsziytjBtL1Bo+gVBQE8=; b=EAVEbRs5m5yqupLiHRVvRRsRvNOQPDqxkvwOHvNV8h1WNMCGYaMWey/Z fYLqMu1UOl1G1pl3P3Snzh48RYl08ZO8fDF3mYxq5sABcRwT6RASInlB0 zgRR5S/MEtT0zL33mDAJuvWUhHNduC4uiQ0WPtdDE8HEaB17/574+X2VZ I=; Authentication-Results: esa3.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none X-SBRS: 4.0 X-MesageID: 112245805 X-Ironport-Server: esa3.hc3370-68.iphmx.com X-Remote-IP: 162.221.156.123 X-Policy: $RELAYED IronPort-Data: A9a23:LT0OxqynkPCY4Zd/qqd6t+c3xirEfRIJ4+MujC+fZmUNrF6WrkVTy 2JOW2CFOa7bNzD9Looia4jlpk9XscLTzNNlTgZqqCAxQypGp/SeCIXCJC8cHc8wwu7rFxs7s ppEOrEsCOhuExcwcz/0auCJQUFUjP3OHfykTrafYEidfCc8IA85kxVvhuUltYBhhNm9Emult Mj75sbSIzdJ4RYtWo4vw/zF8EsHUMja4mtC5QRgPaET5TcyqlFOZH4hDfDpR5fHatE88t6SH 47r0Ly/92XFyBYhYvvNfmHTKxBirhb6ZGBiu1IOM0SQqkEqSh8ai87XAME0e0ZP4whlqvgqo Dl7WT5cfi9yVkHEsLx1vxC1iEiSN4UekFPMCSDXXcB+UyQq2pYjqhljJBheAGEWxgp4KTp1+ cUUDigEVDaG2eOE+amjQdgyr9t2eaEHPKtH0p1h5TTQDPJgSpHfWaTao9Rf2V/chOgXQ6yYP ZBAL2MyMlKZOUYn1lQ/UfrSmM+BgHXlfiIeg1WSvactuEDYzRBr0airO93QEjCPbZwMxBzE+ zKeogwVBDkbJNe002va4068ocLBljm4aKkKF6WRo6sCbFq7mTVIVUx+uUGAiem0jAuyVsxSL 2QQ+zEytu4i+UqzVN7/Uhak5nmesXY0X8dbGqs04QeGx67Q/i6QHG1CRTlEAOHKr+dvG2Zsj AXQ2Yq0W3o26ub9pW+hGqm89gi+ACQzNWY4QypaTDk8+MHokd8akUeaJjp8K5KdgtrwEDD25 jmFqikimrke5fI2O7WHEUPv2Gz1+MWQJuIhzkCOBz/+sFslDGKwT9bwgWU3+8qsO2pworOpm HEf0/aT4+kVZX1mvHzcGb5ddF1FChvsDdE9vbKMN8N7n9hIx5JEVd443d2GDB01WvvogBewC KMphStf5YVIIFyhZrJtboS6BqwClPawS465B6qOM4UVMvCdkTNrGwk0PCatM53FyhBwwcnTx 7/GGSpTMZrqIfs+l2fnLwvs+bQq2jo/1QvuqWPTlnyaPU6lTCfNE98taQLeBt3VGYvY+G05B f4DbZrVo/ieOcWiChTqHXk7dAhVdCNjW8un86S6tIere2JbJY3oMNeJqZtJRmCvt/49ejvgl p1lZnJl9Q== IronPort-HdrOrdr: A9a23:MAw2Wayy1tZEq+Zi1cfwKrPw6L1zdoMgy1knxilNoHxuH/Bw9v re+cjzsCWftN9/Yh4dcLy7VpVoIkmsl6Kdg7NwAV7KZmCP1FdARLsI0WKI+UyCJ8SRzI9gPa cLSdkFNDXzZ2IK8PoTNmODYqodKNrsytHWuQ/HpU0dKT2D88tbnn9E4gDwKDwQeCB2QaAXOb C7/cR9qz+paR0sH7+G7ilsZZmkmzXT/qiWGCI7Ow== X-Talos-CUID: 9a23:K+Lps2Oc/bhuHu5DAxJrzUIyAskfVHiDzUXpOFezODhAV+jA X-Talos-MUID: 9a23:ayPVuQklK3xoqu2pBHbrdnpjJMxD+fXxGXwdtrgIsNPHBQdoOC+02WE= X-IronPort-AV: E=Sophos;i="6.00,229,1681185600"; d="scan'208";a="112245805" From: Andrew Cooper To: Xen-devel CC: Andrew Cooper , Christian Lindig , Christian Lindig , =?UTF-8?q?Edwin=20T=C3=B6r=C3=B6k?= , Rob Hoes , Luca Fancellu Subject: [PATCH v2] tools/ocaml/xc: Fix xc_physinfo() bindings Date: Fri, 9 Jun 2023 16:33:55 +0100 Message-ID: <20230609153355.2637469-1-andrew.cooper3@citrix.com> X-Mailer: git-send-email 2.30.2 MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit The original change doesn't compile on ARM: xenctrl_stubs.c: In function 'stub_xc_physinfo': xenctrl_stubs.c:821:16: error: unused variable 'arch_cap_flags_tag' [-Werror=unused-variable] 821 | int r, arch_cap_flags_tag; | ^~~~~~~~~~~~~~~~~~ cc1: all warnings being treated as errors but it was buggy too. First, it tried storing an int in a pointer slot, causing heap corruption. Next, it is not legitimate to exclude arm32 in the toolstack as it explicitly can operate an arm64 toolstack and build arm64 domains. That in turn means that you can't stash a C uint32_t in an OCaml int. Rewrite the arch_capabilities handling from scratch. Break it out into a separate function, and make the construction of arch_physinfo_cap_flags common to prevent other indirection bugs. Reintroduce arm_physinfo_caps with the fields broken out. Fixes: 56a7aaa16bfe ("tools: add physinfo arch_capabilities handling for Arm") Signed-off-by: Andrew Cooper Acked-by: Christian Lindig --- CC: Christian Lindig CC: Edwin Török CC: Rob Hoes CC: Luca Fancellu v2: * CAMLreturn(). Tested on x86 locally. Tested on arm64 with: https://gitlab.com/xen-project/people/andyhhp/xen/-/jobs/4447272476 and a tweaked form of my local ocaml smoke test for these kinds of things: # osmoke Xen version: 4.18-unstable Physinfo: threads_per_core 1 SVE len: 0 Starting GC.compact() Done I didn't get this working for arm32, because that's all Yocto, but the arm64 test is good enough IMO. --- tools/ocaml/libs/xc/xenctrl.ml | 7 +++- tools/ocaml/libs/xc/xenctrl.mli | 7 +++- tools/ocaml/libs/xc/xenctrl_stubs.c | 52 ++++++++++++++++++++--------- 3 files changed, 48 insertions(+), 18 deletions(-) diff --git a/tools/ocaml/libs/xc/xenctrl.ml b/tools/ocaml/libs/xc/xenctrl.ml index bf23ca50bb15..d6c6eb73db44 100644 --- a/tools/ocaml/libs/xc/xenctrl.ml +++ b/tools/ocaml/libs/xc/xenctrl.ml @@ -128,10 +128,15 @@ type physinfo_cap_flag = | CAP_Gnttab_v1 | CAP_Gnttab_v2 +type arm_physinfo_caps = + { + sve_vl: int; + } + type x86_physinfo_cap_flag type arch_physinfo_cap_flags = - | ARM of int + | ARM of arm_physinfo_caps | X86 of x86_physinfo_cap_flag list type physinfo = diff --git a/tools/ocaml/libs/xc/xenctrl.mli b/tools/ocaml/libs/xc/xenctrl.mli index ed1e28ea30a0..3bfc16edba96 100644 --- a/tools/ocaml/libs/xc/xenctrl.mli +++ b/tools/ocaml/libs/xc/xenctrl.mli @@ -113,10 +113,15 @@ type physinfo_cap_flag = | CAP_Gnttab_v1 | CAP_Gnttab_v2 +type arm_physinfo_caps = + { + sve_vl: int; + } + type x86_physinfo_cap_flag type arch_physinfo_cap_flags = - | ARM of int + | ARM of arm_physinfo_caps | X86 of x86_physinfo_cap_flag list type physinfo = { diff --git a/tools/ocaml/libs/xc/xenctrl_stubs.c b/tools/ocaml/libs/xc/xenctrl_stubs.c index a03da31f6f2c..e4d9070f2d00 100644 --- a/tools/ocaml/libs/xc/xenctrl_stubs.c +++ b/tools/ocaml/libs/xc/xenctrl_stubs.c @@ -812,13 +812,46 @@ CAMLprim value stub_xc_send_debug_keys(value xch_val, value keys) CAMLreturn(Val_unit); } +CAMLprim value physinfo_arch_caps(const xc_physinfo_t *info) +{ + CAMLparam0(); + CAMLlocal2(arch_cap_flags, arch_obj); + int tag = -1; + +#if defined(__arm__) || defined(__aarch64__) + + tag = 0; /* tag ARM */ + + arch_obj = caml_alloc_tuple(1); + + Store_field(arch_obj, 0, + Val_int(MASK_EXTR(info->arch_capabilities, + XEN_SYSCTL_PHYSCAP_ARM_SVE_MASK) * 128)); + +#elif defined(__i386__) || defined(__x86_64__) + + tag = 1; /* tag x86 */ + + arch_obj = Tag_cons; + +#endif + + if ( tag < 0 ) + caml_failwith("Unhandled architecture"); + + arch_cap_flags = caml_alloc_small(1, tag); + Store_field(arch_cap_flags, 0, arch_obj); + + CAMLreturn(arch_cap_flags); +} + CAMLprim value stub_xc_physinfo(value xch_val) { CAMLparam1(xch_val); - CAMLlocal4(physinfo, cap_list, arch_cap_flags, arch_cap_list); + CAMLlocal2(physinfo, cap_list); xc_interface *xch = xch_of_val(xch_val); xc_physinfo_t c_physinfo; - int r, arch_cap_flags_tag; + int r; caml_enter_blocking_section(); r = xc_physinfo(xch, &c_physinfo); @@ -846,20 +879,7 @@ CAMLprim value stub_xc_physinfo(value xch_val) Store_field(physinfo, 7, caml_copy_nativeint(c_physinfo.scrub_pages)); Store_field(physinfo, 8, cap_list); Store_field(physinfo, 9, Val_int(c_physinfo.max_cpu_id + 1)); - -#if defined(__i386__) || defined(__x86_64__) - arch_cap_list = Tag_cons; - - arch_cap_flags_tag = 1; /* tag x86 */ - - arch_cap_flags = caml_alloc_small(1, arch_cap_flags_tag); - Store_field(arch_cap_flags, 0, arch_cap_list); - Store_field(physinfo, 10, arch_cap_flags); -#elif defined(__aarch64__) - Store_field(physinfo, 10, Val_int(c_physinfo.arch_capabilities)); -#else - caml_failwith("Unhandled architecture"); -#endif + Store_field(physinfo, 10, physinfo_arch_caps(&c_physinfo)); CAMLreturn(physinfo); } -- 2.30.2 From xen-devel-bounces@lists.xenproject.org Fri Jun 09 15:34:48 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 09 Jun 2023 15:34:48 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546166.852825 (Exim 4.92) (envelope-from ) id 1q7e8W-00039W-1f; Fri, 09 Jun 2023 15:34:48 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546166.852825; Fri, 09 Jun 2023 15:34:48 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7e8V-00039P-VI; Fri, 09 Jun 2023 15:34:47 +0000 Received: by outflank-mailman (input) for mailman id 546166; Fri, 09 Jun 2023 15:34:47 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7e8V-00035X-7j for xen-devel@lists.xenproject.org; Fri, 09 Jun 2023 15:34:47 +0000 Received: from alpha.anastas.io (alpha.anastas.io [104.248.188.109]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 2863c468-06db-11ee-8611-37d641c3527e; Fri, 09 Jun 2023 17:34:45 +0200 (CEST) Received: from authenticated-user (alpha.anastas.io [104.248.188.109]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by alpha.anastas.io (Postfix) with ESMTPSA id 4BA093F08F; Fri, 9 Jun 2023 08:34:42 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 2863c468-06db-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=anastas.io; s=mail; t=1686324883; bh=oyGAJiSll86ehtygLyDnbLJfDxeBK+sytUj9BYl6Jdw=; h=Date:To:Cc:Subject:From:References:In-Reply-To:From; b=PHt+o53aAWiJkHTWsantC+yghG+Vt79PUMfhqkwd9+jIxl7SCHsPv7P1oJRbFItpZ H6zglebXVRlygVXiKB4ayV1njyt9rHTKHESI4kYX6wiY4/r4TNo6YMQXcTtwSMLEbt JUWVLdxRNdizrXvSfoPPwLyda0AF6y4PSLeDTqjvZc8JXgY/rltEcy+eSMlBq17/B/ N9+1/2kc/+hJKwbj8YGKTOkk3dX/cROD1AhlBe7zDAVCy33rbZqveuU+gGE3YBp/fh zgt2FAm3qEUmJL8Wk3AoTl7QrE6I+Jb9RLbfFSF9FgDLX0CQm2DlXMnyRhhDlg9/eh pNnpUgXqHIDwA== Mime-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=UTF-8 Date: Fri, 09 Jun 2023 10:34:41 -0500 Message-Id: To: "Jan Beulich" Cc: , "Andrew Cooper" , "George Dunlap" , "Julien Grall" , "Stefano Stabellini" , "Wei Liu" , "Shawn Anastasio" , Subject: Re: [PATCH 1/3] xen: Add files needed for minimal Power build From: "Shawn Anastasio" References: <9676af82-7af2-24d4-838d-6f5a90c1d604@suse.com> In-Reply-To: <9676af82-7af2-24d4-838d-6f5a90c1d604@suse.com> On Fri Jun 9, 2023 at 4:15 AM CDT, Jan Beulich wrote: > > --- /dev/null > > +++ b/config/ppc64.mk > > @@ -0,0 +1,5 @@ > > +CONFIG_PPC64 :=3D y > > +CONFIG_PPC64_64 :=3D y > > +CONFIG_PPC64_$(XEN_OS) :=3D y > > The first of the 64-s here are a little odd; looking at RISC-V's > counterpart, wouldn't this want to be > > CONFIG_PPC :=3D y > CONFIG_PPC_64 :=3D y > CONFIG_PPC_$(XEN_OS) :=3D y> Good point, this was definitely an oversight on my part. I'll clean this up in v2. > > --- /dev/null > > +++ b/xen/arch/ppc/Kconfig > > @@ -0,0 +1,42 @@ > > +config PPC > > + def_bool y > > Is this necessary? Iirc PPC is frequently used as a name for 32-bit PPC > (but then also elsewhere as covering both 32- and 64-bit), so I'm not > sure we want this without having a need for it. This was mostly modeled after riscv/Kconfig. The idea was that this option guards PPC support in general (both 32- and 64-bit) and the subsequent option specifically opts in to 64-bit. Given that this effort is only targeting 64-bit mode, though, the argument could definitely be made that having the two options is redundant, but I believe that is also the case for the risc-v port. > > +config PPC64 > > + def_bool y > > + select 64BIT > > + > > +config ARCH_DEFCONFIG > > + string > > + default "arch/ppc/configs/openpower_defconfig" > > + > > +menu "Architecture Features" > > + > > +source "arch/Kconfig" > > + > > +endmenu > > + > > +menu "ISA Selection" > > + > > +choice > > + prompt "Base ISA" > > + default POWER_ISA_2_07B if PPC64 > > + help > > + This selects the base ISA version that Xen will target. > > + > > +config POWER_ISA_2_07B > > + bool "POWER ISA 2.07B+" > > + help > > + Target version 2.07B+ of the POWER ISA (POWER8+) > > + > > +config POWER_ISA_3_00 > > + bool "POWER ISA 3.00+" > > + help > > + Target version 3.00+ of the POWER ISA (POWER9+) > > What are the + in here meant to indicate? Since this is about a baseline > ISA, I find such a use (presumably standing for "or newer") ambiguous. Fair point. The + was intended as an "or newer" but I agree that it's ambiguous (for instance, it might be interpreted as a part of the ISA's name). I'll remove it in v2, along with a renaming of "POWER ISA" to "Power ISA" which I originally overlooked. > Jan Thanks, Shawn From xen-devel-bounces@lists.xenproject.org Fri Jun 09 15:36:46 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 09 Jun 2023 15:36:46 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546171.852836 (Exim 4.92) (envelope-from ) id 1q7eAJ-0003md-Co; Fri, 09 Jun 2023 15:36:39 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546171.852836; Fri, 09 Jun 2023 15:36:39 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7eAJ-0003mW-9f; Fri, 09 Jun 2023 15:36:39 +0000 Received: by outflank-mailman (input) for mailman id 546171; Fri, 09 Jun 2023 15:36:38 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7eAI-0003mM-93 for xen-devel@lists.xenproject.org; Fri, 09 Jun 2023 15:36:38 +0000 Received: from alpha.anastas.io (alpha.anastas.io [104.248.188.109]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 6a9dde04-06db-11ee-8611-37d641c3527e; Fri, 09 Jun 2023 17:36:36 +0200 (CEST) Received: from authenticated-user (alpha.anastas.io [104.248.188.109]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by alpha.anastas.io (Postfix) with ESMTPSA id AB7E83F08F; Fri, 9 Jun 2023 08:36:33 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 6a9dde04-06db-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=anastas.io; s=mail; t=1686324994; bh=lSXMAsYDeVWFPSY6A7qzbx7MghefxAp3atYzJrE8tNw=; h=Date:Cc:Subject:From:To:References:In-Reply-To:From; b=jlZ3lX+/iZkn7HXtGI2AT+Hyov382pCcygncv57dB65Y1FF28sH3HjSRrLygsTfdA m47DOEa1kFhWrh4XLCmfsarAevmptmJPPQy/Bic4yxJmNq3Q2pYypo2a5bUXefXLB7 lAxyDr0pkFFT3AsoIgwzFTGF1cKqu/D3MzaFIzmTrxRRzaumpgTHWNim3iM9pTrSfu fqEbTtqDrExZoIm8rxeQpQNtwosSP5K8YKq9Am/C3yJO8ttuUFhkjXIfmmyB2eqWHJ Ho4WAJhO+Dyy8e4CapXq5FH2fS52gS0rQeHkHuk+vjppUNhoNMCytwaXYEaDT2EGDJ 1grzfhuKs8CXA== Mime-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=UTF-8 Date: Fri, 09 Jun 2023 10:36:32 -0500 Message-Id: Cc: , "Andrew Cooper" , "George Dunlap" , "Julien Grall" , "Stefano Stabellini" , "Wei Liu" , "Shawn Anastasio" , Subject: Re: [PATCH 2/3] xen/ppc: Implement early serial printk on PaPR/pseries From: "Shawn Anastasio" To: "Jan Beulich" References: <0c0a19de-dde3-8b98-4354-6d3d2019179b@suse.com> In-Reply-To: <0c0a19de-dde3-8b98-4354-6d3d2019179b@suse.com> On Fri Jun 9, 2023 at 4:22 AM CDT, Jan Beulich wrote: > > xen/arch/ppc/Kconfig.debug | 5 + > > xen/arch/ppc/Makefile | 3 +- > > xen/arch/ppc/boot_of.c | 122 +++++++++++++++++++++++ > > xen/arch/ppc/configs/openpower_defconfig | 1 + > > xen/arch/ppc/early_printk.c | 36 +++++++ > > xen/arch/ppc/include/asm/boot.h | 31 ++++++ > > xen/arch/ppc/include/asm/bug.h | 6 ++ > > xen/arch/ppc/include/asm/byteorder.h | 74 ++++++++++++++ > > xen/arch/ppc/include/asm/cache.h | 6 ++ > > xen/arch/ppc/include/asm/config.h | 3 + > > xen/arch/ppc/include/asm/early_printk.h | 14 +++ > > xen/arch/ppc/include/asm/processor.h | 54 +++++++++- > > xen/arch/ppc/include/asm/string.h | 6 ++ > > xen/arch/ppc/include/asm/types.h | 64 ++++++++++++ > > xen/arch/ppc/ppc64/asm-offsets.c | 55 ++++++++++ > > xen/arch/ppc/ppc64/head.S | 59 +++++++++++ > > xen/arch/ppc/setup.c | 20 +++- > > 17 files changed, 555 insertions(+), 4 deletions(-) > > create mode 100644 xen/arch/ppc/boot_of.c > > Unless required, in new additions we tend to prefer dashes over > underscores. In filenames it is pretty rare that dashes really need > avoiding. Thanks for pointing that out -- I'll fix this in v2. > > --- a/xen/arch/ppc/Kconfig.debug > > +++ b/xen/arch/ppc/Kconfig.debug > > @@ -0,0 +1,5 @@ > > +config EARLY_PRINTK > > + bool "Enable early printk" > > + default DEBUG > > + help > > + Enables early printk debug messages > > \ No newline at end of file > > There are many examples of this throughout the patch, which you want to > take care of. Ditto. > > --- /dev/null > > +++ b/xen/arch/ppc/boot_of.c > > @@ -0,0 +1,122 @@ > > +/* SPDX-License-Identifier: GPL-2.0-or-later */ > > By default we mean to use ... > > > --- /dev/null > > +++ b/xen/arch/ppc/early_printk.c > > @@ -0,0 +1,36 @@ > > +/* SPDX-License-Identifier: GPL-2.0 */ > > ... the more modern form of this (GPL-2.0-only). Anything deviating from > that may want justifying in the description. Got it -- I'll clean this up as well. > Jan Thanks, Shawn From xen-devel-bounces@lists.xenproject.org Fri Jun 09 15:38:44 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 09 Jun 2023 15:38:44 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546176.852846 (Exim 4.92) (envelope-from ) id 1q7eC8-0004O8-MG; Fri, 09 Jun 2023 15:38:32 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546176.852846; Fri, 09 Jun 2023 15:38:32 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7eC8-0004O1-JF; Fri, 09 Jun 2023 15:38:32 +0000 Received: by outflank-mailman (input) for mailman id 546176; Fri, 09 Jun 2023 15:38:31 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7eC7-0004Nt-2R for xen-devel@lists.xenproject.org; Fri, 09 Jun 2023 15:38:31 +0000 Received: from smtp-out1.suse.de (smtp-out1.suse.de [195.135.220.28]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id aedfa0a8-06db-11ee-b232-6b7b168915f2; Fri, 09 Jun 2023 17:38:29 +0200 (CEST) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by smtp-out1.suse.de (Postfix) with ESMTPS id 730CE21A4B; Fri, 9 Jun 2023 15:38:29 +0000 (UTC) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id F1A2113A47; Fri, 9 Jun 2023 15:38:28 +0000 (UTC) Received: from dovecot-director2.suse.de ([192.168.254.65]) by imap2.suse-dmz.suse.de with ESMTPSA id GohIOXRHg2SNCAAAMHmgww (envelope-from ); Fri, 09 Jun 2023 15:38:28 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: aedfa0a8-06db-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1; t=1686325109; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=qu4g/0lz+t2182vt8zT6T7jCYPp63y4X08mVeLVanZg=; b=D++mz5CO/Xkn38Y6EGRhk9w2ysav8sDSr+ZKC6wVlTI6HdPYdc9hFESzYVhwiXM3Lta9xA xKL/lRdmCYGnIb6uYh2tDEoqSf4QzhKYUtjtNi8QfDNpb7Fi657fu4OPF82Ag04/fvJLHs xU67f/R54oYYAD7uVySeJ+tAjr7QEf0= Message-ID: <79b26dac-b507-1c05-b499-784ca6ee3db0@suse.com> Date: Fri, 9 Jun 2023 17:38:28 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH 2/4] x86: always initialize xen-swiotlb when xen-pcifront is enabling Content-Language: en-US To: Christoph Hellwig Cc: =?UTF-8?Q?Marek_Marczykowski-G=c3=b3recki?= , Stefano Stabellini , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , x86@kernel.org, "H. Peter Anvin" , Ben Skeggs , Karol Herbst , Lyude Paul , xen-devel@lists.xenproject.org, iommu@lists.linux.dev, linux-kernel@vger.kernel.org, nouveau@lists.freedesktop.org References: <20230518134253.909623-1-hch@lst.de> <20230518134253.909623-3-hch@lst.de> <20230519040405.GA10818@lst.de> <20230607131257.GB19206@lst.de> From: Juergen Gross In-Reply-To: <20230607131257.GB19206@lst.de> Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="------------90t7m9Jx5Xk69a4ZuetOcZUR" This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --------------90t7m9Jx5Xk69a4ZuetOcZUR Content-Type: multipart/mixed; boundary="------------csx4aCZJXTkhgehRBNI804YW"; protected-headers="v1" From: Juergen Gross To: Christoph Hellwig Cc: =?UTF-8?Q?Marek_Marczykowski-G=c3=b3recki?= , Stefano Stabellini , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , x86@kernel.org, "H. Peter Anvin" , Ben Skeggs , Karol Herbst , Lyude Paul , xen-devel@lists.xenproject.org, iommu@lists.linux.dev, linux-kernel@vger.kernel.org, nouveau@lists.freedesktop.org Message-ID: <79b26dac-b507-1c05-b499-784ca6ee3db0@suse.com> Subject: Re: [PATCH 2/4] x86: always initialize xen-swiotlb when xen-pcifront is enabling References: <20230518134253.909623-1-hch@lst.de> <20230518134253.909623-3-hch@lst.de> <20230519040405.GA10818@lst.de> <20230607131257.GB19206@lst.de> In-Reply-To: <20230607131257.GB19206@lst.de> --------------csx4aCZJXTkhgehRBNI804YW Content-Type: multipart/mixed; boundary="------------IGSz9KXXZgxtj0Jz1Oxp28BQ" --------------IGSz9KXXZgxtj0Jz1Oxp28BQ Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: base64 T24gMDcuMDYuMjMgMTU6MTIsIENocmlzdG9waCBIZWxsd2lnIHdyb3RlOg0KPiBPbiBNb24s IE1heSAyMiwgMjAyMyBhdCAxMDozNzowOUFNICswMjAwLCBKdWVyZ2VuIEdyb3NzIHdyb3Rl Og0KPj4gSW4gbm9ybWFsIGNhc2VzIFBDSSBwYXNzdGhyb3VnaCBpbiBQViBndWVzdHMgcmVx dWlyZXMgdG8gc3RhcnQgdGhlIGd1ZXN0DQo+PiB3aXRoIGU4MjBfaG9zdD0xLiBTbyBpdCBz aG91bGQgYmUgcmF0aGVyIGVhc3kgdG8gbGltaXQgYWxsb2NhdGluZyB0aGUNCj4+IDY0TUIg aW4gUFYgZ3Vlc3RzIHRvIHRoZSBjYXNlcyB3aGVyZSB0aGUgbWVtb3J5IG1hcCBoYXMgbm9u LVJBTSByZWdpb25zDQo+PiBlc3BlY2lhbGx5IGluIHRoZSBmaXJzdCAxTUIgb2YgdGhlIG1l bW9yeS4NCj4+DQo+PiBUaGlzIHdpbGwgY292ZXIgZXZlbiBob3RwbHVnIGNhc2VzLiBUaGUg b25seSBjYXNlIG5vdCBjb3ZlcmVkIHdvdWxkIGJlIGENCj4+IGd1ZXN0IHN0YXJ0ZWQgd2l0 aCBlODIwX2hvc3Q9MSBldmVuIGlmIG5vIFBDSSBwYXNzdGhyb3VnaCB3YXMgcGxhbm5lZC4N Cj4+IEJ1dCB0aGlzIHNob3VsZCBiZSByYXRoZXIgcmFyZSAoYXQgbGVhc3QgSSBob3BlIHNv KS4NCj4gDQo+IFNvIGlzIHRoaXMgYW4gQUNLIGZvciB0aGUgcGF0Y2ggYW5kIGNhbiB3ZSBn byBhaGVhZCB3aXRoIGl0Pw0KDQpBcyBsb25nIGFzIGFib3ZlIG1lbnRpb25lZCBjaGVjayBv ZiB0aGUgRTgyMCBtYXAgaXMgZG9uZSwgeWVzLg0KDQpJZiB5b3Ugd2FudCBJIGNhbiBzZW5k IGEgZGlmZiB0byBiZSBmb2xkZWQgaW50byB5b3VyIHBhdGNoIG9uIE1vbmRheS4NCg0KPiAN Cj4gKEknZCBzdGlsbCBsaWtlIHRvIG1lcmdlIHN3aW90bGIteGVuIGludG8gc3dpb3RsYiBl dmVudHVhbGx5LCBidXQgaXQncw0KPiBwcm9iYWJseSBub3QgZ29pbmcgdG8gaGFwcGVuIHRo aXMgbWVyZ2Ugd2luZG93KQ0KDQpXb3VsZCBiZSBuaWNlLg0KDQoNCkp1ZXJnZW4NCg== --------------IGSz9KXXZgxtj0Jz1Oxp28BQ Content-Type: application/pgp-keys; name="OpenPGP_0xB0DE9DD628BF132F.asc" Content-Disposition: attachment; filename="OpenPGP_0xB0DE9DD628BF132F.asc" Content-Description: OpenPGP public key Content-Transfer-Encoding: quoted-printable -----BEGIN PGP PUBLIC KEY BLOCK----- xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjri oyspZKOBycWxw3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2 kaV2KL9650I1SJvedYm8Of8Zd621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i 1TXkH09XSSI8mEQ/ouNcMvIJNwQpd369y9bfIhWUiVXEK7MlRgUG6MvIj6Y3Am/B BLUVbDa4+gmzDC9ezlZkTZG2t14zWPvxXP3FAp2pkW0xqG7/377qptDmrk42GlSK N4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEBAAHNHEp1ZXJnZW4gR3Jvc3Mg PGpnQHBmdXBmLm5ldD7CwHkEEwECACMFAlOMcBYCGwMHCwkIBwMCAQYVCAIJCgsE FgIDAQIeAQIXgAAKCRCw3p3WKL8TL0KdB/93FcIZ3GCNwFU0u3EjNbNjmXBKDY4F UGNQH2lvWAUy+dnyThpwdtF/jQ6j9RwE8VP0+NXcYpGJDWlNb9/JmYqLiX2Q3Tye vpB0CA3dbBQp0OW0fgCetToGIQrg0MbD1C/sEOv8Mr4NAfbauXjZlvTj30H2jO0u +6WGM6nHwbh2l5O8ZiHkH32iaSTfN7Eu5RnNVUJbvoPHZ8SlM4KWm8rG+lIkGurq qu5gu8q8ZMKdsdGC4bBxdQKDKHEFExLJK/nRPFmAuGlId1E3fe10v5QL+qHI3EIP tyfE7i9Hz6rVwi7lWKgh7pe0ZvatAudZ+JNIlBKptb64FaiIOAWDCx1SzR9KdWVy Z2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+wsB5BBMBAgAjBQJTjHCvAhsDBwsJ CAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey/HmQf/RtI7kv5A2PS4 RF7HoZhPVPogNVbC4YA6lW7DrWf0teC0RR3MzXfy6pJ+7KLgkqMlrAbN/8Dvjoz7 8X+5vhH/rDLa9BuZQlhFmvcGtCF8eR0T1v0nC/nuAFVGy+67q2DH8As3KPu0344T BDpAvr2uYM4tSqxK4DURx5INz4ZZ0WNFHcqsfvlGJALDeE0LhITTd9jLzdDad1pQ SToCnLl6SBJZjDOX9QQcyUigZFtCXFst4dlsvddrxyqT1f17+2cFSdu7+ynLmXBK 7abQ3rwJY8SbRO2iRulogc5vr/RLMMlscDAiDkaFQWLoqHHOdfO9rURssHNN8WkM nQfvUewRz80hSnVlcmdlbiBHcm9zcyA8amdyb3NzQG5vdmVsbC5jb20+wsB5BBMB AgAjBQJTjHDXAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/ Ey8PUQf/ehmgCI9jB9hlgexLvgOtf7PJnFOXgMLdBQgBlVPO3/D9R8LtF9DBAFPN hlrsfIG/SqICoRCqUcJ96Pn3P7UUinFG/I0ECGF4EvTE1jnDkfJZr6jrbjgyoZHi w/4BNwSTL9rWASyLgqlA8u1mf+c2yUwcGhgkRAd1gOwungxcwzwqgljf0N51N5Jf VRHRtyfwq/ge+YEkDGcTU6Y0sPOuj4Dyfm8fJzdfHNQsWq3PnczLVELStJNdapwP OoE+lotufe3AM2vAEYJ9rTz3Cki4JFUsgLkHFqGZarrPGi1eyQcXeluldO3m91NK /1xMI3/+8jbO0tsn1tqSEUGIJi7ox80eSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1 c2UuZGU+wsB5BBMBAgAjBQJTjHDrAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgEC F4AACgkQsN6d1ii/Ey+LhQf9GL45eU5vOowA2u5N3g3OZUEBmDHVVbqMtzwlmNC4 k9Kx39r5s2vcFl4tXqW7g9/ViXYuiDXb0RfUpZiIUW89siKrkzmQ5dM7wRqzgJpJ wK8Bn2MIxAKArekWpiCKvBOB/Cc+3EXE78XdlxLyOi/NrmSGRIov0karw2RzMNOu 5D+jLRZQd1Sv27AR+IP3I8U4aqnhLpwhK7MEy9oCILlgZ1QZe49kpcumcZKORmzB TNh30FVKK1EvmV2xAKDoaEOgQB4iFQLhJCdP1I5aSgM5IVFdn7v5YgEYuJYx37Io N1EblHI//x/e2AaIHpzK5h88NEawQsaNRpNSrcfbFmAg987ATQRTjHAWAQgAyzH6 AOODMBjgfWE9VeCgsrwH3exNAU32gLq2xvjpWnHIs98ndPUDpnoxWQugJ6MpMncr 0xSwFmHEgnSEjK/PAjppgmyc57BwKII3sV4on+gDVFJR6Y8ZRwgnBC5mVM6JjQ5x Dk8WRXljExRfUX9pNhdE5eBOZJrDRoLUmmjDtKzWaDhIg/+1Hzz93X4fCQkNVbVF LELU9bMaLPBG/x5q4iYZ2k2ex6d47YE1ZFdMm6YBYMOljGkZKwYde5ldM9mo45mm we0icXKLkpEdIXKTZeKDO+Hdv1aqFuAcccTg9RXDQjmwhC3yEmrmcfl0+rPghO0I v3OOImwTEe4co3c1mwARAQABwsBfBBgBAgAJBQJTjHAWAhsMAAoJELDendYovxMv Q/gH/1ha96vm4P/L+bQpJwrZ/dneZcmEwTbe8YFsw2V/Buv6Z4Mysln3nQK5ZadD 534CF7TDVft7fC4tU4PONxF5D+/tvgkPfDAfF77zy2AH1vJzQ1fOU8lYFpZXTXIH b+559UqvIB8AdgR3SAJGHHt4RKA0F7f5ipYBBrC6cyXJyyoprT10EMvU8VGiwXvT yJz3fjoYsdFzpWPlJEBRMedCot60g5dmbdrZ5DWClAr0yau47zpWj3enf1tLWaqc suylWsviuGjKGw7KHQd3bxALOknAp4dN3QwBYCKuZ7AddY9yjynVaD5X7nF9nO5B jR/i1DG86lem3iBDXzXsZDn8R38=3D =3D2wuH -----END PGP PUBLIC KEY BLOCK----- --------------IGSz9KXXZgxtj0Jz1Oxp28BQ-- --------------csx4aCZJXTkhgehRBNI804YW-- --------------90t7m9Jx5Xk69a4ZuetOcZUR Content-Type: application/pgp-signature; name="OpenPGP_signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="OpenPGP_signature" -----BEGIN PGP SIGNATURE----- wsB5BAABCAAjFiEEhRJncuj2BJSl0Jf3sN6d1ii/Ey8FAmSDR3QFAwAAAAAACgkQsN6d1ii/Ey/V CwgAgbJpH1odyDVntfaeroRGArp+yXBmzdpZp9I4wIu/Ioc/TgAnKzT9ol4v9FwCbFCNtECT6bMy Pwe7QnfTHA+qK3S8pfDZUY2mzZqbkCq9Er02jSPBjyWNLPYJZ+rZl5qGvVTjob6j32mguYM79XMM DBkGi9e1eJE/71mZHdpujEAF5bB5QwpzpTwcuSFxSXS/WLB+EFy/IsxldV773qErDnDapZSV0WRo ZC3r1FLrbq4PZjqGzyIW+k26Xh0ZT3gAsa9c9pyQtPJ5bSiT9aVas4uUcQki6EMkWSpQr8Jn3CSj f4WIfQQ/Lx6UKfC54bKshAISK3UDT7WTtR8zAGGDYw== =HTe9 -----END PGP SIGNATURE----- --------------90t7m9Jx5Xk69a4ZuetOcZUR-- From xen-devel-bounces@lists.xenproject.org Fri Jun 09 15:40:37 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 09 Jun 2023 15:40:37 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546183.852855 (Exim 4.92) (envelope-from ) id 1q7eE0-0005sq-6H; Fri, 09 Jun 2023 15:40:28 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546183.852855; Fri, 09 Jun 2023 15:40:28 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7eE0-0005sj-3h; Fri, 09 Jun 2023 15:40:28 +0000 Received: by outflank-mailman (input) for mailman id 546183; Fri, 09 Jun 2023 15:40:27 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7eDz-0005sd-B9 for xen-devel@lists.xenproject.org; Fri, 09 Jun 2023 15:40:27 +0000 Received: from alpha.anastas.io (alpha.anastas.io [104.248.188.109]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id f331dca6-06db-11ee-8611-37d641c3527e; Fri, 09 Jun 2023 17:40:25 +0200 (CEST) Received: from authenticated-user (alpha.anastas.io [104.248.188.109]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by alpha.anastas.io (Postfix) with ESMTPSA id 53E753F08F; Fri, 9 Jun 2023 08:40:22 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: f331dca6-06db-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=anastas.io; s=mail; t=1686325223; bh=PmDTbrFAlYgMzho7kmfgxm0REPuKfcmaPhPLnXSa7dA=; h=Date:Cc:Subject:From:To:References:In-Reply-To:From; b=GJX9WjR+TGtpcI0sjfS7FbZys96lYwbTU4SuUcShFpCpwAvQZLsuufPF5A2Cv8kll thsZTSslUKAYrhqZacH6Vc5Z9yXAw8n05M9fSPmn/dgm1UsWyViWwKEZIZlAbvj2er Ndp0oSR8dr6oyKjyCq21bk6lxtefSwIcv6i1pp8le3aGeqa2FELuudmPpdebCPkRVg qkYLwVRLtgdjkR9ObI/rzMET0o2aksHE/4XfsE2elKRQADPS7xmyrIfcTzjHuueGdQ JiMpuN3Da40i54sd+ihu8x7f0mPy58gPSDtzBDECezVSP98Z+CMplNw61KTPSy/Uj0 UWs29EWXAO9mw== Mime-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=UTF-8 Date: Fri, 09 Jun 2023 10:40:21 -0500 Message-Id: Cc: , "Andrew Cooper" , "George Dunlap" , "Julien Grall" , "Stefano Stabellini" , "Wei Liu" , "Shawn Anastasio" , Subject: Re: [PATCH 3/3] maintainers: Add PPC64 maintainer From: "Shawn Anastasio" To: "Jan Beulich" References: <2ec38b52d944919934b2326a1924200aa954008d.1686148363.git.shawn@anastas.io> <3ad44f3b-587f-07e6-4601-59b961954c9d@suse.com> In-Reply-To: <3ad44f3b-587f-07e6-4601-59b961954c9d@suse.com> On Fri Jun 9, 2023 at 4:04 AM CDT, Jan Beulich wrote: > On 07.06.2023 17:06, Shawn Anastasio wrote: > > --- a/MAINTAINERS > > +++ b/MAINTAINERS > > @@ -451,6 +451,9 @@ M: Wei Liu > > S: Supported > > T: git https://xenbits.xenproject.org/git-http/ovmf.git > > =20 > > +PPC64 > > +M: Shawn Anastasio > > + > > POWER MANAGEMENT > > M: Jan Beulich > > S: Supported > > Nit: You want to move your insertion further down, to maintain alphabetic > sorting. You further want at least one F: line; see e.g. RISC-V's entry. Will fix in v2. > Jan Thanks, Shawn From xen-devel-bounces@lists.xenproject.org Fri Jun 09 15:52:08 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 09 Jun 2023 15:52:08 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546188.852865 (Exim 4.92) (envelope-from ) id 1q7eP8-0007Qm-7H; Fri, 09 Jun 2023 15:51:58 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546188.852865; Fri, 09 Jun 2023 15:51:58 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7eP8-0007Qf-4P; Fri, 09 Jun 2023 15:51:58 +0000 Received: by outflank-mailman (input) for mailman id 546188; Fri, 09 Jun 2023 15:51:57 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7eP7-0007QV-JJ; Fri, 09 Jun 2023 15:51:57 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7eP7-0007vS-7D; Fri, 09 Jun 2023 15:51:57 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7eP6-00043S-OL; Fri, 09 Jun 2023 15:51:56 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q7eP6-0000Fw-Nn; Fri, 09 Jun 2023 15:51:56 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=UO78sK/MJnvspIzpuVoqPmFmbYJYQY4c3H++lxxYmpM=; b=oea5SmHzvkw9YlcF1d4dtW3i4p fCDeGKmkRzsYaXTOlGJG1DQp9Yz1rg6LEczCi91T3D1u7X3AFCMMVFveBRdhdy4mmm26dnxyG9wt6 RZge4Dv2K4J9n/M84mMmoTkwgd/oAjVIrZyAhCWmq3xmI+wWoi/6ezbpR6AQMMMaBYV8=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [qemu-mainline test] 181335: regressions - FAIL X-Osstest-Failures: qemu-mainline:build-arm64-xsm:xen-build:fail:regression qemu-mainline:build-arm64:xen-build:fail:regression qemu-mainline:build-amd64:xen-build:fail:regression qemu-mainline:build-i386:xen-build:fail:regression qemu-mainline:build-amd64-xsm:xen-build:fail:regression qemu-mainline:build-i386-xsm:xen-build:fail:regression qemu-mainline:build-armhf:xen-build:fail:regression qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-i386:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:build-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:build-arm64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:build-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:build-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pygrub:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking X-Osstest-Versions-This: qemuu=5f9dd6a8ce3961db4ce47411ed2097ad88bdf5fc X-Osstest-Versions-That: qemuu=6972ef1440a9d685482d78672620a7482f2bd09a From: osstest service owner Date: Fri, 09 Jun 2023 15:51:56 +0000 flight 181335 qemu-mainline real [real] http://logs.test-lab.xenproject.org/osstest/logs/181335/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-arm64-xsm 6 xen-build fail REGR. vs. 180691 build-arm64 6 xen-build fail REGR. vs. 180691 build-amd64 6 xen-build fail REGR. vs. 180691 build-i386 6 xen-build fail REGR. vs. 180691 build-amd64-xsm 6 xen-build fail REGR. vs. 180691 build-i386-xsm 6 xen-build fail REGR. vs. 180691 build-armhf 6 xen-build fail REGR. vs. 180691 Tests which did not succeed, but are not blocking: test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-xl-xsm 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-raw 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-xsm 1 build-check(1) blocked n/a test-arm64-arm64-xl 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit1 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit2 1 build-check(1) blocked n/a test-arm64-arm64-xl-thunderx 1 build-check(1) blocked n/a test-arm64-arm64-xl-vhd 1 build-check(1) blocked n/a test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a test-armhf-armhf-libvirt 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-qcow2 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-raw 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a test-armhf-armhf-xl-arndale 1 build-check(1) blocked n/a test-armhf-armhf-xl-multivcpu 1 build-check(1) blocked n/a test-armhf-armhf-xl-rtds 1 build-check(1) blocked n/a test-armhf-armhf-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-amd 1 build-check(1) blocked n/a test-amd64-i386-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-raw 1 build-check(1) blocked n/a test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-i386 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-amd64 1 build-check(1) blocked n/a test-amd64-coresched-i386-xl 1 build-check(1) blocked n/a test-amd64-coresched-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-xsm 1 build-check(1) blocked n/a build-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-shadow 1 build-check(1) blocked n/a test-amd64-amd64-xl-rtds 1 build-check(1) blocked n/a build-arm64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a build-armhf-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a build-i386-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-amd 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-pair 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-qcow2 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-vhd 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvshim 1 build-check(1) blocked n/a test-amd64-amd64-pair 1 build-check(1) blocked n/a test-amd64-amd64-pygrub 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-intel 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd11-amd64 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd12-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-multivcpu 1 build-check(1) blocked n/a test-amd64-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit1 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit1 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit2 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-intel 1 build-check(1) blocked n/a test-amd64-i386-xl 1 build-check(1) blocked n/a test-amd64-i386-xl-pvshim 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a version targeted for testing: qemuu 5f9dd6a8ce3961db4ce47411ed2097ad88bdf5fc baseline version: qemuu 6972ef1440a9d685482d78672620a7482f2bd09a Last test of basis 180691 2023-05-17 10:45:22 Z 23 days Failing since 180699 2023-05-18 07:21:24 Z 22 days 76 attempts Testing same since 181322 2023-06-09 00:07:15 Z 0 days 3 attempts ------------------------------------------------------------ People who touched revisions under test: Afonso Bordado Akihiko Odaki Akihiro Suda Alex Bennée Alex Williamson Alexander Bulekov Alexander Graf Alexander Ivanov Alistair Francis Ani Sinha Ani Sinha Anthony PERARD Anton Johansson BALATON Zoltan Bastian Koppelmann Bernhard Beschow Bin Meng Brian Cain Brice Goglin Camilla Conte Christian Schoenebeck Chuck Zmudzinski Cindy Lu Clément Chigot Cornelia Huck Cédric Le Goater Cédric Le Goater Daniel Henrique Barboza Daniel P. Berrangé Daniil Kovalev David Hildenbrand David Woodhouse Emanuele Giuseppe Esposito Enze Li Eric Auger Eric Blake Eric DeVolder Erico Nunes Eugenio Pérez Fabiano Rosas Fan Ni Fiona Ebner Francesco Cagnin Francisco Iglesias Gavin Shan Gregory Price Gregory Price Hanna Czenczek Hao Zeng Hawkins Jiawei Igor Mammedov Ilya Leoshkevich Ira Weiny Jagannathan Raman Jason Wang Jean-Louis Dupond Jean-Philippe Brucker Jiaxun Yang John Snow Jonathan Cameron Juan Quintela Kevin Wolf Laurent Vivier Lei Yang Leonardo Bras Maksim Davydov Marc-André Lureau Marcin Juszkiewicz Marco Liebel Mark Cave-Ayland Markus Armbruster Matheus Tavares Bernardino Mauro Matteo Cascella Max Fritz Michael S. Tsirkin Michael Tokarev Michal Privoznik Mostafa Saleh Nicholas Piggin Nicolas Saenz Julienne Niek Linnenbank Palmer Dabbelt Paolo Bonzini Peter Maydell Peter Xu Philippe Mathieu-Daudé qianfan Zhao Raghu H Rene Engel Richard Henderson Richard Purdie Ricky Zhou Ryan Wendland Sebastian Ott Sergio Lopez Sid Manning Song Gao Stefan Hajnoczi Stefano Garzarella Steve Sistare Taylor Simpson Thomas Huth Thomas Weißschuh timothee.cocault@gmail.com Timothée Cocault Tommy Wu Vikram Garhwal Viktor Prutyanov Vitaly Cheptsov Vivek Kasireddy Vladimir Sementsov-Ogievskiy Volker Rümelin Xinyu Li Zeng Hao Zhenyu Zhang Zhenzhong Duan Zhuojia Shen jobs: build-amd64-xsm fail build-arm64-xsm fail build-i386-xsm fail build-amd64 fail build-arm64 fail build-armhf fail build-i386 fail build-amd64-libvirt blocked build-arm64-libvirt blocked build-armhf-libvirt blocked build-i386-libvirt blocked build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl blocked test-amd64-coresched-amd64-xl blocked test-arm64-arm64-xl blocked test-armhf-armhf-xl blocked test-amd64-i386-xl blocked test-amd64-coresched-i386-xl blocked test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-i386-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-amd64-libvirt-xsm blocked test-arm64-arm64-libvirt-xsm blocked test-amd64-i386-libvirt-xsm blocked test-amd64-amd64-xl-xsm blocked test-arm64-arm64-xl-xsm blocked test-amd64-i386-xl-xsm blocked test-amd64-amd64-qemuu-nested-amd blocked test-amd64-amd64-xl-pvhv2-amd blocked test-amd64-i386-qemuu-rhel6hvm-amd blocked test-amd64-amd64-dom0pvh-xl-amd blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-freebsd10-amd64 blocked test-amd64-amd64-qemuu-freebsd11-amd64 blocked test-amd64-amd64-qemuu-freebsd12-amd64 blocked test-amd64-amd64-xl-qemuu-ovmf-amd64 blocked test-amd64-i386-xl-qemuu-ovmf-amd64 blocked test-amd64-amd64-xl-qemuu-win7-amd64 blocked test-amd64-i386-xl-qemuu-win7-amd64 blocked test-amd64-amd64-xl-qemuu-ws16-amd64 blocked test-amd64-i386-xl-qemuu-ws16-amd64 blocked test-armhf-armhf-xl-arndale blocked test-amd64-amd64-xl-credit1 blocked test-arm64-arm64-xl-credit1 blocked test-armhf-armhf-xl-credit1 blocked test-amd64-amd64-xl-credit2 blocked test-arm64-arm64-xl-credit2 blocked test-armhf-armhf-xl-credit2 blocked test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-freebsd10-i386 blocked test-amd64-amd64-qemuu-nested-intel blocked test-amd64-amd64-xl-pvhv2-intel blocked test-amd64-i386-qemuu-rhel6hvm-intel blocked test-amd64-amd64-dom0pvh-xl-intel blocked test-amd64-amd64-libvirt blocked test-armhf-armhf-libvirt blocked test-amd64-i386-libvirt blocked test-amd64-amd64-xl-multivcpu blocked test-armhf-armhf-xl-multivcpu blocked test-amd64-amd64-pair blocked test-amd64-i386-pair blocked test-amd64-amd64-libvirt-pair blocked test-amd64-i386-libvirt-pair blocked test-amd64-amd64-xl-pvshim blocked test-amd64-i386-xl-pvshim blocked test-amd64-amd64-pygrub blocked test-armhf-armhf-libvirt-qcow2 blocked test-amd64-amd64-xl-qcow2 blocked test-arm64-arm64-libvirt-raw blocked test-armhf-armhf-libvirt-raw blocked test-amd64-i386-libvirt-raw blocked test-amd64-amd64-xl-rtds blocked test-armhf-armhf-xl-rtds blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-amd64-xl-shadow blocked test-amd64-i386-xl-shadow blocked test-arm64-arm64-xl-thunderx blocked test-amd64-amd64-libvirt-vhd blocked test-arm64-arm64-xl-vhd blocked test-armhf-armhf-xl-vhd blocked test-amd64-i386-xl-vhd blocked ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 16165 lines long.) From xen-devel-bounces@lists.xenproject.org Fri Jun 09 16:03:18 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 09 Jun 2023 16:03:18 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546197.852876 (Exim 4.92) (envelope-from ) id 1q7eZq-00019N-Bo; Fri, 09 Jun 2023 16:03:02 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546197.852876; Fri, 09 Jun 2023 16:03:02 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7eZq-00019G-8w; Fri, 09 Jun 2023 16:03:02 +0000 Received: by outflank-mailman (input) for mailman id 546197; Fri, 09 Jun 2023 16:03:01 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7eZp-00019A-Bt for xen-devel@lists.xenproject.org; Fri, 09 Jun 2023 16:03:01 +0000 Received: from esa5.hc3370-68.iphmx.com (esa5.hc3370-68.iphmx.com [216.71.155.168]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 1946dc69-06df-11ee-8611-37d641c3527e; Fri, 09 Jun 2023 18:02:58 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 1946dc69-06df-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686326578; h=from:to:cc:subject:date:message-id:mime-version: content-transfer-encoding; bh=iF3Qndk4wGvJ9qBNgzhGDGpWUPBDaNlxNMhbRXEfAAI=; b=iffvHrI6Omw4YZDGnDtqul8aV/uWexXHdRyfiTN0qg6AMe6+nPkcjAT0 x8hsX3BeFOmrAr5n9p+AcLnkZgi93QTEU9nUuW7W7tMdEl2J3p1grPNYv 5jsLcH+r6feY61Ajo0Qoxc1DetpTBTpp0LzsLkpW/EOjlmT7qrn5Lrxs5 Y=; Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none X-SBRS: 4.0 X-MesageID: 110981565 X-Ironport-Server: esa5.hc3370-68.iphmx.com X-Remote-IP: 162.221.156.123 X-Policy: $RELAYED IronPort-Data: A9a23:N+zEXKk4txeRQShcgu7F3y/o5gyYJkRdPkR7XQ2eYbSJt1+Wr1Gzt xIeCGHTPPqOYWOnKdx/PdnloxsH6pbTmtAxSQo+rHg8RSMWpZLJC+rCIxarNUt+DCFhoGFPt JxCN4aafKjYaleG+39B55C49SEUOZmgH+a6U6icfHgqH2eIcQ954Tp7gek1n4V0ttawBgKJq LvartbWfVSowFaYCEpNg064gE0p5KyaVA8w5ARkPqgV5A6GzhH5MbpETU2PByqgKmVrNrbSq 9brlNmR4m7f9hExPdKp+p6TnpoiG+O60aCm0xK6aoD66vRwjnVaPpUTbZLwXXx/mTSR9+2d/ f0W3XCGpaXFCYWX8AgVe0Ew/yiTpsSq8pefSZS0mZT7I0Er7xIAahihZa07FdRwxwp5PY1B3 fgTITNOVk/TvbuvnO6wSslBp/YuF9a+aevzulk4pd3YJfMvQJSFSKTW/95Imjw3g6iiH96HO ZBfM2A2Kk2dPVsWYAx/5JEWxY9EglHWdTFCpU3Tjq0w+2XJlyR60aT3McqTcduPLSlQth/B/ jOWpjmnX3n2MvSg7z6U32+NudXxthjXeLkzGI2T+L1l1Qj7Kms7V0RNCArTTeOCol6zXZdTJ lIZ/gIqrLMu7wq7Q9/lRRq6rXWY+BkGVLJ4CPYm4QuAzq7V5QexBWUeSDNFLts8u6ceQD0h1 laN2dTzFzFrmLSQRTSW8bL8kN+pEXFLdylYP3ZCFFZbpYC5++nfky4jUP5nG6e2zeWqSQup2 mzWpygeqpQhgPUUgvDTEU/8vxqgoZ3ATwgQ7wrRX3644g4RWLNJd7BE+nCAs68ecd/xok2p+ SFdxpPAtLxm4YSlznTlfQkbIF2+Cx9p2hX4iEUnIZQu/i/FF5WLLdEJu2EWyKuE3685ld7Vj Kz741k5CHpv0JyCM8dKj3qZUZhC8EQZPY2NugroRtRPeINtUwSM4TtjY0Wdt0i0zhhyy/1uY 83GLp38ZZr/NUiA5GDvL9rxLJdxnnxurY8tbc2TI+ubPUq2OyfOFOZt3KqmZeEl9qKUyDg5A P4GX/ZmPy53CbWkCgGOqN57ELz/BSRjbXwAg5ANJ7Hrz8sPMD1JNsI9Npt4I9M8xPwLzbaQl px/M2cBoGfCabT8AV3iQhhehHnHBP6TcVpT0fQQAGuV IronPort-HdrOrdr: A9a23:29Jb+a3UQR2wXLgB0AK9FgqjBKMkLtp133Aq2lEZdPU1SKGlfq WV954mPHDP6Ar5J0tQ++xoVJPufZq+z/JICOsqTNSftWDd0QOVxepZjLcKrQePJ8T2zJ856Z td X-Talos-CUID: 9a23:rlM4/m5LXkSvi7zjc9ss8EUdGYMdLS3nlW6Mf0S4KUtIerCuVgrF X-Talos-MUID: =?us-ascii?q?9a23=3AP4hrGg1nqdvl27lLjqPoqkJv8zUj3IKqGW0QsKo?= =?us-ascii?q?8heK/GQxLGjutpzr0Tdpy?= X-IronPort-AV: E=Sophos;i="6.00,229,1681185600"; d="scan'208";a="110981565" From: Andrew Cooper To: Xen-devel CC: Andrew Cooper , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , "Stefano Stabellini" , Michal Orzel , Anthony PERARD Subject: [PATCH] CI: Add Ocaml to the alpine containers Date: Fri, 9 Jun 2023 17:02:44 +0100 Message-ID: <20230609160244.2638438-1-andrew.cooper3@citrix.com> X-Mailer: git-send-email 2.30.2 MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit This gets more coverage of optional parts of the build, and makes it easier to trial Ocaml related changes in the smoke tests. Signed-off-by: Andrew Cooper --- CC: Roger Pau Monné CC: Stefano Stabellini CC: Michal Orzel CC: Anthony PERARD Hacked up manually to fix the Ocaml bindings for arm64: https://gitlab.com/xen-project/people/andyhhp/xen/-/pipelines/895162017 but this aspect should be done irrespective. --- automation/build/alpine/3.12-arm64v8.dockerfile | 2 ++ automation/build/alpine/3.12.dockerfile | 2 ++ 2 files changed, 4 insertions(+) diff --git a/automation/build/alpine/3.12-arm64v8.dockerfile b/automation/build/alpine/3.12-arm64v8.dockerfile index 3f1e6a3fc6df..1be3bf780509 100644 --- a/automation/build/alpine/3.12-arm64v8.dockerfile +++ b/automation/build/alpine/3.12-arm64v8.dockerfile @@ -28,6 +28,8 @@ RUN apk --no-cache add \ make \ musl-dev \ ncurses-dev \ + ocaml \ + ocaml-findlib \ patch \ python3-dev \ texinfo \ diff --git a/automation/build/alpine/3.12.dockerfile b/automation/build/alpine/3.12.dockerfile index c847aa82d9e2..72ad3a07ad4a 100644 --- a/automation/build/alpine/3.12.dockerfile +++ b/automation/build/alpine/3.12.dockerfile @@ -30,6 +30,8 @@ RUN apk --no-cache add \ make \ musl-dev \ ncurses-dev \ + ocaml \ + ocaml-findlib \ patch \ python3-dev \ texinfo \ base-commit: 3a82e4501c4ec4d53b764c5b69955997b03d1137 -- 2.30.2 From xen-devel-bounces@lists.xenproject.org Fri Jun 09 16:07:18 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 09 Jun 2023 16:07:18 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546202.852886 (Exim 4.92) (envelope-from ) id 1q7edr-0001kp-UZ; Fri, 09 Jun 2023 16:07:11 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546202.852886; Fri, 09 Jun 2023 16:07:11 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7edr-0001ki-Qb; Fri, 09 Jun 2023 16:07:11 +0000 Received: by outflank-mailman (input) for mailman id 546202; Fri, 09 Jun 2023 16:07:10 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7edq-0001kc-OQ for xen-devel@lists.xenproject.org; Fri, 09 Jun 2023 16:07:10 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7edm-0000JL-10; Fri, 09 Jun 2023 16:07:06 +0000 Received: from 54-240-197-233.amazon.com ([54.240.197.233] helo=[192.168.17.204]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1q7edl-0000UH-Pg; Fri, 09 Jun 2023 16:07:05 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=0xJ057tmt/AEnszx2hqXIeW8lH72i5cQZkIkhCrAf5Q=; b=J0cGQ70uqbKbTtROrWE+NP2Ys9 oZP4PuoR9fpR+7hhse6IDePxhCZmZcQ/X57iWMH2LPnPnLSn9Na+77wQMWILmCFfLvJdGi0JKEowa N2YKEf7ihuCicRsE9yesXWftFLvmkjnESMT47WZZdhFb86EMJ7FAya4FBAUwm04MyjE8=; Message-ID: <3a7eca41-0ecf-4bf1-1daf-9d66f4aa6400@xen.org> Date: Fri, 9 Jun 2023 17:07:03 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.11.2 Subject: Re: [PATCH 2/3] xen/ppc: Implement early serial printk on PaPR/pseries Content-Language: en-US To: Shawn Anastasio , Andrew Cooper , Jan Beulich Cc: tpearson@raptorengineering.com, George Dunlap , Stefano Stabellini , Wei Liu , Shawn Anastasio , xen-devel@lists.xenproject.org References: <0c0a19de-dde3-8b98-4354-6d3d2019179b@suse.com> <0b24d36b-adbc-9e7c-df6e-8754c269855d@citrix.com> <1c35f696-5a65-06da-8af5-685b8ad2e849@xen.org> From: Julien Grall In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi Shawn, On 09/06/2023 16:01, Shawn Anastasio wrote: > On Fri Jun 9, 2023 at 5:12 AM CDT, Julien Grall wrote: >> Strictly speaking we can refuse any code. That count for license as >> well. Anyway, I didn't request a change here. I merely pointed out that >> any use of GPLv2+ should be justified because on Arm most of the people >> don't pay attention on the license and pick the one from an existing file. > > Hi Julien, > > The choice of GPLv2+ for many of the files in this patchset was indeed > inherited from old IBM-written Xen code that the files in question were > derived from. I did not realize it was permissible or even desirable to > relicense those to GPLv2-only. > > As for the new files, GPLv2+ was chosen to remain consistent and to open > the door for future derivations from GPLv2+ licensed code, either from > the older Xen tree or from the Linux ppc tree, much of which is also > licensed as GPLv2+. If it would reduce friction, these files could be > relicensed to GPLv2-only. (Before someone points out, I know this is already a problem on other part of Xen. But it would be ideal if we avoid spreading this mess on new architectures :). Thanks for the explanations. To clarify, are you saying that all the files will be GPLv2+ or just some? If the latter, then my concern would be that if you need to import GPLv2-only code, then you may need to write your code in a different file. This may become messy to handle and some developer may end up to be confused. I am not a lawyer though, so you may want to check the implications here. Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Fri Jun 09 16:20:53 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 09 Jun 2023 16:20:53 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546207.852896 (Exim 4.92) (envelope-from ) id 1q7eqx-0004AG-3W; Fri, 09 Jun 2023 16:20:43 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546207.852896; Fri, 09 Jun 2023 16:20:43 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7eqw-0004A9-W6; Fri, 09 Jun 2023 16:20:42 +0000 Received: by outflank-mailman (input) for mailman id 546207; Fri, 09 Jun 2023 16:20:42 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7eqw-0004A3-1t for xen-devel@lists.xenproject.org; Fri, 09 Jun 2023 16:20:42 +0000 Received: from alpha.anastas.io (alpha.anastas.io [104.248.188.109]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 9222f28e-06e1-11ee-b232-6b7b168915f2; Fri, 09 Jun 2023 18:20:39 +0200 (CEST) Received: from authenticated-user (alpha.anastas.io [104.248.188.109]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by alpha.anastas.io (Postfix) with ESMTPSA id 6B8FB3F002; Fri, 9 Jun 2023 09:20:36 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 9222f28e-06e1-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=anastas.io; s=mail; t=1686327637; bh=yaFMAYkqSoKsm1KWqKXUroh2xCHu6zaJDCOtiS+azvs=; h=Date:Cc:Subject:From:To:References:In-Reply-To:From; b=bFqE/idVhz+9BZhncwlMf6DNtxNZiupng8aSCoL/5XnbqtaSSU2Y+k06uXwrbuEf4 9584wnIrOjPWs6a+jgrgPdYr7jIzvtXP3OMyePBd/8cBn8uhxsDfNP6i6ON0QbWh3o PYbMbnM9dENNg9AM9HLIYooBHVelA80/znGuli8VrhqQd2cGpWaYTRRlNpWtOgDq1f hS6z04jLWMtoEMmjHpZKIA66ZLesMPloID7YgJodFsAYqAtzlS2NldcnW54O/8tv3g JQN7JapVa5QeDWDYLeQBSqv8vh6MSF82MfDY1zL7VuSJtTjckewep8AuK8NZJdhgCP P9gBBRR0t6DgQ== Mime-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=UTF-8 Date: Fri, 09 Jun 2023 11:20:35 -0500 Cc: , "George Dunlap" , "Stefano Stabellini" , "Wei Liu" , Subject: Re: [PATCH 2/3] xen/ppc: Implement early serial printk on PaPR/pseries From: "Shawn Anastasio" To: "Julien Grall" , "Andrew Cooper" , "Jan Beulich" Message-Id: References: <0c0a19de-dde3-8b98-4354-6d3d2019179b@suse.com> <0b24d36b-adbc-9e7c-df6e-8754c269855d@citrix.com> <1c35f696-5a65-06da-8af5-685b8ad2e849@xen.org> <3a7eca41-0ecf-4bf1-1daf-9d66f4aa6400@xen.org> In-Reply-To: <3a7eca41-0ecf-4bf1-1daf-9d66f4aa6400@xen.org> On Fri Jun 9, 2023 at 11:07 AM CDT, Julien Grall wrote: > Thanks for the explanations. To clarify, are you saying that all the=20 > files will be GPLv2+ or just some? My idea was to license any file where I expect there to derivations from existing code as GPLv2+, and fall back to GPLv2-only for newly-written files for which I expect there to be no reuse of existing GPLv2+ code. > If the latter, then my concern would be that if you need to import=20 > GPLv2-only code, then you may need to write your code in a different=20 > file. This may become messy to handle and some developer may end up to=20 > be confused. Agreed, and I definitely want to minimize confusion. Ultimately I think situations like this will be unavoidable, though, since derivations will likely need to be made from both GPLv2-only and GPLv2+ code. > Cheers, Thanks, Shawn From xen-devel-bounces@lists.xenproject.org Fri Jun 09 16:22:06 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 09 Jun 2023 16:22:06 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546212.852906 (Exim 4.92) (envelope-from ) id 1q7es7-0004gh-Cl; Fri, 09 Jun 2023 16:21:55 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546212.852906; Fri, 09 Jun 2023 16:21:55 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7es7-0004ga-A2; Fri, 09 Jun 2023 16:21:55 +0000 Received: by outflank-mailman (input) for mailman id 546212; Fri, 09 Jun 2023 16:21:54 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7es5-0004gO-Ru for xen-devel@lists.xenproject.org; Fri, 09 Jun 2023 16:21:54 +0000 Received: from NAM10-MW2-obe.outbound.protection.outlook.com (mail-mw2nam10on2062e.outbound.protection.outlook.com [2a01:111:f400:7e89::62e]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id bd23c378-06e1-11ee-b232-6b7b168915f2; Fri, 09 Jun 2023 18:21:52 +0200 (CEST) Received: from MW4PR04CA0189.namprd04.prod.outlook.com (2603:10b6:303:86::14) by LV8PR12MB9081.namprd12.prod.outlook.com (2603:10b6:408:188::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Fri, 9 Jun 2023 16:21:48 +0000 Received: from CO1PEPF000044F9.namprd21.prod.outlook.com (2603:10b6:303:86:cafe::66) by MW4PR04CA0189.outlook.office365.com (2603:10b6:303:86::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.27 via Frontend Transport; Fri, 9 Jun 2023 16:21:48 +0000 Received: from SATLEXMB03.amd.com (165.204.84.17) by CO1PEPF000044F9.mail.protection.outlook.com (10.167.241.199) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6521.0 via Frontend Transport; Fri, 9 Jun 2023 16:21:47 +0000 Received: from SATLEXMB05.amd.com (10.181.40.146) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Fri, 9 Jun 2023 11:21:46 -0500 Received: from SATLEXMB04.amd.com (10.181.40.145) by SATLEXMB05.amd.com (10.181.40.146) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Fri, 9 Jun 2023 11:21:46 -0500 Received: from [10.71.193.39] (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server id 15.1.2375.34 via Frontend Transport; Fri, 9 Jun 2023 11:21:45 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: bd23c378-06e1-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=BI0qkqp3UPglu5VakniH1Cp5PtKPjsFM0YxpWCi3dNlmHro2dvZs99670urfTV/Go/qVEzvZvm2v18eD4xr3PPqpV3Dj5xVlK8+yH7RjAikg7KP2u/qQzzGiKX1j9J26Re03VQgqS44L5B2dCtsn/JblVMHsQ3Qutvcs5Ug1wISR6ZN0/i12Mwb4o1PR9x82fbdysQZm8cPR1Vp7uUMH83UszvDOFSkl2A/EQ9MLtdVK8xm9Jy6E1xBxwp/5Vzssimke1iEnGjcnkVF/AFcCBNaRETwym4ilp9YN1sTSZThfsR+bw+sWPqy9e5c7sDKsd6lund4l2O2NviMkl2xXEg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=RMXJzclzwmtePPxoLNGkq/Rld4HKgylg+yA34roB5Wk=; b=h8iTQVBpVo88LDLrdekPQ4Bf6zyqErZ5QlA6qBQ8XdO9mK3E5wc3vSIT2Q6KcMfq+Fwvgx52nBxcTXVu69Azw7HiVJy/hZVAfnDF6ryROBdSdAWrQAyAMEfymV5N4JML0YT7ryQayI4tno3SOcVSJKmP0mIxajn4QNd0GBq8wh8aQ1Qwp6DJispE89UBQDA3BmosTL4ExiYWquFDrc8FdAJt1usExOH21BryYj/ZXnBnWTjG2FXR76bDtmrqWbgl+vVaa/uyDFrAcVl/VpPzQ4A9VqgniP/rJxb9LkwI3rrFB9C610+6dIwd5mN9VdJOchDNvOa5u+03IChcFuM9LQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=citrix.com smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=RMXJzclzwmtePPxoLNGkq/Rld4HKgylg+yA34roB5Wk=; b=JHajrNanMoDbWIAz8taY294PVuyi8fPzqK5gIAcpDoHA6bAlSNvfnmOZtqKsdjX9vYryGWLfU4qCjCtx4eUBCOV/MGffFLjrBGNFVlHcUxb/PpUgMKgJurUJJJ24tQ/6eM04MieNggcSTDbGS0ISwZO3O0WE6LKTJ+D1vSqQDdA= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C Message-ID: <2dcb05a1-d408-e9f3-1108-a155dc3312ff@amd.com> Date: Fri, 9 Jun 2023 18:21:45 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH] CI: Add Ocaml to the alpine containers Content-Language: en-US To: Andrew Cooper , Xen-devel CC: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , "Stefano Stabellini" , Anthony PERARD References: <20230609160244.2638438-1-andrew.cooper3@citrix.com> From: Michal Orzel In-Reply-To: <20230609160244.2638438-1-andrew.cooper3@citrix.com> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO1PEPF000044F9:EE_|LV8PR12MB9081:EE_ X-MS-Office365-Filtering-Correlation-Id: ce6c0755-6bea-4b6b-b43d-08db69059fb3 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: AekhKunJraBAGWaxuMBAa5rscWwk1/coRhR69D1DZh4Cy2TX6ZONYWzAQz9ArXfZtY+wQ4Bx1Do8mICRxxt0EGBJO5Ivm9Eiyjnlbpf2kP34OhpK9H0VwJWYbXbdp7I/yRRPZCkEbggBfQiY9qZw40NoS70JnvCTOwDhNwn5aA+eCvIjguC2IchRFiQRQEyIWv4yMkp7QtA94GQpAC7lol70cFyVWVDpYFuYTYIegyjFJ0K4njG03IuFRielLm3Rv2mEyfltCXUYE3YTPh7q2H5Kdb1adU/51IhfYNwOiHn6BGtOsGQfPzj9VK/GsHWAit3fymXxWlspkwg+ZiNoPxj4e3D42kyDYi/ocORl9UJPPxBqxRkXwE8hAhJzskaaXIC6QMJgKMfOQGgnlIk7U4vTBO3aXm2gItuIPwj5aKTP3qKMWkFzDQk+nbOvS/lnwDpldgd+5P6xvV3mct4PO2/8BrqLt6bajoWQEgFolQkV9z+/a+7yndTBqjg6pxGvER8CP4sRFHVNqtXU0K4yha6FMx/YygfLOilHraQarEVtnWAwl/T6ayeOPf3NTiCUFndAh7vc3S6rxHZbrlNNQF+p4fCpz1AWrXbp7gOvtmppB4r38RnHG3ZVNTaXctCSKbHwAf5qLTqMZvY3m4WDKDw7s6SGeBh7F/e6kf2Xdu3fFnIyHk3V3xqOxiR3CiIiPEzsxRjl4E3N+Gsxj8fjejypxN+d6LDQeZN/edAOoNZFIS3G5J5EWO1dPKFT2ZunL489IeDURvpoc2QTI65CNHMiqyfNH0EOGkKoddseGVU= X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(396003)(136003)(346002)(376002)(451199021)(46966006)(36840700001)(40470700004)(83380400001)(40460700003)(336012)(47076005)(426003)(2906002)(2616005)(36860700001)(36756003)(86362001)(31696002)(82310400005)(356005)(82740400003)(81166007)(40480700001)(316002)(41300700001)(966005)(5660300002)(8936002)(186003)(8676002)(110136005)(16576012)(478600001)(54906003)(31686004)(70586007)(70206006)(4326008)(53546011)(26005)(44832011)(43740500002)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Jun 2023 16:21:47.6758 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: ce6c0755-6bea-4b6b-b43d-08db69059fb3 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com] X-MS-Exchange-CrossTenant-AuthSource: CO1PEPF000044F9.namprd21.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: LV8PR12MB9081 On 09/06/2023 18:02, Andrew Cooper wrote: > > > This gets more coverage of optional parts of the build, and makes it easier to > trial Ocaml related changes in the smoke tests. > > Signed-off-by: Andrew Cooper > --- > CC: Roger Pau Monné > CC: Stefano Stabellini > CC: Michal Orzel > CC: Anthony PERARD > > Hacked up manually to fix the Ocaml bindings for arm64: > > https://gitlab.com/xen-project/people/andyhhp/xen/-/pipelines/895162017 > > but this aspect should be done irrespective. > --- > automation/build/alpine/3.12-arm64v8.dockerfile | 2 ++ > automation/build/alpine/3.12.dockerfile | 2 ++ > 2 files changed, 4 insertions(+) > > diff --git a/automation/build/alpine/3.12-arm64v8.dockerfile b/automation/build/alpine/3.12-arm64v8.dockerfile > index 3f1e6a3fc6df..1be3bf780509 100644 > --- a/automation/build/alpine/3.12-arm64v8.dockerfile > +++ b/automation/build/alpine/3.12-arm64v8.dockerfile > @@ -28,6 +28,8 @@ RUN apk --no-cache add \ > make \ > musl-dev \ > ncurses-dev \ > + ocaml \ > + ocaml-findlib \ I can see that in your CI pipeline, this package is missing. Is it then necessary to be added? Asking just out of curiosity because other containers have it installed too. Apart from that, I can confirm that containers can be built without issues, so: Reviewed-by: Michal Orzel ~Michal From xen-devel-bounces@lists.xenproject.org Fri Jun 09 16:31:54 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 09 Jun 2023 16:31:54 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546217.852915 (Exim 4.92) (envelope-from ) id 1q7f1Z-0006Ez-AG; Fri, 09 Jun 2023 16:31:41 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546217.852915; Fri, 09 Jun 2023 16:31:41 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7f1Z-0006Es-7X; Fri, 09 Jun 2023 16:31:41 +0000 Received: by outflank-mailman (input) for mailman id 546217; Fri, 09 Jun 2023 16:31:40 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7f1Y-0006Ek-3c for xen-devel@lists.xenproject.org; Fri, 09 Jun 2023 16:31:40 +0000 Received: from esa1.hc3370-68.iphmx.com (esa1.hc3370-68.iphmx.com [216.71.145.142]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 1987a4fa-06e3-11ee-8611-37d641c3527e; Fri, 09 Jun 2023 18:31:37 +0200 (CEST) Received: from mail-dm6nam11lp2171.outbound.protection.outlook.com (HELO NAM11-DM6-obe.outbound.protection.outlook.com) ([104.47.57.171]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 09 Jun 2023 12:31:33 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by BLAPR03MB5602.namprd03.prod.outlook.com (2603:10b6:208:284::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.41; Fri, 9 Jun 2023 16:31:30 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606%4]) with mapi id 15.20.6455.030; Fri, 9 Jun 2023 16:31:30 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 1987a4fa-06e3-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686328297; h=message-id:date:from:subject:to:cc:references: in-reply-to:content-transfer-encoding:mime-version; bh=PFvtRfI3tyycNh0Y6ibUz4HAkPAtJhDaFaYJLCNFRw8=; b=Ss20PG8Kqms9HcdVAi3a5Hrr1JwB3jYoGMidazZ71OOtsKaisEQurqsW bWuZ6LZ7zKdtl7gnWRlB45Yv4WdFSN8rtGdo49FsOXusbMRHnH+JPEAFV OndgISZuSWBHpmP4c8Tw/zStFDbxqi0ljhIwOXSdPy252RpgYByOihlPT U=; X-IronPort-RemoteIP: 104.47.57.171 X-IronPort-MID: 112655484 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:ZojgJaK290LD5xuZFE+R45QlxSXFcZb7ZxGr2PjKsXjdYENS1T0Pn GYYUD3SPf3bYGumfN0iOd6y905XvsDTyN9qHQFlqX01Q3x08seUXt7xwmUcnc+xBpaaEB84t ZV2hv3odp1coqr0/0/1WlTZhSAgk/rOHvykU7Ss1hlZHWdMUD0mhQ9oh9k3i4tphcnRKw6Ws Jb5rta31GWNglaYCUpKrfrbwP9TlK6q4mhA4ARvPakjUGL2zBH5MrpOfcldEFOgKmVkNrbSb /rOyri/4lTY838FYj9yuu+mGqGiaue60Tmm0hK6aYD76vRxjnVaPpIAHOgdcS9qZwChxLid/ jnvWauYEm/FNoWU8AgUvoIx/ytWZcWq85efSZSzXFD6I+QrvBIAzt03ZHzaM7H09c5YAVBIr /I/JQkDYzGDgsSK8p+8Q8xj05FLwMnDZOvzu1lG5BSAVLMKZM6GRK/Ho9hFwD03m8ZCW+7EY NYUYiZuaxKGZABTPlAQC9Q1m+LAanvXKmUE7g7K4/dopTGMlWSd05C0WDbRUvWMSd9YgQCzo WXe8n6iKhobKMae2XyO9XfEaurnxHqhBt9PSO3knhJsqEW2gVYLNAdJbwW6i9Sot0uYBIpQO 0NBr0LCqoB3riRHVOLVWhyzoHeA+BkGSddUO+Q/5EeGza+8yxaUAC0IQyBMbPQitdQqXno62 1mRhdTrCDdz9rqPRhq17ayIpDm/PSwUK24qZiIeSwYBpd75r+kOYgnnS99iFOu5i4PzEDSpm jSS9nFh3vMUkNIB0Li98RbfmTWwq5PVTwkzoALKQmai6QA/b4mgD2C11WXmAT97BN7xZjG8U LIsxqByMMhm4UmxqRGw IronPort-HdrOrdr: A9a23:pm4Ig6g8Ytm6qXpEGwdAmQaRhnBQXh4ji2hC6mlwRA09TyX5ra 2TdZUgpHrJYVMqMk3I9uruBEDtex3hHP1OkOss1NWZPDUO0VHARO1fBOPZqAEIcBeOldK1u5 0AT0B/YueAd2STj6zBkXSF+wBL+qj6zEiq792usEuEVWtRGsVdB58SMHfiLqVxLjM2YqYRJd 6nyedsgSGvQngTZtTTPAh/YwCSz+e78q4PeHQ9dmca1DU= X-Talos-CUID: 9a23:0hwvvm2AMth1tpa0xY8RsLxfNcAUdCfT63rpLUKZCWNPdI+4Tla19/Yx X-Talos-MUID: 9a23:ZVEWcgodvOJmfE7HV34ezylHc/1w377xMh4Mu7gXhsyianR/KzjI2Q== X-IronPort-AV: E=Sophos;i="6.00,229,1681185600"; d="scan'208";a="112655484" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=ek6j03lnfIxA1rUV5mCJk5Px8APNshe89MNKV8/BUhuxochG6P++9qemxb/hglgRgm+MljnEq9ZWk+MYhdK0SyJLUr+0IqdUwgfgCMYFS+do2CUJUOD9D6/hptgBPJ+KOgL4KcQZSvRDKyBOUOPzdsBnTIXvBH9nCZ9cKm5iShk8fqjZawXkCsAoL2hdgNvG/GsJNi5hVQLmDDCwtE2J6R5zakH4f9hIGrnJUWDEDjqGkdCUwexsdxT0VWAvUG5J3D7nnRBMaOXCm2agTnblbRKpTJDdbSv+L6Ibpx1uw7pXXEYRa8raXdVGSCPL5w39E2umQBmTQ50slj4FfF/WWw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=2GXKUFISuOzwzr28Y+RztO8dzbl/qmQbueQtx8ybKJk=; b=Q0hflLDRd26AfEV4qqoowdK7msCkBVSOKqYa9zM+RyrMVBS95g3Zhn7/dzRpUTNQaFRcZhoaJyfosADBAaYqkjAMNXETSGofSPGU0zKSs6LZvgVyezI7Ilpgeq0WX/9bi5uc2SpSlYW4T3SMZEQdskoAgNJq61OcfOrhBT0VkYbT6oK0Zn7rtpwp8IDQ8KvF4lpYrBqMV7uMMoSMqzlgLSZ1E8uGBcC2YKYyuE33o9lq865hwqIJksAfexzM4gZhKkD7oJu3FBpv0+JrREygNEfMP0Fem+8crVn8nDAoIPfKhyWFdBQJPsPfI/+iDGve5Gn67lY0OsgJVdo5bErDXA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=2GXKUFISuOzwzr28Y+RztO8dzbl/qmQbueQtx8ybKJk=; b=UmEXM6wAD6OiBM6K3WfYKamfLYLPJRmyOsOQDVQ9dq8CA+NgDmz+btZ18IZOXUUotazZ3E7RlDycvrYqcWOVBxrdqfuuvix6b8RmqLfDyLhfzVB5y8zL++fx2p/JIJ8BK9o9jRycbHOTSNAV7N9sEQ+Zv6At83RzRbuxeWUob5U= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: <600bacc4-3569-10e8-0c09-d6b855c0512e@citrix.com> Date: Fri, 9 Jun 2023 17:31:24 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 From: Andrew Cooper Subject: Re: [PATCH] CI: Add Ocaml to the alpine containers Content-Language: en-GB To: Michal Orzel , Xen-devel Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Stefano Stabellini , Anthony PERARD References: <20230609160244.2638438-1-andrew.cooper3@citrix.com> <2dcb05a1-d408-e9f3-1108-a155dc3312ff@amd.com> In-Reply-To: <2dcb05a1-d408-e9f3-1108-a155dc3312ff@amd.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO6P123CA0051.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:310::7) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|BLAPR03MB5602:EE_ X-MS-Office365-Filtering-Correlation-Id: c5d7c940-dee2-4236-398c-08db6906faf1 X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: je++ScT5MbGuCJk3IjkB/XqdHvB4f96x0jGQiZFv/bYD+CDKHeFe6sio+2pareq1F4FTZCYizsZ9uWKc3XXPB9My86b/glSB6t1QvnR/Z03GtgyQYlN7tVq2H5pc6zLN94QEFjpzT6p5l8BxGIcuqAMACt9eu/hw74V3vO3jRuyZmG6Kws6wyZm/GikdT57zqeEzexY2pPqcbZCBJ5K0BaAilc21K4yIDAV6VAMV1xHQhpjLX/IpQ4upAjyc/DE6GLn5oRYLecMu7QScn+ScJxbi6n2qapu9Cx4B986b8yQJoerfiVqc2njbHpD4XmtoL5vUqfiFBFPIVGuTg6YkYDo/TQ9k7naliIurxlo2KewBTO43blDyV4eMR7Lu4rx5M20Dgs4Q+siMlrynUq14LMmyF3U/jFyApRmWDTSnGNC6WRidc7EwlCyrqBbIUyva82DT5o5q0NYKPCtnQ5clF+TlrX6/ByBCkX2PeUE5icoSf/XPJbWmY/3t+aqUZVXWtPBXVI4sw5UGghurBVh83066fvKlZp/XJt6jmRB/UKJIYGADA3oRMeqP416u8CBZrPtU0p/hUzoNnY5bEFfbObW1oAYrjDBJXFnVe+NQYHgNhZ0PRnnqmr0GfBDbBxCmfNQVWEcBCxX8xtCSSVBStQ== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(396003)(346002)(136003)(376002)(366004)(451199021)(31686004)(66476007)(66946007)(316002)(66556008)(107886003)(966005)(54906003)(4326008)(86362001)(110136005)(478600001)(36756003)(31696002)(83380400001)(6506007)(26005)(6512007)(186003)(53546011)(6486002)(41300700001)(5660300002)(8676002)(8936002)(2906002)(6666004)(82960400001)(2616005)(38100700002)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?ek9IMVBjRWJFd0NoRlZQWkM0aWllN0c4R2FlblVWN3BqWFE3cGEvYUhwc1U3?= =?utf-8?B?RUMyRWhuODRFYlE1TFJSajE5TnR5NnFxcFRja0szRkpIdDNubFJwOEluTUpx?= =?utf-8?B?SVJpM0d5NWtyQU1zWGg1dDE5ZVFYT3Y0QkJwTUx3K1hCeDlDVXM2Qy8yK0hT?= =?utf-8?B?R2ZvSVNFZ0xISkpFMVQ1bHdZR080TFgxSXRNVzdzaE5YenJLUmFCTzFNeXJu?= =?utf-8?B?RytzK1p5QWo3dG5LZVFjSTF1NXVrSisrZ2hRbjh0STE3TnpXelc2L2FYWkF5?= =?utf-8?B?Z1FwU3BVVVNrL2dGcTRmSFRvZlRrbkZZdGswOUJvdG0ySXU4NUN5Mk5Ed3F3?= =?utf-8?B?bVNqK2dpekN0M29IWDYrbzNUM1NkRFhoVWZiOTFuTExybFVDc3VvOC85N21h?= =?utf-8?B?b0RJU3Z0N3JKTGp1K2c3V0dFeTFSM0NmaGcxNmdiQmk2WFk0eWRyeDE2N0py?= =?utf-8?B?NzhkbVFIT2NidWtwU0ZDUlczWmEzRStvaDdzU3dubkpYMmZxS3MyTmxGNHFI?= =?utf-8?B?UFJleGw3YWw2TkVGM0NqYWtMa014TDUraGFRTW10WU4xWWdnRkNBZk5sbmk4?= =?utf-8?B?ZWFOOVNDTFE3a25rZmVncjRTS2lTYS9HT0J3UG5pLyt4Q2RyMjY4L2VMbXhw?= =?utf-8?B?RDFyanRPWnBGZXNBWjk1VHdScDY0aVg4VWF4M20wa25pTGZGRlBkb0o4RnBN?= =?utf-8?B?NEV2UmU2U3lkRGN4RVNhbDNhZTM5djBOemM1ay9NNjBxUHNjQlorWFBMNFNa?= =?utf-8?B?MlNzZjkrZkxZOUF5bitMM0FVU2loMjdIUThTNzF1TjRldXN5bHFMYmhFQzRZ?= =?utf-8?B?dUdLYjI2eHdWL1EvOENKYU9xeGhFU0ZERFhkaWVMTC9RVFN0QUhPdGd4T05O?= =?utf-8?B?Y3RNN2t0S0YraWJBQmFTZ2RwY2VsTmxxV1pXNE5MdSt3akJPN1NZcUdoMW9p?= =?utf-8?B?R0JaQjRDRDBHQTM3ODhsbXFna1lJc3lTZU5EMGVSai9xZGEyRW9iWjV1dldM?= =?utf-8?B?aXFTUXQwV2RLNnZ0am1jdGFVaFdMdFVSSXF1V1lud1huUkJsSWxPMEMvTlFB?= =?utf-8?B?TkIza3hqVDhmRndvOFhzNHlPTHNJSVRSYmRoVEFUNVlTQlpzMmRZd2ticGoz?= =?utf-8?B?RTg1d3I5YTNReXJRWmpUWjc2eU4xT3IrM0xKWllQM1F6TTM1V1YvbVgxR21G?= =?utf-8?B?STRsczJkTjlEVDB1SjNUWTFSOE1IcmJaYTkvTG9jUzdCQ3NxcXRVZzNrL0p3?= =?utf-8?B?cUlXbkU0a0FLS2t5bnI3QUZ2My9Eb3R2bk1BSjYwbm9hMkxDY05maU02TUVv?= =?utf-8?B?RTFGVm1NaGl3VVBSZDdwazE4RG9mSkJ1a0NsdHM3OXBEbW5CY2s3c3luZFJu?= =?utf-8?B?enE5QjFpekFZTXFEOVFvRVhUQXlxNjVzckx2Y3E3UE45Wjh2bS9FS0E4VElx?= =?utf-8?B?UndPanZwbnhxNjJFR0Q2RGlFcG0zZDkyMWNIcXBORWZvVVp4eHBab1pTODBz?= =?utf-8?B?cG1ObzBQanpDbVpXdVAwTm1TWlRZYy9pWUdzSWdzbFJMUnRmTUpjaUIydi9h?= =?utf-8?B?aGU5amxRaUV1VTJSVDEyZnA4WWtEVXFPT2JoVE55UzFKZ3MxaUp1UkNoZzZn?= =?utf-8?B?QnlYT3JXS3JiVFJJVWdka0xrNkVpMDBGS2prNmR5U3Rid3pwRm1ZdzEvWVJz?= =?utf-8?B?emJvMEJtNkF6MXA5UktFWnJjYmRQVUJyTFU4cHlIMHZMYjJUVVJwK3F0YkRL?= =?utf-8?B?M2VhZHAzbU1NNkFGejRKcmhNQk1naVB6VHFCV0prS1JYcUVOOFNxU2VzUDlK?= =?utf-8?B?Znlka25ORmJFOUZKQnB1VnNlcnVDUkI3U0lYTmE2SlJGTWRrVHlRaitwZHhT?= =?utf-8?B?Umo2NjVDS1dzNUU0N3ZTK3dUMndlSzJCaUw4ZDAzUDhRanQrZWFvVlBCS3dl?= =?utf-8?B?cTJWdHRTM2tkcHBYQ0RSOEVvMHl2WXpTRmE3dVZwcTJLQ3NZUWhXV1NKbUZp?= =?utf-8?B?Q2xBT2VHRmlTVmNsNnFrU1RkZHE1UlV2Z1M0NHdsVWtaZ2lsUy9xLy8ySm9M?= =?utf-8?B?SzQ3NjQzTWkvOFNjd0pHcHF4Ny85NDBQanNET0RxVUt2dDQrMWhuVEtaZHgv?= =?utf-8?B?OUtXR2dXdjB4NHpDa2YvZzlScUlOTnFjTElrZ1ZDbStRZGd0aW85VzQvRFdu?= =?utf-8?B?N3c9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: E2ga1yC4AOiM/aVSTOm6rw/RmUDANjZqWJopztCO5OsvJWWcV79VgmG2jylfeaY9DO54/eVWj8Cwz4L6Srrkf4MhSFOxce4ValLBZx6AX56yvVAuqsOM6aOksUnijvH+7nGT7AhNADhkY1J06NOs4ie+n5+dH06rARmllZFkvmKxZ5bx5fhNcfeREaiGyQx1crhaqKzXnqmxh2bYdv+rGuFHuwOTG0Fux6VkRMRHGUBVGP9PPJoixuVa6g+dZFerEfmGjSUMb38tpEfZUS3Fbr++0FnNdBSPEkmvrnqJ3RaX4HpslHkIof+34ESn0GIYoaznYQaKTXg2xAYkwesMCmkMGFV/aKDMbn332pf7T+ikDCkZzr9VjV2mQeQ5OXhdci/SylaVs7IwvkMcDFPm7Tga44BlpCg5RFC6KWQ2zxFZWESx+RCQDdEp+crJgWEj5vPonGDKDEUz1F3bqZ2PfVo3UJFRyypvw2Lqa/NRjJFNhNrkcAbwSmygZckqs5NYDbnr+CNs0cZf/6zQ9l90TIPPeYW0XYzlod9CmUdGBDWVE8lFjaaLs1+mvwDnxGoh+58+EHGMxOvlouOhG1W2dIhuEkD7OKxtB1a/tWnybzkQlQzkkN10CHMz3EgYxO4JRBeHS9hR5iYMGpD9GPZDn6r/TvmFDYpDH+PocFy3StpkU+IfigHMfdLTPq/FQLUbBt2Vhiflqbic8FqylRb+9YFFWVppGyHRNtT1JZBOXM+p9RjK3nTtBN2aVNJzcioDL2jmbdWhLBob/ruFJ+MhTrG1XhPj9LsGMwBG2qMBmFULFn1bFQIQWIfAi9OmT2xI2DStPXwBRoTUwqOrP99GbQ== X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: c5d7c940-dee2-4236-398c-08db6906faf1 X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Jun 2023 16:31:30.6606 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: z/cNbJMgQINFk/uh/L/bamfDKjUv3u561/iiv6hU8BonnHA9K7knGezVqdYQ+mNjAdO0H6g2TbW59Irnb6CbFmsGSF0PFivRxtwjcgPXYgI= X-MS-Exchange-Transport-CrossTenantHeadersStamped: BLAPR03MB5602 On 09/06/2023 5:21 pm, Michal Orzel wrote: > On 09/06/2023 18:02, Andrew Cooper wrote: >> This gets more coverage of optional parts of the build, and makes it easier to >> trial Ocaml related changes in the smoke tests. >> >> Signed-off-by: Andrew Cooper >> --- >> CC: Roger Pau Monné >> CC: Stefano Stabellini >> CC: Michal Orzel >> CC: Anthony PERARD >> >> Hacked up manually to fix the Ocaml bindings for arm64: >> >> https://gitlab.com/xen-project/people/andyhhp/xen/-/pipelines/895162017 >> >> but this aspect should be done irrespective. >> --- >> automation/build/alpine/3.12-arm64v8.dockerfile | 2 ++ >> automation/build/alpine/3.12.dockerfile | 2 ++ >> 2 files changed, 4 insertions(+) >> >> diff --git a/automation/build/alpine/3.12-arm64v8.dockerfile b/automation/build/alpine/3.12-arm64v8.dockerfile >> index 3f1e6a3fc6df..1be3bf780509 100644 >> --- a/automation/build/alpine/3.12-arm64v8.dockerfile >> +++ b/automation/build/alpine/3.12-arm64v8.dockerfile >> @@ -28,6 +28,8 @@ RUN apk --no-cache add \ >> make \ >> musl-dev \ >> ncurses-dev \ >> + ocaml \ >> + ocaml-findlib \ > I can see that in your CI pipeline, this package is missing. Is it then necessary to be added? > Asking just out of curiosity because other containers have it installed too. > > Apart from that, I can confirm that containers can be built without issues, so: > Reviewed-by: Michal Orzel Thanks.  It is necessary, yes. I missed it the first time around, and deployed updated container to rerun the failed job, rather than pushing a full new branch. I'm unsure why the opensuse containers have ocaml-ocamlbuild and ocaml-ocamldoc too, but that can be a mystery for another day. ~Andrew From xen-devel-bounces@lists.xenproject.org Fri Jun 09 16:56:08 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 09 Jun 2023 16:56:08 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546224.852926 (Exim 4.92) (envelope-from ) id 1q7fOy-0000VU-C7; Fri, 09 Jun 2023 16:55:52 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546224.852926; Fri, 09 Jun 2023 16:55:52 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7fOy-0000VN-7f; Fri, 09 Jun 2023 16:55:52 +0000 Received: by outflank-mailman (input) for mailman id 546224; Fri, 09 Jun 2023 16:55:50 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7fOw-0000VH-Ix for xen-devel@lists.xenproject.org; Fri, 09 Jun 2023 16:55:50 +0000 Received: from out3-smtp.messagingengine.com (out3-smtp.messagingengine.com [66.111.4.27]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 7ac49a08-06e6-11ee-b232-6b7b168915f2; Fri, 09 Jun 2023 18:55:48 +0200 (CEST) Received: from compute4.internal (compute4.nyi.internal [10.202.2.44]) by mailout.nyi.internal (Postfix) with ESMTP id 4B65F5C0056; Fri, 9 Jun 2023 12:55:46 -0400 (EDT) Received: from mailfrontend1 ([10.202.2.162]) by compute4.internal (MEProxy); Fri, 09 Jun 2023 12:55:46 -0400 Received: by mail.messagingengine.com (Postfix) with ESMTPA; Fri, 9 Jun 2023 12:55:44 -0400 (EDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 7ac49a08-06e6-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= invisiblethingslab.com; h=cc:cc:content-type:content-type:date :date:from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:sender:subject:subject:to:to; s=fm1; t= 1686329746; x=1686416146; bh=jO2lbJWjlD3AhgpqUQ7r9uAT+WfB1wgKDIz 85pj33i8=; b=CFe8GJvCu68K0tqO7GAJP6Ph6cIOC2pvsTRjyaNHLMrLHIqfIrj YNX4nMFHKqrYV/DXSlCwpi/YUqseg+9pvjoePMDxNbtwMAYglhGHcinU27Lv4Nge iprtLLfS05YW420koXxSramZzljJ13kMSyGpcQDKMLu+l2UpLKoIW7JUnoBCC9w5 3WvQIwc30hDHL3STx5A28AG2gToQmSA/81lgiZGC1aVYYYhhynIITnwaqL0kUcit UhqG2xxdv1xqUDE5CCezw2JSimg7m0Kw4MwAkbJSKmeaGTvh3NFF6JEgdWq7uHem vm82rr1PCA10l657SPM1nZh1AJkv1cwWAsg== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-type:content-type:date:date :feedback-id:feedback-id:from:from:in-reply-to:in-reply-to :message-id:mime-version:references:reply-to:sender:subject :subject:to:to:x-me-proxy:x-me-proxy:x-me-sender:x-me-sender :x-sasl-enc; s=fm1; t=1686329746; x=1686416146; bh=jO2lbJWjlD3Ah gpqUQ7r9uAT+WfB1wgKDIz85pj33i8=; b=w8IbCCCTVKAFYoq8dgC972pYva5Rb mmPzwOwxgvYmOjUrELKiPGAM6xKit7KvVC5+LMnxgjZkkmXhX1BMtuM2vE7mcPAk GUqBi3l7H46V8uaxggrhYHTiA+8rd8QGK4hoNe2gFaEUH0ZKdpuXoyZ8a4V2r3Ff IQDBDuoVWMv/DvmZpg2ksqgOXP5ejpSurUM3D16H09COGtmlebrbEamBJ6dslAX0 E49uxqb41lq3OyLIbhztPb7oS54B1kP5qaV+P/G5OMka82JA2Ht8ZO3dqTj1P1kq 9/IbitskUvdGmOc2M5SWosWh4pucYOXQ5ISBq/itbcv/bowxxPPCfBhrQ== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvhedrgedtkedguddtjecutefuodetggdotefrod ftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfgh necuuegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmd enucfjughrpeffhffvvefukfhfgggtuggjsehgtderredttdejnecuhfhrohhmpeffvghm ihcuofgrrhhivgcuqfgsvghnohhurhcuoeguvghmihesihhnvhhishhisghlvghthhhinh hgshhlrggsrdgtohhmqeenucggtffrrghtthgvrhhnpedvjeetgeekhfetudfhgfetffeg fffguddvgffhffeifeeikeektdehgeetheffleenucevlhhushhtvghrufhiiigvpedtne curfgrrhgrmhepmhgrihhlfhhrohhmpeguvghmihesihhnvhhishhisghlvghthhhinhhg shhlrggsrdgtohhm X-ME-Proxy: Feedback-ID: iac594737:Fastmail Date: Fri, 9 Jun 2023 12:55:39 -0400 From: Demi Marie Obenour To: Roger Pau =?utf-8?B?TW9ubsOp?= Cc: Jens Axboe , Alasdair Kergon , Mike Snitzer , dm-devel@redhat.com, Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= , linux-block@vger.kernel.org, linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org Subject: Re: [PATCH v2 13/16] xen-blkback: Implement diskseq checks Message-ID: References: <20230530203116.2008-1-demi@invisiblethingslab.com> <20230530203116.2008-14-demi@invisiblethingslab.com> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha512; protocol="application/pgp-signature"; boundary="Ii0jDpZ9bgT07th0" Content-Disposition: inline In-Reply-To: --Ii0jDpZ9bgT07th0 Content-Type: text/plain; protected-headers=v1; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Date: Fri, 9 Jun 2023 12:55:39 -0400 From: Demi Marie Obenour To: Roger Pau =?utf-8?B?TW9ubsOp?= Cc: Jens Axboe , Alasdair Kergon , Mike Snitzer , dm-devel@redhat.com, Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= , linux-block@vger.kernel.org, linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org Subject: Re: [PATCH v2 13/16] xen-blkback: Implement diskseq checks On Fri, Jun 09, 2023 at 05:13:45PM +0200, Roger Pau Monn=C3=A9 wrote: > On Thu, Jun 08, 2023 at 11:33:26AM -0400, Demi Marie Obenour wrote: > > On Thu, Jun 08, 2023 at 10:29:18AM +0200, Roger Pau Monn=C3=A9 wrote: > > > On Wed, Jun 07, 2023 at 12:14:46PM -0400, Demi Marie Obenour wrote: > > > > On Wed, Jun 07, 2023 at 10:20:08AM +0200, Roger Pau Monn=C3=A9 wrot= e: > > > > > On Tue, Jun 06, 2023 at 01:01:20PM -0400, Demi Marie Obenour wrot= e: > > > > > > On Tue, Jun 06, 2023 at 10:25:47AM +0200, Roger Pau Monn=C3=A9 = wrote: > > > > > > > On Tue, May 30, 2023 at 04:31:13PM -0400, Demi Marie Obenour = wrote: > > > > > > > Also, you tie this logic to the "physical-device" watch, which > > > > > > > strictly implies that the "diskseq" node must be written to x= enstore > > > > > > > before the "physical-device" node. This seems fragile, but I= don't > > > > > > > see much better optiono since the "diskseq" is optional. > > > > > >=20 > > > > > > What about including the diskseq in the "physical-device" node?= Perhaps > > > > > > use diskseq@major:minor syntax? > > > > >=20 > > > > > Hm, how would you know whether the blkback instance in the kernel > > > > > supports the diskseq syntax in physical-device? > > > >=20 > > > > That=E2=80=99s what the next patch is for =F0=9F=99=82. > > >=20 > > > Hm, I think we should separate diskseq support from the notify open > > > stuff: it's possible a different (non-Linux) backend wants to > > > implement open notify support but doesn't have diskseq. > >=20 > > I like this idea! What about having blkback set diskseq to zero? > > Userspace could then replace it with the actual value. >=20 > I think it would be better if we used a sysfs node, because blkfront > has no business is knowing whether diskseq is supported by the > backend or not. >=20 > xenstore should be reserved to features exposed between blkfront and > blkback if possible. I know we haven't been very good at this > however. >=20 > > > > > Can you fetch a disk using a diskseq identifier? > > > >=20 > > > > Not yet, although I have considered adding this ability. It would = be > > > > one step towards a =E2=80=9Cdiskseqfs=E2=80=9D that userspace could= use to open a device > > > > by diskseq. > > > >=20 > > > > > Why I understand that this is an extra safety check in order to a= ssert > > > > > blkback is opening the intended device, is this attempting to fix= some > > > > > existing issue? > > > >=20 > > > > Yes, it is. I have a block script (written in C) that validates the > > > > device it has opened before passing the information to blkback. It= uses > > > > the diskseq to do this, but for that protection to be complete, blk= back > > > > must also be aware of it. > > >=20 > > > But if your block script opens the device, and keeps it open until > > > blkback has also taken a reference to it, there's no way such device > > > could be removed and recreated in the window you point out above, as > > > there's always a reference on it taken? > >=20 > > This assumes that the block script is not killed in the meantime, > > which is not a safe assumption due to timeouts and the OOM killer. >=20 > Doesn't seem very reliable to use with delete-on-close either then. That=E2=80=99s actually the purpose of delete-on-close! It ensures that if= the block script gets killed, the device is automatically cleaned up. > > > > > I'm not sure I see how the major:minor numbers would point to a > > > > > different device than the one specified by the toolstack unless t= he > > > > > admin explicitly messes with the devices before blkback has got t= ime > > > > > to open them. But then the admin can already do pretty much > > > > > everything it wants with the system. > > > >=20 > > > > Admins typically refer to e.g. device-mapper devices by name, not by > > > > major:minor number. If a device is destroyed and recreated right a= s the > > > > block script is running, this race condition can occur. > > >=20 > > > Right, but what about this device recreation happening after the admin > > > has written the guest config file but before the call to (lib)xl > > > happens? blkback would also end up using a different device than > > > indented, and your proposed approach doesn't fix this. The only way = to > > > solve this would be to reference devices by UUID (iow: diskseq) > > > directly in the guest config file. > >=20 > > That would be a good idea, but it is orthogonal to this patch. My > > script opens the device and uses various means to check that it did > > open the correct device. It then passes the diskseq to blkback. >=20 > How you do this with losetup? I guess there's an atomic way to setup > a loop device and get its diskseq? It can=E2=80=99t be done with losetup. I use a C program that directly issues ioctls to /dev/loop-control and /dev/loop*. Doing this with device-mapper requires kernel patches that have been submitted but are not yet upstream. > > > Then the block script will open the device by diskseq and pass the > > > major:minor numbers to blkback. > >=20 > > Alternatively, the toolstack could write both the diskseq and > > major:minor numbers and be confident that it is referring to the > > correct device, no matter how long ago it got that information. > > This could be quite useful for e.g. one VM exporting a device to > > another VM by calling losetup(8) and expecting a human to make a > > decision based on various properties about the device. In this > > case there is no upper bound on the race window. >=20 > Instead of playing with xenstore nodes, it might be better to simply > have blkback export on sysfs the diskseq of the opened device, and let > the block script check whether that's correct or not. That implies > less code in the kernel side, and doesn't pollute xenstore. This would require that blkback delay exposing the device to the frontend until the block script has checked that the diskseq is correct. Much simpler for the block script to provide the diskseq in xenstore. If you want to avoid an extra xenstore node, I can make the diskseq part of the physical-device node. --=20 Sincerely, Demi Marie Obenour (she/her/hers) Invisible Things Lab --Ii0jDpZ9bgT07th0 Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQIzBAEBCgAdFiEEdodNnxM2uiJZBxxxsoi1X/+cIsEFAmSDWY8ACgkQsoi1X/+c IsG4QxAA2SL5LAC2MiiRag652Tx+P83kIuMlP80Tw9d8diHvH0RXigUlTyFfvfWs I9kGjhjt+uLbxPwlyKxkEh4V6DqUjfOE7UP1gfIDy7e1kTJAv09LT/lXII5Bw/0f YihsdqSa9TwI19LxinadkWk213EgtmZPGE0jp6r6DU897mzg6mHsL94mo5PxmAMM MRRhQRABTHhggZLCx/JghFfb+C8CXO9mf88vAvClPwTs4BAYZrZG1R2g+Z6i8mHb y5Hk2++ImNB3FNT8j+dZKT9NdEqAXg8CHaOB5XsMcd4FFAeiFkFOCWr4n/4tRxAJ nJMgOIfAYFguSHz8UY2tenMh460dbtlKaE2YTKiS9vpCw7AZ+hSQIW/pysiTT0DO ZrLu3Vri6iWiDWOFx9gpoPR13/j07vlJyCG8Xo6yc4E/JPqUXKZrg8pZtiPmaLe7 XLp+aLPyxTEGQqteROkZe6ZxdawI/DLcmHEc9xbR1iBtWCkBK0J9r5tg/N5nySKE RB40g9w94ZDkFTBDKZ1PrKWgu3FydVA+hZDMXJuNdl6XLOaGZQuaRUAw1pkB3ING /wxwQAFqkQCO51XPGKnNX3kwSJkedsMTYcLN8dtcsZ69IXq0sBpsbScVTjyYlVqE kQL6JEfCjZLiTQIVnwoSmcFmtun9Z+cS3t4RSeLUJHFuM9pJ/mo= =SvFi -----END PGP SIGNATURE----- --Ii0jDpZ9bgT07th0-- From xen-devel-bounces@lists.xenproject.org Fri Jun 09 17:19:22 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 09 Jun 2023 17:19:22 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546233.852942 (Exim 4.92) (envelope-from ) id 1q7flS-00038C-82; Fri, 09 Jun 2023 17:19:06 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546233.852942; Fri, 09 Jun 2023 17:19:06 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7flS-000385-4P; Fri, 09 Jun 2023 17:19:06 +0000 Received: by outflank-mailman (input) for mailman id 546233; Fri, 09 Jun 2023 17:19:05 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7flR-00037v-1i; Fri, 09 Jun 2023 17:19:05 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7flQ-00025e-QY; Fri, 09 Jun 2023 17:19:04 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7flQ-0006J7-FS; Fri, 09 Jun 2023 17:19:04 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q7flQ-0005DM-F1; Fri, 09 Jun 2023 17:19:04 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=T5KtBU2LBcod6Cwr/hEFd/QAFlEnM9VGGYBg5f5aBaw=; b=OLpv/IRlOtEFRW74gldTdVZjAt f74nM2L6eAMFlz44JzrAMO0MQEishxT/5dS9YBcWKgTdoS5FaaywnVtVfCX8Uy0z44WSvsJNq++7m hCXPoJq+sUVgtfa1V6SkBgK1TrYzPpdfTSnCxoaFpDu6BE3UOZ0J6hU/l4TOD6TW3ApY=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable-smoke test] 181344: regressions - FAIL X-Osstest-Failures: xen-unstable-smoke:build-arm64-xsm:xen-build:fail:regression xen-unstable-smoke:build-armhf:xen-build:fail:regression xen-unstable-smoke:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking xen-unstable-smoke:test-armhf-armhf-xl:build-check(1):blocked:nonblocking xen-unstable-smoke:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking X-Osstest-Versions-This: xen=3a82e4501c4ec4d53b764c5b69955997b03d1137 X-Osstest-Versions-That: xen=64a647f8d817c6989edc000613b5afae19f03f99 From: osstest service owner Date: Fri, 09 Jun 2023 17:19:04 +0000 flight 181344 xen-unstable-smoke real [real] http://logs.test-lab.xenproject.org/osstest/logs/181344/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-arm64-xsm 6 xen-build fail REGR. vs. 181233 build-armhf 6 xen-build fail REGR. vs. 181233 Tests which did not succeed, but are not blocking: test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 15 migrate-support-check fail never pass version targeted for testing: xen 3a82e4501c4ec4d53b764c5b69955997b03d1137 baseline version: xen 64a647f8d817c6989edc000613b5afae19f03f99 Last test of basis 181233 2023-06-07 02:04:37 Z 2 days Failing since 181246 2023-06-07 11:02:03 Z 2 days 26 attempts Testing same since 181342 2023-06-09 14:01:58 Z 0 days 2 attempts ------------------------------------------------------------ People who touched revisions under test: Andrew Cooper Christian Lindig George Dunlap Henry Wang # CHANGELOG Juergen Gross Julien Grall Luca Fancellu Michal Orzel Roger Pau Monne Roger Pau Monné Stefano Stabellini jobs: build-arm64-xsm fail build-amd64 pass build-armhf fail build-amd64-libvirt pass test-armhf-armhf-xl blocked test-arm64-arm64-xl-xsm blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-libvirt pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 520 lines long.) From xen-devel-bounces@lists.xenproject.org Fri Jun 09 17:25:52 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 09 Jun 2023 17:25:52 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546240.852952 (Exim 4.92) (envelope-from ) id 1q7frv-0004aX-UG; Fri, 09 Jun 2023 17:25:47 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546240.852952; Fri, 09 Jun 2023 17:25:47 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7frv-0004aQ-Qp; Fri, 09 Jun 2023 17:25:47 +0000 Received: by outflank-mailman (input) for mailman id 546240; Fri, 09 Jun 2023 17:25:46 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7fru-0004aK-LA for xen-devel@lists.xenproject.org; Fri, 09 Jun 2023 17:25:46 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id a9e544d1-06ea-11ee-b232-6b7b168915f2; Fri, 09 Jun 2023 19:25:44 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 463A065A5B; Fri, 9 Jun 2023 17:25:43 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id D490DC433D2; Fri, 9 Jun 2023 17:25:41 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: a9e544d1-06ea-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1686331542; bh=RX69Y0FSjLL53f1wPtReDbHfnjpJclXyqjiIQ++yx7k=; h=Date:From:To:cc:Subject:In-Reply-To:References:From; b=p4y9W7sezqY67RWQGZVFlozPPH4GPKmmQDM6ZPgF3zHbeX4S6NLfokuoUDesa1f8B D70oYil+gxMLspy83LamO9zukd9yMZRha6lhLvYfvYVWCDBBAiL09caHB4bjxqekWY VMLLZFr5cuFZ0FGJE/T+q/2GfujJg4Xyz9bKuyphmigbnrmh1N6mwHMdDdF57pdjdq yqVQp3TyzeBuSRQNcqACYzq9keWzpKYSspyheAYv86YdfEA/4vg+JV0eJ4WRh34+ox YA1MTF3ZohfwXmmF626N4cu1fLg0pYCw3SOuqxzM9iDx3/m+WhiEpcS4ahsb240cFZ uQJIKJM/7E0MQ== Date: Fri, 9 Jun 2023 10:25:40 -0700 (PDT) From: Stefano Stabellini X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop To: Michal Orzel cc: Andrew Cooper , Xen-devel , =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= , Stefano Stabellini , Anthony PERARD Subject: Re: [PATCH] CI: Add Ocaml to the alpine containers In-Reply-To: <2dcb05a1-d408-e9f3-1108-a155dc3312ff@amd.com> Message-ID: References: <20230609160244.2638438-1-andrew.cooper3@citrix.com> <2dcb05a1-d408-e9f3-1108-a155dc3312ff@amd.com> User-Agent: Alpine 2.22 (DEB 394 2020-01-19) MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="8323329-1715814792-1686331542=:3803068" This message is in MIME format. The first part should be readable text, while the remaining parts are likely unreadable without MIME-aware tools. --8323329-1715814792-1686331542=:3803068 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8BIT On Fri, 9 Jun 2023, Michal Orzel wrote: > On 09/06/2023 18:02, Andrew Cooper wrote: > > > > > > This gets more coverage of optional parts of the build, and makes it easier to > > trial Ocaml related changes in the smoke tests. > > > > Signed-off-by: Andrew Cooper > > --- > > CC: Roger Pau Monné > > CC: Stefano Stabellini > > CC: Michal Orzel > > CC: Anthony PERARD > > > > Hacked up manually to fix the Ocaml bindings for arm64: > > > > https://gitlab.com/xen-project/people/andyhhp/xen/-/pipelines/895162017 > > > > but this aspect should be done irrespective. > > --- > > automation/build/alpine/3.12-arm64v8.dockerfile | 2 ++ > > automation/build/alpine/3.12.dockerfile | 2 ++ > > 2 files changed, 4 insertions(+) > > > > diff --git a/automation/build/alpine/3.12-arm64v8.dockerfile b/automation/build/alpine/3.12-arm64v8.dockerfile > > index 3f1e6a3fc6df..1be3bf780509 100644 > > --- a/automation/build/alpine/3.12-arm64v8.dockerfile > > +++ b/automation/build/alpine/3.12-arm64v8.dockerfile > > @@ -28,6 +28,8 @@ RUN apk --no-cache add \ > > make \ > > musl-dev \ > > ncurses-dev \ > > + ocaml \ > > + ocaml-findlib \ > I can see that in your CI pipeline, this package is missing. Is it then necessary to be added? > Asking just out of curiosity because other containers have it installed too. > > Apart from that, I can confirm that containers can be built without issues, so: > Reviewed-by: Michal Orzel Acked-by: Stefano Stabellini --8323329-1715814792-1686331542=:3803068-- From xen-devel-bounces@lists.xenproject.org Fri Jun 09 17:45:00 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 09 Jun 2023 17:45:00 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546245.852961 (Exim 4.92) (envelope-from ) id 1q7gAK-00071z-Bo; Fri, 09 Jun 2023 17:44:48 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546245.852961; Fri, 09 Jun 2023 17:44:48 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7gAK-00071s-9B; Fri, 09 Jun 2023 17:44:48 +0000 Received: by outflank-mailman (input) for mailman id 546245; Fri, 09 Jun 2023 17:44:46 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7gAI-00071m-C5 for xen-devel@lists.xenproject.org; Fri, 09 Jun 2023 17:44:46 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 518347c0-06ed-11ee-b232-6b7b168915f2; Fri, 09 Jun 2023 19:44:44 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 88D7665382; Fri, 9 Jun 2023 17:44:43 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id C0994C433EF; Fri, 9 Jun 2023 17:44:41 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 518347c0-06ed-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1686332683; bh=VhfYQRK+S/HYzrGp924Xfk/CeSYupNJOtXkxXcO9G5Q=; h=Date:From:To:cc:Subject:In-Reply-To:References:From; b=LBSatMh6I72V1ym7anafYB8QlIgU8zr9EgTwXcvBKaCP/fzJZBHont2gjkMSoUBGn ymiXR99jXmKDJgnSM6UQgpQB6in4D06gqA8wVeWJkOsACrux+NUQJfK0gaYZRvEQ6e gKd5w7e5W1FJ8QT70Dm0HX+V+3Llhp+bZ6bh+BIINuniiNuTh7ncz8vx9dQrSPqk+3 0RBS02W2+eZwgoVlBtSbEy6hv3llAWeD/nC/y/MKFoud6YHd+rDJvX180tGhHJEoHR lFvDB+IJYSEb7m+lfzM8iuVZpbInWDspubByel78i8tJeEDQsXkBNPlfCk79sRJLPr 5PHdSvWcULo3A== Date: Fri, 9 Jun 2023 10:44:40 -0700 (PDT) From: Stefano Stabellini X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop To: Jan Beulich cc: Roberto Bagnara , julien@xen.org, andrew.cooper3@citrix.com, roger.pau@citrix.com, bertrand.marquis@arm.com, Stefano Stabellini , xen-devel@lists.xenproject.org, Stefano Stabellini Subject: Re: [PATCH] docs/misra: new rules addition In-Reply-To: <6a8f2634-8580-e757-c57e-821387642fdc@suse.com> Message-ID: References: <20230607013810.3385316-1-sstabellini@kernel.org> <955f134b-75b8-f8a4-2e02-ae6def536ffb@suse.com> <6a8f2634-8580-e757-c57e-821387642fdc@suse.com> User-Agent: Alpine 2.22 (DEB 394 2020-01-19) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII On Fri, 9 Jun 2023, Jan Beulich wrote: > On 08.06.2023 13:02, Roberto Bagnara wrote: > > On 07/06/23 23:53, Stefano Stabellini wrote: > >> On Wed, 7 Jun 2023, Jan Beulich wrote: > >>>> + * - `Rule 5.6 `_ > >>>> + - Required > >>>> + - A typedef name shall be a unique identifier > >>>> + - > >>> > >>> Considering that the rule requires uniqueness across the entire code > >>> base (and hence precludes e.g. two functions having identically named > >>> local typedefs), I'm a little puzzled this was adopted. I for one > >>> question that a use like the one mentioned is really at risk of being > >>> confusing. Instead I think that the need to change at least one of > >>> the names is at risk of making the code less readable then, even if > >>> ever so slightly. (All of this said - I don't know if we have any > >>> violations of this rule.) > >> > >> I don't think we have many local typedefs and I think we have only few > >> violations if I remember right. I'll let Roberto confirm how many. This > >> rule was considered not a difficult rule (some difficult rules were > >> found, namely 2.1, 5.5 and 7.4.) > > > > There currently are 30 violations for ARM64: > > > > - some involve a typedef module_name (in the call it was said this should > > be renamed module_name_t, which will solve the issue); > > - most concern repeated typedefs (UINT64 and similar) which are repeated > > in xen/arch/arm/include/asm/arm64/efibind.h > > and xen/include/acpi/actypes.h > > - ret_t and phys_addr_t are also redefined in a couple of places. > > > > There are 90 violations for X86_64, for the same reasons, plus > > > > - another set of typedefs for basic types (such as u8); > > - repeated typedefs for things like guest_l1e_t in the same header file: > > > > xen/arch/x86/include/asm/guest_pt.h:60.39-60.49: > > for program `xen/.xen-syms.0', the identifier for typedef `guest_l1e_t' is reused > > xen/arch/x86/include/asm/guest_pt.h:128.22-128.32: > > for program `xen/.xen-syms.0', the identifier for typedef `guest_l1e_t' is reused > > > > The indicated lines read as follows: > > > > typedef struct { guest_intpte_t l1; } guest_l1e_t; > > typedef l1_pgentry_t guest_l1e_t; > > So this is an example where I don't think we can sensibly do away with the > re-use of the same typedef name: We use it so we can build the same source > files multiple ways, dealing with different paging modes guests may be in. Maybe we can have a quick discussion on Rule 5.6 during the next meeting. In the meantime, I'll resend the patch without Rule 5.6 and additing the extra types in the notes for 6.1. From xen-devel-bounces@lists.xenproject.org Fri Jun 09 17:45:52 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 09 Jun 2023 17:45:52 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546249.852971 (Exim 4.92) (envelope-from ) id 1q7gBM-0007Yj-Kx; Fri, 09 Jun 2023 17:45:52 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546249.852971; Fri, 09 Jun 2023 17:45:52 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7gBM-0007Yc-I8; Fri, 09 Jun 2023 17:45:52 +0000 Received: by outflank-mailman (input) for mailman id 546249; Fri, 09 Jun 2023 17:45:50 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7gBK-0007Qh-JK for xen-devel@lists.xenproject.org; Fri, 09 Jun 2023 17:45:50 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 77adf362-06ed-11ee-8611-37d641c3527e; Fri, 09 Jun 2023 19:45:48 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id AEF1260FD7; Fri, 9 Jun 2023 17:45:47 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id E635CC433EF; Fri, 9 Jun 2023 17:45:45 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 77adf362-06ed-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1686332747; bh=dqfiNuKNAwHmTD6p7fTf0hehefrrkpHdKFChwJoI6SQ=; h=From:To:Cc:Subject:Date:From; b=B9zzudKRneFaC8kmI+9nmceyDjQirLwWLf+WU36xxZhJ+rkl3wfWp03EpjqkW4iE1 r00UfXjefV4ujty70WXYNxESh2AFTYVMCT9LsA6pw2MnRUgZBH47B6QmM/engHnNur SC7PDErXHja6W05reeWHVNF3Wi4OLmmzkP6+qR3CPFOJqoKq9ai9NhwbC4Hr1GCFsw evAyWMCDqXdX/Ga5Ao9IeeNKeFR0/9SH9pACfAGc+xHpPDBInA5u/tYXoqHV69xZxU lYFOURvV4eMpC5NnkqRwFgH/iHVRz5th/qyy/BXUUGUQWyId1LEONTInBqudtMxAm2 rhjg43kqjKbfA== From: Stefano Stabellini To: xen-devel@lists.xenproject.org Cc: sstabellini@kernel.org, jbeulich@suse.com, julien@xen.org, andrew.cooper3@citrix.com, roger.pau@citrix.com, bertrand.marquis@arm.com, roberto.bagnara@bugseng.com, Stefano Stabellini Subject: [PATCH v2] docs/misra: new rules addition Date: Fri, 9 Jun 2023 10:45:43 -0700 Message-Id: <20230609174543.4067574-1-sstabellini@kernel.org> X-Mailer: git-send-email 2.25.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit From: Stefano Stabellini For Dir 1.1, a document describing all implementation-defined behaviour (i.e. gcc-specific behavior) will be added to docs/misra, also including implementation-specific (gcc-specific) appropriate types for bit-field relevant to Rule 6.1. Rule 21.21 is lacking an example on gitlab but the rule is straightforward: we don't use stdlib at all in Xen. Signed-off-by: Stefano Stabellini --- Changes in v2: - drop 5.6 - specify additional appropriate types for 6.1 --- docs/misra/rules.rst | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/docs/misra/rules.rst b/docs/misra/rules.rst index d5a6ee8cb6..8be6868496 100644 --- a/docs/misra/rules.rst +++ b/docs/misra/rules.rst @@ -40,6 +40,12 @@ existing codebase are work-in-progress. - Summary - Notes + * - `Dir 1.1 `_ + - Required + - Any implementation-defined behaviour on which the output of the + program depends shall be documented and understood + - + * - `Dir 2.1 `_ - Required - All source files shall compile without any compilation errors @@ -57,6 +63,13 @@ existing codebase are work-in-progress. header file being included more than once - + * - `Dir 4.11 `_ + - Required + - The validity of values passed to library functions shall be checked + - We do not have libraries in Xen (libfdt and others are not + considered libraries from MISRA C point of view as they are + imported in source form) + * - `Dir 4.14 `_ - Required - The validity of values received from external sources shall be @@ -133,6 +146,13 @@ existing codebase are work-in-progress. headers (xen/include/public/) are allowed to retain longer identifiers for backward compatibility. + * - `Rule 6.1 `_ + - Required + - Bit-fields shall only be declared with an appropriate type + - In addition to the C99 types, we also consider appropriate types: + unsigned char, unsigned short, unsigned long, unsigned long long, + enum. + * - `Rule 6.2 `_ - Required - Single-bit named bit fields shall not be of a signed type @@ -143,6 +163,12 @@ existing codebase are work-in-progress. - Octal constants shall not be used - + * - `Rule 7.2 `_ + - Required + - A "u" or "U" suffix shall be applied to all integer constants + that are represented in an unsigned type + - + * - `Rule 7.3 `_ - Required - The lowercase character l shall not be used in a literal suffix @@ -314,6 +340,11 @@ existing codebase are work-in-progress. used following a subsequent call to the same function - + * - Rule 21.21 + - Required + - The Standard Library function system of shall not be used + - + * - `Rule 22.2 `_ - Mandatory - A block of memory shall only be freed if it was allocated by means of a -- 2.25.1 From xen-devel-bounces@lists.xenproject.org Fri Jun 09 17:53:17 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 09 Jun 2023 17:53:17 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546257.852982 (Exim 4.92) (envelope-from ) id 1q7gIJ-0000ky-FS; Fri, 09 Jun 2023 17:53:03 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546257.852982; Fri, 09 Jun 2023 17:53:03 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7gIJ-0000kr-CB; Fri, 09 Jun 2023 17:53:03 +0000 Received: by outflank-mailman (input) for mailman id 546257; Fri, 09 Jun 2023 17:53:02 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7gII-0000kl-0a for xen-devel@lists.xenproject.org; Fri, 09 Jun 2023 17:53:02 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7gIH-0002pA-47; Fri, 09 Jun 2023 17:53:01 +0000 Received: from 54-240-197-225.amazon.com ([54.240.197.225] helo=[192.168.17.204]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1q7gIG-0001ST-Ui; Fri, 09 Jun 2023 17:53:01 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=XuYm4ZYL23yn6SmBdxQWXOSBURGKR5dA2aWd/Zbj6gA=; b=riRR8UFtMC2HOdFBkapUZC45C9 cDgGLeed/v3CLuX4m4dvX5hkKt95oZMYXu+pqeHfOXEUSxuPvYJdACHJgi6eY8jqb5V8sXIfSpA7S lNFeYQDrr8o1ebcF+InhbSJTn+S/Itkqzu7K5NacMsSgdclIR+cBMdpVN6YMphTiZbho=; Message-ID: <920df8b2-e097-7558-bf92-5e7e4a13f450@xen.org> Date: Fri, 9 Jun 2023 18:52:59 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.11.2 Subject: Re: [PATCH v3 03/16] tools/xenstore: modify interface of create_hashtable() Content-Language: en-US To: Juergen Gross , xen-devel@lists.xenproject.org Cc: Wei Liu , Anthony PERARD References: <20230530085418.5417-1-jgross@suse.com> <20230530085418.5417-4-jgross@suse.com> From: Julien Grall In-Reply-To: <20230530085418.5417-4-jgross@suse.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi Juergen, On 30/05/2023 09:54, Juergen Gross wrote: > The minsize parameter of create_hashtable() doesn't have any real use > case for Xenstore, so drop it. > > For better talloc_report_full() diagnostic output add a name parameter > to create_hashtable(). > > Signed-off-by: Juergen Gross Reviewed-by: Julien Grall Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Fri Jun 09 17:56:40 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 09 Jun 2023 17:56:40 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546262.852991 (Exim 4.92) (envelope-from ) id 1q7gLl-0001Mr-Sh; Fri, 09 Jun 2023 17:56:37 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546262.852991; Fri, 09 Jun 2023 17:56:37 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7gLl-0001Mk-Ph; Fri, 09 Jun 2023 17:56:37 +0000 Received: by outflank-mailman (input) for mailman id 546262; Fri, 09 Jun 2023 17:56:37 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7gLl-0001Me-15 for xen-devel@lists.xenproject.org; Fri, 09 Jun 2023 17:56:37 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7gLk-0002sK-9H; Fri, 09 Jun 2023 17:56:36 +0000 Received: from 54-240-197-233.amazon.com ([54.240.197.233] helo=[192.168.17.204]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1q7gLk-0001fi-3v; Fri, 09 Jun 2023 17:56:36 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=I/XAB7XbzKAPGLD1rbBRO0QeAiPswmqeLhHJ7ZZ8eiU=; b=cnpG3GsSQ+9Sng4vzAYL2SjlYb D7KtE1tW5wGPgtg4i1UqZYc9QJORAG4lYuDdcZJvQadQaGTWyOtIC5x/Iw96RzsCWzp1RyGuCat7s YFwo/EorQ4Fyxj7Ehc4NG4OXQghnyGgvaJd6IcCgua7vvzmd3RHzvkfIPumVC2k0difI=; Message-ID: Date: Fri, 9 Jun 2023 18:56:34 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.11.2 Subject: Re: [PATCH v3 04/16] tools/xenstore: rename hashtable_insert() and let it return 0 on success Content-Language: en-US To: Juergen Gross , xen-devel@lists.xenproject.org Cc: Wei Liu , Anthony PERARD References: <20230530085418.5417-1-jgross@suse.com> <20230530085418.5417-5-jgross@suse.com> From: Julien Grall In-Reply-To: <20230530085418.5417-5-jgross@suse.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi Juergen, On 30/05/2023 09:54, Juergen Gross wrote: > Today hashtable_insert() returns 0 in case of an error. Change that to > let it return an errno value in the error case and 0 in case of success. > In order to avoid any missed return value checks or related future > backport errors, rename hashtable_insert() to hashtable_add(). > > Even if not used today, do the same switch for the return value of > hashtable_expand(). > > Signed-off-by: Juergen Gross Reviewed-by: Julien Grall Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Fri Jun 09 18:00:32 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 09 Jun 2023 18:00:32 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546267.853001 (Exim 4.92) (envelope-from ) id 1q7gPP-0002tO-BY; Fri, 09 Jun 2023 18:00:23 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546267.853001; Fri, 09 Jun 2023 18:00:23 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7gPP-0002tH-8I; Fri, 09 Jun 2023 18:00:23 +0000 Received: by outflank-mailman (input) for mailman id 546267; Fri, 09 Jun 2023 18:00:21 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7gPN-0002tB-M0 for xen-devel@lists.xenproject.org; Fri, 09 Jun 2023 18:00:21 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7gPM-00032j-TI; Fri, 09 Jun 2023 18:00:20 +0000 Received: from 54-240-197-225.amazon.com ([54.240.197.225] helo=[192.168.17.204]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1q7gPM-0001u8-Nr; Fri, 09 Jun 2023 18:00:20 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=aXjxcn4Q8Zd5Qow0SPt6mlNBLyPM0AeGkZHrvKTcPrE=; b=6nwDzkykmjWReVsNJkfIfY+3qs ci1Hcx6hMe/tB5beSrCSm3ToO8wmHMXgxfEyb+ewdr6IsJYt0JOYOhni6hRCT8sJppyRDXcHFqLYC ZcU9iWn6I4ljkdbNTnxQ/Z9Hsb0rKS+9sFTrDDHqSQ2/ILjkkv+PeWf/5m1aw6AXXPhg=; Message-ID: <42ab7c98-3672-13a5-8a76-fe33c4682d93@xen.org> Date: Fri, 9 Jun 2023 19:00:19 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.11.2 Subject: Re: [PATCH v3 05/16] tools/xenstore: make some write limit functions static Content-Language: en-US To: Juergen Gross , xen-devel@lists.xenproject.org Cc: Wei Liu , Anthony PERARD References: <20230530085418.5417-1-jgross@suse.com> <20230530085418.5417-6-jgross@suse.com> From: Julien Grall In-Reply-To: <20230530085418.5417-6-jgross@suse.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi Juergen, On 30/05/2023 09:54, Juergen Gross wrote: > Some wrl_*() functions are only used in xenstored_domain.c, so make > them static. In order to avoid the need of forward declarations, move > the whole function block to the start of the file. > > Signed-off-by: Juergen Gross Acked-by: Julien Grall Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Fri Jun 09 18:02:34 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 09 Jun 2023 18:02:34 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546272.853012 (Exim 4.92) (envelope-from ) id 1q7gRU-0003Rc-Mr; Fri, 09 Jun 2023 18:02:32 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546272.853012; Fri, 09 Jun 2023 18:02:32 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7gRU-0003RV-K6; Fri, 09 Jun 2023 18:02:32 +0000 Received: by outflank-mailman (input) for mailman id 546272; Fri, 09 Jun 2023 18:02:31 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7gRT-0003RP-75 for xen-devel@lists.xenproject.org; Fri, 09 Jun 2023 18:02:31 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7gRS-00034m-L4; Fri, 09 Jun 2023 18:02:30 +0000 Received: from 54-240-197-233.amazon.com ([54.240.197.233] helo=[192.168.17.204]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1q7gRS-00021h-Eg; Fri, 09 Jun 2023 18:02:30 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=v8jGlJU6GA7yrv1Ki2TfXSOvKWHXuuNhBUjZCNUr/bA=; b=WvIDE7d652ReIjx2O62PA7ae6r uyzl5/pIxZHqt9SpFsktw1L+rFzZcDknjAKX/m5ZTIjZKOP8jz632l7tTgM2+QXZDfHeRgypwuSPw Gixh9kFTWTR0MufOLG82HMZ6/PfnV8zcxMhy07zHZI9z1vv7kMScpGZcmT7YZcSqfWOw=; Message-ID: Date: Fri, 9 Jun 2023 19:02:27 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.11.2 Subject: Re: [PATCH v3 06/16] tools/xenstore: switch write limiting to use millisecond time base Content-Language: en-US To: Juergen Gross , xen-devel@lists.xenproject.org Cc: Wei Liu , Anthony PERARD References: <20230530085418.5417-1-jgross@suse.com> <20230530085418.5417-7-jgross@suse.com> From: Julien Grall In-Reply-To: <20230530085418.5417-7-jgross@suse.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi Juergen, On 30/05/2023 09:54, Juergen Gross wrote: > There is no need to keep struct wrl_timestampt, as it serves the same > purpose as the more simple time base provided by get_now(). > > Move some more stuff from xenstored_domain.h into xenstored_domain.c > as it is being used nowhere else. > > Signed-off-by: Juergen Gross Acked-by: Julien Grall Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Fri Jun 09 18:04:51 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 09 Jun 2023 18:04:51 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546277.853022 (Exim 4.92) (envelope-from ) id 1q7gTd-00041C-20; Fri, 09 Jun 2023 18:04:45 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546277.853022; Fri, 09 Jun 2023 18:04:45 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7gTc-000414-VB; Fri, 09 Jun 2023 18:04:44 +0000 Received: by outflank-mailman (input) for mailman id 546277; Fri, 09 Jun 2023 18:04:43 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7gTb-00040w-AV for xen-devel@lists.xenproject.org; Fri, 09 Jun 2023 18:04:43 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7gTb-000385-45; Fri, 09 Jun 2023 18:04:43 +0000 Received: from 54-240-197-233.amazon.com ([54.240.197.233] helo=[192.168.17.204]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1q7gTa-00024r-VE; Fri, 09 Jun 2023 18:04:43 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=i9EmFInx3z5xyFf/FXXG5YbAdS+pjmAGe0EB3FDnTEI=; b=SCWKqgpYVA+yfhPpsOunNKQX/s c8SrfhJfEBcpHpQ3fz7sbqE3fzPkshartpKV7YYX+wVD07d4b1kSYfYZcg5mKe1hugDamAejSmtVY cQcvQ17CJwQemojbVZAMROiLTsjZA+MSHrBButkjyfjQaJa4bmwxp/bxdPMMKwqL2jyk=; Message-ID: <86b55b3e-0677-5716-e221-05018e4559d4@xen.org> Date: Fri, 9 Jun 2023 19:04:41 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.11.2 Subject: Re: [PATCH v3 09/16] tools/xenstore: remove support of file backed data base Content-Language: en-US To: Juergen Gross , xen-devel@lists.xenproject.org Cc: Andrew Cooper , George Dunlap , Jan Beulich , Stefano Stabellini , Wei Liu , Anthony PERARD References: <20230530085418.5417-1-jgross@suse.com> <20230530085418.5417-10-jgross@suse.com> From: Julien Grall In-Reply-To: <20230530085418.5417-10-jgross@suse.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi Juergen, On 30/05/2023 09:54, Juergen Gross wrote: > In order to prepare the replacement of TDB with direct accessible nodes > in memory, remove the support for a file backed data base. > > This allows to remove xs_tdb_dump, too. > > Signed-off-by: Juergen Gross Acked-by: Julien Grall Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Fri Jun 09 18:09:37 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 09 Jun 2023 18:09:37 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546282.853031 (Exim 4.92) (envelope-from ) id 1q7gYA-0004gl-Ji; Fri, 09 Jun 2023 18:09:26 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546282.853031; Fri, 09 Jun 2023 18:09:26 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7gYA-0004ge-Gz; Fri, 09 Jun 2023 18:09:26 +0000 Received: by outflank-mailman (input) for mailman id 546282; Fri, 09 Jun 2023 18:09:26 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7gYA-0004gY-0L for xen-devel@lists.xenproject.org; Fri, 09 Jun 2023 18:09:26 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7gY9-0003Mr-3O; Fri, 09 Jun 2023 18:09:25 +0000 Received: from 54-240-197-225.amazon.com ([54.240.197.225] helo=[192.168.17.204]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1q7gY8-0002Kl-Ti; Fri, 09 Jun 2023 18:09:25 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=JwSVLWnnkECKX3dSL7LC9Ah9Oz57orjZj2k8z4ZCcs8=; b=NvYvuQG9Ekrsyy/S23sigcVhl4 o8c+g3X4DuWWMvzWeBg55RDpoU9qA50Fh6TjZ/BBp3q+JCRkRqsjTJksg4pZ2ahnRirKYw0gXpW1D es/A4PaYbZqDlKJ/fPfT+igiyY6k14TRllJVitv8CaiUo5GfK05Ou+AagbsrdB0Sdz6o=; Message-ID: <5eee062b-8028-bc5e-2a5c-2422430894e6@xen.org> Date: Fri, 9 Jun 2023 19:09:23 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.11.2 Subject: Re: [PATCH v3 10/16] tools/libs/store: use xen_list.h instead of xenstore/list.h Content-Language: en-US To: Juergen Gross , xen-devel@lists.xenproject.org Cc: Wei Liu , Anthony PERARD References: <20230530085418.5417-1-jgross@suse.com> <20230530085418.5417-11-jgross@suse.com> From: Julien Grall In-Reply-To: <20230530085418.5417-11-jgross@suse.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi Juergen, On 30/05/2023 09:54, Juergen Gross wrote: > Replace the usage of the xenstore private list.h header with the > common xen_list.h one. > > Signed-off-by: Juergen Gross > --- > V3: > - new patch > --- > tools/libs/store/xs.c | 56 +++++++++++++++++++++---------------------- > 1 file changed, 28 insertions(+), 28 deletions(-) > > diff --git a/tools/libs/store/xs.c b/tools/libs/store/xs.c > index 7a9a8b1656..3813b69ae2 100644 > --- a/tools/libs/store/xs.c > +++ b/tools/libs/store/xs.c > @@ -35,13 +35,13 @@ > #include > #include "xenstore.h" > #include "xs_lib.h" > -#include "list.h" > #include "utils.h" > > #include > +#include > > struct xs_stored_msg { > - struct list_head list; > + XEN_TAILQ_ENTRY(struct xs_stored_msg) list; I have expected us to use to XEN_LIST_*. Can you explain why you didn't use them? > struct xsd_sockmsg hdr; > char *body; > }; > @@ -70,7 +70,7 @@ struct xs_handle { > * A list of fired watch messages, protected by a mutex. Users can > * wait on the conditional variable until a watch is pending. > */ > - struct list_head watch_list; > + XEN_TAILQ_HEAD(, struct xs_stored_msg) watch_list; > pthread_mutex_t watch_mutex; > pthread_cond_t watch_condvar; > > @@ -84,7 +84,7 @@ struct xs_handle { > * because we serialise requests. The requester can wait on the > * conditional variable for its response. > */ > - struct list_head reply_list; > + XEN_TAILQ_HEAD(, struct xs_stored_msg) reply_list; > pthread_mutex_t reply_mutex; > pthread_cond_t reply_condvar; > > @@ -133,8 +133,8 @@ static void *read_thread(void *arg); > struct xs_handle { > int fd; > Xentoolcore__Active_Handle tc_ah; /* for restrict */ > - struct list_head reply_list; > - struct list_head watch_list; > + XEN_TAILQ_HEAD(, struct xs_stored_msg) reply_list; > + XEN_TAILQ_HEAD(, struct xs_stored_msg) watch_list; > /* Clients can select() on this pipe to wait for a watch to fire. */ > int watch_pipe[2]; > /* Filtering watch event in unwatch function? */ > @@ -180,7 +180,7 @@ int xs_fileno(struct xs_handle *h) > > if ((h->watch_pipe[0] == -1) && (pipe(h->watch_pipe) != -1)) { > /* Kick things off if the watch list is already non-empty. */ > - if (!list_empty(&h->watch_list)) > + if (!XEN_TAILQ_EMPTY(&h->watch_list)) > while (write(h->watch_pipe[1], &c, 1) != 1) > continue; > } > @@ -262,8 +262,8 @@ static struct xs_handle *get_handle(const char *connect_to) > if (h->fd == -1) > goto err; > > - INIT_LIST_HEAD(&h->reply_list); > - INIT_LIST_HEAD(&h->watch_list); > + XEN_TAILQ_INIT(&h->reply_list); > + XEN_TAILQ_INIT(&h->watch_list); > > /* Watch pipe is allocated on demand in xs_fileno(). */ > h->watch_pipe[0] = h->watch_pipe[1] = -1; > @@ -329,12 +329,12 @@ struct xs_handle *xs_open(unsigned long flags) > static void close_free_msgs(struct xs_handle *h) { > struct xs_stored_msg *msg, *tmsg; > > - list_for_each_entry_safe(msg, tmsg, &h->reply_list, list) { > + XEN_TAILQ_FOREACH_SAFE(msg, &h->reply_list, list, tmsg) { > free(msg->body); > free(msg); > } > > - list_for_each_entry_safe(msg, tmsg, &h->watch_list, list) { > + XEN_TAILQ_FOREACH_SAFE(msg, &h->watch_list, list, tmsg) { > free(msg->body); > free(msg); > } > @@ -459,17 +459,17 @@ static void *read_reply( > > mutex_lock(&h->reply_mutex); > #ifdef USE_PTHREAD > - while (list_empty(&h->reply_list) && read_from_thread && h->fd != -1) > + while (XEN_TAILQ_EMPTY(&h->reply_list) && read_from_thread && h->fd != -1) > condvar_wait(&h->reply_condvar, &h->reply_mutex); > #endif > - if (list_empty(&h->reply_list)) { > + if (XEN_TAILQ_EMPTY(&h->reply_list)) { > mutex_unlock(&h->reply_mutex); > errno = EINVAL; > return NULL; > } > - msg = list_top(&h->reply_list, struct xs_stored_msg, list); > - list_del(&msg->list); > - assert(list_empty(&h->reply_list)); > + msg = XEN_TAILQ_FIRST(&h->reply_list); > + XEN_TAILQ_REMOVE(&h->reply_list, msg, list); > + assert(XEN_TAILQ_EMPTY(&h->reply_list)); > mutex_unlock(&h->reply_mutex); > > *type = msg->hdr.type; > @@ -883,7 +883,7 @@ static void xs_maybe_clear_watch_pipe(struct xs_handle *h) > { > char c; > > - if (list_empty(&h->watch_list) && (h->watch_pipe[0] != -1)) > + if (XEN_TAILQ_EMPTY(&h->watch_list) && (h->watch_pipe[0] != -1)) > while (read(h->watch_pipe[0], &c, 1) != 1) > continue; > } > @@ -907,7 +907,7 @@ static char **read_watch_internal(struct xs_handle *h, unsigned int *num, > * we haven't called xs_watch. Presumably the application > * will do so later; in the meantime we just block. > */ > - while (list_empty(&h->watch_list) && h->fd != -1) { > + while (XEN_TAILQ_EMPTY(&h->watch_list) && h->fd != -1) { > if (nonblocking) { > mutex_unlock(&h->watch_mutex); > errno = EAGAIN; > @@ -925,13 +925,13 @@ static char **read_watch_internal(struct xs_handle *h, unsigned int *num, > > #endif /* !defined(USE_PTHREAD) */ > > - if (list_empty(&h->watch_list)) { > + if (XEN_TAILQ_EMPTY(&h->watch_list)) { > mutex_unlock(&h->watch_mutex); > errno = EINVAL; > return NULL; > } > - msg = list_top(&h->watch_list, struct xs_stored_msg, list); > - list_del(&msg->list); > + msg = XEN_TAILQ_FIRST(&h->watch_list); > + XEN_TAILQ_REMOVE(&h->watch_list, msg, list); > > xs_maybe_clear_watch_pipe(h); > mutex_unlock(&h->watch_mutex); > @@ -1007,12 +1007,12 @@ bool xs_unwatch(struct xs_handle *h, const char *path, const char *token) > /* Filter the watch list to remove potential message */ > mutex_lock(&h->watch_mutex); > > - if (list_empty(&h->watch_list)) { > + if (XEN_TAILQ_EMPTY(&h->watch_list)) { > mutex_unlock(&h->watch_mutex); > return res; > } > > - list_for_each_entry_safe(msg, tmsg, &h->watch_list, list) { > + XEN_TAILQ_FOREACH_SAFE(msg, &h->watch_list, list, tmsg) { > assert(msg->hdr.type == XS_WATCH_EVENT); > > s = msg->body; > @@ -1034,7 +1034,7 @@ bool xs_unwatch(struct xs_handle *h, const char *path, const char *token) > > if (l_token && !strcmp(token, l_token) && > l_path && xs_path_is_subpath(path, l_path)) { > - list_del(&msg->list); > + XEN_TAILQ_REMOVE(&h->watch_list, msg, list); > free(msg); > } > } > @@ -1290,12 +1290,12 @@ static int read_message(struct xs_handle *h, int nonblocking) > cleanup_push(pthread_mutex_unlock, &h->watch_mutex); > > /* Kick users out of their select() loop. */ > - if (list_empty(&h->watch_list) && > + if (XEN_TAILQ_EMPTY(&h->watch_list) && > (h->watch_pipe[1] != -1)) > while (write(h->watch_pipe[1], body, 1) != 1) /* Cancellation point */ > continue; > > - list_add_tail(&msg->list, &h->watch_list); > + XEN_TAILQ_INSERT_TAIL(&h->watch_list, msg, list); > > condvar_signal(&h->watch_condvar); > > @@ -1304,13 +1304,13 @@ static int read_message(struct xs_handle *h, int nonblocking) > mutex_lock(&h->reply_mutex); > > /* There should only ever be one response pending! */ > - if (!list_empty(&h->reply_list)) { > + if (!XEN_TAILQ_EMPTY(&h->reply_list)) { > mutex_unlock(&h->reply_mutex); > saved_errno = EEXIST; > goto error_freebody; > } > > - list_add_tail(&msg->list, &h->reply_list); > + XEN_TAILQ_INSERT_TAIL(&h->reply_list, msg, list); > condvar_signal(&h->reply_condvar); > > mutex_unlock(&h->reply_mutex); -- Julien Grall From xen-devel-bounces@lists.xenproject.org Fri Jun 09 18:10:19 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 09 Jun 2023 18:10:19 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546286.853042 (Exim 4.92) (envelope-from ) id 1q7gZ0-00062X-Tf; Fri, 09 Jun 2023 18:10:18 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546286.853042; Fri, 09 Jun 2023 18:10:18 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7gZ0-00062Q-PR; Fri, 09 Jun 2023 18:10:18 +0000 Received: by outflank-mailman (input) for mailman id 546286; Fri, 09 Jun 2023 18:10:17 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7gYz-00062G-Tl for xen-devel@lists.xenproject.org; Fri, 09 Jun 2023 18:10:17 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7gYz-0003Nk-9n; Fri, 09 Jun 2023 18:10:17 +0000 Received: from 54-240-197-233.amazon.com ([54.240.197.233] helo=[192.168.17.204]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1q7gYz-0002MO-4F; Fri, 09 Jun 2023 18:10:17 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=8tSQpT7KhEawzc0kQ/FE1YX7P/O+7wKbHKE6JsL1xBc=; b=2C6nTLa2gcjziNTosT3FqJbAl4 M9hrUmp747iM81ZjDZGNZN2Kg2BFHwyWI+YcD8syNvpX7ayP8dBFcs4dZypgB1MtdxksgpaIj/6Bt 3+Ha6yf5AZg1ZB6NWW5wtu8dV8fPXNK2gsAWjxWNOGh/z4UUzIHT2lAqKN1StxjJCAGI=; Message-ID: <7f966e47-5fa9-9115-f4e9-b06cb01ec655@xen.org> Date: Fri, 9 Jun 2023 19:10:15 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.11.2 Subject: Re: [PATCH v3 11/16] tools/libs/store: make libxenstore independent of utils.h Content-Language: en-US To: Juergen Gross , xen-devel@lists.xenproject.org Cc: Wei Liu , Anthony PERARD References: <20230530085418.5417-1-jgross@suse.com> <20230530085418.5417-12-jgross@suse.com> From: Julien Grall In-Reply-To: <20230530085418.5417-12-jgross@suse.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi Juergen, On 30/05/2023 09:54, Juergen Gross wrote: > There is no real need for including tools/xenstore/utils.h from > libxenstore, as only streq() and ARRAY_SIZE() are obtained via that > header. > > streq() is just !strcmp(), and ARRAY_SIZE() is brought in via > xen-tools/common-macros.h. > > Signed-off-by: Juergen Gross Acked-by: Julien Grall Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Fri Jun 09 18:46:34 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 09 Jun 2023 18:46:34 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546294.853058 (Exim 4.92) (envelope-from ) id 1q7h7p-0001Eg-Mo; Fri, 09 Jun 2023 18:46:17 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546294.853058; Fri, 09 Jun 2023 18:46:17 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7h7p-0001EZ-J3; Fri, 09 Jun 2023 18:46:17 +0000 Received: by outflank-mailman (input) for mailman id 546294; Fri, 09 Jun 2023 18:46:16 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7h7n-0001ET-Um for xen-devel@lists.xenproject.org; Fri, 09 Jun 2023 18:46:15 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7h7n-00048p-Eq; Fri, 09 Jun 2023 18:46:15 +0000 Received: from 54-240-197-233.amazon.com ([54.240.197.233] helo=[192.168.17.204]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1q7h7n-0003vy-8C; Fri, 09 Jun 2023 18:46:15 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=D89afbTZBWaNMZq0FgmPiv6CruPjk7cTEJJN5aw6kw8=; b=F6yfGleMd3GOabxPPWczGtsVg9 LBpB7mg70bZ8Ioy/q4Fh/djhzXVLdCynwDUFuqN+IfBhSoZmqBjoPTcvAGEOG7pXbd0SL2Rj9uEgs vdzBM6nb8O4TzlxJKEdh83lYO4NRPeeY6QPAHrxeCF+t1REimLGOvLxE6we+recWlUjs=; Message-ID: <8c2e1f6e-5b13-bb62-3778-9b69f070e2de@xen.org> Date: Fri, 9 Jun 2023 19:46:13 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.11.2 Subject: Re: [PATCH v3 00/16] tools/xenstore: more cleanups Content-Language: en-US To: Juergen Gross , xen-devel@lists.xenproject.org Cc: Wei Liu , Anthony PERARD , Andrew Cooper , George Dunlap , Jan Beulich , Stefano Stabellini References: <20230530085418.5417-1-jgross@suse.com> From: Julien Grall In-Reply-To: <20230530085418.5417-1-jgross@suse.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi Juergen, On 30/05/2023 09:54, Juergen Gross wrote: > Some more cleanups of Xenstore. > > Based on top of the previous Xenstore series "tools/xenstore: rework > internal accounting". > > Changes in V2: > - rebase > - one small modification of patch 10 > - added patches 11-13 > > Changes in V3: > - rebase > - modified patch 4 > - added patches 10, 11 and 13 > > Juergen Gross (16): > tools/xenstore: verify command line parameters better > tools/xenstore: do some cleanup of hashtable.c > tools/xenstore: modify interface of create_hashtable() > tools/xenstore: rename hashtable_insert() and let it return 0 on > success > tools/xenstore: make some write limit functions static > tools/xenstore: switch write limiting to use millisecond time base > tools/xenstore: remove stale TODO file > tools/xenstore: remove unused events list > tools/xenstore: remove support of file backed data base I have committed up to here. I still need to review the rest. Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Fri Jun 09 19:38:37 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 09 Jun 2023 19:38:37 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546301.853067 (Exim 4.92) (envelope-from ) id 1q7hwM-0006oo-K7; Fri, 09 Jun 2023 19:38:30 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546301.853067; Fri, 09 Jun 2023 19:38:30 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7hwM-0006oh-Gs; Fri, 09 Jun 2023 19:38:30 +0000 Received: by outflank-mailman (input) for mailman id 546301; Fri, 09 Jun 2023 19:38:29 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7hwL-0006oX-AF; Fri, 09 Jun 2023 19:38:29 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7hwK-0005AH-Vy; Fri, 09 Jun 2023 19:38:28 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7hwK-0001B2-LK; Fri, 09 Jun 2023 19:38:28 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q7hwK-0001EP-Kt; Fri, 09 Jun 2023 19:38:28 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=Ajnok1WQ7Cqe2ySECnX7y8q2QI7qtS/z2VrVh0hcUxY=; b=Kh3a4GdvTLM852uxmlRuZ+VW73 QdBMqsBYGlf+gIQVaUTcVlbtXA1/fP/0kLmBBkuaV4xxtNEyUHmFIIL9p0Yo41xYXOn10d0h7zwLL l0cPY8LaF1cDyeruJAwmMP32E20y2qCTMVb184cELsF8/W0EX0w/BxWocrz4LLXh7wPg=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable-smoke test] 181347: regressions - FAIL X-Osstest-Failures: xen-unstable-smoke:build-arm64-xsm:xen-build:fail:regression xen-unstable-smoke:build-armhf:xen-build:fail:regression xen-unstable-smoke:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking xen-unstable-smoke:test-armhf-armhf-xl:build-check(1):blocked:nonblocking xen-unstable-smoke:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking X-Osstest-Versions-This: xen=3a82e4501c4ec4d53b764c5b69955997b03d1137 X-Osstest-Versions-That: xen=64a647f8d817c6989edc000613b5afae19f03f99 From: osstest service owner Date: Fri, 09 Jun 2023 19:38:28 +0000 flight 181347 xen-unstable-smoke real [real] http://logs.test-lab.xenproject.org/osstest/logs/181347/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-arm64-xsm 6 xen-build fail REGR. vs. 181233 build-armhf 6 xen-build fail REGR. vs. 181233 Tests which did not succeed, but are not blocking: test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 15 migrate-support-check fail never pass version targeted for testing: xen 3a82e4501c4ec4d53b764c5b69955997b03d1137 baseline version: xen 64a647f8d817c6989edc000613b5afae19f03f99 Last test of basis 181233 2023-06-07 02:04:37 Z 2 days Failing since 181246 2023-06-07 11:02:03 Z 2 days 27 attempts Testing same since 181342 2023-06-09 14:01:58 Z 0 days 3 attempts ------------------------------------------------------------ People who touched revisions under test: Andrew Cooper Christian Lindig George Dunlap Henry Wang # CHANGELOG Juergen Gross Julien Grall Luca Fancellu Michal Orzel Roger Pau Monne Roger Pau Monné Stefano Stabellini jobs: build-arm64-xsm fail build-amd64 pass build-armhf fail build-amd64-libvirt pass test-armhf-armhf-xl blocked test-arm64-arm64-xl-xsm blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-libvirt pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 520 lines long.) From xen-devel-bounces@lists.xenproject.org Fri Jun 09 22:21:14 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 09 Jun 2023 22:21:14 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546312.853090 (Exim 4.92) (envelope-from ) id 1q7kTX-0007J6-9g; Fri, 09 Jun 2023 22:20:55 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546312.853090; Fri, 09 Jun 2023 22:20:55 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7kTX-0007Iz-6G; Fri, 09 Jun 2023 22:20:55 +0000 Received: by outflank-mailman (input) for mailman id 546312; Fri, 09 Jun 2023 22:20:53 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7kTV-0007Ip-S2; Fri, 09 Jun 2023 22:20:53 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7kTV-0000Of-2q; Fri, 09 Jun 2023 22:20:53 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7kTU-00050H-Sx; Fri, 09 Jun 2023 22:20:52 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q7kTU-0005J5-SQ; Fri, 09 Jun 2023 22:20:52 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=3h4sNONzqTV7/hjZFsN3X45vGHTmjavwbwZTLVP0WGg=; b=h76M5WqmxfyoqXlCdiWmC2ghDj RKBpavHMl2soWD4AxL6aXlf0gQdDNhostyLIqD1TurfndZHgtGSGrEnNY/SZneU5DLhW9eBlupyu2 rr6iNHDtVegDb0c9LB06qVZyxbPYAw3q+OkFCppcUyTYhOHASRjIBDlrIlGRwe22x4XQ=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable-smoke test] 181349: tolerable all pass - PUSHED X-Osstest-Failures: xen-unstable-smoke:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking xen-unstable-smoke:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking xen-unstable-smoke:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking xen-unstable-smoke:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking xen-unstable-smoke:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: xen=b4642c32c4d079916d5607ddda0232aae5e1690e X-Osstest-Versions-That: xen=64a647f8d817c6989edc000613b5afae19f03f99 From: osstest service owner Date: Fri, 09 Jun 2023 22:20:52 +0000 flight 181349 xen-unstable-smoke real [real] http://logs.test-lab.xenproject.org/osstest/logs/181349/ Failures :-/ but no regressions. Tests which did not succeed, but are not blocking: test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-armhf-armhf-xl 15 migrate-support-check fail never pass test-armhf-armhf-xl 16 saverestore-support-check fail never pass version targeted for testing: xen b4642c32c4d079916d5607ddda0232aae5e1690e baseline version: xen 64a647f8d817c6989edc000613b5afae19f03f99 Last test of basis 181233 2023-06-07 02:04:37 Z 2 days Failing since 181246 2023-06-07 11:02:03 Z 2 days 28 attempts Testing same since 181349 2023-06-09 20:00:24 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Andrew Cooper Christian Lindig George Dunlap Henry Wang # CHANGELOG Juergen Gross Julien Grall Luca Fancellu Michal Orzel Roger Pau Monne Roger Pau Monné Stefano Stabellini jobs: build-arm64-xsm pass build-amd64 pass build-armhf pass build-amd64-libvirt pass test-armhf-armhf-xl pass test-arm64-arm64-xl-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-libvirt pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Pushing revision : To xenbits.xen.org:/home/xen/git/xen.git 64a647f8d8..b4642c32c4 b4642c32c4d079916d5607ddda0232aae5e1690e -> smoke From xen-devel-bounces@lists.xenproject.org Fri Jun 09 23:16:10 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 09 Jun 2023 23:16:10 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546320.853100 (Exim 4.92) (envelope-from ) id 1q7lKu-0004T3-B9; Fri, 09 Jun 2023 23:16:04 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546320.853100; Fri, 09 Jun 2023 23:16:04 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7lKu-0004Sw-8G; Fri, 09 Jun 2023 23:16:04 +0000 Received: by outflank-mailman (input) for mailman id 546320; Fri, 09 Jun 2023 23:16:03 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7lKt-0004SS-BG for xen-devel@lists.xenproject.org; Fri, 09 Jun 2023 23:16:03 +0000 Received: from mail-yw1-x112f.google.com (mail-yw1-x112f.google.com [2607:f8b0:4864:20::112f]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 9741f100-071b-11ee-8611-37d641c3527e; Sat, 10 Jun 2023 01:15:58 +0200 (CEST) Received: by mail-yw1-x112f.google.com with SMTP id 00721157ae682-56ce53c0040so1059177b3.2; Fri, 09 Jun 2023 16:15:58 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 9741f100-071b-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686352557; x=1688944557; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=q5u7UmKDqzvsT6LNfui1HYOMbYQ0/ZnTiHilzyTkbsQ=; b=DbSUIhUaO8+zlc1G+ZDSXkx44rfbHTZ0Fcq+NRvYMbfn/gJISmXgkqPtTPx9dkPAJw 45jYGj8NPVttIXWhgpxa5WoJAqCcCF6WGv5IUkW6NBA6RIwTQ9ksw9/15UboY6MUDKbk FYTG+ss7Ih0kZAJOUSXcAOxPuF8Sg0C42ihiBddM5N/I2Y6/G094oBg7MZiekOrPYpXR OWXKDWfq+XDCI1nkilTuHa3XnTJlr+ee+8zvH62PSKz3aGXsUMEgRr2PkGIobgWtXTPl OInl8y3H6clCIfA1bejnyfNGWd6x2YOTj3chY6UoJT6MQtUwo3Xt4vfodENdIDk8iXR4 zYgg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686352557; x=1688944557; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=q5u7UmKDqzvsT6LNfui1HYOMbYQ0/ZnTiHilzyTkbsQ=; b=aWE4KvvHWLFVgxPa4YRFs368qUywiEar8/VJqD2EEAX16m/b8ehMm3KvO9FLtcazJ8 QtxuuCuYsEurKnpP+Alo/mmgMBnSqGufscudaZj3eQq5dbGrdjZ5dmg28L7oSJMim50p o5UzKgrv/RfiPkaA/YcRBmg4t8+p93or/tdvzg5F5++pjF4iWbrQXOd0SkLuV+6JU5G1 Io05eEr3JfK03GEGP8DN8hwbR/v6/G4gnyIdmprOB4s0wghJbxhudfTmCTpN8cmCV7Z6 7krGb70gWSX7YDjYVlGE8z4jd1qw6MHxRK399soFFZGZJubGhKEL4IobFh346X/DT2fS kZXA== X-Gm-Message-State: AC+VfDwZKPhkfZktsoGBiKIAH71eFApHvCxyspOBlfqZSvTeQmZkl0Zf w8nstFA1gUKxarUZAH9dgNfu3vFvzvKzcXznusM= X-Google-Smtp-Source: ACHHUZ6YoXET9vnqDxNUzUGj/+o5Jr3dx9Jiu1tMVbBm63Rewfqg6QdjT3Bm4+POt5u5e53c/Y88oOWiIrrH8C11cHM= X-Received: by 2002:a0d:db8a:0:b0:565:7025:610a with SMTP id d132-20020a0ddb8a000000b005657025610amr2478367ywe.27.1686352557251; Fri, 09 Jun 2023 16:15:57 -0700 (PDT) MIME-Version: 1.0 References: <78899eac-9de8-3626-8f40-98f993984f95@xen.org> In-Reply-To: <78899eac-9de8-3626-8f40-98f993984f95@xen.org> From: Jiatong Shen Date: Sat, 10 Jun 2023 07:15:46 +0800 Message-ID: Subject: Re: Asking for help to debug xen efi on Kunpeng machine To: Julien Grall Cc: Stefano Stabellini , xen-users@lists.xenproject.org, xen-devel@lists.xenproject.org, bertrand.marquis@arm.com Content-Type: multipart/alternative; boundary="00000000000024218f05fdba8d3a" --00000000000024218f05fdba8d3a Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Hello Julien, Thank you very much for your help! Best, Jiatong Shen On Fri, Jun 9, 2023 at 4:48=E2=80=AFPM Julien Grall wrote: > Hello, > > On 09/06/2023 03:32, Jiatong Shen wrote: > > Thank you for your answer. Can you teach me how to verify if acpi is > > enabled? > > You usually look at the .config. But I am not sure if this is provided > by the Debian package. If not, then your best option would be to build > your own Xen. To select ACPI, you want to use the menuconfig and select > UNSUPPORTED and ACPI. > > Cheers, > > -- > Julien Grall > --=20 Best Regards, Jiatong Shen --00000000000024218f05fdba8d3a Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Hello Julien,

=C2=A0 =C2=A0 Thank= you very much for your help!

Best,

Jiatong Shen

On Fri, Jun 9, 2023 at 4:48=E2=80=AFPM Julien Gr= all <julien@xen.org> wrote:
=
Hello,

On 09/06/2023 03:32, Jiatong Shen wrote:
> Thank you for your answer. Can you teach me how to verify if acpi is > enabled?

You usually look at the .config. But I am not sure if this is provided
by the Debian package. If not, then your best option would be to build
your own Xen. To select ACPI, you want to use the menuconfig and select UNSUPPORTED and ACPI.

Cheers,

--
Julien Grall


--

Best Regards,

Jiatong Shen=
--00000000000024218f05fdba8d3a-- From xen-devel-bounces@lists.xenproject.org Sat Jun 10 02:48:41 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sat, 10 Jun 2023 02:48:41 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546327.853113 (Exim 4.92) (envelope-from ) id 1q7oeM-0007yE-DE; Sat, 10 Jun 2023 02:48:22 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546327.853113; Sat, 10 Jun 2023 02:48:22 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7oeM-0007y6-7R; Sat, 10 Jun 2023 02:48:22 +0000 Received: by outflank-mailman (input) for mailman id 546327; Sat, 10 Jun 2023 02:48:20 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7oeK-0007xw-7r; Sat, 10 Jun 2023 02:48:20 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7oeJ-0005iZ-Sf; Sat, 10 Jun 2023 02:48:19 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7oeJ-0000rC-D6; Sat, 10 Jun 2023 02:48:19 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q7oeJ-0003jf-Ao; Sat, 10 Jun 2023 02:48:19 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=ozsTs/l4BNlsuGfZ4S30LYxUOrtjyaB8tx5lf1cero8=; b=aAg/3XPWx+5bGM9HxFVxzFbObz QhUkUeS1pdmBR3Imco4UL3I7DAhSk+HpgDx/7SxF5TmXwMtd2hVIOoAykPcOH+sHTMVypdPEa0jO6 EyVsa0ulgodWu+abjbznU5GHPlMWHbp9HzfKPnlFb/ZlKUl1t0tUv82yI4YOOTdQTi18=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [linux-5.4 test] 181336: regressions - FAIL X-Osstest-Failures: linux-5.4:test-armhf-armhf-xl-credit2:guest-start/debian.repeat:fail:regression linux-5.4:test-amd64-amd64-qemuu-freebsd12-amd64:guest-localmigrate/x10:fail:heisenbug linux-5.4:test-armhf-armhf-xl-multivcpu:guest-start:fail:heisenbug linux-5.4:test-amd64-i386-xl-vhd:guest-start/debian.repeat:fail:heisenbug linux-5.4:test-armhf-armhf-libvirt-raw:guest-start/debian.repeat:fail:heisenbug linux-5.4:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking linux-5.4:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking linux-5.4:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking linux-5.4:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking linux-5.4:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking linux-5.4:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking linux-5.4:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: linux=f568a20f058fa1e37069cff4aac4187c1650a0e9 X-Osstest-Versions-That: linux=cf0b1e5482eaeb4db15c9e703267483dba88b575 From: osstest service owner Date: Sat, 10 Jun 2023 02:48:19 +0000 flight 181336 linux-5.4 real [real] flight 181353 linux-5.4 real-retest [real] http://logs.test-lab.xenproject.org/osstest/logs/181336/ http://logs.test-lab.xenproject.org/osstest/logs/181353/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: test-armhf-armhf-xl-credit2 18 guest-start/debian.repeat fail REGR. vs. 181182 Tests which are failing intermittently (not blocking): test-amd64-amd64-qemuu-freebsd12-amd64 19 guest-localmigrate/x10 fail pass in 181353-retest test-armhf-armhf-xl-multivcpu 14 guest-start fail pass in 181353-retest test-amd64-i386-xl-vhd 21 guest-start/debian.repeat fail pass in 181353-retest test-armhf-armhf-libvirt-raw 17 guest-start/debian.repeat fail pass in 181353-retest Tests which did not succeed, but are not blocking: test-armhf-armhf-xl-multivcpu 15 migrate-support-check fail in 181353 never pass test-armhf-armhf-xl-multivcpu 16 saverestore-support-check fail in 181353 never pass test-armhf-armhf-libvirt 16 saverestore-support-check fail like 181182 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 181182 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop fail like 181182 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop fail like 181182 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 181182 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 181182 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 181182 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail like 181182 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop fail like 181182 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail like 181182 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop fail like 181182 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 181182 test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-i386-libvirt 15 migrate-support-check fail never pass test-amd64-i386-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-i386-xl-pvshim 14 guest-start fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt 15 migrate-support-check fail never pass test-amd64-i386-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-xl 15 migrate-support-check fail never pass test-armhf-armhf-xl 16 saverestore-support-check fail never pass test-armhf-armhf-xl-credit1 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 16 saverestore-support-check fail never pass test-armhf-armhf-xl-credit2 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit2 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-armhf-armhf-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 15 saverestore-support-check fail never pass test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 15 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 16 saverestore-support-check fail never pass test-armhf-armhf-xl-rtds 15 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 16 saverestore-support-check fail never pass version targeted for testing: linux f568a20f058fa1e37069cff4aac4187c1650a0e9 baseline version: linux cf0b1e5482eaeb4db15c9e703267483dba88b575 Last test of basis 181182 2023-06-05 06:43:42 Z 4 days Testing same since 181336 2023-06-09 08:40:57 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Adam Borowski Andreas Svensson Andrew Morton Andy Shevchenko Arnd Bergmann Bart Van Assche Ben Hutchings Benedict Wong Bjørn Mork Borislav Petkov Cambda Zhu Chao Wang Chris Packham Chris Paterson (CIP) Cong Wang Damien Le Moal Dan Carpenter Dario Binacchi David S. Miller Deren Wu Devesh Sharma Eric Dumazet Florian Fainelli Florian Westphal Frank Li Greg Kroah-Hartman Guenter Roeck Guillaume Nault Haibo Li Hangyu Hua Hans Verkuil Harshit Mogalapalli Helge Deller Hyunwoo Kim Hyunwoo Kim Ivan Orlov Jakub Kicinski Jamal Hadi Salim Jason Baron Jason Gunthorpe Jason Gunthorpe # IB Jason Gunthorpe Jassi Brar Jens Axboe Jiakai Luo Jim Wylder Jiri Kosina Joao Martins Joerg Roedel Johannes Thumshirn Jonathan Cameron Kalesh AP Kalle Valo # wireless drivers Kalle Valo Kees Cook Krzysztof Kozlowski Kuniyuki Iwashima Larry Finger Lee Jones Linus Torvalds Luiz Capitulino Lukas Bulwahn Lyude Paul Marc Kleine-Budde Marek Vasut Mark Brown Martin Liska Martin Liška Masami Hiramatsu (Google) Mauro Carvalho Chehab Maxim Kochetkov Michael Büsch Min-Hua Chen Miquel Raynal Mirsad Goran Todorovac Mukesh Ojha Naresh Kumar PBS Nathan Chancellor Nikita Zhandarovich Niklas Söderlund Paolo Abeni Paul Moore Paweł Anikiel Pedro Tammela Peilin Ye Pietro Borrello Ping-Ke Shih Rafael J. Wysocki Raju Rangoju Randy Dunlap Randy Dunlap # build-tested Richard Acayan Russell King (Oracle) Saeed Mahameed Sam Ravnborg Sasha Levin Sebastian Krzyszkowiak Selvin Xavier Shay Drory Sherry Sun Shuah Khan Shyam Sundar S K Simon Kapadia Srinivas Kandagatla Steffen Klassert Sudarsana Reddy Kalluru Sudheesh Mavila Sudip Mukherjee Sung-Chi Li Takashi Iwai Theodore Ts'o Tom Rix Ulf Hansson Uttkarsh Aggarwal Vinod Koul Vladislav Efanov Wei Chen Wenchao Hao Will Deacon Wim Van Sebroeck Yonatan Nachum YongSu Yoo YueHaibing Yun Lu Zhang Shurong Zhengchao Shao jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl pass test-amd64-i386-xl pass test-amd64-coresched-i386-xl pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-i386-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-i386-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-i386-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-i386-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-i386-qemut-rhel6hvm-amd pass test-amd64-i386-qemuu-rhel6hvm-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-i386-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-freebsd10-amd64 pass test-amd64-amd64-qemuu-freebsd11-amd64 pass test-amd64-amd64-qemuu-freebsd12-amd64 fail test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-i386-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-i386-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-i386-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-amd64-i386-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale pass test-amd64-amd64-examine-bios pass test-amd64-i386-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 pass test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 fail test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine pass test-amd64-i386-examine pass test-amd64-i386-freebsd10-i386 pass test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-i386-qemut-rhel6hvm-intel pass test-amd64-i386-qemuu-rhel6hvm-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt pass test-amd64-i386-libvirt pass test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu fail test-amd64-amd64-pair pass test-amd64-i386-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-i386-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-i386-xl-pvshim fail test-amd64-amd64-pygrub pass test-armhf-armhf-libvirt-qcow2 pass test-amd64-amd64-xl-qcow2 pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw fail test-amd64-i386-libvirt-raw pass test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds pass test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-amd64-i386-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-i386-examine-uefi pass test-amd64-amd64-libvirt-vhd pass test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd pass test-amd64-i386-xl-vhd fail ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 3047 lines long.) From xen-devel-bounces@lists.xenproject.org Sat Jun 10 02:59:41 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sat, 10 Jun 2023 02:59:41 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546337.853125 (Exim 4.92) (envelope-from ) id 1q7opE-0001A3-JV; Sat, 10 Jun 2023 02:59:36 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546337.853125; Sat, 10 Jun 2023 02:59:36 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7opE-00019w-Gs; Sat, 10 Jun 2023 02:59:36 +0000 Received: by outflank-mailman (input) for mailman id 546337; Sat, 10 Jun 2023 02:59:35 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7opD-00019q-JH for xen-devel@lists.xenproject.org; Sat, 10 Jun 2023 02:59:35 +0000 Received: from out2-smtp.messagingengine.com (out2-smtp.messagingengine.com [66.111.4.26]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id d1bbdd87-073a-11ee-8611-37d641c3527e; Sat, 10 Jun 2023 04:59:32 +0200 (CEST) Received: from compute6.internal (compute6.nyi.internal [10.202.2.47]) by mailout.nyi.internal (Postfix) with ESMTP id E7BC45C019F; Fri, 9 Jun 2023 22:59:29 -0400 (EDT) Received: from mailfrontend2 ([10.202.2.163]) by compute6.internal (MEProxy); Fri, 09 Jun 2023 22:59:29 -0400 Received: by mail.messagingengine.com (Postfix) with ESMTPA; Fri, 9 Jun 2023 22:59:26 -0400 (EDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: d1bbdd87-073a-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= invisiblethingslab.com; h=cc:cc:content-transfer-encoding :content-type:content-type:date:date:from:from:in-reply-to :message-id:mime-version:reply-to:sender:subject:subject:to:to; s=fm1; t=1686365969; x=1686452369; bh=fqqfREt6el0H4FUtv/UFCMik/ ekaqDFx+K8V6xPHXrA=; b=XHmMz2/TUW0yymNJduvfAI7TWUn2doI7XIGh3aeMi I9DOUUxXtUb5JpEW4XKybSf1DLiIyxjVOKBlUxJAbvPa9vD/FrysI9DXX6YuZe9q EyBAgoQbm/ddgbTsskP4aTOVq/brmhpYAwII7cZqgveNtm65I6gruAHDHGHmy3Lj IqvkKK1ityrxYmqMlR5xLhHMX1lSjD56PQe0WoayB936GgRCViGp2qSECeLef98L WjHF7grogPlYLGCm4aaN5KA+In9aS5p5RmTJf03XJyhWfNfCmdNtPiYxaV0ofdwy p/4WcorAeRumhBXEOOiz2qW6yVznVvsVLc86K12yw0+Mg== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-transfer-encoding :content-type:content-type:date:date:feedback-id:feedback-id :from:from:in-reply-to:message-id:mime-version:reply-to:sender :subject:subject:to:to:x-me-proxy:x-me-proxy:x-me-sender :x-me-sender:x-sasl-enc; s=fm1; t=1686365969; x=1686452369; bh=f qqfREt6el0H4FUtv/UFCMik/ekaqDFx+K8V6xPHXrA=; b=bCkb0S9qaYw8Fhd54 5wZBtSL6oakDSto/n91eKd2nRtAH3fjbIPrtzAaCpNTNiaHXo7GyJsRq9aJ1Qk9R 4R4N3PbYB1MI8x+1KG0n40mpSuu9AaWPtWnNfsDe+EF5OpPd7JUPOao1gWU0p7+/ ksbXJ8YcliKzdza+3AFj8c/lGWp8AA0xHq/RADyqjWolew1utIAZ9jW1UQxMIAgM p6XhFilcTIrtUjumjzTiDgYe8ePoz05Bcls31udSVFyYyoXOnnlMPwqeWcXWB0Sz y4ECLpJJdNdccFKAMkMV83KhVtQ2Td7i9VXieZ5ZLXPnK7NZEWurQ6vdMIuojKcP yTTbg== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvhedrgedtledgieegucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne cujfgurhephffvvefufffkofggtgfgsehtkeertdertdejnecuhfhrohhmpeffvghmihcu ofgrrhhivgcuqfgsvghnohhurhcuoeguvghmihesihhnvhhishhisghlvghthhhinhhgsh hlrggsrdgtohhmqeenucggtffrrghtthgvrhhnpeekieeljeeutefgieejfffglefhieet veffleefudefjeegleejvdelvdefueffveenucffohhmrghinhepkhgvrhhnvghlrdhorh hgnecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhfrhhomhepuggv mhhisehinhhvihhsihgslhgvthhhihhnghhslhgrsgdrtghomh X-ME-Proxy: Feedback-ID: iac594737:Fastmail From: Demi Marie Obenour To: Dwaipayan Ray , Lukas Bulwahn , Joe Perches , Jonathan Corbet , Federico Vaga , Juergen Gross , Stefano Stabellini , Oleksandr Tyshchenko , Lee Jones , Andy Lutomirski , Thomas Gleixner , Vincenzo Frascino , Petr Mladek , Steven Rostedt , Sergey Senozhatsky , Andy Shevchenko , Rasmus Villemoes Cc: Demi Marie Obenour , linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org Subject: [PATCH 1/4] Rip out simple_strtoll() Date: Fri, 9 Jun 2023 22:57:56 -0400 Message-Id: <20230610025759.1813-1-demi@invisiblethingslab.com> X-Mailer: git-send-email 2.40.1 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit It is not used anywhere but its own unit tests. Signed-off-by: Demi Marie Obenour --- Documentation/dev-tools/checkpatch.rst | 9 ++++----- Documentation/process/deprecated.rst | 5 ++--- .../translations/it_IT/process/deprecated.rst | 9 ++++----- .../translations/sp_SP/process/deprecated.rst | 14 +++++++------- include/linux/kstrtox.h | 1 - lib/kstrtox.c | 2 +- lib/test_scanf.c | 10 ---------- lib/vsprintf.c | 14 -------------- 8 files changed, 18 insertions(+), 46 deletions(-) diff --git a/Documentation/dev-tools/checkpatch.rst b/Documentation/dev-tools/checkpatch.rst index c3389c6f38381f038ed5d9a884f2d333a749f8a2..0ae0ca80beb0c0171e8c04306cb5b9ccbc9fa713 100644 --- a/Documentation/dev-tools/checkpatch.rst +++ b/Documentation/dev-tools/checkpatch.rst @@ -290,11 +290,10 @@ API usage See: https://www.kernel.org/doc/html/latest/process/deprecated.html#bug-and-bug-on **CONSIDER_KSTRTO** - The simple_strtol(), simple_strtoll(), simple_strtoul(), and - simple_strtoull() functions explicitly ignore overflows, which - may lead to unexpected results in callers. The respective kstrtol(), - kstrtoll(), kstrtoul(), and kstrtoull() functions tend to be the - correct replacements. + The simple_strtol(), simple_strtoul(), and simple_strtoull() functions + explicitly ignore overflows, which may lead to unexpected results in + callers. The respective kstrtol(), kstrtoll(), kstrtoul(), and kstrtoull() + functions tend to be the correct replacements. See: https://www.kernel.org/doc/html/latest/process/deprecated.html#simple-strtol-simple-strtoll-simple-strtoul-simple-strtoull diff --git a/Documentation/process/deprecated.rst b/Documentation/process/deprecated.rst index f91b8441f2ef70576c5bad079e631e4077eabed6..b2f677eb6d6b12df63003b00960ef27b1656e4c3 100644 --- a/Documentation/process/deprecated.rst +++ b/Documentation/process/deprecated.rst @@ -109,10 +109,9 @@ For more details, also see array3_size() and flex_array_size(), as well as the related check_mul_overflow(), check_add_overflow(), check_sub_overflow(), and check_shl_overflow() family of functions. -simple_strtol(), simple_strtoll(), simple_strtoul(), simple_strtoull() +simple_strtol(), simple_strtoul(), simple_strtoull() ---------------------------------------------------------------------- -The simple_strtol(), simple_strtoll(), -simple_strtoul(), and simple_strtoull() functions +The simple_strtol(), simple_strtoul(), and simple_strtoull() functions explicitly ignore overflows, which may lead to unexpected results in callers. The respective kstrtol(), kstrtoll(), kstrtoul(), and kstrtoull() functions tend to be the diff --git a/Documentation/translations/it_IT/process/deprecated.rst b/Documentation/translations/it_IT/process/deprecated.rst index ba0ed7dc154c95e0e973cb51cc36b95e786079a8..cdc0aa107bce7f4018ad241a02b4f701974e52b4 100644 --- a/Documentation/translations/it_IT/process/deprecated.rst +++ b/Documentation/translations/it_IT/process/deprecated.rst @@ -118,12 +118,11 @@ Per maggiori dettagli fate riferimento a array3_size() e flex_array_size(), ma anche le funzioni della famiglia check_mul_overflow(), check_add_overflow(), check_sub_overflow(), e check_shl_overflow(). -simple_strtol(), simple_strtoll(), simple_strtoul(), simple_strtoull() +simple_strtol(), simple_strtoul(), simple_strtoull() ---------------------------------------------------------------------- -Le funzioni simple_strtol(), simple_strtoll(), -simple_strtoul(), e simple_strtoull() ignorano volutamente -i possibili overflow, e questo può portare il chiamante a generare risultati -inaspettati. Le rispettive funzioni kstrtol(), kstrtoll(), +Le funzioni simple_strtol(), simple_strtoul(), e simple_strtoull() ignorano +volutamente i possibili overflow, e questo può portare il chiamante a generare +risultati inaspettati. Le rispettive funzioni kstrtol(), kstrtoll(), kstrtoul(), e kstrtoull() sono da considerarsi le corrette sostitute; tuttavia va notato che queste richiedono che la stringa sia terminata con il carattere NUL o quello di nuova riga. diff --git a/Documentation/translations/sp_SP/process/deprecated.rst b/Documentation/translations/sp_SP/process/deprecated.rst index d52120e0d75354d0d32c33d631f9f364eba32f82..f0ba93e7188f02ae98a8533e2dfee4c82cf78c5c 100644 --- a/Documentation/translations/sp_SP/process/deprecated.rst +++ b/Documentation/translations/sp_SP/process/deprecated.rst @@ -117,14 +117,14 @@ como también la familia de funciones relacionadas check_mul_overflow(), check_add_overflow(), check_sub_overflow(), y check_shl_overflow(). -simple_strtol(), simple_strtoll(), simple_strtoul(), simple_strtoull() +simple_strtol(), simple_strtoul(), simple_strtoull() ---------------------------------------------------------------------- -Las funciones: simple_strtol(), simple_strtoll(), simple_strtoul(), y -simple_strtoull() explícitamente ignoran los desbordamientos, lo que puede -llevar a resultados inesperados por las funciones que las llaman. Las -funciones respectivas kstrtol(), kstrtoll(), kstrtoul(), y kstrtoull() -tienden a ser reemplazos correctos, aunque nótese que necesitarán que la -cadena de caracteres termine en NUL o en el carácter de línea nueva. +Las funciones: simple_strtol(), simple_strtoul(), y simple_strtoull() +explícitamente ignoran los desbordamientos, lo que puede llevar a +resultados inesperados por las funciones que las llaman. Las funciones +respectivas kstrtol(), kstrtoll(), kstrtoul(), y kstrtoull() tienden a +ser reemplazos correctos, aunque nótese que necesitarán que la cadena de +caracteres termine en NUL o en el carácter de línea nueva. strcpy() diff --git a/include/linux/kstrtox.h b/include/linux/kstrtox.h index 529974e22ea799adf5c07b48d803ac9bfc1f85a4..c3ed0ce20be49fba185937e3fd0f949e7be6f9a4 100644 --- a/include/linux/kstrtox.h +++ b/include/linux/kstrtox.h @@ -145,7 +145,6 @@ static inline int __must_check kstrtos32_from_user(const char __user *s, size_t extern unsigned long simple_strtoul(const char *,char **,unsigned int); extern long simple_strtol(const char *,char **,unsigned int); extern unsigned long long simple_strtoull(const char *,char **,unsigned int); -extern long long simple_strtoll(const char *,char **,unsigned int); static inline int strtobool(const char *s, bool *res) { diff --git a/lib/kstrtox.c b/lib/kstrtox.c index 08c14019841af9df6d1c354b4503ecee4c7a9da0..3397a91e07dbad814bb0f2c93d19761a375bedc5 100644 --- a/lib/kstrtox.c +++ b/lib/kstrtox.c @@ -150,7 +150,7 @@ EXPORT_SYMBOL(kstrtoull); * @res: Where to write the result of the conversion on success. * * Returns 0 on success, -ERANGE on overflow and -EINVAL on parsing error. - * Preferred over simple_strtoll(). Return code must be checked. + * Return code must be checked. */ noinline int kstrtoll(const char *s, unsigned int base, long long *res) diff --git a/lib/test_scanf.c b/lib/test_scanf.c index b620cf7de503542a98f38c45c76e9043b242746e..73e6e912f39c7746b1aaaf35eeb562c9c2d3fac8 100644 --- a/lib/test_scanf.c +++ b/lib/test_scanf.c @@ -727,15 +727,6 @@ static void __init test_simple_strtoull(void) test_simple_strtoxx(unsigned long long, simple_strtoull, "0x%llx", 0); } -static void __init test_simple_strtoll(void) -{ - test_simple_strtoxx(long long, simple_strtoll, "%lld", 10); - test_simple_strtoxx(long long, simple_strtoll, "%lld", 0); - test_simple_strtoxx(long long, simple_strtoll, "%llx", 16); - test_simple_strtoxx(long long, simple_strtoll, "0x%llx", 16); - test_simple_strtoxx(long long, simple_strtoll, "0x%llx", 0); -} - static void __init test_simple_strtoul(void) { test_simple_strtoxx(unsigned long, simple_strtoul, "%lu", 10); @@ -800,7 +791,6 @@ static void __init selftest(void) test_numbers(); test_simple_strtoull(); - test_simple_strtoll(); test_simple_strtoul(); test_simple_strtol(); diff --git a/lib/vsprintf.c b/lib/vsprintf.c index 40f560959b169b4c4ac6154d658cfe76cfd0c5a6..a60d348efb276d66ca07fe464883408df7fdab97 100644 --- a/lib/vsprintf.c +++ b/lib/vsprintf.c @@ -144,20 +144,6 @@ static long long simple_strntoll(const char *cp, size_t max_chars, char **endp, return simple_strntoull(cp, max_chars, endp, base); } -/** - * simple_strtoll - convert a string to a signed long long - * @cp: The start of the string - * @endp: A pointer to the end of the parsed string will be placed here - * @base: The number base to use - * - * This function has caveats. Please use kstrtoll instead. - */ -long long simple_strtoll(const char *cp, char **endp, unsigned int base) -{ - return simple_strntoll(cp, INT_MAX, endp, base); -} -EXPORT_SYMBOL(simple_strtoll); - static noinline_for_stack int skip_atoi(const char **s) { -- Sincerely, Demi Marie Obenour (she/her/hers) Invisible Things Lab From xen-devel-bounces@lists.xenproject.org Sat Jun 10 02:59:42 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sat, 10 Jun 2023 02:59:42 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546338.853135 (Exim 4.92) (envelope-from ) id 1q7opK-0001RG-Qe; Sat, 10 Jun 2023 02:59:42 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546338.853135; Sat, 10 Jun 2023 02:59:42 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7opK-0001R9-O0; Sat, 10 Jun 2023 02:59:42 +0000 Received: by outflank-mailman (input) for mailman id 546338; Sat, 10 Jun 2023 02:59:41 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7opJ-00019q-D6 for xen-devel@lists.xenproject.org; Sat, 10 Jun 2023 02:59:41 +0000 Received: from out2-smtp.messagingengine.com (out2-smtp.messagingengine.com [66.111.4.26]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id d6f1cbd7-073a-11ee-8611-37d641c3527e; Sat, 10 Jun 2023 04:59:39 +0200 (CEST) Received: from compute5.internal (compute5.nyi.internal [10.202.2.45]) by mailout.nyi.internal (Postfix) with ESMTP id E44D75C01A2; Fri, 9 Jun 2023 22:59:38 -0400 (EDT) Received: from mailfrontend2 ([10.202.2.163]) by compute5.internal (MEProxy); Fri, 09 Jun 2023 22:59:38 -0400 Received: by mail.messagingengine.com (Postfix) with ESMTPA; Fri, 9 Jun 2023 22:59:37 -0400 (EDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: d6f1cbd7-073a-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= invisiblethingslab.com; h=cc:cc:content-transfer-encoding :content-type:date:date:from:from:in-reply-to:in-reply-to :message-id:mime-version:references:reply-to:sender:subject :subject:to:to; s=fm1; t=1686365978; x=1686452378; bh=e12eRh5lyv IG/KvFdPXdCrr7zx2xKqvfBfJtwKk/UpE=; b=AKQPI0PHuEOU5fmJQ9qD4WkgYQ aNoiEv1lfrVM0NCY9ewgg8yFu5cfmny1yi8ZTNrtfImDp1pGhuDRkui/TEHC5s+K /xhOVAL5AQHfiqgCeBetpDfYF+GaDlidqVKEsi6C0xbUzHx/PqDUoPV6QFq6aB0C OOg0YoA7t8x2EWeZFwRJG97M00gjgS83Yl6TlolCRF6hGmsfSTI1ujrLvHwJZL0W M+woz3GhEN1YABJ8oG7BW769tXKF258OMnnper1WHFH+X07RwCndRpFuDFfE7T+s n72DZrUVHVYow5+16yXo6hevd822TTGQ2Fdv5qHENyPTDOZPdcvDunwPJiTQ== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-transfer-encoding :content-type:date:date:feedback-id:feedback-id:from:from :in-reply-to:in-reply-to:message-id:mime-version:references :reply-to:sender:subject:subject:to:to:x-me-proxy:x-me-proxy :x-me-sender:x-me-sender:x-sasl-enc; s=fm1; t=1686365978; x= 1686452378; bh=e12eRh5lyvIG/KvFdPXdCrr7zx2xKqvfBfJtwKk/UpE=; b=G 9VxVZvzIe9D+6jHeneyaWFSJNodZvgGP36tWCCmi9ous9JGq8T+LtFFMVNxNKBVP MresaRrefOqjnUcrB4yiDWx8qfazyFcNbts2DK6HNnEehk882KT2F6Zj8juL1H+F EGMd5nnB1BCD3epAfyfTbNELCE+L5PN2BYKbpdok84A3GH/TGBG0/FjPZPQbfcac IgY9AimP0eNkEX3UHJZealznt+phzF/ZWd7R3S5A0LdrA4WRjrcrpszwDQQEdYgf CHUT3mfooyG1vP/tzzRKIamZBiNqmWCfoaecQR88wlj9ZWEAdZGDmnvVnmHOsYQZ DTk3wKN7CU9rnuuMR4IcA== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvhedrgedtledgieehucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne cujfgurhephffvvefufffkofgjfhgggfestdekredtredttdenucfhrhhomhepffgvmhhi ucforghrihgvucfqsggvnhhouhhruceouggvmhhisehinhhvihhsihgslhgvthhhihhngh hslhgrsgdrtghomheqnecuggftrfgrthhtvghrnhepjeffjefggfeugeduvedvjeekgfeh gffhhfffjeetkeelueefffetfffhtdduheetnecuvehluhhsthgvrhfuihiivgeptdenuc frrghrrghmpehmrghilhhfrhhomhepuggvmhhisehinhhvihhsihgslhgvthhhihhnghhs lhgrsgdrtghomh X-ME-Proxy: Feedback-ID: iac594737:Fastmail From: Demi Marie Obenour To: Dwaipayan Ray , Lukas Bulwahn , Joe Perches , Jonathan Corbet , Federico Vaga , Juergen Gross , Stefano Stabellini , Oleksandr Tyshchenko , Lee Jones , Andy Lutomirski , Thomas Gleixner , Vincenzo Frascino , Petr Mladek , Steven Rostedt , Sergey Senozhatsky , Andy Shevchenko , Rasmus Villemoes Cc: Demi Marie Obenour , linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org Subject: [PATCH 3/4] Add strict version of vsscanf() Date: Fri, 9 Jun 2023 22:57:58 -0400 Message-Id: <20230610025759.1813-3-demi@invisiblethingslab.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230610025759.1813-1-demi@invisiblethingslab.com> References: <20230610025759.1813-1-demi@invisiblethingslab.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Signed-off-by: Demi Marie Obenour --- include/linux/kernel.h | 4 ++++ lib/vsprintf.c | 43 +++++++++++++++++++++++++++++++++++++++--- 2 files changed, 44 insertions(+), 3 deletions(-) diff --git a/include/linux/kernel.h b/include/linux/kernel.h index 0d91e0af01250c1d82f4a2ea562d2619b9cc6e9c..b348b84ce9c4e95031f67e0cbac5de8deca69aac 100644 --- a/include/linux/kernel.h +++ b/include/linux/kernel.h @@ -227,8 +227,12 @@ const char *kvasprintf_const(gfp_t gfp, const char *fmt, va_list args); extern __scanf(2, 3) int sscanf(const char *, const char *, ...); +extern __scanf(2, 3) +int sscanf_strict(const char *, const char *, ...); extern __scanf(2, 0) int vsscanf(const char *, const char *, va_list); +extern __scanf(2, 0) +int vsscanf_strict(const char *, const char *, va_list); extern int no_hash_pointers_enable(char *str); diff --git a/lib/vsprintf.c b/lib/vsprintf.c index 9846d2385f5b9e8f3945a5664d81047e97cf10d5..2dae357b367e1da8b1004ed6e85e051a045ca36b 100644 --- a/lib/vsprintf.c +++ b/lib/vsprintf.c @@ -3414,6 +3414,8 @@ EXPORT_SYMBOL_GPL(bprintf); #endif /* CONFIG_BINARY_PRINTF */ +static int vsscanf_internal(const char *buf, const char *fmt, va_list args, bool strict); + /** * vsscanf - Unformat a buffer into a list of arguments * @buf: input buffer @@ -3421,6 +3423,23 @@ EXPORT_SYMBOL_GPL(bprintf); * @args: arguments */ int vsscanf(const char *buf, const char *fmt, va_list args) +{ + return vsscanf_internal(buf, fmt, args, false); +} + +/** + * vsscanf_strict - Unformat a buffer into a list of arguments, but + * do not skip spaces. + * @buf: input buffer + * @fmt: format of buffer + * @args: arguments + */ +int vsscanf_strict(const char *buf, const char *fmt, va_list args) +{ + return vsscanf_internal(buf, fmt, args, true); +} + +static int vsscanf_internal(const char *buf, const char *fmt, va_list args, bool strict) { const char *str = buf; char *next; @@ -3530,8 +3549,10 @@ int vsscanf(const char *buf, const char *fmt, va_list args) char *s = (char *)va_arg(args, char *); if (field_width == -1) field_width = SHRT_MAX; - /* first, skip leading white space in buffer */ - str = skip_spaces(str); + if (!strict) { + /* first, skip leading white space in buffer */ + str = skip_spaces(str); + } /* now copy until next white space */ while (*str && !isspace(*str) && field_width--) @@ -3621,7 +3642,8 @@ int vsscanf(const char *buf, const char *fmt, va_list args) /* have some sort of integer conversion. * first, skip white space in buffer. */ - str = skip_spaces(str); + if (!strict) + str = skip_spaces(str); digit = *str; if (is_sign && digit == '-') { @@ -3721,6 +3743,9 @@ int vsscanf(const char *buf, const char *fmt, va_list args) str = next; } + if (strict && *str) + return -EINVAL; + return num; } EXPORT_SYMBOL(vsscanf); @@ -3743,3 +3768,15 @@ int sscanf(const char *buf, const char *fmt, ...) return i; } EXPORT_SYMBOL(sscanf); +int sscanf_strict(const char *buf, const char *fmt, ...) +{ + va_list args; + int i; + + va_start(args, fmt); + i = vsscanf_strict(buf, fmt, args); + va_end(args); + + return i; +} +EXPORT_SYMBOL(sscanf_strict); -- Sincerely, Demi Marie Obenour (she/her/hers) Invisible Things Lab From xen-devel-bounces@lists.xenproject.org Sat Jun 10 02:59:44 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sat, 10 Jun 2023 02:59:44 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546339.853146 (Exim 4.92) (envelope-from ) id 1q7opM-0001h9-1i; Sat, 10 Jun 2023 02:59:44 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546339.853146; Sat, 10 Jun 2023 02:59:44 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7opL-0001h1-Uj; Sat, 10 Jun 2023 02:59:43 +0000 Received: by outflank-mailman (input) for mailman id 546339; Sat, 10 Jun 2023 02:59:42 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7opK-0001Qx-Bj for xen-devel@lists.xenproject.org; Sat, 10 Jun 2023 02:59:42 +0000 Received: from out2-smtp.messagingengine.com (out2-smtp.messagingengine.com [66.111.4.26]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id d52d8727-073a-11ee-b232-6b7b168915f2; Sat, 10 Jun 2023 04:59:39 +0200 (CEST) Received: from compute1.internal (compute1.nyi.internal [10.202.2.41]) by mailout.nyi.internal (Postfix) with ESMTP id E87D25C01A1; Fri, 9 Jun 2023 22:59:35 -0400 (EDT) Received: from mailfrontend2 ([10.202.2.163]) by compute1.internal (MEProxy); Fri, 09 Jun 2023 22:59:35 -0400 Received: by mail.messagingengine.com (Postfix) with ESMTPA; Fri, 9 Jun 2023 22:59:34 -0400 (EDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: d52d8727-073a-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= invisiblethingslab.com; h=cc:cc:content-transfer-encoding :content-type:date:date:from:from:in-reply-to:in-reply-to :message-id:mime-version:references:reply-to:sender:subject :subject:to:to; s=fm1; t=1686365975; x=1686452375; bh=j0YDtre0// ptA/N4P+hKQMixT1796glMqb4pGlu2kos=; b=m++JwYZhL4VFQQOGC4U7artSFR tHnKhyypdzTNFYqmUHkPIQ88g/YldbEc7fTPaqvBJoa6WmId3+Rcib97/knWOkkF Uy0mGW6LAof+uXS8TWAyZ6OyN0F8OZKBLLCxpL0F3xBoQTBCY7u2JrsPdSo9Zkv8 irJTHJcMLzH6Umq1tlaOxVopNjkYNOA8aeRx/EGtKjceOsuk70VpRPpSLFiKdIo0 GmsqXpCNHlvcHodK/kthEToV0s94id0LARIheJ4nZOhXuRTq8YyZjznp+cDTldlD DUywT0TY+w27GQtMwTTC/ZqtXwAxWg+CUoG52uj2Nw3uaU/u1HZZubj3PfPA== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-transfer-encoding :content-type:date:date:feedback-id:feedback-id:from:from :in-reply-to:in-reply-to:message-id:mime-version:references :reply-to:sender:subject:subject:to:to:x-me-proxy:x-me-proxy :x-me-sender:x-me-sender:x-sasl-enc; s=fm1; t=1686365975; x= 1686452375; bh=j0YDtre0//ptA/N4P+hKQMixT1796glMqb4pGlu2kos=; b=p M89UBlvVv2Nm/NeszM8jdZ+s549xstoIdFOqnHi6jPL5iTS7vVOfIpQht4W3sEP4 SNxKU0y3QQnIytP+OAE24bUtVwj79W8dtHusLOTM1QDzzOS/Q07dZqTCHES5dXk9 f5zAPa+9Rdcsv8rujbNFjwr/9pB8eczGJCEQSgAD3brahOtIJx0mUoxbTHbCKIJP xqo3zDLQn741Laou6bQ37ioja+eiXnl7jjk0Ntk6g155jjg5j0IAHGem7n4CkK/2 /z1/yh5wnCkp0R7w2gllGN7vkke3pjPzznDh20SbSzBILzubdemkqigbZ3RLKDpB bDz7kuR9oaGKJFuHtWnew== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvhedrgedtledgieehucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne cujfgurhephffvvefufffkofgjfhgggfestdekredtredttdenucfhrhhomhepffgvmhhi ucforghrihgvucfqsggvnhhouhhruceouggvmhhisehinhhvihhsihgslhgvthhhihhngh hslhgrsgdrtghomheqnecuggftrfgrthhtvghrnhepjeffjefggfeugeduvedvjeekgfeh gffhhfffjeetkeelueefffetfffhtdduheetnecuvehluhhsthgvrhfuihiivgeptdenuc frrghrrghmpehmrghilhhfrhhomhepuggvmhhisehinhhvihhsihgslhgvthhhihhnghhs lhgrsgdrtghomh X-ME-Proxy: Feedback-ID: iac594737:Fastmail From: Demi Marie Obenour To: Dwaipayan Ray , Lukas Bulwahn , Joe Perches , Jonathan Corbet , Federico Vaga , Juergen Gross , Stefano Stabellini , Oleksandr Tyshchenko , Lee Jones , Andy Lutomirski , Thomas Gleixner , Vincenzo Frascino , Petr Mladek , Steven Rostedt , Sergey Senozhatsky , Andy Shevchenko , Rasmus Villemoes Cc: Demi Marie Obenour , linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org Subject: [PATCH 2/4] vsscanf(): Return -ERANGE on integer overflow Date: Fri, 9 Jun 2023 22:57:57 -0400 Message-Id: <20230610025759.1813-2-demi@invisiblethingslab.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230610025759.1813-1-demi@invisiblethingslab.com> References: <20230610025759.1813-1-demi@invisiblethingslab.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Userspace sets errno to ERANGE, but the kernel can't do that. Signed-off-by: Demi Marie Obenour --- include/linux/limits.h | 1 + include/linux/mfd/wl1273-core.h | 3 -- include/vdso/limits.h | 3 ++ lib/vsprintf.c | 80 ++++++++++++++++++++++++--------- 4 files changed, 63 insertions(+), 24 deletions(-) diff --git a/include/linux/limits.h b/include/linux/limits.h index f6bcc936901071f496e3e85bb6e1d93905b12e32..8f7fd85b41fb46e6992d9e5912da00424119227a 100644 --- a/include/linux/limits.h +++ b/include/linux/limits.h @@ -8,6 +8,7 @@ #define SIZE_MAX (~(size_t)0) #define SSIZE_MAX ((ssize_t)(SIZE_MAX >> 1)) +#define SSIZE_MIN (-SSIZE_MAX - 1) #define PHYS_ADDR_MAX (~(phys_addr_t)0) #define U8_MAX ((u8)~0U) diff --git a/include/linux/mfd/wl1273-core.h b/include/linux/mfd/wl1273-core.h index c28cf76d5c31ee1c94a9319a2e2d318bf00283a6..b81a229135ed9f756c749122a8341816031c8311 100644 --- a/include/linux/mfd/wl1273-core.h +++ b/include/linux/mfd/wl1273-core.h @@ -204,9 +204,6 @@ WL1273_IS2_TRI_OPT | \ WL1273_IS2_RATE_48K) -#define SCHAR_MIN (-128) -#define SCHAR_MAX 127 - #define WL1273_FR_EVENT BIT(0) #define WL1273_BL_EVENT BIT(1) #define WL1273_RDS_EVENT BIT(2) diff --git a/include/vdso/limits.h b/include/vdso/limits.h index 0197888ad0e00b2f853d3f25ffa764f61cca7385..0cad0a2490e5efc194d874025eb3e3b846a5c7b4 100644 --- a/include/vdso/limits.h +++ b/include/vdso/limits.h @@ -2,6 +2,9 @@ #ifndef __VDSO_LIMITS_H #define __VDSO_LIMITS_H +#define UCHAR_MAX ((unsigned char)~0U) +#define SCHAR_MAX ((signed char)(UCHAR_MAX >> 1)) +#define SCHAR_MIN ((signed char)(-SCHAR_MAX - 1)) #define USHRT_MAX ((unsigned short)~0U) #define SHRT_MAX ((short)(USHRT_MAX >> 1)) #define SHRT_MIN ((short)(-SHRT_MAX - 1)) diff --git a/lib/vsprintf.c b/lib/vsprintf.c index a60d348efb276d66ca07fe464883408df7fdab97..9846d2385f5b9e8f3945a5664d81047e97cf10d5 100644 --- a/lib/vsprintf.c +++ b/lib/vsprintf.c @@ -59,7 +59,7 @@ bool no_hash_pointers __ro_after_init; EXPORT_SYMBOL_GPL(no_hash_pointers); -static noinline unsigned long long simple_strntoull(const char *startp, size_t max_chars, char **endp, unsigned int base) +static noinline unsigned long long simple_strntoull(const char *startp, size_t max_chars, char **endp, unsigned int base, bool *overflow) { const char *cp; unsigned long long result = 0ULL; @@ -71,6 +71,8 @@ static noinline unsigned long long simple_strntoull(const char *startp, size_t m if (prefix_chars < max_chars) { rv = _parse_integer_limit(cp, base, &result, max_chars - prefix_chars); /* FIXME */ + if (overflow) + *overflow = !!(rv & KSTRTOX_OVERFLOW); cp += (rv & ~KSTRTOX_OVERFLOW); } else { /* Field too short for prefix + digit, skip over without converting */ @@ -94,7 +96,7 @@ static noinline unsigned long long simple_strntoull(const char *startp, size_t m noinline unsigned long long simple_strtoull(const char *cp, char **endp, unsigned int base) { - return simple_strntoull(cp, INT_MAX, endp, base); + return simple_strntoull(cp, INT_MAX, endp, base, NULL); } EXPORT_SYMBOL(simple_strtoull); @@ -130,18 +132,22 @@ long simple_strtol(const char *cp, char **endp, unsigned int base) EXPORT_SYMBOL(simple_strtol); static long long simple_strntoll(const char *cp, size_t max_chars, char **endp, - unsigned int base) + unsigned int base, bool *overflow) { + unsigned long long minand; + bool negate; + /* * simple_strntoull() safely handles receiving max_chars==0 in the * case cp[0] == '-' && max_chars == 1. * If max_chars == 0 we can drop through and pass it to simple_strntoull() * and the content of *cp is irrelevant. */ - if (*cp == '-' && max_chars > 0) - return -simple_strntoull(cp + 1, max_chars - 1, endp, base); - - return simple_strntoull(cp, max_chars, endp, base); + negate = *cp == '-' && max_chars > 0; + minand = simple_strntoull(cp + negate, max_chars - negate, endp, base, overflow); + if (minand > (unsigned long long)LONG_MAX + negate) + *overflow = true; + return negate ? -minand : minand; } static noinline_for_stack @@ -3427,7 +3433,7 @@ int vsscanf(const char *buf, const char *fmt, va_list args) unsigned long long u; } val; s16 field_width; - bool is_sign; + bool is_sign, overflow; while (*fmt) { /* skip any white space in format */ @@ -3635,45 +3641,77 @@ int vsscanf(const char *buf, const char *fmt, va_list args) if (is_sign) val.s = simple_strntoll(str, field_width >= 0 ? field_width : INT_MAX, - &next, base); + &next, base, &overflow); else val.u = simple_strntoull(str, field_width >= 0 ? field_width : INT_MAX, - &next, base); + &next, base, &overflow); + if (unlikely(overflow)) + return -ERANGE; switch (qualifier) { case 'H': /* that's 'hh' in format */ - if (is_sign) + if (is_sign) { + if (unlikely(val.s < SCHAR_MIN || val.s > SCHAR_MAX)) + return -ERANGE; *va_arg(args, signed char *) = val.s; - else + } else { + if (unlikely(val.u > UCHAR_MAX)) + return -ERANGE; *va_arg(args, unsigned char *) = val.u; + } break; case 'h': - if (is_sign) + if (is_sign) { + if (unlikely(val.s < SHRT_MIN || val.s > SHRT_MAX)) + return -ERANGE; *va_arg(args, short *) = val.s; - else + } else { + if (unlikely(val.u > USHRT_MAX)) + return -ERANGE; *va_arg(args, unsigned short *) = val.u; + } break; case 'l': - if (is_sign) + if (is_sign) { + if (unlikely(val.s < LONG_MIN || val.s > LONG_MAX)) + return -ERANGE; *va_arg(args, long *) = val.s; - else + } else { + if (unlikely(val.u > ULONG_MAX)) + return -ERANGE; *va_arg(args, unsigned long *) = val.u; + } break; case 'L': - if (is_sign) + /* No overflow check needed */ + if (is_sign) { *va_arg(args, long long *) = val.s; - else + } else { *va_arg(args, unsigned long long *) = val.u; + } break; case 'z': - *va_arg(args, size_t *) = val.u; + if (is_sign) { + if (unlikely(val.s < SSIZE_MIN || val.s > SSIZE_MAX)) + return -ERANGE; + *va_arg(args, ssize_t *) = val.s; + } else { + if (unlikely(val.u > SIZE_MAX)) + return -ERANGE; + *va_arg(args, size_t *) = val.u; + } break; default: - if (is_sign) + if (is_sign) { + if (unlikely(val.s < INT_MIN || val.s > INT_MAX)) + return -ERANGE; *va_arg(args, int *) = val.s; - else + } else { + if (unlikely(val.u > UINT_MAX)) + return -ERANGE; *va_arg(args, unsigned int *) = val.u; + } break; } num++; -- Sincerely, Demi Marie Obenour (she/her/hers) Invisible Things Lab From xen-devel-bounces@lists.xenproject.org Sat Jun 10 02:59:44 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sat, 10 Jun 2023 02:59:44 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546340.853153 (Exim 4.92) (envelope-from ) id 1q7opM-0001kr-Dy; Sat, 10 Jun 2023 02:59:44 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546340.853153; Sat, 10 Jun 2023 02:59:44 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7opM-0001ka-80; Sat, 10 Jun 2023 02:59:44 +0000 Received: by outflank-mailman (input) for mailman id 546340; Sat, 10 Jun 2023 02:59:43 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7opL-0001Qx-0E for xen-devel@lists.xenproject.org; Sat, 10 Jun 2023 02:59:43 +0000 Received: from out2-smtp.messagingengine.com (out2-smtp.messagingengine.com [66.111.4.26]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id d8743f05-073a-11ee-b232-6b7b168915f2; Sat, 10 Jun 2023 04:59:42 +0200 (CEST) Received: from compute2.internal (compute2.nyi.internal [10.202.2.46]) by mailout.nyi.internal (Postfix) with ESMTP id 6E1B05C01A3; Fri, 9 Jun 2023 22:59:41 -0400 (EDT) Received: from mailfrontend2 ([10.202.2.163]) by compute2.internal (MEProxy); Fri, 09 Jun 2023 22:59:41 -0400 Received: by mail.messagingengine.com (Postfix) with ESMTPA; Fri, 9 Jun 2023 22:59:40 -0400 (EDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: d8743f05-073a-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= invisiblethingslab.com; h=cc:cc:content-transfer-encoding :content-type:date:date:from:from:in-reply-to:in-reply-to :message-id:mime-version:references:reply-to:sender:subject :subject:to:to; s=fm1; t=1686365981; x=1686452381; bh=9jx1BPUbfc VgExhjQbchVzVzEh8/1tbELFoG8PhPivY=; b=KzDj4AYYzePpimX6H5wkYZwkks NHGbQDu8jIRMdcSSSgF3b3PCmK7D2vOotKxA1DfVlTP2e08oG9cNjOaC0kyc2A/A Woeqakefd0epg23qLeX6igy3kxTwzSX6HLFhahqzHc+vqvIKm4sAeWi9aoNSXRR6 wCI5HfGLfst2I2vTH2hIA7ZxZ26JHuWYOCEEPQPqUdH0cH2Rrtx60UFtXGXkXHdo oHHe5NzrKGAz0eOgRzDoxWrkDYMlWiOGDPj/JZbnnXGfaI+2MtyHouaGMcEBMaZV jdSrar5Q0z3nIwuLL3W3Xx2b6XH6XjVb12K0C8yZS0BhFD3XVFZWGvJ79QUg== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-transfer-encoding :content-type:date:date:feedback-id:feedback-id:from:from :in-reply-to:in-reply-to:message-id:mime-version:references :reply-to:sender:subject:subject:to:to:x-me-proxy:x-me-proxy :x-me-sender:x-me-sender:x-sasl-enc; s=fm1; t=1686365981; x= 1686452381; bh=9jx1BPUbfcVgExhjQbchVzVzEh8/1tbELFoG8PhPivY=; b=Z vSpafDBLwDL8H2CTo8lfIfv0lBZ6g4SdgNNNWgwt9+71cFO74vFRkfX5OQ0eun+2 V9U7u1FWaanTOidIYHn+FaDRXl+fpQTdsWaByWb8JDChI4RHKW0Er7WreEW70XSH F7ovWDNSgioIcLiDVSE1DlAfe687KvI/kOFQUYI5cJrhQ5FVuqQj+0k+MXIqK2ZF 5YIcEJ5iqfquW6njaZXeLisvjATivHd3InKEgpO6av2xMmSPYJ9xVUx7M/y8yarE v1ZhBTL4ViFGSyXf3rk89tTMCKeP0BpWjJ6L5NGJkGZn6HsrPPsYg/Mr1c8kHU06 REVYBioVQJyWfzr6tnZjw== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvhedrgedtledgieegucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne cujfgurhephffvvefufffkofgjfhgggfestdekredtredttdenucfhrhhomhepffgvmhhi ucforghrihgvucfqsggvnhhouhhruceouggvmhhisehinhhvihhsihgslhgvthhhihhngh hslhgrsgdrtghomheqnecuggftrfgrthhtvghrnhepjeffjefggfeugeduvedvjeekgfeh gffhhfffjeetkeelueefffetfffhtdduheetnecuvehluhhsthgvrhfuihiivgeptdenuc frrghrrghmpehmrghilhhfrhhomhepuggvmhhisehinhhvihhsihgslhgvthhhihhnghhs lhgrsgdrtghomh X-ME-Proxy: Feedback-ID: iac594737:Fastmail From: Demi Marie Obenour To: Dwaipayan Ray , Lukas Bulwahn , Joe Perches , Jonathan Corbet , Federico Vaga , Juergen Gross , Stefano Stabellini , Oleksandr Tyshchenko , Lee Jones , Andy Lutomirski , Thomas Gleixner , Vincenzo Frascino , Petr Mladek , Steven Rostedt , Sergey Senozhatsky , Andy Shevchenko , Rasmus Villemoes Cc: Demi Marie Obenour , linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org Subject: [PATCH 4/4] Strict XenStore entry parsing Date: Fri, 9 Jun 2023 22:57:59 -0400 Message-Id: <20230610025759.1813-4-demi@invisiblethingslab.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230610025759.1813-1-demi@invisiblethingslab.com> References: <20230610025759.1813-1-demi@invisiblethingslab.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit This uses the newly-introduced strict version of sscanf(). Signed-off-by: Demi Marie Obenour --- drivers/xen/xenbus/xenbus_xs.c | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-) diff --git a/drivers/xen/xenbus/xenbus_xs.c b/drivers/xen/xenbus/xenbus_xs.c index 12e02eb01f5991b31db451cc57037205359b347f..88e94269c9221d16d1a97e59399058e870675729 100644 --- a/drivers/xen/xenbus/xenbus_xs.c +++ b/drivers/xen/xenbus/xenbus_xs.c @@ -569,16 +569,20 @@ int xenbus_scanf(struct xenbus_transaction t, const char *dir, const char *node, const char *fmt, ...) { va_list ap; - int ret; + int ret = 0; + unsigned int len; char *val; - val = xenbus_read(t, dir, node, NULL); + val = xenbus_read(t, dir, node, &len); if (IS_ERR(val)) return PTR_ERR(val); + if (strlen(val) != len) + goto bad; va_start(ap, fmt); - ret = vsscanf(val, fmt, ap); + ret = vsscanf_strict(val, fmt, ap); va_end(ap); +bad: kfree(val); /* Distinctive errno. */ if (ret == 0) @@ -636,15 +640,18 @@ int xenbus_gather(struct xenbus_transaction t, const char *dir, ...) while (ret == 0 && (name = va_arg(ap, char *)) != NULL) { const char *fmt = va_arg(ap, char *); void *result = va_arg(ap, void *); + unsigned len; char *p; - p = xenbus_read(t, dir, name, NULL); + p = xenbus_read(t, dir, name, &len); if (IS_ERR(p)) { ret = PTR_ERR(p); break; } - if (fmt) { - if (sscanf(p, fmt, result) == 0) + if (strlen(p) != len) + ret = -EINVAL; + else if (fmt) { + if (sscanf_strict(p, fmt, result) <= 0) ret = -EINVAL; kfree(p); } else -- Sincerely, Demi Marie Obenour (she/her/hers) Invisible Things Lab From xen-devel-bounces@lists.xenproject.org Sat Jun 10 03:07:48 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sat, 10 Jun 2023 03:07:48 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546362.853166 (Exim 4.92) (envelope-from ) id 1q7oww-0004PY-DF; Sat, 10 Jun 2023 03:07:34 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546362.853166; Sat, 10 Jun 2023 03:07:34 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7oww-0004PR-8V; Sat, 10 Jun 2023 03:07:34 +0000 Received: by outflank-mailman (input) for mailman id 546362; Sat, 10 Jun 2023 03:07:33 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7owv-0004Oc-Jb; Sat, 10 Jun 2023 03:07:33 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7owv-00062T-Bh; Sat, 10 Jun 2023 03:07:33 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7owu-0001oZ-Q5; Sat, 10 Jun 2023 03:07:32 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q7owu-0008LM-PW; Sat, 10 Jun 2023 03:07:32 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=B7gfkJu4Hyo+AHluHu5EUznaHkDPTGZ+do/englmcAA=; b=zGp/9AnrFNxiWe2w2CkNmP37P/ /8WXdI9QJUodzaY/cTw9yauEtT3tqOZfjnRRagzDNVsePRO0Om28dvGtOdf8NJK94xSe/fKi1UX+u MbK4PjZBDCQWRcOvfrSCUBRIzklHoA8LkfwvLOXjKu2lsM94zjsB+kuybb6kTZ5VUExw=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [qemu-mainline test] 181345: regressions - FAIL X-Osstest-Failures: qemu-mainline:build-arm64-xsm:xen-build:fail:regression qemu-mainline:build-arm64:xen-build:fail:regression qemu-mainline:build-amd64:xen-build:fail:regression qemu-mainline:build-i386:xen-build:fail:regression qemu-mainline:build-amd64-xsm:xen-build:fail:regression qemu-mainline:build-i386-xsm:xen-build:fail:regression qemu-mainline:build-armhf:xen-build:fail:regression qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-i386:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:build-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:build-arm64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:build-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:build-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pygrub:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking X-Osstest-Versions-This: qemuu=5f9dd6a8ce3961db4ce47411ed2097ad88bdf5fc X-Osstest-Versions-That: qemuu=6972ef1440a9d685482d78672620a7482f2bd09a From: osstest service owner Date: Sat, 10 Jun 2023 03:07:32 +0000 flight 181345 qemu-mainline real [real] http://logs.test-lab.xenproject.org/osstest/logs/181345/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-arm64-xsm 6 xen-build fail REGR. vs. 180691 build-arm64 6 xen-build fail REGR. vs. 180691 build-amd64 6 xen-build fail REGR. vs. 180691 build-i386 6 xen-build fail REGR. vs. 180691 build-amd64-xsm 6 xen-build fail REGR. vs. 180691 build-i386-xsm 6 xen-build fail REGR. vs. 180691 build-armhf 6 xen-build fail REGR. vs. 180691 Tests which did not succeed, but are not blocking: test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-xl-xsm 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-raw 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-xsm 1 build-check(1) blocked n/a test-arm64-arm64-xl 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit1 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit2 1 build-check(1) blocked n/a test-arm64-arm64-xl-thunderx 1 build-check(1) blocked n/a test-arm64-arm64-xl-vhd 1 build-check(1) blocked n/a test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a test-armhf-armhf-libvirt 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-qcow2 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-raw 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a test-armhf-armhf-xl-arndale 1 build-check(1) blocked n/a test-armhf-armhf-xl-multivcpu 1 build-check(1) blocked n/a test-armhf-armhf-xl-rtds 1 build-check(1) blocked n/a test-armhf-armhf-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-amd 1 build-check(1) blocked n/a test-amd64-i386-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-raw 1 build-check(1) blocked n/a test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-i386 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-amd64 1 build-check(1) blocked n/a test-amd64-coresched-i386-xl 1 build-check(1) blocked n/a test-amd64-coresched-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-xsm 1 build-check(1) blocked n/a build-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-shadow 1 build-check(1) blocked n/a test-amd64-amd64-xl-rtds 1 build-check(1) blocked n/a build-arm64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a build-armhf-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a build-i386-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-amd 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-pair 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-qcow2 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-vhd 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvshim 1 build-check(1) blocked n/a test-amd64-amd64-pair 1 build-check(1) blocked n/a test-amd64-amd64-pygrub 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-intel 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd11-amd64 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd12-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-multivcpu 1 build-check(1) blocked n/a test-amd64-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit1 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit1 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit2 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-intel 1 build-check(1) blocked n/a test-amd64-i386-xl 1 build-check(1) blocked n/a test-amd64-i386-xl-pvshim 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a version targeted for testing: qemuu 5f9dd6a8ce3961db4ce47411ed2097ad88bdf5fc baseline version: qemuu 6972ef1440a9d685482d78672620a7482f2bd09a Last test of basis 180691 2023-05-17 10:45:22 Z 23 days Failing since 180699 2023-05-18 07:21:24 Z 22 days 77 attempts Testing same since 181322 2023-06-09 00:07:15 Z 1 days 4 attempts ------------------------------------------------------------ People who touched revisions under test: Afonso Bordado Akihiko Odaki Akihiro Suda Alex Bennée Alex Williamson Alexander Bulekov Alexander Graf Alexander Ivanov Alistair Francis Ani Sinha Ani Sinha Anthony PERARD Anton Johansson BALATON Zoltan Bastian Koppelmann Bernhard Beschow Bin Meng Brian Cain Brice Goglin Camilla Conte Christian Schoenebeck Chuck Zmudzinski Cindy Lu Clément Chigot Cornelia Huck Cédric Le Goater Cédric Le Goater Daniel Henrique Barboza Daniel P. Berrangé Daniil Kovalev David Hildenbrand David Woodhouse Emanuele Giuseppe Esposito Enze Li Eric Auger Eric Blake Eric DeVolder Erico Nunes Eugenio Pérez Fabiano Rosas Fan Ni Fiona Ebner Francesco Cagnin Francisco Iglesias Gavin Shan Gregory Price Gregory Price Hanna Czenczek Hao Zeng Hawkins Jiawei Igor Mammedov Ilya Leoshkevich Ira Weiny Jagannathan Raman Jason Wang Jean-Louis Dupond Jean-Philippe Brucker Jiaxun Yang John Snow Jonathan Cameron Juan Quintela Kevin Wolf Laurent Vivier Lei Yang Leonardo Bras Maksim Davydov Marc-André Lureau Marcin Juszkiewicz Marco Liebel Mark Cave-Ayland Markus Armbruster Matheus Tavares Bernardino Mauro Matteo Cascella Max Fritz Michael S. Tsirkin Michael Tokarev Michal Privoznik Mostafa Saleh Nicholas Piggin Nicolas Saenz Julienne Niek Linnenbank Palmer Dabbelt Paolo Bonzini Peter Maydell Peter Xu Philippe Mathieu-Daudé qianfan Zhao Raghu H Rene Engel Richard Henderson Richard Purdie Ricky Zhou Ryan Wendland Sebastian Ott Sergio Lopez Sid Manning Song Gao Stefan Hajnoczi Stefano Garzarella Steve Sistare Taylor Simpson Thomas Huth Thomas Weißschuh timothee.cocault@gmail.com Timothée Cocault Tommy Wu Vikram Garhwal Viktor Prutyanov Vitaly Cheptsov Vivek Kasireddy Vladimir Sementsov-Ogievskiy Volker Rümelin Xinyu Li Zeng Hao Zhenyu Zhang Zhenzhong Duan Zhuojia Shen jobs: build-amd64-xsm fail build-arm64-xsm fail build-i386-xsm fail build-amd64 fail build-arm64 fail build-armhf fail build-i386 fail build-amd64-libvirt blocked build-arm64-libvirt blocked build-armhf-libvirt blocked build-i386-libvirt blocked build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl blocked test-amd64-coresched-amd64-xl blocked test-arm64-arm64-xl blocked test-armhf-armhf-xl blocked test-amd64-i386-xl blocked test-amd64-coresched-i386-xl blocked test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-i386-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-amd64-libvirt-xsm blocked test-arm64-arm64-libvirt-xsm blocked test-amd64-i386-libvirt-xsm blocked test-amd64-amd64-xl-xsm blocked test-arm64-arm64-xl-xsm blocked test-amd64-i386-xl-xsm blocked test-amd64-amd64-qemuu-nested-amd blocked test-amd64-amd64-xl-pvhv2-amd blocked test-amd64-i386-qemuu-rhel6hvm-amd blocked test-amd64-amd64-dom0pvh-xl-amd blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-freebsd10-amd64 blocked test-amd64-amd64-qemuu-freebsd11-amd64 blocked test-amd64-amd64-qemuu-freebsd12-amd64 blocked test-amd64-amd64-xl-qemuu-ovmf-amd64 blocked test-amd64-i386-xl-qemuu-ovmf-amd64 blocked test-amd64-amd64-xl-qemuu-win7-amd64 blocked test-amd64-i386-xl-qemuu-win7-amd64 blocked test-amd64-amd64-xl-qemuu-ws16-amd64 blocked test-amd64-i386-xl-qemuu-ws16-amd64 blocked test-armhf-armhf-xl-arndale blocked test-amd64-amd64-xl-credit1 blocked test-arm64-arm64-xl-credit1 blocked test-armhf-armhf-xl-credit1 blocked test-amd64-amd64-xl-credit2 blocked test-arm64-arm64-xl-credit2 blocked test-armhf-armhf-xl-credit2 blocked test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-freebsd10-i386 blocked test-amd64-amd64-qemuu-nested-intel blocked test-amd64-amd64-xl-pvhv2-intel blocked test-amd64-i386-qemuu-rhel6hvm-intel blocked test-amd64-amd64-dom0pvh-xl-intel blocked test-amd64-amd64-libvirt blocked test-armhf-armhf-libvirt blocked test-amd64-i386-libvirt blocked test-amd64-amd64-xl-multivcpu blocked test-armhf-armhf-xl-multivcpu blocked test-amd64-amd64-pair blocked test-amd64-i386-pair blocked test-amd64-amd64-libvirt-pair blocked test-amd64-i386-libvirt-pair blocked test-amd64-amd64-xl-pvshim blocked test-amd64-i386-xl-pvshim blocked test-amd64-amd64-pygrub blocked test-armhf-armhf-libvirt-qcow2 blocked test-amd64-amd64-xl-qcow2 blocked test-arm64-arm64-libvirt-raw blocked test-armhf-armhf-libvirt-raw blocked test-amd64-i386-libvirt-raw blocked test-amd64-amd64-xl-rtds blocked test-armhf-armhf-xl-rtds blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-amd64-xl-shadow blocked test-amd64-i386-xl-shadow blocked test-arm64-arm64-xl-thunderx blocked test-amd64-amd64-libvirt-vhd blocked test-arm64-arm64-xl-vhd blocked test-armhf-armhf-xl-vhd blocked test-amd64-i386-xl-vhd blocked ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 16165 lines long.) From xen-devel-bounces@lists.xenproject.org Sat Jun 10 03:27:38 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sat, 10 Jun 2023 03:27:38 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546371.853175 (Exim 4.92) (envelope-from ) id 1q7pG6-0006yb-2H; Sat, 10 Jun 2023 03:27:22 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546371.853175; Sat, 10 Jun 2023 03:27:22 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7pG5-0006yU-Vl; Sat, 10 Jun 2023 03:27:21 +0000 Received: by outflank-mailman (input) for mailman id 546371; Sat, 10 Jun 2023 03:27:21 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7pG3-0006yN-I6 for xen-devel@lists.xenproject.org; Sat, 10 Jun 2023 03:27:21 +0000 Received: from casper.infradead.org (casper.infradead.org [2001:8b0:10b:1236::1]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id b3530a04-073e-11ee-b232-6b7b168915f2; Sat, 10 Jun 2023 05:27:18 +0200 (CEST) Received: from willy by casper.infradead.org with local (Exim 4.94.2 #2 (Red Hat Linux)) id 1q7pFJ-00HR1D-8P; Sat, 10 Jun 2023 03:26:33 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: b3530a04-073e-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=casper.20170209; h=In-Reply-To:Content-Type:MIME-Version: References:Message-ID:Subject:Cc:To:From:Date:Sender:Reply-To: Content-Transfer-Encoding:Content-ID:Content-Description; bh=iWsYnjfno/GMHCivYc524n1XWJb9xmxltmrmIDlCdQE=; b=c0Jh5FhIIB3DTx5SY3eXpBgbpz CpGnTxh/SXEglYdzpIbVob0Ixmh/MIkNrYVq4qMOIA2ZlKOf/gqjFprH6VjtZVvelLKR8FA8GRXM1 hTeuuoG/8cSkeiAAeLcvo9BZXvI18OQnxgi1OYgXaaoWhzX4bL4/Yx7UTfM/NJUcXbzeC3orHZEYL 0+sHTGqG+Mb7nxqPrXEJIPwFDsIbsigxbIdySdYh3D057/Zz4yNFUO8Cm0Jycz0yrwAYBihG1sJ6S aWsGDC9NApAADViPpJPErry6+/c/ewy4ihxFQSSUr0JYXxWVVmZpe20Zzte7DPhvLz5EsC4e7hi+S rfwZVq9Q==; Date: Sat, 10 Jun 2023 04:26:33 +0100 From: Matthew Wilcox To: Demi Marie Obenour Cc: Dwaipayan Ray , Lukas Bulwahn , Joe Perches , Jonathan Corbet , Federico Vaga , Juergen Gross , Stefano Stabellini , Oleksandr Tyshchenko , Lee Jones , Andy Lutomirski , Thomas Gleixner , Vincenzo Frascino , Petr Mladek , Steven Rostedt , Sergey Senozhatsky , Andy Shevchenko , Rasmus Villemoes , linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org Subject: Re: [PATCH 4/4] Strict XenStore entry parsing Message-ID: References: <20230610025759.1813-1-demi@invisiblethingslab.com> <20230610025759.1813-4-demi@invisiblethingslab.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20230610025759.1813-4-demi@invisiblethingslab.com> On Fri, Jun 09, 2023 at 10:57:59PM -0400, Demi Marie Obenour wrote: > This uses the newly-introduced strict version of sscanf(). I can see that. Why does it do that? Documentation/process/5.Posting.rst (in general, there is a lack of detail across all four of these patches justifying why any of this work is being done. it isn't obvious to me why skipping leading whitespace is bad in this context) From xen-devel-bounces@lists.xenproject.org Sat Jun 10 04:53:34 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sat, 10 Jun 2023 04:53:34 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546379.853186 (Exim 4.92) (envelope-from ) id 1q7qbJ-00082J-DK; Sat, 10 Jun 2023 04:53:21 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546379.853186; Sat, 10 Jun 2023 04:53:21 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7qbJ-00082C-9y; Sat, 10 Jun 2023 04:53:21 +0000 Received: by outflank-mailman (input) for mailman id 546379; Sat, 10 Jun 2023 04:53:20 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7qbI-000822-EG; Sat, 10 Jun 2023 04:53:20 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7qbI-00005B-6R; Sat, 10 Jun 2023 04:53:20 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7qbH-0005n6-OD; Sat, 10 Jun 2023 04:53:19 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q7qbH-0003aK-NR; Sat, 10 Jun 2023 04:53:19 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=6YMX4BVKJxFYVZVdaygqeonTJsUJq3G/FnjoYbDPCSs=; b=xiIjZflw43IvyigQ5aUlMur1fd cqTG6TUKXTCCpIsQ0Lv0AzQIv7ErKOZWaw/OXVMJTG6Y5T4GpSFEXBAtCqLdlHsFXmom1pLqwODp4 xluVp6YtzEuHN/MZexK0OQF3KbSJIZpzOBTubnUNanxBibqXk3mFfHFN2Yp8s1PltHxg=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [linux-linus test] 181337: regressions - FAIL X-Osstest-Failures: linux-linus:test-armhf-armhf-xl-credit1:xen-boot:fail:regression linux-linus:test-armhf-armhf-examine:reboot:fail:nonblocking linux-linus:test-armhf-armhf-xl-multivcpu:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking linux-linus:test-armhf-armhf-xl-credit2:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking linux-linus:test-armhf-armhf-libvirt:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-arndale:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-raw:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-qcow2:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-vhd:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-rtds:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-raw:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-qcow2:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: linux=33f2b5785a2b6b0ed1948aafee60d3abb12f1e3a X-Osstest-Versions-That: linux=6c538e1adbfc696ac4747fb10d63e704344f763d From: osstest service owner Date: Sat, 10 Jun 2023 04:53:19 +0000 flight 181337 linux-linus real [real] flight 181357 linux-linus real-retest [real] http://logs.test-lab.xenproject.org/osstest/logs/181337/ http://logs.test-lab.xenproject.org/osstest/logs/181357/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: test-armhf-armhf-xl-credit1 8 xen-boot fail REGR. vs. 180278 Tests which did not succeed, but are not blocking: test-armhf-armhf-examine 8 reboot fail like 180278 test-armhf-armhf-xl-multivcpu 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 180278 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 180278 test-armhf-armhf-xl-credit2 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 180278 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 180278 test-armhf-armhf-libvirt 8 xen-boot fail like 180278 test-armhf-armhf-xl-arndale 8 xen-boot fail like 180278 test-armhf-armhf-libvirt-raw 8 xen-boot fail like 180278 test-armhf-armhf-libvirt-qcow2 8 xen-boot fail like 180278 test-armhf-armhf-xl 8 xen-boot fail like 180278 test-armhf-armhf-xl-vhd 8 xen-boot fail like 180278 test-armhf-armhf-xl-rtds 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 180278 test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qcow2 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass version targeted for testing: linux 33f2b5785a2b6b0ed1948aafee60d3abb12f1e3a baseline version: linux 6c538e1adbfc696ac4747fb10d63e704344f763d Last test of basis 180278 2023-04-16 19:41:46 Z 54 days Failing since 180281 2023-04-17 06:24:36 Z 53 days 101 attempts Testing same since 181337 2023-06-09 09:15:16 Z 0 days 1 attempts ------------------------------------------------------------ 2659 people touched revisions under test, not listing them all jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl fail test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-freebsd11-amd64 pass test-amd64-amd64-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale fail test-amd64-amd64-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 fail test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 fail test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine fail test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt fail test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu fail test-amd64-amd64-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-amd64-pygrub pass test-amd64-amd64-libvirt-qcow2 pass test-armhf-armhf-libvirt-qcow2 fail test-amd64-amd64-libvirt-raw pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw fail test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds fail test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-amd64-xl-vhd pass test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd fail ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 337276 lines long.) From xen-devel-bounces@lists.xenproject.org Sat Jun 10 05:42:36 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sat, 10 Jun 2023 05:42:36 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546387.853200 (Exim 4.92) (envelope-from ) id 1q7rMt-0005QD-9y; Sat, 10 Jun 2023 05:42:31 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546387.853200; Sat, 10 Jun 2023 05:42:31 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7rMt-0005PI-65; Sat, 10 Jun 2023 05:42:31 +0000 Received: by outflank-mailman (input) for mailman id 546387; Sat, 10 Jun 2023 05:42:29 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7rMr-0005My-Kj for xen-devel@lists.xenproject.org; Sat, 10 Jun 2023 05:42:29 +0000 Received: from mga18.intel.com (mga18.intel.com [134.134.136.126]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 95de4ab1-0751-11ee-b232-6b7b168915f2; Sat, 10 Jun 2023 07:42:28 +0200 (CEST) Received: from orsmga005.jf.intel.com ([10.7.209.41]) by orsmga106.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 09 Jun 2023 22:42:26 -0700 Received: from lkp-server01.sh.intel.com (HELO 15ab08e44a81) ([10.239.97.150]) by orsmga005.jf.intel.com with ESMTP; 09 Jun 2023 22:42:17 -0700 Received: from kbuild by 15ab08e44a81 with local (Exim 4.96) (envelope-from ) id 1q7rMe-0009mi-1j; Sat, 10 Jun 2023 05:42:16 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 95de4ab1-0751-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1686375748; x=1717911748; h=date:from:to:cc:subject:message-id:references: mime-version:in-reply-to; bh=604bTd5KebLX7Wwvo0G69iyofM3Y2hWMagG0LdnFklk=; b=lrBaQn7g4FfIKN/WOPS8jhMUPZEzaql315hB75Ahuj/qb7icshHcgEQn 8MctfnCWkNglANbeKCGPcLeSQmv0CUd0a06y0Es2FQCmE6LWtjoBkwbim kafJ6r1kAfoRqbHTk5Z3T5a79ShM8aSz3rIqEImurHRgM5kWCRq4yBQPt eZdX0F7fr+b3a7rsT0c8X+L/BsXATN7J+kC7y+utxzWwqh4rKvktgJxaN v1EwjZ+fWqO3jyGyLbStgarzNiahoj69vnUi8hfqvv7OR5flWuz8rsmCc beTLz1vviZTYVKXqYy4nppoFU++3EhFVIbUW7yFIFC19qa/emkOfYQNxG Q==; X-IronPort-AV: E=McAfee;i="6600,9927,10736"; a="342412496" X-IronPort-AV: E=Sophos;i="6.00,231,1681196400"; d="scan'208";a="342412496" X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10736"; a="884812675" X-IronPort-AV: E=Sophos;i="6.00,231,1681196400"; d="scan'208";a="884812675" Date: Sat, 10 Jun 2023 13:42:09 +0800 From: kernel test robot To: Demi Marie Obenour , Dwaipayan Ray , Lukas Bulwahn , Joe Perches , Jonathan Corbet , Federico Vaga , Juergen Gross , Stefano Stabellini , Oleksandr Tyshchenko , Lee Jones , Andy Lutomirski , Thomas Gleixner , Vincenzo Frascino , Petr Mladek , Steven Rostedt , Sergey Senozhatsky , Andy Shevchenko , Rasmus Villemoes Cc: llvm@lists.linux.dev, oe-kbuild-all@lists.linux.dev, Demi Marie Obenour , linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org Subject: Re: [PATCH 1/4] Rip out simple_strtoll() Message-ID: <202306101334.lDZERsKo-lkp@intel.com> References: <20230610025759.1813-1-demi@invisiblethingslab.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20230610025759.1813-1-demi@invisiblethingslab.com> Hi Demi, kernel test robot noticed the following build errors: [auto build test ERROR on lee-mfd/for-mfd-next] [also build test ERROR on lee-leds/for-leds-next linus/master v6.4-rc5 next-20230609] [cannot apply to xen-tip/linux-next lee-mfd/for-mfd-fixes] [If your patch is applied to the wrong git tree, kindly drop us a note. And when submitting patch, we suggest to use '--base' as documented in https://git-scm.com/docs/git-format-patch#_base_tree_information] url: https://github.com/intel-lab-lkp/linux/commits/Demi-Marie-Obenour/vsscanf-Return-ERANGE-on-integer-overflow/20230610-110026 base: https://git.kernel.org/pub/scm/linux/kernel/git/lee/mfd.git for-mfd-next patch link: https://lore.kernel.org/r/20230610025759.1813-1-demi%40invisiblethingslab.com patch subject: [PATCH 1/4] Rip out simple_strtoll() config: arm-randconfig-r046-20230610 (https://download.01.org/0day-ci/archive/20230610/202306101334.lDZERsKo-lkp@intel.com/config) compiler: clang version 15.0.7 (https://github.com/llvm/llvm-project.git 8dfdcc7b7bf66834a761bd8de445840ef68e4d1a) reproduce (this is a W=1 build): mkdir -p ~/bin wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross chmod +x ~/bin/make.cross # install arm cross compiling tool for clang build # apt-get install binutils-arm-linux-gnueabi git remote add lee-mfd https://git.kernel.org/pub/scm/linux/kernel/git/lee/mfd.git git fetch lee-mfd for-mfd-next git checkout lee-mfd/for-mfd-next b4 shazam https://lore.kernel.org/r/20230610025759.1813-1-demi@invisiblethingslab.com # save the config file mkdir build_dir && cp config build_dir/.config COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang ~/bin/make.cross W=1 O=build_dir ARCH=arm olddefconfig COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang ~/bin/make.cross W=1 O=build_dir ARCH=arm SHELL=/bin/bash drivers/md/bcache/ If you fix the issue in a separate patch/commit (i.e. not just a new version of the same patch/commit), kindly add following tags | Reported-by: kernel test robot | Closes: https://lore.kernel.org/oe-kbuild-all/202306101334.lDZERsKo-lkp@intel.com/ All errors (new ones prefixed by >>): >> drivers/md/bcache/util.c:82:1: error: call to undeclared function 'simple_strtoll'; ISO C99 and later do not support implicit function declarations [-Werror,-Wimplicit-function-declaration] STRTO_H(strtoll, long long) ^ drivers/md/bcache/util.c:28:11: note: expanded from macro 'STRTO_H' type i = simple_ ## name(cp, &e, 10); \ ^ :22:1: note: expanded from here simple_strtoll ^ 1 error generated. vim +/simple_strtoll +82 drivers/md/bcache/util.c cafe563591446c Kent Overstreet 2013-03-23 79 cafe563591446c Kent Overstreet 2013-03-23 80 STRTO_H(strtoint, int) cafe563591446c Kent Overstreet 2013-03-23 81 STRTO_H(strtouint, unsigned int) cafe563591446c Kent Overstreet 2013-03-23 @82 STRTO_H(strtoll, long long) cafe563591446c Kent Overstreet 2013-03-23 83 STRTO_H(strtoull, unsigned long long) cafe563591446c Kent Overstreet 2013-03-23 84 -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki From xen-devel-bounces@lists.xenproject.org Sat Jun 10 05:42:37 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sat, 10 Jun 2023 05:42:37 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546386.853196 (Exim 4.92) (envelope-from ) id 1q7rMt-0005NI-2P; Sat, 10 Jun 2023 05:42:31 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546386.853196; Sat, 10 Jun 2023 05:42:31 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7rMs-0005NB-VQ; Sat, 10 Jun 2023 05:42:30 +0000 Received: by outflank-mailman (input) for mailman id 546386; Sat, 10 Jun 2023 05:42:29 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7rMq-0005My-W3 for xen-devel@lists.xenproject.org; Sat, 10 Jun 2023 05:42:29 +0000 Received: from mga18.intel.com (mga18.intel.com [134.134.136.126]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 932dd173-0751-11ee-b232-6b7b168915f2; Sat, 10 Jun 2023 07:42:26 +0200 (CEST) Received: from orsmga005.jf.intel.com ([10.7.209.41]) by orsmga106.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 09 Jun 2023 22:42:22 -0700 Received: from lkp-server01.sh.intel.com (HELO 15ab08e44a81) ([10.239.97.150]) by orsmga005.jf.intel.com with ESMTP; 09 Jun 2023 22:42:17 -0700 Received: from kbuild by 15ab08e44a81 with local (Exim 4.96) (envelope-from ) id 1q7rMe-0009me-1a; Sat, 10 Jun 2023 05:42:16 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 932dd173-0751-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1686375746; x=1717911746; h=date:from:to:cc:subject:message-id:references: mime-version:in-reply-to; bh=sQgAiqE4AY4AY0vEW9l4MzGZIdDuFn9T2C9jO4o6QXM=; b=mgNv1o7OXwwJjSoNW//17n+aC3mXB8n/q7GGXB2Buxe2IY92bmxwHINu NPgaIUX9W6xuor8euAAAjpvDAhI9u+g4o1cCjbvuK3CIEhxCa4AQBM6v6 5iXqgUXag9tPJgqCcBhMJQoqkWhP0WusZefcep90juK1LxqaOcSomCPKe C2cNnO4pWe8ExXgOR66Dp+C+sU3Haj8uXxUI0oKZq8OHtoDBhYUaNuaHb 6EjNm07EKZebcwBQc59/8wzcrICJl2C2qYS9YpKWKPDJFuknaqFm9inob 3/GAyHSoPzNXSThG4LQxQ/npiuXvc4mohRMCfPqaYZ0untc0PdEluPI3+ A==; X-IronPort-AV: E=McAfee;i="6600,9927,10736"; a="342412479" X-IronPort-AV: E=Sophos;i="6.00,231,1681196400"; d="scan'208";a="342412479" X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10736"; a="884812674" X-IronPort-AV: E=Sophos;i="6.00,231,1681196400"; d="scan'208";a="884812674" Date: Sat, 10 Jun 2023 13:42:10 +0800 From: kernel test robot To: Demi Marie Obenour , Dwaipayan Ray , Lukas Bulwahn , Joe Perches , Jonathan Corbet , Federico Vaga , Juergen Gross , Stefano Stabellini , Oleksandr Tyshchenko , Lee Jones , Andy Lutomirski , Thomas Gleixner , Vincenzo Frascino , Petr Mladek , Steven Rostedt , Sergey Senozhatsky , Andy Shevchenko , Rasmus Villemoes Cc: oe-kbuild-all@lists.linux.dev, Demi Marie Obenour , linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org Subject: Re: [PATCH 1/4] Rip out simple_strtoll() Message-ID: <202306101317.YiBrl6OZ-lkp@intel.com> References: <20230610025759.1813-1-demi@invisiblethingslab.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20230610025759.1813-1-demi@invisiblethingslab.com> Hi Demi, kernel test robot noticed the following build errors: [auto build test ERROR on lee-mfd/for-mfd-next] [also build test ERROR on lee-leds/for-leds-next linus/master v6.4-rc5 next-20230609] [cannot apply to xen-tip/linux-next lee-mfd/for-mfd-fixes] [If your patch is applied to the wrong git tree, kindly drop us a note. And when submitting patch, we suggest to use '--base' as documented in https://git-scm.com/docs/git-format-patch#_base_tree_information] url: https://github.com/intel-lab-lkp/linux/commits/Demi-Marie-Obenour/vsscanf-Return-ERANGE-on-integer-overflow/20230610-110026 base: https://git.kernel.org/pub/scm/linux/kernel/git/lee/mfd.git for-mfd-next patch link: https://lore.kernel.org/r/20230610025759.1813-1-demi%40invisiblethingslab.com patch subject: [PATCH 1/4] Rip out simple_strtoll() config: csky-randconfig-r011-20230610 (https://download.01.org/0day-ci/archive/20230610/202306101317.YiBrl6OZ-lkp@intel.com/config) compiler: csky-linux-gcc (GCC) 12.3.0 reproduce (this is a W=1 build): mkdir -p ~/bin wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross chmod +x ~/bin/make.cross git remote add lee-mfd https://git.kernel.org/pub/scm/linux/kernel/git/lee/mfd.git git fetch lee-mfd for-mfd-next git checkout lee-mfd/for-mfd-next b4 shazam https://lore.kernel.org/r/20230610025759.1813-1-demi@invisiblethingslab.com # save the config file mkdir build_dir && cp config build_dir/.config COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-12.3.0 ~/bin/make.cross W=1 O=build_dir ARCH=csky olddefconfig COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-12.3.0 ~/bin/make.cross W=1 O=build_dir ARCH=csky SHELL=/bin/bash drivers/md/bcache/ If you fix the issue in a separate patch/commit (i.e. not just a new version of the same patch/commit), kindly add following tags | Reported-by: kernel test robot | Closes: https://lore.kernel.org/oe-kbuild-all/202306101317.YiBrl6OZ-lkp@intel.com/ All errors (new ones prefixed by >>): drivers/md/bcache/util.c: In function 'bch_strtoll_h': >> drivers/md/bcache/util.c:28:18: error: implicit declaration of function 'simple_strtoll'; did you mean 'simple_strtoull'? [-Werror=implicit-function-declaration] 28 | type i = simple_ ## name(cp, &e, 10); \ | ^~~~~~~ drivers/md/bcache/util.c:82:1: note: in expansion of macro 'STRTO_H' 82 | STRTO_H(strtoll, long long) | ^~~~~~~ cc1: some warnings being treated as errors vim +28 drivers/md/bcache/util.c cafe563591446c Kent Overstreet 2013-03-23 22 cafe563591446c Kent Overstreet 2013-03-23 23 #define STRTO_H(name, type) \ 169ef1cf6171d3 Kent Overstreet 2013-03-28 24 int bch_ ## name ## _h(const char *cp, type *res) \ cafe563591446c Kent Overstreet 2013-03-23 25 { \ cafe563591446c Kent Overstreet 2013-03-23 26 int u = 0; \ cafe563591446c Kent Overstreet 2013-03-23 27 char *e; \ cafe563591446c Kent Overstreet 2013-03-23 @28 type i = simple_ ## name(cp, &e, 10); \ cafe563591446c Kent Overstreet 2013-03-23 29 \ cafe563591446c Kent Overstreet 2013-03-23 30 switch (tolower(*e)) { \ cafe563591446c Kent Overstreet 2013-03-23 31 default: \ cafe563591446c Kent Overstreet 2013-03-23 32 return -EINVAL; \ cafe563591446c Kent Overstreet 2013-03-23 33 case 'y': \ cafe563591446c Kent Overstreet 2013-03-23 34 case 'z': \ cafe563591446c Kent Overstreet 2013-03-23 35 u++; \ df561f6688fef7 Gustavo A. R. Silva 2020-08-23 36 fallthrough; \ cafe563591446c Kent Overstreet 2013-03-23 37 case 'e': \ cafe563591446c Kent Overstreet 2013-03-23 38 u++; \ df561f6688fef7 Gustavo A. R. Silva 2020-08-23 39 fallthrough; \ cafe563591446c Kent Overstreet 2013-03-23 40 case 'p': \ cafe563591446c Kent Overstreet 2013-03-23 41 u++; \ df561f6688fef7 Gustavo A. R. Silva 2020-08-23 42 fallthrough; \ cafe563591446c Kent Overstreet 2013-03-23 43 case 't': \ cafe563591446c Kent Overstreet 2013-03-23 44 u++; \ df561f6688fef7 Gustavo A. R. Silva 2020-08-23 45 fallthrough; \ cafe563591446c Kent Overstreet 2013-03-23 46 case 'g': \ cafe563591446c Kent Overstreet 2013-03-23 47 u++; \ df561f6688fef7 Gustavo A. R. Silva 2020-08-23 48 fallthrough; \ cafe563591446c Kent Overstreet 2013-03-23 49 case 'm': \ cafe563591446c Kent Overstreet 2013-03-23 50 u++; \ df561f6688fef7 Gustavo A. R. Silva 2020-08-23 51 fallthrough; \ cafe563591446c Kent Overstreet 2013-03-23 52 case 'k': \ cafe563591446c Kent Overstreet 2013-03-23 53 u++; \ cafe563591446c Kent Overstreet 2013-03-23 54 if (e++ == cp) \ cafe563591446c Kent Overstreet 2013-03-23 55 return -EINVAL; \ df561f6688fef7 Gustavo A. R. Silva 2020-08-23 56 fallthrough; \ cafe563591446c Kent Overstreet 2013-03-23 57 case '\n': \ cafe563591446c Kent Overstreet 2013-03-23 58 case '\0': \ cafe563591446c Kent Overstreet 2013-03-23 59 if (*e == '\n') \ cafe563591446c Kent Overstreet 2013-03-23 60 e++; \ cafe563591446c Kent Overstreet 2013-03-23 61 } \ cafe563591446c Kent Overstreet 2013-03-23 62 \ cafe563591446c Kent Overstreet 2013-03-23 63 if (*e) \ cafe563591446c Kent Overstreet 2013-03-23 64 return -EINVAL; \ cafe563591446c Kent Overstreet 2013-03-23 65 \ cafe563591446c Kent Overstreet 2013-03-23 66 while (u--) { \ cafe563591446c Kent Overstreet 2013-03-23 67 if ((type) ~0 > 0 && \ cafe563591446c Kent Overstreet 2013-03-23 68 (type) ~0 / 1024 <= i) \ cafe563591446c Kent Overstreet 2013-03-23 69 return -EINVAL; \ cafe563591446c Kent Overstreet 2013-03-23 70 if ((i > 0 && ANYSINT_MAX(type) / 1024 < i) || \ cafe563591446c Kent Overstreet 2013-03-23 71 (i < 0 && -ANYSINT_MAX(type) / 1024 > i)) \ cafe563591446c Kent Overstreet 2013-03-23 72 return -EINVAL; \ cafe563591446c Kent Overstreet 2013-03-23 73 i *= 1024; \ cafe563591446c Kent Overstreet 2013-03-23 74 } \ cafe563591446c Kent Overstreet 2013-03-23 75 \ cafe563591446c Kent Overstreet 2013-03-23 76 *res = i; \ cafe563591446c Kent Overstreet 2013-03-23 77 return 0; \ cafe563591446c Kent Overstreet 2013-03-23 78 } \ cafe563591446c Kent Overstreet 2013-03-23 79 -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki From xen-devel-bounces@lists.xenproject.org Sat Jun 10 07:50:02 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sat, 10 Jun 2023 07:50:02 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546399.853215 (Exim 4.92) (envelope-from ) id 1q7tM0-0001aK-Hh; Sat, 10 Jun 2023 07:49:44 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546399.853215; Sat, 10 Jun 2023 07:49:44 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7tM0-0001aD-Eh; Sat, 10 Jun 2023 07:49:44 +0000 Received: by outflank-mailman (input) for mailman id 546399; Sat, 10 Jun 2023 07:49:42 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7tLy-0001a3-6g for xen-devel@lists.xenproject.org; Sat, 10 Jun 2023 07:49:42 +0000 Received: from bombadil.infradead.org (bombadil.infradead.org [2607:7c80:54:3::133]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 59aade4d-0763-11ee-b232-6b7b168915f2; Sat, 10 Jun 2023 09:49:39 +0200 (CEST) Received: from hch by bombadil.infradead.org with local (Exim 4.96 #2 (Red Hat Linux)) id 1q7tLS-00FUgv-1F; Sat, 10 Jun 2023 07:49:10 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 59aade4d-0763-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=bombadil.20210309; h=In-Reply-To:Content-Type:MIME-Version :References:Message-ID:Subject:Cc:To:From:Date:Sender:Reply-To: Content-Transfer-Encoding:Content-ID:Content-Description; bh=UmRbWljufOPyIQiIA7CHB8iopRQHod9Lz261qd58zvs=; b=nEy8SFw08DDvJdj0bE8owjCgYJ MxplFsLBDrXPMjndU9aVtWXYozgH686nLhrIwfzoPEdmK3bZZcdbaZZywwF0Le//wtRCM+oL4rZjd xAXCGmj7bTdJOTw185oeGzARHKM/OsYXo7DgGaS0V+UKYBBfR2oiMcnwNooQm2kB5W3XzmT00TqDd nP0ts9vHWoRIVfAIxOYT5y5E7ctDiFERDzIAlQK0RyublDP6Rj37SfvqnsSilB/KqlE+gpg5yHjEs kKgxOEsmznIm+llwr1JrwtPJFEpmNk5ZhqAYwYd6PZVMqt5L3PbHPGRTOZu2cc3e2NpqWG9KZ416Z Qftgjt7Q==; Date: Sat, 10 Jun 2023 00:49:10 -0700 From: Christoph Hellwig To: Demi Marie Obenour Cc: Dwaipayan Ray , Lukas Bulwahn , Joe Perches , Jonathan Corbet , Federico Vaga , Juergen Gross , Stefano Stabellini , Oleksandr Tyshchenko , Lee Jones , Andy Lutomirski , Thomas Gleixner , Vincenzo Frascino , Petr Mladek , Steven Rostedt , Sergey Senozhatsky , Andy Shevchenko , Rasmus Villemoes , linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org Subject: Re: [PATCH 1/4] Rip out simple_strtoll() Message-ID: References: <20230610025759.1813-1-demi@invisiblethingslab.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20230610025759.1813-1-demi@invisiblethingslab.com> X-SRS-Rewrite: SMTP reverse-path rewritten from by bombadil.infradead.org. See http://www.infradead.org/rpr.html I'd maybe say remove instead of "rip out", but otherwise this looks good: Reviewed-by: Christoph Hellwig From xen-devel-bounces@lists.xenproject.org Sat Jun 10 07:51:49 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sat, 10 Jun 2023 07:51:49 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546404.853226 (Exim 4.92) (envelope-from ) id 1q7tNz-0002z3-Ui; Sat, 10 Jun 2023 07:51:47 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546404.853226; Sat, 10 Jun 2023 07:51:47 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7tNz-0002yw-QS; Sat, 10 Jun 2023 07:51:47 +0000 Received: by outflank-mailman (input) for mailman id 546404; Sat, 10 Jun 2023 07:51:47 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7tNz-0002yq-02 for xen-devel@lists.xenproject.org; Sat, 10 Jun 2023 07:51:47 +0000 Received: from bombadil.infradead.org (bombadil.infradead.org [2607:7c80:54:3::133]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id a5357a95-0763-11ee-b232-6b7b168915f2; Sat, 10 Jun 2023 09:51:45 +0200 (CEST) Received: from hch by bombadil.infradead.org with local (Exim 4.96 #2 (Red Hat Linux)) id 1q7tNa-00FUrA-2s; Sat, 10 Jun 2023 07:51:22 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: a5357a95-0763-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=bombadil.20210309; h=In-Reply-To:Content-Type:MIME-Version :References:Message-ID:Subject:Cc:To:From:Date:Sender:Reply-To: Content-Transfer-Encoding:Content-ID:Content-Description; bh=e993wCnDw9cGSzHO3lA4YECEyqTNXOWktvMD8n9Ni8w=; b=NFydZQOJpvXZKorY75hNir585N L6a9rdeYoXfmClisnE93A6Sj4O6Kfc/eHZKnRq5bRcsZlYswnXFQ06Wx3itGIDhajWm7IRlwnm37H jUBwzy1me9B9e042+vob8oQHB5NoYr2id87qvCKwarkdQqfG2QxajfMeUWI9Mxa5wZKe5IYJJD7Ek o4hk8csDjBS/8TgSOYDEUg5vtnW7AmIKUMHZ5B9g/bkdaPiHvCjMdDIR6bbZMeZnJ6YAAOLdfFwV6 C7eSM2WWsNnv4AZLNTpGS3pP7Mg+FQnw82CQfkJcBTjEvRiH3FtBl1NpzTalPZ45iqkaNcOuK2Zt1 4GAZJmBQ==; Date: Sat, 10 Jun 2023 00:51:22 -0700 From: Christoph Hellwig To: Demi Marie Obenour , Richard Weinberger , Linus Torvalds Cc: Dwaipayan Ray , Lukas Bulwahn , Joe Perches , Jonathan Corbet , Federico Vaga , Juergen Gross , Stefano Stabellini , Oleksandr Tyshchenko , Lee Jones , Andy Lutomirski , Thomas Gleixner , Vincenzo Frascino , Petr Mladek , Steven Rostedt , Sergey Senozhatsky , Andy Shevchenko , Rasmus Villemoes , linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org Subject: Re: [PATCH 2/4] vsscanf(): Return -ERANGE on integer overflow Message-ID: References: <20230610025759.1813-1-demi@invisiblethingslab.com> <20230610025759.1813-2-demi@invisiblethingslab.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20230610025759.1813-2-demi@invisiblethingslab.com> X-SRS-Rewrite: SMTP reverse-path rewritten from by bombadil.infradead.org. See http://www.infradead.org/rpr.html [Adding Richard and Linus as they're having another overflow checking discussion and we should probably merge those] On Fri, Jun 09, 2023 at 10:57:57PM -0400, Demi Marie Obenour wrote: > Userspace sets errno to ERANGE, but the kernel can't do that. That seems like a very parse commit log, and also kinda besides the point - the kernel always returns error in-line and not through errno. I think you need to document here why we want to do the overflow checking (not that I doubt it, but it really needs to be in the commit message). Leaving the rest of the quote here for the new arrivals. > > Signed-off-by: Demi Marie Obenour > --- > include/linux/limits.h | 1 + > include/linux/mfd/wl1273-core.h | 3 -- > include/vdso/limits.h | 3 ++ > lib/vsprintf.c | 80 ++++++++++++++++++++++++--------- > 4 files changed, 63 insertions(+), 24 deletions(-) > > diff --git a/include/linux/limits.h b/include/linux/limits.h > index f6bcc936901071f496e3e85bb6e1d93905b12e32..8f7fd85b41fb46e6992d9e5912da00424119227a 100644 > --- a/include/linux/limits.h > +++ b/include/linux/limits.h > @@ -8,6 +8,7 @@ > > #define SIZE_MAX (~(size_t)0) > #define SSIZE_MAX ((ssize_t)(SIZE_MAX >> 1)) > +#define SSIZE_MIN (-SSIZE_MAX - 1) > #define PHYS_ADDR_MAX (~(phys_addr_t)0) > > #define U8_MAX ((u8)~0U) > diff --git a/include/linux/mfd/wl1273-core.h b/include/linux/mfd/wl1273-core.h > index c28cf76d5c31ee1c94a9319a2e2d318bf00283a6..b81a229135ed9f756c749122a8341816031c8311 100644 > --- a/include/linux/mfd/wl1273-core.h > +++ b/include/linux/mfd/wl1273-core.h > @@ -204,9 +204,6 @@ > WL1273_IS2_TRI_OPT | \ > WL1273_IS2_RATE_48K) > > -#define SCHAR_MIN (-128) > -#define SCHAR_MAX 127 > - > #define WL1273_FR_EVENT BIT(0) > #define WL1273_BL_EVENT BIT(1) > #define WL1273_RDS_EVENT BIT(2) > diff --git a/include/vdso/limits.h b/include/vdso/limits.h > index 0197888ad0e00b2f853d3f25ffa764f61cca7385..0cad0a2490e5efc194d874025eb3e3b846a5c7b4 100644 > --- a/include/vdso/limits.h > +++ b/include/vdso/limits.h > @@ -2,6 +2,9 @@ > #ifndef __VDSO_LIMITS_H > #define __VDSO_LIMITS_H > > +#define UCHAR_MAX ((unsigned char)~0U) > +#define SCHAR_MAX ((signed char)(UCHAR_MAX >> 1)) > +#define SCHAR_MIN ((signed char)(-SCHAR_MAX - 1)) > #define USHRT_MAX ((unsigned short)~0U) > #define SHRT_MAX ((short)(USHRT_MAX >> 1)) > #define SHRT_MIN ((short)(-SHRT_MAX - 1)) > diff --git a/lib/vsprintf.c b/lib/vsprintf.c > index a60d348efb276d66ca07fe464883408df7fdab97..9846d2385f5b9e8f3945a5664d81047e97cf10d5 100644 > --- a/lib/vsprintf.c > +++ b/lib/vsprintf.c > @@ -59,7 +59,7 @@ > bool no_hash_pointers __ro_after_init; > EXPORT_SYMBOL_GPL(no_hash_pointers); > > -static noinline unsigned long long simple_strntoull(const char *startp, size_t max_chars, char **endp, unsigned int base) > +static noinline unsigned long long simple_strntoull(const char *startp, size_t max_chars, char **endp, unsigned int base, bool *overflow) > { > const char *cp; > unsigned long long result = 0ULL; > @@ -71,6 +71,8 @@ static noinline unsigned long long simple_strntoull(const char *startp, size_t m > if (prefix_chars < max_chars) { > rv = _parse_integer_limit(cp, base, &result, max_chars - prefix_chars); > /* FIXME */ > + if (overflow) > + *overflow = !!(rv & KSTRTOX_OVERFLOW); > cp += (rv & ~KSTRTOX_OVERFLOW); > } else { > /* Field too short for prefix + digit, skip over without converting */ > @@ -94,7 +96,7 @@ static noinline unsigned long long simple_strntoull(const char *startp, size_t m > noinline > unsigned long long simple_strtoull(const char *cp, char **endp, unsigned int base) > { > - return simple_strntoull(cp, INT_MAX, endp, base); > + return simple_strntoull(cp, INT_MAX, endp, base, NULL); > } > EXPORT_SYMBOL(simple_strtoull); > > @@ -130,18 +132,22 @@ long simple_strtol(const char *cp, char **endp, unsigned int base) > EXPORT_SYMBOL(simple_strtol); > > static long long simple_strntoll(const char *cp, size_t max_chars, char **endp, > - unsigned int base) > + unsigned int base, bool *overflow) > { > + unsigned long long minand; > + bool negate; > + > /* > * simple_strntoull() safely handles receiving max_chars==0 in the > * case cp[0] == '-' && max_chars == 1. > * If max_chars == 0 we can drop through and pass it to simple_strntoull() > * and the content of *cp is irrelevant. > */ > - if (*cp == '-' && max_chars > 0) > - return -simple_strntoull(cp + 1, max_chars - 1, endp, base); > - > - return simple_strntoull(cp, max_chars, endp, base); > + negate = *cp == '-' && max_chars > 0; > + minand = simple_strntoull(cp + negate, max_chars - negate, endp, base, overflow); > + if (minand > (unsigned long long)LONG_MAX + negate) > + *overflow = true; > + return negate ? -minand : minand; > } > > static noinline_for_stack > @@ -3427,7 +3433,7 @@ int vsscanf(const char *buf, const char *fmt, va_list args) > unsigned long long u; > } val; > s16 field_width; > - bool is_sign; > + bool is_sign, overflow; > > while (*fmt) { > /* skip any white space in format */ > @@ -3635,45 +3641,77 @@ int vsscanf(const char *buf, const char *fmt, va_list args) > if (is_sign) > val.s = simple_strntoll(str, > field_width >= 0 ? field_width : INT_MAX, > - &next, base); > + &next, base, &overflow); > else > val.u = simple_strntoull(str, > field_width >= 0 ? field_width : INT_MAX, > - &next, base); > + &next, base, &overflow); > + if (unlikely(overflow)) > + return -ERANGE; > > switch (qualifier) { > case 'H': /* that's 'hh' in format */ > - if (is_sign) > + if (is_sign) { > + if (unlikely(val.s < SCHAR_MIN || val.s > SCHAR_MAX)) > + return -ERANGE; > *va_arg(args, signed char *) = val.s; > - else > + } else { > + if (unlikely(val.u > UCHAR_MAX)) > + return -ERANGE; > *va_arg(args, unsigned char *) = val.u; > + } > break; > case 'h': > - if (is_sign) > + if (is_sign) { > + if (unlikely(val.s < SHRT_MIN || val.s > SHRT_MAX)) > + return -ERANGE; > *va_arg(args, short *) = val.s; > - else > + } else { > + if (unlikely(val.u > USHRT_MAX)) > + return -ERANGE; > *va_arg(args, unsigned short *) = val.u; > + } > break; > case 'l': > - if (is_sign) > + if (is_sign) { > + if (unlikely(val.s < LONG_MIN || val.s > LONG_MAX)) > + return -ERANGE; > *va_arg(args, long *) = val.s; > - else > + } else { > + if (unlikely(val.u > ULONG_MAX)) > + return -ERANGE; > *va_arg(args, unsigned long *) = val.u; > + } > break; > case 'L': > - if (is_sign) > + /* No overflow check needed */ > + if (is_sign) { > *va_arg(args, long long *) = val.s; > - else > + } else { > *va_arg(args, unsigned long long *) = val.u; > + } > break; > case 'z': > - *va_arg(args, size_t *) = val.u; > + if (is_sign) { > + if (unlikely(val.s < SSIZE_MIN || val.s > SSIZE_MAX)) > + return -ERANGE; > + *va_arg(args, ssize_t *) = val.s; > + } else { > + if (unlikely(val.u > SIZE_MAX)) > + return -ERANGE; > + *va_arg(args, size_t *) = val.u; > + } > break; > default: > - if (is_sign) > + if (is_sign) { > + if (unlikely(val.s < INT_MIN || val.s > INT_MAX)) > + return -ERANGE; > *va_arg(args, int *) = val.s; > - else > + } else { > + if (unlikely(val.u > UINT_MAX)) > + return -ERANGE; > *va_arg(args, unsigned int *) = val.u; > + } > break; > } > num++; > -- > Sincerely, > Demi Marie Obenour (she/her/hers) > Invisible Things Lab > ---end quoted text--- From xen-devel-bounces@lists.xenproject.org Sat Jun 10 07:52:24 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sat, 10 Jun 2023 07:52:24 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546409.853235 (Exim 4.92) (envelope-from ) id 1q7tOa-0003VD-5p; Sat, 10 Jun 2023 07:52:24 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546409.853235; Sat, 10 Jun 2023 07:52:24 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7tOa-0003V6-2i; Sat, 10 Jun 2023 07:52:24 +0000 Received: by outflank-mailman (input) for mailman id 546409; Sat, 10 Jun 2023 07:52:22 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7tOY-0003Uy-MZ for xen-devel@lists.xenproject.org; Sat, 10 Jun 2023 07:52:22 +0000 Received: from bombadil.infradead.org (bombadil.infradead.org [2607:7c80:54:3::133]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id b9a07e6b-0763-11ee-8611-37d641c3527e; Sat, 10 Jun 2023 09:52:20 +0200 (CEST) Received: from hch by bombadil.infradead.org with local (Exim 4.96 #2 (Red Hat Linux)) id 1q7tOE-00FUuk-0b; Sat, 10 Jun 2023 07:52:02 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: b9a07e6b-0763-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=bombadil.20210309; h=In-Reply-To:Content-Type:MIME-Version :References:Message-ID:Subject:Cc:To:From:Date:Sender:Reply-To: Content-Transfer-Encoding:Content-ID:Content-Description; bh=I3eudtYeV5TV5WQHRhUyvWFxU9I3ISH8S89bAYnG6NU=; b=f67UfxH47kEQBnD5o9jf/FX+4g 1qi78PW8Y96Pzah96O/dbY4opnpR8I+Haj9rAOZWZ6xeIQUbm8IHzX8wsmaJ0tUC5/A5JqklIiBIf AJjvSHlQh3+fkxkgPNvviLO41VtvJ0cKmNUh8Amkmh5s2WkMulPrcGAu3n6hTXfozxgmYPoPdH2gV zmPLDFHPBNz5vdpn9HUNwx+2765btptWc0jjeE7tcm3rFtX5IrYU0PHhUbldM3t6eEtNnJnRbxaYe tetgvBNjIxfZ4e9OP6Fs6kqqIX2pgra32nosEzCcgu86DrtXyMlmfGkAmb5ocqKaNuP6rSqhHaoa4 s7bjZeag==; Date: Sat, 10 Jun 2023 00:52:02 -0700 From: Christoph Hellwig To: Demi Marie Obenour Cc: Dwaipayan Ray , Lukas Bulwahn , Joe Perches , Jonathan Corbet , Federico Vaga , Juergen Gross , Stefano Stabellini , Oleksandr Tyshchenko , Lee Jones , Andy Lutomirski , Thomas Gleixner , Vincenzo Frascino , Petr Mladek , Steven Rostedt , Sergey Senozhatsky , Andy Shevchenko , Rasmus Villemoes , linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org Subject: Re: [PATCH 3/4] Add strict version of vsscanf() Message-ID: References: <20230610025759.1813-1-demi@invisiblethingslab.com> <20230610025759.1813-3-demi@invisiblethingslab.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20230610025759.1813-3-demi@invisiblethingslab.com> X-SRS-Rewrite: SMTP reverse-path rewritten from by bombadil.infradead.org. See http://www.infradead.org/rpr.html This needs a real commit message explaining what the strict version does and why, and why we can't just make the normal version more strict. From xen-devel-bounces@lists.xenproject.org Sat Jun 10 08:04:34 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sat, 10 Jun 2023 08:04:34 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546447.853350 (Exim 4.92) (envelope-from ) id 1q7ta8-0006re-BL; Sat, 10 Jun 2023 08:04:20 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546447.853350; Sat, 10 Jun 2023 08:04:20 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7ta8-0006rW-8T; Sat, 10 Jun 2023 08:04:20 +0000 Received: by outflank-mailman (input) for mailman id 546447; Sat, 10 Jun 2023 08:04:19 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7ta7-0006rG-QV; Sat, 10 Jun 2023 08:04:19 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7ta7-0005Kd-OJ; Sat, 10 Jun 2023 08:04:19 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7ta7-00018g-A1; Sat, 10 Jun 2023 08:04:19 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q7ta7-0000yF-9b; Sat, 10 Jun 2023 08:04:19 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=iZeVj8DQqPnKN/9ySZIX/oqfmkeG0gwl0IUXhCQgG5Q=; b=TlzbpcO66/WAA0O39eVtXG4gK9 xV4+QqeSglgE2EFusfc8ABoxapTQU9EQ/1bBVnD+nskVrBo0IBwBsy/ZAry8+D4z4/a+yYYuQW5wS aIPlCp+uH0MqhQRSIeJN/l3aGdIaVRA5YPEvBRJNRSlNtWcrFJW8VBKssyXEpZ4naMdg=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable test] 181352: tolerable FAIL - PUSHED X-Osstest-Failures: xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-i386-xl-vhd:guest-start/debian.repeat:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking X-Osstest-Versions-This: xen=b4642c32c4d079916d5607ddda0232aae5e1690e X-Osstest-Versions-That: xen=64a647f8d817c6989edc000613b5afae19f03f99 From: osstest service owner Date: Sat, 10 Jun 2023 08:04:19 +0000 flight 181352 xen-unstable real [real] http://logs.test-lab.xenproject.org/osstest/logs/181352/ Failures :-/ but no regressions. Tests which did not succeed, but are not blocking: test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail like 181290 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail like 181290 test-amd64-i386-xl-vhd 21 guest-start/debian.repeat fail like 181290 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 181325 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop fail like 181325 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 181325 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 181325 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop fail like 181325 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop fail like 181325 test-armhf-armhf-libvirt 16 saverestore-support-check fail like 181325 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 181325 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop fail like 181325 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 181325 test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-i386-xl-pvshim 14 guest-start fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-i386-libvirt 15 migrate-support-check fail never pass test-amd64-i386-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-armhf-armhf-xl-multivcpu 15 migrate-support-check fail never pass test-armhf-armhf-xl-multivcpu 16 saverestore-support-check fail never pass test-amd64-i386-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-xl 15 migrate-support-check fail never pass test-armhf-armhf-xl 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass test-armhf-armhf-xl-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 15 saverestore-support-check fail never pass test-armhf-armhf-xl-arndale 15 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 16 saverestore-support-check fail never pass test-armhf-armhf-xl-credit2 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit2 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt 15 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 15 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail never pass version targeted for testing: xen b4642c32c4d079916d5607ddda0232aae5e1690e baseline version: xen 64a647f8d817c6989edc000613b5afae19f03f99 Last test of basis 181325 2023-06-09 01:53:43 Z 1 days Testing same since 181352 2023-06-09 22:38:30 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Andrew Cooper Christian Lindig George Dunlap Henry Wang # CHANGELOG Juergen Gross Julien Grall Luca Fancellu Michal Orzel Roger Pau Monne Roger Pau Monné Stefano Stabellini jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64-xtf pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-prev pass build-i386-prev pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-xtf-amd64-amd64-1 pass test-xtf-amd64-amd64-2 pass test-xtf-amd64-amd64-3 pass test-xtf-amd64-amd64-4 pass test-xtf-amd64-amd64-5 pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl pass test-amd64-i386-xl pass test-amd64-coresched-i386-xl pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-i386-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-i386-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-i386-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-i386-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-i386-qemut-rhel6hvm-amd pass test-amd64-i386-qemuu-rhel6hvm-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-i386-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-freebsd10-amd64 pass test-amd64-amd64-qemuu-freebsd11-amd64 pass test-amd64-amd64-qemuu-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-i386-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-i386-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-i386-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-amd64-i386-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale pass test-amd64-amd64-examine-bios pass test-amd64-i386-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 pass test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 pass test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine pass test-amd64-i386-examine pass test-amd64-i386-freebsd10-i386 pass test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-i386-qemut-rhel6hvm-intel pass test-amd64-i386-qemuu-rhel6hvm-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt pass test-amd64-i386-libvirt pass test-amd64-amd64-livepatch pass test-amd64-i386-livepatch pass test-amd64-amd64-migrupgrade pass test-amd64-i386-migrupgrade pass test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu pass test-amd64-amd64-pair pass test-amd64-i386-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-i386-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-i386-xl-pvshim fail test-amd64-amd64-pygrub pass test-armhf-armhf-libvirt-qcow2 pass test-amd64-amd64-xl-qcow2 pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw pass test-amd64-i386-libvirt-raw pass test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds pass test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-amd64-i386-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-i386-examine-uefi pass test-amd64-amd64-libvirt-vhd pass test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd pass test-amd64-i386-xl-vhd fail ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Pushing revision : To xenbits.xen.org:/home/xen/git/xen.git 64a647f8d8..b4642c32c4 b4642c32c4d079916d5607ddda0232aae5e1690e -> master From xen-devel-bounces@lists.xenproject.org Sat Jun 10 08:10:38 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sat, 10 Jun 2023 08:10:38 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546474.853420 (Exim 4.92) (envelope-from ) id 1q7tg8-0000ia-0h; Sat, 10 Jun 2023 08:10:32 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546474.853420; Sat, 10 Jun 2023 08:10:31 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7tg7-0000iT-TG; Sat, 10 Jun 2023 08:10:31 +0000 Received: by outflank-mailman (input) for mailman id 546474; Sat, 10 Jun 2023 08:10:30 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7tg6-0000iN-U0 for xen-devel@lists.xenproject.org; Sat, 10 Jun 2023 08:10:30 +0000 Received: from lithops.sigma-star.at (lithops.sigma-star.at [195.201.40.130]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 42a25165-0766-11ee-8611-37d641c3527e; Sat, 10 Jun 2023 10:10:28 +0200 (CEST) Received: from localhost (localhost [127.0.0.1]) by lithops.sigma-star.at (Postfix) with ESMTP id 84973616B2D6; Sat, 10 Jun 2023 10:10:27 +0200 (CEST) Received: from lithops.sigma-star.at ([127.0.0.1]) by localhost (lithops.sigma-star.at [127.0.0.1]) (amavisd-new, port 10032) with ESMTP id O087NdUXunvD; Sat, 10 Jun 2023 10:10:26 +0200 (CEST) Received: from localhost (localhost [127.0.0.1]) by lithops.sigma-star.at (Postfix) with ESMTP id 9F88461A7038; Sat, 10 Jun 2023 10:10:26 +0200 (CEST) Received: from lithops.sigma-star.at ([127.0.0.1]) by localhost (lithops.sigma-star.at [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id qFrUs6xy5cnj; Sat, 10 Jun 2023 10:10:26 +0200 (CEST) Received: from lithops.sigma-star.at (lithops.sigma-star.at [195.201.40.130]) by lithops.sigma-star.at (Postfix) with ESMTP id 637B4616B2DB; Sat, 10 Jun 2023 10:10:26 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 42a25165-0766-11ee-8611-37d641c3527e Date: Sat, 10 Jun 2023 10:10:26 +0200 (CEST) From: Richard Weinberger To: Christoph Hellwig Cc: Demi Marie Obenour , torvalds , Dwaipayan Ray , Lukas Bulwahn , Joe Perches , Jonathan Corbet , Federico Vaga , jgross , Stefano Stabellini , Oleksandr Tyshchenko , Lee Jones , Andy Lutomirski , tglx , Vincenzo Frascino , Petr Mladek , Steven Rostedt , senozhatsky , Andy Shevchenko , Rasmus Villemoes , Linux Doc Mailing List , linux-kernel , xen-devel@lists.xenproject.org Message-ID: <880576435.3707190.1686384626249.JavaMail.zimbra@nod.at> In-Reply-To: References: <20230610025759.1813-1-demi@invisiblethingslab.com> <20230610025759.1813-2-demi@invisiblethingslab.com> Subject: Re: [PATCH 2/4] vsscanf(): Return -ERANGE on integer overflow MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Originating-IP: [195.201.40.130] X-Mailer: Zimbra 8.8.12_GA_3807 (ZimbraWebClient - FF97 (Linux)/8.8.12_GA_3809) Thread-Topic: vsscanf(): Return -ERANGE on integer overflow Thread-Index: p4ts5uhOrcG+8Y8hROgACAR25NuqQA== ----- Urspr=C3=BCngliche Mail ----- > Von: "Christoph Hellwig" > [Adding Richard and Linus as they're having another overflow checking > discussion and we should probably merge those] Thx for letting me know! =20 > On Fri, Jun 09, 2023 at 10:57:57PM -0400, Demi Marie Obenour wrote: >> Userspace sets errno to ERANGE, but the kernel can't do that. >=20 > That seems like a very parse commit log, and also kinda besides > the point - the kernel always returns error in-line and not through > errno. I think you need to document here why we want to do the > overflow checking (not that I doubt it, but it really needs to be > in the commit message). >=20 > Leaving the rest of the quote here for the new arrivals. >=20 >>=20 >> Signed-off-by: Demi Marie Obenour >> --- >> include/linux/limits.h | 1 + >> include/linux/mfd/wl1273-core.h | 3 -- >> include/vdso/limits.h | 3 ++ >> lib/vsprintf.c | 80 ++++++++++++++++++++++++--------- >> 4 files changed, 63 insertions(+), 24 deletions(-) >>=20 >> diff --git a/include/linux/limits.h b/include/linux/limits.h >> index >> f6bcc936901071f496e3e85bb6e1d93905b12e32..8f7fd85b41fb46e6992d9e5912da00= 424119227a >> 100644 >> --- a/include/linux/limits.h >> +++ b/include/linux/limits.h >> @@ -8,6 +8,7 @@ >> =20 >> #define SIZE_MAX=09(~(size_t)0) >> #define SSIZE_MAX=09((ssize_t)(SIZE_MAX >> 1)) >> +#define SSIZE_MIN=09(-SSIZE_MAX - 1) >> #define PHYS_ADDR_MAX=09(~(phys_addr_t)0) >> =20 >> #define U8_MAX=09=09((u8)~0U) >> diff --git a/include/linux/mfd/wl1273-core.h b/include/linux/mfd/wl1273-= core.h >> index >> c28cf76d5c31ee1c94a9319a2e2d318bf00283a6..b81a229135ed9f756c749122a83418= 16031c8311 >> 100644 >> --- a/include/linux/mfd/wl1273-core.h >> +++ b/include/linux/mfd/wl1273-core.h >> @@ -204,9 +204,6 @@ >> =09=09=09=09 WL1273_IS2_TRI_OPT | \ >> =09=09=09=09 WL1273_IS2_RATE_48K) >> =20 >> -#define SCHAR_MIN (-128) >> -#define SCHAR_MAX 127 >> - >> #define WL1273_FR_EVENT=09=09=09BIT(0) >> #define WL1273_BL_EVENT=09=09=09BIT(1) >> #define WL1273_RDS_EVENT=09=09BIT(2) >> diff --git a/include/vdso/limits.h b/include/vdso/limits.h >> index >> 0197888ad0e00b2f853d3f25ffa764f61cca7385..0cad0a2490e5efc194d874025eb3e3= b846a5c7b4 >> 100644 >> --- a/include/vdso/limits.h >> +++ b/include/vdso/limits.h >> @@ -2,6 +2,9 @@ >> #ifndef __VDSO_LIMITS_H >> #define __VDSO_LIMITS_H >> =20 >> +#define UCHAR_MAX=09((unsigned char)~0U) >> +#define SCHAR_MAX=09((signed char)(UCHAR_MAX >> 1)) >> +#define SCHAR_MIN=09((signed char)(-SCHAR_MAX - 1)) >> #define USHRT_MAX=09((unsigned short)~0U) >> #define SHRT_MAX=09((short)(USHRT_MAX >> 1)) >> #define SHRT_MIN=09((short)(-SHRT_MAX - 1)) >> diff --git a/lib/vsprintf.c b/lib/vsprintf.c >> index >> a60d348efb276d66ca07fe464883408df7fdab97..9846d2385f5b9e8f3945a5664d8104= 7e97cf10d5 >> 100644 >> --- a/lib/vsprintf.c >> +++ b/lib/vsprintf.c >> @@ -59,7 +59,7 @@ >> bool no_hash_pointers __ro_after_init; >> EXPORT_SYMBOL_GPL(no_hash_pointers); >> =20 >> -static noinline unsigned long long simple_strntoull(const char *startp,= size_t >> max_chars, char **endp, unsigned int base) >> +static noinline unsigned long long simple_strntoull(const char *startp,= size_t >> max_chars, char **endp, unsigned int base, bool *overflow) >> { >> =09const char *cp; >> =09unsigned long long result =3D 0ULL; >> @@ -71,6 +71,8 @@ static noinline unsigned long long simple_strntoull(co= nst char >> *startp, size_t m >> =09if (prefix_chars < max_chars) { >> =09=09rv =3D _parse_integer_limit(cp, base, &result, max_chars - prefix= _chars); >> =09=09/* FIXME */ >> +=09=09if (overflow) >> +=09=09=09*overflow =3D !!(rv & KSTRTOX_OVERFLOW); >> =09=09cp +=3D (rv & ~KSTRTOX_OVERFLOW); >> =09} else { >> =09=09/* Field too short for prefix + digit, skip over without converti= ng */ >> @@ -94,7 +96,7 @@ static noinline unsigned long long simple_strntoull(co= nst char >> *startp, size_t m >> noinline >> unsigned long long simple_strtoull(const char *cp, char **endp, unsigne= d int >> base) >> { >> -=09return simple_strntoull(cp, INT_MAX, endp, base); >> +=09return simple_strntoull(cp, INT_MAX, endp, base, NULL); >> } >> EXPORT_SYMBOL(simple_strtoull); >> =20 >> @@ -130,18 +132,22 @@ long simple_strtol(const char *cp, char **endp, un= signed >> int base) >> EXPORT_SYMBOL(simple_strtol); >> =20 >> static long long simple_strntoll(const char *cp, size_t max_chars, char= **endp, >> -=09=09=09=09 unsigned int base) >> +=09=09=09=09 unsigned int base, bool *overflow) >> { >> +=09unsigned long long minand; >> +=09bool negate; >> + >> =09/* >> =09 * simple_strntoull() safely handles receiving max_chars=3D=3D0 in t= he >> =09 * case cp[0] =3D=3D '-' && max_chars =3D=3D 1. >> =09 * If max_chars =3D=3D 0 we can drop through and pass it to simple_s= trntoull() >> =09 * and the content of *cp is irrelevant. >> =09 */ >> -=09if (*cp =3D=3D '-' && max_chars > 0) >> -=09=09return -simple_strntoull(cp + 1, max_chars - 1, endp, base); >> - >> -=09return simple_strntoull(cp, max_chars, endp, base); >> +=09negate =3D *cp =3D=3D '-' && max_chars > 0; >> +=09minand =3D simple_strntoull(cp + negate, max_chars - negate, endp, b= ase, >> overflow); >> +=09if (minand > (unsigned long long)LONG_MAX + negate) >> +=09=09*overflow =3D true; >> +=09return negate ? -minand : minand; >> } >> =20 >> static noinline_for_stack >> @@ -3427,7 +3433,7 @@ int vsscanf(const char *buf, const char *fmt, va_l= ist >> args) >> =09=09unsigned long long u; >> =09} val; >> =09s16 field_width; >> -=09bool is_sign; >> +=09bool is_sign, overflow; >> =20 >> =09while (*fmt) { >> =09=09/* skip any white space in format */ >> @@ -3635,45 +3641,77 @@ int vsscanf(const char *buf, const char *fmt, va= _list >> args) >> =09=09if (is_sign) >> =09=09=09val.s =3D simple_strntoll(str, >> =09=09=09=09=09=09field_width >=3D 0 ? field_width : INT_MAX, >> -=09=09=09=09=09=09&next, base); >> +=09=09=09=09=09=09&next, base, &overflow); >> =09=09else >> =09=09=09val.u =3D simple_strntoull(str, >> =09=09=09=09=09=09 field_width >=3D 0 ? field_width : INT_MAX, >> -=09=09=09=09=09=09 &next, base); >> +=09=09=09=09=09=09 &next, base, &overflow); >> +=09=09if (unlikely(overflow)) >> +=09=09=09return -ERANGE; >> =20 >> =09=09switch (qualifier) { >> =09=09case 'H':=09/* that's 'hh' in format */ >> -=09=09=09if (is_sign) >> +=09=09=09if (is_sign) { >> +=09=09=09=09if (unlikely(val.s < SCHAR_MIN || val.s > SCHAR_MAX)) >> +=09=09=09=09=09return -ERANGE; >> =09=09=09=09*va_arg(args, signed char *) =3D val.s; >> -=09=09=09else >> +=09=09=09} else { >> +=09=09=09=09if (unlikely(val.u > UCHAR_MAX)) >> +=09=09=09=09=09return -ERANGE; >> =09=09=09=09*va_arg(args, unsigned char *) =3D val.u; >> +=09=09=09} >> =09=09=09break; >> =09=09case 'h': >> -=09=09=09if (is_sign) >> +=09=09=09if (is_sign) { >> +=09=09=09=09if (unlikely(val.s < SHRT_MIN || val.s > SHRT_MAX)) >> +=09=09=09=09=09return -ERANGE; Returning a negative value here will break many existing in-kernel users. Most users just check for the number of matched elements. Linus' idea was returning 0 upon overflow (nothing matched) and allowing overflows (if really needed) by adding a new format string qualifier "!". e.g. "%!d". Thanks, //richard From xen-devel-bounces@lists.xenproject.org Sat Jun 10 08:53:08 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sat, 10 Jun 2023 08:53:08 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546479.853429 (Exim 4.92) (envelope-from ) id 1q7uL7-0005BT-3p; Sat, 10 Jun 2023 08:52:53 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546479.853429; Sat, 10 Jun 2023 08:52:53 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7uL7-0005BM-15; Sat, 10 Jun 2023 08:52:53 +0000 Received: by outflank-mailman (input) for mailman id 546479; Sat, 10 Jun 2023 08:52:51 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7uL5-0005BC-N0; Sat, 10 Jun 2023 08:52:51 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7uL5-0006Yb-Ft; Sat, 10 Jun 2023 08:52:51 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7uL5-0003gZ-0i; Sat, 10 Jun 2023 08:52:51 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q7uL4-0005Ke-V4; Sat, 10 Jun 2023 08:52:50 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=0V9XVXyQBJeq8qjFZyWRnEpKN2eLoGkePezqm7poK3w=; b=5p9fg6MQN1axLHwdE+N4YStipE 4+3aWoHiAZEiVSWr7Kfc90QzcRpbj0dNSNHjUT93CU0GWmvBDeXbCjNHiYAtG5g4F7Svu/h+ZjlI+ M19hxQJFhvbC95Pw69ZF82Pier26AfR5kGQw4J78ungdEGiiOTM3AcAYE8Ak8s4hL/0k=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [qemu-mainline test] 181356: regressions - FAIL X-Osstest-Failures: qemu-mainline:build-arm64-xsm:xen-build:fail:regression qemu-mainline:build-arm64:xen-build:fail:regression qemu-mainline:build-amd64:xen-build:fail:regression qemu-mainline:build-i386:xen-build:fail:regression qemu-mainline:build-amd64-xsm:xen-build:fail:regression qemu-mainline:build-i386-xsm:xen-build:fail:regression qemu-mainline:build-armhf:xen-build:fail:regression qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-i386:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:build-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:build-arm64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:build-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:build-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pygrub:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking X-Osstest-Versions-This: qemuu=3673ad389622d9ef4d2743101253c642def7935a X-Osstest-Versions-That: qemuu=6972ef1440a9d685482d78672620a7482f2bd09a From: osstest service owner Date: Sat, 10 Jun 2023 08:52:50 +0000 flight 181356 qemu-mainline real [real] http://logs.test-lab.xenproject.org/osstest/logs/181356/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-arm64-xsm 6 xen-build fail REGR. vs. 180691 build-arm64 6 xen-build fail REGR. vs. 180691 build-amd64 6 xen-build fail REGR. vs. 180691 build-i386 6 xen-build fail REGR. vs. 180691 build-amd64-xsm 6 xen-build fail REGR. vs. 180691 build-i386-xsm 6 xen-build fail REGR. vs. 180691 build-armhf 6 xen-build fail REGR. vs. 180691 Tests which did not succeed, but are not blocking: test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-xl-xsm 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-raw 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-xsm 1 build-check(1) blocked n/a test-arm64-arm64-xl 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit1 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit2 1 build-check(1) blocked n/a test-arm64-arm64-xl-thunderx 1 build-check(1) blocked n/a test-arm64-arm64-xl-vhd 1 build-check(1) blocked n/a test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a test-armhf-armhf-libvirt 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-qcow2 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-raw 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a test-armhf-armhf-xl-arndale 1 build-check(1) blocked n/a test-armhf-armhf-xl-multivcpu 1 build-check(1) blocked n/a test-armhf-armhf-xl-rtds 1 build-check(1) blocked n/a test-armhf-armhf-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-amd 1 build-check(1) blocked n/a test-amd64-i386-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-raw 1 build-check(1) blocked n/a test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-i386 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-amd64 1 build-check(1) blocked n/a test-amd64-coresched-i386-xl 1 build-check(1) blocked n/a test-amd64-coresched-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-xsm 1 build-check(1) blocked n/a build-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-shadow 1 build-check(1) blocked n/a test-amd64-amd64-xl-rtds 1 build-check(1) blocked n/a build-arm64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a build-armhf-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a build-i386-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-amd 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-pair 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-qcow2 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-vhd 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvshim 1 build-check(1) blocked n/a test-amd64-amd64-pair 1 build-check(1) blocked n/a test-amd64-amd64-pygrub 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-intel 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd11-amd64 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd12-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-multivcpu 1 build-check(1) blocked n/a test-amd64-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit1 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit1 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-intel 1 build-check(1) blocked n/a test-amd64-i386-xl 1 build-check(1) blocked n/a test-amd64-i386-xl-pvshim 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a version targeted for testing: qemuu 3673ad389622d9ef4d2743101253c642def7935a baseline version: qemuu 6972ef1440a9d685482d78672620a7482f2bd09a Last test of basis 180691 2023-05-17 10:45:22 Z 23 days Failing since 180699 2023-05-18 07:21:24 Z 23 days 78 attempts Testing same since 181356 2023-06-10 03:10:42 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Afonso Bordado Akihiko Odaki Akihiro Suda Alex Bennée Alex Williamson Alexander Bulekov Alexander Graf Alexander Ivanov Alistair Francis Ani Sinha Ani Sinha Anthony PERARD Anton Johansson BALATON Zoltan Bastian Koppelmann Bernhard Beschow Bin Meng Brian Cain Brice Goglin Camilla Conte Christian Schoenebeck Chuck Zmudzinski Cindy Lu Clément Chigot Cornelia Huck Cédric Le Goater Cédric Le Goater Daniel Henrique Barboza Daniel P. Berrangé Daniil Kovalev David Hildenbrand David Woodhouse Emanuele Giuseppe Esposito Enze Li Eric Auger Eric Blake Eric DeVolder Erico Nunes Eugenio Pérez Fabiano Rosas Fan Ni Fiona Ebner Francesco Cagnin Francisco Iglesias Gavin Shan Gregory Price Gregory Price Hanna Czenczek Hao Zeng Hawkins Jiawei Igor Mammedov Ilya Leoshkevich Ira Weiny Jagannathan Raman Jason Wang Jean-Louis Dupond Jean-Philippe Brucker Jiaxun Yang John Snow Jonathan Cameron Juan Quintela Kevin Wolf Laurent Vivier Lei Yang Leonardo Bras Maksim Davydov Marc-André Lureau Marcin Juszkiewicz Marco Liebel Mark Cave-Ayland Markus Armbruster Matheus Tavares Bernardino Mauro Matteo Cascella Max Fritz Michael S. Tsirkin Michael Tokarev Michal Privoznik Mostafa Saleh Nicholas Piggin Nicolas Saenz Julienne Niek Linnenbank Palmer Dabbelt Paolo Bonzini Peter Maydell Peter Xu Philippe Mathieu-Daudé qianfan Zhao Raghu H Rene Engel Richard Henderson Richard Purdie Ricky Zhou Ryan Wendland Sebastian Ott Sergio Lopez Sid Manning Song Gao Stefan Hajnoczi Stefano Garzarella Steve Sistare Taylor Simpson Thomas Huth Thomas Weißschuh timothee.cocault@gmail.com Timothée Cocault Tommy Wu Vikram Garhwal Viktor Prutyanov Vitaly Cheptsov Vivek Kasireddy Vladimir Sementsov-Ogievskiy Volker Rümelin Xinyu Li Zeng Hao Zhenyu Zhang Zhenzhong Duan Zhuojia Shen jobs: build-amd64-xsm fail build-arm64-xsm fail build-i386-xsm fail build-amd64 fail build-arm64 fail build-armhf fail build-i386 fail build-amd64-libvirt blocked build-arm64-libvirt blocked build-armhf-libvirt blocked build-i386-libvirt blocked build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl blocked test-amd64-coresched-amd64-xl blocked test-arm64-arm64-xl blocked test-armhf-armhf-xl blocked test-amd64-i386-xl blocked test-amd64-coresched-i386-xl blocked test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-i386-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-amd64-libvirt-xsm blocked test-arm64-arm64-libvirt-xsm blocked test-amd64-i386-libvirt-xsm blocked test-amd64-amd64-xl-xsm blocked test-arm64-arm64-xl-xsm blocked test-amd64-i386-xl-xsm blocked test-amd64-amd64-qemuu-nested-amd blocked test-amd64-amd64-xl-pvhv2-amd blocked test-amd64-i386-qemuu-rhel6hvm-amd blocked test-amd64-amd64-dom0pvh-xl-amd blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-freebsd10-amd64 blocked test-amd64-amd64-qemuu-freebsd11-amd64 blocked test-amd64-amd64-qemuu-freebsd12-amd64 blocked test-amd64-amd64-xl-qemuu-ovmf-amd64 blocked test-amd64-i386-xl-qemuu-ovmf-amd64 blocked test-amd64-amd64-xl-qemuu-win7-amd64 blocked test-amd64-i386-xl-qemuu-win7-amd64 blocked test-amd64-amd64-xl-qemuu-ws16-amd64 blocked test-amd64-i386-xl-qemuu-ws16-amd64 blocked test-armhf-armhf-xl-arndale blocked test-amd64-amd64-xl-credit1 blocked test-arm64-arm64-xl-credit1 blocked test-armhf-armhf-xl-credit1 blocked test-amd64-amd64-xl-credit2 blocked test-arm64-arm64-xl-credit2 blocked test-armhf-armhf-xl-credit2 blocked test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-freebsd10-i386 blocked test-amd64-amd64-qemuu-nested-intel blocked test-amd64-amd64-xl-pvhv2-intel blocked test-amd64-i386-qemuu-rhel6hvm-intel blocked test-amd64-amd64-dom0pvh-xl-intel blocked test-amd64-amd64-libvirt blocked test-armhf-armhf-libvirt blocked test-amd64-i386-libvirt blocked test-amd64-amd64-xl-multivcpu blocked test-armhf-armhf-xl-multivcpu blocked test-amd64-amd64-pair blocked test-amd64-i386-pair blocked test-amd64-amd64-libvirt-pair blocked test-amd64-i386-libvirt-pair blocked test-amd64-amd64-xl-pvshim blocked test-amd64-i386-xl-pvshim blocked test-amd64-amd64-pygrub blocked test-armhf-armhf-libvirt-qcow2 blocked test-amd64-amd64-xl-qcow2 blocked test-arm64-arm64-libvirt-raw blocked test-armhf-armhf-libvirt-raw blocked test-amd64-i386-libvirt-raw blocked test-amd64-amd64-xl-rtds blocked test-armhf-armhf-xl-rtds blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-amd64-xl-shadow blocked test-amd64-i386-xl-shadow blocked test-arm64-arm64-xl-thunderx blocked test-amd64-amd64-libvirt-vhd blocked test-arm64-arm64-xl-vhd blocked test-armhf-armhf-xl-vhd blocked test-amd64-i386-xl-vhd blocked ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 16229 lines long.) From xen-devel-bounces@lists.xenproject.org Sat Jun 10 13:00:11 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sat, 10 Jun 2023 13:00:11 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546499.853439 (Exim 4.92) (envelope-from ) id 1q7yC8-0004hn-T5; Sat, 10 Jun 2023 12:59:52 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546499.853439; Sat, 10 Jun 2023 12:59:52 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7yC8-0004hg-Q7; Sat, 10 Jun 2023 12:59:52 +0000 Received: by outflank-mailman (input) for mailman id 546499; Sat, 10 Jun 2023 12:59:51 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q7yC6-0004gp-QD for xen-devel@lists.xenproject.org; Sat, 10 Jun 2023 12:59:51 +0000 Received: from mga17.intel.com (mga17.intel.com [192.55.52.151]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id abb01068-078e-11ee-8611-37d641c3527e; Sat, 10 Jun 2023 14:59:46 +0200 (CEST) Received: from fmsmga006.fm.intel.com ([10.253.24.20]) by fmsmga107.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 10 Jun 2023 05:59:42 -0700 Received: from lkp-server01.sh.intel.com (HELO 15ab08e44a81) ([10.239.97.150]) by fmsmga006.fm.intel.com with ESMTP; 10 Jun 2023 05:59:38 -0700 Received: from kbuild by 15ab08e44a81 with local (Exim 4.96) (envelope-from ) id 1q7yBt-000A6A-2O; Sat, 10 Jun 2023 12:59:37 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: abb01068-078e-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1686401986; x=1717937986; h=date:from:to:cc:subject:message-id:references: mime-version:in-reply-to; bh=ITLJwuiMSNZijdY4Cz6EusiXck7vPTOmLnkmQWskaI8=; b=Z95AYMxanozb81j/PirH8BtpRPec1X9YrOGDAYFbCm5maN3n9lntsifY o6lELulYhTwvcYVdqXcTtYu9wYJEAXGVCDkrVgcqtjJ0o55MTH7bzv/aF eYrIviMJ8gvHvF+TNkzYV4lYYZm02RBz0ngvtu5wXpnYhYPos7H+NwVg2 sdnbXOkl1c6Pczjf8OmFU3YfRl6/QefSmwyatUGhwFlJxR8VUtn/uA1oi wZCGTFBi8/wudmEsOo1G0oiHeXah3lMHU4Xl3N/uZHFACXTqvfgC4BQJm T2ugYVQiNouAy7y8vX/EDRlup5lItl+4bEx6fD3U7+VdPaTZmJ2Ll7pjY g==; X-IronPort-AV: E=McAfee;i="6600,9927,10737"; a="338122805" X-IronPort-AV: E=Sophos;i="6.00,232,1681196400"; d="scan'208";a="338122805" X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10737"; a="957451084" X-IronPort-AV: E=Sophos;i="6.00,232,1681196400"; d="scan'208";a="957451084" Date: Sat, 10 Jun 2023 20:59:16 +0800 From: kernel test robot To: Demi Marie Obenour , Dwaipayan Ray , Lukas Bulwahn , Joe Perches , Jonathan Corbet , Federico Vaga , Juergen Gross , Stefano Stabellini , Oleksandr Tyshchenko , Lee Jones , Andy Lutomirski , Thomas Gleixner , Vincenzo Frascino , Petr Mladek , Steven Rostedt , Sergey Senozhatsky , Andy Shevchenko , Rasmus Villemoes Cc: oe-kbuild-all@lists.linux.dev, Demi Marie Obenour , linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org Subject: Re: [PATCH 2/4] vsscanf(): Return -ERANGE on integer overflow Message-ID: <202306102055.ZSJK8Xsj-lkp@intel.com> References: <20230610025759.1813-2-demi@invisiblethingslab.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20230610025759.1813-2-demi@invisiblethingslab.com> Hi Demi, kernel test robot noticed the following build warnings: [auto build test WARNING on lee-mfd/for-mfd-next] [also build test WARNING on lee-leds/for-leds-next linus/master v6.4-rc5 next-20230609] [cannot apply to xen-tip/linux-next lee-mfd/for-mfd-fixes] [If your patch is applied to the wrong git tree, kindly drop us a note. And when submitting patch, we suggest to use '--base' as documented in https://git-scm.com/docs/git-format-patch#_base_tree_information] url: https://github.com/intel-lab-lkp/linux/commits/Demi-Marie-Obenour/vsscanf-Return-ERANGE-on-integer-overflow/20230610-110026 base: https://git.kernel.org/pub/scm/linux/kernel/git/lee/mfd.git for-mfd-next patch link: https://lore.kernel.org/r/20230610025759.1813-2-demi%40invisiblethingslab.com patch subject: [PATCH 2/4] vsscanf(): Return -ERANGE on integer overflow config: i386-allyesconfig (https://download.01.org/0day-ci/archive/20230610/202306102055.ZSJK8Xsj-lkp@intel.com/config) compiler: gcc-12 (Debian 12.2.0-14) 12.2.0 reproduce (this is a W=1 build): git remote add lee-mfd https://git.kernel.org/pub/scm/linux/kernel/git/lee/mfd.git git fetch lee-mfd for-mfd-next git checkout lee-mfd/for-mfd-next b4 shazam https://lore.kernel.org/r/20230610025759.1813-2-demi@invisiblethingslab.com # save the config file mkdir build_dir && cp config build_dir/.config make W=1 O=build_dir ARCH=i386 olddefconfig make W=1 O=build_dir ARCH=i386 SHELL=/bin/bash drivers/staging/media/atomisp/ If you fix the issue in a separate patch/commit (i.e. not just a new version of the same patch/commit), kindly add following tags | Reported-by: kernel test robot | Closes: https://lore.kernel.org/oe-kbuild-all/202306102055.ZSJK8Xsj-lkp@intel.com/ All warnings (new ones prefixed by >>): In file included from drivers/staging/media/atomisp//pci/ia_css_acc_types.h:25, from drivers/staging/media/atomisp//pci/ia_css_pipe_public.h:29, from drivers/staging/media/atomisp//pci/ia_css_stream_public.h:25, from drivers/staging/media/atomisp//pci/runtime/binary/interface/ia_css_binary.h:23, from drivers/staging/media/atomisp//pci/runtime/debug/interface/ia_css_debug.h:25, from drivers/staging/media/atomisp/pci/isp/kernels/macc/macc_1.0/ia_css_macc.host.c:18: >> drivers/staging/media/atomisp//pci/hive_isp_css_include/platform_support.h:30: warning: "UCHAR_MAX" redefined 30 | #define UCHAR_MAX (255) | In file included from include/linux/limits.h:7, from drivers/staging/media/atomisp//pci/hive_isp_css_include/type_support.h:37, from drivers/staging/media/atomisp//pci/ia_css_types.h:27, from drivers/staging/media/atomisp/pci/isp/kernels/macc/macc_1.0/ia_css_macc.host.c:16: include/vdso/limits.h:5: note: this is the location of the previous definition 5 | #define UCHAR_MAX ((unsigned char)~0U) | vim +/UCHAR_MAX +30 drivers/staging/media/atomisp//pci/hive_isp_css_include/platform_support.h ad85094b293e40 drivers/staging/media/atomisp/pci/atomisp2/css2400/hive_isp_css_include/platform_support.h Mauro Carvalho Chehab 2020-04-19 27 ad85094b293e40 drivers/staging/media/atomisp/pci/atomisp2/css2400/hive_isp_css_include/platform_support.h Mauro Carvalho Chehab 2020-04-19 28 #define UINT16_MAX USHRT_MAX ad85094b293e40 drivers/staging/media/atomisp/pci/atomisp2/css2400/hive_isp_css_include/platform_support.h Mauro Carvalho Chehab 2020-04-19 29 #define UINT32_MAX UINT_MAX ad85094b293e40 drivers/staging/media/atomisp/pci/atomisp2/css2400/hive_isp_css_include/platform_support.h Mauro Carvalho Chehab 2020-04-19 @30 #define UCHAR_MAX (255) ad85094b293e40 drivers/staging/media/atomisp/pci/atomisp2/css2400/hive_isp_css_include/platform_support.h Mauro Carvalho Chehab 2020-04-19 31 -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki From xen-devel-bounces@lists.xenproject.org Sat Jun 10 15:12:40 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sat, 10 Jun 2023 15:12:40 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546528.853467 (Exim 4.92) (envelope-from ) id 1q80GQ-00034p-Lm; Sat, 10 Jun 2023 15:12:26 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546528.853467; Sat, 10 Jun 2023 15:12:26 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q80GQ-00034i-II; Sat, 10 Jun 2023 15:12:26 +0000 Received: by outflank-mailman (input) for mailman id 546528; Sat, 10 Jun 2023 15:12:25 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q80GP-00034Y-Ej; Sat, 10 Jun 2023 15:12:25 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q80GP-00072D-0P; Sat, 10 Jun 2023 15:12:25 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q80GO-0003Ea-Gg; Sat, 10 Jun 2023 15:12:24 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q80GO-0001nv-FR; Sat, 10 Jun 2023 15:12:24 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=dZbAOeVbKJ8y0bMczQzLyINTAU+qlGg2YzVAZUg59WA=; b=juvIBRoMYKUD73EG26q140RBJb GH4jaE3TW6gPnWRt9rDxtbaiYSphHKgYvMqi2BZHmFVYijyceNJJ97DOGzfdvEMd53VHWe8YISYIW is3QcIzpQt6zNPJXzoRfqTr7teH4FDP3T/19jBLxL70pkCG37C+k6zyyjbguk/8Rzv8Q=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [linux-5.4 test] 181354: regressions - FAIL X-Osstest-Failures: linux-5.4:test-amd64-i386-xl-vhd:guest-start/debian.repeat:fail:regression linux-5.4:test-armhf-armhf-xl-credit2:guest-start/debian.repeat:fail:regression linux-5.4:test-amd64-amd64-qemuu-freebsd12-amd64:guest-localmigrate/x10:fail:heisenbug linux-5.4:test-armhf-armhf-xl-multivcpu:guest-start:fail:heisenbug linux-5.4:test-armhf-armhf-libvirt-raw:guest-start/debian.repeat:fail:heisenbug linux-5.4:test-amd64-amd64-xl-qemuu-debianhvm-amd64:debian-hvm-install:fail:heisenbug linux-5.4:test-amd64-i386-libvirt-pair:xen-install/src_host:fail:heisenbug linux-5.4:test-amd64-i386-libvirt-pair:xen-install/dst_host:fail:heisenbug linux-5.4:test-amd64-i386-libvirt-raw:xen-install:fail:heisenbug linux-5.4:test-armhf-armhf-xl-credit2:guest-start:fail:heisenbug linux-5.4:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking linux-5.4:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking linux-5.4:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking linux-5.4:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking linux-5.4:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking linux-5.4:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking linux-5.4:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: linux=f568a20f058fa1e37069cff4aac4187c1650a0e9 X-Osstest-Versions-That: linux=cf0b1e5482eaeb4db15c9e703267483dba88b575 From: osstest service owner Date: Sat, 10 Jun 2023 15:12:24 +0000 flight 181354 linux-5.4 real [real] http://logs.test-lab.xenproject.org/osstest/logs/181354/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: test-amd64-i386-xl-vhd 21 guest-start/debian.repeat fail REGR. vs. 181182 test-armhf-armhf-xl-credit2 18 guest-start/debian.repeat fail in 181336 REGR. vs. 181182 Tests which are failing intermittently (not blocking): test-amd64-amd64-qemuu-freebsd12-amd64 19 guest-localmigrate/x10 fail in 181336 pass in 181354 test-armhf-armhf-xl-multivcpu 14 guest-start fail in 181336 pass in 181354 test-armhf-armhf-libvirt-raw 17 guest-start/debian.repeat fail in 181336 pass in 181354 test-amd64-amd64-xl-qemuu-debianhvm-amd64 12 debian-hvm-install fail pass in 181336 test-amd64-i386-libvirt-pair 10 xen-install/src_host fail pass in 181336 test-amd64-i386-libvirt-pair 11 xen-install/dst_host fail pass in 181336 test-amd64-i386-libvirt-raw 7 xen-install fail pass in 181336 test-armhf-armhf-xl-credit2 14 guest-start fail pass in 181336 Tests which did not succeed, but are not blocking: test-amd64-i386-libvirt-raw 14 migrate-support-check fail in 181336 never pass test-armhf-armhf-xl-credit2 15 migrate-support-check fail in 181336 never pass test-armhf-armhf-xl-credit2 16 saverestore-support-check fail in 181336 never pass test-armhf-armhf-libvirt 16 saverestore-support-check fail like 181182 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 181182 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop fail like 181182 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop fail like 181182 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 181182 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 181182 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 181182 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail like 181182 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop fail like 181182 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail like 181182 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop fail like 181182 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 181182 test-amd64-i386-libvirt 15 migrate-support-check fail never pass test-amd64-i386-xl-pvshim 14 guest-start fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-i386-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt 15 migrate-support-check fail never pass test-armhf-armhf-xl 15 migrate-support-check fail never pass test-armhf-armhf-xl 16 saverestore-support-check fail never pass test-armhf-armhf-xl-multivcpu 15 migrate-support-check fail never pass test-armhf-armhf-xl-multivcpu 16 saverestore-support-check fail never pass test-armhf-armhf-xl-credit1 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-armhf-armhf-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 15 saverestore-support-check fail never pass test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 15 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 16 saverestore-support-check fail never pass test-armhf-armhf-xl-rtds 15 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 16 saverestore-support-check fail never pass version targeted for testing: linux f568a20f058fa1e37069cff4aac4187c1650a0e9 baseline version: linux cf0b1e5482eaeb4db15c9e703267483dba88b575 Last test of basis 181182 2023-06-05 06:43:42 Z 5 days Testing same since 181336 2023-06-09 08:40:57 Z 1 days 2 attempts ------------------------------------------------------------ People who touched revisions under test: Adam Borowski Andreas Svensson Andrew Morton Andy Shevchenko Arnd Bergmann Bart Van Assche Ben Hutchings Benedict Wong Bjørn Mork Borislav Petkov Cambda Zhu Chao Wang Chris Packham Chris Paterson (CIP) Cong Wang Damien Le Moal Dan Carpenter Dario Binacchi David S. Miller Deren Wu Devesh Sharma Eric Dumazet Florian Fainelli Florian Westphal Frank Li Greg Kroah-Hartman Guenter Roeck Guillaume Nault Haibo Li Hangyu Hua Hans Verkuil Harshit Mogalapalli Helge Deller Hyunwoo Kim Hyunwoo Kim Ivan Orlov Jakub Kicinski Jamal Hadi Salim Jason Baron Jason Gunthorpe Jason Gunthorpe # IB Jason Gunthorpe Jassi Brar Jens Axboe Jiakai Luo Jim Wylder Jiri Kosina Joao Martins Joerg Roedel Johannes Thumshirn Jonathan Cameron Kalesh AP Kalle Valo # wireless drivers Kalle Valo Kees Cook Krzysztof Kozlowski Kuniyuki Iwashima Larry Finger Lee Jones Linus Torvalds Luiz Capitulino Lukas Bulwahn Lyude Paul Marc Kleine-Budde Marek Vasut Mark Brown Martin Liska Martin Liška Masami Hiramatsu (Google) Mauro Carvalho Chehab Maxim Kochetkov Michael Büsch Min-Hua Chen Miquel Raynal Mirsad Goran Todorovac Mukesh Ojha Naresh Kumar PBS Nathan Chancellor Nikita Zhandarovich Niklas Söderlund Paolo Abeni Paul Moore Paweł Anikiel Pedro Tammela Peilin Ye Pietro Borrello Ping-Ke Shih Rafael J. Wysocki Raju Rangoju Randy Dunlap Randy Dunlap # build-tested Richard Acayan Russell King (Oracle) Saeed Mahameed Sam Ravnborg Sasha Levin Sebastian Krzyszkowiak Selvin Xavier Shay Drory Sherry Sun Shuah Khan Shyam Sundar S K Simon Kapadia Srinivas Kandagatla Steffen Klassert Sudarsana Reddy Kalluru Sudheesh Mavila Sudip Mukherjee Sung-Chi Li Takashi Iwai Theodore Ts'o Tom Rix Ulf Hansson Uttkarsh Aggarwal Vinod Koul Vladislav Efanov Wei Chen Wenchao Hao Will Deacon Wim Van Sebroeck Yonatan Nachum YongSu Yoo YueHaibing Yun Lu Zhang Shurong Zhengchao Shao jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl pass test-amd64-i386-xl pass test-amd64-coresched-i386-xl pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-i386-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-i386-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-i386-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-i386-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-i386-qemut-rhel6hvm-amd pass test-amd64-i386-qemuu-rhel6hvm-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-i386-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 fail test-amd64-i386-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-freebsd10-amd64 pass test-amd64-amd64-qemuu-freebsd11-amd64 pass test-amd64-amd64-qemuu-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-i386-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-i386-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-i386-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-amd64-i386-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale pass test-amd64-amd64-examine-bios pass test-amd64-i386-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 pass test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 fail test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine pass test-amd64-i386-examine pass test-amd64-i386-freebsd10-i386 pass test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-i386-qemut-rhel6hvm-intel pass test-amd64-i386-qemuu-rhel6hvm-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt pass test-amd64-i386-libvirt pass test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu pass test-amd64-amd64-pair pass test-amd64-i386-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-i386-libvirt-pair fail test-amd64-amd64-xl-pvshim pass test-amd64-i386-xl-pvshim fail test-amd64-amd64-pygrub pass test-armhf-armhf-libvirt-qcow2 pass test-amd64-amd64-xl-qcow2 pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw pass test-amd64-i386-libvirt-raw fail test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds pass test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-amd64-i386-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-i386-examine-uefi pass test-amd64-amd64-libvirt-vhd pass test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd pass test-amd64-i386-xl-vhd fail ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 3047 lines long.) From xen-devel-bounces@lists.xenproject.org Sat Jun 10 15:32:51 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sat, 10 Jun 2023 15:32:51 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546538.853480 (Exim 4.92) (envelope-from ) id 1q80a6-0005ew-EA; Sat, 10 Jun 2023 15:32:46 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546538.853480; Sat, 10 Jun 2023 15:32:46 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q80a6-0005ep-B8; Sat, 10 Jun 2023 15:32:46 +0000 Received: by outflank-mailman (input) for mailman id 546538; Sat, 10 Jun 2023 15:32:45 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q80a4-0005ei-Ub for xen-devel@lists.xenproject.org; Sat, 10 Jun 2023 15:32:45 +0000 Received: from out4-smtp.messagingengine.com (out4-smtp.messagingengine.com [66.111.4.28]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 07a547e1-07a4-11ee-b232-6b7b168915f2; Sat, 10 Jun 2023 17:32:42 +0200 (CEST) Received: from compute5.internal (compute5.nyi.internal [10.202.2.45]) by mailout.nyi.internal (Postfix) with ESMTP id 7B5165C0094; Sat, 10 Jun 2023 11:32:37 -0400 (EDT) Received: from mailfrontend2 ([10.202.2.163]) by compute5.internal (MEProxy); Sat, 10 Jun 2023 11:32:37 -0400 Received: by mail.messagingengine.com (Postfix) with ESMTPA; Sat, 10 Jun 2023 11:32:36 -0400 (EDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 07a547e1-07a4-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= invisiblethingslab.com; h=cc:cc:content-transfer-encoding :content-type:date:date:from:from:in-reply-to:message-id :mime-version:reply-to:sender:subject:subject:to:to; s=fm1; t= 1686411157; x=1686497557; bh=E9OTs5ny+Fb91amwPPB8ZaWp4/OQurkf5gc QxoQX9vA=; b=Da37icMjqR6GYRdNqfWZlRPFGrktUIW9LyZteNhfFX3EOQc+4mk KK+r8BE3vRJl8mwyKBRXeat1qCe74eOw0CrXwAVPPooW97XcM7LzjnRmbKXPz7ep caK1O+k0ojvQVNKYbbkBw/AjDsxfHVT+of3enFYUSJyfPZ5IX1Nqj4KmQmNW9iTX A8wt6GSErWG7L8hKVltbEzPw2jPkZOam+LBjnNsp/JNV4Ro6yfiWKdZHPkqrTV+E 6PLKBWO9RjmZGvZ0OEmPgdWD+gvHDA1ftL5/Poq+AWYkZhA3aVdLXLAELnUhkdQv QYGiW+CsL8BcjcfcJWUHcyLubLkJb94ClvA== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-transfer-encoding :content-type:date:date:feedback-id:feedback-id:from:from :in-reply-to:message-id:mime-version:reply-to:sender:subject :subject:to:to:x-me-proxy:x-me-proxy:x-me-sender:x-me-sender :x-sasl-enc; s=fm1; t=1686411157; x=1686497557; bh=E9OTs5ny+Fb91 amwPPB8ZaWp4/OQurkf5gcQxoQX9vA=; b=EJG+MDFWDJ3y3FT3gQOh3PdijNfdt +b1+8DLjbkNTU6RfdA6qWd+ivIwzlq06ncHRAVzWd3hcrwM0vk1wBjiZXAE8heGX 4ZOynEgpGT305IIUc8yMPxfIuc8HUgdhVai6baqqHlQ3+nCYmdzOfDb4DfjlTpgH duNhOaGarpvUzVvMlbCaHArurU0gT8I/L6hnw0Z4ystLjefz2LnT4QkR9LhyKzhr odInYrQYsA9VK2pNFZFAMoQCnf20CflHRNV1vrbmccjGfHH2xRjwLrln507KS4WT VBinPGxCqIiul+YA3RDCtiQYg22wkPRmfQV2LzSEp8/gc9xXR2cuzL15A== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvhedrgedutddgleduucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne cujfgurhephffvvefufffkofgggfestdekredtredttdenucfhrhhomhepffgvmhhiucfo rghrihgvucfqsggvnhhouhhruceouggvmhhisehinhhvihhsihgslhgvthhhihhnghhslh grsgdrtghomheqnecuggftrfgrthhtvghrnhepvdefgeekvdekgfffgeekhfeijedtffek hefhleehfeejueetgfelgefgtdevieelnecuvehluhhsthgvrhfuihiivgeptdenucfrrg hrrghmpehmrghilhhfrhhomhepuggvmhhisehinhhvihhsihgslhgvthhhihhnghhslhgr sgdrtghomh X-ME-Proxy: Feedback-ID: iac594737:Fastmail From: Demi Marie Obenour To: Juergen Gross , Stefano Stabellini , Oleksandr Tyshchenko , Jan Beulich , Konrad Rzeszutek Wilk Cc: Demi Marie Obenour , Xen developer discussion , Linux Kernel Mailing List , stable@vger.kernel.org Subject: [PATCH] xen: speed up grant-table reclaim Date: Sat, 10 Jun 2023 11:32:32 -0400 Message-Id: <20230610153232.1859-1-demi@invisiblethingslab.com> X-Mailer: git-send-email 2.40.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit When a grant entry is still in use by the remote domain, Linux must put it on a deferred list. Normally, this list is very short, because the PV network and block protocols expect the backend to unmap the grant first. However, Qubes OS's GUI protocol is subject to the constraints of the X Window System, and as such winds up with the frontend unmapping the window first. As a result, the list can grow very large, resulting in a massive memory leak and eventual VM freeze. To partially solve this problem, make the number of entries that the VM will attempt to free at each iteration tunable. The default is still 10, but it can be overridden at compile-time (via Kconfig), boot-time (via a kernel command-line option), or runtime (via sysfs). Fixes: 569ca5b3f94c ("xen/gnttab: add deferred freeing logic") Cc: stable@vger.kernel.org Signed-off-by: Demi Marie Obenour --- drivers/xen/Kconfig | 12 ++++++++++++ drivers/xen/grant-table.c | 40 ++++++++++++++++++++++++++++----------- 2 files changed, 41 insertions(+), 11 deletions(-) diff --git a/drivers/xen/Kconfig b/drivers/xen/Kconfig index d5d7c402b65112b8592ba10bd3fd1732c26b771e..8f96e1359eb102d6420775b66e7805004a4ce9fe 100644 --- a/drivers/xen/Kconfig +++ b/drivers/xen/Kconfig @@ -65,6 +65,18 @@ config XEN_MEMORY_HOTPLUG_LIMIT This value is used to allocate enough space in internal tables needed for physical memory administration. +config XEN_GRANTS_RECLAIM_PER_ITERATION + int "Default number of grant entries to reclaim per iteration" + default 10 + range 10 4294967295 + help + This sets the default value for the grant_table.free_per_iteration + kernel command line option, which sets the number of grants that + Linux will try to reclaim at once. The default is 10, but + workloads that make heavy use of gntalloc will likely want to + increase this. The current value can be accessed and/or modified + via /sys/module/grant_table/parameters/free_per_iteration. + config XEN_SCRUB_PAGES_DEFAULT bool "Scrub pages before returning them to system by default" depends on XEN_BALLOON diff --git a/drivers/xen/grant-table.c b/drivers/xen/grant-table.c index e1ec725c2819d4d5dede063eb00d86a6d52944c0..fa666aa6abc3e786dddc94f895641505ec0b23d8 100644 --- a/drivers/xen/grant-table.c +++ b/drivers/xen/grant-table.c @@ -498,14 +498,20 @@ static LIST_HEAD(deferred_list); static void gnttab_handle_deferred(struct timer_list *); static DEFINE_TIMER(deferred_timer, gnttab_handle_deferred); +static atomic64_t deferred_count; +static atomic64_t leaked_count; +static unsigned int free_per_iteration = CONFIG_XEN_GRANTS_RECLAIM_PER_ITERATION; + static void gnttab_handle_deferred(struct timer_list *unused) { - unsigned int nr = 10; + unsigned int nr = READ_ONCE(free_per_iteration); + const bool ignore_limit = nr == 0; struct deferred_entry *first = NULL; unsigned long flags; + size_t freed = 0; spin_lock_irqsave(&gnttab_list_lock, flags); - while (nr--) { + while ((ignore_limit || nr--) && !list_empty(&deferred_list)) { struct deferred_entry *entry = list_first_entry(&deferred_list, struct deferred_entry, list); @@ -515,10 +521,13 @@ static void gnttab_handle_deferred(struct timer_list *unused) list_del(&entry->list); spin_unlock_irqrestore(&gnttab_list_lock, flags); if (_gnttab_end_foreign_access_ref(entry->ref)) { + uint64_t ret = atomic64_sub_return(1, &deferred_count); put_free_entry(entry->ref); - pr_debug("freeing g.e. %#x (pfn %#lx)\n", - entry->ref, page_to_pfn(entry->page)); + pr_debug("freeing g.e. %#x (pfn %#lx), %llu remaining\n", + entry->ref, page_to_pfn(entry->page), + (unsigned long long)ret); put_page(entry->page); + freed++; kfree(entry); entry = NULL; } else { @@ -530,21 +539,22 @@ static void gnttab_handle_deferred(struct timer_list *unused) spin_lock_irqsave(&gnttab_list_lock, flags); if (entry) list_add_tail(&entry->list, &deferred_list); - else if (list_empty(&deferred_list)) - break; } - if (!list_empty(&deferred_list) && !timer_pending(&deferred_timer)) { + if (list_empty(&deferred_list)) + WARN_ON(atomic64_read(&deferred_count)); + else if (!timer_pending(&deferred_timer)) { deferred_timer.expires = jiffies + HZ; add_timer(&deferred_timer); } spin_unlock_irqrestore(&gnttab_list_lock, flags); + pr_debug("Freed %zu references", freed); } static void gnttab_add_deferred(grant_ref_t ref, struct page *page) { struct deferred_entry *entry; gfp_t gfp = (in_atomic() || irqs_disabled()) ? GFP_ATOMIC : GFP_KERNEL; - const char *what = KERN_WARNING "leaking"; + uint64_t leaked, deferred; entry = kmalloc(sizeof(*entry), gfp); if (!page) { @@ -567,12 +577,20 @@ static void gnttab_add_deferred(grant_ref_t ref, struct page *page) add_timer(&deferred_timer); } spin_unlock_irqrestore(&gnttab_list_lock, flags); - what = KERN_DEBUG "deferring"; + deferred = atomic64_add_return(1, &deferred_count); + leaked = atomic64_read(&leaked_count); + pr_debug("deferring g.e. %#x (pfn %#lx) (total deferred %llu, total leaked %llu)\n", + ref, page ? page_to_pfn(page) : -1, deferred, leaked); + } else { + deferred = atomic64_read(&deferred_count); + leaked = atomic64_add_return(1, &leaked_count); + pr_warn("leaking g.e. %#x (pfn %#lx) (total deferred %llu, total leaked %llu)\n", + ref, page ? page_to_pfn(page) : -1, deferred, leaked); } - printk("%s g.e. %#x (pfn %#lx)\n", - what, ref, page ? page_to_pfn(page) : -1); } +module_param(free_per_iteration, uint, 0600); + int gnttab_try_end_foreign_access(grant_ref_t ref) { int ret = _gnttab_end_foreign_access_ref(ref); -- Sincerely, Demi Marie Obenour (she/her/hers) Invisible Things Lab From xen-devel-bounces@lists.xenproject.org Sat Jun 10 16:33:27 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sat, 10 Jun 2023 16:33:27 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546544.853490 (Exim 4.92) (envelope-from ) id 1q81WW-0004Bx-HG; Sat, 10 Jun 2023 16:33:08 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546544.853490; Sat, 10 Jun 2023 16:33:08 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q81WW-0004Bq-EJ; Sat, 10 Jun 2023 16:33:08 +0000 Received: by outflank-mailman (input) for mailman id 546544; Sat, 10 Jun 2023 16:33:06 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q81WU-0004Bg-Kd; Sat, 10 Jun 2023 16:33:06 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q81WU-0000rw-AC; Sat, 10 Jun 2023 16:33:06 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q81WT-0005ml-Um; Sat, 10 Jun 2023 16:33:06 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q81WT-0007SY-UD; Sat, 10 Jun 2023 16:33:05 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=ZLUWpLKdi188nD59e2o7+lelY+RxZjr+ZcTjNa6r7PQ=; b=mf0r2MWKubZW7pK0/ioAIIHozG tC+3xSgSuvw7jHs9OhzMdEhAfaUZh29KBLkNB0aCKUKrJUBtdYrz4gG18JYnUH0P6k+F26o4q8uLE AqPnuc4WXqSBZ5MlEAT+jhXBCaxS+WZJozvRs2FaHZNGpXigs3nKW4ikKeHWmEAavMCQ=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [libvirt test] 181358: regressions - FAIL X-Osstest-Failures: libvirt:test-amd64-i386-libvirt-pair:xen-install/src_host:fail:regression libvirt:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking libvirt:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking libvirt:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking libvirt:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking libvirt:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking libvirt:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking libvirt:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking libvirt:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt:saverestore-support-check:fail:nonblocking libvirt:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking libvirt:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-qcow2:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-qcow2:saverestore-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking libvirt:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking libvirt:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking libvirt:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking libvirt:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking X-Osstest-Versions-This: libvirt=97f0bd00b4d055f2329392d2f8b7fe566fc65901 X-Osstest-Versions-That: libvirt=d09b73b5601e7d974698fc62d1fbc64efb7093dc From: osstest service owner Date: Sat, 10 Jun 2023 16:33:05 +0000 flight 181358 libvirt real [real] flight 181366 libvirt real-retest [real] http://logs.test-lab.xenproject.org/osstest/logs/181358/ http://logs.test-lab.xenproject.org/osstest/logs/181366/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: test-amd64-i386-libvirt-pair 10 xen-install/src_host fail REGR. vs. 181328 Tests which did not succeed, but are not blocking: test-armhf-armhf-libvirt 16 saverestore-support-check fail like 181328 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail like 181328 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail like 181328 test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-i386-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-i386-libvirt 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt 15 migrate-support-check fail never pass test-arm64-arm64-libvirt 16 saverestore-support-check fail never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-i386-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-qcow2 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-qcow2 15 saverestore-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-check fail never pass test-armhf-armhf-libvirt 15 migrate-support-check fail never pass test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail never pass test-armhf-armhf-libvirt-raw 14 migrate-support-check fail never pass version targeted for testing: libvirt 97f0bd00b4d055f2329392d2f8b7fe566fc65901 baseline version: libvirt d09b73b5601e7d974698fc62d1fbc64efb7093dc Last test of basis 181328 2023-06-09 04:21:22 Z 1 days Testing same since 181358 2023-06-10 04:20:25 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Malte Linke jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-i386-libvirt-xsm pass test-amd64-amd64-libvirt pass test-arm64-arm64-libvirt pass test-armhf-armhf-libvirt pass test-amd64-i386-libvirt pass test-amd64-amd64-libvirt-pair pass test-amd64-i386-libvirt-pair fail test-arm64-arm64-libvirt-qcow2 pass test-armhf-armhf-libvirt-qcow2 pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw pass test-amd64-i386-libvirt-raw pass test-amd64-amd64-libvirt-vhd pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. ------------------------------------------------------------ commit 97f0bd00b4d055f2329392d2f8b7fe566fc65901 Author: Malte Linke Date: Fri Jun 9 15:20:43 2023 +0200 Translated using Weblate (German) Currently translated at 47.4% (4932 of 10397 strings) Translation: libvirt/libvirt Translate-URL: https://translate.fedoraproject.org/projects/libvirt/libvirt/de/ Co-authored-by: Malte Linke Signed-off-by: Malte Linke From xen-devel-bounces@lists.xenproject.org Sat Jun 10 17:08:04 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sat, 10 Jun 2023 17:08:04 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546554.853519 (Exim 4.92) (envelope-from ) id 1q824J-0008Cj-Of; Sat, 10 Jun 2023 17:08:03 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546554.853519; Sat, 10 Jun 2023 17:08:03 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q824J-00089r-Jz; Sat, 10 Jun 2023 17:08:03 +0000 Received: by outflank-mailman (input) for mailman id 546554; Sat, 10 Jun 2023 17:08:02 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q824I-00084G-5h for xen-devel@lists.xenproject.org; Sat, 10 Jun 2023 17:08:02 +0000 Received: from out2-smtp.messagingengine.com (out2-smtp.messagingengine.com [66.111.4.26]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 57872a83-07b1-11ee-b232-6b7b168915f2; Sat, 10 Jun 2023 19:07:58 +0200 (CEST) Received: from compute4.internal (compute4.nyi.internal [10.202.2.44]) by mailout.nyi.internal (Postfix) with ESMTP id 3EF1D5C00AE; Sat, 10 Jun 2023 13:07:55 -0400 (EDT) Received: from mailfrontend1 ([10.202.2.162]) by compute4.internal (MEProxy); Sat, 10 Jun 2023 13:07:55 -0400 Received: by mail.messagingengine.com (Postfix) with ESMTPA; Sat, 10 Jun 2023 13:07:53 -0400 (EDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 57872a83-07b1-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= invisiblethingslab.com; h=cc:cc:content-transfer-encoding :content-type:date:date:from:from:in-reply-to:in-reply-to :message-id:mime-version:references:reply-to:sender:subject :subject:to:to; s=fm1; t=1686416875; x=1686503275; bh=8eCukIyMRl PPOWu7IrDDF4KRgmkrU2LAmPtn5ch9l/I=; b=sF6GlBzD0nalUis8HFxJ3GFoYu gp+/Voe64YSImHxWoYfbtgZChLaIa7+FAYDlVxfz7H9rQIJ5vYe5goVMRIkDJAMf IeR2/YitBAnj5mCplVVl/dufVvzn/hMb0ABYocMM7dWNR3tt/BFGBpqaiNyH3KGa 938BIPNs94Ed2MVIs6vGkO6W4Aj3bsYG6u929WNwE/4DZbn73jBLdWqrhDyL+ZCs nll8n+XW/1pu0282EOXzEWafOxfY3o8ugsj0bmLFs11hpye5A3aVBI1exSac35Hd XNy494NkqZgCszYznZM9f0jfCOx/U3lwtxZzbGR31sHUPpfAIwriOCH2z4Ng== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-transfer-encoding :content-type:date:date:feedback-id:feedback-id:from:from :in-reply-to:in-reply-to:message-id:mime-version:references :reply-to:sender:subject:subject:to:to:x-me-proxy:x-me-proxy :x-me-sender:x-me-sender:x-sasl-enc; s=fm1; t=1686416875; x= 1686503275; bh=8eCukIyMRlPPOWu7IrDDF4KRgmkrU2LAmPtn5ch9l/I=; b=d jpvP026T0gIsybsGRhDk99ORaDSPuO8dv7THoAFHxG8qTYa3fjXcEydBOD6OtG5i FEjLYSb5hfOoCVC+8okODx92aJqA026O6/Mah1svtwUiGLrKOg1mUTz9+lgczzXA AEWStALrn5Hy/SJ+hdeI+4g0m2W5Fb8PWZ97kkdm9MDYiyA3xd/mDGZE4/pH5CLR OLLtmg/zd3DkLVS5tsReDXUmY0chozZP2oxFMFqMgeRyyo1edAfKngzAClf0jaRH /EIkRvWD0L7Q6geLcQEqOMVOOS08YeC0TwU1NLzYErfohHlvYfyF5Qpk6wIG41gf c42OjsILj0VRI+xIciVBw== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvhedrgedutddgudduudcutefuodetggdotefrod ftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfgh necuuegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmd enucfjughrpefhvfevufffkffojghfggfgsedtkeertdertddtnecuhfhrohhmpeffvghm ihcuofgrrhhivgcuqfgsvghnohhurhcuoeguvghmihesihhnvhhishhisghlvghthhhinh hgshhlrggsrdgtohhmqeenucggtffrrghtthgvrhhnpeejffejgffgueegudevvdejkefg hefghffhffejteekleeufeffteffhfdtudehteenucevlhhushhtvghrufhiiigvpedtne curfgrrhgrmhepmhgrihhlfhhrohhmpeguvghmihesihhnvhhishhisghlvghthhhinhhg shhlrggsrdgtohhm X-ME-Proxy: Feedback-ID: iac594737:Fastmail From: Demi Marie Obenour To: Hans de Goede , Mauro Carvalho Chehab , Sakari Ailus , Greg Kroah-Hartman , Juergen Gross , Stefano Stabellini , Oleksandr Tyshchenko , Lee Jones , Andy Lutomirski , Thomas Gleixner , Vincenzo Frascino , Petr Mladek , Steven Rostedt , Sergey Senozhatsky , Andy Shevchenko , Rasmus Villemoes Cc: Demi Marie Obenour , linux-media@vger.kernel.org, linux-staging@lists.linux.dev, linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org, Linus Torvalds Subject: [PATCH v2 1/3] vsscanf(): Integer overflow is a conversion failure Date: Sat, 10 Jun 2023 13:07:41 -0400 Message-Id: <20230610170743.2510-2-demi@invisiblethingslab.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230610170743.2510-1-demi@invisiblethingslab.com> References: <20230610170743.2510-1-demi@invisiblethingslab.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit sscanf() and friends currently ignore integer overflow, but this is a bad idea. It is much better to detect integer overflow errors and consider this a conversion failure. This implements Linus's suggestion of using '!' to treat integer overflow as wrapping. It does _not_ allow wrapping of unsigned conversions by default, though, as in at least some cases accepting negative numbers is _not_ intended. Suggested-By: Linus Torvalds Signed-off-by: Demi Marie Obenour --- .../hive_isp_css_include/platform_support.h | 1 - include/linux/limits.h | 1 + include/linux/mfd/wl1273-core.h | 3 - include/vdso/limits.h | 3 + lib/vsprintf.c | 82 ++++++++++++++----- 5 files changed, 67 insertions(+), 23 deletions(-) diff --git a/drivers/staging/media/atomisp/pci/hive_isp_css_include/platform_support.h b/drivers/staging/media/atomisp/pci/hive_isp_css_include/platform_support.h index 0cdef4a5e8b1bed9884133f1a0b9d853d59d43a4..e29b96d8bebf14839f6dd48fdc6c0f8b029ef31d 100644 --- a/drivers/staging/media/atomisp/pci/hive_isp_css_include/platform_support.h +++ b/drivers/staging/media/atomisp/pci/hive_isp_css_include/platform_support.h @@ -27,7 +27,6 @@ #define UINT16_MAX USHRT_MAX #define UINT32_MAX UINT_MAX -#define UCHAR_MAX (255) #define CSS_ALIGN(d, a) d __attribute__((aligned(a))) diff --git a/include/linux/limits.h b/include/linux/limits.h index f6bcc936901071f496e3e85bb6e1d93905b12e32..8f7fd85b41fb46e6992d9e5912da00424119227a 100644 --- a/include/linux/limits.h +++ b/include/linux/limits.h @@ -8,6 +8,7 @@ #define SIZE_MAX (~(size_t)0) #define SSIZE_MAX ((ssize_t)(SIZE_MAX >> 1)) +#define SSIZE_MIN (-SSIZE_MAX - 1) #define PHYS_ADDR_MAX (~(phys_addr_t)0) #define U8_MAX ((u8)~0U) diff --git a/include/linux/mfd/wl1273-core.h b/include/linux/mfd/wl1273-core.h index c28cf76d5c31ee1c94a9319a2e2d318bf00283a6..b81a229135ed9f756c749122a8341816031c8311 100644 --- a/include/linux/mfd/wl1273-core.h +++ b/include/linux/mfd/wl1273-core.h @@ -204,9 +204,6 @@ WL1273_IS2_TRI_OPT | \ WL1273_IS2_RATE_48K) -#define SCHAR_MIN (-128) -#define SCHAR_MAX 127 - #define WL1273_FR_EVENT BIT(0) #define WL1273_BL_EVENT BIT(1) #define WL1273_RDS_EVENT BIT(2) diff --git a/include/vdso/limits.h b/include/vdso/limits.h index 0197888ad0e00b2f853d3f25ffa764f61cca7385..0cad0a2490e5efc194d874025eb3e3b846a5c7b4 100644 --- a/include/vdso/limits.h +++ b/include/vdso/limits.h @@ -2,6 +2,9 @@ #ifndef __VDSO_LIMITS_H #define __VDSO_LIMITS_H +#define UCHAR_MAX ((unsigned char)~0U) +#define SCHAR_MAX ((signed char)(UCHAR_MAX >> 1)) +#define SCHAR_MIN ((signed char)(-SCHAR_MAX - 1)) #define USHRT_MAX ((unsigned short)~0U) #define SHRT_MAX ((short)(USHRT_MAX >> 1)) #define SHRT_MIN ((short)(-SHRT_MAX - 1)) diff --git a/lib/vsprintf.c b/lib/vsprintf.c index 40f560959b169b4c4ac6154d658cfe76cfd0c5a6..8caccdcda0a2b470cda70c9b3837de37207eb512 100644 --- a/lib/vsprintf.c +++ b/lib/vsprintf.c @@ -59,7 +59,7 @@ bool no_hash_pointers __ro_after_init; EXPORT_SYMBOL_GPL(no_hash_pointers); -static noinline unsigned long long simple_strntoull(const char *startp, size_t max_chars, char **endp, unsigned int base) +static noinline unsigned long long simple_strntoull(const char *startp, size_t max_chars, char **endp, unsigned int base, bool *overflow) { const char *cp; unsigned long long result = 0ULL; @@ -71,6 +71,8 @@ static noinline unsigned long long simple_strntoull(const char *startp, size_t m if (prefix_chars < max_chars) { rv = _parse_integer_limit(cp, base, &result, max_chars - prefix_chars); /* FIXME */ + if (overflow) + *overflow = !!(rv & KSTRTOX_OVERFLOW); cp += (rv & ~KSTRTOX_OVERFLOW); } else { /* Field too short for prefix + digit, skip over without converting */ @@ -94,7 +96,7 @@ static noinline unsigned long long simple_strntoull(const char *startp, size_t m noinline unsigned long long simple_strtoull(const char *cp, char **endp, unsigned int base) { - return simple_strntoull(cp, INT_MAX, endp, base); + return simple_strntoull(cp, INT_MAX, endp, base, NULL); } EXPORT_SYMBOL(simple_strtoull); @@ -130,18 +132,22 @@ long simple_strtol(const char *cp, char **endp, unsigned int base) EXPORT_SYMBOL(simple_strtol); static long long simple_strntoll(const char *cp, size_t max_chars, char **endp, - unsigned int base) + unsigned int base, bool *overflow) { + unsigned long long minand; + bool negate; + /* * simple_strntoull() safely handles receiving max_chars==0 in the * case cp[0] == '-' && max_chars == 1. * If max_chars == 0 we can drop through and pass it to simple_strntoull() * and the content of *cp is irrelevant. */ - if (*cp == '-' && max_chars > 0) - return -simple_strntoull(cp + 1, max_chars - 1, endp, base); - - return simple_strntoull(cp, max_chars, endp, base); + negate = *cp == '-' && max_chars > 0; + minand = simple_strntoull(cp + negate, max_chars - negate, endp, base, overflow); + if (minand > (unsigned long long)LONG_MAX + negate) + *overflow = true; + return negate ? -minand : minand; } /** @@ -3441,7 +3447,7 @@ int vsscanf(const char *buf, const char *fmt, va_list args) unsigned long long u; } val; s16 field_width; - bool is_sign; + bool is_sign, overflow, allow_overflow; while (*fmt) { /* skip any white space in format */ @@ -3464,6 +3470,9 @@ int vsscanf(const char *buf, const char *fmt, va_list args) break; ++fmt; + allow_overflow = *fmt == '!'; + fmt += (int)allow_overflow; + /* skip this conversion. * advance both strings to next white space */ @@ -3649,45 +3658,80 @@ int vsscanf(const char *buf, const char *fmt, va_list args) if (is_sign) val.s = simple_strntoll(str, field_width >= 0 ? field_width : INT_MAX, - &next, base); + &next, base, &overflow); else val.u = simple_strntoull(str, field_width >= 0 ? field_width : INT_MAX, - &next, base); + &next, base, &overflow); + if (unlikely(overflow && !allow_overflow)) + break; switch (qualifier) { case 'H': /* that's 'hh' in format */ - if (is_sign) + if (is_sign) { + if (unlikely(val.s < SCHAR_MIN || val.s > SCHAR_MAX) && + !allow_overflow) + return num; *va_arg(args, signed char *) = val.s; - else + } else { + if (unlikely(val.u > UCHAR_MAX) && !allow_overflow) + return num; *va_arg(args, unsigned char *) = val.u; + } break; case 'h': - if (is_sign) + if (is_sign) { + if (unlikely(val.s < SHRT_MIN || val.s > SHRT_MAX) && + !allow_overflow) + return num; *va_arg(args, short *) = val.s; - else + } else { + if (unlikely(val.u > USHRT_MAX) && !allow_overflow) + return num; *va_arg(args, unsigned short *) = val.u; + } break; case 'l': - if (is_sign) + if (is_sign) { + if (unlikely(val.s < LONG_MIN || val.s > LONG_MAX) && + !allow_overflow) + return num; *va_arg(args, long *) = val.s; - else + } else { + if (unlikely(val.u > ULONG_MAX) && !allow_overflow) + return num; *va_arg(args, unsigned long *) = val.u; + } break; case 'L': + /* No overflow check needed */ if (is_sign) *va_arg(args, long long *) = val.s; else *va_arg(args, unsigned long long *) = val.u; break; case 'z': - *va_arg(args, size_t *) = val.u; + if (is_sign) { + if (unlikely(val.s < SSIZE_MIN || val.s > SSIZE_MAX)) + return num; + *va_arg(args, ssize_t *) = val.s; + } else { + if (unlikely(val.u > SIZE_MAX) && !allow_overflow) + return num; + *va_arg(args, size_t *) = val.u; + } break; default: - if (is_sign) + if (is_sign) { + if (unlikely(val.s < INT_MIN || val.s > INT_MAX) && + !allow_overflow) + return num; *va_arg(args, int *) = val.s; - else + } else { + if (unlikely(val.u > UINT_MAX) && !allow_overflow) + return num; *va_arg(args, unsigned int *) = val.u; + } break; } num++; -- Sincerely, Demi Marie Obenour (she/her/hers) Invisible Things Lab From xen-devel-bounces@lists.xenproject.org Sat Jun 10 17:08:04 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sat, 10 Jun 2023 17:08:04 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546552.853503 (Exim 4.92) (envelope-from ) id 1q824F-0007pb-1q; Sat, 10 Jun 2023 17:07:59 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546552.853503; Sat, 10 Jun 2023 17:07:59 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q824E-0007pU-Un; Sat, 10 Jun 2023 17:07:58 +0000 Received: by outflank-mailman (input) for mailman id 546552; Sat, 10 Jun 2023 17:07:57 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q824D-0007pL-9y for xen-devel@lists.xenproject.org; Sat, 10 Jun 2023 17:07:57 +0000 Received: from out2-smtp.messagingengine.com (out2-smtp.messagingengine.com [66.111.4.26]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 560a04d1-07b1-11ee-8611-37d641c3527e; Sat, 10 Jun 2023 19:07:53 +0200 (CEST) Received: from compute6.internal (compute6.nyi.internal [10.202.2.47]) by mailout.nyi.internal (Postfix) with ESMTP id 76A435C00BA; Sat, 10 Jun 2023 13:07:52 -0400 (EDT) Received: from mailfrontend1 ([10.202.2.162]) by compute6.internal (MEProxy); Sat, 10 Jun 2023 13:07:52 -0400 Received: by mail.messagingengine.com (Postfix) with ESMTPA; Sat, 10 Jun 2023 13:07:50 -0400 (EDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 560a04d1-07b1-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= invisiblethingslab.com; h=cc:cc:content-transfer-encoding :content-type:content-type:date:date:from:from:in-reply-to :message-id:mime-version:reply-to:sender:subject:subject:to:to; s=fm1; t=1686416872; x=1686503272; bh=CFxrsTHk2WZ2bHj5E7HOWzGC2 M6TbCCvBJcoVes5ASQ=; b=HO0vJtT77+rZndOX90RQX40x6vq642GbuMdxU55Ca zeVatV2LwToz78+BK08NzP769skVN+z1oFdl8bU5R0yZdNJ9jpkOcn2Q/JfzDTQQ Ynz3V4ag043lIML+1y895NbuI+eXWQM+vf0q7tIEhg3Y1irGvhk1r/GeSqC26ceX hATz9XyCucDSV/zhLfdkBcBO/QulWpjU9VY8T2Ehu9xXxtrv56Samma8R/JICMc0 d3uE+rvdtv1Nm19G4eocL0vTbxmsjOc5ljGXADTU7zOnwI41Ii+7deQXrNPM4CJA hLDYENmpLE0N/5ccHG1kBTmUUASAmZ0Vha3NaQ0oDXffw== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-transfer-encoding :content-type:content-type:date:date:feedback-id:feedback-id :from:from:in-reply-to:message-id:mime-version:reply-to:sender :subject:subject:to:to:x-me-proxy:x-me-proxy:x-me-sender :x-me-sender:x-sasl-enc; s=fm1; t=1686416872; x=1686503272; bh=C FxrsTHk2WZ2bHj5E7HOWzGC2M6TbCCvBJcoVes5ASQ=; b=NjIw4pICWS+wOmKQm 1JvFxSVOo56p+oLMbtOx+kbeeI6t01RsLM8kprlB/zc679knq1dlFrOL+wE8FEME mmAFpuvGIGrP49cxKoc9kqWhPlX0wpzo6RsFb5N3R67UJ2dptFmLg06xx4lcCyZ7 UlXREv/EdYUaSjvsbWGWYqUgABLfxE9j7iDOgeBiovjD/HzfPodvq+g029XHvUfh 6R7pVnLpqOA8rK5qepvydgnq7z/Y5Rmn8VRt5rket3TftfDCvOD0oT8URRDlfhgR YWiRqygOUFRunE901x96yp3zyPNkOwHDuYirhZkoe6fFfxT2NBDPynKznM6S/HYa zNNsA== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvhedrgedutddgudduudcutefuodetggdotefrod ftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfgh necuuegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmd enucfjughrpefhvfevufffkffogggtgfesthekredtredtjeenucfhrhhomhepffgvmhhi ucforghrihgvucfqsggvnhhouhhruceouggvmhhisehinhhvihhsihgslhgvthhhihhngh hslhgrsgdrtghomheqnecuggftrfgrthhtvghrnhephfeggfeiiedtieejgedutdekgfet geehheegteekvefhfefgudehtdevleegueegnecuvehluhhsthgvrhfuihiivgeptdenuc frrghrrghmpehmrghilhhfrhhomhepuggvmhhisehinhhvihhsihgslhgvthhhihhnghhs lhgrsgdrtghomh X-ME-Proxy: Feedback-ID: iac594737:Fastmail From: Demi Marie Obenour To: Hans de Goede , Mauro Carvalho Chehab , Sakari Ailus , Greg Kroah-Hartman , Juergen Gross , Stefano Stabellini , Oleksandr Tyshchenko , Lee Jones , Andy Lutomirski , Thomas Gleixner , Vincenzo Frascino , Petr Mladek , Steven Rostedt , Sergey Senozhatsky , Andy Shevchenko , Rasmus Villemoes Cc: Demi Marie Obenour , linux-media@vger.kernel.org, linux-staging@lists.linux.dev, linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org Subject: [PATCH v2 0/3] Make sscanf() stricter Date: Sat, 10 Jun 2023 13:07:40 -0400 Message-Id: <20230610170743.2510-1-demi@invisiblethingslab.com> X-Mailer: git-send-email 2.40.1 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Roger Pau Monné suggested making xenbus_scanf() stricter instead of using a custom parser. Christoph Hellwig asked why the normal vsscanf() cannot be made stricter. Richard Weinberger mentioned Linus Torvalds’s suggestion of using ! to allow overflow. Changes since v1: - Better commit messages. - Use ! to explicitly opt-in to allowing overflow. - Treat overflow as a conversion failure instead of returning ERANGE. - Drop the first patch (removal of simple_strtoll()) as it breaks bcache. - Stop skipping spaces in vsscanf() instead of adding a separate vsscanf_strict() function. Demi Marie Obenour (3): vsscanf(): Integer overflow is a conversion failure vsscanf(): do not skip spaces Strict XenStore entry parsing .../hive_isp_css_include/platform_support.h | 1 - drivers/xen/xenbus/xenbus_xs.c | 17 ++-- include/linux/limits.h | 1 + include/linux/mfd/wl1273-core.h | 3 - include/vdso/limits.h | 3 + lib/vsprintf.c | 90 +++++++++++++------ 6 files changed, 80 insertions(+), 35 deletions(-) -- Sincerely, Demi Marie Obenour (she/her/hers) Invisible Things Lab From xen-devel-bounces@lists.xenproject.org Sat Jun 10 17:08:05 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sat, 10 Jun 2023 17:08:05 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546553.853513 (Exim 4.92) (envelope-from ) id 1q824J-000853-8C; Sat, 10 Jun 2023 17:08:03 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546553.853513; Sat, 10 Jun 2023 17:08:03 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q824J-00084w-5T; Sat, 10 Jun 2023 17:08:03 +0000 Received: by outflank-mailman (input) for mailman id 546553; Sat, 10 Jun 2023 17:08:01 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q824H-0007pL-SV for xen-devel@lists.xenproject.org; Sat, 10 Jun 2023 17:08:01 +0000 Received: from out2-smtp.messagingengine.com (out2-smtp.messagingengine.com [66.111.4.26]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 59f8d0b9-07b1-11ee-8611-37d641c3527e; Sat, 10 Jun 2023 19:08:00 +0200 (CEST) Received: from compute6.internal (compute6.nyi.internal [10.202.2.47]) by mailout.nyi.internal (Postfix) with ESMTP id 555E85C00D2; Sat, 10 Jun 2023 13:07:59 -0400 (EDT) Received: from mailfrontend1 ([10.202.2.162]) by compute6.internal (MEProxy); Sat, 10 Jun 2023 13:07:59 -0400 Received: by mail.messagingengine.com (Postfix) with ESMTPA; Sat, 10 Jun 2023 13:07:57 -0400 (EDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 59f8d0b9-07b1-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= invisiblethingslab.com; h=cc:cc:content-transfer-encoding :content-type:date:date:from:from:in-reply-to:in-reply-to :message-id:mime-version:references:reply-to:sender:subject :subject:to:to; s=fm1; t=1686416879; x=1686503279; bh=7Jo4c9QtvH tlbToAB55IunRxRJMuKNem21WfUtrWYf0=; b=R4G872AhYLcgiVT64bv01uWxyk UTwIQzhAviwtIXFLPZXZvAExiP7zCJC1L2DwDvix0Y/EASfsycXqZVWDZYv/W4KD wa1afVEZ+1fTLXff2BL4wiL1DmJUjneB6egjzzThpU7oSwT+n5VRD1uhE3af5Vfy vn3SNtiLfO9TOfggoGNENKVz4LorILzprI6jhwRDoyledV1PZ4Z+7BRY315l64et DJoAyfYhYPgCJnu+1QxzEKf4KKCEh/oPuFIgP+1RdfOEv9whP+j9vPOvziuk8757 4sBfrpQU0TpgjfT9CRKmXccMjv+U4IhX4fbkDzlw5y1ICiUdvgEkDaTKyjnA== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-transfer-encoding :content-type:date:date:feedback-id:feedback-id:from:from :in-reply-to:in-reply-to:message-id:mime-version:references :reply-to:sender:subject:subject:to:to:x-me-proxy:x-me-proxy :x-me-sender:x-me-sender:x-sasl-enc; s=fm1; t=1686416879; x= 1686503279; bh=7Jo4c9QtvHtlbToAB55IunRxRJMuKNem21WfUtrWYf0=; b=X oovcJPuoEjGfvUgRl8xODTUTUISTuoR53DYOjfKU+/3BDsVh9AoXonh+6CGk2Bx7 V6rmqF7vS8zoo1Tq/Mq+uSoXdTEUeB0XrE2Z81DFUu+eZzgi4O6WstMXfs6vCds5 a3tvdw7mykCNksP4Xqmjr1YqdJZIrni8VQVutX3OVk46TMhnc1+4v2rWIJW82eAL HJk7AWeud3HyBNvLmjin43Ig0qw3YGZb7qhEJHmFsRUDnYKcaRYlV3Lz9PH7ZGKC jHdNH/JiBTewLNml7VzaJoNy/fFJAOtQt80QOMes9VM8/dV+0Vw2NN2wp34Ht7ae uQRe+sBFu1chU7B7k9vqg== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvhedrgedutddgudduudcutefuodetggdotefrod ftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfgh necuuegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmd enucfjughrpefhvfevufffkffojghfggfgsedtkeertdertddtnecuhfhrohhmpeffvghm ihcuofgrrhhivgcuqfgsvghnohhurhcuoeguvghmihesihhnvhhishhisghlvghthhhinh hgshhlrggsrdgtohhmqeenucggtffrrghtthgvrhhnpeekveekveegudffgffgleekudeu keetlefgveelhfehuedtfedvgfeklefhtefgfeenucffohhmrghinhepkhgvrhhnvghlrd horhhgnecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhfrhhomhep uggvmhhisehinhhvihhsihgslhgvthhhihhnghhslhgrsgdrtghomh X-ME-Proxy: Feedback-ID: iac594737:Fastmail From: Demi Marie Obenour To: Hans de Goede , Mauro Carvalho Chehab , Sakari Ailus , Greg Kroah-Hartman , Juergen Gross , Stefano Stabellini , Oleksandr Tyshchenko , Lee Jones , Andy Lutomirski , Thomas Gleixner , Vincenzo Frascino , Petr Mladek , Steven Rostedt , Sergey Senozhatsky , Andy Shevchenko , Rasmus Villemoes Cc: Demi Marie Obenour , linux-media@vger.kernel.org, linux-staging@lists.linux.dev, linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org, Christoph Hellwig Subject: [PATCH v2 2/3] vsscanf(): do not skip spaces Date: Sat, 10 Jun 2023 13:07:42 -0400 Message-Id: <20230610170743.2510-3-demi@invisiblethingslab.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230610170743.2510-1-demi@invisiblethingslab.com> References: <20230610170743.2510-1-demi@invisiblethingslab.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Passing spaces before e.g. an integer is usually not intended. This was suggested by Christoph in https://lore.kernel.org/lkml/ZIQrohcizoj4bZWx@infradead.org/. Suggested-by: Christoph Hellwig Signed-off-by: Demi Marie Obenour --- lib/vsprintf.c | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) diff --git a/lib/vsprintf.c b/lib/vsprintf.c index 8caccdcda0a2b470cda70c9b3837de37207eb512..d2d795d1aff0fd5cc50fb65ffb067067ab9f0dc6 100644 --- a/lib/vsprintf.c +++ b/lib/vsprintf.c @@ -3547,8 +3547,6 @@ int vsscanf(const char *buf, const char *fmt, va_list args) char *s = (char *)va_arg(args, char *); if (field_width == -1) field_width = SHRT_MAX; - /* first, skip leading white space in buffer */ - str = skip_spaces(str); /* now copy until next white space */ while (*str && !isspace(*str) && field_width--) @@ -3635,11 +3633,7 @@ int vsscanf(const char *buf, const char *fmt, va_list args) return num; } - /* have some sort of integer conversion. - * first, skip white space in buffer. - */ - str = skip_spaces(str); - + /* have some sort of integer conversion. */ digit = *str; if (is_sign && digit == '-') { if (field_width == 1) -- Sincerely, Demi Marie Obenour (she/her/hers) Invisible Things Lab From xen-devel-bounces@lists.xenproject.org Sat Jun 10 17:08:05 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sat, 10 Jun 2023 17:08:05 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546555.853525 (Exim 4.92) (envelope-from ) id 1q824K-0008IR-3n; Sat, 10 Jun 2023 17:08:04 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546555.853525; Sat, 10 Jun 2023 17:08:04 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q824J-0008Fp-U7; Sat, 10 Jun 2023 17:08:03 +0000 Received: by outflank-mailman (input) for mailman id 546555; Sat, 10 Jun 2023 17:08:02 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q824I-00084G-HX for xen-devel@lists.xenproject.org; Sat, 10 Jun 2023 17:08:02 +0000 Received: from out2-smtp.messagingengine.com (out2-smtp.messagingengine.com [66.111.4.26]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 5b037abc-07b1-11ee-b232-6b7b168915f2; Sat, 10 Jun 2023 19:08:01 +0200 (CEST) Received: from compute2.internal (compute2.nyi.internal [10.202.2.46]) by mailout.nyi.internal (Postfix) with ESMTP id 19C3F5C00F9; Sat, 10 Jun 2023 13:08:01 -0400 (EDT) Received: from mailfrontend1 ([10.202.2.162]) by compute2.internal (MEProxy); Sat, 10 Jun 2023 13:08:01 -0400 Received: by mail.messagingengine.com (Postfix) with ESMTPA; Sat, 10 Jun 2023 13:07:59 -0400 (EDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 5b037abc-07b1-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= invisiblethingslab.com; h=cc:cc:content-transfer-encoding :content-type:date:date:from:from:in-reply-to:in-reply-to :message-id:mime-version:references:reply-to:sender:subject :subject:to:to; s=fm1; t=1686416881; x=1686503281; bh=TmbhH/0ly3 pB3JOqGw89diUDufWw9j78goS8q6skCyk=; b=QVjheJeyM7p0c069LT+BuB4f0m JHFXKBOKLHyZdGN1dI7Xg2CHRbYbBz016p0MWQb1wJ0m/CkbOIqSGHQirxw9cB5r dtEKQIvGtiavzaAPLb7q48jcqNep5y25/EXr7KdUd5hOHtnYROPu4wlzgCv6qedJ V/i8hYS4e94/6Xn07dyYOoiU8WRkWNce47fxGLB++trtFUE4vZbDFbZ8TrAXCXqD zY7dq5ZsPRGpyARXLEtEeorMF3Kfy8QlNq3KZz4Db6g7l3s0FkhbI6BOM4g2t3sU 80XR4vln+Xcdb16w6e6yg9r63q43HfFl20Mi9EHQevPpHy+yXEYb9XO2LXRg== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-transfer-encoding :content-type:date:date:feedback-id:feedback-id:from:from :in-reply-to:in-reply-to:message-id:mime-version:references :reply-to:sender:subject:subject:to:to:x-me-proxy:x-me-proxy :x-me-sender:x-me-sender:x-sasl-enc; s=fm1; t=1686416881; x= 1686503281; bh=TmbhH/0ly3pB3JOqGw89diUDufWw9j78goS8q6skCyk=; b=H 5Do6YlaaYtGxcuyqDWouK2yBlL0NP5Q1P/beUidzDtLeqCk6SyG+M/R7ZvvQh+GV iBJ1PoRejG08Zr3Z4PG9EM3VFoBUkRr82a1KGgKpA6CnRhnf6sKJOIev99096QfK UbjK09Z9bdS4FmAn01FvBycOBgBhe8ilmBauglnwjcEpUpkmcM+mFk9vZORX0Hz2 /8nvl3DfVH3bTjoHQ55VOJNj5vwNx9XuwCf1el4oW4sG1FTMzUHpCYZfoDpiDk+Z b1UtwrYqj7lVkY78zIfJAC6V0P47Y9+DqGP68ZkKbJiGasS7uDFS55edLaOiwtn1 Kfdj0Hlg5T0+A+XJvKazQ== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvhedrgedutddgudduudcutefuodetggdotefrod ftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfgh necuuegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmd enucfjughrpefhvfevufffkffojghfggfgsedtkeertdertddtnecuhfhrohhmpeffvghm ihcuofgrrhhivgcuqfgsvghnohhurhcuoeguvghmihesihhnvhhishhisghlvghthhhinh hgshhlrggsrdgtohhmqeenucggtffrrghtthgvrhhnpeejffejgffgueegudevvdejkefg hefghffhffejteekleeufeffteffhfdtudehteenucevlhhushhtvghrufhiiigvpedtne curfgrrhgrmhepmhgrihhlfhhrohhmpeguvghmihesihhnvhhishhisghlvghthhhinhhg shhlrggsrdgtohhm X-ME-Proxy: Feedback-ID: iac594737:Fastmail From: Demi Marie Obenour To: Hans de Goede , Mauro Carvalho Chehab , Sakari Ailus , Greg Kroah-Hartman , Juergen Gross , Stefano Stabellini , Oleksandr Tyshchenko , Lee Jones , Andy Lutomirski , Thomas Gleixner , Vincenzo Frascino , Petr Mladek , Steven Rostedt , Sergey Senozhatsky , Andy Shevchenko , Rasmus Villemoes Cc: Demi Marie Obenour , linux-media@vger.kernel.org, linux-staging@lists.linux.dev, linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org Subject: [PATCH v2 3/3] Strict XenStore entry parsing Date: Sat, 10 Jun 2023 13:07:43 -0400 Message-Id: <20230610170743.2510-4-demi@invisiblethingslab.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230610170743.2510-1-demi@invisiblethingslab.com> References: <20230610170743.2510-1-demi@invisiblethingslab.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit This rejects bogus xenstore node values that include e.g. leading spaces or overflow the expected integer type. Signed-off-by: Demi Marie Obenour --- drivers/xen/xenbus/xenbus_xs.c | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/drivers/xen/xenbus/xenbus_xs.c b/drivers/xen/xenbus/xenbus_xs.c index 12e02eb01f5991b31db451cc57037205359b347f..7cb2a22a7698ac40c81add23476594d9f27de8d0 100644 --- a/drivers/xen/xenbus/xenbus_xs.c +++ b/drivers/xen/xenbus/xenbus_xs.c @@ -569,16 +569,20 @@ int xenbus_scanf(struct xenbus_transaction t, const char *dir, const char *node, const char *fmt, ...) { va_list ap; - int ret; + int ret = 0; + unsigned int len; char *val; - val = xenbus_read(t, dir, node, NULL); + val = xenbus_read(t, dir, node, &len); if (IS_ERR(val)) return PTR_ERR(val); + if (strlen(val) != len) + goto bad; va_start(ap, fmt); ret = vsscanf(val, fmt, ap); va_end(ap); +bad: kfree(val); /* Distinctive errno. */ if (ret == 0) @@ -636,15 +640,18 @@ int xenbus_gather(struct xenbus_transaction t, const char *dir, ...) while (ret == 0 && (name = va_arg(ap, char *)) != NULL) { const char *fmt = va_arg(ap, char *); void *result = va_arg(ap, void *); + unsigned len; char *p; - p = xenbus_read(t, dir, name, NULL); + p = xenbus_read(t, dir, name, &len); if (IS_ERR(p)) { ret = PTR_ERR(p); break; } - if (fmt) { - if (sscanf(p, fmt, result) == 0) + if (strlen(p) != len) + ret = -EINVAL; + else if (fmt) { + if (sscanf(p, fmt, result) <= 0) ret = -EINVAL; kfree(p); } else -- Sincerely, Demi Marie Obenour (she/her/hers) Invisible Things Lab From xen-devel-bounces@lists.xenproject.org Sat Jun 10 18:37:39 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sat, 10 Jun 2023 18:37:39 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546583.853555 (Exim 4.92) (envelope-from ) id 1q83Sn-00023e-D6; Sat, 10 Jun 2023 18:37:25 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546583.853555; Sat, 10 Jun 2023 18:37:25 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q83Sn-00023X-9y; Sat, 10 Jun 2023 18:37:25 +0000 Received: by outflank-mailman (input) for mailman id 546583; Sat, 10 Jun 2023 18:37:24 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q83Sm-00023O-0e for xen-devel@lists.xenproject.org; Sat, 10 Jun 2023 18:37:24 +0000 Received: from galois.linutronix.de (galois.linutronix.de [193.142.43.55]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id d509df91-07bd-11ee-8611-37d641c3527e; Sat, 10 Jun 2023 20:37:20 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: d509df91-07bd-11ee-8611-37d641c3527e From: Thomas Gleixner DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linutronix.de; s=2020; t=1686422239; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=N7WjIOv23GkoARnLqItYOF1clW2sOuIKmsM3GXO5Xpg=; b=YCL2WcdNIO0s3K7UdC06CzI1RNfJDkJe7HEF4v5qdxN8RrO3sAaq8xX62f444BjcyFpI8P dvsdlA/V4XzVxCD0n8uz5bQYGAgwsvDqWJ8rNLJDHj8k8iQwRRGGrRVWI0YDNiCXV818Ht GruRrk0/QYF97Rhj5uVOQfTLlEitAY6Rs+rjvdpG7tob605G0Kvr/fVugOur6hufdowyf4 Ax62Ig7bPHia5hggr2KaWqBtF0qOBpkmhrvFk02kMofvAv6EhF1xBRXZSKW4DrYvu52o5K D3W+c9UFX4owv7UrRYBLocORMja3sAJWQxRmRkowpokWoNy9GULDK6NIlr681w== DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=linutronix.de; s=2020e; t=1686422239; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=N7WjIOv23GkoARnLqItYOF1clW2sOuIKmsM3GXO5Xpg=; b=S7g5PoBvQUVBSn498XvK9vJHSGy+5G3W0vpFYxeTng6YEJJyB4cAG/EGEkYC18Ui7RMwlG 7oqYWL4zDKXltfCg== To: Hou Wenlong , Dave Hansen Cc: linux-kernel@vger.kernel.org, Lai Jiangshan , Alexey Makhalov , Andrew Morton , Andy Lutomirski , Anshuman Khandual , Borislav Petkov , Boris Ostrovsky , Brian Gerst , Dave Hansen , David Woodhouse , "H. Peter Anvin" , Ingo Molnar , Josh Poimboeuf , Juergen Gross , "Kirill A. Shutemov" , "Mike Rapoport (IBM)" , Pasha Tatashin , Peter Zijlstra , "Srivatsa S. Bhat (VMware)" , Suren Baghdasaryan , Usama Arif , virtualization@lists.linux-foundation.org, VMware PV-Drivers Reviewers , x86@kernel.org, xen-devel@lists.xenproject.org Subject: Re: [PATCH RFC 0/4] x86/fixmap: Unify FIXADDR_TOP In-Reply-To: <20230608093303.GA16983@k08j02272.eu95sqa> References: <1f633e99-d294-6932-31e9-0eb158d030ea@intel.com> <20230608093303.GA16983@k08j02272.eu95sqa> Date: Sat, 10 Jun 2023 20:37:18 +0200 Message-ID: <87y1kr88pt.ffs@tglx> MIME-Version: 1.0 Content-Type: text/plain On Thu, Jun 08 2023 at 17:33, Hou Wenlong wrote: > On Wed, Jun 07, 2023 at 08:49:15PM +0800, Dave Hansen wrote: >> What problems does this patch set solve? How might that solution be >> visible to end users? Why is this problem important to you? > > We want to build the kernel as PIE and allow the kernel image area, > including the fixmap area, to be placed at any virtual address. You are still failing to tell us why you want that and which problem this solves. Just that fact that you want to something is not an argument. > We have also implemented a PV Linux guest based on PIE, which can be > used in software virtualization similar to Lguest. PIE makes the guest > kernel share the host kernel space similar to a normal userspace > process. Additionally, we are considering whether it is possible to > use PIE and PVOPS to implement a user-mode kernel. That solves what? Thanks, tglx From xen-devel-bounces@lists.xenproject.org Sat Jun 10 18:49:28 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sat, 10 Jun 2023 18:49:28 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546588.853564 (Exim 4.92) (envelope-from ) id 1q83eM-0003eX-Cs; Sat, 10 Jun 2023 18:49:22 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546588.853564; Sat, 10 Jun 2023 18:49:22 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q83eM-0003eQ-9Y; Sat, 10 Jun 2023 18:49:22 +0000 Received: by outflank-mailman (input) for mailman id 546588; Sat, 10 Jun 2023 18:49:21 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q83eL-0003eK-2O for xen-devel@lists.xenproject.org; Sat, 10 Jun 2023 18:49:21 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q83eK-0004Cg-Dl; Sat, 10 Jun 2023 18:49:20 +0000 Received: from gw1.octic.net ([88.97.20.152] helo=[10.0.1.240]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1q83eK-00084S-81; Sat, 10 Jun 2023 18:49:20 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=N7vTGnehv2z7weMC3moTpV9z7poBegXWfouw5w7j+O8=; b=A0nKJGzIfeK8z5oGZ+jtJrv/wm hmVmf6cU0W/DzZxGoXc/8/s/gXe/bJOccyvnq642gk4keYTcQqwFoBQQaWooOA9XfMwh+4i4IXvOX qT109d5/3cVkePAUnXL+SZz0WNBU00kdd/rX4LXnwE22IrdbSZhNuBjERzSNlPk/s/S8=; Message-ID: Date: Sat, 10 Jun 2023 19:49:18 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.11.2 Subject: Re: [PATCH v7 1/5] xen/arm32: head: Widen the use of the temporary mapping Content-Language: en-US To: xen-devel@lists.xenproject.org Cc: Luca.Fancellu@arm.com, michal.orzel@amd.com, Julien Grall , Stefano Stabellini , Bertrand Marquis , Volodymyr Babchuk , Henry Wang References: <20230416143211.72227-1-julien@xen.org> <20230416143211.72227-2-julien@xen.org> From: Julien Grall In-Reply-To: <20230416143211.72227-2-julien@xen.org> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi all, On 16/04/2023 15:32, Julien Grall wrote: > From: Julien Grall > > At the moment, the temporary mapping is only used when the virtual > runtime region of Xen is clashing with the physical region. > > In follow-up patches, we will rework how secondary CPU bring-up works > and it will be convenient to use the fixmap area for accessing > the root page-table (it is per-cpu). > > Rework the code to use temporary mapping when the Xen physical address > is not overlapping with the temporary mapping. > > This also has the advantage to simplify the logic to identity map > Xen. I had to revert this patch a couple of months ago because Xen was not booting anymore on the Arndale. I finally managed to figure out what was the issue. It was an interesting read through the Arm Arm. In switch_to_runtime_mapping we have the following code: flush_xen_tlb_local r0 /* Map boot_second into boot_pgtable */ mov_w r0, XEN_VIRT_START create_table_entry boot_pgtable, boot_second, r0, 1 /* Ensure any page table updates are visible before continuing */ dsb nsh ready_to_switch: mov pc, lr Per Arm Arm (Armv7 ARM DDI 0406C.d, section A3-148): "The DMB and DSB memory barriers affect reads and writes to the memory system generated by load/store instructions and data or unified cache maintenance operations being executed by the processor. Instruction fetches or accesses caused by a hardware translation table access are not explicit accesses." In the example above, 'lr' points to a region covered by the mapping we created just above. As the 'dsb' doesn't affect instruction fetch, it means it could happen before the page-table entry was observed and therefore result to a translation fault. There is another situation where this could happen (taken from Linux commit d0b7a302d58a "Revert "arm64: Remove unnecessary ISBs from set_{pte,pmd,pud}"): MOV X0, STR X0, [Xptep] // Store new PTE to page table DSB ISHST LDR X1, [X2] // Translates using the new PTE The dsb needs to be followed by an isb otherwise, a translation fault could occur. There are a few places in where where the isb is missing. I think we didn't notice it before because we don't often create a new PTE and then directly access it. Note that this issue is not in this patch but in fbd9b5fb4c26 ("xen/arm32: head: Remove restriction where to load Xen"). We didn't notice it because the temporary mapping wasn't much used before. I will prepare a patch series to add the missing isb. Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Sat Jun 10 19:39:51 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sat, 10 Jun 2023 19:39:51 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546596.853578 (Exim 4.92) (envelope-from ) id 1q84Qw-0000ms-9g; Sat, 10 Jun 2023 19:39:34 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546596.853578; Sat, 10 Jun 2023 19:39:34 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q84Qw-0000ml-6v; Sat, 10 Jun 2023 19:39:34 +0000 Received: by outflank-mailman (input) for mailman id 546596; Sat, 10 Jun 2023 19:39:32 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q84Qt-0000mf-PT for xen-devel@lists.xenproject.org; Sat, 10 Jun 2023 19:39:32 +0000 Received: from mga03.intel.com (mga03.intel.com [134.134.136.65]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 8112db17-07c6-11ee-8611-37d641c3527e; Sat, 10 Jun 2023 21:39:26 +0200 (CEST) Received: from fmsmga007.fm.intel.com ([10.253.24.52]) by orsmga103.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 10 Jun 2023 12:39:23 -0700 Received: from lkp-server01.sh.intel.com (HELO 15ab08e44a81) ([10.239.97.150]) by fmsmga007.fm.intel.com with ESMTP; 10 Jun 2023 12:39:18 -0700 Received: from kbuild by 15ab08e44a81 with local (Exim 4.96) (envelope-from ) id 1q84Qg-000AO6-09; Sat, 10 Jun 2023 19:39:18 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 8112db17-07c6-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1686425966; x=1717961966; h=date:from:to:cc:subject:message-id:references: mime-version:in-reply-to; bh=ufJG5h/aowefg1btQn3CbK4pVsN3453BNzPIbovB+38=; b=htJcG0/94PnbSnVGyWMbILXCgLha13z+n/eI/YlVjvVTGgbUlpHzBM3I MUrvZUSN+g5WlPtAy+lZU/dGSQoy8FQd+iTydu/MB0m+yhlgKusD9Yzm/ 4DKGqiq2lmO8XAmrKeQYITpCP7qFtCxb2HnHkfFtsJ9Po31WVW43uTtWF 3eQoMu+pVMRyaywPW4ex8OmsbDQ60GB0bpeQ/CISWl1neWGWWPRBcJbWT FAk/ieB4VKRDGQRSZfEn0NMkhZi9dp9IQaUXuK1/hWi+68MbTNlLgY1Tt Igt8R1D92v+scp+GjqxRpLnMMYIiI3EP7jAR/7HWDTsVzbMN4/OxnUElA w==; X-IronPort-AV: E=McAfee;i="6600,9927,10737"; a="361163536" X-IronPort-AV: E=Sophos;i="6.00,233,1681196400"; d="scan'208";a="361163536" X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10737"; a="713885680" X-IronPort-AV: E=Sophos;i="6.00,233,1681196400"; d="scan'208";a="713885680" Date: Sun, 11 Jun 2023 03:38:43 +0800 From: kernel test robot To: Demi Marie Obenour , Hans de Goede , Mauro Carvalho Chehab , Sakari Ailus , Greg Kroah-Hartman , Juergen Gross , Stefano Stabellini , Oleksandr Tyshchenko , Lee Jones , Andy Lutomirski , Thomas Gleixner , Vincenzo Frascino , Petr Mladek , Steven Rostedt , Sergey Senozhatsky , Andy Shevchenko , Rasmus Villemoes Cc: oe-kbuild-all@lists.linux.dev, linux-media@vger.kernel.org, Demi Marie Obenour , linux-staging@lists.linux.dev, linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org Subject: Re: [PATCH v2 1/3] vsscanf(): Integer overflow is a conversion failure Message-ID: <202306110319.q5StyX6B-lkp@intel.com> References: <20230610170743.2510-2-demi@invisiblethingslab.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20230610170743.2510-2-demi@invisiblethingslab.com> Hi Demi, kernel test robot noticed the following build errors: [auto build test ERROR on media-tree/master] [also build test ERROR on lee-mfd/for-mfd-next xen-tip/linux-next linus/master lee-mfd/for-mfd-fixes v6.4-rc5 next-20230609] [If your patch is applied to the wrong git tree, kindly drop us a note. And when submitting patch, we suggest to use '--base' as documented in https://git-scm.com/docs/git-format-patch#_base_tree_information] url: https://github.com/intel-lab-lkp/linux/commits/Demi-Marie-Obenour/vsscanf-Integer-overflow-is-a-conversion-failure/20230611-010926 base: git://linuxtv.org/media_tree.git master patch link: https://lore.kernel.org/r/20230610170743.2510-2-demi%40invisiblethingslab.com patch subject: [PATCH v2 1/3] vsscanf(): Integer overflow is a conversion failure config: arc-randconfig-r033-20230611 (https://download.01.org/0day-ci/archive/20230611/202306110319.q5StyX6B-lkp@intel.com/config) compiler: arceb-elf-gcc (GCC) 12.3.0 reproduce (this is a W=1 build): mkdir -p ~/bin wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross chmod +x ~/bin/make.cross git remote add media-tree git://linuxtv.org/media_tree.git git fetch media-tree master git checkout media-tree/master b4 shazam https://lore.kernel.org/r/20230610170743.2510-2-demi@invisiblethingslab.com # save the config file mkdir build_dir && cp config build_dir/.config COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-12.3.0 ~/bin/make.cross W=1 O=build_dir ARCH=arc olddefconfig COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-12.3.0 ~/bin/make.cross W=1 O=build_dir ARCH=arc SHELL=/bin/bash If you fix the issue in a separate patch/commit (i.e. not just a new version of the same patch/commit), kindly add following tags | Reported-by: kernel test robot | Closes: https://lore.kernel.org/oe-kbuild-all/202306110319.q5StyX6B-lkp@intel.com/ All errors (new ones prefixed by >>): lib/vsprintf.c: In function 'simple_strtoll': >> lib/vsprintf.c:163:16: error: too few arguments to function 'simple_strntoll' 163 | return simple_strntoll(cp, INT_MAX, endp, base); | ^~~~~~~~~~~~~~~ lib/vsprintf.c:134:18: note: declared here 134 | static long long simple_strntoll(const char *cp, size_t max_chars, char **endp, | ^~~~~~~~~~~~~~~ lib/vsprintf.c: In function 'va_format': lib/vsprintf.c:1687:9: warning: function 'va_format' might be a candidate for 'gnu_printf' format attribute [-Wsuggest-attribute=format] 1687 | buf += vsnprintf(buf, end > buf ? end - buf : 0, va_fmt->fmt, va); | ^~~ lib/vsprintf.c: In function 'simple_strtoll': lib/vsprintf.c:164:1: error: control reaches end of non-void function [-Werror=return-type] 164 | } | ^ cc1: some warnings being treated as errors vim +/simple_strntoll +163 lib/vsprintf.c 900fdc4573766d Richard Fitzgerald 2021-05-14 152 ^1da177e4c3f41 Linus Torvalds 2005-04-16 153 /** ^1da177e4c3f41 Linus Torvalds 2005-04-16 154 * simple_strtoll - convert a string to a signed long long ^1da177e4c3f41 Linus Torvalds 2005-04-16 155 * @cp: The start of the string ^1da177e4c3f41 Linus Torvalds 2005-04-16 156 * @endp: A pointer to the end of the parsed string will be placed here ^1da177e4c3f41 Linus Torvalds 2005-04-16 157 * @base: The number base to use 462e471107624f Eldad Zack 2012-12-17 158 * e8cc2b97ca5aa1 Andy Shevchenko 2020-02-21 159 * This function has caveats. Please use kstrtoll instead. ^1da177e4c3f41 Linus Torvalds 2005-04-16 160 */ ^1da177e4c3f41 Linus Torvalds 2005-04-16 161 long long simple_strtoll(const char *cp, char **endp, unsigned int base) ^1da177e4c3f41 Linus Torvalds 2005-04-16 162 { 900fdc4573766d Richard Fitzgerald 2021-05-14 @163 return simple_strntoll(cp, INT_MAX, endp, base); ^1da177e4c3f41 Linus Torvalds 2005-04-16 164 } 98d5ce0d004466 Hans Verkuil 2010-04-23 165 EXPORT_SYMBOL(simple_strtoll); ^1da177e4c3f41 Linus Torvalds 2005-04-16 166 -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki From xen-devel-bounces@lists.xenproject.org Sat Jun 10 19:51:18 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sat, 10 Jun 2023 19:51:18 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546601.853587 (Exim 4.92) (envelope-from ) id 1q84cB-0003C5-AM; Sat, 10 Jun 2023 19:51:11 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546601.853587; Sat, 10 Jun 2023 19:51:11 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q84cB-0003By-7v; Sat, 10 Jun 2023 19:51:11 +0000 Received: by outflank-mailman (input) for mailman id 546601; Sat, 10 Jun 2023 19:51:10 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q84cA-0003Bs-OV for xen-devel@lists.xenproject.org; Sat, 10 Jun 2023 19:51:10 +0000 Received: from eu-smtp-delivery-151.mimecast.com (eu-smtp-delivery-151.mimecast.com [185.58.86.151]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 234d050c-07c8-11ee-b232-6b7b168915f2; Sat, 10 Jun 2023 21:51:06 +0200 (CEST) Received: from AcuMS.aculab.com (156.67.243.121 [156.67.243.121]) by relay.mimecast.com with ESMTP with both STARTTLS and AUTH (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id uk-mta-191-aQsr8P1pPA2zGT4voRzmug-1; Sat, 10 Jun 2023 20:51:04 +0100 Received: from AcuMS.Aculab.com (10.202.163.6) by AcuMS.aculab.com (10.202.163.6) with Microsoft SMTP Server (TLS) id 15.0.1497.48; Sat, 10 Jun 2023 20:50:58 +0100 Received: from AcuMS.Aculab.com ([::1]) by AcuMS.aculab.com ([::1]) with mapi id 15.00.1497.048; Sat, 10 Jun 2023 20:50:58 +0100 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 234d050c-07c8-11ee-b232-6b7b168915f2 X-MC-Unique: aQsr8P1pPA2zGT4voRzmug-1 From: David Laight To: 'Andrew Cooper' , Yunhong Jiang , Thomas Gleixner CC: "Kirill A. Shutemov" , LKML , "x86@kernel.org" , "David Woodhouse" , Brian Gerst , "Arjan van de Veen" , Paolo Bonzini , "Paul McKenney" , Tom Lendacky , "Sean Christopherson" , Oleksandr Natalenko , Paul Menzel , "Guilherme G. Piccoli" , Piotr Gorski , Usama Arif , Juergen Gross , "Boris Ostrovsky" , "xen-devel@lists.xenproject.org" , Russell King , "Arnd Bergmann" , "linux-arm-kernel@lists.infradead.org" , Catalin Marinas , Will Deacon , Guo Ren , "linux-csky@vger.kernel.org" , Thomas Bogendoerfer , "linux-mips@vger.kernel.org" , "James E.J. Bottomley" , Helge Deller , "linux-parisc@vger.kernel.org" , Paul Walmsley , Palmer Dabbelt , "linux-riscv@lists.infradead.org" , "Mark Rutland" , Sabin Rapan , "Michael Kelley (LINUX)" , Dave Hansen Subject: RE: [patch] x86/realmode: Make stack lock work in trampoline_compat() Thread-Topic: [patch] x86/realmode: Make stack lock work in trampoline_compat() Thread-Index: AQHZmmUgtDGga6k1FUelCeu8f3dcaq+Ecr5A Date: Sat, 10 Jun 2023 19:50:58 +0000 Message-ID: <67f939e112cc4578833ca74123bee402@AcuMS.aculab.com> References: <20230508181633.089804905@linutronix.de> <20230508185218.962208640@linutronix.de> <20230524204818.3tjlwah2euncxzmh@box.shutemov.name> <87y1lbl7r6.ffs@tglx> <87sfbhlwp9.ffs@tglx> <20230529023939.mc2akptpxcg3eh2f@box.shutemov.name> <87bki3kkfi.ffs@tglx> <20230529203129.sthnhzgds7ynddxd@box.shutemov.name> <87h6rujdvl.ffs@tglx> <20230608233402.GA3430@yjiang5-mobl.amr.corp.intel.com> In-Reply-To: Accept-Language: en-GB, en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ms-exchange-transport-fromentityheader: Hosted x-originating-ip: [10.202.205.107] MIME-Version: 1.0 X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: aculab.com Content-Language: en-US Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: base64 RnJvbTogQW5kcmV3IENvb3Blcg0KPiBTZW50OiAwOSBKdW5lIDIwMjMgMDA6NTgNCj4gDQouLi4N Cj4gVGhlIGltcG9ydGFudCBwb2ludCBpcyB0aGUgbCBzdWZmaXggb24gYnRzbCwgd2hpY2ggZm9y Y2VzIGl0IHRvIGJlIGxvbmcNCj4gKDMyYml0KSBpcnJlc3BlY3RpdmUgb2YgdGhlIGRlZmF1bHQg b3BlcmFuZCBzaXplLg0KDQpEb2VzIHRoYXQgbWF0dGVyIGF0IGFsbD8NClRoZSAnYml0JyBvcGNv ZGVzIChJJ20gc3VyZSAnYnRzJyBpcyAnYml0IHRlc3QgYW5kIHNldCcpIHRha2UNCmEgYml0IG9m ZnNldCBmcm9tIHRoZSBiYXNlIGFkZHJlc3MuDQpUaGlzIGFjY2Vzc2VzIHRoZSBzYW1lIGJpdCBy ZWdhcmRsZXNzIG9mIHRoZSBvcGVyYW5kIHNpemUuDQoNClRoZSBvbmUgcmVhbCBpc3N1ZSBpcyB0 aGF0IGEgYnl0ZSBvcGVyYW5kIHdpbGwgb25seSBsb2NrIHRoZSBvbmUgYnl0ZS4NClRoaXMgbWln aHQgYmUgcHJvYmxlbWF0aWMgaWYgbm9uLWJpdCBsb2NrZWQgYWNjZXNzZXMgYXJlIGFsc28gdXNl ZC4NCkFsdGhvdWdoIGl0IHdvdWxkIG5lZWQgdG8gYmUgcmF0aGVyIG9ic2N1cmUgdXNlLg0KKFRo aXMgbWF5IGJlIG9uZSBvZiB0aGVtLi4uKQ0KDQpUaGUgb25seSBvdGhlciBwcm9ibGVtIGlzIHRo YXQgYnRzbCBhbHdheXMgZG9lcyBhIGxvY2tlZCAzMmJpdA0KYWNjZXNzLiBJZiB0aGUgYmFzZSBh ZGRyZXNzIGlzIG1pc2FsaWduZWQgdGhpcyBpcyBhIG1pc2FsaWduZWQNCmxvY2tlZCBhY2Nlc3Mg LSBwcm9ibGVtYXRpYyBpZiBpdCBjcm9zc2VzIGEgY2FjaGUgbGluZSBib3VuZGFyeS4NCg0KCURh dmlkDQoNCi0NClJlZ2lzdGVyZWQgQWRkcmVzcyBMYWtlc2lkZSwgQnJhbWxleSBSb2FkLCBNb3Vu dCBGYXJtLCBNaWx0b24gS2V5bmVzLCBNSzEgMVBULCBVSw0KUmVnaXN0cmF0aW9uIE5vOiAxMzk3 Mzg2IChXYWxlcykNCg== From xen-devel-bounces@lists.xenproject.org Sat Jun 10 19:59:42 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sat, 10 Jun 2023 19:59:42 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546606.853598 (Exim 4.92) (envelope-from ) id 1q84kD-0003sI-4i; Sat, 10 Jun 2023 19:59:29 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546606.853598; Sat, 10 Jun 2023 19:59:29 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q84kD-0003sB-1N; Sat, 10 Jun 2023 19:59:29 +0000 Received: by outflank-mailman (input) for mailman id 546606; Sat, 10 Jun 2023 19:59:27 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q84kB-0003s5-PN for xen-devel@lists.xenproject.org; Sat, 10 Jun 2023 19:59:27 +0000 Received: from mail-wm1-x333.google.com (mail-wm1-x333.google.com [2a00:1450:4864:20::333]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 4c74a30c-07c9-11ee-8611-37d641c3527e; Sat, 10 Jun 2023 21:59:24 +0200 (CEST) Received: by mail-wm1-x333.google.com with SMTP id 5b1f17b1804b1-3f7353993cbso21778085e9.0 for ; Sat, 10 Jun 2023 12:59:24 -0700 (PDT) Received: from localhost ([102.36.222.112]) by smtp.gmail.com with ESMTPSA id t12-20020adfeb8c000000b0030ae6432504sm7861646wrn.38.2023.06.10.12.59.20 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 10 Jun 2023 12:59:23 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 4c74a30c-07c9-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1686427164; x=1689019164; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:from:to:cc:subject:date:message-id:reply-to; bh=pH6F4IpPs6WqwDutFEw1CeMpDeXOPSGi61HT3b4tF54=; b=pq6MkclAqqXNn+gzx4D066TG0+Coqb+LuXHvlzjEbQf7n6G9HOhm93O74uKGIM5Hzw ZDBHHO60qQjQxGVXSAtv4QufMA5vPBfZRAZnQ2rEGoZDg3MGaY5z+p9nF5l1IFFrNmQA seRUzRIkI+FbEems6/PrBv+L1KxKLjDmnTUoYsULz4qWxZuVWAlfBrOAPCh4QCo9gC6P CAsVaa27exiL9n3NDGFoOhXC99oCSF0pubSmTJ6OkIRWje0mZOp2QKIKS0BoL3qxBMNV anLmNtaWYyXOARg6emTJ2uf39lzUAhJ6F0NT3rqePS/kha2t7bNcYatsYJ7wl3OMj7fO hjyA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686427164; x=1689019164; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=pH6F4IpPs6WqwDutFEw1CeMpDeXOPSGi61HT3b4tF54=; b=c9pUi2rrKB6mBRdORk2voMlR8tFR7sqM/TE+g9dFp7ljVDsWz2oyeZcDlx0xymgDAH nzao+7Nidol/lcdPbLOok1axzNq0aRwag9CCQRmZS5wjPf9keU1Hk0x9tH3MQ5bMk7Dk qxhMPY9c/aXna3AIIaqq9UnKWs5E+CwgcPvNAg2pC5I7i6gYA9NV/EM2TawmCPg5x7TY EGrdl2fOctdexxngxwRWlrJ0T3XTkmuUzSYuM16IpEzDT9x61IV98Fd1s/Y101sFRn1z RT42y+or2+2nn9pRtXoXyx3E75+Qwj+luT0aUGk8mbUXcqg64E43PkLpRTxGd2N5f5v8 XjFg== X-Gm-Message-State: AC+VfDx0VgCcjnPPxIBjlxeyT8t6EpMOcUMh4LqVCCyBDbufPltcs3Mb iWizDNjwzjLxwV2az0Wfu0TuxQ== X-Google-Smtp-Source: ACHHUZ6+VEOi+STjrbBGZOKsuBAvGn4quAt/4Ww7GrPoS2S/QMTzO+t/tJgopO6iBsQbNWu3/XgouA== X-Received: by 2002:a05:600c:5123:b0:3f7:e78e:8a41 with SMTP id o35-20020a05600c512300b003f7e78e8a41mr7063994wms.18.1686427164344; Sat, 10 Jun 2023 12:59:24 -0700 (PDT) Date: Sat, 10 Jun 2023 22:59:17 +0300 From: Dan Carpenter To: Demi Marie Obenour Cc: Hans de Goede , Mauro Carvalho Chehab , Sakari Ailus , Greg Kroah-Hartman , Juergen Gross , Stefano Stabellini , Oleksandr Tyshchenko , Lee Jones , Andy Lutomirski , Thomas Gleixner , Vincenzo Frascino , Petr Mladek , Steven Rostedt , Sergey Senozhatsky , Andy Shevchenko , Rasmus Villemoes , linux-media@vger.kernel.org, linux-staging@lists.linux.dev, linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org, Linus Torvalds Subject: Re: [PATCH v2 1/3] vsscanf(): Integer overflow is a conversion failure Message-ID: <2551923b-8c92-4ae7-90ec-2482c9e546e3@kadam.mountain> References: <20230610170743.2510-1-demi@invisiblethingslab.com> <20230610170743.2510-2-demi@invisiblethingslab.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20230610170743.2510-2-demi@invisiblethingslab.com> On Sat, Jun 10, 2023 at 01:07:41PM -0400, Demi Marie Obenour wrote: > --- > .../hive_isp_css_include/platform_support.h | 1 - > include/linux/limits.h | 1 + > include/linux/mfd/wl1273-core.h | 3 - > include/vdso/limits.h | 3 + > lib/vsprintf.c | 82 ++++++++++++++----- > 5 files changed, 67 insertions(+), 23 deletions(-) > > diff --git a/drivers/staging/media/atomisp/pci/hive_isp_css_include/platform_support.h b/drivers/staging/media/atomisp/pci/hive_isp_css_include/platform_support.h > index 0cdef4a5e8b1bed9884133f1a0b9d853d59d43a4..e29b96d8bebf14839f6dd48fdc6c0f8b029ef31d 100644 > --- a/drivers/staging/media/atomisp/pci/hive_isp_css_include/platform_support.h > +++ b/drivers/staging/media/atomisp/pci/hive_isp_css_include/platform_support.h > @@ -27,7 +27,6 @@ > > #define UINT16_MAX USHRT_MAX > #define UINT32_MAX UINT_MAX > -#define UCHAR_MAX (255) > > #define CSS_ALIGN(d, a) d __attribute__((aligned(a))) > > diff --git a/include/linux/limits.h b/include/linux/limits.h > index f6bcc936901071f496e3e85bb6e1d93905b12e32..8f7fd85b41fb46e6992d9e5912da00424119227a 100644 > --- a/include/linux/limits.h > +++ b/include/linux/limits.h > @@ -8,6 +8,7 @@ > > #define SIZE_MAX (~(size_t)0) > #define SSIZE_MAX ((ssize_t)(SIZE_MAX >> 1)) > +#define SSIZE_MIN (-SSIZE_MAX - 1) > #define PHYS_ADDR_MAX (~(phys_addr_t)0) > > #define U8_MAX ((u8)~0U) > diff --git a/include/linux/mfd/wl1273-core.h b/include/linux/mfd/wl1273-core.h > index c28cf76d5c31ee1c94a9319a2e2d318bf00283a6..b81a229135ed9f756c749122a8341816031c8311 100644 > --- a/include/linux/mfd/wl1273-core.h > +++ b/include/linux/mfd/wl1273-core.h > @@ -204,9 +204,6 @@ > WL1273_IS2_TRI_OPT | \ > WL1273_IS2_RATE_48K) > > -#define SCHAR_MIN (-128) > -#define SCHAR_MAX 127 > - > #define WL1273_FR_EVENT BIT(0) > #define WL1273_BL_EVENT BIT(1) > #define WL1273_RDS_EVENT BIT(2) > diff --git a/include/vdso/limits.h b/include/vdso/limits.h > index 0197888ad0e00b2f853d3f25ffa764f61cca7385..0cad0a2490e5efc194d874025eb3e3b846a5c7b4 100644 > --- a/include/vdso/limits.h > +++ b/include/vdso/limits.h > @@ -2,6 +2,9 @@ > #ifndef __VDSO_LIMITS_H > #define __VDSO_LIMITS_H > > +#define UCHAR_MAX ((unsigned char)~0U) > +#define SCHAR_MAX ((signed char)(UCHAR_MAX >> 1)) > +#define SCHAR_MIN ((signed char)(-SCHAR_MAX - 1)) > #define USHRT_MAX ((unsigned short)~0U) > #define SHRT_MAX ((short)(USHRT_MAX >> 1)) > #define SHRT_MIN ((short)(-SHRT_MAX - 1)) It looks like you're going to have to redo these patches anyway for various reasons. Could you pull the U/SCHAR_MAX changes out into a separate patch? > diff --git a/lib/vsprintf.c b/lib/vsprintf.c > index 40f560959b169b4c4ac6154d658cfe76cfd0c5a6..8caccdcda0a2b470cda70c9b3837de37207eb512 100644 > --- a/lib/vsprintf.c > +++ b/lib/vsprintf.c > @@ -59,7 +59,7 @@ > bool no_hash_pointers __ro_after_init; > EXPORT_SYMBOL_GPL(no_hash_pointers); > > -static noinline unsigned long long simple_strntoull(const char *startp, size_t max_chars, char **endp, unsigned int base) > +static noinline unsigned long long simple_strntoull(const char *startp, size_t max_chars, char **endp, unsigned int base, bool *overflow) > { > const char *cp; > unsigned long long result = 0ULL; > @@ -71,6 +71,8 @@ static noinline unsigned long long simple_strntoull(const char *startp, size_t m > if (prefix_chars < max_chars) { > rv = _parse_integer_limit(cp, base, &result, max_chars - prefix_chars); > /* FIXME */ It's not clear what this FIXME is for, but probably it should go next to the cp += (rv & ~KSTRTOX_OVERFLOW); line? Does anyone know what it means? Maybe just delete it. > + if (overflow) > + *overflow = !!(rv & KSTRTOX_OVERFLOW); > cp += (rv & ~KSTRTOX_OVERFLOW); > } else { *overflow isn't initialized on the else path. > /* Field too short for prefix + digit, skip over without converting */ > @@ -94,7 +96,7 @@ static noinline unsigned long long simple_strntoull(const char *startp, size_t m > noinline > unsigned long long simple_strtoull(const char *cp, char **endp, unsigned int base) > { > - return simple_strntoull(cp, INT_MAX, endp, base); > + return simple_strntoull(cp, INT_MAX, endp, base, NULL); > } > EXPORT_SYMBOL(simple_strtoull); > > @@ -130,18 +132,22 @@ long simple_strtol(const char *cp, char **endp, unsigned int base) > EXPORT_SYMBOL(simple_strtol); > > static long long simple_strntoll(const char *cp, size_t max_chars, char **endp, > - unsigned int base) > + unsigned int base, bool *overflow) > { > + unsigned long long minand; > + bool negate; > + > /* > * simple_strntoull() safely handles receiving max_chars==0 in the > * case cp[0] == '-' && max_chars == 1. > * If max_chars == 0 we can drop through and pass it to simple_strntoull() > * and the content of *cp is irrelevant. > */ > - if (*cp == '-' && max_chars > 0) > - return -simple_strntoull(cp + 1, max_chars - 1, endp, base); > - > - return simple_strntoull(cp, max_chars, endp, base); > + negate = *cp == '-' && max_chars > 0; > + minand = simple_strntoull(cp + negate, max_chars - negate, endp, base, overflow); > + if (minand > (unsigned long long)LONG_MAX + negate) > + *overflow = true; > + return negate ? -minand : minand; > } > > /** > @@ -3441,7 +3447,7 @@ int vsscanf(const char *buf, const char *fmt, va_list args) > unsigned long long u; > } val; > s16 field_width; > - bool is_sign; > + bool is_sign, overflow, allow_overflow; > > while (*fmt) { > /* skip any white space in format */ > @@ -3464,6 +3470,9 @@ int vsscanf(const char *buf, const char *fmt, va_list args) > break; > ++fmt; > > + allow_overflow = *fmt == '!'; > + fmt += (int)allow_overflow; > + > /* skip this conversion. > * advance both strings to next white space > */ > @@ -3649,45 +3658,80 @@ int vsscanf(const char *buf, const char *fmt, va_list args) > if (is_sign) > val.s = simple_strntoll(str, > field_width >= 0 ? field_width : INT_MAX, > - &next, base); > + &next, base, &overflow); > else > val.u = simple_strntoull(str, > field_width >= 0 ? field_width : INT_MAX, > - &next, base); > + &next, base, &overflow); > + if (unlikely(overflow && !allow_overflow)) So that means that *overflow can be uninitialized here. > + break; > > switch (qualifier) { regards, dan carpenter From xen-devel-bounces@lists.xenproject.org Sat Jun 10 20:30:11 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sat, 10 Jun 2023 20:30:11 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546611.853607 (Exim 4.92) (envelope-from ) id 1q85Dk-0007TF-GZ; Sat, 10 Jun 2023 20:30:00 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546611.853607; Sat, 10 Jun 2023 20:30:00 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q85Dk-0007T8-Dm; Sat, 10 Jun 2023 20:30:00 +0000 Received: by outflank-mailman (input) for mailman id 546611; Sat, 10 Jun 2023 20:29:59 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q85Dj-0007Sy-DR; Sat, 10 Jun 2023 20:29:59 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q85Dj-0006dg-55; Sat, 10 Jun 2023 20:29:59 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q85Di-0000VT-OE; Sat, 10 Jun 2023 20:29:58 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q85Di-0002ve-Ni; Sat, 10 Jun 2023 20:29:58 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=gZiXh+GvMuDo1FKt5r4HlfZDadNwys5ZwDmrXgxSkHA=; b=vi+GuIXtd75S20kT0Lk7JAvHKf WGP3g60Y2+s3RNYin0xiqEs5Ddp41Jd8NxE5OjEpxe3izcsUJVT5zqXf1lOt8AFGPm7eydrvni7UH OwTnaC/NBxUIv8wN0OEt8falEbQ2kVAZLaRVczX8bM3Hkq0VD7AVLbm8QJ2GjZnJvZ+w=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [linux-linus test] 181359: regressions - FAIL X-Osstest-Failures: linux-linus:test-armhf-armhf-xl-credit1:xen-boot:fail:regression linux-linus:test-arm64-arm64-xl-vhd:xen-boot:fail:heisenbug linux-linus:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking linux-linus:test-armhf-armhf-examine:reboot:fail:nonblocking linux-linus:test-armhf-armhf-xl-multivcpu:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking linux-linus:test-armhf-armhf-xl-credit2:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking linux-linus:test-armhf-armhf-libvirt:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-arndale:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-raw:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-qcow2:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-vhd:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-rtds:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-raw:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-qcow2:migrate-support-check:fail:nonblocking X-Osstest-Versions-This: linux=64569520920a3ca5d456ddd9f4f95fc6ea9b8b45 X-Osstest-Versions-That: linux=6c538e1adbfc696ac4747fb10d63e704344f763d From: osstest service owner Date: Sat, 10 Jun 2023 20:29:58 +0000 flight 181359 linux-linus real [real] flight 181370 linux-linus real-retest [real] http://logs.test-lab.xenproject.org/osstest/logs/181359/ http://logs.test-lab.xenproject.org/osstest/logs/181370/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: test-armhf-armhf-xl-credit1 8 xen-boot fail REGR. vs. 180278 Tests which are failing intermittently (not blocking): test-arm64-arm64-xl-vhd 8 xen-boot fail pass in 181370-retest Tests which did not succeed, but are not blocking: test-arm64-arm64-xl-vhd 14 migrate-support-check fail in 181370 never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail in 181370 never pass test-armhf-armhf-examine 8 reboot fail like 180278 test-armhf-armhf-xl-multivcpu 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 180278 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 180278 test-armhf-armhf-xl-credit2 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 180278 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 180278 test-armhf-armhf-libvirt 8 xen-boot fail like 180278 test-armhf-armhf-xl-arndale 8 xen-boot fail like 180278 test-armhf-armhf-libvirt-raw 8 xen-boot fail like 180278 test-armhf-armhf-libvirt-qcow2 8 xen-boot fail like 180278 test-armhf-armhf-xl 8 xen-boot fail like 180278 test-armhf-armhf-xl-vhd 8 xen-boot fail like 180278 test-armhf-armhf-xl-rtds 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 180278 test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qcow2 14 migrate-support-check fail never pass version targeted for testing: linux 64569520920a3ca5d456ddd9f4f95fc6ea9b8b45 baseline version: linux 6c538e1adbfc696ac4747fb10d63e704344f763d Last test of basis 180278 2023-04-16 19:41:46 Z 55 days Failing since 180281 2023-04-17 06:24:36 Z 54 days 102 attempts Testing same since 181359 2023-06-10 04:58:32 Z 0 days 1 attempts ------------------------------------------------------------ 2677 people touched revisions under test, not listing them all jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl fail test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-freebsd11-amd64 pass test-amd64-amd64-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale fail test-amd64-amd64-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 fail test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 fail test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine fail test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt fail test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu fail test-amd64-amd64-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-amd64-pygrub pass test-amd64-amd64-libvirt-qcow2 pass test-armhf-armhf-libvirt-qcow2 fail test-amd64-amd64-libvirt-raw pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw fail test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds fail test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-amd64-xl-vhd pass test-arm64-arm64-xl-vhd fail test-armhf-armhf-xl-vhd fail ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 338736 lines long.) From xen-devel-bounces@lists.xenproject.org Sat Jun 10 20:41:12 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sat, 10 Jun 2023 20:41:12 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546621.853628 (Exim 4.92) (envelope-from ) id 1q85OZ-0001jk-TK; Sat, 10 Jun 2023 20:41:11 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546621.853628; Sat, 10 Jun 2023 20:41:11 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q85OZ-0001jb-Q2; Sat, 10 Jun 2023 20:41:11 +0000 Received: by outflank-mailman (input) for mailman id 546621; Sat, 10 Jun 2023 20:41:10 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q85OY-0001iX-Jk for xen-devel@lists.xenproject.org; Sat, 10 Jun 2023 20:41:10 +0000 Received: from wout5-smtp.messagingengine.com (wout5-smtp.messagingengine.com [64.147.123.21]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 1a742483-07cf-11ee-8611-37d641c3527e; Sat, 10 Jun 2023 22:40:59 +0200 (CEST) Received: from compute5.internal (compute5.nyi.internal [10.202.2.45]) by mailout.west.internal (Postfix) with ESMTP id F2F45320015C; Sat, 10 Jun 2023 16:40:55 -0400 (EDT) Received: from mailfrontend2 ([10.202.2.163]) by compute5.internal (MEProxy); Sat, 10 Jun 2023 16:40:57 -0400 Received: by mail.messagingengine.com (Postfix) with ESMTPA; Sat, 10 Jun 2023 16:40:53 -0400 (EDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 1a742483-07cf-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= invisiblethingslab.com; h=cc:cc:content-transfer-encoding :content-type:date:date:from:from:in-reply-to:in-reply-to :message-id:mime-version:references:reply-to:sender:subject :subject:to:to; s=fm1; t=1686429655; x=1686516055; bh=V+EHzWmaeU zDQWNrC4qnlElG9+D76Sy2HHVrlQcCXrQ=; b=LsX/QsFDMQwtTDnF9GM61MiD2E Ke4SVMHveckFVfAOnS15feqiFtdmBNCNysynBbSSDfNfO+oIY1ncOWx/kEhPM5Je vcHXUudHa1Vtz1JGTOzFGcXL6oFiR3AFnbu3mXq/QRYdlUHR5dwYCBKwDbqErYMA bYwWWKfCXoiUYgmsErDNCOcqzFoBJ7HR/2lDVS1e/xFiIx5nxIPNmwT2x4Nk7x3Z PNDQkLZGU4ptcjTPqSuX33UZcUtVQsmcI1ZZ9HbX3CZTM9x0opNuDNUvWqSq7nRl hBx+vAr4o4WxYIHqFqjPUpb6pR4jOUeYqRWPjyCBR7I7jW1e7wJo07iVLvhg== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-transfer-encoding :content-type:date:date:feedback-id:feedback-id:from:from :in-reply-to:in-reply-to:message-id:mime-version:references :reply-to:sender:subject:subject:to:to:x-me-proxy:x-me-proxy :x-me-sender:x-me-sender:x-sasl-enc; s=fm1; t=1686429655; x= 1686516055; bh=V+EHzWmaeUzDQWNrC4qnlElG9+D76Sy2HHVrlQcCXrQ=; b=i v9YkUoEGZ9tVeBpBZ9yCK9uhLYBpxUOB/Rwtys3LFZRwKm3f7Fndw1d0P8hauvp4 hb9IlGlJuBykt8wD7SG1LfAHo6QBjjt8MMzFuZii+n4OqcW1Vic+FwaoICQeldC6 Fr3jlcR4WtzSvt3Od5nwOp3UcRMObDaj4Wkhz32LRM45pPvgLyf7E0/n7DaFd7Yy QKWJagpr4SkDfWkDHSx/HTo6KJAmcAgWSH4V2l1tlqxqau92UMQICcz5DqwmyQic IxPrFTZGlHX41/rMy1+ReyIuSBNwQwAD6rqFRBkPB+qjeog2NG0x6+Z4f3WlU3Sh /jYFw9vNa/i8ldC+8LVbQ== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvhedrgedutddgudehhecutefuodetggdotefrod ftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfgh necuuegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmd enucfjughrpefhvfevufffkffojghfggfgsedtkeertdertddtnecuhfhrohhmpeffvghm ihcuofgrrhhivgcuqfgsvghnohhurhcuoeguvghmihesihhnvhhishhisghlvghthhhinh hgshhlrggsrdgtohhmqeenucggtffrrghtthgvrhhnpeejffejgffgueegudevvdejkefg hefghffhffejteekleeufeffteffhfdtudehteenucevlhhushhtvghrufhiiigvpedtne curfgrrhgrmhepmhgrihhlfhhrohhmpeguvghmihesihhnvhhishhisghlvghthhhinhhg shhlrggsrdgtohhm X-ME-Proxy: Feedback-ID: iac594737:Fastmail From: Demi Marie Obenour To: Hans de Goede , Mauro Carvalho Chehab , Sakari Ailus , Greg Kroah-Hartman , Juergen Gross , Stefano Stabellini , Oleksandr Tyshchenko , Lee Jones , Andy Lutomirski , Thomas Gleixner , Vincenzo Frascino , Petr Mladek , Steven Rostedt , Sergey Senozhatsky , Andy Shevchenko , Rasmus Villemoes Cc: Demi Marie Obenour , linux-media@vger.kernel.org, linux-staging@lists.linux.dev, linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org Subject: [PATCH v3 1/4] limits.h: add UCHAR_MAX, SCHAR_MAX, and SCHAR_MIN Date: Sat, 10 Jun 2023 16:40:41 -0400 Message-Id: <20230610204044.3653-2-demi@invisiblethingslab.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230610204044.3653-1-demi@invisiblethingslab.com> References: <20230610204044.3653-1-demi@invisiblethingslab.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Some drivers already defined these, and they will be used by sscanf() for overflow checks later. Also add SSIZE_MIN to limits.h, which will also be needed later. Signed-off-by: Demi Marie Obenour --- .../media/atomisp/pci/hive_isp_css_include/platform_support.h | 1 - include/linux/limits.h | 1 + include/linux/mfd/wl1273-core.h | 3 --- include/vdso/limits.h | 3 +++ 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/drivers/staging/media/atomisp/pci/hive_isp_css_include/platform_support.h b/drivers/staging/media/atomisp/pci/hive_isp_css_include/platform_support.h index 0cdef4a5e8b1bed9884133f1a0b9d853d59d43a4..e29b96d8bebf14839f6dd48fdc6c0f8b029ef31d 100644 --- a/drivers/staging/media/atomisp/pci/hive_isp_css_include/platform_support.h +++ b/drivers/staging/media/atomisp/pci/hive_isp_css_include/platform_support.h @@ -27,7 +27,6 @@ #define UINT16_MAX USHRT_MAX #define UINT32_MAX UINT_MAX -#define UCHAR_MAX (255) #define CSS_ALIGN(d, a) d __attribute__((aligned(a))) diff --git a/include/linux/limits.h b/include/linux/limits.h index f6bcc936901071f496e3e85bb6e1d93905b12e32..8f7fd85b41fb46e6992d9e5912da00424119227a 100644 --- a/include/linux/limits.h +++ b/include/linux/limits.h @@ -8,6 +8,7 @@ #define SIZE_MAX (~(size_t)0) #define SSIZE_MAX ((ssize_t)(SIZE_MAX >> 1)) +#define SSIZE_MIN (-SSIZE_MAX - 1) #define PHYS_ADDR_MAX (~(phys_addr_t)0) #define U8_MAX ((u8)~0U) diff --git a/include/linux/mfd/wl1273-core.h b/include/linux/mfd/wl1273-core.h index c28cf76d5c31ee1c94a9319a2e2d318bf00283a6..b81a229135ed9f756c749122a8341816031c8311 100644 --- a/include/linux/mfd/wl1273-core.h +++ b/include/linux/mfd/wl1273-core.h @@ -204,9 +204,6 @@ WL1273_IS2_TRI_OPT | \ WL1273_IS2_RATE_48K) -#define SCHAR_MIN (-128) -#define SCHAR_MAX 127 - #define WL1273_FR_EVENT BIT(0) #define WL1273_BL_EVENT BIT(1) #define WL1273_RDS_EVENT BIT(2) diff --git a/include/vdso/limits.h b/include/vdso/limits.h index 0197888ad0e00b2f853d3f25ffa764f61cca7385..0cad0a2490e5efc194d874025eb3e3b846a5c7b4 100644 --- a/include/vdso/limits.h +++ b/include/vdso/limits.h @@ -2,6 +2,9 @@ #ifndef __VDSO_LIMITS_H #define __VDSO_LIMITS_H +#define UCHAR_MAX ((unsigned char)~0U) +#define SCHAR_MAX ((signed char)(UCHAR_MAX >> 1)) +#define SCHAR_MIN ((signed char)(-SCHAR_MAX - 1)) #define USHRT_MAX ((unsigned short)~0U) #define SHRT_MAX ((short)(USHRT_MAX >> 1)) #define SHRT_MIN ((short)(-SHRT_MAX - 1)) -- Sincerely, Demi Marie Obenour (she/her/hers) Invisible Things Lab From xen-devel-bounces@lists.xenproject.org Sat Jun 10 20:41:12 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sat, 10 Jun 2023 20:41:12 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546620.853617 (Exim 4.92) (envelope-from ) id 1q85OL-0001RL-LT; Sat, 10 Jun 2023 20:40:57 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546620.853617; Sat, 10 Jun 2023 20:40:57 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q85OL-0001RE-Ij; Sat, 10 Jun 2023 20:40:57 +0000 Received: by outflank-mailman (input) for mailman id 546620; Sat, 10 Jun 2023 20:40:56 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q85OK-0001R8-Ix for xen-devel@lists.xenproject.org; Sat, 10 Jun 2023 20:40:56 +0000 Received: from wout5-smtp.messagingengine.com (wout5-smtp.messagingengine.com [64.147.123.21]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 1726e3db-07cf-11ee-b232-6b7b168915f2; Sat, 10 Jun 2023 22:40:54 +0200 (CEST) Received: from compute1.internal (compute1.nyi.internal [10.202.2.41]) by mailout.west.internal (Postfix) with ESMTP id 462AD320005D; Sat, 10 Jun 2023 16:40:49 -0400 (EDT) Received: from mailfrontend2 ([10.202.2.163]) by compute1.internal (MEProxy); Sat, 10 Jun 2023 16:40:50 -0400 Received: by mail.messagingengine.com (Postfix) with ESMTPA; Sat, 10 Jun 2023 16:40:47 -0400 (EDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 1726e3db-07cf-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= invisiblethingslab.com; h=cc:cc:content-transfer-encoding :content-type:content-type:date:date:from:from:in-reply-to :message-id:mime-version:reply-to:sender:subject:subject:to:to; s=fm1; t=1686429648; x=1686516048; bh=SKMdRs57+W2fpRqekdSA2J6KD xjMwUiujtGE7TR4ltw=; b=iWSZtvr/wOJi0wlhO3pBcPbc+O5csKxNy6ZbBr6/z sQuqXbv5mfP0nj9uydkrJEq4GNZ+AxtBqM/XymTVq27Kdibbg/owykCcv2gYWewB feBmyp1jWsd3nkXfusn5kg4Xcmp7M1BAqpaymmOe0MTJOXGLXXfz8FKTYc7oheOo taQ5XDo0EIWBmHvd2CA6OjrxBqSEmPjU8JyPzREcdXBZZl5R+aMRBDRgAAmSdgEs YyZz/bo/SvXLUYg7leX96R0SxnuazEe6FFgvF0ebzXF7zl0Z76fjkKbKW7H2La7k GR5HBBfHmKEb92JHZAvTA97AUpglt5ii8fyEJMOOyKakw== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-transfer-encoding :content-type:content-type:date:date:feedback-id:feedback-id :from:from:in-reply-to:message-id:mime-version:reply-to:sender :subject:subject:to:to:x-me-proxy:x-me-proxy:x-me-sender :x-me-sender:x-sasl-enc; s=fm1; t=1686429648; x=1686516048; bh=S KMdRs57+W2fpRqekdSA2J6KDxjMwUiujtGE7TR4ltw=; b=fXqsplFSR3vCtQ1Du ZRvZCdC67ZvOFOo8dxrJS/LitSkCOqrS2Bwb1GD+RXO8dpwBNlP+aizdvyTmHkGA Wwu4ydoBuAEptGbMW9mpArx5tJ6fw3m50wSk0TpwHmjQe5AylLx13Ywah7pBMjm6 sdIuyg1FU6djI3vFdK2FnC9l9FpYyDltVZKzdT13Lcg9Nzp0mtnjIHBIAxDB9wLq vNuZjUyY0GB4WOr+WfZ5UAyajb5FuLWLmDlHpnDUScGqFu6yTw0r5+KW15MJxRNy 49Ns03EpS3wS59qnR3WdZaTF6CTsIM0nMlfTHM1flevecgOkEhQ+XrGUmLBzLskm bt+tg== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvhedrgedutddgudehhecutefuodetggdotefrod ftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfgh necuuegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmd enucfjughrpefhvfevufffkffogggtgfesthekredtredtjeenucfhrhhomhepffgvmhhi ucforghrihgvucfqsggvnhhouhhruceouggvmhhisehinhhvihhsihgslhgvthhhihhngh hslhgrsgdrtghomheqnecuggftrfgrthhtvghrnhephfeggfeiiedtieejgedutdekgfet geehheegteekvefhfefgudehtdevleegueegnecuvehluhhsthgvrhfuihiivgeptdenuc frrghrrghmpehmrghilhhfrhhomhepuggvmhhisehinhhvihhsihgslhgvthhhihhnghhs lhgrsgdrtghomh X-ME-Proxy: Feedback-ID: iac594737:Fastmail From: Demi Marie Obenour To: Hans de Goede , Mauro Carvalho Chehab , Sakari Ailus , Greg Kroah-Hartman , Juergen Gross , Stefano Stabellini , Oleksandr Tyshchenko , Lee Jones , Andy Lutomirski , Thomas Gleixner , Vincenzo Frascino , Petr Mladek , Steven Rostedt , Sergey Senozhatsky , Andy Shevchenko , Rasmus Villemoes Cc: Demi Marie Obenour , linux-media@vger.kernel.org, linux-staging@lists.linux.dev, linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org Subject: [PATCH v3 0/4] Make sscanf() stricter Date: Sat, 10 Jun 2023 16:40:40 -0400 Message-Id: <20230610204044.3653-1-demi@invisiblethingslab.com> X-Mailer: git-send-email 2.40.1 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Roger Pau Monné suggested making xenbus_scanf() stricter instead of using a custom parser. Christoph Hellwig asked why the normal vsscanf() cannot be made stricter. Richard Weinberger mentioned Linus Torvalds’s suggestion of using ! to allow overflow. Changes since v2: - Better commit messages. - Fix a compile error in simple_strtoll() (found by 0day bot). - Fix an uninitialized variable (found by Dan Carpenter). Changes since v1: - Better commit messages. - Use ! to explicitly opt-in to allowing overflow. - Treat overflow as a conversion failure instead of returning ERANGE. - Drop the first patch (removal of simple_strtoll()) as it breaks bcache. - Stop skipping spaces in vsscanf() instead of adding a separate vsscanf_strict() function. Demi Marie Obenour (4): limits.h: add UCHAR_MAX, SCHAR_MAX, and SCHAR_MIN vsscanf(): Integer overflow is a conversion failure vsscanf(): do not skip spaces Reject NUL bytes in xenstore nodes .../hive_isp_css_include/platform_support.h | 1 - drivers/xen/xenbus/xenbus_xs.c | 17 +++- include/linux/limits.h | 1 + include/linux/mfd/wl1273-core.h | 3 - include/vdso/limits.h | 3 + lib/vsprintf.c | 98 +++++++++++++------ 6 files changed, 86 insertions(+), 37 deletions(-) -- Sincerely, Demi Marie Obenour (she/her/hers) Invisible Things Lab From xen-devel-bounces@lists.xenproject.org Sat Jun 10 20:41:12 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sat, 10 Jun 2023 20:41:12 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546622.853633 (Exim 4.92) (envelope-from ) id 1q85Oa-0001nG-6W; Sat, 10 Jun 2023 20:41:12 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546622.853633; Sat, 10 Jun 2023 20:41:12 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q85Oa-0001mY-1K; Sat, 10 Jun 2023 20:41:12 +0000 Received: by outflank-mailman (input) for mailman id 546622; Sat, 10 Jun 2023 20:41:10 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q85OY-0001iX-Qk for xen-devel@lists.xenproject.org; Sat, 10 Jun 2023 20:41:10 +0000 Received: from wout5-smtp.messagingengine.com (wout5-smtp.messagingengine.com [64.147.123.21]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 1d225b57-07cf-11ee-8611-37d641c3527e; Sat, 10 Jun 2023 22:41:03 +0200 (CEST) Received: from compute6.internal (compute6.nyi.internal [10.202.2.47]) by mailout.west.internal (Postfix) with ESMTP id 63B4D32002FB; Sat, 10 Jun 2023 16:41:00 -0400 (EDT) Received: from mailfrontend2 ([10.202.2.163]) by compute6.internal (MEProxy); Sat, 10 Jun 2023 16:41:02 -0400 Received: by mail.messagingengine.com (Postfix) with ESMTPA; Sat, 10 Jun 2023 16:40:58 -0400 (EDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 1d225b57-07cf-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= invisiblethingslab.com; h=cc:cc:content-transfer-encoding :content-type:date:date:from:from:in-reply-to:in-reply-to :message-id:mime-version:references:reply-to:sender:subject :subject:to:to; s=fm1; t=1686429660; x=1686516060; bh=tkhWvOlsbY MyYMCWf0V3VF+4w52gXb91yX2wRN70iV0=; b=Lh/og//xp/BCWCig7r4f2A8SUF 3oarkTM30JMoLkzLi0xdKUUMJQ9KDDuZZ38ZrwY55FU/1d/kZ4i44GPb2LDf5XKO q0YFjjoLoFZ5eOa1U/bMhHdBEXjPdsetVPNzkv3h2SdrDBclUsqQNUk/ozRpCkVg fUU3a05AhzC87RgtuRWJJRnX5RMSBwFBadBbIRwxDWWs20xgbfETGTa487+7+c4u lG4L6+ZwfW1sQC0v09gJfz962OIDZWjnUcHygReTt0MMFNVd7KdQD1hQSCN1EzR2 Mu8Bzdmfq7u8SPi37xpSAYUVhlqr6HmNmAQvC7rwG3QiN27F2o2lh6ur3Q0w== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-transfer-encoding :content-type:date:date:feedback-id:feedback-id:from:from :in-reply-to:in-reply-to:message-id:mime-version:references :reply-to:sender:subject:subject:to:to:x-me-proxy:x-me-proxy :x-me-sender:x-me-sender:x-sasl-enc; s=fm1; t=1686429660; x= 1686516060; bh=tkhWvOlsbYMyYMCWf0V3VF+4w52gXb91yX2wRN70iV0=; b=J nX9TWIoRt1Ec8P0vvvS+PPT1A30VmkPvpi61/EUuGHHRCUwU0Pd8wtmePd9PepF0 W+VEwi+aB4nIgGQosPaz9tLnM/huWPoiDHuFORHAX+jnU2cwH4Z57JSkN+fu8qzV Q04OOp5k7nOdONfuk+X/TwB31DnqyluTSEIEjnauFz0ID3vD0U64DhFfotPRWUog 9p+GZM5ZgP9WdjLKvEdeHqUK7mx0S8ISiwB0aTSAamPTHH/GeOL4zLmT6ZkzjvVO vh8HP/ffbcTAS10FLO1GojIncdaRRNnAXpVwoUBgN6DqwAnMVc0qQ7mDwFilHtlx gmDTB8dInguobLCDLIXBg== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvhedrgedutddgudehhecutefuodetggdotefrod ftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfgh necuuegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmd enucfjughrpefhvfevufffkffojghfggfgsedtkeertdertddtnecuhfhrohhmpeffvghm ihcuofgrrhhivgcuqfgsvghnohhurhcuoeguvghmihesihhnvhhishhisghlvghthhhinh hgshhlrggsrdgtohhmqeenucggtffrrghtthgvrhhnpeejffejgffgueegudevvdejkefg hefghffhffejteekleeufeffteffhfdtudehteenucevlhhushhtvghrufhiiigvpedtne curfgrrhgrmhepmhgrihhlfhhrohhmpeguvghmihesihhnvhhishhisghlvghthhhinhhg shhlrggsrdgtohhm X-ME-Proxy: Feedback-ID: iac594737:Fastmail From: Demi Marie Obenour To: Hans de Goede , Mauro Carvalho Chehab , Sakari Ailus , Greg Kroah-Hartman , Juergen Gross , Stefano Stabellini , Oleksandr Tyshchenko , Lee Jones , Andy Lutomirski , Thomas Gleixner , Vincenzo Frascino , Petr Mladek , Steven Rostedt , Sergey Senozhatsky , Andy Shevchenko , Rasmus Villemoes Cc: Demi Marie Obenour , linux-media@vger.kernel.org, linux-staging@lists.linux.dev, linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org, Linus Torvalds Subject: [PATCH v3 2/4] vsscanf(): Integer overflow is a conversion failure Date: Sat, 10 Jun 2023 16:40:42 -0400 Message-Id: <20230610204044.3653-3-demi@invisiblethingslab.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230610204044.3653-1-demi@invisiblethingslab.com> References: <20230610204044.3653-1-demi@invisiblethingslab.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit sscanf() and friends currently ignore integer overflow, but this is a bad idea. It is much better to detect integer overflow errors and consider this a conversion failure. This implements Linus's suggestion of using '!' to treat integer overflow as wrapping. It does _not_ allow wrapping of unsigned conversions by default, though, as in at least some cases accepting negative numbers is _not_ intended. Suggested-By: Linus Torvalds Signed-off-by: Demi Marie Obenour --- lib/vsprintf.c | 90 ++++++++++++++++++++++++++++++++++++++------------ 1 file changed, 69 insertions(+), 21 deletions(-) diff --git a/lib/vsprintf.c b/lib/vsprintf.c index 40f560959b169b4c4ac6154d658cfe76cfd0c5a6..9e53355c35b1d6260631868228ede1d178fe3325 100644 --- a/lib/vsprintf.c +++ b/lib/vsprintf.c @@ -59,7 +59,7 @@ bool no_hash_pointers __ro_after_init; EXPORT_SYMBOL_GPL(no_hash_pointers); -static noinline unsigned long long simple_strntoull(const char *startp, size_t max_chars, char **endp, unsigned int base) +static noinline unsigned long long simple_strntoull(const char *startp, size_t max_chars, char **endp, unsigned int base, bool *overflow) { const char *cp; unsigned long long result = 0ULL; @@ -70,11 +70,13 @@ static noinline unsigned long long simple_strntoull(const char *startp, size_t m prefix_chars = cp - startp; if (prefix_chars < max_chars) { rv = _parse_integer_limit(cp, base, &result, max_chars - prefix_chars); - /* FIXME */ + *overflow = !!(rv & KSTRTOX_OVERFLOW); cp += (rv & ~KSTRTOX_OVERFLOW); } else { /* Field too short for prefix + digit, skip over without converting */ cp = startp + max_chars; + /* Treat this as a conversion failure */ + *overflow = true; } if (endp) @@ -94,7 +96,9 @@ static noinline unsigned long long simple_strntoull(const char *startp, size_t m noinline unsigned long long simple_strtoull(const char *cp, char **endp, unsigned int base) { - return simple_strntoull(cp, INT_MAX, endp, base); + bool _placeholder; + + return simple_strntoull(cp, INT_MAX, endp, base, &_placeholder); } EXPORT_SYMBOL(simple_strtoull); @@ -130,18 +134,22 @@ long simple_strtol(const char *cp, char **endp, unsigned int base) EXPORT_SYMBOL(simple_strtol); static long long simple_strntoll(const char *cp, size_t max_chars, char **endp, - unsigned int base) + unsigned int base, bool *overflow) { + unsigned long long minand; + bool negate; + /* * simple_strntoull() safely handles receiving max_chars==0 in the * case cp[0] == '-' && max_chars == 1. * If max_chars == 0 we can drop through and pass it to simple_strntoull() * and the content of *cp is irrelevant. */ - if (*cp == '-' && max_chars > 0) - return -simple_strntoull(cp + 1, max_chars - 1, endp, base); - - return simple_strntoull(cp, max_chars, endp, base); + negate = *cp == '-' && max_chars > 0; + minand = simple_strntoull(cp + negate, max_chars - negate, endp, base, overflow); + if (minand > (unsigned long long)LONG_MAX + negate) + *overflow = true; + return negate ? -minand : minand; } /** @@ -154,7 +162,9 @@ static long long simple_strntoll(const char *cp, size_t max_chars, char **endp, */ long long simple_strtoll(const char *cp, char **endp, unsigned int base) { - return simple_strntoll(cp, INT_MAX, endp, base); + bool _placeholder; + + return simple_strntoll(cp, INT_MAX, endp, base, &_placeholder); } EXPORT_SYMBOL(simple_strtoll); @@ -3441,7 +3451,7 @@ int vsscanf(const char *buf, const char *fmt, va_list args) unsigned long long u; } val; s16 field_width; - bool is_sign; + bool is_sign, overflow, allow_overflow; while (*fmt) { /* skip any white space in format */ @@ -3464,6 +3474,9 @@ int vsscanf(const char *buf, const char *fmt, va_list args) break; ++fmt; + allow_overflow = *fmt == '!'; + fmt += (int)allow_overflow; + /* skip this conversion. * advance both strings to next white space */ @@ -3649,45 +3662,80 @@ int vsscanf(const char *buf, const char *fmt, va_list args) if (is_sign) val.s = simple_strntoll(str, field_width >= 0 ? field_width : INT_MAX, - &next, base); + &next, base, &overflow); else val.u = simple_strntoull(str, field_width >= 0 ? field_width : INT_MAX, - &next, base); + &next, base, &overflow); + if (unlikely(overflow) && !allow_overflow) + break; switch (qualifier) { case 'H': /* that's 'hh' in format */ - if (is_sign) + if (is_sign) { + if (unlikely(val.s < SCHAR_MIN || val.s > SCHAR_MAX) && + !allow_overflow) + return num; *va_arg(args, signed char *) = val.s; - else + } else { + if (unlikely(val.u > UCHAR_MAX) && !allow_overflow) + return num; *va_arg(args, unsigned char *) = val.u; + } break; case 'h': - if (is_sign) + if (is_sign) { + if (unlikely(val.s < SHRT_MIN || val.s > SHRT_MAX) && + !allow_overflow) + return num; *va_arg(args, short *) = val.s; - else + } else { + if (unlikely(val.u > USHRT_MAX) && !allow_overflow) + return num; *va_arg(args, unsigned short *) = val.u; + } break; case 'l': - if (is_sign) + if (is_sign) { + if (unlikely(val.s < LONG_MIN || val.s > LONG_MAX) && + !allow_overflow) + return num; *va_arg(args, long *) = val.s; - else + } else { + if (unlikely(val.u > ULONG_MAX) && !allow_overflow) + return num; *va_arg(args, unsigned long *) = val.u; + } break; case 'L': + /* No overflow check needed */ if (is_sign) *va_arg(args, long long *) = val.s; else *va_arg(args, unsigned long long *) = val.u; break; case 'z': - *va_arg(args, size_t *) = val.u; + if (is_sign) { + if (unlikely(val.s < SSIZE_MIN || val.s > SSIZE_MAX)) + return num; + *va_arg(args, ssize_t *) = val.s; + } else { + if (unlikely(val.u > SIZE_MAX) && !allow_overflow) + return num; + *va_arg(args, size_t *) = val.u; + } break; default: - if (is_sign) + if (is_sign) { + if (unlikely(val.s < INT_MIN || val.s > INT_MAX) && + !allow_overflow) + return num; *va_arg(args, int *) = val.s; - else + } else { + if (unlikely(val.u > UINT_MAX) && !allow_overflow) + return num; *va_arg(args, unsigned int *) = val.u; + } break; } num++; -- Sincerely, Demi Marie Obenour (she/her/hers) Invisible Things Lab From xen-devel-bounces@lists.xenproject.org Sat Jun 10 20:41:22 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sat, 10 Jun 2023 20:41:22 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546624.853648 (Exim 4.92) (envelope-from ) id 1q85Ok-0002RS-EK; Sat, 10 Jun 2023 20:41:22 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546624.853648; Sat, 10 Jun 2023 20:41:22 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q85Ok-0002RL-BY; Sat, 10 Jun 2023 20:41:22 +0000 Received: by outflank-mailman (input) for mailman id 546624; Sat, 10 Jun 2023 20:41:22 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q85Oj-0001R8-Vt for xen-devel@lists.xenproject.org; Sat, 10 Jun 2023 20:41:21 +0000 Received: from wout5-smtp.messagingengine.com (wout5-smtp.messagingengine.com [64.147.123.21]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 27b34702-07cf-11ee-b232-6b7b168915f2; Sat, 10 Jun 2023 22:41:21 +0200 (CEST) Received: from compute1.internal (compute1.nyi.internal [10.202.2.41]) by mailout.west.internal (Postfix) with ESMTP id 1EB553200406; Sat, 10 Jun 2023 16:41:18 -0400 (EDT) Received: from mailfrontend2 ([10.202.2.163]) by compute1.internal (MEProxy); Sat, 10 Jun 2023 16:41:19 -0400 Received: by mail.messagingengine.com (Postfix) with ESMTPA; Sat, 10 Jun 2023 16:41:16 -0400 (EDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 27b34702-07cf-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= invisiblethingslab.com; h=cc:cc:content-transfer-encoding :content-type:date:date:from:from:in-reply-to:in-reply-to :message-id:mime-version:references:reply-to:sender:subject :subject:to:to; s=fm1; t=1686429677; x=1686516077; bh=zmp6AIFl9e 0+GK3wpF6apHM7zkfOYrIi/BxUW3DBWhg=; b=XntlKjsZ5vDs46MOdTHeyZvitC BCBFcNS/FcjDeM4XTmVsTCGqKa9sKUIJGJiUpAMewiO6Plsxy3NVeFGBq8NGsvyU GmoJkr+GPhlevaRfzm4zjiJ08mvreC9A/De2b9rgogK/ImxMUZ+tJHDfol/yS0JY oyJcRP4oaJZsBnoYCeuKke1Vs53z97j0PgY+7WY0pIvTokA4oXghbVBdBd2H7jqA SnO5O6nFE6IxWxE82FkqwETAUDKyE7S9s2W+43S2zcLL7M/sYgX/0j4iH7Dn2AJD WYgthgHRztCWMpOsWFENQrdViXckE0dd6dTtn2+Yyzlgw/HGxm0feESXHAlQ== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-transfer-encoding :content-type:date:date:feedback-id:feedback-id:from:from :in-reply-to:in-reply-to:message-id:mime-version:references :reply-to:sender:subject:subject:to:to:x-me-proxy:x-me-proxy :x-me-sender:x-me-sender:x-sasl-enc; s=fm1; t=1686429677; x= 1686516077; bh=zmp6AIFl9e0+GK3wpF6apHM7zkfOYrIi/BxUW3DBWhg=; b=t 6bzJo1vxBIOrwPu0ry6yxCkK73ctnRvQQkcD14iOjwkykEWG1hVsXieiKE6k5NMo MvwbMUrFgySmNmuX99+3TZrYpJsSFglclvPh7wO7WVvxg69vgP3qdKR93ihj/9jB jLfH17ITpjrmIWan6f75YlQiAh8RePrGRDAtizZ+dIt0mZy+/jdNG4xoEyfTsM3D WlbGRbmJ+mTteuu4hoWczjdPd0U/JTe7vR4PcmqZHg+pKIe+Q824PocdJtNuIXvq THe/4dB4TnLuN5+5t/XxTtXSXXsB7rk2uxKJVjqObJYiZyAqQn96tu8km8ynSHYI Cg/oDgONfxx1lW5NjptVg== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvhedrgedutddgudehhecutefuodetggdotefrod ftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfgh necuuegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmd enucfjughrpefhvfevufffkffojghfggfgsedtkeertdertddtnecuhfhrohhmpeffvghm ihcuofgrrhhivgcuqfgsvghnohhurhcuoeguvghmihesihhnvhhishhisghlvghthhhinh hgshhlrggsrdgtohhmqeenucggtffrrghtthgvrhhnpeekveekveegudffgffgleekudeu keetlefgveelhfehuedtfedvgfeklefhtefgfeenucffohhmrghinhepkhgvrhhnvghlrd horhhgnecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhfrhhomhep uggvmhhisehinhhvihhsihgslhgvthhhihhnghhslhgrsgdrtghomh X-ME-Proxy: Feedback-ID: iac594737:Fastmail From: Demi Marie Obenour To: Hans de Goede , Mauro Carvalho Chehab , Sakari Ailus , Greg Kroah-Hartman , Juergen Gross , Stefano Stabellini , Oleksandr Tyshchenko , Lee Jones , Andy Lutomirski , Thomas Gleixner , Vincenzo Frascino , Petr Mladek , Steven Rostedt , Sergey Senozhatsky , Andy Shevchenko , Rasmus Villemoes Cc: Demi Marie Obenour , linux-media@vger.kernel.org, linux-staging@lists.linux.dev, linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org, Christoph Hellwig Subject: [PATCH v3 3/4] vsscanf(): do not skip spaces Date: Sat, 10 Jun 2023 16:40:43 -0400 Message-Id: <20230610204044.3653-4-demi@invisiblethingslab.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230610204044.3653-1-demi@invisiblethingslab.com> References: <20230610204044.3653-1-demi@invisiblethingslab.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Passing spaces before e.g. an integer is usually not intended. This was suggested by Christoph in https://lore.kernel.org/lkml/ZIQrohcizoj4bZWx@infradead.org/. Suggested-by: Christoph Hellwig Signed-off-by: Demi Marie Obenour --- lib/vsprintf.c | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) diff --git a/lib/vsprintf.c b/lib/vsprintf.c index 9e53355c35b1d6260631868228ede1d178fe3325..665f6197f8313d653f67d7886b12c43942e058dd 100644 --- a/lib/vsprintf.c +++ b/lib/vsprintf.c @@ -3551,8 +3551,6 @@ int vsscanf(const char *buf, const char *fmt, va_list args) char *s = (char *)va_arg(args, char *); if (field_width == -1) field_width = SHRT_MAX; - /* first, skip leading white space in buffer */ - str = skip_spaces(str); /* now copy until next white space */ while (*str && !isspace(*str) && field_width--) @@ -3639,11 +3637,7 @@ int vsscanf(const char *buf, const char *fmt, va_list args) return num; } - /* have some sort of integer conversion. - * first, skip white space in buffer. - */ - str = skip_spaces(str); - + /* have some sort of integer conversion. */ digit = *str; if (is_sign && digit == '-') { if (field_width == 1) -- Sincerely, Demi Marie Obenour (she/her/hers) Invisible Things Lab From xen-devel-bounces@lists.xenproject.org Sat Jun 10 20:41:30 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sat, 10 Jun 2023 20:41:30 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546628.853658 (Exim 4.92) (envelope-from ) id 1q85Or-0002wu-RO; Sat, 10 Jun 2023 20:41:29 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546628.853658; Sat, 10 Jun 2023 20:41:29 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q85Or-0002wk-OE; Sat, 10 Jun 2023 20:41:29 +0000 Received: by outflank-mailman (input) for mailman id 546628; Sat, 10 Jun 2023 20:41:28 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q85Oq-0001iX-Db for xen-devel@lists.xenproject.org; Sat, 10 Jun 2023 20:41:28 +0000 Received: from wout5-smtp.messagingengine.com (wout5-smtp.messagingengine.com [64.147.123.21]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 2b03a00f-07cf-11ee-8611-37d641c3527e; Sat, 10 Jun 2023 22:41:26 +0200 (CEST) Received: from compute4.internal (compute4.nyi.internal [10.202.2.44]) by mailout.west.internal (Postfix) with ESMTP id BC3FA32003F4; Sat, 10 Jun 2023 16:41:23 -0400 (EDT) Received: from mailfrontend2 ([10.202.2.163]) by compute4.internal (MEProxy); Sat, 10 Jun 2023 16:41:25 -0400 Received: by mail.messagingengine.com (Postfix) with ESMTPA; Sat, 10 Jun 2023 16:41:22 -0400 (EDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 2b03a00f-07cf-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= invisiblethingslab.com; h=cc:cc:content-transfer-encoding :content-type:date:date:from:from:in-reply-to:in-reply-to :message-id:mime-version:references:reply-to:sender:subject :subject:to:to; s=fm1; t=1686429683; x=1686516083; bh=1qqdCLnk8X ZZUpiOqZUTKehWt/5RjR4FGu3vEMkB/ek=; b=RNwmi56tXuI4aB88VxWVJYjN5P Hw7IIvlioRJaQi72PlbFI1iAp/W+LJONn/SSjyoyfgXBQxQ0KA7W7Mc/KqThl2zb af8HmrPGpQtGd5GC+cOL3ZZ1SK6m5ZrWdVG8ihyzvV6gblHO/C7ZBXhAWREuWsck P/g4bx+3HxvTx6+/yDS2c5DBMMQFrL8GiOJhY5YudZtIlNTDo5KOoDHvYPEDONHZ F88JNfxJWhVbTrlVR/L2/pabGG7mxCdMlpxtpJBG+2Us+QaQYXB33WJPfePwC5GE HYQ82LY3dbImVJt0Rzh8ItSiO2PaLZocQKmv0t91vqNopAb+hirVaAjqVSxw== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-transfer-encoding :content-type:date:date:feedback-id:feedback-id:from:from :in-reply-to:in-reply-to:message-id:mime-version:references :reply-to:sender:subject:subject:to:to:x-me-proxy:x-me-proxy :x-me-sender:x-me-sender:x-sasl-enc; s=fm1; t=1686429683; x= 1686516083; bh=1qqdCLnk8XZZUpiOqZUTKehWt/5RjR4FGu3vEMkB/ek=; b=e 1mOAh0xXnK84ZU62LsR9vciVBb905DBIyIteDQ5rBbSwWerkYe1jAZAYBdrFYzWh m2vltF2suhspVwl1kvNwOYOEmLgTez3EoBzzaEzy0NDKiAnhO2dG/n16qg+LfJE3 Ft668WUWrvb/WZI83UP9j76y7XZbSFj6XDjsD02ZW+CmT65nGehwF0TIXGAI/WLs BiUNxC5ohQYin08dwphHgImXf+s6laXlgOPZWB5Mzs482WbPW4ilyswaqrDY2cXe 0IlaI2nVmKDzFENJfYkN6yLiJRrt2qq1DqnduA9nMIAk3AMNfUvmJruejW8eVrds /H3018pqeMwbr9tpnAUEg== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvhedrgedutddgudehhecutefuodetggdotefrod ftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfgh necuuegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmd enucfjughrpefhvfevufffkffojghfggfgsedtkeertdertddtnecuhfhrohhmpeffvghm ihcuofgrrhhivgcuqfgsvghnohhurhcuoeguvghmihesihhnvhhishhisghlvghthhhinh hgshhlrggsrdgtohhmqeenucggtffrrghtthgvrhhnpeejffejgffgueegudevvdejkefg hefghffhffejteekleeufeffteffhfdtudehteenucevlhhushhtvghrufhiiigvpedtne curfgrrhgrmhepmhgrihhlfhhrohhmpeguvghmihesihhnvhhishhisghlvghthhhinhhg shhlrggsrdgtohhm X-ME-Proxy: Feedback-ID: iac594737:Fastmail From: Demi Marie Obenour To: Hans de Goede , Mauro Carvalho Chehab , Sakari Ailus , Greg Kroah-Hartman , Juergen Gross , Stefano Stabellini , Oleksandr Tyshchenko , Lee Jones , Andy Lutomirski , Thomas Gleixner , Vincenzo Frascino , Petr Mladek , Steven Rostedt , Sergey Senozhatsky , Andy Shevchenko , Rasmus Villemoes Cc: Demi Marie Obenour , linux-media@vger.kernel.org, linux-staging@lists.linux.dev, linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org Subject: [PATCH v3 4/4] Reject NUL bytes in xenstore nodes Date: Sat, 10 Jun 2023 16:40:44 -0400 Message-Id: <20230610204044.3653-5-demi@invisiblethingslab.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230610204044.3653-1-demi@invisiblethingslab.com> References: <20230610204044.3653-1-demi@invisiblethingslab.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit This rejects bogus xenstore node values that include interior NUL bytes. These would be truncated by functions that expect NUL-terminated strings. Signed-off-by: Demi Marie Obenour --- drivers/xen/xenbus/xenbus_xs.c | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/drivers/xen/xenbus/xenbus_xs.c b/drivers/xen/xenbus/xenbus_xs.c index 12e02eb01f5991b31db451cc57037205359b347f..7cb2a22a7698ac40c81add23476594d9f27de8d0 100644 --- a/drivers/xen/xenbus/xenbus_xs.c +++ b/drivers/xen/xenbus/xenbus_xs.c @@ -569,16 +569,20 @@ int xenbus_scanf(struct xenbus_transaction t, const char *dir, const char *node, const char *fmt, ...) { va_list ap; - int ret; + int ret = 0; + unsigned int len; char *val; - val = xenbus_read(t, dir, node, NULL); + val = xenbus_read(t, dir, node, &len); if (IS_ERR(val)) return PTR_ERR(val); + if (strlen(val) != len) + goto bad; va_start(ap, fmt); ret = vsscanf(val, fmt, ap); va_end(ap); +bad: kfree(val); /* Distinctive errno. */ if (ret == 0) @@ -636,15 +640,18 @@ int xenbus_gather(struct xenbus_transaction t, const char *dir, ...) while (ret == 0 && (name = va_arg(ap, char *)) != NULL) { const char *fmt = va_arg(ap, char *); void *result = va_arg(ap, void *); + unsigned len; char *p; - p = xenbus_read(t, dir, name, NULL); + p = xenbus_read(t, dir, name, &len); if (IS_ERR(p)) { ret = PTR_ERR(p); break; } - if (fmt) { - if (sscanf(p, fmt, result) == 0) + if (strlen(p) != len) + ret = -EINVAL; + else if (fmt) { + if (sscanf(p, fmt, result) <= 0) ret = -EINVAL; kfree(p); } else -- Sincerely, Demi Marie Obenour (she/her/hers) Invisible Things Lab From xen-devel-bounces@lists.xenproject.org Sat Jun 10 21:17:21 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sat, 10 Jun 2023 21:17:21 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546653.853671 (Exim 4.92) (envelope-from ) id 1q85xO-0007IY-KF; Sat, 10 Jun 2023 21:17:10 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546653.853671; Sat, 10 Jun 2023 21:17:10 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q85xO-0007IR-Gt; Sat, 10 Jun 2023 21:17:10 +0000 Received: by outflank-mailman (input) for mailman id 546653; Sat, 10 Jun 2023 21:17:09 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q85xN-0007IH-CJ; Sat, 10 Jun 2023 21:17:09 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q85xN-0007kJ-3p; Sat, 10 Jun 2023 21:17:09 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q85xM-0001bd-Qn; Sat, 10 Jun 2023 21:17:08 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q85xM-0002Ie-QG; Sat, 10 Jun 2023 21:17:08 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=uR592kyeHukjnzj3EwG+O0SoqRC6UaY/Jo/mzOOURlk=; b=syP4qgkVev7khhnj+i78bh27QI ptkk1a7hPoLL/hMPLbJOdGgRppPhGQDLRenC5u871R9JPDYiJTS7lRP9aSGTshLOXI7PvO49sZ5G+ MsrWDA6YrCZE6z9HXIrPzox0HQNk3u8KS3drIXfEdyBhrOVD+PsWlQyjOwSDHEhWPhKw=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [qemu-mainline test] 181361: regressions - FAIL X-Osstest-Failures: qemu-mainline:build-arm64-xsm:xen-build:fail:regression qemu-mainline:build-arm64:xen-build:fail:regression qemu-mainline:build-amd64:xen-build:fail:regression qemu-mainline:build-i386:xen-build:fail:regression qemu-mainline:build-amd64-xsm:xen-build:fail:regression qemu-mainline:build-i386-xsm:xen-build:fail:regression qemu-mainline:build-armhf:xen-build:fail:regression qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-i386:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:build-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:build-arm64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:build-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:build-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pygrub:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking X-Osstest-Versions-This: qemuu=3673ad389622d9ef4d2743101253c642def7935a X-Osstest-Versions-That: qemuu=6972ef1440a9d685482d78672620a7482f2bd09a From: osstest service owner Date: Sat, 10 Jun 2023 21:17:08 +0000 flight 181361 qemu-mainline real [real] http://logs.test-lab.xenproject.org/osstest/logs/181361/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-arm64-xsm 6 xen-build fail REGR. vs. 180691 build-arm64 6 xen-build fail REGR. vs. 180691 build-amd64 6 xen-build fail REGR. vs. 180691 build-i386 6 xen-build fail REGR. vs. 180691 build-amd64-xsm 6 xen-build fail REGR. vs. 180691 build-i386-xsm 6 xen-build fail REGR. vs. 180691 build-armhf 6 xen-build fail REGR. vs. 180691 Tests which did not succeed, but are not blocking: test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-xl-xsm 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-raw 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-xsm 1 build-check(1) blocked n/a test-arm64-arm64-xl 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit1 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit2 1 build-check(1) blocked n/a test-arm64-arm64-xl-thunderx 1 build-check(1) blocked n/a test-arm64-arm64-xl-vhd 1 build-check(1) blocked n/a test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a test-armhf-armhf-libvirt 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-qcow2 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-raw 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a test-armhf-armhf-xl-arndale 1 build-check(1) blocked n/a test-armhf-armhf-xl-multivcpu 1 build-check(1) blocked n/a test-armhf-armhf-xl-rtds 1 build-check(1) blocked n/a test-armhf-armhf-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-amd 1 build-check(1) blocked n/a test-amd64-i386-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-raw 1 build-check(1) blocked n/a test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-i386 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-amd64 1 build-check(1) blocked n/a test-amd64-coresched-i386-xl 1 build-check(1) blocked n/a test-amd64-coresched-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-xsm 1 build-check(1) blocked n/a build-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-shadow 1 build-check(1) blocked n/a test-amd64-amd64-xl-rtds 1 build-check(1) blocked n/a build-arm64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a build-armhf-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a build-i386-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-amd 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-pair 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-qcow2 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-vhd 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvshim 1 build-check(1) blocked n/a test-amd64-amd64-pair 1 build-check(1) blocked n/a test-amd64-amd64-pygrub 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-intel 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd11-amd64 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd12-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-multivcpu 1 build-check(1) blocked n/a test-amd64-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit1 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit1 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-intel 1 build-check(1) blocked n/a test-amd64-i386-xl 1 build-check(1) blocked n/a test-amd64-i386-xl-pvshim 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a version targeted for testing: qemuu 3673ad389622d9ef4d2743101253c642def7935a baseline version: qemuu 6972ef1440a9d685482d78672620a7482f2bd09a Last test of basis 180691 2023-05-17 10:45:22 Z 24 days Failing since 180699 2023-05-18 07:21:24 Z 23 days 79 attempts Testing same since 181356 2023-06-10 03:10:42 Z 0 days 2 attempts ------------------------------------------------------------ People who touched revisions under test: Afonso Bordado Akihiko Odaki Akihiro Suda Alex Bennée Alex Williamson Alexander Bulekov Alexander Graf Alexander Ivanov Alistair Francis Ani Sinha Ani Sinha Anthony PERARD Anton Johansson BALATON Zoltan Bastian Koppelmann Bernhard Beschow Bin Meng Brian Cain Brice Goglin Camilla Conte Christian Schoenebeck Chuck Zmudzinski Cindy Lu Clément Chigot Cornelia Huck Cédric Le Goater Cédric Le Goater Daniel Henrique Barboza Daniel P. Berrangé Daniil Kovalev David Hildenbrand David Woodhouse Emanuele Giuseppe Esposito Enze Li Eric Auger Eric Blake Eric DeVolder Erico Nunes Eugenio Pérez Fabiano Rosas Fan Ni Fiona Ebner Francesco Cagnin Francisco Iglesias Gavin Shan Gregory Price Gregory Price Hanna Czenczek Hao Zeng Hawkins Jiawei Igor Mammedov Ilya Leoshkevich Ira Weiny Jagannathan Raman Jason Wang Jean-Louis Dupond Jean-Philippe Brucker Jiaxun Yang John Snow Jonathan Cameron Juan Quintela Kevin Wolf Laurent Vivier Lei Yang Leonardo Bras Maksim Davydov Marc-André Lureau Marcin Juszkiewicz Marco Liebel Mark Cave-Ayland Markus Armbruster Matheus Tavares Bernardino Mauro Matteo Cascella Max Fritz Michael S. Tsirkin Michael Tokarev Michal Privoznik Mostafa Saleh Nicholas Piggin Nicolas Saenz Julienne Niek Linnenbank Palmer Dabbelt Paolo Bonzini Peter Maydell Peter Xu Philippe Mathieu-Daudé qianfan Zhao Raghu H Rene Engel Richard Henderson Richard Purdie Ricky Zhou Ryan Wendland Sebastian Ott Sergio Lopez Sid Manning Song Gao Stefan Hajnoczi Stefano Garzarella Steve Sistare Taylor Simpson Thomas Huth Thomas Weißschuh timothee.cocault@gmail.com Timothée Cocault Tommy Wu Vikram Garhwal Viktor Prutyanov Vitaly Cheptsov Vivek Kasireddy Vladimir Sementsov-Ogievskiy Volker Rümelin Xinyu Li Zeng Hao Zhenyu Zhang Zhenzhong Duan Zhuojia Shen jobs: build-amd64-xsm fail build-arm64-xsm fail build-i386-xsm fail build-amd64 fail build-arm64 fail build-armhf fail build-i386 fail build-amd64-libvirt blocked build-arm64-libvirt blocked build-armhf-libvirt blocked build-i386-libvirt blocked build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl blocked test-amd64-coresched-amd64-xl blocked test-arm64-arm64-xl blocked test-armhf-armhf-xl blocked test-amd64-i386-xl blocked test-amd64-coresched-i386-xl blocked test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-i386-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-amd64-libvirt-xsm blocked test-arm64-arm64-libvirt-xsm blocked test-amd64-i386-libvirt-xsm blocked test-amd64-amd64-xl-xsm blocked test-arm64-arm64-xl-xsm blocked test-amd64-i386-xl-xsm blocked test-amd64-amd64-qemuu-nested-amd blocked test-amd64-amd64-xl-pvhv2-amd blocked test-amd64-i386-qemuu-rhel6hvm-amd blocked test-amd64-amd64-dom0pvh-xl-amd blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-freebsd10-amd64 blocked test-amd64-amd64-qemuu-freebsd11-amd64 blocked test-amd64-amd64-qemuu-freebsd12-amd64 blocked test-amd64-amd64-xl-qemuu-ovmf-amd64 blocked test-amd64-i386-xl-qemuu-ovmf-amd64 blocked test-amd64-amd64-xl-qemuu-win7-amd64 blocked test-amd64-i386-xl-qemuu-win7-amd64 blocked test-amd64-amd64-xl-qemuu-ws16-amd64 blocked test-amd64-i386-xl-qemuu-ws16-amd64 blocked test-armhf-armhf-xl-arndale blocked test-amd64-amd64-xl-credit1 blocked test-arm64-arm64-xl-credit1 blocked test-armhf-armhf-xl-credit1 blocked test-amd64-amd64-xl-credit2 blocked test-arm64-arm64-xl-credit2 blocked test-armhf-armhf-xl-credit2 blocked test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-freebsd10-i386 blocked test-amd64-amd64-qemuu-nested-intel blocked test-amd64-amd64-xl-pvhv2-intel blocked test-amd64-i386-qemuu-rhel6hvm-intel blocked test-amd64-amd64-dom0pvh-xl-intel blocked test-amd64-amd64-libvirt blocked test-armhf-armhf-libvirt blocked test-amd64-i386-libvirt blocked test-amd64-amd64-xl-multivcpu blocked test-armhf-armhf-xl-multivcpu blocked test-amd64-amd64-pair blocked test-amd64-i386-pair blocked test-amd64-amd64-libvirt-pair blocked test-amd64-i386-libvirt-pair blocked test-amd64-amd64-xl-pvshim blocked test-amd64-i386-xl-pvshim blocked test-amd64-amd64-pygrub blocked test-armhf-armhf-libvirt-qcow2 blocked test-amd64-amd64-xl-qcow2 blocked test-arm64-arm64-libvirt-raw blocked test-armhf-armhf-libvirt-raw blocked test-amd64-i386-libvirt-raw blocked test-amd64-amd64-xl-rtds blocked test-armhf-armhf-xl-rtds blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-amd64-xl-shadow blocked test-amd64-i386-xl-shadow blocked test-arm64-arm64-xl-thunderx blocked test-amd64-amd64-libvirt-vhd blocked test-arm64-arm64-xl-vhd blocked test-armhf-armhf-xl-vhd blocked test-amd64-i386-xl-vhd blocked ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 16229 lines long.) From xen-devel-bounces@lists.xenproject.org Sat Jun 10 22:52:07 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sat, 10 Jun 2023 22:52:07 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546662.853681 (Exim 4.92) (envelope-from ) id 1q87R0-0000k3-Gl; Sat, 10 Jun 2023 22:51:50 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546662.853681; Sat, 10 Jun 2023 22:51:50 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q87R0-0000jw-E7; Sat, 10 Jun 2023 22:51:50 +0000 Received: by outflank-mailman (input) for mailman id 546662; Sat, 10 Jun 2023 22:51:48 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q87Qy-0000jq-35 for xen-devel@lists.xenproject.org; Sat, 10 Jun 2023 22:51:48 +0000 Received: from esa4.hc3370-68.iphmx.com (esa4.hc3370-68.iphmx.com [216.71.155.144]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 5e85913f-07e1-11ee-b232-6b7b168915f2; Sun, 11 Jun 2023 00:51:45 +0200 (CEST) Received: from mail-bn8nam12lp2177.outbound.protection.outlook.com (HELO NAM12-BN8-obe.outbound.protection.outlook.com) ([104.47.55.177]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 10 Jun 2023 18:51:38 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by DM4PR03MB6094.namprd03.prod.outlook.com (2603:10b6:5:395::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Sat, 10 Jun 2023 22:51:34 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606%4]) with mapi id 15.20.6455.030; Sat, 10 Jun 2023 22:51:34 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 5e85913f-07e1-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686437505; h=message-id:date:from:subject:to:cc:references: in-reply-to:content-transfer-encoding:mime-version; bh=FqlR9MC0+JwBTU3LYaBKWlf2cmR8jSePKt3Vavd4kWE=; b=XUI2Z4Id11shBwweXOqNTJ2HyD19yPSiuRfWuKY4Cx9W2mQ3axmyzYzf dLhhNK9HNPNTruu6hB6VoOi0SYMYV3jRtwC+SqrCoikm1+MpzWJod10YD 6X/YLR2x4ZkpXavtl69EacqYjhbqidmY9zAoGGo4Oo61b83FIVsQtwSYT o=; X-IronPort-RemoteIP: 104.47.55.177 X-IronPort-MID: 114844557 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:q2g226nBqBNhBicd52fXZjXo5gwwIERdPkR7XQ2eYbSJt1+Wr1Gzt xIYXT2HPq6DY2OkKdlzOd6w/UtU7MKEz95kGgo+rCE0EiMWpZLJC+rCIxarNUt+DCFhoGFPt JxCN4aafKjYaleG+39B55C49SEUOZmgH+a6U6icfHgqH2eIcQ954Tp7gek1n4V0ttawBgKJq LvartbWfVSowFaYCEpNg064gE0p5KyaVA8w5ARkPqgV5QeGyxH5MbpETU2PByqgKmVrNrbSq 9brlNmR4m7f9hExPdKp+p6TnpoiG+O60aCm0xK6aoD66vRwjnVaPpUTbZLwXXx/mTSR9+2d/ f0W3XCGpaXFCYWX8AgVe0Ew/yiTpsSq8pefSZS0mZT7I0Er7xIAahihZa07FdRwxwp5PY1B3 f86dm8rLSybvrK/mO6EaMA2rcZkcda+aevzulk4pd3YJdAPZMmZBo/stZpf1jp2gd1SF/HDY cZfcSBocBnLfxxIPBEQFY46m+CrwHL4dlW0qnrM/fZxvzeVkVE3ieeyWDbWUoXiqcF9t0CUv G/ZuU/+BQkXLoe3wjuZ6HO8wOTImEsXXapLTeHoqqI33QL7Kmo7NzoaeXqgkeWFlFf5UvlYD FM2xw8yhP1nnKCsZpynN/Gim1aotwAdV5x0Guw16B2lw6HJ5w+TQGMDS1ZpYcYguOc/Xzom3 BmFkrvBAT1pra3QQGiYs7SZtzW/PQARLHQefmkFSwUf6tXuqY11iQjAJv5oGbK8itzzXzT52 TGMpTMWjq8Wy8UM0s2T4lHDhxqvq4LPQwpz4R/YNkqq8wRjaYiNZIGy71Xfq/FaI+6xSliHo WhBkNOd/cgQApyX0i+AWuMAGPeu/fntGCHHi1lgEp8t3z2p436qO45K6Td9KUEvPstsUTvoZ lLDkQpL4ZtSOma6K6htbMSsCKwCyanmCMSgU/HMdfJQbZVrMgyK5idjYQiXxW+FuEQhlaUyI 7+UdNbqAXtyIaBmyiemAv8Uy74wzQggym7JA5P21RKq1fyZfnH9Ya8MLV/Icek96biArRT96 NdRNtWHjR5YVYXWeiDT9IMJBVwDJ3I2AYywoMtSHsaHIwx7CCQ7CuTa35slepd5hOJUkOnS9 32wU0Mez0Dw7VXCIB+JLGp+dLfmW5pXpGg+eycrOD6AwHEpe4+35aE3fp4+b74hsudkyJZcb fAAdt7GKPNTVjPC/zkMRZn0qpdvcgyinx6IMjC+YDknOZVnQmTh6tLiOwfi6iQKJi62rtcl5 a2t0BvBRpgOTBgkC9zZANqlyEmwpj4ag/5oWFXTIch7f1/l+4xnbSf2i5cfIc4WLg7Y7iCHz AvQChAdzcHcvok199/Gw6KFpoGmO+9/GFdKWWjd8buycyLd+wKL3YBEQM6MfDbASHnz/qSyI +lYp9n/MecGmFJiqIphD7tuyrx44dLqqtdyygViAWWObFmxDL5kCmeJ0NMJtaBXwLJd/wysV Sqn6okEEbaEIsXoFBgWPgVNRuic0O5OsjjU4+48LEjz6Glw5rXveU9IMBSWkzB1I758MYdjy uAk0OYf8Q62jDIuM9CbnmZV8XiBKjoLVKBPnokQB4n5iwwq4ktPbZzVFmn955TnQ81FL00vK Ty8h6fYgblYgE3YfBIbCXjK2ONGw5ADvhxDx1wTD12MlpzOgfpf9AZc+DI1RSxayRJI1+81M W9uX2VyIaiN5D5uiNJrWWmwEgVMAh6evEr4zlZhvHXcQk+6W2jlKWo5NuuLukUB/CRQc1Bz8 6mZw23iVTfCfc742io7H0VirpTLScF69ATE3sS6FMaMGZ4kSTXgi66qI2EPrnPPHNg4gUSBr PNr8s56eLH2OScWqKB9AI6fvZwVSROJIGhPUNlk/agTGnrbdi300j+LQ2i9c91AYfzD91S1D eRqJ8RSR1K/0jqDqnYQAqtkHlNvtPsg5d5HcLW7I2cD6uGbtmAw782W8TXijmg2Rdkoidw6N o7aazOFFCqXmGdQnGjO6sJDPwJUfOU5WeE158jtmM1hKn7JmLgEnZ0auldsg0ioDQ== IronPort-HdrOrdr: A9a23:grn/zqqaF28t+qIox6iaz4oaV5o6eYIsimQD101hICG9E/b0qy nKpp9w6faaslYssQ4b6LK90cW7Lk80lqQY3WByB8bAYOCOggLBEGgI1+rfKlPbdREW/9QtsJ tdTw== X-Talos-CUID: =?us-ascii?q?9a23=3AS26j6WrVnsLK1PYOLa5MEM3mUcMHLCL7j0vIGh+?= =?us-ascii?q?xUTpWapTPYl3Xpbwxxg=3D=3D?= X-Talos-MUID: =?us-ascii?q?9a23=3APR9ZBQ5Z1Ot+wqvMJcWXe0NhxoxXxKiCKVs9jak?= =?us-ascii?q?Yoo6NHitXJBWgqSieF9o=3D?= X-IronPort-AV: E=Sophos;i="6.00,233,1681185600"; d="scan'208";a="114844557" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=oQ7pABnP7PnnvnWBc4GJOw/4vmA4cqqfThlF/oe0ZCySzeEHm75t1gVotvU556ku3KEic3nn5NyTSW0p/LeVrYOVfdYkVbiUok7/MC58deUI9ikugca+ePBRNm6r6qD1gufW3gEjrQCLOJ3uXeWnC0YfP1t2mSbX+qF7PWBBg3iX3T3KQx0zI0C6MgU3T9Yb/+PsAlXvY9N1c+/KR1pJcSgY0ZlsZkdQBGBuxYT3Gp2H609vCcNqmzSg6Nkn6gJIRKr+IGq/jkP4oTrD32QAYGqFyN0QypXHQOhuDOqCusbpzGDHfXXaBg1ZGtX6BkOTFP/u+zEY00pOFwIqDq8gMw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=FqlR9MC0+JwBTU3LYaBKWlf2cmR8jSePKt3Vavd4kWE=; b=kAUTqLQiiiKf42eh/zj9XBGROLjPRLLisoN4K7BBHZdOeUMLNoFmdbesPAil5MXAgXhPrAIq2L7HV+x+dzJrWI9WWtPifIUYTghRZfICJxD31H0OUv2c8fAlosrc9DSQCNPUxktbOzsCkdu9/lPZ105cSzvC/vmSQOL3HVhG5L598/TIM+hPYKTOV2NtUFldPrXAa9g3WvsXqjKB1lA3ElRaTjcqQ8DIHhjQkKp0ZVmqd6QrpKYEK9EOOReETD/f/8MuDz0skZSPsCvnTnHz7hC2R8MXGrRCvnG+URphZG63T5yNOS+uFhieADzUyQQDcq7FmYQk/K8nXZy+nDqtOA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=FqlR9MC0+JwBTU3LYaBKWlf2cmR8jSePKt3Vavd4kWE=; b=U+uhZFKCTNwELFtdNQZr3xjdH7u7CkhGWTC/IJkACj0wAFpxDCxkfpgYulAwf6Kuoe8YELJ06k3iiRbng5ju1d6hmrqdCa3n+cNpouUwjP88LVEhrI3olyLqAqLNT8mJEIduWe/0O10e5GIFkfECqCMjVAMrRs/+yKqvYenL5KE= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: <6333ee51-dfe5-9742-54b4-377bbc73120e@citrix.com> Date: Sat, 10 Jun 2023 23:51:21 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 From: 'Andrew Cooper' Subject: Re: [patch] x86/realmode: Make stack lock work in trampoline_compat() Content-Language: en-GB To: David Laight , Yunhong Jiang , Thomas Gleixner Cc: "Kirill A. Shutemov" , LKML , "x86@kernel.org" , David Woodhouse , Brian Gerst , Arjan van de Veen , Paolo Bonzini , Paul McKenney , Tom Lendacky , Sean Christopherson , Oleksandr Natalenko , Paul Menzel , "Guilherme G. Piccoli" , Piotr Gorski , Usama Arif , Juergen Gross , Boris Ostrovsky , "xen-devel@lists.xenproject.org" , Russell King , Arnd Bergmann , "linux-arm-kernel@lists.infradead.org" , Catalin Marinas , Will Deacon , Guo Ren , "linux-csky@vger.kernel.org" , Thomas Bogendoerfer , "linux-mips@vger.kernel.org" , "James E.J. Bottomley" , Helge Deller , "linux-parisc@vger.kernel.org" , Paul Walmsley , Palmer Dabbelt , "linux-riscv@lists.infradead.org" , Mark Rutland , Sabin Rapan , "Michael Kelley (LINUX)" , Dave Hansen References: <20230508181633.089804905@linutronix.de> <20230508185218.962208640@linutronix.de> <20230524204818.3tjlwah2euncxzmh@box.shutemov.name> <87y1lbl7r6.ffs@tglx> <87sfbhlwp9.ffs@tglx> <20230529023939.mc2akptpxcg3eh2f@box.shutemov.name> <87bki3kkfi.ffs@tglx> <20230529203129.sthnhzgds7ynddxd@box.shutemov.name> <87h6rujdvl.ffs@tglx> <20230608233402.GA3430@yjiang5-mobl.amr.corp.intel.com> <67f939e112cc4578833ca74123bee402@AcuMS.aculab.com> In-Reply-To: <67f939e112cc4578833ca74123bee402@AcuMS.aculab.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: LO4P265CA0088.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:2bc::7) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|DM4PR03MB6094:EE_ X-MS-Office365-Filtering-Correlation-Id: c451994d-4add-45a2-0deb-08db6a053cfa X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: +sP2qbbpBxAN/cQULVSp73si9jgp4NE8SMr5uJ+Ubgc8noQE6SQzdTWK2xS5lkC1AMrVA8+OLton7073Rnkc5PHWItDo2BBkGLq3yTYYjs3t3Ue0StbDupID2/o84a6ZPl0olry1UlDRToRBZDovWAJtj7tbs94NPX44oM2KmqkPvh8c8JGX4O0HRmdxorMelqG1rUAHuw0L1fvHcFnMQM0aY6OJPEyplG7tf0e7TrpVvRnxGpFTkfIyrrCsPTweoR0cXhTQVlnhWp3WHB8booal5Ps1OshxwiYhIaGkuWBmkdRR4Mz77qHz43BFP+T0xaG/iArAhEKk+1O+NhhjHQDzAie0O8d4otZ7TbHR1vDL2hvmIWrGLAbGc7A4K0nBynMvjqKmiUit11bYzEYFJOXPAdT6jZK3i5sNL8iknxDt0JYOFkyVTvRBK3MBCm2HCA/jiasAXdwVNUG2pcpF4ljaPdjEv4dxv0wPgNplxi+M2vA+HBJtX0J0qZcThGNE7H+EasQA+PIU55fVMOpHPjO26nKHuouaeBC00scLY1T9qzePFxObOPKC51oURndE65jH7E+m3dBunMPu6tsxbaAydct1IImMm8rgOSFnlM8q01mxjV3OQYkV4aKX/7hqbuKTBexyin8svqmXdT+whg== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(376002)(396003)(346002)(39860400002)(136003)(366004)(451199021)(4326008)(66556008)(66476007)(66946007)(31686004)(4744005)(2906002)(186003)(82960400001)(38100700002)(6512007)(7406005)(8676002)(86362001)(5660300002)(36756003)(316002)(6486002)(8936002)(6666004)(54906003)(7416002)(31696002)(41300700001)(110136005)(2616005)(478600001)(26005)(53546011)(6506007)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?OStRbmQ5dGtOWjZZK2V5NEJWakprZzNJd1B1d1J3MHJpNTltd1Y5TUp3WDRv?= =?utf-8?B?YVRrajdxMzFsSFR6NXRlRC8vV01sQW1nN3ByOW5uejY4UG83Zys5M3BpcUlh?= =?utf-8?B?TGRKcTdZK1FoUjdtbU5jVjY0TU5nQnpNczIrOEUrQU5rOGlXakxOYU9iRk1q?= =?utf-8?B?TWxybWwwNC92NE5nWFErY1crRmtWcFFhZ1VueUcyMWdqWllxbTllT1IwQWdP?= =?utf-8?B?QWx2RTVmK2VMM2VvTi9PYUZBQkFiK05QOG1zKzMrL2xjcHFNeTFVMmJVVGxj?= =?utf-8?B?a2ZJTHM2V0tUeVZEZ0dmU0QxQk1nU3NWVzJSNmovSFhnd3dvTVRvWlQrUjRE?= =?utf-8?B?U2F4WUs3OUlFbW1GRDRQb0VTL0NMdjRzUXNoeXBFQ25ranB6elRLZ2lDM2FW?= =?utf-8?B?ZmxuUEwvbDYvVnE5NDRyR2w4TjdhR1dHeTZrRUpTRWhaWDF3THpleGZSamRM?= =?utf-8?B?QjdwLzd5d2FWU0RiTlpzN0FIalNadU81TXl0bDdYdFpBejNmQ3lkUXlMKytO?= =?utf-8?B?T3B5a3JsMHVIWTZiQXhLZjhtWER0WWVld3NWRHRCZWtlZm1ObU8wV2Y5MHJr?= =?utf-8?B?bDlJWitqbytGNUN0R2JXZVl5V1NrNGxpYlNXMjlzaWxkRGJLQm5KVi94UnFP?= =?utf-8?B?cjYyWW5KVXREZ0U1bDUzdjgwTUVnQzRTNE1pQ2FsV0ovbmtISVFCTHp0N1RH?= =?utf-8?B?dlBPSXYvOERSNXRjR21uVXU3S3IrRytLZXNqZGVFcG1YZjVFZEV2dVZ4UFpK?= =?utf-8?B?TjN5YkIrdFBYeWRYTkttRUJYOURpY1dUTXJrVWoveHFETGo5NDQvS1BRbzdt?= =?utf-8?B?Q2VhU1JlRERzREpWaTgxSFV1MTBmeGJzbG1zc0YzL1JrOUFtdTFmeHRGWm9v?= =?utf-8?B?Qi9hWXVSdDRvRituRXBaN1l4Si9OUTFWajlFTC9ibk9CVEdkK1JyVUdVQWcy?= =?utf-8?B?T1hjbTM4RkdUaUloOEFwbFR6Qk10UHRLVS9sQlJXYXBZaGlEbnoxY05zb3Ji?= =?utf-8?B?TnZzQzlnbk9lazVIWnhFSjlhNTRXdEZKTy9XdVA1TFMxS1E2eWp5a3lod0ty?= =?utf-8?B?blpHUXlrUE55ZTE3LzBMSWNQSXRDbXhzRVdUZ3Uzem9tSVFqcVlRNmZoK3JP?= =?utf-8?B?WWFJSzNsZHlyZVRKdFRiRWlGdy9ENjFJVmNuMWlXbXo1U01ORm1naHAzOW9F?= =?utf-8?B?UW9Fd0J4YXY0bWZueUltRGt6Z3ZGSkRSWGRRSXQ5QnhXQ1VwMlV2YXMwZFE5?= =?utf-8?B?NUcyT1FIMnJlbDhzSHJJYm9NTDFvWGJHOFZwSTJhUUpFRWVlMXM1OVdkSDFq?= =?utf-8?B?Z2JBYXF6M2pRazlXQlNQM2hKajYrZlZNZk9lN3NVck9pQWNpVnJHU2NHTWxj?= =?utf-8?B?cndCQnZwb1hwVGlsL2RHMWtrcE9HaWFSQWxCbmFTeEI1bjNNUnFaUmN5MUJB?= =?utf-8?B?cG4zRk4vNVhndnhyOVdEeGtUTXJjUzlFYWtlQW0vd1d6TXlmNTZJd1NGbFRY?= =?utf-8?B?aFYrQ24zWWdIdXlMTnZobHYwQVRCK0FwQjJ5Zk1PejRac1lxeVZXbGE2Qktz?= =?utf-8?B?WUtqQ05DR1ozeGtKZ0lFU3dYbDNlU1YvZ0xhUzVaTGRxU1o4aElzRUo2T3Zk?= =?utf-8?B?V2lwOVV1bzF5elgvTldLK2JJTk15eERIYlNhVEFJQkxtaEpRVzVrYy9yVE5R?= =?utf-8?B?dFN2MGd6OWF6RUU5MHRUZlhLdFEvT2tVQk1Rd25Bbzh6QU5neSthS2lRZHF3?= =?utf-8?B?aExpZXBZWVV1cTFCRHZITHZ1Y0dLdDgzSUtLeWg3cFQ5NmduM1h2SjNTaFZQ?= =?utf-8?B?bFFiUElWRk1OcE9xUmlCM3FKeWlHSVRrZXcyN3BPQm45MWJTRi9sMlIzVlFH?= =?utf-8?B?UkN1MExwMElmZ3UvQ3AxQU9STS9SVU5mV1JtdCtTV0Q1ci8rUDQrZ0g2UjE1?= =?utf-8?B?TGdMajZzM095cVA2ekp3bm5Hc1dTODdWYnp4WTg4NHVwaWlGeTlEbVZNZC9v?= =?utf-8?B?b25CSXJRUG1vQ3pTRFpwZVZvQzRlN0VPNXhWb0tKY28xSjFFcWZnWkx5ZE9P?= =?utf-8?B?ZkQrak9nTWJCNzZGbFp0OE1wbnp3U2xPc1l1ZGVrdEQvYnZKSjdObExGdWoy?= =?utf-8?B?WDhWd0lPK2l4SEtwVFl3MlBhazd6d1dhc1Y3YmlucXN6d2puRUo1OWwrTGxD?= =?utf-8?B?R3c9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: =?utf-8?B?aEViU3NvZmFvMkxqQXpseS8wb0RWcndIMW1jZVlEUEVRaWowWXlCb1RWdjhr?= =?utf-8?B?R1FBT2pjZS9GQVFTS3EyTVY2alJTRExUVVpoTjBnWnNROEEwcFVWWWpqTENX?= =?utf-8?B?bSttRFRjamJ0b0I2cjh3YVZQZ0xLUVEweStsZGpjRGNPODdmSTFCTytPbTlL?= =?utf-8?B?T2Z4NlVrVXNOZFlCdEhZSnJKbFBTdVpwOE45cDg1ZTBiTHVQQzZPQmYvRm9E?= =?utf-8?B?QUlpaS9HdFlFTDF4bHFmVVFOaHdlaXcvTDdRYWsvQ0JlSTAydVdNRXRXSzlt?= =?utf-8?B?TnM5T1hOZFBTWWw1NGRyYldTTVpkbFZnd21CWmVLVHdjeGdqVTRTNWx3cWlH?= =?utf-8?B?QlRJOG5GVWJUN1pVTnFuZWtjN0hwR05JUVFPM1N4SGR4UmZmR2Q5Q1NLY2V4?= =?utf-8?B?aDZldVIwaDNpVUUrQnRvMWtETk9CYlB3b0dBaWhUUjNUdWlHR1RWZ1dHNXpi?= =?utf-8?B?ZUdLa3I0MFVUV25PMlRxSWdGblZIRU5FZkZzVXFaKzB0bjUrYkxiZzhnMUNo?= =?utf-8?B?NlZDam11VURMYmtDZmx0UHJzaXNXWkZMZ3BIK29tZzdOa0p5N0JoV1RDd0Zl?= =?utf-8?B?NzFOZzZkNWcyQzlwZ0hpcGpwVGRDWjNQRWMvb3ZyWm92YW1rSHppdy9zcFJo?= =?utf-8?B?Zjk1YndERlNPRkJyYjh5ejk1ZWQvWjFnL1Z2bTlidEpWWVZHM0x2SVhhcjBm?= =?utf-8?B?aklwR0FWZENMNExDNk84ci9zdmJGZHBnUGJNQTczNDZKRXdza0JhcDNrcENk?= =?utf-8?B?Q0h0T1dycTk0RnR2S3ArZGhHcTltNkxHdkF2N0xjSmIwSzZlWlJSZDQ0ZE5M?= =?utf-8?B?dnp4NHhHc2xSSUxJckV2eE9aU1dnbElzV083UTA0ekc5VktvNVQ4cVVKUWVZ?= =?utf-8?B?eXJGbXIxU0lRb0tzekJoVDJ4T05LUjMzaEkxTG81cWw5TnRYTGFWZDh1dS9s?= =?utf-8?B?RW1QS2JvYTlOdjVBNkttZkNZZlF0bFJJdnZ2a3NBUDM0RVhRK3RCSU16K0Qv?= =?utf-8?B?bkx1K1dTOEhjOWNPTDd1MExPWlRVbDBHNWZLUit4bmIvYzhUZmRIVk5ZYU5l?= =?utf-8?B?MzFKeWE1eHV3dmNUWjFKY1dXYjN3bjBrQ1k4YmZIcmk4Lzk0L0g1Y3k1OE1T?= =?utf-8?B?RDlKYXhUVElXc2lJL2RZNFRLYVY1dFNFYlpKMnlFWmgvVkwwRFRLYjNiR2h1?= =?utf-8?B?MHVNQVk1Z1Z5RlNTSzF3dHpkeVRuOVkzOFhPdVlxMU92VXBwZ3NOQ3ZHaWhh?= =?utf-8?B?YnlwN0U3cXpLZTBUNWhUUWI3dUEyUjZLNnR0d0Y0UXhQNFR4d2RxNm9uUjls?= =?utf-8?B?cXF4WWFDWjFGREI2d3VoYkdEb3NmdlV0K0Z5d0R4NVBZc1pESHB1OENCVVBp?= =?utf-8?B?Zk9Pa1E5NzZyamZ2ckV1cnp2UGMya09ZbDh0dXpsRFd1YkY5Y3BtbmoyeWpT?= =?utf-8?B?WHV0MHFiQkM1bmZXRG9OK283L0tKQUNNVUZiZm9VN2R6V0tKeVRTRzNidmJH?= =?utf-8?B?eUNNUUdiSnR3RHBtaWZlTjhwV240VUxwaTFESTdnRTdlVDNGLy9PSmhBTWU3?= =?utf-8?B?ZTZiMlRmUVR5SnMyN2JZOUkrVWNURzkvZUJpazV1Y25GajBGcVRxMVNZUUxw?= =?utf-8?B?YVpjU1NZMEZKNG1WbkhzNllwZXIyNnBOUU0yenlqdGtNdnB0eElKK1JwaEJp?= =?utf-8?B?SXVMbUVvTzcvWm1VYWE4YndlRWVzMnlXUEVCWWM0K2E1SmxKc1dhUUhjd1JO?= =?utf-8?B?RktKa3BNczNXdCtJQ0VrcFIxUGlwSFNnTjN3aitCVGZWdDBqWlFyU0t1dGtv?= =?utf-8?B?K3dXUnFRK0h3bGlIb0ZNeGJqN2hKZjN1YU05MFFvWklxaWVENUtJM3NuTXUz?= =?utf-8?B?OE5yTlVYSTZEQVMxb3BhNWVHUjgrTFlkZEg5ZDZXUElPRFlBanNBUjNkSjho?= =?utf-8?B?VkJnQXk4UGljTHp1Q3pSNGxLaVRmNjNSR21pNTNYbmY3aDRXbWZpcVR2Q0FX?= =?utf-8?B?Tm9Lei95UVVpQ1FKNkl6VHh4M1BWTUpOL0tnaFVTMXMxTGtCQUU4RzhYZ0o4?= =?utf-8?B?YWd2cGlaVklDK1I1NXhHblZjSGpRc0thWkRzVnBhOFhuUGlWdnB6QURXTHNI?= =?utf-8?B?djRBVG1BU3FQZHpQOWhjRGlUa1NMUkdmNy9NMDN6aXVkN0MwNVFoMkxsditn?= =?utf-8?B?TXh2SmZ2UWI4NDNZNW5RSGV3TXUyV2VBSlBITGpoakJrd1VGNVBvWjU3TXVq?= =?utf-8?B?Nm80Y1E5Q2V1V3RlTE44SUdXb0l5bXgxelg2RFJpY2JqcHZqTnZOdFUxcFlS?= =?utf-8?B?Y2Q0eXNUZ0t5dXo1cWRKcTRrVWFNU2RCSWNiNzVMeDZZU1AvWS96UT09?= X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: c451994d-4add-45a2-0deb-08db6a053cfa X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 10 Jun 2023 22:51:33.5910 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: G/x+GL309VYkBXFox8LCJu8QWRQgAbL83tU0cNKheWagoGQSbDE/DlArKIhtnWMM2xAgMF6FqHuQEjg8z1iq5V0nnZfYHo336JjHkr9R87g= X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR03MB6094 On 10/06/2023 8:50 pm, David Laight wrote: > From: Andrew Cooper >> Sent: 09 June 2023 00:58 >> > ... >> The important point is the l suffix on btsl, which forces it to be long >> (32bit) irrespective of the default operand size. > Does that matter at all? Yes, or I wouldn't have wasted everyone's time saying otherwise. I recommend educating yourself with the instruction manual, rather than presenting a set of statements which are all wrong. ~Andrew From xen-devel-bounces@lists.xenproject.org Sun Jun 11 02:23:38 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sun, 11 Jun 2023 02:23:38 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546667.853691 (Exim 4.92) (envelope-from ) id 1q8Ajm-0004Jv-Hm; Sun, 11 Jun 2023 02:23:26 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546667.853691; Sun, 11 Jun 2023 02:23:26 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8Ajm-0004Jn-DS; Sun, 11 Jun 2023 02:23:26 +0000 Received: by outflank-mailman (input) for mailman id 546667; Sun, 11 Jun 2023 02:23:25 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8Ajl-0004Jc-1o; Sun, 11 Jun 2023 02:23:25 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8Ajk-0005cd-Nd; Sun, 11 Jun 2023 02:23:24 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8Ajj-0003es-W0; Sun, 11 Jun 2023 02:23:24 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q8Ajj-0007Ra-VG; Sun, 11 Jun 2023 02:23:23 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=3K4GLzpWEWhoaM8JM+qCshwla3O1mL4eEt2V089xSzk=; b=fCIKfvK74TRHakScBOoEMYjSYI Wy5V2NhAL8HY8tf6dZikRrp8AU3WZ9K6TeQJ3UFUJKlJ6Rwv4byVmJR6eTcDP9sFOwT3js6VXiEt5 gkdDzITTCQtiSZ+qjSQfmRKricd/88aTc1YvAh27CcNsEPQ0oeUzhnPRgp3H3iEmr2vg=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable test] 181360: trouble: broken/fail/pass X-Osstest-Failures: xen-unstable:test-armhf-armhf-libvirt-raw::broken:regression xen-unstable:test-armhf-armhf-libvirt-raw:host-install(5):broken:heisenbug xen-unstable:test-amd64-i386-xl-vhd:guest-start/debian.repeat:fail:heisenbug xen-unstable:test-amd64-i386-pair:xen-install/dst_host:fail:heisenbug xen-unstable:test-amd64-i386-examine-bios:xen-install:fail:heisenbug xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking X-Osstest-Versions-This: xen=b4642c32c4d079916d5607ddda0232aae5e1690e X-Osstest-Versions-That: xen=b4642c32c4d079916d5607ddda0232aae5e1690e From: osstest service owner Date: Sun, 11 Jun 2023 02:23:23 +0000 flight 181360 xen-unstable real [real] http://logs.test-lab.xenproject.org/osstest/logs/181360/ Failures and problems with tests :-( Tests which did not succeed and are blocking, including tests which could not be run: test-armhf-armhf-libvirt-raw broken Tests which are failing intermittently (not blocking): test-armhf-armhf-libvirt-raw 5 host-install(5) broken pass in 181352 test-amd64-i386-xl-vhd 21 guest-start/debian.repeat fail in 181352 pass in 181360 test-amd64-i386-pair 11 xen-install/dst_host fail pass in 181352 test-amd64-i386-examine-bios 6 xen-install fail pass in 181352 Tests which did not succeed, but are not blocking: test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail in 181352 blocked in 181360 test-armhf-armhf-libvirt-raw 14 migrate-support-check fail in 181352 never pass test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 181352 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop fail like 181352 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 181352 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 181352 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop fail like 181352 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop fail like 181352 test-armhf-armhf-libvirt 16 saverestore-support-check fail like 181352 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail like 181352 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 181352 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop fail like 181352 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 181352 test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-i386-xl-pvshim 14 guest-start fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-i386-libvirt 15 migrate-support-check fail never pass test-amd64-i386-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-armhf-armhf-xl-multivcpu 15 migrate-support-check fail never pass test-armhf-armhf-xl-multivcpu 16 saverestore-support-check fail never pass test-amd64-i386-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-xl 15 migrate-support-check fail never pass test-armhf-armhf-xl 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass test-armhf-armhf-xl-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 15 saverestore-support-check fail never pass test-armhf-armhf-xl-arndale 15 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 16 saverestore-support-check fail never pass test-armhf-armhf-xl-credit2 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit2 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt 15 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 15 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail never pass version targeted for testing: xen b4642c32c4d079916d5607ddda0232aae5e1690e baseline version: xen b4642c32c4d079916d5607ddda0232aae5e1690e Last test of basis 181360 2023-06-10 08:08:40 Z 0 days Testing same since (not found) 0 attempts jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64-xtf pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-prev pass build-i386-prev pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-xtf-amd64-amd64-1 pass test-xtf-amd64-amd64-2 pass test-xtf-amd64-amd64-3 pass test-xtf-amd64-amd64-4 pass test-xtf-amd64-amd64-5 pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl pass test-amd64-i386-xl pass test-amd64-coresched-i386-xl pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-i386-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-i386-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-i386-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-i386-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-i386-qemut-rhel6hvm-amd pass test-amd64-i386-qemuu-rhel6hvm-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-i386-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-freebsd10-amd64 pass test-amd64-amd64-qemuu-freebsd11-amd64 pass test-amd64-amd64-qemuu-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-i386-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-i386-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-i386-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-amd64-i386-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale pass test-amd64-amd64-examine-bios pass test-amd64-i386-examine-bios fail test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 pass test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 pass test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine pass test-amd64-i386-examine pass test-amd64-i386-freebsd10-i386 pass test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-i386-qemut-rhel6hvm-intel pass test-amd64-i386-qemuu-rhel6hvm-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt pass test-amd64-i386-libvirt pass test-amd64-amd64-livepatch pass test-amd64-i386-livepatch pass test-amd64-amd64-migrupgrade pass test-amd64-i386-migrupgrade pass test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu pass test-amd64-amd64-pair pass test-amd64-i386-pair fail test-amd64-amd64-libvirt-pair pass test-amd64-i386-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-i386-xl-pvshim fail test-amd64-amd64-pygrub pass test-armhf-armhf-libvirt-qcow2 pass test-amd64-amd64-xl-qcow2 pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw broken test-amd64-i386-libvirt-raw pass test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds pass test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-amd64-i386-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-i386-examine-uefi pass test-amd64-amd64-libvirt-vhd pass test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd pass test-amd64-i386-xl-vhd pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary broken-job test-armhf-armhf-libvirt-raw broken broken-step test-armhf-armhf-libvirt-raw host-install(5) Published tested tree is already up to date. From xen-devel-bounces@lists.xenproject.org Sun Jun 11 04:01:18 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sun, 11 Jun 2023 04:01:18 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546677.853701 (Exim 4.92) (envelope-from ) id 1q8CGC-0006SA-IN; Sun, 11 Jun 2023 04:01:00 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546677.853701; Sun, 11 Jun 2023 04:01:00 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8CGC-0006S3-Ey; Sun, 11 Jun 2023 04:01:00 +0000 Received: by outflank-mailman (input) for mailman id 546677; Sun, 11 Jun 2023 04:00:59 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8CGB-0006Rk-6f for xen-devel@lists.xenproject.org; Sun, 11 Jun 2023 04:00:59 +0000 Received: from mail-qk1-x72f.google.com (mail-qk1-x72f.google.com [2607:f8b0:4864:20::72f]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 8ff7456f-080c-11ee-b232-6b7b168915f2; Sun, 11 Jun 2023 06:00:57 +0200 (CEST) Received: by mail-qk1-x72f.google.com with SMTP id af79cd13be357-75d4b85b3ccso326431185a.2; Sat, 10 Jun 2023 21:00:55 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 8ff7456f-080c-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686456054; x=1689048054; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=K7ojDVQb8wlb1zIjNzPbfogxkjZQuGSJ21ECzkZG2ro=; b=ZWuKQ/J6by4glKkVEtYswVNybsx2FMRAOIiaAJ03mKhySoTrRt4OFTbPvXcJRp/nAQ /vW2r5YpU3k1W9HMApGCjfKpzlnwt9J9eev5g8AdDgID/ZHY/4vLu0qpauL3pEfjEfyF jam8bg0I0iBj6+MIa6nY3klXHrw6hTT/zyXbWGWzQcOK9ublBBIMzbpwhJqNZ1+xz9x2 soNiJ0tqCQQloQWVkeGMmGBlnzcEE63J09G2gn1+u5co/FvaxTUBe7KxSUQdO7nj95cy zXjgSAW5A9AnB0V2qAd8vG02ePpBtLi8Yfb5w7RWknWeFjvtqGN2dMPCBidVxZbLvdKb kLLQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686456054; x=1689048054; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=K7ojDVQb8wlb1zIjNzPbfogxkjZQuGSJ21ECzkZG2ro=; b=aQzIfYOTHINGC7CSJZqloz7Nnc4BO6kXdwIdar8uxL04veIKUdZ/sbZdE7SQfjJRwj HiEx/CSwPpSj1lGrWTaFmE7QM4Znn3B9woEUI+2OY+1wS9rhgQuPH4btNCYzpMZRxAva wwJrdf2tSQR+vd+3lfr1SLnwZonBWZe7iQqN0iVeSu32ex0av4yc3uqTtFfuonOFTk1M pmB4HH8jEP+OJsF1T88XHX0yAOFNL9mqCAOPhTNSMOkrQHA26BjS6RaYHsrMCBlsplgB 0IN70ct2yyqTljFbCWgrgUFzZomke+c1GqB9+lOMsQZiniGGiSL53VEJDwKs/FGo+Vci IG6A== X-Gm-Message-State: AC+VfDzGiQ6B+RzU7levPe1tc+iiWdgvISggsJWL8PBDuzKUHm8l8X+T QN/fvx9+DthvG0kAcvYgro+DJG2GXtkD7/wV8/k= X-Google-Smtp-Source: ACHHUZ7XTDnWrN1qnIeQATadOwfqrqOALMEJkFIEWkWLOsh5alqr8mnRYIwenuMoEmCPBNAxVQivHJpcEU5D4vmwUuU= X-Received: by 2002:a05:620a:4914:b0:75d:7611:c381 with SMTP id ed20-20020a05620a491400b0075d7611c381mr6949293qkb.51.1686456053771; Sat, 10 Jun 2023 21:00:53 -0700 (PDT) MIME-Version: 1.0 References: <78899eac-9de8-3626-8f40-98f993984f95@xen.org> In-Reply-To: From: Jiatong Shen Date: Sun, 11 Jun 2023 12:00:42 +0800 Message-ID: Subject: Re: Asking for help to debug xen efi on Kunpeng machine To: Julien Grall Cc: Stefano Stabellini , xen-users@lists.xenproject.org, xen-devel@lists.xenproject.org, bertrand.marquis@arm.com Content-Type: multipart/mixed; boundary="0000000000000400aa05fdd2a646" --0000000000000400aa05fdd2a646 Content-Type: multipart/alternative; boundary="0000000000000400a905fdd2a644" --0000000000000400a905fdd2a644 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Hello Stefano, I am able to obtain some serial logging (by enabling debugging and verbose debugging messages, hopefully select the right option). The message looks like (XEN) *** Serial input to DOM0 (type 'CTRL-a' three times to switch input) (XEN) Freed 372kB init memory. (XEN) d0v0: vGICD: unhandled word write 0x000000ffffffff to ICACTIVER4 (XEN) d0v0: vGICD: unhandled word write 0x000000ffffffff to ICACTIVER8 (XEN) d0v0: vGICD: unhandled word write 0x000000ffffffff to ICACTIVER12 (XEN) d0v0: vGICD: unhandled word write 0x000000ffffffff to ICACTIVER16 (XEN) d0v0: vGICD: unhandled word write 0x000000ffffffff to ICACTIVER20 (XEN) d0v0: vGICD: unhandled word write 0x000000ffffffff to ICACTIVER24 (XEN) d0v0: vGICD: unhandled word write 0x000000ffffffff to ICACTIVER28 (XEN) d0v0: vGICD: unhandled word write 0x000000ffffffff to ICACTIVER32 (XEN) d0v0: vGICD: unhandled word write 0x000000ffffffff to ICACTIVER36 (XEN) d0v0: vGICD: unhandled word write 0x000000ffffffff to ICACTIVER40 Could you help find out where it is wrong ? Thank you very much for the help! Best Regards, Jiatong Shen On Sat, Jun 10, 2023 at 7:15=E2=80=AFAM Jiatong Shen wrote: > Hello Julien, > > Thank you very much for your help! > > Best, > > Jiatong Shen > > On Fri, Jun 9, 2023 at 4:48=E2=80=AFPM Julien Grall wrot= e: > >> Hello, >> >> On 09/06/2023 03:32, Jiatong Shen wrote: >> > Thank you for your answer. Can you teach me how to verify if acpi is >> > enabled? >> >> You usually look at the .config. But I am not sure if this is provided >> by the Debian package. If not, then your best option would be to build >> your own Xen. To select ACPI, you want to use the menuconfig and select >> UNSUPPORTED and ACPI. >> >> Cheers, >> >> -- >> Julien Grall >> > > > -- > > Best Regards, > > Jiatong Shen > --=20 Best Regards, Jiatong Shen --0000000000000400a905fdd2a644 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Hello Stefano,

=C2=A0 =C2=A0 I am able = to obtain some serial logging (by enabling debugging and verbose debugging = messages, hopefully select the right option). The message looks like=C2=A0<= /div>

(XEN) *** Serial input to DOM0 (type 'CTRL-a&#= 39; three times to switch input)
(XEN) Freed 372kB init memory.
(XEN)= d0v0: vGICD: unhandled word write 0x000000ffffffff to ICACTIVER4
(XEN) = d0v0: vGICD: unhandled word write 0x000000ffffffff to ICACTIVER8
(XEN) d= 0v0: vGICD: unhandled word write 0x000000ffffffff to ICACTIVER12
(XEN) d= 0v0: vGICD: unhandled word write 0x000000ffffffff to ICACTIVER16
(XEN) d= 0v0: vGICD: unhandled word write 0x000000ffffffff to ICACTIVER20
(XEN) d= 0v0: vGICD: unhandled word write 0x000000ffffffff to ICACTIVER24
(XEN) d= 0v0: vGICD: unhandled word write 0x000000ffffffff to ICACTIVER28
(XEN) d= 0v0: vGICD: unhandled word write 0x000000ffffffff to ICACTIVER32
(XEN) d= 0v0: vGICD: unhandled word write 0x000000ffffffff to ICACTIVER36
(XEN) d= 0v0: vGICD: unhandled word write 0x000000ffffffff to ICACTIVER40
<= div>
Could you help find out where it is wrong ? Thank you ve= ry much for the help!

Best Regards,
Jiat= ong Shen




--

Best Regards,

Jiatong Shen=
--0000000000000400a905fdd2a644-- --0000000000000400aa05fdd2a646 Content-Type: application/octet-stream; name="xen-4.17.log" Content-Disposition: attachment; filename="xen-4.17.log" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_liqwdns50 IFhlbiA0LjE3LjANCihYRU4pIFhlbiB2ZXJzaW9uIDQuMTcuMCAocm9vdEApIChnY2MgKERlYmlh biAxMC4yLjEtNikgMTAuMi4xIDIwMjEwMTEwKSBkZWJ1Zz1uIFNhdCBKdW4gMTAgMjM6NDM6MzEg RURUIDIwMjMNCihYRU4pIExhdGVzdCBDaGFuZ2VTZXQ6DQooWEVOKSBQcm9jZXNzb3I6IDAwMDAw MDAwNDgxZmQwMTA6ICJVbmtub3duIiwgdmFyaWFudDogMHgxLCBwYXJ0IDB4ZDAxLHJldiAweDAN CihYRU4pIDY0LWJpdCBFeGVjdXRpb246DQooWEVOKSAgIFByb2Nlc3NvciBGZWF0dXJlczogMDAw MDAxMDAxMTExMTExMSAwMDAwMDAwMDAwMDAwMDAwDQooWEVOKSAgICAgRXhjZXB0aW9uIExldmVs czogRUwzOjY0IEVMMjo2NCBFTDE6NjQgRUwwOjY0DQooWEVOKSAgICAgRXh0ZW5zaW9uczogRmxv YXRpbmdQb2ludCBBZHZhbmNlZFNJTUQgR0lDdjMtU3lzUmVnDQooWEVOKSAgIERlYnVnIEZlYXR1 cmVzOiAwMDAwMDAwMTEwMzA1NDA4IDAwMDAwMDAwMDAwMDAwMDANCihYRU4pICAgQXV4aWxpYXJ5 IEZlYXR1cmVzOiAwMDAwMDAwMDAwMDAwMDAwIDAwMDAwMDAwMDAwMDAwMDANCihYRU4pICAgTWVt b3J5IE1vZGVsIEZlYXR1cmVzOiAwMDAwMDAwMDAwMTAxMTI1IDAwMDAwMDAwMTAyMTExMjINCihY RU4pICAgSVNBIEZlYXR1cmVzOiAgMDAwMTEwMDAxMDIxMTEyMCAwMDAwMDAwMDAwMDExMDAxDQoo WEVOKSAzMi1iaXQgRXhlY3V0aW9uOiBVbnN1cHBvcnRlZA0KKFhFTikgOTYgQ1BVcyBlbmFibGVk LCA5NiBDUFVzIHRvdGFsDQooWEVOKSBHZW5lcmljIFRpbWVyIElSUTogcGh5cz0zMCBoeXA9MjYg dmlydD0yNyBGcmVxOiAxMDAwMDAgS0h6DQooWEVOKSBHSUN2MyBpbml0aWFsaXphdGlvbjoNCihY RU4pICAgICAgIGdpY19kaXN0X2FkZHI9MHgwMDAwMDBhZTAwMDAwMA0KKFhFTikgICAgICAgZ2lj X21haW50ZW5hbmNlX2lycT0yNQ0KKFhFTikgICAgICAgZ2ljX3JkaXN0X3N0cmlkZT0wDQooWEVO KSAgICAgICBnaWNfcmRpc3RfcmVnaW9ucz05Ng0KKFhFTikgICAgICAgcmVkaXN0cmlidXRvciBy ZWdpb25zOg0KKFhFTikgICAgICAgICAtIHJlZ2lvbiAwOiAweDAwMDAwMGFlMTAwMDAwIC0gMHgw MDAwMDBhZTE0MDAwMA0KKFhFTikgICAgICAgICAtIHJlZ2lvbiAxOiAweDAwMDAwMGFlMTQwMDAw IC0gMHgwMDAwMDBhZTE4MDAwMA0KKFhFTikgICAgICAgICAtIHJlZ2lvbiAyOiAweDAwMDAwMGFl MTgwMDAwIC0gMHgwMDAwMDBhZTFjMDAwMA0KKFhFTikgICAgICAgICAtIHJlZ2lvbiAzOiAweDAw MDAwMGFlMWMwMDAwIC0gMHgwMDAwMDBhZTIwMDAwMA0KKFhFTikgICAgICAgICAtIHJlZ2lvbiA0 OiAweDAwMDAwMGFlMjAwMDAwIC0gMHgwMDAwMDBhZTI0MDAwMA0KKFhFTikgICAgICAgICAtIHJl Z2lvbiA1OiAweDAwMDAwMGFlMjQwMDAwIC0gMHgwMDAwMDBhZTI4MDAwMA0KKFhFTikgICAgICAg ICAtIHJlZ2lvbiA2OiAweDAwMDAwMGFlMjgwMDAwIC0gMHgwMDAwMDBhZTJjMDAwMA0KKFhFTikg ICAgICAgICAtIHJlZ2lvbiA3OiAweDAwMDAwMGFlMmMwMDAwIC0gMHgwMDAwMDBhZTMwMDAwMA0K KFhFTikgICAgICAgICAtIHJlZ2lvbiA4OiAweDAwMDAwMGFlMzAwMDAwIC0gMHgwMDAwMDBhZTM0 MDAwMA0KKFhFTikgICAgICAgICAtIHJlZ2lvbiA5OiAweDAwMDAwMGFlMzQwMDAwIC0gMHgwMDAw MDBhZTM4MDAwMA0KKFhFTikgICAgICAgICAtIHJlZ2lvbiAxMDogMHgwMDAwMDBhZTM4MDAwMCAt IDB4MDAwMDAwYWUzYzAwMDANCihYRU4pICAgICAgICAgLSByZWdpb24gMTE6IDB4MDAwMDAwYWUz YzAwMDAgLSAweDAwMDAwMGFlNDAwMDAwDQooWEVOKSAgICAgICAgIC0gcmVnaW9uIDEyOiAweDAw MDAwMGFlNDAwMDAwIC0gMHgwMDAwMDBhZTQ0MDAwMA0KKFhFTikgICAgICAgICAtIHJlZ2lvbiAx MzogMHgwMDAwMDBhZTQ0MDAwMCAtIDB4MDAwMDAwYWU0ODAwMDANCihYRU4pICAgICAgICAgLSBy ZWdpb24gMTQ6IDB4MDAwMDAwYWU0ODAwMDAgLSAweDAwMDAwMGFlNGMwMDAwDQooWEVOKSAgICAg ICAgIC0gcmVnaW9uIDE1OiAweDAwMDAwMGFlNGMwMDAwIC0gMHgwMDAwMDBhZTUwMDAwMA0KKFhF TikgICAgICAgICAtIHJlZ2lvbiAxNjogMHgwMDAwMDBhZTUwMDAwMCAtIDB4MDAwMDAwYWU1NDAw MDANCihYRU4pICAgICAgICAgLSByZWdpb24gMTc6IDB4MDAwMDAwYWU1NDAwMDAgLSAweDAwMDAw MGFlNTgwMDAwDQooWEVOKSAgICAgICAgIC0gcmVnaW9uIDE4OiAweDAwMDAwMGFlNTgwMDAwIC0g MHgwMDAwMDBhZTVjMDAwMA0KKFhFTikgICAgICAgICAtIHJlZ2lvbiAxOTogMHgwMDAwMDBhZTVj MDAwMCAtIDB4MDAwMDAwYWU2MDAwMDANCihYRU4pICAgICAgICAgLSByZWdpb24gMjA6IDB4MDAw MDAwYWU2MDAwMDAgLSAweDAwMDAwMGFlNjQwMDAwDQooWEVOKSAgICAgICAgIC0gcmVnaW9uIDIx OiAweDAwMDAwMGFlNjQwMDAwIC0gMHgwMDAwMDBhZTY4MDAwMA0KKFhFTikgICAgICAgICAtIHJl Z2lvbiAyMjogMHgwMDAwMDBhZTY4MDAwMCAtIDB4MDAwMDAwYWU2YzAwMDANCihYRU4pICAgICAg ICAgLSByZWdpb24gMjM6IDB4MDAwMDAwYWU2YzAwMDAgLSAweDAwMDAwMGFlNzAwMDAwDQooWEVO KSAgICAgICAgIC0gcmVnaW9uIDI0OiAweDAwMDAwMGFhMTAwMDAwIC0gMHgwMDAwMDBhYTE0MDAw MA0KKFhFTikgICAgICAgICAtIHJlZ2lvbiAyNTogMHgwMDAwMDBhYTE0MDAwMCAtIDB4MDAwMDAw YWExODAwMDANCihYRU4pICAgICAgICAgLSByZWdpb24gMjY6IDB4MDAwMDAwYWExODAwMDAgLSAw eDAwMDAwMGFhMWMwMDAwDQooWEVOKSAgICAgICAgIC0gcmVnaW9uIDI3OiAweDAwMDAwMGFhMWMw MDAwIC0gMHgwMDAwMDBhYTIwMDAwMA0KKFhFTikgICAgICAgICAtIHJlZ2lvbiAyODogMHgwMDAw MDBhYTIwMDAwMCAtIDB4MDAwMDAwYWEyNDAwMDANCihYRU4pICAgICAgICAgLSByZWdpb24gMjk6 IDB4MDAwMDAwYWEyNDAwMDAgLSAweDAwMDAwMGFhMjgwMDAwDQooWEVOKSAgICAgICAgIC0gcmVn aW9uIDMwOiAweDAwMDAwMGFhMjgwMDAwIC0gMHgwMDAwMDBhYTJjMDAwMA0KKFhFTikgICAgICAg ICAtIHJlZ2lvbiAzMTogMHgwMDAwMDBhYTJjMDAwMCAtIDB4MDAwMDAwYWEzMDAwMDANCihYRU4p ICAgICAgICAgLSByZWdpb24gMzI6IDB4MDAwMDAwYWEzMDAwMDAgLSAweDAwMDAwMGFhMzQwMDAw DQooWEVOKSAgICAgICAgIC0gcmVnaW9uIDMzOiAweDAwMDAwMGFhMzQwMDAwIC0gMHgwMDAwMDBh YTM4MDAwMA0KKFhFTikgICAgICAgICAtIHJlZ2lvbiAzNDogMHgwMDAwMDBhYTM4MDAwMCAtIDB4 MDAwMDAwYWEzYzAwMDANCihYRU4pICAgICAgICAgLSByZWdpb24gMzU6IDB4MDAwMDAwYWEzYzAw MDAgLSAweDAwMDAwMGFhNDAwMDAwDQooWEVOKSAgICAgICAgIC0gcmVnaW9uIDM2OiAweDAwMDAw MGFhNDAwMDAwIC0gMHgwMDAwMDBhYTQ0MDAwMA0KKFhFTikgICAgICAgICAtIHJlZ2lvbiAzNzog MHgwMDAwMDBhYTQ0MDAwMCAtIDB4MDAwMDAwYWE0ODAwMDANCihYRU4pICAgICAgICAgLSByZWdp b24gMzg6IDB4MDAwMDAwYWE0ODAwMDAgLSAweDAwMDAwMGFhNGMwMDAwDQooWEVOKSAgICAgICAg IC0gcmVnaW9uIDM5OiAweDAwMDAwMGFhNGMwMDAwIC0gMHgwMDAwMDBhYTUwMDAwMA0KKFhFTikg ICAgICAgICAtIHJlZ2lvbiA0MDogMHgwMDAwMDBhYTUwMDAwMCAtIDB4MDAwMDAwYWE1NDAwMDAN CihYRU4pICAgICAgICAgLSByZWdpb24gNDE6IDB4MDAwMDAwYWE1NDAwMDAgLSAweDAwMDAwMGFh NTgwMDAwDQooWEVOKSAgICAgICAgIC0gcmVnaW9uIDQyOiAweDAwMDAwMGFhNTgwMDAwIC0gMHgw MDAwMDBhYTVjMDAwMA0KKFhFTikgICAgICAgICAtIHJlZ2lvbiA0MzogMHgwMDAwMDBhYTVjMDAw MCAtIDB4MDAwMDAwYWE2MDAwMDANCihYRU4pICAgICAgICAgLSByZWdpb24gNDQ6IDB4MDAwMDAw YWE2MDAwMDAgLSAweDAwMDAwMGFhNjQwMDAwDQooWEVOKSAgICAgICAgIC0gcmVnaW9uIDQ1OiAw eDAwMDAwMGFhNjQwMDAwIC0gMHgwMDAwMDBhYTY4MDAwMA0KKFhFTikgICAgICAgICAtIHJlZ2lv biA0NjogMHgwMDAwMDBhYTY4MDAwMCAtIDB4MDAwMDAwYWE2YzAwMDANCihYRU4pICAgICAgICAg LSByZWdpb24gNDc6IDB4MDAwMDAwYWE2YzAwMDAgLSAweDAwMDAwMGFhNzAwMDAwDQooWEVOKSAg ICAgICAgIC0gcmVnaW9uIDQ4OiAweDAwMjAwMGFlMTAwMDAwIC0gMHgwMDIwMDBhZTE0MDAwMA0K KFhFTikgICAgICAgICAtIHJlZ2lvbiA0OTogMHgwMDIwMDBhZTE0MDAwMCAtIDB4MDAyMDAwYWUx ODAwMDANCihYRU4pICAgICAgICAgLSByZWdpb24gNTA6IDB4MDAyMDAwYWUxODAwMDAgLSAweDAw MjAwMGFlMWMwMDAwDQooWEVOKSAgICAgICAgIC0gcmVnaW9uIDUxOiAweDAwMjAwMGFlMWMwMDAw IC0gMHgwMDIwMDBhZTIwMDAwMA0KKFhFTikgICAgICAgICAtIHJlZ2lvbiA1MjogMHgwMDIwMDBh ZTIwMDAwMCAtIDB4MDAyMDAwYWUyNDAwMDANCihYRU4pICAgICAgICAgLSByZWdpb24gNTM6IDB4 MDAyMDAwYWUyNDAwMDAgLSAweDAwMjAwMGFlMjgwMDAwDQooWEVOKSAgICAgICAgIC0gcmVnaW9u IDU0OiAweDAwMjAwMGFlMjgwMDAwIC0gMHgwMDIwMDBhZTJjMDAwMA0KKFhFTikgICAgICAgICAt IHJlZ2lvbiA1NTogMHgwMDIwMDBhZTJjMDAwMCAtIDB4MDAyMDAwYWUzMDAwMDANCihYRU4pICAg ICAgICAgLSByZWdpb24gNTY6IDB4MDAyMDAwYWUzMDAwMDAgLSAweDAwMjAwMGFlMzQwMDAwDQoo WEVOKSAgICAgICAgIC0gcmVnaW9uIDU3OiAweDAwMjAwMGFlMzQwMDAwIC0gMHgwMDIwMDBhZTM4 MDAwMA0KKFhFTikgICAgICAgICAtIHJlZ2lvbiA1ODogMHgwMDIwMDBhZTM4MDAwMCAtIDB4MDAy MDAwYWUzYzAwMDANCihYRU4pICAgICAgICAgLSByZWdpb24gNTk6IDB4MDAyMDAwYWUzYzAwMDAg LSAweDAwMjAwMGFlNDAwMDAwDQooWEVOKSAgICAgICAgIC0gcmVnaW9uIDYwOiAweDAwMjAwMGFl NDAwMDAwIC0gMHgwMDIwMDBhZTQ0MDAwMA0KKFhFTikgICAgICAgICAtIHJlZ2lvbiA2MTogMHgw MDIwMDBhZTQ0MDAwMCAtIDB4MDAyMDAwYWU0ODAwMDANCihYRU4pICAgICAgICAgLSByZWdpb24g NjI6IDB4MDAyMDAwYWU0ODAwMDAgLSAweDAwMjAwMGFlNGMwMDAwDQooWEVOKSAgICAgICAgIC0g cmVnaW9uIDYzOiAweDAwMjAwMGFlNGMwMDAwIC0gMHgwMDIwMDBhZTUwMDAwMA0KKFhFTikgICAg ICAgICAtIHJlZ2lvbiA2NDogMHgwMDIwMDBhZTUwMDAwMCAtIDB4MDAyMDAwYWU1NDAwMDANCihY RU4pICAgICAgICAgLSByZWdpb24gNjU6IDB4MDAyMDAwYWU1NDAwMDAgLSAweDAwMjAwMGFlNTgw MDAwDQooWEVOKSAgICAgICAgIC0gcmVnaW9uIDY2OiAweDAwMjAwMGFlNTgwMDAwIC0gMHgwMDIw MDBhZTVjMDAwMA0KKFhFTikgICAgICAgICAtIHJlZ2lvbiA2NzogMHgwMDIwMDBhZTVjMDAwMCAt IDB4MDAyMDAwYWU2MDAwMDANCihYRU4pICAgICAgICAgLSByZWdpb24gNjg6IDB4MDAyMDAwYWU2 MDAwMDAgLSAweDAwMjAwMGFlNjQwMDAwDQooWEVOKSAgICAgICAgIC0gcmVnaW9uIDY5OiAweDAw MjAwMGFlNjQwMDAwIC0gMHgwMDIwMDBhZTY4MDAwMA0KKFhFTikgICAgICAgICAtIHJlZ2lvbiA3 MDogMHgwMDIwMDBhZTY4MDAwMCAtIDB4MDAyMDAwYWU2YzAwMDANCihYRU4pICAgICAgICAgLSBy ZWdpb24gNzE6IDB4MDAyMDAwYWU2YzAwMDAgLSAweDAwMjAwMGFlNzAwMDAwDQooWEVOKSAgICAg ICAgIC0gcmVnaW9uIDcyOiAweDAwMjAwMGFhMTAwMDAwIC0gMHgwMDIwMDBhYTE0MDAwMA0KKFhF TikgICAgICAgICAtIHJlZ2lvbiA3MzogMHgwMDIwMDBhYTE0MDAwMCAtIDB4MDAyMDAwYWExODAw MDANCihYRU4pICAgICAgICAgLSByZWdpb24gNzQ6IDB4MDAyMDAwYWExODAwMDAgLSAweDAwMjAw MGFhMWMwMDAwDQooWEVOKSAgICAgICAgIC0gcmVnaW9uIDc1OiAweDAwMjAwMGFhMWMwMDAwIC0g MHgwMDIwMDBhYTIwMDAwMA0KKFhFTikgICAgICAgICAtIHJlZ2lvbiA3NjogMHgwMDIwMDBhYTIw MDAwMCAtIDB4MDAyMDAwYWEyNDAwMDANCihYRU4pICAgICAgICAgLSByZWdpb24gNzc6IDB4MDAy MDAwYWEyNDAwMDAgLSAweDAwMjAwMGFhMjgwMDAwDQooWEVOKSAgICAgICAgIC0gcmVnaW9uIDc4 OiAweDAwMjAwMGFhMjgwMDAwIC0gMHgwMDIwMDBhYTJjMDAwMA0KKFhFTikgICAgICAgICAtIHJl Z2lvbiA3OTogMHgwMDIwMDBhYTJjMDAwMCAtIDB4MDAyMDAwYWEzMDAwMDANCihYRU4pICAgICAg ICAgLSByZWdpb24gODA6IDB4MDAyMDAwYWEzMDAwMDAgLSAweDAwMjAwMGFhMzQwMDAwDQooWEVO KSAgICAgICAgIC0gcmVnaW9uIDgxOiAweDAwMjAwMGFhMzQwMDAwIC0gMHgwMDIwMDBhYTM4MDAw MA0KKFhFTikgICAgICAgICAtIHJlZ2lvbiA4MjogMHgwMDIwMDBhYTM4MDAwMCAtIDB4MDAyMDAw YWEzYzAwMDANCihYRU4pICAgICAgICAgLSByZWdpb24gODM6IDB4MDAyMDAwYWEzYzAwMDAgLSAw eDAwMjAwMGFhNDAwMDAwDQooWEVOKSAgICAgICAgIC0gcmVnaW9uIDg0OiAweDAwMjAwMGFhNDAw MDAwIC0gMHgwMDIwMDBhYTQ0MDAwMA0KKFhFTikgICAgICAgICAtIHJlZ2lvbiA4NTogMHgwMDIw MDBhYTQ0MDAwMCAtIDB4MDAyMDAwYWE0ODAwMDANCihYRU4pICAgICAgICAgLSByZWdpb24gODY6 IDB4MDAyMDAwYWE0ODAwMDAgLSAweDAwMjAwMGFhNGMwMDAwDQooWEVOKSAgICAgICAgIC0gcmVn aW9uIDg3OiAweDAwMjAwMGFhNGMwMDAwIC0gMHgwMDIwMDBhYTUwMDAwMA0KKFhFTikgICAgICAg ICAtIHJlZ2lvbiA4ODogMHgwMDIwMDBhYTUwMDAwMCAtIDB4MDAyMDAwYWE1NDAwMDANCihYRU4p ICAgICAgICAgLSByZWdpb24gODk6IDB4MDAyMDAwYWE1NDAwMDAgLSAweDAwMjAwMGFhNTgwMDAw DQooWEVOKSAgICAgICAgIC0gcmVnaW9uIDkwOiAweDAwMjAwMGFhNTgwMDAwIC0gMHgwMDIwMDBh YTVjMDAwMA0KKFhFTikgICAgICAgICAtIHJlZ2lvbiA5MTogMHgwMDIwMDBhYTVjMDAwMCAtIDB4 MDAyMDAwYWE2MDAwMDANCihYRU4pICAgICAgICAgLSByZWdpb24gOTI6IDB4MDAyMDAwYWE2MDAw MDAgLSAweDAwMjAwMGFhNjQwMDAwDQooWEVOKSAgICAgICAgIC0gcmVnaW9uIDkzOiAweDAwMjAw MGFhNjQwMDAwIC0gMHgwMDIwMDBhYTY4MDAwMA0KKFhFTikgICAgICAgICAtIHJlZ2lvbiA5NDog MHgwMDIwMDBhYTY4MDAwMCAtIDB4MDAyMDAwYWE2YzAwMDANCihYRU4pICAgICAgICAgLSByZWdp b24gOTU6IDB4MDAyMDAwYWE2YzAwMDAgLSAweDAwMjAwMGFhNzAwMDAwDQooWEVOKSBHSUN2MyBj b21wYXRpYmxlIHdpdGggR0lDdjIgY2Jhc2UgMHgwMDAwMDA5YjAwMDAwMCB2YmFzZSAweDAwMDAw MDliMDIwMDAwDQooWEVOKSBHSUN2MzogNjcyIGxpbmVzLCAoSUlEIDAwMDMxNzM2KS4NCihYRU4p IEdJQ3YzOiBDUFUwOiBGb3VuZCByZWRpc3RyaWJ1dG9yIGluIHJlZ2lvbiAwIEAwMDAwMDAwMDQw MDM3MDAwDQooWEVOKSBYU00gRnJhbWV3b3JrIHYxLjAuMSBpbml0aWFsaXplZA0KKFhFTikgSW5p dGlhbGlzaW5nIFhTTSBTSUxPIG1vZGUNCihYRU4pIFVzaW5nIHNjaGVkdWxlcjogU01QIENyZWRp dCBTY2hlZHVsZXIgcmV2MiAoY3JlZGl0MikNCihYRU4pIEluaXRpYWxpemluZyBDcmVkaXQyIHNj aGVkdWxlcg0KKFhFTikgQWxsb2NhdGVkIGNvbnNvbGUgcmluZyBvZiAyNTYgS2lCLg0KKFhFTikg QnJpbmdpbmcgdXAgQ1BVMQ0KKFhFTikgR0lDdjM6IENQVTE6IEZvdW5kIHJlZGlzdHJpYnV0b3Ig aW4gcmVnaW9uIDEgQDAwMDAwMDAwNDAwNzgwMDANCihYRU4pIEJyaW5naW5nIHVwIENQVTINCihY RU4pIEdJQ3YzOiBDUFUyOiBGb3VuZCByZWRpc3RyaWJ1dG9yIGluIHJlZ2lvbiAyIEAwMDAwMDAw MDQwMGI5MDAwDQooWEVOKSBCcmluZ2luZyB1cCBDUFUzDQooWEVOKSBHSUN2MzogQ1BVMzogRm91 bmQgcmVkaXN0cmlidXRvciBpbiByZWdpb24gMyBAMDAwMDAwMDA0MDBmYTAwMA0KKFhFTikgQnJp bmdpbmcgdXAgQ1BVNA0KKFhFTikgR0lDdjM6IENQVTQ6IEZvdW5kIHJlZGlzdHJpYnV0b3IgaW4g cmVnaW9uIDQgQDAwMDAwMDAwNDAxM2IwMDANCihYRU4pIEJyaW5naW5nIHVwIENQVTUNCihYRU4p IEdJQ3YzOiBDUFU1OiBGb3VuZCByZWRpc3RyaWJ1dG9yIGluIHJlZ2lvbiA1IEAwMDAwMDAwMDQw MTdjMDAwDQooWEVOKSBCcmluZ2luZyB1cCBDUFU2DQooWEVOKSBHSUN2MzogQ1BVNjogRm91bmQg cmVkaXN0cmlidXRvciBpbiByZWdpb24gNiBAMDAwMDAwMDA0MDFiZDAwMA0KKFhFTikgQnJpbmdp bmcgdXAgQ1BVNw0KKFhFTikgR0lDdjM6IENQVTc6IEZvdW5kIHJlZGlzdHJpYnV0b3IgaW4gcmVn aW9uIDcgQDAwMDAwMDAwNDAxZmUwMDANCihYRU4pIEJyaW5naW5nIHVwIENQVTgNCihYRU4pIEdJ Q3YzOiBDUFU4OiBGb3VuZCByZWRpc3RyaWJ1dG9yIGluIHJlZ2lvbiA4IEAwMDAwMDAwMDQwMjNm MDAwDQooWEVOKSBCcmluZ2luZyB1cCBDUFU5DQooWEVOKSBHSUN2MzogQ1BVOTogRm91bmQgcmVk aXN0cmlidXRvciBpbiByZWdpb24gOSBAMDAwMDAwMDA0MDI4MDAwMA0KKFhFTikgQnJpbmdpbmcg dXAgQ1BVMTANCihYRU4pIEdJQ3YzOiBDUFUxMDogRm91bmQgcmVkaXN0cmlidXRvciBpbiByZWdp b24gMTAgQDAwMDAwMDAwNDAyYzEwMDANCihYRU4pIEJyaW5naW5nIHVwIENQVTExDQooWEVOKSBH SUN2MzogQ1BVMTE6IEZvdW5kIHJlZGlzdHJpYnV0b3IgaW4gcmVnaW9uIDExIEAwMDAwMDAwMDQw MzAyMDAwDQooWEVOKSBCcmluZ2luZyB1cCBDUFUxMg0KKFhFTikgR0lDdjM6IENQVTEyOiBGb3Vu ZCByZWRpc3RyaWJ1dG9yIGluIHJlZ2lvbiAxMiBAMDAwMDAwMDA0MDM0MzAwMA0KKFhFTikgQnJp bmdpbmcgdXAgQ1BVMTMNCihYRU4pIEdJQ3YzOiBDUFUxMzogRm91bmQgcmVkaXN0cmlidXRvciBp biByZWdpb24gMTMgQDAwMDAwMDAwNDAzODQwMDANCihYRU4pIEJyaW5naW5nIHVwIENQVTE0DQoo WEVOKSBHSUN2MzogQ1BVMTQ6IEZvdW5kIHJlZGlzdHJpYnV0b3IgaW4gcmVnaW9uIDE0IEAwMDAw MDAwMDQwM2M1MDAwDQooWEVOKSBCcmluZ2luZyB1cCBDUFUxNQ0KKFhFTikgR0lDdjM6IENQVTE1 OiBGb3VuZCByZWRpc3RyaWJ1dG9yIGluIHJlZ2lvbiAxNSBAMDAwMDAwMDA0MDQwNjAwMA0KKFhF TikgQnJpbmdpbmcgdXAgQ1BVMTYNCihYRU4pIEdJQ3YzOiBDUFUxNjogRm91bmQgcmVkaXN0cmli dXRvciBpbiByZWdpb24gMTYgQDAwMDAwMDAwNDA0NDcwMDANCihYRU4pIEJyaW5naW5nIHVwIENQ VTE3DQooWEVOKSBHSUN2MzogQ1BVMTc6IEZvdW5kIHJlZGlzdHJpYnV0b3IgaW4gcmVnaW9uIDE3 IEAwMDAwMDAwMDQwNDg4MDAwDQooWEVOKSBCcmluZ2luZyB1cCBDUFUxOA0KKFhFTikgR0lDdjM6 IENQVTE4OiBGb3VuZCByZWRpc3RyaWJ1dG9yIGluIHJlZ2lvbiAxOCBAMDAwMDAwMDA0MDRjOTAw MA0KKFhFTikgQnJpbmdpbmcgdXAgQ1BVMTkNCihYRU4pIEdJQ3YzOiBDUFUxOTogRm91bmQgcmVk aXN0cmlidXRvciBpbiByZWdpb24gMTkgQDAwMDAwMDAwNDA1MGEwMDANCihYRU4pIEJyaW5naW5n IHVwIENQVTIwDQooWEVOKSBHSUN2MzogQ1BVMjA6IEZvdW5kIHJlZGlzdHJpYnV0b3IgaW4gcmVn aW9uIDIwIEAwMDAwMDAwMDQwNTRiMDAwDQooWEVOKSBCcmluZ2luZyB1cCBDUFUyMQ0KKFhFTikg R0lDdjM6IENQVTIxOiBGb3VuZCByZWRpc3RyaWJ1dG9yIGluIHJlZ2lvbiAyMSBAMDAwMDAwMDA0 MDU4YzAwMA0KKFhFTikgQnJpbmdpbmcgdXAgQ1BVMjINCihYRU4pIEdJQ3YzOiBDUFUyMjogRm91 bmQgcmVkaXN0cmlidXRvciBpbiByZWdpb24gMjIgQDAwMDAwMDAwNDA1Y2QwMDANCihYRU4pIEJy aW5naW5nIHVwIENQVTIzDQooWEVOKSBHSUN2MzogQ1BVMjM6IEZvdW5kIHJlZGlzdHJpYnV0b3Ig aW4gcmVnaW9uIDIzIEAwMDAwMDAwMDQwNjBlMDAwDQooWEVOKSBCcmluZ2luZyB1cCBDUFUyNA0K KFhFTikgR0lDdjM6IENQVTI0OiBGb3VuZCByZWRpc3RyaWJ1dG9yIGluIHJlZ2lvbiAyNCBAMDAw MDAwMDA0MDY0ZjAwMA0KKFhFTikgQnJpbmdpbmcgdXAgQ1BVMjUNCihYRU4pIEdJQ3YzOiBDUFUy NTogRm91bmQgcmVkaXN0cmlidXRvciBpbiByZWdpb24gMjUgQDAwMDAwMDAwNDA2OTAwMDANCihY RU4pIEJyaW5naW5nIHVwIENQVTI2DQooWEVOKSBHSUN2MzogQ1BVMjY6IEZvdW5kIHJlZGlzdHJp YnV0b3IgaW4gcmVnaW9uIDI2IEAwMDAwMDAwMDQwNmQxMDAwDQooWEVOKSBCcmluZ2luZyB1cCBD UFUyNw0KKFhFTikgR0lDdjM6IENQVTI3OiBGb3VuZCByZWRpc3RyaWJ1dG9yIGluIHJlZ2lvbiAy NyBAMDAwMDAwMDA0MDcxMjAwMA0KKFhFTikgQnJpbmdpbmcgdXAgQ1BVMjgNCihYRU4pIEdJQ3Yz OiBDUFUyODogRm91bmQgcmVkaXN0cmlidXRvciBpbiByZWdpb24gMjggQDAwMDAwMDAwNDA3NTMw MDANCihYRU4pIEJyaW5naW5nIHVwIENQVTI5DQooWEVOKSBHSUN2MzogQ1BVMjk6IEZvdW5kIHJl ZGlzdHJpYnV0b3IgaW4gcmVnaW9uIDI5IEAwMDAwMDAwMDQwNzk0MDAwDQooWEVOKSBCcmluZ2lu ZyB1cCBDUFUzMA0KKFhFTikgR0lDdjM6IENQVTMwOiBGb3VuZCByZWRpc3RyaWJ1dG9yIGluIHJl Z2lvbiAzMCBAMDAwMDAwMDA0MDdkNTAwMA0KKFhFTikgQnJpbmdpbmcgdXAgQ1BVMzENCihYRU4p IEdJQ3YzOiBDUFUzMTogRm91bmQgcmVkaXN0cmlidXRvciBpbiByZWdpb24gMzEgQDAwMDAwMDAw NDA4MTYwMDANCihYRU4pIEJyaW5naW5nIHVwIENQVTMyDQooWEVOKSBHSUN2MzogQ1BVMzI6IEZv dW5kIHJlZGlzdHJpYnV0b3IgaW4gcmVnaW9uIDMyIEAwMDAwMDAwMDQwODU3MDAwDQooWEVOKSBC cmluZ2luZyB1cCBDUFUzMw0KKFhFTikgR0lDdjM6IENQVTMzOiBGb3VuZCByZWRpc3RyaWJ1dG9y IGluIHJlZ2lvbiAzMyBAMDAwMDAwMDA0MDg5ODAwMA0KKFhFTikgQnJpbmdpbmcgdXAgQ1BVMzQN CihYRU4pIEdJQ3YzOiBDUFUzNDogRm91bmQgcmVkaXN0cmlidXRvciBpbiByZWdpb24gMzQgQDAw MDAwMDAwNDA4ZDkwMDANCihYRU4pIEJyaW5naW5nIHVwIENQVTM1DQooWEVOKSBHSUN2MzogQ1BV MzU6IEZvdW5kIHJlZGlzdHJpYnV0b3IgaW4gcmVnaW9uIDM1IEAwMDAwMDAwMDQwOTFhMDAwDQoo WEVOKSBCcmluZ2luZyB1cCBDUFUzNg0KKFhFTikgR0lDdjM6IENQVTM2OiBGb3VuZCByZWRpc3Ry aWJ1dG9yIGluIHJlZ2lvbiAzNiBAMDAwMDAwMDA0MDk1YjAwMA0KKFhFTikgQnJpbmdpbmcgdXAg Q1BVMzcNCihYRU4pIEdJQ3YzOiBDUFUzNzogRm91bmQgcmVkaXN0cmlidXRvciBpbiByZWdpb24g MzcgQDAwMDAwMDAwNDA5OWMwMDANCihYRU4pIEJyaW5naW5nIHVwIENQVTM4DQooWEVOKSBHSUN2 MzogQ1BVMzg6IEZvdW5kIHJlZGlzdHJpYnV0b3IgaW4gcmVnaW9uIDM4IEAwMDAwMDAwMDQwOWRk MDAwDQooWEVOKSBCcmluZ2luZyB1cCBDUFUzOQ0KKFhFTikgR0lDdjM6IENQVTM5OiBGb3VuZCBy ZWRpc3RyaWJ1dG9yIGluIHJlZ2lvbiAzOSBAMDAwMDAwMDA0MGExZTAwMA0KKFhFTikgQnJpbmdp bmcgdXAgQ1BVNDANCihYRU4pIEdJQ3YzOiBDUFU0MDogRm91bmQgcmVkaXN0cmlidXRvciBpbiBy ZWdpb24gNDAgQDAwMDAwMDAwNDBhNWYwMDANCihYRU4pIEJyaW5naW5nIHVwIENQVTQxDQooWEVO KSBHSUN2MzogQ1BVNDE6IEZvdW5kIHJlZGlzdHJpYnV0b3IgaW4gcmVnaW9uIDQxIEAwMDAwMDAw MDQwYWEwMDAwDQooWEVOKSBCcmluZ2luZyB1cCBDUFU0Mg0KKFhFTikgR0lDdjM6IENQVTQyOiBG b3VuZCByZWRpc3RyaWJ1dG9yIGluIHJlZ2lvbiA0MiBAMDAwMDAwMDA0MGFlMTAwMA0KKFhFTikg QnJpbmdpbmcgdXAgQ1BVNDMNCihYRU4pIEdJQ3YzOiBDUFU0MzogRm91bmQgcmVkaXN0cmlidXRv ciBpbiByZWdpb24gNDMgQDAwMDAwMDAwNDBiMjIwMDANCihYRU4pIEJyaW5naW5nIHVwIENQVTQ0 DQooWEVOKSBHSUN2MzogQ1BVNDQ6IEZvdW5kIHJlZGlzdHJpYnV0b3IgaW4gcmVnaW9uIDQ0IEAw MDAwMDAwMDQwYjYzMDAwDQooWEVOKSBCcmluZ2luZyB1cCBDUFU0NQ0KKFhFTikgR0lDdjM6IENQ VTQ1OiBGb3VuZCByZWRpc3RyaWJ1dG9yIGluIHJlZ2lvbiA0NSBAMDAwMDAwMDA0MGJhNDAwMA0K KFhFTikgQnJpbmdpbmcgdXAgQ1BVNDYNCihYRU4pIEdJQ3YzOiBDUFU0NjogRm91bmQgcmVkaXN0 cmlidXRvciBpbiByZWdpb24gNDYgQDAwMDAwMDAwNDBiZTUwMDANCihYRU4pIEJyaW5naW5nIHVw IENQVTQ3DQooWEVOKSBHSUN2MzogQ1BVNDc6IEZvdW5kIHJlZGlzdHJpYnV0b3IgaW4gcmVnaW9u IDQ3IEAwMDAwMDAwMDQwYzI2MDAwDQooWEVOKSBCcmluZ2luZyB1cCBDUFU0OA0KKFhFTikgR0lD djM6IENQVTQ4OiBGb3VuZCByZWRpc3RyaWJ1dG9yIGluIHJlZ2lvbiA0OCBAMDAwMDAwMDA0MGM2 NzAwMA0KKFhFTikgQnJpbmdpbmcgdXAgQ1BVNDkNCihYRU4pIEdJQ3YzOiBDUFU0OTogRm91bmQg cmVkaXN0cmlidXRvciBpbiByZWdpb24gNDkgQDAwMDAwMDAwNDBjYTgwMDANCihYRU4pIEJyaW5n aW5nIHVwIENQVTUwDQooWEVOKSBHSUN2MzogQ1BVNTA6IEZvdW5kIHJlZGlzdHJpYnV0b3IgaW4g cmVnaW9uIDUwIEAwMDAwMDAwMDQwY2U5MDAwDQooWEVOKSBCcmluZ2luZyB1cCBDUFU1MQ0KKFhF TikgR0lDdjM6IENQVTUxOiBGb3VuZCByZWRpc3RyaWJ1dG9yIGluIHJlZ2lvbiA1MSBAMDAwMDAw MDA0MGQyYTAwMA0KKFhFTikgQnJpbmdpbmcgdXAgQ1BVNTINCihYRU4pIEdJQ3YzOiBDUFU1Mjog Rm91bmQgcmVkaXN0cmlidXRvciBpbiByZWdpb24gNTIgQDAwMDAwMDAwNDBkNmIwMDANCihYRU4p IEJyaW5naW5nIHVwIENQVTUzDQooWEVOKSBHSUN2MzogQ1BVNTM6IEZvdW5kIHJlZGlzdHJpYnV0 b3IgaW4gcmVnaW9uIDUzIEAwMDAwMDAwMDQwZGFjMDAwDQooWEVOKSBCcmluZ2luZyB1cCBDUFU1 NA0KKFhFTikgR0lDdjM6IENQVTU0OiBGb3VuZCByZWRpc3RyaWJ1dG9yIGluIHJlZ2lvbiA1NCBA MDAwMDAwMDA0MGRlZDAwMA0KKFhFTikgQnJpbmdpbmcgdXAgQ1BVNTUNCihYRU4pIEdJQ3YzOiBD UFU1NTogRm91bmQgcmVkaXN0cmlidXRvciBpbiByZWdpb24gNTUgQDAwMDAwMDAwNDBlMmUwMDAN CihYRU4pIEJyaW5naW5nIHVwIENQVTU2DQooWEVOKSBHSUN2MzogQ1BVNTY6IEZvdW5kIHJlZGlz dHJpYnV0b3IgaW4gcmVnaW9uIDU2IEAwMDAwMDAwMDQwZTZmMDAwDQooWEVOKSBCcmluZ2luZyB1 cCBDUFU1Nw0KKFhFTikgR0lDdjM6IENQVTU3OiBGb3VuZCByZWRpc3RyaWJ1dG9yIGluIHJlZ2lv biA1NyBAMDAwMDAwMDA0MGViMDAwMA0KKFhFTikgQnJpbmdpbmcgdXAgQ1BVNTgNCihYRU4pIEdJ Q3YzOiBDUFU1ODogRm91bmQgcmVkaXN0cmlidXRvciBpbiByZWdpb24gNTggQDAwMDAwMDAwNDBl ZjEwMDANCihYRU4pIEJyaW5naW5nIHVwIENQVTU5DQooWEVOKSBHSUN2MzogQ1BVNTk6IEZvdW5k IHJlZGlzdHJpYnV0b3IgaW4gcmVnaW9uIDU5IEAwMDAwMDAwMDQwZjMyMDAwDQooWEVOKSBCcmlu Z2luZyB1cCBDUFU2MA0KKFhFTikgR0lDdjM6IENQVTYwOiBGb3VuZCByZWRpc3RyaWJ1dG9yIGlu IHJlZ2lvbiA2MCBAMDAwMDAwMDA0MGY3MzAwMA0KKFhFTikgQnJpbmdpbmcgdXAgQ1BVNjENCihY RU4pIEdJQ3YzOiBDUFU2MTogRm91bmQgcmVkaXN0cmlidXRvciBpbiByZWdpb24gNjEgQDAwMDAw MDAwNDBmYjQwMDANCihYRU4pIEJyaW5naW5nIHVwIENQVTYyDQooWEVOKSBHSUN2MzogQ1BVNjI6 IEZvdW5kIHJlZGlzdHJpYnV0b3IgaW4gcmVnaW9uIDYyIEAwMDAwMDAwMDQwZmY1MDAwDQooWEVO KSBCcmluZ2luZyB1cCBDUFU2Mw0KKFhFTikgR0lDdjM6IENQVTYzOiBGb3VuZCByZWRpc3RyaWJ1 dG9yIGluIHJlZ2lvbiA2MyBAMDAwMDAwMDA0MTAzNjAwMA0KKFhFTikgQnJpbmdpbmcgdXAgQ1BV NjQNCihYRU4pIEdJQ3YzOiBDUFU2NDogRm91bmQgcmVkaXN0cmlidXRvciBpbiByZWdpb24gNjQg QDAwMDAwMDAwNDEwNzcwMDANCihYRU4pIEJyaW5naW5nIHVwIENQVTY1DQooWEVOKSBHSUN2Mzog Q1BVNjU6IEZvdW5kIHJlZGlzdHJpYnV0b3IgaW4gcmVnaW9uIDY1IEAwMDAwMDAwMDQxMGI4MDAw DQooWEVOKSBCcmluZ2luZyB1cCBDUFU2Ng0KKFhFTikgR0lDdjM6IENQVTY2OiBGb3VuZCByZWRp c3RyaWJ1dG9yIGluIHJlZ2lvbiA2NiBAMDAwMDAwMDA0MTBmOTAwMA0KKFhFTikgQnJpbmdpbmcg dXAgQ1BVNjcNCihYRU4pIEdJQ3YzOiBDUFU2NzogRm91bmQgcmVkaXN0cmlidXRvciBpbiByZWdp b24gNjcgQDAwMDAwMDAwNDExM2EwMDANCihYRU4pIEJyaW5naW5nIHVwIENQVTY4DQooWEVOKSBH SUN2MzogQ1BVNjg6IEZvdW5kIHJlZGlzdHJpYnV0b3IgaW4gcmVnaW9uIDY4IEAwMDAwMDAwMDQx MTdiMDAwDQooWEVOKSBCcmluZ2luZyB1cCBDUFU2OQ0KKFhFTikgR0lDdjM6IENQVTY5OiBGb3Vu ZCByZWRpc3RyaWJ1dG9yIGluIHJlZ2lvbiA2OSBAMDAwMDAwMDA0MTFiYzAwMA0KKFhFTikgQnJp bmdpbmcgdXAgQ1BVNzANCihYRU4pIEdJQ3YzOiBDUFU3MDogRm91bmQgcmVkaXN0cmlidXRvciBp biByZWdpb24gNzAgQDAwMDAwMDAwNDExZmQwMDANCihYRU4pIEJyaW5naW5nIHVwIENQVTcxDQoo WEVOKSBHSUN2MzogQ1BVNzE6IEZvdW5kIHJlZGlzdHJpYnV0b3IgaW4gcmVnaW9uIDcxIEAwMDAw MDAwMDQxMjNlMDAwDQooWEVOKSBCcmluZ2luZyB1cCBDUFU3Mg0KKFhFTikgR0lDdjM6IENQVTcy OiBGb3VuZCByZWRpc3RyaWJ1dG9yIGluIHJlZ2lvbiA3MiBAMDAwMDAwMDA0MTI3ZjAwMA0KKFhF TikgQnJpbmdpbmcgdXAgQ1BVNzMNCihYRU4pIEdJQ3YzOiBDUFU3MzogRm91bmQgcmVkaXN0cmli dXRvciBpbiByZWdpb24gNzMgQDAwMDAwMDAwNDEyYzAwMDANCihYRU4pIEJyaW5naW5nIHVwIENQ VTc0DQooWEVOKSBHSUN2MzogQ1BVNzQ6IEZvdW5kIHJlZGlzdHJpYnV0b3IgaW4gcmVnaW9uIDc0 IEAwMDAwMDAwMDQxMzAxMDAwDQooWEVOKSBCcmluZ2luZyB1cCBDUFU3NQ0KKFhFTikgR0lDdjM6 IENQVTc1OiBGb3VuZCByZWRpc3RyaWJ1dG9yIGluIHJlZ2lvbiA3NSBAMDAwMDAwMDA0MTM0MjAw MA0KKFhFTikgQnJpbmdpbmcgdXAgQ1BVNzYNCihYRU4pIEdJQ3YzOiBDUFU3NjogRm91bmQgcmVk aXN0cmlidXRvciBpbiByZWdpb24gNzYgQDAwMDAwMDAwNDEzODMwMDANCihYRU4pIEJyaW5naW5n IHVwIENQVTc3DQooWEVOKSBHSUN2MzogQ1BVNzc6IEZvdW5kIHJlZGlzdHJpYnV0b3IgaW4gcmVn aW9uIDc3IEAwMDAwMDAwMDQxM2M0MDAwDQooWEVOKSBCcmluZ2luZyB1cCBDUFU3OA0KKFhFTikg R0lDdjM6IENQVTc4OiBGb3VuZCByZWRpc3RyaWJ1dG9yIGluIHJlZ2lvbiA3OCBAMDAwMDAwMDA0 MTQwNTAwMA0KKFhFTikgQnJpbmdpbmcgdXAgQ1BVNzkNCihYRU4pIEdJQ3YzOiBDUFU3OTogRm91 bmQgcmVkaXN0cmlidXRvciBpbiByZWdpb24gNzkgQDAwMDAwMDAwNDE0NDYwMDANCihYRU4pIEJy aW5naW5nIHVwIENQVTgwDQooWEVOKSBHSUN2MzogQ1BVODA6IEZvdW5kIHJlZGlzdHJpYnV0b3Ig aW4gcmVnaW9uIDgwIEAwMDAwMDAwMDQxNDg3MDAwDQooWEVOKSBCcmluZ2luZyB1cCBDUFU4MQ0K KFhFTikgR0lDdjM6IENQVTgxOiBGb3VuZCByZWRpc3RyaWJ1dG9yIGluIHJlZ2lvbiA4MSBAMDAw MDAwMDA0MTRjODAwMA0KKFhFTikgQnJpbmdpbmcgdXAgQ1BVODINCihYRU4pIEdJQ3YzOiBDUFU4 MjogRm91bmQgcmVkaXN0cmlidXRvciBpbiByZWdpb24gODIgQDAwMDAwMDAwNDE1MDkwMDANCihY RU4pIEJyaW5naW5nIHVwIENQVTgzDQooWEVOKSBHSUN2MzogQ1BVODM6IEZvdW5kIHJlZGlzdHJp YnV0b3IgaW4gcmVnaW9uIDgzIEAwMDAwMDAwMDQxNTRhMDAwDQooWEVOKSBCcmluZ2luZyB1cCBD UFU4NA0KKFhFTikgR0lDdjM6IENQVTg0OiBGb3VuZCByZWRpc3RyaWJ1dG9yIGluIHJlZ2lvbiA4 NCBAMDAwMDAwMDA0MTU4YjAwMA0KKFhFTikgQnJpbmdpbmcgdXAgQ1BVODUNCihYRU4pIEdJQ3Yz OiBDUFU4NTogRm91bmQgcmVkaXN0cmlidXRvciBpbiByZWdpb24gODUgQDAwMDAwMDAwNDE1Y2Mw MDANCihYRU4pIEJyaW5naW5nIHVwIENQVTg2DQooWEVOKSBHSUN2MzogQ1BVODY6IEZvdW5kIHJl ZGlzdHJpYnV0b3IgaW4gcmVnaW9uIDg2IEAwMDAwMDAwMDQxNjBkMDAwDQooWEVOKSBCcmluZ2lu ZyB1cCBDUFU4Nw0KKFhFTikgR0lDdjM6IENQVTg3OiBGb3VuZCByZWRpc3RyaWJ1dG9yIGluIHJl Z2lvbiA4NyBAMDAwMDAwMDA0MTY0ZTAwMA0KKFhFTikgQnJpbmdpbmcgdXAgQ1BVODgNCihYRU4p IEdJQ3YzOiBDUFU4ODogRm91bmQgcmVkaXN0cmlidXRvciBpbiByZWdpb24gODggQDAwMDAwMDAw NDE2OGYwMDANCihYRU4pIEJyaW5naW5nIHVwIENQVTg5DQooWEVOKSBHSUN2MzogQ1BVODk6IEZv dW5kIHJlZGlzdHJpYnV0b3IgaW4gcmVnaW9uIDg5IEAwMDAwMDAwMDQxNmQwMDAwDQooWEVOKSBC cmluZ2luZyB1cCBDUFU5MA0KKFhFTikgR0lDdjM6IENQVTkwOiBGb3VuZCByZWRpc3RyaWJ1dG9y IGluIHJlZ2lvbiA5MCBAMDAwMDAwMDA0MTcxMTAwMA0KKFhFTikgQnJpbmdpbmcgdXAgQ1BVOTEN CihYRU4pIEdJQ3YzOiBDUFU5MTogRm91bmQgcmVkaXN0cmlidXRvciBpbiByZWdpb24gOTEgQDAw MDAwMDAwNDE3NTIwMDANCihYRU4pIEJyaW5naW5nIHVwIENQVTkyDQooWEVOKSBHSUN2MzogQ1BV OTI6IEZvdW5kIHJlZGlzdHJpYnV0b3IgaW4gcmVnaW9uIDkyIEAwMDAwMDAwMDQxNzkzMDAwDQoo WEVOKSBCcmluZ2luZyB1cCBDUFU5Mw0KKFhFTikgR0lDdjM6IENQVTkzOiBGb3VuZCByZWRpc3Ry aWJ1dG9yIGluIHJlZ2lvbiA5MyBAMDAwMDAwMDA0MTdkNDAwMA0KKFhFTikgQnJpbmdpbmcgdXAg Q1BVOTQNCihYRU4pIEdJQ3YzOiBDUFU5NDogRm91bmQgcmVkaXN0cmlidXRvciBpbiByZWdpb24g OTQgQDAwMDAwMDAwNDE4MTUwMDANCihYRU4pIEJyaW5naW5nIHVwIENQVTk1DQooWEVOKSBHSUN2 MzogQ1BVOTU6IEZvdW5kIHJlZGlzdHJpYnV0b3IgaW4gcmVnaW9uIDk1IEAwMDAwMDAwMDQxODU2 MDAwDQooWEVOKSBCcm91Z2h0IHVwIDk2IENQVXMNCihYRU4pIEkvTyB2aXJ0dWFsaXNhdGlvbiBk aXNhYmxlZA0KKFhFTikgUDJNOiA0OC1iaXQgSVBBIHdpdGggNDgtYml0IFBBIGFuZCAxNi1iaXQg Vk1JRA0KKFhFTikgUDJNOiA0IGxldmVscyB3aXRoIG9yZGVyLTAgcm9vdCwgVlRDUiAweDAwMDAw MDAwODAwZDM1OTANCihYRU4pIFNjaGVkdWxpbmcgZ3JhbnVsYXJpdHk6IGNwdSwgMSBDUFUgcGVy IHNjaGVkLXJlc291cmNlDQooWEVOKSBJbml0aWFsaXppbmcgQ3JlZGl0MiBzY2hlZHVsZXINCihY RU4pICoqKiBMT0FESU5HIERPTUFJTiAwICoqKg0KKFhFTikgTG9hZGluZyBkMCBrZXJuZWwgZnJv bSBib290IG1vZHVsZSBAIDAwMDAwMDAwMmM1YWMwMDANCihYRU4pIExvYWRpbmcgcmFtZGlzayBm cm9tIGJvb3QgbW9kdWxlIEAgMDAwMDAwMDAyYWJjYzAwMA0KKFhFTikgQWxsb2NhdGluZyAxOjEg bWFwcGluZ3MgdG90YWxsaW5nIDUxMk1CIGZvciBkb20wOg0KKFhFTikgQkFOS1swXSAweDAwMDAw MDEwMDAwMDAwLTB4MDAwMDAwMjAwMDAwMDAgKDI1Nk1CKQ0KKFhFTikgQkFOS1sxXSAweDAwMDAw MDMwMDAwMDAwLTB4MDAwMDAwMzgwMDAwMDAgKDEyOE1CKQ0KKFhFTikgQkFOS1syXSAweDAwMDAw MDU4MDAwMDAwLTB4MDAwMDAwNjAwMDAwMDAgKDEyOE1CKQ0KKFhFTikgR3JhbnQgdGFibGUgcmFu Z2U6IDB4MDAwMDAwMmFhNzEwMDAtMHgwMDAwMDAyYWFiMTAwMA0KKFhFTikgQWxsb2NhdGluZyBQ UEkgMTYgZm9yIGV2ZW50IGNoYW5uZWwgaW50ZXJydXB0DQooWEVOKSBMb2FkaW5nIHpJbWFnZSBm cm9tIDAwMDAwMDAwMmM1YWMwMDAgdG8gMDAwMDAwMDAxMDAwMDAwMC0wMDAwMDAwMDExYTIxN2Mw DQooWEVOKSBMb2FkaW5nIGQwIGluaXRyZCBmcm9tIDAwMDAwMDAwMmFiY2MwMDAgdG8gMHgwMDAw MDAwMDE4MjAwMDAwLTB4MDAwMDAwMDAxOWJkZWE0ZA0KKFhFTikgTG9hZGluZyBkMCBEVEIgdG8g MHgwMDAwMDAwMDE4MDAwMDAwLTB4MDAwMDAwMDAxODAwMDI1Nw0KKFhFTikgSW5pdGlhbCBsb3cg bWVtb3J5IHZpcnEgdGhyZXNob2xkIHNldCBhdCAweDQwMDAgcGFnZXMuDQooWEVOKSBTY3J1YmJp bmcgRnJlZSBSQU0gaW4gYmFja2dyb3VuZA0KKFhFTikgU3RkLiBMb2dsZXZlbDogRXJyb3JzIGFu ZCB3YXJuaW5ncw0KKFhFTikgR3Vlc3QgTG9nbGV2ZWw6IE5vdGhpbmcgKFJhdGUtbGltaXRlZDog RXJyb3JzIGFuZCB3YXJuaW5ncykNCihYRU4pICoqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKg0KKFhFTikgUExFQVNFIFNQRUNJRlkgZG9tMF9tZW0gUEFS QU1FVEVSIC0gVVNJTkcgNTEyTSBGT1IgTk9XDQooWEVOKSAqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioNCihYRU4pIDMuLi4gMi4uLiAxLi4uDQooWEVO KSAqKiogU2VyaWFsIGlucHV0IHRvIERPTTAgKHR5cGUgJ0NUUkwtYScgdGhyZWUgdGltZXMgdG8g c3dpdGNoIGlucHV0KQ0KKFhFTikgRnJlZWQgMzcya0IgaW5pdCBtZW1vcnkuDQooWEVOKSBkMHYw OiB2R0lDRDogdW5oYW5kbGVkIHdvcmQgd3JpdGUgMHgwMDAwMDBmZmZmZmZmZiB0byBJQ0FDVElW RVI0DQooWEVOKSBkMHYwOiB2R0lDRDogdW5oYW5kbGVkIHdvcmQgd3JpdGUgMHgwMDAwMDBmZmZm ZmZmZiB0byBJQ0FDVElWRVI4DQooWEVOKSBkMHYwOiB2R0lDRDogdW5oYW5kbGVkIHdvcmQgd3Jp dGUgMHgwMDAwMDBmZmZmZmZmZiB0byBJQ0FDVElWRVIxMg0KKFhFTikgZDB2MDogdkdJQ0Q6IHVu aGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMTYNCihYRU4p IGQwdjA6IHZHSUNEOiB1bmhhbmRsZWQgd29yZCB3cml0ZSAweDAwMDAwMGZmZmZmZmZmIHRvIElD QUNUSVZFUjIwDQooWEVOKSBkMHYwOiB2R0lDRDogdW5oYW5kbGVkIHdvcmQgd3JpdGUgMHgwMDAw MDBmZmZmZmZmZiB0byBJQ0FDVElWRVIyNA0KKFhFTikgZDB2MDogdkdJQ0Q6IHVuaGFuZGxlZCB3 b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMjgNCihYRU4pIGQwdjA6IHZH SUNEOiB1bmhhbmRsZWQgd29yZCB3cml0ZSAweDAwMDAwMGZmZmZmZmZmIHRvIElDQUNUSVZFUjMy DQooWEVOKSBkMHYwOiB2R0lDRDogdW5oYW5kbGVkIHdvcmQgd3JpdGUgMHgwMDAwMDBmZmZmZmZm ZiB0byBJQ0FDVElWRVIzNg0KKFhFTikgZDB2MDogdkdJQ0Q6IHVuaGFuZGxlZCB3b3JkIHdyaXRl IDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSNDANCg== --0000000000000400aa05fdd2a646-- From xen-devel-bounces@lists.xenproject.org Sun Jun 11 05:46:43 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sun, 11 Jun 2023 05:46:43 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546685.853710 (Exim 4.92) (envelope-from ) id 1q8DuD-0000bX-0Z; Sun, 11 Jun 2023 05:46:25 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546685.853710; Sun, 11 Jun 2023 05:46:24 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8DuC-0000bQ-U1; Sun, 11 Jun 2023 05:46:24 +0000 Received: by outflank-mailman (input) for mailman id 546685; Sun, 11 Jun 2023 05:46:24 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8DuC-0000bG-2i; Sun, 11 Jun 2023 05:46:24 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8DuB-00022v-QY; Sun, 11 Jun 2023 05:46:23 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8DuB-0005LC-8L; Sun, 11 Jun 2023 05:46:23 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q8DuB-0000f3-7t; Sun, 11 Jun 2023 05:46:23 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=g4J8IEqOLgBISGb3sO6UPTE8xU5t666YjB2BjToS1U4=; b=UE+Pv30qr/6pBICdLeKk7a2S9u jLKe7ZYPbR4o2dXAM1neHc8lFiyHz7gwuhnei41OGZ7Cctzl69+6YFRlldH2K/BMrfJkDfXZEKtCq 81U6TRMzr4II+Om0zRxFJXTp1LVvVKleoiVZPwYETFpgjMx6O+wPZMSgFxUr991kX+sM=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [linux-5.4 test] 181363: tolerable FAIL - PUSHED X-Osstest-Failures: linux-5.4:test-amd64-amd64-qemuu-freebsd12-amd64:guest-localmigrate/x10:fail:heisenbug linux-5.4:test-armhf-armhf-xl-multivcpu:guest-start:fail:heisenbug linux-5.4:test-armhf-armhf-xl-credit2:guest-start/debian.repeat:fail:heisenbug linux-5.4:test-armhf-armhf-libvirt-raw:guest-start/debian.repeat:fail:heisenbug linux-5.4:test-amd64-i386-xl-vhd:guest-start/debian.repeat:fail:heisenbug linux-5.4:test-amd64-i386-libvirt-pair:xen-install/dst_host:fail:heisenbug linux-5.4:test-amd64-amd64-xl-qemuu-debianhvm-amd64:debian-hvm-install:fail:heisenbug linux-5.4:test-armhf-armhf-xl-credit2:guest-start:fail:heisenbug linux-5.4:test-amd64-i386-libvirt-pair:xen-install/src_host:fail:heisenbug linux-5.4:test-amd64-i386-libvirt-raw:xen-install:fail:heisenbug linux-5.4:test-armhf-armhf-xl-multivcpu:guest-start/debian.repeat:fail:heisenbug linux-5.4:test-armhf-armhf-xl-credit1:guest-start/debian.repeat:fail:heisenbug linux-5.4:test-amd64-amd64-xl-qcow2:guest-start/debian.repeat:fail:heisenbug linux-5.4:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking linux-5.4:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking linux-5.4:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking linux-5.4:test-armhf-armhf-xl-rtds:guest-start/debian.repeat:fail:nonblocking linux-5.4:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking linux-5.4:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking linux-5.4:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking linux-5.4:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking linux-5.4:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: linux=f568a20f058fa1e37069cff4aac4187c1650a0e9 X-Osstest-Versions-That: linux=cf0b1e5482eaeb4db15c9e703267483dba88b575 From: osstest service owner Date: Sun, 11 Jun 2023 05:46:23 +0000 flight 181363 linux-5.4 real [real] http://logs.test-lab.xenproject.org/osstest/logs/181363/ Failures :-/ but no regressions. Tests which are failing intermittently (not blocking): test-amd64-amd64-qemuu-freebsd12-amd64 19 guest-localmigrate/x10 fail in 181336 pass in 181363 test-armhf-armhf-xl-multivcpu 14 guest-start fail in 181336 pass in 181363 test-armhf-armhf-xl-credit2 18 guest-start/debian.repeat fail in 181336 pass in 181363 test-armhf-armhf-libvirt-raw 17 guest-start/debian.repeat fail in 181336 pass in 181363 test-amd64-i386-xl-vhd 21 guest-start/debian.repeat fail in 181336 pass in 181363 test-amd64-i386-libvirt-pair 11 xen-install/dst_host fail in 181354 pass in 181363 test-amd64-amd64-xl-qemuu-debianhvm-amd64 12 debian-hvm-install fail in 181354 pass in 181363 test-armhf-armhf-xl-credit2 14 guest-start fail in 181354 pass in 181363 test-amd64-i386-libvirt-pair 10 xen-install/src_host fail pass in 181336 test-amd64-i386-libvirt-raw 7 xen-install fail pass in 181336 test-armhf-armhf-xl-multivcpu 18 guest-start/debian.repeat fail pass in 181354 test-armhf-armhf-xl-credit1 18 guest-start/debian.repeat fail pass in 181354 test-amd64-amd64-xl-qcow2 21 guest-start/debian.repeat fail pass in 181354 Tests which did not succeed, but are not blocking: test-amd64-i386-libvirt-raw 14 migrate-support-check fail in 181336 never pass test-armhf-armhf-libvirt 16 saverestore-support-check fail like 181182 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 181182 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop fail like 181182 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop fail like 181182 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 181182 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 181182 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 181182 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail like 181182 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop fail like 181182 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail like 181182 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop fail like 181182 test-armhf-armhf-xl-rtds 18 guest-start/debian.repeat fail like 181182 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 181182 test-amd64-i386-xl-pvshim 14 guest-start fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-i386-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-i386-libvirt 15 migrate-support-check fail never pass test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt 15 migrate-support-check fail never pass test-armhf-armhf-xl 15 migrate-support-check fail never pass test-armhf-armhf-xl 16 saverestore-support-check fail never pass test-armhf-armhf-xl-multivcpu 15 migrate-support-check fail never pass test-armhf-armhf-xl-multivcpu 16 saverestore-support-check fail never pass test-armhf-armhf-xl-credit1 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 16 saverestore-support-check fail never pass test-armhf-armhf-xl-credit2 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit2 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-armhf-armhf-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 15 saverestore-support-check fail never pass test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 15 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 16 saverestore-support-check fail never pass test-armhf-armhf-xl-rtds 15 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 16 saverestore-support-check fail never pass version targeted for testing: linux f568a20f058fa1e37069cff4aac4187c1650a0e9 baseline version: linux cf0b1e5482eaeb4db15c9e703267483dba88b575 Last test of basis 181182 2023-06-05 06:43:42 Z 5 days Testing same since 181336 2023-06-09 08:40:57 Z 1 days 3 attempts ------------------------------------------------------------ People who touched revisions under test: Adam Borowski Andreas Svensson Andrew Morton Andy Shevchenko Arnd Bergmann Bart Van Assche Ben Hutchings Benedict Wong Bjørn Mork Borislav Petkov Cambda Zhu Chao Wang Chris Packham Chris Paterson (CIP) Cong Wang Damien Le Moal Dan Carpenter Dario Binacchi David S. Miller Deren Wu Devesh Sharma Eric Dumazet Florian Fainelli Florian Westphal Frank Li Greg Kroah-Hartman Guenter Roeck Guillaume Nault Haibo Li Hangyu Hua Hans Verkuil Harshit Mogalapalli Helge Deller Hyunwoo Kim Hyunwoo Kim Ivan Orlov Jakub Kicinski Jamal Hadi Salim Jason Baron Jason Gunthorpe Jason Gunthorpe # IB Jason Gunthorpe Jassi Brar Jens Axboe Jiakai Luo Jim Wylder Jiri Kosina Joao Martins Joerg Roedel Johannes Thumshirn Jonathan Cameron Kalesh AP Kalle Valo # wireless drivers Kalle Valo Kees Cook Krzysztof Kozlowski Kuniyuki Iwashima Larry Finger Lee Jones Linus Torvalds Luiz Capitulino Lukas Bulwahn Lyude Paul Marc Kleine-Budde Marek Vasut Mark Brown Martin Liska Martin Liška Masami Hiramatsu (Google) Mauro Carvalho Chehab Maxim Kochetkov Michael Büsch Min-Hua Chen Miquel Raynal Mirsad Goran Todorovac Mukesh Ojha Naresh Kumar PBS Nathan Chancellor Nikita Zhandarovich Niklas Söderlund Paolo Abeni Paul Moore Paweł Anikiel Pedro Tammela Peilin Ye Pietro Borrello Ping-Ke Shih Rafael J. Wysocki Raju Rangoju Randy Dunlap Randy Dunlap # build-tested Richard Acayan Russell King (Oracle) Saeed Mahameed Sam Ravnborg Sasha Levin Sebastian Krzyszkowiak Selvin Xavier Shay Drory Sherry Sun Shuah Khan Shyam Sundar S K Simon Kapadia Srinivas Kandagatla Steffen Klassert Sudarsana Reddy Kalluru Sudheesh Mavila Sudip Mukherjee Sung-Chi Li Takashi Iwai Theodore Ts'o Tom Rix Ulf Hansson Uttkarsh Aggarwal Vinod Koul Vladislav Efanov Wei Chen Wenchao Hao Will Deacon Wim Van Sebroeck Yonatan Nachum YongSu Yoo YueHaibing Yun Lu Zhang Shurong Zhengchao Shao jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl pass test-amd64-i386-xl pass test-amd64-coresched-i386-xl pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-i386-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-i386-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-i386-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-i386-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-i386-qemut-rhel6hvm-amd pass test-amd64-i386-qemuu-rhel6hvm-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-i386-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-freebsd10-amd64 pass test-amd64-amd64-qemuu-freebsd11-amd64 pass test-amd64-amd64-qemuu-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-i386-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-i386-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-i386-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-amd64-i386-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale pass test-amd64-amd64-examine-bios pass test-amd64-i386-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 fail test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 pass test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine pass test-amd64-i386-examine pass test-amd64-i386-freebsd10-i386 pass test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-i386-qemut-rhel6hvm-intel pass test-amd64-i386-qemuu-rhel6hvm-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt pass test-amd64-i386-libvirt pass test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu fail test-amd64-amd64-pair pass test-amd64-i386-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-i386-libvirt-pair fail test-amd64-amd64-xl-pvshim pass test-amd64-i386-xl-pvshim fail test-amd64-amd64-pygrub pass test-armhf-armhf-libvirt-qcow2 pass test-amd64-amd64-xl-qcow2 fail test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw pass test-amd64-i386-libvirt-raw fail test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds fail test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-amd64-i386-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-i386-examine-uefi pass test-amd64-amd64-libvirt-vhd pass test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd pass test-amd64-i386-xl-vhd pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Pushing revision : hint: The 'hooks/update' hook was ignored because it's not set as executable. hint: You can disable this warning with `git config advice.ignoredHook false`. hint: The 'hooks/post-receive' hook was ignored because it's not set as executable. hint: You can disable this warning with `git config advice.ignoredHook false`. hint: The 'hooks/post-update' hook was ignored because it's not set as executable. hint: You can disable this warning with `git config advice.ignoredHook false`. To xenbits.xen.org:/home/xen/git/linux-pvops.git cf0b1e5482ea..f568a20f058f f568a20f058fa1e37069cff4aac4187c1650a0e9 -> tested/linux-5.4 From xen-devel-bounces@lists.xenproject.org Sun Jun 11 07:26:13 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sun, 11 Jun 2023 07:26:13 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546692.853721 (Exim 4.92) (envelope-from ) id 1q8FSa-0002na-Uj; Sun, 11 Jun 2023 07:26:00 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546692.853721; Sun, 11 Jun 2023 07:26:00 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8FSa-0002nT-Rb; Sun, 11 Jun 2023 07:26:00 +0000 Received: by outflank-mailman (input) for mailman id 546692; Sun, 11 Jun 2023 07:25:59 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8FSZ-0002nJ-Bm; Sun, 11 Jun 2023 07:25:59 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8FSZ-0004Cw-1N; Sun, 11 Jun 2023 07:25:59 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8FSY-0001NO-JS; Sun, 11 Jun 2023 07:25:58 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q8FSY-0003iR-Is; Sun, 11 Jun 2023 07:25:58 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=aWmRbHcnTKrIO3V8AN5bG2ATm73sVWa9rZIcJetIsi0=; b=6RjPAynPA4muFgpcY3ernxe3uf gsXOKek02RtrscIHTybrcBjHaeC1DlmVBsdcuRMVxOv5U0QEbBv6gUQIYqGTd9Uqknve1U9H7BCPP cxe1ALuZKyIw/NoqFhAN9OZa8CzA7zC6MT8r1nixOvtd4Tr4NdzQ1aalN+K0CJa8bQgY=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [qemu-mainline test] 181372: regressions - FAIL X-Osstest-Failures: qemu-mainline:build-arm64-xsm:xen-build:fail:regression qemu-mainline:build-arm64:xen-build:fail:regression qemu-mainline:build-amd64:xen-build:fail:regression qemu-mainline:build-i386:xen-build:fail:regression qemu-mainline:build-amd64-xsm:xen-build:fail:regression qemu-mainline:build-i386-xsm:xen-build:fail:regression qemu-mainline:build-armhf:xen-build:fail:regression qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-i386:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:build-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:build-arm64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:build-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:build-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pygrub:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking X-Osstest-Versions-This: qemuu=fdd0df5340a8ebc8de88078387ebc85c5af7b40f X-Osstest-Versions-That: qemuu=6972ef1440a9d685482d78672620a7482f2bd09a From: osstest service owner Date: Sun, 11 Jun 2023 07:25:58 +0000 flight 181372 qemu-mainline real [real] http://logs.test-lab.xenproject.org/osstest/logs/181372/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-arm64-xsm 6 xen-build fail REGR. vs. 180691 build-arm64 6 xen-build fail REGR. vs. 180691 build-amd64 6 xen-build fail REGR. vs. 180691 build-i386 6 xen-build fail REGR. vs. 180691 build-amd64-xsm 6 xen-build fail REGR. vs. 180691 build-i386-xsm 6 xen-build fail REGR. vs. 180691 build-armhf 6 xen-build fail REGR. vs. 180691 Tests which did not succeed, but are not blocking: test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-xl-xsm 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-raw 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-xsm 1 build-check(1) blocked n/a test-arm64-arm64-xl 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit1 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit2 1 build-check(1) blocked n/a test-arm64-arm64-xl-thunderx 1 build-check(1) blocked n/a test-arm64-arm64-xl-vhd 1 build-check(1) blocked n/a test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a test-armhf-armhf-libvirt 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-qcow2 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-raw 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a test-armhf-armhf-xl-arndale 1 build-check(1) blocked n/a test-armhf-armhf-xl-multivcpu 1 build-check(1) blocked n/a test-armhf-armhf-xl-rtds 1 build-check(1) blocked n/a test-armhf-armhf-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-amd 1 build-check(1) blocked n/a test-amd64-i386-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-raw 1 build-check(1) blocked n/a test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-i386 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-amd64 1 build-check(1) blocked n/a test-amd64-coresched-i386-xl 1 build-check(1) blocked n/a test-amd64-coresched-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-xsm 1 build-check(1) blocked n/a build-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-shadow 1 build-check(1) blocked n/a test-amd64-amd64-xl-rtds 1 build-check(1) blocked n/a build-arm64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a build-armhf-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a build-i386-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-amd 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-pair 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-qcow2 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-vhd 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvshim 1 build-check(1) blocked n/a test-amd64-amd64-pair 1 build-check(1) blocked n/a test-amd64-amd64-pygrub 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-intel 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd11-amd64 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd12-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-multivcpu 1 build-check(1) blocked n/a test-amd64-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit1 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit1 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit2 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-intel 1 build-check(1) blocked n/a test-amd64-i386-xl 1 build-check(1) blocked n/a test-amd64-i386-xl-pvshim 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a version targeted for testing: qemuu fdd0df5340a8ebc8de88078387ebc85c5af7b40f baseline version: qemuu 6972ef1440a9d685482d78672620a7482f2bd09a Last test of basis 180691 2023-05-17 10:45:22 Z 24 days Failing since 180699 2023-05-18 07:21:24 Z 24 days 80 attempts Testing same since 181372 2023-06-10 21:38:57 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Afonso Bordado Akihiko Odaki Akihiro Suda Alex Bennée Alex Williamson Alexander Bulekov Alexander Graf Alexander Ivanov Alistair Francis Anastasia Belova Andrew Jeffery Ani Sinha Ani Sinha Anthony PERARD Anton Johansson BALATON Zoltan Bastian Koppelmann Bernhard Beschow Bin Meng Brian Cain Brice Goglin Camilla Conte Carlos Santos Christian Schoenebeck Chuck Zmudzinski Cindy Lu Clément Chigot Cornelia Huck Cédric Le Goater Cédric Le Goater Daniel Henrique Barboza Daniel P. Berrangé Daniil Kovalev David Hildenbrand David Woodhouse Emanuele Giuseppe Esposito Enze Li Eric Auger Eric Blake Eric DeVolder Erico Nunes Eugenio Pérez Fabiano Rosas Fan Ni Fiona Ebner Francesco Cagnin Francisco Iglesias Frederic Barrat Gavin Shan Gregory Price Gregory Price Hanna Czenczek Hao Zeng Hawkins Jiawei Igor Mammedov Ilya Leoshkevich Ira Weiny Jagannathan Raman Jason Wang Jean-Louis Dupond Jean-Philippe Brucker Jiaxun Yang John Snow Jonathan Cameron Juan Quintela Kevin Wolf Laurent Vivier Lei Yang Leonardo Bras Maksim Davydov Marc-André Lureau Marcin Juszkiewicz Marco Liebel Mark Cave-Ayland Markus Armbruster Matheus Tavares Bernardino Mattias Nissler Mauro Matteo Cascella Max Fritz Michael S. Tsirkin Michael Tokarev Michal Privoznik Milan Zamazal Mostafa Saleh Nicholas Piggin Nicolas Saenz Julienne Niek Linnenbank Palmer Dabbelt Paolo Bonzini Peter Maydell Peter Xu Philippe Mathieu-Daudé qianfan Zhao Raghu H Rene Engel Richard Henderson Richard Purdie Ricky Zhou Ryan Wendland Sebastian Ott Sergio Lopez Sid Manning Song Gao Stefan Hajnoczi Stefano Garzarella Steve Sistare Taylor Simpson Thomas Huth Thomas Weißschuh timothee.cocault@gmail.com Timothée Cocault Tommy Wu Vikram Garhwal Viktor Prutyanov Vitaly Cheptsov Vivek Kasireddy Vladimir Sementsov-Ogievskiy Volker Rümelin Xinyu Li Zeng Hao Zhenyu Zhang Zhenzhong Duan Zhuojia Shen jobs: build-amd64-xsm fail build-arm64-xsm fail build-i386-xsm fail build-amd64 fail build-arm64 fail build-armhf fail build-i386 fail build-amd64-libvirt blocked build-arm64-libvirt blocked build-armhf-libvirt blocked build-i386-libvirt blocked build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl blocked test-amd64-coresched-amd64-xl blocked test-arm64-arm64-xl blocked test-armhf-armhf-xl blocked test-amd64-i386-xl blocked test-amd64-coresched-i386-xl blocked test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-i386-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-amd64-libvirt-xsm blocked test-arm64-arm64-libvirt-xsm blocked test-amd64-i386-libvirt-xsm blocked test-amd64-amd64-xl-xsm blocked test-arm64-arm64-xl-xsm blocked test-amd64-i386-xl-xsm blocked test-amd64-amd64-qemuu-nested-amd blocked test-amd64-amd64-xl-pvhv2-amd blocked test-amd64-i386-qemuu-rhel6hvm-amd blocked test-amd64-amd64-dom0pvh-xl-amd blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-freebsd10-amd64 blocked test-amd64-amd64-qemuu-freebsd11-amd64 blocked test-amd64-amd64-qemuu-freebsd12-amd64 blocked test-amd64-amd64-xl-qemuu-ovmf-amd64 blocked test-amd64-i386-xl-qemuu-ovmf-amd64 blocked test-amd64-amd64-xl-qemuu-win7-amd64 blocked test-amd64-i386-xl-qemuu-win7-amd64 blocked test-amd64-amd64-xl-qemuu-ws16-amd64 blocked test-amd64-i386-xl-qemuu-ws16-amd64 blocked test-armhf-armhf-xl-arndale blocked test-amd64-amd64-xl-credit1 blocked test-arm64-arm64-xl-credit1 blocked test-armhf-armhf-xl-credit1 blocked test-amd64-amd64-xl-credit2 blocked test-arm64-arm64-xl-credit2 blocked test-armhf-armhf-xl-credit2 blocked test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-freebsd10-i386 blocked test-amd64-amd64-qemuu-nested-intel blocked test-amd64-amd64-xl-pvhv2-intel blocked test-amd64-i386-qemuu-rhel6hvm-intel blocked test-amd64-amd64-dom0pvh-xl-intel blocked test-amd64-amd64-libvirt blocked test-armhf-armhf-libvirt blocked test-amd64-i386-libvirt blocked test-amd64-amd64-xl-multivcpu blocked test-armhf-armhf-xl-multivcpu blocked test-amd64-amd64-pair blocked test-amd64-i386-pair blocked test-amd64-amd64-libvirt-pair blocked test-amd64-i386-libvirt-pair blocked test-amd64-amd64-xl-pvshim blocked test-amd64-i386-xl-pvshim blocked test-amd64-amd64-pygrub blocked test-armhf-armhf-libvirt-qcow2 blocked test-amd64-amd64-xl-qcow2 blocked test-arm64-arm64-libvirt-raw blocked test-armhf-armhf-libvirt-raw blocked test-amd64-i386-libvirt-raw blocked test-amd64-amd64-xl-rtds blocked test-armhf-armhf-xl-rtds blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-amd64-xl-shadow blocked test-amd64-i386-xl-shadow blocked test-arm64-arm64-xl-thunderx blocked test-amd64-amd64-libvirt-vhd blocked test-arm64-arm64-xl-vhd blocked test-armhf-armhf-xl-vhd blocked test-amd64-i386-xl-vhd blocked ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 17052 lines long.) From xen-devel-bounces@lists.xenproject.org Sun Jun 11 08:44:25 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sun, 11 Jun 2023 08:44:25 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546708.853731 (Exim 4.92) (envelope-from ) id 1q8GgE-0003QK-B4; Sun, 11 Jun 2023 08:44:10 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546708.853731; Sun, 11 Jun 2023 08:44:10 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8GgE-0003QD-8U; Sun, 11 Jun 2023 08:44:10 +0000 Received: by outflank-mailman (input) for mailman id 546708; Sun, 11 Jun 2023 08:44:08 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8GgC-0003Px-4O; Sun, 11 Jun 2023 08:44:08 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8GgB-0006Zj-Re; Sun, 11 Jun 2023 08:44:07 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8GgB-0003TY-GO; Sun, 11 Jun 2023 08:44:07 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q8GgB-0005XL-Ft; Sun, 11 Jun 2023 08:44:07 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=ectrxtMlTUJYVm/+P0Wqc6Nh6fx4W2sgJnSNGtttrnw=; b=bljFVw01PH8xgm8+NCYpQP1Qi4 cc5MLH1MaU1Y0brOhGG5HMZSGosunWXsDQp19c2ShA50cwsD8jjj/0Sw+ytx+C0WtlYI6bRWwy2fY 3dOUe/z8o4C9fTBGfvQPE9oYJlrAxTRVs/VUTdumNQwNRQHl0k59qh9ISbXL5sxWPwCM=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [qemu-mainline test] 181375: regressions - FAIL X-Osstest-Failures: qemu-mainline:build-arm64-xsm:xen-build:fail:regression qemu-mainline:build-arm64:xen-build:fail:regression qemu-mainline:build-amd64:xen-build:fail:regression qemu-mainline:build-i386:xen-build:fail:regression qemu-mainline:build-amd64-xsm:xen-build:fail:regression qemu-mainline:build-i386-xsm:xen-build:fail:regression qemu-mainline:build-armhf:xen-build:fail:regression qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-i386:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:build-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:build-arm64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:build-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:build-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pygrub:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking X-Osstest-Versions-This: qemuu=fdd0df5340a8ebc8de88078387ebc85c5af7b40f X-Osstest-Versions-That: qemuu=6972ef1440a9d685482d78672620a7482f2bd09a From: osstest service owner Date: Sun, 11 Jun 2023 08:44:07 +0000 flight 181375 qemu-mainline real [real] http://logs.test-lab.xenproject.org/osstest/logs/181375/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-arm64-xsm 6 xen-build fail REGR. vs. 180691 build-arm64 6 xen-build fail REGR. vs. 180691 build-amd64 6 xen-build fail REGR. vs. 180691 build-i386 6 xen-build fail REGR. vs. 180691 build-amd64-xsm 6 xen-build fail REGR. vs. 180691 build-i386-xsm 6 xen-build fail REGR. vs. 180691 build-armhf 6 xen-build fail REGR. vs. 180691 Tests which did not succeed, but are not blocking: test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-xl-xsm 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-raw 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-xsm 1 build-check(1) blocked n/a test-arm64-arm64-xl 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit1 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit2 1 build-check(1) blocked n/a test-arm64-arm64-xl-thunderx 1 build-check(1) blocked n/a test-arm64-arm64-xl-vhd 1 build-check(1) blocked n/a test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a test-armhf-armhf-libvirt 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-qcow2 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-raw 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a test-armhf-armhf-xl-arndale 1 build-check(1) blocked n/a test-armhf-armhf-xl-multivcpu 1 build-check(1) blocked n/a test-armhf-armhf-xl-rtds 1 build-check(1) blocked n/a test-armhf-armhf-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-amd 1 build-check(1) blocked n/a test-amd64-i386-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-raw 1 build-check(1) blocked n/a test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-i386 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-amd64 1 build-check(1) blocked n/a test-amd64-coresched-i386-xl 1 build-check(1) blocked n/a test-amd64-coresched-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-xsm 1 build-check(1) blocked n/a build-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-shadow 1 build-check(1) blocked n/a test-amd64-amd64-xl-rtds 1 build-check(1) blocked n/a build-arm64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a build-armhf-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a build-i386-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-amd 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-pair 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-qcow2 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-vhd 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvshim 1 build-check(1) blocked n/a test-amd64-amd64-pair 1 build-check(1) blocked n/a test-amd64-amd64-pygrub 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-intel 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd11-amd64 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd12-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-multivcpu 1 build-check(1) blocked n/a test-amd64-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit1 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit1 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit2 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-intel 1 build-check(1) blocked n/a test-amd64-i386-xl 1 build-check(1) blocked n/a test-amd64-i386-xl-pvshim 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a version targeted for testing: qemuu fdd0df5340a8ebc8de88078387ebc85c5af7b40f baseline version: qemuu 6972ef1440a9d685482d78672620a7482f2bd09a Last test of basis 180691 2023-05-17 10:45:22 Z 24 days Failing since 180699 2023-05-18 07:21:24 Z 24 days 81 attempts Testing same since 181372 2023-06-10 21:38:57 Z 0 days 2 attempts ------------------------------------------------------------ People who touched revisions under test: Afonso Bordado Akihiko Odaki Akihiro Suda Alex Bennée Alex Williamson Alexander Bulekov Alexander Graf Alexander Ivanov Alistair Francis Anastasia Belova Andrew Jeffery Ani Sinha Ani Sinha Anthony PERARD Anton Johansson BALATON Zoltan Bastian Koppelmann Bernhard Beschow Bin Meng Brian Cain Brice Goglin Camilla Conte Carlos Santos Christian Schoenebeck Chuck Zmudzinski Cindy Lu Clément Chigot Cornelia Huck Cédric Le Goater Cédric Le Goater Daniel Henrique Barboza Daniel P. Berrangé Daniil Kovalev David Hildenbrand David Woodhouse Emanuele Giuseppe Esposito Enze Li Eric Auger Eric Blake Eric DeVolder Erico Nunes Eugenio Pérez Fabiano Rosas Fan Ni Fiona Ebner Francesco Cagnin Francisco Iglesias Frederic Barrat Gavin Shan Gregory Price Gregory Price Hanna Czenczek Hao Zeng Hawkins Jiawei Igor Mammedov Ilya Leoshkevich Ira Weiny Jagannathan Raman Jason Wang Jean-Louis Dupond Jean-Philippe Brucker Jiaxun Yang John Snow Jonathan Cameron Juan Quintela Kevin Wolf Laurent Vivier Lei Yang Leonardo Bras Maksim Davydov Marc-André Lureau Marcin Juszkiewicz Marco Liebel Mark Cave-Ayland Markus Armbruster Matheus Tavares Bernardino Mattias Nissler Mauro Matteo Cascella Max Fritz Michael S. Tsirkin Michael Tokarev Michal Privoznik Milan Zamazal Mostafa Saleh Nicholas Piggin Nicolas Saenz Julienne Niek Linnenbank Palmer Dabbelt Paolo Bonzini Peter Maydell Peter Xu Philippe Mathieu-Daudé qianfan Zhao Raghu H Rene Engel Richard Henderson Richard Purdie Ricky Zhou Ryan Wendland Sebastian Ott Sergio Lopez Sid Manning Song Gao Stefan Hajnoczi Stefano Garzarella Steve Sistare Taylor Simpson Thomas Huth Thomas Weißschuh timothee.cocault@gmail.com Timothée Cocault Tommy Wu Vikram Garhwal Viktor Prutyanov Vitaly Cheptsov Vivek Kasireddy Vladimir Sementsov-Ogievskiy Volker Rümelin Xinyu Li Zeng Hao Zhenyu Zhang Zhenzhong Duan Zhuojia Shen jobs: build-amd64-xsm fail build-arm64-xsm fail build-i386-xsm fail build-amd64 fail build-arm64 fail build-armhf fail build-i386 fail build-amd64-libvirt blocked build-arm64-libvirt blocked build-armhf-libvirt blocked build-i386-libvirt blocked build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl blocked test-amd64-coresched-amd64-xl blocked test-arm64-arm64-xl blocked test-armhf-armhf-xl blocked test-amd64-i386-xl blocked test-amd64-coresched-i386-xl blocked test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-i386-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-amd64-libvirt-xsm blocked test-arm64-arm64-libvirt-xsm blocked test-amd64-i386-libvirt-xsm blocked test-amd64-amd64-xl-xsm blocked test-arm64-arm64-xl-xsm blocked test-amd64-i386-xl-xsm blocked test-amd64-amd64-qemuu-nested-amd blocked test-amd64-amd64-xl-pvhv2-amd blocked test-amd64-i386-qemuu-rhel6hvm-amd blocked test-amd64-amd64-dom0pvh-xl-amd blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-freebsd10-amd64 blocked test-amd64-amd64-qemuu-freebsd11-amd64 blocked test-amd64-amd64-qemuu-freebsd12-amd64 blocked test-amd64-amd64-xl-qemuu-ovmf-amd64 blocked test-amd64-i386-xl-qemuu-ovmf-amd64 blocked test-amd64-amd64-xl-qemuu-win7-amd64 blocked test-amd64-i386-xl-qemuu-win7-amd64 blocked test-amd64-amd64-xl-qemuu-ws16-amd64 blocked test-amd64-i386-xl-qemuu-ws16-amd64 blocked test-armhf-armhf-xl-arndale blocked test-amd64-amd64-xl-credit1 blocked test-arm64-arm64-xl-credit1 blocked test-armhf-armhf-xl-credit1 blocked test-amd64-amd64-xl-credit2 blocked test-arm64-arm64-xl-credit2 blocked test-armhf-armhf-xl-credit2 blocked test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-freebsd10-i386 blocked test-amd64-amd64-qemuu-nested-intel blocked test-amd64-amd64-xl-pvhv2-intel blocked test-amd64-i386-qemuu-rhel6hvm-intel blocked test-amd64-amd64-dom0pvh-xl-intel blocked test-amd64-amd64-libvirt blocked test-armhf-armhf-libvirt blocked test-amd64-i386-libvirt blocked test-amd64-amd64-xl-multivcpu blocked test-armhf-armhf-xl-multivcpu blocked test-amd64-amd64-pair blocked test-amd64-i386-pair blocked test-amd64-amd64-libvirt-pair blocked test-amd64-i386-libvirt-pair blocked test-amd64-amd64-xl-pvshim blocked test-amd64-i386-xl-pvshim blocked test-amd64-amd64-pygrub blocked test-armhf-armhf-libvirt-qcow2 blocked test-amd64-amd64-xl-qcow2 blocked test-arm64-arm64-libvirt-raw blocked test-armhf-armhf-libvirt-raw blocked test-amd64-i386-libvirt-raw blocked test-amd64-amd64-xl-rtds blocked test-armhf-armhf-xl-rtds blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-amd64-xl-shadow blocked test-amd64-i386-xl-shadow blocked test-arm64-arm64-xl-thunderx blocked test-amd64-amd64-libvirt-vhd blocked test-arm64-arm64-xl-vhd blocked test-armhf-armhf-xl-vhd blocked test-amd64-i386-xl-vhd blocked ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 17052 lines long.) From xen-devel-bounces@lists.xenproject.org Sun Jun 11 09:17:50 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sun, 11 Jun 2023 09:17:50 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546715.853741 (Exim 4.92) (envelope-from ) id 1q8HCi-0006zc-V7; Sun, 11 Jun 2023 09:17:44 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546715.853741; Sun, 11 Jun 2023 09:17:44 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8HCi-0006zV-Rg; Sun, 11 Jun 2023 09:17:44 +0000 Received: by outflank-mailman (input) for mailman id 546715; Sun, 11 Jun 2023 09:17:43 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8HCh-0006zK-7A for xen-devel@lists.xenproject.org; Sun, 11 Jun 2023 09:17:43 +0000 Received: from mail-oo1-xc35.google.com (mail-oo1-xc35.google.com [2607:f8b0:4864:20::c35]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id d0310c7e-0838-11ee-b232-6b7b168915f2; Sun, 11 Jun 2023 11:17:40 +0200 (CEST) Received: by mail-oo1-xc35.google.com with SMTP id 006d021491bc7-559409cc490so2179351eaf.3; Sun, 11 Jun 2023 02:17:40 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: d0310c7e-0838-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686475059; x=1689067059; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=EmSPl/kaXaXB4tdb31L+AkRMB57ivEv/BcmsHj+zfgw=; b=luAkUYBGDWtzfs2536c8lK1G6wxl7L8mzK8OKK448DXTIKks+6sRuDN7gRK9e+p1B/ ND2Uznz7ME75+ZtAsmmipBkxcinFxYz4kNcsLtyvu8AqJm4CUXcFo3540YPvENGqrFkB tzJ9+CI5OQJOsLX0TDPzBBIycaDOUx4J0ckRdaNCZoxINTvLa6wWC1WQj/qXdpkEJlDy o2Z979zQkbL9Yh6Mf/AW9g4J21rMzz+nRPwc3Y0r5rFroSlqI5XyR9njCs9xhk/ze7jp y6ykqbr5MhcM70nkZ7hwnvuzkzterEq5hEf/erNDnbIXo7hUQVNUFFOmxYPYthpaz4MD QNlQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686475059; x=1689067059; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=EmSPl/kaXaXB4tdb31L+AkRMB57ivEv/BcmsHj+zfgw=; b=EKA6C/ThwV0Hc4p966CzmHWtX6yLJqg3GSzoxmLmGTazEC4jugNH1Fi9Zmsxw/fsgT ArcRQx3Bu5Tkgoe3pYSNOAKcvtVAlI0rYmSPQoYjGUkHkr4f8aWiwWv6guBCd+QQDRpD RMo4Yxk6OCiJmBNrlgfN51z+bGdNzOzyDNECd0p5s+au1lSZDRdkc0FpPXxHnEJztPGh 4TKfQtD9b+tRWgoXPJRxbSanPIehP3m1jVw7VNvAdMTcmp2SDmqXm+QEyIGhXbEWUI3P gMW9WaOsxRCMgkEdMBiCODer7ZoGidnjjUwhQ8Nq9LBmvusB5PbdrgPZMHKS4iR8GSfR CM3Q== X-Gm-Message-State: AC+VfDyh9XS0OK/q9QInZYldBNNhGtvIjIFcTPnvSKFXzT3owSVoAi6B qh1XWOqqXYzXx1OTCDCmqIuuCdFD5j1bwOxOGxo= X-Google-Smtp-Source: ACHHUZ7krIHL3ojyo+MWFKI8+bRbqG6X0thvy6SUuicHQxYavj48sGBVtdm/jOvUYqY8gj2IQn1LzPjSoeSQVJ0LRwg= X-Received: by 2002:a05:6358:5150:b0:12b:ea6b:8010 with SMTP id 16-20020a056358515000b0012bea6b8010mr80331rwj.24.1686475059040; Sun, 11 Jun 2023 02:17:39 -0700 (PDT) MIME-Version: 1.0 References: <78899eac-9de8-3626-8f40-98f993984f95@xen.org> In-Reply-To: From: Jiatong Shen Date: Sun, 11 Jun 2023 17:17:27 +0800 Message-ID: Subject: Re: Asking for help to debug xen efi on Kunpeng machine To: Julien Grall Cc: Stefano Stabellini , xen-users@lists.xenproject.org, xen-devel@lists.xenproject.org, bertrand.marquis@arm.com Content-Type: multipart/mixed; boundary="000000000000d1987205fdd71298" --000000000000d1987205fdd71298 Content-Type: multipart/alternative; boundary="000000000000d1987005fdd71296" --000000000000d1987005fdd71296 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Hello Stefano and Julien, I tried to do some debugging by adding a printk inside the function idle_loop in file arm/domain.c. Looks like the idle function is running normally because the printk function is getting called without stalling. But the vga screen is still blacked out and the serial terminal does not display any login message. the grub config for xen 4.17 is submenu 'Xen hypervisor, version 4.17' $menuentry_id_option 'xen-hypervisor-4.17-5ebc23af-c2e2-4ac3-b308-3e82ec786c04' { menuentry 'Debian GNU/Linux, with Xen 4.17 and Linux 5.10.0-23-arm64' --class debian --class gnu-linux --class gnu --class os --class xen $menuentry_id_option 'xen-gnulinux-5.10.0-23-arm64-advanced-5ebc23af-c2e2-4ac3-b308-3e82ec786c04= ' { insmod part_gpt insmod ext2 set root=3D'hd0,gpt2' if [ x$feature_platform_search_hint =3D xy ]; then search --no-floppy --fs-uuid --set=3Droot --hint-ieee1275=3D'ieee1275//sas/disk@20000,gpt2' --hint-bios=3Dhd0,gpt2 --hint-efi=3Dhd0,gpt2 --hint-baremetal=3Dahci0,gpt2 5ebc23af-c2e2-4ac3-b308-3e82ec786c04 else search --no-floppy --fs-uuid --set=3Droot 5ebc23af-c2e2-4ac3-b308-3e82ec786c04 fi echo 'Loading Xen 4.17 ...' if [ "$grub_platform" =3D "pc" -o "$grub_platform" =3D "" ]; then xen_rm_opts=3D else xen_rm_opts=3D"no-real-mode edd=3Doff" fi xen_hypervisor /boot/xen-4.17 placeholder ${xen_rm_opts} echo 'Loading Linux 5.10.0-23-arm64 ...' xen_module /boot/vmlinuz-5.10.0-23-arm64 placeholder root=3DUUID=3D5ebc23af-c2e2-4ac3-b308-3e82ec786c04 ro quiet echo 'Loading initial ramdisk ...' xen_module --nounzip /boot/initrd.img-5.10.0-23-arm64 } The code I am modifying is static void noreturn idle_loop(void) { unsigned int cpu =3D smp_processor_id(); for ( ; ; ) { dprintk(XENLOG_INFO, "running idle loop \n"); if ( cpu_is_offline(cpu) ) stop_cpu(); } } } Hopes this debugging makes some sense. Best Regards, Jiatong Shen On Sun, Jun 11, 2023 at 12:00=E2=80=AFPM Jiatong Shen wrote: > Hello Stefano, > > I am able to obtain some serial logging (by enabling debugging and > verbose debugging messages, hopefully select the right option). The messa= ge > looks like > > (XEN) *** Serial input to DOM0 (type 'CTRL-a' three times to switch input= ) > (XEN) Freed 372kB init memory. > (XEN) d0v0: vGICD: unhandled word write 0x000000ffffffff to ICACTIVER4 > (XEN) d0v0: vGICD: unhandled word write 0x000000ffffffff to ICACTIVER8 > (XEN) d0v0: vGICD: unhandled word write 0x000000ffffffff to ICACTIVER12 > (XEN) d0v0: vGICD: unhandled word write 0x000000ffffffff to ICACTIVER16 > (XEN) d0v0: vGICD: unhandled word write 0x000000ffffffff to ICACTIVER20 > (XEN) d0v0: vGICD: unhandled word write 0x000000ffffffff to ICACTIVER24 > (XEN) d0v0: vGICD: unhandled word write 0x000000ffffffff to ICACTIVER28 > (XEN) d0v0: vGICD: unhandled word write 0x000000ffffffff to ICACTIVER32 > (XEN) d0v0: vGICD: unhandled word write 0x000000ffffffff to ICACTIVER36 > (XEN) d0v0: vGICD: unhandled word write 0x000000ffffffff to ICACTIVER40 > > Could you help find out where it is wrong ? Thank you very much for the > help! > > Best Regards, > Jiatong Shen > > > On Sat, Jun 10, 2023 at 7:15=E2=80=AFAM Jiatong Shen > wrote: > >> Hello Julien, >> >> Thank you very much for your help! >> >> Best, >> >> Jiatong Shen >> >> On Fri, Jun 9, 2023 at 4:48=E2=80=AFPM Julien Grall wro= te: >> >>> Hello, >>> >>> On 09/06/2023 03:32, Jiatong Shen wrote: >>> > Thank you for your answer. Can you teach me how to verify if acpi is >>> > enabled? >>> >>> You usually look at the .config. But I am not sure if this is provided >>> by the Debian package. If not, then your best option would be to build >>> your own Xen. To select ACPI, you want to use the menuconfig and select >>> UNSUPPORTED and ACPI. >>> >>> Cheers, >>> >>> -- >>> Julien Grall >>> >> >> >> -- >> >> Best Regards, >> >> Jiatong Shen >> > > > -- > > Best Regards, > > Jiatong Shen > --=20 Best Regards, Jiatong Shen --000000000000d1987005fdd71296 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Hello Stefano and Julien,

=C2=A0 =C2=A0= I tried to do some debugging by adding a printk inside the function idle_lo= op in file arm/domain.c. Looks like the idle function is running
= normally because the printk function is getting called without stalling. Bu= t the vga screen is still blacked out and the serial terminal does not
display any login message.

the grub config f= or xen 4.17 is=C2=A0

=C2=A0submenu 'Xen hyperv= isor, version 4.17' $menuentry_id_option 'xen-hypervisor-4.17-5ebc2= 3af-c2e2-4ac3-b308-3e82ec786c04' {
menuentry 'Debian GNU/Linux= , with Xen 4.17 and Linux 5.10.0-23-arm64' --class debian --class gnu-l= inux --class gnu --class os --class xen $menuentry_id_option 'xen-gnuli= nux-5.10.0-23-arm64-advanced-5ebc23af-c2e2-4ac3-b308-3e82ec786c04' { insmod part_gpt
insmod ext2
set root=3D'hd0,gpt2' if [ x$feature_platform_search_hint =3D xy ]; then
=C2=A0search= --no-floppy --fs-uuid --set=3Droot --hint-ieee1275=3D'ieee1275//sas/di= sk@20000,gpt2' --hint-bios=3Dhd0,gpt2 --hint-efi=3Dhd0,gpt2 --hint-bare= metal=3Dahci0,gpt2 =C2=A05ebc23af-c2e2-4ac3-b308-3e82ec786c04
else =C2=A0search --no-floppy --fs-uuid --set=3Droot 5ebc23af-c2e2-4ac3-b30= 8-3e82ec786c04
fi
echo 'Loading Xen 4.17 ...'
=C2= =A0 =C2=A0 =C2=A0 =C2=A0if [ "$grub_platform" =3D "pc" = -o "$grub_platform" =3D "" ]; then
=C2=A0 =C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0xen_rm_opts=3D
=C2=A0 =C2=A0 =C2=A0 =C2=A0= else
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0xen_rm_opts=3D"no-= real-mode edd=3Doff"
=C2=A0 =C2=A0 =C2=A0 =C2=A0fi
xen_hyp= ervisor /boot/xen-4.17 placeholder =C2=A0 ${xen_rm_opts}
echo 'Lo= ading Linux 5.10.0-23-arm64 ...'
xen_module /boot/vmlinuz-5.10.0-= 23-arm64 placeholder root=3DUUID=3D5ebc23af-c2e2-4ac3-b308-3e82ec786c04 ro = =C2=A0quiet
echo 'Loading initial ramdisk ...'
xen_modu= le --nounzip =C2=A0 /boot/initrd.img-5.10.0-23-arm64
}
<= br>
The code I am modifying is=C2=A0

sta= tic void noreturn idle_loop(void)
{
=C2=A0 =C2=A0 unsigned int cpu = =3D smp_processor_id();

=C2=A0 =C2=A0 for ( ; ; )
=C2=A0 =C2=A0 {=
=C2=A0 =C2=A0 =C2=A0 =C2=A0 dprintk(XENLOG_INFO, "running idle loop= \n");
=C2=A0 =C2=A0 =C2=A0 =C2=A0 if ( cpu_is_offlin= e(cpu) )
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 stop_cpu();
=C2=A0 =C2=A0 =C2=A0 =C2=A0 }
}
}

=
Hopes this debugging makes some sense.

Best R= egards,
Jiatong Shen

Hello Stefano,

=C2=A0 =C2=A0 I am= able to obtain some serial logging (by enabling debugging and verbose debu= gging messages, hopefully select the right option). The message looks like= =C2=A0

(XEN) *** Serial input to DOM0 (type 'C= TRL-a' three times to switch input)
(XEN) Freed 372kB init memory.(XEN) d0v0: vGICD: unhandled word write 0x000000ffffffff to ICACTIVER4(XEN) d0v0: vGICD: unhandled word write 0x000000ffffffff to ICACTIVER8
= (XEN) d0v0: vGICD: unhandled word write 0x000000ffffffff to ICACTIVER12
= (XEN) d0v0: vGICD: unhandled word write 0x000000ffffffff to ICACTIVER16
= (XEN) d0v0: vGICD: unhandled word write 0x000000ffffffff to ICACTIVER20
= (XEN) d0v0: vGICD: unhandled word write 0x000000ffffffff to ICACTIVER24
= (XEN) d0v0: vGICD: unhandled word write 0x000000ffffffff to ICACTIVER28
= (XEN) d0v0: vGICD: unhandled word write 0x000000ffffffff to ICACTIVER32
= (XEN) d0v0: vGICD: unhandled word write 0x000000ffffffff to ICACTIVER36
= (XEN) d0v0: vGICD: unhandled word write 0x000000ffffffff to ICACTIVER40
=

Could you help find out where it is wrong ? Thank= you very much for the help!

Best Regards,
Jiatong Shen


On Sat, Jun 10, 2023 at 7:15=E2=80=AFAM= Jiatong Shen <yshxxsjt715@gmail.com> wrote:
Hello Julien,

=C2=A0 =C2=A0 Thank you very much for your help!

Best,

Jiatong Shen

On Fri, Jun 9, 2023 at 4:= 48=E2=80=AFPM Julien Grall <julien@xen.org> wrote:
Hello,

On 09/06/2023 03:32, Jiatong Shen wrote:
> Thank you for your answer. Can you teach me how to verify if acpi is > enabled?

You usually look at the .config. But I am not sure if this is provided
by the Debian package. If not, then your best option would be to build
your own Xen. To select ACPI, you want to use the menuconfig and select UNSUPPORTED and ACPI.

Cheers,

--
Julien Grall


--

Best Regards,

Jiatong Shen=


--

Best Regards,

Jiatong Shen=


--

Best Regards,

Jiatong Shen=
--000000000000d1987005fdd71296-- --000000000000d1987205fdd71298 Content-Type: application/xml; name="xen-4.17.0.config" Content-Disposition: attachment; filename="xen-4.17.0.config" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_lir7migf0 IwojIEF1dG9tYXRpY2FsbHkgZ2VuZXJhdGVkIGZpbGU7IERPIE5PVCBFRElULgojIFhlbi9hcm0g NC4xNy4wIENvbmZpZ3VyYXRpb24KIwpDT05GSUdfQ0NfSVNfR0NDPXkKQ09ORklHX0dDQ19WRVJT SU9OPTEwMDIwMQpDT05GSUdfQ0xBTkdfVkVSU0lPTj0wCkNPTkZJR19MRF9JU19HTlU9eQpDT05G SUdfQ0NfSEFTX1ZJU0lCSUxJVFlfQVRUUklCVVRFPXkKQ09ORklHX0FSTV82ND15CkNPTkZJR19B Uk09eQpDT05GSUdfQVJDSF9ERUZDT05GSUc9ImFyY2gvYXJtL2NvbmZpZ3MvYXJtNjRfZGVmY29u ZmlnIgoKIwojIEFyY2hpdGVjdHVyZSBGZWF0dXJlcwojCkNPTkZJR182NEJJVD15CkNPTkZJR19O Ul9DUFVTPTEyOApDT05GSUdfQUNQST15CkNPTkZJR19BUk1fRUZJPXkKQ09ORklHX0dJQ1YzPXkK IyBDT05GSUdfSEFTX0lUUyBpcyBub3Qgc2V0CkNPTkZJR19IVk09eQojIENPTkZJR19ORVdfVkdJ QyBpcyBub3Qgc2V0CkNPTkZJR19TQlNBX1ZVQVJUX0NPTlNPTEU9eQpDT05GSUdfQVJNX1NTQkQ9 eQpDT05GSUdfSEFSREVOX0JSQU5DSF9QUkVESUNUT1I9eQojIENPTkZJR19URUUgaXMgbm90IHNl dAojIGVuZCBvZiBBcmNoaXRlY3R1cmUgRmVhdHVyZXMKCiMKIyBBUk0gZXJyYXRhIHdvcmthcm91 bmQgdmlhIHRoZSBhbHRlcm5hdGl2ZSBmcmFtZXdvcmsKIwpDT05GSUdfQVJNNjRfRVJSQVRVTV84 MjczMTk9eQpDT05GSUdfQVJNNjRfRVJSQVRVTV84MjQwNjk9eQpDT05GSUdfQVJNNjRfRVJSQVRV TV84MTk0NzI9eQpDT05GSUdfQVJNNjRfRVJSQVRVTV84NDM0MTk9eQpDT05GSUdfQVJNNjRfRVJS QVRVTV84MzIwNzU9eQpDT05GSUdfQVJNNjRfRVJSQVRVTV84MzQyMjA9eQpDT05GSUdfQVJNX0VS UkFUVU1fODU4OTIxPXkKQ09ORklHX0FSTTY0X1dPUktBUk9VTkRfUkVQRUFUX1RMQkk9eQpDT05G SUdfQVJNNjRfRVJSQVRVTV8xMjg2ODA3PXkKIyBlbmQgb2YgQVJNIGVycmF0YSB3b3JrYXJvdW5k IHZpYSB0aGUgYWx0ZXJuYXRpdmUgZnJhbWV3b3JrCgpDT05GSUdfQVJNNjRfSEFSREVOX0JSQU5D SF9QUkVESUNUT1I9eQpDT05GSUdfQUxMX1BMQVQ9eQojIENPTkZJR19RRU1VIGlzIG5vdCBzZXQK IyBDT05GSUdfUkNBUjMgaXMgbm90IHNldAojIENPTkZJR19NUFNPQyBpcyBub3Qgc2V0CiMgQ09O RklHX05PX1BMQVQgaXMgbm90IHNldApDT05GSUdfQUxMNjRfUExBVD15CkNPTkZJR19NUFNPQ19Q TEFURk9STT15CgojCiMgQ29tbW9uIEZlYXR1cmVzCiMKQ09ORklHX0dSQU5UX1RBQkxFPXkKQ09O RklHX0hBU19BTFRFUk5BVElWRT15CkNPTkZJR19IQVNfREVWSUNFX1RSRUU9eQpDT05GSUdfSEFT X0ZBU1RfTVVMVElQTFk9eQpDT05GSUdfSEFTX1BEWD15CkNPTkZJR19IQVNfUE1BUD15CkNPTkZJ R19NRU1fQUNDRVNTPXkKIyBDT05GSUdfU1RBVElDX01FTU9SWSBpcyBub3Qgc2V0CgojCiMgU3Bl Y3VsYXRpdmUgaGFyZGVuaW5nCiMKQ09ORklHX1NQRUNVTEFUSVZFX0hBUkRFTl9BUlJBWT15CiMg ZW5kIG9mIFNwZWN1bGF0aXZlIGhhcmRlbmluZwoKIyBDT05GSUdfSFlQRlMgaXMgbm90IHNldAoj IENPTkZJR19JT1JFUV9TRVJWRVIgaXMgbm90IHNldAojIENPTkZJR19FRklfU0VUX1ZJUlRVQUxf QUREUkVTU19NQVAgaXMgbm90IHNldAojIENPTkZJR19YU00gaXMgbm90IHNldAojIENPTkZJR19B UkdPIGlzIG5vdCBzZXQKCiMKIyBTY2hlZHVsZXJzCiMKQ09ORklHX1NDSEVEX0NSRURJVD15CkNP TkZJR19TQ0hFRF9DUkVESVQyPXkKIyBDT05GSUdfU0NIRURfUlREUyBpcyBub3Qgc2V0CiMgQ09O RklHX1NDSEVEX0FSSU5DNjUzIGlzIG5vdCBzZXQKIyBDT05GSUdfU0NIRURfTlVMTCBpcyBub3Qg c2V0CiMgQ09ORklHX1NDSEVEX0NSRURJVF9ERUZBVUxUIGlzIG5vdCBzZXQKQ09ORklHX1NDSEVE X0NSRURJVDJfREVGQVVMVD15CkNPTkZJR19TQ0hFRF9ERUZBVUxUPSJjcmVkaXQyIgojIGVuZCBv ZiBTY2hlZHVsZXJzCgojIENPTkZJR19CT09UX1RJTUVfQ1BVUE9PTFMgaXMgbm90IHNldAojIENP TkZJR19MSVZFUEFUQ0ggaXMgbm90IHNldAojIENPTkZJR19FTkZPUkNFX1VOSVFVRV9TWU1CT0xT IGlzIG5vdCBzZXQKIyBDT05GSUdfU1VQUFJFU1NfRFVQTElDQVRFX1NZTUJPTF9XQVJOSU5HUyBp cyBub3Qgc2V0CkNPTkZJR19DTURMSU5FPSIiCkNPTkZJR19ET00wX01FTT0iIgpDT05GSUdfRFRC X0ZJTEU9IiIKQ09ORklHX1RSQUNFQlVGRkVSPXkKIyBlbmQgb2YgQ29tbW9uIEZlYXR1cmVzCgoj CiMgRGV2aWNlIERyaXZlcnMKIwpDT05GSUdfSEFTX05TMTY1NTA9eQpDT05GSUdfSEFTX0NBREVO Q0VfVUFSVD15CkNPTkZJR19IQVNfSU1YX0xQVUFSVD15CkNPTkZJR19IQVNfTVZFQlU9eQpDT05G SUdfSEFTX01FU09OPXkKQ09ORklHX0hBU19QTDAxMT15CkNPTkZJR19IQVNfU0NJRj15CkNPTkZJ R19TRVJJQUxfVFhfQlVGU0laRT0xNjM4NApDT05GSUdfSEFTX1BBU1NUSFJPVUdIPXkKQ09ORklH X0FSTV9TTU1VPXkKIyBDT05GSUdfSVBNTVVfVk1TQSBpcyBub3Qgc2V0CkNPTkZJR19JT01NVV9G T1JDRV9QVF9TSEFSRT15CiMgZW5kIG9mIERldmljZSBEcml2ZXJzCgpDT05GSUdfRVhQRVJUPXkK Q09ORklHX1VOU1VQUE9SVEVEPXkKCiMKIyBEZWJ1Z2dpbmcgT3B0aW9ucwojCkNPTkZJR19ERUJV Rz15CkNPTkZJR19ERUJVR19JTkZPPXkKIyBDT05GSUdfRlJBTUVfUE9JTlRFUiBpcyBub3Qgc2V0 CiMgQ09ORklHX0NPVkVSQUdFIGlzIG5vdCBzZXQKIyBDT05GSUdfREVCVUdfTE9DS19QUk9GSUxF IGlzIG5vdCBzZXQKIyBDT05GSUdfREVCVUdfTE9DS1MgaXMgbm90IHNldAojIENPTkZJR19QRVJG X0NPVU5URVJTIGlzIG5vdCBzZXQKQ09ORklHX1ZFUkJPU0VfREVCVUc9eQpDT05GSUdfREVWSUNF X1RSRUVfREVCVUc9eQojIENPTkZJR19TQ1JVQl9ERUJVRyBpcyBub3Qgc2V0CiMgQ09ORklHX0RF QlVHX1RSQUNFIGlzIG5vdCBzZXQKIyBDT05GSUdfWE1FTV9QT09MX1BPSVNPTiBpcyBub3Qgc2V0 CiMgZW5kIG9mIERlYnVnZ2luZyBPcHRpb25zCg== --000000000000d1987205fdd71298-- From xen-devel-bounces@lists.xenproject.org Sun Jun 11 11:05:25 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sun, 11 Jun 2023 11:05:25 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546724.853751 (Exim 4.92) (envelope-from ) id 1q8Isj-0001XQ-Sr; Sun, 11 Jun 2023 11:05:13 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546724.853751; Sun, 11 Jun 2023 11:05:13 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8Isj-0001XJ-OI; Sun, 11 Jun 2023 11:05:13 +0000 Received: by outflank-mailman (input) for mailman id 546724; Sun, 11 Jun 2023 11:05:13 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8Isj-0001X9-2z; Sun, 11 Jun 2023 11:05:13 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8Isi-00018g-OE; Sun, 11 Jun 2023 11:05:12 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8Isi-0006kV-Ch; Sun, 11 Jun 2023 11:05:12 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q8Isi-0003HT-CF; Sun, 11 Jun 2023 11:05:12 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=CaiGLwwv0m84zsU7EkmnZrTb9okSDC9ProMDnkMVZck=; b=JZ+T8Gk68Z8LOSjqn8D/ULXu1Z Klhc+Dy9z7lxnPywo/8f/IZTmr0AAmsZ1ZEtJj34C80joZK/iSh47lfEBQHLeFBiNWU4rTFdnGLk1 kuOtVdNde+zNlDMKOlJEbi0Efx2E69Cip3K9X3BRv9JpzS4hQIYwOdFeTZCkqrIK/aow=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable test] 181373: trouble: fail/pass/starved X-Osstest-Failures: xen-unstable:test-armhf-armhf-libvirt-raw::broken:regression xen-unstable:test-armhf-armhf-libvirt-raw:host-install(5):broken:heisenbug xen-unstable:test-amd64-i386-pair:xen-install/dst_host:fail:heisenbug xen-unstable:test-amd64-i386-examine-bios:xen-install:fail:heisenbug xen-unstable:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:debian-hvm-install:fail:heisenbug xen-unstable:test-amd64-amd64-xl-qcow2:guest-start/debian.repeat:fail:heisenbug xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-raw:hosts-allocate:starved:nonblocking xen-unstable:test-arm64-arm64-xl:hosts-allocate:starved:nonblocking xen-unstable:test-arm64-arm64-libvirt-xsm:hosts-allocate:starved:nonblocking xen-unstable:test-arm64-arm64-xl-vhd:hosts-allocate:starved:nonblocking xen-unstable:test-arm64-arm64-xl-xsm:hosts-allocate:starved:nonblocking xen-unstable:test-arm64-arm64-xl-thunderx:hosts-allocate:starved:nonblocking xen-unstable:test-arm64-arm64-xl-credit1:hosts-allocate:starved:nonblocking xen-unstable:test-arm64-arm64-xl-credit2:hosts-allocate:starved:nonblocking X-Osstest-Versions-This: xen=b4642c32c4d079916d5607ddda0232aae5e1690e X-Osstest-Versions-That: xen=b4642c32c4d079916d5607ddda0232aae5e1690e From: osstest service owner Date: Sun, 11 Jun 2023 11:05:12 +0000 flight 181373 xen-unstable real [real] http://logs.test-lab.xenproject.org/osstest/logs/181373/ Failures and problems with tests :-( Tests which did not succeed and are blocking, including tests which could not be run: test-armhf-armhf-libvirt-raw broken in 181360 Tests which are failing intermittently (not blocking): test-armhf-armhf-libvirt-raw 5 host-install(5) broken in 181360 pass in 181373 test-amd64-i386-pair 11 xen-install/dst_host fail in 181360 pass in 181373 test-amd64-i386-examine-bios 6 xen-install fail in 181360 pass in 181373 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 12 debian-hvm-install fail pass in 181360 test-amd64-amd64-xl-qcow2 21 guest-start/debian.repeat fail pass in 181360 Tests which did not succeed, but are not blocking: test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail in 181360 never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail in 181360 never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail in 181360 never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail in 181360 never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail in 181360 never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail in 181360 never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail in 181360 never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail in 181360 never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail in 181360 never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail in 181360 never pass test-arm64-arm64-xl 15 migrate-support-check fail in 181360 never pass test-arm64-arm64-xl 16 saverestore-support-check fail in 181360 never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail in 181360 never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail in 181360 never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail in 181360 never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail in 181360 never pass test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail like 181352 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 181360 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop fail like 181360 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 181360 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 181360 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop fail like 181360 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop fail like 181360 test-armhf-armhf-libvirt 16 saverestore-support-check fail like 181360 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail like 181360 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 181360 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop fail like 181360 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 181360 test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-i386-xl-pvshim 14 guest-start fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-i386-libvirt 15 migrate-support-check fail never pass test-amd64-i386-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-armhf-armhf-xl-multivcpu 15 migrate-support-check fail never pass test-armhf-armhf-xl-multivcpu 16 saverestore-support-check fail never pass test-amd64-i386-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-xl 15 migrate-support-check fail never pass test-armhf-armhf-xl 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 16 saverestore-support-check fail never pass test-armhf-armhf-xl-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 15 saverestore-support-check fail never pass test-armhf-armhf-xl-arndale 15 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 16 saverestore-support-check fail never pass test-armhf-armhf-xl-credit2 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit2 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt 15 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 15 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 3 hosts-allocate starved n/a test-arm64-arm64-xl 3 hosts-allocate starved n/a test-arm64-arm64-libvirt-xsm 3 hosts-allocate starved n/a test-arm64-arm64-xl-vhd 3 hosts-allocate starved n/a test-arm64-arm64-xl-xsm 3 hosts-allocate starved n/a test-arm64-arm64-xl-thunderx 3 hosts-allocate starved n/a test-arm64-arm64-xl-credit1 3 hosts-allocate starved n/a test-arm64-arm64-xl-credit2 3 hosts-allocate starved n/a version targeted for testing: xen b4642c32c4d079916d5607ddda0232aae5e1690e baseline version: xen b4642c32c4d079916d5607ddda0232aae5e1690e Last test of basis 181373 2023-06-11 02:27:12 Z 0 days Testing same since (not found) 0 attempts jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64-xtf pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-prev pass build-i386-prev pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-xtf-amd64-amd64-1 pass test-xtf-amd64-amd64-2 pass test-xtf-amd64-amd64-3 pass test-xtf-amd64-amd64-4 pass test-xtf-amd64-amd64-5 pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl starved test-armhf-armhf-xl pass test-amd64-i386-xl pass test-amd64-coresched-i386-xl pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-i386-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-i386-xl-qemuu-debianhvm-i386-xsm fail test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm starved test-amd64-i386-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm starved test-amd64-i386-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-i386-qemut-rhel6hvm-amd pass test-amd64-i386-qemuu-rhel6hvm-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-i386-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-freebsd10-amd64 pass test-amd64-amd64-qemuu-freebsd11-amd64 pass test-amd64-amd64-qemuu-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-i386-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-i386-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-i386-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-amd64-i386-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale pass test-amd64-amd64-examine-bios pass test-amd64-i386-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 starved test-armhf-armhf-xl-credit1 pass test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 starved test-armhf-armhf-xl-credit2 pass test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine pass test-amd64-i386-examine pass test-amd64-i386-freebsd10-i386 pass test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-i386-qemut-rhel6hvm-intel pass test-amd64-i386-qemuu-rhel6hvm-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt pass test-amd64-i386-libvirt pass test-amd64-amd64-livepatch pass test-amd64-i386-livepatch pass test-amd64-amd64-migrupgrade pass test-amd64-i386-migrupgrade pass test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu pass test-amd64-amd64-pair pass test-amd64-i386-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-i386-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-i386-xl-pvshim fail test-amd64-amd64-pygrub pass test-armhf-armhf-libvirt-qcow2 pass test-amd64-amd64-xl-qcow2 fail test-arm64-arm64-libvirt-raw starved test-armhf-armhf-libvirt-raw pass test-amd64-i386-libvirt-raw pass test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds pass test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-amd64-i386-xl-shadow pass test-arm64-arm64-xl-thunderx starved test-amd64-amd64-examine-uefi pass test-amd64-i386-examine-uefi pass test-amd64-amd64-libvirt-vhd pass test-arm64-arm64-xl-vhd starved test-armhf-armhf-xl-vhd pass test-amd64-i386-xl-vhd pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary broken-job test-armhf-armhf-libvirt-raw broken Published tested tree is already up to date. From xen-devel-bounces@lists.xenproject.org Sun Jun 11 14:08:48 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sun, 11 Jun 2023 14:08:48 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546742.853761 (Exim 4.92) (envelope-from ) id 1q8Lk5-0003IN-Pp; Sun, 11 Jun 2023 14:08:29 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546742.853761; Sun, 11 Jun 2023 14:08:29 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8Lk5-0003IG-NB; Sun, 11 Jun 2023 14:08:29 +0000 Received: by outflank-mailman (input) for mailman id 546742; Sun, 11 Jun 2023 14:08:28 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8Lk4-0003I4-6h; Sun, 11 Jun 2023 14:08:28 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8Lk3-00056P-U8; Sun, 11 Jun 2023 14:08:27 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8Lk3-0002UH-D2; Sun, 11 Jun 2023 14:08:27 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q8Lk3-00049R-CT; Sun, 11 Jun 2023 14:08:27 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=Z7Hc3gKYP366uPlDF7jWXPGibgsgiViJrKMNRhaXwpk=; b=WH7b6WbmgnfdfXXNh/yOmwll1X WGxTLCGEiWj0acjQh/fvS7EqKzJaHOYKLmEwdv/GxxOS0uOjAZHq9O+aLxfi+Q0DJLl3XJmpb7Rx1 a2CNEckNxEVlu0Fx7eg7PMEFnOlDZ/aJ7/DXSRrTTzysxmnsKB71WijRse8bpIwyNR2E=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [linux-linus test] 181371: regressions - FAIL X-Osstest-Failures: linux-linus:test-armhf-armhf-xl-credit1:xen-boot:fail:regression linux-linus:test-armhf-armhf-examine:reboot:fail:nonblocking linux-linus:test-armhf-armhf-xl-multivcpu:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking linux-linus:test-armhf-armhf-xl-credit2:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking linux-linus:test-armhf-armhf-libvirt:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-arndale:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-raw:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-qcow2:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-vhd:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-rtds:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-raw:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-qcow2:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: linux=64569520920a3ca5d456ddd9f4f95fc6ea9b8b45 X-Osstest-Versions-That: linux=6c538e1adbfc696ac4747fb10d63e704344f763d From: osstest service owner Date: Sun, 11 Jun 2023 14:08:27 +0000 flight 181371 linux-linus real [real] flight 181377 linux-linus real-retest [real] http://logs.test-lab.xenproject.org/osstest/logs/181371/ http://logs.test-lab.xenproject.org/osstest/logs/181377/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: test-armhf-armhf-xl-credit1 8 xen-boot fail REGR. vs. 180278 Tests which did not succeed, but are not blocking: test-armhf-armhf-examine 8 reboot fail like 180278 test-armhf-armhf-xl-multivcpu 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 180278 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 180278 test-armhf-armhf-xl-credit2 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 180278 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 180278 test-armhf-armhf-libvirt 8 xen-boot fail like 180278 test-armhf-armhf-xl-arndale 8 xen-boot fail like 180278 test-armhf-armhf-libvirt-raw 8 xen-boot fail like 180278 test-armhf-armhf-libvirt-qcow2 8 xen-boot fail like 180278 test-armhf-armhf-xl 8 xen-boot fail like 180278 test-armhf-armhf-xl-vhd 8 xen-boot fail like 180278 test-armhf-armhf-xl-rtds 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 180278 test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qcow2 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass version targeted for testing: linux 64569520920a3ca5d456ddd9f4f95fc6ea9b8b45 baseline version: linux 6c538e1adbfc696ac4747fb10d63e704344f763d Last test of basis 180278 2023-04-16 19:41:46 Z 55 days Failing since 180281 2023-04-17 06:24:36 Z 55 days 103 attempts Testing same since 181359 2023-06-10 04:58:32 Z 1 days 2 attempts ------------------------------------------------------------ 2677 people touched revisions under test, not listing them all jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl fail test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-freebsd11-amd64 pass test-amd64-amd64-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale fail test-amd64-amd64-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 fail test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 fail test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine fail test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt fail test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu fail test-amd64-amd64-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-amd64-pygrub pass test-amd64-amd64-libvirt-qcow2 pass test-armhf-armhf-libvirt-qcow2 fail test-amd64-amd64-libvirt-raw pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw fail test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds fail test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-amd64-xl-vhd pass test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd fail ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 338736 lines long.) From xen-devel-bounces@lists.xenproject.org Sun Jun 11 14:26:21 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sun, 11 Jun 2023 14:26:21 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546749.853770 (Exim 4.92) (envelope-from ) id 1q8M1H-0005lX-8a; Sun, 11 Jun 2023 14:26:15 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546749.853770; Sun, 11 Jun 2023 14:26:15 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8M1H-0005lQ-5c; Sun, 11 Jun 2023 14:26:15 +0000 Received: by outflank-mailman (input) for mailman id 546749; Sun, 11 Jun 2023 14:26:14 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8M1G-0005lG-LE; Sun, 11 Jun 2023 14:26:14 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8M1G-0005WB-E0; Sun, 11 Jun 2023 14:26:14 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8M1F-0002uZ-Ux; Sun, 11 Jun 2023 14:26:14 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q8M1F-0004lF-UR; Sun, 11 Jun 2023 14:26:13 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=7rDLqySf8Pu+++JKX+iH+NsTC2GusZoTz/KyPvc9Qf8=; b=t9BgH50/ZjkTcvOnzk2XXm4Ia+ qNDcVW+u882DhHVz2OHc2kFwWJzsF7tKdaEg8QlriQaaGMmCDQbwA+I5TmiFXSLeaezrQbVcUsBnc 5+Yw0A6DzGMSuldbQM2jZnqmfiY/gkC5JKXx4hMOPJ7fbyURnVa2JQBefE6Uvyvqjuco=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [libvirt test] 181374: tolerable all pass - PUSHED X-Osstest-Failures: libvirt:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking libvirt:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking libvirt:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking libvirt:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking libvirt:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking libvirt:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking libvirt:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking libvirt:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt:saverestore-support-check:fail:nonblocking libvirt:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking libvirt:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-qcow2:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-qcow2:saverestore-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking libvirt:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking libvirt:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking libvirt:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking libvirt:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking X-Osstest-Versions-This: libvirt=97f0bd00b4d055f2329392d2f8b7fe566fc65901 X-Osstest-Versions-That: libvirt=d09b73b5601e7d974698fc62d1fbc64efb7093dc From: osstest service owner Date: Sun, 11 Jun 2023 14:26:13 +0000 flight 181374 libvirt real [real] http://logs.test-lab.xenproject.org/osstest/logs/181374/ Failures :-/ but no regressions. Tests which did not succeed, but are not blocking: test-armhf-armhf-libvirt 16 saverestore-support-check fail like 181328 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail like 181328 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail like 181328 test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-i386-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-i386-libvirt 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt 15 migrate-support-check fail never pass test-arm64-arm64-libvirt 16 saverestore-support-check fail never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-i386-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-qcow2 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-qcow2 15 saverestore-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-check fail never pass test-armhf-armhf-libvirt 15 migrate-support-check fail never pass test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail never pass test-armhf-armhf-libvirt-raw 14 migrate-support-check fail never pass version targeted for testing: libvirt 97f0bd00b4d055f2329392d2f8b7fe566fc65901 baseline version: libvirt d09b73b5601e7d974698fc62d1fbc64efb7093dc Last test of basis 181328 2023-06-09 04:21:22 Z 2 days Testing same since 181358 2023-06-10 04:20:25 Z 1 days 2 attempts ------------------------------------------------------------ People who touched revisions under test: Malte Linke jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-i386-libvirt-xsm pass test-amd64-amd64-libvirt pass test-arm64-arm64-libvirt pass test-armhf-armhf-libvirt pass test-amd64-i386-libvirt pass test-amd64-amd64-libvirt-pair pass test-amd64-i386-libvirt-pair pass test-arm64-arm64-libvirt-qcow2 pass test-armhf-armhf-libvirt-qcow2 pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw pass test-amd64-i386-libvirt-raw pass test-amd64-amd64-libvirt-vhd pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Pushing revision : To xenbits.xen.org:/home/xen/git/libvirt.git d09b73b560..97f0bd00b4 97f0bd00b4d055f2329392d2f8b7fe566fc65901 -> xen-tested-master From xen-devel-bounces@lists.xenproject.org Sun Jun 11 15:39:54 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sun, 11 Jun 2023 15:39:54 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546756.853780 (Exim 4.92) (envelope-from ) id 1q8NAF-0004m1-M3; Sun, 11 Jun 2023 15:39:35 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546756.853780; Sun, 11 Jun 2023 15:39:35 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8NAF-0004lu-JP; Sun, 11 Jun 2023 15:39:35 +0000 Received: by outflank-mailman (input) for mailman id 546756; Sun, 11 Jun 2023 15:39:33 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8NAD-0004lk-Qs; Sun, 11 Jun 2023 15:39:33 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8NAD-00079N-L7; Sun, 11 Jun 2023 15:39:33 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8NAD-0005pv-98; Sun, 11 Jun 2023 15:39:33 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q8NAD-0002xe-8Z; Sun, 11 Jun 2023 15:39:33 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=1sR08vETV6/NpqNX0TTw2xsbHrBKsJ2KgM1pPFIRins=; b=OEtanFKH8IldGYQ/KNf/7VAVnL TijeJopUY9jxKYD0oxc4HWimFRIwsmxEawTMGTSh7MZza2EBaV6krW6qCOpVVA0K+uOnSB4x0YALu KFUxC7bNo5E7iMWexR7kCfSb8PZZyc6dwSqBYjCQ3Ega21p9YdivXsiBZ5npFY5WKf3g=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [qemu-mainline test] 181376: regressions - FAIL X-Osstest-Failures: qemu-mainline:build-arm64-xsm:xen-build:fail:regression qemu-mainline:build-arm64:xen-build:fail:regression qemu-mainline:build-amd64:xen-build:fail:regression qemu-mainline:build-i386:xen-build:fail:regression qemu-mainline:build-amd64-xsm:xen-build:fail:regression qemu-mainline:build-i386-xsm:xen-build:fail:regression qemu-mainline:build-armhf:xen-build:fail:regression qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-i386:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:build-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:build-arm64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:build-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:build-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pygrub:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking X-Osstest-Versions-This: qemuu=fdd0df5340a8ebc8de88078387ebc85c5af7b40f X-Osstest-Versions-That: qemuu=6972ef1440a9d685482d78672620a7482f2bd09a From: osstest service owner Date: Sun, 11 Jun 2023 15:39:33 +0000 flight 181376 qemu-mainline real [real] http://logs.test-lab.xenproject.org/osstest/logs/181376/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-arm64-xsm 6 xen-build fail REGR. vs. 180691 build-arm64 6 xen-build fail REGR. vs. 180691 build-amd64 6 xen-build fail REGR. vs. 180691 build-i386 6 xen-build fail REGR. vs. 180691 build-amd64-xsm 6 xen-build fail REGR. vs. 180691 build-i386-xsm 6 xen-build fail REGR. vs. 180691 build-armhf 6 xen-build fail REGR. vs. 180691 Tests which did not succeed, but are not blocking: test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-xl-xsm 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-raw 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-xsm 1 build-check(1) blocked n/a test-arm64-arm64-xl 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit1 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit2 1 build-check(1) blocked n/a test-arm64-arm64-xl-thunderx 1 build-check(1) blocked n/a test-arm64-arm64-xl-vhd 1 build-check(1) blocked n/a test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a test-armhf-armhf-libvirt 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-qcow2 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-raw 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a test-armhf-armhf-xl-arndale 1 build-check(1) blocked n/a test-armhf-armhf-xl-multivcpu 1 build-check(1) blocked n/a test-armhf-armhf-xl-rtds 1 build-check(1) blocked n/a test-armhf-armhf-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-amd 1 build-check(1) blocked n/a test-amd64-i386-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-raw 1 build-check(1) blocked n/a test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-i386 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-amd64 1 build-check(1) blocked n/a test-amd64-coresched-i386-xl 1 build-check(1) blocked n/a test-amd64-coresched-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-xsm 1 build-check(1) blocked n/a build-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-shadow 1 build-check(1) blocked n/a test-amd64-amd64-xl-rtds 1 build-check(1) blocked n/a build-arm64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a build-armhf-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a build-i386-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-amd 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-pair 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-qcow2 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-vhd 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvshim 1 build-check(1) blocked n/a test-amd64-amd64-pair 1 build-check(1) blocked n/a test-amd64-amd64-pygrub 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-intel 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd11-amd64 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd12-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-multivcpu 1 build-check(1) blocked n/a test-amd64-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit1 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit1 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-intel 1 build-check(1) blocked n/a test-amd64-i386-xl 1 build-check(1) blocked n/a test-amd64-i386-xl-pvshim 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a version targeted for testing: qemuu fdd0df5340a8ebc8de88078387ebc85c5af7b40f baseline version: qemuu 6972ef1440a9d685482d78672620a7482f2bd09a Last test of basis 180691 2023-05-17 10:45:22 Z 25 days Failing since 180699 2023-05-18 07:21:24 Z 24 days 82 attempts Testing same since 181372 2023-06-10 21:38:57 Z 0 days 3 attempts ------------------------------------------------------------ People who touched revisions under test: Afonso Bordado Akihiko Odaki Akihiro Suda Alex Bennée Alex Williamson Alexander Bulekov Alexander Graf Alexander Ivanov Alistair Francis Anastasia Belova Andrew Jeffery Ani Sinha Ani Sinha Anthony PERARD Anton Johansson BALATON Zoltan Bastian Koppelmann Bernhard Beschow Bin Meng Brian Cain Brice Goglin Camilla Conte Carlos Santos Christian Schoenebeck Chuck Zmudzinski Cindy Lu Clément Chigot Cornelia Huck Cédric Le Goater Cédric Le Goater Daniel Henrique Barboza Daniel P. Berrangé Daniil Kovalev David Hildenbrand David Woodhouse Emanuele Giuseppe Esposito Enze Li Eric Auger Eric Blake Eric DeVolder Erico Nunes Eugenio Pérez Fabiano Rosas Fan Ni Fiona Ebner Francesco Cagnin Francisco Iglesias Frederic Barrat Gavin Shan Gregory Price Gregory Price Hanna Czenczek Hao Zeng Hawkins Jiawei Igor Mammedov Ilya Leoshkevich Ira Weiny Jagannathan Raman Jason Wang Jean-Louis Dupond Jean-Philippe Brucker Jiaxun Yang John Snow Jonathan Cameron Juan Quintela Kevin Wolf Laurent Vivier Lei Yang Leonardo Bras Maksim Davydov Marc-André Lureau Marcin Juszkiewicz Marco Liebel Mark Cave-Ayland Markus Armbruster Matheus Tavares Bernardino Mattias Nissler Mauro Matteo Cascella Max Fritz Michael S. Tsirkin Michael Tokarev Michal Privoznik Milan Zamazal Mostafa Saleh Nicholas Piggin Nicolas Saenz Julienne Niek Linnenbank Palmer Dabbelt Paolo Bonzini Peter Maydell Peter Xu Philippe Mathieu-Daudé qianfan Zhao Raghu H Rene Engel Richard Henderson Richard Purdie Ricky Zhou Ryan Wendland Sebastian Ott Sergio Lopez Sid Manning Song Gao Stefan Hajnoczi Stefano Garzarella Steve Sistare Taylor Simpson Thomas Huth Thomas Weißschuh timothee.cocault@gmail.com Timothée Cocault Tommy Wu Vikram Garhwal Viktor Prutyanov Vitaly Cheptsov Vivek Kasireddy Vladimir Sementsov-Ogievskiy Volker Rümelin Xinyu Li Zeng Hao Zhenyu Zhang Zhenzhong Duan Zhuojia Shen jobs: build-amd64-xsm fail build-arm64-xsm fail build-i386-xsm fail build-amd64 fail build-arm64 fail build-armhf fail build-i386 fail build-amd64-libvirt blocked build-arm64-libvirt blocked build-armhf-libvirt blocked build-i386-libvirt blocked build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl blocked test-amd64-coresched-amd64-xl blocked test-arm64-arm64-xl blocked test-armhf-armhf-xl blocked test-amd64-i386-xl blocked test-amd64-coresched-i386-xl blocked test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-i386-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-amd64-libvirt-xsm blocked test-arm64-arm64-libvirt-xsm blocked test-amd64-i386-libvirt-xsm blocked test-amd64-amd64-xl-xsm blocked test-arm64-arm64-xl-xsm blocked test-amd64-i386-xl-xsm blocked test-amd64-amd64-qemuu-nested-amd blocked test-amd64-amd64-xl-pvhv2-amd blocked test-amd64-i386-qemuu-rhel6hvm-amd blocked test-amd64-amd64-dom0pvh-xl-amd blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-freebsd10-amd64 blocked test-amd64-amd64-qemuu-freebsd11-amd64 blocked test-amd64-amd64-qemuu-freebsd12-amd64 blocked test-amd64-amd64-xl-qemuu-ovmf-amd64 blocked test-amd64-i386-xl-qemuu-ovmf-amd64 blocked test-amd64-amd64-xl-qemuu-win7-amd64 blocked test-amd64-i386-xl-qemuu-win7-amd64 blocked test-amd64-amd64-xl-qemuu-ws16-amd64 blocked test-amd64-i386-xl-qemuu-ws16-amd64 blocked test-armhf-armhf-xl-arndale blocked test-amd64-amd64-xl-credit1 blocked test-arm64-arm64-xl-credit1 blocked test-armhf-armhf-xl-credit1 blocked test-amd64-amd64-xl-credit2 blocked test-arm64-arm64-xl-credit2 blocked test-armhf-armhf-xl-credit2 blocked test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-freebsd10-i386 blocked test-amd64-amd64-qemuu-nested-intel blocked test-amd64-amd64-xl-pvhv2-intel blocked test-amd64-i386-qemuu-rhel6hvm-intel blocked test-amd64-amd64-dom0pvh-xl-intel blocked test-amd64-amd64-libvirt blocked test-armhf-armhf-libvirt blocked test-amd64-i386-libvirt blocked test-amd64-amd64-xl-multivcpu blocked test-armhf-armhf-xl-multivcpu blocked test-amd64-amd64-pair blocked test-amd64-i386-pair blocked test-amd64-amd64-libvirt-pair blocked test-amd64-i386-libvirt-pair blocked test-amd64-amd64-xl-pvshim blocked test-amd64-i386-xl-pvshim blocked test-amd64-amd64-pygrub blocked test-armhf-armhf-libvirt-qcow2 blocked test-amd64-amd64-xl-qcow2 blocked test-arm64-arm64-libvirt-raw blocked test-armhf-armhf-libvirt-raw blocked test-amd64-i386-libvirt-raw blocked test-amd64-amd64-xl-rtds blocked test-armhf-armhf-xl-rtds blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-amd64-xl-shadow blocked test-amd64-i386-xl-shadow blocked test-arm64-arm64-xl-thunderx blocked test-amd64-amd64-libvirt-vhd blocked test-arm64-arm64-xl-vhd blocked test-armhf-armhf-xl-vhd blocked test-amd64-i386-xl-vhd blocked ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 17052 lines long.) From xen-devel-bounces@lists.xenproject.org Sun Jun 11 17:42:54 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sun, 11 Jun 2023 17:42:54 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546765.853790 (Exim 4.92) (envelope-from ) id 1q8P5N-0001k0-FZ; Sun, 11 Jun 2023 17:42:41 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546765.853790; Sun, 11 Jun 2023 17:42:41 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8P5N-0001jt-Cv; Sun, 11 Jun 2023 17:42:41 +0000 Received: by outflank-mailman (input) for mailman id 546765; Sun, 11 Jun 2023 17:42:40 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8P5M-0001jj-6E; Sun, 11 Jun 2023 17:42:40 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8P5L-0001pf-Vo; Sun, 11 Jun 2023 17:42:40 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8P5L-0002JD-FO; Sun, 11 Jun 2023 17:42:39 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q8P5L-0007ev-Ez; Sun, 11 Jun 2023 17:42:39 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=8UPylYW2GSTdbWOnSn+NkYG+AjvTCXxJSbgnAZLzLOc=; b=GMUY2oPjW3BO4s90hXzNeqcYho SglcHmxdfSv2TC2Wc0+C5m7CRL3/FhtzDL1RMCpoUTMEq2AzOwvj/qY3qek9mMuPjlU4CjZVvve96 DMH9T6UpMyuJE9sUSPOJEY/VSSqf2cBrnlIWtf/I8VOvR28bsBgTNIRASPjukZL3Pu2U=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [qemu-mainline test] 181379: regressions - FAIL X-Osstest-Failures: qemu-mainline:build-arm64-xsm:xen-build:fail:regression qemu-mainline:build-arm64:xen-build:fail:regression qemu-mainline:build-amd64:xen-build:fail:regression qemu-mainline:build-i386:xen-build:fail:regression qemu-mainline:build-amd64-xsm:xen-build:fail:regression qemu-mainline:build-i386-xsm:xen-build:fail:regression qemu-mainline:build-armhf:xen-build:fail:regression qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-i386:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:build-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:build-arm64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:build-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:build-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pygrub:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking X-Osstest-Versions-This: qemuu=fdd0df5340a8ebc8de88078387ebc85c5af7b40f X-Osstest-Versions-That: qemuu=6972ef1440a9d685482d78672620a7482f2bd09a From: osstest service owner Date: Sun, 11 Jun 2023 17:42:39 +0000 flight 181379 qemu-mainline real [real] http://logs.test-lab.xenproject.org/osstest/logs/181379/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-arm64-xsm 6 xen-build fail REGR. vs. 180691 build-arm64 6 xen-build fail REGR. vs. 180691 build-amd64 6 xen-build fail REGR. vs. 180691 build-i386 6 xen-build fail REGR. vs. 180691 build-amd64-xsm 6 xen-build fail REGR. vs. 180691 build-i386-xsm 6 xen-build fail REGR. vs. 180691 build-armhf 6 xen-build fail REGR. vs. 180691 Tests which did not succeed, but are not blocking: test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-xl-xsm 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-raw 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-xsm 1 build-check(1) blocked n/a test-arm64-arm64-xl 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit1 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit2 1 build-check(1) blocked n/a test-arm64-arm64-xl-thunderx 1 build-check(1) blocked n/a test-arm64-arm64-xl-vhd 1 build-check(1) blocked n/a test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a test-armhf-armhf-libvirt 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-qcow2 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-raw 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a test-armhf-armhf-xl-arndale 1 build-check(1) blocked n/a test-armhf-armhf-xl-multivcpu 1 build-check(1) blocked n/a test-armhf-armhf-xl-rtds 1 build-check(1) blocked n/a test-armhf-armhf-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-amd 1 build-check(1) blocked n/a test-amd64-i386-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-raw 1 build-check(1) blocked n/a test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-i386 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-amd64 1 build-check(1) blocked n/a test-amd64-coresched-i386-xl 1 build-check(1) blocked n/a test-amd64-coresched-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-xsm 1 build-check(1) blocked n/a build-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-shadow 1 build-check(1) blocked n/a test-amd64-amd64-xl-rtds 1 build-check(1) blocked n/a build-arm64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a build-armhf-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a build-i386-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-amd 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-pair 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-qcow2 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-vhd 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvshim 1 build-check(1) blocked n/a test-amd64-amd64-pair 1 build-check(1) blocked n/a test-amd64-amd64-pygrub 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-intel 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd11-amd64 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd12-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-multivcpu 1 build-check(1) blocked n/a test-amd64-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit1 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit1 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit2 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-intel 1 build-check(1) blocked n/a test-amd64-i386-xl 1 build-check(1) blocked n/a test-amd64-i386-xl-pvshim 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a version targeted for testing: qemuu fdd0df5340a8ebc8de88078387ebc85c5af7b40f baseline version: qemuu 6972ef1440a9d685482d78672620a7482f2bd09a Last test of basis 180691 2023-05-17 10:45:22 Z 25 days Failing since 180699 2023-05-18 07:21:24 Z 24 days 83 attempts Testing same since 181372 2023-06-10 21:38:57 Z 0 days 4 attempts ------------------------------------------------------------ People who touched revisions under test: Afonso Bordado Akihiko Odaki Akihiro Suda Alex Bennée Alex Williamson Alexander Bulekov Alexander Graf Alexander Ivanov Alistair Francis Anastasia Belova Andrew Jeffery Ani Sinha Ani Sinha Anthony PERARD Anton Johansson BALATON Zoltan Bastian Koppelmann Bernhard Beschow Bin Meng Brian Cain Brice Goglin Camilla Conte Carlos Santos Christian Schoenebeck Chuck Zmudzinski Cindy Lu Clément Chigot Cornelia Huck Cédric Le Goater Cédric Le Goater Daniel Henrique Barboza Daniel P. Berrangé Daniil Kovalev David Hildenbrand David Woodhouse Emanuele Giuseppe Esposito Enze Li Eric Auger Eric Blake Eric DeVolder Erico Nunes Eugenio Pérez Fabiano Rosas Fan Ni Fiona Ebner Francesco Cagnin Francisco Iglesias Frederic Barrat Gavin Shan Gregory Price Gregory Price Hanna Czenczek Hao Zeng Hawkins Jiawei Igor Mammedov Ilya Leoshkevich Ira Weiny Jagannathan Raman Jason Wang Jean-Louis Dupond Jean-Philippe Brucker Jiaxun Yang John Snow Jonathan Cameron Juan Quintela Kevin Wolf Laurent Vivier Lei Yang Leonardo Bras Maksim Davydov Marc-André Lureau Marcin Juszkiewicz Marco Liebel Mark Cave-Ayland Markus Armbruster Matheus Tavares Bernardino Mattias Nissler Mauro Matteo Cascella Max Fritz Michael S. Tsirkin Michael Tokarev Michal Privoznik Milan Zamazal Mostafa Saleh Nicholas Piggin Nicolas Saenz Julienne Niek Linnenbank Palmer Dabbelt Paolo Bonzini Peter Maydell Peter Xu Philippe Mathieu-Daudé qianfan Zhao Raghu H Rene Engel Richard Henderson Richard Purdie Ricky Zhou Ryan Wendland Sebastian Ott Sergio Lopez Sid Manning Song Gao Stefan Hajnoczi Stefano Garzarella Steve Sistare Taylor Simpson Thomas Huth Thomas Weißschuh timothee.cocault@gmail.com Timothée Cocault Tommy Wu Vikram Garhwal Viktor Prutyanov Vitaly Cheptsov Vivek Kasireddy Vladimir Sementsov-Ogievskiy Volker Rümelin Xinyu Li Zeng Hao Zhenyu Zhang Zhenzhong Duan Zhuojia Shen jobs: build-amd64-xsm fail build-arm64-xsm fail build-i386-xsm fail build-amd64 fail build-arm64 fail build-armhf fail build-i386 fail build-amd64-libvirt blocked build-arm64-libvirt blocked build-armhf-libvirt blocked build-i386-libvirt blocked build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl blocked test-amd64-coresched-amd64-xl blocked test-arm64-arm64-xl blocked test-armhf-armhf-xl blocked test-amd64-i386-xl blocked test-amd64-coresched-i386-xl blocked test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-i386-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-amd64-libvirt-xsm blocked test-arm64-arm64-libvirt-xsm blocked test-amd64-i386-libvirt-xsm blocked test-amd64-amd64-xl-xsm blocked test-arm64-arm64-xl-xsm blocked test-amd64-i386-xl-xsm blocked test-amd64-amd64-qemuu-nested-amd blocked test-amd64-amd64-xl-pvhv2-amd blocked test-amd64-i386-qemuu-rhel6hvm-amd blocked test-amd64-amd64-dom0pvh-xl-amd blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-freebsd10-amd64 blocked test-amd64-amd64-qemuu-freebsd11-amd64 blocked test-amd64-amd64-qemuu-freebsd12-amd64 blocked test-amd64-amd64-xl-qemuu-ovmf-amd64 blocked test-amd64-i386-xl-qemuu-ovmf-amd64 blocked test-amd64-amd64-xl-qemuu-win7-amd64 blocked test-amd64-i386-xl-qemuu-win7-amd64 blocked test-amd64-amd64-xl-qemuu-ws16-amd64 blocked test-amd64-i386-xl-qemuu-ws16-amd64 blocked test-armhf-armhf-xl-arndale blocked test-amd64-amd64-xl-credit1 blocked test-arm64-arm64-xl-credit1 blocked test-armhf-armhf-xl-credit1 blocked test-amd64-amd64-xl-credit2 blocked test-arm64-arm64-xl-credit2 blocked test-armhf-armhf-xl-credit2 blocked test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-freebsd10-i386 blocked test-amd64-amd64-qemuu-nested-intel blocked test-amd64-amd64-xl-pvhv2-intel blocked test-amd64-i386-qemuu-rhel6hvm-intel blocked test-amd64-amd64-dom0pvh-xl-intel blocked test-amd64-amd64-libvirt blocked test-armhf-armhf-libvirt blocked test-amd64-i386-libvirt blocked test-amd64-amd64-xl-multivcpu blocked test-armhf-armhf-xl-multivcpu blocked test-amd64-amd64-pair blocked test-amd64-i386-pair blocked test-amd64-amd64-libvirt-pair blocked test-amd64-i386-libvirt-pair blocked test-amd64-amd64-xl-pvshim blocked test-amd64-i386-xl-pvshim blocked test-amd64-amd64-pygrub blocked test-armhf-armhf-libvirt-qcow2 blocked test-amd64-amd64-xl-qcow2 blocked test-arm64-arm64-libvirt-raw blocked test-armhf-armhf-libvirt-raw blocked test-amd64-i386-libvirt-raw blocked test-amd64-amd64-xl-rtds blocked test-armhf-armhf-xl-rtds blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-amd64-xl-shadow blocked test-amd64-i386-xl-shadow blocked test-arm64-arm64-xl-thunderx blocked test-amd64-amd64-libvirt-vhd blocked test-arm64-arm64-xl-vhd blocked test-armhf-armhf-xl-vhd blocked test-amd64-i386-xl-vhd blocked ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 17052 lines long.) From xen-devel-bounces@lists.xenproject.org Sun Jun 11 22:01:14 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sun, 11 Jun 2023 22:01:14 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546772.853801 (Exim 4.92) (envelope-from ) id 1q8T7I-0002i7-H8; Sun, 11 Jun 2023 22:00:56 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546772.853801; Sun, 11 Jun 2023 22:00:56 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8T7I-0002i0-Dn; Sun, 11 Jun 2023 22:00:56 +0000 Received: by outflank-mailman (input) for mailman id 546772; Sun, 11 Jun 2023 22:00:55 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8T7H-0002hq-Df; Sun, 11 Jun 2023 22:00:55 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8T7H-0007Xd-7n; Sun, 11 Jun 2023 22:00:55 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8T7G-0008AV-Go; Sun, 11 Jun 2023 22:00:54 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q8T7G-0000iZ-GK; Sun, 11 Jun 2023 22:00:54 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=JZJfTm0KE3CFXnryJD0gfEPl1sgNtO6rpTHdNq1FnEE=; b=1+z8kywjD8odZ8FezHs75Z/JZa 8846cIn7Kjq9w35hAD9RiBW9GtlswvXkZOlCk+RLuZ4phR5MDS9WG+CV/vcpGpmKyINHQhjsglBWg cMMzvFkmb2j6aAaI9UVy2hoTZMRlPZQj+cJcz+KkKfByA397p+c+HA6QV2/bTABEdsCQ=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [qemu-mainline test] 181380: regressions - FAIL X-Osstest-Failures: qemu-mainline:build-arm64-xsm:xen-build:fail:regression qemu-mainline:build-arm64:xen-build:fail:regression qemu-mainline:build-amd64:xen-build:fail:regression qemu-mainline:build-i386:xen-build:fail:regression qemu-mainline:build-amd64-xsm:xen-build:fail:regression qemu-mainline:build-i386-xsm:xen-build:fail:regression qemu-mainline:build-armhf:xen-build:fail:regression qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-i386:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:build-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:build-arm64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:build-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:build-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pygrub:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking X-Osstest-Versions-This: qemuu=fdd0df5340a8ebc8de88078387ebc85c5af7b40f X-Osstest-Versions-That: qemuu=6972ef1440a9d685482d78672620a7482f2bd09a From: osstest service owner Date: Sun, 11 Jun 2023 22:00:54 +0000 flight 181380 qemu-mainline real [real] http://logs.test-lab.xenproject.org/osstest/logs/181380/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-arm64-xsm 6 xen-build fail REGR. vs. 180691 build-arm64 6 xen-build fail REGR. vs. 180691 build-amd64 6 xen-build fail REGR. vs. 180691 build-i386 6 xen-build fail REGR. vs. 180691 build-amd64-xsm 6 xen-build fail REGR. vs. 180691 build-i386-xsm 6 xen-build fail REGR. vs. 180691 build-armhf 6 xen-build fail REGR. vs. 180691 Tests which did not succeed, but are not blocking: test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-xl-xsm 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-raw 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-xsm 1 build-check(1) blocked n/a test-arm64-arm64-xl 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit1 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit2 1 build-check(1) blocked n/a test-arm64-arm64-xl-thunderx 1 build-check(1) blocked n/a test-arm64-arm64-xl-vhd 1 build-check(1) blocked n/a test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a test-armhf-armhf-libvirt 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-qcow2 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-raw 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a test-armhf-armhf-xl-arndale 1 build-check(1) blocked n/a test-armhf-armhf-xl-multivcpu 1 build-check(1) blocked n/a test-armhf-armhf-xl-rtds 1 build-check(1) blocked n/a test-armhf-armhf-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-amd 1 build-check(1) blocked n/a test-amd64-i386-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-raw 1 build-check(1) blocked n/a test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-i386 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-amd64 1 build-check(1) blocked n/a test-amd64-coresched-i386-xl 1 build-check(1) blocked n/a test-amd64-coresched-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-xsm 1 build-check(1) blocked n/a build-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-shadow 1 build-check(1) blocked n/a test-amd64-amd64-xl-rtds 1 build-check(1) blocked n/a build-arm64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a build-armhf-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a build-i386-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-amd 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-pair 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-qcow2 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-vhd 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvshim 1 build-check(1) blocked n/a test-amd64-amd64-pair 1 build-check(1) blocked n/a test-amd64-amd64-pygrub 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-intel 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd11-amd64 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd12-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-multivcpu 1 build-check(1) blocked n/a test-amd64-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit1 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit1 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-intel 1 build-check(1) blocked n/a test-amd64-i386-xl 1 build-check(1) blocked n/a test-amd64-i386-xl-pvshim 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a version targeted for testing: qemuu fdd0df5340a8ebc8de88078387ebc85c5af7b40f baseline version: qemuu 6972ef1440a9d685482d78672620a7482f2bd09a Last test of basis 180691 2023-05-17 10:45:22 Z 25 days Failing since 180699 2023-05-18 07:21:24 Z 24 days 84 attempts Testing same since 181372 2023-06-10 21:38:57 Z 1 days 5 attempts ------------------------------------------------------------ People who touched revisions under test: Afonso Bordado Akihiko Odaki Akihiro Suda Alex Bennée Alex Williamson Alexander Bulekov Alexander Graf Alexander Ivanov Alistair Francis Anastasia Belova Andrew Jeffery Ani Sinha Ani Sinha Anthony PERARD Anton Johansson BALATON Zoltan Bastian Koppelmann Bernhard Beschow Bin Meng Brian Cain Brice Goglin Camilla Conte Carlos Santos Christian Schoenebeck Chuck Zmudzinski Cindy Lu Clément Chigot Cornelia Huck Cédric Le Goater Cédric Le Goater Daniel Henrique Barboza Daniel P. Berrangé Daniil Kovalev David Hildenbrand David Woodhouse Emanuele Giuseppe Esposito Enze Li Eric Auger Eric Blake Eric DeVolder Erico Nunes Eugenio Pérez Fabiano Rosas Fan Ni Fiona Ebner Francesco Cagnin Francisco Iglesias Frederic Barrat Gavin Shan Gregory Price Gregory Price Hanna Czenczek Hao Zeng Hawkins Jiawei Igor Mammedov Ilya Leoshkevich Ira Weiny Jagannathan Raman Jason Wang Jean-Louis Dupond Jean-Philippe Brucker Jiaxun Yang John Snow Jonathan Cameron Juan Quintela Kevin Wolf Laurent Vivier Lei Yang Leonardo Bras Maksim Davydov Marc-André Lureau Marcin Juszkiewicz Marco Liebel Mark Cave-Ayland Markus Armbruster Matheus Tavares Bernardino Mattias Nissler Mauro Matteo Cascella Max Fritz Michael S. Tsirkin Michael Tokarev Michal Privoznik Milan Zamazal Mostafa Saleh Nicholas Piggin Nicolas Saenz Julienne Niek Linnenbank Palmer Dabbelt Paolo Bonzini Peter Maydell Peter Xu Philippe Mathieu-Daudé qianfan Zhao Raghu H Rene Engel Richard Henderson Richard Purdie Ricky Zhou Ryan Wendland Sebastian Ott Sergio Lopez Sid Manning Song Gao Stefan Hajnoczi Stefano Garzarella Steve Sistare Taylor Simpson Thomas Huth Thomas Weißschuh timothee.cocault@gmail.com Timothée Cocault Tommy Wu Vikram Garhwal Viktor Prutyanov Vitaly Cheptsov Vivek Kasireddy Vladimir Sementsov-Ogievskiy Volker Rümelin Xinyu Li Zeng Hao Zhenyu Zhang Zhenzhong Duan Zhuojia Shen jobs: build-amd64-xsm fail build-arm64-xsm fail build-i386-xsm fail build-amd64 fail build-arm64 fail build-armhf fail build-i386 fail build-amd64-libvirt blocked build-arm64-libvirt blocked build-armhf-libvirt blocked build-i386-libvirt blocked build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl blocked test-amd64-coresched-amd64-xl blocked test-arm64-arm64-xl blocked test-armhf-armhf-xl blocked test-amd64-i386-xl blocked test-amd64-coresched-i386-xl blocked test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-i386-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-amd64-libvirt-xsm blocked test-arm64-arm64-libvirt-xsm blocked test-amd64-i386-libvirt-xsm blocked test-amd64-amd64-xl-xsm blocked test-arm64-arm64-xl-xsm blocked test-amd64-i386-xl-xsm blocked test-amd64-amd64-qemuu-nested-amd blocked test-amd64-amd64-xl-pvhv2-amd blocked test-amd64-i386-qemuu-rhel6hvm-amd blocked test-amd64-amd64-dom0pvh-xl-amd blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-freebsd10-amd64 blocked test-amd64-amd64-qemuu-freebsd11-amd64 blocked test-amd64-amd64-qemuu-freebsd12-amd64 blocked test-amd64-amd64-xl-qemuu-ovmf-amd64 blocked test-amd64-i386-xl-qemuu-ovmf-amd64 blocked test-amd64-amd64-xl-qemuu-win7-amd64 blocked test-amd64-i386-xl-qemuu-win7-amd64 blocked test-amd64-amd64-xl-qemuu-ws16-amd64 blocked test-amd64-i386-xl-qemuu-ws16-amd64 blocked test-armhf-armhf-xl-arndale blocked test-amd64-amd64-xl-credit1 blocked test-arm64-arm64-xl-credit1 blocked test-armhf-armhf-xl-credit1 blocked test-amd64-amd64-xl-credit2 blocked test-arm64-arm64-xl-credit2 blocked test-armhf-armhf-xl-credit2 blocked test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-freebsd10-i386 blocked test-amd64-amd64-qemuu-nested-intel blocked test-amd64-amd64-xl-pvhv2-intel blocked test-amd64-i386-qemuu-rhel6hvm-intel blocked test-amd64-amd64-dom0pvh-xl-intel blocked test-amd64-amd64-libvirt blocked test-armhf-armhf-libvirt blocked test-amd64-i386-libvirt blocked test-amd64-amd64-xl-multivcpu blocked test-armhf-armhf-xl-multivcpu blocked test-amd64-amd64-pair blocked test-amd64-i386-pair blocked test-amd64-amd64-libvirt-pair blocked test-amd64-i386-libvirt-pair blocked test-amd64-amd64-xl-pvshim blocked test-amd64-i386-xl-pvshim blocked test-amd64-amd64-pygrub blocked test-armhf-armhf-libvirt-qcow2 blocked test-amd64-amd64-xl-qcow2 blocked test-arm64-arm64-libvirt-raw blocked test-armhf-armhf-libvirt-raw blocked test-amd64-i386-libvirt-raw blocked test-amd64-amd64-xl-rtds blocked test-armhf-armhf-xl-rtds blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-amd64-xl-shadow blocked test-amd64-i386-xl-shadow blocked test-arm64-arm64-xl-thunderx blocked test-amd64-amd64-libvirt-vhd blocked test-arm64-arm64-xl-vhd blocked test-armhf-armhf-xl-vhd blocked test-amd64-i386-xl-vhd blocked ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 17052 lines long.) From xen-devel-bounces@lists.xenproject.org Sun Jun 11 22:03:17 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sun, 11 Jun 2023 22:03:17 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546781.853811 (Exim 4.92) (envelope-from ) id 1q8T9Z-0003K7-2f; Sun, 11 Jun 2023 22:03:17 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546781.853811; Sun, 11 Jun 2023 22:03:17 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8T9Y-0003K0-Vz; Sun, 11 Jun 2023 22:03:16 +0000 Received: by outflank-mailman (input) for mailman id 546781; Sun, 11 Jun 2023 22:03:15 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8T9X-0003Jq-SO; Sun, 11 Jun 2023 22:03:15 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8T9X-0007bI-Q2; Sun, 11 Jun 2023 22:03:15 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8T9X-0008Ch-98; Sun, 11 Jun 2023 22:03:15 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q8T9X-0000jJ-8b; Sun, 11 Jun 2023 22:03:15 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=VQoB8Iglh1qzPOCoSkCLAPmI3O4BLDVGmS/LzNI680I=; b=Ij11i1yyBLI2cQn5f9kIDvgW3X 4zaLTH27IXK2eC7umI1Ssjy4CsobtlSk8XkvfZ8tEAuJKESKHiJig7jwgV0HipMYc49H8isqSXa3b M0+pqdsqNXPKQSBF24LHVKzCCUwpsFwF2H76p/Tnj7vIefUmYGaGkFUCnjJ+RkXPIIYc=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [linux-linus test] 181378: regressions - FAIL X-Osstest-Failures: linux-linus:test-armhf-armhf-xl-credit1:xen-boot:fail:regression linux-linus:test-armhf-armhf-examine:reboot:fail:nonblocking linux-linus:test-armhf-armhf-xl-multivcpu:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking linux-linus:test-armhf-armhf-xl-credit2:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking linux-linus:test-armhf-armhf-libvirt:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-arndale:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-raw:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-qcow2:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-vhd:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-rtds:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-raw:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-qcow2:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: linux=022ce8862dff83c859089cd14bc4dca0733e2f90 X-Osstest-Versions-That: linux=6c538e1adbfc696ac4747fb10d63e704344f763d From: osstest service owner Date: Sun, 11 Jun 2023 22:03:15 +0000 flight 181378 linux-linus real [real] flight 181381 linux-linus real-retest [real] http://logs.test-lab.xenproject.org/osstest/logs/181378/ http://logs.test-lab.xenproject.org/osstest/logs/181381/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: test-armhf-armhf-xl-credit1 8 xen-boot fail REGR. vs. 180278 Tests which did not succeed, but are not blocking: test-armhf-armhf-examine 8 reboot fail like 180278 test-armhf-armhf-xl-multivcpu 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 180278 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 180278 test-armhf-armhf-xl-credit2 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 180278 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 180278 test-armhf-armhf-libvirt 8 xen-boot fail like 180278 test-armhf-armhf-xl-arndale 8 xen-boot fail like 180278 test-armhf-armhf-libvirt-raw 8 xen-boot fail like 180278 test-armhf-armhf-libvirt-qcow2 8 xen-boot fail like 180278 test-armhf-armhf-xl 8 xen-boot fail like 180278 test-armhf-armhf-xl-vhd 8 xen-boot fail like 180278 test-armhf-armhf-xl-rtds 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 180278 test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qcow2 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass version targeted for testing: linux 022ce8862dff83c859089cd14bc4dca0733e2f90 baseline version: linux 6c538e1adbfc696ac4747fb10d63e704344f763d Last test of basis 180278 2023-04-16 19:41:46 Z 56 days Failing since 180281 2023-04-17 06:24:36 Z 55 days 104 attempts Testing same since 181378 2023-06-11 14:11:41 Z 0 days 1 attempts ------------------------------------------------------------ 2681 people touched revisions under test, not listing them all jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl fail test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-freebsd11-amd64 pass test-amd64-amd64-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale fail test-amd64-amd64-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 fail test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 fail test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine fail test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt fail test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu fail test-amd64-amd64-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-amd64-pygrub pass test-amd64-amd64-libvirt-qcow2 pass test-armhf-armhf-libvirt-qcow2 fail test-amd64-amd64-libvirt-raw pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw fail test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds fail test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-amd64-xl-vhd pass test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd fail ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 339955 lines long.) From xen-devel-bounces@lists.xenproject.org Sun Jun 11 23:26:38 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sun, 11 Jun 2023 23:26:38 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546788.853821 (Exim 4.92) (envelope-from ) id 1q8US1-0003uR-4w; Sun, 11 Jun 2023 23:26:25 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546788.853821; Sun, 11 Jun 2023 23:26:25 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8US1-0003uK-1O; Sun, 11 Jun 2023 23:26:25 +0000 Received: by outflank-mailman (input) for mailman id 546788; Sun, 11 Jun 2023 23:26:23 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8URz-0003uA-2O; Sun, 11 Jun 2023 23:26:23 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8URy-000121-SU; Sun, 11 Jun 2023 23:26:22 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8URy-0001ag-EH; Sun, 11 Jun 2023 23:26:22 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q8URy-000824-Dl; Sun, 11 Jun 2023 23:26:22 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=L9Au2l8/ymsjouSm7Ei/+YhxzRN5KZ+6XiRXuVb6bLU=; b=so+3DBjM19LYLRw6j3jTVgavl6 nIWCAfzOr+OjRtW/A2Ior1Oph+vWZLZHd5LG2yrRu7mjs100uBCgn2zrhAGggE9Fvg2PdXMAdQsSO Y55v0flKN342ulUbUXazKfPx4JtCivKQNsfOZs6FFJbBAn4vzjDxom7+z8VljQAnUkNE=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [qemu-mainline test] 181382: regressions - FAIL X-Osstest-Failures: qemu-mainline:build-arm64-xsm:xen-build:fail:regression qemu-mainline:build-arm64:xen-build:fail:regression qemu-mainline:build-amd64:xen-build:fail:regression qemu-mainline:build-i386:xen-build:fail:regression qemu-mainline:build-amd64-xsm:xen-build:fail:regression qemu-mainline:build-i386-xsm:xen-build:fail:regression qemu-mainline:build-armhf:xen-build:fail:regression qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-i386:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:build-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:build-arm64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:build-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:build-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pygrub:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking X-Osstest-Versions-This: qemuu=fdd0df5340a8ebc8de88078387ebc85c5af7b40f X-Osstest-Versions-That: qemuu=6972ef1440a9d685482d78672620a7482f2bd09a From: osstest service owner Date: Sun, 11 Jun 2023 23:26:22 +0000 flight 181382 qemu-mainline real [real] http://logs.test-lab.xenproject.org/osstest/logs/181382/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-arm64-xsm 6 xen-build fail REGR. vs. 180691 build-arm64 6 xen-build fail REGR. vs. 180691 build-amd64 6 xen-build fail REGR. vs. 180691 build-i386 6 xen-build fail REGR. vs. 180691 build-amd64-xsm 6 xen-build fail REGR. vs. 180691 build-i386-xsm 6 xen-build fail REGR. vs. 180691 build-armhf 6 xen-build fail REGR. vs. 180691 Tests which did not succeed, but are not blocking: test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-xl-xsm 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-raw 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-xsm 1 build-check(1) blocked n/a test-arm64-arm64-xl 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit1 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit2 1 build-check(1) blocked n/a test-arm64-arm64-xl-thunderx 1 build-check(1) blocked n/a test-arm64-arm64-xl-vhd 1 build-check(1) blocked n/a test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a test-armhf-armhf-libvirt 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-qcow2 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-raw 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a test-armhf-armhf-xl-arndale 1 build-check(1) blocked n/a test-armhf-armhf-xl-multivcpu 1 build-check(1) blocked n/a test-armhf-armhf-xl-rtds 1 build-check(1) blocked n/a test-armhf-armhf-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-amd 1 build-check(1) blocked n/a test-amd64-i386-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-raw 1 build-check(1) blocked n/a test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-i386 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-amd64 1 build-check(1) blocked n/a test-amd64-coresched-i386-xl 1 build-check(1) blocked n/a test-amd64-coresched-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-xsm 1 build-check(1) blocked n/a build-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-shadow 1 build-check(1) blocked n/a test-amd64-amd64-xl-rtds 1 build-check(1) blocked n/a build-arm64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a build-armhf-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a build-i386-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-amd 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-pair 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-qcow2 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-vhd 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvshim 1 build-check(1) blocked n/a test-amd64-amd64-pair 1 build-check(1) blocked n/a test-amd64-amd64-pygrub 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-intel 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd11-amd64 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd12-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-multivcpu 1 build-check(1) blocked n/a test-amd64-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit1 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit1 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit2 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-intel 1 build-check(1) blocked n/a test-amd64-i386-xl 1 build-check(1) blocked n/a test-amd64-i386-xl-pvshim 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a version targeted for testing: qemuu fdd0df5340a8ebc8de88078387ebc85c5af7b40f baseline version: qemuu 6972ef1440a9d685482d78672620a7482f2bd09a Last test of basis 180691 2023-05-17 10:45:22 Z 25 days Failing since 180699 2023-05-18 07:21:24 Z 24 days 85 attempts Testing same since 181372 2023-06-10 21:38:57 Z 1 days 6 attempts ------------------------------------------------------------ People who touched revisions under test: Afonso Bordado Akihiko Odaki Akihiro Suda Alex Bennée Alex Williamson Alexander Bulekov Alexander Graf Alexander Ivanov Alistair Francis Anastasia Belova Andrew Jeffery Ani Sinha Ani Sinha Anthony PERARD Anton Johansson BALATON Zoltan Bastian Koppelmann Bernhard Beschow Bin Meng Brian Cain Brice Goglin Camilla Conte Carlos Santos Christian Schoenebeck Chuck Zmudzinski Cindy Lu Clément Chigot Cornelia Huck Cédric Le Goater Cédric Le Goater Daniel Henrique Barboza Daniel P. Berrangé Daniil Kovalev David Hildenbrand David Woodhouse Emanuele Giuseppe Esposito Enze Li Eric Auger Eric Blake Eric DeVolder Erico Nunes Eugenio Pérez Fabiano Rosas Fan Ni Fiona Ebner Francesco Cagnin Francisco Iglesias Frederic Barrat Gavin Shan Gregory Price Gregory Price Hanna Czenczek Hao Zeng Hawkins Jiawei Igor Mammedov Ilya Leoshkevich Ira Weiny Jagannathan Raman Jason Wang Jean-Louis Dupond Jean-Philippe Brucker Jiaxun Yang John Snow Jonathan Cameron Juan Quintela Kevin Wolf Laurent Vivier Lei Yang Leonardo Bras Maksim Davydov Marc-André Lureau Marcin Juszkiewicz Marco Liebel Mark Cave-Ayland Markus Armbruster Matheus Tavares Bernardino Mattias Nissler Mauro Matteo Cascella Max Fritz Michael S. Tsirkin Michael Tokarev Michal Privoznik Milan Zamazal Mostafa Saleh Nicholas Piggin Nicolas Saenz Julienne Niek Linnenbank Palmer Dabbelt Paolo Bonzini Peter Maydell Peter Xu Philippe Mathieu-Daudé qianfan Zhao Raghu H Rene Engel Richard Henderson Richard Purdie Ricky Zhou Ryan Wendland Sebastian Ott Sergio Lopez Sid Manning Song Gao Stefan Hajnoczi Stefano Garzarella Steve Sistare Taylor Simpson Thomas Huth Thomas Weißschuh timothee.cocault@gmail.com Timothée Cocault Tommy Wu Vikram Garhwal Viktor Prutyanov Vitaly Cheptsov Vivek Kasireddy Vladimir Sementsov-Ogievskiy Volker Rümelin Xinyu Li Zeng Hao Zhenyu Zhang Zhenzhong Duan Zhuojia Shen jobs: build-amd64-xsm fail build-arm64-xsm fail build-i386-xsm fail build-amd64 fail build-arm64 fail build-armhf fail build-i386 fail build-amd64-libvirt blocked build-arm64-libvirt blocked build-armhf-libvirt blocked build-i386-libvirt blocked build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl blocked test-amd64-coresched-amd64-xl blocked test-arm64-arm64-xl blocked test-armhf-armhf-xl blocked test-amd64-i386-xl blocked test-amd64-coresched-i386-xl blocked test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-i386-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-amd64-libvirt-xsm blocked test-arm64-arm64-libvirt-xsm blocked test-amd64-i386-libvirt-xsm blocked test-amd64-amd64-xl-xsm blocked test-arm64-arm64-xl-xsm blocked test-amd64-i386-xl-xsm blocked test-amd64-amd64-qemuu-nested-amd blocked test-amd64-amd64-xl-pvhv2-amd blocked test-amd64-i386-qemuu-rhel6hvm-amd blocked test-amd64-amd64-dom0pvh-xl-amd blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-freebsd10-amd64 blocked test-amd64-amd64-qemuu-freebsd11-amd64 blocked test-amd64-amd64-qemuu-freebsd12-amd64 blocked test-amd64-amd64-xl-qemuu-ovmf-amd64 blocked test-amd64-i386-xl-qemuu-ovmf-amd64 blocked test-amd64-amd64-xl-qemuu-win7-amd64 blocked test-amd64-i386-xl-qemuu-win7-amd64 blocked test-amd64-amd64-xl-qemuu-ws16-amd64 blocked test-amd64-i386-xl-qemuu-ws16-amd64 blocked test-armhf-armhf-xl-arndale blocked test-amd64-amd64-xl-credit1 blocked test-arm64-arm64-xl-credit1 blocked test-armhf-armhf-xl-credit1 blocked test-amd64-amd64-xl-credit2 blocked test-arm64-arm64-xl-credit2 blocked test-armhf-armhf-xl-credit2 blocked test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-freebsd10-i386 blocked test-amd64-amd64-qemuu-nested-intel blocked test-amd64-amd64-xl-pvhv2-intel blocked test-amd64-i386-qemuu-rhel6hvm-intel blocked test-amd64-amd64-dom0pvh-xl-intel blocked test-amd64-amd64-libvirt blocked test-armhf-armhf-libvirt blocked test-amd64-i386-libvirt blocked test-amd64-amd64-xl-multivcpu blocked test-armhf-armhf-xl-multivcpu blocked test-amd64-amd64-pair blocked test-amd64-i386-pair blocked test-amd64-amd64-libvirt-pair blocked test-amd64-i386-libvirt-pair blocked test-amd64-amd64-xl-pvshim blocked test-amd64-i386-xl-pvshim blocked test-amd64-amd64-pygrub blocked test-armhf-armhf-libvirt-qcow2 blocked test-amd64-amd64-xl-qcow2 blocked test-arm64-arm64-libvirt-raw blocked test-armhf-armhf-libvirt-raw blocked test-amd64-i386-libvirt-raw blocked test-amd64-amd64-xl-rtds blocked test-armhf-armhf-xl-rtds blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-amd64-xl-shadow blocked test-amd64-i386-xl-shadow blocked test-arm64-arm64-xl-thunderx blocked test-amd64-amd64-libvirt-vhd blocked test-arm64-arm64-xl-vhd blocked test-armhf-armhf-xl-vhd blocked test-amd64-i386-xl-vhd blocked ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 17052 lines long.) From xen-devel-bounces@lists.xenproject.org Mon Jun 12 01:59:08 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 01:59:08 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546797.853831 (Exim 4.92) (envelope-from ) id 1q8Wpb-0001YN-4g; Mon, 12 Jun 2023 01:58:55 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546797.853831; Mon, 12 Jun 2023 01:58:55 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8Wpb-0001YG-1D; Mon, 12 Jun 2023 01:58:55 +0000 Received: by outflank-mailman (input) for mailman id 546797; Mon, 12 Jun 2023 01:58:53 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8WpZ-0001Y6-Cb; Mon, 12 Jun 2023 01:58:53 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8WpZ-0003FP-3G; Mon, 12 Jun 2023 01:58:53 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8WpY-0007yr-J2; Mon, 12 Jun 2023 01:58:52 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q8WpY-0002MJ-HM; Mon, 12 Jun 2023 01:58:52 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=eoh5efc6UEtxjrs+8yHz6/g6BZGgmt49Sr1SSZlH+g8=; b=tgnVZVwzlrqhnmQUXKCaHJY1HS sbqAtkoaCQ78XUr43zILCm3yCS8RH0vIBgLJfUMMN6qh01cqnCauyYGGfl2NQ+bgu5SPPQCoChhib Zac47byQ+FyL3jkZfeRpFlntdtAr26vOGL18P8/al1Qqs9evCwLjX77PNRnGRke6kp3Q=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [qemu-mainline test] 181384: regressions - FAIL X-Osstest-Failures: qemu-mainline:build-arm64-xsm:xen-build:fail:regression qemu-mainline:build-arm64:xen-build:fail:regression qemu-mainline:build-amd64:xen-build:fail:regression qemu-mainline:build-i386:xen-build:fail:regression qemu-mainline:build-amd64-xsm:xen-build:fail:regression qemu-mainline:build-i386-xsm:xen-build:fail:regression qemu-mainline:build-armhf:xen-build:fail:regression qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-i386:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:build-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:build-arm64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:build-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:build-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pygrub:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking X-Osstest-Versions-This: qemuu=fdd0df5340a8ebc8de88078387ebc85c5af7b40f X-Osstest-Versions-That: qemuu=6972ef1440a9d685482d78672620a7482f2bd09a From: osstest service owner Date: Mon, 12 Jun 2023 01:58:52 +0000 flight 181384 qemu-mainline real [real] http://logs.test-lab.xenproject.org/osstest/logs/181384/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-arm64-xsm 6 xen-build fail REGR. vs. 180691 build-arm64 6 xen-build fail REGR. vs. 180691 build-amd64 6 xen-build fail REGR. vs. 180691 build-i386 6 xen-build fail REGR. vs. 180691 build-amd64-xsm 6 xen-build fail REGR. vs. 180691 build-i386-xsm 6 xen-build fail REGR. vs. 180691 build-armhf 6 xen-build fail REGR. vs. 180691 Tests which did not succeed, but are not blocking: test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-xl-xsm 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-raw 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-xsm 1 build-check(1) blocked n/a test-arm64-arm64-xl 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit1 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit2 1 build-check(1) blocked n/a test-arm64-arm64-xl-thunderx 1 build-check(1) blocked n/a test-arm64-arm64-xl-vhd 1 build-check(1) blocked n/a test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a test-armhf-armhf-libvirt 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-qcow2 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-raw 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a test-armhf-armhf-xl-arndale 1 build-check(1) blocked n/a test-armhf-armhf-xl-multivcpu 1 build-check(1) blocked n/a test-armhf-armhf-xl-rtds 1 build-check(1) blocked n/a test-armhf-armhf-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-amd 1 build-check(1) blocked n/a test-amd64-i386-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-raw 1 build-check(1) blocked n/a test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-i386 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-amd64 1 build-check(1) blocked n/a test-amd64-coresched-i386-xl 1 build-check(1) blocked n/a test-amd64-coresched-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-xsm 1 build-check(1) blocked n/a build-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-shadow 1 build-check(1) blocked n/a test-amd64-amd64-xl-rtds 1 build-check(1) blocked n/a build-arm64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a build-armhf-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a build-i386-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-amd 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-pair 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-qcow2 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-vhd 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvshim 1 build-check(1) blocked n/a test-amd64-amd64-pair 1 build-check(1) blocked n/a test-amd64-amd64-pygrub 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-intel 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd11-amd64 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd12-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-multivcpu 1 build-check(1) blocked n/a test-amd64-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit1 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit1 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit2 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-intel 1 build-check(1) blocked n/a test-amd64-i386-xl 1 build-check(1) blocked n/a test-amd64-i386-xl-pvshim 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a version targeted for testing: qemuu fdd0df5340a8ebc8de88078387ebc85c5af7b40f baseline version: qemuu 6972ef1440a9d685482d78672620a7482f2bd09a Last test of basis 180691 2023-05-17 10:45:22 Z 25 days Failing since 180699 2023-05-18 07:21:24 Z 24 days 86 attempts Testing same since 181372 2023-06-10 21:38:57 Z 1 days 7 attempts ------------------------------------------------------------ People who touched revisions under test: Afonso Bordado Akihiko Odaki Akihiro Suda Alex Bennée Alex Williamson Alexander Bulekov Alexander Graf Alexander Ivanov Alistair Francis Anastasia Belova Andrew Jeffery Ani Sinha Ani Sinha Anthony PERARD Anton Johansson BALATON Zoltan Bastian Koppelmann Bernhard Beschow Bin Meng Brian Cain Brice Goglin Camilla Conte Carlos Santos Christian Schoenebeck Chuck Zmudzinski Cindy Lu Clément Chigot Cornelia Huck Cédric Le Goater Cédric Le Goater Daniel Henrique Barboza Daniel P. Berrangé Daniil Kovalev David Hildenbrand David Woodhouse Emanuele Giuseppe Esposito Enze Li Eric Auger Eric Blake Eric DeVolder Erico Nunes Eugenio Pérez Fabiano Rosas Fan Ni Fiona Ebner Francesco Cagnin Francisco Iglesias Frederic Barrat Gavin Shan Gregory Price Gregory Price Hanna Czenczek Hao Zeng Hawkins Jiawei Igor Mammedov Ilya Leoshkevich Ira Weiny Jagannathan Raman Jason Wang Jean-Louis Dupond Jean-Philippe Brucker Jiaxun Yang John Snow Jonathan Cameron Juan Quintela Kevin Wolf Laurent Vivier Lei Yang Leonardo Bras Maksim Davydov Marc-André Lureau Marcin Juszkiewicz Marco Liebel Mark Cave-Ayland Markus Armbruster Matheus Tavares Bernardino Mattias Nissler Mauro Matteo Cascella Max Fritz Michael S. Tsirkin Michael Tokarev Michal Privoznik Milan Zamazal Mostafa Saleh Nicholas Piggin Nicolas Saenz Julienne Niek Linnenbank Palmer Dabbelt Paolo Bonzini Peter Maydell Peter Xu Philippe Mathieu-Daudé qianfan Zhao Raghu H Rene Engel Richard Henderson Richard Purdie Ricky Zhou Ryan Wendland Sebastian Ott Sergio Lopez Sid Manning Song Gao Stefan Hajnoczi Stefano Garzarella Steve Sistare Taylor Simpson Thomas Huth Thomas Weißschuh timothee.cocault@gmail.com Timothée Cocault Tommy Wu Vikram Garhwal Viktor Prutyanov Vitaly Cheptsov Vivek Kasireddy Vladimir Sementsov-Ogievskiy Volker Rümelin Xinyu Li Zeng Hao Zhenyu Zhang Zhenzhong Duan Zhuojia Shen jobs: build-amd64-xsm fail build-arm64-xsm fail build-i386-xsm fail build-amd64 fail build-arm64 fail build-armhf fail build-i386 fail build-amd64-libvirt blocked build-arm64-libvirt blocked build-armhf-libvirt blocked build-i386-libvirt blocked build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl blocked test-amd64-coresched-amd64-xl blocked test-arm64-arm64-xl blocked test-armhf-armhf-xl blocked test-amd64-i386-xl blocked test-amd64-coresched-i386-xl blocked test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-i386-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-amd64-libvirt-xsm blocked test-arm64-arm64-libvirt-xsm blocked test-amd64-i386-libvirt-xsm blocked test-amd64-amd64-xl-xsm blocked test-arm64-arm64-xl-xsm blocked test-amd64-i386-xl-xsm blocked test-amd64-amd64-qemuu-nested-amd blocked test-amd64-amd64-xl-pvhv2-amd blocked test-amd64-i386-qemuu-rhel6hvm-amd blocked test-amd64-amd64-dom0pvh-xl-amd blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-freebsd10-amd64 blocked test-amd64-amd64-qemuu-freebsd11-amd64 blocked test-amd64-amd64-qemuu-freebsd12-amd64 blocked test-amd64-amd64-xl-qemuu-ovmf-amd64 blocked test-amd64-i386-xl-qemuu-ovmf-amd64 blocked test-amd64-amd64-xl-qemuu-win7-amd64 blocked test-amd64-i386-xl-qemuu-win7-amd64 blocked test-amd64-amd64-xl-qemuu-ws16-amd64 blocked test-amd64-i386-xl-qemuu-ws16-amd64 blocked test-armhf-armhf-xl-arndale blocked test-amd64-amd64-xl-credit1 blocked test-arm64-arm64-xl-credit1 blocked test-armhf-armhf-xl-credit1 blocked test-amd64-amd64-xl-credit2 blocked test-arm64-arm64-xl-credit2 blocked test-armhf-armhf-xl-credit2 blocked test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-freebsd10-i386 blocked test-amd64-amd64-qemuu-nested-intel blocked test-amd64-amd64-xl-pvhv2-intel blocked test-amd64-i386-qemuu-rhel6hvm-intel blocked test-amd64-amd64-dom0pvh-xl-intel blocked test-amd64-amd64-libvirt blocked test-armhf-armhf-libvirt blocked test-amd64-i386-libvirt blocked test-amd64-amd64-xl-multivcpu blocked test-armhf-armhf-xl-multivcpu blocked test-amd64-amd64-pair blocked test-amd64-i386-pair blocked test-amd64-amd64-libvirt-pair blocked test-amd64-i386-libvirt-pair blocked test-amd64-amd64-xl-pvshim blocked test-amd64-i386-xl-pvshim blocked test-amd64-amd64-pygrub blocked test-armhf-armhf-libvirt-qcow2 blocked test-amd64-amd64-xl-qcow2 blocked test-arm64-arm64-libvirt-raw blocked test-armhf-armhf-libvirt-raw blocked test-amd64-i386-libvirt-raw blocked test-amd64-amd64-xl-rtds blocked test-armhf-armhf-xl-rtds blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-amd64-xl-shadow blocked test-amd64-i386-xl-shadow blocked test-arm64-arm64-xl-thunderx blocked test-amd64-amd64-libvirt-vhd blocked test-arm64-arm64-xl-vhd blocked test-armhf-armhf-xl-vhd blocked test-amd64-i386-xl-vhd blocked ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 17052 lines long.) From xen-devel-bounces@lists.xenproject.org Mon Jun 12 04:03:20 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 04:03:20 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546804.853840 (Exim 4.92) (envelope-from ) id 1q8Ylf-0007AJ-U7; Mon, 12 Jun 2023 04:02:59 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546804.853840; Mon, 12 Jun 2023 04:02:59 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8Ylf-0007AC-RP; Mon, 12 Jun 2023 04:02:59 +0000 Received: by outflank-mailman (input) for mailman id 546804; Mon, 12 Jun 2023 04:02:58 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8Yle-0007A2-T1; Mon, 12 Jun 2023 04:02:58 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8Yle-0007D5-G4; Mon, 12 Jun 2023 04:02:58 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8Yld-0004fY-Ux; Mon, 12 Jun 2023 04:02:58 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q8Yld-0004M7-UX; Mon, 12 Jun 2023 04:02:57 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=KToBFoz6xpFea1aIP7BUK2NXSITGlVcv9UQzoFCCCz8=; b=z1xr7OEbGa9gaqo0TQDftfcISU 3vYE9T06MvS22n8dk4aYVuTc3CNkjOPwK0rtldf0WbE6IU4hd4Xgeb1cc46109kXSEZ6HMN73VGkc K0pgclt+CzrfwtLdwu3ms8qWZxIIlZvjiHGN/mg7uCIgbFtVzgm5za82YEKCO+YfgA3U=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [linux-linus test] 181383: regressions - FAIL X-Osstest-Failures: linux-linus:test-armhf-armhf-xl-credit1:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-vhd:guest-start/debian.repeat:fail:regression linux-linus:build-arm64-pvops:kernel-build:fail:regression linux-linus:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking linux-linus:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking linux-linus:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking linux-linus:test-arm64-arm64-examine:build-check(1):blocked:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking linux-linus:test-arm64-arm64-xl:build-check(1):blocked:nonblocking linux-linus:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking linux-linus:test-armhf-armhf-examine:reboot:fail:nonblocking linux-linus:test-armhf-armhf-xl-multivcpu:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking linux-linus:test-armhf-armhf-xl-credit2:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking linux-linus:test-armhf-armhf-libvirt:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-arndale:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-raw:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-qcow2:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-vhd:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-rtds:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-raw:migrate-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-qcow2:migrate-support-check:fail:nonblocking X-Osstest-Versions-This: linux=858fd168a95c5b9669aac8db6c14a9aeab446375 X-Osstest-Versions-That: linux=6c538e1adbfc696ac4747fb10d63e704344f763d From: osstest service owner Date: Mon, 12 Jun 2023 04:02:57 +0000 flight 181383 linux-linus real [real] http://logs.test-lab.xenproject.org/osstest/logs/181383/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: test-armhf-armhf-xl-credit1 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-xl-vhd 21 guest-start/debian.repeat fail REGR. vs. 180278 build-arm64-pvops 6 kernel-build fail REGR. vs. 180278 Tests which did not succeed, but are not blocking: test-arm64-arm64-xl-credit2 1 build-check(1) blocked n/a test-arm64-arm64-xl-thunderx 1 build-check(1) blocked n/a test-arm64-arm64-xl-vhd 1 build-check(1) blocked n/a test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a test-arm64-arm64-examine 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-raw 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-xsm 1 build-check(1) blocked n/a test-arm64-arm64-xl 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit1 1 build-check(1) blocked n/a test-armhf-armhf-examine 8 reboot fail like 180278 test-armhf-armhf-xl-multivcpu 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 180278 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 180278 test-armhf-armhf-xl-credit2 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 180278 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 180278 test-armhf-armhf-libvirt 8 xen-boot fail like 180278 test-armhf-armhf-xl-arndale 8 xen-boot fail like 180278 test-armhf-armhf-libvirt-raw 8 xen-boot fail like 180278 test-armhf-armhf-libvirt-qcow2 8 xen-boot fail like 180278 test-armhf-armhf-xl 8 xen-boot fail like 180278 test-armhf-armhf-xl-vhd 8 xen-boot fail like 180278 test-armhf-armhf-xl-rtds 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 180278 test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-raw 14 migrate-support-check fail never pass test-amd64-amd64-libvirt-qcow2 14 migrate-support-check fail never pass version targeted for testing: linux 858fd168a95c5b9669aac8db6c14a9aeab446375 baseline version: linux 6c538e1adbfc696ac4747fb10d63e704344f763d Last test of basis 180278 2023-04-16 19:41:46 Z 56 days Failing since 180281 2023-04-17 06:24:36 Z 55 days 105 attempts Testing same since 181383 2023-06-11 22:12:05 Z 0 days 1 attempts ------------------------------------------------------------ 2681 people touched revisions under test, not listing them all jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops fail build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl blocked test-armhf-armhf-xl fail test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm blocked test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm blocked test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-freebsd11-amd64 pass test-amd64-amd64-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale fail test-amd64-amd64-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 blocked test-armhf-armhf-xl-credit1 fail test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 blocked test-armhf-armhf-xl-credit2 fail test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine blocked test-armhf-armhf-examine fail test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt fail test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu fail test-amd64-amd64-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-amd64-pygrub pass test-amd64-amd64-libvirt-qcow2 pass test-armhf-armhf-libvirt-qcow2 fail test-amd64-amd64-libvirt-raw pass test-arm64-arm64-libvirt-raw blocked test-armhf-armhf-libvirt-raw fail test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds fail test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-arm64-arm64-xl-thunderx blocked test-amd64-amd64-examine-uefi pass test-amd64-amd64-xl-vhd fail test-arm64-arm64-xl-vhd blocked test-armhf-armhf-xl-vhd fail ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 340189 lines long.) From xen-devel-bounces@lists.xenproject.org Mon Jun 12 04:34:25 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 04:34:25 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546813.853851 (Exim 4.92) (envelope-from ) id 1q8ZFz-0002Pb-FK; Mon, 12 Jun 2023 04:34:19 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546813.853851; Mon, 12 Jun 2023 04:34:19 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8ZFz-0002PU-CR; Mon, 12 Jun 2023 04:34:19 +0000 Received: by outflank-mailman (input) for mailman id 546813; Mon, 12 Jun 2023 04:34:18 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8ZFy-0002PK-B9; Mon, 12 Jun 2023 04:34:18 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8ZFy-0007uf-3C; Mon, 12 Jun 2023 04:34:18 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8ZFx-0006qz-Nu; Mon, 12 Jun 2023 04:34:17 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q8ZFx-00078q-NN; Mon, 12 Jun 2023 04:34:17 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=CSvNWFzFOI8ilqcvFXmtDt7mffRlA9qjTfPXRhf6cf8=; b=Dj317dP6lc1/7VmnkyRNEDuBDN 4BmPhkhyuT1O4BPcActJp2E7mXqXY4JL/syiA1GmiC40GM6ZoAnf4t5g0a15H9MSOeBlLnQYvfmuR lUpSM8uKH6MMAE1o4ssizvcC11eJseQT91tk8JWAzUVgS52XsFPIyf+C7Gp9+tcHg8jo=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [qemu-mainline test] 181386: regressions - FAIL X-Osstest-Failures: qemu-mainline:build-arm64-xsm:xen-build:fail:regression qemu-mainline:build-arm64:xen-build:fail:regression qemu-mainline:build-amd64:xen-build:fail:regression qemu-mainline:build-i386:xen-build:fail:regression qemu-mainline:build-amd64-xsm:xen-build:fail:regression qemu-mainline:build-i386-xsm:xen-build:fail:regression qemu-mainline:build-armhf:xen-build:fail:regression qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-i386:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:build-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:build-arm64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:build-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:build-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pygrub:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking X-Osstest-Versions-This: qemuu=fdd0df5340a8ebc8de88078387ebc85c5af7b40f X-Osstest-Versions-That: qemuu=6972ef1440a9d685482d78672620a7482f2bd09a From: osstest service owner Date: Mon, 12 Jun 2023 04:34:17 +0000 flight 181386 qemu-mainline real [real] http://logs.test-lab.xenproject.org/osstest/logs/181386/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-arm64-xsm 6 xen-build fail REGR. vs. 180691 build-arm64 6 xen-build fail REGR. vs. 180691 build-amd64 6 xen-build fail REGR. vs. 180691 build-i386 6 xen-build fail REGR. vs. 180691 build-amd64-xsm 6 xen-build fail REGR. vs. 180691 build-i386-xsm 6 xen-build fail REGR. vs. 180691 build-armhf 6 xen-build fail REGR. vs. 180691 Tests which did not succeed, but are not blocking: test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-xl-xsm 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-raw 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-xsm 1 build-check(1) blocked n/a test-arm64-arm64-xl 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit1 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit2 1 build-check(1) blocked n/a test-arm64-arm64-xl-thunderx 1 build-check(1) blocked n/a test-arm64-arm64-xl-vhd 1 build-check(1) blocked n/a test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a test-armhf-armhf-libvirt 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-qcow2 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-raw 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a test-armhf-armhf-xl-arndale 1 build-check(1) blocked n/a test-armhf-armhf-xl-multivcpu 1 build-check(1) blocked n/a test-armhf-armhf-xl-rtds 1 build-check(1) blocked n/a test-armhf-armhf-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-amd 1 build-check(1) blocked n/a test-amd64-i386-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-raw 1 build-check(1) blocked n/a test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-i386 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-amd64 1 build-check(1) blocked n/a test-amd64-coresched-i386-xl 1 build-check(1) blocked n/a test-amd64-coresched-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-xsm 1 build-check(1) blocked n/a build-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-shadow 1 build-check(1) blocked n/a test-amd64-amd64-xl-rtds 1 build-check(1) blocked n/a build-arm64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a build-armhf-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a build-i386-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-amd 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-pair 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-qcow2 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-vhd 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvshim 1 build-check(1) blocked n/a test-amd64-amd64-pair 1 build-check(1) blocked n/a test-amd64-amd64-pygrub 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-intel 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd11-amd64 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd12-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-multivcpu 1 build-check(1) blocked n/a test-amd64-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit1 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit1 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-intel 1 build-check(1) blocked n/a test-amd64-i386-xl 1 build-check(1) blocked n/a test-amd64-i386-xl-pvshim 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a version targeted for testing: qemuu fdd0df5340a8ebc8de88078387ebc85c5af7b40f baseline version: qemuu 6972ef1440a9d685482d78672620a7482f2bd09a Last test of basis 180691 2023-05-17 10:45:22 Z 25 days Failing since 180699 2023-05-18 07:21:24 Z 24 days 87 attempts Testing same since 181372 2023-06-10 21:38:57 Z 1 days 8 attempts ------------------------------------------------------------ People who touched revisions under test: Afonso Bordado Akihiko Odaki Akihiro Suda Alex Bennée Alex Williamson Alexander Bulekov Alexander Graf Alexander Ivanov Alistair Francis Anastasia Belova Andrew Jeffery Ani Sinha Ani Sinha Anthony PERARD Anton Johansson BALATON Zoltan Bastian Koppelmann Bernhard Beschow Bin Meng Brian Cain Brice Goglin Camilla Conte Carlos Santos Christian Schoenebeck Chuck Zmudzinski Cindy Lu Clément Chigot Cornelia Huck Cédric Le Goater Cédric Le Goater Daniel Henrique Barboza Daniel P. Berrangé Daniil Kovalev David Hildenbrand David Woodhouse Emanuele Giuseppe Esposito Enze Li Eric Auger Eric Blake Eric DeVolder Erico Nunes Eugenio Pérez Fabiano Rosas Fan Ni Fiona Ebner Francesco Cagnin Francisco Iglesias Frederic Barrat Gavin Shan Gregory Price Gregory Price Hanna Czenczek Hao Zeng Hawkins Jiawei Igor Mammedov Ilya Leoshkevich Ira Weiny Jagannathan Raman Jason Wang Jean-Louis Dupond Jean-Philippe Brucker Jiaxun Yang John Snow Jonathan Cameron Juan Quintela Kevin Wolf Laurent Vivier Lei Yang Leonardo Bras Maksim Davydov Marc-André Lureau Marcin Juszkiewicz Marco Liebel Mark Cave-Ayland Markus Armbruster Matheus Tavares Bernardino Mattias Nissler Mauro Matteo Cascella Max Fritz Michael S. Tsirkin Michael Tokarev Michal Privoznik Milan Zamazal Mostafa Saleh Nicholas Piggin Nicolas Saenz Julienne Niek Linnenbank Palmer Dabbelt Paolo Bonzini Peter Maydell Peter Xu Philippe Mathieu-Daudé qianfan Zhao Raghu H Rene Engel Richard Henderson Richard Purdie Ricky Zhou Ryan Wendland Sebastian Ott Sergio Lopez Sid Manning Song Gao Stefan Hajnoczi Stefano Garzarella Steve Sistare Taylor Simpson Thomas Huth Thomas Weißschuh timothee.cocault@gmail.com Timothée Cocault Tommy Wu Vikram Garhwal Viktor Prutyanov Vitaly Cheptsov Vivek Kasireddy Vladimir Sementsov-Ogievskiy Volker Rümelin Xinyu Li Zeng Hao Zhenyu Zhang Zhenzhong Duan Zhuojia Shen jobs: build-amd64-xsm fail build-arm64-xsm fail build-i386-xsm fail build-amd64 fail build-arm64 fail build-armhf fail build-i386 fail build-amd64-libvirt blocked build-arm64-libvirt blocked build-armhf-libvirt blocked build-i386-libvirt blocked build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl blocked test-amd64-coresched-amd64-xl blocked test-arm64-arm64-xl blocked test-armhf-armhf-xl blocked test-amd64-i386-xl blocked test-amd64-coresched-i386-xl blocked test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-i386-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-amd64-libvirt-xsm blocked test-arm64-arm64-libvirt-xsm blocked test-amd64-i386-libvirt-xsm blocked test-amd64-amd64-xl-xsm blocked test-arm64-arm64-xl-xsm blocked test-amd64-i386-xl-xsm blocked test-amd64-amd64-qemuu-nested-amd blocked test-amd64-amd64-xl-pvhv2-amd blocked test-amd64-i386-qemuu-rhel6hvm-amd blocked test-amd64-amd64-dom0pvh-xl-amd blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-freebsd10-amd64 blocked test-amd64-amd64-qemuu-freebsd11-amd64 blocked test-amd64-amd64-qemuu-freebsd12-amd64 blocked test-amd64-amd64-xl-qemuu-ovmf-amd64 blocked test-amd64-i386-xl-qemuu-ovmf-amd64 blocked test-amd64-amd64-xl-qemuu-win7-amd64 blocked test-amd64-i386-xl-qemuu-win7-amd64 blocked test-amd64-amd64-xl-qemuu-ws16-amd64 blocked test-amd64-i386-xl-qemuu-ws16-amd64 blocked test-armhf-armhf-xl-arndale blocked test-amd64-amd64-xl-credit1 blocked test-arm64-arm64-xl-credit1 blocked test-armhf-armhf-xl-credit1 blocked test-amd64-amd64-xl-credit2 blocked test-arm64-arm64-xl-credit2 blocked test-armhf-armhf-xl-credit2 blocked test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-freebsd10-i386 blocked test-amd64-amd64-qemuu-nested-intel blocked test-amd64-amd64-xl-pvhv2-intel blocked test-amd64-i386-qemuu-rhel6hvm-intel blocked test-amd64-amd64-dom0pvh-xl-intel blocked test-amd64-amd64-libvirt blocked test-armhf-armhf-libvirt blocked test-amd64-i386-libvirt blocked test-amd64-amd64-xl-multivcpu blocked test-armhf-armhf-xl-multivcpu blocked test-amd64-amd64-pair blocked test-amd64-i386-pair blocked test-amd64-amd64-libvirt-pair blocked test-amd64-i386-libvirt-pair blocked test-amd64-amd64-xl-pvshim blocked test-amd64-i386-xl-pvshim blocked test-amd64-amd64-pygrub blocked test-armhf-armhf-libvirt-qcow2 blocked test-amd64-amd64-xl-qcow2 blocked test-arm64-arm64-libvirt-raw blocked test-armhf-armhf-libvirt-raw blocked test-amd64-i386-libvirt-raw blocked test-amd64-amd64-xl-rtds blocked test-armhf-armhf-xl-rtds blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-amd64-xl-shadow blocked test-amd64-i386-xl-shadow blocked test-arm64-arm64-xl-thunderx blocked test-amd64-amd64-libvirt-vhd blocked test-arm64-arm64-xl-vhd blocked test-armhf-armhf-xl-vhd blocked test-amd64-i386-xl-vhd blocked ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 17052 lines long.) From xen-devel-bounces@lists.xenproject.org Mon Jun 12 05:09:34 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 05:09:34 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546820.853861 (Exim 4.92) (envelope-from ) id 1q8Znp-0006H1-5D; Mon, 12 Jun 2023 05:09:17 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546820.853861; Mon, 12 Jun 2023 05:09:17 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8Znp-0006Gu-2G; Mon, 12 Jun 2023 05:09:17 +0000 Received: by outflank-mailman (input) for mailman id 546820; Mon, 12 Jun 2023 05:09:16 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8Zno-0006Go-0y for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 05:09:16 +0000 Received: from mail-ua1-x931.google.com (mail-ua1-x931.google.com [2607:f8b0:4864:20::931]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 457373b9-08df-11ee-b232-6b7b168915f2; Mon, 12 Jun 2023 07:09:14 +0200 (CEST) Received: by mail-ua1-x931.google.com with SMTP id a1e0cc1a2514c-784205f0058so1371329241.1 for ; Sun, 11 Jun 2023 22:09:13 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 457373b9-08df-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686546552; x=1689138552; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=0x3KhOr+yc6kG50ecMt1zrzXqM3qDJzmbWg6PazmtvE=; b=NebBeLAFc7NKiGSo2OLiaezIPD9sAV1TkdfjNpfpp33a2Q7XViST56PjddsU4v6IM7 VyRg9JrtRwoEflZefIiI/z9D0xR53ZQnf0k6a5JK3QMvBy9L2ivuVGT/6quI7dHGWQ7l /YcskSZTdmi5XJo4yawWAWx9NQB1jjrwssgLPGlcu3LB8MwCetsa4GiI6ZiSOj1cIFcs VizgS3qJzMqKDME397JagWRlAFVQ1LHbxPZq+zAaUWU0s1L/D2DI3FXU0SEV3Xq+WDxD 2BF+oh3J4baiAXaBELwnCdfVopMEA/UYUJ4sULRS3PaHJBJpmoMT04qyUIfovY5cJmFR YDRg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686546552; x=1689138552; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=0x3KhOr+yc6kG50ecMt1zrzXqM3qDJzmbWg6PazmtvE=; b=ICwu/tXxuVgbU/pvKjfqfje6j1E5CX0DIbtxMznEz7JgVR8SN8T6jMYV4GB1LITxVF tRrWhhDEBDi2h+WYQc+0dCvuKW5tEGtGrlfb26oKWHIN5IC8rY0BDJ+ynRCH18UpwOzK 8Wxs8nATDDIH84oNdU2xBObDFfD9g/rKzbzm6RxS4xxEqXtD3VcJqJb4eAyI32hZU3Yf gK3ISfK36YpaLRhdn7JGARbjBo3hIKoOT2zYRoba04LMoNzKYJjXh+3pGS7B7BQ8b9M0 m0PVQPRozwbdbdU/nnMXaUxFJNovjE6FeYaQScy+Wl38Tq281PA+J6ep9TSPPn80Dmh7 aT6A== X-Gm-Message-State: AC+VfDz/QXBnQ0q/Kp4/ZAJBoa/8f6QhIRR2EixsKbMjhPAYDPXRg3S9 C4uEbni6Y5cx6l9sp6ZUIuL8Lh5D531bBujT64M= X-Google-Smtp-Source: ACHHUZ7V/jQjOwSBe0/meTvxkKQ0HiiB8xEEM+06KoPVK8/oLbQtTeLOBH/IsdGBuXeI2dpZEmVoQCCiFLkB2ggrM68= X-Received: by 2002:a05:6102:ca:b0:43d:54e9:35fb with SMTP id u10-20020a05610200ca00b0043d54e935fbmr2999738vsp.14.1686546552581; Sun, 11 Jun 2023 22:09:12 -0700 (PDT) MIME-Version: 1.0 References: <4ad639bed6b8aa6cee34288a7ce154db21d761b5.1686080337.git.oleksii.kurochko@gmail.com> In-Reply-To: <4ad639bed6b8aa6cee34288a7ce154db21d761b5.1686080337.git.oleksii.kurochko@gmail.com> From: Alistair Francis Date: Mon, 12 Jun 2023 15:08:46 +1000 Message-ID: Subject: Re: [PATCH v1 1/8] xen/riscv: make sure that identity mapping isn't bigger then page size To: Oleksii Kurochko Cc: xen-devel@lists.xenproject.org, Jan Beulich , Andrew Cooper , Bob Eshleman , Alistair Francis , Connor Davis Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Wed, Jun 7, 2023 at 5:55=E2=80=AFAM Oleksii Kurochko wrote: > > Signed-off-by: Oleksii Kurochko Acked-by: Alistair Francis Alistair > --- > xen/arch/riscv/xen.lds.S | 9 +++++++++ > 1 file changed, 9 insertions(+) > > diff --git a/xen/arch/riscv/xen.lds.S b/xen/arch/riscv/xen.lds.S > index 878130f313..74afbaab9b 100644 > --- a/xen/arch/riscv/xen.lds.S > +++ b/xen/arch/riscv/xen.lds.S > @@ -20,6 +20,7 @@ SECTIONS > . =3D XEN_VIRT_START; > _start =3D .; > .text : { > + _idmap_start =3D .; > _stext =3D .; /* Text section */ > *(.text.header) > > @@ -35,6 +36,7 @@ SECTIONS > *(.gnu.warning) > . =3D ALIGN(POINTER_ALIGN); > _etext =3D .; /* End of text section */ > + _idmap_end =3D .; > } :text > > . =3D ALIGN(PAGE_SIZE); > @@ -174,3 +176,10 @@ ASSERT(!SIZEOF(.got), ".got non-empty") > ASSERT(!SIZEOF(.got.plt), ".got.plt non-empty") > > ASSERT(_end - _start <=3D MB(2), "Xen too large for early-boot assumptio= ns") > + > +/* > + * We require that Xen is loaded at a page boundary, so this ensures tha= t any > + * code running on the identity map cannot cross a page boundary. > + */ > +ASSERT(IS_ALIGNED(_idmap_start, PAGE_SIZE), "_idmap_start should be page= -aligned") > +ASSERT(_idmap_end - _idmap_start <=3D PAGE_SIZE, "Identity mapped code i= s larger than a page size") > -- > 2.40.1 > > From xen-devel-bounces@lists.xenproject.org Mon Jun 12 05:09:45 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 05:09:45 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546822.853871 (Exim 4.92) (envelope-from ) id 1q8ZoH-0006kK-GA; Mon, 12 Jun 2023 05:09:45 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546822.853871; Mon, 12 Jun 2023 05:09:45 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8ZoH-0006kD-DR; Mon, 12 Jun 2023 05:09:45 +0000 Received: by outflank-mailman (input) for mailman id 546822; Mon, 12 Jun 2023 05:09:43 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8ZoF-0006Go-Ng for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 05:09:43 +0000 Received: from mail-vk1-xa2a.google.com (mail-vk1-xa2a.google.com [2607:f8b0:4864:20::a2a]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 570f4991-08df-11ee-b232-6b7b168915f2; Mon, 12 Jun 2023 07:09:43 +0200 (CEST) Received: by mail-vk1-xa2a.google.com with SMTP id 71dfb90a1353d-46288dcacb5so1152265e0c.3 for ; Sun, 11 Jun 2023 22:09:43 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 570f4991-08df-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686546582; x=1689138582; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=t3wBvLmfF0q6hDuJYQPi1PApNKVHc8G+vpArL126YKI=; b=QQzcKNzgynBJoW9HIlpzyfWYSLtMbm0EZ4S9Dbi9z8NeecuPV9qtySpnnSBT0pNWEY fMxn+B2iM5fprxPVFMf6hXDnj/amTPRKLKyuIy+mi+eEbbIULPyxYpvNvheutg732dXG dIQlc0JoHx/sycxPPuNkEUeNRweO91oO2WggNrKajFl/UFW/j3qMLiXKqwnU2ae79CTg VwTOr9Kk3kM503mRLYzsiyl1twh0ToI74lwtv/OQPcL59dBhwLDTRPJ1j8ZRIkWxcLUX KPBDckUVxI/7N4+a4WVpHMTl50emikiKk4LVJCvkDRr4ixDCzs/G8E/5gZfYc8Gcwx6p cM4g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686546582; x=1689138582; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=t3wBvLmfF0q6hDuJYQPi1PApNKVHc8G+vpArL126YKI=; b=OXEILottPIlkZ6pJU+7Vpg5PzMyjnX6Dewnx3+niXtw1/ifcqUiBvKDi/PWHrbnJ+P pYTZgY40TzZgf+8c53ex3EKX6fmzp/p7C/5jBvESrul9GWVmElcpc0evdN6xEBPdwGLP fJWRXdNUBVwpflZgWQASfcJQD2ja2yAsNjS9HEmtu8DSqgo5D1AUOw4YGcl2JWv23CZ1 V4IJ9CuA0yjp6BT2Qw0HuKIUVmJceuLH3ozirmSWo12fpRQbK6tLXsJpF6FoJ4vZTzoP eUdtyE5lHxkFiwq/iyMlLRK3ytqo5YPp9fqu1eyfswmFqkMNoPLEFWvbkMH3SeYO4ktb Pbzw== X-Gm-Message-State: AC+VfDxCqExZQjejYHrRt+VbklQ+9loUWg2hrEdwgENkEfibe3RYrisR 57ncZwUwBpnaDs9k+WTCHROvImqMXfh5kHmFos8= X-Google-Smtp-Source: ACHHUZ7qmL7IKC0Yhg2xV/J4WBFw4eQee+yWxIaLMVRv8kwAZqsCCYaxPuCR1rSMFA4kATxeSGqnWxFBpRvahesZTDU= X-Received: by 2002:a1f:5c43:0:b0:45f:ed55:4cca with SMTP id q64-20020a1f5c43000000b0045fed554ccamr3516696vkb.6.1686546582168; Sun, 11 Jun 2023 22:09:42 -0700 (PDT) MIME-Version: 1.0 References: <6a0f3171323f0092b8374f2244182c7e7ca850c0.1686080337.git.oleksii.kurochko@gmail.com> In-Reply-To: <6a0f3171323f0092b8374f2244182c7e7ca850c0.1686080337.git.oleksii.kurochko@gmail.com> From: Alistair Francis Date: Mon, 12 Jun 2023 15:09:16 +1000 Message-ID: Subject: Re: [PATCH v1 2/8] xen/riscv: add .sbss section to .bss To: Oleksii Kurochko Cc: xen-devel@lists.xenproject.org, Jan Beulich , Andrew Cooper , Bob Eshleman , Alistair Francis , Connor Davis Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Wed, Jun 7, 2023 at 5:55=E2=80=AFAM Oleksii Kurochko wrote: > > Sometimes variables are located in .sbss section but it won't > be mapped after MMU will be enabled. > To avoid MMU failures .sbss should be mapped > > Signed-off-by: Oleksii Kurochko Acked-by: Alistair Francis Alistair > --- > xen/arch/riscv/xen.lds.S | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/xen/arch/riscv/xen.lds.S b/xen/arch/riscv/xen.lds.S > index 74afbaab9b..9a2799bab5 100644 > --- a/xen/arch/riscv/xen.lds.S > +++ b/xen/arch/riscv/xen.lds.S > @@ -151,7 +151,7 @@ SECTIONS > *(.bss.percpu.read_mostly) > . =3D ALIGN(SMP_CACHE_BYTES); > __per_cpu_data_end =3D .; > - *(.bss .bss.*) > + *(.bss .bss.* .sbss) > . =3D ALIGN(POINTER_ALIGN); > __bss_end =3D .; > } :text > -- > 2.40.1 > > From xen-devel-bounces@lists.xenproject.org Mon Jun 12 05:11:03 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 05:11:03 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546832.853881 (Exim 4.92) (envelope-from ) id 1q8ZpM-0008Du-R6; Mon, 12 Jun 2023 05:10:52 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546832.853881; Mon, 12 Jun 2023 05:10:52 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8ZpM-0008Dn-Nb; Mon, 12 Jun 2023 05:10:52 +0000 Received: by outflank-mailman (input) for mailman id 546832; Mon, 12 Jun 2023 05:10:50 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8ZpK-0008Dd-PS for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 05:10:50 +0000 Received: from mail-vs1-xe35.google.com (mail-vs1-xe35.google.com [2607:f8b0:4864:20::e35]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 7e1913ee-08df-11ee-8611-37d641c3527e; Mon, 12 Jun 2023 07:10:48 +0200 (CEST) Received: by mail-vs1-xe35.google.com with SMTP id ada2fe7eead31-43b3e2cce3eso3114780137.0 for ; Sun, 11 Jun 2023 22:10:48 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 7e1913ee-08df-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686546647; x=1689138647; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=wYh4Fg2ZU4P8SV/qYIvkTQqxQewmN3W+UuY7wF4U/6k=; b=oMAHrDn92enW2Zp3fnTg5G3/pC9wxBZqcvNl/ZYEm8rpUai/whkKqlXMFJX4SipzkM cwf3aMIKZUWagoTEarlsX8zU6Sh70BZj8WkuXvrYBdC3mpKzXzGKtwJca/Edt+az9auQ 5OqORIie3lvpIeotvEsrABDVfnIbi7PKFsAOPalwTRMVEoo3ZDH/j7iSpmLY98qLYIED PvabPQOjrRYNTmKIp45DGlrEtBTGc4LAjdS3Vq6n6CE3/2HgBhlT24QgsCcSbI1gpOqo ZS2AWsRnnW2R8HDCCoh25f+8D8tHis5RWAHKMxgFCnhyhl7MPvUCUfqFpr2fwjLSJhYk shZQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686546647; x=1689138647; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=wYh4Fg2ZU4P8SV/qYIvkTQqxQewmN3W+UuY7wF4U/6k=; b=lg5+K6idgFpFUsE6T35cXQcnTBod912Uu17b1jornKUWN1n+CMH9ihTUSydwPv9cwj kM7Oq7SSyYMIOoPjxmMUlGFQqHqFmyVV1t174yWXULOmg+vhxNps2qKJpdmEnrw98pkW tcM/BdzlUrjDTN4zx3j1IrKEN5YB5Ue2kOQQNvuNX4TtvYlyPXDuDW8/gOZC3j1nTbh/ vPHvH9oXpiw0nlizZ+PXPO+TrdwWjQqwhgxVOiYTQDwgywhwjRR1AfbeSJRzSFiFaZx9 wCzQgN2fWcVf1BLkwwGx8RYTFATEM4gh2fwY1ZBHDt/Kv81D2UTJzK2ZKuNe0xgogqtJ H5DQ== X-Gm-Message-State: AC+VfDwXh52KBXgjKRaWiX/Sa6O9gGbQ953wXsQurWnYy4t6Zhjr6ABn NuuCzoFKGO2y7aUhDlZRfeQRF0beBufGkXUa8C2BFDIppPU= X-Google-Smtp-Source: ACHHUZ7VlEr67R5DAE7qe3BK+BB9fhq3ASoVjprbcLLB0CVnz5Rg6f0lwkFvW5WiJlQiNJ21Z+oV59itRtWT+mWRE4Q= X-Received: by 2002:a05:6102:158b:b0:43b:4965:d03e with SMTP id g11-20020a056102158b00b0043b4965d03emr4143631vsv.10.1686546647545; Sun, 11 Jun 2023 22:10:47 -0700 (PDT) MIME-Version: 1.0 References: In-Reply-To: From: Alistair Francis Date: Mon, 12 Jun 2023 15:10:21 +1000 Message-ID: Subject: Re: [PATCH v1 3/8] xen/riscv: introduce reset_stack() function To: Oleksii Kurochko Cc: xen-devel@lists.xenproject.org, Jan Beulich , Andrew Cooper , Bob Eshleman , Alistair Francis , Connor Davis Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Wed, Jun 7, 2023 at 5:55=E2=80=AFAM Oleksii Kurochko wrote: > > Signed-off-by: Oleksii Kurochko Reviewed-by: Alistair Francis Alistair > --- > xen/arch/riscv/riscv64/head.S | 8 +++++++- > 1 file changed, 7 insertions(+), 1 deletion(-) > > diff --git a/xen/arch/riscv/riscv64/head.S b/xen/arch/riscv/riscv64/head.= S > index 8887f0cbd4..6fb7dd80fd 100644 > --- a/xen/arch/riscv/riscv64/head.S > +++ b/xen/arch/riscv/riscv64/head.S > @@ -27,8 +27,14 @@ ENTRY(start) > add t3, t3, __SIZEOF_POINTER__ > bltu t3, t4, .L_clear_bss > > + jal reset_stack > + > + tail start_xen > + > +ENTRY(reset_stack) > la sp, cpu0_boot_stack > li t0, STACK_SIZE > add sp, sp, t0 > > - tail start_xen > + ret > + > -- > 2.40.1 > > From xen-devel-bounces@lists.xenproject.org Mon Jun 12 06:28:24 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 06:28:24 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546837.853890 (Exim 4.92) (envelope-from ) id 1q8b27-0007SD-Cb; Mon, 12 Jun 2023 06:28:07 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546837.853890; Mon, 12 Jun 2023 06:28:07 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8b27-0007S6-9p; Mon, 12 Jun 2023 06:28:07 +0000 Received: by outflank-mailman (input) for mailman id 546837; Mon, 12 Jun 2023 06:28:06 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8b26-0007S0-Cl for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 06:28:06 +0000 Received: from smtp-out2.suse.de (smtp-out2.suse.de [195.135.220.29]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 483be62b-08ea-11ee-8611-37d641c3527e; Mon, 12 Jun 2023 08:28:02 +0200 (CEST) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by smtp-out2.suse.de (Postfix) with ESMTPS id D805620438; Mon, 12 Jun 2023 06:28:01 +0000 (UTC) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id 8E2CE138EC; Mon, 12 Jun 2023 06:28:01 +0000 (UTC) Received: from dovecot-director2.suse.de ([192.168.254.65]) by imap2.suse-dmz.suse.de with ESMTPSA id 55kyIfG6hmSiTQAAMHmgww (envelope-from ); Mon, 12 Jun 2023 06:28:01 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 483be62b-08ea-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1; t=1686551281; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=QJccrPvEmL1q1Xpkd6ORczRgTgvUGBgpRzm55Jp+Yxk=; b=gPPwOFTA3NS/t68IR32ccZKhnQvb+6HlfBZ+owozxtLhyhLr23gG90aEk1nL75tyw7p7fa pM+vP4pkPQUC++h5WK7hGb8zaDI5clinJtyfathX6QOuLNMjFOE1pDnkASDlxWugV62EEW ESyXdVxLrFy7pIkuEhcH5C+cDzhhlhA= Message-ID: <85275900-6b6a-5391-a2a0-16704df3f00f@suse.com> Date: Mon, 12 Jun 2023 08:27:59 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Content-Language: en-US To: Demi Marie Obenour , Stefano Stabellini , Oleksandr Tyshchenko , Jan Beulich , Konrad Rzeszutek Wilk Cc: Xen developer discussion , Linux Kernel Mailing List , stable@vger.kernel.org References: <20230610153232.1859-1-demi@invisiblethingslab.com> From: Juergen Gross Subject: Re: [PATCH] xen: speed up grant-table reclaim In-Reply-To: <20230610153232.1859-1-demi@invisiblethingslab.com> Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="------------PfPXngR00bZvfSGPWBBi8L0B" This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --------------PfPXngR00bZvfSGPWBBi8L0B Content-Type: multipart/mixed; boundary="------------VhH7mL2u9cTh1WElDAyKKSMF"; protected-headers="v1" From: Juergen Gross To: Demi Marie Obenour , Stefano Stabellini , Oleksandr Tyshchenko , Jan Beulich , Konrad Rzeszutek Wilk Cc: Xen developer discussion , Linux Kernel Mailing List , stable@vger.kernel.org Message-ID: <85275900-6b6a-5391-a2a0-16704df3f00f@suse.com> Subject: Re: [PATCH] xen: speed up grant-table reclaim References: <20230610153232.1859-1-demi@invisiblethingslab.com> In-Reply-To: <20230610153232.1859-1-demi@invisiblethingslab.com> --------------VhH7mL2u9cTh1WElDAyKKSMF Content-Type: multipart/mixed; boundary="------------OjVKIcQRF51gOYUx6IR6Tatd" --------------OjVKIcQRF51gOYUx6IR6Tatd Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: base64 T24gMTAuMDYuMjMgMTc6MzIsIERlbWkgTWFyaWUgT2Jlbm91ciB3cm90ZToNCj4gV2hlbiBh IGdyYW50IGVudHJ5IGlzIHN0aWxsIGluIHVzZSBieSB0aGUgcmVtb3RlIGRvbWFpbiwgTGlu dXggbXVzdCBwdXQNCj4gaXQgb24gYSBkZWZlcnJlZCBsaXN0Lg0KDQpUaGlzIGxhY2tzIHF1 aXRlIHNvbWUgY29udGV4dC4NCg0KVGhlIG1haW4gcHJvYmxlbSBpcyByZWxhdGVkIHRvIHRo ZSBncmFudCBub3QgaGF2aW5nIGJlZW4gdW5tYXBwZWQgYWZ0ZXINCnRoZSBlbmQgb2YgYSBy ZXF1ZXN0LCBidXQgdGhlIHNpZGUgZ3JhbnRpbmcgdGhlIGFjY2VzcyBpcyBhc3N1bWluZyB0 aGlzDQpzaG91bGQgYmUgdGhlIGNhc2UuDQoNCkluIGdlbmVyYWwgdGhpcyBtZWFucyB0aGF0 IHRoZSB0d28gc2lkZXMgaW1wbGVtZW50aW5nIHRoZSBwcm90b2NvbCBkb24ndA0KYWdyZWUg aG93IGl0IHNob3VsZCB3b3JrLCBvciB0aGF0IHRoZSBwcm90b2NvbCBpdHNlbGYgaGFzIGEg Zmxhdy4NCg0KID4gTm9ybWFsbHksIHRoaXMgbGlzdCBpcyB2ZXJ5IHNob3J0LCBiZWNhdXNl DQo+IHRoZSBQViBuZXR3b3JrIGFuZCBibG9jayBwcm90b2NvbHMgZXhwZWN0IHRoZSBiYWNr ZW5kIHRvIHVubWFwIHRoZSBncmFudA0KPiBmaXJzdC4NCg0KTm9ybWFsbHkgdGhlIGxpc3Qg aXMganVzdCBlbXB0eS4gT25seSBpbiB2ZXJ5IHJhcmUgY2FzZXMgbGlrZSBwcmVtYXR1cmUN ClBWIGZyb250ZW5kIG1vZHVsZSB1bmxvYWRpbmcgaXQgaXMgZXhwZWN0ZWQgdG8gc2VlIGNh c2VzIG9mIGRlZmVycmVkDQpncmFudCByZWNsYWltcy4NCg0KPiBIb3dldmVyLCBRdWJlcyBP UydzIEdVSSBwcm90b2NvbCBpcyBzdWJqZWN0IHRvIHRoZSBjb25zdHJhaW50cw0KPiBvZiB0 aGUgWCBXaW5kb3cgU3lzdGVtLCBhbmQgYXMgc3VjaCB3aW5kcyB1cCB3aXRoIHRoZSBmcm9u dGVuZCB1bm1hcHBpbmcNCj4gdGhlIHdpbmRvdyBmaXJzdC4gIEFzIGEgcmVzdWx0LCB0aGUg bGlzdCBjYW4gZ3JvdyB2ZXJ5IGxhcmdlLCByZXN1bHRpbmcNCj4gaW4gYSBtYXNzaXZlIG1l bW9yeSBsZWFrIGFuZCBldmVudHVhbCBWTSBmcmVlemUuDQoNCkkgZG8gdW5kZXJzdGFuZCB0 aGF0IGl0IGlzIGRpZmZpY3VsdCB0byBjaGFuZ2UgdGhlIHByb3RvY29sIGFuZC9vcg0KYmVo YXZpb3IgYWZ0ZXIgdGhlIGZhY3QsIG9yIHRoYXQgcGVyZm9ybWFuY2UgY29uc2lkZXJhdGlv bnMgYXJlIGluIHRoZQ0Kd2F5IG9mIGRvaW5nIHNvLg0KDQo+IFRvIHBhcnRpYWxseSBzb2x2 ZSB0aGlzIHByb2JsZW0sIG1ha2UgdGhlIG51bWJlciBvZiBlbnRyaWVzIHRoYXQgdGhlIFZN DQo+IHdpbGwgYXR0ZW1wdCB0byBmcmVlIGF0IGVhY2ggaXRlcmF0aW9uIHR1bmFibGUuICBU aGUgZGVmYXVsdCBpcyBzdGlsbA0KPiAxMCwgYnV0IGl0IGNhbiBiZSBvdmVycmlkZGVuIGF0 IGNvbXBpbGUtdGltZSAodmlhIEtjb25maWcpLCBib290LXRpbWUNCj4gKHZpYSBhIGtlcm5l bCBjb21tYW5kLWxpbmUgb3B0aW9uKSwgb3IgcnVudGltZSAodmlhIHN5c2ZzKS4NCg0KSXMg dGhlcmUgcmVhbGx5IGEgbmVlZCB0byBoYXZlIGFub3RoZXIgS2NvbmZpZyBvcHRpb24gZm9y IHRoaXM/IEFGQUlDUw0Kb25seSBRdWJlc09TIGlzIGFmZmVjdGVkIGJ5IHRoZSBwcm9ibGVt IHlvdSBhcmUgdHJ5aW5nIHRvIHNvbHZlLiBJIGRvbid0DQpzZWUgd2h5IHlvdSBjYW4ndCB1 c2UgdGhlIGNvbW1hbmQtbGluZSBvcHRpb24gb3Igc3lzZnMgbm9kZSB0byBzZXQgdGhlDQpo aWdoZXIgcmVjbGFpbSBiYXRjaCBzaXplLg0KDQo+IA0KPiBGaXhlczogNTY5Y2E1YjNmOTRj ICgieGVuL2dudHRhYjogYWRkIGRlZmVycmVkIGZyZWVpbmcgbG9naWMiKQ0KDQpJIGRvbid0 IHRoaW5rIHRoaXMgIkZpeGVzOiIgdGFnIGlzIGFwcHJvcHJpYXRlLiBUaGUgbWVudGlvbmVk IGNvbW1pdCBkaWRuJ3QNCmhhdmUgYSBidWcuIFlvdSBhcmUgYWRkaW5nIG5ldyBmdW5jdGlv bmFsaXR5IG9uIHRvcCBvZiBpdC4NCg0KPiBDYzogc3RhYmxlQHZnZXIua2VybmVsLm9yZw0K PiBTaWduZWQtb2ZmLWJ5OiBEZW1pIE1hcmllIE9iZW5vdXIgPGRlbWlAaW52aXNpYmxldGhp bmdzbGFiLmNvbT4NCj4gLS0tDQo+ICAgZHJpdmVycy94ZW4vS2NvbmZpZyAgICAgICB8IDEy ICsrKysrKysrKysrKw0KPiAgIGRyaXZlcnMveGVuL2dyYW50LXRhYmxlLmMgfCA0MCArKysr KysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0NCj4gICAyIGZpbGVzIGNoYW5n ZWQsIDQxIGluc2VydGlvbnMoKyksIDExIGRlbGV0aW9ucygtKQ0KPiANCj4gZGlmZiAtLWdp dCBhL2RyaXZlcnMveGVuL0tjb25maWcgYi9kcml2ZXJzL3hlbi9LY29uZmlnDQo+IGluZGV4 IGQ1ZDdjNDAyYjY1MTEyYjg1OTJiYTEwYmQzZmQxNzMyYzI2Yjc3MWUuLjhmOTZlMTM1OWVi MTAyZDY0MjA3NzViNjZlNzgwNTAwNGE0Y2U5ZmUgMTAwNjQ0DQo+IC0tLSBhL2RyaXZlcnMv eGVuL0tjb25maWcNCj4gKysrIGIvZHJpdmVycy94ZW4vS2NvbmZpZw0KPiBAQCAtNjUsNiAr NjUsMTggQEAgY29uZmlnIFhFTl9NRU1PUllfSE9UUExVR19MSU1JVA0KPiAgIAkgIFRoaXMg dmFsdWUgaXMgdXNlZCB0byBhbGxvY2F0ZSBlbm91Z2ggc3BhY2UgaW4gaW50ZXJuYWwNCj4g ICAJICB0YWJsZXMgbmVlZGVkIGZvciBwaHlzaWNhbCBtZW1vcnkgYWRtaW5pc3RyYXRpb24u DQo+ICAgDQo+ICtjb25maWcgWEVOX0dSQU5UU19SRUNMQUlNX1BFUl9JVEVSQVRJT04NCj4g KwlpbnQgIkRlZmF1bHQgbnVtYmVyIG9mIGdyYW50IGVudHJpZXMgdG8gcmVjbGFpbSBwZXIg aXRlcmF0aW9uIg0KPiArCWRlZmF1bHQgMTANCj4gKwlyYW5nZSAxMCA0Mjk0OTY3Mjk1DQo+ ICsJaGVscA0KPiArCSAgVGhpcyBzZXRzIHRoZSBkZWZhdWx0IHZhbHVlIGZvciB0aGUgZ3Jh bnRfdGFibGUuZnJlZV9wZXJfaXRlcmF0aW9uDQo+ICsJICBrZXJuZWwgY29tbWFuZCBsaW5l IG9wdGlvbiwgd2hpY2ggc2V0cyB0aGUgbnVtYmVyIG9mIGdyYW50cyB0aGF0DQo+ICsJICBM aW51eCB3aWxsIHRyeSB0byByZWNsYWltIGF0IG9uY2UuICBUaGUgZGVmYXVsdCBpcyAxMCwg YnV0DQo+ICsJICB3b3JrbG9hZHMgdGhhdCBtYWtlIGhlYXZ5IHVzZSBvZiBnbnRhbGxvYyB3 aWxsIGxpa2VseSB3YW50IHRvDQo+ICsJICBpbmNyZWFzZSB0aGlzLiAgVGhlIGN1cnJlbnQg dmFsdWUgY2FuIGJlIGFjY2Vzc2VkIGFuZC9vciBtb2RpZmllZA0KPiArCSAgdmlhIC9zeXMv bW9kdWxlL2dyYW50X3RhYmxlL3BhcmFtZXRlcnMvZnJlZV9wZXJfaXRlcmF0aW9uLg0KPiAr DQoNCkFwYXJ0IGZyb20gdGhlIGZhY3QgdGhhdCBJIGRvbid0IGxpa2UgYWRkaW5nIGEgbmV3 IEtjb25maWcgb3B0aW9uLCB0aGUgaGVscA0KdGV4dCBpcyBub3QgdGVsbGluZyB0aGUgdHJ1 ZSBzdG9yeS4gSGVhdnkgdXNlIG9mIGdudGFsbG9jIGlzbid0IHRvIGJsYW1lLCBidXQNCnRo ZSBmYWN0IHRoYXQgeW91ciBQVi1kZXZpY2UgaW1wbGVtZW50YXRpb24gaXMgYmFzZWQgb24g dGhlIHJlY2xhaW0NCmZ1bmN0aW9uYWxpdHkuIFRCSCwgc29tZW9uZSBub3QgZmFtaWxpYXIg d2l0aCB0aGUgZ3JhbnQgcmVjbGFpbSB3aWxsIGhhdmUgbm8NCmNoYW5jZSB0byBzZWxlY3Qg YSBzZW5zaWJsZSB2YWx1ZSBiYXNlZCBvbiB5b3VyIGhlbHAgdGV4dC4NCg0KPiAgIGNvbmZp ZyBYRU5fU0NSVUJfUEFHRVNfREVGQVVMVA0KPiAgIAlib29sICJTY3J1YiBwYWdlcyBiZWZv cmUgcmV0dXJuaW5nIHRoZW0gdG8gc3lzdGVtIGJ5IGRlZmF1bHQiDQo+ICAgCWRlcGVuZHMg b24gWEVOX0JBTExPT04NCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMveGVuL2dyYW50LXRhYmxl LmMgYi9kcml2ZXJzL3hlbi9ncmFudC10YWJsZS5jDQo+IGluZGV4IGUxZWM3MjVjMjgxOWQ0 ZDVkZWRlMDYzZWIwMGQ4NmE2ZDUyOTQ0YzAuLmZhNjY2YWE2YWJjM2U3ODZkZGRjOTRmODk1 NjQxNTA1ZWMwYjIzZDggMTAwNjQ0DQo+IC0tLSBhL2RyaXZlcnMveGVuL2dyYW50LXRhYmxl LmMNCj4gKysrIGIvZHJpdmVycy94ZW4vZ3JhbnQtdGFibGUuYw0KPiBAQCAtNDk4LDE0ICs0 OTgsMjAgQEAgc3RhdGljIExJU1RfSEVBRChkZWZlcnJlZF9saXN0KTsNCj4gICBzdGF0aWMg dm9pZCBnbnR0YWJfaGFuZGxlX2RlZmVycmVkKHN0cnVjdCB0aW1lcl9saXN0ICopOw0KPiAg IHN0YXRpYyBERUZJTkVfVElNRVIoZGVmZXJyZWRfdGltZXIsIGdudHRhYl9oYW5kbGVfZGVm ZXJyZWQpOw0KPiAgIA0KPiArc3RhdGljIGF0b21pYzY0X3QgZGVmZXJyZWRfY291bnQ7DQo+ ICtzdGF0aWMgYXRvbWljNjRfdCBsZWFrZWRfY291bnQ7DQo+ICtzdGF0aWMgdW5zaWduZWQg aW50IGZyZWVfcGVyX2l0ZXJhdGlvbiA9IENPTkZJR19YRU5fR1JBTlRTX1JFQ0xBSU1fUEVS X0lURVJBVElPTjsNCj4gKw0KPiAgIHN0YXRpYyB2b2lkIGdudHRhYl9oYW5kbGVfZGVmZXJy ZWQoc3RydWN0IHRpbWVyX2xpc3QgKnVudXNlZCkNCj4gICB7DQo+IC0JdW5zaWduZWQgaW50 IG5yID0gMTA7DQo+ICsJdW5zaWduZWQgaW50IG5yID0gUkVBRF9PTkNFKGZyZWVfcGVyX2l0 ZXJhdGlvbik7DQo+ICsJY29uc3QgYm9vbCBpZ25vcmVfbGltaXQgPSBuciA9PSAwOw0KPiAg IAlzdHJ1Y3QgZGVmZXJyZWRfZW50cnkgKmZpcnN0ID0gTlVMTDsNCj4gICAJdW5zaWduZWQg bG9uZyBmbGFnczsNCj4gKwlzaXplX3QgZnJlZWQgPSAwOw0KPiAgIA0KPiAgIAlzcGluX2xv Y2tfaXJxc2F2ZSgmZ250dGFiX2xpc3RfbG9jaywgZmxhZ3MpOw0KPiAtCXdoaWxlIChuci0t KSB7DQo+ICsJd2hpbGUgKChpZ25vcmVfbGltaXQgfHwgbnItLSkgJiYgIWxpc3RfZW1wdHko JmRlZmVycmVkX2xpc3QpKSB7DQo+ICAgCQlzdHJ1Y3QgZGVmZXJyZWRfZW50cnkgKmVudHJ5 DQo+ICAgCQkJPSBsaXN0X2ZpcnN0X2VudHJ5KCZkZWZlcnJlZF9saXN0LA0KPiAgIAkJCQkJ ICAgc3RydWN0IGRlZmVycmVkX2VudHJ5LCBsaXN0KTsNCj4gQEAgLTUxNSwxMCArNTIxLDEz IEBAIHN0YXRpYyB2b2lkIGdudHRhYl9oYW5kbGVfZGVmZXJyZWQoc3RydWN0IHRpbWVyX2xp c3QgKnVudXNlZCkNCj4gICAJCWxpc3RfZGVsKCZlbnRyeS0+bGlzdCk7DQo+ICAgCQlzcGlu X3VubG9ja19pcnFyZXN0b3JlKCZnbnR0YWJfbGlzdF9sb2NrLCBmbGFncyk7DQo+ICAgCQlp ZiAoX2dudHRhYl9lbmRfZm9yZWlnbl9hY2Nlc3NfcmVmKGVudHJ5LT5yZWYpKSB7DQo+ICsJ CQl1aW50NjRfdCByZXQgPSBhdG9taWM2NF9zdWJfcmV0dXJuKDEsICZkZWZlcnJlZF9jb3Vu dCk7DQo+ICAgCQkJcHV0X2ZyZWVfZW50cnkoZW50cnktPnJlZik7DQo+IC0JCQlwcl9kZWJ1 ZygiZnJlZWluZyBnLmUuICUjeCAocGZuICUjbHgpXG4iLA0KPiAtCQkJCSBlbnRyeS0+cmVm LCBwYWdlX3RvX3BmbihlbnRyeS0+cGFnZSkpOw0KPiArCQkJcHJfZGVidWcoImZyZWVpbmcg Zy5lLiAlI3ggKHBmbiAlI2x4KSwgJWxsdSByZW1haW5pbmdcbiIsDQo+ICsJCQkJIGVudHJ5 LT5yZWYsIHBhZ2VfdG9fcGZuKGVudHJ5LT5wYWdlKSwNCj4gKwkJCQkgKHVuc2lnbmVkIGxv bmcgbG9uZylyZXQpOw0KDQpJJ2QgcHJlZmVyIG5vdCB0byBpc3N1ZSBsb3RzIG9mIHByaW50 cyAoYmVpbmcgaXQgZGVidWcgb3IgaW5mbyBvbmVzKSBpZiB0aGUNCnJlY2xhaW0gaXMgZXhw ZWN0ZWQgdG8gaGFwcGVuIHdpdGggYSBzcGVjaWZpYyBQVi1kZXZpY2UuDQoNCk15IHByZWZl cnJlZCBzb2x1dGlvbiB3b3VsZCBiZSBhIHBlci1kZXZpY2UgZmxhZywgYnV0IGF0IGxlYXN0 IHlvdSBzaG91bGQNCnN3aXRjaCB0byBwcl8qX3JhdGVsaW1pdGVkKCkuIFNhbWUgYXBwbGll cyBmdXJ0aGVyIGRvd24uDQoNCj4gICAJCQlwdXRfcGFnZShlbnRyeS0+cGFnZSk7DQo+ICsJ CQlmcmVlZCsrOw0KPiAgIAkJCWtmcmVlKGVudHJ5KTsNCj4gICAJCQllbnRyeSA9IE5VTEw7 DQo+ICAgCQl9IGVsc2Ugew0KPiBAQCAtNTMwLDIxICs1MzksMjIgQEAgc3RhdGljIHZvaWQg Z250dGFiX2hhbmRsZV9kZWZlcnJlZChzdHJ1Y3QgdGltZXJfbGlzdCAqdW51c2VkKQ0KPiAg IAkJc3Bpbl9sb2NrX2lycXNhdmUoJmdudHRhYl9saXN0X2xvY2ssIGZsYWdzKTsNCj4gICAJ CWlmIChlbnRyeSkNCj4gICAJCQlsaXN0X2FkZF90YWlsKCZlbnRyeS0+bGlzdCwgJmRlZmVy cmVkX2xpc3QpOw0KPiAtCQllbHNlIGlmIChsaXN0X2VtcHR5KCZkZWZlcnJlZF9saXN0KSkN Cj4gLQkJCWJyZWFrOw0KPiAgIAl9DQo+IC0JaWYgKCFsaXN0X2VtcHR5KCZkZWZlcnJlZF9s aXN0KSAmJiAhdGltZXJfcGVuZGluZygmZGVmZXJyZWRfdGltZXIpKSB7DQo+ICsJaWYgKGxp c3RfZW1wdHkoJmRlZmVycmVkX2xpc3QpKQ0KPiArCQlXQVJOX09OKGF0b21pYzY0X3JlYWQo JmRlZmVycmVkX2NvdW50KSk7DQo+ICsJZWxzZSBpZiAoIXRpbWVyX3BlbmRpbmcoJmRlZmVy cmVkX3RpbWVyKSkgew0KPiAgIAkJZGVmZXJyZWRfdGltZXIuZXhwaXJlcyA9IGppZmZpZXMg KyBIWjsNCj4gICAJCWFkZF90aW1lcigmZGVmZXJyZWRfdGltZXIpOw0KPiAgIAl9DQo+ICAg CXNwaW5fdW5sb2NrX2lycXJlc3RvcmUoJmdudHRhYl9saXN0X2xvY2ssIGZsYWdzKTsNCj4g Kwlwcl9kZWJ1ZygiRnJlZWQgJXp1IHJlZmVyZW5jZXMiLCBmcmVlZCk7DQo+ICAgfQ0KPiAg IA0KPiAgIHN0YXRpYyB2b2lkIGdudHRhYl9hZGRfZGVmZXJyZWQoZ3JhbnRfcmVmX3QgcmVm LCBzdHJ1Y3QgcGFnZSAqcGFnZSkNCj4gICB7DQo+ICAgCXN0cnVjdCBkZWZlcnJlZF9lbnRy eSAqZW50cnk7DQo+ICAgCWdmcF90IGdmcCA9IChpbl9hdG9taWMoKSB8fCBpcnFzX2Rpc2Fi bGVkKCkpID8gR0ZQX0FUT01JQyA6IEdGUF9LRVJORUw7DQo+IC0JY29uc3QgY2hhciAqd2hh dCA9IEtFUk5fV0FSTklORyAibGVha2luZyI7DQo+ICsJdWludDY0X3QgbGVha2VkLCBkZWZl cnJlZDsNCj4gICANCj4gICAJZW50cnkgPSBrbWFsbG9jKHNpemVvZigqZW50cnkpLCBnZnAp Ow0KPiAgIAlpZiAoIXBhZ2UpIHsNCj4gQEAgLTU2NywxMiArNTc3LDIwIEBAIHN0YXRpYyB2 b2lkIGdudHRhYl9hZGRfZGVmZXJyZWQoZ3JhbnRfcmVmX3QgcmVmLCBzdHJ1Y3QgcGFnZSAq cGFnZSkNCj4gICAJCQlhZGRfdGltZXIoJmRlZmVycmVkX3RpbWVyKTsNCj4gICAJCX0NCj4g ICAJCXNwaW5fdW5sb2NrX2lycXJlc3RvcmUoJmdudHRhYl9saXN0X2xvY2ssIGZsYWdzKTsN Cj4gLQkJd2hhdCA9IEtFUk5fREVCVUcgImRlZmVycmluZyI7DQo+ICsJCWRlZmVycmVkID0g YXRvbWljNjRfYWRkX3JldHVybigxLCAmZGVmZXJyZWRfY291bnQpOw0KPiArCQlsZWFrZWQg PSBhdG9taWM2NF9yZWFkKCZsZWFrZWRfY291bnQpOw0KPiArCQlwcl9kZWJ1ZygiZGVmZXJy aW5nIGcuZS4gJSN4IChwZm4gJSNseCkgKHRvdGFsIGRlZmVycmVkICVsbHUsIHRvdGFsIGxl YWtlZCAlbGx1KVxuIiwNCj4gKwkJCSByZWYsIHBhZ2UgPyBwYWdlX3RvX3BmbihwYWdlKSA6 IC0xLCBkZWZlcnJlZCwgbGVha2VkKTsNCj4gKwl9IGVsc2Ugew0KPiArCQlkZWZlcnJlZCA9 IGF0b21pYzY0X3JlYWQoJmRlZmVycmVkX2NvdW50KTsNCj4gKwkJbGVha2VkID0gYXRvbWlj NjRfYWRkX3JldHVybigxLCAmbGVha2VkX2NvdW50KTsNCj4gKwkJcHJfd2FybigibGVha2lu ZyBnLmUuICUjeCAocGZuICUjbHgpICh0b3RhbCBkZWZlcnJlZCAlbGx1LCB0b3RhbCBsZWFr ZWQgJWxsdSlcbiIsDQo+ICsJCQlyZWYsIHBhZ2UgPyBwYWdlX3RvX3BmbihwYWdlKSA6IC0x LCBkZWZlcnJlZCwgbGVha2VkKTsNCj4gICAJfQ0KPiAtCXByaW50aygiJXMgZy5lLiAlI3gg KHBmbiAlI2x4KVxuIiwNCj4gLQkgICAgICAgd2hhdCwgcmVmLCBwYWdlID8gcGFnZV90b19w Zm4ocGFnZSkgOiAtMSk7DQo+ICAgfQ0KPiAgIA0KPiArbW9kdWxlX3BhcmFtKGZyZWVfcGVy X2l0ZXJhdGlvbiwgdWludCwgMDYwMCk7DQo+ICsNCg0KQ291bGQgeW91IHBsZWFzZSBtb3Zl IHRoZSBwYXJhbWV0ZXIgZGVmaW5pdGlvbiBjbG9zZXIgdG8gdGhlIHJlbGF0ZWQNCnZhcmlh YmxlIGRlZmluaXRpb24/DQoNCg0KSnVlcmdlbg0K --------------OjVKIcQRF51gOYUx6IR6Tatd Content-Type: application/pgp-keys; name="OpenPGP_0xB0DE9DD628BF132F.asc" Content-Disposition: attachment; filename="OpenPGP_0xB0DE9DD628BF132F.asc" Content-Description: OpenPGP public key Content-Transfer-Encoding: quoted-printable -----BEGIN PGP PUBLIC KEY BLOCK----- xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjri oyspZKOBycWxw3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2 kaV2KL9650I1SJvedYm8Of8Zd621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i 1TXkH09XSSI8mEQ/ouNcMvIJNwQpd369y9bfIhWUiVXEK7MlRgUG6MvIj6Y3Am/B BLUVbDa4+gmzDC9ezlZkTZG2t14zWPvxXP3FAp2pkW0xqG7/377qptDmrk42GlSK N4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEBAAHNHEp1ZXJnZW4gR3Jvc3Mg PGpnQHBmdXBmLm5ldD7CwHkEEwECACMFAlOMcBYCGwMHCwkIBwMCAQYVCAIJCgsE FgIDAQIeAQIXgAAKCRCw3p3WKL8TL0KdB/93FcIZ3GCNwFU0u3EjNbNjmXBKDY4F UGNQH2lvWAUy+dnyThpwdtF/jQ6j9RwE8VP0+NXcYpGJDWlNb9/JmYqLiX2Q3Tye vpB0CA3dbBQp0OW0fgCetToGIQrg0MbD1C/sEOv8Mr4NAfbauXjZlvTj30H2jO0u +6WGM6nHwbh2l5O8ZiHkH32iaSTfN7Eu5RnNVUJbvoPHZ8SlM4KWm8rG+lIkGurq qu5gu8q8ZMKdsdGC4bBxdQKDKHEFExLJK/nRPFmAuGlId1E3fe10v5QL+qHI3EIP tyfE7i9Hz6rVwi7lWKgh7pe0ZvatAudZ+JNIlBKptb64FaiIOAWDCx1SzR9KdWVy Z2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+wsB5BBMBAgAjBQJTjHCvAhsDBwsJ CAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey/HmQf/RtI7kv5A2PS4 RF7HoZhPVPogNVbC4YA6lW7DrWf0teC0RR3MzXfy6pJ+7KLgkqMlrAbN/8Dvjoz7 8X+5vhH/rDLa9BuZQlhFmvcGtCF8eR0T1v0nC/nuAFVGy+67q2DH8As3KPu0344T BDpAvr2uYM4tSqxK4DURx5INz4ZZ0WNFHcqsfvlGJALDeE0LhITTd9jLzdDad1pQ SToCnLl6SBJZjDOX9QQcyUigZFtCXFst4dlsvddrxyqT1f17+2cFSdu7+ynLmXBK 7abQ3rwJY8SbRO2iRulogc5vr/RLMMlscDAiDkaFQWLoqHHOdfO9rURssHNN8WkM nQfvUewRz80hSnVlcmdlbiBHcm9zcyA8amdyb3NzQG5vdmVsbC5jb20+wsB5BBMB AgAjBQJTjHDXAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/ Ey8PUQf/ehmgCI9jB9hlgexLvgOtf7PJnFOXgMLdBQgBlVPO3/D9R8LtF9DBAFPN hlrsfIG/SqICoRCqUcJ96Pn3P7UUinFG/I0ECGF4EvTE1jnDkfJZr6jrbjgyoZHi w/4BNwSTL9rWASyLgqlA8u1mf+c2yUwcGhgkRAd1gOwungxcwzwqgljf0N51N5Jf VRHRtyfwq/ge+YEkDGcTU6Y0sPOuj4Dyfm8fJzdfHNQsWq3PnczLVELStJNdapwP OoE+lotufe3AM2vAEYJ9rTz3Cki4JFUsgLkHFqGZarrPGi1eyQcXeluldO3m91NK /1xMI3/+8jbO0tsn1tqSEUGIJi7ox80eSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1 c2UuZGU+wsB5BBMBAgAjBQJTjHDrAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgEC F4AACgkQsN6d1ii/Ey+LhQf9GL45eU5vOowA2u5N3g3OZUEBmDHVVbqMtzwlmNC4 k9Kx39r5s2vcFl4tXqW7g9/ViXYuiDXb0RfUpZiIUW89siKrkzmQ5dM7wRqzgJpJ wK8Bn2MIxAKArekWpiCKvBOB/Cc+3EXE78XdlxLyOi/NrmSGRIov0karw2RzMNOu 5D+jLRZQd1Sv27AR+IP3I8U4aqnhLpwhK7MEy9oCILlgZ1QZe49kpcumcZKORmzB TNh30FVKK1EvmV2xAKDoaEOgQB4iFQLhJCdP1I5aSgM5IVFdn7v5YgEYuJYx37Io N1EblHI//x/e2AaIHpzK5h88NEawQsaNRpNSrcfbFmAg987ATQRTjHAWAQgAyzH6 AOODMBjgfWE9VeCgsrwH3exNAU32gLq2xvjpWnHIs98ndPUDpnoxWQugJ6MpMncr 0xSwFmHEgnSEjK/PAjppgmyc57BwKII3sV4on+gDVFJR6Y8ZRwgnBC5mVM6JjQ5x Dk8WRXljExRfUX9pNhdE5eBOZJrDRoLUmmjDtKzWaDhIg/+1Hzz93X4fCQkNVbVF LELU9bMaLPBG/x5q4iYZ2k2ex6d47YE1ZFdMm6YBYMOljGkZKwYde5ldM9mo45mm we0icXKLkpEdIXKTZeKDO+Hdv1aqFuAcccTg9RXDQjmwhC3yEmrmcfl0+rPghO0I v3OOImwTEe4co3c1mwARAQABwsBfBBgBAgAJBQJTjHAWAhsMAAoJELDendYovxMv Q/gH/1ha96vm4P/L+bQpJwrZ/dneZcmEwTbe8YFsw2V/Buv6Z4Mysln3nQK5ZadD 534CF7TDVft7fC4tU4PONxF5D+/tvgkPfDAfF77zy2AH1vJzQ1fOU8lYFpZXTXIH b+559UqvIB8AdgR3SAJGHHt4RKA0F7f5ipYBBrC6cyXJyyoprT10EMvU8VGiwXvT yJz3fjoYsdFzpWPlJEBRMedCot60g5dmbdrZ5DWClAr0yau47zpWj3enf1tLWaqc suylWsviuGjKGw7KHQd3bxALOknAp4dN3QwBYCKuZ7AddY9yjynVaD5X7nF9nO5B jR/i1DG86lem3iBDXzXsZDn8R38=3D =3D2wuH -----END PGP PUBLIC KEY BLOCK----- --------------OjVKIcQRF51gOYUx6IR6Tatd-- --------------VhH7mL2u9cTh1WElDAyKKSMF-- --------------PfPXngR00bZvfSGPWBBi8L0B Content-Type: application/pgp-signature; name="OpenPGP_signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="OpenPGP_signature" -----BEGIN PGP SIGNATURE----- wsB5BAABCAAjFiEEhRJncuj2BJSl0Jf3sN6d1ii/Ey8FAmSGuvAFAwAAAAAACgkQsN6d1ii/Ey8Y bgf/SjZ1UwdB2Gz291L/JdLTsZjlLRNPFLw4ESQnnxF4GbsIhfVSYZ9Mexf5M4jtnUNioEptQzQL jdBRboz75DbLKonqbW4L9I2WTx+kIrv+Z6u1G3RCVn1YAwU3afLu1NDBT3YoXjZPrznZUz1hgX9X 8B+8lYRnAq0HTIJYHWeoipEM963fUuo1r9Ryb94hdIPxFAkHaITe/digQxAKNQwdfLvq+sKo6n7G WbLoC2sfNGW7mlhkLcER4XwJuFcv1kXkmdZHLtb2K2U1wy+JMA+aT8WGUJjEdaxKECRNYj6j3GSx V0mDdkbwB17htJuqHwK4DxgA+dOmC4Eht1BgitzIeA== =80gY -----END PGP SIGNATURE----- --------------PfPXngR00bZvfSGPWBBi8L0B-- From xen-devel-bounces@lists.xenproject.org Mon Jun 12 06:45:42 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 06:45:42 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546842.853901 (Exim 4.92) (envelope-from ) id 1q8bIt-0001Tn-PA; Mon, 12 Jun 2023 06:45:27 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546842.853901; Mon, 12 Jun 2023 06:45:27 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8bIt-0001Tg-MO; Mon, 12 Jun 2023 06:45:27 +0000 Received: by outflank-mailman (input) for mailman id 546842; Mon, 12 Jun 2023 06:45:26 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8bIs-0001Ta-1Y for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 06:45:26 +0000 Received: from smtp-out1.suse.de (smtp-out1.suse.de [195.135.220.28]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id b4c05bd3-08ec-11ee-8611-37d641c3527e; Mon, 12 Jun 2023 08:45:23 +0200 (CEST) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by smtp-out1.suse.de (Postfix) with ESMTPS id 1097D227D0; Mon, 12 Jun 2023 06:45:23 +0000 (UTC) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id BFABD138EC; Mon, 12 Jun 2023 06:45:22 +0000 (UTC) Received: from dovecot-director2.suse.de ([192.168.254.65]) by imap2.suse-dmz.suse.de with ESMTPSA id BAJXLQK/hmTJUgAAMHmgww (envelope-from ); Mon, 12 Jun 2023 06:45:22 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: b4c05bd3-08ec-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1; t=1686552323; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=eYWXjFrPo85cxoAmNrQTWchVBMHopnG9ukMCkLHioSk=; b=nlwzU7iqHbbYidqVuZqFDovRgIC93gm0DFUkEZ0IglH7hdfwlKmuLq1FweX7GT6apcctvz N3IA8ohvF4Teh0geQw1MZ0YHdB7zHBkvwX2c7nMoFUI3VfN9YoEB7cgYI2jVdVyKlNyX0t Tk02UTRrB3FkMvIPz1L2Nk0puG5ZCaU= Message-ID: <79d2fe19-f2fa-7df6-3833-81bd0b171fa1@suse.com> Date: Mon, 12 Jun 2023 08:45:22 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Content-Language: en-US From: Juergen Gross To: Demi Marie Obenour , Stefano Stabellini , Oleksandr Tyshchenko , Jan Beulich , Konrad Rzeszutek Wilk Cc: Xen developer discussion , Linux Kernel Mailing List , stable@vger.kernel.org References: <20230610153232.1859-1-demi@invisiblethingslab.com> <85275900-6b6a-5391-a2a0-16704df3f00f@suse.com> Subject: Re: [PATCH] xen: speed up grant-table reclaim In-Reply-To: <85275900-6b6a-5391-a2a0-16704df3f00f@suse.com> Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="------------oI0vJUGw0t02o0Rq0ETOzPnU" This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --------------oI0vJUGw0t02o0Rq0ETOzPnU Content-Type: multipart/mixed; boundary="------------4Tg7aXmcSJSFW0Yk9Agg7cDd"; protected-headers="v1" From: Juergen Gross To: Demi Marie Obenour , Stefano Stabellini , Oleksandr Tyshchenko , Jan Beulich , Konrad Rzeszutek Wilk Cc: Xen developer discussion , Linux Kernel Mailing List , stable@vger.kernel.org Message-ID: <79d2fe19-f2fa-7df6-3833-81bd0b171fa1@suse.com> Subject: Re: [PATCH] xen: speed up grant-table reclaim References: <20230610153232.1859-1-demi@invisiblethingslab.com> <85275900-6b6a-5391-a2a0-16704df3f00f@suse.com> In-Reply-To: <85275900-6b6a-5391-a2a0-16704df3f00f@suse.com> --------------4Tg7aXmcSJSFW0Yk9Agg7cDd Content-Type: multipart/mixed; boundary="------------Y5iyrpaHlYcX9CvvZXosIuM4" --------------Y5iyrpaHlYcX9CvvZXosIuM4 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: base64 T24gMTIuMDYuMjMgMDg6MjcsIEp1ZXJnZW4gR3Jvc3Mgd3JvdGU6DQo+IE9uIDEwLjA2LjIz IDE3OjMyLCBEZW1pIE1hcmllIE9iZW5vdXIgd3JvdGU6DQo+PiBXaGVuIGEgZ3JhbnQgZW50 cnkgaXMgc3RpbGwgaW4gdXNlIGJ5IHRoZSByZW1vdGUgZG9tYWluLCBMaW51eCBtdXN0IHB1 dA0KPj4gaXQgb24gYSBkZWZlcnJlZCBsaXN0Lg0KPiANCj4gVGhpcyBsYWNrcyBxdWl0ZSBz b21lIGNvbnRleHQuDQo+IA0KPiBUaGUgbWFpbiBwcm9ibGVtIGlzIHJlbGF0ZWQgdG8gdGhl IGdyYW50IG5vdCBoYXZpbmcgYmVlbiB1bm1hcHBlZCBhZnRlcg0KPiB0aGUgZW5kIG9mIGEg cmVxdWVzdCwgYnV0IHRoZSBzaWRlIGdyYW50aW5nIHRoZSBhY2Nlc3MgaXMgYXNzdW1pbmcg dGhpcw0KPiBzaG91bGQgYmUgdGhlIGNhc2UuDQo+IA0KPiBJbiBnZW5lcmFsIHRoaXMgbWVh bnMgdGhhdCB0aGUgdHdvIHNpZGVzIGltcGxlbWVudGluZyB0aGUgcHJvdG9jb2wgZG9uJ3QN Cj4gYWdyZWUgaG93IGl0IHNob3VsZCB3b3JrLCBvciB0aGF0IHRoZSBwcm90b2NvbCBpdHNl bGYgaGFzIGEgZmxhdy4NCj4gDQo+ICA+IE5vcm1hbGx5LCB0aGlzIGxpc3QgaXMgdmVyeSBz aG9ydCwgYmVjYXVzZQ0KPj4gdGhlIFBWIG5ldHdvcmsgYW5kIGJsb2NrIHByb3RvY29scyBl eHBlY3QgdGhlIGJhY2tlbmQgdG8gdW5tYXAgdGhlIGdyYW50DQo+PiBmaXJzdC4NCj4gDQo+ IE5vcm1hbGx5IHRoZSBsaXN0IGlzIGp1c3QgZW1wdHkuIE9ubHkgaW4gdmVyeSByYXJlIGNh c2VzIGxpa2UgcHJlbWF0dXJlDQo+IFBWIGZyb250ZW5kIG1vZHVsZSB1bmxvYWRpbmcgaXQg aXMgZXhwZWN0ZWQgdG8gc2VlIGNhc2VzIG9mIGRlZmVycmVkDQo+IGdyYW50IHJlY2xhaW1z Lg0KPiANCj4+IEhvd2V2ZXIsIFF1YmVzIE9TJ3MgR1VJIHByb3RvY29sIGlzIHN1YmplY3Qg dG8gdGhlIGNvbnN0cmFpbnRzDQo+PiBvZiB0aGUgWCBXaW5kb3cgU3lzdGVtLCBhbmQgYXMg c3VjaCB3aW5kcyB1cCB3aXRoIHRoZSBmcm9udGVuZCB1bm1hcHBpbmcNCj4+IHRoZSB3aW5k b3cgZmlyc3QuwqAgQXMgYSByZXN1bHQsIHRoZSBsaXN0IGNhbiBncm93IHZlcnkgbGFyZ2Us IHJlc3VsdGluZw0KPj4gaW4gYSBtYXNzaXZlIG1lbW9yeSBsZWFrIGFuZCBldmVudHVhbCBW TSBmcmVlemUuDQo+IA0KPiBJIGRvIHVuZGVyc3RhbmQgdGhhdCBpdCBpcyBkaWZmaWN1bHQg dG8gY2hhbmdlIHRoZSBwcm90b2NvbCBhbmQvb3INCj4gYmVoYXZpb3IgYWZ0ZXIgdGhlIGZh Y3QsIG9yIHRoYXQgcGVyZm9ybWFuY2UgY29uc2lkZXJhdGlvbnMgYXJlIGluIHRoZQ0KPiB3 YXkgb2YgZG9pbmcgc28uDQo+IA0KPj4gVG8gcGFydGlhbGx5IHNvbHZlIHRoaXMgcHJvYmxl bSwgbWFrZSB0aGUgbnVtYmVyIG9mIGVudHJpZXMgdGhhdCB0aGUgVk0NCj4+IHdpbGwgYXR0 ZW1wdCB0byBmcmVlIGF0IGVhY2ggaXRlcmF0aW9uIHR1bmFibGUuwqAgVGhlIGRlZmF1bHQg aXMgc3RpbGwNCj4+IDEwLCBidXQgaXQgY2FuIGJlIG92ZXJyaWRkZW4gYXQgY29tcGlsZS10 aW1lICh2aWEgS2NvbmZpZyksIGJvb3QtdGltZQ0KPj4gKHZpYSBhIGtlcm5lbCBjb21tYW5k LWxpbmUgb3B0aW9uKSwgb3IgcnVudGltZSAodmlhIHN5c2ZzKS4NCj4gDQo+IElzIHRoZXJl IHJlYWxseSBhIG5lZWQgdG8gaGF2ZSBhbm90aGVyIEtjb25maWcgb3B0aW9uIGZvciB0aGlz PyBBRkFJQ1MNCj4gb25seSBRdWJlc09TIGlzIGFmZmVjdGVkIGJ5IHRoZSBwcm9ibGVtIHlv dSBhcmUgdHJ5aW5nIHRvIHNvbHZlLiBJIGRvbid0DQo+IHNlZSB3aHkgeW91IGNhbid0IHVz ZSB0aGUgY29tbWFuZC1saW5lIG9wdGlvbiBvciBzeXNmcyBub2RlIHRvIHNldCB0aGUNCj4g aGlnaGVyIHJlY2xhaW0gYmF0Y2ggc2l6ZS4NCj4gDQo+Pg0KPj4gRml4ZXM6IDU2OWNhNWIz Zjk0YyAoInhlbi9nbnR0YWI6IGFkZCBkZWZlcnJlZCBmcmVlaW5nIGxvZ2ljIikNCj4gDQo+ IEkgZG9uJ3QgdGhpbmsgdGhpcyAiRml4ZXM6IiB0YWcgaXMgYXBwcm9wcmlhdGUuIFRoZSBt ZW50aW9uZWQgY29tbWl0IGRpZG4ndA0KPiBoYXZlIGEgYnVnLiBZb3UgYXJlIGFkZGluZyBu ZXcgZnVuY3Rpb25hbGl0eSBvbiB0b3Agb2YgaXQuDQo+IA0KPj4gQ2M6IHN0YWJsZUB2Z2Vy Lmtlcm5lbC5vcmcNCj4+IFNpZ25lZC1vZmYtYnk6IERlbWkgTWFyaWUgT2Jlbm91ciA8ZGVt aUBpbnZpc2libGV0aGluZ3NsYWIuY29tPg0KPj4gLS0tDQo+PiDCoCBkcml2ZXJzL3hlbi9L Y29uZmlnwqDCoMKgwqDCoMKgIHwgMTIgKysrKysrKysrKysrDQo+PiDCoCBkcml2ZXJzL3hl bi9ncmFudC10YWJsZS5jIHwgNDAgKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0t LS0tLS0tDQo+PiDCoCAyIGZpbGVzIGNoYW5nZWQsIDQxIGluc2VydGlvbnMoKyksIDExIGRl bGV0aW9ucygtKQ0KPj4NCj4+IGRpZmYgLS1naXQgYS9kcml2ZXJzL3hlbi9LY29uZmlnIGIv ZHJpdmVycy94ZW4vS2NvbmZpZw0KPj4gaW5kZXggDQo+PiBkNWQ3YzQwMmI2NTExMmI4NTky YmExMGJkM2ZkMTczMmMyNmI3NzFlLi44Zjk2ZTEzNTllYjEwMmQ2NDIwNzc1YjY2ZTc4MDUw MDRhNGNlOWZlIDEwMDY0NA0KPj4gLS0tIGEvZHJpdmVycy94ZW4vS2NvbmZpZw0KPj4gKysr IGIvZHJpdmVycy94ZW4vS2NvbmZpZw0KPj4gQEAgLTY1LDYgKzY1LDE4IEBAIGNvbmZpZyBY RU5fTUVNT1JZX0hPVFBMVUdfTElNSVQNCj4+IMKgwqDCoMKgwqDCoMKgIFRoaXMgdmFsdWUg aXMgdXNlZCB0byBhbGxvY2F0ZSBlbm91Z2ggc3BhY2UgaW4gaW50ZXJuYWwNCj4+IMKgwqDC oMKgwqDCoMKgIHRhYmxlcyBuZWVkZWQgZm9yIHBoeXNpY2FsIG1lbW9yeSBhZG1pbmlzdHJh dGlvbi4NCj4+ICtjb25maWcgWEVOX0dSQU5UU19SRUNMQUlNX1BFUl9JVEVSQVRJT04NCj4+ ICvCoMKgwqAgaW50ICJEZWZhdWx0IG51bWJlciBvZiBncmFudCBlbnRyaWVzIHRvIHJlY2xh aW0gcGVyIGl0ZXJhdGlvbiINCj4+ICvCoMKgwqAgZGVmYXVsdCAxMA0KPj4gK8KgwqDCoCBy YW5nZSAxMCA0Mjk0OTY3Mjk1DQo+PiArwqDCoMKgIGhlbHANCj4+ICvCoMKgwqDCoMKgIFRo aXMgc2V0cyB0aGUgZGVmYXVsdCB2YWx1ZSBmb3IgdGhlIGdyYW50X3RhYmxlLmZyZWVfcGVy X2l0ZXJhdGlvbg0KPj4gK8KgwqDCoMKgwqAga2VybmVsIGNvbW1hbmQgbGluZSBvcHRpb24s IHdoaWNoIHNldHMgdGhlIG51bWJlciBvZiBncmFudHMgdGhhdA0KPj4gK8KgwqDCoMKgwqAg TGludXggd2lsbCB0cnkgdG8gcmVjbGFpbSBhdCBvbmNlLsKgIFRoZSBkZWZhdWx0IGlzIDEw LCBidXQNCj4+ICvCoMKgwqDCoMKgIHdvcmtsb2FkcyB0aGF0IG1ha2UgaGVhdnkgdXNlIG9m IGdudGFsbG9jIHdpbGwgbGlrZWx5IHdhbnQgdG8NCj4+ICvCoMKgwqDCoMKgIGluY3JlYXNl IHRoaXMuwqAgVGhlIGN1cnJlbnQgdmFsdWUgY2FuIGJlIGFjY2Vzc2VkIGFuZC9vciBtb2Rp ZmllZA0KPj4gK8KgwqDCoMKgwqAgdmlhIC9zeXMvbW9kdWxlL2dyYW50X3RhYmxlL3BhcmFt ZXRlcnMvZnJlZV9wZXJfaXRlcmF0aW9uLg0KPj4gKw0KPiANCj4gQXBhcnQgZnJvbSB0aGUg ZmFjdCB0aGF0IEkgZG9uJ3QgbGlrZSBhZGRpbmcgYSBuZXcgS2NvbmZpZyBvcHRpb24sIHRo ZSBoZWxwDQo+IHRleHQgaXMgbm90IHRlbGxpbmcgdGhlIHRydWUgc3RvcnkuIEhlYXZ5IHVz ZSBvZiBnbnRhbGxvYyBpc24ndCB0byBibGFtZSwgYnV0DQo+IHRoZSBmYWN0IHRoYXQgeW91 ciBQVi1kZXZpY2UgaW1wbGVtZW50YXRpb24gaXMgYmFzZWQgb24gdGhlIHJlY2xhaW0NCj4g ZnVuY3Rpb25hbGl0eS4gVEJILCBzb21lb25lIG5vdCBmYW1pbGlhciB3aXRoIHRoZSBncmFu dCByZWNsYWltIHdpbGwgaGF2ZSBubw0KPiBjaGFuY2UgdG8gc2VsZWN0IGEgc2Vuc2libGUg dmFsdWUgYmFzZWQgb24geW91ciBoZWxwIHRleHQuDQo+IA0KPj4gwqAgY29uZmlnIFhFTl9T Q1JVQl9QQUdFU19ERUZBVUxUDQo+PiDCoMKgwqDCoMKgIGJvb2wgIlNjcnViIHBhZ2VzIGJl Zm9yZSByZXR1cm5pbmcgdGhlbSB0byBzeXN0ZW0gYnkgZGVmYXVsdCINCj4+IMKgwqDCoMKg wqAgZGVwZW5kcyBvbiBYRU5fQkFMTE9PTg0KPj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMveGVu L2dyYW50LXRhYmxlLmMgYi9kcml2ZXJzL3hlbi9ncmFudC10YWJsZS5jDQo+PiBpbmRleCAN Cj4+IGUxZWM3MjVjMjgxOWQ0ZDVkZWRlMDYzZWIwMGQ4NmE2ZDUyOTQ0YzAuLmZhNjY2YWE2 YWJjM2U3ODZkZGRjOTRmODk1NjQxNTA1ZWMwYjIzZDggMTAwNjQ0DQo+PiAtLS0gYS9kcml2 ZXJzL3hlbi9ncmFudC10YWJsZS5jDQo+PiArKysgYi9kcml2ZXJzL3hlbi9ncmFudC10YWJs ZS5jDQo+PiBAQCAtNDk4LDE0ICs0OTgsMjAgQEAgc3RhdGljIExJU1RfSEVBRChkZWZlcnJl ZF9saXN0KTsNCj4+IMKgIHN0YXRpYyB2b2lkIGdudHRhYl9oYW5kbGVfZGVmZXJyZWQoc3Ry dWN0IHRpbWVyX2xpc3QgKik7DQo+PiDCoCBzdGF0aWMgREVGSU5FX1RJTUVSKGRlZmVycmVk X3RpbWVyLCBnbnR0YWJfaGFuZGxlX2RlZmVycmVkKTsNCj4+ICtzdGF0aWMgYXRvbWljNjRf dCBkZWZlcnJlZF9jb3VudDsNCj4+ICtzdGF0aWMgYXRvbWljNjRfdCBsZWFrZWRfY291bnQ7 DQo+PiArc3RhdGljIHVuc2lnbmVkIGludCBmcmVlX3Blcl9pdGVyYXRpb24gPSANCj4+IENP TkZJR19YRU5fR1JBTlRTX1JFQ0xBSU1fUEVSX0lURVJBVElPTjsNCj4+ICsNCj4+IMKgIHN0 YXRpYyB2b2lkIGdudHRhYl9oYW5kbGVfZGVmZXJyZWQoc3RydWN0IHRpbWVyX2xpc3QgKnVu dXNlZCkNCj4+IMKgIHsNCj4+IC3CoMKgwqAgdW5zaWduZWQgaW50IG5yID0gMTA7DQo+PiAr wqDCoMKgIHVuc2lnbmVkIGludCBuciA9IFJFQURfT05DRShmcmVlX3Blcl9pdGVyYXRpb24p Ow0KDQpUd28gYWRkaXRpb25hbCByZW1hcmtzOg0KDQpJIHdvdWxkbid0IGJlIG9wcG9zZWQg dG8gcmFpc2UgdGhlIGRlZmF1bHQgbnVtYmVyIG9mIHJlY2xhaW1zIHRvIGEgaGlnaGVyDQpu dW1iZXIsIGUuZy4gMTAwLg0KDQpBbm90aGVyIG9wdGlvbiB3b3VsZCBiZSB0byBtb3ZlIHRo ZSByZWNsYWltIGhhbmRsaW5nIGludG8gYSB3b3JrcXVldWUgYW5kDQp0cnkgdG8gcmVjbGFp bSBhcyBtYW55IGdyYW50cyBhcyBwb3NzaWJsZSBpbiBvbmUgZ28gd2l0aCBhIGNvbmRfcmVz Y2hlZCgpDQpjYWxsIGV2ZXJ5IGUuZy4gMTAwIHJlY2xhaW1zLiBUaGlzIHdvdWxkIHJlbW92 ZSB0aGUgbmVlZCBmb3IgaGF2aW5nIGENCnJlY2xhaW0gdXBwZXIgYm91bmQuDQoNCg0KSnVl cmdlbg0K --------------Y5iyrpaHlYcX9CvvZXosIuM4 Content-Type: application/pgp-keys; name="OpenPGP_0xB0DE9DD628BF132F.asc" Content-Disposition: attachment; filename="OpenPGP_0xB0DE9DD628BF132F.asc" Content-Description: OpenPGP public key Content-Transfer-Encoding: quoted-printable -----BEGIN PGP PUBLIC KEY BLOCK----- xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjri oyspZKOBycWxw3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2 kaV2KL9650I1SJvedYm8Of8Zd621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i 1TXkH09XSSI8mEQ/ouNcMvIJNwQpd369y9bfIhWUiVXEK7MlRgUG6MvIj6Y3Am/B BLUVbDa4+gmzDC9ezlZkTZG2t14zWPvxXP3FAp2pkW0xqG7/377qptDmrk42GlSK N4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEBAAHNHEp1ZXJnZW4gR3Jvc3Mg PGpnQHBmdXBmLm5ldD7CwHkEEwECACMFAlOMcBYCGwMHCwkIBwMCAQYVCAIJCgsE FgIDAQIeAQIXgAAKCRCw3p3WKL8TL0KdB/93FcIZ3GCNwFU0u3EjNbNjmXBKDY4F UGNQH2lvWAUy+dnyThpwdtF/jQ6j9RwE8VP0+NXcYpGJDWlNb9/JmYqLiX2Q3Tye vpB0CA3dbBQp0OW0fgCetToGIQrg0MbD1C/sEOv8Mr4NAfbauXjZlvTj30H2jO0u +6WGM6nHwbh2l5O8ZiHkH32iaSTfN7Eu5RnNVUJbvoPHZ8SlM4KWm8rG+lIkGurq qu5gu8q8ZMKdsdGC4bBxdQKDKHEFExLJK/nRPFmAuGlId1E3fe10v5QL+qHI3EIP tyfE7i9Hz6rVwi7lWKgh7pe0ZvatAudZ+JNIlBKptb64FaiIOAWDCx1SzR9KdWVy Z2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+wsB5BBMBAgAjBQJTjHCvAhsDBwsJ CAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey/HmQf/RtI7kv5A2PS4 RF7HoZhPVPogNVbC4YA6lW7DrWf0teC0RR3MzXfy6pJ+7KLgkqMlrAbN/8Dvjoz7 8X+5vhH/rDLa9BuZQlhFmvcGtCF8eR0T1v0nC/nuAFVGy+67q2DH8As3KPu0344T BDpAvr2uYM4tSqxK4DURx5INz4ZZ0WNFHcqsfvlGJALDeE0LhITTd9jLzdDad1pQ SToCnLl6SBJZjDOX9QQcyUigZFtCXFst4dlsvddrxyqT1f17+2cFSdu7+ynLmXBK 7abQ3rwJY8SbRO2iRulogc5vr/RLMMlscDAiDkaFQWLoqHHOdfO9rURssHNN8WkM nQfvUewRz80hSnVlcmdlbiBHcm9zcyA8amdyb3NzQG5vdmVsbC5jb20+wsB5BBMB AgAjBQJTjHDXAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/ Ey8PUQf/ehmgCI9jB9hlgexLvgOtf7PJnFOXgMLdBQgBlVPO3/D9R8LtF9DBAFPN hlrsfIG/SqICoRCqUcJ96Pn3P7UUinFG/I0ECGF4EvTE1jnDkfJZr6jrbjgyoZHi w/4BNwSTL9rWASyLgqlA8u1mf+c2yUwcGhgkRAd1gOwungxcwzwqgljf0N51N5Jf VRHRtyfwq/ge+YEkDGcTU6Y0sPOuj4Dyfm8fJzdfHNQsWq3PnczLVELStJNdapwP OoE+lotufe3AM2vAEYJ9rTz3Cki4JFUsgLkHFqGZarrPGi1eyQcXeluldO3m91NK /1xMI3/+8jbO0tsn1tqSEUGIJi7ox80eSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1 c2UuZGU+wsB5BBMBAgAjBQJTjHDrAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgEC F4AACgkQsN6d1ii/Ey+LhQf9GL45eU5vOowA2u5N3g3OZUEBmDHVVbqMtzwlmNC4 k9Kx39r5s2vcFl4tXqW7g9/ViXYuiDXb0RfUpZiIUW89siKrkzmQ5dM7wRqzgJpJ wK8Bn2MIxAKArekWpiCKvBOB/Cc+3EXE78XdlxLyOi/NrmSGRIov0karw2RzMNOu 5D+jLRZQd1Sv27AR+IP3I8U4aqnhLpwhK7MEy9oCILlgZ1QZe49kpcumcZKORmzB TNh30FVKK1EvmV2xAKDoaEOgQB4iFQLhJCdP1I5aSgM5IVFdn7v5YgEYuJYx37Io N1EblHI//x/e2AaIHpzK5h88NEawQsaNRpNSrcfbFmAg987ATQRTjHAWAQgAyzH6 AOODMBjgfWE9VeCgsrwH3exNAU32gLq2xvjpWnHIs98ndPUDpnoxWQugJ6MpMncr 0xSwFmHEgnSEjK/PAjppgmyc57BwKII3sV4on+gDVFJR6Y8ZRwgnBC5mVM6JjQ5x Dk8WRXljExRfUX9pNhdE5eBOZJrDRoLUmmjDtKzWaDhIg/+1Hzz93X4fCQkNVbVF LELU9bMaLPBG/x5q4iYZ2k2ex6d47YE1ZFdMm6YBYMOljGkZKwYde5ldM9mo45mm we0icXKLkpEdIXKTZeKDO+Hdv1aqFuAcccTg9RXDQjmwhC3yEmrmcfl0+rPghO0I v3OOImwTEe4co3c1mwARAQABwsBfBBgBAgAJBQJTjHAWAhsMAAoJELDendYovxMv Q/gH/1ha96vm4P/L+bQpJwrZ/dneZcmEwTbe8YFsw2V/Buv6Z4Mysln3nQK5ZadD 534CF7TDVft7fC4tU4PONxF5D+/tvgkPfDAfF77zy2AH1vJzQ1fOU8lYFpZXTXIH b+559UqvIB8AdgR3SAJGHHt4RKA0F7f5ipYBBrC6cyXJyyoprT10EMvU8VGiwXvT yJz3fjoYsdFzpWPlJEBRMedCot60g5dmbdrZ5DWClAr0yau47zpWj3enf1tLWaqc suylWsviuGjKGw7KHQd3bxALOknAp4dN3QwBYCKuZ7AddY9yjynVaD5X7nF9nO5B jR/i1DG86lem3iBDXzXsZDn8R38=3D =3D2wuH -----END PGP PUBLIC KEY BLOCK----- --------------Y5iyrpaHlYcX9CvvZXosIuM4-- --------------4Tg7aXmcSJSFW0Yk9Agg7cDd-- --------------oI0vJUGw0t02o0Rq0ETOzPnU Content-Type: application/pgp-signature; name="OpenPGP_signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="OpenPGP_signature" -----BEGIN PGP SIGNATURE----- wsB5BAABCAAjFiEEhRJncuj2BJSl0Jf3sN6d1ii/Ey8FAmSGvwIFAwAAAAAACgkQsN6d1ii/Ey/X dQf/WQhtMefuM++X+5JuqY+39mJgw86WUiRxRMMXMdkbFZ4ogiy7qcbEeoaljf3bEULRHbWq6I7F TvOQThRbG/qhq6yHq1hv4pLg21b+VKDHU11VTLVSWSXdH5NdpTyjbYKPj5p6D2n0mUQWUrUtuYOy I+TZ00vUqP4M2qLsELkTPUtP6CBL3AKvxc9xFWAQCHsEi1YWvKMLqPsy15muOu6elldCa4HACyLm 3n4Z3mHf11O48I8eTFUrXLfU4U6BBaLgeTlr5goEyj/sysxYZtQvskEe5nXa0WHYBbF5zpHlmnK+ ukhzJiYvAURNqIgjdjtNZjkw4lqv4D8PTHS+0RoYWA== =A2dU -----END PGP SIGNATURE----- --------------oI0vJUGw0t02o0Rq0ETOzPnU-- From xen-devel-bounces@lists.xenproject.org Mon Jun 12 06:47:47 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 06:47:47 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546849.853911 (Exim 4.92) (envelope-from ) id 1q8bL8-00027o-Ai; Mon, 12 Jun 2023 06:47:46 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546849.853911; Mon, 12 Jun 2023 06:47:46 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8bL8-00027h-7l; Mon, 12 Jun 2023 06:47:46 +0000 Received: by outflank-mailman (input) for mailman id 546849; Mon, 12 Jun 2023 06:47:44 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8bL6-00027Z-9m for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 06:47:44 +0000 Received: from verein.lst.de (verein.lst.de [213.95.11.211]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 074a221d-08ed-11ee-8611-37d641c3527e; Mon, 12 Jun 2023 08:47:42 +0200 (CEST) Received: by verein.lst.de (Postfix, from userid 2407) id C601568AFE; Mon, 12 Jun 2023 08:47:38 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 074a221d-08ed-11ee-8611-37d641c3527e Date: Mon, 12 Jun 2023 08:47:38 +0200 From: Christoph Hellwig To: Juergen Gross Cc: Christoph Hellwig , Marek =?iso-8859-1?Q?Marczykowski-G=F3recki?= , Stefano Stabellini , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , x86@kernel.org, "H. Peter Anvin" , Ben Skeggs , Karol Herbst , Lyude Paul , xen-devel@lists.xenproject.org, iommu@lists.linux.dev, linux-kernel@vger.kernel.org, nouveau@lists.freedesktop.org Subject: Re: [PATCH 2/4] x86: always initialize xen-swiotlb when xen-pcifront is enabling Message-ID: <20230612064738.GA19518@lst.de> References: <20230518134253.909623-1-hch@lst.de> <20230518134253.909623-3-hch@lst.de> <20230519040405.GA10818@lst.de> <20230607131257.GB19206@lst.de> <79b26dac-b507-1c05-b499-784ca6ee3db0@suse.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <79b26dac-b507-1c05-b499-784ca6ee3db0@suse.com> User-Agent: Mutt/1.5.17 (2007-11-01) On Fri, Jun 09, 2023 at 05:38:28PM +0200, Juergen Gross wrote: >>> guest started with e820_host=1 even if no PCI passthrough was planned. >>> But this should be rather rare (at least I hope so). >> >> So is this an ACK for the patch and can we go ahead with it? > > As long as above mentioned check of the E820 map is done, yes. > > If you want I can send a diff to be folded into your patch on Monday. Yes, that would be great! From xen-devel-bounces@lists.xenproject.org Mon Jun 12 07:02:58 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 07:02:58 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546855.853920 (Exim 4.92) (envelope-from ) id 1q8bZZ-0004mJ-IS; Mon, 12 Jun 2023 07:02:41 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546855.853920; Mon, 12 Jun 2023 07:02:41 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8bZZ-0004mC-Fs; Mon, 12 Jun 2023 07:02:41 +0000 Received: by outflank-mailman (input) for mailman id 546855; Mon, 12 Jun 2023 07:02:40 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8bZY-0004m6-9E for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 07:02:40 +0000 Received: from smtp-out1.suse.de (smtp-out1.suse.de [195.135.220.28]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 1cba4791-08ef-11ee-b232-6b7b168915f2; Mon, 12 Jun 2023 09:02:37 +0200 (CEST) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by smtp-out1.suse.de (Postfix) with ESMTPS id 6A630227F8; Mon, 12 Jun 2023 07:02:36 +0000 (UTC) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id 3F7571357F; Mon, 12 Jun 2023 07:02:36 +0000 (UTC) Received: from dovecot-director2.suse.de ([192.168.254.65]) by imap2.suse-dmz.suse.de with ESMTPSA id anjXDQzDhmT6VwAAMHmgww (envelope-from ); Mon, 12 Jun 2023 07:02:36 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 1cba4791-08ef-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1; t=1686553356; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=NC7un6X72tTBu9wNNi0mbZ/fpp283kPMIrsVcPzsIVM=; b=Rqwmc+Wxc5df32JUkfZT4ZWlmQUww75uY/P5lZIPCjT+1FUWzyRsAR97fs4aH/atKi/bKw W5EkbKmmWd+n6hYTZN6cwT3FmwAPvAw9ymJdpGkLrfuNmRYYdD7ZOSZNAgU7sAvxJ3zc7T 9u9sdvZ58P7Cj4YAF7n1hPH0HQk3FAY= Message-ID: Date: Mon, 12 Jun 2023 09:02:35 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH v3 10/16] tools/libs/store: use xen_list.h instead of xenstore/list.h Content-Language: en-US To: Julien Grall , xen-devel@lists.xenproject.org Cc: Wei Liu , Anthony PERARD References: <20230530085418.5417-1-jgross@suse.com> <20230530085418.5417-11-jgross@suse.com> <5eee062b-8028-bc5e-2a5c-2422430894e6@xen.org> From: Juergen Gross In-Reply-To: <5eee062b-8028-bc5e-2a5c-2422430894e6@xen.org> Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="------------gvOqnGIvhOxru1BHHSWVkMns" This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --------------gvOqnGIvhOxru1BHHSWVkMns Content-Type: multipart/mixed; boundary="------------M27SiL0OQ6uIjDyldWSaR1FT"; protected-headers="v1" From: Juergen Gross To: Julien Grall , xen-devel@lists.xenproject.org Cc: Wei Liu , Anthony PERARD Message-ID: Subject: Re: [PATCH v3 10/16] tools/libs/store: use xen_list.h instead of xenstore/list.h References: <20230530085418.5417-1-jgross@suse.com> <20230530085418.5417-11-jgross@suse.com> <5eee062b-8028-bc5e-2a5c-2422430894e6@xen.org> In-Reply-To: <5eee062b-8028-bc5e-2a5c-2422430894e6@xen.org> --------------M27SiL0OQ6uIjDyldWSaR1FT Content-Type: multipart/mixed; boundary="------------UfHf3PlA0D4GFpKQt0W9NKB2" --------------UfHf3PlA0D4GFpKQt0W9NKB2 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: base64 T24gMDkuMDYuMjMgMjA6MDksIEp1bGllbiBHcmFsbCB3cm90ZToNCj4gSGkgSnVlcmdlbiwN Cj4gDQo+IE9uIDMwLzA1LzIwMjMgMDk6NTQsIEp1ZXJnZW4gR3Jvc3Mgd3JvdGU6DQo+PiBS ZXBsYWNlIHRoZSB1c2FnZSBvZiB0aGUgeGVuc3RvcmUgcHJpdmF0ZSBsaXN0LmggaGVhZGVy IHdpdGggdGhlDQo+PiBjb21tb24geGVuX2xpc3QuaCBvbmUuDQo+Pg0KPj4gU2lnbmVkLW9m Zi1ieTogSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1c2UuY29tPg0KPj4gLS0tDQo+PiBWMzoN Cj4+IC0gbmV3IHBhdGNoDQo+PiAtLS0NCj4+IMKgIHRvb2xzL2xpYnMvc3RvcmUveHMuYyB8 IDU2ICsrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCj4+IMKg IDEgZmlsZSBjaGFuZ2VkLCAyOCBpbnNlcnRpb25zKCspLCAyOCBkZWxldGlvbnMoLSkNCj4+ DQo+PiBkaWZmIC0tZ2l0IGEvdG9vbHMvbGlicy9zdG9yZS94cy5jIGIvdG9vbHMvbGlicy9z dG9yZS94cy5jDQo+PiBpbmRleCA3YTlhOGIxNjU2Li4zODEzYjY5YWUyIDEwMDY0NA0KPj4g LS0tIGEvdG9vbHMvbGlicy9zdG9yZS94cy5jDQo+PiArKysgYi90b29scy9saWJzL3N0b3Jl L3hzLmMNCj4+IEBAIC0zNSwxMyArMzUsMTMgQEANCj4+IMKgICNpbmNsdWRlIDxlcnJuby5o Pg0KPj4gwqAgI2luY2x1ZGUgInhlbnN0b3JlLmgiDQo+PiDCoCAjaW5jbHVkZSAieHNfbGli LmgiDQo+PiAtI2luY2x1ZGUgImxpc3QuaCINCj4+IMKgICNpbmNsdWRlICJ1dGlscy5oIg0K Pj4gwqAgI2luY2x1ZGUgPHhlbnRvb2xjb3JlX2ludGVybmFsLmg+DQo+PiArI2luY2x1ZGUg PHhlbl9saXN0Lmg+DQo+PiDCoCBzdHJ1Y3QgeHNfc3RvcmVkX21zZyB7DQo+PiAtwqDCoMKg IHN0cnVjdCBsaXN0X2hlYWQgbGlzdDsNCj4+ICvCoMKgwqAgWEVOX1RBSUxRX0VOVFJZKHN0 cnVjdCB4c19zdG9yZWRfbXNnKSBsaXN0Ow0KPiANCj4gSSBoYXZlIGV4cGVjdGVkIHVzIHRv IHVzZSB0byBYRU5fTElTVF8qLiBDYW4geW91IGV4cGxhaW4gd2h5IHlvdSBkaWRuJ3QgdXNl IHRoZW0/DQoNClhFTl9MSVNUXyogZG9lc24ndCBwcm92aWRlIGEgbGlzdF9hZGRfdGFpbCgp IHJlcGxhY2VtZW50Lg0KDQoNCkp1ZXJnZW4NCg== --------------UfHf3PlA0D4GFpKQt0W9NKB2 Content-Type: application/pgp-keys; name="OpenPGP_0xB0DE9DD628BF132F.asc" Content-Disposition: attachment; filename="OpenPGP_0xB0DE9DD628BF132F.asc" Content-Description: OpenPGP public key Content-Transfer-Encoding: quoted-printable -----BEGIN PGP PUBLIC KEY BLOCK----- xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjri oyspZKOBycWxw3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2 kaV2KL9650I1SJvedYm8Of8Zd621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i 1TXkH09XSSI8mEQ/ouNcMvIJNwQpd369y9bfIhWUiVXEK7MlRgUG6MvIj6Y3Am/B BLUVbDa4+gmzDC9ezlZkTZG2t14zWPvxXP3FAp2pkW0xqG7/377qptDmrk42GlSK N4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEBAAHNHEp1ZXJnZW4gR3Jvc3Mg PGpnQHBmdXBmLm5ldD7CwHkEEwECACMFAlOMcBYCGwMHCwkIBwMCAQYVCAIJCgsE FgIDAQIeAQIXgAAKCRCw3p3WKL8TL0KdB/93FcIZ3GCNwFU0u3EjNbNjmXBKDY4F UGNQH2lvWAUy+dnyThpwdtF/jQ6j9RwE8VP0+NXcYpGJDWlNb9/JmYqLiX2Q3Tye vpB0CA3dbBQp0OW0fgCetToGIQrg0MbD1C/sEOv8Mr4NAfbauXjZlvTj30H2jO0u +6WGM6nHwbh2l5O8ZiHkH32iaSTfN7Eu5RnNVUJbvoPHZ8SlM4KWm8rG+lIkGurq qu5gu8q8ZMKdsdGC4bBxdQKDKHEFExLJK/nRPFmAuGlId1E3fe10v5QL+qHI3EIP tyfE7i9Hz6rVwi7lWKgh7pe0ZvatAudZ+JNIlBKptb64FaiIOAWDCx1SzR9KdWVy Z2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+wsB5BBMBAgAjBQJTjHCvAhsDBwsJ CAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey/HmQf/RtI7kv5A2PS4 RF7HoZhPVPogNVbC4YA6lW7DrWf0teC0RR3MzXfy6pJ+7KLgkqMlrAbN/8Dvjoz7 8X+5vhH/rDLa9BuZQlhFmvcGtCF8eR0T1v0nC/nuAFVGy+67q2DH8As3KPu0344T BDpAvr2uYM4tSqxK4DURx5INz4ZZ0WNFHcqsfvlGJALDeE0LhITTd9jLzdDad1pQ SToCnLl6SBJZjDOX9QQcyUigZFtCXFst4dlsvddrxyqT1f17+2cFSdu7+ynLmXBK 7abQ3rwJY8SbRO2iRulogc5vr/RLMMlscDAiDkaFQWLoqHHOdfO9rURssHNN8WkM nQfvUewRz80hSnVlcmdlbiBHcm9zcyA8amdyb3NzQG5vdmVsbC5jb20+wsB5BBMB AgAjBQJTjHDXAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/ Ey8PUQf/ehmgCI9jB9hlgexLvgOtf7PJnFOXgMLdBQgBlVPO3/D9R8LtF9DBAFPN hlrsfIG/SqICoRCqUcJ96Pn3P7UUinFG/I0ECGF4EvTE1jnDkfJZr6jrbjgyoZHi w/4BNwSTL9rWASyLgqlA8u1mf+c2yUwcGhgkRAd1gOwungxcwzwqgljf0N51N5Jf VRHRtyfwq/ge+YEkDGcTU6Y0sPOuj4Dyfm8fJzdfHNQsWq3PnczLVELStJNdapwP OoE+lotufe3AM2vAEYJ9rTz3Cki4JFUsgLkHFqGZarrPGi1eyQcXeluldO3m91NK /1xMI3/+8jbO0tsn1tqSEUGIJi7ox80eSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1 c2UuZGU+wsB5BBMBAgAjBQJTjHDrAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgEC F4AACgkQsN6d1ii/Ey+LhQf9GL45eU5vOowA2u5N3g3OZUEBmDHVVbqMtzwlmNC4 k9Kx39r5s2vcFl4tXqW7g9/ViXYuiDXb0RfUpZiIUW89siKrkzmQ5dM7wRqzgJpJ wK8Bn2MIxAKArekWpiCKvBOB/Cc+3EXE78XdlxLyOi/NrmSGRIov0karw2RzMNOu 5D+jLRZQd1Sv27AR+IP3I8U4aqnhLpwhK7MEy9oCILlgZ1QZe49kpcumcZKORmzB TNh30FVKK1EvmV2xAKDoaEOgQB4iFQLhJCdP1I5aSgM5IVFdn7v5YgEYuJYx37Io N1EblHI//x/e2AaIHpzK5h88NEawQsaNRpNSrcfbFmAg987ATQRTjHAWAQgAyzH6 AOODMBjgfWE9VeCgsrwH3exNAU32gLq2xvjpWnHIs98ndPUDpnoxWQugJ6MpMncr 0xSwFmHEgnSEjK/PAjppgmyc57BwKII3sV4on+gDVFJR6Y8ZRwgnBC5mVM6JjQ5x Dk8WRXljExRfUX9pNhdE5eBOZJrDRoLUmmjDtKzWaDhIg/+1Hzz93X4fCQkNVbVF LELU9bMaLPBG/x5q4iYZ2k2ex6d47YE1ZFdMm6YBYMOljGkZKwYde5ldM9mo45mm we0icXKLkpEdIXKTZeKDO+Hdv1aqFuAcccTg9RXDQjmwhC3yEmrmcfl0+rPghO0I v3OOImwTEe4co3c1mwARAQABwsBfBBgBAgAJBQJTjHAWAhsMAAoJELDendYovxMv Q/gH/1ha96vm4P/L+bQpJwrZ/dneZcmEwTbe8YFsw2V/Buv6Z4Mysln3nQK5ZadD 534CF7TDVft7fC4tU4PONxF5D+/tvgkPfDAfF77zy2AH1vJzQ1fOU8lYFpZXTXIH b+559UqvIB8AdgR3SAJGHHt4RKA0F7f5ipYBBrC6cyXJyyoprT10EMvU8VGiwXvT yJz3fjoYsdFzpWPlJEBRMedCot60g5dmbdrZ5DWClAr0yau47zpWj3enf1tLWaqc suylWsviuGjKGw7KHQd3bxALOknAp4dN3QwBYCKuZ7AddY9yjynVaD5X7nF9nO5B jR/i1DG86lem3iBDXzXsZDn8R38=3D =3D2wuH -----END PGP PUBLIC KEY BLOCK----- --------------UfHf3PlA0D4GFpKQt0W9NKB2-- --------------M27SiL0OQ6uIjDyldWSaR1FT-- --------------gvOqnGIvhOxru1BHHSWVkMns Content-Type: application/pgp-signature; name="OpenPGP_signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="OpenPGP_signature" -----BEGIN PGP SIGNATURE----- wsB5BAABCAAjFiEEhRJncuj2BJSl0Jf3sN6d1ii/Ey8FAmSGwwsFAwAAAAAACgkQsN6d1ii/Ey9f 6wf/cH/qfFw9NIdQTW3BhnWOvVn0taxhRuvCD+g0K/IQum4h2gDbpGyWdk6QQ5qtTKJLY1YnM9uS yo2itNywNFbdDlRdWRsq6mEmcUSRzEVH78GJPAOErsCqLgpLPDDZfA94isUhPRsE1qB/m2Le5PNm oGl+sN0Ppwi6/pyV29fcimhtw11BuLIkVNdY8ckVxV/LlD21mNhAvJz7df46rsT/afmxJ/PjXOSV wW/C6yN8xWUW+Swb05avR929Ryc2aBnOJMg8/Yl8Jqdj4OycVLdxlRSJuArCcyaGfCx/eFtwouPn xCDBK1NWA1yfAnaBeBtPxd2eFMZgTUXubYJbsRYy3w== =5Lzm -----END PGP SIGNATURE----- --------------gvOqnGIvhOxru1BHHSWVkMns-- From xen-devel-bounces@lists.xenproject.org Mon Jun 12 07:05:09 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 07:05:09 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546860.853930 (Exim 4.92) (envelope-from ) id 1q8bbv-0005Mg-Vh; Mon, 12 Jun 2023 07:05:07 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546860.853930; Mon, 12 Jun 2023 07:05:07 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8bbv-0005MZ-T9; Mon, 12 Jun 2023 07:05:07 +0000 Received: by outflank-mailman (input) for mailman id 546860; Mon, 12 Jun 2023 07:05:06 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8bbu-0005MR-EN for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 07:05:06 +0000 Received: from EUR04-HE1-obe.outbound.protection.outlook.com (mail-he1eur04on2047.outbound.protection.outlook.com [40.107.7.47]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 7479e296-08ef-11ee-8611-37d641c3527e; Mon, 12 Jun 2023 09:05:04 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by PA4PR04MB9437.eurprd04.prod.outlook.com (2603:10a6:102:2a9::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.29; Mon, 12 Jun 2023 07:04:34 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.039; Mon, 12 Jun 2023 07:04:33 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 7479e296-08ef-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=jY1aoixTYqnP50UkExUVG9GImH/WNSmQelcrTEO5gefmBu9MvkYQ3oLIsQzKwREt1d8GTNMOpnaHl9aFkl0KLSwvibT4wGvGwt7kZkO5UlfIcFcQBeOoPMdHx0gltOE5zkH53O511EBddN4gNvJN/UQJ5ic5bUXJjph5dgffJceKOrL9judApyF1FcvCxDZXjd1wW4LcUfwfVho/FsVpdQZEJSKXWaSTug+UIOrki8z94Ob5QRPHZnDXJbas+z40WrVqPyN2u0UBqBGNoQiJYKLc9Yd9cWCLWNB5/o3VggETyzoHokg0SDFsbvHK+bW1P8gOghilUDy3e5Jxot55og== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=taU23e3HG2GZ/V07XpCyk8o/l7WkBwv/6UKpugjEwvY=; b=lSctC1mUdFBpEuumOQ3LHEfqAEFPp5xD9/nnWH4Dv1eCXUBMKt5omoSb8Z3vFf8AoqJ0C/dmKBggwYpWO0/1jpJs61/9FtYysx5tIcqJ6bHjNH3Jm8HyEuZfUmX06n6vmioTyh/e0/zGF+Hy77B+QDSBueUVx8Kw/9/2w2CnzzJy26MwEmFtupSHSWtp4VydCPLku5CAo0CvqmKMWRgvPgsp6HH+NgNIt9LkvoWsovBbA25lT08zkttyUlxkrKpBqMD4zRRTM5fyvygA7Iidg0gKGS6mulaaz/7/hlIKJ+T5/A4efpD7ihNm7Buvchae9ZidH34P4zTRVhWgHIcD7Q== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=taU23e3HG2GZ/V07XpCyk8o/l7WkBwv/6UKpugjEwvY=; b=CwOYUlKr6nQnZwdwpHNp0dhcZsskJHHKRIJk2KYdM9IFBlapPVZZH74b0K8iEgTKEP8YLA7C0YvmsH2gRL9H2R91Ax4y124uLcQDn6WJDU/IjflVpUhS45nJVaxVBvKbtlygdbOAGkFJN0/xngbZaDNs4FlOopE9VrqG/R/iJITyVi5LBGJU+HnTZgSSZxD1nLPoX/mnwVVaWYS4MauRNdw+pHVS8FEJTNxfbq5LnwJcvIyTKE4Fyqc2xT5x5VySBNPRDyHoiyXvz/SBddydNz30hQnt9zDVLpkkk/cEeBIqgse//Fx/8sslq0TWC+MmdOhZIbHL7BWGjlWr3p/6sw== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: Date: Mon, 12 Jun 2023 09:04:35 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v1 2/8] xen/riscv: add .sbss section to .bss Content-Language: en-US To: Oleksii Kurochko Cc: Andrew Cooper , Bob Eshleman , Alistair Francis , Connor Davis , xen-devel@lists.xenproject.org References: <6a0f3171323f0092b8374f2244182c7e7ca850c0.1686080337.git.oleksii.kurochko@gmail.com> From: Jan Beulich In-Reply-To: <6a0f3171323f0092b8374f2244182c7e7ca850c0.1686080337.git.oleksii.kurochko@gmail.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR0P281CA0062.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:49::23) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|PA4PR04MB9437:EE_ X-MS-Office365-Filtering-Correlation-Id: 2df7ca84-ced2-4b4f-7562-08db6b13467b X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: Wzmp1lpdkA7fxTGcKeASxHkYcZYpW7UvnOWTC58UUk4qnXZe/Um9XiZKzy7K+oyH9cF9ULBRJejLIwc6vM+mKPBaXtBrV9pT9kxJqXj8fHCrbiQQXW4NlEYD7GYRnkhTXoYViwKd5FSC1WZdvjTyhgG886+vKXVL61eLvY5i02bEwVS7aclg+rJF/se1kTm+sLJX9OotP5LG/1Jmd9bw29xhsSTnrzZU3GqJkVu3baZ++MAq9a3rrpVLYCQadePyDe48+IMKg1ZCKXwwraam1GdIa7WRPGgEKA9Im8zawp/liUcvRIg0tlP5JlXGQLzP18h9nf2NsCJlG2CqJeTpHOlZjCUWeNk/D1sFb3hnxak68RNbZGMpBjV0Gi+U05+Rgl6XWoojKqyZrO6WvBdySJo2mK4s4NXMD8f/XcVJjsgFr+C4kj6AIflEgOzxv0TCKY5SGvlplan9NugmVsQ9TQTsmFwVMSA2q1RDgzVhEWFoizRyccAzad0ain0uxDUbqhA0EEJ33wYyXFm4Sj4xRofQf6tNSyhAyMPCp06/I8Q8gDBGFLdHatLYNXjDInUwc3gPzszt5Bfyd5jYaaMj+XHaaN3oGsi0nI83bGt5iEb1Iau8IMtwBuNGYfPcmMfAL6i/IYgettQ3wVfygg2ovJJq8fq00p9XkA0AdUxo1woaCne7YiLZ45bfTTugmcHb X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(39860400002)(346002)(376002)(136003)(396003)(366004)(451199021)(66946007)(66476007)(66556008)(54906003)(478600001)(8676002)(5660300002)(8936002)(36756003)(6916009)(31686004)(4326008)(41300700001)(6486002)(316002)(38100700002)(26005)(186003)(6512007)(6506007)(53546011)(2906002)(4744005)(31696002)(86362001)(2616005)(83380400001)(142923001)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?VGpoT2tMai9DSFhhQklLKytYcFI4ZDVTaXVCL2gxLzRIQk5kanIvbVJkT0ln?= =?utf-8?B?SGZ0Y2ZZUDZZSnBYdFdJN2pNRDVjRnJBRitoZ3h0RUtqZ085Y3NKS0F4TFl4?= =?utf-8?B?b1RQS0RlWCtrU3IycG50MW1hZWxZbjN0YktwbFN1VjNuK0gyK0pJYXhJb2t5?= =?utf-8?B?TG4rY2lNdkdsUWJESXNpdUhwR0pZRzREZW93ckRlZGs0QkRySFdyYk5NeTdU?= =?utf-8?B?ajBuaWpFMGhCb2dmQ0hSNWpYbTlzR2F3dHpVb0kydEt0YS9wL05wZ01GL1JF?= =?utf-8?B?TG1FL2JzcTZCVENvNlNMaG9ENHlFRjhXVnB2czF5bjlWR0dESUg4WWc4QjFi?= =?utf-8?B?L3RmR1hJNU93OUVYdjZ2UnRlNmQ5MDBqLzdGb3J6dUFIR3BSWVB1dmJqbEQ0?= =?utf-8?B?ZXRITkhpeDVPSzVOMFhLYW1qNlU3REh6c01ObmowS0tySzlVRXFGOEJwVFJs?= =?utf-8?B?d2pReFIxWll1cnNNd1hQODFhQ29idGdmUTVKZnpORHV0aVhOdG1qNUxZUzJD?= =?utf-8?B?cGl2YldQVU5FaXo3Uld0dHR6UVQ0RHlpU2YvVFEzaUk2V1AwSHZQZ21IdVV3?= =?utf-8?B?MkRtdExOVkdtZCtjNG1hR3pBcWkxMkRnTWhDYTdXUzhiRTkvUXA3RzExT251?= =?utf-8?B?Y1p1bC9Sdng4WkVVQWQxeVhHeEpQb2VyN1dMZkdSeXBHcFMzQUd5TVprN1du?= =?utf-8?B?eVdoVVpLWVBTTVRHbXZYbEJZM1dPV1JYdFJBbGJ5OFJXMmdOQXZWMnFNc1N6?= =?utf-8?B?SkRoM0ViOWFYdWdTT1RweG1WTG9XWUZObWhYNWhRWDBTY0dSWFNsbjJHdzY5?= =?utf-8?B?UHd6YTl6V3h1THBENFJmek5EenMwK216citWREMxaXl4U0ZSQzl1citGY2g2?= =?utf-8?B?TGlhSU9MaXBOZzMxQi9kV2RaN0pEaDdWa3RFTUdGWUQrZGVVcVFpQmtrY1FL?= =?utf-8?B?L0tzbnFmTXQzWW92YlRnUWpCdlNnNTJ2ZjVOR3l6TFQwbUlaUUJPclEzenhT?= =?utf-8?B?a1BsakZkS1hYSmlqdUNsVjZsSjMyTEFjRm9DVFY0MnBDV0VVWUNxWWt3TnNx?= =?utf-8?B?S213cERnWGhYZ3pDaXlWaHlDOWxWODV2UzgwRVlFUWRMVVpseTR6Z0krU0VE?= =?utf-8?B?ZlpTUXRDc1dCVDB1WGpGVlhJTUdKQ0VldDMwcThweW9SS0RyZzJpYlU1VEcy?= =?utf-8?B?QW1OMUtWb0hubjNEaktFajB4Q3h5M0tkZzBneDMzL3FNaHRiTnVUVWR5MFhr?= =?utf-8?B?YlR6TW05MEIxMUdyS0E5Q25aMmZHSHhaVkZtdkVIRlNBSzlPekN1L1hBaTIw?= =?utf-8?B?K1EybVMwVE5MYVp6S3VROERoVDZWN3FRZTl1c1pPN0RPY25yYVZVaEYra2Q3?= =?utf-8?B?SGVEMHVLTWwrZUI4VTdzaXR3dURvb2dGVHU3NnNWamhuL0VZaldRSktEakt5?= =?utf-8?B?Q0J4aGRSbTVJQmoxOFZwQVY1MXRxUmpYM2xjS3VvNndhS3ZhNElCcXRHSS9y?= =?utf-8?B?Nm81UFRpNS9Tc3VwaS9Qd1creTBuV3gvUlZYM2ZrcUFIWnRMOGRMMm1nSW1N?= =?utf-8?B?b0VtVGpoTEZSNlZhaTJrZWYxRUwvUHRVVE8yR0NkY0IwR2dOUHVacFNYQUtk?= =?utf-8?B?OU81aWk2RVFHYlpTZnJMTWY1QTYraHVYZFptbTdMb3l1bytmOXZJMU5kV0Vq?= =?utf-8?B?QkVhOVdqQ1VTbDZvdUduR0tIaVVJcy80b3p2anpmMkhibWk3NGp3UWxvSjZ2?= =?utf-8?B?Z1VkSWN5NFVsZTBaZ1UveWNaSzg5SUhBWlh1Z3RsUU5ITENIRXdubWFhZ3Bp?= =?utf-8?B?SVZjcHY4WUx1UzNVR2NENGEzRHQwYTdieVprVzJVVnRYR2wxb3o2TTR6dlk5?= =?utf-8?B?R205QmQvR1BjdkxncXJqWVJjcHRqeWdGTnJhZEtoZndZWU52UG1GbmlSeWN2?= =?utf-8?B?YTJjaDRkdVdSeGFESjBrZzIwM09uNXpPd0hnem16UkRwd0JwVVFpOWo2SG5z?= =?utf-8?B?eW9yR1lRY0tUbEdhai9waS9JVk91bWkzc3NJeUZVOHpyNXVCT0VXTXV3bXVs?= =?utf-8?B?TUxyZGpNSFhyOWhNQzM4MUJqd2UvNHZxZTJOQlpBdEVNZjJtdmllQkh5eUl5?= =?utf-8?Q?KfPKsqMUjG9XtIbAPQgH4TCm4?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 2df7ca84-ced2-4b4f-7562-08db6b13467b X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Jun 2023 07:04:33.5917 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: Iownjv4x5Y0YsIsNas4JhysR116+WUhNghLFHZ4yg/9k6LR380vujsNP1/dDgbGqQ3u6t70/YLzhDYTRkYu8RQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR04MB9437 On 06.06.2023 21:55, Oleksii Kurochko wrote: > Sometimes variables are located in .sbss section but it won't > be mapped after MMU will be enabled. > To avoid MMU failures .sbss should be mapped > > Signed-off-by: Oleksii Kurochko > --- > xen/arch/riscv/xen.lds.S | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/xen/arch/riscv/xen.lds.S b/xen/arch/riscv/xen.lds.S > index 74afbaab9b..9a2799bab5 100644 > --- a/xen/arch/riscv/xen.lds.S > +++ b/xen/arch/riscv/xen.lds.S > @@ -151,7 +151,7 @@ SECTIONS > *(.bss.percpu.read_mostly) > . = ALIGN(SMP_CACHE_BYTES); > __per_cpu_data_end = .; > - *(.bss .bss.*) > + *(.bss .bss.* .sbss) > . = ALIGN(POINTER_ALIGN); > __bss_end = .; > } :text Two remarks, despite Alistair's ack: Wouldn't it be better to add .sbss.* right away as well? And strictly speaking wouldn't it be more logical to have .sbss ahead of .bss? Jan From xen-devel-bounces@lists.xenproject.org Mon Jun 12 07:10:00 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 07:10:00 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546865.853941 (Exim 4.92) (envelope-from ) id 1q8bgV-0005zU-Jf; Mon, 12 Jun 2023 07:09:51 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546865.853941; Mon, 12 Jun 2023 07:09:51 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8bgV-0005zN-FQ; Mon, 12 Jun 2023 07:09:51 +0000 Received: by outflank-mailman (input) for mailman id 546865; Mon, 12 Jun 2023 07:09:50 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8bgU-0005zH-2l for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 07:09:50 +0000 Received: from EUR02-DB5-obe.outbound.protection.outlook.com (mail-db5eur02on20616.outbound.protection.outlook.com [2a01:111:f400:fe12::616]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 1e0a9182-08f0-11ee-b232-6b7b168915f2; Mon, 12 Jun 2023 09:09:48 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by DB9PR04MB9476.eurprd04.prod.outlook.com (2603:10a6:10:366::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.29; Mon, 12 Jun 2023 07:09:46 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.039; Mon, 12 Jun 2023 07:09:46 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 1e0a9182-08f0-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=TI9F10TwQJEEf7EdaV7uWuTlZo4UK3ea2pcd7SmXVJEwS4joJKccHrtM+DvhJYor+ClygNn9hcR8dQcpsvXChueMAKR9zDGfrGpiUs6/jSDAX9NhK1nqaX10WKUvH4QFOBSk7WNupr7ZtebpNWaIAxL7hArbJEKetIL7/YVWsdwkxL5uyBM0RoH5ojy/+bZiZGdq4HXPM9dx1FwqatotdEb8w59had/isqKQxaXWrHVjG5ulagvf5IPRhCG/JUJOhj3iBYW9EHtVwVf8z2fWrPF27zrxnFSL2RBYipTHa2VLjaE506+sz3qD2p3PWHw/eihBPYcquwkdlbWu8Z2l6A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=6mU7HsEVTpwTt8IixyVQQdXCiCVfEdrlqSNY7K+Xmwo=; b=kpiB3O+UNmtuco9j8tlIPjPton1jVeQ3NFBUUprQWUdmq1GDYNJFVDAdx1CUGGDkPzlHDpLCGrF6Uy8tbKSgC0WWDtIrJtoZKc6OvKV5LJfuIEopGuzXvj6z5ffy2xTB3J0D+pPDCK0p7pdE3znmwRMR1AyPc7Pl7PXjednockWNxsVz3DoX4S7SMuQPmHZcHUigUAJ4lGlszKTcz7myCd2HUM9JTxsTatHhapRoruxBpeU9HYbNAHGb+JcxtRPFbhDup0DzZeLv0kbZyVTbIR4rBVgpQq7+500jMWDFcu7WCVIcF2iGVcZCN5xOamKI36/0QH3vcja1JYgDqr6N4g== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=6mU7HsEVTpwTt8IixyVQQdXCiCVfEdrlqSNY7K+Xmwo=; b=U2bH9DuPPn4k50M/yrZpYSWFGdL7qr5UP61gCzXSz6KHdo0ii7DbEtWHhC8LyEhHFiPEd/TMSVXr8Ps0cjbV/pmFghLJK1TKnBy5wmV/0pAhmb2hzuHinzKSk0sEYjpkmZq6MorRgcXUboLRClGSbBR4O2y3dROd2ZaQt3pOOJ1MxQfObZrEXr+fyh5Vp0d7vIywLlRnye7AQpEqHwmDDFuLym9/qBXKe7Ioj+Y1Gjpp8gZ3UdiKpO+7oExHU8oRq2zk59mhiyR+CIJldLEXW452BHdWYgPX95cCOi+5SEgEc4T5Ft7ORuRDdiGMROgpJhCDuhtfS9FTGWuKoK8NiQ== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: Date: Mon, 12 Jun 2023 09:09:48 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v1 1/8] xen/riscv: make sure that identity mapping isn't bigger then page size Content-Language: en-US To: Oleksii Kurochko Cc: Andrew Cooper , Bob Eshleman , Alistair Francis , Connor Davis , xen-devel@lists.xenproject.org References: <4ad639bed6b8aa6cee34288a7ce154db21d761b5.1686080337.git.oleksii.kurochko@gmail.com> From: Jan Beulich In-Reply-To: <4ad639bed6b8aa6cee34288a7ce154db21d761b5.1686080337.git.oleksii.kurochko@gmail.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR0P281CA0205.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:ad::19) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|DB9PR04MB9476:EE_ X-MS-Office365-Filtering-Correlation-Id: b0b90718-33d4-4267-4981-08db6b14013f X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: YaL4XPpFyT+4S9zH5W4RBlaeR3iihxW6yrysrXeShzV1wdQtzuvH3SBUfKxgV8BCoZ8Gyc1iGIhwVxFzKMlf34lc6JBG5G951BzGqCR+xDO3X1M4Nj/XLhJ4qmo2uRHwjwk109qaXH9jOW1paae0ch06oT86bbtGqdpdwlOA9b68+v1mBjVAlNPr6QpZg8iI5IXmGEfp0KbIYA+kK2IKWp80vi4nba0Cy1WU5dMpMyAcaVuwcG7aZeVeh8LpFjfIDCigaxUkaXOFmeKCcNvA51v1u52K3rKDZHw8SC4ewPX/H1bcMd3xYscP5C3aJrch5Exj8BBe9gSMSsndC07uqtDZhKYtsRNVwTsjseQWMrq7UPHG3uQs8UxVWeIfH52f4eCaTI/SB1DVIp/ZrP1DVIqjGtqwempSyHLb/ZyFvraNlDJiQHDYuGfgmphTwzGADb6sF8wKkkSU8UCzkWQaIHVc9PSNRauIIF2oYKd/IQrr0tGib1yyQNTN29rqj+v2CXkapR1peeOEvz4Ek0fa6C1fCDI/K8giJ+YxJ2iwYwp+rs05fAVf4uU9L3GKXoaxUdTbnuiwD/O55umLHCrP9ntzeLA/A0uP38yn5LaoGLh7ZsU4yKuZhUDjyMKKDFV0bcg4KG3aKMYwb5JxN98ZxCAW+ekk9GP/IBOYXULx1lOgD0JNE8lnWOyWsA/VFdzl X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(136003)(396003)(346002)(39860400002)(366004)(376002)(451199021)(5660300002)(8936002)(8676002)(2906002)(31686004)(66556008)(66946007)(66476007)(4326008)(54906003)(6486002)(26005)(6512007)(6506007)(53546011)(6916009)(41300700001)(316002)(186003)(83380400001)(2616005)(478600001)(36756003)(38100700002)(86362001)(31696002)(135533001)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?MDBQS2p3RFVrYThpM0hSZU9OMU9vQUhwK0p3SkJuZnJ0elpUOFp6T3RPd0Zy?= =?utf-8?B?NWNIQVlucTB0NHY2MTRheXBQV0R0c3lXeXd0dlBWMmRSWXFocVExMHdRT0pp?= =?utf-8?B?eEhDSGk0SW90TUJvd2NkazMxK05kYTZFb3F0dStTbS9FcDZEdGNDSFphYXZk?= =?utf-8?B?RU50Q0N4NkQ2aTNTcHowb0lleU1pdXFHRzdOblJJMkgyTnV2ZnJvZVl1TWZp?= =?utf-8?B?TFVyMW5RU3k1SnluV28yNEFDb0dMMk9Pb2FuWkMxeVZZNUpURW9OYUNoTjFR?= =?utf-8?B?QTBBWGY2T1lwamZPL2JXWk5GckJGQ001a1NsZUErcC9zcEk2cHdtVjA3TThP?= =?utf-8?B?djRzTFlsT2gvRlE3UFd2WUVZY3BXakpUVkdBVkVNODBzL3JsWTJadWlYOFVu?= =?utf-8?B?YkZxR2lWS1dpZ2pwRkovd3JJSE1TSXN1d3UxaU4zTmM4aUVoMTRGNWI1dEpZ?= =?utf-8?B?WXVsTTJkM29yZW1Ja1VkY2dkZGV0c1hhTkYrbDVFcUtnMUNvTGNrdFdHNkEz?= =?utf-8?B?Z04vaTlMTFNNVGVZM0U4VDgrTGZITmVldjJ1a3pzVHlTOGlFemx1WEI1UElw?= =?utf-8?B?TzIrZmtIdzFFU0VxSHBaUHBrZ2FxWkxURjdNM0w2KzZTejRoRGNFNHYxSW9L?= =?utf-8?B?OU43TS9ST1M2VUhydVk4Rm03SW85bjFsd2krR3cyQXozTXZ6dFdlbXAyZDRZ?= =?utf-8?B?LzhucXBrNEZQRng0alEvVE1KN2t1L1A1ZGVONnRPRVc3czdPRlZONzh2NFlZ?= =?utf-8?B?cjVjd09lWU1ISFovUWl6N04zTmhMNE54d3ZYQXAyOEtGRFhVeFJTRjJ4a1FR?= =?utf-8?B?OFAwdTNYbks5czZZVkdFSG8yVml6UlVYVEpEY2xZTG1CekIwVlZMQjhBMUtp?= =?utf-8?B?czVHSUp1UVd2aTFVcDFoMFpxSkw4ZFRRVEJZbDhodXArS0x3ME5yZ04zSU1P?= =?utf-8?B?ZEl0NkIyYW4rSVdKVjJsYm9ONmFaNDF2UnpBcXVaQVBDaE9lYkxkS3luMUk3?= =?utf-8?B?WHBtc0ZRZSswUmsrQ0JnNGR4TkNGQzZ5dmVPdTVSeEp0bEVKRFBjeis3N0F0?= =?utf-8?B?MEFyTVRpWmdyc2ZPUHZtUnpIeHEzRStIbFRER2VJV0NxaWxGSWF0c091bG1u?= =?utf-8?B?dEFwWkpoTUNCVjRQMGJZWWQ0RG53dzcwU2kzZTkwMW5NYWJvSGZzUDdXUGcx?= =?utf-8?B?UCtSdEtNOGxwYUtmak82VmpaSFJIeXZNRGtrV2pBOTFyMWl0SmZYQm5USXhL?= =?utf-8?B?c1BWd0srSXdIRE1NVXpBeU1DZEp0SXNtdTN4UzhCRFdZaXZiTmo2akZ2Mmlk?= =?utf-8?B?bnh0UGhCMWhwcVdhTTV5NTgySnlQZmJwUTBqSjhZRVZEb2hJYU9UWEF5dTRV?= =?utf-8?B?T3l3T2JGQmVRY25zVTdWOXZLdVVVTlNjSFp0azlhNjA3aHRIOUliS3VVd3Yy?= =?utf-8?B?cWJrekVWZzI0MkEzelB2blJHVVRMcW55R0lPMkxubVhTM01YSE5YaU9Gc1BL?= =?utf-8?B?cTFLbVNITEFxSHM2ZW9BTkYyOE5TT0hZV2NlYUp2YWdOaFlINVhTZlFpaURV?= =?utf-8?B?U2liU1ZCeFI2ZzBta0R1U2lsRWxUang4M3dESUVzeU1keCtYQWc2SThuZlpH?= =?utf-8?B?RHI5RzN2K1VCb0NvSXl4RlRZbWlGUVk5ZXAvVE1qanZXaDh6WHNDZVhoQmha?= =?utf-8?B?RllZSUVoTDNzUzRHdTViZnNqSTlkZVp2dUYvWVNtL0xEYXpWaWQ2VG5SVDNq?= =?utf-8?B?QmIrWGk1dzg3aUZsUGNTelI0K1QxRFFiR2xEZlpxSVIyeWFpVGh3T1o0RW1x?= =?utf-8?B?aXJSOURtcG5QL3RJWW5adW1NRmkvbEpaR1o2QkRjdlFKQldoMHlpdjlSWXZu?= =?utf-8?B?cUxWZnpGeWd5THJrOUZ1QWlKa1g4Q3h1TzF2MjlkZzhtY2diWVVsbnJvbnht?= =?utf-8?B?MXJWTVJFMnpHTDJrTDQrTHFRZThDRmg5ajN0cUVKRDV6TFdQbDM5eEFzNGJR?= =?utf-8?B?UVJKWnlobi9nUjBrd2J1dldYcU9aZGpkSDVnZ25ucXFOOWxsa1JGb3crcjhP?= =?utf-8?B?VmVHV21vMExEckdKejhWaERwWmNBb0x3L1RHVFlWNTF5VEZqbmd2T1pQMFM1?= =?utf-8?Q?T5VQMiHLeJIJM9T0ea1rtLGp1?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: b0b90718-33d4-4267-4981-08db6b14013f X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Jun 2023 07:09:46.8554 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: mWzo2QeJmF0poCvhvbNAGvzyjl5vHetN24a50Cu2edBt4hRRa/Ol6K/MUkLAyr0lQOx7+4nm4ZrK5He6rDJJ7A== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR04MB9476 On 06.06.2023 21:55, Oleksii Kurochko wrote: > Signed-off-by: Oleksii Kurochko Such commits without description are worrying. This may be okay for entirely trivial and obvious changes, but that's going to be the exception. > --- a/xen/arch/riscv/xen.lds.S > +++ b/xen/arch/riscv/xen.lds.S > @@ -20,6 +20,7 @@ SECTIONS > . = XEN_VIRT_START; > _start = .; > .text : { > + _idmap_start = .; > _stext = .; /* Text section */ > *(.text.header) > > @@ -35,6 +36,7 @@ SECTIONS > *(.gnu.warning) > . = ALIGN(POINTER_ALIGN); > _etext = .; /* End of text section */ > + _idmap_end = .; > } :text So this covers all of .text. Why is it expected that .text will be (and remain) ... > @@ -174,3 +176,10 @@ ASSERT(!SIZEOF(.got), ".got non-empty") > ASSERT(!SIZEOF(.got.plt), ".got.plt non-empty") > > ASSERT(_end - _start <= MB(2), "Xen too large for early-boot assumptions") > + > +/* > + * We require that Xen is loaded at a page boundary, so this ensures that any > + * code running on the identity map cannot cross a page boundary. > + */ > +ASSERT(IS_ALIGNED(_idmap_start, PAGE_SIZE), "_idmap_start should be page-aligned") > +ASSERT(_idmap_end - _idmap_start <= PAGE_SIZE, "Identity mapped code is larger than a page size") ... less than 4k in size? And why is only .text of interest, but not other sections? I find the other assertion a little puzzling too: Isn't that merely checking that XEN_VIRT_START is page aligned? Jan From xen-devel-bounces@lists.xenproject.org Mon Jun 12 07:12:40 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 07:12:40 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546872.853951 (Exim 4.92) (envelope-from ) id 1q8bjD-0007SH-47; Mon, 12 Jun 2023 07:12:39 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546872.853951; Mon, 12 Jun 2023 07:12:39 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8bjD-0007S8-1M; Mon, 12 Jun 2023 07:12:39 +0000 Received: by outflank-mailman (input) for mailman id 546872; Mon, 12 Jun 2023 07:12:37 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8bjB-0007Rh-PY for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 07:12:37 +0000 Received: from EUR04-VI1-obe.outbound.protection.outlook.com (mail-vi1eur04on0602.outbound.protection.outlook.com [2a01:111:f400:fe0e::602]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 821e63b0-08f0-11ee-b232-6b7b168915f2; Mon, 12 Jun 2023 09:12:37 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by AM0PR04MB6898.eurprd04.prod.outlook.com (2603:10a6:208:185::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.39; Mon, 12 Jun 2023 07:12:33 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.039; Mon, 12 Jun 2023 07:12:33 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 821e63b0-08f0-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=CDIYjxN/dT0VOAxxjWcfU3nkDbrHzYw5UFmUzoxJ2iVkKN3NDLS935ByHi0CHJE+6gCUiS9De6eEfQT4/8RNyvoYJOH49kq7TCFl3xrb+Wp93Uz/Fv5Slu60PU693vKFoqCB7oosoVPvTlJV2ZqRB21Ub7W80yAyOVQNtV7vZGJWhMoSofrmJ7uTfkqpeFun8IyDW8pzQ2L6tzAeT4T17CFfNGrQuBnlYzGVvpgxTM3l/X5gCVz20idRq1u6nQRZmt5gdWbWbuWHrqMnfnGFK8KV5mxRO0aLedKrSmSZh82nulk8nAN2+TdK4yeEGa+T7n0gcYXRdU5G9Pe3qkxjQg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=qZVY9mZhwQBYvAiAN649G3L5M1AD5Dt9to0VX+1Kaxc=; b=eQQ9lq/WofuVr/4PjxGf8RVkxmBtse8W/Gfue0t6y2eDNHlKIT+p4IX/cjqtZBI0MpKq4fLJsiWgPB6S2nRoshtt9nqKZz4cOqbgrc7I1RkalMtmWAKMNQGATCG71kKsWHGztjyDHG7eZD9g1icIjex+Ifq9lkz2Wd+hnIxKkoNFRGRWABZnGZ0GwtHL46+ufOaXEyhf38vKQovMqn0uMZ4h/nJDrGZfpuOSNqFe56TbXResEvpUCIP+kiOuBODp5CzrC2rlqXpt09Q0vc8KQmof+AKS4XHb4AtwHNXQOrEbVSm06FQJQchiqpRpAwDiEb4sUqLqNdJ3Zl6XUx4QAA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=qZVY9mZhwQBYvAiAN649G3L5M1AD5Dt9to0VX+1Kaxc=; b=c+GXN+h1VqOqnItafy8wG8L2X7Kn/mOf3K/2Lncg+giRS0Ocf3qIfxt2LE86cDFKJGgMHybWpouI/opcGXQpCFnDMfSzKov5WZjrHGJpaFo/CWhVQHNo64al+7h7VUCGwRCBq9OTcAfHZYrpObx52O3+Qmtww8dbbd8Uj/JD45THbgR4H5p1w3PTEFVKaXNhnu8OfSDUoVMX58pKW2wUVpFth/Dr/vBbBVtEILNExO7tQEliAuEiePHNXP+RBF159GAwdigYuozpD1HVOxpPd3OW0Noh1NGnknvWvbPMrYbbr29LrHhOlrBP8QfELf7QZ8TZX3cp7bysKegM8vL/wA== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <92fab0b8-647a-b9c1-d15b-1217a4420715@suse.com> Date: Mon, 12 Jun 2023 09:12:34 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v1 3/8] xen/riscv: introduce reset_stack() function Content-Language: en-US To: Oleksii Kurochko Cc: Andrew Cooper , Bob Eshleman , Alistair Francis , Connor Davis , xen-devel@lists.xenproject.org References: From: Jan Beulich In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR2P281CA0067.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:9a::7) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|AM0PR04MB6898:EE_ X-MS-Office365-Filtering-Correlation-Id: 3f3c7e4f-2c13-4b95-7c78-08db6b146487 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: Rv6y1juvaGgOqTHSsw+xy7UUc3antIOozzR2gIPV/ZfYSY4f4Fgh4mNpF6Uk6j2TL0bh5R8jeYvDJro91bEbT009IhfATqNObK1jvrz36i53OFACuWzKnx8rEe6arFGxFAAuoOB8pWGShzNF8g9ys9NA1skh9zYv8vbPzAl3cUSbr0bw8nLc6uBgOg78fi9u/lwbrJGltyEc1LZE5fSFoezaH1sWAmoSQmIHFBUiNI44OZDI1yHJRVxO069oWz2310BtdOfu/3nCoGw8TTq13D3k++ua48dgiENCBZNvnd8UtbccgWzqOCVKtPDZ6KFDq19iDA9Qr52x7lsYrVxBHjjoH200PfkgkMIv7fvDmjZD4qCwxQ2QAEu7zgyDfdkcqYf5kjsmk2cOCg18Xz5eJ2qCu3tSgKbfYX4BwsD+8zsHWVkXsIWXwPjZUysaT4R9ZwObXa4ylmcdrA5Dsyd42A6cqLA8xoVgMVOxs82pJOhyafc+bPn0VKAmY24SQ9s3mLzXI1ms9O6cQBPPVtUMnVinojz5N19OFYm6tW1BTGazKW4kfFuzzmah1Jwm/VamsTKQ09zL037gEB/sZEomCCW6BZUtwGcxuhPKo/I/OT0ivgaaPrWLFKTnuuAywRHtZTANifMAGACMw3HsZANZjw== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(346002)(376002)(396003)(39860400002)(136003)(366004)(451199021)(6916009)(4326008)(66476007)(66556008)(316002)(31686004)(41300700001)(186003)(4744005)(2906002)(54906003)(478600001)(66946007)(8676002)(8936002)(5660300002)(6486002)(53546011)(6506007)(6512007)(26005)(36756003)(86362001)(2616005)(31696002)(38100700002)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?ckhzcDg1Z0tqQ1JxdXFRZjl2eW42aVV1WmdkY0w0dWRqSk1kOUdrQi9KQUNn?= =?utf-8?B?SUlsYUNQbkdEenI2S3pISlhzS0dJVzRiZ1pjZ3Y4T1hqT2Z6NEFubThhVkdp?= =?utf-8?B?U2NZcTl2SGlZODl2bkIxOFBxNWlUdHE5ZzFMSkczQnVLWnhUZEFwa3VqRG9U?= =?utf-8?B?aS83L0VMZGRrdzNLMGd6ZmhmM296bUpCU2FzbFRUd1R3eG9ZZEtuUVZ4TjFm?= =?utf-8?B?VFNtZEhoR3pJcDFZeVJ1OFNLVEM2Q2YyQmVIbE9wY0NYSXZUSVJ2RUJIUnJ1?= =?utf-8?B?T0wxOGwxazhFTjBBUHI3VW1jdzRsUFZxTGtzL0xrMm01NnR1NEdOVUs0UC9O?= =?utf-8?B?L2FDOHR2YmxHbkRRRFU3TVE1VTdOcmJwSG5FQllaSExOQ1lPNnNtK0RLeWMy?= =?utf-8?B?TjM5UzV0bU14a2VrRXY5R2ZVdUs1RjA1Z21BdThFVm5IN0taV0NsSGZsM29Y?= =?utf-8?B?L0h6YXJtTGxRa0lLNkhHcXZNRlpGMnppZDlmd3JHbkpVNnJmQk9oaDhaWDNV?= =?utf-8?B?cVB3ZGNMS2ZCT3VjTWE5bXkvOWVVZmtiUVVCNkZYWU5EZHBtVHIyQTVTQXZX?= =?utf-8?B?bktBdTRsRUcwR1piZEF6ZkJHR2VxOW1zdkNVQWhSUHg1NHpkVGwrc3JYK2cy?= =?utf-8?B?UlZFeExmZENseVZUajFLNDhTNDhaOVhSaUVzV3FxKytpWDYrdXQyVWdWZDlO?= =?utf-8?B?azJrY2VkbElZTWxuYVhiWmtOQlNpaGE1eDFJc2hSRFN4R24rSDJBVUJEUHMv?= =?utf-8?B?ejdPdkZYZHg3ZUk5L3JqV2Vwbi9SVW10L3pPaStiTHAybENGNmN3UmV1WUZy?= =?utf-8?B?cGxOa2FKbGl6MS9wT1MxL0ZTRDQrakpaZDBlTW9ZWm14cjUxUktlV2VxbUNM?= =?utf-8?B?cHBxTmFVaUVYQWhJQ1laTWM5T3NDNldPSWphRjJNMkNudTNRT2FZTWo2WFJ0?= =?utf-8?B?aGJJRjJuWFJud0lIQmlFWEptdEdFbjRwR2Q3ODlBK1U3UnBIQmNHdlNQY1M0?= =?utf-8?B?dnMvbmZGM0xvOWxGYkFUa1ErTzhhckIvT1FHcW5IRVhRNXlRank5QW1BUmd4?= =?utf-8?B?TFNvK0xzbGorK2FQNmdJQVlQbHlDc1dqclB3N1NocTRHNjkxbk1sRUhRY2NQ?= =?utf-8?B?aXNpWjRvaTBPRE1qOUhzcDdaNXFJaWx6NElJWFk2WncwQVRDelhzQm12OVp0?= =?utf-8?B?YTBjYXJaSmxVQ1RiWjRxOW40SnVLL2h0dzRkNWk5bFVMNnU4V0twWjRLaktr?= =?utf-8?B?ZWhtT3FwVERFYkphY2dmMlVVcHFZTVloM2NvY25iRjZYdU9DNjNjUm1qVjZJ?= =?utf-8?B?Y0o3enVyZjlKZmk2TnVHcjQ1ZzlGUmdlanY3N3dEWERKSVd2WUozR2F0RDFa?= =?utf-8?B?bk5ncjFEaWJLSU1lZlZ0NTRCK3ZodnFsV0plVnM2bndOcXlpY0lhZ1pJNktw?= =?utf-8?B?YVhDNWdRUVA1dFZ0bm5Ma2hacUN6Q3I4SW1zY0oxcnh0ejJpVXJtelIwKzZn?= =?utf-8?B?MFVsbm44dm1xb09SK2RRc2xEQ2pBeVVUQnNXOC82SDRrUE5nV0kyTFRuUmZK?= =?utf-8?B?ZTlQamFMbkl1RUJpTGMxLzJxUFA2d3UyTklRZGdpb1JOWHQrMWVoaEwyUDI5?= =?utf-8?B?MW82cXBVWXRzaklLWTVkQTJsTk1HbTdicGtHaXh2dFNaUnRvUkZwLzBXb0Ns?= =?utf-8?B?cWROYTlCYkQ4N0N5QTI4VVJwemE3cXpYNmd4ajhpb01yQ3Byb1JYVUJCUUNV?= =?utf-8?B?SWhkTzV3cUJObHhDa2F2aHRsYVY4cEQ0Q0JsWTBhOFhyRU1URndRQnh6cnZi?= =?utf-8?B?ckhYWXhpZzNKZnA4TXNkY2tHNDNNU3U4OVNhc1p4Z0dnRjA5OVFJdVBXekhm?= =?utf-8?B?VVlteXhBTzdmNXllVWtZa0kvd1l0OTFKekYzT2ZONU53Q3lnR3dvSmlGLzZP?= =?utf-8?B?ZjFKa0Fua0lUL2h4ZnplUTh2eWlWMEc0K3lRSWFJL3FGM1RzMGtnaC9XWml5?= =?utf-8?B?eG1hcDkvelhaNmRST0RTVkZ4L0RPVHRZR1VEUUpyRkNBT2taY3RGbWhJaGQ2?= =?utf-8?B?NTVwa3dPdVZicW1zMUlvMWVQc0NiNUxWK1hsSWkzem5sMHZ1S2R2RUFQVUpT?= =?utf-8?Q?QyrWNg4DS6WeiBzQBn4S5B7W2?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 3f3c7e4f-2c13-4b95-7c78-08db6b146487 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Jun 2023 07:12:33.4170 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: JQiz7jG8IgHfBeVasfSG15fMK9Tx1BU+6SDAscbH0PDA+CGhH4vNLFchL4O5/kEeEj4WxTSgK1nu5J1kacwjzg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0PR04MB6898 On 06.06.2023 21:55, Oleksii Kurochko wrote: > Signed-off-by: Oleksii Kurochko This wants addressing the "Why?" aspect in the description. Is the present code wrong in some perhaps subtle way? Are you meaning to re-use the code? If so, in which way (which is relevant to determine whether the new function may actually continue to live in .text.header)? Jan > --- a/xen/arch/riscv/riscv64/head.S > +++ b/xen/arch/riscv/riscv64/head.S > @@ -27,8 +27,14 @@ ENTRY(start) > add t3, t3, __SIZEOF_POINTER__ > bltu t3, t4, .L_clear_bss > > + jal reset_stack > + > + tail start_xen > + > +ENTRY(reset_stack) > la sp, cpu0_boot_stack > li t0, STACK_SIZE > add sp, sp, t0 > > - tail start_xen > + ret > + From xen-devel-bounces@lists.xenproject.org Mon Jun 12 07:16:35 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 07:16:35 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546877.853961 (Exim 4.92) (envelope-from ) id 1q8bmr-00084k-Jw; Mon, 12 Jun 2023 07:16:25 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546877.853961; Mon, 12 Jun 2023 07:16:25 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8bmr-00084d-Gy; Mon, 12 Jun 2023 07:16:25 +0000 Received: by outflank-mailman (input) for mailman id 546877; Mon, 12 Jun 2023 07:16:23 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8bmp-00084X-EY for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 07:16:23 +0000 Received: from EUR04-HE1-obe.outbound.protection.outlook.com (mail-he1eur04on2075.outbound.protection.outlook.com [40.107.7.75]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 08d193cc-08f1-11ee-b232-6b7b168915f2; Mon, 12 Jun 2023 09:16:22 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by AM0PR04MB6898.eurprd04.prod.outlook.com (2603:10a6:208:185::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.39; Mon, 12 Jun 2023 07:15:54 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.039; Mon, 12 Jun 2023 07:15:54 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 08d193cc-08f1-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=iqfjvFak8qKTbm3RCcIHxBwiXassoyvhfsFryHBw7/C7SsSBLYaxWj7ZIX7l4FdhUUgBqtAbNg0isLHNtEPi5+ZUIIUNF+fgTqEGemsXUnm0tKdEzsfxTtukyFFnY+3opQ3FVp7vnlN1+XE612HlkwIwPjBPjXOKu558hA6X1wyBSTKCSLcNkUsVC32wVh4N9ipJx8FIBwQAv5qEVAUtMwK09coHLmyge9WQgBvtEq2aawQbWcklIpUpc4+TVy4vGwttbidwzO1qtJnRbgHnann4J+ts1Zj7l54zc9ggvXw9DmorAkCu+k6vGuAVj+fw5LVRNNqfMgexEevkemlYgg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=aw00iNeYQdxK3fbRKFRRTemZezbdy/PhkdqHdw7pCYo=; b=ahr18pfoGFX+gyG3Q2PEMZQBsvgzpPgC5e6w41KrWfBHO+u1nJ17kizHm3gKcs2uM/h1QAntszcNL5tqbb1o2qDLrxXxv+AZrdncZrubGoArGy8mdPvADknyYHnL04cAnd0cNcSxeykh5tU5AHHw4DpagvCFiLMvr1s+YstTBrLAu44/D0A8jcJNz5aTM0hNZWtc+u/EmMcLS+u+PA4ETNTDl7pUruT0gAAMIckYJKQUHhNFgH7f8aw6KfDkhKksO/tbJso+ibexg8BPcuCiW1qVJw6m/DaiBXLIouqih5ljmAD6wtpF8zf9CXHWr1Vm3A5z+2fpd4mah/Ozy1tyvw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=aw00iNeYQdxK3fbRKFRRTemZezbdy/PhkdqHdw7pCYo=; b=rrXjdhHoDQIFbvkSMhjqpCzDeTNWgV2gcyNx+a2Lffz4I5JbO4+3zhZB++s9O45aUVrDS9NJY6zeThxuZsk0pSzsVS9sGwHlUYcluQXHVWIM9ctO5/NF2P/wj085Fjjok0X3dhefzH9LeTyq4yoFcMawQw6aJNEPrrOoqtc6tsErhXFU7I+DSXhEOXavAFQenmUt+VPcAzPEXKSkunT+GmWFY1mfNmP1DRhsOI+t7+u9tED11DmQ6ZLG3l43EXPE7zFW9kwhny4M8lsBnnfpRbzFM1AwyAP8lUTcuxibZbABCkTcO5OAAaL7T2al4XKOwhdZaY7RQt1ccpso9PFH6w== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <726a9d97-aab1-f6d7-ab97-d75cf47b4c2d@suse.com> Date: Mon, 12 Jun 2023 09:15:55 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v1 4/8] xen/riscv: introduce function for physical offset calculation Content-Language: en-US To: Oleksii Kurochko Cc: Andrew Cooper , Bob Eshleman , Alistair Francis , Connor Davis , xen-devel@lists.xenproject.org References: From: Jan Beulich In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR3P281CA0084.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:1f::20) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|AM0PR04MB6898:EE_ X-MS-Office365-Filtering-Correlation-Id: 36d32761-d4b2-4a5b-d0c9-08db6b14dc09 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: pdxvUTEkkb3YPDflTLD0GDHdw4g1b+u4/egsbridd40sVpHXQBLcUNSnsZnuMQxa2aYch7MoAK/Yco5/ZxPMPMk/6zD+KJEUzhDmuyCdvcc41wAVkpOrnY1DzEkKa594dD46kd2Yc1CZ8REoHODdK630rx9zDDMBbWMMeaVTccUrbp7zOfSIU7u4Rs12aP0tRZItu+/QcEesT/IwQaHp4PlWWAaulx/g7SWQsRCtkuLZ23rNDdg6I7TStb7EA4kIJEwvaUKLf5UNg698RqxNUzfD7uefcgE9UD9bpkKR7zj0WvOTWCI10Bu7HGoilyzo8lLJ8PVsVZLDpFwQihPa7fdw50Ua02BP98QtHtLkI4jeBpT453iPg9R5/kDLXm+q6xyfb4vHiVdxA247r3jfzA4FfsQUua4uP5S5AXjrJYY5mWXIexZQ87+EFkw+Y7sNQ4qX+v05ymSNV4ziV420nBXN9XIkF4tyqRe+uDPYdqboKLUJHYrQFbnWmJMkBAlo/Ht+tbaqL8QAvrZiJCK2JclMqQBpCbywtIfE99dUY/E8bA836wAYrGHyHO7qS8HhKKtWh99rONeiPn0mefPOYRhrNI7Z3hlN3abnl027u5njovmz0pWjtUkHBWW08JWppVA6Qxc/D4VDreP9r2SIEg== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(346002)(376002)(396003)(39860400002)(136003)(366004)(451199021)(6916009)(4326008)(66476007)(66556008)(316002)(31686004)(41300700001)(186003)(2906002)(54906003)(478600001)(66946007)(8676002)(8936002)(5660300002)(6486002)(53546011)(6506007)(6512007)(26005)(83380400001)(36756003)(86362001)(2616005)(31696002)(38100700002)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?dWR4ekNDU0crcU9Tb3RWZUprdDlscVRQOFg5UnYwS24rSEYxNjZWRzQ0cmZB?= =?utf-8?B?SUUzS3l5NXRGUlpLelN3MGpwNjUyTlRaejNBWkdTZjJBVTJqVWYxajNDM2pj?= =?utf-8?B?UHlIQnN4MUFNRXVZQmRQZVhQeXYwaUxSL0svNmZELzBBWTFzdklIMUxiOTRR?= =?utf-8?B?T2JvR0dYNFpiRlI2cXNLSTluZ3FjSW5VL3lYOXdaMm9MamtWQTRPem5lVGU2?= =?utf-8?B?SS9BS1luTVBtaTRINVEvRUp4SlR3Ukwzai9ldTF2d0kySDNVZVY5c1lSQXZJ?= =?utf-8?B?cU1Tb3RBOVp2dUxWYlRuWERtZ1drVjJ2NGxXaWJHU1c4WmxFQklyVTNyT3ZB?= =?utf-8?B?WGdKaFpHRlpUSE5hTzhqczQxTnNMd3RyV1diS1I3dExiL0t0TDZ6QUo1K2Vm?= =?utf-8?B?VW5IU0hPNzhTQ3B3cGhhVVBRcXI2djQwTTVuMjBaY2lwbkdCUXpoc2VZZllQ?= =?utf-8?B?bko1SzZRekpWd3VhQWNkNFBFaXE2dTM2UXNTUWN3VXRpOExaT0ltaXdlNTVC?= =?utf-8?B?d0xwU3hTWWN0eVorb0tlMmUwaG5HRDEvU05KMkJPdEt0cmxSM3ZyRUdHYS9s?= =?utf-8?B?RzU1ckJ1dE82UU5lbHNjOWhxQStmVHJ2UFlWTnl0Z0x6RjZzVGJWczBTZnpN?= =?utf-8?B?Z29uU2VxMEE0Z0R4a21kRm9uOC9sWmNKYnViZmRMNGltYmVtcDJ3d01ZeThT?= =?utf-8?B?cjQ5NzFSaHExcHBiSk5OcWFhZ3ZNSHhKNy9oMWtVSGE5V053eStSVXBqMWRW?= =?utf-8?B?bGt2bGR3OFFFVVROUXBYZXBXcmYwQkwrUlN0MExzazQ2dEMweFRsNyt1Z0VS?= =?utf-8?B?YXo1cWhvZjNiZC9lNjZoL0ttM0k4WThKWHY4Q1U3Sm5WTnhCTU1hWnhKLzMr?= =?utf-8?B?aW5NVFJja0RmNVlLbHc2YlgxTWptNG1FNit3RGtSRXUwMlRrRGNUb20ya0pD?= =?utf-8?B?VFNaRGxWZmdMd2JkUkR6T0tRQ2czZmU2RUZ0VFROWXBVQVpHSEhxcGFXTVlu?= =?utf-8?B?dnlZRklWRTRZZVBzMzZCa0hoblM1ZFhGY2ljZWppYTI0eVlRcnB4QndIOFpk?= =?utf-8?B?SUdxNkFRSDMvV0NPcjRZY1MrTi9KQTU2NS9jTTRuWDNyVnVIM1N1ZHE2a0o5?= =?utf-8?B?VnZzRU9xOGdDSmdCZ1JtSTJORlNsL1lHRUthZUdCV21RdmZXRWJlV2NwanNT?= =?utf-8?B?Yndpb0VueHpYTnFneU5iUWU5Y1NScVhXaVhxanp3QUNaSW53cHVaT2NMSDdG?= =?utf-8?B?QUE2WVU4S1JncVJYcmZienN3ZjM5cVpWSnJSNm4zbnVHY3dlUWRlUVVxc3hv?= =?utf-8?B?TGtQMVpmSFVicm1lWnVLYVpQMmcxQWFrTE5YY0NEM3Z0UWhsVXJnYVc4aHl1?= =?utf-8?B?aTdOVXRTMm94S2s5Q1dSWDRTSWR1RmhvUER3YlhxNTRkckJ4ZnpkZzdrc2sr?= =?utf-8?B?alVRY2N4MTVYcEZQWGI3YVlObm1KWlk3SDBhdmQ1b3BwbVZXOWtMekFUeW13?= =?utf-8?B?VG53Z0Eya3hZU0s0ZTE3S3RZaXNEWm5Ha1MzRTFWS20zYzRKNjNEeS9leUF2?= =?utf-8?B?Z1ZjcHRGRlRBUHVTNXNRR2dIK0ZFLzBuZFJNcDFsalFTVlh4K2tqUVNMNzR1?= =?utf-8?B?bUtac1VQOFZMWGI3c2xxcFBEVVZLMnVabjQvcmRNNWc4NVpqL21ka3EyUk1F?= =?utf-8?B?UEwyQXhaaXNxalpSRHZYTGhNMWFtVDFHcC9GWWxCaFJpSlBaOFN0RzF3MjF2?= =?utf-8?B?OVk0ZjlvSXRhUkVxNnJFb08wTThXSmpNcERxQksyOTVrN09oMllMQXFOQkVJ?= =?utf-8?B?aXRmKzc0aVNITENsOW14SHRvcG5nSldqQ0VFaU5VYjk5SWl4RHpiSXkrTVY0?= =?utf-8?B?THdyL09seVRwTm1mTDd4ZFVyYzNZRk1ZNlR0Y0NOS2p0dzNaYkdQdkFFMmxj?= =?utf-8?B?dU1mekFIZzNMNW91S1pPL0hpUzVGa01odHZZVHBIYi9PNTR4Ymd4MDFUVzZa?= =?utf-8?B?Nk5Tcno1YzdIdVRjemJCRld0bmlMTERpZGszNFJCbW9MalAycnNOTDM3UzVJ?= =?utf-8?B?UlRiWGdPcXFHcUIyVjBuQ2FiejNWWHUvRHhPclVzM1NVOGNpUnlTeTNyRDVt?= =?utf-8?Q?hC6wUAS5q7oEEhGGqGWsjggOs?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 36d32761-d4b2-4a5b-d0c9-08db6b14dc09 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Jun 2023 07:15:53.9400 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: GOPc86NJrdKZULat2Dx1vHZ4pfHJKoiWv+zVODVrbVcX0tqtjTK2LCKudSVTGrkhaZ9R785wVFR4VuhgYBO7Vg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0PR04MB6898 On 06.06.2023 21:55, Oleksii Kurochko wrote: > The function was introduced to not calculate and save physical > offset before MMU is enabled because access to start() is > PC-relative and in case of linker_addr != load_addr it will result > in incorrect value in phys_offset. "... to _not_ calculate ..."? > --- a/xen/arch/riscv/mm.c > +++ b/xen/arch/riscv/mm.c > @@ -19,9 +19,11 @@ struct mmu_desc { > > extern unsigned char cpu0_boot_stack[STACK_SIZE]; > > -#define PHYS_OFFSET ((unsigned long)_start - XEN_VIRT_START) > -#define LOAD_TO_LINK(addr) ((addr) - PHYS_OFFSET) > -#define LINK_TO_LOAD(addr) ((addr) + PHYS_OFFSET) > +static unsigned long phys_offset; __ro_after_init? > +#define LOAD_TO_LINK(addr) ((unsigned long)(addr) - phys_offset) > +#define LINK_TO_LOAD(addr) ((unsigned long)(addr) + phys_offset) > + > Nit: No double blank lines please. > @@ -273,3 +275,13 @@ void __init noreturn noinline enable_mmu() > switch_stack_and_jump((unsigned long)cpu0_boot_stack + STACK_SIZE, > cont_after_mmu_is_enabled); > } > + > +/* > + * calc_phys_offset() should be used before MMU is enabled because access to > + * start() is PC-relative and in case when load_addr != linker_addr phys_offset > + * will have an incorrect value > + */ > +void calc_phys_offset(void) __init? And nit: No double blanks please. Jan From xen-devel-bounces@lists.xenproject.org Mon Jun 12 07:33:51 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 07:33:51 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546882.853971 (Exim 4.92) (envelope-from ) id 1q8c3O-000277-23; Mon, 12 Jun 2023 07:33:30 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546882.853971; Mon, 12 Jun 2023 07:33:30 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8c3N-000270-VU; Mon, 12 Jun 2023 07:33:29 +0000 Received: by outflank-mailman (input) for mailman id 546882; Mon, 12 Jun 2023 07:33:29 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8c3N-00026u-Er for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 07:33:29 +0000 Received: from EUR04-DB3-obe.outbound.protection.outlook.com (mail-db3eur04on060b.outbound.protection.outlook.com [2a01:111:f400:fe0c::60b]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 6befc1d8-08f3-11ee-b232-6b7b168915f2; Mon, 12 Jun 2023 09:33:28 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by PAWPR04MB9840.eurprd04.prod.outlook.com (2603:10a6:102:387::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.42; Mon, 12 Jun 2023 07:33:24 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.039; Mon, 12 Jun 2023 07:33:24 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 6befc1d8-08f3-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=XJYM/Gj1jsF/4j8psxNClogJuOSaMnuy7RVaWoGulwaOxNLPQpgFQjvqD8LbWX1FUtS9xrpajLmjVQfNl2KZD5xBpVuwPHvOqAhf8QNw34APJV0rU4YsZ5oMOnx2bW8s5eIVmHFxC8Aq8T9QVG3gHmZJXPBmMdvwvWFbLMf0/g82Ia8r7yRQkVrCQBBrfpHxgxJCdOzQdkke/9MelEH9Qu+ZRfoAsg5TVPP9uOoE6FaFrmolkk7MBHK/JJg/ZRUm4YKkXY/CUyU9KOLuylKtHBUdOdilgaDSVmxJxzEju/tqmls6OfCsuJf8PFB9lye2Diy2t7qhjnl2cGP66wQQsA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=tYuIqNwdinNyLWneghhdDOqgXZoEXvbEJbWjwAar1WY=; b=lDiCZ9ypWwxatCl0hyrkMgi9g4DeEmZ8q5B7lNuIbGpTne2Xl8GMLl+UqaYBPuvWBcPM7xjvSMvMmlbwANdgizb/rfyN/aC1o842IXQPW+ISlhNlvIamFk6O73FyA8K+agN6y4NNBqy43r5mXqIl4s3XhxKocIzhY47ubkkHD7dgXgtOmTklZLiZGGssrv8V5Eyz04AEJAWhvxtOfwRJ7sXIr374QFTE2G2I9K5aenl3h7N5g9QXtD+flytkhhVjpnIsI3VgaI0eggYAOS+ea/lV/7nl41u1osdeWQI/JyPtWtk1D7mmgRUgacEPPBCdeWK06OEOhoLwm1or3/nDsw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=tYuIqNwdinNyLWneghhdDOqgXZoEXvbEJbWjwAar1WY=; b=gGfPZRZsGBLrB5AKVlmC7ygIVCw7hWTBMcMwyCReaYQl9APpwocTkkmVSHxitQQMPCJUn+Q1CKO/a+Xc4CM1uVzuKZbIpLxiDzbqd6mSiqUuAaFa8IHpfQMRClHEtLnzHGCRR9zoGCH6Yt4HaMEyr4kE+uNWMlL57JcozxPKECxlH7DnZJthMT+5xoRt8Zd1/tPXqysJe/sO8BjxZicrrPnyCZG8mAi3XHwksyDqF9VFbP2iRw/WJnbp1dCq9kd9HcYFU7O2Gylt+3ZCGDxATeGl1ZUi5UASRWGhWcrUIWMNdSNAPeREg4WvbSpwMsPbtqQ08OIJ2HM2wV6VJ2892w== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: Date: Mon, 12 Jun 2023 09:33:22 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v2] docs/misra: new rules addition Content-Language: en-US To: Stefano Stabellini Cc: julien@xen.org, andrew.cooper3@citrix.com, roger.pau@citrix.com, bertrand.marquis@arm.com, roberto.bagnara@bugseng.com, Stefano Stabellini , xen-devel@lists.xenproject.org References: <20230609174543.4067574-1-sstabellini@kernel.org> From: Jan Beulich In-Reply-To: <20230609174543.4067574-1-sstabellini@kernel.org> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR0P281CA0260.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:b5::17) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|PAWPR04MB9840:EE_ X-MS-Office365-Filtering-Correlation-Id: 123ef1f9-4914-42ff-497a-08db6b174de7 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: faGsnwpza+89flsfSAVXZG+fLFzA/2MVNxUnOmqKwEMd2kCEZIZ2WPuV9Bn/yP3THFWMSbpOuIodPecBThxP8qTE1verXedipUszZFYl3FcF01LW9nPeAxqW5qcReLoR5Gk3YogrO41o3E+d8WZZbR7Y360aXl5VJYyLlMeeqKx5zVyOjBvBkmELoB1tnL5G9SdW8BNYMcCEJeiAo/MYGZUlRPrddmg9MK1ugImszXFpXkGmrv2C0ZN+WfpqYD1+5EsKTDZNjeEI/R4ZBtEukOYU2itjXO8T3KG7BezZyEzMNf2aNwvGIBxGKGjOjSHkyFRYRBnbAS9INwPd7bfLQfSbHuq8Ak3cad0wPnWcpdmdZuAYaU91QNAUiHgIgoIjW0aro/XjKj+XlcArU0uGwXWUwDdf1Z1f82s2yDdklljeF47CqEYNnPrtYHCNEp/Rc/aFd/ArydGT+Hb5wGR/UKxYsDeA69MZ0U4EEd+kMv2+otoDKyGpbgOtKoxU3RdKcQkfsZM66+afwiGxcSMCCDWeYoyezxIEEFGQchCLcb9kySOkyD7tRlSmthhMsu12Q6ryJOyUhBUCtnxfWn8FVTOZSVlS1W20KVn+drTL2647KB2mrSZ6Nku+jURAIyuZZf81sEa5B3WeZ/SyrkxLQUmdbEaeoshzKYAI01P5ESLa/V4w/v8u3LyFZTzKdMQ1 X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(346002)(366004)(376002)(396003)(136003)(39860400002)(451199021)(478600001)(8936002)(8676002)(316002)(4326008)(66476007)(66556008)(66946007)(41300700001)(2616005)(38100700002)(6916009)(186003)(6486002)(5660300002)(6512007)(6506007)(53546011)(26005)(86362001)(31696002)(2906002)(36756003)(31686004)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?akNEWTBMZWFWektwS0ZQYS9DTHg3WUlyd05FYTlZOSs1WjNQMzQ5b1Rjdzc2?= =?utf-8?B?YWFSdGNEaE5VV20zUWNUN3RGWkQwUVg1S3J6SDBpaEJjcUU0Sk9yZVJkUEZC?= =?utf-8?B?cWlIay94aWhJMVVFODhEN0E5YzlqUzkrbWFYQi9tZ0hHV0RNbkF5NXdqampj?= =?utf-8?B?cWQ2UUs0S2FGWE5QejM4SWtCTXMrUUhIY3NzMmZXdEhPTkZ3dVZ4R2oxM2VV?= =?utf-8?B?UHI2QUM4ZytBMlJXRE1sa2dZcDRSbW44ZnlaR3lMZERPbThDWnNhUDI2RmVI?= =?utf-8?B?ZEFCZlJaUVF3OXhYTTB3akZVSHZpS3Y5N0Y0UUd4TWZoUEZBaHY0MDUxWDVD?= =?utf-8?B?WFZ2RGtJMzdqQmV1NlBFamFwdEdWMXlMTm45by9PcngxTlFCalZ2RFpvNnhH?= =?utf-8?B?V3lBUWNScE5BemRLbFZTTG9BZitlK3M0eUs0WmZxbkZzMWZ3Ynp3a3pyS0pP?= =?utf-8?B?SWdNN3FVeXRFWUFlK1dqWmgrMGVPb1dWdGNlYSt0U0Y4NUV4MU8yU3hiemFK?= =?utf-8?B?QmZRcFpKMzdVQVVvMkxLSGQzaDJvbDFFQ3RVWUVBdVFTWjlIYndDRWxWUUQx?= =?utf-8?B?MUdRakxVVFM1bmFGSVR3bEs3YVJ5U0lMY2RyUHBBM0JROVRBKzZIMHNyN1da?= =?utf-8?B?bm5GM1FGVGg1VWFHVGJUaWkvcGpVTHExLzVERGc3Ymx6OVJLWklXYzhIUkpI?= =?utf-8?B?ZWVHOEU3clJjUmRNckJDN3FzaHhreFBVZkZ1eHpBeWt4NVhaMm4wQnNUV1Bv?= =?utf-8?B?TzNhejFkSUpmaGM5MXE0eWlRdGk5cm9aWEtZMFdhSkVSTmVvVjdiWEZuMEoy?= =?utf-8?B?d0FUNGYrQjJIcFNsV3FxNlZ2b1IrZWs1Ylh2bGEwSzVqMVNTR3RtTzVxR3Zp?= =?utf-8?B?bndUSlBDRDlXTUE2QmRaMUpkK2d5NUR3S1djWmdCOWtzaDdOV2JZY21yOStL?= =?utf-8?B?cXdQczQwOTZCQ1c0VHN6U29sTmJ6anhZRjNoWE5MbFJFYWgrbHVKUE9uR25z?= =?utf-8?B?ZTlPMklLZGowNm5XZ3lBc1BydXlLdXhuMUJmRUpKQTFwRHN4WUlqYnR4UkJo?= =?utf-8?B?aFNLK3V1cnBQRE0reDc4WnlQOFJ2R0JCQVh2OERsVmxJSnBzUnNrQU5PKzEx?= =?utf-8?B?Q0grVmtoNWs4aE45UEZxNEV0Z2RpWnovZjlGSXpjcjlqS0t1eE5RVzB0Nys2?= =?utf-8?B?eFpTZ3QwVk52azlkdHErSWVLMkZueE9DZmRuUWcrY2tYNFgyNDRsZVpiUCs0?= =?utf-8?B?RE5SNldENEhsSm9GNGE3RDRhc0Q0RGRDNndlUjVwSDRjMEk0anhMM3FUK1V0?= =?utf-8?B?MHVKUTljaWR1d2Nhd0IvUWpPRWU3ZXVVamdTbkhiN1RKMDBLVjlKMGZPSGV0?= =?utf-8?B?bnlxRGhhNWFjSEp5MEdKYlhHaUpaa05iamxxdnpPeDkyZUZIaEdwSE9iZi9R?= =?utf-8?B?b1RIOUJDcXV4SCtpT2RGTUYwQWwzd2d0bXIvZzVoMUdLajlaUWtUMVFhL1N4?= =?utf-8?B?YzBYUVVreXRFdmx1R2kxUHIzSnh6ekdTWkU3TTVnd2U3b3VEcVNNMllXWlBT?= =?utf-8?B?TzN2d0cxNkFxUDZWcFYxa3ZJWW5nZUYybGRnNUtKY3JyMW9TSUczb3hkT0tz?= =?utf-8?B?dVNNL1pVS3ZaVnlkM2dwNm0wbGVtS1RVUnNKSzdFT2Flc3BWQ1hvR2lWbzgw?= =?utf-8?B?NVZoWGJhTHo5aEowaWx6QlBnSUZ5bThTem5MTTYzWkZXa0FSd3RQV2FNcTdT?= =?utf-8?B?R3FxMXhZUjVLTzB1UFI0ZnBsb0ZvaEgxSzJnTUh2b0tZd25BWEFRZVlnckpW?= =?utf-8?B?SEZHQmFXWXB0T2VML0tkWnpOTVhoSWZwaThwdzgxUUEyVXdHWndyeFhFY2hS?= =?utf-8?B?UEs1eVgrNFo3cUlTdTlreUxTeGFjWmh4S2haR1NYVVY2cWhHQkFOTkxUOUhE?= =?utf-8?B?cmR6dUhYNm1GMjI4Zk56ZHdSOHh1bVdKUnE0VkZWbjEva1ZMWnVhTW9hZVkw?= =?utf-8?B?MEt1cDVjOTZMWUZpcGhGNFIvekNuY2JiTGRpV1YyeTRNVGMwTlc1eGtTZm5J?= =?utf-8?B?eEh2YklDd1lOT3JuSUI0R0dYNDJLcU1UZEN1cnY0bGNWRkFQbk5XQTBmY3NN?= =?utf-8?Q?AwXvdz2IoLkt9J7Y7uK0FfPL7?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 123ef1f9-4914-42ff-497a-08db6b174de7 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Jun 2023 07:33:23.9622 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: c6h65E+pK71G0b1BhTZDRdHH27vXGhaP7YbrfUKgSxHNYQrfIfviGmb8gc0cqMWBDmXzvtQ1+iakS3sB6DePyA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAWPR04MB9840 On 09.06.2023 19:45, Stefano Stabellini wrote: > @@ -133,6 +146,13 @@ existing codebase are work-in-progress. > headers (xen/include/public/) are allowed to retain longer > identifiers for backward compatibility. > > + * - `Rule 6.1 `_ > + - Required > + - Bit-fields shall only be declared with an appropriate type > + - In addition to the C99 types, we also consider appropriate types: > + unsigned char, unsigned short, unsigned long, unsigned long long, > + enum. What about their signed equivalents? I'm surprised that I found only very few uses (in Arm insn decoding afaict), but they generally have a purpose. Are the uses we have (and new ones which may appear) intended to become deviations? > @@ -143,6 +163,12 @@ existing codebase are work-in-progress. > - Octal constants shall not be used > - > > + * - `Rule 7.2 `_ > + - Required > + - A "u" or "U" suffix shall be applied to all integer constants > + that are represented in an unsigned type > + - I continue to consider "represented in" problematic here without further qualification. > @@ -314,6 +340,11 @@ existing codebase are work-in-progress. > used following a subsequent call to the same function > - > > + * - Rule 21.21 > + - Required > + - The Standard Library function system of shall not be used > + - Still no "inapplicable" note (whichever way it would be worded to also please Roberto)? Jan From xen-devel-bounces@lists.xenproject.org Mon Jun 12 08:00:20 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 08:00:20 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546895.853981 (Exim 4.92) (envelope-from ) id 1q8cTF-0006lw-SA; Mon, 12 Jun 2023 08:00:13 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546895.853981; Mon, 12 Jun 2023 08:00:13 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8cTF-0006lp-Nr; Mon, 12 Jun 2023 08:00:13 +0000 Received: by outflank-mailman (input) for mailman id 546895; Mon, 12 Jun 2023 08:00:13 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8cTE-0006ld-Vf; Mon, 12 Jun 2023 08:00:12 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8cTE-00058E-KO; Mon, 12 Jun 2023 08:00:12 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8cTD-0002Gb-8z; Mon, 12 Jun 2023 08:00:11 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q8cTD-0004U9-8U; Mon, 12 Jun 2023 08:00:11 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=0c90YcxvdQFykSQj/L0NASVLZ9YvetkjSZEGBC6HW20=; b=jXvJjBbRZ6ULfiY7CauNxJ96WN +H2ccqIdeXlgdFbNYM7hCXSAs5zAn6lZaF8cFel9L7Ud8U3hLEWdWywOWjfslUxUOcWXVu5e0RPKL k/qLAOByDREKWZwMqgRAeBPO+ejP+VjI2Lavpp5U9mB454btRpPIYp/z7rgjLDawyL8I=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [qemu-mainline test] 181388: regressions - FAIL X-Osstest-Failures: qemu-mainline:build-arm64-xsm:xen-build:fail:regression qemu-mainline:build-arm64:xen-build:fail:regression qemu-mainline:build-amd64:xen-build:fail:regression qemu-mainline:build-i386:xen-build:fail:regression qemu-mainline:build-amd64-xsm:xen-build:fail:regression qemu-mainline:build-i386-xsm:xen-build:fail:regression qemu-mainline:build-armhf:xen-build:fail:regression qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-i386:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:build-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:build-arm64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:build-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:build-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pygrub:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking X-Osstest-Versions-This: qemuu=fdd0df5340a8ebc8de88078387ebc85c5af7b40f X-Osstest-Versions-That: qemuu=6972ef1440a9d685482d78672620a7482f2bd09a From: osstest service owner Date: Mon, 12 Jun 2023 08:00:11 +0000 flight 181388 qemu-mainline real [real] http://logs.test-lab.xenproject.org/osstest/logs/181388/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-arm64-xsm 6 xen-build fail REGR. vs. 180691 build-arm64 6 xen-build fail REGR. vs. 180691 build-amd64 6 xen-build fail REGR. vs. 180691 build-i386 6 xen-build fail REGR. vs. 180691 build-amd64-xsm 6 xen-build fail REGR. vs. 180691 build-i386-xsm 6 xen-build fail REGR. vs. 180691 build-armhf 6 xen-build fail REGR. vs. 180691 Tests which did not succeed, but are not blocking: test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-xl-xsm 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-raw 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-xsm 1 build-check(1) blocked n/a test-arm64-arm64-xl 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit1 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit2 1 build-check(1) blocked n/a test-arm64-arm64-xl-thunderx 1 build-check(1) blocked n/a test-arm64-arm64-xl-vhd 1 build-check(1) blocked n/a test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a test-armhf-armhf-libvirt 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-qcow2 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-raw 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a test-armhf-armhf-xl-arndale 1 build-check(1) blocked n/a test-armhf-armhf-xl-multivcpu 1 build-check(1) blocked n/a test-armhf-armhf-xl-rtds 1 build-check(1) blocked n/a test-armhf-armhf-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-amd 1 build-check(1) blocked n/a test-amd64-i386-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-raw 1 build-check(1) blocked n/a test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-i386 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-amd64 1 build-check(1) blocked n/a test-amd64-coresched-i386-xl 1 build-check(1) blocked n/a test-amd64-coresched-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-xsm 1 build-check(1) blocked n/a build-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-shadow 1 build-check(1) blocked n/a test-amd64-amd64-xl-rtds 1 build-check(1) blocked n/a build-arm64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a build-armhf-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a build-i386-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-amd 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-pair 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-qcow2 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-vhd 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvshim 1 build-check(1) blocked n/a test-amd64-amd64-pair 1 build-check(1) blocked n/a test-amd64-amd64-pygrub 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-intel 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd11-amd64 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd12-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-multivcpu 1 build-check(1) blocked n/a test-amd64-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit1 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit1 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-intel 1 build-check(1) blocked n/a test-amd64-i386-xl 1 build-check(1) blocked n/a test-amd64-i386-xl-pvshim 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a version targeted for testing: qemuu fdd0df5340a8ebc8de88078387ebc85c5af7b40f baseline version: qemuu 6972ef1440a9d685482d78672620a7482f2bd09a Last test of basis 180691 2023-05-17 10:45:22 Z 25 days Failing since 180699 2023-05-18 07:21:24 Z 25 days 88 attempts Testing same since 181372 2023-06-10 21:38:57 Z 1 days 9 attempts ------------------------------------------------------------ People who touched revisions under test: Afonso Bordado Akihiko Odaki Akihiro Suda Alex Bennée Alex Williamson Alexander Bulekov Alexander Graf Alexander Ivanov Alistair Francis Anastasia Belova Andrew Jeffery Ani Sinha Ani Sinha Anthony PERARD Anton Johansson BALATON Zoltan Bastian Koppelmann Bernhard Beschow Bin Meng Brian Cain Brice Goglin Camilla Conte Carlos Santos Christian Schoenebeck Chuck Zmudzinski Cindy Lu Clément Chigot Cornelia Huck Cédric Le Goater Cédric Le Goater Daniel Henrique Barboza Daniel P. Berrangé Daniil Kovalev David Hildenbrand David Woodhouse Emanuele Giuseppe Esposito Enze Li Eric Auger Eric Blake Eric DeVolder Erico Nunes Eugenio Pérez Fabiano Rosas Fan Ni Fiona Ebner Francesco Cagnin Francisco Iglesias Frederic Barrat Gavin Shan Gregory Price Gregory Price Hanna Czenczek Hao Zeng Hawkins Jiawei Igor Mammedov Ilya Leoshkevich Ira Weiny Jagannathan Raman Jason Wang Jean-Louis Dupond Jean-Philippe Brucker Jiaxun Yang John Snow Jonathan Cameron Juan Quintela Kevin Wolf Laurent Vivier Lei Yang Leonardo Bras Maksim Davydov Marc-André Lureau Marcin Juszkiewicz Marco Liebel Mark Cave-Ayland Markus Armbruster Matheus Tavares Bernardino Mattias Nissler Mauro Matteo Cascella Max Fritz Michael S. Tsirkin Michael Tokarev Michal Privoznik Milan Zamazal Mostafa Saleh Nicholas Piggin Nicolas Saenz Julienne Niek Linnenbank Palmer Dabbelt Paolo Bonzini Peter Maydell Peter Xu Philippe Mathieu-Daudé qianfan Zhao Raghu H Rene Engel Richard Henderson Richard Purdie Ricky Zhou Ryan Wendland Sebastian Ott Sergio Lopez Sid Manning Song Gao Stefan Hajnoczi Stefano Garzarella Steve Sistare Taylor Simpson Thomas Huth Thomas Weißschuh timothee.cocault@gmail.com Timothée Cocault Tommy Wu Vikram Garhwal Viktor Prutyanov Vitaly Cheptsov Vivek Kasireddy Vladimir Sementsov-Ogievskiy Volker Rümelin Xinyu Li Zeng Hao Zhenyu Zhang Zhenzhong Duan Zhuojia Shen jobs: build-amd64-xsm fail build-arm64-xsm fail build-i386-xsm fail build-amd64 fail build-arm64 fail build-armhf fail build-i386 fail build-amd64-libvirt blocked build-arm64-libvirt blocked build-armhf-libvirt blocked build-i386-libvirt blocked build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl blocked test-amd64-coresched-amd64-xl blocked test-arm64-arm64-xl blocked test-armhf-armhf-xl blocked test-amd64-i386-xl blocked test-amd64-coresched-i386-xl blocked test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-i386-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-amd64-libvirt-xsm blocked test-arm64-arm64-libvirt-xsm blocked test-amd64-i386-libvirt-xsm blocked test-amd64-amd64-xl-xsm blocked test-arm64-arm64-xl-xsm blocked test-amd64-i386-xl-xsm blocked test-amd64-amd64-qemuu-nested-amd blocked test-amd64-amd64-xl-pvhv2-amd blocked test-amd64-i386-qemuu-rhel6hvm-amd blocked test-amd64-amd64-dom0pvh-xl-amd blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-freebsd10-amd64 blocked test-amd64-amd64-qemuu-freebsd11-amd64 blocked test-amd64-amd64-qemuu-freebsd12-amd64 blocked test-amd64-amd64-xl-qemuu-ovmf-amd64 blocked test-amd64-i386-xl-qemuu-ovmf-amd64 blocked test-amd64-amd64-xl-qemuu-win7-amd64 blocked test-amd64-i386-xl-qemuu-win7-amd64 blocked test-amd64-amd64-xl-qemuu-ws16-amd64 blocked test-amd64-i386-xl-qemuu-ws16-amd64 blocked test-armhf-armhf-xl-arndale blocked test-amd64-amd64-xl-credit1 blocked test-arm64-arm64-xl-credit1 blocked test-armhf-armhf-xl-credit1 blocked test-amd64-amd64-xl-credit2 blocked test-arm64-arm64-xl-credit2 blocked test-armhf-armhf-xl-credit2 blocked test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-freebsd10-i386 blocked test-amd64-amd64-qemuu-nested-intel blocked test-amd64-amd64-xl-pvhv2-intel blocked test-amd64-i386-qemuu-rhel6hvm-intel blocked test-amd64-amd64-dom0pvh-xl-intel blocked test-amd64-amd64-libvirt blocked test-armhf-armhf-libvirt blocked test-amd64-i386-libvirt blocked test-amd64-amd64-xl-multivcpu blocked test-armhf-armhf-xl-multivcpu blocked test-amd64-amd64-pair blocked test-amd64-i386-pair blocked test-amd64-amd64-libvirt-pair blocked test-amd64-i386-libvirt-pair blocked test-amd64-amd64-xl-pvshim blocked test-amd64-i386-xl-pvshim blocked test-amd64-amd64-pygrub blocked test-armhf-armhf-libvirt-qcow2 blocked test-amd64-amd64-xl-qcow2 blocked test-arm64-arm64-libvirt-raw blocked test-armhf-armhf-libvirt-raw blocked test-amd64-i386-libvirt-raw blocked test-amd64-amd64-xl-rtds blocked test-armhf-armhf-xl-rtds blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-amd64-xl-shadow blocked test-amd64-i386-xl-shadow blocked test-arm64-arm64-xl-thunderx blocked test-amd64-amd64-libvirt-vhd blocked test-arm64-arm64-xl-vhd blocked test-armhf-armhf-xl-vhd blocked test-amd64-i386-xl-vhd blocked ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 17052 lines long.) From xen-devel-bounces@lists.xenproject.org Mon Jun 12 08:08:23 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 08:08:23 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546902.853990 (Exim 4.92) (envelope-from ) id 1q8cay-0007kl-Kq; Mon, 12 Jun 2023 08:08:12 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546902.853990; Mon, 12 Jun 2023 08:08:12 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8cay-0007ke-IF; Mon, 12 Jun 2023 08:08:12 +0000 Received: by outflank-mailman (input) for mailman id 546902; Mon, 12 Jun 2023 08:08:10 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8caw-0007kY-EU for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 08:08:10 +0000 Received: from smtp-out1.suse.de (smtp-out1.suse.de [195.135.220.28]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 448eff32-08f8-11ee-b232-6b7b168915f2; Mon, 12 Jun 2023 10:08:09 +0200 (CEST) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by smtp-out1.suse.de (Postfix) with ESMTPS id 6A7C922850; Mon, 12 Jun 2023 08:08:08 +0000 (UTC) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id E3CA1138EC; Mon, 12 Jun 2023 08:08:07 +0000 (UTC) Received: from dovecot-director2.suse.de ([192.168.254.65]) by imap2.suse-dmz.suse.de with ESMTPSA id zWAmNmfShmQmbwAAMHmgww (envelope-from ); Mon, 12 Jun 2023 08:08:07 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 448eff32-08f8-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1; t=1686557288; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=ViypVMM6Ql+Q7kEIBjYZ5SWJVF1Sy2SsNSnxUlPo2XY=; b=k3rIZKE3Blt2IKTzyW+KP2aNRW7sHhsTtJ3+SZRxqfbgiQqEw1mC4AtHQhzu5MA/K4qhET 35nUTJS6EnU7G/ZDlwnwfdsSsfZz5byzXowmnoXJMTwTecVlYV6ZJdtnOPcdLD5D6Mu9U7 xoybCO/Gs80FS/3LX3r07DK2a4hIoi8= Message-ID: Date: Mon, 12 Jun 2023 10:08:07 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Content-Language: en-US From: Juergen Gross To: Christoph Hellwig Cc: =?UTF-8?Q?Marek_Marczykowski-G=c3=b3recki?= , Stefano Stabellini , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , x86@kernel.org, "H. Peter Anvin" , Ben Skeggs , Karol Herbst , Lyude Paul , xen-devel@lists.xenproject.org, iommu@lists.linux.dev, linux-kernel@vger.kernel.org, nouveau@lists.freedesktop.org References: <20230518134253.909623-1-hch@lst.de> <20230518134253.909623-3-hch@lst.de> <20230519040405.GA10818@lst.de> <20230607131257.GB19206@lst.de> <79b26dac-b507-1c05-b499-784ca6ee3db0@suse.com> Subject: Re: [PATCH 2/4] x86: always initialize xen-swiotlb when xen-pcifront is enabling In-Reply-To: <79b26dac-b507-1c05-b499-784ca6ee3db0@suse.com> Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="------------D0k5nQJXdvVYMcmF7Z7ilEQw" This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --------------D0k5nQJXdvVYMcmF7Z7ilEQw Content-Type: multipart/mixed; boundary="------------zBG5RQTbKLSbzBmNY9ngYHOz"; protected-headers="v1" From: Juergen Gross To: Christoph Hellwig Cc: =?UTF-8?Q?Marek_Marczykowski-G=c3=b3recki?= , Stefano Stabellini , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , x86@kernel.org, "H. Peter Anvin" , Ben Skeggs , Karol Herbst , Lyude Paul , xen-devel@lists.xenproject.org, iommu@lists.linux.dev, linux-kernel@vger.kernel.org, nouveau@lists.freedesktop.org Message-ID: Subject: Re: [PATCH 2/4] x86: always initialize xen-swiotlb when xen-pcifront is enabling References: <20230518134253.909623-1-hch@lst.de> <20230518134253.909623-3-hch@lst.de> <20230519040405.GA10818@lst.de> <20230607131257.GB19206@lst.de> <79b26dac-b507-1c05-b499-784ca6ee3db0@suse.com> In-Reply-To: <79b26dac-b507-1c05-b499-784ca6ee3db0@suse.com> --------------zBG5RQTbKLSbzBmNY9ngYHOz Content-Type: multipart/mixed; boundary="------------m0sXaX0k2kxORrZ0SHmv0P9E" --------------m0sXaX0k2kxORrZ0SHmv0P9E Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: base64 T24gMDkuMDYuMjMgMTc6MzgsIEp1ZXJnZW4gR3Jvc3Mgd3JvdGU6DQo+IE9uIDA3LjA2LjIz IDE1OjEyLCBDaHJpc3RvcGggSGVsbHdpZyB3cm90ZToNCj4+IE9uIE1vbiwgTWF5IDIyLCAy MDIzIGF0IDEwOjM3OjA5QU0gKzAyMDAsIEp1ZXJnZW4gR3Jvc3Mgd3JvdGU6DQo+Pj4gSW4g bm9ybWFsIGNhc2VzIFBDSSBwYXNzdGhyb3VnaCBpbiBQViBndWVzdHMgcmVxdWlyZXMgdG8g c3RhcnQgdGhlIGd1ZXN0DQo+Pj4gd2l0aCBlODIwX2hvc3Q9MS4gU28gaXQgc2hvdWxkIGJl IHJhdGhlciBlYXN5IHRvIGxpbWl0IGFsbG9jYXRpbmcgdGhlDQo+Pj4gNjRNQiBpbiBQViBn dWVzdHMgdG8gdGhlIGNhc2VzIHdoZXJlIHRoZSBtZW1vcnkgbWFwIGhhcyBub24tUkFNIHJl Z2lvbnMNCj4+PiBlc3BlY2lhbGx5IGluIHRoZSBmaXJzdCAxTUIgb2YgdGhlIG1lbW9yeS4N Cj4+Pg0KPj4+IFRoaXMgd2lsbCBjb3ZlciBldmVuIGhvdHBsdWcgY2FzZXMuIFRoZSBvbmx5 IGNhc2Ugbm90IGNvdmVyZWQgd291bGQgYmUgYQ0KPj4+IGd1ZXN0IHN0YXJ0ZWQgd2l0aCBl ODIwX2hvc3Q9MSBldmVuIGlmIG5vIFBDSSBwYXNzdGhyb3VnaCB3YXMgcGxhbm5lZC4NCj4+ PiBCdXQgdGhpcyBzaG91bGQgYmUgcmF0aGVyIHJhcmUgKGF0IGxlYXN0IEkgaG9wZSBzbyku DQo+Pg0KPj4gU28gaXMgdGhpcyBhbiBBQ0sgZm9yIHRoZSBwYXRjaCBhbmQgY2FuIHdlIGdv IGFoZWFkIHdpdGggaXQ/DQo+IA0KPiBBcyBsb25nIGFzIGFib3ZlIG1lbnRpb25lZCBjaGVj ayBvZiB0aGUgRTgyMCBtYXAgaXMgZG9uZSwgeWVzLg0KPiANCj4gSWYgeW91IHdhbnQgSSBj YW4gc2VuZCBhIGRpZmYgdG8gYmUgZm9sZGVkIGludG8geW91ciBwYXRjaCBvbiBNb25kYXku DQoNCkF0dGFjaGVkIGlzIGEgcGF0Y2ggZm9yIGFkZGluZyBhIG5ldyBmbGFnIHhlbl9wdl9w Y2lfcG9zc2libGUuIFlvdSBjYW4NCmVpdGhlciBhZGQgdGhlIHBhdGNoIHRvIHlvdXIgc2Vy aWVzIG9yIG1lcmdlIGl0IGludG8geW91ciBwYXRjaCAyLg0KDQpZb3UgbmVlZCB0byBtb2Rp ZnkgeW91ciBwYXRjaCBsaWtlIHRoaXM6DQoNCkBAIC0xMTEsNyArOTAsMTAgQEAgc3RhdGlj IGlubGluZSB2b2lkIF9faW5pdCBwY2lfeGVuX3N3aW90bGJfaW5pdCh2b2lkKQ0KICB2b2lk IF9faW5pdCBwY2lfaW9tbXVfYWxsb2Modm9pZCkNCiAgew0KICAJaWYgKHhlbl9wdl9kb21h aW4oKSkgew0KLQkJaWYgKHhlbl9pbml0aWFsX2RvbWFpbigpIHx8IHg4Nl9zd2lvdGxiX2Vu YWJsZSkNCisJCWlmICh4ZW5faW5pdGlhbF9kb21haW4oKSB8fA0KKwkJICAgIChJU19FTkFC TEVEKENPTkZJR19YRU5fUENJREVWX0ZST05URU5EKSAmJg0KKwkJICAgICB4ZW5fcHZfcGNp X3Bvc3NpYmxlKSB8fA0KKwkJICAgIHg4Nl9zd2lvdGxiX2VuYWJsZSkNCiAgCQkJcGNpX3hl bl9zd2lvdGxiX2luaXQoKTsNCiAgCQlyZXR1cm47DQogIAl9DQoNCg0KSnVlcmdlbg0K --------------m0sXaX0k2kxORrZ0SHmv0P9E Content-Type: text/x-patch; charset=UTF-8; name="0001-xen-pci-add-flag-for-PCI-passthrough-being-possible.patch" Content-Disposition: attachment; filename*0="0001-xen-pci-add-flag-for-PCI-passthrough-being-possible.pat"; filename*1="ch" Content-Transfer-Encoding: base64 RnJvbSA3ZTg0YTg4MjQzYjU3YmM5MGQxZWY2YmQ0MjY2MWY0OTk4ODZlNjU5IE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBKdWVyZ2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+ CkRhdGU6IE1vbiwgMTIgSnVuIDIwMjMgMDk6NTc6MTggKzAyMDAKU3ViamVjdDogW1BBVENI XSB4ZW4vcGNpOiBhZGQgZmxhZyBmb3IgUENJIHBhc3N0aHJvdWdoIGJlaW5nIHBvc3NpYmxl CgpXaGVuIHJ1bm5pbmcgYXMgYSBYZW4gUFYgZ3Vlc3RzIHBhc3NlZCB0aHJvdWdoIFBDSSBk ZXZpY2VzIG9ubHkgaGF2ZSBhCmNoYW5jZSB0byB3b3JrIGlmIHRoZSBYZW4gc3VwcGxpZWQg bWVtb3J5IG1hcCBoYXMgc29tZSBQQ0kgc3BhY2UKcmVzZXJ2ZWQuCgpBZGQgYSBmbGFnIHhl bl9wdl9wY2lfcG9zc2libGUgd2hpY2ggd2lsbCBiZSBzZXQgaW4gZWFybHkgYm9vdCBpbiBj YXNlCnRoZSBtZW1vcnkgbWFwIGhhcyBhdCBsZWFzdCBvbmUgYXJlYSB3aXRoIHRoZSB0eXBl IEU4MjBfVFlQRV9SRVNFUlZFRC4KClNpZ25lZC1vZmYtYnk6IEp1ZXJnZW4gR3Jvc3MgPGpn cm9zc0BzdXNlLmNvbT4KLS0tCiBhcmNoL3g4Ni94ZW4vc2V0dXAuYyB8IDYgKysrKysrCiBp bmNsdWRlL3hlbi94ZW4uaCAgICB8IDYgKysrKysrCiAyIGZpbGVzIGNoYW5nZWQsIDEyIGlu c2VydGlvbnMoKykKCmRpZmYgLS1naXQgYS9hcmNoL3g4Ni94ZW4vc2V0dXAuYyBiL2FyY2gv eDg2L3hlbi9zZXR1cC5jCmluZGV4IGMyYmUzZWZiMmJhMC4uNzE2Zjc2YzQxNDE2IDEwMDY0 NAotLS0gYS9hcmNoL3g4Ni94ZW4vc2V0dXAuYworKysgYi9hcmNoL3g4Ni94ZW4vc2V0dXAu YwpAQCAtNDMsNiArNDMsOSBAQCBzdHJ1Y3QgeGVuX21lbW9yeV9yZWdpb24geGVuX2V4dHJh X21lbVtYRU5fRVhUUkFfTUVNX01BWF9SRUdJT05TXSBfX2luaXRkYXRhOwogLyogTnVtYmVy IG9mIHBhZ2VzIHJlbGVhc2VkIGZyb20gdGhlIGluaXRpYWwgYWxsb2NhdGlvbi4gKi8KIHVu c2lnbmVkIGxvbmcgeGVuX3JlbGVhc2VkX3BhZ2VzOwogCisvKiBNZW1vcnkgbWFwIHdvdWxk IGFsbG93IFBDSSBwYXNzdGhyb3VnaC4gKi8KK2Jvb2wgeGVuX3B2X3BjaV9wb3NzaWJsZTsK KwogLyogRTgyMCBtYXAgdXNlZCBkdXJpbmcgc2V0dGluZyB1cCBtZW1vcnkuICovCiBzdGF0 aWMgc3RydWN0IGU4MjBfdGFibGUgeGVuX2U4MjBfdGFibGUgX19pbml0ZGF0YTsKIApAQCAt ODA0LDYgKzgwNyw5IEBAIGNoYXIgKiBfX2luaXQgeGVuX21lbW9yeV9zZXR1cCh2b2lkKQog CQljaHVua19zaXplID0gc2l6ZTsKIAkJdHlwZSA9IHhlbl9lODIwX3RhYmxlLmVudHJpZXNb aV0udHlwZTsKIAorCQlpZiAodHlwZSA9PSBFODIwX1RZUEVfUkVTRVJWRUQpCisJCQl4ZW5f cHZfcGNpX3Bvc3NpYmxlID0gdHJ1ZTsKKwogCQlpZiAodHlwZSA9PSBFODIwX1RZUEVfUkFN KSB7CiAJCQlpZiAoYWRkciA8IG1lbV9lbmQpIHsKIAkJCQljaHVua19zaXplID0gbWluKHNp emUsIG1lbV9lbmQgLSBhZGRyKTsKZGlmZiAtLWdpdCBhL2luY2x1ZGUveGVuL3hlbi5oIGIv aW5jbHVkZS94ZW4veGVuLmgKaW5kZXggMGVmZWI2NTJmOWI4Li41ZWIwYTk3NGExMWUgMTAw NjQ0Ci0tLSBhL2luY2x1ZGUveGVuL3hlbi5oCisrKyBiL2luY2x1ZGUveGVuL3hlbi5oCkBA IC0yOSw2ICsyOSwxMiBAQCBleHRlcm4gYm9vbCB4ZW5fcHZoOwogCiBleHRlcm4gdWludDMy X3QgeGVuX3N0YXJ0X2ZsYWdzOwogCisjaWZkZWYgQ09ORklHX1hFTl9QVgorZXh0ZXJuIGJv b2wgeGVuX3B2X3BjaV9wb3NzaWJsZTsKKyNlbHNlCisjZGVmaW5lIHhlbl9wdl9wY2lfcG9z c2libGUJMAorI2VuZGlmCisKICNpbmNsdWRlIDx4ZW4vaW50ZXJmYWNlL2h2bS9zdGFydF9p bmZvLmg+CiBleHRlcm4gc3RydWN0IGh2bV9zdGFydF9pbmZvIHB2aF9zdGFydF9pbmZvOwog Ci0tIAoyLjM1LjMKCg== --------------m0sXaX0k2kxORrZ0SHmv0P9E Content-Type: application/pgp-keys; name="OpenPGP_0xB0DE9DD628BF132F.asc" Content-Disposition: attachment; filename="OpenPGP_0xB0DE9DD628BF132F.asc" Content-Description: OpenPGP public key Content-Transfer-Encoding: quoted-printable -----BEGIN PGP PUBLIC KEY BLOCK----- xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjri oyspZKOBycWxw3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2 kaV2KL9650I1SJvedYm8Of8Zd621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i 1TXkH09XSSI8mEQ/ouNcMvIJNwQpd369y9bfIhWUiVXEK7MlRgUG6MvIj6Y3Am/B BLUVbDa4+gmzDC9ezlZkTZG2t14zWPvxXP3FAp2pkW0xqG7/377qptDmrk42GlSK N4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEBAAHNHEp1ZXJnZW4gR3Jvc3Mg PGpnQHBmdXBmLm5ldD7CwHkEEwECACMFAlOMcBYCGwMHCwkIBwMCAQYVCAIJCgsE FgIDAQIeAQIXgAAKCRCw3p3WKL8TL0KdB/93FcIZ3GCNwFU0u3EjNbNjmXBKDY4F UGNQH2lvWAUy+dnyThpwdtF/jQ6j9RwE8VP0+NXcYpGJDWlNb9/JmYqLiX2Q3Tye vpB0CA3dbBQp0OW0fgCetToGIQrg0MbD1C/sEOv8Mr4NAfbauXjZlvTj30H2jO0u +6WGM6nHwbh2l5O8ZiHkH32iaSTfN7Eu5RnNVUJbvoPHZ8SlM4KWm8rG+lIkGurq qu5gu8q8ZMKdsdGC4bBxdQKDKHEFExLJK/nRPFmAuGlId1E3fe10v5QL+qHI3EIP tyfE7i9Hz6rVwi7lWKgh7pe0ZvatAudZ+JNIlBKptb64FaiIOAWDCx1SzR9KdWVy Z2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+wsB5BBMBAgAjBQJTjHCvAhsDBwsJ CAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey/HmQf/RtI7kv5A2PS4 RF7HoZhPVPogNVbC4YA6lW7DrWf0teC0RR3MzXfy6pJ+7KLgkqMlrAbN/8Dvjoz7 8X+5vhH/rDLa9BuZQlhFmvcGtCF8eR0T1v0nC/nuAFVGy+67q2DH8As3KPu0344T BDpAvr2uYM4tSqxK4DURx5INz4ZZ0WNFHcqsfvlGJALDeE0LhITTd9jLzdDad1pQ SToCnLl6SBJZjDOX9QQcyUigZFtCXFst4dlsvddrxyqT1f17+2cFSdu7+ynLmXBK 7abQ3rwJY8SbRO2iRulogc5vr/RLMMlscDAiDkaFQWLoqHHOdfO9rURssHNN8WkM nQfvUewRz80hSnVlcmdlbiBHcm9zcyA8amdyb3NzQG5vdmVsbC5jb20+wsB5BBMB AgAjBQJTjHDXAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/ Ey8PUQf/ehmgCI9jB9hlgexLvgOtf7PJnFOXgMLdBQgBlVPO3/D9R8LtF9DBAFPN hlrsfIG/SqICoRCqUcJ96Pn3P7UUinFG/I0ECGF4EvTE1jnDkfJZr6jrbjgyoZHi w/4BNwSTL9rWASyLgqlA8u1mf+c2yUwcGhgkRAd1gOwungxcwzwqgljf0N51N5Jf VRHRtyfwq/ge+YEkDGcTU6Y0sPOuj4Dyfm8fJzdfHNQsWq3PnczLVELStJNdapwP OoE+lotufe3AM2vAEYJ9rTz3Cki4JFUsgLkHFqGZarrPGi1eyQcXeluldO3m91NK /1xMI3/+8jbO0tsn1tqSEUGIJi7ox80eSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1 c2UuZGU+wsB5BBMBAgAjBQJTjHDrAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgEC F4AACgkQsN6d1ii/Ey+LhQf9GL45eU5vOowA2u5N3g3OZUEBmDHVVbqMtzwlmNC4 k9Kx39r5s2vcFl4tXqW7g9/ViXYuiDXb0RfUpZiIUW89siKrkzmQ5dM7wRqzgJpJ wK8Bn2MIxAKArekWpiCKvBOB/Cc+3EXE78XdlxLyOi/NrmSGRIov0karw2RzMNOu 5D+jLRZQd1Sv27AR+IP3I8U4aqnhLpwhK7MEy9oCILlgZ1QZe49kpcumcZKORmzB TNh30FVKK1EvmV2xAKDoaEOgQB4iFQLhJCdP1I5aSgM5IVFdn7v5YgEYuJYx37Io N1EblHI//x/e2AaIHpzK5h88NEawQsaNRpNSrcfbFmAg987ATQRTjHAWAQgAyzH6 AOODMBjgfWE9VeCgsrwH3exNAU32gLq2xvjpWnHIs98ndPUDpnoxWQugJ6MpMncr 0xSwFmHEgnSEjK/PAjppgmyc57BwKII3sV4on+gDVFJR6Y8ZRwgnBC5mVM6JjQ5x Dk8WRXljExRfUX9pNhdE5eBOZJrDRoLUmmjDtKzWaDhIg/+1Hzz93X4fCQkNVbVF LELU9bMaLPBG/x5q4iYZ2k2ex6d47YE1ZFdMm6YBYMOljGkZKwYde5ldM9mo45mm we0icXKLkpEdIXKTZeKDO+Hdv1aqFuAcccTg9RXDQjmwhC3yEmrmcfl0+rPghO0I v3OOImwTEe4co3c1mwARAQABwsBfBBgBAgAJBQJTjHAWAhsMAAoJELDendYovxMv Q/gH/1ha96vm4P/L+bQpJwrZ/dneZcmEwTbe8YFsw2V/Buv6Z4Mysln3nQK5ZadD 534CF7TDVft7fC4tU4PONxF5D+/tvgkPfDAfF77zy2AH1vJzQ1fOU8lYFpZXTXIH b+559UqvIB8AdgR3SAJGHHt4RKA0F7f5ipYBBrC6cyXJyyoprT10EMvU8VGiwXvT yJz3fjoYsdFzpWPlJEBRMedCot60g5dmbdrZ5DWClAr0yau47zpWj3enf1tLWaqc suylWsviuGjKGw7KHQd3bxALOknAp4dN3QwBYCKuZ7AddY9yjynVaD5X7nF9nO5B jR/i1DG86lem3iBDXzXsZDn8R38=3D =3D2wuH -----END PGP PUBLIC KEY BLOCK----- --------------m0sXaX0k2kxORrZ0SHmv0P9E-- --------------zBG5RQTbKLSbzBmNY9ngYHOz-- --------------D0k5nQJXdvVYMcmF7Z7ilEQw Content-Type: application/pgp-signature; name="OpenPGP_signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="OpenPGP_signature" -----BEGIN PGP SIGNATURE----- wsB5BAABCAAjFiEEhRJncuj2BJSl0Jf3sN6d1ii/Ey8FAmSG0mcFAwAAAAAACgkQsN6d1ii/Ey/c 4wf/QMdhTsNnA4kSAlXW/ipcsvIEuOEIOKMTB4VUwf7MAwC9ocVX3iCqd9SGwjoB9QZsGMNO8TWn APr6CQ7QB+Up4Zli1zi/peGDz1rqFuCVdUDZ2KTy9a5/di7p2c9tk8Scll+cGeMRcP/LDVG0TT3h P7eP8BuyJx7Gs/2+kHAeJtqzxpEApcSX4JNwBBAFn3LBkhWMn9lkzBrDeZ2U3KbEcfTa2zbqglyI lS9BwXxneDnrJHXtojciajwEUBUNjagYHqj1dZlJyYX0LuMX9L2fH2veLLoGDINOJZtPltWyDMwe 0GEeOTbp9YlpOEhIy6QO2cOJS/I4jUa57++qTJp0jg== =N0Xo -----END PGP SIGNATURE----- --------------D0k5nQJXdvVYMcmF7Z7ilEQw-- From xen-devel-bounces@lists.xenproject.org Mon Jun 12 08:10:10 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 08:10:10 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546910.854000 (Exim 4.92) (envelope-from ) id 1q8cci-0008Pz-4E; Mon, 12 Jun 2023 08:10:00 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546910.854000; Mon, 12 Jun 2023 08:10:00 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8cci-0008Ps-1Z; Mon, 12 Jun 2023 08:10:00 +0000 Received: by outflank-mailman (input) for mailman id 546910; Mon, 12 Jun 2023 08:09:59 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8ccg-0008Pj-SI for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 08:09:59 +0000 Received: from esa6.hc3370-68.iphmx.com (esa6.hc3370-68.iphmx.com [216.71.155.175]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 835a2400-08f8-11ee-8611-37d641c3527e; Mon, 12 Jun 2023 10:09:55 +0200 (CEST) Received: from mail-bn8nam04lp2048.outbound.protection.outlook.com (HELO NAM04-BN8-obe.outbound.protection.outlook.com) ([104.47.74.48]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 12 Jun 2023 04:09:48 -0400 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) by SJ0PR03MB6327.namprd03.prod.outlook.com (2603:10b6:a03:399::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.46; Mon, 12 Jun 2023 08:09:46 +0000 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::3474:a81:a100:1529]) by SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::3474:a81:a100:1529%6]) with mapi id 15.20.6455.043; Mon, 12 Jun 2023 08:09:45 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 835a2400-08f8-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686557395; h=date:from:to:cc:subject:message-id:references: content-transfer-encoding:in-reply-to:mime-version; bh=iHzaxKIUbo1u9cFdhRHVdQCO7dAfkf/39pXJwMz1nUg=; b=TuvHtfq0DyVyp4BRX7A4pdwXd43DKTMxn9SOmQvKQQpzjivcG0g20upu 3zCTkVu752eh+DB45OZliBVZJvyF0hzkF+52ADssiRitNq/tin4ys3hSS qpAaIhjh7ju6ZMDg4JjlxkCbiAyHoajjvDYick6nWvykhAtk35M5wEjNa Q=; X-IronPort-RemoteIP: 104.47.74.48 X-IronPort-MID: 111751997 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:Bnkjx6wIzIrPA2DKsjh6t+d0xirEfRIJ4+MujC+fZmUNrF6WrkUCx mNNW2uOPvyDZzTzLdhyYIu/8k4HsceDyIVgTVBs/iAxQypGp/SeCIXCJC8cHc8wwu7rFxs7s ppEOrEsCOhuExcwcz/0auCJQUFUjP3OHfykTrafYEidfCc8IA85kxVvhuUltYBhhNm9Emult Mj75sbSIzdJ4RYtWo4vw/zF8EsHUMja4mtC5QRgPKoT5TcyqlFOZH4hDfDpR5fHatE88t6SH 47r0Ly/92XFyBYhYvvNfmHTKxBirhb6ZGBiu1IOM0SQqkEqSh8ai87XAME0e0ZP4whlqvgqo Dl7WT5cfi9yVkHEsLx1vxC1iEiSN4UekFPMCSDXXcB+UyQq2pYjqhljJBheAGEWxgp4KX4V8 +YHNCkEVxrAoMynnImGZ9Ns1tt2eaEHPKtH0p1h5RfwKK56BLrlE+DN79Ie2yosjMdTG/qYf 9AedTdkcBXHZVtIJ0sTD5U92uyvgxETcRUB8A7T+fVxvDSVkFwZPLvFabI5fvSQQspYhACAr 3/u9GXlGBAKcteYzFJp91r137aQwHqqCd16+LuQyeZMjGyNyDwqVRRJeVKRsMC/qGWzVIcKQ 6AT0m90xUQoz2SnQ9z8dxy+vn+fvxQYVsZQEus18wWEwOzf5APxLmEURDlMQN8rrsk7QXom1 TehltzqLSZivL2cVTSW8bL8hSi0ODQHIHUqZiIeSwYBpd75r+kbgheKQtt9HaqdlND5GTjsh TuNqUAWgrwJiMcR2qaT/FbZgimtrJzEUg404ArMWmuvqAh+YeaNY42u9Eie5/JHJ4WxUFaMp j4HltKY4eRICouC/ASJQeMQDPSq6uyDPTn0n1FiBd8i+i6r9nrleppfiBluKUEsPssadDvBZ E7IpRgX9JJVJGGtb6J8f8S2EctC8ET7PdHsV/SRZNweZJF0LFOD5Hs2OR7W2H3xmk8xl615I Y2cbcunEXcdD+Jg0SayQOAel7Qsw0jS2F/ueHwy9Dz/uZL2WZJfYe1t3IemBgzh0J65nQ== IronPort-HdrOrdr: A9a23:UBBpDaPo6PrRL8BcTjejsMiBIKoaSvp037BK7S1MoNJuEvBw9v re+sjzsCWftN9/Yh4dcLy7VpVoBEmsl6KdgrNhWotKPjOW21dARbsKheffKn/bakjDH4Zmvp uIGJIObOEYY2IasS77ijPIbOrJwrO8gd6VbTG19QYdceloAZsQnzuQEmygYzRLrJEtP+tFKH KbjPA33waISDAsQemQIGIKZOTHr82jruObXfZXbyRXkzVnlFmTmcTHLyQ= X-Talos-CUID: 9a23:I5p+cGy0fFtgfcDh9MACBgULQcY/bWHExU7aYGiWGDpSdZCvSQ+PrfY= X-Talos-MUID: =?us-ascii?q?9a23=3AV72ZJw8aP7Cr3jMR9yWnZYmQf/hwxaifFk5dqMg?= =?us-ascii?q?P5OWNHz1JPRW2gTviFw=3D=3D?= X-IronPort-AV: E=Sophos;i="6.00,236,1681185600"; d="scan'208";a="111751997" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=dSqkSHt7/pSIOTrT75Ops3buGgZhWXa94OrNcJIUB7MSY5AhD7e4Tow83J2ZbIuEsGaG4vxAfK2DY43Go0hM2MbiLJ3NpCQeTaHk94N6IIr3xjjlLBYMDsD4FZoDayZk2LiNK8tiaiEFJm+XVI0K7AACUk2D50xtEtQlCfW9KFZZCMPoyVVLVFV/SnCgw+8Z4PiEKNbSCb8pVSSB884UIzqIsJ1s78jFt/3K8+YnbpOwQ+zaKDQpQUbNs4ytw1m8m5/oRPcIu/4HrezKRnkuEkm8oN9TvAIjFVzzCq3B3++z7rYNK2P2IHpdZYYdemYI18tVLrHRKByi6/FA1jh0gw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=1Z63R6Id1ABI9rujzXIHpOLD8BeAuCiLoI8/AFT5TQY=; b=cVgp0gQFtnxmAwDg35A6dri2dXipsfRZov78b2AZIu1Np/P45PXn9yOA943cmZXN8TXrA0qqY2Zde+XS+o7JCCsWaBWyJ9rXNjW9NajtSfaVh0x6/dVNVGtJ0QKqMSmfTpTXYe/lW/VGGykZIoBHQ9d/uod++eA/Pl6wuSJMKglXQSVKl/EHLBRPsKW+d/s1oVlkyXrjYSXfkgMXOf/0rxOtFepQ3Men3ZtVIZ59BxOyWvF80BofCdVNNFi8TirWDWNR9ebmKkr1Za9iPzev1ZCO5S0TWlrv0vvSUUW2rqHRk4Ql5evjGc5LYqoTpvU2Ay2OMLyENzI2pp74xT+96w== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=1Z63R6Id1ABI9rujzXIHpOLD8BeAuCiLoI8/AFT5TQY=; b=HZb8Fm+sbmXGmrfpToGgp1Rx3Xe7N1O8GgziE/5tHn0olX1wFU8DoDui6ZRFkAKKfOUsUKAPsB89xhixtzSmOTHj5Tzb5B/tFoHDuLuAURkcFPTPHiqvYfoxLgurN6L47KxPyYeDOPdY9fULqrlTgs4x1wBygqEEIuyJ0mEaCT0= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Date: Mon, 12 Jun 2023 10:09:39 +0200 From: Roger Pau =?utf-8?B?TW9ubsOp?= To: Demi Marie Obenour Cc: Jens Axboe , Alasdair Kergon , Mike Snitzer , dm-devel@redhat.com, Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= , linux-block@vger.kernel.org, linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org Subject: Re: [PATCH v2 13/16] xen-blkback: Implement diskseq checks Message-ID: References: <20230530203116.2008-1-demi@invisiblethingslab.com> <20230530203116.2008-14-demi@invisiblethingslab.com> Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: X-ClientProxiedBy: LO4P123CA0305.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:196::22) To SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|SJ0PR03MB6327:EE_ X-MS-Office365-Filtering-Correlation-Id: a7ae785c-bbf3-438d-a45b-08db6b1c6253 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 73vCY+kgJLnSULPHQ3Ip/by0SO51Du2Lr/Wxwh3J1e7AA9gqFQ4xRQFQrWJHV9xToFkpAQc7YJAelOyvHX3Pumgo7TZWhzckcycFcXnT3HW+NQPvXGb5NRNUIxszPidrIOzZBYbfnxOXorM1gLmrndLlQ2SdPvhzu7lUlkaSSyvYQABjjFA+x8SEyYDvXTBPV4VQwzVNoBuxunlF/sQUnzBmuVL6bckILLSw2wuMrpvVJejw5azwkVCKBG9AyqBwfyII1K9d6BGQxkYxAzwDikEqFMWW6rpo1f5g4RFcA1/zbhIIJFZ2CvEYmbKrU24xT1GLqHU2/+WKXqr4aqcszhvCvzKYAVcFOIcsMTS0jKtbQyIvXP0Tt7Rydi+INcirgjyUM53KYB0iTEcFCKbtb6sydWCpRrZb7s1wN4gjYisHw95QKTNGFrx14gvvpmgN00zLmJm2fO/eAv+XTqLdTtFLDUgBDSD/OJQfsZ01apHIAfB62026O+wAIRBcJRsiDQtU84lNUxQhKWgx/06GCeQi4xwmpVkkpnzNAG8N+cjg7aEwCDPXSSZK/I4ZvqFL X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(7916004)(346002)(396003)(376002)(366004)(39860400002)(136003)(451199021)(86362001)(6486002)(316002)(8676002)(33716001)(41300700001)(82960400001)(83380400001)(5660300002)(26005)(38100700002)(85182001)(6512007)(9686003)(6506007)(6666004)(8936002)(66476007)(66556008)(4326008)(66946007)(6916009)(478600001)(186003)(2906002)(54906003);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?NWVkU3FEeGFramQxZWZHZkdJSkFzT1kwNTk0U2FKdGUvazRHNmY0NW5LZ1No?= =?utf-8?B?dHJiQU1FdUxqRkwzR2pWVDNBbkw5aUp1eU5ZYm9LSmZxc05iQkVFRU5IdmJD?= =?utf-8?B?dUswU2YwaHYzRkl5aEx1VWszeUtGSjY1cFlRZmRlRmZRTXZpOVhabXltcnBa?= =?utf-8?B?SkFxbjAyTEJjSlMrTHRNRHlZdkMwU2hLWERleFJpWnFBTzNzUHlwSHNlbnNx?= =?utf-8?B?Q2hzMEdEQnppcEJTdjd6dG1iZTBaQ3ptR3NKbkpReTk1ZytzN3ZMZHoyR1F5?= =?utf-8?B?YVRpL2tSZ0l0QnVwMjVxUGtCeHNBL2hIWWhjelFBcFF5MUxMVGxkbjBnbVQx?= =?utf-8?B?QkFCZE1NWVlLTVlZbmJjZENkaktxVW0vZjU3RzliRkhPU3hUUGs4SmJyZVRQ?= =?utf-8?B?MWdQL1BaeXBkWkJ2VmlHQU9UUTVOb1BlbXNlampXcjQxclExMUNwZVNFaG00?= =?utf-8?B?bHlWL0RETmxtYmpwRDAvc0tTOUh2Z2xPVWNkS2V3dWhsOHZ3dmJ3OUZqazVE?= =?utf-8?B?ZW1lNStYaGRRQjJrZHpBdktmSEI3Tjg3VEtSV2VBcU1BTGNFNkRSSS8rT215?= =?utf-8?B?eHNueGQycEpOcDBJcmRjM3dNWjNheXpuaXQyRWxWSDdRV09lWTE2UHdSTUov?= =?utf-8?B?aXpzZXFEWHdPaFpXMm9ZdlRSTDlKS1k5M2Y5K1NMQlR0U3FXY3N2NVM1Sjhj?= =?utf-8?B?SjVVUmY2ZlQ3Z2pha1dVSlJmVy92dlVFdTNJNGI0NjNYZXE2MnFoNHF6RUxv?= =?utf-8?B?RG45SGRKWDZBQTA3TjVqVVo4Sy8vdVpWSm8xRXFuMjIxbzkxZmRGNUdaSzhu?= =?utf-8?B?UHdFU2lyK0ViRUZUc0k0b01pQWh3eTE0R1RRNzlXVTI2S2RwUjhNRnZVR3No?= =?utf-8?B?WXo3dm9YUjJNdDZDaExrVVovYk5XektrSmw2SDRTbEpYaVlwaWI4OU94bkpB?= =?utf-8?B?b28rcGhKN09vQm4wRVVJSnh2czNUczVEUXZuZ2E5VWl2NlU2emMzZWRvRGly?= =?utf-8?B?M0ZNc0cxUzg4U3ZLUVJIZ2FVSVJic1NVOEtSdGgrazNqTXZiYWQxdDVVbFQ5?= =?utf-8?B?L3pXQTUvelRQOFFHMnMxbVpuUFoyOU85Rkc0R2xEblhpYk40SWRIdzNRZ0ZF?= =?utf-8?B?VGl2Z01vWE5RMU1haDdwckhESW5DS0xETHNyNzVNaVJaNHNXMGJRdGtmU09i?= =?utf-8?B?SFhSTUV4VEMxdXExZHNyODJJQ29RNVZkRFVUbFYreXNSck9xRlhIM1htaXg4?= =?utf-8?B?clVvVXp1MUpUMklXL3NsZkVtWWtTckNRWnFiY0dGWnFLaHZBZm9va2RxT0cz?= =?utf-8?B?elcveXBrR1FIU3k1d3MyS2praStidlFmdm9JQm9pYVlOZEtIR1Z3TDJ2d2Iz?= =?utf-8?B?SmNoUkw5MVdXdGNNU2RPRTdEV21JL0Q4SVBYQ21Mcmp1VUVLMFk5SmJ3bGRF?= =?utf-8?B?OTFQK1FTbWJNNWxXdHRmdW9QWkxQYlp4S0g4bVh5UWJscGlJc3FwZytwQ3hj?= =?utf-8?B?aWI3anR0ejR3bERyc1hnTXdZbDlEUThjR2pialVRM2VrNnphOHFjYklwM05w?= =?utf-8?B?L3hDQ21GbS9qTDdxS2FhNzV0b1IwbEZmQVc1RlBPQ3V4VzVDdjRWVXphelNT?= =?utf-8?B?b3NBRDhaYUJzUkZraDkvcFZndVF0V3g2eUM1cXZLWlAxNko0M041V3JxUzIv?= =?utf-8?B?TDI5aHlCNVUwRnByaTFVOGs3SzgxaFJyUTNUQUEyMEttZzcxc1RCT3dMR1I1?= =?utf-8?B?ZnUvSk4xdUo3ZlB1YTFzTnR5bHQxMGVOSnNVWThoaW91L2NqQW9tZnNTWlEr?= =?utf-8?B?bWtkN2FmRzljRFpjQ2I4U0ZiRmJ2c3FyV05iTjk1MUwrY2Q5UWJYU1gvU0Ni?= =?utf-8?B?WCszVFVPVis5U1BkZFFGNThzK0JiQmovQjR5dmh0VzBZNXk1OXd1Mytudmx6?= =?utf-8?B?bFFvQUtiQURPVllxYmVZaGovak5EQ2lobFBVOWZhckZveHV1UlVqajJXNW1r?= =?utf-8?B?OTlMUlBsRTJOdGFyWnRCS2ZnSWR5QkdEeElIQ2JrNUJmekZoVVJCanZrYWI4?= =?utf-8?B?UWozU2ZXZzA5V21ZSk1pY0pXdnh1dVNSb0liNFhJQzZyaTRMS2gxblF4Vi8y?= =?utf-8?Q?/db9FsSJqxFD95oa2xYErsmKA?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: =?utf-8?B?aS9helZMUkd1L1BpOEFGYnZoYUpVTHN3bFhGOWZsVWt5RCtWdEI1WEZGZ2dV?= =?utf-8?B?QXJxNkEyN05Jd0p5S3c5U3RYbDZDNnNVK2hIbWVrTHN2QmEyQ0lHTDZ4aFpX?= =?utf-8?B?cnJkN01iNFlsTzNLZmZ0NkF3UDBCN25PdzhJWTloL0tPaHNEekt4cXlUVDdX?= =?utf-8?B?aGd5cENNZVNlbXlxbWVFQytBclBiSFNvWTFXUmlEUE03dTBTOHJTdzdMbmNZ?= =?utf-8?B?MUpyMi92VmNabWRsWWlOMFY2M0ROR1E5c0lZQ2tEWDRONVhFZkZLZmpjNUVI?= =?utf-8?B?ZUFURTExWFRNQkczTmxwSXRoZURlYXdsRTZtRnI0VzhvalZ5RjRCTks2ZFRW?= =?utf-8?B?cXBHcFRMWTZNOGh1WEtLdGI3Y1VQNU9IYTVySnY1VWtMT1lQTGh6dzlQVkRK?= =?utf-8?B?bUpYYVJyaDY0SVRuS3lkNGgzMCsweldYZ2hsZDBxWGRpWUh3Zkx5RExCRkd3?= =?utf-8?B?TFJlQndDdEZ0ZGUxUStYd1BqVnJ1ZlpTTEdBYmNYU3J2bkRMa0xEQlNPUlRE?= =?utf-8?B?WVFSZTQxQTE2WE5aNnBBMkRORXJ6NFArcTFVSUw3dGtZSjVxVkFqTjRkbnpT?= =?utf-8?B?QVpVUTRTTmpnbjBQR3pzT1Y0RURRQWZFclROb0hCeGVkOVRmdms3UkNLenp4?= =?utf-8?B?WTdvZHZ5dDJtMjE2VVRRWjh5SjNzSFgrTnUzbXRMTmhOSUVTM2J2bE9nc1pw?= =?utf-8?B?Z0d2QUkwdUx5bVBjL0EzQ1R2ODZoU1BrM1Vtdm02dWduRW11N0daZGpOaUZE?= =?utf-8?B?NHpVR1piYjFHbzNYN0ZQOTJ0ZlVmWTlsU205a0NRZ3BwbllJTjZCWHIwTjVv?= =?utf-8?B?Rzh4enF1dFNUNlFrczduWFVqNys5WGI2dklmT1B3WnIySzN6cnY2T2ovVjlG?= =?utf-8?B?c2hPcXhFeWQ3Z2NUUGNObWI4N1NVVGk2MVIzMG9kVzdWMUxBcWNlOEs5SnE3?= =?utf-8?B?ZTRXcGFUQnMxTm8vOWlSNXNpazc2TGtpTC9qSEZhaFpxMTZLSVg0QU12L09p?= =?utf-8?B?QmFrbkFDc1FGOGFPeTlyV0hGNFVmT3lydXJXN25TSUR3SUxKaUxYeG5wVlVB?= =?utf-8?B?U1FBWWZSSWV3bjhlcUJuNzNNOEhsY0J5R2hZZjNGdXQ0MldlZk11aVlYVnBG?= =?utf-8?B?TVR5Q3hoODFheUFaQW12YmphdzFRSmVwdzFOYlJVRGFZMGxiQ3ZRZjkwSCtM?= =?utf-8?B?clNzbUZHSjBwUlJTTnkraXZEOUdOYkZvb1Jvd2ZhSnR5dmRrMlF4VEhJZjNP?= =?utf-8?B?UUN2cXhUbm5KQlRqYlFzUE5uaDNEMEQzWHl3a284MTk5SmVZQT09?= X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: a7ae785c-bbf3-438d-a45b-08db6b1c6253 X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Jun 2023 08:09:45.8273 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: HGNvJOed2Ea3bOGcbPHjCYhswakBYpanlFDGxULTuALBdXegRFp5zY0XEv9nr8uJXomlhRA1lvz15CH+G7dksg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR03MB6327 On Fri, Jun 09, 2023 at 12:55:39PM -0400, Demi Marie Obenour wrote: > On Fri, Jun 09, 2023 at 05:13:45PM +0200, Roger Pau Monné wrote: > > On Thu, Jun 08, 2023 at 11:33:26AM -0400, Demi Marie Obenour wrote: > > > On Thu, Jun 08, 2023 at 10:29:18AM +0200, Roger Pau Monné wrote: > > > > On Wed, Jun 07, 2023 at 12:14:46PM -0400, Demi Marie Obenour wrote: > > > > > On Wed, Jun 07, 2023 at 10:20:08AM +0200, Roger Pau Monné wrote: > > > > > > Can you fetch a disk using a diskseq identifier? > > > > > > > > > > Not yet, although I have considered adding this ability. It would be > > > > > one step towards a “diskseqfs” that userspace could use to open a device > > > > > by diskseq. > > > > > > > > > > > Why I understand that this is an extra safety check in order to assert > > > > > > blkback is opening the intended device, is this attempting to fix some > > > > > > existing issue? > > > > > > > > > > Yes, it is. I have a block script (written in C) that validates the > > > > > device it has opened before passing the information to blkback. It uses > > > > > the diskseq to do this, but for that protection to be complete, blkback > > > > > must also be aware of it. > > > > > > > > But if your block script opens the device, and keeps it open until > > > > blkback has also taken a reference to it, there's no way such device > > > > could be removed and recreated in the window you point out above, as > > > > there's always a reference on it taken? > > > > > > This assumes that the block script is not killed in the meantime, > > > which is not a safe assumption due to timeouts and the OOM killer. > > > > Doesn't seem very reliable to use with delete-on-close either then. > > That’s actually the purpose of delete-on-close! It ensures that if the > block script gets killed, the device is automatically cleaned up. Block script attach getting killed shouldn't prevent the toolstack from performing domain destruction, and thus removing the stale block device. OTOH if your toolstack gets killed then there's not much that can be done, and the system will need intervention in order to get back into a sane state. Hitting OOM in your control domain however is unlikely to be handled gracefully, even with delete-on-close. > > > > Then the block script will open the device by diskseq and pass the > > > > major:minor numbers to blkback. > > > > > > Alternatively, the toolstack could write both the diskseq and > > > major:minor numbers and be confident that it is referring to the > > > correct device, no matter how long ago it got that information. > > > This could be quite useful for e.g. one VM exporting a device to > > > another VM by calling losetup(8) and expecting a human to make a > > > decision based on various properties about the device. In this > > > case there is no upper bound on the race window. > > > > Instead of playing with xenstore nodes, it might be better to simply > > have blkback export on sysfs the diskseq of the opened device, and let > > the block script check whether that's correct or not. That implies > > less code in the kernel side, and doesn't pollute xenstore. > > This would require that blkback delay exposing the device to the > frontend until the block script has checked that the diskseq is correct. This depends on your toolstack implementation. libxl won't start the domain until block scripts have finished execution, and hence the block script waiting for the sysfs node to appear and check it against the expected value would be enough. > Much simpler for the block script to provide the diskseq in xenstore. > If you want to avoid an extra xenstore node, I can make the diskseq part > of the physical-device node. I'm thinking that we might want to introduce a "physical-device-uuid" node and use that to provide the diskseq to the backened. Toolstacks (or block scripts) would need to be sure the "physical-device-uuid" node is populated before setting "physical-device", as writes to that node would still trigger blkback watch. I think using two distinct watches would just make the logic in blkback too complicated. My preference would be for the kernel to have a function for opening a device identified by a diskseq (as fetched from "physical-device-uuid"), so that we don't have to open using major:minor and then check the diskseq. Thanks, Roger. From xen-devel-bounces@lists.xenproject.org Mon Jun 12 08:23:53 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 08:23:53 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546915.854011 (Exim 4.92) (envelope-from ) id 1q8cpm-0001Et-1m; Mon, 12 Jun 2023 08:23:30 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546915.854011; Mon, 12 Jun 2023 08:23:30 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8cpl-0001EX-Rh; Mon, 12 Jun 2023 08:23:29 +0000 Received: by outflank-mailman (input) for mailman id 546915; Mon, 12 Jun 2023 08:23:27 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8cpj-0001ER-L8 for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 08:23:27 +0000 Received: from verein.lst.de (verein.lst.de [213.95.11.211]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 662509e9-08fa-11ee-8611-37d641c3527e; Mon, 12 Jun 2023 10:23:24 +0200 (CEST) Received: by verein.lst.de (Postfix, from userid 2407) id AFD2468BFE; Mon, 12 Jun 2023 10:23:20 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 662509e9-08fa-11ee-8611-37d641c3527e Date: Mon, 12 Jun 2023 10:23:20 +0200 From: Christoph Hellwig To: Juergen Gross Cc: Christoph Hellwig , Marek =?iso-8859-1?Q?Marczykowski-G=F3recki?= , Stefano Stabellini , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , x86@kernel.org, "H. Peter Anvin" , Ben Skeggs , Karol Herbst , Lyude Paul , xen-devel@lists.xenproject.org, iommu@lists.linux.dev, linux-kernel@vger.kernel.org, nouveau@lists.freedesktop.org Subject: Re: [PATCH 2/4] x86: always initialize xen-swiotlb when xen-pcifront is enabling Message-ID: <20230612082320.GA27052@lst.de> References: <20230518134253.909623-1-hch@lst.de> <20230518134253.909623-3-hch@lst.de> <20230519040405.GA10818@lst.de> <20230607131257.GB19206@lst.de> <79b26dac-b507-1c05-b499-784ca6ee3db0@suse.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.17 (2007-11-01) Thank you. I'll queue it up as a separate patch. From xen-devel-bounces@lists.xenproject.org Mon Jun 12 08:58:45 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 08:58:45 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546921.854021 (Exim 4.92) (envelope-from ) id 1q8dNP-0002Fu-B7; Mon, 12 Jun 2023 08:58:15 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546921.854021; Mon, 12 Jun 2023 08:58:15 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8dNP-0002FY-5c; Mon, 12 Jun 2023 08:58:15 +0000 Received: by outflank-mailman (input) for mailman id 546921; Mon, 12 Jun 2023 08:58:14 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8dNO-0002FS-Nr for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 08:58:14 +0000 Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 41bcff68-08ff-11ee-8611-37d641c3527e; Mon, 12 Jun 2023 10:58:11 +0200 (CEST) Received: from [192.168.1.142] (unknown [151.57.12.77]) by support.bugseng.com (Postfix) with ESMTPSA id 860804EE073E; Mon, 12 Jun 2023 10:58:09 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 41bcff68-08ff-11ee-8611-37d641c3527e Message-ID: Date: Mon, 12 Jun 2023 10:58:08 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.12) Gecko/20050929 Thunderbird/1.0.7 Fedora/1.0.7-1.1.fc4 Mnenhy/0.7.3.0 Subject: Re: [PATCH] docs/misra: new rules addition Content-Language: en-US To: Jan Beulich Cc: julien@xen.org, andrew.cooper3@citrix.com, roger.pau@citrix.com, bertrand.marquis@arm.com, Stefano Stabellini , xen-devel@lists.xenproject.org, Stefano Stabellini References: <20230607013810.3385316-1-sstabellini@kernel.org> <955f134b-75b8-f8a4-2e02-ae6def536ffb@suse.com> <6a8f2634-8580-e757-c57e-821387642fdc@suse.com> From: Roberto Bagnara In-Reply-To: <6a8f2634-8580-e757-c57e-821387642fdc@suse.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit On 09/06/23 10:46, Jan Beulich wrote: > On 08.06.2023 13:02, Roberto Bagnara wrote: >> On 07/06/23 23:53, Stefano Stabellini wrote: >>> On Wed, 7 Jun 2023, Jan Beulich wrote: >>>>> + * - `Rule 5.6 `_ >>>>> + - Required >>>>> + - A typedef name shall be a unique identifier >>>>> + - >>>> >>>> Considering that the rule requires uniqueness across the entire code >>>> base (and hence precludes e.g. two functions having identically named >>>> local typedefs), I'm a little puzzled this was adopted. I for one >>>> question that a use like the one mentioned is really at risk of being >>>> confusing. Instead I think that the need to change at least one of >>>> the names is at risk of making the code less readable then, even if >>>> ever so slightly. (All of this said - I don't know if we have any >>>> violations of this rule.) >>> >>> I don't think we have many local typedefs and I think we have only few >>> violations if I remember right. I'll let Roberto confirm how many. This >>> rule was considered not a difficult rule (some difficult rules were >>> found, namely 2.1, 5.5 and 7.4.) >> >> There currently are 30 violations for ARM64: >> >> - some involve a typedef module_name (in the call it was said this should >> be renamed module_name_t, which will solve the issue); >> - most concern repeated typedefs (UINT64 and similar) which are repeated >> in xen/arch/arm/include/asm/arm64/efibind.h >> and xen/include/acpi/actypes.h >> - ret_t and phys_addr_t are also redefined in a couple of places. >> >> There are 90 violations for X86_64, for the same reasons, plus >> >> - another set of typedefs for basic types (such as u8); >> - repeated typedefs for things like guest_l1e_t in the same header file: >> >> xen/arch/x86/include/asm/guest_pt.h:60.39-60.49: >> for program `xen/.xen-syms.0', the identifier for typedef `guest_l1e_t' is reused >> xen/arch/x86/include/asm/guest_pt.h:128.22-128.32: >> for program `xen/.xen-syms.0', the identifier for typedef `guest_l1e_t' is reused >> >> The indicated lines read as follows: >> >> typedef struct { guest_intpte_t l1; } guest_l1e_t; >> typedef l1_pgentry_t guest_l1e_t; > > So this is an example where I don't think we can sensibly do away with the > re-use of the same typedef name: We use it so we can build the same source > files multiple ways, dealing with different paging modes guests may be in. Typedefs being used this way can be deviated with tool configuration. Here is a list of candidates for that treatment: guest_intpte_t guest_l1e_t guest_l2e_t ret_ I am not sure about the latter. Please let me know if this is what you would prefer and possible additions to/removals from the above list. Kind regards, Roberto From xen-devel-bounces@lists.xenproject.org Mon Jun 12 09:08:03 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 09:08:03 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546927.854031 (Exim 4.92) (envelope-from ) id 1q8dWn-0003zm-4f; Mon, 12 Jun 2023 09:07:57 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546927.854031; Mon, 12 Jun 2023 09:07:57 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8dWn-0003zf-23; Mon, 12 Jun 2023 09:07:57 +0000 Received: by outflank-mailman (input) for mailman id 546927; Mon, 12 Jun 2023 09:07:55 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8dWl-0003zV-Pu; Mon, 12 Jun 2023 09:07:55 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8dWl-00016L-Ma; Mon, 12 Jun 2023 09:07:55 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8dWl-0003uV-8P; Mon, 12 Jun 2023 09:07:55 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q8dWl-0006c5-7u; Mon, 12 Jun 2023 09:07:55 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=hsHZq4qmSw9va5NOG47NDoZ30Dyvn54cB/4gXQ6kaxY=; b=NwQT1UPctOGI7Nla+0wuEtKieV HQo/HIX4TcsZWoyhe6MMoLNImb0KqfDM1nCy/AiG+AtYomYz5F2g0rbN/J3yIvTERuTZpexEAP+S0 MMeZ1OV/fzAE5FE2tQNCvF5ZNreStIR77CjgzrjCdTTYQrcNt4TzAKIyhn6YAo/vBJbE=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable test] 181385: tolerable FAIL X-Osstest-Failures: xen-unstable:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:debian-hvm-install:fail:heisenbug xen-unstable:test-amd64-amd64-xl-qcow2:guest-start/debian.repeat:fail:heisenbug xen-unstable:test-amd64-i386-qemuu-rhel6hvm-amd:xen-install:fail:heisenbug xen-unstable:test-amd64-amd64-libvirt-vhd:guest-start/debian.repeat:fail:heisenbug xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-raw:hosts-allocate:starved:nonblocking xen-unstable:test-arm64-arm64-xl:hosts-allocate:starved:nonblocking xen-unstable:test-arm64-arm64-libvirt-xsm:hosts-allocate:starved:nonblocking xen-unstable:test-arm64-arm64-xl-xsm:hosts-allocate:starved:nonblocking xen-unstable:test-arm64-arm64-xl-vhd:hosts-allocate:starved:nonblocking xen-unstable:test-arm64-arm64-xl-credit1:hosts-allocate:starved:nonblocking xen-unstable:test-arm64-arm64-xl-thunderx:hosts-allocate:starved:nonblocking xen-unstable:test-arm64-arm64-xl-credit2:hosts-allocate:starved:nonblocking X-Osstest-Versions-This: xen=b4642c32c4d079916d5607ddda0232aae5e1690e X-Osstest-Versions-That: xen=b4642c32c4d079916d5607ddda0232aae5e1690e From: osstest service owner Date: Mon, 12 Jun 2023 09:07:55 +0000 flight 181385 xen-unstable real [real] http://logs.test-lab.xenproject.org/osstest/logs/181385/ Failures :-/ but no regressions. Tests which are failing intermittently (not blocking): test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 12 debian-hvm-install fail in 181373 pass in 181385 test-amd64-amd64-xl-qcow2 21 guest-start/debian.repeat fail in 181373 pass in 181385 test-amd64-i386-qemuu-rhel6hvm-amd 7 xen-install fail pass in 181373 test-amd64-amd64-libvirt-vhd 19 guest-start/debian.repeat fail pass in 181373 Tests which did not succeed, but are not blocking: test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 181373 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop fail like 181373 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 181373 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 181373 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop fail like 181373 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop fail like 181373 test-armhf-armhf-libvirt 16 saverestore-support-check fail like 181373 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail like 181373 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail like 181373 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 181373 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop fail like 181373 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 181373 test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-i386-xl-pvshim 14 guest-start fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-i386-libvirt 15 migrate-support-check fail never pass test-amd64-i386-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-armhf-armhf-xl-multivcpu 15 migrate-support-check fail never pass test-armhf-armhf-xl-multivcpu 16 saverestore-support-check fail never pass test-amd64-i386-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-xl 15 migrate-support-check fail never pass test-armhf-armhf-xl 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-armhf-armhf-xl-credit1 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass test-armhf-armhf-xl-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 15 saverestore-support-check fail never pass test-armhf-armhf-xl-arndale 15 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 16 saverestore-support-check fail never pass test-armhf-armhf-xl-credit2 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit2 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt 15 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 15 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 3 hosts-allocate starved in 181373 n/a test-arm64-arm64-xl 3 hosts-allocate starved in 181373 n/a test-arm64-arm64-libvirt-xsm 3 hosts-allocate starved in 181373 n/a test-arm64-arm64-xl-xsm 3 hosts-allocate starved in 181373 n/a test-arm64-arm64-xl-vhd 3 hosts-allocate starved in 181373 n/a test-arm64-arm64-xl-credit1 3 hosts-allocate starved in 181373 n/a test-arm64-arm64-xl-thunderx 3 hosts-allocate starved in 181373 n/a test-arm64-arm64-xl-credit2 3 hosts-allocate starved in 181373 n/a version targeted for testing: xen b4642c32c4d079916d5607ddda0232aae5e1690e baseline version: xen b4642c32c4d079916d5607ddda0232aae5e1690e Last test of basis 181385 2023-06-12 01:53:36 Z 0 days Testing same since (not found) 0 attempts jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64-xtf pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-prev pass build-i386-prev pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-xtf-amd64-amd64-1 pass test-xtf-amd64-amd64-2 pass test-xtf-amd64-amd64-3 pass test-xtf-amd64-amd64-4 pass test-xtf-amd64-amd64-5 pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl pass test-amd64-i386-xl pass test-amd64-coresched-i386-xl pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-i386-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-i386-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-i386-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-i386-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-i386-qemut-rhel6hvm-amd pass test-amd64-i386-qemuu-rhel6hvm-amd fail test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-i386-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-freebsd10-amd64 pass test-amd64-amd64-qemuu-freebsd11-amd64 pass test-amd64-amd64-qemuu-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-i386-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-i386-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-i386-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-amd64-i386-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale pass test-amd64-amd64-examine-bios pass test-amd64-i386-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 pass test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 pass test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine pass test-amd64-i386-examine pass test-amd64-i386-freebsd10-i386 pass test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-i386-qemut-rhel6hvm-intel pass test-amd64-i386-qemuu-rhel6hvm-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt pass test-amd64-i386-libvirt pass test-amd64-amd64-livepatch pass test-amd64-i386-livepatch pass test-amd64-amd64-migrupgrade pass test-amd64-i386-migrupgrade pass test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu pass test-amd64-amd64-pair pass test-amd64-i386-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-i386-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-i386-xl-pvshim fail test-amd64-amd64-pygrub pass test-armhf-armhf-libvirt-qcow2 pass test-amd64-amd64-xl-qcow2 pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw pass test-amd64-i386-libvirt-raw pass test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds pass test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-amd64-i386-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-i386-examine-uefi pass test-amd64-amd64-libvirt-vhd fail test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd pass test-amd64-i386-xl-vhd pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Published tested tree is already up to date. From xen-devel-bounces@lists.xenproject.org Mon Jun 12 09:26:17 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 09:26:17 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546936.854041 (Exim 4.92) (envelope-from ) id 1q8doP-0007DP-OZ; Mon, 12 Jun 2023 09:26:09 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546936.854041; Mon, 12 Jun 2023 09:26:09 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8doP-0007DI-LU; Mon, 12 Jun 2023 09:26:09 +0000 Received: by outflank-mailman (input) for mailman id 546936; Mon, 12 Jun 2023 09:26:08 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8doO-0007DC-NX for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 09:26:08 +0000 Received: from EUR05-AM6-obe.outbound.protection.outlook.com (mail-am6eur05on20610.outbound.protection.outlook.com [2a01:111:f400:7e1b::610]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 2667ec73-0903-11ee-b232-6b7b168915f2; Mon, 12 Jun 2023 11:26:03 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by DBAPR04MB7303.eurprd04.prod.outlook.com (2603:10a6:10:1af::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.29; Mon, 12 Jun 2023 09:26:00 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.039; Mon, 12 Jun 2023 09:26:00 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 2667ec73-0903-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=lhBqQycalWoTjMl/RkmpdQWBvnqa9nCA/PHJrpIppyYvBaaI+0gyuyv2QB7/QmOIKUdfFxRlSWVEKzWFy4ZekYscxtXMQ0pGVYImfcl9mTIiRAuhGTySSGNmq/M7GwTnDioYSKrKq4iLTb26UmYwlduE39jxdAYl775g2P1oaQYhxPFkoxcKQhlPJ7tMhCa/MsyXNpcU5CLlrvxP4v9rFqTQh6yR8fb4y8HKvBDkHrwohARObBdGrNutdfkByEa1jyxPnLiCrjDYpHnZThjS8FmVcTR2BVOhPYqWGCqRYeeNYqjfFa2FYVm5Dzrnk6ihK1eiJlCtfO1m0YiGyBShTA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=09BtDNx9UzmBRFXX+TSgglDM/+A7VvsneM5XpypdoZ0=; b=guSXo+/Z8VQYkAvj5AC7qrt/s45HQEMwhVN603ooFO3xMcirteRcCouOj5juUPDqRfg9yxbAZtwzGbyavffcqnhIgRZA7h8B113tpVzGSvv0J6D/vrZ5lmLkZnF7tOHKGGbHN1ssCXBriok2oUuLpLFbrJggmZX7WkS6SedEHOsAZOvEKfX6yh4kfI7IGi7fpK7qzjqnpeJouFgZuoKZenrxJejIlvKgjOUdSt8s1K0gWYcE+I0bom86fMJovGefY3qQ1XJrcY/O9NgVI6WPoiu+Y961W+LCVzFiNCa2nhDeFIL/NzMcUie74Ow65Lt0Qe3kCH6ZhLnIyyfmt7UDLQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=09BtDNx9UzmBRFXX+TSgglDM/+A7VvsneM5XpypdoZ0=; b=DvwKeTzoUvmK52gg13qswTwQBBLLepObeFxgMPgWP5rcsJqhcZ5ybOlyaS7Q4T4i7OS8ihjnZznERML6WKMxCA8Uxm7pL6eRWPRsi8EziuvyUTfpqgkvSl0qV5WtfyykomPaplMKtyi7JjCSRS0+88KfbU/yRMd6GC21LdM3E4OmU6RjWki51rThI1JUadJjhr6YdvyjQQlYDAgYdA1VUZqLtv4/SmSLl+5NBFJIJNDiFP/pRN6LWfJAzFnl416fYKkUeiwEbJSEPh1co2GeinoS5gs+Oxwb8OMYN2Q+za0VJqglv8TYYthNJT9JgKxVc68PDuai6R3RDeKKJoY6xw== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: Date: Mon, 12 Jun 2023 11:25:58 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH] docs/misra: new rules addition Content-Language: en-US To: Roberto Bagnara Cc: julien@xen.org, andrew.cooper3@citrix.com, roger.pau@citrix.com, bertrand.marquis@arm.com, Stefano Stabellini , xen-devel@lists.xenproject.org, Stefano Stabellini References: <20230607013810.3385316-1-sstabellini@kernel.org> <955f134b-75b8-f8a4-2e02-ae6def536ffb@suse.com> <6a8f2634-8580-e757-c57e-821387642fdc@suse.com> From: Jan Beulich In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR3P281CA0205.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:a5::17) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|DBAPR04MB7303:EE_ X-MS-Office365-Filtering-Correlation-Id: 9dfacae3-4771-479b-4c88-08db6b2708fc X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: xKvwf60Bb/d8p8JmK5HzVoc6Es4gY0uYFXSeU2JsCR6LzxyVRyyaZkKm++1eFoiO73ZI7LXxISSa8NUUciH8KODd0oglatcM6nWl1feNn7OjtgOHFpow3dtcOm/VqSNGhCSz6q2tnjM3eYakxp8wKlTLkdwrvXRvvzZ/9bwwrWXZeRDLWTyl/iytKIVKLgpyaDh1/boqmuWlIrxobpm3X3+LfmY9AhjMX2IsUFaJPSGu5zWAWSNSXfU9yiNMgQIE5Aq5xyT1oHQpeUes5w1ee/hRNvJTJXhity3tTeje7ujL63BYnKMxglEyv9KZZ2PmLyDei84ITHX372GSJbGFY9IBMJoQL/3MQ1rIXgZzLMJ0/YddCvMB2BKS3VqsiIRqm405gjA+72uO+OPRjvLcbUffQxUSiDoVxiR1T9WBMb5azZiHbU0nYryyH9jBPu9bDiGzoziDS7VyRcPVm01PkeHD5kVvrt3iFM1Bgnf9TO+OlTwyNFp7MRg2rdSE5Hs7FeFMoyp641wmyS7ZFLTuq2REYkIm2Zp+DFJC+Y8LQL45mt/2534yKvSCmB/azx1Eg5KOa3b1HYZZ5OaYtWF2t2lDAujp2u4x/v4oJ2o79yszOvA+awjSxrg49s9ty/OlYcs28ibEQhvOPG/CeUkeGA== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(396003)(366004)(136003)(39850400004)(376002)(346002)(451199021)(31686004)(6916009)(66946007)(4326008)(66476007)(66556008)(36756003)(186003)(478600001)(2616005)(2906002)(66899021)(54906003)(8676002)(316002)(41300700001)(31696002)(86362001)(6486002)(6506007)(53546011)(8936002)(83380400001)(5660300002)(26005)(38100700002)(6512007)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?YkNCKzg2V256QW4xQWZlbllFSmVoL0Vvd1QwZmZ5N0Y1bFV3dlU3ak5Pams4?= =?utf-8?B?bVJtY2x6Y0xuWXkxdERFZnNTbWFoK3M5Zmg1aEtOc1VsWUlFMlRnenk0aFNj?= =?utf-8?B?Q1BOd1lqb1RKdUVmbDJCNGw3MTFiM2pYL0xUdHlLYjFWWWVYY1J5Wmh5cTM0?= =?utf-8?B?Q2ZGTmFkQU04WGpaMXRPeCtGRHRXdzE4MDZvL1RHZHhxRnFLS1hUdkZJYnFH?= =?utf-8?B?ZmtaZHU1dE9BRWdOaTFvREloNmVLL2xmVC9qTDJoLysxR2pibFpGVUZDL1Bs?= =?utf-8?B?V3pkeG15cWlpRVFlTHVSK2JaQXdEbWQ2MlRBenJOUVdnTURjdlQrZ1A5UlJF?= =?utf-8?B?SnhnUmJKZEhHZ2Jkd0Z6MkJaenJZL29USU5LcStBdWM4Z29yY1BxUXh1S0dH?= =?utf-8?B?TDB0Q214azZuaGdlVnhxZmFPYzJvdmZTdm0wa0VNTkpsbk14NVJtaXdSb3c4?= =?utf-8?B?MXdKS0J5Qlc5T2hTT2p0VEpqdG9UTlVYajltL09zQlM0QWp4dVIyRTJRZXEz?= =?utf-8?B?enptTE1XU0d1YWxJTzBWdm10a0tUMmlJM0F0L1dLd3ZnbkRac1ZvNVcyY05V?= =?utf-8?B?Q1ZlR3MwUVdUT0VZaDRHRktBMnU1Z21laXFRR3QreTRtZWtEQmMvOHJTbGJ6?= =?utf-8?B?eTc5RisvU2xLZFFTS3lqUnB5UTZlbTlIMm91d3ZGNEVyeHBFQ0I5UWVNY1Fi?= =?utf-8?B?WTkrRHZ0RFN4aXJaZ1lUcVFiZERZR2R3UVRzTUtmNmE3OFFBajFaSTZ2WDl5?= =?utf-8?B?ZWwyY0QwcWhQNHl4VHlDUHBGVnljMGptM1hxOWVBdmk2OVJtZTVMTGtpOUhv?= =?utf-8?B?RXZPYzRkVzZWQ25rZHJvUzRHMm9aaWpqbmcyYkhLU3EwcEVkZ0UweUtFa1U3?= =?utf-8?B?WHBaY01IeGpKdTNOREZBamZQc1d3d1h2UEJQcVBWZmhUYlBRSzlqVzhGSUZE?= =?utf-8?B?SjRTNlZVekQyalRaMDJqbE5QeHJ6SlVScmhyejZ0eHlwVE5aa0xoVDZ1aVlI?= =?utf-8?B?SVdnWStWRXJHY3JTNHRhK2lxMmNDNnRUR1pETHhidnREWEJIRnZHNS9UNmNn?= =?utf-8?B?QlBaQmd5M2VLUnFncXNwZU5YeWh4dHFmcU5SNWhnQ3dBQzkvaHpOS2MycSs2?= =?utf-8?B?WkNteTZDRGJrbG4xR0YvWHU2U3p2TmRMOGRIRmwzeDU5UFdBL1NoaTBJZmhm?= =?utf-8?B?Mk15TWJ1RWEycEIyY3dod1Q2ZjA2V3gxTFFJNXRlZFZhUjNpbkl5SVNBejEx?= =?utf-8?B?NE1HZkRSSGV4NFJnRldxZ3RGeGtIMU1JOGFpMWtSMW11NVZzZ1o4VStNZWFT?= =?utf-8?B?ZUV2MDg5YlFpM1Z3akdHMmVtTjNZd0lvZUNXYlU1MzllL2ZjdUlyVE05QXJI?= =?utf-8?B?WWU4RXhnOVBlc2RQZURtNFZOZjlkajVMeUVhTTJiZUdUc1RXOSsreHl1LzBk?= =?utf-8?B?WUlGc0UwSkI2TDhwa3BuSG9JV3FjUkN1bC9LYnlOWjM0NXpRNVgvSnl2S3hr?= =?utf-8?B?Zy9pZUxKdi9EM1V0ekZoWThZY0IzZXJnMUZYSklTZGNXMWdqK3RtUVF6YXpI?= =?utf-8?B?QmQzeGluNXBkOVp4a0ZReWhxekNYVllHL3dJemRUc1Jxa3hreGVHYzFOL3ZZ?= =?utf-8?B?bkpJb2xoMEpTVTMvVUFoYjhPaWhuKzZrVDQybUlvdHJITG5XM28xRW5LdGM0?= =?utf-8?B?SmM2YVAzbmJ2TFQ3a21jdkRjYUlTQXJIdk9zRmdJT0RmWUV5RVdYcW5FZE11?= =?utf-8?B?NFZQdTVMc0VzU2F3UHVUVEJtd1NjSlJma3ZwWXpQaVBzYlZoaGhuSGRWYzNz?= =?utf-8?B?ekN1L0E4T21vOE84cG9SdUZ4UGpRa1dLMXRobjllbnp2bFhhb24xWkZZWXNQ?= =?utf-8?B?QkxwQ2JZd29aUUg0WmloQ1lEMGppbkNZQ1JTb0IwM29VbCtwZmdteXgrRG1C?= =?utf-8?B?aW9iYVlWNER6QTBCdDF2TWhCdExFYkU1T1JPOCs0bWU5UWg2ZGl6NnpUTFVu?= =?utf-8?B?dVZMZE5ZbHljQjNkK2haZ01kcmtXRFdxa1BSQkZlOXROYzd2Nm9iQ2s5am9O?= =?utf-8?B?YkkrL2xGNGhSSmplbSsxc3JCWC9Ycjkxa005dTBOUlJXYzRWNTRlL3FJNGxy?= =?utf-8?Q?W5JF1PJQu9TnaC9zR0VgLiDZd?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 9dfacae3-4771-479b-4c88-08db6b2708fc X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Jun 2023 09:26:00.3012 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: is9hc3HscUuo8SR1ASqFTiD8vPKyYS5VljvN8SNC+Auga9Pxy2N3cvC6KCSl36hgDZ9rv8ZhS95E6wyG6s8plw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBAPR04MB7303 On 12.06.2023 10:58, Roberto Bagnara wrote: > On 09/06/23 10:46, Jan Beulich wrote: >> On 08.06.2023 13:02, Roberto Bagnara wrote: >>> On 07/06/23 23:53, Stefano Stabellini wrote: >>>> On Wed, 7 Jun 2023, Jan Beulich wrote: >>>>>> + * - `Rule 5.6 `_ >>>>>> + - Required >>>>>> + - A typedef name shall be a unique identifier >>>>>> + - >>>>> >>>>> Considering that the rule requires uniqueness across the entire code >>>>> base (and hence precludes e.g. two functions having identically named >>>>> local typedefs), I'm a little puzzled this was adopted. I for one >>>>> question that a use like the one mentioned is really at risk of being >>>>> confusing. Instead I think that the need to change at least one of >>>>> the names is at risk of making the code less readable then, even if >>>>> ever so slightly. (All of this said - I don't know if we have any >>>>> violations of this rule.) >>>> >>>> I don't think we have many local typedefs and I think we have only few >>>> violations if I remember right. I'll let Roberto confirm how many. This >>>> rule was considered not a difficult rule (some difficult rules were >>>> found, namely 2.1, 5.5 and 7.4.) >>> >>> There currently are 30 violations for ARM64: >>> >>> - some involve a typedef module_name (in the call it was said this should >>> be renamed module_name_t, which will solve the issue); >>> - most concern repeated typedefs (UINT64 and similar) which are repeated >>> in xen/arch/arm/include/asm/arm64/efibind.h >>> and xen/include/acpi/actypes.h >>> - ret_t and phys_addr_t are also redefined in a couple of places. >>> >>> There are 90 violations for X86_64, for the same reasons, plus >>> >>> - another set of typedefs for basic types (such as u8); >>> - repeated typedefs for things like guest_l1e_t in the same header file: >>> >>> xen/arch/x86/include/asm/guest_pt.h:60.39-60.49: >>> for program `xen/.xen-syms.0', the identifier for typedef `guest_l1e_t' is reused >>> xen/arch/x86/include/asm/guest_pt.h:128.22-128.32: >>> for program `xen/.xen-syms.0', the identifier for typedef `guest_l1e_t' is reused >>> >>> The indicated lines read as follows: >>> >>> typedef struct { guest_intpte_t l1; } guest_l1e_t; >>> typedef l1_pgentry_t guest_l1e_t; >> >> So this is an example where I don't think we can sensibly do away with the >> re-use of the same typedef name: We use it so we can build the same source >> files multiple ways, dealing with different paging modes guests may be in. > > Typedefs being used this way can be deviated with tool configuration. > Here is a list of candidates for that treatment: > > guest_intpte_t > guest_l1e_t > guest_l2e_t > ret_ > > I am not sure about the latter. Please let me know if this is what > you would prefer and possible additions to/removals from the above list. Well, if deviating such is possible despite their extended use (in certain places), then fine. I was afraid that a deviation with such wide a scope might be hard to justify. Jan From xen-devel-bounces@lists.xenproject.org Mon Jun 12 09:34:37 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 09:34:37 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546941.854051 (Exim 4.92) (envelope-from ) id 1q8dwW-0000SC-Il; Mon, 12 Jun 2023 09:34:32 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546941.854051; Mon, 12 Jun 2023 09:34:32 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8dwW-0000S5-EM; Mon, 12 Jun 2023 09:34:32 +0000 Received: by outflank-mailman (input) for mailman id 546941; Mon, 12 Jun 2023 09:34:31 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8dwV-0000Rz-FV for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 09:34:31 +0000 Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 54a32310-0904-11ee-b232-6b7b168915f2; Mon, 12 Jun 2023 11:34:30 +0200 (CEST) Received: from [192.168.1.142] (unknown [151.57.12.77]) by support.bugseng.com (Postfix) with ESMTPSA id 0B3254EE073E; Mon, 12 Jun 2023 11:34:28 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 54a32310-0904-11ee-b232-6b7b168915f2 Message-ID: <6525d690-e487-ead8-34d6-55219ccfbfa2@bugseng.com> Date: Mon, 12 Jun 2023 11:34:28 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.12) Gecko/20050929 Thunderbird/1.0.7 Fedora/1.0.7-1.1.fc4 Mnenhy/0.7.3.0 Subject: Re: [PATCH v2] docs/misra: new rules addition Content-Language: en-US To: Jan Beulich , Stefano Stabellini Cc: julien@xen.org, andrew.cooper3@citrix.com, roger.pau@citrix.com, bertrand.marquis@arm.com, Stefano Stabellini , xen-devel@lists.xenproject.org References: <20230609174543.4067574-1-sstabellini@kernel.org> From: Roberto Bagnara In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit On 12/06/23 09:33, Jan Beulich wrote: > On 09.06.2023 19:45, Stefano Stabellini wrote: >> @@ -133,6 +146,13 @@ existing codebase are work-in-progress. >> headers (xen/include/public/) are allowed to retain longer >> identifiers for backward compatibility. >> >> + * - `Rule 6.1 `_ >> + - Required >> + - Bit-fields shall only be declared with an appropriate type >> + - In addition to the C99 types, we also consider appropriate types: >> + unsigned char, unsigned short, unsigned long, unsigned long long, >> + enum. > > What about their signed equivalents? I'm surprised that I found only very > few uses (in Arm insn decoding afaict), but they generally have a purpose. > Are the uses we have (and new ones which may appear) intended to become > deviations? Explicitly signed integer types are all supported by GCC as well. So they can be added to the list. >> @@ -143,6 +163,12 @@ existing codebase are work-in-progress. >> - Octal constants shall not be used >> - >> >> + * - `Rule 7.2 `_ >> + - Required >> + - A "u" or "U" suffix shall be applied to all integer constants >> + that are represented in an unsigned type >> + - > > I continue to consider "represented in" problematic here without > further qualification. We should distinguish two things here. The headline of Rule 7.2 is non negotiable: it is simply as it is. As all headlines, it is a compromise between conciseness and mnemonic value. If what is wanted there is not the headline, then you can add "implicitly" before "represented". Or you may leave the headline and add an explanatory note afterwards. >> @@ -314,6 +340,11 @@ existing codebase are work-in-progress. >> used following a subsequent call to the same function >> - >> >> + * - Rule 21.21 >> + - Required >> + - The Standard Library function system of shall not be used >> + - > > Still no "inapplicable" note (whichever way it would be worded to also > please Roberto)? I am not the one to be pleased ;-) But really, I don't follow: when you say the rule is inapplicable your reasoning is, IIUC, "nobody would even dream using system() in Xen". Which is exactly what the rule is asking. If Xen adopts the rule, tooling will make sure system() is not used, and seeing that the rule is applied, assessors will be pleased. From xen-devel-bounces@lists.xenproject.org Mon Jun 12 09:50:50 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 09:50:50 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546947.854061 (Exim 4.92) (envelope-from ) id 1q8eC7-0002su-RO; Mon, 12 Jun 2023 09:50:39 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546947.854061; Mon, 12 Jun 2023 09:50:39 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8eC7-0002sn-OI; Mon, 12 Jun 2023 09:50:39 +0000 Received: by outflank-mailman (input) for mailman id 546947; Mon, 12 Jun 2023 09:50:38 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8eC6-0002sh-2K for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 09:50:38 +0000 Received: from EUR05-DB8-obe.outbound.protection.outlook.com (mail-db8eur05on20616.outbound.protection.outlook.com [2a01:111:f400:7e1a::616]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 94e70a6b-0906-11ee-b232-6b7b168915f2; Mon, 12 Jun 2023 11:50:37 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by AM7PR04MB6775.eurprd04.prod.outlook.com (2603:10a6:20b:102::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.29; Mon, 12 Jun 2023 09:50:34 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.039; Mon, 12 Jun 2023 09:50:34 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 94e70a6b-0906-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=c1gbdWhzuHc11ddPK6QW7e1U6I7ecfwumu9tAsI7/MXjWvb/OiurnM7JzZiWIEZmAhoadbiGoNZ8uaM1/nyYnsA1VXtdmlUeOzdIBgeA1ATEowfcsqJKTIflxFrV8OqSw1riN6FqRIl6m4UPEmNBjURQBbZgNjaGp+S+U09+zt3xHLdfQrXc0ipRZJVCEdvQqxhhsj2k7pfD3H/W3HzovI5ANirRFHXrrrk40dEY98+1KQdZOFX59RCciVi7cCXOzaqUZW83sL6rIIK16U7pVNRljx4RQUbGjjeKuJns+KJ2Hj/Z4zAbMxrUs3iOU9k7TB/QKl4HQz301woWlilTeg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=H615CpVv+w/SpkQvGfcGh+cMYoDODlyezwbCeGvGAhM=; b=IT12K5O0Ci24p8qh9+6l5yrvCj8wJ0Fssra/3kI13oB4DqKN0tu751D6Tn6TflsJ0C8wh9Ca2A7sMMWiB8qahB8yPcNaY/kbpiAzixViW3xSFofvMLSXDM9jQQ366yQqgPrlSWmSyZcEHDyd3pU+X+A/S2ozx95PHxWoAcl3l3vf+ithLO+kSiNisaHbtJ64/TXfLlLj3kMRhyMsRTzVs0K80snfNx7coxxxtxiO9me9xmco/DtcdWU8KbGzB7JhMgIIiShjOlxmCsO+uqb4xXVf+wi8593dkhiQvIhBnWQ/YjM33t9gLRQ+BgM8zr3kJLSOJTQ9FX3n5+CckgqbIQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=H615CpVv+w/SpkQvGfcGh+cMYoDODlyezwbCeGvGAhM=; b=aUNKxy3aN6HKJpzLWyOoQ52bkzP+nrBlgqFLCd9YN1jjpwhluKOq2RvFIMjzmN1j5tVtm2aYPIVJ6kJQPqQs34bBlK6723FjAKCfylnhqDdOAZRpyN6l7NP254PuMOUQ/Vk5FB8RBhOFW8Nt6pkngaTzFChMkxtfnIKtZsD2SArBruE1eCxyDFLdIYkOai3LBmpQuHJXApkwM/OnA8AwY/3n63yQdCodT3xpNbZZ1uNl+VaIj10I54MoRLIt18zzPed8gpgn9NRnzm3yeCKK7zGIucz6lm4KXgrPaetaFxWQi/hBjlxReIvdDRIBcDbnj5sE4xy1U4/bxonIzpNZWA== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: Date: Mon, 12 Jun 2023 11:50:32 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v2] docs/misra: new rules addition Content-Language: en-US To: Roberto Bagnara , Stefano Stabellini Cc: julien@xen.org, andrew.cooper3@citrix.com, roger.pau@citrix.com, bertrand.marquis@arm.com, Stefano Stabellini , xen-devel@lists.xenproject.org References: <20230609174543.4067574-1-sstabellini@kernel.org> <6525d690-e487-ead8-34d6-55219ccfbfa2@bugseng.com> From: Jan Beulich In-Reply-To: <6525d690-e487-ead8-34d6-55219ccfbfa2@bugseng.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR2P281CA0082.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:9b::9) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|AM7PR04MB6775:EE_ X-MS-Office365-Filtering-Correlation-Id: 395a971c-fefa-43e0-c261-08db6b2a7787 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: oscT7KVY0wFY2xI8v1xEsaRVlZ93irElV9mct9f2Tar9LuaSUXFmagudVAUNHffMT0LItbl8sx7WUFJQ5gjG1fAPGr8Iifb85iTCzRIjqS/ndoo2uyfsfv6Ea0e69J1413Px9KzUHsODjwDBmHG6c6y9GJffCjBNdmYdd81420FcDyMYVpW3zLU/eN+QrPw6xFp9X4y+vbdGBtCuYXbp90tjhUqaJoQn1bDL0rxa0Wmn65xbDA4vGetavp3mnq/4k8UEFLTOT7nbIbQaNAAxo+bBSvmM6UOF0wmENWx/Zb+uz5Hz3KNCgei4l0JtG8j8iNIFFbJbNmExY3kDhJY+bJ7Uqp/jo6CLiRyA5O+WAdUzYTUfojrSZJKOTUljXD9wODh5mSWAxTCB65IXJyLj15qUyzVzjSwf4XSXscHMrq2WZ3QzJFQ1+bVlZDeG5KwQjs4BeshpFoXwxp6tHOgJn/7HBE9O0auagEmt/KOkvMAp2UDHJAxAdQZrfIP6cOJgB1Kakp4NQ1wIwrdKboTJtB/hEkSveM4+KgqhKWxKK0f24flJfzLmuJBWdHrlWdtoKVu8P9XcWqibT6fQ6HCK6206PIBps61SK0opkhNP25k/B48XLHjsOc6lJ+fKVF23d3VnKVla0mCsj/o2LMMLww== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(346002)(39850400004)(376002)(366004)(396003)(136003)(451199021)(5660300002)(110136005)(31686004)(4326008)(66946007)(66556008)(8936002)(316002)(8676002)(41300700001)(2906002)(186003)(66476007)(478600001)(6486002)(6512007)(53546011)(26005)(6506007)(83380400001)(36756003)(86362001)(38100700002)(2616005)(31696002)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?MURhTVdpWHg0QkhUREZ4anBZNGRtL01sOXFhUlErY2hyd3RtMXFDUGx2ejJV?= =?utf-8?B?UW9pL3IwaVRWWjg5SjF3aDJjc3VTdzQyTEJMZzBXS0ZHN2Z0ckNEU0ZzYXF5?= =?utf-8?B?RmZqS0tvZUdsNTlnOXQ1SFVGcEpDaHBWM0dKenpVK1Rac0Rya2VwelV6Sy80?= =?utf-8?B?ZVU0dUZWaEdYb1l3anlVajJxMWlSOE1GbExDV3dxbTU5aXlUZ2FJaHNnVHZm?= =?utf-8?B?NGswcFROczBsYndPY281dng1SUZGbVdrSlhOTnZ6L1h2MmlLdGtuOWlGNnBk?= =?utf-8?B?QUFsRkFndE9QMUFoT0dSN2ZoMlZ4Y2ZBVytDNm9aNUN2cW0rYlVpZWRNNzRy?= =?utf-8?B?bGVsWGhZMXptczN0Sm9RWUVBNXg1ZW5wT3BrSHRGWFR2YzZFMmVnZFFWMVhp?= =?utf-8?B?eUtQU2tWcFdzUzhpeDQxdzlac2tuRmR5ZGprTUtOMmxmYnBzb1drLy9wRlpW?= =?utf-8?B?VGxOV2lWVTk4eFNJUHMrc0x0akpNdXVCMHMvSVkrRDBKK3RqeldVU1BDM28y?= =?utf-8?B?V2I1WFJ6MUVSTWk1UkRnb0dzbWxDaTN4cWlqMHFiMmk4NXZiN3FmbFE5bXdO?= =?utf-8?B?ZmJBMy84TTdmdDVXaS9qNFpxREVISmJSNFRRWkRMTnFScFFSb25SYVBvbFVj?= =?utf-8?B?dWwyeXdCdTZFbnFOMXoveWIzQUhrVFFCaXp3ZENud1RZem42U2dhQ0cyWVp0?= =?utf-8?B?NnAvU29ZR2pCVGl2aUc0aHRmY1ArUmo5U21wdDhGdGdnRFk0QkhGS000Sk9s?= =?utf-8?B?Qk0vZm9oK2ZQZW5XNThhNUsyOFBIZXpURTh0bmplTFZNdlhCbGNiaW95bVZN?= =?utf-8?B?amlxNnR5VkNwRzRFbXlObWwwaHlPQW9FWUlCbWVBUEpocjU5ZGRseGVBNVJo?= =?utf-8?B?dER1TU05RnZISDZNcUhkTGZoNTJnKzFSRGhhRVFLbDhGN2lFQjU5UnU4UFU0?= =?utf-8?B?VnVLOGFKb00zVUMzUlVHb3dUWDdSZmN6d2VMNjZKTTI5b29PMWZkVk8xbDhx?= =?utf-8?B?eHN5NzNrbkZmUlZ0UXpHV1EwVkZxc05LN1FiL3JQNXk3ZlRLMHAwampNYUZS?= =?utf-8?B?T1RDM1JiMUI5WHNNUXpYaFhwT2NCRmxqREg1UVhpZFlVWCtDa3lZVE55d0JN?= =?utf-8?B?NnJRWnhRTWlySFdEVkhJdjI0UUZ0VEtia0FLK3V2UlhxS2JtNWl2K0V2T1dN?= =?utf-8?B?T2VUWWF1UythdGREMmZPY1kvRWZkVTRPVVhGSDdZQ3ExaitzTk9JNExFaDRq?= =?utf-8?B?eC9ReU13QkRPTnhVaG5ic1ZqT3V2MWlkWXZjQ3R0d3lXcklkNXFpWnhLd1gv?= =?utf-8?B?TExPclY0bURwYzdxUHBzdzdzUnF2M0V0R055TjdjQUNYN2R3bnIyOE1qekt1?= =?utf-8?B?cFhqcFUxSDBMMVZmTWJhcVRiYWtjOVE4alptaXlCakZ6a0xtRUVZcFY5dEN3?= =?utf-8?B?T21OenZ0SjlHWGNlMTdSa3ZFbUtoMlhycVhCUWpEU2xnc3NLRGFaSXFoT3VO?= =?utf-8?B?SVJHOVlSeElUYkN4bWpUVFRkWlZWNlZJME12M3hISCtrdk9qS2h2S0FDYVJR?= =?utf-8?B?SUZmRDNRZUV6dXBPV1lueUxTNnA2UlBCRXlpZlI1MUdEeUpFR1I1Y2ZoNHhu?= =?utf-8?B?YU1DUVgvVHgvNFhwUS9qM3IrdXVMN3dkSUZ0V3BqekhPWUdTSm50Z282d3NK?= =?utf-8?B?K040OUQ3S3RDTTZmWFFUdEVWeTgxTHRiWTZlZ1lGUWRPZ0F0dlJ3SVZDQkM5?= =?utf-8?B?eXFaSnpYSDhrcjBHWnJwSzNlSWc4MXZtT2w5T01iQ3VFUjNJY2JQbEc2VlNV?= =?utf-8?B?Q3dwRkZ0QktTNnVKeGVQVGM1RUdSRDdXSk1GaTlzVVh3OW80ZDZQc0loL0Np?= =?utf-8?B?UDV4TmVIaE9DeFBhUXk0WENKVTdBdDBXR0U2akthbUhxYlJCZi9xMVJMVjZ3?= =?utf-8?B?NXRpa3Y4dVlUakxRbWs2WU1ZR0k2NS9rQ3dmTDdtU1ZxdW4xNzhxeDI2dzBR?= =?utf-8?B?Q2wrZmx2M2Nka3NvOGlFb0hzTktNb3R0Unp2RTduWStwb3lpcWd4WkxDS3Rx?= =?utf-8?B?dFh0R2NhakZTRHNnRmFUYVNMOURhREd3QWhxM2hzRUlhbG1pVjFxUVZIY0ZF?= =?utf-8?Q?8c4rJwRQCypzcvzW7u5YANSOj?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 395a971c-fefa-43e0-c261-08db6b2a7787 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Jun 2023 09:50:34.2356 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: mlRgWrhtQsjNY3FsEYXszUMD4DHXtNATzNqEoIpTrGwVqkvJ8yaN7mvmrplnx11rvG0cC3M53//SEHk0zDm8LQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM7PR04MB6775 On 12.06.2023 11:34, Roberto Bagnara wrote: > On 12/06/23 09:33, Jan Beulich wrote: >> On 09.06.2023 19:45, Stefano Stabellini wrote: >>> @@ -143,6 +163,12 @@ existing codebase are work-in-progress. >>> - Octal constants shall not be used >>> - >>> >>> + * - `Rule 7.2 `_ >>> + - Required >>> + - A "u" or "U" suffix shall be applied to all integer constants >>> + that are represented in an unsigned type >>> + - >> >> I continue to consider "represented in" problematic here without >> further qualification. > > We should distinguish two things here. The headline of Rule 7.2 > is non negotiable: it is simply as it is. I understand this, and ... > As all headlines, > it is a compromise between conciseness and mnemonic value. > If what is wanted there is not the headline, then you can add > "implicitly" before "represented". Or you may leave the headline > and add an explanatory note afterwards. ... such a note is what my comment was heading towards. >>> @@ -314,6 +340,11 @@ existing codebase are work-in-progress. >>> used following a subsequent call to the same function >>> - >>> >>> + * - Rule 21.21 >>> + - Required >>> + - The Standard Library function system of shall not be used >>> + - >> >> Still no "inapplicable" note (whichever way it would be worded to also >> please Roberto)? > > I am not the one to be pleased ;-) > > But really, I don't follow: when you say the rule is inapplicable > your reasoning is, IIUC, "nobody would even dream using system() in Xen". > Which is exactly what the rule is asking. If Xen adopts the rule, > tooling will make sure system() is not used, and seeing that the rule > is applied, assessors will be pleased. My point is that "not using functions of stdlib.h" is ambiguous: It may mean functions implemented in an external library (which the hypervisor doesn't use), or it may mean functions of identical name (and purpose). The full text goes even further and forbids the use of these identifiers (plural; see next paragraph), so it's clearly not only about an external library, and we also can't put it off as inapplicable. (I wouldn't be surprised if we had a local variable or label named "exit" or "abort".) Btw - I can't find a rule 21.21 in my two (slightly different) copies of the doc, nor one with this headline and a different number. What I have is "21.8 The Standard Library functions abort, exit and system of shall not be used". (I further wonder why neither of the two docs allows me to copy-and-paste a line out of it.) Jan From xen-devel-bounces@lists.xenproject.org Mon Jun 12 10:13:38 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 10:13:38 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546952.854071 (Exim 4.92) (envelope-from ) id 1q8eYB-0005kY-H6; Mon, 12 Jun 2023 10:13:27 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546952.854071; Mon, 12 Jun 2023 10:13:27 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8eYB-0005kR-Dl; Mon, 12 Jun 2023 10:13:27 +0000 Received: by outflank-mailman (input) for mailman id 546952; Mon, 12 Jun 2023 10:13:26 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8eYA-0005kL-DG for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 10:13:26 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8eY9-0003TB-RS; Mon, 12 Jun 2023 10:13:25 +0000 Received: from 54-240-197-224.amazon.com ([54.240.197.224] helo=dev-dsk-jgrall-1b-035652ec.eu-west-1.amazon.com) by xenbits.xenproject.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1q8eY9-0005dS-Ie; Mon, 12 Jun 2023 10:13:25 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:MIME-Version:Message-Id:Date: Subject:Cc:To:From; bh=GWbKTNtWba0nO8WoBj1n3aut1pwqhTCugtQVCTJNftI=; b=3xi5ba VMHx1q48uNZk0YvNrQrmeJPFYVCs2XiOSgSjYUmnAnl90fGbHNhlPmRZdBjMoQ3GqwD6Z3wYYRZFh nDGNTxMDfPGRebJicSo4gc6RkM77cUxextinor+mXtGMkNjaNB32uVnGhCW2UduSmNTY57DO3V4cs stfxuF5UqZY=; From: Julien Grall To: xen-devel@lists.xenproject.org Cc: julien@xen.org, Julien Grall , Wei Liu , Juergen Gross , Anthony PERARD Subject: [PATCH] tools/xenstored: Correct the prototype of domain_max_chk() Date: Mon, 12 Jun 2023 11:13:19 +0100 Message-Id: <20230612101319.29842-1-julien@xen.org> X-Mailer: git-send-email 2.40.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit From: Julien Grall Some version of GCC will complain because the prototype and the declaration of domain_max_chk() don't match: xenstored_domain.c:1503:6: error: conflicting types for 'domain_max_chk' due to enum/integer mismatch; have '_Bool(const struct connection *, enum accitem, unsigned int)' [-Werror=enum-int-mismatch] 1503 | bool domain_max_chk(const struct connection *conn, enum accitem what, | ^~~~~~~~~~~~~~ In file included from xenstored_domain.c:31: xenstored_domain.h:146:6: note: previous declaration of 'domain_max_chk' with type '_Bool(const struct connection *, unsigned int, unsigned int)' 146 | bool domain_max_chk(const struct connection *conn, unsigned int what, | ^~~~~~~~~~~~~~ Update the prototype to match the declaration. This was spotted by Gitlab CI with the job opensuse-tumbleweed-gcc. Fixes: 685048441e1c ("tools/xenstore: switch quota management to be table based") Signed-off-by: Julien Grall --- tools/xenstore/xenstored_domain.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tools/xenstore/xenstored_domain.h b/tools/xenstore/xenstored_domain.h index bf63f3fcc667..4950b00aee54 100644 --- a/tools/xenstore/xenstored_domain.h +++ b/tools/xenstore/xenstored_domain.h @@ -143,7 +143,7 @@ void acc_drop(struct connection *conn); void acc_commit(struct connection *conn); int domain_max_global_acc(const void *ctx, struct connection *conn); void domain_reset_global_acc(void); -bool domain_max_chk(const struct connection *conn, unsigned int what, +bool domain_max_chk(const struct connection *conn, enum accitem what, unsigned int val); extern long wrl_ntransactions; -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 12 10:30:30 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 10:30:30 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546959.854080 (Exim 4.92) (envelope-from ) id 1q8eoP-0008Jv-V8; Mon, 12 Jun 2023 10:30:13 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546959.854080; Mon, 12 Jun 2023 10:30:13 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8eoP-0008Jo-SO; Mon, 12 Jun 2023 10:30:13 +0000 Received: by outflank-mailman (input) for mailman id 546959; Mon, 12 Jun 2023 10:30:12 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8eoO-0008Je-EK for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 10:30:12 +0000 Received: from smtp-out2.suse.de (smtp-out2.suse.de [195.135.220.29]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 1b74cd8d-090c-11ee-8611-37d641c3527e; Mon, 12 Jun 2023 12:30:10 +0200 (CEST) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by smtp-out2.suse.de (Postfix) with ESMTPS id AC24A20462; Mon, 12 Jun 2023 10:30:09 +0000 (UTC) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id 81284138EC; Mon, 12 Jun 2023 10:30:09 +0000 (UTC) Received: from dovecot-director2.suse.de ([192.168.254.65]) by imap2.suse-dmz.suse.de with ESMTPSA id or69HbHzhmTxKwAAMHmgww (envelope-from ); Mon, 12 Jun 2023 10:30:09 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 1b74cd8d-090c-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1; t=1686565809; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=EwMz3bhQrX5ndWZ2IywtvVFJtsC4vWOMDbAeLaWyMoA=; b=WOKzQuyOQFJxYs+VbBMg7EdgZw7Jp3GBpB8FRw8tB7ENsz9LzZh262TPSF4qwn+9HgZLUp F6kI1zzkSTJabuzjpOJXZbSKARhbBWJcBAeerHaQfGzt5QX74lyko+YYeRyHZ625rywGF1 GLc5rjDAbk2mp1jmVaq7cbnAYsqdsuU= Message-ID: <4a7c772d-7a10-d899-23dc-beacbf2fb9da@suse.com> Date: Mon, 12 Jun 2023 12:30:09 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH] tools/xenstored: Correct the prototype of domain_max_chk() Content-Language: en-US To: Julien Grall , xen-devel@lists.xenproject.org Cc: Julien Grall , Wei Liu , Anthony PERARD References: <20230612101319.29842-1-julien@xen.org> From: Juergen Gross In-Reply-To: <20230612101319.29842-1-julien@xen.org> Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="------------YGEoEeKDBztvTDiD0ZrM4OUQ" This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --------------YGEoEeKDBztvTDiD0ZrM4OUQ Content-Type: multipart/mixed; boundary="------------xtX3cSksPtrgd2C32EcMlO1P"; protected-headers="v1" From: Juergen Gross To: Julien Grall , xen-devel@lists.xenproject.org Cc: Julien Grall , Wei Liu , Anthony PERARD Message-ID: <4a7c772d-7a10-d899-23dc-beacbf2fb9da@suse.com> Subject: Re: [PATCH] tools/xenstored: Correct the prototype of domain_max_chk() References: <20230612101319.29842-1-julien@xen.org> In-Reply-To: <20230612101319.29842-1-julien@xen.org> --------------xtX3cSksPtrgd2C32EcMlO1P Content-Type: multipart/mixed; boundary="------------fwmET0cWmxhYzTSIt0tyVUl8" --------------fwmET0cWmxhYzTSIt0tyVUl8 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: base64 T24gMTIuMDYuMjMgMTI6MTMsIEp1bGllbiBHcmFsbCB3cm90ZToNCj4gRnJvbTogSnVsaWVu IEdyYWxsIDxqZ3JhbGxAYW1hem9uLmNvbT4NCj4gDQo+IFNvbWUgdmVyc2lvbiBvZiBHQ0Mg d2lsbCBjb21wbGFpbiBiZWNhdXNlIHRoZSBwcm90b3R5cGUgYW5kIHRoZQ0KPiBkZWNsYXJh dGlvbiBvZiBkb21haW5fbWF4X2NoaygpIGRvbid0IG1hdGNoOg0KPiANCj4geGVuc3RvcmVk X2RvbWFpbi5jOjE1MDM6NjogZXJyb3I6IGNvbmZsaWN0aW5nIHR5cGVzIGZvciAnZG9tYWlu X21heF9jaGsnIGR1ZSB0byBlbnVtL2ludGVnZXIgbWlzbWF0Y2g7IGhhdmUgJ19Cb29sKGNv bnN0IHN0cnVjdCBjb25uZWN0aW9uICosIGVudW0gYWNjaXRlbSwgIHVuc2lnbmVkIGludCkn IFstV2Vycm9yPWVudW0taW50LW1pc21hdGNoXQ0KPiAgIDE1MDMgfCBib29sIGRvbWFpbl9t YXhfY2hrKGNvbnN0IHN0cnVjdCBjb25uZWN0aW9uICpjb25uLCBlbnVtIGFjY2l0ZW0gd2hh dCwNCj4gICAgICAgIHwgICAgICBefn5+fn5+fn5+fn5+fg0KPiBJbiBmaWxlIGluY2x1ZGVk IGZyb20geGVuc3RvcmVkX2RvbWFpbi5jOjMxOg0KPiB4ZW5zdG9yZWRfZG9tYWluLmg6MTQ2 OjY6IG5vdGU6IHByZXZpb3VzIGRlY2xhcmF0aW9uIG9mICdkb21haW5fbWF4X2Noaycgd2l0 aCB0eXBlICdfQm9vbChjb25zdCBzdHJ1Y3QgY29ubmVjdGlvbiAqLCB1bnNpZ25lZCBpbnQs ICB1bnNpZ25lZCBpbnQpJw0KPiAgICAxNDYgfCBib29sIGRvbWFpbl9tYXhfY2hrKGNvbnN0 IHN0cnVjdCBjb25uZWN0aW9uICpjb25uLCB1bnNpZ25lZCBpbnQgd2hhdCwNCj4gICAgICAg IHwgICAgICBefn5+fn5+fn5+fn5+fg0KPiANCj4gVXBkYXRlIHRoZSBwcm90b3R5cGUgdG8g bWF0Y2ggdGhlIGRlY2xhcmF0aW9uLg0KPiANCj4gVGhpcyB3YXMgc3BvdHRlZCBieSBHaXRs YWIgQ0kgd2l0aCB0aGUgam9iIG9wZW5zdXNlLXR1bWJsZXdlZWQtZ2NjLg0KPiANCj4gRml4 ZXM6IDY4NTA0ODQ0MWUxYyAoInRvb2xzL3hlbnN0b3JlOiBzd2l0Y2ggcXVvdGEgbWFuYWdl bWVudCB0byBiZSB0YWJsZSBiYXNlZCIpDQo+IFNpZ25lZC1vZmYtYnk6IEp1bGllbiBHcmFs bCA8amdyYWxsQGFtYXpvbi5jb20+DQoNClJldmlld2VkLWJ5OiBKdWVyZ2VuIEdyb3NzIDxq Z3Jvc3NAc3VzZS5jb20+DQoNCg0KSnVlcmdlbg0K --------------fwmET0cWmxhYzTSIt0tyVUl8 Content-Type: application/pgp-keys; name="OpenPGP_0xB0DE9DD628BF132F.asc" Content-Disposition: attachment; filename="OpenPGP_0xB0DE9DD628BF132F.asc" Content-Description: OpenPGP public key Content-Transfer-Encoding: quoted-printable -----BEGIN PGP PUBLIC KEY BLOCK----- xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjri oyspZKOBycWxw3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2 kaV2KL9650I1SJvedYm8Of8Zd621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i 1TXkH09XSSI8mEQ/ouNcMvIJNwQpd369y9bfIhWUiVXEK7MlRgUG6MvIj6Y3Am/B BLUVbDa4+gmzDC9ezlZkTZG2t14zWPvxXP3FAp2pkW0xqG7/377qptDmrk42GlSK N4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEBAAHNHEp1ZXJnZW4gR3Jvc3Mg PGpnQHBmdXBmLm5ldD7CwHkEEwECACMFAlOMcBYCGwMHCwkIBwMCAQYVCAIJCgsE FgIDAQIeAQIXgAAKCRCw3p3WKL8TL0KdB/93FcIZ3GCNwFU0u3EjNbNjmXBKDY4F UGNQH2lvWAUy+dnyThpwdtF/jQ6j9RwE8VP0+NXcYpGJDWlNb9/JmYqLiX2Q3Tye vpB0CA3dbBQp0OW0fgCetToGIQrg0MbD1C/sEOv8Mr4NAfbauXjZlvTj30H2jO0u +6WGM6nHwbh2l5O8ZiHkH32iaSTfN7Eu5RnNVUJbvoPHZ8SlM4KWm8rG+lIkGurq qu5gu8q8ZMKdsdGC4bBxdQKDKHEFExLJK/nRPFmAuGlId1E3fe10v5QL+qHI3EIP tyfE7i9Hz6rVwi7lWKgh7pe0ZvatAudZ+JNIlBKptb64FaiIOAWDCx1SzR9KdWVy Z2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+wsB5BBMBAgAjBQJTjHCvAhsDBwsJ CAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey/HmQf/RtI7kv5A2PS4 RF7HoZhPVPogNVbC4YA6lW7DrWf0teC0RR3MzXfy6pJ+7KLgkqMlrAbN/8Dvjoz7 8X+5vhH/rDLa9BuZQlhFmvcGtCF8eR0T1v0nC/nuAFVGy+67q2DH8As3KPu0344T BDpAvr2uYM4tSqxK4DURx5INz4ZZ0WNFHcqsfvlGJALDeE0LhITTd9jLzdDad1pQ SToCnLl6SBJZjDOX9QQcyUigZFtCXFst4dlsvddrxyqT1f17+2cFSdu7+ynLmXBK 7abQ3rwJY8SbRO2iRulogc5vr/RLMMlscDAiDkaFQWLoqHHOdfO9rURssHNN8WkM nQfvUewRz80hSnVlcmdlbiBHcm9zcyA8amdyb3NzQG5vdmVsbC5jb20+wsB5BBMB AgAjBQJTjHDXAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/ Ey8PUQf/ehmgCI9jB9hlgexLvgOtf7PJnFOXgMLdBQgBlVPO3/D9R8LtF9DBAFPN hlrsfIG/SqICoRCqUcJ96Pn3P7UUinFG/I0ECGF4EvTE1jnDkfJZr6jrbjgyoZHi w/4BNwSTL9rWASyLgqlA8u1mf+c2yUwcGhgkRAd1gOwungxcwzwqgljf0N51N5Jf VRHRtyfwq/ge+YEkDGcTU6Y0sPOuj4Dyfm8fJzdfHNQsWq3PnczLVELStJNdapwP OoE+lotufe3AM2vAEYJ9rTz3Cki4JFUsgLkHFqGZarrPGi1eyQcXeluldO3m91NK /1xMI3/+8jbO0tsn1tqSEUGIJi7ox80eSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1 c2UuZGU+wsB5BBMBAgAjBQJTjHDrAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgEC F4AACgkQsN6d1ii/Ey+LhQf9GL45eU5vOowA2u5N3g3OZUEBmDHVVbqMtzwlmNC4 k9Kx39r5s2vcFl4tXqW7g9/ViXYuiDXb0RfUpZiIUW89siKrkzmQ5dM7wRqzgJpJ wK8Bn2MIxAKArekWpiCKvBOB/Cc+3EXE78XdlxLyOi/NrmSGRIov0karw2RzMNOu 5D+jLRZQd1Sv27AR+IP3I8U4aqnhLpwhK7MEy9oCILlgZ1QZe49kpcumcZKORmzB TNh30FVKK1EvmV2xAKDoaEOgQB4iFQLhJCdP1I5aSgM5IVFdn7v5YgEYuJYx37Io N1EblHI//x/e2AaIHpzK5h88NEawQsaNRpNSrcfbFmAg987ATQRTjHAWAQgAyzH6 AOODMBjgfWE9VeCgsrwH3exNAU32gLq2xvjpWnHIs98ndPUDpnoxWQugJ6MpMncr 0xSwFmHEgnSEjK/PAjppgmyc57BwKII3sV4on+gDVFJR6Y8ZRwgnBC5mVM6JjQ5x Dk8WRXljExRfUX9pNhdE5eBOZJrDRoLUmmjDtKzWaDhIg/+1Hzz93X4fCQkNVbVF LELU9bMaLPBG/x5q4iYZ2k2ex6d47YE1ZFdMm6YBYMOljGkZKwYde5ldM9mo45mm we0icXKLkpEdIXKTZeKDO+Hdv1aqFuAcccTg9RXDQjmwhC3yEmrmcfl0+rPghO0I v3OOImwTEe4co3c1mwARAQABwsBfBBgBAgAJBQJTjHAWAhsMAAoJELDendYovxMv Q/gH/1ha96vm4P/L+bQpJwrZ/dneZcmEwTbe8YFsw2V/Buv6Z4Mysln3nQK5ZadD 534CF7TDVft7fC4tU4PONxF5D+/tvgkPfDAfF77zy2AH1vJzQ1fOU8lYFpZXTXIH b+559UqvIB8AdgR3SAJGHHt4RKA0F7f5ipYBBrC6cyXJyyoprT10EMvU8VGiwXvT yJz3fjoYsdFzpWPlJEBRMedCot60g5dmbdrZ5DWClAr0yau47zpWj3enf1tLWaqc suylWsviuGjKGw7KHQd3bxALOknAp4dN3QwBYCKuZ7AddY9yjynVaD5X7nF9nO5B jR/i1DG86lem3iBDXzXsZDn8R38=3D =3D2wuH -----END PGP PUBLIC KEY BLOCK----- --------------fwmET0cWmxhYzTSIt0tyVUl8-- --------------xtX3cSksPtrgd2C32EcMlO1P-- --------------YGEoEeKDBztvTDiD0ZrM4OUQ Content-Type: application/pgp-signature; name="OpenPGP_signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="OpenPGP_signature" -----BEGIN PGP SIGNATURE----- wsB5BAABCAAjFiEEhRJncuj2BJSl0Jf3sN6d1ii/Ey8FAmSG87EFAwAAAAAACgkQsN6d1ii/Ey9L 9Qf/UbjJ9+oHylwqYgw+BdS7tDqAOASAJXv92wnIFV2VubZIHZl7DcGsrR9BGvrnIOR35a+emHwk aPN9Qxx6GSlsV9+rnqirfIMn4Zm9VOB8sJnEsvoYo+GCKVxj1VfR/gs/y0oL7v7pWyOfuxtUx5wx Qy5ck3owIbHCI7ZgNz8gAVX8lZ+NhiOzj0d/rq6JxK8xF/nV2PN8a/QbyuM8uAzETe7UYP7tkphp pUC/1tYBI5VKQEky8mweu08IVYOu2ZCNyDeHVAHglDUH2MxUzv5xtGMDtit9ci7B0peVG2GuVME2 yIUUZ4N36tRRSwFPIj97wV1Yo1qXyJjaPYQsi2QeRQ== =X9yx -----END PGP SIGNATURE----- --------------YGEoEeKDBztvTDiD0ZrM4OUQ-- From xen-devel-bounces@lists.xenproject.org Mon Jun 12 10:34:20 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 10:34:20 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546964.854090 (Exim 4.92) (envelope-from ) id 1q8esD-0000XI-FA; Mon, 12 Jun 2023 10:34:09 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546964.854090; Mon, 12 Jun 2023 10:34:09 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8esD-0000XB-Ca; Mon, 12 Jun 2023 10:34:09 +0000 Received: by outflank-mailman (input) for mailman id 546964; Mon, 12 Jun 2023 10:34:08 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8esC-0000X5-8t for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 10:34:08 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8esB-0003tc-JP; Mon, 12 Jun 2023 10:34:07 +0000 Received: from gw1.octic.net ([88.97.20.152] helo=[10.0.1.240]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1q8esB-0006Rt-EW; Mon, 12 Jun 2023 10:34:07 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=GA50J2tOlhMN36om8xjIl/OxxujSBfB1n7Wj68NH5nM=; b=jg0vbR0NBbdMwC0O76HXwIE0Oy e524hwfDQNbmSRkmkbkn8Oq6pFYufUlvtqnI86inuuJ0AFukf6Bf1r8luxo9U/Z7nE8XVkDOq7sa9 xvQ/g4pAo2Dd5J1KzLJpzr3MEhzMHRY6Nf+tEQLVX3Udn8FNrEap67JCTyfuPVvixk6g=; Message-ID: Date: Mon, 12 Jun 2023 11:34:05 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.11.2 Subject: Re: [PATCH v3 10/16] tools/libs/store: use xen_list.h instead of xenstore/list.h Content-Language: en-US To: Juergen Gross , xen-devel@lists.xenproject.org Cc: Wei Liu , Anthony PERARD References: <20230530085418.5417-1-jgross@suse.com> <20230530085418.5417-11-jgross@suse.com> <5eee062b-8028-bc5e-2a5c-2422430894e6@xen.org> From: Julien Grall In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Hi, On 12/06/2023 08:02, Juergen Gross wrote: > On 09.06.23 20:09, Julien Grall wrote: >> Hi Juergen, >> >> On 30/05/2023 09:54, Juergen Gross wrote: >>> Replace the usage of the xenstore private list.h header with the >>> common xen_list.h one. >>> >>> Signed-off-by: Juergen Gross >>> --- >>> V3: >>> - new patch >>> --- >>>   tools/libs/store/xs.c | 56 +++++++++++++++++++++---------------------- >>>   1 file changed, 28 insertions(+), 28 deletions(-) >>> >>> diff --git a/tools/libs/store/xs.c b/tools/libs/store/xs.c >>> index 7a9a8b1656..3813b69ae2 100644 >>> --- a/tools/libs/store/xs.c >>> +++ b/tools/libs/store/xs.c >>> @@ -35,13 +35,13 @@ >>>   #include >>>   #include "xenstore.h" >>>   #include "xs_lib.h" >>> -#include "list.h" >>>   #include "utils.h" >>>   #include >>> +#include >>>   struct xs_stored_msg { >>> -    struct list_head list; >>> +    XEN_TAILQ_ENTRY(struct xs_stored_msg) list; >> >> I have expected us to use to XEN_LIST_*. Can you explain why you >> didn't use them? > > XEN_LIST_* doesn't provide a list_add_tail() replacement. Ok. Did you look at whether list_add_tail() could be replaced with adding the element at the head? Anyway, I can understand that this would not be a straight swap. But it would be good to have some rationale in the commit message as this helps understanding the choice. With that: Acked-by: Julien Grall Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Mon Jun 12 10:37:54 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 10:37:54 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546969.854101 (Exim 4.92) (envelope-from ) id 1q8evc-0001AC-TH; Mon, 12 Jun 2023 10:37:40 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546969.854101; Mon, 12 Jun 2023 10:37:40 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8evc-0001A5-QU; Mon, 12 Jun 2023 10:37:40 +0000 Received: by outflank-mailman (input) for mailman id 546969; Mon, 12 Jun 2023 10:37:40 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8evc-00019z-7y for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 10:37:40 +0000 Received: from smtp-out2.suse.de (smtp-out2.suse.de [195.135.220.29]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 26c69f32-090d-11ee-b232-6b7b168915f2; Mon, 12 Jun 2023 12:37:38 +0200 (CEST) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by smtp-out2.suse.de (Postfix) with ESMTPS id 45A9E2032C; Mon, 12 Jun 2023 10:37:38 +0000 (UTC) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id 214E4138EC; Mon, 12 Jun 2023 10:37:38 +0000 (UTC) Received: from dovecot-director2.suse.de ([192.168.254.65]) by imap2.suse-dmz.suse.de with ESMTPSA id YIWpBnL1hmR+LwAAMHmgww (envelope-from ); Mon, 12 Jun 2023 10:37:38 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 26c69f32-090d-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1; t=1686566258; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=eldJTJiaQfpZOuu612fRcRQEVGPJ6U1/I/FXQ9+H7xI=; b=JvjoKXB67oIfS7GC/WdKy1cuu9WAe+cnnTMtPBTLjlgsm0zjaThc57uh2Oo5kP5wAL+mjG r0lmmidGvcGnd/os975fZvPM6lFsqQVB+75008WibtHMwU/T3Rb64TVlTb0VFYKdBU4DIL PVIQ955X36MKk7tAvaq6CxKAxzRGyIs= Message-ID: <8dcedf30-996c-6746-5788-253e07ff8467@suse.com> Date: Mon, 12 Jun 2023 12:37:37 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH v3 10/16] tools/libs/store: use xen_list.h instead of xenstore/list.h Content-Language: en-US To: Julien Grall , xen-devel@lists.xenproject.org Cc: Wei Liu , Anthony PERARD References: <20230530085418.5417-1-jgross@suse.com> <20230530085418.5417-11-jgross@suse.com> <5eee062b-8028-bc5e-2a5c-2422430894e6@xen.org> From: Juergen Gross In-Reply-To: Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="------------ltnKM3evRlChX2352LKHoQt1" This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --------------ltnKM3evRlChX2352LKHoQt1 Content-Type: multipart/mixed; boundary="------------i07Sghjrq4wy5Vc0Dj0C8YO5"; protected-headers="v1" From: Juergen Gross To: Julien Grall , xen-devel@lists.xenproject.org Cc: Wei Liu , Anthony PERARD Message-ID: <8dcedf30-996c-6746-5788-253e07ff8467@suse.com> Subject: Re: [PATCH v3 10/16] tools/libs/store: use xen_list.h instead of xenstore/list.h References: <20230530085418.5417-1-jgross@suse.com> <20230530085418.5417-11-jgross@suse.com> <5eee062b-8028-bc5e-2a5c-2422430894e6@xen.org> In-Reply-To: --------------i07Sghjrq4wy5Vc0Dj0C8YO5 Content-Type: multipart/mixed; boundary="------------luMvz4TA700VhsA70m2twlJ0" --------------luMvz4TA700VhsA70m2twlJ0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: base64 T24gMTIuMDYuMjMgMTI6MzQsIEp1bGllbiBHcmFsbCB3cm90ZToNCj4gSGksDQo+IA0KPiBP biAxMi8wNi8yMDIzIDA4OjAyLCBKdWVyZ2VuIEdyb3NzIHdyb3RlOg0KPj4gT24gMDkuMDYu MjMgMjA6MDksIEp1bGllbiBHcmFsbCB3cm90ZToNCj4+PiBIaSBKdWVyZ2VuLA0KPj4+DQo+ Pj4gT24gMzAvMDUvMjAyMyAwOTo1NCwgSnVlcmdlbiBHcm9zcyB3cm90ZToNCj4+Pj4gUmVw bGFjZSB0aGUgdXNhZ2Ugb2YgdGhlIHhlbnN0b3JlIHByaXZhdGUgbGlzdC5oIGhlYWRlciB3 aXRoIHRoZQ0KPj4+PiBjb21tb24geGVuX2xpc3QuaCBvbmUuDQo+Pj4+DQo+Pj4+IFNpZ25l ZC1vZmYtYnk6IEp1ZXJnZW4gR3Jvc3MgPGpncm9zc0BzdXNlLmNvbT4NCj4+Pj4gLS0tDQo+ Pj4+IFYzOg0KPj4+PiAtIG5ldyBwYXRjaA0KPj4+PiAtLS0NCj4+Pj4gwqAgdG9vbHMvbGli cy9zdG9yZS94cy5jIHwgNTYgKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0t LS0tLS0tLQ0KPj4+PiDCoCAxIGZpbGUgY2hhbmdlZCwgMjggaW5zZXJ0aW9ucygrKSwgMjgg ZGVsZXRpb25zKC0pDQo+Pj4+DQo+Pj4+IGRpZmYgLS1naXQgYS90b29scy9saWJzL3N0b3Jl L3hzLmMgYi90b29scy9saWJzL3N0b3JlL3hzLmMNCj4+Pj4gaW5kZXggN2E5YThiMTY1Ni4u MzgxM2I2OWFlMiAxMDA2NDQNCj4+Pj4gLS0tIGEvdG9vbHMvbGlicy9zdG9yZS94cy5jDQo+ Pj4+ICsrKyBiL3Rvb2xzL2xpYnMvc3RvcmUveHMuYw0KPj4+PiBAQCAtMzUsMTMgKzM1LDEz IEBADQo+Pj4+IMKgICNpbmNsdWRlIDxlcnJuby5oPg0KPj4+PiDCoCAjaW5jbHVkZSAieGVu c3RvcmUuaCINCj4+Pj4gwqAgI2luY2x1ZGUgInhzX2xpYi5oIg0KPj4+PiAtI2luY2x1ZGUg Imxpc3QuaCINCj4+Pj4gwqAgI2luY2x1ZGUgInV0aWxzLmgiDQo+Pj4+IMKgICNpbmNsdWRl IDx4ZW50b29sY29yZV9pbnRlcm5hbC5oPg0KPj4+PiArI2luY2x1ZGUgPHhlbl9saXN0Lmg+ DQo+Pj4+IMKgIHN0cnVjdCB4c19zdG9yZWRfbXNnIHsNCj4+Pj4gLcKgwqDCoCBzdHJ1Y3Qg bGlzdF9oZWFkIGxpc3Q7DQo+Pj4+ICvCoMKgwqAgWEVOX1RBSUxRX0VOVFJZKHN0cnVjdCB4 c19zdG9yZWRfbXNnKSBsaXN0Ow0KPj4+DQo+Pj4gSSBoYXZlIGV4cGVjdGVkIHVzIHRvIHVz ZSB0byBYRU5fTElTVF8qLiBDYW4geW91IGV4cGxhaW4gd2h5IHlvdSBkaWRuJ3QgdXNlIA0K Pj4+IHRoZW0/DQo+Pg0KPj4gWEVOX0xJU1RfKiBkb2Vzbid0IHByb3ZpZGUgYSBsaXN0X2Fk ZF90YWlsKCkgcmVwbGFjZW1lbnQuDQo+IA0KPiBPay4gRGlkIHlvdSBsb29rIGF0IHdoZXRo ZXIgbGlzdF9hZGRfdGFpbCgpIGNvdWxkIGJlIHJlcGxhY2VkIHdpdGggYWRkaW5nIHRoZSAN Cj4gZWxlbWVudCBhdCB0aGUgaGVhZD8NCj4gDQo+IEFueXdheSwgSSBjYW4gdW5kZXJzdGFu ZCB0aGF0IHRoaXMgd291bGQgbm90IGJlIGEgc3RyYWlnaHQgc3dhcC4gQnV0IGl0IHdvdWxk IGJlIA0KPiBnb29kIHRvIGhhdmUgc29tZSByYXRpb25hbGUgaW4gdGhlIGNvbW1pdCBtZXNz YWdlIGFzIHRoaXMgaGVscHMgdW5kZXJzdGFuZGluZyANCj4gdGhlIGNob2ljZS4NCg0KT2th eSwgSSdsbCBhZGQ6ICJVc2UgdGhlIFhFTl9UQUlMUSB0eXBlIGxpc3QsIGFzIGl0IGFsbG93 cyB0byBkaXJlY3RseSBzd2FwIHRoZQ0KcmVsYXRlZCBtYWNyb3MvZnVuY3Rpb25zIHdpdGhv dXQgaGF2aW5nIHRvIGNoYW5nZSB0aGUgbG9naWMuIg0KDQo+IA0KPiBXaXRoIHRoYXQ6DQo+ IA0KPiBBY2tlZC1ieTogSnVsaWVuIEdyYWxsIDxqZ3JhbGxAYW1hem9uLmNvbT4NCg0KVGhh bmtzLA0KDQoNCkp1ZXJnZW4NCg0K --------------luMvz4TA700VhsA70m2twlJ0 Content-Type: application/pgp-keys; name="OpenPGP_0xB0DE9DD628BF132F.asc" Content-Disposition: attachment; filename="OpenPGP_0xB0DE9DD628BF132F.asc" Content-Description: OpenPGP public key Content-Transfer-Encoding: quoted-printable -----BEGIN PGP PUBLIC KEY BLOCK----- xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjri oyspZKOBycWxw3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2 kaV2KL9650I1SJvedYm8Of8Zd621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i 1TXkH09XSSI8mEQ/ouNcMvIJNwQpd369y9bfIhWUiVXEK7MlRgUG6MvIj6Y3Am/B BLUVbDa4+gmzDC9ezlZkTZG2t14zWPvxXP3FAp2pkW0xqG7/377qptDmrk42GlSK N4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEBAAHNHEp1ZXJnZW4gR3Jvc3Mg PGpnQHBmdXBmLm5ldD7CwHkEEwECACMFAlOMcBYCGwMHCwkIBwMCAQYVCAIJCgsE FgIDAQIeAQIXgAAKCRCw3p3WKL8TL0KdB/93FcIZ3GCNwFU0u3EjNbNjmXBKDY4F UGNQH2lvWAUy+dnyThpwdtF/jQ6j9RwE8VP0+NXcYpGJDWlNb9/JmYqLiX2Q3Tye vpB0CA3dbBQp0OW0fgCetToGIQrg0MbD1C/sEOv8Mr4NAfbauXjZlvTj30H2jO0u +6WGM6nHwbh2l5O8ZiHkH32iaSTfN7Eu5RnNVUJbvoPHZ8SlM4KWm8rG+lIkGurq qu5gu8q8ZMKdsdGC4bBxdQKDKHEFExLJK/nRPFmAuGlId1E3fe10v5QL+qHI3EIP tyfE7i9Hz6rVwi7lWKgh7pe0ZvatAudZ+JNIlBKptb64FaiIOAWDCx1SzR9KdWVy Z2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+wsB5BBMBAgAjBQJTjHCvAhsDBwsJ CAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey/HmQf/RtI7kv5A2PS4 RF7HoZhPVPogNVbC4YA6lW7DrWf0teC0RR3MzXfy6pJ+7KLgkqMlrAbN/8Dvjoz7 8X+5vhH/rDLa9BuZQlhFmvcGtCF8eR0T1v0nC/nuAFVGy+67q2DH8As3KPu0344T BDpAvr2uYM4tSqxK4DURx5INz4ZZ0WNFHcqsfvlGJALDeE0LhITTd9jLzdDad1pQ SToCnLl6SBJZjDOX9QQcyUigZFtCXFst4dlsvddrxyqT1f17+2cFSdu7+ynLmXBK 7abQ3rwJY8SbRO2iRulogc5vr/RLMMlscDAiDkaFQWLoqHHOdfO9rURssHNN8WkM nQfvUewRz80hSnVlcmdlbiBHcm9zcyA8amdyb3NzQG5vdmVsbC5jb20+wsB5BBMB AgAjBQJTjHDXAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/ Ey8PUQf/ehmgCI9jB9hlgexLvgOtf7PJnFOXgMLdBQgBlVPO3/D9R8LtF9DBAFPN hlrsfIG/SqICoRCqUcJ96Pn3P7UUinFG/I0ECGF4EvTE1jnDkfJZr6jrbjgyoZHi w/4BNwSTL9rWASyLgqlA8u1mf+c2yUwcGhgkRAd1gOwungxcwzwqgljf0N51N5Jf VRHRtyfwq/ge+YEkDGcTU6Y0sPOuj4Dyfm8fJzdfHNQsWq3PnczLVELStJNdapwP OoE+lotufe3AM2vAEYJ9rTz3Cki4JFUsgLkHFqGZarrPGi1eyQcXeluldO3m91NK /1xMI3/+8jbO0tsn1tqSEUGIJi7ox80eSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1 c2UuZGU+wsB5BBMBAgAjBQJTjHDrAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgEC F4AACgkQsN6d1ii/Ey+LhQf9GL45eU5vOowA2u5N3g3OZUEBmDHVVbqMtzwlmNC4 k9Kx39r5s2vcFl4tXqW7g9/ViXYuiDXb0RfUpZiIUW89siKrkzmQ5dM7wRqzgJpJ wK8Bn2MIxAKArekWpiCKvBOB/Cc+3EXE78XdlxLyOi/NrmSGRIov0karw2RzMNOu 5D+jLRZQd1Sv27AR+IP3I8U4aqnhLpwhK7MEy9oCILlgZ1QZe49kpcumcZKORmzB TNh30FVKK1EvmV2xAKDoaEOgQB4iFQLhJCdP1I5aSgM5IVFdn7v5YgEYuJYx37Io N1EblHI//x/e2AaIHpzK5h88NEawQsaNRpNSrcfbFmAg987ATQRTjHAWAQgAyzH6 AOODMBjgfWE9VeCgsrwH3exNAU32gLq2xvjpWnHIs98ndPUDpnoxWQugJ6MpMncr 0xSwFmHEgnSEjK/PAjppgmyc57BwKII3sV4on+gDVFJR6Y8ZRwgnBC5mVM6JjQ5x Dk8WRXljExRfUX9pNhdE5eBOZJrDRoLUmmjDtKzWaDhIg/+1Hzz93X4fCQkNVbVF LELU9bMaLPBG/x5q4iYZ2k2ex6d47YE1ZFdMm6YBYMOljGkZKwYde5ldM9mo45mm we0icXKLkpEdIXKTZeKDO+Hdv1aqFuAcccTg9RXDQjmwhC3yEmrmcfl0+rPghO0I v3OOImwTEe4co3c1mwARAQABwsBfBBgBAgAJBQJTjHAWAhsMAAoJELDendYovxMv Q/gH/1ha96vm4P/L+bQpJwrZ/dneZcmEwTbe8YFsw2V/Buv6Z4Mysln3nQK5ZadD 534CF7TDVft7fC4tU4PONxF5D+/tvgkPfDAfF77zy2AH1vJzQ1fOU8lYFpZXTXIH b+559UqvIB8AdgR3SAJGHHt4RKA0F7f5ipYBBrC6cyXJyyoprT10EMvU8VGiwXvT yJz3fjoYsdFzpWPlJEBRMedCot60g5dmbdrZ5DWClAr0yau47zpWj3enf1tLWaqc suylWsviuGjKGw7KHQd3bxALOknAp4dN3QwBYCKuZ7AddY9yjynVaD5X7nF9nO5B jR/i1DG86lem3iBDXzXsZDn8R38=3D =3D2wuH -----END PGP PUBLIC KEY BLOCK----- --------------luMvz4TA700VhsA70m2twlJ0-- --------------i07Sghjrq4wy5Vc0Dj0C8YO5-- --------------ltnKM3evRlChX2352LKHoQt1 Content-Type: application/pgp-signature; name="OpenPGP_signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="OpenPGP_signature" -----BEGIN PGP SIGNATURE----- wsB5BAABCAAjFiEEhRJncuj2BJSl0Jf3sN6d1ii/Ey8FAmSG9XEFAwAAAAAACgkQsN6d1ii/Ey9R xgf+P4Rh1ghueYFS6zNrn79d1IEBqkzoomK79POuaEWGRMgu6WVWvixXl2aJHpRQtbK0BG3xGy1p Ya9iImS87u9rIb/tmbDs4Bq3nwDJr0EiFRHnRWYtMYtjmZQN5JBs0jd0e/tiPxdwCqxZq+uTOzg6 ayghcLzxkk6Z76mwT0y/LthCPauyKRarfS/smE5d9wUZYypk2MS5g3kDXuuUGE4JzvSmxWfoOyOS 2dCTvGIkHXzZqZQ5iWKo8T/e/QD97aKKazeUVNcHLi4srwu2KqS7g7ABJXTsW9xJoEejL8yoeVQC YoCHSG22Za5kY6dSbplYSJb2YDlQPPGT7sF8bFs0vw== =tmEy -----END PGP SIGNATURE----- --------------ltnKM3evRlChX2352LKHoQt1-- From xen-devel-bounces@lists.xenproject.org Mon Jun 12 10:38:25 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 10:38:25 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546973.854111 (Exim 4.92) (envelope-from ) id 1q8ewB-0001f8-5k; Mon, 12 Jun 2023 10:38:15 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546973.854111; Mon, 12 Jun 2023 10:38:15 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8ewB-0001f1-2N; Mon, 12 Jun 2023 10:38:15 +0000 Received: by outflank-mailman (input) for mailman id 546973; Mon, 12 Jun 2023 10:38:13 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8ew9-0001el-UZ for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 10:38:13 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8ew9-0003zR-NT; Mon, 12 Jun 2023 10:38:13 +0000 Received: from gw1.octic.net ([88.97.20.152] helo=[10.0.1.240]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1q8ew9-0006fG-ID; Mon, 12 Jun 2023 10:38:13 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=Wobk4ZwG0zhfHKyHbAyeE/huMpWbbMl1Bps90AxVHFI=; b=iQF3icNm2t1Hd/2kRGRmgcwZlX rd/eDpzOSZDVAZi7K5oOKsQLsujxJV2ru00bA4mj8dHkwH4sevHUEpp/IYfkdmTy1sThtgJ/azqhA gYsdeLQa2tzxDyuQPzmFwWL5znIMwvEsWVlrWqwJAlkeV5koAw371c8ysKLqKhyRjSGY=; Message-ID: <24566db9-e6da-0b2b-e7a3-5edef81d159c@xen.org> Date: Mon, 12 Jun 2023 11:38:12 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.11.2 Subject: Re: [PATCH] xen/arm: rename guest_cpuinfo in domain_cpuinfo Content-Language: en-US To: Bertrand Marquis , xen-devel@lists.xenproject.org Cc: Stefano Stabellini , Volodymyr Babchuk References: <7e18eceb2fb2f4cac991773a8697e9bf50b89aaf.1686316358.git.bertrand.marquis@arm.com> From: Julien Grall In-Reply-To: <7e18eceb2fb2f4cac991773a8697e9bf50b89aaf.1686316358.git.bertrand.marquis@arm.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi Bertrand, On 09/06/2023 14:13, Bertrand Marquis wrote: > Rename the guest_cpuinfo structure to domain_cpuinfo as it is not only > used for guests but also for dom0 so domain is a more suitable name. > > While there also rename the create_guest_cpuinfo function to > create_domain_cpuinfo to be coherent. > > Signed-off-by: Bertrand Marquis > --- > xen/arch/arm/arm64/vsysreg.c | 6 ++-- > xen/arch/arm/cpufeature.c | 40 +++++++++++++-------------- > xen/arch/arm/include/asm/cpufeature.h | 2 +- > xen/arch/arm/vcpreg.c | 2 +- > 4 files changed, 25 insertions(+), 25 deletions(-) > > diff --git a/xen/arch/arm/arm64/vsysreg.c b/xen/arch/arm/arm64/vsysreg.c > index fe31f7b3827f..b5d54c569b33 100644 > --- a/xen/arch/arm/arm64/vsysreg.c > +++ b/xen/arch/arm/arm64/vsysreg.c > @@ -76,7 +76,7 @@ TVM_REG(CONTEXTIDR_EL1) > case HSR_SYSREG_##reg: \ > { \ > return handle_ro_read_val(regs, regidx, hsr.sysreg.read, hsr, \ > - 1, guest_cpuinfo.field.bits[offset]); \ > + 1, domain_cpuinfo.field.bits[offset]); \ > } > > void do_sysreg(struct cpu_user_regs *regs, > @@ -300,7 +300,7 @@ void do_sysreg(struct cpu_user_regs *regs, > > case HSR_SYSREG_ID_AA64PFR0_EL1: > { > - register_t guest_reg_value = guest_cpuinfo.pfr64.bits[0]; > + register_t guest_reg_value = domain_cpuinfo.pfr64.bits[0]; > > if ( is_sve_domain(v->domain) ) > { > @@ -336,7 +336,7 @@ void do_sysreg(struct cpu_user_regs *regs, > * When the guest has the SVE feature enabled, the whole id_aa64zfr0_el1 > * needs to be exposed. > */ > - register_t guest_reg_value = guest_cpuinfo.zfr64.bits[0]; > + register_t guest_reg_value = domain_cpuinfo.zfr64.bits[0]; > > if ( is_sve_domain(v->domain) ) > guest_reg_value = system_cpuinfo.zfr64.bits[0]; > diff --git a/xen/arch/arm/cpufeature.c b/xen/arch/arm/cpufeature.c > index b53e1a977601..5f4644865505 100644 > --- a/xen/arch/arm/cpufeature.c > +++ b/xen/arch/arm/cpufeature.c > @@ -14,7 +14,7 @@ > > DECLARE_BITMAP(cpu_hwcaps, ARM_NCAPS); > > -struct cpuinfo_arm __read_mostly guest_cpuinfo; > +struct cpuinfo_arm __read_mostly domain_cpuinfo; > > #ifdef CONFIG_ARM_64 > static bool has_sb_instruction(const struct arm_cpu_capabilities *entry) > @@ -191,45 +191,45 @@ void identify_cpu(struct cpuinfo_arm *c) > /* > * This function is creating a cpuinfo structure with values modified to mask > * all cpu features that should not be published to guest. I noticed you modified "guests" to "domains" below but not "guest" here. Is this intended? > - * The created structure is then used to provide ID registers values to guests. > + * The created structure is then used to provide ID registers values to domains. > */ > -static int __init create_guest_cpuinfo(void) > +static int __init create_domain_cpuinfo(void) > { > /* Use the sanitized cpuinfo as initial guest cpuinfo */ Same question here. > - guest_cpuinfo = system_cpuinfo; > + domain_cpuinfo = system_cpuinfo; Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Mon Jun 12 10:39:32 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 10:39:32 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546982.854120 (Exim 4.92) (envelope-from ) id 1q8exF-0002Jg-Kz; Mon, 12 Jun 2023 10:39:21 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546982.854120; Mon, 12 Jun 2023 10:39:21 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8exF-0002JZ-IW; Mon, 12 Jun 2023 10:39:21 +0000 Received: by outflank-mailman (input) for mailman id 546982; Mon, 12 Jun 2023 10:39:20 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8exE-0002J8-7Q for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 10:39:20 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8exD-000410-Aa; Mon, 12 Jun 2023 10:39:19 +0000 Received: from gw1.octic.net ([88.97.20.152] helo=[10.0.1.240]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1q8exD-0006hf-33; Mon, 12 Jun 2023 10:39:19 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=lpAUEBrhc916bsDup1vsTCIzzVnPp97Sd4hzhuCXjRY=; b=lYoo1NXpTNr2DQnJLgZmDpT936 nPemmWJ0YcrB7HAWOGam2Fvz2exsT7I34b9Df4BYRWe+8ULXQZyiPOcNxdQC/oIq4I6mYkSnymAc3 Q+RrFrTYEVRSJLsITwOyIrHum1TUEzPE+MgXF7CnltRI16CVMQXIE9JhPOvcJZVVIBE8=; Message-ID: <1e4ed7c3-e949-7a77-053d-f987b44fa73a@xen.org> Date: Mon, 12 Jun 2023 11:39:17 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.11.2 Subject: Re: [PATCH v3 10/16] tools/libs/store: use xen_list.h instead of xenstore/list.h Content-Language: en-US To: Juergen Gross , xen-devel@lists.xenproject.org Cc: Wei Liu , Anthony PERARD References: <20230530085418.5417-1-jgross@suse.com> <20230530085418.5417-11-jgross@suse.com> <5eee062b-8028-bc5e-2a5c-2422430894e6@xen.org> <8dcedf30-996c-6746-5788-253e07ff8467@suse.com> From: Julien Grall In-Reply-To: <8dcedf30-996c-6746-5788-253e07ff8467@suse.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit On 12/06/2023 11:37, Juergen Gross wrote: > On 12.06.23 12:34, Julien Grall wrote: >> Hi, >> >> On 12/06/2023 08:02, Juergen Gross wrote: >>> On 09.06.23 20:09, Julien Grall wrote: >>>> Hi Juergen, >>>> >>>> On 30/05/2023 09:54, Juergen Gross wrote: >>>>> Replace the usage of the xenstore private list.h header with the >>>>> common xen_list.h one. >>>>> >>>>> Signed-off-by: Juergen Gross >>>>> --- >>>>> V3: >>>>> - new patch >>>>> --- >>>>>   tools/libs/store/xs.c | 56 >>>>> +++++++++++++++++++++---------------------- >>>>>   1 file changed, 28 insertions(+), 28 deletions(-) >>>>> >>>>> diff --git a/tools/libs/store/xs.c b/tools/libs/store/xs.c >>>>> index 7a9a8b1656..3813b69ae2 100644 >>>>> --- a/tools/libs/store/xs.c >>>>> +++ b/tools/libs/store/xs.c >>>>> @@ -35,13 +35,13 @@ >>>>>   #include >>>>>   #include "xenstore.h" >>>>>   #include "xs_lib.h" >>>>> -#include "list.h" >>>>>   #include "utils.h" >>>>>   #include >>>>> +#include >>>>>   struct xs_stored_msg { >>>>> -    struct list_head list; >>>>> +    XEN_TAILQ_ENTRY(struct xs_stored_msg) list; >>>> >>>> I have expected us to use to XEN_LIST_*. Can you explain why you >>>> didn't use them? >>> >>> XEN_LIST_* doesn't provide a list_add_tail() replacement. >> >> Ok. Did you look at whether list_add_tail() could be replaced with >> adding the element at the head? >> >> Anyway, I can understand that this would not be a straight swap. But >> it would be good to have some rationale in the commit message as this >> helps understanding the choice. > > Okay, I'll add: "Use the XEN_TAILQ type list, as it allows to directly > swap the > related macros/functions without having to change the logic." Thanks. I am happy to add it whilst committing. Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Mon Jun 12 10:41:15 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 10:41:15 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546988.854130 (Exim 4.92) (envelope-from ) id 1q8ez4-0003l2-0i; Mon, 12 Jun 2023 10:41:14 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546988.854130; Mon, 12 Jun 2023 10:41:13 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8ez3-0003kv-Tz; Mon, 12 Jun 2023 10:41:13 +0000 Received: by outflank-mailman (input) for mailman id 546988; Mon, 12 Jun 2023 10:41:13 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8ez3-0003kp-I0 for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 10:41:13 +0000 Received: from esa5.hc3370-68.iphmx.com (esa5.hc3370-68.iphmx.com [216.71.155.168]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id a3eabaa1-090d-11ee-8611-37d641c3527e; Mon, 12 Jun 2023 12:41:10 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: a3eabaa1-090d-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686566470; h=date:from:to:cc:subject:message-id:references: mime-version:in-reply-to; bh=nEetswxUePN3M2K8xNdmA+3YEAsM8rCQOOG8Dw6F+fI=; b=APt9ie0sanDV+F4mBFfIoPuQJttmi+RLJ++jV19vVkzgwKYhD54vJnBL Ro+eTzjcfnpyBdJd2bsSDB25LXN2H25tW6xgs0mM5Ox+aG8W2+GYYewQ2 UjJec+jodfoHzj4JKEmIjNetwFQdzymZZgMPFImuFLq6LUQoh3ihqZRHJ E=; Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none X-SBRS: 4.0 X-MesageID: 111192826 X-Ironport-Server: esa5.hc3370-68.iphmx.com X-Remote-IP: 162.221.156.123 X-Policy: $RELAYED IronPort-Data: A9a23:6EQORqNF66qYRlDvrR2vl8FynXyQoLVcMsEvi/4bfWQNrUor1mEPn TcbWTqOb6uPZmDzLdt+Ody0/R9Q6JHXmIJhGwto+SlhQUwRpJueD7x1DKtS0wC6dZSfER09v 63yTvGacajYm1eF/k/F3oDJ9CU6jufQAOKnUoYoAwgpLSd8UiAtlBl/rOAwh49skLCRDhiE/ Nj/uKUzAnf8s9JPGjxSs/rrRC9H5qyo42tG5wZmPJingXeF/5UrJMNHTU2OByOQrrl8RoaSW +vFxbelyWLVlz9F5gSNy+uTnuUiG9Y+DCDW4pZkc/HKbitq/0Te5p0TJvsEAXq7vh3S9zxHJ HehgrTrIeshFvWkdO3wyHC0GQkmVUFN0OevzXRSLaV/ZqAJGpfh66wGMa04AWEX0vdHClx03 NgeFBQudDyCo++P3e6fFfY506zPLOGzVG8eknRpzDWfBvc6W5HTBa7N4Le03h9p2JoIR6yHI ZNEN3w2Nk+ojx5nYz/7DLo3mvuogX/uNSVVsluPqYI84nTJzRw327/oWDbQUoXTHJwExBbC+ Aoq+UzZGDgGK8TCygGH/27vnMbJ2gD8A7IrQejQGvlC3wTImz175ActfVy/qPeRg0OmVdZSb UAZkgI+oK53+EG1Q93VWxyjvGXCrhMaQ8BXEeAx9EeK0KW8yxmdLngJSHhGctNOnMYuSCYjz FOhg9LjDjspu7qQIU9x7Z/N82n0Y3JMazZfO2ldF1BtD8TfTJ8bnyLEc+xKNKiJqv7vNTDUz gmX8AxhmOBG5SIU7JlX7Wwrkhr1+MiXFF5uvVSKNo62xlgnPdD4PuRE/XCetK8dd9jBEzFtq VBew6CjAPYy4YZhfcBnaMEEB/mX6vmMK1UwanY/TsB6p1xBF5NOFL28AQ2Sx28zaK7ogRezP CfuVfp5vfe/xkeCY65teJ6WAM8316XmHtmNfqmKPoQTOsgtLF7foH8GiausM4fFyhFErE3CE c3DLZbE4YgyVMyLMwZat89CiOR2l0jSNEvYRIzhzgTP7FZtTCf9dFvxC3PXNrpRxPrd8G3oH yN3a5PiJ+N3DLevPUE6MOc7cTg3EJTMLcys8JELKLfYc1AO9aNII6a5/I7NsrdNx8x9/tokN FnnMqOE4DITXUH6FDg= IronPort-HdrOrdr: A9a23:IWtqNaxUH/nGjT7My5zeKrPw2r1zdoMgy1knxilNoHxuH/BwWf rPoB17726TtN91YhsdcL+7V5VoLUmzyXcx2/hyAV7AZniAhILLFvAA0WKK+VSJdxEWtNQtsJ uIG5IUNDSaNykfsS+V2miF+9ZL+qj5zEir792usUuEm2tRGtBdBwQSMHfqLqVvLjM2fKbQjP Cnl7d6TzzLQwVuUu2LQkMrcsLkvNPxmJfvcXc9dmIaAFnnt0LS1FbieSLopCsjbw== X-Talos-CUID: 9a23:m2SK9m7AUXfxxbAxG9ss5X4fJ/oMVnvh6FTKD06cBF90FJnKVgrF X-Talos-MUID: =?us-ascii?q?9a23=3ANJHxtQzxJpbd5BTGZzMo3eYO8rOaqIS0IVwSicg?= =?us-ascii?q?FgMuJKW9qEjHarzPscrZyfw=3D=3D?= X-IronPort-AV: E=Sophos;i="6.00,236,1681185600"; d="scan'208";a="111192826" Date: Mon, 12 Jun 2023 11:40:55 +0100 From: Anthony PERARD To: Olaf Hering CC: , Wei Liu Subject: Re: [PATCH v1] tools: fix make rpmball Message-ID: <6734a258-3396-4641-b9bf-edf6193a8095@perard> References: <20230530111807.6521-1-olaf@aepfle.de> MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Disposition: inline In-Reply-To: <20230530111807.6521-1-olaf@aepfle.de> On Tue, May 30, 2023 at 01:18:07PM +0200, Olaf Hering wrote: > Commit 438c5ffa44e99cceb574c0f9946aacacdedd2952 ("rpmball: Adjust to > new rpm, do not require --force") attempted to handle stricter > directory permissions in newer distributions. > > This introduced a few issues: > - /boot used to be a constant prior commit > 6475d700055fa952f7671cee982a23de2f5e4a7c ("use BOOT_DIR as xen.gz > install location"), since this commit the location has to be > referenced via ${BOOT_DIR} > - it assumed the prefix and the various configurable paths match the > glob pattern /*/*/* > > Adjust the code to build a filelist on demand and filter directories > from an installed filesystem.rpm. > > Take the opportunity to replace the usage of $RPM_BUILD_ROOT with > %buildroot, and use pushd/popd pairs. > > Fixes: 438c5ffa4 ("rpmball: Adjust to new rpm, do not require --force") > > Signed-off-by: Olaf Hering > --- > tools/misc/mkrpm | 33 ++++++++++++++++++++++++--------- > 1 file changed, 24 insertions(+), 9 deletions(-) > > diff --git a/tools/misc/mkrpm b/tools/misc/mkrpm > index 74f6761bb0..a7bf854197 100644 > --- a/tools/misc/mkrpm > +++ b/tools/misc/mkrpm > @@ -50,20 +50,35 @@ uninstall. > %build > > %install > -rm -rf \$RPM_BUILD_ROOT > -mkdir -p \$RPM_BUILD_ROOT > -cd %{_xenroot} > -dist/install.sh \$RPM_BUILD_ROOT/ > +rm -rf %buildroot > +mkdir -p %buildroot > +pushd %_xenroot > +dist/install.sh %buildroot > + > +pushd %buildroot > +popd Are these 2 lines left over from testing? They don't appear to do anything useful. Beside that, patch looks fine: Reviewed-by: Anthony PERARD Thanks, -- Anthony PERARD From xen-devel-bounces@lists.xenproject.org Mon Jun 12 10:53:29 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 10:53:29 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546994.854140 (Exim 4.92) (envelope-from ) id 1q8fAf-0005RL-28; Mon, 12 Jun 2023 10:53:13 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546994.854140; Mon, 12 Jun 2023 10:53:13 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8fAe-0005RE-Ve; Mon, 12 Jun 2023 10:53:12 +0000 Received: by outflank-mailman (input) for mailman id 546994; Mon, 12 Jun 2023 10:53:11 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8fAd-0005R8-K2 for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 10:53:11 +0000 Received: from mail-ed1-x52a.google.com (mail-ed1-x52a.google.com [2a00:1450:4864:20::52a]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 522a82ca-090f-11ee-b232-6b7b168915f2; Mon, 12 Jun 2023 12:53:10 +0200 (CEST) Received: by mail-ed1-x52a.google.com with SMTP id 4fb4d7f45d1cf-51491b87565so7328723a12.1 for ; Mon, 12 Jun 2023 03:53:10 -0700 (PDT) Received: from [172.16.11.116] ([81.216.59.226]) by smtp.gmail.com with ESMTPSA id g20-20020aa7c854000000b005169cd0edffsm4876752edt.35.2023.06.12.03.53.07 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Mon, 12 Jun 2023 03:53:09 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 522a82ca-090f-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=rasmusvillemoes.dk; s=google; t=1686567190; x=1689159190; h=content-transfer-encoding:in-reply-to:from:references:cc:to :content-language:subject:user-agent:mime-version:date:message-id :from:to:cc:subject:date:message-id:reply-to; bh=8SLBrnwbHCvnK+EhlE8eJ/+pq9MyO6Q+aOHOn+73hw8=; b=I4Jo53AtXKUAWujuX6TPrsPzylsWLanXZel9thkXkSIXOVui0kQwzZh7YdgZmor2Jt tf80rFrTpAgnDS6xkg4Y4x6JU6myT/iURXuMuHmCcitBuH5EU/XswWhVMDm6BPH7P2nw YALTxnobGGv+uPJIXW5C/Hq8IwS3T/UAFliuw= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686567190; x=1689159190; h=content-transfer-encoding:in-reply-to:from:references:cc:to :content-language:subject:user-agent:mime-version:date:message-id :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=8SLBrnwbHCvnK+EhlE8eJ/+pq9MyO6Q+aOHOn+73hw8=; b=ijBFudamE4GlFErK9EnUKvQ0kGCZeAzBlyg09oneYmFOsWjRSqXxkqU+x/bDAFoSGM DMY4eeLQx1q5frjK1IpTP8L1+upiC2+BPTZ1wKS0cNutcokwmqRVNQ0ZtEF6CHzgixpq qPxJDXYdfnIyCzdqcHmlRL6/IwJYWtAd8Turo2dJqenntvh1wp/blXX7MHVl3zMu6tKy k/OnrAUdJZRl+NlcTXHlwp14GNQ5ujMuv0w0WXaOiBrVky4pzKEMchz8ZSbJnPYTg/qd zo5xR8qlzhNDshRvmCtZ9n0VY8x/jw+X0gMrQ+7HPge2KAu7LN1J2fqDI6j7lRgE/zfV 7g6A== X-Gm-Message-State: AC+VfDy9mmIIodPTNci/BFhhy6S+z2P9odvT4z5xty0F6Gc2Fv9yde63 UGLN+wNAI/XJVQw7hXivTOse0Q== X-Google-Smtp-Source: ACHHUZ7U3uNm5on+y8jIMuDZ1cfGc9aiIN8XESopyRzBAdqMM/RLAE//onmpwNxNuERJC8T8wQeJ7A== X-Received: by 2002:aa7:d40e:0:b0:510:8ee2:2b05 with SMTP id z14-20020aa7d40e000000b005108ee22b05mr5081219edq.38.1686567189783; Mon, 12 Jun 2023 03:53:09 -0700 (PDT) Message-ID: <96b45245-bdd8-119d-e7a9-44eb36be0f97@rasmusvillemoes.dk> Date: Mon, 12 Jun 2023 12:53:06 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH v3 2/4] vsscanf(): Integer overflow is a conversion failure Content-Language: en-US, da To: Demi Marie Obenour , Hans de Goede , Mauro Carvalho Chehab , Sakari Ailus , Greg Kroah-Hartman , Juergen Gross , Stefano Stabellini , Oleksandr Tyshchenko , Lee Jones , Andy Lutomirski , Thomas Gleixner , Vincenzo Frascino , Petr Mladek , Steven Rostedt , Sergey Senozhatsky , Andy Shevchenko Cc: linux-media@vger.kernel.org, linux-staging@lists.linux.dev, linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org, Linus Torvalds References: <20230610204044.3653-1-demi@invisiblethingslab.com> <20230610204044.3653-3-demi@invisiblethingslab.com> From: Rasmus Villemoes In-Reply-To: <20230610204044.3653-3-demi@invisiblethingslab.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit On 10/06/2023 22.40, Demi Marie Obenour wrote: > sscanf() and friends currently ignore integer overflow, but this is a > bad idea. It is much better to detect integer overflow errors and > consider this a conversion failure. Perhaps. And maybe I even agree. But not like this: > while (*fmt) { > /* skip any white space in format */ > @@ -3464,6 +3474,9 @@ int vsscanf(const char *buf, const char *fmt, va_list args) > break; > ++fmt; > > + allow_overflow = *fmt == '!'; > + fmt += (int)allow_overflow; > + You can't do that. Or, at least, you won't be able to actually use %!d anywhere, because the compiler will yell at you: lib/vsprintf.c: In function ‘foobar’: lib/vsprintf.c:3727:26: error: unknown conversion type character ‘!’ in format [-Werror=format=] 3727 | ret = sscanf("12345", "%!d", &val); | ^ So NAK. Also, when you make significant changes to the sscanf implementation, I'd expect the diffstat for the patch series to contain lib/test_scanf.c. Rasmus From xen-devel-bounces@lists.xenproject.org Mon Jun 12 10:54:34 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 10:54:34 +0000 Received: from list by lists.xenproject.org with outflank-mailman.546999.854150 (Exim 4.92) (envelope-from ) id 1q8fBx-0005z8-Dx; Mon, 12 Jun 2023 10:54:33 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 546999.854150; Mon, 12 Jun 2023 10:54:33 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8fBx-0005z1-Az; Mon, 12 Jun 2023 10:54:33 +0000 Received: by outflank-mailman (input) for mailman id 546999; Mon, 12 Jun 2023 10:54:32 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8fBw-0005yr-CE for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 10:54:32 +0000 Received: from EUR05-AM6-obe.outbound.protection.outlook.com (mail-am6eur05on20617.outbound.protection.outlook.com [2a01:111:f400:7e1b::617]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 822653e2-090f-11ee-b232-6b7b168915f2; Mon, 12 Jun 2023 12:54:31 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by DB9PR04MB8265.eurprd04.prod.outlook.com (2603:10a6:10:24f::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.44; Mon, 12 Jun 2023 10:54:29 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.039; Mon, 12 Jun 2023 10:54:28 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 822653e2-090f-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=hmkudCXnqUSdNV1oow6HsfKb8kVJSCP/PVl0b8cHzIp1pxYYvkPYE93RYrcuaqW6zZx2nLZvo3pNijyNSqJ5jnbMlW7zvYVFzEJpGCqs0vFU9go41cWKQipIgzNFwGNxrtru4Kmi4G18vM3mDTmOOkylfLUPZRgdcJwYAKWatGsPIT6sRhVfOyV15TwkYWjhEhjK/U3YE0sKsUt6CbdPM4UPlCPjpTKUJixOPPQSFpxEKGJTRlbKnttpCfFECmM1tAoDRnoppEvh/jCI6Xq+FseqkVlebDniRq7WAxvKJx68KsOkYJLpHw0PglKIjZanZhFGuIlJhUhqD3F0LDgtnw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=3jm9gLQLuVaj5UWJ70SJbkW9YAKVsO0ndI4ArXyURKs=; b=nsG4NsL+auZo+TG/V+0CF1YrfunId8rvtG9NdlwjepntEXa51DLaP/arSJgNaK+6tIw17QPePZlYl+108kJuClpSOVdp4NxSRrmO9IRUgIYcd2MJpU9hXZ5pVf2hdSshdUtl4glw++YF/BcBf+Tqf8UxOP37EqCqRnXDOQLj3sKrGBcNMPFPWSr+ssddtpGyN5e+h8YsXd1LIDUucGBVSZjmrUkBfzSsm2dVjBMBWoy0dg5L4n8F3AWZoNIL58XxWVfZg4XectswfEL8LUX72cGSkdBsFCFoYANwHRrs3WsQd9yXWrGAqazndnd/PqQti3j4N7wklRKlmhTt9US+Qg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=3jm9gLQLuVaj5UWJ70SJbkW9YAKVsO0ndI4ArXyURKs=; b=KCqdrte9eMC54XBKDUS+vY803XKIVOSjLrO1u5d41FTaTafMrPReObNsz2FV3Dp7r/ifP9ysNLHMEBRwkkaeJXtEssCmTf3n9M7camIucVKg/goEYjNadEipCZ+RjePJI91bPCrMJKU/CvFy1z2W2nn4KkJK2C6W/4EtSwBa91247ytYB3Bjg+bddQ9XchGO1dUUEoeeC38xHp56GG/rNjVbYsGT8UW+ORLlN/GrfGIlopDHfYvqjHi/1rhGtqkp0ljVwAGgMuNDIS0f6KZtc6Qoxhd9xQYBdD0dATRlvThxGBP3lIBiI06na7jMIY4lIsO8Ae52Z2/5R/51EK0puw== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <59b7b181-9f31-c3b0-e54f-b5f22b08572a@suse.com> Date: Mon, 12 Jun 2023 12:54:27 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: New Defects reported by Coverity Scan for XenProject Content-Language: en-US To: "xen-devel@lists.xenproject.org" References: <64859cf3a1e46_712752abb10eab98834b9@prd-scan-dashboard-0.mail> From: Jan Beulich In-Reply-To: <64859cf3a1e46_712752abb10eab98834b9@prd-scan-dashboard-0.mail> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR2P281CA0022.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:14::9) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|DB9PR04MB8265:EE_ X-MS-Office365-Filtering-Correlation-Id: c29c7faf-f28a-4605-2663-08db6b3364ed X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 5Sr6soanLxLnUcOyXlelfnKnRchssyrTn9zlYpzG7zG2ONHQw66c7Uwz81+8HY8k76EVdZN8Go/FOLcsHJ0cpiyRVY4Vf0RxmQToAbisy3QMHKHHuP6RXs459McrAI27Xf6JBJRZxOJpGFmAPuMbWBYMS10v4a4kxhhzJrxZLh9xCVYk4Vldb3aRemWn678Z/eANA+kRpa9IasD4tLGmsgc/ytDKe6YiB2+MJXwPxYTsgTG6aAkTAwOf5QYAkHxlFJMxzc9HeCSvx9JetZZ9CFWqn4FmZ+Y1B5BTihqJQmKWRPZpSIkGe4Ec5fBLj0FbzgS/EwW36v28f9pZYB2TzqauBMiE7MrQAq3jbyfS15K7pu7HV+wwtSZKQOhroYPa4NlJ11A77ZlGUX8+h/evMRNGkY0ASs+9n/h19+YZpfhFEPXMtIILSLhndp+oypI1g9A8GVsP3nGhJP1T1CokiPlNE0XG639Z4VG3rke3N/wt0NxIa5zWhas5qdizHiWsliNi4zitCEZ/WuylOa27b+kvw1eydokQouPSZMIbbVjb5PtQP9NzRVRo6tB5bj4rycgdiBJAL/sc0KpsO91lFmRLu2/VOtpevHoHq6w1F+l2au+xM8kpJduXrnG4WQFWbZGkrp3Qgp7ZERApzRjC3g== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(396003)(366004)(376002)(39860400002)(346002)(136003)(451199021)(6486002)(83380400001)(36756003)(2616005)(38100700002)(31696002)(86362001)(6506007)(6512007)(53546011)(26005)(186003)(2906002)(5660300002)(8676002)(8936002)(316002)(41300700001)(31686004)(6916009)(66946007)(66556008)(66476007)(478600001)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?MWlPSkZ6K0QxRWZwRWF1MTFsb216K2NzSFlkOTc0eVhrOEZXM2NScG5vbE4r?= =?utf-8?B?M1FJaWVwWkx0UnUxTGt0ajJoeVE4WGVEYURoUWNpNll4RCtzMk44YUd1T01B?= =?utf-8?B?R2tkYmc3bVlscDRrVTIzbUpKZEJHMDIrUkEvRFY0RXA5ajlVSlBwdHhIb1gz?= =?utf-8?B?NWd2STlOeE5HMHpzdEJBemtPeERneVJXRWJBUGVrTm1iVlZDTTl4d0NBbFBn?= =?utf-8?B?NCtycGhGb0Z2MXEzdUk2WFR5emNNdm00eDB1MmVwalFnZGtidnNkdVNXUmtq?= =?utf-8?B?QURLRnRiaXlQSzlESGo2SXNzM25ud0x1NWtockxWRGhRdmw2RUdMUkdqVEhN?= =?utf-8?B?dnIvZC94aS9kaHdud0hPMGdIeGZuenpWZTRHNFVBUHpIdWxqZ1BmYmplZElO?= =?utf-8?B?Ky93bCtaV0pxM3lhYzZDQkJUTC8rWngvaHN5TTAxQmNKYURvSFgycUMzbG55?= =?utf-8?B?L25ncXBrRkExb1Z5dThxNVg3SUVuZytFNXJ3bkJHSThkYS9nYWo0cUQydm5Q?= =?utf-8?B?amtnZGxoUmFSL1Vsc3dkUFM2UWVnOGVnUExjQ2VNRFZtQXgvRU9BV1A5aTVr?= =?utf-8?B?UGdKQ3hJbC9EcEJNck5CSm9raVh5cGxITG9KUjFmdVh1QWlySXhtVDZjOWVB?= =?utf-8?B?RTR1bkJYRTdBNXFUZjVLY004OGF0VHFOTmd2VnhZaEZ4Mmx2RFlNN1E1aW1E?= =?utf-8?B?ZXUzSmJ4ZngxWFh0Zzd1SjJBTUNSNHBRZTR1WWtWbTNRcit0OVpHVkgwYVFk?= =?utf-8?B?Z2FTL2phb1kyRldQeElSNHNyM296TUp0REp2VktrRXNEbGY1QjUvZWM0ZUhW?= =?utf-8?B?blNTVnhDckJoQVpHU0NTa0xIVEZsMVZiTFNYWEdabGFMR2J6NW5MK21ONU0z?= =?utf-8?B?OUxDQThYTmtRcEhiRGRpOHlFaEpDcG9zdFlPd21DTW9ML0JndldTYUFPTUF4?= =?utf-8?B?MDVPc0dmU2lTdDRXamhtMFc5dU81TkFZVkxncVZseStkbzNWMDhNbHM4YmhB?= =?utf-8?B?ZmYzQmFaREpDb1IzZW5vdzJ2aGcyYlltUkx5N1JkYW5jTzdQTGl4bFFKdDdo?= =?utf-8?B?NndOV04yY1U0WlV4citEa25qdm9PaC9RUjJtTVBnMlNhU1dkTk94NmFCdDNi?= =?utf-8?B?RWpBNTRiV2IzS0NrWEtMd01WZm9zNFRyT2ZOMkVXaVV1TFlkaE5OTmk3dTNI?= =?utf-8?B?LzlXK0NVRlY3eEFQZG1WOWNPckcxTUZDNGtGOGxEZnRoRHZucmErT0s4MEVz?= =?utf-8?B?cGxFTUs3QlMwMGp1b1g1K0Ztby9mbXNKL09jWTlCbVVUMjVQbTZtWTNzaTB4?= =?utf-8?B?SU9JOFk0bm5TeE9jOXRYOUU0eU5ENmlhT05TcFUwMDFYcjVEb2EwSWhtNTJN?= =?utf-8?B?K0VDSzBXRE1UYjhxOHFOVjdqcFo5YjcrUVRDamVDa2ozdFJGRDVkdFQreWRv?= =?utf-8?B?bCt1d05TMitxb1Uzbi9qUTMyWHVDOHBwTWE2VEljS01WMEROOUs4K055eGpM?= =?utf-8?B?aStubHVKQUt0SERkWmVoQk45WVM4SW9nUXVMVFVLa3p4MExxRlpNRlBDSGZz?= =?utf-8?B?Z3NMTUk0RW1maTlqUXdrRWlUNUczdzN6TXRmRCtSQlA2S1hybDBoRkpSYmN3?= =?utf-8?B?T21Ib21heVU1TUY1d25UWjVkMXVnYmFJR0F6cmZWSGRGa3NVMjg0Y2EvaEVC?= =?utf-8?B?endKcE00c0t0ekNGWVRibFkxS0t2VWFKM0Z3TTlhN1hJeEFVREVnWC9FMElU?= =?utf-8?B?TTdQSWVlbm5FeVpyR1gyV2RQcXZlNk8xWHlaa3g0bG9VR2h1aDFLK1ROTWZT?= =?utf-8?B?dE5NVzgvZU9FUkQ1ME5BNEtKMHcwcE1RcFhoNisrelJjQmZZeG9NeUlNeDMw?= =?utf-8?B?Q2p5WXlPbDdwNFk3aUZSMVV2Z3UrUTRGWEVEOVdZbnlHeTZJeWdabGl5eTNV?= =?utf-8?B?TjRCZ2MxNUVJSkV1cFlaNHpxVXlreFlpbll5RU5JbS9nMCs1VWF3Z3pkNlRO?= =?utf-8?B?ei9mUlcyZlNNZWp0QlV1czk5cWU0SVVyVFo2MFZ4a0RLd1pRN3NwbUd2Smpx?= =?utf-8?B?cTlpUWFHZkRDQnA0cmtUcEx6NllaNmFaa0VsWGFxVlpRK0J6QlFCTldWOWY0?= =?utf-8?Q?/KwTIu63sycdLQc2mvvnYsm17?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: c29c7faf-f28a-4605-2663-08db6b3364ed X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Jun 2023 10:54:28.5977 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: bScbF/qcx2uakzbtop5CnZ3+fXSbakv/VG+GdUfom9yIVW8PNAROj8XFgR+oOb4aK1NJmAxfX2FAL3iVpMCh+w== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR04MB8265 On 11.06.2023 12:07, scan-admin@coverity.com wrote: > *** CID 1532324: Memory - corruptions (OVERRUN) > /xen/common/trace.c: 800 in __trace_var() > 794 } > 795 > 796 if ( rec_size > bytes_to_wrap ) > 797 insert_wrap_record(buf, rec_size); > 798 > 799 /* Write the original record */ >>>> CID 1532324: Memory - corruptions (OVERRUN) >>>> Overrunning callee's array of size 28 by passing argument "extra" (which evaluates to 31) in call to "__insert_record". > 800 __insert_record(buf, event, extra, cycles, rec_size, extra_data); > 801 > 802 unlock: > 803 spin_unlock_irqrestore(&this_cpu(t_lock), flags); > 804 > 805 /* Notify trace buffer consumer that we've crossed the high water mark. */ Earlier in the function we have if ( extra % sizeof(uint32_t) || extra / sizeof(uint32_t) > TRACE_EXTRA_MAX ) return printk_once(XENLOG_WARNING "Trace event %#x bad size %u, discarding\n", event, extra); Therefore I don't see where the tool takes from that a value of 31 in "extra" can reach said line. > *** CID 1532322: Null pointer dereferences (FORWARD_NULL) > /tools/libs/stat/xenstat_qmp.c: 220 in qmp_parse_stats() > 214 > 215 ptr[0] = qstats[QMP_STATS_RETURN]; /* "return" */ > 216 if ((ret_obj = yajl_tree_get(info, ptr, yajl_t_array)) == NULL) > 217 goto done; > 218 > 219 /* Array of devices */ >>>> CID 1532322: Null pointer dereferences (FORWARD_NULL) >>>> Dereferencing null pointer "(ret_obj != NULL && ret_obj->type == yajl_t_array) ? &ret_obj->u.array : NULL". > 220 for (i=0; ilen; i++) { > 221 memset(&vbd, 0, sizeof(xenstat_vbd)); > 222 qmp_devname = NULL; > 223 stats_obj = YAJL_GET_ARRAY(ret_obj)->values[i]; > 224 > 225 ptr[0] = qstats[QMP_STATS_DEVICE]; /* "device" */ At least to an uninformed user like me the tool looks to be right here, in case ret_obj->type != yajl_t_array after yajl_tree_get(). But it may of course be that yajl_tree_get() will only ever return NULL or objects with their type set to its 3rd argument. > ** CID 1532319: (DEADCODE) > /tools/tests/x86_emulator/avx512er.c: 1826 in simd_test() > /tools/tests/x86_emulator/sse.c: 1324 in simd_test() > /tools/tests/x86_emulator/avx512er.c: 1324 in simd_test() > /tools/tests/x86_emulator/3dnow.c: 1826 in simd_test() > /tools/tests/x86_emulator/sse.c: 1826 in simd_test() > /tools/tests/x86_emulator/3dnow.c: 1324 in simd_test() I'm going to ignore all these issues in emulator test harness test blob sources. > *** CID 1532318: Memory - corruptions (OVERLAPPING_COPY) > /tools/firmware/xen-dir/xen-root/xen/arch/x86/x86_emulate/x86_emulate.c: 1987 in x86_emulate() > 1981 dst.val = *dst.reg; > 1982 goto xchg; > 1983 > 1984 case 0x98: /* cbw/cwde/cdqe */ > 1985 switch ( op_bytes ) > 1986 { >>>> CID 1532318: Memory - corruptions (OVERLAPPING_COPY) >>>> Assigning "_regs.al" to "_regs.ax", which have overlapping memory locations and different types. > 1987 case 2: _regs.ax = (int8_t)_regs.al; break; /* cbw */ I was under the impression that reading and then writing different parts of the same union was permitted, even without -fno-strict-aliasing. Am I missing anything here that Coverity knows better? > *** CID 1532317: Insecure data handling (TAINTED_SCALAR) > /tools/libs/guest/xg_dom_bzimageloader.c: 574 in xc_try_zstd_decode() > 568 if ( xc_dom_kernel_check_size(dom, outsize) ) > 569 { > 570 DOMPRINTF("ZSTD: output too large"); > 571 return -1; > 572 } > 573 >>>> CID 1532317: Insecure data handling (TAINTED_SCALAR) >>>> Passing tainted expression "outsize" to "malloc", which uses it as an allocation size. > 574 outbuf = malloc(outsize); > 575 if ( !outbuf ) > 576 { > 577 DOMPRINTF("ZSTD: failed to alloc memory"); > 578 return -1; > 579 } I'm afraid I simply don't know what "tainted expression" here means. xc_dom_kernel_check_size() certainly applies an upper bound ... > *** CID 1532309: Control flow issues (DEADCODE) > /tools/ocaml/libs/xc/xenctrl_stubs.c: 840 in physinfo_arch_caps() > 834 > 835 arch_obj = Tag_cons; > 836 > 837 #endif > 838 > 839 if ( tag < 0 ) >>>> CID 1532309: Control flow issues (DEADCODE) >>>> Execution cannot reach this statement: "caml_failwith("Unhandled ar...". > 840 caml_failwith("Unhandled architecture"); > 841 > 842 arch_cap_flags = caml_alloc_small(1, tag); > 843 Store_field(arch_cap_flags, 0, arch_obj); > 844 > 845 CAMLreturn(arch_cap_flags); I think this wants to be left as is, not matter that Coverity complains. For various of the UNUSED reports I'll send patches once having tested them at least lightly. Jan From xen-devel-bounces@lists.xenproject.org Mon Jun 12 11:07:11 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 11:07:11 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547006.854160 (Exim 4.92) (envelope-from ) id 1q8fO1-0007jV-LE; Mon, 12 Jun 2023 11:07:01 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547006.854160; Mon, 12 Jun 2023 11:07:01 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8fO1-0007jO-Ib; Mon, 12 Jun 2023 11:07:01 +0000 Received: by outflank-mailman (input) for mailman id 547006; Mon, 12 Jun 2023 11:06:59 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8fNz-0007jI-Il for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 11:06:59 +0000 Received: from esa3.hc3370-68.iphmx.com (esa3.hc3370-68.iphmx.com [216.71.145.155]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 3e799c20-0911-11ee-b232-6b7b168915f2; Mon, 12 Jun 2023 13:06:57 +0200 (CEST) Received: from mail-bn8nam12lp2175.outbound.protection.outlook.com (HELO NAM12-BN8-obe.outbound.protection.outlook.com) ([104.47.55.175]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 12 Jun 2023 07:06:54 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by PH0PR03MB5878.namprd03.prod.outlook.com (2603:10b6:510:34::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.29; Mon, 12 Jun 2023 11:06:52 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606%4]) with mapi id 15.20.6455.030; Mon, 12 Jun 2023 11:06:52 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 3e799c20-0911-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686568017; h=message-id:date:subject:to:references:from:in-reply-to: content-transfer-encoding:mime-version; bh=9K3jqVEeFuqDh1yvy78DpilXb7LocEMxzCr6JtyyfZU=; b=JoPdmIb8KhXJd/o8uSOf135MDRQCPfECCAztkhPKpsC15kuqImpeDs9h VhZCyy1phJVFUfYzSC5+Wede9MhAIuIyVwuiR9ivM4P4aJK1A7Nhum8pi dLKlQDXQi57mf268bchKh4eSyYdiBnvlBS88OqvpD0p2Ufo6Ei+pWXJua o=; X-IronPort-RemoteIP: 104.47.55.175 X-IronPort-MID: 112466269 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:STZ33KNzaPUKdYrvrR28lsFynXyQoLVcMsEvi/4bfWQNrUokhmECn GpOWGqGaf/cYWWge40iYN7g8xsB6pHWzd8yQAto+SlhQUwRpJueD7x1DKtS0wC6dZSfER09v 63yTvGacajYm1eF/k/F3oDJ9CU6jufQAOKnUoYoAwgpLSd8UiAtlBl/rOAwh49skLCRDhiE/ Nj/uKUzAnf8s9JPGjxSs/rrRC9H5qyo42tG5wZmPJingXeF/5UrJMNHTU2OByOQrrl8RoaSW +vFxbelyWLVlz9F5gSNy+uTnuUiG9Y+DCDW4pZkc/HKbitq/0Te5p0TJvsEAXq7vh3S9zxHJ HehgrTrIeshFvWkdO3wyHC0GQkmVUFN0OevzXRSLaV/ZqAJGpfh66wGMa04AWEX0s9rDUFr1 8NGFAs2SgDfh9+a4667ceY506zPLOGzVG8ekldJ6GiDSNwAEdXESaiM4sJE1jAtgMwIBezZe 8cSdTtoalLHfgFLPVAUTpk5mY9EhFGmK2Ee9A3T+PdxujeOpOBy+OGF3N79U9qGX8hK2G2fo XrL5T/RCRAGLt2PjzGC9xpAg8eWxHmnBtxISuzQGvhCrnzPwWI9ChwqcEKlm6CQu06FHIxUA hlBksYphe1onKCxdfH/VRClpH+PvjYHRsFdVeY97Wml2qfSpgqUGGUAZjpAc8A98t87QyQw0 V2ElM+vAiZg2IB5UlqY/7aQ6Dm0aS4cKDZYYTdeFFRYpd7+vIs0kxTDCM55F7K4hcH0Hje2x C2WqC85hPMYistjO7iHwG0rSgmE/vDhJjPZLC2ONo55xmuVvLKYWrE= IronPort-HdrOrdr: A9a23:expmmqCMAfLHOzHlHemK55DYdb4zR+YMi2TDgXoBMyC9Vvbo7v xG+85rsyMc6QxhP03I/OrrBEDuewK+yXcY2+ks1NSZLW3bUQmTXeNfBNDZskXd8kTFn4Y36U 4KSdkaNDSfNzlHpPe/yBWkFc0t2dyWmZrY/ts2DE0AceipUcxdBstCZTpz23cZeDV7 X-Talos-CUID: =?us-ascii?q?9a23=3AxPBdYGiKdt1V7be63EE2y50/rDJuW2HR7FLyHBG?= =?us-ascii?q?EMl1NWOGVdHOz5KNfnJ87?= X-Talos-MUID: 9a23:114a/waKKSI9RuBTmR6wgz9MNsZUxr2wMhkkoJU9/JePHHkl X-IronPort-AV: E=Sophos;i="6.00,236,1681185600"; d="scan'208";a="112466269" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=QZDwwtHIACMM61fh29XmWI/a4q5yUAKH/nCUIgwYkwJ/Yy3rfQS8Uhcpv8ETtzyVATucIduPKi4bN98QJrB/wJFWqJietqNXVMcIdUSe3D3ZdPOZXOlMR+rFjBZvB/d7OLXRakwx6ZdYUQwuhgQnak3dvFjBjuCMC9JIWbOa2Dhnia0KBBmOIHd+Tc3YyK1fZlqsLtIvcIfvUE6gjh+U89fZaxDg75Imx+bkZ6c6KGlnQ2X42/yAopfyLxTvGvOM+YVgM8voMEvzx1akJ8YtgvhXFVqsQYtb1s+1IZy1mR0m3Dg3fFXhNHHm6mNlAkLjE0BNS/GcRk6cnOGt9ROqVA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=1yoXIEgY1VAU/jKDncu1ErBzDxBe2phqSIXTLjBDEXM=; b=PtqCe/XBADszhZpcAMJTZv9RZ7hCjzPB2e3ZMmMeL1hWz28RNbfMjFrCvRMJA8Dbb1oqpvojcZ598YmQCHuyMcXZBFaOK2hrtMtIJd7uqXKZTDgymrMRXpMFdQvdtCuZ+wpBHIJsjFkFlPFPmW5pcChLXX9dML+GUUWLkfsjlk3+UopEW3F17geqdmw8WQGtgFBx285IuBZuKKORr2d36Qdz5Kcq3l3EtDqp3CcVPFIFBnKlgr3LSrGj/Sz9k7BxVzub/UpKrBfuy2p8jEgHxyhGfhJgy5WI05l4Je7z5tb0ifpzPyE6b1clstovdV/z9tyg494I9NG0RYOH4dVCIA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=1yoXIEgY1VAU/jKDncu1ErBzDxBe2phqSIXTLjBDEXM=; b=ws33j1/wG/qfzpgWTByncyMcyD4L+6J0PjsJb5TX6Raz4XQFPxN1ZGNMg3DxM1f5Lr2QGX378JGWMWZ7lSLNaYAs+uHhJCx0z/oI/jdRU0isU77gcDjpKMAJJYfHW+Wl8VZfFbasuoZLko7wcaYmNK9Xcw5XTn65sj1FQ3ERJBc= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: Date: Mon, 12 Jun 2023 12:06:47 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: New Defects reported by Coverity Scan for XenProject Content-Language: en-GB To: Jan Beulich , "xen-devel@lists.xenproject.org" References: <64859cf3a1e46_712752abb10eab98834b9@prd-scan-dashboard-0.mail> <59b7b181-9f31-c3b0-e54f-b5f22b08572a@suse.com> From: Andrew Cooper In-Reply-To: <59b7b181-9f31-c3b0-e54f-b5f22b08572a@suse.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO4P123CA0620.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:294::16) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|PH0PR03MB5878:EE_ X-MS-Office365-Filtering-Correlation-Id: 59bdd96e-d98d-44ad-6178-08db6b35202f X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: gl097JsTDZ4J3qEyKGokZCqHWcOcXjQ9IMhPN3v1gqFH+bVrpT3U72cUIuTeUh4j2FLHTWTUML2jY0ZdWG9BdSyb8fQzAiL6TgbzQO2R3RumSwfo5iZFYrVUjJp//lKNbYyOFzi1Vn5EZZ+1GToGIPlU82zU2pxR2MWE9eveMvM5WB9qjBTETietzKj2xC4kpbZjQXfyuIP6bLGoIH+k2HgF0PU/tzFGrdX3FE2M2uM2wvZ7YU/rHOfvjyd/o0uD564Nop7gu04mgTcwcMZG/TRnGURH5Psf1aj3X8LRQuIO+kztJZjhwS1Cj0fZVMeJ+Q5E8BISC7tmZynwJdBVM8GTMnKdJ+ovOB96Ob/VgKsl3K9glDpvdFtI8jC4OTCGlQtLLtXAHpmychV0uj0r7ghvgs4QHNA6XGp0WdNY5cgCR8gKImpHLYdrSQ9k/Ww+A87q9Oo1Fv+ciDkNesIr0Omo3QgQ5akk+LXCgA3I4TsHEHn1auTfqZ5L+Ki7s/u08JOiYmNtlb4c8wu+nlbF7sWMAN3N33fzq+PPocq5o6XI44Z9GdA9Bi22SpymovdWewNYzMSDD9+hIjI19nBj0xF8/GEovJDna4N5x0938NNuP3Y7v92goFGP9byNNjeisUDQL1+O8TNKyKFIvZKWqA== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(136003)(396003)(376002)(346002)(366004)(451199021)(31686004)(66946007)(66476007)(66556008)(36756003)(186003)(478600001)(110136005)(2616005)(2906002)(8676002)(316002)(41300700001)(31696002)(86362001)(6486002)(6666004)(6506007)(53546011)(8936002)(82960400001)(83380400001)(5660300002)(26005)(38100700002)(6512007)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?OFJSWjQ3U0MrWmVyV2dWQ0Y2M1pvRjBIZVJLc1dyWE1nUjVyWXVVYlovUStF?= =?utf-8?B?eDBzT1NOSWdYeWlJSFVMYm5aYnF3SmpmZU5xSTQ5RmFGUzA2U2Z4YzJkb1Bu?= =?utf-8?B?d1RieXFOSkNqVC9vQzJLL3ptRytKdXJ3TUxtck5ONHpNZVo3MjN0YVJONWtu?= =?utf-8?B?UWJ5aEFHenc1ajB2TEE5c3pDbWFnMy9BT20yd0d3MFVPZENIdURvNlVXcXNU?= =?utf-8?B?enZHL21IcWxNNG8zRlZVb2cxbVVzWHNYSDNFL1RNdVI5cFp0UzhqYUx0bUhr?= =?utf-8?B?US9NS2dORVQ5OEJMd1RvOGtmVSt4MlFsdkt3MFBDeE1xcjArMFBXbUVxQVpU?= =?utf-8?B?ajI1TWJ6ZFlMUjRXK3Y4UUliVEUzMCtISzJHMU9CMDhXMlU5MWxuTGtJTEtU?= =?utf-8?B?Um5aWERha3FJR3JPbklsdHoySUFSajdlaFVTQ1pxVTJhQlBSNklsT3BoNGlJ?= =?utf-8?B?dDAzd29pbFRhZUpDalNycVg4YVRLeTZUdENOOXR5NnIyNWNNZmpHbURnakgx?= =?utf-8?B?bmRmdGR5QzlPZUt5Uzk1akNRNmNKRCs4TU03VHVUTms5NXE5anpqNTlxb1V4?= =?utf-8?B?L0taN1Z4NTFvYWZ2STJRTE1rc3RpU2R4Tkw5cFJqdElNcnprSGhkNzkybUhK?= =?utf-8?B?bFIzY2NuREkzZk1UeHZlQmpaZUh1MXU5UFdRbVd6TE91T2Y5Q0FRU2hrZTMz?= =?utf-8?B?enA4RVBzNURSc1AvMWhjK0I3bktQTFF3bTdqbkFWckZJbUk2NWlHcnd0V25q?= =?utf-8?B?UVRwd2VYaitjZkp2Z0NNajF0UDdXSWJKcFRSaUtsdS82eDVJbkt3QUxCTy9N?= =?utf-8?B?NDNtRkVpc21uc0tiWUZkSVdqajhGWlFQWVRGR00ycWV0UnMrZE1kUVpscEVr?= =?utf-8?B?WHNUVm1QZExsNWUrY1FwcEMxckVJMW9MZ3ZkaWlBd3lIMzFuTko5dW0zNzhG?= =?utf-8?B?QWl0anZ6NHZTYWNrcFIrNE1TMHg1TmdoZFFjMXZId2ZTbU03NlllS0dvT3g2?= =?utf-8?B?dDI5YWRNK09JVWl5VTNMaG1CVXJJUTR5d0w5Z1JibjBROWZVQTlSeEs1VFFu?= =?utf-8?B?OEdlUmxtaFNUY1MxcTFqWno3aVJ1dUt0SFRkSFFGeFFiT2J4NDJPdVcvSFRw?= =?utf-8?B?Y2l0Y0FpQWE1VjVTRCtRNVpYcnVybldTNFVta01SMjFBaVh5TjJpSnhleFky?= =?utf-8?B?Mkp1SjlTdWF5TDJoZ2huMkxraXpJU2xSWktud1F2QmJXcE1qY0d3TEN4M1JZ?= =?utf-8?B?NE5EcFlTeGlDdE1YeHF6NVpxbGZjcGdTa0diNVlBaWQvU05rZkJGMVlMYlg3?= =?utf-8?B?YVJCNGJaUG1SSDNsTklrd0xmZXk2WHczTXFZem14SVpYVStNWFdjcGFTTkRp?= =?utf-8?B?L2ExcDdnbEoxWDlvNTNzRVFuYklDNENlTGFvQzZCK2tXc1FhTFVrSzFlUVMz?= =?utf-8?B?dGtlRG55RG52YVRielYwanZHSlZsTHNVTk05a2RuS2xKeUpoZmROaDBTZXpW?= =?utf-8?B?N2ZsQTJydHRINmhCcG9iYmVMWkFCNDVEVko2OHdpbzhROThJVWZiNlZlWHZm?= =?utf-8?B?NVNLTUlYeGV0Z055b25CL2NBSzdJK1lLYXg3ZEhNY1JZelVpWkl4UVg3MG9l?= =?utf-8?B?WnQ3ckR6UGY0a2p1RytDOUFzenZlN09wN3ZoNDhCRDNHbUNnS2NTeVJBZmk0?= =?utf-8?B?TlIwQi9icTdrTWdLL1pYdGJucXpoaXN4aG5ySkJQMENWM096Q2pzOTBpZzN5?= =?utf-8?B?ZTdPazMxY1FoZm1hTFg0TklGYVBWNkIrYkJBTjhXeEhzQ0NLSFNhbW9WM1Nq?= =?utf-8?B?MURsb3Z3aE1qL1ZmQ2NNa3ByblRXckFEdk9nUTZZY1ROOVZYY3dKTlhHa0Vh?= =?utf-8?B?OEpzQTl0bVYzTGxXV3NJWEZPWGw2U2NBOGQvY2VsbzROUnRzMmVHekZKa1Q1?= =?utf-8?B?a1R1Y2E0MWRnMTJ1TlRjaU9FLy9ZNlZuYU9rWlRxbllpaHVUUGRIYStmcDc5?= =?utf-8?B?ek4rNTNQOW5HY0J4V1BLQUM3dFBicTV4aS96NzBhb2F4UmRwR3h5SzZNdXJk?= =?utf-8?B?MGVIWHdZclBqQWcvYnEzRFh5ejBNSWVhMU4xejN5RUc3cUNSbGNQejZKVk5H?= =?utf-8?B?NWlIWWhGcS80c3d0QjJZeGROWGRWbmprWGZMa3dVQmNxcEx6SzlqUWRQeGN0?= =?utf-8?B?M0E9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: CP33/dXSgeW+RCcnQcXiQSZM3dcZaXZwR1Qlk+VkWmTy9BVyFNV0wPL8fITRSUgYNv1yfwN4Syrcyl8fcDRiRejxSbZQkpDOe53Fo3I13gNz93sQ4BByPK7fyYcRrE/4gu/FA6iGl/g0eaqN0o4FrLQCZV26wfhu6kIxMknsBt7B17NNmDbrYYSVR5ih+nHpaumizIKHYRnqY2CD4jvSJLxqQKIigswCMeIu/qYG9tcolJtMf7ehy9R93qadN0PTUDmw1VWjBf7k4yHFT/qPOf8xf0ahiDPqruQoqZ6+9xOiPXNb9MYuC4hQXaMTeG5q9cAI7JtkF5fCrQMmw3G/Kol0VLpe39UGgCMpkLR9xT1dJZkoLXMz+0AH6FUuc3344ln0cIi22ElNUsyDetPZeGV9Re34uZgY/j+6FbahW/AJgLEjylCSP5NFJ3rhRGrYlSwpI3N3dyWIHS8b/qxRxwsVYV6t7zltOCYfcxNC80BKf98drAVMlFfSFvapV5jeVqkx8bARH91CLY8fyviYvSSIMCA6SO2+Ym0Q9OGsmcMKqrG06rgg3xGxvC0fSWFOWUwzITHphO8/YzerkkIeFsJyB8aelT41JnSLk/lMQml3NnrY17Bk+bu+bjZbglnySSXYY9U9Gt4faY84VRFo/R1bCWkxrBugUJL/wNL07N92UTiXlMCxGi0sTtnfd4pDetwWdhMD5fHENqG2osCRy8A75UOqffaqCfqTaGlUzpKI9zNe3kiVFYPuJTs8ObtaUkTa144Bw4cYUGkxuzghZqlWqYYHgppODnKhqhZJXcXkSBe37p5jECoY0kTP+kS+ X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 59bdd96e-d98d-44ad-6178-08db6b35202f X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Jun 2023 11:06:52.3993 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: t0e1sl2MQvcwwsHvdffq/Ip6JsSklBtR2k3K2pvPFr/1AcBpmnqck7HWZW93/27c5uesAnWZTF5f17jbiWSAHk3sMZBhK9ot/shdOH2mxDY= X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR03MB5878 On 12/06/2023 11:54 am, Jan Beulich wrote: > On 11.06.2023 12:07, scan-admin@coverity.com wrote: >> *** CID 1532318: Memory - corruptions (OVERLAPPING_COPY) >> /tools/firmware/xen-dir/xen-root/xen/arch/x86/x86_emulate/x86_emulate.c: 1987 in x86_emulate() >> 1981 dst.val = *dst.reg; >> 1982 goto xchg; >> 1983 >> 1984 case 0x98: /* cbw/cwde/cdqe */ >> 1985 switch ( op_bytes ) >> 1986 { >>>>> CID 1532318: Memory - corruptions (OVERLAPPING_COPY) >>>>> Assigning "_regs.al" to "_regs.ax", which have overlapping memory locations and different types. >> 1987 case 2: _regs.ax = (int8_t)_regs.al; break; /* cbw */ > I was under the impression that reading and then writing different parts > of the same union was permitted, even without -fno-strict-aliasing. Am I > missing anything here that Coverity knows better? It's permitted (hence why it compiles), and it's almost always a bug (hence why Coverity complains). In this case it's intentional to sign extend %al to %ax. > >> *** CID 1532317: Insecure data handling (TAINTED_SCALAR) >> /tools/libs/guest/xg_dom_bzimageloader.c: 574 in xc_try_zstd_decode() >> 568 if ( xc_dom_kernel_check_size(dom, outsize) ) >> 569 { >> 570 DOMPRINTF("ZSTD: output too large"); >> 571 return -1; >> 572 } >> 573 >>>>> CID 1532317: Insecure data handling (TAINTED_SCALAR) >>>>> Passing tainted expression "outsize" to "malloc", which uses it as an allocation size. >> 574 outbuf = malloc(outsize); >> 575 if ( !outbuf ) >> 576 { >> 577 DOMPRINTF("ZSTD: failed to alloc memory"); >> 578 return -1; >> 579 } > I'm afraid I simply don't know what "tainted expression" here means. > xc_dom_kernel_check_size() certainly applies an upper bound ... "tainted" is Coverity-speak for "externally-provided value not sanitised yet". I suspect that Coverity has failed to equate xc_dom_kernel_check_size() to being a bounds check on outsize. > >> *** CID 1532309: Control flow issues (DEADCODE) >> /tools/ocaml/libs/xc/xenctrl_stubs.c: 840 in physinfo_arch_caps() >> 834 >> 835 arch_obj = Tag_cons; >> 836 >> 837 #endif >> 838 >> 839 if ( tag < 0 ) >>>>> CID 1532309: Control flow issues (DEADCODE) >>>>> Execution cannot reach this statement: "caml_failwith("Unhandled ar...". >> 840 caml_failwith("Unhandled architecture"); >> 841 >> 842 arch_cap_flags = caml_alloc_small(1, tag); >> 843 Store_field(arch_cap_flags, 0, arch_obj); >> 844 >> 845 CAMLreturn(arch_cap_flags); > I think this wants to be left as is, not matter that Coverity complains. Yeah, this is deliberately too.  It's there to prevent other accidents like we had last week with the bindings. ~Andrew From xen-devel-bounces@lists.xenproject.org Mon Jun 12 11:08:09 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 11:08:09 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547011.854171 (Exim 4.92) (envelope-from ) id 1q8fP6-0008G8-V9; Mon, 12 Jun 2023 11:08:08 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547011.854171; Mon, 12 Jun 2023 11:08:08 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8fP6-0008G1-SE; Mon, 12 Jun 2023 11:08:08 +0000 Received: by outflank-mailman (input) for mailman id 547011; Mon, 12 Jun 2023 11:08:07 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8fP5-0008Fl-Hk for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 11:08:07 +0000 Received: from mail-lf1-x132.google.com (mail-lf1-x132.google.com [2a00:1450:4864:20::132]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 6870ed08-0911-11ee-b232-6b7b168915f2; Mon, 12 Jun 2023 13:08:06 +0200 (CEST) Received: by mail-lf1-x132.google.com with SMTP id 2adb3069b0e04-4f624daccd1so4627642e87.0 for ; Mon, 12 Jun 2023 04:08:06 -0700 (PDT) Received: from [172.16.11.116] ([81.216.59.226]) by smtp.gmail.com with ESMTPSA id q5-20020a19a405000000b004edafe3f8dbsm1420627lfc.11.2023.06.12.04.08.05 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Mon, 12 Jun 2023 04:08:05 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 6870ed08-0911-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=rasmusvillemoes.dk; s=google; t=1686568086; x=1689160086; h=content-transfer-encoding:in-reply-to:from:references:cc:to :content-language:subject:user-agent:mime-version:date:message-id :from:to:cc:subject:date:message-id:reply-to; bh=Cqc/dWIkGp13SLIIu6IJWBJIUBo6SVnCPSxnZiD/2qs=; b=Ee1kxW2zIBpufE5Pd30SjljWSF8bmQ23PvcXOTfBLWDuhuzmi4GNxm81r6THqfr1R8 TF/XbV/vQPE7NAjqG5CUcG091GIVP+OIZkR2eVbcnqSSGulqYKQ0tS4fGce1Vqz72BEK 4dnF5FIjP/ixuv50EXQjUSlglRcu6SFfk78g0= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686568086; x=1689160086; h=content-transfer-encoding:in-reply-to:from:references:cc:to :content-language:subject:user-agent:mime-version:date:message-id :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=Cqc/dWIkGp13SLIIu6IJWBJIUBo6SVnCPSxnZiD/2qs=; b=j/x7UCqsAcXHwcEJK5ZcG0lcl9i2GNluKik4HKww6wUQdx9izUocK/5wWVfULU28Gb J9Guz122jmbMIdWa7dFPWtVhx5y1XXcZRH7HIS9maOqj7PSJ+u9GF5iAkoKxOWCuJ0RS sHsomr4tj795DyyRqvdUkaZ54R2cRWaa5CtnaM6wtU+HojqWKlWV9kCVbmT2Vv/oqI14 JkpHWYk7p2ixwwq3zQ1P4RHsTYDZRKFe/sX2G1Mj9NpNtCwUFkWd++oL5KVI/iPBy80+ 647g+yezRDUFJWXoG5uTIV2sbIf7bs0Ms1JmWvSFYbQhwBn89i3dUKLkDx2izcwOTWKw gz8Q== X-Gm-Message-State: AC+VfDxy+U5YmyFNszHWQB2P7dWQG0qE3dTMOX9SbeRl5GiuPehL9Z4T vYgpBjiCpK82sb8qBDVy383FKw== X-Google-Smtp-Source: ACHHUZ7b8SUOyAvo5mZ/ej3K8XSkF1lyVZaH5wXsQAhZBy44s+7p1e2LN2fuBFmbbRRFjOsD8ITAwQ== X-Received: by 2002:a05:6512:3123:b0:4f3:a723:1dc6 with SMTP id p3-20020a056512312300b004f3a7231dc6mr3958647lfd.52.1686568086176; Mon, 12 Jun 2023 04:08:06 -0700 (PDT) Message-ID: <546e2ab5-f520-c85e-d6f4-ca7b02457d4c@rasmusvillemoes.dk> Date: Mon, 12 Jun 2023 13:08:04 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH v3 3/4] vsscanf(): do not skip spaces Content-Language: en-US, da To: Demi Marie Obenour , Hans de Goede , Mauro Carvalho Chehab , Sakari Ailus , Greg Kroah-Hartman , Juergen Gross , Stefano Stabellini , Oleksandr Tyshchenko , Lee Jones , Andy Lutomirski , Thomas Gleixner , Vincenzo Frascino , Petr Mladek , Steven Rostedt , Sergey Senozhatsky , Andy Shevchenko Cc: linux-media@vger.kernel.org, linux-staging@lists.linux.dev, linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org, Christoph Hellwig References: <20230610204044.3653-1-demi@invisiblethingslab.com> <20230610204044.3653-4-demi@invisiblethingslab.com> From: Rasmus Villemoes In-Reply-To: <20230610204044.3653-4-demi@invisiblethingslab.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit On 10/06/2023 22.40, Demi Marie Obenour wrote: > Passing spaces before e.g. an integer is usually > not intended. Maybe, maybe not. But it's mandated by POSIX/C99. And of course we are free to ignore that and implement our own semantics (though within the constraints that we really want -Wformat to help us), but there seems to be existing code in-tree that relies on this behavior. For example I think this will break fsl_sata_intr_coalescing_store() which uses a scanf format of "%u%u". Sure, that could just say "%u %u" instead, but the point is that currently it doesn't. So without some reasonably thorough analysis across the tree, and updates of affected callers, NAK. Rasmus From xen-devel-bounces@lists.xenproject.org Mon Jun 12 11:11:39 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 11:11:39 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547017.854181 (Exim 4.92) (envelope-from ) id 1q8fSK-0001LA-DU; Mon, 12 Jun 2023 11:11:28 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547017.854181; Mon, 12 Jun 2023 11:11:28 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8fSK-0001L3-Aj; Mon, 12 Jun 2023 11:11:28 +0000 Received: by outflank-mailman (input) for mailman id 547017; Mon, 12 Jun 2023 11:11:27 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8fSJ-0001Kx-9H for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 11:11:27 +0000 Received: from eu-smtp-delivery-151.mimecast.com (eu-smtp-delivery-151.mimecast.com [185.58.86.151]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id de7e144b-0911-11ee-8611-37d641c3527e; Mon, 12 Jun 2023 13:11:25 +0200 (CEST) Received: from AcuMS.aculab.com (156.67.243.121 [156.67.243.121]) by relay.mimecast.com with ESMTP with both STARTTLS and AUTH (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id uk-mta-85-DewxziyUPXuyU4DjMJIpxA-1; Mon, 12 Jun 2023 12:11:22 +0100 Received: from AcuMS.Aculab.com (10.202.163.4) by AcuMS.aculab.com (10.202.163.4) with Microsoft SMTP Server (TLS) id 15.0.1497.48; Mon, 12 Jun 2023 12:11:11 +0100 Received: from AcuMS.Aculab.com ([::1]) by AcuMS.aculab.com ([::1]) with mapi id 15.00.1497.048; Mon, 12 Jun 2023 12:11:11 +0100 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: de7e144b-0911-11ee-8611-37d641c3527e X-MC-Unique: DewxziyUPXuyU4DjMJIpxA-1 From: David Laight To: 'Demi Marie Obenour' , Hans de Goede , Mauro Carvalho Chehab , "Sakari Ailus" , Greg Kroah-Hartman , Juergen Gross , "Stefano Stabellini" , Oleksandr Tyshchenko , Lee Jones , Andy Lutomirski , Thomas Gleixner , Vincenzo Frascino , Petr Mladek , Steven Rostedt , Sergey Senozhatsky , "Andy Shevchenko" , Rasmus Villemoes CC: "linux-media@vger.kernel.org" , "linux-staging@lists.linux.dev" , "linux-kernel@vger.kernel.org" , "xen-devel@lists.xenproject.org" , "Christoph Hellwig" Subject: RE: [PATCH v3 3/4] vsscanf(): do not skip spaces Thread-Topic: [PATCH v3 3/4] vsscanf(): do not skip spaces Thread-Index: AQHZm9wFvdHGuD5F0k2o+1T0Ru69aa+HA4AQ Date: Mon, 12 Jun 2023 11:11:11 +0000 Message-ID: <0c8bb9a3d2de4cf5b06f912d784e7292@AcuMS.aculab.com> References: <20230610204044.3653-1-demi@invisiblethingslab.com> <20230610204044.3653-4-demi@invisiblethingslab.com> In-Reply-To: <20230610204044.3653-4-demi@invisiblethingslab.com> Accept-Language: en-GB, en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ms-exchange-transport-fromentityheader: Hosted x-originating-ip: [10.202.205.107] MIME-Version: 1.0 X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: aculab.com Content-Language: en-US Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable From: Demi Marie Obenour > Sent: 10 June 2023 21:41 >=20 > Passing spaces before e.g. an integer is usually > not intended. This was suggested by Christoph in > https://lore.kernel.org/lkml/ZIQrohcizoj4bZWx@infradead.org/. This is contrary to libc scanf and could easily affect userspace writing fixed width values into sysctl nodes (etc). IIRC strtoul() (etc) are also expected to strip leading spaces. Removing the sign in sscanf() may lead to "- 12" being valid - which may not be desired. =09David >=20 > Suggested-by: Christoph Hellwig > Signed-off-by: Demi Marie Obenour > --- > lib/vsprintf.c | 8 +------- > 1 file changed, 1 insertion(+), 7 deletions(-) >=20 > diff --git a/lib/vsprintf.c b/lib/vsprintf.c > index 9e53355c35b1d6260631868228ede1d178fe3325..665f6197f8313d653f67d7886= b12c43942e058dd 100644 > --- a/lib/vsprintf.c > +++ b/lib/vsprintf.c > @@ -3551,8 +3551,6 @@ int vsscanf(const char *buf, const char *fmt, va_li= st args) > =09=09=09char *s =3D (char *)va_arg(args, char *); > =09=09=09if (field_width =3D=3D -1) > =09=09=09=09field_width =3D SHRT_MAX; > -=09=09=09/* first, skip leading white space in buffer */ > -=09=09=09str =3D skip_spaces(str); >=20 > =09=09=09/* now copy until next white space */ > =09=09=09while (*str && !isspace(*str) && field_width--) > @@ -3639,11 +3637,7 @@ int vsscanf(const char *buf, const char *fmt, va_l= ist args) > =09=09=09return num; > =09=09} >=20 > -=09=09/* have some sort of integer conversion. > -=09=09 * first, skip white space in buffer. > -=09=09 */ > -=09=09str =3D skip_spaces(str); > - > +=09=09/* have some sort of integer conversion. */ > =09=09digit =3D *str; > =09=09if (is_sign && digit =3D=3D '-') { > =09=09=09if (field_width =3D=3D 1) > -- > Sincerely, > Demi Marie Obenour (she/her/hers) > Invisible Things Lab - Registered Address Lakeside, Bramley Road, Mount Farm, Milton Keynes, MK1 1= PT, UK Registration No: 1397386 (Wales) From xen-devel-bounces@lists.xenproject.org Mon Jun 12 11:18:05 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 11:18:05 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547023.854191 (Exim 4.92) (envelope-from ) id 1q8fYU-0001yC-4N; Mon, 12 Jun 2023 11:17:50 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547023.854191; Mon, 12 Jun 2023 11:17:50 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8fYU-0001y5-0J; Mon, 12 Jun 2023 11:17:50 +0000 Received: by outflank-mailman (input) for mailman id 547023; Mon, 12 Jun 2023 11:17:48 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8fYS-0001xy-Ds for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 11:17:48 +0000 Received: from esa4.hc3370-68.iphmx.com (esa4.hc3370-68.iphmx.com [216.71.155.144]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id c1221995-0912-11ee-b232-6b7b168915f2; Mon, 12 Jun 2023 13:17:46 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: c1221995-0912-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686568666; h=date:from:to:cc:subject:message-id:references: mime-version:in-reply-to; bh=fNG3XIoBLibAOG5D/FY1+HGtcCtae0c9EkKzQ9FAVQ8=; b=DCrdtqFGU+0NnlEeC1HvjC0faBBfKgkbb3ssC7ZZwuabcJK1+qA2Mran qWv7Y0P6BMooISyspbqhk35eu+5VXQ8E2nBi6TKOyjWV2AWO7CbRbSgr2 uuCfNXE23N2s3bl9BVXYalI+OoaATGCn8i72nYn0pd2LS2Efe9SRjJ5GI 8=; Authentication-Results: esa4.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none X-SBRS: 4.0 X-MesageID: 114968253 X-Ironport-Server: esa4.hc3370-68.iphmx.com X-Remote-IP: 162.221.156.123 X-Policy: $RELAYED IronPort-Data: A9a23:muYroaNJQwh8hxbvrR1Jl8FynXyQoLVcMsEvi/4bfWQNrUojhDZRn 2odWT/QOfaIZDOjeIwlOoyzphsFvp/RmodiQQto+SlhQUwRpJueD7x1DKtS0wC6dZSfER09v 63yTvGacajYm1eF/k/F3oDJ9CU6jufQAOKnUoYoAwgpLSd8UiAtlBl/rOAwh49skLCRDhiE/ Nj/uKUzAnf8s9JPGjxSs/rrRC9H5qyo42tG5wZmPJingXeF/5UrJMNHTU2OByOQrrl8RoaSW +vFxbelyWLVlz9F5gSNy+uTnuUiG9Y+DCDW4pZkc/HKbitq/0Te5p0TJvsEAXq7vh3S9zxHJ HehgrTrIeshFvWkdO3wyHC0GQkmVUFN0OevzXRSLaV/ZqAJGpfh66wGMa04AWEX0r5uHUAQ9 aQIEywiZCKb2+W75oC0e+Y506zPLOGzVG8eknRpzDWfBvc6W5HTBa7N4Le03h9p2JoIR6yHI ZNEN3w2Nk+ojx5nYz/7DLo3mvuogX/uNSVVsluPqYI84nTJzRw327/oWDbQUoXTGZQLzhzF/ Qoq+UzCISodbOKDxQG0yW6zt8uXtHPpW9M7QejQGvlC3wTImz175ActfUW6ouOwjwixUshfN EUQ0iMroe4580nDZsnwWVi0rWCJujYYWsFMCKsq5QeV0K3W7g2FQG8eQVZpbd0ttMYyAzswx FKNt9rsCXpkt7j9YWmG6r6eoDe2OC4UBWwPfykJSU0C+daLiIM5gw/LT91jOLWoldCzEjb1q xiVqAAuirNVitQEv4258krAmCmEvYXSQ0g+4QC/dmu94xlwfoKNe42i4l+d5vFFRLt1VXHY4 iJCwZLHqrlTU9fUznflrPgx8K+Bv++ZEWPc2U5UA7YrxSzx/HOFT49h72QrTKt2CfroaQMFc WeK51MPvs8IZyr3BUNkS9nvUpp3lMAMAfygD6mJNYQWP/CdYSfdpElTiVisM3cBeaTGuYU2I t+lfMmlFh724ow3nWPtF4/xPVLGrx3SJF8/prihlXxLKZLEOBaopU4taTNilNwR4qKeuxny+ N1CLcaMwBg3eLSgMneKqd5PdQFScSZT6XXKRyt/LLfrH+abMDt5V6+5LU0JJuSJYJi5Zs+Xp yrgCye0OXL0hGHdKBXiV5yQQOqHYHqLllpiZXZEFQ/xixAejXOHsP93m20fIeN2q4SODJdcE 5E4Ril3KqgVEWmbpW1GPMOVQU4LXE3DuD9i9hGNOFAXF6OMjSSQkjM4VmMDLBUzMxc= IronPort-HdrOrdr: A9a23:CXe2OaFeoIirPFlRpLqE68eALOsnbusQ8zAXPiFKOHhom6mj/K qTdZsguCMc9wxhP03I9eruBED4ewK/yXcX2/h1AV7BZmnbUQKTRelfBO3ZrQEIcBeeygcy78 tdmtBFeb7N5FFB/KDH3DU= X-Talos-CUID: 9a23:fdGbXWCika8p0lD6E3F+6G9KGpg1SWHyxkXIf0i1L1RmebLAHA== X-Talos-MUID: =?us-ascii?q?9a23=3Alp0WVw03AnobpcOKOnppAw7vqTUj2IeVDxgzjZk?= =?us-ascii?q?9ivKYKh1UYx7Nnjfma9py?= X-IronPort-AV: E=Sophos;i="6.00,236,1681185600"; d="scan'208";a="114968253" Date: Mon, 12 Jun 2023 12:17:38 +0100 From: Anthony PERARD To: Vikram Garhwal CC: , , , , Wei Liu , Juergen Gross Subject: Re: [XEN][PATCH v7 17/19] tools/libs/ctrl: Implement new xc interfaces for dt overlay Message-ID: <9975f41c-c149-445a-8122-c15cfe5511b0@perard> References: <20230602004824.20731-1-vikram.garhwal@amd.com> <20230602004824.20731-18-vikram.garhwal@amd.com> MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Disposition: inline In-Reply-To: <20230602004824.20731-18-vikram.garhwal@amd.com> On Thu, Jun 01, 2023 at 05:48:22PM -0700, Vikram Garhwal wrote: > --- /dev/null > +++ b/tools/libs/ctrl/xc_dt_overlay.c > +int xc_dt_overlay(xc_interface *xch, void *overlay_fdt, > + uint32_t overlay_fdt_size, uint8_t overlay_op) > +{ > + int err; > + DECLARE_SYSCTL; > + > + DECLARE_HYPERCALL_BOUNCE(overlay_fdt, overlay_fdt_size, > + XC_HYPERCALL_BUFFER_BOUNCE_IN); > + > + if ( (err = xc_hypercall_bounce_pre(xch, overlay_fdt)) ) > + goto err; > + > + sysctl.cmd = XEN_SYSCTL_dt_overlay; > + sysctl.u.dt_overlay.overlay_op = overlay_op; > + sysctl.u.dt_overlay.overlay_fdt_size = overlay_fdt_size; > + sysctl.u.dt_overlay.pad[0]= 0; > + sysctl.u.dt_overlay.pad[1]= 0; > + sysctl.u.dt_overlay.pad[2]= 0; This is kind of silly to have to write explicitly 0 to each pads, there's probably a better way. I haven't find any example for "sysctl" but they are plenty for "domctl", and I think this is maybe something that's wanted, so could you replace "DECLARE_SYSCTL" by: struct xen_sysctl sysctl = { .cmd = XEN_SYSCTL_dt_overlay, .u.dt_overlay = { .overlay_op = overlay_op, .overlay_fdt_size = overlay_fdt_size, } }; With that, I don't think there would be need to set a value for "pad", it would default to 0. And it maybe looks cleaner? With that: Reviewed-by: Anthony PERARD Thanks, -- Anthony PERARD From xen-devel-bounces@lists.xenproject.org Mon Jun 12 11:36:20 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 11:36:20 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547032.854201 (Exim 4.92) (envelope-from ) id 1q8fq7-0004Vy-QD; Mon, 12 Jun 2023 11:36:03 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547032.854201; Mon, 12 Jun 2023 11:36:03 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8fq7-0004Vr-Mj; Mon, 12 Jun 2023 11:36:03 +0000 Received: by outflank-mailman (input) for mailman id 547032; Mon, 12 Jun 2023 11:36:01 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8fq5-0004Vl-My for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 11:36:01 +0000 Received: from mo4-p00-ob.smtp.rzone.de (mo4-p00-ob.smtp.rzone.de [85.215.255.23]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 4d7c0fa0-0915-11ee-8611-37d641c3527e; Mon, 12 Jun 2023 13:35:59 +0200 (CEST) Received: from sender by smtp.strato.de (RZmta 49.5.3 AUTH) with ESMTPSA id L38909z5CBZtc4e (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256 bits)) (Client did not present a certificate); Mon, 12 Jun 2023 13:35:55 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 4d7c0fa0-0915-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; t=1686569756; cv=none; d=strato.com; s=strato-dkim-0002; b=pNrtVTYz4lyOmTy6g4Q2QNwSbHVe4QnycKb6jH+SNrbnAs4RSRitt5FzJLZHxo7euQ vz3zaR51iyDt/bu4iBtq5N7T9hrTEfLuU+6mx/v5wqZ21KVXzcRcFmnJ6bWhtOVjTDq9 /IHpXG8EXyjWXQ/mfHe3jvojes6woj5/Kzr1/wbsUfUVVA4Pp97YpKAqwAoHoFHM/YLo 6bBNTkgisBGLiUSNfqA1AMkfmZqFPGADtZwMBTUst7EUONKKDd4PawyLKU+/zfZ88f7V S+fMPJc5+g9VkLsac0TB0CXyBpZsP9r8PWpAY57veUbxZa/2ZUIsuNRxhIDhnyFjO12L huNg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; t=1686569756; s=strato-dkim-0002; d=strato.com; h=References:In-Reply-To:Message-ID:Subject:Cc:To:From:Date:Cc:Date: From:Subject:Sender; bh=pKt57UxSqw7BkjX8dTFjIFf2WIs8BhjFcxJrxL5J7qs=; b=p+YKlGiFBhTAKRNnqs2rhI/agAJrBIY5GK/LwJE5zMyUnobhR/HzF3n98TyHi88wq3 Rwqst7xODkqPH7yvNHKiUSoMv1iDazJ3PzEsfYAD37Mztq5u01djcfPTV3khOsSUIzrM MCEg34atP4/rLd1m+K5iKOeAAPMGOOjxfX5Qih8BjAqwVcoFuWqLlyquEnqUGLsR5Bae n1nWVTdCMCz8A9hJkN9UZIIT5EbfysFtnrJmej0fZaq98cay7Nt9shG6WuPqD3pQDMeq LZy/Qn98aiHy9BfjfLooSk0ElLt/LMFREwMcQhwja50Ww4cawyQ5zOstZM0hNpPg1BmQ 9VgA== ARC-Authentication-Results: i=1; strato.com; arc=none; dkim=none X-RZG-CLASS-ID: mo00 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; t=1686569756; s=strato-dkim-0002; d=aepfle.de; h=References:In-Reply-To:Message-ID:Subject:Cc:To:From:Date:Cc:Date: From:Subject:Sender; bh=pKt57UxSqw7BkjX8dTFjIFf2WIs8BhjFcxJrxL5J7qs=; b=gnjsdsy6LCSQ7EwRdEtXd37R/+T+N/8uAgRVqRmAA28E82OgrJUbEs6Z+L8xXlhDes y82kmQ3+eJ6QeAkds020t5lhYzxDlmsd33p5Ox7ajmjmFTqF83kjtSoQeapNBT68qCQX AdlffV2gU5r+xixYCANmOQRwSrp5Qy4y6y2hWwve4J1wIEDczAA0Ss62WuWxvrQ5anap oQpwmFOK2wavpvwoaXxso6/sVJiAq7jINGUqsIEEKESdL4dGXVZ9CVylomcKSQFBIknH /kTY8Cq5P858MX2d5dXnko9Gf+aMc6qr1dRHCXuEphb8AtoMqaeRG2rpEVFaoHSzfrKd BphA== DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; t=1686569756; s=strato-dkim-0003; d=aepfle.de; h=References:In-Reply-To:Message-ID:Subject:Cc:To:From:Date:Cc:Date: From:Subject:Sender; bh=pKt57UxSqw7BkjX8dTFjIFf2WIs8BhjFcxJrxL5J7qs=; b=MfJ8ajAEsXALJ0oWrfstLb8O9QtGS1zXxrN6Z4bC/Jxry3iatahHKA3l2GaPLQs/CS IIVRX4PA36dloHbigKBA== X-RZG-AUTH: ":P2EQZWCpfu+qG7CngxMFH1J+3q8wa/QLpd5ylWvMDX3y/OuD5rXVisR5AB2Ibh3sRFQAfajHZ8Hr2i7N1ImBUHmXWy0PQg==" Date: Mon, 12 Jun 2023 13:35:45 +0200 From: Olaf Hering To: Anthony PERARD Cc: , Wei Liu Subject: Re: [PATCH v1] tools: fix make rpmball Message-ID: <20230612133545.1318ce98.olaf@aepfle.de> In-Reply-To: <6734a258-3396-4641-b9bf-edf6193a8095@perard> References: <20230530111807.6521-1-olaf@aepfle.de> <6734a258-3396-4641-b9bf-edf6193a8095@perard> X-Mailer: Claws Mail 20230601T090920.68bc28c0 hat ein Softwareproblem, kann man nichts machen. MIME-Version: 1.0 Content-Type: multipart/signed; boundary="Sig_/mWNX_HgNO194q0y63bTk0ZQ"; protocol="application/pgp-signature"; micalg=pgp-sha256 Content-Transfer-Encoding: 7bit --Sig_/mWNX_HgNO194q0y63bTk0ZQ Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: quoted-printable Mon, 12 Jun 2023 11:40:55 +0100 Anthony PERARD : > On Tue, May 30, 2023 at 01:18:07PM +0200, Olaf Hering wrote: > > +pushd %buildroot > > +popd =20 > Are these 2 lines left over from testing? They don't appear to do > anything useful. I think the intention was to test if mkdir succeeded. But then it should have been right after mkdir... I will send v2 without these two lines. Olaf --Sig_/mWNX_HgNO194q0y63bTk0ZQ Content-Type: application/pgp-signature Content-Description: Digitale Signatur von OpenPGP -----BEGIN PGP SIGNATURE----- iQIzBAEBCAAdFiEE97o7Um30LT3B+5b/86SN7mm1DoAFAmSHAxEACgkQ86SN7mm1 DoAAaQ/+KyH8JLPraZjzFp47cOs0alYFCQ8BgxNoavA+MjLlySwUqgu0JnDGq3Tx h+fqBLe5CF8BAfXsjXQacsRbGc/wEAuVCkD1WpPqBAs1YpCwCx5HUzk09e1IBEZq kipf2IeNVHjU+R+najygKuXQH21Pwq7bMh3MWpHE9GOM1ghQWhb8yvVqC8HADYZs IOjL2cJIdNYmpJJ76+0m5ew2gsfCep+dLBtSmCgUBYy4rgdQmECMXiZQ/yrjePRt litJhmPjEzZaic2TIySyaJO8+DKklDpGqVDCg/bG4rhtLfnKbB1dhtBG2OOv721O GOIxfwFmdarimd5af8WWDcxVdxb5OIND5O2q57RcFrpSSL4trpClm97lshUzTyUy arHRxnpmxB0dAjHxz7z3Ifp1WTUrCkK3sozsMf4B6wDXE25O+Xhxc1HKXJQKOnpk fa1U885DZ9kAuZD/3zzMSC9G6dpcsQsvQBt5HFAjrntiWg9JTYDOTKhEmDqfEAj0 b70bTW9tm9Yqq7LT1A7IWWTyxFXqUJnXWk/s+2jbZPbpqmNxdPocoI8wX+Uakyij qqhE0TS624ac/8irG31URAt/M6EDZXk2LEKc/EaFRrA4Qsx7dt3IOi+yNyEiZc2Q Z3tJPH66aQmsvMYYrZi9yJ3Zy7F+qFtsWCOvFXGqrWwD5rijYKM= =aZIC -----END PGP SIGNATURE----- --Sig_/mWNX_HgNO194q0y63bTk0ZQ-- From xen-devel-bounces@lists.xenproject.org Mon Jun 12 11:43:59 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 11:43:59 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547038.854210 (Exim 4.92) (envelope-from ) id 1q8fxd-0005zc-Gw; Mon, 12 Jun 2023 11:43:49 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547038.854210; Mon, 12 Jun 2023 11:43:49 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8fxd-0005zV-Do; Mon, 12 Jun 2023 11:43:49 +0000 Received: by outflank-mailman (input) for mailman id 547038; Mon, 12 Jun 2023 11:43:47 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8fxb-0005zP-A1 for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 11:43:47 +0000 Received: from EUR04-VI1-obe.outbound.protection.outlook.com (mail-vi1eur04on062c.outbound.protection.outlook.com [2a01:111:f400:fe0e::62c]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 63aa05ab-0916-11ee-b232-6b7b168915f2; Mon, 12 Jun 2023 13:43:46 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by DU2PR04MB9196.eurprd04.prod.outlook.com (2603:10a6:10:2fb::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.29; Mon, 12 Jun 2023 11:43:43 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.039; Mon, 12 Jun 2023 11:43:42 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 63aa05ab-0916-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=PvobFaYsMTZB7bPUOenSsimSX7kseE52PXVbg2G4SMlTZvDJsxvzQZoVLCELjFh8/BGRoxVteYFBRYW4R3jVl1o4Di9tJr1tZVa5RUJx0PmRJ8cds3vWmr2c24/i9LC7G3f8z2QN3wh6HN1eNo2D/YrQX1cEts4wvoUoTpcZMzdouNzuOKQRWm7GHyTiCyu5KxIiHDpsjb2KQ2BjWkWZEvbsVdIF68QYVyAbv26+ncaMJshrJN5M1IsNnbZH293PZ1Pvk68xCxGl9Z14XgfuuQQMFdXEVYp48fy+3UTojtaf7AxbZvXc0MarWp73f1bbRBiS5OGWCvQogQudkQdUiw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=BGkmc2wSqEMHphmPgawD+3qg9wOrKHkL6facag/Exak=; b=Wlrsa0TjrnfgBbZB9QhhzAYWaUpnrzugGdKFRmZpYa2a9HCKWf8eK4iWM0S+/LDH+/FD/ASi2421Ph63+mIcnvkLLWMsUtZH3ifcqEr0k4/MBS9EQmxOAkNZpftLEZnZSRWm/2BKH0eFL5T6w95kkOje5tgabBXm+aN29YqsrYzy4odOrr6pjG4jcTQXB6GJAKvXuLsgD+3X0K8xAlO6xMGZNowa69tcd59LoRwaD4ueiccGsj29dOndiLDxLdzc9LtS9Y4kdubR0R3Lumoxc9miPXm7dXrktf5Doe2caKj64IIhIAAFOHoH0AgQ9U+PcWFFSbGkGTzfPMDYOqZIAQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=BGkmc2wSqEMHphmPgawD+3qg9wOrKHkL6facag/Exak=; b=qgKjWbpanbwuOZL3be5ZNozKYzvEnBtEy5leyb6GXgnhGykuxd+VEySNqRUpPls8hCdAGFuj/79ueU5GAaDGe4A7HLiUzaVRXGLRTY5qWUO+a6ajwwJIP/eRetoEq0ALhH1wcjDFERYisw6xV7eZiYoH1dCsKerrHPk47UFdsbG/EdWlK0DKW1vmg6sz/ifLmavo8KMd9dTKeDem6W1KqKTcPYQdRuyjI5gy8GrmyrtLfjy2tizkCJBQAQL5/5qBZf0jLcZhwwAUrGSxi5XJusOvxSqEWKAfFammyu2G4qVeMNlG/sVlMCbcIHEKT8jEqXeNzFdtF13vq6O57kugSA== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <2dc50b58-a4e4-3e32-1876-94412b14b052@suse.com> Date: Mon, 12 Jun 2023 13:43:40 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Content-Language: en-US To: "xen-devel@lists.xenproject.org" Cc: Anthony Perard , Wei Liu , Juergen Gross From: Jan Beulich Subject: [PATCH 0/5] tools: address Coverity UNUSED issues Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR2P281CA0151.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:98::14) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|DU2PR04MB9196:EE_ X-MS-Office365-Filtering-Correlation-Id: e8a04332-8c16-408d-cd4e-08db6b3a45c4 X-LD-Processed: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: BdEL8VTJQj3TBrpCtb9foOrGqinOQw70jrhDkXtkROe6Qe88Pq+2jBnRGC+mBvtmX6MTZMeKGQxCr/vvUGrRzEc6Ve4FomGZi5YWIp87TUCK63WtAdGRBH06lCQnHH9TzPzULtu3SZ5xgVa0D3DavL4wOptpY6eqr8o5u15HjGl8VQHQ+135g3ue7tpaW6TcqJp2jCPx7gWU+Qu+VIfloC9lBTYkTaWV/Y35+4A+OJ4wtaKqnc0F4umIypcARE7ZFh9pHAzoVi10kcMzyJG6EfPA4fvicyKY54szx0++KBUH9IPSaEjA+X2MRGdUhdk6AUAn7dwBgSaQAltn6wSejLJgGphFnNYZemyNBHQfGbqFrPqN/P2tXOmpVTkOdwzOWPupgckdfAZ8trtAgNXDBLPCnsz9oui7UvQttgvNtmkxRYM1gozvCzr60Q2LN2VMVF/5cu1e6jqnehd+GNOLuhFQfhU05BPmQF871q1cd1Zw80kDPQtynt0oo4sNPgOEtG7W04dvILR+tLWyFQncx1cFRw6vwSaIrZGcSFPE6G0xelcIqdd+vzAgvi4nINQEnjEgmcuEuq/fMIBi+Fc4aH37I2wxR9rxNhSnMoQBk2hZm/ZSlowOgnM98O6sQ5OvOq6nLFZUiDNeHfEfGxqMICUD77tV6iMVtf7hOM0sGPg+GrqxmMrJ1WcE+6yqPiw7 X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(39850400004)(366004)(376002)(346002)(136003)(396003)(451199021)(54906003)(5660300002)(31686004)(4326008)(66946007)(66556008)(6916009)(8936002)(8676002)(41300700001)(316002)(4744005)(186003)(2906002)(478600001)(66476007)(107886003)(6486002)(6512007)(6506007)(26005)(36756003)(86362001)(2616005)(31696002)(38100700002)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?ZVZVSHRLQkxoYTBUU1JER3pUZjhYOVdIc2NkclE5QXlCRTRXc1R0STgwUTJ2?= =?utf-8?B?RGVzK2xGK2xsRy9RUGgyS3VHQStOWDFZYURabzBxSDY4bVBJcXZmbVB6ZURz?= =?utf-8?B?aThlWFFPa2VDRXBwdDNRNi8xQkpJTUNlZXgwYTBnZENzK0YvOWtLa2xMeDI0?= =?utf-8?B?N3NUSjVkU3luOGZzZk1qTE8wb2YrR2NUcGRZanlnNVQyeWZLZDV4L0FMMXZn?= =?utf-8?B?UEhETE15TDVRYVFpKytKbldsenlKYWdvcWl3SUxNelpSaWdDZHJtemhWR3or?= =?utf-8?B?N0xVTnRSek5wSEtHWitnMUhoTjZMQXp4SWZxbDZzR0N3TlpCY0NPcDFHcWlL?= =?utf-8?B?ZXN6RUUrS3ZKSFpsTEkvaXNPbGcvOW1UZ1QvckQ5bGhUU0xJMFU0WGtBQ2Fo?= =?utf-8?B?dnlOa3Z4UGducHhNYWx6NzNIRjBDUG5BOE9kNWt5Z0FBNkQ0MTdpY2lSSTVp?= =?utf-8?B?ZTB2R1ZwTm50S3RjNFhUZlJjVEs4cHZVUmduZkNNSldHQ2dTdVJTWkh3NDND?= =?utf-8?B?cW5qVTBkRk9zcWZaR2ZzYUxvWFNySUw0RURLeVhyaFVqcHBSWFpLV0dnbHFp?= =?utf-8?B?aFB0Q08vSG1IV0tsVmdDU0kvSjdqdFVLNVA2UTFsVitvZS9lZlFZVnlUR1N4?= =?utf-8?B?dlp5a0lETzV0SzVlb1N6TkpnRTdyc204NWdjOWx2aFlYM1FjQ3NFbkppL2V6?= =?utf-8?B?Nm1ZcnlhOUVuQ0VGcnV5dFJxdlV5N2E2WTlDVzdPMDZSbG5WZmJsc3JXT2J2?= =?utf-8?B?cnp0b1hSc2hlZGZNSGNxcDFUVmVwQTVzd0RLeTFGRytVVXVSTjdUQ0ZQMXZZ?= =?utf-8?B?VlJrTjR1V3JZN3VpUkpNWDVvWVRUL0R0OFZVWldWemFjWnhZc1RQTGZPeW5t?= =?utf-8?B?T1VpbVlPb2JqZTROTkFtSGlDRW9RU3hrRDRMME5DMDByV1JnR2NOaEp0NS9I?= =?utf-8?B?Q29PblNwMytNeTkyYm44MEhEOUFTQ3FuS1d6RUFOQnc1V1dUQ0NXS3JJcmpL?= =?utf-8?B?aS84L01nZyt0bGdFM21EU1YvSERPelRJcURubFk3T2lia1NXQzQ4OXhnd0Iw?= =?utf-8?B?WU1yYmhPcFZ6UUVQcGVYdmd5bHl2UTRaQ3dTZ1VlZzFNNnNuTGhaTFJ0UndG?= =?utf-8?B?TWZONEoxejArQ2FueFh4MnloVnhEZlRQRjZZMVRsVVlkOXNuejRKRXpDbXZl?= =?utf-8?B?Q2V5N0Q3NGM3OTNPZTVpeXhPMEUrZXFjKzJxQUdDRlNPT21oZXFGbmdXSTlo?= =?utf-8?B?QmZOcURzbVBzaXpwcTk3SGdZbmxqRU9DWWx2czVMZFh5eVdVaDFYU3B1UlJh?= =?utf-8?B?Q3ZiMWsyTDFmaHYzWDJZc2E2N0I2MzUvTEFGNWtBNVZRU0YyRVN3ZWVnbmJF?= =?utf-8?B?OUV2eHNQZjVpb3dPUGR3QjJtQzFKbEk1aGRtUEdGaWYrWTlZc0UyZ2NZZ2t1?= =?utf-8?B?Q3FjVzZnUldaNGZ6UkV5SEZHeSt1clY1N0VVb0RkWXgrVXBMeXVCUjNORFdT?= =?utf-8?B?UDZiN2t0U2JOT2ZWNGFrWkt3dDZIdlgrWldZRFdidUl2VnhLUTE4THVIelFn?= =?utf-8?B?QVB3YTlpNWVaM2hWZ05MWWVFLysxekdNbmdQVVVOSEptZWRIb21Zcm43MEs0?= =?utf-8?B?SUNHNjIxN1ZkVnlBNXNlNjgzQzBtcWRUL1FrOXR0ajlUMWM2VWtYSTlFcnRa?= =?utf-8?B?T3BKZ1l2MjRQbXVzb0hxOEFTRnM1emN6aEpHSFZ6QjBxVWdVdFNFeEZLcmVF?= =?utf-8?B?Y2FvSnVwVjlZOXZDMS93Z3JnL2Vrakkrbk50a0wveVBiUmpjZ2lMTjJEc09I?= =?utf-8?B?Y2RLSWVCWHpQNjQxNnBhS2xGWCthVVFCMUptcFBjZ3B2TFFhT2RTZVJKSzdz?= =?utf-8?B?Q3dMMHVyOTdwU2QyWmRlUEI1eEtUTmdFMUJNTDQzMGZocFJud1RMVitGOXE5?= =?utf-8?B?Rjh2ZHhlMS9QcjNqSmlRc096QlIraXU4UE9ibkNGVTZOU3AzdVdCbXpwVFR5?= =?utf-8?B?NFkyZlFrZVF2aDduU01oU0ZRZ2g3eVlMdEt4dHFmdUpmczBjZFpRa01ua3FY?= =?utf-8?B?U0llSFJ4TE96TFJZSlkrU2Y5Qm1hRzllTU5VUTV3STZ4cllGRmMxSm1EMWtJ?= =?utf-8?Q?B8N/LqLYhVuaN8W1P3iHWg5sV?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: e8a04332-8c16-408d-cd4e-08db6b3a45c4 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Jun 2023 11:43:42.7465 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: EpmlI6p29jP/vFjRmwccaFuhYL8vW47RGfhIz/NvTRG1OFS9tL+oplvls3xixjeqBbIzodEIwtsz6b/yZOJZ7g== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU2PR04MB9196 There a number of cases where Coverity has spotted writes to variables when the written values wouldn't be used subsequently. The patches here are independent of one another, except for this common theme. 1: xen-mfndump: drop dead assignment to "page" from lookup_pte_func() 2: libxl: drop dead assignments to "ret" from libxl__domain_config_setdefault() 3: libxg: drop dead assignment to "ptes" from xc_core_arch_map_p2m_list_rw() 4: libxg: drop dead assignment to "rc" from xc_cpuid_apply_policy() 5: libxl: drop dead assignment to transaction variable from libxl__domain_make() Jan From xen-devel-bounces@lists.xenproject.org Mon Jun 12 11:44:41 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 11:44:41 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547043.854220 (Exim 4.92) (envelope-from ) id 1q8fyS-0006VU-R7; Mon, 12 Jun 2023 11:44:40 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547043.854220; Mon, 12 Jun 2023 11:44:40 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8fyS-0006VN-OO; Mon, 12 Jun 2023 11:44:40 +0000 Received: by outflank-mailman (input) for mailman id 547043; Mon, 12 Jun 2023 11:44:39 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8fyR-0006VF-E2 for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 11:44:39 +0000 Received: from EUR04-VI1-obe.outbound.protection.outlook.com (mail-vi1eur04on062d.outbound.protection.outlook.com [2a01:111:f400:fe0e::62d]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 822cca6b-0916-11ee-8611-37d641c3527e; Mon, 12 Jun 2023 13:44:37 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by DU2PR04MB9196.eurprd04.prod.outlook.com (2603:10a6:10:2fb::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.29; Mon, 12 Jun 2023 11:44:35 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.039; Mon, 12 Jun 2023 11:44:35 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 822cca6b-0916-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=ZxEAiqJUxrARTyhLehUh6YoOqEdXjQO/TQ5gyC0tg9f4FAb5MCypFsP+Skf/NFcz/Fni++Zf9UIjn7pjRt0ggWjMQ4V/Me3KxCzqhcx0a3/UenjA7iRXLIjm9TY1qdZFjqrTSmxrjs0hS8/ehalN229GfULvkvHLI+uXAqaGwnCr54dc8S5oRRLSqeuXu21/ND7GAb2bv2bnO/s4U0ndVtqGn2QF5OnYyD3FyXGokGX0DF8KTWL4FUR8pfeXs2qc8q0WasG0ramDVe2hh0yocYyA0JbmYOs9dlKXQQG3kp+ZZSmJJbJ9Ev85RwoMqJdDzf2HZkNNq0kncEoZ+IYJNA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=HunZ1Ybqmh3jQqmttIU82H5hOmm602MiozqinnZGkmc=; b=QAop4zRk8gKt/9MnjIBV9JmY/n6yheQndpKaC7ssXIcGZ9B0Tpn+be992lYV5f9rc14rAq1hdJCmHaRkXVRgoaz2t9coJvjf8jiYw2pzG1CUrtsEZC2xFYYYa+HOIELrW+gZaiTRYQ1c6eCPy0h3ULn0e6v+PbnXtgPa6/aWCR1W/CuRge7Ez8cQ+qBTyIpO9M99HDG6GabKQn9n80eSxqQ4FfFOQargJRQHaFNJv2RYpsixPFQ/PG/F50ieOmM8f2g6GrVcJNHaochCbGEpuWKe2or37uCao7XJneebeDLJIJEr7gm4zhVzOXZq9f3Wq6T6ys03CexxH1qxwFF+mA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=HunZ1Ybqmh3jQqmttIU82H5hOmm602MiozqinnZGkmc=; b=OOURdPDKKrXYFZtkJYhFc8e7Kthm7uI409KIKp5SiK4ETDtgt8gs2A1eV2StEGFY/UW0J/DfMlGke8s6/oU54uPa152W24yb2NmfL+g7BcvV9nYK76XPLvjS9Ia5JqxG9RFRNTICf3M4WD70fDLLmlzn387TJN6SGuoJkQP4tZ2z5kjHEk0jHRstKCjBgPk0a4OhtmvmuY40d9xyBjZAIS2buMXsRR50MlvuwyFnTH+9oUScTbcOfATY7jrlsz1mG9XEzDOPEILcBYysXeT9cGQbZrDdFx9On13unCdthgyH9yeSM3+PXjABWOpTUWOVsduD/c5fZFCYlHMzTd/YRA== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <8eb549c7-be3a-a41b-bee0-4cc6d39e7aa7@suse.com> Date: Mon, 12 Jun 2023 13:44:34 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v1] tools: fix make rpmball Content-Language: en-US To: Olaf Hering Cc: xen-devel@lists.xenproject.org, Wei Liu , Anthony PERARD References: <20230530111807.6521-1-olaf@aepfle.de> <6734a258-3396-4641-b9bf-edf6193a8095@perard> <20230612133545.1318ce98.olaf@aepfle.de> From: Jan Beulich In-Reply-To: <20230612133545.1318ce98.olaf@aepfle.de> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR2P281CA0144.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:98::18) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|DU2PR04MB9196:EE_ X-MS-Office365-Filtering-Correlation-Id: f764966a-0178-488f-d937-08db6b3a653e X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: gK8PGqgrb8jRyyVvnC5wkUdTON6GHSXEgJ4JnRsdmFFNzXM7jp5LOQ43arfkw1ZmVaPJKrD614pSdtNO5GW0yzwZqwXHrSIpabByv6Tkwo5FEe2ZyWIfwurwGyEhHX4tpKl4D+egn0phByyXajwqsKPDYgHrqb6UtbwqOPHSKhkN87Noun9VE6+eNcrgcBb34gl1gU23juc3Eu8FiGYHdwzjql31KJ7tn7D0jiZilR3kXoyISu/6xbP0Tjj9IcOVNMNqlDgBcSjR2ZHUQe535nBjSsA1iOad4j+bYfp+4bOKYIIQThPYHJFDpc+cbDdy2a8U4UNPiN/qCgwIHC9/B/dKN8oD823qW1SDPxjLd7YmWc/q1Qd1Gg6kNnYxzd716hBYF74h5YleVo3UnxCBx4WGJCR6Hw3NM64TKx1AIr3chNHE7dSruYA5eXK1jAwpZZxmafRal1RGc2KX/ziA7h6QovyR/QcTc3BsGLfaVG2V8Zcu0ZdSS7USIVvgDB1MWfIKtaSJQIZ6mUa/5RI91HO0szWjCaMFxDZe5xs7lVftryMU33HAAarAMAF49UrsoKKeYBdGEAbD76X/z3zO4yFmdEsWIn8oHSMEfZNr9FC7T6tXvFAmSaWkdG2xFC79kW3jdpTzjKBJJ1ZWub+ffdvft46B9es9Lc/vHk1fKRFiucpP4nag23oO2+6poXc0ERawXwKlBcyBWbIHnFJNZQ== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(39850400004)(366004)(376002)(346002)(136003)(396003)(451199021)(54906003)(5660300002)(31686004)(4326008)(66946007)(66556008)(6916009)(8936002)(8676002)(41300700001)(316002)(4744005)(186003)(2906002)(478600001)(66476007)(6486002)(6512007)(6506007)(53546011)(26005)(36756003)(86362001)(2616005)(31696002)(38100700002)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?ekVLaGFoM25TSVJITDRTVmV6RkJEc2h4YTVLcVRiRzdsSFpLOHJaVDlQVGps?= =?utf-8?B?ZDQvaGNEemlWM3lvcm43L3NxZ3pXUndjYUdPRnFmMi9qN3VVTFptSWFHQjVL?= =?utf-8?B?OEVQNTg4ejhybUJYRk9FdmtSM05VOWxzcTB4RlBWbzZqVHFFYkRNaDhmVjh3?= =?utf-8?B?MTRsNWZjVy9yK3BqQjEveWFEbXVKMjF0QTVRM0RoR3JRWHpOb2FOUEoyekdB?= =?utf-8?B?Tzl4c1hLL1JFVWgxVFhFMnZKdVRNRWRkRW95Mm02TXVDTnRHcGpKcHVDNEFG?= =?utf-8?B?bHo5KzQ1N1E3alpLVnFFOEs1VWMwNlhSemhSTEtjUmhxeXE2ZlpwcVVJdTRF?= =?utf-8?B?dXVzR1RnS2U5UnNJRkxrVHBvY1BrMTV5T2dHVUNlMUcvdWtZLzJjM01sQWpr?= =?utf-8?B?b1VwUkt6R3pZNndtL1NVeGFKM29JT0FrVmNVZ0wwajZETHE4akdJZk1vYVda?= =?utf-8?B?MUwrdnU2UTd4MnAvUU9XOXROT3V6b1NHNVk0ODR3c0RnVXl6bGdMa1l2TmJh?= =?utf-8?B?TURLejhMTkROMGpMaFlUQUVldEcrZTJ0NUVCeFJrQWh6VGtubSs2NExIUitP?= =?utf-8?B?MDJXN3llY0JpQlhWb25pUjRLOEF4R2FrbmRSUGNURXVtRUxKZ1E3bmgzUGN1?= =?utf-8?B?MUdGL2pJNkdXSlJOanBwRUFNTTQxSHQwQW03TkwrOEIveDAyWk1yOUkzMTBw?= =?utf-8?B?Tm5TbVFkSng2NGJ3eGI3VnRiSmNQUXpYcDB6aTFHVFVGVzZEUldxcVVZZ0hY?= =?utf-8?B?T3lCSEdLZWgxOFdHSUNudEZLdHVrMEdvWENMMFByRDE5cXM5QVducTQwTVhS?= =?utf-8?B?eURnWkpoL0lGbFV5V1pVQ3BCVW1ROWNweElUczRJVFlLOXp4MURoc0RKclBu?= =?utf-8?B?Rkp5amt6N2JvYXVkNktWMExLT28wZnk5NXdveHNlUnZZLys4YUN6YVZHbTdW?= =?utf-8?B?NWJBR0NIWnIyYzFXMUZHa014R0FuakJ2ZHlsL3p3c1pCY1l6bjAwVVZ3QVdu?= =?utf-8?B?ai81aHJTaU42RHV1czREdE9qUlgxL3JrYlQvWlpSRjZyOHBRS0drYjhHY2Vx?= =?utf-8?B?SEZOUk8wQWg5bkdjbXQ0cnJrU1lBKzVLaEs5U2QyMUlDSWlLZmR6QU1qL2c1?= =?utf-8?B?d3NYSzhsRVBFWE5RZ3hUejZzVWFkZS9lME4vMTRMS1o0bWFkSUk2d3VTQmpx?= =?utf-8?B?RDY5ZHpMRXBUU1lva1d4QlUvV3h3Y1FQclhzemRCWm5GN2I2akpOY0xXcHhQ?= =?utf-8?B?UG5hRVB5eG1NZWtMZk5sWGlubWgvTlN5b3RKcnkxUU1UbkZ1Rnh2SzZFYi9t?= =?utf-8?B?K2I2dmk0MFFER1lpSzBRVHJ3Rkl2b24wdjl6QnNhdStxY3YydmhzUkdqeVlN?= =?utf-8?B?L2tvVFdUMmdBbE5qY3hGallRc2tTOUEwQVEyeDJlUzRZZFdXcEN2Q29NU3Jt?= =?utf-8?B?ZGV0OWRFbHFlYnNCVWNtL1U4WTFmQkJpMG5iZWdZeHZtV0dvN3FIVm9tVys0?= =?utf-8?B?NUZvQXNsTnh3L3AxSlE4aFRONGF0OVpmNGRIRzdHSW9rZTlodjJIN0MvMDdk?= =?utf-8?B?TStEWlNiYzArTWs1WmZ3ci95NW5JSkFuMDU4c3hseFJCNnh2aFNyQlZKdkR3?= =?utf-8?B?cTBSeC9FWno0bHBraGoxeU0wNzE1U3dXSjVzVlNKbCttU1ZpUTBEbzNYaVZF?= =?utf-8?B?VWhPTVNFdjFqaFZKOE9mUlE3TWxRaE5ZWVVJUWhldVQyYmNtSDB3aDJieXB6?= =?utf-8?B?MnppdThjVzFPVmRCaWV6S0pVRXVTVVpuLzVPcVlGNWpQNWQzaUxTYlBKYnhr?= =?utf-8?B?NXd3eVFiakRUekNoVFUzZWNKUnRjUzFtRGVneWt3UFNIcktxd1ZodGs5VnM0?= =?utf-8?B?L2NqVjRIM2lRMTIzUC95bWZob01WYnNQa3pYeXRra2FSeHdVZHZYazMyOHIr?= =?utf-8?B?UWtYS3RCd0g1WG9ZK2VMdURmdlBGVmdsdDdSc0NlelNHUnJta0Z3QUtoZ0hY?= =?utf-8?B?eml5OU9HNVNkc2g1dXFUYzJlMnNOSkJURnlLRE1hMXRodzRYM0JPSVd0cDFO?= =?utf-8?B?MUJoOVo2RDFXTTFLVU5sMk1WdkZ2Y21ybEVqNFRhdUpGTFVGVndDY0pPeUsw?= =?utf-8?Q?GRuKyJNSb/jaDkCUQr/gHHfiF?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: f764966a-0178-488f-d937-08db6b3a653e X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Jun 2023 11:44:35.6052 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 3jsDsQmhYih/xIH57RVZbHoId9+7E4It5AO/o7NoVYJVJKsQsmU+5UwIfFJhk9s+UGPiswUNUTvVCuwO0s8TpA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU2PR04MB9196 On 12.06.2023 13:35, Olaf Hering wrote: > Mon, 12 Jun 2023 11:40:55 +0100 Anthony PERARD : > >> On Tue, May 30, 2023 at 01:18:07PM +0200, Olaf Hering wrote: >>> +pushd %buildroot >>> +popd >> Are these 2 lines left over from testing? They don't appear to do >> anything useful. > > I think the intention was to test if mkdir succeeded. But then it > should have been right after mkdir... > > I will send v2 without these two lines. I'd be fine dropping them while committing. Jan From xen-devel-bounces@lists.xenproject.org Mon Jun 12 11:45:31 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 11:45:31 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547049.854231 (Exim 4.92) (envelope-from ) id 1q8fzB-00075H-3C; Mon, 12 Jun 2023 11:45:25 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547049.854231; Mon, 12 Jun 2023 11:45:25 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8fzB-000759-0P; Mon, 12 Jun 2023 11:45:25 +0000 Received: by outflank-mailman (input) for mailman id 547049; Mon, 12 Jun 2023 11:45:23 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8fz9-0006zd-Ld for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 11:45:23 +0000 Received: from EUR04-VI1-obe.outbound.protection.outlook.com (mail-vi1eur04on0608.outbound.protection.outlook.com [2a01:111:f400:fe0e::608]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 9d3a3d42-0916-11ee-b232-6b7b168915f2; Mon, 12 Jun 2023 13:45:23 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by DU2PR04MB9196.eurprd04.prod.outlook.com (2603:10a6:10:2fb::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.29; Mon, 12 Jun 2023 11:45:21 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.039; Mon, 12 Jun 2023 11:45:21 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 9d3a3d42-0916-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=YibojOIAdW5tPGK2VycNy0yipEcUu2k0A+xhpKTNoBQVWarroikS4pJgYoWE2YdEC/r23QEReyAv7AjGOmY7D9vkNR96Ehxpne1hEh1U+7XMj1YUXFDMdPgvJtimLuXngLHgczOXXuKPPg+GijS/qUkDIkh+qBAay3y456kPP9J0daF8dUxWZDEDk3yMQjy8Q4sbYY9jJikd/GuEeHH+Rg6y9Qh+f5maaZqHp5Y2LY9US6nex5FYBdQtRJkeyw67IHpTl7i3xAsnXkJqVpRSNesxbxHeI1eppYJMz3U4AVAqGfJrcHewubHgVsb8/tu+hPZDeNZ562UwcC/9OnCDfg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=U1YzWXeZ3z6bC+mXj26Xjsu53Z/uSpydklQeVDdytmY=; b=kpp+DfTPJPbW4bTuPk3rGFXT4nT+rPAivFHH61hAZk1GPWdCVe4yz0JC8WVRxYeqZpwLq/KGV5hTKzGLLp9LvPLLYPlsHwSK7DeSEc2Rf2Aa10iT7KA0waQ4qHy0zI440FYoJRgy1xTmKjS4M7M8oX8aRSCJkSkt/V2Mogf0os6lHN0xsCIR8C3vLDSnqC1Pc5YhVTXAvyaVLW0DoB8fsHVLJ+mnR4aaonLr50W9d14DiDeD2vnkPgc5R13MwZ6PzfZZ7SrCfy2cbDn59kO/0Zm5IYckCjZKYjGaFHUrmj/0Ny8YY/zhz6auWv7Ol18UQ/JPmskxYn32cZxWXcx1HQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=U1YzWXeZ3z6bC+mXj26Xjsu53Z/uSpydklQeVDdytmY=; b=orqTSxlynbBkXGxentfJ0rDR9LeM/IaftWeMPCXKAPSprBAkCDGzmQla3YrkuNHVQnrtZsU1m3tKhP+1/LdkcDnRBaDRD3iClFkHVWoIlL2lMDRTArb4hwyMCQ2nqfpi4DoMVaXVPgRCHyhd6PqOfwCbHkLlUHQIyEyKDFQzDhlaQ04aY3fvs6XmmzFM4zo9LXW3bjJSox10BkuHQHctYVaTr7tQDANx3ds3SlfTcd5UrASBOrC7lgzQKnte5yJWfpcdl3BYj5Ai7nuaYcTsLGAbGuOAxQWrzAwIijHcnZC05AP0uQQmag2sc9H1W/Q4zAv9U74DX+IcFdgy0ObV9Q== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: Date: Mon, 12 Jun 2023 13:45:20 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: [PATCH 1/5] xen-mfndump: drop dead assignment to "page" from lookup_pte_func() Content-Language: en-US From: Jan Beulich To: "xen-devel@lists.xenproject.org" Cc: Anthony Perard , Wei Liu References: <2dc50b58-a4e4-3e32-1876-94412b14b052@suse.com> In-Reply-To: <2dc50b58-a4e4-3e32-1876-94412b14b052@suse.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR2P281CA0076.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:9a::18) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|DU2PR04MB9196:EE_ X-MS-Office365-Filtering-Correlation-Id: 5dd76939-9ab7-4e30-f616-08db6b3a80d1 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: arLVgovyo329rgDR+VnOfp7vWkCeFN5E9CfnqrV+WFUgpMAaGpajNNTC7UKw+m7gbqLxw1yx1CnvgZTFaOXElcF0HEzxIMBJrq5Qkhz+75PdBBs/QQZca3nqyFev+EzRTiJGPc1Fw7yEctA1N0sP/dzMJIdP+WKe5S+dj4JiqqChuWQrxDY1Dhxh7BcvHXOIWLLZMgqxmR2MOQywaWlXfgE/r5m2Olx/iRTj5NbIjJx/f6ckAK+Fk2PZRbixZz9BXGppA6aQeSiEC/4W1XB2ltm035Ergrvsq85E+iPNeaHlSF/z+4qODTAq7e3JOsy87k7Ju4nmDaaoHZKy3p9krmJVUZ9gwWRYNdWbFRuS5OPZwL2wkBCqcir6+sF3un5MsQXF2Wppe2aDb0/HPaVZadbjD+A0TL/b5KdT8pepK/DCavIK6k6jJ5/XGrhdxIUcaAV4GTprxOsKoYG74eqrQL0US8J9BJ8DpsoMbml4zC/CGCijhkDtzBDm0aZa2Hc1I46vw3BkU0J0x2UeLpZ929vl7SkmBYUfAn+I0Qj1cVtvI/rVCmnBsavamvc4LODXsbb2dkiZ5tdpqly2bmP6TWCWltfomqh4BehlI2ak72tqF6sCU9TphBIQKWT+BWPvsFQuvUiXx6z9uQF2JhvJO/jTEQF4NniGBw12UXT5FIcHkYAqW44NtKGwIR5QL/Al X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(39850400004)(366004)(376002)(346002)(136003)(396003)(451199021)(54906003)(5660300002)(31686004)(4326008)(66946007)(66556008)(6916009)(8936002)(8676002)(41300700001)(316002)(4744005)(186003)(2906002)(478600001)(66476007)(6486002)(6512007)(6506007)(26005)(36756003)(86362001)(2616005)(31696002)(38100700002)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?SkJTUUNlZzJ5ZExMb0Y1Z0pOVURJVkcyYU1FcXlFUnpaZVhseUd6RXYxcW5W?= =?utf-8?B?UW1tUWpsbGVhSmx5NnNoVEpYQ1RGL0tFelFnWUV6M2QxMHhScTdDSERUVzJ5?= =?utf-8?B?WnRHN0dIRDBkY1JIbmJuMk54VGVoZ0tSbVdXQmp2VVNIWGpGVDZiYU5SdTRm?= =?utf-8?B?alo5VXVleEI0Ynd6YS9zaXlyR3VIMmVadm9BWE9jY3pJWENhbWpuNDFna0dn?= =?utf-8?B?MEo2dk95bTJtWHZ0VE9oMTdBUjczeHZLaWJpVk1xMmV4NldNOEdBRDl2UFBz?= =?utf-8?B?dlBGbVZjK3VDSG5ITEdiTDFVVEZnTzN6aVFnblhVZTg1YVZVTEJFTUdCODhB?= =?utf-8?B?MTh1Tlg0MU5IeUJIUHc4enVtSjdFcjZmeUpwM3gzZEo3bFIzYjBIRlIweHMr?= =?utf-8?B?Ujh2Q0RMQnAzVmhtTUtwYURCTzBrVWRwVFZiaFFYUW0vSVhFTXlYTVJHT2V4?= =?utf-8?B?TGdDbDVEemIvcEt0SVYybW5GKzVDTDh6Nk1JbXFKdlJ5ZHM5eXl3WVdJdW9h?= =?utf-8?B?UFpCdzhHSDhsbmYrN3ZEd1hrUHZwMUF4WlBkWS9YWVY5bE5JYkh1UGVpbjlJ?= =?utf-8?B?M0VnMWxVdHhVUk92bG5kMDF1UTgrNEhuZmZ5Sm50T1oxNmVCZm5ua2VvRDdi?= =?utf-8?B?Y1h1UVdwRHNnQkFLTlFCYkdSTnplcGx2MldxbzBrTmVmNFFpNlBLY1oxMWZs?= =?utf-8?B?YUczc1VINktkTzBKKzdnWW42UXE4STJmL1ZwWnpFSXp5ZVQrdnZYM1dIMUFv?= =?utf-8?B?cU5rVGhyWkxzRHVwOVZmZ05DVjZjU1F2NXJqYjBMQUc3LzRVN2RmNUUzb1RH?= =?utf-8?B?R0NEd2ttd3ZvVTV4UzlJaDRtZnpSeXVJNjFVK2U5Q0l2aTNma1FnTDY4RlUz?= =?utf-8?B?VStvWVcrWkpuYXd0c0ZhOWhUTDVqcWR4SGRYejJEMFlEWkt6ell3OUNXRzln?= =?utf-8?B?cXVCRjU2c2RCQ3ZjUWtVdGEvY2VTSW00WGlSNVA1VG1vMzMwODdBUXNwQW9i?= =?utf-8?B?M09QYzlnUkxSL1c5QWxTUzJybE5EeUFIVGZMQS9xamhqekVuYS9VYlFmbGtF?= =?utf-8?B?MERrb24vRzBjYlkyS0MyRG1rS2xRZkpsRC80MjlXczB3MkMxTTZYOFdjVjFo?= =?utf-8?B?U3NsTHFESUQ2Tkc3ZmEzaTlEejY4TnZCbmZ4MS9qVEJnZWFxUDBmRlBkaW1v?= =?utf-8?B?SzR3R3hlanRtWkxpdGIrNWczc1lseVBpZnhIUGV6ay9LbkF0ZldjWE1sbFVw?= =?utf-8?B?c1pIeG11ZjFZMEtlakFmcGZrQWYwUnNtaDVrV0hORnQvdng5dUdyalVrekFr?= =?utf-8?B?cXNaSUhJN2lUdmVSaTZUMFJlTXFMSGhsM1dERkhYWjZRdXRrcTJuNW11R2la?= =?utf-8?B?MGwvWTB3SlZDTUtvUE9kRGtaSWd1SnJybjNTbXArTFA1ZmlwSVN0aU84OXFt?= =?utf-8?B?eG9lMTk3THVEYXZCbGgzdmZFNmJSWTRZTjlXQW5pa0FraTNoM3FLYnFQeS8v?= =?utf-8?B?OVlhN0dRSkRMNXlWS0VKVGtPR3pWeFBIYXlwYlpMdEo5SDBUVm8rTUxQVGVP?= =?utf-8?B?QUNoeXRoYkc5UDdoZDlBeVVkdjlFbDBHYVhuTGFOZUExUEx5bVFEamNQMkVK?= =?utf-8?B?bHg2eGFFcER4VlpseWdCSXI1ZDhPSHltT2hEZGEzbGxqMHpMNURWTXAyWmFH?= =?utf-8?B?Zk9Kbks2TVJueU1VWWpIblZOZnZKVVlHOHNyMHRnOWNOcUNpdU5JeENmSUFW?= =?utf-8?B?RmlzVDVFVWtudW1BOEx1VHRzazlUR0NicWNRSXhYK2t5aHNhRHI2ODVMbk1C?= =?utf-8?B?bzNLcmljcVN5VXpWQSs4OW14K0VNeENXc3JIWDFrSWlJWFBqdnU5Mlg4aHdZ?= =?utf-8?B?cEtmUEZSenJvWmp6dTlXYVhMQm5hSUtlVU9OSnROT09Qd3hiL0Q2MGJnMEhR?= =?utf-8?B?SlZROHd1NUYrRkNVTjAyVFU5ZzAyR3RYNWZTUWpEWVFnOWNDL1IxUHZETkxG?= =?utf-8?B?anFESnI4TUdSUXQvdGdmMVJPNlNKdkdsK01nczNpU2cyUWJ1L01IWTlValN0?= =?utf-8?B?ZTltU1V5M1lzSzZMV3J6bTdETFJqY3RKS0ZqQ3hkOWJkdndUNHFGL2VVTHEy?= =?utf-8?Q?SXrc/SN2JKNre5A+BOvsdE6aB?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 5dd76939-9ab7-4e30-f616-08db6b3a80d1 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Jun 2023 11:45:21.7926 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: OjfulOSW86MDsYfvM438jEvZq2+rmKHzLe20+PzCZVEkVxKuNkXwDobZZKeCFR7PDwpiEdj+9j9hEFMeRXAm1w== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU2PR04MB9196 The variable isn't used past the loop, and its value also isn't meaningful across iterations. Reduce its scope to make this more obvious. Coverity ID: 1532310 Fixes: ae763e422430 ("tools/misc: introduce xen-mfndump") Signed-off-by: Jan Beulich --- a/tools/misc/xen-mfndump.c +++ b/tools/misc/xen-mfndump.c @@ -265,7 +265,6 @@ int lookup_pte_func(int argc, char *argv { struct xc_domain_meminfo minfo; xc_domaininfo_t info; - void *page = NULL; unsigned long i, j; int domid, pte_num; xen_pfn_t mfn; @@ -301,6 +300,8 @@ int lookup_pte_func(int argc, char *argv for ( i = 0; i < minfo.p2m_size; i++ ) { + void *page; + if ( !(minfo.pfn_type[i] & XEN_DOMCTL_PFINFO_LTABTYPE_MASK) ) continue; @@ -323,7 +324,6 @@ int lookup_pte_func(int argc, char *argv } munmap(page, XC_PAGE_SIZE); - page = NULL; } xc_unmap_domain_meminfo(xch, &minfo); From xen-devel-bounces@lists.xenproject.org Mon Jun 12 11:45:31 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 11:45:31 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547030.854241 (Exim 4.92) (envelope-from ) id 1q8fzC-0007Kl-Dz; Mon, 12 Jun 2023 11:45:26 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547030.854241; Mon, 12 Jun 2023 11:45:26 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8fzC-0007Kc-AY; Mon, 12 Jun 2023 11:45:26 +0000 Received: by outflank-mailman (input) for mailman id 547030; Mon, 12 Jun 2023 11:20:07 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8fah-0003QD-Sb for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 11:20:07 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [2604:1380:4641:c500::1]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 14606e45-0913-11ee-b232-6b7b168915f2; Mon, 12 Jun 2023 13:20:06 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 070B960AEA; Mon, 12 Jun 2023 11:20:04 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 517FEC433EF; Mon, 12 Jun 2023 11:19:59 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 14606e45-0913-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1686568803; bh=23JwlmTrqv4IR+K4vNf3mjg3Y1quit9pjndWhP+WBVQ=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=WbVmaT/k2NJ431omJScx8rn6Tr4xCwHvNKr6toopgTYPT/LQMqMpo7FBV6vIGJ4Ih +HSkHHWJ35Kcb4B/GPixREIZZBfO6jCqVm2Oj7ei4Ar3Tq5VdX+HzY8hRcQXP/+huS OJbyhn41f3IULnSq0wd/dz2lHKMxj8853QNGxSQmcax6UBGdjg1/NwAF+VG6M3OHL2 ZzOOn7hwX4hqHpXo5AUa9bZN9l3F97lPwSQv46KeDu8M33XqdrFtdbw9tq1DG+/U0P 7qVFwPAn09GyfkCtFxQ5HZGZsXWZZPEQgoJDyew2d9LSRvZgIIxDgS8gSf/0U6hnid f8spn2rSpOb/Q== Date: Mon, 12 Jun 2023 12:19:55 +0100 From: Lee Jones To: Demi Marie Obenour Cc: Hans de Goede , Mauro Carvalho Chehab , Sakari Ailus , Greg Kroah-Hartman , Juergen Gross , Stefano Stabellini , Oleksandr Tyshchenko , Andy Lutomirski , Thomas Gleixner , Vincenzo Frascino , Petr Mladek , Steven Rostedt , Sergey Senozhatsky , Andy Shevchenko , Rasmus Villemoes , linux-media@vger.kernel.org, linux-staging@lists.linux.dev, linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org Subject: Re: [PATCH v3 1/4] limits.h: add UCHAR_MAX, SCHAR_MAX, and SCHAR_MIN Message-ID: <20230612111955.GM3635807@google.com> References: <20230610204044.3653-1-demi@invisiblethingslab.com> <20230610204044.3653-2-demi@invisiblethingslab.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <20230610204044.3653-2-demi@invisiblethingslab.com> On Sat, 10 Jun 2023, Demi Marie Obenour wrote: > Some drivers already defined these, and they will be used by sscanf() > for overflow checks later. Also add SSIZE_MIN to limits.h, which will > also be needed later. > > Signed-off-by: Demi Marie Obenour > --- > .../media/atomisp/pci/hive_isp_css_include/platform_support.h | 1 - > include/linux/limits.h | 1 + > include/linux/mfd/wl1273-core.h | 3 --- Acked-by: Lee Jones > include/vdso/limits.h | 3 +++ > 4 files changed, 4 insertions(+), 4 deletions(-) > > diff --git a/drivers/staging/media/atomisp/pci/hive_isp_css_include/platform_support.h b/drivers/staging/media/atomisp/pci/hive_isp_css_include/platform_support.h > index 0cdef4a5e8b1bed9884133f1a0b9d853d59d43a4..e29b96d8bebf14839f6dd48fdc6c0f8b029ef31d 100644 > --- a/drivers/staging/media/atomisp/pci/hive_isp_css_include/platform_support.h > +++ b/drivers/staging/media/atomisp/pci/hive_isp_css_include/platform_support.h > @@ -27,7 +27,6 @@ > > #define UINT16_MAX USHRT_MAX > #define UINT32_MAX UINT_MAX > -#define UCHAR_MAX (255) > > #define CSS_ALIGN(d, a) d __attribute__((aligned(a))) > > diff --git a/include/linux/limits.h b/include/linux/limits.h > index f6bcc936901071f496e3e85bb6e1d93905b12e32..8f7fd85b41fb46e6992d9e5912da00424119227a 100644 > --- a/include/linux/limits.h > +++ b/include/linux/limits.h > @@ -8,6 +8,7 @@ > > #define SIZE_MAX (~(size_t)0) > #define SSIZE_MAX ((ssize_t)(SIZE_MAX >> 1)) > +#define SSIZE_MIN (-SSIZE_MAX - 1) > #define PHYS_ADDR_MAX (~(phys_addr_t)0) > > #define U8_MAX ((u8)~0U) > diff --git a/include/linux/mfd/wl1273-core.h b/include/linux/mfd/wl1273-core.h > index c28cf76d5c31ee1c94a9319a2e2d318bf00283a6..b81a229135ed9f756c749122a8341816031c8311 100644 > --- a/include/linux/mfd/wl1273-core.h > +++ b/include/linux/mfd/wl1273-core.h > @@ -204,9 +204,6 @@ > WL1273_IS2_TRI_OPT | \ > WL1273_IS2_RATE_48K) > > -#define SCHAR_MIN (-128) > -#define SCHAR_MAX 127 > - > #define WL1273_FR_EVENT BIT(0) > #define WL1273_BL_EVENT BIT(1) > #define WL1273_RDS_EVENT BIT(2) > diff --git a/include/vdso/limits.h b/include/vdso/limits.h > index 0197888ad0e00b2f853d3f25ffa764f61cca7385..0cad0a2490e5efc194d874025eb3e3b846a5c7b4 100644 > --- a/include/vdso/limits.h > +++ b/include/vdso/limits.h > @@ -2,6 +2,9 @@ > #ifndef __VDSO_LIMITS_H > #define __VDSO_LIMITS_H > > +#define UCHAR_MAX ((unsigned char)~0U) > +#define SCHAR_MAX ((signed char)(UCHAR_MAX >> 1)) > +#define SCHAR_MIN ((signed char)(-SCHAR_MAX - 1)) > #define USHRT_MAX ((unsigned short)~0U) > #define SHRT_MAX ((short)(USHRT_MAX >> 1)) > #define SHRT_MIN ((short)(-SHRT_MAX - 1)) > -- > Sincerely, > Demi Marie Obenour (she/her/hers) > Invisible Things Lab > -- Lee Jones [李琼斯] From xen-devel-bounces@lists.xenproject.org Mon Jun 12 11:46:31 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 11:46:31 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547061.854250 (Exim 4.92) (envelope-from ) id 1q8g0D-0008FN-MA; Mon, 12 Jun 2023 11:46:29 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547061.854250; Mon, 12 Jun 2023 11:46:29 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8g0D-0008FG-JT; Mon, 12 Jun 2023 11:46:29 +0000 Received: by outflank-mailman (input) for mailman id 547061; Mon, 12 Jun 2023 11:46:28 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8g0C-0008F8-0v for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 11:46:28 +0000 Received: from EUR04-VI1-obe.outbound.protection.outlook.com (mail-vi1eur04on0627.outbound.protection.outlook.com [2a01:111:f400:fe0e::627]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id c3719919-0916-11ee-b232-6b7b168915f2; Mon, 12 Jun 2023 13:46:27 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by PAXPR04MB9424.eurprd04.prod.outlook.com (2603:10a6:102:2b2::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Mon, 12 Jun 2023 11:46:23 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.039; Mon, 12 Jun 2023 11:46:21 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: c3719919-0916-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=cuBb1RoVDyFLwaSn2pW2mdhS103q6yLgOy/dymeMaq/6vbJATYYM8L/WP1xmRtbK5+O4uNT8dFOak4OMWC7mH3HU/I67paXlVEntc3iz8ku9CsjcF3GV+PqvOdoGLRAhk8IB1Fda79fdV7kV8jG5cKwfdYiOTqcHypxpzstve8cHDTIx1JMIpHALk8LlywZYDpm7FbE+Gt4cDhdM9WGFflJnlsG85eeh+oPEsOGntZ2aMshsCdhSCqbNMkkV9+Tdr4/JsxVu6A7/1sxHVQiYm2IyfkbKOanDbVFw622P0ARBLU0XszHjAUeJ2Io17aGfE4p2/CLs/teIWH6vwWrrTA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=+dDuzZO3NY+2JEelv9HlCc27GL3IfXBwOaXL4IVoUlc=; b=Tgx4oLAGyXtu9R+WofTZ1vIT2GoJVcxQAN8E2tc1TU8i0I6pQoFYBiRTTsk+B47GocdxiBRKMmBW2x+xxBS298QJCU/7muajlfIkvHyA6IVQ6eQQULAMlpRSMXZ+0IT+Jxs/C2jX8MIOZQO0R/NL9gv9OevhfrOm6l6hbammN+50ig1lamLCIsIsd+9Z4bvVSfieES3jo/GmXAUhtbGGiPHqzbhmro2fBxFFyuUVGmpAL6wvknGhSZ3yaxLXcEdGvcdwnkKyxJbrCnIiEC4bQ54BcGf2mXTSLcHJh1qsKQg9voLLZo2vkTr4hT0TkPQgiHgnsO2Tb3zryWrxhPQ+Qw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=+dDuzZO3NY+2JEelv9HlCc27GL3IfXBwOaXL4IVoUlc=; b=0PxbqoHncnfKxb0EkDIuBDlElfqDg/52LjB3Hum7awJH2xkBWZ45yuG50rRMMNLTQf5AKQbatkRITggZhFuyWe+cX1i2+HGPW8BrS3v9TpP8pC+D9fi0wSpBuEINZmRU/n0HH0bOY1mD1wY3dItfoiIkwC+MMDITp9LfI8javGKjTZoB8PMmVr/owKnexTobhwnjGPrqrsZwqVO3hmWHeUZhfCi2nN4QqBfR+oWkzR8XW77Ys1//ePru+sAjQJ8z8c8cRa+5fj+cSid79ljEkz5KIGHZIseYqheLUqwr5wvbQsyH2FrCoT/GqYR0Ztx+kI9qtOIPtGy5zgVJUTBCBw== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <5eda17da-7185-9cf6-7e87-70da57aa0ebc@suse.com> Date: Mon, 12 Jun 2023 13:46:19 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: [PATCH 2/5] libxl: drop dead assignments to "ret" from libxl__domain_config_setdefault() Content-Language: en-US From: Jan Beulich To: "xen-devel@lists.xenproject.org" Cc: Anthony Perard , Wei Liu , Juergen Gross , Daniel Smith References: <2dc50b58-a4e4-3e32-1876-94412b14b052@suse.com> In-Reply-To: <2dc50b58-a4e4-3e32-1876-94412b14b052@suse.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR2P281CA0095.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:9b::17) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|PAXPR04MB9424:EE_ X-MS-Office365-Filtering-Correlation-Id: b886b6c6-6e15-4515-cdf0-08db6b3aa47c X-LD-Processed: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 1a9JzZS1gVN6MoesZUCHQqmbztcsCmxJ176c184Z57bQ51Nr4d8AvzKypk5GWhcfTx5Yw7pDLc0rTixQNQXz7H+qXY0FaLUEYGiFBy71ee7AmA4sZno4xY2oPdfPOTrL8cUqMcpYV5x5dEr5s1s+2G1Pv6it7JaVdTO6tx0LVyYnlkrUOue+/zRP7JE6wvu/rDMxpDK1WKdAtqXhvIguMk0/wL+waenZan8IY38IEfIYrk/6vBIpk0Kdb410LlqdztHEKYUMDDj0NQ5/4+Dv6oOazpeLhxGZF+gXDWVPr1mCtuy0BxzpYUOW9vr4dFqQBhdlPsWXCnSvRnxQh418DHNVC/W890qa31nydzTo+wOn0yJa9YUpBuxPpJgQdocWoQTtYkUBGOyrvB+b5Ae4fNeGngIFmrjwu9rI0TnOskRggseQikBWHBVmRHoClzRluXx4OfiqWQOXgC2jE1J3P0tqcSiJHuZFDbF83iCgJ43x7vOkzIdy3WQCg9gPqYLCr9HifINLUVqJ216/IxEUkdi2w6u4nszFJXpQLWnM+xBS/bK3b78sVTbTtVuwkxfKLF60mCAJp/4FGqsfGx1h3DNOPNW07fSY80+RNOScaWT/z6uT1SMYZXwPl4jhYILcSI+4HRvuLIszhmqPEHlYDE8Lm5qm3/iWD294CpyPv9WX2lc06TbuRZmH22K9laIx X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(366004)(376002)(346002)(136003)(396003)(39860400002)(451199021)(478600001)(8936002)(8676002)(54906003)(6506007)(5660300002)(41300700001)(316002)(6486002)(66556008)(6916009)(26005)(186003)(31686004)(4326008)(6512007)(66476007)(66946007)(2616005)(83380400001)(2906002)(38100700002)(86362001)(36756003)(31696002)(101420200003)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?MXRYdWhtMVYyc2xCLysyZ2RFU2g3MU1TamphWWliNGcycjhPRE9wbjJWQ2xi?= =?utf-8?B?ZVc4OHVwSkRhYWVCMW4wby85MFdvU295NGhVdTV2Q3RqaHpybUpSQ2lDWnFL?= =?utf-8?B?U3N4SENsQjdEdVJEVkM2ZG9qMHliMFpWeVFTNm9BRkxWdUpMby9uNTROZ25n?= =?utf-8?B?MHQyb2F6eHZkL2VZZGt0anl3WFRqQ3ZiWjdnL0ppZ1AzbkMrdzJyQ2oxblZq?= =?utf-8?B?MHI3dXJPYkx5ay9kTFBuWFNZQ1poWmowSFI2YmhaS0pkeEw5b0xpVDZ3M3BY?= =?utf-8?B?dlIrdWFFMXBuT2Jkczd6c21rNWZBQUNDMkJaZWljeFBRSlU2cmFWTlp1WitY?= =?utf-8?B?eVhxVlVxeG1iejlKYXRkdXBhWFl3cGtQTUxKS3hRUFJ0dCtCL1RLdmZ3MXNB?= =?utf-8?B?OWwySk40K0tmeE0yaUlISmhKQ3NVbTM4SVRTUlVjcEx0dEdFengybndURWJW?= =?utf-8?B?Qm9NY2NpeW02OXplVTZkZVlYWEYvdWhUazdOajNReE8vZFFHTkZHL0hJU3JI?= =?utf-8?B?Y0oveGdoc1ZlaDdFeWF6OXRqSXN1RzY0azF1cWFuTWNXSWw3eCtWWXpCdElI?= =?utf-8?B?T1lwWmhSRXdwVkZKZGpFemdtSjE0dDhJaE5GQWpuamhqRll5dWszNVZhWTVV?= =?utf-8?B?NXB5a0hYa1J6SUNYUGdBSHpJY3UwbXRGTmU2RHVTeUFvckEzcjYwTk0rcTFk?= =?utf-8?B?SnZTREUzSmY3NnNDTDg1YjFpcDFJM1loaThueW0rOVppTS8wakRMamJDOEha?= =?utf-8?B?R0FZS3dMQlJWWndMSmNtbzRuWGlNQnE5R1VqMjdaOHpDcDZOWVVTQ1pzQWcv?= =?utf-8?B?STU5bWw0RlI0NVlmTzhxdjR2WGtzdUtDaGJFUEdzamtVMTlEUllDdEtXbmhT?= =?utf-8?B?SlVTRVpVcVdpUGg4Qk5MeDU1a3Y5czNIdGVYa1JTZmQrcHZiSkJoYWU2TE4v?= =?utf-8?B?dW1nZENSNmVUeXZYTGdUSGg1djM1YWlsbEtyY3AwK0dRT21pSGRtT1hMa09F?= =?utf-8?B?VytzS2VaenR4ME9BTDFER1FFR0FtVDgvY2tuc01BajRDYkY4aUU1aWZsSUtu?= =?utf-8?B?QStjcnJIak03V2Z3dlIwUnF6M21IMm1pQTcrLzVaQzdoSUZmVGpoY2UveDhq?= =?utf-8?B?SjIrb3ZWeXd0V0hLYklTWVRGSFdyWlBMbGY5MHZ1dS9ZcFJYTWNSZ0RsYjBk?= =?utf-8?B?L2g5U1B1dVhDQW1lejZTamFMbTNwV2hySTZncXVYQW5xWjcwZytIcS9QdDlw?= =?utf-8?B?YkllelRmekdPQmZDUDBidnV2VnpEWWJXeXM3eE1KQmM3RW9BOUFqc1lUMEdS?= =?utf-8?B?SFFzMW9HWFV6anh6MDYzOTFka0FaRVNOdnorb3lhaHd2ODVLalpmN1lYNGtC?= =?utf-8?B?NzRpcVdRZHl4UDl0V1ZQdFUwM28vVDBudThnbWpQUDhJYlpIdHNkaElKTDIz?= =?utf-8?B?ZU5zYjNTUGpVVkt5by8wbU1adFdPZFI5SS9OcU5iZ0R5TVJEc1ZRUVkwa3Z4?= =?utf-8?B?djUwZXN0WmxoRkZNTG9UQU1hTkRNakNYaGFsQms1QlVuaFVEanFkbllnMzd3?= =?utf-8?B?cEpZNlVSQTJ2NmlRMmppaGcvcFhkZ2Z6TCtyVlF6TmViLy9hcFY3c3FhbjVE?= =?utf-8?B?U1FQQ0E2aU9TMnIrQjZJVG9vNVZ5Wnh4c1B1ZEZ3L0MyeGVpS0wyQXk4aWg0?= =?utf-8?B?TzF2aEloNjhxbzBpRXIzd21QQTdDazB2d1VFeEVMN1JhdEM3aWdtSWdVUzRE?= =?utf-8?B?bVpyd1M0dXpHSnVONS9Udmtna0tUbjJUdHNYdWFXSzFDVjFYMXd3WXZhQ0xO?= =?utf-8?B?WWJjMEUwS3hrbW5PWTZNd0RVVDRCY2lkMXoyV040UktnVGpyYThJRXZzbSs3?= =?utf-8?B?SEovVTFkMjBNSERSMUg1KzhPT2h1dXlvZDk2Q3NldFBjKzB2cmJsanBsajdM?= =?utf-8?B?aFVtaDlwOUR3L0lMT3ltMGFyMVk5K2FHKytPeGZlY2RncDVnYlplOGwwUVpH?= =?utf-8?B?WjRhU1NJQXdUb2g5MzlRTXUyeEZseElvSnNOL1h3WHY1NENMREtzOW1PdE9z?= =?utf-8?B?N0s3Y2t3aTJYcjlZdW9HeGprMkF1WkpEZXZrb3R5MlVtUHg3NnZsRzY4N1la?= =?utf-8?Q?QBP5t8u7qgd8rwnhNW4aU2U1H?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: b886b6c6-6e15-4515-cdf0-08db6b3aa47c X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Jun 2023 11:46:21.6682 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: ftxTKhRU7ShBGZ0fgaiRi1IUAKzVMDjTlt6cjH/4Wqm1TsSOmzeZ8BopzhCb3u4hSDYISFseHi/e2l6L5P+QaA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB9424 The variable needs to be properly set only on the error paths. Coverity ID: 1532311 Fixes: ab4440112bec ("xl / libxl: push parsing of SSID and CPU pool ID down to libxl") Signed-off-by: Jan Beulich --- If XSM is disabled, is it really useful to issue the 2nd and 3rd calls if the 1st yielded ENOSYS? --- a/tools/libs/light/libxl_create.c +++ b/tools/libs/light/libxl_create.c @@ -1081,13 +1079,12 @@ int libxl__domain_config_setdefault(libx ret = libxl_flask_context_to_sid(ctx, s, strlen(s), &d_config->c_info.ssidref); if (ret) { - if (errno == ENOSYS) { - LOGD(WARN, domid, "XSM Disabled: init_seclabel not supported"); - ret = 0; - } else { + if (errno != ENOSYS) { LOGD(ERROR, domid, "Invalid init_seclabel: %s", s); goto error_out; } + + LOGD(WARN, domid, "XSM Disabled: init_seclabel not supported"); } } @@ -1096,13 +1093,12 @@ int libxl__domain_config_setdefault(libx ret = libxl_flask_context_to_sid(ctx, s, strlen(s), &d_config->b_info.exec_ssidref); if (ret) { - if (errno == ENOSYS) { - LOGD(WARN, domid, "XSM Disabled: seclabel not supported"); - ret = 0; - } else { + if (errno != ENOSYS) { LOGD(ERROR, domid, "Invalid seclabel: %s", s); goto error_out; } + + LOGD(WARN, domid, "XSM Disabled: seclabel not supported"); } } @@ -1111,14 +1107,13 @@ int libxl__domain_config_setdefault(libx ret = libxl_flask_context_to_sid(ctx, s, strlen(s), &d_config->b_info.device_model_ssidref); if (ret) { - if (errno == ENOSYS) { - LOGD(WARN, domid, - "XSM Disabled: device_model_stubdomain_seclabel not supported"); - ret = 0; - } else { + if (errno != ENOSYS) { LOGD(ERROR, domid, "Invalid device_model_stubdomain_seclabel: %s", s); goto error_out; } + + LOGD(WARN, domid, + "XSM Disabled: device_model_stubdomain_seclabel not supported"); } } From xen-devel-bounces@lists.xenproject.org Mon Jun 12 11:46:51 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 11:46:51 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547063.854261 (Exim 4.92) (envelope-from ) id 1q8g0T-0000B7-Uz; Mon, 12 Jun 2023 11:46:45 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547063.854261; Mon, 12 Jun 2023 11:46:45 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8g0T-0000A3-R1; Mon, 12 Jun 2023 11:46:45 +0000 Received: by outflank-mailman (input) for mailman id 547063; Mon, 12 Jun 2023 11:46:44 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8g0S-0008F8-7B for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 11:46:44 +0000 Received: from EUR04-VI1-obe.outbound.protection.outlook.com (mail-vi1eur04on0628.outbound.protection.outlook.com [2a01:111:f400:fe0e::628]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id cd3a102c-0916-11ee-b232-6b7b168915f2; Mon, 12 Jun 2023 13:46:43 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by PAXPR04MB9424.eurprd04.prod.outlook.com (2603:10a6:102:2b2::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Mon, 12 Jun 2023 11:46:42 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.039; Mon, 12 Jun 2023 11:46:42 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: cd3a102c-0916-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=P2z65NHZLHfHzPGCAaoJqmkwopKeWpZen0NY99NV8MNrBvKSxWzhbSm8iSIJUf5XNlNJH6KrsiGWIu5ZMxQXuPzr/ikF/5jio70MCwLdCXLRrv62FHLHYet/7pfrzTsKtfor8vKpSkAodyXqwy5FsdYLkQddIBkRKhNzTHUMkN5U4bllZB4wYY7UWi6JKGNChwLca4oCfFYQLK8tbuBjp3d62b/kNfF4WVe23FihmuEmn0w37wCiXc0sIodAVw2n0X1eTXnoKxgY/d567MLKYEPeGErJCsJ/FMJvtiUys9/DQb2WGG+DRLhRy+4q5ClzHPP00xqOI8BaJ3cBbS8SRg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=rPVECL3iX1325C06pRAn0RbvmreO2AjYKQ1yM2vVRJ8=; b=Hb4EbkjUfxA6eW8v6YqVI0lcy8GneIngjRiI0Ypb5Z14bv9DNLRZ/+rFsw+Wb6W7BmBU3HXLaG1QzwzRmtgyjcaVvUU2Gko9exWNs5ST+8zRi28jU24vVElYHUPc54I31o7LM55z3Xudun98GWPeP5zGEqkWWooKxq8GQL6CaT+J1sdO0WYeV6HPN7PiOP2JCrx6TW0J40dXcfcvvNxWWcaSgfWp+RyYPzGqXHHS9Ycw2fwWPzuB0pE9JAUZBPFzE+zEtZ31fQhLH05VDv5ekfcGW79dvQMp+rdT1NnGOv9/yfhFby1/YLL42ZAcFIcU3Y2qP6ns4NSnF/rcdlHFJg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=rPVECL3iX1325C06pRAn0RbvmreO2AjYKQ1yM2vVRJ8=; b=3uTip3c+Hntan0MmCkFCY9GXmpA27MUEZ0tmcnb7l/S98uqt8YiW5C+QZ4eTQzENtRWDFs85Yr3Yx3Og3U28bhdgAUmhhq86RXsUY6RMJwfqzdjppSSan0GwwMRkE8RwG/xULGcQ6Vnvt2MU0mG2GXFqzTQfs/C2Bid7kmlDcdr2tfh/LPtlQGdLE+CbQx3KkjCyr08UGOJiDNE7UzQPVGl1VGeY9KpIuQEX1v818CaClYFDc8zBtJkIUsUHj1S9huSZnZ7y9JtqUdLj58IbkdYdIZSDaidpcLveYsC5XYAEDAJVxDGGRY5EIAb2PFjSCd7b0iKX8xeHL8m4ImQdww== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: Date: Mon, 12 Jun 2023 13:46:40 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: [PATCH 3/5] libxg: drop dead assignment to "ptes" from xc_core_arch_map_p2m_list_rw() Content-Language: en-US From: Jan Beulich To: "xen-devel@lists.xenproject.org" Cc: Anthony Perard , Wei Liu , Juergen Gross References: <2dc50b58-a4e4-3e32-1876-94412b14b052@suse.com> In-Reply-To: <2dc50b58-a4e4-3e32-1876-94412b14b052@suse.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR0P281CA0172.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:b4::14) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|PAXPR04MB9424:EE_ X-MS-Office365-Filtering-Correlation-Id: dbdcf97e-575a-459e-318d-08db6b3ab0be X-LD-Processed: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: dmzPkbX53d/WwDSxNKurA3qeSA/VaGO/h5QllgK5+u2QFoFOiNErvfrycOxP+5Ruu7Bzo325I7Fc6Fi1qS734r6Ta9gb6mJW8Ga91WxprE/p0+uVSrkgzaTkTh0lL2TOYbgC+SiA0vlz/KTSHPxNbrR20wp4ak1lZ8rXqLNbPu3ojZ06Z6uw/kWWQhro6/yxn+uzIzkMEnsCYA3ZerKNH1rSmxIZX89xE6blLHyOYSgkRCyWufrPUd154upPTLmj8DcU85d3BdqIjQzAvo5tzqWUXfuW3puSzAAASz2m3ChdV4XD/V1fzc8bhZoCcTgmP26epmYLASCgnS4tHKVQQ2cEvVYLuccEKEFMH12HWkIihf0eLAC05oBdgK+8EFEbtVqESr+F4DGrCGqzjLq5vAVHX2llSglyKxKLLVO6gL1stUH0g1lSM7Bp9zxB85ul/jnVGUfLQ8hVhmfa5EAkPe9M4o2hLKI5E2Ofisg8BIUJy8AEd3Ci6nncNUD6vAPC6wU9U74GVvJwnoS/ONBVMtRm7rjzb89XH8BEimBLgFPYv6YwzPDAw/m3Doza65eg4JmQ/DobUIdYlvx1Im/SHouua/+xOepqFhuPQuVGp88YdOZUzfFJs1tHNPNCpvSyQssunFKO1nxcL5UK4P6duRIPuzS753e2caZbJWE1fkUFLLxqK4AEgsQQl9zyHxa+ X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(366004)(376002)(346002)(136003)(396003)(39860400002)(451199021)(478600001)(8936002)(107886003)(8676002)(54906003)(6506007)(5660300002)(41300700001)(316002)(6486002)(66556008)(6916009)(26005)(186003)(31686004)(4326008)(6512007)(66476007)(66946007)(2616005)(83380400001)(4744005)(2906002)(38100700002)(86362001)(36756003)(31696002)(70780200001)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?cC9hT2RmcmEzdm9KL1FwODhjRnVoeEFyRkZVSWEwcC8zQXRKc3pLRWU2SHJk?= =?utf-8?B?MUNSMzdHc25nVTFwRTdBcGpweFU5bWdKN29KN2lxZEU2dTlkYkVwWXJmMngx?= =?utf-8?B?QkoweWUxVjlIc1dTYVFVRDd3RDl4aDU2R28yS0RqSkpOV1k5NjA3YWt4VWtX?= =?utf-8?B?WUFKUkFnREl6dyt1b3JsUDFRTUJEa21BN1lZV3JZSTlrclVaV3Z4RHROWE5V?= =?utf-8?B?cEgvcXBOWUo2WVZIWndab3h5U2FGaHpRNnU3Qk5EbUNGdXBGK3hpS2xWMEhr?= =?utf-8?B?bGx0cm02YWV0YUZZOXhGd1NZcVg5Wk82SlBvczY1RGNodHBKYldMZGxtVGlp?= =?utf-8?B?TXhISExxMlplZ1NXdXI0clRwMG9HelZUUGFKTzVKWVNpa3NuejBRaUhOMGd6?= =?utf-8?B?cUk1RGhvNzBnRjlWblI2eXpIdE5Cc1VVVWY3MCt2WE1tM1lvKytrbHFNMFV5?= =?utf-8?B?UmUzRjFkdlFSN203d21SUXl6Um93V01POFFJdEFGVGNXZzJsR01uQ2dWcURl?= =?utf-8?B?bGpRT3gzcHdkSmpDL3h0NTl5U3lma0pSZmJQS2ViTWp0U3N1cTVBa2Z6dWs0?= =?utf-8?B?ZDAyYVdlVEUwdnRVYlBodnhMZUp2WGN1WEV4SWs4YnNZWW9hY2xyZjMzRjd2?= =?utf-8?B?MjVBYVFuYmtTSjRaajdoeWJhN3pEdEhaaE9jcC8xa1RYN090OWxJMGJvaFFR?= =?utf-8?B?c3FQSU9oV2Y2NnJtZGh6NWNQN2VWVjVGdnpKa3pDZTI3bi9xWEhoYmpHQ21s?= =?utf-8?B?cWI3RXphNkdPa1BuNXBGMFJiY1BCUHN2NmJOYlZiTnNVbG9OV055QnJqWEpI?= =?utf-8?B?ZjhOMDdiN0VVMG1wdXd2YXRRN2tlMlZ3ZUdaRFFjMWd4RTJXKzRaMmFzcDVx?= =?utf-8?B?Y3NYTnJ5RlFpa1NXMHA0alpHakJDRk5ZeEo4ZjA3aFZjK2h2QkNYTlptME81?= =?utf-8?B?ZzB6aU4xSGFscjN4a3Rpem8zQTR4SVdXdkpQMmhmZURnVWlxdmM5QjZaNkU0?= =?utf-8?B?MzRMb20vek1UM1B0RlVnckVZVndmTmpZWEJnbmF1VkVhclJzUXdhYXg5VGRW?= =?utf-8?B?cDRoN0NLWWR5MWxaTWgxeTAxdlNIWEhVc1FMT1F3cFVvUXBtNzZNY2ZFRHZo?= =?utf-8?B?TjRPKzl2NmRZdjE3aFpGRGZ3YzJieGhGdkM5T3NnYmYwVEd0TnlnTExBWEFR?= =?utf-8?B?M1krd1ZIV0dNdnFib0t1YzdhL0E1SE03N1hQa3ArU3loUXBRVHViUWFib2tE?= =?utf-8?B?UVF4WVZEaURjN3BZclZhYVZueU5sd0lPZlFVQnlLamovdVBlaTBZTnVIY2do?= =?utf-8?B?UDZiTEtadS84SDlmQmRHVEJTT0N4OTE3NHNWWkR3Y1B3b2I1WXR4RlNxS2VY?= =?utf-8?B?bTI1VUJONityZm1LVmh4VkY2ekZRVGtLTkdGMFRyTmgrMnkvMkI3MlNLQjll?= =?utf-8?B?NzZ5bGRCQVQ5Tkhodm1ha3JPaTY2SWVud2RyS0JuZUpURlFmeVZCY3VuT1la?= =?utf-8?B?ZkIyWXViM3FMYVVKY0x4YTBVcytxOGhFOEtnZXJIeHluQStlYVFOUEc4d055?= =?utf-8?B?djZCNWZSTkpjNTloSEZ3d2pld3hNM1RSZ0hqdkZzVFdONmRPUHlnamlnbEU2?= =?utf-8?B?RzY3MW52VHh5NUJHcjJLV2dMQTBxWXRkN3VLYU50UjcvVTJ2TnZEeXREcFZ3?= =?utf-8?B?aEJUV3cwMFNUN2JUdzM0TzVwWWxCQmo3M0lWSEdlbkV2STNqT3NVQzQxU3dk?= =?utf-8?B?dmZkVTN5S25YanlNSmNUb0pqVkdrQUEvY2UwMWxLa0VLa0QzeUs1ZHFxUGQr?= =?utf-8?B?Ky8yV2hnbWFITDFoc01BOU44RjFKVHhPYXljQWFibEpsQ2toQmlPdjZSZGpR?= =?utf-8?B?RWFNMU92Z0RCNWVXalJpdklDMmJLVEllL1pmZ3pzTDdSYnlVKzVwQkh5b1Rl?= =?utf-8?B?emZsajIvYlF6Zmw3S29WdnROTmVIdmFNbDBGS1c2aFdxQklRTnE4MUZwaEhh?= =?utf-8?B?ZkNXbkVKV0Y0K3dBSGd1N0JSRzdjZDY4TmYvMndMTUFVYWNjVkQ1MDA1Z0JO?= =?utf-8?B?dzVtZWtoVGRnSGxza0w3bXc0OEU5czVueC85Z2ltU0V1TTMzaHBFM1VMQTZx?= =?utf-8?Q?tjIMk8+uVFQ+J56ZYc4obFOjy?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: dbdcf97e-575a-459e-318d-08db6b3ab0be X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Jun 2023 11:46:42.2189 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: chZI6/Z//fRkk4+b/7Hm0CbFeNURtfK+8CT/r9k2Hed49sL6V1eYZRbJHuf5x1fH9/9NRFCUztb5J99RUClfyg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB9424 The function returns immediately after the enclosing if(). Coverity ID: 1532314 Fixes: bd7a29c3d0b9 ("tools/libs/ctrl: fix xc_core_arch_map_p2m() to support linear p2m table") Signed-off-by: Jan Beulich --- a/tools/libs/guest/xg_core_x86.c +++ b/tools/libs/guest/xg_core_x86.c @@ -210,7 +210,6 @@ xc_core_arch_map_p2m_list_rw(xc_interfac } munmap(ptes, n_pages * PAGE_SIZE); - ptes = NULL; off = p2m_vaddr & ((mask >> shift) << shift); } From xen-devel-bounces@lists.xenproject.org Mon Jun 12 11:47:19 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 11:47:19 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547071.854271 (Exim 4.92) (envelope-from ) id 1q8g11-0000t4-77; Mon, 12 Jun 2023 11:47:19 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547071.854271; Mon, 12 Jun 2023 11:47:19 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8g11-0000sx-4N; Mon, 12 Jun 2023 11:47:19 +0000 Received: by outflank-mailman (input) for mailman id 547071; Mon, 12 Jun 2023 11:47:17 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8g0z-0008F8-Qn for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 11:47:17 +0000 Received: from EUR04-VI1-obe.outbound.protection.outlook.com (mail-vi1eur04on061f.outbound.protection.outlook.com [2a01:111:f400:fe0e::61f]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id e13492d9-0916-11ee-b232-6b7b168915f2; Mon, 12 Jun 2023 13:47:17 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by PAXPR04MB9424.eurprd04.prod.outlook.com (2603:10a6:102:2b2::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Mon, 12 Jun 2023 11:47:15 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.039; Mon, 12 Jun 2023 11:47:15 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: e13492d9-0916-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=jroH4RQ06pKYUqUL/tSj0ZPW84WaSBvwaZOwhLDIX+igvk91SuhBMRIreM9Ul5yZ5xLMfXxlOqHL4xlMR4x7QX0xq+KXKj/vjpovO+Izvvkxm7mcMvUm7vX5a6dewThZQPUYSdTxDJMvmwzzldrYVXUcGDyz1d2wvmrhaqyoSocr0nr4Q6xMoc8At4vWfnP65KJnroDAasMANJP/KbIB1RSoS6OjotDMO/oKN3gGmSXgnXQXEcIqdf7f5nKeat6aJ1lty6T/FPXq6CaQuCXHfGsi+Pmk2VR/Ax49NbX3z7HF9ufbmDEaXn9wWk+kSVcxd4XFAf0PkwoKkmAZ79Dkgg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=B+/y/m3EuaFu5IzJQsr10ANAsj4GrJLsTnjbxyCCt7g=; b=KhQDCSOp4CWzl7HCJ1xAJ7Faru+4+vUploMMs7So2jQfup+2Ws+FkPHs0UmwWOUURZ7YVDZHb9WM9HU45o3v1D+qmT0WrPjP7T5uxkSxlA0SwX+K2t/uJzTpA9tPDqTobxF0yyiMQJF3Z98MvzsjAsjqs+mi3AHtWtizCRei77s21folNqu7EeMo265BqSuneZICW+NNZbgG255LRnyRDJ+evEC83WP5nUhu79OngS3mRxgCVSAymnYyTB5XJJZhunhvJC/mEJhtK1MKmYCNUMI/TyQT4tK1I42s1IYCwP0gDoTYE8u+249voX0ssif6P3nNWcL8ifJhfPQBqiDnhw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=B+/y/m3EuaFu5IzJQsr10ANAsj4GrJLsTnjbxyCCt7g=; b=yN21UeDhi+eBaZqW5aDN7U/QlSnQL1POm/nzZbnoSsT+tXiqrOySiYyZDbsLgN8HEJpxla7p7mfARXVINRZKNljiuiZOnKj1Q3I7l2kYZognoMRSv0AVLIWUPWNN/ssXtYCxSp+EtBjxPUPvBzXbPxkDoQUs3MtmjeR0NfhJfCmKWVTfJhjFceulxrp2AZ3zFdWb6X4cqU9SmbCCLWmxtC2Q0CZVl1oJIIR+LFdmSt5dlPIxGlfoTBNxiZjZy5YataXV9i0P5zOEAeGQlTvBSbS5j7xnCd/R1OPSbK8hoc5R7tNzdXSj+eVx46ZPdcUqvEackny71gsx/giWKjWn6w== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <89c45e29-fa7e-93e9-a2d5-45991c302794@suse.com> Date: Mon, 12 Jun 2023 13:47:13 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: [PATCH 4/5] libxg: drop dead assignment to "rc" from xc_cpuid_apply_policy() Content-Language: en-US From: Jan Beulich To: "xen-devel@lists.xenproject.org" Cc: Anthony Perard , Wei Liu , Juergen Gross , Andrew Cooper , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= References: <2dc50b58-a4e4-3e32-1876-94412b14b052@suse.com> In-Reply-To: <2dc50b58-a4e4-3e32-1876-94412b14b052@suse.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR0P281CA0083.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:1e::18) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|PAXPR04MB9424:EE_ X-MS-Office365-Filtering-Correlation-Id: e37195fe-b498-47f9-bd37-08db6b3ac45f X-LD-Processed: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: DxZssvo65/JcAV/t6goMFqjIykoss3/7Kx4/GehuaRJZZ/BqcX6ivwPuXHvftBHLNTH0AuA2KcqATj0F1S6U+QQX8k32pJglA14dNA7AZsx1pgo+vkLvlFU/ht7rziJ/g9Ag06UmC+bNxvlUEah+jaOXg7SGA/bLl+D6H1XAhLquKzVpqJVpo+3rBsIqOuCxnIIO4VWBF4spHQxJGU7IoJ7l9fMYe7Q2uzD71A3uLWIHSgksAtH6xCST+gZLSWPWrv8l1lsylsPNgaEuC8etQtUGtRtgZJud74zb7YNWsoTLMPS5ORqbxgMuJ3yPoAozsZRUYGe0xh5Vvu3Te+0oSh8u3MJDP17wlSPLW9RrhxHG6FljTD53Ey+3kxriqrMgq1GLAYVKgXgRc1oXE+KcarJzxqdm3UUZ7NV5fJCn6Z9WeTx9H2EjDY5iF4Z15asH57pV3T39c0m0PbdMERc956tWcXXVAVluE1HQwOYX/DRjWSIqMFm/0SQdO4yPP89nLtVOTZzNj7aOtlKaTHK+n2r3VY7TvN9AXOeqamvPzjMyhOImRFi/ApUTLvHp9Plo1JmnlAZmTtxnJno5Sf3rqhHL+jkskrCs3sR2pAX0zi4LrXHk8tbh/0seTufIJgqk0G1KFHBZ8ZjfSlnSxgszwQ== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(366004)(376002)(346002)(136003)(396003)(39860400002)(451199021)(478600001)(8936002)(8676002)(54906003)(6506007)(5660300002)(41300700001)(316002)(6486002)(66556008)(6916009)(26005)(186003)(31686004)(4326008)(6512007)(66476007)(66946007)(2616005)(83380400001)(2906002)(38100700002)(86362001)(36756003)(31696002)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?Z09rMnpQQXFWU2hQR2Q4UUVOaU5rZkpiSXBwQzNHV2hzbnpmYzNVdVdaRDZj?= =?utf-8?B?M1duVHdwcGhFemFWcy9aek9aWnlHR01XeWs2RDkyYkcwVnUxd1NnMnZHdjFP?= =?utf-8?B?ajNiZkpXdHBhWTBvbmJ5MWdZaGVyMFZqaU4xSGFTZ3VIOEhJOHlDZTBQOHJF?= =?utf-8?B?dWNObzVrOGhzUHdRSGp4VUVrNHFrRnM4Y2RmbDJ6NVBWcTE4N2lFaGljclFR?= =?utf-8?B?Q0NSbU1VVlpCUlVValYxOGxQU2xQRHFVRnVheG45bjBuS1NoOVZ5VVdkQnBX?= =?utf-8?B?ME5zbkt2eGhIZ3ZQYWZsWFVqS09aNEM5VzVCeEEyV2VqZ0JlMURBQ2FvNW9w?= =?utf-8?B?c0NTQ0IyMmk3OVQ2Wmd0Zk9qaUdhenhtUEJ2c09ia09kTFVqUzNZZWM5YXlu?= =?utf-8?B?MWZCRTBQbFBCSmxJUU9jSFAzTzU4NGpMTzBrdG5TQ3VBTFlXUTBEZVlFbS9w?= =?utf-8?B?VWpGbGlmRWlvWStlc3BLTXEwemZEVmFQR0ZTekMrcHI2K3VQUFRXblJweEVR?= =?utf-8?B?SmpZQ00zcjIxMXc4ZEFwN2Y5SHhDRUg3WWhraEl5Qk5yNTNEdnJrSXc4RktI?= =?utf-8?B?dWpaMGR0VFlyMk1ZOEREWlpnNzk0UXY1eUcyOGZsZlRYdHpQUFJmcUhGM01M?= =?utf-8?B?UW5DUytObHpIbThEdDJoTHJYWit2Q0dHUFRDQ3U2MGt0dmVyM3hGZ3V3RXdn?= =?utf-8?B?NFI0QmZmc3BpUkVKaFlvTUl6L09wSmllSk5vQ0o5WmpDSlFSOGxNeTJORWQ5?= =?utf-8?B?Mjd4Vi96NlNWWEVZbGVtKzBudVRSTWFzVmZEQm9OY2xNK08rM2kzVTZVY2Va?= =?utf-8?B?UzlRSjJhK2dxcXlrMEJsbzFvR2lQQjNnZ1d0WjdhUGkwbmZGN3pGTkNOb3or?= =?utf-8?B?QWRyNUQ5REc1TGJWSUFidktkV1JxSzJpVGNWUDVmdFE5aEJ2bVE1bUdoOERi?= =?utf-8?B?dDVFZnBTemdnbnZldW13OVdsM2dCN01zbHFvYytIek03aGVpYjR0VVVlR2wv?= =?utf-8?B?OXd6L3BXOTJZR2RPSGFyNU9PcmVpdHphMnpJcmZXNndoZ1NPSWNXQmRHTjYx?= =?utf-8?B?a294VkN5ZU5vV29qb1BDdjRZN3RQMC9iaFdJQ1F4Z0Fuem5uZ3RIWU9iZEtw?= =?utf-8?B?TGhOSkhwWEliMEdic1AraW1vVEZPMmlMclgrZlVhdldkdEM4MVZlOStaSVZw?= =?utf-8?B?QTE3eW5VSlRSSmd3NVNUU0tYcXdIQVg1RHlaVTcrSDBXTkN1M0trMlR5T1l0?= =?utf-8?B?SDVYajFrdXVPZFhpL2RzNXlOT1lxbmU2TXc3MXh5T0dUdmsrYndwOStNS05l?= =?utf-8?B?ZjVrYWN2N2wrbXVNczFkbWtTUnVQVGdPc2s0dWc2c2MrWFdKTlIxbHpIU1RF?= =?utf-8?B?Wk1MYnB3T2lnM0lnbXRDUlZPdjQ0bjcyTXFMaGovQkdpeWdiNFh3TDc4cHJ0?= =?utf-8?B?WWNHQjM3dExHZU4zK25abW4zcEhnckp4SGtYaGxmY1JpTjlCQVMvdlRhYTBE?= =?utf-8?B?TkxnNnFtTHJJeHlQd0tGUVAvVzZwek4wSUFIZlhveDM5clFLSlZXeDhrSDRh?= =?utf-8?B?YWtPVmlRdXgweE1JTnVCcTNHUEUzTzgwQlh6WkRwVUczTkREYWx0OTUyTDZM?= =?utf-8?B?Ujc2VGRMeDJIZlVkVFZXMUZiWG5GVUNwR0ZwbHlhS0M2NmNQUUlrd29QK214?= =?utf-8?B?UUZXdXZNM3NJSTUxQzJoWkU3dW9wUDh5MUNWS0IwVWZ5c1NybkhEZkFIQitJ?= =?utf-8?B?ZXpiK0x1RXhKbEQ1M1F4NjI2M21IQ25rZjBMcGkwRHlUS0t6OGlxeUhQL1Uw?= =?utf-8?B?bW1oMkhMSEk2djRGNlNkRU5lSk1WN3lFUEpiSlJZYlc4Nlh5OWhRaWN2cjht?= =?utf-8?B?R01mSzVwdlpJVk4zbmh4QXd5Q3dId2x4cVNKUDdhMzVwc1F2SkRkUjc4RHJU?= =?utf-8?B?QUwyL3lDNEdMaTdHa0k5eC8xMjFMc2lIVHdrOXFnZlhUZklzUlBpdmF6SXp5?= =?utf-8?B?VzRQdWd5dEI3aHprYzRoQkw1ZVJLSUdlVVRxbVdIL0J5djY0UmFKZzRCeDBp?= =?utf-8?B?Q2RabDkwbXltbUdTTm5jMC93ek1CYkhEUmpCTnpOQVVCSVBOTkVBYk5qTXV4?= =?utf-8?Q?7gOCCbOKwVT6Jf1plObHl/Dke?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: e37195fe-b498-47f9-bd37-08db6b3ac45f X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Jun 2023 11:47:15.1388 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: czparCyPdKRU4+qIQv2WeyjQCfRFeWQltMCb5SODLCg6++m+JPbnHPyiy7Qd53Al44frp8hKRJ5mhDCLUucV3w== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB9424 "rc" is written immediately below the outer if(). Fold the remaining two if()s. Coverity ID: 1532320 Fixes: 685e922d6f30 ("tools/libxc: Rework xc_cpuid_apply_policy() to use {get,set}_cpu_policy()") Signed-off-by: Jan Beulich --- The code in question was subsequently moved by 54463aa79dac ("x86/hvm: Disable MPX by default"). --- a/tools/libs/guest/xg_cpuid_x86.c +++ b/tools/libs/guest/xg_cpuid_x86.c @@ -462,17 +462,12 @@ int xc_cpuid_apply_policy(xc_interface * /* Get the host policy. */ rc = xc_get_cpu_featureset(xch, XEN_SYSCTL_cpu_featureset_host, &len, host_featureset); - if ( rc ) + /* Tolerate "buffer too small", as we've got the bits we need. */ + if ( rc && errno != ENOBUFS ) { - /* Tolerate "buffer too small", as we've got the bits we need. */ - if ( errno == ENOBUFS ) - rc = 0; - else - { - PERROR("Failed to obtain host featureset"); - rc = -errno; - goto out; - } + PERROR("Failed to obtain host featureset"); + rc = -errno; + goto out; } /* Get the domain's default policy. */ From xen-devel-bounces@lists.xenproject.org Mon Jun 12 11:49:35 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 11:49:35 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547080.854280 (Exim 4.92) (envelope-from ) id 1q8g39-0001eu-ML; Mon, 12 Jun 2023 11:49:31 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547080.854280; Mon, 12 Jun 2023 11:49:31 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8g39-0001en-Jl; Mon, 12 Jun 2023 11:49:31 +0000 Received: by outflank-mailman (input) for mailman id 547080; Mon, 12 Jun 2023 11:49:30 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8g1Z-0008F8-Ps for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 11:47:53 +0000 Received: from EUR04-VI1-obe.outbound.protection.outlook.com (mail-vi1eur04on062b.outbound.protection.outlook.com [2a01:111:f400:fe0e::62b]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id f6d36afd-0916-11ee-b232-6b7b168915f2; Mon, 12 Jun 2023 13:47:53 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by PAXPR04MB9424.eurprd04.prod.outlook.com (2603:10a6:102:2b2::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Mon, 12 Jun 2023 11:47:52 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.039; Mon, 12 Jun 2023 11:47:52 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: f6d36afd-0916-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=mvLXPY/UuRVEiZdNmc2i9Bd1VhMS8sZM+1rwYaMMAXyFErAUi5kxH+Bc9firnll8L4Pc+2ZKZr7gJ4CpL2QiCdDNyPuncoX7VJ944aEnltfOw4v1PjH/jYldcIEb916qLJo1seoLzFUWRw8llPHCNVBW4l9kSgrvrmc3VgEHwaZ4fsqkCFmLH7CZm+jBMnRvxaRincOjjJT9QhMBLGQa6uom0ns3PufLPgwG40aqdHqCuy4UUaokf8O9dVi/ztn8ePn4d3yPiUWMr9Gn+aNeEF52aLGw6bCb4pDvL8eZYG75gURFqFzfhGEaJZDHK+w1srwqEi/TVWMWugA7HT+/fA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=AnyjzGqpglbOicW2phJjjVaeWkQi3azKxAQ6SvQhGCQ=; b=kTV4tS7pn9l4+Jsr73aeYLmCk1/kTmWRsmZEnyTLrAs/u1H1Jrb6BAZnYDu8MtclYFudKcMMkD/DuKhmP+l6Oxm7KlzzpK/WuXgA/GNoR/JIw+sj/BqLOcO3VK4KZSAC5SW6DpdywAldU5gL3OzkmRd0+IQR1GCLNq3tCFLNEgJbpeMERwTpBQuqb3Cy8WOV31CcgG+MQdu7XvTOjBfQ+3aXoRVk9ypFYtvuHg2V9veMPM5XVtpLU/qZd3UQhwRzOVGLtxV1chnUeP/n58JtM/wI5ki2cOdp5VpkNDaVNFT5Qh2n6DcdIQ7FxP1g9jfQF1Y9xpwZdHWO610MaCvoRA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=AnyjzGqpglbOicW2phJjjVaeWkQi3azKxAQ6SvQhGCQ=; b=WH0jUf9kVTjOvv5FGCnlBxFMSfGJh+32U90cokiWZwEx0vFb1n3Ua7TtZ5carbTOR9IlonlDeRoMTG0L0LZSGOz5MZhLiV/8RoCc59J44xdRrkMNWFnylMxH0+QvcyehVa6e+mOEVWRD+6+GwHC6sk8bkKVYCPhrus7xCk1UKQRIy7Vfyul9QClTkXgQ8tthMkRqL/gt1aNc6LbkHKXLji93H8+Y1RnwAKAmonjY7HIhV9jbmH8NBTd/wjkTyiS3oURiLyJ7a5CoOh5lkIGIgeB3NygHl3wbjOk/C9oS/Fpobv3vXNcHhdiEO/3ok0ToBR2DO0JBegVKB6GbbvxTXw== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <4fcbe916-890a-1dfc-86a8-eef2bafb2801@suse.com> Date: Mon, 12 Jun 2023 13:47:50 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: [PATCH 5/5] libxl: drop dead assignment to transaction variable from libxl__domain_make() Content-Language: en-US From: Jan Beulich To: "xen-devel@lists.xenproject.org" Cc: Anthony Perard , Wei Liu , Juergen Gross References: <2dc50b58-a4e4-3e32-1876-94412b14b052@suse.com> In-Reply-To: <2dc50b58-a4e4-3e32-1876-94412b14b052@suse.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR0P281CA0224.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:ac::10) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|PAXPR04MB9424:EE_ X-MS-Office365-Filtering-Correlation-Id: 94e28055-3421-461a-ab8c-08db6b3ada76 X-LD-Processed: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: ebyXXuCzQdQa1HMgNpnvehe90sh/TgzZAZiHEjSmyG78toWYH8CvL554PN1tF8SfB6jeFvmXbIcvi9dQgaFUBTgM9NbqIwWqP0v6bOZHFmlC55jnvdvYd/VYy3xRkSHh+A02iiswwZ5GjQqqbUQGC6b6MwcPPvcPmRAQBpfIcaAS0ezOHiTbh8jbePHVlKg722r05uHUMX9fzWWfbXFVHvTigPUUbSfvo3a7dvXHbeRSJONsRxB//IkVHHBxNdvJQmcdsO5Qkd+CVHDD8lXieJoOwMolrT0rjrxLODvvlnDvx1ufzD5k51Dqp2t74EMdl0c1ATTVHqy86gw8T9cAn4YHnNujeI3PhDejHhso5Y36cNw2jTodxdDYIeKK3V5km1SZavl+0+34vXD7qDDvpu4psPj9olpPqu2vV63G5r9tASMYMl7+MpN47WB8ZUFaXAORfnuTBDsOhvZaV98ak4K5CX6bNq/N7leU3yjB1EOosftTMFDzna0DBsxwp/+FIvfKSYYc3vtHV3N4NRLp4Wek+l+0lGykOFABaoq7cPhxo+oPMJ1pIDPHz8g1lX7zl0F17EViPNWcBhh68CvxCKu+zF1cnM07P2nwralJRXOeVLsZQe//cTHJzHjw21imWwND7VW8OrK/EtuVZfbD1IjsVkwtsLlORonBuEijSQw3G/Iuq975bHGmGTPAUMDO X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(366004)(376002)(346002)(136003)(396003)(39860400002)(451199021)(478600001)(8936002)(107886003)(8676002)(54906003)(6506007)(5660300002)(41300700001)(316002)(6486002)(66556008)(6916009)(26005)(186003)(31686004)(4326008)(6512007)(66476007)(66946007)(2616005)(4744005)(2906002)(38100700002)(86362001)(36756003)(31696002)(101420200003)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?TTNaR1JTY0QycGJ2cy9Yb2FmM3hnQ0FrOWhVaTduRHlmcWkremt5T1M5V0hv?= =?utf-8?B?aDhoNEFqZG84V2h1cWYwVzVSVG1KeGJvUGpXK0dNUzhZOFhXdElYcW1QQ3h6?= =?utf-8?B?SDlKb2tQVlhVUGU5Z0gxNkdabXd1TzRRYnErTzRTUjdvcEI4ZjRxbUhUd3VY?= =?utf-8?B?V0JPdTZnaVhZdVZ6T1I3QnBnUm9TYmdBQk9QME1tT00yM21wRmR4Vmc1ZWpa?= =?utf-8?B?YkxmUUdGV2txbG9qOGNyWFA1NEw3Qkl0S05rZ2xQZWp2V0pMWm8vOWhQNzF1?= =?utf-8?B?Tmd6WDROSWJ4OE1hODlHbkYvM21LaFp2dkFCVThrdzluSmRvdXozNWk0ZEVV?= =?utf-8?B?MkVlbGZ1SHJYcWZPRXJMMHhaVThTRTRlVzN0d0ZtcjFBNTdGcjNjdGNBVFdr?= =?utf-8?B?Zy9PSXZWb3c3aHhuK0xyblZWZjdYaEpxQk05NDROWTh1cXNhdFA0VG15OFpY?= =?utf-8?B?amNmNDB5TEkySDFMV1F0dWh4UnpMbHFSU0ZtQzNERFJxdkpldHVVRkdBT1lz?= =?utf-8?B?YnFLTGxmWThuN0JhOE44VWFjK3MwSHhoOVlneE5pUnh1dWEyUGtBUzVSSXk1?= =?utf-8?B?eklicXpuN2E0NHNuWUNUKzNDdUNmaWpucC9aY2szelRHUWRHeTY1dUJCL1Jz?= =?utf-8?B?cG4zYkQwS1hpOU9nUnd0SEd3RHYwSXhUSlo4YVVSQ0xCK2gvc2FKVFp0YjhT?= =?utf-8?B?cXNySnZ0a0FoS0FJblluQWNpUmRxS2FUZFU2Vk5ZWGVHSzZldGQvd3BhTFVQ?= =?utf-8?B?VnRrT2tiQjNnTnVFSmdMdWtCSDlHOWJtNEFxOEJtY3NwNURrQUdXLzh3V1g3?= =?utf-8?B?S1dSUW1GaG0xMndSM056VzlQa3ZxdlU5ZXpoYWNQOHV1THZESEF6U2hYMmwr?= =?utf-8?B?RitTZ1dWR2ZZY2p4ZTV5a0kyOWNGY1hkcU1EdDdRSktVYnJvdnBtNUczU3hF?= =?utf-8?B?U0NiZXpEM2xaT3VTNmpKN1hUdDVWT2JxUkdYMnBDT0FGRzdRdWtQcU42MmpH?= =?utf-8?B?S2pGL0pzNnJuRFl6L1B0Zk1PM1cwcXZBRk42dHhOWHR2ZTJjbHFsY2tuOFQ0?= =?utf-8?B?SVlIT3ZSWmx2S0VHdE5oUkY1aW14dHRQbkdoYURRRGlSdFFSaFVqNEdtNWY0?= =?utf-8?B?aHIxbS9QQ2tMZWtPSW41cXBOS2cvUWpacE5VaGFzMWFUZTRNUm5FeGZtSFhD?= =?utf-8?B?bFNtT0ZQYnZ3Ymp6OTdCN3lMbmNKcnFJcVk3RTZHOGt1bkljYXNySW9aNkYz?= =?utf-8?B?VkRhVlovYVhSclQyRDhJUnZMMy9QcWZGQ1RJUE9idkw5Q1VYWUc1N0V4S1ZV?= =?utf-8?B?L3B3ZEJUdk42QlE2amRBNUxEMGcvR1VCL2FrTEFQV1YwSE54RFdXQkFmNjJr?= =?utf-8?B?SVFQcDMzbFBBWkwrUzZ6dmduc01aTElLSFdiZlZvNUJ4UmgzeE5wM3IwSFlW?= =?utf-8?B?TElYaXF2Z1Jvb0FzM0xvYXFaTlcvWGw5R3IvT0FKZEpKenY5WUZEb2F2eVl0?= =?utf-8?B?dHQ1T3ErY1dnT00yRUZQTnZ3M01DeDNncCs4UXN5bFZGcXdUTmFoNnBuU2NI?= =?utf-8?B?c0dxcnBZU213M3M5L3hkSzNocG0rR1h5RVYwb2ZNV3hiTFlSWTBVY3dXN3JY?= =?utf-8?B?TU1pVkJtcFdrUmRISUlJaGhuVFdQSEFiSUF1b0taR2RYSDlVc3NYUHRURjYx?= =?utf-8?B?dkdLVll4djMvcEl2OFpKMmZ1NjNCUGIwSDU3SEhrWUwvRlc0bEZoU0hXRkgr?= =?utf-8?B?MUxJWGFESU4xSEZ3b2pud2VzUWlwWkkwRFRhTllEZE51cjFjVU8ybmU3a0NS?= =?utf-8?B?VnVueGdKWThFdUk1S3lQMDNrRmppQUdNcTAzMUhUOEZ2VWZ4eEUrTGc5R0Va?= =?utf-8?B?ejhtK2M1MEloYWpUWU5oczVWMFpZVGhKTGVwTHJYT1dnbVJvRjNmbCtNamlS?= =?utf-8?B?WU1meER3TkU1UHB0REFrd1d6SlpncUJ6akV0RU1RY0NudytJWUVzc1dvSE55?= =?utf-8?B?dVVpUHd1R0RmMnhXWkVVeTMvaGo0UGNlTWJwcXlIRXRBZjBhdTdsa3o3M0px?= =?utf-8?B?UnUvSUhDQXJNOWtQMG96cWhzdnlWRHo3Z0hZZEw2Q29ZYmRRRFB5QlRCdHRC?= =?utf-8?Q?Oer77vO44GL9Tm1Pk8jDT8pyC?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 94e28055-3421-461a-ab8c-08db6b3ada76 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Jun 2023 11:47:52.1725 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: /LFB5LatvAzoi92dNzBAzRQlOmd+sBQwVlqHq8s2NXFREY+h+P24OGSRwchp1NAQP+OrxcVfnlrMPspsPxsiRg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB9424 "t" is written first thing at the "retry_transaction" label. Coverity ID: 1532321 Fixes: 1057300109ea ("libxl: fix error handling (xenstore transaction leak) in libxl__domain_make") Signed-off-by: Jan Beulich --- a/tools/libs/light/libxl_create.c +++ b/tools/libs/light/libxl_create.c @@ -909,10 +909,8 @@ retry_transaction: strlen(dom_type)); if (!xs_transaction_end(ctx->xsh, t, 0)) { - if (errno == EAGAIN) { - t = 0; + if (errno == EAGAIN) goto retry_transaction; - } LOGED(ERROR, *domid, "domain creation ""xenstore transaction commit failed"); rc = ERROR_FAIL; goto out; From xen-devel-bounces@lists.xenproject.org Mon Jun 12 11:52:57 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 11:52:57 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547086.854290 (Exim 4.92) (envelope-from ) id 1q8g6I-00035J-4U; Mon, 12 Jun 2023 11:52:46 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547086.854290; Mon, 12 Jun 2023 11:52:46 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8g6I-00035C-1j; Mon, 12 Jun 2023 11:52:46 +0000 Received: by outflank-mailman (input) for mailman id 547086; Mon, 12 Jun 2023 11:52:44 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8g6G-000356-8k for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 11:52:44 +0000 Received: from mo4-p01-ob.smtp.rzone.de (mo4-p01-ob.smtp.rzone.de [81.169.146.165]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id a38b3d80-0917-11ee-b232-6b7b168915f2; Mon, 12 Jun 2023 13:52:43 +0200 (CEST) Received: from sender by smtp.strato.de (RZmta 49.5.3 AUTH) with ESMTPSA id L38909z5CBqXcBB (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256 bits)) (Client did not present a certificate); Mon, 12 Jun 2023 13:52:33 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: a38b3d80-0917-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; t=1686570753; cv=none; d=strato.com; s=strato-dkim-0002; b=MIEW7J+zwjKt/bEOzYVsv5GLJX/5hnJo9TRL+7PjxJsNmT68IGTXjgkYYJwEICvP40 Uqk/ss28rlE6qWuiHObGzGV6++6BTxkJihjlg6/yJNmlWwLQHnKPtUlgDJogYTyR8V2I mk3uNcr2FRQ32WmEULhKkTweAuZ/qZ65sOkZgtrSSza89LKdriYKMQ96Gc4M1foAnJ/B 3/cqCio2xN7ojdHMSr1XmesySad1gCz9OkOO9K7dvKgNc7p1uae7O7uIXL7/RsU7ekUG icBpRBPS5OT6K8h+mHpygQkENFrYhoJtL9df0OwQO0r71vAzPlzNPbh4Gws8XE5tyzRk Ccnw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; t=1686570753; s=strato-dkim-0002; d=strato.com; h=References:In-Reply-To:Message-ID:Subject:Cc:To:From:Date:Cc:Date: From:Subject:Sender; bh=O76z9zijWopISnAwDvyX3ASVM1MoLBXtnk2mYRUu30I=; b=Es2mBf/yhiYB2U0kzzuMRFiLGNTGvXU7M9mWSnPjRx5rjRA/JUvlutFG0erEbBLKdY TaS/AwtYwzAje1ZTXs0lvH5naMJfyxXzlMDd91fW4tO53Af1mOMU2UvNObluBS3kEYxx 26TF+qpXJQL6jJ9Sj0eDiYDtX7DI5szn3fjaP3+dFcSNMynOo2mRHvN9447WWM4Pb4Tn ErZF2Aia5jk42NsDdOZ172nvp9JD08dp0Q82ORjfO8305DS1p+7VZjcbaUlUhUY3iQrL fg8RRd8xiAiI1TKXpfwCo/h6NT1B/8G9VPOOffwxoS5MezZbyIrZEtB2Hat40b78T+T2 eYdg== ARC-Authentication-Results: i=1; strato.com; arc=none; dkim=none X-RZG-CLASS-ID: mo01 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; t=1686570753; s=strato-dkim-0002; d=aepfle.de; h=References:In-Reply-To:Message-ID:Subject:Cc:To:From:Date:Cc:Date: From:Subject:Sender; bh=O76z9zijWopISnAwDvyX3ASVM1MoLBXtnk2mYRUu30I=; b=m5AnqutTe7n94ccs5wKM8NiCNzMQe+O2R5XVctjJcPl0pb1ihOsSq+wS2C3E2OvJji DHp27U+unnDFqUH8WkwLmfyZvM0iyRM084jL50+Gx5HjwHrfuDtzOJ76V6rBmzPvSmFn sPxb4hRm3O4c95+++phyUfBjk1e8F62e9Kje09frfwfYv42X1HHxAmbd4jiut9Q8Sger 4g0P7Gn2AGyR+3LQQe2C+xgQarw4D8mtH5ZbdPab3C0HOAcPHCLxFNkf1It9rnJnIMIi fl+eMJIZJzR9Yb6mTWMWtZW0d7CL1Kt3tO31NxfZ9xRgSo+rUtXSjpYj8uMuZoWooIX8 A++g== DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; t=1686570753; s=strato-dkim-0003; d=aepfle.de; h=References:In-Reply-To:Message-ID:Subject:Cc:To:From:Date:Cc:Date: From:Subject:Sender; bh=O76z9zijWopISnAwDvyX3ASVM1MoLBXtnk2mYRUu30I=; b=GyOcHwmqR7WBWgb/8y0zClsteINDU0iTSFGXr33eGpLw1ZS4yIg9hT85G1VHyt/YZ5 G1JGc5G76UhzShzKjmAA== X-RZG-AUTH: ":P2EQZWCpfu+qG7CngxMFH1J+3q8wa/QLpd5ylWvMDX3y/OuD5rXVisR5AB2Ibh3sRFQAfajHZ8Hr2i7N1ImBUHmXWy0PQg==" Date: Mon, 12 Jun 2023 13:52:26 +0200 From: Olaf Hering To: Jan Beulich Cc: xen-devel@lists.xenproject.org, Wei Liu , Anthony PERARD Subject: Re: [PATCH v1] tools: fix make rpmball Message-ID: <20230612135226.0190f2e3.olaf@aepfle.de> In-Reply-To: <8eb549c7-be3a-a41b-bee0-4cc6d39e7aa7@suse.com> References: <20230530111807.6521-1-olaf@aepfle.de> <6734a258-3396-4641-b9bf-edf6193a8095@perard> <20230612133545.1318ce98.olaf@aepfle.de> <8eb549c7-be3a-a41b-bee0-4cc6d39e7aa7@suse.com> X-Mailer: Claws Mail 20230601T090920.68bc28c0 hat ein Softwareproblem, kann man nichts machen. MIME-Version: 1.0 Content-Type: multipart/signed; boundary="Sig_/N_1SvDKnGZbwDLQ5F7YrfjY"; protocol="application/pgp-signature"; micalg=pgp-sha256 Content-Transfer-Encoding: 7bit --Sig_/N_1SvDKnGZbwDLQ5F7YrfjY Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: quoted-printable Mon, 12 Jun 2023 13:44:34 +0200 Jan Beulich : > On 12.06.2023 13:35, Olaf Hering wrote: > > I will send v2 without these two lines. =20 > I'd be fine dropping them while committing. Another cosmetic change in such v2 would be the usage of | instead of @ in the last sed call, for consistency with the other three earlier sed calls. I think it was a result of copy&paste from elsewhere. Olaf --Sig_/N_1SvDKnGZbwDLQ5F7YrfjY Content-Type: application/pgp-signature Content-Description: Digitale Signatur von OpenPGP -----BEGIN PGP SIGNATURE----- iQIzBAEBCAAdFiEE97o7Um30LT3B+5b/86SN7mm1DoAFAmSHBvoACgkQ86SN7mm1 DoDAthAAj1DB5SHOGjIO932XO7RL6RvApFW3QKQg6OP9c0WheFNtN/QP56lSviWw xPh2YcFk4u4uAjZIS5g6xskK61jVU283i6aBNYkKNQI8y3f1M7Oo/ptzlyd2JvRo 7SEnFSdD1Op3Aa9pQ2Uwh9cdC5F5Ep8I3TmYsOKUt8H33tJRTdEvVEgqlpkg/Fca ohNeDna+b4eXtqhRNwNBWfojLQW0LnpQh85kEojagTCEDrP1XYqb0DqFW7i5Jnq/ wfXJPTRHo+hY3mFqQ6cn6daPmtnXmOPrT053WDNQfVycmrP50wR5hhZ4+h48clgB PGwYztgYuXoxkYw1e4MPAYLFB75+8P6LsksqLSaGJBkmvIpkJZW/SefzNLiO/+IJ s2rghQvz2+yqI4qkq2AgTFNCnG7LtzM/KjIf7i6w6hNzwfSfHU6RD2B5ziPur9Hi mxMagB5gXbSgXDmGN8UlFK+g/N9ltgG2FX2xNPni1SnEsC79ZG4gdsCXB307SnuK HLseWKWP+eNCu1PA7B346d2Lbs8s5M84vc5i3sV7C7pxMkILgu3h814SR2ugiXqR IM9eeFk2zLxP7MZcAL4yC/LlqBnLSFsj8nUerxv+reMLOvM/yh7Afdr8hnRtQu1q NayuNiWKfrqwkf5kbV7sKRYkHdTVZkdt5FDJbGmtZR6LI8pmRFE= =dOX2 -----END PGP SIGNATURE----- --Sig_/N_1SvDKnGZbwDLQ5F7YrfjY-- From xen-devel-bounces@lists.xenproject.org Mon Jun 12 11:57:58 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 11:57:58 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547092.854301 (Exim 4.92) (envelope-from ) id 1q8gBF-0003i2-Mv; Mon, 12 Jun 2023 11:57:53 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547092.854301; Mon, 12 Jun 2023 11:57:53 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8gBF-0003hv-Jz; Mon, 12 Jun 2023 11:57:53 +0000 Received: by outflank-mailman (input) for mailman id 547092; Mon, 12 Jun 2023 11:57:52 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8gBE-0003hn-7S for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 11:57:52 +0000 Received: from EUR04-HE1-obe.outbound.protection.outlook.com (mail-he1eur04on2073.outbound.protection.outlook.com [40.107.7.73]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 5b240754-0918-11ee-b232-6b7b168915f2; Mon, 12 Jun 2023 13:57:50 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by DB8PR04MB6922.eurprd04.prod.outlook.com (2603:10a6:10:11f::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.32; Mon, 12 Jun 2023 11:57:21 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.039; Mon, 12 Jun 2023 11:57:21 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 5b240754-0918-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Cvj/Sbg2uiqfHE03+5W8//3LTb77i7VOtQRa49lMTLzbZb1Jb/m0ake75YmiclvTJmLzH89enw+sCg3ni0CuABkqpMyDHbCDZ98pkiwKkVL3MRsa9Rmnv+HRyv47p0fuQWvD83JXtbF1ucFeESFMA+k969fjB4GrhJ4V2AVIfH4wz2DgaZN4dSxuxNSdOQo6az/hloGKEdtCT7cVn/w2d6TRXNKvTYNyW2qEClbRbVrhArHDuIb9E7GMNsJeS/rcuz59vfnY2COyu5YvxZuMDWVlGWFY7PTQ97UlFEnED0wxX+vatIYyoxLPAr4+uD8dBGMwlBbSWKinJU9bKJvwQg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=SoAtAJgLAt5NBE72QOjF+TOsQViCS/hrUsnTgPw7ikc=; b=aWnO5lHiymUZ6LoSMFHS+niI14TqWaSObyfsMtZMXgj8KyLzFZEElxJXLnkTHo7jLx2LStWuU8hLg6/zChVA704HmVzn/akXHAs5ZzSm0AWJku0mz0F7wDZ7IACVOGP4n1aQ2x1EP4XgMXUzlPz31Ew6DWFYde11Hb71uPjT68yeKytj6dvVP1RdErPlxAkkMzYrwlXnYEvL0jy1H3O2qH4hQ2d6r09IaoHJ+kPAfhL+wm2TEiHohEuLBH1o9bISxyHXU5c8X+yVhhOSfp/vdKzqMc3uwS88JNiQy7LUTcY9Ki0R7XAoHs9Zm77FMcImTTSRws5i2ycwkitbNQ93hw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=SoAtAJgLAt5NBE72QOjF+TOsQViCS/hrUsnTgPw7ikc=; b=Vc/kR6Amw4MeNJgQIxgbTeDc9jaP9ryAHEB4RxBxyqsxx1P0KYfjpKlUGwMK+dqSZo+eFMW54kauRQWIOYZX4bR2Wfq9AEgIQNrpEjFaCGJ5FO6OeQhBp8J5CyoNHklRIL4Z/aYzYmIO6FNULLpiaKElaB7zNJISkqnTOCM9rv+ibVde4Tryx1SAl7wHlmrCKnnav/iWi/8ggU3pq2Sijfryg6qt0nHZ+4sZpY+ye3p/MrT8u+/FssG/gTRMgrrhyUx3Z+5sUbLOZ8bZEmyI7gOWFU9A8Zmr4dvf14efXSNxFFlTForE1/iNm0fxMOPrzBHLc50E0BH2IMBW+vdt5w== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <3d7a304b-d41d-0ad6-7057-05978c52bc52@suse.com> Date: Mon, 12 Jun 2023 13:57:19 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v1] tools: fix make rpmball Content-Language: en-US To: Olaf Hering Cc: xen-devel@lists.xenproject.org, Wei Liu , Anthony PERARD References: <20230530111807.6521-1-olaf@aepfle.de> <6734a258-3396-4641-b9bf-edf6193a8095@perard> <20230612133545.1318ce98.olaf@aepfle.de> <8eb549c7-be3a-a41b-bee0-4cc6d39e7aa7@suse.com> <20230612135226.0190f2e3.olaf@aepfle.de> From: Jan Beulich In-Reply-To: <20230612135226.0190f2e3.olaf@aepfle.de> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR0P281CA0048.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:48::10) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|DB8PR04MB6922:EE_ X-MS-Office365-Filtering-Correlation-Id: 36008500-6ffe-4c9a-8b95-08db6b3c2d90 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: KdCcZH0zuWOFV9NF0xY0Eg1lAbloc9qOWWV5aN8geb+4ErnRgH7Qak2LUC6LwwjchiNbeHMd5+HEH463iu04PI9TjdfO9uVdwPAoHkeYmpJMfsKGuUs9FhsNsZ8RyVzaEWnqJivV5rkqx+TeFcBIO27RgaQ3uRW0WM9bKlvjQI9/RgBMbDICEzEqtLYX01VxHEOy/Y4gQJ1jcuKGEIlHL/KUXn89nCKQzWxxI9YAuhT26RqO3nRKCbWSbdQJwfVHBLiliWvBsbEdX/bdeW50HlWPaYFuXN+wGlkluebyriw+bjF1AtQ39EGqbhBfWCOkIzqEGXOydxhJww6vtTnfk5NBkp6dM3ehG0LhBm81X1rbtTWwK6vYDCf7WIW3bYGIV1YFUNHW+fqrEiQfZSEJmlx2pyxLndYUzaip39i7doSfkzkSORTa5UXA5hIZW0Rm19GnhjgoNzRyMHhs/skBX2WkdAunSOMyQZjA0pOQTWFPYop3wRX20oL/cyLLxoFZNukL5/qtnDyjXQG1ZYt8+m0uYVH5PTFFRbmjF1RBMfvTwsHa8iVj71EDfQbwme9YZews9mvEne+qBpkKE98MVWubfcdrxM/SrOwdUUmwiklRVAXgvU44U3pnMMJBNYoF/5Da2PyZ9zQFydmPWgPCkQ== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(39860400002)(396003)(366004)(346002)(376002)(136003)(451199021)(2906002)(31686004)(316002)(41300700001)(4744005)(8936002)(66476007)(66556008)(66946007)(6916009)(4326008)(478600001)(54906003)(5660300002)(36756003)(6506007)(8676002)(6486002)(186003)(53546011)(86362001)(31696002)(2616005)(6512007)(26005)(38100700002)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?VFZUR1ZCWFdtSFMreXlpVlVDaW9aenkxc2xQc0ZERXNIcy9mcHZmRVdzQ2pq?= =?utf-8?B?MFZRQk0vWXZaVGt4eTg0NGczaXhUczNwYmtUVHh0RjQrSE9tVEFuMHlpNlc5?= =?utf-8?B?Sk9MNVJjdzgyZVZ1VlZaYUxxbHM4ZGU2VytmQUp4aWNJZEIweWV5cGVuNU8r?= =?utf-8?B?a0NzdWQzb0o4T3g0U0Q3L2VGdVQ0UjZBcURza0Q2TGRtdmZJTmlYNXo5bkwy?= =?utf-8?B?K3MzK3dCU1IwSmZaK1ZWTjgzODBzVWRNY0djMU1md21tU1d6SDRDNnpISWU3?= =?utf-8?B?V0Zjazh2RmV3K0NVbjc1NElKTEZWQVdLNVhuV2RaTUJWRHU5ZG5sdlVrUHha?= =?utf-8?B?NmVBOTNhZ1l4T2E4MDFwbHk3UXNyL3FPMlorS0Zlbkc0ZUJtbFlwSnNUTTVE?= =?utf-8?B?QkdUZisxT292TFduMnJWUzk1MWRnNTJQMWZDOUdwSjFyV1RLREM3STZXYk1Z?= =?utf-8?B?ckd3U3hTN0p3QzlIT1Q1ZFhSUXFTNnBPL1VEaGRHK0laeFZQMVBPQ3c2U1Vn?= =?utf-8?B?UUtseE9iVFlLYlhOeEtFWk54Z0I3WWNPdDI4dURGNi9XTmxuYS9SdzNwaEFQ?= =?utf-8?B?UzFmUGw5N1ptUFMrRXBvVllTVDdlQ29iR1piVjFIeDhRMkgzTTU4SjZNSkJN?= =?utf-8?B?clhDTTcreTFWekptaldTbHd6RVlmTUtZU0JjVVBxakkvQVg0V3NIWS83L0Yz?= =?utf-8?B?R0tBMzIrVzhkUW5ESFRhT0tycXNjVkNiaSsrVi9SaWlLVFZlMGZxcTFGTzFn?= =?utf-8?B?SE1zYlVKY2Y4OWVtNWY3RWtWbDRreHNSd2dLeE1iWnY5eXYxS0U5eFJhRVJk?= =?utf-8?B?L3R4eWpJYXRWQk5JZXhZWkx1WjV1Mk11NzBzdUFjNEZzVG50L25RMDFxOFM2?= =?utf-8?B?ZTlrMVNJS3dkRnRHS3o1dWg2UFFCbDlzSXpZWGFSbW9UZGg1VGVJVm5BQSta?= =?utf-8?B?MkprbDJUMUZDR0IxbFA2WnI0MzhjZTVaOVNqbmZvUUdmL0FKVVBvOEx0L09T?= =?utf-8?B?RHdpdEtXM1JJRW5mbytNUDZsZXgxMGsvdHBRMFh0UWpIcWJ1RkZhREE4MW1M?= =?utf-8?B?UExBR1ltY29pem15Z0NYS25JdDhTS2RkNjErYTYrZHhkMHF5R0M5eW1oVW50?= =?utf-8?B?VU5weE1JUE0vbDRkdzFBQVhqM1RQOHh4VWg3d1ZTa0VnN3RISHI1YStYaDlW?= =?utf-8?B?NWVGdUE3d2VwOHlNeUxldlVkZnA3cU9BVkNFcGRpRmE0ZG9IWnN4ajF1QXFK?= =?utf-8?B?cHJaUDFnSnEvZHZzeUVIMHJrUko3N3BuTXlYK2FLbDNVbXdWeUN0QjNTcHFz?= =?utf-8?B?RVRWMjlRSnA0YUplaFJKZGpGVFhEcWZYcWFzUWFKcmNkM3dJc1RRNkNseFlR?= =?utf-8?B?S3FIdW5oZDBRZEE2ZU1zZitRYmdHWVdjcjRqRXcvRDBnOG1kVDZQTnlIRjRt?= =?utf-8?B?VDlGa0JQK1Z4U0FjL0E0S1ZQbEJXQVNHWkJaaTF1V3J6aFIzQU50bDhWRGtO?= =?utf-8?B?QnJqSDBLeEdmV3lVRy9XNkJDOFJGQmJhandXRFdmbHZLVHZhRXVFYzFXcEQ1?= =?utf-8?B?RFZBd093cU9mNHp0bXc2eC9KV2JiVEFqdWE1MFZYVnRGZEVxMHdzZ2FzQlVT?= =?utf-8?B?QUN0WGg3Q1MxNXBqeml2RXEvYWpHQjloZ2pYeFcyVnN3UnBscS9kRU0ra1M0?= =?utf-8?B?SGVtclRGZmlYcnVySHJCdWNzbk03NFBSYnJQckFwUWF1UWQ1ZHh4bEVCRXlV?= =?utf-8?B?MUpaK0NVYWZJNkFkdHMvbk5SOG5iSkZrZzRMS2I0MTlOalB0UDRKdlJNRS9S?= =?utf-8?B?cDRFWHZ6N3g0ZjRUZmZibVZmMVVHKzgyalR1SWg5K2d0RU4yV0NmM3c0azR2?= =?utf-8?B?Z0xLQnJISnQzTHFlL08xM2h4bTg4dlJoWktkazk3YVo5YjNEdTYrbGxlcWY3?= =?utf-8?B?b0xvcTdIWmJrUzFMU0hZYy9ERWdkR0oxekZVbVh2ZWpSVXIxcVZqVnRzamFF?= =?utf-8?B?V1R6N2ljVENvZ2NVZ3VEQ2lxWWRKdFZiRkMyMEp4c3dqK0YvZ3FMMDNPNDhH?= =?utf-8?B?eHIyRWdLSzZzcCtGNVlLdVJNc1AyUTJDSjBvTDR4b0pINFVCcm1MYkJjR2s5?= =?utf-8?Q?98N93l+6kfeZJjrZqViSwGzn8?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 36008500-6ffe-4c9a-8b95-08db6b3c2d90 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Jun 2023 11:57:21.1534 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: mfryG9E+/wgkgjE4SkhhxBuOH8GOXHoYkkQQJd1JDYU8Kps/87TgcPgz6Y3F4s+ZQnmm0xz0Ev2KAfRy5+5t4w== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB8PR04MB6922 On 12.06.2023 13:52, Olaf Hering wrote: > Mon, 12 Jun 2023 13:44:34 +0200 Jan Beulich : > >> On 12.06.2023 13:35, Olaf Hering wrote: >>> I will send v2 without these two lines. >> I'd be fine dropping them while committing. > > Another cosmetic change in such v2 would be the usage of | instead of @ > in the last sed call, for consistency with the other three earlier sed > calls. I think it was a result of copy&paste from elsewhere. I see. If you want that, then please indeed send a v2. Jan From xen-devel-bounces@lists.xenproject.org Mon Jun 12 12:13:58 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 12:13:58 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547100.854311 (Exim 4.92) (envelope-from ) id 1q8gQj-0006HR-27; Mon, 12 Jun 2023 12:13:53 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547100.854311; Mon, 12 Jun 2023 12:13:53 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8gQi-0006HK-Uu; Mon, 12 Jun 2023 12:13:52 +0000 Received: by outflank-mailman (input) for mailman id 547100; Mon, 12 Jun 2023 12:13:52 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8gQi-0006HA-1L for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 12:13:52 +0000 Received: from EUR05-DB8-obe.outbound.protection.outlook.com (mail-db8eur05on20626.outbound.protection.outlook.com [2a01:111:f400:7e1a::626]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 96a7f788-091a-11ee-b232-6b7b168915f2; Mon, 12 Jun 2023 14:13:50 +0200 (CEST) Received: from DB6PR0402CA0021.eurprd04.prod.outlook.com (2603:10a6:4:91::31) by AS8PR08MB9865.eurprd08.prod.outlook.com (2603:10a6:20b:5a9::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.38; Mon, 12 Jun 2023 12:13:43 +0000 Received: from DBAEUR03FT048.eop-EUR03.prod.protection.outlook.com (2603:10a6:4:91:cafe::39) by DB6PR0402CA0021.outlook.office365.com (2603:10a6:4:91::31) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.32 via Frontend Transport; Mon, 12 Jun 2023 12:13:43 +0000 Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by DBAEUR03FT048.mail.protection.outlook.com (100.127.142.200) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.21 via Frontend Transport; Mon, 12 Jun 2023 12:13:43 +0000 Received: ("Tessian outbound 5154e9d36775:v136"); Mon, 12 Jun 2023 12:13:43 +0000 Received: from 5710e0f37fb6.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 21470E53-6D58-477D-ACF9-4A190C747EC5.1; Mon, 12 Jun 2023 12:13:36 +0000 Received: from EUR05-VI1-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 5710e0f37fb6.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Mon, 12 Jun 2023 12:13:36 +0000 Received: from AM6PR08MB3784.eurprd08.prod.outlook.com (2603:10a6:20b:85::25) by PAXPR08MB7418.eurprd08.prod.outlook.com (2603:10a6:102:2bb::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.32; Mon, 12 Jun 2023 12:13:33 +0000 Received: from AM6PR08MB3784.eurprd08.prod.outlook.com ([fe80::5e17:39a6:eec7:c482]) by AM6PR08MB3784.eurprd08.prod.outlook.com ([fe80::5e17:39a6:eec7:c482%4]) with mapi id 15.20.6455.034; Mon, 12 Jun 2023 12:13:32 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 96a7f788-091a-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Rpsk8Y9Q0eievOy/GsfLaiZhzqL8MTX9O2C9JrlAnfI=; b=hiJMKQHfkwUzW5P4eyI+7UWwBR/W81Xn7a95/0pKI9Mp8ijQBDLjYbU6+mk+Aox4S+kmC0ZNtnR0E61fAnpf/clg7oCaFybow/6+XHjuJWNHv4lMjxA0rAKKOgQ7bW2SciCB64bYMMKlWwo1x0tVB63rdu2CRA+kPnF/GBMAtls= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C X-CheckRecipientChecked: true X-CR-MTA-CID: 18b561f2d98ae3bb X-CR-MTA-TID: 64aa7808 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=nYy/xwWOq2e8SZl11mCsZus8tLGZKluiYfLF1V4MbJWVvcaGXMMNh2SWhmC2aBu2hEBdIsv8XbHUUxUbSO8FOn7IvwstE+DBYHHu+dv9XtI4Krxha/J5LqOldGf5xS9HISsjARgYwpfONDYEGNlSfExoghnBKO1Wuas7UwK27CB0PesHjHHTzD9bI3VpmVUKjHHNie+TDR6xrDv1R0weHjZtVCA0GuNjc+rJlEWAaIkCwMcH31SEBryNPEaKaE3p5HQP2weeDj/d9tdsAxTSWuxEasKk8+HzjVmZ/8xDm7Vzu7yMGSZ43nKuWdRsGazw/FCm/Xt5GpNulgRIeRgYag== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=Rpsk8Y9Q0eievOy/GsfLaiZhzqL8MTX9O2C9JrlAnfI=; b=a/cp8ewXr8FFPCWdxCbMivKE7bf97oSTBpx3etRf6fPiyW9i1GTDx3zKkoMP72RLYLNEts3xK40FXMhds2eferoryGfnIgJjrAUXsXNHhtLwZ/29S5UsxBtpTsADwaLoGYLczuKTmgM3TBrm7jx074O7RPbHYOseZn9ucsfJaVVGtwQ+HcdtVJ1gp6+Vph9Isx0QL9wGrFpPd1u8/w2nbm1x2XRB7yTzpqo1/trHNCdphbSaJ1I1mDKLGRLvVUSsibVKXjTLOaii80x059kvkkCpjZ+Og+Q3/EExBpPYliAkWFriiefktQASLVptmilFui1GElaca63yrX/WvVInJA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Rpsk8Y9Q0eievOy/GsfLaiZhzqL8MTX9O2C9JrlAnfI=; b=hiJMKQHfkwUzW5P4eyI+7UWwBR/W81Xn7a95/0pKI9Mp8ijQBDLjYbU6+mk+Aox4S+kmC0ZNtnR0E61fAnpf/clg7oCaFybow/6+XHjuJWNHv4lMjxA0rAKKOgQ7bW2SciCB64bYMMKlWwo1x0tVB63rdu2CRA+kPnF/GBMAtls= From: Bertrand Marquis To: Julien Grall CC: Xen-devel , Stefano Stabellini , Volodymyr Babchuk Subject: Re: [PATCH] xen/arm: rename guest_cpuinfo in domain_cpuinfo Thread-Topic: [PATCH] xen/arm: rename guest_cpuinfo in domain_cpuinfo Thread-Index: AQHZmtRITNbkwbPefkCb2va33qE53K+G/lAAgAAalwA= Date: Mon, 12 Jun 2023 12:13:32 +0000 Message-ID: <47AD0C1B-2715-4EE9-8231-694E631C8A56@arm.com> References: <7e18eceb2fb2f4cac991773a8697e9bf50b89aaf.1686316358.git.bertrand.marquis@arm.com> <24566db9-e6da-0b2b-e7a3-5edef81d159c@xen.org> In-Reply-To: <24566db9-e6da-0b2b-e7a3-5edef81d159c@xen.org> Accept-Language: en-GB, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-mailer: Apple Mail (2.3731.600.7) Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-traffictypediagnostic: AM6PR08MB3784:EE_|PAXPR08MB7418:EE_|DBAEUR03FT048:EE_|AS8PR08MB9865:EE_ X-MS-Office365-Filtering-Correlation-Id: 8adcc16e-7171-448e-59f6-08db6b3e770d x-checkrecipientrouted: true nodisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: NCCTPH1CP7W4xDz16k9Bf8ndSx4MKcKlEqo+YP0lqvNjofgIbBaCgfQUM7na+OFi+DSV+lYpgZ6F8OhI8OtiT8JzFxd320y1Lwv/MwWrhMAYwL9NWHHC5lrG7kC1PxlIsyzEPoVaauCmwFkFDP4trc2yQeEv7h8BMQDAKnoV+LdwijbcaXm2try3g2Vmp2a1orFpv60hHb0q1WD9QokSJS5UB/Gh5zkpAfDmjOoDbcybPYV6lfQIARP5Ns4ydLO6GiJFqSktgPLytAQH/r2VLzR9SIdHYPYPaZqhL+SxUllkZXm+ALDIKuS9ytpex33wcCnYtT6UJ5J+rMTfmn+6dv5pxRl0sGLrGVkfufdzxAHk0qWHUkz3GaRNbSDETslkiCNGK1vM4n3PGzIesZXevAl8tJDc/ivpZmBN+p9kmHwNSxTQsin30stssEyE1sR2NuMDW6F2TSgPJm+NN6nRlo9GuUXoxQovznIdrfyDNQc/2NHuNtPQSGexqCQ5kN9PxJgT60kln3nTXwIpmPGmzDnhdo6kVVyP4UlE/9CK6HrhmBV/anLErA0B9yI+6J867cJa+Uxf4WfDrWKtPnS1e8GXixJYJJ2MSZa73NUp3z4/Wykax0kVQSmMOZFevQBItXL2fv9B4f/Bg3cdrKybXg== X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM6PR08MB3784.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(396003)(39860400002)(376002)(366004)(346002)(136003)(451199021)(83380400001)(122000001)(4326008)(33656002)(36756003)(38070700005)(41300700001)(38100700002)(316002)(6486002)(71200400001)(6506007)(6512007)(53546011)(64756008)(6916009)(66946007)(66446008)(66556008)(76116006)(91956017)(2906002)(5660300002)(86362001)(8936002)(8676002)(66476007)(478600001)(54906003)(2616005)(186003)(45980500001);DIR:OUT;SFP:1101; Content-Type: text/plain; charset="us-ascii" Content-ID: <8428E5FA5DAEC34D8D827D3AE2971C51@eurprd08.prod.outlook.com> Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR08MB7418 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: DBAEUR03FT048.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: e96dabdc-6b34-4e73-d83d-08db6b3e70d7 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: l8GZhNr6E29uzIyLAoSrj0hLW+jZJNBA9k7R229PWfjc8TsO/Ij14VKuhgAvw1d9KozNzMMBZtbC7vmZjQzB3KIeb21ndpas/64XYbiSh2jHCuepIkp1jdomf3hu594evfyZLRX/hNjWV7SzgDYrrOfP1f0N3G3KuKNTdqPYM3Weum0dTrW/CmYCaBZpS7mkhe5pl3xg+IyjLZOA7Bg9EuAPnVdpY4WrVT7ffrvt6GSiIyd9dhq77yuAMNq67qBAOfwoiG2Zf3mIQT1cnzcroQeL+FQNzFFBSuVre5B1KAXyj58ekwNqqqC9L+5pTsOfQzu+DRq+llmPlE4AWnSfqNCXb3PgSuTL7+ZIvJfBBZwmfM6cHbMYCW5NvbhwZ0WawUgJOZk8Ouk54Jc2o5DzgH7Szc2R+JFkrh1AIrXiNMmiaSpEbFbW3tDobIoHE3hJf+1TayHFopok4EPxx4Z0apuP1irhSe+lblqxwbsneEa4EtZU98xNTNAAuad7SaucR8avzxZxzeWPQsKkKF9gRidm51qVN28jez8ytB6n+aAiBB/SXxC2XYzkQvxTPRnxK5dtXLBHLH4wNK9nWe8kbnuMZoZRx8wkCIQvkDYdDEMcK9aqXEowoGxdSPP2/QlDWqYyyFbLaldyuf3ITWWq9UX+uFiAKSi0SLPMoFK6KzBoZ93uTvEUAZ2RDAPLtGE5akQ2fjMeX4xc0wYzxcB3dd9AEzuUX7BWBGyVMM+h9mUWFrF/RxpQDn+LbfZJX6Bs X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230028)(4636009)(396003)(39860400002)(376002)(346002)(136003)(451199021)(46966006)(36840700001)(40470700004)(2906002)(478600001)(41300700001)(5660300002)(54906003)(316002)(8676002)(70586007)(8936002)(70206006)(6862004)(4326008)(6486002)(26005)(6506007)(40460700003)(6512007)(53546011)(2616005)(356005)(82740400003)(186003)(40480700001)(47076005)(107886003)(36860700001)(336012)(83380400001)(86362001)(82310400005)(36756003)(33656002)(81166007);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Jun 2023 12:13:43.2409 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 8adcc16e-7171-448e-59f6-08db6b3e770d X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: DBAEUR03FT048.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR08MB9865 Hi Julien, > On 12 Jun 2023, at 12:38, Julien Grall wrote: >=20 > Hi Bertrand, >=20 > On 09/06/2023 14:13, Bertrand Marquis wrote: >> Rename the guest_cpuinfo structure to domain_cpuinfo as it is not only >> used for guests but also for dom0 so domain is a more suitable name. >> While there also rename the create_guest_cpuinfo function to >> create_domain_cpuinfo to be coherent. >> Signed-off-by: Bertrand Marquis >> --- >> xen/arch/arm/arm64/vsysreg.c | 6 ++-- >> xen/arch/arm/cpufeature.c | 40 +++++++++++++-------------- >> xen/arch/arm/include/asm/cpufeature.h | 2 +- >> xen/arch/arm/vcpreg.c | 2 +- >> 4 files changed, 25 insertions(+), 25 deletions(-) >> diff --git a/xen/arch/arm/arm64/vsysreg.c b/xen/arch/arm/arm64/vsysreg.c >> index fe31f7b3827f..b5d54c569b33 100644 >> --- a/xen/arch/arm/arm64/vsysreg.c >> +++ b/xen/arch/arm/arm64/vsysreg.c >> @@ -76,7 +76,7 @@ TVM_REG(CONTEXTIDR_EL1) >> case HSR_SYSREG_##reg: = \ >> { = \ >> return handle_ro_read_val(regs, regidx, hsr.sysreg.read, hsr, = \ >> - 1, guest_cpuinfo.field.bits[offset]);= \ >> + 1, domain_cpuinfo.field.bits[offset])= ; \ >> } >> void do_sysreg(struct cpu_user_regs *regs, >> @@ -300,7 +300,7 @@ void do_sysreg(struct cpu_user_regs *regs, >> case HSR_SYSREG_ID_AA64PFR0_EL1: >> { >> - register_t guest_reg_value =3D guest_cpuinfo.pfr64.bits[0]; >> + register_t guest_reg_value =3D domain_cpuinfo.pfr64.bits[0]; >> if ( is_sve_domain(v->domain) ) >> { >> @@ -336,7 +336,7 @@ void do_sysreg(struct cpu_user_regs *regs, >> * When the guest has the SVE feature enabled, the whole id_aa6= 4zfr0_el1 >> * needs to be exposed. >> */ >> - register_t guest_reg_value =3D guest_cpuinfo.zfr64.bits[0]; >> + register_t guest_reg_value =3D domain_cpuinfo.zfr64.bits[0]; >> if ( is_sve_domain(v->domain) ) >> guest_reg_value =3D system_cpuinfo.zfr64.bits[0]; >> diff --git a/xen/arch/arm/cpufeature.c b/xen/arch/arm/cpufeature.c >> index b53e1a977601..5f4644865505 100644 >> --- a/xen/arch/arm/cpufeature.c >> +++ b/xen/arch/arm/cpufeature.c >> @@ -14,7 +14,7 @@ >> DECLARE_BITMAP(cpu_hwcaps, ARM_NCAPS); >> -struct cpuinfo_arm __read_mostly guest_cpuinfo; >> +struct cpuinfo_arm __read_mostly domain_cpuinfo; >> #ifdef CONFIG_ARM_64 >> static bool has_sb_instruction(const struct arm_cpu_capabilities *entry= ) >> @@ -191,45 +191,45 @@ void identify_cpu(struct cpuinfo_arm *c) >> /* >> * This function is creating a cpuinfo structure with values modified t= o mask >> * all cpu features that should not be published to guest. >=20 > I noticed you modified "guests" to "domains" below but not "guest" here. = Is this intended? >=20 >> - * The created structure is then used to provide ID registers values to= guests. >> + * The created structure is then used to provide ID registers values to= domains. >> */ >> -static int __init create_guest_cpuinfo(void) >> +static int __init create_domain_cpuinfo(void) >> { >> /* Use the sanitized cpuinfo as initial guest cpuinfo */ >=20 > Same question here. Definitely should have been done, i will make a v2 and a path on "guest" wi= thout extra s. Cheers Bertrand >=20 >> - guest_cpuinfo =3D system_cpuinfo; >> + domain_cpuinfo =3D system_cpuinfo; >=20 > Cheers, >=20 > --=20 > Julien Grall From xen-devel-bounces@lists.xenproject.org Mon Jun 12 12:14:35 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 12:14:35 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547104.854320 (Exim 4.92) (envelope-from ) id 1q8gRP-0006mK-9g; Mon, 12 Jun 2023 12:14:35 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547104.854320; Mon, 12 Jun 2023 12:14:35 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8gRP-0006mD-6y; Mon, 12 Jun 2023 12:14:35 +0000 Received: by outflank-mailman (input) for mailman id 547104; Mon, 12 Jun 2023 12:14:34 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8gRO-0006HA-Ks for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 12:14:34 +0000 Received: from smtp-out1.suse.de (smtp-out1.suse.de [195.135.220.28]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id b072e9b2-091a-11ee-b232-6b7b168915f2; Mon, 12 Jun 2023 14:14:33 +0200 (CEST) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by smtp-out1.suse.de (Postfix) with ESMTPS id CD57722847; Mon, 12 Jun 2023 12:14:32 +0000 (UTC) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id A09341357F; Mon, 12 Jun 2023 12:14:32 +0000 (UTC) Received: from dovecot-director2.suse.de ([192.168.254.65]) by imap2.suse-dmz.suse.de with ESMTPSA id Jwd3JSgMh2S7XgAAMHmgww (envelope-from ); Mon, 12 Jun 2023 12:14:32 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: b072e9b2-091a-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1; t=1686572072; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=XmnMa/l4p1HgnTyb6F+mUpufn7EGjy3FrKZ0A4Wymzo=; b=qfzXwnxh3ZzcDgyzStuSHlWhgt5fBQ40sLK0YRoDqaEF2frwAfNyndiDbxYSM7CxujQ2P/ +3cQ7q2Mbt569qRjCJniq1h3QEK/rI8kcbGUJO2NjzE+6mhTbtpmHKwrnvGc2l4jWEewOj uT1BJi+iQrBtQ8vdESyPA52rT5A+SeQ= Message-ID: Date: Mon, 12 Jun 2023 14:14:32 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Content-Language: en-US To: Jan Beulich , "xen-devel@lists.xenproject.org" Cc: Anthony Perard , Wei Liu , Daniel Smith References: <2dc50b58-a4e4-3e32-1876-94412b14b052@suse.com> <5eda17da-7185-9cf6-7e87-70da57aa0ebc@suse.com> From: Juergen Gross Subject: Re: [PATCH 2/5] libxl: drop dead assignments to "ret" from libxl__domain_config_setdefault() In-Reply-To: <5eda17da-7185-9cf6-7e87-70da57aa0ebc@suse.com> Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="------------YHysXadVzf35ccVe0f40cK8C" This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --------------YHysXadVzf35ccVe0f40cK8C Content-Type: multipart/mixed; boundary="------------g50VD1G0abarya3IAjiy05Xm"; protected-headers="v1" From: Juergen Gross To: Jan Beulich , "xen-devel@lists.xenproject.org" Cc: Anthony Perard , Wei Liu , Daniel Smith Message-ID: Subject: Re: [PATCH 2/5] libxl: drop dead assignments to "ret" from libxl__domain_config_setdefault() References: <2dc50b58-a4e4-3e32-1876-94412b14b052@suse.com> <5eda17da-7185-9cf6-7e87-70da57aa0ebc@suse.com> In-Reply-To: <5eda17da-7185-9cf6-7e87-70da57aa0ebc@suse.com> --------------g50VD1G0abarya3IAjiy05Xm Content-Type: multipart/mixed; boundary="------------zxtxUSo0SvGMxWNZZHNdIqjp" --------------zxtxUSo0SvGMxWNZZHNdIqjp Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: base64 T24gMTIuMDYuMjMgMTM6NDYsIEphbiBCZXVsaWNoIHdyb3RlOg0KPiBUaGUgdmFyaWFibGUg bmVlZHMgdG8gYmUgcHJvcGVybHkgc2V0IG9ubHkgb24gdGhlIGVycm9yIHBhdGhzLg0KPiAN Cj4gQ292ZXJpdHkgSUQ6IDE1MzIzMTENCj4gRml4ZXM6IGFiNDQ0MDExMmJlYyAoInhsIC8g bGlieGw6IHB1c2ggcGFyc2luZyBvZiBTU0lEIGFuZCBDUFUgcG9vbCBJRCBkb3duIHRvIGxp YnhsIikNCj4gU2lnbmVkLW9mZi1ieTogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29t Pg0KDQpSZXZpZXdlZC1ieTogSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1c2UuY29tPg0KDQo+ IC0tLQ0KPiBJZiBYU00gaXMgZGlzYWJsZWQsIGlzIGl0IHJlYWxseSB1c2VmdWwgdG8gaXNz dWUgdGhlIDJuZCBhbmQgM3JkIGNhbGxzDQo+IGlmIHRoZSAxc3QgeWllbGRlZCBFTk9TWVM/ DQoNClByb2JhYmx5IG5vdC4NCg0KDQpKdWVyZ2VuDQo= --------------zxtxUSo0SvGMxWNZZHNdIqjp Content-Type: application/pgp-keys; name="OpenPGP_0xB0DE9DD628BF132F.asc" Content-Disposition: attachment; filename="OpenPGP_0xB0DE9DD628BF132F.asc" Content-Description: OpenPGP public key Content-Transfer-Encoding: quoted-printable -----BEGIN PGP PUBLIC KEY BLOCK----- xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjri oyspZKOBycWxw3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2 kaV2KL9650I1SJvedYm8Of8Zd621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i 1TXkH09XSSI8mEQ/ouNcMvIJNwQpd369y9bfIhWUiVXEK7MlRgUG6MvIj6Y3Am/B BLUVbDa4+gmzDC9ezlZkTZG2t14zWPvxXP3FAp2pkW0xqG7/377qptDmrk42GlSK N4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEBAAHNHEp1ZXJnZW4gR3Jvc3Mg PGpnQHBmdXBmLm5ldD7CwHkEEwECACMFAlOMcBYCGwMHCwkIBwMCAQYVCAIJCgsE FgIDAQIeAQIXgAAKCRCw3p3WKL8TL0KdB/93FcIZ3GCNwFU0u3EjNbNjmXBKDY4F UGNQH2lvWAUy+dnyThpwdtF/jQ6j9RwE8VP0+NXcYpGJDWlNb9/JmYqLiX2Q3Tye vpB0CA3dbBQp0OW0fgCetToGIQrg0MbD1C/sEOv8Mr4NAfbauXjZlvTj30H2jO0u +6WGM6nHwbh2l5O8ZiHkH32iaSTfN7Eu5RnNVUJbvoPHZ8SlM4KWm8rG+lIkGurq qu5gu8q8ZMKdsdGC4bBxdQKDKHEFExLJK/nRPFmAuGlId1E3fe10v5QL+qHI3EIP tyfE7i9Hz6rVwi7lWKgh7pe0ZvatAudZ+JNIlBKptb64FaiIOAWDCx1SzR9KdWVy Z2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+wsB5BBMBAgAjBQJTjHCvAhsDBwsJ CAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey/HmQf/RtI7kv5A2PS4 RF7HoZhPVPogNVbC4YA6lW7DrWf0teC0RR3MzXfy6pJ+7KLgkqMlrAbN/8Dvjoz7 8X+5vhH/rDLa9BuZQlhFmvcGtCF8eR0T1v0nC/nuAFVGy+67q2DH8As3KPu0344T BDpAvr2uYM4tSqxK4DURx5INz4ZZ0WNFHcqsfvlGJALDeE0LhITTd9jLzdDad1pQ SToCnLl6SBJZjDOX9QQcyUigZFtCXFst4dlsvddrxyqT1f17+2cFSdu7+ynLmXBK 7abQ3rwJY8SbRO2iRulogc5vr/RLMMlscDAiDkaFQWLoqHHOdfO9rURssHNN8WkM nQfvUewRz80hSnVlcmdlbiBHcm9zcyA8amdyb3NzQG5vdmVsbC5jb20+wsB5BBMB AgAjBQJTjHDXAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/ Ey8PUQf/ehmgCI9jB9hlgexLvgOtf7PJnFOXgMLdBQgBlVPO3/D9R8LtF9DBAFPN hlrsfIG/SqICoRCqUcJ96Pn3P7UUinFG/I0ECGF4EvTE1jnDkfJZr6jrbjgyoZHi w/4BNwSTL9rWASyLgqlA8u1mf+c2yUwcGhgkRAd1gOwungxcwzwqgljf0N51N5Jf VRHRtyfwq/ge+YEkDGcTU6Y0sPOuj4Dyfm8fJzdfHNQsWq3PnczLVELStJNdapwP OoE+lotufe3AM2vAEYJ9rTz3Cki4JFUsgLkHFqGZarrPGi1eyQcXeluldO3m91NK /1xMI3/+8jbO0tsn1tqSEUGIJi7ox80eSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1 c2UuZGU+wsB5BBMBAgAjBQJTjHDrAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgEC F4AACgkQsN6d1ii/Ey+LhQf9GL45eU5vOowA2u5N3g3OZUEBmDHVVbqMtzwlmNC4 k9Kx39r5s2vcFl4tXqW7g9/ViXYuiDXb0RfUpZiIUW89siKrkzmQ5dM7wRqzgJpJ wK8Bn2MIxAKArekWpiCKvBOB/Cc+3EXE78XdlxLyOi/NrmSGRIov0karw2RzMNOu 5D+jLRZQd1Sv27AR+IP3I8U4aqnhLpwhK7MEy9oCILlgZ1QZe49kpcumcZKORmzB TNh30FVKK1EvmV2xAKDoaEOgQB4iFQLhJCdP1I5aSgM5IVFdn7v5YgEYuJYx37Io N1EblHI//x/e2AaIHpzK5h88NEawQsaNRpNSrcfbFmAg987ATQRTjHAWAQgAyzH6 AOODMBjgfWE9VeCgsrwH3exNAU32gLq2xvjpWnHIs98ndPUDpnoxWQugJ6MpMncr 0xSwFmHEgnSEjK/PAjppgmyc57BwKII3sV4on+gDVFJR6Y8ZRwgnBC5mVM6JjQ5x Dk8WRXljExRfUX9pNhdE5eBOZJrDRoLUmmjDtKzWaDhIg/+1Hzz93X4fCQkNVbVF LELU9bMaLPBG/x5q4iYZ2k2ex6d47YE1ZFdMm6YBYMOljGkZKwYde5ldM9mo45mm we0icXKLkpEdIXKTZeKDO+Hdv1aqFuAcccTg9RXDQjmwhC3yEmrmcfl0+rPghO0I v3OOImwTEe4co3c1mwARAQABwsBfBBgBAgAJBQJTjHAWAhsMAAoJELDendYovxMv Q/gH/1ha96vm4P/L+bQpJwrZ/dneZcmEwTbe8YFsw2V/Buv6Z4Mysln3nQK5ZadD 534CF7TDVft7fC4tU4PONxF5D+/tvgkPfDAfF77zy2AH1vJzQ1fOU8lYFpZXTXIH b+559UqvIB8AdgR3SAJGHHt4RKA0F7f5ipYBBrC6cyXJyyoprT10EMvU8VGiwXvT yJz3fjoYsdFzpWPlJEBRMedCot60g5dmbdrZ5DWClAr0yau47zpWj3enf1tLWaqc suylWsviuGjKGw7KHQd3bxALOknAp4dN3QwBYCKuZ7AddY9yjynVaD5X7nF9nO5B jR/i1DG86lem3iBDXzXsZDn8R38=3D =3D2wuH -----END PGP PUBLIC KEY BLOCK----- --------------zxtxUSo0SvGMxWNZZHNdIqjp-- --------------g50VD1G0abarya3IAjiy05Xm-- --------------YHysXadVzf35ccVe0f40cK8C Content-Type: application/pgp-signature; name="OpenPGP_signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="OpenPGP_signature" -----BEGIN PGP SIGNATURE----- wsB5BAABCAAjFiEEhRJncuj2BJSl0Jf3sN6d1ii/Ey8FAmSHDCgFAwAAAAAACgkQsN6d1ii/Ey+b AAf/VGW73njGnRfxZSCN3b3L3NWqIIP6r1d52iaG/T8yX7eVa20ggfJipsRe3sq3ScQp+XCfz5wD ASBmemDSqmIOpKwxJ6m8zgKIzARa2nmQWfpGOdO9mOy4g9XLLxmFvrAV0bIzjgEK1HDhx5JSmZEh avni5mDZ8k3hM3e4z2KnDMeeTbpoz9lpV8i0gEDSJk4TRMa2tUabdoKpqPXNBzRtRszfSiEUW6JA fMcHRtr6IKLcYgeRHzD0+mX5sZMBVsxxQpfbfGxtR3jmmLdwk10mEBiDA2czkTqoLXNgeG2RzNSb FmRQP4HLVIMMOFGNH8v/H7hRyAqckRoKTYAx3iQHnA== =+Wbi -----END PGP SIGNATURE----- --------------YHysXadVzf35ccVe0f40cK8C-- From xen-devel-bounces@lists.xenproject.org Mon Jun 12 12:16:21 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 12:16:21 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547110.854331 (Exim 4.92) (envelope-from ) id 1q8gSw-0007PX-KZ; Mon, 12 Jun 2023 12:16:10 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547110.854331; Mon, 12 Jun 2023 12:16:10 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8gSw-0007PQ-Hg; Mon, 12 Jun 2023 12:16:10 +0000 Received: by outflank-mailman (input) for mailman id 547110; Mon, 12 Jun 2023 12:16:09 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8gSv-0007PI-Hg for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 12:16:09 +0000 Received: from smtp-out1.suse.de (smtp-out1.suse.de [195.135.220.28]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id e545eae6-091a-11ee-8611-37d641c3527e; Mon, 12 Jun 2023 14:16:01 +0200 (CEST) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by smtp-out1.suse.de (Postfix) with ESMTPS id 66E0022843; Mon, 12 Jun 2023 12:16:01 +0000 (UTC) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id 33CE41357F; Mon, 12 Jun 2023 12:16:01 +0000 (UTC) Received: from dovecot-director2.suse.de ([192.168.254.65]) by imap2.suse-dmz.suse.de with ESMTPSA id cBBTC4EMh2TDXwAAMHmgww (envelope-from ); Mon, 12 Jun 2023 12:16:01 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: e545eae6-091a-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1; t=1686572161; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=wmG5O6HeGm59iYh4RezWyloVMDVppnXJ9oSw2eQnTIk=; b=g92eZxgW0AdHQEfHoqss3PMiWdCOlRz7+h+T908jWPB2J1PlljauWzE9jMfUtVc7/LDpK0 T6NWSY/9FbRKBckIrnLxItkqLGjfqBrfntmAxRBfEzdmI/28YmbzQOHdMfiA2DuxwmqshB gG5o5aSlh74LPzc6cIfnBrbmglM7/dc= Message-ID: Date: Mon, 12 Jun 2023 14:16:00 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH 3/5] libxg: drop dead assignment to "ptes" from xc_core_arch_map_p2m_list_rw() Content-Language: en-US To: Jan Beulich , "xen-devel@lists.xenproject.org" Cc: Anthony Perard , Wei Liu References: <2dc50b58-a4e4-3e32-1876-94412b14b052@suse.com> From: Juergen Gross In-Reply-To: Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="------------NMKGekHaFqh8RaWvYHF374mC" This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --------------NMKGekHaFqh8RaWvYHF374mC Content-Type: multipart/mixed; boundary="------------5rjvlrgKxORaJTP5kQFq0u5H"; protected-headers="v1" From: Juergen Gross To: Jan Beulich , "xen-devel@lists.xenproject.org" Cc: Anthony Perard , Wei Liu Message-ID: Subject: Re: [PATCH 3/5] libxg: drop dead assignment to "ptes" from xc_core_arch_map_p2m_list_rw() References: <2dc50b58-a4e4-3e32-1876-94412b14b052@suse.com> In-Reply-To: --------------5rjvlrgKxORaJTP5kQFq0u5H Content-Type: multipart/mixed; boundary="------------vFhT3wyTMHPSZEPzxXptb7bt" --------------vFhT3wyTMHPSZEPzxXptb7bt Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: base64 T24gMTIuMDYuMjMgMTM6NDYsIEphbiBCZXVsaWNoIHdyb3RlOg0KPiBUaGUgZnVuY3Rpb24g cmV0dXJucyBpbW1lZGlhdGVseSBhZnRlciB0aGUgZW5jbG9zaW5nIGlmKCkuDQo+IA0KPiBD b3Zlcml0eSBJRDogMTUzMjMxNA0KPiBGaXhlczogYmQ3YTI5YzNkMGI5ICgidG9vbHMvbGli cy9jdHJsOiBmaXggeGNfY29yZV9hcmNoX21hcF9wMm0oKSB0byBzdXBwb3J0IGxpbmVhciBw Mm0gdGFibGUiKQ0KPiBTaWduZWQtb2ZmLWJ5OiBKYW4gQmV1bGljaCA8amJldWxpY2hAc3Vz ZS5jb20+DQoNClJldmlld2VkLWJ5OiBKdWVyZ2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+ DQoNCg0KSnVlcmdlbg0KDQo= --------------vFhT3wyTMHPSZEPzxXptb7bt Content-Type: application/pgp-keys; name="OpenPGP_0xB0DE9DD628BF132F.asc" Content-Disposition: attachment; filename="OpenPGP_0xB0DE9DD628BF132F.asc" Content-Description: OpenPGP public key Content-Transfer-Encoding: quoted-printable -----BEGIN PGP PUBLIC KEY BLOCK----- xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjri oyspZKOBycWxw3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2 kaV2KL9650I1SJvedYm8Of8Zd621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i 1TXkH09XSSI8mEQ/ouNcMvIJNwQpd369y9bfIhWUiVXEK7MlRgUG6MvIj6Y3Am/B BLUVbDa4+gmzDC9ezlZkTZG2t14zWPvxXP3FAp2pkW0xqG7/377qptDmrk42GlSK N4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEBAAHNHEp1ZXJnZW4gR3Jvc3Mg PGpnQHBmdXBmLm5ldD7CwHkEEwECACMFAlOMcBYCGwMHCwkIBwMCAQYVCAIJCgsE FgIDAQIeAQIXgAAKCRCw3p3WKL8TL0KdB/93FcIZ3GCNwFU0u3EjNbNjmXBKDY4F UGNQH2lvWAUy+dnyThpwdtF/jQ6j9RwE8VP0+NXcYpGJDWlNb9/JmYqLiX2Q3Tye vpB0CA3dbBQp0OW0fgCetToGIQrg0MbD1C/sEOv8Mr4NAfbauXjZlvTj30H2jO0u +6WGM6nHwbh2l5O8ZiHkH32iaSTfN7Eu5RnNVUJbvoPHZ8SlM4KWm8rG+lIkGurq qu5gu8q8ZMKdsdGC4bBxdQKDKHEFExLJK/nRPFmAuGlId1E3fe10v5QL+qHI3EIP tyfE7i9Hz6rVwi7lWKgh7pe0ZvatAudZ+JNIlBKptb64FaiIOAWDCx1SzR9KdWVy Z2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+wsB5BBMBAgAjBQJTjHCvAhsDBwsJ CAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey/HmQf/RtI7kv5A2PS4 RF7HoZhPVPogNVbC4YA6lW7DrWf0teC0RR3MzXfy6pJ+7KLgkqMlrAbN/8Dvjoz7 8X+5vhH/rDLa9BuZQlhFmvcGtCF8eR0T1v0nC/nuAFVGy+67q2DH8As3KPu0344T BDpAvr2uYM4tSqxK4DURx5INz4ZZ0WNFHcqsfvlGJALDeE0LhITTd9jLzdDad1pQ SToCnLl6SBJZjDOX9QQcyUigZFtCXFst4dlsvddrxyqT1f17+2cFSdu7+ynLmXBK 7abQ3rwJY8SbRO2iRulogc5vr/RLMMlscDAiDkaFQWLoqHHOdfO9rURssHNN8WkM nQfvUewRz80hSnVlcmdlbiBHcm9zcyA8amdyb3NzQG5vdmVsbC5jb20+wsB5BBMB AgAjBQJTjHDXAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/ Ey8PUQf/ehmgCI9jB9hlgexLvgOtf7PJnFOXgMLdBQgBlVPO3/D9R8LtF9DBAFPN hlrsfIG/SqICoRCqUcJ96Pn3P7UUinFG/I0ECGF4EvTE1jnDkfJZr6jrbjgyoZHi w/4BNwSTL9rWASyLgqlA8u1mf+c2yUwcGhgkRAd1gOwungxcwzwqgljf0N51N5Jf VRHRtyfwq/ge+YEkDGcTU6Y0sPOuj4Dyfm8fJzdfHNQsWq3PnczLVELStJNdapwP OoE+lotufe3AM2vAEYJ9rTz3Cki4JFUsgLkHFqGZarrPGi1eyQcXeluldO3m91NK /1xMI3/+8jbO0tsn1tqSEUGIJi7ox80eSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1 c2UuZGU+wsB5BBMBAgAjBQJTjHDrAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgEC F4AACgkQsN6d1ii/Ey+LhQf9GL45eU5vOowA2u5N3g3OZUEBmDHVVbqMtzwlmNC4 k9Kx39r5s2vcFl4tXqW7g9/ViXYuiDXb0RfUpZiIUW89siKrkzmQ5dM7wRqzgJpJ wK8Bn2MIxAKArekWpiCKvBOB/Cc+3EXE78XdlxLyOi/NrmSGRIov0karw2RzMNOu 5D+jLRZQd1Sv27AR+IP3I8U4aqnhLpwhK7MEy9oCILlgZ1QZe49kpcumcZKORmzB TNh30FVKK1EvmV2xAKDoaEOgQB4iFQLhJCdP1I5aSgM5IVFdn7v5YgEYuJYx37Io N1EblHI//x/e2AaIHpzK5h88NEawQsaNRpNSrcfbFmAg987ATQRTjHAWAQgAyzH6 AOODMBjgfWE9VeCgsrwH3exNAU32gLq2xvjpWnHIs98ndPUDpnoxWQugJ6MpMncr 0xSwFmHEgnSEjK/PAjppgmyc57BwKII3sV4on+gDVFJR6Y8ZRwgnBC5mVM6JjQ5x Dk8WRXljExRfUX9pNhdE5eBOZJrDRoLUmmjDtKzWaDhIg/+1Hzz93X4fCQkNVbVF LELU9bMaLPBG/x5q4iYZ2k2ex6d47YE1ZFdMm6YBYMOljGkZKwYde5ldM9mo45mm we0icXKLkpEdIXKTZeKDO+Hdv1aqFuAcccTg9RXDQjmwhC3yEmrmcfl0+rPghO0I v3OOImwTEe4co3c1mwARAQABwsBfBBgBAgAJBQJTjHAWAhsMAAoJELDendYovxMv Q/gH/1ha96vm4P/L+bQpJwrZ/dneZcmEwTbe8YFsw2V/Buv6Z4Mysln3nQK5ZadD 534CF7TDVft7fC4tU4PONxF5D+/tvgkPfDAfF77zy2AH1vJzQ1fOU8lYFpZXTXIH b+559UqvIB8AdgR3SAJGHHt4RKA0F7f5ipYBBrC6cyXJyyoprT10EMvU8VGiwXvT yJz3fjoYsdFzpWPlJEBRMedCot60g5dmbdrZ5DWClAr0yau47zpWj3enf1tLWaqc suylWsviuGjKGw7KHQd3bxALOknAp4dN3QwBYCKuZ7AddY9yjynVaD5X7nF9nO5B jR/i1DG86lem3iBDXzXsZDn8R38=3D =3D2wuH -----END PGP PUBLIC KEY BLOCK----- --------------vFhT3wyTMHPSZEPzxXptb7bt-- --------------5rjvlrgKxORaJTP5kQFq0u5H-- --------------NMKGekHaFqh8RaWvYHF374mC Content-Type: application/pgp-signature; name="OpenPGP_signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="OpenPGP_signature" -----BEGIN PGP SIGNATURE----- wsB5BAABCAAjFiEEhRJncuj2BJSl0Jf3sN6d1ii/Ey8FAmSHDIAFAwAAAAAACgkQsN6d1ii/Ey8s wQf/bf99QZNYvrCJIzh30iNL3emFULOPCE+FBVGSPLcjeeh4qzWoobHHPGR2dQwTgzpONZDFSI7N 1E0W1almMZzutCBbWa8XnFD4Essd06cFy/+vfxZ/Js5FS50g6/9iggkQgKXLuQx8ol1mxZZdmRTJ t6DTo46iWBhXdymLvkExvn1sXQEzBdjFtJ60AU1UlxbYGdBrVu1j4c/5n/A1ABe9JNHNP62OH0ra nbkq7uOnqh2pZd+Sn7IGlbc5XQWPPYxJCxx6UToU//HQX0C7f6GbLtlZV/6YQgJeJq6p/WfU4wQ6 qWUYX6txp0hOiCVLVfd3P40mPazEWNVxCzLSpARuNA== =Gc/U -----END PGP SIGNATURE----- --------------NMKGekHaFqh8RaWvYHF374mC-- From xen-devel-bounces@lists.xenproject.org Mon Jun 12 12:18:12 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 12:18:12 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547117.854340 (Exim 4.92) (envelope-from ) id 1q8gUd-00083M-1S; Mon, 12 Jun 2023 12:17:55 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547117.854340; Mon, 12 Jun 2023 12:17:55 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8gUc-00083F-VC; Mon, 12 Jun 2023 12:17:54 +0000 Received: by outflank-mailman (input) for mailman id 547117; Mon, 12 Jun 2023 12:17:53 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8gUb-000839-JR for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 12:17:53 +0000 Received: from smtp-out2.suse.de (smtp-out2.suse.de [195.135.220.29]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 26f02f04-091b-11ee-b232-6b7b168915f2; Mon, 12 Jun 2023 14:17:51 +0200 (CEST) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by smtp-out2.suse.de (Postfix) with ESMTPS id E8B792032C; Mon, 12 Jun 2023 12:17:51 +0000 (UTC) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id AD6C01357F; Mon, 12 Jun 2023 12:17:51 +0000 (UTC) Received: from dovecot-director2.suse.de ([192.168.254.65]) by imap2.suse-dmz.suse.de with ESMTPSA id W7UqKO8Mh2SeYAAAMHmgww (envelope-from ); Mon, 12 Jun 2023 12:17:51 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 26f02f04-091b-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1; t=1686572271; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=fBSQKVvPWT1WKPV0aggKZhSKQshY0c0CxSh/VcOb0js=; b=Y1ZEiT7o5jwn5ha+SzCeN6WbYq2Y7tvhwk/quHtuioSkZRzQGmkBTxJKyNwouRyuY0skxt CoksdwSpia4Kd1np/EzSTM7oPokhuIlIfMF14jgwg9UMze9pyzg0oywWlYZfI8rMnpxTEt cMgsL3xW7aa9m/VItFhB7hQTssudwoU= Message-ID: <0ee9baf8-9a72-d869-34b8-5c96f71535a6@suse.com> Date: Mon, 12 Jun 2023 14:17:51 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH 4/5] libxg: drop dead assignment to "rc" from xc_cpuid_apply_policy() Content-Language: en-US To: Jan Beulich , "xen-devel@lists.xenproject.org" Cc: Anthony Perard , Wei Liu , Andrew Cooper , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= References: <2dc50b58-a4e4-3e32-1876-94412b14b052@suse.com> <89c45e29-fa7e-93e9-a2d5-45991c302794@suse.com> From: Juergen Gross In-Reply-To: <89c45e29-fa7e-93e9-a2d5-45991c302794@suse.com> Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="------------C0oJL8SgJaLsf3v6F0maqhPw" This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --------------C0oJL8SgJaLsf3v6F0maqhPw Content-Type: multipart/mixed; boundary="------------U565IG0V4DCEskvnB00JqMd0"; protected-headers="v1" From: Juergen Gross To: Jan Beulich , "xen-devel@lists.xenproject.org" Cc: Anthony Perard , Wei Liu , Andrew Cooper , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= Message-ID: <0ee9baf8-9a72-d869-34b8-5c96f71535a6@suse.com> Subject: Re: [PATCH 4/5] libxg: drop dead assignment to "rc" from xc_cpuid_apply_policy() References: <2dc50b58-a4e4-3e32-1876-94412b14b052@suse.com> <89c45e29-fa7e-93e9-a2d5-45991c302794@suse.com> In-Reply-To: <89c45e29-fa7e-93e9-a2d5-45991c302794@suse.com> --------------U565IG0V4DCEskvnB00JqMd0 Content-Type: multipart/mixed; boundary="------------0ZUBENzMjSjg7Ea4vZOr40aa" --------------0ZUBENzMjSjg7Ea4vZOr40aa Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: base64 T24gMTIuMDYuMjMgMTM6NDcsIEphbiBCZXVsaWNoIHdyb3RlOg0KPiAicmMiIGlzIHdyaXR0 ZW4gaW1tZWRpYXRlbHkgYmVsb3cgdGhlIG91dGVyIGlmKCkuIEZvbGQgdGhlIHJlbWFpbmlu ZyB0d28NCj4gaWYoKXMuDQo+IA0KPiBDb3Zlcml0eSBJRDogMTUzMjMyMA0KPiBGaXhlczog Njg1ZTkyMmQ2ZjMwICgidG9vbHMvbGlieGM6IFJld29yayB4Y19jcHVpZF9hcHBseV9wb2xp Y3koKSB0byB1c2Uge2dldCxzZXR9X2NwdV9wb2xpY3koKSIpDQo+IFNpZ25lZC1vZmYtYnk6 IEphbiBCZXVsaWNoIDxqYmV1bGljaEBzdXNlLmNvbT4NCg0KUmV2aWV3ZWQtYnk6IEp1ZXJn ZW4gR3Jvc3MgPGpncm9zc0BzdXNlLmNvbT4NCg0KDQpKdWVyZ2VuDQoNCg== --------------0ZUBENzMjSjg7Ea4vZOr40aa Content-Type: application/pgp-keys; name="OpenPGP_0xB0DE9DD628BF132F.asc" Content-Disposition: attachment; filename="OpenPGP_0xB0DE9DD628BF132F.asc" Content-Description: OpenPGP public key Content-Transfer-Encoding: quoted-printable -----BEGIN PGP PUBLIC KEY BLOCK----- xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjri oyspZKOBycWxw3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2 kaV2KL9650I1SJvedYm8Of8Zd621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i 1TXkH09XSSI8mEQ/ouNcMvIJNwQpd369y9bfIhWUiVXEK7MlRgUG6MvIj6Y3Am/B BLUVbDa4+gmzDC9ezlZkTZG2t14zWPvxXP3FAp2pkW0xqG7/377qptDmrk42GlSK N4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEBAAHNHEp1ZXJnZW4gR3Jvc3Mg PGpnQHBmdXBmLm5ldD7CwHkEEwECACMFAlOMcBYCGwMHCwkIBwMCAQYVCAIJCgsE FgIDAQIeAQIXgAAKCRCw3p3WKL8TL0KdB/93FcIZ3GCNwFU0u3EjNbNjmXBKDY4F UGNQH2lvWAUy+dnyThpwdtF/jQ6j9RwE8VP0+NXcYpGJDWlNb9/JmYqLiX2Q3Tye vpB0CA3dbBQp0OW0fgCetToGIQrg0MbD1C/sEOv8Mr4NAfbauXjZlvTj30H2jO0u +6WGM6nHwbh2l5O8ZiHkH32iaSTfN7Eu5RnNVUJbvoPHZ8SlM4KWm8rG+lIkGurq qu5gu8q8ZMKdsdGC4bBxdQKDKHEFExLJK/nRPFmAuGlId1E3fe10v5QL+qHI3EIP tyfE7i9Hz6rVwi7lWKgh7pe0ZvatAudZ+JNIlBKptb64FaiIOAWDCx1SzR9KdWVy Z2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+wsB5BBMBAgAjBQJTjHCvAhsDBwsJ CAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey/HmQf/RtI7kv5A2PS4 RF7HoZhPVPogNVbC4YA6lW7DrWf0teC0RR3MzXfy6pJ+7KLgkqMlrAbN/8Dvjoz7 8X+5vhH/rDLa9BuZQlhFmvcGtCF8eR0T1v0nC/nuAFVGy+67q2DH8As3KPu0344T BDpAvr2uYM4tSqxK4DURx5INz4ZZ0WNFHcqsfvlGJALDeE0LhITTd9jLzdDad1pQ SToCnLl6SBJZjDOX9QQcyUigZFtCXFst4dlsvddrxyqT1f17+2cFSdu7+ynLmXBK 7abQ3rwJY8SbRO2iRulogc5vr/RLMMlscDAiDkaFQWLoqHHOdfO9rURssHNN8WkM nQfvUewRz80hSnVlcmdlbiBHcm9zcyA8amdyb3NzQG5vdmVsbC5jb20+wsB5BBMB AgAjBQJTjHDXAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/ Ey8PUQf/ehmgCI9jB9hlgexLvgOtf7PJnFOXgMLdBQgBlVPO3/D9R8LtF9DBAFPN hlrsfIG/SqICoRCqUcJ96Pn3P7UUinFG/I0ECGF4EvTE1jnDkfJZr6jrbjgyoZHi w/4BNwSTL9rWASyLgqlA8u1mf+c2yUwcGhgkRAd1gOwungxcwzwqgljf0N51N5Jf VRHRtyfwq/ge+YEkDGcTU6Y0sPOuj4Dyfm8fJzdfHNQsWq3PnczLVELStJNdapwP OoE+lotufe3AM2vAEYJ9rTz3Cki4JFUsgLkHFqGZarrPGi1eyQcXeluldO3m91NK /1xMI3/+8jbO0tsn1tqSEUGIJi7ox80eSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1 c2UuZGU+wsB5BBMBAgAjBQJTjHDrAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgEC F4AACgkQsN6d1ii/Ey+LhQf9GL45eU5vOowA2u5N3g3OZUEBmDHVVbqMtzwlmNC4 k9Kx39r5s2vcFl4tXqW7g9/ViXYuiDXb0RfUpZiIUW89siKrkzmQ5dM7wRqzgJpJ wK8Bn2MIxAKArekWpiCKvBOB/Cc+3EXE78XdlxLyOi/NrmSGRIov0karw2RzMNOu 5D+jLRZQd1Sv27AR+IP3I8U4aqnhLpwhK7MEy9oCILlgZ1QZe49kpcumcZKORmzB TNh30FVKK1EvmV2xAKDoaEOgQB4iFQLhJCdP1I5aSgM5IVFdn7v5YgEYuJYx37Io N1EblHI//x/e2AaIHpzK5h88NEawQsaNRpNSrcfbFmAg987ATQRTjHAWAQgAyzH6 AOODMBjgfWE9VeCgsrwH3exNAU32gLq2xvjpWnHIs98ndPUDpnoxWQugJ6MpMncr 0xSwFmHEgnSEjK/PAjppgmyc57BwKII3sV4on+gDVFJR6Y8ZRwgnBC5mVM6JjQ5x Dk8WRXljExRfUX9pNhdE5eBOZJrDRoLUmmjDtKzWaDhIg/+1Hzz93X4fCQkNVbVF LELU9bMaLPBG/x5q4iYZ2k2ex6d47YE1ZFdMm6YBYMOljGkZKwYde5ldM9mo45mm we0icXKLkpEdIXKTZeKDO+Hdv1aqFuAcccTg9RXDQjmwhC3yEmrmcfl0+rPghO0I v3OOImwTEe4co3c1mwARAQABwsBfBBgBAgAJBQJTjHAWAhsMAAoJELDendYovxMv Q/gH/1ha96vm4P/L+bQpJwrZ/dneZcmEwTbe8YFsw2V/Buv6Z4Mysln3nQK5ZadD 534CF7TDVft7fC4tU4PONxF5D+/tvgkPfDAfF77zy2AH1vJzQ1fOU8lYFpZXTXIH b+559UqvIB8AdgR3SAJGHHt4RKA0F7f5ipYBBrC6cyXJyyoprT10EMvU8VGiwXvT yJz3fjoYsdFzpWPlJEBRMedCot60g5dmbdrZ5DWClAr0yau47zpWj3enf1tLWaqc suylWsviuGjKGw7KHQd3bxALOknAp4dN3QwBYCKuZ7AddY9yjynVaD5X7nF9nO5B jR/i1DG86lem3iBDXzXsZDn8R38=3D =3D2wuH -----END PGP PUBLIC KEY BLOCK----- --------------0ZUBENzMjSjg7Ea4vZOr40aa-- --------------U565IG0V4DCEskvnB00JqMd0-- --------------C0oJL8SgJaLsf3v6F0maqhPw Content-Type: application/pgp-signature; name="OpenPGP_signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="OpenPGP_signature" -----BEGIN PGP SIGNATURE----- wsB5BAABCAAjFiEEhRJncuj2BJSl0Jf3sN6d1ii/Ey8FAmSHDO8FAwAAAAAACgkQsN6d1ii/Ey9T ygf/enuGimZZP8KgGUmYn1wsXn8Ph3iAR3/40o2O43naiJiilJF+fjqgLuU6U5laGKVUNxsAX9uE qmU4ZqJokr5nZUnlxDxHRSg0XCT+vN9y6ool8S2gu4jErOECuWlFoBB7NVxpMclZJ95kwA2K0/ZP uhLya5GRROnxQtHhFfKAlR6Ylz4opRbowA55ArPuwdP4YOaxLZyBjy2QQn1bTgkyL9OJ+bsLzdwW aApwid9LYqkEhcxpsnl8/V+pI9DEOQcftYawHwvYiuw6lxm2L1H4MFlvYMAHDNS14Pgfn3WVDfps Es0lz0B0ugP+ioULw528pKvthwjc/H0RdAfsDLajTg== =BGFo -----END PGP SIGNATURE----- --------------C0oJL8SgJaLsf3v6F0maqhPw-- From xen-devel-bounces@lists.xenproject.org Mon Jun 12 12:19:24 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 12:19:24 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547122.854350 (Exim 4.92) (envelope-from ) id 1q8gW0-0000BY-By; Mon, 12 Jun 2023 12:19:20 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547122.854350; Mon, 12 Jun 2023 12:19:20 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8gW0-0000BR-9A; Mon, 12 Jun 2023 12:19:20 +0000 Received: by outflank-mailman (input) for mailman id 547122; Mon, 12 Jun 2023 12:19:18 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8gVy-0000BH-Ie for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 12:19:18 +0000 Received: from smtp-out2.suse.de (smtp-out2.suse.de [195.135.220.29]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 588cca00-091b-11ee-8611-37d641c3527e; Mon, 12 Jun 2023 14:19:15 +0200 (CEST) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by smtp-out2.suse.de (Postfix) with ESMTPS id C9D482024E; Mon, 12 Jun 2023 12:19:14 +0000 (UTC) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id A14DC1357F; Mon, 12 Jun 2023 12:19:14 +0000 (UTC) Received: from dovecot-director2.suse.de ([192.168.254.65]) by imap2.suse-dmz.suse.de with ESMTPSA id 867GJUINh2RbYQAAMHmgww (envelope-from ); Mon, 12 Jun 2023 12:19:14 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 588cca00-091b-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1; t=1686572354; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=28jIC+cy1jk4DVo/bKoIvsxNvrsNJm+9KILWRMB/tXY=; b=FrgJAIzuHejuO2LQ8jORwajDfm3ArWu3y5afuZVkJDhFztfB2He7JUU+n+iHi+w92iI+LX ZcOdu+WKQO700LFgZQLB7Iqjc+M0ytDi3NRthGkSwuBXFhT6JOD/FfClWM8n4mwTLurYGk oWIK4UyQWQ+GRNtpNxBOlqIcxB1GdVE= Message-ID: <6273fb2e-6e08-baf3-f3f6-7dceb03d8d81@suse.com> Date: Mon, 12 Jun 2023 14:19:14 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH 5/5] libxl: drop dead assignment to transaction variable from libxl__domain_make() Content-Language: en-US To: Jan Beulich , "xen-devel@lists.xenproject.org" Cc: Anthony Perard , Wei Liu References: <2dc50b58-a4e4-3e32-1876-94412b14b052@suse.com> <4fcbe916-890a-1dfc-86a8-eef2bafb2801@suse.com> From: Juergen Gross In-Reply-To: <4fcbe916-890a-1dfc-86a8-eef2bafb2801@suse.com> Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="------------8shaeYFlj9VBmdzbidq3L38o" This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --------------8shaeYFlj9VBmdzbidq3L38o Content-Type: multipart/mixed; boundary="------------loxUr8W1agY7umvgbJVRJ9yr"; protected-headers="v1" From: Juergen Gross To: Jan Beulich , "xen-devel@lists.xenproject.org" Cc: Anthony Perard , Wei Liu Message-ID: <6273fb2e-6e08-baf3-f3f6-7dceb03d8d81@suse.com> Subject: Re: [PATCH 5/5] libxl: drop dead assignment to transaction variable from libxl__domain_make() References: <2dc50b58-a4e4-3e32-1876-94412b14b052@suse.com> <4fcbe916-890a-1dfc-86a8-eef2bafb2801@suse.com> In-Reply-To: <4fcbe916-890a-1dfc-86a8-eef2bafb2801@suse.com> --------------loxUr8W1agY7umvgbJVRJ9yr Content-Type: multipart/mixed; boundary="------------walU0fOy00r0D5T2KPLhDyEg" --------------walU0fOy00r0D5T2KPLhDyEg Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: base64 T24gMTIuMDYuMjMgMTM6NDcsIEphbiBCZXVsaWNoIHdyb3RlOg0KPiAidCIgaXMgd3JpdHRl biBmaXJzdCB0aGluZyBhdCB0aGUgInJldHJ5X3RyYW5zYWN0aW9uIiBsYWJlbC4NCj4gDQo+ IENvdmVyaXR5IElEOiAxNTMyMzIxDQo+IEZpeGVzOiAxMDU3MzAwMTA5ZWEgKCJsaWJ4bDog Zml4IGVycm9yIGhhbmRsaW5nICh4ZW5zdG9yZSB0cmFuc2FjdGlvbiBsZWFrKSBpbiBsaWJ4 bF9fZG9tYWluX21ha2UiKQ0KPiBTaWduZWQtb2ZmLWJ5OiBKYW4gQmV1bGljaCA8amJldWxp Y2hAc3VzZS5jb20+DQoNClJldmlld2VkLWJ5OiBKdWVyZ2VuIEdyb3NzIDxqZ3Jvc3NAc3Vz ZS5jb20+DQoNCg0KSnVlcmdlbg0KDQo= --------------walU0fOy00r0D5T2KPLhDyEg Content-Type: application/pgp-keys; name="OpenPGP_0xB0DE9DD628BF132F.asc" Content-Disposition: attachment; filename="OpenPGP_0xB0DE9DD628BF132F.asc" Content-Description: OpenPGP public key Content-Transfer-Encoding: quoted-printable -----BEGIN PGP PUBLIC KEY BLOCK----- xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjri oyspZKOBycWxw3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2 kaV2KL9650I1SJvedYm8Of8Zd621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i 1TXkH09XSSI8mEQ/ouNcMvIJNwQpd369y9bfIhWUiVXEK7MlRgUG6MvIj6Y3Am/B BLUVbDa4+gmzDC9ezlZkTZG2t14zWPvxXP3FAp2pkW0xqG7/377qptDmrk42GlSK N4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEBAAHNHEp1ZXJnZW4gR3Jvc3Mg PGpnQHBmdXBmLm5ldD7CwHkEEwECACMFAlOMcBYCGwMHCwkIBwMCAQYVCAIJCgsE FgIDAQIeAQIXgAAKCRCw3p3WKL8TL0KdB/93FcIZ3GCNwFU0u3EjNbNjmXBKDY4F UGNQH2lvWAUy+dnyThpwdtF/jQ6j9RwE8VP0+NXcYpGJDWlNb9/JmYqLiX2Q3Tye vpB0CA3dbBQp0OW0fgCetToGIQrg0MbD1C/sEOv8Mr4NAfbauXjZlvTj30H2jO0u +6WGM6nHwbh2l5O8ZiHkH32iaSTfN7Eu5RnNVUJbvoPHZ8SlM4KWm8rG+lIkGurq qu5gu8q8ZMKdsdGC4bBxdQKDKHEFExLJK/nRPFmAuGlId1E3fe10v5QL+qHI3EIP tyfE7i9Hz6rVwi7lWKgh7pe0ZvatAudZ+JNIlBKptb64FaiIOAWDCx1SzR9KdWVy Z2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+wsB5BBMBAgAjBQJTjHCvAhsDBwsJ CAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey/HmQf/RtI7kv5A2PS4 RF7HoZhPVPogNVbC4YA6lW7DrWf0teC0RR3MzXfy6pJ+7KLgkqMlrAbN/8Dvjoz7 8X+5vhH/rDLa9BuZQlhFmvcGtCF8eR0T1v0nC/nuAFVGy+67q2DH8As3KPu0344T BDpAvr2uYM4tSqxK4DURx5INz4ZZ0WNFHcqsfvlGJALDeE0LhITTd9jLzdDad1pQ SToCnLl6SBJZjDOX9QQcyUigZFtCXFst4dlsvddrxyqT1f17+2cFSdu7+ynLmXBK 7abQ3rwJY8SbRO2iRulogc5vr/RLMMlscDAiDkaFQWLoqHHOdfO9rURssHNN8WkM nQfvUewRz80hSnVlcmdlbiBHcm9zcyA8amdyb3NzQG5vdmVsbC5jb20+wsB5BBMB AgAjBQJTjHDXAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/ Ey8PUQf/ehmgCI9jB9hlgexLvgOtf7PJnFOXgMLdBQgBlVPO3/D9R8LtF9DBAFPN hlrsfIG/SqICoRCqUcJ96Pn3P7UUinFG/I0ECGF4EvTE1jnDkfJZr6jrbjgyoZHi w/4BNwSTL9rWASyLgqlA8u1mf+c2yUwcGhgkRAd1gOwungxcwzwqgljf0N51N5Jf VRHRtyfwq/ge+YEkDGcTU6Y0sPOuj4Dyfm8fJzdfHNQsWq3PnczLVELStJNdapwP OoE+lotufe3AM2vAEYJ9rTz3Cki4JFUsgLkHFqGZarrPGi1eyQcXeluldO3m91NK /1xMI3/+8jbO0tsn1tqSEUGIJi7ox80eSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1 c2UuZGU+wsB5BBMBAgAjBQJTjHDrAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgEC F4AACgkQsN6d1ii/Ey+LhQf9GL45eU5vOowA2u5N3g3OZUEBmDHVVbqMtzwlmNC4 k9Kx39r5s2vcFl4tXqW7g9/ViXYuiDXb0RfUpZiIUW89siKrkzmQ5dM7wRqzgJpJ wK8Bn2MIxAKArekWpiCKvBOB/Cc+3EXE78XdlxLyOi/NrmSGRIov0karw2RzMNOu 5D+jLRZQd1Sv27AR+IP3I8U4aqnhLpwhK7MEy9oCILlgZ1QZe49kpcumcZKORmzB TNh30FVKK1EvmV2xAKDoaEOgQB4iFQLhJCdP1I5aSgM5IVFdn7v5YgEYuJYx37Io N1EblHI//x/e2AaIHpzK5h88NEawQsaNRpNSrcfbFmAg987ATQRTjHAWAQgAyzH6 AOODMBjgfWE9VeCgsrwH3exNAU32gLq2xvjpWnHIs98ndPUDpnoxWQugJ6MpMncr 0xSwFmHEgnSEjK/PAjppgmyc57BwKII3sV4on+gDVFJR6Y8ZRwgnBC5mVM6JjQ5x Dk8WRXljExRfUX9pNhdE5eBOZJrDRoLUmmjDtKzWaDhIg/+1Hzz93X4fCQkNVbVF LELU9bMaLPBG/x5q4iYZ2k2ex6d47YE1ZFdMm6YBYMOljGkZKwYde5ldM9mo45mm we0icXKLkpEdIXKTZeKDO+Hdv1aqFuAcccTg9RXDQjmwhC3yEmrmcfl0+rPghO0I v3OOImwTEe4co3c1mwARAQABwsBfBBgBAgAJBQJTjHAWAhsMAAoJELDendYovxMv Q/gH/1ha96vm4P/L+bQpJwrZ/dneZcmEwTbe8YFsw2V/Buv6Z4Mysln3nQK5ZadD 534CF7TDVft7fC4tU4PONxF5D+/tvgkPfDAfF77zy2AH1vJzQ1fOU8lYFpZXTXIH b+559UqvIB8AdgR3SAJGHHt4RKA0F7f5ipYBBrC6cyXJyyoprT10EMvU8VGiwXvT yJz3fjoYsdFzpWPlJEBRMedCot60g5dmbdrZ5DWClAr0yau47zpWj3enf1tLWaqc suylWsviuGjKGw7KHQd3bxALOknAp4dN3QwBYCKuZ7AddY9yjynVaD5X7nF9nO5B jR/i1DG86lem3iBDXzXsZDn8R38=3D =3D2wuH -----END PGP PUBLIC KEY BLOCK----- --------------walU0fOy00r0D5T2KPLhDyEg-- --------------loxUr8W1agY7umvgbJVRJ9yr-- --------------8shaeYFlj9VBmdzbidq3L38o Content-Type: application/pgp-signature; name="OpenPGP_signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="OpenPGP_signature" -----BEGIN PGP SIGNATURE----- wsB5BAABCAAjFiEEhRJncuj2BJSl0Jf3sN6d1ii/Ey8FAmSHDUIFAwAAAAAACgkQsN6d1ii/Ey8T Wgf8DT+OjL0fpKuEPEBowzbDuGgAgo5Bl72yOA6Bk7syIufHi74iG6pL7IZRO+AWVbSom2h0MMKM 3fiPHJo/qoBNiwcWCwZL8Ow8OcWJqkPpsqAkUum588dR4+LvHhq/TnWz6H8Uiv+c0f4DiPUpzN9p VjSK+1ALIPJo6lhvXLxBoD+N4gLzi+B5pH06Ij2NxNC5TiI8PJMapK0m45AMRoERmjs4PjwBystm PPmy6BmNRYMqdXQRwJjIIwKkbM/mgC+CUkpof98/wx3xKEBCRIqIyqkiiAH10vWAvXmrLeVB1EcH zQ+s2xEYr4ht6UC4I4zNR8R1A4Mz+80tDaKTdPkMJQ== =XkHe -----END PGP SIGNATURE----- --------------8shaeYFlj9VBmdzbidq3L38o-- From xen-devel-bounces@lists.xenproject.org Mon Jun 12 12:43:30 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 12:43:30 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547128.854361 (Exim 4.92) (envelope-from ) id 1q8gt9-0003lA-8E; Mon, 12 Jun 2023 12:43:15 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547128.854361; Mon, 12 Jun 2023 12:43:15 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8gt9-0003l3-49; Mon, 12 Jun 2023 12:43:15 +0000 Received: by outflank-mailman (input) for mailman id 547128; Mon, 12 Jun 2023 12:43:14 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8gt8-0003kx-72 for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 12:43:14 +0000 Received: from mail-lj1-x22a.google.com (mail-lj1-x22a.google.com [2a00:1450:4864:20::22a]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id b0f2b37e-091e-11ee-8611-37d641c3527e; Mon, 12 Jun 2023 14:43:11 +0200 (CEST) Received: by mail-lj1-x22a.google.com with SMTP id 38308e7fff4ca-2b1afe57bdfso50557351fa.0 for ; Mon, 12 Jun 2023 05:43:11 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: b0f2b37e-091e-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686573791; x=1689165791; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=N58B17C5fURhBB5nIx9iUkcEv0MPfPVKFfxs1GVB5Pc=; b=gi/gK9K84sIQD5ZZEWlSnHkF5V2H+6IUb6nNFvN4QS+9oB852fmKpBLH0OhYecQNnq jJF6VVt/dC1u407uMDyZiz5BfJBpf62ifXHfDGWY8ffXneKYn6j7DghCN7mT2ubxFNYs 7TmtzVhRhxKfYuMQEixF9mHroawExIcphRBubRQS0UlwU/uKDiHd3Omb8J1zJ0aPISd9 R3GKn1guN8BhPdlNa045rkQxdQUo83HH2xYmciowzsjexS3qut/pRKqLyqQ4fZ4kCRch xKUNSj2vwyg7uoDaS/ldQIue24a7KdeXRPJz6JouPK3DV8mkIQvMD8Al3Qiht1o0zkvC c3og== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686573791; x=1689165791; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=N58B17C5fURhBB5nIx9iUkcEv0MPfPVKFfxs1GVB5Pc=; b=hLO2J/AHDqEh+q3MQsUjrrjqvdrbEDMFf0rZRGN+9t6zDa6BorDaHyhjDZiYRN3MQ+ txjDl5VQGH0j0cYhIcKd1sDlA2fWo4s8khJ07ZdNhQK1l6n5cBDGIjXAbrtsngN5W3qz nY8fAAmyAZg2TYumPGoQzjp+4KLMW3alV20CT+EfUgPuY5YSOy+gvinSciAXknn0RuVu bsMP3TGW1nJpphNbmcwKCH+i+HzIxitNWn47lC+Dq8Xsc6rqiIGfk9uPMWuaKl5RL/Q+ amLDPKUGxhC5xWwSlzQ2KjRLNrPf5wUqdRtpu8OadlSUsJROWNRd38BuvoRhbeDO8ZXd faWA== X-Gm-Message-State: AC+VfDyzLwdJgzGL2x80e47zC5WsRKoc2UJsP8dmjg3b729KI5MrDLJs Fo6AIHjHFhu+pw4dVf8ZAFnB5et8gwJeJkyy0lY= X-Google-Smtp-Source: ACHHUZ4lFekx0o8+JnU/Vu/KsFWf/lorng1VqvXq6OPSHmxg5Bz4uHFKMgAy71vh88lU55xyyms8qE0RrIl235Tfim8= X-Received: by 2002:a2e:8e82:0:b0:2b1:b6e8:60b6 with SMTP id z2-20020a2e8e82000000b002b1b6e860b6mr2535623ljk.4.1686573790855; Mon, 12 Jun 2023 05:43:10 -0700 (PDT) MIME-Version: 1.0 References: <20230608025655.1674357-1-Jiqian.Chen@amd.com> <20230608025655.1674357-2-Jiqian.Chen@amd.com> In-Reply-To: <20230608025655.1674357-2-Jiqian.Chen@amd.com> From: =?UTF-8?B?TWFyYy1BbmRyw6kgTHVyZWF1?= Date: Mon, 12 Jun 2023 14:42:55 +0200 Message-ID: Subject: Re: [QEMU PATCH 1/1] virtgpu: do not destroy resources when guest suspend To: Jiqian Chen , Gerd Hoffmann , Damien Hedde Cc: "Michael S . Tsirkin" , Stefano Stabellini , Anthony PERARD , =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= , Jan Beulich , Antonio Caggiano , "Dr . David Alan Gilbert" , Robert Beckett , qemu-devel@nongnu.org, xen-devel@lists.xenproject.org, Alex Deucher , Christian Koenig , Stewart Hildebrand , Xenia Ragiadakou , Honglei Huang , Julia Zhang , Huang Rui Content-Type: multipart/alternative; boundary="000000000000b105e705fdee0f2d" --000000000000b105e705fdee0f2d Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Hi On Thu, Jun 8, 2023 at 6:26=E2=80=AFAM Jiqian Chen wr= ote: > After suspending and resuming guest VM, you will get > a black screen, and the display can't come back. > > This is because when guest did suspending, it called > into qemu to call virtio_gpu_gl_reset. In function > virtio_gpu_gl_reset, it destroyed resources and reset > renderer, which were used for display. As a result, > guest's screen can't come back to the time when it was > suspended and only showed black. > > So, this patch adds a new ctrl message > VIRTIO_GPU_CMD_STATUS_FREEZING to get notification from > guest. If guest is during suspending, it sets freezing > status of virtgpu to true, this will prevent destroying > resources and resetting renderer when guest calls into > virtio_gpu_gl_reset. If guest is during resuming, it sets > freezing to false, and then virtio_gpu_gl_reset will keep > its origin actions and has no other impaction. > > Signed-off-by: Jiqian Chen > --- > hw/display/virtio-gpu-gl.c | 9 ++++++- > hw/display/virtio-gpu-virgl.c | 3 +++ > hw/display/virtio-gpu.c | 26 +++++++++++++++++++-- > include/hw/virtio/virtio-gpu.h | 3 +++ > include/standard-headers/linux/virtio_gpu.h | 9 +++++++ > 5 files changed, 47 insertions(+), 3 deletions(-) > > diff --git a/hw/display/virtio-gpu-gl.c b/hw/display/virtio-gpu-gl.c > index e06be60dfb..e11ad233eb 100644 > --- a/hw/display/virtio-gpu-gl.c > +++ b/hw/display/virtio-gpu-gl.c > @@ -100,7 +100,14 @@ static void virtio_gpu_gl_reset(VirtIODevice *vdev) > */ > if (gl->renderer_inited && !gl->renderer_reset) { > virtio_gpu_virgl_reset_scanout(g); > - gl->renderer_reset =3D true; > + /* > + * If guest is suspending, we shouldn't reset renderer, > + * otherwise, the display can't come back to the time when > + * it was suspended after guest resumed. > + */ > + if (!g->freezing) { > + gl->renderer_reset =3D true; > + } > } > } > > diff --git a/hw/display/virtio-gpu-virgl.c b/hw/display/virtio-gpu-virgl.= c > index 73cb92c8d5..183ec92d53 100644 > --- a/hw/display/virtio-gpu-virgl.c > +++ b/hw/display/virtio-gpu-virgl.c > @@ -464,6 +464,9 @@ void virtio_gpu_virgl_process_cmd(VirtIOGPU *g, > case VIRTIO_GPU_CMD_GET_EDID: > virtio_gpu_get_edid(g, cmd); > break; > + case VIRTIO_GPU_CMD_STATUS_FREEZING: > + virtio_gpu_cmd_status_freezing(g, cmd); > + break; > default: > cmd->error =3D VIRTIO_GPU_RESP_ERR_UNSPEC; > break; > diff --git a/hw/display/virtio-gpu.c b/hw/display/virtio-gpu.c > index 5e15c79b94..8f235d7848 100644 > --- a/hw/display/virtio-gpu.c > +++ b/hw/display/virtio-gpu.c > @@ -373,6 +373,16 @@ static void virtio_gpu_resource_create_blob(VirtIOGP= U > *g, > QTAILQ_INSERT_HEAD(&g->reslist, res, next); > } > > +void virtio_gpu_cmd_status_freezing(VirtIOGPU *g, > + struct virtio_gpu_ctrl_command *cmd) > +{ > + struct virtio_gpu_status_freezing sf; > + > + VIRTIO_GPU_FILL_CMD(sf); > + virtio_gpu_bswap_32(&sf, sizeof(sf)); > + g->freezing =3D sf.freezing; > +} > + > static void virtio_gpu_disable_scanout(VirtIOGPU *g, int scanout_id) > { > struct virtio_gpu_scanout *scanout =3D > &g->parent_obj.scanout[scanout_id]; > @@ -986,6 +996,9 @@ void virtio_gpu_simple_process_cmd(VirtIOGPU *g, > case VIRTIO_GPU_CMD_RESOURCE_DETACH_BACKING: > virtio_gpu_resource_detach_backing(g, cmd); > break; > + case VIRTIO_GPU_CMD_STATUS_FREEZING: > + virtio_gpu_cmd_status_freezing(g, cmd); > + break; > default: > cmd->error =3D VIRTIO_GPU_RESP_ERR_UNSPEC; > break; > @@ -1344,6 +1357,8 @@ void virtio_gpu_device_realize(DeviceState *qdev, > Error **errp) > QTAILQ_INIT(&g->reslist); > QTAILQ_INIT(&g->cmdq); > QTAILQ_INIT(&g->fenceq); > + > + g->freezing =3D false; > } > > void virtio_gpu_reset(VirtIODevice *vdev) > @@ -1352,8 +1367,15 @@ void virtio_gpu_reset(VirtIODevice *vdev) > struct virtio_gpu_simple_resource *res, *tmp; > struct virtio_gpu_ctrl_command *cmd; > > - QTAILQ_FOREACH_SAFE(res, &g->reslist, next, tmp) { > - virtio_gpu_resource_destroy(g, res); > + /* > + * If guest is suspending, we shouldn't destroy resources, > + * otherwise, the display can't come back to the time when > + * it was suspended after guest resumed. > + */ > + if (!g->freezing) { > + QTAILQ_FOREACH_SAFE(res, &g->reslist, next, tmp) { > + virtio_gpu_resource_destroy(g, res); > + } > } > > while (!QTAILQ_EMPTY(&g->cmdq)) { > diff --git a/include/hw/virtio/virtio-gpu.h > b/include/hw/virtio/virtio-gpu.h > index 2e28507efe..c21c2990fb 100644 > --- a/include/hw/virtio/virtio-gpu.h > +++ b/include/hw/virtio/virtio-gpu.h > @@ -173,6 +173,7 @@ struct VirtIOGPU { > > uint64_t hostmem; > > + bool freezing; > bool processing_cmdq; > QEMUTimer *fence_poll; > QEMUTimer *print_stats; > @@ -284,5 +285,7 @@ void virtio_gpu_virgl_reset_scanout(VirtIOGPU *g); > void virtio_gpu_virgl_reset(VirtIOGPU *g); > int virtio_gpu_virgl_init(VirtIOGPU *g); > int virtio_gpu_virgl_get_num_capsets(VirtIOGPU *g); > +void virtio_gpu_cmd_status_freezing(VirtIOGPU *g, > + struct virtio_gpu_ctrl_command *cmd); > > #endif > diff --git a/include/standard-headers/linux/virtio_gpu.h > b/include/standard-headers/linux/virtio_gpu.h > index 2da48d3d4c..aefffbd751 100644 > --- a/include/standard-headers/linux/virtio_gpu.h > +++ b/include/standard-headers/linux/virtio_gpu.h > @@ -116,6 +116,9 @@ enum virtio_gpu_ctrl_type { > VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID, > VIRTIO_GPU_RESP_ERR_INVALID_CONTEXT_ID, > VIRTIO_GPU_RESP_ERR_INVALID_PARAMETER, > + > + /* status */ > + VIRTIO_GPU_CMD_STATUS_FREEZING =3D 0x1300, > }; > Adding a new command requires new feature flag (and maybe it should be in the <0x1000 range instead) But I am not sure we need a new message at the virtio-gpu level. Gerd, wdyt= ? Maybe it's not a good place to reset all GPU resources during QEMU reset() after all, if it's called during s3 and there is no mechanism to restore it. Damien? thanks ... > enum virtio_gpu_shm_id { > @@ -453,4 +456,10 @@ struct virtio_gpu_resource_unmap_blob { > uint32_t padding; > }; > > +/* VIRTIO_GPU_CMD_STATUS_FREEZING */ > +struct virtio_gpu_status_freezing { > + struct virtio_gpu_ctrl_hdr hdr; > + __u32 freezing; > +}; > + > #endif > -- > 2.34.1 > > > --=20 Marc-Andr=C3=A9 Lureau --000000000000b105e705fdee0f2d Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Hi

On Thu, Jun 8, 2023 at 6:26=E2=80= =AFAM Jiqian Chen <Jiqian.Chen@am= d.com> wrote:
After suspending and resuming guest VM, you will get
a black screen, and the display can't come back.

This is because when guest did suspending, it called
into qemu to call virtio_gpu_gl_reset. In function
virtio_gpu_gl_reset, it destroyed resources and reset
renderer, which were used for display. As a result,
guest's screen can't come back to the time when it was
suspended and only showed black.

So, this patch adds a new ctrl message
VIRTIO_GPU_CMD_STATUS_FREEZING to get notification from
guest. If guest is during suspending, it sets freezing
status of virtgpu to true, this will prevent destroying
resources and resetting renderer when guest calls into
virtio_gpu_gl_reset. If guest is during resuming, it sets
freezing to false, and then virtio_gpu_gl_reset will keep
its origin actions and has no other impaction.

Signed-off-by: Jiqian Chen <Jiqian.Chen@amd.com>
---
=C2=A0hw/display/virtio-gpu-gl.c=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 =C2=A0 |=C2=A0 9 ++++++-
=C2=A0hw/display/virtio-gpu-virgl.c=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 =C2=A0|=C2=A0 3 +++
=C2=A0hw/display/virtio-gpu.c=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0| 26 +++++++++++++++++++--
=C2=A0include/hw/virtio/virtio-gpu.h=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 |=C2=A0 3 +++
=C2=A0include/standard-headers/linux/virtio_gpu.h |=C2=A0 9 +++++++
=C2=A05 files changed, 47 insertions(+), 3 deletions(-)

diff --git a/hw/display/virtio-gpu-gl.c b/hw/display/virtio-gpu-gl.c
index e06be60dfb..e11ad233eb 100644
--- a/hw/display/virtio-gpu-gl.c
+++ b/hw/display/virtio-gpu-gl.c
@@ -100,7 +100,14 @@ static void virtio_gpu_gl_reset(VirtIODevice *vdev) =C2=A0 =C2=A0 =C2=A0 */
=C2=A0 =C2=A0 =C2=A0if (gl->renderer_inited && !gl->renderer_= reset) {
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0virtio_gpu_virgl_reset_scanout(g);
-=C2=A0 =C2=A0 =C2=A0 =C2=A0 gl->renderer_reset =3D true;
+=C2=A0 =C2=A0 =C2=A0 =C2=A0 /*
+=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0* If guest is suspending, we shouldn'= ;t reset renderer,
+=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0* otherwise, the display can't come = back to the time when
+=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0* it was suspended after guest resumed.<= br> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0*/
+=C2=A0 =C2=A0 =C2=A0 =C2=A0 if (!g->freezing) {
+=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 gl->renderer_reset =3D true;<= br> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 }
=C2=A0 =C2=A0 =C2=A0}
=C2=A0}

diff --git a/hw/display/virtio-gpu-virgl.c b/hw/display/virtio-gpu-virgl.c<= br> index 73cb92c8d5..183ec92d53 100644
--- a/hw/display/virtio-gpu-virgl.c
+++ b/hw/display/virtio-gpu-virgl.c
@@ -464,6 +464,9 @@ void virtio_gpu_virgl_process_cmd(VirtIOGPU *g,
=C2=A0 =C2=A0 =C2=A0case VIRTIO_GPU_CMD_GET_EDID:
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0virtio_gpu_get_edid(g, cmd);
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0break;
+=C2=A0 =C2=A0 case VIRTIO_GPU_CMD_STATUS_FREEZING:
+=C2=A0 =C2=A0 =C2=A0 =C2=A0 virtio_gpu_cmd_status_freezing(g, cmd);
+=C2=A0 =C2=A0 =C2=A0 =C2=A0 break;
=C2=A0 =C2=A0 =C2=A0default:
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0cmd->error =3D VIRTIO_GPU_RESP_ERR_UNS= PEC;
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0break;
diff --git a/hw/display/virtio-gpu.c b/hw/display/virtio-gpu.c
index 5e15c79b94..8f235d7848 100644
--- a/hw/display/virtio-gpu.c
+++ b/hw/display/virtio-gpu.c
@@ -373,6 +373,16 @@ static void virtio_gpu_resource_create_blob(VirtIOGPU = *g,
=C2=A0 =C2=A0 =C2=A0QTAILQ_INSERT_HEAD(&g->reslist, res, next);
=C2=A0}

+void virtio_gpu_cmd_status_freezing(VirtIOGPU *g,
+=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 =C2=A0struct virtio_gpu_ctrl_command *cmd)
+{
+=C2=A0 =C2=A0 struct virtio_gpu_status_freezing sf;
+
+=C2=A0 =C2=A0 VIRTIO_GPU_FILL_CMD(sf);
+=C2=A0 =C2=A0 virtio_gpu_bswap_32(&sf, sizeof(sf));
+=C2=A0 =C2=A0 g->freezing =3D sf.freezing;
+}
+
=C2=A0static void virtio_gpu_disable_scanout(VirtIOGPU *g, int scanout_id)<= br> =C2=A0{
=C2=A0 =C2=A0 =C2=A0struct virtio_gpu_scanout *scanout =3D &g->paren= t_obj.scanout[scanout_id];
@@ -986,6 +996,9 @@ void virtio_gpu_simple_process_cmd(VirtIOGPU *g,
=C2=A0 =C2=A0 =C2=A0case VIRTIO_GPU_CMD_RESOURCE_DETACH_BACKING:
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0virtio_gpu_resource_detach_backing(g, cmd= );
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0break;
+=C2=A0 =C2=A0 case VIRTIO_GPU_CMD_STATUS_FREEZING:
+=C2=A0 =C2=A0 =C2=A0 =C2=A0 virtio_gpu_cmd_status_freezing(g, cmd);
+=C2=A0 =C2=A0 =C2=A0 =C2=A0 break;
=C2=A0 =C2=A0 =C2=A0default:
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0cmd->error =3D VIRTIO_GPU_RESP_ERR_UNS= PEC;
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0break;
@@ -1344,6 +1357,8 @@ void virtio_gpu_device_realize(DeviceState *qdev, Err= or **errp)
=C2=A0 =C2=A0 =C2=A0QTAILQ_INIT(&g->reslist);
=C2=A0 =C2=A0 =C2=A0QTAILQ_INIT(&g->cmdq);
=C2=A0 =C2=A0 =C2=A0QTAILQ_INIT(&g->fenceq);
+
+=C2=A0 =C2=A0 g->freezing =3D false;
=C2=A0}

=C2=A0void virtio_gpu_reset(VirtIODevice *vdev)
@@ -1352,8 +1367,15 @@ void virtio_gpu_reset(VirtIODevice *vdev)
=C2=A0 =C2=A0 =C2=A0struct virtio_gpu_simple_resource *res, *tmp;
=C2=A0 =C2=A0 =C2=A0struct virtio_gpu_ctrl_command *cmd;

-=C2=A0 =C2=A0 QTAILQ_FOREACH_SAFE(res, &g->reslist, next, tmp) { -=C2=A0 =C2=A0 =C2=A0 =C2=A0 virtio_gpu_resource_destroy(g, res);
+=C2=A0 =C2=A0 /*
+=C2=A0 =C2=A0 =C2=A0* If guest is suspending, we shouldn't destroy res= ources,
+=C2=A0 =C2=A0 =C2=A0* otherwise, the display can't come back to the ti= me when
+=C2=A0 =C2=A0 =C2=A0* it was suspended after guest resumed.
+=C2=A0 =C2=A0 =C2=A0*/
+=C2=A0 =C2=A0 if (!g->freezing) {
+=C2=A0 =C2=A0 =C2=A0 =C2=A0 QTAILQ_FOREACH_SAFE(res, &g->reslist, n= ext, tmp) {
+=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 virtio_gpu_resource_destroy(g, r= es);
+=C2=A0 =C2=A0 =C2=A0 =C2=A0 }
=C2=A0 =C2=A0 =C2=A0}

=C2=A0 =C2=A0 =C2=A0while (!QTAILQ_EMPTY(&g->cmdq)) {
diff --git a/include/hw/virtio/virtio-gpu.h b/include/hw/virtio/virtio-gpu.= h
index 2e28507efe..c21c2990fb 100644
--- a/include/hw/virtio/virtio-gpu.h
+++ b/include/hw/virtio/virtio-gpu.h
@@ -173,6 +173,7 @@ struct VirtIOGPU {

=C2=A0 =C2=A0 =C2=A0uint64_t hostmem;

+=C2=A0 =C2=A0 bool freezing;
=C2=A0 =C2=A0 =C2=A0bool processing_cmdq;
=C2=A0 =C2=A0 =C2=A0QEMUTimer *fence_poll;
=C2=A0 =C2=A0 =C2=A0QEMUTimer *print_stats;
@@ -284,5 +285,7 @@ void virtio_gpu_virgl_reset_scanout(VirtIOGPU *g);
=C2=A0void virtio_gpu_virgl_reset(VirtIOGPU *g);
=C2=A0int virtio_gpu_virgl_init(VirtIOGPU *g);
=C2=A0int virtio_gpu_virgl_get_num_capsets(VirtIOGPU *g);
+void virtio_gpu_cmd_status_freezing(VirtIOGPU *g,
+=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 =C2=A0struct virtio_gpu_ctrl_command *cmd);

=C2=A0#endif
diff --git a/include/standard-headers/linux/virtio_gpu.h b/include/standard= -headers/linux/virtio_gpu.h
index 2da48d3d4c..aefffbd751 100644
--- a/include/standard-headers/linux/virtio_gpu.h
+++ b/include/standard-headers/linux/virtio_gpu.h
@@ -116,6 +116,9 @@ enum virtio_gpu_ctrl_type {
=C2=A0 =C2=A0 =C2=A0 =C2=A0 VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID,
=C2=A0 =C2=A0 =C2=A0 =C2=A0 VIRTIO_GPU_RESP_ERR_INVALID_CONTEXT_ID,
=C2=A0 =C2=A0 =C2=A0 =C2=A0 VIRTIO_GPU_RESP_ERR_INVALID_PARAMETER,
+
+=C2=A0 =C2=A0 =C2=A0 =C2=A0/* status */
+=C2=A0 =C2=A0 =C2=A0 =C2=A0VIRTIO_GPU_CMD_STATUS_FREEZING =3D 0x1300,
=C2=A0};

Adding a new command requires = new feature flag (and maybe it should be in the <0x1000 range instead) <= br>

But I am not sure we need a new message at the= virtio-gpu level. Gerd, wdyt?

Maybe it's = not a good place to reset all GPU resources during QEMU reset() after all, = if it's called during s3 and there is no mechanism to restore it. Damie= n?

thanks


<= div>...
=C2=A0enum virtio_gpu_shm_id {
@@ -453,4 +456,10 @@ struct virtio_gpu_resource_unmap_blob {
=C2=A0 =C2=A0 =C2=A0 =C2=A0 uint32_t padding;
=C2=A0};

+/* VIRTIO_GPU_CMD_STATUS_FREEZING */
+struct virtio_gpu_status_freezing {
+=C2=A0 =C2=A0 =C2=A0 =C2=A0struct virtio_gpu_ctrl_hdr hdr;
+=C2=A0 =C2=A0 =C2=A0 =C2=A0__u32 freezing;
+};
+
=C2=A0#endif
--
2.34.1




--
Marc-Andr=C3= =A9 Lureau
--000000000000b105e705fdee0f2d-- From xen-devel-bounces@lists.xenproject.org Mon Jun 12 12:47:58 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 12:47:58 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547135.854371 (Exim 4.92) (envelope-from ) id 1q8gxg-0004Ru-RC; Mon, 12 Jun 2023 12:47:56 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547135.854371; Mon, 12 Jun 2023 12:47:56 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8gxg-0004Rn-OM; Mon, 12 Jun 2023 12:47:56 +0000 Received: by outflank-mailman (input) for mailman id 547135; Mon, 12 Jun 2023 12:47:55 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8gxf-0004Rh-ID for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 12:47:55 +0000 Received: from mail-lf1-x132.google.com (mail-lf1-x132.google.com [2a00:1450:4864:20::132]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 59553b6e-091f-11ee-b232-6b7b168915f2; Mon, 12 Jun 2023 14:47:54 +0200 (CEST) Received: by mail-lf1-x132.google.com with SMTP id 2adb3069b0e04-4f62b512fe2so5186204e87.1 for ; Mon, 12 Jun 2023 05:47:54 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 59553b6e-091f-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686574074; x=1689166074; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=Jlwpx67/GeYfFh9oneqzHY/viw5PwbovhEfwiRyUpJw=; b=RfPaDcf1Rco5b0+NmwJEnIUvhopJD2aQz28B5WpurrO/e15YNvQkZoLr7p/rTgK2t/ YmHobqo6nxTTmTKrjcUYAIjeVXMspQvQR9qtdVM/Ngs0wQpAtqdc5ykNk2gnSLgMUMQ+ 0oGOWj7rIiyWv7irc0WJU11pRzF2RveVZ3YaFSvC35T5LJAw5quA7kYWFZ4MCPspql5E xvSahqB3TAqadS3D0x9rWclOL/+Cv4lq0bw1oa51ShExTfiWRn762MwsKIW5QyLZOxKz Cs6q+fCFF8UEur7IuIURilv28b03TV57e5K07PiL3B89wLF+jZRsghsD5yWEO7PD02s0 G99Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686574074; x=1689166074; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=Jlwpx67/GeYfFh9oneqzHY/viw5PwbovhEfwiRyUpJw=; b=hun1P9KeC47tbwlrXtoP3alX+lU4hTE658+Sp/4YRqkDo3zdqdEQREuRQWtpR0t0l5 Ag7NO5wslA66liMLyx6EJBv0oFKtxF87zPgbrankKFQCX41r2u6qcVMMEi5fc9vs0YUQ zZr/RtieddngGQK1ZNo1MFbNNAr/JYbcRDjxhLOEm6xTxVNUzXmgMH/nO4fMcv/T0ZUV FDnDgrW44BDTyHOvszD9S0TXfClh1mtr2SsxciIASC76QJ/rwzB9kGwqq/9w7NXqtfEI j/mc1zw9vbEGG/VahB9OkgLpwPU3P4fA9N2pQ7yJ0Jy6Am8YrY7/L3jFdoZGHwh9BBqt eXAA== X-Gm-Message-State: AC+VfDzXgpiaTk14NJE8/7zff7KY6RbvqrFDa25Ft0BhlnF8Mi2lJSkA eoEqhXKvrA4rDIN439YTAJ8yMlBtBZjspTjLMYp2Bs9D X-Google-Smtp-Source: ACHHUZ6IxhJ9aCoNCVnrx9KABZfRHR2+1UYDorMIb5jlNPd2TeI5u671xPgososOTLpD8bxyv4YnOov9wo7OIbkhXao= X-Received: by 2002:a19:9101:0:b0:4f6:2b29:b446 with SMTP id t1-20020a199101000000b004f62b29b446mr4299156lfd.21.1686574073858; Mon, 12 Jun 2023 05:47:53 -0700 (PDT) MIME-Version: 1.0 References: <2dc50b58-a4e4-3e32-1876-94412b14b052@suse.com> In-Reply-To: From: Jason Andryuk Date: Mon, 12 Jun 2023 08:47:41 -0400 Message-ID: Subject: Re: [PATCH 1/5] xen-mfndump: drop dead assignment to "page" from lookup_pte_func() To: Jan Beulich Cc: "xen-devel@lists.xenproject.org" , Anthony Perard , Wei Liu Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Mon, Jun 12, 2023 at 7:45=E2=80=AFAM Jan Beulich wro= te: > > The variable isn't used past the loop, and its value also isn't > meaningful across iterations. Reduce its scope to make this more > obvious. > > Coverity ID: 1532310 > Fixes: ae763e422430 ("tools/misc: introduce xen-mfndump") > Signed-off-by: Jan Beulich Reviewed-by: Jason Andryuk Thanks, Jason From xen-devel-bounces@lists.xenproject.org Mon Jun 12 13:01:11 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 13:01:11 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547140.854381 (Exim 4.92) (envelope-from ) id 1q8hAK-0006us-0X; Mon, 12 Jun 2023 13:01:00 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547140.854381; Mon, 12 Jun 2023 13:00:59 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8hAJ-0006ul-T1; Mon, 12 Jun 2023 13:00:59 +0000 Received: by outflank-mailman (input) for mailman id 547140; Mon, 12 Jun 2023 13:00:58 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8hAI-0006uf-Rl for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 13:00:58 +0000 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by se1-gles-flk1.inumbo.com (Halon) with ESMTP id 2aed71e8-0921-11ee-8611-37d641c3527e; Mon, 12 Jun 2023 15:00:56 +0200 (CEST) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 007EA1FB; Mon, 12 Jun 2023 06:01:40 -0700 (PDT) Received: from C3HXLD123V.arm.com (unknown [10.57.74.78]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 21C893F587; Mon, 12 Jun 2023 06:00:54 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 2aed71e8-0921-11ee-8611-37d641c3527e From: Bertrand Marquis To: xen-devel@lists.xenproject.org Cc: Stefano Stabellini , Julien Grall , Volodymyr Babchuk Subject: [PATCH v2] xen/arm: rename guest_cpuinfo in domain_cpuinfo Date: Mon, 12 Jun 2023 15:00:46 +0200 Message-Id: X-Mailer: git-send-email 2.39.2 (Apple Git-143) MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Rename the guest_cpuinfo structure to domain_cpuinfo as it is not only used for guests but also for dom0 so domain is a more suitable name. While there also rename the create_guest_cpuinfo function to create_domain_cpuinfo to be coherent and fix comments accordingly. Signed-off-by: Bertrand Marquis --- Changes in v2: - fix 2 more comments to domain instead of guest (Julien) --- xen/arch/arm/arm64/vsysreg.c | 6 ++-- xen/arch/arm/cpufeature.c | 44 +++++++++++++-------------- xen/arch/arm/include/asm/cpufeature.h | 2 +- xen/arch/arm/vcpreg.c | 2 +- 4 files changed, 27 insertions(+), 27 deletions(-) diff --git a/xen/arch/arm/arm64/vsysreg.c b/xen/arch/arm/arm64/vsysreg.c index fe31f7b3827f..b5d54c569b33 100644 --- a/xen/arch/arm/arm64/vsysreg.c +++ b/xen/arch/arm/arm64/vsysreg.c @@ -76,7 +76,7 @@ TVM_REG(CONTEXTIDR_EL1) case HSR_SYSREG_##reg: \ { \ return handle_ro_read_val(regs, regidx, hsr.sysreg.read, hsr, \ - 1, guest_cpuinfo.field.bits[offset]); \ + 1, domain_cpuinfo.field.bits[offset]); \ } void do_sysreg(struct cpu_user_regs *regs, @@ -300,7 +300,7 @@ void do_sysreg(struct cpu_user_regs *regs, case HSR_SYSREG_ID_AA64PFR0_EL1: { - register_t guest_reg_value = guest_cpuinfo.pfr64.bits[0]; + register_t guest_reg_value = domain_cpuinfo.pfr64.bits[0]; if ( is_sve_domain(v->domain) ) { @@ -336,7 +336,7 @@ void do_sysreg(struct cpu_user_regs *regs, * When the guest has the SVE feature enabled, the whole id_aa64zfr0_el1 * needs to be exposed. */ - register_t guest_reg_value = guest_cpuinfo.zfr64.bits[0]; + register_t guest_reg_value = domain_cpuinfo.zfr64.bits[0]; if ( is_sve_domain(v->domain) ) guest_reg_value = system_cpuinfo.zfr64.bits[0]; diff --git a/xen/arch/arm/cpufeature.c b/xen/arch/arm/cpufeature.c index b53e1a977601..f43d5cb338d0 100644 --- a/xen/arch/arm/cpufeature.c +++ b/xen/arch/arm/cpufeature.c @@ -14,7 +14,7 @@ DECLARE_BITMAP(cpu_hwcaps, ARM_NCAPS); -struct cpuinfo_arm __read_mostly guest_cpuinfo; +struct cpuinfo_arm __read_mostly domain_cpuinfo; #ifdef CONFIG_ARM_64 static bool has_sb_instruction(const struct arm_cpu_capabilities *entry) @@ -190,46 +190,46 @@ void identify_cpu(struct cpuinfo_arm *c) /* * This function is creating a cpuinfo structure with values modified to mask - * all cpu features that should not be published to guest. - * The created structure is then used to provide ID registers values to guests. + * all cpu features that should not be published to domains. + * The created structure is then used to provide ID registers values to domains. */ -static int __init create_guest_cpuinfo(void) +static int __init create_domain_cpuinfo(void) { - /* Use the sanitized cpuinfo as initial guest cpuinfo */ - guest_cpuinfo = system_cpuinfo; + /* Use the sanitized cpuinfo as initial domain cpuinfo */ + domain_cpuinfo = system_cpuinfo; #ifdef CONFIG_ARM_64 /* Hide MPAM support as xen does not support it */ - guest_cpuinfo.pfr64.mpam = 0; - guest_cpuinfo.pfr64.mpam_frac = 0; + domain_cpuinfo.pfr64.mpam = 0; + domain_cpuinfo.pfr64.mpam_frac = 0; /* Hide SVE by default */ - guest_cpuinfo.pfr64.sve = 0; - guest_cpuinfo.zfr64.bits[0] = 0; + domain_cpuinfo.pfr64.sve = 0; + domain_cpuinfo.zfr64.bits[0] = 0; /* Hide MTE support as Xen does not support it */ - guest_cpuinfo.pfr64.mte = 0; + domain_cpuinfo.pfr64.mte = 0; /* Hide PAC support as Xen does not support it */ - guest_cpuinfo.isa64.apa = 0; - guest_cpuinfo.isa64.api = 0; - guest_cpuinfo.isa64.gpa = 0; - guest_cpuinfo.isa64.gpi = 0; + domain_cpuinfo.isa64.apa = 0; + domain_cpuinfo.isa64.api = 0; + domain_cpuinfo.isa64.gpa = 0; + domain_cpuinfo.isa64.gpi = 0; #endif /* Hide AMU support */ #ifdef CONFIG_ARM_64 - guest_cpuinfo.pfr64.amu = 0; + domain_cpuinfo.pfr64.amu = 0; #endif - guest_cpuinfo.pfr32.amu = 0; + domain_cpuinfo.pfr32.amu = 0; /* Hide RAS support as Xen does not support it */ #ifdef CONFIG_ARM_64 - guest_cpuinfo.pfr64.ras = 0; - guest_cpuinfo.pfr64.ras_frac = 0; + domain_cpuinfo.pfr64.ras = 0; + domain_cpuinfo.pfr64.ras_frac = 0; #endif - guest_cpuinfo.pfr32.ras = 0; - guest_cpuinfo.pfr32.ras_frac = 0; + domain_cpuinfo.pfr32.ras = 0; + domain_cpuinfo.pfr32.ras_frac = 0; return 0; } @@ -237,7 +237,7 @@ static int __init create_guest_cpuinfo(void) * This function needs to be run after all smp are started to have * cpuinfo structures for all cores. */ -__initcall(create_guest_cpuinfo); +__initcall(create_domain_cpuinfo); /* * Local variables: diff --git a/xen/arch/arm/include/asm/cpufeature.h b/xen/arch/arm/include/asm/cpufeature.h index 03fe684b4d36..894f278a4a5a 100644 --- a/xen/arch/arm/include/asm/cpufeature.h +++ b/xen/arch/arm/include/asm/cpufeature.h @@ -461,7 +461,7 @@ static inline void update_system_features(const struct cpuinfo_arm *cpuinfo) extern struct cpuinfo_arm cpu_data[]; #define current_cpu_data cpu_data[smp_processor_id()] -extern struct cpuinfo_arm guest_cpuinfo; +extern struct cpuinfo_arm domain_cpuinfo; #endif /* __ASSEMBLY__ */ diff --git a/xen/arch/arm/vcpreg.c b/xen/arch/arm/vcpreg.c index 4adfc0a68d0e..39aeda9dab62 100644 --- a/xen/arch/arm/vcpreg.c +++ b/xen/arch/arm/vcpreg.c @@ -169,7 +169,7 @@ TVM_REG32(CONTEXTIDR, CONTEXTIDR_EL1) case HSR_CPREG32(reg): \ { \ return handle_ro_read_val(regs, regidx, cp32.read, hsr, 1, \ - guest_cpuinfo.field.bits[offset]);\ + domain_cpuinfo.field.bits[offset]);\ } /* helper to define cases for all registers for one CRm value */ -- 2.39.2 (Apple Git-143) From xen-devel-bounces@lists.xenproject.org Mon Jun 12 13:48:45 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 13:48:45 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547146.854391 (Exim 4.92) (envelope-from ) id 1q8huK-000387-Be; Mon, 12 Jun 2023 13:48:32 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547146.854391; Mon, 12 Jun 2023 13:48:32 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8huK-000380-86; Mon, 12 Jun 2023 13:48:32 +0000 Received: by outflank-mailman (input) for mailman id 547146; Mon, 12 Jun 2023 13:48:30 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8huI-00037u-FU for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 13:48:30 +0000 Received: from EUR05-AM6-obe.outbound.protection.outlook.com (mail-am6eur05on20612.outbound.protection.outlook.com [2a01:111:f400:7e1b::612]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id cfaa519f-0927-11ee-b232-6b7b168915f2; Mon, 12 Jun 2023 15:48:29 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by VI1PR04MB7120.eurprd04.prod.outlook.com (2603:10a6:800:124::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.29; Mon, 12 Jun 2023 13:48:25 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.039; Mon, 12 Jun 2023 13:48:25 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: cfaa519f-0927-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Xt5XTC+2dpfMrDOC2ukXbARp/WKeIM8ROU93AJUfsMWf61qEWGo6aXBy5fVE/s8Gg3CIoVwSxoNgGEIR1rdkupj8/9Z5kC+GpAfDo2Pt9wUoyAA1ChPHtlSHBZtEjdn1D1xCN2UxssyIiIfsF4NLWoXbui/4NFvngg0f7XFCW2ydbB2zzJDxHEq4dPxP4dtFZASxdxo5MV7o+25k3ieBHWcyypAH6sDjNX2/Msh7vGT0Olavf6DlVo2GTzpk1tY/fmmwK5KgMLVKPX5Ue19rDuhKruJeCO4Fb4RoQ+ohLbK7fVzbzohY+wrBPpEoTso4ZbBay5DTuVAVvEBk3v/8Fg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=THykHUDivjtyj8SV40sWxFCHsjWEitcQNrdaK+5l+Nk=; b=Tv0yKwudQ/tN3g2BiVIFXMp0f90P+MO6Wv/0jBz0ELvAPJhCbn4Qh9tl8p4uGx9z91Ef26aVGxeWOTbcGdEOHfsi+4y8C+W+YtXtlrH7IhOI4bJ8ibzv0ie85/hATYtdCahgZUNUf2EYAWD611T0t87mQwCe330fXeQ4arOaVa9wczveVXqgaZvgGoPsavYe0kpk65oeGJrkuo3isFwhM6c2y9HDwnf42J/wA2jQP1o+xMXMH1QrFoGqYalIBGJr2FCszBjF1rzxBrDMF/XSy2MSJa5XdVaFsHVNL+iXmzyhEKnIejKtk4fupx/YyanBk3WZUSnFuGLOthAWAPzCgQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=THykHUDivjtyj8SV40sWxFCHsjWEitcQNrdaK+5l+Nk=; b=2wB8QNNkUrIJHvoxcvCDWGO3LPJb1WyhTUlS0gshm+qR19mgvLuy0ujmTKIvSsqxkxyXmdc8EPgYWqYov7zsS1ydqUXpoxdeFK96GqoK90xImjtTcEuNNED2fguRPdVtwXHO0mbr/Qv9xmbcVKIwCcL1XZJess7yTsZX8uhSZqy/rD7RAALGntw2v7e0K66n95Xh1uKl9HU1rRaYZTNBP8V1bUnF+lCvx1y9aVSpPmNWuUqbWEzsod2Gpvh61nkRXxSQojag8y7GSzwQVmNnGB383IihE320QMJQwrao/COH+I1eiK0GHJAa6Q2EClrnFQQWGtEVtRAnXV6GDQHibA== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <4ac462c3-9cb6-f467-2b86-925fb068486d@suse.com> Date: Mon, 12 Jun 2023 15:48:23 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v1 5/8] xen/riscv: introduce identity mapping Content-Language: en-US To: Oleksii Kurochko Cc: Andrew Cooper , Bob Eshleman , Alistair Francis , Connor Davis , xen-devel@lists.xenproject.org References: <32aef31768cd81ffc8c848af6c29cd8510bbbf6d.1686080337.git.oleksii.kurochko@gmail.com> From: Jan Beulich In-Reply-To: <32aef31768cd81ffc8c848af6c29cd8510bbbf6d.1686080337.git.oleksii.kurochko@gmail.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR2P281CA0035.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:14::22) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|VI1PR04MB7120:EE_ X-MS-Office365-Filtering-Correlation-Id: 7fb9e3b1-8d55-4756-9ab3-08db6b4bb1c4 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: X6AJNfkmh7/oqsoyqVJTpfpAuWsL983KTZuy4d04RhnK9yQ68b0CCOBPJzaxVYoB82kxgbYBN1Tknrq2N6wq3e8py5+wUdyxQmNWvg7onwN53XamORsVleh3VdBVRejgAeg2XGcd8OktPeO4h/qnt/PWXgE4wHu4GLrTngqno4tcnD7GT02Kqfox7h9wPTkoxQNYdakXl1VU5Wl+tZhIafFEt+jROMqgms3EH2noNOMmgBV0GZ9o46jqW2kbgV9KjUhHoW0Oq37Czi0ohD5c2mdY7PAN1rAln1b8JmS62sea1XkIItL0yYlux0IRRB0dm4i2ePZeVRjQ/fOAfNZmozvk494+b1oovKQWMhtvghoEdQOFe1OYztLxfmbem0Oq1LT82wlLd0z5OnMCE9tRTs2n/KZ5PxNTqPwyIrkiDw0v1yEhtQ3ASE7OyTrkkeNlOeLLrLFjzdfenv/nvPB8xrxMhkvwDaDgBr/ouvQi8lE1x9ir468pZ/Xd3H8II7CxgYusokT7UFAFim4gpngkxZ+yBTs2KA7HNgE9NayONUfPd7FTsfVon0G1kRh9hIoGgFNVbBeOovk46C9Bco0gQdBXUvmgpLjGeSqE0IllI0doAMC9R0dEH1q9C7QPRHHpJJ9z0FOXYpG+63sLFDskFA== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(136003)(396003)(346002)(366004)(376002)(39850400004)(451199021)(5660300002)(8936002)(8676002)(2906002)(31686004)(66556008)(66946007)(66476007)(54906003)(6486002)(4326008)(26005)(6512007)(6506007)(53546011)(316002)(6916009)(41300700001)(186003)(83380400001)(2616005)(478600001)(36756003)(38100700002)(86362001)(31696002)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?SnRRVUJ1KzhTaVFLZkJXNUw5N1ZhcmpWMXhpWHZkQXl5ZnZBK0VSUUlmYlpv?= =?utf-8?B?SHlnMUplVGJZcm8zMXg5SVkvY25YYnVuTDRwaDBkOVJraStwRlBxeUM3ODcr?= =?utf-8?B?MkUvUDAvTFhYOGVWYzRCR2dqNE8xRHZCd0l0R1VlK1UreVBoWVA2MVRBZHpu?= =?utf-8?B?WjRocTNjZ01oaWVNaDhsTUZGbGlVKzQrd25rbENkSFJQS2oxcE5ZOUY5ZVEx?= =?utf-8?B?UFZEci9UWXc0S1crckRVaE1UTUw5UWtyU2dNVzFFVkpmQ0ZRSjhSMU1hOGt1?= =?utf-8?B?dHM5ano1R1lxT0Q2Z3k1NVp3eEJER2RXbDdjN1Z2UnJuUHMvbkUxRGRLUG4v?= =?utf-8?B?ZjBtbGttTUdDYzkxUzhGMm1UTFdoazVJVDIyOU1xdlN2UlNoYnh6UFYzcmxS?= =?utf-8?B?WnhnZ0l0M01McmIyWXpWdktIV2lISmZWRERqQ3F3N2RtaThLbXp2OTNnbld2?= =?utf-8?B?dDNOSXFzZFFtRzI4ZVZ5ZXRKUzNscjNvRitiUDFFWmo3ZENRU2I4YVRuTzB0?= =?utf-8?B?WUlUQXd3Z3piME9LbEZKU3ZESWcxNUhlM05QdHpXU29Nb0hFckZpMzFxQXM5?= =?utf-8?B?SnhXUUo1Ui9aQllaZXY4TDlXUFZRbThlMExCSS94TVhkZS9naXM5TjRJcUhR?= =?utf-8?B?VW5lUWR4VHB5bEFHSEVvSi9IQkQvWjRIcnlldURDMklMWWNVTXFmcjVzT2JM?= =?utf-8?B?bEljdmhoMGFrQVJvWmlZVS85M2UvWi8zTk4wbWtBR2gyR29OT3BNa2FJbEVB?= =?utf-8?B?SFo1VzZTMVJYQVYxYWpKNlMwVkRqYThGbFlIY3hTa2VJclgraFZhNGM0K0Fr?= =?utf-8?B?V3JpQ1p1OHlSY0ZwbmM1Z1ZYOFN1elRIZkc2RGl2VHo4SkJtVUl6bDlmVno2?= =?utf-8?B?SUtNRkNHWXNFaEE4b0NNL0FOa2U3VG9DZzRZNHNudGRkc2VZOStuU3Z0clEx?= =?utf-8?B?Mmswc2xLTm82ZDZtRUkrT1Vkb1R1MGJNSGdrSktrY01FMHBYdjBoVlFOeU9j?= =?utf-8?B?M2VqdkxVNU1yWkI3SU5kc2NnblVqdnVVM2NIYUdwNU16dVI0L0hvbmtBZVBM?= =?utf-8?B?UnR6ZlJ1Z01WVEZrQmVOOHViWkZyWXhQU081MVViMFJ6NmdwSUtDaXVMRUsy?= =?utf-8?B?RC9PSW16bkZXa1VZOS91TTh1SGhEaXNNUzRvdSsza1BVZ2VNTE1xUVo0VUo2?= =?utf-8?B?SXdIZTZLUm9ELzNiNk9Pa1BpMlBqY0NrNzZ4RlQ5aDdMeE5YczNSdk9yS0pR?= =?utf-8?B?b2lRTGtCRTUwejJuZlpqUmQyM3lhaGpMY05QeVp4UG5MbExPL1Z6ZXBxbTNr?= =?utf-8?B?SzBkb0srcGRnMCs5V1EzKzlISnVnSXFkb2IvTXVHdUhWVEtVMGl0UnJkeTFX?= =?utf-8?B?c01ZTDZVVExBSU9rSFJMMXdGOVQ1a0wzOVBBVGtHTDBxell0clJQYXVpZmEr?= =?utf-8?B?RUFyMm1VNnNiM3BVa2ltQ1RTV3NkeEQ5aFNBVVAxTzByY0RPMUVkNXRPL3dS?= =?utf-8?B?NmdaRDMxNkFQdHZHcC83WVBVbkJxVVA0Zkk5MnRhc0IwcnB0Y3B2VFFidFcr?= =?utf-8?B?T0s4eWRINWsxYzJqRFp1cHp4RXRFUE5Qclhxc2t4NjRDa2FyTktmcG1qU1cw?= =?utf-8?B?Y09ldndsc3A3SFloWGtSZHJzVjJqYk9wcVBqcjJIdWY1MUpBNzNqTndzL2ND?= =?utf-8?B?MWpkM2N3RHROK1J1SmthcnVMZ2RMTWVNYkJxYmRIa3lsRitSaFBidGs1RFZM?= =?utf-8?B?NG1SU1BQS1JxcTlTME84aHdGc2NQS3lMMkNybmYyM2lFZXZ6ZVJXN3NvcS9w?= =?utf-8?B?ZDE2aURZMEk4M2JFUk91R3U4d2pITXJGVFFiZ1p6OGZWOVEwT0lrako4aS9n?= =?utf-8?B?bVMxK3ZmNEl5SWM3cXphWlZReHMyNG5kYzZKeG82ZlV6ZkEweUU3SnR1YXBj?= =?utf-8?B?Z2VWV3BOWVRCKzd4YmgwVXJ2UWlwTDVqWThrMURXeGErREhpZVZLaU5YenpL?= =?utf-8?B?RDdMbWppVndJbFdxNUdEcnBTNVplMTE2emk0dVk2cVZLaXU4VEhmWTdDOE1i?= =?utf-8?B?WE52QlJ3YXAwYmpSajVtUHZyRDFGdC9lbng1aHNiNFF0L3BRUVlRQndHMlMr?= =?utf-8?Q?vupEA3MG45JEk+2bmT+11ytda?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 7fb9e3b1-8d55-4756-9ab3-08db6b4bb1c4 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Jun 2023 13:48:25.3915 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: cQr/Ql707XpGY9ZU58wx9djOiwwwvLkgNyc2VnU8z/H/t7GOljTQPLdPPA3f7u2qjjxmtuXF/RsIhicq+SOWFw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR04MB7120 On 06.06.2023 21:55, Oleksii Kurochko wrote: > The way how switch to virtual address was implemented in the > commit e66003e7be ("xen/riscv: introduce setup_initial_pages") > wasn't safe enough so identity mapping was introduced and > used. I don't think this is sufficient as a description. You want to make clear what the "not safe enough" is, and you also want to go into more detail as to the solution chosen. I'm particularly puzzled that you map just two singular pages ... > @@ -35,8 +40,10 @@ static unsigned long phys_offset; > * > * It might be needed one more page table in case when Xen load address > * isn't 2 MB aligned. > + * > + * 3 additional page tables are needed for identity mapping. > */ > -#define PGTBL_INITIAL_COUNT ((CONFIG_PAGING_LEVELS - 1) + 1) > +#define PGTBL_INITIAL_COUNT ((CONFIG_PAGING_LEVELS - 1) + 1 + 3) What is this 3 coming from? It feels like the value should (again) somehow depend on CONFIG_PAGING_LEVELS. > @@ -108,16 +116,18 @@ static void __init setup_initial_mapping(struct mmu_desc *mmu_desc, > { > unsigned long paddr = (page_addr - map_start) + pa_start; > unsigned int permissions = PTE_LEAF_DEFAULT; > + unsigned long addr = (is_identity_mapping) ? Nit: No need for parentheses here. > + page_addr : LINK_TO_LOAD(page_addr); As a remark, while we want binary operators at the end of lines when wrapping, we usually do things differently for the ternary operator: Either unsigned long addr = is_identity_mapping ? page_addr : LINK_TO_LOAD(page_addr); or unsigned long addr = is_identity_mapping ? page_addr : LINK_TO_LOAD(page_addr); . > @@ -232,22 +242,27 @@ void __init setup_initial_pagetables(void) > linker_start, > linker_end, > load_start); > + > + if ( linker_start == load_start ) > + return; > + > + setup_initial_mapping(&mmu_desc, > + load_start, > + load_start + PAGE_SIZE, > + load_start); > + > + setup_initial_mapping(&mmu_desc, > + (unsigned long)cpu0_boot_stack, > + (unsigned long)cpu0_boot_stack + PAGE_SIZE, Shouldn't this be STACK_SIZE (and then also be prepared for STACK_SIZE > PAGE_SIZE)? > + (unsigned long)cpu0_boot_stack); > } > > -void __init noreturn noinline enable_mmu() > +/* > + * enable_mmu() can't be __init because __init section isn't part of identity > + * mapping so it will cause an issue after MMU will be enabled. > + */ As hinted at above already - perhaps the identity mapping wants to be larger, up to covering the entire Xen image? Since it's temporary only anyway, you could even consider using a large page (and RWX permission). You already require no overlap of link and load addresses, so at least small page mappings ought to be possible for the entire image. > @@ -255,25 +270,41 @@ void __init noreturn noinline enable_mmu() > csr_write(CSR_SATP, > PFN_DOWN((unsigned long)stage1_pgtbl_root) | > RV_STAGE1_MODE << SATP_MODE_SHIFT); > +} > + > +void __init remove_identity_mapping(void) > +{ > + int i, j; Nit: unsigned int please. > + pte_t *pgtbl; > + unsigned int index, xen_index; These would all probably better be declared in the narrowest possible scope. > - asm volatile ( ".p2align 2" ); > - mmu_is_enabled: > /* > - * Stack should be re-inited as: > - * 1. Right now an address of the stack is relative to load time > - * addresses what will cause an issue in case of load start address > - * isn't equal to linker start address. > - * 2. Addresses in stack are all load time relative which can be an > - * issue in case when load start address isn't equal to linker > - * start address. > - * > - * We can't return to the caller because the stack was reseted > - * and it may have stash some variable on the stack. > - * Jump to a brand new function as the stack was reseted > + * id_addrs should be in sync with id mapping in > + * setup_initial_pagetables() What is "id" meant to stand for here? Also if things need keeping in sync, then a similar comment should exist on the other side. > */ > + unsigned long id_addrs[] = { > + LINK_TO_LOAD(_start), > + LINK_TO_LOAD(cpu0_boot_stack), > + }; > > - switch_stack_and_jump((unsigned long)cpu0_boot_stack + STACK_SIZE, > - cont_after_mmu_is_enabled); > + pgtbl = stage1_pgtbl_root; > + > + for ( j = 0; j < ARRAY_SIZE(id_addrs); j++ ) > + { > + for ( pgtbl = stage1_pgtbl_root, i = CONFIG_PAGING_LEVELS - 1; i >= 0; i-- ) > + { > + index = pt_index(i, id_addrs[j]); > + xen_index = pt_index(i, XEN_VIRT_START); > + > + if ( index != xen_index ) > + { > + pgtbl[index].pte = 0; > + break; > + } Up to here I understand index specifies a particular PTE within pgtbl[]. > + pgtbl = &pgtbl[index]; But then how can this be the continuation of the page table walk? Don't you need to read the address out of the PTE? > --- a/xen/arch/riscv/riscv64/head.S > +++ b/xen/arch/riscv/riscv64/head.S > @@ -31,6 +31,36 @@ ENTRY(start) > > jal calc_phys_offset > > + jal setup_initial_pagetables > + > + jal enable_mmu > + > + /* > + * Calculate physical offset > + * > + * We can't re-use a value in phys_offset variable here as > + * phys_offset is located in .bss and this section isn't > + * 1:1 mapped and an access to it will cause MMU fault > + */ > + li t0, XEN_VIRT_START > + la t1, start > + sub t1, t1, t0 If I'm not mistaken this calculates start - XEN_VIRT_START, and ... > + /* Calculate proper VA after jump from 1:1 mapping */ > + la t0, .L_primary_switched > + sub t0, t0, t1 ... then this .L_primary_switched - (start - XEN_VIRT_START). Which can also be expressed as (.L_primary_switched - start) + XEN_VIRT_START, the first part of which gas ought to be able to resolve for you. But upon experimenting a little it looks like it can't. (I had thought of something along the lines of li t0, .L_primary_switched - start li t1, XEN_VIRT_START add t0, t0, t1 or even li t1, XEN_VIRT_START add t0, t1, %pcrel_lo(.L_primary_switched - start) .) Jan From xen-devel-bounces@lists.xenproject.org Mon Jun 12 13:52:35 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 13:52:35 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547151.854401 (Exim 4.92) (envelope-from ) id 1q8hy4-0004ZE-SJ; Mon, 12 Jun 2023 13:52:24 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547151.854401; Mon, 12 Jun 2023 13:52:24 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8hy4-0004Z7-O9; Mon, 12 Jun 2023 13:52:24 +0000 Received: by outflank-mailman (input) for mailman id 547151; Mon, 12 Jun 2023 13:52:23 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8hy3-0004Yx-Co; Mon, 12 Jun 2023 13:52:23 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8hy3-0008UU-9m; Mon, 12 Jun 2023 13:52:23 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8hy2-0001xm-Oe; Mon, 12 Jun 2023 13:52:22 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q8hy2-0005xh-OD; Mon, 12 Jun 2023 13:52:22 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=PoygYSxgjJXH+Z63e+7Mpk4zEJkzZladY0ZtDRNPXYQ=; b=dmKFKvCQa5X/OJYv7+lm1J3+Ft z1U6M47QkHAaYW1AILnwLekKK8BniwltudEIl3Q0sXq4RHtvWOEPDjG6tr1bI7Kr6a2ldvffvqCUH /7+kyWEN4yJtX0qtE3b5yV3MXBo3iE0nE5u5VlQcgoUCGbUIbmQds8ASKnrjGHpbyGU8=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [qemu-mainline test] 181389: regressions - FAIL X-Osstest-Failures: qemu-mainline:build-arm64-xsm:xen-build:fail:regression qemu-mainline:build-arm64:xen-build:fail:regression qemu-mainline:build-amd64:xen-build:fail:regression qemu-mainline:build-i386:xen-build:fail:regression qemu-mainline:build-amd64-xsm:xen-build:fail:regression qemu-mainline:build-i386-xsm:xen-build:fail:regression qemu-mainline:build-armhf:xen-build:fail:regression qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-i386:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:build-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:build-arm64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:build-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:build-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pygrub:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking X-Osstest-Versions-This: qemuu=fdd0df5340a8ebc8de88078387ebc85c5af7b40f X-Osstest-Versions-That: qemuu=6972ef1440a9d685482d78672620a7482f2bd09a From: osstest service owner Date: Mon, 12 Jun 2023 13:52:22 +0000 flight 181389 qemu-mainline real [real] http://logs.test-lab.xenproject.org/osstest/logs/181389/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-arm64-xsm 6 xen-build fail REGR. vs. 180691 build-arm64 6 xen-build fail REGR. vs. 180691 build-amd64 6 xen-build fail REGR. vs. 180691 build-i386 6 xen-build fail REGR. vs. 180691 build-amd64-xsm 6 xen-build fail REGR. vs. 180691 build-i386-xsm 6 xen-build fail REGR. vs. 180691 build-armhf 6 xen-build fail REGR. vs. 180691 Tests which did not succeed, but are not blocking: test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-xl-xsm 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-raw 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-xsm 1 build-check(1) blocked n/a test-arm64-arm64-xl 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit1 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit2 1 build-check(1) blocked n/a test-arm64-arm64-xl-thunderx 1 build-check(1) blocked n/a test-arm64-arm64-xl-vhd 1 build-check(1) blocked n/a test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a test-armhf-armhf-libvirt 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-qcow2 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-raw 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a test-armhf-armhf-xl-arndale 1 build-check(1) blocked n/a test-armhf-armhf-xl-multivcpu 1 build-check(1) blocked n/a test-armhf-armhf-xl-rtds 1 build-check(1) blocked n/a test-armhf-armhf-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-amd 1 build-check(1) blocked n/a test-amd64-i386-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-raw 1 build-check(1) blocked n/a test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-i386 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-amd64 1 build-check(1) blocked n/a test-amd64-coresched-i386-xl 1 build-check(1) blocked n/a test-amd64-coresched-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-xsm 1 build-check(1) blocked n/a build-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-shadow 1 build-check(1) blocked n/a test-amd64-amd64-xl-rtds 1 build-check(1) blocked n/a build-arm64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a build-armhf-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a build-i386-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-amd 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-pair 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-qcow2 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-vhd 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvshim 1 build-check(1) blocked n/a test-amd64-amd64-pair 1 build-check(1) blocked n/a test-amd64-amd64-pygrub 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-intel 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd11-amd64 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd12-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-multivcpu 1 build-check(1) blocked n/a test-amd64-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit1 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit1 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-intel 1 build-check(1) blocked n/a test-amd64-i386-xl 1 build-check(1) blocked n/a test-amd64-i386-xl-pvshim 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a version targeted for testing: qemuu fdd0df5340a8ebc8de88078387ebc85c5af7b40f baseline version: qemuu 6972ef1440a9d685482d78672620a7482f2bd09a Last test of basis 180691 2023-05-17 10:45:22 Z 26 days Failing since 180699 2023-05-18 07:21:24 Z 25 days 89 attempts Testing same since 181372 2023-06-10 21:38:57 Z 1 days 10 attempts ------------------------------------------------------------ People who touched revisions under test: Afonso Bordado Akihiko Odaki Akihiro Suda Alex Bennée Alex Williamson Alexander Bulekov Alexander Graf Alexander Ivanov Alistair Francis Anastasia Belova Andrew Jeffery Ani Sinha Ani Sinha Anthony PERARD Anton Johansson BALATON Zoltan Bastian Koppelmann Bernhard Beschow Bin Meng Brian Cain Brice Goglin Camilla Conte Carlos Santos Christian Schoenebeck Chuck Zmudzinski Cindy Lu Clément Chigot Cornelia Huck Cédric Le Goater Cédric Le Goater Daniel Henrique Barboza Daniel P. Berrangé Daniil Kovalev David Hildenbrand David Woodhouse Emanuele Giuseppe Esposito Enze Li Eric Auger Eric Blake Eric DeVolder Erico Nunes Eugenio Pérez Fabiano Rosas Fan Ni Fiona Ebner Francesco Cagnin Francisco Iglesias Frederic Barrat Gavin Shan Gregory Price Gregory Price Hanna Czenczek Hao Zeng Hawkins Jiawei Igor Mammedov Ilya Leoshkevich Ira Weiny Jagannathan Raman Jason Wang Jean-Louis Dupond Jean-Philippe Brucker Jiaxun Yang John Snow Jonathan Cameron Juan Quintela Kevin Wolf Laurent Vivier Lei Yang Leonardo Bras Maksim Davydov Marc-André Lureau Marcin Juszkiewicz Marco Liebel Mark Cave-Ayland Markus Armbruster Matheus Tavares Bernardino Mattias Nissler Mauro Matteo Cascella Max Fritz Michael S. Tsirkin Michael Tokarev Michal Privoznik Milan Zamazal Mostafa Saleh Nicholas Piggin Nicolas Saenz Julienne Niek Linnenbank Palmer Dabbelt Paolo Bonzini Peter Maydell Peter Xu Philippe Mathieu-Daudé qianfan Zhao Raghu H Rene Engel Richard Henderson Richard Purdie Ricky Zhou Ryan Wendland Sebastian Ott Sergio Lopez Sid Manning Song Gao Stefan Hajnoczi Stefano Garzarella Steve Sistare Taylor Simpson Thomas Huth Thomas Weißschuh timothee.cocault@gmail.com Timothée Cocault Tommy Wu Vikram Garhwal Viktor Prutyanov Vitaly Cheptsov Vivek Kasireddy Vladimir Sementsov-Ogievskiy Volker Rümelin Xinyu Li Zeng Hao Zhenyu Zhang Zhenzhong Duan Zhuojia Shen jobs: build-amd64-xsm fail build-arm64-xsm fail build-i386-xsm fail build-amd64 fail build-arm64 fail build-armhf fail build-i386 fail build-amd64-libvirt blocked build-arm64-libvirt blocked build-armhf-libvirt blocked build-i386-libvirt blocked build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl blocked test-amd64-coresched-amd64-xl blocked test-arm64-arm64-xl blocked test-armhf-armhf-xl blocked test-amd64-i386-xl blocked test-amd64-coresched-i386-xl blocked test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-i386-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-amd64-libvirt-xsm blocked test-arm64-arm64-libvirt-xsm blocked test-amd64-i386-libvirt-xsm blocked test-amd64-amd64-xl-xsm blocked test-arm64-arm64-xl-xsm blocked test-amd64-i386-xl-xsm blocked test-amd64-amd64-qemuu-nested-amd blocked test-amd64-amd64-xl-pvhv2-amd blocked test-amd64-i386-qemuu-rhel6hvm-amd blocked test-amd64-amd64-dom0pvh-xl-amd blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-freebsd10-amd64 blocked test-amd64-amd64-qemuu-freebsd11-amd64 blocked test-amd64-amd64-qemuu-freebsd12-amd64 blocked test-amd64-amd64-xl-qemuu-ovmf-amd64 blocked test-amd64-i386-xl-qemuu-ovmf-amd64 blocked test-amd64-amd64-xl-qemuu-win7-amd64 blocked test-amd64-i386-xl-qemuu-win7-amd64 blocked test-amd64-amd64-xl-qemuu-ws16-amd64 blocked test-amd64-i386-xl-qemuu-ws16-amd64 blocked test-armhf-armhf-xl-arndale blocked test-amd64-amd64-xl-credit1 blocked test-arm64-arm64-xl-credit1 blocked test-armhf-armhf-xl-credit1 blocked test-amd64-amd64-xl-credit2 blocked test-arm64-arm64-xl-credit2 blocked test-armhf-armhf-xl-credit2 blocked test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-freebsd10-i386 blocked test-amd64-amd64-qemuu-nested-intel blocked test-amd64-amd64-xl-pvhv2-intel blocked test-amd64-i386-qemuu-rhel6hvm-intel blocked test-amd64-amd64-dom0pvh-xl-intel blocked test-amd64-amd64-libvirt blocked test-armhf-armhf-libvirt blocked test-amd64-i386-libvirt blocked test-amd64-amd64-xl-multivcpu blocked test-armhf-armhf-xl-multivcpu blocked test-amd64-amd64-pair blocked test-amd64-i386-pair blocked test-amd64-amd64-libvirt-pair blocked test-amd64-i386-libvirt-pair blocked test-amd64-amd64-xl-pvshim blocked test-amd64-i386-xl-pvshim blocked test-amd64-amd64-pygrub blocked test-armhf-armhf-libvirt-qcow2 blocked test-amd64-amd64-xl-qcow2 blocked test-arm64-arm64-libvirt-raw blocked test-armhf-armhf-libvirt-raw blocked test-amd64-i386-libvirt-raw blocked test-amd64-amd64-xl-rtds blocked test-armhf-armhf-xl-rtds blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-amd64-xl-shadow blocked test-amd64-i386-xl-shadow blocked test-arm64-arm64-xl-thunderx blocked test-amd64-amd64-libvirt-vhd blocked test-arm64-arm64-xl-vhd blocked test-armhf-armhf-xl-vhd blocked test-amd64-i386-xl-vhd blocked ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 17052 lines long.) From xen-devel-bounces@lists.xenproject.org Mon Jun 12 14:04:54 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 14:04:54 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547160.854411 (Exim 4.92) (envelope-from ) id 1q8iA0-0006FK-4N; Mon, 12 Jun 2023 14:04:44 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547160.854411; Mon, 12 Jun 2023 14:04:44 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8iA0-0006FD-12; Mon, 12 Jun 2023 14:04:44 +0000 Received: by outflank-mailman (input) for mailman id 547160; Mon, 12 Jun 2023 14:04:42 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8i9y-0006F7-No for xen-devel@lists.xen.org; Mon, 12 Jun 2023 14:04:42 +0000 Received: from esa5.hc3370-68.iphmx.com (esa5.hc3370-68.iphmx.com [216.71.155.168]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 11af72b6-092a-11ee-8611-37d641c3527e; Mon, 12 Jun 2023 16:04:40 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 11af72b6-092a-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686578680; h=date:from:to:cc:subject:message-id:references: mime-version:in-reply-to; bh=YOd/6V4B9CxUyxO0MvwfIi5irZQXNcV8zi/Ogq486jY=; b=MmKKq3u9/AzqUeb+sTooO5ObyVCouEHdJqR0n/M6H/f7B9qmq7gmZpZ4 EVvLC0DGB7xCIQJNEF/d65heY34xmV2g2Sj5MJKSQvjeGlr1VtE2uAITG S7J3L2ja6Gkj9/3xx+sXYDMFKz+kVe7uOJsp3fuAmU0xvIQrJadC1j6FL s=; Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none X-SBRS: 4.0 X-MesageID: 111218772 X-Ironport-Server: esa5.hc3370-68.iphmx.com X-Remote-IP: 162.221.156.123 X-Policy: $RELAYED IronPort-Data: A9a23:2jocR6B3QUqZSRVW/2vkw5YqxClBgxIJ4kV8jS/XYbTApGsrhmcOm 2QZWGHVOP2PZ2ejeNl/aNzlpkMFuZ/UnYA3QQY4rX1jcSlH+JHPbTi7wuUcHAvJd5GeExg3h yk6QoOdRCzhZiaE/n9BCpC48T8nk/nOHuGmYAL9EngZbRd+Tys8gg5Ulec8g4p56fC0GArIs t7pyyHlEAbNNwVcbCRMs8pvlDs15K6p4G1B5ARnDRx2lAS2e0c9Xcp3yZ6ZdxMUcqEMdsamS uDKyq2O/2+x13/B3fv8z94X2mVTKlLjFVDmZkh+AsBOsTAbzsAG6Y4pNeJ0VKtio27hc+ada jl6ncfYpQ8BZsUgkQmGOvVSO3kW0aZuoNcrLZUj2CA6IoKvn3bEmp1T4E8K0YIwq899DD9/2 6QiODk2LQndqP6/7aOFVbw57igjBJGD0II3v3hhyXfSDOo8QICFSKLPjTNa9G5u3IYUR6+YP pdHL2M1N3wsYDUWUrsTIJs4gOevgGi5azBCoUiZjaE2/3LS3Ep6172F3N/9I4XTH5wFwRnCz o7A1z6nUhAeE/qb8gSE63CwrbPBmi74Wo1HQdVU8dY12QbOlwT/EiY+S1qhrOK5zE2jXttFA 0gV/CM0qu417kPDZsnwWVi0rWCJujYYWsFMCKsq5QfLzbDbiy6bCXIDVSVpc8E9uYk9QjlC/ l2Um9LkAxR/vbvTTmiSnp+KrDW5NC4Ja2AfZDMYShct59jlqZs0yBXVQb5LC7Kvh8HyAnT8z i6iqzB7g7QIkdVN06S99ErAxTW2qfDhRwo49kPdU2Sj4w5RYI+jbpavr1/B4p5oKY+FTliMo T4cnMmE7e0UJZWMkiWXR6MGG7TBz/GBPT7HnU90H7Eu8j2s/zioeoU4yDxkJUQvKc0EeDvtY UnckQdQ4pZJOz2td6AfS4upBt4j16TICdXvXfeSZd1LCqWdbyfeonsoPxTJmTmwzg51y/pX1 YqnndiEXF8QBPpW4mKMV+4mkqZ16Tw36HLtWsWup/i46oZydEJ5WJ9cbgvQNLBit/LZyOnG2 40BbpXXkn2zRMW7O3CKqtBLcDjmOFBhXfjLR9prmvlvy+aMMEUoELfvzLwoYOSJdIwFx76Tr hlRtqK1oWcTZEEryi3QMBiPkJu1Af5CQYsTZETAx2qA1Xk5epqI56wCbZYxdrRP3LU9naApF 6lZI5TYXqonptH7F9M1N8CVkWCfXE7z2VLm09SNPVDTgKKMtySWo4S5L2MDBQEFDzattNtWn lFT/lqzfHb3fCw7VJy+QKv2nzuMUY01xLoas73gfoMCJy0BMeFCd0TMsxPAC5tVcUWYmmrLj lj+7NVxjbClnrLZOeLh3cisx7pF2cMkdqaGNwE3NYqLCBQ= IronPort-HdrOrdr: A9a23:3byc4Kwbfxz/7VWQH+1IKrPwAL1zdoMgy1knxilNoEpuA6ilfq eV8MjztCWatN91YhodcL+7VpVoLUm8yXcW2/hzAV7SZmnbUQKTRekJgLcKpQeQfhEWndQtt5 uIHZIOcOEYJGIK6vrS0U2VFMsh3cnC0I3Av5ak8561d3ANV0i31XYBNjqm X-Talos-CUID: =?us-ascii?q?9a23=3ApRV5GWrePL6CzzpMUm3eXxHmUZEMeHCD/VmIGV+?= =?us-ascii?q?xMiVwFpKJQHKBxrwxxg=3D=3D?= X-Talos-MUID: 9a23:umtXJAZeYkkwsuBT7WG8hTVFEsNT3aW3ClwmzZsBtsqGOnkl X-IronPort-AV: E=Sophos;i="6.00,236,1681185600"; d="scan'208";a="111218772" Date: Mon, 12 Jun 2023 15:04:30 +0100 From: Anthony PERARD To: Viresh Kumar CC: , Juergen Gross , Julien Grall , Vincent Guittot , , Alex =?iso-8859-1?Q?Benn=E9e?= , Mathieu Poirier , Oleksandr Tyshchenko , Erik Schilling Subject: Re: [PATCH V3 1/3] libxl: virtio: Remove unused frontend nodes Message-ID: References: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Disposition: inline In-Reply-To: On Fri, Jun 02, 2023 at 11:19:07AM +0530, Viresh Kumar wrote: > Only the VirtIO backend will watch xenstore to find out when a new > instance needs to be created for a guest, and read the parameters from > there. VirtIO frontend are only virtio, so they will not do anything > with the xenstore nodes. They can be removed. > > While at it, also add a comment to the libxl_virtio.c file. > > Signed-off-by: Viresh Kumar Reviewed-by: Anthony PERARD Thanks, -- Anthony PERARD From xen-devel-bounces@lists.xenproject.org Mon Jun 12 14:09:42 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 14:09:42 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547165.854421 (Exim 4.92) (envelope-from ) id 1q8iEc-0006rP-LT; Mon, 12 Jun 2023 14:09:30 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547165.854421; Mon, 12 Jun 2023 14:09:30 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8iEc-0006rI-IU; Mon, 12 Jun 2023 14:09:30 +0000 Received: by outflank-mailman (input) for mailman id 547165; Mon, 12 Jun 2023 14:09:29 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8iEb-0006rC-TY for xen-devel@lists.xen.org; Mon, 12 Jun 2023 14:09:29 +0000 Received: from esa5.hc3370-68.iphmx.com (esa5.hc3370-68.iphmx.com [216.71.155.168]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id bd309563-092a-11ee-8611-37d641c3527e; Mon, 12 Jun 2023 16:09:27 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: bd309563-092a-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686578967; h=date:from:to:cc:subject:message-id:references: mime-version:in-reply-to; bh=J+AjCExZWctvWDjgm8onw62W7TsimG4o7nTS8X4gt0Y=; b=NAH4kiaPJ2liZNzX/OJHyAHkz7lPV9hWkN/ztAUVT9l5LqdCAQT1/XYN or53kgyOTDzqKSaaIRMPKmJ0zA70RS9e+lJorx+3O5yKm5h+lJBIRcwxT 0Y245qAVkXZUsTcSJXrSpguhnXxysiuDOhtGzJs++2jKvz1yDXQgKMgOK Q=; Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none X-SBRS: 4.0 X-MesageID: 111219631 X-Ironport-Server: esa5.hc3370-68.iphmx.com X-Remote-IP: 162.221.156.123 X-Policy: $RELAYED IronPort-Data: A9a23:FIBFEa3sjYjnny+QevbD5ZF2kn2cJEfYwER7XKvMYLTBsI5bp2RVy TBJWm+Baf2LNzbwL99wYdji8kJXvMKGm9NqTwJopC1hF35El5HIVI+TRqvS04F+DeWYFR46s J9OAjXkBJppJpMJjk71atANlVEliefTAOK6ULWeUsxIbVcMYD87jh5+kPIOjIdtgNyoayuAo tq3qMDEULOf82cc3lk8teTb8HuDgNyo4GlD5gJnP6gS1LPjvyJ94Kw3dPnZw0TQGuG4LsbiL 87fwbew+H/u/htFIrtJRZ6iLyXm6paLVeS/oiI+t5qK23CulQRrukoPD9IOaF8/ttm8t4sZJ OOhF3CHYVxB0qXkwIzxWvTDes10FfUuFLTveRBTvSEPpqFvnrSFL/hGVSkL0YMkFulfEXxo0 vJGBG82Zz+Zh/Ob7pCxG+p0v5F2RCXrFNt3VnBIyDjYCbAtQIzZQrWM7thdtNsyrpkQR7CEP ZNfMGcxKk2aOHWjOX9OYH46tO6umnn4dSwesF+PrLA7y2PS0BZwwP7mN9+9ltmiHJwMxB/J+ Dmfl4j/KgATG/KW2Sugy2uLiN/RoRLaQJ5PN6Lto5aGh3XMnzdOWXX6T2CTv/ijh1W+HdFCL kUO0i4vq6Eo8wqsVNaVdw21pjuIswARX/JUEvYm80edx6yS5ByWbkAGQSRGc8cOr9ItSHoh0 Vrht9H0AT1itpWFRHTb8a2bxRusOC4eIGkeIyAZTBcZ5MXLpIA1hwjICNF5H8adlcHvEC332 HWGoTYWgK1Wic8Qy779+VHBiiir4J/TQWYd7wHaTiSv4wV/aYONY42u4ELcq/FaI+6xS1Cdv HkJho6G6+EUDJyXvCiMRuwXG/ei4PPtGDrYjF10A4g69xyi/neiecZb5zQWDEpzM8VCYjTpY UvXuAVezJtSOnKwaulweY3ZI80ywLLpD9jNSvHeZd0IaZ90HDJr5wk3OxTWhTq01hFxz+dmY 8zznduQ4WgyGblB6zToa7gm2JAxxjET60HZFJPj9kHyuVaBX0J5WYvpIXPXMLBntvPf+1SIm zpMH5DUkksCCYUSdgGSqNdOdg5ScBDXELis86Rqmvi/zh2K8Y3LI9vY2vsfdoNshMy5fc+Yr yjmCie0JLcS7EAryDlmiVg5MtsDpb4l8RoG0dUEZD5EIUQLb4e197s4fJAqZ7Qh/+EL5acqH 6dYI5XcWqUXFmqvF9EhgX7V9tUKSfhWrVjWY3rNjMYXIvaMuDAlCve7J1CypUHi/wK8tNcko q3I6+8oacNreuiWN+6PMKjH5wro7RAgdBdaAxOgzi97JB+9r+CH6kXZ0pcKHi37AU+anmvBi 1fHWElwSCuki9ZdzeQlTJus9++Be9aS1GIAd4UHxd5a7RXnw1c= IronPort-HdrOrdr: A9a23:9pBM0Kl75oQgA8RNxbrZvIfqWK/pDfIA3DAbv31ZSRFFG/Fwwf re+8jzsiWZtN9xYh4dcLW7U5VoLkmzyXcY2+gs1NWZLWrbURqTTL2KhLGKq1eMJ8SZzJ856U 4KSdkdNDSfNykDsS/S2njdL/8QhPWB7aC0laP/4h5WPHpXgnhbnmFE49CgYzRLeDU= X-Talos-CUID: 9a23:7RP792xZL5kXJ8QFH3C/BgUEB+YCfCPxk0zZDFW4GEtHarfESkeprfY= X-Talos-MUID: =?us-ascii?q?9a23=3AFKM0UA/S5sSbl/pdH6s+/+SQf9ZhzIqnGFEoqIw?= =?us-ascii?q?htfmaCR1RIyvAryviFw=3D=3D?= X-IronPort-AV: E=Sophos;i="6.00,236,1681185600"; d="scan'208";a="111219631" Date: Mon, 12 Jun 2023 15:09:21 +0100 From: Anthony PERARD To: Viresh Kumar CC: , Juergen Gross , Julien Grall , Vincent Guittot , , Alex =?iso-8859-1?Q?Benn=E9e?= , Mathieu Poirier , Oleksandr Tyshchenko , Erik Schilling Subject: Re: [PATCH V3 2/3] libxl: Call libxl__virtio_devtype.set_default() early enough Message-ID: References: <61727b8e00dd9acb0621e98528bd5051d3bd5c58.1685684586.git.viresh.kumar@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Disposition: inline In-Reply-To: <61727b8e00dd9acb0621e98528bd5051d3bd5c58.1685684586.git.viresh.kumar@linaro.org> On Fri, Jun 02, 2023 at 11:19:08AM +0530, Viresh Kumar wrote: > The _setdefault() function for virtio devices is getting called after > libxl__prepare_dtb(), which is late as libxl__prepare_dtb() expects the > defaults to be already set by this time. > > Call libxl__virtio_devtype.set_default() from > libxl__domain_config_setdefault(), in a similar way as other devices > like disk, etc. > > Suggested-by: Anthony PERARD > Signed-off-by: Viresh Kumar Reviewed-by: Anthony PERARD Thanks, -- Anthony PERARD From xen-devel-bounces@lists.xenproject.org Mon Jun 12 14:25:03 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 14:25:03 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547170.854431 (Exim 4.92) (envelope-from ) id 1q8iTO-0000tK-UN; Mon, 12 Jun 2023 14:24:46 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547170.854431; Mon, 12 Jun 2023 14:24:46 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8iTO-0000tD-R1; Mon, 12 Jun 2023 14:24:46 +0000 Received: by outflank-mailman (input) for mailman id 547170; Mon, 12 Jun 2023 14:24:45 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8iTN-0000t7-9L for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 14:24:45 +0000 Received: from EUR05-VI1-obe.outbound.protection.outlook.com (mail-vi1eur05on20603.outbound.protection.outlook.com [2a01:111:f400:7d00::603]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id dfe2a627-092c-11ee-b232-6b7b168915f2; Mon, 12 Jun 2023 16:24:43 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by AS8PR04MB7958.eurprd04.prod.outlook.com (2603:10a6:20b:2a5::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.46; Mon, 12 Jun 2023 14:24:41 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.039; Mon, 12 Jun 2023 14:24:41 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: dfe2a627-092c-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=grnBGaZuIcRroEZXkR5Fkhjwtg0xXdsZwYgnntT1kutI7BlN4LbH13YNQadNA47e7v/Crf4prxplwoKi0m2ydlmt+UalZ8JQjqibDdY7YsF2H/O2kQC+MQ8TxBK28eHpF96Cl349utRRbTl0F2fZv+inbS3A6bz7BcV515Iajeo8GU4hPmHSmyOGfzePlSoUp6NvShdm8CEILx3Bo/9CXPJDUqILzxGX1Nazcfm3xb05DM5az29FeZxQSMbQ+VjMLCrCOupQTn8woS835UJuX3P0Ou4cArDSdBvOYjh8wiLKVqAlmAgOD7eGUGrkRQ9JC7hEKKBSC/jCIl0gK/6NBA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=qRdgItSLxmFEozSVykPJfbmQraTHh1XNL9zp8rKiiSQ=; b=L2GGg4LqLFIB5iH718Lqfxh7QLmyCD89TRjo5G/SmEyuavcqJ5j2uLi9VjdIisXgi2ns5TW2jefLJCXH3hluHpZNVWbnRR0YoVdsBT3SixvB79Ydms7EQx1hWFVMvG0Co+9wDr1PwoDrZ46UOFGg9dePyi3eeU2p+2rqg3Ge87VYT9WpUzqhCou4IkgVNqaQgVV+2ks//7+hN3rY1yLFUAaoAEKOaW/8Lk2YVNvTb9oY7c3b9h9dPDYxNj/x7xl9t7Lkh2iqGDuSbALn5UNdWOO22q38hrDFhZ3iS7EPlrW9hvi7jM8ZG/AOlNeidK+xPuLWtSqo+xNpN6cQYmUglA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=qRdgItSLxmFEozSVykPJfbmQraTHh1XNL9zp8rKiiSQ=; b=BFHzm+liR37jHa+Bgp8iEc0VsRvr8xw4hAkOsUvj2sJRDdsn9jQ49As1mr4wJGyebvm5J3LpD443ir540+YWQ6mMmxkg8ySj8Cod+ysa2kIuq6ZTcQSlLvT1Gvc5AqBCFbExHH384WyGPfoEWZrPtgrehxGrbFdOm46rQWuuFxkncD1Fme5Y7R+W83tiwOzL9wE8/nQkguvBWLQRSgII68KWYmLHBJR+gC5tMJVsB/8XygFH7aaQXPdhlH5dUckmnbr5Xi4Dt5mk0Qim7R04mh0UlGo97Yi2ReVfhvfZ8P/f0K8mQVN9rZ0EzakPdTTIftynsM6M0BkfJSVlnQIi9g== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: Date: Mon, 12 Jun 2023 16:24:38 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v1 5/8] xen/riscv: introduce identity mapping Content-Language: en-US From: Jan Beulich To: Oleksii Kurochko Cc: Andrew Cooper , Bob Eshleman , Alistair Francis , Connor Davis , xen-devel@lists.xenproject.org References: <32aef31768cd81ffc8c848af6c29cd8510bbbf6d.1686080337.git.oleksii.kurochko@gmail.com> <4ac462c3-9cb6-f467-2b86-925fb068486d@suse.com> In-Reply-To: <4ac462c3-9cb6-f467-2b86-925fb068486d@suse.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR3P281CA0159.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:a2::19) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|AS8PR04MB7958:EE_ X-MS-Office365-Filtering-Correlation-Id: 74249731-fb17-4b33-6ef4-08db6b50c286 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: vcOx9xjA29cUm2BY9Fz+cM7VaUndggM8lGaZWa3jE6BZIECQBTkvdIGSl6nQIlEFrQBmM41PueyGuhveOhJOAlB+sZ41DAO4pTaW+PPMQHSl+jEUHA+jzvdfHrYYzdpKnO6Un3Mc9GW9xdUBwHuo+zDo9MLTuQ7dbKafUHODSpyKe2FiA7wBI6sWqUUzUTM5478jcdSXKWotwLwb+RAlHUAivb24XTOovNJNaZclOgg5R8n9uSCBXmE1lPHw8tIC3vmf+S5bEkyq2jJ8OMzaDs9bKS9+LXMDoAl9y4OtTtChA9N1ZSJ34EAea4FOP7oBhvAypubkP1NrgPkzPpd9vvkGQjwXP7Tgk1Z0MmBNMV7ws1npBNXPZImZtcKCQQ/EwJspbuc379hQps7y3JcirN1SaCJRPkmTyUJe9yNb3eiY+lQZP18K56k3ytitwFf4o5KQKLk+kkIQNVxKMyWW4aXFqFdTe6viK60zWb0R2iD76VfIN35DCnhfCvmNBddKk66vjw/M2IRpEgeEOkfj6y4/nVvpe9XOMJRvaD51l1THNFKwN3zlfmmD/6FnwGDz60uRWaPwQITDZ8AgAPf6PQ4T5tFfcJ8DcspmZGsm+xYALYZlM8qaXSlC1I4E5ZjKHdQ9elQTH9OJbyqJa3xg2g== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(376002)(346002)(39850400004)(366004)(396003)(136003)(451199021)(54906003)(5660300002)(31686004)(6916009)(4326008)(66946007)(66556008)(8936002)(8676002)(41300700001)(316002)(2906002)(186003)(478600001)(66476007)(6666004)(6486002)(6512007)(53546011)(6506007)(26005)(83380400001)(36756003)(86362001)(2616005)(31696002)(38100700002)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?VC94b0EwZE9CRmN5SzFDM3loTzFRWU8yeWluOGZlZ29KcmFVa0ZCaERxbTFr?= =?utf-8?B?MkVUZjNZYU1ERWxGY05La2dzRmNtb2NYMU40NVdXMHQ0c3A4QWUvd0x1cDJQ?= =?utf-8?B?WStJMGM4eU4vSVlnQ0RtNXRNT0hQNXFjZVRUQkpOejhMVERWSVB4Tk1SQnMv?= =?utf-8?B?RTJCQTM5WkxvaDMySkY0WUU2M2ZPMUc2Nk4yOG9lRDhUamJSNUtUR1hkY3No?= =?utf-8?B?c2dGVndZOThXNWpyVldWNnJXS25SWHI1a3plZURhNHJwVG9QNkVzVVdxZFRS?= =?utf-8?B?d1RRaEFML2t0ZHFPbXNFS3J6ZGIzR1JhTm9neGZaMGNKQm1RR1dXazR0ZDNz?= =?utf-8?B?WmMyUUs2QU9kS2hDWFQyb0NDN0wrWHNONnQ0TXFmNldpRHlvaG8wbjBIQy9p?= =?utf-8?B?a3k5RmRoZTdDQlhUSElzVzRpSTNMZXo3anl0K01kL2hvWUQxdmMydHk3QzZY?= =?utf-8?B?ZUg0VkVHRDFWbldxU1U5Zy9kY2h0UGMwZy9ZYk94TzkyaUxIT3UyQ1NxZENl?= =?utf-8?B?WGRYQ0R4K1hKZ1U1ZEQzOUIxWXRwcTBGRityOS90M1ZINW1rTi9Kd29ZN3pC?= =?utf-8?B?OXhkK1BOUGJ3aC91MW5kczFiaHFiM0pRd3cvb1Q4cnRQanJEeW01U3VVb245?= =?utf-8?B?b05MSEdrREJjZUgwZVFjQnJTbURGWEZrQnhsT0VKTU9IeVpwemxEVk55NXRX?= =?utf-8?B?WVZTaDlhZ2JQOERRdm1zcnBKTjExdURHQ0FZOW02ZDFEa2h0Uy9wYmR0RVVV?= =?utf-8?B?cEFDaGUwNlQ1a29PNXJ1U1R0TnJ3SDl3bjk0ZjhLZmlaU2g5ZUorRUFhYStU?= =?utf-8?B?K3g1em5ocDU2UU84R29LeWlOVkNkZWFWdkhPMUI1OUliclNTQmtzdUY1cTdo?= =?utf-8?B?SS9qZmtqTmg1a0lQbllDWWpxM3dHMnl4aURXMUhzVzBrbzU0LzAvYmk3ek9H?= =?utf-8?B?aURoWDRIV2ZHNEtsRVlsUDdtTjl1Uk00T1BEaFhobmUvc2o0MWlZNkw0SGxJ?= =?utf-8?B?YStoMlFBWXg2UFZsbmlUOUZzTjhidGlSd2VhZDdiNXpkVVJCc0Z2WEg4K0NV?= =?utf-8?B?RG5wd0NpcTFVcHV2MSttRGlUWElTMEYyODB2WjhrMUU3b2YyV3dtTEpWb2JO?= =?utf-8?B?ajZFdVB5Wms0R0dQTldQajZtcWprSXVpcXd5d1ZvVFZNeUJ4OG9UaldUdzlL?= =?utf-8?B?VDVIY05XTWdMcHpHZG9FWFhXZTVmRkFUYWJYMWVoRkJPalNHWFkwNVFUdGxz?= =?utf-8?B?MXZJQzcxMlpEWlkwQWd3ZERkdXo5dmZtWVYwdUFtc0ZwOGRoeDBaUU1ZZmxC?= =?utf-8?B?Y3cxU0liU203dzd3S2t5clB4TFVMUGpIQnpiOWRIV3dyV2pYN21xcVd0UHpI?= =?utf-8?B?ZDVQMmd4d3dnd0ZZWVdISFUzbHBsU2hKTUNtRy9KTXp2ZG1zT0g2S1lPVU05?= =?utf-8?B?WFFNN00rM3AzaUtaYlhnQUFzd2F4UFV3dENoenViRjhYUTdTQjBqV3BQeSti?= =?utf-8?B?cXEzYy9ST1h2WUtETDFnNW5vajU3TjAyOW1sWVJCUExBcHZsVWRyeVdpb29n?= =?utf-8?B?aGRYdDFzVnpTOTgrY2t2TXpVUWJtbFdUMnptZ0RHbCt1UHc1YTM0N1F0RjAw?= =?utf-8?B?NW1wTEM1YTdTYmFsY0tPK012cEVYRmtVQjZ5eGRVNklwRVpsSThoTFQyQzdJ?= =?utf-8?B?TU1GeEkzMzRKUnFZZ2pzeTgySmpXRWVLamFJamNmcjROSEZUR3h2cldWREE1?= =?utf-8?B?aTBpdDJUTmV1Ry9KK1hNMUJsWmVIeVkydzdzd2s3NFp2czkvUjQwWXhWUUNq?= =?utf-8?B?djVuRDZDQ1RIKzdNRHY1YzJJa25rMnhtajhmRXJJMDJyelIzS29FTzYvWVJJ?= =?utf-8?B?bHVzVktqczg4S1BhWFhSM2lzNVlpN0xpUmZIanhqN0FxRmt6SzFmNXJDV1JI?= =?utf-8?B?b01nZWZsQm5RQTRRcno3VkJ4MlgzZDFBZ0RpVmc2aXJCM3lVbmZkc2lhNi9U?= =?utf-8?B?bDgvT3NpMnVjMWQyMm9sZzBINnBzdGtNVWl2NDZjREFtd2dQeVNmeWVRVHhO?= =?utf-8?B?aXltN2Q4NVVZbFRtMVpaZ0NpbnlkQURrY2xpekt3N1V1cXErK2lacFJ5NGlF?= =?utf-8?Q?I1WdHMGDpBaSZI/pPY+VaDgdm?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 74249731-fb17-4b33-6ef4-08db6b50c286 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Jun 2023 14:24:40.9294 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: YH1VEuGvJ52RAs0UCMp3xsmDQK/R/NVH8vhP9Bg8g5I/Mc4bv1NaG1fnsJN6k0WtzA6Wm2ibYh5X2V1W5W5yyQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB7958 On 12.06.2023 15:48, Jan Beulich wrote: > On 06.06.2023 21:55, Oleksii Kurochko wrote: >> -void __init noreturn noinline enable_mmu() >> +/* >> + * enable_mmu() can't be __init because __init section isn't part of identity >> + * mapping so it will cause an issue after MMU will be enabled. >> + */ > > As hinted at above already - perhaps the identity mapping wants to be > larger, up to covering the entire Xen image? Since it's temporary > only anyway, you could even consider using a large page (and RWX > permission). You already require no overlap of link and load addresses, > so at least small page mappings ought to be possible for the entire > image. To expand on that: Assume a future change on this path results in a call to memcpy() or memset() being introduced by the compiler (and then let's further assume this only occurs for a specific compiler version). Right now such a case would be noticed simply because we don't build those library functions yet. But it'll likely be a perplexing crash once a full hypervisor can be built, the more that exception handlers also aren't mapped. >> - mmu_is_enabled: >> /* >> - * Stack should be re-inited as: >> - * 1. Right now an address of the stack is relative to load time >> - * addresses what will cause an issue in case of load start address >> - * isn't equal to linker start address. >> - * 2. Addresses in stack are all load time relative which can be an >> - * issue in case when load start address isn't equal to linker >> - * start address. >> - * >> - * We can't return to the caller because the stack was reseted >> - * and it may have stash some variable on the stack. >> - * Jump to a brand new function as the stack was reseted >> + * id_addrs should be in sync with id mapping in >> + * setup_initial_pagetables() > > What is "id" meant to stand for here? Also if things need keeping in > sync, then a similar comment should exist on the other side. I guess it's meant to stand for "identity mapping", but the common use of "id" makes we wonder if the variable wouldn't better be ident_addrs[]. Jan From xen-devel-bounces@lists.xenproject.org Mon Jun 12 14:26:23 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 14:26:23 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547176.854445 (Exim 4.92) (envelope-from ) id 1q8iUn-0001VC-FV; Mon, 12 Jun 2023 14:26:13 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547176.854445; Mon, 12 Jun 2023 14:26:13 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8iUn-0001U5-C8; Mon, 12 Jun 2023 14:26:13 +0000 Received: by outflank-mailman (input) for mailman id 547176; Mon, 12 Jun 2023 14:26:12 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8iUl-0001S1-5V for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 14:26:12 +0000 Received: from bombadil.infradead.org (bombadil.infradead.org [2607:7c80:54:3::133]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 0ff6084a-092d-11ee-8611-37d641c3527e; Mon, 12 Jun 2023 16:26:05 +0200 (CEST) Received: from 2a02-8389-2341-5b80-8c8c-28f8-1274-e038.cable.dynamic.v6.surfer.at ([2a02:8389:2341:5b80:8c8c:28f8:1274:e038] helo=localhost) by bombadil.infradead.org with esmtpsa (Exim 4.96 #2 (Red Hat Linux)) id 1q8iUN-004I84-13; Mon, 12 Jun 2023 14:25:47 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 0ff6084a-092d-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=bombadil.20210309; h=Content-Transfer-Encoding: MIME-Version:Message-Id:Date:Subject:Cc:To:From:Sender:Reply-To:Content-Type: Content-ID:Content-Description:In-Reply-To:References; bh=f6jpt7lo8djdkscLPVrkqv8ySzbiCW/dI5HE2X2RneY=; b=D++FS2n3NbokanCiRHuXrRYJFB 1O4lDTnE+D1HQHO2AKpMGQ9+FQIFYTJSb0lQt3XrPAm08Tq6mnTZq+kgtFT44f8tGewYEwfIZHO/h YBgrsdTbfjZ9Y1XMZSrXDLROWWaZstFQitWpEw7rmifT7IYuYN6djDb3d/YRnetzhSJJqpJELxqq2 czIJi68GIT2zYuBVMka5Tl6uYHkD99z8M5hudtG6z1deEZxdxZHfnXeCQXVwyr8sGMxDTDg/oQrBa qITv89Zql2Si0e2SXoNmdtiN/FNHvISQbH03beP0rj+2N5MP2tb9B/fKR/5zmT67+j6MAscZFdmih 9rBheVNA==; From: Christoph Hellwig To: Juergen Gross , Stefano Stabellini , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , x86@kernel.org, "H. Peter Anvin" Cc: xen-devel@lists.xenproject.org, iommu@lists.linux.dev, linux-kernel@vger.kernel.org Subject: unexport swiotlb_active v2 Date: Mon, 12 Jun 2023 16:25:39 +0200 Message-Id: <20230612142542.111581-1-hch@lst.de> X-Mailer: git-send-email 2.39.2 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-SRS-Rewrite: SMTP reverse-path rewritten from by bombadil.infradead.org. See http://www.infradead.org/rpr.html Hi all, this little series removes the last swiotlb API exposed to modules. Changes since v1: - add a patch from Juergen to export if the e820 table indicates Xen PV PCI is enabled - slightly reorganize the logic to check if swiotlb is needed for Xen/x86 - drop the already merged nouveau patch Diffstat: arch/x86/include/asm/xen/swiotlb-xen.h | 6 ------ arch/x86/kernel/pci-dma.c | 29 +++++++---------------------- arch/x86/xen/setup.c | 6 ++++++ drivers/pci/xen-pcifront.c | 6 ------ include/xen/xen.h | 6 ++++++ kernel/dma/swiotlb.c | 1 - 6 files changed, 19 insertions(+), 35 deletions(-) From xen-devel-bounces@lists.xenproject.org Mon Jun 12 14:26:23 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 14:26:23 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547177.854453 (Exim 4.92) (envelope-from ) id 1q8iUn-0001ad-Rj; Mon, 12 Jun 2023 14:26:13 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547177.854453; Mon, 12 Jun 2023 14:26:13 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8iUn-0001Zd-KD; Mon, 12 Jun 2023 14:26:13 +0000 Received: by outflank-mailman (input) for mailman id 547177; Mon, 12 Jun 2023 14:26:12 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8iUm-0001S1-99 for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 14:26:12 +0000 Received: from bombadil.infradead.org (bombadil.infradead.org [2607:7c80:54:3::133]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 0ff87eb8-092d-11ee-8611-37d641c3527e; Mon, 12 Jun 2023 16:26:05 +0200 (CEST) Received: from 2a02-8389-2341-5b80-8c8c-28f8-1274-e038.cable.dynamic.v6.surfer.at ([2a02:8389:2341:5b80:8c8c:28f8:1274:e038] helo=localhost) by bombadil.infradead.org with esmtpsa (Exim 4.96 #2 (Red Hat Linux)) id 1q8iUQ-004I8Z-1u; Mon, 12 Jun 2023 14:25:50 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 0ff87eb8-092d-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=bombadil.20210309; h=Content-Transfer-Encoding: MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:Sender :Reply-To:Content-Type:Content-ID:Content-Description; bh=xk7UcK2JitL8EW9ZuelDDstRDKvC7QWgJZaUJF9iY8U=; b=gi/Nxa/zQEPmiix7WWxiDcuGaQ UXWNUHjwEt1uV9G92Cki/tGyE4Fxl9h7Uw5/VW0QgnJaASa9uwWV+jTL1gGuqDpKpZSeQCnal1E5J qEv0DtE4DOdI2krZd7P/X4lJwG0qNpuqNQ/o25wL+x7eif+U1SXUWZb60We+k49zNk8r/rmi/Tl4E SoZuJ+wCJxNYD4SRNiAsgCiNftC3faUgZS/u0LJDBvs8x175TAWPm0lP2tjb4Cswk2u4xkFViVI4h PPfk9D+URfM35VS9Ur/NWziYDFfRS0b4rQtJX0lZUcaXERtO1ykJfsTkvpjcFifFd0gsamVHI2h6y NlYvrHJA==; From: Christoph Hellwig To: Juergen Gross , Stefano Stabellini , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , x86@kernel.org, "H. Peter Anvin" Cc: xen-devel@lists.xenproject.org, iommu@lists.linux.dev, linux-kernel@vger.kernel.org Subject: [PATCH 1/3] xen/pci: add flag for PCI passthrough being possible Date: Mon, 12 Jun 2023 16:25:40 +0200 Message-Id: <20230612142542.111581-2-hch@lst.de> X-Mailer: git-send-email 2.39.2 In-Reply-To: <20230612142542.111581-1-hch@lst.de> References: <20230612142542.111581-1-hch@lst.de> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-SRS-Rewrite: SMTP reverse-path rewritten from by bombadil.infradead.org. See http://www.infradead.org/rpr.html From: Juergen Gross When running as a Xen PV guests passed through PCI devices only have a chance to work if the Xen supplied memory map has some PCI space reserved. Add a flag xen_pv_pci_possible which will be set in early boot in case the memory map has at least one area with the type E820_TYPE_RESERVED. Signed-off-by: Juergen Gross Signed-off-by: Christoph Hellwig --- arch/x86/xen/setup.c | 6 ++++++ include/xen/xen.h | 6 ++++++ 2 files changed, 12 insertions(+) diff --git a/arch/x86/xen/setup.c b/arch/x86/xen/setup.c index c2be3efb2ba0fa..716f76c4141651 100644 --- a/arch/x86/xen/setup.c +++ b/arch/x86/xen/setup.c @@ -43,6 +43,9 @@ struct xen_memory_region xen_extra_mem[XEN_EXTRA_MEM_MAX_REGIONS] __initdata; /* Number of pages released from the initial allocation. */ unsigned long xen_released_pages; +/* Memory map would allow PCI passthrough. */ +bool xen_pv_pci_possible; + /* E820 map used during setting up memory. */ static struct e820_table xen_e820_table __initdata; @@ -804,6 +807,9 @@ char * __init xen_memory_setup(void) chunk_size = size; type = xen_e820_table.entries[i].type; + if (type == E820_TYPE_RESERVED) + xen_pv_pci_possible = true; + if (type == E820_TYPE_RAM) { if (addr < mem_end) { chunk_size = min(size, mem_end - addr); diff --git a/include/xen/xen.h b/include/xen/xen.h index 0efeb652f9b8fb..5eb0a974a11e7e 100644 --- a/include/xen/xen.h +++ b/include/xen/xen.h @@ -29,6 +29,12 @@ extern bool xen_pvh; extern uint32_t xen_start_flags; +#ifdef CONFIG_XEN_PV +extern bool xen_pv_pci_possible; +#else +#define xen_pv_pci_possible 0 +#endif + #include extern struct hvm_start_info pvh_start_info; -- 2.39.2 From xen-devel-bounces@lists.xenproject.org Mon Jun 12 14:26:24 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 14:26:24 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547175.854440 (Exim 4.92) (envelope-from ) id 1q8iUn-0001SU-7R; Mon, 12 Jun 2023 14:26:13 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547175.854440; Mon, 12 Jun 2023 14:26:13 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8iUn-0001SN-4w; Mon, 12 Jun 2023 14:26:13 +0000 Received: by outflank-mailman (input) for mailman id 547175; Mon, 12 Jun 2023 14:26:11 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8iUl-0001S2-HT for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 14:26:11 +0000 Received: from bombadil.infradead.org (bombadil.infradead.org [2607:7c80:54:3::133]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 11a9d0f2-092d-11ee-b232-6b7b168915f2; Mon, 12 Jun 2023 16:26:08 +0200 (CEST) Received: from 2a02-8389-2341-5b80-8c8c-28f8-1274-e038.cable.dynamic.v6.surfer.at ([2a02:8389:2341:5b80:8c8c:28f8:1274:e038] helo=localhost) by bombadil.infradead.org with esmtpsa (Exim 4.96 #2 (Red Hat Linux)) id 1q8iUS-004I8p-2v; Mon, 12 Jun 2023 14:25:53 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 11a9d0f2-092d-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=bombadil.20210309; h=Content-Transfer-Encoding: MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:Sender :Reply-To:Content-Type:Content-ID:Content-Description; bh=Do07+ZJ8mt79MyKnagn3FmtuEPVS6qLM8Uvv604VtrU=; b=ft+LfENSbzDpGdR/jPu3Jnufmf IHfMnVhVYCDVxL4lsWCBWJNprt6qecPh6iVJH/jyJVtFumN4qbS/yfXinn70dOukq6yXFXA2M+RRH FxQpGw2Lk57s0+ygZfS5ucxKr9EfjhLyg81/6pzAN4HAsl67+sCPnuCdCkiJ2UUERt+DcZl7kUxYX 1xyscFp19lM8RLbNmZhw1hpPskXnts+EK7+TobUzf3g8hRDwewyJipGeaMsQ0LGSpUwlEpT2Hp4jq ab/k68N1uDss72tLrlMmwIJaDI+iWY9G36Z1jHRVNlO48LAHDdfPieKLQl3MLtJDhnZggvllYttAA 3vrSr1ng==; From: Christoph Hellwig To: Juergen Gross , Stefano Stabellini , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , x86@kernel.org, "H. Peter Anvin" Cc: xen-devel@lists.xenproject.org, iommu@lists.linux.dev, linux-kernel@vger.kernel.org Subject: [PATCH 2/3] x86: always initialize xen-swiotlb when xen-pcifront is enabling Date: Mon, 12 Jun 2023 16:25:41 +0200 Message-Id: <20230612142542.111581-3-hch@lst.de> X-Mailer: git-send-email 2.39.2 In-Reply-To: <20230612142542.111581-1-hch@lst.de> References: <20230612142542.111581-1-hch@lst.de> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-SRS-Rewrite: SMTP reverse-path rewritten from by bombadil.infradead.org. See http://www.infradead.org/rpr.html Remove the dangerous late initialization of xen-swiotlb in pci_xen_swiotlb_init_late and instead just always initialize xen-swiotlb in the boot code if CONFIG_XEN_PCIDEV_FRONTEND is enabled and Xen PV PCI is possible. Signed-off-by: Christoph Hellwig --- arch/x86/include/asm/xen/swiotlb-xen.h | 6 ------ arch/x86/kernel/pci-dma.c | 29 +++++++------------------- drivers/pci/xen-pcifront.c | 6 ------ 3 files changed, 7 insertions(+), 34 deletions(-) diff --git a/arch/x86/include/asm/xen/swiotlb-xen.h b/arch/x86/include/asm/xen/swiotlb-xen.h index 77a2d19cc9909e..abde0f44df57dc 100644 --- a/arch/x86/include/asm/xen/swiotlb-xen.h +++ b/arch/x86/include/asm/xen/swiotlb-xen.h @@ -2,12 +2,6 @@ #ifndef _ASM_X86_SWIOTLB_XEN_H #define _ASM_X86_SWIOTLB_XEN_H -#ifdef CONFIG_SWIOTLB_XEN -extern int pci_xen_swiotlb_init_late(void); -#else -static inline int pci_xen_swiotlb_init_late(void) { return -ENXIO; } -#endif - int xen_swiotlb_fixup(void *buf, unsigned long nslabs); int xen_create_contiguous_region(phys_addr_t pstart, unsigned int order, unsigned int address_bits, diff --git a/arch/x86/kernel/pci-dma.c b/arch/x86/kernel/pci-dma.c index de6be0a3965ee4..f323d83e40a70b 100644 --- a/arch/x86/kernel/pci-dma.c +++ b/arch/x86/kernel/pci-dma.c @@ -72,9 +72,15 @@ static inline void __init pci_swiotlb_detect(void) #endif /* CONFIG_SWIOTLB */ #ifdef CONFIG_SWIOTLB_XEN +static bool xen_swiotlb_enabled(void) +{ + return xen_initial_domain() || x86_swiotlb_enable || + (IS_ENABLED(CONFIG_XEN_PCIDEV_FRONTEND) && xen_pv_pci_possible); +} + static void __init pci_xen_swiotlb_init(void) { - if (!xen_initial_domain() && !x86_swiotlb_enable) + if (!xen_swiotlb_enabled()) return; x86_swiotlb_enable = true; x86_swiotlb_flags |= SWIOTLB_ANY; @@ -83,27 +89,6 @@ static void __init pci_xen_swiotlb_init(void) if (IS_ENABLED(CONFIG_PCI)) pci_request_acs(); } - -int pci_xen_swiotlb_init_late(void) -{ - if (dma_ops == &xen_swiotlb_dma_ops) - return 0; - - /* we can work with the default swiotlb */ - if (!io_tlb_default_mem.nslabs) { - int rc = swiotlb_init_late(swiotlb_size_or_default(), - GFP_KERNEL, xen_swiotlb_fixup); - if (rc < 0) - return rc; - } - - /* XXX: this switches the dma ops under live devices! */ - dma_ops = &xen_swiotlb_dma_ops; - if (IS_ENABLED(CONFIG_PCI)) - pci_request_acs(); - return 0; -} -EXPORT_SYMBOL_GPL(pci_xen_swiotlb_init_late); #else static inline void __init pci_xen_swiotlb_init(void) { diff --git a/drivers/pci/xen-pcifront.c b/drivers/pci/xen-pcifront.c index 83c0ab50676dff..11636634ae512f 100644 --- a/drivers/pci/xen-pcifront.c +++ b/drivers/pci/xen-pcifront.c @@ -22,7 +22,6 @@ #include #include #include -#include #include #include @@ -669,11 +668,6 @@ static int pcifront_connect_and_init_dma(struct pcifront_device *pdev) spin_unlock(&pcifront_dev_lock); - if (!err && !is_swiotlb_active(&pdev->xdev->dev)) { - err = pci_xen_swiotlb_init_late(); - if (err) - dev_err(&pdev->xdev->dev, "Could not setup SWIOTLB!\n"); - } return err; } -- 2.39.2 From xen-devel-bounces@lists.xenproject.org Mon Jun 12 14:26:24 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 14:26:24 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547178.854461 (Exim 4.92) (envelope-from ) id 1q8iUo-0001nW-C1; Mon, 12 Jun 2023 14:26:14 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547178.854461; Mon, 12 Jun 2023 14:26:14 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8iUo-0001lT-5p; Mon, 12 Jun 2023 14:26:14 +0000 Received: by outflank-mailman (input) for mailman id 547178; Mon, 12 Jun 2023 14:26:12 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8iUm-0001S1-Rb for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 14:26:12 +0000 Received: from bombadil.infradead.org (bombadil.infradead.org [2607:7c80:54:3::133]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 1130dc07-092d-11ee-8611-37d641c3527e; Mon, 12 Jun 2023 16:26:07 +0200 (CEST) Received: from 2a02-8389-2341-5b80-8c8c-28f8-1274-e038.cable.dynamic.v6.surfer.at ([2a02:8389:2341:5b80:8c8c:28f8:1274:e038] helo=localhost) by bombadil.infradead.org with esmtpsa (Exim 4.96 #2 (Red Hat Linux)) id 1q8iUV-004I92-0g; Mon, 12 Jun 2023 14:25:55 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 1130dc07-092d-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=bombadil.20210309; h=Content-Transfer-Encoding: MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:Sender :Reply-To:Content-Type:Content-ID:Content-Description; bh=7+xegEsHtqdZfD90PqdQG2V9qml0A9VagIuPc+XndpY=; b=nOfGMv5BDRQxDfnrKd8bzmQWqr goBsBKB7Iw1m2LxzLRFbWVRVGrjRdpF9rFhCZElyGUexeqx5Gd9/KXOz8Z/0AvV6Y2V4vqzAHsT6M 7gsR0fVXxD0Ee2qf1VyGvSE4UDuPsMTrlK1/DNRnlXS6AY76SN3HBTrdKLf3sdFvc7RaNofiW/9Mp cq5fhS41yZ0jYIePZfhZ1xV0fXI0Ev3LIRDrz5qE4H3oed9BmraNqp8ahrJhZN2yibbAhjChO5VYJ z3KK6ayWVF4A0AKXxPff8zQPHaAPIfph3bQmUV3jONDK18rW/BiLpeLYl4TfbalzVkNQyDg9yP4ZQ 7jqvZpVQ==; From: Christoph Hellwig To: Juergen Gross , Stefano Stabellini , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , x86@kernel.org, "H. Peter Anvin" Cc: xen-devel@lists.xenproject.org, iommu@lists.linux.dev, linux-kernel@vger.kernel.org Subject: [PATCH 3/3] swiotlb: unexport is_swiotlb_active Date: Mon, 12 Jun 2023 16:25:42 +0200 Message-Id: <20230612142542.111581-4-hch@lst.de> X-Mailer: git-send-email 2.39.2 In-Reply-To: <20230612142542.111581-1-hch@lst.de> References: <20230612142542.111581-1-hch@lst.de> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-SRS-Rewrite: SMTP reverse-path rewritten from by bombadil.infradead.org. See http://www.infradead.org/rpr.html Drivers have no business looking at dma-mapping or swiotlb internals. Signed-off-by: Christoph Hellwig --- kernel/dma/swiotlb.c | 1 - 1 file changed, 1 deletion(-) diff --git a/kernel/dma/swiotlb.c b/kernel/dma/swiotlb.c index 775f7bb10ab184..1891faa3a6952e 100644 --- a/kernel/dma/swiotlb.c +++ b/kernel/dma/swiotlb.c @@ -932,7 +932,6 @@ bool is_swiotlb_active(struct device *dev) return mem && mem->nslabs; } -EXPORT_SYMBOL_GPL(is_swiotlb_active); #ifdef CONFIG_DEBUG_FS -- 2.39.2 From xen-devel-bounces@lists.xenproject.org Mon Jun 12 14:49:42 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 14:49:42 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547247.854514 (Exim 4.92) (envelope-from ) id 1q8irH-0007pu-VD; Mon, 12 Jun 2023 14:49:27 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547247.854514; Mon, 12 Jun 2023 14:49:27 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8irH-0007pn-Sc; Mon, 12 Jun 2023 14:49:27 +0000 Received: by outflank-mailman (input) for mailman id 547247; Mon, 12 Jun 2023 14:49:26 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8irG-0007ph-E5 for xen-devel@lists.xen.org; Mon, 12 Jun 2023 14:49:26 +0000 Received: from esa2.hc3370-68.iphmx.com (esa2.hc3370-68.iphmx.com [216.71.145.153]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 514c58d7-0930-11ee-b232-6b7b168915f2; Mon, 12 Jun 2023 16:49:24 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 514c58d7-0930-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686581364; h=date:from:to:cc:subject:message-id:references: mime-version:in-reply-to; bh=Uis6XNWe+venr0IO8TUfpK2RVk+OiGSkLv7q3yoC9KA=; b=NgR5OSTdz9RnQyxdCLwirh42gjDOE/XvZLn6uNIzerFiLk0w4rCXPQ23 t8Pl7yg9PBZWKI6ZK8WDEWBIWrQA4plhGu+QQThVjf/JnYziHSdZmf7UG PW0VXD1+yb6Y9kPEAnLA+Z10CkMmFQRTm3eD+Ja4f/PVasRvTkjiVWF7N E=; Authentication-Results: esa2.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none X-SBRS: 4.0 X-MesageID: 112362273 X-Ironport-Server: esa2.hc3370-68.iphmx.com X-Remote-IP: 162.221.156.123 X-Policy: $RELAYED IronPort-Data: A9a23:rEwOGK84dUQWjq8DQkS7DrUDwnmTJUtcMsCJ2f8bNWPcYEJGY0x3z WsfWG6CM/+IYTP3Kox0Pdu+oE0CuJXRzoVqHQdoqXw8E34SpcT7XtnIdU2Y0wF+jCHgZBk+s 5hBMImowOQcFCK0SsKFa+C5xZVE/fjUAOG6UKicYXoZqTZMEE8JkQhkl/MynrlmiN24BxLlk d7pqojUNUTNNwRcawr40Ird7ks31BjOkGlA5AdmO6kR5AW2e0Q9V/rzG4ngdxMUfaEMdgKKb 76r5K20+Grf4yAsBruN+losWhRXKlJ6FVHmZkt+A8BOsDAbzsAB+v9T2M4nQVVWk120c+VZk 72hg3ASpTABZcUgkMxFO/VR/roX0aduoNcrKlDn2SCfItGvn9IBDJyCAWlvVbD09NqbDkkez dM3GS4oNyyTuMCX+6q5a+VojZg8eZyD0IM34hmMzBncBPciB5vCX7/L9ZlT2zJYasJmRKiEI ZBDMHw2MUqGOkcUUrsUIMtWcOOAj3/jczpeuRSNqLA++WT7xw1tyrn9dtHSf7RmQO0MxxzD+ DicoD+R7hcyFu6zljSk/y2X2+6TkXKmA68bP+Cf+as/6LGU7jNKU0BHPbehmtGni1SzQNIZK FER8zAGqak0/VasCN7nUHWQsHOC+xIRRddUO+k78x2WjLrZ5UCeHGdsZjxOcts9r+ctWCcnk FSOmrvBByFrsbCTYWKQ8PGTtzzaETYUK2QPYzNCQhYE/8XkvKk3jxTGVNElF7S65vXuBSv53 zeR6SQzmZ0UlYsP1r6n5hbDgjSlvJ+PSRQ6ji3eWm+1qAl0YoioaqSs6F7S9/EGK5yWJnGEt WQEmsWDqvgJDIuMmTalROQLFauuof2CNVX0hlpiHII95i+t03GmdIFUpjp5IS9BP9wFennya 0/SvQdQ4pB7OHqsZLVwJYWrBKwCxLDtD93/WtjIb9BFZd56cwrvwc11TRfOhSa3yhFqyPxhf 87BKq5AEEr2F4w39BWZdvk4iIM7+QIf/nvRZJz/xEi4hO/2iGGudVsVDLefRrlnvP3e8F6Oo os329iikEsGDrCnCsXD2ctKdA1RcyBmbXzjg5YPHtNvNDaKD43I5xX55bo6M7JokK1O/gsj1 iHsAxQIoLYTaJCuFOlrVpyAQOm1NXqHhShnVRHAxH7xs5TZXa6h7b0Ea7w8dqQ9+epowJZcF qdVJZjYUqgXG2ybpVzxiKURS6Q4LXyWaf+mZXL5MFDTgbY9L+A2xjMUVlS2r3RfZsZGncA/v 6ehxmvmrWkrHmxf4DLtQKv3lTuZ5CFN8N+eqmOUerG/jm2wqtk1Q8Ew59drS/wxxeLrnGLCh 13KUEZB+4EgYeYdqbH0uExNlK/xe8MWI6aQNzSzAWqeXcUCwlee/A== IronPort-HdrOrdr: A9a23:LOy5yq/ifBXnA8uj23huk+F6db1zdoMgy1knxilNoENuEvBwxv rOoB1E73HJYW4qKQ4dcdDpAtjmfZquz+8K3WBxB8bsYOCIghrSEGgP1/qG/9SkIVyDygdR78 xdmstFeZPN5DpB/LzHCWCDer5LrbXpgcPY59s2jU0dMD2CA5sQtzuRYTzrdHGeMTM2fabRY6 Dsn/avyQDQHUg/X4CXI0BAZeLKoNrGmfvdEEQ7Li9izDPLoSKj6bb8HRTd9AwZSSlzzbAr9n WAuxDl54242svLiyP05iv21dB7idHhwtxMCIinkc4OMAjhjQ6uecBIR6CChjYou+uigWxa0O Uk4i1QfPib2UmhO11dkiGdnzUIFwxerEMK/GXow0cLZ/aJAg7SRfAx3L6xOSGpmnbI9OsMoJ 6jmVjp7Ka/RCmw7xjV9pzGUQpnmVGzpmdnmekPj2ZHWY9bc7NJq5cDlXklWqvoMRiKoLzPKt MeR/309bJTaxeXfnrZtm5gzJilWWkyBA6PRgwHttaO2zZbkXhlxw9ArfZv0kso5dY4Ud1J9u 7EOqNnmPVHSdIXd7t0AKMETdGsAmLATBrQOCaZIEjhFqsAJ3XRwqSHrYkd9aWvYtgF3ZEykJ POXBdRsnMzYVvnDYmU0JhC4nn2MSyAtXiH8LAo23G4gMyLeFPGC1z2dLl1qbrTnxw2OLyvZ8 qO X-Talos-CUID: 9a23:etDO0Gwz+4yVdXbMZ0LNBgVEIu8KQ2P4lUvAHG2ZMn5rabGRQgOPrfY= X-Talos-MUID: 9a23:S8BT2QaNHeHKpeBTlQ3A2z9DOZhTvqXyBBFQyrgPkJSjOnkl X-IronPort-AV: E=Sophos;i="6.00,236,1681185600"; d="scan'208";a="112362273" Date: Mon, 12 Jun 2023 15:48:48 +0100 From: Anthony PERARD To: Viresh Kumar CC: , Juergen Gross , Julien Grall , Vincent Guittot , , Alex =?iso-8859-1?Q?Benn=E9e?= , Mathieu Poirier , Oleksandr Tyshchenko , Erik Schilling Subject: Re: [PATCH V3 3/3] libxl: arm: Add grant_usage parameter for virtio devices Message-ID: <7af57d20-6145-4416-9fa1-21cac0e2e5ea@perard> References: <0e347b2f4817cc578a5f8e41bf70503ae8cf69e3.1685684586.git.viresh.kumar@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Disposition: inline In-Reply-To: <0e347b2f4817cc578a5f8e41bf70503ae8cf69e3.1685684586.git.viresh.kumar@linaro.org> On Fri, Jun 02, 2023 at 11:19:09AM +0530, Viresh Kumar wrote: > diff --git a/tools/libs/light/libxl_virtio.c b/tools/libs/light/libxl_virtio.c > index f8a78e22d156..19d834984777 100644 > --- a/tools/libs/light/libxl_virtio.c > +++ b/tools/libs/light/libxl_virtio.c > @@ -48,11 +56,13 @@ static int libxl__set_xenstore_virtio(libxl__gc *gc, uint32_t domid, > flexarray_t *ro_front) > { > const char *transport = libxl_virtio_transport_to_string(virtio->transport); > + const char *grant_usage = libxl_defbool_to_string(virtio->grant_usage); > > flexarray_append_pair(back, "irq", GCSPRINTF("%u", virtio->irq)); > flexarray_append_pair(back, "base", GCSPRINTF("%#"PRIx64, virtio->base)); > flexarray_append_pair(back, "type", GCSPRINTF("%s", virtio->type)); > flexarray_append_pair(back, "transport", GCSPRINTF("%s", transport)); > + flexarray_append_pair(back, "grant_usage", GCSPRINTF("%s", grant_usage)); It doesn't seems like a good idea to write a string like "True" or "False" in xenstore when a simple integer would work. Also I'm pretty sure all other bool are written as "0" or "1", for false or true. Could you change to write "0" or "1" instead of using libxl_defbool_to_string() ? Beside this, patch looks good to me. Cheers, -- Anthony PERARD From xen-devel-bounces@lists.xenproject.org Mon Jun 12 14:52:09 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 14:52:09 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547252.854524 (Exim 4.92) (envelope-from ) id 1q8itn-0000pB-B0; Mon, 12 Jun 2023 14:52:03 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547252.854524; Mon, 12 Jun 2023 14:52:03 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8itn-0000p4-8K; Mon, 12 Jun 2023 14:52:03 +0000 Received: by outflank-mailman (input) for mailman id 547252; Mon, 12 Jun 2023 14:52:02 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8itl-0000ov-Mr for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 14:52:01 +0000 Received: from alpha.anastas.io (alpha.anastas.io [104.248.188.109]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id ae33b5a7-0930-11ee-8611-37d641c3527e; Mon, 12 Jun 2023 16:51:59 +0200 (CEST) Received: from authenticated-user (alpha.anastas.io [104.248.188.109]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by alpha.anastas.io (Postfix) with ESMTPSA id 55A06439D2; Mon, 12 Jun 2023 07:51:55 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: ae33b5a7-0930-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=anastas.io; s=mail; t=1686581516; bh=D7A4d7ZM2ommNK6ie9He4O/eJo4imL2tbf/DPZ2VveE=; h=From:To:Cc:Subject:Date:From; b=EBpLmuNnDKbUwRdaLBMA1j7FwxMFRUysRwqmFF1DDR9MdLyfacJzfbf1hDfWLDy3R jBlwPsc3x7C4SkcVcRml+SXjoZosI7piLOTifHavjQUYDRWA7Nmo7DI9NwqfvORH7/ giInl3pWsnp8DRdeJy9Q3FzTxJtGAwPdERxskT1Bl90vXXYGXA+BJEVSk06dFAMPXW zJ6yhPFUruz6udAi6oqd9w7aI2GXyEcYv6/7uOyKKLcYRAUM27ZbgsUuhl4ZpEm8ID 81DkHijYOmqpH4OjwecIEhpgHdSFZlM4NlM74Q53expgvDrHdEelu+j26ncW5geCGt stDP/SVINqmpA== From: Shawn Anastasio To: xen-devel@lists.xenproject.org Cc: tpearson@raptorengineering.com, Shawn Anastasio , Doug Goldstein , Stefano Stabellini , Andrew Cooper , George Dunlap , Jan Beulich , Julien Grall , Wei Liu , Shawn Anastasio Subject: [PATCH v2 0/4] Initial support for Power Date: Mon, 12 Jun 2023 09:51:35 -0500 Message-Id: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Hello all, This patch series adds support for building a minimal image (head.o-only) for Power ISA 2.07B+ (POWER8+) systems. The first patch boots to an infinite loop and the second adds early serial console support on pseries VMs, with bare metal support planned next. Since Xen previously had support for a much older version of the ISA in version 3.2.3, we were able to carry over some headers and support routines from that version. Unlike that initial port though, this effort focuses solely on POWER8+ CPUs that are capable of running in Little Endian mode. With an appropriate powerpc64le-linux-gnu cross-toolchain, the minimal image can be built with: $ make XEN_TARGET_ARCH=ppc64 -C xen openpower_defconfig $ make XEN_TARGET_ARCH=ppc64 SUBSYSTEMS=xen -C xen TARGET=ppc64/head.o The resulting head.o can then be booted in a standard QEMU/pseries VM: $ qemu-system-ppc64 -M pseries-5.2 -m 256M -kernel xen/ppc64/head.o \ -vga none -serial mon:stdio -nographic Thanks, Shawn -- Changes from v2: - Add ppc64le cross-build container patch - Add ppc64le cross build CI job patch - Drop serial output patch (will be in future patch series) - Drop setup.c and unneeded headers from minimal build patch - Fixed ordering of MAINTAINERS patch + add F: line - Fix config/ppc64.mk option names - Clarify Kconfig Baseline ISA option help strings Shawn Anastasio (4): automation: Add container for ppc64le builds xen: Add files needed for minimal ppc64le build automation: Add ppc64le cross-build jobs maintainers: Add ppc64 maintainer MAINTAINERS | 4 + .../build/debian/bullseye-ppc64le.dockerfile | 28 +++ automation/gitlab-ci/build.yaml | 60 ++++++ automation/scripts/containerize | 1 + config/ppc64.mk | 5 + xen/Makefile | 5 +- xen/arch/ppc/Kconfig | 42 +++++ xen/arch/ppc/Kconfig.debug | 0 xen/arch/ppc/Makefile | 16 ++ xen/arch/ppc/Rules.mk | 0 xen/arch/ppc/arch.mk | 11 ++ xen/arch/ppc/configs/openpower_defconfig | 13 ++ xen/arch/ppc/include/asm/config.h | 63 +++++++ xen/arch/ppc/include/asm/page-bits.h | 7 + xen/arch/ppc/ppc64/Makefile | 1 + xen/arch/ppc/ppc64/asm-offsets.c | 0 xen/arch/ppc/ppc64/head.S | 27 +++ xen/arch/ppc/xen.lds.S | 173 ++++++++++++++++++ 18 files changed, 454 insertions(+), 2 deletions(-) create mode 100644 automation/build/debian/bullseye-ppc64le.dockerfile create mode 100644 config/ppc64.mk create mode 100644 xen/arch/ppc/Kconfig create mode 100644 xen/arch/ppc/Kconfig.debug create mode 100644 xen/arch/ppc/Makefile create mode 100644 xen/arch/ppc/Rules.mk create mode 100644 xen/arch/ppc/arch.mk create mode 100644 xen/arch/ppc/configs/openpower_defconfig create mode 100644 xen/arch/ppc/include/asm/config.h create mode 100644 xen/arch/ppc/include/asm/page-bits.h create mode 100644 xen/arch/ppc/ppc64/Makefile create mode 100644 xen/arch/ppc/ppc64/asm-offsets.c create mode 100644 xen/arch/ppc/ppc64/head.S create mode 100644 xen/arch/ppc/xen.lds.S -- 2.30.2 From xen-devel-bounces@lists.xenproject.org Mon Jun 12 14:52:10 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 14:52:10 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547254.854541 (Exim 4.92) (envelope-from ) id 1q8itq-0001BC-1Y; Mon, 12 Jun 2023 14:52:06 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547254.854541; Mon, 12 Jun 2023 14:52:05 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8itp-0001A2-St; Mon, 12 Jun 2023 14:52:05 +0000 Received: by outflank-mailman (input) for mailman id 547254; Mon, 12 Jun 2023 14:52:05 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8itp-0000ov-CD for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 14:52:05 +0000 Received: from alpha.anastas.io (alpha.anastas.io [104.248.188.109]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id b0e1ce15-0930-11ee-8611-37d641c3527e; Mon, 12 Jun 2023 16:52:03 +0200 (CEST) Received: from authenticated-user (alpha.anastas.io [104.248.188.109]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by alpha.anastas.io (Postfix) with ESMTPSA id AC45443CEC; Mon, 12 Jun 2023 07:52:01 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: b0e1ce15-0930-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=anastas.io; s=mail; t=1686581522; bh=kxbZekarbGjd8rLMSqsHPRGP6CUOtSZDXh+06sP8JiI=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=d1TAt1LeXpsrCV+A5KmR/YXVLRVydto7elZ7zpPBzVnBIKXkv1vwTFvKhk/quHXRz mU6bwiKluxY7rJnO+pj0j4b2IG3I3LNxMfFm0HIQs0PLzySPXcF+8VWTMJmmHSuxiy TlH6HWkcVpPihUL8xWNdTuoZ31TFwhoM4zgcjyGJioUg7gQD9BpAQ2aOzxngFBri8e /sNnD3oQLpkrA2rb6t9ZknzmIxmQr8/tz+9jXKYUYjpaN0boDtXtLF/H/29bXHytVi 8LeQQ1gFVEJ/zivpk0dpfeIekznRlIGoF9zqUdjV8/2xRWvG0NMLb/zRewfj4WY99q 0NtAYKtE9NwWA== From: Shawn Anastasio To: xen-devel@lists.xenproject.org Cc: tpearson@raptorengineering.com, Shawn Anastasio , Doug Goldstein , Stefano Stabellini , Shawn Anastasio Subject: [PATCH v2 3/4] automation: Add ppc64le cross-build jobs Date: Mon, 12 Jun 2023 09:51:38 -0500 Message-Id: In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Add build jobs to cross-compile Xen for ppc64le. Signed-off-by: Shawn Anastasio --- automation/gitlab-ci/build.yaml | 60 +++++++++++++++++++++++++++++++++ 1 file changed, 60 insertions(+) diff --git a/automation/gitlab-ci/build.yaml b/automation/gitlab-ci/build.yaml index 420ffa5acb..bd8c7332db 100644 --- a/automation/gitlab-ci/build.yaml +++ b/automation/gitlab-ci/build.yaml @@ -183,6 +183,33 @@ variables: <<: *gcc +.ppc64le-cross-build-tmpl: + <<: *build + variables: + XEN_TARGET_ARCH: ppc64 + tags: + - x86_64 + +.ppc64le-cross-build: + extends: .ppc64le-cross-build-tmpl + variables: + debug: n + +.ppc64le-cross-build-debug: + extends: .ppc64le-cross-build-tmpl + variables: + debug: y + +.gcc-ppc64le-cross-build: + extends: .ppc64le-cross-build + variables: + <<: *gcc + +.gcc-ppc64le-cross-build-debug: + extends: .ppc64le-cross-build-debug + variables: + <<: *gcc + .yocto-test: stage: build image: registry.gitlab.com/xen-project/xen/${CONTAINER} @@ -516,6 +543,39 @@ archlinux-current-gcc-riscv64-debug-randconfig: EXTRA_FIXED_RANDCONFIG: CONFIG_COVERAGE=n +# Power cross-build +debian-bullseye-gcc-ppc64le: + extends: .gcc-ppc64le-cross-build + variables: + CONTAINER: debian:bullseye-ppc64le + KBUILD_DEFCONFIG: openpower_defconfig + HYPERVISOR_ONLY: y + +debian-bullseye-gcc-ppc64le-debug: + extends: .gcc-ppc64le-cross-build-debug + variables: + CONTAINER: debian:bullseye-ppc64le + KBUILD_DEFCONFIG: openpower_defconfig + HYPERVISOR_ONLY: y + +debian-bullseye-gcc-ppc64le-randconfig: + extends: .gcc-ppc64le-cross-build + variables: + CONTAINER: debian:bullseye-ppc64le + KBUILD_DEFCONFIG: openpower_defconfig + RANDCONFIG: y + EXTRA_FIXED_RANDCONFIG: + CONFIG_COVERAGE=n + +debian-bullseye-gcc-ppc64le-debug-randconfig: + extends: .gcc-ppc64le-cross-build-debug + variables: + CONTAINER: debian:bullseye-ppc64le + KBUILD_DEFCONFIG: openpower_defconfig + RANDCONFIG: y + EXTRA_FIXED_RANDCONFIG: + CONFIG_COVERAGE=n + # Yocto test jobs yocto-qemuarm64: extends: .yocto-test-arm64 -- 2.30.2 From xen-devel-bounces@lists.xenproject.org Mon Jun 12 14:52:10 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 14:52:10 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547253.854535 (Exim 4.92) (envelope-from ) id 1q8itp-00014i-KM; Mon, 12 Jun 2023 14:52:05 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547253.854535; Mon, 12 Jun 2023 14:52:05 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8itp-00014Y-F3; Mon, 12 Jun 2023 14:52:05 +0000 Received: by outflank-mailman (input) for mailman id 547253; Mon, 12 Jun 2023 14:52:04 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8ito-0000x9-0w for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 14:52:04 +0000 Received: from alpha.anastas.io (alpha.anastas.io [104.248.188.109]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id b005f7b8-0930-11ee-b232-6b7b168915f2; Mon, 12 Jun 2023 16:52:02 +0200 (CEST) Received: from authenticated-user (alpha.anastas.io [104.248.188.109]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by alpha.anastas.io (Postfix) with ESMTPSA id E407F43CEA; Mon, 12 Jun 2023 07:51:59 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: b005f7b8-0930-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=anastas.io; s=mail; t=1686581520; bh=+YId0qIzGL2wP+hRUog7lPwPFLFjkvuez2Pylo5yEJY=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=IBcBZhfFq4e7RmKUQBuwDsfPyTEtt0qkaPy2g5d9AlbhGpigsoOgnMKrCQtGiSsbY o5G+MAJ22R5RUdCEObI6SlvZhg9z//AulqbARX1qf4f01/hons0QirnNYJre1A/XRi 5MRKYkIrsr9AnKzeWoxpHk36j4V+1J6RLzS6bxa5r6giqp+cBTF3nrtIoJkX0gyiif Wt180yFlYdCZCdgy7pwQkcmxAkt2JXITBeR4cJy0i9w8Wbz9ZjvvpFNrs29Y52+1AI FZEr7tQEwyVtOlyEaRHZ13yQ5iq804N1altmtEkNUSPjXpV22jT1xRH0SS7QjbmP4z 6mgIi0RRrwJXQ== From: Shawn Anastasio To: xen-devel@lists.xenproject.org Cc: tpearson@raptorengineering.com, Shawn Anastasio , Andrew Cooper , George Dunlap , Jan Beulich , Julien Grall , Stefano Stabellini , Wei Liu , Shawn Anastasio Subject: [PATCH v2 2/4] xen: Add files needed for minimal ppc64le build Date: Mon, 12 Jun 2023 09:51:37 -0500 Message-Id: In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Add the build system changes required to build for ppc64le (POWER8+). As of now the resulting image simply boots to an infinite loop. $ make XEN_TARGET_ARCH=ppc64 -C xen openpower_defconfig $ make XEN_TARGET_ARCH=ppc64 SUBSYSTEMS=xen -C xen build This port targets POWER8+ CPUs running in Little Endian mode specifically, and does not boot on older machines. Additionally, this initial skeleton only implements the PaPR/pseries boot protocol which allows it to be booted in a standard QEMU virtual machine: $ qemu-system-ppc64 -M pseries-5.2 -m 256M -kernel xen/xen Signed-off-by: Shawn Anastasio --- config/ppc64.mk | 5 + xen/Makefile | 5 +- xen/arch/ppc/Kconfig | 42 ++++++ xen/arch/ppc/Kconfig.debug | 0 xen/arch/ppc/Makefile | 16 +++ xen/arch/ppc/Rules.mk | 0 xen/arch/ppc/arch.mk | 11 ++ xen/arch/ppc/configs/openpower_defconfig | 13 ++ xen/arch/ppc/include/asm/config.h | 63 +++++++++ xen/arch/ppc/include/asm/page-bits.h | 7 + xen/arch/ppc/ppc64/Makefile | 1 + xen/arch/ppc/ppc64/asm-offsets.c | 0 xen/arch/ppc/ppc64/head.S | 27 ++++ xen/arch/ppc/xen.lds.S | 173 +++++++++++++++++++++++ 14 files changed, 361 insertions(+), 2 deletions(-) create mode 100644 config/ppc64.mk create mode 100644 xen/arch/ppc/Kconfig create mode 100644 xen/arch/ppc/Kconfig.debug create mode 100644 xen/arch/ppc/Makefile create mode 100644 xen/arch/ppc/Rules.mk create mode 100644 xen/arch/ppc/arch.mk create mode 100644 xen/arch/ppc/configs/openpower_defconfig create mode 100644 xen/arch/ppc/include/asm/config.h create mode 100644 xen/arch/ppc/include/asm/page-bits.h create mode 100644 xen/arch/ppc/ppc64/Makefile create mode 100644 xen/arch/ppc/ppc64/asm-offsets.c create mode 100644 xen/arch/ppc/ppc64/head.S create mode 100644 xen/arch/ppc/xen.lds.S diff --git a/config/ppc64.mk b/config/ppc64.mk new file mode 100644 index 0000000000..597f0668c3 --- /dev/null +++ b/config/ppc64.mk @@ -0,0 +1,5 @@ +CONFIG_PPC := y +CONFIG_PPC64 := y +CONFIG_PPC_$(XEN_OS) := y + +CONFIG_XEN_INSTALL_SUFFIX := diff --git a/xen/Makefile b/xen/Makefile index e89fc461fc..db5454fb58 100644 --- a/xen/Makefile +++ b/xen/Makefile @@ -38,7 +38,7 @@ EFI_MOUNTPOINT ?= $(BOOT_DIR)/efi ARCH=$(XEN_TARGET_ARCH) SRCARCH=$(shell echo $(ARCH) | \ sed -e 's/x86.*/x86/' -e s'/arm\(32\|64\)/arm/g' \ - -e s'/riscv.*/riscv/g') + -e s'/riscv.*/riscv/g' -e s'/ppc.*/ppc/g') export ARCH SRCARCH # Allow someone to change their config file @@ -244,7 +244,7 @@ include $(XEN_ROOT)/Config.mk export TARGET_SUBARCH := $(XEN_TARGET_ARCH) export TARGET_ARCH := $(shell echo $(XEN_TARGET_ARCH) | \ sed -e 's/x86.*/x86/' -e s'/arm\(32\|64\)/arm/g' \ - -e s'/riscv.*/riscv/g') + -e s'/riscv.*/riscv/g' -e s'/ppc.*/ppc/g') export CONFIG_SHELL := $(SHELL) export CC CXX LD NM OBJCOPY OBJDUMP ADDR2LINE @@ -563,6 +563,7 @@ _clean: $(Q)$(MAKE) $(clean)=xsm $(Q)$(MAKE) $(clean)=crypto $(Q)$(MAKE) $(clean)=arch/arm + $(Q)$(MAKE) $(clean)=arch/ppc $(Q)$(MAKE) $(clean)=arch/riscv $(Q)$(MAKE) $(clean)=arch/x86 $(Q)$(MAKE) $(clean)=test diff --git a/xen/arch/ppc/Kconfig b/xen/arch/ppc/Kconfig new file mode 100644 index 0000000000..a0a70adef4 --- /dev/null +++ b/xen/arch/ppc/Kconfig @@ -0,0 +1,42 @@ +config PPC + def_bool y + +config PPC64 + def_bool y + select 64BIT + +config ARCH_DEFCONFIG + string + default "arch/ppc/configs/openpower_defconfig" + +menu "Architecture Features" + +source "arch/Kconfig" + +endmenu + +menu "ISA Selection" + +choice + prompt "Base ISA" + default POWER_ISA_2_07B if PPC64 + help + This selects the base ISA version that Xen will target. + +config POWER_ISA_2_07B + bool "Power ISA 2.07B" + help + Target version 2.07B of the Power ISA (POWER8) + +config POWER_ISA_3_00 + bool "Power ISA 3.00" + help + Target version 3.00 of the Power ISA (POWER9) + +endchoice + +endmenu + +source "common/Kconfig" + +source "drivers/Kconfig" diff --git a/xen/arch/ppc/Kconfig.debug b/xen/arch/ppc/Kconfig.debug new file mode 100644 index 0000000000..e69de29bb2 diff --git a/xen/arch/ppc/Makefile b/xen/arch/ppc/Makefile new file mode 100644 index 0000000000..10b101cf9c --- /dev/null +++ b/xen/arch/ppc/Makefile @@ -0,0 +1,16 @@ +obj-$(CONFIG_PPC64) += ppc64/ + +$(TARGET): $(TARGET)-syms + cp -f $< $@ + +$(TARGET)-syms: $(objtree)/prelink.o $(obj)/xen.lds + $(LD) $(XEN_LDFLAGS) -T $(obj)/xen.lds -N $< $(build_id_linker) -o $@ + $(NM) -pa --format=sysv $(@D)/$(@F) \ + | $(objtree)/tools/symbols --all-symbols --xensyms --sysv --sort \ + >$(@D)/$(@F).map + +$(obj)/xen.lds: $(src)/xen.lds.S FORCE + $(call if_changed_dep,cpp_lds_S) + +.PHONY: include +include: diff --git a/xen/arch/ppc/Rules.mk b/xen/arch/ppc/Rules.mk new file mode 100644 index 0000000000..e69de29bb2 diff --git a/xen/arch/ppc/arch.mk b/xen/arch/ppc/arch.mk new file mode 100644 index 0000000000..c185a5028a --- /dev/null +++ b/xen/arch/ppc/arch.mk @@ -0,0 +1,11 @@ +######################################## +# Power-specific definitions + +ppc-march-$(CONFIG_POWER_ISA_2_07B) := power8 +ppc-march-$(CONFIG_POWER_ISA_3_00) := power9 + +CFLAGS += -mcpu=$(ppc-march-y) -mstrict-align -mcmodel=large -mabi=elfv2 -mno-altivec -mno-vsx + +# TODO: Drop override when more of the build is working +override ALL_OBJS-y = arch/$(TARGET_ARCH)/built_in.o +override ALL_LIBS-y = diff --git a/xen/arch/ppc/configs/openpower_defconfig b/xen/arch/ppc/configs/openpower_defconfig new file mode 100644 index 0000000000..8783eb3488 --- /dev/null +++ b/xen/arch/ppc/configs/openpower_defconfig @@ -0,0 +1,13 @@ +# CONFIG_SCHED_CREDIT is not set +# CONFIG_SCHED_RTDS is not set +# CONFIG_SCHED_NULL is not set +# CONFIG_SCHED_ARINC653 is not set +# CONFIG_TRACEBUFFER is not set +# CONFIG_HYPFS is not set +# CONFIG_GRANT_TABLE is not set +# CONFIG_SPECULATIVE_HARDEN_ARRAY is not set + +CONFIG_PPC64=y +CONFIG_DEBUG=y +CONFIG_DEBUG_INFO=y +CONFIG_EXPERT=y diff --git a/xen/arch/ppc/include/asm/config.h b/xen/arch/ppc/include/asm/config.h new file mode 100644 index 0000000000..7a2862ef7a --- /dev/null +++ b/xen/arch/ppc/include/asm/config.h @@ -0,0 +1,63 @@ +#ifndef __PPC_CONFIG_H__ +#define __PPC_CONFIG_H__ + +#include +#include + +#if defined(CONFIG_PPC64) +#define LONG_BYTEORDER 3 +#define ELFSIZE 64 +#define MAX_VIRT_CPUS 1024u +#else +#error "Unsupported PowerPC variant" +#endif + +#define BYTES_PER_LONG (1 << LONG_BYTEORDER) +#define BITS_PER_LONG (BYTES_PER_LONG << 3) +#define POINTER_ALIGN BYTES_PER_LONG + +#define BITS_PER_LLONG 64 + +/* xen_ulong_t is always 64 bits */ +#define BITS_PER_XEN_ULONG 64 + +#define CONFIG_PPC_L1_CACHE_SHIFT 7 +#define CONFIG_PAGEALLOC_MAX_ORDER 18 +#define CONFIG_DOMU_MAX_ORDER 9 +#define CONFIG_HWDOM_MAX_ORDER 10 + +#define OPT_CONSOLE_STR "dtuart" +#define INVALID_VCPU_ID MAX_VIRT_CPUS + +/* Linkage for PPC */ +#ifdef __ASSEMBLY__ +#define ALIGN .align 2 + +#define ENTRY(name) \ + .globl name; \ + ALIGN; \ + name: +#endif + +#define XEN_VIRT_START _AT(UL, 0x400000) + +#define SMP_CACHE_BYTES (1 << 6) + +#define STACK_ORDER 2 +#define STACK_SIZE (PAGE_SIZE << STACK_ORDER) + +/* 288 bytes below the stack pointer must be preserved by interrupt handlers */ +#define STACK_VOLATILE_AREA 288 + +/* size of minimum stack frame; C code can write into the caller's stack */ +#define STACK_FRAME_OVERHEAD 32 + +#endif /* __PPC_CONFIG_H__ */ +/* + * Local variables: + * mode: C + * c-file-style: "BSD" + * c-basic-offset: 4 + * indent-tabs-mode: nil + * End: + */ diff --git a/xen/arch/ppc/include/asm/page-bits.h b/xen/arch/ppc/include/asm/page-bits.h new file mode 100644 index 0000000000..4c01bf9716 --- /dev/null +++ b/xen/arch/ppc/include/asm/page-bits.h @@ -0,0 +1,7 @@ +#ifndef __PPC_PAGE_BITS_H__ +#define __PPC_PAGE_BITS_H__ + +#define PAGE_SHIFT 16 /* 64 KiB Pages */ +#define PADDR_BITS 48 + +#endif /* __PPC_PAGE_BITS_H__ */ diff --git a/xen/arch/ppc/ppc64/Makefile b/xen/arch/ppc/ppc64/Makefile new file mode 100644 index 0000000000..3340058c08 --- /dev/null +++ b/xen/arch/ppc/ppc64/Makefile @@ -0,0 +1 @@ +obj-y += head.o diff --git a/xen/arch/ppc/ppc64/asm-offsets.c b/xen/arch/ppc/ppc64/asm-offsets.c new file mode 100644 index 0000000000..e69de29bb2 diff --git a/xen/arch/ppc/ppc64/head.S b/xen/arch/ppc/ppc64/head.S new file mode 100644 index 0000000000..e24331f95c --- /dev/null +++ b/xen/arch/ppc/ppc64/head.S @@ -0,0 +1,27 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ + +.section .text.header, "ax", %progbits + +ENTRY(start) + /* + * Depending on how we were booted, the CPU could be running in either + * Little Endian or Big Endian mode. The following trampoline from Linux + * cleverly uses an instruction that encodes to a NOP if the CPU's + * endianness matches the assumption of the assembler (LE, in our case) + * or a branch to code that performs the endian switch in the other case. + */ + tdi 0, 0, 0x48 /* Reverse endian of b . + 8 */ + b $ + 44 /* Skip trampoline if endian is good */ + .long 0xa600607d /* mfmsr r11 */ + .long 0x01006b69 /* xori r11,r11,1 */ + .long 0x00004039 /* li r10,0 */ + .long 0x6401417d /* mtmsrd r10,1 */ + .long 0x05009f42 /* bcl 20,31,$+4 */ + .long 0xa602487d /* mflr r10 */ + .long 0x14004a39 /* addi r10,r10,20 */ + .long 0xa6035a7d /* mtsrr0 r10 */ + .long 0xa6037b7d /* mtsrr1 r11 */ + .long 0x2400004c /* rfid */ + + /* Now that the endianness is confirmed, continue */ +1: b 1b diff --git a/xen/arch/ppc/xen.lds.S b/xen/arch/ppc/xen.lds.S new file mode 100644 index 0000000000..89fcdc9c00 --- /dev/null +++ b/xen/arch/ppc/xen.lds.S @@ -0,0 +1,173 @@ +#include + +#undef ENTRY +#undef ALIGN + +OUTPUT_ARCH(powerpc:common64) +ENTRY(start) + +PHDRS +{ + text PT_LOAD ; +#if defined(BUILD_ID) + note PT_NOTE ; +#endif +} + +/** + * OF's base load address is 0x400000 (XEN_VIRT_START). + * By defining sections this way, we can keep our virtual address base at 0x400000 + * while keeping the physical base at 0x0. + * + * Without this, OF incorrectly loads .text at 0x400000 + 0x400000 = 0x800000. + * Taken from x86/xen.lds.S + */ +#ifdef CONFIG_LD_IS_GNU +# define DECL_SECTION(x) x : AT(ADDR(#x) - XEN_VIRT_START) +#else +# define DECL_SECTION(x) x : AT(ADDR(x) - XEN_VIRT_START) +#endif + +SECTIONS +{ + . = XEN_VIRT_START; + + DECL_SECTION(.text) { + _stext = .; /* Text section */ + *(.text.header) + + *(.text.cold) + *(.text.unlikely .text.*_unlikely .text.unlikely.*) + + *(.text) +#ifdef CONFIG_CC_SPLIT_SECTIONS + *(.text.*) +#endif + + *(.fixup) + *(.gnu.warning) + . = ALIGN(POINTER_ALIGN); + _etext = .; /* End of text section */ + } :text + + . = ALIGN(PAGE_SIZE); + DECL_SECTION(.rodata) { + _srodata = .; /* Read-only data */ + *(.rodata) + *(.rodata.*) + *(.data.rel.ro) + *(.data.rel.ro.*) + + VPCI_ARRAY + + . = ALIGN(POINTER_ALIGN); + _erodata = .; /* End of read-only data */ + } :text + + #if defined(BUILD_ID) + . = ALIGN(4); + DECL_SECTION(.note.gnu.build-id) { + __note_gnu_build_id_start = .; + *(.note.gnu.build-id) + __note_gnu_build_id_end = .; + } :note :text + #endif + _erodata = .; /* End of read-only data */ + + . = ALIGN(PAGE_SIZE); + DECL_SECTION(.data.ro_after_init) { + __ro_after_init_start = .; + *(.data.ro_after_init) + . = ALIGN(PAGE_SIZE); + __ro_after_init_end = .; + } : text + + DECL_SECTION(.data.read_mostly) { + *(.data.read_mostly) + } :text + + . = ALIGN(PAGE_SIZE); + DECL_SECTION(.data) { /* Data */ + *(.data.page_aligned) + . = ALIGN(8); + __start_schedulers_array = .; + *(.data.schedulers) + __end_schedulers_array = .; + + HYPFS_PARAM + + *(.data .data.*) + CONSTRUCTORS + } :text + + . = ALIGN(PAGE_SIZE); /* Init code and data */ + __init_begin = .; + DECL_SECTION(.init.text) { + _sinittext = .; + *(.init.text) + _einittext = .; + . = ALIGN(PAGE_SIZE); /* Avoid mapping alt insns executable */ + } :text + + . = ALIGN(PAGE_SIZE); + DECL_SECTION(.init.data) { + *(.init.rodata) + *(.init.rodata.*) + + . = ALIGN(POINTER_ALIGN); + __setup_start = .; + *(.init.setup) + __setup_end = .; + + __initcall_start = .; + *(.initcallpresmp.init) + __presmp_initcall_end = .; + *(.initcall1.init) + __initcall_end = .; + + LOCK_PROFILE_DATA + + *(.init.data) + *(.init.data.rel) + *(.init.data.rel.*) + + . = ALIGN(8); + __ctors_start = .; + *(.ctors) + *(.init_array) + *(SORT(.init_array.*)) + __ctors_end = .; + } :text + . = ALIGN(POINTER_ALIGN); + __init_end = .; + + DECL_SECTION(.bss) { /* BSS */ + __bss_start = .; + *(.bss.stack_aligned) + . = ALIGN(PAGE_SIZE); + *(.bss.page_aligned) + . = ALIGN(PAGE_SIZE); + __per_cpu_start = .; + *(.bss.percpu.page_aligned) + *(.bss.percpu) + . = ALIGN(SMP_CACHE_BYTES); + *(.bss.percpu.read_mostly) + . = ALIGN(SMP_CACHE_BYTES); + __per_cpu_data_end = .; + *(.bss .bss.*) + . = ALIGN(POINTER_ALIGN); + __bss_end = .; + } :text + _end = . ; + + /* Section for the device tree blob (if any). */ + DECL_SECTION(.dtb) { *(.dtb) } :text + + DWARF2_DEBUG_SECTIONS + + DISCARD_SECTIONS + + STABS_DEBUG_SECTIONS + + ELF_DETAILS_SECTIONS +} -- 2.30.2 From xen-devel-bounces@lists.xenproject.org Mon Jun 12 14:52:34 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 14:52:34 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547265.854554 (Exim 4.92) (envelope-from ) id 1q8iuI-0002Jh-9P; Mon, 12 Jun 2023 14:52:34 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547265.854554; Mon, 12 Jun 2023 14:52:34 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8iuI-0002Ja-6u; Mon, 12 Jun 2023 14:52:34 +0000 Received: by outflank-mailman (input) for mailman id 547265; Mon, 12 Jun 2023 14:52:32 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8iuG-0000ov-N5 for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 14:52:32 +0000 Received: from alpha.anastas.io (alpha.anastas.io [104.248.188.109]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id c12d18e4-0930-11ee-8611-37d641c3527e; Mon, 12 Jun 2023 16:52:30 +0200 (CEST) Received: from authenticated-user (alpha.anastas.io [104.248.188.109]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by alpha.anastas.io (Postfix) with ESMTPSA id 5820043CE9; Mon, 12 Jun 2023 07:51:58 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: c12d18e4-0930-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=anastas.io; s=mail; t=1686581518; bh=qfGcTUScEPS/kn+AZiR+Dr4t3spHBjWMGqcd4ljzqZI=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=RsLusLCecRpceUtzD0yda9QmLbh2qDyLtzaFRxmHSgeg9y4bhYsH+B+mEiv2BQhui +XvbXv7LeWOHlTKIfcqQTXhQVzTXWULfS5XTd9S6wnz4/G7X00Kiu3q4ahn3B/W7yT qbZqePy3UoDEHhYz6ktoyNbb5sTV5QasMHxb6iQ7jWOoPfSgXEyQ1KZPPJCcz2xMym yhlXS7aYyN+2mCEf2UtIpU9hEgft65VowfhGq/rsmNOrmBRzGGxCcC4c3Gcon/Hquk gPYSmd7vsgUo5J7+xhY+9/IkfA6FVEK2AavTrH3aJ/wlgwAvPzF0tAB5MS7cHo8lJ0 jTUncOwFWDfcQ== From: Shawn Anastasio To: xen-devel@lists.xenproject.org Cc: tpearson@raptorengineering.com, Shawn Anastasio , Doug Goldstein , Stefano Stabellini , Shawn Anastasio Subject: [PATCH v2 1/4] automation: Add container for ppc64le builds Date: Mon, 12 Jun 2023 09:51:36 -0500 Message-Id: In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Add a container for cross-compiling xen for ppc64le. Signed-off-by: Shawn Anastasio --- .../build/debian/bullseye-ppc64le.dockerfile | 28 +++++++++++++++++++ automation/scripts/containerize | 1 + 2 files changed, 29 insertions(+) create mode 100644 automation/build/debian/bullseye-ppc64le.dockerfile diff --git a/automation/build/debian/bullseye-ppc64le.dockerfile b/automation/build/debian/bullseye-ppc64le.dockerfile new file mode 100644 index 0000000000..8a87631b52 --- /dev/null +++ b/automation/build/debian/bullseye-ppc64le.dockerfile @@ -0,0 +1,28 @@ +FROM debian:bullseye-slim +LABEL maintainer.name="The Xen Project" \ + maintainer.email="xen-devel@lists.xenproject.org" + +ENV DEBIAN_FRONTEND=noninteractive +ENV USER root + +# Add compiler path +ENV CROSS_COMPILE powerpc64le-linux-gnu- + +RUN mkdir /build +WORKDIR /build + +# build depends +RUN apt-get update && \ + apt-get --quiet --yes --no-install-recommends install \ + bison \ + build-essential \ + checkpolicy \ + flex \ + gawk \ + gcc-powerpc64le-linux-gnu \ + make \ + python3-minimal \ + && \ + apt-get autoremove -y && \ + apt-get clean && \ + rm -rf /var/lib/apt/lists* /tmp/* /var/tmp/* diff --git a/automation/scripts/containerize b/automation/scripts/containerize index 5476ff0ea1..6d46f63665 100755 --- a/automation/scripts/containerize +++ b/automation/scripts/containerize @@ -33,6 +33,7 @@ case "_${CONTAINER}" in _focal) CONTAINER="${BASE}/ubuntu:focal" ;; _jessie) CONTAINER="${BASE}/debian:jessie" ;; _jessie-i386) CONTAINER="${BASE}/debian:jessie-i386" ;; + _bullseye-ppc64le) CONTAINER="${BASE}/debian:bullseye-ppc64le" ;; _stretch|_) CONTAINER="${BASE}/debian:stretch" ;; _stretch-i386) CONTAINER="${BASE}/debian:stretch-i386" ;; _buster-gcc-ibt) CONTAINER="${BASE}/debian:buster-gcc-ibt" ;; -- 2.30.2 From xen-devel-bounces@lists.xenproject.org Mon Jun 12 14:53:07 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 14:53:07 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547274.854565 (Exim 4.92) (envelope-from ) id 1q8iup-0002yN-JG; Mon, 12 Jun 2023 14:53:07 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547274.854565; Mon, 12 Jun 2023 14:53:07 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8iup-0002yE-GM; Mon, 12 Jun 2023 14:53:07 +0000 Received: by outflank-mailman (input) for mailman id 547274; Mon, 12 Jun 2023 14:53:06 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8iuo-0000x9-7N for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 14:53:06 +0000 Received: from alpha.anastas.io (alpha.anastas.io [104.248.188.109]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id d5da4387-0930-11ee-b232-6b7b168915f2; Mon, 12 Jun 2023 16:53:05 +0200 (CEST) Received: from authenticated-user (alpha.anastas.io [104.248.188.109]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by alpha.anastas.io (Postfix) with ESMTPSA id 546E543CEE; Mon, 12 Jun 2023 07:52:03 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: d5da4387-0930-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=anastas.io; s=mail; t=1686581524; bh=QMlp6vVYLLO4ySA+tnP41d21m4WRIgsuxZbtRtfvbEc=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=PEdzWcq2SJ1Gz1AqkF+GmSK9fFFW3yVucHXDzdrpmemcfrtjRUEyEvy91NuQMQmVX bdceifG9bUt5m/b2q9xXdJEEdwrawXuW6f7OLGglrVoetl8JuPq6zSWwMJxblFUoH4 op4X6eSqziRQoSjVbAcqfrv6VGWPnVoezytd52YKsjeQsCXLzqXArGCyJ3fyGRqUYP p7jDzJJRVNvugRDKKmxwPvJxefCQv6TXJ+eGKUmm7YVZilR/2e5EG5oHgdQj8n+iU9 vHbErQQRqGQPmnOBAVqjBeze1EI1P8DJA9xoxlPh3Cp1WWHt9+RxUfMqs5n8ywEX5W Mu5DGTMALJ3WA== From: Shawn Anastasio To: xen-devel@lists.xenproject.org Cc: tpearson@raptorengineering.com, Shawn Anastasio , Andrew Cooper , George Dunlap , Jan Beulich , Julien Grall , Stefano Stabellini , Wei Liu , Shawn Anastasio Subject: [PATCH v2 4/4] maintainers: Add ppc64 maintainer Date: Mon, 12 Jun 2023 09:51:39 -0500 Message-Id: In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Signed-off-by: Shawn Anastasio --- MAINTAINERS | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/MAINTAINERS b/MAINTAINERS index 1bb7a6a839..8966175400 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -460,6 +460,10 @@ X: xen/arch/x86/acpi/lib.c F: xen/drivers/cpufreq/ F: xen/include/acpi/cpufreq/ +PPC64 +M: Shawn Anastasio +F: xen/arch/ppc + PUBLIC I/O INTERFACES AND PV DRIVERS DESIGNS M: Juergen Gross S: Supported -- 2.30.2 From xen-devel-bounces@lists.xenproject.org Mon Jun 12 14:56:56 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 14:56:56 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547279.854574 (Exim 4.92) (envelope-from ) id 1q8iyN-0003i8-49; Mon, 12 Jun 2023 14:56:47 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547279.854574; Mon, 12 Jun 2023 14:56:47 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8iyN-0003i1-0t; Mon, 12 Jun 2023 14:56:47 +0000 Received: by outflank-mailman (input) for mailman id 547279; Mon, 12 Jun 2023 14:56:45 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8iyL-0003hv-00 for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 14:56:45 +0000 Received: from alpha.anastas.io (alpha.anastas.io [104.248.188.109]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 5758e4af-0931-11ee-8611-37d641c3527e; Mon, 12 Jun 2023 16:56:42 +0200 (CEST) Received: from authenticated-user (alpha.anastas.io [104.248.188.109]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by alpha.anastas.io (Postfix) with ESMTPSA id 2D236439D2; Mon, 12 Jun 2023 07:56:40 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 5758e4af-0931-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=anastas.io; s=mail; t=1686581801; bh=Q7T+Nh3UpBYAq53y45AQNwBQCjqNk0W9lhapEHm+sIc=; h=Date:Cc:Subject:From:To:References:In-Reply-To:From; b=FxXFUY3xy7IhBczOXQjCH18fF9LnDhK+3YdIBo2Qk/qRTvw8C9+cerU5SKaRWM8ko Uae5cuOqaN0Ip7//GXc90xXTwuBrH5v+C6Dp+8xBzpY8ws9beVGFI6hHmvDoRF8KL2 ZCT362w/U1WpTru6Gsa1jLE5MDCbc663UBYMRazBQkR6sQCqrsUNEzJ4EWUC+fK1Ht o9RXkWshCyqE3htm/Umf+WH0XdSzvnVNhkTwssx2fuca2TE0eR76ZwtO9E/kouwcjm 8pdBOqqU+4ZVD4TEmdPRqZzJchQwGnu+8TPAGesEpgpnjytqGcqv+TMLyZx96YUCDR DH0+eFVAGs3mA== Mime-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=UTF-8 Date: Mon, 12 Jun 2023 09:56:39 -0500 Message-Id: Cc: , "Doug Goldstein" , "Stefano Stabellini" , "Andrew Cooper" , "George Dunlap" , "Jan Beulich" , "Julien Grall" , "Wei Liu" , "Shawn Anastasio" Subject: Re: [PATCH v2 0/4] Initial support for Power From: "Shawn Anastasio" To: "Shawn Anastasio" , References: In-Reply-To: On Mon Jun 12, 2023 at 9:51 AM CDT, Shawn Anastasio wrote: > With an appropriate powerpc64le-linux-gnu cross-toolchain, the minimal > image can be built with: > > $ make XEN_TARGET_ARCH=3Dppc64 -C xen openpower_defconfig > $ make XEN_TARGET_ARCH=3Dppc64 SUBSYSTEMS=3Dxen -C xen TARGET=3Dppc64/hea= d.o Minor clarification to this cover letter, the manual TARGET=3D override is not necessary. All that is needed is: $ make XEN_TARGET_ARCH=3Dppc64 SUBSYSTEMS=3Dxen -C xen build Thanks, Shawn From xen-devel-bounces@lists.xenproject.org Mon Jun 12 15:03:45 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 15:03:45 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547287.854585 (Exim 4.92) (envelope-from ) id 1q8j4s-0005DU-SX; Mon, 12 Jun 2023 15:03:30 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547287.854585; Mon, 12 Jun 2023 15:03:30 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8j4s-0005DN-ON; Mon, 12 Jun 2023 15:03:30 +0000 Received: by outflank-mailman (input) for mailman id 547287; Mon, 12 Jun 2023 15:03:29 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8j4r-0005DH-8g for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 15:03:29 +0000 Received: from EUR05-AM6-obe.outbound.protection.outlook.com (mail-am6eur05on20623.outbound.protection.outlook.com [2a01:111:f400:7e1b::623]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 48887823-0932-11ee-8611-37d641c3527e; Mon, 12 Jun 2023 17:03:26 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by AM9PR04MB8889.eurprd04.prod.outlook.com (2603:10a6:20b:408::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.41; Mon, 12 Jun 2023 15:03:23 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.039; Mon, 12 Jun 2023 15:03:23 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 48887823-0932-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=DRmgXruB8H8w5hhNdEyX9Ek6N/txZKdpKbhDxOvW7UAt2+ZQ5p14+j6oec0LpK37lzUwwqT2g1LqmekJpHousPa+RpnTHIYBoJkSiD4mCfoPEUCMbeC7zwNTECqBaaujVqfXS9EL1r4+sFeWG/F6hm1/T4rv8ubgEkw8R8zbuarLdxa8SUFKn46Q+WvT7DismxVjQ1mMJ39ljeZYMAueV4MeirbTHF+GTNl34IfT1XZuBda+0+4ir6du59+3lR3VcX4ria1X79PBo9Cp4DJ6Jsl5uOmkcwMP1V3DUR/xvYKAIxGoe1tkEQYiV7uolKmSn8D0nIul3ZcITGCzeHlFEg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=ksw4XH/LbdgL2gKyz7+BfWyLThYmYQ83bPe3RtvIEdY=; b=iv/XU8Kv3oINm7WUEZwkq5suwS93kYkqkEHPRinoJc+/ydHpor04mBJHqFKItwzy2yRTpPH+jqcJnfoitwN2dxhk2B4zIHWrF33+h5eMEAblHbyEMxURrLiV7rsTp8T0dPZyhO98Nro8lEiw3Z40LrUN+clUeX4QZE4nK7er8o346fQL+qXcmieFu+73tDmSAoQ42x3FsAfC1TfxmaS9YgvCnjCzKoNH0BA017Dp7n/jy5uQv82GuR1vA5pIiuLyO9bjr53R8bm1ri4P1pg82lGThLQy2AxRRnO+zfkfMpR1fGZwzBGeCQUt5e+zDv5Ik8qFegsrbh/bPwTnzNYcDg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=ksw4XH/LbdgL2gKyz7+BfWyLThYmYQ83bPe3RtvIEdY=; b=BzRrc00EikTEZFNh7uUAhJmZbv156Sgi787YTiyc7+oG0LmG4J+K6+uAoIXj/mx+5Qjsp5pVBn4+dWDr0S9f4Vdd4RFL+8J+yzWR8XJcFKK/RdJSb9Ehx8Q4wjK8pdPl98fxYho80ZizPRNIWNsa+dE+jeDTr6xUvEw4vRLY0oBbwzbp437zjbE54TOWbfUYNnghpwA52WjXJyC/EzJgWCd/67AVWMDbJYnbzeMtHSP7INh5DCiuj+dM/3+R3x1ruOn+02koFf9N6ji7dxCpBcUrbBsX24bYCkWaoWEnEfhObbg8mKnr4+F9mypY3O7rfJeJUHPmMikOYIykxDH8GA== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: Date: Mon, 12 Jun 2023 17:03:21 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v2 4/4] maintainers: Add ppc64 maintainer Content-Language: en-US To: Shawn Anastasio Cc: tpearson@raptorengineering.com, Andrew Cooper , George Dunlap , Julien Grall , Stefano Stabellini , Wei Liu , Shawn Anastasio , xen-devel@lists.xenproject.org References: From: Jan Beulich In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR2P281CA0145.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:98::17) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|AM9PR04MB8889:EE_ X-MS-Office365-Filtering-Correlation-Id: b753c8bb-71dd-44b9-f000-08db6b562ad6 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: H1VazaXDkv4fv5tvHZtLUdiPJyQ7ZjlXaAE88j1F+/B5+eSYyVDMM6vWQJz+sikcskYa1dLGsCgbEvYj5QlAsCagMhcf+siUwwnFyZaNlqKOI6NXzwfxh1NoYEgCeA1gLksBKHTIl/Owqvo4Ez9P+iC2qMMXTbwHLSYMZw62IDZfmUzmLf9SEHtb78k44JAj4GFZqcWgqB3shXwb3RGZBBQL8+ei9uHWmik9Mub/ENYQibhZWYbrKMI8o86AIT3bHAgvIoqgPrYet4dRMcZ/Y88J2xZQJczZFCvJQu7OkstFFryRLOJwKQy+znp//RP+BvkALlH0xdS2BeSAAAT3wrtfxKCBOxGq24tYZpHJp7NFavS//0ue20JBZw2dQXjN7UnE9fhF88IwXvoTCAiC6Kr3xhiC5dbiUl3ah4iAj7/TJ8h66Ilu1gcAPdZbiU3oFPXBCkk81lCt1kp3Y5qspCNpDbeTFa54BMt6M6okZCVSNxX3NDz522PB26a7b0l7ewo3mJ0t/E0GtzBmkLpahhIfbPRqCaNIk4B77bLUU59Rmajs70+0vwojg29ZZJEZX5tlxx98qVTLdQuy3Tl1p7IYX/VfzA3kE5TwkpFH9L951QTYn/WqBg9BPH1g0vZqknNUwA8Qp7HhcSaWQNMkDUNcf7R3NgpihkaFBEtbf1xT4bB9IHj/t6sXxWSAm67Q X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(366004)(396003)(39860400002)(136003)(346002)(376002)(451199021)(53546011)(4744005)(2906002)(26005)(6512007)(6506007)(186003)(36756003)(31696002)(86362001)(38100700002)(2616005)(54906003)(478600001)(41300700001)(31686004)(316002)(66476007)(66556008)(66946007)(4326008)(6916009)(6486002)(8676002)(8936002)(5660300002)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?VUxnclhWa25ycytkMnRybnJhbU94T0t1UWpxTnM2dDcwQVAxdjVXbWkxL2tU?= =?utf-8?B?OGRSRDZ6U0Y4a2dPb3JjUXh1dmRQQ3VPQXZCNldEeUpoVCttRVlzNktjNkdv?= =?utf-8?B?dVBXd0RsWFlCZXUwVzE2VTMxL0hsQ0tOQ2VOenpRSFdublpDTGYxRUFFZ0lM?= =?utf-8?B?VldRZW1xdzM3cnhFeFliTkYzVXNsSHc4cjI2aWYrRk44NHdRZjRJMGdXQ0NI?= =?utf-8?B?ZmxiZWJENld6eEhYdGZPbjcyVXNtekR1TWhRYUJobWEyUXZDb3JleFMxQWVT?= =?utf-8?B?OVp0eUFKU0pVMmx0YmdxOUtxQ3ZnYzdYUjhhTHNTMmZXN050a1RHMUlWbzVJ?= =?utf-8?B?UzIvSWt4RXdCWUt5MUdhVVRuczJTVmltaHBkdlhsdmhVTlVRaU5NYnJnQlVH?= =?utf-8?B?N2tUaHJybXlwZVlyTDV3RWdGRkRQaVNIY1lyQWMvK09GOGE5YUZJcEhBN3hE?= =?utf-8?B?UWtrK3RFcEw3K1U4eXp4Mnh0b2NVbzF0M3pZU2VkcU5ZWHVLQnB4eVFOZS9a?= =?utf-8?B?OVU3ZWd2b3kyQUxmYU54RzlKMUhIUHJCTE5kci9aNDlOZEhZcm83bXBwWkdn?= =?utf-8?B?UHlTQTllN2lHbEJQeVltNUlacWZMOWFTV3dRYThMVUZ3RS9kMUtFc3dqR2ZF?= =?utf-8?B?ZzExMStJaWtacWV0QVZ3WlhJOGlJNjJWb3UvakkweVhTZjArdnF0bnM0TzJy?= =?utf-8?B?Y2xrNmZGTVV3Z0FqN1pYaE5UaHVOVS84dUg2RG9tMnJTeGNVaWFQS0x2OERu?= =?utf-8?B?czBrZkZXSmJJc0Foa3Q3cGNucGlmTFJQU0xXSGs4VHdKb3ZoQ1RGTUo3WG5o?= =?utf-8?B?SEc3ZmtYdjN1L2d2OEY2RmVrUERUaW1vTEtqS3M2QmlvcEJHNnZzZjlxbUtt?= =?utf-8?B?SUtVWkdxSWRuOW5wejliZHAzODQxYkxJOWRGcjhTUXpVbVRic0l0NXlwdkEw?= =?utf-8?B?emRpVVhuS1FhS1R3UG5EcnNoL1ZJcGU3SW5WOEZlaUpwclo1NEFnaHJDMXlO?= =?utf-8?B?Q3lzcm9LdDIrZkhPaGdkeHhXT09TbkNhSXNvQ0xIdWNzWmJmWjFPMVZTTmNK?= =?utf-8?B?dWZEcld6cGVJcFpJWUo0Q2grMXBoc21FYnhyMG5FV0JGZUI4WTVyU2luSEZE?= =?utf-8?B?bkZ3SEhzb2ZXOVNaQlRUNkZNSkVzT2FydFViYmRXdjBaQXBxbnRZeXlwMW8w?= =?utf-8?B?QXpwNXRjZnhtNzJhbS8vRWdsZm81UUNLTDFHOEUxNUFGcmJWT1ZtSks3VVV4?= =?utf-8?B?U29KK2xCd1I3ZzZtcGlSYjI4cm1PQmNCaW9DL3g5RGpCdDZSZWFKZjRQZnRj?= =?utf-8?B?YzcwN1VQc0FVOXdua0IwNVA2enFVb3VWR2ljbHE0NUlmNVp5SjRZWUFXYjlX?= =?utf-8?B?Y2tabUk2Z0JHUWZkNjh3R2k1ajU0SitscThiOGJGVHFLRWc1eXJkL1dWQlJL?= =?utf-8?B?NXloNHFRMmRoYk5kN1hwN3Z6bjFyQWpCUmQzbEREaFpOL1dES0NORE9QWGF4?= =?utf-8?B?cVg2QlNGRDZUZE5mVDk5ZDJjWjVRZU4rNTM2aUcwVm9rV3JZQVJSS0ZOSXJC?= =?utf-8?B?L2tCVVgxeXpuWXRSZGN5QTd1RjZ6cnpNTFA2SEI0Um9rSEtqcytkK3NXNW1T?= =?utf-8?B?Q1FVWmFIRUpGYTlDQjBBWkxqN2RqYkhsUGlDbVRsVWlDOXcydlM2aVMzS2tQ?= =?utf-8?B?VDlBWFF2R3lFVDkwQUE0VTRjTkczV1RZNWVUOG1DbkFTRHd2b0t1LzBCZThJ?= =?utf-8?B?bDhpbDh3L2I3SGtrRWdqTUZhbUxQdG5wKzIxYk5CTEg2dElqTzJwUi9VWEJu?= =?utf-8?B?Q0xFTmZBdnZVMEd2eTNTRDB4cER5cjVxNG0zMlhrckVqYzNjUkNXNGZ0Z2k5?= =?utf-8?B?a2tLRkpCb3YvdXZXMjhVaVhNUWpydzhmNFY5QnJ1ZzdzR3BmNzdWM1JZNzVJ?= =?utf-8?B?WWhGVTJXa0ZFSHBCR1JkUEVvbW9oTGNVVDI2VDJUOHdIZWNBbXJreTd3d1Vm?= =?utf-8?B?U0IxWDZ2c3poekUyRWJYb1RtUU5aTzJOcUpKYjlSeFkrWWF1RnhhVVZFN2VU?= =?utf-8?B?ZXZEcnAvcEUrU2E1ODR4Q1lCTVJiNEtPNWpETHBuN08vaXArNTdBcWRIL0Vh?= =?utf-8?Q?rl8hRuUVikVCbHIApaGYKrJJY?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: b753c8bb-71dd-44b9-f000-08db6b562ad6 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Jun 2023 15:03:23.4816 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: aBQkM0x/RAGnBmzGB7AOLVQEipUzfaBoQsNaQtB7meoJrrTjeSAR7jFiba6kc3A9Dn/F5zN7vZ/fQ7e4g0cuhw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR04MB8889 On 12.06.2023 16:51, Shawn Anastasio wrote: > --- a/MAINTAINERS > +++ b/MAINTAINERS > @@ -460,6 +460,10 @@ X: xen/arch/x86/acpi/lib.c > F: xen/drivers/cpufreq/ > F: xen/include/acpi/cpufreq/ > > +PPC64 > +M: Shawn Anastasio > +F: xen/arch/ppc I'm sorry, but two nits again: This lack a trailing slash, and padding is done using spaces on the 2nd line instead of a tab. Jan From xen-devel-bounces@lists.xenproject.org Mon Jun 12 15:09:15 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 15:09:15 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547292.854595 (Exim 4.92) (envelope-from ) id 1q8jA1-0005pZ-EE; Mon, 12 Jun 2023 15:08:49 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547292.854595; Mon, 12 Jun 2023 15:08:49 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8jA1-0005pS-BY; Mon, 12 Jun 2023 15:08:49 +0000 Received: by outflank-mailman (input) for mailman id 547292; Mon, 12 Jun 2023 15:08:48 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8jA0-0005pM-Dy for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 15:08:48 +0000 Received: from mail-ed1-x52f.google.com (mail-ed1-x52f.google.com [2a00:1450:4864:20::52f]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 07ded345-0933-11ee-b232-6b7b168915f2; Mon, 12 Jun 2023 17:08:47 +0200 (CEST) Received: by mail-ed1-x52f.google.com with SMTP id 4fb4d7f45d1cf-516a008e495so9172147a12.1 for ; Mon, 12 Jun 2023 08:08:47 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 07ded345-0933-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686582527; x=1689174527; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=yZAhXYFLy0EieDe2pYQ1FtzFiqmEGbWvBqsQmj/RF00=; b=U4R33eMMy/CUlsX98UI+SwKb3I5atwPvUtQbYGdSRzyJ0UEinrf4Hhca8FXwk7YhUo S2vGXhlYBiXI4OAWCMipGracfoD7ebm+xFpBsZsKUy/MEXe/CBsfJeG3MT5ox7X2mPeY XLnRFc/7DMADI1vKr2VKb5mwx5nC9LnnPZSVAotQKTVn0Ov70x3X6eYpQGbsydih6PVZ EUFeCle+f53hE2YRGVx+tMQ8jsPQ5YKskeo1ZbPjPgea+Q10jTSj+lCyo5ib399pQCiF 33VnZta5F9KIHDINwxzQpBrCuD95DEp7OOnD5A+rlp9h3oPrmPkhKef/E9NZM5O+D5d5 Sysg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686582527; x=1689174527; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=yZAhXYFLy0EieDe2pYQ1FtzFiqmEGbWvBqsQmj/RF00=; b=Et7EybtC3k79oMFyaSjvGI6jy+SHxSQgdZPHRWuSFfdCDZjB4LLZr17Rx4zF9cYgn4 fg6nLOvWSXy+qAuQfz0uv9Vy2yMTXFeCuFSXkeoles2BcYxsF/rdS4fz/T7qwom3dvNT UHjg6XCv3PEVd0cnAHizu9H7WtLA9P5P4cEXQ31Eju/8GE25I8ZIGDC01tOzbkgp2Q0r cWMI5tUMAUpsCqCQMU7a7Ucm/xgb5iESBgXMOTI0g0nuux62RhvX8wD7GtYOlHlOp3cm JpdKdQmIVXc5BY+isTTU2clQqlw2TAlnC3SW5w2Dtuj+gAVmSMoyjf6Ek69kjCRksrxV Z7aQ== X-Gm-Message-State: AC+VfDyHUB3gcEdYceAcxd4gDYAmDxWBjmmr1koN52U2OSSJj8Lv5Ttt t8GL4rHwfQ4QvAXqtyGxq0Ci9w5WrqLkR/smEWg= X-Google-Smtp-Source: ACHHUZ5LdI8IHJ1KuVdgKULlbQXCixLxQSS0jvtSoIwY4uGT5dWFowaAINJSMi0yVqfOlXzSDyGABqxoiXp6dcr+RWI= X-Received: by 2002:a05:6402:5114:b0:514:387c:930 with SMTP id m20-20020a056402511400b00514387c0930mr6708030edd.5.1686582526916; Mon, 12 Jun 2023 08:08:46 -0700 (PDT) MIME-Version: 1.0 References: <20230612101319.29842-1-julien@xen.org> In-Reply-To: <20230612101319.29842-1-julien@xen.org> From: Jason Andryuk Date: Mon, 12 Jun 2023 11:08:34 -0400 Message-ID: Subject: Re: [PATCH] tools/xenstored: Correct the prototype of domain_max_chk() To: Julien Grall Cc: xen-devel@lists.xenproject.org, Julien Grall , Wei Liu , Juergen Gross , Anthony PERARD Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Mon, Jun 12, 2023 at 6:13=E2=80=AFAM Julien Grall wrote= : > > From: Julien Grall > > Some version of GCC will complain because the prototype and the > declaration of domain_max_chk() don't match: > > xenstored_domain.c:1503:6: error: conflicting types for 'domain_max_chk' = due to enum/integer mismatch; have '_Bool(const struct connection *, enum a= ccitem, unsigned int)' [-Werror=3Denum-int-mismatch] > 1503 | bool domain_max_chk(const struct connection *conn, enum accitem w= hat, > | ^~~~~~~~~~~~~~ > In file included from xenstored_domain.c:31: > xenstored_domain.h:146:6: note: previous declaration of 'domain_max_chk' = with type '_Bool(const struct connection *, unsigned int, unsigned int)' > 146 | bool domain_max_chk(const struct connection *conn, unsigned int w= hat, > | ^~~~~~~~~~~~~~ > > Update the prototype to match the declaration. > > This was spotted by Gitlab CI with the job opensuse-tumbleweed-gcc. > > Fixes: 685048441e1c ("tools/xenstore: switch quota management to be table= based") > Signed-off-by: Julien Grall Reviewed-by: Jason Andryuk Tested-by: Jason Andryuk This fixes the issue on Fedora 38, too. Thanks, Jason From xen-devel-bounces@lists.xenproject.org Mon Jun 12 15:15:25 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 15:15:25 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547299.854605 (Exim 4.92) (envelope-from ) id 1q8jGL-0007OH-6X; Mon, 12 Jun 2023 15:15:21 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547299.854605; Mon, 12 Jun 2023 15:15:21 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8jGL-0007OA-3s; Mon, 12 Jun 2023 15:15:21 +0000 Received: by outflank-mailman (input) for mailman id 547299; Mon, 12 Jun 2023 15:15:19 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8jGJ-0007O4-Sz for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 15:15:19 +0000 Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id efb90176-0933-11ee-8611-37d641c3527e; Mon, 12 Jun 2023 17:15:17 +0200 (CEST) Received: from [192.168.1.142] (unknown [151.44.205.175]) by support.bugseng.com (Postfix) with ESMTPSA id 0A1644EE073E; Mon, 12 Jun 2023 17:15:14 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: efb90176-0933-11ee-8611-37d641c3527e Message-ID: <63debfc0-4b29-ca03-b93c-85857987285f@bugseng.com> Date: Mon, 12 Jun 2023 17:15:11 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.12) Gecko/20050929 Thunderbird/1.0.7 Fedora/1.0.7-1.1.fc4 Mnenhy/0.7.3.0 Subject: Re: [PATCH v2] docs/misra: new rules addition Content-Language: en-US To: Jan Beulich , Stefano Stabellini Cc: julien@xen.org, andrew.cooper3@citrix.com, roger.pau@citrix.com, bertrand.marquis@arm.com, Stefano Stabellini , xen-devel@lists.xenproject.org References: <20230609174543.4067574-1-sstabellini@kernel.org> <6525d690-e487-ead8-34d6-55219ccfbfa2@bugseng.com> From: Roberto Bagnara In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit On 12/06/23 11:50, Jan Beulich wrote: > On 12.06.2023 11:34, Roberto Bagnara wrote: >> On 12/06/23 09:33, Jan Beulich wrote: >>> On 09.06.2023 19:45, Stefano Stabellini wrote: >>>> @@ -143,6 +163,12 @@ existing codebase are work-in-progress. >>>> - Octal constants shall not be used >>>> - >>>> >>>> + * - `Rule 7.2 `_ >>>> + - Required >>>> + - A "u" or "U" suffix shall be applied to all integer constants >>>> + that are represented in an unsigned type >>>> + - >>> >>> I continue to consider "represented in" problematic here without >>> further qualification. >> >> We should distinguish two things here. The headline of Rule 7.2 >> is non negotiable: it is simply as it is. > > I understand this, and ... > >> As all headlines, >> it is a compromise between conciseness and mnemonic value. >> If what is wanted there is not the headline, then you can add >> "implicitly" before "represented". Or you may leave the headline >> and add an explanatory note afterwards. > > ... such a note is what my comment was heading towards. Here is an attempt. "The rule asks that any integer literal that is implicitly unsigned is made explicitly unsigned by using one of the indicated suffixes. As an example, on a machine where the int type is 32-bit wide, 0x77777777 is signed whereas 0x80000000 is (implicitly) unsigned. In order to comply with the rule, the latter should be rewritten as either 0x80000000u or 0x80000000U. Consistency considerations may suggest using the same suffix even when not required by the rule. For instance, if one has f(0x77777777); // Original f(0x80000000); one might prefer f(0x77777777U); // Solution 1 f(0x80000000U); over f(0x77777777); // Solution 2 f(0x80000000U); after having ascertained that "Solution 1" is compatible with the intended semantics." >>>> @@ -314,6 +340,11 @@ existing codebase are work-in-progress. >>>> used following a subsequent call to the same function >>>> - >>>> >>>> + * - Rule 21.21 >>>> + - Required >>>> + - The Standard Library function system of shall not be used >>>> + - >>> >>> Still no "inapplicable" note (whichever way it would be worded to also >>> please Roberto)? >> >> I am not the one to be pleased ;-) >> >> But really, I don't follow: when you say the rule is inapplicable >> your reasoning is, IIUC, "nobody would even dream using system() in Xen". >> Which is exactly what the rule is asking. If Xen adopts the rule, >> tooling will make sure system() is not used, and seeing that the rule >> is applied, assessors will be pleased. > > My point is that "not using functions of stdlib.h" is ambiguous: It may > mean functions implemented in an external library (which the hypervisor > doesn't use), or it may mean functions of identical name (and purpose). > The full text goes even further and forbids the use of these > identifiers (plural; see next paragraph), so it's clearly not only > about an external library, and we also can't put it off as inapplicable. > (I wouldn't be surprised if we had a local variable or label named > "exit" or "abort".) > > Btw - I can't find a rule 21.21 in my two (slightly different) copies > of the doc, nor one with this headline and a different number. What I > have is "21.8 The Standard Library functions abort, exit and system of > shall not be used". (I further wonder why neither of the two > docs allows me to copy-and-paste a line out of it.) Rule 21.21 was added in MISRA C:2012 Amendment 2, which you can download (free of charge) from https://www.misra.org.uk/app/uploads/2021/06/MISRA-C-2012-AMD2.pdf From xen-devel-bounces@lists.xenproject.org Mon Jun 12 15:16:55 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 15:16:55 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547305.854615 (Exim 4.92) (envelope-from ) id 1q8jHp-0007vk-H7; Mon, 12 Jun 2023 15:16:53 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547305.854615; Mon, 12 Jun 2023 15:16:53 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8jHp-0007vd-Dp; Mon, 12 Jun 2023 15:16:53 +0000 Received: by outflank-mailman (input) for mailman id 547305; Mon, 12 Jun 2023 15:16:51 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8jHn-0007vT-Oy for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 15:16:51 +0000 Received: from EUR04-DB3-obe.outbound.protection.outlook.com (mail-db3eur04on0611.outbound.protection.outlook.com [2a01:111:f400:fe0c::611]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 26dc14e7-0934-11ee-8611-37d641c3527e; Mon, 12 Jun 2023 17:16:49 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by AM8PR04MB7969.eurprd04.prod.outlook.com (2603:10a6:20b:24c::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.44; Mon, 12 Jun 2023 15:16:46 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.039; Mon, 12 Jun 2023 15:16:46 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 26dc14e7-0934-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=CBDuCMH9CmYDvpaNlW4Mw190SH5vpb4ax0yFqCtPQ0b6pYRtoGWHg7PQqAj1tcYZsPOQ/WR1qKZX2SZI456Vv0RnTb1iALmFY5GvKN+L3d5kM2x8Zrrjx9FAikPcdoNrHTyZLlrTqlYAcwHunQAC1MqEfdXLq3hhbnBY6+tKOx3B97lb4xbTMVQDMGhNbHGY6vlx/eDzSFGaIvvfUwHCzFq6cuu3VdWr00V1qBAMbvU5GAL/Yl0Yhawx7UA1jfcsg9RP7P6fVuWm7rNxPjEPwTiH6mINfMLmJo/Bo7wI1gdWyfFgx/Fg8jFaIMGv0jmJoGkUapORtje4EWSGB0kJKQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=bv7ZpBsk1pTEgEsGgHquvGXDbPOkVmPK+PFe59RXfDo=; b=cmHksrhuXQrhz6gO6YfuSC496S7Lksd09/SADkHYeJLmJfmsA8k7UHE5LnePgACqBuJKueOnbfZ60BEpDje2nQuveGqBl4Cky+fdblfS4dz1FDu1pT5WnA/oz0edwKAlGhxlcjbHSKKvWyY8Ip2/fJaQIshxlJVUDeHnjLTKtMtDTfDM6jYr2iWWmk6Sj4te8soPp1dhZvNSetA2ddsvtmpLQccJcuFfPdOJiCORM5vR58/o/oWGaTm/pJp5qEyS+345O9XuD3hFz121wO78+xYIl/X5p8b6tssqdJTurwtossqBbLaLDPjGzOO1mpR9e7syZm9cmn0Orn1MZjZ1Gg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=bv7ZpBsk1pTEgEsGgHquvGXDbPOkVmPK+PFe59RXfDo=; b=yiTU80LHVLHBV51OyGs3GaC2cskog6sZxvnAwqEr86fQiFwHhl44FXaut6fqiNQvR2MAT+uQOZjelHL7q9wvgaewxonECdiSe+77CGdM0JMlgxMR/VhEAeDm+LmlfxVUmE8Wh2HZNIqm+j5o0ctNIEH2kt8wbc6TTbXQz2c0flYKrFTLMuCnHhtgUJQ2O7LuOTbzjQQtRLQkaaXOWZWQ5pm4IStJnQsbXcl1aoQW6zjR/bXNTdThpeYZR/S+TpDBOELldIBx6D91V7yB2Hf+501eZDmxu3ioEQmlbDMBFWRTPoEpHcYN2CxpdK/IS400jpHTOQdUpBm24Dc48EZPHg== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <711f2a44-7e2f-3e79-dd04-34a049210915@suse.com> Date: Mon, 12 Jun 2023 17:16:44 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v2 1/4] x86/microcode: Remove Intel's family check on early_microcode_init() Content-Language: en-US To: Alejandro Vallejo Cc: Andrew Cooper , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , Xen-devel References: <20230605170817.9913-1-alejandro.vallejo@cloud.com> <20230605170817.9913-2-alejandro.vallejo@cloud.com> From: Jan Beulich In-Reply-To: <20230605170817.9913-2-alejandro.vallejo@cloud.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR3P281CA0143.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:95::6) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|AM8PR04MB7969:EE_ X-MS-Office365-Filtering-Correlation-Id: 96e353b9-3341-47cd-6367-08db6b580995 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: JytrTBzt38pF9ztKgn14W5fXraZyFjy9tecZoA/q3RGeVT9cKfBiXoUy5eIIGeGrdumndYwPg76ErViykmXFMc0+IaDOTwcT3rbHt/tx/fxsFLNxRjRSBTb502HkGgPSmYbIttXez4yb/2r3LberExZf8RoosMD4nxgFUZHwjGCvws5ZmInfWE/ho8/FBIWOdb2H0XSIoTUTgnNnKoDrb0Z6E3cvgyYlorVErEZc2NiQUzAZY/UAn6EynIMdFCVOFGt6fvxEnPd4MhSUhknUFipXwvmwYl3oWw3/C+pONwK5Ol1oC3yj3ZSRnh29bXjiT5n9eFwqu9hGo2//wvuiA7uB5shhzVEM4SG3VMrjugikjSHAAPcGxa+9zahZkNbAbuR8sqUoHzrvJdPjzBGQuM1LtwCWX9CxQu+pS0B846IbgB00YnOu+xUHRtkYIy8Ifhvetw2dni3IFIOvIdSC/kh1x12zzHLhOQESNG8kyIjmzd2kzhccmdSS9xfZR5lDEM65BDHXHISll/rhMH1YgBXdsLPJcdv9dXzrStLvRcaf2cgvrUaTnyidY6YoNZT8FEw5ZwGZ9PYeWUzSkCI6+xHyqGLEYY8YWXOk0JFaVg3DfyGWEJElqgQmULk1pFSANvsJvVJkb5+8HSG/IJ34EQ== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(136003)(376002)(396003)(366004)(346002)(39860400002)(451199021)(6486002)(478600001)(6512007)(26005)(53546011)(6506007)(186003)(36756003)(2616005)(38100700002)(86362001)(31696002)(6916009)(4326008)(66476007)(66556008)(66946007)(316002)(8936002)(8676002)(31686004)(5660300002)(41300700001)(4744005)(2906002)(54906003)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?QlA0VnQ3Nk5NeGtPdGpGSURqbCtxRXFtSzJzeFZGL2F5U1FrTnZWVFpwY1NJ?= =?utf-8?B?WWRwTEh1cmQ0eEc0dVJtOS85YTVNS2YzaXIyMC90VjVmUmVKNFlvY2hOeXpT?= =?utf-8?B?dGM5Ky92UFAwajZNTFkwM2MyeHBTZDVyeGtGbmo4VzBnZ2VRaDlydVdjYWNW?= =?utf-8?B?SXVmYllTY0lxaHBhUVRKNGJEMGF6bnFTOUNwU2JaS3c4QUpqcUR2b2hGSEN3?= =?utf-8?B?TXdXUlJvSlpVMzhYY3FiU2ZxWlFpamVoUDBoQnNRL29yc3FTRFVnZWxoYkx0?= =?utf-8?B?NEg0cm95QUtYQnRwSHc2aVNhZDJSVFh3ZmpiQTB0WmkzcEh4TnNFSW10cHlk?= =?utf-8?B?M245end6U25ZZ3hmODI4bHRnTUMwK1pPeVlTYmJwaDJaZm1yQzYwb3AwSlpQ?= =?utf-8?B?Z1QyMkZ3bTBOQVpJMWh5UUVuU2c0NVNUZXBuRjN4L1RrS1pVTjhpY0thTmQ0?= =?utf-8?B?bHFXejBjaHd3bWRhdU5VOVp0SWlvQ25KTVo1UnZDRURQSFF4NjVWYzBNMXpI?= =?utf-8?B?cmVDSzdzdTZvbU5jNlN2RFVFS09BUmFCSEVHSVEzQWNFMUlkeVQzZkVtL0JZ?= =?utf-8?B?NFhIR0hpV0hKQ2tOWGFNUkQ2bjVIa0k1M1hralJvbFlrSDgwTTcwUDUvR2M2?= =?utf-8?B?Y1RNSVZKK0VRTmJvQVFBVUNFMEpweEJYcGhCdTB3eG11MkMwYlpaWlQ5dmVx?= =?utf-8?B?Q0VWMnFSRzFQczd5aVBqaDVqeTdSWnhkRjhadWJLbWVSc2pNVGlqSlJFM3R6?= =?utf-8?B?VnNHT01UbkgwcmhqOVN1bjgxYkZDMmtwa0V0ZnhqK29MV202blNTT2trV1Jk?= =?utf-8?B?VndDVkVaN3BPanZId0NEYkVQSnY3VjNnWllLSXFmTkprOWh6SGE3eDFKRlJL?= =?utf-8?B?MjIyOGdSK2RwU20wMVdUQ0dFUDRaVm9IMVBMWDNhRTlZeWR5bGZnejY2QXFO?= =?utf-8?B?YVlTdGRJUzRvU1MxbkZob3JabnZrWTdERU5mMXZWNHNlT2NHU3U5S1EzVmcr?= =?utf-8?B?MnZYT3kwaEFCSnMrUWVNT3pTemR1NWlFajZpOFl1bXRjRmpaUStUQ3g1U2lX?= =?utf-8?B?QThzT2h3d0RzSnU1SFROR2E0KzBqbXhUM2hGamsvMkFGekErK0tVU2lyTUZs?= =?utf-8?B?bU9XK1pKOTEwcnFTaTlkRGY2N01ycnVVeHE0NVU3NFU2VkFQUzFQTHJmL2pq?= =?utf-8?B?UXB6cmUyZ3dScUd4VVNHV0tPZHlwc29YbTUvYnNscjBkRitsZXBlVlY3U1Rz?= =?utf-8?B?YkV3bFNGNGNJdXIwaHp6LzdaaU9yNEl6WHRKM0I3VkV1cUdRamhWMjhHVmwy?= =?utf-8?B?VmVPUHU5Zk1oWFBheW0rQnNSUzJpMGF6QmtEdDM2UWJjMHNJR1BweWVzc09O?= =?utf-8?B?SnVnUlJ0MlI4YUpnZDkxcVFBajdSYmMwKzRTTktSMHZjdTRSeFhqUk9OQzFM?= =?utf-8?B?dExuV1FSWWQ5emdJV3loQUlFYlN5b25KQ3VwVlNXWHNrRXhHcWJ3bGtKb0Jq?= =?utf-8?B?RG01ekYzV3lxT2wzUEVLWDlYanlxTjdYZjBTdk54WjVNNm4ydzdNSlNPbk01?= =?utf-8?B?YU9icWtUc2Rrc2tWSFNyZ25xNUYzWm8rWmJQeGdnRTUySlVkYTFXVGE1VTRU?= =?utf-8?B?M2w1OU5kYmQxOHFWVDJHQzFOOEZXWFR4dXUrenA3eG9TQ2hybUx4NXdySzJr?= =?utf-8?B?dG15SFFLcEV4eVl4eS9LelFHMGx3RElXOTd6dTAybjlBWXRNTFUwT0V4QkNF?= =?utf-8?B?STZDNVBuOGV0RlFaZDl1SGo3UjlnUVRHU3ZjMlg3RFhzT0Y1V01jY2lmZi83?= =?utf-8?B?RkE5Q2dNRTNlZW1EeFp0dkRaaDVyTjEzL1BOSnhKSlloVUxucEpqcGlwWXRq?= =?utf-8?B?eGhTakprd1JQNXFoYTRSWm8vVFlWNHc4b1hDVHV4bWJwNXR4Yzc2UHZFTCtE?= =?utf-8?B?YlJNMTlmMlVXY3dhdERERTROWjVSVXMxdXg4b2taR01PMk9DV0VmTXB1NTNp?= =?utf-8?B?RzNRUE1QRE9RcEF3cDZ3akw3bmNnTlBQU2lQMnBTL2lueU90WGxKWFk3Vklx?= =?utf-8?B?L0RsbThPQ1BmM2ZFQ2l2bUFWNVl0cEgzN0NSMG5pK3g3bjA3Uk4xR29BZGR4?= =?utf-8?Q?WP3igTKu3PKRAqzOL+qkr/pGi?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 96e353b9-3341-47cd-6367-08db6b580995 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Jun 2023 15:16:46.6163 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: shXlHIx1PbY1DUWhBKGx6349xXf/YkSXpxiKhi3gjI6P1I6zHj+Uy2n6LZ+GPkKb4nzX7PZn+piLmBXGszW8IA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM8PR04MB7969 On 05.06.2023 19:08, Alejandro Vallejo wrote: > --- a/xen/arch/x86/cpu/microcode/core.c > +++ b/xen/arch/x86/cpu/microcode/core.c > @@ -854,8 +854,14 @@ int __init early_microcode_init(unsigned long *module_map, > break; > > case X86_VENDOR_INTEL: > - if ( c->x86 >= 6 ) > - ucode_ops = intel_ucode_ops; > + /* > + * Intel introduced microcode loading with family 6. Because we > + * don't support compiling Xen for 32bit machines we're guaranteed > + * that at this point we're either in family 15 (Pentium 4) or 6 > + * (everything since then), so microcode facilities are always > + * present. > + */ > + ucode_ops = intel_ucode_ops; > break; > } There are many places where we make such connections / assumptions without long comments. I'd be okay with a brief one, but I'm not convinced we need one at all. Jan From xen-devel-bounces@lists.xenproject.org Mon Jun 12 15:20:19 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 15:20:19 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547310.854625 (Exim 4.92) (envelope-from ) id 1q8jKy-0000zn-Uv; Mon, 12 Jun 2023 15:20:08 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547310.854625; Mon, 12 Jun 2023 15:20:08 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8jKy-0000zg-Rh; Mon, 12 Jun 2023 15:20:08 +0000 Received: by outflank-mailman (input) for mailman id 547310; Mon, 12 Jun 2023 15:20:07 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8jKx-0000yI-H3 for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 15:20:07 +0000 Received: from mail-lj1-x230.google.com (mail-lj1-x230.google.com [2a00:1450:4864:20::230]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 9c6c4bee-0934-11ee-b232-6b7b168915f2; Mon, 12 Jun 2023 17:20:06 +0200 (CEST) Received: by mail-lj1-x230.google.com with SMTP id 38308e7fff4ca-2b1bdfe51f8so66427281fa.0 for ; Mon, 12 Jun 2023 08:20:06 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 9c6c4bee-0934-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cloud.com; s=cloud; t=1686583206; x=1689175206; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=9STugGM9E7fBDOgF9MU/+Q3JjBle1xujN0bX4eP8zgo=; b=aAkSUnr5fOM3YUzjcBKtdI+fC23E//NPs/VIch2u0xJF4e7Lj+EiDHUXRDXy2KTxOL XDurBjWTjrBfQHO/13ngI5r0JaId8LFCVHCBTUI0BzY6GkbgyYwVRiLsIXByuhuZJ7+J 24egTuBVJsjGXQJnj2k05YMwDDFfftlyjqxpw= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686583206; x=1689175206; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=9STugGM9E7fBDOgF9MU/+Q3JjBle1xujN0bX4eP8zgo=; b=MhEcDbA7r9JLiZHArufRs+6x/4lWOnLY+lh3stcGuA6XyAKOKYjeb4Cmh2D/Tv4nfh +W0iVt5FjCGSVZ7kfSsXtAI2FRV83yT5tIoOLoZm5g6GI3M1HfdQSLiU5yNN7Fxs3lMt EBReX9khTUHPse7N/oB/A5uPmzk+kyX2zEAY+qOEPPstmlk0y3FzZWs/e012oSYhC4e4 Hnk2W3Mm97l8OGMcW683IfKTvPGmuAE9tId7QKfE2VZ0mTUugjhdqcHo6sGP+tBFRa4m mPjoNVtvfuynYhvhLED4Wifryk0z9yvi3CQz6yULf9J6o9UbMCqG/RrNew13RZf3DYl9 IfIg== X-Gm-Message-State: AC+VfDyUp0mvVLxJH6RU/EfLq/y8m5oq8nohD508kkNC+Aq5j62U1c8N 6OxSbQRgccaqkHdmTCjdcAtkOeKjJab7T58p2Cuv4w== X-Google-Smtp-Source: ACHHUZ7vEiezo+cbwkhm6uxhqEZgiDR0smkutLS0ZLDSa/6jgOBYqG+1+MUWkIM5ru1uo3Y76aGLRrgLs3nKUTKIzxU= X-Received: by 2002:a2e:3314:0:b0:2a8:baea:2554 with SMTP id d20-20020a2e3314000000b002a8baea2554mr2361748ljc.3.1686583205740; Mon, 12 Jun 2023 08:20:05 -0700 (PDT) MIME-Version: 1.0 References: <0c0a19de-dde3-8b98-4354-6d3d2019179b@suse.com> <0b24d36b-adbc-9e7c-df6e-8754c269855d@citrix.com> <1c35f696-5a65-06da-8af5-685b8ad2e849@xen.org> <3a7eca41-0ecf-4bf1-1daf-9d66f4aa6400@xen.org> In-Reply-To: <3a7eca41-0ecf-4bf1-1daf-9d66f4aa6400@xen.org> From: George Dunlap Date: Mon, 12 Jun 2023 16:19:54 +0100 Message-ID: Subject: Re: [PATCH 2/3] xen/ppc: Implement early serial printk on PaPR/pseries To: Julien Grall Cc: Shawn Anastasio , Andrew Cooper , Jan Beulich , tpearson@raptorengineering.com, George Dunlap , Stefano Stabellini , Wei Liu , Shawn Anastasio , xen-devel@lists.xenproject.org Content-Type: multipart/alternative; boundary="000000000000dcda4205fdf0408f" --000000000000dcda4205fdf0408f Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Fri, Jun 9, 2023 at 5:07=E2=80=AFPM Julien Grall wrote: > Hi Shawn, > > On 09/06/2023 16:01, Shawn Anastasio wrote: > > On Fri Jun 9, 2023 at 5:12 AM CDT, Julien Grall wrote: > >> Strictly speaking we can refuse any code. That count for license as > >> well. Anyway, I didn't request a change here. I merely pointed out tha= t > >> any use of GPLv2+ should be justified because on Arm most of the peopl= e > >> don't pay attention on the license and pick the one from an existing > file. > > > > Hi Julien, > > > > The choice of GPLv2+ for many of the files in this patchset was indeed > > inherited from old IBM-written Xen code that the files in question were > > derived from. I did not realize it was permissible or even desirable to > > relicense those to GPLv2-only. > > > > As for the new files, GPLv2+ was chosen to remain consistent and to ope= n > > the door for future derivations from GPLv2+ licensed code, either from > > the older Xen tree or from the Linux ppc tree, much of which is also > > licensed as GPLv2+. If it would reduce friction, these files could be > > relicensed to GPLv2-only. > > (Before someone points out, I know this is already a problem on other > part of Xen. But it would be ideal if we avoid spreading this mess on > new architectures :). > > Thanks for the explanations. To clarify, are you saying that all the > files will be GPLv2+ or just some? > > If the latter, then my concern would be that if you need to import > GPLv2-only code, then you may need to write your code in a different > file. This may become messy to handle and some developer may end up to > be confused. > > I am not a lawyer though, so you may want to check the implications here. > Shawn, Again sorry that you've sort of bumped a hornet's nest here. Just to clarify, the situation as I understand it is: 1. Large parts of Xen, being inherited from the Linux Kernel, are GPLv2-only; and the documentation clearly states that code is GPLv2-only unless explicitly stated otherwise. 2. Some individual files in Xen are labelled as GPLv2-or-later; but as they rely on the "only" files, Xen as a whole can only be compiled under a GPLv2 license. 3. New contributions to a file assumed to have the same license as the header of the file; i.e., the code contained in patches to GPLv2-or-later files is assumed to be granted according to a GPLv2-or-later license. 4. In the past, the legal teams of some contributors -- namely ARM -- were wary of the GPLv3; specifically the patent grant. Since ARM doesn't make anything themselves, their patents are literally their product; they need to be very careful of not accidentally granting them to the world. I think one thing ARM may have been afraid of at some point is one of their engineers accidentally submitting a patch to a GPLv2-or-later file which would, when taken with a GPLv3 (or GPLv4 license, once it comes out) cause them to lose too much control over their IP. My understanding is that Julien is afraid that if the "GPLv2-or-later" files start to proliferate, that companies like ARM will start to become more wary of contributing; and so has been generally trying to encourage new files to be labelled "GPLv2-only" unless there's a good reason to do otherwise. (Other issues like copying code from GPLv2-only are potential pitfalls as well, but probably less important.) HOWEVER, as Andrew says, there is no official policy at this point; all the document say is that GPLv2-only is the default unless explicitly stated otherwise. Furthermore, the concerns raised by ARM's legal team were nearly a decade ago; it's not clear to me whether they still care that much. All that to say: If you don't mind and feel that you can do so legally, then consider switching to GPLv2-only; but if you don't want to and/or feel that you can't do so legally, feel free to leave it as-is. Additionally, I think it would be good if the community *did* have a discussion about whether we want an official policy; so that either we can point people to the relevant doc (with explanation), or stop bothering about it. :-) -George --000000000000dcda4205fdf0408f Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable


=
On Fri, Jun 9, 2023 at 5:07=E2=80=AFP= M Julien Grall <julien@xen.org>= wrote:
Hi Shawn= ,

On 09/06/2023 16:01, Shawn Anastasio wrote:
> On Fri Jun 9, 2023 at 5:12 AM CDT, Julien Grall wrote:
>> Strictly speaking we can refuse any code. That count for license a= s
>> well. Anyway, I didn't request a change here. I merely pointed= out that
>> any use of GPLv2+ should be justified because on Arm most of the p= eople
>> don't pay attention on the license and pick the one from an ex= isting file.
>
> Hi Julien,
>
> The choice of GPLv2+ for many of the files in this patchset was indeed=
> inherited from old IBM-written Xen code that the files in question wer= e
> derived from. I did not realize it was permissible or even desirable t= o
> relicense those to GPLv2-only.
>
> As for the new files, GPLv2+ was chosen to remain consistent and to op= en
> the door for future derivations from GPLv2+ licensed code, either from=
> the older Xen tree or from the Linux ppc tree, much of which is also > licensed as GPLv2+. If it would reduce friction, these files could be<= br> > relicensed to GPLv2-only.

(Before someone points out, I know this is already a problem on other
part of Xen. But it would be ideal if we avoid spreading this mess on
new architectures :).

Thanks for the explanations. To clarify, are you saying that all the
files will be GPLv2+ or just some?

If the latter, then my concern would be that if you need to import
GPLv2-only code, then you may need to write your code in a different
file. This may become messy to handle and some developer may end up to
be confused.

I am not a lawyer though, so you may want to check the implications here.

Shawn,

Again so= rry that you've sort of bumped a hornet's nest here.

=
Just to clarify, the situation as I understand it is:
=
1. Large parts of Xen, being inherited from the Linux Kernel= , are GPLv2-only; and the documentation clearly states that code is GPLv2-o= nly unless explicitly stated otherwise.

2. Some in= dividual files in Xen are labelled as GPLv2-or-later; but as they rely on t= he "only" files, Xen as a whole can only be compiled under a GPLv= 2 license.

3. New contributions to a file assumed = to have the same license as the header of the file; i.e., the code containe= d in patches to GPLv2-or-later files is assumed to be granted according to = a GPLv2-or-later license.

4. In the past, the lega= l teams of some contributors -- namely ARM -- were wary of the GPLv3; speci= fically the patent grant.=C2=A0 Since ARM doesn't make anything themsel= ves, their patents are literally their product; they need to be very carefu= l of not accidentally granting them to the world.=C2=A0 I think one thing A= RM may have been afraid of at some point is one of their engineers accident= ally submitting a patch to a GPLv2-or-later file which would, when taken wi= th a GPLv3 (or GPLv4 license, once it comes out) cause them to lose too muc= h control over their IP.

My understanding is that = Julien is afraid that if the "GPLv2-or-later" files start to prol= iferate, that companies like ARM will start to become more wary of contribu= ting; and so has been generally trying to encourage new files to be labelle= d "GPLv2-only" unless there's a good reason to do otherwise.= =C2=A0 (Other issues like copying code from GPLv2-only are potential pitfal= ls as well, but probably less important.)

HOWEVER,= as Andrew says, there is no official policy at this point; all the documen= t say is that GPLv2-only is the default unless explicitly stated otherwise.=

Furthermore, the concerns raised by ARM's leg= al team were nearly a decade ago; it's not clear to me whether they sti= ll care that much.

All that to say: If you don'= ;t mind and feel that you can do so legally, then consider switching to GPL= v2-only; but if you don't want to and/or feel that you can't do so = legally, feel free to leave it as-is.

Additionally= , I think it would be good if the community *did* have a discussion about w= hether we want an official policy; so that either we can point people to th= e relevant doc (with explanation), or stop bothering about it. :-)

=C2=A0-George


--000000000000dcda4205fdf0408f-- From xen-devel-bounces@lists.xenproject.org Mon Jun 12 15:22:13 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 15:22:13 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547317.854634 (Exim 4.92) (envelope-from ) id 1q8jMl-0001bm-Cf; Mon, 12 Jun 2023 15:21:59 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547317.854634; Mon, 12 Jun 2023 15:21:59 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8jMl-0001bf-9h; Mon, 12 Jun 2023 15:21:59 +0000 Received: by outflank-mailman (input) for mailman id 547317; Mon, 12 Jun 2023 15:21:58 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8jMk-0001bV-EV; Mon, 12 Jun 2023 15:21:58 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8jMk-0002cs-Cd; Mon, 12 Jun 2023 15:21:58 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8jMj-0003uL-Ta; Mon, 12 Jun 2023 15:21:58 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q8jMj-0004DF-T8; Mon, 12 Jun 2023 15:21:57 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=fV5vnfPl5lwN+SlXlS/M6sULXAZDHjWaHOufYfPI9/w=; b=HJ2vDngsps+4AXGeOGWYslxVAO 6mZ39eD6n8fHzpUW2ZWNWCk3ClEK61/PYPf9jQ7jUqBJvXndyDi5sI3KXddW0qf6Tr59cHcGKPTm5 +gIJxypKMfsVcZnz/KPkEg1poKN5vE6pK+2t2rKFytaLzAGsTV9FBRRxiVfPBlaIWldM=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [qemu-mainline test] 181390: regressions - FAIL X-Osstest-Failures: qemu-mainline:build-arm64-xsm:xen-build:fail:regression qemu-mainline:build-arm64:xen-build:fail:regression qemu-mainline:build-amd64:xen-build:fail:regression qemu-mainline:build-i386:xen-build:fail:regression qemu-mainline:build-amd64-xsm:xen-build:fail:regression qemu-mainline:build-i386-xsm:xen-build:fail:regression qemu-mainline:build-armhf:xen-build:fail:regression qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-i386:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:build-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:build-arm64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:build-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:build-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pygrub:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking X-Osstest-Versions-This: qemuu=fdd0df5340a8ebc8de88078387ebc85c5af7b40f X-Osstest-Versions-That: qemuu=6972ef1440a9d685482d78672620a7482f2bd09a From: osstest service owner Date: Mon, 12 Jun 2023 15:21:57 +0000 flight 181390 qemu-mainline real [real] http://logs.test-lab.xenproject.org/osstest/logs/181390/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-arm64-xsm 6 xen-build fail REGR. vs. 180691 build-arm64 6 xen-build fail REGR. vs. 180691 build-amd64 6 xen-build fail REGR. vs. 180691 build-i386 6 xen-build fail REGR. vs. 180691 build-amd64-xsm 6 xen-build fail REGR. vs. 180691 build-i386-xsm 6 xen-build fail REGR. vs. 180691 build-armhf 6 xen-build fail REGR. vs. 180691 Tests which did not succeed, but are not blocking: test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-xl-xsm 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-raw 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-xsm 1 build-check(1) blocked n/a test-arm64-arm64-xl 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit1 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit2 1 build-check(1) blocked n/a test-arm64-arm64-xl-thunderx 1 build-check(1) blocked n/a test-arm64-arm64-xl-vhd 1 build-check(1) blocked n/a test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a test-armhf-armhf-libvirt 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-qcow2 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-raw 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a test-armhf-armhf-xl-arndale 1 build-check(1) blocked n/a test-armhf-armhf-xl-multivcpu 1 build-check(1) blocked n/a test-armhf-armhf-xl-rtds 1 build-check(1) blocked n/a test-armhf-armhf-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-amd 1 build-check(1) blocked n/a test-amd64-i386-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-raw 1 build-check(1) blocked n/a test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-i386 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-amd64 1 build-check(1) blocked n/a test-amd64-coresched-i386-xl 1 build-check(1) blocked n/a test-amd64-coresched-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-xsm 1 build-check(1) blocked n/a build-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-shadow 1 build-check(1) blocked n/a test-amd64-amd64-xl-rtds 1 build-check(1) blocked n/a build-arm64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a build-armhf-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a build-i386-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-amd 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-pair 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-qcow2 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-vhd 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvshim 1 build-check(1) blocked n/a test-amd64-amd64-pair 1 build-check(1) blocked n/a test-amd64-amd64-pygrub 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-intel 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd11-amd64 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd12-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-multivcpu 1 build-check(1) blocked n/a test-amd64-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit1 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit1 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-intel 1 build-check(1) blocked n/a test-amd64-i386-xl 1 build-check(1) blocked n/a test-amd64-i386-xl-pvshim 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a version targeted for testing: qemuu fdd0df5340a8ebc8de88078387ebc85c5af7b40f baseline version: qemuu 6972ef1440a9d685482d78672620a7482f2bd09a Last test of basis 180691 2023-05-17 10:45:22 Z 26 days Failing since 180699 2023-05-18 07:21:24 Z 25 days 90 attempts Testing same since 181372 2023-06-10 21:38:57 Z 1 days 11 attempts ------------------------------------------------------------ People who touched revisions under test: Afonso Bordado Akihiko Odaki Akihiro Suda Alex Bennée Alex Williamson Alexander Bulekov Alexander Graf Alexander Ivanov Alistair Francis Anastasia Belova Andrew Jeffery Ani Sinha Ani Sinha Anthony PERARD Anton Johansson BALATON Zoltan Bastian Koppelmann Bernhard Beschow Bin Meng Brian Cain Brice Goglin Camilla Conte Carlos Santos Christian Schoenebeck Chuck Zmudzinski Cindy Lu Clément Chigot Cornelia Huck Cédric Le Goater Cédric Le Goater Daniel Henrique Barboza Daniel P. Berrangé Daniil Kovalev David Hildenbrand David Woodhouse Emanuele Giuseppe Esposito Enze Li Eric Auger Eric Blake Eric DeVolder Erico Nunes Eugenio Pérez Fabiano Rosas Fan Ni Fiona Ebner Francesco Cagnin Francisco Iglesias Frederic Barrat Gavin Shan Gregory Price Gregory Price Hanna Czenczek Hao Zeng Hawkins Jiawei Igor Mammedov Ilya Leoshkevich Ira Weiny Jagannathan Raman Jason Wang Jean-Louis Dupond Jean-Philippe Brucker Jiaxun Yang John Snow Jonathan Cameron Juan Quintela Kevin Wolf Laurent Vivier Lei Yang Leonardo Bras Maksim Davydov Marc-André Lureau Marcin Juszkiewicz Marco Liebel Mark Cave-Ayland Markus Armbruster Matheus Tavares Bernardino Mattias Nissler Mauro Matteo Cascella Max Fritz Michael S. Tsirkin Michael Tokarev Michal Privoznik Milan Zamazal Mostafa Saleh Nicholas Piggin Nicolas Saenz Julienne Niek Linnenbank Palmer Dabbelt Paolo Bonzini Peter Maydell Peter Xu Philippe Mathieu-Daudé qianfan Zhao Raghu H Rene Engel Richard Henderson Richard Purdie Ricky Zhou Ryan Wendland Sebastian Ott Sergio Lopez Sid Manning Song Gao Stefan Hajnoczi Stefano Garzarella Steve Sistare Taylor Simpson Thomas Huth Thomas Weißschuh timothee.cocault@gmail.com Timothée Cocault Tommy Wu Vikram Garhwal Viktor Prutyanov Vitaly Cheptsov Vivek Kasireddy Vladimir Sementsov-Ogievskiy Volker Rümelin Xinyu Li Zeng Hao Zhenyu Zhang Zhenzhong Duan Zhuojia Shen jobs: build-amd64-xsm fail build-arm64-xsm fail build-i386-xsm fail build-amd64 fail build-arm64 fail build-armhf fail build-i386 fail build-amd64-libvirt blocked build-arm64-libvirt blocked build-armhf-libvirt blocked build-i386-libvirt blocked build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl blocked test-amd64-coresched-amd64-xl blocked test-arm64-arm64-xl blocked test-armhf-armhf-xl blocked test-amd64-i386-xl blocked test-amd64-coresched-i386-xl blocked test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-i386-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-amd64-libvirt-xsm blocked test-arm64-arm64-libvirt-xsm blocked test-amd64-i386-libvirt-xsm blocked test-amd64-amd64-xl-xsm blocked test-arm64-arm64-xl-xsm blocked test-amd64-i386-xl-xsm blocked test-amd64-amd64-qemuu-nested-amd blocked test-amd64-amd64-xl-pvhv2-amd blocked test-amd64-i386-qemuu-rhel6hvm-amd blocked test-amd64-amd64-dom0pvh-xl-amd blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-freebsd10-amd64 blocked test-amd64-amd64-qemuu-freebsd11-amd64 blocked test-amd64-amd64-qemuu-freebsd12-amd64 blocked test-amd64-amd64-xl-qemuu-ovmf-amd64 blocked test-amd64-i386-xl-qemuu-ovmf-amd64 blocked test-amd64-amd64-xl-qemuu-win7-amd64 blocked test-amd64-i386-xl-qemuu-win7-amd64 blocked test-amd64-amd64-xl-qemuu-ws16-amd64 blocked test-amd64-i386-xl-qemuu-ws16-amd64 blocked test-armhf-armhf-xl-arndale blocked test-amd64-amd64-xl-credit1 blocked test-arm64-arm64-xl-credit1 blocked test-armhf-armhf-xl-credit1 blocked test-amd64-amd64-xl-credit2 blocked test-arm64-arm64-xl-credit2 blocked test-armhf-armhf-xl-credit2 blocked test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-freebsd10-i386 blocked test-amd64-amd64-qemuu-nested-intel blocked test-amd64-amd64-xl-pvhv2-intel blocked test-amd64-i386-qemuu-rhel6hvm-intel blocked test-amd64-amd64-dom0pvh-xl-intel blocked test-amd64-amd64-libvirt blocked test-armhf-armhf-libvirt blocked test-amd64-i386-libvirt blocked test-amd64-amd64-xl-multivcpu blocked test-armhf-armhf-xl-multivcpu blocked test-amd64-amd64-pair blocked test-amd64-i386-pair blocked test-amd64-amd64-libvirt-pair blocked test-amd64-i386-libvirt-pair blocked test-amd64-amd64-xl-pvshim blocked test-amd64-i386-xl-pvshim blocked test-amd64-amd64-pygrub blocked test-armhf-armhf-libvirt-qcow2 blocked test-amd64-amd64-xl-qcow2 blocked test-arm64-arm64-libvirt-raw blocked test-armhf-armhf-libvirt-raw blocked test-amd64-i386-libvirt-raw blocked test-amd64-amd64-xl-rtds blocked test-armhf-armhf-xl-rtds blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-amd64-xl-shadow blocked test-amd64-i386-xl-shadow blocked test-arm64-arm64-xl-thunderx blocked test-amd64-amd64-libvirt-vhd blocked test-arm64-arm64-xl-vhd blocked test-armhf-armhf-xl-vhd blocked test-amd64-i386-xl-vhd blocked ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 17052 lines long.) From xen-devel-bounces@lists.xenproject.org Mon Jun 12 15:27:47 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 15:27:47 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547324.854646 (Exim 4.92) (envelope-from ) id 1q8jSH-0002F0-33; Mon, 12 Jun 2023 15:27:41 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547324.854646; Mon, 12 Jun 2023 15:27:41 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8jSG-0002Et-UF; Mon, 12 Jun 2023 15:27:40 +0000 Received: by outflank-mailman (input) for mailman id 547324; Mon, 12 Jun 2023 15:27:40 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8jSG-0002Ej-Dz; Mon, 12 Jun 2023 15:27:40 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8jSG-0002id-Aw; Mon, 12 Jun 2023 15:27:40 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8jSG-00041h-05; Mon, 12 Jun 2023 15:27:40 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q8jSF-0007Vt-Vp; Mon, 12 Jun 2023 15:27:39 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=vjIIDOKXmTWr3hSDoBmovMzDAfBA1M9Csbk1wKer3eo=; b=Tx5O2QR2gpWczHLsMJ2QUlkT3W ftzy2HN/nknlFQmWUYoBQfITX8HUDI69Dw+N+4+r4OzqIwuB23ToYyPmVgBF83Xjt4WVPrMTKPW40 wzmCrKssPvIgvHQJJpblvAIpreHxZAzZ50OcTzXFnFh1GU49dDxCimP7HoQiCGgkywuw=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [linux-linus test] 181387: regressions - trouble: broken/fail/pass X-Osstest-Failures: linux-linus:test-armhf-armhf-libvirt-raw::broken:regression linux-linus:test-armhf-armhf-xl-credit1::broken:regression linux-linus:test-armhf-armhf-xl-multivcpu::broken:regression linux-linus:test-armhf-armhf-xl-vhd::broken:regression linux-linus:test-armhf-armhf-xl-credit1:xen-boot:fail:regression linux-linus:build-arm64-pvops:kernel-build:fail:regression linux-linus:test-armhf-armhf-xl-vhd:host-install(5):broken:heisenbug linux-linus:test-armhf-armhf-libvirt-raw:host-install(5):broken:heisenbug linux-linus:test-armhf-armhf-xl-multivcpu:host-install(5):broken:heisenbug linux-linus:test-armhf-armhf-xl-credit1:host-install(5):broken:heisenbug linux-linus:test-amd64-amd64-xl-vhd:guest-start/debian.repeat:fail:heisenbug linux-linus:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking linux-linus:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking linux-linus:test-arm64-arm64-xl:build-check(1):blocked:nonblocking linux-linus:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking linux-linus:test-arm64-arm64-examine:build-check(1):blocked:nonblocking linux-linus:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking linux-linus:test-armhf-armhf-xl-multivcpu:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-raw:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-vhd:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking linux-linus:test-armhf-armhf-xl-credit2:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking linux-linus:test-armhf-armhf-examine:reboot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-arndale:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-qcow2:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-rtds:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-raw:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-qcow2:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: linux=858fd168a95c5b9669aac8db6c14a9aeab446375 X-Osstest-Versions-That: linux=6c538e1adbfc696ac4747fb10d63e704344f763d From: osstest service owner Date: Mon, 12 Jun 2023 15:27:39 +0000 flight 181387 linux-linus real [real] http://logs.test-lab.xenproject.org/osstest/logs/181387/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: test-armhf-armhf-libvirt-raw broken test-armhf-armhf-xl-credit1 broken test-armhf-armhf-xl-multivcpu broken test-armhf-armhf-xl-vhd broken test-armhf-armhf-xl-credit1 8 xen-boot fail in 181383 REGR. vs. 180278 build-arm64-pvops 6 kernel-build fail in 181383 REGR. vs. 180278 Tests which are failing intermittently (not blocking): test-armhf-armhf-xl-vhd 5 host-install(5) broken pass in 181383 test-armhf-armhf-libvirt-raw 5 host-install(5) broken pass in 181383 test-armhf-armhf-xl-multivcpu 5 host-install(5) broken pass in 181383 test-armhf-armhf-xl-credit1 5 host-install(5) broken pass in 181383 test-amd64-amd64-xl-vhd 21 guest-start/debian.repeat fail in 181383 pass in 181387 Tests which did not succeed, but are not blocking: test-arm64-arm64-xl-credit2 1 build-check(1) blocked in 181383 n/a test-arm64-arm64-xl-credit1 1 build-check(1) blocked in 181383 n/a test-arm64-arm64-xl 1 build-check(1) blocked in 181383 n/a test-arm64-arm64-xl-vhd 1 build-check(1) blocked in 181383 n/a test-arm64-arm64-libvirt-xsm 1 build-check(1) blocked in 181383 n/a test-arm64-arm64-xl-thunderx 1 build-check(1) blocked in 181383 n/a test-arm64-arm64-examine 1 build-check(1) blocked in 181383 n/a test-arm64-arm64-xl-xsm 1 build-check(1) blocked in 181383 n/a test-arm64-arm64-libvirt-raw 1 build-check(1) blocked in 181383 n/a test-armhf-armhf-xl-multivcpu 8 xen-boot fail in 181383 like 180278 test-armhf-armhf-libvirt-raw 8 xen-boot fail in 181383 like 180278 test-armhf-armhf-xl-vhd 8 xen-boot fail in 181383 like 180278 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 180278 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 180278 test-armhf-armhf-xl-credit2 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 180278 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 180278 test-armhf-armhf-examine 8 reboot fail like 180278 test-armhf-armhf-libvirt 8 xen-boot fail like 180278 test-armhf-armhf-xl-arndale 8 xen-boot fail like 180278 test-armhf-armhf-libvirt-qcow2 8 xen-boot fail like 180278 test-armhf-armhf-xl 8 xen-boot fail like 180278 test-armhf-armhf-xl-rtds 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 180278 test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qcow2 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass version targeted for testing: linux 858fd168a95c5b9669aac8db6c14a9aeab446375 baseline version: linux 6c538e1adbfc696ac4747fb10d63e704344f763d Last test of basis 180278 2023-04-16 19:41:46 Z 56 days Failing since 180281 2023-04-17 06:24:36 Z 56 days 106 attempts Testing same since 181383 2023-06-11 22:12:05 Z 0 days 2 attempts ------------------------------------------------------------ 2681 people touched revisions under test, not listing them all jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl fail test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-freebsd11-amd64 pass test-amd64-amd64-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale fail test-amd64-amd64-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 broken test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 fail test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine fail test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt fail test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu broken test-amd64-amd64-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-amd64-pygrub pass test-amd64-amd64-libvirt-qcow2 pass test-armhf-armhf-libvirt-qcow2 fail test-amd64-amd64-libvirt-raw pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw broken test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds fail test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-amd64-xl-vhd pass test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd broken ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary broken-job test-armhf-armhf-libvirt-raw broken broken-job test-armhf-armhf-xl-credit1 broken broken-job test-armhf-armhf-xl-multivcpu broken broken-job test-armhf-armhf-xl-vhd broken broken-step test-armhf-armhf-xl-vhd host-install(5) broken-step test-armhf-armhf-libvirt-raw host-install(5) broken-step test-armhf-armhf-xl-multivcpu host-install(5) broken-step test-armhf-armhf-xl-credit1 host-install(5) Not pushing. (No revision log; it would be 340189 lines long.) From xen-devel-bounces@lists.xenproject.org Mon Jun 12 15:32:05 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 15:32:05 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547333.854654 (Exim 4.92) (envelope-from ) id 1q8jWR-0003lJ-LE; Mon, 12 Jun 2023 15:31:59 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547333.854654; Mon, 12 Jun 2023 15:31:59 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8jWR-0003lC-IO; Mon, 12 Jun 2023 15:31:59 +0000 Received: by outflank-mailman (input) for mailman id 547333; Mon, 12 Jun 2023 15:31:59 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8jWQ-0003l6-VA for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 15:31:58 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8jWF-0002nd-Nx; Mon, 12 Jun 2023 15:31:47 +0000 Received: from 54-240-197-231.amazon.com ([54.240.197.231] helo=[192.168.16.94]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1q8jWF-0001Xk-Gv; Mon, 12 Jun 2023 15:31:47 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=Vx2W0WVZtIrOzHTNcmlB2OteYmca/ah7XnkCyRB/pns=; b=hzGmSBiQ+VY1XbsQicgHjoeoOE ykp/2zRGEbIRnzstRldC3ceulQqkqp/V+YNteX2OrGr1ZYjHixlkcb4DyAJc7mNraoOkyQEx09Sga Cv/fecI5BY4Yn3OxL/0FnI/M8dpx1hM7+9+lXnOvkuVrqQQBWu4mRYsVe1GAdebM7wQ4=; Message-ID: <755e1f21-5a98-c5ff-328f-789f38a6ab8b@xen.org> Date: Mon, 12 Jun 2023 16:31:45 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.11.2 Subject: Re: [PATCH 2/3] xen/ppc: Implement early serial printk on PaPR/pseries Content-Language: en-US To: George Dunlap Cc: Shawn Anastasio , Andrew Cooper , Jan Beulich , tpearson@raptorengineering.com, George Dunlap , Stefano Stabellini , Wei Liu , Shawn Anastasio , xen-devel@lists.xenproject.org References: <0c0a19de-dde3-8b98-4354-6d3d2019179b@suse.com> <0b24d36b-adbc-9e7c-df6e-8754c269855d@citrix.com> <1c35f696-5a65-06da-8af5-685b8ad2e849@xen.org> <3a7eca41-0ecf-4bf1-1daf-9d66f4aa6400@xen.org> From: Julien Grall In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Hi George, Thanks for the summary! A couple of comments below. On 12/06/2023 16:19, George Dunlap wrote: > On Fri, Jun 9, 2023 at 5:07 PM Julien Grall wrote: > >> Hi Shawn, >> >> On 09/06/2023 16:01, Shawn Anastasio wrote: >>> On Fri Jun 9, 2023 at 5:12 AM CDT, Julien Grall wrote: >>>> Strictly speaking we can refuse any code. That count for license as >>>> well. Anyway, I didn't request a change here. I merely pointed out that >>>> any use of GPLv2+ should be justified because on Arm most of the people >>>> don't pay attention on the license and pick the one from an existing >> file. >>> >>> Hi Julien, >>> >>> The choice of GPLv2+ for many of the files in this patchset was indeed >>> inherited from old IBM-written Xen code that the files in question were >>> derived from. I did not realize it was permissible or even desirable to >>> relicense those to GPLv2-only. >>> >>> As for the new files, GPLv2+ was chosen to remain consistent and to open >>> the door for future derivations from GPLv2+ licensed code, either from >>> the older Xen tree or from the Linux ppc tree, much of which is also >>> licensed as GPLv2+. If it would reduce friction, these files could be >>> relicensed to GPLv2-only. >> >> (Before someone points out, I know this is already a problem on other >> part of Xen. But it would be ideal if we avoid spreading this mess on >> new architectures :). >> >> Thanks for the explanations. To clarify, are you saying that all the >> files will be GPLv2+ or just some? >> >> If the latter, then my concern would be that if you need to import >> GPLv2-only code, then you may need to write your code in a different >> file. This may become messy to handle and some developer may end up to >> be confused. >> >> I am not a lawyer though, so you may want to check the implications here. >> > > Shawn, > > Again sorry that you've sort of bumped a hornet's nest here. > > Just to clarify, the situation as I understand it is: > > 1. Large parts of Xen, being inherited from the Linux Kernel, are > GPLv2-only; and the documentation clearly states that code is GPLv2-only > unless explicitly stated otherwise. > > 2. Some individual files in Xen are labelled as GPLv2-or-later; but as they > rely on the "only" files, Xen as a whole can only be compiled under a GPLv2 > license. > > 3. New contributions to a file assumed to have the same license as the > header of the file; i.e., the code contained in patches to GPLv2-or-later > files is assumed to be granted according to a GPLv2-or-later license. The new contribution here could be code imported from Linux that would be GPLv2-only in GPLv2-or-later file. It is not clear to me what would be the legal implication. > > 4. In the past, the legal teams of some contributors -- namely ARM -- were > wary of the GPLv3; specifically the patent grant. Since ARM doesn't make > anything themselves, their patents are literally their product; they need > to be very careful of not accidentally granting them to the world. I think > one thing ARM may have been afraid of at some point is one of their > engineers accidentally submitting a patch to a GPLv2-or-later file which > would, when taken with a GPLv3 (or GPLv4 license, once it comes out) cause > them to lose too much control over their IP. > > My understanding is that Julien is afraid that if the "GPLv2-or-later" > files start to proliferate, that companies like ARM will start to become > more wary of contributing; and so has been generally trying to encourage > new files to be labelled "GPLv2-only" unless there's a good reason to do > otherwise. (Other issues like copying code from GPLv2-only are potential > pitfalls as well, but probably less important.) There is that and also the fact that we now need to be more careful when importing code from Linux. In Shawn's case this is mitigated by the fact that the license in Xen files should match the one in Linux. > Additionally, I think it would be good if the community *did* have a > discussion about whether we want an official policy; so that either we can > point people to the relevant doc (with explanation), or stop bothering > about it. :-) +1. Do you think that would be a good topic for Xen Summit? Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Mon Jun 12 15:35:10 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 15:35:10 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547338.854665 (Exim 4.92) (envelope-from ) id 1q8jZN-0004KZ-2l; Mon, 12 Jun 2023 15:35:01 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547338.854665; Mon, 12 Jun 2023 15:35:01 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8jZM-0004KS-Vp; Mon, 12 Jun 2023 15:35:00 +0000 Received: by outflank-mailman (input) for mailman id 547338; Mon, 12 Jun 2023 15:34:59 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8jZL-0004KM-Dd for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 15:34:59 +0000 Received: from mga12.intel.com (mga12.intel.com [192.55.52.136]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id a89836dd-0936-11ee-8611-37d641c3527e; Mon, 12 Jun 2023 17:34:54 +0200 (CEST) Received: from fmsmga004.fm.intel.com ([10.253.24.48]) by fmsmga106.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 12 Jun 2023 08:34:43 -0700 Received: from smile.fi.intel.com ([10.237.72.54]) by fmsmga004.fm.intel.com with ESMTP; 12 Jun 2023 08:34:39 -0700 Received: from andy by smile.fi.intel.com with local (Exim 4.96) (envelope-from ) id 1q8jYy-0039IC-2J; Mon, 12 Jun 2023 18:34:36 +0300 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: a89836dd-0936-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1686584094; x=1718120094; h=date:from:to:cc:subject:message-id:references: mime-version:content-transfer-encoding:in-reply-to; bh=Eb3Mm09adN6K9gUBCgKSk4MjwnPUfaI+/HnXTw8x3W4=; b=Yi7aAOvBdu+fLnX7OcJUsShZ54QuI/9r3B30Ol2xSYDqQZ4g+ccYbnJM WoAUDo0L6FwPZAbZ9YNU7kkZWgn03lSD7StRuCO3EjB6fzAUpe+4vwaQg dGqoNdL+YN0Dhf0Xp9Yy15MMzpK3ARMsJ8nOP7AXGmc5vv8lVSxRKIO+X 9+t7C73jFWIv3a62S+GiAAaZyFn0tNh9hKQUDiiApzB/8QAuhd7s+KsvE ZYfsTZf/ekRthCqGunzfPBk+Rsrx8JCApTpD7eT/C4EB6tCuWX0JAEQKb BDG6ohUqxQR8Xf4uKRSpWNAsrwE0SA/3I5XOvLkOz0YvmxJgUJB/ijXO9 A==; X-IronPort-AV: E=McAfee;i="6600,9927,10739"; a="337712744" X-IronPort-AV: E=Sophos;i="6.00,236,1681196400"; d="scan'208";a="337712744" X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10739"; a="781252297" X-IronPort-AV: E=Sophos;i="6.00,236,1681196400"; d="scan'208";a="781252297" Date: Mon, 12 Jun 2023 18:34:36 +0300 From: Andy Shevchenko To: Demi Marie Obenour Cc: Hans de Goede , Mauro Carvalho Chehab , Sakari Ailus , Greg Kroah-Hartman , Juergen Gross , Stefano Stabellini , Oleksandr Tyshchenko , Lee Jones , Andy Lutomirski , Thomas Gleixner , Vincenzo Frascino , Petr Mladek , Steven Rostedt , Sergey Senozhatsky , Rasmus Villemoes , linux-media@vger.kernel.org, linux-staging@lists.linux.dev, linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org Subject: Re: [PATCH v3 0/4] Make sscanf() stricter Message-ID: References: <20230610204044.3653-1-demi@invisiblethingslab.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <20230610204044.3653-1-demi@invisiblethingslab.com> Organization: Intel Finland Oy - BIC 0357606-4 - Westendinkatu 7, 02160 Espoo On Sat, Jun 10, 2023 at 04:40:40PM -0400, Demi Marie Obenour wrote: > Roger Pau Monné suggested making xenbus_scanf() stricter instead of > using a custom parser. Christoph Hellwig asked why the normal vsscanf() > cannot be made stricter. Richard Weinberger mentioned Linus Torvalds’s > suggestion of using ! to allow overflow. As Rasmus articulated, NAK w.o. test cases being added to all parts where your changes touch. -- With Best Regards, Andy Shevchenko From xen-devel-bounces@lists.xenproject.org Mon Jun 12 15:46:32 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 15:46:32 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547344.854675 (Exim 4.92) (envelope-from ) id 1q8jkF-0005sq-4Q; Mon, 12 Jun 2023 15:46:15 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547344.854675; Mon, 12 Jun 2023 15:46:15 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8jkF-0005sj-0d; Mon, 12 Jun 2023 15:46:15 +0000 Received: by outflank-mailman (input) for mailman id 547344; Mon, 12 Jun 2023 15:46:14 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8jkE-0005sd-7h for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 15:46:14 +0000 Received: from EUR05-AM6-obe.outbound.protection.outlook.com (mail-am6eur05on20619.outbound.protection.outlook.com [2a01:111:f400:7e1b::619]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 41036c24-0938-11ee-8611-37d641c3527e; Mon, 12 Jun 2023 17:46:11 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by AM9PR04MB8875.eurprd04.prod.outlook.com (2603:10a6:20b:40a::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.29; Mon, 12 Jun 2023 15:46:09 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.039; Mon, 12 Jun 2023 15:46:08 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 41036c24-0938-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=fe5X7uONqIOMC/Yu9080WjRN48SrshBJLa+7Pc3gq+8jXVn7+V6HM3fUp7eKVN/wpLafEfypO/SBPrk0YcjwL9O9Ev00lIf0cFs+gH7sNB9Gx7AL832jSDgYsGjeGZvv8IRA1Pqb6WFKplgiyJ+lt+l/nFfTLGm0/Y2bgVK/Pq83sBrmlvlwnyLAny4pCtyLK48NLA1KRkJXrhRpeBoiNBvg7OMGMesdKcjbDlhgnncE0Mcc+clYfDxLjUJx+vKkNGaV+HuYSP2RUxY/Xl8yM9Y08PIvrFE1CqqEfnRyXT2e/hBdsFptVufGCp0FFWZzh6TTvjA39K49l8jWX3U16Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=opIJUjeOOdIvt6uK4bx8GnlcFwhSXQZCFymCmhtb3Tw=; b=n1Em4ltnrtyu7eYfEcxzJSQTrP/+46Ibl9PQn5AMnpmckc41w6witpHCEvHaNt1/bDC+5M8nRaUfPAwT3JjVGOkPAN3YKcIYzYrjQRjLeToGBwKJ8t1mBhJa+HRcHFbbKTEvPyEW15a1u4cYF8YFuKW1helmlHbnUlF8rs7hPq3BTaCYG2Qj8gV5zxrvJj9EgDLqxUFwXve8YgQ6eS5pBhaG3XsGy478lb37ZNvdwpiFuIBeh35kSfhBClbSl+cdTNKb01pTl4s3vNCuHh/E3Tu7w0E/dhN9sdk0dSxGf7t1aC7ClAYqBLyjg27u7jewozmFBahJ5QZk7QO/5OKSsg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=opIJUjeOOdIvt6uK4bx8GnlcFwhSXQZCFymCmhtb3Tw=; b=LUJBvYz+/KWMJG8j3tEfBXdgsBLyEetZ3lbaL0bgKAeE9Q7fApFlyx3Y3Tdj+T5JRx+m9SjY+uxFnW934XsQWksjrKMS1KmeBGKseUBb9ahut4u45NeL4MwrfQ78t49OlNvE15Yg8yOKxYdY6oSJFrpil9AepjIhF/Rqlo/chL6BH5OaSnzIAHcdbGwoqodQApDbv3SSfCMrj7FLrlnxzq0YcvD0G4rH9sJj5M+pHO7AO8EpbD/ZmRvw0ksgs2AJ0Nf5FCRIMp69KqN1zUr1oLvSR6TGLVEQ0nMs3CjVWnT839thG0rEZ8wOMfzCdps4Pe89bygbQexi0Vb/35pV7Q== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <6ee9e687-b8ac-adfb-552e-522a21e128de@suse.com> Date: Mon, 12 Jun 2023 17:46:07 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v2 2/4] x86: Read MSR_ARCH_CAPS after early_microcode_init() Content-Language: en-US To: Alejandro Vallejo Cc: Andrew Cooper , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , Xen-devel References: <20230605170817.9913-1-alejandro.vallejo@cloud.com> <20230605170817.9913-3-alejandro.vallejo@cloud.com> From: Jan Beulich In-Reply-To: <20230605170817.9913-3-alejandro.vallejo@cloud.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR0P281CA0224.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:ac::10) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|AM9PR04MB8875:EE_ X-MS-Office365-Filtering-Correlation-Id: f6047e2f-d77f-4fc8-839f-08db6b5c23f9 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 9RIjN4S5niUwur/Z8hB1Z46UnC2Q6rnS5LsqPZ2nUGHVtv0cOPFJUg7m26itatXwVY0qE2YAMNue23zF5OmyhzWPCfbmCKE7xbTk/HdpR9rreDzG4N8O0GlhnryFZWz8gd0SLL3IYpBxzzP/JcgV2+JKgNYTxi8daAD7z6MGWDH8HWb+31vTjKjJc+is4Q2y/dAa7S1ROBlAbKX2GrE+eODv3X8LK9th/4gOQsNf1U848iIoCsJfiqzXkv9Q4tqAD4dybeEtRHOLmrwZKsVV2hOesfaOfeQvqXeihQuWZ1gnVz02AQjvzouYsTxLkhWhRLnpUc1YNXJswiKJG0wCZcr8CMQw6OedIQrEuJEh1ofnK0Mzmzju5tvuaOfz84/JJYTcRLIYvLQUN6fqR83DWM9eoOVGgTUvZOCxqhWhAmp9KlsC7iO5cMCcQ7t77u6hGXA1XBn0yDfO4bwRN1ohxOPk7EiYwEj8fajuYeUy4tceIJroo0SbHeUIhiNX6wroxODgG9ehjypGFPIdaUMwu/Fzb7q0gnc7L9B0TYcwnfUiNuIF8ImaHwBjFNNuBdVv14SxgUEbOPAqot2hIsLAsMe++FiL/t62dzwPbtyHhiZ6RmIEOoXiBBmYGcRZIH+iIvT2MjhTWlcrZ0DbEiAEkA== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(39860400002)(396003)(376002)(366004)(346002)(136003)(451199021)(4326008)(66556008)(316002)(6916009)(66476007)(31686004)(41300700001)(186003)(2906002)(54906003)(478600001)(66946007)(8676002)(8936002)(5660300002)(6486002)(53546011)(6506007)(6512007)(26005)(83380400001)(36756003)(86362001)(2616005)(31696002)(38100700002)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?TTFIbHd0bmtIOXlYeXlucXM1NjRHMjJwczR1S3NJWVN6QjdqSjBXYzFkNXpr?= =?utf-8?B?bWd6Nld0c0lCWGN4c1RBaW51dlVxdVRvQll3RG9LN2UzYXBZb1I0SCtNTGRX?= =?utf-8?B?L2N1cStZckRoWFAydGRvcjEyTExoc2hTWWkrU0VERDFPOTg1d2U2K0ZQb29T?= =?utf-8?B?MGZpUi9aSzh5LzQxT0pYdHEvaXZVa1pEMUwrZkh5QUpSbzZpL0d5NkRrM0tZ?= =?utf-8?B?aUQ3TGdnZnprK2V1ZVlVK0ZsRjVoNEFrbTFZeVphSzFYL21Tc3Znc256Sjhs?= =?utf-8?B?TXptbDdEUWJDdkRkQS9kRVY5UUZFc2hvVkZJOGhNRkwrT1Yyelc1UVlEbDdI?= =?utf-8?B?UFdMV3BIWTZ3dUhvR0hhYXZCemRUcWZIYmhUQ1ptOUxMOTNrTVZSenF3S2R2?= =?utf-8?B?N1FhNERTOFB6dzM2ZU03bXhKcVhBOUxnZ1NoQ2sydklyYXNnK0hoYWIvMUM1?= =?utf-8?B?cVg4WjY0NDQxUDNHT0VUNmVNTmZ3QmVqRzhFOCtYNTFGNG93OW8zd3pSaFpU?= =?utf-8?B?UU5BQWJJTzI1WjhKT1dpbkIxQ1QxclJKTmQ5eURhdzdnM1NUbWRwdWV5TjdK?= =?utf-8?B?Tm5mUE00eExEeDkyWjE2MHNWSjNvRi9oVHdONkVjNkcvdVBEOC9IQ0xXUlg2?= =?utf-8?B?YW1ZZkF2eW9Kak1QeUI3QmJwWnRpOG9CdzVyMGdBRXg2c01IMDQ4YURsR3Vn?= =?utf-8?B?VmJhRG9EUmljRTY1RURPSU1IOUhtaDVlblVVQ0dMMUc0Nnd4bGNZcUpGTlk5?= =?utf-8?B?N2phYzYxQlYxVWFXMUFsY2F4UGF1aHVmdXJMUkVld2FGdzMydlRTMzFYNndQ?= =?utf-8?B?ZnBoL2RHVU9aUk9OSmdic0VSa1dZVk5BcysxSWx3YXpleDNJVlRVSnVvekls?= =?utf-8?B?a0xJRW1ZbU9aK0lPYWl5OUs0TTE4U0sydHN6RXRrVmN1dklGcDg3QlJvcDJC?= =?utf-8?B?c0VORUtxM3F0SHdDNHBrTThScmtqUithanJqMVdhSEc5eUowbnp1dEhQdGY2?= =?utf-8?B?RFQ1SlhWalk5TVk5UUVLbERId0pYbXNDYmdKL1BIbllqUzRUQkZUeGtpbGFV?= =?utf-8?B?OEZwUTg0SkNERTZHMStmRG4wNSs2d0F0anNYM2RGb0crZ0Vtb01OZGx2THFD?= =?utf-8?B?MGtjMVlkV2ZobExvSHdtTXBTZTlvZE1OUnZjSkdwdE1oMG0wZ01jUjZFWlRo?= =?utf-8?B?d0NubkVOTDFvY1BVelBwenFMcXZYMUpDeXFIcmlYMmc1ZWF1aVZOZHVqaWlv?= =?utf-8?B?YWdkU0lxU2Z2QVpKdmF2MHI4YW0zeU1UYjVSbk9WellPRllaNk5oU0c3cWpK?= =?utf-8?B?ckRRdG96MG51bzlzMG9YZG1xc2lSejlRLzFqU3k1SFM0N2JPZDMzZy9VTzl3?= =?utf-8?B?NDBEbTNKWmp3SkNzWGhJakMrUDdhYXRsZ1RuSTIxRVpOazZla2dTK0d2alZ4?= =?utf-8?B?c0pOdkd4RmdYRThkWllBanpLd2dLMnF2S0EvT29KeDNxMEEzZWk1dWtUakxo?= =?utf-8?B?NVdsVDBZcWs4WHRLaWJteHhvK01PdnVwTENoKzZXMjBrZm4xSHRldjJmTFht?= =?utf-8?B?MUFaYVFFMmJkeGhjR2RRRFVQV0o3WFBrZUd6MktDN2ExZ244V3lweHpYUSt5?= =?utf-8?B?YnJKcGlxNm56VEp2bUw4WHg2YjYrRFhaSVVXSmFhampsbFdLbzMwdHhjeUJk?= =?utf-8?B?LzZsVnUvU2IyMjBaNVM3dkk2UDR5WnRjRHpCbWlCZmE4UE9xcFo2d0hLWEF6?= =?utf-8?B?M2JIck5iRTV4UVNOcjh5ZDVHZjBWd1BoQm5XSlRKUFlnV0NUZ20wS1VVQlEr?= =?utf-8?B?cGptY0NrcVBmdktmNGhTZU9RZTMrclJVSVI5R0xYY2ZVbkV6S0wzbk1tWm9G?= =?utf-8?B?aHR0bDNMY1RieEpxZUphL2VXSGE3Ynp6OUl3V0pPMFpySkMyRTBvQmthS3NX?= =?utf-8?B?U3BZbE1jSjdpU3BLL3d0U21uWmVCRXBKd1RxWmljSkpaWk9Cc3BuTkhHalhh?= =?utf-8?B?MXZhV2V3SDBVSmVVdzEvNTY0UEdMYUdnMm82NFkwZUg3OHBwSHl2anh2amg1?= =?utf-8?B?RkF0NVd5bEUrNm9Nb0ZOVHkrcEprVzRtSTl5eWlNa1pqbWM3emo2QU5pWWpU?= =?utf-8?Q?1PCUFmCuC8yWWEu5dXaW0CU/9?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: f6047e2f-d77f-4fc8-839f-08db6b5c23f9 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Jun 2023 15:46:08.8993 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: OMU+LE078bCEl7T8ucgErKYLH0BT1c4JIZ0ivpWPK6Vtg8XAQ2oPtzY9JwlIFrmnRvKF/yxGSMm3hrtBJpTe1Q== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR04MB8875 On 05.06.2023 19:08, Alejandro Vallejo wrote: > tsx_init() has some ad-hoc code to read MSR_ARCH_CAPS if present. In order > to suuport DIS_MCU_UPDATE we need access to it earlier, so this patch moves > early read to the tail of early_microcode_init(), after the early microcode > update. > > The read of the 7d0 CPUID leaf is left in a helper because it's reused in a > later patch. > > No functional change. > > Signed-off-by: Alejandro Vallejo > --- > I suspect there was an oversight in tsx_init() by which > boot_cpu_data.cpuid_level was never read? The first read I can > see is in identify_cpu(), which happens after tsx_init(). See early_cpu_init(). (I have to admit that I was also struggling with your use of "read": Aiui you mean the field was never written / set, and "read" really refers to the reading of the corresponding CPUID leaf.) > --- a/xen/arch/x86/cpu/microcode/core.c > +++ b/xen/arch/x86/cpu/microcode/core.c > @@ -840,6 +840,15 @@ static int __init early_microcode_update_cpu(void) > return microcode_update_cpu(patch); > } > > +static void __init early_read_cpuid_7d0(void) > +{ > + boot_cpu_data.cpuid_level = cpuid_eax(0); As per above I don't think this is needed. > + if ( boot_cpu_data.cpuid_level >= 7 ) > + boot_cpu_data.x86_capability[FEATURESET_7d0] > + = cpuid_count_edx(7, 0); This is actually filled in early_cpu_init() as well, so doesn't need re-doing here unless because of a suspected change to the value (but then other CPUID output may have changed, too). At which point ... > @@ -878,5 +887,17 @@ int __init early_microcode_init(unsigned long *module_map, > if ( ucode_mod.mod_end || ucode_blob.size ) > rc = early_microcode_update_cpu(); > > + early_read_cpuid_7d0(); > + > + /* > + * tsx_init() needs MSR_ARCH_CAPS, but it runs before identify_cpu() > + * populates boot_cpu_data, so we read it here to centralize early > + * CPUID/MSR reads in the same place. > + */ > + if ( cpu_has_arch_caps ) > + rdmsr(MSR_ARCH_CAPABILITIES, > + boot_cpu_data.x86_capability[FEATURESET_m10Al], > + boot_cpu_data.x86_capability[FEATURESET_m10Ah]); ... "centralize" aspect goes away, and hence the comment needs adjusting. > --- a/xen/arch/x86/tsx.c > +++ b/xen/arch/x86/tsx.c > @@ -39,9 +39,9 @@ void tsx_init(void) > static bool __read_mostly once; > > /* > - * This function is first called between microcode being loaded, and CPUID > - * being scanned generally. Read into boot_cpu_data.x86_capability[] for > - * the cpu_has_* bits we care about using here. > + * While MSRs/CPUID haven't yet been scanned, MSR_ARCH_CAPABILITIES > + * and leaf 7d0 have already been read if present after early microcode > + * loading time. So we can assume _those_ are present. > */ > if ( unlikely(!once) ) > { I think I'd like to see at least the initial part of the original comment retained here. Jan From xen-devel-bounces@lists.xenproject.org Mon Jun 12 16:11:04 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 16:11:04 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547349.854684 (Exim 4.92) (envelope-from ) id 1q8k83-0001Pr-15; Mon, 12 Jun 2023 16:10:51 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547349.854684; Mon, 12 Jun 2023 16:10:51 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8k82-0001Pk-Un; Mon, 12 Jun 2023 16:10:50 +0000 Received: by outflank-mailman (input) for mailman id 547349; Mon, 12 Jun 2023 16:10:49 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8k81-0001Pa-AS for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 16:10:49 +0000 Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id b0f2b3ab-093b-11ee-b232-6b7b168915f2; Mon, 12 Jun 2023 18:10:47 +0200 (CEST) Received: from nico.bugseng.com (rm-19-57-179.service.infuturo.it [151.19.57.179]) by support.bugseng.com (Postfix) with ESMTPSA id 3F3F14EE073E; Mon, 12 Jun 2023 18:10:46 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: b0f2b3ab-093b-11ee-b232-6b7b168915f2 From: nicola.vetrini@bugseng.com To: xen-devel@lists.xenproject.org Cc: Nicola Vetrini Subject: [XEN PATCH] xen: fixed violations of MISRA C:2012 Rule 3.1 Date: Mon, 12 Jun 2023 18:10:35 +0200 Message-Id: X-Mailer: git-send-email 2.34.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit From: Nicola Vetrini The xen sources contain several violations of Rule 3.1 from MISRA C:2012, whose headline states: "The character sequences '/*' and '//' shall not be used within a comment". Most of the violations are due to the presence of links to webpages within C-style comment blocks, such as: xen/arch/arm/include/asm/smccc.h:37.1-41.3 /* * This file provides common defines for ARM SMC Calling Convention as * specified in * http://infocenter.arm.com/help/topic/com.arm.doc.den0028a/index.html */ In this case, we propose to deviate all of these occurrences with a project deviation to be captured by a tool configuration. There are, however, a few other violations that do not fall under this category, namely: 1. in file "xen/arch/arm/include/asm/arm64/flushtlb.h" we propose to avoid the usage of a nested comment; 2. in file "xen/common/xmalloc_tlsf.c" we propose to substitute the commented-out if statement with a "#if 0 .. #endif; 3. in file "xen/include/xen/atomic.h" and "xen/drivers/passthrough/arm/smmu-v3.c" we propose to split the C-style comment containing the nested comment into two doxygen comments, clearly identifying the second as a code sample. This can then be captured with a project deviation by a tool configuration. Signed-off-by: Nicola Vetrini --- xen/arch/arm/include/asm/arm64/flushtlb.h | 8 ++++---- xen/common/xmalloc_tlsf.c | 7 ++++--- xen/drivers/passthrough/arm/smmu-v3.c | 9 ++++++--- xen/include/xen/atomic.h | 5 ++++- 4 files changed, 18 insertions(+), 11 deletions(-) diff --git a/xen/arch/arm/include/asm/arm64/flushtlb.h b/xen/arch/arm/include/asm/arm64/flushtlb.h index 3a9092b814..90ac3f9809 100644 --- a/xen/arch/arm/include/asm/arm64/flushtlb.h +++ b/xen/arch/arm/include/asm/arm64/flushtlb.h @@ -4,10 +4,10 @@ /* * Every invalidation operation use the following patterns: * - * DSB ISHST // Ensure prior page-tables updates have completed - * TLBI... // Invalidate the TLB - * DSB ISH // Ensure the TLB invalidation has completed - * ISB // See explanation below + * DSB ISHST Ensure prior page-tables updates have completed + * TLBI... Invalidate the TLB + * DSB ISH Ensure the TLB invalidation has completed + * ISB See explanation below * * ARM64_WORKAROUND_REPEAT_TLBI: * Modification of the translation table for a virtual address might lead to diff --git a/xen/common/xmalloc_tlsf.c b/xen/common/xmalloc_tlsf.c index 75bdf18c4e..ea6ec47a59 100644 --- a/xen/common/xmalloc_tlsf.c +++ b/xen/common/xmalloc_tlsf.c @@ -140,9 +140,10 @@ static inline void MAPPING_SEARCH(unsigned long *r, int *fl, int *sl) *fl = flsl(*r) - 1; *sl = (*r >> (*fl - MAX_LOG2_SLI)) - MAX_SLI; *fl -= FLI_OFFSET; - /*if ((*fl -= FLI_OFFSET) < 0) // FL will be always >0! - *fl = *sl = 0; - */ +#if 0 + if ((*fl -= FLI_OFFSET) < 0) // FL will be always >0! + fl = *sl = 0; +#endif *r &= ~t; } } diff --git a/xen/drivers/passthrough/arm/smmu-v3.c b/xen/drivers/passthrough/arm/smmu-v3.c index 720aa69ff2..b1c536e7d9 100644 --- a/xen/drivers/passthrough/arm/smmu-v3.c +++ b/xen/drivers/passthrough/arm/smmu-v3.c @@ -1045,15 +1045,18 @@ static int arm_smmu_atc_inv_domain(struct arm_smmu_domain *smmu_domain, /* * Ensure that we've completed prior invalidation of the main TLBs * before we read 'nr_ats_masters' in case of a concurrent call to - * arm_smmu_enable_ats(): + * arm_smmu_enable_ats(). + */ + /** + * Code sample: Ensures that we always see the incremented + * 'nr_ats_masters' count if ATS was enabled at the PCI device before + * completion of the TLBI. * * // unmap() // arm_smmu_enable_ats() * TLBI+SYNC atomic_inc(&nr_ats_masters); * smp_mb(); [...] * atomic_read(&nr_ats_masters); pci_enable_ats() // writel() * - * Ensures that we always see the incremented 'nr_ats_masters' count if - * ATS was enabled at the PCI device before completion of the TLBI. */ smp_mb(); if (!atomic_read(&smmu_domain->nr_ats_masters)) diff --git a/xen/include/xen/atomic.h b/xen/include/xen/atomic.h index 529213ebbb..829646dda0 100644 --- a/xen/include/xen/atomic.h +++ b/xen/include/xen/atomic.h @@ -71,7 +71,10 @@ static inline void _atomic_set(atomic_t *v, int i); * Returns the initial value in @v, hence succeeds when the return value * matches that of @old. * - * Sample (tries atomic increment of v until the operation succeeds): + */ +/** + * + * Code sample: Tries atomic increment of v until the operation succeeds. * * while(1) * { -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 12 16:13:28 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 16:13:28 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547357.854695 (Exim 4.92) (envelope-from ) id 1q8kAU-00021r-Hv; Mon, 12 Jun 2023 16:13:22 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547357.854695; Mon, 12 Jun 2023 16:13:22 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8kAU-00021i-F2; Mon, 12 Jun 2023 16:13:22 +0000 Received: by outflank-mailman (input) for mailman id 547357; Mon, 12 Jun 2023 16:13:21 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8kAT-00021a-Fh for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 16:13:21 +0000 Received: from esa1.hc3370-68.iphmx.com (esa1.hc3370-68.iphmx.com [216.71.145.142]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 09fa18e6-093c-11ee-b232-6b7b168915f2; Mon, 12 Jun 2023 18:13:18 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 09fa18e6-093c-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686586398; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=eFTZogDG8jJGUh/dvb+LH3qiXQDXhFneACQkBb0Q/Es=; b=bg5kc1ZmrvtRnirllHxi81M70cExVMg0e2qUw+Fb6o+MKhtTM0Gqnpa0 HUUWhirQFmNb5cq6j8WMdQF5X9NA+swPX+BtUqFc6OjsjZG2WpB5NgLxo /VjoHIlcS0IV5yI/oRcO6wwjsGN2I8rLPC8k66wwa4iqSTpCFHLpuOg8d k=; Authentication-Results: esa1.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none X-SBRS: 4.0 X-MesageID: 112913012 X-Ironport-Server: esa1.hc3370-68.iphmx.com X-Remote-IP: 162.221.156.123 X-Policy: $RELAYED IronPort-Data: A9a23:Twy/iqhdSrRPQZWEQyRz7MBRX161GhAKZh0ujC45NGQN5FlHY01je htvWWiEaPeNMzb9fopzO9+y8U5Su5SDx9FqGgFp+SpnRCob9cadCdqndUqhZCn6wu8v7q5Ex 55HNoSfdpBcolv0/ErF3m3J9CEkvU2wbuOgTrWCYmYpHlUMpB4J0XpLg/Q+jpNjne+3CgaMv cKai8DEMRqu1iUc3lg8sspvkzsx+qyq0N8klgZmP6sT4gaEzyN94K83fsldEVOpGuG4IcbiL wrz5OnR1n/U+R4rFuSknt7TGqHdauePVeQmoiM+t5mK2nCulARrukoIHKN0hXNsoyeIh7hMJ OBl7vRcf+uL0prkw4zxWzEAe8130DYvFLXveRBTuuTLp6HKnueFL1yDwyjaMKVBktubD12i+ tRFCDEUQVeMo96mxY+GS7BihZoOB/XSadZ3VnFIlVk1DN4jSJHHBa7L+cVZzHE7gcUm8fT2P pRDL2A1NVKZPkMJYw1MYH49tL7Aan3XWjtUsl+K44Ew5HDe1ldZ27nxKtvFPNeNQK25m27B/ ziXpj+hW0ty2Nq3+SO/82mWm+zzhnnDX5ouHb+g+KdGuQjGroAUIEJPDgbqyRWjsWauVtQaJ 0EK9y4Gqakp6FftXtT7Rwe/onOPolgbQdU4O88Q5RyJy6HUyx2EHWVCRTlEAPQ5sOcmSDps0 UWG9+4FHhQ27ufTEyjEsO7J83XrY3N9wXI+iTEsECsE+vakr6UPnhfyc9c6Hq3ro/bJIGSlq 9yVlxTSl4n/nOZSifXlpwCc2GPxznTaZlVrv1uKBwpJ+is8Pdf4PNLwtDA3+N4adO6kok+9U G/ociR0xMQHFtmzmSOEW43h95n5tq/eYFUwbbOCdqTNFghBGFb5J+i8GBkkeC9U3j8sIFcFm nP7twJL/4N0N3C3d6JxaI/ZI510nfa9TYS5DqGMMoQmjn1NmOivpngGWKJt9zq1zBhEfV8XZ P93jvpA/V5FUP86nVJats8W0KMxxzBW+I8gbcmT8vhT6pLHPCT9Ye5cYDOzghURsPvsTPP9r 4wOaKNnCnx3DIXDX8Ug2dRDfQlXfCRhVMyeRg4+XrfrHzeK0VoJU5f5qY7NsaQ890iJvo8kJ k2AZ3I= IronPort-HdrOrdr: A9a23:n3rwrqGCQHMcLCdBpLqE7MeALOsnbusQ8zAXPhZKOHhom62j9/ xG885x6faZslwssRIb+OxoWpPufZqGz+8R3WB5B97LYOCBggaVxepZg7cKrQeNJ8VQnNQtsp uJ38JFeb7N5fkRt7eZ3DWF X-Talos-CUID: 9a23:9BCN/W9TLDhefmW0njaVvxM0G9kKNXL58GfVHnK5UGhqFpC+dWbFrQ== X-Talos-MUID: 9a23:t376fgSz6G1Ez/GgRXTcnQtjL/114Ji1UngKiakPudGKbABJbmI= X-IronPort-AV: E=Sophos;i="6.00,236,1681185600"; d="scan'208";a="112913012" From: Andrew Cooper To: Xen-devel CC: Andrew Cooper , Jan Beulich , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Wei Liu Subject: [PATCH v3 4/4] x86/cpu-policy: Derive RSBA/RRSBA for guest policies Date: Mon, 12 Jun 2023 17:13:06 +0100 Message-ID: <20230612161306.2739572-5-andrew.cooper3@citrix.com> X-Mailer: git-send-email 2.30.2 In-Reply-To: <20230612161306.2739572-1-andrew.cooper3@citrix.com> References: <20230612161306.2739572-1-andrew.cooper3@citrix.com> MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit The RSBA bit, "RSB Alternative", means that the RSB may use alternative predictors when empty. From a practical point of view, this mean "Retpoline not safe". Enhanced IBRS (officially IBRS_ALL in Intel's docs, previously IBRS_ATT) is a statement that IBRS is implemented in hardware (as opposed to the form retrofitted to existing CPUs in microcode). The RRSBA bit, "Restricted-RSBA", is a combination of RSBA, and the eIBRS property that predictions are tagged with the mode in which they were learnt. Therefore, it means "when eIBRS is active, the RSB may fall back to alternative predictors but restricted to the current prediction mode". As such, it's stronger statement than RSBA, but still means "Retpoline not safe". CPUs are not expected to enumerate both RSBA and RRSBA. Add feature dependencies for EIBRS and RRSBA. While technically they're not linked, absolutely nothing good can come of letting the guest see RRSBA without EIBRS. Nor a guest seeing EIBRS without IBRSB. Furthermore, we use this dependency to simplify the max derivation logic. The max policies gets RSBA and RRSBA unconditionally set (with the EIBRS dependency maybe hiding RRSBA). We can run any VM, even if it has been told "somewhere you might run, Retpoline isn't safe". The default policies are more complicated. A guest shouldn't see both bits, but it needs to see one if the current host suffers from any form of RSBA, and which bit it needs to see depends on whether eIBRS is visible or not. Therefore, the calculation must be performed after sanitise_featureset(). Signed-off-by: Andrew Cooper --- CC: Jan Beulich CC: Roger Pau Monné CC: Wei Liu v3: * Minor commit message adjustment. * Drop changes to recalculate_cpuid_policy(). Deferred to a later series. v2: * Expand/adjust the comment for the max features. * Rewrite the default feature derivation in light of new information. * Fix up in recalculate_cpuid_policy() too. --- xen/arch/x86/cpu-policy.c | 39 +++++++++++++++++++++ xen/include/public/arch-x86/cpufeatureset.h | 4 +-- xen/tools/gen-cpuid.py | 5 ++- 3 files changed, 45 insertions(+), 3 deletions(-) diff --git a/xen/arch/x86/cpu-policy.c b/xen/arch/x86/cpu-policy.c index ee256ff5a137..cde7f7605c28 100644 --- a/xen/arch/x86/cpu-policy.c +++ b/xen/arch/x86/cpu-policy.c @@ -423,8 +423,17 @@ static void __init guest_common_max_feature_adjustments(uint32_t *fs) * Retpoline not safe)", so these need to be visible to a guest in all * cases, even when it's only some other server in the pool which * suffers the identified behaviour. + * + * We can always run any VM which has previously (or will + * subsequently) run on hardware where Retpoline is not safe. + * Note: + * - The dependency logic may hide RRSBA for other reasons. + * - The max policy does not contitute a sensible configuration to + * run a guest in. */ __set_bit(X86_FEATURE_ARCH_CAPS, fs); + __set_bit(X86_FEATURE_RSBA, fs); + __set_bit(X86_FEATURE_RRSBA, fs); } } @@ -532,6 +541,21 @@ static void __init calculate_pv_def_policy(void) guest_common_default_feature_adjustments(fs); sanitise_featureset(fs); + + /* + * If the host suffers from RSBA of any form, and the guest can see + * MSR_ARCH_CAPS, reflect the appropriate RSBA/RRSBA property to the guest + * depending on the visibility of eIBRS. + */ + if ( test_bit(X86_FEATURE_ARCH_CAPS, fs) && + (cpu_has_rsba || cpu_has_rrsba) ) + { + bool eibrs = test_bit(X86_FEATURE_EIBRS, fs); + + __set_bit(eibrs ? X86_FEATURE_RRSBA + : X86_FEATURE_RSBA, fs); + } + x86_cpu_featureset_to_policy(fs, p); recalculate_xstate(p); } @@ -664,6 +688,21 @@ static void __init calculate_hvm_def_policy(void) __set_bit(X86_FEATURE_VIRT_SSBD, fs); sanitise_featureset(fs); + + /* + * If the host suffers from RSBA of any form, and the guest can see + * MSR_ARCH_CAPS, reflect the appropriate RSBA/RRSBA property to the guest + * depending on the visibility of eIBRS. + */ + if ( test_bit(X86_FEATURE_ARCH_CAPS, fs) && + (cpu_has_rsba || cpu_has_rrsba) ) + { + bool eibrs = test_bit(X86_FEATURE_EIBRS, fs); + + __set_bit(eibrs ? X86_FEATURE_RRSBA + : X86_FEATURE_RSBA, fs); + } + x86_cpu_featureset_to_policy(fs, p); recalculate_xstate(p); } diff --git a/xen/include/public/arch-x86/cpufeatureset.h b/xen/include/public/arch-x86/cpufeatureset.h index ea779c29879e..ce7407d6a10c 100644 --- a/xen/include/public/arch-x86/cpufeatureset.h +++ b/xen/include/public/arch-x86/cpufeatureset.h @@ -311,7 +311,7 @@ XEN_CPUFEATURE(CET_SSS, 15*32+18) /* CET Supervisor Shadow Stacks s /* Intel-defined CPU features, MSR_ARCH_CAPS 0x10a.eax, word 16 */ XEN_CPUFEATURE(RDCL_NO, 16*32+ 0) /*A No Rogue Data Cache Load (Meltdown) */ XEN_CPUFEATURE(EIBRS, 16*32+ 1) /*A Enhanced IBRS */ -XEN_CPUFEATURE(RSBA, 16*32+ 2) /*!A RSB Alternative (Retpoline not safe) */ +XEN_CPUFEATURE(RSBA, 16*32+ 2) /*! RSB Alternative (Retpoline not safe) */ XEN_CPUFEATURE(SKIP_L1DFL, 16*32+ 3) /* Don't need to flush L1D on VMEntry */ XEN_CPUFEATURE(INTEL_SSB_NO, 16*32+ 4) /*A No Speculative Store Bypass */ XEN_CPUFEATURE(MDS_NO, 16*32+ 5) /*A No Microarchitectural Data Sampling */ @@ -327,7 +327,7 @@ XEN_CPUFEATURE(FBSDP_NO, 16*32+14) /*A No Fill Buffer Stale Data Prop XEN_CPUFEATURE(PSDP_NO, 16*32+15) /*A No Primary Stale Data Propagation */ XEN_CPUFEATURE(FB_CLEAR, 16*32+17) /*A Fill Buffers cleared by VERW */ XEN_CPUFEATURE(FB_CLEAR_CTRL, 16*32+18) /* MSR_OPT_CPU_CTRL.FB_CLEAR_DIS */ -XEN_CPUFEATURE(RRSBA, 16*32+19) /*!A Restricted RSB Alternative */ +XEN_CPUFEATURE(RRSBA, 16*32+19) /*! Restricted RSB Alternative */ XEN_CPUFEATURE(BHI_NO, 16*32+20) /*A No Branch History Injection */ XEN_CPUFEATURE(XAPIC_STATUS, 16*32+21) /* MSR_XAPIC_DISABLE_STATUS */ XEN_CPUFEATURE(OVRCLK_STATUS, 16*32+23) /* MSR_OVERCLOCKING_STATUS */ diff --git a/xen/tools/gen-cpuid.py b/xen/tools/gen-cpuid.py index 973fcc1c64e8..72cf11654ba9 100755 --- a/xen/tools/gen-cpuid.py +++ b/xen/tools/gen-cpuid.py @@ -318,7 +318,7 @@ def crunch_numbers(state): # IBRSB/IBRS, and we pass this MSR directly to guests. Treating them # as dependent features simplifies Xen's logic, and prevents the guest # from seeing implausible configurations. - IBRSB: [STIBP, SSBD, INTEL_PSFD], + IBRSB: [STIBP, SSBD, INTEL_PSFD, EIBRS], IBRS: [AMD_STIBP, AMD_SSBD, PSFD, AUTO_IBRS, IBRS_ALWAYS, IBRS_FAST, IBRS_SAME_MODE], AMD_STIBP: [STIBP_ALWAYS], @@ -328,6 +328,9 @@ def crunch_numbers(state): # The ARCH_CAPS CPUID bit enumerates the availability of the whole register. ARCH_CAPS: list(range(RDCL_NO, RDCL_NO + 64)), + + # The behaviour described by RRSBA depend on eIBRS being active. + EIBRS: [RRSBA], } deep_features = tuple(sorted(deps.keys())) -- 2.30.2 From xen-devel-bounces@lists.xenproject.org Mon Jun 12 16:13:29 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 16:13:29 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547359.854715 (Exim 4.92) (envelope-from ) id 1q8kAb-0002ZE-1D; Mon, 12 Jun 2023 16:13:29 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547359.854715; Mon, 12 Jun 2023 16:13:29 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8kAa-0002Z7-UZ; Mon, 12 Jun 2023 16:13:28 +0000 Received: by outflank-mailman (input) for mailman id 547359; Mon, 12 Jun 2023 16:13:27 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8kAZ-00021a-FG for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 16:13:27 +0000 Received: from esa3.hc3370-68.iphmx.com (esa3.hc3370-68.iphmx.com [216.71.145.155]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 0fa7f518-093c-11ee-b232-6b7b168915f2; Mon, 12 Jun 2023 18:13:26 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 0fa7f518-093c-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686586406; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=JSQhePAu7wLSZxBsPLSVDbChk6MZTVUce/EtRxuN6UE=; b=VqKOk0WI+E2+AxOo3+931A+ulSdwxdkoOZIHtYjIWJmKwDCtnfFISALc aMbg1qD0Go/GM9yfAf1XS8vz+4iCmAxyUfdaT7dKF5r2j1yjDEVy9MkI0 4JAA//ZuZcsdlW2nmLSdtkTnxT4kQqJKY9WzI1oP3vZhpSEn2ohdbSqBm w=; Authentication-Results: esa3.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none X-SBRS: 4.0 X-MesageID: 112508909 X-Ironport-Server: esa3.hc3370-68.iphmx.com X-Remote-IP: 162.221.156.123 X-Policy: $RELAYED IronPort-Data: A9a23:JlpAsaO86SIlBKrvrR3fl8FynXyQoLVcMsEvi/4bfWQNrUp21DAGn GEbDDjQbPbcM2ajf9AlO4/j/UIH6pTXnYNhTgto+SlhQUwRpJueD7x1DKtS0wC6dZSfER09v 63yTvGacajYm1eF/k/F3oDJ9CU6jufQAOKnUoYoAwgpLSd8UiAtlBl/rOAwh49skLCRDhiE/ Nj/uKUzAnf8s9JPGjxSs/rrRC9H5qyo42tG5wZmP5ingXeF/5UrJMNHTU2OByOQrrl8RoaSW +vFxbelyWLVlz9F5gSNy+uTnuUiG9Y+DCDW4pZkc/HKbitq/0Te5p0TJvsEAXq7vh3S9zxHJ HehgrTrIeshFvWkdO3wyHC0GQkmVUFN0OevzXRSLaV/ZqAJGpfh66wGMa04AWEX0sBSIG1i+ NJEFDEMYyy4gfib3q/qE+Y506zPLOGzVG8eknRpzDWfBvc6W5HTBa7N4Le03h9p2JoIR6yHI ZNEN3w2Nk+ojx5nYz/7DLoXmuuyi2a5WDpfsF+P/oI84nTJzRw327/oWDbQUoXTH5gNzhfA9 woq+UzBWxJdJfuj4gODySKIxd7DxSbjSKE7QejQGvlC3wTImz175ActfUu2p7y1h1CzX/pbK lcI4Ww+oK4q7kupQ9LhGRqirxasvBQRRt5RGO0S8xyWx+zf5APxLncAZi5MbpohrsBeeNAx/ gbXxZWzX2Up6eDLDyvHrd94sA9eJwAzCE4OSSIqETcE4tTfm4cpowzSH49sRfvdYsLOJd3g/ 9ybhHFg1+tJ3ZVQhvjTEUPv2Gz1+MWQJuIhzkCOBz/+sFskDGKwT9bwgWU3+8qsO2pworOpm HEf0/aT4+kVZX1mvHzcGb5ddF1FChvsDdE9vbKMN8N7n9hV0yT/Fb28GRknTKuTDu4KeCXyf GjYsh5L6ZlYMROCNPEnPd/pW5hynPC8S7wJs8w4ifIUO/BMmPKvpnkyNSZ8IUiw+KTTrU3PE cjCKpv9ZZrrIa9m0CC3V48gPUwDn0gDKZfobcmjlXyPiOPODEN5vJ9ZaDNimMhltvLbyOgUm v4DX/a3J+J3Cr2uO3SGrdRCcTjn7xETXPjLliCeTcbbSiIOJY3rI6a5LW8JE2C9o5loqw== IronPort-HdrOrdr: A9a23:PYq/paoE2I3gh82nyeqAdN0aV5oReYIsimQD101hICG9E/b1qy nKpp8mPHDP5wr5NEtPpTn4AtjnfZq/z/5ICPgqXItKNTOO0AHEEGgI1/qA/9SPIVybysdtkY tmbqhiGJnRIDFB/KHHCdCDYrQdKQ+8gcWVuds= X-Talos-CUID: 9a23:WnQU/2C9/MBkj6z6Ew9C1UI4F+55TnzcwUvrJVWVF3s4EbLAHA== X-Talos-MUID: 9a23:vdutSgmWka0HzMGhgT4odnpabcQv8oOSI3kLqsUi+PiIbSloKxS02WE= X-IronPort-AV: E=Sophos;i="6.00,236,1681185600"; d="scan'208";a="112508909" From: Andrew Cooper To: Xen-devel CC: Andrew Cooper , Jan Beulich , Jan Beulich , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Wei Liu Subject: [PATCH v3 2/4] x86/spec-ctrl: Rename retpoline_safe() to retpoline_calculations() Date: Mon, 12 Jun 2023 17:13:04 +0100 Message-ID: <20230612161306.2739572-3-andrew.cooper3@citrix.com> X-Mailer: git-send-email 2.30.2 In-Reply-To: <20230612161306.2739572-1-andrew.cooper3@citrix.com> References: <20230612161306.2739572-1-andrew.cooper3@citrix.com> MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit This is prep work, split out to simply the diff on the following change. * Rename to retpoline_calculations(), and call unconditionally. It is shortly going to synthesise missing enumerations required for guest safety. * For the model check switch statement, store the result in a variable and break rather than returning directly. No functional change. Signed-off-by: Andrew Cooper Reviewed-by: Jan Beulich --- CC: Jan Beulich CC: Roger Pau Monné CC: Wei Liu v2: * Extend the 'safe' variable to the entire switch statement. --- xen/arch/x86/spec_ctrl.c | 41 +++++++++++++++++++++++++--------------- 1 file changed, 26 insertions(+), 15 deletions(-) diff --git a/xen/arch/x86/spec_ctrl.c b/xen/arch/x86/spec_ctrl.c index 05b86edf73d3..3892ce4d20ba 100644 --- a/xen/arch/x86/spec_ctrl.c +++ b/xen/arch/x86/spec_ctrl.c @@ -580,9 +580,10 @@ static bool __init check_smt_enabled(void) } /* Calculate whether Retpoline is known-safe on this CPU. */ -static bool __init retpoline_safe(void) +static bool __init retpoline_calculations(void) { unsigned int ucode_rev = this_cpu(cpu_sig).rev; + bool safe = false; if ( boot_cpu_data.x86_vendor & (X86_VENDOR_AMD | X86_VENDOR_HYGON) ) return true; @@ -620,29 +621,31 @@ static bool __init retpoline_safe(void) case 0x3f: /* Haswell EX/EP */ case 0x45: /* Haswell D */ case 0x46: /* Haswell H */ - return true; + safe = true; + break; /* * Broadwell processors are retpoline-safe after specific microcode * versions. */ case 0x3d: /* Broadwell */ - return ucode_rev >= 0x2a; + safe = ucode_rev >= 0x2a; break; case 0x47: /* Broadwell H */ - return ucode_rev >= 0x1d; + safe = ucode_rev >= 0x1d; break; case 0x4f: /* Broadwell EP/EX */ - return ucode_rev >= 0xb000021; + safe = ucode_rev >= 0xb000021; break; case 0x56: /* Broadwell D */ switch ( boot_cpu_data.x86_mask ) { - case 2: return ucode_rev >= 0x15; - case 3: return ucode_rev >= 0x7000012; - case 4: return ucode_rev >= 0xf000011; - case 5: return ucode_rev >= 0xe000009; + case 2: safe = ucode_rev >= 0x15; break; + case 3: safe = ucode_rev >= 0x7000012; break; + case 4: safe = ucode_rev >= 0xf000011; break; + case 5: safe = ucode_rev >= 0xe000009; break; default: printk("Unrecognised CPU stepping %#x - assuming not reptpoline safe\n", boot_cpu_data.x86_mask); - return false; + safe = false; + break; } break; @@ -656,7 +659,8 @@ static bool __init retpoline_safe(void) case 0x67: /* Cannonlake? */ case 0x8e: /* Kabylake M */ case 0x9e: /* Kabylake D */ - return false; + safe = false; + break; /* * Atom processors before Goldmont Plus/Gemini Lake are retpoline-safe. @@ -675,13 +679,17 @@ static bool __init retpoline_safe(void) case 0x5c: /* Goldmont */ case 0x5f: /* Denverton */ case 0x85: /* Knights Mill */ - return true; + safe = true; + break; default: printk("Unrecognised CPU model %#x - assuming not reptpoline safe\n", boot_cpu_data.x86_model); - return false; + safe = false; + break; } + + return safe; } /* @@ -1114,7 +1122,7 @@ void __init init_speculation_mitigations(void) { enum ind_thunk thunk = THUNK_DEFAULT; bool has_spec_ctrl, ibrs = false, hw_smt_enabled; - bool cpu_has_bug_taa; + bool cpu_has_bug_taa, retpoline_safe; hw_smt_enabled = check_smt_enabled(); @@ -1143,6 +1151,9 @@ void __init init_speculation_mitigations(void) thunk = THUNK_JMP; } + /* Determine if retpoline is safe on this CPU. */ + retpoline_safe = retpoline_calculations(); + /* * Has the user specified any custom BTI mitigations? If so, follow their * instructions exactly and disable all heuristics. @@ -1164,7 +1175,7 @@ void __init init_speculation_mitigations(void) * On all hardware, we'd like to use retpoline in preference to * IBRS, but only if it is safe on this hardware. */ - if ( retpoline_safe() ) + if ( retpoline_safe ) thunk = THUNK_RETPOLINE; else if ( has_spec_ctrl ) ibrs = true; -- 2.30.2 From xen-devel-bounces@lists.xenproject.org Mon Jun 12 16:13:29 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 16:13:29 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547358.854705 (Exim 4.92) (envelope-from ) id 1q8kAW-0002HT-Pq; Mon, 12 Jun 2023 16:13:24 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547358.854705; Mon, 12 Jun 2023 16:13:24 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8kAW-0002HM-N6; Mon, 12 Jun 2023 16:13:24 +0000 Received: by outflank-mailman (input) for mailman id 547358; Mon, 12 Jun 2023 16:13:23 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8kAV-00021a-O2 for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 16:13:23 +0000 Received: from esa3.hc3370-68.iphmx.com (esa3.hc3370-68.iphmx.com [216.71.145.155]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 0cd50c72-093c-11ee-b232-6b7b168915f2; Mon, 12 Jun 2023 18:13:22 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 0cd50c72-093c-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686586402; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=juo+5nxjgfadIrJ0bP+JWsuC+QxOfTnJ4UTN/JsNx78=; b=T76T3SpWW2FMzv6hnjsrSw1o8cvy7adj20k4NHhUnpdOHCbGklHm4OC8 ZMceQv7Ee1S0BGP/Y6YRzTf5ivtbkelne2F8+74/6R1LLB1sHHB1DqwEI yu5wyqBGzUUoY/SnBPEJDTNhgXVe3a1DCdl3dYTW9Zbi+Q1UPw8+Zf63v k=; Authentication-Results: esa3.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none X-SBRS: 4.0 X-MesageID: 112508902 X-Ironport-Server: esa3.hc3370-68.iphmx.com X-Remote-IP: 162.221.156.123 X-Policy: $RELAYED IronPort-Data: A9a23:iZxsrqq5eyK7lLZ2EpQ1JEWuhRJeBmJiZRIvgKrLsJaIsI4StFCzt garIBnSM/mNa2X8ctglOdjk/R4DucLRx99iGwZs/3g0Fi8V85uZCYyVIHmrMnLJJKUvbq7FA +Y2MYCccZ9uHhcwgj/3b9ANeFEljfngqoLUUbKCYWYpA1c/Ek/NsDo788YhmIlknNOlNA2Ev NL2sqX3NUSsnjV5KQr40YrawP9UlKq04GtwUmAWP6gR5weAziNNVvrzGInqR5fGatgMdgKFb 76rIIGRpgvx4xorA9W5pbf3GmVirmn6ZFXmZtJ+AsBOszAazsAA+v9T2Mk0MC+7vw6hjdFpo OihgLTrIesf0g8gr8xGO/VQO3kW0aSrY9YrK1Dn2SCY5xWun3cBX5yCpaz5VGEV0r8fPI1Ay RAXAD9dRRWMos+q/L22CdZW2eguKOb5GoxK7xmMzRmBZRonaZXKQqGM7t5ExjYgwMtJGJ4yZ eJAN2ApNk6ZJUQSZBFOUslWcOSA3xETdxVxrl6PqLVxyG/U1AFri5DmMcbPe8zMTsJQ9qqdj jufpTmhUkBCbrRzzxKq9W6pm9Dt3h/GArIuJra2+cU0gwWqkzl75Bo+CgLg/KjRZlSFc8JSL QkY9zQjqYA29Ve3VZ/tUhugunmGsxUAHd1KHIUSyiuA167V6AaxHXUfQ3hKb9lOnNAybSwn0 BmOhdyBONB0mOTLEzTHrO7S9G7sf3FPdgfueBPoUyMKs/Lmr6Qeki7AQ5VcKvGZg9naCxf/l mXiQDcFu1kDsSIa//zlrQ6d02n398Whoh0dvVuOAD/8hu9tTMv8PtHztwCGhRpVBNzBJmRtq kTojCR3AAomKZiW3BKAT+wWdF1Cz6bUaWaM6bKD8nRIythMx5JAVdoKiN2GDB01WvvogBewC KMphStf5YVIIFyhZrJtboS6BqwClPawS4m9BqyMP4ISPPCdkTNrGwk0PCatM53FyhBwwcnTx 7/GGSpTMZrqIfs+l2fnLwvs+bQq2jo/1QvuqWPTlnyaPU6lTCfNE98taQLeBt3VGYvY+G05B f4DbZrVo/ieOcWiChTqHXk7dwBadCVqWcqn96S6tIere2JbJY3oMNeJqZtJRmCvt/09ejvgl p1lZnJl9Q== IronPort-HdrOrdr: A9a23:7rNLOqlub87YOFMeUI53yRFk9NvpDfIH3DAbv31ZSRFFG/Fw9v re+cjzsCWf5Qr5N0tNpTntAsa9qArnhOdICOoqTNWftWvd2FdARbsKhbcKpQePJ8SUzJ8/6U 4PSclD4erLfDxHZJbBizVQy+xQu+VvKprY49s2Ek0dKj2Ct5sQlzuR1DzraHFLeA== X-Talos-CUID: 9a23:1QnkNmOigS1zOu5DV3lM8UExN9wZfXCe802PD0K8JnRPR+jA X-Talos-MUID: 9a23:XMpfsAakS/nW++BTmDjwgSxdFoRU3v6eNHIGn5o95crcDHkl X-IronPort-AV: E=Sophos;i="6.00,236,1681185600"; d="scan'208";a="112508902" From: Andrew Cooper To: Xen-devel CC: Andrew Cooper , Jan Beulich , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Wei Liu Subject: [PATCH v3 1/4] x86/spec-ctrl: Use a taint for CET without MSR_SPEC_CTRL Date: Mon, 12 Jun 2023 17:13:03 +0100 Message-ID: <20230612161306.2739572-2-andrew.cooper3@citrix.com> X-Mailer: git-send-email 2.30.2 In-Reply-To: <20230612161306.2739572-1-andrew.cooper3@citrix.com> References: <20230612161306.2739572-1-andrew.cooper3@citrix.com> MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit Reword the comment for 'S' to include an incompatbile set of features on the same core. Signed-off-by: Andrew Cooper --- CC: Jan Beulich CC: Roger Pau Monné CC: Wei Liu v3: * New --- xen/arch/x86/spec_ctrl.c | 3 +++ xen/common/kernel.c | 2 +- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/xen/arch/x86/spec_ctrl.c b/xen/arch/x86/spec_ctrl.c index cd5ea6aa52d9..05b86edf73d3 100644 --- a/xen/arch/x86/spec_ctrl.c +++ b/xen/arch/x86/spec_ctrl.c @@ -1132,7 +1132,10 @@ void __init init_speculation_mitigations(void) if ( read_cr4() & X86_CR4_CET ) { if ( !has_spec_ctrl ) + { printk(XENLOG_WARNING "?!? CET active, but no MSR_SPEC_CTRL?\n"); + add_taint(TAINT_CPU_OUT_OF_SPEC); + } else if ( opt_ibrs == -1 ) opt_ibrs = ibrs = true; diff --git a/xen/common/kernel.c b/xen/common/kernel.c index fd975ae21ebc..719b08d6c76a 100644 --- a/xen/common/kernel.c +++ b/xen/common/kernel.c @@ -373,7 +373,7 @@ unsigned int tainted; * 'H' - HVM forced emulation prefix is permitted. * 'I' - Platform is insecure (usually due to an errata on the platform). * 'M' - Machine had a machine check experience. - * 'S' - Out of spec CPU (One core has a feature incompatible with others). + * 'S' - Out of spec CPU (Incompatible features on one or more cores). * * The string is overwritten by the next call to print_taint(). */ -- 2.30.2 From xen-devel-bounces@lists.xenproject.org Mon Jun 12 16:13:33 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 16:13:33 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547360.854725 (Exim 4.92) (envelope-from ) id 1q8kAf-0002sg-Ah; Mon, 12 Jun 2023 16:13:33 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547360.854725; Mon, 12 Jun 2023 16:13:33 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8kAf-0002sR-80; Mon, 12 Jun 2023 16:13:33 +0000 Received: by outflank-mailman (input) for mailman id 547360; Mon, 12 Jun 2023 16:13:31 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8kAd-0002qf-Ns for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 16:13:31 +0000 Received: from esa6.hc3370-68.iphmx.com (esa6.hc3370-68.iphmx.com [216.71.155.175]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 107476d3-093c-11ee-8611-37d641c3527e; Mon, 12 Jun 2023 18:13:29 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 107476d3-093c-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686586408; h=from:to:cc:subject:date:message-id:mime-version: content-transfer-encoding; bh=LnylG9GKIeMaBr8coy+QDP81rdQ4PrwAB/g/UXeyp2Y=; b=BBGFGdSSV2G09e5LaBbEeQe3ahoLSNPzx5GaNk7UOaxyfyF1UkS6l7Du PZjx5ZRK+22wmxl9kPrFegBxdGUNQ7tDJ8uENzBbYYahXCUOeojGeQ22g o6ehihQ7nLYQRgMULeSlzMr3df8G1g8xRJIyLZ8Lo9++cDf9qzEy1iAWX s=; Authentication-Results: esa6.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none X-SBRS: 4.0 X-MesageID: 111816752 X-Ironport-Server: esa6.hc3370-68.iphmx.com X-Remote-IP: 162.221.156.123 X-Policy: $RELAYED IronPort-Data: A9a23:NrH9Z6kVP4xDYKL7z6XXfiPo5gz7JkRdPkR7XQ2eYbSJt1+Wr1Gzt xIWCm2Ba62LM2fweIgjPYXi9E8BuZCAyYJkTQZk/ys1ECMWpZLJC+rCIxarNUt+DCFhoGFPt JxCN4aafKjYaleG+39B55C49SEUOZmgH+a6U6icfHgqH2eIcQ954Tp7gek1n4V0ttawBgKJq LvartbWfVSowFaYCEpNg064gE0p5KyaVA8w5ARkPqgV5QWGzRH5MbpETU2PByqgKmVrNrbSq 9brlNmR4m7f9hExPdKp+p6TnpoiG+O60aCm0xK6aoD66vRwjnVaPpUTbZLwXXx/mTSR9+2d/ f0W3XCGpaXFCYWX8AgVe0Ew/yiTpsSq8pefSZS0mZT7I0Er7xIAahihZa07FdRwxwp5PY1B3 ccmORULaCqGvuSJx+qRcqpi3sU+EMa+aevzulk4pd3YJfMvQJSFSKTW/95Imjw3g6iiH96HO ZBfM2A2Kk2dPVsWYAx/5JEWxY9EglHWdTFCpU3Tjq0w+2XJlyR60aT3McqTcduPLSlQth/B/ zKfoTukWHn2MvSO5wHUyU2un9Tktj+8CK8qFrej/NdD1Qj7Kms7V0RNCArTTeOCol6zXZdTJ lIZ/gIqrLMu7wq7Q9/lRRq6rXWY+BkGVLJ4Mcc39QWMwar8+BuCCy4PSTspQMMinN87Q3otz FDhoj/yLWUx6vvPEyvbr+rK62roYkD5MFPuewc/cxog5d/Zpbg1sRWXZO4gHva0k+H6TGSYL y+xkMQuu1kCpZdVh/vhrQuc0m/ESovhFVBsuFiONo6xxkYgPdP+OdT1gbTOxawYRLt1WGVtq 5TtdyK2yOkVRa+AmyWWKAnmNOH4vq3VWNEwbLMGInXAy9hO0yT5FWyoyGsiTHqFy+5dEdMTX GfduBlK+LhYN2awYKl8buqZUpp6k/W4RYi9B6iIMLKih6SdkyfdpUlTibO4hTixwCDAb4liU XtkTSpcJSlDUvk2pNZHb+wczaUq1kgDKZD7HPjGI+Cc+ePGPha9EO5VWGZim8hltMtoVi2Jq YcAXyZLoj0DONDDjt7/q95DdA1bcSJqWfgbaaV/L4a+H+avI0l5Y9e5/F/rU9YNc3h9/gsQw kyAZw== IronPort-HdrOrdr: A9a23:a9Zk0aDzhDRE213lHelo55DYdb4zR+YMi2TDt3oddfU1SL38qy nKpp4mPHDP5wr5NEtPpTniAtjjfZq/z/5ICOAqVN/PYOCPggCVxepZnOjfKlPbehEX9oRmpN 1dm6oVMqyMMbCt5/yKnDVRELwbsaa6GLjDv5a785/0JzsaE52J6W1Ce2GmO3wzfiZqL7wjGq GR48JWzgDQAkj+PqyAdx84t/GonayzqK7b X-Talos-CUID: =?us-ascii?q?9a23=3AQ/Cm4mmGBijFY8KI3mFLLj3mJtXXOUbj3VLWJXW?= =?us-ascii?q?9MGBWT+W/cRyeoKJ5r8U7zg=3D=3D?= X-Talos-MUID: =?us-ascii?q?9a23=3AJv4RCA+/meLzzHGxctkdl6qQf9ZG2PWVN0IUqr4?= =?us-ascii?q?tp47UGBRyMSyXpR3iFw=3D=3D?= X-IronPort-AV: E=Sophos;i="6.00,236,1681185600"; d="scan'208";a="111816752" From: Andrew Cooper To: Xen-devel CC: Andrew Cooper , Jan Beulich , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Wei Liu Subject: [PATCH v3 0/4] x86: RSBA and RRSBA handling Date: Mon, 12 Jun 2023 17:13:02 +0100 Message-ID: <20230612161306.2739572-1-andrew.cooper3@citrix.com> X-Mailer: git-send-email 2.30.2 MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit This series deals with the hanlding of the RSBA and RRSBA bits across all parts and all mistakes encountered in various microcode versions. There are only minor changes from v2. See patches for details. Andrew Cooper (4): x86/spec-ctrl: Use a taint for CET without MSR_SPEC_CTRL x86/spec-ctrl: Rename retpoline_safe() to retpoline_calculations() x86/spec-ctrl: Fix up the RSBA/RRSBA bits as appropriate x86/cpu-policy: Derive RSBA/RRSBA for guest policies xen/arch/x86/cpu-policy.c | 39 ++++++ xen/arch/x86/include/asm/cpufeature.h | 1 + xen/arch/x86/spec_ctrl.c | 142 +++++++++++++++++--- xen/common/kernel.c | 2 +- xen/include/public/arch-x86/cpufeatureset.h | 4 +- xen/tools/gen-cpuid.py | 5 +- 6 files changed, 170 insertions(+), 23 deletions(-) -- 2.30.2 From xen-devel-bounces@lists.xenproject.org Mon Jun 12 16:13:34 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 16:13:34 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547361.854735 (Exim 4.92) (envelope-from ) id 1q8kAg-00039q-Mo; Mon, 12 Jun 2023 16:13:34 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547361.854735; Mon, 12 Jun 2023 16:13:34 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8kAg-00039Z-JX; Mon, 12 Jun 2023 16:13:34 +0000 Received: by outflank-mailman (input) for mailman id 547361; Mon, 12 Jun 2023 16:13:33 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8kAf-0002qf-MU for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 16:13:33 +0000 Received: from esa6.hc3370-68.iphmx.com (esa6.hc3370-68.iphmx.com [216.71.155.175]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 12d40cea-093c-11ee-8611-37d641c3527e; Mon, 12 Jun 2023 18:13:31 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 12d40cea-093c-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686586411; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=22iLtmujHnwRaGN/uFzhwyYgfc8Jy+kOfUCkde5XnWc=; b=VVYPXskEYZtLZPIGYQmFg7iCOnE2xp22mxSXDb8yq1j4ezUUmVVsJWLm CeJxdR+4OoQYjX+Hw5ntE7Qkl+Xl5Rtni1Cmpk2bZwfnLI3x4ZONeTDME AiUtPjgmbCAwMUjmEEtTJU0JwSVhLTI33UKVX1rs89KP2fETCM1cp/bwE 0=; Authentication-Results: esa6.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none X-SBRS: 4.0 X-MesageID: 111816753 X-Ironport-Server: esa6.hc3370-68.iphmx.com X-Remote-IP: 162.221.156.123 X-Policy: $RELAYED IronPort-Data: A9a23:knENfqI0j1GTY613FE+Rq5UlxSXFcZb7ZxGr2PjKsXjdYENSg2NWx 2MZWz2FM/+LNjH2LdEiPIu2o00P75bVndZmS1BlqX01Q3x08seUXt7xwmUcnc+xBpaaEB84t ZV2hv3odp1coqr0/0/1WlTZhSAgk/rOHvykU7Ss1hlZHWdMUD0mhQ9oh9k3i4tphcnRKw6Ws Jb5rta31GWNglaYCUpKrfrbwP9TlK6q4mhA4AVkPaojUGL2zBH5MrpOfcldEFOgKmVkNrbSb /rOyri/4lTY838FYj9yuu+mGqGiaue60Tmm0hK6aYD76vRxjnVaPpIAHOgdcS9qZwChxLid/ jnvWauYEm/FNoWU8AgUvoIx/ytWZcWq85efSZSzXFD6I+QrvBIAzt03ZHzaM7H09c5MP3Br8 /oiLQkLURfbrdr1zuq6V9Vj05FLwMnDZOvzu1llxDDdS/0nXYrCU+PB4towMDUY354UW6yEP oxANGQpNU6bC/FMEg5/5JYWteGknHTgNRZfr0qYv/Ef6GnP1g1hlrPqNbI5f/TTHJwFxxjH+ zmuE2LRCRQBN8ahmCK8ryy3lr+UoCP0Xrg/PejtnhJtqALKnTFCYPEMbnOrrP/8hkOgVtZ3L 00P5jFovaU07FasTNT2Q1u/unHsljw2VsdUEuY6wBqQ0aeS6AGcbkAbShZRZdpgs9U5LQHGz XfQwYmvX2Y29uTIFzTErOz8QS6O1TY9FlETQCkCdw485ebk+KsLzRyXT8tfH/vg5jHqIg0c0 wxmvQBn2eVN155QjPTmlbzUq2ny/8aUF2bZ8i2SBzv4tV0hOeZJcqTysTDmAeB8wJF1p7Vrl FwNgICg4e8HFvlhfwTdEbxWTNlFCxtoWQAwYGKD/LF7rVxBA1b5IehtDMhWfS+FyPosdz7ze 1P0sghM/pJVN3bCRfYpM9zsU5R2lfm4SYqNuhXogj1mOMEZSeN61Hs2OR74M57FzSDAbp3Ty b/EKJ3xXB72+IxszSasRvd17FPY7nlW+I8nfriil07P+ePHNBaopUItbAPmghYRsPnV/204M r93a6O39vmoeLeuMnCKoNJJfAxiwLpSLcmelvG7v9WremJOcFzNwdeIqV/9U+SJR5hoq9o= IronPort-HdrOrdr: A9a23:QW7DhqvkDfa/Lhb9MyY5y8oo7skDstV00zEX/kB9WHVpm6yj+v xG/c5rsCMc7Qx6ZJhOo7+90cW7L080lqQFg7X5X43DYOCOggLBQL2KhbGI/9SKIVycygcy78 Zdm6gVMqyLMbB55/yKnTVRxbwbsaW6GKPDv5ag8590JzsaD52Jd21Ce36m+ksdfnggObMJUK Cyy+BgvDSadXEefq2AdwI4t7iqnaysqHr+CyR2fiIa1A== X-Talos-CUID: 9a23:71Q+c27PrZaQ3HTzUtssz3AFP8YjSHjkykjXe2WASmgxSaCpRgrF X-Talos-MUID: =?us-ascii?q?9a23=3AJufGuQ5S7Mp12gGVhP1+iO72xoxj5r+tEn5ciax?= =?us-ascii?q?b5dKUZXdNOzibthmeF9o=3D?= X-IronPort-AV: E=Sophos;i="6.00,236,1681185600"; d="scan'208";a="111816753" From: Andrew Cooper To: Xen-devel CC: Andrew Cooper , Jan Beulich , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Wei Liu Subject: [PATCH v3 3/4] x86/spec-ctrl: Fix up the RSBA/RRSBA bits as appropriate Date: Mon, 12 Jun 2023 17:13:05 +0100 Message-ID: <20230612161306.2739572-4-andrew.cooper3@citrix.com> X-Mailer: git-send-email 2.30.2 In-Reply-To: <20230612161306.2739572-1-andrew.cooper3@citrix.com> References: <20230612161306.2739572-1-andrew.cooper3@citrix.com> MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit In order to level a VM safely for migration, the toolstack needs to know the RSBA/RRSBA properties of the CPU, whether or not they happen to be enumerated. See the code comment for details. Signed-off-by: Andrew Cooper --- CC: Jan Beulich CC: Roger Pau Monné CC: Wei Liu v3: * Add a taint for bad EIBRS vs RSBA/RRSBA. * Minor comment improvements. v2: * Rewrite almost from scratch. --- xen/arch/x86/include/asm/cpufeature.h | 1 + xen/arch/x86/spec_ctrl.c | 100 ++++++++++++++++++++++++-- 2 files changed, 96 insertions(+), 5 deletions(-) diff --git a/xen/arch/x86/include/asm/cpufeature.h b/xen/arch/x86/include/asm/cpufeature.h index ace31e3b1f1a..e2cb8f3cc728 100644 --- a/xen/arch/x86/include/asm/cpufeature.h +++ b/xen/arch/x86/include/asm/cpufeature.h @@ -193,6 +193,7 @@ static inline bool boot_cpu_has(unsigned int feat) #define cpu_has_tsx_ctrl boot_cpu_has(X86_FEATURE_TSX_CTRL) #define cpu_has_taa_no boot_cpu_has(X86_FEATURE_TAA_NO) #define cpu_has_fb_clear boot_cpu_has(X86_FEATURE_FB_CLEAR) +#define cpu_has_rrsba boot_cpu_has(X86_FEATURE_RRSBA) /* Synthesized. */ #define cpu_has_arch_perfmon boot_cpu_has(X86_FEATURE_ARCH_PERFMON) diff --git a/xen/arch/x86/spec_ctrl.c b/xen/arch/x86/spec_ctrl.c index 3892ce4d20ba..fb1b59b4d7e3 100644 --- a/xen/arch/x86/spec_ctrl.c +++ b/xen/arch/x86/spec_ctrl.c @@ -579,7 +579,10 @@ static bool __init check_smt_enabled(void) return false; } -/* Calculate whether Retpoline is known-safe on this CPU. */ +/* + * Calculate whether Retpoline is known-safe on this CPU. Fix up the + * RSBA/RRSBA bits as necessary. + */ static bool __init retpoline_calculations(void) { unsigned int ucode_rev = this_cpu(cpu_sig).rev; @@ -593,15 +596,93 @@ static bool __init retpoline_calculations(void) return false; /* - * RSBA may be set by a hypervisor to indicate that we may move to a - * processor which isn't retpoline-safe. + * The meaning of the RSBA and RRSBA bits have evolved over time. The + * agreed upon meaning at the time of writing (May 2023) is thus: + * + * - RSBA (RSB Alternative) means that an RSB may fall back to an + * alternative predictor on underflow. Skylake uarch and later all have + * this property. Broadwell too, when running microcode versions prior + * to Jan 2018. + * + * - All eIBRS-capable processors suffer RSBA, but eIBRS also introduces + * tagging of predictions with the mode in which they were learned. So + * when eIBRS is active, RSBA becomes RRSBA (Restricted RSBA). + * + * - CPUs are not expected to enumerate both RSBA and RRSBA. + * + * Some parts (Broadwell) are not expected to ever enumerate this + * behaviour directly. Other parts have differing enumeration with + * microcode version. Fix up Xen's idea, so we can advertise them safely + * to guests, and so toolstacks can level a VM safety for migration. + * + * The following states exist: + * + * | | RSBA | EIBRS | RRSBA | Notes | Action | + * |---+------+-------+-------+--------------------+---------------| + * | 1 | 0 | 0 | 0 | OK (older parts) | Maybe +RSBA | + * | 2 | 0 | 0 | 1 | Broken | +RSBA, -RRSBA | + * | 3 | 0 | 1 | 0 | OK (pre-Aug ucode) | +RRSBA | + * | 4 | 0 | 1 | 1 | OK | | + * | 5 | 1 | 0 | 0 | OK | | + * | 6 | 1 | 0 | 1 | Broken | -RRSBA | + * | 7 | 1 | 1 | 0 | Broken | -RSBA, +RRSBA | + * | 8 | 1 | 1 | 1 | Broken | -RSBA | + * + * However, we don't need perfect adherence to the spec. We only need + * RSBA || RRSBA to indicate "alternative predictors potentially in use". + * Rows 1 & 3 are fixed up by later logic, as they're known configurations + * which exist in the world. * + * Complain loudly at the broken cases. They're safe for Xen to use (so we + * don't attempt to correct), and may or may not exist in reality, but if + * we ever encoutner them in practice, something is wrong and needs + * further investigation. + */ + if ( cpu_has_eibrs ? cpu_has_rsba /* Rows 7, 8 */ + : cpu_has_rrsba /* Rows 2, 6 */ ) + { + printk(XENLOG_ERR + "FIRMWARE BUG: CPU %02x-%02x-%02x, ucode 0x%08x: RSBA %u, EIBRS %u, RRSBA %u\n", + boot_cpu_data.x86, boot_cpu_data.x86_model, + boot_cpu_data.x86_mask, ucode_rev, + cpu_has_rsba, cpu_has_eibrs, cpu_has_rrsba); + add_taint(TAINT_CPU_OUT_OF_SPEC); + } + + /* * Processors offering Enhanced IBRS are not guarenteed to be * repoline-safe. */ - if ( cpu_has_rsba || cpu_has_eibrs ) + if ( cpu_has_eibrs ) + { + /* + * Prior to the August 2023 microcode, many eIBRS-capable parts did + * not enumerate RRSBA. + */ + if ( !cpu_has_rrsba ) + setup_force_cpu_cap(X86_FEATURE_RRSBA); + + return false; + } + + /* + * RSBA is explicitly enumerated in some cases, but may also be set by a + * hypervisor to indicate that we may move to a processor which isn't + * retpoline-safe. + */ + if ( cpu_has_rsba ) return false; + /* + * At this point, we've filtered all the legal RSBA || RRSBA cases (or the + * known non-ideal cases). If ARCH_CAPS is visible, trust the absence of + * RSBA || RRSBA. There's no known microcode which advertises ARCH_CAPS + * without RSBA or EIBRS, and if we're virtualised we can't rely the model + * check anyway. + */ + if ( cpu_has_arch_caps ) + return true; + switch ( boot_cpu_data.x86_model ) { case 0x17: /* Penryn */ @@ -689,6 +770,15 @@ static bool __init retpoline_calculations(void) break; } + if ( !safe ) + { + /* + * Note: the eIBRS-capable parts are filtered out earlier, so the + * remainder here are the ones which suffer RSBA behaviour. + */ + setup_force_cpu_cap(X86_FEATURE_RSBA); + } + return safe; } @@ -1151,7 +1241,7 @@ void __init init_speculation_mitigations(void) thunk = THUNK_JMP; } - /* Determine if retpoline is safe on this CPU. */ + /* Determine if retpoline is safe on this CPU. Fix up RSBA/RRSBA enumerations. */ retpoline_safe = retpoline_calculations(); /* -- 2.30.2 From xen-devel-bounces@lists.xenproject.org Mon Jun 12 16:32:28 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 16:32:28 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547384.854745 (Exim 4.92) (envelope-from ) id 1q8kSj-0006lq-9N; Mon, 12 Jun 2023 16:32:13 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547384.854745; Mon, 12 Jun 2023 16:32:13 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8kSj-0006lj-5P; Mon, 12 Jun 2023 16:32:13 +0000 Received: by outflank-mailman (input) for mailman id 547384; Mon, 12 Jun 2023 16:32:12 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8kSi-0006ld-4E for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 16:32:12 +0000 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by se1-gles-sth1.inumbo.com (Halon) with ESMTP id ad0d0282-093e-11ee-b232-6b7b168915f2; Mon, 12 Jun 2023 18:32:09 +0200 (CEST) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id A17621FB; Mon, 12 Jun 2023 09:32:53 -0700 (PDT) Received: from [192.168.4.21] (unknown [172.31.20.19]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 61BB23F5A1; Mon, 12 Jun 2023 09:32:04 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: ad0d0282-093e-11ee-b232-6b7b168915f2 Message-ID: <4c01e43a-0275-04a0-ad9d-ee2f2bf24e1c@arm.com> Date: Mon, 12 Jun 2023 17:31:51 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.10.0 Subject: Re: [PATCH v3 1/4] limits.h: add UCHAR_MAX, SCHAR_MAX, and SCHAR_MIN To: Demi Marie Obenour , Hans de Goede , Mauro Carvalho Chehab , Sakari Ailus , Greg Kroah-Hartman , Juergen Gross , Stefano Stabellini , Oleksandr Tyshchenko , Lee Jones , Andy Lutomirski , Thomas Gleixner , Petr Mladek , Steven Rostedt , Sergey Senozhatsky , Andy Shevchenko , Rasmus Villemoes Cc: linux-media@vger.kernel.org, linux-staging@lists.linux.dev, linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org References: <20230610204044.3653-1-demi@invisiblethingslab.com> <20230610204044.3653-2-demi@invisiblethingslab.com> Content-Language: en-US From: Vincenzo Frascino In-Reply-To: <20230610204044.3653-2-demi@invisiblethingslab.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit Hi Demi, On 6/10/23 21:40, Demi Marie Obenour wrote: > Some drivers already defined these, and they will be used by sscanf() > for overflow checks later. Also add SSIZE_MIN to limits.h, which will > also be needed later. > > Signed-off-by: Demi Marie Obenour > --- > .../media/atomisp/pci/hive_isp_css_include/platform_support.h | 1 - > include/linux/limits.h | 1 + > include/linux/mfd/wl1273-core.h | 3 --- > include/vdso/limits.h | 3 +++ > 4 files changed, 4 insertions(+), 4 deletions(-) > ... > diff --git a/include/vdso/limits.h b/include/vdso/limits.h > index 0197888ad0e00b2f853d3f25ffa764f61cca7385..0cad0a2490e5efc194d874025eb3e3b846a5c7b4 100644 > --- a/include/vdso/limits.h > +++ b/include/vdso/limits.h > @@ -2,6 +2,9 @@ > #ifndef __VDSO_LIMITS_H > #define __VDSO_LIMITS_H > > +#define UCHAR_MAX ((unsigned char)~0U) > +#define SCHAR_MAX ((signed char)(UCHAR_MAX >> 1)) > +#define SCHAR_MIN ((signed char)(-SCHAR_MAX - 1)) Are you planning to use those definitions in the vDSO library? If not can you please define them in linux/limits.h, the vdso headers contain only what is necessary for the vDSO library. Thanks! > #define USHRT_MAX ((unsigned short)~0U) > #define SHRT_MAX ((short)(USHRT_MAX >> 1)) > #define SHRT_MIN ((short)(-SHRT_MAX - 1)) -- Regards, Vincenzo From xen-devel-bounces@lists.xenproject.org Mon Jun 12 16:50:59 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 16:50:59 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547390.854754 (Exim 4.92) (envelope-from ) id 1q8kkd-0000rn-O2; Mon, 12 Jun 2023 16:50:43 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547390.854754; Mon, 12 Jun 2023 16:50:43 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8kkd-0000rg-LB; Mon, 12 Jun 2023 16:50:43 +0000 Received: by outflank-mailman (input) for mailman id 547390; Mon, 12 Jun 2023 16:50:42 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8kkc-0000rW-Gh; Mon, 12 Jun 2023 16:50:42 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8kkc-0005Eq-E4; Mon, 12 Jun 2023 16:50:42 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8kkb-00067Y-VX; Mon, 12 Jun 2023 16:50:42 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q8kkb-0002lp-V3; Mon, 12 Jun 2023 16:50:41 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=NrpOcvMgfUgOV8qz4jmuv6ykj/JlMg8KclPf1+md1y0=; b=zhsgc02WroRiHgMATaruiUVcL0 CMX+WVBOrxDVTTJj0ipSVZs+VvKWAQD1z/YwMKnquUmtj2mJfC7kf/kqGpv5bg2Q0rnCC+gOuc4KX AeXpbq7XK44WnmUFo68FVYtIqQVLuDxr7WN6jVIuaaadmVzs88qMl6HqXtXfMzeyebNY=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [qemu-mainline test] 181391: regressions - FAIL X-Osstest-Failures: qemu-mainline:build-arm64-xsm:xen-build:fail:regression qemu-mainline:build-arm64:xen-build:fail:regression qemu-mainline:build-amd64:xen-build:fail:regression qemu-mainline:build-i386:xen-build:fail:regression qemu-mainline:build-amd64-xsm:xen-build:fail:regression qemu-mainline:build-i386-xsm:xen-build:fail:regression qemu-mainline:build-armhf:xen-build:fail:regression qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-i386:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:build-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:build-arm64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:build-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:build-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pygrub:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking X-Osstest-Versions-This: qemuu=fdd0df5340a8ebc8de88078387ebc85c5af7b40f X-Osstest-Versions-That: qemuu=6972ef1440a9d685482d78672620a7482f2bd09a From: osstest service owner Date: Mon, 12 Jun 2023 16:50:41 +0000 flight 181391 qemu-mainline real [real] http://logs.test-lab.xenproject.org/osstest/logs/181391/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-arm64-xsm 6 xen-build fail REGR. vs. 180691 build-arm64 6 xen-build fail REGR. vs. 180691 build-amd64 6 xen-build fail REGR. vs. 180691 build-i386 6 xen-build fail REGR. vs. 180691 build-amd64-xsm 6 xen-build fail REGR. vs. 180691 build-i386-xsm 6 xen-build fail REGR. vs. 180691 build-armhf 6 xen-build fail REGR. vs. 180691 Tests which did not succeed, but are not blocking: test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-xl-xsm 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-raw 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-xsm 1 build-check(1) blocked n/a test-arm64-arm64-xl 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit1 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit2 1 build-check(1) blocked n/a test-arm64-arm64-xl-thunderx 1 build-check(1) blocked n/a test-arm64-arm64-xl-vhd 1 build-check(1) blocked n/a test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a test-armhf-armhf-libvirt 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-qcow2 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-raw 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a test-armhf-armhf-xl-arndale 1 build-check(1) blocked n/a test-armhf-armhf-xl-multivcpu 1 build-check(1) blocked n/a test-armhf-armhf-xl-rtds 1 build-check(1) blocked n/a test-armhf-armhf-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-amd 1 build-check(1) blocked n/a test-amd64-i386-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-raw 1 build-check(1) blocked n/a test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-i386 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-amd64 1 build-check(1) blocked n/a test-amd64-coresched-i386-xl 1 build-check(1) blocked n/a test-amd64-coresched-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-xsm 1 build-check(1) blocked n/a build-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-shadow 1 build-check(1) blocked n/a test-amd64-amd64-xl-rtds 1 build-check(1) blocked n/a build-arm64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a build-armhf-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a build-i386-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-amd 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-pair 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-qcow2 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-vhd 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvshim 1 build-check(1) blocked n/a test-amd64-amd64-pair 1 build-check(1) blocked n/a test-amd64-amd64-pygrub 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-intel 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd11-amd64 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd12-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-multivcpu 1 build-check(1) blocked n/a test-amd64-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit1 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit1 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit2 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-intel 1 build-check(1) blocked n/a test-amd64-i386-xl 1 build-check(1) blocked n/a test-amd64-i386-xl-pvshim 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a version targeted for testing: qemuu fdd0df5340a8ebc8de88078387ebc85c5af7b40f baseline version: qemuu 6972ef1440a9d685482d78672620a7482f2bd09a Last test of basis 180691 2023-05-17 10:45:22 Z 26 days Failing since 180699 2023-05-18 07:21:24 Z 25 days 91 attempts Testing same since 181372 2023-06-10 21:38:57 Z 1 days 12 attempts ------------------------------------------------------------ People who touched revisions under test: Afonso Bordado Akihiko Odaki Akihiro Suda Alex Bennée Alex Williamson Alexander Bulekov Alexander Graf Alexander Ivanov Alistair Francis Anastasia Belova Andrew Jeffery Ani Sinha Ani Sinha Anthony PERARD Anton Johansson BALATON Zoltan Bastian Koppelmann Bernhard Beschow Bin Meng Brian Cain Brice Goglin Camilla Conte Carlos Santos Christian Schoenebeck Chuck Zmudzinski Cindy Lu Clément Chigot Cornelia Huck Cédric Le Goater Cédric Le Goater Daniel Henrique Barboza Daniel P. Berrangé Daniil Kovalev David Hildenbrand David Woodhouse Emanuele Giuseppe Esposito Enze Li Eric Auger Eric Blake Eric DeVolder Erico Nunes Eugenio Pérez Fabiano Rosas Fan Ni Fiona Ebner Francesco Cagnin Francisco Iglesias Frederic Barrat Gavin Shan Gregory Price Gregory Price Hanna Czenczek Hao Zeng Hawkins Jiawei Igor Mammedov Ilya Leoshkevich Ira Weiny Jagannathan Raman Jason Wang Jean-Louis Dupond Jean-Philippe Brucker Jiaxun Yang John Snow Jonathan Cameron Juan Quintela Kevin Wolf Laurent Vivier Lei Yang Leonardo Bras Maksim Davydov Marc-André Lureau Marcin Juszkiewicz Marco Liebel Mark Cave-Ayland Markus Armbruster Matheus Tavares Bernardino Mattias Nissler Mauro Matteo Cascella Max Fritz Michael S. Tsirkin Michael Tokarev Michal Privoznik Milan Zamazal Mostafa Saleh Nicholas Piggin Nicolas Saenz Julienne Niek Linnenbank Palmer Dabbelt Paolo Bonzini Peter Maydell Peter Xu Philippe Mathieu-Daudé qianfan Zhao Raghu H Rene Engel Richard Henderson Richard Purdie Ricky Zhou Ryan Wendland Sebastian Ott Sergio Lopez Sid Manning Song Gao Stefan Hajnoczi Stefano Garzarella Steve Sistare Taylor Simpson Thomas Huth Thomas Weißschuh timothee.cocault@gmail.com Timothée Cocault Tommy Wu Vikram Garhwal Viktor Prutyanov Vitaly Cheptsov Vivek Kasireddy Vladimir Sementsov-Ogievskiy Volker Rümelin Xinyu Li Zeng Hao Zhenyu Zhang Zhenzhong Duan Zhuojia Shen jobs: build-amd64-xsm fail build-arm64-xsm fail build-i386-xsm fail build-amd64 fail build-arm64 fail build-armhf fail build-i386 fail build-amd64-libvirt blocked build-arm64-libvirt blocked build-armhf-libvirt blocked build-i386-libvirt blocked build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl blocked test-amd64-coresched-amd64-xl blocked test-arm64-arm64-xl blocked test-armhf-armhf-xl blocked test-amd64-i386-xl blocked test-amd64-coresched-i386-xl blocked test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-i386-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-amd64-libvirt-xsm blocked test-arm64-arm64-libvirt-xsm blocked test-amd64-i386-libvirt-xsm blocked test-amd64-amd64-xl-xsm blocked test-arm64-arm64-xl-xsm blocked test-amd64-i386-xl-xsm blocked test-amd64-amd64-qemuu-nested-amd blocked test-amd64-amd64-xl-pvhv2-amd blocked test-amd64-i386-qemuu-rhel6hvm-amd blocked test-amd64-amd64-dom0pvh-xl-amd blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-freebsd10-amd64 blocked test-amd64-amd64-qemuu-freebsd11-amd64 blocked test-amd64-amd64-qemuu-freebsd12-amd64 blocked test-amd64-amd64-xl-qemuu-ovmf-amd64 blocked test-amd64-i386-xl-qemuu-ovmf-amd64 blocked test-amd64-amd64-xl-qemuu-win7-amd64 blocked test-amd64-i386-xl-qemuu-win7-amd64 blocked test-amd64-amd64-xl-qemuu-ws16-amd64 blocked test-amd64-i386-xl-qemuu-ws16-amd64 blocked test-armhf-armhf-xl-arndale blocked test-amd64-amd64-xl-credit1 blocked test-arm64-arm64-xl-credit1 blocked test-armhf-armhf-xl-credit1 blocked test-amd64-amd64-xl-credit2 blocked test-arm64-arm64-xl-credit2 blocked test-armhf-armhf-xl-credit2 blocked test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-freebsd10-i386 blocked test-amd64-amd64-qemuu-nested-intel blocked test-amd64-amd64-xl-pvhv2-intel blocked test-amd64-i386-qemuu-rhel6hvm-intel blocked test-amd64-amd64-dom0pvh-xl-intel blocked test-amd64-amd64-libvirt blocked test-armhf-armhf-libvirt blocked test-amd64-i386-libvirt blocked test-amd64-amd64-xl-multivcpu blocked test-armhf-armhf-xl-multivcpu blocked test-amd64-amd64-pair blocked test-amd64-i386-pair blocked test-amd64-amd64-libvirt-pair blocked test-amd64-i386-libvirt-pair blocked test-amd64-amd64-xl-pvshim blocked test-amd64-i386-xl-pvshim blocked test-amd64-amd64-pygrub blocked test-armhf-armhf-libvirt-qcow2 blocked test-amd64-amd64-xl-qcow2 blocked test-arm64-arm64-libvirt-raw blocked test-armhf-armhf-libvirt-raw blocked test-amd64-i386-libvirt-raw blocked test-amd64-amd64-xl-rtds blocked test-armhf-armhf-xl-rtds blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-amd64-xl-shadow blocked test-amd64-i386-xl-shadow blocked test-arm64-arm64-xl-thunderx blocked test-amd64-amd64-libvirt-vhd blocked test-arm64-arm64-xl-vhd blocked test-armhf-armhf-xl-vhd blocked test-amd64-i386-xl-vhd blocked ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 17052 lines long.) From xen-devel-bounces@lists.xenproject.org Mon Jun 12 17:31:50 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 17:31:50 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547399.854766 (Exim 4.92) (envelope-from ) id 1q8lOB-0005Q0-Vn; Mon, 12 Jun 2023 17:31:35 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547399.854766; Mon, 12 Jun 2023 17:31:35 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8lOB-0005Pt-Qq; Mon, 12 Jun 2023 17:31:35 +0000 Received: by outflank-mailman (input) for mailman id 547399; Mon, 12 Jun 2023 17:31:34 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8lOA-0005Pk-8M for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 17:31:34 +0000 Received: from esa6.hc3370-68.iphmx.com (esa6.hc3370-68.iphmx.com [216.71.155.175]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id f7d56778-0946-11ee-b232-6b7b168915f2; Mon, 12 Jun 2023 19:31:32 +0200 (CEST) Received: from mail-bn8nam12lp2171.outbound.protection.outlook.com (HELO NAM12-BN8-obe.outbound.protection.outlook.com) ([104.47.55.171]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 12 Jun 2023 13:31:22 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by BY5PR03MB5268.namprd03.prod.outlook.com (2603:10b6:a03:219::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.46; Mon, 12 Jun 2023 17:31:20 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606%4]) with mapi id 15.20.6455.030; Mon, 12 Jun 2023 17:31:19 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: f7d56778-0946-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686591092; h=message-id:date:from:subject:to:cc:references: in-reply-to:content-transfer-encoding:mime-version; bh=QnV3GNNVwDt2pCBuJIBGk4MLavgKO6NBMhBbVzbsKUU=; b=JuSSEKNF7vgWPYyfzauzPivLNfGH6twlOwKZu6fAPZ2wgAkqrtEVbaSG wFtNSgA0qAfMYlZqPDIJO6oOUUBBgrLaVm9n6uXQOPXWVblq+rTikS0hu vC+xFkMSKKsBIpmj/Cn/YJ72fqHnhTT0674MytsxsvtUDYz2UeVkHgd/+ g=; X-IronPort-RemoteIP: 104.47.55.171 X-IronPort-MID: 111826059 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:8rbh9a0I8NzqsUWX1PbD5RNwkn2cJEfYwER7XKvMYLTBsI5bp2cEz mdLXT+Cb66LYGb1f40gPt7jo04AuMDQz9FmG1BrpC1hF35El5HIVI+TRqvS04F+DeWYFR46s J9OAjXkBJppJpMJjk71atANlVEliefTAOK6ULWeUsxIbVcMYD87jh5+kPIOjIdtgNyoayuAo tq3qMDEULOf82cc3lk8teTb8HuDgNyo4GlD5gJnP6gR1LPjvyJ94Kw3dPnZw0TQGuG4LsbiL 87fwbew+H/u/htFIrtJRZ6iLyXm6paLVeS/oiI+t5qK23CulQRrukoPD9IOaF8/ttm8t4sZJ OOhF3CHYVxB0qXkwIzxWvTDes10FfUuFLTveRBTvSEPpqFvnrSFL/hGVSkL0YMkFulfJ2oVy qwkMW80TyuBv+evw+KCaeN+v5F2RCXrFNt3VnBI6xj8VKxja7aTBqLA6JlfwSs6gd1IEbDGf c0FZDFzbRPGJRpSJlMQD5F4l+Ct7pX9W2QA9BTJ+uxqvi6Kk1UZPLvFabI5fvSjQ8lPk1nej WXB52njWTkRNcCFyCrD+XWp7gPKtXqiAdJISuXlp5aGhnWW+nVKM0c7DmeEsMaXo3ehWN9fF 0sbr39GQa8asRbDosPGdx+yrWOAvxUcc8FNCOB84waIooLd5wubD24IVDkHdtUisMI0QhQh0 liUk5XiAjkHmKKRYWKQ8PGTtzzaETgYKyoOaDEJSSMB4sL/u8cjgxTXVNFhHaWpyNrvFlnNL yuiqSE/g/AZi54N3qDip1Tf2Wvz/97OUxI/4RjRUiS99ARlaYW5Zouur1/G8fJHK4XfRV6E1 JQZp/WjACk1JcnlvESwrC8lQ9lFO97t3OXgvGNS IronPort-HdrOrdr: A9a23:7mM40a4oZ3MHkUpPKwPXwMnXdLJyesId70hD6qkXc3Fom62j+/ xG+c5w6faaslcssR0b6LW90YO7MBThHOdOkO0s1NSZPDUO2lHHEGgK1+KL/9SHIVycygc379 YDT0ERMrLN5AhB5vrH3A== X-Talos-CUID: 9a23:7yweVm6i7o6yrrxdjdss0kVPJZAZayLk7UzSG0qhCjZQa7eHcArF X-Talos-MUID: =?us-ascii?q?9a23=3Av0b8Vw3It0IDOGokkYqVb339gTUj5pi3UXtXvM4?= =?us-ascii?q?6hNi7GwVJJDSQjAiwTdpy?= X-IronPort-AV: E=Sophos;i="6.00,236,1681185600"; d="scan'208";a="111826059" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=E6L2OYD0mK4vQWHgekvT2tRgYlx6YHz6V71qk2iLWZW9+43VCwRbbooJSXfC17HCh0USvZkY/5qWquS6UY4xaEaNVsu9Phke4UUVRQ7SUvSDYPvDZoLgj9BpYWxleKgMDwFVehpO5RcWBEekgkojj3LAGjgl30AWEXMsP6y92BVh4PikFxEkXXMQm57U9EcE/e15J/uzgavi2+JVTM8YGiWwUYqs8nuZU6VCnjLYljfcB84a5F3xVJbr/GpxcqSYHTMDUGmxwJeqIHW83amlfJ6No9o34J2rQuGReeh67kgsmyocB7f+08xw874N6Otfs92WhgHAcnQeNWCS2S9cPg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=TS8ynNx8FLzja69ZFZyk0fGzx6gKqj7dS1MuKlAK+Ns=; b=Ur6zXII2v6B6Tb9f8HA/VaYC2Lc5+jpIU0r/lGRa8MINcy+xkoP0KxXdclKKnaeitpBmPQ7SdwdnSY9VKz/auhj0xfDkza13YEXqVgSWHOAIymeUe+TKWbHO533xemCSpFGie2wamRkRcI5R9HQXh0UsPl8E6XmimfrxtbIZRvg+Q4lFFi/t2eMaxfLrYUbz5WCt0vF+tQe5UZlVjDVvsWIJ+0XAnOLGyDUmWy1AM5oMghM1mUWiCQagkzqvheTEz9IGlgUwCqWB4Gu7KQXj1G2Z27RhZJJ19gZdAhQLVp4hIOwItrzWFUrAeDlp/hpZ32Yo2cm/gkT2id7KupX/tA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=TS8ynNx8FLzja69ZFZyk0fGzx6gKqj7dS1MuKlAK+Ns=; b=S9bbjSEFIlbrO7mKV0IYj11FagRFKjL2ihnkR57UbZAQ4eEaAMYosDfCVf5bUust7UGOVilJXZFB7FQ9ejB56c1OJ4kEdi15GMANTCpCMnWSwo7RYNlhniOxWOZ6vHMTn1mVdZCOPp2wKZui8OmAjCXz6ukVGgBe5JHaj+/Tsko= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: Date: Mon, 12 Jun 2023 18:31:13 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 From: Andrew Cooper Subject: Re: [PATCH v2 1/4] x86/microcode: Remove Intel's family check on early_microcode_init() Content-Language: en-GB To: Jan Beulich , Alejandro Vallejo Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , Xen-devel References: <20230605170817.9913-1-alejandro.vallejo@cloud.com> <20230605170817.9913-2-alejandro.vallejo@cloud.com> <711f2a44-7e2f-3e79-dd04-34a049210915@suse.com> In-Reply-To: <711f2a44-7e2f-3e79-dd04-34a049210915@suse.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO2P265CA0471.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:a2::27) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|BY5PR03MB5268:EE_ X-MS-Office365-Filtering-Correlation-Id: 259e6cd7-a057-44b9-7f0f-08db6b6ad54b X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: dHQngfpQSw4DmHS7NrlERQNq0dgvUdzAiDQ8c6TXcpD/QkP0TkvwoxqOjDWeDKd84gCsQ7H1wAO5dgqUTjD5C13gJskWjzeS26XBmg7GV7a++Epuvtw18NO6Hr+rZ4coUry7a4yZtJoTDOwv3FFH3vtv6YhbCoN6qNFsz/AzEiHqAWICl4eIdYbD3nkzu+XnkWMQQzYtJkzx7x3MNEzwfk4XNKPTb+cNC4y+EWO69LYKJdZndTM/cFOWtQJsyqnV2if7g5m4Gs15RzX/XgVYfnqmkSY/X/J4cJTRDohUln9Q+jZrsKP2xID1Z9uu2XvcqCrFpOkphAnv4SnWGa3gCSgID3f75fRI7uHW2BP7dL4ay8Ug5yZ8EU16l09m2HA8wQlYWLyUOufUMwHDXzJ2l8u2RlKR/Cfg08NUNk/WDetBPwobKvN981Q3MCUKzXODY46jAPGRGxKp6TSsWnrYG9GZjkQ2kOnDiSHyUqHr9O1xlAji6wC14uUd45A0V170iuDfTDAQOeT9T/HBvk8fxR0PXl/dc9i86TLvUGukRJezr8bLl67BVkz5ygHb0XlFjBJLn07VihXoKd37VV8x4L3gRna6OzwZohez+zqNpVK42XmehD4et4yzgWXD5B7aMAlwhxxm4Z46hcy8aVMsmw== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(396003)(39860400002)(136003)(346002)(376002)(366004)(451199021)(31686004)(83380400001)(82960400001)(4326008)(36756003)(316002)(66476007)(66556008)(38100700002)(41300700001)(6506007)(26005)(6666004)(6512007)(53546011)(66946007)(2906002)(6486002)(86362001)(5660300002)(8936002)(8676002)(31696002)(110136005)(478600001)(54906003)(2616005)(186003)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?QWIwWlc5ek1KTkpvT1pjeTFPczlVK2QrWkphSTlSamF2Mm16TTN2S1MxQ0h4?= =?utf-8?B?ajQyTlRSRWZIdGRDR1lVQXdSV1loNWk5VWs3VS9YVFhJbFRMMWg3TDVmOFQ1?= =?utf-8?B?b0RsZWNhWWJ0cTB4MDRpOFhnN3dWZVN6T0VWNVMxTDB4WkJSVnh3TThHTFBv?= =?utf-8?B?R3NBc2tZdzgvdUpRak55NXZnSUJLcVcvVFFLNjVkVGUrc2hqOWV3QXRldGVF?= =?utf-8?B?OU5yWXplWmRVWXJCc1RRRjhtU1pJTmg5a1dmYURWUzRJaXZkbW1HdG56b3l5?= =?utf-8?B?ZFZSS3gvaWxkUmJaSG51djRaSWZJOWxsL216SEU3REFINkR6L3JrMGc3Tlph?= =?utf-8?B?RG9HbkNxb04vaUc2ejRFTFlHMkl3dXExRnBjZXk4TDNqTUE4MWQ2S2dMa2xk?= =?utf-8?B?Wk9MZjB2ZEdCZTJkNzkwWTZlZE9aQlhwai9ST0pqUEtRUFM4UFljd2hKM0J4?= =?utf-8?B?VERmd3kwVWJoWHVTQVhoWWFtY01DUzJwMXhhVDhZYXJac0I4bldVS1hiNVRV?= =?utf-8?B?UXhtaUc5VnhEU1ZEakFYMjlDblUzbUdoNnJ0Mk9nTkp1cjYxaVJzdGJldUtN?= =?utf-8?B?NFY0czZZbW5kVjg3Wk5RR3NpS003c2NHMVpweC9UTXZybVBFR2RJa3h2aWh4?= =?utf-8?B?dVd5NkZMSGpkd2xUT3RVNVNKVlNSeDVjdzVIV3FuTWgxZjN6Wjc1OTNETWl1?= =?utf-8?B?azQydFBYOXRTcjhWWEhqMUc0ZWgzbWV4QmZtcVJVVWt0bW5kQnJRdEZHRm1w?= =?utf-8?B?UXB6VWRncTJZbDRHNmFZNDE4STBzZzNLdkgrK203QnZNVkRYSzdpcEZOV0Fl?= =?utf-8?B?Qk5qRXQvVmVTRlA3ODBrd1VtNGdmQ0pURUgzRHZBRTU4U29IV1R6RXFBaVZZ?= =?utf-8?B?K0xOYndSWkRiaXpMaU44WEs4MGN1dUpXVitka2x4czNHUUdmMWp6ekRXNmp5?= =?utf-8?B?eGlkdU9EbzJqYyt0WEJUbDZOWTRqZXVtWUUybzZoTEY0bmVpNTdwbG9yb3or?= =?utf-8?B?SlRaSFF3bTN6UHRHeTdLRm1SbGplczN2NHAydW1NbGxRRk94Y1hhTW1PcnlK?= =?utf-8?B?bEk2YVRaN3VBSlZvS3B5K1YvOTR6Rk9Jczd0Y1VFY3V4QmcwcjJjZ3YxL3M0?= =?utf-8?B?RzBDQnNEWUI3MWhhSzluMk9xSHpMMkpOL2taQXpTanNtM2hhMGpwKzNKNU0y?= =?utf-8?B?M3ZxTXVKbFkvRDIxUmJxbW9qemRZV0x1eENCTTNWdmoxMVQ1YVQwcDhGWkF5?= =?utf-8?B?c1ZnMDVTc2N3MXNhUXpUWVVpVDhDUDBDZHkxTnpPTXZwL0RTZ213Ykx4VGl2?= =?utf-8?B?VmY4WEg4WUhlYklMZjlLVHJOdlhPb3VHWkRBMlpKdUwvSnpUU0V3ZWlYOHdU?= =?utf-8?B?S1dFRW81cUhBeklOVkUwam4wdUZ0MGJndXhNNTFMSERkSVZDaW1jRXJ1bXda?= =?utf-8?B?NXhGTXVnNmxUcmhoWE1KWjR1VWhvUWtCYW5yYzJFU1NkT3VKTUIxQjVsbjdj?= =?utf-8?B?OUgyWVhNY01ybmhQVVZMYkxMdGJlbmNHOE9iSjQrYW81dWliOFNyR0dJZ3c5?= =?utf-8?B?SXFmdnREc2paQStmVXd1YUExZzcrK2g5bk4wZjJKVUFGL0xqblpBbFVpQ2xo?= =?utf-8?B?ZlBLU0J3dW11cGFpZzhSRFJVbTlkZ1IvSzk2Yldyd1Y0L2NUSWxubjhUZWtr?= =?utf-8?B?bTdkeTVJWlpheTRoeStrU0lUSE1IMWlDc1oyOWdML1EzcHppVk5uZGlwZ0NN?= =?utf-8?B?SDk5RitYYjA2dTcyMC9ZK0FzTVRSREx6WnJXVFB6aUVvTnRWYkVQOVhlU09Q?= =?utf-8?B?ck1GSGg4MkZjRU80OVVOMG1nMitWemNvZDV1ZVg4OGlqSEZIZ2tqeXc2R2VX?= =?utf-8?B?dTNRREFWMGJMZHdIVm9TTDBQYjEyN3RmOGRzb3E5b1piVEdhVHpBaFZDYUdz?= =?utf-8?B?TmlTdHlsZVNnUHZJS1pVWFovMGlZdUcySWxtL2Q3aEZwRWN0alBmSzR1VkRO?= =?utf-8?B?cDlLcFBDb09oOGFuT0hLdmZIcTVHOEpWclJLWm5OdzVja3ZYd25ackJLeUlR?= =?utf-8?B?eGZkNlR6MTY1cnpEUWRBTFYxVGk3REdmL1U3cnY2VkhkTHM1aWc2YnV3M0VH?= =?utf-8?B?NjkzRlZSNGxYYzdiaGx5OURWOXVmWm56cFUvSXBiWVB3ZDZLM1phUmI2VmhN?= =?utf-8?B?V1E9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: GCGRMFEcnKsFk645jZhvf08u5DhbYvw6RtE8wexZIGwdP1CKEwN4NBS0WftHWOJUnayaJr/kR1f1ueRZGyOIHljabF7qdqtGDsqVjyjN+H252IBTR/fliyY1cjskRmILTo6BPh8udz5J89Y6BnPZ9EKJfIdUe1Gm32cEfQpRY+8h2a1cnMRRlc9Ed9mdNIW+MWaQA6SYftLv06odf1546X9pGVMXLtGzgXATnxX8VvAStb2dk0LMLF7B8Cq/FIjXE0iphtZ4zEKE2RE+Xg8UWSiJH4kvnyMdBWDzi4t/3AuMHfY3pXXH08djCkMP4L++m9Fr6aSX5IL51iRPdHth8JW+ywRaPsK08FASK1pkliy/xMTY0+iDfm8ndwv3cEMPZKCgyVID4FWRbjkDMWZLPC8NSIghra/I6AkeNlyyXt5FRfxjmw+PIHlalvGS5U2nXiTX1t+Wud7RaQ6iV8aonP/M1fFf4yS7ytV16JUImj1gC/4RK5y1fsWGELCEc6Uu3bkNJcUGwU6S/MPR8mulLhDVP5csDUpoA9+GaiKy8zenljm9XKBYFdTfZoI1uhsRJB8ot8pMcQ3stEXUBUuurjQ/CqPgBnvGIXZE7u0QRpbGV++IUZyAEALfm7Mj7VaIzhYu8/j1fybRG+zAwJYUuUYwJ24LoyYlgjnTlMELyc/PG/hfFZsPAlMdJk9WGpPTEcgldglqNYRvUmwVA3Kge72LaSZprqwwnDBq73gj+q8y62VvvknPvsF6uOFqtCJ4NbVYpe/OXgZdgQ23qhve+sDi40R5dw395IiqgIyfpmaSPe571VeZXfFlam79zAHiK6naMDF8busVRySJlamsNjmDTwVyKfqWJj3/pQHcDcE= X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 259e6cd7-a057-44b9-7f0f-08db6b6ad54b X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Jun 2023 17:31:19.6578 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: qCRintmhX07HJDOY2qYzI2zpzGhpcXnZ55D8hCfpaCSwyGuIUdv+Rl7LF0F3oZpFDOgHANfsffQ/7x7OTi/MsOs3USm0OzfEGdHGFvCTn0U= X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY5PR03MB5268 On 12/06/2023 4:16 pm, Jan Beulich wrote: > On 05.06.2023 19:08, Alejandro Vallejo wrote: > >> --- a/xen/arch/x86/cpu/microcode/core.c >> +++ b/xen/arch/x86/cpu/microcode/core.c >> @@ -854,8 +854,14 @@ int __init early_microcode_init(unsigned long *module_map, >> break; >> >> case X86_VENDOR_INTEL: >> - if ( c->x86 >= 6 ) >> - ucode_ops = intel_ucode_ops; >> + /* >> + * Intel introduced microcode loading with family 6. Because we >> + * don't support compiling Xen for 32bit machines we're guaranteed >> + * that at this point we're either in family 15 (Pentium 4) or 6 >> + * (everything since then), so microcode facilities are always >> + * present. >> + */ >> + ucode_ops = intel_ucode_ops; >> break; >> } > There are many places where we make such connections / assumptions without > long comments. I'd be okay with a brief one, but I'm not convinced we need > one at all. I agree.  I don't think we need a comment here. I'd also tweak the commit message to say "All 64bit-capable Intel CPUs are supported as far as microcode loading goes" or similar.  It's subtly different IMO. The Intel microcode driver already relies on 64bit-ness to exclude and early case (on 32bit CPUs only) which lack Platform Flags. I'm happy to fix both of these up on commit. ~Andrew From xen-devel-bounces@lists.xenproject.org Mon Jun 12 18:25:57 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 18:25:57 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547404.854775 (Exim 4.92) (envelope-from ) id 1q8mEg-0002ZV-R6; Mon, 12 Jun 2023 18:25:50 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547404.854775; Mon, 12 Jun 2023 18:25:50 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8mEg-0002ZO-NT; Mon, 12 Jun 2023 18:25:50 +0000 Received: by outflank-mailman (input) for mailman id 547404; Mon, 12 Jun 2023 18:25:48 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8mEe-0002ZI-Lq for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 18:25:48 +0000 Received: from esa6.hc3370-68.iphmx.com (esa6.hc3370-68.iphmx.com [216.71.155.175]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 8a23a24c-094e-11ee-b232-6b7b168915f2; Mon, 12 Jun 2023 20:25:47 +0200 (CEST) Received: from mail-bn7nam10lp2108.outbound.protection.outlook.com (HELO NAM10-BN7-obe.outbound.protection.outlook.com) ([104.47.70.108]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 12 Jun 2023 14:25:34 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by PH0PR03MB6250.namprd03.prod.outlook.com (2603:10b6:510:e8::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.29; Mon, 12 Jun 2023 18:25:31 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606%4]) with mapi id 15.20.6455.030; Mon, 12 Jun 2023 18:25:31 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 8a23a24c-094e-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686594347; h=message-id:date:from:subject:to:cc:references: in-reply-to:content-transfer-encoding:mime-version; bh=7oGESoOsKexZIw0TPWZeEzWwlk8CLqMzMVlqyN+vYBI=; b=YRXsqA5BGs7d/fF32euti6L0OGjnvP+H1HDzEJMw5Xk4aP4dkuYbELCW 0NoUJAGII35eCpQiOSB/rnxkL42DFjpKCIOaFpBlBAKgpigmwvy6CvdbJ I4wA/THyHN0Ir+vGD+8NTzbBFBrQH9CfYu4xfO0r6on+6O+g5nHC8OXvR Q=; X-IronPort-RemoteIP: 104.47.70.108 X-IronPort-MID: 111831671 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:RWVngammkw/ZsgO8WG3klefo5gxBJ0RdPkR7XQ2eYbSJt1+Wr1Gzt xIYXG+DbPfba2P9fd4kOYS2p0oC7ZfQzN5lSAo/ri8wRSMWpZLJC+rCIxarNUt+DCFhoGFPt JxCN4aafKjYaleG+39B55C49SEUOZmgH+a6U6icfHgqH2eIcQ954Tp7gek1n4V0ttawBgKJq LvartbWfVSowFaYCEpNg064gE0p5KyaVA8w5ARkPqgV5QWGzRH5MbpETU2PByqgKmVrNrbSq 9brlNmR4m7f9hExPdKp+p6TnpoiG+O60aCm0xK6aoD66vRwjnVaPpUTbZLwXXx/mTSR9+2d/ f0W3XCGpaXFCYWX8AgVe0Ew/yiTpsSq8pefSZS0mZT7I0Er7xIAahihZa07FdRwxwp5PY1B3 aMiB2svdz29vcfswKqUU6pLtJ08JuC+aevzulk4pd3YJdAPZMmbBo/suppf1jp2gd1SF/HDY cZfcSBocBnLfxxIPBEQFY46m+CrwHL4dlW0qnrM/fZxvzeVk1Q3ieC9WDbWUoXiqcF9t0CUv G/ZuU/+BQkXLoe3wjuZ6HO8wOTImEsXXapLTeTorac03wT7Kmo7IRoXSnWYrqGA1WGHYI5iJ 2oV2gEBlP1nnKCsZpynN/Gim1aGtBMBX9tbE8Uh9RqAjKHT5m6xD2wJTDdHZMYh8tE/QTgn1 FihlNfuGDApu7qQIVqC8p+EoDX0PjIaRUcSaClBQQYb7t3LpIAokgmJXttlCLSyjND+BXf32 T/ikcQlr7AajMpO3aPk+1nC2mqovsKQFl5z4RjLVGW46A8/fJSie4Gj9Vnc67BHMZqdSV6C+ nMDnqBy8dwzMH1ErwTVKM1lIV1jz6zt3OH06bK3I6Qcyg== IronPort-HdrOrdr: A9a23:GD+seKoWuT3WRDgsT7htDvMaV5oReYIsimQD101hICG9JPbo8P xG+85rtiMc6QxwZJhOo7u90cW7K080lqQV3WByB9iftVLdyQ+VxehZhOPfKlvbdhEWndQy6U 4PScRD4HKbNykdsS5XijPIcerJYbO8gcWVuds= X-Talos-CUID: =?us-ascii?q?9a23=3AVwZBaWmgaTgEFp5r5r9BJtavI+3XOSLn4yzyOmK?= =?us-ascii?q?GM0MzSKW6UBy3yvp7meM7zg=3D=3D?= X-Talos-MUID: =?us-ascii?q?9a23=3A1NoFLg3+CV9bJm8SA1sGElFN/DUjyqOvF24uns0?= =?us-ascii?q?/5Oa9DnBNNxGcrB+Ye9py?= X-IronPort-AV: E=Sophos;i="6.00,236,1681185600"; d="scan'208";a="111831671" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=aEl/6EZezP0mz5Cc1ru7FfIA//xlKN65UKLgjRwgAEvohls6OYCzEbQrFeRStOWdGFfB3OmwOqkiC4WjH0TjA2nG62UkyoSZlauE0ivPfdCi9ZncYrZ3mrFk1esTkqopPA43DbSLtkF7YV3nvlkCzzKb4PxyhVDnNNMFsyt3WywwcQXNaXkrzABxjhewIt01ShLyeu9nBQkGezfthRxOL5lbXH4XNk+8wXTWBAyZZSRxBDnoPsXfkCKQnvb2puQ5qgAusD5ELMZLb36Ge+45oXVTpen+L/nrAutKFsZkcc73jvuiKR5yzCBtL6xTltjz5fRUV1XBILVBd8aA08J7rg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=oKaei8jJbFPtsU5mX37+5Or1yZTyrZayO/kjmCynmNQ=; b=RrW3VtmhVrOb5cbR/Hw6z8jAFre9AnfIbuYk1YMvv/sPMyPij8eBYt6vAHs7Pv2yuBBlCjqiIsx9W3HtZhyRM0X2DOGuGD6/rZNiRYjDzbgyaE+Eb3V0UB3EHah8mW+aMH/2zlhDi+9WTwjKLij4dxk0i9KX6Jwq+WziaDDO+Jv63U3q0Br2cKO2hNgBLmrFnJGM48bgsmMG3xD1a7D8fV+zFhItBkzwIgleRw5H7gULNDoSizuy0Wyd0wEUmVbspMcE9hVQtKVYC80kvpBO9xYlzLdPUy4EOyYmuSfZsfOrg4cL1bPTut5narOHJa/thQu8xblVCEmI6JhcFYWH5A== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=oKaei8jJbFPtsU5mX37+5Or1yZTyrZayO/kjmCynmNQ=; b=QIrsaFkEknnOCXMWUwr9qSZQsi3EPtR9K66r9GMVM837xLhVicUUaP/cDNiPvBOO+vQ3/g6Iz72wWh02Daqe+2fQSiGDeQIefPMVXksCuy79yarjjwLaV4LMh7LpO/nDUUM71L/l5nG9Qp/vqJxDOuZ+DpeAlT99EXB7LwcEX9c= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: Date: Mon, 12 Jun 2023 19:25:24 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 From: Andrew Cooper Subject: Re: [PATCH v2 2/4] x86: Read MSR_ARCH_CAPS after early_microcode_init() Content-Language: en-GB To: Jan Beulich , Alejandro Vallejo Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , Xen-devel References: <20230605170817.9913-1-alejandro.vallejo@cloud.com> <20230605170817.9913-3-alejandro.vallejo@cloud.com> <6ee9e687-b8ac-adfb-552e-522a21e128de@suse.com> In-Reply-To: <6ee9e687-b8ac-adfb-552e-522a21e128de@suse.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO4P123CA0161.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:188::22) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|PH0PR03MB6250:EE_ X-MS-Office365-Filtering-Correlation-Id: d2e230bc-69a1-423c-28fa-08db6b72674b X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: HeQM2WPCeBgo/6ouUqYx14UfRGy2lrdZ2JFpC8XsHGqBfgHuFKT5tEl8RVm3PRknkKVqzl5COK/7lImat2144k13WQCroH7Nav2XjCsNix0iNN+5O/7KZqalEFQvflXlDXuWRsC8RaUuZhiOouXq+PnYz4vrT2X8YTqmXEcb4mi+YriHi+1eADxPFe336IANnK/ppK6wvljZfT3Y/4DfAi/4ZTOrzC3vpau636FUKzIuz9YpQdiD4WWd2c1mFC/q2U8LGDqn9QBeio/SKpkZygCnHotsRxJjTbod8YtxXtdaBLt8B6uU4nJRJtShp+vhF2mkAV/Ow76isL3TqmrMPjhN6E2SPZnXaCeRdiR8VhKXrhSnF/Ne6vfU+B89UcEN2KEtx6b/dg357QqJ8kIEmUuqm9d1Lyz9hWJnsfyc95BvgYfQ6/xkRqnbnaKqgQilEzQD2roNxq2cipciMyVJce4c6QcbQOuAoe+JTBejJRlguRppJwu+glbDawDvZttJf3/C28eoMKosaNWYaI9UMCp2nZcb7riaPC1F08hZNroGjgB8xd4sPAzMN4fKnb5d7heSixNOACwMoHEcBsogS0UVfYWv8KcKsMJnm6oFX2Eeovl/4WIhccbgJHD7ZWsV4anKJlU5YsM+Akkhb8Yv3Q== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(366004)(346002)(39860400002)(136003)(376002)(396003)(451199021)(2616005)(83380400001)(82960400001)(31696002)(86362001)(36756003)(38100700002)(478600001)(110136005)(54906003)(4326008)(6666004)(6486002)(8936002)(8676002)(2906002)(5660300002)(66556008)(66946007)(66476007)(31686004)(41300700001)(316002)(53546011)(186003)(6512007)(6506007)(26005)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?YUc2OEdjNnNzTTI1R2k1ck5ra1NxWERPR204Um9VU09vdndTL1NWVy84MkZ1?= =?utf-8?B?TFRtWTArQnFTeVE3V2I5MUlteHpLbDJ4Q3B0RWE1SHlsM3VSRitpNFpMRnN2?= =?utf-8?B?TE4xQ1FjNVFiQVRzYm9yT3A3aFArVVZLQ3FIK3VSUXRJVzlpV29YT2hzRHFp?= =?utf-8?B?aTZGTVZLSU11bGxMaEZKaUF5SjJkcTM5YkVCVlJ4L0RjS2V4bkNwZGZ5K01G?= =?utf-8?B?a3BDQXFUdnRwdmdhTTJBQzdHQWxyanloem8vTmNlYkpKWTRDTXIrc3JLekpo?= =?utf-8?B?TXdJL1B2VzZ4aTBLeFNKRk5meUpCSndCUVNWeFl3OU0wS0o3THdzNWtZYXJL?= =?utf-8?B?RzdJL0doK3lTUUh6ZWkvV1RoazliVnpRZmxsSExhcnZiK0xBWkI5aHpCZ3pa?= =?utf-8?B?eDZTNUxUeWNLSDhCeDRCUmQ0bW1mREo5dElzNnFhQnJIdWFoOHVoMGE1Q2lW?= =?utf-8?B?cHBVejNNUStWWkNLWkFEZFcyQmpoY09KMlM4SStaVXVKcVE3WjFXLzBtNURP?= =?utf-8?B?cTVtajMrNnFoOUVwOFd5M2lQUy9rQlBNRWNJRlhNYXNXNUF2YW9aYmJTbTFF?= =?utf-8?B?RXZCNVNhcnFsT2U5ZFZkT0ZZNUgyZVowMXRJc1hQa1FPcVFOQ2FLSWRUL3hV?= =?utf-8?B?K2pEaGdWcXVTUkk2ODlzcEFSd28yM0lpTDYyWnBUVmNJR01LSUpERDIySzFH?= =?utf-8?B?NzFLbm4rcWliZUtFS3FGVW1zU25QRENUTDJJcjRIVklFNENJY3BMS01kYkV5?= =?utf-8?B?WU5wTU5CcE9ieUpsMkpVcisyeUtjbm1SZkxvMTE4V3RoMWlPWGlZWGZ4RzdZ?= =?utf-8?B?S0RDWXJZVXFuRVpyNC9JMDQ5Q0crU2xiL0FTNWxPWFNxOTdSN0E5Nnh5UnVR?= =?utf-8?B?cmdkaVAvbWx2ZUh4eHU5SVMrcE52V0tBRDMyZ0tGOEk2T3A0aWk2SnNuTDlx?= =?utf-8?B?ZCt6bkNvZG1ONzloUmJnQ09OcThSOW4xV09jejlHRHlMWkFwMWFtL21oeFNK?= =?utf-8?B?OFphNVozVjY0QnVYdG1tYkE5RmJvRmZsRWU3UWI1R2pqaHROK0Q0ckNyS1JQ?= =?utf-8?B?MGtTd0tQV0lNbWQ4SmVTTnBYK2szdHREN0xXaGZhQUJIZzlPZkM5WHgwa3hr?= =?utf-8?B?cmNSek9CKzltRWJmcHRZVG04VTZ3ellUeklKMDk0b2tkOUZIbG8yQUhpNG9p?= =?utf-8?B?OVh2Y016ajZhYzVwMU4wNThHZzAyWHhENTJpVmJib25XUUJZOHBaTVB6ajly?= =?utf-8?B?ZDVQeFo0dmR2VlYyR2Rpa1V5LzJ3WUxwelZ2bVRvNFY5ZXdieW9DMlcvZmlV?= =?utf-8?B?b2ZEZ2ZaSmQ4dzhxMFFuaGxaTytBTXJpd0VwaDhDaWtJdURyWk5FZEluTDRL?= =?utf-8?B?TlhIOHNkQVJFZDFIb092YnZ6eElZOHROcE02RklFY2ZhZXhnR0c3V2hkc1JX?= =?utf-8?B?ZjBOSHBHeU1sM2VIT0t2QWNEdGp5YjAxNk1PVGJFcnAveW95Tzg3QjMzaGRB?= =?utf-8?B?VHFPREZYMkh4dDlOSjVOREpCeTlsS3pleHBvNkp3NlZsbXArT2FZSTNSMEpS?= =?utf-8?B?QjUvRzZzanJiVTRRUC9rQ2JFUDRnY1FIMnJTTzBlWWZVdnpkUC9tampGRmls?= =?utf-8?B?Mk9pZ2FiSmFVd3NkTmZBWTlNWXpqcVNqMDZrU3Y2TUg4ZFBwNWJjNWRSTk9E?= =?utf-8?B?c2h6d3dwaWxJVURRY2IvcUhNRzIxQjRpdEZLbm90d2ZBS3ZaeDQrRFJTcjE1?= =?utf-8?B?M0plejZReFFrazRGQlNTQ3NFbnZTOVRPSnNPVU14RjlOR1U5NXBjUmkxdkY0?= =?utf-8?B?YkF5U0VHaUt1SGg0L0syNkcvRkYwZjVnQjJXam1xVHppdGZyOWR5S01Ubk1o?= =?utf-8?B?Q2JTYmJ3cnZnaWhaNjhQaVlzUjFUT1I1YkRkZXpyZThDSEtmdnpLcDRUVzRu?= =?utf-8?B?a2ppaEJyMkdnKy9KbHZ1N2ZoTXFMSk5yckcwaFJUWnlTeUtOaTJqSnVqaGc5?= =?utf-8?B?VmRCc1VEWDJaenBSOHJhL0xQVmpYWFpPK2hxZThuVXRPb0Y0WEpuT2V2aXNa?= =?utf-8?B?Z05HMFF1cHlRQXJDUWdZb0NRMXZmaC9JRlJJUVpWQ0F3TnZabUV3UDJoc1Ru?= =?utf-8?B?bWp5Z3daZENhRUJqcUJOV1ZtdDROajRLdEphYU9pekp2R3FZenlpUitoYysz?= =?utf-8?B?Nnc9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: OWsdlh0jrjnwFgchhsynACF/wcSumcdowmk21GC/dV+IYFXTw9TyItHEeo/3NW/lllBGYlpWy79ulxN+Uyxwk1xIgbxHOeQUcQtyR62tAK7LoNp5wnYn34NUIR2ujV4BcVkon0syrB7yPasBbORZeOHyROrZFizHlhsSt/291gjQp1n4Gxh+bnJLSiP67p3dPcPc+zky66Y3gLtGNMaiJnyHUPU3PN8f3YyS61Ut81sqc+lNg35LrrIG4GFGCcXsC5IuJs5LtmssEwDdU56yXmybnRoBMktnRuUGNSuPCOP+k5Z+y+k6GB1ZMjO7L7Eo8Y0FIQtaKv2rh/AH+ChiQQ/eX1VQhp2XRBpr4jtljxTX/eJDB+FNtFDXNWxeoiIQ2f3w62voI0kZoEwbpWA4mj/ZqSVOTIQ/ea3wbnACfUeDaP1dWrmIHb4P5rhRQK/LLxya/MiKODNXFhB3d91/v1DYUtKLRcc2jVd6GPie4nJDt9hrP2g35SUrYzlPMN72eGsva5NAB+eyG+Z72Jk6nk9arUrZPptvD9t9c4/sLaYTD02ItVTYFpZUtCLnBnhvBfeFIEf2FFlumy7pCQ9koTUL5LtHfb+k/TLOQeMbSrN4HLsvxk70KI4qi4/FTOKwM7iPdBhr4nerNwfeAVA2e5i+Hw5LHx9KjqHs9RmXKCZ76Kv5zxPaq+8GFl2HLQB9nwK0B7uFIdQxbxMTX8bjLdcWBkQsADiA6q8rKcJv+cU8tqqS9PcH2TMIdtpYdQ+wkkmlQGmpqB1YVVUr4knXDc1kIqiKZ8sJ3/YKxjuORAU06TLcHXnouf71F6HZH5UCtkqFi7c/F+u4ahO5NjMl2fC8a//qOqE6p7Q+bWfxtYE= X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: d2e230bc-69a1-423c-28fa-08db6b72674b X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Jun 2023 18:25:30.9996 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: EV8uxjYUsBrqGtKCTrEN+j/6v8KXJW1IGyAsgFqsu+akahADWGCa2sH3CeiAJwLikMnZnZ9epQpTbkdTFZc4JJaHj7XpKZcYINtem2FEA/E= X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR03MB6250 On 12/06/2023 4:46 pm, Jan Beulich wrote: > On 05.06.2023 19:08, Alejandro Vallejo wrote: >> --- a/xen/arch/x86/cpu/microcode/core.c >> +++ b/xen/arch/x86/cpu/microcode/core.c >> @@ -840,6 +840,15 @@ static int __init early_microcode_update_cpu(void) >> return microcode_update_cpu(patch); >> } >> >> +static void __init early_read_cpuid_7d0(void) >> +{ >> + boot_cpu_data.cpuid_level = cpuid_eax(0); > As per above I don't think this is needed. > >> + if ( boot_cpu_data.cpuid_level >= 7 ) >> + boot_cpu_data.x86_capability[FEATURESET_7d0] >> + = cpuid_count_edx(7, 0); > This is actually filled in early_cpu_init() as well, so doesn't need > re-doing here unless because of a suspected change to the value (but > then other CPUID output may have changed, too). Hmm, yes.  I suspect that is due to the CET series (which needed to know 7d0 much earlier than previously), and me forgetting to clean up tsx_init(). > At which point ... > >> @@ -878,5 +887,17 @@ int __init early_microcode_init(unsigned long *module_map, >> if ( ucode_mod.mod_end || ucode_blob.size ) >> rc = early_microcode_update_cpu(); >> >> + early_read_cpuid_7d0(); >> + >> + /* >> + * tsx_init() needs MSR_ARCH_CAPS, but it runs before identify_cpu() >> + * populates boot_cpu_data, so we read it here to centralize early >> + * CPUID/MSR reads in the same place. >> + */ >> + if ( cpu_has_arch_caps ) >> + rdmsr(MSR_ARCH_CAPABILITIES, >> + boot_cpu_data.x86_capability[FEATURESET_m10Al], >> + boot_cpu_data.x86_capability[FEATURESET_m10Ah]); > ... "centralize" aspect goes away, and hence the comment needs adjusting. I find it weird splitting apart the various reads into x86_capability[], but in light of the feedback, only the rdmsr() needs to stay. > >> --- a/xen/arch/x86/tsx.c >> +++ b/xen/arch/x86/tsx.c >> @@ -39,9 +39,9 @@ void tsx_init(void) >> static bool __read_mostly once; >> >> /* >> - * This function is first called between microcode being loaded, and CPUID >> - * being scanned generally. Read into boot_cpu_data.x86_capability[] for >> - * the cpu_has_* bits we care about using here. >> + * While MSRs/CPUID haven't yet been scanned, MSR_ARCH_CAPABILITIES >> + * and leaf 7d0 have already been read if present after early microcode >> + * loading time. So we can assume _those_ are present. >> */ >> if ( unlikely(!once) ) >> { > I think I'd like to see at least the initial part of the original comment > retained here. The first sentence needs to stay as-is.  That's still relevant even with the feature handling moved out. The second sentence wants to say something like "However, microcode_init() has already prepared the feature bits we need." because it's the justification of why we don't do it here. ~Andrew From xen-devel-bounces@lists.xenproject.org Mon Jun 12 18:37:23 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 18:37:23 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547409.854785 (Exim 4.92) (envelope-from ) id 1q8mPg-000464-So; Mon, 12 Jun 2023 18:37:12 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547409.854785; Mon, 12 Jun 2023 18:37:12 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8mPg-00045x-PY; Mon, 12 Jun 2023 18:37:12 +0000 Received: by outflank-mailman (input) for mailman id 547409; Mon, 12 Jun 2023 18:37:11 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8mPf-00045r-A5 for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 18:37:11 +0000 Received: from esa5.hc3370-68.iphmx.com (esa5.hc3370-68.iphmx.com [216.71.155.168]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 21d67c4a-0950-11ee-b232-6b7b168915f2; Mon, 12 Jun 2023 20:37:08 +0200 (CEST) Received: from mail-bn8nam12lp2176.outbound.protection.outlook.com (HELO NAM12-BN8-obe.outbound.protection.outlook.com) ([104.47.55.176]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 12 Jun 2023 14:36:50 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by DS7PR03MB5416.namprd03.prod.outlook.com (2603:10b6:5:2c7::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.29; Mon, 12 Jun 2023 18:36:48 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606%4]) with mapi id 15.20.6455.030; Mon, 12 Jun 2023 18:36:48 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 21d67c4a-0950-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686595028; h=message-id:date:from:subject:to:cc:references: in-reply-to:content-transfer-encoding:mime-version; bh=6cNYgH5GjSm+3+tS5Bl2LInUimiNBqJwX7o6yUKO8WU=; b=IKXqyceoAQayDQtHqOATjFGxKFKHcqRu1HZofRriGb+bJ4zA0eYCa27n paHL3lCRgfoG6m6qvAdYA8/3y7seIOTv8MVXqJyi9aLqDKAZUrFHFnXgN RMVvFlsmy1hCVOLeIYn9Az8oT2WHuwWPmXVracg1AmYfHyrNh16BMFTRl 0=; X-IronPort-RemoteIP: 104.47.55.176 X-IronPort-MID: 111255744 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:O9eZOK9a7IpTWxlYCaKpDrUDQH+TJUtcMsCJ2f8bNWPcYEJGY0x3m jAcDWzUPv6NN2qgKIp0PYi/phhVuZDWyINqHlBs+SE8E34SpcT7XtnIdU2Y0wF+jCHgZBk+s 5hBMImowOQcFCK0SsKFa+C5xZVE/fjUAOG6UKicYXoZqTZMEE8JkQhkl/MynrlmiN24BxLlk d7pqojUNUTNNwRcawr40Ird7ks31BjOkGlA5AdmO6kR5AW2e0Q9V/rzG4ngdxMUfaEMdgKKb 76r5K20+Grf4yAsBruN+losWhRXKlJ6FVHmZkt+A8BOsDAbzsAB+v9T2M4nQVVWk120c+VZk 72hg3ASpTABZcUgkMxFO/VR/roX0aduoNcrKlDn2SCfItGvn9IBDJyCAWlvVbD09NqbDkkSy L8XBBUnMym5oLyr4ry3c7ZG2tQKeZyD0IM34hmMzBn/JNN/G9XpZfWP4tVVmjAtmspJAPDSI dIDbiZiZwjBZBsJPUoLDJU5n6GjgXyXnz9w8QrJ4/ZopTWOilUujtABM/KMEjCObexTklyVu STt+GPhDwtBHNee1SCE4jSngeqncSbTAdtLTuDlqaI26LGV7lIcVR4ceVCGmNSehB+fUdVTF E9PxzV7+MDe82TuFLERRSaQqXqJvBcaV8BXVfMz7AWAyK386AKeG2RCRTlEAPQ2uclzSTE02 1uhm9LyGScpoLCTUWia9LqfsXW1Iyd9BW0IaDIATAAFy8L+u4x1hRXKJv58FIalg9uzHiv/q w1mtwA7jrQXyMQNh6Oy+Amdhyr2/8eXCAko+g/QQ2SpqBtjY5KobJCp7l6d6utcKIGeTR+Ku 31sd9Wi0d3ixKqlzESlKNjh1pnwjxpZGFUwWWJSIqQ= IronPort-HdrOrdr: A9a23:UCygAKiYaJlzZLFtdawpDEO7PXBQXkQji2hC6mlwRA09TyX4ra CTdZEgviMc5wx+ZJhNo6H4BEDiexzh3Lp4+5MYM7vndgzvonHAFvAB0WKB+Vzd8kTFn4Y2uM tdms5FeaDN5DBB/L3HCSaDYrAdKbK8gdiVbInlvglQZDAvR6Z87xpoTia3e3cGNTWvTvICZe ChD7F81lmdUEVSVOv+LnMOU/LYzue7867OUFo9KFoC5BOVhT2lwrvzCQLw5GZ6bxp/hY0MtV Tfk2XCl8GeWiiAu2PhPrnonutrpOc= X-Talos-CUID: 9a23:hDJNkGA+sRFi4hH6E3Vat0E4P+p4S0f6kmryLUOBVkw1WJTAHA== X-Talos-MUID: 9a23:idFBdgTWx9/BeK/uRXTSi2xhPutj3p2DL05csJ8Bt/aHbhFvbmI= X-IronPort-AV: E=Sophos;i="6.00,236,1681185600"; d="scan'208";a="111255744" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=e6+GngbqxzaEhGq3oBAgIwylJsPGEQkHhZNtwaIwOg+5gwnzIsnhgJ6bLRJ7scbJnceUBBJ8cdCcntdNn6pDNGTtTyubvAYAvN+2I9XMQ4nj1RwVxAO7PMhraxVc3vVcYY+BpxXLvfgxvmHPXcIa97YaGgaY4BbQsATTtZieitu3ofJbTm9soiq8GfYRNoy7l1pmpDBNHJeGUpfmElzIw64P2PzNo90+sfA3PRJg4CFhFr7Ozuyfaqg9W6eg/ipJYKau5QGmnVdQdVBdTD8wY1/irneHna+7OV0yyLqRw9u8kLEKsBi9nJya6GeKxUW/Czahkfx8bjqEdxt809u9pg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=3cEKnvfMyMrMUYGh5TGsd8PDeIzFVmCdCfrIM2gz0xk=; b=PIMOPrqHtMscqOdz1Bn3zWHbgKJBOAp8HN3gEJfyeHILHtj1dtywf+7ZkyIIiYCZ54XWDRFxhMAP6p0aIHDQBs/O+Ko9sQdBjKGenhAzDOi+8WdJKKpTjzCUeyzE1Zm3Y7q+cWIiMrUov9ki5z4r86/E0341vFAWOeUQ5eWsDFNWmjsD/jVo/p0qnePqJ/UafvQVAuwOn1NXBNMCrbxEuPBLRYT1hgO/75vi2gZqD3rkJJzQq2+S0eKaFEuzuIQCcbzc5DrSSJsgjFieqjG0DK5tZmSU3elzOCLXhdEBkXVx+SMfhOTGgyp1YQGIlSCvnxM2OP/10GGM22VoNUZMqg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=3cEKnvfMyMrMUYGh5TGsd8PDeIzFVmCdCfrIM2gz0xk=; b=YQC5id92d6dcd9jVxZg5UJ3YgPylWU4uaFNeSKv5b85m1HedhmBTkEZoKRPR7BALSUjXzX9KQDybZTY7gotmEapGwT1oYWqtXMaAXbup4EMlOFYnGI8U/8aLgQIT84qi5hVtB/rTFn0c7z5zwOE7ilFXwOA6qsDil56yZR4SBss= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: <5bdd4d6c-6375-35d9-35c7-289dd1f7c4bf@citrix.com> Date: Mon, 12 Jun 2023 19:36:42 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 From: Andrew Cooper Subject: Re: [PATCH v2 3/4] x86/microcode: Ignore microcode loading interface for revision = -1 Content-Language: en-GB To: Alejandro Vallejo , Xen-devel Cc: Jan Beulich , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu References: <20230605170817.9913-1-alejandro.vallejo@cloud.com> <20230605170817.9913-4-alejandro.vallejo@cloud.com> In-Reply-To: <20230605170817.9913-4-alejandro.vallejo@cloud.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO2P123CA0075.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:138::8) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|DS7PR03MB5416:EE_ X-MS-Office365-Filtering-Correlation-Id: 76e1fe2f-293f-440b-e9ba-08db6b73fb02 X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: CjpOX8vv7r1ZBYSf0axpP0Esg5xeaFOLTexcqCKzzyE6i+eZvb2lCW/1lqWQp625qtNqKYAUNk7fzEyZbBk7LPpnSJ6PReHc52gciSSoQFlpiaX1o8+nCWFNyTWadq7Cncv47xPSq/d/Ni0IIQL60yMawJi0bmFEeUug+cMIP/gFWiRkjafGCWS79/pIXCYCsfo6rN5zTbKlqiMPcsXWdF+Sg1YGCZYkQMvTSedK2VNz5dsSD8e5kqfknnhfSqa1u33tLLek38mIp4zeYLIQzCxcxO9L0ZM0PJwIn6shDy+SNh4os/PkmEpo+Q16y4FVTi3fTsNSd2aaF2btisDnRnAnulFLAzXhDIBdIv7aVCjx9845ruqX3UPY8shp/ULDa3uXDjBu0KzHtyO2nJRNXYMAr4qz+6DfeKLxcheYjLErQ0CXaEzzfHOfD1fNB43qLOHfVXWvLSzFRbd29a8VuVVsxRxt7pYfEa/5WQdn1Noki01fXlm1UVi32QhdEesYaD8cJk9HxRKm4V6QUlvRAJug22r2jzdjw2gcB3WuJ1cQ7bzCudziQY8CuPPdv0pi7mqUxK5L94Pqj91RJUnz0LMgfMGNvGSWI5TaLIwgE1FiLLUfJfRY0hoXilWP7yQxll6sdJuPW3n/SGIhR4jh9g== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(366004)(136003)(396003)(39860400002)(346002)(376002)(451199021)(6486002)(6666004)(36756003)(83380400001)(2616005)(31696002)(38100700002)(82960400001)(86362001)(6506007)(53546011)(6512007)(26005)(186003)(2906002)(5660300002)(54906003)(110136005)(8936002)(8676002)(316002)(41300700001)(31686004)(4326008)(66946007)(66556008)(66476007)(478600001)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?Z1VOSUZGc01pY3NJZFdKb1ZXUDMwVVRZMEtmTU4vMGZKOE50Mm1jTXkyQkpR?= =?utf-8?B?Um81cDdTaWhBYTBWaEpWS0ZSdmMvZ1Ewb3FmYnR6eHFHR2RUdVJsVWFFY3BJ?= =?utf-8?B?ZkI1c01zNUVJeEZzT1pkeHBUSnREVXBrSWRTODJwUktLQm9XQkMyZWZQd2gx?= =?utf-8?B?ZnlBZy9NeXJxc1ZuVE82QUJBVWxpdGhlaC9hdHo3aTh0VGtBeXp0blFxTW1X?= =?utf-8?B?YVhUYitXSjJtV1B4cXBPMEtJMHZEL0FwRzVxQjVhaVExUk82TG9LOTBjR0Rw?= =?utf-8?B?WWpSYk1zT2UxVnFqVk41anBCQzVCN0FFcHVNZ1pCRWRkZFRhN3FVWUEvcG5F?= =?utf-8?B?M0tjMkowbnBnd3B4NmhhMzhmU1BXczd2VERjcW53M1NsZEVtMWFTYU5lR2NW?= =?utf-8?B?bjd1NkYyeUV1ZkJFM2xwSUNmSjFaclhZWTFsMGtRMGtydDVibXIvQUMrd2tu?= =?utf-8?B?TGJjSkF6b0Y5cWsrQU1uSDBQNlNqZHI0d0NJRmNhQmZQbnV0ZFV1OUVJd3I5?= =?utf-8?B?Q29QdDdUdWM0dklobzVXcGY5dGUvUHJ3N2pKNmpWY0FqaVZIcHFCTC9qdFZL?= =?utf-8?B?RTdrWHZ3cXpGK3dMRzB4ZGc4ZElGU3ppa1A3NFBnaW8xdVdlOVY5eW1OSHRw?= =?utf-8?B?a1N4eVpNQUhKL3l0OStnZFROQys3d21McklvOVdZUlN3MWZCWVdsNU9WS3g3?= =?utf-8?B?aENxRE9tb050U0RiNGVpVkdMU2NObWw4WVFXc3R3WFYvVHdLMnhSQXBCWFR3?= =?utf-8?B?aThpSWpxRTl5SWdBS3Y5NnlYbUdmVUNsWlJpYktLTzAzQ0JSZndqdVl0T09O?= =?utf-8?B?b21wTjZ4U2tobFhlTGZMcnJaeEY2VWpyT1RaZnA2bkpSQjlERGFEazk2VnB3?= =?utf-8?B?VVZrcXpzYWJLVnFDOTIyQlJtNE0wdzN4eDFDVWxQODBpdmFCZURTc2RGbmhU?= =?utf-8?B?Y001NGZsN21TRXltR2lmTnp5bW5jQWIvaXA2TDhaTzAxWUlHVE1Ic2FpYmpt?= =?utf-8?B?U3VBbFV3NlZwWWpKYmVrcnVwYkZIcDRHV2NZWWdkK2pUNVJ5bTBaZ2hXK3Zl?= =?utf-8?B?eExOYzFJenZTUkk1cFZaaUw4NlNBZXFmVW5pR0dGR3JhY0JMNWJ2c1E2YXR3?= =?utf-8?B?M0R4K2g2U012U1VqVXlGNlJrYWpXQkhtcGVPaitDblcyMUJGYWpXZUlIcnFa?= =?utf-8?B?b3E3WHpJYkZhR2puN21pMTFvTnFkYThYdnlXemdDSWEzTnlUNVNZL2FxbWpR?= =?utf-8?B?R1MwVkQ3SWhMek8rY0RGay9XSGgwamw0NDhCdDVnQWtEQlFiRlQrbE44WDdC?= =?utf-8?B?dVhvS3BEWHRhWTNHWUkrVVhMeXUxbzB0QlU0RXl2ckRXcnZTeXQ1alQ1RzRk?= =?utf-8?B?Q0RXRXJVWEdzWDZmb0RSbXlZUnF0MmpXVW9wbFJHbFFOZHk4N0dCZS9Ldjcv?= =?utf-8?B?SzMvSUhWamUySzRxYWtTWTNuQ1NvbUhuSzhZKzByemtZVi8rcFZvNjdicXp4?= =?utf-8?B?RlQ3ZUxMeUFRVzdjNkF3K245OENRRGl4cUd6L0dpaDI1VEdVYVlKWXlUcFlC?= =?utf-8?B?Qm1RNlo2cmdyemJZc1hORDByeWpZVnlKVk5lUEh1bVJsOUhtU1lOQTNJUWt2?= =?utf-8?B?dVRMUWdYYnpNdjlrcm0ySlJibDFjWDdkVHgzSWh5U0tjME5kNE5KVmZVVVVZ?= =?utf-8?B?V3R2MW1KeTJlWENEZDZNTDNEMmJJSDArY0xRUGdaV1NRRFdsM0w0SGlYTXBn?= =?utf-8?B?aEs4Q0FrQzBLdHlFRThyRlhEYTFUSUo2bjV4NzFNMXVUWU01endYS1FqV2hJ?= =?utf-8?B?ZWVjcm9vK0RqWTRaK01QNk55blFpTTA1dHdVVlV3dUNUYWc3WVkxN2UxR2ZM?= =?utf-8?B?a1dJazVNZE9iYU8xNjVzMTkyQWRpc0NWRkI5YzFYWmRGZE43ZE9uWGlXR0Ev?= =?utf-8?B?YVhsMWphZjVHV1d0THkySW5qQmg3bVJsMWprK3JxQ2hHZDAvWHYybTAvTHVh?= =?utf-8?B?YzE5bTNGNXpDRTZQYTh0eUdNbWZKMVp5NThZSFVDSTJpWFRWZG44Vk43QWFK?= =?utf-8?B?WDR2TUFTSERUOFkyU3ovdnhkY2s1VFNVUnp6VkZTc2xvZVo0MVU0c2ZhZGZ6?= =?utf-8?B?b1JMWmY5L0ZTWHBDSjhaZ3Q0ejV5ZGd5MEJWY2ZBa3dSNy9ZcnZwQkoyMkpD?= =?utf-8?B?NXc9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: EEn/hqSR7XoZYwHM6Bh7XAV6mjGlWHVUCQREyKDwvU0UQXpl2C94VQDOLG3fTGnBSWV2dWRv8R0gL5LTqUG/aOPOxYbQ63pB82pXd4gCMLwoiFtj/OjclXBo9+XZRIneTwFDrULakEniOXoZIdOSVuw3OxLZNjzOKmMQx9bK0NUF5oWH8pED/aRqaxUgP8iL4Q2Th5cfvION3eEHBWOzpfZYUPAwi483knQWXMaJKESAS1PiJX/eTvuWBZsNrHxFoa6vvSMQJs25Qc7VVwvFjO4N4sjEu6crF/2fr/bHuH2xcbqsblBPebfxbNU1X1r8CGRzNYsWtxBgxTxPZb/LpaoCfIRaPFZbvaVFa5HQkjn6U2FvSP5sv76tODn/qsfo/mEt+/7583OuLtaqN+0gBCY+wy9asiBJg5X7oIJYyn7FvlHXxZznWDIVXNgtqazRfkFzGynM0/G4+ZiArIumccliyXUpScvkRV+mdbxhVPCbBVw9ClvMFXu4iux9CupukZ0hBbM74AmRvGMLnzTTv1bIblW5Mmm5HhKxpzrfzxUToM+jeeaNh5ioBi5ibeFx8L/QRV5iuU6RC58+5y7dIA+uNijZDLOnPBjalA2wqWPQwjIeqkRyrY7ZAfttsqHccW0s7Q3lhHc2N41C8fPIAB6ZdksuVoe2YIwAVn/Bldb+ZuJQHfS3Ecsot0ByoyRAOMvvjiQnBkpY/9NbSNsuUcz44Gm6ygBDOhXs6/VWASb9wnI9JdReFYul0sE17X9HOrpEbAbz6zYFY9Unv1W3ePrHfMR1zan1bNvmtyB6AU+/MUIUettau8Wa4cTNp6Q4cwjgTD8BpmvVgsYlabHYSXLAU2JOM1K14b9JWgcfQt4= X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 76e1fe2f-293f-440b-e9ba-08db6b73fb02 X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Jun 2023 18:36:48.2827 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: xXa+FimbnnlL73M47Zg6VV6MuRf6N2xZCfe2bHq2pqUypzIGhCYCIbEz84yAO7/2yJyqL9BvuAoXqBOO9CNokMiWQpJ52EDAeBGql1viOn8= X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR03MB5416 On 05/06/2023 6:08 pm, Alejandro Vallejo wrote: > diff --git a/xen/arch/x86/cpu/microcode/core.c b/xen/arch/x86/cpu/microcode/core.c > index 892bcec901..4f60d96d98 100644 > --- a/xen/arch/x86/cpu/microcode/core.c > +++ b/xen/arch/x86/cpu/microcode/core.c > @@ -874,6 +874,21 @@ int __init early_microcode_init(unsigned long *module_map, > break; > } > > + if ( ucode_ops.collect_cpu_info ) > + ucode_ops.collect_cpu_info(); > + > + /* > + * This is a special case for virtualized Xen. I'm not sure this first sentence is useful.  I'd just start with "Some hypervisors ..." > Some hypervisors > + * deliberately report a microcode revision of -1 to mean that they > + * will not accept microcode updates. We take the hint and ignore the > + * microcode interface in that case. > + */ > + if ( this_cpu(cpu_sig).rev == ~0 ) > + { > + this_cpu(cpu_sig) = (struct cpu_signature){ 0 }; > + ucode_ops = (struct microcode_ops){ 0 }; I think we want to retain XENPF_get_ucode_revision's ability to see this ~0. As with the following patch, we want to retain the ability to query, so leave cpu_sig alone and only remove the apply_microcode hook.  In turn, that probably means this wants to be an else if in the next clause down. Moving it down also means you can drop the check for collect_cpu_info, because it's a mandatory hook if ucode_ops was filled in. ~Andrew > + } > + > if ( !ucode_ops.apply_microcode ) > { > printk(XENLOG_WARNING "Microcode loading not available\n"); From xen-devel-bounces@lists.xenproject.org Mon Jun 12 18:54:32 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 18:54:32 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547418.854795 (Exim 4.92) (envelope-from ) id 1q8mgC-0006bM-EA; Mon, 12 Jun 2023 18:54:16 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547418.854795; Mon, 12 Jun 2023 18:54:16 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8mgC-0006bF-At; Mon, 12 Jun 2023 18:54:16 +0000 Received: by outflank-mailman (input) for mailman id 547418; Mon, 12 Jun 2023 18:54:14 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8mgA-0006b9-Om for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 18:54:14 +0000 Received: from esa6.hc3370-68.iphmx.com (esa6.hc3370-68.iphmx.com [216.71.155.175]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 84c8cf2f-0952-11ee-b232-6b7b168915f2; Mon, 12 Jun 2023 20:54:12 +0200 (CEST) Received: from mail-mw2nam10lp2108.outbound.protection.outlook.com (HELO NAM10-MW2-obe.outbound.protection.outlook.com) ([104.47.55.108]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 12 Jun 2023 14:54:08 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by SA0PR03MB5388.namprd03.prod.outlook.com (2603:10b6:806:b7::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.38; Mon, 12 Jun 2023 18:54:06 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606%4]) with mapi id 15.20.6455.030; Mon, 12 Jun 2023 18:54:06 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 84c8cf2f-0952-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686596052; h=message-id:date:from:subject:to:cc:references: in-reply-to:content-transfer-encoding:mime-version; bh=XKJZos6xzHf2mUp5NU43EDeLA90vPUA4QJ5yeY80ucg=; b=hVJZ1PuNxHde1h42u/d/AEsU3jflTIdryUivIhgUaIGVHv+flcjydcmp XxFOYlIi0PJ/qPVfxWtHG9f3TLa1RKP/MWia7H7yy5UCPPwJmiZK27gQQ +LpALwLTxJV8u9ZH7Qw8QB5EUefRPXoqthS4gFTnkR7HTXxx2y3YZvQjY Q=; X-IronPort-RemoteIP: 104.47.55.108 X-IronPort-MID: 111834543 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:zDrMrKtsTEJYGXxB5G2c0ubDkOfnVJZfMUV32f8akzHdYApBsoF/q tZmKTrVP/6MYmShLYx/aIjkpBwBvcTXz4c2SgI9qSoyHylH+JbJXdiXEBz9bniYRiHhoOCLz O1FM4Wdc5pkJpP4jk3wWlQ0hSAkjclkfpKlVKiffHg3HVQ+IMsYoUoLs/YjhYJ1isSODQqIu Nfjy+XSI1bg0DNvWo4uw/vrRChH4rKq4Fv0gnRkPaoQ5AGHzSFPZH4iDfrZw0XQE9E88tGSH 44v/JnhlkvF8hEkDM+Sk7qTWiXmlZaLYGBiIlIPM0STqkAqSh4ai87XB9JFAatjsB2bnsgZ9 Tl4ncfYpTHFnEH7sL91vxFwS0mSNEDdkVPNCSDXXce7lyUqf5ZwqhnH4Y5f0YAwo45K7W9yG fMwdzcGUxOOjdKM8ej4cc4w1/t6b/jOM9ZK0p1g5Wmx4fcOZ7nmGv2PwOACmTA6i4ZJAOrUY NcfZXx3dhPcbhZTO1ARTpUjgOOvgXq5eDpdwL6XjfNvvy6Pk0osjf60aIq9lt+iHK25mm6xo G7c8nu/KRYdLNGFkhKO8262h/+JliT+MG4XPOThr64x3ADPnQT/DjUwSGb8j6mVi3eaBegYG WEqyzQDo5oboRnDot7VGkfQTGS/lhcYVthZFeEg70eTw67Q7gSeLmMASSNNLtchsaceVTEsk 1OEgd7tLThuq6GOD2KQ8K+OqjG/MjRTKnUNDQcGRwYY59jooKkokwnCCN1kFcadkdndCTz2h TeQo0ADa647iMcK0+C+4grBijf1/pzRFFdttkPQQ36v6R5/aMi9fYu05FPH7PFGaoGEUl2Gu 3tCkM+bhAwTMayweOW2aL1lNNmUCzytaVUwXXYH80EdygmQ IronPort-HdrOrdr: A9a23:GmWEy6gQOLiTKyacNgg9yYWxbXBQXioji2hC6mlwRA09TyX5ra 2TdZUgpHjJYVMqMk3I9uruBEDtex3hHNtOkOos1NSZLW3bUQmTTL2KhLGKq1Hd8m/Fh4xgPM 9bGJSWY+eAaGSS4/ya3OG5eexQvOVu8sqT9JjjJ6EGd3AVV0lihT0JezpyCidNNW977QJSLu vn2iJAzQDQAEg/X4CAKVQuefPMnNHPnIKOW296O/Z2gDP+9Q9B8dTBYmOl4is= X-Talos-CUID: =?us-ascii?q?9a23=3ADfARo2kQF8SzsGBrVqrHdJjNhrXXOSLax0rTLkW?= =?us-ascii?q?IM1czC4ayFQ6voeBVtsU7zg=3D=3D?= X-Talos-MUID: 9a23:7NEqVgbsAbxC4+BTkSLRwx8yGMZRx/qUT3Igr6QYlse2HHkl X-IronPort-AV: E=Sophos;i="6.00,236,1681185600"; d="scan'208";a="111834543" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=iNRDGejQqfdnbZgcDzarsgEmJYP7PnMWLvdFar38TNMsMEvEP8408T0U510LPYWXXcA/vaqk4i66Ynj3MLwqeOWtCQkemaNmkKSSr2GUDFWKeC1K+6DpDz4Eot4SlB5vCDDnLG2ZZeculTIKd5IKFOSC2ASyseMM7aLuehZHpoAY2ItGU0Z9HD4M3Sq8ZxkHLlKnC/mNs6i1mz78QdycBBw/i4Rc+gZbgyuRzEPDWKNdwJg7KRIVIhbPL/F20v1jjT2RsPuSolu9mCMyEaD4rkt16m+Pozci957nhxJWDqWOBkLTkvvQTH+neI/Wotn0JQIk5VuKSip7pwCLLe0Wsg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=a3Q7nhQtr694EgkD/pDvIC192oY21WJHh472Uk9wKv4=; b=HFm4HcaKCdHiwGng6UeHKSqzyJiLukHmaK4ykMqcU7X7GTr1SiRLaVSPKA9oobPZNM9F/uJ9Mpk/Zw4UQjQkrnOdUrUAsRrFUOrvPzwJToIPmdwK3cKVz0bgrpdj6K936zGv0fPfxDECpot0dENeWSsutpl52aiZjReK9lHrzr04hiMFVI51qlVyDX9il9nBw5TtFHLkWywvIQFSlGLmax7hEocA7rtuU/8NxxeqU8+N7WgNB49nx992lrjG4yfuDixgCyVh57p71hqqdgulGZEQ5sPGViigOGgEp2N7FpoEQeNYnfUowmKAvVKSfIie7duAOwCmSgg4jvoMIsfIkA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=a3Q7nhQtr694EgkD/pDvIC192oY21WJHh472Uk9wKv4=; b=f7LDzr/0RenETIxioJIsvf+flUwwhKXX+55k4bnzCWGyUqG3k7FpHhJES44zMuEczRJa1lYz1w1USay6fdbrN5Pe5uhAzrBu3jI72gPNYpUF578+0vpouH0qUwdMz4gEtYmIPbKP/lfAIVKv3mVnHpqcEKUim3GbC7dosHJy6Ms= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: Date: Mon, 12 Jun 2023 19:54:00 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 From: Andrew Cooper Subject: Re: [PATCH v2 4/4] x86/microcode: Prevent attempting updates if DIS_MCU_LOAD is set Content-Language: en-GB To: Alejandro Vallejo , Xen-devel Cc: Jan Beulich , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu References: <20230605170817.9913-1-alejandro.vallejo@cloud.com> <20230605170817.9913-5-alejandro.vallejo@cloud.com> In-Reply-To: <20230605170817.9913-5-alejandro.vallejo@cloud.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: AS4P190CA0018.EURP190.PROD.OUTLOOK.COM (2603:10a6:20b:5d0::11) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|SA0PR03MB5388:EE_ X-MS-Office365-Filtering-Correlation-Id: cf6dad16-0dfc-43e0-f3f6-08db6b766585 X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: CAL8fk0qwm+ORORbvKPQfEj+cmZgLwSTBAsGXQguN93yq/huIdn7wBuB6fPQoGtcU2MODIw51A4wf3aQE8UI5DNHDvRDV5L8hNBh/UNpFmShbZsOwWRbGKSzc2ZyQxESEzQiq+/7SRBXIViprNEw3KXu/4x8hpK8uQfBFO4SILHYri1+ULwUi+/YOPk3P9tpJgsjJO9xNGHhwAzvfq5FYuHbbrpkVg16KNDhlSQmkF+lhQbDyMwOBy1U5sZpTh3MK1JVCt6+nxocoKKfV0dZFA0gvJs+zAn1V+/8TYNOy5u/mkJRaXqrZVMTe5l+NFaBNakdl6s4cLXp9uVJmGoGnRx+LFoggTQEI8eToDfYqWD6hxzuQSjkJdzLTEaSbCyzaqOSBFsWk+4IqpcPMGZkMjKbPW9TpATDyNYYluh5nMZ2rxN9YFP3BheMc2mx2tp7J+nNVJYvNDFtEwqUlLoZ+cog7GSHfx6iZmZpENsQstJ68EPQpzccWIgfw5kKisHy+VT7nBi2NEvhg6vhGL+RdFpv2ac1Tagw7xwmk2IqaBbxiQPc+oNMwIVNX4UAg/ZX+0h5s8Qlapuw3w4EkBZ65vkao4Uy7WxRjg2FHYZh+L/+XD0SceSrEJ//8un4Cg0bC8KKnOq/SMSAC4HCrzHNpw== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(366004)(346002)(396003)(376002)(136003)(451199021)(6666004)(66946007)(31686004)(8676002)(8936002)(5660300002)(36756003)(4326008)(66556008)(66476007)(110136005)(54906003)(478600001)(6486002)(316002)(41300700001)(38100700002)(82960400001)(53546011)(6512007)(186003)(6506007)(31696002)(2616005)(83380400001)(86362001)(26005)(2906002)(15650500001)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?Mk1lRzQzTWNzYThObVJGREZNaEpYclpiVmJZcjZuNWZSMUJvbmhLdklZdSs1?= =?utf-8?B?MXhhdFhyN1JvZE5LTm1QYTNweEFBQzNaSVRCWlQyeFlIOTdoVzJrVCs5aWZI?= =?utf-8?B?cG9KVEg3KzZNeThBWDNXU1J2UXNFc2w0TjdKUGloaERSbkNRYkdaeGw0aUov?= =?utf-8?B?T29DaTZscDhueS9wbGducWhRajU5eDU5aVhJT2JsMnhWdk5LRWNmUXQzVEtE?= =?utf-8?B?NGZNVEh1M1NWYlFqYUx5SVZmS2JHdlZIZjJtaS9pU3BocnVSckM3UWdKVnZB?= =?utf-8?B?dnBWVGRsWWcrMEw1a1dVRUxRME9oR0lpQUJoT0dmenpkazBJby9LRUJBU1Jr?= =?utf-8?B?S2RleVRZRkJERTJWRllQOWlKaUw1Q28wRkgwVnpQZFp3bU5kOXhOckN5WUR4?= =?utf-8?B?cDdiaE1MU0g2R2VQQlpLR2FnNFZpRlptNE5Jd0VqZHlEQ0RkeiswdmxaV2JL?= =?utf-8?B?bE1OTHo2VzFzcWh5WEI5NDB0bVc0c1NWWjVUK3NONXE0OWUyd2NWTkhTcWtu?= =?utf-8?B?Ky9ISlFWM2pSckJWeENyeUJ1ejh6d1gwNFN5eHdma2lkT1dldmpGbThCNUpj?= =?utf-8?B?SWkvYUw3dVNmMU1xdzYvSEFlQStDc2xrdXA3NmVIbTFBSU52WnFsejB4Q09I?= =?utf-8?B?aXFYY2drU0pRMXRTdlN4OHBuZ2lnTnlIZzZDaE5Kb2EvWjY4LzFwZVlEZDcv?= =?utf-8?B?b1VLb3B1WGhoYUMvMzdKRVMyMEx1VHpUVjVGdHFuNVdjM25qOVptdUhhSk0r?= =?utf-8?B?d05tRi9McEF0VHoya2V1QVQybGR1d25PZ3lKMVBZN0VMNXlqQVkvWmlId1Q0?= =?utf-8?B?ditLR3g1aG1EK1loaWs1RGpqb1hsbVVBbUU3alZXeXJ5VGc4enh4RURIcDJm?= =?utf-8?B?UGJVSnJPWURaYTU5aU5CeWJFNmpzVDh4TG0yeXAwSXdZR3FwTVBHS0h6RDBM?= =?utf-8?B?cmwzdC9oVlpjUE52K1hLMG5GMXJpY00zWDF2cFc2NHpYWWo2blJYU0J0WHVr?= =?utf-8?B?VEREU1VtSjFQdXdwTTFZSjZMQXc3SnVVY1V4OXZlc1k2OWl6V2oxZXE5eE01?= =?utf-8?B?MCtrS2pyeEF0V2FwQXQ2SnRLRkNvVmhvd2VsWHFnSEZqREt4ZWlNNEY0Zith?= =?utf-8?B?NG85OElGaW5pczl3Q0lySVFQME1tZ3Y4dTRRTnlLZHFWWlJ3SDVvM1VRZEY5?= =?utf-8?B?M2g3ejRoVGh3T0F5dGxxM0F1c2x6N29SYStzYllnVW92L3RyK0hsNEF3MUZm?= =?utf-8?B?TXZHVmo3d1dySnR6d2hnUXM1YzJSM0N1Z0Z4OXpZWThjSUI3d2lJYkhEbnY0?= =?utf-8?B?Z3B2Vmpyb2hEcStycEpwVzQ5dy9qUSttTDlpNDNNN1o2U2RCMmJ6QURTeFJD?= =?utf-8?B?bm5INmVJZDAyRmJIa1BjR2VmWU9pTDkyYWt5TmxteS9VYUlZblhudHB5RFhY?= =?utf-8?B?bGFYUXl4UEVBYVdOS0dtandZSEs1UTFGR3p0ckZMSlBMSkdZOWxRVnF2STB0?= =?utf-8?B?amY0NWlkT3F4dXhNbFNocW9HcVdadG5lTDQvSTk4Rm41TzdwMUNZcStlNWph?= =?utf-8?B?SjBhWS90anpaUnVlYlVBN25jWGtoYU02b0VRR3Nkdmc2aDg3UFJIRElJOCts?= =?utf-8?B?SGZpa0tNaG9VMWdJRE9nV2tyTGRmV3NUaGg0V2p4OExxZWR3U3BKR2kwcWty?= =?utf-8?B?Zm9vYjVlUjBJSmszaU9LQi9OSERZejZET3RmcTBlam9tbEpVQUlsWHJiWVFl?= =?utf-8?B?NlpvODVIZUpjQ29hbXZGYTVFU0lZaWkwYnliVmxab3B1NTg2dXNQcDZXZzdw?= =?utf-8?B?dWh3cDBheTVCVGlYV2lSejNTeTU4eFJLZHBtV3Z2R3BFZW1xUE9DZDBTWHZm?= =?utf-8?B?WnltaFVxeEV0U2lOS09reGsxY1FYSG8wMGJlYnp0N25nRkdBQ0FrbG1LSTZX?= =?utf-8?B?d0JIUXJpU3VPTkxMVmh5cC9XNTk1Vnc2WXExUFFCV0xTdkc0T0N5a0x2Mk5V?= =?utf-8?B?ZW5Xcmp3VURtMlJJcStJYTZNWjlCUzlXU3BxeDV5eHJnTlhQd1l2dGxReWZQ?= =?utf-8?B?ME1TUEdkVkFNVUVCZ1dGM2xqdC90TktYOER6aFdYc3ZwWURDelVpVWpKK2dv?= =?utf-8?B?NWMwOUtQa0lXK1QzZFNvVlg4U3cvbExmS25GdDBISVdUQ2FuR2NZRnN6OXlS?= =?utf-8?B?WGc9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: vMa0qCvBBTFBXPkQsEoFtyDmZlP2/bFfYgXYtY1RoX2N00dtYWI2dufvg23TkgdaUz7pUv4oB9AQsNL7945/VbTjTYxuFQe2d6AMNfTifEUZGJ8BGbzGhJnt4VUvwlaFbARWwt+bYorpLYbm9ve2XRSiFZJ54ENYf98bZklERY3ATOMesysQTlffi9tRsOhZPmA88lhPQ01j5ZnxQ2ZhvdVu46OplLod/b8M/zLaE5RkslyR55upg83FCKAKbuPl5xErFJ6gW6ymZpfBMStyL95GlKlO9AzOnh1+dgsWkMWq3Nt/WDaUnbzSfjbwz2Z61tXhOmV3WvDT1j5Ok4acgIjZf/p1tewkWxyypAwkeqRXy3Ofo2Os6XhRUNY1/FIMI/vnsSVRM1jFxnfoZcI0yrmaW5U9WxMXyxSwFgpTBLEevXoUbpbAx/CyojCngSav7VmsUqG0NaFvrqCJHwjktSQOwGtKAR465ry/+YSmNcWXTHFbySaw6qP4y4ALxf7SST6EFVUwlRkFO6hT8mnc3syByZHA0qsYzyFFEYN/gItLQP8ykW0ZhDCc4+gSmgBTY1SSEVIt4LVeSG+SsfCoro5n2hlXID4XG/JLcYxSwKaBjhbLtXvp3wHRCxVrBYEB1lku2BOW8rnFXXKVAuZDDFYY8Sy9z9CoY/IdMwr/97wzrD+Xvkg1De+B1cS9xPp8rhmd1TCK/OeqqEYqmpaiSnyeb03HBUot6Fld59w0Hq6xtVwNYBlwYZthbLRdmD6W4K/OAfkb2K6sQ7210KUU3ZxpNDr0JNCpAd64o0IDPd+YzFHAxf1WFt3UdbCYUH9iE89WNlrgAA5WmK8NiBIHQLKWBR4IX0Uav3DMpZny2q0= X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: cf6dad16-0dfc-43e0-f3f6-08db6b766585 X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Jun 2023 18:54:06.0603 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: ETVxEh48+wH/t6Yiyusxq3R0ULIyhptlA/LFqvYUz7DAopKI5n4VSaWDOTo+wLdf14U+0a8xyKcMpLFw+I6KRDQUs3bv4pvXEZqsBgELEAY= X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA0PR03MB5388 On 05/06/2023 6:08 pm, Alejandro Vallejo wrote: > diff --git a/xen/arch/x86/cpu/microcode/core.c b/xen/arch/x86/cpu/microcode/core.c > index 4f60d96d98..a4c123118b 100644 > --- a/xen/arch/x86/cpu/microcode/core.c > +++ b/xen/arch/x86/cpu/microcode/core.c > @@ -871,6 +885,15 @@ int __init early_microcode_init(unsigned long *module_map, > * present. > */ > ucode_ops = intel_ucode_ops; > + > + /* > + * In the case where microcode updates are blocked by the > + * DIS_MCU_LOAD bit we can still read the microcode version even if > + * we can't change it. > + */ > + if ( !this_cpu_can_install_update() ) > + ucode_ops = (struct microcode_ops){ .collect_cpu_info = > + intel_ucode_ops.collect_cpu_info }; I don't see how this (the logic in this_cpu_can_install_update()) can work, as ... > break; > } > > @@ -900,6 +923,10 @@ int __init early_microcode_init(unsigned long *module_map, > if ( ucode_mod.mod_end || ucode_blob.size ) > rc = early_microcode_update_cpu(); > > + /* > + * We just updated microcode so we must reload the boot_cpu_data bits > + * we read before because they might be stale after the updata. > + */ > early_read_cpuid_7d0(); > > /* ... MSR_ARCH_CAPS is read out-of-context down here. In hindsight, I think swapping patch 2 and 3 might be wise.  The rev == ~0 case doesn't need any of the cpu_has_* shuffling, and it already starts to build up the if/else chain of cases where we decide to clobber the apply_microcode() hook. The call to this_cpu_can_install_update() should be lower down.  In principle it's not Intel-specific. ~Andrew From xen-devel-bounces@lists.xenproject.org Mon Jun 12 18:54:41 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 18:54:41 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547419.854806 (Exim 4.92) (envelope-from ) id 1q8mgR-0006uC-NX; Mon, 12 Jun 2023 18:54:31 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547419.854806; Mon, 12 Jun 2023 18:54:31 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8mgR-0006tq-I4; Mon, 12 Jun 2023 18:54:31 +0000 Received: by outflank-mailman (input) for mailman id 547419; Mon, 12 Jun 2023 18:54:29 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8mgP-0006tI-NO; Mon, 12 Jun 2023 18:54:29 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8mgP-00086o-Jw; Mon, 12 Jun 2023 18:54:29 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8mgP-0003Hb-1n; Mon, 12 Jun 2023 18:54:29 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q8mgP-0001Yx-1J; Mon, 12 Jun 2023 18:54:29 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=QbwklJYNfg4kJGS7awYSex4/9Raf8EalNxF5GUzsBA0=; b=oLztyLYtPU1/E/DJ06OwOuJRP9 CPTfhcBrCNEt6POTMRRniSlDjS79df+ubnmtWgZmhzzoBQBMM0GlaqalszwME6G9k1/ytpKNv9V1O AeV4XGHX3G87qyoit9dByB3kpUct1J7AfQVr21FPEwBhmeWqZlhtgbvtabC7Gz35xQwk=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [qemu-mainline test] 181393: regressions - FAIL X-Osstest-Failures: qemu-mainline:build-arm64-xsm:xen-build:fail:regression qemu-mainline:build-arm64:xen-build:fail:regression qemu-mainline:build-amd64:xen-build:fail:regression qemu-mainline:build-i386:xen-build:fail:regression qemu-mainline:build-amd64-xsm:xen-build:fail:regression qemu-mainline:build-i386-xsm:xen-build:fail:regression qemu-mainline:build-armhf:xen-build:fail:regression qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-i386:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:build-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:build-arm64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:build-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:build-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pygrub:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking X-Osstest-Versions-This: qemuu=fdd0df5340a8ebc8de88078387ebc85c5af7b40f X-Osstest-Versions-That: qemuu=6972ef1440a9d685482d78672620a7482f2bd09a From: osstest service owner Date: Mon, 12 Jun 2023 18:54:29 +0000 flight 181393 qemu-mainline real [real] http://logs.test-lab.xenproject.org/osstest/logs/181393/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-arm64-xsm 6 xen-build fail REGR. vs. 180691 build-arm64 6 xen-build fail REGR. vs. 180691 build-amd64 6 xen-build fail REGR. vs. 180691 build-i386 6 xen-build fail REGR. vs. 180691 build-amd64-xsm 6 xen-build fail REGR. vs. 180691 build-i386-xsm 6 xen-build fail REGR. vs. 180691 build-armhf 6 xen-build fail REGR. vs. 180691 Tests which did not succeed, but are not blocking: test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-xl-xsm 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-raw 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-xsm 1 build-check(1) blocked n/a test-arm64-arm64-xl 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit1 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit2 1 build-check(1) blocked n/a test-arm64-arm64-xl-thunderx 1 build-check(1) blocked n/a test-arm64-arm64-xl-vhd 1 build-check(1) blocked n/a test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a test-armhf-armhf-libvirt 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-qcow2 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-raw 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a test-armhf-armhf-xl-arndale 1 build-check(1) blocked n/a test-armhf-armhf-xl-multivcpu 1 build-check(1) blocked n/a test-armhf-armhf-xl-rtds 1 build-check(1) blocked n/a test-armhf-armhf-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-amd 1 build-check(1) blocked n/a test-amd64-i386-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-raw 1 build-check(1) blocked n/a test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-i386 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-amd64 1 build-check(1) blocked n/a test-amd64-coresched-i386-xl 1 build-check(1) blocked n/a test-amd64-coresched-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-xsm 1 build-check(1) blocked n/a build-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-shadow 1 build-check(1) blocked n/a test-amd64-amd64-xl-rtds 1 build-check(1) blocked n/a build-arm64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a build-armhf-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a build-i386-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-amd 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-pair 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-qcow2 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-vhd 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvshim 1 build-check(1) blocked n/a test-amd64-amd64-pair 1 build-check(1) blocked n/a test-amd64-amd64-pygrub 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-intel 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd11-amd64 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd12-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-multivcpu 1 build-check(1) blocked n/a test-amd64-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit1 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit1 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit2 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-intel 1 build-check(1) blocked n/a test-amd64-i386-xl 1 build-check(1) blocked n/a test-amd64-i386-xl-pvshim 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a version targeted for testing: qemuu fdd0df5340a8ebc8de88078387ebc85c5af7b40f baseline version: qemuu 6972ef1440a9d685482d78672620a7482f2bd09a Last test of basis 180691 2023-05-17 10:45:22 Z 26 days Failing since 180699 2023-05-18 07:21:24 Z 25 days 92 attempts Testing same since 181372 2023-06-10 21:38:57 Z 1 days 13 attempts ------------------------------------------------------------ People who touched revisions under test: Afonso Bordado Akihiko Odaki Akihiro Suda Alex Bennée Alex Williamson Alexander Bulekov Alexander Graf Alexander Ivanov Alistair Francis Anastasia Belova Andrew Jeffery Ani Sinha Ani Sinha Anthony PERARD Anton Johansson BALATON Zoltan Bastian Koppelmann Bernhard Beschow Bin Meng Brian Cain Brice Goglin Camilla Conte Carlos Santos Christian Schoenebeck Chuck Zmudzinski Cindy Lu Clément Chigot Cornelia Huck Cédric Le Goater Cédric Le Goater Daniel Henrique Barboza Daniel P. Berrangé Daniil Kovalev David Hildenbrand David Woodhouse Emanuele Giuseppe Esposito Enze Li Eric Auger Eric Blake Eric DeVolder Erico Nunes Eugenio Pérez Fabiano Rosas Fan Ni Fiona Ebner Francesco Cagnin Francisco Iglesias Frederic Barrat Gavin Shan Gregory Price Gregory Price Hanna Czenczek Hao Zeng Hawkins Jiawei Igor Mammedov Ilya Leoshkevich Ira Weiny Jagannathan Raman Jason Wang Jean-Louis Dupond Jean-Philippe Brucker Jiaxun Yang John Snow Jonathan Cameron Juan Quintela Kevin Wolf Laurent Vivier Lei Yang Leonardo Bras Maksim Davydov Marc-André Lureau Marcin Juszkiewicz Marco Liebel Mark Cave-Ayland Markus Armbruster Matheus Tavares Bernardino Mattias Nissler Mauro Matteo Cascella Max Fritz Michael S. Tsirkin Michael Tokarev Michal Privoznik Milan Zamazal Mostafa Saleh Nicholas Piggin Nicolas Saenz Julienne Niek Linnenbank Palmer Dabbelt Paolo Bonzini Peter Maydell Peter Xu Philippe Mathieu-Daudé qianfan Zhao Raghu H Rene Engel Richard Henderson Richard Purdie Ricky Zhou Ryan Wendland Sebastian Ott Sergio Lopez Sid Manning Song Gao Stefan Hajnoczi Stefano Garzarella Steve Sistare Taylor Simpson Thomas Huth Thomas Weißschuh timothee.cocault@gmail.com Timothée Cocault Tommy Wu Vikram Garhwal Viktor Prutyanov Vitaly Cheptsov Vivek Kasireddy Vladimir Sementsov-Ogievskiy Volker Rümelin Xinyu Li Zeng Hao Zhenyu Zhang Zhenzhong Duan Zhuojia Shen jobs: build-amd64-xsm fail build-arm64-xsm fail build-i386-xsm fail build-amd64 fail build-arm64 fail build-armhf fail build-i386 fail build-amd64-libvirt blocked build-arm64-libvirt blocked build-armhf-libvirt blocked build-i386-libvirt blocked build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl blocked test-amd64-coresched-amd64-xl blocked test-arm64-arm64-xl blocked test-armhf-armhf-xl blocked test-amd64-i386-xl blocked test-amd64-coresched-i386-xl blocked test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-i386-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-amd64-libvirt-xsm blocked test-arm64-arm64-libvirt-xsm blocked test-amd64-i386-libvirt-xsm blocked test-amd64-amd64-xl-xsm blocked test-arm64-arm64-xl-xsm blocked test-amd64-i386-xl-xsm blocked test-amd64-amd64-qemuu-nested-amd blocked test-amd64-amd64-xl-pvhv2-amd blocked test-amd64-i386-qemuu-rhel6hvm-amd blocked test-amd64-amd64-dom0pvh-xl-amd blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-freebsd10-amd64 blocked test-amd64-amd64-qemuu-freebsd11-amd64 blocked test-amd64-amd64-qemuu-freebsd12-amd64 blocked test-amd64-amd64-xl-qemuu-ovmf-amd64 blocked test-amd64-i386-xl-qemuu-ovmf-amd64 blocked test-amd64-amd64-xl-qemuu-win7-amd64 blocked test-amd64-i386-xl-qemuu-win7-amd64 blocked test-amd64-amd64-xl-qemuu-ws16-amd64 blocked test-amd64-i386-xl-qemuu-ws16-amd64 blocked test-armhf-armhf-xl-arndale blocked test-amd64-amd64-xl-credit1 blocked test-arm64-arm64-xl-credit1 blocked test-armhf-armhf-xl-credit1 blocked test-amd64-amd64-xl-credit2 blocked test-arm64-arm64-xl-credit2 blocked test-armhf-armhf-xl-credit2 blocked test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-freebsd10-i386 blocked test-amd64-amd64-qemuu-nested-intel blocked test-amd64-amd64-xl-pvhv2-intel blocked test-amd64-i386-qemuu-rhel6hvm-intel blocked test-amd64-amd64-dom0pvh-xl-intel blocked test-amd64-amd64-libvirt blocked test-armhf-armhf-libvirt blocked test-amd64-i386-libvirt blocked test-amd64-amd64-xl-multivcpu blocked test-armhf-armhf-xl-multivcpu blocked test-amd64-amd64-pair blocked test-amd64-i386-pair blocked test-amd64-amd64-libvirt-pair blocked test-amd64-i386-libvirt-pair blocked test-amd64-amd64-xl-pvshim blocked test-amd64-i386-xl-pvshim blocked test-amd64-amd64-pygrub blocked test-armhf-armhf-libvirt-qcow2 blocked test-amd64-amd64-xl-qcow2 blocked test-arm64-arm64-libvirt-raw blocked test-armhf-armhf-libvirt-raw blocked test-amd64-i386-libvirt-raw blocked test-amd64-amd64-xl-rtds blocked test-armhf-armhf-xl-rtds blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-amd64-xl-shadow blocked test-amd64-i386-xl-shadow blocked test-arm64-arm64-xl-thunderx blocked test-amd64-amd64-libvirt-vhd blocked test-arm64-arm64-xl-vhd blocked test-armhf-armhf-xl-vhd blocked test-amd64-i386-xl-vhd blocked ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 17052 lines long.) From xen-devel-bounces@lists.xenproject.org Mon Jun 12 19:28:25 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 19:28:25 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547432.854814 (Exim 4.92) (envelope-from ) id 1q8nD7-0002Lh-BF; Mon, 12 Jun 2023 19:28:17 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547432.854814; Mon, 12 Jun 2023 19:28:17 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8nD7-0002La-8g; Mon, 12 Jun 2023 19:28:17 +0000 Received: by outflank-mailman (input) for mailman id 547432; Mon, 12 Jun 2023 19:28:15 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8nD5-0002LU-DA for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 19:28:15 +0000 Received: from esa2.hc3370-68.iphmx.com (esa2.hc3370-68.iphmx.com [216.71.145.153]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 4384a7a6-0957-11ee-8611-37d641c3527e; Mon, 12 Jun 2023 21:28:11 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 4384a7a6-0957-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686598091; h=from:to:cc:subject:date:message-id:mime-version: content-transfer-encoding; bh=CjDa00JyUB3y6d9rXT65oqYEJu+SU2T9jQFj4rNQcYU=; b=ULCRH5NjhmzIqTqBwDg+ZghomNCUU4+Ey6u42LH3Ol0h99iGtNUUL7KI U7UXPxhnlmAQoPa4UHNME0d+absYlv7Ome0ZfR70MGFfJkepv9MKlhyyN PLZXwDxNOSJYbpgatTOb9AEYCVVhBJko4K9BcrESTs6RKpkwplN17dBxT 0=; Authentication-Results: esa2.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none X-SBRS: 4.0 X-MesageID: 112397782 X-Ironport-Server: esa2.hc3370-68.iphmx.com X-Remote-IP: 162.221.156.123 X-Policy: $RELAYED IronPort-Data: A9a23:8PUAq6nEfIvaGmnrcTOERHTo5gyHJkRdPkR7XQ2eYbSJt1+Wr1Gzt xIeUT2FPq6LMzDweYx3b97io0IH75aDxtViSVQ9+X0zESMWpZLJC+rCIxarNUt+DCFhoGFPt JxCN4aafKjYaleG+39B55C49SEUOZmgH+a6U6icfHgqH2eIcQ954Tp7gek1n4V0ttawBgKJq LvartbWfVSowFaYCEpNg064gE0p5KyaVA8w5ARkPqgV5QWGzRH5MbpETU2PByqgKmVrNrbSq 9brlNmR4m7f9hExPdKp+p6TnpoiG+O60aCm0xK6aoD66vRwjnVaPpUTbZLwXXx/mTSR9+2d/ f0W3XCGpaXFCYWX8AgVe0Ew/yiTpsSq8pefSZS0mZT7I0Er7xIAahihZa07FdRwxwp5PY1B3 cVFdmEdMR+Hu/mNmaq5Dcg0jdV+I/C+aevzulk4pd3YJfMvQJSFSKTW/95Imjw3g6iiH96HO ZBfM2A2Kk2dPVsWYAx/5JEWxY9EglHWdTFCpU3Tjq0w+2XJlyR60aT3McqTcduPLSlQth/B/ DmXoDupWHn2MvSwyj6Oziixl9bRvgn2c44WHYS7+t9D1Qj7Kms7V0RNCArTTeOCol6zXZdTJ lIZ/gIqrLMu7wq7Q9/lRRq6rXWY+BkGVLJ4Mcc39QWMwar8+BuCCy4PSTspQMMinN87Q3otz FDhoj/yLWUx6vvPEyvbr+rK62roYkD5MFPuewc9EFVU84bspL0otUvXTJFCSKWk09LMTGSYL y+xkMQuu1kCpZdVh/vhrQuc0m/ESovhFVBsuFiONo6xxkYgPdP+OdT1gbTOxawYRLt1WGVtq 5TtdyK2yOkVRa+AmyWWKAnmNOH4vq3VWNEwbLMGInXAy9hO0yT5FWyoyGsiTHqFy+5dEdMTX GfduBlK+LhYN2awYKl8buqZUpp6k/WxSYu+B6yEN7Kih6SdkifdpEmCgmbKhgjQfLUEy/lja f93j+7xZZrlNUiX5GXvHLpMuVPa7is/2XnSVfjGI+ePiNKjiIquYe5dajOmN7lphJ5oVS2Jq 76zwePWkUQAOAA/CwGLmbMuwacifCViWsqq+5E/myzqClMOJVzNwsT5mdsJE7GJVYwM/gsU1 hlRgnNl9Wc= IronPort-HdrOrdr: A9a23:SP9xSah7bgJ8SYx2OLrUd+7YIXBQXtYji2hC6mlwRA09TySZ// rBoB19726StN9xYgBFpTnuAsm9qB/nmaKdgrNhWItKPjOW21dARbsKheCJrgEIcxeOkNK1vp 0AT0ERMrLN5CBB/KTH3DU= X-Talos-CUID: 9a23:EPTn62//DxziW1Pke3qVv3dJRJE1LXLZ8Gzrele6TkcxQ6zIRmbFrQ== X-Talos-MUID: =?us-ascii?q?9a23=3AnhYzWw9AHjkWQ9uIW6BMwHSQf+hr56+SUl0cqIs?= =?us-ascii?q?lkcSvOSh5AjSRrR3iFw=3D=3D?= X-IronPort-AV: E=Sophos;i="6.00,236,1681185600"; d="scan'208";a="112397782" From: Andrew Cooper To: Xen-devel CC: Andrew Cooper , Jan Beulich , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Wei Liu Subject: [PATCH] x86/spec-ctrl: Fix the rendering of FB_CLEAR Date: Mon, 12 Jun 2023 20:28:05 +0100 Message-ID: <20230612192805.2904128-1-andrew.cooper3@citrix.com> X-Mailer: git-send-email 2.30.2 MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit FB_CLEAR is a read-only status bit, not a read-write control. Move it from "Hardware features" into "Hardware hints". Signed-off-by: Andrew Cooper --- CC: Jan Beulich CC: Roger Pau Monné CC: Wei Liu --- xen/arch/x86/spec_ctrl.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/xen/arch/x86/spec_ctrl.c b/xen/arch/x86/spec_ctrl.c index cd5ea6aa52d9..ec4bcdd97e04 100644 --- a/xen/arch/x86/spec_ctrl.c +++ b/xen/arch/x86/spec_ctrl.c @@ -409,7 +409,7 @@ static void __init print_details(enum ind_thunk thunk) * Hardware read-only information, stating immunity to certain issues, or * suggestions of which mitigation to use. */ - printk(" Hardware hints:%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s\n", + printk(" Hardware hints:%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s\n", (caps & ARCH_CAPS_RDCL_NO) ? " RDCL_NO" : "", (caps & ARCH_CAPS_EIBRS) ? " EIBRS" : "", (caps & ARCH_CAPS_RSBA) ? " RSBA" : "", @@ -422,6 +422,7 @@ static void __init print_details(enum ind_thunk thunk) (caps & ARCH_CAPS_SBDR_SSDP_NO) ? " SBDR_SSDP_NO" : "", (caps & ARCH_CAPS_FBSDP_NO) ? " FBSDP_NO" : "", (caps & ARCH_CAPS_PSDP_NO) ? " PSDP_NO" : "", + (caps & ARCH_CAPS_FB_CLEAR) ? " FB_CLEAR" : "", (caps & ARCH_CAPS_PBRSB_NO) ? " PBRSB_NO" : "", (e8b & cpufeat_mask(X86_FEATURE_IBRS_ALWAYS)) ? " IBRS_ALWAYS" : "", (e8b & cpufeat_mask(X86_FEATURE_STIBP_ALWAYS)) ? " STIBP_ALWAYS" : "", @@ -431,7 +432,7 @@ static void __init print_details(enum ind_thunk thunk) (e8b & cpufeat_mask(X86_FEATURE_IBPB_RET)) ? " IBPB_RET" : ""); /* Hardware features which need driving to mitigate issues. */ - printk(" Hardware features:%s%s%s%s%s%s%s%s%s%s%s%s\n", + printk(" Hardware features:%s%s%s%s%s%s%s%s%s%s%s\n", (e8b & cpufeat_mask(X86_FEATURE_IBPB)) || (_7d0 & cpufeat_mask(X86_FEATURE_IBRSB)) ? " IBPB" : "", (e8b & cpufeat_mask(X86_FEATURE_IBRS)) || @@ -447,7 +448,6 @@ static void __init print_details(enum ind_thunk thunk) (_7d0 & cpufeat_mask(X86_FEATURE_SRBDS_CTRL)) ? " SRBDS_CTRL" : "", (e8b & cpufeat_mask(X86_FEATURE_VIRT_SSBD)) ? " VIRT_SSBD" : "", (caps & ARCH_CAPS_TSX_CTRL) ? " TSX_CTRL" : "", - (caps & ARCH_CAPS_FB_CLEAR) ? " FB_CLEAR" : "", (caps & ARCH_CAPS_FB_CLEAR_CTRL) ? " FB_CLEAR_CTRL" : ""); /* Compiled-in support which pertains to mitigations. */ -- 2.30.2 From xen-devel-bounces@lists.xenproject.org Mon Jun 12 19:44:58 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 19:44:58 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547437.854825 (Exim 4.92) (envelope-from ) id 1q8nSz-0004pA-OD; Mon, 12 Jun 2023 19:44:41 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547437.854825; Mon, 12 Jun 2023 19:44:41 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8nSz-0004p3-K9; Mon, 12 Jun 2023 19:44:41 +0000 Received: by outflank-mailman (input) for mailman id 547437; Mon, 12 Jun 2023 19:44:40 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8nSy-0004ox-1q for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 19:44:40 +0000 Received: from sender3-of-o59.zoho.com (sender3-of-o59.zoho.com [136.143.184.59]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 8fb1e6e3-0959-11ee-b232-6b7b168915f2; Mon, 12 Jun 2023 21:44:37 +0200 (CEST) Received: from [10.10.1.82] (static-72-81-132-2.bltmmd.fios.verizon.net [72.81.132.2]) by mx.zohomail.com with SMTPS id 168659907296010.997791154433571; Mon, 12 Jun 2023 12:44:32 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 8fb1e6e3-0959-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; t=1686599074; cv=none; d=zohomail.com; s=zohoarc; b=e3TsX/VqN5IsEGH8feCKgXw2o+bqOReL2QrNFggGGLD081vx+rIFvS64QVjS4oq5f6OrNQCwpeMSQ1+S2nr67J7I4aqK136HB3biKUv0GNuMn+gVgoHb2QHVcD0YLlGtMhd2sNC2YXVYJ17DFN/B9lwKjq41VfbcCO0pDJcYK6E= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1686599074; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:MIME-Version:Message-ID:References:Subject:To; bh=dJqE0sJlYljjw4V/g9QK786r+d/iX2nD8sgbwxfPqmk=; b=grfBLYKmNBAC568xrTsgY559fRZOzTgjzoc6XNO02Mf1Gt9o9a5MbT0Di00dfMaxBXhkl42I930xkFNed08VSQC1KuCnMfDSpp11cgvPAA8/VjVyUhMgaPBBE3HDgmfnFN60vrIUJhMN6dNP2D8nVFeFuG+hfQzvqgGfGQXBn7g= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass header.i=apertussolutions.com; spf=pass smtp.mailfrom=dpsmith@apertussolutions.com; dmarc=pass header.from= DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; t=1686599074; s=zoho; d=apertussolutions.com; i=dpsmith@apertussolutions.com; h=Message-ID:Date:Date:MIME-Version:Subject:Subject:To:To:Cc:Cc:References:From:From:In-Reply-To:Content-Type:Content-Transfer-Encoding:Message-Id:Reply-To; bh=dJqE0sJlYljjw4V/g9QK786r+d/iX2nD8sgbwxfPqmk=; b=bJdmB2XwD5O/6MQPG5a/7bOV74vGBsZ7/iFEwLjmEYPEclqN8xPCeteAKxsHDkx3 7gXbK7CwugmhTHVky4u+RYt+7lLgtG07GnhcLgESzYvuRXmvHmPzYlKyhXnvfPtvCbG 4aYh6PBJkev15bUc1qT80/+a2eEqSr0VN2qukTGc= Message-ID: Date: Mon, 12 Jun 2023 15:44:30 -0400 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH 2/5] libxl: drop dead assignments to "ret" from libxl__domain_config_setdefault() Content-Language: en-US To: Jan Beulich , "xen-devel@lists.xenproject.org" Cc: Anthony Perard , Wei Liu , Juergen Gross References: <2dc50b58-a4e4-3e32-1876-94412b14b052@suse.com> <5eda17da-7185-9cf6-7e87-70da57aa0ebc@suse.com> From: "Daniel P. Smith" In-Reply-To: <5eda17da-7185-9cf6-7e87-70da57aa0ebc@suse.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-ZohoMailClient: External On 6/12/23 07:46, Jan Beulich wrote: > The variable needs to be properly set only on the error paths. > > Coverity ID: 1532311 > Fixes: ab4440112bec ("xl / libxl: push parsing of SSID and CPU pool ID down to libxl") > Signed-off-by: Jan Beulich Reviewed-by: Daniel P. Smith > --- > If XSM is disabled, is it really useful to issue the 2nd and 3rd calls > if the 1st yielded ENOSYS? Would you be okay with the calls staying if instead on the first invocation of any libxl_flask_* method, flask status was checked and stored in a variable that would then be checked by any subsequent calls and immediately returned if flask was not enabled? v/r, dps From xen-devel-bounces@lists.xenproject.org Mon Jun 12 20:10:12 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 20:10:12 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547442.854834 (Exim 4.92) (envelope-from ) id 1q8nrQ-0007Wo-Kb; Mon, 12 Jun 2023 20:09:56 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547442.854834; Mon, 12 Jun 2023 20:09:56 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8nrQ-0007Wh-Hp; Mon, 12 Jun 2023 20:09:56 +0000 Received: by outflank-mailman (input) for mailman id 547442; Mon, 12 Jun 2023 20:09:55 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8nrO-0007WZ-Ro for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 20:09:55 +0000 Received: from out5-smtp.messagingengine.com (out5-smtp.messagingengine.com [66.111.4.29]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 165167a4-095d-11ee-8611-37d641c3527e; Mon, 12 Jun 2023 22:09:51 +0200 (CEST) Received: from compute4.internal (compute4.nyi.internal [10.202.2.44]) by mailout.nyi.internal (Postfix) with ESMTP id 2BA5D5C00EF; Mon, 12 Jun 2023 16:09:50 -0400 (EDT) Received: from mailfrontend2 ([10.202.2.163]) by compute4.internal (MEProxy); Mon, 12 Jun 2023 16:09:50 -0400 Received: by mail.messagingengine.com (Postfix) with ESMTPA; Mon, 12 Jun 2023 16:09:49 -0400 (EDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 165167a4-095d-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= invisiblethingslab.com; h=cc:cc:content-type:content-type:date :date:from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:sender:subject:subject:to:to; s=fm1; t= 1686600590; x=1686686990; bh=w4PC2hcyqKw9l+AT+MtdSBx+TgTVoNSCI4D kMzt4z5s=; b=jdl26A0DE5l2x90+ua4kXg7pGubgakMq2isPOTpVZdrLGHMj1e2 sDxH+41Yp2Lrod1/dcaUeNaxVKXAWUN1aJgnW329YTyOkNlCqpYBjR6aZHd7wNfG Wh6/4AsYdK7paw2JRrEKjJ+F630O2Y8RflIlAQSLn1/5s9wXRIF6wkXcwx6vLRrW 2jv6XE0jZ62BMAqB/7Uhpjx825fIoLAcFa5W+PVHsJJSOqVBcPApF+2rfasO35gz skkrBJeKGextTviMcNlBv+hZu2KyK67PDw8fbfPdWnIEMZAP8peoD9crQmQK/5qA ImVQ7Ij2ryt8m9EZm2wwb+HwrVQGK204xPA== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-type:content-type:date:date :feedback-id:feedback-id:from:from:in-reply-to:in-reply-to :message-id:mime-version:references:reply-to:sender:subject :subject:to:to:x-me-proxy:x-me-proxy:x-me-sender:x-me-sender :x-sasl-enc; s=fm2; t=1686600590; x=1686686990; bh=w4PC2hcyqKw9l +AT+MtdSBx+TgTVoNSCI4DkMzt4z5s=; b=IAvEN0O/HamDP+V/Pw5Jz8zuFNxQC NYco3bA7tpdhF8MnBB2naxS4Gmk9oGjf8eV4qFvndL9XWfF/ljXbvOHeSgdmbaTX MyIFkV67wxpxPSlIG6WyNMBZDeSYGExJR/hQOgLt8pzdovd52kxQo2G6hJZKg1sW JijfcJFqtqdS7QLAqfNwi7jqvkCzRtUPHF1/Vf7xqI4s1lHEzDUAez5Mm0YDBqrS 9uy+W8afIQa2qH7usVudySG+pTAxFc1nd7ulZEMQFEkQJiBgC98urLCKB4m4X0lU nsA7mm30YNga7g7bdnsE0IICt5yX1gC2KVpUryjjGJ/+TvI3JP9CmhM5Q== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvhedrgeduhedgudeghecutefuodetggdotefrod ftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfgh necuuegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmd enucfjughrpeffhffvvefukfhfgggtuggjsehgtderredttdejnecuhfhrohhmpeffvghm ihcuofgrrhhivgcuqfgsvghnohhurhcuoeguvghmihesihhnvhhishhisghlvghthhhinh hgshhlrggsrdgtohhmqeenucggtffrrghtthgvrhhnpedvjeetgeekhfetudfhgfetffeg fffguddvgffhffeifeeikeektdehgeetheffleenucevlhhushhtvghrufhiiigvpedtne curfgrrhgrmhepmhgrihhlfhhrohhmpeguvghmihesihhnvhhishhisghlvghthhhinhhg shhlrggsrdgtohhm X-ME-Proxy: Feedback-ID: iac594737:Fastmail Date: Mon, 12 Jun 2023 16:09:44 -0400 From: Demi Marie Obenour To: Juergen Gross , Stefano Stabellini , Oleksandr Tyshchenko , Jan Beulich , Konrad Rzeszutek Wilk Cc: Xen developer discussion , Linux Kernel Mailing List , stable@vger.kernel.org Subject: Re: [PATCH] xen: speed up grant-table reclaim Message-ID: References: <20230610153232.1859-1-demi@invisiblethingslab.com> <85275900-6b6a-5391-a2a0-16704df3f00f@suse.com> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha512; protocol="application/pgp-signature"; boundary="JO1X+NAnjhRPpHa5" Content-Disposition: inline In-Reply-To: <85275900-6b6a-5391-a2a0-16704df3f00f@suse.com> --JO1X+NAnjhRPpHa5 Content-Type: text/plain; protected-headers=v1; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Date: Mon, 12 Jun 2023 16:09:44 -0400 From: Demi Marie Obenour To: Juergen Gross , Stefano Stabellini , Oleksandr Tyshchenko , Jan Beulich , Konrad Rzeszutek Wilk Cc: Xen developer discussion , Linux Kernel Mailing List , stable@vger.kernel.org Subject: Re: [PATCH] xen: speed up grant-table reclaim On Mon, Jun 12, 2023 at 08:27:59AM +0200, Juergen Gross wrote: > On 10.06.23 17:32, Demi Marie Obenour wrote: > > When a grant entry is still in use by the remote domain, Linux must put > > it on a deferred list. >=20 > This lacks quite some context. >=20 > The main problem is related to the grant not having been unmapped after > the end of a request, but the side granting the access is assuming this > should be the case. The GUI agent has relied on deferred grant reclaim for as long as it has existed. One could argue that doing so means that the agent is misusing gntalloc, but this is not documented anywhere. A better fix would be to use IOCTL_GNTDEV_SET_UNMAP_NOTIFY in the GUI daemon. > In general this means that the two sides implementing the protocol don't > agree how it should work, or that the protocol itself has a flaw. What would a better solution be? This is going to be particularly tricky with Wayland, as the wl_shm protocol makes absolutely no guarantees that compositors will promptly release the mapping and provides no way whatsoever for Wayland clients to know when this has happened. Relying on an LD_PRELOAD hack is not sustainable. > > Normally, this list is very short, because > > the PV network and block protocols expect the backend to unmap the grant > > first. >=20 > Normally the list is just empty. Only in very rare cases like premature > PV frontend module unloading it is expected to see cases of deferred > grant reclaims. In the case of a system using only properly-designed PV protocols implemented in kernel mode I agree. However, both libxenvchan and the Qubes GUI protocol are implemented in user mode and this means that if the frontend process (the one that uses gntalloc) crashes, deferred grant reclaims will occur. Worse, it is possible for the domain to use the grant in a PV protocol. If the PV backend driver then maps and unmaps the grant and then tells the frontend driver to reclaim it, but the backend userspace process (the one using gntdev) maps it before the frontend does reclaim it, the frontend will think the backend is trying to exploit XSA-396 and freeze the connection. > > However, Qubes OS's GUI protocol is subject to the constraints > > of the X Window System, and as such winds up with the frontend unmapping > > the window first. As a result, the list can grow very large, resulting > > in a massive memory leak and eventual VM freeze. >=20 > I do understand that it is difficult to change the protocol and/or > behavior after the fact, or that performance considerations are in the > way of doing so. Would the correct fix be to use IOCTL_GNTDEV_SET_UNMAP_NOTIFY? That would require that the agent either create a new event channel for each window or maintain a pool of event channels, but that should be doable. This still does not solve the problem of the frontend exiting unexpectedly, though. > > To partially solve this problem, make the number of entries that the VM > > will attempt to free at each iteration tunable. The default is still > > 10, but it can be overridden at compile-time (via Kconfig), boot-time > > (via a kernel command-line option), or runtime (via sysfs). >=20 > Is there really a need to have another Kconfig option for this? AFAICS > only QubesOS is affected by the problem you are trying to solve. I don't > see why you can't use the command-line option or sysfs node to set the > higher reclaim batch size. Fair. In practice, Qubes OS will need to use the sysfs node, since the other two do not work with in-VM kernels. > > Fixes: 569ca5b3f94c ("xen/gnttab: add deferred freeing logic") >=20 > I don't think this "Fixes:" tag is appropriate. The mentioned commit didn= 't > have a bug. You are adding new functionality on top of it. I=E2=80=99ll drop the "Fixes:" tag, but I will keep the "Cc: stable@vger.ke= rnel.org" as I believe this patch meets the following criterion for stable backport (from Documentation/process/stable-kernel-rules.rst): Serious issues as reported by a user of a distribution kernel may also be considered if they fix a notable performance or interactivity issue. > > Cc: stable@vger.kernel.org > > Signed-off-by: Demi Marie Obenour > > --- > > drivers/xen/Kconfig | 12 ++++++++++++ > > drivers/xen/grant-table.c | 40 ++++++++++++++++++++++++++++----------- > > 2 files changed, 41 insertions(+), 11 deletions(-) > >=20 > > diff --git a/drivers/xen/Kconfig b/drivers/xen/Kconfig > > index d5d7c402b65112b8592ba10bd3fd1732c26b771e..8f96e1359eb102d6420775b= 66e7805004a4ce9fe 100644 > > --- a/drivers/xen/Kconfig > > +++ b/drivers/xen/Kconfig > > @@ -65,6 +65,18 @@ config XEN_MEMORY_HOTPLUG_LIMIT > > This value is used to allocate enough space in internal > > tables needed for physical memory administration. > > +config XEN_GRANTS_RECLAIM_PER_ITERATION > > + int "Default number of grant entries to reclaim per iteration" > > + default 10 > > + range 10 4294967295 > > + help > > + This sets the default value for the grant_table.free_per_iteration > > + kernel command line option, which sets the number of grants that > > + Linux will try to reclaim at once. The default is 10, but > > + workloads that make heavy use of gntalloc will likely want to > > + increase this. The current value can be accessed and/or modified > > + via /sys/module/grant_table/parameters/free_per_iteration. > > + >=20 > Apart from the fact that I don't like adding a new Kconfig option, the he= lp > text is not telling the true story. Heavy use of gntalloc isn't to blame,= but > the fact that your PV-device implementation is based on the reclaim > functionality. TBH, someone not familiar with the grant reclaim will have= no > chance to select a sensible value based on your help text. That=E2=80=99s a good point. Qubes OS will need to use the sysfs value any= way in order to support in-VM kernels, so the Kconfig option is not really useful. > > config XEN_SCRUB_PAGES_DEFAULT > > bool "Scrub pages before returning them to system by default" > > depends on XEN_BALLOON > > diff --git a/drivers/xen/grant-table.c b/drivers/xen/grant-table.c > > index e1ec725c2819d4d5dede063eb00d86a6d52944c0..fa666aa6abc3e786dddc94f= 895641505ec0b23d8 100644 > > --- a/drivers/xen/grant-table.c > > +++ b/drivers/xen/grant-table.c > > @@ -498,14 +498,20 @@ static LIST_HEAD(deferred_list); > > static void gnttab_handle_deferred(struct timer_list *); > > static DEFINE_TIMER(deferred_timer, gnttab_handle_deferred); > > +static atomic64_t deferred_count; > > +static atomic64_t leaked_count; > > +static unsigned int free_per_iteration =3D CONFIG_XEN_GRANTS_RECLAIM_P= ER_ITERATION; > > + > > static void gnttab_handle_deferred(struct timer_list *unused) > > { > > - unsigned int nr =3D 10; > > + unsigned int nr =3D READ_ONCE(free_per_iteration); > > + const bool ignore_limit =3D nr =3D=3D 0; > > struct deferred_entry *first =3D NULL; > > unsigned long flags; > > + size_t freed =3D 0; > > spin_lock_irqsave(&gnttab_list_lock, flags); > > - while (nr--) { > > + while ((ignore_limit || nr--) && !list_empty(&deferred_list)) { > > struct deferred_entry *entry > > =3D list_first_entry(&deferred_list, > > struct deferred_entry, list); > > @@ -515,10 +521,13 @@ static void gnttab_handle_deferred(struct timer_l= ist *unused) > > list_del(&entry->list); > > spin_unlock_irqrestore(&gnttab_list_lock, flags); > > if (_gnttab_end_foreign_access_ref(entry->ref)) { > > + uint64_t ret =3D atomic64_sub_return(1, &deferred_count); > > put_free_entry(entry->ref); > > - pr_debug("freeing g.e. %#x (pfn %#lx)\n", > > - entry->ref, page_to_pfn(entry->page)); > > + pr_debug("freeing g.e. %#x (pfn %#lx), %llu remaining\n", > > + entry->ref, page_to_pfn(entry->page), > > + (unsigned long long)ret); >=20 > I'd prefer not to issue lots of prints (being it debug or info ones) if t= he > reclaim is expected to happen with a specific PV-device. >=20 > My preferred solution would be a per-device flag, but at least you should > switch to pr_*_ratelimited(). Same applies further down. What do you mean by =E2=80=9Cper-device flag=E2=80=9D? These grants are al= located by userspace using gntalloc, so there is no PV device on which the flag could be set. > > put_page(entry->page); > > + freed++; > > kfree(entry); > > entry =3D NULL; > > } else { > > @@ -530,21 +539,22 @@ static void gnttab_handle_deferred(struct timer_l= ist *unused) > > spin_lock_irqsave(&gnttab_list_lock, flags); > > if (entry) > > list_add_tail(&entry->list, &deferred_list); > > - else if (list_empty(&deferred_list)) > > - break; > > } > > - if (!list_empty(&deferred_list) && !timer_pending(&deferred_timer)) { > > + if (list_empty(&deferred_list)) > > + WARN_ON(atomic64_read(&deferred_count)); > > + else if (!timer_pending(&deferred_timer)) { > > deferred_timer.expires =3D jiffies + HZ; > > add_timer(&deferred_timer); > > } > > spin_unlock_irqrestore(&gnttab_list_lock, flags); > > + pr_debug("Freed %zu references", freed); > > } > > static void gnttab_add_deferred(grant_ref_t ref, struct page *page) > > { > > struct deferred_entry *entry; > > gfp_t gfp =3D (in_atomic() || irqs_disabled()) ? GFP_ATOMIC : GFP_KE= RNEL; > > - const char *what =3D KERN_WARNING "leaking"; > > + uint64_t leaked, deferred; > > entry =3D kmalloc(sizeof(*entry), gfp); > > if (!page) { > > @@ -567,12 +577,20 @@ static void gnttab_add_deferred(grant_ref_t ref, = struct page *page) > > add_timer(&deferred_timer); > > } > > spin_unlock_irqrestore(&gnttab_list_lock, flags); > > - what =3D KERN_DEBUG "deferring"; > > + deferred =3D atomic64_add_return(1, &deferred_count); > > + leaked =3D atomic64_read(&leaked_count); > > + pr_debug("deferring g.e. %#x (pfn %#lx) (total deferred %llu, total = leaked %llu)\n", > > + ref, page ? page_to_pfn(page) : -1, deferred, leaked); > > + } else { > > + deferred =3D atomic64_read(&deferred_count); > > + leaked =3D atomic64_add_return(1, &leaked_count); > > + pr_warn("leaking g.e. %#x (pfn %#lx) (total deferred %llu, total lea= ked %llu)\n", > > + ref, page ? page_to_pfn(page) : -1, deferred, leaked); > > } > > - printk("%s g.e. %#x (pfn %#lx)\n", > > - what, ref, page ? page_to_pfn(page) : -1); > > } > > +module_param(free_per_iteration, uint, 0600); > > + >=20 > Could you please move the parameter definition closer to the related > variable definition? Will fix in the next version. --=20 Sincerely, Demi Marie Obenour (she/her/hers) Invisible Things Lab --JO1X+NAnjhRPpHa5 Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQIzBAEBCgAdFiEEdodNnxM2uiJZBxxxsoi1X/+cIsEFAmSHe4wACgkQsoi1X/+c IsHOxA/+Opak4BIZx8LtC0pNIOfHOaiSQpa3+u9k+ZVT+XK8aOlq0O4/Xls4NOED adAuJYptDhGpvUvfvo4AKKXmYQNintguTaCKsXgU8v/cXkiQ8uGLszG6FxX/aDh8 fI22EloLk6rCB+WvmKrcqqmSl8yzruKFp3GrZgSjWZhYGrYydgJlrLC7jNCSyMl1 U6sws4V5bkpeL5Y0/7vmy8AEwUJmxLwRI82X1MwDtrpki9yeMGdAPEgTi3OudViD 856lLdxavipFsjQmNkcw40xUPtADG2RcP1sgMp2Qsai447XOehGEG8RRyQ/sNU0d 016EiDRQxuWlhdViD4P+VEOnKmKgrPOdpzQc1ISJ03xMDuKhK3Eo8dEgenuDlMRr SMXd7yHb6gxHW1gZtbH0D9PIMyT5U0pAHQT1VY084HZZahKdoHfnesQSB5eQjjuB Wy7gzIhEQci4g8xdJxkxzazjCildaJv4pDqATxLIi+Qw6LQQtwT7+0cxU6IuFiVy PZ15jLTlo/R4B12XtXaJnDvswZdAXm2Sx780Dpf3ptQpYauOnJsAkeKDXFvLSJzc PBe3IN/1m3t+eB/2u8rczZPHHrCQboG/rMzOjlRhK/0Jmi1YcitcIQS+VrJhSu7X vAsAe598NTYGWNxYIQMZR/491qBeiapCuWwxeyEqOdoEfVm4Q7U= =g7U9 -----END PGP SIGNATURE----- --JO1X+NAnjhRPpHa5-- From xen-devel-bounces@lists.xenproject.org Mon Jun 12 20:20:02 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 20:20:02 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547448.854846 (Exim 4.92) (envelope-from ) id 1q8o13-0000eQ-JE; Mon, 12 Jun 2023 20:19:53 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547448.854846; Mon, 12 Jun 2023 20:19:53 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8o13-0000eJ-Em; Mon, 12 Jun 2023 20:19:53 +0000 Received: by outflank-mailman (input) for mailman id 547448; Mon, 12 Jun 2023 20:19:52 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8o12-0000e9-U5; Mon, 12 Jun 2023 20:19:52 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8o12-0001i2-Oz; Mon, 12 Jun 2023 20:19:52 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8o12-0005SH-Bf; Mon, 12 Jun 2023 20:19:52 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q8o12-00040N-BE; Mon, 12 Jun 2023 20:19:52 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=z9mq52KSGCXE6w13IJCWDLULj73vHadTMXopSErAs68=; b=Z6TpLAOWYmd4IeHTUHodQgvDXt STUrfxpFSN3cNzkdercs5OQBs7719XRVMYxhyD11W15QdqkWOKAfN+bUyeGYxV728Im4N27uSTgpF U5YdXl3kiJ0m9JJ/shNdcyRtvFdxDBUTw1EtZpS3ouQdGWFxDllfADjbzerpTWacECmA=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [qemu-mainline test] 181394: regressions - FAIL X-Osstest-Failures: qemu-mainline:build-arm64-xsm:xen-build:fail:regression qemu-mainline:build-arm64:xen-build:fail:regression qemu-mainline:build-amd64:xen-build:fail:regression qemu-mainline:build-i386:xen-build:fail:regression qemu-mainline:build-amd64-xsm:xen-build:fail:regression qemu-mainline:build-i386-xsm:xen-build:fail:regression qemu-mainline:build-armhf:xen-build:fail:regression qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-i386:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:build-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:build-arm64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:build-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:build-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pygrub:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking X-Osstest-Versions-This: qemuu=fdd0df5340a8ebc8de88078387ebc85c5af7b40f X-Osstest-Versions-That: qemuu=6972ef1440a9d685482d78672620a7482f2bd09a From: osstest service owner Date: Mon, 12 Jun 2023 20:19:52 +0000 flight 181394 qemu-mainline real [real] http://logs.test-lab.xenproject.org/osstest/logs/181394/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-arm64-xsm 6 xen-build fail REGR. vs. 180691 build-arm64 6 xen-build fail REGR. vs. 180691 build-amd64 6 xen-build fail REGR. vs. 180691 build-i386 6 xen-build fail REGR. vs. 180691 build-amd64-xsm 6 xen-build fail REGR. vs. 180691 build-i386-xsm 6 xen-build fail REGR. vs. 180691 build-armhf 6 xen-build fail REGR. vs. 180691 Tests which did not succeed, but are not blocking: test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-xl-xsm 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-raw 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-xsm 1 build-check(1) blocked n/a test-arm64-arm64-xl 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit1 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit2 1 build-check(1) blocked n/a test-arm64-arm64-xl-thunderx 1 build-check(1) blocked n/a test-arm64-arm64-xl-vhd 1 build-check(1) blocked n/a test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a test-armhf-armhf-libvirt 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-qcow2 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-raw 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a test-armhf-armhf-xl-arndale 1 build-check(1) blocked n/a test-armhf-armhf-xl-multivcpu 1 build-check(1) blocked n/a test-armhf-armhf-xl-rtds 1 build-check(1) blocked n/a test-armhf-armhf-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-amd 1 build-check(1) blocked n/a test-amd64-i386-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-raw 1 build-check(1) blocked n/a test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-i386 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-amd64 1 build-check(1) blocked n/a test-amd64-coresched-i386-xl 1 build-check(1) blocked n/a test-amd64-coresched-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-xsm 1 build-check(1) blocked n/a build-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-shadow 1 build-check(1) blocked n/a test-amd64-amd64-xl-rtds 1 build-check(1) blocked n/a build-arm64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a build-armhf-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a build-i386-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-amd 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-pair 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-qcow2 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-vhd 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvshim 1 build-check(1) blocked n/a test-amd64-amd64-pair 1 build-check(1) blocked n/a test-amd64-amd64-pygrub 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-intel 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd11-amd64 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd12-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-multivcpu 1 build-check(1) blocked n/a test-amd64-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit1 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit1 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit2 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-intel 1 build-check(1) blocked n/a test-amd64-i386-xl 1 build-check(1) blocked n/a test-amd64-i386-xl-pvshim 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a version targeted for testing: qemuu fdd0df5340a8ebc8de88078387ebc85c5af7b40f baseline version: qemuu 6972ef1440a9d685482d78672620a7482f2bd09a Last test of basis 180691 2023-05-17 10:45:22 Z 26 days Failing since 180699 2023-05-18 07:21:24 Z 25 days 93 attempts Testing same since 181372 2023-06-10 21:38:57 Z 1 days 14 attempts ------------------------------------------------------------ People who touched revisions under test: Afonso Bordado Akihiko Odaki Akihiro Suda Alex Bennée Alex Williamson Alexander Bulekov Alexander Graf Alexander Ivanov Alistair Francis Anastasia Belova Andrew Jeffery Ani Sinha Ani Sinha Anthony PERARD Anton Johansson BALATON Zoltan Bastian Koppelmann Bernhard Beschow Bin Meng Brian Cain Brice Goglin Camilla Conte Carlos Santos Christian Schoenebeck Chuck Zmudzinski Cindy Lu Clément Chigot Cornelia Huck Cédric Le Goater Cédric Le Goater Daniel Henrique Barboza Daniel P. Berrangé Daniil Kovalev David Hildenbrand David Woodhouse Emanuele Giuseppe Esposito Enze Li Eric Auger Eric Blake Eric DeVolder Erico Nunes Eugenio Pérez Fabiano Rosas Fan Ni Fiona Ebner Francesco Cagnin Francisco Iglesias Frederic Barrat Gavin Shan Gregory Price Gregory Price Hanna Czenczek Hao Zeng Hawkins Jiawei Igor Mammedov Ilya Leoshkevich Ira Weiny Jagannathan Raman Jason Wang Jean-Louis Dupond Jean-Philippe Brucker Jiaxun Yang John Snow Jonathan Cameron Juan Quintela Kevin Wolf Laurent Vivier Lei Yang Leonardo Bras Maksim Davydov Marc-André Lureau Marcin Juszkiewicz Marco Liebel Mark Cave-Ayland Markus Armbruster Matheus Tavares Bernardino Mattias Nissler Mauro Matteo Cascella Max Fritz Michael S. Tsirkin Michael Tokarev Michal Privoznik Milan Zamazal Mostafa Saleh Nicholas Piggin Nicolas Saenz Julienne Niek Linnenbank Palmer Dabbelt Paolo Bonzini Peter Maydell Peter Xu Philippe Mathieu-Daudé qianfan Zhao Raghu H Rene Engel Richard Henderson Richard Purdie Ricky Zhou Ryan Wendland Sebastian Ott Sergio Lopez Sid Manning Song Gao Stefan Hajnoczi Stefano Garzarella Steve Sistare Taylor Simpson Thomas Huth Thomas Weißschuh timothee.cocault@gmail.com Timothée Cocault Tommy Wu Vikram Garhwal Viktor Prutyanov Vitaly Cheptsov Vivek Kasireddy Vladimir Sementsov-Ogievskiy Volker Rümelin Xinyu Li Zeng Hao Zhenyu Zhang Zhenzhong Duan Zhuojia Shen jobs: build-amd64-xsm fail build-arm64-xsm fail build-i386-xsm fail build-amd64 fail build-arm64 fail build-armhf fail build-i386 fail build-amd64-libvirt blocked build-arm64-libvirt blocked build-armhf-libvirt blocked build-i386-libvirt blocked build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl blocked test-amd64-coresched-amd64-xl blocked test-arm64-arm64-xl blocked test-armhf-armhf-xl blocked test-amd64-i386-xl blocked test-amd64-coresched-i386-xl blocked test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-i386-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-amd64-libvirt-xsm blocked test-arm64-arm64-libvirt-xsm blocked test-amd64-i386-libvirt-xsm blocked test-amd64-amd64-xl-xsm blocked test-arm64-arm64-xl-xsm blocked test-amd64-i386-xl-xsm blocked test-amd64-amd64-qemuu-nested-amd blocked test-amd64-amd64-xl-pvhv2-amd blocked test-amd64-i386-qemuu-rhel6hvm-amd blocked test-amd64-amd64-dom0pvh-xl-amd blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-freebsd10-amd64 blocked test-amd64-amd64-qemuu-freebsd11-amd64 blocked test-amd64-amd64-qemuu-freebsd12-amd64 blocked test-amd64-amd64-xl-qemuu-ovmf-amd64 blocked test-amd64-i386-xl-qemuu-ovmf-amd64 blocked test-amd64-amd64-xl-qemuu-win7-amd64 blocked test-amd64-i386-xl-qemuu-win7-amd64 blocked test-amd64-amd64-xl-qemuu-ws16-amd64 blocked test-amd64-i386-xl-qemuu-ws16-amd64 blocked test-armhf-armhf-xl-arndale blocked test-amd64-amd64-xl-credit1 blocked test-arm64-arm64-xl-credit1 blocked test-armhf-armhf-xl-credit1 blocked test-amd64-amd64-xl-credit2 blocked test-arm64-arm64-xl-credit2 blocked test-armhf-armhf-xl-credit2 blocked test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-freebsd10-i386 blocked test-amd64-amd64-qemuu-nested-intel blocked test-amd64-amd64-xl-pvhv2-intel blocked test-amd64-i386-qemuu-rhel6hvm-intel blocked test-amd64-amd64-dom0pvh-xl-intel blocked test-amd64-amd64-libvirt blocked test-armhf-armhf-libvirt blocked test-amd64-i386-libvirt blocked test-amd64-amd64-xl-multivcpu blocked test-armhf-armhf-xl-multivcpu blocked test-amd64-amd64-pair blocked test-amd64-i386-pair blocked test-amd64-amd64-libvirt-pair blocked test-amd64-i386-libvirt-pair blocked test-amd64-amd64-xl-pvshim blocked test-amd64-i386-xl-pvshim blocked test-amd64-amd64-pygrub blocked test-armhf-armhf-libvirt-qcow2 blocked test-amd64-amd64-xl-qcow2 blocked test-arm64-arm64-libvirt-raw blocked test-armhf-armhf-libvirt-raw blocked test-amd64-i386-libvirt-raw blocked test-amd64-amd64-xl-rtds blocked test-armhf-armhf-xl-rtds blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-amd64-xl-shadow blocked test-amd64-i386-xl-shadow blocked test-arm64-arm64-xl-thunderx blocked test-amd64-amd64-libvirt-vhd blocked test-arm64-arm64-xl-vhd blocked test-armhf-armhf-xl-vhd blocked test-amd64-i386-xl-vhd blocked ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 17052 lines long.) From xen-devel-bounces@lists.xenproject.org Mon Jun 12 20:20:02 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 20:20:02 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547452.854855 (Exim 4.92) (envelope-from ) id 1q8o1C-0000w9-0K; Mon, 12 Jun 2023 20:20:02 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547452.854855; Mon, 12 Jun 2023 20:20:01 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8o1B-0000vv-TP; Mon, 12 Jun 2023 20:20:01 +0000 Received: by outflank-mailman (input) for mailman id 547452; Mon, 12 Jun 2023 20:20:00 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8o1A-0000vF-Dm for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 20:20:00 +0000 Received: from out5-smtp.messagingengine.com (out5-smtp.messagingengine.com [66.111.4.29]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 801ea96d-095e-11ee-b232-6b7b168915f2; Mon, 12 Jun 2023 22:19:59 +0200 (CEST) Received: from compute4.internal (compute4.nyi.internal [10.202.2.44]) by mailout.nyi.internal (Postfix) with ESMTP id 4B2085C013E; Mon, 12 Jun 2023 16:19:57 -0400 (EDT) Received: from mailfrontend2 ([10.202.2.163]) by compute4.internal (MEProxy); Mon, 12 Jun 2023 16:19:57 -0400 Received: by mail.messagingengine.com (Postfix) with ESMTPA; Mon, 12 Jun 2023 16:19:55 -0400 (EDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 801ea96d-095e-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= invisiblethingslab.com; h=cc:cc:content-type:content-type:date :date:from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:sender:subject:subject:to:to; s=fm1; t= 1686601197; x=1686687597; bh=tA23MkpYIRU6TEDaHFbw3sUgPSUR1HWvRL3 42c0i0R0=; b=qIzfUO/VPI7ncyy18zo9Hvb13RZ/OYo/y0KdUKiEiC+ZsXQXtDL AsPVxshAdWikjSyrhUCV4wOSWKfGS1akCngInfgtu2xMiEmYT5gdexwumtjq4Gk/ aMdBUxp2Ul1OZTvarNkbiGfWvf3RW/oUftfxuyMPN4x+BN3H+aFj3e9W08cMdRQG Q977qNr0qzvzB8kdb5V8LzNW4F/a2Sg9QiBQaNdCDl7+6h2wPCBqZ3rXwmBkESEC br7X0oTWux3DBoYptHybdGzePx7vH/aWpSsznMHDd8i58R7rsFAfbgqWHEyg/ajK yp73FRSPJ/SJZbGm5PFswn7U7XZhM7bKTvw== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-type:content-type:date:date :feedback-id:feedback-id:from:from:in-reply-to:in-reply-to :message-id:mime-version:references:reply-to:sender:subject :subject:to:to:x-me-proxy:x-me-proxy:x-me-sender:x-me-sender :x-sasl-enc; s=fm2; t=1686601197; x=1686687597; bh=tA23MkpYIRU6T EDaHFbw3sUgPSUR1HWvRL342c0i0R0=; b=D9O27/co5sySAI0faxBxH84dGib7r HxlAqgjNmkJ8ceWWQsDwthEmF47in22xXsBoyOm18RlyelUHBvjGsTh0MNQVxJPu M5jR4/tOBPDjMyrsjhmXjaOh8S4zGjhz5zu0iqzWc81YMtbIM8tQXXJam9Ukt5YX cWP2TKRsmx1nrcr28rHNvEiAqh66SSBN5k+UtUvf53Z7JPC44X0dW9H9YRR9161S oxMEHMzYhglgK4vVX1Vu6ULAlQx0J0NBKJiuGlqP9DlEs8Ftm2jXrpBkIUhwsuV1 J8E4o2VzoGsj0NpdkmQ/IqWJjSRJVlIuGqLmeK4zmW6dKETl8Uu6aeubQ== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvhedrgeduhedgudegjecutefuodetggdotefrod ftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfgh necuuegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmd enucfjughrpeffhffvvefukfhfgggtuggjsehgtderredttddvnecuhfhrohhmpeffvghm ihcuofgrrhhivgcuqfgsvghnohhurhcuoeguvghmihesihhnvhhishhisghlvghthhhinh hgshhlrggsrdgtohhmqeenucggtffrrghtthgvrhhnpeduieelfeeutedvleehueetffej geejgeffkeelveeuleeukeejjeduffetjeekteenucevlhhushhtvghrufhiiigvpedtne curfgrrhgrmhepmhgrihhlfhhrohhmpeguvghmihesihhnvhhishhisghlvghthhhinhhg shhlrggsrdgtohhm X-ME-Proxy: Feedback-ID: iac594737:Fastmail Date: Mon, 12 Jun 2023 16:19:52 -0400 From: Demi Marie Obenour To: Vincenzo Frascino , Hans de Goede , Mauro Carvalho Chehab , Sakari Ailus , Greg Kroah-Hartman , Juergen Gross , Stefano Stabellini , Oleksandr Tyshchenko , Lee Jones , Andy Lutomirski , Thomas Gleixner , Petr Mladek , Steven Rostedt , Sergey Senozhatsky , Andy Shevchenko , Rasmus Villemoes Cc: linux-media@vger.kernel.org, linux-staging@lists.linux.dev, linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org Subject: Re: [PATCH v3 1/4] limits.h: add UCHAR_MAX, SCHAR_MAX, and SCHAR_MIN Message-ID: References: <20230610204044.3653-1-demi@invisiblethingslab.com> <20230610204044.3653-2-demi@invisiblethingslab.com> <4c01e43a-0275-04a0-ad9d-ee2f2bf24e1c@arm.com> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha512; protocol="application/pgp-signature"; boundary="NGoQOQpHk48pW9+A" Content-Disposition: inline In-Reply-To: <4c01e43a-0275-04a0-ad9d-ee2f2bf24e1c@arm.com> --NGoQOQpHk48pW9+A Content-Type: text/plain; protected-headers=v1; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Date: Mon, 12 Jun 2023 16:19:52 -0400 From: Demi Marie Obenour To: Vincenzo Frascino , Hans de Goede , Mauro Carvalho Chehab , Sakari Ailus , Greg Kroah-Hartman , Juergen Gross , Stefano Stabellini , Oleksandr Tyshchenko , Lee Jones , Andy Lutomirski , Thomas Gleixner , Petr Mladek , Steven Rostedt , Sergey Senozhatsky , Andy Shevchenko , Rasmus Villemoes Cc: linux-media@vger.kernel.org, linux-staging@lists.linux.dev, linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org Subject: Re: [PATCH v3 1/4] limits.h: add UCHAR_MAX, SCHAR_MAX, and SCHAR_MIN On Mon, Jun 12, 2023 at 05:31:51PM +0100, Vincenzo Frascino wrote: > Hi Demi, >=20 > On 6/10/23 21:40, Demi Marie Obenour wrote: > > Some drivers already defined these, and they will be used by sscanf() > > for overflow checks later. Also add SSIZE_MIN to limits.h, which will > > also be needed later. > >=20 > > Signed-off-by: Demi Marie Obenour > > --- > > .../media/atomisp/pci/hive_isp_css_include/platform_support.h | 1 - > > include/linux/limits.h | 1 + > > include/linux/mfd/wl1273-core.h | 3 --- > > include/vdso/limits.h | 3 +++ > > 4 files changed, 4 insertions(+), 4 deletions(-) > >=20 > ... >=20 > > diff --git a/include/vdso/limits.h b/include/vdso/limits.h > > index 0197888ad0e00b2f853d3f25ffa764f61cca7385..0cad0a2490e5efc194d8740= 25eb3e3b846a5c7b4 100644 > > --- a/include/vdso/limits.h > > +++ b/include/vdso/limits.h > > @@ -2,6 +2,9 @@ > > #ifndef __VDSO_LIMITS_H > > #define __VDSO_LIMITS_H > > =20 > > +#define UCHAR_MAX ((unsigned char)~0U) > > +#define SCHAR_MAX ((signed char)(UCHAR_MAX >> 1)) > > +#define SCHAR_MIN ((signed char)(-SCHAR_MAX - 1)) >=20 > Are you planning to use those definitions in the vDSO library? Nope. They were added here for consistency with the other *_{MIN,MAX} defines. > If not can you please define them in linux/limits.h, the vdso headers con= tain > only what is necessary for the vDSO library. Will fix in the next version. --=20 Sincerely, Demi Marie Obenour (she/her/hers) Invisible Things Lab --NGoQOQpHk48pW9+A Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQIzBAEBCgAdFiEEdodNnxM2uiJZBxxxsoi1X/+cIsEFAmSHfesACgkQsoi1X/+c IsEbjw/+LDz/ZrZ6HofU5Sjo8ZA8THCeJbaQEcjq0K1aUNrb9oa7qnZMECW3U/hh RM/bfptOB77BTB1Lr5IAlutr5P+O4SnNNTXG49nuBAQhBNo3tZVlf3te8L+aS1Ia kxBxACKwxxawCgVqOuXelC1PWkBZxOHSG+C4JLOAkqhoET4TZ8zcy2Tu+WFEoP6p IM04KKvF8j50qiG0UQ2gLl7gGDCevJ6CIPS9FlNcUD3g7cW1az9tYoXNbk/GFExq lzfEn+UQHsnw8scjuM9KvSYJU0LW3Ljl+AUgYxf1rJsGLWPHZDZELIXbSj8s6wv1 xDBCNUNRMJ+mxOgISUkViS2SzztCOfLMvFq33ei5Wozjr+p7hl6a5+pu8hZcljxW iLv5LXKLbITKzmPC+hqAacpnrlVIYLxzeceEHPc10/gbZoBRxZETIodIMQDBbUAr BKMDX9RMcBt0SRWbgfLJrW6pukQ9HQCNFdvGUJoIkowettr7SGU2n6R1rpwXOUKH pty750hJlL5Q7BTeQApd8xbNFm3dlT0p10fKbOssUstDkpLYu2jgqBKTf8GIfOPY p6/QjXZYTRXeCYy0uyeJrgXkW/q5GP6qAPF95WgJ0paVAym+OVD6FTBZTmOV1/z2 XQ/DQ9L1x5naaIaRMTt5J+Db1gmHxuNcT4Dbo9ua/9/TR/TlCD8= =dZlN -----END PGP SIGNATURE----- --NGoQOQpHk48pW9+A-- From xen-devel-bounces@lists.xenproject.org Mon Jun 12 20:21:49 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 20:21:49 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547463.854865 (Exim 4.92) (envelope-from ) id 1q8o2p-0002gQ-Cp; Mon, 12 Jun 2023 20:21:43 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547463.854865; Mon, 12 Jun 2023 20:21:43 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8o2p-0002gJ-9k; Mon, 12 Jun 2023 20:21:43 +0000 Received: by outflank-mailman (input) for mailman id 547463; Mon, 12 Jun 2023 20:21:42 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8o2o-0002gB-8j for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 20:21:42 +0000 Received: from sender4-of-o50.zoho.com (sender4-of-o50.zoho.com [136.143.188.50]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id bc7831ea-095e-11ee-b232-6b7b168915f2; Mon, 12 Jun 2023 22:21:40 +0200 (CEST) Received: from [10.10.1.82] (static-72-81-132-2.bltmmd.fios.verizon.net [72.81.132.2]) by mx.zohomail.com with SMTPS id 1686601295496237.13262427886923; Mon, 12 Jun 2023 13:21:35 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: bc7831ea-095e-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; t=1686601297; cv=none; d=zohomail.com; s=zohoarc; b=MsIaz2rxeL6pZdJ45Ryom0GwgIcoXVbSfH5DCljDKmKwP0mlReLbeT8YxQQMBHSOBamA/swHFYuanVika2Iuxj1EsQHhRdAHGligbB/x6mbLTa651N6RdfN+Ipz3w/9lkZHO5B2q8li+0D9rNFGU2CuojXC3R3pt4fAhwl5riKU= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1686601297; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:MIME-Version:Message-ID:References:Subject:To; bh=DRLMWcPGvZ49P5QA0gEudmVxH7CjUhROX7mSUjvmDoI=; b=KDBVoNWri6nkT9crzxfBXwREtwPmbogboDecWTp8ygmTQwOoOE0K70qAQ7HOLTm576ouAnm0LgQlEu+hGSJd6XRmMSmxV5ym2oTYyDMk/nPMCIPAyRwIh3o9pnTS+iBt3KRJOOaWRRK6eZE9dTCONt/+/hXjgdfC6JgPMspXnb4= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass header.i=apertussolutions.com; spf=pass smtp.mailfrom=dpsmith@apertussolutions.com; dmarc=pass header.from= DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; t=1686601297; s=zoho; d=apertussolutions.com; i=dpsmith@apertussolutions.com; h=Message-ID:Date:Date:MIME-Version:Subject:Subject:From:From:To:To:Cc:Cc:References:In-Reply-To:Content-Type:Content-Transfer-Encoding:Message-Id:Reply-To; bh=DRLMWcPGvZ49P5QA0gEudmVxH7CjUhROX7mSUjvmDoI=; b=bsQTOPVJIn22Hk39NTEzxobe80lasPZ2cDXoyYVh2hCjxcAl+fBXtVzVSbr4Kaw/ vL9Ci9sY7cV/9oKPOVOt0zGqsg+DOTrQKT4zzZQ5tms6ucVz4WaAGONeZOCmj+z1K6Q WvxgJlaYCccGorQU0yF+T+4pkFjFtHOT38d0ZXEs= Message-ID: Date: Mon, 12 Jun 2023 16:21:34 -0400 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH 2/5] libxl: drop dead assignments to "ret" from libxl__domain_config_setdefault() Content-Language: en-US From: "Daniel P. Smith" To: Jan Beulich , "xen-devel@lists.xenproject.org" Cc: Anthony Perard , Wei Liu , Juergen Gross References: <2dc50b58-a4e4-3e32-1876-94412b14b052@suse.com> <5eda17da-7185-9cf6-7e87-70da57aa0ebc@suse.com> In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-ZohoMailClient: External On 6/12/23 15:44, Daniel P. Smith wrote: > On 6/12/23 07:46, Jan Beulich wrote: >> The variable needs to be properly set only on the error paths. >> >> Coverity ID: 1532311 >> Fixes: ab4440112bec ("xl / libxl: push parsing of SSID and CPU pool ID >> down to libxl") >> Signed-off-by: Jan Beulich > > Reviewed-by: Daniel P. Smith > >> --- >> If XSM is disabled, is it really useful to issue the 2nd and 3rd calls >> if the 1st yielded ENOSYS? > > Would you be okay with the calls staying if instead on the first > invocation of any libxl_flask_* method, flask status was checked and > stored in a variable that would then be checked by any subsequent calls > and immediately returned if flask was not enabled? > > v/r, > dps Looking closer I realized there is a slight flaw in the logic here. The first call is accomplished via an xsm_op call and then assumes that FLASK is the only XSM that has implemented the xsm hook, xsm_op, and that the result will be an ENOSYS. If someone decides to implement an xsm_op hook for any of the existing XSM modules or introduces a new XSM module that has an xsm_op hook, the return likely would not be ENOSYS. I have often debated if there should be a way to query which XSM module was loaded for instances just like this. The question is what mechanism would be best to do so. v/r, dps From xen-devel-bounces@lists.xenproject.org Mon Jun 12 21:05:00 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 21:05:00 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547469.854884 (Exim 4.92) (envelope-from ) id 1q8oiZ-0007k5-Ra; Mon, 12 Jun 2023 21:04:51 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547469.854884; Mon, 12 Jun 2023 21:04:51 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8oiZ-0007jy-Ok; Mon, 12 Jun 2023 21:04:51 +0000 Received: by outflank-mailman (input) for mailman id 547469; Mon, 12 Jun 2023 21:04:49 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8oiX-0007V0-TC for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 21:04:49 +0000 Received: from mail-yw1-x112e.google.com (mail-yw1-x112e.google.com [2607:f8b0:4864:20::112e]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id c41a61e9-0964-11ee-b232-6b7b168915f2; Mon, 12 Jun 2023 23:04:49 +0200 (CEST) Received: by mail-yw1-x112e.google.com with SMTP id 00721157ae682-56d2b950447so15925127b3.2 for ; Mon, 12 Jun 2023 14:04:49 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::16]) by smtp.googlemail.com with ESMTPSA id s125-20020a817783000000b00569eb609458sm2757115ywc.81.2023.06.12.14.04.46 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 12 Jun 2023 14:04:47 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: c41a61e9-0964-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686603888; x=1689195888; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=bX969DJmm0QSNKJIBN0sjsA5M6jg25Ht5D0PDUGbnFg=; b=DHb+SR7KsGRi1DGfvFeb/cxlVpv7zXU0kX0me32XsqA75bRQ7Qg4ZCnHwXeAm+exma RyCRKTUKX0JKCLOqpLW0CXYvPaKDD9+dZndIAXIpXSKQZglxAQokLHyvAtkIDeRJVqHB 93y59nGI8Llned7VxveKPhJ65jNvn/1ZERJFDahHCyrGnH91U4DjxWNrantb6oBNpN6U mc695USGNTsgQHXOo9YrYcYMEcbqRFQyfPiEiGMLPB7dp4D7SFOp0ccqCy0RMalipiJb VM0Bf5j8094tpGlxI2i0lahWPWShioW25k+D4Vvon+EHV5/1d2e6qLRJOoGvyJt4DN4r Rfxg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686603888; x=1689195888; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=bX969DJmm0QSNKJIBN0sjsA5M6jg25Ht5D0PDUGbnFg=; b=hf+ry4ohKh1YYqOgaYsfBwCqU4w4ZwBVUSCsh8lj6uwlKfPGfGrv8CfqEbEqCUEpeJ e9D6hJY+FscJHW6gReZ1w3Gj2auKX1azISK9Fdz+0tWl1/RzIHtdwbfdjzbL5UHsmP60 8QgipNLtN5EOs4vWz20gCvZn/tEfGuY3UW1q6s+PtCjSsScmEJPErzcP0VRdk5b0PjRs kVf1rRrEDYMR72kfps6RniRKr0LbKeE7SHRkhb37/FLJpjYPJBbDVDziOp2f/LKCA5YJ bBLYNNBk9HRKLPMFsM4ifSfYwZi2lchLO+tmQiNiZKzv1Vv0hWYONRCci3UcAV3fX5mW QdpQ== X-Gm-Message-State: AC+VfDz/26CbHqc6wSuod1DfuifbYN9WgNnZWvE+AOiGz7rfz8CNflkF dQMrvlg8sSEiSi+CdLtsKQs= X-Google-Smtp-Source: ACHHUZ5kzgqtkXUhDflMob/cxrmRbtpI6j8wouGy2iBpxpeE5xKDHT022OIAglde1HGCV3lUDObTDw== X-Received: by 2002:a81:8406:0:b0:56d:858:7d04 with SMTP id u6-20020a818406000000b0056d08587d04mr5203603ywf.51.1686603888124; Mon, 12 Jun 2023 14:04:48 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" Subject: [PATCH v4 01/34] mm: Add PAGE_TYPE_OP folio functions Date: Mon, 12 Jun 2023 14:03:50 -0700 Message-Id: <20230612210423.18611-2-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230612210423.18611-1-vishal.moola@gmail.com> References: <20230612210423.18611-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit No folio equivalents for page type operations have been defined, so define them for later folio conversions. Also changes the Page##uname macros to take in const struct page* since we only read the memory here. Signed-off-by: Vishal Moola (Oracle) --- include/linux/page-flags.h | 20 ++++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) diff --git a/include/linux/page-flags.h b/include/linux/page-flags.h index 92a2063a0a23..e99a616b9bcd 100644 --- a/include/linux/page-flags.h +++ b/include/linux/page-flags.h @@ -908,6 +908,8 @@ static inline bool is_page_hwpoison(struct page *page) #define PageType(page, flag) \ ((page->page_type & (PAGE_TYPE_BASE | flag)) == PAGE_TYPE_BASE) +#define folio_test_type(folio, flag) \ + ((folio->page.page_type & (PAGE_TYPE_BASE | flag)) == PAGE_TYPE_BASE) static inline int page_type_has_type(unsigned int page_type) { @@ -920,20 +922,34 @@ static inline int page_has_type(struct page *page) } #define PAGE_TYPE_OPS(uname, lname) \ -static __always_inline int Page##uname(struct page *page) \ +static __always_inline int Page##uname(const struct page *page) \ { \ return PageType(page, PG_##lname); \ } \ +static __always_inline int folio_test_##lname(const struct folio *folio)\ +{ \ + return folio_test_type(folio, PG_##lname); \ +} \ static __always_inline void __SetPage##uname(struct page *page) \ { \ VM_BUG_ON_PAGE(!PageType(page, 0), page); \ page->page_type &= ~PG_##lname; \ } \ +static __always_inline void __folio_set_##lname(struct folio *folio) \ +{ \ + VM_BUG_ON_FOLIO(!folio_test_type(folio, 0), folio); \ + folio->page.page_type &= ~PG_##lname; \ +} \ static __always_inline void __ClearPage##uname(struct page *page) \ { \ VM_BUG_ON_PAGE(!Page##uname(page), page); \ page->page_type |= PG_##lname; \ -} +} \ +static __always_inline void __folio_clear_##lname(struct folio *folio) \ +{ \ + VM_BUG_ON_FOLIO(!folio_test_##lname(folio), folio); \ + folio->page.page_type |= PG_##lname; \ +} \ /* * PageBuddy() indicates that the page is free and in the buddy system -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 12 21:05:00 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 21:05:00 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547468.854874 (Exim 4.92) (envelope-from ) id 1q8oiY-0007VK-Ji; Mon, 12 Jun 2023 21:04:50 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547468.854874; Mon, 12 Jun 2023 21:04:50 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8oiY-0007VD-HG; Mon, 12 Jun 2023 21:04:50 +0000 Received: by outflank-mailman (input) for mailman id 547468; Mon, 12 Jun 2023 21:04:49 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8oiW-0007V0-TF for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 21:04:49 +0000 Received: from mail-yw1-x112c.google.com (mail-yw1-x112c.google.com [2607:f8b0:4864:20::112c]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id c2c34e9e-0964-11ee-b232-6b7b168915f2; Mon, 12 Jun 2023 23:04:47 +0200 (CEST) Received: by mail-yw1-x112c.google.com with SMTP id 00721157ae682-56d549284bbso2183907b3.0 for ; Mon, 12 Jun 2023 14:04:47 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::16]) by smtp.googlemail.com with ESMTPSA id s125-20020a817783000000b00569eb609458sm2757115ywc.81.2023.06.12.14.04.42 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 12 Jun 2023 14:04:45 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: c2c34e9e-0964-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686603886; x=1689195886; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=/6pdu881MOfYV84y7VWiKcwnRMuA78CxiUeG+tta1a0=; b=AczjUHTxusxNkOV7VOEz6qxIWLPwqleq1d3zEUXquo3Fhsoe1KG76B/gUTqOv/33pt hkZpJlkJ76KcjlL6x+InhPSbBDifa6NLLiEoUNkBXYArrGr7STcImjuc2VoeU9NxvC54 lebWddx8WzULKd+NI5c/Uram1goESu9pTxdzE6eH38FehdYYICJ+bMuQn+ugw7AsVbL/ Ov7eTgdYCG1Jz6kQBnoPdVHFrSKaQB695zJO8R2Ai20iELWwDV05kAAdjc5zIkHXp/c4 vxfy2MDQ46mM15p8VfpaN3wDCzp8jtDUPX+KA7Bdo1ZYDTCwrfTMRa5pYDNMk4zv//aF toWw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686603886; x=1689195886; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=/6pdu881MOfYV84y7VWiKcwnRMuA78CxiUeG+tta1a0=; b=VwQ2dtol+UDUKgQpud7QK3ry3S25OO1EZwtwvbyXNhvRn8Z9qGoa2h1TjMix37rvLC 2rzkN9+nfmloirK4W8fHz8HF6VmJklDiOVdIeBWtRY/Zp5hEmERF6ZcaGqWZ+GlpBdXr /VYwcttrRduh5zIaEC9/hKnNBWX+AKvokILdBq0D+/SGPBLQZu67mswzD3GYr1MGH1ZC 8K7WOB6KUD2ZdqBc7nqXbVoNAJORPq4cfzskteAjcI3UVPGCvTl2JaPrygb6CekTCJc+ Pnca7Erg0SYDUQk7UgCz/wDaq0r2SX/lZpVpG8ZymQlbnRrnRmuS7/89CjRJdvWMNYpT qiuQ== X-Gm-Message-State: AC+VfDxlXFEdDCp7VMRF5fHo3Et+7bOdHIzlfbHL+b5KVX07w19CEsGz AcbIVZCmvU8uCMPG3UgXIL0= X-Google-Smtp-Source: ACHHUZ4D/9qj+eGd5vw1y9G2WYuQd6/SQmHuMHA9sQRxkw6xMG4/k6MTzo+MEXSeyQMTFJpwz0FYww== X-Received: by 2002:a0d:cb83:0:b0:56d:4b3:c1cd with SMTP id n125-20020a0dcb83000000b0056d04b3c1cdmr6860688ywd.40.1686603885891; Mon, 12 Jun 2023 14:04:45 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" , Catalin Marinas , Huacai Chen , Geert Uytterhoeven , Thomas Bogendoerfer , Dinh Nguyen , Jonas Bonn , David Hildenbrand , Claudio Imbrenda , Paul Walmsley , "David S. Miller" , Richard Weinberger , Yoshinori Sato , Dave Hansen , Arnd Bergmann , Christophe Leroy Subject: [PATCH v4 00/34] Split ptdesc from struct page Date: Mon, 12 Jun 2023 14:03:49 -0700 Message-Id: <20230612210423.18611-1-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit The MM subsystem is trying to shrink struct page. This patchset introduces a memory descriptor for page table tracking - struct ptdesc. This patchset introduces ptdesc, splits ptdesc from struct page, and converts many callers of page table constructor/destructors to use ptdescs. Ptdesc is a foundation to further standardize page tables, and eventually allow for dynamic allocation of page tables independent of struct page. However, the use of pages for page table tracking is quite deeply ingrained and varied across archictectures, so there is still a lot of work to be done before that can happen. This is rebased on next-20230609. v4: Got more Acked-bys Fixed m68k compilation issue Dropped unnecessary casts Cleanup some fields in struct ptdesc Vishal Moola (Oracle) (34): mm: Add PAGE_TYPE_OP folio functions s390: Use _pt_s390_gaddr for gmap address tracking s390: Use pt_frag_refcount for pagetables pgtable: Create struct ptdesc mm: add utility functions for ptdesc mm: Convert pmd_pgtable_page() to pmd_ptdesc() mm: Convert ptlock_alloc() to use ptdescs mm: Convert ptlock_ptr() to use ptdescs mm: Convert pmd_ptlock_init() to use ptdescs mm: Convert ptlock_init() to use ptdescs mm: Convert pmd_ptlock_free() to use ptdescs mm: Convert ptlock_free() to use ptdescs mm: Create ptdesc equivalents for pgtable_{pte,pmd}_page_{ctor,dtor} powerpc: Convert various functions to use ptdescs x86: Convert various functions to use ptdescs s390: Convert various gmap functions to use ptdescs s390: Convert various pgalloc functions to use ptdescs mm: Remove page table members from struct page pgalloc: Convert various functions to use ptdescs arm: Convert various functions to use ptdescs arm64: Convert various functions to use ptdescs csky: Convert __pte_free_tlb() to use ptdescs hexagon: Convert __pte_free_tlb() to use ptdescs loongarch: Convert various functions to use ptdescs m68k: Convert various functions to use ptdescs mips: Convert various functions to use ptdescs nios2: Convert __pte_free_tlb() to use ptdescs openrisc: Convert __pte_free_tlb() to use ptdescs riscv: Convert alloc_{pmd, pte}_late() to use ptdescs sh: Convert pte_free_tlb() to use ptdescs sparc64: Convert various functions to use ptdescs sparc: Convert pgtable_pte_page_{ctor, dtor}() to ptdesc equivalents um: Convert {pmd, pte}_free_tlb() to use ptdescs mm: Remove pgtable_{pmd, pte}_page_{ctor, dtor}() wrappers Documentation/mm/split_page_table_lock.rst | 12 +- .../zh_CN/mm/split_page_table_lock.rst | 14 +- arch/arm/include/asm/tlb.h | 12 +- arch/arm/mm/mmu.c | 6 +- arch/arm64/include/asm/tlb.h | 14 +- arch/arm64/mm/mmu.c | 7 +- arch/csky/include/asm/pgalloc.h | 4 +- arch/hexagon/include/asm/pgalloc.h | 8 +- arch/loongarch/include/asm/pgalloc.h | 27 ++- arch/loongarch/mm/pgtable.c | 7 +- arch/m68k/include/asm/mcf_pgalloc.h | 41 ++-- arch/m68k/include/asm/sun3_pgalloc.h | 8 +- arch/m68k/mm/motorola.c | 4 +- arch/mips/include/asm/pgalloc.h | 31 +-- arch/mips/mm/pgtable.c | 7 +- arch/nios2/include/asm/pgalloc.h | 8 +- arch/openrisc/include/asm/pgalloc.h | 8 +- arch/powerpc/mm/book3s64/mmu_context.c | 10 +- arch/powerpc/mm/book3s64/pgtable.c | 32 +-- arch/powerpc/mm/pgtable-frag.c | 46 ++-- arch/riscv/include/asm/pgalloc.h | 8 +- arch/riscv/mm/init.c | 16 +- arch/s390/include/asm/pgalloc.h | 4 +- arch/s390/include/asm/tlb.h | 4 +- arch/s390/mm/gmap.c | 222 +++++++++++------- arch/s390/mm/pgalloc.c | 126 +++++----- arch/sh/include/asm/pgalloc.h | 9 +- arch/sparc/mm/init_64.c | 17 +- arch/sparc/mm/srmmu.c | 5 +- arch/um/include/asm/pgalloc.h | 18 +- arch/x86/mm/pgtable.c | 46 ++-- arch/x86/xen/mmu_pv.c | 2 +- include/asm-generic/pgalloc.h | 62 +++-- include/asm-generic/tlb.h | 11 + include/linux/mm.h | 155 ++++++++---- include/linux/mm_types.h | 14 -- include/linux/page-flags.h | 20 +- include/linux/pgtable.h | 60 +++++ mm/memory.c | 8 +- 39 files changed, 664 insertions(+), 449 deletions(-) -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 12 21:05:00 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 21:05:00 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547473.854915 (Exim 4.92) (envelope-from ) id 1q8oif-00005u-NF; Mon, 12 Jun 2023 21:04:57 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547473.854915; Mon, 12 Jun 2023 21:04:57 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8oif-00005f-JX; Mon, 12 Jun 2023 21:04:57 +0000 Received: by outflank-mailman (input) for mailman id 547473; Mon, 12 Jun 2023 21:04:56 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8oie-0007V0-Bh for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 21:04:56 +0000 Received: from mail-oa1-x30.google.com (mail-oa1-x30.google.com [2001:4860:4864:20::30]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id c7cb6e21-0964-11ee-b232-6b7b168915f2; Mon, 12 Jun 2023 23:04:55 +0200 (CEST) Received: by mail-oa1-x30.google.com with SMTP id 586e51a60fabf-1a68c02553aso1505325fac.0 for ; Mon, 12 Jun 2023 14:04:55 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::16]) by smtp.googlemail.com with ESMTPSA id s125-20020a817783000000b00569eb609458sm2757115ywc.81.2023.06.12.14.04.52 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 12 Jun 2023 14:04:54 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: c7cb6e21-0964-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686603894; x=1689195894; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=ljdqluisjsw1T2S09X4eHyFy2qx+wqxffRAjzd8Lr/M=; b=kXhs64xMe2DVLtVyKP8s5V9ZG7303479O9N/ToVEDXv1Gbm2sbmI/fCFK4uGChjd81 H6kVjd8TOmWAnbLRs4zxfvez/oEYXs2XwY0nLHoNXXHUhU8y7b7V442KEyA9t5B9q0Uq 4QLgvZ36Wl/+n0Pso7S7rQM028p+NfGQr9Yw1FiqoIIWOMPYwEq7/a7S5+qCahfgFwfk /tBZy6zuFg7ypVrVCmXYQ0dxFeVbbzBl8iAc+EUXGUcIwns5danLCJs4qv8DZQXG/O2x E2z06iVumBlee2giB3swtpcGSjTtcpgqJNat/RjdgRm72hK9QqxESqcl6ywJsUBEizO2 9nAQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686603894; x=1689195894; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=ljdqluisjsw1T2S09X4eHyFy2qx+wqxffRAjzd8Lr/M=; b=iyHgm3SBay552I5aaxczH3WHrHSuwX3hV0uEMtfvqmQlvUTjCsLCU0XXSqvTJ+MXAp fhivYcZ2PW4W/I4zBwYRyKMYPq5FKPS7IHpjDpV+Be0I1+qzNE6yda3wNVSjKI6eTdhL Z2GD0rKNa57ruSpcMHrzYZJ0KxbvDea7LvGtM077tHJByp8mf5dqbwFpmOAakHhOELl7 mkUPLFSCmGcWFd02YOHzuK39Sv85kyayBLqZyWkytPOmAnv+qXdOn3ctLRkJYXNkiW7+ 7nbS/YK4TCSHxJcwj/5H63Vf0UcEI9QrU26cioiGfCMrUR2fhrhGwmpjazpaNwVt9Kp+ LdRA== X-Gm-Message-State: AC+VfDxXuoyFJ1i0WPp1ZPbBx+NpKsLqxB0LpLMdSfBvew2+KNqG+ATO 3HMwgC75CyQ0NwhWRHPz2Nc= X-Google-Smtp-Source: ACHHUZ6qMtsAIJRXZ8Ey4kYlwwJ6x1NqBtbJDNBqsW5hbZHAQ7e3oNYyd6EZmRmybOQvyHBLsoezFA== X-Received: by 2002:a05:6871:3d1:b0:1a6:5818:f224 with SMTP id a17-20020a05687103d100b001a65818f224mr4571226oag.40.1686603894310; Mon, 12 Jun 2023 14:04:54 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" Subject: [PATCH v4 04/34] pgtable: Create struct ptdesc Date: Mon, 12 Jun 2023 14:03:53 -0700 Message-Id: <20230612210423.18611-5-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230612210423.18611-1-vishal.moola@gmail.com> References: <20230612210423.18611-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Currently, page table information is stored within struct page. As part of simplifying struct page, create struct ptdesc for page table information. Signed-off-by: Vishal Moola (Oracle) --- include/linux/pgtable.h | 51 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 51 insertions(+) diff --git a/include/linux/pgtable.h b/include/linux/pgtable.h index c5a51481bbb9..330de96ebfd6 100644 --- a/include/linux/pgtable.h +++ b/include/linux/pgtable.h @@ -975,6 +975,57 @@ static inline void ptep_modify_prot_commit(struct vm_area_struct *vma, #endif /* __HAVE_ARCH_PTEP_MODIFY_PROT_TRANSACTION */ #endif /* CONFIG_MMU */ + +/** + * struct ptdesc - Memory descriptor for page tables. + * @__page_flags: Same as page flags. Unused for page tables. + * @pt_list: List of used page tables. Used for s390 and x86. + * @_pt_pad_1: Padding that aliases with page's compound head. + * @pmd_huge_pte: Protected by ptdesc->ptl, used for THPs. + * @_pt_s390_gaddr: Aliases with page's mapping. Used for s390 gmap only. + * @pt_mm: Used for x86 pgds. + * @pt_frag_refcount: For fragmented page table tracking. Powerpc and s390 only. + * @ptl: Lock for the page table. + * + * This struct overlays struct page for now. Do not modify without a good + * understanding of the issues. + */ +struct ptdesc { + unsigned long __page_flags; + + union { + struct list_head pt_list; + struct { + unsigned long _pt_pad_1; + pgtable_t pmd_huge_pte; + }; + }; + unsigned long _pt_s390_gaddr; + + union { + struct mm_struct *pt_mm; + atomic_t pt_frag_refcount; + }; + +#if ALLOC_SPLIT_PTLOCKS + spinlock_t *ptl; +#else + spinlock_t ptl; +#endif +}; + +#define TABLE_MATCH(pg, pt) \ + static_assert(offsetof(struct page, pg) == offsetof(struct ptdesc, pt)) +TABLE_MATCH(flags, __page_flags); +TABLE_MATCH(compound_head, pt_list); +TABLE_MATCH(compound_head, _pt_pad_1); +TABLE_MATCH(pmd_huge_pte, pmd_huge_pte); +TABLE_MATCH(mapping, _pt_s390_gaddr); +TABLE_MATCH(pt_mm, pt_mm); +TABLE_MATCH(ptl, ptl); +#undef TABLE_MATCH +static_assert(sizeof(struct ptdesc) <= sizeof(struct page)); + /* * No-op macros that just return the current protection value. Defined here * because these macros can be used even if CONFIG_MMU is not defined. -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 12 21:05:00 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 21:05:00 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547470.854895 (Exim 4.92) (envelope-from ) id 1q8oid-00080B-6E; Mon, 12 Jun 2023 21:04:55 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547470.854895; Mon, 12 Jun 2023 21:04:55 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8oid-000802-2u; Mon, 12 Jun 2023 21:04:55 +0000 Received: by outflank-mailman (input) for mailman id 547470; Mon, 12 Jun 2023 21:04:54 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8oic-0007zJ-BC for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 21:04:54 +0000 Received: from mail-oi1-x232.google.com (mail-oi1-x232.google.com [2607:f8b0:4864:20::232]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id c58953eb-0964-11ee-8611-37d641c3527e; Mon, 12 Jun 2023 23:04:51 +0200 (CEST) Received: by mail-oi1-x232.google.com with SMTP id 5614622812f47-3909756b8b1so1846502b6e.1 for ; Mon, 12 Jun 2023 14:04:51 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::16]) by smtp.googlemail.com with ESMTPSA id s125-20020a817783000000b00569eb609458sm2757115ywc.81.2023.06.12.14.04.48 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 12 Jun 2023 14:04:49 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: c58953eb-0964-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686603890; x=1689195890; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=UyShpFpgVR6i39SmTUNSXyIOGqdGil6rpZQyINgvaNc=; b=lJvRaSYm1Jh5V4r7TYzrSMIRzNaBV5SN7nn3sPeT/jo1IMPwPzq9N3Yf3bBYoJxMZw v/s9XKD5xWNVmdGTxeR0fZvEchZcIS0T7ycmmKwo+IiJpZzms4PbxfB/j9f5cguGfKcu 19tKUcAlt5RAZhhxls5QyHPdh1rv4sFgWmQQk4hBjlJgClQsKjqjLXKzEmKGAt3IccFx bTspEu7foB7PWo5Hitw1Rj3gfCpK9XVe/YXdBcF4RWSMuHrTJZvwCj8dZahlFpbKNlhX XA60O6Ll3Y4mL+q/EvCYaosPT9jPlRTpVyELoVIXfZ/Aan4STf1XXuMIyJLW3RN7kUz5 rtxg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686603890; x=1689195890; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=UyShpFpgVR6i39SmTUNSXyIOGqdGil6rpZQyINgvaNc=; b=OVFGhoMgWe481Ksd/3wFD17xXmOe25WDj0C1laA86qjty0v2pt1jyDvEJ3cW2SRJRO 3uUTV+NaYAiBFY3gaIIxaVQL8yfNXvSgnvKl34QzbJ2hR2pRs6IzGu65MmjbHNXAgwf5 m1oWW2Eu1ytGfrdUKqg0Ty8XHhxusYQ/pWUlyM8X5faoTPXdjS04SsuVT8iVgkK0dTOq 01w7TEevZbujrO5kGKKaqPPtJsqDnMNpw0gDiXZofhoMhLP8zOr67sckaYAZ7+1olJvC SmgZHwtO0ZjwsXFn4iMPhIjJdbebjzO7uLw3LJD+jc7cQe+okMensFxWxyLQu+1JWrR2 HJeQ== X-Gm-Message-State: AC+VfDy6CWUxTxhWOirBFlqqk0SyM2GhJRKV1hrG8nSuJoCd/ZzM1f8q zeZ/jz5eO0h2y4InalU0Lyk= X-Google-Smtp-Source: ACHHUZ4VM+m5NUYLn8c0v/glSn3np4BOPgR5n2geFm21VkPM9gOZaCC7fKIMLbwOz31LgZ3ui1xNPA== X-Received: by 2002:a05:6358:cb27:b0:129:cce3:a876 with SMTP id gr39-20020a056358cb2700b00129cce3a876mr2647493rwb.19.1686603890151; Mon, 12 Jun 2023 14:04:50 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" , David Hildenbrand , Claudio Imbrenda Subject: [PATCH v4 02/34] s390: Use _pt_s390_gaddr for gmap address tracking Date: Mon, 12 Jun 2023 14:03:51 -0700 Message-Id: <20230612210423.18611-3-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230612210423.18611-1-vishal.moola@gmail.com> References: <20230612210423.18611-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit s390 uses page->index to keep track of page tables for the guest address space. In an attempt to consolidate the usage of page fields in s390, replace _pt_pad_2 with _pt_s390_gaddr to replace page->index in gmap. This will help with the splitting of struct ptdesc from struct page, as well as allow s390 to use _pt_frag_refcount for fragmented page table tracking. Since page->_pt_s390_gaddr aliases with mapping, ensure its set to NULL before freeing the pages as well. This also reverts commit 7e25de77bc5ea ("s390/mm: use pmd_pgtable_page() helper in __gmap_segment_gaddr()") which had s390 use pmd_pgtable_page() to get a gmap page table, as pmd_pgtable_page() should be used for more generic process page tables. Signed-off-by: Vishal Moola (Oracle) --- arch/s390/mm/gmap.c | 56 +++++++++++++++++++++++++++------------- include/linux/mm_types.h | 2 +- 2 files changed, 39 insertions(+), 19 deletions(-) diff --git a/arch/s390/mm/gmap.c b/arch/s390/mm/gmap.c index dc90d1eb0d55..81c683426b49 100644 --- a/arch/s390/mm/gmap.c +++ b/arch/s390/mm/gmap.c @@ -70,7 +70,7 @@ static struct gmap *gmap_alloc(unsigned long limit) page = alloc_pages(GFP_KERNEL_ACCOUNT, CRST_ALLOC_ORDER); if (!page) goto out_free; - page->index = 0; + page->_pt_s390_gaddr = 0; list_add(&page->lru, &gmap->crst_list); table = page_to_virt(page); crst_table_init(table, etype); @@ -187,16 +187,20 @@ static void gmap_free(struct gmap *gmap) if (!(gmap_is_shadow(gmap) && gmap->removed)) gmap_flush_tlb(gmap); /* Free all segment & region tables. */ - list_for_each_entry_safe(page, next, &gmap->crst_list, lru) + list_for_each_entry_safe(page, next, &gmap->crst_list, lru) { + page->_pt_s390_gaddr = 0; __free_pages(page, CRST_ALLOC_ORDER); + } gmap_radix_tree_free(&gmap->guest_to_host); gmap_radix_tree_free(&gmap->host_to_guest); /* Free additional data for a shadow gmap */ if (gmap_is_shadow(gmap)) { /* Free all page tables. */ - list_for_each_entry_safe(page, next, &gmap->pt_list, lru) + list_for_each_entry_safe(page, next, &gmap->pt_list, lru) { + page->_pt_s390_gaddr = 0; page_table_free_pgste(page); + } gmap_rmap_radix_tree_free(&gmap->host_to_rmap); /* Release reference to the parent */ gmap_put(gmap->parent); @@ -318,12 +322,14 @@ static int gmap_alloc_table(struct gmap *gmap, unsigned long *table, list_add(&page->lru, &gmap->crst_list); *table = __pa(new) | _REGION_ENTRY_LENGTH | (*table & _REGION_ENTRY_TYPE_MASK); - page->index = gaddr; + page->_pt_s390_gaddr = gaddr; page = NULL; } spin_unlock(&gmap->guest_table_lock); - if (page) + if (page) { + page->_pt_s390_gaddr = 0; __free_pages(page, CRST_ALLOC_ORDER); + } return 0; } @@ -336,12 +342,14 @@ static int gmap_alloc_table(struct gmap *gmap, unsigned long *table, static unsigned long __gmap_segment_gaddr(unsigned long *entry) { struct page *page; - unsigned long offset; + unsigned long offset, mask; offset = (unsigned long) entry / sizeof(unsigned long); offset = (offset & (PTRS_PER_PMD - 1)) * PMD_SIZE; - page = pmd_pgtable_page((pmd_t *) entry); - return page->index + offset; + mask = ~(PTRS_PER_PMD * sizeof(pmd_t) - 1); + page = virt_to_page((void *)((unsigned long) entry & mask)); + + return page->_pt_s390_gaddr + offset; } /** @@ -1351,6 +1359,7 @@ static void gmap_unshadow_pgt(struct gmap *sg, unsigned long raddr) /* Free page table */ page = phys_to_page(pgt); list_del(&page->lru); + page->_pt_s390_gaddr = 0; page_table_free_pgste(page); } @@ -1379,6 +1388,7 @@ static void __gmap_unshadow_sgt(struct gmap *sg, unsigned long raddr, /* Free page table */ page = phys_to_page(pgt); list_del(&page->lru); + page->_pt_s390_gaddr = 0; page_table_free_pgste(page); } } @@ -1409,6 +1419,7 @@ static void gmap_unshadow_sgt(struct gmap *sg, unsigned long raddr) /* Free segment table */ page = phys_to_page(sgt); list_del(&page->lru); + page->_pt_s390_gaddr = 0; __free_pages(page, CRST_ALLOC_ORDER); } @@ -1437,6 +1448,7 @@ static void __gmap_unshadow_r3t(struct gmap *sg, unsigned long raddr, /* Free segment table */ page = phys_to_page(sgt); list_del(&page->lru); + page->_pt_s390_gaddr = 0; __free_pages(page, CRST_ALLOC_ORDER); } } @@ -1467,6 +1479,7 @@ static void gmap_unshadow_r3t(struct gmap *sg, unsigned long raddr) /* Free region 3 table */ page = phys_to_page(r3t); list_del(&page->lru); + page->_pt_s390_gaddr = 0; __free_pages(page, CRST_ALLOC_ORDER); } @@ -1495,6 +1508,7 @@ static void __gmap_unshadow_r2t(struct gmap *sg, unsigned long raddr, /* Free region 3 table */ page = phys_to_page(r3t); list_del(&page->lru); + page->_pt_s390_gaddr = 0; __free_pages(page, CRST_ALLOC_ORDER); } } @@ -1525,6 +1539,7 @@ static void gmap_unshadow_r2t(struct gmap *sg, unsigned long raddr) /* Free region 2 table */ page = phys_to_page(r2t); list_del(&page->lru); + page->_pt_s390_gaddr = 0; __free_pages(page, CRST_ALLOC_ORDER); } @@ -1557,6 +1572,7 @@ static void __gmap_unshadow_r1t(struct gmap *sg, unsigned long raddr, /* Free region 2 table */ page = phys_to_page(r2t); list_del(&page->lru); + page->_pt_s390_gaddr = 0; __free_pages(page, CRST_ALLOC_ORDER); } } @@ -1762,9 +1778,9 @@ int gmap_shadow_r2t(struct gmap *sg, unsigned long saddr, unsigned long r2t, page = alloc_pages(GFP_KERNEL_ACCOUNT, CRST_ALLOC_ORDER); if (!page) return -ENOMEM; - page->index = r2t & _REGION_ENTRY_ORIGIN; + page->_pt_s390_gaddr = r2t & _REGION_ENTRY_ORIGIN; if (fake) - page->index |= GMAP_SHADOW_FAKE_TABLE; + page->_pt_s390_gaddr |= GMAP_SHADOW_FAKE_TABLE; s_r2t = page_to_phys(page); /* Install shadow region second table */ spin_lock(&sg->guest_table_lock); @@ -1814,6 +1830,7 @@ int gmap_shadow_r2t(struct gmap *sg, unsigned long saddr, unsigned long r2t, return rc; out_free: spin_unlock(&sg->guest_table_lock); + page->_pt_s390_gaddr = 0; __free_pages(page, CRST_ALLOC_ORDER); return rc; } @@ -1846,9 +1863,9 @@ int gmap_shadow_r3t(struct gmap *sg, unsigned long saddr, unsigned long r3t, page = alloc_pages(GFP_KERNEL_ACCOUNT, CRST_ALLOC_ORDER); if (!page) return -ENOMEM; - page->index = r3t & _REGION_ENTRY_ORIGIN; + page->_pt_s390_gaddr = r3t & _REGION_ENTRY_ORIGIN; if (fake) - page->index |= GMAP_SHADOW_FAKE_TABLE; + page->_pt_s390_gaddr |= GMAP_SHADOW_FAKE_TABLE; s_r3t = page_to_phys(page); /* Install shadow region second table */ spin_lock(&sg->guest_table_lock); @@ -1898,6 +1915,7 @@ int gmap_shadow_r3t(struct gmap *sg, unsigned long saddr, unsigned long r3t, return rc; out_free: spin_unlock(&sg->guest_table_lock); + page->_pt_s390_gaddr = 0; __free_pages(page, CRST_ALLOC_ORDER); return rc; } @@ -1930,9 +1948,9 @@ int gmap_shadow_sgt(struct gmap *sg, unsigned long saddr, unsigned long sgt, page = alloc_pages(GFP_KERNEL_ACCOUNT, CRST_ALLOC_ORDER); if (!page) return -ENOMEM; - page->index = sgt & _REGION_ENTRY_ORIGIN; + page->_pt_s390_gaddr = sgt & _REGION_ENTRY_ORIGIN; if (fake) - page->index |= GMAP_SHADOW_FAKE_TABLE; + page->_pt_s390_gaddr |= GMAP_SHADOW_FAKE_TABLE; s_sgt = page_to_phys(page); /* Install shadow region second table */ spin_lock(&sg->guest_table_lock); @@ -1982,6 +2000,7 @@ int gmap_shadow_sgt(struct gmap *sg, unsigned long saddr, unsigned long sgt, return rc; out_free: spin_unlock(&sg->guest_table_lock); + page->_pt_s390_gaddr = 0; __free_pages(page, CRST_ALLOC_ORDER); return rc; } @@ -2014,9 +2033,9 @@ int gmap_shadow_pgt_lookup(struct gmap *sg, unsigned long saddr, if (table && !(*table & _SEGMENT_ENTRY_INVALID)) { /* Shadow page tables are full pages (pte+pgste) */ page = pfn_to_page(*table >> PAGE_SHIFT); - *pgt = page->index & ~GMAP_SHADOW_FAKE_TABLE; + *pgt = page->_pt_s390_gaddr & ~GMAP_SHADOW_FAKE_TABLE; *dat_protection = !!(*table & _SEGMENT_ENTRY_PROTECT); - *fake = !!(page->index & GMAP_SHADOW_FAKE_TABLE); + *fake = !!(page->_pt_s390_gaddr & GMAP_SHADOW_FAKE_TABLE); rc = 0; } else { rc = -EAGAIN; @@ -2054,9 +2073,9 @@ int gmap_shadow_pgt(struct gmap *sg, unsigned long saddr, unsigned long pgt, page = page_table_alloc_pgste(sg->mm); if (!page) return -ENOMEM; - page->index = pgt & _SEGMENT_ENTRY_ORIGIN; + page->_pt_s390_gaddr = pgt & _SEGMENT_ENTRY_ORIGIN; if (fake) - page->index |= GMAP_SHADOW_FAKE_TABLE; + page->_pt_s390_gaddr |= GMAP_SHADOW_FAKE_TABLE; s_pgt = page_to_phys(page); /* Install shadow page table */ spin_lock(&sg->guest_table_lock); @@ -2101,6 +2120,7 @@ int gmap_shadow_pgt(struct gmap *sg, unsigned long saddr, unsigned long pgt, return rc; out_free: spin_unlock(&sg->guest_table_lock); + page->_pt_s390_gaddr = 0; page_table_free_pgste(page); return rc; diff --git a/include/linux/mm_types.h b/include/linux/mm_types.h index 306a3d1a0fa6..6161fe1ae5b8 100644 --- a/include/linux/mm_types.h +++ b/include/linux/mm_types.h @@ -144,7 +144,7 @@ struct page { struct { /* Page table pages */ unsigned long _pt_pad_1; /* compound_head */ pgtable_t pmd_huge_pte; /* protected by page->ptl */ - unsigned long _pt_pad_2; /* mapping */ + unsigned long _pt_s390_gaddr; /* mapping */ union { struct mm_struct *pt_mm; /* x86 pgds only */ atomic_t pt_frag_refcount; /* powerpc */ -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 12 21:05:00 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 21:05:00 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547474.854925 (Exim 4.92) (envelope-from ) id 1q8oii-0000RO-6z; Mon, 12 Jun 2023 21:05:00 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547474.854925; Mon, 12 Jun 2023 21:05:00 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8oii-0000R2-0u; Mon, 12 Jun 2023 21:05:00 +0000 Received: by outflank-mailman (input) for mailman id 547474; Mon, 12 Jun 2023 21:04:59 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8oih-0007zJ-6z for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 21:04:59 +0000 Received: from mail-yw1-x112f.google.com (mail-yw1-x112f.google.com [2607:f8b0:4864:20::112f]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id c8f4f3a1-0964-11ee-8611-37d641c3527e; Mon, 12 Jun 2023 23:04:57 +0200 (CEST) Received: by mail-yw1-x112f.google.com with SMTP id 00721157ae682-56cf6f4211aso27484727b3.1 for ; Mon, 12 Jun 2023 14:04:57 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::16]) by smtp.googlemail.com with ESMTPSA id s125-20020a817783000000b00569eb609458sm2757115ywc.81.2023.06.12.14.04.54 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 12 Jun 2023 14:04:56 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: c8f4f3a1-0964-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686603896; x=1689195896; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=E077vqoCqwl2/4qA0TBAbJoWDfL60BXPSkhV6wk0YUw=; b=XHctMnujg/tVWYZlPY5bXFqva6VGPkLJitWyIF76elwmA+hNNOuZMn/71AAwR57M4B IyANMxsihrptf60QavxQFQZEOMJ5l1UtI4amrfsMrJlTcE45HruYhKHkR8dOb9vrhLyj wIzwXKD/U1Tx8l72JrhxAelagPrpqFK0zX9Nfim+mlei1ja/Gf0amJMsRM2MRf8e/2kO jriFwnl1iYZ7eeVYPFopluumvDGCM2xgx/viKkcjIMlifM5jUo+p/eIAsvrxVoA3HaI3 YFqZHN+rA25I8RXwpppjrBbB0BFU/dJTiV2alRnBnUUYr7XItuIWUT0u54vTo5/wZ++Y E5Lw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686603896; x=1689195896; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=E077vqoCqwl2/4qA0TBAbJoWDfL60BXPSkhV6wk0YUw=; b=lX4aRlR9ggzNdtVbhJiLYhq6mH0Ez7KvlraCK8D6tz3BPEo9IMSj+ZnXEC0BlPVOxW 9x2sPIqeiR6lGSBaN8SdXBwSZjafvuLcOH/Y4/bmqOXz5xf87b1sJvlLodAe2tgTyVNR BM3DHh+hFWUBYlr0+8tjJLVW5RiReaqdyQWMfDiFd6gg43E0qUHO6dML1G1YbuaqaCw9 ZiFX0MdJnGnNb9s/IRmiQHv7ZesNru6Lyd53CNoKeHkiRiKJOlNtTQ4NRJXT99l3MKpO 7sqPh81tOiKvQP8paB8tekrCEjnZp4t80BR/ZmzUXTtSnoqjNlsySGH9du7f5Liiwciv B+qg== X-Gm-Message-State: AC+VfDxwg//logkQPYdK/7nnCk1BUWnNpBiTve1i5Bo58x0QG0GbVzgZ Jua6kB/XgwJYOmpcq8vT2hU= X-Google-Smtp-Source: ACHHUZ70i2xb+pf7p7UU1uRX9rQOpj1AFV5IFVauNZ+PMgf0TtCpACb/4dq/MMeKyVRgHZ+W6e2xbw== X-Received: by 2002:a81:5a55:0:b0:569:74f3:f3e1 with SMTP id o82-20020a815a55000000b0056974f3f3e1mr10812817ywb.0.1686603896297; Mon, 12 Jun 2023 14:04:56 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" Subject: [PATCH v4 05/34] mm: add utility functions for ptdesc Date: Mon, 12 Jun 2023 14:03:54 -0700 Message-Id: <20230612210423.18611-6-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230612210423.18611-1-vishal.moola@gmail.com> References: <20230612210423.18611-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Introduce utility functions setting the foundation for ptdescs. These will also assist in the splitting out of ptdesc from struct page. Functions that focus on the descriptor are prefixed with ptdesc_* while functions that focus on the pagetable are prefixed with pagetable_*. pagetable_alloc() is defined to allocate new ptdesc pages as compound pages. This is to standardize ptdescs by allowing for one allocation and one free function, in contrast to 2 allocation and 2 free functions. Signed-off-by: Vishal Moola (Oracle) --- include/asm-generic/tlb.h | 11 +++++++ include/linux/mm.h | 61 +++++++++++++++++++++++++++++++++++++++ include/linux/pgtable.h | 12 ++++++++ 3 files changed, 84 insertions(+) diff --git a/include/asm-generic/tlb.h b/include/asm-generic/tlb.h index b46617207c93..6bade9e0e799 100644 --- a/include/asm-generic/tlb.h +++ b/include/asm-generic/tlb.h @@ -481,6 +481,17 @@ static inline void tlb_remove_page(struct mmu_gather *tlb, struct page *page) return tlb_remove_page_size(tlb, page, PAGE_SIZE); } +static inline void tlb_remove_ptdesc(struct mmu_gather *tlb, void *pt) +{ + tlb_remove_table(tlb, pt); +} + +/* Like tlb_remove_ptdesc, but for page-like page directories. */ +static inline void tlb_remove_page_ptdesc(struct mmu_gather *tlb, struct ptdesc *pt) +{ + tlb_remove_page(tlb, ptdesc_page(pt)); +} + static inline void tlb_change_page_size(struct mmu_gather *tlb, unsigned int page_size) { diff --git a/include/linux/mm.h b/include/linux/mm.h index 0db09639dd2d..f184f1eba85d 100644 --- a/include/linux/mm.h +++ b/include/linux/mm.h @@ -2766,6 +2766,62 @@ static inline pmd_t *pmd_alloc(struct mm_struct *mm, pud_t *pud, unsigned long a } #endif /* CONFIG_MMU */ +static inline struct ptdesc *virt_to_ptdesc(const void *x) +{ + return page_ptdesc(virt_to_page(x)); +} + +static inline void *ptdesc_to_virt(const struct ptdesc *pt) +{ + return page_to_virt(ptdesc_page(pt)); +} + +static inline void *ptdesc_address(const struct ptdesc *pt) +{ + return folio_address(ptdesc_folio(pt)); +} + +static inline bool pagetable_is_reserved(struct ptdesc *pt) +{ + return folio_test_reserved(ptdesc_folio(pt)); +} + +/** + * pagetable_alloc - Allocate pagetables + * @gfp: GFP flags + * @order: desired pagetable order + * + * pagetable_alloc allocates a page table descriptor as well as all pages + * described by it. + * + * Return: The ptdesc describing the allocated page tables. + */ +static inline struct ptdesc *pagetable_alloc(gfp_t gfp, unsigned int order) +{ + struct page *page = alloc_pages(gfp | __GFP_COMP, order); + + return page_ptdesc(page); +} + +/** + * pagetable_free - Free pagetables + * @pt: The page table descriptor + * + * pagetable_free frees a page table descriptor as well as all page + * tables described by said ptdesc. + */ +static inline void pagetable_free(struct ptdesc *pt) +{ + struct page *page = ptdesc_page(pt); + + __free_pages(page, compound_order(page)); +} + +static inline void pagetable_clear(void *x) +{ + clear_page(x); +} + #if USE_SPLIT_PTE_PTLOCKS #if ALLOC_SPLIT_PTLOCKS void __init ptlock_cache_init(void); @@ -2992,6 +3048,11 @@ static inline void mark_page_reserved(struct page *page) adjust_managed_page_count(page, -1); } +static inline void free_reserved_ptdesc(struct ptdesc *pt) +{ + free_reserved_page(ptdesc_page(pt)); +} + /* * Default method to free all the __init memory into the buddy system. * The freed pages will be poisoned with pattern "poison" if it's within diff --git a/include/linux/pgtable.h b/include/linux/pgtable.h index 330de96ebfd6..c405f74d3875 100644 --- a/include/linux/pgtable.h +++ b/include/linux/pgtable.h @@ -1026,6 +1026,18 @@ TABLE_MATCH(ptl, ptl); #undef TABLE_MATCH static_assert(sizeof(struct ptdesc) <= sizeof(struct page)); +#define ptdesc_page(pt) (_Generic((pt), \ + const struct ptdesc *: (const struct page *)(pt), \ + struct ptdesc *: (struct page *)(pt))) + +#define ptdesc_folio(pt) (_Generic((pt), \ + const struct ptdesc *: (const struct folio *)(pt), \ + struct ptdesc *: (struct folio *)(pt))) + +#define page_ptdesc(p) (_Generic((p), \ + const struct page *: (const struct ptdesc *)(p), \ + struct page *: (struct ptdesc *)(p))) + /* * No-op macros that just return the current protection value. Defined here * because these macros can be used even if CONFIG_MMU is not defined. -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 12 21:05:01 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 21:05:01 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547471.854899 (Exim 4.92) (envelope-from ) id 1q8oid-00082y-G0; Mon, 12 Jun 2023 21:04:55 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547471.854899; Mon, 12 Jun 2023 21:04:55 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8oid-00082Y-AH; Mon, 12 Jun 2023 21:04:55 +0000 Received: by outflank-mailman (input) for mailman id 547471; Mon, 12 Jun 2023 21:04:54 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8oic-0007V0-I2 for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 21:04:54 +0000 Received: from mail-pf1-x433.google.com (mail-pf1-x433.google.com [2607:f8b0:4864:20::433]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id c6b32a9b-0964-11ee-b232-6b7b168915f2; Mon, 12 Jun 2023 23:04:53 +0200 (CEST) Received: by mail-pf1-x433.google.com with SMTP id d2e1a72fcca58-654f8b56807so4995474b3a.1 for ; Mon, 12 Jun 2023 14:04:53 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::16]) by smtp.googlemail.com with ESMTPSA id s125-20020a817783000000b00569eb609458sm2757115ywc.81.2023.06.12.14.04.50 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 12 Jun 2023 14:04:51 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: c6b32a9b-0964-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686603892; x=1689195892; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=V5BTNYEJrMvEdgPHE9qghL8qlsXVOst+iBLMKLVFrSI=; b=NyvAW5xcJ/1RwE9QmSiFJ+QoLspe4N8bc4rT8FqwnwCneI2MtPt+zR2zPpLqApF4NL U1okS2jcBv5boWFVjS3ZWFOO57AXCrm8924Yzy4TWhUVvSSQaBnBXCQN1FwgNux+a5wh DsFZHudMr3gw7SxF9mDXLpRFyJexdPdYzbIm/1S5JJIGYV9GOI+NthRwDASTis3Fze4p V6ixmPm9cBdQ1cAVmEM6h/YPAwNhp4idZwgbxQNshhMy1ADo1GloFQRBJ0Q5sP9FFktv iWvvuohJvJZTnnhPK8vd97XGBVPC/qP/sL8+3CeVXYInAaBFtRMw40MKTPvSoWZiFPoO gspg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686603892; x=1689195892; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=V5BTNYEJrMvEdgPHE9qghL8qlsXVOst+iBLMKLVFrSI=; b=WlkFP7Vkki2squNmZrbeCJmRsbOL3EoPfXWHr5+bl3E4emkh+WZR1GySDlRh2/8O7Y prTpE4OZ9vdUd7zqDpuCilx61fBm8431XuXsZTSfJ2i6x4QtL+3d7kjfD+v9AmZNklIL JbWTNBTVdtXzHan0vxHiODOIhvEQb6VP9S+NFfzjXyI26cjJMkbOltKsiZ8AWDYVpNdk wuOr9YGn/YK76/Zgn7MEjBixUK1U42fN/2ttud6B0nOXmuY13Mj/AwsDOUn7AeZAgz5n YIhxpICzYQajhqs9uvGetHhfJ98ozZI3XYp3vRg9Ex8cv+oKIy3uu9e8DgKyzchOFEHj ZqfA== X-Gm-Message-State: AC+VfDyHi63XnwAQMV6ObVIzbKW4deDGUlRLBtbH2UVUg9h5ukjOWhz0 2sUTr9Lkb43e0q+8RvEG7t8= X-Google-Smtp-Source: ACHHUZ7txlwQKhNIkJlSWkpy4O9/GHkXq934dfDZR66J7e8THGAZbbGg45zrTEyJTMim3NRAIaYTPA== X-Received: by 2002:a05:6a20:e617:b0:10c:2349:459e with SMTP id my23-20020a056a20e61700b0010c2349459emr10483492pzb.10.1686603892270; Mon, 12 Jun 2023 14:04:52 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" , David Hildenbrand , Claudio Imbrenda Subject: [PATCH v4 03/34] s390: Use pt_frag_refcount for pagetables Date: Mon, 12 Jun 2023 14:03:52 -0700 Message-Id: <20230612210423.18611-4-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230612210423.18611-1-vishal.moola@gmail.com> References: <20230612210423.18611-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit s390 currently uses _refcount to identify fragmented page tables. The page table struct already has a member pt_frag_refcount used by powerpc, so have s390 use that instead of the _refcount field as well. This improves the safety for _refcount and the page table tracking. This also allows us to simplify the tracking since we can once again use the lower byte of pt_frag_refcount instead of the upper byte of _refcount. Signed-off-by: Vishal Moola (Oracle) --- arch/s390/mm/pgalloc.c | 38 +++++++++++++++----------------------- 1 file changed, 15 insertions(+), 23 deletions(-) diff --git a/arch/s390/mm/pgalloc.c b/arch/s390/mm/pgalloc.c index 66ab68db9842..6b99932abc66 100644 --- a/arch/s390/mm/pgalloc.c +++ b/arch/s390/mm/pgalloc.c @@ -182,20 +182,17 @@ void page_table_free_pgste(struct page *page) * As follows from the above, no unallocated or fully allocated parent * pages are contained in mm_context_t::pgtable_list. * - * The upper byte (bits 24-31) of the parent page _refcount is used + * The lower byte (bits 0-7) of the parent page pt_frag_refcount is used * for tracking contained 2KB-pgtables and has the following format: * * PP AA - * 01234567 upper byte (bits 24-31) of struct page::_refcount + * 01234567 upper byte (bits 0-7) of struct page::pt_frag_refcount * || || * || |+--- upper 2KB-pgtable is allocated * || +---- lower 2KB-pgtable is allocated * |+------- upper 2KB-pgtable is pending for removal * +-------- lower 2KB-pgtable is pending for removal * - * (See commit 620b4e903179 ("s390: use _refcount for pgtables") on why - * using _refcount is possible). - * * When 2KB-pgtable is allocated the corresponding AA bit is set to 1. * The parent page is either: * - added to mm_context_t::pgtable_list in case the second half of the @@ -243,11 +240,12 @@ unsigned long *page_table_alloc(struct mm_struct *mm) if (!list_empty(&mm->context.pgtable_list)) { page = list_first_entry(&mm->context.pgtable_list, struct page, lru); - mask = atomic_read(&page->_refcount) >> 24; + mask = atomic_read(&page->pt_frag_refcount); /* * The pending removal bits must also be checked. * Failure to do so might lead to an impossible - * value of (i.e 0x13 or 0x23) written to _refcount. + * value of (i.e 0x13 or 0x23) written to + * pt_frag_refcount. * Such values violate the assumption that pending and * allocation bits are mutually exclusive, and the rest * of the code unrails as result. That could lead to @@ -259,8 +257,8 @@ unsigned long *page_table_alloc(struct mm_struct *mm) bit = mask & 1; /* =1 -> second 2K */ if (bit) table += PTRS_PER_PTE; - atomic_xor_bits(&page->_refcount, - 0x01U << (bit + 24)); + atomic_xor_bits(&page->pt_frag_refcount, + 0x01U << bit); list_del(&page->lru); } } @@ -281,12 +279,12 @@ unsigned long *page_table_alloc(struct mm_struct *mm) table = (unsigned long *) page_to_virt(page); if (mm_alloc_pgste(mm)) { /* Return 4K page table with PGSTEs */ - atomic_xor_bits(&page->_refcount, 0x03U << 24); + atomic_xor_bits(&page->pt_frag_refcount, 0x03U); memset64((u64 *)table, _PAGE_INVALID, PTRS_PER_PTE); memset64((u64 *)table + PTRS_PER_PTE, 0, PTRS_PER_PTE); } else { /* Return the first 2K fragment of the page */ - atomic_xor_bits(&page->_refcount, 0x01U << 24); + atomic_xor_bits(&page->pt_frag_refcount, 0x01U); memset64((u64 *)table, _PAGE_INVALID, 2 * PTRS_PER_PTE); spin_lock_bh(&mm->context.lock); list_add(&page->lru, &mm->context.pgtable_list); @@ -323,22 +321,19 @@ void page_table_free(struct mm_struct *mm, unsigned long *table) * will happen outside of the critical section from this * function or from __tlb_remove_table() */ - mask = atomic_xor_bits(&page->_refcount, 0x11U << (bit + 24)); - mask >>= 24; + mask = atomic_xor_bits(&page->pt_frag_refcount, 0x11U << bit); if (mask & 0x03U) list_add(&page->lru, &mm->context.pgtable_list); else list_del(&page->lru); spin_unlock_bh(&mm->context.lock); - mask = atomic_xor_bits(&page->_refcount, 0x10U << (bit + 24)); - mask >>= 24; + mask = atomic_xor_bits(&page->pt_frag_refcount, 0x10U << bit); if (mask != 0x00U) return; half = 0x01U << bit; } else { half = 0x03U; - mask = atomic_xor_bits(&page->_refcount, 0x03U << 24); - mask >>= 24; + mask = atomic_xor_bits(&page->pt_frag_refcount, 0x03U); } page_table_release_check(page, table, half, mask); @@ -368,8 +363,7 @@ void page_table_free_rcu(struct mmu_gather *tlb, unsigned long *table, * outside of the critical section from __tlb_remove_table() or from * page_table_free() */ - mask = atomic_xor_bits(&page->_refcount, 0x11U << (bit + 24)); - mask >>= 24; + mask = atomic_xor_bits(&page->pt_frag_refcount, 0x11U << bit); if (mask & 0x03U) list_add_tail(&page->lru, &mm->context.pgtable_list); else @@ -391,14 +385,12 @@ void __tlb_remove_table(void *_table) return; case 0x01U: /* lower 2K of a 4K page table */ case 0x02U: /* higher 2K of a 4K page table */ - mask = atomic_xor_bits(&page->_refcount, mask << (4 + 24)); - mask >>= 24; + mask = atomic_xor_bits(&page->pt_frag_refcount, mask << 4); if (mask != 0x00U) return; break; case 0x03U: /* 4K page table with pgstes */ - mask = atomic_xor_bits(&page->_refcount, 0x03U << 24); - mask >>= 24; + mask = atomic_xor_bits(&page->pt_frag_refcount, 0x03U); break; } -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 12 21:05:01 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 21:05:01 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547475.854935 (Exim 4.92) (envelope-from ) id 1q8oij-0000jP-Eu; Mon, 12 Jun 2023 21:05:01 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547475.854935; Mon, 12 Jun 2023 21:05:01 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8oij-0000iP-AT; Mon, 12 Jun 2023 21:05:01 +0000 Received: by outflank-mailman (input) for mailman id 547475; Mon, 12 Jun 2023 21:04:59 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8oih-0007V0-U4 for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 21:04:59 +0000 Received: from mail-yw1-x1133.google.com (mail-yw1-x1133.google.com [2607:f8b0:4864:20::1133]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id ca2252b6-0964-11ee-b232-6b7b168915f2; Mon, 12 Jun 2023 23:04:59 +0200 (CEST) Received: by mail-yw1-x1133.google.com with SMTP id 00721157ae682-56d2ac0d990so21799197b3.0 for ; Mon, 12 Jun 2023 14:04:59 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::16]) by smtp.googlemail.com with ESMTPSA id s125-20020a817783000000b00569eb609458sm2757115ywc.81.2023.06.12.14.04.56 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 12 Jun 2023 14:04:58 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: ca2252b6-0964-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686603898; x=1689195898; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=yIxlKckYoNWIlWWgwnqqyBbBSaaTtt3uqS2t74G/Cdc=; b=dEzJOtzxLU2ZgnRZWUoqUgX1LkEqjEDlA4j+okrU2e6EDfoTOSvMm21aq2NnoI678R /LX1XChQ5Sb6AvjVNxtMPEQadtzbeWOF+8rQnJrR7+vmusoCvLySLO14WPjcNIRUT0dF 2rQMLU3uAHVNRz0iVUR14QRbNE3w1MtZleas6+gopDWiSHJ7z9AcD/gIo2kO1Qn8dYbq 016n5ev0Z4+orrxhRkS9jR7LRRnc2lkVCuuqKiR89ABW/c7EVFAaF7NtNMlO51k6MesR a4Umst3ZsGaDroxenZAsFOjCXCF1Egq8LClHBVmEapvlxmVVyTvGXFdEnpS3DAZrTLmY PBbA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686603898; x=1689195898; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=yIxlKckYoNWIlWWgwnqqyBbBSaaTtt3uqS2t74G/Cdc=; b=IxdC3q53m82SePP+KGcN2Cqk4w5OlvIVT5cIXW9AdH104ar9QCAKuUuSyK3vaoxq+x p6zhuFzyKmSeQEelYAXx8vYW8TGYE0Gry5BIT85VX2Qcc34Pq0eD6DypT2ss0x1H5hNI DcQhAcNCpc5URSIhhT3HBUpDI3NTNboAr7hzneaiCRq9eORk/18lWNT6uw72nULPJeM2 GLTTOCGuNzYK/JmTRiCVTrAdAgr/UbQs0HJjRMmYHGYMkAtRbMPy4gHCjcPX8v4c//WR sr7dXTVG+Bqmq5KlEVX62t9WgXCpoOrnUpBVhcXeYp1mIETuIKBI7n6bfzUr59NIf0FS HzCg== X-Gm-Message-State: AC+VfDw+l+O85nu6xrKnojR66ftS8N0jPiXkDTuJtwTxJzYR/n4SavIK gmIKPYGj+p/0F4pdvsN+uxY= X-Google-Smtp-Source: ACHHUZ6/Iw+ntCpwv4qU9urdFcPsYepvqoySZLtVMefOmpx6b7rcyARehfEWJ2myv62OL0MPJVk5RA== X-Received: by 2002:a81:7287:0:b0:561:b246:77df with SMTP id n129-20020a817287000000b00561b24677dfmr12849071ywc.16.1686603898264; Mon, 12 Jun 2023 14:04:58 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" Subject: [PATCH v4 06/34] mm: Convert pmd_pgtable_page() to pmd_ptdesc() Date: Mon, 12 Jun 2023 14:03:55 -0700 Message-Id: <20230612210423.18611-7-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230612210423.18611-1-vishal.moola@gmail.com> References: <20230612210423.18611-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Converts pmd_pgtable_page() to pmd_ptdesc() and all its callers. This removes some direct accesses to struct page, working towards splitting out struct ptdesc from struct page. Signed-off-by: Vishal Moola (Oracle) --- include/linux/mm.h | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/include/linux/mm.h b/include/linux/mm.h index f184f1eba85d..088b7664f897 100644 --- a/include/linux/mm.h +++ b/include/linux/mm.h @@ -2931,15 +2931,15 @@ static inline void pgtable_pte_page_dtor(struct page *page) #if USE_SPLIT_PMD_PTLOCKS -static inline struct page *pmd_pgtable_page(pmd_t *pmd) +static inline struct ptdesc *pmd_ptdesc(pmd_t *pmd) { unsigned long mask = ~(PTRS_PER_PMD * sizeof(pmd_t) - 1); - return virt_to_page((void *)((unsigned long) pmd & mask)); + return virt_to_ptdesc((void *)((unsigned long) pmd & mask)); } static inline spinlock_t *pmd_lockptr(struct mm_struct *mm, pmd_t *pmd) { - return ptlock_ptr(pmd_pgtable_page(pmd)); + return ptlock_ptr(ptdesc_page(pmd_ptdesc(pmd))); } static inline bool pmd_ptlock_init(struct page *page) @@ -2958,7 +2958,7 @@ static inline void pmd_ptlock_free(struct page *page) ptlock_free(page); } -#define pmd_huge_pte(mm, pmd) (pmd_pgtable_page(pmd)->pmd_huge_pte) +#define pmd_huge_pte(mm, pmd) (pmd_ptdesc(pmd)->pmd_huge_pte) #else -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 12 21:05:04 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 21:05:04 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547477.854945 (Exim 4.92) (envelope-from ) id 1q8oil-00013v-Rj; Mon, 12 Jun 2023 21:05:03 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547477.854945; Mon, 12 Jun 2023 21:05:03 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8oil-00013Y-Nq; Mon, 12 Jun 2023 21:05:03 +0000 Received: by outflank-mailman (input) for mailman id 547477; Mon, 12 Jun 2023 21:05:01 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8oij-0007V0-Qq for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 21:05:01 +0000 Received: from mail-yw1-x1134.google.com (mail-yw1-x1134.google.com [2607:f8b0:4864:20::1134]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id cb447538-0964-11ee-b232-6b7b168915f2; Mon, 12 Jun 2023 23:05:01 +0200 (CEST) Received: by mail-yw1-x1134.google.com with SMTP id 00721157ae682-56ce88ee294so19024327b3.0 for ; Mon, 12 Jun 2023 14:05:01 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::16]) by smtp.googlemail.com with ESMTPSA id s125-20020a817783000000b00569eb609458sm2757115ywc.81.2023.06.12.14.04.58 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 12 Jun 2023 14:04:59 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: cb447538-0964-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686603900; x=1689195900; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=csibueTQMI8hz/axFpDokmCUVKS4XWTLf0OEMRBu+sg=; b=FDAUnHm2faFSWGwfZS5hO+D9w8GP4e4g1ML7/tmHqNMsyYqyAD51ooe/UZAynheb45 JUNAZVEGWiy3FM+aYWlvoHKaBUFoNzNTwUdIl4kQAVJN12Picp2GbnIh1UwydO/qddyi DCuNf5aNp8X4OTmdAm+cAeL3CGsOgaZ27ub95e/8MTqIlBQGK4N048waW9QZBpSO9XHI sWfFM9CmbvJbA3uGm5rS2JNk4GtvKzbhh98S182OZhG/f2sSkxT71cjOLs4vhjGq3bqf ArQftxucDa5+VY1eeLZl1/JDXSt6Px6z9h8EFmxArPTIN+H3XkndN1zswUa8dX9vrXU3 5Q2g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686603900; x=1689195900; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=csibueTQMI8hz/axFpDokmCUVKS4XWTLf0OEMRBu+sg=; b=l95j98eR9rFgICLD+az4PEe91ec/yRe1MID06EFKz5ARIioyLCCQ3TjC9wCJVsLq0W wCAI5MQ0MUxQbJk7vTGq6hldd6ILVXmKAHb2f+U68H+rtEBlN3rrcx7m2pe9+f/+Hlsd Pn++Vh0K4u92h7/kafmtI5KV70Bw5c+l29Z4Nm7O/v3wHvuGk/ylot76jxUm0xOkTz5Y ktMFDlxVkN9oDsAlQOMHA9AhK6bEv+NewgY0GAPn/QGm8Tnk5/dU/7ccQojKtIlOIK7c WjqRwv7WaxEAHRnUuVQCulPf0vnehCwpMcHww5aD74T6JGQ9Sr66FqyEawkuQkqkPBX5 d1lQ== X-Gm-Message-State: AC+VfDx6MDiZIepwUClLTWuk+4wv6x4vGeqo6iPARENonC0Codvq3Iim e+FAK9zy+jO4r26EPMlMmd4= X-Google-Smtp-Source: ACHHUZ7XKzfLRWmcjDH1kOSVD0e6fKxxbDH/DoQa8Wv3QDYuxgXM2gpDCQ5rMsZn09dpzldtR2HsSA== X-Received: by 2002:a0d:e294:0:b0:56d:5041:78b with SMTP id l142-20020a0de294000000b0056d5041078bmr1552114ywe.2.1686603900209; Mon, 12 Jun 2023 14:05:00 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" Subject: [PATCH v4 07/34] mm: Convert ptlock_alloc() to use ptdescs Date: Mon, 12 Jun 2023 14:03:56 -0700 Message-Id: <20230612210423.18611-8-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230612210423.18611-1-vishal.moola@gmail.com> References: <20230612210423.18611-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit This removes some direct accesses to struct page, working towards splitting out struct ptdesc from struct page. Signed-off-by: Vishal Moola (Oracle) --- include/linux/mm.h | 6 +++--- mm/memory.c | 4 ++-- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/include/linux/mm.h b/include/linux/mm.h index 088b7664f897..e6f1be2a405e 100644 --- a/include/linux/mm.h +++ b/include/linux/mm.h @@ -2825,7 +2825,7 @@ static inline void pagetable_clear(void *x) #if USE_SPLIT_PTE_PTLOCKS #if ALLOC_SPLIT_PTLOCKS void __init ptlock_cache_init(void); -extern bool ptlock_alloc(struct page *page); +bool ptlock_alloc(struct ptdesc *ptdesc); extern void ptlock_free(struct page *page); static inline spinlock_t *ptlock_ptr(struct page *page) @@ -2837,7 +2837,7 @@ static inline void ptlock_cache_init(void) { } -static inline bool ptlock_alloc(struct page *page) +static inline bool ptlock_alloc(struct ptdesc *ptdesc) { return true; } @@ -2867,7 +2867,7 @@ static inline bool ptlock_init(struct page *page) * slab code uses page->slab_cache, which share storage with page->ptl. */ VM_BUG_ON_PAGE(*(unsigned long *)&page->ptl, page); - if (!ptlock_alloc(page)) + if (!ptlock_alloc(page_ptdesc(page))) return false; spin_lock_init(ptlock_ptr(page)); return true; diff --git a/mm/memory.c b/mm/memory.c index 80ce9dda2779..ba9579117686 100644 --- a/mm/memory.c +++ b/mm/memory.c @@ -5934,14 +5934,14 @@ void __init ptlock_cache_init(void) SLAB_PANIC, NULL); } -bool ptlock_alloc(struct page *page) +bool ptlock_alloc(struct ptdesc *ptdesc) { spinlock_t *ptl; ptl = kmem_cache_alloc(page_ptl_cachep, GFP_KERNEL); if (!ptl) return false; - page->ptl = ptl; + ptdesc->ptl = ptl; return true; } -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 12 21:05:07 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 21:05:07 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547478.854955 (Exim 4.92) (envelope-from ) id 1q8oip-0001Tb-9w; Mon, 12 Jun 2023 21:05:07 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547478.854955; Mon, 12 Jun 2023 21:05:07 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8oip-0001TG-28; Mon, 12 Jun 2023 21:05:07 +0000 Received: by outflank-mailman (input) for mailman id 547478; Mon, 12 Jun 2023 21:05:05 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8oin-0007zJ-3j for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 21:05:05 +0000 Received: from mail-yw1-x1136.google.com (mail-yw1-x1136.google.com [2607:f8b0:4864:20::1136]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id cc88bce0-0964-11ee-8611-37d641c3527e; Mon, 12 Jun 2023 23:05:03 +0200 (CEST) Received: by mail-yw1-x1136.google.com with SMTP id 00721157ae682-56cf34a3c72so28375667b3.1 for ; Mon, 12 Jun 2023 14:05:03 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::16]) by smtp.googlemail.com with ESMTPSA id s125-20020a817783000000b00569eb609458sm2757115ywc.81.2023.06.12.14.05.00 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 12 Jun 2023 14:05:01 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: cc88bce0-0964-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686603902; x=1689195902; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=7hP9xC8dm7FmaxDqq4kyW1FngYvGoyLv+4GJfd5pZsk=; b=CJYIsJwgfTu/y/lqnJP/t9il82a33oAqvZUzCAqj1B6hDybKBkJzlI1M4tHng7gsKh wjldrdty5LsQxwcte5A4qzxTSyPWsC3prP09MuDZHhuDdW+KkIuzhNtB1OGIf0fmEYwq PbjgzzODbpwoqx2q55Rq1VMyrgJdF+EsVRaRlosxhaI2WYgY5mJZUdNXguDU4uoU3hsT HNsA8NDHAaVm+vxqugHLiha5If8egzZBwoJM3N2OKUEJMszToVmHBrGqCteUXmcF8+W9 CJfXWgYf4SrrnrL4x4+oaqBHqtUA2nnqH+olViH9ENIys3R1pjxamFF3W5tG5eZyHhYN +FGQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686603902; x=1689195902; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=7hP9xC8dm7FmaxDqq4kyW1FngYvGoyLv+4GJfd5pZsk=; b=DDypH5rdAyoTBicuM8nvbTqwWVETn3NH/R3ebQ8Hk1s0JunGIIScWJ1gs1hKyQKPnb 4pzIpA+Ib44obqPkhu+wyoRDDHwK3dwHLAYd0VT9eHYeJCkAJFyfL/+v8KbiM2FdySrt Vu11hJdWw7UJgDzQJ99cxdHLcgD8ARhGer23jhSq2SXN+YleHWm4kdODt8FK3VZcV42e HlRvx6WEKZC5GVD9aL+teyw8nltRwQzkZ7cwWPk8sXKMrB7TTXS/3rRHTMoWvfwZPPod 9trPQ+v0DRUoanlNUZI32Jq0hVvDA9lw9YlYEiP0TVF1Z/wEtVkAt7d7qGEoW/Ajfi69 xUQQ== X-Gm-Message-State: AC+VfDz0oz07/oi/QMm5ALWNoSbEsNE04jeIKo9n5GZEqjTvtC4exG5W DnDit2pVUWGky0hSTiWdEo0= X-Google-Smtp-Source: ACHHUZ5ktkx/ASoBV55sneLmyoKAwlH0/qlI6IE3eWY9yaMnSemMH48l10CKm48pG/hNrIF3qCc62g== X-Received: by 2002:a0d:d713:0:b0:56d:5286:51f5 with SMTP id z19-20020a0dd713000000b0056d528651f5mr1015907ywd.28.1686603902249; Mon, 12 Jun 2023 14:05:02 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" Subject: [PATCH v4 08/34] mm: Convert ptlock_ptr() to use ptdescs Date: Mon, 12 Jun 2023 14:03:57 -0700 Message-Id: <20230612210423.18611-9-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230612210423.18611-1-vishal.moola@gmail.com> References: <20230612210423.18611-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit This removes some direct accesses to struct page, working towards splitting out struct ptdesc from struct page. Signed-off-by: Vishal Moola (Oracle) --- arch/x86/xen/mmu_pv.c | 2 +- include/linux/mm.h | 14 +++++++------- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/arch/x86/xen/mmu_pv.c b/arch/x86/xen/mmu_pv.c index b3b8d289b9ab..f469862e3ef4 100644 --- a/arch/x86/xen/mmu_pv.c +++ b/arch/x86/xen/mmu_pv.c @@ -651,7 +651,7 @@ static spinlock_t *xen_pte_lock(struct page *page, struct mm_struct *mm) spinlock_t *ptl = NULL; #if USE_SPLIT_PTE_PTLOCKS - ptl = ptlock_ptr(page); + ptl = ptlock_ptr(page_ptdesc(page)); spin_lock_nest_lock(ptl, &mm->page_table_lock); #endif diff --git a/include/linux/mm.h b/include/linux/mm.h index e6f1be2a405e..bb934d51390f 100644 --- a/include/linux/mm.h +++ b/include/linux/mm.h @@ -2828,9 +2828,9 @@ void __init ptlock_cache_init(void); bool ptlock_alloc(struct ptdesc *ptdesc); extern void ptlock_free(struct page *page); -static inline spinlock_t *ptlock_ptr(struct page *page) +static inline spinlock_t *ptlock_ptr(struct ptdesc *ptdesc) { - return page->ptl; + return ptdesc->ptl; } #else /* ALLOC_SPLIT_PTLOCKS */ static inline void ptlock_cache_init(void) @@ -2846,15 +2846,15 @@ static inline void ptlock_free(struct page *page) { } -static inline spinlock_t *ptlock_ptr(struct page *page) +static inline spinlock_t *ptlock_ptr(struct ptdesc *ptdesc) { - return &page->ptl; + return &ptdesc->ptl; } #endif /* ALLOC_SPLIT_PTLOCKS */ static inline spinlock_t *pte_lockptr(struct mm_struct *mm, pmd_t *pmd) { - return ptlock_ptr(pmd_page(*pmd)); + return ptlock_ptr(page_ptdesc(pmd_page(*pmd))); } static inline bool ptlock_init(struct page *page) @@ -2869,7 +2869,7 @@ static inline bool ptlock_init(struct page *page) VM_BUG_ON_PAGE(*(unsigned long *)&page->ptl, page); if (!ptlock_alloc(page_ptdesc(page))) return false; - spin_lock_init(ptlock_ptr(page)); + spin_lock_init(ptlock_ptr(page_ptdesc(page))); return true; } @@ -2939,7 +2939,7 @@ static inline struct ptdesc *pmd_ptdesc(pmd_t *pmd) static inline spinlock_t *pmd_lockptr(struct mm_struct *mm, pmd_t *pmd) { - return ptlock_ptr(ptdesc_page(pmd_ptdesc(pmd))); + return ptlock_ptr(pmd_ptdesc(pmd)); } static inline bool pmd_ptlock_init(struct page *page) -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 12 21:05:08 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 21:05:08 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547479.854963 (Exim 4.92) (envelope-from ) id 1q8oiq-0001lC-KI; Mon, 12 Jun 2023 21:05:08 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547479.854963; Mon, 12 Jun 2023 21:05:08 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8oiq-0001kx-Cw; Mon, 12 Jun 2023 21:05:08 +0000 Received: by outflank-mailman (input) for mailman id 547479; Mon, 12 Jun 2023 21:05:07 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8oip-0007zJ-6J for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 21:05:07 +0000 Received: from mail-yw1-x1132.google.com (mail-yw1-x1132.google.com [2607:f8b0:4864:20::1132]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id cdc24e3a-0964-11ee-8611-37d641c3527e; Mon, 12 Jun 2023 23:05:05 +0200 (CEST) Received: by mail-yw1-x1132.google.com with SMTP id 00721157ae682-56ce53c0040so30129687b3.2 for ; Mon, 12 Jun 2023 14:05:05 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::16]) by smtp.googlemail.com with ESMTPSA id s125-20020a817783000000b00569eb609458sm2757115ywc.81.2023.06.12.14.05.02 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 12 Jun 2023 14:05:04 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: cdc24e3a-0964-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686603904; x=1689195904; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=CVa9cggtOHSUJO/ogR1wMW2sjtZWNjmDdrC369SVqz0=; b=LGp0peHnuaxYbTi1TrslUjQMitjh+h/buXXjte+rmzMq8EerSk6fzj/9MIVxfmxSpM Omqu6nYebae8kl4QHV1G7ATHJ83nT9wNtbqIHtA4KnlPAvi/4+5X0WEOsthQhJoYwmhG x7qZZcT6GxEhvCZo0gV9yDh1XejrVy2crvGhXSgjUWCF1D9y073Dss7gKb2gKwKJeIqg gITOZuL6QQ3v0Ru0LyolXLQ7MXgbRP8zVbSmn+AuXiGssqL0cYBREi8V1ugxeRNuLvvw 6oKvVZRZlVRzitWHyvf0O6G2XA5TATPVxsClJqIqIlKCoZg9JlGxlBuUR1XF5sExgOF1 +mLA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686603904; x=1689195904; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=CVa9cggtOHSUJO/ogR1wMW2sjtZWNjmDdrC369SVqz0=; b=CMM4X5scaEEYtejSw51T4yC5DeZPADeJNggsBW2c68yEBL4L7tEk3qJKVVjTDhc3R9 XLwbG8FCWHbdfUFvIKwcH1EZ1V/4Qp3mKdF0putgVouX+PzpkovwKRV2D+/gNJo+z4BU pGEP4o9NOZgRgSPdqAVyZqcBLMwHIAzLVvgjpayn3agYiMczWSTPCH868d5fxo0HG8Gc i6emMbXL2iK5aCb8TAM2NMIFKHLih2b0V/nicb/qkgveAJNnY/CoW+s1FVMqHgaYx157 RDSL07Up1ye3np6VeA/hz1Nz/9WKq9UoDe5adaIk//yCP85uo9EbI9LBHPiE1SuQBpwD +56A== X-Gm-Message-State: AC+VfDzrOfFzk2hoe7PmBJBItiSazUXejHNqJVx985xXh9s3ctsLoNGI +gZSj5UzsyBNkLmVyOP9PWo= X-Google-Smtp-Source: ACHHUZ4LesFNmga2zNafYd025bzkWSSIKRSwmwCXoFtNtSsfVvER7X6NaAl79hSVn0sQ3cUacFJw5w== X-Received: by 2002:a0d:eb83:0:b0:56d:7c4:8be8 with SMTP id u125-20020a0deb83000000b0056d07c48be8mr6827241ywe.16.1686603904409; Mon, 12 Jun 2023 14:05:04 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" Subject: [PATCH v4 09/34] mm: Convert pmd_ptlock_init() to use ptdescs Date: Mon, 12 Jun 2023 14:03:58 -0700 Message-Id: <20230612210423.18611-10-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230612210423.18611-1-vishal.moola@gmail.com> References: <20230612210423.18611-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit This removes some direct accesses to struct page, working towards splitting out struct ptdesc from struct page. Signed-off-by: Vishal Moola (Oracle) --- include/linux/mm.h | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/include/linux/mm.h b/include/linux/mm.h index bb934d51390f..daecf1db6cf1 100644 --- a/include/linux/mm.h +++ b/include/linux/mm.h @@ -2942,12 +2942,12 @@ static inline spinlock_t *pmd_lockptr(struct mm_struct *mm, pmd_t *pmd) return ptlock_ptr(pmd_ptdesc(pmd)); } -static inline bool pmd_ptlock_init(struct page *page) +static inline bool pmd_ptlock_init(struct ptdesc *ptdesc) { #ifdef CONFIG_TRANSPARENT_HUGEPAGE - page->pmd_huge_pte = NULL; + ptdesc->pmd_huge_pte = NULL; #endif - return ptlock_init(page); + return ptlock_init(ptdesc_page(ptdesc)); } static inline void pmd_ptlock_free(struct page *page) @@ -2967,7 +2967,7 @@ static inline spinlock_t *pmd_lockptr(struct mm_struct *mm, pmd_t *pmd) return &mm->page_table_lock; } -static inline bool pmd_ptlock_init(struct page *page) { return true; } +static inline bool pmd_ptlock_init(struct ptdesc *ptdesc) { return true; } static inline void pmd_ptlock_free(struct page *page) {} #define pmd_huge_pte(mm, pmd) ((mm)->pmd_huge_pte) @@ -2983,7 +2983,7 @@ static inline spinlock_t *pmd_lock(struct mm_struct *mm, pmd_t *pmd) static inline bool pgtable_pmd_page_ctor(struct page *page) { - if (!pmd_ptlock_init(page)) + if (!pmd_ptlock_init(page_ptdesc(page))) return false; __SetPageTable(page); inc_lruvec_page_state(page, NR_PAGETABLE); -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 12 21:05:10 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 21:05:10 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547480.854972 (Exim 4.92) (envelope-from ) id 1q8ois-0002E8-7k; Mon, 12 Jun 2023 21:05:10 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547480.854972; Mon, 12 Jun 2023 21:05:10 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8ois-0002DJ-3K; Mon, 12 Jun 2023 21:05:10 +0000 Received: by outflank-mailman (input) for mailman id 547480; Mon, 12 Jun 2023 21:05:08 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8oip-0007V0-VI for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 21:05:07 +0000 Received: from mail-oa1-x30.google.com (mail-oa1-x30.google.com [2001:4860:4864:20::30]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id ceea87f2-0964-11ee-b232-6b7b168915f2; Mon, 12 Jun 2023 23:05:07 +0200 (CEST) Received: by mail-oa1-x30.google.com with SMTP id 586e51a60fabf-19f30256921so3580708fac.1 for ; Mon, 12 Jun 2023 14:05:07 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::16]) by smtp.googlemail.com with ESMTPSA id s125-20020a817783000000b00569eb609458sm2757115ywc.81.2023.06.12.14.05.04 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 12 Jun 2023 14:05:06 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: ceea87f2-0964-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686603906; x=1689195906; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=8r19jukxjbsIB2/Mx0wfUFI2Md2D0Tal9unGSXZoJa8=; b=bBBhxHhwNc0dlcaV8h2a4XYBtWHGe22hvKvpniF7KzCYgALGdtw6ZDxkDC9x8Aeb3u L7SfltNSUTPpMMAZAPZwSuq1VjJBBWwWiBaC+Bz46NWJJnZ6VvwLLTRGFLrpelYb2La+ Z5XBEGo2Lx+4Q4s65Lii1xiAS9gXRmCdJj9fBmU+7pl8WPQzciZNN9tEea4s2EymiOfj uSb7iAfMXBR2nKnU1BBVn2AVnOIW9drJ/7GGkqivFyyrk3Sd/OJyxdPtL4bbaX3dpY3E iXz0Nc/l9PDCGRHW4+I9NS6xogIi8lZKNWODyR8ULfa6yt07nj/HtSeI3w5uor1wLjvR igBA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686603906; x=1689195906; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=8r19jukxjbsIB2/Mx0wfUFI2Md2D0Tal9unGSXZoJa8=; b=D1i5fzWJAZ4rGedy1w65SXs2bmZVPxREaFMAwLrTfz0HqJgdQfD3jQoCM7mTDXSYtp CSB3iq6gcg3qgqwzwTBK4nUsxcaSPqMxhbktA7FUB2sWpS23cRABDsdlcnKeUb7SBp51 7Y6Ysm/hU6Onr85CvfYzBSUY2sTYkK8jujF67I7I5sXBAdADx2BoLpFy4/f+VeU7dnVh dFu+m3rqw4JiChajNUOrTgl+JoDazh9LgNDLJ3wZAXWDPxvSm6McfHwmfaFRfh8DVftY qgD6MdeUiuaVstO/j3neOJgTyVB38cf8NNJL/5c8auP5dQkNxy77MZMy/YQiJDYczGM9 HJ1w== X-Gm-Message-State: AC+VfDygiUQXmnGLgr79HVyL1Xlz/BRPUr4hZesM4FHZGNHB7kA1ho2s 75SxoC6RGayQhLhAUS7jppY= X-Google-Smtp-Source: ACHHUZ6a/96wj8UsR1eewejCsUK79jNNmW6NRKVRY6WskMtRjwMJM0HWL1CF60/WviLDJygSxMchcw== X-Received: by 2002:a05:6870:989c:b0:1a3:4072:58f1 with SMTP id eg28-20020a056870989c00b001a3407258f1mr7318868oab.6.1686603906371; Mon, 12 Jun 2023 14:05:06 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" Subject: [PATCH v4 10/34] mm: Convert ptlock_init() to use ptdescs Date: Mon, 12 Jun 2023 14:03:59 -0700 Message-Id: <20230612210423.18611-11-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230612210423.18611-1-vishal.moola@gmail.com> References: <20230612210423.18611-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit This removes some direct accesses to struct page, working towards splitting out struct ptdesc from struct page. Signed-off-by: Vishal Moola (Oracle) --- include/linux/mm.h | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/include/linux/mm.h b/include/linux/mm.h index daecf1db6cf1..f48e626d9c98 100644 --- a/include/linux/mm.h +++ b/include/linux/mm.h @@ -2857,7 +2857,7 @@ static inline spinlock_t *pte_lockptr(struct mm_struct *mm, pmd_t *pmd) return ptlock_ptr(page_ptdesc(pmd_page(*pmd))); } -static inline bool ptlock_init(struct page *page) +static inline bool ptlock_init(struct ptdesc *ptdesc) { /* * prep_new_page() initialize page->private (and therefore page->ptl) @@ -2866,10 +2866,10 @@ static inline bool ptlock_init(struct page *page) * It can happen if arch try to use slab for page table allocation: * slab code uses page->slab_cache, which share storage with page->ptl. */ - VM_BUG_ON_PAGE(*(unsigned long *)&page->ptl, page); - if (!ptlock_alloc(page_ptdesc(page))) + VM_BUG_ON_PAGE(*(unsigned long *)&ptdesc->ptl, ptdesc_page(ptdesc)); + if (!ptlock_alloc(ptdesc)) return false; - spin_lock_init(ptlock_ptr(page_ptdesc(page))); + spin_lock_init(ptlock_ptr(ptdesc)); return true; } @@ -2882,13 +2882,13 @@ static inline spinlock_t *pte_lockptr(struct mm_struct *mm, pmd_t *pmd) return &mm->page_table_lock; } static inline void ptlock_cache_init(void) {} -static inline bool ptlock_init(struct page *page) { return true; } +static inline bool ptlock_init(struct ptdesc *ptdesc) { return true; } static inline void ptlock_free(struct page *page) {} #endif /* USE_SPLIT_PTE_PTLOCKS */ static inline bool pgtable_pte_page_ctor(struct page *page) { - if (!ptlock_init(page)) + if (!ptlock_init(page_ptdesc(page))) return false; __SetPageTable(page); inc_lruvec_page_state(page, NR_PAGETABLE); @@ -2947,7 +2947,7 @@ static inline bool pmd_ptlock_init(struct ptdesc *ptdesc) #ifdef CONFIG_TRANSPARENT_HUGEPAGE ptdesc->pmd_huge_pte = NULL; #endif - return ptlock_init(ptdesc_page(ptdesc)); + return ptlock_init(ptdesc); } static inline void pmd_ptlock_free(struct page *page) -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 12 21:05:11 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 21:05:11 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547481.854980 (Exim 4.92) (envelope-from ) id 1q8ois-0002KC-So; Mon, 12 Jun 2023 21:05:10 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547481.854980; Mon, 12 Jun 2023 21:05:10 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8ois-0002J3-JR; Mon, 12 Jun 2023 21:05:10 +0000 Received: by outflank-mailman (input) for mailman id 547481; Mon, 12 Jun 2023 21:05:10 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8oir-0007V0-TM for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 21:05:09 +0000 Received: from mail-yw1-x1129.google.com (mail-yw1-x1129.google.com [2607:f8b0:4864:20::1129]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id d015f8ec-0964-11ee-b232-6b7b168915f2; Mon, 12 Jun 2023 23:05:09 +0200 (CEST) Received: by mail-yw1-x1129.google.com with SMTP id 00721157ae682-56cfce8862aso26677827b3.1 for ; Mon, 12 Jun 2023 14:05:09 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::16]) by smtp.googlemail.com with ESMTPSA id s125-20020a817783000000b00569eb609458sm2757115ywc.81.2023.06.12.14.05.06 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 12 Jun 2023 14:05:08 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: d015f8ec-0964-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686603908; x=1689195908; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=e/NReaJdz90gZ2NQIlUYsxuwjuA5PoSk9HvAIR22dRg=; b=cJPixJ7fvL8lj4msWoT6T4UdDliAegelx3fhfZFkllamFJSmCzzBfgBkJHvHf5VBH4 +bFQaX0c9HvMpz3cMr64OoUwpvHF+4NrriYC39tboK0Z4VjLF9J6MmzkevSDnSF+eJ9S vsFP6THd62TglAym5r/waWV4KiQYY/X7Hysf9ft4FBrKTw7bicGfQMMhWM2I4CuvKtOv cwDTHbNBV8LRmkAEvkAc0kAr+XDxv+lhnXg68dTw4NnjCIip7ummoW4kmN1lP3wtz1t1 rgvGb1IbL+Qt1u/Y4z+ep/GLJI6yTMWmeJDiLjESMtlIxdtrVlVrtQkxPe5yKm5XHK1M 0mYQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686603908; x=1689195908; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=e/NReaJdz90gZ2NQIlUYsxuwjuA5PoSk9HvAIR22dRg=; b=PUuyzVHkrwuTfrMh0fOuCjF1X0mXg5YZTbsasu/Jn+8U8Wse3IvbHFKX3NqoRc4Q5o eKkSHunbJJUs7aADLhiscny6N8OEWWKUAVIWTEVuR7y29T8fVzZDnaOwWGZP7XuJ/4y7 2yQ8Niv2HwE5j9/sWQKGxo4xMgsvA6bVso1Qq6IMo4jpqbFeJs0fQ6oMsJbHMttO+fNl mVqYyjyHJigEV2v8NV4cFN4WFj4rW0jhAjc9Ab5Mzc4/RBbQ4q4y6Xn+D28RAwwO/a+x 6XjG0zbB5CUWz0OdPguFY4TBHBAbtX5wRrqkn7xlTSum11XxaAeAJL/EM+hg7Phj8hRM U95g== X-Gm-Message-State: AC+VfDylGDgdVdL5j3yFI0BBdEwQUrILU+8msBV7U2cGveuWKtIGG3c/ YmPoZ5I1GSbtlw9/agG3wh0= X-Google-Smtp-Source: ACHHUZ5kijcVYXBTbbFcK1VnPllJL1iB2ONZxmZAAAXhO7jcUSS10Gkxlzbwqmp6U6Z9PG+yvX9PWw== X-Received: by 2002:a81:9288:0:b0:56c:f916:905 with SMTP id j130-20020a819288000000b0056cf9160905mr7254032ywg.32.1686603908266; Mon, 12 Jun 2023 14:05:08 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" Subject: [PATCH v4 11/34] mm: Convert pmd_ptlock_free() to use ptdescs Date: Mon, 12 Jun 2023 14:04:00 -0700 Message-Id: <20230612210423.18611-12-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230612210423.18611-1-vishal.moola@gmail.com> References: <20230612210423.18611-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit This removes some direct accesses to struct page, working towards splitting out struct ptdesc from struct page. Signed-off-by: Vishal Moola (Oracle) --- include/linux/mm.h | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/include/linux/mm.h b/include/linux/mm.h index f48e626d9c98..3b54bb4c9753 100644 --- a/include/linux/mm.h +++ b/include/linux/mm.h @@ -2950,12 +2950,12 @@ static inline bool pmd_ptlock_init(struct ptdesc *ptdesc) return ptlock_init(ptdesc); } -static inline void pmd_ptlock_free(struct page *page) +static inline void pmd_ptlock_free(struct ptdesc *ptdesc) { #ifdef CONFIG_TRANSPARENT_HUGEPAGE - VM_BUG_ON_PAGE(page->pmd_huge_pte, page); + VM_BUG_ON_PAGE(ptdesc->pmd_huge_pte, ptdesc_page(ptdesc)); #endif - ptlock_free(page); + ptlock_free(ptdesc_page(ptdesc)); } #define pmd_huge_pte(mm, pmd) (pmd_ptdesc(pmd)->pmd_huge_pte) @@ -2968,7 +2968,7 @@ static inline spinlock_t *pmd_lockptr(struct mm_struct *mm, pmd_t *pmd) } static inline bool pmd_ptlock_init(struct ptdesc *ptdesc) { return true; } -static inline void pmd_ptlock_free(struct page *page) {} +static inline void pmd_ptlock_free(struct ptdesc *ptdesc) {} #define pmd_huge_pte(mm, pmd) ((mm)->pmd_huge_pte) @@ -2992,7 +2992,7 @@ static inline bool pgtable_pmd_page_ctor(struct page *page) static inline void pgtable_pmd_page_dtor(struct page *page) { - pmd_ptlock_free(page); + pmd_ptlock_free(page_ptdesc(page)); __ClearPageTable(page); dec_lruvec_page_state(page, NR_PAGETABLE); } -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 12 21:05:13 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 21:05:13 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547482.854996 (Exim 4.92) (envelope-from ) id 1q8oiv-00033c-C7; Mon, 12 Jun 2023 21:05:13 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547482.854996; Mon, 12 Jun 2023 21:05:13 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8oiv-00032e-3I; Mon, 12 Jun 2023 21:05:13 +0000 Received: by outflank-mailman (input) for mailman id 547482; Mon, 12 Jun 2023 21:05:12 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8oit-0007V0-Tb for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 21:05:11 +0000 Received: from mail-yb1-xb35.google.com (mail-yb1-xb35.google.com [2607:f8b0:4864:20::b35]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id d146c057-0964-11ee-b232-6b7b168915f2; Mon, 12 Jun 2023 23:05:11 +0200 (CEST) Received: by mail-yb1-xb35.google.com with SMTP id 3f1490d57ef6-bc9782291f5so1846012276.1 for ; Mon, 12 Jun 2023 14:05:11 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::16]) by smtp.googlemail.com with ESMTPSA id s125-20020a817783000000b00569eb609458sm2757115ywc.81.2023.06.12.14.05.08 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 12 Jun 2023 14:05:09 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: d146c057-0964-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686603910; x=1689195910; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=L3tBY7hT3/idMeTvV/y5HT5RaeYwytDxSu3wHZHQdRM=; b=RjdfKdwo6GGvbEWocjhzyfrIG+s4yeNfDttrrqwnEGORQ/YPC7ZVmdyS10JF0LYqJm b6bU5xmGwzXI5ZQkTCKkSHLlY6xUp5TM7mFPqEQ9UqdLvwpNas5BJtZzv+iakqyWNnr7 ZbUjNLXHM5JpGCASroX3mIknKspaiVxCKS4EWppAxztT7eGSIBBwCNu77Cy7Q7mvbAeg nTWfF3Iwgf3p1K6E3gymTY1cP1wx9AawPcYyp7n9Z4TFzq2NVk0pgr/BAa6wSZIWoNVz 1+4z+b7cL83but8FZFxeoUPYZLJOz76q6IoC2hSwlZOG2NbQ38EQV2G66LjHRDN0bxiF BZ7Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686603910; x=1689195910; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=L3tBY7hT3/idMeTvV/y5HT5RaeYwytDxSu3wHZHQdRM=; b=f9ZwTVssjSuhQGvz4B/56tsBJxMyHxecUU9n+bfEGpdYZXKkf63Y6W2DFFElsbM0vj eu59T2XQM9qOCMbuOyGv50x0UT6atvwilE93X43O9kVZIFyVPz4bI43Rwux7k9f0fba6 xIj51O+mFbo9g83puZEilT2AioBr9fwE/61YhYwrifTvCsemz+XGCDHAqva29NUqwYhJ /ac9k2N4fhZcEE3atYKqlXaMAIpU7gve7cGjLbaORL9HNrxLKQ6Q+lQ4EokC/Dik6mqD uGW0lkQA44EUTaYR45pYXaSeCgB5RnuLjnPmSJc+CPzsqey6JfIqpZd/OiwuqVKWVUpr 8aYg== X-Gm-Message-State: AC+VfDz0WeB1zP5zmLpQKtzArEBJQwPDIACk/vM7gMbmwyL5XYuDLUl/ C3TV91a8doOCZHH+9HfNFrQ= X-Google-Smtp-Source: ACHHUZ7G4LX/rzVzMPXBxUvcWoM4NVaiAOMXANZTQdr/GK3rhr2fg9ZSIMvpPffGov7SQ8stbPFS3w== X-Received: by 2002:a05:6902:2c7:b0:ba6:e17a:abc2 with SMTP id w7-20020a05690202c700b00ba6e17aabc2mr8959494ybh.63.1686603910188; Mon, 12 Jun 2023 14:05:10 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" Subject: [PATCH v4 12/34] mm: Convert ptlock_free() to use ptdescs Date: Mon, 12 Jun 2023 14:04:01 -0700 Message-Id: <20230612210423.18611-13-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230612210423.18611-1-vishal.moola@gmail.com> References: <20230612210423.18611-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit This removes some direct accesses to struct page, working towards splitting out struct ptdesc from struct page. Signed-off-by: Vishal Moola (Oracle) --- include/linux/mm.h | 10 +++++----- mm/memory.c | 4 ++-- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/include/linux/mm.h b/include/linux/mm.h index 3b54bb4c9753..a1af7983e1bd 100644 --- a/include/linux/mm.h +++ b/include/linux/mm.h @@ -2826,7 +2826,7 @@ static inline void pagetable_clear(void *x) #if ALLOC_SPLIT_PTLOCKS void __init ptlock_cache_init(void); bool ptlock_alloc(struct ptdesc *ptdesc); -extern void ptlock_free(struct page *page); +void ptlock_free(struct ptdesc *ptdesc); static inline spinlock_t *ptlock_ptr(struct ptdesc *ptdesc) { @@ -2842,7 +2842,7 @@ static inline bool ptlock_alloc(struct ptdesc *ptdesc) return true; } -static inline void ptlock_free(struct page *page) +static inline void ptlock_free(struct ptdesc *ptdesc) { } @@ -2883,7 +2883,7 @@ static inline spinlock_t *pte_lockptr(struct mm_struct *mm, pmd_t *pmd) } static inline void ptlock_cache_init(void) {} static inline bool ptlock_init(struct ptdesc *ptdesc) { return true; } -static inline void ptlock_free(struct page *page) {} +static inline void ptlock_free(struct ptdesc *ptdesc) {} #endif /* USE_SPLIT_PTE_PTLOCKS */ static inline bool pgtable_pte_page_ctor(struct page *page) @@ -2897,7 +2897,7 @@ static inline bool pgtable_pte_page_ctor(struct page *page) static inline void pgtable_pte_page_dtor(struct page *page) { - ptlock_free(page); + ptlock_free(page_ptdesc(page)); __ClearPageTable(page); dec_lruvec_page_state(page, NR_PAGETABLE); } @@ -2955,7 +2955,7 @@ static inline void pmd_ptlock_free(struct ptdesc *ptdesc) #ifdef CONFIG_TRANSPARENT_HUGEPAGE VM_BUG_ON_PAGE(ptdesc->pmd_huge_pte, ptdesc_page(ptdesc)); #endif - ptlock_free(ptdesc_page(ptdesc)); + ptlock_free(ptdesc); } #define pmd_huge_pte(mm, pmd) (pmd_ptdesc(pmd)->pmd_huge_pte) diff --git a/mm/memory.c b/mm/memory.c index ba9579117686..d4d2ea5cf0fd 100644 --- a/mm/memory.c +++ b/mm/memory.c @@ -5945,8 +5945,8 @@ bool ptlock_alloc(struct ptdesc *ptdesc) return true; } -void ptlock_free(struct page *page) +void ptlock_free(struct ptdesc *ptdesc) { - kmem_cache_free(page_ptl_cachep, page->ptl); + kmem_cache_free(page_ptl_cachep, ptdesc->ptl); } #endif -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 12 21:05:17 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 21:05:17 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547489.855005 (Exim 4.92) (envelope-from ) id 1q8oiz-0003in-Nt; Mon, 12 Jun 2023 21:05:17 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547489.855005; Mon, 12 Jun 2023 21:05:17 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8oiz-0003iH-Gd; Mon, 12 Jun 2023 21:05:17 +0000 Received: by outflank-mailman (input) for mailman id 547489; Mon, 12 Jun 2023 21:05:15 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8oix-0007zJ-TY for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 21:05:15 +0000 Received: from mail-yw1-x112f.google.com (mail-yw1-x112f.google.com [2607:f8b0:4864:20::112f]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id d281d2d6-0964-11ee-8611-37d641c3527e; Mon, 12 Jun 2023 23:05:13 +0200 (CEST) Received: by mail-yw1-x112f.google.com with SMTP id 00721157ae682-561b7729a12so85788297b3.1 for ; Mon, 12 Jun 2023 14:05:13 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::16]) by smtp.googlemail.com with ESMTPSA id s125-20020a817783000000b00569eb609458sm2757115ywc.81.2023.06.12.14.05.10 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 12 Jun 2023 14:05:11 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: d281d2d6-0964-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686603912; x=1689195912; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=EpDrDA23aZZSOuD9ECPgZVlXX9wPcibxiFG6a9Pg6kw=; b=YrxPmjxN/Qkfa39Za5HTgq4QQ3f9/zju1xoEkMHY76VWuya44wSbPKtXjzKY3v7sqU GBxsM+H0usX0mr3+rL1pflvYDpTa44gJOcWxVcOnDkRvcMNiHbLrpt96vvJ6FNwKJltW cMJPyFVQ/eSt9EDvrymbmWnro3jKR5HGdt4l2wI6AjCbDnCnt1cg4A0jjRLl9BCzyZ7N VzgyM4qBAMmkmToFHzJWSn2lcW28mUGQcMgbZJj1Lk3UeDxgd0pcGGp9/tqybVBUSS6z sfRYAsqcMK0gYJ/10nym3sY5+OJ+ZE83bX/QwPKBvH0660Lco3siIL8/QCwpR8viXQgt 6rfg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686603912; x=1689195912; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=EpDrDA23aZZSOuD9ECPgZVlXX9wPcibxiFG6a9Pg6kw=; b=ZcTGlCT6WAnZYyDvHg7x+t8EAx5pe7y5vV8rQKfZ3R5ACsfO014J8H76IN9gD51/hG 9CHeDtrISThnUDPCJQjOVYRbKPLRGFr1m1jH3tdz0KyZFxD6fEeuJPwYltUZOy23WKKB SWYh29WRRS2MHXsdEveT5N1hm6rsse7QkiZL9i9zmwr68Kl9ajywYQukixX1KItAWeml m//elvHGJ8xjR8IjbncyNsGvt+qrrjcfD7taHCGLsMabZmHwaOqsqGn3tZ6aT24Q9ESt aVPkMGPSVJ242Fv4IaOUHWyKoc9WoPd2kDlRiY5L6sTHt2BJbdC5PXkkEs3q23IMAYB3 1szg== X-Gm-Message-State: AC+VfDxJjpk2oyVqpvllac5ULXcf8V/ue/ua1f+FGv/6VYWRaqfaRxy0 EM9yitv4xK2pyE0Ort+J74k= X-Google-Smtp-Source: ACHHUZ4rEtwsIJS0u8/qiBl+7RQztIv/50rVsQeASCwgplg4IOIGaQtPyW+cRDHUBMrIJvgIE2xULQ== X-Received: by 2002:a81:4e4b:0:b0:569:e92f:72a with SMTP id c72-20020a814e4b000000b00569e92f072amr14103246ywb.16.1686603912361; Mon, 12 Jun 2023 14:05:12 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" Subject: [PATCH v4 13/34] mm: Create ptdesc equivalents for pgtable_{pte,pmd}_page_{ctor,dtor} Date: Mon, 12 Jun 2023 14:04:02 -0700 Message-Id: <20230612210423.18611-14-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230612210423.18611-1-vishal.moola@gmail.com> References: <20230612210423.18611-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Creates pagetable_pte_ctor(), pagetable_pmd_ctor(), pagetable_pte_dtor(), and pagetable_pmd_dtor() and make the original pgtable constructor/destructors wrappers. Signed-off-by: Vishal Moola (Oracle) --- include/linux/mm.h | 56 ++++++++++++++++++++++++++++++++++------------ 1 file changed, 42 insertions(+), 14 deletions(-) diff --git a/include/linux/mm.h b/include/linux/mm.h index a1af7983e1bd..dc211c43610b 100644 --- a/include/linux/mm.h +++ b/include/linux/mm.h @@ -2886,20 +2886,34 @@ static inline bool ptlock_init(struct ptdesc *ptdesc) { return true; } static inline void ptlock_free(struct ptdesc *ptdesc) {} #endif /* USE_SPLIT_PTE_PTLOCKS */ -static inline bool pgtable_pte_page_ctor(struct page *page) +static inline bool pagetable_pte_ctor(struct ptdesc *ptdesc) { - if (!ptlock_init(page_ptdesc(page))) + struct folio *folio = ptdesc_folio(ptdesc); + + if (!ptlock_init(ptdesc)) return false; - __SetPageTable(page); - inc_lruvec_page_state(page, NR_PAGETABLE); + __folio_set_table(folio); + lruvec_stat_add_folio(folio, NR_PAGETABLE); return true; } +static inline bool pgtable_pte_page_ctor(struct page *page) +{ + return pagetable_pte_ctor(page_ptdesc(page)); +} + +static inline void pagetable_pte_dtor(struct ptdesc *ptdesc) +{ + struct folio *folio = ptdesc_folio(ptdesc); + + ptlock_free(ptdesc); + __folio_clear_table(folio); + lruvec_stat_sub_folio(folio, NR_PAGETABLE); +} + static inline void pgtable_pte_page_dtor(struct page *page) { - ptlock_free(page_ptdesc(page)); - __ClearPageTable(page); - dec_lruvec_page_state(page, NR_PAGETABLE); + pagetable_pte_dtor(page_ptdesc(page)); } #define pte_offset_map_lock(mm, pmd, address, ptlp) \ @@ -2981,20 +2995,34 @@ static inline spinlock_t *pmd_lock(struct mm_struct *mm, pmd_t *pmd) return ptl; } -static inline bool pgtable_pmd_page_ctor(struct page *page) +static inline bool pagetable_pmd_ctor(struct ptdesc *ptdesc) { - if (!pmd_ptlock_init(page_ptdesc(page))) + struct folio *folio = ptdesc_folio(ptdesc); + + if (!pmd_ptlock_init(ptdesc)) return false; - __SetPageTable(page); - inc_lruvec_page_state(page, NR_PAGETABLE); + __folio_set_table(folio); + lruvec_stat_add_folio(folio, NR_PAGETABLE); return true; } +static inline bool pgtable_pmd_page_ctor(struct page *page) +{ + return pagetable_pmd_ctor(page_ptdesc(page)); +} + +static inline void pagetable_pmd_dtor(struct ptdesc *ptdesc) +{ + struct folio *folio = ptdesc_folio(ptdesc); + + pmd_ptlock_free(ptdesc); + __folio_clear_table(folio); + lruvec_stat_sub_folio(folio, NR_PAGETABLE); +} + static inline void pgtable_pmd_page_dtor(struct page *page) { - pmd_ptlock_free(page_ptdesc(page)); - __ClearPageTable(page); - dec_lruvec_page_state(page, NR_PAGETABLE); + pagetable_pmd_dtor(page_ptdesc(page)); } /* -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 12 21:09:26 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 21:09:26 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547523.855020 (Exim 4.92) (envelope-from ) id 1q8omz-000760-Fl; Mon, 12 Jun 2023 21:09:25 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547523.855020; Mon, 12 Jun 2023 21:09:25 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8omz-00075O-8l; Mon, 12 Jun 2023 21:09:25 +0000 Received: by outflank-mailman (input) for mailman id 547523; Mon, 12 Jun 2023 21:09:24 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8oj6-0007V0-AT for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 21:05:24 +0000 Received: from mail-yw1-x1133.google.com (mail-yw1-x1133.google.com [2607:f8b0:4864:20::1133]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id d8aee051-0964-11ee-b232-6b7b168915f2; Mon, 12 Jun 2023 23:05:23 +0200 (CEST) Received: by mail-yw1-x1133.google.com with SMTP id 00721157ae682-56d2ac0d990so21806777b3.0 for ; Mon, 12 Jun 2023 14:05:23 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::16]) by smtp.googlemail.com with ESMTPSA id s125-20020a817783000000b00569eb609458sm2757115ywc.81.2023.06.12.14.05.20 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 12 Jun 2023 14:05:22 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: d8aee051-0964-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686603923; x=1689195923; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=9BBSMNk3/NV9IPbcmTeXVmuDxVjvV9nk5pHOLLkR9Zc=; b=B5eteOvH/q+5UxTkqPiKmSRGXAjb4bZMizLs/WNtLaesb1E0HpRn4up+92FQaO/msD wl+HgJ9chyyZgdROsDvWF8ST2c98XDyJ6K5mIkqjJX4+EdwGnn3FI4jGMxc7JXWmf967 aU1KzzzuV6U5c/qEMroqPTw1zV9aDblRqBawPVlpf/Mlyp6BjBb5H05VxOKBrkeVjlqN FunX9lODEGlrIj4hvPqV1OUn4lS2vKzFGXO/PdJAy/LDMA65UwEZCw3NLCYo8+J5kL9P iG2KwFG+0fA0Z25/Erx4n5fssjHvgoAeU/1R/dnILNKDOgbuGKGvMNK5K7M37Fiw/tnm j5mQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686603923; x=1689195923; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=9BBSMNk3/NV9IPbcmTeXVmuDxVjvV9nk5pHOLLkR9Zc=; b=NcPiLtmsvfHWI5JLd8dmU/EUVx6SbS9zREL0LP6SENF55FLF9+6QRLf5auDKNmwzmq Cf6Sn0yLROeHICT/rwYpe214OwYl481aq4QjzhqjOZ4tNLMo9LsIO4ODnX1ghdpqvnTZ dYEf0d+Y6WgrMtl2MF9QZIvYecFh7lfzbLjubfcB99EJqnjAq9jgyB9ROlF1VgBkkApv jiVu1u3B45J7V3TvFMFHx/Aj5NdPr2m/yoTqCjLPeEKWgalFebnrXazgFpbCR450hg9X dibnKNCT7wZ1s1WcEgZzkyEpycCAO20P5ChXUR8pSYnM1WnXixJtwduRRzh0pZpERwoq Dhpw== X-Gm-Message-State: AC+VfDzEJYSQPaj9EUCZvYFDk2C+7lt1jMcNSKwdeKeYPRtg3MVB3DEU 5xuK1KVVk4Vav7wInBX+LqQ= X-Google-Smtp-Source: ACHHUZ6Y5hnmbR0E296qiytbEPqdIHR5totNZCgnfGVo00JLi96ohBBFsqGnqpvBKL1saABj0PHBjA== X-Received: by 2002:a81:8495:0:b0:56d:c8d:be26 with SMTP id u143-20020a818495000000b0056d0c8dbe26mr5358308ywf.26.1686603922720; Mon, 12 Jun 2023 14:05:22 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" Subject: [PATCH v4 18/34] mm: Remove page table members from struct page Date: Mon, 12 Jun 2023 14:04:07 -0700 Message-Id: <20230612210423.18611-19-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230612210423.18611-1-vishal.moola@gmail.com> References: <20230612210423.18611-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit The page table members are now split out into their own ptdesc struct. Remove them from struct page. Signed-off-by: Vishal Moola (Oracle) --- include/linux/mm_types.h | 14 -------------- include/linux/pgtable.h | 3 --- 2 files changed, 17 deletions(-) diff --git a/include/linux/mm_types.h b/include/linux/mm_types.h index 6161fe1ae5b8..31ffa1be21d0 100644 --- a/include/linux/mm_types.h +++ b/include/linux/mm_types.h @@ -141,20 +141,6 @@ struct page { struct { /* Tail pages of compound page */ unsigned long compound_head; /* Bit zero is set */ }; - struct { /* Page table pages */ - unsigned long _pt_pad_1; /* compound_head */ - pgtable_t pmd_huge_pte; /* protected by page->ptl */ - unsigned long _pt_s390_gaddr; /* mapping */ - union { - struct mm_struct *pt_mm; /* x86 pgds only */ - atomic_t pt_frag_refcount; /* powerpc */ - }; -#if ALLOC_SPLIT_PTLOCKS - spinlock_t *ptl; -#else - spinlock_t ptl; -#endif - }; struct { /* ZONE_DEVICE pages */ /** @pgmap: Points to the hosting device page map. */ struct dev_pagemap *pgmap; diff --git a/include/linux/pgtable.h b/include/linux/pgtable.h index c405f74d3875..33cc19d752b3 100644 --- a/include/linux/pgtable.h +++ b/include/linux/pgtable.h @@ -1019,10 +1019,7 @@ struct ptdesc { TABLE_MATCH(flags, __page_flags); TABLE_MATCH(compound_head, pt_list); TABLE_MATCH(compound_head, _pt_pad_1); -TABLE_MATCH(pmd_huge_pte, pmd_huge_pte); TABLE_MATCH(mapping, _pt_s390_gaddr); -TABLE_MATCH(pt_mm, pt_mm); -TABLE_MATCH(ptl, ptl); #undef TABLE_MATCH static_assert(sizeof(struct ptdesc) <= sizeof(struct page)); -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 12 21:09:26 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 21:09:26 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547524.855027 (Exim 4.92) (envelope-from ) id 1q8omz-0007Bn-R1; Mon, 12 Jun 2023 21:09:25 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547524.855027; Mon, 12 Jun 2023 21:09:25 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8omz-0007AB-HO; Mon, 12 Jun 2023 21:09:25 +0000 Received: by outflank-mailman (input) for mailman id 547524; Mon, 12 Jun 2023 21:09:24 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8ojE-0007zJ-DB for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 21:05:32 +0000 Received: from mail-yw1-x1131.google.com (mail-yw1-x1131.google.com [2607:f8b0:4864:20::1131]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id dc53786a-0964-11ee-8611-37d641c3527e; Mon, 12 Jun 2023 23:05:30 +0200 (CEST) Received: by mail-yw1-x1131.google.com with SMTP id 00721157ae682-56d2b7a9465so15632787b3.3 for ; Mon, 12 Jun 2023 14:05:29 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::16]) by smtp.googlemail.com with ESMTPSA id s125-20020a817783000000b00569eb609458sm2757115ywc.81.2023.06.12.14.05.26 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 12 Jun 2023 14:05:28 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: dc53786a-0964-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686603929; x=1689195929; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=zsW7mi3+X2fEN/3x0Bi+dafPb2wVjOjUR4AWbTKXMQ0=; b=skq9VJH5dgJqddGwdVt6QPnDFnHLuDHmOdJ+p0cfKrjwcpANWfXjFtOnE+ShUVF4Wp +eZ1oAi7jnx0p4XZ2vlWf2HsUPHPywHFWTLkyBo2gHsKrZMxdedqFJMYHcQirASjKLsR SHXXWS83xBIee1HeZ900C52L0cf1hZAGJBgTBGRkI/olW2eHqyg1aEFYABUX/cDGInxY qBm8udoAWKxdlfWi3VICLCjFw6K8a8OX+rJWjNQ1/2hLUrj/oVGI32qhAulpQwwr+kGa Lu8zhuAzxz28DDQDJR/r5ap4yvwSJYAPMD0veq5+nFM3RaL/7sjJCqWPanMB6gD1jpVC DRIQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686603929; x=1689195929; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=zsW7mi3+X2fEN/3x0Bi+dafPb2wVjOjUR4AWbTKXMQ0=; b=HKcB7m/NmPce0DHKbszpl4k/SHbAcXchL4GN6qWVqcLxQ6gFL7QREJCLf8W4XwCPlT 9XI6Dzj/cvBNHqzlPEtUHjOkMB8BQwbgymLbwlWGW5pogpix9keAhGkjHJpjpk1qhq7+ 5tXDv7M7cLIpUtFTVu1LK+hWtvLZBIT4yWOVPSm11zVDAaVwMC20tfm3YRznMfNWGU7S CiWWn/8uD7TcSxWVvyCfDYororxEbEvdmzluKVt7yoaYz7QDrH2RIK+ObXiuSkBinVy/ Si7TLyLOEihMSzmJCDCoiOhB2fZ07WMJCLhh4Dlr6CPa/Wed+jkTL29V6FikUf+LlLXu ZlzA== X-Gm-Message-State: AC+VfDwS7StAGZ2PX+QvDMeS72Bur/egnRFlsW+X5wwVv0FMs+wq0lxd ps732XieGXKJ4YPtvUOqsmk= X-Google-Smtp-Source: ACHHUZ6YXnFai1+oazoURBIRxVN/vSubE3IHa08ab+S6MI7hbnWKgAk8qpadPRjUwPnUDYOPSto+cQ== X-Received: by 2002:a0d:eb8d:0:b0:56c:e54b:b4b8 with SMTP id u135-20020a0deb8d000000b0056ce54bb4b8mr8864333ywe.28.1686603928796; Mon, 12 Jun 2023 14:05:28 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" , Catalin Marinas Subject: [PATCH v4 21/34] arm64: Convert various functions to use ptdescs Date: Mon, 12 Jun 2023 14:04:10 -0700 Message-Id: <20230612210423.18611-22-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230612210423.18611-1-vishal.moola@gmail.com> References: <20230612210423.18611-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit As part of the conversions to replace pgtable constructor/destructors with ptdesc equivalents, convert various page table functions to use ptdescs. Signed-off-by: Vishal Moola (Oracle) --- arch/arm64/include/asm/tlb.h | 14 ++++++++------ arch/arm64/mm/mmu.c | 7 ++++--- 2 files changed, 12 insertions(+), 9 deletions(-) diff --git a/arch/arm64/include/asm/tlb.h b/arch/arm64/include/asm/tlb.h index c995d1f4594f..2c29239d05c3 100644 --- a/arch/arm64/include/asm/tlb.h +++ b/arch/arm64/include/asm/tlb.h @@ -75,18 +75,20 @@ static inline void tlb_flush(struct mmu_gather *tlb) static inline void __pte_free_tlb(struct mmu_gather *tlb, pgtable_t pte, unsigned long addr) { - pgtable_pte_page_dtor(pte); - tlb_remove_table(tlb, pte); + struct ptdesc *ptdesc = page_ptdesc(pte); + + pagetable_pte_dtor(ptdesc); + tlb_remove_ptdesc(tlb, ptdesc); } #if CONFIG_PGTABLE_LEVELS > 2 static inline void __pmd_free_tlb(struct mmu_gather *tlb, pmd_t *pmdp, unsigned long addr) { - struct page *page = virt_to_page(pmdp); + struct ptdesc *ptdesc = virt_to_ptdesc(pmdp); - pgtable_pmd_page_dtor(page); - tlb_remove_table(tlb, page); + pagetable_pmd_dtor(ptdesc); + tlb_remove_ptdesc(tlb, ptdesc); } #endif @@ -94,7 +96,7 @@ static inline void __pmd_free_tlb(struct mmu_gather *tlb, pmd_t *pmdp, static inline void __pud_free_tlb(struct mmu_gather *tlb, pud_t *pudp, unsigned long addr) { - tlb_remove_table(tlb, virt_to_page(pudp)); + tlb_remove_ptdesc(tlb, virt_to_ptdesc(pudp)); } #endif diff --git a/arch/arm64/mm/mmu.c b/arch/arm64/mm/mmu.c index af6bc8403ee4..5867a0e917b9 100644 --- a/arch/arm64/mm/mmu.c +++ b/arch/arm64/mm/mmu.c @@ -426,6 +426,7 @@ static phys_addr_t __pgd_pgtable_alloc(int shift) static phys_addr_t pgd_pgtable_alloc(int shift) { phys_addr_t pa = __pgd_pgtable_alloc(shift); + struct ptdesc *ptdesc = page_ptdesc(phys_to_page(pa)); /* * Call proper page table ctor in case later we need to @@ -433,12 +434,12 @@ static phys_addr_t pgd_pgtable_alloc(int shift) * this pre-allocated page table. * * We don't select ARCH_ENABLE_SPLIT_PMD_PTLOCK if pmd is - * folded, and if so pgtable_pmd_page_ctor() becomes nop. + * folded, and if so pagetable_pte_ctor() becomes nop. */ if (shift == PAGE_SHIFT) - BUG_ON(!pgtable_pte_page_ctor(phys_to_page(pa))); + BUG_ON(!pagetable_pte_ctor(ptdesc)); else if (shift == PMD_SHIFT) - BUG_ON(!pgtable_pmd_page_ctor(phys_to_page(pa))); + BUG_ON(!pagetable_pmd_ctor(ptdesc)); return pa; } -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 12 21:09:26 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 21:09:26 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547522.855014 (Exim 4.92) (envelope-from ) id 1q8omz-00073s-4t; Mon, 12 Jun 2023 21:09:25 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547522.855014; Mon, 12 Jun 2023 21:09:25 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8omz-00073l-24; Mon, 12 Jun 2023 21:09:25 +0000 Received: by outflank-mailman (input) for mailman id 547522; Mon, 12 Jun 2023 21:09:23 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8ojJ-0007zJ-J7 for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 21:05:37 +0000 Received: from mail-yw1-x1131.google.com (mail-yw1-x1131.google.com [2607:f8b0:4864:20::1131]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id dfe5623f-0964-11ee-8611-37d641c3527e; Mon, 12 Jun 2023 23:05:35 +0200 (CEST) Received: by mail-yw1-x1131.google.com with SMTP id 00721157ae682-56d2b950447so15930767b3.2 for ; Mon, 12 Jun 2023 14:05:35 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::16]) by smtp.googlemail.com with ESMTPSA id s125-20020a817783000000b00569eb609458sm2757115ywc.81.2023.06.12.14.05.32 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 12 Jun 2023 14:05:34 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: dfe5623f-0964-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686603935; x=1689195935; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=KVp6CEv5MRUGdp+2H8Cti9WenGhaFTTbvrfHRtAH9kc=; b=SoTIqHuLCAWfEiaWrP9H5RMeBUfw/4blxWiNTbN+EgENMXgximV8iyAXgGOp4XDuw0 D58PnjKgFper5JHCNJspm8td1YpFLE0wlV4KRGzp+/fPbBvQvEKYiEzI6FQgDegSQMJA W98fOojhxmIMYwSI3q765OUKGKExSDNbpRlItg5xCIvhjN0428xf4HNUJQQ5P+6zPMLU Ma3chacqOtGRi3R200/qVHAxMt5ARo9Z4Ra2qg/4Z+GPUMiMBJG7HmJrnWozDqrgtVLb PcdJ9jNUuMMACxveQJzaFtzM2eOsEwEww1xM2Q56gVCjb83OZCynZYnfeNSiDloj+NNW ogTA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686603935; x=1689195935; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=KVp6CEv5MRUGdp+2H8Cti9WenGhaFTTbvrfHRtAH9kc=; b=BEXEgZurwPwBuJG+LD8lkwDA+6FMwE1JSEqZpcYxv68xMamruiH0Nb1dhvqBs2ily2 mmYiQy+C9DZPkxH/XFkh/02rgORW3ynSpqSyzZoNY4QkCHZB0p/0WnUN4+jOgwB8uJ3S ToW/JEZNd5Dc57DFwITTlV9NB0zSrmwy9nSWXRTNr3gOUYD0OYy4/xrQe57LpdgaPAmK ZGwqVwvkupdJuWsa/TjmYhEP9Gk32RdRhbW9udYOi1IR9jOtBszi/Hx4wDugRZC45jwV WbM6bJjQbN9/7EUjtxenNAEChEyjo/6ATodbbof8/44bB1ameo8SCstPLRJVIvsIzn9k v5cQ== X-Gm-Message-State: AC+VfDzAHaoBsNEluAjzwSRBKL4tmHkjS/TZb1nWCeCxKKO4azEbQ5Zq qkhk51rzp3qsYeX1n+VELJw= X-Google-Smtp-Source: ACHHUZ67Z3iEzfMJBv1FKsvF9wmF9wb7PLhtVh2H16srVVINddDnAoJ1jY9AaH4fP20t9BaRYfthGg== X-Received: by 2002:a0d:c7c7:0:b0:568:b10a:e430 with SMTP id j190-20020a0dc7c7000000b00568b10ae430mr10170669ywd.25.1686603934783; Mon, 12 Jun 2023 14:05:34 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" , Huacai Chen Subject: [PATCH v4 24/34] loongarch: Convert various functions to use ptdescs Date: Mon, 12 Jun 2023 14:04:13 -0700 Message-Id: <20230612210423.18611-25-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230612210423.18611-1-vishal.moola@gmail.com> References: <20230612210423.18611-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit As part of the conversions to replace pgtable constructor/destructors with ptdesc equivalents, convert various page table functions to use ptdescs. Some of the functions use the *get*page*() helper functions. Convert these to use pagetable_alloc() and ptdesc_address() instead to help standardize page tables further. Signed-off-by: Vishal Moola (Oracle) --- arch/loongarch/include/asm/pgalloc.h | 27 +++++++++++++++------------ arch/loongarch/mm/pgtable.c | 7 ++++--- 2 files changed, 19 insertions(+), 15 deletions(-) diff --git a/arch/loongarch/include/asm/pgalloc.h b/arch/loongarch/include/asm/pgalloc.h index af1d1e4a6965..70bb3bdd201e 100644 --- a/arch/loongarch/include/asm/pgalloc.h +++ b/arch/loongarch/include/asm/pgalloc.h @@ -45,9 +45,9 @@ extern void pagetable_init(void); extern pgd_t *pgd_alloc(struct mm_struct *mm); #define __pte_free_tlb(tlb, pte, address) \ -do { \ - pgtable_pte_page_dtor(pte); \ - tlb_remove_page((tlb), pte); \ +do { \ + pagetable_pte_dtor(page_ptdesc(pte)); \ + tlb_remove_page_ptdesc((tlb), page_ptdesc(pte)); \ } while (0) #ifndef __PAGETABLE_PMD_FOLDED @@ -55,18 +55,18 @@ do { \ static inline pmd_t *pmd_alloc_one(struct mm_struct *mm, unsigned long address) { pmd_t *pmd; - struct page *pg; + struct ptdesc *ptdesc; - pg = alloc_page(GFP_KERNEL_ACCOUNT); - if (!pg) + ptdesc = pagetable_alloc(GFP_KERNEL_ACCOUNT, 0); + if (!ptdesc) return NULL; - if (!pgtable_pmd_page_ctor(pg)) { - __free_page(pg); + if (!pagetable_pmd_ctor(ptdesc)) { + pagetable_free(ptdesc); return NULL; } - pmd = (pmd_t *)page_address(pg); + pmd = ptdesc_address(ptdesc); pmd_init(pmd); return pmd; } @@ -80,10 +80,13 @@ static inline pmd_t *pmd_alloc_one(struct mm_struct *mm, unsigned long address) static inline pud_t *pud_alloc_one(struct mm_struct *mm, unsigned long address) { pud_t *pud; + struct ptdesc *ptdesc = pagetable_alloc(GFP_KERNEL, 0); - pud = (pud_t *) __get_free_page(GFP_KERNEL); - if (pud) - pud_init(pud); + if (!ptdesc) + return NULL; + pud = ptdesc_address(ptdesc); + + pud_init(pud); return pud; } diff --git a/arch/loongarch/mm/pgtable.c b/arch/loongarch/mm/pgtable.c index 36a6dc0148ae..cdba10ffc0df 100644 --- a/arch/loongarch/mm/pgtable.c +++ b/arch/loongarch/mm/pgtable.c @@ -11,10 +11,11 @@ pgd_t *pgd_alloc(struct mm_struct *mm) { - pgd_t *ret, *init; + pgd_t *init, *ret = NULL; + struct ptdesc *ptdesc = pagetable_alloc(GFP_KERNEL, 0); - ret = (pgd_t *) __get_free_page(GFP_KERNEL); - if (ret) { + if (ptdesc) { + ret = (pgd_t *)ptdesc_address(ptdesc); init = pgd_offset(&init_mm, 0UL); pgd_init(ret); memcpy(ret + USER_PTRS_PER_PGD, init + USER_PTRS_PER_PGD, -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 12 21:09:32 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 21:09:32 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547530.855045 (Exim 4.92) (envelope-from ) id 1q8on6-0007xP-6D; Mon, 12 Jun 2023 21:09:32 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547530.855045; Mon, 12 Jun 2023 21:09:32 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8on6-0007x5-2V; Mon, 12 Jun 2023 21:09:32 +0000 Received: by outflank-mailman (input) for mailman id 547530; Mon, 12 Jun 2023 21:09:30 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8oj0-0007V0-8D for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 21:05:18 +0000 Received: from mail-oa1-x30.google.com (mail-oa1-x30.google.com [2001:4860:4864:20::30]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id d5014d41-0964-11ee-b232-6b7b168915f2; Mon, 12 Jun 2023 23:05:17 +0200 (CEST) Received: by mail-oa1-x30.google.com with SMTP id 586e51a60fabf-19fa4346498so2833646fac.1 for ; Mon, 12 Jun 2023 14:05:17 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::16]) by smtp.googlemail.com with ESMTPSA id s125-20020a817783000000b00569eb609458sm2757115ywc.81.2023.06.12.14.05.14 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 12 Jun 2023 14:05:16 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: d5014d41-0964-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686603916; x=1689195916; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=zgKyM3Bqye8XIR4cGys6T5IvKp0/wF3iTsg1PUDsTwk=; b=qq8ATz7qnjhMI4JQRRPl8nQkZZESoSMSYaIpvAm1fkmTP/hhJtK09QthkQIszdY2en Np28aEy4Ap8kQZZkxOILcAkOWFCvtD0mksimPr07l40BlBsZAEhYxeqfdjyxkQeqAOW5 ZTc2r2EYyhW+/Rjr+ix4rQnVYpkl/uEhOS/VFy3JybVwLZGjn5WR2cf2gk8obwo2CXkB sGSrhNlSnOkEM+3mRCKt35MlveZfVuGQGd2P1arrL9+IybQt5wlSdODKjPEGV1dnmgeN o5s8QyWZIU5taEap5wETL65HSHBQ11HVjiPK1AO1Q4tVycf+rnHrB5djM+QoDLh7ynuT 05uQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686603916; x=1689195916; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=zgKyM3Bqye8XIR4cGys6T5IvKp0/wF3iTsg1PUDsTwk=; b=kgYqUdk6An2IOfqrObTLv9GapHR+2K7fSNjzHd4Y67uwO0MBx3VBmJcYP/w6iaXmm5 8lJHZD1ILMcd8By4pn+c5zFi7t4fHb/QiaMPsyXAVWtNdu7aQjKSv1ZxSnORaOfsiXjb Ad1SGqgZVByiqLDFND2qP62q9sv9TIP1JI7lxXdPd1vLrX7qfv45A9TOhnPf9gTbnzjp WGDuCB4XM0sR3Mm7EIGm7pdYROlJ5eSlj9MkWsjGARZvyxwsi0zzJsGNEbQvynRWH6Kp fybXGLKMr6OQwAcA172nyvgcIT4ZjxrmmcL2hrLAeTh5eOoomin0U07AJUwXVkuxLQsM SPQQ== X-Gm-Message-State: AC+VfDx3ZDc/576eEgGpA+54pU2DxXwHx7Ub9PRk7NwV8/QBUsEppzfY Rtv2NDn6GGB7m9SBcsdVbmk= X-Google-Smtp-Source: ACHHUZ6OvrV5xnmsTMrRhILOepKGCGWLH/CFbB0N6d+Jj1gXGdTSLJ6+yTuiQ99sICG0ABshC/lJaQ== X-Received: by 2002:a05:6870:955c:b0:1a6:a89b:d8fa with SMTP id v28-20020a056870955c00b001a6a89bd8famr1204093oal.22.1686603916460; Mon, 12 Jun 2023 14:05:16 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" , Dave Hansen Subject: [PATCH v4 15/34] x86: Convert various functions to use ptdescs Date: Mon, 12 Jun 2023 14:04:04 -0700 Message-Id: <20230612210423.18611-16-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230612210423.18611-1-vishal.moola@gmail.com> References: <20230612210423.18611-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit In order to split struct ptdesc from struct page, convert various functions to use ptdescs. Some of the functions use the *get*page*() helper functions. Convert these to use pagetable_alloc() and ptdesc_address() instead to help standardize page tables further. Signed-off-by: Vishal Moola (Oracle) --- arch/x86/mm/pgtable.c | 46 +++++++++++++++++++++++++------------------ 1 file changed, 27 insertions(+), 19 deletions(-) diff --git a/arch/x86/mm/pgtable.c b/arch/x86/mm/pgtable.c index 15a8009a4480..6da7fd5d4782 100644 --- a/arch/x86/mm/pgtable.c +++ b/arch/x86/mm/pgtable.c @@ -52,7 +52,7 @@ early_param("userpte", setup_userpte); void ___pte_free_tlb(struct mmu_gather *tlb, struct page *pte) { - pgtable_pte_page_dtor(pte); + pagetable_pte_dtor(page_ptdesc(pte)); paravirt_release_pte(page_to_pfn(pte)); paravirt_tlb_remove_table(tlb, pte); } @@ -60,7 +60,7 @@ void ___pte_free_tlb(struct mmu_gather *tlb, struct page *pte) #if CONFIG_PGTABLE_LEVELS > 2 void ___pmd_free_tlb(struct mmu_gather *tlb, pmd_t *pmd) { - struct page *page = virt_to_page(pmd); + struct ptdesc *ptdesc = virt_to_ptdesc(pmd); paravirt_release_pmd(__pa(pmd) >> PAGE_SHIFT); /* * NOTE! For PAE, any changes to the top page-directory-pointer-table @@ -69,8 +69,8 @@ void ___pmd_free_tlb(struct mmu_gather *tlb, pmd_t *pmd) #ifdef CONFIG_X86_PAE tlb->need_flush_all = 1; #endif - pgtable_pmd_page_dtor(page); - paravirt_tlb_remove_table(tlb, page); + pagetable_pmd_dtor(ptdesc); + paravirt_tlb_remove_table(tlb, ptdesc_page(ptdesc)); } #if CONFIG_PGTABLE_LEVELS > 3 @@ -92,16 +92,16 @@ void ___p4d_free_tlb(struct mmu_gather *tlb, p4d_t *p4d) static inline void pgd_list_add(pgd_t *pgd) { - struct page *page = virt_to_page(pgd); + struct ptdesc *ptdesc = virt_to_ptdesc(pgd); - list_add(&page->lru, &pgd_list); + list_add(&ptdesc->pt_list, &pgd_list); } static inline void pgd_list_del(pgd_t *pgd) { - struct page *page = virt_to_page(pgd); + struct ptdesc *ptdesc = virt_to_ptdesc(pgd); - list_del(&page->lru); + list_del(&ptdesc->pt_list); } #define UNSHARED_PTRS_PER_PGD \ @@ -112,12 +112,12 @@ static inline void pgd_list_del(pgd_t *pgd) static void pgd_set_mm(pgd_t *pgd, struct mm_struct *mm) { - virt_to_page(pgd)->pt_mm = mm; + virt_to_ptdesc(pgd)->pt_mm = mm; } struct mm_struct *pgd_page_get_mm(struct page *page) { - return page->pt_mm; + return page_ptdesc(page)->pt_mm; } static void pgd_ctor(struct mm_struct *mm, pgd_t *pgd) @@ -213,11 +213,14 @@ void pud_populate(struct mm_struct *mm, pud_t *pudp, pmd_t *pmd) static void free_pmds(struct mm_struct *mm, pmd_t *pmds[], int count) { int i; + struct ptdesc *ptdesc; for (i = 0; i < count; i++) if (pmds[i]) { - pgtable_pmd_page_dtor(virt_to_page(pmds[i])); - free_page((unsigned long)pmds[i]); + ptdesc = virt_to_ptdesc(pmds[i]); + + pagetable_pmd_dtor(ptdesc); + pagetable_free(ptdesc); mm_dec_nr_pmds(mm); } } @@ -232,16 +235,21 @@ static int preallocate_pmds(struct mm_struct *mm, pmd_t *pmds[], int count) gfp &= ~__GFP_ACCOUNT; for (i = 0; i < count; i++) { - pmd_t *pmd = (pmd_t *)__get_free_page(gfp); - if (!pmd) + pmd_t *pmd = NULL; + struct ptdesc *ptdesc = pagetable_alloc(gfp, 0); + + if (!ptdesc) failed = true; - if (pmd && !pgtable_pmd_page_ctor(virt_to_page(pmd))) { - free_page((unsigned long)pmd); - pmd = NULL; + if (ptdesc && !pagetable_pmd_ctor(ptdesc)) { + pagetable_free(ptdesc); + ptdesc = NULL; failed = true; } - if (pmd) + if (ptdesc) { mm_inc_nr_pmds(mm); + pmd = ptdesc_address(ptdesc); + } + pmds[i] = pmd; } @@ -830,7 +838,7 @@ int pud_free_pmd_page(pud_t *pud, unsigned long addr) free_page((unsigned long)pmd_sv); - pgtable_pmd_page_dtor(virt_to_page(pmd)); + pagetable_pmd_dtor(virt_to_ptdesc(pmd)); free_page((unsigned long)pmd); return 1; -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 12 21:09:32 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 21:09:32 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547532.855050 (Exim 4.92) (envelope-from ) id 1q8on6-00081c-Kw; Mon, 12 Jun 2023 21:09:32 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547532.855050; Mon, 12 Jun 2023 21:09:32 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8on6-00080f-D6; Mon, 12 Jun 2023 21:09:32 +0000 Received: by outflank-mailman (input) for mailman id 547532; Mon, 12 Jun 2023 21:09:31 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8oj2-0007V0-Uf for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 21:05:20 +0000 Received: from mail-yw1-x1135.google.com (mail-yw1-x1135.google.com [2607:f8b0:4864:20::1135]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id d64b84a5-0964-11ee-b232-6b7b168915f2; Mon, 12 Jun 2023 23:05:19 +0200 (CEST) Received: by mail-yw1-x1135.google.com with SMTP id 00721157ae682-56ce61769b7so31189147b3.3 for ; Mon, 12 Jun 2023 14:05:19 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::16]) by smtp.googlemail.com with ESMTPSA id s125-20020a817783000000b00569eb609458sm2757115ywc.81.2023.06.12.14.05.16 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 12 Jun 2023 14:05:18 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: d64b84a5-0964-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686603918; x=1689195918; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=2hmT3cFhGadOVawWrEtUkNd5SWK58SDjV2Pgih+1szI=; b=himkDY3BzXcg6EA5ZG9kp9xFNvbzwlmd3ysKFlAfQ5DipAZYwap/dvB4Exim775oW0 KVPaolJYaA9K8MUUp33iFdaHvNnGIP/kzOdDCjYzAM8Rkyvjl7IZlOr/E5WTm5NlTX2u vGYELLKQHp1ar3nhteE99UxNxGGVDki1Pql2NdjYxB9YZx6tMmGKr/anHIEoVnDOFboX kZwpfDTYgkrzeSZ20Y7d10AFqPK5jio2eoVjk09bUeG+aEfJ19hcsB75a2XzK/tvqj8V tYeqh80J+jD0O5wG1FFnlyniUy6btorKlJ+sAijRwKVrZoLxLyF/7YYORkdCqcodLElQ TyPg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686603919; x=1689195919; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=2hmT3cFhGadOVawWrEtUkNd5SWK58SDjV2Pgih+1szI=; b=D/lkx9nhHysJVGEBhM7BS+u4wieFuAZCu+pslZj7blOI7fyviIJM2IO9Tb9InA0bYu Dx08YcheAxmTQ5NcGaQ0kQGM63x6PN3rtJU0Dz7p1VfKXTQcDdFmKXg0ChVCOcyKBSQB uCXSVM04Y0asagv7jK+Ryh24A0K5k0cTxnsxWaoAiK+ekGhmr4qkju53c7Adk+Jf4ths KlhWdyCabdcv7VEmudp4+2CM0yl34zZk3BLQOaf/Mh/EdotTnI2FseJSIm7CnWub28oZ C0X8r7gW+hEEOeCB1dmx2Y/QvXKxwKvV/+gE58SDdMZLjsn0dpS+J6s/oA0F3fBWLcZl 5C8A== X-Gm-Message-State: AC+VfDxNlUG/PMOuzwrndGFiYnmAXDupe3X6PsDNVOx1xFLOgl0ZDenj 5X748DRm6aHdna8X4fuhCY0= X-Google-Smtp-Source: ACHHUZ7IgyuiiP+1TnHgGEhbMytW2I08DJS0i46qW890g2TeoQfHv7HLolB9L57rfMaa7j8d9Hizsw== X-Received: by 2002:a0d:ebc4:0:b0:55a:ad11:1ba2 with SMTP id u187-20020a0debc4000000b0055aad111ba2mr11427812ywe.9.1686603918612; Mon, 12 Jun 2023 14:05:18 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" , David Hildenbrand , Claudio Imbrenda Subject: [PATCH v4 16/34] s390: Convert various gmap functions to use ptdescs Date: Mon, 12 Jun 2023 14:04:05 -0700 Message-Id: <20230612210423.18611-17-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230612210423.18611-1-vishal.moola@gmail.com> References: <20230612210423.18611-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit In order to split struct ptdesc from struct page, convert various functions to use ptdescs. Some of the functions use the *get*page*() helper functions. Convert these to use pagetable_alloc() and ptdesc_address() instead to help standardize page tables further. Signed-off-by: Vishal Moola (Oracle) --- arch/s390/mm/gmap.c | 230 ++++++++++++++++++++++++-------------------- 1 file changed, 128 insertions(+), 102 deletions(-) diff --git a/arch/s390/mm/gmap.c b/arch/s390/mm/gmap.c index 81c683426b49..010e87df7299 100644 --- a/arch/s390/mm/gmap.c +++ b/arch/s390/mm/gmap.c @@ -34,7 +34,7 @@ static struct gmap *gmap_alloc(unsigned long limit) { struct gmap *gmap; - struct page *page; + struct ptdesc *ptdesc; unsigned long *table; unsigned long etype, atype; @@ -67,12 +67,12 @@ static struct gmap *gmap_alloc(unsigned long limit) spin_lock_init(&gmap->guest_table_lock); spin_lock_init(&gmap->shadow_lock); refcount_set(&gmap->ref_count, 1); - page = alloc_pages(GFP_KERNEL_ACCOUNT, CRST_ALLOC_ORDER); - if (!page) + ptdesc = pagetable_alloc(GFP_KERNEL_ACCOUNT, CRST_ALLOC_ORDER); + if (!ptdesc) goto out_free; - page->_pt_s390_gaddr = 0; - list_add(&page->lru, &gmap->crst_list); - table = page_to_virt(page); + ptdesc->_pt_s390_gaddr = 0; + list_add(&ptdesc->pt_list, &gmap->crst_list); + table = ptdesc_to_virt(ptdesc); crst_table_init(table, etype); gmap->table = table; gmap->asce = atype | _ASCE_TABLE_LENGTH | @@ -181,25 +181,25 @@ static void gmap_rmap_radix_tree_free(struct radix_tree_root *root) */ static void gmap_free(struct gmap *gmap) { - struct page *page, *next; + struct ptdesc *ptdesc, *next; /* Flush tlb of all gmaps (if not already done for shadows) */ if (!(gmap_is_shadow(gmap) && gmap->removed)) gmap_flush_tlb(gmap); /* Free all segment & region tables. */ - list_for_each_entry_safe(page, next, &gmap->crst_list, lru) { - page->_pt_s390_gaddr = 0; - __free_pages(page, CRST_ALLOC_ORDER); + list_for_each_entry_safe(ptdesc, next, &gmap->crst_list, pt_list) { + ptdesc->_pt_s390_gaddr = 0; + pagetable_free(ptdesc); } gmap_radix_tree_free(&gmap->guest_to_host); gmap_radix_tree_free(&gmap->host_to_guest); /* Free additional data for a shadow gmap */ if (gmap_is_shadow(gmap)) { - /* Free all page tables. */ - list_for_each_entry_safe(page, next, &gmap->pt_list, lru) { - page->_pt_s390_gaddr = 0; - page_table_free_pgste(page); + /* Free all ptdesc tables. */ + list_for_each_entry_safe(ptdesc, next, &gmap->pt_list, pt_list) { + ptdesc->_pt_s390_gaddr = 0; + page_table_free_pgste(ptdesc_page(ptdesc)); } gmap_rmap_radix_tree_free(&gmap->host_to_rmap); /* Release reference to the parent */ @@ -308,27 +308,27 @@ EXPORT_SYMBOL_GPL(gmap_get_enabled); static int gmap_alloc_table(struct gmap *gmap, unsigned long *table, unsigned long init, unsigned long gaddr) { - struct page *page; + struct ptdesc *ptdesc; unsigned long *new; /* since we dont free the gmap table until gmap_free we can unlock */ - page = alloc_pages(GFP_KERNEL_ACCOUNT, CRST_ALLOC_ORDER); - if (!page) + ptdesc = pagetable_alloc(GFP_KERNEL_ACCOUNT, CRST_ALLOC_ORDER); + if (!ptdesc) return -ENOMEM; - new = page_to_virt(page); + new = ptdesc_to_virt(ptdesc); crst_table_init(new, init); spin_lock(&gmap->guest_table_lock); if (*table & _REGION_ENTRY_INVALID) { - list_add(&page->lru, &gmap->crst_list); + list_add(&ptdesc->pt_list, &gmap->crst_list); *table = __pa(new) | _REGION_ENTRY_LENGTH | (*table & _REGION_ENTRY_TYPE_MASK); - page->_pt_s390_gaddr = gaddr; - page = NULL; + ptdesc->_pt_s390_gaddr = gaddr; + ptdesc = NULL; } spin_unlock(&gmap->guest_table_lock); - if (page) { - page->_pt_s390_gaddr = 0; - __free_pages(page, CRST_ALLOC_ORDER); + if (ptdesc) { + ptdesc->_pt_s390_gaddr = 0; + pagetable_free(ptdesc); } return 0; } @@ -341,15 +341,15 @@ static int gmap_alloc_table(struct gmap *gmap, unsigned long *table, */ static unsigned long __gmap_segment_gaddr(unsigned long *entry) { - struct page *page; + struct ptdesc *ptdesc; unsigned long offset, mask; offset = (unsigned long) entry / sizeof(unsigned long); offset = (offset & (PTRS_PER_PMD - 1)) * PMD_SIZE; mask = ~(PTRS_PER_PMD * sizeof(pmd_t) - 1); - page = virt_to_page((void *)((unsigned long) entry & mask)); + ptdesc = virt_to_ptdesc((void *)((unsigned long) entry & mask)); - return page->_pt_s390_gaddr + offset; + return ptdesc->_pt_s390_gaddr + offset; } /** @@ -1345,6 +1345,7 @@ static void gmap_unshadow_pgt(struct gmap *sg, unsigned long raddr) unsigned long *ste; phys_addr_t sto, pgt; struct page *page; + struct ptdesc *ptdesc; BUG_ON(!gmap_is_shadow(sg)); ste = gmap_table_walk(sg, raddr, 1); /* get segment pointer */ @@ -1358,9 +1359,11 @@ static void gmap_unshadow_pgt(struct gmap *sg, unsigned long raddr) __gmap_unshadow_pgt(sg, raddr, __va(pgt)); /* Free page table */ page = phys_to_page(pgt); - list_del(&page->lru); - page->_pt_s390_gaddr = 0; - page_table_free_pgste(page); + + ptdesc = page_ptdesc(page); + list_del(&ptdesc->pt_list); + ptdesc->_pt_s390_gaddr = 0; + page_table_free_pgste(ptdesc_page(ptdesc)); } /** @@ -1374,9 +1377,10 @@ static void gmap_unshadow_pgt(struct gmap *sg, unsigned long raddr) static void __gmap_unshadow_sgt(struct gmap *sg, unsigned long raddr, unsigned long *sgt) { - struct page *page; phys_addr_t pgt; int i; + struct page *page; + struct ptdesc *ptdesc; BUG_ON(!gmap_is_shadow(sg)); for (i = 0; i < _CRST_ENTRIES; i++, raddr += _SEGMENT_SIZE) { @@ -1387,9 +1391,11 @@ static void __gmap_unshadow_sgt(struct gmap *sg, unsigned long raddr, __gmap_unshadow_pgt(sg, raddr, __va(pgt)); /* Free page table */ page = phys_to_page(pgt); - list_del(&page->lru); - page->_pt_s390_gaddr = 0; - page_table_free_pgste(page); + + ptdesc = page_ptdesc(page); + list_del(&ptdesc->pt_list); + ptdesc->_pt_s390_gaddr = 0; + page_table_free_pgste(ptdesc_page(ptdesc)); } } @@ -1405,6 +1411,7 @@ static void gmap_unshadow_sgt(struct gmap *sg, unsigned long raddr) unsigned long r3o, *r3e; phys_addr_t sgt; struct page *page; + struct ptdesc *ptdesc; BUG_ON(!gmap_is_shadow(sg)); r3e = gmap_table_walk(sg, raddr, 2); /* get region-3 pointer */ @@ -1418,9 +1425,11 @@ static void gmap_unshadow_sgt(struct gmap *sg, unsigned long raddr) __gmap_unshadow_sgt(sg, raddr, __va(sgt)); /* Free segment table */ page = phys_to_page(sgt); - list_del(&page->lru); - page->_pt_s390_gaddr = 0; - __free_pages(page, CRST_ALLOC_ORDER); + + ptdesc = page_ptdesc(page); + list_del(&ptdesc->pt_list); + ptdesc->_pt_s390_gaddr = 0; + pagetable_free(ptdesc); } /** @@ -1434,9 +1443,10 @@ static void gmap_unshadow_sgt(struct gmap *sg, unsigned long raddr) static void __gmap_unshadow_r3t(struct gmap *sg, unsigned long raddr, unsigned long *r3t) { - struct page *page; phys_addr_t sgt; int i; + struct page *page; + struct ptdesc *ptdesc; BUG_ON(!gmap_is_shadow(sg)); for (i = 0; i < _CRST_ENTRIES; i++, raddr += _REGION3_SIZE) { @@ -1447,9 +1457,11 @@ static void __gmap_unshadow_r3t(struct gmap *sg, unsigned long raddr, __gmap_unshadow_sgt(sg, raddr, __va(sgt)); /* Free segment table */ page = phys_to_page(sgt); - list_del(&page->lru); - page->_pt_s390_gaddr = 0; - __free_pages(page, CRST_ALLOC_ORDER); + + ptdesc = page_ptdesc(page); + list_del(&ptdesc->pt_list); + ptdesc->_pt_s390_gaddr = 0; + pagetable_free(ptdesc); } } @@ -1465,6 +1477,7 @@ static void gmap_unshadow_r3t(struct gmap *sg, unsigned long raddr) unsigned long r2o, *r2e; phys_addr_t r3t; struct page *page; + struct ptdesc *ptdesc; BUG_ON(!gmap_is_shadow(sg)); r2e = gmap_table_walk(sg, raddr, 3); /* get region-2 pointer */ @@ -1478,9 +1491,11 @@ static void gmap_unshadow_r3t(struct gmap *sg, unsigned long raddr) __gmap_unshadow_r3t(sg, raddr, __va(r3t)); /* Free region 3 table */ page = phys_to_page(r3t); - list_del(&page->lru); - page->_pt_s390_gaddr = 0; - __free_pages(page, CRST_ALLOC_ORDER); + + ptdesc = page_ptdesc(page); + list_del(&ptdesc->pt_list); + ptdesc->_pt_s390_gaddr = 0; + pagetable_free(ptdesc); } /** @@ -1495,8 +1510,9 @@ static void __gmap_unshadow_r2t(struct gmap *sg, unsigned long raddr, unsigned long *r2t) { phys_addr_t r3t; - struct page *page; int i; + struct page *page; + struct ptdesc *ptdesc; BUG_ON(!gmap_is_shadow(sg)); for (i = 0; i < _CRST_ENTRIES; i++, raddr += _REGION2_SIZE) { @@ -1507,9 +1523,11 @@ static void __gmap_unshadow_r2t(struct gmap *sg, unsigned long raddr, __gmap_unshadow_r3t(sg, raddr, __va(r3t)); /* Free region 3 table */ page = phys_to_page(r3t); - list_del(&page->lru); - page->_pt_s390_gaddr = 0; - __free_pages(page, CRST_ALLOC_ORDER); + + ptdesc = page_ptdesc(page); + list_del(&ptdesc->pt_list); + ptdesc->_pt_s390_gaddr = 0; + pagetable_free(ptdesc); } } @@ -1525,6 +1543,7 @@ static void gmap_unshadow_r2t(struct gmap *sg, unsigned long raddr) unsigned long r1o, *r1e; struct page *page; phys_addr_t r2t; + struct ptdesc *ptdesc; BUG_ON(!gmap_is_shadow(sg)); r1e = gmap_table_walk(sg, raddr, 4); /* get region-1 pointer */ @@ -1538,9 +1557,11 @@ static void gmap_unshadow_r2t(struct gmap *sg, unsigned long raddr) __gmap_unshadow_r2t(sg, raddr, __va(r2t)); /* Free region 2 table */ page = phys_to_page(r2t); - list_del(&page->lru); - page->_pt_s390_gaddr = 0; - __free_pages(page, CRST_ALLOC_ORDER); + + ptdesc = page_ptdesc(page); + list_del(&ptdesc->pt_list); + ptdesc->_pt_s390_gaddr = 0; + pagetable_free(ptdesc); } /** @@ -1558,6 +1579,7 @@ static void __gmap_unshadow_r1t(struct gmap *sg, unsigned long raddr, struct page *page; phys_addr_t r2t; int i; + struct ptdesc *ptdesc; BUG_ON(!gmap_is_shadow(sg)); asce = __pa(r1t) | _ASCE_TYPE_REGION1; @@ -1571,9 +1593,11 @@ static void __gmap_unshadow_r1t(struct gmap *sg, unsigned long raddr, r1t[i] = _REGION1_ENTRY_EMPTY; /* Free region 2 table */ page = phys_to_page(r2t); - list_del(&page->lru); - page->_pt_s390_gaddr = 0; - __free_pages(page, CRST_ALLOC_ORDER); + + ptdesc = page_ptdesc(page); + list_del(&ptdesc->pt_list); + ptdesc->_pt_s390_gaddr = 0; + pagetable_free(ptdesc); } } @@ -1770,18 +1794,18 @@ int gmap_shadow_r2t(struct gmap *sg, unsigned long saddr, unsigned long r2t, unsigned long raddr, origin, offset, len; unsigned long *table; phys_addr_t s_r2t; - struct page *page; + struct ptdesc *ptdesc; int rc; BUG_ON(!gmap_is_shadow(sg)); /* Allocate a shadow region second table */ - page = alloc_pages(GFP_KERNEL_ACCOUNT, CRST_ALLOC_ORDER); - if (!page) + ptdesc = pagetable_alloc(GFP_KERNEL_ACCOUNT, CRST_ALLOC_ORDER); + if (!ptdesc) return -ENOMEM; - page->_pt_s390_gaddr = r2t & _REGION_ENTRY_ORIGIN; + ptdesc->_pt_s390_gaddr = r2t & _REGION_ENTRY_ORIGIN; if (fake) - page->_pt_s390_gaddr |= GMAP_SHADOW_FAKE_TABLE; - s_r2t = page_to_phys(page); + ptdesc->_pt_s390_gaddr |= GMAP_SHADOW_FAKE_TABLE; + s_r2t = page_to_phys(ptdesc_page(ptdesc)); /* Install shadow region second table */ spin_lock(&sg->guest_table_lock); table = gmap_table_walk(sg, saddr, 4); /* get region-1 pointer */ @@ -1802,7 +1826,7 @@ int gmap_shadow_r2t(struct gmap *sg, unsigned long saddr, unsigned long r2t, _REGION_ENTRY_TYPE_R1 | _REGION_ENTRY_INVALID; if (sg->edat_level >= 1) *table |= (r2t & _REGION_ENTRY_PROTECT); - list_add(&page->lru, &sg->crst_list); + list_add(&ptdesc->pt_list, &sg->crst_list); if (fake) { /* nothing to protect for fake tables */ *table &= ~_REGION_ENTRY_INVALID; @@ -1830,8 +1854,8 @@ int gmap_shadow_r2t(struct gmap *sg, unsigned long saddr, unsigned long r2t, return rc; out_free: spin_unlock(&sg->guest_table_lock); - page->_pt_s390_gaddr = 0; - __free_pages(page, CRST_ALLOC_ORDER); + ptdesc->_pt_s390_gaddr = 0; + pagetable_free(ptdesc); return rc; } EXPORT_SYMBOL_GPL(gmap_shadow_r2t); @@ -1855,18 +1879,18 @@ int gmap_shadow_r3t(struct gmap *sg, unsigned long saddr, unsigned long r3t, unsigned long raddr, origin, offset, len; unsigned long *table; phys_addr_t s_r3t; - struct page *page; + struct ptdesc *ptdesc; int rc; BUG_ON(!gmap_is_shadow(sg)); /* Allocate a shadow region second table */ - page = alloc_pages(GFP_KERNEL_ACCOUNT, CRST_ALLOC_ORDER); - if (!page) + ptdesc = pagetable_alloc(GFP_KERNEL_ACCOUNT, CRST_ALLOC_ORDER); + if (!ptdesc) return -ENOMEM; - page->_pt_s390_gaddr = r3t & _REGION_ENTRY_ORIGIN; + ptdesc->_pt_s390_gaddr = r3t & _REGION_ENTRY_ORIGIN; if (fake) - page->_pt_s390_gaddr |= GMAP_SHADOW_FAKE_TABLE; - s_r3t = page_to_phys(page); + ptdesc->_pt_s390_gaddr |= GMAP_SHADOW_FAKE_TABLE; + s_r3t = page_to_phys(ptdesc_page(ptdesc)); /* Install shadow region second table */ spin_lock(&sg->guest_table_lock); table = gmap_table_walk(sg, saddr, 3); /* get region-2 pointer */ @@ -1887,7 +1911,7 @@ int gmap_shadow_r3t(struct gmap *sg, unsigned long saddr, unsigned long r3t, _REGION_ENTRY_TYPE_R2 | _REGION_ENTRY_INVALID; if (sg->edat_level >= 1) *table |= (r3t & _REGION_ENTRY_PROTECT); - list_add(&page->lru, &sg->crst_list); + list_add(&ptdesc->pt_list, &sg->crst_list); if (fake) { /* nothing to protect for fake tables */ *table &= ~_REGION_ENTRY_INVALID; @@ -1915,8 +1939,8 @@ int gmap_shadow_r3t(struct gmap *sg, unsigned long saddr, unsigned long r3t, return rc; out_free: spin_unlock(&sg->guest_table_lock); - page->_pt_s390_gaddr = 0; - __free_pages(page, CRST_ALLOC_ORDER); + ptdesc->_pt_s390_gaddr = 0; + pagetable_free(ptdesc); return rc; } EXPORT_SYMBOL_GPL(gmap_shadow_r3t); @@ -1940,18 +1964,18 @@ int gmap_shadow_sgt(struct gmap *sg, unsigned long saddr, unsigned long sgt, unsigned long raddr, origin, offset, len; unsigned long *table; phys_addr_t s_sgt; - struct page *page; + struct ptdesc *ptdesc; int rc; BUG_ON(!gmap_is_shadow(sg) || (sgt & _REGION3_ENTRY_LARGE)); /* Allocate a shadow segment table */ - page = alloc_pages(GFP_KERNEL_ACCOUNT, CRST_ALLOC_ORDER); - if (!page) + ptdesc = pagetable_alloc(GFP_KERNEL_ACCOUNT, CRST_ALLOC_ORDER); + if (!ptdesc) return -ENOMEM; - page->_pt_s390_gaddr = sgt & _REGION_ENTRY_ORIGIN; + ptdesc->_pt_s390_gaddr = sgt & _REGION_ENTRY_ORIGIN; if (fake) - page->_pt_s390_gaddr |= GMAP_SHADOW_FAKE_TABLE; - s_sgt = page_to_phys(page); + ptdesc->_pt_s390_gaddr |= GMAP_SHADOW_FAKE_TABLE; + s_sgt = page_to_phys(ptdesc_page(ptdesc)); /* Install shadow region second table */ spin_lock(&sg->guest_table_lock); table = gmap_table_walk(sg, saddr, 2); /* get region-3 pointer */ @@ -1972,7 +1996,7 @@ int gmap_shadow_sgt(struct gmap *sg, unsigned long saddr, unsigned long sgt, _REGION_ENTRY_TYPE_R3 | _REGION_ENTRY_INVALID; if (sg->edat_level >= 1) *table |= sgt & _REGION_ENTRY_PROTECT; - list_add(&page->lru, &sg->crst_list); + list_add(&ptdesc->pt_list, &sg->crst_list); if (fake) { /* nothing to protect for fake tables */ *table &= ~_REGION_ENTRY_INVALID; @@ -2000,8 +2024,8 @@ int gmap_shadow_sgt(struct gmap *sg, unsigned long saddr, unsigned long sgt, return rc; out_free: spin_unlock(&sg->guest_table_lock); - page->_pt_s390_gaddr = 0; - __free_pages(page, CRST_ALLOC_ORDER); + ptdesc->_pt_s390_gaddr = 0; + pagetable_free(ptdesc); return rc; } EXPORT_SYMBOL_GPL(gmap_shadow_sgt); @@ -2024,8 +2048,9 @@ int gmap_shadow_pgt_lookup(struct gmap *sg, unsigned long saddr, int *fake) { unsigned long *table; - struct page *page; int rc; + struct page *page; + struct ptdesc *ptdesc; BUG_ON(!gmap_is_shadow(sg)); spin_lock(&sg->guest_table_lock); @@ -2033,9 +2058,10 @@ int gmap_shadow_pgt_lookup(struct gmap *sg, unsigned long saddr, if (table && !(*table & _SEGMENT_ENTRY_INVALID)) { /* Shadow page tables are full pages (pte+pgste) */ page = pfn_to_page(*table >> PAGE_SHIFT); - *pgt = page->_pt_s390_gaddr & ~GMAP_SHADOW_FAKE_TABLE; + ptdesc = page_ptdesc(page); + *pgt = ptdesc->_pt_s390_gaddr & ~GMAP_SHADOW_FAKE_TABLE; *dat_protection = !!(*table & _SEGMENT_ENTRY_PROTECT); - *fake = !!(page->_pt_s390_gaddr & GMAP_SHADOW_FAKE_TABLE); + *fake = !!(ptdesc->_pt_s390_gaddr & GMAP_SHADOW_FAKE_TABLE); rc = 0; } else { rc = -EAGAIN; @@ -2064,19 +2090,19 @@ int gmap_shadow_pgt(struct gmap *sg, unsigned long saddr, unsigned long pgt, { unsigned long raddr, origin; unsigned long *table; - struct page *page; + struct ptdesc *ptdesc; phys_addr_t s_pgt; int rc; BUG_ON(!gmap_is_shadow(sg) || (pgt & _SEGMENT_ENTRY_LARGE)); /* Allocate a shadow page table */ - page = page_table_alloc_pgste(sg->mm); - if (!page) + ptdesc = page_ptdesc(page_table_alloc_pgste(sg->mm)); + if (!ptdesc) return -ENOMEM; - page->_pt_s390_gaddr = pgt & _SEGMENT_ENTRY_ORIGIN; + ptdesc->_pt_s390_gaddr = pgt & _SEGMENT_ENTRY_ORIGIN; if (fake) - page->_pt_s390_gaddr |= GMAP_SHADOW_FAKE_TABLE; - s_pgt = page_to_phys(page); + ptdesc->_pt_s390_gaddr |= GMAP_SHADOW_FAKE_TABLE; + s_pgt = page_to_phys(ptdesc_page(ptdesc)); /* Install shadow page table */ spin_lock(&sg->guest_table_lock); table = gmap_table_walk(sg, saddr, 1); /* get segment pointer */ @@ -2094,7 +2120,7 @@ int gmap_shadow_pgt(struct gmap *sg, unsigned long saddr, unsigned long pgt, /* mark as invalid as long as the parent table is not protected */ *table = (unsigned long) s_pgt | _SEGMENT_ENTRY | (pgt & _SEGMENT_ENTRY_PROTECT) | _SEGMENT_ENTRY_INVALID; - list_add(&page->lru, &sg->pt_list); + list_add(&ptdesc->pt_list, &sg->pt_list); if (fake) { /* nothing to protect for fake tables */ *table &= ~_SEGMENT_ENTRY_INVALID; @@ -2120,8 +2146,8 @@ int gmap_shadow_pgt(struct gmap *sg, unsigned long saddr, unsigned long pgt, return rc; out_free: spin_unlock(&sg->guest_table_lock); - page->_pt_s390_gaddr = 0; - page_table_free_pgste(page); + ptdesc->_pt_s390_gaddr = 0; + page_table_free_pgste(ptdesc_page(ptdesc)); return rc; } @@ -2814,11 +2840,11 @@ EXPORT_SYMBOL_GPL(__s390_uv_destroy_range); */ void s390_unlist_old_asce(struct gmap *gmap) { - struct page *old; + struct ptdesc *old; - old = virt_to_page(gmap->table); + old = virt_to_ptdesc(gmap->table); spin_lock(&gmap->guest_table_lock); - list_del(&old->lru); + list_del(&old->pt_list); /* * Sometimes the topmost page might need to be "removed" multiple * times, for example if the VM is rebooted into secure mode several @@ -2833,7 +2859,7 @@ void s390_unlist_old_asce(struct gmap *gmap) * pointers, so list_del can work (and do nothing) without * dereferencing stale or invalid pointers. */ - INIT_LIST_HEAD(&old->lru); + INIT_LIST_HEAD(&old->pt_list); spin_unlock(&gmap->guest_table_lock); } EXPORT_SYMBOL_GPL(s390_unlist_old_asce); @@ -2854,7 +2880,7 @@ EXPORT_SYMBOL_GPL(s390_unlist_old_asce); int s390_replace_asce(struct gmap *gmap) { unsigned long asce; - struct page *page; + struct ptdesc *ptdesc; void *table; s390_unlist_old_asce(gmap); @@ -2863,10 +2889,10 @@ int s390_replace_asce(struct gmap *gmap) if ((gmap->asce & _ASCE_TYPE_MASK) == _ASCE_TYPE_SEGMENT) return -EINVAL; - page = alloc_pages(GFP_KERNEL_ACCOUNT, CRST_ALLOC_ORDER); - if (!page) + ptdesc = pagetable_alloc(GFP_KERNEL_ACCOUNT, CRST_ALLOC_ORDER); + if (!ptdesc) return -ENOMEM; - table = page_to_virt(page); + table = ptdesc_to_virt(ptdesc); memcpy(table, gmap->table, 1UL << (CRST_ALLOC_ORDER + PAGE_SHIFT)); /* @@ -2875,7 +2901,7 @@ int s390_replace_asce(struct gmap *gmap) * it will be freed when the VM is torn down. */ spin_lock(&gmap->guest_table_lock); - list_add(&page->lru, &gmap->crst_list); + list_add(&ptdesc->pt_list, &gmap->crst_list); spin_unlock(&gmap->guest_table_lock); /* Set new table origin while preserving existing ASCE control bits */ -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 12 21:09:33 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 21:09:33 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547534.855056 (Exim 4.92) (envelope-from ) id 1q8on7-0008AN-8D; Mon, 12 Jun 2023 21:09:33 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547534.855056; Mon, 12 Jun 2023 21:09:33 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8on6-00088Y-Tj; Mon, 12 Jun 2023 21:09:32 +0000 Received: by outflank-mailman (input) for mailman id 547534; Mon, 12 Jun 2023 21:09:31 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8ojA-0007V0-B4 for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 21:05:28 +0000 Received: from mail-yw1-x112e.google.com (mail-yw1-x112e.google.com [2607:f8b0:4864:20::112e]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id db1d1f61-0964-11ee-b232-6b7b168915f2; Mon, 12 Jun 2023 23:05:27 +0200 (CEST) Received: by mail-yw1-x112e.google.com with SMTP id 00721157ae682-565aa2cc428so40616037b3.1 for ; Mon, 12 Jun 2023 14:05:27 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::16]) by smtp.googlemail.com with ESMTPSA id s125-20020a817783000000b00569eb609458sm2757115ywc.81.2023.06.12.14.05.24 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 12 Jun 2023 14:05:26 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: db1d1f61-0964-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686603927; x=1689195927; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=llblHDjuRzdwObovgJjTe//ioNSPoyRpZegKgEWGdOs=; b=YRMhLn8GgjXKF9eS1CkYK8/hVT9gPYz37UeBHSWCXWxsEKTB0xKNbO9xfoQxJLGBci pUYRlNAXxGNIort4RFvyqFoVkx12q+4R5GQ2T6iKcv07wKy7zihyGs6NzbSMSMCL6Rs5 mHPuU0pXtsap85DxLGrKUtMBDvnEahRHLKEvKQOX7bhc/KG8s8E1jIJIjYHBV6Mzo8Tw JyoVIgOoI3Qu3/9ICO4yd0mqp02BwnCK/YCnIHcpYzONCtiWYcoEWw9YCE5wOdJRn8uB XPcLMuecwthMMTL6YQJ8OIdeoFxd5Ul+5c4RpJemAGRzK0WgBz8keleyqJxUgTeZRruD CsNA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686603927; x=1689195927; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=llblHDjuRzdwObovgJjTe//ioNSPoyRpZegKgEWGdOs=; b=SGLR15vYPM3lGGykeeBerzIYHWJNn58YTbxuuxsfNpypkybK+BCK6kgccaVJyL5/jd NCr5SuBA0ic6E1lQAS9tEwVSW1SfAL7djvQjyVS6T0g4EZhQlEUpokwCdrrkgm7/N18C K3D0vwAxqLlE4wOyxO+waHdezhJngB9eRBQG9PlQ1537TsfJKTxny5LaxQ+0TB1O5Pdr mepbifDUrveT/Ns648A0pgMv80swo1Dqpkqf5NiZM6SwJHwVpvC3RZjrl+804V17bp3+ XswptVB8Q9bm+B/JjjGfoK9nXWUZVstZFp0CszfFDBEavQU69ygji6htzyTbI4wlYLFJ 2hnA== X-Gm-Message-State: AC+VfDzGHN0rxJb4ZdURzRXxgjQ0zIXAVCQouvIMfFF7q+6ywcu8LgY4 zFjyZJHX6EUhxrrlNyWdF+U= X-Google-Smtp-Source: ACHHUZ4ft3mDxgWWbZVZ6VtJGRUVYiTphgdB2NgQzT9U5dEGnrQumf24dtXrB3QCjAsLfMmACVzxzw== X-Received: by 2002:a81:6d07:0:b0:56d:29a1:c1c3 with SMTP id i7-20020a816d07000000b0056d29a1c1c3mr3804535ywc.24.1686603926795; Mon, 12 Jun 2023 14:05:26 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" , Catalin Marinas Subject: [PATCH v4 20/34] arm: Convert various functions to use ptdescs Date: Mon, 12 Jun 2023 14:04:09 -0700 Message-Id: <20230612210423.18611-21-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230612210423.18611-1-vishal.moola@gmail.com> References: <20230612210423.18611-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit As part of the conversions to replace pgtable constructor/destructors with ptdesc equivalents, convert various page table functions to use ptdescs. late_alloc() also uses the __get_free_pages() helper function. Convert this to use pagetable_alloc() and ptdesc_address() instead to help standardize page tables further. Signed-off-by: Vishal Moola (Oracle) --- arch/arm/include/asm/tlb.h | 12 +++++++----- arch/arm/mm/mmu.c | 6 +++--- 2 files changed, 10 insertions(+), 8 deletions(-) diff --git a/arch/arm/include/asm/tlb.h b/arch/arm/include/asm/tlb.h index b8cbe03ad260..f40d06ad5d2a 100644 --- a/arch/arm/include/asm/tlb.h +++ b/arch/arm/include/asm/tlb.h @@ -39,7 +39,9 @@ static inline void __tlb_remove_table(void *_table) static inline void __pte_free_tlb(struct mmu_gather *tlb, pgtable_t pte, unsigned long addr) { - pgtable_pte_page_dtor(pte); + struct ptdesc *ptdesc = page_ptdesc(pte); + + pagetable_pte_dtor(ptdesc); #ifndef CONFIG_ARM_LPAE /* @@ -50,17 +52,17 @@ __pte_free_tlb(struct mmu_gather *tlb, pgtable_t pte, unsigned long addr) __tlb_adjust_range(tlb, addr - PAGE_SIZE, 2 * PAGE_SIZE); #endif - tlb_remove_table(tlb, pte); + tlb_remove_ptdesc(tlb, ptdesc); } static inline void __pmd_free_tlb(struct mmu_gather *tlb, pmd_t *pmdp, unsigned long addr) { #ifdef CONFIG_ARM_LPAE - struct page *page = virt_to_page(pmdp); + struct ptdesc *ptdesc = virt_to_ptdesc(pmdp); - pgtable_pmd_page_dtor(page); - tlb_remove_table(tlb, page); + pagetable_pmd_dtor(ptdesc); + tlb_remove_ptdesc(tlb, ptdesc); #endif } diff --git a/arch/arm/mm/mmu.c b/arch/arm/mm/mmu.c index 22292cf3381c..294518fd0240 100644 --- a/arch/arm/mm/mmu.c +++ b/arch/arm/mm/mmu.c @@ -737,11 +737,11 @@ static void __init *early_alloc(unsigned long sz) static void *__init late_alloc(unsigned long sz) { - void *ptr = (void *)__get_free_pages(GFP_PGTABLE_KERNEL, get_order(sz)); + void *ptdesc = pagetable_alloc(GFP_PGTABLE_KERNEL, get_order(sz)); - if (!ptr || !pgtable_pte_page_ctor(virt_to_page(ptr))) + if (!ptdesc || !pagetable_pte_ctor(ptdesc)) BUG(); - return ptr; + return ptdesc; } static pte_t * __init arm_pte_alloc(pmd_t *pmd, unsigned long addr, -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 12 21:09:34 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 21:09:34 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547537.855065 (Exim 4.92) (envelope-from ) id 1q8on8-0008QH-HG; Mon, 12 Jun 2023 21:09:34 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547537.855065; Mon, 12 Jun 2023 21:09:34 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8on8-0008Mb-2H; Mon, 12 Jun 2023 21:09:34 +0000 Received: by outflank-mailman (input) for mailman id 547537; Mon, 12 Jun 2023 21:09:31 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8ojX-0007zJ-U7 for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 21:05:51 +0000 Received: from mail-yw1-x1132.google.com (mail-yw1-x1132.google.com [2607:f8b0:4864:20::1132]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id e88034f7-0964-11ee-8611-37d641c3527e; Mon, 12 Jun 2023 23:05:50 +0200 (CEST) Received: by mail-yw1-x1132.google.com with SMTP id 00721157ae682-56d4f50427cso6518967b3.3 for ; Mon, 12 Jun 2023 14:05:50 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::16]) by smtp.googlemail.com with ESMTPSA id s125-20020a817783000000b00569eb609458sm2757115ywc.81.2023.06.12.14.05.47 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 12 Jun 2023 14:05:48 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: e88034f7-0964-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686603949; x=1689195949; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=z6EpXhLB/ZnHGYzIKEyphwqiyS9zUDTms38NuP0TFmY=; b=HZjqN37hCOK48cvGmZP3MyXHPsSWerODKITkESa+8okEvm66QeHMRWeJrMA+h9zAy/ b08e3G4t5lsUUKbLUtaHE2GPHfm2Y6f2xgW3YiErhjVlP8jaPnDQQDBBPDgWToXRn7mW PpzBiVyA5JSxI70xxYGR2PwmojuW4ejIHH6298KzStJQkqMFOYKQH99Y1J/uWKo9ZDSM eRMw42CLQFJ3ndhOIFwgLE2rhtWcbpTrYEwDV/LXUoaY8xrQBL0kpr9KnDHMQo57XMNA dJaliHJT5dELYDcW6j8kH/iUc98Tn/GD3Nr/eiXjSdRocwfmdaU0ArfMHM4wLvGwtdMu leiQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686603949; x=1689195949; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=z6EpXhLB/ZnHGYzIKEyphwqiyS9zUDTms38NuP0TFmY=; b=BqI8VHeqQBWszuzhuKNduyzTYWvTbKySqRAESR6wwbX+GA0ANvUtAGsNW6QR0v3Kqx bGl1pW+9OZMOVM7Iaty5NfHfEghXrKHmqmEbOdVPgV7niofJy3kd3qgrERjrTRCIIjTO MhxHpZGN9YlYXbEo6Q6Uzuwir/OD/pjbuiH12pPfuPQvZVaCZnALFHpiOSyAwIN6SZ52 ZMoNLvMnPhLrHJMk4axLunp94J/b5k5e5EmQBATWN/wrG/OkYDre/diunk+C43AU8LiV M/fjXLNoSVgZ9WN2TVZz5oycHriqk9ZVj1LlWcXdMmGVd/piZLIBXp+OuoECVju/BRRJ 02KA== X-Gm-Message-State: AC+VfDzenA5UL9KTeZHalE9QmX+d1R172MB3yH3OdYFn8NT4Km1Uo5yT UGZogIwPVaOAfF6a71qmyQs= X-Google-Smtp-Source: ACHHUZ45RyLy6yl6Drr+w1zJryROJeWNSP67xpIchmrzxG/I82VOblMbJJSkZ2edvv8Qj+2hZ+73Vw== X-Received: by 2002:a81:7bd6:0:b0:565:d517:e714 with SMTP id w205-20020a817bd6000000b00565d517e714mr7606123ywc.25.1686603949233; Mon, 12 Jun 2023 14:05:49 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" , "David S. Miller" Subject: [PATCH v4 31/34] sparc64: Convert various functions to use ptdescs Date: Mon, 12 Jun 2023 14:04:20 -0700 Message-Id: <20230612210423.18611-32-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230612210423.18611-1-vishal.moola@gmail.com> References: <20230612210423.18611-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit As part of the conversions to replace pgtable constructor/destructors with ptdesc equivalents, convert various page table functions to use ptdescs. Signed-off-by: Vishal Moola (Oracle) --- arch/sparc/mm/init_64.c | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/arch/sparc/mm/init_64.c b/arch/sparc/mm/init_64.c index 04f9db0c3111..105915cd2eee 100644 --- a/arch/sparc/mm/init_64.c +++ b/arch/sparc/mm/init_64.c @@ -2893,14 +2893,15 @@ pte_t *pte_alloc_one_kernel(struct mm_struct *mm) pgtable_t pte_alloc_one(struct mm_struct *mm) { - struct page *page = alloc_page(GFP_KERNEL | __GFP_ZERO); - if (!page) + struct ptdesc *ptdesc = pagetable_alloc(GFP_KERNEL | __GFP_ZERO, 0); + + if (!ptdesc) return NULL; - if (!pgtable_pte_page_ctor(page)) { - __free_page(page); + if (!pagetable_pte_ctor(ptdesc)) { + pagetable_free(ptdesc); return NULL; } - return (pte_t *) page_address(page); + return ptdesc_address(ptdesc); } void pte_free_kernel(struct mm_struct *mm, pte_t *pte) @@ -2910,10 +2911,10 @@ void pte_free_kernel(struct mm_struct *mm, pte_t *pte) static void __pte_free(pgtable_t pte) { - struct page *page = virt_to_page(pte); + struct ptdesc *ptdesc = virt_to_ptdesc(pte); - pgtable_pte_page_dtor(page); - __free_page(page); + pagetable_pte_dtor(ptdesc); + pagetable_free(ptdesc); } void pte_free(struct mm_struct *mm, pgtable_t pte) -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 12 21:09:35 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 21:09:35 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547538.855072 (Exim 4.92) (envelope-from ) id 1q8on9-00005g-2F; Mon, 12 Jun 2023 21:09:35 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547538.855072; Mon, 12 Jun 2023 21:09:34 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8on8-0008VO-Nb; Mon, 12 Jun 2023 21:09:34 +0000 Received: by outflank-mailman (input) for mailman id 547538; Mon, 12 Jun 2023 21:09:32 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8ojB-0007zJ-D4 for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 21:05:29 +0000 Received: from mail-yw1-x1136.google.com (mail-yw1-x1136.google.com [2607:f8b0:4864:20::1136]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id d9ed4059-0964-11ee-8611-37d641c3527e; Mon, 12 Jun 2023 23:05:25 +0200 (CEST) Received: by mail-yw1-x1136.google.com with SMTP id 00721157ae682-56cf34a3c72so28378077b3.1 for ; Mon, 12 Jun 2023 14:05:25 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::16]) by smtp.googlemail.com with ESMTPSA id s125-20020a817783000000b00569eb609458sm2757115ywc.81.2023.06.12.14.05.22 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 12 Jun 2023 14:05:24 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: d9ed4059-0964-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686603925; x=1689195925; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=ZOzPn7Z2jtK8/Rr5ywaEqtGlE/ejlN/QX/LQ5us0iZw=; b=amnQXBB4tikUqyZuYm66ERDrt0MonFbKGOEZfuTs2nAKMZrZX44zBIkrZ9ZRA+fa06 AyRj50rDxNfHhQPMlo167Gc41a6L1LuDKJ258/2NPg0RLjnehfyC8Q3Sm9AoXuOB8wna AK82U9SCt1rBakvYMiJ/vf5JAUixz4Ru3K2k7WFZarIq7YpCiX1p1YPhbePfgV7HLqZ+ kNFkfK9EfSJ1kUzZet7nsXlMsD1vEo9vMFOs67Cs6PkQ7Z4TWwViMHDRmAjVmKbDbb6h AGLOD6SK7T6AuaFbMvMXKIFXkvVjI92aE3GZuD3T4HWNlPXuHq87MICVALiAwdvuGzfw BW+A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686603925; x=1689195925; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=ZOzPn7Z2jtK8/Rr5ywaEqtGlE/ejlN/QX/LQ5us0iZw=; b=esktqDxa+JtuEpE/ByUTFyg6UI40pF6Y7pqwrQls0P9iu0PQX0ljF40u09GouaYAYG rH6OWraIDOAdfwR2Aq+F6AX/X9Fx1/Nr1gBZqsz8iUlzTbVd6TxwGFPz/IBnnaaIhLz9 NSKbOLCaoAzwq1YEDdELF4HQIwUsQFYoxKGCKKNF5TuLpoScKHHLMJdvI/twjuMmXyAN ipNsgZXvJTZdTiYfoeg4dCSQ0umTdLPjFZrc4UKfc+ahFPLFwGtvk5KlF39d75LOQVDH Y3BcSGSQ8+77HnXdYqqFWF17BmrAnKLJU7qu5opAZrcZYIyyBeXmiAI+/zJXa0cddgdM Q2gQ== X-Gm-Message-State: AC+VfDyOg/BRWAysiTcgGApq33db1DgVfw4mrmId4+QJla33ey3xLxZk B1yyHcwLbLOsswTk9aTRExE= X-Google-Smtp-Source: ACHHUZ6Cwt/E6dG3WFyoFqOmBAzPgcTMvw0zuz67x28fyF+Rzf5uGkmgtov/aqSyP68nWBC9sA7rZQ== X-Received: by 2002:a81:84ce:0:b0:56d:4f2e:6f83 with SMTP id u197-20020a8184ce000000b0056d4f2e6f83mr1630242ywf.4.1686603924760; Mon, 12 Jun 2023 14:05:24 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" Subject: [PATCH v4 19/34] pgalloc: Convert various functions to use ptdescs Date: Mon, 12 Jun 2023 14:04:08 -0700 Message-Id: <20230612210423.18611-20-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230612210423.18611-1-vishal.moola@gmail.com> References: <20230612210423.18611-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit As part of the conversions to replace pgtable constructor/destructors with ptdesc equivalents, convert various page table functions to use ptdescs. Some of the functions use the *get*page*() helper functions. Convert these to use pagetable_alloc() and ptdesc_address() instead to help standardize page tables further. Signed-off-by: Vishal Moola (Oracle) --- include/asm-generic/pgalloc.h | 62 +++++++++++++++++++++-------------- 1 file changed, 37 insertions(+), 25 deletions(-) diff --git a/include/asm-generic/pgalloc.h b/include/asm-generic/pgalloc.h index a7cf825befae..3fd6ce79e654 100644 --- a/include/asm-generic/pgalloc.h +++ b/include/asm-generic/pgalloc.h @@ -18,7 +18,11 @@ */ static inline pte_t *__pte_alloc_one_kernel(struct mm_struct *mm) { - return (pte_t *)__get_free_page(GFP_PGTABLE_KERNEL); + struct ptdesc *ptdesc = pagetable_alloc(GFP_PGTABLE_KERNEL, 0); + + if (!ptdesc) + return NULL; + return ptdesc_address(ptdesc); } #ifndef __HAVE_ARCH_PTE_ALLOC_ONE_KERNEL @@ -41,7 +45,7 @@ static inline pte_t *pte_alloc_one_kernel(struct mm_struct *mm) */ static inline void pte_free_kernel(struct mm_struct *mm, pte_t *pte) { - free_page((unsigned long)pte); + pagetable_free(virt_to_ptdesc(pte)); } /** @@ -49,7 +53,7 @@ static inline void pte_free_kernel(struct mm_struct *mm, pte_t *pte) * @mm: the mm_struct of the current context * @gfp: GFP flags to use for the allocation * - * Allocates a page and runs the pgtable_pte_page_ctor(). + * Allocates a ptdesc and runs the pagetable_pte_ctor(). * * This function is intended for architectures that need * anything beyond simple page allocation or must have custom GFP flags. @@ -58,17 +62,17 @@ static inline void pte_free_kernel(struct mm_struct *mm, pte_t *pte) */ static inline pgtable_t __pte_alloc_one(struct mm_struct *mm, gfp_t gfp) { - struct page *pte; + struct ptdesc *ptdesc; - pte = alloc_page(gfp); - if (!pte) + ptdesc = pagetable_alloc(gfp, 0); + if (!ptdesc) return NULL; - if (!pgtable_pte_page_ctor(pte)) { - __free_page(pte); + if (!pagetable_pte_ctor(ptdesc)) { + pagetable_free(ptdesc); return NULL; } - return pte; + return ptdesc_page(ptdesc); } #ifndef __HAVE_ARCH_PTE_ALLOC_ONE @@ -76,7 +80,7 @@ static inline pgtable_t __pte_alloc_one(struct mm_struct *mm, gfp_t gfp) * pte_alloc_one - allocate a page for PTE-level user page table * @mm: the mm_struct of the current context * - * Allocates a page and runs the pgtable_pte_page_ctor(). + * Allocates a ptdesc and runs the pagetable_pte_ctor(). * * Return: `struct page` initialized as page table or %NULL on error */ @@ -98,8 +102,10 @@ static inline pgtable_t pte_alloc_one(struct mm_struct *mm) */ static inline void pte_free(struct mm_struct *mm, struct page *pte_page) { - pgtable_pte_page_dtor(pte_page); - __free_page(pte_page); + struct ptdesc *ptdesc = page_ptdesc(pte_page); + + pagetable_pte_dtor(ptdesc); + pagetable_free(ptdesc); } @@ -110,7 +116,7 @@ static inline void pte_free(struct mm_struct *mm, struct page *pte_page) * pmd_alloc_one - allocate a page for PMD-level page table * @mm: the mm_struct of the current context * - * Allocates a page and runs the pgtable_pmd_page_ctor(). + * Allocates a ptdesc and runs the pagetable_pmd_ctor(). * Allocations use %GFP_PGTABLE_USER in user context and * %GFP_PGTABLE_KERNEL in kernel context. * @@ -118,28 +124,30 @@ static inline void pte_free(struct mm_struct *mm, struct page *pte_page) */ static inline pmd_t *pmd_alloc_one(struct mm_struct *mm, unsigned long addr) { - struct page *page; + struct ptdesc *ptdesc; gfp_t gfp = GFP_PGTABLE_USER; if (mm == &init_mm) gfp = GFP_PGTABLE_KERNEL; - page = alloc_page(gfp); - if (!page) + ptdesc = pagetable_alloc(gfp, 0); + if (!ptdesc) return NULL; - if (!pgtable_pmd_page_ctor(page)) { - __free_page(page); + if (!pagetable_pmd_ctor(ptdesc)) { + pagetable_free(ptdesc); return NULL; } - return (pmd_t *)page_address(page); + return ptdesc_address(ptdesc); } #endif #ifndef __HAVE_ARCH_PMD_FREE static inline void pmd_free(struct mm_struct *mm, pmd_t *pmd) { + struct ptdesc *ptdesc = virt_to_ptdesc(pmd); + BUG_ON((unsigned long)pmd & (PAGE_SIZE-1)); - pgtable_pmd_page_dtor(virt_to_page(pmd)); - free_page((unsigned long)pmd); + pagetable_pmd_dtor(ptdesc); + pagetable_free(ptdesc); } #endif @@ -149,11 +157,15 @@ static inline void pmd_free(struct mm_struct *mm, pmd_t *pmd) static inline pud_t *__pud_alloc_one(struct mm_struct *mm, unsigned long addr) { - gfp_t gfp = GFP_PGTABLE_USER; + gfp_t gfp = GFP_PGTABLE_USER | __GFP_ZERO; + struct ptdesc *ptdesc; if (mm == &init_mm) gfp = GFP_PGTABLE_KERNEL; - return (pud_t *)get_zeroed_page(gfp); + ptdesc = pagetable_alloc(gfp, 0); + if (!ptdesc) + return NULL; + return ptdesc_address(ptdesc); } #ifndef __HAVE_ARCH_PUD_ALLOC_ONE @@ -175,7 +187,7 @@ static inline pud_t *pud_alloc_one(struct mm_struct *mm, unsigned long addr) static inline void __pud_free(struct mm_struct *mm, pud_t *pud) { BUG_ON((unsigned long)pud & (PAGE_SIZE-1)); - free_page((unsigned long)pud); + pagetable_free(virt_to_ptdesc(pud)); } #ifndef __HAVE_ARCH_PUD_FREE @@ -190,7 +202,7 @@ static inline void pud_free(struct mm_struct *mm, pud_t *pud) #ifndef __HAVE_ARCH_PGD_FREE static inline void pgd_free(struct mm_struct *mm, pgd_t *pgd) { - free_page((unsigned long)pgd); + pagetable_free(virt_to_ptdesc(pgd)); } #endif -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 12 21:09:36 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 21:09:36 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547539.855078 (Exim 4.92) (envelope-from ) id 1q8onA-0000GQ-1Z; Mon, 12 Jun 2023 21:09:36 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547539.855078; Mon, 12 Jun 2023 21:09:35 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8on9-0000De-9g; Mon, 12 Jun 2023 21:09:35 +0000 Received: by outflank-mailman (input) for mailman id 547539; Mon, 12 Jun 2023 21:09:32 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8oiy-0007V0-Co for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 21:05:16 +0000 Received: from mail-yw1-x1135.google.com (mail-yw1-x1135.google.com [2607:f8b0:4864:20::1135]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id d3cf4104-0964-11ee-b232-6b7b168915f2; Mon, 12 Jun 2023 23:05:15 +0200 (CEST) Received: by mail-yw1-x1135.google.com with SMTP id 00721157ae682-56d1cb6a607so20225327b3.2 for ; Mon, 12 Jun 2023 14:05:15 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::16]) by smtp.googlemail.com with ESMTPSA id s125-20020a817783000000b00569eb609458sm2757115ywc.81.2023.06.12.14.05.12 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 12 Jun 2023 14:05:14 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: d3cf4104-0964-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686603914; x=1689195914; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=+FIbG7hZZYadBjxNE3W8iUcLLESpTErkJHs37ORZhp8=; b=BMMTeVLiiLARHio/XE+I+jCCeZoZ/97PeMj84XvLWmMUbB9BdVCUvYIh2Us5nXhEm+ GaSZgpWEka3eZpV6QF9Ku5suybhjbTiNh30wb18mf5p0dFW0PZnCu02ldx/3kc8oSeaP hgkMZXUdVJaPYGHQpXtn3m8hqql89twVyrxmE12C9NmDu/gHq6ZxnWDz8at6uc4XM4uq jVgNP7Ttfo26QgXC06Wfp89Jm/XIZvIR1V8k58aaM2NCapiWRWOfK01T68EA7hRajFaH oJy6HK1lOn1lYlC9chHC+ep/FXR5v1W1mqYIJQPpykFbYWE7681/f5WmSIHHhv6wsGKo YetA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686603914; x=1689195914; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=+FIbG7hZZYadBjxNE3W8iUcLLESpTErkJHs37ORZhp8=; b=VYSvrF39DA7nHhDMHie06CdN0O1yKGYbMIl5QgxNiIV4dLxvqB5XH1l7nYv0Mpo6CL uiuVfpJM/aLCXCYPLckE8dAmKo22x3Ghzg70w9q3DIvZCmISiI3WEU+Zu+X+sHtaJQj5 Z2d/4ZRHrgdbA2uV1kbLqjsiHeZgsz0TEM6W24A1AMtcPqGaUn6YSwl10eV0QjLEIw8P LCbRm+oHga0c3p14jXgxXFA80XojDuPJrnDDOHKi7Y2lHIQqjY5lwnxP8zW+JmKfrN25 BuURS4vkWk/8+zIn9IcXzTcSmFjsi5vDTvpBC4wGXH0eDf4skpeAz1twm5MeJjfVKUKp trbA== X-Gm-Message-State: AC+VfDz8/G4fSlHaUq6MF1a5FgPs2NvGrF/76UuKGGpIi4ws8zC1VRMB /Laeg9FtH6SAD14YLlDK1tg= X-Google-Smtp-Source: ACHHUZ4XoQ/hY/ZwMXh2mexBZV3rZaOJ0y9b6ri+pUfVP98Mdhfd/kVsDzGgS7EyjMgcF/onsjMNTw== X-Received: by 2002:a0d:ca8c:0:b0:56d:28b:8042 with SMTP id m134-20020a0dca8c000000b0056d028b8042mr7057809ywd.40.1686603914513; Mon, 12 Jun 2023 14:05:14 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" , Christophe Leroy Subject: [PATCH v4 14/34] powerpc: Convert various functions to use ptdescs Date: Mon, 12 Jun 2023 14:04:03 -0700 Message-Id: <20230612210423.18611-15-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230612210423.18611-1-vishal.moola@gmail.com> References: <20230612210423.18611-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit In order to split struct ptdesc from struct page, convert various functions to use ptdescs. Signed-off-by: Vishal Moola (Oracle) --- arch/powerpc/mm/book3s64/mmu_context.c | 10 +++--- arch/powerpc/mm/book3s64/pgtable.c | 32 +++++++++--------- arch/powerpc/mm/pgtable-frag.c | 46 +++++++++++++------------- 3 files changed, 44 insertions(+), 44 deletions(-) diff --git a/arch/powerpc/mm/book3s64/mmu_context.c b/arch/powerpc/mm/book3s64/mmu_context.c index c766e4c26e42..1715b07c630c 100644 --- a/arch/powerpc/mm/book3s64/mmu_context.c +++ b/arch/powerpc/mm/book3s64/mmu_context.c @@ -246,15 +246,15 @@ static void destroy_contexts(mm_context_t *ctx) static void pmd_frag_destroy(void *pmd_frag) { int count; - struct page *page; + struct ptdesc *ptdesc; - page = virt_to_page(pmd_frag); + ptdesc = virt_to_ptdesc(pmd_frag); /* drop all the pending references */ count = ((unsigned long)pmd_frag & ~PAGE_MASK) >> PMD_FRAG_SIZE_SHIFT; /* We allow PTE_FRAG_NR fragments from a PTE page */ - if (atomic_sub_and_test(PMD_FRAG_NR - count, &page->pt_frag_refcount)) { - pgtable_pmd_page_dtor(page); - __free_page(page); + if (atomic_sub_and_test(PMD_FRAG_NR - count, &ptdesc->pt_frag_refcount)) { + pagetable_pmd_dtor(ptdesc); + pagetable_free(ptdesc); } } diff --git a/arch/powerpc/mm/book3s64/pgtable.c b/arch/powerpc/mm/book3s64/pgtable.c index 85c84e89e3ea..1212deeabe15 100644 --- a/arch/powerpc/mm/book3s64/pgtable.c +++ b/arch/powerpc/mm/book3s64/pgtable.c @@ -306,22 +306,22 @@ static pmd_t *get_pmd_from_cache(struct mm_struct *mm) static pmd_t *__alloc_for_pmdcache(struct mm_struct *mm) { void *ret = NULL; - struct page *page; + struct ptdesc *ptdesc; gfp_t gfp = GFP_KERNEL_ACCOUNT | __GFP_ZERO; if (mm == &init_mm) gfp &= ~__GFP_ACCOUNT; - page = alloc_page(gfp); - if (!page) + ptdesc = pagetable_alloc(gfp, 0); + if (!ptdesc) return NULL; - if (!pgtable_pmd_page_ctor(page)) { - __free_pages(page, 0); + if (!pagetable_pmd_ctor(ptdesc)) { + pagetable_free(ptdesc); return NULL; } - atomic_set(&page->pt_frag_refcount, 1); + atomic_set(&ptdesc->pt_frag_refcount, 1); - ret = page_address(page); + ret = ptdesc_address(ptdesc); /* * if we support only one fragment just return the * allocated page. @@ -331,12 +331,12 @@ static pmd_t *__alloc_for_pmdcache(struct mm_struct *mm) spin_lock(&mm->page_table_lock); /* - * If we find pgtable_page set, we return + * If we find ptdesc_page set, we return * the allocated page with single fragment * count. */ if (likely(!mm->context.pmd_frag)) { - atomic_set(&page->pt_frag_refcount, PMD_FRAG_NR); + atomic_set(&ptdesc->pt_frag_refcount, PMD_FRAG_NR); mm->context.pmd_frag = ret + PMD_FRAG_SIZE; } spin_unlock(&mm->page_table_lock); @@ -357,15 +357,15 @@ pmd_t *pmd_fragment_alloc(struct mm_struct *mm, unsigned long vmaddr) void pmd_fragment_free(unsigned long *pmd) { - struct page *page = virt_to_page(pmd); + struct ptdesc *ptdesc = virt_to_ptdesc(pmd); - if (PageReserved(page)) - return free_reserved_page(page); + if (pagetable_is_reserved(ptdesc)) + return free_reserved_ptdesc(ptdesc); - BUG_ON(atomic_read(&page->pt_frag_refcount) <= 0); - if (atomic_dec_and_test(&page->pt_frag_refcount)) { - pgtable_pmd_page_dtor(page); - __free_page(page); + BUG_ON(atomic_read(&ptdesc->pt_frag_refcount) <= 0); + if (atomic_dec_and_test(&ptdesc->pt_frag_refcount)) { + pagetable_pmd_dtor(ptdesc); + pagetable_free(ptdesc); } } diff --git a/arch/powerpc/mm/pgtable-frag.c b/arch/powerpc/mm/pgtable-frag.c index 20652daa1d7e..8961f1540209 100644 --- a/arch/powerpc/mm/pgtable-frag.c +++ b/arch/powerpc/mm/pgtable-frag.c @@ -18,15 +18,15 @@ void pte_frag_destroy(void *pte_frag) { int count; - struct page *page; + struct ptdesc *ptdesc; - page = virt_to_page(pte_frag); + ptdesc = virt_to_ptdesc(pte_frag); /* drop all the pending references */ count = ((unsigned long)pte_frag & ~PAGE_MASK) >> PTE_FRAG_SIZE_SHIFT; /* We allow PTE_FRAG_NR fragments from a PTE page */ - if (atomic_sub_and_test(PTE_FRAG_NR - count, &page->pt_frag_refcount)) { - pgtable_pte_page_dtor(page); - __free_page(page); + if (atomic_sub_and_test(PTE_FRAG_NR - count, &ptdesc->pt_frag_refcount)) { + pagetable_pte_dtor(ptdesc); + pagetable_free(ptdesc); } } @@ -55,25 +55,25 @@ static pte_t *get_pte_from_cache(struct mm_struct *mm) static pte_t *__alloc_for_ptecache(struct mm_struct *mm, int kernel) { void *ret = NULL; - struct page *page; + struct ptdesc *ptdesc; if (!kernel) { - page = alloc_page(PGALLOC_GFP | __GFP_ACCOUNT); - if (!page) + ptdesc = pagetable_alloc(PGALLOC_GFP | __GFP_ACCOUNT, 0); + if (!ptdesc) return NULL; - if (!pgtable_pte_page_ctor(page)) { - __free_page(page); + if (!pagetable_pte_ctor(ptdesc)) { + pagetable_free(ptdesc); return NULL; } } else { - page = alloc_page(PGALLOC_GFP); - if (!page) + ptdesc = pagetable_alloc(PGALLOC_GFP, 0); + if (!ptdesc) return NULL; } - atomic_set(&page->pt_frag_refcount, 1); + atomic_set(&ptdesc->pt_frag_refcount, 1); - ret = page_address(page); + ret = ptdesc_address(ptdesc); /* * if we support only one fragment just return the * allocated page. @@ -82,12 +82,12 @@ static pte_t *__alloc_for_ptecache(struct mm_struct *mm, int kernel) return ret; spin_lock(&mm->page_table_lock); /* - * If we find pgtable_page set, we return + * If we find ptdesc_page set, we return * the allocated page with single fragment * count. */ if (likely(!pte_frag_get(&mm->context))) { - atomic_set(&page->pt_frag_refcount, PTE_FRAG_NR); + atomic_set(&ptdesc->pt_frag_refcount, PTE_FRAG_NR); pte_frag_set(&mm->context, ret + PTE_FRAG_SIZE); } spin_unlock(&mm->page_table_lock); @@ -108,15 +108,15 @@ pte_t *pte_fragment_alloc(struct mm_struct *mm, int kernel) void pte_fragment_free(unsigned long *table, int kernel) { - struct page *page = virt_to_page(table); + struct ptdesc *ptdesc = virt_to_ptdesc(table); - if (PageReserved(page)) - return free_reserved_page(page); + if (pagetable_is_reserved(ptdesc)) + return free_reserved_ptdesc(ptdesc); - BUG_ON(atomic_read(&page->pt_frag_refcount) <= 0); - if (atomic_dec_and_test(&page->pt_frag_refcount)) { + BUG_ON(atomic_read(&ptdesc->pt_frag_refcount) <= 0); + if (atomic_dec_and_test(&ptdesc->pt_frag_refcount)) { if (!kernel) - pgtable_pte_page_dtor(page); - __free_page(page); + pagetable_pte_dtor(ptdesc); + pagetable_free(ptdesc); } } -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 12 21:09:37 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 21:09:37 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547540.855085 (Exim 4.92) (envelope-from ) id 1q8onA-0000Nt-Mg; Mon, 12 Jun 2023 21:09:36 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547540.855085; Mon, 12 Jun 2023 21:09:36 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8on9-0000MN-Sg; Mon, 12 Jun 2023 21:09:35 +0000 Received: by outflank-mailman (input) for mailman id 547540; Mon, 12 Jun 2023 21:09:33 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8ojU-0007zJ-6O for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 21:05:48 +0000 Received: from mail-ot1-x335.google.com (mail-ot1-x335.google.com [2607:f8b0:4864:20::335]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id e6261f1e-0964-11ee-8611-37d641c3527e; Mon, 12 Jun 2023 23:05:46 +0200 (CEST) Received: by mail-ot1-x335.google.com with SMTP id 46e09a7af769-6b2d8b5fde6so1282005a34.2 for ; Mon, 12 Jun 2023 14:05:46 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::16]) by smtp.googlemail.com with ESMTPSA id s125-20020a817783000000b00569eb609458sm2757115ywc.81.2023.06.12.14.05.43 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 12 Jun 2023 14:05:44 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: e6261f1e-0964-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686603945; x=1689195945; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=RAmT8w/AncpH6QVoSIrvIComylZ1SrhYEKCy+DX5WSQ=; b=TKVGiilQ78a/OhIPJrQkIG23uSCTs20i/bAbbkbs/oLPcc63baV2HRxlfziGdsvmbT NGwmW85cSCp6KespeqLEesubwuI3LepWWanH5S5npuzVlt9k5eU+arhtadffMS44bFKz tZe3hNLEkkGFlp7EldonlERGCsKXmABWlm5tuivlOHa4YP48jZLg/NXNUT6fL0OAV+la FfMXzF6x14kaKnLc9TNsZyJBWsa9Csrn4MI3KMBJ6+29vVkgPdAEbVwqoitINTtP8h57 PClm1IA8Ha5Fd3vbc4M29HaqMx1DRRQlZyGElsQzM+NPYmwv6tn2zngJCKwAeXiQVKW2 CRrg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686603945; x=1689195945; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=RAmT8w/AncpH6QVoSIrvIComylZ1SrhYEKCy+DX5WSQ=; b=ay3ot+sUeu8jnQrZukCvDcFjExLiwXM/3yEfrN/s1lHXPiWei6gmls0Ubs4TV3fs0g jQQjEnaU7N08pQGe7GnNwCeEHAc2lDX8hER9sG/je0jG/2ROOteb0KYjmxoVD7/u4WXR KQgyHkszCdZtRdMRK/wGRqa0Sf3F47XkJzEOYnMWGi+6U34TeF1sD5NavzuLoChJH7oY bxPSBBWvmNadSLZ4QkfsorxD6HyUj03Qq6j0IO3/rVnEyZFi1vYlI0H8nNh7g/Nu/tOV auKhSElFOMNGQlZXG0yqxQbM5cDuSxzGEipHbd6qCeFPG6FgMhqvpVUE8L46IGJhP9Ru XwxQ== X-Gm-Message-State: AC+VfDz1V9wLPsLCvrDSYkGjONmycrqkSH5xH6YPuiyams7NGwBH0+2n 0kh15z92hC3rWfvdBuvqzGw= X-Google-Smtp-Source: ACHHUZ47i0W41PgLnIyz22Ca7yXJDqII27mpfISq9Vor76sG0Ii5GTRFPk+r3wb8VVa0pQvvv4TjaQ== X-Received: by 2002:a05:6358:cc1b:b0:12b:de97:1be4 with SMTP id gx27-20020a056358cc1b00b0012bde971be4mr1697129rwb.30.1686603945076; Mon, 12 Jun 2023 14:05:45 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" , Palmer Dabbelt Subject: [PATCH v4 29/34] riscv: Convert alloc_{pmd, pte}_late() to use ptdescs Date: Mon, 12 Jun 2023 14:04:18 -0700 Message-Id: <20230612210423.18611-30-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230612210423.18611-1-vishal.moola@gmail.com> References: <20230612210423.18611-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit As part of the conversions to replace pgtable constructor/destructors with ptdesc equivalents, convert various page table functions to use ptdescs. Some of the functions use the *get*page*() helper functions. Convert these to use pagetable_alloc() and ptdesc_address() instead to help standardize page tables further. Signed-off-by: Vishal Moola (Oracle) Acked-by: Palmer Dabbelt --- arch/riscv/include/asm/pgalloc.h | 8 ++++---- arch/riscv/mm/init.c | 16 ++++++---------- 2 files changed, 10 insertions(+), 14 deletions(-) diff --git a/arch/riscv/include/asm/pgalloc.h b/arch/riscv/include/asm/pgalloc.h index 59dc12b5b7e8..d169a4f41a2e 100644 --- a/arch/riscv/include/asm/pgalloc.h +++ b/arch/riscv/include/asm/pgalloc.h @@ -153,10 +153,10 @@ static inline pgd_t *pgd_alloc(struct mm_struct *mm) #endif /* __PAGETABLE_PMD_FOLDED */ -#define __pte_free_tlb(tlb, pte, buf) \ -do { \ - pgtable_pte_page_dtor(pte); \ - tlb_remove_page((tlb), pte); \ +#define __pte_free_tlb(tlb, pte, buf) \ +do { \ + pagetable_pte_dtor(page_ptdesc(pte)); \ + tlb_remove_page_ptdesc((tlb), page_ptdesc(pte));\ } while (0) #endif /* CONFIG_MMU */ diff --git a/arch/riscv/mm/init.c b/arch/riscv/mm/init.c index 3d689ffb2072..6bfeec80bf4e 100644 --- a/arch/riscv/mm/init.c +++ b/arch/riscv/mm/init.c @@ -354,12 +354,10 @@ static inline phys_addr_t __init alloc_pte_fixmap(uintptr_t va) static phys_addr_t __init alloc_pte_late(uintptr_t va) { - unsigned long vaddr; - - vaddr = __get_free_page(GFP_KERNEL); - BUG_ON(!vaddr || !pgtable_pte_page_ctor(virt_to_page((void *)vaddr))); + struct ptdesc *ptdesc = pagetable_alloc(GFP_KERNEL, 0); - return __pa(vaddr); + BUG_ON(!ptdesc || !pagetable_pte_ctor(ptdesc)); + return __pa((pte_t *)ptdesc_address(ptdesc)); } static void __init create_pte_mapping(pte_t *ptep, @@ -437,12 +435,10 @@ static phys_addr_t __init alloc_pmd_fixmap(uintptr_t va) static phys_addr_t __init alloc_pmd_late(uintptr_t va) { - unsigned long vaddr; - - vaddr = __get_free_page(GFP_KERNEL); - BUG_ON(!vaddr || !pgtable_pmd_page_ctor(virt_to_page((void *)vaddr))); + struct ptdesc *ptdesc = pagetable_alloc(GFP_KERNEL, 0); - return __pa(vaddr); + BUG_ON(!ptdesc || !pagetable_pmd_ctor(ptdesc)); + return __pa((pmd_t *)ptdesc_address(ptdesc)); } static void __init create_pmd_mapping(pmd_t *pmdp, -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 12 21:09:38 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 21:09:38 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547542.855093 (Exim 4.92) (envelope-from ) id 1q8onC-0000iM-4Q; Mon, 12 Jun 2023 21:09:38 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547542.855093; Mon, 12 Jun 2023 21:09:37 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8onB-0000ew-Ev; Mon, 12 Jun 2023 21:09:37 +0000 Received: by outflank-mailman (input) for mailman id 547542; Mon, 12 Jun 2023 21:09:34 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8ojK-0007V0-HJ for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 21:05:38 +0000 Received: from mail-yw1-x1132.google.com (mail-yw1-x1132.google.com [2607:f8b0:4864:20::1132]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id e11834df-0964-11ee-b232-6b7b168915f2; Mon, 12 Jun 2023 23:05:37 +0200 (CEST) Received: by mail-yw1-x1132.google.com with SMTP id 00721157ae682-56cf32f5bf8so28091387b3.3 for ; Mon, 12 Jun 2023 14:05:37 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::16]) by smtp.googlemail.com with ESMTPSA id s125-20020a817783000000b00569eb609458sm2757115ywc.81.2023.06.12.14.05.34 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 12 Jun 2023 14:05:36 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: e11834df-0964-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686603937; x=1689195937; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=YznDncwA9GAqykzg54RX0MBNzB2zliFPfcggpr0Eh4s=; b=QRoyvLYEgxL/2kCjPdtGz5QAOI77H8loVEKJnu5DXjBhTeuZzXSW3sH87LjUK8GXq+ Ni0/ms01raOgbTyNhkKSK5xptFnCpOw51bCuMschp5irMPmkXquXQTS+FYmXtEVbn5yM l55Cew9WZd/PGf5LMSokC+rcq8ZKIRncx7ECXqQGG+tKKnAOMwOtO9dyfKSmSCaex2iX 2NivJzP5rq2hVV/YjxU2wV6J9nj+kvJCVEu9BAqcy2HzczmnbJeIkP/KaaT6YTF9TAWb AjjacshjGjPtqwSZWAawzFFfrAAsEWLFLRmKLAa65IfKQVb6IUHRo6JGUNBf25tg/BiS TUvQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686603937; x=1689195937; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=YznDncwA9GAqykzg54RX0MBNzB2zliFPfcggpr0Eh4s=; b=ez8yxQY/RO/5pKG/Dj0au89unuz+t7BnfHXl8DoKRnb+H7aBschtJsWecEvWG7wcmO Tc6QQXz9pe+NyqEjCtT9V/fEV7QXm67YnllcjTOnpwi0eLH3jYRfIJeWs+uaRnvUvfWA Iv+QmUh9t7YiXy1pXCtUlOZ4GC3RgugjeRpt3PXjO3eJTIQIgfPrUG4wMQ2u443mgHbU 59sQ6KVpnSbYkwVki1iyYTschO6B7dbQNnTkCvrTObW6P/5tB+A5lENriAgifYSyNZsF fpk92fwzregW9WAQKw76UTp+xwBIfrzKo8TKeQW/cz7FvetGTjKxvIKm8UtBrEbfxFaC ko9g== X-Gm-Message-State: AC+VfDwpqhlMLRLtxiHlr+qsqiGV9dXzTZI6wOeYR8EYb4nkEk2FXjVC bOF73EcXD+qDELem0M44A4c= X-Google-Smtp-Source: ACHHUZ6CPRZy4B1gHWQwGyL1jpWh6RHuanx0k7sKCLWXZpcFJmn4wjrQVTLXrK9+FDMtZqXPjFpwgg== X-Received: by 2002:a0d:cb4e:0:b0:56c:f32d:1753 with SMTP id n75-20020a0dcb4e000000b0056cf32d1753mr9075881ywd.44.1686603936731; Mon, 12 Jun 2023 14:05:36 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" , Geert Uytterhoeven Subject: [PATCH v4 25/34] m68k: Convert various functions to use ptdescs Date: Mon, 12 Jun 2023 14:04:14 -0700 Message-Id: <20230612210423.18611-26-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230612210423.18611-1-vishal.moola@gmail.com> References: <20230612210423.18611-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit As part of the conversions to replace pgtable constructor/destructors with ptdesc equivalents, convert various page table functions to use ptdescs. Some of the functions use the *get*page*() helper functions. Convert these to use pagetable_alloc() and ptdesc_address() instead to help standardize page tables further. Signed-off-by: Vishal Moola (Oracle) --- arch/m68k/include/asm/mcf_pgalloc.h | 41 ++++++++++++++-------------- arch/m68k/include/asm/sun3_pgalloc.h | 8 +++--- arch/m68k/mm/motorola.c | 4 +-- 3 files changed, 27 insertions(+), 26 deletions(-) diff --git a/arch/m68k/include/asm/mcf_pgalloc.h b/arch/m68k/include/asm/mcf_pgalloc.h index 5c2c0a864524..857949ac9431 100644 --- a/arch/m68k/include/asm/mcf_pgalloc.h +++ b/arch/m68k/include/asm/mcf_pgalloc.h @@ -7,20 +7,19 @@ extern inline void pte_free_kernel(struct mm_struct *mm, pte_t *pte) { - free_page((unsigned long) pte); + pagetable_free(virt_to_ptdesc(pte)); } extern const char bad_pmd_string[]; extern inline pte_t *pte_alloc_one_kernel(struct mm_struct *mm) { - unsigned long page = __get_free_page(GFP_DMA); + struct ptdesc *ptdesc = pagetable_alloc(GFP_DMA | __GFP_ZERO, 0); - if (!page) + if (!ptdesc) return NULL; - memset((void *)page, 0, PAGE_SIZE); - return (pte_t *) (page); + return ptdesc_address(ptdesc); } extern inline pmd_t *pmd_alloc_kernel(pgd_t *pgd, unsigned long address) @@ -35,36 +34,36 @@ extern inline pmd_t *pmd_alloc_kernel(pgd_t *pgd, unsigned long address) static inline void __pte_free_tlb(struct mmu_gather *tlb, pgtable_t pgtable, unsigned long address) { - struct page *page = virt_to_page(pgtable); + struct ptdesc *ptdesc = virt_to_ptdesc(pgtable); - pgtable_pte_page_dtor(page); - __free_page(page); + pagetable_pte_dtor(ptdesc); + pagetable_free(ptdesc); } static inline pgtable_t pte_alloc_one(struct mm_struct *mm) { - struct page *page = alloc_pages(GFP_DMA, 0); + struct ptdesc *ptdesc = pagetable_alloc(GFP_DMA, 0); pte_t *pte; - if (!page) + if (!ptdesc) return NULL; - if (!pgtable_pte_page_ctor(page)) { - __free_page(page); + if (!pagetable_pte_ctor(ptdesc)) { + pagetable_free(ptdesc); return NULL; } - pte = page_address(page); - clear_page(pte); + pte = ptdesc_address(ptdesc); + pagetable_clear(pte); return pte; } static inline void pte_free(struct mm_struct *mm, pgtable_t pgtable) { - struct page *page = virt_to_page(pgtable); + struct ptdesc *ptdesc = virt_to_ptdesc(pgtable); - pgtable_pte_page_dtor(page); - __free_page(page); + pagetable_pte_dtor(ptdesc); + pagetable_free(ptdesc); } /* @@ -75,16 +74,18 @@ static inline void pte_free(struct mm_struct *mm, pgtable_t pgtable) static inline void pgd_free(struct mm_struct *mm, pgd_t *pgd) { - free_page((unsigned long) pgd); + pagetable_free(virt_to_ptdesc(pgd)); } static inline pgd_t *pgd_alloc(struct mm_struct *mm) { pgd_t *new_pgd; + struct ptdesc *ptdesc = pagetable_alloc(GFP_DMA | GFP_NOWARN, 0); - new_pgd = (pgd_t *)__get_free_page(GFP_DMA | __GFP_NOWARN); - if (!new_pgd) + if (!ptdesc) return NULL; + new_pgd = ptdesc_address(ptdesc); + memcpy(new_pgd, swapper_pg_dir, PTRS_PER_PGD * sizeof(pgd_t)); memset(new_pgd, 0, PAGE_OFFSET >> PGDIR_SHIFT); return new_pgd; diff --git a/arch/m68k/include/asm/sun3_pgalloc.h b/arch/m68k/include/asm/sun3_pgalloc.h index 198036aff519..ff48573db2c0 100644 --- a/arch/m68k/include/asm/sun3_pgalloc.h +++ b/arch/m68k/include/asm/sun3_pgalloc.h @@ -17,10 +17,10 @@ extern const char bad_pmd_string[]; -#define __pte_free_tlb(tlb,pte,addr) \ -do { \ - pgtable_pte_page_dtor(pte); \ - tlb_remove_page((tlb), pte); \ +#define __pte_free_tlb(tlb, pte, addr) \ +do { \ + pagetable_pte_dtor(page_ptdesc(pte)); \ + tlb_remove_page_ptdesc((tlb), page_ptdesc(pte)); \ } while (0) static inline void pmd_populate_kernel(struct mm_struct *mm, pmd_t *pmd, pte_t *pte) diff --git a/arch/m68k/mm/motorola.c b/arch/m68k/mm/motorola.c index c75984e2d86b..594575a0780c 100644 --- a/arch/m68k/mm/motorola.c +++ b/arch/m68k/mm/motorola.c @@ -161,7 +161,7 @@ void *get_pointer_table(int type) * m68k doesn't have SPLIT_PTE_PTLOCKS for not having * SMP. */ - pgtable_pte_page_ctor(virt_to_page(page)); + pagetable_pte_ctor(virt_to_ptdesc(page)); } mmu_page_ctor(page); @@ -201,7 +201,7 @@ int free_pointer_table(void *table, int type) list_del(dp); mmu_page_dtor((void *)page); if (type == TABLE_PTE) - pgtable_pte_page_dtor(virt_to_page((void *)page)); + pagetable_pte_dtor(virt_to_ptdesc((void *)page)); free_page (page); return 1; } else if (ptable_list[type].next != dp) { -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 12 21:09:39 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 21:09:39 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547543.855101 (Exim 4.92) (envelope-from ) id 1q8onC-0000yw-QY; Mon, 12 Jun 2023 21:09:38 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547543.855101; Mon, 12 Jun 2023 21:09:38 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8onC-0000qy-7t; Mon, 12 Jun 2023 21:09:38 +0000 Received: by outflank-mailman (input) for mailman id 547543; Mon, 12 Jun 2023 21:09:34 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8ojc-0007V0-J2 for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 21:05:56 +0000 Received: from mail-yw1-x112e.google.com (mail-yw1-x112e.google.com [2607:f8b0:4864:20::112e]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id ec43c7e2-0964-11ee-b232-6b7b168915f2; Mon, 12 Jun 2023 23:05:56 +0200 (CEST) Received: by mail-yw1-x112e.google.com with SMTP id 00721157ae682-565aa2cc428so40620857b3.1 for ; Mon, 12 Jun 2023 14:05:55 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::16]) by smtp.googlemail.com with ESMTPSA id s125-20020a817783000000b00569eb609458sm2757115ywc.81.2023.06.12.14.05.53 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 12 Jun 2023 14:05:55 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: ec43c7e2-0964-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686603955; x=1689195955; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=8ky1uDH3HAwvFTnah34UfzHSGIz5XtPXejf2e4vlCZQ=; b=mPREwt4CZ7eyjP0awRF+7J59gjRJfQYSldhgYFU3GX8JHbZALGX3vT3PNPPDkSpada kYBrPZ3fT3IHCrmgBacTa14fpMsdfLY/wfMsw3mbb6xXz9ObJPsrzVS2jkFBCphqvrnl W2C3CK1LTKvQS4G7ilQBgC608IiFiwIK0aJZOApjzUoXUMUFaYyvbn2berfE8dovgnlw G/g86Ig9l0whUW2/5Qd6SZuVXZ3fDYfyaml8bSeL/n/Mla1l5cRkRmXZyiI9FghcycAP +JJqIE8dynwBhJPRmXp4HhikHugb2xp+HYDNKHli1SWflPjzo5LK7t0+7e7QbCiwECv3 X+rQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686603955; x=1689195955; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=8ky1uDH3HAwvFTnah34UfzHSGIz5XtPXejf2e4vlCZQ=; b=YBKIakOE8nqeC7WLOCY/i8R0usBBTIU669B/rUxkhdtAlUnAnZYhokSC6CFEqr6G1w c7/MVw0q5NJ/+14M5JJqxP82SZGNd+qjiXg5tDgR5ErAazM6nUtaFzfy1UaPWZFC7v48 wVDwpSiKrnd0gCkutjZAfJIhiXcFF+7uOTtKellrjzQz52eZ6YRPV8CD4SJp7LffrZMF nJ/F4Z7fBcEE//X+KBUHAZoWG2vwSe18eHaitZ/iRjg/D+ATF9ZhJVeZAGe8wM2Zg+q2 JQR7UFLZ9yvu2ADM79xC8q9DNMgf+56/SDHz7cbt2vFmDo6s/3YWV80/tYk0za5in+4V mfXA== X-Gm-Message-State: AC+VfDxhh4d5nZcyCrK01C/2VEtvF0V+JBHPuRMdo+0MXNuUcDGi/OjS Hx82jaE8Pgy406T+45NK4QU= X-Google-Smtp-Source: ACHHUZ6hpYtRh2B57fGd8bPmVf+MLwfrVY1EUXTrrFmJrCanxRRmSJ+wngffzdYGMbXJAYdrr0DA1A== X-Received: by 2002:a81:9e13:0:b0:56d:4b17:7e9c with SMTP id m19-20020a819e13000000b0056d4b177e9cmr1826324ywj.32.1686603955490; Mon, 12 Jun 2023 14:05:55 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" Subject: [PATCH v4 34/34] mm: Remove pgtable_{pmd, pte}_page_{ctor, dtor}() wrappers Date: Mon, 12 Jun 2023 14:04:23 -0700 Message-Id: <20230612210423.18611-35-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230612210423.18611-1-vishal.moola@gmail.com> References: <20230612210423.18611-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit These functions are no longer necessary. Remove them and cleanup Documentation referencing them. Signed-off-by: Vishal Moola (Oracle) --- Documentation/mm/split_page_table_lock.rst | 12 +++++------ .../zh_CN/mm/split_page_table_lock.rst | 14 ++++++------- include/linux/mm.h | 20 ------------------- 3 files changed, 13 insertions(+), 33 deletions(-) diff --git a/Documentation/mm/split_page_table_lock.rst b/Documentation/mm/split_page_table_lock.rst index 50ee0dfc95be..4bffec728340 100644 --- a/Documentation/mm/split_page_table_lock.rst +++ b/Documentation/mm/split_page_table_lock.rst @@ -53,7 +53,7 @@ Support of split page table lock by an architecture =================================================== There's no need in special enabling of PTE split page table lock: everything -required is done by pgtable_pte_page_ctor() and pgtable_pte_page_dtor(), which +required is done by pagetable_pte_ctor() and pagetable_pte_dtor(), which must be called on PTE table allocation / freeing. Make sure the architecture doesn't use slab allocator for page table @@ -63,8 +63,8 @@ This field shares storage with page->ptl. PMD split lock only makes sense if you have more than two page table levels. -PMD split lock enabling requires pgtable_pmd_page_ctor() call on PMD table -allocation and pgtable_pmd_page_dtor() on freeing. +PMD split lock enabling requires pagetable_pmd_ctor() call on PMD table +allocation and pagetable_pmd_dtor() on freeing. Allocation usually happens in pmd_alloc_one(), freeing in pmd_free() and pmd_free_tlb(), but make sure you cover all PMD table allocation / freeing @@ -72,7 +72,7 @@ paths: i.e X86_PAE preallocate few PMDs on pgd_alloc(). With everything in place you can set CONFIG_ARCH_ENABLE_SPLIT_PMD_PTLOCK. -NOTE: pgtable_pte_page_ctor() and pgtable_pmd_page_ctor() can fail -- it must +NOTE: pagetable_pte_ctor() and pagetable_pmd_ctor() can fail -- it must be handled properly. page->ptl @@ -92,7 +92,7 @@ trick: split lock with enabled DEBUG_SPINLOCK or DEBUG_LOCK_ALLOC, but costs one more cache line for indirect access; -The spinlock_t allocated in pgtable_pte_page_ctor() for PTE table and in -pgtable_pmd_page_ctor() for PMD table. +The spinlock_t allocated in pagetable_pte_ctor() for PTE table and in +pagetable_pmd_ctor() for PMD table. Please, never access page->ptl directly -- use appropriate helper. diff --git a/Documentation/translations/zh_CN/mm/split_page_table_lock.rst b/Documentation/translations/zh_CN/mm/split_page_table_lock.rst index 4fb7aa666037..a2c288670a24 100644 --- a/Documentation/translations/zh_CN/mm/split_page_table_lock.rst +++ b/Documentation/translations/zh_CN/mm/split_page_table_lock.rst @@ -56,16 +56,16 @@ Hugetlb特定的辅助函数: 架构对分页表锁的支持 ==================== -没有必要特别启用PTE分页表锁:所有需要的东西都由pgtable_pte_page_ctor() -和pgtable_pte_page_dtor()完成,它们必须在PTE表分配/释放时被调用。 +没有必要特别启用PTE分页表锁:所有需要的东西都由pagetable_pte_ctor() +和pagetable_pte_dtor()完成,它们必须在PTE表分配/释放时被调用。 确保架构不使用slab分配器来分配页表:slab使用page->slab_cache来分配其页 面。这个区域与page->ptl共享存储。 PMD分页锁只有在你有两个以上的页表级别时才有意义。 -启用PMD分页锁需要在PMD表分配时调用pgtable_pmd_page_ctor(),在释放时调 -用pgtable_pmd_page_dtor()。 +启用PMD分页锁需要在PMD表分配时调用pagetable_pmd_ctor(),在释放时调 +用pagetable_pmd_dtor()。 分配通常发生在pmd_alloc_one()中,释放发生在pmd_free()和pmd_free_tlb() 中,但要确保覆盖所有的PMD表分配/释放路径:即X86_PAE在pgd_alloc()中预先 @@ -73,7 +73,7 @@ PMD分页锁只有在你有两个以上的页表级别时才有意义。 一切就绪后,你可以设置CONFIG_ARCH_ENABLE_SPLIT_PMD_PTLOCK。 -注意:pgtable_pte_page_ctor()和pgtable_pmd_page_ctor()可能失败--必 +注意:pagetable_pte_ctor()和pagetable_pmd_ctor()可能失败--必 须正确处理。 page->ptl @@ -90,7 +90,7 @@ page->ptl用于访问分割页表锁,其中'page'是包含该表的页面struc 的指针并动态分配它。这允许在启用DEBUG_SPINLOCK或DEBUG_LOCK_ALLOC的 情况下使用分页锁,但由于间接访问而多花了一个缓存行。 -PTE表的spinlock_t分配在pgtable_pte_page_ctor()中,PMD表的spinlock_t -分配在pgtable_pmd_page_ctor()中。 +PTE表的spinlock_t分配在pagetable_pte_ctor()中,PMD表的spinlock_t +分配在pagetable_pmd_ctor()中。 请不要直接访问page->ptl - -使用适当的辅助函数。 diff --git a/include/linux/mm.h b/include/linux/mm.h index dc211c43610b..6d83483cf186 100644 --- a/include/linux/mm.h +++ b/include/linux/mm.h @@ -2897,11 +2897,6 @@ static inline bool pagetable_pte_ctor(struct ptdesc *ptdesc) return true; } -static inline bool pgtable_pte_page_ctor(struct page *page) -{ - return pagetable_pte_ctor(page_ptdesc(page)); -} - static inline void pagetable_pte_dtor(struct ptdesc *ptdesc) { struct folio *folio = ptdesc_folio(ptdesc); @@ -2911,11 +2906,6 @@ static inline void pagetable_pte_dtor(struct ptdesc *ptdesc) lruvec_stat_sub_folio(folio, NR_PAGETABLE); } -static inline void pgtable_pte_page_dtor(struct page *page) -{ - pagetable_pte_dtor(page_ptdesc(page)); -} - #define pte_offset_map_lock(mm, pmd, address, ptlp) \ ({ \ spinlock_t *__ptl = pte_lockptr(mm, pmd); \ @@ -3006,11 +2996,6 @@ static inline bool pagetable_pmd_ctor(struct ptdesc *ptdesc) return true; } -static inline bool pgtable_pmd_page_ctor(struct page *page) -{ - return pagetable_pmd_ctor(page_ptdesc(page)); -} - static inline void pagetable_pmd_dtor(struct ptdesc *ptdesc) { struct folio *folio = ptdesc_folio(ptdesc); @@ -3020,11 +3005,6 @@ static inline void pagetable_pmd_dtor(struct ptdesc *ptdesc) lruvec_stat_sub_folio(folio, NR_PAGETABLE); } -static inline void pgtable_pmd_page_dtor(struct page *page) -{ - pagetable_pmd_dtor(page_ptdesc(page)); -} - /* * No scalability reason to split PUD locks yet, but follow the same pattern * as the PMD locks to make it easier if we decide to. The VM should not be -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 12 21:09:41 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 21:09:41 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547544.855115 (Exim 4.92) (envelope-from ) id 1q8onE-0001GT-Dl; Mon, 12 Jun 2023 21:09:40 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547544.855115; Mon, 12 Jun 2023 21:09:40 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8onD-0001DC-Cl; Mon, 12 Jun 2023 21:09:39 +0000 Received: by outflank-mailman (input) for mailman id 547544; Mon, 12 Jun 2023 21:09:35 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8ojQ-0007V0-Ew for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 21:05:44 +0000 Received: from mail-yw1-x1129.google.com (mail-yw1-x1129.google.com [2607:f8b0:4864:20::1129]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id e4bd90bf-0964-11ee-b232-6b7b168915f2; Mon, 12 Jun 2023 23:05:44 +0200 (CEST) Received: by mail-yw1-x1129.google.com with SMTP id 00721157ae682-56d549284bbso2191237b3.0 for ; Mon, 12 Jun 2023 14:05:44 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::16]) by smtp.googlemail.com with ESMTPSA id s125-20020a817783000000b00569eb609458sm2757115ywc.81.2023.06.12.14.05.41 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 12 Jun 2023 14:05:42 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: e4bd90bf-0964-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686603943; x=1689195943; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=K1x1J4vur13K6ienQiLVxExje9aLbKUsjVFvIhcqO10=; b=iC1t7ghfm9ecJs1x+mmEzeWS2SIjJKEgK7bxy4oucR/f+MfVZU1qsYKmxWlYK3St5v mfNdwnEbyVpOCAZkZBQocohQ9uTAKfouC9/50tiV+ofF8yr/r0xQFvh1fNWAqMX4eSyF ymqrJp033zjJJcGcMzZXmmZ/yN236luhBhvJ80nOlgUY6UjLfyMIfHGDH4uYCDgG1Yuw Qj+o3ciesPmzibkl2iqbskrx7aUBCJV6cn/sc9mp4OIhLm5DRTHYxNGTzKEY2jXsQ3j0 sN44pjWt5AeKRt8Gf4eHzyt1HMP4kxf4IL2Kuq0LJJYg24qsvy+zvN4scp5/4UYjNDhu bvPA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686603943; x=1689195943; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=K1x1J4vur13K6ienQiLVxExje9aLbKUsjVFvIhcqO10=; b=BMcfmk6zeA0i9h+Mh/NpdQIAyrqo8rAVYlvbtcLiFaUOMO1xCXyS+Yh8GVeC4l1yRM aLG814unfHNppPj4jo/uysW+ZLpBZuSIhD9z71zFytHeOTFxD1sjluiN2FQ1z3ikbeW5 eOPefJY1OCPU+x8/jdbzRE+K8/xsqUvst+P+GZHT4t+xxlKlcsvgM7PApOt2oqv0GA/2 f3Vv1cWJWL3BUJpKksJ6TunWSrYH4YgGxsmEXLBLDqBvHCcwTZ2ACz4CgvxnYwOHJd/t Z5+E3II0uf65NRW6vq4Rx0YsSh5lgri/I3l0Wq9aKUgwKS78r6/ZBqElKaQQW7cni4ut xvpg== X-Gm-Message-State: AC+VfDwQDCVMlZeBtygJOPxRJZhSHPSIIpkydc7ZG/eYl/a9LfZxJEfv 4f4nHmisHwoVxV/AkoKHOBc= X-Google-Smtp-Source: ACHHUZ6tVrzAvnvTdjXheXo4jZ8pT12rQpXHIkWfs+xqz819sAsyiOSj5h9nxDMqGOKxFovlbUa4wg== X-Received: by 2002:a81:7542:0:b0:56c:e706:2e04 with SMTP id q63-20020a817542000000b0056ce7062e04mr7796917ywc.0.1686603942966; Mon, 12 Jun 2023 14:05:42 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" , Jonas Bonn Subject: [PATCH v4 28/34] openrisc: Convert __pte_free_tlb() to use ptdescs Date: Mon, 12 Jun 2023 14:04:17 -0700 Message-Id: <20230612210423.18611-29-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230612210423.18611-1-vishal.moola@gmail.com> References: <20230612210423.18611-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Part of the conversions to replace pgtable constructor/destructors with ptdesc equivalents. Signed-off-by: Vishal Moola (Oracle) --- arch/openrisc/include/asm/pgalloc.h | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/arch/openrisc/include/asm/pgalloc.h b/arch/openrisc/include/asm/pgalloc.h index b7b2b8d16fad..c6a73772a546 100644 --- a/arch/openrisc/include/asm/pgalloc.h +++ b/arch/openrisc/include/asm/pgalloc.h @@ -66,10 +66,10 @@ extern inline pgd_t *pgd_alloc(struct mm_struct *mm) extern pte_t *pte_alloc_one_kernel(struct mm_struct *mm); -#define __pte_free_tlb(tlb, pte, addr) \ -do { \ - pgtable_pte_page_dtor(pte); \ - tlb_remove_page((tlb), (pte)); \ +#define __pte_free_tlb(tlb, pte, addr) \ +do { \ + pagetable_pte_dtor(page_ptdesc(pte)); \ + tlb_remove_page_ptdesc((tlb), (page_ptdesc(pte))); \ } while (0) #endif -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 12 21:09:42 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 21:09:42 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547546.855122 (Exim 4.92) (envelope-from ) id 1q8onF-0001ho-Vt; Mon, 12 Jun 2023 21:09:41 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547546.855122; Mon, 12 Jun 2023 21:09:41 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8onF-0001bC-2p; Mon, 12 Jun 2023 21:09:41 +0000 Received: by outflank-mailman (input) for mailman id 547546; Mon, 12 Jun 2023 21:09:37 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8ojc-0007zJ-Hi for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 21:05:56 +0000 Received: from mail-oa1-x2d.google.com (mail-oa1-x2d.google.com [2001:4860:4864:20::2d]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id eaf70e05-0964-11ee-8611-37d641c3527e; Mon, 12 Jun 2023 23:05:55 +0200 (CEST) Received: by mail-oa1-x2d.google.com with SMTP id 586e51a60fabf-19674cab442so3249654fac.3 for ; Mon, 12 Jun 2023 14:05:54 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::16]) by smtp.googlemail.com with ESMTPSA id s125-20020a817783000000b00569eb609458sm2757115ywc.81.2023.06.12.14.05.51 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 12 Jun 2023 14:05:53 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: eaf70e05-0964-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686603953; x=1689195953; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=cQ/uV998f7GBK3U8fEwXlOSI96PW+5wzkUNMHiphdSU=; b=Tn4mHghr2z50QboRcFFwBXnQDC7dmOVTmd7q6odwa9ofCDQNfilhaBNviFDHX8SrYA fagx19tWV5xnG2unDu30AzBD8hFIWArocnuzCUa1K7AMS5VYUgKKhDVTLptGD0WPUw8/ ZX9JliY6gx8+hXM3OztwRe71m1A+kx2eLC7qxtJVOpdoP5HVloTMtr0/abQT4yyYQOzs IVhZgoGgAdf28rfS5OorktySibfeqB5FLW0b+HoIsUsy+Q3Hv3TNg2zjbv2EGrbvSAhn +UJqDlCblQUHBUCUqLriRDZ3qurN8WXPOHGnwhy4vkGIt3E2YX1KhqR56pPwBtbb673W dPyQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686603953; x=1689195953; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=cQ/uV998f7GBK3U8fEwXlOSI96PW+5wzkUNMHiphdSU=; b=LpyAc9Gzfg9dST032hHW8h+NqweCesYnIffv3CEMlGHYrqGXLnKFV9370BzqkxEnpw cMiAmV0WeBk5byTpA2cX9AUAYh4RhpPboIdimPUn8A2rImABgN0sVpcPQwIA/vVD/0Qk t+XNJqytzI2zkjrpIMFkFmHUd+S8GEDbAwBR9tItGu2EW9UgQ/lAJMgcuPCHD0d3O6vH T3LdzhAC+ySjhYW+4Edg+0Ucp37D9nSGLHXAYseoUg0eQiKizzXdugFPXo09t38iYPDB yG7nVLDcNbyI6bFAyrC22Ew8oMg1QSMp3vJvjr0GjxE9aWcqIR3ko18HcOvyUoEfakMW W3VQ== X-Gm-Message-State: AC+VfDw/dfLULt/rmwmXriQPNOACX/xLzEYPmpD7nhlRQ5s4eIHemjdK kXpqtXjw5iIzq/9vcSW5sM0= X-Google-Smtp-Source: ACHHUZ4ThTH5LM1afe2PTTFtQ0ZfGkzFFO1FbLLwGaoZUh9UZKP9YYPXqsENj3drsF2z7+M8WUTgQg== X-Received: by 2002:a05:6870:2207:b0:19f:5701:8c47 with SMTP id i7-20020a056870220700b0019f57018c47mr6429537oaf.9.1686603953383; Mon, 12 Jun 2023 14:05:53 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" , Richard Weinberger Subject: [PATCH v4 33/34] um: Convert {pmd, pte}_free_tlb() to use ptdescs Date: Mon, 12 Jun 2023 14:04:22 -0700 Message-Id: <20230612210423.18611-34-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230612210423.18611-1-vishal.moola@gmail.com> References: <20230612210423.18611-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Part of the conversions to replace pgtable constructor/destructors with ptdesc equivalents. Also cleans up some spacing issues. Signed-off-by: Vishal Moola (Oracle) --- arch/um/include/asm/pgalloc.h | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/arch/um/include/asm/pgalloc.h b/arch/um/include/asm/pgalloc.h index 8ec7cd46dd96..de5e31c64793 100644 --- a/arch/um/include/asm/pgalloc.h +++ b/arch/um/include/asm/pgalloc.h @@ -25,19 +25,19 @@ */ extern pgd_t *pgd_alloc(struct mm_struct *); -#define __pte_free_tlb(tlb,pte, address) \ -do { \ - pgtable_pte_page_dtor(pte); \ - tlb_remove_page((tlb),(pte)); \ +#define __pte_free_tlb(tlb, pte, address) \ +do { \ + pagetable_pte_dtor(page_ptdesc(pte)); \ + tlb_remove_page_ptdesc((tlb), (page_ptdesc(pte))); \ } while (0) #ifdef CONFIG_3_LEVEL_PGTABLES -#define __pmd_free_tlb(tlb, pmd, address) \ -do { \ - pgtable_pmd_page_dtor(virt_to_page(pmd)); \ - tlb_remove_page((tlb),virt_to_page(pmd)); \ -} while (0) \ +#define __pmd_free_tlb(tlb, pmd, address) \ +do { \ + pagetable_pmd_dtor(virt_to_ptdesc(pmd)); \ + tlb_remove_page_ptdesc((tlb), virt_to_ptdesc(pmd)); \ +} while (0) #endif -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 12 21:09:46 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 21:09:46 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547554.855142 (Exim 4.92) (envelope-from ) id 1q8onK-0002ld-3o; Mon, 12 Jun 2023 21:09:46 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547554.855142; Mon, 12 Jun 2023 21:09:46 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8onJ-0002jc-JK; Mon, 12 Jun 2023 21:09:45 +0000 Received: by outflank-mailman (input) for mailman id 547554; Mon, 12 Jun 2023 21:09:44 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8ojZ-0007V0-1L for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 21:05:53 +0000 Received: from mail-yw1-x1132.google.com (mail-yw1-x1132.google.com [2607:f8b0:4864:20::1132]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id e9c9056d-0964-11ee-b232-6b7b168915f2; Mon, 12 Jun 2023 23:05:52 +0200 (CEST) Received: by mail-yw1-x1132.google.com with SMTP id 00721157ae682-56cf916aaa2so27693137b3.3 for ; Mon, 12 Jun 2023 14:05:52 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::16]) by smtp.googlemail.com with ESMTPSA id s125-20020a817783000000b00569eb609458sm2757115ywc.81.2023.06.12.14.05.49 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 12 Jun 2023 14:05:51 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: e9c9056d-0964-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686603951; x=1689195951; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=jxwTfn+1WulDyktO0TSvPUm3DeZmyyKIR9rdY3Tk+MA=; b=eOGJOp7jJTQ8Qtwco1FoDid2kdNhU5TzJ+8oTbvEbumqL3nQk9f2JlPpUk6+vVBHXw bRV5gt25GkskwnqufNjnti+xZOoYZnavni3acnpZrn1jo+MmuLHwqDsH6AdCefai5bKk AAXb7bC/rUfzM5Y5JNC2uvXF2EwFePa6CfTpeOCze3Q765zcxWqm7xds3eAw0lRtuTsf BcL57/8mkiS9/4+PfEIujQe3OJ/SAHQmhYjUTcU73/gLJF/ExdRrGcc3uAsWdkuXE+Gy 4wgk7G2Doap3dB0ilCFuRYDRNdtR39NjevfAI+zLdtvH3iP4AClD5Rnj/kfEF228LJIt Sr1w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686603951; x=1689195951; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=jxwTfn+1WulDyktO0TSvPUm3DeZmyyKIR9rdY3Tk+MA=; b=XFeLHEMPTXX/NMA/Sodk2ABOV+tiixU3fn4e7D+2Byj9/Wjh/aUWw+QU+aGko+9VBD qj3PnUM1YgpoBuw0uQle5K9gLi9wm2yMZ7rnqU+hLv76eE2JEy6SSAugF95+BQkEpaB1 AfkgvPSD7xpBmvPj+Hq3jikFVQRyI07wOns3uKWQM1FdOqc15FVrn22mMkkriChn8OaP YlXxRnKKMRD/uWufFuSHOPeGWyJOgjeipdK6KJ4FRrB3fMJ+iqrdqHYqVRWKLKigMgPc +lTm5Mxuw+8/bAzSEpFy1bBPAWMOiRjUDUiH4TkmOqoLW+uqhCMxVmwiylGzN99X2Lw3 Ca+A== X-Gm-Message-State: AC+VfDz9hGPxTqMP3/mvDZ7RD0SUAT52wgMEMQZJxsJ81hbeZTlR/uGQ 62HrDJv042OmDyLuJx+BUSk= X-Google-Smtp-Source: ACHHUZ46bRW6OF4FDY00X+3CElfC+YpfDtCCDJShqSFxuRDw2O4jHQvSGoeDK27CBT1NdKxGixMjGA== X-Received: by 2002:a0d:cf86:0:b0:559:ed0a:96c4 with SMTP id r128-20020a0dcf86000000b00559ed0a96c4mr10849624ywd.44.1686603951409; Mon, 12 Jun 2023 14:05:51 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" , "David S. Miller" Subject: [PATCH v4 32/34] sparc: Convert pgtable_pte_page_{ctor, dtor}() to ptdesc equivalents Date: Mon, 12 Jun 2023 14:04:21 -0700 Message-Id: <20230612210423.18611-33-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230612210423.18611-1-vishal.moola@gmail.com> References: <20230612210423.18611-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Part of the conversions to replace pgtable pte constructor/destructors with ptdesc equivalents. Signed-off-by: Vishal Moola (Oracle) --- arch/sparc/mm/srmmu.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/arch/sparc/mm/srmmu.c b/arch/sparc/mm/srmmu.c index 13f027afc875..8393faa3e596 100644 --- a/arch/sparc/mm/srmmu.c +++ b/arch/sparc/mm/srmmu.c @@ -355,7 +355,8 @@ pgtable_t pte_alloc_one(struct mm_struct *mm) return NULL; page = pfn_to_page(__nocache_pa((unsigned long)ptep) >> PAGE_SHIFT); spin_lock(&mm->page_table_lock); - if (page_ref_inc_return(page) == 2 && !pgtable_pte_page_ctor(page)) { + if (page_ref_inc_return(page) == 2 && + !pagetable_pte_ctor(page_ptdesc(page))) { page_ref_dec(page); ptep = NULL; } @@ -371,7 +372,7 @@ void pte_free(struct mm_struct *mm, pgtable_t ptep) page = pfn_to_page(__nocache_pa((unsigned long)ptep) >> PAGE_SHIFT); spin_lock(&mm->page_table_lock); if (page_ref_dec_return(page) == 1) - pgtable_pte_page_dtor(page); + pagetable_pte_dtor(page_ptdesc(page)); spin_unlock(&mm->page_table_lock); srmmu_free_nocache(ptep, SRMMU_PTE_TABLE_SIZE); -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 12 21:09:50 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 21:09:50 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547556.855159 (Exim 4.92) (envelope-from ) id 1q8onN-0003VY-Ka; Mon, 12 Jun 2023 21:09:49 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547556.855159; Mon, 12 Jun 2023 21:09:49 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8onM-0003Rv-GN; Mon, 12 Jun 2023 21:09:48 +0000 Received: by outflank-mailman (input) for mailman id 547556; Mon, 12 Jun 2023 21:09:46 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8ojW-0007zJ-0H for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 21:05:50 +0000 Received: from mail-yw1-x1133.google.com (mail-yw1-x1133.google.com [2607:f8b0:4864:20::1133]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id e74685b9-0964-11ee-8611-37d641c3527e; Mon, 12 Jun 2023 23:05:48 +0200 (CEST) Received: by mail-yw1-x1133.google.com with SMTP id 00721157ae682-56cf913434cso30441907b3.3 for ; Mon, 12 Jun 2023 14:05:48 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::16]) by smtp.googlemail.com with ESMTPSA id s125-20020a817783000000b00569eb609458sm2757115ywc.81.2023.06.12.14.05.45 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 12 Jun 2023 14:05:46 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: e74685b9-0964-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686603947; x=1689195947; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=CSn6cSkj4IeRf8/BsqHClLl3fDsZeC4rpAPYblqUB6Q=; b=ciZzI2nnG7zqntS0kYws3Bstzr3nXcXM7AVbRLfJcQTue8B9i+jyLvzKLDy2A9P30Z c8kXhocxLYHnQ/QqwZQBscO/Jnyd5DcosG/E4dwS3uAecJsY0Ja9Z3xqw7MsgC6nHjA4 QA0ciLqLZYMqWOytaJmxjnukXuzthDnZTPicAtRgEtVTuV0GYf1zJiBPTow39XMnG090 B3bVtajux9wQLuem4VZP38wdaF1Bx4OpAJ5RgPldzLuFMNXFpzdfCqZWClGqvnQMYt00 /HHhjhqAxABJiO4Fj5XqD6Wx6l8ZOt09hebTgkaibUDXMgVCd7dGCAjsjguwOTWs8p4I GZ1Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686603947; x=1689195947; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=CSn6cSkj4IeRf8/BsqHClLl3fDsZeC4rpAPYblqUB6Q=; b=fNz5JH8oyP0xZvpAv7NAl0TQh7KgWl6V4oVuspNkCJIyGUIncZ4X0foAyU1oEV8ccb zuaX5SwufBSaGMOyD0BSBoEHf4q3qSCbFnmR638WqlpW2gBJ6iRn1NAn8XnhnDzD9Mei oUTiYx4o6hfPIENFaRPe5Ks41Yj8tsBG8+jNalrrABwZgoakJyQwjSWpJMiATjYuoXab FMBGFKtGl7NyUcXLidnyd2Sa0UHBAZJ9I7QG7zTFPz/YiGQZFTKAZHIKPx4pLmn9nMJY 0G4fk7t0C7J9+GFIktCk+rjQFSkZwB9j4BZ4qZUyS7CEmo9PyczseI28AK7st1hsgx6/ 5AyQ== X-Gm-Message-State: AC+VfDznMgui6oea800JaiEjK9GLmlDBjiT3Cz4pjvUbZxa0RzW/37St TKOl1NznB96JfDh4OlpPDeg= X-Google-Smtp-Source: ACHHUZ51WXkZSpSQz/Euz4h9t2P7hzzB/r3I54c+WRfw9gtRQcMJQg//XHj3D4qG81G3nuV3fW1fKw== X-Received: by 2002:a81:49c7:0:b0:56d:540b:ed07 with SMTP id w190-20020a8149c7000000b0056d540bed07mr513566ywa.48.1686603947200; Mon, 12 Jun 2023 14:05:47 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" , Yoshinori Sato , Geert Uytterhoeven , John Paul Adrian Glaubitz Subject: [PATCH v4 30/34] sh: Convert pte_free_tlb() to use ptdescs Date: Mon, 12 Jun 2023 14:04:19 -0700 Message-Id: <20230612210423.18611-31-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230612210423.18611-1-vishal.moola@gmail.com> References: <20230612210423.18611-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Part of the conversions to replace pgtable constructor/destructors with ptdesc equivalents. Also cleans up some spacing issues. Signed-off-by: Vishal Moola (Oracle) Reviewed-by: Geert Uytterhoeven Acked-by: John Paul Adrian Glaubitz --- arch/sh/include/asm/pgalloc.h | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/arch/sh/include/asm/pgalloc.h b/arch/sh/include/asm/pgalloc.h index a9e98233c4d4..5d8577ab1591 100644 --- a/arch/sh/include/asm/pgalloc.h +++ b/arch/sh/include/asm/pgalloc.h @@ -2,6 +2,7 @@ #ifndef __ASM_SH_PGALLOC_H #define __ASM_SH_PGALLOC_H +#include #include #define __HAVE_ARCH_PMD_ALLOC_ONE @@ -31,10 +32,10 @@ static inline void pmd_populate(struct mm_struct *mm, pmd_t *pmd, set_pmd(pmd, __pmd((unsigned long)page_address(pte))); } -#define __pte_free_tlb(tlb,pte,addr) \ -do { \ - pgtable_pte_page_dtor(pte); \ - tlb_remove_page((tlb), (pte)); \ +#define __pte_free_tlb(tlb, pte, addr) \ +do { \ + pagetable_pte_dtor(page_ptdesc(pte)); \ + tlb_remove_page_ptdesc((tlb), (page_ptdesc(pte))); \ } while (0) #endif /* __ASM_SH_PGALLOC_H */ -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 12 21:09:51 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 21:09:51 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547558.855165 (Exim 4.92) (envelope-from ) id 1q8onO-0003uW-Vp; Mon, 12 Jun 2023 21:09:50 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547558.855165; Mon, 12 Jun 2023 21:09:50 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8onO-0003qU-DW; Mon, 12 Jun 2023 21:09:50 +0000 Received: by outflank-mailman (input) for mailman id 547558; Mon, 12 Jun 2023 21:09:47 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8oj7-0007zJ-Cq for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 21:05:25 +0000 Received: from mail-yw1-x1129.google.com (mail-yw1-x1129.google.com [2607:f8b0:4864:20::1129]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id d799db8d-0964-11ee-8611-37d641c3527e; Mon, 12 Jun 2023 23:05:22 +0200 (CEST) Received: by mail-yw1-x1129.google.com with SMTP id 00721157ae682-56d05daf0d5so24882177b3.0 for ; Mon, 12 Jun 2023 14:05:22 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::16]) by smtp.googlemail.com with ESMTPSA id s125-20020a817783000000b00569eb609458sm2757115ywc.81.2023.06.12.14.05.18 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 12 Jun 2023 14:05:20 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: d799db8d-0964-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686603921; x=1689195921; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=g0EDlTBepFAIScUxyTJ+0DyGhEsxHu6BpoqqcqVDYAk=; b=IFfUm1+ftG1PYGDw7tHBzE4M1Nhxz2Opk18euBEqp2TKE0D4Cnor8glDaNdtYk7aEB /p/Um9wv5HZTulnWj52wM35aDfNBl/ytfQFn4qb8JI1wJsBdYyAcznp6tmoi9yCEZTm7 6pQAvSomQIY3zNEbmIOOm8oH6Wd3RhBVMaDrx4Qr1kynuYgoQqhclVeZehoeR5dFX3Yh JGLwwIfiiLg1ZgDpiJ2+qexN79hRp9c58wCClWfHqZpqGEIFqEVYYyZ/M7/EBo0JZHfV X7pxIQ4C9tp45dXnwLzutma1CHQaYyRI9+M4KE6SjIRg2r7sysMZZ/ZFUWnSf5TI5T17 f1iQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686603921; x=1689195921; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=g0EDlTBepFAIScUxyTJ+0DyGhEsxHu6BpoqqcqVDYAk=; b=RN/uvzKtD/I48Os9hGdjk+CB/o3M4DnTTJXKeCMArdvju1ql7lZE8IssKXOmbFsBN4 AiJC5e45rIfeYcckGQrRYt7HXlWlhm44bYQS+d3Qem7MAH030cSnfoJJsRSfZiV4dtkR ATI8jvqZnJ4Qt9VDk0DVsNPgkS0JZChNAzvQ5MTa3mjw3YWRUytiUgIqhD1BvenAUw5F 1mDSfbpTuzVheIQqTPu3eMib+ISIww3hPLFq0ku1JoOgTGaI7iq9pZrOKSexjyeBo9K/ YW/MY+Q0Gw2tKfOsF9Q4t9mHS6IQuVVz6RUvHVMG3llaR13rehg/QtoaZvDkNzftWM6d +A4Q== X-Gm-Message-State: AC+VfDxf3SO6gUMS5FqQXCVyJdZ0BqOpP6ES0aQEsWZnhsTeXrQguPKV SN/xSAPscjVI7WTQqCjna8w= X-Google-Smtp-Source: ACHHUZ6/5C9dV3qSGDNsxL0eIlGySV7EoNTae+xvT9pHgv1KAJMONnlMXEnOjc9e+m5K4Puq4XMFCQ== X-Received: by 2002:a0d:e2c7:0:b0:56c:f6cd:7b55 with SMTP id l190-20020a0de2c7000000b0056cf6cd7b55mr7963527ywe.6.1686603920835; Mon, 12 Jun 2023 14:05:20 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" , David Hildenbrand , Claudio Imbrenda Subject: [PATCH v4 17/34] s390: Convert various pgalloc functions to use ptdescs Date: Mon, 12 Jun 2023 14:04:06 -0700 Message-Id: <20230612210423.18611-18-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230612210423.18611-1-vishal.moola@gmail.com> References: <20230612210423.18611-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit As part of the conversions to replace pgtable constructor/destructors with ptdesc equivalents, convert various page table functions to use ptdescs. Some of the functions use the *get*page*() helper functions. Convert these to use pagetable_alloc() and ptdesc_address() instead to help standardize page tables further. Signed-off-by: Vishal Moola (Oracle) --- arch/s390/include/asm/pgalloc.h | 4 +- arch/s390/include/asm/tlb.h | 4 +- arch/s390/mm/pgalloc.c | 108 ++++++++++++++++---------------- 3 files changed, 59 insertions(+), 57 deletions(-) diff --git a/arch/s390/include/asm/pgalloc.h b/arch/s390/include/asm/pgalloc.h index 17eb618f1348..00ad9b88fda9 100644 --- a/arch/s390/include/asm/pgalloc.h +++ b/arch/s390/include/asm/pgalloc.h @@ -86,7 +86,7 @@ static inline pmd_t *pmd_alloc_one(struct mm_struct *mm, unsigned long vmaddr) if (!table) return NULL; crst_table_init(table, _SEGMENT_ENTRY_EMPTY); - if (!pgtable_pmd_page_ctor(virt_to_page(table))) { + if (!pagetable_pmd_ctor(virt_to_ptdesc(table))) { crst_table_free(mm, table); return NULL; } @@ -97,7 +97,7 @@ static inline void pmd_free(struct mm_struct *mm, pmd_t *pmd) { if (mm_pmd_folded(mm)) return; - pgtable_pmd_page_dtor(virt_to_page(pmd)); + pagetable_pmd_dtor(virt_to_ptdesc(pmd)); crst_table_free(mm, (unsigned long *) pmd); } diff --git a/arch/s390/include/asm/tlb.h b/arch/s390/include/asm/tlb.h index b91f4a9b044c..383b1f91442c 100644 --- a/arch/s390/include/asm/tlb.h +++ b/arch/s390/include/asm/tlb.h @@ -89,12 +89,12 @@ static inline void pmd_free_tlb(struct mmu_gather *tlb, pmd_t *pmd, { if (mm_pmd_folded(tlb->mm)) return; - pgtable_pmd_page_dtor(virt_to_page(pmd)); + pagetable_pmd_dtor(virt_to_ptdesc(pmd)); __tlb_adjust_range(tlb, address, PAGE_SIZE); tlb->mm->context.flush_mm = 1; tlb->freed_tables = 1; tlb->cleared_puds = 1; - tlb_remove_table(tlb, pmd); + tlb_remove_ptdesc(tlb, pmd); } /* diff --git a/arch/s390/mm/pgalloc.c b/arch/s390/mm/pgalloc.c index 6b99932abc66..eeb7c95b98cf 100644 --- a/arch/s390/mm/pgalloc.c +++ b/arch/s390/mm/pgalloc.c @@ -43,17 +43,17 @@ __initcall(page_table_register_sysctl); unsigned long *crst_table_alloc(struct mm_struct *mm) { - struct page *page = alloc_pages(GFP_KERNEL, CRST_ALLOC_ORDER); + struct ptdesc *ptdesc = pagetable_alloc(GFP_KERNEL, CRST_ALLOC_ORDER); - if (!page) + if (!ptdesc) return NULL; - arch_set_page_dat(page, CRST_ALLOC_ORDER); - return (unsigned long *) page_to_virt(page); + arch_set_page_dat(ptdesc_page(ptdesc), CRST_ALLOC_ORDER); + return (unsigned long *) ptdesc_to_virt(ptdesc); } void crst_table_free(struct mm_struct *mm, unsigned long *table) { - free_pages((unsigned long)table, CRST_ALLOC_ORDER); + pagetable_free(virt_to_ptdesc(table)); } static void __crst_table_upgrade(void *arg) @@ -140,21 +140,21 @@ static inline unsigned int atomic_xor_bits(atomic_t *v, unsigned int bits) struct page *page_table_alloc_pgste(struct mm_struct *mm) { - struct page *page; + struct ptdesc *ptdesc; u64 *table; - page = alloc_page(GFP_KERNEL); - if (page) { - table = (u64 *)page_to_virt(page); + ptdesc = pagetable_alloc(GFP_KERNEL, 0); + if (ptdesc) { + table = (u64 *)ptdesc_to_virt(ptdesc); memset64(table, _PAGE_INVALID, PTRS_PER_PTE); memset64(table + PTRS_PER_PTE, 0, PTRS_PER_PTE); } - return page; + return ptdesc_page(ptdesc); } void page_table_free_pgste(struct page *page) { - __free_page(page); + pagetable_free(page_ptdesc(page)); } #endif /* CONFIG_PGSTE */ @@ -230,7 +230,7 @@ void page_table_free_pgste(struct page *page) unsigned long *page_table_alloc(struct mm_struct *mm) { unsigned long *table; - struct page *page; + struct ptdesc *ptdesc; unsigned int mask, bit; /* Try to get a fragment of a 4K page as a 2K page table */ @@ -238,9 +238,9 @@ unsigned long *page_table_alloc(struct mm_struct *mm) table = NULL; spin_lock_bh(&mm->context.lock); if (!list_empty(&mm->context.pgtable_list)) { - page = list_first_entry(&mm->context.pgtable_list, - struct page, lru); - mask = atomic_read(&page->pt_frag_refcount); + ptdesc = list_first_entry(&mm->context.pgtable_list, + struct ptdesc, pt_list); + mask = atomic_read(&ptdesc->pt_frag_refcount); /* * The pending removal bits must also be checked. * Failure to do so might lead to an impossible @@ -253,13 +253,13 @@ unsigned long *page_table_alloc(struct mm_struct *mm) */ mask = (mask | (mask >> 4)) & 0x03U; if (mask != 0x03U) { - table = (unsigned long *) page_to_virt(page); + table = (unsigned long *) ptdesc_to_virt(ptdesc); bit = mask & 1; /* =1 -> second 2K */ if (bit) table += PTRS_PER_PTE; - atomic_xor_bits(&page->pt_frag_refcount, + atomic_xor_bits(&ptdesc->pt_frag_refcount, 0x01U << bit); - list_del(&page->lru); + list_del(&ptdesc->pt_list); } } spin_unlock_bh(&mm->context.lock); @@ -267,27 +267,27 @@ unsigned long *page_table_alloc(struct mm_struct *mm) return table; } /* Allocate a fresh page */ - page = alloc_page(GFP_KERNEL); - if (!page) + ptdesc = pagetable_alloc(GFP_KERNEL, 0); + if (!ptdesc) return NULL; - if (!pgtable_pte_page_ctor(page)) { - __free_page(page); + if (!pagetable_pte_ctor(ptdesc)) { + pagetable_free(ptdesc); return NULL; } - arch_set_page_dat(page, 0); + arch_set_page_dat(ptdesc_page(ptdesc), 0); /* Initialize page table */ - table = (unsigned long *) page_to_virt(page); + table = (unsigned long *) ptdesc_to_virt(ptdesc); if (mm_alloc_pgste(mm)) { /* Return 4K page table with PGSTEs */ - atomic_xor_bits(&page->pt_frag_refcount, 0x03U); + atomic_xor_bits(&ptdesc->pt_frag_refcount, 0x03U); memset64((u64 *)table, _PAGE_INVALID, PTRS_PER_PTE); memset64((u64 *)table + PTRS_PER_PTE, 0, PTRS_PER_PTE); } else { /* Return the first 2K fragment of the page */ - atomic_xor_bits(&page->pt_frag_refcount, 0x01U); + atomic_xor_bits(&ptdesc->pt_frag_refcount, 0x01U); memset64((u64 *)table, _PAGE_INVALID, 2 * PTRS_PER_PTE); spin_lock_bh(&mm->context.lock); - list_add(&page->lru, &mm->context.pgtable_list); + list_add(&ptdesc->pt_list, &mm->context.pgtable_list); spin_unlock_bh(&mm->context.lock); } return table; @@ -309,9 +309,8 @@ static void page_table_release_check(struct page *page, void *table, void page_table_free(struct mm_struct *mm, unsigned long *table) { unsigned int mask, bit, half; - struct page *page; + struct ptdesc *ptdesc = virt_to_ptdesc(table); - page = virt_to_page(table); if (!mm_alloc_pgste(mm)) { /* Free 2K page table fragment of a 4K page */ bit = ((unsigned long) table & ~PAGE_MASK)/(PTRS_PER_PTE*sizeof(pte_t)); @@ -321,39 +320,38 @@ void page_table_free(struct mm_struct *mm, unsigned long *table) * will happen outside of the critical section from this * function or from __tlb_remove_table() */ - mask = atomic_xor_bits(&page->pt_frag_refcount, 0x11U << bit); + mask = atomic_xor_bits(&ptdesc->pt_frag_refcount, 0x11U << bit); if (mask & 0x03U) - list_add(&page->lru, &mm->context.pgtable_list); + list_add(&ptdesc->pt_list, &mm->context.pgtable_list); else - list_del(&page->lru); + list_del(&ptdesc->pt_list); spin_unlock_bh(&mm->context.lock); - mask = atomic_xor_bits(&page->pt_frag_refcount, 0x10U << bit); + mask = atomic_xor_bits(&ptdesc->pt_frag_refcount, 0x10U << bit); if (mask != 0x00U) return; half = 0x01U << bit; } else { half = 0x03U; - mask = atomic_xor_bits(&page->pt_frag_refcount, 0x03U); + mask = atomic_xor_bits(&ptdesc->pt_frag_refcount, 0x03U); } - page_table_release_check(page, table, half, mask); - pgtable_pte_page_dtor(page); - __free_page(page); + page_table_release_check(ptdesc_page(ptdesc), table, half, mask); + pagetable_pte_dtor(ptdesc); + pagetable_free(ptdesc); } void page_table_free_rcu(struct mmu_gather *tlb, unsigned long *table, unsigned long vmaddr) { struct mm_struct *mm; - struct page *page; unsigned int bit, mask; + struct ptdesc *ptdesc = virt_to_ptdesc(table); mm = tlb->mm; - page = virt_to_page(table); if (mm_alloc_pgste(mm)) { gmap_unlink(mm, table, vmaddr); table = (unsigned long *) ((unsigned long)table | 0x03U); - tlb_remove_table(tlb, table); + tlb_remove_ptdesc(tlb, table); return; } bit = ((unsigned long) table & ~PAGE_MASK) / (PTRS_PER_PTE*sizeof(pte_t)); @@ -363,11 +361,11 @@ void page_table_free_rcu(struct mmu_gather *tlb, unsigned long *table, * outside of the critical section from __tlb_remove_table() or from * page_table_free() */ - mask = atomic_xor_bits(&page->pt_frag_refcount, 0x11U << bit); + mask = atomic_xor_bits(&ptdesc->pt_frag_refcount, 0x11U << bit); if (mask & 0x03U) - list_add_tail(&page->lru, &mm->context.pgtable_list); + list_add_tail(&ptdesc->pt_list, &mm->context.pgtable_list); else - list_del(&page->lru); + list_del(&ptdesc->pt_list); spin_unlock_bh(&mm->context.lock); table = (unsigned long *) ((unsigned long) table | (0x01U << bit)); tlb_remove_table(tlb, table); @@ -377,7 +375,7 @@ void __tlb_remove_table(void *_table) { unsigned int mask = (unsigned long) _table & 0x03U, half = mask; void *table = (void *)((unsigned long) _table ^ mask); - struct page *page = virt_to_page(table); + struct ptdesc *ptdesc = virt_to_ptdesc(table); switch (half) { case 0x00U: /* pmd, pud, or p4d */ @@ -385,18 +383,18 @@ void __tlb_remove_table(void *_table) return; case 0x01U: /* lower 2K of a 4K page table */ case 0x02U: /* higher 2K of a 4K page table */ - mask = atomic_xor_bits(&page->pt_frag_refcount, mask << 4); + mask = atomic_xor_bits(&ptdesc->pt_frag_refcount, mask << 4); if (mask != 0x00U) return; break; case 0x03U: /* 4K page table with pgstes */ - mask = atomic_xor_bits(&page->pt_frag_refcount, 0x03U); + mask = atomic_xor_bits(&ptdesc->pt_frag_refcount, 0x03U); break; } - page_table_release_check(page, table, half, mask); - pgtable_pte_page_dtor(page); - __free_page(page); + page_table_release_check(ptdesc_page(ptdesc), table, half, mask); + pagetable_pte_dtor(ptdesc); + pagetable_free(ptdesc); } /* @@ -424,16 +422,20 @@ static void base_pgt_free(unsigned long *table) static unsigned long *base_crst_alloc(unsigned long val) { unsigned long *table; + struct ptdesc *ptdesc; - table = (unsigned long *)__get_free_pages(GFP_KERNEL, CRST_ALLOC_ORDER); - if (table) - crst_table_init(table, val); + ptdesc = pagetable_alloc(GFP_KERNEL, CRST_ALLOC_ORDER); + if (!ptdesc) + return NULL; + table = ptdesc_address(ptdesc); + + crst_table_init(table, val); return table; } static void base_crst_free(unsigned long *table) { - free_pages((unsigned long)table, CRST_ALLOC_ORDER); + pagetable_free(virt_to_ptdesc(table)); } #define BASE_ADDR_END_FUNC(NAME, SIZE) \ -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 12 21:09:54 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 21:09:54 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547566.855177 (Exim 4.92) (envelope-from ) id 1q8onS-0004cz-6a; Mon, 12 Jun 2023 21:09:54 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547566.855177; Mon, 12 Jun 2023 21:09:53 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8onR-0004Y6-8V; Mon, 12 Jun 2023 21:09:53 +0000 Received: by outflank-mailman (input) for mailman id 547566; Mon, 12 Jun 2023 21:09:50 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8ojM-0007zJ-Px for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 21:05:40 +0000 Received: from mail-yw1-x1129.google.com (mail-yw1-x1129.google.com [2607:f8b0:4864:20::1129]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id e23cc4a2-0964-11ee-8611-37d641c3527e; Mon, 12 Jun 2023 23:05:39 +0200 (CEST) Received: by mail-yw1-x1129.google.com with SMTP id 00721157ae682-56d05daf0d5so24884227b3.0 for ; Mon, 12 Jun 2023 14:05:39 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::16]) by smtp.googlemail.com with ESMTPSA id s125-20020a817783000000b00569eb609458sm2757115ywc.81.2023.06.12.14.05.36 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 12 Jun 2023 14:05:38 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: e23cc4a2-0964-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686603939; x=1689195939; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=x0T5hRMJMhyAQcr70NSN00ZodxImAvN36JhDkpGUyhY=; b=hFoqvf/V9d8VqdB1r7rkRWq3dicIimOQySgVHkIAvwFL0Mu8+p1N/1GXYk20QCUvFC OBvHXqLIwjKUW/Cg2L8TmdMFxaZ6erl8dDsxPeG4KHBkNdpNt+SDRM/fp02BIXhlhRFh zXyh4Ur2o3sR1wLNSv+RjLnPdgEzgFATa4g2Xg+LDMcjUjKcFkx+ifp4/8Lyr5+rSxVP +jDDkF8+0sKN+s4pK+Y7LtIDDsq1fD/1mjzcxIj0x+6U6FJXpEaUQtkvK0KHsh7xRlWs 1TqkCn6ISt1EZJ2kze1cJk8ZhVzPLe93moWp6KpJkfCGbbls5KNPHYDQvJaFIhhqzRGm 8czw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686603939; x=1689195939; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=x0T5hRMJMhyAQcr70NSN00ZodxImAvN36JhDkpGUyhY=; b=X6iFfPLfPpCnTVkxWd2AAWle/Jiv44MHo+7/zaSaSSr2LW6pbDgtRq7jVH4273TZqq W7HYN3+r1iSTkLkgzpquYKygFCVeyb6JIbqA4BMtC1V/LFDMv3RiW57jae6HhCIS/NIN pkkUXyUcC/xBmE7M5XhfYukBGBv2VP3t6U7NFonV4fn+wmQGMKWOGHIrhijtBrlK3XBb GNu6Myeqc/iSHpk0mbBhXbU61RkiyLacYF2q4nnW+k8yyVIBXk2fKm3WlO6tcaP4eoal 4aG3fadmanLnPH0WrecC6ZxLM82mw6qIRhxxVVEfUzqU3ikWYXydKJ/rgGVHQ9uCJsEI 1lsA== X-Gm-Message-State: AC+VfDwcOrzLwxhyKiTreyGfv2kG/90RAC256ng+A2k2/Md5KDPBRGY1 +IPO+aut1pdNx+31hTzYJUM= X-Google-Smtp-Source: ACHHUZ7R4s+2aZ6dyK9NB/h4GJ1OeGFjhnSrFQqFV2mTnMsc5RahC9DLUvZ1Ug17YsYVh0NwNxMgmQ== X-Received: by 2002:a0d:e2c7:0:b0:56c:f6cd:7b55 with SMTP id l190-20020a0de2c7000000b0056cf6cd7b55mr7964257ywe.6.1686603938725; Mon, 12 Jun 2023 14:05:38 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" , Thomas Bogendoerfer Subject: [PATCH v4 26/34] mips: Convert various functions to use ptdescs Date: Mon, 12 Jun 2023 14:04:15 -0700 Message-Id: <20230612210423.18611-27-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230612210423.18611-1-vishal.moola@gmail.com> References: <20230612210423.18611-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit As part of the conversions to replace pgtable constructor/destructors with ptdesc equivalents, convert various page table functions to use ptdescs. Some of the functions use the *get*page*() helper functions. Convert these to use pagetable_alloc() and ptdesc_address() instead to help standardize page tables further. Signed-off-by: Vishal Moola (Oracle) --- arch/mips/include/asm/pgalloc.h | 31 +++++++++++++++++-------------- arch/mips/mm/pgtable.c | 7 ++++--- 2 files changed, 21 insertions(+), 17 deletions(-) diff --git a/arch/mips/include/asm/pgalloc.h b/arch/mips/include/asm/pgalloc.h index f72e737dda21..6940e5536664 100644 --- a/arch/mips/include/asm/pgalloc.h +++ b/arch/mips/include/asm/pgalloc.h @@ -51,13 +51,13 @@ extern pgd_t *pgd_alloc(struct mm_struct *mm); static inline void pgd_free(struct mm_struct *mm, pgd_t *pgd) { - free_pages((unsigned long)pgd, PGD_TABLE_ORDER); + pagetable_free(virt_to_ptdesc(pgd)); } -#define __pte_free_tlb(tlb,pte,address) \ -do { \ - pgtable_pte_page_dtor(pte); \ - tlb_remove_page((tlb), pte); \ +#define __pte_free_tlb(tlb, pte, address) \ +do { \ + pagetable_pte_dtor(page_ptdesc(pte)); \ + tlb_remove_page_ptdesc((tlb), page_ptdesc(pte)); \ } while (0) #ifndef __PAGETABLE_PMD_FOLDED @@ -65,18 +65,18 @@ do { \ static inline pmd_t *pmd_alloc_one(struct mm_struct *mm, unsigned long address) { pmd_t *pmd; - struct page *pg; + struct ptdesc *ptdesc; - pg = alloc_pages(GFP_KERNEL_ACCOUNT, PMD_TABLE_ORDER); - if (!pg) + ptdesc = pagetable_alloc(GFP_KERNEL_ACCOUNT, PMD_TABLE_ORDER); + if (!ptdesc) return NULL; - if (!pgtable_pmd_page_ctor(pg)) { - __free_pages(pg, PMD_TABLE_ORDER); + if (!pagetable_pmd_ctor(ptdesc)) { + pagetable_free(ptdesc); return NULL; } - pmd = (pmd_t *)page_address(pg); + pmd = ptdesc_address(ptdesc); pmd_init(pmd); return pmd; } @@ -90,10 +90,13 @@ static inline pmd_t *pmd_alloc_one(struct mm_struct *mm, unsigned long address) static inline pud_t *pud_alloc_one(struct mm_struct *mm, unsigned long address) { pud_t *pud; + struct ptdesc *ptdesc = pagetable_alloc(GFP_KERNEL, PUD_TABLE_ORDER); - pud = (pud_t *) __get_free_pages(GFP_KERNEL, PUD_TABLE_ORDER); - if (pud) - pud_init(pud); + if (!ptdesc) + return NULL; + pud = ptdesc_address(ptdesc); + + pud_init(pud); return pud; } diff --git a/arch/mips/mm/pgtable.c b/arch/mips/mm/pgtable.c index b13314be5d0e..729258ff4e3b 100644 --- a/arch/mips/mm/pgtable.c +++ b/arch/mips/mm/pgtable.c @@ -10,10 +10,11 @@ pgd_t *pgd_alloc(struct mm_struct *mm) { - pgd_t *ret, *init; + pgd_t *init, *ret = NULL; + struct ptdesc *ptdesc = pagetable_alloc(GFP_KERNEL, PGD_TABLE_ORDER); - ret = (pgd_t *) __get_free_pages(GFP_KERNEL, PGD_TABLE_ORDER); - if (ret) { + if (ptdesc) { + ret = ptdesc_address(ptdesc); init = pgd_offset(&init_mm, 0UL); pgd_init(ret); memcpy(ret + USER_PTRS_PER_PGD, init + USER_PTRS_PER_PGD, -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 12 21:09:56 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 21:09:56 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547573.855183 (Exim 4.92) (envelope-from ) id 1q8onT-00051m-UM; Mon, 12 Jun 2023 21:09:55 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547573.855183; Mon, 12 Jun 2023 21:09:55 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8onT-0004xQ-5H; Mon, 12 Jun 2023 21:09:55 +0000 Received: by outflank-mailman (input) for mailman id 547573; Mon, 12 Jun 2023 21:09:53 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8ojO-0007V0-I1 for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 21:05:42 +0000 Received: from mail-yw1-x1131.google.com (mail-yw1-x1131.google.com [2607:f8b0:4864:20::1131]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id e38c6e56-0964-11ee-b232-6b7b168915f2; Mon, 12 Jun 2023 23:05:42 +0200 (CEST) Received: by mail-yw1-x1131.google.com with SMTP id 00721157ae682-56d07c7cf03so24330577b3.1 for ; Mon, 12 Jun 2023 14:05:42 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::16]) by smtp.googlemail.com with ESMTPSA id s125-20020a817783000000b00569eb609458sm2757115ywc.81.2023.06.12.14.05.38 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 12 Jun 2023 14:05:40 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: e38c6e56-0964-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686603941; x=1689195941; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=QSGr1AIBRcRb+Ur7L3hOWyc2qTqn+mhf5/YLNQmZcmA=; b=qp0OZHJwYJBDFbnZ3ou1P2Ehue21X+g8zcdgyQxIvQy+nDe0qfAi0dHJH17SnCCz1g tKKUvfmw/BkCu2VWGVC9FTcKBTfgeit8iCuiiB2iFwBx6PIhFHMGEsTNb4ySvFT/d3ft wztSHCS6L0P5NyGlzSq35fcEZtgvv+BauybZ4ibvcrCUVHnGp/kHvLFHDT0vMZoFlpUX ovC+Ec8QSOvfx2fBvS9GXwZis3S10LP+c5zNsCcscOq3kZyLxngh/87tdHFT9B3GKdNj CWUudKrbpvmp3qcd3NPPZgIOvQGRSzySt8ja54VpNcHj9wUPZRrXlqZutJQePE3+1Opa Ut9Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686603941; x=1689195941; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=QSGr1AIBRcRb+Ur7L3hOWyc2qTqn+mhf5/YLNQmZcmA=; b=lRA6B698ukF0zb2OzoFqBHSQygQhViglRM/20vUyKNudaq3V1RTVqE+IJbgdJ6xY2p MRw5SeaXwkm4sOP9tZE58OUZf81w6W+aCSqx12HKCnh4iQLrfmzgE7arrRtOyOr0UUOt /2eJ8l78KWcGxA92x9prE0ixb/UXJs1FgYYuRCnS/8FB/C5yC1DBUehPdKBDqSvkXvlK VhWkvhYxdmBK+jt90VD7HUrz+ym/zlEoiumGDWTloQIxGfDtfbpcGsGOUYR7odOTm1V2 GNSonc+ltiuxskvLvzBRkncVwPYaS7YmG4H0h+hOPbE4MI+U4T78n+HWO9YShOLnKWog eOGA== X-Gm-Message-State: AC+VfDy92jbjbFBO2j/Ht/XE2UPywmeVyXPbetYqPv+lYD9F766sP6hz v20y2lnpjx00y7modlocIyo= X-Google-Smtp-Source: ACHHUZ6f4dQwcKAKk/nBaLFqSfud3ZdJTCw6E1GbyeLYv9ZLF94Eu4p9/l66ZpbQ0joORm5hDbfhlQ== X-Received: by 2002:a81:9e53:0:b0:565:a081:a925 with SMTP id n19-20020a819e53000000b00565a081a925mr2763652ywj.29.1686603940939; Mon, 12 Jun 2023 14:05:40 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" , Dinh Nguyen Subject: [PATCH v4 27/34] nios2: Convert __pte_free_tlb() to use ptdescs Date: Mon, 12 Jun 2023 14:04:16 -0700 Message-Id: <20230612210423.18611-28-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230612210423.18611-1-vishal.moola@gmail.com> References: <20230612210423.18611-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Part of the conversions to replace pgtable constructor/destructors with ptdesc equivalents. Signed-off-by: Vishal Moola (Oracle) --- arch/nios2/include/asm/pgalloc.h | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/arch/nios2/include/asm/pgalloc.h b/arch/nios2/include/asm/pgalloc.h index ecd1657bb2ce..ce6bb8e74271 100644 --- a/arch/nios2/include/asm/pgalloc.h +++ b/arch/nios2/include/asm/pgalloc.h @@ -28,10 +28,10 @@ static inline void pmd_populate(struct mm_struct *mm, pmd_t *pmd, extern pgd_t *pgd_alloc(struct mm_struct *mm); -#define __pte_free_tlb(tlb, pte, addr) \ - do { \ - pgtable_pte_page_dtor(pte); \ - tlb_remove_page((tlb), (pte)); \ +#define __pte_free_tlb(tlb, pte, addr) \ + do { \ + pagetable_pte_dtor(page_ptdesc(pte)); \ + tlb_remove_page_ptdesc((tlb), (page_ptdesc(pte))); \ } while (0) #endif /* _ASM_NIOS2_PGALLOC_H */ -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 12 21:10:02 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 21:10:02 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547590.855207 (Exim 4.92) (envelope-from ) id 1q8onZ-0006Zk-O7; Mon, 12 Jun 2023 21:10:01 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547590.855207; Mon, 12 Jun 2023 21:10:01 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8onZ-0006To-0f; Mon, 12 Jun 2023 21:10:01 +0000 Received: by outflank-mailman (input) for mailman id 547590; Mon, 12 Jun 2023 21:09:58 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8ojG-0007zJ-GM for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 21:05:34 +0000 Received: from mail-oo1-xc30.google.com (mail-oo1-xc30.google.com [2607:f8b0:4864:20::c30]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id dd9e433f-0964-11ee-8611-37d641c3527e; Mon, 12 Jun 2023 23:05:32 +0200 (CEST) Received: by mail-oo1-xc30.google.com with SMTP id 006d021491bc7-55b8f1c930eso841118eaf.3 for ; Mon, 12 Jun 2023 14:05:32 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::16]) by smtp.googlemail.com with ESMTPSA id s125-20020a817783000000b00569eb609458sm2757115ywc.81.2023.06.12.14.05.28 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 12 Jun 2023 14:05:30 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: dd9e433f-0964-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686603931; x=1689195931; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=SFY2ToTc/KdsqBsJRwbv8KRLKHn/LK4ImlbTce4a9J0=; b=Hs3OvBwxjNbzyixj7aSD+NgtYC45wE004i2+DhLM32gwxSgyME8uf0ehUc+DFmEBWc xTMw6H3P+HY7Tq7UuCfgFLKB1x+LkNTK02YDaXYWD1PeR9EEokleZ/wyxNBXTFWH/El9 c1bXL1i+QVcFD32llcBXIuwFJs/8j8fBCHPhcoBGFcfEu/JCwezOfmF0Yorw8OxgwAQW Ostw6KM5t1cwURmpaD0hTGMu4TC4wHA6I1gDTQyjBc+K/xsxhtlIAUhVsIG12sG34SnA HCLguPK5bJjFlDAoWGoj4Zr1Q8mKdxu4vSYAJa+HTJDnQnTisEOZH/pEJVvGvXlWVYbR pDDA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686603931; x=1689195931; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=SFY2ToTc/KdsqBsJRwbv8KRLKHn/LK4ImlbTce4a9J0=; b=aubebCD9lqWWIv8All0DmCPPgJnL4tOIrkG+LCtKOZA/H2GgcYGOJaJSwwjansBlqY KPynuiz5NuJ855Ht6ZKLSuN9ejMDKJKn9AA+QvtCWagmSo/VB1dTeQoo5godA20Ccule L8Iv6lWhOF+BHU/NlLmHy1n5TvXI2vtpYorcxBhDk6/jOunvzKsaikCcFNbmHjqW0F/K Re9IjwdurDQqS5nNixHe0qkwvW5frx9YGFCgeoSUFdUQZONGIZQDM1uKYzEGf0lNSN+w hVEx/AMTyu0FSEputWkvjO39EOyvQHm29VbYElFYTVpJqIt2UmUlKC/bSqel3afArSJR StuA== X-Gm-Message-State: AC+VfDzAl6jpSNPYk2DVdJIztQVCGFfFKs+O8r2dArweFL0ZOA4Xb597 DrCpPvpN2Q887ZznXdijPZg= X-Google-Smtp-Source: ACHHUZ6j3CfgAuZNFN9JISmvDm/MlbHYE4sRUTkol2XKHwfWtbEYLS5pSkDxzuxqJ+njTa+59MBJKg== X-Received: by 2002:a05:6358:1a8a:b0:129:bddf:7960 with SMTP id gm10-20020a0563581a8a00b00129bddf7960mr4783450rwb.16.1686603930823; Mon, 12 Jun 2023 14:05:30 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" , Guo Ren Subject: [PATCH v4 22/34] csky: Convert __pte_free_tlb() to use ptdescs Date: Mon, 12 Jun 2023 14:04:11 -0700 Message-Id: <20230612210423.18611-23-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230612210423.18611-1-vishal.moola@gmail.com> References: <20230612210423.18611-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Part of the conversions to replace pgtable constructor/destructors with ptdesc equivalents. Signed-off-by: Vishal Moola (Oracle) Acked-by: Guo Ren --- arch/csky/include/asm/pgalloc.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/arch/csky/include/asm/pgalloc.h b/arch/csky/include/asm/pgalloc.h index 7d57e5da0914..9c84c9012e53 100644 --- a/arch/csky/include/asm/pgalloc.h +++ b/arch/csky/include/asm/pgalloc.h @@ -63,8 +63,8 @@ static inline pgd_t *pgd_alloc(struct mm_struct *mm) #define __pte_free_tlb(tlb, pte, address) \ do { \ - pgtable_pte_page_dtor(pte); \ - tlb_remove_page(tlb, pte); \ + pagetable_pte_dtor(page_ptdesc(pte)); \ + tlb_remove_page_ptdesc(tlb, page_ptdesc(pte)); \ } while (0) extern void pagetable_init(void); -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 12 21:10:02 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 21:10:02 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547587.855198 (Exim 4.92) (envelope-from ) id 1q8onX-00064w-MI; Mon, 12 Jun 2023 21:09:59 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547587.855198; Mon, 12 Jun 2023 21:09:59 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8onX-00060S-4O; Mon, 12 Jun 2023 21:09:59 +0000 Received: by outflank-mailman (input) for mailman id 547587; Mon, 12 Jun 2023 21:09:57 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8ojI-0007zJ-DO for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 21:05:36 +0000 Received: from mail-yw1-x112c.google.com (mail-yw1-x112c.google.com [2607:f8b0:4864:20::112c]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id dead4ceb-0964-11ee-8611-37d641c3527e; Mon, 12 Jun 2023 23:05:33 +0200 (CEST) Received: by mail-yw1-x112c.google.com with SMTP id 00721157ae682-56d3d7a5b84so10006237b3.0 for ; Mon, 12 Jun 2023 14:05:33 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::16]) by smtp.googlemail.com with ESMTPSA id s125-20020a817783000000b00569eb609458sm2757115ywc.81.2023.06.12.14.05.31 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 12 Jun 2023 14:05:32 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: dead4ceb-0964-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686603933; x=1689195933; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=ELrYSGf3rZcM0SKncNLanyoUH1rFlxcI1YjdtaAHWOM=; b=LyMVzyXqiqaKfQOftnbB5qB90EtUnrbgPE+tRRy8u809McOQMdRt58iULBOhR8JFtH hhRJmphgmRUDnbyyXP2Q9YxbwzAkn3ThfcILkwgMQG3ISbn98a07kPZmsAVC8Vehd4Mo 1biR1LFmmxLwxk8sGkOJv0esnaOWjdr489RSbTn71+xsATggGjgO9UBlAUeAeLB5A5f/ kGoRSfqAHa+jn1LV08UE8edOQfnKwbxOGGV8ICxkOoxOLTvOaFWF2RtvL1e5xr2jqLU0 QA04uFGbeM6zqpolABbfncapro6b5DTja8wzwTkJfjoIbnkhTJwsqQTX3z92z2Org5Ii BY8w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686603933; x=1689195933; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=ELrYSGf3rZcM0SKncNLanyoUH1rFlxcI1YjdtaAHWOM=; b=NkRaCaTf79II8p1EKLRKktfB1+9ETYmsmDyPKrMqx8SU9swQYPuSbdKc9lvY/QcnbT CKA9TwXQvz7Z50pRqU9HMibgww4Hkf+YozS+fFyWPRck3N7Fy44wHzRVbbFb1MMeV5ng dhbr6I6uVwgZC7lW3yKGhl/MkMt9/SPEW73+4QViyAMYpX2GYlqMTa5tcDZZFHDvW7cK j4AKbjK7jKLrjunQ00qa+ZKp9YcyUlUhKlMdnkT6bZlDyCsdhcwcK7qk8I+JRTa6XEBh 4rYAPmaMeCfMhmW39X8uiOVrFlLd4vcPyz3vRd+9fyvpWI00Hv4CDWLjOTylJlcZFHsq HSPg== X-Gm-Message-State: AC+VfDyAxmJmsIeyXrDhqvOh7oaEXgDsKBHpjof7MqxxdJUf11l4140O zKEBPqwa/0bzOP9+i9S81jI= X-Google-Smtp-Source: ACHHUZ7fItlbNlNZv8dpxyHqv1w2q3utm4HiSoRDwiOPIqWB+aVpZeSy3j3Rf4mLiiGsI+aWaI88yQ== X-Received: by 2002:a81:8942:0:b0:56d:1f8d:b480 with SMTP id z63-20020a818942000000b0056d1f8db480mr4434878ywf.25.1686603932812; Mon, 12 Jun 2023 14:05:32 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" Subject: [PATCH v4 23/34] hexagon: Convert __pte_free_tlb() to use ptdescs Date: Mon, 12 Jun 2023 14:04:12 -0700 Message-Id: <20230612210423.18611-24-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230612210423.18611-1-vishal.moola@gmail.com> References: <20230612210423.18611-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Part of the conversions to replace pgtable constructor/destructors with ptdesc equivalents. Signed-off-by: Vishal Moola (Oracle) --- arch/hexagon/include/asm/pgalloc.h | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/arch/hexagon/include/asm/pgalloc.h b/arch/hexagon/include/asm/pgalloc.h index f0c47e6a7427..55988625e6fb 100644 --- a/arch/hexagon/include/asm/pgalloc.h +++ b/arch/hexagon/include/asm/pgalloc.h @@ -87,10 +87,10 @@ static inline void pmd_populate_kernel(struct mm_struct *mm, pmd_t *pmd, max_kernel_seg = pmdindex; } -#define __pte_free_tlb(tlb, pte, addr) \ -do { \ - pgtable_pte_page_dtor((pte)); \ - tlb_remove_page((tlb), (pte)); \ +#define __pte_free_tlb(tlb, pte, addr) \ +do { \ + pagetable_pte_dtor((page_ptdesc(pte))); \ + tlb_remove_page_ptdesc((tlb), (page_ptdesc(pte))); \ } while (0) #endif -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 12 21:35:59 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 21:35:59 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547659.855224 (Exim 4.92) (envelope-from ) id 1q8pCQ-0005Rl-Or; Mon, 12 Jun 2023 21:35:42 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547659.855224; Mon, 12 Jun 2023 21:35:42 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8pCQ-0005Re-MG; Mon, 12 Jun 2023 21:35:42 +0000 Received: by outflank-mailman (input) for mailman id 547659; Mon, 12 Jun 2023 21:35:41 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8pCP-0005RV-GR for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 21:35:41 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8pCP-0003l7-0i; Mon, 12 Jun 2023 21:35:41 +0000 Received: from gw1.octic.net ([88.97.20.152] helo=[10.0.1.102]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1q8pCO-0004iI-R6; Mon, 12 Jun 2023 21:35:40 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=ACo9Eki9MYwH1etmxOZaOOvGtZp3qEuWxWHbHmq59sc=; b=pcxNmf+7tbAygRbUWEpf9PL/gg vtp+ugRJAXaRZtI3mV1h+pgbxm0aKd3i2bLI+8CjM/awchks1x/23sp79EXywfkfy3pP68dcFlboY JZkcz0UpCqQbUjgN05Ayh4gjb/L/eiHeXS36DBVPdSboDsI6E0u1TyZHh7Ay/C8B1qbU=; Message-ID: <58c74c2c-e578-7534-79a6-1270e999434a@xen.org> Date: Mon, 12 Jun 2023 22:35:39 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.10.1 Subject: Re: [PATCH v2] xen/arm: rename guest_cpuinfo in domain_cpuinfo To: Bertrand Marquis , xen-devel@lists.xenproject.org Cc: Stefano Stabellini , Volodymyr Babchuk References: From: Julien Grall In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi Bertrand, On 12/06/2023 14:00, Bertrand Marquis wrote: > Rename the guest_cpuinfo structure to domain_cpuinfo as it is not only > used for guests but also for dom0 so domain is a more suitable name. > > While there also rename the create_guest_cpuinfo function to > create_domain_cpuinfo to be coherent and fix comments accordingly. > > Signed-off-by: Bertrand Marquis Acked-by: Julien Grall And committed. Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Mon Jun 12 23:46:07 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 23:46:07 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547677.855235 (Exim 4.92) (envelope-from ) id 1q8rEK-0002TN-LA; Mon, 12 Jun 2023 23:45:48 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547677.855235; Mon, 12 Jun 2023 23:45:48 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8rEK-0002TG-Ht; Mon, 12 Jun 2023 23:45:48 +0000 Received: by outflank-mailman (input) for mailman id 547677; Mon, 12 Jun 2023 23:45:47 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8rEJ-0002TA-KW for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 23:45:47 +0000 Received: from mail-ed1-x52d.google.com (mail-ed1-x52d.google.com [2a00:1450:4864:20::52d]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 3fecc094-097b-11ee-b232-6b7b168915f2; Tue, 13 Jun 2023 01:45:45 +0200 (CEST) Received: by mail-ed1-x52d.google.com with SMTP id 4fb4d7f45d1cf-5151934a4e3so7284634a12.1 for ; Mon, 12 Jun 2023 16:45:45 -0700 (PDT) Received: from [10.10.0.115] ([185.140.244.249]) by smtp.gmail.com with ESMTPSA id h18-20020a1709063b5200b0097457363fc0sm5849378ejf.33.2023.06.12.16.45.43 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Mon, 12 Jun 2023 16:45:44 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 3fecc094-097b-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1686613545; x=1689205545; h=content-transfer-encoding:in-reply-to:from:references:cc:to :content-language:subject:user-agent:mime-version:date:message-id :from:to:cc:subject:date:message-id:reply-to; bh=J6RKBwJ1snfOShsMKSa/kdTwHRc2sX8E52+VmBrW73M=; b=d3xgiOjtTog0mLVt0UUF6SYGGd8ZNr4HF7QbG3ANNB0F9pm2Mnfq6cMKvB6sbMuSRV QgWIqQPT0Bz/c6PzgCrCP7PjhIQEf53F9Hq1ZzRfje3zYm9eFWGopD2mOQlyY3W6Ct1C diLMaiEHR/d2lY6XdYCuUVT8MxiBw26YRbJ+vLXKhx4eckjH/IBs8Vu650PjnGgHLZfm F+52i+6LlG/DNA9AL6mhi/Ytu30a/yapXnU8e4vUqRcJdEh8s8OFO1YXOUJadub+iQHv z6vbdQtv6OfPN8ZdleCLjbUevHZa+Wcr6lxGX03ENnGWHZ1Zg+XQGmkr7kxiw7qx+njU qXkA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686613545; x=1689205545; h=content-transfer-encoding:in-reply-to:from:references:cc:to :content-language:subject:user-agent:mime-version:date:message-id :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=J6RKBwJ1snfOShsMKSa/kdTwHRc2sX8E52+VmBrW73M=; b=H+YTNCg4/Tsh7hDMT+AXdgY31h3xoN9wLql3Odd9lJVzb2Hjyx7L6L8MnjiY+Y+IcK iTslnZRu9CwMtdHfCORe25MF3ZFtJqvr7CoMm/gjrd51X4UDz9qrdPJpIfeLNeauNn4p Hxb+Ptbd7JvSd3A0Yp5S4mN5Fk1uaGwSRSAx7WpGMRSt/ctNnh+kF0Qre5IitlHh7jBV NTvmGn7vhKQ9IYXwPexjT7VC5QUa/WDdibuXU2ZsjEOtIyF0L800tc2nLIhRuKVPSwXQ Mnwj6dzSXSmPmY14BTFzITp6oFCY10w7eZaZZ3vVRJJxBDDFMGiEtAx5Nu/wO2SR9sBX /w1Q== X-Gm-Message-State: AC+VfDzVjKeoANDJgQ7NnKloDiZ55+t6pVqRVtfG459shCxF1gU7DH8g 9sYUa44ZNg6sygTu3OlrlwLn8Q== X-Google-Smtp-Source: ACHHUZ6dtuV5DoYQYE0R52xSIR6NpJYLC8VAvw2sPNu3DqvDkPqqCuCfv+mCrhCPNNxlAI9Ns3XUug== X-Received: by 2002:a17:906:dac3:b0:96f:9608:da7c with SMTP id xi3-20020a170906dac300b0096f9608da7cmr11947868ejb.36.1686613544905; Mon, 12 Jun 2023 16:45:44 -0700 (PDT) Message-ID: <41b22e82-fd6c-5bcd-44ae-e5b799ed0175@linaro.org> Date: Tue, 13 Jun 2023 01:45:42 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.11.2 Subject: Re: [patch V4 04/37] x86/smpboot: Rename start_cpu0() to soft_restart_cpu() Content-Language: en-US To: Thomas Gleixner , LKML Cc: x86@kernel.org, David Woodhouse , Andrew Cooper , Brian Gerst , Arjan van de Veen , Paolo Bonzini , Paul McKenney , Tom Lendacky , Sean Christopherson , Oleksandr Natalenko , Paul Menzel , "Guilherme G. Piccoli" , Piotr Gorski , Usama Arif , Juergen Gross , Boris Ostrovsky , xen-devel@lists.xenproject.org, Russell King , Arnd Bergmann , linux-arm-kernel@lists.infradead.org, Catalin Marinas , Will Deacon , Guo Ren , linux-csky@vger.kernel.org, Thomas Bogendoerfer , linux-mips@vger.kernel.org, "James E.J. Bottomley" , Helge Deller , linux-parisc@vger.kernel.org, Paul Walmsley , Palmer Dabbelt , linux-riscv@lists.infradead.org, Mark Rutland , Sabin Rapan , "Michael Kelley (LINUX)" , Ross Philipson References: <20230512203426.452963764@linutronix.de> <20230512205255.662319599@linutronix.de> From: =?UTF-8?Q?Philippe_Mathieu-Daud=c3=a9?= In-Reply-To: <20230512205255.662319599@linutronix.de> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit On 12/5/23 23:07, Thomas Gleixner wrote: > From: Thomas Gleixner > > This is used in the SEV play_dead() implementation to re-online CPUs. But > that has nothing to do with CPU0. > > Signed-off-by: Thomas Gleixner > Tested-by: Michael Kelley > --- > arch/x86/include/asm/cpu.h | 2 +- > arch/x86/kernel/callthunks.c | 2 +- > arch/x86/kernel/head_32.S | 10 +++++----- > arch/x86/kernel/head_64.S | 10 +++++----- > arch/x86/kernel/sev.c | 2 +- > 5 files changed, 13 insertions(+), 13 deletions(-) Reviewed-by: Philippe Mathieu-Daudé From xen-devel-bounces@lists.xenproject.org Mon Jun 12 23:46:13 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 23:46:13 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547679.855245 (Exim 4.92) (envelope-from ) id 1q8rEj-0002u5-3H; Mon, 12 Jun 2023 23:46:13 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547679.855245; Mon, 12 Jun 2023 23:46:13 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8rEi-0002ty-Vf; Mon, 12 Jun 2023 23:46:12 +0000 Received: by outflank-mailman (input) for mailman id 547679; Mon, 12 Jun 2023 23:46:11 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8rEh-0002qb-RN for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 23:46:11 +0000 Received: from mail-ed1-x534.google.com (mail-ed1-x534.google.com [2a00:1450:4864:20::534]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 4abeafe5-097b-11ee-8611-37d641c3527e; Tue, 13 Jun 2023 01:46:03 +0200 (CEST) Received: by mail-ed1-x534.google.com with SMTP id 4fb4d7f45d1cf-510d6b939bfso8562990a12.0 for ; Mon, 12 Jun 2023 16:46:03 -0700 (PDT) Received: from [10.10.0.115] ([185.140.244.249]) by smtp.gmail.com with ESMTPSA id x22-20020aa7cd96000000b0050bca43ff55sm5689515edv.68.2023.06.12.16.46.00 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Mon, 12 Jun 2023 16:46:02 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 4abeafe5-097b-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1686613563; x=1689205563; h=content-transfer-encoding:in-reply-to:from:references:cc:to :content-language:subject:user-agent:mime-version:date:message-id :from:to:cc:subject:date:message-id:reply-to; bh=8wbDZKmo9VP00ABKYaLGQ28GM2QOo4QwYdlCxLvFQV0=; b=xTqZLje4stFH7gdg9tw2fGuaNoAlSVyZ9bZDgTUiGpVn1rKnmnRRB/wOdsBKdk3M45 XyM6zqrGB41V6amFO878oAEpaEipM+J+IhZ6OUQnO6vb96iOf43xb+cTOPWDW6SPGUvU wbzhN3iKgf+ErheqSRMoxFxfGjuBsXPFyA9Nf8eealnhw6j5dxAexUg8TC0HYjPKNm9+ cmH1X+muu7EXkJdtUp+5TMYcw4rbxC4VhQQvi+yG5WIIqUjSEFDaY+a9WqK4wgXHrhfU 58f1vI8ofPwecC+2UBaX1dI7mOlCr37zZFNYbepf9z+FBvhotWk1bkOhqbtAhvfg0arh BtYA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686613563; x=1689205563; h=content-transfer-encoding:in-reply-to:from:references:cc:to :content-language:subject:user-agent:mime-version:date:message-id :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=8wbDZKmo9VP00ABKYaLGQ28GM2QOo4QwYdlCxLvFQV0=; b=JcZ7C/eiiuPiPMwIIyg3zDtegWXaSwqRN4NjxIDFDCOfkZHmwdyQ1ry+91x5Xt5F8v Q5vgYN+tzL59VRRNv22z0h+pd5iZNcONTZoyfFlAD86iIbb7j71abACATdSurbHH5NfG iTeNu8Fh3CW73lHxum8hi4Y05KwQ+1UEOgv99pzH57TdoBNJJC+3WqVogz+sPVaZ1sAP QMEzXZWABjc3Z8HbMkLcInQhiU0JGYvrOFiuEpFwhjXUtRwHS/oOtljEBU9B77pS4WeB Qe818te3WmfY101oE5Kq+EuExK4h/vQQvufYf62gsBiCuNjdHZFwe30sd+c6GpxXo8xy 923A== X-Gm-Message-State: AC+VfDwFcdUAtv5lWMbWAkoibC60YlIPIw85Q7ZTlBqcuUIWLig1xmGa 4IA3xFqZUwFe+oRUEuLzhrgE0A== X-Google-Smtp-Source: ACHHUZ5ctYtCeisGQ2uomlCypPix/oMuhk7GCBAQ91QMqgz33FoH6mnEV6NDszFqNC1dju2nqgRtMA== X-Received: by 2002:a05:6402:898:b0:514:77f5:d77c with SMTP id e24-20020a056402089800b0051477f5d77cmr6507743edy.1.1686613563154; Mon, 12 Jun 2023 16:46:03 -0700 (PDT) Message-ID: Date: Tue, 13 Jun 2023 01:46:00 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.11.2 Subject: Re: [patch V4 07/37] x86/smpboot: Restrict soft_restart_cpu() to SEV Content-Language: en-US To: Thomas Gleixner , LKML Cc: x86@kernel.org, David Woodhouse , Andrew Cooper , Brian Gerst , Arjan van de Veen , Paolo Bonzini , Paul McKenney , Tom Lendacky , Sean Christopherson , Oleksandr Natalenko , Paul Menzel , "Guilherme G. Piccoli" , Piotr Gorski , Usama Arif , Juergen Gross , Boris Ostrovsky , xen-devel@lists.xenproject.org, Russell King , Arnd Bergmann , linux-arm-kernel@lists.infradead.org, Catalin Marinas , Will Deacon , Guo Ren , linux-csky@vger.kernel.org, Thomas Bogendoerfer , linux-mips@vger.kernel.org, "James E.J. Bottomley" , Helge Deller , linux-parisc@vger.kernel.org, Paul Walmsley , Palmer Dabbelt , linux-riscv@lists.infradead.org, Mark Rutland , Sabin Rapan , "Michael Kelley (LINUX)" , Ross Philipson References: <20230512203426.452963764@linutronix.de> <20230512205255.822234014@linutronix.de> From: =?UTF-8?Q?Philippe_Mathieu-Daud=c3=a9?= In-Reply-To: <20230512205255.822234014@linutronix.de> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit On 12/5/23 23:07, Thomas Gleixner wrote: > From: Thomas Gleixner > > Now that the CPU0 hotplug cruft is gone, the only user is AMD SEV. > > Signed-off-by: Thomas Gleixner > Tested-by: Michael Kelley > --- > arch/x86/kernel/callthunks.c | 2 +- > arch/x86/kernel/head_32.S | 14 -------------- > arch/x86/kernel/head_64.S | 2 +- > 3 files changed, 2 insertions(+), 16 deletions(-) Reviewed-by: Philippe Mathieu-Daudé From xen-devel-bounces@lists.xenproject.org Mon Jun 12 23:49:29 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 12 Jun 2023 23:49:29 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547691.855255 (Exim 4.92) (envelope-from ) id 1q8rHs-0003eG-HU; Mon, 12 Jun 2023 23:49:28 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547691.855255; Mon, 12 Jun 2023 23:49:28 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8rHs-0003e9-Eb; Mon, 12 Jun 2023 23:49:28 +0000 Received: by outflank-mailman (input) for mailman id 547691; Mon, 12 Jun 2023 23:49:27 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8rHr-0003e3-2y for xen-devel@lists.xenproject.org; Mon, 12 Jun 2023 23:49:27 +0000 Received: from mail-ej1-x635.google.com (mail-ej1-x635.google.com [2a00:1450:4864:20::635]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id c38e1df5-097b-11ee-b232-6b7b168915f2; Tue, 13 Jun 2023 01:49:26 +0200 (CEST) Received: by mail-ej1-x635.google.com with SMTP id a640c23a62f3a-98220bb31c6so210333066b.3 for ; Mon, 12 Jun 2023 16:49:26 -0700 (PDT) Received: from [10.10.0.115] ([185.140.244.249]) by smtp.gmail.com with ESMTPSA id g20-20020aa7c854000000b005169cd0edffsm5568532edt.35.2023.06.12.16.49.24 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Mon, 12 Jun 2023 16:49:25 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: c38e1df5-097b-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1686613766; x=1689205766; h=content-transfer-encoding:in-reply-to:from:references:cc:to :content-language:subject:user-agent:mime-version:date:message-id :from:to:cc:subject:date:message-id:reply-to; bh=KdDi50ZcI/FLwaJCGeRMVNgmMDqblajVGcvGtWq/rU0=; b=h14Y/off+2kKH+CZ9xuEqnth8dkIR68MU6fTRlm6+a1ccdcM0M0IsU1vvHNgsK8p2Y 0C3NyMHNpdoVINJwXJ2UsLvgZ4NTbFLvy78i26qPyTkArpsvqQO8P3rqJaQrm8rGzPXS b21ZAicO32Ry1R7mkMJ6NNUImtgdcpa22tAe3I7ZxvHegVAwZ0w/UvF0S48EVuSzeqn9 b3JjK1ZAX8STmHG870Zb54I4LTDZcNLOHVNCHnZhE6ryjThlXIgkPKnQSaTbHbmt0aPo YIMzeRPPStNBrG12bFe/IsSOLZJnGkaCG+swAqxSi4tHTnfqr5byW4FG9+MbQBtCjN2v e6sw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686613766; x=1689205766; h=content-transfer-encoding:in-reply-to:from:references:cc:to :content-language:subject:user-agent:mime-version:date:message-id :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=KdDi50ZcI/FLwaJCGeRMVNgmMDqblajVGcvGtWq/rU0=; b=lLwkQ439Ewi1SWlKSHUeGexRGQZmTTUWhfeIvYmwuIOci0rnezXIqhY5dP3ZZ4N+RG 9i3g817uWJj3KInJHYkDcCgsgFhlioVYzOrvfnkSLXg33scCQrSj0KuhxunRwg0Zq1ew dj1C3p3zazzGEhReNQ01lrSVzTwyewC5SU9yH8oy9dA3Bw36MCEFz2ycWkX3AGZ5W1AM bwRnyKy5DbO7BHXcN1qOS6Aj+2Do1qDtRY00AGlMDptY9ZWTNAfKGVsjqhPGXBAGs/hE +rMWcMaIUowgsd9lgsjGFCGHGN7oSIDS5bWjZF6bK9RL07BSOV9INPzmsF9AVXKGxvuo ZlzA== X-Gm-Message-State: AC+VfDznsKbX3qMyLQjnib2rR8MYbpwW6pW1jX8DxeJcjE/h4JKcz+Qs z2qyXO6HF/hdcLJEwxMkC2u5kg== X-Google-Smtp-Source: ACHHUZ5d+tF+AAPixk/kFmtV+CtWpDVmOxGFS7Q1zOS4cdYHHVXnx1KgJdGHPbzDoYU+p/rh+kAXUw== X-Received: by 2002:a17:907:7207:b0:978:9e92:f903 with SMTP id dr7-20020a170907720700b009789e92f903mr11221800ejc.46.1686613765790; Mon, 12 Jun 2023 16:49:25 -0700 (PDT) Message-ID: <94b05905-df3a-4534-a28c-fe9e3030fc4a@linaro.org> Date: Tue, 13 Jun 2023 01:49:23 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.11.2 Subject: Re: [patch V4 10/37] x86/smpboot: Get rid of cpu_init_secondary() Content-Language: en-US To: Thomas Gleixner , LKML Cc: x86@kernel.org, David Woodhouse , Andrew Cooper , Brian Gerst , Arjan van de Veen , Paolo Bonzini , Paul McKenney , Tom Lendacky , Sean Christopherson , Oleksandr Natalenko , Paul Menzel , "Guilherme G. Piccoli" , Piotr Gorski , Usama Arif , Juergen Gross , Boris Ostrovsky , xen-devel@lists.xenproject.org, Russell King , Arnd Bergmann , linux-arm-kernel@lists.infradead.org, Catalin Marinas , Will Deacon , Guo Ren , linux-csky@vger.kernel.org, Thomas Bogendoerfer , linux-mips@vger.kernel.org, "James E.J. Bottomley" , Helge Deller , linux-parisc@vger.kernel.org, Paul Walmsley , Palmer Dabbelt , linux-riscv@lists.infradead.org, Mark Rutland , Sabin Rapan , "Michael Kelley (LINUX)" , Ross Philipson References: <20230512203426.452963764@linutronix.de> <20230512205255.981999763@linutronix.de> From: =?UTF-8?Q?Philippe_Mathieu-Daud=c3=a9?= In-Reply-To: <20230512205255.981999763@linutronix.de> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit On 12/5/23 23:07, Thomas Gleixner wrote: > From: Thomas Gleixner > > The synchronization of the AP with the control CPU is a SMP boot problem > and has nothing to do with cpu_init(). > > Open code cpu_init_secondary() in start_secondary() and move > wait_for_master_cpu() into the SMP boot code. > > No functional change. > > Signed-off-by: Thomas Gleixner > Tested-by: Michael Kelley > --- > arch/x86/include/asm/processor.h | 1 - > arch/x86/kernel/cpu/common.c | 27 --------------------------- > arch/x86/kernel/smpboot.c | 24 +++++++++++++++++++----- > 3 files changed, 19 insertions(+), 33 deletions(-) Reviewed-by: Philippe Mathieu-Daudé From xen-devel-bounces@lists.xenproject.org Tue Jun 13 00:12:32 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 00:12:32 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547697.855265 (Exim 4.92) (envelope-from ) id 1q8rdx-0007jd-28; Tue, 13 Jun 2023 00:12:17 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547697.855265; Tue, 13 Jun 2023 00:12:17 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8rdw-0007jW-VR; Tue, 13 Jun 2023 00:12:16 +0000 Received: by outflank-mailman (input) for mailman id 547697; Tue, 13 Jun 2023 00:12:15 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8rdv-0007jQ-9m for xen-devel@lists.xenproject.org; Tue, 13 Jun 2023 00:12:15 +0000 Received: from mga03.intel.com (mga03.intel.com [134.134.136.65]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id f08fc573-097e-11ee-b232-6b7b168915f2; Tue, 13 Jun 2023 02:12:12 +0200 (CEST) Received: from orsmga004.jf.intel.com ([10.7.209.38]) by orsmga103.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 12 Jun 2023 17:12:08 -0700 Received: from almeisch-mobl1.amr.corp.intel.com (HELO rpedgeco-desk4.amr.corp.intel.com) ([10.209.42.242]) by orsmga004-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 12 Jun 2023 17:12:07 -0700 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: f08fc573-097e-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1686615132; x=1718151132; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=3c77rqX6YUy6Cyz5r8ePlQOYiEkqAYIhDQVjx5oVoZw=; b=g+ZYXoAlr+ngok4F9bueFmrFBdo0jxaex0ZmEZJed+xR1ofr5h0nf485 WnWKuNjlAuF6oNqVWVs8tSKc3DS1bD2TMpsyzRsrzzns3ABqZgeTxSpYE QNB7mulmMPh57NMK1WLxrtb/hyAJ9/20uUSy+mMKKw+zDDVnwPRCeiBLX pxHylPw8z3BfYu52D/sNKlYsTFdnRr3zw0ipaQ4ep9DjSqrs7lrLWIaBb lepqbFnNWl7785sGMGIxfisGjct0I2pKOOFNxpQE2T2KFZ1nwX9iWG+JT l2hRaM86KUHcJ300P2QP6N7JdTdAqhiblaMfmLhAtAE0r3VALRPHU+dg7 A==; X-IronPort-AV: E=McAfee;i="6600,9927,10739"; a="361556695" X-IronPort-AV: E=Sophos;i="6.00,238,1681196400"; d="scan'208";a="361556695" X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10739"; a="835670972" X-IronPort-AV: E=Sophos;i="6.00,238,1681196400"; d="scan'208";a="835670972" From: Rick Edgecombe To: x86@kernel.org, "H . Peter Anvin" , Thomas Gleixner , Ingo Molnar , linux-kernel@vger.kernel.org, linux-doc@vger.kernel.org, linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-api@vger.kernel.org, Arnd Bergmann , Andy Lutomirski , Balbir Singh , Borislav Petkov , Cyrill Gorcunov , Dave Hansen , Eugene Syromiatnikov , Florian Weimer , "H . J . Lu" , Jann Horn , Jonathan Corbet , Kees Cook , Mike Kravetz , Nadav Amit , Oleg Nesterov , Pavel Machek , Peter Zijlstra , Randy Dunlap , Weijiang Yang , "Kirill A . Shutemov" , John Allen , kcc@google.com, eranian@google.com, rppt@kernel.org, jamorris@linux.microsoft.com, dethoma@microsoft.com, akpm@linux-foundation.org, Andrew.Cooper3@citrix.com, christina.schimpe@intel.com, david@redhat.com, debug@rivosinc.com, szabolcs.nagy@arm.com, torvalds@linux-foundation.org, broonie@kernel.org Cc: rick.p.edgecombe@intel.com, linux-arm-kernel@lists.infradead.org, linux-s390@vger.kernel.org, xen-devel@lists.xenproject.org Subject: [PATCH v9 02/42] mm: Move pte/pmd_mkwrite() callers with no VMA to _novma() Date: Mon, 12 Jun 2023 17:10:28 -0700 Message-Id: <20230613001108.3040476-3-rick.p.edgecombe@intel.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20230613001108.3040476-1-rick.p.edgecombe@intel.com> References: <20230613001108.3040476-1-rick.p.edgecombe@intel.com> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The x86 Shadow stack feature includes a new type of memory called shadow stack. This shadow stack memory has some unusual properties, which requires some core mm changes to function properly. One of these unusual properties is that shadow stack memory is writable, but only in limited ways. These limits are applied via a specific PTE bit combination. Nevertheless, the memory is writable, and core mm code will need to apply the writable permissions in the typical paths that call pte_mkwrite(). Future patches will make pte_mkwrite() take a VMA, so that the x86 implementation of it can know whether to create regular writable memory or shadow stack memory. But there are a couple of challenges to this. Modifying the signatures of each arch pte_mkwrite() implementation would be error prone because some are generated with macros and would need to be re-implemented. Also, some pte_mkwrite() callers operate on kernel memory without a VMA. So this can be done in a three step process. First pte_mkwrite() can be renamed to pte_mkwrite_novma() in each arch, with a generic pte_mkwrite() added that just calls pte_mkwrite_novma(). Next callers without a VMA can be moved to pte_mkwrite_novma(). And lastly, pte_mkwrite() and all callers can be changed to take/pass a VMA. Previous patches have done the first step, so next move the callers that don't have a VMA to pte_mkwrite_novma(). Also do the same for pmd_mkwrite(). This will be ok for the shadow stack feature, as these callers are on kernel memory which will not need to be made shadow stack, and the other architectures only currently support one type of memory in pte_mkwrite() Cc: linux-doc@vger.kernel.org Cc: linux-arm-kernel@lists.infradead.org Cc: linux-s390@vger.kernel.org Cc: xen-devel@lists.xenproject.org Cc: linux-arch@vger.kernel.org Cc: linux-mm@kvack.org Signed-off-by: Rick Edgecombe --- Hi Non-x86 Arch’s, x86 has a feature that allows for the creation of a special type of writable memory (shadow stack) that is only writable in limited specific ways. Previously, changes were proposed to core MM code to teach it to decide when to create normally writable memory or the special shadow stack writable memory, but David Hildenbrand suggested[0] to change pXX_mkwrite() to take a VMA, so awareness of shadow stack memory can be moved into x86 code. Later Linus suggested a less error-prone way[1] to go about this after the first attempt had a bug. Since pXX_mkwrite() is defined in every arch, it requires some tree-wide changes. So that is why you are seeing some patches out of a big x86 series pop up in your arch mailing list. There is no functional change. After this refactor, the shadow stack series goes on to use the arch helpers to push arch memory details inside arch/x86 and other arch's with upcoming shadow stack features. Testing was just 0-day build testing. Hopefully that is enough context. Thanks! [0] https://lore.kernel.org/lkml/0e29a2d0-08d8-bcd6-ff26-4bea0e4037b0@redhat.com/ [1] https://lore.kernel.org/lkml/CAHk-=wiZjSu7c9sFYZb3q04108stgHff2wfbokGCCgW7riz+8Q@mail.gmail.com/ --- arch/arm64/mm/trans_pgd.c | 4 ++-- arch/s390/mm/pageattr.c | 4 ++-- arch/x86/xen/mmu_pv.c | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/arch/arm64/mm/trans_pgd.c b/arch/arm64/mm/trans_pgd.c index 4ea2eefbc053..a01493f3a06f 100644 --- a/arch/arm64/mm/trans_pgd.c +++ b/arch/arm64/mm/trans_pgd.c @@ -40,7 +40,7 @@ static void _copy_pte(pte_t *dst_ptep, pte_t *src_ptep, unsigned long addr) * read only (code, rodata). Clear the RDONLY bit from * the temporary mappings we use during restore. */ - set_pte(dst_ptep, pte_mkwrite(pte)); + set_pte(dst_ptep, pte_mkwrite_novma(pte)); } else if (debug_pagealloc_enabled() && !pte_none(pte)) { /* * debug_pagealloc will removed the PTE_VALID bit if @@ -53,7 +53,7 @@ static void _copy_pte(pte_t *dst_ptep, pte_t *src_ptep, unsigned long addr) */ BUG_ON(!pfn_valid(pte_pfn(pte))); - set_pte(dst_ptep, pte_mkpresent(pte_mkwrite(pte))); + set_pte(dst_ptep, pte_mkpresent(pte_mkwrite_novma(pte))); } } diff --git a/arch/s390/mm/pageattr.c b/arch/s390/mm/pageattr.c index 5ba3bd8a7b12..6931d484d8a7 100644 --- a/arch/s390/mm/pageattr.c +++ b/arch/s390/mm/pageattr.c @@ -97,7 +97,7 @@ static int walk_pte_level(pmd_t *pmdp, unsigned long addr, unsigned long end, if (flags & SET_MEMORY_RO) new = pte_wrprotect(new); else if (flags & SET_MEMORY_RW) - new = pte_mkwrite(pte_mkdirty(new)); + new = pte_mkwrite_novma(pte_mkdirty(new)); if (flags & SET_MEMORY_NX) new = set_pte_bit(new, __pgprot(_PAGE_NOEXEC)); else if (flags & SET_MEMORY_X) @@ -155,7 +155,7 @@ static void modify_pmd_page(pmd_t *pmdp, unsigned long addr, if (flags & SET_MEMORY_RO) new = pmd_wrprotect(new); else if (flags & SET_MEMORY_RW) - new = pmd_mkwrite(pmd_mkdirty(new)); + new = pmd_mkwrite_novma(pmd_mkdirty(new)); if (flags & SET_MEMORY_NX) new = set_pmd_bit(new, __pgprot(_SEGMENT_ENTRY_NOEXEC)); else if (flags & SET_MEMORY_X) diff --git a/arch/x86/xen/mmu_pv.c b/arch/x86/xen/mmu_pv.c index b3b8d289b9ab..63fced067057 100644 --- a/arch/x86/xen/mmu_pv.c +++ b/arch/x86/xen/mmu_pv.c @@ -150,7 +150,7 @@ void make_lowmem_page_readwrite(void *vaddr) if (pte == NULL) return; /* vaddr missing */ - ptev = pte_mkwrite(*pte); + ptev = pte_mkwrite_novma(*pte); if (HYPERVISOR_update_va_mapping(address, ptev, 0)) BUG(); -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Tue Jun 13 00:56:22 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 00:56:22 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547705.855275 (Exim 4.92) (envelope-from ) id 1q8sKQ-00041G-Cv; Tue, 13 Jun 2023 00:56:10 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547705.855275; Tue, 13 Jun 2023 00:56:10 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8sKQ-000419-AN; Tue, 13 Jun 2023 00:56:10 +0000 Received: by outflank-mailman (input) for mailman id 547705; Tue, 13 Jun 2023 00:56:09 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8sKP-00040z-70; Tue, 13 Jun 2023 00:56:09 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8sKP-0000LA-3d; Tue, 13 Jun 2023 00:56:09 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8sKO-0003R7-JP; Tue, 13 Jun 2023 00:56:08 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q8sKO-0005c1-Iv; Tue, 13 Jun 2023 00:56:08 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=HTouw4tZQ61HlMAseJuck9VY1odl70327wi0pG/aXXQ=; b=qMmj1rzXWzgAMLSCMh+0F0dWFy fqxdx3MLXOMYSOONaIlh2+wMXuUNDMoXhlA8WrvLPQWvB+OmmZv2bI6t6Gs03WmvfhyOWVLqnBs3D cF3sVDPFgECZuxutzGOD4Nv9QGf2D2KP1pYzRnDVjKTz3E7kFiv5YtIlm5YO/aCThF8I=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [linux-linus test] 181392: regressions - trouble: broken/fail/pass X-Osstest-Failures: linux-linus:test-armhf-armhf-libvirt::broken:regression linux-linus:test-armhf-armhf-libvirt-qcow2::broken:regression linux-linus:test-armhf-armhf-libvirt-raw::broken:regression linux-linus:test-armhf-armhf-xl::broken:regression linux-linus:test-armhf-armhf-xl-arndale::broken:regression linux-linus:test-armhf-armhf-xl-credit1::broken:regression linux-linus:test-armhf-armhf-xl-credit2::broken:regression linux-linus:test-armhf-armhf-xl-multivcpu::broken:regression linux-linus:test-armhf-armhf-xl-rtds::broken:regression linux-linus:test-armhf-armhf-xl-vhd::broken:regression linux-linus:test-armhf-armhf-xl-credit1:xen-boot:fail:regression linux-linus:build-arm64-pvops:kernel-build:fail:regression linux-linus:test-armhf-armhf-libvirt-raw:host-install(5):broken:heisenbug linux-linus:test-armhf-armhf-xl-multivcpu:host-install(5):broken:heisenbug linux-linus:test-armhf-armhf-xl-vhd:host-install(5):broken:heisenbug linux-linus:test-armhf-armhf-xl-credit1:host-install(5):broken:heisenbug linux-linus:test-armhf-armhf-examine:host-install:broken:heisenbug linux-linus:test-armhf-armhf-xl:host-install(5):broken:heisenbug linux-linus:test-armhf-armhf-xl-rtds:host-install(5):broken:heisenbug linux-linus:test-armhf-armhf-xl-arndale:host-install(5):broken:heisenbug linux-linus:test-armhf-armhf-xl-credit2:host-install(5):broken:heisenbug linux-linus:test-armhf-armhf-libvirt:host-install(5):broken:heisenbug linux-linus:test-armhf-armhf-libvirt-qcow2:host-install(5):broken:heisenbug linux-linus:test-amd64-amd64-xl-vhd:guest-start/debian.repeat:fail:heisenbug linux-linus:test-arm64-arm64-examine:build-check(1):blocked:nonblocking linux-linus:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking linux-linus:test-arm64-arm64-xl:build-check(1):blocked:nonblocking linux-linus:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking linux-linus:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking linux-linus:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking linux-linus:test-armhf-armhf-xl-multivcpu:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-vhd:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-raw:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-credit2:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-examine:reboot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-arndale:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-qcow2:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-rtds:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-raw:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-qcow2:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: linux=858fd168a95c5b9669aac8db6c14a9aeab446375 X-Osstest-Versions-That: linux=6c538e1adbfc696ac4747fb10d63e704344f763d From: osstest service owner Date: Tue, 13 Jun 2023 00:56:08 +0000 flight 181392 linux-linus real [real] http://logs.test-lab.xenproject.org/osstest/logs/181392/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: test-armhf-armhf-libvirt broken test-armhf-armhf-libvirt-qcow2 broken test-armhf-armhf-libvirt-raw broken test-armhf-armhf-xl broken test-armhf-armhf-xl-arndale broken test-armhf-armhf-xl-credit1 broken test-armhf-armhf-xl-credit2 broken test-armhf-armhf-xl-multivcpu broken test-armhf-armhf-xl-rtds broken test-armhf-armhf-xl-vhd broken test-armhf-armhf-xl-credit1 8 xen-boot fail in 181383 REGR. vs. 180278 build-arm64-pvops 6 kernel-build fail in 181383 REGR. vs. 180278 Tests which are failing intermittently (not blocking): test-armhf-armhf-libvirt-raw 5 host-install(5) broken pass in 181383 test-armhf-armhf-xl-multivcpu 5 host-install(5) broken pass in 181383 test-armhf-armhf-xl-vhd 5 host-install(5) broken pass in 181383 test-armhf-armhf-xl-credit1 5 host-install(5) broken pass in 181383 test-armhf-armhf-examine 5 host-install broken pass in 181387 test-armhf-armhf-xl 5 host-install(5) broken pass in 181387 test-armhf-armhf-xl-rtds 5 host-install(5) broken pass in 181387 test-armhf-armhf-xl-arndale 5 host-install(5) broken pass in 181387 test-armhf-armhf-xl-credit2 5 host-install(5) broken pass in 181387 test-armhf-armhf-libvirt 5 host-install(5) broken pass in 181387 test-armhf-armhf-libvirt-qcow2 5 host-install(5) broken pass in 181387 test-amd64-amd64-xl-vhd 21 guest-start/debian.repeat fail in 181383 pass in 181392 Tests which did not succeed, but are not blocking: test-arm64-arm64-examine 1 build-check(1) blocked in 181383 n/a test-arm64-arm64-xl-vhd 1 build-check(1) blocked in 181383 n/a test-arm64-arm64-xl 1 build-check(1) blocked in 181383 n/a test-arm64-arm64-xl-credit2 1 build-check(1) blocked in 181383 n/a test-arm64-arm64-libvirt-xsm 1 build-check(1) blocked in 181383 n/a test-arm64-arm64-libvirt-raw 1 build-check(1) blocked in 181383 n/a test-arm64-arm64-xl-xsm 1 build-check(1) blocked in 181383 n/a test-arm64-arm64-xl-thunderx 1 build-check(1) blocked in 181383 n/a test-arm64-arm64-xl-credit1 1 build-check(1) blocked in 181383 n/a test-armhf-armhf-xl-multivcpu 8 xen-boot fail in 181383 like 180278 test-armhf-armhf-xl-vhd 8 xen-boot fail in 181383 like 180278 test-armhf-armhf-libvirt-raw 8 xen-boot fail in 181383 like 180278 test-armhf-armhf-xl-credit2 8 xen-boot fail in 181387 like 180278 test-armhf-armhf-examine 8 reboot fail in 181387 like 180278 test-armhf-armhf-libvirt 8 xen-boot fail in 181387 like 180278 test-armhf-armhf-xl-arndale 8 xen-boot fail in 181387 like 180278 test-armhf-armhf-libvirt-qcow2 8 xen-boot fail in 181387 like 180278 test-armhf-armhf-xl 8 xen-boot fail in 181387 like 180278 test-armhf-armhf-xl-rtds 8 xen-boot fail in 181387 like 180278 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 180278 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 180278 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 180278 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 180278 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 180278 test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qcow2 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass version targeted for testing: linux 858fd168a95c5b9669aac8db6c14a9aeab446375 baseline version: linux 6c538e1adbfc696ac4747fb10d63e704344f763d Last test of basis 180278 2023-04-16 19:41:46 Z 57 days Failing since 180281 2023-04-17 06:24:36 Z 56 days 107 attempts Testing same since 181383 2023-06-11 22:12:05 Z 1 days 3 attempts ------------------------------------------------------------ 2681 people touched revisions under test, not listing them all jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl broken test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-freebsd11-amd64 pass test-amd64-amd64-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale broken test-amd64-amd64-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 broken test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 broken test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine fail test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt broken test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu broken test-amd64-amd64-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-amd64-pygrub pass test-amd64-amd64-libvirt-qcow2 pass test-armhf-armhf-libvirt-qcow2 broken test-amd64-amd64-libvirt-raw pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw broken test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds broken test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-amd64-xl-vhd pass test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd broken ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary broken-job test-armhf-armhf-libvirt broken broken-job test-armhf-armhf-libvirt-qcow2 broken broken-job test-armhf-armhf-libvirt-raw broken broken-job test-armhf-armhf-xl broken broken-job test-armhf-armhf-xl-arndale broken broken-job test-armhf-armhf-xl-credit1 broken broken-job test-armhf-armhf-xl-credit2 broken broken-job test-armhf-armhf-xl-multivcpu broken broken-job test-armhf-armhf-xl-rtds broken broken-job test-armhf-armhf-xl-vhd broken broken-step test-armhf-armhf-examine host-install broken-step test-armhf-armhf-xl host-install(5) broken-step test-armhf-armhf-xl-rtds host-install(5) broken-step test-armhf-armhf-xl-arndale host-install(5) broken-step test-armhf-armhf-xl-credit2 host-install(5) broken-step test-armhf-armhf-libvirt host-install(5) broken-step test-armhf-armhf-libvirt-raw host-install(5) broken-step test-armhf-armhf-libvirt-qcow2 host-install(5) broken-step test-armhf-armhf-xl-multivcpu host-install(5) broken-step test-armhf-armhf-xl-vhd host-install(5) broken-step test-armhf-armhf-xl-credit1 host-install(5) broken-job test-armhf-armhf-xl-credit1 broken broken-job test-armhf-armhf-xl-vhd broken broken-job test-armhf-armhf-libvirt-raw broken broken-job test-armhf-armhf-xl-multivcpu broken Not pushing. (No revision log; it would be 340189 lines long.) From xen-devel-bounces@lists.xenproject.org Tue Jun 13 01:07:51 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 01:07:51 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547715.855284 (Exim 4.92) (envelope-from ) id 1q8sVY-0003zz-IX; Tue, 13 Jun 2023 01:07:40 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547715.855284; Tue, 13 Jun 2023 01:07:40 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8sVY-0003zs-FI; Tue, 13 Jun 2023 01:07:40 +0000 Received: by outflank-mailman (input) for mailman id 547715; Tue, 13 Jun 2023 01:07:39 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8sVX-0003zh-Kw for xen-devel@lists.xenproject.org; Tue, 13 Jun 2023 01:07:39 +0000 Received: from mail-yw1-x1135.google.com (mail-yw1-x1135.google.com [2607:f8b0:4864:20::1135]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id aebddf2b-0986-11ee-b232-6b7b168915f2; Tue, 13 Jun 2023 03:07:37 +0200 (CEST) Received: by mail-yw1-x1135.google.com with SMTP id 00721157ae682-56d549284bbso4269297b3.0; Mon, 12 Jun 2023 18:07:36 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: aebddf2b-0986-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686618455; x=1689210455; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=IZxBVTrJ/8k0TJYWn5v8UKzrmg/Gt9ZgBAmx9alb1Pk=; b=LVhsNiM3DSoX+YLwXhGSq7JfhpvEQAiqlSNnFbPF5ebuQbSQrhTNkQk2wNavSvUwPs 7kkjA2tpla9Hn7NFjd+irk4v1lVty/xzzCqUWmyQ0MpyXSBpR9oIXaQ1TihwUKWdzzil Y+b3gSy1dXszcAfhA4bcTb852XbOT5dXuzddi1yAmrRlTmy33PH/kaO9mFuAkyXGXrvP MkqkPXpui/0pFhTGNpMHGhv++iUgz76Cjo+Vv/xAlgi/ZZbBYFz/W5T+SFZrtNrNgnmH EN1pAxyh0Y9PUTQxEVuqzM0crUE+56OmfXuyIyKV92Q5BeMXFAI/2GCC0Cg/vcRvuYEb i7VQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686618455; x=1689210455; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=IZxBVTrJ/8k0TJYWn5v8UKzrmg/Gt9ZgBAmx9alb1Pk=; b=LYwgMKDxWY6tL4t+lDhtpJRMLGWMZqE3NsY6knIijVOQVeoSLDulDJowEeTEveazJ7 tqA4MjSmy2wNB46mUhgPr96IoC5z0IIztWSzUvZV6Qbl3xoGdxxKiCsuYrGXMLMI4lGP HdG6DFmtocvZOZPAPBaqvH6s6zroQM55FfpthRfCTswHpCqdHnNaH8adhY6RswoJSqfR jb0WVYY+b9NFPrvYAeYKb0NdbRXtkrHDMy/nzM1loaWHscPJ3KQBDeC/4XqPdjJAnjLZ o6hUOfsCljwgETVa8hRmmp2x511S6yI9n55roMFYHO0wbIHIlL2XwN6dcXt3K4JFE/AC PYmA== X-Gm-Message-State: AC+VfDwzqmBTMQhRgFRG4ox43LElwSDXVZpYVffDC7KZJ8bOsfdwjNRE GPgfra07r0i6VV9dI+9xeQET0JJ2W0oqNYu9mXETOSBy X-Google-Smtp-Source: ACHHUZ7jPp41+KCaHt2wgfD/m5JO1Ek0kJs+hZAf38QkAHS4z2oRSSBuMOayGa+F+z0yWWcR/n/owY6zU/LccPFPEr8= X-Received: by 2002:a81:4688:0:b0:569:5f72:4d4 with SMTP id t130-20020a814688000000b005695f7204d4mr425609ywa.4.1686618455200; Mon, 12 Jun 2023 18:07:35 -0700 (PDT) MIME-Version: 1.0 References: <78899eac-9de8-3626-8f40-98f993984f95@xen.org> In-Reply-To: From: Jiatong Shen Date: Tue, 13 Jun 2023 09:07:24 +0800 Message-ID: Subject: Re: Asking for help to debug xen efi on Kunpeng machine To: Julien Grall Cc: Stefano Stabellini , xen-users@lists.xenproject.org, xen-devel@lists.xenproject.org, bertrand.marquis@arm.com Content-Type: multipart/alternative; boundary="000000000000e4d5e405fdf8752d" --000000000000e4d5e405fdf8752d Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Hello Stefano and Julien, Could you provide more insights for debugging? I tried to connect to serial console through ipmitool sol activate and enabled ACPI, I do see some logs but the machine is still stuck. BMC video screen is still not responsive and black out. Thank you very much for the help! Best Regards, Jiatong Shen On Sun, Jun 11, 2023 at 5:17=E2=80=AFPM Jiatong Shen wrote: > Hello Stefano and Julien, > > I tried to do some debugging by adding a printk inside the function > idle_loop in file arm/domain.c. Looks like the idle function is running > normally because the printk function is getting called without stalling. > But the vga screen is still blacked out and the serial terminal does not > display any login message. > > the grub config for xen 4.17 is > > submenu 'Xen hypervisor, version 4.17' $menuentry_id_option > 'xen-hypervisor-4.17-5ebc23af-c2e2-4ac3-b308-3e82ec786c04' { > menuentry 'Debian GNU/Linux, with Xen 4.17 and Linux 5.10.0-23-arm64' > --class debian --class gnu-linux --class gnu --class os --class xen > $menuentry_id_option > 'xen-gnulinux-5.10.0-23-arm64-advanced-5ebc23af-c2e2-4ac3-b308-3e82ec786c= 04' > { > insmod part_gpt > insmod ext2 > set root=3D'hd0,gpt2' > if [ x$feature_platform_search_hint =3D xy ]; then > search --no-floppy --fs-uuid --set=3Droot > --hint-ieee1275=3D'ieee1275//sas/disk@20000,gpt2' --hint-bios=3Dhd0,gpt2 > --hint-efi=3Dhd0,gpt2 --hint-baremetal=3Dahci0,gpt2 > 5ebc23af-c2e2-4ac3-b308-3e82ec786c04 > else > search --no-floppy --fs-uuid --set=3Droot > 5ebc23af-c2e2-4ac3-b308-3e82ec786c04 > fi > echo 'Loading Xen 4.17 ...' > if [ "$grub_platform" =3D "pc" -o "$grub_platform" =3D "" ]; then > xen_rm_opts=3D > else > xen_rm_opts=3D"no-real-mode edd=3Doff" > fi > xen_hypervisor /boot/xen-4.17 placeholder ${xen_rm_opts} > echo 'Loading Linux 5.10.0-23-arm64 ...' > xen_module /boot/vmlinuz-5.10.0-23-arm64 placeholder > root=3DUUID=3D5ebc23af-c2e2-4ac3-b308-3e82ec786c04 ro quiet > echo 'Loading initial ramdisk ...' > xen_module --nounzip /boot/initrd.img-5.10.0-23-arm64 > } > > The code I am modifying is > > static void noreturn idle_loop(void) > { > unsigned int cpu =3D smp_processor_id(); > > for ( ; ; ) > { > dprintk(XENLOG_INFO, "running idle loop \n"); > if ( cpu_is_offline(cpu) ) > stop_cpu(); > } > } > } > > Hopes this debugging makes some sense. > > Best Regards, > Jiatong Shen > > On Sun, Jun 11, 2023 at 12:00=E2=80=AFPM Jiatong Shen > wrote: > >> Hello Stefano, >> >> I am able to obtain some serial logging (by enabling debugging and >> verbose debugging messages, hopefully select the right option). The mess= age >> looks like >> >> (XEN) *** Serial input to DOM0 (type 'CTRL-a' three times to switch inpu= t) >> (XEN) Freed 372kB init memory. >> (XEN) d0v0: vGICD: unhandled word write 0x000000ffffffff to ICACTIVER4 >> (XEN) d0v0: vGICD: unhandled word write 0x000000ffffffff to ICACTIVER8 >> (XEN) d0v0: vGICD: unhandled word write 0x000000ffffffff to ICACTIVER12 >> (XEN) d0v0: vGICD: unhandled word write 0x000000ffffffff to ICACTIVER16 >> (XEN) d0v0: vGICD: unhandled word write 0x000000ffffffff to ICACTIVER20 >> (XEN) d0v0: vGICD: unhandled word write 0x000000ffffffff to ICACTIVER24 >> (XEN) d0v0: vGICD: unhandled word write 0x000000ffffffff to ICACTIVER28 >> (XEN) d0v0: vGICD: unhandled word write 0x000000ffffffff to ICACTIVER32 >> (XEN) d0v0: vGICD: unhandled word write 0x000000ffffffff to ICACTIVER36 >> (XEN) d0v0: vGICD: unhandled word write 0x000000ffffffff to ICACTIVER40 >> >> Could you help find out where it is wrong ? Thank you very much for the >> help! >> >> Best Regards, >> Jiatong Shen >> >> >> On Sat, Jun 10, 2023 at 7:15=E2=80=AFAM Jiatong Shen >> wrote: >> >>> Hello Julien, >>> >>> Thank you very much for your help! >>> >>> Best, >>> >>> Jiatong Shen >>> >>> On Fri, Jun 9, 2023 at 4:48=E2=80=AFPM Julien Grall wr= ote: >>> >>>> Hello, >>>> >>>> On 09/06/2023 03:32, Jiatong Shen wrote: >>>> > Thank you for your answer. Can you teach me how to verify if acpi is >>>> > enabled? >>>> >>>> You usually look at the .config. But I am not sure if this is provided >>>> by the Debian package. If not, then your best option would be to build >>>> your own Xen. To select ACPI, you want to use the menuconfig and selec= t >>>> UNSUPPORTED and ACPI. >>>> >>>> Cheers, >>>> >>>> -- >>>> Julien Grall >>>> >>> >>> >>> -- >>> >>> Best Regards, >>> >>> Jiatong Shen >>> >> >> >> -- >> >> Best Regards, >> >> Jiatong Shen >> > > > -- > > Best Regards, > > Jiatong Shen > --=20 Best Regards, Jiatong Shen --000000000000e4d5e405fdf8752d Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Hello Stefano and Julien,

=C2=A0 =C2=A0= Could you provide more insights for debugging? I tried=C2=A0to connect to s= erial console through ipmitool sol activate and enabled ACPI, I do see=C2= =A0
some logs but the machine is still stuck. BMC video screen is= still not responsive and black out.

Thank you=C2= =A0 very much for the help!

Best Regards,
Jiatong Shen

On Sun, Jun 11, 2023 at 5:17=E2=80=AFPM Jiatong Shen &l= t;yshxxsjt715@gmail.com> wr= ote:
Hello Stefano and Julien,

=C2=A0 =C2=A0I tried to = do some debugging by adding a printk inside the function idle_loop in file = arm/domain.c. Looks like the idle function is running
normally be= cause the printk function is getting called without stalling. But the vga s= creen is still blacked out and the serial terminal does not
displ= ay any login message.

the grub config for xen 4.17= is=C2=A0

=C2=A0submenu 'Xen hypervisor, versi= on 4.17' $menuentry_id_option 'xen-hypervisor-4.17-5ebc23af-c2e2-4a= c3-b308-3e82ec786c04' {
menuentry 'Debian GNU/Linux, with Xen = 4.17 and Linux 5.10.0-23-arm64' --class debian --class gnu-linux --clas= s gnu --class os --class xen $menuentry_id_option 'xen-gnulinux-5.10.0-= 23-arm64-advanced-5ebc23af-c2e2-4ac3-b308-3e82ec786c04' {
insmod = part_gpt
insmod ext2
set root=3D'hd0,gpt2'
if [ x= $feature_platform_search_hint =3D xy ]; then
=C2=A0search --no-flopp= y --fs-uuid --set=3Droot --hint-ieee1275=3D'ieee1275//sas/disk@20000,gp= t2' --hint-bios=3Dhd0,gpt2 --hint-efi=3Dhd0,gpt2 --hint-baremetal=3Dahc= i0,gpt2 =C2=A05ebc23af-c2e2-4ac3-b308-3e82ec786c04
else
=C2=A0= search --no-floppy --fs-uuid --set=3Droot 5ebc23af-c2e2-4ac3-b308-3e82ec786= c04
fi
echo 'Loading Xen 4.17 ...'
=C2=A0 =C2=A0 = =C2=A0 =C2=A0if [ "$grub_platform" =3D "pc" -o "$g= rub_platform" =3D "" ]; then
=C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 =C2=A0xen_rm_opts=3D
=C2=A0 =C2=A0 =C2=A0 =C2=A0else
= =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0xen_rm_opts=3D"no-real-mode = edd=3Doff"
=C2=A0 =C2=A0 =C2=A0 =C2=A0fi
xen_hypervisor /b= oot/xen-4.17 placeholder =C2=A0 ${xen_rm_opts}
echo 'Loading Linu= x 5.10.0-23-arm64 ...'
xen_module /boot/vmlinuz-5.10.0-23-arm64 p= laceholder root=3DUUID=3D5ebc23af-c2e2-4ac3-b308-3e82ec786c04 ro =C2=A0quie= t
echo 'Loading initial ramdisk ...'
xen_module --nounz= ip =C2=A0 /boot/initrd.img-5.10.0-23-arm64
}

<= div>The code I am modifying is=C2=A0

static void n= oreturn idle_loop(void)
{
=C2=A0 =C2=A0 unsigned int cpu =3D smp_proc= essor_id();

=C2=A0 =C2=A0 for ( ; ; )
=C2=A0 =C2=A0 {
=C2=A0 = =C2=A0 =C2=A0 =C2=A0 dprintk(XENLOG_INFO, "running idle loop \n")= ;
=C2=A0 =C2=A0 =C2=A0 =C2=A0 if ( cpu_is_offline(cpu) )=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 stop_cpu();
=C2=A0 = =C2=A0 =C2=A0 =C2=A0 }
}
}

Hop= es this debugging makes some sense.

Best Regards,<= /div>
Jiatong Shen

On Sun, Jun 11, 2023 at 12:00=E2=80=AFPM Jiat= ong Shen <ysh= xxsjt715@gmail.com> wrote:
Hello Stefano,

=C2=A0= =C2=A0 I am able to obtain some serial logging (by enabling debugging and = verbose debugging messages, hopefully select the right option). The message= looks like=C2=A0

(XEN) *** Serial input to DOM0 (= type 'CTRL-a' three times to switch input)
(XEN) Freed 372kB ini= t memory.
(XEN) d0v0: vGICD: unhandled word write 0x000000ffffffff to IC= ACTIVER4
(XEN) d0v0: vGICD: unhandled word write 0x000000ffffffff to ICA= CTIVER8
(XEN) d0v0: vGICD: unhandled word write 0x000000ffffffff to ICAC= TIVER12
(XEN) d0v0: vGICD: unhandled word write 0x000000ffffffff to ICAC= TIVER16
(XEN) d0v0: vGICD: unhandled word write 0x000000ffffffff to ICAC= TIVER20
(XEN) d0v0: vGICD: unhandled word write 0x000000ffffffff to ICAC= TIVER24
(XEN) d0v0: vGICD: unhandled word write 0x000000ffffffff to ICAC= TIVER28
(XEN) d0v0: vGICD: unhandled word write 0x000000ffffffff to ICAC= TIVER32
(XEN) d0v0: vGICD: unhandled word write 0x000000ffffffff to ICAC= TIVER36
(XEN) d0v0: vGICD: unhandled word write 0x000000ffffffff to ICAC= TIVER40

Could you help find out where it is wr= ong ? Thank you very much for the help!

Best Regar= ds,
Jiatong Shen


On Sat, Jun 10, 2023 at 7:15= =E2=80=AFAM Jiatong Shen <yshxxsjt715@gmail.com> wrote:
Hello Julien,
=

=C2=A0 =C2=A0 Thank you very much for your help!
Best,

Jiatong Shen

On Fri, Jun 9,= 2023 at 4:48=E2=80=AFPM Julien Grall <julien@xen.org> wrote:
Hello,

On 09/06/2023 03:32, Jiatong Shen wrote:
> Thank you for your answer. Can you teach me how to verify if acpi is > enabled?

You usually look at the .config. But I am not sure if this is provided
by the Debian package. If not, then your best option would be to build
your own Xen. To select ACPI, you want to use the menuconfig and select UNSUPPORTED and ACPI.

Cheers,

--
Julien Grall


--

Best Regards,

Jiatong Shen=


--

Best Regards,

Jiatong Shen=


--

Best Regards,

Jiatong Shen=


--

Best Regards,

Jiatong Shen=
--000000000000e4d5e405fdf8752d-- From xen-devel-bounces@lists.xenproject.org Tue Jun 13 02:05:11 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 02:05:11 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547738.855296 (Exim 4.92) (envelope-from ) id 1q8tOw-0002TU-SX; Tue, 13 Jun 2023 02:04:54 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547738.855296; Tue, 13 Jun 2023 02:04:54 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8tOw-0002TN-Nf; Tue, 13 Jun 2023 02:04:54 +0000 Received: by outflank-mailman (input) for mailman id 547738; Tue, 13 Jun 2023 02:04:53 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8tOv-0002TD-PF; Tue, 13 Jun 2023 02:04:53 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8tOv-0000gn-M2; Tue, 13 Jun 2023 02:04:53 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8tOv-0004xY-3C; Tue, 13 Jun 2023 02:04:53 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q8tOv-0002rP-2k; Tue, 13 Jun 2023 02:04:53 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=hiiRclJQtpPV3+kBeRdOej1cHomOFc7SiEr6mrOJIzQ=; b=EcN2GP6uQAS7XnKT4W8RZhSTB0 eyaXEOkr1ulZ81kzCk5Pv/OGEv1l0xfp4Z4BNLuwXd4u92QVXpy5zixNHSVNfniywB+/VL/GfLGQI sNMtrGQyh5cWhrycdDuLuFOjhs9hFqUtUp3YrB6NXcGEyIX9RRvQFJKhyR1zfZkzgB9I=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [qemu-mainline test] 181395: regressions - trouble: blocked/broken/fail/pass X-Osstest-Failures: qemu-mainline:build-armhf::broken:regression qemu-mainline:build-armhf:host-install(4):broken:regression qemu-mainline:build-arm64-xsm:xen-build:fail:regression qemu-mainline:build-arm64:xen-build:fail:regression qemu-mainline:build-amd64:xen-build:fail:regression qemu-mainline:build-i386:xen-build:fail:regression qemu-mainline:build-amd64-xsm:xen-build:fail:regression qemu-mainline:build-i386-xsm:xen-build:fail:regression qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-i386:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:build-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:build-arm64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:build-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:build-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pygrub:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking X-Osstest-Versions-This: qemuu=fdd0df5340a8ebc8de88078387ebc85c5af7b40f X-Osstest-Versions-That: qemuu=6972ef1440a9d685482d78672620a7482f2bd09a From: osstest service owner Date: Tue, 13 Jun 2023 02:04:53 +0000 flight 181395 qemu-mainline real [real] http://logs.test-lab.xenproject.org/osstest/logs/181395/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-armhf broken build-armhf 4 host-install(4) broken REGR. vs. 180691 build-arm64-xsm 6 xen-build fail REGR. vs. 180691 build-arm64 6 xen-build fail REGR. vs. 180691 build-amd64 6 xen-build fail REGR. vs. 180691 build-i386 6 xen-build fail REGR. vs. 180691 build-amd64-xsm 6 xen-build fail REGR. vs. 180691 build-i386-xsm 6 xen-build fail REGR. vs. 180691 Tests which did not succeed, but are not blocking: test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-xl-xsm 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-raw 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-xsm 1 build-check(1) blocked n/a test-arm64-arm64-xl 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit1 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit2 1 build-check(1) blocked n/a test-arm64-arm64-xl-thunderx 1 build-check(1) blocked n/a test-arm64-arm64-xl-vhd 1 build-check(1) blocked n/a test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a test-armhf-armhf-libvirt 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-qcow2 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-raw 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a test-armhf-armhf-xl-arndale 1 build-check(1) blocked n/a test-armhf-armhf-xl-multivcpu 1 build-check(1) blocked n/a test-armhf-armhf-xl-rtds 1 build-check(1) blocked n/a test-armhf-armhf-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-amd 1 build-check(1) blocked n/a test-amd64-i386-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-raw 1 build-check(1) blocked n/a test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-i386 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-amd64 1 build-check(1) blocked n/a test-amd64-coresched-i386-xl 1 build-check(1) blocked n/a test-amd64-coresched-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-xsm 1 build-check(1) blocked n/a build-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-shadow 1 build-check(1) blocked n/a test-amd64-amd64-xl-rtds 1 build-check(1) blocked n/a build-arm64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a build-armhf-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a build-i386-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-amd 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-pair 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-qcow2 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-vhd 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvshim 1 build-check(1) blocked n/a test-amd64-amd64-pair 1 build-check(1) blocked n/a test-amd64-amd64-pygrub 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-intel 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd11-amd64 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd12-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-multivcpu 1 build-check(1) blocked n/a test-amd64-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit1 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit1 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit2 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-intel 1 build-check(1) blocked n/a test-amd64-i386-xl 1 build-check(1) blocked n/a test-amd64-i386-xl-pvshim 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a version targeted for testing: qemuu fdd0df5340a8ebc8de88078387ebc85c5af7b40f baseline version: qemuu 6972ef1440a9d685482d78672620a7482f2bd09a Last test of basis 180691 2023-05-17 10:45:22 Z 26 days Failing since 180699 2023-05-18 07:21:24 Z 25 days 94 attempts Testing same since 181372 2023-06-10 21:38:57 Z 2 days 15 attempts ------------------------------------------------------------ People who touched revisions under test: Afonso Bordado Akihiko Odaki Akihiro Suda Alex Bennée Alex Williamson Alexander Bulekov Alexander Graf Alexander Ivanov Alistair Francis Anastasia Belova Andrew Jeffery Ani Sinha Ani Sinha Anthony PERARD Anton Johansson BALATON Zoltan Bastian Koppelmann Bernhard Beschow Bin Meng Brian Cain Brice Goglin Camilla Conte Carlos Santos Christian Schoenebeck Chuck Zmudzinski Cindy Lu Clément Chigot Cornelia Huck Cédric Le Goater Cédric Le Goater Daniel Henrique Barboza Daniel P. Berrangé Daniil Kovalev David Hildenbrand David Woodhouse Emanuele Giuseppe Esposito Enze Li Eric Auger Eric Blake Eric DeVolder Erico Nunes Eugenio Pérez Fabiano Rosas Fan Ni Fiona Ebner Francesco Cagnin Francisco Iglesias Frederic Barrat Gavin Shan Gregory Price Gregory Price Hanna Czenczek Hao Zeng Hawkins Jiawei Igor Mammedov Ilya Leoshkevich Ira Weiny Jagannathan Raman Jason Wang Jean-Louis Dupond Jean-Philippe Brucker Jiaxun Yang John Snow Jonathan Cameron Juan Quintela Kevin Wolf Laurent Vivier Lei Yang Leonardo Bras Maksim Davydov Marc-André Lureau Marcin Juszkiewicz Marco Liebel Mark Cave-Ayland Markus Armbruster Matheus Tavares Bernardino Mattias Nissler Mauro Matteo Cascella Max Fritz Michael S. Tsirkin Michael Tokarev Michal Privoznik Milan Zamazal Mostafa Saleh Nicholas Piggin Nicolas Saenz Julienne Niek Linnenbank Palmer Dabbelt Paolo Bonzini Peter Maydell Peter Xu Philippe Mathieu-Daudé qianfan Zhao Raghu H Rene Engel Richard Henderson Richard Purdie Ricky Zhou Ryan Wendland Sebastian Ott Sergio Lopez Sid Manning Song Gao Stefan Hajnoczi Stefano Garzarella Steve Sistare Taylor Simpson Thomas Huth Thomas Weißschuh timothee.cocault@gmail.com Timothée Cocault Tommy Wu Vikram Garhwal Viktor Prutyanov Vitaly Cheptsov Vivek Kasireddy Vladimir Sementsov-Ogievskiy Volker Rümelin Xinyu Li Zeng Hao Zhenyu Zhang Zhenzhong Duan Zhuojia Shen jobs: build-amd64-xsm fail build-arm64-xsm fail build-i386-xsm fail build-amd64 fail build-arm64 fail build-armhf broken build-i386 fail build-amd64-libvirt blocked build-arm64-libvirt blocked build-armhf-libvirt blocked build-i386-libvirt blocked build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl blocked test-amd64-coresched-amd64-xl blocked test-arm64-arm64-xl blocked test-armhf-armhf-xl blocked test-amd64-i386-xl blocked test-amd64-coresched-i386-xl blocked test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-i386-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-amd64-libvirt-xsm blocked test-arm64-arm64-libvirt-xsm blocked test-amd64-i386-libvirt-xsm blocked test-amd64-amd64-xl-xsm blocked test-arm64-arm64-xl-xsm blocked test-amd64-i386-xl-xsm blocked test-amd64-amd64-qemuu-nested-amd blocked test-amd64-amd64-xl-pvhv2-amd blocked test-amd64-i386-qemuu-rhel6hvm-amd blocked test-amd64-amd64-dom0pvh-xl-amd blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-freebsd10-amd64 blocked test-amd64-amd64-qemuu-freebsd11-amd64 blocked test-amd64-amd64-qemuu-freebsd12-amd64 blocked test-amd64-amd64-xl-qemuu-ovmf-amd64 blocked test-amd64-i386-xl-qemuu-ovmf-amd64 blocked test-amd64-amd64-xl-qemuu-win7-amd64 blocked test-amd64-i386-xl-qemuu-win7-amd64 blocked test-amd64-amd64-xl-qemuu-ws16-amd64 blocked test-amd64-i386-xl-qemuu-ws16-amd64 blocked test-armhf-armhf-xl-arndale blocked test-amd64-amd64-xl-credit1 blocked test-arm64-arm64-xl-credit1 blocked test-armhf-armhf-xl-credit1 blocked test-amd64-amd64-xl-credit2 blocked test-arm64-arm64-xl-credit2 blocked test-armhf-armhf-xl-credit2 blocked test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-freebsd10-i386 blocked test-amd64-amd64-qemuu-nested-intel blocked test-amd64-amd64-xl-pvhv2-intel blocked test-amd64-i386-qemuu-rhel6hvm-intel blocked test-amd64-amd64-dom0pvh-xl-intel blocked test-amd64-amd64-libvirt blocked test-armhf-armhf-libvirt blocked test-amd64-i386-libvirt blocked test-amd64-amd64-xl-multivcpu blocked test-armhf-armhf-xl-multivcpu blocked test-amd64-amd64-pair blocked test-amd64-i386-pair blocked test-amd64-amd64-libvirt-pair blocked test-amd64-i386-libvirt-pair blocked test-amd64-amd64-xl-pvshim blocked test-amd64-i386-xl-pvshim blocked test-amd64-amd64-pygrub blocked test-armhf-armhf-libvirt-qcow2 blocked test-amd64-amd64-xl-qcow2 blocked test-arm64-arm64-libvirt-raw blocked test-armhf-armhf-libvirt-raw blocked test-amd64-i386-libvirt-raw blocked test-amd64-amd64-xl-rtds blocked test-armhf-armhf-xl-rtds blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-amd64-xl-shadow blocked test-amd64-i386-xl-shadow blocked test-arm64-arm64-xl-thunderx blocked test-amd64-amd64-libvirt-vhd blocked test-arm64-arm64-xl-vhd blocked test-armhf-armhf-xl-vhd blocked test-amd64-i386-xl-vhd blocked ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary broken-job build-armhf broken broken-step build-armhf host-install(4) Not pushing. (No revision log; it would be 17052 lines long.) From xen-devel-bounces@lists.xenproject.org Tue Jun 13 02:59:44 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 02:59:44 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547747.855305 (Exim 4.92) (envelope-from ) id 1q8uFs-000831-M2; Tue, 13 Jun 2023 02:59:36 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547747.855305; Tue, 13 Jun 2023 02:59:36 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8uFs-00082u-JM; Tue, 13 Jun 2023 02:59:36 +0000 Received: by outflank-mailman (input) for mailman id 547747; Tue, 13 Jun 2023 02:59:35 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8uFr-00082o-Eq for xen-devel@lists.xenproject.org; Tue, 13 Jun 2023 02:59:35 +0000 Received: from EUR02-AM0-obe.outbound.protection.outlook.com (mail-am0eur02on20600.outbound.protection.outlook.com [2a01:111:f400:fe13::600]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 507d843b-0996-11ee-8611-37d641c3527e; Tue, 13 Jun 2023 04:59:30 +0200 (CEST) Received: from DB6PR0402CA0018.eurprd04.prod.outlook.com (2603:10a6:4:91::28) by DB9PR08MB6409.eurprd08.prod.outlook.com (2603:10a6:10:23c::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.44; Tue, 13 Jun 2023 02:59:27 +0000 Received: from DBAEUR03FT049.eop-EUR03.prod.protection.outlook.com (2603:10a6:4:91:cafe::36) by DB6PR0402CA0018.outlook.office365.com (2603:10a6:4:91::28) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.33 via Frontend Transport; Tue, 13 Jun 2023 02:59:27 +0000 Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by DBAEUR03FT049.mail.protection.outlook.com (100.127.142.192) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.21 via Frontend Transport; Tue, 13 Jun 2023 02:59:27 +0000 Received: ("Tessian outbound 99a3040377ca:v136"); Tue, 13 Jun 2023 02:59:27 +0000 Received: from 796c741726b0.2 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 9532FEE5-2FD1-4711-B127-26458CC287C4.1; Tue, 13 Jun 2023 02:59:21 +0000 Received: from EUR01-VE1-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 796c741726b0.2 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Tue, 13 Jun 2023 02:59:21 +0000 Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15) by AS4PR08MB7782.eurprd08.prod.outlook.com (2603:10a6:20b:516::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.32; Tue, 13 Jun 2023 02:59:19 +0000 Received: from AS8PR08MB7991.eurprd08.prod.outlook.com ([fe80::2db3:aa30:7be0:10a6]) by AS8PR08MB7991.eurprd08.prod.outlook.com ([fe80::2db3:aa30:7be0:10a6%6]) with mapi id 15.20.6455.037; Tue, 13 Jun 2023 02:59:18 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 507d843b-0996-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=l2CnNMhr8lQ2oX0Xq5VD+L9NO9J+jxzzrtdxVYQyL9s=; b=aOKMS3M2f2Yfni3zznxOxhpVU76Pifvy4MphaCuX0zo0tgTvu7JAH50kVXt3j5pKD+WZBgTifubukUUox1rVUx0ec/m1bfNhJTuIHRB+O0mrKYd3sFUNjOZohXJFAncmv1AnktUUjZaYiAAv9g6oMNaC7T5wTMtfcbqdcm9RAYY= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C X-CR-MTA-TID: 64aa7808 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=KkWmThw3t81/LC1sqCXSSTcxYIB+CY3n1C0mH+0Pc3D+kfYDLFVRgFsTE+EUn80RVRgtXrR0lXlnbJbU6ih2ZeGakXrArLWb46hR4hIv62bs0Zfr/ri9Ukntd9JPorCxu7qIiRe2VecneVER9so1AlYoiHckZ+9v8dh4Oxo5cbg1NAsnKOALByS3et2h+GWbWIKpRMixHmBr9flN8i3gRETW9YxvNNJvOb4Ewua7qAR+s62VZDRX/aZyQZ8eC1WGZtj9znRhaZmu6bGW1K9dWji6uIqvdUc2pz4L6HknRaznusNuFoMuy9gr/o8Tw2E5fwnO6s2+8uFMrWSwX99V6Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=l2CnNMhr8lQ2oX0Xq5VD+L9NO9J+jxzzrtdxVYQyL9s=; b=TE/gJxAnnvMYZlGHD7G9dRG3WOzNdabkk/fNExskrHR6LZc/M9sfW7o66jVOyPFMpbejKqu6+vaQOlxoXjtZC+9U4FOgWWYs2SvxCrFFA6OIqlrezJYoQPd58mcUMpGyrU5kQ0kRGCNttaU3Xddq1PJCelaWby4L5o4XCDqKsE80qPW2jhk5ZufVqU37jwAWrAA40Jx87QVz1skCB5LQPfQrEk6lzKPzYnmjFl7mtn7O4Rosa1QgLzx6fEJky6UiZxvKJQy2QPlWR2yNOnnvYS4a159alChOISFLL8Cm+hxwabOR5/zV7959AKaXdLPPtccqQtrElNsxIzU8T3PccA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=l2CnNMhr8lQ2oX0Xq5VD+L9NO9J+jxzzrtdxVYQyL9s=; b=aOKMS3M2f2Yfni3zznxOxhpVU76Pifvy4MphaCuX0zo0tgTvu7JAH50kVXt3j5pKD+WZBgTifubukUUox1rVUx0ec/m1bfNhJTuIHRB+O0mrKYd3sFUNjOZohXJFAncmv1AnktUUjZaYiAAv9g6oMNaC7T5wTMtfcbqdcm9RAYY= From: Henry Wang To: Michal Orzel , "xen-devel@lists.xenproject.org" CC: Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk Subject: RE: [PATCH 1/4] xen/arm: debug-pl011: Use correct accessors Thread-Topic: [PATCH 1/4] xen/arm: debug-pl011: Use correct accessors Thread-Index: AQHZmSJjbSuJb96sHUqL7cP2ByEXha+IAkwQ Date: Tue, 13 Jun 2023 02:59:18 +0000 Message-ID: References: <20230607092727.19654-1-michal.orzel@amd.com> <20230607092727.19654-2-michal.orzel@amd.com> In-Reply-To: <20230607092727.19654-2-michal.orzel@amd.com> Accept-Language: zh-CN, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ts-tracking-id: A341C5A7383BC642AD386E1AFEC58ADC.0 x-checkrecipientchecked: true Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-traffictypediagnostic: AS8PR08MB7991:EE_|AS4PR08MB7782:EE_|DBAEUR03FT049:EE_|DB9PR08MB6409:EE_ X-MS-Office365-Filtering-Correlation-Id: 09f8230a-f065-4431-4eff-08db6bba334b x-checkrecipientrouted: true nodisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: b4B9qpXdtGQ0SxFFf2quRifmXT2m6ukoaVtUTbTtDk4gaSut4lbP7OWkTPpfaJ/F0wGPOwrDktXn8nXbbAkuannxXVO/z02Ood+JdcnevaerWXdDNW6Hh5fUbmcJ0+Sh74bmMpFCDNmO4ZmpHqNjZ/cWEL2zOqKWCyMFhml4dOPyIHXr6pHtUG5vync96Y9VvOcwyt/kVA3hSdRqAcMTgqr0Osak8Mb4XdW9b9DKv1oSY9sBeb1zhWpdNfHkuN5DnSBmhkt3aWSgmKPtpCU89pUZecPP5TAN+lgiU2JwJfT/sbcMiL6wGzx7E6eGPtQVrrZW7VwXeNCsPRCElnMbM5h2GNaUUFU+1VO4D3v5M6cRaNBhKXfa3Lg4PF6HBn5TBpXyEVnZkdpRNGOYt5aw4zj88Xw3Lml/MEDveqxKKrw2uXmWJQqYx24Fbjl+lARi2OeW4IQlkt92rlxWwZmIPjJPv9T3PwZSFJ0Y3iETcKYbRgdJqEZoYGubo2eAAYdbN/JwTYNYy1aKrzUD0R/pODbgCpRbw4xjpyjs3lWN46+pglNi5iU2iVn0LESd2MqftDVt0KlWzyOFg/2etIUKqdPhYK5t/klfjap4Yl1PhVT65PHI4/MhqsQ3GkYzp/N7 X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB7991.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(136003)(346002)(39860400002)(366004)(376002)(396003)(451199021)(186003)(9686003)(26005)(6506007)(83380400001)(71200400001)(7696005)(478600001)(2906002)(4744005)(55016003)(8936002)(8676002)(110136005)(54906003)(33656002)(41300700001)(86362001)(38100700002)(122000001)(5660300002)(52536014)(4326008)(64756008)(76116006)(66946007)(66446008)(38070700005)(66476007)(66556008)(316002);DIR:OUT;SFP:1101; Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS4PR08MB7782 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: DBAEUR03FT049.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: b50cccf2-f7e1-486f-31b9-08db6bba2e54 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: /Dl8MiVPq4g2Pr+QdwpkSIwGV5ETZeT73hUfYhcmUaJtinCOX6U04l5JLTrfJsZzOQ5vcGY2HT4nbqS4HW+DxKfutQWPBM30l9AjH//kYdJKohKKQH/mghFQEhj1y/7m7T8yaBNO5UeGj9OkAYIOXIBueMiA/5qoVhLRr7ydrpo1U3Cxfw9N6ggt7VEB1u8x5XA+c3pNsiuC6RpDOL8DomYyNrOnlKJsaFjMA0dxlkjEgZkfNS78y9rd7GqztJqGi6R4LZ9o1mMP6DFQGUjWBn7WZC4Nd6hHnbfbae04nwiM2jYhrRQOBEpKcojWZCO+D8UjwPIoSDNHR/FMVXJ/6I3brIQ+LHAcgdxR+kltPzXbda4oby1yGSO0ZkftGDU4k42xY/GPYiWGu69aF/flnVw/kmwVHrDPsmaNRvh6RKzS+r9PXoE8dXMa0PTeYX5L1GN21DlWnGXqfUIvuIHUr3ggsYkf4HuwhB390YKRXraWHXQiKOzt98WOWOVCiPUixjzgWFviNUqZFDEblnhujuoOL50DhWaZtczY+pIZ6uLALFQaEXdYM7xJmZ7KzD9UkMtRj4/0njlL9Dy4x1Bc+4sWwH1ip6oey0t8oQSeMmTY94nVQP649Prhr366MFUoUs1eJvz+zO2j4LtKevYKsAwnrtgm0V4qx8Thf+W4opZ6DS+FJfdTI+mkFsVMHWYIIBVLzu6f14RJ3SLdsyvYDsYx4+UzFG/bMcoHi2h6Iz/dihLnKYbiQlvaWda9HloY X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230028)(4636009)(376002)(396003)(346002)(136003)(39860400002)(451199021)(36840700001)(46966006)(40470700004)(4744005)(2906002)(86362001)(33656002)(82310400005)(52536014)(40480700001)(55016003)(7696005)(186003)(336012)(83380400001)(36860700001)(26005)(6506007)(9686003)(107886003)(82740400003)(81166007)(356005)(40460700003)(110136005)(54906003)(70586007)(70206006)(4326008)(316002)(5660300002)(47076005)(8936002)(478600001)(8676002)(41300700001);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Jun 2023 02:59:27.1563 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 09f8230a-f065-4431-4eff-08db6bba334b X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: DBAEUR03FT049.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR08MB6409 Hi Michal, > -----Original Message----- > Subject: [PATCH 1/4] xen/arm: debug-pl011: Use correct accessors >=20 > Although most PL011 UARTs can cope with 32-bit accesses, some of the old > legacy ones might not. PL011 registers are 8/16-bit wide and this shall > be perceived as the normal behavior. >=20 > Modify early printk pl011 code for arm32/arm64 to use the correct > accessors depending on the register size (refer ARM DDI 0183G, Table 3.1)= . >=20 > Signed-off-by: Michal Orzel I've tested this patch on top of today's staging on FVP arm32 and arm64 and confirm this patch will not break existing functionality. So: Tested-by: Henry Wang Kind regards, Henry From xen-devel-bounces@lists.xenproject.org Tue Jun 13 02:59:54 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 02:59:54 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547748.855316 (Exim 4.92) (envelope-from ) id 1q8uG9-0008Lq-U1; Tue, 13 Jun 2023 02:59:53 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547748.855316; Tue, 13 Jun 2023 02:59:53 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8uG9-0008Lh-Qt; Tue, 13 Jun 2023 02:59:53 +0000 Received: by outflank-mailman (input) for mailman id 547748; Tue, 13 Jun 2023 02:59:52 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8uG8-0008Kt-0j for xen-devel@lists.xenproject.org; Tue, 13 Jun 2023 02:59:52 +0000 Received: from EUR05-VI1-obe.outbound.protection.outlook.com (mail-vi1eur05on20614.outbound.protection.outlook.com [2a01:111:f400:7d00::614]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 5bde0749-0996-11ee-b232-6b7b168915f2; Tue, 13 Jun 2023 04:59:49 +0200 (CEST) Received: from AS9PR04CA0070.eurprd04.prod.outlook.com (2603:10a6:20b:48b::16) by DBAPR08MB5592.eurprd08.prod.outlook.com (2603:10a6:10:1a8::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.44; Tue, 13 Jun 2023 02:59:44 +0000 Received: from AM7EUR03FT034.eop-EUR03.prod.protection.outlook.com (2603:10a6:20b:48b:cafe::d) by AS9PR04CA0070.outlook.office365.com (2603:10a6:20b:48b::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.34 via Frontend Transport; Tue, 13 Jun 2023 02:59:43 +0000 Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by AM7EUR03FT034.mail.protection.outlook.com (100.127.140.87) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.23 via Frontend Transport; Tue, 13 Jun 2023 02:59:43 +0000 Received: ("Tessian outbound e13c2446394c:v136"); Tue, 13 Jun 2023 02:59:43 +0000 Received: from 0012fef3d39d.2 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 05EA49C5-F2F2-4136-8244-ECC837B389E9.1; Tue, 13 Jun 2023 02:59:32 +0000 Received: from EUR01-VE1-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 0012fef3d39d.2 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Tue, 13 Jun 2023 02:59:32 +0000 Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15) by AS4PR08MB7782.eurprd08.prod.outlook.com (2603:10a6:20b:516::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.32; Tue, 13 Jun 2023 02:59:30 +0000 Received: from AS8PR08MB7991.eurprd08.prod.outlook.com ([fe80::2db3:aa30:7be0:10a6]) by AS8PR08MB7991.eurprd08.prod.outlook.com ([fe80::2db3:aa30:7be0:10a6%6]) with mapi id 15.20.6455.037; Tue, 13 Jun 2023 02:59:30 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 5bde0749-0996-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Mkc4Y5coDofVkygOqdKv7raPEaavwEjOzY6j6FDL3nA=; b=L6CtRQIks27xOKi029+ukZYFKBV12kXTvMKwJ7ivry8gm1CNzCOoQvPI83AiRbcOlvjct0EF6Po1gfVTL/BUBJl06ykfDb2d68ZBs3HBHvyC5k5NWlp7gDqPMqj33LcNABfWlFvjvMMI99rYqtlkG6ac954Ct1jsREbCtYzg/Rg= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C X-CR-MTA-TID: 64aa7808 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=icHFoSvZcZADKCojlEce6W1k1T1rlqQ8xIMM4eHZi+zbQmUh6d01adpvgdTs8mn2N5NHE73n/BvE97spI71btoAyWh1m8ancnAx5Cq6Lxzvi5oAm5hZFUk/CFFxcOcDxnfEdI6twZmj1MlfbdQQJ5LBjrgKJ3fUwoN3JZCorKy/BqgroRax2PY6Fl3H6WkDakdiD3pvtYMOWEMTkOtp+WzpDYRH1sVNiXdaTx/QrNqmcXq/+CsEKCdu4qtpBta1vs86++2ph/uSlBmkz60X7e7a5JO7dupnb3qgDK0lWGJFH/5FcNQ65/IXIemSPO8LA83nTEAtKTdCh9sZcoLcEqw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=Mkc4Y5coDofVkygOqdKv7raPEaavwEjOzY6j6FDL3nA=; b=GMXzJMQOefBpPN1hfvxXxMvVCJ1D7hvDs13GoZ+MZtrsgKo58iRhhFQ/6wgaR6dnVCEUTC0oygBlpFcGbC++hc7kXzQ/6rbtFGmXDpPzblxT0F7h+ZgcXQ5TcselcgrewvteLQ0h2AsQm/UbdqT4oGTkDW+spPE2/aOLyUqNGtZSRybAJrc5u6v40RPYUkZtE5p+3Zi6H2feko5+FUXD8LS39W7fivq8jUO6JFAYeFJwN/XKNTBQVzOKnzSSDDD2Znda2RY5hyu1sAH0ngT1MzgWVazKNOGtv3/MUg/Uq/ZOLJwEtwYg/TmlIPCc1aQVtgLk//+9zFj9Y8vWlss2Fw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Mkc4Y5coDofVkygOqdKv7raPEaavwEjOzY6j6FDL3nA=; b=L6CtRQIks27xOKi029+ukZYFKBV12kXTvMKwJ7ivry8gm1CNzCOoQvPI83AiRbcOlvjct0EF6Po1gfVTL/BUBJl06ykfDb2d68ZBs3HBHvyC5k5NWlp7gDqPMqj33LcNABfWlFvjvMMI99rYqtlkG6ac954Ct1jsREbCtYzg/Rg= From: Henry Wang To: Michal Orzel , "xen-devel@lists.xenproject.org" CC: Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk Subject: RE: [PATCH 2/4] xen/arm: debug-pl011: Add support for 32-bit only MMIO Thread-Topic: [PATCH 2/4] xen/arm: debug-pl011: Add support for 32-bit only MMIO Thread-Index: AQHZmSJi48sE31XUjkCsxZnYc3N4Yq+IAl4w Date: Tue, 13 Jun 2023 02:59:30 +0000 Message-ID: References: <20230607092727.19654-1-michal.orzel@amd.com> <20230607092727.19654-3-michal.orzel@amd.com> In-Reply-To: <20230607092727.19654-3-michal.orzel@amd.com> Accept-Language: zh-CN, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ts-tracking-id: FD9C5D8461901D4E845C0AD1F53CAD27.0 x-checkrecipientchecked: true Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-traffictypediagnostic: AS8PR08MB7991:EE_|AS4PR08MB7782:EE_|AM7EUR03FT034:EE_|DBAPR08MB5592:EE_ X-MS-Office365-Filtering-Correlation-Id: 9030a27f-27a3-4061-7e22-08db6bba3cf8 x-checkrecipientrouted: true nodisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: fCTWrbajBkw2zu+xT/SWWwqfBpa14PCiqjzNhxoFD+KGiTY74COm+NaZ+tXQirlRdvucrscV2nCiEVwGUM0ijdpbDt1TTiJBe67iM796xoLFmKDfu2UeZDQVNmOc1dtE66fi7qaTI8o/1T+so0si9SZUod84wBubF8IBP4VTh6j+R/5zGO8n8/X7u3bUn4J7PcafoE9J5gVvXRUTAe8UWZjjNbBzNt2Mg2eoAGpgDVOr+MGq8LqkBj8mKSZ0eeuMkAwA/CC7leyw5BZVOe996+ZM20QqInTDPywAd6+WnK91yEQyZuR+7SMSC2Hd7KoHhQcpEi1vsTV14D3eMw6VaHRTzDZY4hePTB41LBykyPp2jaRokZzbBd+bzlKzlqcDTxnCnEzykmrZAhLLtMIoNj1rQYD2A4swXZP0YV/mKXh8HdIWeNkKJ2GFUQ8zMzeKguyz6s4AteJH79mUL/4hzHCzmgvSPVw2krXa/aqFIRGhJA9LS+3woS3qPEc93NN6c43qhowClWCeSD6yNJ40rBfkh2lEzxk9xQe/JV30NzXoDpEOg5fUdUGVDyF5QZJXMdjmB5rj7X7kMQ+Nv1DTAXQGpTBJO18V2+uEcIARkieMFjiogRtue0NbmjBBk0LU X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB7991.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(136003)(346002)(39860400002)(366004)(376002)(396003)(451199021)(186003)(9686003)(26005)(6506007)(83380400001)(71200400001)(7696005)(478600001)(2906002)(4744005)(55016003)(8936002)(8676002)(110136005)(54906003)(33656002)(41300700001)(86362001)(38100700002)(122000001)(5660300002)(52536014)(4326008)(64756008)(76116006)(66946007)(66446008)(38070700005)(66476007)(66556008)(316002);DIR:OUT;SFP:1101; Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS4PR08MB7782 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: AM7EUR03FT034.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: cf73143f-c527-4181-c12a-08db6bba3573 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 4Yy4iPaAOC9nM1BOiD3I/AR8vuUSWjI2oawpA1/PMk+kA4yDGMetS6qay2FVFt4wWrCWb/Chdx8c12GYSQjp+lnjTTe8eYjIhac4rabCT4edWEpR1kvSLYXonel16U1eKorVc+3lnY8WlGy46KDdAkPWBFvFkSYF8EUsGT44iMamhw6N0Eg+/ey7oxwLQnMo8TDcQ6woBBaxLXD4UtVmTN/wrJoW3Dg4B/J8VZVYRsWW64+B4LvAO4sAdIcdUNgVq+0WncJrE1RSm3So16iS53iENkHND1kghk+I/fXPjCKc+ZtP9FA7jiRRuBxRHGFaUnrfgRN5CMZrQFFCBux62+QVOs7ibwqhftrHOuHJIwc9jN3QTTqTfXCua1Y7rFP3I6beVsnyJxxA8WVZ6CvpqqhOe3IF1CgqEEL8d10qo6BuVikTtXpsjfPs+lXVPGLazqu3gze8ljDdt3z1KS/qmEld5QVPkxCljjenWIsaYamX5oitO2gebZLWvJxukdy30Kg7KBhaPAkHkkY+OSnFYT8WCteu/YXYY16KPR5QKxeqTzwMXX8e9JTDbGuR8Y3w32frVtQS+IFuAnX4HmpBaAELJpTKFJLFDV/q1PHgQqPG3l9gq0HLbqVGpmY1PwnMP+lKUeQVxZKWbjk2NrEsX4FOO1zsgtR1jI6APZld6njC5WAiAk1b1Bj48ixIfBtm2NI+wEMaSp8TN0YrsGB1vHM93SVhsRH09qZMdZCg6b6Rv7/NH+4GhS7p7JEj4Y0p X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230028)(4636009)(136003)(39860400002)(346002)(396003)(376002)(451199021)(36840700001)(46966006)(40470700004)(83380400001)(47076005)(336012)(36860700001)(356005)(82740400003)(40480700001)(33656002)(82310400005)(81166007)(55016003)(86362001)(40460700003)(478600001)(110136005)(54906003)(7696005)(4326008)(8936002)(8676002)(4744005)(2906002)(5660300002)(52536014)(70586007)(70206006)(41300700001)(316002)(186003)(107886003)(6506007)(9686003)(26005);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Jun 2023 02:59:43.3595 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 9030a27f-27a3-4061-7e22-08db6bba3cf8 X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: AM7EUR03FT034.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBAPR08MB5592 Hi Michal, > -----Original Message----- > Subject: [PATCH 2/4] xen/arm: debug-pl011: Add support for 32-bit only > MMIO >=20 > There are implementations of PL011 that can only handle 32-bit accesses > as oppose to the normal behavior where accesses are 8/16-bit wide. This > is usually advertised by setting a dt property 'reg-io-width' to 4. >=20 > Introduce CONFIG_EARLY_UART_PL011_MMIO32 Kconfig option to be able to > enable the use of 32-bit only accessors in PL011 early printk code. > Define macros PL011_{STRH,STRB,LDRH} to distinguish accessors for normal > case from 32-bit MMIO one and use them in arm32/arm64 pl011 early printk > code. >=20 > Update documentation accordingly. >=20 > Signed-off-by: Michal Orzel I've tested this patch on top of today's staging on FVP arm32 and arm64 and confirm this patch will not break existing functionality. So: Tested-by: Henry Wang Kind regards, Henry From xen-devel-bounces@lists.xenproject.org Tue Jun 13 03:00:03 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 03:00:03 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547749.855326 (Exim 4.92) (envelope-from ) id 1q8uGJ-0000a1-7j; Tue, 13 Jun 2023 03:00:03 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547749.855326; Tue, 13 Jun 2023 03:00:03 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8uGJ-0000ZZ-43; Tue, 13 Jun 2023 03:00:03 +0000 Received: by outflank-mailman (input) for mailman id 547749; Tue, 13 Jun 2023 03:00:01 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8uGH-00082o-6J for xen-devel@lists.xenproject.org; Tue, 13 Jun 2023 03:00:01 +0000 Received: from EUR01-DB5-obe.outbound.protection.outlook.com (mail-db5eur01on0630.outbound.protection.outlook.com [2a01:111:f400:fe02::630]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 61e052bc-0996-11ee-8611-37d641c3527e; Tue, 13 Jun 2023 04:59:59 +0200 (CEST) Received: from AS9PR06CA0403.eurprd06.prod.outlook.com (2603:10a6:20b:461::33) by VE1PR08MB5677.eurprd08.prod.outlook.com (2603:10a6:800:1ab::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.38; Tue, 13 Jun 2023 02:59:54 +0000 Received: from AM7EUR03FT009.eop-EUR03.prod.protection.outlook.com (2603:10a6:20b:461:cafe::be) by AS9PR06CA0403.outlook.office365.com (2603:10a6:20b:461::33) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.34 via Frontend Transport; Tue, 13 Jun 2023 02:59:53 +0000 Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by AM7EUR03FT009.mail.protection.outlook.com (100.127.140.130) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.22 via Frontend Transport; Tue, 13 Jun 2023 02:59:53 +0000 Received: ("Tessian outbound 3570909035da:v136"); Tue, 13 Jun 2023 02:59:53 +0000 Received: from 1342dcd6ff4a.2 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 6F86AFD3-F2EA-4590-A4DB-D29AE0F0EA35.1; Tue, 13 Jun 2023 02:59:42 +0000 Received: from EUR01-VE1-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 1342dcd6ff4a.2 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Tue, 13 Jun 2023 02:59:42 +0000 Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15) by AS4PR08MB7782.eurprd08.prod.outlook.com (2603:10a6:20b:516::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.32; Tue, 13 Jun 2023 02:59:40 +0000 Received: from AS8PR08MB7991.eurprd08.prod.outlook.com ([fe80::2db3:aa30:7be0:10a6]) by AS8PR08MB7991.eurprd08.prod.outlook.com ([fe80::2db3:aa30:7be0:10a6%6]) with mapi id 15.20.6455.037; Tue, 13 Jun 2023 02:59:40 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 61e052bc-0996-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=y3uBn8S0Esx4+dT0ProAKDdgpAMgBMpc3eeOF3cyeJI=; b=8gpgQxQ5WHZIihr6/qtTFoHYQbvNfyj8bDpvKLcvf16NEQTKe1zHyD4W2sNBYB4rLWl5DWIGNhKGWrz5akUYT3al9a82P2X2oxokHXr1/6Pa/gGcSCL1vGVygPtLuRUXezG3MsIjglzM27DQzKDZMy+dOZQlgO7XjnHLEvVg8Ls= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C X-CR-MTA-TID: 64aa7808 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=ITCv4ph7hq6QWpl6rz8WnOT/bo9desOV2UGz96G6vTOBNOVLqIauCsSRezePRvZuveXOXLfRsr3LZ/CdSXDugCm/XKQ9O0OVm7Tcs2oHo92ydNd8J5jjUHNBHBek9OfNLzlWkhCq6hbE0K/0qiZnFD2tT14Fr0+d30M6me3AZNGLn+1alegd8varvXQ1JheQc8+hjILIY4klkrl5TmiTUc2D2ei8i455MxM0lncoS9qtM/StSMOcNFYT89QZ/gXwIWkwOpK9PIn87/bzB4NATTyivZxHdBckqat9Ta98xGe5nHUeZGG3bI2AmVeyRzDIbqRRAakx30Lc1Lzya2GTGQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=y3uBn8S0Esx4+dT0ProAKDdgpAMgBMpc3eeOF3cyeJI=; b=kA8TgJhSLIA4duiwK3h/TBQTjiu/uVFlWGUd9qUpH6zq3OuNH0Et3kjb3guCdmfXdng2mFjTjfQHFz7eJtLDwG6OUJGtjeyvPKX9vI+sfZLpyUhyG/02Z1vmNvn3H3gKWt7nsnXE0qQ9Sz++vH3daPBmcjOLhNXhK4itBHIZ7dN/7oH0hh9y97UdVVStlzlvi/eJeiOfKvUcIGkxYeDJIQb/F2NNGzmLw/aMcdsWvAGBDIvWEEwFpMXrt3qXsy7SQ3cO6hIQ3y9miBhykse7Ldcsg6HQOIfqdIEH1UASHwVRWWQoAD3gLvTSNQreQptpH/tQojsbPLSiBGbRXr2fiw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=y3uBn8S0Esx4+dT0ProAKDdgpAMgBMpc3eeOF3cyeJI=; b=8gpgQxQ5WHZIihr6/qtTFoHYQbvNfyj8bDpvKLcvf16NEQTKe1zHyD4W2sNBYB4rLWl5DWIGNhKGWrz5akUYT3al9a82P2X2oxokHXr1/6Pa/gGcSCL1vGVygPtLuRUXezG3MsIjglzM27DQzKDZMy+dOZQlgO7XjnHLEvVg8Ls= From: Henry Wang To: Michal Orzel , "xen-devel@lists.xenproject.org" CC: Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk Subject: RE: [PATCH 3/4] xen/arm: pl011: Use correct accessors Thread-Topic: [PATCH 3/4] xen/arm: pl011: Use correct accessors Thread-Index: AQHZmSJrAg4IoVREJkadpE/KogPaxK+IAcpw Date: Tue, 13 Jun 2023 02:59:40 +0000 Message-ID: References: <20230607092727.19654-1-michal.orzel@amd.com> <20230607092727.19654-4-michal.orzel@amd.com> In-Reply-To: <20230607092727.19654-4-michal.orzel@amd.com> Accept-Language: zh-CN, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ts-tracking-id: 4F3F1BF366F78D42B6F3ABDA06696AC6.0 x-checkrecipientchecked: true Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-traffictypediagnostic: AS8PR08MB7991:EE_|AS4PR08MB7782:EE_|AM7EUR03FT009:EE_|VE1PR08MB5677:EE_ X-MS-Office365-Filtering-Correlation-Id: c17f816c-218b-4a10-caf6-08db6bba42f3 x-checkrecipientrouted: true nodisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: 4Ojkzdv5Kgwnp4epvjugnH4fTdWNfb8nxCbzwnYvNE2PvQGErUca0ShWRvI1DeJQhPwjJFepyU4ekTEIQZUDbPWWewsL7qN5PNU/nKudMqW2U4R2sx9kGjlw0iwW+qHhUNi4EXT9NAYf9jOySC/eLQv6i/uw1b1tX0cbJn64K5jkDWD2cbvDV4R4Dwrs6Ha1HlBZrC//5osMHekJKKooDq7HH9AyfPtz2WARdc4fvUTx2ZQHek7qctLhIAz4A7sPm2TdU+u0p6jDJBwE+q9pCvTtbTtuvSI0lY7eavo+0DAXxhBmz4PRvHlV2S6wuL/sW1Glt81BgyaEYFyY+vjxxf9M8E2j8ptrqL4uA6hChFStqUdWVTG5NPa2IE/QSo4U8zwPlzDV3Iua/ba4qQ+xM/p06sMa9GSnTR4/Bbam5eu2Tel6SFa7ty8UzA+LcsUA9rWjxDX6Ak5pTPxLQMZ74kIpiVRphsWhu00i0lV5JOvng2rH/ZT8WG/2WRzp/y9bSestPTc9saOh99nUc+o1ZjW8LRBFPcsvtX8o8aV+PGJMkCXf7EawsB10Kf+ktphYSbE3e0eZw3GtllIbxNmVqlxcMhMAgI133V2QBeol+HeuksgNElyzsCPzBNzKAogm X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB7991.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(136003)(346002)(39860400002)(366004)(376002)(396003)(451199021)(186003)(9686003)(26005)(6506007)(83380400001)(71200400001)(7696005)(478600001)(2906002)(55016003)(8936002)(8676002)(110136005)(54906003)(33656002)(41300700001)(86362001)(38100700002)(122000001)(5660300002)(52536014)(4326008)(64756008)(76116006)(66946007)(66446008)(38070700005)(66476007)(66556008)(316002);DIR:OUT;SFP:1101; Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS4PR08MB7782 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: AM7EUR03FT009.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: c452f361-2a48-4284-5908-08db6bba3b69 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: bsv8degUI3AY/PoXNmHc8YrSmfelXNrldKWrjviyiDB2zEVN4p1kvBx2HZiMAWGz0E77rqOLqrdag9ivf78xyObDGwygV+F+WV30sqOuxK/GmIe/QyV6nuuzZcwJDib1rIKnRwJknn/3K8FCw7DBeP9ZgegUXkK8kLnBP3Iy+oB8Iodqj5crTW75sw4O+xqRpKvNmVYHupNZo1dZP8AGU8aCNKpHTUoWgEaBeMiwD6yOK4QSYX50LcdQj3Rqbdc9R047c6WnPX2vmChhRrSRf2KsReggL2ycugurTkhIb5P6OObTHYThq/T5fzbKxB7MeyKhQGM00r6IW+RgkpTJ23Zhh601F/zXdfP9kQ5BiW7QNHlRaLwUTwGgOuvhj2DQArBcNSDKlm+4Iu8Tm5HUzbeuYtE65v1kXtMx3Ie3XpDNf2XO1uJ5DiLVgWUaP4QKf6OuYGPM2JHlsZQWroexnAD+rWr3JJpGD+uO3+LNo6sN4KTsDmNQ3TJoyVIcAbCmIO50RhBMjJcaD4xoeqvrsFadcssKcLylQ5lzMlwrWIG/DnoUx0fUyo+qO3gYMFbZ3nUYi+ZsYBwTJoZ/S3ism+AHno4nAx6yVhmH71a3wz2SiolKynXFpL20ZNK+pWg2Wh9s4u59VFaLHaYu6sTw5i9E8MxlW9moMmrtQ8BHNE3Rx2zNB3o34WSmjXDQCAf+SFxuJXJCrqsu1GnE/vGyPuf4QxShip8OZkE+vtb+h2o= X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230028)(4636009)(376002)(39860400002)(136003)(346002)(396003)(451199021)(46966006)(40470700004)(36840700001)(41300700001)(40480700001)(5660300002)(8676002)(8936002)(52536014)(54906003)(70206006)(70586007)(110136005)(4326008)(316002)(478600001)(2906002)(40460700003)(55016003)(7696005)(36860700001)(107886003)(336012)(33656002)(186003)(9686003)(6506007)(83380400001)(47076005)(82310400005)(86362001)(81166007)(26005)(356005)(82740400003);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Jun 2023 02:59:53.3950 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: c17f816c-218b-4a10-caf6-08db6bba42f3 X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: AM7EUR03FT009.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: VE1PR08MB5677 Hi Michal, > -----Original Message----- > Subject: [PATCH 3/4] xen/arm: pl011: Use correct accessors >=20 > At the moment, we use 32-bit only accessors (i.e. readl/writel) to match > the SBSA v2.x requirement. This should not be the default case for normal > PL011 where accesses shall be 8/16-bit (max register size is 16-bit). > There are however implementations of this UART that can only handle 32-bi= t > MMIO. This is advertised by dt property "reg-io-width" set to 4. >=20 > Introduce new struct pl011 member mmio32 and replace pl011_{read/write} > macros with static inline helpers that use 32-bit or 16-bit accessors > (largest-common not to end up using different ones depending on the actua= l > register size) according to mmio32 value. By default this property is set > to false, unless: > - reg-io-width is specified with value 4, > - SBSA UART is in use. >=20 > For now, no changes done for ACPI due to lack of testing possibilities > (i.e. current behavior maintained resulting in 32-bit accesses). >=20 > Signed-off-by: Michal Orzel I've tested this patch on top of today's staging on FVP arm32 and arm64 and confirm this patch will not break existing functionality. So: Tested-by: Henry Wang Kind regards, Henry From xen-devel-bounces@lists.xenproject.org Tue Jun 13 03:00:18 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 03:00:18 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547755.855336 (Exim 4.92) (envelope-from ) id 1q8uGX-0001mN-Lz; Tue, 13 Jun 2023 03:00:17 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547755.855336; Tue, 13 Jun 2023 03:00:17 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8uGX-0001mG-IU; Tue, 13 Jun 2023 03:00:17 +0000 Received: by outflank-mailman (input) for mailman id 547755; Tue, 13 Jun 2023 03:00:17 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8uGW-0008Kt-Vo for xen-devel@lists.xenproject.org; Tue, 13 Jun 2023 03:00:16 +0000 Received: from EUR03-AM7-obe.outbound.protection.outlook.com (mail-am7eur03on20602.outbound.protection.outlook.com [2a01:111:f400:7eaf::602]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 6c217b73-0996-11ee-b232-6b7b168915f2; Tue, 13 Jun 2023 05:00:16 +0200 (CEST) Received: from DB8P191CA0028.EURP191.PROD.OUTLOOK.COM (2603:10a6:10:130::38) by AM8PR08MB5713.eurprd08.prod.outlook.com (2603:10a6:20b:1dc::24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.29; Tue, 13 Jun 2023 03:00:10 +0000 Received: from DBAEUR03FT018.eop-EUR03.prod.protection.outlook.com (2603:10a6:10:130:cafe::24) by DB8P191CA0028.outlook.office365.com (2603:10a6:10:130::38) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.34 via Frontend Transport; Tue, 13 Jun 2023 03:00:10 +0000 Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by DBAEUR03FT018.mail.protection.outlook.com (100.127.142.74) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.22 via Frontend Transport; Tue, 13 Jun 2023 03:00:10 +0000 Received: ("Tessian outbound 99a3040377ca:v136"); Tue, 13 Jun 2023 03:00:10 +0000 Received: from abddc9a0f13d.2 by 64aa7808-outbound-1.mta.getcheckrecipient.com id B6BAE3C8-BCB4-418E-B5B6-53CBD21A1421.1; Tue, 13 Jun 2023 03:00:04 +0000 Received: from EUR01-VE1-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id abddc9a0f13d.2 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Tue, 13 Jun 2023 03:00:04 +0000 Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15) by AS4PR08MB7782.eurprd08.prod.outlook.com (2603:10a6:20b:516::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.32; Tue, 13 Jun 2023 03:00:02 +0000 Received: from AS8PR08MB7991.eurprd08.prod.outlook.com ([fe80::2db3:aa30:7be0:10a6]) by AS8PR08MB7991.eurprd08.prod.outlook.com ([fe80::2db3:aa30:7be0:10a6%6]) with mapi id 15.20.6455.037; Tue, 13 Jun 2023 03:00:02 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 6c217b73-0996-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=dp2enHslGluDBXbeRlwPZHuJfKFakVlzMhWMvVo29Ts=; b=PBeyBqQPndPdNxHB445S19Wv4iLuljghTa4KkVQGcN12/R1hCQALopuawzF7LeO4D6T4b+AN3xZ2gnvg6woGyZrvM8ztQYrx91GC5o3qvEtwVWjHF5qdo7IZL28U3p6Z6P8Y3C6k2Q58bjC0o2XbrZ0xnylkR170K3JO6DmJe6s= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C X-CR-MTA-TID: 64aa7808 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=NdBEbgI+bnKNw/ISep6U5d9urdaKyzSMLVhyGFiR67+pq2rPJEi/S62ndtOn29P4wn606X77Z1RD1xhP/mBvmJFSk7qrEpWAq/9huaWlSe9FN+BRmmhoDZq6OvSXk0r4vuopTyk4wCAu+PCc651FSk8qjURMTR+u5VCRP8KBNpELdvJerqMGm4FHdcHG+E0fldfE1Fn+lNEWOGHQUZOI9PIeB3TfBcedw/YmWmn6mP6KOk/vuIE3HyXRnG/dUSbxi/2Gw11geL/+1d16cbVLk4MRGXDXEHZr6yjjEQSBGvw21Mdw0A9EaJgmkfWXstIIwdsMCk/4N0giQabza0Jf0A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=dp2enHslGluDBXbeRlwPZHuJfKFakVlzMhWMvVo29Ts=; b=eSYme50VfGMwWnd/XmxOMErnhdj48FpCIVf799MvuaC/7r6GPE5tu3hg63qN6j8zWWc7nZ3CuqVxIR1jBJBF+qerVG9teOI8zihuX0OywY6dTirlaravyq2uIQub6+AawByjNzaEuOzOOBPsw7ClUU8wcICwJRU2SgYCC2bNNnxZ8g7cxA5vz9gkMxdl65dPNsOwSkUVZwJbQlKElJLGT9avap3gqjPU6MuTPrMq4wjsXxxZuUESaA2xI/TQmENyY+6wtRvGYNCyhNrcBUJVXed9+c1XgIkoj9VMeO47CA5ate0/ri0jZrtMPVqO96+IYLEwnl4jzqT/SJSMLC3xnA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=dp2enHslGluDBXbeRlwPZHuJfKFakVlzMhWMvVo29Ts=; b=PBeyBqQPndPdNxHB445S19Wv4iLuljghTa4KkVQGcN12/R1hCQALopuawzF7LeO4D6T4b+AN3xZ2gnvg6woGyZrvM8ztQYrx91GC5o3qvEtwVWjHF5qdo7IZL28U3p6Z6P8Y3C6k2Q58bjC0o2XbrZ0xnylkR170K3JO6DmJe6s= From: Henry Wang To: Michal Orzel , "xen-devel@lists.xenproject.org" CC: Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk Subject: RE: [PATCH 4/4] xen/arm: pl011: Add SBSA UART device-tree support Thread-Topic: [PATCH 4/4] xen/arm: pl011: Add SBSA UART device-tree support Thread-Index: AQHZmSJnhkSZmjH+UUWfOrt3uB3WRK+IAYEg Date: Tue, 13 Jun 2023 03:00:02 +0000 Message-ID: References: <20230607092727.19654-1-michal.orzel@amd.com> <20230607092727.19654-5-michal.orzel@amd.com> In-Reply-To: <20230607092727.19654-5-michal.orzel@amd.com> Accept-Language: zh-CN, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ts-tracking-id: 4D45209C569FF54181302738A8497B1F.0 x-checkrecipientchecked: true Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-traffictypediagnostic: AS8PR08MB7991:EE_|AS4PR08MB7782:EE_|DBAEUR03FT018:EE_|AM8PR08MB5713:EE_ X-MS-Office365-Filtering-Correlation-Id: c5de19b6-0810-4e88-d310-08db6bba4d2c x-checkrecipientrouted: true nodisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: HDWJjm2TTyND7ZWgdLbabgW+g6Lxxr6WbXho6qMIkdfk7dKO8HkDkykgreQJqeA/aGHA5w6ReLnQPjdutOY3YhnKo3ar1zwkEPN+oM1cZkk/UKAuHmu+r6hHwc6kEiX3fPP+jjINhozth1lz01v9WbhXnUc2VOf/8PEtQW7MERrQiXsRhkmNV5TZ8w9xiRLRY1xyUMZu8eb/tvphw20hUVtb5G/O9EfsFQWrOrdSnueRjbY08Y+OZVTEVzoxXOWRHkwjuTP76fYdKyX3nDHyFexRtTXZGUHuzRH/ZFrwXD1xXZkxWfVRL8KYCpB2Piq1hbMsPsbLuamZ/ombg1Ny0d3wtROTl/ROvrbKwvyxVQxtHcRcuulZ0M3AcBhWjTtOudY1+LyiyPJTttGmxUJp79mT8u+ABNpl9D/yUH42OF815yE7FBpxd0j3jGwf1VSrfEapB450FKiN+vNg8UQDHfu2hv8aSQVv68sl8AckuVOAX0s3KyIrxD4x7DYU7g7GfPHadPqePiMzTbhk9m6PmXK8hBxWE+1ByLM+VNv+EwroxMGkbK56+AoALf6qRi1RPNazMbW9Q9qJ4Jex9mj4NZb2U3QKsSSLFlkab2f5B8YN6aUIKG0ck7y70EeBkkOY X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB7991.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(136003)(346002)(39860400002)(366004)(376002)(396003)(451199021)(186003)(9686003)(26005)(6506007)(83380400001)(71200400001)(7696005)(478600001)(2906002)(4744005)(55016003)(8936002)(8676002)(110136005)(54906003)(33656002)(41300700001)(86362001)(38100700002)(122000001)(5660300002)(52536014)(4326008)(64756008)(76116006)(66946007)(66446008)(38070700005)(66476007)(66556008)(316002);DIR:OUT;SFP:1101; Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS4PR08MB7782 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: DBAEUR03FT018.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: 600b3964-8a3c-404a-5cb5-08db6bba4858 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: vNiKETrloYmC05v+/U7f89xmENWA8pQiYWwjm2qa1Oy9MYFW3SEbbYkLUabkeq7l0+G9fPOFRz1XCGg/wP44m6bhICkKeMrZBTyOc6tGRZejX9uE9ybYlcjttQTj1xvSHlg2kEV3B9JjkT14HF4spq5Dt5XDAPn5ySxi5JJA1yKiM/3hB9XYJlUJH+xfoDw/p0Ico0seTcC80/kjb1rmHYlMPmJ7ZC9tL8EtvNKGGDEOa3YenCR1WcvsRhqwq4wjVdbZ9KesVFLQttDOs4JnNzRuRbEu3vLuxmclBhpVaVU0/SGXZIsOk8d+gVe135B8ebBDeZX4hbb1/JBt1AWbHeQFpntNfibktN0dDNixj46g705cJVsvz/657sYAgW5PF/buonSKcm6hWklTyvVqrOMm+/Q/iTFBYbmkGWR5/tXncr7mOwlqYHF6xJMyfBhVa9e7qix4SlnpR3QGIuOs4i1CBEnY8VWGht6BxK/EAYbnAvFslgI19rEmVmfpVbC4Z9S59zpliiZmEFmONm4SmZwfxT8/qdznpnYC1pGYUIvmUeLCzLQ4N3wfFzOlIXk16sMd/yK0GH24alGI9HQbbaixjeNrBgHwwJPtHq2ylOaviqgyNp/+KlzdXhcPmqxaujp9xDFHgj1Jg5b3jblzp/HjXURUn2t9XOS7gHJx0CrisZP6B4sjRy+dxtN5PV/w/9kOhbA2FVxrApy8zs+FYwfLPaPUE1+mtSfbi/OOfYuWHuaQVh769xmmj9n6/z8e X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230028)(4636009)(346002)(376002)(39860400002)(136003)(396003)(451199021)(46966006)(36840700001)(40470700004)(40460700003)(7696005)(107886003)(9686003)(336012)(83380400001)(47076005)(82310400005)(86362001)(82740400003)(81166007)(33656002)(6506007)(26005)(356005)(55016003)(40480700001)(36860700001)(186003)(2906002)(110136005)(4744005)(54906003)(70206006)(4326008)(316002)(70586007)(41300700001)(52536014)(5660300002)(478600001)(8676002)(8936002);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Jun 2023 03:00:10.5773 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: c5de19b6-0810-4e88-d310-08db6bba4d2c X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: DBAEUR03FT018.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM8PR08MB5713 Hi Michal, > -----Original Message----- > Subject: [PATCH 4/4] xen/arm: pl011: Add SBSA UART device-tree support >=20 > We already have all the bits necessary in PL011 driver to support SBSA > UART thanks to commit 032ea8c736d10f02672863c6e369338f948f7ed8 that > enabled it for ACPI. Plumb in the remaining part for device-tree boot: > - add arm,sbsa-uart compatible to pl011_dt_match (no need for a separate > struct and DT_DEVICE_START as SBSA is a subset of PL011), > - from pl011_dt_uart_init(), check for SBSA UART compatible to determine > the UART type in use. >=20 > Signed-off-by: Michal Orzel Reviewed-by: Henry Wang I've also tested this patch on top of today's staging on FVP arm32 and arm6= 4 and confirm this patch will not break existing functionality. So: Tested-by: Henry Wang Kind regards, Henry From xen-devel-bounces@lists.xenproject.org Tue Jun 13 03:45:20 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 03:45:20 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547769.855346 (Exim 4.92) (envelope-from ) id 1q8uxv-0006gh-14; Tue, 13 Jun 2023 03:45:07 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547769.855346; Tue, 13 Jun 2023 03:45:07 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8uxu-0006gD-U8; Tue, 13 Jun 2023 03:45:06 +0000 Received: by outflank-mailman (input) for mailman id 547769; Tue, 13 Jun 2023 03:45:05 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8uxt-0006g7-NF for xen-devel@lists.xenproject.org; Tue, 13 Jun 2023 03:45:05 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id ad06c583-099c-11ee-8611-37d641c3527e; Tue, 13 Jun 2023 05:45:02 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 47E8C61EFA; Tue, 13 Jun 2023 03:45:01 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 4AE6EC433EF; Tue, 13 Jun 2023 03:44:59 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: ad06c583-099c-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1686627900; bh=89/nFy+5LFW+PpOrE1HDauPVrJ/+ML/QHh6I8lgBens=; h=From:To:Cc:Subject:Date:From; b=b8BaTnDPAOZrp4qc2gelsENvkGVRWrS5V+6vcpA85OegQ+03Zh3U7WJa3sc8ZH5Tz 2xFAGEApESMYWhBYcJBskMvS2bxQTXzKsMFmPFqKEPvKVa8fOE6BnU+FAPfolOPPGA V22BeOCvStagCxiVWgNhDph29+4erKMC8Rm1NXz32Umue+6PxUmy4HHQ8oE/R5oG6h n/G7v7fIm7Ho50qVcpyvMaZk+R0GPPhrAhnKBg89nP3szwZPXHX2yqS3K8k203limT ZCKC+L7mSK/RndX+N7SH8Ww57QaABRkBXK2XURgLQ7LKv7eRgc21De68whwRAOEzTR ZmdpqcqhaCnTw== From: Stefano Stabellini To: xen-devel@lists.xenproject.org Cc: sstabellini@kernel.org, jbeulich@suse.com, julien@xen.org, andrew.cooper3@citrix.com, roger.pau@citrix.com, bertrand.marquis@arm.com, roberto.bagnara@bugseng.com, Stefano Stabellini Subject: [PATCH v3] docs/misra: new rules addition Date: Mon, 12 Jun 2023 20:44:56 -0700 Message-Id: <20230613034456.701654-1-sstabellini@kernel.org> X-Mailer: git-send-email 2.25.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit From: Stefano Stabellini For Dir 1.1, a document describing all implementation-defined behaviour (i.e. gcc-specific behavior) will be added to docs/misra, also including implementation-specific (gcc-specific) appropriate types for bit-field relevant to Rule 6.1. Rule 21.21 is lacking an example on gitlab but the rule is straightforward: we don't use stdlib at all in Xen. Signed-off-by: Stefano Stabellini --- Changes in v3: - add all signed integer types to the Notes of 6.1 - clarify 7.2 in the Notes - not added: marking "inapplicable" rules, to be a separate patch Changes in v2: - drop 5.6 - specify additional appropriate types for 6.1 --- docs/misra/rules.rst | 51 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 51 insertions(+) diff --git a/docs/misra/rules.rst b/docs/misra/rules.rst index d5a6ee8cb6..f72a49c9c4 100644 --- a/docs/misra/rules.rst +++ b/docs/misra/rules.rst @@ -40,6 +40,12 @@ existing codebase are work-in-progress. - Summary - Notes + * - `Dir 1.1 `_ + - Required + - Any implementation-defined behaviour on which the output of the + program depends shall be documented and understood + - + * - `Dir 2.1 `_ - Required - All source files shall compile without any compilation errors @@ -57,6 +63,13 @@ existing codebase are work-in-progress. header file being included more than once - + * - `Dir 4.11 `_ + - Required + - The validity of values passed to library functions shall be checked + - We do not have libraries in Xen (libfdt and others are not + considered libraries from MISRA C point of view as they are + imported in source form) + * - `Dir 4.14 `_ - Required - The validity of values received from external sources shall be @@ -133,6 +146,13 @@ existing codebase are work-in-progress. headers (xen/include/public/) are allowed to retain longer identifiers for backward compatibility. + * - `Rule 6.1 `_ + - Required + - Bit-fields shall only be declared with an appropriate type + - In addition to the C99 types, we also consider appropriate types: + unsigned char, unsigned short, unsigned long, unsigned long long, + enum, and all explicitly signed integer types. + * - `Rule 6.2 `_ - Required - Single-bit named bit fields shall not be of a signed type @@ -143,6 +163,32 @@ existing codebase are work-in-progress. - Octal constants shall not be used - + * - `Rule 7.2 `_ + - Required + - A "u" or "U" suffix shall be applied to all integer constants + that are represented in an unsigned type + - The rule asks that any integer literal that is implicitly + unsigned is made explicitly unsigned by using one of the + indicated suffixes. As an example, on a machine where the int + type is 32-bit wide, 0x77777777 is signed whereas 0x80000000 is + (implicitly) unsigned. In order to comply with the rule, the + latter should be rewritten as either 0x80000000u or 0x80000000U. + Consistency considerations may suggest using the same suffix even + when not required by the rule. For instance, if one has: + + Original: f(0x77777777); f(0x80000000); + + one might prefer + + Solution 1: f(0x77777777U); f(0x80000000U); + + over + + Solution 2: f(0x77777777); f(0x80000000U); + + after having ascertained that "Solution 1" is compatible with the + intended semantics. + * - `Rule 7.3 `_ - Required - The lowercase character l shall not be used in a literal suffix @@ -314,6 +360,11 @@ existing codebase are work-in-progress. used following a subsequent call to the same function - + * - Rule 21.21 + - Required + - The Standard Library function system of shall not be used + - + * - `Rule 22.2 `_ - Mandatory - A block of memory shall only be freed if it was allocated by means of a -- 2.25.1 From xen-devel-bounces@lists.xenproject.org Tue Jun 13 04:27:14 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 04:27:14 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547780.855356 (Exim 4.92) (envelope-from ) id 1q8vcZ-00039g-4i; Tue, 13 Jun 2023 04:27:07 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547780.855356; Tue, 13 Jun 2023 04:27:07 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8vcZ-00039Z-1t; Tue, 13 Jun 2023 04:27:07 +0000 Received: by outflank-mailman (input) for mailman id 547780; Tue, 13 Jun 2023 04:27:06 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8vcX-00039P-Vx; Tue, 13 Jun 2023 04:27:05 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8vcX-00041n-U5; Tue, 13 Jun 2023 04:27:05 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8vcX-0003dS-G2; Tue, 13 Jun 2023 04:27:05 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q8vcX-0004P5-Fa; Tue, 13 Jun 2023 04:27:05 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=9AVUXPlo2THRAVhS9a3eN/96NGc83p1hVWcSgUd4ySM=; b=V3KofHLv/bidJ0BpB7dd2I9s/F KSeG0sovS5tvW6Wz4GXLGCWJYwhMEgWvPe5DF0i1R9wQhRwgRknKwZR9Kil+N4LlyF/JGReHvPXsb 7ugjEo2oDnVb275fETsoiruzR/BnEdt6+K8zKewicn1LfPeCAS0TG7aGWt/NRuFXZhmo=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable-smoke test] 181396: trouble: blocked/broken/pass X-Osstest-Failures: xen-unstable-smoke:build-armhf::broken:regression xen-unstable-smoke:build-armhf:host-install(4):broken:regression xen-unstable-smoke:test-armhf-armhf-xl:build-check(1):blocked:nonblocking xen-unstable-smoke:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking xen-unstable-smoke:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking xen-unstable-smoke:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: xen=128557e3a44d79f0c9360dc88e42c3d0ef728edf X-Osstest-Versions-That: xen=b4642c32c4d079916d5607ddda0232aae5e1690e From: osstest service owner Date: Tue, 13 Jun 2023 04:27:05 +0000 flight 181396 xen-unstable-smoke real [real] http://logs.test-lab.xenproject.org/osstest/logs/181396/ Failures and problems with tests :-( Tests which did not succeed and are blocking, including tests which could not be run: build-armhf broken build-armhf 4 host-install(4) broken REGR. vs. 181349 Tests which did not succeed, but are not blocking: test-armhf-armhf-xl 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass version targeted for testing: xen 128557e3a44d79f0c9360dc88e42c3d0ef728edf baseline version: xen b4642c32c4d079916d5607ddda0232aae5e1690e Last test of basis 181349 2023-06-09 20:00:24 Z 3 days Testing same since 181396 2023-06-12 22:00:25 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Bertrand Marquis Jason Andryuk Juergen Gross Julien Grall jobs: build-arm64-xsm pass build-amd64 pass build-armhf broken build-amd64-libvirt pass test-armhf-armhf-xl blocked test-arm64-arm64-xl-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-libvirt pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary broken-job build-armhf broken broken-step build-armhf host-install(4) Not pushing. ------------------------------------------------------------ commit 128557e3a44d79f0c9360dc88e42c3d0ef728edf Author: Julien Grall Date: Mon Jun 12 11:13:19 2023 +0100 tools/xenstored: Correct the prototype of domain_max_chk() Some version of GCC will complain because the prototype and the declaration of domain_max_chk() don't match: xenstored_domain.c:1503:6: error: conflicting types for 'domain_max_chk' due to enum/integer mismatch; have '_Bool(const struct connection *, enum accitem, unsigned int)' [-Werror=enum-int-mismatch] 1503 | bool domain_max_chk(const struct connection *conn, enum accitem what, | ^~~~~~~~~~~~~~ In file included from xenstored_domain.c:31: xenstored_domain.h:146:6: note: previous declaration of 'domain_max_chk' with type '_Bool(const struct connection *, unsigned int, unsigned int)' 146 | bool domain_max_chk(const struct connection *conn, unsigned int what, | ^~~~~~~~~~~~~~ Update the prototype to match the declaration. This was spotted by Gitlab CI with the job opensuse-tumbleweed-gcc. Fixes: 685048441e1c ("tools/xenstore: switch quota management to be table based") Signed-off-by: Julien Grall Reviewed-by: Jason Andryuk Tested-by: Jason Andryuk Reviewed-by: Juergen Gross commit 1a0342507cb4011607673efec13a8f3238ac6aa8 Author: Juergen Gross Date: Tue May 30 10:54:13 2023 +0200 tools/libs/store: make libxenstore independent of utils.h There is no real need for including tools/xenstore/utils.h from libxenstore, as only streq() and ARRAY_SIZE() are obtained via that header. streq() is just !strcmp(), and ARRAY_SIZE() is brought in via xen-tools/common-macros.h. Signed-off-by: Juergen Gross Acked-by: Julien Grall commit 0d5dfd2ed60addc1361ae82cbb52378abc912ede Author: Juergen Gross Date: Tue May 30 10:54:12 2023 +0200 tools/libs/store: use xen_list.h instead of xenstore/list.h Replace the usage of the xenstore private list.h header with the common xen_list.h one. Use the XEN_TAILQ type list, as it allows to directly swap the related macros/functions without having to change the logic. Signed-off-by: Juergen Gross Acked-by: Julien Grall commit 84ac67cd1e3df780c413cd7093aa3ad8d508b79a Author: Bertrand Marquis Date: Mon Jun 12 15:00:46 2023 +0200 xen/arm: rename guest_cpuinfo in domain_cpuinfo Rename the guest_cpuinfo structure to domain_cpuinfo as it is not only used for guests but also for dom0 so domain is a more suitable name. While there also rename the create_guest_cpuinfo function to create_domain_cpuinfo to be coherent and fix comments accordingly. Signed-off-by: Bertrand Marquis (qemu changes not included) From xen-devel-bounces@lists.xenproject.org Tue Jun 13 06:02:44 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 06:02:44 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547787.855366 (Exim 4.92) (envelope-from ) id 1q8x6t-0005T3-48; Tue, 13 Jun 2023 06:02:31 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547787.855366; Tue, 13 Jun 2023 06:02:31 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8x6t-0005Sw-1Q; Tue, 13 Jun 2023 06:02:31 +0000 Received: by outflank-mailman (input) for mailman id 547787; Tue, 13 Jun 2023 06:02:29 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8x6r-0005Sq-FK for xen-devel@lists.xen.org; Tue, 13 Jun 2023 06:02:29 +0000 Received: from mail-pl1-x62d.google.com (mail-pl1-x62d.google.com [2607:f8b0:4864:20::62d]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id dd4a43c5-09af-11ee-8611-37d641c3527e; Tue, 13 Jun 2023 08:02:24 +0200 (CEST) Received: by mail-pl1-x62d.google.com with SMTP id d9443c01a7336-1b3b5a5134dso15458705ad.2 for ; Mon, 12 Jun 2023 23:02:24 -0700 (PDT) Received: from localhost ([122.172.87.195]) by smtp.gmail.com with ESMTPSA id 12-20020a170902c20c00b001ac55a5e5eesm509479pll.121.2023.06.12.23.02.20 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 12 Jun 2023 23:02:21 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: dd4a43c5-09af-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1686636142; x=1689228142; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=7YdFml8fy6tvZ0EvcTMzHrE0zaUCy0jmyJeSKxRsOTw=; b=gH9JMkPBYHB8942wA4p7JZlJBLDeZaraEW4Z/2cezphuubuBj0tMiapMkTOK9FaK6Y sIcYVzXUm5Nd2OZjTCBBxpff3s6D47t4XjWtSVrkAWsvcLmX516kJpLA9wunKijxON0w uVbZcJ75WBMJFYI+2l6ceyi0Cyx5ybp/DpjrE36Vi+7dB8WVOsiky95UThMtV2oxcNR2 AXMsKB4TRAC/MRbly1bL66x/FICDQIuAVUJ5kEsSHwFfbC47EPsa8jDyLAlna1Ccvqpz Jaduqhwez40yIJ+FuNHx/jULKGAxlVwXB1j+RfHKEeZPKKiT0KdQfV4cT6LQXDBkwDeg UcBQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686636142; x=1689228142; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=7YdFml8fy6tvZ0EvcTMzHrE0zaUCy0jmyJeSKxRsOTw=; b=E/7pLzzjEFdoVKAS8aZPJbje42+b9hGFrWddrr1pgnKJMJGORFv3eKC2+d2Vlz+8jX /a2f1WN4EYXzlYCtjbTXzpf7enwpZAIjbBilklH7hsE01tUaJD/0NZKhM9MvydSQImHo eV5Kp8PQER4Xg6gYUeIBRMPNfbHykCKWQjlc6EzizKWSQlpzB/7a+73DifdW2SbNDw6v dv1275uSk+XlkX6xxOqQSXcJzabewc/81GSe8qAtvPg7EQtfmTVh8DG6FoRwMSVbjurv jqUu/A7TMlFa4WVPChAjpqwbxMKjqoPhyFfWBN5Zhll86CrbYgx6z3F4P9eaPwv2rGe5 N3sQ== X-Gm-Message-State: AC+VfDxYz2qZr1+ih6xmU0EVDR8aNmPA+DLElSSdX9HoIMAARo/+5rkE ckZz6+uYySEOebiCKkGeKUXEJbwlvQoyfn0OkNo= X-Google-Smtp-Source: ACHHUZ4XbrtUrKKMYP769wWuW6UsD7nT3qofbQNGvBMvBQgYCrdJWxC5lkqaGpNx5YSwP9aVhlqWWA== X-Received: by 2002:a17:902:6b45:b0:1a9:86ca:38cd with SMTP id g5-20020a1709026b4500b001a986ca38cdmr7902426plt.2.1686636142406; Mon, 12 Jun 2023 23:02:22 -0700 (PDT) From: Viresh Kumar To: xen-devel@lists.xen.org, Juergen Gross , Julien Grall , Anthony PERARD Cc: Viresh Kumar , Vincent Guittot , stratos-dev@op-lists.linaro.org, =?UTF-8?q?Alex=20Benn=C3=A9e?= , Mathieu Poirier , Oleksandr Tyshchenko , Erik Schilling Subject: [PATCH V3.1] libxl: arm: Add grant_usage parameter for virtio devices Date: Tue, 13 Jun 2023 11:32:16 +0530 Message-Id: <7a0afe5aebba4c0b5be43a517dedf41d4e4ddd57.1686636036.git.viresh.kumar@linaro.org> X-Mailer: git-send-email 2.31.1.272.g89b43f80a514 In-Reply-To: <0e347b2f4817cc578a5f8e41bf70503ae8cf69e3.1685684586.git.viresh.kumar@linaro.org> References: <0e347b2f4817cc578a5f8e41bf70503ae8cf69e3.1685684586.git.viresh.kumar@linaro.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Currently, the grant mapping related device tree properties are added if the backend domain is not Dom0. While Dom0 is privileged and can do foreign mapping for the entire guest memory, it is still desired for Dom0 to access guest's memory via grant mappings and hence map only what is required. This commit adds the "grant_usage" parameter for virtio devices, which provides better control over the functionality. Signed-off-by: Viresh Kumar --- V3->V3.1: - Print "0" or "1" in xenstore instead of "True" or "False" for grant_usage. docs/man/xl.cfg.5.pod.in | 8 ++++++++ tools/golang/xenlight/helpers.gen.go | 6 ++++++ tools/golang/xenlight/types.gen.go | 1 + tools/libs/light/libxl_arm.c | 22 +++++++++++++--------- tools/libs/light/libxl_types.idl | 1 + tools/libs/light/libxl_virtio.c | 23 +++++++++++++++++++++-- tools/xl/xl_parse.c | 2 ++ 7 files changed, 52 insertions(+), 11 deletions(-) diff --git a/docs/man/xl.cfg.5.pod.in b/docs/man/xl.cfg.5.pod.in index 24ac92718288..3a40ac8cb322 100644 --- a/docs/man/xl.cfg.5.pod.in +++ b/docs/man/xl.cfg.5.pod.in @@ -1619,6 +1619,14 @@ hexadecimal format, without the "0x" prefix and all in lower case, like Specifies the transport mechanism for the Virtio device, only "mmio" is supported for now. +=item B + +If this option is B, the Xen grants are always enabled. +If this option is B, the Xen grants are always disabled. + +If this option is missing, then the default grant setting will be used, +i.e. enable grants if backend-domid != 0. + =back =item B diff --git a/tools/golang/xenlight/helpers.gen.go b/tools/golang/xenlight/helpers.gen.go index 0a203d22321f..bf846dca8ec0 100644 --- a/tools/golang/xenlight/helpers.gen.go +++ b/tools/golang/xenlight/helpers.gen.go @@ -1792,6 +1792,9 @@ func (x *DeviceVirtio) fromC(xc *C.libxl_device_virtio) error { x.BackendDomname = C.GoString(xc.backend_domname) x.Type = C.GoString(xc._type) x.Transport = VirtioTransport(xc.transport) +if err := x.GrantUsage.fromC(&xc.grant_usage);err != nil { +return fmt.Errorf("converting field GrantUsage: %v", err) +} x.Devid = Devid(xc.devid) x.Irq = uint32(xc.irq) x.Base = uint64(xc.base) @@ -1809,6 +1812,9 @@ xc.backend_domname = C.CString(x.BackendDomname)} if x.Type != "" { xc._type = C.CString(x.Type)} xc.transport = C.libxl_virtio_transport(x.Transport) +if err := x.GrantUsage.toC(&xc.grant_usage); err != nil { +return fmt.Errorf("converting field GrantUsage: %v", err) +} xc.devid = C.libxl_devid(x.Devid) xc.irq = C.uint32_t(x.Irq) xc.base = C.uint64_t(x.Base) diff --git a/tools/golang/xenlight/types.gen.go b/tools/golang/xenlight/types.gen.go index a7c17699f80e..e0c6e91bb0ef 100644 --- a/tools/golang/xenlight/types.gen.go +++ b/tools/golang/xenlight/types.gen.go @@ -683,6 +683,7 @@ BackendDomid Domid BackendDomname string Type string Transport VirtioTransport +GrantUsage Defbool Devid Devid Irq uint32 Base uint64 diff --git a/tools/libs/light/libxl_arm.c b/tools/libs/light/libxl_arm.c index 97c80d7ed0fa..bc2bd9649b95 100644 --- a/tools/libs/light/libxl_arm.c +++ b/tools/libs/light/libxl_arm.c @@ -922,7 +922,8 @@ static int make_xen_iommu_node(libxl__gc *gc, void *fdt) /* The caller is responsible to complete / close the fdt node */ static int make_virtio_mmio_node_common(libxl__gc *gc, void *fdt, uint64_t base, - uint32_t irq, uint32_t backend_domid) + uint32_t irq, uint32_t backend_domid, + bool grant_usage) { int res; gic_interrupt intr; @@ -945,7 +946,7 @@ static int make_virtio_mmio_node_common(libxl__gc *gc, void *fdt, uint64_t base, res = fdt_property(fdt, "dma-coherent", NULL, 0); if (res) return res; - if (backend_domid != LIBXL_TOOLSTACK_DOMID) { + if (grant_usage) { uint32_t iommus_prop[2]; iommus_prop[0] = cpu_to_fdt32(GUEST_PHANDLE_IOMMU); @@ -959,11 +960,12 @@ static int make_virtio_mmio_node_common(libxl__gc *gc, void *fdt, uint64_t base, } static int make_virtio_mmio_node(libxl__gc *gc, void *fdt, uint64_t base, - uint32_t irq, uint32_t backend_domid) + uint32_t irq, uint32_t backend_domid, + bool grant_usage) { int res; - res = make_virtio_mmio_node_common(gc, fdt, base, irq, backend_domid); + res = make_virtio_mmio_node_common(gc, fdt, base, irq, backend_domid, grant_usage); if (res) return res; return fdt_end_node(fdt); @@ -1019,11 +1021,11 @@ static int make_virtio_mmio_node_gpio(libxl__gc *gc, void *fdt) static int make_virtio_mmio_node_device(libxl__gc *gc, void *fdt, uint64_t base, uint32_t irq, const char *type, - uint32_t backend_domid) + uint32_t backend_domid, bool grant_usage) { int res; - res = make_virtio_mmio_node_common(gc, fdt, base, irq, backend_domid); + res = make_virtio_mmio_node_common(gc, fdt, base, irq, backend_domid, grant_usage); if (res) return res; /* Add device specific nodes */ @@ -1363,7 +1365,8 @@ static int libxl__prepare_dtb(libxl__gc *gc, libxl_domain_config *d_config, iommu_needed = true; FDT( make_virtio_mmio_node(gc, fdt, disk->base, disk->irq, - disk->backend_domid) ); + disk->backend_domid, + disk->backend_domid != LIBXL_TOOLSTACK_DOMID) ); } } @@ -1373,12 +1376,13 @@ static int libxl__prepare_dtb(libxl__gc *gc, libxl_domain_config *d_config, if (virtio->transport != LIBXL_VIRTIO_TRANSPORT_MMIO) continue; - if (virtio->backend_domid != LIBXL_TOOLSTACK_DOMID) + if (libxl_defbool_val(virtio->grant_usage)) iommu_needed = true; FDT( make_virtio_mmio_node_device(gc, fdt, virtio->base, virtio->irq, virtio->type, - virtio->backend_domid) ); + virtio->backend_domid, + libxl_defbool_val(virtio->grant_usage)) ); } /* diff --git a/tools/libs/light/libxl_types.idl b/tools/libs/light/libxl_types.idl index c10292e0d7e3..c5c0d1f91793 100644 --- a/tools/libs/light/libxl_types.idl +++ b/tools/libs/light/libxl_types.idl @@ -740,6 +740,7 @@ libxl_device_virtio = Struct("device_virtio", [ ("backend_domname", string), ("type", string), ("transport", libxl_virtio_transport), + ("grant_usage", libxl_defbool), ("devid", libxl_devid), # Note that virtio-mmio parameters (irq and base) are for internal # use by libxl and can't be modified. diff --git a/tools/libs/light/libxl_virtio.c b/tools/libs/light/libxl_virtio.c index f8a78e22d156..e5e321adc5c4 100644 --- a/tools/libs/light/libxl_virtio.c +++ b/tools/libs/light/libxl_virtio.c @@ -23,8 +23,16 @@ static int libxl__device_virtio_setdefault(libxl__gc *gc, uint32_t domid, libxl_device_virtio *virtio, bool hotplug) { - return libxl__resolve_domid(gc, virtio->backend_domname, - &virtio->backend_domid); + int rc; + + rc = libxl__resolve_domid(gc, virtio->backend_domname, + &virtio->backend_domid); + if (rc < 0) return rc; + + libxl_defbool_setdefault(&virtio->grant_usage, + virtio->backend_domid != LIBXL_TOOLSTACK_DOMID); + + return 0; } static int libxl__device_from_virtio(libxl__gc *gc, uint32_t domid, @@ -53,6 +61,8 @@ static int libxl__set_xenstore_virtio(libxl__gc *gc, uint32_t domid, flexarray_append_pair(back, "base", GCSPRINTF("%#"PRIx64, virtio->base)); flexarray_append_pair(back, "type", GCSPRINTF("%s", virtio->type)); flexarray_append_pair(back, "transport", GCSPRINTF("%s", transport)); + flexarray_append_pair(back, "grant_usage", + libxl_defbool_val(virtio->grant_usage) ? "1" : "0"); return 0; } @@ -104,6 +114,15 @@ static int libxl__virtio_from_xenstore(libxl__gc *gc, const char *libxl_path, } } + tmp = NULL; + rc = libxl__xs_read_checked(gc, XBT_NULL, + GCSPRINTF("%s/grant_usage", be_path), &tmp); + if (rc) goto out; + + if (tmp) { + libxl_defbool_set(&virtio->grant_usage, strtoul(tmp, NULL, 0)); + } + tmp = NULL; rc = libxl__xs_read_checked(gc, XBT_NULL, GCSPRINTF("%s/type", be_path), &tmp); diff --git a/tools/xl/xl_parse.c b/tools/xl/xl_parse.c index 1f6f47daf4e1..c66b11fd01b2 100644 --- a/tools/xl/xl_parse.c +++ b/tools/xl/xl_parse.c @@ -1215,6 +1215,8 @@ static int parse_virtio_config(libxl_device_virtio *virtio, char *token) } else if (MATCH_OPTION("transport", token, oparg)) { rc = libxl_virtio_transport_from_string(oparg, &virtio->transport); if (rc) return rc; + } else if (MATCH_OPTION("grant_usage", token, oparg)) { + libxl_defbool_set(&virtio->grant_usage, strtoul(oparg, NULL, 0)); } else { fprintf(stderr, "Unknown string \"%s\" in virtio spec\n", token); return -1; -- 2.31.1.272.g89b43f80a514 From xen-devel-bounces@lists.xenproject.org Tue Jun 13 06:12:53 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 06:12:53 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547794.855375 (Exim 4.92) (envelope-from ) id 1q8xGq-00073X-59; Tue, 13 Jun 2023 06:12:48 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547794.855375; Tue, 13 Jun 2023 06:12:48 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8xGq-00073Q-2P; Tue, 13 Jun 2023 06:12:48 +0000 Received: by outflank-mailman (input) for mailman id 547794; Tue, 13 Jun 2023 06:12:46 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8xGo-00073J-JG for xen-devel@lists.xenproject.org; Tue, 13 Jun 2023 06:12:46 +0000 Received: from EUR05-DB8-obe.outbound.protection.outlook.com (mail-db8eur05on20620.outbound.protection.outlook.com [2a01:111:f400:7e1a::620]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 4fd6a18f-09b1-11ee-b232-6b7b168915f2; Tue, 13 Jun 2023 08:12:45 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by AS1PR04MB9456.eurprd04.prod.outlook.com (2603:10a6:20b:4d7::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Tue, 13 Jun 2023 06:12:42 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.039; Tue, 13 Jun 2023 06:12:42 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 4fd6a18f-09b1-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=ArfQFXdnb2+bjiawcT+8PXGeDrQEalFxNGFSm+nEklFHCb1U7ogi6Ll4/nUZk49noFZQhgw7/u4Sq6Qn4B0isH9HmeV0m68EFM0PvEsvhPmCch3U33k36zXgT6xrSJ9ZAWuC6hnloRFLoQ8cNqun/nhQtiF1GjHWISapECsB+jbVNcWZNR/TPxDwyoHt7jNrHNSDGaE5Zw+aWHIWN+1sT3Cfr1okaHOuWr6NaLpyu5YeJTZ48IbP7+GIjo8f5eefoc9RrtZ/ynxcuWt2mNVkIiq6JP7ilDK+ql1cvYaHfADwN99u0HjoD846EmccahOHfweMC1PMTmFGifPFwfja7g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=EmI1MheBS/083LswXZTMMBBl1EIZuDCFRIBCVvHzQlw=; b=P+Ahk9f2Sz6Jb8ugpRZle2SqSoRzqRjW6L7cS/61FkjAPNcyF/xxPKBCJaQQBJJavHT7ZPlIV6Y37OwImq1tdyktTShNRu4j6nUsgUQFBSnZXlTOE8/FhTyOKUcGfuDCr6c2W0VKqlVwFyK/7OPPDzk+B5TEgC90hQu8pGjyQQge+/Klag6lF660pngfeFLNQym1dmgXprIlXmkFmyN4+bAb3E6QVgzdo9oqFT2X4eA51lRWB4V4ZcEC9HXsHDX7z5riOxOw/MCcO4vWl5xoa2H99dLRHrWg28OKP19cN1iKFw9UhOIMTfTN/ARmK6Ygp2SckphrMMTqzQmah3eryw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=EmI1MheBS/083LswXZTMMBBl1EIZuDCFRIBCVvHzQlw=; b=omcrWOYyjoSihaG8OBELUA2BmZCRqL8gnLPuJ7pjIfK73z8CiL5CyJ/OQWGNRtNSE48CqnwO4d5ntANSPPuAv8qQYNb/vn8L48gxLiO4gZrUDlQeGkBYHqNNCt/iIqG1DNaHmhqeSViYNXPN8SwCcGsF/X81iMgslyVx4FtGtXRlzxRQ6Kqm95irtfnYGJ8tSRH5YL1xSmC8GgSfDbc800Qxv9toLYvD1H15E8Ax69DeaPd/j+5D7QgwqKPVPT80hOaH8Kg/3uMRsyK+J1lslVVjoSsXi5HqZmLDHJD4h41EdHBl56DPOGuIF5x9H/tVDmJWrzeTtyXku9KYh+c7Vg== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <063c5302-9a84-5f3c-5d19-926d09de5623@suse.com> Date: Tue, 13 Jun 2023 08:12:40 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Content-Language: en-US To: "xen-devel@lists.xenproject.org" Cc: Andrew Cooper , Wei Liu , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= From: Jan Beulich Subject: [PATCH] x86: minor tidying of identify_cpu() Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR0P281CA0262.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:b5::8) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|AS1PR04MB9456:EE_ X-MS-Office365-Filtering-Correlation-Id: 96cbcb61-407a-4484-dff6-08db6bd53260 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: EXAod6xY0Tmj7QNPxJmbK4lYcwUMb0/a74NYxgzRGHzHrUm6Cu3yyqAGse+wDvM3iKIVkqzePXLJNwuAStCa/z6oZ2KcUBy0DQUjB5hB78TCf8usRKlnB7bq7k5aMLdRlgOFEjeRO9b2hupFkiv1uFeFKIlmEnQkH5GC6OmZ3WYjsOnr1rdmIsfUyYEvybSReFRFp3x7GHHor5nKkw4zhXnRz1p1z1AyupTBMKqIZJy+ur8aLyVnc+jWNKhKVB16RvSYM2XtMRmBuz6FlEtM49qLbemllUh+M/l+lNLtfEvjwK1xVzdQrpEgPOVKcOe6SFBUfxXzsdfDP1fu4wPxU+H2j0k7PsifIEy+TQS65BUE9NmcHkzFD2hhoQcM0BoDZkaFEe7u4fItOk28C5RqTnDDdARC6QXvBphQ+BgAAMrsTawEkgd9f1/IhxZqu8TIdhhe3B6PhlLdwWRDmpCPcEuEGGOnEVM+qkmtU8kNgj9fYQYcqPcWv/7yURXUdcMFAoZVVPh+clbs22yDqI9Hxp97VPm2kYYPAFKfppuN5I7+9WmavQsCyleqIE8ErNPgMu6IzpRDnR+qZ36qJO6tZzG0cIcdD7IP5kZkFgdUi1/ihRUtkHcx6YjrYj7wFL0enQrHz/FzEq/+2NnGsGKXag== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(39860400002)(376002)(346002)(366004)(396003)(136003)(451199021)(54906003)(5660300002)(8676002)(66946007)(66556008)(6916009)(4326008)(8936002)(41300700001)(316002)(31686004)(186003)(2906002)(478600001)(66476007)(6486002)(6506007)(6512007)(26005)(83380400001)(36756003)(86362001)(2616005)(31696002)(38100700002)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?RWZ6QUI5MGRmR0ZzQzd5QWJENFYzUEhMYTFQM3JNTjh0WWNNRE5XeW1IL2dJ?= =?utf-8?B?eUlEYjdxNmIzbXhJanRFdnMreUNLdWFoSktwaWxaNUZSUDJFM0c0U2xmNisw?= =?utf-8?B?MTVCZFhobEtBS2dKc2tDKzd5TzlyQmdyZjcwR1hFaEU3cnBvV1V0Q2h5bzho?= =?utf-8?B?M2ROSUFBNnhMek1UeVhFMDZxbWxraVFHaTgwMzRrMFFiVjZDWlkvRkZUOHVM?= =?utf-8?B?VllYbHlNbHlmTGh6eStFdmVmOE95U0pUUWJpNDl6VVNQSEcrcXk0eks5b09V?= =?utf-8?B?SS9EZG1UOVdJZnRlc0daVjhrZ0h3ZVZDbEpEYWdoMkNWWGtEaXZ1OXVpRTdw?= =?utf-8?B?WEgxMkx2VGhEbU1aV1pBelRIM2RvU2Y3R05qK0FBZUdmMEtlY0o4V1poaC90?= =?utf-8?B?YXUrWG0ydlVWdlRaREd2OElUd1FtUlYvZk9qVk1qaU1FZm5YSGVCT1ZjZ0ZI?= =?utf-8?B?L1h6bitnenovT1Zkb3hVTFNYVXo3aXBUeVFvQndNN3JreTQvU0crQmZPRlJW?= =?utf-8?B?WnRIckxkRjVlS3VlMnNLSldMNHg5WFF3UW42YlR4bW5CZStJTnhrYW9sZlRp?= =?utf-8?B?ZU9EenpqU2lUbUFxQXd0WnhqY04zbUV5RXZVWE4vQ1l6UDgzTUdLWElXY0VM?= =?utf-8?B?TW84dHdzQmVmd0VtUVFiL1JLV0RGenMxQ1YrS2JEYXc0S2Q0U05NMUQ0dUtD?= =?utf-8?B?ZjBNVWgyY2wyN0xJd3ZBQlc0Sy9IR21JeEhnSWhJZGFqVFdXaTlCNmR3Z0VM?= =?utf-8?B?UnJGWVJKQnB2NTNUYUJteUhwWEpWdUxHYTRHU0NUdlNEM0Z5cW9VVWlic0xQ?= =?utf-8?B?OFVqK1Fic0hIQWczdzJQR3YyZWxqb2dyc0gvVkZvL0RnRkpiUklLYkh1Mndi?= =?utf-8?B?THpqWlo5T3NyS2FZeTRZQXVVeDFERnBXdEZheW8zVDVGZUo2NUZPWTB3WUwx?= =?utf-8?B?YmlZRkNJeG5iMTZtU3A5QU1VMlpqbFE4UzhUWUgwN3dhbTNTN1JUQzlBYngr?= =?utf-8?B?bitVdG1xL2l2anVQcWNSRTV1MUFEZ1BrL3FtdXpmQU94emQvc01KanZuQ3c4?= =?utf-8?B?WldOQkFXZmRzajJPRUUvekwvdUQ2em5VMlllRVhKTERKV3lPQlV1UUdma0dv?= =?utf-8?B?WGdRbzE3QmFTZytuaVMxdE1ZdGVzSWFZUGV3NHZRMWlRWHhRSkRnblhUVC84?= =?utf-8?B?RWJNNENoN1FvY0ZaOEgvQldSRE5Pa3JudE9aN2o0S05IMW1GeVlaWWlJUjV6?= =?utf-8?B?ejVWOGw0UFVxUGVGeGpDK3IydTJ1VTYzUnUwdS90dWFvVU1hVURRdytYekFw?= =?utf-8?B?OHR4Ym8ya0JmUDh3N1AyVzljSWFWbHRIMjJSNzJ6Z3ByZCtKM2hvUU03dzBO?= =?utf-8?B?QmZNVllRZkZhUEk5N01ldXpPNnpzS1piQzlwbGRpTXM3MEd0ckxybUFadEhO?= =?utf-8?B?MXE3RjQvZ3FLaGpYUmk4RnM0NFk4U3FQVzRPMkZKbEJpUVo1cncxbWVDazNv?= =?utf-8?B?TVhnOU1XQ3ZzT0xoa1ZMVCs5WHRlbXo2bjdNRTJHRUhueUhNempkR1lxT0dy?= =?utf-8?B?SlphaDBLM3hXTENGUTRZVFFPZVpMeW40SnlhckFMeGpYdGxhcm5XcWlBVTZ1?= =?utf-8?B?S2xEOUVzd3JXemFQaTdNS0p0UHlFOHE0b0RvQU1aSDIrVmNLTEtaYnpKcENX?= =?utf-8?B?UmpGL0gwYmRpU0FJNVNMclFKSjVXb2syd21XaElOek9Vdzk2ZmVvSzJveENp?= =?utf-8?B?SkFmMUc2TjhYNTZ3WmdvcVdMTmN2MnZ2VXJzUEV4Rm8ydlBTMjBFbnQzVFgy?= =?utf-8?B?V0Z1VVZuaVBCb0R2UEFJSTVuWFJIZG9kYUxxYmI2QVpZNDJpbk94a0VZSy94?= =?utf-8?B?NXVnK3dqc1huWTQyVzVxVENSTEtkSE9uSVZTWFR1Z28xR1BHeGxTeXAyNXBt?= =?utf-8?B?bHk2bE5VelhOMkQ5eXl6M2R0ZlpyK2VrYlZ2bHVHMjNXUnlTWTJraEYrMXdQ?= =?utf-8?B?TThxc2JTanpUYnVvVVhDS1F3YU9NWVNiK1MyejJTOEJQSkVWN0k5V3ZtbC9h?= =?utf-8?B?NjVyRlRaTWdDT1ZHcnRzcXphWWVXUk45am13N1J3MUQ1MGRpWXVwNXJFVUV5?= =?utf-8?Q?9fa9x7EUrYZyy+yGlZgi3TUnu?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 96cbcb61-407a-4484-dff6-08db6bd53260 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Jun 2023 06:12:42.2667 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: DaSPzYuyd2VxGhoAg4aVNMWPxsVie8Z0Sv010PpbMFUCchvmXujuD9b8yd9/Nar/OC+t14apMYQA6cwAgAVAhg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS1PR04MB9456 Fields that generic_identify() sets unconditionally don't need pre- setting. (In fact the compiler removes some of those assignments anyway, at least in release builds.) With the setting of ->cpuid_level to -1 gone, also drop the respective BUG_ON() from default_init(). Signed-off-by: Jan Beulich --- a/xen/arch/x86/cpu/common.c +++ b/xen/arch/x86/cpu/common.c @@ -114,8 +114,6 @@ bool __init is_forced_cpu_cap(unsigned i static void cf_check default_init(struct cpuinfo_x86 * c) { /* Not much we can do here... */ - /* Check if at least it has cpuid */ - BUG_ON(c->cpuid_level == -1); __clear_bit(X86_FEATURE_SEP, c->x86_capability); } @@ -492,15 +490,11 @@ void identify_cpu(struct cpuinfo_x86 *c) int i; c->x86_cache_size = -1; - c->x86_vendor = X86_VENDOR_UNKNOWN; - c->cpuid_level = -1; /* CPUID not detected */ c->x86_model = c->x86_mask = 0; /* So far unknown... */ - c->x86_vendor_id[0] = '\0'; /* Unset */ c->x86_model_id[0] = '\0'; /* Unset */ c->x86_max_cores = 1; c->x86_num_siblings = 1; c->x86_clflush_size = 0; - c->phys_proc_id = XEN_INVALID_SOCKET_ID; c->cpu_core_id = XEN_INVALID_CORE_ID; c->compute_unit_id = INVALID_CUID; memset(&c->x86_capability, 0, sizeof c->x86_capability); From xen-devel-bounces@lists.xenproject.org Tue Jun 13 06:33:56 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 06:33:56 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547799.855385 (Exim 4.92) (envelope-from ) id 1q8xb2-000187-Q8; Tue, 13 Jun 2023 06:33:40 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547799.855385; Tue, 13 Jun 2023 06:33:40 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8xb2-000180-NP; Tue, 13 Jun 2023 06:33:40 +0000 Received: by outflank-mailman (input) for mailman id 547799; Tue, 13 Jun 2023 06:33:40 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8xb2-00017u-00 for xen-devel@lists.xenproject.org; Tue, 13 Jun 2023 06:33:40 +0000 Received: from EUR01-HE1-obe.outbound.protection.outlook.com (mail-he1eur01on2079.outbound.protection.outlook.com [40.107.13.79]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 3b01cf3a-09b4-11ee-b232-6b7b168915f2; Tue, 13 Jun 2023 08:33:38 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by AM7PR04MB6806.eurprd04.prod.outlook.com (2603:10a6:20b:103::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.44; Tue, 13 Jun 2023 06:33:09 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.039; Tue, 13 Jun 2023 06:33:08 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 3b01cf3a-09b4-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=fV7q0u+FNSjsus/y733Ner8bYahQi6u+f4Ht6vUKsr1Zuhnmsv1FSpiSIa7qOjxo672c4KWRU/RCNyD6ezrVqXRaxj/lSQC6LEuaOOet2Op/BGocpu+Gv6BI0cOSakjoIogDN/xjJGheZo7RhRawoewKaeQ0nRft/3gZk/kyWn9qwiLIFTIQ28LURHHldl0xO57Uku2vqP0WxsqyjR58+ZmC4oGsrvlKqkq9koKAtZVoqMV8LevNgrfD2ukfPR08/BuZ6jJw9t0LEu5ee7+zUnOBxKhyVA2Sb7sWCt28lOpIu1hVCFbLRVs0eygQlEIcpCt5f0GEUC5QUpTGnvZ5xg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=6nTSCP1DrphARgb/sSss1tiuIipQY1cAGUSlHw5dzoU=; b=dAbFflAHy1jgt3RBSUDsvmGhyF38Tl5MeMPL4KKHFSmWKmI7ZDW1s5u1OH2QF1REjqQvsJGWRPCactJToNuVKqPW8ZgFeYrp/80Rww85R87QAJIY9F/qfom2MJJCgK/pvsZGd24VyokWDhHApRp65xH34H0E5IAw5eF04fTXVHYT8qBDx22wLN7A/Y2Rh7XHmHyTxB8is4NeQNbIRznN8lOK4hIDQysZTcVm4K2FMLfeCrIGWbpUpWJWtnil3Ks58suA85S784H4k8wr6lmhIP0i8q2wkZ+Zf5J517QN0ZlaQNJyZ1xiwJVyxral1PsLDZHmpkxJaWYhTnlttJ5dsQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=6nTSCP1DrphARgb/sSss1tiuIipQY1cAGUSlHw5dzoU=; b=PEhPzrqSixlBImSGwp1YAeVqX2IAECplY3ra9wu7rkV90qbvcN942g86k3Ikb+W4IfkEaPOMS3+WJsE4ARcoYvscGpCf41GXGzGBu+IPcBh2XNUwgUqPmLldG3KrIilbzbk6g2VniSRS4abz5IErFmldsfR/7wY/UjXakpHj5SWzDX3pcJYvpT1kSevLRNHii/r5S/pJxJcNlh4X6e1T/+E3ch7hRLNQHFRI3wu8EF2zkYwIG1LJDvO2DnJaoPl+PMrP5tpUl8MccHWF6Fv9HYuHILFukN89UUvVEIZWWFbVW7uLCHRxOrvxMfL22AiiyE5oz9Pe6wgnkl4fMXtRwQ== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <10f2d41f-b34f-207e-eb73-d53f31385d8e@suse.com> Date: Tue, 13 Jun 2023 08:33:05 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH 2/5] libxl: drop dead assignments to "ret" from libxl__domain_config_setdefault() Content-Language: en-US To: "Daniel P. Smith" Cc: Anthony Perard , Wei Liu , Juergen Gross , "xen-devel@lists.xenproject.org" References: <2dc50b58-a4e4-3e32-1876-94412b14b052@suse.com> <5eda17da-7185-9cf6-7e87-70da57aa0ebc@suse.com> From: Jan Beulich In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR3P281CA0137.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:95::11) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|AM7PR04MB6806:EE_ X-MS-Office365-Filtering-Correlation-Id: e185c14d-df01-409b-9be4-08db6bd80d39 X-LD-Processed: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: CDBsp2H/cHZcgPjWBarfWJ8NUqY8dBZIWmjzNdOS9YjFlqiEbMqfSOXgPRZwAPR+JMFuMjxVg23npzpd1dpvyjtlEuh/x5T0TYr8zJ+MFIKtNhaUfDL7L4B5XcKCgNDRajXHWvk8a3iybhTTvJ+A+ctCfKtczX1t6a1x8n74W4Z09SDm6H5/DO5lS83gqpOw5qcVBZ9s46sa4LGgPq2cxRW65f8hQaswhx1oHzao5/exg/AZoPUEkOaYd3BVMlShrZKzQyy++AlTHtYj30YvGwFDh1fJvnXfNK1T49RHkI7DBELSHU6A7CUp9ONDgxljKO56kD5tFclaUW4VHMyYHMCYjuCN0/hjh2Vawxxh4lW1daz3b9KPLVVWtz60kTUb4zv2GYO+R/tQ5JZ24rZzBpZk84bURwZPiqUT/T4BmKRT3BHzYaMZSGplH3M0V9GNs1eoRQTTpOcGGqWFrWCRgFZl07u23aWjBcqO++qmMZfGMoIsvK/8Z84jUDCk2OJMlpNQUriwiEOKOKzturvAa9doZl/oGcF4yknDR4u/q9ZqdzrVVLDESPyWMtewh7dWFUT2fqZL1NFS5w2O9FrmGkO5gxEj+rS4o/KMf9U9ucZ7rLuj3Rhbj+Y7rfjly9vI0tnL2190yq7xxmUP2yTg1LG0lu+E7kt5FwM7uZmQaHtXwMoDey00dWl4ZxE+x2w+ X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(39860400002)(376002)(366004)(136003)(346002)(396003)(451199021)(31696002)(86362001)(36756003)(38100700002)(478600001)(6486002)(6666004)(54906003)(8936002)(8676002)(5660300002)(4326008)(6916009)(66946007)(66556008)(66476007)(41300700001)(316002)(2906002)(31686004)(2616005)(83380400001)(6506007)(26005)(6512007)(186003)(53546011)(101420200003)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?VG1wQUcwUFJUWG9KTTVGZXlRMXJXaXJ5UlFvcjREaUFjT3ZJOTBhSFh0N0hU?= =?utf-8?B?ZlJVQmRpK3A1L0lDM0g2U1V3NklIcVdWU1h0SlBVWGNURFNKbWNEMUU2Rk5Y?= =?utf-8?B?Tm9kRU10ZDI2Tm9nb3dqNFQ3dzdtS3c3Zlk2eHNVdXBadmJEWFlNZ25FRVN4?= =?utf-8?B?MExqYW4rRHUwbGlQeUcrdEpsbVZLeDNOT1BXUTdsNk9hdFFXS3ZISnNQSTdE?= =?utf-8?B?NDQ2bHNXRVZpQUJ5TCs2cHgyTDdBd3NuczRNOEF1QVF1eHNPUnJPMi9xUWhy?= =?utf-8?B?eWV4OUVDMkRvcGpraFlIRHdtN20wS1I0Wk5ad0xINmxWbjZCbjV3TW5WUU5F?= =?utf-8?B?WkhwamZYL3hVa1dVa0pqejVKeUZPSWtXYzhrNlh4eSt1VU9yOW1WWlRGakts?= =?utf-8?B?VWVTL0VJbVBHNDhTamgrb2I1S0p4ZURyem0wV0p0ZnFITU1ublhFS0habGoz?= =?utf-8?B?a3pnS0ZTdi9TU2tsdDd4ek1ya01FOTI5RmM2b005a0kxVjdvaE1FOVdsblov?= =?utf-8?B?cHR4Z2FWNGNBRm00NHVRc0VPQzZFK2JaWXZOUDE0bmZPam9VTFVnR3d1VXp0?= =?utf-8?B?UDAxbVlhbzI1NzB2NGpkTmRlWlF6VFVPcjkvaktMTWxveHVpeUcwNmtjNGJ1?= =?utf-8?B?QUVBb3JuTmhjcXpGTlJIc2xTNHNCMFovUGFUeHE4dDZHb05wQ1RHNUN5SndI?= =?utf-8?B?VDNKUFdmU09PWmJGUit0OElXTmQ1L2Z1NlEvZjlNcWZxTzNzeERuSnNBUnlK?= =?utf-8?B?ZWFqWVRiTVh0amc3SnZ5L0xnaWlRSXBsMjExck9BR2JKSzdLSVNiWEJvdEFr?= =?utf-8?B?eTc0eHNiY1hoUmlvdDNnWjJ2WEpCdnA4VFZjY0ptZ0FXMmRSWnBUaHdERTlZ?= =?utf-8?B?ckRtUDJSejM2emdDdCtQT2prY2RBaXdWNmd4b2JURUtwMkJRY3pQTWZkcC91?= =?utf-8?B?NUVpUXNqcXZZOGdyQTFBcXNoTWRBL25PZDRtVVN6NUd6bzJ3QW1scS8ycWVi?= =?utf-8?B?czVWK2lSRXI1KzMvcFdRTWR3Uk5QeVdEdTY5cnEzQ1Zsa0l2dlM2LzNwV0NH?= =?utf-8?B?Sm82ckxsc2RROGdsam1DREdCVUVsR2JyNG5pbDl2ZzNpcXdId0R6YkxsMFFm?= =?utf-8?B?NjdxWStnMDQwZmhrcEpVdkRORk5oaDJpeStrd0tzbEZCS0xyaE9URWZENTcz?= =?utf-8?B?cHNUNnBkOWp1VjM2dE1PQjk1M0dMVHRHd0ltbUFyNkNoeGQ5U1dzVXZJcXUy?= =?utf-8?B?cUQ5VlM1RFkwR1BZZVlBY0JabE5DNzNUQ3Y0SWlRTkZuTjhvOUJOY1VyUnIv?= =?utf-8?B?YkwxbVBISkxVSkUvSGlBbnpyQVh6ZjFFc2tEa2N4UUoxdGNhQWNjNXJHbFVO?= =?utf-8?B?L3FtWm9CNXFCaUhqdlRmWWxYazZqT0I5Wk43SFdkY3lWV2FENWtENGsyVHBy?= =?utf-8?B?THVrdzErOVJlMEJEL2JFQ2NqQjhpMnUwMGJiZkZKUytFK3l4R1o1c3ZIc1Nx?= =?utf-8?B?Zmt1dU8xRzNUQitQSkVlRnBIN3djTHhkNWdkaVo0b0NQWFdYWmhWZjdjcnh2?= =?utf-8?B?Mm1Sd1B0OVFNcUQzcDlSQ0FZbUhYNTY0dmJWUjJSWDNNK1hRZGREeXB6THdx?= =?utf-8?B?MjdaQzRRQ2ZaZlBKdWR3NDBoLy9zNllnRGRETStxWnNvZFNYUlp4bFIyYWRY?= =?utf-8?B?Mi9CUHc2WkxkalpldUljeXZqV1NzZS9vTkdqVGdTOFltUDNmc2xIdUlEUkFO?= =?utf-8?B?bzk3ODF6RkZMd2tKaEhNQ1N3Vm50TnRsY3hqWGsvWHdUQmdMUDNBTW5FdHBO?= =?utf-8?B?dnowclBOZ0JwdmhDT0o4eHhMYXppN3VGaVJLdmRuTmtpMDR0K1Z6UWxjdFg3?= =?utf-8?B?cEJwblR5U3BSeTFwbjhVMDQ0V0V1MXg5cVk4eXNxRXo0Qnc5OExkc0hTdEZr?= =?utf-8?B?NlVaejBaTmZlZzVkUjZuU3NuMnlhMW93a3JhcmxZaWtmZGxNcE9tZ1QycU1x?= =?utf-8?B?MG5BUVhDMEh2UEdCQXh4am9ISFgwOHR0WWY1SStOdU15UHh1aHU5TExWcG9s?= =?utf-8?B?QVVGQ2N2MVFRcmdlZkE2eHpZd0NpNGpSdkFUMXFxTE8xalhEaktTZU04RnZ5?= =?utf-8?Q?xo3RzT25ZXMkPXEx+CEBrLqlP?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: e185c14d-df01-409b-9be4-08db6bd80d39 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Jun 2023 06:33:08.3196 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: IDNEsxsWfARYuho2xFD3TQZuz1iOG5ypnw4AoX7hil4xgCT/v9znaVmOk1tAXYMmOwJeyB1NEl66XzwviW+gbQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM7PR04MB6806 On 12.06.2023 22:21, Daniel P. Smith wrote: > > > On 6/12/23 15:44, Daniel P. Smith wrote: >> On 6/12/23 07:46, Jan Beulich wrote: >>> The variable needs to be properly set only on the error paths. >>> >>> Coverity ID: 1532311 >>> Fixes: ab4440112bec ("xl / libxl: push parsing of SSID and CPU pool ID >>> down to libxl") >>> Signed-off-by: Jan Beulich >> >> Reviewed-by: Daniel P. Smith Thanks. >>> --- >>> If XSM is disabled, is it really useful to issue the 2nd and 3rd calls >>> if the 1st yielded ENOSYS? >> >> Would you be okay with the calls staying if instead on the first >> invocation of any libxl_flask_* method, flask status was checked and >> stored in a variable that would then be checked by any subsequent calls >> and immediately returned if flask was not enabled? I'm wary of global variables in shared libraries. > Looking closer I realized there is a slight flaw in the logic here. The > first call is accomplished via an xsm_op call and then assumes that > FLASK is the only XSM that has implemented the xsm hook, xsm_op, and > that the result will be an ENOSYS. If someone decides to implement an > xsm_op hook for any of the existing XSM modules or introduces a new XSM > module that has an xsm_op hook, the return likely would not be ENOSYS. I > have often debated if there should be a way to query which XSM module > was loaded for instances just like this. The question is what mechanism > would be best to do so. Well, this is what results from abusing ENOSYS. The default case of a switch() in a handler shouldn't return that value. Only if the entire hypercall is outright unimplemented, returning ENOSYS is appropriate. In fact I wonder whether dummy.h's xsm_do_xsm_op() is validly doing so, when that function also serves as the fallback for XSM modules choosing to not implement any of the op-s (like SILO does). Since in the specific case here it looks like the intention really is to carry out Flask-specific operations, a means to check for Flask specifically might indeed be appropriate. If not a new sub-op of xsm_op, a new sysctl might be another option. Jan From xen-devel-bounces@lists.xenproject.org Tue Jun 13 06:41:00 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 06:41:00 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547804.855397 (Exim 4.92) (envelope-from ) id 1q8xi3-0002dJ-IY; Tue, 13 Jun 2023 06:40:55 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547804.855397; Tue, 13 Jun 2023 06:40:55 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8xi3-0002dC-E0; Tue, 13 Jun 2023 06:40:55 +0000 Received: by outflank-mailman (input) for mailman id 547804; Tue, 13 Jun 2023 06:40:54 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8xi2-0002d6-Er for xen-devel@lists.xenproject.org; Tue, 13 Jun 2023 06:40:54 +0000 Received: from EUR05-AM6-obe.outbound.protection.outlook.com (mail-am6eur05on20608.outbound.protection.outlook.com [2a01:111:f400:7e1b::608]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 3d4a3c8d-09b5-11ee-8611-37d641c3527e; Tue, 13 Jun 2023 08:40:52 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by DBBPR04MB8058.eurprd04.prod.outlook.com (2603:10a6:10:1e7::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.42; Tue, 13 Jun 2023 06:40:49 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.039; Tue, 13 Jun 2023 06:40:49 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 3d4a3c8d-09b5-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=KZgnklRPt8D36LLGDkArjM+DiePgQLq8+Xbc/Oh96GEshJxAhicEzNT3wrZwM/Ca2p+13II0XI0cI9+R8L9g72QFOARwO5pfwBAykK1g0IcOotvQ2+4SBHep0FTBnlQthTPBNSOAt8ael9k2+fkDB+0BQlrrJ3q89In2L2CWvLrTPCS8a9VEeUsX90uEoh1fDkmX97/jIIbDSxy7BOq62wdJGxSr6hbagBobPX4+3Qjs+WGW3itTmzs02pRd3TAY0PYkAMkDrQkfqmvWgedf0DQPXn70birL0yfgWCw/p2gmm8ONQVQgGeJDK22ZTp2CmKpPp8nZuybF5CzViQAKOQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=M8rmfH8XWbpnCAIraSrFCNwK/fJUVmByhZJOTLmcmbw=; b=HBQEzZQnYCVeSuqklaDDcqbPuExlvLW3HGFVwCGj1sWlcrRPSlJZgy47iDlk88FHOR9EDxdscQV521EzrVOEbCRTrmpLo4zQoqKeSlv/ElvoGO3nalArAT74LC39YHIb/7t96uEds/CVfnjSYOZoGV6epH8/y3NCs8/JGlG3aeNs9+EkA8OYIzUkSCdClKPahETLEBpQJ2c7N6p/SxMnj4DaHLQ9qFtZw7dGhc5OjWMcf3Q+acvGTwEthG2LDBX5w3SwNt9fDDKRdq+fB8BgUCvAE4+aaOjJHXMOsOQuY0fOjMHKCR71klzJ4tVUMGDIDsvAqm09JWprqGbCPBKvvg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=M8rmfH8XWbpnCAIraSrFCNwK/fJUVmByhZJOTLmcmbw=; b=C3FeDSAS4c8ZYKS/RS7t/grbqI06QILPb5yyx8tlrkD6SrTA35qyBDkLBeVBp/K3pPo8u+lD0dU8BJA0LjK3hoyVvGnChlQmTzcolY3DG+Lj+7ZhdWtMnpIh9oyoYAWjYQUY+4YBFlUZnSOPAR8J+EAgjxnU1LhqFiUs0szHTHjvPML0oyJlhpxMwk1m7tay1Nmv3fo4xgUvtQTfxDWhMzJazA8qfaGtWRS0UiKu6fvTwuckc90ExRrDPLHUxSxlBt8poofcJ7+hauPmyiY1UN7zSLpMhW3GgP8cxbD9TLdgz74TXSSCKdN9eZiqCEXhXh5HNmmsqm+kOywKQmmRKQ== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <62192fa4-ca15-92d6-6b53-db81111545e4@suse.com> Date: Tue, 13 Jun 2023 08:40:48 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v2 2/4] x86: Read MSR_ARCH_CAPS after early_microcode_init() Content-Language: en-US To: Andrew Cooper , Alejandro Vallejo Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , Xen-devel References: <20230605170817.9913-1-alejandro.vallejo@cloud.com> <20230605170817.9913-3-alejandro.vallejo@cloud.com> <6ee9e687-b8ac-adfb-552e-522a21e128de@suse.com> From: Jan Beulich In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR0P281CA0051.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:48::12) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|DBBPR04MB8058:EE_ X-MS-Office365-Filtering-Correlation-Id: 9b693504-1c85-42a5-915b-08db6bd92030 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: D2ae6nrplC4XLuo/76CaIsdaPjh/+J5/tBP7xEyx032JdrAQ/WS8q1LVlIMfylm+JR1/Or1ruti95ZGZFcR3hawUt7Itya23oJJQnNAD6uQf51kemb7Xcux0fYgxXNCLxbXIvEDbku4R0tsk4DRQfNd1JUkf6XIikp7i1ZP8Iz0Iue0w3pAaCkU0vECjzRwpUwBqKzSkrExyQptObyne7H73KnwgegWdHHbZgm7GOC+RtblUvMU7IUo3vZWHU/tBdhFBqajEV+OE7iTKAYlrCb4DEZw5HRDzEfoArdDL0cNdqs/8xBtSZxoweR4/E1R8dY+At5YmHVJo02PF6Ic/AoYj1PHigctvRAbd4c27+G0y4pttY/W9euqz6KOk9PWCZH+IxviOjBFTtnns8TSKK8+kLYi17/layS074KwJ/Mt6CUUCcDwR/lVi19ezhOzBP7ZoNKvbtTq60pCJ8wwIXvbN6zIV+3wlsjjA4POl2UMhBsKjxwqf3yVeQV/e8tZDSWyW+VGMgDMLdXm6ptW0WGx+HMXRMTDShxFAzYj+Q4zthiTr7o1LY1yS+wBnrcxRcoEYY7zV7RY+1c5EkbnGm0EUGsCSeG7RLg2k4A3TGlp+6NelUYpNoNdxhj4sz/DdlUVjOC7/JhtwaxAwTA8IUA== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(396003)(136003)(376002)(366004)(346002)(39860400002)(451199021)(6486002)(478600001)(6512007)(53546011)(26005)(83380400001)(6506007)(186003)(36756003)(31696002)(86362001)(38100700002)(2616005)(4326008)(66556008)(66476007)(66946007)(316002)(8936002)(8676002)(31686004)(5660300002)(41300700001)(2906002)(110136005)(54906003)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?Y011eCtHS3Nqd080RXpKRlZCVVp3b3VRL282REl0VzJNRDF2ZWpoY2NSTXdS?= =?utf-8?B?ekloK1AvcDdWcWFjQisxKzVXYkpBanlNVWhIV1hTOFJyVmFhVCtZdmltazl2?= =?utf-8?B?b0ZkSVdkSFlEdERwNkR3WmhQV2RvcVA1S2RXSGdyVjl4UGtUdUxGWkJKM0tD?= =?utf-8?B?WXNEUnhSazZMMXhyRHhnUlc0MXltSWF6ZGR3dE1lNHMvd0pESTAxVjhXOGw4?= =?utf-8?B?TjBKc2F4SDI3aFV4YTZ2MExrWkR4QjN0NGRjTGIwcnA4b2xhRHJrY3hSeWRO?= =?utf-8?B?Yk9nQW9YM3pDZE9vcWYyQ1o1cllTYXNrYkplYlJrZmw4VHlrTEVBeHptMGk5?= =?utf-8?B?MGpwdFZjQkszTi9neTBXSVVtZ1JlNzlGeTBiRGppc2E1Lzg2dk15MkdSclUx?= =?utf-8?B?dEJtaUdMaFR3OFhBd0VkcVd4TUQ1QVhSUmN6NFlTY0h4MnhvLzNudHoySG80?= =?utf-8?B?dWQvaFpkZDBJdW9XcHB0b2c0ckEwRG1WaTB6RWVCemJFVmpkY0ZzYk1mSVc1?= =?utf-8?B?RGZ6ZkNXU1BndmI1SjRGVFNrRlhFakZkbFBobVhWbjZOMUR0SVhXRVRjOW5h?= =?utf-8?B?UHNvRVBJRzZNWUliYUhySjdPd2xlc1ZaS3NFc1RMU29la3lMQ0hBR1BsOUht?= =?utf-8?B?VzBqKzlVRit3V1hKbDFFdUpYYlNjSUZwaXZiTkkxNHZleUF2NS9DVWEyUEds?= =?utf-8?B?RHVCaktDanRDcG1GVVp2bXB2OXBkU1FLUzVYa3FJRlgzS2lGTnBRSG93a1Ri?= =?utf-8?B?SXBRWE1JMS9uWlBrYWFRUjRKZjJPMmROazkydFBIWDl6dUsrak5TUXlpZFpl?= =?utf-8?B?OGV0MEU1TlBpVW5Kd3JDcWVYc2I5MThYVk1zdytLOXEvdS9Ld25ZZVdVbnFx?= =?utf-8?B?MVYyYmpvT3dGcHJpVkVPZHA0bjlwUFV3bDV4UFdPMlNsMktXYmk0NGMrNko5?= =?utf-8?B?RVN0WUNiUlcyRjh5Z25teWwzQU5SQ3I4Q2FVeVZiYXVlQ3N6WFlKSEJ5Vjg1?= =?utf-8?B?d1h3WHI4WC8zenAxZnNpcXVkWlFsU2pRbU1VUUFuNWZsbFErTW9SVktZUy84?= =?utf-8?B?cjIrR2xlU0x2K0trWm5GZnRiZFpRTnhwazNkVmZOdEEvaGhLdmVwTE9LQVhG?= =?utf-8?B?V0JnZGZUMVU0TUsxeG0wbXdQUG1ER0ZGZnBlMnh2eFFDeUhxeVZCSHlKRDNo?= =?utf-8?B?aU95UmgvVk1zVmdHeTZmeklzcEE0WTd5OERGNVozRUdqTXp1a1AwaTVPcVZh?= =?utf-8?B?S24xZXVvdzcramJLQWtBdG82bVNwcStlTVU4OTNMWDY0TzRwNDhBUi9SOUNW?= =?utf-8?B?bUIxVGpoUmdjWmVWYWJTdGtwR3EzTXpXT0FoMHRIVzBKK3NrbTZoRjdwMndu?= =?utf-8?B?N0hhU2piVXRKSzJ1dlJ2Z1JBMlFzL1F1emxLRmtZQVZTTys0ZWZISWdSR3RL?= =?utf-8?B?TG1udUtuQ0hQWGxVQ0RFUEx3NmJUY0xhTndTQmhDcXZMTy9xWE54QWJwTzg0?= =?utf-8?B?WmVRdy92Nm5pQzdBeFliOVZuOVl3NXo2R3dyU1RpRjc0N1FaZkZOUzZDZUVz?= =?utf-8?B?Tzc5Y1pSMUdyTm1nTzZ1OTNiVCtocnBkdkRWTURyNDN1bjFJYmpWVW16T0hW?= =?utf-8?B?Q0RwUHA0aEsvMjlGOXhNOVk5eTUvdnltSXpSNGxGb21ka3NaSmo2M3ZCNmZ5?= =?utf-8?B?ZWVYZGpoQWRLMHpvSC93blFLaGx4MTFsb3lDbC9BVFJaT3FKRHB2bE5IU2tz?= =?utf-8?B?Q0NFYXhYUE0zc2RDK1ZrdGNtSXFPNzNDbGFFblJPd0hpNnRlTnFxcytLeHZB?= =?utf-8?B?UnVJeThlV0RQTlZpVm5adVFTd015Nmk5TllLeUdVbWtONEZDZmpsRG8rdml1?= =?utf-8?B?OHlTL0xUc09XR3VnOTJXc0JzNTg0YUhHOFp5YmNMYzhtb2ljNUVRMzFJMXAx?= =?utf-8?B?MmsvR21nS3VLMGkxOGw2YUd6OWZmR3dWYk9KTTdNSjdpc0xzVnRqeXdzNTQw?= =?utf-8?B?S2xsNUZEaEJKNG9xRFRXMnp5WGk1SzZGM3lVeHlGMFpmMi9qaWJOT2gwalFz?= =?utf-8?B?WUo0Rzg2WUREZjB4SkEvZ0NGK3hvbEtJQS9yT1poREliS01BOUZjemh2am1O?= =?utf-8?Q?4FwE5Ay6Y7UuNPVUNgh909B4k?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 9b693504-1c85-42a5-915b-08db6bd92030 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Jun 2023 06:40:49.6501 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 8DiGfQS21yyHQZG+mZkdytfhsbqwEQTMHdn2dm8gc1pNJR8srJYTaXbp3q2xZiCcy15GoQHctK8WxO14pP8xaw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBBPR04MB8058 On 12.06.2023 20:25, Andrew Cooper wrote: > On 12/06/2023 4:46 pm, Jan Beulich wrote: >> On 05.06.2023 19:08, Alejandro Vallejo wrote: >>> @@ -878,5 +887,17 @@ int __init early_microcode_init(unsigned long *module_map, >>> if ( ucode_mod.mod_end || ucode_blob.size ) >>> rc = early_microcode_update_cpu(); >>> >>> + early_read_cpuid_7d0(); >>> + >>> + /* >>> + * tsx_init() needs MSR_ARCH_CAPS, but it runs before identify_cpu() >>> + * populates boot_cpu_data, so we read it here to centralize early >>> + * CPUID/MSR reads in the same place. >>> + */ >>> + if ( cpu_has_arch_caps ) >>> + rdmsr(MSR_ARCH_CAPABILITIES, >>> + boot_cpu_data.x86_capability[FEATURESET_m10Al], >>> + boot_cpu_data.x86_capability[FEATURESET_m10Ah]); >> ... "centralize" aspect goes away, and hence the comment needs adjusting. > > I find it weird splitting apart the various reads into x86_capability[], > but in light of the feedback, only the rdmsr() needs to stay. Hmm, wait: When updating a CPU from a pre-arch-caps ucode level on one that supports arch-caps, don't we need to re-read 7d0 here? (I.e. the call to early_read_cpuid_7d0() needs to stay, but for a reason different from the one presently stated in the description, and possibly even worth a brief comment.) Jan From xen-devel-bounces@lists.xenproject.org Tue Jun 13 06:45:40 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 06:45:40 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547811.855406 (Exim 4.92) (envelope-from ) id 1q8xmb-0003J6-6x; Tue, 13 Jun 2023 06:45:37 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547811.855406; Tue, 13 Jun 2023 06:45:37 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8xmb-0003Iz-45; Tue, 13 Jun 2023 06:45:37 +0000 Received: by outflank-mailman (input) for mailman id 547811; Tue, 13 Jun 2023 06:45:35 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8xmZ-0003It-Fv for xen-devel@lists.xenproject.org; Tue, 13 Jun 2023 06:45:35 +0000 Received: from smtp-out1.suse.de (smtp-out1.suse.de [2001:67c:2178:6::1c]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id e4ce4127-09b5-11ee-8611-37d641c3527e; Tue, 13 Jun 2023 08:45:33 +0200 (CEST) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by smtp-out1.suse.de (Postfix) with ESMTPS id 6C86E22613; Tue, 13 Jun 2023 06:45:32 +0000 (UTC) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id 1DEFB13483; Tue, 13 Jun 2023 06:45:32 +0000 (UTC) Received: from dovecot-director2.suse.de ([192.168.254.65]) by imap2.suse-dmz.suse.de with ESMTPSA id ejysBYwQiGTtfgAAMHmgww (envelope-from ); Tue, 13 Jun 2023 06:45:32 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: e4ce4127-09b5-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1; t=1686638732; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=/SaLt1ILt1LAHrWz574Ftx158nVN7x1r135he4XWDAg=; b=sEwjkFpCKx13CRPaLEe4MObw3SkWiUw9sdsK8GisyVQu2ZSjuqpYhK704mnOcJOtHAfxSc 1H1t0kO3x3I+WZ0IdhkBdBzVjf5/nJQowIDaVN2D2yRkk6Kt+37EE7m4BxzA/9UvX6BaQJ O6XtvztJrJRMSfjbybKPKXLnyiRyTPc= Message-ID: <1150fd9c-25c8-c91c-4ca2-2c587e3fbb43@suse.com> Date: Tue, 13 Jun 2023 08:45:31 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Content-Language: en-US To: Demi Marie Obenour , Stefano Stabellini , Oleksandr Tyshchenko , Jan Beulich , Konrad Rzeszutek Wilk Cc: Xen developer discussion , Linux Kernel Mailing List , stable@vger.kernel.org References: <20230610153232.1859-1-demi@invisiblethingslab.com> <85275900-6b6a-5391-a2a0-16704df3f00f@suse.com> From: Juergen Gross Subject: Re: [PATCH] xen: speed up grant-table reclaim In-Reply-To: Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="------------EC0xBwGHWirvib0loeDFvwau" This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --------------EC0xBwGHWirvib0loeDFvwau Content-Type: multipart/mixed; boundary="------------KBOzWFASVzXNvm6vWH2r7o8k"; protected-headers="v1" From: Juergen Gross To: Demi Marie Obenour , Stefano Stabellini , Oleksandr Tyshchenko , Jan Beulich , Konrad Rzeszutek Wilk Cc: Xen developer discussion , Linux Kernel Mailing List , stable@vger.kernel.org Message-ID: <1150fd9c-25c8-c91c-4ca2-2c587e3fbb43@suse.com> Subject: Re: [PATCH] xen: speed up grant-table reclaim References: <20230610153232.1859-1-demi@invisiblethingslab.com> <85275900-6b6a-5391-a2a0-16704df3f00f@suse.com> In-Reply-To: --------------KBOzWFASVzXNvm6vWH2r7o8k Content-Type: multipart/mixed; boundary="------------ZD9EEbh6JgWtdCn3ioqzqUst" --------------ZD9EEbh6JgWtdCn3ioqzqUst Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: base64 T24gMTIuMDYuMjMgMjI6MDksIERlbWkgTWFyaWUgT2Jlbm91ciB3cm90ZToNCj4gT24gTW9u LCBKdW4gMTIsIDIwMjMgYXQgMDg6Mjc6NTlBTSArMDIwMCwgSnVlcmdlbiBHcm9zcyB3cm90 ZToNCj4+IE9uIDEwLjA2LjIzIDE3OjMyLCBEZW1pIE1hcmllIE9iZW5vdXIgd3JvdGU6DQo+ Pj4gV2hlbiBhIGdyYW50IGVudHJ5IGlzIHN0aWxsIGluIHVzZSBieSB0aGUgcmVtb3RlIGRv bWFpbiwgTGludXggbXVzdCBwdXQNCj4+PiBpdCBvbiBhIGRlZmVycmVkIGxpc3QuDQo+Pg0K Pj4gVGhpcyBsYWNrcyBxdWl0ZSBzb21lIGNvbnRleHQuDQo+Pg0KPj4gVGhlIG1haW4gcHJv YmxlbSBpcyByZWxhdGVkIHRvIHRoZSBncmFudCBub3QgaGF2aW5nIGJlZW4gdW5tYXBwZWQg YWZ0ZXINCj4+IHRoZSBlbmQgb2YgYSByZXF1ZXN0LCBidXQgdGhlIHNpZGUgZ3JhbnRpbmcg dGhlIGFjY2VzcyBpcyBhc3N1bWluZyB0aGlzDQo+PiBzaG91bGQgYmUgdGhlIGNhc2UuDQo+ IA0KPiBUaGUgR1VJIGFnZW50IGhhcyByZWxpZWQgb24gZGVmZXJyZWQgZ3JhbnQgcmVjbGFp bSBmb3IgYXMgbG9uZyBhcyBpdCBoYXMNCj4gZXhpc3RlZC4gIE9uZSBjb3VsZCBhcmd1ZSB0 aGF0IGRvaW5nIHNvIG1lYW5zIHRoYXQgdGhlIGFnZW50IGlzIG1pc3VzaW5nDQo+IGdudGFs bG9jLCBidXQgdGhpcyBpcyBub3QgZG9jdW1lbnRlZCBhbnl3aGVyZS4gIEEgYmV0dGVyIGZp eCB3b3VsZCBiZSB0bw0KPiB1c2UgSU9DVExfR05UREVWX1NFVF9VTk1BUF9OT1RJRlkgaW4g dGhlIEdVSSBkYWVtb24uDQoNCkkgZG9uJ3QgdGhpbmsgdGhpcyBpcyBhIGdudGFsbG9jIHNw ZWNpZmljIHByb2JsZW0uIFlvdSBjb3VsZCBjcmVhdGUgdGhlIHNhbWUNCnByb2JsZW0gd2l0 aCBhIGtlcm5lbCBpbXBsZW1lbnRhdGlvbi4NCg0KQW5kIHllcywgdXNpbmcgSU9DVExfR05U REVWX1NFVF9VTk1BUF9OT1RJRlkgbWlnaHQgYmUgYSBnb29kIGlkZWEuDQoNCj4+IEluIGdl bmVyYWwgdGhpcyBtZWFucyB0aGF0IHRoZSB0d28gc2lkZXMgaW1wbGVtZW50aW5nIHRoZSBw cm90b2NvbCBkb24ndA0KPj4gYWdyZWUgaG93IGl0IHNob3VsZCB3b3JrLCBvciB0aGF0IHRo ZSBwcm90b2NvbCBpdHNlbGYgaGFzIGEgZmxhdy4NCj4gDQo+IFdoYXQgd291bGQgYSBiZXR0 ZXIgc29sdXRpb24gYmU/ICBUaGlzIGlzIGdvaW5nIHRvIGJlIHBhcnRpY3VsYXJseQ0KPiB0 cmlja3kgd2l0aCBXYXlsYW5kLCBhcyB0aGUgd2xfc2htIHByb3RvY29sIG1ha2VzIGFic29s dXRlbHkgbm8NCj4gZ3VhcmFudGVlcyB0aGF0IGNvbXBvc2l0b3JzIHdpbGwgcHJvbXB0bHkg cmVsZWFzZSB0aGUgbWFwcGluZyBhbmQNCj4gcHJvdmlkZXMgbm8gd2F5IHdoYXRzb2V2ZXIg Zm9yIFdheWxhbmQgY2xpZW50cyB0byBrbm93IHdoZW4gdGhpcyBoYXMNCj4gaGFwcGVuZWQu ICBSZWx5aW5nIG9uIGFuIExEX1BSRUxPQUQgaGFjayBpcyBub3Qgc3VzdGFpbmFibGUuDQo+ IA0KPj4+IE5vcm1hbGx5LCB0aGlzIGxpc3QgaXMgdmVyeSBzaG9ydCwgYmVjYXVzZQ0KPj4+ IHRoZSBQViBuZXR3b3JrIGFuZCBibG9jayBwcm90b2NvbHMgZXhwZWN0IHRoZSBiYWNrZW5k IHRvIHVubWFwIHRoZSBncmFudA0KPj4+IGZpcnN0Lg0KPj4NCj4+IE5vcm1hbGx5IHRoZSBs aXN0IGlzIGp1c3QgZW1wdHkuIE9ubHkgaW4gdmVyeSByYXJlIGNhc2VzIGxpa2UgcHJlbWF0 dXJlDQo+PiBQViBmcm9udGVuZCBtb2R1bGUgdW5sb2FkaW5nIGl0IGlzIGV4cGVjdGVkIHRv IHNlZSBjYXNlcyBvZiBkZWZlcnJlZA0KPj4gZ3JhbnQgcmVjbGFpbXMuDQo+IA0KPiBJbiB0 aGUgY2FzZSBvZiBhIHN5c3RlbSB1c2luZyBvbmx5IHByb3Blcmx5LWRlc2lnbmVkIFBWIHBy b3RvY29scw0KPiBpbXBsZW1lbnRlZCBpbiBrZXJuZWwgbW9kZSBJIGFncmVlLiAgSG93ZXZl ciwgYm90aCBsaWJ4ZW52Y2hhbiBhbmQgdGhlDQo+IFF1YmVzIEdVSSBwcm90b2NvbCBhcmUg aW1wbGVtZW50ZWQgaW4gdXNlciBtb2RlIGFuZCB0aGlzIG1lYW5zIHRoYXQgaWYNCj4gdGhl IGZyb250ZW5kIHByb2Nlc3MgKHRoZSBvbmUgdGhhdCB1c2VzIGdudGFsbG9jKSBjcmFzaGVz LCBkZWZlcnJlZA0KPiBncmFudCByZWNsYWltcyB3aWxsIG9jY3VyLg0KDQpUaGlzIHdvdWxk IGJlIHRoZSB1c2VyIHNwYWNlIHZhcmlhbnQgb2YgZnJvbnRlbmQgZHJpdmVyIHVubG9hZGlu Zy4NCg0KPiBXb3JzZSwgaXQgaXMgcG9zc2libGUgZm9yIHRoZSBkb21haW4gdG8gdXNlDQo+ IHRoZSBncmFudCBpbiBhIFBWIHByb3RvY29sLiAgSWYgdGhlIFBWIGJhY2tlbmQgZHJpdmVy IHRoZW4gbWFwcyBhbmQNCj4gdW5tYXBzIHRoZSBncmFudCBhbmQgdGhlbiB0ZWxscyB0aGUg ZnJvbnRlbmQgZHJpdmVyIHRvIHJlY2xhaW0gaXQsIGJ1dA0KPiB0aGUgYmFja2VuZCB1c2Vy c3BhY2UgcHJvY2VzcyAodGhlIG9uZSB1c2luZyBnbnRkZXYpIG1hcHMgaXQgYmVmb3JlIHRo ZQ0KPiBmcm9udGVuZCBkb2VzIHJlY2xhaW0gaXQsIHRoZSBmcm9udGVuZCB3aWxsIHRoaW5r IHRoZSBiYWNrZW5kIGlzIHRyeWluZw0KPiB0byBleHBsb2l0IFhTQS0zOTYgYW5kIGZyZWV6 ZSB0aGUgY29ubmVjdGlvbi4NCg0KTGV0IG1lIHN1bSB1cCBob3cgSSB1bmRlcnN0YW5kIGFi b3ZlIHN0YXRlbWVudDoNCg0KMS4gRnJvbnRlbmQgRiBpbiBEb21BIGlzIGdyYW50aW5nIERv bUIgYWNjZXNzIHZpYSBncmFudCBYIGZvciBQVi1kZXZpY2UgWS4NCjIuIERvbUIgYmFja2Vu ZCBCIGZvciBQVi1kZXZpY2UgWSBpcyBtYXBwaW5nIHRoZSBwYWdlIHVzaW5nIGdyYW50IFgg YW5kIHVzZXMgaXQuDQozLiBEb21CIGJhY2tlbmQgQiB1bm1hcHMgZ3JhbnQgWCBhbmQgc2ln bmFscyBlbmQgb2YgdXNhZ2UgdG8gRG9tQSBmcm9udGVuZCBGLg0KNC4gRG9tQiB1c2Vyc3Bh Y2UgcHJvY2VzcyBtYXBzIGdyYW50IFgNCjUuIERvbUEgZnJvbnRlbmQgRiB0cmllcyB0byBy ZWNsYWltIGdyYW50IFggYW5kIGZhaWxzIGR1ZSB0byBEb21CIHVzZXJzcGFjZQ0KICAgIG1h cHBpbmcNCg0KU28gd2h5IHdvdWxkIERvbUIgdXNlcnNwYWNlIHByb2Nlc3MgbWFwIGdyYW50 IFg/IFRoaXMgd291bGQgaW1wbHkgYSBtYWxpY2lvdXMNCnByb2Nlc3MgaW4gRG9tQi4gVGhp cyBtaWdodCBiZSBwb3NzaWJsZSwgYnV0IEkgZG9uJ3Qgc2VlIGhvdyBzdWNoIGFuIGF0dGFj aw0Kd291bGQgcmVsYXRlIHRvIHlvdXIgcHJvYmxlbS4gSXQgY291bGQgaGFwcGVuIHdpdGgg YW55IG1hbGljaW91cyB1c2Vyc3BhY2UNCnByb2dyYW0gd2l0aCByb290IGFjY2VzcyBpbiBh IGRvbWFpbiBydW5uaW5nIGEgUFYgYmFja2VuZC4NCg0KPiANCj4+PiBIb3dldmVyLCBRdWJl cyBPUydzIEdVSSBwcm90b2NvbCBpcyBzdWJqZWN0IHRvIHRoZSBjb25zdHJhaW50cw0KPj4+ IG9mIHRoZSBYIFdpbmRvdyBTeXN0ZW0sIGFuZCBhcyBzdWNoIHdpbmRzIHVwIHdpdGggdGhl IGZyb250ZW5kIHVubWFwcGluZw0KPj4+IHRoZSB3aW5kb3cgZmlyc3QuICBBcyBhIHJlc3Vs dCwgdGhlIGxpc3QgY2FuIGdyb3cgdmVyeSBsYXJnZSwgcmVzdWx0aW5nDQo+Pj4gaW4gYSBt YXNzaXZlIG1lbW9yeSBsZWFrIGFuZCBldmVudHVhbCBWTSBmcmVlemUuDQo+Pg0KPj4gSSBk byB1bmRlcnN0YW5kIHRoYXQgaXQgaXMgZGlmZmljdWx0IHRvIGNoYW5nZSB0aGUgcHJvdG9j b2wgYW5kL29yDQo+PiBiZWhhdmlvciBhZnRlciB0aGUgZmFjdCwgb3IgdGhhdCBwZXJmb3Jt YW5jZSBjb25zaWRlcmF0aW9ucyBhcmUgaW4gdGhlDQo+PiB3YXkgb2YgZG9pbmcgc28uDQo+ IA0KPiBXb3VsZCB0aGUgY29ycmVjdCBmaXggYmUgdG8gdXNlIElPQ1RMX0dOVERFVl9TRVRf VU5NQVBfTk9USUZZPyAgVGhhdA0KPiB3b3VsZCByZXF1aXJlIHRoYXQgdGhlIGFnZW50IGVp dGhlciBjcmVhdGUgYSBuZXcgZXZlbnQgY2hhbm5lbCBmb3IgZWFjaA0KPiB3aW5kb3cgb3Ig bWFpbnRhaW4gYSBwb29sIG9mIGV2ZW50IGNoYW5uZWxzLCBidXQgdGhhdCBzaG91bGQgYmUg ZG9hYmxlLg0KDQpJIHRoaW5rIHRoaXMgc291bmRzIGxpa2UgYSBwcm9taXNpbmcgaWRlYS4N Cg0KPiBUaGlzIHN0aWxsIGRvZXMgbm90IHNvbHZlIHRoZSBwcm9ibGVtIG9mIHRoZSBmcm9u dGVuZCBleGl0aW5nDQo+IHVuZXhwZWN0ZWRseSwgdGhvdWdoLg0KDQpTdWNoIGNhc2VzIG5l ZWQgdG8gYmUgaGFuZGxlZCB2aWEgZGVmZXJyZWQgcmVjbGFpbS4gWW91IGNvdWxkIGFkZCBh IGZsYWcNCnRvIHN0cnVjdCBkZWZlcnJlZF9lbnRyeSB3aGVuIGNhbGxlZCB0aHJvdWdoIGdu dGFsbG9jX3ZtYV9jbG9zZSgpLA0KaW5kaWNhdGluZyB0aGF0IHRoaXMgaXMgYW4gZXhwZWN0 ZWQgZGVmZXJyZWQgcmVjbGFpbSBub3QgbGVhZGluZyB0bw0KZXJyb3IgbWVzc2FnZXMuDQoN Cj4gDQo+Pj4gVG8gcGFydGlhbGx5IHNvbHZlIHRoaXMgcHJvYmxlbSwgbWFrZSB0aGUgbnVt YmVyIG9mIGVudHJpZXMgdGhhdCB0aGUgVk0NCj4+PiB3aWxsIGF0dGVtcHQgdG8gZnJlZSBh dCBlYWNoIGl0ZXJhdGlvbiB0dW5hYmxlLiAgVGhlIGRlZmF1bHQgaXMgc3RpbGwNCj4+PiAx MCwgYnV0IGl0IGNhbiBiZSBvdmVycmlkZGVuIGF0IGNvbXBpbGUtdGltZSAodmlhIEtjb25m aWcpLCBib290LXRpbWUNCj4+PiAodmlhIGEga2VybmVsIGNvbW1hbmQtbGluZSBvcHRpb24p LCBvciBydW50aW1lICh2aWEgc3lzZnMpLg0KPj4NCj4+IElzIHRoZXJlIHJlYWxseSBhIG5l ZWQgdG8gaGF2ZSBhbm90aGVyIEtjb25maWcgb3B0aW9uIGZvciB0aGlzPyBBRkFJQ1MNCj4+ IG9ubHkgUXViZXNPUyBpcyBhZmZlY3RlZCBieSB0aGUgcHJvYmxlbSB5b3UgYXJlIHRyeWlu ZyB0byBzb2x2ZS4gSSBkb24ndA0KPj4gc2VlIHdoeSB5b3UgY2FuJ3QgdXNlIHRoZSBjb21t YW5kLWxpbmUgb3B0aW9uIG9yIHN5c2ZzIG5vZGUgdG8gc2V0IHRoZQ0KPj4gaGlnaGVyIHJl Y2xhaW0gYmF0Y2ggc2l6ZS4NCj4gDQo+IEZhaXIuICBJbiBwcmFjdGljZSwgUXViZXMgT1Mg d2lsbCBuZWVkIHRvIHVzZSB0aGUgc3lzZnMgbm9kZSwgc2luY2UNCj4gdGhlIG90aGVyIHR3 byBkbyBub3Qgd29yayB3aXRoIGluLVZNIGtlcm5lbHMuDQo+IA0KPj4+IEZpeGVzOiA1Njlj YTViM2Y5NGMgKCJ4ZW4vZ250dGFiOiBhZGQgZGVmZXJyZWQgZnJlZWluZyBsb2dpYyIpDQo+ Pg0KPj4gSSBkb24ndCB0aGluayB0aGlzICJGaXhlczoiIHRhZyBpcyBhcHByb3ByaWF0ZS4g VGhlIG1lbnRpb25lZCBjb21taXQgZGlkbid0DQo+PiBoYXZlIGEgYnVnLiBZb3UgYXJlIGFk ZGluZyBuZXcgZnVuY3Rpb25hbGl0eSBvbiB0b3Agb2YgaXQuDQo+IA0KPiBJ4oCZbGwgZHJv cCB0aGUgIkZpeGVzOiIgdGFnLCBidXQgSSB3aWxsIGtlZXAgdGhlICJDYzogc3RhYmxlQHZn ZXIua2VybmVsLm9yZyINCj4gYXMgSSBiZWxpZXZlIHRoaXMgcGF0Y2ggbWVldHMgdGhlIGZv bGxvd2luZyBjcml0ZXJpb24gZm9yIHN0YWJsZQ0KPiBiYWNrcG9ydCAoZnJvbSBEb2N1bWVu dGF0aW9uL3Byb2Nlc3Mvc3RhYmxlLWtlcm5lbC1ydWxlcy5yc3QpOg0KPiANCj4gICAgICBT ZXJpb3VzIGlzc3VlcyBhcyByZXBvcnRlZCBieSBhIHVzZXIgb2YgYSBkaXN0cmlidXRpb24g a2VybmVsIG1heSBhbHNvDQo+ICAgICAgYmUgY29uc2lkZXJlZCBpZiB0aGV5IGZpeCBhIG5v dGFibGUgcGVyZm9ybWFuY2Ugb3IgaW50ZXJhY3Rpdml0eSBpc3N1ZS4NCj4gDQoNClN1cmUs IHRoaXMgc2VlbXMgYXBwcm9wcmlhdGUuDQoNCj4+PiBDYzogc3RhYmxlQHZnZXIua2VybmVs Lm9yZw0KPj4+IFNpZ25lZC1vZmYtYnk6IERlbWkgTWFyaWUgT2Jlbm91ciA8ZGVtaUBpbnZp c2libGV0aGluZ3NsYWIuY29tPg0KPj4+IC0tLQ0KPj4+ICAgIGRyaXZlcnMveGVuL0tjb25m aWcgICAgICAgfCAxMiArKysrKysrKysrKysNCj4+PiAgICBkcml2ZXJzL3hlbi9ncmFudC10 YWJsZS5jIHwgNDAgKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tDQo+ Pj4gICAgMiBmaWxlcyBjaGFuZ2VkLCA0MSBpbnNlcnRpb25zKCspLCAxMSBkZWxldGlvbnMo LSkNCj4+Pg0KPj4+IGRpZmYgLS1naXQgYS9kcml2ZXJzL3hlbi9LY29uZmlnIGIvZHJpdmVy cy94ZW4vS2NvbmZpZw0KPj4+IGluZGV4IGQ1ZDdjNDAyYjY1MTEyYjg1OTJiYTEwYmQzZmQx NzMyYzI2Yjc3MWUuLjhmOTZlMTM1OWViMTAyZDY0MjA3NzViNjZlNzgwNTAwNGE0Y2U5ZmUg MTAwNjQ0DQo+Pj4gLS0tIGEvZHJpdmVycy94ZW4vS2NvbmZpZw0KPj4+ICsrKyBiL2RyaXZl cnMveGVuL0tjb25maWcNCj4+PiBAQCAtNjUsNiArNjUsMTggQEAgY29uZmlnIFhFTl9NRU1P UllfSE9UUExVR19MSU1JVA0KPj4+ICAgIAkgIFRoaXMgdmFsdWUgaXMgdXNlZCB0byBhbGxv Y2F0ZSBlbm91Z2ggc3BhY2UgaW4gaW50ZXJuYWwNCj4+PiAgICAJICB0YWJsZXMgbmVlZGVk IGZvciBwaHlzaWNhbCBtZW1vcnkgYWRtaW5pc3RyYXRpb24uDQo+Pj4gK2NvbmZpZyBYRU5f R1JBTlRTX1JFQ0xBSU1fUEVSX0lURVJBVElPTg0KPj4+ICsJaW50ICJEZWZhdWx0IG51bWJl ciBvZiBncmFudCBlbnRyaWVzIHRvIHJlY2xhaW0gcGVyIGl0ZXJhdGlvbiINCj4+PiArCWRl ZmF1bHQgMTANCj4+PiArCXJhbmdlIDEwIDQyOTQ5NjcyOTUNCj4+PiArCWhlbHANCj4+PiAr CSAgVGhpcyBzZXRzIHRoZSBkZWZhdWx0IHZhbHVlIGZvciB0aGUgZ3JhbnRfdGFibGUuZnJl ZV9wZXJfaXRlcmF0aW9uDQo+Pj4gKwkgIGtlcm5lbCBjb21tYW5kIGxpbmUgb3B0aW9uLCB3 aGljaCBzZXRzIHRoZSBudW1iZXIgb2YgZ3JhbnRzIHRoYXQNCj4+PiArCSAgTGludXggd2ls bCB0cnkgdG8gcmVjbGFpbSBhdCBvbmNlLiAgVGhlIGRlZmF1bHQgaXMgMTAsIGJ1dA0KPj4+ ICsJICB3b3JrbG9hZHMgdGhhdCBtYWtlIGhlYXZ5IHVzZSBvZiBnbnRhbGxvYyB3aWxsIGxp a2VseSB3YW50IHRvDQo+Pj4gKwkgIGluY3JlYXNlIHRoaXMuICBUaGUgY3VycmVudCB2YWx1 ZSBjYW4gYmUgYWNjZXNzZWQgYW5kL29yIG1vZGlmaWVkDQo+Pj4gKwkgIHZpYSAvc3lzL21v ZHVsZS9ncmFudF90YWJsZS9wYXJhbWV0ZXJzL2ZyZWVfcGVyX2l0ZXJhdGlvbi4NCj4+PiAr DQo+Pg0KPj4gQXBhcnQgZnJvbSB0aGUgZmFjdCB0aGF0IEkgZG9uJ3QgbGlrZSBhZGRpbmcg YSBuZXcgS2NvbmZpZyBvcHRpb24sIHRoZSBoZWxwDQo+PiB0ZXh0IGlzIG5vdCB0ZWxsaW5n IHRoZSB0cnVlIHN0b3J5LiBIZWF2eSB1c2Ugb2YgZ250YWxsb2MgaXNuJ3QgdG8gYmxhbWUs IGJ1dA0KPj4gdGhlIGZhY3QgdGhhdCB5b3VyIFBWLWRldmljZSBpbXBsZW1lbnRhdGlvbiBp cyBiYXNlZCBvbiB0aGUgcmVjbGFpbQ0KPj4gZnVuY3Rpb25hbGl0eS4gVEJILCBzb21lb25l IG5vdCBmYW1pbGlhciB3aXRoIHRoZSBncmFudCByZWNsYWltIHdpbGwgaGF2ZSBubw0KPj4g Y2hhbmNlIHRvIHNlbGVjdCBhIHNlbnNpYmxlIHZhbHVlIGJhc2VkIG9uIHlvdXIgaGVscCB0 ZXh0Lg0KPiANCj4gVGhhdOKAmXMgYSBnb29kIHBvaW50LiAgUXViZXMgT1Mgd2lsbCBuZWVk IHRvIHVzZSB0aGUgc3lzZnMgdmFsdWUgYW55d2F5DQo+IGluIG9yZGVyIHRvIHN1cHBvcnQg aW4tVk0ga2VybmVscywgc28gdGhlIEtjb25maWcgb3B0aW9uIGlzIG5vdCByZWFsbHkNCj4g dXNlZnVsLg0KDQpOaWNlLg0KDQo+IA0KPj4+ICAgIGNvbmZpZyBYRU5fU0NSVUJfUEFHRVNf REVGQVVMVA0KPj4+ICAgIAlib29sICJTY3J1YiBwYWdlcyBiZWZvcmUgcmV0dXJuaW5nIHRo ZW0gdG8gc3lzdGVtIGJ5IGRlZmF1bHQiDQo+Pj4gICAgCWRlcGVuZHMgb24gWEVOX0JBTExP T04NCj4+PiBkaWZmIC0tZ2l0IGEvZHJpdmVycy94ZW4vZ3JhbnQtdGFibGUuYyBiL2RyaXZl cnMveGVuL2dyYW50LXRhYmxlLmMNCj4+PiBpbmRleCBlMWVjNzI1YzI4MTlkNGQ1ZGVkZTA2 M2ViMDBkODZhNmQ1Mjk0NGMwLi5mYTY2NmFhNmFiYzNlNzg2ZGRkYzk0Zjg5NTY0MTUwNWVj MGIyM2Q4IDEwMDY0NA0KPj4+IC0tLSBhL2RyaXZlcnMveGVuL2dyYW50LXRhYmxlLmMNCj4+ PiArKysgYi9kcml2ZXJzL3hlbi9ncmFudC10YWJsZS5jDQo+Pj4gQEAgLTQ5OCwxNCArNDk4 LDIwIEBAIHN0YXRpYyBMSVNUX0hFQUQoZGVmZXJyZWRfbGlzdCk7DQo+Pj4gICAgc3RhdGlj IHZvaWQgZ250dGFiX2hhbmRsZV9kZWZlcnJlZChzdHJ1Y3QgdGltZXJfbGlzdCAqKTsNCj4+ PiAgICBzdGF0aWMgREVGSU5FX1RJTUVSKGRlZmVycmVkX3RpbWVyLCBnbnR0YWJfaGFuZGxl X2RlZmVycmVkKTsNCj4+PiArc3RhdGljIGF0b21pYzY0X3QgZGVmZXJyZWRfY291bnQ7DQo+ Pj4gK3N0YXRpYyBhdG9taWM2NF90IGxlYWtlZF9jb3VudDsNCj4+PiArc3RhdGljIHVuc2ln bmVkIGludCBmcmVlX3Blcl9pdGVyYXRpb24gPSBDT05GSUdfWEVOX0dSQU5UU19SRUNMQUlN X1BFUl9JVEVSQVRJT047DQo+Pj4gKw0KPj4+ICAgIHN0YXRpYyB2b2lkIGdudHRhYl9oYW5k bGVfZGVmZXJyZWQoc3RydWN0IHRpbWVyX2xpc3QgKnVudXNlZCkNCj4+PiAgICB7DQo+Pj4g LQl1bnNpZ25lZCBpbnQgbnIgPSAxMDsNCj4+PiArCXVuc2lnbmVkIGludCBuciA9IFJFQURf T05DRShmcmVlX3Blcl9pdGVyYXRpb24pOw0KPj4+ICsJY29uc3QgYm9vbCBpZ25vcmVfbGlt aXQgPSBuciA9PSAwOw0KPj4+ICAgIAlzdHJ1Y3QgZGVmZXJyZWRfZW50cnkgKmZpcnN0ID0g TlVMTDsNCj4+PiAgICAJdW5zaWduZWQgbG9uZyBmbGFnczsNCj4+PiArCXNpemVfdCBmcmVl ZCA9IDA7DQo+Pj4gICAgCXNwaW5fbG9ja19pcnFzYXZlKCZnbnR0YWJfbGlzdF9sb2NrLCBm bGFncyk7DQo+Pj4gLQl3aGlsZSAobnItLSkgew0KPj4+ICsJd2hpbGUgKChpZ25vcmVfbGlt aXQgfHwgbnItLSkgJiYgIWxpc3RfZW1wdHkoJmRlZmVycmVkX2xpc3QpKSB7DQo+Pj4gICAg CQlzdHJ1Y3QgZGVmZXJyZWRfZW50cnkgKmVudHJ5DQo+Pj4gICAgCQkJPSBsaXN0X2ZpcnN0 X2VudHJ5KCZkZWZlcnJlZF9saXN0LA0KPj4+ICAgIAkJCQkJICAgc3RydWN0IGRlZmVycmVk X2VudHJ5LCBsaXN0KTsNCj4+PiBAQCAtNTE1LDEwICs1MjEsMTMgQEAgc3RhdGljIHZvaWQg Z250dGFiX2hhbmRsZV9kZWZlcnJlZChzdHJ1Y3QgdGltZXJfbGlzdCAqdW51c2VkKQ0KPj4+ ICAgIAkJbGlzdF9kZWwoJmVudHJ5LT5saXN0KTsNCj4+PiAgICAJCXNwaW5fdW5sb2NrX2ly cXJlc3RvcmUoJmdudHRhYl9saXN0X2xvY2ssIGZsYWdzKTsNCj4+PiAgICAJCWlmIChfZ250 dGFiX2VuZF9mb3JlaWduX2FjY2Vzc19yZWYoZW50cnktPnJlZikpIHsNCj4+PiArCQkJdWlu dDY0X3QgcmV0ID0gYXRvbWljNjRfc3ViX3JldHVybigxLCAmZGVmZXJyZWRfY291bnQpOw0K Pj4+ICAgIAkJCXB1dF9mcmVlX2VudHJ5KGVudHJ5LT5yZWYpOw0KPj4+IC0JCQlwcl9kZWJ1 ZygiZnJlZWluZyBnLmUuICUjeCAocGZuICUjbHgpXG4iLA0KPj4+IC0JCQkJIGVudHJ5LT5y ZWYsIHBhZ2VfdG9fcGZuKGVudHJ5LT5wYWdlKSk7DQo+Pj4gKwkJCXByX2RlYnVnKCJmcmVl aW5nIGcuZS4gJSN4IChwZm4gJSNseCksICVsbHUgcmVtYWluaW5nXG4iLA0KPj4+ICsJCQkJ IGVudHJ5LT5yZWYsIHBhZ2VfdG9fcGZuKGVudHJ5LT5wYWdlKSwNCj4+PiArCQkJCSAodW5z aWduZWQgbG9uZyBsb25nKXJldCk7DQo+Pg0KPj4gSSdkIHByZWZlciBub3QgdG8gaXNzdWUg bG90cyBvZiBwcmludHMgKGJlaW5nIGl0IGRlYnVnIG9yIGluZm8gb25lcykgaWYgdGhlDQo+ PiByZWNsYWltIGlzIGV4cGVjdGVkIHRvIGhhcHBlbiB3aXRoIGEgc3BlY2lmaWMgUFYtZGV2 aWNlLg0KPj4NCj4+IE15IHByZWZlcnJlZCBzb2x1dGlvbiB3b3VsZCBiZSBhIHBlci1kZXZp Y2UgZmxhZywgYnV0IGF0IGxlYXN0IHlvdSBzaG91bGQNCj4+IHN3aXRjaCB0byBwcl8qX3Jh dGVsaW1pdGVkKCkuIFNhbWUgYXBwbGllcyBmdXJ0aGVyIGRvd24uDQo+IA0KPiBXaGF0IGRv IHlvdSBtZWFuIGJ5IOKAnHBlci1kZXZpY2UgZmxhZ+KAnT8gIFRoZXNlIGdyYW50cyBhcmUg YWxsb2NhdGVkIGJ5DQo+IHVzZXJzcGFjZSB1c2luZyBnbnRhbGxvYywgc28gdGhlcmUgaXMg bm8gUFYgZGV2aWNlIG9uIHdoaWNoIHRoZSBmbGFnDQo+IGNvdWxkIGJlIHNldC4NCg0KSW4g dGhpcyBjYXNlIHRoZSBmbGFnIHNob3VsZCByZWxhdGUgdG8gdGhlIGZpbGUgcG9pbnRlciB1 c2VkIGZvcg0KZ250YWxsb2Nfb3BlbigpLg0KDQoNCkp1ZXJnZW4NCg== --------------ZD9EEbh6JgWtdCn3ioqzqUst Content-Type: application/pgp-keys; name="OpenPGP_0xB0DE9DD628BF132F.asc" Content-Disposition: attachment; filename="OpenPGP_0xB0DE9DD628BF132F.asc" Content-Description: OpenPGP public key Content-Transfer-Encoding: quoted-printable -----BEGIN PGP PUBLIC KEY BLOCK----- xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjri oyspZKOBycWxw3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2 kaV2KL9650I1SJvedYm8Of8Zd621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i 1TXkH09XSSI8mEQ/ouNcMvIJNwQpd369y9bfIhWUiVXEK7MlRgUG6MvIj6Y3Am/B BLUVbDa4+gmzDC9ezlZkTZG2t14zWPvxXP3FAp2pkW0xqG7/377qptDmrk42GlSK N4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEBAAHNHEp1ZXJnZW4gR3Jvc3Mg PGpnQHBmdXBmLm5ldD7CwHkEEwECACMFAlOMcBYCGwMHCwkIBwMCAQYVCAIJCgsE FgIDAQIeAQIXgAAKCRCw3p3WKL8TL0KdB/93FcIZ3GCNwFU0u3EjNbNjmXBKDY4F UGNQH2lvWAUy+dnyThpwdtF/jQ6j9RwE8VP0+NXcYpGJDWlNb9/JmYqLiX2Q3Tye vpB0CA3dbBQp0OW0fgCetToGIQrg0MbD1C/sEOv8Mr4NAfbauXjZlvTj30H2jO0u +6WGM6nHwbh2l5O8ZiHkH32iaSTfN7Eu5RnNVUJbvoPHZ8SlM4KWm8rG+lIkGurq qu5gu8q8ZMKdsdGC4bBxdQKDKHEFExLJK/nRPFmAuGlId1E3fe10v5QL+qHI3EIP tyfE7i9Hz6rVwi7lWKgh7pe0ZvatAudZ+JNIlBKptb64FaiIOAWDCx1SzR9KdWVy Z2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+wsB5BBMBAgAjBQJTjHCvAhsDBwsJ CAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey/HmQf/RtI7kv5A2PS4 RF7HoZhPVPogNVbC4YA6lW7DrWf0teC0RR3MzXfy6pJ+7KLgkqMlrAbN/8Dvjoz7 8X+5vhH/rDLa9BuZQlhFmvcGtCF8eR0T1v0nC/nuAFVGy+67q2DH8As3KPu0344T BDpAvr2uYM4tSqxK4DURx5INz4ZZ0WNFHcqsfvlGJALDeE0LhITTd9jLzdDad1pQ SToCnLl6SBJZjDOX9QQcyUigZFtCXFst4dlsvddrxyqT1f17+2cFSdu7+ynLmXBK 7abQ3rwJY8SbRO2iRulogc5vr/RLMMlscDAiDkaFQWLoqHHOdfO9rURssHNN8WkM nQfvUewRz80hSnVlcmdlbiBHcm9zcyA8amdyb3NzQG5vdmVsbC5jb20+wsB5BBMB AgAjBQJTjHDXAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/ Ey8PUQf/ehmgCI9jB9hlgexLvgOtf7PJnFOXgMLdBQgBlVPO3/D9R8LtF9DBAFPN hlrsfIG/SqICoRCqUcJ96Pn3P7UUinFG/I0ECGF4EvTE1jnDkfJZr6jrbjgyoZHi w/4BNwSTL9rWASyLgqlA8u1mf+c2yUwcGhgkRAd1gOwungxcwzwqgljf0N51N5Jf VRHRtyfwq/ge+YEkDGcTU6Y0sPOuj4Dyfm8fJzdfHNQsWq3PnczLVELStJNdapwP OoE+lotufe3AM2vAEYJ9rTz3Cki4JFUsgLkHFqGZarrPGi1eyQcXeluldO3m91NK /1xMI3/+8jbO0tsn1tqSEUGIJi7ox80eSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1 c2UuZGU+wsB5BBMBAgAjBQJTjHDrAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgEC F4AACgkQsN6d1ii/Ey+LhQf9GL45eU5vOowA2u5N3g3OZUEBmDHVVbqMtzwlmNC4 k9Kx39r5s2vcFl4tXqW7g9/ViXYuiDXb0RfUpZiIUW89siKrkzmQ5dM7wRqzgJpJ wK8Bn2MIxAKArekWpiCKvBOB/Cc+3EXE78XdlxLyOi/NrmSGRIov0karw2RzMNOu 5D+jLRZQd1Sv27AR+IP3I8U4aqnhLpwhK7MEy9oCILlgZ1QZe49kpcumcZKORmzB TNh30FVKK1EvmV2xAKDoaEOgQB4iFQLhJCdP1I5aSgM5IVFdn7v5YgEYuJYx37Io N1EblHI//x/e2AaIHpzK5h88NEawQsaNRpNSrcfbFmAg987ATQRTjHAWAQgAyzH6 AOODMBjgfWE9VeCgsrwH3exNAU32gLq2xvjpWnHIs98ndPUDpnoxWQugJ6MpMncr 0xSwFmHEgnSEjK/PAjppgmyc57BwKII3sV4on+gDVFJR6Y8ZRwgnBC5mVM6JjQ5x Dk8WRXljExRfUX9pNhdE5eBOZJrDRoLUmmjDtKzWaDhIg/+1Hzz93X4fCQkNVbVF LELU9bMaLPBG/x5q4iYZ2k2ex6d47YE1ZFdMm6YBYMOljGkZKwYde5ldM9mo45mm we0icXKLkpEdIXKTZeKDO+Hdv1aqFuAcccTg9RXDQjmwhC3yEmrmcfl0+rPghO0I v3OOImwTEe4co3c1mwARAQABwsBfBBgBAgAJBQJTjHAWAhsMAAoJELDendYovxMv Q/gH/1ha96vm4P/L+bQpJwrZ/dneZcmEwTbe8YFsw2V/Buv6Z4Mysln3nQK5ZadD 534CF7TDVft7fC4tU4PONxF5D+/tvgkPfDAfF77zy2AH1vJzQ1fOU8lYFpZXTXIH b+559UqvIB8AdgR3SAJGHHt4RKA0F7f5ipYBBrC6cyXJyyoprT10EMvU8VGiwXvT yJz3fjoYsdFzpWPlJEBRMedCot60g5dmbdrZ5DWClAr0yau47zpWj3enf1tLWaqc suylWsviuGjKGw7KHQd3bxALOknAp4dN3QwBYCKuZ7AddY9yjynVaD5X7nF9nO5B jR/i1DG86lem3iBDXzXsZDn8R38=3D =3D2wuH -----END PGP PUBLIC KEY BLOCK----- --------------ZD9EEbh6JgWtdCn3ioqzqUst-- --------------KBOzWFASVzXNvm6vWH2r7o8k-- --------------EC0xBwGHWirvib0loeDFvwau Content-Type: application/pgp-signature; name="OpenPGP_signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="OpenPGP_signature" -----BEGIN PGP SIGNATURE----- wsB5BAABCAAjFiEEhRJncuj2BJSl0Jf3sN6d1ii/Ey8FAmSIEIsFAwAAAAAACgkQsN6d1ii/Ey/n iwf+PhfvXyT4ifChZSFYuZm7lYpAGmKV1tfB43mHZgnf5gv6hSUaiD8LsH4fVSNAKbto6FfWz6XB A8hy9n/TR2Z+PBFtLkvc4I2lIDqvghYXl7ZE+4Jd2YbM+Gqhp2Au/xrD4zwMi/CbW5PXlJ1r1O3E uDLi666y1Ah/KRBTTWHuPkgkIS72lkNRIxSab/+N58FDDHyyekZbQK5dS71fDygtElx5eOUIRLVc fcT+Y9ta8YRy8RJMBpHtxVFBUsdguOMbIqm2dvDzFAI1rCyxVEcIXES2P6lTHi6FLwUdNl5LaZCm o+LXk4kSKsbCEan6kYhxO+2Ml81AZrTcv2WUvGp3zA== =v86s -----END PGP SIGNATURE----- --------------EC0xBwGHWirvib0loeDFvwau-- From xen-devel-bounces@lists.xenproject.org Tue Jun 13 06:52:43 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 06:52:43 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547816.855415 (Exim 4.92) (envelope-from ) id 1q8xtI-0004mE-TU; Tue, 13 Jun 2023 06:52:32 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547816.855415; Tue, 13 Jun 2023 06:52:32 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8xtI-0004m7-Qh; Tue, 13 Jun 2023 06:52:32 +0000 Received: by outflank-mailman (input) for mailman id 547816; Tue, 13 Jun 2023 06:52:31 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8xtH-0004m1-6U for xen-devel@lists.xenproject.org; Tue, 13 Jun 2023 06:52:31 +0000 Received: from mail-vk1-xa2c.google.com (mail-vk1-xa2c.google.com [2607:f8b0:4864:20::a2c]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id dd24f5e1-09b6-11ee-b232-6b7b168915f2; Tue, 13 Jun 2023 08:52:30 +0200 (CEST) Received: by mail-vk1-xa2c.google.com with SMTP id 71dfb90a1353d-461b408594fso3582671e0c.1 for ; Mon, 12 Jun 2023 23:52:29 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: dd24f5e1-09b6-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686639149; x=1689231149; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=TUTI8ZA8f8N9IjETLd+NpC7RWhO4g/gz5kOSl8zdqnE=; b=MCzgLt5jGSnKDKfE3AgFxnvxl3xlBunouXJZLWuHMePJeXc8DnwDGXANNgylGMCKUi Al1jwgayeAGw7OMHmHXyBaHR2t4psiT/q87RykByU+D1hz8yO687Vn0tSdzs9yc60F3M 81MQe1xVp79UW/L+HDvVSG0KTo/UIKhxPeW8EIlLPJOoSOtU24RznDncgC1ZxSVenQyJ Oe7dJiPp8bDdSLL2oSS3Ya3DDsfmp2d7npIPbku7GH1wRUxaj889ngMiaqgCBkO5pyA6 gNxt6skHe3orRHCU7l1HBi6seEdYj4BWO0sXi3FwIY9Y44J8dzIYwuiRrrtQxrSdrpTW gr/Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686639149; x=1689231149; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=TUTI8ZA8f8N9IjETLd+NpC7RWhO4g/gz5kOSl8zdqnE=; b=OVp3JmSl+d0JzXOnrur260U8/ubTGVrOO3gz4i1SCnftV9umMfy3fCojTw/tHvWotO idZbT6xqQ1/U7vK162v0SQt6bCUsy7SIqceZyRHMDT6vQl4rx/R+024zPbbz+Fu0lioK AlJKLXoAWvUXJNGqdD9WUOpdSquBz5vS3xZ1qCRn4UeMGGy00iwMbV9Qv5adA67LKlMV ast/eHQuLJKkfEYi+ZWIMILzwOOFRTfbscqHPYkT7m30l8/6b6T4HnZ0C2yb98LIpz+o yK49KUcB2PXxhPra8AzCHrYpXljyDzWDSvKDKHEdtL7N0uL8bpabOF3HSZtqiyGUnBVS tAVA== X-Gm-Message-State: AC+VfDzhf/7jFQmDZpSypBYF99DOEJftYlSwQtcaqhvcCk8L3zMLCHiJ 68KY4hmL8QS6lSDa5B4hPGpFV3jnqEbr7E3Ea0k= X-Google-Smtp-Source: ACHHUZ6gYXccQDzWt2fkiBAfneNFBFmu5UKKQtAwgEqOqP7iG3A/NonNo5IQQgO9+dgx4+sHYDCwwJXJAkTNvhPu/ak= X-Received: by 2002:a1f:df82:0:b0:46e:70bc:9a0f with SMTP id w124-20020a1fdf82000000b0046e70bc9a0fmr60423vkg.1.1686639148853; Mon, 12 Jun 2023 23:52:28 -0700 (PDT) MIME-Version: 1.0 References: <298e8876fca284eac7caf7e62339ead177da9609.1686080337.git.oleksii.kurochko@gmail.com> In-Reply-To: <298e8876fca284eac7caf7e62339ead177da9609.1686080337.git.oleksii.kurochko@gmail.com> From: Alistair Francis Date: Tue, 13 Jun 2023 16:52:02 +1000 Message-ID: Subject: Re: [PATCH v1 7/8] xen/riscv: add __ASSEMBLY__ guards To: Oleksii Kurochko Cc: xen-devel@lists.xenproject.org, Jan Beulich , Andrew Cooper , Bob Eshleman , Alistair Francis , Connor Davis Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Wed, Jun 7, 2023 at 5:55=E2=80=AFAM Oleksii Kurochko wrote: > > Signed-off-by: Oleksii Kurochko Acked-by: Alistair Francis Alistair > --- > xen/arch/riscv/include/asm/page.h | 4 ++++ > 1 file changed, 4 insertions(+) > > diff --git a/xen/arch/riscv/include/asm/page.h b/xen/arch/riscv/include/a= sm/page.h > index 8e8ec9ee36..1c6add70a5 100644 > --- a/xen/arch/riscv/include/asm/page.h > +++ b/xen/arch/riscv/include/asm/page.h > @@ -3,6 +3,8 @@ > #ifndef _ASM_RISCV_PAGE_H > #define _ASM_RISCV_PAGE_H > > +#ifndef __ASSEMBLY__ > + > #include > #include > > @@ -60,4 +62,6 @@ static inline bool pte_is_valid(pte_t p) > return p.pte & PTE_VALID; > } > > +#endif /* __ASSEMBLY__ */ > + > #endif /* _ASM_RISCV_PAGE_H */ > -- > 2.40.1 > > From xen-devel-bounces@lists.xenproject.org Tue Jun 13 06:57:23 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 06:57:23 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547821.855426 (Exim 4.92) (envelope-from ) id 1q8xxs-0005O9-FG; Tue, 13 Jun 2023 06:57:16 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547821.855426; Tue, 13 Jun 2023 06:57:16 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8xxs-0005O2-Bd; Tue, 13 Jun 2023 06:57:16 +0000 Received: by outflank-mailman (input) for mailman id 547821; Tue, 13 Jun 2023 06:57:16 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8xxs-0005Nw-2w for xen-devel@lists.xenproject.org; Tue, 13 Jun 2023 06:57:16 +0000 Received: from EUR03-AM7-obe.outbound.protection.outlook.com (mail-am7eur03on2061f.outbound.protection.outlook.com [2a01:111:f400:7eaf::61f]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 869a1ce6-09b7-11ee-8611-37d641c3527e; Tue, 13 Jun 2023 08:57:14 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by PA4PR04MB9568.eurprd04.prod.outlook.com (2603:10a6:102:26e::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.44; Tue, 13 Jun 2023 06:57:08 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.039; Tue, 13 Jun 2023 06:57:08 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 869a1ce6-09b7-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=nNLxqfcdNpqQk/PNtc4KWIo8w3pLI2E15Vc2tHBqiHUjGKJQ3i58+dW+u1fXVmJCOWhNp5GYDGkhU/1fCcYhseEIPiL0OUrzjwSqcsGMvkJqxHcEmQ1jPoAXzOABGlzBKuCk5NGIyEHHzTYe2a2726/NNWJywQaE8uv0l5D+ZF7kLqqIa1PPdcb5AZW29wPqD9GzoN/Ar/nUX7MBCoQJ5Rc8qWtTXj6uW3nl2EpMvx+kzM2Wj4Zz594sZPvXWLxXhKZgYidNFZEi/OAPBP/4m0V86V1SYgoFvtg/FM80exlu0dimR1PxoBGS0WEYz8K8MkAcX+rRC2eIClLoSSJoHQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=VHKBkZaCGJ1syBz6AmdtxAal+mFQZGoQ0aIUijLnACs=; b=lqrZkmtAiH7BPYupaG+U3raA2Jz6NVz4OCBCbd043LPsb+bPk0DMEayEOJajvSMF4zqQw/uFD/kuPvj6EI2DQ+62ehqZ34/nasgzsa9879D9Yr7o4zdOMCRCkyN5aXHiWr0R034KV+mROvpsTkYqunO9s2C+++LX5Mhy6WPS3p98YiZnlHd7vglrVex5eRxbytmOb3MSJQ2EL+C+gvJYrdkw1EQnIz3JvkRFfvL6BTq/rrss/FJQTGT/D00eYCKemeT+piPGVAR6sxsuS9TL2U53cl2uziCRkomBJujO5QMtzIH2vgBbbWQZqwJosk/T0/nG8V4oNgSsUgoIgcvIIQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=VHKBkZaCGJ1syBz6AmdtxAal+mFQZGoQ0aIUijLnACs=; b=ylItfZj7Rcmmhk3X0FS98NUd7Cw6kmigLB2ldHe2CEUf7l+HssvjbtosPSq440EUosS91SLPEvgUG8LWS7RwBS7ydkayfXOj4cHAlnnd3aWEyQJJkWMA25/0JkLCeFQj4KTLSX8OmYyJbpl16hwzT1KnGXLZZ7M3sv8qt7epg5QicbKoJl7fwIHDa++WC85hNeRtaAorEzNvMHIiKW1x/oPDUB1r0yeQyCF1CaibWagHjohGD0fj80TO2QGRjinl1YbphxkgNzYMcF3N2Gj73bCSGY4E/KMPQ+aKw0rc3x+r334r9tzI9urm90U9J9vOWh3wzfrXctPMn3Xhd2L8cw== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <26a77ade-7c77-0309-7a1d-e083621c9dcf@suse.com> Date: Tue, 13 Jun 2023 08:57:06 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v2 4/4] x86/microcode: Prevent attempting updates if DIS_MCU_LOAD is set Content-Language: en-US To: Alejandro Vallejo Cc: Andrew Cooper , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , Xen-devel References: <20230605170817.9913-1-alejandro.vallejo@cloud.com> <20230605170817.9913-5-alejandro.vallejo@cloud.com> From: Jan Beulich In-Reply-To: <20230605170817.9913-5-alejandro.vallejo@cloud.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR2P281CA0033.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:14::20) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|PA4PR04MB9568:EE_ X-MS-Office365-Filtering-Correlation-Id: c003e28f-f2a8-4927-e386-08db6bdb6796 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: DL8AAmPqLhv85Reg9J7GXDtW27IK8sJwZNPWVsC78ZiXL5qmTOC7gbOoBIv4q8yJXevz8VocT8mJz9SJ/1a2uNoDs09Y9Szc+qNVlWLi7olaPeX/dccly1vsn+1hixfI/Hxf7t51sRerchMT4FxCHNy3FSYp0i4luLFWm4mW1Q7ZdW04s+jHaNCu43g0nlKsq2Am1HUcLYQvClqciP9s3hssHorygA08UbHyG7OF76Fzd77nF5+3pysoA7cxqgleTIkPd/dIkyNEb2a44DFPxxl20lw4+7CxGurIgQWAeYjeF8giiUfDN6jMqnfFIwlZHG6Y3Sx5yCYYs0H+/ld3y0aB8KfYxDiI/w3Qf4A/n6/9Ne16n1SXyyxtg8rQgeFWPe3t4y4Hf692gaNK9rylMcA1bmNnwwOoevim56nWdiv6RII6KF67CNXFo1r747SbpC2QPBgvqjYNsqwKmZSkjixvahxk+8Pws8HfjK14KhFIGFQci6lqWkF98D7bxjCu+rNOvELzlxXJO+/gzNLE9deAVHmFSRaGMvF8WPoBpqfwStx7qPo2NcKwnC5IrQmQDbX9yvdp8vMMOGmvSLEjbUNjiOpB4WUilWO9AIobYzG68TiQd7QLDPADb9KNU3pY52430oOI+qhj//s95G36+g== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(39860400002)(136003)(366004)(396003)(346002)(376002)(451199021)(31696002)(86362001)(36756003)(66476007)(66556008)(54906003)(478600001)(6916009)(4326008)(66946007)(316002)(6486002)(8676002)(8936002)(41300700001)(5660300002)(15650500001)(2906002)(38100700002)(2616005)(6512007)(26005)(53546011)(6506007)(186003)(83380400001)(31686004)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?U3Y1bTgxUjdxRndGUG4yUjR2Z1FNVXZYZnhTTnpldlE2aGFvdG1sTE5BZ09w?= =?utf-8?B?N0RXemk5WEhhaTNKOENrWS81aENZRkZtSW1GMkl6QmsyQU9Hc2w5eDdIN2Rx?= =?utf-8?B?ZjVxd2Z3UHNsbEVqaVh4V3RkODExTHI2bi9WdmROOXVSVW9jYUptd2d3K1lv?= =?utf-8?B?S0p3dStYYVFPRllFbGk1N3MzNUtqeTZ5Rko3QksrUUYxQTJCN0syOWVDMVF6?= =?utf-8?B?Z2hBTzBGRUFOSHkxeTlsNXVwaWdObzR6MnVVSmpZZTBFWURPL0lnUmtTcHhV?= =?utf-8?B?NDcxQ1M5cGZ4RVk4Qm9QTm15YnhzWDhKTnpPSm1qTU9vTHdNZDAwdHYyTk0r?= =?utf-8?B?V1ZnaUJGaDNadTM0S0RVbEtnTnUvbjdZOFliZTFFZHY0cFArMm4zYWUzVUlj?= =?utf-8?B?Ly9tb1ZEOHY4dHp1NG5PMjE4Q293ODFSUFRERUdzcVk1c2lteUs0VXU4ajJI?= =?utf-8?B?M0hqTmpwZmhXMkhsUkdLNW9QdENTVXF0a0RvZHdlSW10ZSt3R0JnL1FsRjcr?= =?utf-8?B?Q0dLSEdhb1ZIQVpiSG44TnlZclRkY3NLdmRYbncwZGdmbUpHZHJxSWtJZmNV?= =?utf-8?B?czZjSTRlQkhnQjlMY0VGVDFqNnZvR0hMNEd0cVFVYktWbXVIUXFRL0JlYmVU?= =?utf-8?B?OFFIY2Q0SFErblNlVlVaa3RkYW96cGZFL0ErN2hxTkVqRWFVckJCMDc5S1Bx?= =?utf-8?B?dGtoZS9uc2FYc2xDWWtKcXVmNHdSM0hLMnRod0V4UUdIYUxSWVFWNTVtVHAz?= =?utf-8?B?QjJBZWlJQkVVYzRiTUx0T1NVVkU4SCs5Z1JiRExNNG9OTlNlOFRyTE44dG1F?= =?utf-8?B?ZDRjT1BicHMxWFFocS9ZTWJSZGJsRzdXRE80Rk9ucjRtalVhd08zdHRMNCsx?= =?utf-8?B?MW1ETlJ5SXcybVZTM3NxMGo2ZE00eDR1TURMZzZJUjFaWXRJUEFEN1lUd3BF?= =?utf-8?B?aWVTdWlnaHZvTjEvTEplUnNBclkvU0xQeWpVYlp6a250ajRNcll4UDFyT1c4?= =?utf-8?B?ODRVNnppb3R5VjIzZi9lS0NIMWJHd2tTTlRUdXdMaGNaZjk0NUwvZlB6bHp2?= =?utf-8?B?dmlRUFRVNTh4bndlK1B1dHhxQUlOc2JTYXROUy9VdWF1V0w1M1BuM2xhTnUy?= =?utf-8?B?NHZqUVdpWlpsa3FueVZPckVVaTN4b0tCdHpNakUrUnZuWUhnb01mQ3Q4d01p?= =?utf-8?B?OTUwWjBWSzF1cWtlMzhRbmpBWXhKcFB3am1QUUpOSk9zK0pseVprUTZzYnFW?= =?utf-8?B?OWo2N2U0R3VSN1RRbVhUYUFuZU5RSU9xUHkwWFNXSExlODlDNi9uQmlhSVRF?= =?utf-8?B?RE9PWHFHdVlIZDhIanNRWklRd2RMdU5RbFBhYzRmS0c0REpNNG05UzhPQlIz?= =?utf-8?B?ZU9xcDA3MkNEMUhRQlhoOE01SzZWU2RCTHAyQk44NkloZXJyT0NQeUpwQzRk?= =?utf-8?B?aGdTNUQwN2pJalFDdVJnOXpuVEZsMTVnUmU5YWRTdWozV0FRaEJsNE5PYVdI?= =?utf-8?B?TU5CK1oyWDF4WjhIQUd0SWZWQWF0OTlaZVdiQURTQ01VWXo2eXVVQU5yRWp1?= =?utf-8?B?S1lSUGlXN2RISGE1SmFOYTBEejF0MEFCZFNUWXZIWm9pV1VhdzJkZ0drb1VF?= =?utf-8?B?cFBJS2djeEVpZnovVDFhK3prWVVKeUc0cmQ3MlZiVTA0SUZhTk9waGF2eXIv?= =?utf-8?B?NDlUdi8xVm9qRlZra3lNa1lhQnhrM1ZGM1R3ZHRtcmg3Umc2Y1c2R0JJNlJ0?= =?utf-8?B?REEvb0dyNHRMUUNvZ09HQVQ3L2F0TFlKT2xKTm9TSnUxNklYOE1hY2tHQlg3?= =?utf-8?B?b0ZWdHZ0dk5nekMyRjdxcE9qM080R2lPV2NwcDdwenNydGtMTGs5b1JXTXZ0?= =?utf-8?B?ZlVEd0I0ZExmS0RPcjhjVG8wNTdueU5kNkNoVDlkUDBTSEhiZEtZQ2xkalll?= =?utf-8?B?Q2JORGxVSVJydWtYQ0JlNFNUTk5WOVJibWp1N3phZVp0V2kvT1g0cVV0QzJD?= =?utf-8?B?ZFNPL0xTQXpoSkRaelhXcE9oOG50c05pUVpsaHNHSFlZYmwwTGJuZnJXOXM0?= =?utf-8?B?TklSSm9JZEhKWmF1ZGRNSmtjU1RZUFFSSlByWlpTUi8yK0ZTWG1tN0xNNEVM?= =?utf-8?Q?Sr7s4bLyUpdqQfRdZpBvlH9st?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: c003e28f-f2a8-4927-e386-08db6bdb6796 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Jun 2023 06:57:08.4172 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: KSJn5lx+NHNf0s57eeUh+dq8My7j5aTnVII5CVmUPg88Se7jiljKY6zfVryBeSt6DaUbz2E1pdT7xQX4NXpRdw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR04MB9568 On 05.06.2023 19:08, Alejandro Vallejo wrote: > --- a/xen/arch/x86/cpu/microcode/core.c > +++ b/xen/arch/x86/cpu/microcode/core.c > @@ -749,11 +749,12 @@ __initcall(microcode_init); > /* Load a cached update to current cpu */ > int microcode_update_one(void) > { > + if ( ucode_ops.collect_cpu_info ) > + alternative_vcall(ucode_ops.collect_cpu_info); > + > if ( !ucode_ops.apply_microcode ) > return -EOPNOTSUPP; > > - alternative_vcall(ucode_ops.collect_cpu_info); > - > return microcode_update_cpu(NULL); > } This adjustment (and related logic below) doesn't really fit the purpose that the title states. I wonder if the two things wouldn't better be split. > @@ -849,12 +850,25 @@ static void __init early_read_cpuid_7d0(void) > = cpuid_count_edx(7, 0); > } > > +static bool __init this_cpu_can_install_update(void) > +{ > + uint64_t mcu_ctrl; > + > + if ( !cpu_has_mcu_ctrl ) > + return true; > + > + rdmsrl(MSR_MCU_CONTROL, mcu_ctrl); > + return !(mcu_ctrl & MCU_CONTROL_DIS_MCU_LOAD); > +} As Andrew says, in principle AMD could have a means as well. Surely that would be a different one, so I wonder if this shouldn't be a new hook. > @@ -871,6 +885,15 @@ int __init early_microcode_init(unsigned long *module_map, > * present. > */ > ucode_ops = intel_ucode_ops; > + > + /* > + * In the case where microcode updates are blocked by the > + * DIS_MCU_LOAD bit we can still read the microcode version even if > + * we can't change it. > + */ > + if ( !this_cpu_can_install_update() ) > + ucode_ops = (struct microcode_ops){ .collect_cpu_info = > + intel_ucode_ops.collect_cpu_info }; Similarly I'm not happy to see a direct reference to some vendor specific field. I think it wants to be the hook to return such an override struct. Jan From xen-devel-bounces@lists.xenproject.org Tue Jun 13 07:00:15 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 07:00:15 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547828.855436 (Exim 4.92) (envelope-from ) id 1q8y0h-0006vp-0A; Tue, 13 Jun 2023 07:00:11 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547828.855436; Tue, 13 Jun 2023 07:00:10 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8y0g-0006vi-T9; Tue, 13 Jun 2023 07:00:10 +0000 Received: by outflank-mailman (input) for mailman id 547828; Tue, 13 Jun 2023 07:00:09 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8y0f-0006vc-OQ for xen-devel@lists.xenproject.org; Tue, 13 Jun 2023 07:00:09 +0000 Received: from EUR03-AM7-obe.outbound.protection.outlook.com (mail-am7eur03on2061e.outbound.protection.outlook.com [2a01:111:f400:7eaf::61e]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id eecfead1-09b7-11ee-b232-6b7b168915f2; Tue, 13 Jun 2023 09:00:08 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by PA4PR04MB9568.eurprd04.prod.outlook.com (2603:10a6:102:26e::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.44; Tue, 13 Jun 2023 07:00:07 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.039; Tue, 13 Jun 2023 07:00:05 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: eecfead1-09b7-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=YI6KZKKWbABd+2/rhAvv+VRMHpc3FvSP5X9R//gau6/R/LNdwqwj9pcJDU4s45jipCXENgkRN45T9HgtBlpzpb0fOebUdcDOqU4Mx2Y5C6u8qGIF2ecPCTwo4ZHqJJBkvdZy50qFKfl9S/K6qHA0CMr+qfpNSnUTzf3UPFggO8M7nF5gSlAL/f5yulvZc4CrzboIJJRyLkvYuz2XcpUtYHQn5xb+ot1TFPs9uaqjmpCPF8hORUhnjnMSn5yBDhHFl2AKA2PA1j4/AKjOmSI7/N3S9JOQUh/YO5LnghDsyvFfuk2pQDO+m7MMWbxdVvd7znQu0yMD3EZDB+n9mZt+Bg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=jYPDir4W08RNALnGkY2xgl1e137RkqPk/jDp4Tgff2A=; b=G2WNoLCikeuvTOdesop1DeTj5c3VxhEIM0a4z0KvsSZDeV8estkTKfpXp4aaT4nwPICpA7XgH3kzf06YnxWm05FYpFfMswq/kNa1hT3omKtp4G+kA9BRZKbDInW7FSGnfz++UuKZZ5yUpPgvr1V2x4KTfpdQlwRtYdg3vs2rt7SjRWLqlP/AA8UPUpC2BRdGedOGmYWMQjVe18+A65BKzStNKjVd7+SJL+AQIac/VIOaoK7nptH+VpcD0SXSTBuXk3caN7VU66n4fZIbaLdGnhryzRxY779OxZSXHO/XAXnVjvrJvTXW3ogn4NZL7VAXFI/5oTImIhbSRC3wvZUOmw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=jYPDir4W08RNALnGkY2xgl1e137RkqPk/jDp4Tgff2A=; b=cigdarHpalCNcQ6e+1g739rmEZihyrizSuyuEE3oGKzdW2SCe5JO3/ESMh2Nt5osJ5nl9WhYF5TBE1Q2PPJPNxQoNzsOfzYdq3uE5Jm3VyW2JvlO0ccWAixdnqOF8uZ6LZGLvrFhT5L3ZHQM9OFMaBLHOXNNTUY3qBXc0lWfYX0kaHm5isg5Uol+VVOK2I9xo0U2lCskoB+vcm97nrPzGTPSRh4sry643wUeAKlTbhkxvVwezJdjK7ui9XDNpr+Qpw65diWR3T/ZtaO9qEycKDkSrrIrIsn9mz37DTx2Nns+IGWWorD9sevq7I3L4fGnPyL9JSbC+RONO4oWOkC+Zg== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <01c1f68a-dad8-b499-7d50-904c85d5f87d@suse.com> Date: Tue, 13 Jun 2023 09:00:04 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH] x86/spec-ctrl: Fix the rendering of FB_CLEAR Content-Language: en-US To: Andrew Cooper Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , Xen-devel References: <20230612192805.2904128-1-andrew.cooper3@citrix.com> From: Jan Beulich In-Reply-To: <20230612192805.2904128-1-andrew.cooper3@citrix.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR0P281CA0101.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:a9::19) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|PA4PR04MB9568:EE_ X-MS-Office365-Filtering-Correlation-Id: 70018302-3c59-4d70-04c3-08db6bdbd14c X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 59OANWo7gbcwbk4MFnhvili+722CQJ1f1kUstookX3VMIasFMmbMEE9uId4L+coFjGXm+f6FJEFOY8R7vKixOMuuqpGEwkhz4nYSu1mJQSX5wI/lRDWdfxDNoFNdabyVKLwEez2EtMV03x9ujXjgFSrFQGxUuDiKeAhc6r7nr/ErEgXkCdNIMmrUmVdCJ2TpBFr9kJ5/4yvW0duj9BvSYChvQV1XaW4hTdSDyqsFt6hI6sRlsMJUgFoJO81/eZjc6R4x/mosqa05lsVNKO36hlqRH2c5UgcB5gHZfrrKjAAgqo8k54/SVqO4ZO1YhjvYo52MCJE9rFU5juaHbnFXK2MOkHBHBJ7uOwpG32ZSjFO+1MByk+03++ArMmdp0YmB1EIRrEq2iwe46bIGhHq4HqW91XUxVP/LuOo7uteitRipd04VH9Esa4hvvNmId6M0FvMIWtlVNHF328zTHB47ujhWnadNoA70Tx05YntDDK357cvnpIY6eKfKHA5OgCgjWMhcYU/T0qA/sRpO9h8mDnjcILgyMQc3CEsCVWYdZnJOj6fJX3XudAom5fuC/vSrP//LKOwZKNKcBkeC3gxAa3ITPgy4PAVMWj5AEdIHWvwuaVP7iT7y5ueX2uyO7iOIULivDzLvb4ODRwYRC5J9nQ== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(39860400002)(136003)(366004)(396003)(346002)(376002)(451199021)(31696002)(86362001)(558084003)(36756003)(66476007)(66556008)(54906003)(478600001)(6916009)(4326008)(66946007)(316002)(6486002)(8676002)(8936002)(41300700001)(5660300002)(2906002)(38100700002)(2616005)(6512007)(26005)(53546011)(6506007)(186003)(31686004)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?aHBsQjJ1YXpWZHltYzJETlpFSTRlSWV5MmdrSU5Td1l6bTFpRVREOU5TMDYw?= =?utf-8?B?NVlMYnVIMXdCVFpMRTdISGtrdGVKNlBxQklXS2J5Rzd5cW1kSVdnQXFaWlc1?= =?utf-8?B?dzhOMzh0VDdONG16YnVhMDRiaERGRE5TK0ZMNU91Q1VnL2x4b2JLQ3VzQldn?= =?utf-8?B?blVhY3V5bFRKb0FIVnFLUDF3cm1EV0xtejJqZUtYZG95M0xTZE1BaEFyYjgz?= =?utf-8?B?STk4YjB6THZJQ0pYRXNSL0plRHV5ajFhOEIwbnNkVjVFdUV2bkVrNHZERkd1?= =?utf-8?B?N0dQbmZoRG11NUp4aFBoVDhrMXd0eUwxcWkrTlVldGJwczZZUlpUc01hUS9B?= =?utf-8?B?VS9HZGZmYjVMWlV3T1dRVzRqUGxwQzdOdEhGRmhIRzU4b1Z5a0M5bkpUcFN6?= =?utf-8?B?Y1BrT2pqeTNnYWY0Q01hU25BRzhFcUFFSjdZSUI4ajZwS1VzTWxRTEpGQWcw?= =?utf-8?B?VFg5QnU1cWJ6VEQ3eDREckx1YnNBZkJSMjdRU3l0QUE2eDVXcEVIMm9Melpu?= =?utf-8?B?YThQY2l6TzdOVTk0QkRWeklrSWkrK1QyV2Q1SGdCZDdVRE1zRncwZ3Z2SHpw?= =?utf-8?B?YjlCSHhnQzJQZmFjUkxrbld1MURSeTVRdzhWa05KVUZVQi9sc2VmS013WTJ4?= =?utf-8?B?cUlkcWVLMWRMQUFneVRvYTd4dGVnSDBMSG5JbkY5NVhrS3ZseTB6ZnloNDcw?= =?utf-8?B?NWJ3eVNtMUNpZnQ5dXVENy9QYnJuNTJWcHVjVmx0VXZWZG1tVzV3WlR4d3V1?= =?utf-8?B?bXVaOVFEQ2VOUXR2MlFNT2RwUUY1WGlpbFRFRE5JMnpnbXl0bnUwTlg0cmpu?= =?utf-8?B?ZWtIb0FSZ3gzbXNqOW95QlB4bThYMTR5RzV1SDJSM0grMDRJL0FqcG9sTFls?= =?utf-8?B?YnErVjVxMHVwYy9NSnBBZ2tmdXFtSmkyRjZDWDQrQUxaRzMwbjNNd01FdlF3?= =?utf-8?B?V1VLYjBGNzNMaG01S0s0bXBNc2crQ0htZnQ3M1ZRUHZZYk1nQXVWRytEa1lQ?= =?utf-8?B?SnN0eE5UeTlIMzVicGxVUHhrcGhwQVNFTmZaQ0NjSHpFTnBUcWVhbFFuZUNM?= =?utf-8?B?SWROMHBVdFMxRy9Sd01Hd0pPazcrVDlONWJsSTh0Y2FlbHBJcDFXc0RKaTdS?= =?utf-8?B?ZWNIb1B3MktKSk9pTTZDODVWcjZkcUVnSzRjV0RQMTdvU0VPSnI5YmppRHRn?= =?utf-8?B?S3R3UGNIdXFiL2pFMGgwaWRNaWd5bUNXclRFU1ZyUk5sbXRmY1RFVm5aSHNs?= =?utf-8?B?OHFMeTJlMXVNSFVhNDZWdkl1NzFXTERKR3VYUzN0S0Z0dXJqUmZreG5sS3Zq?= =?utf-8?B?c2F0OHVkUG54a21EMGZqR2hwVlJIYWFRSlYwd0E1SWpZdElSLzY4alo1aVpV?= =?utf-8?B?TlNzMy96ZWRDUmdyclpBaXozZkFlVlBMQlhjSkxkbWw1WEkyNjBpbjNBbXZ1?= =?utf-8?B?ZEZXdWZHNTJhdGM1U0NJNmk2NGt2TGpWbXE2VlNtWkNwdGJxK29FaXBRMUFn?= =?utf-8?B?YUhUemQ1YjZsUG0yWkl5cmNYUWgrRHJ3bVpPdWptTWU0Vk9hV0wxU0djWWVI?= =?utf-8?B?WjBzZS9ZV1F1Z2orTi9oQ2JmOEtJempyU25rWFVhYXFNZk9MQXNrYVhFNkhC?= =?utf-8?B?M05PbE5laW1OMkV3STNscVJ1Q1hsaXJZNzJhc1BkYjZzdUVQR3lOZ0svWlUv?= =?utf-8?B?c3p0RjRSUVRMY0U0TDM4N3ZmOTBHaG9ZczJjVWJUblVhS2R0U1NzTFV1Tk12?= =?utf-8?B?cGhTSEE3TEVqYllZU1ppQ3lha012YTRyK21XbCtqdEQrWXA3bEYrUXdqU1VK?= =?utf-8?B?UnFMbnk2a1VxWWtLMU9HNlYxbVp6WUNTNFNqOWlkT1FOQkZUOE1IeXVqa29H?= =?utf-8?B?M0Y1bjhpQTJmRi92aGY1cFR3OWRobksrazNoUXhraWtzdUNiUXNOMktERGNX?= =?utf-8?B?b2VsTEJaSlI0Tis5ZUQ5WTRJS0FRdTZVK29zOEE1ZEM4aEMvMUVDVTBjTlVS?= =?utf-8?B?Q2krY2pERjdRaEpjSTBYVnlKNFAxYmV6WjhSVjBHM1E4YTlTQ0VpUWVUcllM?= =?utf-8?B?Wm83dXI4NllXOCtKdlBhU2NSYUVJOGIvbWpGQ2pIdCtTRkhvaG5CYzVYQ0dq?= =?utf-8?Q?A2Me64Uta2U3HHPPtkyGoS0HC?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 70018302-3c59-4d70-04c3-08db6bdbd14c X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Jun 2023 07:00:05.8418 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: JUEwSxdXehDG60WU7PWFFw2q9nawT36sx+l4+/IzWVlb2V9QxuzWKKf0CO3Mwt4Jzo4qWl+UrTQxx5BjRPvRQg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR04MB9568 On 12.06.2023 21:28, Andrew Cooper wrote: > FB_CLEAR is a read-only status bit, not a read-write control. Move it from > "Hardware features" into "Hardware hints". > > Signed-off-by: Andrew Cooper Acked-by: Jan Beulich From xen-devel-bounces@lists.xenproject.org Tue Jun 13 07:18:40 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 07:18:40 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547833.855446 (Exim 4.92) (envelope-from ) id 1q8yIH-00007N-GI; Tue, 13 Jun 2023 07:18:21 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547833.855446; Tue, 13 Jun 2023 07:18:21 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8yIH-00007D-DU; Tue, 13 Jun 2023 07:18:21 +0000 Received: by outflank-mailman (input) for mailman id 547833; Tue, 13 Jun 2023 07:18:20 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8yIG-000077-01 for xen-devel@lists.xenproject.org; Tue, 13 Jun 2023 07:18:20 +0000 Received: from EUR01-HE1-obe.outbound.protection.outlook.com (mail-he1eur01on2055.outbound.protection.outlook.com [40.107.13.55]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 7828a357-09ba-11ee-b232-6b7b168915f2; Tue, 13 Jun 2023 09:18:18 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by DUZPR04MB9784.eurprd04.prod.outlook.com (2603:10a6:10:4e0::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.39; Tue, 13 Jun 2023 07:17:48 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.039; Tue, 13 Jun 2023 07:17:48 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 7828a357-09ba-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=JktSPI1gaqu2aUO8xum3XVPqOFbb+1fdXi/k48fL0GMnkIwh40Gcq55YyQcyc/Fs74DSyUYt5b0uAdfl9B8GxnK9+ltbW16nCf1jBQW0uy2ob0+FYP8tTG0hDBdnDxoz1z8PeP4dcRvr1PQ8EnplBvIJzIo+VE4OqHZzdmcrSzl9cDpYdKafOliW8znFnrT0NJHkwt7qozBn9lb96vt2JXMoJoFUBYJNPfCzo94Jm6Z8cgkcUUGz9EbahT0IEAr2PS1K3WXR/p+2uzoSbsJ0h1aushSGzpqaDa1RI57KM655G45Z/bXFF+ztZS/R10ZbbKQV3IVUtyqGyNHfHDGLXQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=F531f/giZ3iCPJsfsXLG97Gf77R+b6XiuNGbz3dJ3vM=; b=UvLEhmC6UBDCr/irn/AZf0zrWJXDzrUTcD1KW9BhQDHAxY3YLXfzDB+f0YXYcvPmYyF7879aF9AOUHyMX53uHmpxuktsFG3gEzlyEQlaVJZYAy6E/IhvS8h3Yg2+GuR6n2u66bxIng9fd4flGxDsIwOGcTUSS0j0+64Lda2kMMnSY2ZcUPRHdoURVOCKVIY/boJDM7a2VxNorxPZz/PlskfODEPA/rtdtI0p/HRyibYq8qv64MqoZKmz2A00YiTKj9K/MrpkhsolGI1pp5RznhgswSl8o2pvr0S0pftv/D9glQhqapk0gYh0eYGbkET3TXlZqSFZoH+zycb2Ymz++g== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=F531f/giZ3iCPJsfsXLG97Gf77R+b6XiuNGbz3dJ3vM=; b=qABEu45vGSLFKcsrZYHj9D6Qeyperm6HjnC2/FI00993fW6xwenjg80L6ILyopbM+eZcEwGmFXo5NJ0Mj5VHc4WcihgzkNuSKgHJN9kSz4lU78vIc3lImuBwRY1MZIMaAOhHi1UWOKpw2/7YFkdrkcTka0hnDleulXqtJPoKM63KyFdPlK9TmLCRBW4BD50LAea5HJ0GJS0sjBLTOw7ZF9Dh5ELt/NwvRRbKlOkcwCZ74fcSj5oAJ2G5VwWiDIGwYg89FH0i8/ieoRtvWVALsBi2TxuIWTUHLOSKYUOPn0bm47v1467vFH/g5lciz0v/lWZ76eqRewk2EZijGQLbXw== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: Date: Tue, 13 Jun 2023 09:17:45 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [XEN PATCH] xen: fixed violations of MISRA C:2012 Rule 3.1 Content-Language: en-US To: nicola.vetrini@bugseng.com References: Cc: xen-devel@lists.xenproject.org From: Jan Beulich In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR2P281CA0064.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:93::12) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|DUZPR04MB9784:EE_ X-MS-Office365-Filtering-Correlation-Id: 738ed6f4-8b6f-477b-f183-08db6bde4a46 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: b9q9oN56XBKq3Za8+TMxeU5Us+/75Gf75pGb3gMvdP5lKKBejhlXrzm2xzygVsV6bK+NuLR76Kmd1tI6Tf64KC8yuVlOgX3SkoxbAg47+GCfBlBj24CHOKKacuyd2Sty6fhgSDT+vgbKhCyE0M8yiEkAKZRj30bYm5c9JlKmVoa+g3a3Kj+EACDI3NUMr82VXcgXezMMqDNNY8xn0H/F8v/EOkjRsKUXwBY3BcRQDpVl/MDiNS4iCKKQiMlnpOZsFjJ+JSZ5emYJJwQrEn3rm+WtbEPJ3FMpW+rY3OhDPfOSAxjHwpuAtUkSGFv3SxlXiEiat6JWJ+aXGYSpiknAuYr+SfxjZf7pERFob+FSOfnK9pML7FZGL0Jrf4pFnueEhNRInoRQYNBEiNfeyHS6lW+g1ceDEuif3smCSo8//16CjMFymgbhDMmRiswvflsKzbbmprrB28dzbrHxK7Bn2T4g6xX0UEI3+1O2GpkBiNw2IpCKg5z8nGEtQQiKcUfKwSH9yaaYXfEyAqHxMAjRhK+gwnnfVchoh0p5lGDfeDxMwE8B1ExEviCZLXvTPXP+wA9r3XYmU0kD3U+D+gp8m8IGPKBybLW60WpdWycknPkawE09uTCfEjCYTXfOz1jStVh9CnBrv2z4Nq0X4mbViQ== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(396003)(39860400002)(366004)(346002)(136003)(376002)(451199021)(66476007)(66556008)(66946007)(8676002)(8936002)(36756003)(5660300002)(6666004)(6916009)(4326008)(478600001)(31686004)(41300700001)(966005)(316002)(6486002)(38100700002)(53546011)(86362001)(6506007)(186003)(6512007)(26005)(2616005)(2906002)(31696002)(83380400001)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?QXBaV3o0Uk9CZm1IRTN5R1lsMUd3SDBrVUh5NjF0aExsVldvRHBiNWdHR3dY?= =?utf-8?B?TzVsMlVTUzZRK2lTbUZldWQxZytiblNmQkQ3SXBnV0EvTjJKZkN0T2pobzlz?= =?utf-8?B?K1RIa0gwSUNDWkdNRllkZnBlZmZtblg2WWxOckFLTHJ4YkRGbWVKb2pURlpk?= =?utf-8?B?akJuazk1d1NCajQ2NWZzT0tNbEk1d3lSSXlwZlVwUkxkMTR2aG0rWW54SG9C?= =?utf-8?B?dEZ3SnAwajBlSVIrLy8yVi8vQy9yK0w3UmdaZ3I3a1libFFDVVhyVVh1ZTZO?= =?utf-8?B?RjltWkloUCtEK3NheTFid1ZKRG1EYjZRbTFoMU0rQ1ZrS0FlOW82QVBESlF6?= =?utf-8?B?T2xtbFpiM0REMERjQjJYQVRlTzNPZ3djY3N1NFV4dzZXZ1NkQUxuQUd0ZGdT?= =?utf-8?B?Tm5OdWpJcTUxMDdFV1o1bVU2eXUwVUpXMlVKdXpMbnBON1ZhU0lXanl4UFpS?= =?utf-8?B?ajVncGlYMFlPTFdDMWMvcW1pbmVEaEU0aUxHVVh1bUpnOUlxMjI4TVp5S29s?= =?utf-8?B?ZFpZWDZITkhUTnhINkMyZjhWYURTZFhDR3k0RTlibnFKZHhSYnFvUHVqeUZF?= =?utf-8?B?UGRHVVdXU0ZYWWkyVHY2N2pXeDdtZ0tOK3prMnFGUGpLWFRWOGxXT3dVV0p4?= =?utf-8?B?R3dnNDRRNVZ1alJWVVQvR1hqWFhHWGdwTm5IN2RlUCt1VFFyL1ZOOGNCNCt0?= =?utf-8?B?RlpDT1BzTzlReFNoRExmY0ZCY1RyY084U0NMMlhEQmhUSmg0MnVCcHJyQW45?= =?utf-8?B?T3ZkUmZvaks5TmxUMVhNbG5xdFNMNnZtZjE2ZlM4M2pnYlNpc1ljRW9yUWF5?= =?utf-8?B?R1hVYzdjeXNPYUVyaFMrTFVpVllsZ2hNVGV4RGwxM3hrOTJ4ZWxvMXdqcnY2?= =?utf-8?B?OWk1SjlxWGh6Z0FhZHljS0ZxRUpHUndhTWNUeEpVeElsN3pVVFIvZ1V5NGMy?= =?utf-8?B?bmQxZCtKS29xb2hWYlFZSXVicWJ1TWJrTWRSQWZJRzYzQVZvdk5Kc1lQUTha?= =?utf-8?B?TUljQ2QvMHUwbGp4YUEyZWFnNFhXSThYclR3VDBUelVNMElFanJMSmV6bzhC?= =?utf-8?B?TkFaZjBUUjFFcSttNkM5Ry80UlZSd1JaTjlSYkp6NHBTdTdJRUdaOU9xWDJX?= =?utf-8?B?bG9ncnFSSU84MGYrVGUxd3J5Mk4xSHA2ZU9VcUxxUXlId2Fjejc2UmxXa3Vu?= =?utf-8?B?UHNTaUhvVkpVSmt6NFFUUURWQk1IMDlVRU5Xdi83aWxpeGtIc1Rpd1VoWW5H?= =?utf-8?B?MXg4SHI4M01CZUZBUFVqY094Q01CeExLVGN1WlBWZmR3RmFxYVlzcHdRNEFP?= =?utf-8?B?WFlVK1BkY2gxM1VEQWVwdmtDakRKY29oRkU2YkIrc0RjS0NRcTBxYUxsTXdz?= =?utf-8?B?Z3d0cU11eE0wbCtxN2tkRnJMLzRxMGJrU2szc2hiU2dISGF6T3RRSlN1enVn?= =?utf-8?B?WG1oeFBTMG1tbjFCSHd2SWNPYzBOMTZ2VE9MNk1LeTlBcTNYSjkzdDNWTXZx?= =?utf-8?B?ZjVkbXdLNjI4b0Rwc2Z5Qm5XNEhKRE04ZXRLYlh5eXMySVQzQ2RuR0cvb3Vs?= =?utf-8?B?K05CalJmNFBQNWxQNTdqbjY5Zzd3RWcxamVmdzZMZTBoYkNEc3RZTEZxbHZJ?= =?utf-8?B?dUtSdWtSMlFRYXdERzg5Ykw4OWNmZ2NZOGYzQ0cyY3pKMmZkTGFqSjR3aUkr?= =?utf-8?B?cVZDeWpLYjR2SGl3ZmpCREg5S2puamVtR0JJYmpXNVR2aXE0c3ZzaG1GMTRG?= =?utf-8?B?YkpzLzFzZGRBeDJNSFFBZnkwUVkydzZmZVdDSXZjeldTc29XVk1MNktqcTVD?= =?utf-8?B?L1hOU0V0blY2cU1wamFabDF1aDFrNXAzZHdVd1djamRwRjlBN2Z6Yzc0UnJM?= =?utf-8?B?Mkx6aElselJIOHZESDZlTG5Oc1JKY29RcERIZVdXOFdWYzZRQ3UySVBoZVFT?= =?utf-8?B?Q295eW1MYWp2SUs4bWVCYkoycU05R2V5b250NmVZMzdGcVgrSCtZN2RrWVFl?= =?utf-8?B?c05hMUNjZU42TjM1d1g2QlhqTHpSbHU2eDBja1pRbUdWQkhianlSdXRSUzlK?= =?utf-8?B?NWp3ckNISG1rOEZYd0ZENzljQmdxVElaN1JzQUdaRnAzSHBLanE5dnpuN3NK?= =?utf-8?Q?KyadE5JWHpqbFvHfH9w/kopG7?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 738ed6f4-8b6f-477b-f183-08db6bde4a46 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Jun 2023 07:17:47.7458 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: SP3+w5pQ88x0f0jGcYK+vEdfiYoJRm5KJktqRhFVYIFNQroSsL51Xgm00JaCQSG7NKYBhCUgRnpo42Z3NlkKlQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DUZPR04MB9784 On 12.06.2023 18:10, nicola.vetrini@bugseng.com wrote: > From: Nicola Vetrini > > The xen sources contain several violations of Rule 3.1 from MISRA C:2012, > whose headline states: > "The character sequences '/*' and '//' shall not be used within a comment". > > Most of the violations are due to the presence of links to webpages within > C-style comment blocks, such as: > > xen/arch/arm/include/asm/smccc.h:37.1-41.3 > /* > * This file provides common defines for ARM SMC Calling Convention as > * specified in > * http://infocenter.arm.com/help/topic/com.arm.doc.den0028a/index.html > */ > > In this case, we propose to deviate all of these occurrences with a > project deviation to be captured by a tool configuration. Here "propose" is appropriate in the description, as this is something the patch does not do. Further down, however, you mean to describe what the patch does, not what an eventual patch might do. Somewhat similarly you don't want to use past tense in the title, as that wants to describe what is being done, rather than describing a patch that has already landed. > There are, however, a few other violations that do not fall under this > category, namely: > > 1. in file "xen/arch/arm/include/asm/arm64/flushtlb.h" we propose to > avoid the usage of a nested comment; > 2. in file "xen/common/xmalloc_tlsf.c" we propose to substitute the > commented-out if statement with a "#if 0 .. #endif; > 3. in file "xen/include/xen/atomic.h" and > "xen/drivers/passthrough/arm/smmu-v3.c" we propose to split the C-style > comment containing the nested comment into two doxygen comments, clearly > identifying the second as a code sample. This can then be captured with a > project deviation by a tool configuration. Finally I find the use of "we" somewhat suspicious. Who besides you is it that you're talking about? Also please don't forget to Cc relevant maintainers. > --- a/xen/drivers/passthrough/arm/smmu-v3.c > +++ b/xen/drivers/passthrough/arm/smmu-v3.c > @@ -1045,15 +1045,18 @@ static int arm_smmu_atc_inv_domain(struct arm_smmu_domain *smmu_domain, > /* > * Ensure that we've completed prior invalidation of the main TLBs > * before we read 'nr_ats_masters' in case of a concurrent call to > - * arm_smmu_enable_ats(): > + * arm_smmu_enable_ats(). > + */ > + /** > + * Code sample: Ensures that we always see the incremented > + * 'nr_ats_masters' count if ATS was enabled at the PCI device before > + * completion of the TLBI. > * > * // unmap() // arm_smmu_enable_ats() > * TLBI+SYNC atomic_inc(&nr_ats_masters); > * smp_mb(); [...] > * atomic_read(&nr_ats_masters); pci_enable_ats() // writel() > * > - * Ensures that we always see the incremented 'nr_ats_masters' count if > - * ATS was enabled at the PCI device before completion of the TLBI. > */ > smp_mb(); > if (!atomic_read(&smmu_domain->nr_ats_masters)) I don't really know this code, but the use of inner comments looks unnecessary to me here. The same could e.g. be achieved by * unmap(): arm_smmu_enable_ats(): * TLBI+SYNC atomic_inc(&nr_ats_masters); * smp_mb(); [...] * atomic_read(&nr_ats_masters); pci_enable_ats(); (i.e. writel()) and it would avoid the somewhat odd splitting of adjacent comments (which then is at risk of someone later coming forward with a patch re-combining them). > --- a/xen/include/xen/atomic.h > +++ b/xen/include/xen/atomic.h > @@ -71,7 +71,10 @@ static inline void _atomic_set(atomic_t *v, int i); > * Returns the initial value in @v, hence succeeds when the return value > * matches that of @old. > * > - * Sample (tries atomic increment of v until the operation succeeds): > + */ > +/** > + * > + * Code sample: Tries atomic increment of v until the operation succeeds. > * > * while(1) > * { Somewhat similarly here: I don't think the inner comment provides much value, and could hence be dropped instead of splitting the comment. Jan From xen-devel-bounces@lists.xenproject.org Tue Jun 13 07:19:27 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 07:19:27 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547838.855457 (Exim 4.92) (envelope-from ) id 1q8yJK-0000fG-Rr; Tue, 13 Jun 2023 07:19:26 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547838.855457; Tue, 13 Jun 2023 07:19:26 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8yJK-0000f9-Mm; Tue, 13 Jun 2023 07:19:26 +0000 Received: by outflank-mailman (input) for mailman id 547838; Tue, 13 Jun 2023 07:19:24 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8yJI-0000Yt-OM for xen-devel@lists.xenproject.org; Tue, 13 Jun 2023 07:19:24 +0000 Received: from EUR03-DBA-obe.outbound.protection.outlook.com (mail-dbaeur03on2062e.outbound.protection.outlook.com [2a01:111:f400:fe1a::62e]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 9e208f88-09ba-11ee-8611-37d641c3527e; Tue, 13 Jun 2023 09:19:22 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by AS8PR04MB9064.eurprd04.prod.outlook.com (2603:10a6:20b:447::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.44; Tue, 13 Jun 2023 07:19:21 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.039; Tue, 13 Jun 2023 07:19:21 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 9e208f88-09ba-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=hl4AzljfPS4oOwzAEbZhKttMD7zHTU9D8VrplbJDvUVjsxe/pU6s37XSTTonXc1MZr5Yex9Il1CeWjYWKFfaq580nFZDbLknOJQjLWjlWUBAjExNeG2EIB0AR8NYYe7NCToC7hPp+yD4a2qaLfaRA03G2+dDR/71XlhwGhoMElOmRjtu+bGDjmAVdlnAFoFzbXX6Ng+3PqlBLK/POf8xbBEO3dgAZnKUJsEmebK4vIiVypXdobAXZvb1Li1eYW45/U3zT/sAmnKqCfiGc89JWeWcD2zuQVOIxaqBK+CmBSWgKicyG2CoVJGjnb37jB4bskvBgPcIQWBAf7IoAnjlkQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=TUDooqjYHTVu4kCN5wcFl08JucBkTtWbVL6aZIIkCqw=; b=Lr1GQ5C378vRAzTtcusEdG/lSTWd57+XpUGKMOxW7nQHdVmUQpiRqQZBDFaHdldK/6htU+ua9v0bhlWc8QeKeYyNVIFdLVMXsi4zepsPKQAtl98gUSAqH3C2nmAaiiA75r5sM0olATPR6KVBhdl+NdgA/W+pduGYAn9BA27/HROYPDqGzlB6nVuvk/4zOQNzoj9Wv/rmHuEppSfVSKo8LUkFwmu24o5t4+rgYjUoASitUtbpLFth6iAgknc7dpZG2+n+1JQz99cikJ6+IveOPvssdd0e0D2sgSQw6mnk3s5vzGv9vK0IRsov02uAqJO9rysSAzhmyrYD9woQM1ibOw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=TUDooqjYHTVu4kCN5wcFl08JucBkTtWbVL6aZIIkCqw=; b=Z4GTrIwp/T2YASlFxqNBXHcCmwutDTXu3PWRUE7ZbYJ1FkIkSijAUxAfHvvk+tuYf6R1+HP2+htNgnUfld13r3n0usFuDoTdNnyU0ktA4frr86aRXJaoNpsIhUpt1I4BlkZNqBUgUVNtgEtfjvJdSfWUPmHfKmrdJdZf36KxtE5JaOW42RR4DIZZOF6baWcaoWnq2TQ7/91kbbFawE2nj3G+RPyYVpZ1x1fg9st/1gjFpYumblY1q72DqG4BmlSl8A+h00ILeZ9FQfIiKPj4mjcB5OfNRCx5yWwNtvWEUp8TV6eR+oe9HKtxPuQKKtWsE2wsVjpjMRiFOzSNLDn0ww== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <75970c54-1109-e534-a375-082c5c188cb0@suse.com> Date: Tue, 13 Jun 2023 09:19:19 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v3 1/4] x86/spec-ctrl: Use a taint for CET without MSR_SPEC_CTRL Content-Language: en-US To: Andrew Cooper Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , Xen-devel References: <20230612161306.2739572-1-andrew.cooper3@citrix.com> <20230612161306.2739572-2-andrew.cooper3@citrix.com> From: Jan Beulich In-Reply-To: <20230612161306.2739572-2-andrew.cooper3@citrix.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR2P281CA0096.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:9b::19) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|AS8PR04MB9064:EE_ X-MS-Office365-Filtering-Correlation-Id: 454de083-8d6d-4f74-8f42-08db6bde81eb X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: IB8jfba9ltr373xs74gMQMl6p4hk3JSzPk0iA7onVbyM5B6YKzu09ZzVPYkuNBfQTuhYWdkvlovBfX2Fy5qdAdJuJso1xgCKC73CfkglIIjxMxbtr01Wii4wIOh9CCQvjnJXXWSGW249EsYvY1ewvZHJgbTP9IJxoUZOKBke605IQuruu+mRdWC6wxYwNn14cpsj7mlSiBrkTAN+1xaq6JfuN56n4fDaNKexpDcOvUfKj89EKQVnT0h5JSmb2Lg7zMKRoJdBwEwEdJwQRcnrGMl7uZhCGKcC57v8rLFJX7JN3DVpfryX0Xf6sLfcYrVC8nr9M90R/UdXLRmhgWVi72/iFl9VSpu3pk+6HEMcxWtq5E3qhpLEgMhE1uIqctsVY2jpNM30sxbI8nzKhdfy2p4xtjvqWgsoSPcaoDIpf3/ysz4XaCy7QNGzqx+GZXxYSGz6cdE/RHpzZQzjXxJjGH2bFXcK/kFVA5jak3zDq7cMT0BAEP3iasLnO6x9w97TuvqaxdQgUgUN7RpAz62QQ7z2NBANbaQvprGvbGsg8d8ZKIHAOipboSvp6GVewmclKixOMaT60VZErS9BKcXW7QOLJGYUXo9sR4zFy/N7EjXxu58wnQAITJ/4VveU1DQBlQaSjka1Ir+yD1vavbgOBA== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(39860400002)(136003)(396003)(376002)(346002)(366004)(451199021)(31686004)(54906003)(6916009)(66946007)(4326008)(66476007)(66556008)(36756003)(186003)(478600001)(2616005)(2906002)(8676002)(316002)(41300700001)(31696002)(86362001)(6486002)(6506007)(558084003)(53546011)(8936002)(5660300002)(26005)(38100700002)(6512007)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?STVMMkpkME94d3Z1Tk8rNjdYUlFkblV3Zk5CdVMyeHl0WXd1aG5CakViTWhq?= =?utf-8?B?OTdrRzVGcVkvUzRWNGFFcW9Wd3BkUUZFdDNNMStOVUxMUzBqREJwUVdKUVll?= =?utf-8?B?TWVQMTk0dEN1Ujl1ZVdkdE9GZUUxMXk2djNhTk9uWUFjMFg0MEhjV2xhdmpt?= =?utf-8?B?cnZFeTFLOWJmbjZIdCt0dnFkbm1iVjBRR3hwNWdzOVF4ankyc3UrSHZ4SE4x?= =?utf-8?B?dDN1bnk0Vm5JWWNsRTVuTzVsZC92Z0tHcmNybjZrUUxOeElIV0M5NTZ5Q2Nj?= =?utf-8?B?NUZBY2E5alRJYXV5QzFFV05QRlU2U1RzaHdoTHFVcWJOMVk0VmxobVpKZkp5?= =?utf-8?B?U1hEbkgxNzFncUhHa3p0N0trb1RPZ2lwMEZKdEJDS21aaVF4OXVlRHhaT3Uy?= =?utf-8?B?anBPdVZNQ1hzZUQzeHkvRVkxTnlITzZYamN5S040MjMzWGtFR0huVkNUMzBu?= =?utf-8?B?c2E5ZVZQOWFVbGlxb3Y1elJBd1pNRzVVR3RLU0ZtU0tUOXVpSHFlNnJTSUs1?= =?utf-8?B?SFB5SWhQZERrOEcwQW5wK2RJeUM1dVBvS202SUx3L2pnbkZGREJMYW4yekZn?= =?utf-8?B?eWNGc0RiKzZ5c0Z0c1MyQkszSDkveFJjZzNtMzlScE5mYnVpZS9ZaHM5UStr?= =?utf-8?B?NlUwSmdNSjBoYnFPc09jSmhmUEV5dkJoTUg5R1VTNFowVjFXUjBUTk93RlFt?= =?utf-8?B?WGRPRlc5RGt0bjNBUUlOZ0JNOFlsLytCaHEvTm04UUZUUHE1Qno2dUxtK0dZ?= =?utf-8?B?NUVSRkNoOVFVRlVhL29lM0tOTXpZU2kydnp0M1NWWm9RNGxCVmxTd2pXRitF?= =?utf-8?B?NEJLNG5IYnlxM0MzRHlSb0dXNElEdC81K21IVE9WTFlvTFZUNzE5RnlEb0Jv?= =?utf-8?B?KzR1K1lpZEVRUzhYNm1TbXEzWXFGY1Z1UGdLRlJMc214YjNLcUt3WS83WmFK?= =?utf-8?B?dEtFRDloNWh4Mk1qRUN2QTB2b3FsUmdtVkVPc1Q2WnErNU1Td3J0Ykovd01O?= =?utf-8?B?TDBodXQvdDFrVFZROFZ1QW4yUlRRTmVNNTMxc1gyanpjSG1FWlkzRFRsd2sz?= =?utf-8?B?cHI5MGN0V2Q5NEVDTjlMdWU3Zkh0bnB3RDBXNkF5YmNoQzQvcGo0Y1duM2p2?= =?utf-8?B?RnhkWUVHcmJrRC95UE9aSWdLNEJUN3pYTzNPUmxkbXYvSmlEYTI1RjRMbnpo?= =?utf-8?B?VUlZNHNwdTF1OC9jaDZMZG9CRXo3c1czZ2Z3Si9MMnlNUDlvRis2RVZQVkgy?= =?utf-8?B?YkpZdnB2ZENXcGxSdWdyUzVqeTh1Y045TlpiUFJYYWtjdGZEMU8vajloUVdL?= =?utf-8?B?NXBvSXY5VGN5MTdGMmtPamRUdHdWVHBZWUZFK2JlV0dXb0RPb0tma2ZJa3Ro?= =?utf-8?B?MHRyVVJacndLbFcxS2lUNmdVZFdNOHNObVhWR2dFTjJ4TDJoM3JDZEZMZmx0?= =?utf-8?B?dTdqTGhwZG9yZk93czhOZjNwSGQ1UWlnS3ZDK3pZLy9ReGRkc3RWclptbzJq?= =?utf-8?B?VEpsblJiTnpUakgrUEVhM3UrNnNhMUk5dHJiaDVxMmtOUU5KNkNnYTZBbXpV?= =?utf-8?B?VUpMNGcyeHRrMXdlemRYQld0bll1RkdFbkhudXVjd1B1OWNWSVNrQjFQZXQ1?= =?utf-8?B?OFZrMkVRY0svNm5rT2NFUitkUHVRVnJXRFRSNERCZFVzZVV2S2ZxSEFqYmdq?= =?utf-8?B?aVBpdnk2RlNxdFRnMllsZXc2YWYyVTM1bGR2WlAzbmRJdmoyeWJOK0lZR0VU?= =?utf-8?B?bDJscHIzNlRXMWV2SFo2OHNjWDlGRFNPbWw3MmFWeVNXZHE0NiswUXZycFcw?= =?utf-8?B?dkRGL3lQaEltYzdJTTRlQU1FM09CUHpSeUV2ayszOGdsdVVmUWNWVDhtd2cz?= =?utf-8?B?ZlQyaExZQURrOGgvRWkzTG50UGNIcTdlNTVDSW8xK0xZTmFVM1FXUVBWT1g2?= =?utf-8?B?aU82bzlzQXZraks3ZlFkOVBkUU96bDI2VFdqcDhPSmQxRzd4SmNSUUNXcVMx?= =?utf-8?B?bkJyUkJaNUlHalArSUhSd2tueW5xNm01MTlEWDdmblQyUm5kaDRqZWhPZUEy?= =?utf-8?B?Wld0bFNpYkpmZDVVWStERUlHL0hZV1paWlhPTExiaU14WjgwOFYweDNJTk9D?= =?utf-8?Q?w6UoRF0EBX8JTlJ9CQORcZ4mJ?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 454de083-8d6d-4f74-8f42-08db6bde81eb X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Jun 2023 07:19:21.1525 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: nHLYoJ/0BIGjbq95HoKciFkXXFVhhhnnDG5P9/Xt+XAqSErmnhb/1s6qENCm3w1FYW1z5v2XxB3WE4vmmhBgpg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB9064 On 12.06.2023 18:13, Andrew Cooper wrote: > Reword the comment for 'S' to include an incompatbile set of features on the > same core. > > Signed-off-by: Andrew Cooper Reviewed-by: Jan Beulich From xen-devel-bounces@lists.xenproject.org Tue Jun 13 07:29:21 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 07:29:21 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547845.855466 (Exim 4.92) (envelope-from ) id 1q8ySn-0002GQ-PV; Tue, 13 Jun 2023 07:29:13 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547845.855466; Tue, 13 Jun 2023 07:29:13 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8ySn-0002GJ-Mg; Tue, 13 Jun 2023 07:29:13 +0000 Received: by outflank-mailman (input) for mailman id 547845; Tue, 13 Jun 2023 07:29:12 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8ySm-0002GD-Kp for xen-devel@lists.xenproject.org; Tue, 13 Jun 2023 07:29:12 +0000 Received: from mail-yw1-f171.google.com (mail-yw1-f171.google.com [209.85.128.171]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id fcf0716c-09bb-11ee-b232-6b7b168915f2; Tue, 13 Jun 2023 09:29:10 +0200 (CEST) Received: by mail-yw1-f171.google.com with SMTP id 00721157ae682-56d1cb6a607so25707457b3.2 for ; Tue, 13 Jun 2023 00:29:10 -0700 (PDT) Received: from mail-yw1-f172.google.com (mail-yw1-f172.google.com. [209.85.128.172]) by smtp.gmail.com with ESMTPSA id w2-20020a814902000000b0056d32a330bcsm895922ywa.62.2023.06.13.00.29.08 for (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Tue, 13 Jun 2023 00:29:08 -0700 (PDT) Received: by mail-yw1-f172.google.com with SMTP id 00721157ae682-56d1cb6a607so25707267b3.2 for ; Tue, 13 Jun 2023 00:29:08 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: fcf0716c-09bb-11ee-b232-6b7b168915f2 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686641349; x=1689233349; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=gKEzJjzBKla4S0x8jxwIAxVSx314J/aF9PC4BBXNBUc=; b=XWrf7DdFfOoG8vPLQ9NlQQBOCjMZqF5ZkWcMXkCrdkiLilzftB0x4pUZpJVsi/v7TW 7RZkbpdbBn6WFcS/YbVvCpiIoG2eZZJsUak5wJ/rmrkY13NTI6eOZ4tV5E80vrE1ekn+ Ci1R3g+o+KFLKnRjHg2ALlSJdVG2cdecOz1JtuRvmNahQofBayTun0K3kQwesXgMsGjc oOikihog7N3zzG2gN6CO3NR/R/yNIEb5buCL6jPFBYwPqCyEtuSmYjiOj+Cr8W/ZS9SA ZmlxnnE2nzifhLeN4zbYAGVzCWKsCeJwFTwfVkRxWF4P4rHDGWKG7qH6fBwUAMtGGp+Y Pr3A== X-Gm-Message-State: AC+VfDy6ULsFbEsh2Nd1GyudRMP/5gNiX6pKWy8voeDqtx07F/snVbwR OTxy/D6mZp5YDyvLoOf9vR+hXaYI5OSZBQ== X-Google-Smtp-Source: ACHHUZ7So6tlojidepERRQKBiXdEabRBpIKTvR4h89AKxdh9O9NzdtzntrbILKh5ac6LnQ5P81SVSg== X-Received: by 2002:a81:a091:0:b0:56c:f8f1:eed5 with SMTP id x139-20020a81a091000000b0056cf8f1eed5mr1120210ywg.6.1686641349543; Tue, 13 Jun 2023 00:29:09 -0700 (PDT) X-Received: by 2002:a0d:d611:0:b0:56d:ddc:cdbb with SMTP id y17-20020a0dd611000000b0056d0ddccdbbmr1077781ywd.25.1686641348561; Tue, 13 Jun 2023 00:29:08 -0700 (PDT) MIME-Version: 1.0 References: <20230612210423.18611-1-vishal.moola@gmail.com> <20230612210423.18611-26-vishal.moola@gmail.com> In-Reply-To: <20230612210423.18611-26-vishal.moola@gmail.com> From: Geert Uytterhoeven Date: Tue, 13 Jun 2023 09:28:56 +0200 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: [PATCH v4 25/34] m68k: Convert various functions to use ptdescs To: "Vishal Moola (Oracle)" Cc: Andrew Morton , Matthew Wilcox , linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Mon, Jun 12, 2023 at 11:05=E2=80=AFPM Vishal Moola (Oracle) wrote: > As part of the conversions to replace pgtable constructor/destructors wit= h > ptdesc equivalents, convert various page table functions to use ptdescs. > > Some of the functions use the *get*page*() helper functions. Convert > these to use pagetable_alloc() and ptdesc_address() instead to help > standardize page tables further. > > Signed-off-by: Vishal Moola (Oracle) Acked-by: Geert Uytterhoeven Gr{oetje,eeting}s, Geert --=20 Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k= .org In personal conversations with technical people, I call myself a hacker. Bu= t when I'm talking to journalists I just say "programmer" or something like t= hat. -- Linus Torvalds From xen-devel-bounces@lists.xenproject.org Tue Jun 13 07:32:27 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 07:32:27 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547850.855476 (Exim 4.92) (envelope-from ) id 1q8yVp-0003kz-8u; Tue, 13 Jun 2023 07:32:21 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547850.855476; Tue, 13 Jun 2023 07:32:21 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8yVp-0003ks-50; Tue, 13 Jun 2023 07:32:21 +0000 Received: by outflank-mailman (input) for mailman id 547850; Tue, 13 Jun 2023 07:32:20 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8yVn-0003km-UG for xen-devel@lists.xenproject.org; Tue, 13 Jun 2023 07:32:19 +0000 Received: from EUR04-HE1-obe.outbound.protection.outlook.com (mail-he1eur04on2047.outbound.protection.outlook.com [40.107.7.47]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 6d37af9f-09bc-11ee-b232-6b7b168915f2; Tue, 13 Jun 2023 09:32:18 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by AM8PR04MB7444.eurprd04.prod.outlook.com (2603:10a6:20b:1de::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.29; Tue, 13 Jun 2023 07:31:50 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.039; Tue, 13 Jun 2023 07:31:49 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 6d37af9f-09bc-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=KB595KedDClevGbgX2bzwKX4H+c5GKNIrWlRlHifA/eGYs4HuZoUO/CZKjhKIVQY2OYQb1zPamMpRExalH4nGld9U0yvOb/wwuDgIQUf9OIWtdvaUrk8X1Sh8PsoDoNe/kvhh86+gNxRii/S9sklvnIvf7Q2S+0CaDq1J5CP2Jl8MK9CEhAOaJJdA77BXo74UGfbCaiXfngslxR6lcBNcs2f4aHs0MKZvmPSBew1WZZfWxGS5dVWIDK0iPR1sVwQIxRDHff775wq6Ve/cbZpMoUON+9d7goAMGHD+JnyzcISvFM/KMlOBa04DxT5w96vIFdraAS3VlF/30GLq3zNzA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=T1pUrtbblts4fDfKa1wal2X24sd24GLC4UFvG/Zmklo=; b=kNOk6mmieeFKZvV/e4ad3xtDsCabwDssN2XDfQByh1rH3VYhYnAr1bEKpDpZz1ad7FV1Lub49gZNVNxZyhLn5hWH/A0DqJZweu5oFpeGVBrSf8//oi3O2t8zWgbUfEXLLxYP665UbaA3fOu0nt+mq3JQNVUM+5k9zK06Awix5An2WLQPyxd78/z2dGm9B6UPU04PAxwq2u6Z8RTkXZ7fRNAkzRvVg/NAhOjEb/UKhytDJX3mYqNokyvtWQqa5weAB355YSDF0hCivSaaVsjzMtICt/MR5hLP71x8uvbJeIyJHUIHtQw7aKlDvViSNC/ZABEQpHbdgqp3UBripUbugg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=T1pUrtbblts4fDfKa1wal2X24sd24GLC4UFvG/Zmklo=; b=nb5OBeOeHVl/W1ruc9/fLuSg/VaUTAewBuUmwEGywxjQKuQcDVUS3ELlUdR0pyrU4sVqwv9vgVUFfQ+DQErD7NYiEy1ieBxpsQvHqBb0euF5Svyck9x89Xs56egijjhWl2nLyIl+t/82GzsSCx64gWPxCzSlBNc1WeuXGYBgcfmRghTSXel3mQG0wCMRUsGLAxWQuRaDPBIJDI/qgII1HhKlCa13815634vUUl4MOGDLj2teQXSp5qVkTpfgVmSs+ipneXNvA/31rJ4jD7HvMIuARB6GT6pHZqaEN9jt6BbYJsIHtuZW/xDUi7UbHZfznlC1iX1uWnFngYu2GFOiCA== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <7a0773e3-450c-4744-ad2b-689102ccc890@suse.com> Date: Tue, 13 Jun 2023 09:31:48 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v3] docs/misra: new rules addition Content-Language: en-US To: Stefano Stabellini Cc: julien@xen.org, andrew.cooper3@citrix.com, roger.pau@citrix.com, bertrand.marquis@arm.com, roberto.bagnara@bugseng.com, Stefano Stabellini , xen-devel@lists.xenproject.org References: <20230613034456.701654-1-sstabellini@kernel.org> From: Jan Beulich In-Reply-To: <20230613034456.701654-1-sstabellini@kernel.org> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR0P281CA0210.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:ad::14) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|AM8PR04MB7444:EE_ X-MS-Office365-Filtering-Correlation-Id: 5791c3ab-6bbe-425b-6df9-08db6be0403a X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: oYdcAQq97rUC4lKt2r2D7ed3ejHd7xP2+H/M3AsgU1bZZkwnwKYMqxCahgfcq8eB7vhLqdqaxdHILH6soYOlaF4ZdGPPZkUloxKAIQ3CE2w6EMOvzQwIR0nPx3qpW5jMlob8cHXzgULDply5J3LyPuC0521RFo2LWiLtDTT1HSq9eDPYEYX3qzgkgMa6xFKv58o0jm+bRBkiBLdWJHcja6tBUDK+XdeY6HeB5/I5RBkxeCX10gzZLc3/7fabr4jOxZ8NudwBwHBrL7nqdoHECfzUvShPsZZvatSvPKmSDxJBWNMiyfDIF6XTSz8mztv8SJCbjFQH1JyINhsletfO61fJFmi4i/ZdtDyYKeHbieAaPdMTxXaBL2hFfwEY5QmsZHAvrFXzvwY98seMS4AUDu8JNTVRPSNl5ntMXSU6Ju4sZ+6piiikuDJsSdOxKmtBasioBTkxP+Udna0/w9niX9UwA/IRHhOsupy9BXNYP6kzEebGYUiGfxbh24/6SB6+EbIHLTfabnY/EYrk3HNZSOAETHQqIXXT7L9oz0eB7PVdyTMZIJYtO0K65HAhkzu2TS438sirjNOKQYf0Y9naerC0ZIl6i4bUGjwP3f+EvJ/nVIpuvI+PsD09MpF1MuIP67VZvdO5b93+DXJ+XXjSuvMMqU7MGdeurogCCZkNKd2Hw1jQjuXlUgDEB2sYTKjW X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(366004)(346002)(136003)(396003)(39860400002)(376002)(451199021)(86362001)(31696002)(6486002)(316002)(8676002)(41300700001)(5660300002)(83380400001)(26005)(6512007)(38100700002)(53546011)(6506007)(8936002)(66476007)(36756003)(66556008)(66946007)(6916009)(4326008)(478600001)(186003)(31686004)(2906002)(2616005)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?SEJQMFBKaGpVOWJvRjc5VHljOTk3elB6bWhxUTJPeWtWVC9rbUZpeFZXNHpv?= =?utf-8?B?b3E5enk1V2krQ3BOb3g0VDludmJPbmpFZnMwcmlTUnpvK20vdDNMZDlTVWhJ?= =?utf-8?B?Yk44N0F2NDhXUDArd0lXbDd6N2thaEU0eWRSMUxvR3JZc1d0TVlyS0RQanlJ?= =?utf-8?B?Y0wzT2pJdjJGZUd2c0tJeTF2cDVvcFF6ZUxHaGdMWXhweE43YjZkZnJ4S3lI?= =?utf-8?B?dEJaZmxGSk04SmFEN3RTZVdTR2hhdnJxQkszVG5rWmpyWWVSaVB4T1ZHQmRD?= =?utf-8?B?NDhyRy9kaFhMRnY3RTFCM2RWdnowbnJYQmdybU13S1I3WStnSmlKeW5uUGdF?= =?utf-8?B?TEJ1a1UwaEdNQlR0ektoUGcrZ1dQOFM2OFdNR21lRDlpT1hDdFBCMjZKbGU0?= =?utf-8?B?NlIrS3UzMVduM2ROL3pvV1FNeU9UUzV3ZEg5YUF3R081OE8xK0VPS0NFQWpV?= =?utf-8?B?Ym9NRG1SbkZaWUNMQW90dHJlSURrR3lsbnlqSm1oOUNvb2RzV3YrSE9nUHh4?= =?utf-8?B?YkdTUENNQlJFYlFWOHNzbGdndlJTeVV1ZCs4UStVRXBtbFk4dko5YUZwQ1Vk?= =?utf-8?B?bFBuclhhQnFnT0lLNmoyYnFrWjM1RUFtQ2F5eGYrL0xhdzJ0cEZQVjlVeVJ1?= =?utf-8?B?dThGWGJFem9FMkFYU29sL045b2R1SWVOT2pVMEttYThDTnlQWFlJUm8vcW9G?= =?utf-8?B?VElreFhJOEkvSW53bjgzSWVhekF1emQ3Z3p6cjJ3M1d1MDRKU1VLcFBjSGJt?= =?utf-8?B?bkREVkpPb2g0T2w3STFNSFVYN0w0TVA0UGVVM3VEaXhCTlRjZDZWdzdVbG43?= =?utf-8?B?L0plak9ZZ3VQSlFSekN5OHZRNzJSTUxsVVZEY1BQci9iZlpRZHl3UnNXQnBP?= =?utf-8?B?cWFYWWh5aThpU1ZuckhHNGlGZjhwYkRxY1EwOWVlNENnWm00ZlYrMkE3MEc4?= =?utf-8?B?MTgrZnUwN0RjUHhzOHBNaG1EV2pTRDFFVkVhQVozWGFoK1lQVGZHUFV2cmtt?= =?utf-8?B?TlgwSEkyZkMrNHRidnVGTDM0aFpXSHZLMGI4aTRCd1BKZU5kUmYrajN4SU5Q?= =?utf-8?B?bWxvaVpNWk1oQmNlRWRqSVVmTGx3S2k1VzhMUkRkdmNDVjVSTlRwV0tuUFFB?= =?utf-8?B?NE5GM3pMdU5oL0VjcHZkRVBMMnFwYnR0WEc2VXhjVlNxTzFKZXEvbTViY2Yv?= =?utf-8?B?YXR3UllhZnJCZVMzbDB4QlhWd3ovWTRLVlhmUVRka2hzMTFlRDg5aUdRYURB?= =?utf-8?B?UmRKZSsrWFI4SExrT2VLQTRNVXFwNTkrclhkWnpFRXcrOUVkaTdhanFZcVFY?= =?utf-8?B?MmZVWDV6VlNIYm0zUC9LZzFicnpBa2liTnRaak56UWxrUVpKQmFnbHNobUh5?= =?utf-8?B?d3VBSGZJTUR5Y3QraEhZZXZVM2xXT2xVRjlWSHNNNnp2SnJjcGQvWDg1aTdD?= =?utf-8?B?K3RTQmpBeC8zQnZFQ2d4VEhyS1JQcWhmT0ZaenZCVXJRcDBSRU1raE5naDJ1?= =?utf-8?B?cFJRb3pFOTlzeVAxamF2b1pUQjBiZGlvNksySkNPalp5MVEvenRIQ0lmcUZy?= =?utf-8?B?Ump4dXF2WnBFU1pWMGRGWGtqSzFZL1B3Q2ZsbzEzOFdZbmpHbDczNzBTUWd6?= =?utf-8?B?TUxBSVRtTHBlUXZJNmpOTzZPNDZlVXk0UmNaclZkakRKMVYzMmlxbHA2ak4z?= =?utf-8?B?MmFvR2w4eVViTy9hZmdLQ3ZFSjAwekJQVnN2Z1plL1FVcnRraVhUQUYwbDNz?= =?utf-8?B?N1lEY3NhTUc4NVZobldFd1YyWFZNd0tpKzh2VFNDNWlyZVBydEVHTGdTaDJB?= =?utf-8?B?ZEtyRmg0eXRMQzdvWUJlbTJ3T1Z2MVNCczFESjRIK1JacUkyRjcwY0dBNXpH?= =?utf-8?B?T2ZSM1I1ZjVXZ1dUamZKaEUzRW5nSUpyQVBLUHZVaEdPQUhuWEdVNUQ3ZjMx?= =?utf-8?B?b2pZb2FPcmFrZkZ4OHp3VU1pak1Wd2F2VkljK01sa0d6enJ0MkFQM0Q4MC9o?= =?utf-8?B?R0dKMFFVcldnUkh4T2d6eDM5N3hZeTFlV09VUFF3bmgvUnR2VURLVUt5dmVV?= =?utf-8?B?dU15L2E5ZmRKMlFDbWRsbEJTdDc0cXlVd2ErTytFRXdOSno2ZjFqWURKd3Z2?= =?utf-8?Q?rDYwDGKzKXThVVY/PsvUefUy4?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 5791c3ab-6bbe-425b-6df9-08db6be0403a X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Jun 2023 07:31:49.8791 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: dNqpWXErmQKvxq8W9DjQOc26nYTLuAPkPUk4COUtsLBpYPIhSDW+X0p8apXka51H7+Cim3WlOVISZrTKKudDwQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM8PR04MB7444 On 13.06.2023 05:44, Stefano Stabellini wrote: > @@ -133,6 +146,13 @@ existing codebase are work-in-progress. > headers (xen/include/public/) are allowed to retain longer > identifiers for backward compatibility. > > + * - `Rule 6.1 `_ > + - Required > + - Bit-fields shall only be declared with an appropriate type > + - In addition to the C99 types, we also consider appropriate types: > + unsigned char, unsigned short, unsigned long, unsigned long long, > + enum, and all explicitly signed integer types. If I was to read this without the earlier discussion in mind, I would wonder why the unsigned types are explicitly enumerated, but the signed ones are described in more general terms. Can't it simply be "all explicitly unsigned / signed integer types", which then also covers e.g. uint32_t? > @@ -143,6 +163,32 @@ existing codebase are work-in-progress. > - Octal constants shall not be used > - > > + * - `Rule 7.2 `_ > + - Required > + - A "u" or "U" suffix shall be applied to all integer constants > + that are represented in an unsigned type > + - The rule asks that any integer literal that is implicitly > + unsigned is made explicitly unsigned by using one of the > + indicated suffixes. As an example, on a machine where the int > + type is 32-bit wide, 0x77777777 is signed whereas 0x80000000 is > + (implicitly) unsigned. In order to comply with the rule, the > + latter should be rewritten as either 0x80000000u or 0x80000000U. > + Consistency considerations may suggest using the same suffix even > + when not required by the rule. For instance, if one has: > + > + Original: f(0x77777777); f(0x80000000); > + > + one might prefer > + > + Solution 1: f(0x77777777U); f(0x80000000U); > + > + over > + > + Solution 2: f(0x77777777); f(0x80000000U); > + > + after having ascertained that "Solution 1" is compatible with the > + intended semantics. I think we should state here what we want people to do, not what "one might prefer". That aspect aside, I'm not convinced the added text (matching what Roberto did suggest) really addresses my concerns. Yet I'm not going to pursue this any further - we'll see how this ends up working in practice. Jan From xen-devel-bounces@lists.xenproject.org Tue Jun 13 07:42:59 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 07:42:59 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547857.855496 (Exim 4.92) (envelope-from ) id 1q8yfz-0005WQ-Cq; Tue, 13 Jun 2023 07:42:51 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547857.855496; Tue, 13 Jun 2023 07:42:51 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8yfz-0005WJ-AG; Tue, 13 Jun 2023 07:42:51 +0000 Received: by outflank-mailman (input) for mailman id 547857; Tue, 13 Jun 2023 07:42:50 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8yfy-0005HC-5T for xen-devel@lists.xenproject.org; Tue, 13 Jun 2023 07:42:50 +0000 Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id e4b09310-09bd-11ee-b232-6b7b168915f2; Tue, 13 Jun 2023 09:42:48 +0200 (CEST) Received: from nico.home-life.hub (unknown [176.206.20.8]) by support.bugseng.com (Postfix) with ESMTPSA id E9D264EE073E; Tue, 13 Jun 2023 09:42:46 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: e4b09310-09bd-11ee-b232-6b7b168915f2 From: Nicola Vetrini To: xen-devel@lists.xenproject.org Cc: consulting@bugseng.com, Nicola Vetrini , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk , Andrew Cooper , George Dunlap , Jan Beulich , Wei Liu , Rahul Singh Subject: [XEN PATCH] xen: fixed violations of MISRA C:2012 Rule 3.1 Date: Tue, 13 Jun 2023 09:42:31 +0200 Message-Id: X-Mailer: git-send-email 2.34.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit The xen sources contain several violations of Rule 3.1 from MISRA C:2012, whose headline states: "The character sequences '/*' and '//' shall not be used within a comment". Most of the violations are due to the presence of links to webpages within C-style comment blocks, such as: xen/arch/arm/include/asm/smccc.h:37.1-41.3 /* * This file provides common defines for ARM SMC Calling Convention as * specified in * http://infocenter.arm.com/help/topic/com.arm.doc.den0028a/index.html */ In this case, we propose to deviate all of these occurrences with a project deviation to be captured by a tool configuration. There are, however, a few other violations that do not fall under this category, namely: 1. in file "xen/arch/arm/include/asm/arm64/flushtlb.h" we propose to avoid the usage of a nested comment; 2. in file "xen/common/xmalloc_tlsf.c" we propose to substitute the commented-out if statement with a "#if 0 .. #endif; 3. in file "xen/include/xen/atomic.h" and "xen/drivers/passthrough/arm/smmu-v3.c" we propose to split the C-style comment containing the nested comment into two doxygen comments, clearly identifying the second as a code sample. This can then be captured with a project deviation by a tool configuration. Signed-off-by: Nicola Vetrini --- Changes: - Resending the patch with the right maintainers in CC. --- xen/arch/arm/include/asm/arm64/flushtlb.h | 8 ++++---- xen/common/xmalloc_tlsf.c | 7 ++++--- xen/drivers/passthrough/arm/smmu-v3.c | 9 ++++++--- xen/include/xen/atomic.h | 5 ++++- 4 files changed, 18 insertions(+), 11 deletions(-) diff --git a/xen/arch/arm/include/asm/arm64/flushtlb.h b/xen/arch/arm/include/asm/arm64/flushtlb.h index 3a9092b814..90ac3f9809 100644 --- a/xen/arch/arm/include/asm/arm64/flushtlb.h +++ b/xen/arch/arm/include/asm/arm64/flushtlb.h @@ -4,10 +4,10 @@ /* * Every invalidation operation use the following patterns: * - * DSB ISHST // Ensure prior page-tables updates have completed - * TLBI... // Invalidate the TLB - * DSB ISH // Ensure the TLB invalidation has completed - * ISB // See explanation below + * DSB ISHST Ensure prior page-tables updates have completed + * TLBI... Invalidate the TLB + * DSB ISH Ensure the TLB invalidation has completed + * ISB See explanation below * * ARM64_WORKAROUND_REPEAT_TLBI: * Modification of the translation table for a virtual address might lead to diff --git a/xen/common/xmalloc_tlsf.c b/xen/common/xmalloc_tlsf.c index 75bdf18c4e..ea6ec47a59 100644 --- a/xen/common/xmalloc_tlsf.c +++ b/xen/common/xmalloc_tlsf.c @@ -140,9 +140,10 @@ static inline void MAPPING_SEARCH(unsigned long *r, int *fl, int *sl) *fl = flsl(*r) - 1; *sl = (*r >> (*fl - MAX_LOG2_SLI)) - MAX_SLI; *fl -= FLI_OFFSET; - /*if ((*fl -= FLI_OFFSET) < 0) // FL will be always >0! - *fl = *sl = 0; - */ +#if 0 + if ((*fl -= FLI_OFFSET) < 0) // FL will be always >0! + fl = *sl = 0; +#endif *r &= ~t; } } diff --git a/xen/drivers/passthrough/arm/smmu-v3.c b/xen/drivers/passthrough/arm/smmu-v3.c index 720aa69ff2..b1c536e7d9 100644 --- a/xen/drivers/passthrough/arm/smmu-v3.c +++ b/xen/drivers/passthrough/arm/smmu-v3.c @@ -1045,15 +1045,18 @@ static int arm_smmu_atc_inv_domain(struct arm_smmu_domain *smmu_domain, /* * Ensure that we've completed prior invalidation of the main TLBs * before we read 'nr_ats_masters' in case of a concurrent call to - * arm_smmu_enable_ats(): + * arm_smmu_enable_ats(). + */ + /** + * Code sample: Ensures that we always see the incremented + * 'nr_ats_masters' count if ATS was enabled at the PCI device before + * completion of the TLBI. * * // unmap() // arm_smmu_enable_ats() * TLBI+SYNC atomic_inc(&nr_ats_masters); * smp_mb(); [...] * atomic_read(&nr_ats_masters); pci_enable_ats() // writel() * - * Ensures that we always see the incremented 'nr_ats_masters' count if - * ATS was enabled at the PCI device before completion of the TLBI. */ smp_mb(); if (!atomic_read(&smmu_domain->nr_ats_masters)) diff --git a/xen/include/xen/atomic.h b/xen/include/xen/atomic.h index 529213ebbb..829646dda0 100644 --- a/xen/include/xen/atomic.h +++ b/xen/include/xen/atomic.h @@ -71,7 +71,10 @@ static inline void _atomic_set(atomic_t *v, int i); * Returns the initial value in @v, hence succeeds when the return value * matches that of @old. * - * Sample (tries atomic increment of v until the operation succeeds): + */ +/** + * + * Code sample: Tries atomic increment of v until the operation succeeds. * * while(1) * { -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Tue Jun 13 07:42:59 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 07:42:59 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547855.855486 (Exim 4.92) (envelope-from ) id 1q8yfx-0005HU-6k; Tue, 13 Jun 2023 07:42:49 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547855.855486; Tue, 13 Jun 2023 07:42:49 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8yfx-0005HN-3j; Tue, 13 Jun 2023 07:42:49 +0000 Received: by outflank-mailman (input) for mailman id 547855; Tue, 13 Jun 2023 07:42:47 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8yfv-0005HD-J0; Tue, 13 Jun 2023 07:42:47 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8yfv-000105-HG; Tue, 13 Jun 2023 07:42:47 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8yfv-0005tk-0z; Tue, 13 Jun 2023 07:42:47 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q8yfv-0002JK-0T; Tue, 13 Jun 2023 07:42:47 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=nHeJ8Zwfj3nYLlTf9PYidojZ5cCAuB0fVfgQ18uvIN4=; b=qHVX10/JkMgIklwZ5n0V7noFVl jyhlOP7CisIfkX81yBBRrkSPZynwcMX+iu+kRwHHcru/3aM9TOL6QkwuLYst4Z0qMI01LqlALiyuG I0TDWPPBiSPvcvSy5G+dhVlb0y2LsAwN3yDkCZpmLVZEfxYvcB7fJLLY4PzQmiqPIeqo=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [ovmf test] 181400: all pass - PUSHED X-Osstest-Versions-This: ovmf=530f5b0912c1c3837337baeec66eb7b0a90d9969 X-Osstest-Versions-That: ovmf=8314a85893f5b75baa0031a5138028188a626243 From: osstest service owner Date: Tue, 13 Jun 2023 07:42:47 +0000 flight 181400 ovmf real [real] http://logs.test-lab.xenproject.org/osstest/logs/181400/ Perfect :-) All tests in this flight passed as required version targeted for testing: ovmf 530f5b0912c1c3837337baeec66eb7b0a90d9969 baseline version: ovmf 8314a85893f5b75baa0031a5138028188a626243 Last test of basis 181298 2023-06-08 07:41:00 Z 5 days Testing same since 181400 2023-06-13 03:12:26 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Zhiguang Liu jobs: build-amd64-xsm pass build-i386-xsm pass build-amd64 pass build-i386 pass build-amd64-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-i386-pvops pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Pushing revision : To xenbits.xen.org:/home/xen/git/osstest/ovmf.git 8314a85893..530f5b0912 530f5b0912c1c3837337baeec66eb7b0a90d9969 -> xen-tested-master From xen-devel-bounces@lists.xenproject.org Tue Jun 13 07:43:11 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 07:43:11 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547861.855506 (Exim 4.92) (envelope-from ) id 1q8ygJ-00066L-NL; Tue, 13 Jun 2023 07:43:11 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547861.855506; Tue, 13 Jun 2023 07:43:11 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8ygJ-00066C-JJ; Tue, 13 Jun 2023 07:43:11 +0000 Received: by outflank-mailman (input) for mailman id 547861; Tue, 13 Jun 2023 07:43:10 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8ygI-0005sr-GA for xen-devel@lists.xenproject.org; Tue, 13 Jun 2023 07:43:10 +0000 Received: from esa4.hc3370-68.iphmx.com (esa4.hc3370-68.iphmx.com [216.71.155.144]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id eeed275c-09bd-11ee-8611-37d641c3527e; Tue, 13 Jun 2023 09:43:07 +0200 (CEST) Received: from mail-bn8nam11lp2169.outbound.protection.outlook.com (HELO NAM11-BN8-obe.outbound.protection.outlook.com) ([104.47.58.169]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 13 Jun 2023 03:43:03 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by BY5PR03MB4981.namprd03.prod.outlook.com (2603:10b6:a03:1f2::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.29; Tue, 13 Jun 2023 07:43:01 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606%4]) with mapi id 15.20.6455.043; Tue, 13 Jun 2023 07:43:00 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: eeed275c-09bd-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686642188; h=message-id:date:from:subject:to:cc:references: in-reply-to:content-transfer-encoding:mime-version; bh=Q+teAMRlfiEyZECXtGraSo49mSNqG08y085bVVPPq2w=; b=WjenxlwThtEvxrP5CkF9wNbwidcSs4truUjxIbWzSvyzhNO62qGJtY0r +zPX0QVTGUooTjCWzQNeijkGzXnh/TFmp4uNJCiCsqo6G31OSLmZMUWKT y3jgVynnvMjCYjxlbJRktoPBLquIDF7/wtxXdwiadzxKYgVEuZv1PU1rJ U=; X-IronPort-RemoteIP: 104.47.58.169 X-IronPort-MID: 115091876 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:bNn7ZKimPMiFT91CBC+ffOkiX161TREKZh0ujC45NGQN5FlHY01je htvCGzQP/qMY2KkeIolPNy+oRkE75XTyYVlHgBsqnpnESwb9cadCdqndUqhZCn6wu8v7q5Ex 55HNoSfdpBcolv0/ErF3m3J9CEkvU2wbuOgTrWCYmYpHlUMpB4J0XpLg/Q+jpNjne+3CgaMv cKai8DEMRqu1iUc3lg8sspvkzsx+qyq0N8klgZmP6sT4gaFzyB94K83fsldEVOpGuG4IcbiL wrz5OnR1n/U+R4rFuSknt7TGqHdauePVeQmoiM+t5mK2nCulARrukoIHKN0hXNsoyeIh7hMJ OBl7vRcf+uL0prkw4zxWzEAe8130DYvFLXveRBTuuTLp6HKnueFL1yDwyjaMKVBktubD12i+ tQhby8dche82t6mwePlcPk92+ojAdTCadZ3VnFIlVk1DN4AaLWaGuDgw48d2z09wMdTAfzZe swVLyJ1awjNaAFOPVFRD48imOCvhT/0dDgwRFC9/PJrpTSMilEhluGzYbI5efTTLSlRtm+eq njL4CLSBRYCOcbE4TGE7mitlqnEmiaTtIc6TeTlrq8z0ALNroAVIAUaemKYn/njthO3VdVPO V1I0AolkKdnoSRHSfG4BXVUukWsvBQRRt5RGO0S8xyWx+zf5APxLngJSHtNZcIrsOcyRCc2z RmZktXxHzttvbaJD3WH+d+8sjeaKSUTa2gYakc5oRAt5tDipMQ5iELJR9M6Saqt1ISrSHf33 iyAqzU4i/MLl8kX2q6n/FfBxTWxupzOSQ1z7QLSNo640j5EiEeeT9TAwTDmATxod+51knHpU KA4pvWj IronPort-HdrOrdr: A9a23:Nj/9H6k/V3judEnDZU1SRMg2V6/pDfOtimdD5ihNYBxZY6Wkfp +V8cjzhCWftN9OYhodcIi7SdK9qXO1z+8X3WBjB8bZYOCGghriEGgG1+ffKlLbakrDH4JmtJ uINpIOcOEYbmIKx/oSgjPIderIqePvmM/HuQ6d9QYVcegAUdAD0+4NMHf+LqQAfngiOXNWLv qhz/sCgwDlVWUcb8y9CHVAdfPEvcf3mJXvZgNDLwI76SGV5AnYpILSIly95FMzQjlPybAt/S zuiAri/JiutPm911v1y3LT1ZJLg9Hso+EzS/Bky/JlZAkEuDzYJLiJaIfy/wzdZ9vfqmrCpe O84ivI+f4Drk85MFvF5ScFkDOQrQrGo0WStWNwx0GT7PARDQhKdPZplMZXdADU5FEnu8w52K VX33iBv54SFh/Ymj/hjuK4IS2Cu3DE1UbKq9Rj+EB3QM8bcvtcvIYf9ERaHNMJGz/78pkuFK 1rANvH7PhbfFuGZzSB11MfiOCETzA2BFOLU0ICssua33xfm2141VIRwIgakm0b/JwwRpFY76 DPM7hulrtJUsgKBJgNTdspUI+yECjAUBjMOGWdLRDuE7wGIWvEr9rt7LA89IiRCek1JNdYou WzbLqZjx9BR6vDM7z/4HQQyGGyfIyUZ0Wd9v1j X-Talos-CUID: 9a23:uVaqAmB8rAnz8Uj6ExAg614IHf94Tm3cnSnqMx7lJ2ZEVZTAHA== X-Talos-MUID: =?us-ascii?q?9a23=3A9LZ67g4QQHYknWS0sZOxhe82xoxw74uXK34Ny6l?= =?us-ascii?q?bsseDJT5hZx29hwm4F9o=3D?= X-IronPort-AV: E=Sophos;i="6.00,239,1681185600"; d="scan'208";a="115091876" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=E7Djlj++AShDlq8sR2FKgg3EsV1tO73nVgfb05z0y8c8mPc4cAINke7wnCa+kwINVdRE48W828Ir6d8ZdGKgT/fcUmSO3qdbjuDDtQvVCWP21ssQuys1zgGp/ft1rhO9uNlyDKpwCUbN6TAJ9Sx7HKZzTHphmGWtdMGajzuNiPD5g57y/DA0O+aEZNC4rI4gOVrVMgUdnL1ayYdsDL9ukOiMz17ulzn7QOebema6K1evGGVL5xHxuhSEd3oJ1T3V+J8lu0coZxUVmt80Y6dcbo+V1++gqnZ5aXHGtyoryVdoZHGGL9r7yex9ZdU/kXTzWv5C5xbhxeFSCuIY5O5LfA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=Q+teAMRlfiEyZECXtGraSo49mSNqG08y085bVVPPq2w=; b=OAxkDqSgQ/1bLBBFd62b/HfswmaBOXDNxhFjrZzWPpQ681kb95HE6/tHUwfGcmLNcM5zJTLDYc2YqlmlMXHHHDwa/km0+a2R2pVMu+8H80eiv5yNqSUQKDnwAIJ3eCT3ltHm4oF6rHIR/DfFUrbIXr2NuQDWQRlPuyepwbQC4g+ebDvWkHJKbj8drLE36UAQqg+sqPDi80xJoFOxC9LZKp53I79+xo51CSSD6Jy9ibZtu+lWpN6hK03/HymdHVqpcpzJSIlqFtXWuH5FzNi4Kq71VZChYS+gnul5j1jGVWXAzRx2iCmj/BGJhiSHRSco9oXKW13DuqqSlEyrBqTBaw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Q+teAMRlfiEyZECXtGraSo49mSNqG08y085bVVPPq2w=; b=WtMtFZ8+Syeq6otahSm/GYmXub/af4UXobYHD+owm2GuIdQL+uSjeweVFLHoljr5npr27tXwx++5b8y22EmG8IdILb3F+aTASuN32JNqvS2ihUjHE+2zXAtTZRc2GwkqrFFMtXHXupCGjAO5zjOzA5nqCRRetBF8dPp7aqJptUY= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: <749a746c-6504-3bbd-2040-1b72c7477649@citrix.com> Date: Tue, 13 Jun 2023 08:42:54 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 From: Andrew Cooper Subject: Re: [PATCH] x86: minor tidying of identify_cpu() Content-Language: en-GB To: Jan Beulich , "xen-devel@lists.xenproject.org" Cc: Wei Liu , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= References: <063c5302-9a84-5f3c-5d19-926d09de5623@suse.com> In-Reply-To: <063c5302-9a84-5f3c-5d19-926d09de5623@suse.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: LO4P123CA0338.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:18c::19) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|BY5PR03MB4981:EE_ X-MS-Office365-Filtering-Correlation-Id: 42c80879-f33c-4b11-3aef-08db6be1cfc6 X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: twOmYzzTYyhIC0H5QQV2pyszWa8VA5y2o2zWIvqtXAhQ965sUj0GY5KXGg5LYNc5v/kgQCgqHL7OndTXrnuXXfOdlLJkXic7aDQNLJWzFO9CEN2iFyMqpawTarzs63LgCn2H3zFSYWQ9VgWHRZSQhctMhOW3nXuyEwxog6pATxkUfZmdwaONLJ/QCa9Hi5Kq/gTrCX9+ZNO3kgpVrwXouLif/9oL2v9qNLzPbgUyxGn1+bqtD+c/OEYQiGNKBHMnGB6hnuAOD3H6NHsMhq3ACmb6Iny4WWA/syvSUbq0lAnDW7k03ndqUSTyvC1snU7PlQ/YQ+qJGQHE0gGnP1hS40Vlty4YY5JzqCI14Jh53jH3ZZkLwvpkNAAV5AW2oAwP9qLK+jab7la2tVLnSQFjMTYEHSWMZ0ZT89072isd5n7i0ByLyQQMidUdk2KbqbFWI8Rn/yhBX2E7DJZdnLon+j6Um0VUiZvXIhfAi3Xf5qDFBUsqZwcq9UjxyFMuqlq+zgzDPqe4KM++FmIczDqWgEphBN3JRY7J+yvsOiy7Ct6kdNl04zt10l06f77yLB4ikRvVc54jnI6M61ON0kELpWBBAehzTIConJtwF5Rjnd/83pF8pWwkH5BuYKAE9Uc56I+DFm6LS3q0PM/1+fwz8w== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(346002)(396003)(376002)(366004)(39860400002)(136003)(451199021)(6486002)(316002)(41300700001)(2616005)(31696002)(6506007)(186003)(107886003)(2906002)(4744005)(26005)(86362001)(53546011)(6512007)(82960400001)(38100700002)(8676002)(5660300002)(36756003)(8936002)(66476007)(66946007)(66556008)(478600001)(54906003)(110136005)(6666004)(31686004)(4326008)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?Rm04WGUwc2d5WVFScGdGNEZERWRaK0F2c09NK3NNUmlQc085SjZlVjl3UWRB?= =?utf-8?B?bGdHY1FQM3ZvYmxXOWduVEJVWmpnZ2F0Y1hieWowY1U4VWV4Q1BOZ2t4UVQx?= =?utf-8?B?QURtV2xNcDdUM2lrSzdtYTlzcjQrUjkxRjVRdnFxTHl5bCtKVzhjWG1mUUtK?= =?utf-8?B?N2lRdlhaK21YVjB6SzJaMlpxNjRKczAxQVM3aUV5VmR6Sk1LbkRrdDZndGRp?= =?utf-8?B?cVc2TUwrZTVuNktvTHNOdzhLYWRhK3FJZ3VtaTlGaDlGUHZlSFRoWG9XUTVO?= =?utf-8?B?WjdZYTV6KzhmUWRReEVUN1Ivd0hVeEwzenB4NWhoZzd1UDF2dE50YzA2Q2Yv?= =?utf-8?B?Q2lFWlpQVS9KSjRjSzQ3d3ZhNEtZNkRFUlFQZnVWMGVHbHAyWnlVQW14M2Jt?= =?utf-8?B?bnRDUjhDbnpWMEdyQk9ZN0tSVWx2dXg1elYvVThObnhtKzVGdWNSZ2FXaG1m?= =?utf-8?B?aCtrYk9FdURxaVlJYVNTZVd0NzNpMHFhcHdOcTFlMzAwMXdIRm9UN2hQMFBU?= =?utf-8?B?NU1RTjRwRFY1NlVXQVVNc2xFNXBDWDBpVVpubGEvTWpJMTEwbGdYdnlDeHM4?= =?utf-8?B?VjFVWFBOWjBIei82aXBtRTNoTktycVJORFJWdWtVYitVNm5RMVE1VU1jWUZp?= =?utf-8?B?dzg1N0hncTNqRHd3VC85QWtmY3hOQWRyUGFRdi9TdGI2bWsvckRQUWFzc2Jz?= =?utf-8?B?M0lhOTJHcEhPcjhZcFhhTEhnSXpURTRIRWlPTXIrRXM3anVkN2NscEVreFNp?= =?utf-8?B?ejRtNWRLUENzdUdQZEFqdDNjMTNLakEyZFlDVzdoZUdYcUY0Z0FRRUwvVllI?= =?utf-8?B?YzZCbEFwQ1QrQjlRbnMwbzI4U0JaL2dIWWl1S01qS2poZVFXaG84ekQycEVv?= =?utf-8?B?ekVRa1BPeERncEJEMUhDMko5emNXY2RUbkhpNnQ0a0s0SVNNaTJsUml2eGtP?= =?utf-8?B?WXlRdDFLQ3ZUanB6WGJSUXo5T1VSVW11aGE3T001R2xxVUlPaHd1ZkpxTWZs?= =?utf-8?B?dmw4SVFRUUM3ZTdZZWh2OVBodG1ZMFRFT0Y1TTNDWGExdFNaWXBjY1JpZC9h?= =?utf-8?B?dnVUWGRoQ2JuQld4Z2IzVVdNYXp4d2FOdUlMTk04d0hwa2toZ2d3dDAvWXFJ?= =?utf-8?B?WEVVeFN0VE1EQXlGRmZLc3RaWjFaYStoWWx2QjJFOWxiN2lLNWpoTGl4Yzcr?= =?utf-8?B?MFdMUU82RmhvQ2tzRFpKNlAxYk5xWWFrMUYweVdaQUt2bWxSaGNYVFEyY3RT?= =?utf-8?B?K2RiN1pLeGFtSGI3aDNjZVJLTFdHU003SmgrVEVmNEkxOU16L2Y1UythOThk?= =?utf-8?B?dHQvZHkyYkFKZXdXZjFSV1RDWXRjTGw0ZzhKUGYxM003dDVJQnFLZHU3OU0r?= =?utf-8?B?N05TRFFDSDlIYUVVM3ZOc1Y2REg0SlU0bHVVMG1YdVpXMysvWDkydHV3TVdZ?= =?utf-8?B?aGFFNW1HNmwzOVNrelBOSDg5ZmJHNzI4cWtucHQvbUZMb2Q3UG40dFg4R1lJ?= =?utf-8?B?YllEZC9pQ0JkUHozWTJieUlVZjBhUG5MWlJ2TW5hdDU4ZEFoMUNkV0tsYzlm?= =?utf-8?B?djFGbEZaTkpDQVpCOEdWY1AvRU5EYXlqbDUxTXpWa2tlOU0wK2NLOVhaV29t?= =?utf-8?B?MHhBUzlXNzlQNFN0Q08xZkc2TURrRldFTU1lclJrc3RhcnkyNUhXQ2V5QlBZ?= =?utf-8?B?MnJGWWw3OWlqbm9nWmdvN0hvbCtybEZNRjBIVmJ2N3BKRnVRSUcyemVQU3lZ?= =?utf-8?B?eFhYNDZHZDUwRXNlOFNKRGJWd0J5SnFJQXJkbDhBN0V3YlQrNWhPaTl0NzFX?= =?utf-8?B?YlFJaXRsZ1JmWHBmM2JzM2lEQ2psbHltSmFVUHZORFpSY1JVOFlaLzUyb3Nr?= =?utf-8?B?WjZLTHdQSHZMVWl0blY4N1F6Z2ZuR3BJanVrcUFNS3FGZnIrZk1kT2dFWGk3?= =?utf-8?B?NkJWQ1YvbnZaQ2F4V2tCVXFpMWRGVHRpMWRZRDFCdFNmR29yMi9najIzaUtB?= =?utf-8?B?T3NKKytKOHJZQjFVQjJaUzErZXFLK1hkUStaaXVXK0xqRlRSRWpQNXVxbUIr?= =?utf-8?B?ajB6U2ptZDM3VzZadTdsYjJnOFl5UGlXOVppN1V6R0MrLzdIeWtZN0FxdGM4?= =?utf-8?B?S00xWUt4bURNaFNhelp6NnNhcUlPTW9QTTI5V3VJU2NCN0c2ZWZkQnFZOFQv?= =?utf-8?B?M3c9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: GhSdm7aVvpmazS/ykhJa8aQ8l+IFHCSPsyvGKaHwt+HqdMyV3ACMB5qKZiSuWmcrsEzGeCkk2HMOo9D/aw199MaFTFVTRIJ2GzKiCy6ESggAON3w0X4faEqt/udhr63KIJb0V+4PiApg7o1T+ujCBS1UorkgygSosKC/+5YE6sy87HHeDny5AAjAhZROZPQN6opW+9qPs+SEGiHZBK+EacVvCpynrygGultPoF3LBBkKLy2iIFoma/aPUGXmbB1heVbglf3XV152ngbOpt8bTbGsd7V1NwYsBubz0wOq/o+ofL7YAAn0XqybX24jx7SVsp3UURyAdeGDy/wxo+v9wAsiWxw1MA9RUI7ozfNFzokkJQ01Ou8Xk3MMFdFVPKnXNl9XW69bJvOQTBYsdEvmpnX3f0u/eGa7e4I+knXspTjSm0h9TOcnIkY8jd6quNmcIf4/DvvLXUI4XQzEnaWrVoBNW32RXKdBWQX72AbmgxDkfQBB2dUgiGzx1DlOmfYx/G76gQHKBb+AkconIpUKKEubzppZGUJls1HDmweTaj1dXiFvGP7i38XY9kmluikB4BKL+WWd9rYbQutRUvw//eC+vgpU5O9d7n8DBEM4zqWmOWcyDPoajZ/ODf1/60HNcIJ5eoaLyz5JvoNpnGXOXYuKWNICBrlwO0FW3S4zcOQyhTguUVFFyMCY/bETlHF3v9duqnjoFWMopHgi15TLOrQQKV0ghhIK2aa+GDi50v/CCALOhX0yy9UywWXd9Ezn+oAkqjjltc8qSIz7GFzIKAAGTukD+mozgfGwGexfw3d2oZE6UGSYWhZYyXL4T5zi X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 42c80879-f33c-4b11-3aef-08db6be1cfc6 X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Jun 2023 07:43:00.4508 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: dHJeLLhcQ+qKZP6oe6ryR2cjQShtygAq/JBWpGxdE7Td+PD2CvMZ1Bhyf9HS+watPp74KZynWNKk0BpYgIZckBCuzwdM2LArh6InhmhHHl0= X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY5PR03MB4981 On 13/06/2023 7:12 am, Jan Beulich wrote: > Fields that generic_identify() sets unconditionally don't need pre- > setting. (In fact the compiler removes some of those assignments anyway, > at least in release builds.) > > With the setting of ->cpuid_level to -1 gone, also drop the respective > BUG_ON() from default_init(). > > Signed-off-by: Jan Beulich Acked-by: Andrew Cooper I have some far more extensive plans in this, but no work started yet. From xen-devel-bounces@lists.xenproject.org Tue Jun 13 07:45:16 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 07:45:16 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547875.855516 (Exim 4.92) (envelope-from ) id 1q8yiI-00071I-8n; Tue, 13 Jun 2023 07:45:14 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547875.855516; Tue, 13 Jun 2023 07:45:14 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8yiI-00071B-4E; Tue, 13 Jun 2023 07:45:14 +0000 Received: by outflank-mailman (input) for mailman id 547875; Tue, 13 Jun 2023 07:45:12 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8yiG-00070v-9S for xen-devel@lists.xenproject.org; Tue, 13 Jun 2023 07:45:12 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [2604:1380:4641:c500::1]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 37c8b8bd-09be-11ee-8611-37d641c3527e; Tue, 13 Jun 2023 09:45:09 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 5850B61A47; Tue, 13 Jun 2023 07:45:08 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 089C9C433D2; Tue, 13 Jun 2023 07:44:56 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 37c8b8bd-09be-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1686642307; bh=f4w4+2Npq1dkMitUJV0S3ITs/vGEti03A0AefRWYLBE=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=DAQB2NbikRdiWHwMApaPAIzaTY/w5HN4Xf7lKIGhQ1CWk0NWLGkjAYZnVQ2Z/26E5 Gj6fP0pEbtlpdHh+jAjgE6Pt3fChamJqEF8aVQsamsvQWLvQ+me4hgKoCdbO2U9n0H sLhdxmmB9s+aWXDyuT2lGzl1ZVFe+wKqtDoS4hK67cKlfHnfx6dLaBFlaN8NreyThe AbwFvqwokH5jRmekfEWGpgdCqyPUEmoq/Gm4fiWKIVNatWddBhbTkdXtpDdl7j7Ve/ HOLkc/hxxqb1vXEgvy7sHCTE8mCUAdXBvfqxYV+N5P2bD908YKbA9glKAU7xQzQvwR geNzoGQaAeXIA== Date: Tue, 13 Jun 2023 10:44:28 +0300 From: Mike Rapoport To: Rick Edgecombe Cc: x86@kernel.org, "H . Peter Anvin" , Thomas Gleixner , Ingo Molnar , linux-kernel@vger.kernel.org, linux-doc@vger.kernel.org, linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-api@vger.kernel.org, Arnd Bergmann , Andy Lutomirski , Balbir Singh , Borislav Petkov , Cyrill Gorcunov , Dave Hansen , Eugene Syromiatnikov , Florian Weimer , "H . J . Lu" , Jann Horn , Jonathan Corbet , Kees Cook , Mike Kravetz , Nadav Amit , Oleg Nesterov , Pavel Machek , Peter Zijlstra , Randy Dunlap , Weijiang Yang , "Kirill A . Shutemov" , John Allen , kcc@google.com, eranian@google.com, jamorris@linux.microsoft.com, dethoma@microsoft.com, akpm@linux-foundation.org, Andrew.Cooper3@citrix.com, christina.schimpe@intel.com, david@redhat.com, debug@rivosinc.com, szabolcs.nagy@arm.com, torvalds@linux-foundation.org, broonie@kernel.org, linux-arm-kernel@lists.infradead.org, linux-s390@vger.kernel.org, xen-devel@lists.xenproject.org Subject: Re: [PATCH v9 02/42] mm: Move pte/pmd_mkwrite() callers with no VMA to _novma() Message-ID: <20230613074428.GS52412@kernel.org> References: <20230613001108.3040476-1-rick.p.edgecombe@intel.com> <20230613001108.3040476-3-rick.p.edgecombe@intel.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20230613001108.3040476-3-rick.p.edgecombe@intel.com> On Mon, Jun 12, 2023 at 05:10:28PM -0700, Rick Edgecombe wrote: > The x86 Shadow stack feature includes a new type of memory called shadow > stack. This shadow stack memory has some unusual properties, which requires > some core mm changes to function properly. > > One of these unusual properties is that shadow stack memory is writable, > but only in limited ways. These limits are applied via a specific PTE > bit combination. Nevertheless, the memory is writable, and core mm code > will need to apply the writable permissions in the typical paths that > call pte_mkwrite(). Future patches will make pte_mkwrite() take a VMA, so > that the x86 implementation of it can know whether to create regular > writable memory or shadow stack memory. Nit: ^ mappings? > But there are a couple of challenges to this. Modifying the signatures of > each arch pte_mkwrite() implementation would be error prone because some > are generated with macros and would need to be re-implemented. Also, some > pte_mkwrite() callers operate on kernel memory without a VMA. > > So this can be done in a three step process. First pte_mkwrite() can be > renamed to pte_mkwrite_novma() in each arch, with a generic pte_mkwrite() > added that just calls pte_mkwrite_novma(). Next callers without a VMA can > be moved to pte_mkwrite_novma(). And lastly, pte_mkwrite() and all callers > can be changed to take/pass a VMA. > > Previous patches have done the first step, so next move the callers that > don't have a VMA to pte_mkwrite_novma(). Also do the same for I hear x86 maintainers asking to drop "previous patches" ;-) Maybe This is the second step of the conversion that moves the callers ... > pmd_mkwrite(). This will be ok for the shadow stack feature, as these > callers are on kernel memory which will not need to be made shadow stack, > and the other architectures only currently support one type of memory > in pte_mkwrite() > > Cc: linux-doc@vger.kernel.org > Cc: linux-arm-kernel@lists.infradead.org > Cc: linux-s390@vger.kernel.org > Cc: xen-devel@lists.xenproject.org > Cc: linux-arch@vger.kernel.org > Cc: linux-mm@kvack.org > Signed-off-by: Rick Edgecombe Reviewed-by: Mike Rapoport (IBM) -- Sincerely yours, Mike. From xen-devel-bounces@lists.xenproject.org Tue Jun 13 08:04:21 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 08:04:21 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547887.855526 (Exim 4.92) (envelope-from ) id 1q8z0X-0001eY-GA; Tue, 13 Jun 2023 08:04:05 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547887.855526; Tue, 13 Jun 2023 08:04:05 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8z0X-0001eR-BI; Tue, 13 Jun 2023 08:04:05 +0000 Received: by outflank-mailman (input) for mailman id 547887; Tue, 13 Jun 2023 08:04:03 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8z0V-0001eH-TC; Tue, 13 Jun 2023 08:04:03 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8z0V-0001wS-PG; Tue, 13 Jun 2023 08:04:03 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8z0V-0006UY-9J; Tue, 13 Jun 2023 08:04:03 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q8z0V-0008Na-8o; Tue, 13 Jun 2023 08:04:03 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=5oVULdvhCGWEqBEEa2wUoqVDpXAsGeALXLrAmEbhtyE=; b=UN317GLkvYesBcudPGFjXqgumz YENIkFBLDyhxOl0S5i4FH1xKw/YiH751NTdsF7f/T3GvQIu8Ggfvg91qRJp+d7ABxZKxCce2tNCmQ 5mkK7XMHt/UUSE2/7E/B1oUngAEOGcPfV/QFU1kBXuLDOCsq2/lqGn1NGYM5cPQsTnHo=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [qemu-mainline test] 181399: regressions - trouble: blocked/broken/fail/pass X-Osstest-Failures: qemu-mainline:build-armhf::broken:regression qemu-mainline:build-armhf:host-install(4):broken:regression qemu-mainline:build-arm64-xsm:xen-build:fail:regression qemu-mainline:build-arm64:xen-build:fail:regression qemu-mainline:build-amd64:xen-build:fail:regression qemu-mainline:build-i386:xen-build:fail:regression qemu-mainline:build-amd64-xsm:xen-build:fail:regression qemu-mainline:build-i386-xsm:xen-build:fail:regression qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-i386:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:build-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:build-arm64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:build-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:build-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pygrub:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking X-Osstest-Versions-This: qemuu=fdd0df5340a8ebc8de88078387ebc85c5af7b40f X-Osstest-Versions-That: qemuu=6972ef1440a9d685482d78672620a7482f2bd09a From: osstest service owner Date: Tue, 13 Jun 2023 08:04:03 +0000 flight 181399 qemu-mainline real [real] http://logs.test-lab.xenproject.org/osstest/logs/181399/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-armhf broken build-armhf 4 host-install(4) broken REGR. vs. 180691 build-arm64-xsm 6 xen-build fail REGR. vs. 180691 build-arm64 6 xen-build fail REGR. vs. 180691 build-amd64 6 xen-build fail REGR. vs. 180691 build-i386 6 xen-build fail REGR. vs. 180691 build-amd64-xsm 6 xen-build fail REGR. vs. 180691 build-i386-xsm 6 xen-build fail REGR. vs. 180691 Tests which did not succeed, but are not blocking: test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-xl-xsm 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-raw 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-xsm 1 build-check(1) blocked n/a test-arm64-arm64-xl 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit1 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit2 1 build-check(1) blocked n/a test-arm64-arm64-xl-thunderx 1 build-check(1) blocked n/a test-arm64-arm64-xl-vhd 1 build-check(1) blocked n/a test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a test-armhf-armhf-libvirt 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-qcow2 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-raw 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a test-armhf-armhf-xl-arndale 1 build-check(1) blocked n/a test-armhf-armhf-xl-multivcpu 1 build-check(1) blocked n/a test-armhf-armhf-xl-rtds 1 build-check(1) blocked n/a test-armhf-armhf-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-amd 1 build-check(1) blocked n/a test-amd64-i386-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-raw 1 build-check(1) blocked n/a test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-i386 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-amd64 1 build-check(1) blocked n/a test-amd64-coresched-i386-xl 1 build-check(1) blocked n/a test-amd64-coresched-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-xsm 1 build-check(1) blocked n/a build-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-shadow 1 build-check(1) blocked n/a test-amd64-amd64-xl-rtds 1 build-check(1) blocked n/a build-arm64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a build-armhf-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a build-i386-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-amd 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-pair 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-qcow2 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-vhd 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvshim 1 build-check(1) blocked n/a test-amd64-amd64-pair 1 build-check(1) blocked n/a test-amd64-amd64-pygrub 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-intel 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd11-amd64 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd12-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-multivcpu 1 build-check(1) blocked n/a test-amd64-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit1 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit1 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-intel 1 build-check(1) blocked n/a test-amd64-i386-xl 1 build-check(1) blocked n/a test-amd64-i386-xl-pvshim 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a version targeted for testing: qemuu fdd0df5340a8ebc8de88078387ebc85c5af7b40f baseline version: qemuu 6972ef1440a9d685482d78672620a7482f2bd09a Last test of basis 180691 2023-05-17 10:45:22 Z 26 days Failing since 180699 2023-05-18 07:21:24 Z 26 days 95 attempts Testing same since 181372 2023-06-10 21:38:57 Z 2 days 16 attempts ------------------------------------------------------------ People who touched revisions under test: Afonso Bordado Akihiko Odaki Akihiro Suda Alex Bennée Alex Williamson Alexander Bulekov Alexander Graf Alexander Ivanov Alistair Francis Anastasia Belova Andrew Jeffery Ani Sinha Ani Sinha Anthony PERARD Anton Johansson BALATON Zoltan Bastian Koppelmann Bernhard Beschow Bin Meng Brian Cain Brice Goglin Camilla Conte Carlos Santos Christian Schoenebeck Chuck Zmudzinski Cindy Lu Clément Chigot Cornelia Huck Cédric Le Goater Cédric Le Goater Daniel Henrique Barboza Daniel P. Berrangé Daniil Kovalev David Hildenbrand David Woodhouse Emanuele Giuseppe Esposito Enze Li Eric Auger Eric Blake Eric DeVolder Erico Nunes Eugenio Pérez Fabiano Rosas Fan Ni Fiona Ebner Francesco Cagnin Francisco Iglesias Frederic Barrat Gavin Shan Gregory Price Gregory Price Hanna Czenczek Hao Zeng Hawkins Jiawei Igor Mammedov Ilya Leoshkevich Ira Weiny Jagannathan Raman Jason Wang Jean-Louis Dupond Jean-Philippe Brucker Jiaxun Yang John Snow Jonathan Cameron Juan Quintela Kevin Wolf Laurent Vivier Lei Yang Leonardo Bras Maksim Davydov Marc-André Lureau Marcin Juszkiewicz Marco Liebel Mark Cave-Ayland Markus Armbruster Matheus Tavares Bernardino Mattias Nissler Mauro Matteo Cascella Max Fritz Michael S. Tsirkin Michael Tokarev Michal Privoznik Milan Zamazal Mostafa Saleh Nicholas Piggin Nicolas Saenz Julienne Niek Linnenbank Palmer Dabbelt Paolo Bonzini Peter Maydell Peter Xu Philippe Mathieu-Daudé qianfan Zhao Raghu H Rene Engel Richard Henderson Richard Purdie Ricky Zhou Ryan Wendland Sebastian Ott Sergio Lopez Sid Manning Song Gao Stefan Hajnoczi Stefano Garzarella Steve Sistare Taylor Simpson Thomas Huth Thomas Weißschuh timothee.cocault@gmail.com Timothée Cocault Tommy Wu Vikram Garhwal Viktor Prutyanov Vitaly Cheptsov Vivek Kasireddy Vladimir Sementsov-Ogievskiy Volker Rümelin Xinyu Li Zeng Hao Zhenyu Zhang Zhenzhong Duan Zhuojia Shen jobs: build-amd64-xsm fail build-arm64-xsm fail build-i386-xsm fail build-amd64 fail build-arm64 fail build-armhf broken build-i386 fail build-amd64-libvirt blocked build-arm64-libvirt blocked build-armhf-libvirt blocked build-i386-libvirt blocked build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl blocked test-amd64-coresched-amd64-xl blocked test-arm64-arm64-xl blocked test-armhf-armhf-xl blocked test-amd64-i386-xl blocked test-amd64-coresched-i386-xl blocked test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-i386-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-amd64-libvirt-xsm blocked test-arm64-arm64-libvirt-xsm blocked test-amd64-i386-libvirt-xsm blocked test-amd64-amd64-xl-xsm blocked test-arm64-arm64-xl-xsm blocked test-amd64-i386-xl-xsm blocked test-amd64-amd64-qemuu-nested-amd blocked test-amd64-amd64-xl-pvhv2-amd blocked test-amd64-i386-qemuu-rhel6hvm-amd blocked test-amd64-amd64-dom0pvh-xl-amd blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-freebsd10-amd64 blocked test-amd64-amd64-qemuu-freebsd11-amd64 blocked test-amd64-amd64-qemuu-freebsd12-amd64 blocked test-amd64-amd64-xl-qemuu-ovmf-amd64 blocked test-amd64-i386-xl-qemuu-ovmf-amd64 blocked test-amd64-amd64-xl-qemuu-win7-amd64 blocked test-amd64-i386-xl-qemuu-win7-amd64 blocked test-amd64-amd64-xl-qemuu-ws16-amd64 blocked test-amd64-i386-xl-qemuu-ws16-amd64 blocked test-armhf-armhf-xl-arndale blocked test-amd64-amd64-xl-credit1 blocked test-arm64-arm64-xl-credit1 blocked test-armhf-armhf-xl-credit1 blocked test-amd64-amd64-xl-credit2 blocked test-arm64-arm64-xl-credit2 blocked test-armhf-armhf-xl-credit2 blocked test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-freebsd10-i386 blocked test-amd64-amd64-qemuu-nested-intel blocked test-amd64-amd64-xl-pvhv2-intel blocked test-amd64-i386-qemuu-rhel6hvm-intel blocked test-amd64-amd64-dom0pvh-xl-intel blocked test-amd64-amd64-libvirt blocked test-armhf-armhf-libvirt blocked test-amd64-i386-libvirt blocked test-amd64-amd64-xl-multivcpu blocked test-armhf-armhf-xl-multivcpu blocked test-amd64-amd64-pair blocked test-amd64-i386-pair blocked test-amd64-amd64-libvirt-pair blocked test-amd64-i386-libvirt-pair blocked test-amd64-amd64-xl-pvshim blocked test-amd64-i386-xl-pvshim blocked test-amd64-amd64-pygrub blocked test-armhf-armhf-libvirt-qcow2 blocked test-amd64-amd64-xl-qcow2 blocked test-arm64-arm64-libvirt-raw blocked test-armhf-armhf-libvirt-raw blocked test-amd64-i386-libvirt-raw blocked test-amd64-amd64-xl-rtds blocked test-armhf-armhf-xl-rtds blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-amd64-xl-shadow blocked test-amd64-i386-xl-shadow blocked test-arm64-arm64-xl-thunderx blocked test-amd64-amd64-libvirt-vhd blocked test-arm64-arm64-xl-vhd blocked test-armhf-armhf-xl-vhd blocked test-amd64-i386-xl-vhd blocked ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary broken-job build-armhf broken broken-step build-armhf host-install(4) Not pushing. (No revision log; it would be 17052 lines long.) From xen-devel-bounces@lists.xenproject.org Tue Jun 13 08:28:00 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 08:28:00 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547897.855535 (Exim 4.92) (envelope-from ) id 1q8zNN-0004IW-Bw; Tue, 13 Jun 2023 08:27:41 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547897.855535; Tue, 13 Jun 2023 08:27:41 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8zNN-0004IP-9L; Tue, 13 Jun 2023 08:27:41 +0000 Received: by outflank-mailman (input) for mailman id 547897; Tue, 13 Jun 2023 08:27:40 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8zNL-0004IJ-V5 for xen-devel@lists.xenproject.org; Tue, 13 Jun 2023 08:27:40 +0000 Received: from EUR05-VI1-obe.outbound.protection.outlook.com (mail-vi1eur05on20626.outbound.protection.outlook.com [2a01:111:f400:7d00::626]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 268636d2-09c4-11ee-8611-37d641c3527e; Tue, 13 Jun 2023 10:27:36 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by DU2PR04MB8645.eurprd04.prod.outlook.com (2603:10a6:10:2dc::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.44; Tue, 13 Jun 2023 08:27:33 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.039; Tue, 13 Jun 2023 08:27:33 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 268636d2-09c4-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=DKqaz6MWQA4N34ytIGKpnMdgfP4Fl41aw/BRZaiqK7hcNEiMic2RWqic9BP/Y5OpfO698JpN06RDFBsReBhHHG3x86lTBt7wnTx/FWqqq4h+Fewbtg5GPL1WmXbeR5jQ+cRgySKE4PInkpB1jsOktgi7zbzW855aL4HEB14juhLzNwbjk4OOIegFe3wCRmfiHHEtWHBWC2yq+8w5RqziE265gXs0HjIBI7IQEhjcUy9a6v0jzfdaZ8auNuFk1p0pd9/zXquOl47d/vcIAJZYwtmlwSbI4ioCqU0gdxbJCwJhRdOEMoJbCXBqxtdAh/fDtTkwluPKGMj02bgvYmYx1Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=2HUEguW/FfPGBupJkfWirwFWRZBhnTtryxy/BgWwOso=; b=UsDMDX6u48jnxDUME57JD0ClJRg6xebjJmalEAF0JxhuctbU9BbOdjSJ7Y8qRxrgE7cfLdQxouDp52QO406yny0wZOAm113XCE15cXBjoxWs94XpyuKhsW4Z4fPSzTE1sIiGbjAs3rNIRli6yLQ/FFpanlnzgV2HpWRvAmcJN3HwFD5C6szy0vGJq8etYYeZIjWouMZn77mr0mCsnKEkBxwYF0VtJjHWGv4v8QKoOQHO5OLfzPMrRm8IWuOwdRPRGMFrSOIReVWdlwEU7QIfaz5jE0OvQyLstsY8tCpQNpeVQ/GTQyTWyjbWsj4GQJjRnMpMotSMpAvQupQs+AgDFQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=2HUEguW/FfPGBupJkfWirwFWRZBhnTtryxy/BgWwOso=; b=QAk2CNYGppugQ7eSOKLWFlVl8eOdY2aCtUj6qtQR2t0t7Bsy/7Q5IJmFG7gRE6X3+TRY5NCBOJoXEx3zxLJpxnx2Iu1KbDt0hCaLwh2mGWDc7YcTsbO0SCrjIFASAWHmv/8a5BWfo2y/Tf7BKp51AEuIqviH5fKW6Z9tYI04ks2VACuUvEju+S5srovdhniimogrcZnE7w6XLf7sf03auDTwS3aCszd8zW30/JUB1m8j/qI2WzuPuDs/TYNkaOBUcUEx+Tj68MhoccdwBG1vF0PB0N4TCkwnVPrsperOP25VPYtOJJoKM7Qkuk6R/gJIL+AZqUJusIHxGQLu9opLqQ== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <42cb13a7-3b62-8d48-a1a1-3094a7bd07fa@suse.com> Date: Tue, 13 Jun 2023 10:27:30 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [XEN PATCH] xen: fixed violations of MISRA C:2012 Rule 3.1 Content-Language: en-US To: Nicola Vetrini Cc: consulting@bugseng.com, Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk , Andrew Cooper , George Dunlap , Wei Liu , Rahul Singh , xen-devel@lists.xenproject.org References: From: Jan Beulich In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR2P281CA0077.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:9a::14) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|DU2PR04MB8645:EE_ X-MS-Office365-Filtering-Correlation-Id: 6d64cb50-db22-4227-2912-08db6be808ad X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: jmgSyDJDOTgVucUThNxZrFDgKFD5vFBphfsLVcE25eRkEmbNQWKhrnzv2q3Zg627bdtK1wih7D5yeKg5KgpGWTVyFzA0BR1Y3B5ICaZKbBdMpHvyYSV9fchpZ7CnBOIoCHg2PrFFmvspWV+547OP4aTQe/dIzFmwaV+UTRYHuwNJvRseZebwCx3A09LNTdiYqHXRIcUvJCXXIyflYz3Sv3T63aLth9KY5xDEZP8KD0De7WRjm/rPTWTCZv2Pzqt7yJQMsaF7mmJ0zLhEyJrnvOLSHesfVoHmanYvcFIyhTYjzw/+b2Uuz7WrLPjDrID+vCZVFRh/eNA9yMMRXSdJhr8rPFKaIBrJD73f9mVi/MQm1iSoxZIgrOYgNM+jYdp5c/qlsrlMhnVkPxGDvHsLXKCPmPiNsK43keyyhSeb6BhebNl29dxySk/g4IIjNok2e8/Ogk1lfSZ/HSEwJQrjyrKZuUA3IY24uSZytJdfHyUOFx4X0iQZyg2RQfOQUN05Mi4gyXZ0oYpMHVgJ0sQoloHI3DO8ThhCykvuXlzPGSPT1/knPC4BcCUM5o4ofHuO15hLsRNdjfiun2v0gqX1ibnqpvf63ukwoYd69cbgJe7IxhIg6SqJJWKZP2s+am4aS//bsrSXuvmTRDAxgw/jSQ== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(346002)(136003)(366004)(376002)(39860400002)(396003)(451199021)(66556008)(83380400001)(6916009)(6486002)(26005)(6506007)(6512007)(53546011)(966005)(54906003)(186003)(2616005)(7416002)(478600001)(2906002)(8936002)(8676002)(31696002)(86362001)(5660300002)(36756003)(4326008)(41300700001)(38100700002)(316002)(66476007)(66946007)(31686004)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?K0JwOUc2NTdISEMzT0V4OTZDSnpyUGcvblAwRDBxdXBFb29WRDFTamNWRGZj?= =?utf-8?B?bTBjV2lWRlRyWXRGRWJ1SHRmMFlkYWZKVE43b3ZBMUp1Q2lxZVJxUlNJc0xo?= =?utf-8?B?alhMNW9tNk9LQVRsWlAvQUFFUGZONStPL01IazAySVErSVhhRDRMUHNDSGEv?= =?utf-8?B?WmF2RHJlR0FkczBDVXhveit3Qk5FTW9yUm0rN29JTDRmTHE4OU5uL29Hc2Mx?= =?utf-8?B?RmFCODFicDlYdVMyTmJ5a2lsZHJjb3lqeFI0R2hpZjVmOHFWUXJGL1FIUGdO?= =?utf-8?B?cTN4b0xxLzFwQ014eHlyejl0TUtwem1VbkFVZ3U5Y1hXWVFoMDgwWHczdE9w?= =?utf-8?B?ZVNUeENXaWR1UTJGQWtiTmk4VERZYWsyNTBVUHhwWjZTbjhwdTdGL0o5T1Vw?= =?utf-8?B?eDNrUVVuOWNscVR2ZXdabERzdWRtREMzKzRwcDJPMXdYejhvU216OG9MbjRx?= =?utf-8?B?djcyN2JaUnp1TzlDaTBlOW0yTCtxcFpBcEc4QzN3UWhUaVVVRExNY2dNZzRC?= =?utf-8?B?VkpxVURlTGpySSs3bmZwdG1xaC9aRVBoM3h1ekNmeS83SUVIWCsvSVEvdThW?= =?utf-8?B?QzdaY0ZIVmRpK1lKZnZNVUh3UU4rM2NUZEhta2pnSmhtYmJPRVFyNUJuWi8v?= =?utf-8?B?eFZDYTl5aENqU3Z2L0NOdVhXSHJNanM3cFZpdWJya09JeVVZeWxuakYraG5F?= =?utf-8?B?a21ZSVRpRWlBY1JZNHBNRVFFa2Q0NmZPWmQxK2F4N0JkM3VjUS9abllZdXNS?= =?utf-8?B?bTdPaTVueXJJdWlsUFJnRElCMklvWGFaNloybyttWHdKYzRzVUV4V0MxUGFp?= =?utf-8?B?WEc4Tm9SZmxwckhiZStzS05xb1kvbjZVT1JnaVg2OER3Z3pkNC8wOVd5MllK?= =?utf-8?B?dDR3MUhoUDVYbHlhalVDMVhKU1lVVUFocExBaW5VcWpXajNqcmI5RGtsNDFh?= =?utf-8?B?UWdwcVRTSTVBL3NhQnJ2Rk5lOUJ5aUxjNWJUOTRSREMyb1ZWaVpBMTBQWDQ0?= =?utf-8?B?ZFNCVEFjOGlIYm9kdFBTMWNqZEV3bHhMTVREZGRaT2lUK1o3elZMbTBTOWc0?= =?utf-8?B?MkdSOGZJWkV1V09GNWRJRy9aQTJaVERJcDBuU0FUOE9HMzhDQW4yRzAySkxU?= =?utf-8?B?R0c4Uk5QeEJzNHZTbWJ4ME96bUlwemZVcE9VWDZCWTVrOHpxSWtIWW8relY3?= =?utf-8?B?bDRMZytLWmFSRWp4ZGNLODMrbHpKeVdUV040bmZSTllvT0dRZEEzdmxwcmVC?= =?utf-8?B?TjUwOUVpL1lBQnUrNlZHUjFJOXMwTXMrVm1zaUsvZTRiU0tWeFI4eU03Qlo1?= =?utf-8?B?Qk81eTNzL0MzOEM5WExZemxOMEJGWVJ4RGxLdzJ3VllyVGdYaEtVVUNQNWMy?= =?utf-8?B?WXljdk9VbkxUbWJnSzRwaytvR0JVdGJ4K3ZRZGp0dnJZSDFURDQ2bDJRY2Z6?= =?utf-8?B?cVQzMVZINlFLMnZRL21maFkvUHR4SGxrVXVnZTdMVURST0ZqbTFMWERyQ0dD?= =?utf-8?B?S3g2ekRHdDdVbEtWbHhMOTgxcGV1NWZiaGs3M09ycTlJQWVUR041bHRJeFhh?= =?utf-8?B?MjFGU3VQUFRDYVBzM0wxcmU3aG13UDUrVWljQjAyTTZsY05UUFRwL29yZGt2?= =?utf-8?B?NWNSbTAvMXJZbTJ3eUhhNVhhQW84cFlnNjdXYWRFbHI3VlFUUzJSSkNCd3Ni?= =?utf-8?B?Tk53SEM5QmF3TkZoQ2paMU90M2krMmJYVFp5a2pPYXVPQ20zcWM1bVZ2c0lF?= =?utf-8?B?RG9BanB4SEJjVTdvRjdvOGkydlNscE4xZGVmVXEzejg5YmpzajRPV2ttRnZT?= =?utf-8?B?T3VZZi9naHRSdkpSRDdWS2oreEVVa0pQNEdSenl1Z0UrM1NXOWJ3cklhN3lv?= =?utf-8?B?ZDBGVjVFVXlWc0kzVTlXUEtqNzVoaTIweTJ3Wmh1UUpvcks4VkFhUzVZOEcy?= =?utf-8?B?VVRwdVVXVHYxSkJmcnBKVndDMFVSWFd3aVBGbTg1NVVJR29qcEJEZVUzSFN0?= =?utf-8?B?SWVITEpXQkdCYU05VkRnNjJEMnc5VUVFYjlxanpwZHF1anRobWg5dEtQM1py?= =?utf-8?B?QUJaSWVRaDRHU1FORldyZjdUa2VWNGlxalRkT1hNWUgvNW1SYWQyL1JxNGdZ?= =?utf-8?Q?lWWXqAP/zx7FT6q1QSkFLZ1t6?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 6d64cb50-db22-4227-2912-08db6be808ad X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Jun 2023 08:27:32.7227 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 0r514BW22gSnis7ry1E7YJCN+c94U8AIzOGSfx1ugup/30GBk43iaXFn/lxHLxOoefi2p5rj2j4cAPtPkob+rA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU2PR04MB8645 On 13.06.2023 09:42, Nicola Vetrini wrote: > The xen sources contain several violations of Rule 3.1 from MISRA C:2012, > whose headline states: > "The character sequences '/*' and '//' shall not be used within a comment". > > Most of the violations are due to the presence of links to webpages within > C-style comment blocks, such as: > > xen/arch/arm/include/asm/smccc.h:37.1-41.3 > /* > * This file provides common defines for ARM SMC Calling Convention as > * specified in > * http://infocenter.arm.com/help/topic/com.arm.doc.den0028a/index.html > */ > > In this case, we propose to deviate all of these occurrences with a > project deviation to be captured by a tool configuration. > > There are, however, a few other violations that do not fall under this > category, namely: > > 1. in file "xen/arch/arm/include/asm/arm64/flushtlb.h" we propose to > avoid the usage of a nested comment; > 2. in file "xen/common/xmalloc_tlsf.c" we propose to substitute the > commented-out if statement with a "#if 0 .. #endif; > 3. in file "xen/include/xen/atomic.h" and > "xen/drivers/passthrough/arm/smmu-v3.c" we propose to split the C-style > comment containing the nested comment into two doxygen comments, clearly > identifying the second as a code sample. This can then be captured with a > project deviation by a tool configuration. > > Signed-off-by: Nicola Vetrini > --- > Changes: > - Resending the patch with the right maintainers in CC. But without otherwise addressing comments already given, afaics. One more remark: > --- a/xen/common/xmalloc_tlsf.c > +++ b/xen/common/xmalloc_tlsf.c > @@ -140,9 +140,10 @@ static inline void MAPPING_SEARCH(unsigned long *r, int *fl, int *sl) > *fl = flsl(*r) - 1; > *sl = (*r >> (*fl - MAX_LOG2_SLI)) - MAX_SLI; > *fl -= FLI_OFFSET; > - /*if ((*fl -= FLI_OFFSET) < 0) // FL will be always >0! > - *fl = *sl = 0; > - */ > +#if 0 > + if ((*fl -= FLI_OFFSET) < 0) // FL will be always >0! > + fl = *sl = 0; You want to get indentation right here, and you don't want to lose the indirection on fl. > +#endif > *r &= ~t; > } > } If you split this to 4 patches, leaving the URL proposal in just the cover letter, then I think this one change (with the adjustments) could go in right away. Similarly I expect the arm64/flushtlb.h change could be ack-ed right away by an Arm maintainer. Jan From xen-devel-bounces@lists.xenproject.org Tue Jun 13 08:41:55 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 08:41:55 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547902.855547 (Exim 4.92) (envelope-from ) id 1q8zay-0006nQ-I6; Tue, 13 Jun 2023 08:41:44 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547902.855547; Tue, 13 Jun 2023 08:41:44 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8zay-0006nJ-DS; Tue, 13 Jun 2023 08:41:44 +0000 Received: by outflank-mailman (input) for mailman id 547902; Tue, 13 Jun 2023 08:41:42 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8zaw-0006n9-DG; Tue, 13 Jun 2023 08:41:42 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8zaw-0002r9-1t; Tue, 13 Jun 2023 08:41:42 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8zav-0007Ms-Ja; Tue, 13 Jun 2023 08:41:41 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q8zav-0005pP-J3; Tue, 13 Jun 2023 08:41:41 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=SrjN4UOs1i4GJCRa0aLBCZ8ziFZPh/GNrPEP0irLjXo=; b=beG+MIwJm4QdIl64WKCxYBS6sa CEfBWM+7RWtgut1e/1jJewdSkG7p2z90aK/oSk/i7130KqVv2gFzRRlYW/NEPTZVZUClNSQxNd1UO OAE5NEc30OoYdKoE7kKqBIkVM+Pq6gUGZjCsR7Pjn0iDI0b7lx/l9QCyFAdzU/z0usvI=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [linux-linus test] 181397: regressions - trouble: blocked/broken/fail/pass X-Osstest-Failures: linux-linus:build-armhf::broken:regression linux-linus:build-armhf:host-install(4):broken:regression linux-linus:test-amd64-amd64-xl-vhd:guest-start/debian.repeat:fail:regression linux-linus:test-armhf-armhf-examine:build-check(1):blocked:nonblocking linux-linus:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking linux-linus:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking linux-linus:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking linux-linus:test-armhf-armhf-xl:build-check(1):blocked:nonblocking linux-linus:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking linux-linus:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking linux-linus:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking linux-linus:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking linux-linus:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking linux-linus:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking linux-linus:build-armhf-libvirt:build-check(1):blocked:nonblocking linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-raw:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-qcow2:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: linux=fb054096aea0576f0c0a61c598e5e9676443ee86 X-Osstest-Versions-That: linux=6c538e1adbfc696ac4747fb10d63e704344f763d From: osstest service owner Date: Tue, 13 Jun 2023 08:41:41 +0000 flight 181397 linux-linus real [real] http://logs.test-lab.xenproject.org/osstest/logs/181397/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-armhf broken build-armhf 4 host-install(4) broken REGR. vs. 180278 test-amd64-amd64-xl-vhd 21 guest-start/debian.repeat fail REGR. vs. 180278 Tests which did not succeed, but are not blocking: test-armhf-armhf-examine 1 build-check(1) blocked n/a test-armhf-armhf-libvirt 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-qcow2 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-raw 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a test-armhf-armhf-xl-arndale 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit1 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-multivcpu 1 build-check(1) blocked n/a test-armhf-armhf-xl-rtds 1 build-check(1) blocked n/a test-armhf-armhf-xl-vhd 1 build-check(1) blocked n/a build-armhf-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 180278 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 180278 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 180278 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 180278 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 180278 test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qcow2 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass version targeted for testing: linux fb054096aea0576f0c0a61c598e5e9676443ee86 baseline version: linux 6c538e1adbfc696ac4747fb10d63e704344f763d Last test of basis 180278 2023-04-16 19:41:46 Z 57 days Failing since 180281 2023-04-17 06:24:36 Z 57 days 108 attempts Testing same since 181397 2023-06-13 01:12:56 Z 0 days 1 attempts ------------------------------------------------------------ 2686 people touched revisions under test, not listing them all jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf broken build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt blocked build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl blocked test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-freebsd11-amd64 pass test-amd64-amd64-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale blocked test-amd64-amd64-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 blocked test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 blocked test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine blocked test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt blocked test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu blocked test-amd64-amd64-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-amd64-pygrub pass test-amd64-amd64-libvirt-qcow2 pass test-armhf-armhf-libvirt-qcow2 blocked test-amd64-amd64-libvirt-raw pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw blocked test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-amd64-xl-vhd fail test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd blocked ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary broken-job build-armhf broken broken-step build-armhf host-install(4) Not pushing. (No revision log; it would be 341254 lines long.) From xen-devel-bounces@lists.xenproject.org Tue Jun 13 09:07:28 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 09:07:28 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547911.855556 (Exim 4.92) (envelope-from ) id 1q8zzc-00012G-Gq; Tue, 13 Jun 2023 09:07:12 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547911.855556; Tue, 13 Jun 2023 09:07:12 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8zzc-000129-DX; Tue, 13 Jun 2023 09:07:12 +0000 Received: by outflank-mailman (input) for mailman id 547911; Tue, 13 Jun 2023 09:07:11 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q8zza-000123-PU for xen-devel@lists.xenproject.org; Tue, 13 Jun 2023 09:07:11 +0000 Received: from esa2.hc3370-68.iphmx.com (esa2.hc3370-68.iphmx.com [216.71.145.153]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id aa9015cd-09c9-11ee-8611-37d641c3527e; Tue, 13 Jun 2023 11:07:07 +0200 (CEST) Received: from mail-dm6nam04lp2042.outbound.protection.outlook.com (HELO NAM04-DM6-obe.outbound.protection.outlook.com) ([104.47.73.42]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 13 Jun 2023 05:07:03 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by SJ0PR03MB5599.namprd03.prod.outlook.com (2603:10b6:a03:285::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.46; Tue, 13 Jun 2023 09:07:01 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606%4]) with mapi id 15.20.6455.043; Tue, 13 Jun 2023 09:07:01 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: aa9015cd-09c9-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686647227; h=message-id:date:from:subject:to:cc:references: in-reply-to:content-transfer-encoding:mime-version; bh=Nu2pNMdys8vtEpgX1H5wD8Tq2YNYQAmIsdpihUcLusc=; b=Y1zPl2TG/t60xOWXbc9VwHl1oAWPZGwDb9NbKXE0TySVAoZeunBO5OVV Ag4LcR4q4SXvlGldwnqztV1cVNC0DQi7+sM4w1pMSzAFCHt0oGfWMH7DL UxDT6HxgtJy4nMlWeq6fIW3KHY/s25NYzcaQS5qNiDoxcDlBOOGuqp2qQ o=; X-IronPort-RemoteIP: 104.47.73.42 X-IronPort-MID: 112464026 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:C73vNKIGtHIqebYUFE+REJQlxSXFcZb7ZxGr2PjKsXjdYENShjcCy DcYWGzUP/2CYjSnKdp3a9y+90NT6pXUxtY2QQZlqX01Q3x08seUXt7xwmUcnc+xBpaaEB84t ZV2hv3odp1coqr0/0/1WlTZhSAgk/rOHvykU7Ss1hlZHWdMUD0mhQ9oh9k3i4tphcnRKw6Ws Jb5rta31GWNglaYCUpKrfrbwP9TlK6q4mhA4AVlPakjUGL2zBH5MrpOfcldEFOgKmVkNrbSb /rOyri/4lTY838FYj9yuu+mGqGiaue60Tmm0hK6aYD76vRxjnVaPpIAHOgdcS9qZwChxLid/ jnvWauYEm/FNoWU8AgUvoIx/ytWZcWq85efSZSzXFD6I+QrvBIAzt03ZHzaM7H09c5UIlNcz s4gKQwhby+Hjr+V57efdOJF05FLwMnDZOvzu1lG5BSBUbMKZM6GRK/Ho9hFwD03m8ZCW+7EY NYUYiZuaxKGZABTPlAQC9Q1m+LAanvXKmUE7g7K4/VspTSJpOBy+OGF3N79U9qGX8hK2G2fo XrL5T/RCRAGLt2PjzGC9xpAg8eWxHmnBt5KTuPQGvhCiVCM7WcPNjEvXl6VpNSpgHT9d99HN BlBksYphe1onKCxdfH/VRClpH+PvjYHRsFdVeY97Wmlw67Z4Q+fCnIDCCBIbNgrtsgeTjgty 1PPlNTsbRRwtJWFRHTb8a2bxRuiNC5QIWIcaCssSQoe/8KlsIw1lgjITNtoDOiylNKdJN3r6 zWDrSx7i7BNi8cOj/m/5Qqf32jqoYXVRAko4AmRRnii8g5yeI+iYcqv9ETf6vFDao2eSzFto UQ5piRX18hWZbnlqcBHaLxl8G2BjxpdDADhvA== IronPort-HdrOrdr: A9a23:QBvWXa8zHTDykpTe/6Nuk+DnI+orL9Y04lQ7vn2ZESYlEPBw5P re+cjztCWE8Qr5N0tApTntAsO9qDbnhP1ICOoqTM+ftWvd2FdARbsKheDfKlbbdxEWg9Qy6U 4WScdD4bPLYGSSxvyKhDVQW+xQp+Vv3prY49vj8w== X-Talos-CUID: =?us-ascii?q?9a23=3AcGT52WhR2yFfN2hI+ZUF5WEA1TJuUV7v3kziG06?= =?us-ascii?q?EJWdWTLTIaniV3J1vup87?= X-Talos-MUID: 9a23:q8ymFQaVJ1RKueBTvjLzrzp+CutR6KGADW0dm69Fl8ScKnkl X-IronPort-AV: E=Sophos;i="6.00,239,1681185600"; d="scan'208";a="112464026" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=XW/RZOCWF+9NKxJC+KoT/yw6vWbT22usLJA5l4giFzOm5vADW42zBE1EE1GY1WaZIJSDvH9izno+znCvIfWToFJ6CRsILYT8Vyv29kPFm7C0ZtVOCJQ/ZeFPSY2/cqY03Dh4dJth5LBO1cAIMIAGzkxsjxXRsADpwjfFkYzVnQZ9iy2ffR4RK3IIwiDNONMjARkHJSjxKpeNSZcJth7T3FSrkeFs0PaPapV5nvwmtWrr2zLM7tXZ4QBF3CmFrE8bO4KNNrlAKTeMLr3OhSU/h5qeTFn2GSdevqOjXahboBpsq/xJINoeUH9dSngFbI0Z24RJ/wuZCHfytlVd4aLiYA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=Vo11QhvgllCnVHAQkRrnHmV/ux+kwbhW9D7qxsapFb0=; b=lgRrctxU+b1Cyed3J567b9sRL0Y/jTrT3q42nv3fw0RE0Y1/Pysj69JpQG2VaprxSe8grJrX1ZKEeWCTqXs8u3jj6SkRf5q7HCs/netPL6GYux2maiZXEkvLm69nmpq6XSKbYcrdNbc1id+VjvA/nY4AsigfpowZJArcvveQGLeAaQK/jHeqLacaFG7wDETlKUu0k7F6eP+mTx1KYDP3AHUQbOG+msOna7dOcUq2+KaQnjJmPjsONfsc3/0dOiUf7UGH0X1jkwg2gOtOC/Wvr1YADJZ5plfe5aBNWSeY//hpX0p0BKWg4e+t2wh6m9G6pdqk4D51uQNr9jYqVpmJmQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Vo11QhvgllCnVHAQkRrnHmV/ux+kwbhW9D7qxsapFb0=; b=uEb7hlHIEAgvf+VHxzPEsc3OnsfYEqA2s3LMaF8nNNwC3UZJGF3YvODvlobaI0VCkhy0VJ5TY4RdmfBTiDhWUP2vpCZHx4t+TH61JaY4PScVL/QBdSi2NtCRENh+mYsgXfDSbo/IkBDwYwpqF7NdvsRJuVUuIjT5QRNGybqb6rs= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: <250f5e2a-44ea-0ddc-c4e1-28a20ae0e206@citrix.com> Date: Tue, 13 Jun 2023 10:06:54 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 From: Andrew Cooper Subject: Re: [PATCH v2 2/4] x86: Read MSR_ARCH_CAPS after early_microcode_init() Content-Language: en-GB To: Jan Beulich , Alejandro Vallejo Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , Xen-devel References: <20230605170817.9913-1-alejandro.vallejo@cloud.com> <20230605170817.9913-3-alejandro.vallejo@cloud.com> <6ee9e687-b8ac-adfb-552e-522a21e128de@suse.com> <62192fa4-ca15-92d6-6b53-db81111545e4@suse.com> In-Reply-To: <62192fa4-ca15-92d6-6b53-db81111545e4@suse.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO4P265CA0217.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:33a::14) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|SJ0PR03MB5599:EE_ X-MS-Office365-Filtering-Correlation-Id: f891cd63-f951-4690-a7ef-08db6bed8c4f X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: /8rlzE7gI1ZeZ+FNYfh8M4Y8BqtgqBzcP76WvBK9u7hl/iO13Zcyiss9zEnvdKYk7pLodi8orGiXsykwIENgqgVNrpgMhBW6fGZv9S+Av3O7ik+9XjYYVeiYpQTgI7bag2wIh9jzAzXehxWTP2g8nnluDh7rFa92z015P3AzGjmP56ZJal7HNXjg3zYRcCVYWeuFvU4AX1IpPA5WqPYr0a7RTx7bPudAXVa+HeIr/wju9nKnSHXGrSoEWD1QD0jpvVnJFMN3c0cUr/dK26F6tFv5yv5yEN9Pw8hVPvWYcb5+g3pfP9uT/CZSm+hj+YRWPQGqUl4smf3Z8dDoSZMWFDRmMp10jNWrBk04KHJzd1lQDOkKW0gaGfSBERDqKqk5c6PpTg3VomGRajHUFYVrPbqN3ds4+UqsBYogz+Lver8igP2qsp64Ls+PZOsA4z/OLiJkdWNAS6NpHuQ+I4EY3Ebbh6DL5UNZDzvpy+Nn9xjQ7YZnqLVZvyPT8wFXL4CcxQqvq7c4sT4EBTtcwDVtXjgHSo8Evc11iUQHZ0cFN7kXglI8h0MCVn7e2aE3cEdFGPhYLgQUq5Vm82AKOIBAmc8GQQQJIoAfEyr8bVsQoD56JuR0bNKGjJUwKIiOgtbxpN9kI+JhkrK0VlIhjm53OA== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(396003)(39860400002)(366004)(346002)(376002)(136003)(451199021)(36756003)(31696002)(86362001)(66556008)(54906003)(478600001)(110136005)(4326008)(6666004)(316002)(66946007)(66476007)(6486002)(8676002)(41300700001)(5660300002)(2906002)(8936002)(82960400001)(38100700002)(2616005)(6506007)(26005)(6512007)(53546011)(186003)(83380400001)(31686004)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?TjZwWVRydDVMaWI5Tjc4SzlmMDdHSW5yVmNDd2p5RTFTbkJKeHYwQ0RtYnNw?= =?utf-8?B?WldDckF2akZXSnlwNEQrSFF2NHFYK0V0bmJLV0p6OVZucklIQmgxL0tQUU9r?= =?utf-8?B?Q0xXbFZmOTc5ZlN2a3hvODVPanloOTBzYnRiVkFnYkNuWjdjTitjMEpCSCtT?= =?utf-8?B?V2U3Y0d2NEhqODhJNlRSRVM0RVgxbUxXdkEyMXJHcDVzdFFBdmpiaHQzTXBa?= =?utf-8?B?VWZQakFvUXdFUmlBNUZtNVFiYU40K3ZEc3NlbUtGT0NKRlNVZm16Y0Z3eTho?= =?utf-8?B?WG5JeTlTSjZQVzZsZUNxVWtHMERtZHRoRUxXSFVOUDRNbEpHVU5GTmJiR0tr?= =?utf-8?B?bm9iekdZaFVrc1dvbFQxTXRvYjZmdm5zYm5zcXgxcldOWFhPS0pLTnIwbStQ?= =?utf-8?B?Tk5IT2huS3A1SUVuVFJJYVlGSktNcXM3NUpkcHFETDFNQklZWFhVc1VkcU5K?= =?utf-8?B?Mkw2a2p5NUZVQkw2ZVZCNytBUFlJejRacjNTVVN2RUMrRE90U1JpNXh0UWxR?= =?utf-8?B?Tm1Hc1Y4S29BaE9oZG8rOFpQZExZdnQ2S01FdUtoRzdhVHZkait5SSs4STV2?= =?utf-8?B?WnVPWDBzaktrM0hXandxWlUxNXNjUlFaL2hiUERpalBpcEh0Vjl4SFZrRllM?= =?utf-8?B?L1IwZnN1bTJub0N6VEcxTVRGTi9iK3NmRjBVd2hkMVJPOGpLSElTK0dFTkFu?= =?utf-8?B?a1IvaE42allNbWpRMlc2TTFqR1JCeWZMczQ1MG90REF6aTlOb1o0RU1xNEYr?= =?utf-8?B?dU1FNmJXTmViQUtuUFlJVzBJQnRET1NnZE9VVkYyM0pRcHhSZXdpUkYreEN1?= =?utf-8?B?Sk1rNWZGK1JnQnR3U1Z2VFYwRlQrTTF1eGovYTJOZjYvQ3poVFdPRVFKMzgy?= =?utf-8?B?cG93Q0VjYjZ0NGVId05NUEVQbDBubmJTbHBNWFRIZjF6VkIwYXFDN05hOW1a?= =?utf-8?B?SWowWHJCMTJWcGpWdnVhL1cyWU56WUNUSVp2RldENk56RzR3N2J2VGxzdkRL?= =?utf-8?B?QnNiUjhFWmh3VW9kRlhMMXJKZ3R6QVR6ZzFGQjVKVHEwSmZsYzJ1R0RiV3V3?= =?utf-8?B?cXVLaldNZFR3Z2xzMVVodzIrUzRQWGZDZGxzQUlMYUlKSXFzekNOck5BZThC?= =?utf-8?B?S3FaZHVQdEZGTFdQTnV0UTNNZ0FWamxzamdGRGQzR2tPUFBwRVo3eVNhdGhF?= =?utf-8?B?NjNIODlybHQ3SFpSVlJHb3Btb3YxN3F3YmF2V2Jsb3Q1T3lUeFBSSWVSWmRD?= =?utf-8?B?dGNMVldtNklvNU5JVi80QnNQMWVpZDJkRkVoREVJelJSYWxQZkhWYjRJWk13?= =?utf-8?B?YVh5WWdQL1YwZEtxazVJdm92K3dSNDI5TWlkUnJOQmtzM1pYdGVzZndHaWZ0?= =?utf-8?B?bmE1aUZQekxXZlI3MXZUbW1HaThOWmdHN1JuNytEWHRFWjhCZ2VlKy9PdkUv?= =?utf-8?B?NGN5cDRPa3hSd3ZzOTBGbDNqNzA5M284R0dNN2puUnpzVUxNWm5TZHJNZU1I?= =?utf-8?B?WlE0VlEwNHFVRjJvUkNpa24zTExmSXBUaDMvcUVpZEt1L0YwaC9CV1BpdXc2?= =?utf-8?B?VUpscE9LblVuNkpzU1Z2eDNwbmFmdnZ3OEtaYzlFRzhSMktVY3JYOU5vd1Fj?= =?utf-8?B?eDdwQU5PVkI0T0tEY0hLUHUvNVJpcXZnYTIzY2llNVhsbVVMSENUU3U1OFpN?= =?utf-8?B?VEphZkl1Y21SaEhwOWFObTdRa1dUaTN4NkdYRU1MTk45dzFYRU1YSW4zVmFl?= =?utf-8?B?THJlc05CTGtsdGMyTGZKTTkwOHpBcmF4RkpQOXlNaUJMamFxbWhYZGhhNUVH?= =?utf-8?B?U0dSVlk4VjFsSmxrRlNab2JNeFNtYTdaNTRGT3FQRnFFdXlRaEl3N1BWTTdG?= =?utf-8?B?TzYvKy9tVUF4dllzRmI0SVgwUytRSUZwWnpQdWVMUzFEQVVjbHhFNDdobzQ3?= =?utf-8?B?Y3k4U1hPb3RWRFVWU2pxRzAzZlFkTHpaUFdlalpDSzhYSW9rRjhMTmgyb0ZH?= =?utf-8?B?N2xuR0VsWG53YVZLM1Z4S1A0aEgwdGdmK3d3RDNyV0FXZXJKTWJQVFQwOGpL?= =?utf-8?B?NXhEZnlRck1qMGsya0Myc1BXWk9pakJDR1pxQUhiL0gwOTJTM2p2bGkvRHk0?= =?utf-8?B?ZXUyYklHWDhMNk03ZXlNZE13WHZxeGoxMGFhYVNpdXN3UGxjejM1UWF6MGM0?= =?utf-8?B?d0E9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: /ZdXoxzkN8+BJ931V4NFrvoTIwdOPXFRJfw3fBLearxrJrmK0A7UsS9J+AX8cjawXwQxRMmX2/mC80sBelp/nvOwMf5TPnRpizvH07sIfHnMKBUcCvYQfHvJyvOOdHTtJvzG4EwCKU6fJnNKTvjaXsZp+LTtK8jdERmF9pEmLC779JKEZQwZnmRdtjyzjpNH1TXhoCzp/FCAHp6LP/PMEio00L+gp4PlYJDdBRuOB+1z4yZ4K+w6AmiWxFvnSuYhkyEDThJsqBm7AHxsjHOGWWHaSjbCKsws3cD4lwszKOLN7cNHy0/tFze0hmNGj2AgW+P9+wjJaRAiBV2JndRjkR9UXibZzUBN33hvH2AXSdNoRxLaS9DOaluzxRDxxLkDLuOsPc1XBH7jepszQqBmvdJJtNhmMvL3oiKbF/PETt4utE8KRjn/5/ngHdHUh8O/tg60aoZgp7snnlDwe6RD2JZOBnAT4rjmmvC3aebmUxPZv0L8iv73/F18U++6WqWiBDPjBSBwDbylW0CouZ6oSUFAGwc5z87tfDuFvRVIyXtC83RVpqe5c5rf/8Guv3Deqlke3pvqPg+1SR53wzfGtVPq98VTyqceEuKWm2Iw6JYy/03a/3sm2GS/+1FGtc3AnkI8uOQp9CvOj+XfFMzrREYhJcvF8Tqru0x++9G/ESA5/rNui8/AGifRKcxla4Ij/nwvRHBMkp/0uqu4YTNgADgwe2aR4aA7Wv7n7lxFysJ0mjKCAXcJaBIyYuL4VgZ80OewkwvNuTqoC4s5s4Oa1WXiqv/hxuBLncgAmhcCjviLSsAB0snpa3QFxZn0A2als3G6cJR79pOCvJQ1+SqM28gzxMjzSTD1Np2i2wkmq3Y= X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: f891cd63-f951-4690-a7ef-08db6bed8c4f X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Jun 2023 09:07:01.1560 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: R11B5ad8FK7gFgvlW22K2hcj4+S6LLqRMWZm7LjvFbUf/0t5nIqcfhGlmPvvboHUfNUwFuPpQk8yDl3+Xx3RRf4GV1JuhJ9ongg0//fxLco= X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR03MB5599 On 13/06/2023 7:40 am, Jan Beulich wrote: > On 12.06.2023 20:25, Andrew Cooper wrote: >> On 12/06/2023 4:46 pm, Jan Beulich wrote: >>> On 05.06.2023 19:08, Alejandro Vallejo wrote: >>>> @@ -878,5 +887,17 @@ int __init early_microcode_init(unsigned long *module_map, >>>> if ( ucode_mod.mod_end || ucode_blob.size ) >>>> rc = early_microcode_update_cpu(); >>>> >>>> + early_read_cpuid_7d0(); >>>> + >>>> + /* >>>> + * tsx_init() needs MSR_ARCH_CAPS, but it runs before identify_cpu() >>>> + * populates boot_cpu_data, so we read it here to centralize early >>>> + * CPUID/MSR reads in the same place. >>>> + */ >>>> + if ( cpu_has_arch_caps ) >>>> + rdmsr(MSR_ARCH_CAPABILITIES, >>>> + boot_cpu_data.x86_capability[FEATURESET_m10Al], >>>> + boot_cpu_data.x86_capability[FEATURESET_m10Ah]); >>> ... "centralize" aspect goes away, and hence the comment needs adjusting. >> I find it weird splitting apart the various reads into x86_capability[], >> but in light of the feedback, only the rdmsr() needs to stay. > Hmm, wait: When updating a CPU from a pre-arch-caps ucode level on one > that supports arch-caps, don't we need to re-read 7d0 here? (I.e. the > call to early_read_cpuid_7d0() needs to stay, but for a reason > different from the one presently stated in the description, and > possibly even worth a brief comment.) Urgh yes.  We do have situations where this ucode load will cause MSR_ARCH_CAPS (and features there-within) to appear. I'll rethink the safety here when I've got some breathing room from other tasks. ~Andrew From xen-devel-bounces@lists.xenproject.org Tue Jun 13 09:21:49 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 09:21:49 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547918.855566 (Exim 4.92) (envelope-from ) id 1q90DU-0003Xd-Rv; Tue, 13 Jun 2023 09:21:32 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547918.855566; Tue, 13 Jun 2023 09:21:32 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q90DU-0003XW-P1; Tue, 13 Jun 2023 09:21:32 +0000 Received: by outflank-mailman (input) for mailman id 547918; Tue, 13 Jun 2023 09:21:32 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q90DT-0003XQ-Un for xen-devel@lists.xenproject.org; Tue, 13 Jun 2023 09:21:31 +0000 Received: from sender3-of-o59.zoho.com (sender3-of-o59.zoho.com [136.143.184.59]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id abf2bc04-09cb-11ee-8611-37d641c3527e; Tue, 13 Jun 2023 11:21:27 +0200 (CEST) Received: from [10.10.1.82] (static-72-81-132-2.bltmmd.fios.verizon.net [72.81.132.2]) by mx.zohomail.com with SMTPS id 1686648081516674.3641276495971; Tue, 13 Jun 2023 02:21:21 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: abf2bc04-09cb-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; t=1686648083; cv=none; d=zohomail.com; s=zohoarc; b=AqlZ2Q5WcaqUgPKNneglOOrnGXcprpHmQACMne2W9F1nL2s4EudLphr+xoHy3jh7zqLyaDZuRPcrKKHXZvJzK9jhGHe28lqYw0WE47YBwDgqy1eeQiqSze5RvEahjtyVMvt7kC+yvRZ9620DAkyvg/Wa7oDmH1T5be1RNmHU6bc= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1686648083; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:MIME-Version:Message-ID:References:Subject:To; bh=CweT3I7UqT+XzBLwuOD1Q2n/WYxcdW+nDoO6dCHuOm0=; b=ajxf6irlARZRk8SnUs70ABGJoWTwimM80ca/DZTqZrBSl1vlEY95KzZXThIRPXcsq6N/Hx46OI9gOwpE+h7s6PsptjZj6jjBaex+AuxRwy1UL6asdemUACLf1jdZOHLbPmLS3SsU5r9xjct4n3vZue+I+vvwnzVFtNVIMPJmxhU= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass header.i=apertussolutions.com; spf=pass smtp.mailfrom=dpsmith@apertussolutions.com; dmarc=pass header.from= DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; t=1686648083; s=zoho; d=apertussolutions.com; i=dpsmith@apertussolutions.com; h=Message-ID:Date:Date:MIME-Version:Subject:Subject:To:To:Cc:Cc:References:From:From:In-Reply-To:Content-Type:Content-Transfer-Encoding:Message-Id:Reply-To; bh=CweT3I7UqT+XzBLwuOD1Q2n/WYxcdW+nDoO6dCHuOm0=; b=KePU+fU45/b+HN0dVkFVnLqAiWtkmBgOi71ucynAs0k7s8s6DZVZL1+l9AyQx36x J7W4inasJH9A9zBPPp72SaAvS34TT10enYhpJ27UWMIuL6dziw3gNINhyDyWR7cNimC I7cYWJnUc+kyZtwq9C/wj53WSdD5Ai0exnzypGzA= Message-ID: <70622b39-cf85-49f4-69a7-b8039baa07f4@apertussolutions.com> Date: Tue, 13 Jun 2023 05:21:18 -0400 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH 2/5] libxl: drop dead assignments to "ret" from libxl__domain_config_setdefault() Content-Language: en-US To: Jan Beulich Cc: Anthony Perard , Wei Liu , Juergen Gross , "xen-devel@lists.xenproject.org" References: <2dc50b58-a4e4-3e32-1876-94412b14b052@suse.com> <5eda17da-7185-9cf6-7e87-70da57aa0ebc@suse.com> <10f2d41f-b34f-207e-eb73-d53f31385d8e@suse.com> From: "Daniel P. Smith" In-Reply-To: <10f2d41f-b34f-207e-eb73-d53f31385d8e@suse.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-ZohoMailClient: External On 6/13/23 02:33, Jan Beulich wrote: > On 12.06.2023 22:21, Daniel P. Smith wrote: >> >> >> On 6/12/23 15:44, Daniel P. Smith wrote: >>> On 6/12/23 07:46, Jan Beulich wrote: >>>> The variable needs to be properly set only on the error paths. >>>> >>>> Coverity ID: 1532311 >>>> Fixes: ab4440112bec ("xl / libxl: push parsing of SSID and CPU pool ID >>>> down to libxl") >>>> Signed-off-by: Jan Beulich >>> >>> Reviewed-by: Daniel P. Smith > > Thanks. > My pleasure. >>>> --- >>>> If XSM is disabled, is it really useful to issue the 2nd and 3rd calls >>>> if the 1st yielded ENOSYS? >>> >>> Would you be okay with the calls staying if instead on the first >>> invocation of any libxl_flask_* method, flask status was checked and >>> stored in a variable that would then be checked by any subsequent calls >>> and immediately returned if flask was not enabled? > > I'm wary of global variables in shared libraries. > I agree with that sentiment, but I would distinguish global state from a global variable. I would take the approach of, static boot is_flask_enabled(void) { /* 0 unchecked, 1 checked but disabled, 2 enabled */ static int state = 0; if ( state == 0 ) state = check_flask_state(); /* pseudo call for real logic */ return (state < 2 ? false : true); } Then all the libxl_flask_* methods would is_flask_enabled(). This would not expose a global variable that could be manipulated by users of the library. >> Looking closer I realized there is a slight flaw in the logic here. The >> first call is accomplished via an xsm_op call and then assumes that >> FLASK is the only XSM that has implemented the xsm hook, xsm_op, and >> that the result will be an ENOSYS. If someone decides to implement an >> xsm_op hook for any of the existing XSM modules or introduces a new XSM >> module that has an xsm_op hook, the return likely would not be ENOSYS. I >> have often debated if there should be a way to query which XSM module >> was loaded for instances just like this. The question is what mechanism >> would be best to do so. > > Well, this is what results from abusing ENOSYS. The default case of a > switch() in a handler shouldn't return that value. Only if the entire > hypercall is outright unimplemented, returning ENOSYS is appropriate. > In fact I wonder whether dummy.h's xsm_do_xsm_op() is validly doing so, > when that function also serves as the fallback for XSM modules > choosing to not implement any of the op-s (like SILO does). I understand your point, but if ENOSYS (Not Implemented) is not correct, what is the appropriate return value for this module does not support this op? > Since in the specific case here it looks like the intention really is > to carry out Flask-specific operations, a means to check for Flask > specifically might indeed be appropriate. If not a new sub-op of > xsm_op, a new sysctl might be another option. I am actually split on whether this should be an sub-op of xsm op or if this should be exposed via hyperfs. I did not consider a sysctl, though I guess an argument could be constructed for it. v/r, dps From xen-devel-bounces@lists.xenproject.org Tue Jun 13 09:31:40 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 09:31:40 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547923.855576 (Exim 4.92) (envelope-from ) id 1q90Mz-00053v-PR; Tue, 13 Jun 2023 09:31:21 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547923.855576; Tue, 13 Jun 2023 09:31:21 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q90Mz-00053o-Lj; Tue, 13 Jun 2023 09:31:21 +0000 Received: by outflank-mailman (input) for mailman id 547923; Tue, 13 Jun 2023 09:31:20 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q90My-00053i-KG for xen-devel@lists.xenproject.org; Tue, 13 Jun 2023 09:31:20 +0000 Received: from EUR04-HE1-obe.outbound.protection.outlook.com (mail-he1eur04on2058.outbound.protection.outlook.com [40.107.7.58]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 0be31b00-09cd-11ee-8611-37d641c3527e; Tue, 13 Jun 2023 11:31:17 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by PAXPR04MB8975.eurprd04.prod.outlook.com (2603:10a6:102:20e::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.39; Tue, 13 Jun 2023 09:30:46 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.039; Tue, 13 Jun 2023 09:30:46 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 0be31b00-09cd-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=J5x64T1CLjTjDkJoM7O1uzi37W7opUZ0rqORA32S/h3LeXttx/mqJvpl7JpYnRSz3ctLtATtIWMBxlPCgnBYtUJDNc9sdYrjK94BZeTn+8yjBQEGfRwX3szkB6GLQwzt0Hz5uw9rFkGaknMp5cJW1uHge1QyTXvR/NRZXb47+d0Q0s3DgbwknyWiJKCgmBJQvMEWLKqO06OPCZ1KzJFLqS2t1/KHE2HziuB8s08yQpO54M6cNOVRCym39YQT9G6/9ejus/aWyQ7CiZKHHS3NxjiVm6x2adIzAt2BjyxQ6HXCXAit1AsbPvN75G5sv3sCq07acto8NbfH5GzsxBa4OQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=c9kSIYMVG8XziLWtWdDYHGOVY15fJRUb5dwyAwn396E=; b=hm5p0HWyB4JhpXA9/RGflRgTpjvNdDTrshsaNaCLmc/LhjG970NhMX6xm+zv5h1+K2vp51pgr4Wcv22A4eH2Y3lRbiQWZLGzAlP0BAnFF7tvso3aF9S6bhjuP7+kUwuxxnTAjLmhxOFakHUpnOQG5TS0f1GZR6hW0yg0mJQrCwDM7l7M4k5iWm1fDvjFS06Cjzf2D7v52+56BeB5UwsAcVohIyKPtXA9O7/U51HJrAPfuX6acYS36+Wo5IaNA3lVQ72okd6bHSMw1i1K2hTDFsH0wHLawXvBoX89Zu9/NIRNLLiB+HFZaDxb6QZszNHIJcyGaaUZnu8LkWCU+AoqUw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=c9kSIYMVG8XziLWtWdDYHGOVY15fJRUb5dwyAwn396E=; b=xZk6UrhGEAVDEsZi+rxx6VeU50oGh4kYT0gEfRNsN4SjcZkm9Do8DCN4I/jnPS1Z0WDNvrDHpdtIwFuZ+fjD2VRIrol9fmxp6/9RYP+oJb9HK+4J6PDqEP3/t5kpY1ChW5gmkDxqRQFzbqTumJ2qqSq3ToNodzkKgNi5Oc5GSLWRuCKyradSvMYe5gT/+eKGBqPrW69hbR6FHFPsM0qPP5LYsKkXjdEUx6J4J7+lCVdrQfHbabvczgjkt0M5rM/9hFDTLtCEX0rCtmEGSnx3Rjgt/P8HM+N0nQTjy6WQdfJbydtXmHgcwkiUhcR9MA/4Yh858Oe9hAV718p9ntzWjQ== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <81f74759-766a-bc3f-f4de-199cf3f1bd75@suse.com> Date: Tue, 13 Jun 2023 11:30:44 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v3 3/4] x86/spec-ctrl: Fix up the RSBA/RRSBA bits as appropriate Content-Language: en-US To: Andrew Cooper Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , Xen-devel References: <20230612161306.2739572-1-andrew.cooper3@citrix.com> <20230612161306.2739572-4-andrew.cooper3@citrix.com> From: Jan Beulich In-Reply-To: <20230612161306.2739572-4-andrew.cooper3@citrix.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR2P281CA0184.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:9f::16) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|PAXPR04MB8975:EE_ X-MS-Office365-Filtering-Correlation-Id: a97c1238-3bf5-443f-d44d-08db6bf0dde7 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: Qh56knnxLcvHlENnFs45vh3S9KjsHh32R6EiPrKz4Satj9mfunIieCPNs0wtWlWRIdcfbuRlPTFuLQNNw8LkT78VdIcBhF7CB/qvKhp275hUR5m8LHHbGuAnT15sG40Gtc7FvMhVMX3msohkOfl+m2JYtbLFwLodvtR/cJ7xfUlxwduAJdyfY7gsvYytcWp5T5AAZZm+uLomG9mLNhD7YconG21lsu2giMvodHjW/HK2p5uaN9WyMmyrgrw119FmQsZXOUrdWisRlXSQx+wtbeuOhOckwox49UENoqajvxGoLv4LBv+kLLpidZ+FLDC83TLjZy73qD0rSUChrPGo/7YFajwFnhunYgOITz+SPuhAY8AEt5gMy6g1pPQeDfr4dTfNRPyzcJYZYZVWCjpPnV8EQJPibm9Fl8N7PcydE07TSrG0eA3I1pqQ8hTOQBgWAjteVNWXLSi+ooH/dMkp6aKIxQ7LeLNN0shI2fsT1Czzv//GP7z3nQgMN7dG8Dv4TUUqaX0aAPZLP3vuQXLXZrM3Yg5L9tlSyXxfmxm9h0TTmlFk6em6T1RL9bRb0I67STjSVCfJWLrrlals71BBA8M3CVa3CWMKCkUrJPI3xKjhkrC4mTpAkBmWe32tZe0GZUVSd1/fMTLJfz6lFjrSug== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(136003)(366004)(346002)(39860400002)(396003)(376002)(451199021)(2616005)(38100700002)(86362001)(31696002)(36756003)(478600001)(31686004)(54906003)(4326008)(6486002)(8936002)(8676002)(2906002)(5660300002)(66556008)(66946007)(66476007)(41300700001)(6916009)(316002)(53546011)(186003)(6512007)(6506007)(26005)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?Rlg4WmZ1emxubGtVT0NMWjZRK2xZaDV2V0JNMFUzMDNNcENTUUk3ZUVDekpt?= =?utf-8?B?UWZVLzU5WGV1VktyOWh2WmljbDcxaUtlN3ZsckVlemxzYlRXb3N0RDJVVzIv?= =?utf-8?B?OE0xeC9lcEtyYjh2VWNsMTdDMnd0am1EZXhjZTdZM0FjbzJWN1JZK1M0SVFn?= =?utf-8?B?UjBreC9tbUEvYjVHTWlBUk1Ud05YWVU4UlJJd3NOcy8yWmFXNlBIdm9tRFhn?= =?utf-8?B?QVJsdER5S3JNclUzVG1YZDVoamdEd0EwOFVxa2JUbTZZZU0rTDEzY0NWSUZF?= =?utf-8?B?aE9zb2xObnNXY0xwaWFVT1VPVWFxd0RwcVhTZWNYSS91L0t1eUlFQUcrUVFG?= =?utf-8?B?NllwVGlsRmR1MzFROUdwR1daVmxxV1M0a1hnK0pncWJJSWVaZExxYXQ5b3ov?= =?utf-8?B?STJUR3hoaHdoemp4S1BMUE1pb05idXJ0R3M0S3dISFJHcExVaWdHZmlycFJG?= =?utf-8?B?MUFMbXlNNUlxcWhQTU1lR0hLdEw5TVc2bVk3T1ZGaklHOFgzQThSWXF6VTAy?= =?utf-8?B?VHFabzBOcDFETHVvWnhSVlVsNHNJUnBRbXRRczRwd1dXS0lFZnNHdmR0OVA4?= =?utf-8?B?bzc4N01OVmpRNWxVUjZSNkM3aXM5cVZ0T3Qrb2dEcnd1YjVlbDY2T0Y1MVB6?= =?utf-8?B?cWJJa1JZK1VMOWRMY1lOeTd1RFJkOTAwKy9oNnBBUHFlV2hrSElVQzAyTEtT?= =?utf-8?B?SS9xS3B1cnZCZDA4UTBFYzlDd2lCSkRNZWlLdGVIMDAxblVsNFR5MkcxMkRW?= =?utf-8?B?ZW1UNENsUndBUWp0OTZlM3ZWeFo0bW5XQk1HdXdWTWNKei9RV0lLbEg5dEpE?= =?utf-8?B?QmJrbjhDKysvUVkvQ0xTTDRrRUU1VmlsNklidTNhQld2WnAvbjlISkpKblZw?= =?utf-8?B?UlFGUUpXQnFpZzI0Mzd4VzVSWTRQV2NXVHBRWWtGaTlkK1hQaU9LdzBuZDZr?= =?utf-8?B?WlMvZ2dITlJRY0FTMy9YL1dtVkpJcHB4ZXhLY3owN2Z1Y0VoMGhQUWdPQ25I?= =?utf-8?B?QUt4NTlFck1EcXhmSHZmTm1ocC84dXVhaW5WTnhndk9lcWszS3h2ZE0vbGdE?= =?utf-8?B?QTg1L29DY3ZpUTFuUm5rNXllUkZ4NktKaXBVbVVHSWMxWk5wbnVDMW5WRUo0?= =?utf-8?B?Sk1Wajl0NllEd1NNcytvYW9nSDI2UERMNDhJOExmV0ZvWElySlEyMmN3M3NP?= =?utf-8?B?c3R1Mlc1R2M0SW5HVWpReWtLbDZmYXpNM0l3U2lUN3BLNWhWU0RTMUE2WmJC?= =?utf-8?B?U2pSK2FuL1E1SkU3RmFkM2VRVk9JaW02OTlXcjhubDBPTGpBV2EyemMrWTll?= =?utf-8?B?UFlNSEx0YU5ZMWtoTXUxYUFQRDlPMGtuSjNYeExXRzRYUFpHN0x6K21sd29u?= =?utf-8?B?dGlITC8yTmhOTldMWkYwdlYvNitXYTdTUk41anQ4TzhlaEo3Z3FhRFhWbk1E?= =?utf-8?B?Rm92NnVjTmtPMlVuRVJVVUdVYmZjZlBRUmpPNzU3VDJEcFM1SGlsdjFsa0Y3?= =?utf-8?B?aXcxS2xHdlVsNFV5cTZud3hRVEJId1hiZWJjY2lPelBHQ3RDbFJLRzRpRkRL?= =?utf-8?B?SDZnM0FZYWVPcG10UTJSS0JDaHZqQjF3bXk5MDBQekt5MWw2YnE3ZDlXWUhJ?= =?utf-8?B?WE1UWkxaN1JsN3hHc3lxUXFXMUxVMkJaOWlkQ0N2eFhTMzRxbVR2V0tVZkYr?= =?utf-8?B?dWtlVDBGbmpmeG9iTXF6RFpnRzFaRCtXdDRsVHFlMWNvNEdhYUtKcVFURXlV?= =?utf-8?B?NTRGRlRJbHBZTEJjTEtOcXo1QVBSMS8rbHRiS3BjZ1MxQ1l5SG1lSW10UFM3?= =?utf-8?B?SVR4ZExla0ZWbTdyL0xGbFZvemhYNFBLZDlhZHBpTTRYUnVxcFFKdEtHS0ZO?= =?utf-8?B?UW9TcDVhcjJkNE82ajFwd0xRSHdXTWQzTGpuOUlhbGNXSEVNMnNHcWh3OUdR?= =?utf-8?B?dGw1K2E5NjZ2a0VBNytraUsrNm5BcEI3YThudHl3cEZsTWxHdWZQbmJuYVlG?= =?utf-8?B?bHJTcVBBeHpoalJORks4QnF1S0RlRTg0Q1dFT2pkQW5SQmZkY25yRTZuS1Iy?= =?utf-8?B?UU9iQVd3MmJWeWc3Z0ZUNThXRFN6Q2VwanNhZEZ5VHk5b3ZLUGR6YzA4S2w1?= =?utf-8?Q?zcMKcslRTex8xUZTiBNxWGtXp?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: a97c1238-3bf5-443f-d44d-08db6bf0dde7 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Jun 2023 09:30:46.3805 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 3WXXxMBwd4LWwW3W2LbsOYfAihIDPm0DbAdB3taQYKl2JRHNPkqCeDdoXm+c6yrBVblZ5dHggyLBExO74o96rw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB8975 On 12.06.2023 18:13, Andrew Cooper wrote: > @@ -593,15 +596,93 @@ static bool __init retpoline_calculations(void) > return false; > > /* > - * RSBA may be set by a hypervisor to indicate that we may move to a > - * processor which isn't retpoline-safe. > + * The meaning of the RSBA and RRSBA bits have evolved over time. The > + * agreed upon meaning at the time of writing (May 2023) is thus: > + * > + * - RSBA (RSB Alternative) means that an RSB may fall back to an > + * alternative predictor on underflow. Skylake uarch and later all have > + * this property. Broadwell too, when running microcode versions prior > + * to Jan 2018. > + * > + * - All eIBRS-capable processors suffer RSBA, but eIBRS also introduces > + * tagging of predictions with the mode in which they were learned. So > + * when eIBRS is active, RSBA becomes RRSBA (Restricted RSBA). > + * > + * - CPUs are not expected to enumerate both RSBA and RRSBA. > + * > + * Some parts (Broadwell) are not expected to ever enumerate this > + * behaviour directly. Other parts have differing enumeration with > + * microcode version. Fix up Xen's idea, so we can advertise them safely > + * to guests, and so toolstacks can level a VM safety for migration. > + * > + * The following states exist: > + * > + * | | RSBA | EIBRS | RRSBA | Notes | Action | > + * |---+------+-------+-------+--------------------+---------------| > + * | 1 | 0 | 0 | 0 | OK (older parts) | Maybe +RSBA | > + * | 2 | 0 | 0 | 1 | Broken | +RSBA, -RRSBA | > + * | 3 | 0 | 1 | 0 | OK (pre-Aug ucode) | +RRSBA | > + * | 4 | 0 | 1 | 1 | OK | | > + * | 5 | 1 | 0 | 0 | OK | | > + * | 6 | 1 | 0 | 1 | Broken | -RRSBA | > + * | 7 | 1 | 1 | 0 | Broken | -RSBA, +RRSBA | > + * | 8 | 1 | 1 | 1 | Broken | -RSBA | You've kept the Action column as you had it originally, despite no longer applying all the fixups. Wouldn't it make sense to mark those we don't do, e.g. by enclosing in parentheses? > + * However, we don't need perfect adherence to the spec. We only need > + * RSBA || RRSBA to indicate "alternative predictors potentially in use". > + * Rows 1 & 3 are fixed up by later logic, as they're known configurations > + * which exist in the world. > * > + * Complain loudly at the broken cases. They're safe for Xen to use (so we > + * don't attempt to correct), and may or may not exist in reality, but if > + * we ever encoutner them in practice, something is wrong and needs Nit: "encounter" > + * further investigation. > + */ > + if ( cpu_has_eibrs ? cpu_has_rsba /* Rows 7, 8 */ > + : cpu_has_rrsba /* Rows 2, 6 */ ) > + { > + printk(XENLOG_ERR > + "FIRMWARE BUG: CPU %02x-%02x-%02x, ucode 0x%08x: RSBA %u, EIBRS %u, RRSBA %u\n", > + boot_cpu_data.x86, boot_cpu_data.x86_model, > + boot_cpu_data.x86_mask, ucode_rev, > + cpu_has_rsba, cpu_has_eibrs, cpu_has_rrsba); Perhaps with adjustments (as you deem them sensible) Reviewed-by: Jan Beulich Jan From xen-devel-bounces@lists.xenproject.org Tue Jun 13 09:40:52 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 09:40:52 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547928.855585 (Exim 4.92) (envelope-from ) id 1q90W3-0006Z8-Jg; Tue, 13 Jun 2023 09:40:43 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547928.855585; Tue, 13 Jun 2023 09:40:43 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q90W3-0006Z1-Gu; Tue, 13 Jun 2023 09:40:43 +0000 Received: by outflank-mailman (input) for mailman id 547928; Tue, 13 Jun 2023 09:40:42 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q90W2-0006Ys-DD for xen-devel@lists.xenproject.org; Tue, 13 Jun 2023 09:40:42 +0000 Received: from EUR03-DBA-obe.outbound.protection.outlook.com (mail-dbaeur03on2060f.outbound.protection.outlook.com [2a01:111:f400:fe1a::60f]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 5b61ca37-09ce-11ee-8611-37d641c3527e; Tue, 13 Jun 2023 11:40:40 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by AM9PR04MB8241.eurprd04.prod.outlook.com (2603:10a6:20b:3e4::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.44; Tue, 13 Jun 2023 09:40:35 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.039; Tue, 13 Jun 2023 09:40:35 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 5b61ca37-09ce-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Ql+1iSg+bTDf0qHku5y6rels7eJAvsBsr/cDgykqy/pavvXYe32FDiR4jTydoRnT8hdB+JlFCpKWheuJaUi15c3aJDDv5HQKve1CVM1ANdIkOf4Rv6EjyCaIoILLjq0WW8LkNSADGfNBvzABsZwhbAB0i/YcL90LTTgp/mNcUtquIqkLNf8sFRQgn8vGuQOUDQyapBtOOyNUaBl+gbf25Hf0ROzwsNAKbqtz1jBWP9No/qIiyl0CIU/O/SxD520wRtlBPN1TjJwls9T4jTL1CLrSgw2L7vR5gA/68PUeKeIwLzFDvt3I9k0UwwPGUo+sld5Eo905BQesRCboIF6uig== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=K08boMz5y38yj7qO8fB983ksCz8FNS5yAVWhpuy+tpU=; b=QMABfTLInH50/DYtqKq0FPzBpaBn5tZLljj9FE9OtV1nAdFBF1s619MbeGMsSbW+MgkcCt5mWO+WYSBHim4LunWu6eoHC6Er4qvM6p4fjiNZyWyu7V+i02Er276Bv8fHm6BuLrd1sGoCHhaR5T2aUG9wHisIrV5Z50MeDJGaojChEXq9qGezBJ8uHHZzW2O+JkKcZa2jOBVIqEP9zhQJdG/ruRhkZsYarL1IM07G4FgHcoEW0HKSDdlbta6OTtFvfihMKpjpKlhM8THCAlHTg74zgO59yq33DSgbYV/gxDCW0dtrFP3BF+SrDUyq8eW+ZmQZu/vhyFZjzhmorvPeMw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=K08boMz5y38yj7qO8fB983ksCz8FNS5yAVWhpuy+tpU=; b=HGUnhLFlyBoJF5OkKJteOf1lsnsvJ4I1ZKdJM2ag7k29J1sritBw9BbqyyK+umCEf4ajOlCvu9ejpyPDKvtVBrJJQdW4Ehz0nPiY5IT1anINv39MR38TIaaXScnfz9t86zTo6OhcGSES1V+Dsx8O2JsK/g5sPBHGNwpYGgxHr1GxaDn6qC13PwLGDobPVi3Cek7rHIovQjjTudFg/YSKaaz+N1oOWMxbS4H8Hk5jZMHqAY0+VU7BP8VP5tXc8kC2irXx6vEtFPr+X01/F+J+FxfdO4LmsyGEf/s8SE07vCpszDs905hiraw4xeLYevXf5zLUH2IRWa9B+F+tYrUxYg== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: Date: Tue, 13 Jun 2023 11:40:33 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH 2/5] libxl: drop dead assignments to "ret" from libxl__domain_config_setdefault() Content-Language: en-US To: "Daniel P. Smith" Cc: Anthony Perard , Wei Liu , Juergen Gross , "xen-devel@lists.xenproject.org" References: <2dc50b58-a4e4-3e32-1876-94412b14b052@suse.com> <5eda17da-7185-9cf6-7e87-70da57aa0ebc@suse.com> <10f2d41f-b34f-207e-eb73-d53f31385d8e@suse.com> <70622b39-cf85-49f4-69a7-b8039baa07f4@apertussolutions.com> From: Jan Beulich In-Reply-To: <70622b39-cf85-49f4-69a7-b8039baa07f4@apertussolutions.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR2P281CA0059.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:93::13) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|AM9PR04MB8241:EE_ X-MS-Office365-Filtering-Correlation-Id: 452feff5-894e-45a8-85bc-08db6bf23d39 X-LD-Processed: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 95uDRibkp96JCMVObhgdjUVFgjfuUFlw1xJ4HI9sMKLFjbcspK3ez8Y6wYV1HIdjcF6NSRQ31w/lyu3A0KFPtnT2VQcB+mCJGa+6F3jrRDzzWMgp47c2WBYFFyNLkU9Ua3mz7RQ4I2a+gDwiUgm7PjAPK0PfKfeGOjY9hcymA46IWdLVctQBe+BMRaEDM5QTOiOnUwEiPr1AXiz/95XJigzWjemG+5AWYRQV4CqxMHqqiDfjut/OdSFTa8bTeLRpj2DigytbsWP9EoRapAh+kDPkjCm5X7jiC5jPX/GFPjhO0MJQv6f6fNsI9OuDpUwdVSIlMTh1J426SKO2QlOIa4GSB861u4W/ur2LD8f4pQ+xqAPYur2dZxHfqxDvCA0qeYKGHqWT66YwS/81N3ARhT8ShxtsQMSqZwfDWcReB7yUf6hZv5/nHYXxsndmdeEjWJgeB1Ry6qGk0hXfaR3DxpPZeUacUt68TmrFAGXH/sITFCp5k+cr+edJyFoLXZzBh1fEmLlhbVwEDNNVvHaVbeqc7EequBw+e+nHLHZJ8jEEJ2VxsTqYC1Qtl3n7tEm8QEHA8UmBPbtV41FbBfEtM7JinCfxvol+vIsKUEbu0Q9oVJx3iEtbveWhaVlUaIyjJGn6M+34c0/rBggra19KvdP2ibOkVEgyrB7G5yym6QIYV3+j4z/fbfMcwiCOeTKM X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(376002)(366004)(136003)(39860400002)(346002)(396003)(451199021)(66556008)(66476007)(6916009)(8936002)(8676002)(36756003)(5660300002)(66946007)(54906003)(31686004)(4326008)(478600001)(41300700001)(6486002)(316002)(38100700002)(6512007)(6506007)(186003)(26005)(83380400001)(2616005)(86362001)(31696002)(53546011)(2906002)(101420200003)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?RXFrTVFjSTFyd3NSS3R3UDN3SThXbEZSdk1ZNytVRjdQSE5ZSDJubHVReDVp?= =?utf-8?B?V2o1SlhPQkNpaUJ2aFBQNUZxbG9xOXRqRjFWMFMzU0E3MUtzSHI1Zmo1cHRB?= =?utf-8?B?MDRLSEl0ampnUjNLem1OL1ViRU45QVFtTUlyTFo0TUxXbHkyamZTOVdXNTAw?= =?utf-8?B?dzl1U1pEbFZzbVYxM3BxK3grVEw4djliNnVscC9Vb3BHOVFYendxVElUdEp6?= =?utf-8?B?K1lPZ2tvOEJxQ21Cb0JkTy85V1p4d2ZWTW9HN2hOM2xCMnpweG90ZGp5TXBt?= =?utf-8?B?elhSb2tBQkltVXhvTWVQWlJodFFOTnVJdlFLdXpkOHFoQXZoZ1RRU0ZoWGo2?= =?utf-8?B?ZEZjZlE1dDYvSTRYdGtRRjNqVVZpYy9lbWkvY2JteUtsNFI1Mk4rdXBBTUxm?= =?utf-8?B?bVd0bTBMMHp0RC9RakVWaTd2dzhGalNUQ1BteE5VQ2tTZ0t0alpIbTQxc1Fo?= =?utf-8?B?Y0xURlFpbEU5MkNmNW5rcm1BY1BaQjMwWVkxUUo2TnZ2SnVqVkZ0NHg5bXlW?= =?utf-8?B?Q2ZNcGVqKzJWRlBla3JMR2JKMzRRZFJuK1FiZkx4Z1dTR0VQQUxPMjBLbURW?= =?utf-8?B?M0JncDdnbFczQmd3b0drWXh1U0F2YS9KSUVWRlN0RU9rY1VKVGV0blRXWk9o?= =?utf-8?B?RE9ITGFRTnZPVS9rbzMrYm1SZ3NJdG4wM044WnA5OTcrTmhEME5GSUZpNGpj?= =?utf-8?B?a0kvUUl6SlErRER4UDR5Q0lBSlZiakhheVFZOVFXYTF3SXhBMmRCYUFJdlpz?= =?utf-8?B?bjFFYWgyVDJKQkFpaUhLZ2UwVHZYbWo5cUVpbnNGK21NMFRaTzFhTDY5aXI5?= =?utf-8?B?K0RiYmt4OWVFYWdBNitQZ1h3MnY3MDVuY1VrbTA3Mk9rM2pIb1g5ejZIdFpz?= =?utf-8?B?SmFqek4ySDdib0kvMTI3M2lvQ0RDQ01LTHZBUS9McFJ5YjQrY044RE1WaTcw?= =?utf-8?B?alpMbTQwWXBSdldrdkZiYmhpbVFQWnZic3ppN1dWaXJ3dkE3OWZadGpBWENY?= =?utf-8?B?dFN0azdVRGw5QnNPTVZ5OW9wQ0xqdWFOMVcwcU9zVTV1SzRJNlRzb01nRlpJ?= =?utf-8?B?OVd0OC9ObWQxeERjNjZ6ZFArRTBlODJzSkM0aFYzdFI5VlRIY054VjREdTJY?= =?utf-8?B?cTJqUWk1ZzE2YU9QWkkxRlZmTDdKT2xWblF1N2RIRWJwTDV6bHFCZDZLSVVS?= =?utf-8?B?ZUJ0VVJ3NnlGVDhuUHpPQXRIRC9vRU50V1A1Y04vaW03U3AzbnVEZ0pJZ3N1?= =?utf-8?B?QTZjUG8vOGNBNVZhcXI2Zy8xeFRaRHRiRldzZjdLcGFMN0RlTGNQbDN5Z01L?= =?utf-8?B?cHErMm5EeVNxVnNVU05aM1J4UGNXcVhHZjc0OHJ4UDQrdFU0K0VtdzFKVGtB?= =?utf-8?B?YllhVG5IbkhNbUxDd25VY05YdkF0dXJYNGpXU1pNMGJOYTBQTXVydUx1aVV6?= =?utf-8?B?KzdxRlh1UjJOOGxqY0ZGeWdlOWM0S0xDTHZ0VFFlbCtXT25GN3plZTY0aWlI?= =?utf-8?B?Si9vbC85Sk8vU1ZSMkc4Q2RadU9RS1FpNDV2dWE2L2FmdUQvQXVUUUpMK1Rz?= =?utf-8?B?Q1BkbjRUNitVV2RPSHB6RWdLcVFXeXFzaTZ1Q1p6MjNPTWYzV1M2b3VSb28z?= =?utf-8?B?bEQrd3NsT0RkUXZnQWlkcENDUEg1NENlQU5GUEpQY1kvUnVPVll6dVRlVUow?= =?utf-8?B?VDJEZUtialdhRXVZTk9kVHY5cnRLRWNaR1huNUR6UVk1VEFxRElDeWJGYTRJ?= =?utf-8?B?SHlma210cWJHb0YyMGNqakJPRGFDb2E0VGhKc2pPM0JKa2FXVm54aFB0cWw5?= =?utf-8?B?c2E4MTNxTE5iVGFmR080Q0FNTHBNQmJTOE92Y2VQVlpZcCtCVEJFUEo0c1dM?= =?utf-8?B?WmRzcmJqOVVteWgvRWErc0paeEhCRUp2Q0JlQUlJM3dpcndRdllKUzFIRWRJ?= =?utf-8?B?U2VINTJjU3V4aGJ3M2JaaHZGKzJmaXVVdlpPeHZJYmk3RFFmc0JnUzNTNHNG?= =?utf-8?B?UUZZZU9jdnpaNDlFWjBjRGM5cE1GSGVtelYrdVczT0tJUnlFTVI2aUdJbVFR?= =?utf-8?B?Z0lRMFVGVkJUQm5ON0tEVGVRZ3FKSTg5TmllUGZiZ2ZlaGhtdWFsMnJYNmM4?= =?utf-8?Q?4X+XxbQwqmD6guc8lly9YvwSh?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 452feff5-894e-45a8-85bc-08db6bf23d39 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Jun 2023 09:40:35.7882 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: f5bJ3WXMObktU29qP1KGfjgIqTQ2ZqH4CD6QP01Pn16iRqXg6aG8XPRnyyyrUf9/Q2he6LrkrhpmWoOXZKiegQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR04MB8241 On 13.06.2023 11:21, Daniel P. Smith wrote: > On 6/13/23 02:33, Jan Beulich wrote: >> On 12.06.2023 22:21, Daniel P. Smith wrote: >>> On 6/12/23 15:44, Daniel P. Smith wrote: >>>> On 6/12/23 07:46, Jan Beulich wrote: >>>>> If XSM is disabled, is it really useful to issue the 2nd and 3rd calls >>>>> if the 1st yielded ENOSYS? >>>> >>>> Would you be okay with the calls staying if instead on the first >>>> invocation of any libxl_flask_* method, flask status was checked and >>>> stored in a variable that would then be checked by any subsequent calls >>>> and immediately returned if flask was not enabled? >> >> I'm wary of global variables in shared libraries. >> > > I agree with that sentiment, but I would distinguish global state from a > global variable. I would take the approach of, > > static boot is_flask_enabled(void) > { > /* 0 unchecked, 1 checked but disabled, 2 enabled */ > static int state = 0; > > if ( state == 0 ) > state = check_flask_state(); /* pseudo call for real logic */ > > return (state < 2 ? false : true); > } > > Then all the libxl_flask_* methods would is_flask_enabled(). This would > not expose a global variable that could be manipulated by users of the > library. Well, I certainly did assume the variable wouldn't be widely exposed. And the library also clearly is far from free of r/w data. But still. That aspect aside - wouldn't such a basic state determination better belong in libxc then? (There's far less contents in .data / .bss there.) >>> Looking closer I realized there is a slight flaw in the logic here. The >>> first call is accomplished via an xsm_op call and then assumes that >>> FLASK is the only XSM that has implemented the xsm hook, xsm_op, and >>> that the result will be an ENOSYS. If someone decides to implement an >>> xsm_op hook for any of the existing XSM modules or introduces a new XSM >>> module that has an xsm_op hook, the return likely would not be ENOSYS. I >>> have often debated if there should be a way to query which XSM module >>> was loaded for instances just like this. The question is what mechanism >>> would be best to do so. >> >> Well, this is what results from abusing ENOSYS. The default case of a >> switch() in a handler shouldn't return that value. Only if the entire >> hypercall is outright unimplemented, returning ENOSYS is appropriate. >> In fact I wonder whether dummy.h's xsm_do_xsm_op() is validly doing so, >> when that function also serves as the fallback for XSM modules >> choosing to not implement any of the op-s (like SILO does). > > I understand your point, but if ENOSYS (Not Implemented) is not correct, > what is the appropriate return value for this module does not support > this op? You almost say it by the wording you chose: EOPNOTSUPP. >> Since in the specific case here it looks like the intention really is >> to carry out Flask-specific operations, a means to check for Flask >> specifically might indeed be appropriate. If not a new sub-op of >> xsm_op, a new sysctl might be another option. > > I am actually split on whether this should be an sub-op of xsm op or if > this should be exposed via hyperfs. I did not consider a sysctl, though > I guess an argument could be constructed for it. Please don't forget that hypfs, unlike sysctl, is an optional thing, so you can't use it for decision taking (but only for informational purposes). Jan From xen-devel-bounces@lists.xenproject.org Tue Jun 13 09:45:04 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 09:45:04 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547935.855596 (Exim 4.92) (envelope-from ) id 1q90aA-0007Fd-A3; Tue, 13 Jun 2023 09:44:58 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547935.855596; Tue, 13 Jun 2023 09:44:58 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q90aA-0007FW-74; Tue, 13 Jun 2023 09:44:58 +0000 Received: by outflank-mailman (input) for mailman id 547935; Tue, 13 Jun 2023 09:44:57 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q90a9-0007FQ-MH for xen-devel@lists.xenproject.org; Tue, 13 Jun 2023 09:44:57 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q90a2-0004C0-T5; Tue, 13 Jun 2023 09:44:50 +0000 Received: from [15.248.2.253] (helo=[10.24.67.29]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1q90a2-0004pZ-MO; Tue, 13 Jun 2023 09:44:50 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=SmZhgzXzWP89iC8wwSKmPIgtZTSCpMkaW6PrFNu4Krs=; b=6E776rsEWHJySRQvwguHDBPEz2 0fg7rsg1/I/Zrz1k7LM/ouxSoj5GEXPUAJ429dBhwJ1gaJSngFWWvegbmEmLq35c5UXyksdzb//SE 2v8FtJRSPhvq+OpaG0Y2LAmQDnbjoFfJyKvn5nFDba7eNDGb7YJIODZwaZoz26H7x5TY=; Message-ID: Date: Tue, 13 Jun 2023 10:44:47 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [XEN PATCH] xen: fixed violations of MISRA C:2012 Rule 3.1 Content-Language: en-US To: Jan Beulich , Nicola Vetrini Cc: consulting@bugseng.com, Stefano Stabellini , Bertrand Marquis , Volodymyr Babchuk , Andrew Cooper , George Dunlap , Wei Liu , Rahul Singh , xen-devel@lists.xenproject.org References: <42cb13a7-3b62-8d48-a1a1-3094a7bd07fa@suse.com> From: Julien Grall In-Reply-To: <42cb13a7-3b62-8d48-a1a1-3094a7bd07fa@suse.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi, On 13/06/2023 09:27, Jan Beulich wrote: > On 13.06.2023 09:42, Nicola Vetrini wrote: >> The xen sources contain several violations of Rule 3.1 from MISRA C:2012, >> whose headline states: >> "The character sequences '/*' and '//' shall not be used within a comment". >> >> Most of the violations are due to the presence of links to webpages within >> C-style comment blocks, such as: >> >> xen/arch/arm/include/asm/smccc.h:37.1-41.3 >> /* >> * This file provides common defines for ARM SMC Calling Convention as >> * specified in >> * http://infocenter.arm.com/help/topic/com.arm.doc.den0028a/index.html >> */ >> >> In this case, we propose to deviate all of these occurrences with a >> project deviation to be captured by a tool configuration. >> >> There are, however, a few other violations that do not fall under this >> category, namely: >> >> 1. in file "xen/arch/arm/include/asm/arm64/flushtlb.h" we propose to >> avoid the usage of a nested comment; >> 2. in file "xen/common/xmalloc_tlsf.c" we propose to substitute the >> commented-out if statement with a "#if 0 .. #endif; >> 3. in file "xen/include/xen/atomic.h" and >> "xen/drivers/passthrough/arm/smmu-v3.c" we propose to split the C-style >> comment containing the nested comment into two doxygen comments, clearly >> identifying the second as a code sample. This can then be captured with a >> project deviation by a tool configuration. >> >> Signed-off-by: Nicola Vetrini >> --- >> Changes: >> - Resending the patch with the right maintainers in CC. > > But without otherwise addressing comments already given, afaics. One more > remark: > >> --- a/xen/common/xmalloc_tlsf.c >> +++ b/xen/common/xmalloc_tlsf.c >> @@ -140,9 +140,10 @@ static inline void MAPPING_SEARCH(unsigned long *r, int *fl, int *sl) >> *fl = flsl(*r) - 1; >> *sl = (*r >> (*fl - MAX_LOG2_SLI)) - MAX_SLI; >> *fl -= FLI_OFFSET; >> - /*if ((*fl -= FLI_OFFSET) < 0) // FL will be always >0! >> - *fl = *sl = 0; >> - */ >> +#if 0 >> + if ((*fl -= FLI_OFFSET) < 0) // FL will be always >0! >> + fl = *sl = 0; > > You want to get indentation right here, and you don't want to lose > the indirection on fl. > >> +#endif >> *r &= ~t; >> } >> } > > If you split this to 4 patches, leaving the URL proposal in just > the cover letter, then I think this one change (with the adjustments) > could go in right away. Similarly I expect the arm64/flushtlb.h > change could be ack-ed right away by an Arm maintainer. I actually dislike the proposal. In this case, the code is meant to look like assembly code. I would replace the // with ;. Also, I would like to keep the comment style in sync in arm32/flushtlb.h. So can this be updated as well? Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Tue Jun 13 09:56:43 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 09:56:43 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547940.855605 (Exim 4.92) (envelope-from ) id 1q90lE-0000PJ-AG; Tue, 13 Jun 2023 09:56:24 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547940.855605; Tue, 13 Jun 2023 09:56:24 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q90lE-0000PC-7f; Tue, 13 Jun 2023 09:56:24 +0000 Received: by outflank-mailman (input) for mailman id 547940; Tue, 13 Jun 2023 09:56:23 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q90lD-0000P6-2B for xen-devel@lists.xenproject.org; Tue, 13 Jun 2023 09:56:23 +0000 Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 8c69079b-09d0-11ee-b232-6b7b168915f2; Tue, 13 Jun 2023 11:56:21 +0200 (CEST) Received: from [192.168.1.88] (unknown [176.206.20.8]) by support.bugseng.com (Postfix) with ESMTPSA id 83DCE4EE073F for ; Tue, 13 Jun 2023 11:56:20 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 8c69079b-09d0-11ee-b232-6b7b168915f2 Content-Type: multipart/alternative; boundary="------------sgipg8zKbYjPxXItngEYtImS" Message-ID: Date: Tue, 13 Jun 2023 11:56:19 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [XEN PATCH] xen: fixed violations of MISRA C:2012 Rule 3.1 Content-Language: en-US To: xen-devel@lists.xenproject.org References: <42cb13a7-3b62-8d48-a1a1-3094a7bd07fa@suse.com> From: nicola In-Reply-To: <42cb13a7-3b62-8d48-a1a1-3094a7bd07fa@suse.com> This is a multi-part message in MIME format. --------------sgipg8zKbYjPxXItngEYtImS Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit On 13/06/23 10:27, Jan Beulich wrote: > On 13.06.2023 09:42, Nicola Vetrini wrote: >> --- a/xen/common/xmalloc_tlsf.c >> +++ b/xen/common/xmalloc_tlsf.c >> @@ -140,9 +140,10 @@ static inline void MAPPING_SEARCH(unsigned long *r, int *fl, int *sl) >> *fl = flsl(*r) - 1; >> *sl = (*r >> (*fl - MAX_LOG2_SLI)) - MAX_SLI; >> *fl -= FLI_OFFSET; >> - /*if ((*fl -= FLI_OFFSET) < 0) // FL will be always >0! >> - *fl = *sl = 0; >> - */ >> +#if 0 >> + if ((*fl -= FLI_OFFSET) < 0) // FL will be always >0! >> + fl = *sl = 0; > You want to get indentation right here, and you don't want to lose > the indirection on fl. Understood. >> +#endif >> *r &= ~t; >> } >> } > If you split this to 4 patches, leaving the URL proposal in just > the cover letter, then I think this one change (with the adjustments) > could go in right away. Similarly I expect the arm64/flushtlb.h > change could be ack-ed right away by an Arm maintainer. Ok. I do not understand what you mean by "leaving the URL proposal in just the cover letter". Which URL? I'm sorry, I didn't notice your previous reply. I'm going to address your observations now: > Here "propose" is appropriate in the description, as this is something > the patch does not do. Further down, however, you mean to describe > what the patch does, not what an eventual patch might do. > To my knowledge, there is not a standard format to define a project deviation for a certain MISRA rule in Xen right now (this can also be discussed in a separate thread). To clarify, I meant to describe why I wasn't addressing these violations in the patch (they are the vast majority, but they do not have any implication w.r.t. functional safety and can therefore be safely deviated with an appropriate written justification). > Somewhat similarly you don't want to use past tense in the title, as > that wants to describe what is being done, rather than describing a > patch that has already landed. Understood. > and it would avoid the somewhat odd splitting of adjacent comments > (which then is at risk of someone later coming forward with a patch > re-combining them). > > >/--- a/xen/include/xen/atomic.h/ > >/+++ b/xen/include/xen/atomic.h/ > >/@@ -71,7 +71,10 @@ static inline void _atomic_set(atomic_t *v, int i);/ > >/* Returns the initial value in @v, hence succeeds when the return value/ > >/* matches that of @old./ > >/*/ > >/- * Sample (tries atomic increment of v until the operation succeeds):/ > >/+ *// > >/+/**/ > >/+ */ > >/+ * Code sample: Tries atomic increment of v until the operation > succeeds./ > >/*/ > >/* while(1)/ > >/* {/ > > Somewhat similarly here: I don't think the inner comment provides > much value, and could hence be dropped instead of splitting the comment. The rationale behind these modifications was to separate clearly comments and code samples, so that the latter can be easily deviated by tool configurations. I'm ok with the suggestion of removing the nested comments, and otherwise leave the code as is, but i'll probably do this by splitting the patch as you suggested above. Regards,   Nicola --------------sgipg8zKbYjPxXItngEYtImS Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: 8bit


On 13/06/23 10:27, Jan Beulich wrote:

On 13.06.2023 09:42, Nicola Vetrini wrote:
--- a/xen/common/xmalloc_tlsf.c
+++ b/xen/common/xmalloc_tlsf.c
@@ -140,9 +140,10 @@ static inline void MAPPING_SEARCH(unsigned long *r, int *fl, int *sl)
         *fl = flsl(*r) - 1;
         *sl = (*r >> (*fl - MAX_LOG2_SLI)) - MAX_SLI;
         *fl -= FLI_OFFSET;
-        /*if ((*fl -= FLI_OFFSET) < 0) // FL will be always >0!
-         *fl = *sl = 0;
-         */
+#if 0
+        if ((*fl -= FLI_OFFSET) < 0) // FL will be always >0!
+        fl = *sl = 0;
You want to get indentation right here, and you don't want to lose
the indirection on fl.

Understood.


+#endif
         *r &= ~t;
     }
 }
If you split this to 4 patches, leaving the URL proposal in just
the cover letter, then I think this one change (with the adjustments)
could go in right away. Similarly I expect the arm64/flushtlb.h
change could be ack-ed right away by an Arm maintainer.
Ok. I do not understand what you mean by "leaving the URL proposal in just the cover letter". Which URL?



I'm sorry, I didn't notice your previous reply. I'm going to address your observations now:

Here "propose" is appropriate in the description, as this is something the patch does not do. Further down, however, you mean to describe what the patch does, not what an eventual patch might do.

To my knowledge, there is not a standard format to define a project deviation for a certain MISRA rule in Xen right now (this can also be discussed in a separate thread). To clarify, I meant to describe why I wasn't addressing these violations in the patch (they are the vast majority, but they do not have any implication w.r.t. functional safety and can therefore be safely deviated with an appropriate written justification).


Somewhat similarly you don't want to use past tense in the title, as
that wants to describe what is being done, rather than describing a
patch that has already landed.

Understood.


and it would avoid the somewhat odd splitting of adjacent comments
(which then is at risk of someone later coming forward with a patch
re-combining them).

> --- a/xen/include/xen/atomic.h
> +++ b/xen/include/xen/atomic.h
> @@ -71,7 +71,10 @@ static inline void _atomic_set(atomic_t *v, int i);
>   * Returns the initial value in @v, hence succeeds when the return value
>   * matches that of @old.
>   *
> - * Sample (tries atomic increment of v until the operation succeeds):
> + */
> +/**
> + *
> + * Code sample: Tries atomic increment of v until the operation succeeds.
>   *
>   *  while(1)
>   *  {

Somewhat similarly here: I don't think the inner comment provides
much value, and could hence be dropped instead of splitting the comment.

The rationale behind these modifications was to separate clearly comments and code samples, so that the latter can be easily deviated by tool configurations. I'm ok with the suggestion of removing the nested comments, and otherwise leave the code as is, but i'll probably do this by splitting the patch as you suggested above.

Regards,

  Nicola

--------------sgipg8zKbYjPxXItngEYtImS-- From xen-devel-bounces@lists.xenproject.org Tue Jun 13 09:57:52 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 09:57:52 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547946.855616 (Exim 4.92) (envelope-from ) id 1q90mT-0000wP-Jr; Tue, 13 Jun 2023 09:57:41 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547946.855616; Tue, 13 Jun 2023 09:57:41 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q90mT-0000wI-HF; Tue, 13 Jun 2023 09:57:41 +0000 Received: by outflank-mailman (input) for mailman id 547946; Tue, 13 Jun 2023 09:57:40 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q90mS-0000vx-4K for xen-devel@lists.xenproject.org; Tue, 13 Jun 2023 09:57:40 +0000 Received: from sender3-of-o57.zoho.com (sender3-of-o57.zoho.com [136.143.184.57]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id b8efadaa-09d0-11ee-8611-37d641c3527e; Tue, 13 Jun 2023 11:57:37 +0200 (CEST) Received: from [10.10.1.82] (static-72-81-132-2.bltmmd.fios.verizon.net [72.81.132.2]) by mx.zohomail.com with SMTPS id 1686650248635662.7341150236904; Tue, 13 Jun 2023 02:57:28 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: b8efadaa-09d0-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; t=1686650250; cv=none; d=zohomail.com; s=zohoarc; b=CLqpuqOMxuBau6LzXZhXzz08TH22hCNePXZkJJF6RIINbW0GRIrdJRrSZMbJeU8wBTrKoXRTOa17xI9GSUn3yg//u2ir5HOrHH/sgJ8xfyNUbB7+No0ifiQGiBYCQpOmXOkW775gf5DGQkGCNMl/bLeEsjrQr4GUvMemUYnTWCw= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1686650250; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:MIME-Version:Message-ID:References:Subject:To; bh=Grkh7aOr++k4yiv8T1gvUmyVxRDs4XUvRZibmnoITVM=; b=PejGFYTp60fKpWnSaeclhSq8D70iQAGUzd/NwULTpSSF67/4p6pjslPVig5FKboUDVXGRK9kd+eZ0fYrnGIjvzoiY0buWLDUloGcZSwxrS/TPo1NuhRrA8kEOB7VzyuIJ1+WQqDAHJLy5SZAjzXMbUJzeBZwY/EumqNKdJJc7iU= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass header.i=apertussolutions.com; spf=pass smtp.mailfrom=dpsmith@apertussolutions.com; dmarc=pass header.from= DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; t=1686650250; s=zoho; d=apertussolutions.com; i=dpsmith@apertussolutions.com; h=Message-ID:Date:Date:MIME-Version:Subject:Subject:To:To:Cc:Cc:References:From:From:In-Reply-To:Content-Type:Content-Transfer-Encoding:Message-Id:Reply-To; bh=Grkh7aOr++k4yiv8T1gvUmyVxRDs4XUvRZibmnoITVM=; b=uaWKg6l/tKh9mhnEKFfHBFjW++F7xGb4Aqs9LQqJxf/0F4GmUGg+FqM+yTXy506V 061bP2KXIPTugyaNFfdzYwmEdUdqKosCEwPfECx4z9KhlD0ftOeubw0gB3y4tHP2fN8 8u6snSoQGl/EuYnUZlNdm/iry83CwuQSyVSWKnb0= Message-ID: Date: Tue, 13 Jun 2023 05:57:27 -0400 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH 2/5] libxl: drop dead assignments to "ret" from libxl__domain_config_setdefault() Content-Language: en-US To: Jan Beulich Cc: Anthony Perard , Wei Liu , Juergen Gross , "xen-devel@lists.xenproject.org" References: <2dc50b58-a4e4-3e32-1876-94412b14b052@suse.com> <5eda17da-7185-9cf6-7e87-70da57aa0ebc@suse.com> <10f2d41f-b34f-207e-eb73-d53f31385d8e@suse.com> <70622b39-cf85-49f4-69a7-b8039baa07f4@apertussolutions.com> From: "Daniel P. Smith" In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-ZohoMailClient: External On 6/13/23 05:40, Jan Beulich wrote: > On 13.06.2023 11:21, Daniel P. Smith wrote: >> On 6/13/23 02:33, Jan Beulich wrote: >>> On 12.06.2023 22:21, Daniel P. Smith wrote: >>>> On 6/12/23 15:44, Daniel P. Smith wrote: >>>>> On 6/12/23 07:46, Jan Beulich wrote: >>>>>> If XSM is disabled, is it really useful to issue the 2nd and 3rd calls >>>>>> if the 1st yielded ENOSYS? >>>>> >>>>> Would you be okay with the calls staying if instead on the first >>>>> invocation of any libxl_flask_* method, flask status was checked and >>>>> stored in a variable that would then be checked by any subsequent calls >>>>> and immediately returned if flask was not enabled? >>> >>> I'm wary of global variables in shared libraries. >>> >> >> I agree with that sentiment, but I would distinguish global state from a >> global variable. I would take the approach of, >> >> static boot is_flask_enabled(void) >> { >> /* 0 unchecked, 1 checked but disabled, 2 enabled */ >> static int state = 0; >> >> if ( state == 0 ) >> state = check_flask_state(); /* pseudo call for real logic */ >> >> return (state < 2 ? false : true); >> } >> >> Then all the libxl_flask_* methods would is_flask_enabled(). This would >> not expose a global variable that could be manipulated by users of the >> library. > > Well, I certainly did assume the variable wouldn't be widely exposed. > And the library also clearly is far from free of r/w data. But still. > > That aspect aside - wouldn't such a basic state determination better > belong in libxc then? (There's far less contents in .data / .bss > there.) Not opposed at all, so a series with a patch to libxc paired and a new sub-op/sysctl as discussed below would be acceptable? >>>> Looking closer I realized there is a slight flaw in the logic here. The >>>> first call is accomplished via an xsm_op call and then assumes that >>>> FLASK is the only XSM that has implemented the xsm hook, xsm_op, and >>>> that the result will be an ENOSYS. If someone decides to implement an >>>> xsm_op hook for any of the existing XSM modules or introduces a new XSM >>>> module that has an xsm_op hook, the return likely would not be ENOSYS. I >>>> have often debated if there should be a way to query which XSM module >>>> was loaded for instances just like this. The question is what mechanism >>>> would be best to do so. >>> >>> Well, this is what results from abusing ENOSYS. The default case of a >>> switch() in a handler shouldn't return that value. Only if the entire >>> hypercall is outright unimplemented, returning ENOSYS is appropriate. >>> In fact I wonder whether dummy.h's xsm_do_xsm_op() is validly doing so, >>> when that function also serves as the fallback for XSM modules >>> choosing to not implement any of the op-s (like SILO does). >> >> I understand your point, but if ENOSYS (Not Implemented) is not correct, >> what is the appropriate return value for this module does not support >> this op? > > You almost say it by the wording you chose: EOPNOTSUPP. > Erg, you are right, not sure why it didn't click. Though I guess what should be used will be moot if the decision is to add an xsm-op subop to dummy to support reporting the current XSM module. >>> Since in the specific case here it looks like the intention really is >>> to carry out Flask-specific operations, a means to check for Flask >>> specifically might indeed be appropriate. If not a new sub-op of >>> xsm_op, a new sysctl might be another option. >> >> I am actually split on whether this should be an sub-op of xsm op or if >> this should be exposed via hyperfs. I did not consider a sysctl, though >> I guess an argument could be constructed for it. > > Please don't forget that hypfs, unlike sysctl, is an optional thing, > so you can't use it for decision taking (but only for informational > purposes). Good point regarding hypfs, the check mentioned above is expected to always work, thus an optional feature probably is not best. The next question is, should it be sysctl or xsm-op. I am leaning towards xsm-op because as much as I believe XSM should be consider core to Xen, the XSM logic should remain contained. Adding it to sysctl would mean having to expose XSM state outside of XSM code and would make sysctl logic have to be aware of XSM state query functions. With that said, if someone wants to make the case for sysctl, I am open to considering it. v/r, dps From xen-devel-bounces@lists.xenproject.org Tue Jun 13 09:59:15 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 09:59:15 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547951.855626 (Exim 4.92) (envelope-from ) id 1q90ny-0001VV-Uv; Tue, 13 Jun 2023 09:59:14 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547951.855626; Tue, 13 Jun 2023 09:59:14 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q90ny-0001VO-RV; Tue, 13 Jun 2023 09:59:14 +0000 Received: by outflank-mailman (input) for mailman id 547951; Tue, 13 Jun 2023 09:59:13 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q90nx-0001VE-CR for xen-devel@lists.xenproject.org; Tue, 13 Jun 2023 09:59:13 +0000 Received: from EUR04-DB3-obe.outbound.protection.outlook.com (mail-db3eur04on060d.outbound.protection.outlook.com [2a01:111:f400:fe0c::60d]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id f1b7d77d-09d0-11ee-8611-37d641c3527e; Tue, 13 Jun 2023 11:59:11 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by DU0PR04MB9562.eurprd04.prod.outlook.com (2603:10a6:10:321::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.29; Tue, 13 Jun 2023 09:59:07 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.039; Tue, 13 Jun 2023 09:59:07 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: f1b7d77d-09d0-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=XQiL4TWBjxIY0og1JbIO7AZPYE+xtLsGzTHjgV1JzsJ9VnsegHFVOpnzuIcD2V0da80MrCKS7vG7C2Z/NhIrUswT0rYX5kSlV2nM929Cl31I0VHaFvhcfPtByZoDv3dio7J7Xry9G/ZomN6ptWfTco41Ae4ZWgSVxEQtgpqmdE0k4x6iYp0MOXNiY/K075QathIpH9tjtbWpw3NHr4jIYUgfgVh3gQf1/zffyrv95nSPHwYBFIQsI76Jdwz1wNwZjYYTX53H5WxkyJHlO7g778y/TB22/1iUzVCESfNE+sA4CNZ/O3Fd+GO9d16nAegJ97H2euQsk3wH7RrKDYuk2w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=+P7WAoL8zBIqTgNvju3yNWx3PgzxRz5igygtiM0PERI=; b=ZQ1SuYKuUzH5XYsdg1+I8Z5oZonX3bSc0B+X+kLx+9Qemk+h+foiV1MpBAThkh1Wg6kLDOEN8/3Uw1qOmG9NFd8Cd5xiPQzrSzqSofHmHwLEFybhIJTfxZzzT4rWNBUfEdOkUCzo0+14hzvxlStPYNO0E3JGOe6TKxjRntoAB3of+oHXZ+9AxDHu0zQfH47IOc54ptCyo9RtRkdXVs+t2ZKStQTmy1Bnz4L85F5fc3MryUBv4bYFaYWDXpqKajueRQFNI+ktQo1Wbjp8wON6gqxwUtKOxfg+Kg6yHG7Plzz6yHcsHefLD+JeMSGZQWkuu3GVhHAwNhpjjeOCZCauSw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=+P7WAoL8zBIqTgNvju3yNWx3PgzxRz5igygtiM0PERI=; b=R4ehkNuzu7hWdmwKwxQECYwSqdSuUHnj/byh+Y0pyMdvdvmOf5nROYgLKh8w4yCeOQJNX6Sb1opBbgRKbloC0Wr9g+I7Z1gAeP9/a7bmtu6MqKcIwQcxFN4cdY75t+RfbPHdU3eiY5/x11/IodXlL+M4g6RG0nYiffKTSKgQVL5BMD3ZRGuRApdRmEvxvX7Pdt9R24EW7halXEqpYpyO32dYPywQVTz2L+uzi28VYBRCRZQeHeb5/A5DhfOFtPGrRXaSsM1/k+RrHxqvasW4XC06x2UEz3onzimoCygvoak1/A3K6SDLmxucHFBMj6Yn4K4+u/Q61tSYa3HHgH+rGg== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <82ee7908-4597-433c-0aca-8c0ad22fff13@suse.com> Date: Tue, 13 Jun 2023 11:59:06 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v3 4/4] x86/cpu-policy: Derive RSBA/RRSBA for guest policies Content-Language: en-US To: Andrew Cooper Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , Xen-devel References: <20230612161306.2739572-1-andrew.cooper3@citrix.com> <20230612161306.2739572-5-andrew.cooper3@citrix.com> From: Jan Beulich In-Reply-To: <20230612161306.2739572-5-andrew.cooper3@citrix.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: FR0P281CA0054.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:48::16) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|DU0PR04MB9562:EE_ X-MS-Office365-Filtering-Correlation-Id: f16560e4-c677-43cd-1988-08db6bf4d406 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: nabCHnFwjE/IwmqkgRVYgQUPDiTe2F/JE6KE3PIOKQHjCmQwm0UWQvvn/SjtJ7HbQmxMVZmaK+2qfYFAepEPLh64YjqzcxeTIrfz+ysNQX/4NeSvQiAnemsD57MREzNqkh8XAkGXB2HHqjDm/0e2IcBwEprX/kLXnWaeYtvmZjXBFJBPsJV92oF7uIYIll9n8N9Axz2ORcgDjPCOu1ChMrTwl3a44BD88BfvwqJckIg2vRzK8OVVqF+CesO8kCxPfwVXcW89892LDLtdF3wGJSYVtF4I0sgIjuQhEGbTtFadnWPj/2IRY1XFHDIkzvuxAeu9WPp2Jj1Rm3vUPeWy26giuy3Ep0eGs3OM6KqSt0tIsEbydi/f+NOu6g//AbT9etqC2u2/Y6pd0yjmzC9SggUwRxoO0edgPx/pAmpxEmPV+Sz4dq5vejNoWtgvbiZ1Ucomxf9TjCzZZBpT1hxcmrmDbb15EIfavejDNO42BLdSioeU44yxAlpcY1jMAy4hTCgiCJnDwlIeNSFNOGBLce1s9kUx7LIGGLesyVaFyd8vuyVvecOaOmRwyQaMHLucC7ZiAy+iT3nhKx6s1TWfHvkd0bzVHBjjWCXZD+L+8R4vKaQNBEQ0J9EGxxhDx04j3YhzH0iMmu223/08q/Ij0A== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(396003)(376002)(346002)(366004)(39860400002)(136003)(451199021)(31686004)(66556008)(66476007)(66946007)(316002)(6916009)(4326008)(54906003)(478600001)(31696002)(36756003)(86362001)(6512007)(6506007)(26005)(83380400001)(186003)(53546011)(2906002)(8936002)(5660300002)(8676002)(6486002)(41300700001)(2616005)(38100700002)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?eTZjN3FqY1FOSXZEMDBKZmdnR0xKTzc5QXJxbnpBMVFDdys1d2pWYklwOGcy?= =?utf-8?B?WUF1N0JLenh3ZFZQWktjQjk3OUJJaGdnbnNpeHg1Z1pVWXVDTW11MWJvYys2?= =?utf-8?B?ZDNvcjBNdXdRTkM4U0dCa1laczZXUlI3cDU1cEtsVUlZODVDOXNPd2RDdnNP?= =?utf-8?B?VHlnQnlLSnVMTDQ3QUJRRnFjWTdiVnpMNFJyVThQeUVxYnExNzRpN0FnSGt5?= =?utf-8?B?MU5QeXo2SW9XdkxTQmcyVUhiOXVIczJseElQRSthd1FMbWg4ZVNTWERQQ3Zs?= =?utf-8?B?TDgzbTJjWmpiSjRZNTFtZVY1aG1YTUFCcVRUZlFmenk4b3JSaHJGTlFZQmVB?= =?utf-8?B?RWJNb0ZNUmJJaHh6ZUZtSU9ZaWJueWlMdUN3azhmNHVqdmVyTmI5dERsTUhQ?= =?utf-8?B?OXVmNkdUaktKTDNFN0lubUlLYmh1YldsVlpRWVVPNFVkTGo5dG1RYlZNbkR0?= =?utf-8?B?bzVFdTh0WU9PeFMxS2tsK2RLZll0eTU3RUI5MGlSVnNSYnh3SFZ2bnBMQmYy?= =?utf-8?B?SXdlbml0SFArcmEzdzAvUGEvYkpwQlNoUHNoSEt6R2J3SlpWbURLQkc3dUF5?= =?utf-8?B?WElyVGF1WEliWUxIaitXVm0yZm9KSFVCWTFCeGtZeEdCWW9DSGtQNmoxd3d0?= =?utf-8?B?U0NvSjgrQ1pvV21QN2ZyOHpsZWo4Y2k2bzJYM3o1S3F3MFJiRGlmTG1lS3g5?= =?utf-8?B?NGR6RkpYbjhmWDVzdVpvVTQxZExJb25XVExyUE9RM2VOdVNBZ1E4ZHhZSFJO?= =?utf-8?B?c2dOSVJlTXY1M2ZSMGV0bkFHQzVuaHNEdkhKVUR4WndwMDhCUnBVNlB6Q01h?= =?utf-8?B?eW03dzByb1lNSm9lSmtsSFp1NDVaSWpnTHd6VHg2VGlES2pSY3ZheVZwWGUx?= =?utf-8?B?aGpqamw5ODBrY2NnN0ZQQThiekczaTFDWFBPbFowVGJocnRpT3hUMVVwREtJ?= =?utf-8?B?YjVUUnY4QWlYa09LRnZpakxMRmFXU282cVQ5NnA2MS82STFvUzVpRjZHUlB4?= =?utf-8?B?c2VmWUJOdHJ0dFIxbUk2eGdscVZkaWEzVlV2dURrc3VwbWVuYVMvOVJ6SHZ2?= =?utf-8?B?bGxMT0NEU0l1R0VubUUrS2JVVG1HcXoxclJYYTBPeGlqejJhN09FZ1NmNTNY?= =?utf-8?B?eFhTRnJ1YW5Ca2wxWnRWU1RxY05QSGVhZzNCOTQ5UnE1SzNJSkc1N2FCK24x?= =?utf-8?B?RzFCVFdESFhhbkdQalJuUDFsSjBsR2ZXYmRycG03dmJEQUNnWnQzM29zZGxF?= =?utf-8?B?YVRadWxWbkZhU1BHOEp3c0lkMWV5a1dMYWd3LzFENnRkZjNzQ2lYaXYvYW1H?= =?utf-8?B?TVNUSHhJb1hJbW0vb3VPM1VXYzk0Yy9ZUzNBWnc0U1VOQXlPTFZUV0tVKzA1?= =?utf-8?B?Ync4VXBMTTR5L25xMG9lT1ZQU0tUeU9BMERVRWp6bzk3aHNvaWU2aFZkZ3Fv?= =?utf-8?B?KzZ4UllLZUs1Mm0zZU50RGU0QXNVVFFhbnV1QUcrNUlkVEdjM2tPS0tnWkN5?= =?utf-8?B?MmF3UG5GdGozenJIbldNb2t3LzQ2RTBFY0dtRDdxVU1LZDd5UG04QWEzR2hy?= =?utf-8?B?YmRBeGFPUzdEWktodWN4TlU3VVJwT0xBQ3g5T1N6T09jZWhkaHN4Ty9EY2N6?= =?utf-8?B?czFXUmVpMHQvZTE2cmFleTNqZkhGbE9nYjF1cVhtUUlNbkcrWUZOYnFORDBL?= =?utf-8?B?TFN5U0czOURNVENRRGpGK0IrY295aEZKdVl2c3lGNEFyMmFFaGRXU3c2ZTV2?= =?utf-8?B?K2NpS05ZNUR2NWN3anJvY1J1TTdYdkhmcWFwaWlOYU1hM1M3N0JWOWE2aWVy?= =?utf-8?B?RjFhTG53ZW5xSjcwYzFRMVN1NVZ1Y0R6WXA5TEdSYlhFR3Z2am8rN0M3Ukpr?= =?utf-8?B?c2xPSXhjQ0hiYVhzSUU5YW5jTlR2WWFGNEh4YkFOOTRTRXMrNmlCeUtoS0Ez?= =?utf-8?B?WVUwOWNQYUJVSXBsaU41eTJZeDBFUjlucWVaTGFyZldNY2UwVEpRdkFLR2RO?= =?utf-8?B?dUpJYVZIVmo3WnY1RHMydi9IYk14alZzYUQwcURUMVRpa2lOMHFkenlQMXRP?= =?utf-8?B?RENNVVFxNng3TkpnejF4ME5xMnFkT0tMdG5qenZTSW41MDlmMnZWcEVBMlRu?= =?utf-8?Q?silQyyk6n41UdTNqAlCPTVT74?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: f16560e4-c677-43cd-1988-08db6bf4d406 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Jun 2023 09:59:07.7924 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: ddAAo2ECKkSNTyaaXW3nLnGFJeWVuSu0CsMedBiE27MMCoGhhUJst46CKOmc3mMo//G80s1cFFHNbA2Q2kRkKQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU0PR04MB9562 On 12.06.2023 18:13, Andrew Cooper wrote: > The RSBA bit, "RSB Alternative", means that the RSB may use alternative > predictors when empty. From a practical point of view, this mean "Retpoline > not safe". > > Enhanced IBRS (officially IBRS_ALL in Intel's docs, previously IBRS_ATT) is a > statement that IBRS is implemented in hardware (as opposed to the form > retrofitted to existing CPUs in microcode). > > The RRSBA bit, "Restricted-RSBA", is a combination of RSBA, and the eIBRS > property that predictions are tagged with the mode in which they were learnt. > Therefore, it means "when eIBRS is active, the RSB may fall back to > alternative predictors but restricted to the current prediction mode". As > such, it's stronger statement than RSBA, but still means "Retpoline not safe". > > CPUs are not expected to enumerate both RSBA and RRSBA. > > Add feature dependencies for EIBRS and RRSBA. While technically they're not > linked, absolutely nothing good can come of letting the guest see RRSBA > without EIBRS. Nor a guest seeing EIBRS without IBRSB. Furthermore, we use > this dependency to simplify the max derivation logic. > > The max policies gets RSBA and RRSBA unconditionally set (with the EIBRS > dependency maybe hiding RRSBA). We can run any VM, even if it has been told > "somewhere you might run, Retpoline isn't safe". > > The default policies are more complicated. A guest shouldn't see both bits, > but it needs to see one if the current host suffers from any form of RSBA, and > which bit it needs to see depends on whether eIBRS is visible or not. > Therefore, the calculation must be performed after sanitise_featureset(). > > Signed-off-by: Andrew Cooper > --- > CC: Jan Beulich > CC: Roger Pau Monné > CC: Wei Liu > > v3: > * Minor commit message adjustment. > * Drop changes to recalculate_cpuid_policy(). Deferred to a later series. With this dropped, with the title not saying "max/default", and with the description also not mentioning "live" policies at all, I don't think this patch is self-consistent (meaning in particular: leaving aside the fact that there's no way right now to requests e.g. both RSBA and RRSBA for a guest; aiui it is possible for Dom0). As you may imagine I'm also curious why you decided to drop this. Jan From xen-devel-bounces@lists.xenproject.org Tue Jun 13 10:06:22 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 10:06:22 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547958.855635 (Exim 4.92) (envelope-from ) id 1q90ui-0003DR-PM; Tue, 13 Jun 2023 10:06:12 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547958.855635; Tue, 13 Jun 2023 10:06:12 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q90ui-0003DK-Mj; Tue, 13 Jun 2023 10:06:12 +0000 Received: by outflank-mailman (input) for mailman id 547958; Tue, 13 Jun 2023 10:06:11 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q90uh-0003DE-35 for xen-devel@lists.xenproject.org; Tue, 13 Jun 2023 10:06:11 +0000 Received: from EUR05-DB8-obe.outbound.protection.outlook.com (mail-db8eur05on2060b.outbound.protection.outlook.com [2a01:111:f400:7e1a::60b]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id e8d65192-09d1-11ee-8611-37d641c3527e; Tue, 13 Jun 2023 12:06:05 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by AS8PR04MB8532.eurprd04.prod.outlook.com (2603:10a6:20b:423::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.32; Tue, 13 Jun 2023 10:06:04 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.039; Tue, 13 Jun 2023 10:06:04 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: e8d65192-09d1-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=l6HH0fW8VTCz5ifla/oSP12vjpSwzI8oTFjbn0QZGSBUvKHNrHV7CZQII0qIkcGoMtR8bMXVbqzKUgv/XGSR2qK4yWbhkxa+Zgq8g9xMSPGoFLcrVJ4SdoS+ugYOgzb2YZsAFptmpumfneqMNjt0DC60noLlU3YGUMmFc1IQzGmk2H/EThw+LzE71JXLjHtt1XcGgpGqvrsdU5h4nwnwNAuTMtpN0Jngps7oaY+LXJhFOAVD7q7V1/vXTTOqn1WtX6vZLl1qm+YeQopISoJkMwznaK8O5GSrM3gXnTDIx+0+xL1TGdecupze8zkxagk4leRwLY9qXGC3VFYOoKZ2ZQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=sPq5WlDWZyQk+lL2kINaGD+5Uwn6jSJ76FkWd71Gt+k=; b=NED7cyJV/TpBXZb5WvckOmVet78Ilpu4sAVbNcRkaV8r4PEgqRSJ8J8SeeCOk1A1UPsll8Yup5EoFCCSrMM5OHjOjFH09LmDAdk8tWvzF31ho/OcGl9rp5rbc82tYGvcjRBQJQnWI11gOt7oeu4K509QYCu8nZeGzZcFFBy4F1fYZHvt8aGFqvKqEoKRwGn7nsL2RAleIbaqEfI0DDZDbb5wLzHnXOisZDQWfcm77vlCJUIzRcQd4lI2wvBJYfchFI5A7XZXJOKH/y878JNkc0RzGgTENGzEoq3h5HSOOFsCjEXu96erVYNOua0+LSPOpnCpRrTNaJiBqJDCHaKvnA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=sPq5WlDWZyQk+lL2kINaGD+5Uwn6jSJ76FkWd71Gt+k=; b=p37gFADh9z+BYo12tmD8DDIJVyRFxtdHSeQo4cvsaEDubww/sEd4BluKDJqegBFvb13diLKeAP2G5EcWNjSXXFfvoxWf1rt5mDfezsslnKWe8C9rDtAV7oXFUSlOBDQ4GRyZ7Ltr4sIASi+NBDy7a72lei6WKq7oG1UB5ep47SfX6g8nSy7kye99rZo6FL+sYgO4ziunyfZA76z4D89Ehd4OBETkyyy92clsY3eNm306/ce/7mGXTUZMoG20/M6hc14e/nJUWAvdU4cKnjUJuayvH5S81sSlwUS3hVsx16Ev0qkp/9u34OWyKPIB+riR6r3fdyBAiAqNObNiaY1V0w== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: Date: Tue, 13 Jun 2023 12:06:01 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [XEN PATCH] xen: fixed violations of MISRA C:2012 Rule 3.1 Content-Language: en-US To: nicola References: <42cb13a7-3b62-8d48-a1a1-3094a7bd07fa@suse.com> Cc: xen-devel@lists.xenproject.org From: Jan Beulich In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR2P281CA0179.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:9f::15) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|AS8PR04MB8532:EE_ X-MS-Office365-Filtering-Correlation-Id: 1c014f6b-f2f7-4de0-d098-08db6bf5cbfd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: mfKZu4GK4GHPUAoMc5jyM+SJWieuqukTf/s9LzadILqfE35ffTtjzVUMKw+8NA3Qo0U0nxqLc8i0vTmlkzqepTjVDzfOYofAXRW8whC7sN1Qq3oeWZ+akvx8AoK/Hzn11k/xZNV/YKvAh4mowLq5lwmFqCEPcGivjmg6vSzD/muWR6Jd4mEHseiqEx2xOlw8FBDkTbzpHtHOzltXRmp6kLRLALIqZ5Gt4fOZTD0nf0jkg/YF6YW912Uzo8fKR/1xLrMY79grbBnk+sERomF3r0P1p6XJcHTSvXOWbnrNb7OBphQT3nSUrELuL/1CphUBGo5HzHQp7bCUgIEVq7/cO4/g6/qTLDWD7rFPG9dWNDpPmv1nE//UtlavexusRQITyVT/GcvUqEXMRzA6H1aVy0Fljn/Tuyak44fQZeIOc98QPjcYlAAleZlD9hnM/eqJQjgGWtIIClLIfWgYc8I4uOFP1NjMkPMrFFGwztI2x1ZtATgKbRPWRm4GgM/pfGLnpTKg+b+OEp1RNS662ubZ7PiAIZRegAhw13TAky67sA+71qItC5j2Fel1bYb0Wa7vooJHXCPmToLTgnE+86wEN2akLGw3ZZQLxp46hTM3sQbzCUUpIL/Xjzb7cLX3iH2GEEVZY5bJIvA8MXKOLUkTkw== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(366004)(396003)(39860400002)(376002)(346002)(136003)(451199021)(53546011)(6512007)(316002)(66946007)(6506007)(2616005)(26005)(186003)(83380400001)(4326008)(66556008)(31686004)(66476007)(6916009)(6666004)(6486002)(31696002)(478600001)(36756003)(2906002)(8936002)(8676002)(86362001)(5660300002)(38100700002)(41300700001)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?UzFTbTNReTNrcWNHNHNaZW1idFNRZzVIMGJpTUtqMjZrKzM3QldnT2VoT3lW?= =?utf-8?B?QzNScWN4QnVjcFY2TlB5MlRJVStyR3NDdGxlUExaVVFMeDZVRmpWdjcxMmlE?= =?utf-8?B?bm1qT2NHKzZEeDE0YXNQMGFDWGxqU3ViQnZsZzN5SldqYnAwVmwyalV0Nzkv?= =?utf-8?B?SnF5K2U1aGNRaUxmUjdEeHc3eFNZRlhQOGpSYlJneThDRnlmaUd0RTFzV2V3?= =?utf-8?B?QnlvcytBRC9zYS93THhvQ3IwWm1FMG50TDlsUEhvaHNJZ3ZCZjFSV0xSbmo5?= =?utf-8?B?d0RUOVRha3h4eVhSa0l4a3UwWmRDdEVSNGFLbnBRTjVUZFZ0VXFucGJqU05h?= =?utf-8?B?WTFsb1k2SmdSSEQxRWpxb2F2Y1AyVzI1bGhxUkV1VlVOR3VDeGIrU213QXNk?= =?utf-8?B?N1NiQy9IRXlxVlJBeVBMUFE4anZaZ1BxYStUaEdJY2lQRXBKYXV2NmllUi9L?= =?utf-8?B?eDZtQm9NSURtZjBLRWRGek1DQWVPaEZUSlVoTkl6bnk0VTNBcFpiaEFWbVVh?= =?utf-8?B?Z0c2MjRLaWppcldhSlZpTUxjYkIyL1BxL0NabGdsZVU5Q1Z6dXZWOHFod1Nt?= =?utf-8?B?dVNlRUg2anpiWUlIWlVCR056cm1jWnVSYnUzakt1enlpdXFhQkd3UGlMU2gy?= =?utf-8?B?VDhUSG5lb2MzaVpRUXBqeW9vWkZYVzhGWEIxRnhtV282aFhtU0g0Z294VG0y?= =?utf-8?B?UlJicEp1WktEbHR3K3p3dnU5ME1LREJPa0lZRFJhSExFT2QvZm5xbFd6SkNI?= =?utf-8?B?bzRxN1VJMTJ3WUUzcWNmcHM1dUlNSitTYTl3ckRsRVVieVJJRGRrTFljQlFt?= =?utf-8?B?eE5QWTNZa21hYjNxTzFGRVVma1JpRjF6NmlGLzdOZlhvNHp6aWJKdXR0L1RW?= =?utf-8?B?bGVPYXYxWjdabDRxOGF4aDUyNmVQbEkrd3N4SjJQVFJYQStPOEtiY0x3NVdZ?= =?utf-8?B?SC9hVEVRb2J6di9vREcwQy9hcXZIdHJlU3hnb3NSM3hiRTh4MEFqWVlsd1FC?= =?utf-8?B?NmpheFVINTlsYkRNQm42Z3R3S1FHV1g1dDh3QWlvMVNEZHV2TlFxUFJtc1No?= =?utf-8?B?VUdlV3I2dzBpMUh5NFc1U3BzYnBNcGVVZjVKcjV4TjBMMTcvbnB5amhFTGl1?= =?utf-8?B?UU50cUVaUU56UndnbEdpbXViT2FQMktkdHpPUnY1WXdocFlTbXcwRURqQkJ2?= =?utf-8?B?L1ZMRkRRUjNwWmpGMXdzN3N5KzBsVVpzbVhZKzd6b1RlaUFSRzl0Q1M0NnVi?= =?utf-8?B?YTNVSXRWK21uMFpSRjA4K011TlluZE5GeGtyUVprOXV2VEROZjVVUTg1ZFlO?= =?utf-8?B?K0ZYSFpVNmVkcXBVK1hVZ28zOVI2NVp1a3JoM1B4RGY0SlN1dWYramhuNWlv?= =?utf-8?B?aHlaVWc0S0FhRnFoNExwb1I2eVd3Z3JzeXQyWXJ6TUttajZ5MFpqMVpCeGtR?= =?utf-8?B?aVlGK3UrY3hTM2dFTTdhRzNudURxZGlZbzFyWFRocTlNWU9JaU5NK2dqcjFL?= =?utf-8?B?aDBOWjJDNHVJaE4wcUt0eVp2VGhKQXFabURKdjZmUXFQemV2ME5idWpGbjNC?= =?utf-8?B?YVYxWGhzbjVTNUMxZHF3KzB4bHVEZjhveVlJZXp4VU1iSjRvNUUrLzVsSk1R?= =?utf-8?B?L3hLWGZSQWIxQlk5U3k4clJ3YmxrK3hKZzhKQkYyUXFtOC9kRHBtQm82bmY5?= =?utf-8?B?M2NWWkR4TnhiMC84TGlRTythaU5jSUtKMi9aS1hUR3BTU3JCR2NvakZITFRI?= =?utf-8?B?bUp4RlhjNW83Q3dITm1NZlRmdTYzc2hXaEc0WkxkeXpMVGhyTDVlbUxUVEZn?= =?utf-8?B?TlI1dCtCQXo5d3h2KzJpVUZnVlFCQllHQ2lLOE12RFZ2dG1DVHFGWlQ1Qkhm?= =?utf-8?B?THNYVnBTVHVFTWVxWW44VGVvd0tYVlNZa29uUlZNOGZRRjM1bVFFYksrMTZr?= =?utf-8?B?OUtNUmZBZmFwN3dsVEpsTUVSMTg0ZnovcXVtemN6a1lBT0lIUGxBbDlOMjlT?= =?utf-8?B?YS8ySXRnQTJNN2xaWmh1VVpsNytkR29PbnNOOU1KUmpHUytLV2krcUxSYXhz?= =?utf-8?B?eHJLbytETER4N3ZaNTNFZ3c4dGYzUitFYlhZaEdXRGhUdjZWS2NTSXovbXBa?= =?utf-8?Q?x2y2qFtlJuppVw0j/zczUWPzV?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 1c014f6b-f2f7-4de0-d098-08db6bf5cbfd X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Jun 2023 10:06:03.8548 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: ifctsrV935xUTUkIVSh09hKW2QKT1DVBnfRgC6Hd5urhvkrfY9k1nqt9+5t9z/BzB2lCzxY7m6awMH9sbh5DlQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB8532 First of all - please don't drop Cc-s when replying, unless you have a specific reason to. On 13.06.2023 11:56, nicola wrote: > On 13/06/23 10:27, Jan Beulich wrote: >> If you split this to 4 patches, leaving the URL proposal in just >> the cover letter, then I think this one change (with the adjustments) >> could go in right away. Similarly I expect the arm64/flushtlb.h >> change could be ack-ed right away by an Arm maintainer. > Ok. I do not understand what you mean by "leaving the URL proposal in > just the cover letter". Which URL? In your description you had a proposal to deviate the // occurring in URLs. The latest when splitting the patch, this doesn't belong into any of the patches anymore, but just in the cover letter. >> Here "propose" is appropriate in the description, as this is something >> the patch does not do. Further down, however, you mean to describe >> what the patch does, not what an eventual patch might do. >> > To my knowledge, there is not a standard format to define a project > deviation for a certain MISRA rule in Xen right now (this can also be > discussed in a separate thread). To clarify, I meant to describe why I > wasn't addressing these violations in the patch (they are the vast > majority, but they do not have any implication w.r.t. functional safety > and can therefore be safely deviated with an appropriate written > justification). And as said, for what you're not doing in the patch, using "propose" is quite fine (as per above, whether that actually belongs in the description is another question). I view the word as inapplicable though when you describe what you're actually doing in a patch. But I'm not a native speaker, so I may be wrong here. Jan From xen-devel-bounces@lists.xenproject.org Tue Jun 13 10:13:58 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 10:13:58 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547963.855645 (Exim 4.92) (envelope-from ) id 1q911x-0004kR-IV; Tue, 13 Jun 2023 10:13:41 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547963.855645; Tue, 13 Jun 2023 10:13:41 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q911x-0004kK-Fj; Tue, 13 Jun 2023 10:13:41 +0000 Received: by outflank-mailman (input) for mailman id 547963; Tue, 13 Jun 2023 10:13:40 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q911w-0004kD-GO for xen-devel@lists.xenproject.org; Tue, 13 Jun 2023 10:13:40 +0000 Received: from esa1.hc3370-68.iphmx.com (esa1.hc3370-68.iphmx.com [216.71.145.142]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id f5e3a150-09d2-11ee-b232-6b7b168915f2; Tue, 13 Jun 2023 12:13:38 +0200 (CEST) Received: from mail-dm3nam02lp2044.outbound.protection.outlook.com (HELO NAM02-DM3-obe.outbound.protection.outlook.com) ([104.47.56.44]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 13 Jun 2023 06:13:35 -0400 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) by BN9PR03MB6156.namprd03.prod.outlook.com (2603:10b6:408:101::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.44; Tue, 13 Jun 2023 10:13:32 +0000 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::3474:a81:a100:1529]) by SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::3474:a81:a100:1529%6]) with mapi id 15.20.6455.043; Tue, 13 Jun 2023 10:13:32 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: f5e3a150-09d2-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686651218; h=from:to:cc:subject:date:message-id: content-transfer-encoding:mime-version; bh=ar7JSWCHfOS72OqSWinzSo4qh8vU7tSRF/npAlaU7mo=; b=FAI3SGhAdwIjZ1ikjb1yQXN+eFvUd67CFlVW4q+GqJSqe6Eihn41LWc9 hGTY1rf1VNAiMFr0Lf6UZ5PAWF1zuxwCegjMgIapMzXjZ5O1j1Iu9+Aiy GNwRVq49/19EKhB/AbPCCsxL5RWkZI5ndr2jMDjwAIJcbkRlfOv36Dzoc M=; X-IronPort-RemoteIP: 104.47.56.44 X-IronPort-MID: 113010329 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:/Vhk4qxiQnXHF1iAf596t+ckxyrEfRIJ4+MujC+fZmUNrF6WrkUPy WEfXWmHPf2CMWGmeY0gb4ix8hxQvMXcxtJrTlRl+CAxQypGp/SeCIXCJC8cHc8wwu7rFxs7s ppEOrEsCOhuExcwcz/0auCJQUFUjP3OHfykTrafYEidfCc8IA85kxVvhuUltYBhhNm9Emult Mj75sbSIzdJ4RYtWo4vw/zF8EsHUMja4mtC5QRgPKsT5TcyqlFOZH4hDfDpR5fHatE88t6SH 47r0Ly/92XFyBYhYvvNfmHTKxBirhb6ZGBiu1IOM0SQqkEqSh8ai87XAME0e0ZP4whlqvgqo Dl7WT5cfi9yVkHEsLx1vxC1iEiSN4UekFPMCSDXXcB+UyQq2pYjqhljJBheAGEWxgp4KThg8 scXeBA8VTC4vM7r6YqwYedLmMt2eaEHPKtH0p1h5RfwKK58BLzmGODN79Ie2yosjMdTG/qYf 9AedTdkcBXHZVtIJ0sTD5U92uyvgxETcRUB8A7T+fVxvjaVkFAZPLvFabI5fvSQQspYhACAr 3/u9GXlGBAKcteYzFJp91r137SXxHugAtN6+LuQ+ddxjWGfm0MoM0MSVGOS8KG8m1bgRIcKQ 6AT0m90xUQoz2S7Q9+4UxCmrXqsuh8HR8EWA+A88BuKyKff/0CeHGdsZjxLZcEitcQ2bSc3z VLPlNTsbQGDq5WQQHOZs7uR9jW7PHBPKXdYPXNYCwwY/9PkvYc/yArVScpuG7K0iduzHizsx zeNr241gLB7YdM36phXNGvv21qEzqUlhCZsjukLdgpJNj9EWbM= IronPort-HdrOrdr: A9a23:yhKID6sVVvWUHKe79E3Np0227skDu9V00zEX/kB9WHVpW+afkN 2jm+le8BPyhisRMUtQ4OxoWZPwJU80kKQf3WB/B9aftWXd2FdAT7sSiLcKoQeQeBEWn9Q1vc ldmupFebrN5DNB/KTHCXGDYrAd6ejCyoaOpc2b4lVMaUVRS49Ghj0SNi+rVndxQwlNQboVfa Dy2uN34wCnfnQcKuCVb0NoYwCWz+enqK7b X-Talos-CUID: 9a23:GdlJSm80yvjdI6mnJ/6Vvxc6HfsqIl3s91frGGPlIF5iY7OyV1DFrQ== X-Talos-MUID: 9a23:GSa7CQhpVweZKbqfc4wAecMpO+5z7piiVW82qssCuvGtZHR1Ki/Dk2Hi X-IronPort-AV: E=Sophos;i="6.00,239,1681185600"; d="scan'208";a="113010329" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=TMzo/t1x3i7JJlWBBDQ35qUWMwiPbt9bmXyMENCV8u4nUBW13Y2BMQ9g6fV2vzIDFcg61yTDDw+7+mSjTIfRT9x9GR0advqVUuIi1EI7vxJCo9lMGLnCK7HxzMv+twLEDsfU/UV3zPDrKXk6pvnmewpZvI1KMgf6eEDGWzTnSPJfEYbgMbPG0Q+e91QElaw/LscpA4jzZtYO11r9iA2eQlrqgzt/DbcffxQLozd/DodfIRelUHLZqipNI6W5z6GhU+sYVzTL8VP7fVRcll0SChwsc/labQ/+XzS7G6ZaDFZHqBL9vifrvCQWy0SDDT1Bxi2877qq+QCd2EjRSrjiJw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=ukpPL3ENiHNCM+TCw9anvfetqEyu8mpxdvdU3ftHPzc=; b=MWfkY1UW7x4dRx2rgTl8XxErJJI5WRtByUmUJrmEXeaVXs5c+G+CmVmqkL65TqMB90MltQ3obzcPJZnyCfr2OOeJPbzPgdktKyczPMWGEhfMVziz2hxNmfd+PjiDg3U8Hpl41JRQlg/2eeWo4kESJpRV189uKR8sg3l07t8hFbm0Qme5ubCFh8INsltq6BF6bsNTeKmT0lJjiFR4Njo6mC9Q3d6t4NyVJ6ucesf5zvqfEvXgSmN8E47hUi8QXnHvzQqQdbR681zjUSokcG5dvv0qq32PQMX0S0ustXe+yUrxzm+jqdHcWNg6HjYJKOjrz4YuutnVe2WSlO/0UjO+Ww== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=ukpPL3ENiHNCM+TCw9anvfetqEyu8mpxdvdU3ftHPzc=; b=iKW5H0OdvCNzmYeSkbEtl5SL05UJ+FIm/Lhezl68A+tTkWnsOKign/xfGyreXOfjuKBp4jIQRsGxAAIwDqEe5W/I7E3XmTbhPEPGsPU4kfpyg0HGoczrzseCsPpdM/J8QnxVUXSX7ceZ7gdARRzoLaJZDq+PMtvMpNjHOgNERsY= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; From: Roger Pau Monne To: xen-devel@lists.xenproject.org Cc: Roger Pau Monne , Jan Beulich , Andrew Cooper Subject: [PATCH] iommu/amd-vi: fix checking for Invalidate All support in amd_iommu_resume() Date: Tue, 13 Jun 2023 12:13:13 +0200 Message-Id: <20230613101313.51326-1-roger.pau@citrix.com> X-Mailer: git-send-email 2.40.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO4P265CA0237.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:315::20) To SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|BN9PR03MB6156:EE_ X-MS-Office365-Filtering-Correlation-Id: d93906c4-bc0c-4f80-cdd3-08db6bf6d727 X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: EJATgP87kvAqDC1t8GYSzrlFLcfLOHRDPvKecezuux0XuVJ0J6rZ7sKOVcytoz3t37RAm34TgZaO83zq/qhMLnaztbn0T17v4bf+p19LWon0zPx7jA3fa3CdaCaLq+3g6ZcI9eOFsD29cgZXkZtYaQWaGtPctpX2NI3cAmotRX6MhIHfMlHdK+KyWd7HFD13m9H+pDfaFBLUsjuJn8/x5vTJyKamH30FRm8P7blltWVXIQ3d/G6oaO+ZdoFTxrC+3YUngXUtVoV0xZ8J63p5d8FPcniUq7U1GnnLDOl6tryoG8putwUOoqGnQspHVdGYspPxq72NTKw6fTHzxvap2AjJg0VZgOY9obWxmdYNBZNPGUerBBpZLCxBAy1PbxOU5X0Tq0O1Jgujr3a9JiZuKvVlufEStTnN8dFHw3l41c1GI5EiVQc3nxyVBN1IEvhIUCMejUtfF8YXmVtVmkprgabMw2U6H2SBUJsKeDJJKu0X4ZJ3D77GPxaA5mvkvkzqIlstnX2oaKehQ9q3wtzRSdHRWXdNZmcqNop+jS6gQFSyWFMEReYgiCd8UVE++KCD X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(136003)(346002)(366004)(376002)(396003)(39860400002)(451199021)(186003)(6506007)(6512007)(1076003)(26005)(38100700002)(83380400001)(107886003)(41300700001)(6486002)(2616005)(478600001)(54906003)(86362001)(6666004)(82960400001)(8936002)(66476007)(4326008)(6916009)(66556008)(316002)(66946007)(8676002)(5660300002)(2906002)(36756003);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?a0l6Q01KVk5USHY2Rmt4TUl6cituTlZsaDJJSExHS1ArcVcyZEZCSVEvd0RS?= =?utf-8?B?L3hLU29EaTFaV1orQ1h6ejVKTjBpM0Q1SXgrdUtKbHpsQW90WW9nemM2SlY2?= =?utf-8?B?WC9QVHpWMEt3a3ZrcDdpRDdCbnZSWWxpc1hMa3BaL1NTTkJuM0N4aTBIN0FT?= =?utf-8?B?azlDZGRsTW9oczVjWWNYZk82SjhnaUZPOW5VNy9iTTlJeGNmVGQycm56djIz?= =?utf-8?B?aFVNMXREYkYxdWlNa0U4TW42TkhnVnZ1Q3UrQjRVV3VWVUNqZUd0WVp4Nk5m?= =?utf-8?B?Y2s5cVpGTVhaUy92RVJHcHdqYUc4VWp6cDRBNlpyYU5zbXFjemJaTkp0WCtR?= =?utf-8?B?cFFuQWI3U2VYcEU4RzhnQWR2TmRQZnB0TzF3d3RteU5tS0pnY2tWamJLRzNj?= =?utf-8?B?VUFuVmlEd2djcnBlaE81ZXZjdDRodFo1QXVtMXRyNEdkRU5CZmp3QVloMCs3?= =?utf-8?B?aExGaElPZDJwSEhjMnRpclFvbU9nNmRKNmI4OGJONWUyb0xOZzNveS9ubGpC?= =?utf-8?B?Yk1qTFBkVC8wNFZ0ZGozRHBVUm1rUWJES3IwbTFwRlZpQlQ3S2VTdUU4eUQw?= =?utf-8?B?NU5xS0ZLbkIwTnloK1h1Z3QrSFppZzZIR2xKK25EZ05GVjNoNlVDU2dmQXJy?= =?utf-8?B?Vlc0TWNUM2lwWkloQllpdmJjUUdKOEtTYlRUUFo0LzBQQ1ZTclgyMXlWQjV3?= =?utf-8?B?OHRVU1BId3BGUXU3Yk9kc2xkUjVtUGU4aWdrT3BRRHV0YUJKdFpzdTdRMndI?= =?utf-8?B?bnFoQW4yMWg1MmhwQWVzVm5vMzNuRzRXdVhaVzd4dThRZFVUUXJsU3E4T0gv?= =?utf-8?B?OExPc21QYlBvUXdaRVZGQnVYUGVadWlHSUkwZjFZSFVSZFNETFMrRGNJV0lS?= =?utf-8?B?ZGxzNWpQcUtFRjZiSFF3bmlVcyttTEJ0NStnR0UxUFZGQndWTlRQS3QrbUdF?= =?utf-8?B?eThPRkpLa3JUQWJrTTJGNzMrS0pYYXNxRnVNZGhLVGNnUW5lREY4Nm1MZmNM?= =?utf-8?B?RWE0YklFMXZNRjAxMVFlZTZ5Y1NQbGNndFcwdTdTTXRKMDJUa0ZCTGlLSGFx?= =?utf-8?B?ejZqbERqSkYyWFY2S3dJQndhTjVzL0Y0Mm9jYW9iRktEaWFpMXYxUWN4MDZq?= =?utf-8?B?dGFrVFpiWnR6RnN4ZCswQytCMUdGN0ZzalZJbVZGSHB6ZC83elNHeU5YZmpu?= =?utf-8?B?S1ZKcEJNSmhvdXNhWFlZbERXTTUxbUpacWFnRkpDc1FhREo3bElHWTIyc0Mr?= =?utf-8?B?RGorUXJxdHdmWnc3NUJvaTFnbUErT05ZMnVTK09nN21OMEV1TDQxRTQxcnBZ?= =?utf-8?B?bmFuM0pjRWg3Q2NSM2FmWWk3a0tBVlFVZDZKZWx4aXFEaldveGFXR1pzMVpL?= =?utf-8?B?QlhrQ0NvdENPZDJzazB1dWw3ZWQ0QXphZmYwUWFrc0w2UGFXdndLczVCRVdr?= =?utf-8?B?MzhralBlTFM3SEdzVnVyNXpVV3I3b0xwQm04Rms1T0xnVGlrbnZ1UHJKQ1p2?= =?utf-8?B?VjQwbk5LeWtwZFJPQXV6YmljOGRablQxUGdTQ3ZLbUhBc0tGNXFlMWZuTldt?= =?utf-8?B?eEYyQnNnMWVYME9JdXA5U0h2blg5MDZ3MGphVTNJUGdLZ2JyZEc5cmxZdGto?= =?utf-8?B?bnJaSTBYSlpmY1FNc205KzBqbDJZaWJLMU9rdmtCdmVUZm52Vjg0dXdBcUxG?= =?utf-8?B?V25ualU1blRoU1BBTTdrS0hTL3FMc3ZSNTY2ZkNZZG1KdVRiZXFWU09ZWDNy?= =?utf-8?B?eWNuTEhKT2YyS2NYWmdHZzhnZ3A2VW9yY055eEh0Tm11TmJHT1p4Q1owcmpv?= =?utf-8?B?cWlTUnpwaENvN3JRcVlUZU9oRUlTVWk4WEhLR2h4dWhJWi9aSzlia2VaLzlZ?= =?utf-8?B?NVZ5c3RqdDF2U0dVZktDVXRYSnA1bUIwYlVSNlk3SmZObEN1UDkxaC9oN0dy?= =?utf-8?B?YTM2QndjZ1pXUUM0SlhRMG9DaFRCSjNzOEZudXk2WmdJZWVHbFNXNFFMMFUw?= =?utf-8?B?TGpwRGlQL0hyZCtkYVgyeFhtUFZ5V1RXWWxlM2o3RXhyZ3l0UE8rRUN5aHNC?= =?utf-8?B?UStzTUd3ODc0SG1nTUhmNEFzN0F2MGI2eTRBYU93Y2xlWTN6MWI4TmxnRG8y?= =?utf-8?Q?UINg5L7E3mLFjr+qV1Nmg0vbO?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: 6dtqXvQVF0CMR2iOL8Fyc5f9KPJanQSBH/RxQdm0xJEJ0+xh+3dFQsJb7Ep/eNEQJwYRv6sA85ZGESxwIgHPtSpV7yLvV+4XqKq4uG8GFhK5fNvKCGWeBL9fHhaI/nQHzBFkGqmaWMI79fjY0BDZbzTBcsAUgETW+6nkXKe++clyZYKOLHaGw9TXJq1xbzO1HfGOKpHQGqBkn+by6eVxl9wXo243jFuAQskvvuzaNNufYHfaljcxDN0+YMygZ3DY+g4z2xnea1P1Eam4re1Qb5uw6BGfeu9qzCArJx+gtUqII+KaybxLhZbRo8KaVNlDwgxuVbVJeREBIxiMrv+cgQQIPrM8qrFzt5Q+rtwkE6AzVHpfSqhjAjSB+ZldKeHoTiu7OhXT7jjmWQqzmhta/8P2DOIauRxvddhXr4g2H9n0N6ypaloKTAMrMXzQlcXD5zYW0o1a5Yg/xk4JrKMMTTAnBo+f5MJhT4jL7dCPCRAHAMGtmHOh8rpOVF9VRBz6HeJkT1cEq0BIQIq8nk4KEvuYQBl8/uHlI6/TePCHCRja5bUflEKQc6WPfqC9ffowNRPONndpebS+77zWWfclaVPJRPUVF7zPXHSkMynNGlMSV2VF0r/I6T3yVa81qp4KFVuxEPHWLPbXsGOMYtz/M+VpM8leQy6yDzzdONoKZIUo1CSv9simcKmG7no2Nt0s3m/YVXzZUVgJSPPFly2qzTVTKNqO93TMgmoZ6TCWHcB19S4ZX2rADAAo6HHheCksL867VpjPkURMG/Tu+H9mpLNXzzb10LTbX0JAhat5opct71C9yuQFiltygSRATZCa X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: d93906c4-bc0c-4f80-cdd3-08db6bf6d727 X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Jun 2023 10:13:32.5284 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: +TJry5bsdKWHdBhM/MlpFgx9XIETD57NEEbDNkI5uMs8FPu5z9WNmQXhi6njcklZSEmjk7bSo/z4XHDPl8yw7Q== X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN9PR03MB6156 Do not rely on iommu local variable pointing to a valid amd_iommu element after the call to for_each_amd_iommu(). Instead check whether any IOMMU on the system doesn't support Invalidate All in order to perform the per-domain and per-device flushes. Fixes: 9c46139de889 ('amd iommu: Support INVALIDATE_IOMMU_ALL command.') Signed-off-by: Roger Pau Monné --- I don't have a way to test host suspend/resume, so the patch is only build tested. --- xen/drivers/passthrough/amd/iommu_init.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/xen/drivers/passthrough/amd/iommu_init.c b/xen/drivers/passthrough/amd/iommu_init.c index 9773ccfcb41f..4facff93d68b 100644 --- a/xen/drivers/passthrough/amd/iommu_init.c +++ b/xen/drivers/passthrough/amd/iommu_init.c @@ -1580,6 +1580,7 @@ void cf_check amd_iommu_crash_shutdown(void) void cf_check amd_iommu_resume(void) { struct amd_iommu *iommu; + bool invalidate_all = true; for_each_amd_iommu ( iommu ) { @@ -1589,10 +1590,12 @@ void cf_check amd_iommu_resume(void) */ disable_iommu(iommu); enable_iommu(iommu); + if ( !iommu->features.flds.ia_sup && invalidate_all ) + invalidate_all = false; } /* flush all cache entries after iommu re-enabled */ - if ( !iommu->features.flds.ia_sup ) + if ( !invalidate_all ) { invalidate_all_devices(); invalidate_all_domain_pages(); -- 2.40.0 From xen-devel-bounces@lists.xenproject.org Tue Jun 13 10:14:46 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 10:14:46 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547966.855655 (Exim 4.92) (envelope-from ) id 1q912p-0005FR-RA; Tue, 13 Jun 2023 10:14:35 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547966.855655; Tue, 13 Jun 2023 10:14:35 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q912p-0005FK-OZ; Tue, 13 Jun 2023 10:14:35 +0000 Received: by outflank-mailman (input) for mailman id 547966; Tue, 13 Jun 2023 10:14:34 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q912o-0005F5-IN; Tue, 13 Jun 2023 10:14:34 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q912o-00059l-Ft; Tue, 13 Jun 2023 10:14:34 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q912o-0004EY-1z; Tue, 13 Jun 2023 10:14:34 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q912o-0004vU-1X; Tue, 13 Jun 2023 10:14:34 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=pGooiutM/urzxvhDuWhoWa186QV0AdSA13rvzMkRyY0=; b=sut3y1Pa7cZDsEw2TpqZATq+ME KZGbHL5rfAJawZCiTJm5M/jqPenkQ+ume4H966exKu6cDAqZdfsuToGHuFw4NyJN92OqPwiTFkzOd IKcWO+P/TFQGd6NmTDc5no6GyrwlqTypIaDiyApe/BLY/R6kT0KJTPm1FsMDzFpX1fy4=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [ovmf test] 181404: all pass - PUSHED X-Osstest-Versions-This: ovmf=51bb8eb76c4e8c57d5484c647ecf0b5c5fa8fa94 X-Osstest-Versions-That: ovmf=530f5b0912c1c3837337baeec66eb7b0a90d9969 From: osstest service owner Date: Tue, 13 Jun 2023 10:14:34 +0000 flight 181404 ovmf real [real] http://logs.test-lab.xenproject.org/osstest/logs/181404/ Perfect :-) All tests in this flight passed as required version targeted for testing: ovmf 51bb8eb76c4e8c57d5484c647ecf0b5c5fa8fa94 baseline version: ovmf 530f5b0912c1c3837337baeec66eb7b0a90d9969 Last test of basis 181400 2023-06-13 03:12:26 Z 0 days Testing same since 181404 2023-06-13 08:11:19 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: MarsX Lin Ray Ni jobs: build-amd64-xsm pass build-i386-xsm pass build-amd64 pass build-i386 pass build-amd64-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-i386-pvops pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Pushing revision : To xenbits.xen.org:/home/xen/git/osstest/ovmf.git 530f5b0912..51bb8eb76c 51bb8eb76c4e8c57d5484c647ecf0b5c5fa8fa94 -> xen-tested-master From xen-devel-bounces@lists.xenproject.org Tue Jun 13 10:14:47 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 10:14:47 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547968.855666 (Exim 4.92) (envelope-from ) id 1q912r-0005V2-3o; Tue, 13 Jun 2023 10:14:37 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547968.855666; Tue, 13 Jun 2023 10:14:37 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q912q-0005Up-VW; Tue, 13 Jun 2023 10:14:36 +0000 Received: by outflank-mailman (input) for mailman id 547968; Tue, 13 Jun 2023 10:14:36 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q912p-0005FJ-Qh for xen-devel@lists.xenproject.org; Tue, 13 Jun 2023 10:14:35 +0000 Received: from mx.kolabnow.com (mx.kolabnow.com [212.103.80.154]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 1710ddea-09d3-11ee-8611-37d641c3527e; Tue, 13 Jun 2023 12:14:32 +0200 (CEST) Received: from localhost (unknown [127.0.0.1]) by mx.kolabnow.com (Postfix) with ESMTP id 572CEC5C; Tue, 13 Jun 2023 12:14:32 +0200 (CEST) Received: from mx.kolabnow.com ([127.0.0.1]) by localhost (ext-mx-out001.mykolab.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id PzXKXS9F3agU; Tue, 13 Jun 2023 12:14:29 +0200 (CEST) Received: from int-mx003.mykolab.com (unknown [10.9.13.3]) by mx.kolabnow.com (Postfix) with ESMTPS id 33888A6F; Tue, 13 Jun 2023 12:14:24 +0200 (CEST) Received: from int-subm002.mykolab.com (unknown [10.9.37.2]) by int-mx003.mykolab.com (Postfix) with ESMTPS id 358533500; Tue, 13 Jun 2023 12:14:24 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 1710ddea-09d3-11ee-8611-37d641c3527e Authentication-Results: ext-mx-out001.mykolab.com (amavisd-new); dkim=pass (4096-bit key) reason="pass (just generated, assumed good)" header.d=kolabnow.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=kolabnow.com; h= message-id:references:in-reply-to:subject:subject:from:from:date :date:content-transfer-encoding:content-type:content-type :mime-version:received:received:received; s=dkim20160331; t= 1686651269; x=1688465670; bh=94135Llpo4X+SaFFGeVF4swSyy+5MGZ6pEN GkoD9PzI=; b=COiv4Xy/HgpKYDWq2SGnRCUqZRQUFU8kPYWDbzEk2OvLpBay6z1 U9DLvTiXU4YERZPI6gUc/yTgvIS3IuvP8kOSPvWkn0l1qTZfWRmq6dQAE1rGYWjs rfhNiyhxUobBWE3nuSRo8jjEj4B/k92UQtD+p5iNsV3RZ2rXDedQVSsfYmZmct1V 1i9a/nA3TZKOwRqNfaDhUPesBJu+i7OTwMIQIg+Tsdbs6w+eoxvR7O2KGY15QatV FKupam9oHEa7NKdfZ9mI8sj3nwndNhxknzH0sDPOKY1frrgvPiBbCEVfLNm2CoOF fDNSqJsx/k/uBVAv7jwSk0EVnTe5Zc7lvtze2kFYW6+SPq8dtWvaiAo0iJnpZazF DKQHKcEpyV3umm89c+Od2I08Lg333Hwrx07XaFVvBuX2S/1HGgjPDwF0a5rJIzL3 4tiWp9YngvStOgIqlZBzAMEUkm6PIBuZg5RI9rfHHrqNIgg/dpGyPqZtamL4Z2PN P+6LyvORze/gBoc0S1+s/kdCIssBrBXXcNmfsLaF5Qr0eVvc6o//SOmY9LQcNG9a JNZYfwgn1dJA+LlYzE4zUktSssF0cvO9ArvH/ZWLfuJT/EXCrDi7u0qcocSedyBK Y8L7KIQSw8QWFvSkgoCxlWw/O/niNRKHxPVoVJ95zPQl7o1JI7IgKH58= X-Virus-Scanned: amavisd-new at mykolab.com X-Spam-Flag: NO X-Spam-Score: -1.899 X-Spam-Level: X-Spam-Status: No, score=-1.899 tagged_above=-10 required=4 tests=[BAYES_00=-1.9, URIBL_BLOCKED=0.001] autolearn=no autolearn_force=no MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Date: Tue, 13 Jun 2023 12:14:22 +0200 From: Federico Vaga To: Demi Marie Obenour Cc: Dwaipayan Ray , Lukas Bulwahn , Joe Perches , Jonathan Corbet , Juergen Gross , Stefano Stabellini , Oleksandr Tyshchenko , Lee Jones , Andy Lutomirski , Thomas Gleixner , Vincenzo Frascino , Petr Mladek , Steven Rostedt , Sergey Senozhatsky , Andy Shevchenko , Rasmus Villemoes , linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org Subject: Re: [PATCH 1/4] Rip out simple_strtoll() In-Reply-To: <20230610025759.1813-1-demi@invisiblethingslab.com> References: <20230610025759.1813-1-demi@invisiblethingslab.com> Message-ID: <5606bac989cc4ca706d04faf196fc6ab@vaga.pv.it> On 2023-06-10 04:57, Demi Marie Obenour wrote: > It is not used anywhere but its own unit tests. > > Signed-off-by: Demi Marie Obenour > --- > Documentation/dev-tools/checkpatch.rst | 9 ++++----- > Documentation/process/deprecated.rst | 5 ++--- > .../translations/it_IT/process/deprecated.rst | 9 ++++----- > .../translations/sp_SP/process/deprecated.rst | 14 +++++++------- > include/linux/kstrtox.h | 1 - > lib/kstrtox.c | 2 +- > lib/test_scanf.c | 10 ---------- > lib/vsprintf.c | 14 -------------- > 8 files changed, 18 insertions(+), 46 deletions(-) > --- a/Documentation/translations/it_IT/process/deprecated.rst > +++ b/Documentation/translations/it_IT/process/deprecated.rst > @@ -118,12 +118,11 @@ Per maggiori dettagli fate riferimento a > array3_size() e flex_array_size(), ma > anche le funzioni della famiglia check_mul_overflow(), > check_add_overflow(), > check_sub_overflow(), e check_shl_overflow(). > > -simple_strtol(), simple_strtoll(), simple_strtoul(), simple_strtoull() > +simple_strtol(), simple_strtoul(), simple_strtoull() > ---------------------------------------------------------------------- > -Le funzioni simple_strtol(), simple_strtoll(), > -simple_strtoul(), e simple_strtoull() ignorano volutamente > -i possibili overflow, e questo può portare il chiamante a generare > risultati > -inaspettati. Le rispettive funzioni kstrtol(), kstrtoll(), > +Le funzioni simple_strtol(), simple_strtoul(), e simple_strtoull() > ignorano > +volutamente i possibili overflow, e questo può portare il chiamante a > generare > +risultati inaspettati. Le rispettive funzioni kstrtol(), kstrtoll(), > kstrtoul(), e kstrtoull() sono da considerarsi le corrette > sostitute; tuttavia va notato che queste richiedono che la stringa sia > terminata con il carattere NUL o quello di nuova riga. This is fine -- Federico Vaga From xen-devel-bounces@lists.xenproject.org Tue Jun 13 10:15:56 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 10:15:56 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547980.855675 (Exim 4.92) (envelope-from ) id 1q9147-0006Sh-JU; Tue, 13 Jun 2023 10:15:55 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547980.855675; Tue, 13 Jun 2023 10:15:55 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9147-0006SZ-Gc; Tue, 13 Jun 2023 10:15:55 +0000 Received: by outflank-mailman (input) for mailman id 547980; Tue, 13 Jun 2023 10:15:54 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9146-0006SG-7z for xen-devel@lists.xenproject.org; Tue, 13 Jun 2023 10:15:54 +0000 Received: from EUR02-DB5-obe.outbound.protection.outlook.com (mail-db5eur02on20600.outbound.protection.outlook.com [2a01:111:f400:fe12::600]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 46ebe236-09d3-11ee-b232-6b7b168915f2; Tue, 13 Jun 2023 12:15:53 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by DBBPR04MB7660.eurprd04.prod.outlook.com (2603:10a6:10:20f::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.46; Tue, 13 Jun 2023 10:15:50 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.039; Tue, 13 Jun 2023 10:15:49 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 46ebe236-09d3-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=GdrtaB1xvF+eAy3DD3h1dpz+MUUE+51tMIB8jthIQcjjXQgw0FVvttDq3Q5YEOINPWT4OXvWle6At8AyPtydHAdBQh/HKeDHNRHbqs5Q2adUvrvd4yoKiTH/16QKPDo43pKXEJtXO2DHfzozg8s7INOacvfdsUvFOkaCHsbkud1QCWJq0yVBgW7ypP+Pli0m+nktBGIk3J/ihVbfV2pGf89i+6G3CVO3Vcqu56tvm9NkAmRMy8i8jIp1VpS/q1RN1C2TxJm8SiF4DLI5Bg0EPp9YrDA1urIqop7zvtq7uzID9K/UzTEzWztQLMtuFXkkE3Z9qwu6Jh0pZcwfHeNGVA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=KZWQ0CHVy2ARRI1RVegdVoQ24Ymxtmh701JK/9ZAcoc=; b=YUWfYq9KvYG3Q4KkwiMxjmdlSeoSiaAZPDT8/Z8M+7fH1U4qZGdPICJHWKj1hyFOa8zGatotnNkiaNhAd6SAK0JSGbc6Hntw8/Fo1MqhkYsnoeVzLB30omKN0GVCAABLLKdtU07ENvuA/66WEBrE9W1O9lKDKR7HwKEgSFJw3v3iT0IiQspSxXQQLXTLhJarVJ1tmrtoKlZejR0ZByUc33IsSRqU21FB2ewUIUAckYj9r0gTTGbC1TVyvc/661x154WdmjzCPVUocm5T3djgOxk2oZUneMtqU0eVnN0OaBpdIVaqRL3MzEFnoSv/Do0uNfmxDVbjBiaw7QTYBZNHaA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=KZWQ0CHVy2ARRI1RVegdVoQ24Ymxtmh701JK/9ZAcoc=; b=htJrIkAtvvQQlX2PiZO/2ZVadAmAaBJE5BBfi3fobedOIhcEajTyL37aYbAzylXBPIWuPzxms3C+eZ5Y2SeNRdTnlhLjcWNQbXP1v1rDk8d7RhOnoLuU8cwpn07Qz6cuUuS5uSiNmBa5zmwMW4PgsHP/O97iRwdysy8LvqBl6+XhD9r6/mnfXs2o96c7D5X4wh3wVBkda2GhLYpG8bIRjXkcRKGnTCWpFy0uQN1Epy9PY/azvyny9PdWdeyk0HXaCCvO7K+D7nrU4JFIPHzZFeNRBVb/9Vpp5ltFdp7LnkSCKQwQosw3LWXhRVyRPfoHE3A3fPQGV57zFBG3gmo88Q== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: Date: Tue, 13 Jun 2023 12:15:47 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH 2/5] libxl: drop dead assignments to "ret" from libxl__domain_config_setdefault() Content-Language: en-US To: "Daniel P. Smith" Cc: Anthony Perard , Wei Liu , Juergen Gross , "xen-devel@lists.xenproject.org" References: <2dc50b58-a4e4-3e32-1876-94412b14b052@suse.com> <5eda17da-7185-9cf6-7e87-70da57aa0ebc@suse.com> <10f2d41f-b34f-207e-eb73-d53f31385d8e@suse.com> <70622b39-cf85-49f4-69a7-b8039baa07f4@apertussolutions.com> From: Jan Beulich In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR2P281CA0084.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:9b::11) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|DBBPR04MB7660:EE_ X-MS-Office365-Filtering-Correlation-Id: 2c3d5766-e0f9-4b80-2e68-08db6bf7294a X-LD-Processed: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 4PntT3hisn2YerNdNqCnubR8TYj+YiPCWr9BEL3w9noirM3uB7ADsMd6Cu9x286KotJ3oB1QWA611DoXgs7YDUo2d9T56J28xq/bxWD8af9QVkRib7JAwpivf5ktiW6cSdlpFQfv73gibtoULXlMfAxflm/O8oDWT/CwzmrMKL4IzchZw7/QB2mkBbAwGBJPxs/pu8JuGE2KIZXR/a7Qogtbk6cbqKJGhQxh1Q1KjBZNVoPNm4Qgw2HXkx8P/K7hJ11Hu8i9WivXeGLM8CGICMLLweIpl3/wOwSN0wZRzXaM6qcAG6x2nTCE8ecbAXjY4tf25mvTUT1Xo8NtkgoeiAkFIGXEEBRQrqvbmksW/y5/tAH7YKpO9ZmlN0j5722NbFrWRZn2XUFYHVc+6gqHByJIExFG0fJlcfb84iB/BzoaqT7Cqu/9XQgTZIHZD4zx6BBCilb/j5oeH/n2Pi/EMh93nU+Yph+LlIqeGallcxe5NFwhz61WlrSmEbzALdcoW5uGietxuFVd6eejo4MTC6DUR++Zz3Gv/RvIXMzRBTC0E8M2gzvuJw0fKiBJiilq6Thde54FFuFNiTAwCKv2um7LOS0SK9zQR2/SkvyUCp/VwItFiBNcedEbZnygeYAtVYuGcb9kdACfWJiByrV5oWCJWIRaViLz6uvn4Bct3DGYcJ2eMm6thKy6qqt965T0 X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(346002)(376002)(39860400002)(396003)(136003)(366004)(451199021)(6486002)(36756003)(83380400001)(2616005)(38100700002)(31696002)(86362001)(53546011)(6512007)(26005)(6506007)(186003)(2906002)(54906003)(66476007)(6916009)(8936002)(4326008)(316002)(66946007)(66556008)(31686004)(41300700001)(5660300002)(478600001)(8676002)(101420200003)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?M1gvalZoNDJwWXczNmdLa0MvOUp2U3dNZnJpM1pPZDY2OWVPMEdKY1NWSjB2?= =?utf-8?B?Q2RZVURvcGdOckxxL1NMUU5LOWVHeUtDRytsN0p5OUQyTDJJUUZtcW9Lb0c4?= =?utf-8?B?TXF3UE1Yb1dFVnNFMnMxS3Y2L2RWZUZ4YitUQXdiKzU5YUxIS09sRnNtS2tE?= =?utf-8?B?WGs4d3FjTG5aT0pNRS9LWVllaERXMUtoRTJsbnlhS2VBS29Qa1pGRFpTUlZm?= =?utf-8?B?dm5KQ0xtS09lZzZxcitidFAyU2RDVXJLalBNVXAvcXhWMGNxK29XOEV1cTFM?= =?utf-8?B?anE3QkxDS0lZQXdvck9jN0dGQXUwL0U4U3FQcjZzdklFeDc0aDlVdnBIUllq?= =?utf-8?B?eDZmTHNIeW9yaW5FVjgreWF1QnRISkVsK21RblczN3BlZU1WWmQ5T1BqVTBK?= =?utf-8?B?MzNZR3VrVnFBdzZ4alFLYVRLWE9kOFB5QlY0a3FTQktOZ3VoNWRxcEIyY2tr?= =?utf-8?B?alk5dStvK2FoWVNFNVM2WEY2OTN0SW1HcXhrV0tMWDhTYWhYUGtDcnJ3M2tz?= =?utf-8?B?VmFEZ1FYYUFlb2Z6NFllNGpkRFRhbCtiU3gzQmxBajgyajlmWVZEUE1OQmFW?= =?utf-8?B?ZTFmZFF4cHFYWUVYcExORWtQMnI1emZObm1uRFU1NnlFWW5Ld04wTU04cDRC?= =?utf-8?B?dzU2blFFQ3RhSkxQdU8vVHlTRkxRa0tsdHNPRTV1L2xaVlVsRmJKRU1KbWp1?= =?utf-8?B?WWJYMSszenlacWN1eXIvTG1SMVA1azg2NlVEV05jcVdKYXI5MXMyc1plOXho?= =?utf-8?B?VjFJL3Y1UC9mcU5sYjFkVGVvWVhsU2paZjVXYnRiaE1QbnVISzBUMlBnQm1G?= =?utf-8?B?TkU2UGZsZDQ4Ny9MbHdBNFVETVBjcm1DbmFRQ1BOeUhhVGVyNGVZRHltRDl5?= =?utf-8?B?cU03Q1J3b0RoK1BiN3o3bm5kTEZIWWV6Ui9rVkszWTJxK3Rjbnh4ZzcvWjJh?= =?utf-8?B?T1ZTTzJTZzFmbHkraG1RMTlpWHdtaXkzS1h1R1hqK010UXVkYmtSVTZEN0Fu?= =?utf-8?B?cEVndS8rMkNFbkt5VnRZMkJyUk1WdFVKMVhKR01MOFpHTWhjblFhd2pQNXlB?= =?utf-8?B?SENSemk3WStHUm9ic3g5UktDeXNnZ1JhSHYvZy9YYUxwa2diSXc2dm9XTFdr?= =?utf-8?B?S0MvRWNaQmQxL3pLK0NKY2xoUUZ0cTIwWjB0ZjBXYW01UmIvUlBZbkFwdjhi?= =?utf-8?B?MU13cWc5RFJRU1J5RVdnUSs3KzlxQTBVZTJYZ1lIaVFKNjdTY3Q0UkpHaGY4?= =?utf-8?B?ZW9pdjcxaEtPU1lmbi9OTEhWTUpOQmZGRUE3Z2FVYTR4WlNJK01wUzNhaVhT?= =?utf-8?B?emNOeUJNRTdSc1podGR6WFRpcHNKemRJZzNhbDYzRmwrSS9tNkExL0FVTWhP?= =?utf-8?B?TFA1cVY1Z2FmQUIrMGVwVEFsSUNSeFlELzdwV0hGZHIyYzBqazlmaU94b1dV?= =?utf-8?B?ZDJKeElWR0ZsME1uY3VBVTVUdjk1S1JGRyt4UmExREU2K3YrWG9GVW9nWWZi?= =?utf-8?B?QXpDNkg4clg4ZXQ2SGlyV1dWZFMrMzg3eGoraVRtT2J5dC9ITStmVVE1ckNk?= =?utf-8?B?cWcvMFBkcVZSaWltZU5FMUFmdDg4K05EVTVPZURTVzQvRTFsblU3TVRYV1lT?= =?utf-8?B?WEY4LzlGZXRxbUFDVkRZTEs5M2lWYVQvbGN2NHhqaGJneTN0cjg2WEJWczRU?= =?utf-8?B?MFBwNHBkdzBtYXgraTI2dCtzWi9QdVRlN0JJenlRSmU4QmtMQWpjeXE2Q2hG?= =?utf-8?B?Sm93eWtDb0dkWGVIZmFaeUdHQkc5WEtneUp1ZTlTRG5wYmtUNndRa2p6MG1z?= =?utf-8?B?TVE5d0kxMFFNbFBqWmhCS3dEOHFMYjJsT3lOZ2lGaG9obnpoRUFKNmlBd3Ry?= =?utf-8?B?OVdyU1k1OEFWcjk2T1NqMlk0QWtrSHB4ZTEzeXBWQjA0VlVWSXdSeUxCaHRw?= =?utf-8?B?bHlSZEFEaDFRYnVEZE5salNWT0JheUVQblp3U01vdzB0dWUrOUlKemEzMUdW?= =?utf-8?B?YXNXc3MrU0Z5REJ6N3RsYmVzODFRSVI2QmwvemlXU2ttVWJ4TkJOL2hTVzZ6?= =?utf-8?B?eW9ZRU1LNk9CMnl3a3p2L0NQbkhOUWtzTkNvZU45NlBZb0J5SElaZzQvODho?= =?utf-8?Q?VaBvO+88tHXD/4LhZUhKX1gG8?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 2c3d5766-e0f9-4b80-2e68-08db6bf7294a X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Jun 2023 10:15:49.8179 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: xThfD4VxF7dN8bdIF2cEeKnP8w6cO82SzGDMWl6zAk+xgKvXqjIqTYeftJRmw/46yTUeYSHrjOFzu59ZmSuJww== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBBPR04MB7660 On 13.06.2023 11:57, Daniel P. Smith wrote: > On 6/13/23 05:40, Jan Beulich wrote: >> On 13.06.2023 11:21, Daniel P. Smith wrote: >>> On 6/13/23 02:33, Jan Beulich wrote: >>>> On 12.06.2023 22:21, Daniel P. Smith wrote: >>>>> On 6/12/23 15:44, Daniel P. Smith wrote: >>>>>> On 6/12/23 07:46, Jan Beulich wrote: >>>>>>> If XSM is disabled, is it really useful to issue the 2nd and 3rd calls >>>>>>> if the 1st yielded ENOSYS? >>>>>> >>>>>> Would you be okay with the calls staying if instead on the first >>>>>> invocation of any libxl_flask_* method, flask status was checked and >>>>>> stored in a variable that would then be checked by any subsequent calls >>>>>> and immediately returned if flask was not enabled? >>>> >>>> I'm wary of global variables in shared libraries. >>>> >>> >>> I agree with that sentiment, but I would distinguish global state from a >>> global variable. I would take the approach of, >>> >>> static boot is_flask_enabled(void) >>> { >>> /* 0 unchecked, 1 checked but disabled, 2 enabled */ >>> static int state = 0; >>> >>> if ( state == 0 ) >>> state = check_flask_state(); /* pseudo call for real logic */ >>> >>> return (state < 2 ? false : true); >>> } >>> >>> Then all the libxl_flask_* methods would is_flask_enabled(). This would >>> not expose a global variable that could be manipulated by users of the >>> library. >> >> Well, I certainly did assume the variable wouldn't be widely exposed. >> And the library also clearly is far from free of r/w data. But still. >> >> That aspect aside - wouldn't such a basic state determination better >> belong in libxc then? (There's far less contents in .data / .bss >> there.) > > Not opposed at all, so a series with a patch to libxc paired and a new > sub-op/sysctl as discussed below would be acceptable? I can only say yes here for the hypervisor side; I'm not a maintainer of any significant part of the tool stack. >>>> Since in the specific case here it looks like the intention really is >>>> to carry out Flask-specific operations, a means to check for Flask >>>> specifically might indeed be appropriate. If not a new sub-op of >>>> xsm_op, a new sysctl might be another option. >>> >>> I am actually split on whether this should be an sub-op of xsm op or if >>> this should be exposed via hyperfs. I did not consider a sysctl, though >>> I guess an argument could be constructed for it. >> >> Please don't forget that hypfs, unlike sysctl, is an optional thing, >> so you can't use it for decision taking (but only for informational >> purposes). > > Good point regarding hypfs, the check mentioned above is expected to > always work, thus an optional feature probably is not best. > > The next question is, should it be sysctl or xsm-op. I am leaning > towards xsm-op because as much as I believe XSM should be consider core > to Xen, the XSM logic should remain contained. Adding it to sysctl would > mean having to expose XSM state outside of XSM code and would make > sysctl logic have to be aware of XSM state query functions. Well, you seemed hesitant towards an xsm-sub-op, so I suggested sysctl as a possible alternative. One possible issue with an xsm-op is that at the public interface level (public headers), besides __HYPERVISOR_xsm_op there's no notion of xsm-op. And it was pointed out before that by kind of blindly wiring xsm_op through to flask_op, adding XSM-module- independent ops and/or ops for some future non-Flask module is going to be a little, well, bumpy. Jan From xen-devel-bounces@lists.xenproject.org Tue Jun 13 10:23:54 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 10:23:54 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547987.855686 (Exim 4.92) (envelope-from ) id 1q91Bg-000824-Bn; Tue, 13 Jun 2023 10:23:44 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547987.855686; Tue, 13 Jun 2023 10:23:44 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q91Bg-00081x-90; Tue, 13 Jun 2023 10:23:44 +0000 Received: by outflank-mailman (input) for mailman id 547987; Tue, 13 Jun 2023 10:23:42 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q91Be-00081q-RU for xen-devel@lists.xenproject.org; Tue, 13 Jun 2023 10:23:42 +0000 Received: from EUR02-VI1-obe.outbound.protection.outlook.com (mail-vi1eur02on20612.outbound.protection.outlook.com [2a01:111:f400:fe16::612]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 5e3c8eae-09d4-11ee-b232-6b7b168915f2; Tue, 13 Jun 2023 12:23:41 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by AS8PR04MB8897.eurprd04.prod.outlook.com (2603:10a6:20b:42c::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.28; Tue, 13 Jun 2023 10:23:39 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.039; Tue, 13 Jun 2023 10:23:39 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 5e3c8eae-09d4-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=azlsT+wX3oW3O2kvM0bcV5HeZeq3nfwgjDExtsM2hMAbVpEA60h9E+g4OzA6EdItzOXOnvMOd8zgS9i9VeyTp9cONV22JHJC1UEs+HSRYNfEd41NXRtd4md3G+yOszYFg4CBbO0Z886daw/Q1ftsHHa6foWEpI1F/13BWLL9BPM1htx11Qv9OYgnaZc74H5mK1ffZ5cKay1j9CCQJLzoUnizOquInuwZ02rL8xKq0wuMFSweQ7dzdhDrR6qrAn1zOBjkecbEMOtMXxHmBlmLH0C9TP1S/OpiY+Uy2yBCYMFHVredqWg2jwfkIK4m0xnP5IB8UlyNM0jCxmu9IAPhbQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=NxHuK9m1PXy+DzrZ6E/Pc2dbZl7g3QYj5vzJVPcFc6A=; b=aLYYFxAAWmEUCDPVljr1QKfHYfwwpdp88Inypr3KSTcnhnfBSdyzpSG+THBuDtTzk4Jy3p4mLCIZsoEWQK3QJu0FsCatPFnYZS5A0vhivT4tn5mVxmKHQdzHnleI812QLBzljMk9FwnrDQ7tAT8OItpXXWv03s4T+SbptE7Csn61we6aCN2aslEJLsz3jdXEXw/clvya8Urkc330bXT4186Oly/b+mj0MWORupsKx+bDi2R00OjxtBsYXLyDtPD97t+P3KgcVH4SRmQTiw6C2qPJnKN1LD7yKfoSSPA5uJt/4r8Ir25oNs77/Ejyc1yfRbTDkfjcIiV6IwoG6v/8MA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=NxHuK9m1PXy+DzrZ6E/Pc2dbZl7g3QYj5vzJVPcFc6A=; b=qhxIZKJa2HvDwOnFVZJJN8tJlNsNr2yc9Fbp28RILKwxMXDYYox2eZbu7S0XdQIoZLNYoNf9bhgFtlDwjqoK7hJcMawyfAiG11T0gaBPZZJ3GZz11U/p202azy8RDeN0VqJSEj+EqIdbkLRipMP6NBoDehsdToLGelj1UHIBz2o+Pkobpeh98WS0oeiCAD5JM3IES9rfSLApNorQcl35zkwBdxuz6PJ9ZlvGsQLGBdyBusLySdhJJpjBWRDg8aOwFUTmU9bd3BdW4Il7NUv2fQWJGqCpEiWcxo+P+WSsXe6CzJYOpKSh/cn6JogNhgLsVUoO7Y1KI2Jy8mmvm66rxg== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <1c8bf2cc-4c91-6db6-edf7-81472ee107ba@suse.com> Date: Tue, 13 Jun 2023 12:23:37 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH] iommu/amd-vi: fix checking for Invalidate All support in amd_iommu_resume() Content-Language: en-US To: Roger Pau Monne Cc: Andrew Cooper , xen-devel@lists.xenproject.org References: <20230613101313.51326-1-roger.pau@citrix.com> From: Jan Beulich In-Reply-To: <20230613101313.51326-1-roger.pau@citrix.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: FR0P281CA0045.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:48::14) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|AS8PR04MB8897:EE_ X-MS-Office365-Filtering-Correlation-Id: ee5a1117-1ef4-4c74-eacf-08db6bf840da X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 0uSMZW5aBMirsvpsTV1ClKi+hysqaxxWeDF0i1Wk+jTo1Ms0qCin/nTZMvK+v7dlYut6BvWcnXwITWpRF59wfCTMOzsa46yIWElMZ8dFei/a2mG65e8HmujfSY2jijZxNFXeq56rJiC2EfjHDuTvKzEGtpQrwzfHjhe5Zr4bA5SjBqZstv/M+npAoWp8wC47KbTUBVgsjaRjX2W5NtA7NPNvx7DaeQbQH1yKMpR32WEweSmqdGNjiNWr+DBJlcp8Hm8CoPUAZXHh8ZwqwCo0vXe8FCYUeQgfh42WOyK8vjuiRxLl25NiHaZ4J3GYWrt7OJ7cI9aeyqhGHgKN74iZxMDGKi5Oh8ytCme1+Vt+yr+Hgfzyt6Ntzok6oTH5DftssMBZolNKGJ0hHz9WmOAULTbrpwlo4ESnhpklp1HLjqUaHcyYikKjMczLxF4ZTUrtjLzf1OVHeqRDAX+yzz5K/ZfJN0iGCPoGgWpmo+Qu1l5Muzv9KvQva2eJQi53uD1n7YfcGx9dgdY1tMHTalp54ZruHaCVRpEJP6CiNS1LMnOTEMSQoMCw0H6MaauInvyckcnSsOAOPR69kW00eceXf+5asP6j6RNWemvQrdd6KADrux/tPZr3salLqAumIOOHM5RnFB0TsAWEdzEqXHdU1A== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(39860400002)(396003)(366004)(136003)(376002)(346002)(451199021)(83380400001)(2906002)(2616005)(36756003)(86362001)(31696002)(38100700002)(316002)(6486002)(41300700001)(8676002)(8936002)(5660300002)(478600001)(6916009)(66946007)(31686004)(4326008)(26005)(6506007)(6512007)(66476007)(66556008)(53546011)(186003)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?MDU0YUg0V0doLy9BQXVCb2k2UEpqZFNHL0FmcjV1RnFBcVZLVzIxNy9BcTdI?= =?utf-8?B?K2ZSRGV5TEN1QkNydXJyL1JoYTJFQ0JwWkZ0UDNNdDdEbmp6Q0FQRFZrWm5Z?= =?utf-8?B?dlZnRHI0TmFPaG1SOFF6aTdvalJxMXc5dW9veW5wclAwTjgyaGdDUDh0NWVh?= =?utf-8?B?UUIxMERSY3c5TjRmM2dVSGpmNE1EMWdMVnl5OGtRVzlZMTFRekJvSWNXQnlS?= =?utf-8?B?ejBSaHMwbGljOTNTR2FhcU9JY0VZOFJhUWZWUytwcjNxVUtsQVR3c1hRVDBa?= =?utf-8?B?dHFwVHp5UllrbG9MZzRFM0RET3dPZ0tvZzBMakQ2KzdHWVBnQ0FwRXpGWTlL?= =?utf-8?B?R24zR3hUNXZDYjE3UFExeWFBZk1hVk9HeFBKc2c5WVg5Q1JYYThGVkMzTHhh?= =?utf-8?B?S2pnS0tubE41bXRCeHpiZmYyMW9Yb202aUw5cm5DSW42aytIdlZBZUR4UnBt?= =?utf-8?B?VVlRS2xqYUlQaENoblNkRUwwckJpOXZVakhZaGJ4NW55bnBTUzhXL002WmJk?= =?utf-8?B?KzJCNm5vKytoQWl5T2pCRDRmVm5pUGxwbk50UUFtYzM2V3ZLY1dpaFZjMjdk?= =?utf-8?B?UlFBeHBRUnlmMHZsaHhMcmRQR2tJK1pBaE9aV2hTMFBMblJ3bGxlTmlXcFNh?= =?utf-8?B?VzBYcnNWdEZDRWIvZzd2MWlIc2tTMTZPU3JkaGlFZkNJUmlsTUIyN2tXd0k4?= =?utf-8?B?Q2JEQnFEekRwSGgydCt0Vy8xUWNVZzkvTlk0MXVKTDRmdVNoWDRiWkh1L0FD?= =?utf-8?B?WTNnVmZkOGMyNVF0WVJkN3VDQy9Ea1JZamtib2VIVy9Pd0xHdmk5OFVoNkN5?= =?utf-8?B?TWp5Z3pWOGw4eXFQd1BhU00zYjBpek52ZE52YktuZDBqR3FRbUpGdUJiSnJa?= =?utf-8?B?cjU0TWFKdVRjSGk0czRpVkErYWxlWkRiY09aYkpLcCsrWi8rV055RXA1MXZa?= =?utf-8?B?SkV4TWRnK1I2Sy9sQVFxNTE4SEhXbCs5TVpOYmd6TWt0QWl1dWtNbFJyRHVn?= =?utf-8?B?cWNUMUxZSVJOOGRZb2RLRkxPdmxWcTluNk5jR2JCQmFzNk1KU1Q3eUpmcm9V?= =?utf-8?B?YmQxNkN6MHRqcFJIYlY0bWpnNjlzOTNsODNiVVNTYVlYU0lGYTBHK0NIRktG?= =?utf-8?B?bURTQ2hVQ0RWeml1TUNtcklUZnR4eHBZYktGTlhNcWR2Rlo3b24rWlV5YUlE?= =?utf-8?B?MDdaaGIzMStkVTFKeHJrRnlld28xczV1ejJLODNvQXlmUk4zU3ZoOUJIUnlz?= =?utf-8?B?d1hha3Z2bFpDKzQwNHVmQ0xoSEpKcjYzcC9oZ25MTEZuRmFYT0JFNzVWc3ZF?= =?utf-8?B?OWpreGxqQ2x6U0lCTWRyUjZISUJMczFDYVNHQis3YUNHQXByV0w5NU4vVkI4?= =?utf-8?B?U2lPVzJxUXIwWCtLQWErZGFjOGxubnA3Nk14WjZsUytTeGthdEZ2dWY4azE0?= =?utf-8?B?NHZIQnpxdi8wVEM2MWg2TXBDSHNUQVdWQlN0R1k4dldTZThwTy8xMmlldzY1?= =?utf-8?B?a1IvSFhweUpTRnhlOGx3YXJrSjNzMUxRRFJvaE5CUWFpbjVpWE5CNTRHOS9Y?= =?utf-8?B?dkRwaFZ1R2xkUFhRNXZBak5UMy94cVJ2R00xQzJLeWRHTWtoQ1lXS0RQc2tF?= =?utf-8?B?T3ErWGtwb1pMNU5jY2x6NFlySzhCOTJtbHpwd1R3dFVOQTlSNlRYaENjOHFZ?= =?utf-8?B?cGpqaVJyNmwvY1Q0RkJpTTFSRUtjd0trZlhwNkZoOWsxeGw2dzAzOEFubFVk?= =?utf-8?B?Rkhjbk94dDJDdmcraVpTRENPR3MzZzEvNTZQZzcvSlBXTUx5ME9mcFRGTFFC?= =?utf-8?B?ZDY5MnFpMU1kWVpnN2xNMnFTMjY1cmwveWZPT2lObHl2ZmowdVR3TGJRb20x?= =?utf-8?B?TGF0eG8zS1dzNGxDYXFmVGJzakg1aDVMQm1pQ0duTzQybVFhMFZFNEJjRUpE?= =?utf-8?B?a2pOemVSeTFWaWpSdlN2emZDTlFPOVNlYS9CQ2ZFMnZaVkJYWEttL1NFL2Va?= =?utf-8?B?Mm1tK2x3RlFXQ1NtK0JGQzlhZUtQVWwrR2pmcjVtaXhlb2V0ZnNsUkw0aEVr?= =?utf-8?B?dmhDM2FWa2pjanQxSjFFRm1hL2lzQ0F2K1UrVDRIRWdnZTBQdGd3Zmw3S1dr?= =?utf-8?Q?ljsnf8yWqhpOLd/Cc+/BvvBts?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: ee5a1117-1ef4-4c74-eacf-08db6bf840da X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Jun 2023 10:23:38.8558 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: +GlMh4eb7QrE+JWEW0Ty7bqJA8xy+Mkx9998izOBvMLBELgcJyXnZbsYW6EnpsifwLCx4sFmJI6aFzCIKQjdmQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB8897 On 13.06.2023 12:13, Roger Pau Monne wrote: > Do not rely on iommu local variable pointing to a valid amd_iommu "Do not rely" sounds like we might, but we choose not to. But we may not rely on this, as the pointer simply isn't valid to deref past the loop. Hence perhaps better "We cannot rely ..." or even "The iommu local variable does not point to ..."? > element after the call to for_each_amd_iommu(). Instead check whether > any IOMMU on the system doesn't support Invalidate All in order to > perform the per-domain and per-device flushes. > > Fixes: 9c46139de889 ('amd iommu: Support INVALIDATE_IOMMU_ALL command.') > Signed-off-by: Roger Pau Monné > --- > I don't have a way to test host suspend/resume, so the patch is only > build tested. > --- > xen/drivers/passthrough/amd/iommu_init.c | 5 ++++- > 1 file changed, 4 insertions(+), 1 deletion(-) > > diff --git a/xen/drivers/passthrough/amd/iommu_init.c b/xen/drivers/passthrough/amd/iommu_init.c > index 9773ccfcb41f..4facff93d68b 100644 > --- a/xen/drivers/passthrough/amd/iommu_init.c > +++ b/xen/drivers/passthrough/amd/iommu_init.c > @@ -1580,6 +1580,7 @@ void cf_check amd_iommu_crash_shutdown(void) > void cf_check amd_iommu_resume(void) > { > struct amd_iommu *iommu; > + bool invalidate_all = true; > > for_each_amd_iommu ( iommu ) > { > @@ -1589,10 +1590,12 @@ void cf_check amd_iommu_resume(void) > */ > disable_iommu(iommu); > enable_iommu(iommu); > + if ( !iommu->features.flds.ia_sup && invalidate_all ) You don't really need the right hand part of the condition, do you? Preferably with the adjustments (which I'd be happy to do while committing, as long as you agree) Reviewed-by: Jan Beulich Jan > + invalidate_all = false; > } > > /* flush all cache entries after iommu re-enabled */ > - if ( !iommu->features.flds.ia_sup ) > + if ( !invalidate_all ) > { > invalidate_all_devices(); > invalidate_all_domain_pages(); From xen-devel-bounces@lists.xenproject.org Tue Jun 13 10:29:54 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 10:29:54 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547992.855696 (Exim 4.92) (envelope-from ) id 1q91HU-0000IN-0D; Tue, 13 Jun 2023 10:29:44 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547992.855696; Tue, 13 Jun 2023 10:29:43 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q91HT-0000IF-Tb; Tue, 13 Jun 2023 10:29:43 +0000 Received: by outflank-mailman (input) for mailman id 547992; Tue, 13 Jun 2023 10:29:43 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q91HT-0000I9-F5 for xen-devel@lists.xenproject.org; Tue, 13 Jun 2023 10:29:43 +0000 Received: from mail-lf1-x12e.google.com (mail-lf1-x12e.google.com [2a00:1450:4864:20::12e]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 3551b9ab-09d5-11ee-b232-6b7b168915f2; Tue, 13 Jun 2023 12:29:42 +0200 (CEST) Received: by mail-lf1-x12e.google.com with SMTP id 2adb3069b0e04-4f642a24568so6508877e87.2 for ; Tue, 13 Jun 2023 03:29:42 -0700 (PDT) Received: from EMEAENGAAD19049. (default-46-102-197-194.interdsl.co.uk. [46.102.197.194]) by smtp.gmail.com with ESMTPSA id h25-20020a1ccc19000000b003f8c5ceeb77sm2051123wmb.21.2023.06.13.03.29.40 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 13 Jun 2023 03:29:41 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 3551b9ab-09d5-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cloud.com; s=cloud; t=1686652182; x=1689244182; h=in-reply-to:content-transfer-encoding:content-disposition :mime-version:references:subject:cc:to:from:date:message-id:from:to :cc:subject:date:message-id:reply-to; bh=j9BHNDBtHXAqHSngIjRgunHW07Bi8TYuWaRLifEINgs=; b=Sjfyc5p2VBzw0ebMsbYPf/oiZThV6ZkNatNJ/1gR5wUK9aj8U9wKXwtEP4QKn6IH8j 24/xi8tD1vPdJsFeKTDdvWbgh9GDH0VC0CQlvlxUXBfa3Gm/B8SqfEuWLw9dqmU26s2W fZQHN+vPU1nrcPKaKAyuIc1pFQggfpWjrA/9o= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686652182; x=1689244182; h=in-reply-to:content-transfer-encoding:content-disposition :mime-version:references:subject:cc:to:from:date:message-id :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=j9BHNDBtHXAqHSngIjRgunHW07Bi8TYuWaRLifEINgs=; b=VPIdNydGxjr3TyFCP0qZzdgULFvPw3BO4iVE/nU3AEDMSNs8LrQ1RkebWobYg+dT3m ns8bYlKP0+I5Wem/jaLGMlcUfMdESwFcaGAJTh7rR6EwOiTrkHnry6Vuzh9Gdvbq9/8N QblMcUcEG5OCfwjaweI1uFV06AeVyQHbjeAaTbWYiO9NLZxMKNzaOcAW3usKV0uqAn1G 4+0GFzwsb5y2T6+tArtQmJ2JgyjaW0LE9ODsijg0LDV5g5dIR9C/E9wmx2mRfRwQlGO9 g3Nk02Rl4MkSN6L49thYSIE//FPgIIFe9OkBPSeb0lL8kKyLjKM9SDSv50mx/t3Hb8o/ ilUA== X-Gm-Message-State: AC+VfDwabimpPddJR9qwuMvfbYntKAr7U1JFiMJlHq9yFMYtiGqs7Zr0 SOQjauu9RLmPfw/VfUZmHhPLWw== X-Google-Smtp-Source: ACHHUZ5QHWeJuPOil76/BWYVzZMMY/bNyH/M306kEVk39QVgaAF0kSvDGIArHreuudxxSsqyJ7Vr3g== X-Received: by 2002:a19:e059:0:b0:4d5:8306:4e9a with SMTP id g25-20020a19e059000000b004d583064e9amr5430153lfj.46.1686652181828; Tue, 13 Jun 2023 03:29:41 -0700 (PDT) Message-ID: <64884515.1c0a0220.3d068.d916@mx.google.com> X-Google-Original-Message-ID: Date: Tue, 13 Jun 2023 11:29:39 +0100 From: Alejandro Vallejo To: Andrew Cooper , Jan Beulich Cc: Jan Beulich , Roger Pau =?iso-8859-1?Q?Monn=E9?= , Wei Liu , Xen-devel Subject: Re: [PATCH v2 1/4] x86/microcode: Remove Intel's family check on early_microcode_init() References: <20230605170817.9913-1-alejandro.vallejo@cloud.com> <20230605170817.9913-2-alejandro.vallejo@cloud.com> <711f2a44-7e2f-3e79-dd04-34a049210915@suse.com> MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: On Mon, Jun 12, 2023 at 06:31:13PM +0100, Andrew Cooper wrote: > On 12/06/2023 4:16 pm, Jan Beulich wrote: > > There are many places where we make such connections / assumptions without > > long comments. I'd be okay with a brief one, but I'm not convinced we need > > one at all. > > I agree.  I don't think we need a comment here. > > I'd also tweak the commit message to say "All 64bit-capable Intel CPUs > are supported as far as microcode loading goes" or similar.  It's subtly > different IMO. > > The Intel microcode driver already relies on 64bit-ness to exclude and > early case (on 32bit CPUs only) which lack Platform Flags. > > I'm happy to fix both of these up on commit. > > ~Andrew Sure, I don't have a strong preference either way. I'll remove that for the new series. Alejandro From xen-devel-bounces@lists.xenproject.org Tue Jun 13 10:33:03 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 10:33:03 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548000.855747 (Exim 4.92) (envelope-from ) id 1q91KP-0002hx-4s; Tue, 13 Jun 2023 10:32:45 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548000.855747; Tue, 13 Jun 2023 10:32:45 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q91KO-0002hK-US; Tue, 13 Jun 2023 10:32:44 +0000 Received: by outflank-mailman (input) for mailman id 548000; Tue, 13 Jun 2023 10:32:43 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q91KN-0001il-5u for xen-devel@lists.xenproject.org; Tue, 13 Jun 2023 10:32:43 +0000 Received: from mx0a-0039f301.pphosted.com (mx0a-0039f301.pphosted.com [148.163.133.242]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 9f3f632a-09d5-11ee-8611-37d641c3527e; Tue, 13 Jun 2023 12:32:41 +0200 (CEST) Received: from pps.filterd (m0174677.ppops.net [127.0.0.1]) by mx0a-0039f301.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 35D6YVNj012776; Tue, 13 Jun 2023 10:32:39 GMT Received: from eur02-db5-obe.outbound.protection.outlook.com (mail-db5eur02lp2104.outbound.protection.outlook.com [104.47.11.104]) by mx0a-0039f301.pphosted.com (PPS) with ESMTPS id 3r63wtu7t4-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Tue, 13 Jun 2023 10:32:39 +0000 Received: from VI1PR03MB3710.eurprd03.prod.outlook.com (2603:10a6:803:31::18) by DBAPR03MB6520.eurprd03.prod.outlook.com (2603:10a6:10:19d::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.46; Tue, 13 Jun 2023 10:32:33 +0000 Received: from VI1PR03MB3710.eurprd03.prod.outlook.com ([fe80::6fa2:d7b8:9bd4:1a51]) by VI1PR03MB3710.eurprd03.prod.outlook.com ([fe80::6fa2:d7b8:9bd4:1a51%5]) with mapi id 15.20.6455.045; Tue, 13 Jun 2023 10:32:33 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 9f3f632a-09d5-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=AgvA5psbN+TuvJGRhDt2W7CS5GkdWCzvP0OkAIV1da5PrXbX/ADzl/+b4A/5Mw0X2jUQGgprsHHicbbX+vqEIwK/76jdawjwZzZjnqTO5ZNLAdDz/w86kkKP+DPjefBdiNK6aEA0LXY3sQgx8UCgCc5OMArLh3Zq7Hv6lfN8tp7t5gP4QbLsc7RPcoNqAU3t6zmUX45wi5zBec9s57xsiqp68ncDCgRqf/MewO54nJq+GV1wmP5fO5AqtiLdRCVbIrGIY0rXIkml9cQ2MmX3/kiqhcnDoF+/bd2sNWlQouLaSJkguOBoFiFHRIrIsKm1NThx6oxo2GEqt4rL1D3DDA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=zpFpBBN8bFwrHudq+nmPmlQiloYQd/Hb7VVwCBKtEtE=; b=GC7Iymgspayv3LQlo4XrEF6QQcT0HVcv5ACEcEZNIcC46cpApW5VvjxOX3Lxs9dLl9Av6b+hEfkulZHBkq2ecOlSqVs5CVyDeT98Mcu3oGSSc2HB33v5DxLHujsrmzHV+nMtREbfLiDZsoWwbIH4KKUMb7lH7SmwosfeDrdxgh3lKgTxAHfMYg6zu9sBAgy11SmT+0J6GyzYGFoRWerQBL5jKLxaC67ALr4lHhU0FLCo1bmxkNYfw3JCQrNQVoLH6MkavjmwQNAXkk/ivswOmXtZptLplJtSPd8hm8u6Wv81nyHDnIUBZb7LKBX4B6QNVFCrYa8hKNHdlGANKAVg8w== 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 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=epam.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=zpFpBBN8bFwrHudq+nmPmlQiloYQd/Hb7VVwCBKtEtE=; b=NSwD/ZTk0yDSQvaYm5btDFx29lDQjiroGWQehjuxaNdq/YnJvfjYaOStJPEC9Xo3KEdF7lQMSYPVxzN+DsTkevrBYvHpgCJLwhY2M4X+6reFgxutvVePjX7WlXLzVmLyRM1l4h6m608wXOFA3MSdMdFJaJo0zcaedt05CUMtysLXt3/1aMPjN5McVmTbWILUU5t+93QpG5wvU1MbP/aGvQ/yvmTNSI0iTqNc99cM4h1XNzssXhmMuY4I54pxhi6mnrjByKCckDhn4YAd8A8jnE8WtclCNsznIfTQN1IA9JsBNc3U2b/XM+nQ5AS2bh6chdLLnJNo8hLp8CsBxWpDSQ== From: Volodymyr Babchuk To: "xen-devel@lists.xenproject.org" CC: Oleksandr Andrushchenko , =?iso-8859-1?Q?Roger_Pau_Monn=E9?= Subject: [PATCH v7 09/12] vpci/header: reset the command register when adding devices Thread-Topic: [PATCH v7 09/12] vpci/header: reset the command register when adding devices Thread-Index: AQHZneJaX+tcZrSWoECrBLaG3eDtVg== Date: Tue, 13 Jun 2023 10:32:29 +0000 Message-ID: <20230613103159.524763-10-volodymyr_babchuk@epam.com> References: <20230613103159.524763-1-volodymyr_babchuk@epam.com> In-Reply-To: <20230613103159.524763-1-volodymyr_babchuk@epam.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-mailer: git-send-email 2.40.1 x-ms-publictraffictype: Email x-ms-traffictypediagnostic: VI1PR03MB3710:EE_|DBAPR03MB6520:EE_ x-ms-office365-filtering-correlation-id: 37ad6a5e-679b-41b6-0ed9-08db6bf97fd8 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: 6cnvfMhNIEq6N8SpldBQaan5Ivytr8rEJS9BjA5Hw7e0LconSNxaUYeGNXH+oLMtWR3sO6lInmth7Om3oF9RZXgqd8Cjtt6q/qaHI8KTJOLc3bUeYRrpC/fN/iUH3v1+EEzgPwXkjrqwqpHP+MMNByfHiRR1cY7a1nWpbiphj60ZRGpIF4wxtFvXg1vf2jVU5j/+bXSDJPahKJadyUDphAdLiRZdF2d5oo+D5aQILMl4s5qNKLw/NILjfazlM61EPu3duZSjGZWLkpdhF2PiZQumDhLLXE2e/qjKcjMz3mR/8uTqpNLdFFqJZZJmojkccYBmsmwpPFhSfDlcnVW+N3D7TlMNx0BWUX+j/bsWY+EpM1e3TtKNNBzRJlSYH607WZwiFP4qizVU7wpSYjuzdOaiLmBcouB/3Hym325RFxSFKpKNs3l0E1jwWnRZBDfe6kvmdVum+B3Nb5oqL+9Z1l+fXHF981tSxfLG7MwhdsSN3+wnXOjJ9cRllb3MZFKvcfT3S6ZOyB+6HpkWjTZGVdNVzXVSeqbajUXm6fXBSqlmQtEW53gnxxTrsicZ3999RhbW3Q8SELfTpBpaD5Wl6ruDLq48cjcUGOrIvmyTrP9wqbgEUK3Ii9RG0pyGnQfx x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VI1PR03MB3710.eurprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(396003)(366004)(136003)(346002)(376002)(39860400002)(451199021)(6486002)(6666004)(6512007)(36756003)(83380400001)(2616005)(38100700002)(86362001)(38070700005)(122000001)(55236004)(1076003)(6506007)(26005)(186003)(2906002)(66446008)(66476007)(5660300002)(54906003)(8936002)(8676002)(316002)(41300700001)(6916009)(4326008)(66946007)(66556008)(76116006)(91956017)(71200400001)(64756008)(478600001);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?iso-8859-1?Q?2qxZQKVStmzJ8UmCks8o73r/iZnrnXcfIjsmgVuG0mBqDJBC9xKCPOC8UK?= =?iso-8859-1?Q?wx8sE3+yv0BICW8UAN+fLlPo1SG2lVcb6SIQ/mbQohs6Ml8neYkFN+SIAp?= =?iso-8859-1?Q?FTFTUd8bSSVY1wzOTztHekKWXfkn3qJLhuo5DiZzcl7RY7SGKUvhe6kUTn?= =?iso-8859-1?Q?NhQBcO9nio0roPCHEhr0Oiv9YuG3/PcDrwfcC5oQmpWeYRVsNRuBog2yGs?= =?iso-8859-1?Q?43Dhb6Eaz1jJEzFKQr+RDvfe4W3d4suezS86TKlm/Udt3K7n1iFHs7TYNs?= =?iso-8859-1?Q?jcdSWMQ6xLMYQogW7/7qCr7dfdtV3QI+mkzRYOoJlmIlUZ2ky5M441gIg9?= =?iso-8859-1?Q?kQnuhHH1ihn93aj41nmSrylEOhT1nAPdv6ITSZiELom06/TAorAVpq8Gxm?= =?iso-8859-1?Q?nRsE3YJcZqV15OsPAFjOpGH6BJDvEKcbL4Z+BAe+qpvapVurBWwVgWk3SN?= =?iso-8859-1?Q?GoAP0Y749JPO70x2hZWZYzQs4Ec27WGct3Xqeo46ZhRSOhsJRpjZXM+QfD?= =?iso-8859-1?Q?llfsicMm4EMAs0Kugqt7mTr+j0mnWiLJMlt/toA4EOBfuQqq9IqghuivQj?= =?iso-8859-1?Q?jbwAk5GBZ23Z/F/InmnCRhoVCBB161UBrX62Sgvu2juIIxLsnlpx6y9vNw?= =?iso-8859-1?Q?HWytQfdn5Vr/McAJZ/RZBCVVjff/vbVz34P+ulXYoNyP+zfoqjgoHNSceQ?= =?iso-8859-1?Q?0IOuOmqvScySNV1/pxFEYNAUYQDeqBVEShwIdnFdkbq/QfTzyrMy2fEilC?= =?iso-8859-1?Q?Kbx5PMo8oKRaRbUQ8Z4uszRsMfYxvXCJmzD38LlWKAmgJeHSjDA9OHB8rY?= =?iso-8859-1?Q?2vCJDJtZSDRr/UUR9zS82BPB7kIzz3ANMOWktwz2fUYWnpzb0Kp5hzi7GO?= =?iso-8859-1?Q?4m5vU3AW7KgXOjn5p2V0l6awIuqAzXNnrtQ7HmvD/0bzPe7kJNEyj/odZG?= =?iso-8859-1?Q?wedUFzVbn4taPFI/89zoy+vmN2AdSrzIOddUJIImw9JWUcBb8YU0yoltrs?= =?iso-8859-1?Q?PKbzNM5ZC4Cd4tOTC/48lAz44e0t/KCyT062Nx8ZmH+4rJ+3Rd+x0RAVa2?= =?iso-8859-1?Q?cC1TgumIcEcqArdady0ERKi1kd9E/wmUCjSJWvtNeASzIIGTfm/b1lFwEL?= =?iso-8859-1?Q?QJmVCEPZdv9d+KYHxI5sC7EjgvNKNswDKvPTcJR1uc/4ctN97nb7PzoRON?= =?iso-8859-1?Q?7z0oPBLhM94FNJHVsDak1TNxnbhjRL001TlGrkq5BnAUoTgw6IsVfmz9D7?= =?iso-8859-1?Q?44wYZB90Cc/qCLnLOk6MRK2IdeKjV39V4ZK+hrYCdsGAEbIjnW+/vMaBoM?= =?iso-8859-1?Q?ky3jAZO2mtcw0e4+rnscPp7p9rTjvp6a2iq5+BtOcPcP+gFRjvj3SqjyHN?= =?iso-8859-1?Q?1Ieb46nSD6uDQoMvIx64YGGZ3uAI4hrEuUxrHwJuxcT6QSbJ9uOTcfSGEU?= =?iso-8859-1?Q?bCT/XvoksTbi+uGPVCrI7MtE9T9xHBG//m8cQgXK63KTgO6XUhXPh0unRm?= =?iso-8859-1?Q?j0XwRNkU8qwzG7FcS5VWUOB3g39DK28mnnir9Y3g+0k0BnXMKXip+Lad/F?= =?iso-8859-1?Q?dCorT5PadE3TW91bu8sTn0SeHtghmNGtxSAb14w9Zlp6VUs1tJQtQlezat?= =?iso-8859-1?Q?Jn1KLynmZb2ESMpKABc/I8SNKZzMuYpRsIvfqLpIqHZrj3+9N7uqey8A?= =?iso-8859-1?Q?=3D=3D?= Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-OriginatorOrg: epam.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: VI1PR03MB3710.eurprd03.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 37ad6a5e-679b-41b6-0ed9-08db6bf97fd8 X-MS-Exchange-CrossTenant-originalarrivaltime: 13 Jun 2023 10:32:29.2119 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: b41b72d0-4e9f-4c26-8a69-f949f367c91d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: D3tRgYPrW/X/COSN/d26vQQY71bFMVq8ux3nItXVy6u3Ag58FTkXCys3N1U7ktlVPBB9xTMtiAIlJBMoSUgLBt7gRetoWJrDlw46DhxCoBk= X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBAPR03MB6520 X-Proofpoint-GUID: Q52K87s-lGD9Ee8lFvdXvH4qYj16tVCy X-Proofpoint-ORIG-GUID: Q52K87s-lGD9Ee8lFvdXvH4qYj16tVCy X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.254,Aquarius:18.0.957,Hydra:6.0.573,FMLib:17.11.176.26 definitions=2023-06-13_04,2023-06-12_02,2023-05-22_02 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 suspectscore=0 lowpriorityscore=0 impostorscore=0 clxscore=1015 mlxscore=0 phishscore=0 mlxlogscore=999 priorityscore=1501 spamscore=0 bulkscore=0 malwarescore=0 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2305260000 definitions=main-2306130093 From: Oleksandr Andrushchenko Reset the command register when assigning a PCI device to a guest: according to the PCI spec the PCI_COMMAND register is typically all 0's after reset, but this might not be true for the guest as it needs to respect host's settings. For that reason, do not write 0 to the PCI_COMMAND register directly, but go through the corresponding emulation layer (cmd_write), which will take care about the actual bits written. Signed-off-by: Oleksandr Andrushchenko --- Since v6: - use cmd_write directly without introducing emulate_cmd_reg - update commit message with more description on all 0's in PCI_COMMAND Since v5: - updated commit message Since v1: - do not write 0 to the command register, but respect host settings. --- xen/drivers/vpci/header.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/xen/drivers/vpci/header.c b/xen/drivers/vpci/header.c index 677b93226c..1021a61ed6 100644 --- a/xen/drivers/vpci/header.c +++ b/xen/drivers/vpci/header.c @@ -728,6 +728,10 @@ static int cf_check init_bars(struct pci_dev *pdev) */ ASSERT(header->guest_cmd =3D=3D 0); =20 + /* Reset the command register for guests. */ + if ( !is_hwdom ) + cmd_write(pdev, PCI_COMMAND, 0, header); + /* Setup a handler for the command register. */ rc =3D vpci_add_register(pdev->vpci, cmd_read, cmd_write, PCI_COMMAND, 2, header); --=20 2.40.1 From xen-devel-bounces@lists.xenproject.org Tue Jun 13 10:33:03 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 10:33:03 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548009.855806 (Exim 4.92) (envelope-from ) id 1q91KZ-0004ZF-7M; Tue, 13 Jun 2023 10:32:55 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548009.855806; Tue, 13 Jun 2023 10:32:55 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q91KY-0004Yr-Vg; Tue, 13 Jun 2023 10:32:54 +0000 Received: by outflank-mailman (input) for mailman id 548009; Tue, 13 Jun 2023 10:32:54 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q91KY-0001im-2F for xen-devel@lists.xenproject.org; Tue, 13 Jun 2023 10:32:54 +0000 Received: from mx0a-0039f301.pphosted.com (mx0a-0039f301.pphosted.com [148.163.133.242]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id a622b22f-09d5-11ee-b232-6b7b168915f2; Tue, 13 Jun 2023 12:32:52 +0200 (CEST) Received: from pps.filterd (m0174677.ppops.net [127.0.0.1]) by mx0a-0039f301.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 35D6YVNl012776; Tue, 13 Jun 2023 10:32:41 GMT Received: from eur02-db5-obe.outbound.protection.outlook.com (mail-db5eur02lp2104.outbound.protection.outlook.com [104.47.11.104]) by mx0a-0039f301.pphosted.com (PPS) with ESMTPS id 3r63wtu7t4-3 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Tue, 13 Jun 2023 10:32:40 +0000 Received: from VI1PR03MB3710.eurprd03.prod.outlook.com (2603:10a6:803:31::18) by DBAPR03MB6520.eurprd03.prod.outlook.com (2603:10a6:10:19d::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.46; Tue, 13 Jun 2023 10:32:34 +0000 Received: from VI1PR03MB3710.eurprd03.prod.outlook.com ([fe80::6fa2:d7b8:9bd4:1a51]) by VI1PR03MB3710.eurprd03.prod.outlook.com ([fe80::6fa2:d7b8:9bd4:1a51%5]) with mapi id 15.20.6455.045; Tue, 13 Jun 2023 10:32:34 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: a622b22f-09d5-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=av9kJfi1bM1k9m81oA2bS3uGQE/Lasn6EwvynlwSYb0Z+2MGUtU7EsF9UpM3UPgVR5UVmMwgJGkw50K1eRGEPmIhzSNe7DFwn624KI9ySuHMzQPkknXpn5AQXm9ggzx+GUS/wkH8QojZxigRrkfH4uEdhFYkNtkbC3/xlZi3Aj+CeS+ssFjTmTVuh9QaJrllQU+femRUlbR5jjshi7V2dFGLcWiiEAF+FsEkLuT7GLQVOMQ34sQpebRG2PBSSF9ir79+tyjfz/bzes705QFL18VgTYf61A7s7bWPAd5BqhdfStbajTgoIork2nkB/MOHIgKyYPgPaztVt1Mf2W7spg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=aQLDTRCPmYV+snDogimIGaafhmJyMu5DPAp093BY9KE=; b=VufJChg9Gi5GjFgUaMHXuMVQBYCIeenSX6w3FBjUv+GuoqZlgyVDFVPZfGKRPLwxjVbfFpq7u5c5o9llds2NRdfWZTqyiTby3lO0A64zl1mi5sG43pH+t4z99eUfLm8qSqRF8UxVe39tLsPRMh8cfamP3LamhNGo9YlUA84FgAO7+kmk0oBPv62q8lQkBomzchg4Nc2nmSDR1NiBPi6JUoXkdqHN3THKQ7zjySe9o77N+NJ6efuXaD1cZqSwlEd3reL3PjqUPUaJ7boVqSYI7+dtgbdQG/HSx/70DeA7TzaOgFElqekd0AiWkcAUi9J3kuZ5LTU6Gy+zJZW5UcPwBg== 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 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=epam.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=aQLDTRCPmYV+snDogimIGaafhmJyMu5DPAp093BY9KE=; b=dVtHAZHhRZiJh9pVeyz1LJpEd2FmZp1/xuIDYbdf2iHuVDIqhU8Umebo0eh7ElOd0qIxoXOLmDQ8/poRS9D/w8M/2TCJ0Ed1FvJRnz7Xh6gzybXeVw08TWsBXIl90nfA8n2O3O2yzoL103/yoVq9AsIrk6/wrwnvPmu3NdePay5ZxYCIJSYzHnVS60V5wc44HO2ZQ18WXzUzMgBYyUMqzFK2cL58IUeLZRId8x5bzMTB5l6VISGMkcGyhET79c+prW+/pvQYfjmIc/xtcg1lR6mTMlAl069sj4n1pfR1LTmBtlekX0qpr7waz/7n/gWlkJ6HWBg9GXDgumgU2L9KYw== From: Volodymyr Babchuk To: "xen-devel@lists.xenproject.org" CC: Oleksandr Andrushchenko , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk , =?iso-8859-1?Q?Roger_Pau_Monn=E9?= Subject: [PATCH v7 11/12] xen/arm: translate virtual PCI bus topology for guests Thread-Topic: [PATCH v7 11/12] xen/arm: translate virtual PCI bus topology for guests Thread-Index: AQHZneJaM+qTqDNwO06sgUif4aO4dg== Date: Tue, 13 Jun 2023 10:32:29 +0000 Message-ID: <20230613103159.524763-12-volodymyr_babchuk@epam.com> References: <20230613103159.524763-1-volodymyr_babchuk@epam.com> In-Reply-To: <20230613103159.524763-1-volodymyr_babchuk@epam.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-mailer: git-send-email 2.40.1 x-ms-publictraffictype: Email x-ms-traffictypediagnostic: VI1PR03MB3710:EE_|DBAPR03MB6520:EE_ x-ms-office365-filtering-correlation-id: c9db9436-2d7a-4414-6957-08db6bf98056 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: wAfI2XfUEMUszH4AXSjXIfZcMVMcgjUpxfiOkRC2GHOXTM8BZcGV8r79Mflq6LBH5e0fXGUsgfnj+M252I+ufgSvZ2ZBhD+i0jeyGS6gSc43jbHahmxHR9ZGb/uHV03+ASBqp/t2DFGW68eXKq0bTlIhQg02/4YoFVZyP+L9A79Vei7GJKq0rkoEUJxrm+WL6cwwyPQLegh4tyVIe1CpGf9EdCWXD9OeSDbvcak1vyYtgUI3s3DV+IWs4p8c0vFI0NsgvOi++uh49fDGHIf34HQcHIIqVhhm9LfcgiSWHqXjHA0tVH5y2oNCW31OPZDoDCBetBtvT5lX2rTKnUS4QxN7Dsz8sCdMSGz1FaC1bhU4SqEIvMq94bw5MREVtXPrGXL43wTTz8S6DeIan+ZX36E53zkDZz6B8G0WpSyT9sG7aD3veNC9NG3M/PwgbxF9I6hTl7NY/iDySqsBPrqQvFKKJgVlcowVVkQTn/hg0orlhlHKyKINYg7U/+GgmgA/GFUeIABjwNO0yAsJ7r5h5NiN8ohW2XEL+xAsVKi7RorpgvsXED5341B4Pr4jdCp7wcgOKUwcWr+TKCkpHTjTGBEKdadd4ffHq2noMrhe4TipQ0eNphCWK0wfWR9BStKc x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VI1PR03MB3710.eurprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(396003)(366004)(136003)(346002)(376002)(39860400002)(451199021)(6486002)(6666004)(6512007)(36756003)(83380400001)(2616005)(38100700002)(86362001)(38070700005)(122000001)(55236004)(1076003)(6506007)(26005)(186003)(2906002)(66446008)(66476007)(5660300002)(54906003)(8936002)(8676002)(316002)(41300700001)(6916009)(4326008)(66946007)(66556008)(76116006)(91956017)(71200400001)(64756008)(478600001);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?iso-8859-1?Q?W77NOWqte3qLyimoPFzcvFYT923RGyxpm59ZCIT9b/2wRSGWFORbddfBqt?= =?iso-8859-1?Q?LXPQ4Q+ldpodfx+B+RLmvgfpMiYGM3zMYhA14MdoGlEJz4Av7Hb26AOeLl?= =?iso-8859-1?Q?KK5kKjmfMnIVR49/SgumWZBfqpnXpCCI5ahSnGqoz/vZjL+DqrpsSw/1bz?= =?iso-8859-1?Q?9hIu+XlQIDNw3/mawU8/a4y1tODGeAhvJUO5rxl/C4LqLxgrd33rM04+3R?= =?iso-8859-1?Q?4GLq2zZFEHrfIMLGwi3cMfRhiBL+QPK557giQRKuOgL5kvMpn7yUnd/pQ3?= =?iso-8859-1?Q?O5Jbzp/Tqc+4qzKKViGXB98I/nSxPhx/HGWW0EINiSZnI8DfVWhjRY9lpl?= =?iso-8859-1?Q?nlROD0X3amNVdgJNeaFmh6/kx9g6D/FbvIun+HOnmyO3IRuSZq1VoMzG/6?= =?iso-8859-1?Q?qjDZSjtRCCPaeaOFhGUcgsCPKw+uchH9JlvJ5QsFC4z+p9AuPS/UEm73UG?= =?iso-8859-1?Q?7Ctk8BhOQpVhdtA7YXdmbQjTW7jxr2oDg92D8zgivIB+VC3G7JYihy8fJq?= =?iso-8859-1?Q?COzUYoAJIUz+H0plIVc/VMH6zuzZInZWiA3XtN2DGl3TvA/qf02hl63iaf?= =?iso-8859-1?Q?Lai1NzsOzcegjxtCmEmpUi3bK6VdYAgLpBgN1dDvYfUQ55pLZdixWJqDbj?= =?iso-8859-1?Q?9Xxirr40aNvSo5gvwMfquOc87TAGYVXJtnWLiwCyCENHBhkUf8z28NOshU?= =?iso-8859-1?Q?/b/y6V+uxIVKR2s+RyMlW2xvUSA1eLTh0/xOKsO9eCGBoW67StF8+sHP4S?= =?iso-8859-1?Q?WJc7Q1aaBmb/8fhCeevTIwfkCpLynrn5pw1PasCemQj8UZ34qH5waBMNwH?= =?iso-8859-1?Q?bxMCTJ+npuZGUcBHmqf1hH5cqCWzoMeIfdAaEqaKTvjvIaKWoVIK2a/hga?= =?iso-8859-1?Q?7tB2OaGSuwIn8CEN4l/wevFiqKcKKL/O/eelvLUG3Ywzalyh5yFscbOote?= =?iso-8859-1?Q?s2LDCY5bVSMrdvExJWDqCXo+QG+AO/MBVpemPb7dpR3okcmUl80YJ3C3Rf?= =?iso-8859-1?Q?qd3DYgh5LisPlD+yrBtj+liaNP22b0PSTAXWbc7bP3wHspVGo8Chl3ddHB?= =?iso-8859-1?Q?MGb6587KbxsHIFnI5uQNv5wdrzS96fI59PEZAex4/7Hp64fI804F/S8HXm?= =?iso-8859-1?Q?/cRRI/hNW0j/aXPbuS1ypCy0IyugxS9w8sfpz+CaAaHvRDDmD1nKjw7lq/?= =?iso-8859-1?Q?NDydDDZAQPCBtswjJsaEKaMzNjS1n8eA6zH0nldOLcgK6t6hS55bbyTw1I?= =?iso-8859-1?Q?lorShIt1eSiu0aPh/nGZ3118nmrVExPIJrBtU7WZyE7FCqm2OwnspJQuB0?= =?iso-8859-1?Q?K4P0HXiSQPl5HIcM35L6tZbN+lW4x4Oamwb70hGh24EyAv0aFOXL3KOlW+?= =?iso-8859-1?Q?f/f0j9ScdFEKUIaMfZZ3QXK60hVasVBklwgWwLXcfcuuf+TbmysOI0QkVu?= =?iso-8859-1?Q?fA6Ava1GNDGzg81QJMSj3ZqOu5CsCLndp+S5N8ZMGNEnQ9CkfPX0SrFEOK?= =?iso-8859-1?Q?fT5ssAESw1zaHTTkv3NXtkVQAfuExpdTdTetKVsA1TjvMlkUsvMuntYaat?= =?iso-8859-1?Q?OF7Xy7csshAF+syxm2NRARKN8uborVZkiN8bTHZV06myRJUxGpzTxDKMP/?= =?iso-8859-1?Q?6xjFRd7qcv6HtjW/zxiYfT7cMIw5Oor3sWUrpq839aP96s2iMbVXllRg?= =?iso-8859-1?Q?=3D=3D?= Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-OriginatorOrg: epam.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: VI1PR03MB3710.eurprd03.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: c9db9436-2d7a-4414-6957-08db6bf98056 X-MS-Exchange-CrossTenant-originalarrivaltime: 13 Jun 2023 10:32:29.9298 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: b41b72d0-4e9f-4c26-8a69-f949f367c91d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: CehGYQSdFTqvjiB6fiqsYgT0eeFDctLO7RzdWr6PZJMhOFobQO46/txvijh4qKXhqg59XrNv1RN0/YYgWKR8xEVDrkkjtudLRUaemO3OfvM= X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBAPR03MB6520 X-Proofpoint-GUID: 8qCW85zte5c2NE5x0LT9moFSrn1ZdiOa X-Proofpoint-ORIG-GUID: 8qCW85zte5c2NE5x0LT9moFSrn1ZdiOa X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.254,Aquarius:18.0.957,Hydra:6.0.573,FMLib:17.11.176.26 definitions=2023-06-13_04,2023-06-12_02,2023-05-22_02 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 suspectscore=0 lowpriorityscore=0 impostorscore=0 clxscore=1015 mlxscore=0 phishscore=0 mlxlogscore=999 priorityscore=1501 spamscore=0 bulkscore=0 malwarescore=0 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2305260000 definitions=main-2306130093 From: Oleksandr Andrushchenko There are three originators for the PCI configuration space access: 1. The domain that owns physical host bridge: MMIO handlers are there so we can update vPCI register handlers with the values written by the hardware domain, e.g. physical view of the registers vs guest's view on the configuration space. 2. Guest access to the passed through PCI devices: we need to properly map virtual bus topology to the physical one, e.g. pass the configuration space access to the corresponding physical devices. 3. Emulated host PCI bridge access. It doesn't exist in the physical topology, e.g. it can't be mapped to some physical host bridge. So, all access to the host bridge itself needs to be trapped and emulated. Signed-off-by: Oleksandr Andrushchenko --- Since v6: - add pcidevs locking to vpci_translate_virtual_device - update wrt to the new locking scheme Since v5: - add vpci_translate_virtual_device for #ifndef CONFIG_HAS_VPCI_GUEST_SUPPO= RT case to simplify ifdefery - add ASSERT(!is_hardware_domain(d)); to vpci_translate_virtual_device - reset output register on failed virtual SBDF translation Since v4: - indentation fixes - constify struct domain - updated commit message - updates to the new locking scheme (pdev->vpci_lock) Since v3: - revisit locking - move code to vpci.c Since v2: - pass struct domain instead of struct vcpu - constify arguments where possible - gate relevant code with CONFIG_HAS_VPCI_GUEST_SUPPORT New in v2 --- xen/arch/arm/vpci.c | 17 +++++++++++++++++ xen/drivers/vpci/vpci.c | 38 ++++++++++++++++++++++++++++++++++++++ xen/include/xen/vpci.h | 7 +++++++ 3 files changed, 62 insertions(+) diff --git a/xen/arch/arm/vpci.c b/xen/arch/arm/vpci.c index 3bc4bb5508..d60913e532 100644 --- a/xen/arch/arm/vpci.c +++ b/xen/arch/arm/vpci.c @@ -32,6 +32,16 @@ static int vpci_mmio_read(struct vcpu *v, mmio_info_t *i= nfo, /* data is needed to prevent a pointer cast on 32bit */ unsigned long data; =20 + /* + * For the passed through devices we need to map their virtual SBDF + * to the physical PCI device being passed through. + */ + if ( !bridge && !vpci_translate_virtual_device(v->domain, &sbdf) ) + { + *r =3D ~0ul; + return 1; + } + if ( vpci_ecam_read(sbdf, ECAM_REG_OFFSET(info->gpa), 1U << info->dabt.size, &data) ) { @@ -50,6 +60,13 @@ static int vpci_mmio_write(struct vcpu *v, mmio_info_t *= info, struct pci_host_bridge *bridge =3D p; pci_sbdf_t sbdf =3D vpci_sbdf_from_gpa(bridge, info->gpa); =20 + /* + * For the passed through devices we need to map their virtual SBDF + * to the physical PCI device being passed through. + */ + if ( !bridge && !vpci_translate_virtual_device(v->domain, &sbdf) ) + return 1; + return vpci_ecam_write(sbdf, ECAM_REG_OFFSET(info->gpa), 1U << info->dabt.size, r); } diff --git a/xen/drivers/vpci/vpci.c b/xen/drivers/vpci/vpci.c index 9dacb70bf3..490e3b14c7 100644 --- a/xen/drivers/vpci/vpci.c +++ b/xen/drivers/vpci/vpci.c @@ -180,6 +180,44 @@ static void vpci_remove_virtual_device(const struct pc= i_dev *pdev) write_unlock(&pdev->domain->vpci_rwlock); } =20 +/* + * Find the physical device which is mapped to the virtual device + * and translate virtual SBDF to the physical one. + */ +bool vpci_translate_virtual_device(struct domain *d, pci_sbdf_t *sbdf) +{ + struct pci_dev *pdev; + + ASSERT(!is_hardware_domain(d)); + + read_lock(&d->vpci_rwlock); + pcidevs_lock(); + for_each_pdev( d, pdev ) + { + bool found; + + if ( !pdev->vpci ) + continue; + + spin_lock(&pdev->vpci->lock); + found =3D pdev->vpci && (pdev->vpci->guest_sbdf.sbdf =3D=3D sbdf->= sbdf); + spin_unlock(&pdev->vpci->lock); + + if ( found ) + { + /* Replace guest SBDF with the physical one. */ + *sbdf =3D pdev->sbdf; + pcidevs_unlock(); + read_unlock(&d->vpci_rwlock); + return true; + } + } + + pcidevs_unlock(); + read_unlock(&d->vpci_rwlock); + return false; +} + /* Notify vPCI that device is assigned to guest. */ int vpci_assign_device(struct pci_dev *pdev) { diff --git a/xen/include/xen/vpci.h b/xen/include/xen/vpci.h index 3cb5d63e84..0d085971cc 100644 --- a/xen/include/xen/vpci.h +++ b/xen/include/xen/vpci.h @@ -291,6 +291,7 @@ static inline bool __must_check vpci_process_pending(st= ruct vcpu *v) /* Notify vPCI that device is assigned/de-assigned to/from guest. */ int vpci_assign_device(struct pci_dev *pdev); void vpci_deassign_device(struct pci_dev *pdev); +bool vpci_translate_virtual_device(struct domain *d, pci_sbdf_t *sbdf); #else static inline int vpci_assign_device(struct pci_dev *pdev) { @@ -300,6 +301,12 @@ static inline int vpci_assign_device(struct pci_dev *p= dev) static inline void vpci_deassign_device(struct pci_dev *pdev) { }; + +static inline bool vpci_translate_virtual_device(struct domain *d, + pci_sbdf_t *sbdf) +{ + return false; +} #endif =20 #endif --=20 2.40.1 From xen-devel-bounces@lists.xenproject.org Tue Jun 13 10:33:03 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 10:33:03 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547998.855717 (Exim 4.92) (envelope-from ) id 1q91KM-0001td-WB; Tue, 13 Jun 2023 10:32:42 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547998.855717; Tue, 13 Jun 2023 10:32:42 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q91KM-0001rz-Rd; Tue, 13 Jun 2023 10:32:42 +0000 Received: by outflank-mailman (input) for mailman id 547998; Tue, 13 Jun 2023 10:32:41 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q91KL-0001il-9R for xen-devel@lists.xenproject.org; Tue, 13 Jun 2023 10:32:41 +0000 Received: from mx0b-0039f301.pphosted.com (mx0b-0039f301.pphosted.com [148.163.137.242]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 9dc236fc-09d5-11ee-8611-37d641c3527e; Tue, 13 Jun 2023 12:32:38 +0200 (CEST) Received: from pps.filterd (m0174683.ppops.net [127.0.0.1]) by mx0b-0039f301.pphosted.com (8.17.1.5/8.17.1.5) with ESMTP id 35DAO5Kb019280; Tue, 13 Jun 2023 10:32:36 GMT Received: from eur05-am6-obe.outbound.protection.outlook.com (mail-am6eur05lp2106.outbound.protection.outlook.com [104.47.18.106]) by mx0b-0039f301.pphosted.com (PPS) with ESMTPS id 3r5yahmgn9-5 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Tue, 13 Jun 2023 10:32:35 +0000 Received: from VI1PR03MB3710.eurprd03.prod.outlook.com (2603:10a6:803:31::18) by DU0PR03MB9706.eurprd03.prod.outlook.com (2603:10a6:10:44e::5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Tue, 13 Jun 2023 10:32:31 +0000 Received: from VI1PR03MB3710.eurprd03.prod.outlook.com ([fe80::6fa2:d7b8:9bd4:1a51]) by VI1PR03MB3710.eurprd03.prod.outlook.com ([fe80::6fa2:d7b8:9bd4:1a51%5]) with mapi id 15.20.6455.045; Tue, 13 Jun 2023 10:32:31 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 9dc236fc-09d5-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Cgs50T4PHJFAx6AN472fH7lOQR+CdRNilfvZPfLopN+qB03XMd16Av8PDHKcEA7aVki71QLvF+rSnGkcOJ2dm1776V66xCKjV0goefqyNpFjQu+drV2RenFDiWuFNaJPJFaMr2z6YLpEWUVfuLgh27P7yyWyxZtbE0Wag3e93ADz4rxAIZNV/ciEUW6Ve9N6DZ5KXUX8wUW9DmkxDaFCAKx+BVQGACLmQT8+KQZXIIuDNoPBJVWWGvldR4Rr/eM1JEnopT3U1wmAEm/7sJdDxDpp7r8n82vkI5YkdcN3/rOt4kcRTnd+nWD/kWfPVlW6wKeAmjrLcZHUzuxaeXBsVA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=bg2Pv1RvB/O+YBpcN1DSr5WA6RwAEpXU/ehRxVBAmd0=; b=RY35SzCwv5enZ9PZ9bITKyGeF1ETQx7zrw9inDii+TIDs+yNCLCWYKi9S72nWcBbkI8n7TNFtwfWxDW8vGOyo279Yl7K4abwgn8nbXMwy7gNh3bouNaqQb/5Nr0u4W57H9Y3nIeUZqMqzXPccsCstJGmoU53erFnmBKD//GkNscxUw8dI/rsmz0jgUu7gVl9CCWSt8ScWais+IBW30JtcVs8HZhCBfJT0868HFI5pktuRRgxQHv0eFxZ3uzWlSKyateVBdHThE7XGbO7DR/tXSJqLI3VZvjQZR/IaHb5UCj7y/Ti96UdPsUXY18v6qGLsdrHEhUoQeBOk9GNJJnOlg== 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 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=epam.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=bg2Pv1RvB/O+YBpcN1DSr5WA6RwAEpXU/ehRxVBAmd0=; b=JbmF4h0Xf7gAFIGnbj7Melf6KO/TQRdIFlPHALmaaNQwLFQVkc+TLt9eNBcliedy27x1cptK9Mnv9AWjG7Dh6IY87xa1Q//0ySpGnIklYsT8Z5Rtto+H0VKNfDmqoLiVRIanGX45ZmgcK5E9c0NoA8jOsMaK6ZuB6ZtsYt3IkKoMNueW9+jO3BOGnCOK20Fr1A1x3zWMQj7lQwUcYa1Vr6FAvuSWm0QVnRy2Ri32YEw89OLCIjXoBcmp2EDJCdiFFCpfoQpwPW2ygAVtsABdXu8uuJKm1U1JP5TN8yNiZPkp0nbnrsyZSI1qVFGlkHwijUNXMJOeSWTHopDTyFsmLQ== From: Volodymyr Babchuk To: "xen-devel@lists.xenproject.org" CC: Oleksandr Andrushchenko , =?iso-8859-1?Q?Roger_Pau_Monn=E9?= Subject: [PATCH v7 04/12] vpci/header: implement guest BAR register handlers Thread-Topic: [PATCH v7 04/12] vpci/header: implement guest BAR register handlers Thread-Index: AQHZneJZUi9Iw7CMVkOOSMh1fJDqRg== Date: Tue, 13 Jun 2023 10:32:27 +0000 Message-ID: <20230613103159.524763-5-volodymyr_babchuk@epam.com> References: <20230613103159.524763-1-volodymyr_babchuk@epam.com> In-Reply-To: <20230613103159.524763-1-volodymyr_babchuk@epam.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-mailer: git-send-email 2.40.1 x-ms-publictraffictype: Email x-ms-traffictypediagnostic: VI1PR03MB3710:EE_|DU0PR03MB9706:EE_ x-ms-office365-filtering-correlation-id: b20dec47-4d7e-411b-c5e1-08db6bf97e42 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: z8ehHA14NksaMzFSB+W1BNxvLxanrInkJas1ZbmAAo0Djkfnozwz5sf13l0WRFrW44SW2+sD0skYVE8miYF0IISf2AlzMYMmtb8v1Fmpe2Pm6ci0aa/oxXAxcy1YYAtksqouF9nQk5L2ULMulZq00q/UkWQhPnm9ktxGcQmK2t4N9EICLb4fVSL9qQJ8V6QwJw+EWT+TtYRO/lu5iJWZYDnGNerDl8PD4FKGDk2EGr0SC3iU9/D3GoDZmM/9gdWS/UtIlE6rpiVsgcI5RDzSSNK6Qs+URPOdqoJDpToLoljEKTzQzSzolgfmIQVIvkzOwW3DkmQI9Ax7i+06n/WFhASbR4VZpuVLtZUv5FZnO2SXEIl9kvWrw6vcmBiOGoeRueTdWXzb0q6bwdA0Qoa/1M8HhzvuhkHsSSsipOaTXlnqvUPhF/fLchGzLPWmIakyS8K6Akcdx3bzrec0XAYjlbFVbnLhe0EUSFTiy4VkpHWuP9hPOYOQ+HoZujfZ0OABkXRk0seUIfqhgVMwhhgFzVszUq82nKXqePaoQ+Vhdr47XiPko6Y6EEICHd3q7Xdl/mXQI+OzoXHbIV+MRibdCqiv+pKCvmdBP4GoDsdW3ihF0Lbh3vHiOLmqR7NQyIKg x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VI1PR03MB3710.eurprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(396003)(376002)(136003)(346002)(366004)(451199021)(91956017)(64756008)(76116006)(66556008)(66446008)(4326008)(6916009)(66476007)(71200400001)(5660300002)(66946007)(41300700001)(8936002)(8676002)(316002)(36756003)(54906003)(83380400001)(478600001)(2906002)(6486002)(38100700002)(6666004)(186003)(6506007)(26005)(1076003)(6512007)(86362001)(55236004)(38070700005)(2616005)(122000001);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?iso-8859-1?Q?F4y8YE62j4UKdOjD9QiXsexWqs2XZF943gGjyMOkbAOWLaI128DIcDHqh4?= =?iso-8859-1?Q?6YkQs6jeuAbDdG1vrsiDmX8HLjkriuD7LZjypofZirbalqnlP38Jutpqy2?= =?iso-8859-1?Q?JtON3/afJblrJlzt2Azc8nOE3hiErJEaus8rBWA3tKzhQgJNY8/0WlvW1L?= =?iso-8859-1?Q?zj3g/RzWYN8Xi1dfcFzTH376a4SIPQkmG01n4nf3BPqPbIteqU3JodvDm/?= =?iso-8859-1?Q?vlCNIllPKFPPPOORufYi29de6Lr/juFcFcTTdK5BMF7WAyWjwsgyTiLvQW?= =?iso-8859-1?Q?p9SXh+KwW34UeOgu5CXOIY5PDN5gTILzPDxUcAFJknsOr5Y1bhlRzrfhFw?= =?iso-8859-1?Q?KoDxJGflxgQ11YpD6XI0ay9sIrFW3pDL0ptbKzf+sO485elNNV5wqeruNq?= =?iso-8859-1?Q?gaV4RJIgyh510OARxAhRvnOczGfZoYSWd/MMd5WIIGcIQbu7V2BXE1ei1/?= =?iso-8859-1?Q?UidIcbXu2q/s31tXOnRMg/+AA96NRhkrPKcTkv6ndHpve9ejnVRqAIgCld?= =?iso-8859-1?Q?3jRKsasecr1FJ6L/8UUP4NLBEdg5lz9txgeJyTQp9taZsl8ZoFL6qdwVk6?= =?iso-8859-1?Q?nasOHwtbpsVeZ9IugXrUK56/iktIzpU5xYSRxXP22ip2xDp/LUxvs1AXAW?= =?iso-8859-1?Q?h3CnC55GSSsG5jt8m8V3pGoJ/ZhHRXBREIyyxdjE3sBjn4rzJRNZ0Go0CA?= =?iso-8859-1?Q?i3V7vujvAi41n0MlSeSIVkNdpnR1X1PB3mkuEzLu18Qm5BYUd1EkCvQtlt?= =?iso-8859-1?Q?u/O+gaikzt3si4GJU6RzIDCmp4rqgstVE4iFdI5dIAgwh0JswzFyYlMv7+?= =?iso-8859-1?Q?1323c/PkhwIDbW5WhlSrEaUDpEUYSjl9MB3lF3R3xEC7dI3dbZx8DSux2c?= =?iso-8859-1?Q?XIq6ungY3tb49+5eObbJAYV5d5NSBExdsKlqqB7519nz86HPrN5XqpHFlS?= =?iso-8859-1?Q?tCg2dQjbSpayMIS/JcqwLjk7UvCeIKnk2hQORgPDuP1Z3Wz9d2JyshpW7D?= =?iso-8859-1?Q?InVVxQrsUf+I0/YxYvzJ9GjW1dhJBIFsueqppLpH6NexExwV04Ll8jDRVk?= =?iso-8859-1?Q?uYRGjmI+aBJa0wHAfCOd6gXUBIBPh4Qpl2lTvs91HOyqGLHGDL9khYpxFm?= =?iso-8859-1?Q?vgUSlH3A4kz0g4adPvuR+F8K5Er+eRwYetSwg9IDff07hRPqYsx6crMBX9?= =?iso-8859-1?Q?8DCafzMXSBQ+Iry2fRYFS5I70On1zHJNCpDfJ2paVewZv1JmZVBUk2OiGr?= =?iso-8859-1?Q?fDNSzuvJZCBZKx7DJ6/sy2b8+FRNF3mDBLOAeWWfTc/cvXIR6B/Oh3vrUl?= =?iso-8859-1?Q?5NHurf1E5fnB8xsATFYFoYRpJw6C1C83l2F+KcIn8LuMyh/6uqGGe7hvy5?= =?iso-8859-1?Q?HPddKkD6GbkURniA836tDnThhMU1pAM4nNgi12nMSD+xNqo4CebKf8ADRc?= =?iso-8859-1?Q?cPfqaczptK7ylCnEcc1L+wJVTsoa/3L1GIT2+WDH501Fh5GHWpmf1MdBzW?= =?iso-8859-1?Q?FTYFCdXxpMLD9hUvL8QUGo8G+dWCtIm77qzBNhJMIlf5UC8OJBMlUE1swQ?= =?iso-8859-1?Q?GCCoZQ2YAkEM0dCwbF7XqHV3LvBlNCydUH0nJZ2I6auhiMDWdXr8Jsfrhy?= =?iso-8859-1?Q?5tIbm11DIoyv8ALXZGMxcU0YwRNZkfihEsaFsZdzhSiu7o6GjkTzIqGA?= =?iso-8859-1?Q?=3D=3D?= Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-OriginatorOrg: epam.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: VI1PR03MB3710.eurprd03.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: b20dec47-4d7e-411b-c5e1-08db6bf97e42 X-MS-Exchange-CrossTenant-originalarrivaltime: 13 Jun 2023 10:32:27.7897 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: b41b72d0-4e9f-4c26-8a69-f949f367c91d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: hI4cfV7LiUpL7A+QjeL4K/rCOaJOn8GmCYbH/0cSBCvujwvrLnS+oVdkvtKXcIPNoHiDBcHhWnKCu9MVHQU1npa9HRmMH/CrXkILKjTnHi4= X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU0PR03MB9706 X-Proofpoint-GUID: s_sy44IgshwmrV0AxU46G3B8zEiRkNBi X-Proofpoint-ORIG-GUID: s_sy44IgshwmrV0AxU46G3B8zEiRkNBi X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.254,Aquarius:18.0.957,Hydra:6.0.573,FMLib:17.11.176.26 definitions=2023-06-13_04,2023-06-12_02,2023-05-22_02 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 mlxscore=0 suspectscore=0 mlxlogscore=999 spamscore=0 malwarescore=0 clxscore=1015 lowpriorityscore=0 bulkscore=0 priorityscore=1501 phishscore=0 impostorscore=0 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2305260000 definitions=main-2306130093 From: Oleksandr Andrushchenko Add relevant vpci register handlers when assigning PCI device to a domain and remove those when de-assigning. This allows having different handlers for different domains, e.g. hwdom and other guests. Emulate guest BAR register values: this allows creating a guest view of the registers and emulates size and properties probe as it is done during PCI device enumeration by the guest. All empty, IO and ROM BARs for guests are emulated by returning 0 on reads and ignoring writes: this BARs are special with this respect as their lower bits have special meaning, so returning default ~0 on read may confuse guest OS. Memory decoding is initially disabled when used by guests in order to prevent the BAR being placed on top of a RAM region. Signed-off-by: Oleksandr Andrushchenko --- Since v6: - unify the writing of the PCI_COMMAND register on the error path into a label - do not introduce bar_ignore_access helper and open code - s/guest_bar_ignore_read/empty_bar_read - update error message in guest_bar_write - only setup empty_bar_read for IO if !x86 Since v5: - make sure that the guest set address has the same page offset as the physical address on the host - remove guest_rom_{read|write} as those just implement the default behaviour of the registers not being handled - adjusted comment for struct vpci.addr field - add guest handlers for BARs which are not handled and will otherwise return ~0 on read and ignore writes. The BARs are special with this respect as their lower bits have special meaning, so returning ~0 doesn't seem to be right Since v4: - updated commit message - s/guest_addr/guest_reg Since v3: - squashed two patches: dynamic add/remove handlers and guest BAR handler implementation - fix guest BAR read of the high part of a 64bit BAR (Roger) - add error handling to vpci_assign_device - s/dom%pd/%pd - blank line before return Since v2: - remove unneeded ifdefs for CONFIG_HAS_VPCI_GUEST_SUPPORT as more code has been eliminated from being built on x86 Since v1: - constify struct pci_dev where possible - do not open code is_system_domain() - simplify some code3. simplify - use gdprintk + error code instead of gprintk - gate vpci_bar_{add|remove}_handlers with CONFIG_HAS_VPCI_GUEST_SUPPORT, so these do not get compiled for x86 - removed unneeded is_system_domain check - re-work guest read/write to be much simpler and do more work on write than read which is expected to be called more frequently - removed one too obvious comment --- xen/drivers/vpci/header.c | 159 ++++++++++++++++++++++++++++++-------- xen/include/xen/vpci.h | 3 + 2 files changed, 131 insertions(+), 31 deletions(-) diff --git a/xen/drivers/vpci/header.c b/xen/drivers/vpci/header.c index 23b5223adf..8eebbf968b 100644 --- a/xen/drivers/vpci/header.c +++ b/xen/drivers/vpci/header.c @@ -439,6 +439,71 @@ static void cf_check bar_write( pci_conf_write32(pdev->sbdf, reg, val); } =20 +static void cf_check guest_bar_write(const struct pci_dev *pdev, + unsigned int reg, uint32_t val, void = *data) +{ + struct vpci_bar *bar =3D data; + bool hi =3D false; + uint64_t guest_reg =3D bar->guest_reg; + + if ( bar->type =3D=3D VPCI_BAR_MEM64_HI ) + { + ASSERT(reg > PCI_BASE_ADDRESS_0); + bar--; + hi =3D true; + } + else + { + val &=3D PCI_BASE_ADDRESS_MEM_MASK; + val |=3D bar->type =3D=3D VPCI_BAR_MEM32 ? PCI_BASE_ADDRESS_MEM_TY= PE_32 + : PCI_BASE_ADDRESS_MEM_TYPE_64; + val |=3D bar->prefetchable ? PCI_BASE_ADDRESS_MEM_PREFETCH : 0; + } + + guest_reg &=3D ~(0xffffffffull << (hi ? 32 : 0)); + guest_reg |=3D (uint64_t)val << (hi ? 32 : 0); + + guest_reg &=3D ~(bar->size - 1) | ~PCI_BASE_ADDRESS_MEM_MASK; + + /* + * Make sure that the guest set address has the same page offset + * as the physical address on the host or otherwise things won't work = as + * expected. + */ + if ( (guest_reg & (~PAGE_MASK & PCI_BASE_ADDRESS_MEM_MASK)) !=3D + (bar->addr & ~PAGE_MASK) ) + { + gprintk(XENLOG_WARNING, + "%pp: ignored BAR %zu write attempting to change page offs= et\n", + &pdev->sbdf, bar - pdev->vpci->header.bars + hi); + return; + } + + bar->guest_reg =3D guest_reg; +} + +static uint32_t cf_check guest_bar_read(const struct pci_dev *pdev, + unsigned int reg, void *data) +{ + const struct vpci_bar *bar =3D data; + bool hi =3D false; + + if ( bar->type =3D=3D VPCI_BAR_MEM64_HI ) + { + ASSERT(reg > PCI_BASE_ADDRESS_0); + bar--; + hi =3D true; + } + + return bar->guest_reg >> (hi ? 32 : 0); +} + +static uint32_t cf_check empty_bar_read(const struct pci_dev *pdev, + unsigned int reg, void *data) +{ + return 0; +} + static void cf_check rom_write( const struct pci_dev *pdev, unsigned int reg, uint32_t val, void *data= ) { @@ -499,6 +564,7 @@ static int cf_check init_bars(struct pci_dev *pdev) struct vpci_header *header =3D &pdev->vpci->header; struct vpci_bar *bars =3D header->bars; int rc; + bool is_hwdom =3D is_hardware_domain(pdev->domain); =20 ASSERT(rw_is_write_locked(&pdev->domain->vpci_rwlock)); =20 @@ -540,13 +606,12 @@ static int cf_check init_bars(struct pci_dev *pdev) if ( i && bars[i - 1].type =3D=3D VPCI_BAR_MEM64_LO ) { bars[i].type =3D VPCI_BAR_MEM64_HI; - rc =3D vpci_add_register(pdev->vpci, vpci_hw_read32, bar_write= , reg, - 4, &bars[i]); + rc =3D vpci_add_register(pdev->vpci, + is_hwdom ? vpci_hw_read32 : guest_bar_r= ead, + is_hwdom ? bar_write : guest_bar_write, + reg, 4, &bars[i]); if ( rc ) - { - pci_conf_write16(pdev->sbdf, PCI_COMMAND, cmd); - return rc; - } + goto fail; =20 continue; } @@ -555,6 +620,17 @@ static int cf_check init_bars(struct pci_dev *pdev) if ( (val & PCI_BASE_ADDRESS_SPACE) =3D=3D PCI_BASE_ADDRESS_SPACE_= IO ) { bars[i].type =3D VPCI_BAR_IO; + +#ifndef CONFIG_X86 + if ( !is_hwdom ) + { + rc =3D vpci_add_register(pdev->vpci, empty_bar_read, NULL, + reg, 4, &bars[i]); + if ( rc ) + goto fail; + } +#endif + continue; } if ( (val & PCI_BASE_ADDRESS_MEM_TYPE_MASK) =3D=3D @@ -566,14 +642,20 @@ static int cf_check init_bars(struct pci_dev *pdev) rc =3D pci_size_mem_bar(pdev->sbdf, reg, &addr, &size, (i =3D=3D num_bars - 1) ? PCI_BAR_LAST : 0); if ( rc < 0 ) - { - pci_conf_write16(pdev->sbdf, PCI_COMMAND, cmd); - return rc; - } + goto fail; =20 if ( size =3D=3D 0 ) { bars[i].type =3D VPCI_BAR_EMPTY; + + if ( !is_hwdom ) + { + rc =3D vpci_add_register(pdev->vpci, empty_bar_read, NULL, + reg, 4, &bars[i]); + if ( rc ) + goto fail; + } + continue; } =20 @@ -581,38 +663,53 @@ static int cf_check init_bars(struct pci_dev *pdev) bars[i].size =3D size; bars[i].prefetchable =3D val & PCI_BASE_ADDRESS_MEM_PREFETCH; =20 - rc =3D vpci_add_register(pdev->vpci, vpci_hw_read32, bar_write, re= g, 4, - &bars[i]); + rc =3D vpci_add_register(pdev->vpci, + is_hwdom ? vpci_hw_read32 : guest_bar_read, + is_hwdom ? bar_write : guest_bar_write, + reg, 4, &bars[i]); if ( rc ) - { - pci_conf_write16(pdev->sbdf, PCI_COMMAND, cmd); - return rc; - } + goto fail; } =20 ASSERT(!header->rom_reg); - - /* Check expansion ROM. */ - rc =3D pci_size_mem_bar(pdev->sbdf, rom_reg, &addr, &size, PCI_BAR_ROM= ); - if ( rc > 0 && size ) + /* Check expansion ROM: we do not handle ROM for guests. */ + if ( is_hwdom ) { - struct vpci_bar *rom =3D &header->bars[num_bars]; + rc =3D pci_size_mem_bar(pdev->sbdf, rom_reg, &addr, &size, PCI_BAR= _ROM); + if ( rc > 0 && size ) + { + struct vpci_bar *rom =3D &header->bars[num_bars]; =20 - rom->type =3D VPCI_BAR_ROM; - rom->size =3D size; - rom->addr =3D addr; - header->rom_enabled =3D pci_conf_read32(pdev->sbdf, rom_reg) & - PCI_ROM_ADDRESS_ENABLE; + rom->type =3D VPCI_BAR_ROM; + rom->size =3D size; + rom->addr =3D addr; + header->rom_enabled =3D pci_conf_read32(pdev->sbdf, rom_reg) & + PCI_ROM_ADDRESS_ENABLE; =20 - rc =3D vpci_add_register(pdev->vpci, vpci_hw_read32, rom_write, ro= m_reg, - 4, rom); - if ( rc ) - rom->type =3D VPCI_BAR_EMPTY; + rc =3D vpci_add_register(pdev->vpci, vpci_hw_read32, rom_write= , + rom_reg, 4, rom); + if ( rc ) + rom->type =3D VPCI_BAR_EMPTY; =20 - header->rom_reg =3D rom_reg; + header->rom_reg =3D rom_reg; + } + } + else + { + if ( !is_hwdom ) + { + rc =3D vpci_add_register(pdev->vpci, empty_bar_read, NULL, + rom_reg, 4, &header->bars[num_bars]); + if ( rc ) + goto fail; + } } =20 return (cmd & PCI_COMMAND_MEMORY) ? modify_bars(pdev, cmd, false) : 0; + + fail: + pci_conf_write16(pdev->sbdf, PCI_COMMAND, cmd); + return rc; } REGISTER_VPCI_INIT(init_bars, VPCI_PRIORITY_MIDDLE); =20 diff --git a/xen/include/xen/vpci.h b/xen/include/xen/vpci.h index 5383ede556..e9170cc8ca 100644 --- a/xen/include/xen/vpci.h +++ b/xen/include/xen/vpci.h @@ -70,7 +70,10 @@ struct vpci { struct vpci_header { /* Information about the PCI BARs of this device. */ struct vpci_bar { + /* Physical (host) address. */ uint64_t addr; + /* Guest view of the BAR: address and lower bits. */ + uint64_t guest_reg; uint64_t size; enum { VPCI_BAR_EMPTY, --=20 2.40.1 From xen-devel-bounces@lists.xenproject.org Tue Jun 13 10:33:03 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 10:33:03 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547997.855712 (Exim 4.92) (envelope-from ) id 1q91KM-0001mf-NZ; Tue, 13 Jun 2023 10:32:42 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547997.855712; Tue, 13 Jun 2023 10:32:42 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q91KM-0001mW-Iv; Tue, 13 Jun 2023 10:32:42 +0000 Received: by outflank-mailman (input) for mailman id 547997; Tue, 13 Jun 2023 10:32:41 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q91KK-0001im-Tp for xen-devel@lists.xenproject.org; Tue, 13 Jun 2023 10:32:41 +0000 Received: from mx0b-0039f301.pphosted.com (mx0b-0039f301.pphosted.com [148.163.137.242]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 9e6e6cd6-09d5-11ee-b232-6b7b168915f2; Tue, 13 Jun 2023 12:32:39 +0200 (CEST) Received: from pps.filterd (m0174683.ppops.net [127.0.0.1]) by mx0b-0039f301.pphosted.com (8.17.1.5/8.17.1.5) with ESMTP id 35DAO5Kd019280; Tue, 13 Jun 2023 10:32:37 GMT Received: from eur05-am6-obe.outbound.protection.outlook.com (mail-am6eur05lp2106.outbound.protection.outlook.com [104.47.18.106]) by mx0b-0039f301.pphosted.com (PPS) with ESMTPS id 3r5yahmgn9-7 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Tue, 13 Jun 2023 10:32:37 +0000 Received: from VI1PR03MB3710.eurprd03.prod.outlook.com (2603:10a6:803:31::18) by DU0PR03MB9706.eurprd03.prod.outlook.com (2603:10a6:10:44e::5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Tue, 13 Jun 2023 10:32:32 +0000 Received: from VI1PR03MB3710.eurprd03.prod.outlook.com ([fe80::6fa2:d7b8:9bd4:1a51]) by VI1PR03MB3710.eurprd03.prod.outlook.com ([fe80::6fa2:d7b8:9bd4:1a51%5]) with mapi id 15.20.6455.045; Tue, 13 Jun 2023 10:32:32 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 9e6e6cd6-09d5-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=K7gK6EtpgRxLd4ra5bZalEvFz+1OiQoKhMsz1xt59QtINXG5B/56icHyCzU51QgmAzLKspnqkXNFO86AA8tC/aZFd53EhYUD0zxmWCEhmmrcmDpoaKDwSBqW6NVt745VG9rya1dvg+VSDEn9z3toRmHiO/4Gr6uutpqQcMVJRWhakyj2FGi2xuZl40vWZKOql5OLYWrt/MPjSBIQTrGHbh5xxgVrDNkv/IgwW/85VUK/yQVqwgTH1ZjQTLJDspDC0wFIrwvRFCnxukoLa4oKnYLC4kO9xJXkaXR2gtuHl1C/PKREsuZhnDCq0UypB6RKlw7/9Kgb5hK6wDswDRrylA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=CNyh7b3z00o9nb1EZGxIuBRmA/qLfWrnIQKWvheJ33w=; b=Ujx1eTytwFJoH7aMBEAv9ur4TUhUHlygmjX1bcqps7qDGR+Oi+foSBaLGqpyxImfxs+QGGgvYUPWpzm7Pqs6pW44v6Y9UHx+jyUEJ2towLOXnj2lvll891lShUOfsOr9cXk85paGb9hAFF7LuncQHIhupHrJhcgxiUI80dSH4KZP5FALH2iwAnvC0ohR2uSbsRnRd4p30gIlFbTF4XU063p+1ZN/RJqRXTeprRAFhVVAOQV6fdCXBkyvd20eFD4iS1gZorFeIzaStQZJivqP2IMVyyP+Wdw7qooX+FttcYwFnpHpcpSSNdgPvHTCOfN6xjO55JMYA298Xi5KYplDgw== 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 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=epam.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=CNyh7b3z00o9nb1EZGxIuBRmA/qLfWrnIQKWvheJ33w=; b=kiBq2YIPOA3t9OnlWZXMNQiajs4UAR+UpQkncmIw3ewQyp9ILYwsAWBmoBvSdADJ2z5pY3XncWH6G6zw6TpK4xVdkfgnUD0iOKfwxmtre6lApPDRNBvYvskKMFHfkBLjbCB5+4AZeVXBRfVMLBHVQCf4OP72GlAIUgrCWj7OKo6lDBWZ4AioTeNErOUYitV60dOXX9nKSCTmUfVP7wQx1x/TyfpCviXKPG3nzEO1ZZPE6bGCI0ie64qWUntYaL1LemqXenNwO6iRgJCISpvwTSKi3tK+LpM50nRXQRPxHtMIKfAxaPXTQcDSxltIPEDebl4mSK3icE0A2otffYqMFg== From: Volodymyr Babchuk To: "xen-devel@lists.xenproject.org" CC: Oleksandr Andrushchenko , =?iso-8859-1?Q?Roger_Pau_Monn=E9?= Subject: [PATCH v7 07/12] vpci/header: program p2m with guest BAR view Thread-Topic: [PATCH v7 07/12] vpci/header: program p2m with guest BAR view Thread-Index: AQHZneJan/HM4MlRFEiYjDr8BhS2ig== Date: Tue, 13 Jun 2023 10:32:28 +0000 Message-ID: <20230613103159.524763-8-volodymyr_babchuk@epam.com> References: <20230613103159.524763-1-volodymyr_babchuk@epam.com> In-Reply-To: <20230613103159.524763-1-volodymyr_babchuk@epam.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-mailer: git-send-email 2.40.1 x-ms-publictraffictype: Email x-ms-traffictypediagnostic: VI1PR03MB3710:EE_|DU0PR03MB9706:EE_ x-ms-office365-filtering-correlation-id: 90024425-b506-425a-cabb-08db6bf97f2e x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: uvx9GSZZau2vgf24paxZHo59i6GQzkHP4nPJGGLZp6oC5+isR+8MWv9GicryXxl9QBjrF/eYBR/U+CIPl2cj04p3ocZubZIjUzUBp6WX9Xs6imcoaZSFkzOYwknkMa7gBUTprgT2Cq5UZor17DBNigmMR8Ko8Ra+lI9tMAEwApcVdf3Hv8vkAOOqszYPQHIqp+kCnfgdCjVegBVgdtDhCl2cghoCgALXLAXiSfQ5KQRqju/sVxX+t6phMun2ra+PxBWO6E3jUtDFSFenyRGARskF9usxJ0MOVTPlTXDRmDjdQpHsMDIdEWasyoQb3fiNuCCp3c+RYc/SyT7J0osgi/5YJEESCo1+g6BevYabNLEQCzTedmPkoHcSJEmnRHcAAV6eUBtMzZK8BhgLsWhmhxYoFmOgWG0pGgXI2bQC75mzwQ3M91tDEroWGTEsXHX8PGkXikciRLyyuH6wIqSXByeTCuMU/aEm4d3ThoXsSA1wz0/BpOrGMONmGV7uOj9Jefw7OcolBAaHKTaloGDCAFnNsv+00rAK5yzisDXwVzh9XWQGYcWPZcfX4r39eIY9GNRc0xRcGYgQ6EYF68gvjqDT1Q+N0maI6b5sOM5aNsn/CJPK3exM5opZT1/phz5c x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VI1PR03MB3710.eurprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(396003)(376002)(136003)(346002)(366004)(451199021)(91956017)(64756008)(76116006)(66556008)(66446008)(4326008)(6916009)(66476007)(71200400001)(5660300002)(66946007)(41300700001)(8936002)(8676002)(316002)(36756003)(54906003)(83380400001)(478600001)(2906002)(6486002)(38100700002)(6666004)(186003)(6506007)(26005)(1076003)(6512007)(86362001)(55236004)(38070700005)(2616005)(122000001);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?iso-8859-1?Q?3feZgc9oqmxnSad3oHdp5jZ+tBpdYqzkAbckadCMpUfaLB3tn0jPsmINqs?= =?iso-8859-1?Q?GJDOmERe3GMyFoI8ZSXCE8S4lCOggvwGpLNbUST4nEQP+Tl7CoFEDsQLiA?= =?iso-8859-1?Q?YI8EJeJI2myspF0vtOBh9YVS29c48jKU3MUPofoLsW6XtyMMUWXWTrqo8P?= =?iso-8859-1?Q?oiRgGR3Liyz7kOoZZRNzJYFWHxhUC8ojm8XqltYc1eL4ytzRwE4SfVMBWA?= =?iso-8859-1?Q?Hra6XwW8YYSJmh+XhWdH4iVLDPi7hQ40jgjFAjSAiGmj3a+Z9m5wYEWb7m?= =?iso-8859-1?Q?BVfalbVi3q9U95InVKDaNLVagb1Z4upjRjRbHJMnVWgjCOxRduv5yFtHzT?= =?iso-8859-1?Q?oiuPJjDO9bFb/99ofWDtRTfyah5jt/MzQ9Mil83OEm/NCnRCGdI7vMR6E4?= =?iso-8859-1?Q?5J5SP0JHSmm9qXnqNgdmKYhmNKxQH8MBX8fiZD/NFYIaBc3Dj+z1+Aw1wv?= =?iso-8859-1?Q?ESJGdWWXtnUx/vi/LG1L6bqMzaAqvve3euwnMpF7aj/zXGJgGqH18x84Zu?= =?iso-8859-1?Q?1fmbem5M8ehskOPEaLsooYEc5lHyBlIL3TS9tZ/X3cmwkhUUtJ4TQOdL4Y?= =?iso-8859-1?Q?6CiV2X08MWaGvpMFJIhfJl/I3gAuNLi1WSM0iCBBWdv9U6L7mLymh8pGGm?= =?iso-8859-1?Q?en3qXaTbBf+nAWqIcFx/7+84/NkyiYLC3t4KuKDhchq2L72mJVUGUImObr?= =?iso-8859-1?Q?32NB3jPrLwdvp00TTt7DeM5fT+EBHc8one5Lm3oVq8RsGvjkI1o2eyOfAP?= =?iso-8859-1?Q?B+89Bm/nRPJmecPYep7ncsa7C5lgEpGXpj9gEJPjRur6i9a7OH+gqczMLH?= =?iso-8859-1?Q?TWYW+iH3jq++6IA3BJIRPe9RaSatRKi7aPj9Eq2FgGz6xe98WWMjxXokMy?= =?iso-8859-1?Q?JbSX0aXjHrMAEFTK0GvEQock1HZu4rOQR2bcOby96D1fUvxpBe7sqxXupW?= =?iso-8859-1?Q?ADYNKp6p8GgWpq44s2Ba3QRZ/0P4rqjJzrwfkQ8+wlRXJD+n7WSmyKKA5h?= =?iso-8859-1?Q?4VbDmNwH63fZ3z2BaYbbETlBhMjWZN/dmwYz4G8a69FcRv1jhoi53pFuBt?= =?iso-8859-1?Q?MH8RIBLkxqnRD68CiR+2Xx/wtI77Rdk20oUgjrAtnEhBg7VKkFNq5uL6lC?= =?iso-8859-1?Q?BqL2JeWlEFFVSgxZhsQ+xCZdjEDD+KVjYPDa00BlZD+6kcU9dKLftlJ7ve?= =?iso-8859-1?Q?kDuZTXUaRbg5CmyLAGSy8tcFqlxkWzesAjwYCxk5l94HdrGSOBCqHUT50v?= =?iso-8859-1?Q?+DURlN16Uu/9AQWQXAZaGMvlJHY7sXSgaMXUbPs9Fi4mmgVpe0lSwITrnz?= =?iso-8859-1?Q?1XecXvJ/8nOTAoqBM+bUY71EjWPTujMpCYXKHlq+m+kbaygs/dX8RuCJMX?= =?iso-8859-1?Q?ypC/pwYl9M7la11Dpsoo7RkyTJ49mpHAFu8iYCL0RSvW+psVl5U+r9CkV6?= =?iso-8859-1?Q?2jqQouPO6J9YnrZgp9w2KqeXR6FEtBcwuJts9Vevlo8ZMhYyu20oVm9kzT?= =?iso-8859-1?Q?3yfw6nfgNpsWuiE0PUfBegF3uCH3J0lBUyXCZrkL19KexSP6QmHefWQrtZ?= =?iso-8859-1?Q?LVUn2lgt6eK1ugMy47ZdiDYvdnaBEly5IjYedXlDbVQ3Bdnf1lNsccav9j?= =?iso-8859-1?Q?5NO4AY6OhnB4NiA3TAH6Fz2knbzWIgy2R1W4+7JQW8bnjOgvGicr2XPg?= =?iso-8859-1?Q?=3D=3D?= Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-OriginatorOrg: epam.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: VI1PR03MB3710.eurprd03.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 90024425-b506-425a-cabb-08db6bf97f2e X-MS-Exchange-CrossTenant-originalarrivaltime: 13 Jun 2023 10:32:28.7428 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: b41b72d0-4e9f-4c26-8a69-f949f367c91d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: E6Ax67teC/MtbBieUF9pH4vkD1EiGib29MvIzFW4ufY49Lm9zOfOcJIReZwCBuM0tWX5xWLKmYVr3g8apky/b3N935lhZ7L5Po3qEd4DULo= X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU0PR03MB9706 X-Proofpoint-GUID: kKPw5AViXivcgLUhkDPKgHMjM4MBYCo7 X-Proofpoint-ORIG-GUID: kKPw5AViXivcgLUhkDPKgHMjM4MBYCo7 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.254,Aquarius:18.0.957,Hydra:6.0.573,FMLib:17.11.176.26 definitions=2023-06-13_04,2023-06-12_02,2023-05-22_02 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 mlxscore=0 suspectscore=0 mlxlogscore=999 spamscore=0 malwarescore=0 clxscore=1015 lowpriorityscore=0 bulkscore=0 priorityscore=1501 phishscore=0 impostorscore=0 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2305260000 definitions=main-2306130093 From: Oleksandr Andrushchenko Take into account guest's BAR view and program its p2m accordingly: gfn is guest's view of the BAR and mfn is the physical BAR value as set up by the PCI bus driver in the hardware domain. This way hardware domain sees physical BAR values and guest sees emulated ones. Signed-off-by: Oleksandr Andrushchenko --- Since v5: - remove debug print in map_range callback - remove "identity" from the debug print Since v4: - moved start_{gfn|mfn} calculation into map_range - pass vpci_bar in the map_data instead of start_{gfn|mfn} - s/guest_addr/guest_reg Since v3: - updated comment (Roger) - removed gfn_add(map->start_gfn, rc); which is wrong - use v->domain instead of v->vpci.pdev->domain - removed odd e.g. in comment - s/d%d/%pd in altered code - use gdprintk for map/unmap logs Since v2: - improve readability for data.start_gfn and restructure ?: construct Since v1: - s/MSI/MSI-X in comments --- xen/drivers/vpci/header.c | 24 ++++++++++++++++++++---- 1 file changed, 20 insertions(+), 4 deletions(-) diff --git a/xen/drivers/vpci/header.c b/xen/drivers/vpci/header.c index 8e722857d6..0524fbd220 100644 --- a/xen/drivers/vpci/header.c +++ b/xen/drivers/vpci/header.c @@ -30,6 +30,7 @@ =20 struct map_data { struct domain *d; + const struct vpci_bar *bar; bool map; }; =20 @@ -41,8 +42,21 @@ static int cf_check map_range( =20 for ( ; ; ) { + /* Start address of the BAR as seen by the guest. */ + gfn_t start_gfn =3D _gfn(PFN_DOWN(is_hardware_domain(map->d) + ? map->bar->addr + : map->bar->guest_reg)); + /* Physical start address of the BAR. */ + mfn_t start_mfn =3D _mfn(PFN_DOWN(map->bar->addr)); unsigned long size =3D e - s + 1; =20 + /* + * Ranges to be mapped don't always start at the BAR start address= , as + * there can be holes or partially consumed ranges. Account for th= e + * offset of the current address from the BAR start. + */ + start_gfn =3D gfn_add(start_gfn, s - mfn_x(start_mfn)); + /* * ARM TODOs: * - On ARM whether the memory is prefetchable or not should be pa= ssed @@ -52,8 +66,8 @@ static int cf_check map_range( * - {un}map_mmio_regions doesn't support preemption. */ =20 - rc =3D map->map ? map_mmio_regions(map->d, _gfn(s), size, _mfn(s)) - : unmap_mmio_regions(map->d, _gfn(s), size, _mfn(s))= ; + rc =3D map->map ? map_mmio_regions(map->d, start_gfn, size, _mfn(s= )) + : unmap_mmio_regions(map->d, start_gfn, size, _mfn(s= )); if ( rc =3D=3D 0 ) { *c +=3D size; @@ -62,8 +76,8 @@ static int cf_check map_range( if ( rc < 0 ) { printk(XENLOG_G_WARNING - "Failed to identity %smap [%lx, %lx] for d%d: %d\n", - map->map ? "" : "un", s, e, map->d->domain_id, rc); + "Failed to %smap [%lx, %lx] for %pd: %d\n", + map->map ? "" : "un", s, e, map->d, rc); break; } ASSERT(rc < size); @@ -165,6 +179,7 @@ bool vpci_process_pending(struct vcpu *v) if ( rangeset_is_empty(bar->mem) ) continue; =20 + data.bar =3D bar; rc =3D rangeset_consume_ranges(bar->mem, map_range, &data); =20 if ( rc =3D=3D -ERESTART ) @@ -224,6 +239,7 @@ static int __init apply_map(struct domain *d, const str= uct pci_dev *pdev, if ( rangeset_is_empty(bar->mem) ) continue; =20 + data.bar =3D bar; while ( (rc =3D rangeset_consume_ranges(bar->mem, map_range, &data)) =3D=3D -ERESTART ) { --=20 2.40.1 From xen-devel-bounces@lists.xenproject.org Tue Jun 13 10:33:03 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 10:33:03 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548005.855776 (Exim 4.92) (envelope-from ) id 1q91KV-0003e8-9T; Tue, 13 Jun 2023 10:32:51 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548005.855776; Tue, 13 Jun 2023 10:32:51 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q91KV-0003dp-5K; Tue, 13 Jun 2023 10:32:51 +0000 Received: by outflank-mailman (input) for mailman id 548005; Tue, 13 Jun 2023 10:32:49 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q91KS-0001im-Ve for xen-devel@lists.xenproject.org; Tue, 13 Jun 2023 10:32:49 +0000 Received: from mx0b-0039f301.pphosted.com (mx0b-0039f301.pphosted.com [148.163.137.242]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id a2ff8b91-09d5-11ee-b232-6b7b168915f2; Tue, 13 Jun 2023 12:32:47 +0200 (CEST) Received: from pps.filterd (m0174683.ppops.net [127.0.0.1]) by mx0b-0039f301.pphosted.com (8.17.1.5/8.17.1.5) with ESMTP id 35DAO5Ka019280; Tue, 13 Jun 2023 10:32:35 GMT Received: from eur05-am6-obe.outbound.protection.outlook.com (mail-am6eur05lp2106.outbound.protection.outlook.com [104.47.18.106]) by mx0b-0039f301.pphosted.com (PPS) with ESMTPS id 3r5yahmgn9-4 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Tue, 13 Jun 2023 10:32:35 +0000 Received: from VI1PR03MB3710.eurprd03.prod.outlook.com (2603:10a6:803:31::18) by DU0PR03MB9706.eurprd03.prod.outlook.com (2603:10a6:10:44e::5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Tue, 13 Jun 2023 10:32:30 +0000 Received: from VI1PR03MB3710.eurprd03.prod.outlook.com ([fe80::6fa2:d7b8:9bd4:1a51]) by VI1PR03MB3710.eurprd03.prod.outlook.com ([fe80::6fa2:d7b8:9bd4:1a51%5]) with mapi id 15.20.6455.045; Tue, 13 Jun 2023 10:32:30 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: a2ff8b91-09d5-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=dXcPM430Y0AzK7Lbi6uqAI4PDwVMUU7Tokq6AYARaL9rGoumjn2gomfl9UusCOz0RGla1DIlnw47GjZpOzmqDpSN+DgKKHtDfrgZkuo+E/hD0XNddBFRPZ5bAeK1Hu96uclL+/HcfFvyEoFetofd32UZa+U4AcxR8ei6MauoKUJjk/6eG8LmeQjP2ruF79RbzVAJ7iz7M3xeUHhf4IOz3aTX1wmZKdh1YRSUYPthy5W16jYo1hUKL/ox8MpO+kRXbyb9XiGM8X47NB5OjU/0EOWh/WQ/Pr38iu0MpB5g6lTxbisK2ueNMe1Nw2XvDggMt0y9XIeYMhkipuS7jCrPKQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=Y4ds1N6Vp7dUlaANy/wSVy9nlYUhCmnAHHk12HItlTU=; b=G+zkOZimS+oX3WytR4+2P9J7WPYXWdyCzl5eC12uCGs9Fbw/qN3/9yCiQGKllTAWxaX2WLRsp4sCcjVFTEhPELeqIULzbM7PYZ0UP5u1qVk2wCU6t8S1v87Mcd5Dgn0CeKOLcrj2GpLwaoHRX9A/aXWqb6z+j4WtNkANO02ISgBA7eDbPpqs7Mwl3I3/COlkPzzhOHujQuZqseRKR475h54JTqezQZs4zJBZ9gmCu61vgYDRAvKy19AHf6/i+hqQ+ZxdccWWXUc5AhJVhxbeSbml5RotVq8N/TcjdbdmUAXF3pijO4EptZ5aC0cZZ2bmkkiW5FfcpervrjL0ZJCjqg== 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 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=epam.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Y4ds1N6Vp7dUlaANy/wSVy9nlYUhCmnAHHk12HItlTU=; b=OeDZ52hx11DmqMCIWM52DxOlMpEIKJdI60C6194DaETT6neSaReIAbXRkOjuwatux09If6aihNcOAnHuW6SwIv4m1zdrR1UU8j3yRMhfXXxp5gxkuyhAhv89gtpuqrRo+7L96R0G0QGb2oLmPA24XHtiUMhNgd+vyeraVuAmEjrD6fFyROLhBS0merGRsPG7AFPtN497VGD+nxKlgPY2jt7JBH2ofoo30daQGx3Ix0F5U+G1v5Q8k4lunhp7ErLrT4L1RGOCR2+IKFXKOP9lBCQQ6heVpkYxmLexKXm/0Wmq8EHyvev8fAc3CTFlEBXyeqCcRvDfYX6tOuhYRy6niQ== From: Volodymyr Babchuk To: "xen-devel@lists.xenproject.org" CC: Oleksandr Andrushchenko , Andrew Cooper , George Dunlap , Jan Beulich , Julien Grall , Stefano Stabellini , Wei Liu , Paul Durrant , =?iso-8859-1?Q?Roger_Pau_Monn=E9?= Subject: [PATCH v7 03/12] vpci: add hooks for PCI device assign/de-assign Thread-Topic: [PATCH v7 03/12] vpci: add hooks for PCI device assign/de-assign Thread-Index: AQHZneJZP53w2XmssEurF7oAFnlHXQ== Date: Tue, 13 Jun 2023 10:32:27 +0000 Message-ID: <20230613103159.524763-4-volodymyr_babchuk@epam.com> References: <20230613103159.524763-1-volodymyr_babchuk@epam.com> In-Reply-To: <20230613103159.524763-1-volodymyr_babchuk@epam.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-mailer: git-send-email 2.40.1 x-ms-publictraffictype: Email x-ms-traffictypediagnostic: VI1PR03MB3710:EE_|DU0PR03MB9706:EE_ x-ms-office365-filtering-correlation-id: fa9bfe89-2f24-46d1-cbb8-08db6bf97de5 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: 3H1r/kDYrmXXsIAEvrwDum+66PlVVU1yPfkh5tC6IExSlwR6/4jV4ba+8YMg33ZSlmPpZDMQxfRur03dUgRotZyx5YcXtC4cm/xpgs1JX3q51m6MdJOKbEAYnuFqdToOOOmwvxB5iDBUWBmJ2AuYykrtXuRh4zPrwcVctGGeK6LjGboMemjm+vtkwc9cKKagyPT4BIxMdLOqkmTNlnacfFgK09crqD0GTwkzoWZWWkxzGbdWG6IJ6ueYq+ss+PrTFERLAXjnO8GWMtVgpZxTKyFXnL4ExGi/fu9mYAopP8w8pltOLwO8lhqZeIgLB0x0cJerWeCi4jztEGXlAVprPNagqzPHoeO84yVcukpk8Tsv+4tzAC6mtzrGwpFhBIB8PlBSbawsYe5lRAXWM1x99tWdqRB6ehg5VaMLKEn+D8dSRRa7VXXQg7Xg458rBHQtHUDre3UmQKm4fHM07juOvsLsVYtvfzekC7No1hmQhYwbLlyBmLI++2nsEk7kuOtjyRM04vIqLSlGLhjP6ITZVZs8ntqplAGokEG0JZAWMw9FgrArmbd58fpFA5yGGw9QWzo7bBRBhhXG8/zuHGUekdKPYUDW62B7uBBkj9am7/2Ok699Tkie2I6H2sO7YYR4 x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VI1PR03MB3710.eurprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(396003)(376002)(136003)(346002)(366004)(451199021)(91956017)(64756008)(76116006)(66556008)(66446008)(4326008)(6916009)(66476007)(71200400001)(5660300002)(66946007)(41300700001)(8936002)(8676002)(316002)(36756003)(54906003)(83380400001)(478600001)(2906002)(6486002)(38100700002)(6666004)(186003)(6506007)(26005)(1076003)(6512007)(86362001)(55236004)(38070700005)(2616005)(122000001);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?iso-8859-1?Q?kiGhCGnv88Uc4hL9cBf37oVHBsGXlo6sKm3vZJE7Tq7yfr2X0EdQ93Qn1Q?= =?iso-8859-1?Q?h2OOrwsK/tJMTbpBYVwX/JFDjBZhKs6xxNNi2GXxvupfR8RZ1Hogo8usg3?= =?iso-8859-1?Q?/OjEYtDCN6M9t9jaIu7JxZCDoLfFSM8uqFifAA3ZDhUDeUB/r2RB6Vanw/?= =?iso-8859-1?Q?83eD7KjcTabh51hVrnX0dEpPUUv4nxJiBGbLlYGwFDFiLRzfXkii5w9D6F?= =?iso-8859-1?Q?cSb4lbxeUFu1JL4o43TYhW2f7pGbkCpUpdaAT9fWYwa6Mdtd8P99yUI5CP?= =?iso-8859-1?Q?RRDySECrPr3w3a+ICO1b2YveSwEuQ0bX2CW3GCDkC9yq/Hvn5QnyIFTHrN?= =?iso-8859-1?Q?6GhdHJpKRnaYE73xEYinVIBcIB0JEH0aduQQcnqw6UmmYLlOD9T/o3XRDp?= =?iso-8859-1?Q?KSdIQaXPLk5O/5VhSvvjNcOtzEotZdbEkoRAKLEex3S4m7ZASPPnwuIZl5?= =?iso-8859-1?Q?FxZjysHOOcxdphyooFMz073+PQUkHYS09bs7iLZMzapgKA0WjKPvNvRW9S?= =?iso-8859-1?Q?7TAckBKEzMfkwmdBweJ24aqWEFysKPz0Qn76NOATEVEPh+QaXQ4peOf2vX?= =?iso-8859-1?Q?uGJ7IckvbFv6OU4CXcOoBQHgR5SnB3Tx+b87VDV2IVTO0CbCNzqPftgvQa?= =?iso-8859-1?Q?RL6KSTMautnxbIr07DnIPF/MZp73pE8E7bKHlThvFQ607IxSTrvapv4kgF?= =?iso-8859-1?Q?gZwkGgtth5/6zhyIeH6br83pKYnb9PAZ8LLnwlhPyX8hMRfgeY6ZZDXz7X?= =?iso-8859-1?Q?r+vWVBlihqvfwrd0aazjb/ae5TXZaDg/T6KX+z+V5vy1Fm6Gvmf4D06wVa?= =?iso-8859-1?Q?V0nSbiHohVHySndFPjSxo85T2jAlGNQRWdWK9y6WpyNxL+jpVSqWDlYnDr?= =?iso-8859-1?Q?FzkmcnCm6OASJP68kxKuDKJKPVhqNMfVyFna5pHFOzsoej9zMucT2jbXeu?= =?iso-8859-1?Q?tckcg4uVou+REZoIIl9/OpSoEULqzwyX3QQ2IiZUn3CJrZsdZoPwRyLDYw?= =?iso-8859-1?Q?Z/Ww9tMClKoPzqcKajWbMNTdyUg314+kl/Peoxh/sJSHdWAF8o70fFqreo?= =?iso-8859-1?Q?MNKKa9nDUVIcWO6JUX+SMAWqGN/FHdS471pBURlyIRiXjAruhQO4aftbyv?= =?iso-8859-1?Q?CQomMVNEOQ2wpgsj/Uth3Sv/v2l27NJau114YxFLVxlHXItE0E8V0M9sgc?= =?iso-8859-1?Q?Ue7jOljT4JcvBKpO/4Y0OizN99LeDH6pxmdIma65L+XekLHpMqDJnoLDDy?= =?iso-8859-1?Q?sCx6A+8DQVglHCJxUreJ44JcBuWvVtKpyEu3hcUeED8dVTpIpsxac1Q0O0?= =?iso-8859-1?Q?i9IFq4u1RImz8zzi2RzRDdHXaPQj1k1QGe56N3PPhmzJIzVPu3lObJqePJ?= =?iso-8859-1?Q?xVYv4xEryVUrqFoaVNBqZunA6vq02r+IL0EtKqOd0HCJYp2P2BsLVdAVAv?= =?iso-8859-1?Q?fvoV17N8nVBun6bdpe3i1zBcRLr7p00vj0xZGLmxNNuLSjgnnBtq4kvEV3?= =?iso-8859-1?Q?CnVy1fIbQsNuXhIp7JiuuxK8dkV2wByBNSdbMgWcucvOgLjYCOzi9Igvnl?= =?iso-8859-1?Q?Cn8yVpW2i27Fpxmjt5ixilYYbpJ72rxYQdpJ13odwkcMa5hIcYR0NeuzlB?= =?iso-8859-1?Q?nxXG5Ty0ao4XqL2r87OznoRz+DFHrbEoVT0oS7RJiFm/lbQeXJv62o/Q?= =?iso-8859-1?Q?=3D=3D?= Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-OriginatorOrg: epam.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: VI1PR03MB3710.eurprd03.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: fa9bfe89-2f24-46d1-cbb8-08db6bf97de5 X-MS-Exchange-CrossTenant-originalarrivaltime: 13 Jun 2023 10:32:27.5060 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: b41b72d0-4e9f-4c26-8a69-f949f367c91d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: RN+bhgKNKmjVpGUpks2R0tF9bwlP4Wj11u2dJJ1l9MCNCcIN0+EUOcj0FTHfdG/s6m/EfD6zT0XlI6SixwQta/qyhAdkt8D4sd1kIe19HcA= X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU0PR03MB9706 X-Proofpoint-GUID: hZrBNS6L2x-zXTuYiJGvJeB00Ny7B0ii X-Proofpoint-ORIG-GUID: hZrBNS6L2x-zXTuYiJGvJeB00Ny7B0ii X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.254,Aquarius:18.0.957,Hydra:6.0.573,FMLib:17.11.176.26 definitions=2023-06-13_04,2023-06-12_02,2023-05-22_02 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 mlxscore=0 suspectscore=0 mlxlogscore=999 spamscore=0 malwarescore=0 clxscore=1015 lowpriorityscore=0 bulkscore=0 priorityscore=1501 phishscore=0 impostorscore=0 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2305260000 definitions=main-2306130093 From: Oleksandr Andrushchenko When a PCI device gets assigned/de-assigned some work on vPCI side needs to be done for that device. Introduce a pair of hooks so vPCI can handle that. Signed-off-by: Oleksandr Andrushchenko --- Since v6: - do not pass struct domain to vpci_{assign|deassign}_device as pdev->domain can be used - do not leave the device assigned (pdev->domain =3D=3D new domain) in case vpci_assign_device fails: try to de-assign and if this also fails, then crash the domain Since v5: - do not split code into run_vpci_init - do not check for is_system_domain in vpci_{de}assign_device - do not use vpci_remove_device_handlers_locked and re-allocate pdev->vpci completely - make vpci_deassign_device void Since v4: - de-assign vPCI from the previous domain on device assignment - do not remove handlers in vpci_assign_device as those must not exist at that point Since v3: - remove toolstack roll-back description from the commit message as error are to be handled with proper cleanup in Xen itself - remove __must_check - remove redundant rc check while assigning devices - fix redundant CONFIG_HAS_VPCI check for CONFIG_HAS_VPCI_GUEST_SUPPORT - use REGISTER_VPCI_INIT machinery to run required steps on device init/assign: add run_vpci_init helper Since v2: - define CONFIG_HAS_VPCI_GUEST_SUPPORT so dead code is not compiled for x86 Since v1: - constify struct pci_dev where possible - do not open code is_system_domain() - extended the commit message --- xen/drivers/Kconfig | 4 ++++ xen/drivers/passthrough/pci.c | 11 +++++++++++ xen/drivers/vpci/vpci.c | 27 +++++++++++++++++++++++++++ xen/include/xen/vpci.h | 15 +++++++++++++++ 4 files changed, 57 insertions(+) diff --git a/xen/drivers/Kconfig b/xen/drivers/Kconfig index db94393f47..780490cf8e 100644 --- a/xen/drivers/Kconfig +++ b/xen/drivers/Kconfig @@ -15,4 +15,8 @@ source "drivers/video/Kconfig" config HAS_VPCI bool =20 +config HAS_VPCI_GUEST_SUPPORT + bool + depends on HAS_VPCI + endmenu diff --git a/xen/drivers/passthrough/pci.c b/xen/drivers/passthrough/pci.c index 0afcb59af0..f43b40508a 100644 --- a/xen/drivers/passthrough/pci.c +++ b/xen/drivers/passthrough/pci.c @@ -877,6 +877,8 @@ static int deassign_device(struct domain *d, uint16_t s= eg, uint8_t bus, if ( ret ) goto out; =20 + vpci_deassign_device(pdev); + if ( pdev->domain =3D=3D hardware_domain ) pdev->quarantine =3D false; =20 @@ -1417,6 +1419,7 @@ static int assign_device(struct domain *d, u16 seg, u= 8 bus, u8 devfn, u32 flag) { const struct domain_iommu *hd =3D dom_iommu(d); struct pci_dev *pdev; + uint8_t old_devfn; int rc =3D 0; =20 if ( !is_iommu_enabled(d) ) @@ -1436,6 +1439,8 @@ static int assign_device(struct domain *d, u16 seg, u= 8 bus, u8 devfn, u32 flag) if ( pdev->broken && d !=3D hardware_domain && d !=3D dom_io ) goto done; =20 + vpci_deassign_device(pdev); + rc =3D pdev_msix_assign(d, pdev); if ( rc ) goto done; @@ -1453,6 +1458,8 @@ static int assign_device(struct domain *d, u16 seg, u= 8 bus, u8 devfn, u32 flag) pci_to_dev(pdev), flag)) ) goto done; =20 + old_devfn =3D devfn; + for ( ; pdev->phantom_stride; rc =3D 0 ) { devfn +=3D pdev->phantom_stride; @@ -1462,6 +1469,10 @@ static int assign_device(struct domain *d, u16 seg, = u8 bus, u8 devfn, u32 flag) pci_to_dev(pdev), flag); } =20 + rc =3D vpci_assign_device(pdev); + if ( rc && deassign_device(d, seg, bus, old_devfn) ) + domain_crash(d); + done: if ( rc ) printk(XENLOG_G_WARNING "%pd: assign (%pp) failed (%d)\n", diff --git a/xen/drivers/vpci/vpci.c b/xen/drivers/vpci/vpci.c index 0b11d9c3f8..4182c65eaa 100644 --- a/xen/drivers/vpci/vpci.c +++ b/xen/drivers/vpci/vpci.c @@ -114,6 +114,33 @@ int vpci_add_handlers(struct pci_dev *pdev) =20 return rc; } + +#ifdef CONFIG_HAS_VPCI_GUEST_SUPPORT +/* Notify vPCI that device is assigned to guest. */ +int vpci_assign_device(struct pci_dev *pdev) +{ + int rc; + + if ( !has_vpci(pdev->domain) ) + return 0; + + rc =3D vpci_add_handlers(pdev); + if ( rc ) + vpci_deassign_device(pdev); + + return rc; +} + +/* Notify vPCI that device is de-assigned from guest. */ +void vpci_deassign_device(struct pci_dev *pdev) +{ + if ( !has_vpci(pdev->domain) ) + return; + + vpci_remove_device(pdev); +} +#endif /* CONFIG_HAS_VPCI_GUEST_SUPPORT */ + #endif /* __XEN__ */ =20 static int vpci_register_cmp(const struct vpci_register *r1, diff --git a/xen/include/xen/vpci.h b/xen/include/xen/vpci.h index 3a7fcc4463..5383ede556 100644 --- a/xen/include/xen/vpci.h +++ b/xen/include/xen/vpci.h @@ -270,6 +270,21 @@ static inline bool __must_check vpci_process_pending(s= truct vcpu *v) } #endif =20 +#ifdef CONFIG_HAS_VPCI_GUEST_SUPPORT +/* Notify vPCI that device is assigned/de-assigned to/from guest. */ +int vpci_assign_device(struct pci_dev *pdev); +void vpci_deassign_device(struct pci_dev *pdev); +#else +static inline int vpci_assign_device(struct pci_dev *pdev) +{ + return 0; +}; + +static inline void vpci_deassign_device(struct pci_dev *pdev) +{ +}; +#endif + #endif =20 /* --=20 2.40.1 From xen-devel-bounces@lists.xenproject.org Tue Jun 13 10:33:03 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 10:33:03 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548007.855788 (Exim 4.92) (envelope-from ) id 1q91KW-0003pi-Af; Tue, 13 Jun 2023 10:32:52 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548007.855788; Tue, 13 Jun 2023 10:32:52 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q91KV-0003mg-Sz; Tue, 13 Jun 2023 10:32:51 +0000 Received: by outflank-mailman (input) for mailman id 548007; Tue, 13 Jun 2023 10:32:50 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q91KT-0001im-Vp for xen-devel@lists.xenproject.org; Tue, 13 Jun 2023 10:32:50 +0000 Received: from mx0b-0039f301.pphosted.com (mx0b-0039f301.pphosted.com [148.163.137.242]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id a354493f-09d5-11ee-b232-6b7b168915f2; Tue, 13 Jun 2023 12:32:47 +0200 (CEST) Received: from pps.filterd (m0174683.ppops.net [127.0.0.1]) by mx0b-0039f301.pphosted.com (8.17.1.5/8.17.1.5) with ESMTP id 35DAO5KZ019280; Tue, 13 Jun 2023 10:32:34 GMT Received: from eur05-am6-obe.outbound.protection.outlook.com (mail-am6eur05lp2106.outbound.protection.outlook.com [104.47.18.106]) by mx0b-0039f301.pphosted.com (PPS) with ESMTPS id 3r5yahmgn9-3 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Tue, 13 Jun 2023 10:32:34 +0000 Received: from VI1PR03MB3710.eurprd03.prod.outlook.com (2603:10a6:803:31::18) by DU0PR03MB9706.eurprd03.prod.outlook.com (2603:10a6:10:44e::5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Tue, 13 Jun 2023 10:32:27 +0000 Received: from VI1PR03MB3710.eurprd03.prod.outlook.com ([fe80::6fa2:d7b8:9bd4:1a51]) by VI1PR03MB3710.eurprd03.prod.outlook.com ([fe80::6fa2:d7b8:9bd4:1a51%5]) with mapi id 15.20.6455.045; Tue, 13 Jun 2023 10:32:27 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: a354493f-09d5-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=GxhWHWhs/pE8sBDlvFriQcSBFZDeeLDi3XpzE0Ka5KtWAA1t0Lqe6udxnPloKGWNej4zdiVYTSqEdvD4m5yHrSG0fSyCV3Dqveaoiwd8KcETBOcl0YFRn75YwxcYch0rcE4yaeDtRfMPfjfNbN75NVWzIZ6qsBG67o6pZ3jAw7cgkB27ZpU4h9IrRV4vsemkRKJyZdNW8A3Tcj7IRVRrlR3jFr6Bw0zuirgskSC+dAXe0v4EAoPVY5ku49C4GhxhB+IrDeE7Sr+a2F0bQpLLqK7zFKheebBJOQLReisSJFxeAln1ZnJhabEqro1WqxRXSxAeXHdKHiUkbqyoaqif+g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=l7KRV/9J4bj1bWWF2aqOnKB23fKF5Us5BL80aI/80+c=; b=nxoMiyKkvua2PlIqaIRNgFL7wTx1nA+gXXJaPKc4gK3lDA5zJIZZeH08Wh9EX8nWe6XSBR6AYXUP8x0BzmbDSCv1g8/YM7sVSHuTxVSgmIBRa320wA4i+02OerE9pRar5id4RJuhhJSZF/F2stOUSMoEdR6JNnlDJB8//RqEHKJY0cpOTX3Salxgou01NdUaW66Q9MI2wGG1rqzip8FKcsZgXZjL43InZs8uo+2I45IbLOK75freXkCdQDmgSN6i451m7bp/4R5q7QHJx4dh7mHCxY+pHtbClprbX4YaaZReO2075PuPLxQavxVLo5fPjTDLu2R1w1GZ55yflC5/7g== 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 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=epam.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=l7KRV/9J4bj1bWWF2aqOnKB23fKF5Us5BL80aI/80+c=; b=mHWqvq5hdLoBH6UqG9Y491+C2RjEQC36lSIqrSbM8VnGXBQhdntZ0lGw4PxE/EEYAn4LRf9sM9Wik+jxSXk/ueBFdjdfHTNM19/4M43k26ofs0j+ujVaNO2QW2ketw+6DcXlwogkyO7a2nkSGHeo2HcAyECNkLl4My6ZlZCe4g7+4jgkacIFEpHFrN9NNDFPgJYnHWCl4n9pyVFcghypFBsm0MOPP4t0EAZlFZB8sxEr+dA1QUVIc/Uw7kG8zGtuoTwL8pvfuiw8bEDPYgNhtOO6+J1qkcHt8+e0z77PhUDREFsHiyfvSDadIxGtnRRZEPURgqgFhUZz9yk9m5bDAg== From: Volodymyr Babchuk To: "xen-devel@lists.xenproject.org" CC: Oleksandr Andrushchenko , Jan Beulich , Andrew Cooper , =?utf-8?B?Um9nZXIgUGF1IE1vbm7DqQ==?= , Wei Liu , George Dunlap , Julien Grall , Stefano Stabellini , Paul Durrant Subject: [PATCH v7 01/12] vpci: introduce per-domain lock to protect vpci structure Thread-Topic: [PATCH v7 01/12] vpci: introduce per-domain lock to protect vpci structure Thread-Index: AQHZneJZdDE+HOoSO0y6VB9l0x1hDg== Date: Tue, 13 Jun 2023 10:32:26 +0000 Message-ID: <20230613103159.524763-2-volodymyr_babchuk@epam.com> References: <20230613103159.524763-1-volodymyr_babchuk@epam.com> In-Reply-To: <20230613103159.524763-1-volodymyr_babchuk@epam.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-mailer: git-send-email 2.40.1 x-ms-publictraffictype: Email x-ms-traffictypediagnostic: VI1PR03MB3710:EE_|DU0PR03MB9706:EE_ x-ms-office365-filtering-correlation-id: 418358fe-47b1-4849-fd6f-08db6bf97c08 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: d8pqRNuGoCYKdA8wTkY0YHIOdODe8/RZb5/BPBIj9GOSwNbjsSpt+1/02me9GnfJSuAYBVejclOLZmaR5bzgjrt9IXi9r1BT4NCtwjjiKFIcfVD5iZgmsFjSohyPZdS5ANecslIUoUCOHUYeVgCWjmh3opju/p+qAgwptld9gGsfU93HWGJyJI6M+PjTgd3Ec4KVNj7ETBbWBLeRlnVTSD/YWixHzhgaxCwIKGAyD7YdiM0K4YRndURdD29/oZoNcFQh/E2d6s6hP36nGwk/Ph8hEIbJcLfxzN9uEvKQiPQGF4cyMmfUMXF8kQYUeKpDLxJOcdye5rcEStvonsl6JEi+dqFZXWnjm9UCaMs4KA53kJwEil1om3WIg3bt8qu2k+SA89JbzT95IY+6OxdRvmyNsRH2/mQoUugq8/AyQ3kr3PXY9hYQXKzjC6ouQ9kqhG83Vf1ydyJ+lIIVTqlE9rWIIXb21f917Fv2LWpvLXuWwNg/BRHfizeUVlTHLLieeB7a9m1Vqx60CEri2a+454/5HGeVF5dMGEEH45FfHn2PVgQaI+hsQ4vq80jUHaIVlJ9qTKHHV2aLQ/ocRFqoPo3+l41a7S/xoREWSn0AD+b0igNu5njYHSillVYs9oNG x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VI1PR03MB3710.eurprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(396003)(376002)(136003)(346002)(366004)(451199021)(966005)(91956017)(64756008)(76116006)(66556008)(66446008)(4326008)(6916009)(66476007)(71200400001)(5660300002)(66946007)(66899021)(41300700001)(8936002)(8676002)(316002)(36756003)(54906003)(30864003)(83380400001)(478600001)(2906002)(6486002)(38100700002)(186003)(6506007)(26005)(1076003)(6512007)(86362001)(55236004)(38070700005)(2616005)(122000001)(579004)(559001)(309714004);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?UGg2d2NJYXpXSGlFRDVRT3pMUjZNR3N6UEZMTUF0b3pxcVpaZjgwS3gxdXc0?= =?utf-8?B?SnFVdENCclFHWHN4UTN6SThWbkk2TVNNWWpTUnV6OVpKbmdSSzhvOW5HVjlr?= =?utf-8?B?ZFUvTVlObzFsRlF4VjJMUUtHZDcxS1ZIMXN3aTdseW5ydWkxaHJKSnpidjFC?= =?utf-8?B?WXowcVpjSTJpS0dyVzVHNGxlTnEyTkZBWFJsSU9SRjhSdFdtWW1ocU5iOVda?= =?utf-8?B?YjdoZVcxOHVKeFBNcmkwY21tbjY3WHBHby9iREFobzhhdEJMRkxOZzhQRlor?= =?utf-8?B?Uk1RYVhFdGdJT2ZQY2xsLzlVQjR6U1RMcUU3Z21uNEhkcmNOdE5oMk55ZVov?= =?utf-8?B?dTh0QTQySTlkZ3dMVURGcHNnWi82L3BoYVd6cGwwWUhTdmF6ZlFHd3hJcGlO?= =?utf-8?B?c3dwaDN0cG1CVWlwQm9QaE9ZMnVSLzV3UGpOLytIL2xUa3hOdnVHbEFuUXph?= =?utf-8?B?MFM4RnozUGJYZDcrRUhsMm1zK0NoUHRVLy84M3dRVnNNMlFoQk9EMFY2RnQv?= =?utf-8?B?RURnNTR3aStMZjNJTGttY1c5Si9jR1VOMGdjTTl3eE4vd0xIbzhkV0VmQjZL?= =?utf-8?B?WE1ZMlpEbm9nMm93T3UyZzNkN0k1U3pGdFVtYnNzZlhzZ2xLOGNxZ2Z3cENG?= =?utf-8?B?RTV0akE0czFBdU4rWkRSeXpKZGx1Zm1tRWRWZ3BJUHJOT2tMdTU0di91WHBq?= =?utf-8?B?YnJoSFU3RUZaK0d5MnFRU2Z3a2MxMVRseVNZc3BzQU51ZGlLdnNEMVpZQ0NU?= =?utf-8?B?U21ZdzRvN3JxVDhrT2JidFdiS2plbDd6aUx3TlVacVo3YXVqZXRuTlllenIr?= =?utf-8?B?L0RHb2hNZEVyVGZySHBiQlc1ZDlBU21qRW9IZWpscjZUTVpNQi84V0tPeVdK?= =?utf-8?B?c0Q1V01PUHN5SDBaeDh2TzBZYWk1a25mRkZ4NVNLaGJSWW5XS2hlNW1LbDZP?= =?utf-8?B?VHhJRzVNeGFuNWNsNVJQUmQ4blpxNTFodU1PWDVqaldLMHFWb2ZWeEFCeE1Q?= =?utf-8?B?TWt0NU90eUhxYXRIVFllRi91YlQwcWdIcE9VSUVQb2lSUjN3ODlzbUFmcDE4?= =?utf-8?B?VkxsOGozRVhQcFY0NmVPYTF2VkMvUW1VV2VZUVFKSGFNdUxvcmJsQlgyNDB6?= =?utf-8?B?bGdKM0JDS1ZsTmdScVNOTzdJMzE1aWV1bEJaaHhjL0ZRUDV0MlRGUkxpc3hR?= =?utf-8?B?WnB5bmhhRjY0TTJYL3JoZVJlNE45QUpUQVRwZklBRnBqV0NjWDRKaElsM25Z?= =?utf-8?B?dWVYZld0SUF6KysydVRleTltNjIxUklmblVlNmkvWDY4c3l4eWZJOGlHcDRY?= =?utf-8?B?Sm5WMjZkNENjU1hVZVBhVVJSSytFMUhJcGZxVjNJdWNhSHNndUt2ZnNYRVNu?= =?utf-8?B?cUdJd3lRU1BXNFdrM3F6L2U1WkhiZHlTSjRlamVUMGFUOXZQTC9WdzlOYUV0?= =?utf-8?B?bUNVL2ZMcnl4TmM0eW03Y0pwMzdhR2N6c0JTb1RRV3MxamE3aTBHUElmV25N?= =?utf-8?B?eXc0WkRxQ1dpaXVmdDg3MTNDVENJMTV1THpSUG44WjZ4QVZTSGdzZUhwNEVi?= =?utf-8?B?NVBLLytyc1ZjaWwvQUtwVU9jeWVkRTZaUjcyTEczS1ZwTXc2MUVrT2g0V3BS?= =?utf-8?B?cTh6Wmgyei84dkV0MER2bWNZdHRCRDM3d2lrMFFvRmdCa3psRVJDMVg2K3FI?= =?utf-8?B?SHN5NHFBcG1tSkNFSHZKS0dTd3AxYk1iRHdiRHRlajlHcTNiemV0L2ZaNGF6?= =?utf-8?B?WDFkeDkwYmd6NThNVjdCSkxwcnRmQ3lrWHJFUDV3VjA4VGpHNEFWVFZWYXBj?= =?utf-8?B?SXRsSkgrdkE1WHhTRE1EVFVRQjFkMHhKZUQvZXdTcjdUai9VTjlxNnJ1akw1?= =?utf-8?B?NXVsamtYMnlWM3RLMklEK1EzZDVOdjVudUhxOGJvazFmWHkyWWxoWjQ3djh5?= =?utf-8?B?bm1xb2JPdGdXdVdYQU9LcVVRVG4zcXlzb3loaldiR294ekZiMkRlYncvTi9O?= =?utf-8?B?UlYxUVB4OFBLb0lvOFBidGh5THR5RGNPTEY5WEJiNkEvUXdFZEpGd0pEb3gv?= =?utf-8?B?dG53VDlmTVhyOEUwSlNJZmFLQU82M01qZUh0MTU3UXN4K0ZEckQ0SE82UDY1?= =?utf-8?B?MnY4THdXUElNUDdKaE9jRS9rbGIxYjgzMjBXU1c2bDdtK0o2ZSs1OXlYQkdw?= =?utf-8?B?WGc9PQ==?= Content-Type: text/plain; charset="utf-8" Content-ID: Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: epam.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: VI1PR03MB3710.eurprd03.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 418358fe-47b1-4849-fd6f-08db6bf97c08 X-MS-Exchange-CrossTenant-originalarrivaltime: 13 Jun 2023 10:32:26.9819 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: b41b72d0-4e9f-4c26-8a69-f949f367c91d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: BGl6KtVUFFpq7bzfINa/ESgBU2h9U08hlRap6FMhsd7aas81bxpsopYvDEBUBcVsGqEK1ib6oxBruJcEa8KlYuWszDBL6gPvheT82eKV8Gk= X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU0PR03MB9706 X-Proofpoint-GUID: gL1gMRsyVgjFA6e7UXKA3zTzOmHcmIpD X-Proofpoint-ORIG-GUID: gL1gMRsyVgjFA6e7UXKA3zTzOmHcmIpD X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.254,Aquarius:18.0.957,Hydra:6.0.573,FMLib:17.11.176.26 definitions=2023-06-13_04,2023-06-12_02,2023-05-22_02 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 mlxscore=0 suspectscore=0 mlxlogscore=999 spamscore=0 malwarescore=0 clxscore=1015 lowpriorityscore=0 bulkscore=0 priorityscore=1501 phishscore=0 impostorscore=0 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2305260000 definitions=main-2306130093 RnJvbTogT2xla3NhbmRyIEFuZHJ1c2hjaGVua28gPG9sZWtzYW5kcl9hbmRydXNoY2hlbmtvQGVw YW0uY29tPg0KDQpJbnRyb2R1Y2UgYSBwZXItZG9tYWluIHJlYWQvd3JpdGUgbG9jayB0byBjaGVj ayB3aGV0aGVyIHZwY2kgaXMgcHJlc2VudCwNCnNvIHdlIGFyZSBzdXJlIHRoZXJlIGFyZSBubyBh Y2Nlc3NlcyB0byB0aGUgY29udGVudHMgb2YgdGhlIHZwY2kgc3RydWN0DQppZiBub3QuIFRoaXMg bG9jayBjYW4gYmUgdXNlZCAoYW5kIGluIGEgZmV3IGNhc2VzIGlzIHVzZWQgcmlnaHQgYXdheSkN CnNvIHRoYXQgdnBjaSByZW1vdmFsIGNhbiBiZSBwZXJmb3JtZWQgd2hpbGUgaG9sZGluZyB0aGUg bG9jayBpbiB3cml0ZQ0KbW9kZS4gUHJldmlvdXNseSBzdWNoIHJlbW92YWwgY291bGQgcmFjZSB3 aXRoIHZwY2lfcmVhZCBmb3IgZXhhbXBsZS4NCg0KMS4gUGVyLWRvbWFpbidzIHZwY2lfcndsb2Nr IGlzIHVzZWQgdG8gcHJvdGVjdCBwZGV2LT52cGNpIHN0cnVjdHVyZQ0KZnJvbSBiZWluZyByZW1v dmVkLg0KDQoyLiBXcml0aW5nIHRoZSBjb21tYW5kIHJlZ2lzdGVyIGFuZCBST00gQkFSIHJlZ2lz dGVyIG1heSB0cmlnZ2VyDQptb2RpZnlfYmFycyB0byBydW4sIHdoaWNoIGluIHR1cm4gbWF5IGFj Y2VzcyBtdWx0aXBsZSBwZGV2cyB3aGlsZQ0KY2hlY2tpbmcgZm9yIHRoZSBleGlzdGluZyBCQVIn cyBvdmVybGFwLiBUaGUgb3ZlcmxhcHBpbmcgY2hlY2ssIGlmIGRvbmUNCnVuZGVyIHRoZSByZWFk IGxvY2ssIHJlcXVpcmVzIHZwY2ktPmxvY2sgdG8gYmUgYWNxdWlyZWQgb24gYm90aCBkZXZpY2Vz DQpiZWluZyBjb21wYXJlZCwgd2hpY2ggbWF5IHByb2R1Y2UgYSBkZWFkbG9jay4gSXQgaXMgbm90 IHBvc3NpYmxlIHRvDQp1cGdyYWRlIHJlYWQgbG9jayB0byB3cml0ZSBsb2NrIGluIHN1Y2ggYSBj YXNlLiBTbywgaW4gb3JkZXIgdG8gcHJldmVudA0KdGhlIGRlYWRsb2NrLCBjaGVjayB3aGljaCBy ZWdpc3RlcnMgYXJlIGdvaW5nIHRvIGJlIHdyaXR0ZW4gYW5kIGFjcXVpcmUNCnRoZSBsb2NrIGlu IHRoZSBhcHByb3ByaWF0ZSBtb2RlIGZyb20gdGhlIGJlZ2lubmluZy4NCg0KQWxsIG90aGVyIGNv ZGUsIHdoaWNoIGRvZXNuJ3QgbGVhZCB0byBwZGV2LT52cGNpIGRlc3RydWN0aW9uIGFuZCBkb2Vz IG5vdA0KYWNjZXNzIG11bHRpcGxlIHBkZXZzIGF0IHRoZSBzYW1lIHRpbWUsIGNhbiBzdGlsbCB1 c2UgYSBjb21iaW5hdGlvbiBvZiB0aGUNCnJlYWQgbG9jayBhbmQgcGRldi0+dnBjaS0+bG9jay4N Cg0KMy4gT3B0aW1pemUgaWYgUk9NIEJBUiB3cml0ZSBsb2NrIHJlcXVpcmVkIGRldGVjdGlvbiBi eSBjYWNoaW5nIG9mZnNldA0Kb2YgdGhlIFJPTSBCQVIgcmVnaXN0ZXIgaW4gdnBjaS0+aGVhZGVy LT5yb21fcmVnIHdoaWNoIGRlcGVuZHMgb24NCmhlYWRlcidzIHR5cGUuDQoNCjQuIFJlZHVjZSBs b2NrZWQgcmVnaW9uIGluIHZwY2lfcmVtb3ZlX2RldmljZSBhcyBpdCBpcyBub3cgcG9zc2libGUN CnRvIHNldCBwZGV2LT52cGNpIHRvIE5VTEwgZWFybHkgcmlnaHQgYWZ0ZXIgdGhlIHdyaXRlIGxv Y2sgaXMgYWNxdWlyZWQuDQoNCjUuIFJlZHVjZSBsb2NrZWQgcmVnaW9uIGluIHZwY2lfYWRkX2hh bmRsZXJzIGFzIGl0IGlzIHBvc3NpYmxlIHRvDQppbml0aWFsaXplIG1hbnkgbW9yZSBmaWVsZHMg b2YgdGhlIHN0cnVjdCB2cGNpIGJlZm9yZSBhc3NpZ25pbmcgaXQgdG8NCnBkZXYtPnZwY2kuDQoN CjYuIHZwY2lfe2FkZHxyZW1vdmV9X3JlZ2lzdGVyIGFyZSByZXF1aXJlZCB0byBiZSBjYWxsZWQg d2l0aCB0aGUgd3JpdGUgbG9jaw0KaGVsZCwgYnV0IGl0IGlzIG5vdCBmZWFzaWJsZSB0byBhZGQg YW4gYXNzZXJ0IHRoZXJlIGFzIGl0IHJlcXVpcmVzDQpzdHJ1Y3QgZG9tYWluIHRvIGJlIHBhc3Nl ZCBmb3IgdGhhdC4gU28sIGFkZCBhIGNvbW1lbnQgYWJvdXQgdGhpcyByZXF1aXJlbWVudA0KdG8g dGhlc2UgYW5kIG90aGVyIGZ1bmN0aW9ucyB3aXRoIHRoZSBlcXVpdmFsZW50IGNvbnN0cmFpbnRz Lg0KDQo3LiBEcm9wIGNvbnN0IHF1YWxpZmllciB3aGVyZSB0aGUgbmV3IHJ3bG9jayBpcyB1c2Vk IGFuZCB0aGlzIGlzIGFwcHJvcHJpYXRlLg0KDQo4LiBEbyBub3QgY2FsbCBwcm9jZXNzX3BlbmRp bmdfc29mdGlycXMgd2l0aCBhbnkgbG9ja3MgaGVsZC4gRm9yIHRoYXQgdW5sb2NrDQpwcmlvciB0 aGUgY2FsbCBhbmQgcmUtYWNxdWlyZSB0aGUgbG9ja3MgYWZ0ZXIuIEFmdGVyIHJlLWFjcXVpcmlu ZyB0aGUNCmxvY2sgdGhlcmUgaXMgbm8gbmVlZCB0byBjaGVjayBpZiBwZGV2LT52cGNpIGV4aXN0 czoNCiAtIGluIGFwcGx5X21hcCBiZWNhdXNlIG9mIHRoZSBjb250ZXh0IGl0IGlzIGNhbGxlZCAo bm8gcmFjZSBjb25kaXRpb24NCiAgIHBvc3NpYmxlKQ0KIC0gZm9yIE1TSS9NU0ktWCBkZWJ1ZyBj b2RlIGJlY2F1c2UgaXQgaXMgY2FsbGVkIGF0IHRoZSBlbmQgb2YNCiAgIHBkZXYtPnZwY2kgYWNj ZXNzIGFuZCBubyBmdXJ0aGVyIGFjY2VzcyB0byBwZGV2LT52cGNpIGlzIG1hZGUNCg0KOS4gQ2hl Y2sgZm9yICFwZGV2LT52cGNpIGluIHZwY2lfe3JlYWR8d3JpdGV9IGFmdGVyIGFjcXVpcmluZyB0 aGUgbG9jaw0KYW5kIGlmIHNvLCBhbGxvdyByZWFkaW5nIG9yIHdyaXRpbmcgdGhlIGhhcmR3YXJl IHJlZ2lzdGVyIGRpcmVjdGx5LiBUaGlzIGlzDQphY2NlcHRhYmxlIGFzIHdlIG9ubHkgZGVhbCB3 aXRoIERvbTAgYXMgb2Ygbm93LiBPbmNlIERvbVUgc3VwcG9ydCBpcw0KYWRkZWQgdGhlIHdyaXRl IHdpbGwgbmVlZCB0byBiZSBpZ25vcmVkIGFuZCByZWFkIHJldHVybiBhbGwgMCdzIGZvciB0aGUN Cmd1ZXN0cywgd2hpbGUgRG9tMCBjYW4gc3RpbGwgYWNjZXNzIHRoZSByZWdpc3RlcnMgZGlyZWN0 bHkuDQoNCjEwLiBJbnRyb2R1Y2UgcGNpZGV2c190cnlsb2NrLCBzbyB0aGVyZSBpcyBhIHBvc3Np YmlsaXR5IHRvIHRyeSBsb2NraW5nDQp0aGUgcGNpZGV2J3MgbG9jay4NCg0KMTEuIFVzZSBwY2lk ZXYncyBsb2NrIGFyb3VuZCBmb3JfZWFjaF9wZGV2IGFuZCBwY2lfZ2V0X3BkZXZfYnlfZG9tYWlu DQp3aGlsZSBhY2Nlc3NpbmcgcGRldnMgaW4gdnBjaSBjb2RlLg0KDQoxMi4gVGhpcyBpcyBiYXNl ZCBvbiB0aGUgZGlzY3Vzc2lvbiBhdCBbMV0uDQoNClsxXSBodHRwczovL2xvcmUua2VybmVsLm9y Zy9hbGwvMjAyMjAyMDQwNjM0NTkuNjgwOTYxLTQtYW5kcjIwMDBAZ21haWwuY29tLw0KDQpTdWdn ZXN0ZWQtYnk6IFJvZ2VyIFBhdSBNb25uw6kgPHJvZ2VyLnBhdUBjaXRyaXguY29tPg0KU3VnZ2Vz dGVkLWJ5OiBKYW4gQmV1bGljaCA8amJldWxpY2hAc3VzZS5jb20+DQpTaWduZWQtb2ZmLWJ5OiBP bGVrc2FuZHIgQW5kcnVzaGNoZW5rbyA8b2xla3NhbmRyX2FuZHJ1c2hjaGVua29AZXBhbS5jb20+ DQoNCi0tLQ0KVGhpcyB3YXMgY2hlY2tlZCBvbiB4ODY6IHdpdGggYW5kIHdpdGhvdXQgUFZIIERv bTAuDQotLS0NCiB4ZW4vYXJjaC94ODYvaHZtL3Ztc2kuYyAgICAgICB8ICAgNyArKysNCiB4ZW4v Y29tbW9uL2RvbWFpbi5jICAgICAgICAgICB8ICAgMyArDQogeGVuL2RyaXZlcnMvcGFzc3Rocm91 Z2gvcGNpLmMgfCAgIDUgKysNCiB4ZW4vZHJpdmVycy92cGNpL2hlYWRlci5jICAgICB8ICA1MiAr KysrKysrKysrKysrKysrKw0KIHhlbi9kcml2ZXJzL3ZwY2kvbXNpLmMgICAgICAgIHwgIDI1ICsr KysrKystDQogeGVuL2RyaXZlcnMvdnBjaS9tc2l4LmMgICAgICAgfCAgNTEgKysrKysrKysrKysr Ky0tLQ0KIHhlbi9kcml2ZXJzL3ZwY2kvdnBjaS5jICAgICAgIHwgMTA3ICsrKysrKysrKysrKysr KysrKysrKysrKystLS0tLS0tLS0NCiB4ZW4vaW5jbHVkZS94ZW4vcGNpLmggICAgICAgICB8ICAg MSArDQogeGVuL2luY2x1ZGUveGVuL3NjaGVkLmggICAgICAgfCAgIDMgKw0KIHhlbi9pbmNsdWRl L3hlbi92cGNpLmggICAgICAgIHwgICA2ICsrDQogMTAgZmlsZXMgY2hhbmdlZCwgMjIzIGluc2Vy dGlvbnMoKyksIDM3IGRlbGV0aW9ucygtKQ0KDQpkaWZmIC0tZ2l0IGEveGVuL2FyY2gveDg2L2h2 bS92bXNpLmMgYi94ZW4vYXJjaC94ODYvaHZtL3Ztc2kuYw0KaW5kZXggM2NkNDkyMzA2MC4uZjE4 ODQ1MGIxYiAxMDA2NDQNCi0tLSBhL3hlbi9hcmNoL3g4Ni9odm0vdm1zaS5jDQorKysgYi94ZW4v YXJjaC94ODYvaHZtL3Ztc2kuYw0KQEAgLTg5NSw2ICs4OTUsOSBAQCBpbnQgdnBjaV9tc2l4X2Fy Y2hfcHJpbnQoY29uc3Qgc3RydWN0IHZwY2lfbXNpeCAqbXNpeCkNCiB7DQogICAgIHVuc2lnbmVk IGludCBpOw0KIA0KKyAgICBBU1NFUlQocndfaXNfbG9ja2VkKCZtc2l4LT5wZGV2LT5kb21haW4t PnZwY2lfcndsb2NrKSk7DQorICAgIEFTU0VSVChwY2lkZXZzX2xvY2tlZCgpKTsNCisNCiAgICAg Zm9yICggaSA9IDA7IGkgPCBtc2l4LT5tYXhfZW50cmllczsgaSsrICkNCiAgICAgew0KICAgICAg ICAgY29uc3Qgc3RydWN0IHZwY2lfbXNpeF9lbnRyeSAqZW50cnkgPSAmbXNpeC0+ZW50cmllc1tp XTsNCkBAIC05MTMsNyArOTE2LDExIEBAIGludCB2cGNpX21zaXhfYXJjaF9wcmludChjb25zdCBz dHJ1Y3QgdnBjaV9tc2l4ICptc2l4KQ0KICAgICAgICAgICAgIHN0cnVjdCBwY2lfZGV2ICpwZGV2 ID0gbXNpeC0+cGRldjsNCiANCiAgICAgICAgICAgICBzcGluX3VubG9jaygmbXNpeC0+cGRldi0+ dnBjaS0+bG9jayk7DQorICAgICAgICAgICAgcGNpZGV2c191bmxvY2soKTsNCisgICAgICAgICAg ICByZWFkX3VubG9jaygmcGRldi0+ZG9tYWluLT52cGNpX3J3bG9jayk7DQogICAgICAgICAgICAg cHJvY2Vzc19wZW5kaW5nX3NvZnRpcnFzKCk7DQorICAgICAgICAgICAgcmVhZF9sb2NrKCZwZGV2 LT5kb21haW4tPnZwY2lfcndsb2NrKTsNCisgICAgICAgICAgICBwY2lkZXZzX2xvY2soKTsNCiAg ICAgICAgICAgICAvKiBOQjogd2UgYXNzdW1lIHRoYXQgcGRldiBjYW5ub3QgZ28gYXdheSBmb3Ig YW4gYWxpdmUgZG9tYWluLiAqLw0KICAgICAgICAgICAgIGlmICggIXBkZXYtPnZwY2kgfHwgIXNw aW5fdHJ5bG9jaygmcGRldi0+dnBjaS0+bG9jaykgKQ0KICAgICAgICAgICAgICAgICByZXR1cm4g LUVCVVNZOw0KZGlmZiAtLWdpdCBhL3hlbi9jb21tb24vZG9tYWluLmMgYi94ZW4vY29tbW9uL2Rv bWFpbi5jDQppbmRleCA2YTQ0MDU5MGZlLi5hNDY0MGFjYjYyIDEwMDY0NA0KLS0tIGEveGVuL2Nv bW1vbi9kb21haW4uYw0KKysrIGIveGVuL2NvbW1vbi9kb21haW4uYw0KQEAgLTYyMiw2ICs2MjIs OSBAQCBzdHJ1Y3QgZG9tYWluICpkb21haW5fY3JlYXRlKGRvbWlkX3QgZG9taWQsDQogDQogI2lm ZGVmIENPTkZJR19IQVNfUENJDQogICAgIElOSVRfTElTVF9IRUFEKCZkLT5wZGV2X2xpc3QpOw0K KyNpZmRlZiBDT05GSUdfSEFTX1ZQQ0kNCisgICAgcndsb2NrX2luaXQoJmQtPnZwY2lfcndsb2Nr KTsNCisjZW5kaWYNCiAjZW5kaWYNCiANCiAgICAgLyogQWxsIGVycm9yIHBhdGhzIGNhbiBkZXBl bmQgb24gdGhlIGFib3ZlIHNldHVwLiAqLw0KZGlmZiAtLWdpdCBhL3hlbi9kcml2ZXJzL3Bhc3N0 aHJvdWdoL3BjaS5jIGIveGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvcGNpLmMNCmluZGV4IDA3ZDE5 ODZkMzMuLjBhZmNiNTlhZjAgMTAwNjQ0DQotLS0gYS94ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC9w Y2kuYw0KKysrIGIveGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvcGNpLmMNCkBAIC01Nyw2ICs1Nywx MSBAQCB2b2lkIHBjaWRldnNfbG9jayh2b2lkKQ0KICAgICBzcGluX2xvY2tfcmVjdXJzaXZlKCZf cGNpZGV2c19sb2NrKTsNCiB9DQogDQoraW50IHBjaWRldnNfdHJ5bG9jayh2b2lkKQ0KK3sNCisg ICAgcmV0dXJuIHNwaW5fdHJ5bG9ja19yZWN1cnNpdmUoJl9wY2lkZXZzX2xvY2spOw0KK30NCisN CiB2b2lkIHBjaWRldnNfdW5sb2NrKHZvaWQpDQogew0KICAgICBzcGluX3VubG9ja19yZWN1cnNp dmUoJl9wY2lkZXZzX2xvY2spOw0KZGlmZiAtLWdpdCBhL3hlbi9kcml2ZXJzL3ZwY2kvaGVhZGVy LmMgYi94ZW4vZHJpdmVycy92cGNpL2hlYWRlci5jDQppbmRleCBlYzJlOTc4YTRlLi4yM2I1MjIz YWRmIDEwMDY0NA0KLS0tIGEveGVuL2RyaXZlcnMvdnBjaS9oZWFkZXIuYw0KKysrIGIveGVuL2Ry aXZlcnMvdnBjaS9oZWFkZXIuYw0KQEAgLTE1MiwxMiArMTUyLDE0IEBAIGJvb2wgdnBjaV9wcm9j ZXNzX3BlbmRpbmcoc3RydWN0IHZjcHUgKnYpDQogICAgICAgICBpZiAoIHJjID09IC1FUkVTVEFS VCApDQogICAgICAgICAgICAgcmV0dXJuIHRydWU7DQogDQorICAgICAgICByZWFkX2xvY2soJnYt PmRvbWFpbi0+dnBjaV9yd2xvY2spOw0KICAgICAgICAgc3Bpbl9sb2NrKCZ2LT52cGNpLnBkZXYt PnZwY2ktPmxvY2spOw0KICAgICAgICAgLyogRGlzYWJsZSBtZW1vcnkgZGVjb2RpbmcgdW5jb25k aXRpb25hbGx5IG9uIGZhaWx1cmUuICovDQogICAgICAgICBtb2RpZnlfZGVjb2Rpbmcodi0+dnBj aS5wZGV2LA0KICAgICAgICAgICAgICAgICAgICAgICAgIHJjID8gdi0+dnBjaS5jbWQgJiB+UENJ X0NPTU1BTkRfTUVNT1JZIDogdi0+dnBjaS5jbWQsDQogICAgICAgICAgICAgICAgICAgICAgICAg IXJjICYmIHYtPnZwY2kucm9tX29ubHkpOw0KICAgICAgICAgc3Bpbl91bmxvY2soJnYtPnZwY2ku cGRldi0+dnBjaS0+bG9jayk7DQorICAgICAgICByZWFkX3VubG9jaygmdi0+ZG9tYWluLT52cGNp X3J3bG9jayk7DQogDQogICAgICAgICByYW5nZXNldF9kZXN0cm95KHYtPnZwY2kubWVtKTsNCiAg ICAgICAgIHYtPnZwY2kubWVtID0gTlVMTDsNCkBAIC0xODEsOCArMTgzLDIwIEBAIHN0YXRpYyBp bnQgX19pbml0IGFwcGx5X21hcChzdHJ1Y3QgZG9tYWluICpkLCBjb25zdCBzdHJ1Y3QgcGNpX2Rl diAqcGRldiwNCiAgICAgc3RydWN0IG1hcF9kYXRhIGRhdGEgPSB7IC5kID0gZCwgLm1hcCA9IHRy dWUgfTsNCiAgICAgaW50IHJjOw0KIA0KKyAgICBBU1NFUlQocndfaXNfd3JpdGVfbG9ja2VkKCZk LT52cGNpX3J3bG9jaykpOw0KKw0KICAgICB3aGlsZSAoIChyYyA9IHJhbmdlc2V0X2NvbnN1bWVf cmFuZ2VzKG1lbSwgbWFwX3JhbmdlLCAmZGF0YSkpID09IC1FUkVTVEFSVCApDQorICAgIHsNCisg ICAgICAgIC8qDQorICAgICAgICAgKiBJdCdzIHNhZmUgdG8gZHJvcCBhbmQgcmVhY3F1aXJlIHRo ZSBsb2NrIGluIHRoaXMgY29udGV4dA0KKyAgICAgICAgICogd2l0aG91dCByaXNraW5nIHBkZXYg ZGlzYXBwZWFyaW5nIGJlY2F1c2UgZGV2aWNlcyBjYW5ub3QgYmUNCisgICAgICAgICAqIHJlbW92 ZWQgdW50aWwgdGhlIGluaXRpYWwgZG9tYWluIGhhcyBiZWVuIHN0YXJ0ZWQuDQorICAgICAgICAg Ki8NCisgICAgICAgIHdyaXRlX3VubG9jaygmZC0+dnBjaV9yd2xvY2spOw0KICAgICAgICAgcHJv Y2Vzc19wZW5kaW5nX3NvZnRpcnFzKCk7DQorICAgICAgICB3cml0ZV9sb2NrKCZkLT52cGNpX3J3 bG9jayk7DQorICAgIH0NCisNCiAgICAgcmFuZ2VzZXRfZGVzdHJveShtZW0pOw0KICAgICBpZiAo ICFyYyApDQogICAgICAgICBtb2RpZnlfZGVjb2RpbmcocGRldiwgY21kLCBmYWxzZSk7DQpAQCAt MjEzLDYgKzIyNyw3IEBAIHN0YXRpYyB2b2lkIGRlZmVyX21hcChzdHJ1Y3QgZG9tYWluICpkLCBz dHJ1Y3QgcGNpX2RldiAqcGRldiwNCiAgICAgcmFpc2Vfc29mdGlycShTQ0hFRFVMRV9TT0ZUSVJR KTsNCiB9DQogDQorLyogVGhpcyBtdXN0IGhvbGQgZG9tYWluJ3MgdnBjaV9yd2xvY2sgaW4gd3Jp dGUgbW9kZS4gKi8NCiBzdGF0aWMgaW50IG1vZGlmeV9iYXJzKGNvbnN0IHN0cnVjdCBwY2lfZGV2 ICpwZGV2LCB1aW50MTZfdCBjbWQsIGJvb2wgcm9tX29ubHkpDQogew0KICAgICBzdHJ1Y3QgdnBj aV9oZWFkZXIgKmhlYWRlciA9ICZwZGV2LT52cGNpLT5oZWFkZXI7DQpAQCAtMjg3LDYgKzMwMiw3 IEBAIHN0YXRpYyBpbnQgbW9kaWZ5X2JhcnMoY29uc3Qgc3RydWN0IHBjaV9kZXYgKnBkZXYsIHVp bnQxNl90IGNtZCwgYm9vbCByb21fb25seSkNCiAgICAgICogQ2hlY2sgZm9yIG92ZXJsYXBzIHdp dGggb3RoZXIgQkFScy4gTm90ZSB0aGF0IG9ubHkgQkFScyB0aGF0IGFyZQ0KICAgICAgKiBjdXJy ZW50bHkgbWFwcGVkIChlbmFibGVkKSBhcmUgY2hlY2tlZCBmb3Igb3ZlcmxhcHMuDQogICAgICAq Lw0KKyAgICBwY2lkZXZzX2xvY2soKTsNCiAgICAgZm9yX2VhY2hfcGRldiAoIHBkZXYtPmRvbWFp biwgdG1wICkNCiAgICAgew0KICAgICAgICAgaWYgKCB0bXAgPT0gcGRldiApDQpAQCAtMzI2LDEw ICszNDIsMTIgQEAgc3RhdGljIGludCBtb2RpZnlfYmFycyhjb25zdCBzdHJ1Y3QgcGNpX2RldiAq cGRldiwgdWludDE2X3QgY21kLCBib29sIHJvbV9vbmx5KQ0KICAgICAgICAgICAgICAgICBwcmlu dGsoWEVOTE9HX0dfV0FSTklORyAiRmFpbGVkIHRvIHJlbW92ZSBbJWx4LCAlbHhdOiAlZFxuIiwN CiAgICAgICAgICAgICAgICAgICAgICAgIHN0YXJ0LCBlbmQsIHJjKTsNCiAgICAgICAgICAgICAg ICAgcmFuZ2VzZXRfZGVzdHJveShtZW0pOw0KKyAgICAgICAgICAgICAgICBwY2lkZXZzX3VubG9j aygpOw0KICAgICAgICAgICAgICAgICByZXR1cm4gcmM7DQogICAgICAgICAgICAgfQ0KICAgICAg ICAgfQ0KICAgICB9DQorICAgIHBjaWRldnNfdW5sb2NrKCk7DQogDQogICAgIEFTU0VSVChkZXYp Ow0KIA0KQEAgLTQ4Miw2ICs1MDAsOCBAQCBzdGF0aWMgaW50IGNmX2NoZWNrIGluaXRfYmFycyhz dHJ1Y3QgcGNpX2RldiAqcGRldikNCiAgICAgc3RydWN0IHZwY2lfYmFyICpiYXJzID0gaGVhZGVy LT5iYXJzOw0KICAgICBpbnQgcmM7DQogDQorICAgIEFTU0VSVChyd19pc193cml0ZV9sb2NrZWQo JnBkZXYtPmRvbWFpbi0+dnBjaV9yd2xvY2spKTsNCisNCiAgICAgc3dpdGNoICggcGNpX2NvbmZf cmVhZDgocGRldi0+c2JkZiwgUENJX0hFQURFUl9UWVBFKSAmIDB4N2YgKQ0KICAgICB7DQogICAg IGNhc2UgUENJX0hFQURFUl9UWVBFX05PUk1BTDoNCkBAIC01NzAsNiArNTkwLDggQEAgc3RhdGlj IGludCBjZl9jaGVjayBpbml0X2JhcnMoc3RydWN0IHBjaV9kZXYgKnBkZXYpDQogICAgICAgICB9 DQogICAgIH0NCiANCisgICAgQVNTRVJUKCFoZWFkZXItPnJvbV9yZWcpOw0KKw0KICAgICAvKiBD aGVjayBleHBhbnNpb24gUk9NLiAqLw0KICAgICByYyA9IHBjaV9zaXplX21lbV9iYXIocGRldi0+ c2JkZiwgcm9tX3JlZywgJmFkZHIsICZzaXplLCBQQ0lfQkFSX1JPTSk7DQogICAgIGlmICggcmMg PiAwICYmIHNpemUgKQ0KQEAgLTU4NiwxMiArNjA4LDQyIEBAIHN0YXRpYyBpbnQgY2ZfY2hlY2sg aW5pdF9iYXJzKHN0cnVjdCBwY2lfZGV2ICpwZGV2KQ0KICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICA0LCByb20pOw0KICAgICAgICAgaWYgKCByYyApDQogICAgICAgICAgICAgcm9tLT50 eXBlID0gVlBDSV9CQVJfRU1QVFk7DQorDQorICAgICAgICBoZWFkZXItPnJvbV9yZWcgPSByb21f cmVnOw0KICAgICB9DQogDQogICAgIHJldHVybiAoY21kICYgUENJX0NPTU1BTkRfTUVNT1JZKSA/ IG1vZGlmeV9iYXJzKHBkZXYsIGNtZCwgZmFsc2UpIDogMDsNCiB9DQogUkVHSVNURVJfVlBDSV9J TklUKGluaXRfYmFycywgVlBDSV9QUklPUklUWV9NSURETEUpOw0KIA0KK3N0YXRpYyBib29sIG92 ZXJsYXAodW5zaWduZWQgaW50IHIxX29mZnNldCwgdW5zaWduZWQgaW50IHIxX3NpemUsDQorICAg ICAgICAgICAgICAgICAgICB1bnNpZ25lZCBpbnQgcjJfb2Zmc2V0LCB1bnNpZ25lZCBpbnQgcjJf c2l6ZSkNCit7DQorICAgIC8qIFJldHVybiB0cnVlIGlmIHRoZXJlIGlzIGFuIG92ZXJsYXAuICov DQorICAgIHJldHVybiByMV9vZmZzZXQgPCByMl9vZmZzZXQgKyByMl9zaXplICYmIHIyX29mZnNl dCA8IHIxX29mZnNldCArIHIxX3NpemU7DQorfQ0KKw0KK2Jvb2wgdnBjaV9oZWFkZXJfbmVlZF93 cml0ZV9sb2NrKGNvbnN0IHN0cnVjdCBwY2lfZGV2ICpwZGV2LA0KKyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIHVuc2lnbmVkIGludCBzdGFydCwgdW5zaWduZWQgaW50IHNpemUpDQor ew0KKyAgICAvKg0KKyAgICAgKiBXcml0aW5nIHRoZSBjb21tYW5kIHJlZ2lzdGVyIGFuZCBST00g QkFSIHJlZ2lzdGVyIG1heSB0cmlnZ2VyDQorICAgICAqIG1vZGlmeV9iYXJzIHRvIHJ1biwgd2hp Y2ggaW4gdHVybiBtYXkgYWNjZXNzIG11bHRpcGxlIHBkZXZzIHdoaWxlDQorICAgICAqIGNoZWNr aW5nIGZvciB0aGUgZXhpc3RpbmcgQkFSJ3Mgb3ZlcmxhcC4gVGhlIG92ZXJsYXBwaW5nIGNoZWNr LCBpZiBkb25lDQorICAgICAqIHVuZGVyIHRoZSByZWFkIGxvY2ssIHJlcXVpcmVzIHZwY2ktPmxv Y2sgdG8gYmUgYWNxdWlyZWQgb24gYm90aCBkZXZpY2VzDQorICAgICAqIGJlaW5nIGNvbXBhcmVk LCB3aGljaCBtYXkgcHJvZHVjZSBhIGRlYWRsb2NrLiBBdCB0aGUgc2FtZSB0aW1lIGl0IGlzIG5v dA0KKyAgICAgKiBwb3NzaWJsZSB0byB1cGdyYWRlIHJlYWQgbG9jayB0byB3cml0ZSBsb2NrIGlu IHN1Y2ggYSBjYXNlLg0KKyAgICAgKiBDaGVjayB3aGljaCByZWdpc3RlcnMgYXJlIGdvaW5nIHRv IGJlIHdyaXR0ZW4gYW5kIHJldHVybiB0cnVlIGlmIGxvY2sNCisgICAgICogbmVlZHMgdG8gYmUg YWNxdWlyZWQgaW4gd3JpdGUgbW9kZS4NCisgICAgICovDQorICAgIGlmICggb3ZlcmxhcChzdGFy dCwgc2l6ZSwgUENJX0NPTU1BTkQsIDIpIHx8DQorICAgICAgICAgKHBkZXYtPnZwY2ktPmhlYWRl ci5yb21fcmVnICYmDQorICAgICAgICAgIG92ZXJsYXAoc3RhcnQsIHNpemUsIHBkZXYtPnZwY2kt PmhlYWRlci5yb21fcmVnLCA0KSkgKQ0KKyAgICAgICAgcmV0dXJuIHRydWU7DQorDQorICAgIHJl dHVybiBmYWxzZTsNCit9DQorDQogLyoNCiAgKiBMb2NhbCB2YXJpYWJsZXM6DQogICogbW9kZTog Qw0KZGlmZiAtLWdpdCBhL3hlbi9kcml2ZXJzL3ZwY2kvbXNpLmMgYi94ZW4vZHJpdmVycy92cGNp L21zaS5jDQppbmRleCA4ZjJiNTllNjFhLi5lN2QxZjkxNmEwIDEwMDY0NA0KLS0tIGEveGVuL2Ry aXZlcnMvdnBjaS9tc2kuYw0KKysrIGIveGVuL2RyaXZlcnMvdnBjaS9tc2kuYw0KQEAgLTE5MCw2 ICsxOTAsOCBAQCBzdGF0aWMgaW50IGNmX2NoZWNrIGluaXRfbXNpKHN0cnVjdCBwY2lfZGV2ICpw ZGV2KQ0KICAgICB1aW50MTZfdCBjb250cm9sOw0KICAgICBpbnQgcmV0Ow0KIA0KKyAgICBBU1NF UlQocndfaXNfd3JpdGVfbG9ja2VkKCZwZGV2LT5kb21haW4tPnZwY2lfcndsb2NrKSk7DQorDQog ICAgIGlmICggIXBvcyApDQogICAgICAgICByZXR1cm4gMDsNCiANCkBAIC0yNjUsNyArMjY3LDcg QEAgUkVHSVNURVJfVlBDSV9JTklUKGluaXRfbXNpLCBWUENJX1BSSU9SSVRZX0xPVyk7DQogDQog dm9pZCB2cGNpX2R1bXBfbXNpKHZvaWQpDQogew0KLSAgICBjb25zdCBzdHJ1Y3QgZG9tYWluICpk Ow0KKyAgICBzdHJ1Y3QgZG9tYWluICpkOw0KIA0KICAgICByY3VfcmVhZF9sb2NrKCZkb21saXN0 X3JlYWRfbG9jayk7DQogICAgIGZvcl9lYWNoX2RvbWFpbiAoIGQgKQ0KQEAgLTI3Nyw2ICsyNzks MTUgQEAgdm9pZCB2cGNpX2R1bXBfbXNpKHZvaWQpDQogDQogICAgICAgICBwcmludGsoInZQQ0kg TVNJL01TSS1YIGQlZFxuIiwgZC0+ZG9tYWluX2lkKTsNCiANCisgICAgICAgIGlmICggIXJlYWRf dHJ5bG9jaygmZC0+dnBjaV9yd2xvY2spICkNCisgICAgICAgICAgICBjb250aW51ZTsNCisNCisg ICAgICAgIGlmICggIXBjaWRldnNfdHJ5bG9jaygpICkNCisgICAgICAgIHsNCisgICAgICAgICAg ICByZWFkX3VubG9jaygmZC0+dnBjaV9yd2xvY2spOw0KKyAgICAgICAgICAgIGNvbnRpbnVlOw0K KyAgICAgICAgfQ0KKw0KICAgICAgICAgZm9yX2VhY2hfcGRldiAoIGQsIHBkZXYgKQ0KICAgICAg ICAgew0KICAgICAgICAgICAgIGNvbnN0IHN0cnVjdCB2cGNpX21zaSAqbXNpOw0KQEAgLTMxOCwx NCArMzI5LDIyIEBAIHZvaWQgdnBjaV9kdW1wX21zaSh2b2lkKQ0KICAgICAgICAgICAgICAgICAg ICAgICogaG9sZGluZyB0aGUgbG9jay4NCiAgICAgICAgICAgICAgICAgICAgICAqLw0KICAgICAg ICAgICAgICAgICAgICAgcHJpbnRrKCJ1bmFibGUgdG8gcHJpbnQgYWxsIE1TSS1YIGVudHJpZXM6 ICVkXG4iLCByYyk7DQotICAgICAgICAgICAgICAgICAgICBwcm9jZXNzX3BlbmRpbmdfc29mdGly cXMoKTsNCi0gICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlOw0KKyAgICAgICAgICAgICAgICAg ICAgZ290byBwZGV2X2RvbmU7DQogICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICB9DQog DQogICAgICAgICAgICAgc3Bpbl91bmxvY2soJnBkZXYtPnZwY2ktPmxvY2spOw0KKyBwZGV2X2Rv bmU6DQorICAgICAgICAgICAgcGNpZGV2c191bmxvY2soKTsNCisgICAgICAgICAgICByZWFkX3Vu bG9jaygmZC0+dnBjaV9yd2xvY2spOw0KKw0KICAgICAgICAgICAgIHByb2Nlc3NfcGVuZGluZ19z b2Z0aXJxcygpOw0KKw0KKyAgICAgICAgICAgIHJlYWRfbG9jaygmZC0+dnBjaV9yd2xvY2spOw0K KyAgICAgICAgICAgIHBjaWRldnNfbG9jaygpOw0KICAgICAgICAgfQ0KKyAgICAgICAgcGNpZGV2 c191bmxvY2soKTsNCisgICAgICAgIHJlYWRfdW5sb2NrKCZkLT52cGNpX3J3bG9jayk7DQogICAg IH0NCiAgICAgcmN1X3JlYWRfdW5sb2NrKCZkb21saXN0X3JlYWRfbG9jayk7DQogfQ0KZGlmZiAt LWdpdCBhL3hlbi9kcml2ZXJzL3ZwY2kvbXNpeC5jIGIveGVuL2RyaXZlcnMvdnBjaS9tc2l4LmMN CmluZGV4IDI1YmRlNzc1ODYuLmI1YTdkZmRmOWMgMTAwNjQ0DQotLS0gYS94ZW4vZHJpdmVycy92 cGNpL21zaXguYw0KKysrIGIveGVuL2RyaXZlcnMvdnBjaS9tc2l4LmMNCkBAIC0xNDMsNiArMTQz LDcgQEAgc3RhdGljIHZvaWQgY2ZfY2hlY2sgY29udHJvbF93cml0ZSgNCiAgICAgICAgIHBjaV9j b25mX3dyaXRlMTYocGRldi0+c2JkZiwgcmVnLCB2YWwpOw0KIH0NCiANCisvKiBUaGlzIG11c3Qg aG9sZCBkb21haW4ncyB2cGNpX3J3bG9jayBpbiB3cml0ZSBtb2RlLiAqLw0KIHN0YXRpYyBzdHJ1 Y3QgdnBjaV9tc2l4ICptc2l4X2ZpbmQoY29uc3Qgc3RydWN0IGRvbWFpbiAqZCwgdW5zaWduZWQg bG9uZyBhZGRyKQ0KIHsNCiAgICAgc3RydWN0IHZwY2lfbXNpeCAqbXNpeDsNCkBAIC0xNjMsNyAr MTY0LDEzIEBAIHN0YXRpYyBzdHJ1Y3QgdnBjaV9tc2l4ICptc2l4X2ZpbmQoY29uc3Qgc3RydWN0 IGRvbWFpbiAqZCwgdW5zaWduZWQgbG9uZyBhZGRyKQ0KIA0KIHN0YXRpYyBpbnQgY2ZfY2hlY2sg bXNpeF9hY2NlcHQoc3RydWN0IHZjcHUgKnYsIHVuc2lnbmVkIGxvbmcgYWRkcikNCiB7DQotICAg IHJldHVybiAhIW1zaXhfZmluZCh2LT5kb21haW4sIGFkZHIpOw0KKyAgICBpbnQgcmM7DQorDQor ICAgIHJlYWRfbG9jaygmdi0+ZG9tYWluLT52cGNpX3J3bG9jayk7DQorICAgIHJjID0gISFtc2l4 X2ZpbmQodi0+ZG9tYWluLCBhZGRyKTsNCisgICAgcmVhZF91bmxvY2soJnYtPmRvbWFpbi0+dnBj aV9yd2xvY2spOw0KKw0KKyAgICByZXR1cm4gcmM7DQogfQ0KIA0KIHN0YXRpYyBib29sIGFjY2Vz c19hbGxvd2VkKGNvbnN0IHN0cnVjdCBwY2lfZGV2ICpwZGV2LCB1bnNpZ25lZCBsb25nIGFkZHIs DQpAQCAtMzU4LDIxICszNjUsMzQgQEAgc3RhdGljIGludCBhZGphY2VudF9yZWFkKGNvbnN0IHN0 cnVjdCBkb21haW4gKmQsIGNvbnN0IHN0cnVjdCB2cGNpX21zaXggKm1zaXgsDQogc3RhdGljIGlu dCBjZl9jaGVjayBtc2l4X3JlYWQoDQogICAgIHN0cnVjdCB2Y3B1ICp2LCB1bnNpZ25lZCBsb25n IGFkZHIsIHVuc2lnbmVkIGludCBsZW4sIHVuc2lnbmVkIGxvbmcgKmRhdGEpDQogew0KLSAgICBj b25zdCBzdHJ1Y3QgZG9tYWluICpkID0gdi0+ZG9tYWluOw0KLSAgICBzdHJ1Y3QgdnBjaV9tc2l4 ICptc2l4ID0gbXNpeF9maW5kKGQsIGFkZHIpOw0KKyAgICBzdHJ1Y3QgZG9tYWluICpkID0gdi0+ ZG9tYWluOw0KKyAgICBzdHJ1Y3QgdnBjaV9tc2l4ICptc2l4Ow0KICAgICBjb25zdCBzdHJ1Y3Qg dnBjaV9tc2l4X2VudHJ5ICplbnRyeTsNCiAgICAgdW5zaWduZWQgaW50IG9mZnNldDsNCiANCiAg ICAgKmRhdGEgPSB+MHVsOw0KIA0KKyAgICByZWFkX2xvY2soJmQtPnZwY2lfcndsb2NrKTsNCisN CisgICAgbXNpeCA9IG1zaXhfZmluZChkLCBhZGRyKTsNCiAgICAgaWYgKCAhbXNpeCApDQorICAg IHsNCisgICAgICAgIHJlYWRfdW5sb2NrKCZkLT52cGNpX3J3bG9jayk7DQogICAgICAgICByZXR1 cm4gWDg2RU1VTF9SRVRSWTsNCisgICAgfQ0KIA0KICAgICBpZiAoIGFkamFjZW50X2hhbmRsZSht c2l4LCBhZGRyKSApDQotICAgICAgICByZXR1cm4gYWRqYWNlbnRfcmVhZChkLCBtc2l4LCBhZGRy LCBsZW4sIGRhdGEpOw0KKyAgICB7DQorICAgICAgICBpbnQgcmMgPSBhZGphY2VudF9yZWFkKGQs IG1zaXgsIGFkZHIsIGxlbiwgZGF0YSk7DQorICAgICAgICByZWFkX3VubG9jaygmZC0+dnBjaV9y d2xvY2spOw0KKyAgICAgICAgcmV0dXJuIHJjOw0KKyAgICB9DQogDQogICAgIGlmICggIWFjY2Vz c19hbGxvd2VkKG1zaXgtPnBkZXYsIGFkZHIsIGxlbikgKQ0KKyAgICB7DQorICAgICAgICByZWFk X3VubG9jaygmZC0+dnBjaV9yd2xvY2spOw0KICAgICAgICAgcmV0dXJuIFg4NkVNVUxfT0tBWTsN CisgICAgfQ0KIA0KICAgICBzcGluX2xvY2soJm1zaXgtPnBkZXYtPnZwY2ktPmxvY2spOw0KICAg ICBlbnRyeSA9IGdldF9lbnRyeShtc2l4LCBhZGRyKTsNCkBAIC00MDQsNiArNDI0LDcgQEAgc3Rh dGljIGludCBjZl9jaGVjayBtc2l4X3JlYWQoDQogICAgICAgICBicmVhazsNCiAgICAgfQ0KICAg ICBzcGluX3VubG9jaygmbXNpeC0+cGRldi0+dnBjaS0+bG9jayk7DQorICAgIHJlYWRfdW5sb2Nr KCZkLT52cGNpX3J3bG9jayk7DQogDQogICAgIHJldHVybiBYODZFTVVMX09LQVk7DQogfQ0KQEAg LTQ5MSwxOSArNTEyLDMyIEBAIHN0YXRpYyBpbnQgYWRqYWNlbnRfd3JpdGUoY29uc3Qgc3RydWN0 IGRvbWFpbiAqZCwgY29uc3Qgc3RydWN0IHZwY2lfbXNpeCAqbXNpeCwNCiBzdGF0aWMgaW50IGNm X2NoZWNrIG1zaXhfd3JpdGUoDQogICAgIHN0cnVjdCB2Y3B1ICp2LCB1bnNpZ25lZCBsb25nIGFk ZHIsIHVuc2lnbmVkIGludCBsZW4sIHVuc2lnbmVkIGxvbmcgZGF0YSkNCiB7DQotICAgIGNvbnN0 IHN0cnVjdCBkb21haW4gKmQgPSB2LT5kb21haW47DQotICAgIHN0cnVjdCB2cGNpX21zaXggKm1z aXggPSBtc2l4X2ZpbmQoZCwgYWRkcik7DQorICAgIHN0cnVjdCBkb21haW4gKmQgPSB2LT5kb21h aW47DQorICAgIHN0cnVjdCB2cGNpX21zaXggKm1zaXg7DQogICAgIHN0cnVjdCB2cGNpX21zaXhf ZW50cnkgKmVudHJ5Ow0KICAgICB1bnNpZ25lZCBpbnQgb2Zmc2V0Ow0KIA0KKyAgICByZWFkX2xv Y2soJmQtPnZwY2lfcndsb2NrKTsNCisNCisgICAgbXNpeCA9IG1zaXhfZmluZChkLCBhZGRyKTsN CiAgICAgaWYgKCAhbXNpeCApDQorICAgIHsNCisgICAgICAgIHJlYWRfdW5sb2NrKCZkLT52cGNp X3J3bG9jayk7DQogICAgICAgICByZXR1cm4gWDg2RU1VTF9SRVRSWTsNCisgICAgfQ0KIA0KICAg ICBpZiAoIGFkamFjZW50X2hhbmRsZShtc2l4LCBhZGRyKSApDQotICAgICAgICByZXR1cm4gYWRq YWNlbnRfd3JpdGUoZCwgbXNpeCwgYWRkciwgbGVuLCBkYXRhKTsNCisgICAgew0KKyAgICAgICAg aW50IHJjID0gYWRqYWNlbnRfd3JpdGUoZCwgbXNpeCwgYWRkciwgbGVuLCBkYXRhKTsNCisgICAg ICAgIHJlYWRfdW5sb2NrKCZkLT52cGNpX3J3bG9jayk7DQorICAgICAgICByZXR1cm4gcmM7DQor ICAgIH0NCiANCiAgICAgaWYgKCAhYWNjZXNzX2FsbG93ZWQobXNpeC0+cGRldiwgYWRkciwgbGVu KSApDQorICAgIHsNCisgICAgICAgIHJlYWRfdW5sb2NrKCZkLT52cGNpX3J3bG9jayk7DQogICAg ICAgICByZXR1cm4gWDg2RU1VTF9PS0FZOw0KKyAgICB9DQogDQogICAgIHNwaW5fbG9jaygmbXNp eC0+cGRldi0+dnBjaS0+bG9jayk7DQogICAgIGVudHJ5ID0gZ2V0X2VudHJ5KG1zaXgsIGFkZHIp Ow0KQEAgLTU3OSw2ICs2MTMsNyBAQCBzdGF0aWMgaW50IGNmX2NoZWNrIG1zaXhfd3JpdGUoDQog ICAgICAgICBicmVhazsNCiAgICAgfQ0KICAgICBzcGluX3VubG9jaygmbXNpeC0+cGRldi0+dnBj aS0+bG9jayk7DQorICAgIHJlYWRfdW5sb2NrKCZkLT52cGNpX3J3bG9jayk7DQogDQogICAgIHJl dHVybiBYODZFTVVMX09LQVk7DQogfQ0KQEAgLTY2NSw2ICs3MDAsOCBAQCBzdGF0aWMgaW50IGNm X2NoZWNrIGluaXRfbXNpeChzdHJ1Y3QgcGNpX2RldiAqcGRldikNCiAgICAgc3RydWN0IHZwY2lf bXNpeCAqbXNpeDsNCiAgICAgaW50IHJjOw0KIA0KKyAgICBBU1NFUlQocndfaXNfd3JpdGVfbG9j a2VkKCZwZGV2LT5kb21haW4tPnZwY2lfcndsb2NrKSk7DQorDQogICAgIG1zaXhfb2Zmc2V0ID0g cGNpX2ZpbmRfY2FwX29mZnNldChwZGV2LT5zZWcsIHBkZXYtPmJ1cywgc2xvdCwgZnVuYywNCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFBDSV9DQVBfSURfTVNJWCk7DQog ICAgIGlmICggIW1zaXhfb2Zmc2V0ICkNCmRpZmYgLS1naXQgYS94ZW4vZHJpdmVycy92cGNpL3Zw Y2kuYyBiL3hlbi9kcml2ZXJzL3ZwY2kvdnBjaS5jDQppbmRleCA2NTI4MDdhNGE0Li4xMjcwMTc0 ZTc4IDEwMDY0NA0KLS0tIGEveGVuL2RyaXZlcnMvdnBjaS92cGNpLmMNCisrKyBiL3hlbi9kcml2 ZXJzL3ZwY2kvdnBjaS5jDQpAQCAtMzgsMjAgKzM4LDMyIEBAIGV4dGVybiB2cGNpX3JlZ2lzdGVy X2luaXRfdCAqY29uc3QgX19lbmRfdnBjaV9hcnJheVtdOw0KIA0KIHZvaWQgdnBjaV9yZW1vdmVf ZGV2aWNlKHN0cnVjdCBwY2lfZGV2ICpwZGV2KQ0KIHsNCi0gICAgaWYgKCAhaGFzX3ZwY2kocGRl di0+ZG9tYWluKSB8fCAhcGRldi0+dnBjaSApDQorICAgIHN0cnVjdCB2cGNpICp2cGNpOw0KKw0K KyAgICBpZiAoICFoYXNfdnBjaShwZGV2LT5kb21haW4pICkNCiAgICAgICAgIHJldHVybjsNCiAN Ci0gICAgc3Bpbl9sb2NrKCZwZGV2LT52cGNpLT5sb2NrKTsNCisgICAgd3JpdGVfbG9jaygmcGRl di0+ZG9tYWluLT52cGNpX3J3bG9jayk7DQorICAgIGlmICggIXBkZXYtPnZwY2kgKQ0KKyAgICB7 DQorICAgICAgICB3cml0ZV91bmxvY2soJnBkZXYtPmRvbWFpbi0+dnBjaV9yd2xvY2spOw0KKyAg ICAgICAgcmV0dXJuOw0KKyAgICB9DQorDQorICAgIHZwY2kgPSBwZGV2LT52cGNpOw0KKyAgICBw ZGV2LT52cGNpID0gTlVMTDsNCisgICAgd3JpdGVfdW5sb2NrKCZwZGV2LT5kb21haW4tPnZwY2lf cndsb2NrKTsNCisNCiAgICAgd2hpbGUgKCAhbGlzdF9lbXB0eSgmcGRldi0+dnBjaS0+aGFuZGxl cnMpICkNCiAgICAgew0KLSAgICAgICAgc3RydWN0IHZwY2lfcmVnaXN0ZXIgKnIgPSBsaXN0X2Zp cnN0X2VudHJ5KCZwZGV2LT52cGNpLT5oYW5kbGVycywNCisgICAgICAgIHN0cnVjdCB2cGNpX3Jl Z2lzdGVyICpyID0gbGlzdF9maXJzdF9lbnRyeSgmdnBjaS0+aGFuZGxlcnMsDQogICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RydWN0IHZwY2lfcmVn aXN0ZXIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgbm9kZSk7DQogDQogICAgICAgICBsaXN0X2RlbCgmci0+bm9kZSk7DQogICAgICAgICB4ZnJl ZShyKTsNCiAgICAgfQ0KLSAgICBzcGluX3VubG9jaygmcGRldi0+dnBjaS0+bG9jayk7DQorDQog ICAgIGlmICggcGRldi0+dnBjaS0+bXNpeCApDQogICAgIHsNCiAgICAgICAgIHVuc2lnbmVkIGlu dCBpOw0KQEAgLTYxLDI5ICs3MywzMyBAQCB2b2lkIHZwY2lfcmVtb3ZlX2RldmljZShzdHJ1Y3Qg cGNpX2RldiAqcGRldikNCiAgICAgICAgICAgICBpZiAoIHBkZXYtPnZwY2ktPm1zaXgtPnRhYmxl W2ldICkNCiAgICAgICAgICAgICAgICAgaW91bm1hcChwZGV2LT52cGNpLT5tc2l4LT50YWJsZVtp XSk7DQogICAgIH0NCi0gICAgeGZyZWUocGRldi0+dnBjaS0+bXNpeCk7DQotICAgIHhmcmVlKHBk ZXYtPnZwY2ktPm1zaSk7DQotICAgIHhmcmVlKHBkZXYtPnZwY2kpOw0KLSAgICBwZGV2LT52cGNp ID0gTlVMTDsNCisgICAgeGZyZWUodnBjaS0+bXNpeCk7DQorICAgIHhmcmVlKHZwY2ktPm1zaSk7 DQorICAgIHhmcmVlKHZwY2kpOw0KIH0NCiANCiBpbnQgdnBjaV9hZGRfaGFuZGxlcnMoc3RydWN0 IHBjaV9kZXYgKnBkZXYpDQogew0KKyAgICBzdHJ1Y3QgdnBjaSAqdnBjaTsNCiAgICAgdW5zaWdu ZWQgaW50IGk7DQogICAgIGludCByYyA9IDA7DQogDQogICAgIGlmICggIWhhc192cGNpKHBkZXYt PmRvbWFpbikgKQ0KICAgICAgICAgcmV0dXJuIDA7DQogDQorICAgIHZwY2kgPSB4emFsbG9jKHN0 cnVjdCB2cGNpKTsNCisgICAgaWYgKCAhdnBjaSApDQorICAgICAgICByZXR1cm4gLUVOT01FTTsN CisNCisgICAgSU5JVF9MSVNUX0hFQUQoJnZwY2ktPmhhbmRsZXJzKTsNCisgICAgc3Bpbl9sb2Nr X2luaXQoJnZwY2ktPmxvY2spOw0KKw0KKyAgICB3cml0ZV9sb2NrKCZwZGV2LT5kb21haW4tPnZw Y2lfcndsb2NrKTsNCisNCiAgICAgLyogV2Ugc2hvdWxkIG5vdCBnZXQgaGVyZSB0d2ljZSBmb3Ig dGhlIHNhbWUgZGV2aWNlLiAqLw0KICAgICBBU1NFUlQoIXBkZXYtPnZwY2kpOw0KIA0KLSAgICBw ZGV2LT52cGNpID0geHphbGxvYyhzdHJ1Y3QgdnBjaSk7DQotICAgIGlmICggIXBkZXYtPnZwY2kg KQ0KLSAgICAgICAgcmV0dXJuIC1FTk9NRU07DQotDQotICAgIElOSVRfTElTVF9IRUFEKCZwZGV2 LT52cGNpLT5oYW5kbGVycyk7DQotICAgIHNwaW5fbG9ja19pbml0KCZwZGV2LT52cGNpLT5sb2Nr KTsNCisgICAgcGRldi0+dnBjaSA9IHZwY2k7DQogDQogICAgIGZvciAoIGkgPSAwOyBpIDwgTlVN X1ZQQ0lfSU5JVDsgaSsrICkNCiAgICAgew0KQEAgLTkxLDYgKzEwNyw3IEBAIGludCB2cGNpX2Fk ZF9oYW5kbGVycyhzdHJ1Y3QgcGNpX2RldiAqcGRldikNCiAgICAgICAgIGlmICggcmMgKQ0KICAg ICAgICAgICAgIGJyZWFrOw0KICAgICB9DQorICAgIHdyaXRlX3VubG9jaygmcGRldi0+ZG9tYWlu LT52cGNpX3J3bG9jayk7DQogDQogICAgIGlmICggcmMgKQ0KICAgICAgICAgdnBjaV9yZW1vdmVf ZGV2aWNlKHBkZXYpOw0KQEAgLTEzOSw2ICsxNTYsNyBAQCB1aW50MzJfdCBjZl9jaGVjayB2cGNp X2h3X3JlYWQzMigNCiAgICAgcmV0dXJuIHBjaV9jb25mX3JlYWQzMihwZGV2LT5zYmRmLCByZWcp Ow0KIH0NCiANCisvKiBUaGlzIG11c3QgaG9sZCBkb21haW4ncyB2cGNpX3J3bG9jayBpbiB3cml0 ZSBtb2RlLiAqLw0KIGludCB2cGNpX2FkZF9yZWdpc3RlcihzdHJ1Y3QgdnBjaSAqdnBjaSwgdnBj aV9yZWFkX3QgKnJlYWRfaGFuZGxlciwNCiAgICAgICAgICAgICAgICAgICAgICAgdnBjaV93cml0 ZV90ICp3cml0ZV9oYW5kbGVyLCB1bnNpZ25lZCBpbnQgb2Zmc2V0LA0KICAgICAgICAgICAgICAg ICAgICAgICB1bnNpZ25lZCBpbnQgc2l6ZSwgdm9pZCAqZGF0YSkNCkBAIC0xNjIsOCArMTgwLDYg QEAgaW50IHZwY2lfYWRkX3JlZ2lzdGVyKHN0cnVjdCB2cGNpICp2cGNpLCB2cGNpX3JlYWRfdCAq cmVhZF9oYW5kbGVyLA0KICAgICByLT5vZmZzZXQgPSBvZmZzZXQ7DQogICAgIHItPnByaXZhdGUg PSBkYXRhOw0KIA0KLSAgICBzcGluX2xvY2soJnZwY2ktPmxvY2spOw0KLQ0KICAgICAvKiBUaGUg bGlzdCBvZiBoYW5kbGVycyBtdXN0IGJlIGtlcHQgc29ydGVkIGF0IGFsbCB0aW1lcy4gKi8NCiAg ICAgbGlzdF9mb3JfZWFjaCAoIHByZXYsICZ2cGNpLT5oYW5kbGVycyApDQogICAgIHsNCkBAIC0x NzUsMjUgKzE5MSwyMyBAQCBpbnQgdnBjaV9hZGRfcmVnaXN0ZXIoc3RydWN0IHZwY2kgKnZwY2ks IHZwY2lfcmVhZF90ICpyZWFkX2hhbmRsZXIsDQogICAgICAgICAgICAgYnJlYWs7DQogICAgICAg ICBpZiAoIGNtcCA9PSAwICkNCiAgICAgICAgIHsNCi0gICAgICAgICAgICBzcGluX3VubG9jaygm dnBjaS0+bG9jayk7DQogICAgICAgICAgICAgeGZyZWUocik7DQogICAgICAgICAgICAgcmV0dXJu IC1FRVhJU1Q7DQogICAgICAgICB9DQogICAgIH0NCiANCiAgICAgbGlzdF9hZGRfdGFpbCgmci0+ bm9kZSwgcHJldik7DQotICAgIHNwaW5fdW5sb2NrKCZ2cGNpLT5sb2NrKTsNCiANCiAgICAgcmV0 dXJuIDA7DQogfQ0KIA0KKy8qIFRoaXMgbXVzdCBob2xkIGRvbWFpbidzIHZwY2lfcndsb2NrIGlu IHdyaXRlIG1vZGUuICovDQogaW50IHZwY2lfcmVtb3ZlX3JlZ2lzdGVyKHN0cnVjdCB2cGNpICp2 cGNpLCB1bnNpZ25lZCBpbnQgb2Zmc2V0LA0KICAgICAgICAgICAgICAgICAgICAgICAgICB1bnNp Z25lZCBpbnQgc2l6ZSkNCiB7DQogICAgIGNvbnN0IHN0cnVjdCB2cGNpX3JlZ2lzdGVyIHIgPSB7 IC5vZmZzZXQgPSBvZmZzZXQsIC5zaXplID0gc2l6ZSB9Ow0KICAgICBzdHJ1Y3QgdnBjaV9yZWdp c3RlciAqcm07DQogDQotICAgIHNwaW5fbG9jaygmdnBjaS0+bG9jayk7DQogICAgIGxpc3RfZm9y X2VhY2hfZW50cnkgKCBybSwgJnZwY2ktPmhhbmRsZXJzLCBub2RlICkNCiAgICAgew0KICAgICAg ICAgaW50IGNtcCA9IHZwY2lfcmVnaXN0ZXJfY21wKCZyLCBybSk7DQpAQCAtMjA1LDE0ICsyMTks MTIgQEAgaW50IHZwY2lfcmVtb3ZlX3JlZ2lzdGVyKHN0cnVjdCB2cGNpICp2cGNpLCB1bnNpZ25l ZCBpbnQgb2Zmc2V0LA0KICAgICAgICAgaWYgKCAhY21wICYmIHJtLT5vZmZzZXQgPT0gb2Zmc2V0 ICYmIHJtLT5zaXplID09IHNpemUgKQ0KICAgICAgICAgew0KICAgICAgICAgICAgIGxpc3RfZGVs KCZybS0+bm9kZSk7DQotICAgICAgICAgICAgc3Bpbl91bmxvY2soJnZwY2ktPmxvY2spOw0KICAg ICAgICAgICAgIHhmcmVlKHJtKTsNCiAgICAgICAgICAgICByZXR1cm4gMDsNCiAgICAgICAgIH0N CiAgICAgICAgIGlmICggY21wIDw9IDAgKQ0KICAgICAgICAgICAgIGJyZWFrOw0KICAgICB9DQot ICAgIHNwaW5fdW5sb2NrKCZ2cGNpLT5sb2NrKTsNCiANCiAgICAgcmV0dXJuIC1FTk9FTlQ7DQog fQ0KQEAgLTMyMCw3ICszMzIsNyBAQCBzdGF0aWMgdWludDMyX3QgbWVyZ2VfcmVzdWx0KHVpbnQz Ml90IGRhdGEsIHVpbnQzMl90IG5ldywgdW5zaWduZWQgaW50IHNpemUsDQogDQogdWludDMyX3Qg dnBjaV9yZWFkKHBjaV9zYmRmX3Qgc2JkZiwgdW5zaWduZWQgaW50IHJlZywgdW5zaWduZWQgaW50 IHNpemUpDQogew0KLSAgICBjb25zdCBzdHJ1Y3QgZG9tYWluICpkID0gY3VycmVudC0+ZG9tYWlu Ow0KKyAgICBzdHJ1Y3QgZG9tYWluICpkID0gY3VycmVudC0+ZG9tYWluOw0KICAgICBjb25zdCBz dHJ1Y3QgcGNpX2RldiAqcGRldjsNCiAgICAgY29uc3Qgc3RydWN0IHZwY2lfcmVnaXN0ZXIgKnI7 DQogICAgIHVuc2lnbmVkIGludCBkYXRhX29mZnNldCA9IDA7DQpAQCAtMzMzLDEwICszNDUsMTgg QEAgdWludDMyX3QgdnBjaV9yZWFkKHBjaV9zYmRmX3Qgc2JkZiwgdW5zaWduZWQgaW50IHJlZywg dW5zaWduZWQgaW50IHNpemUpDQogICAgIH0NCiANCiAgICAgLyogRmluZCB0aGUgUENJIGRldiBt YXRjaGluZyB0aGUgYWRkcmVzcy4gKi8NCisgICAgcGNpZGV2c19sb2NrKCk7DQogICAgIHBkZXYg PSBwY2lfZ2V0X3BkZXYoZCwgc2JkZik7DQotICAgIGlmICggIXBkZXYgfHwgIXBkZXYtPnZwY2kg KQ0KKyAgICBwY2lkZXZzX3VubG9jaygpOw0KKyAgICBpZiAoICFwZGV2ICkNCiAgICAgICAgIHJl dHVybiB2cGNpX3JlYWRfaHcoc2JkZiwgcmVnLCBzaXplKTsNCiANCisgICAgcmVhZF9sb2NrKCZk LT52cGNpX3J3bG9jayk7DQorICAgIGlmICggIXBkZXYtPnZwY2kgKQ0KKyAgICB7DQorICAgICAg ICByZWFkX3VubG9jaygmZC0+dnBjaV9yd2xvY2spOw0KKyAgICAgICAgcmV0dXJuIHZwY2lfcmVh ZF9odyhzYmRmLCByZWcsIHNpemUpOw0KKyAgICB9DQogICAgIHNwaW5fbG9jaygmcGRldi0+dnBj aS0+bG9jayk7DQogDQogICAgIC8qIFJlYWQgZnJvbSB0aGUgaGFyZHdhcmUgb3IgdGhlIGVtdWxh dGVkIHJlZ2lzdGVyIGhhbmRsZXJzLiAqLw0KQEAgLTM4MSw2ICs0MDEsNyBAQCB1aW50MzJfdCB2 cGNpX3JlYWQocGNpX3NiZGZfdCBzYmRmLCB1bnNpZ25lZCBpbnQgcmVnLCB1bnNpZ25lZCBpbnQg c2l6ZSkNCiAgICAgICAgIEFTU0VSVChkYXRhX29mZnNldCA8IHNpemUpOw0KICAgICB9DQogICAg IHNwaW5fdW5sb2NrKCZwZGV2LT52cGNpLT5sb2NrKTsNCisgICAgcmVhZF91bmxvY2soJmQtPnZw Y2lfcndsb2NrKTsNCiANCiAgICAgaWYgKCBkYXRhX29mZnNldCA8IHNpemUgKQ0KICAgICB7DQpA QCAtNDIzLDExICs0NDQsMTIgQEAgc3RhdGljIHZvaWQgdnBjaV93cml0ZV9oZWxwZXIoY29uc3Qg c3RydWN0IHBjaV9kZXYgKnBkZXYsDQogdm9pZCB2cGNpX3dyaXRlKHBjaV9zYmRmX3Qgc2JkZiwg dW5zaWduZWQgaW50IHJlZywgdW5zaWduZWQgaW50IHNpemUsDQogICAgICAgICAgICAgICAgIHVp bnQzMl90IGRhdGEpDQogew0KLSAgICBjb25zdCBzdHJ1Y3QgZG9tYWluICpkID0gY3VycmVudC0+ ZG9tYWluOw0KKyAgICBzdHJ1Y3QgZG9tYWluICpkID0gY3VycmVudC0+ZG9tYWluOw0KICAgICBj b25zdCBzdHJ1Y3QgcGNpX2RldiAqcGRldjsNCiAgICAgY29uc3Qgc3RydWN0IHZwY2lfcmVnaXN0 ZXIgKnI7DQogICAgIHVuc2lnbmVkIGludCBkYXRhX29mZnNldCA9IDA7DQogICAgIGNvbnN0IHVu c2lnbmVkIGxvbmcgKnJvX21hcCA9IHBjaV9nZXRfcm9fbWFwKHNiZGYuc2VnKTsNCisgICAgYm9v bCB3cml0ZV9sb2NrZWQgPSBmYWxzZTsNCiANCiAgICAgaWYgKCAhc2l6ZSApDQogICAgIHsNCkBA IC00NDMsMTQgKzQ2NSwzOCBAQCB2b2lkIHZwY2lfd3JpdGUocGNpX3NiZGZfdCBzYmRmLCB1bnNp Z25lZCBpbnQgcmVnLCB1bnNpZ25lZCBpbnQgc2l6ZSwNCiAgICAgICogRmluZCB0aGUgUENJIGRl diBtYXRjaGluZyB0aGUgYWRkcmVzcy4NCiAgICAgICogUGFzc3Rocm91Z2ggZXZlcnl0aGluZyB0 aGF0J3Mgbm90IHRyYXBwZWQuDQogICAgICAqLw0KKyAgICBwY2lkZXZzX2xvY2soKTsNCiAgICAg cGRldiA9IHBjaV9nZXRfcGRldihkLCBzYmRmKTsNCi0gICAgaWYgKCAhcGRldiB8fCAhcGRldi0+ dnBjaSApDQorICAgIHBjaWRldnNfdW5sb2NrKCk7DQorICAgIGlmICggIXBkZXYgKQ0KICAgICB7 DQogICAgICAgICB2cGNpX3dyaXRlX2h3KHNiZGYsIHJlZywgc2l6ZSwgZGF0YSk7DQogICAgICAg ICByZXR1cm47DQogICAgIH0NCiANCi0gICAgc3Bpbl9sb2NrKCZwZGV2LT52cGNpLT5sb2NrKTsN CisgICAgaWYgKCB2cGNpX2hlYWRlcl9uZWVkX3dyaXRlX2xvY2socGRldiwgcmVnLCBzaXplKSAp DQorICAgIHsNCisgICAgICAgIC8qIEdhaW4gZXhjbHVzaXZlIGFjY2VzcyB0byBhbGwgb2YgdGhl IGRvbWFpbiBwZGV2cyB2cGNpLiAqLw0KKyAgICAgICAgd3JpdGVfbG9jaygmZC0+dnBjaV9yd2xv Y2spOw0KKyAgICAgICAgaWYgKCAhcGRldi0+dnBjaSApDQorICAgICAgICB7DQorICAgICAgICAg ICAgd3JpdGVfdW5sb2NrKCZkLT52cGNpX3J3bG9jayk7DQorICAgICAgICAgICAgdnBjaV93cml0 ZV9odyhzYmRmLCByZWcsIHNpemUsIGRhdGEpOw0KKyAgICAgICAgICAgIHJldHVybjsNCisgICAg ICAgIH0NCisgICAgICAgIHdyaXRlX2xvY2tlZCA9IHRydWU7DQorICAgIH0NCisgICAgZWxzZQ0K KyAgICB7DQorICAgICAgICByZWFkX2xvY2soJmQtPnZwY2lfcndsb2NrKTsNCisgICAgICAgIGlm ICggIXBkZXYtPnZwY2kgKQ0KKyAgICAgICAgew0KKyAgICAgICAgICAgIHJlYWRfdW5sb2NrKCZk LT52cGNpX3J3bG9jayk7DQorICAgICAgICAgICAgdnBjaV93cml0ZV9odyhzYmRmLCByZWcsIHNp emUsIGRhdGEpOw0KKyAgICAgICAgICAgIHJldHVybjsNCisgICAgICAgIH0NCisgICAgICAgIHNw aW5fbG9jaygmcGRldi0+dnBjaS0+bG9jayk7DQorICAgIH0NCiANCiAgICAgLyogV3JpdGUgdGhl IHZhbHVlIHRvIHRoZSBoYXJkd2FyZSBvciBlbXVsYXRlZCByZWdpc3RlcnMuICovDQogICAgIGxp c3RfZm9yX2VhY2hfZW50cnkgKCByLCAmcGRldi0+dnBjaS0+aGFuZGxlcnMsIG5vZGUgKQ0KQEAg LTQ4NSw3ICs1MzEsMTQgQEAgdm9pZCB2cGNpX3dyaXRlKHBjaV9zYmRmX3Qgc2JkZiwgdW5zaWdu ZWQgaW50IHJlZywgdW5zaWduZWQgaW50IHNpemUsDQogICAgICAgICAgICAgYnJlYWs7DQogICAg ICAgICBBU1NFUlQoZGF0YV9vZmZzZXQgPCBzaXplKTsNCiAgICAgfQ0KLSAgICBzcGluX3VubG9j aygmcGRldi0+dnBjaS0+bG9jayk7DQorDQorICAgIGlmICggd3JpdGVfbG9ja2VkICkNCisgICAg ICAgIHdyaXRlX3VubG9jaygmZC0+dnBjaV9yd2xvY2spOw0KKyAgICBlbHNlDQorICAgIHsNCisg ICAgICAgIHNwaW5fdW5sb2NrKCZwZGV2LT52cGNpLT5sb2NrKTsNCisgICAgICAgIHJlYWRfdW5s b2NrKCZkLT52cGNpX3J3bG9jayk7DQorICAgIH0NCiANCiAgICAgaWYgKCBkYXRhX29mZnNldCA8 IHNpemUgKQ0KICAgICAgICAgLyogVGFpbGluZyBnYXAsIHdyaXRlIHRoZSByZW1haW5pbmcuICov DQpkaWZmIC0tZ2l0IGEveGVuL2luY2x1ZGUveGVuL3BjaS5oIGIveGVuL2luY2x1ZGUveGVuL3Bj aS5oDQppbmRleCA1OTc1Y2EyZjMwLi40NTEyOTEwZGNhIDEwMDY0NA0KLS0tIGEveGVuL2luY2x1 ZGUveGVuL3BjaS5oDQorKysgYi94ZW4vaW5jbHVkZS94ZW4vcGNpLmgNCkBAIC0xNTcsNiArMTU3 LDcgQEAgc3RydWN0IHBjaV9kZXYgew0KICAqLw0KIA0KIHZvaWQgcGNpZGV2c19sb2NrKHZvaWQp Ow0KK2ludCBwY2lkZXZzX3RyeWxvY2sodm9pZCk7DQogdm9pZCBwY2lkZXZzX3VubG9jayh2b2lk KTsNCiBib29sX3QgX19tdXN0X2NoZWNrIHBjaWRldnNfbG9ja2VkKHZvaWQpOw0KIA0KZGlmZiAt LWdpdCBhL3hlbi9pbmNsdWRlL3hlbi9zY2hlZC5oIGIveGVuL2luY2x1ZGUveGVuL3NjaGVkLmgN CmluZGV4IDg1MjQyYTczZDMuLjc4MjI3YjdhMWQgMTAwNjQ0DQotLS0gYS94ZW4vaW5jbHVkZS94 ZW4vc2NoZWQuaA0KKysrIGIveGVuL2luY2x1ZGUveGVuL3NjaGVkLmgNCkBAIC00NjAsNiArNDYw LDkgQEAgc3RydWN0IGRvbWFpbg0KIA0KICNpZmRlZiBDT05GSUdfSEFTX1BDSQ0KICAgICBzdHJ1 Y3QgbGlzdF9oZWFkIHBkZXZfbGlzdDsNCisjaWZkZWYgQ09ORklHX0hBU19WUENJDQorICAgIHJ3 bG9ja190IHZwY2lfcndsb2NrOw0KKyNlbmRpZg0KICNlbmRpZg0KIA0KICNpZmRlZiBDT05GSUdf SEFTX1BBU1NUSFJPVUdIDQpkaWZmIC0tZ2l0IGEveGVuL2luY2x1ZGUveGVuL3ZwY2kuaCBiL3hl bi9pbmNsdWRlL3hlbi92cGNpLmgNCmluZGV4IDBiOGEyYTNjNzQuLjNhN2ZjYzQ0NjMgMTAwNjQ0 DQotLS0gYS94ZW4vaW5jbHVkZS94ZW4vdnBjaS5oDQorKysgYi94ZW4vaW5jbHVkZS94ZW4vdnBj aS5oDQpAQCAtNTcsNiArNTcsOSBAQCB1aW50MzJfdCBjZl9jaGVjayB2cGNpX2h3X3JlYWQzMigN CiAgKi8NCiBib29sIF9fbXVzdF9jaGVjayB2cGNpX3Byb2Nlc3NfcGVuZGluZyhzdHJ1Y3QgdmNw dSAqdik7DQogDQorYm9vbCB2cGNpX2hlYWRlcl9uZWVkX3dyaXRlX2xvY2soY29uc3Qgc3RydWN0 IHBjaV9kZXYgKnBkZXYsDQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWdu ZWQgaW50IHN0YXJ0LCB1bnNpZ25lZCBpbnQgc2l6ZSk7DQorDQogc3RydWN0IHZwY2kgew0KICAg ICAvKiBMaXN0IG9mIHZQQ0kgaGFuZGxlcnMgZm9yIGEgZGV2aWNlLiAqLw0KICAgICBzdHJ1Y3Qg bGlzdF9oZWFkIGhhbmRsZXJzOw0KQEAgLTgzLDYgKzg2LDkgQEAgc3RydWN0IHZwY2kgew0KICAg ICAgICAgfSBiYXJzW1BDSV9IRUFERVJfTk9STUFMX05SX0JBUlMgKyAxXTsNCiAgICAgICAgIC8q IEF0IG1vc3QgNiBCQVJTICsgMSBleHBhbnNpb24gUk9NIEJBUi4gKi8NCiANCisgICAgICAgIC8q IE9mZnNldCB0byB0aGUgUk9NIEJBUiByZWdpc3RlciBpZiBhbnkuICovDQorICAgICAgICB1bnNp Z25lZCBpbnQgcm9tX3JlZzsNCisNCiAgICAgICAgIC8qDQogICAgICAgICAgKiBTdG9yZSB3aGV0 aGVyIHRoZSBST00gZW5hYmxlIGJpdCBpcyBzZXQgKGRvZXNuJ3QgaW1wbHkgUk9NIEJBUg0KICAg ICAgICAgICogaXMgbWFwcGVkIGludG8gZ3Vlc3QgcDJtKSBpZiB0aGVyZSdzIGEgUk9NIEJBUiBv biB0aGUgZGV2aWNlLg0KLS0gDQoyLjQwLjENCg== From xen-devel-bounces@lists.xenproject.org Tue Jun 13 10:33:03 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 10:33:03 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548004.855764 (Exim 4.92) (envelope-from ) id 1q91KT-0003As-13; Tue, 13 Jun 2023 10:32:49 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548004.855764; Tue, 13 Jun 2023 10:32:48 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q91KS-00038l-Os; Tue, 13 Jun 2023 10:32:48 +0000 Received: by outflank-mailman (input) for mailman id 548004; Tue, 13 Jun 2023 10:32:48 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q91KR-0001im-Vd for xen-devel@lists.xenproject.org; Tue, 13 Jun 2023 10:32:47 +0000 Received: from mx0b-0039f301.pphosted.com (mx0b-0039f301.pphosted.com [148.163.137.242]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id a31f06d3-09d5-11ee-b232-6b7b168915f2; Tue, 13 Jun 2023 12:32:47 +0200 (CEST) Received: from pps.filterd (m0174683.ppops.net [127.0.0.1]) by mx0b-0039f301.pphosted.com (8.17.1.5/8.17.1.5) with ESMTP id 35DAO5Kc019280; Tue, 13 Jun 2023 10:32:36 GMT Received: from eur05-am6-obe.outbound.protection.outlook.com (mail-am6eur05lp2106.outbound.protection.outlook.com [104.47.18.106]) by mx0b-0039f301.pphosted.com (PPS) with ESMTPS id 3r5yahmgn9-6 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Tue, 13 Jun 2023 10:32:36 +0000 Received: from VI1PR03MB3710.eurprd03.prod.outlook.com (2603:10a6:803:31::18) by DU0PR03MB9706.eurprd03.prod.outlook.com (2603:10a6:10:44e::5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Tue, 13 Jun 2023 10:32:31 +0000 Received: from VI1PR03MB3710.eurprd03.prod.outlook.com ([fe80::6fa2:d7b8:9bd4:1a51]) by VI1PR03MB3710.eurprd03.prod.outlook.com ([fe80::6fa2:d7b8:9bd4:1a51%5]) with mapi id 15.20.6455.045; Tue, 13 Jun 2023 10:32:31 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: a31f06d3-09d5-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Mh3OJYNOrQqDWGMn0p4qXJhuQldj5G3a7bxCGuGeR61CN8BC+SRruhkxd0YbVIT2xA3RqK9B6mO1utJZ7MoABUyYyIlEI0FylcPgwEo8+BWMQtm1wOjGKg2i/R9/yatlpFSZL86v/Tklk8KsIbNLrlTg/2MKBnwZhqfW4D0qNOEIlgi1URhIO0ECHBs7/aWbjbnQRI6j69ST6zqhz/9vMTrc76GmXc1OH+eUbH5mgBO9xi+UiAAPWrFF1ipZAUAnTkfeqkk+tTiCwqSpQCl+qsC7Sd8ZGfqojM1B444A4OIcOr7VbWw7KxSnxxXVljOSIrOQVouZgVAjqXZdg7Pe+w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=0WsGRZX+9SxqmlaHATzo+AnAiyqkWEn+UGBnfXu9ZjA=; b=d8jQDbtfqnLRbwTEg2suZ481FQKEhAKgQ+WHWNbNH9flxjC8BvIlgSFbrqE/Hckkebozckpp5sNWNp71iS9NxQCfMUntg1FrHBivBNv5d9oVqXef8Fdfe+HzCBuzIOnsX5SbEP5p+Zeu4OuQPuRQv9geOhppI1S1OmYVCrhMvQcqiWiV8VoGNNUIfBaSfhcu7lSjUIluUBn977R7qp+nS3ol/NlBpuMQdJhqtIHlVHtZYhmJyBeNIcfRcJ1wWVLAnhUOfiiqisQ9lwcRk+FGRCghI6HkF9FPkCYhEOB6KkiseWpi7FavDQDhbPh6MZINhD0Enyd+icb7BmT8qNHV5w== 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 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=epam.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=0WsGRZX+9SxqmlaHATzo+AnAiyqkWEn+UGBnfXu9ZjA=; b=UMpIS4N3rEmoX3rNAATik6X8rdzD2Znajw2oxSBMzfx+KTp880w4FrTF+oeauOvJZdLJ/QgnCZGtNola/8qeo3auKJ4UWjcw3TR5g0Py9EllOBrspEcoBRLqikuJ9ZCz6sghIqe+OnvZyrQzrJGb5skhvh1tOCfKwBybdj5zv0n3HFig7SJ+cOf4yMAktsv7V9zX5E/poYOTWyHD659f8f0r2BDXSkQSW7Fol4xZYDOwOOEBV7CZ10B2MPbhGxLLrCRVtrwVu+aioOKksNi9UzApr+3RKC19+iM2IvFu54PdM+220nen2GqMrrPMyyEtFlFqtoK08x4fKzBJS9K6Sw== From: Volodymyr Babchuk To: "xen-devel@lists.xenproject.org" CC: Oleksandr Andrushchenko , Andrew Cooper , George Dunlap , Jan Beulich , Julien Grall , Stefano Stabellini , Wei Liu Subject: [PATCH v7 05/12] rangeset: add RANGESETF_no_print flag Thread-Topic: [PATCH v7 05/12] rangeset: add RANGESETF_no_print flag Thread-Index: AQHZneJZjMgYCyM9JEyUhR2V92gItA== Date: Tue, 13 Jun 2023 10:32:28 +0000 Message-ID: <20230613103159.524763-6-volodymyr_babchuk@epam.com> References: <20230613103159.524763-1-volodymyr_babchuk@epam.com> In-Reply-To: <20230613103159.524763-1-volodymyr_babchuk@epam.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-mailer: git-send-email 2.40.1 x-ms-publictraffictype: Email x-ms-traffictypediagnostic: VI1PR03MB3710:EE_|DU0PR03MB9706:EE_ x-ms-office365-filtering-correlation-id: 13944d3c-7e36-4be3-ad8a-08db6bf97e8c x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: OucIsoztlVcf+B/fz0iNYuMyH/YYFfICS5tSTx7tA6dvF1kwEPZhPwXUEhSic7y4F97TrIrXSIvrfPBz6FDdnYDQ+r4ArE/I5FVKCWlxD0IcqMoO9dtobLRoJAxLW+CpHAUHixq7as0VJcPyO9ILmHUhYIdWtUKkedwsYxgKvqkADl7JUxoS8W/SN21exW0Y6ulAWH2316HcRXpS7N/aUfBnKu7sTNxUka8SUcVQfHHBaxjLbVuPSzhdpuGOdWlSa/ZkUkZc2sdV6VUNeFnmHCCKGyTUSg1GGU7mP/fgLJfgWMUb4uxyoHHS6TNMFAFHf9k6X8ncRG8KEzFzNf5wXlfH3Oa9wIC2XhgyXHhp403OD9Uvi11GK4r+o9Q4Bg9NSOok6zm3UGrdDWEnBZ0w56MlpwzcDCN90+4rv64bKkVg/SM6nGz0xQpIVQeU6WMWHs+jNwLpzbSedLPsdPxPBSMYxK3jWDcdqUhiWakW9P8PlS2kBeeC4fZbyfuoCjDus6tR4zm4BCuv9Y5yOdqL5PMgpFPbCxLSuDZODZOiw6LvSNZTUxM5l30GTHt3mBkd2DHd7G8rbOvW0NlhNP6j+mFAngtXuye1aFwg9n3DcVW1DWyhcJfJGQISbXB4Ww+h x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VI1PR03MB3710.eurprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(396003)(376002)(136003)(346002)(366004)(451199021)(91956017)(64756008)(76116006)(66556008)(66446008)(4326008)(6916009)(66476007)(71200400001)(5660300002)(66946007)(41300700001)(8936002)(8676002)(316002)(36756003)(54906003)(83380400001)(478600001)(2906002)(6486002)(38100700002)(6666004)(186003)(6506007)(26005)(1076003)(6512007)(86362001)(55236004)(38070700005)(2616005)(122000001);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?iso-8859-1?Q?vVn0VKHXIIjiw/fsXKbNX6+3G1pE8klVFmFehye80d/ybVQ5LHbsHdAdGd?= =?iso-8859-1?Q?3X5AyE4bOw8s6tuGi189uFiwtaYMyiHYkRBcRLuVLANSCHhAT75wkGxM20?= =?iso-8859-1?Q?hBVx6yFtORXyyFUAGHB6Nb/2PmymaE3+kSs26Jje1i/s9e9Tp8qIe+Pw4X?= =?iso-8859-1?Q?TbOa7FxXjsV2Vu2z+uq5BUNofulReG/qZy/lJ3UX4Ceq/+KgrFFIzmdudc?= =?iso-8859-1?Q?npLs7HLTfBUtb2uMinPtG5I2HXhEkwfeQUBwzCXBheKyjSh13V/qQ4sN2d?= =?iso-8859-1?Q?fEEozpHoTUVcIxK8dk4ObS2BPcwe06f0brYwjWbCbUxWArEh1vtVBHkG6p?= =?iso-8859-1?Q?Uat5JNRizGkGK8QI31A7tQP+9VAeZU6cc7VJ2KE8R9IzHdx9yQ/lsMy3DW?= =?iso-8859-1?Q?5FvYxJlJ3kYhirif1NDKx9+OCgz1Nbswpfn4Q4Z7xouEjezy8oChZkM1UY?= =?iso-8859-1?Q?Q6sMdFQGldgiOe/JOhCbF4OhrWLABt5KQMNqS5MeW2JMh8c+0De6fj5oZ5?= =?iso-8859-1?Q?tYlagdvX/LpeVwSEOEAnFDeHphHYNk3oJ9eqH2i8EQIL/2cqhFZwNYhvem?= =?iso-8859-1?Q?snYj7/uMMxbXYv3LaGXLe3hmSKV4jjZAoSq2LDDg2fQFYgBHaaFjyq2+cX?= =?iso-8859-1?Q?SsSYTK6jwBQgbao+LZnUByCgm/Kj0ICgrSSB48uIwveW8gsJ3iuEbbRN2A?= =?iso-8859-1?Q?UnIjyOl3+odyB/rTvlFlDz5blqCQPy1YkwbMuBbz3pTFpigFXKb+bIAgOy?= =?iso-8859-1?Q?w2fNOve5F4OOOuMgoks95cOwgvIsWwNQpngK7kP/tXAgfgmuTB6AcS5ZIq?= =?iso-8859-1?Q?2XKRtSKmzl232ZBN9+nQzHHTOzQXT8m+s5nJxDeoEsfag3fAs8Tow2jbea?= =?iso-8859-1?Q?7rjtLb2K1qAJGfwX7nDLPZjOKN4dzMI/rexY4y9sZ3QBMtibWCcA6tofa8?= =?iso-8859-1?Q?y/wzh1AjYfpHnJ1XeaI4/yvrj4i/B0UCCdn6fbwyHRE5a1DBrfUWEWxfGD?= =?iso-8859-1?Q?r6Zxsh/+URnJ+oLBWnAZdOPIzLnkueyIEomQyTQ9gqph8cxVS6JpWhaXX0?= =?iso-8859-1?Q?u3kwp3L33w/lJIQWxGIlwy1rNUD3LXdR8K/UafeZK6/Baq1XJJGi9SokVx?= =?iso-8859-1?Q?wHgpLjSZLH3e/t4iCEgDMsSTz4zh/L4nN5Nvgphh+m6EYPd3bQ5DbaqzqN?= =?iso-8859-1?Q?sIed1oSfQCfd947CWdZRXTmqH/OlIIbGEd+YSXnoxpi5TRiHtVt1O9UsVh?= =?iso-8859-1?Q?yTCg9pkIvP0LEwTBlGpE/tnDUtNP99d3STgpH393HZXq7jGCuHfVosXx8K?= =?iso-8859-1?Q?79DdgnWwAM9/TIo9yd/ylHP8CxC83ejuUMXUaCXoOHZojZ6kxDC2Cum3pz?= =?iso-8859-1?Q?ki587YuCy2hB92MvtAT7zm04SZ+bUWIZemI9CzeW/RtMdwOzKxfBQJWTLj?= =?iso-8859-1?Q?mFqIvmYp0+E4bjEX2dbRR4XCQiUcOmifeLgk5hnPaBoTLxffL4HbhoGhMm?= =?iso-8859-1?Q?w46f635O3W1mYWexb6gq5ipubdKOQW8zh28eAuWl9HeFNvZJ3wihqwIKlU?= =?iso-8859-1?Q?EFVJHs8dona/9dWfywGLKqrQqU73AFcZolfBTOpM1Wpos36Ao/wsASPSpI?= =?iso-8859-1?Q?LMLD5g5Axq/qYUausATnMmE+jzG5sBo7tzuaEryi7yk7A4ga4O7ur0uQ?= =?iso-8859-1?Q?=3D=3D?= Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-OriginatorOrg: epam.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: VI1PR03MB3710.eurprd03.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 13944d3c-7e36-4be3-ad8a-08db6bf97e8c X-MS-Exchange-CrossTenant-originalarrivaltime: 13 Jun 2023 10:32:28.0750 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: b41b72d0-4e9f-4c26-8a69-f949f367c91d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: EoEJzxgnM2aQbNxQfHKjHKCEfm47/L1RUmQvJlU6yahpVvXIm842Gmbqqp2FILbUTWKTfoWqJdNaz1ml87JbDnq7FyYS8Rn4aiG9efb/HyU= X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU0PR03MB9706 X-Proofpoint-GUID: GX3CMhzyxVkk6O3d-QmWlAGUMRY5ot46 X-Proofpoint-ORIG-GUID: GX3CMhzyxVkk6O3d-QmWlAGUMRY5ot46 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.254,Aquarius:18.0.957,Hydra:6.0.573,FMLib:17.11.176.26 definitions=2023-06-13_04,2023-06-12_02,2023-05-22_02 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 mlxscore=0 suspectscore=0 mlxlogscore=999 spamscore=0 malwarescore=0 clxscore=1015 lowpriorityscore=0 bulkscore=0 priorityscore=1501 phishscore=0 impostorscore=0 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2305260000 definitions=main-2306130093 From: Oleksandr Andrushchenko There are range sets which should not be printed, so introduce a flag which allows marking those as such. Implement relevant logic to skip such entries while printing. While at it also simplify the definition of the flags by directly defining those without helpers. Suggested-by: Jan Beulich Signed-off-by: Oleksandr Andrushchenko Reviewed-by: Jan Beulich --- Since v5: - comment indentation (Jan) Since v1: - update BUG_ON with new flag - simplify the definition of the flags --- xen/common/rangeset.c | 5 ++++- xen/include/xen/rangeset.h | 5 +++-- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/xen/common/rangeset.c b/xen/common/rangeset.c index a6ef264046..f8b909d016 100644 --- a/xen/common/rangeset.c +++ b/xen/common/rangeset.c @@ -433,7 +433,7 @@ struct rangeset *rangeset_new( INIT_LIST_HEAD(&r->range_list); r->nr_ranges =3D -1; =20 - BUG_ON(flags & ~RANGESETF_prettyprint_hex); + BUG_ON(flags & ~(RANGESETF_prettyprint_hex | RANGESETF_no_print)); r->flags =3D flags; =20 safe_strcpy(r->name, name ?: "(no name)"); @@ -575,6 +575,9 @@ void rangeset_domain_printk( =20 list_for_each_entry ( r, &d->rangesets, rangeset_list ) { + if ( r->flags & RANGESETF_no_print ) + continue; + printk(" "); rangeset_printk(r); printk("\n"); diff --git a/xen/include/xen/rangeset.h b/xen/include/xen/rangeset.h index 135f33f606..f7c69394d6 100644 --- a/xen/include/xen/rangeset.h +++ b/xen/include/xen/rangeset.h @@ -49,8 +49,9 @@ void rangeset_limit( =20 /* Flags for passing to rangeset_new(). */ /* Pretty-print range limits in hexadecimal. */ -#define _RANGESETF_prettyprint_hex 0 -#define RANGESETF_prettyprint_hex (1U << _RANGESETF_prettyprint_hex) +#define RANGESETF_prettyprint_hex (1U << 0) + /* Do not print entries marked with this flag. */ +#define RANGESETF_no_print (1U << 1) =20 bool_t __must_check rangeset_is_empty( const struct rangeset *r); --=20 2.40.1 From xen-devel-bounces@lists.xenproject.org Tue Jun 13 10:33:03 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 10:33:03 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547996.855705 (Exim 4.92) (envelope-from ) id 1q91KM-0001jG-DM; Tue, 13 Jun 2023 10:32:42 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547996.855705; Tue, 13 Jun 2023 10:32:42 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q91KM-0001j9-Am; Tue, 13 Jun 2023 10:32:42 +0000 Received: by outflank-mailman (input) for mailman id 547996; Tue, 13 Jun 2023 10:32:41 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q91KK-0001il-Ve for xen-devel@lists.xenproject.org; Tue, 13 Jun 2023 10:32:41 +0000 Received: from mx0b-0039f301.pphosted.com (mx0b-0039f301.pphosted.com [148.163.137.242]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 9d71503e-09d5-11ee-8611-37d641c3527e; Tue, 13 Jun 2023 12:32:37 +0200 (CEST) Received: from pps.filterd (m0174683.ppops.net [127.0.0.1]) by mx0b-0039f301.pphosted.com (8.17.1.5/8.17.1.5) with ESMTP id 35DAO5KY019280; Tue, 13 Jun 2023 10:32:33 GMT Received: from eur05-am6-obe.outbound.protection.outlook.com (mail-am6eur05lp2106.outbound.protection.outlook.com [104.47.18.106]) by mx0b-0039f301.pphosted.com (PPS) with ESMTPS id 3r5yahmgn9-2 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Tue, 13 Jun 2023 10:32:33 +0000 Received: from VI1PR03MB3710.eurprd03.prod.outlook.com (2603:10a6:803:31::18) by DU0PR03MB9706.eurprd03.prod.outlook.com (2603:10a6:10:44e::5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Tue, 13 Jun 2023 10:32:30 +0000 Received: from VI1PR03MB3710.eurprd03.prod.outlook.com ([fe80::6fa2:d7b8:9bd4:1a51]) by VI1PR03MB3710.eurprd03.prod.outlook.com ([fe80::6fa2:d7b8:9bd4:1a51%5]) with mapi id 15.20.6455.045; Tue, 13 Jun 2023 10:32:28 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 9d71503e-09d5-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=ECFcuEJk+JKFmeKInrb/bLSRIwP5S9Bje6ypSBeNHyWg91GQqmm1SIPw/kecxdrr9xHXYNEmGW9vVDX2hikzwTj7xwppk3L7xdeWYkjATDGieq3o3BLyafw8Hld2ALoPoGgThDyUNwVd1L1zwlEZldoDfwYpXuwKI7w0lsCUc79HjINkcFndjDzNQ0/4cUzYRJQEbSd2ifNq81HdQFMcnwIMRDaom1UQGOOjKrI9vN9sI+CJH+EpwYiSqgvdaPhry9cQQZOuZBerWCdWMRUc3CpBaKRP8q/CGG13S6QarTHzV2Lw4OEcgwFlZeTy0DtdPNwFwjN9l0nsEmxB8o9PMw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=pzQgHIvh4Yevy8ekMSaMLkJ3eNO1G8Dye2joimf+kvw=; b=Ra0yTTHywEBTBOL9yYWVFWcjIYwm/FS9zCVQu5wsMinN78qaZSQfO/UOLntd+eSXPWOTAhd/KVHA/XcYjt0yvlYmA6TsoazOZOSw87Po6bLd5klACbfs0aJgxgQGB1ILYDiRrTNyqWlI7obG/QX1875Xx6IU1mIEhtLS7d54Lhh6S8KXlGmGgrwnajH6KlM9bXJMykWAs8INsiC2j+nBUqUHY/8MHq2Fxhh8xJ0pKbFxKXphSRBdUYbsHolzt7RY9xJfu0XmnxQAbhSjVtM68FhHwKomdzJdOw9xmDgo5Mg/OjHbs1NHvDhVSpLM6AUCx7xsa1bgQJbpaGb/eLrEtQ== 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 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=epam.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=pzQgHIvh4Yevy8ekMSaMLkJ3eNO1G8Dye2joimf+kvw=; b=YAkov4b/MnMMcd6PeiCvlKiTspNK4CZIy4Z4WA1i7B8W+tFvTo9YMYU0c4adTFqLR9OXatLQ7Mnd0S1/EP2i7tpoeij/ZaZbKhqcjYQTsofh2WdZIhmC2Bn6dmOg6OG5AbQEj46IsgXHjBPlvldNpUblYMdkRksppCXX059CusZvDq3sE6fDJYL8EALqRSbvOUbYV3L3DJVev227vFSFrIBYmLF3YY6hwVTC+TNuUQgsW4JoZCE5a3rfOtjgqw1f8eEFz8HxiRBd8sjYjp+6ylwAnA7fG8rCTeOSAOyjayevF1+95cZzPAuZRYOycqqY4p31Uk+JV+h7BLOzysFNow== From: Volodymyr Babchuk To: "xen-devel@lists.xenproject.org" CC: Oleksandr Andrushchenko , =?utf-8?B?Um9nZXIgUGF1IE1vbm7DqQ==?= Subject: [PATCH v7 02/12] vpci: restrict unhandled read/write operations for guests Thread-Topic: [PATCH v7 02/12] vpci: restrict unhandled read/write operations for guests Thread-Index: AQHZneJZ4Y/QK9l300mPh5Vy/DhSyA== Date: Tue, 13 Jun 2023 10:32:27 +0000 Message-ID: <20230613103159.524763-3-volodymyr_babchuk@epam.com> References: <20230613103159.524763-1-volodymyr_babchuk@epam.com> In-Reply-To: <20230613103159.524763-1-volodymyr_babchuk@epam.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-mailer: git-send-email 2.40.1 x-ms-publictraffictype: Email x-ms-traffictypediagnostic: VI1PR03MB3710:EE_|DU0PR03MB9706:EE_ x-ms-office365-filtering-correlation-id: 79d0447c-84d2-47f5-9546-08db6bf97c63 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: O2noGJvs/dXZu12yDA5fO3BXQvQbkhuceF/ZQPIFteTvrQDGkIYsxp/ZKrDi29YjuE1YirCXKqI6oE+IbMKsCNep0apkdGDWazvtNVQWe+hHtNbTm7vQ4yXtduQNuXQC592C6//bxNM4LNhFYxT5qiNLCpoj9KXbPwktgYy4qwwJJxVwMYhuKpzdDNSmYh9rh1EZXG24rQ/kGJx11CRszrXdd90sUOFAY0k/vRL3Cnu+ukJ1K+DwOMDX8kRI+ESc1wBf3fxFGiAaoQ2QaeSzRtJn7RIPa4eglLOwHVShUfx4oqOhEnaBS8Dskn0U7tPUlijxEA9ttNLqAODTkOM+OCypCTPPeE8QRK7Bma79Z+YwOnzBRvnPYmlORbSDI2XU7VbCjHV6Np4mvNeDi3aU1ptP+K04mHuB2S2xe5aJygu8B5fYde7OEzpI6b3dC5tkURSd/Pw5oFb0EEesHUEj/ifXStjUOpshjTsllLOc0Irip5QCRMb68XbEqABl58QYrZbnBLZDN3Jn+f8iUlDhMPEzNty8ZONRInNmMYtvHP9eEkNNGw4SUaqDxwGg9ZkmDRXQQdQdjAkfkRZz00Ozl0p+pTdL3P1fGbXOcyr+18KPdQa5d7q2bq61hgeOPLT4 x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VI1PR03MB3710.eurprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(396003)(376002)(136003)(346002)(366004)(451199021)(91956017)(64756008)(76116006)(66556008)(66446008)(4326008)(6916009)(66476007)(71200400001)(5660300002)(66946007)(41300700001)(8936002)(8676002)(316002)(36756003)(54906003)(83380400001)(478600001)(2906002)(6486002)(38100700002)(186003)(6506007)(26005)(1076003)(6512007)(86362001)(55236004)(38070700005)(2616005)(122000001);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?b3lyZjJicHJnNms0TS9mNzcvUk1LWFdObVlyU0RIVlArcS9oQkEvL2ZrY0FC?= =?utf-8?B?OHJjRWh6TWhpYW16M2tMZld2dCtWR3JxRTgwWDdIVDByZEZ1dXNPYWNjQ290?= =?utf-8?B?cDZxTGxJZTFQNWdvNnN4TnF4aStrQXRqdkVmd1cxVmV2a2xKMURxazRUU2Js?= =?utf-8?B?WG81WXovR2dwYzBsMCs5dW0rWXNjbllVeHlOMC8rNWVrM1lUUzZvQXdIRVVJ?= =?utf-8?B?dVhQWnRnQ1BrM2syMzlVbVdhdzNGUVhJd25LOWlkcytxdVhPWDUwQm9JZE9Q?= =?utf-8?B?ZFNFWTRnNXgwdlhCVlhpb1RNN2YwZTMzMVNZOXU3RWFzZzU2NENObVpEQVVy?= =?utf-8?B?dUZ6VkNTQk1obzVadEE0TDRjSVM4aS9kWmVxR0VaS3RRaTE0K2FXTWZBOCsv?= =?utf-8?B?SVJjYVp6SllIbFZiaWVuTExiSDRjeXJMRE9yMzlRWkVnbkxLcTFWajNWQVhx?= =?utf-8?B?ZVNGT081dUg1VUEyOUxUVlhTanBaVFVPSCtKM29IdDVTZUxIbC9hbkg4REpH?= =?utf-8?B?R3JhdGQ0WVJoQ3Y3aFkvVXhNU1lpUlJZUzkrVjZkZlhJMW8zdE9FbXdXZS9p?= =?utf-8?B?SlVOdXBSSzN4NlhTMDBGUFphbTNqNkNZK1Y4K3FjN1gwT3dydUQ5Ykd6VGsw?= =?utf-8?B?UUFNdkZkMVpncEc3ME1SbVl2VWJMUm9NdHVnWm94cG9UaUpHbFVic3pTcFNh?= =?utf-8?B?QnJJbUd1Tk13ajlxcnY0YUZlWHVBTktaSG03d2ZQczloQWdEUDJHRVFBbjRk?= =?utf-8?B?WlBkRDdBRkdWNUNmdWs3VFdIN0oxaThhMGUxc1FKME1heVROcjUyckJ2dVhV?= =?utf-8?B?RXpMekRKVDdTUXRzc0Y3eTg5cVh1NVhhZENJemtTTkVqVUQ3SlUwMk82bndS?= =?utf-8?B?UjJuY00wV2JnR1pybEZ2cjdkeWZrM2RCOEhUOVlqMzFkN01KYTJJVHd2T0dz?= =?utf-8?B?V0ZueDVQR3kzNFlxQVRwcGMvWkNnZjZ4OXovUGFJbndGUldXV202dGZjeFk1?= =?utf-8?B?VGoyeGFsc0RhMXpKSXA5ZnpnSXBLemRzOFl4UFZjSGNwTytWbXhaTTcvVzFZ?= =?utf-8?B?MWtmNFRJM2VMUThxbndJYTEzanAvbUVaK1dRVUVPRzJGeGhqalFVYithSWJB?= =?utf-8?B?ZHphMjExY3hvQU1ZbXlxU3k5eFB2RWFVczNHU04rVVd3VXJLTGkzcEl3UFNZ?= =?utf-8?B?cDJVZFpCVjg5Ymt4eURlalZ1QU9YVUZlMXV4Q05CRmVyZFFyaUtuVmIvSXJC?= =?utf-8?B?MlQzNlFiTXVJTURXcHZCWVB1YlNCSlR1MG9rK2p4V1dWNGdhVnFUNmNMaEpR?= =?utf-8?B?TXhTcXJZc1NyNWVyUkFmczZKajdwTXlEOWpZOU1zSzl4bWJVZUpqMW0yeDA3?= =?utf-8?B?VjRGRWtpWTJrb015OFgxUmFJK1Rtb24zM2Jzd2p3T0NKbUZmV09UbEpqM3U2?= =?utf-8?B?akJIMDFkN0RtaGlFTHQrb3hzbGdOcTM1TFlhNXZhVFhzV1V3UlU3OUtQMUpD?= =?utf-8?B?YVlWRGlCZDNWQ3pZRXloRis0NHVxRXhoM2JSM2tudkg2ZVZFY2J2ZlFkL0RD?= =?utf-8?B?OC9rYURVcGRmN0NVL0dIYS85V2I3UEJISFJFaHhZdjRyVGFmVHBESVB0WWpw?= =?utf-8?B?SksvK0VZNnNUVmJwYU45a0lMMVE0VVFpbnVIL0dRTGFta0NRSXJ5UFhaZmx4?= =?utf-8?B?U1g5ZkEvdXVENVFWWXFhOUMyZHUwbHNKYldSRGZ3dVAzTnNIVWZvbW0xcWF6?= =?utf-8?B?UENkRFFFcGdEd1VBL05pa0EyTmovNUdJMmxac1J2Rk9rTWcyOTF1WjhoWEpa?= =?utf-8?B?ay9VbGdBdDJyaXczSHNuZEYrMStweDRyNS85ZlUxeTFhdHk0L29tQmxqcVpJ?= =?utf-8?B?NXM1ckVTTDhEVXJIM0xneEtvR29DNHNFRjBOejgxamR2L1hKT2hlZTJ2TE9q?= =?utf-8?B?djFDWFlqTVNXczhwVjBvWVdsZGtuYUZCME96R3VLWnFRaTNPTTU5M2NJK1lQ?= =?utf-8?B?RWZmOTRtYVlDN1l5Tk0yWnhYekJKczFjK3ppZm1HQldXRGs4RVdhZW1BaXNU?= =?utf-8?B?c2ZRSWwrcnFEYnBkRElZcjlJTXl1YVpGT2l1MW54TmprY29mYUUyejNGQjR3?= =?utf-8?B?L3h6ckRQVENSeml3L1I0UUZmUjJwMXNHb1F0d3E4Z2FCYlN4U0lZL2JzT3hz?= =?utf-8?B?OFE9PQ==?= Content-Type: text/plain; charset="utf-8" Content-ID: Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: epam.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: VI1PR03MB3710.eurprd03.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 79d0447c-84d2-47f5-9546-08db6bf97c63 X-MS-Exchange-CrossTenant-originalarrivaltime: 13 Jun 2023 10:32:27.2488 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: b41b72d0-4e9f-4c26-8a69-f949f367c91d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: E1YiMFiGL5YgB7NpFXpmEEm/3vvfLOZJrWb6NR3UXzGjLmcfPzg3WF3KY5VcojL4e7okg4LkPVeb8QxWUTGyNpQS/2tw8ZWPEfXUdwRO6BQ= X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU0PR03MB9706 X-Proofpoint-GUID: R15PgsG3ft5Sxe8Pli3J6NwUJ4UZDr0z X-Proofpoint-ORIG-GUID: R15PgsG3ft5Sxe8Pli3J6NwUJ4UZDr0z X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.254,Aquarius:18.0.957,Hydra:6.0.573,FMLib:17.11.176.26 definitions=2023-06-13_04,2023-06-12_02,2023-05-22_02 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 mlxscore=0 suspectscore=0 mlxlogscore=999 spamscore=0 malwarescore=0 clxscore=1015 lowpriorityscore=0 bulkscore=0 priorityscore=1501 phishscore=0 impostorscore=0 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2305260000 definitions=main-2306130093 RnJvbTogT2xla3NhbmRyIEFuZHJ1c2hjaGVua28gPG9sZWtzYW5kcl9hbmRydXNoY2hlbmtvQGVw YW0uY29tPg0KDQpBIGd1ZXN0IHdvdWxkIGJlIGFibGUgdG8gcmVhZCBhbmQgd3JpdGUgdGhvc2Ug cmVnaXN0ZXJzIHdoaWNoIGFyZSBub3QNCmVtdWxhdGVkIGFuZCBoYXZlIG5vIHJlc3BlY3RpdmUg dlBDSSBoYW5kbGVycywgc28gaXQgd2lsbCBiZSBwb3NzaWJsZQ0KZm9yIGl0IHRvIGFjY2VzcyB0 aGUgaGFyZHdhcmUgZGlyZWN0bHkuDQpJbiBvcmRlciB0byBwcmV2ZW50IGEgZ3Vlc3QgZnJvbSBy ZWFkcyBhbmQgd3JpdGVzIGZyb20vdG8gdGhlIHVuaGFuZGxlZA0KcmVnaXN0ZXJzIG1ha2Ugc3Vy ZSBvbmx5IGhhcmR3YXJlIGRvbWFpbiBjYW4gYWNjZXNzIHRoZSBoYXJkd2FyZSBkaXJlY3RseQ0K YW5kIHJlc3RyaWN0IGd1ZXN0cyBmcm9tIGRvaW5nIHNvLg0KDQpTdWdnZXN0ZWQtYnk6IFJvZ2Vy IFBhdSBNb25uw6kgPHJvZ2VyLnBhdUBjaXRyaXguY29tPg0KU2lnbmVkLW9mZi1ieTogT2xla3Nh bmRyIEFuZHJ1c2hjaGVua28gPG9sZWtzYW5kcl9hbmRydXNoY2hlbmtvQGVwYW0uY29tPg0KDQot LS0NClNpbmNlIHY2Og0KLSBkbyBub3QgdXNlIGlzX2h3ZG9tIHBhcmFtZXRlciBmb3IgdnBjaV97 cmVhZHx3cml0ZX1faHcgYW5kIHVzZQ0KICBjdXJyZW50LT5kb21haW4gaW50ZXJuYWxseQ0KLSB1 cGRhdGUgY29tbWl0IG1lc3NhZ2UNCk5ldyBpbiB2Ng0KLS0tDQogeGVuL2RyaXZlcnMvdnBjaS92 cGNpLmMgfCAxMiArKysrKysrKysrLS0NCiAxIGZpbGUgY2hhbmdlZCwgMTAgaW5zZXJ0aW9ucygr KSwgMiBkZWxldGlvbnMoLSkNCg0KZGlmZiAtLWdpdCBhL3hlbi9kcml2ZXJzL3ZwY2kvdnBjaS5j IGIveGVuL2RyaXZlcnMvdnBjaS92cGNpLmMNCmluZGV4IDEyNzAxNzRlNzguLjBiMTFkOWMzZjgg MTAwNjQ0DQotLS0gYS94ZW4vZHJpdmVycy92cGNpL3ZwY2kuYw0KKysrIGIveGVuL2RyaXZlcnMv dnBjaS92cGNpLmMNCkBAIC0yMzUsNiArMjM1LDEwIEBAIHN0YXRpYyB1aW50MzJfdCB2cGNpX3Jl YWRfaHcocGNpX3NiZGZfdCBzYmRmLCB1bnNpZ25lZCBpbnQgcmVnLA0KIHsNCiAgICAgdWludDMy X3QgZGF0YTsNCiANCisgICAgLyogR3Vlc3QgZG9tYWlucyBhcmUgbm90IGFsbG93ZWQgdG8gcmVh ZCByZWFsIGhhcmR3YXJlLiAqLw0KKyAgICBpZiAoICFpc19oYXJkd2FyZV9kb21haW4oY3VycmVu dC0+ZG9tYWluKSApDQorICAgICAgICByZXR1cm4gfih1aW50MzJfdCkwOw0KKw0KICAgICBzd2l0 Y2ggKCBzaXplICkNCiAgICAgew0KICAgICBjYXNlIDQ6DQpAQCAtMjc1LDkgKzI3OSwxMyBAQCBz dGF0aWMgdWludDMyX3QgdnBjaV9yZWFkX2h3KHBjaV9zYmRmX3Qgc2JkZiwgdW5zaWduZWQgaW50 IHJlZywNCiAgICAgcmV0dXJuIGRhdGE7DQogfQ0KIA0KLXN0YXRpYyB2b2lkIHZwY2lfd3JpdGVf aHcocGNpX3NiZGZfdCBzYmRmLCB1bnNpZ25lZCBpbnQgcmVnLCB1bnNpZ25lZCBpbnQgc2l6ZSwN Ci0gICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQzMl90IGRhdGEpDQorc3RhdGljIHZvaWQg dnBjaV93cml0ZV9odyhwY2lfc2JkZl90IHNiZGYsIHVuc2lnbmVkIGludCByZWcsDQorICAgICAg ICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBpbnQgc2l6ZSwgdWludDMyX3QgZGF0YSkNCiB7 DQorICAgIC8qIEd1ZXN0IGRvbWFpbnMgYXJlIG5vdCBhbGxvd2VkIHRvIHdyaXRlIHJlYWwgaGFy ZHdhcmUuICovDQorICAgIGlmICggIWlzX2hhcmR3YXJlX2RvbWFpbihjdXJyZW50LT5kb21haW4p ICkNCisgICAgICAgIHJldHVybjsNCisNCiAgICAgc3dpdGNoICggc2l6ZSApDQogICAgIHsNCiAg ICAgY2FzZSA0Og0KLS0gDQoyLjQwLjENCg== From xen-devel-bounces@lists.xenproject.org Tue Jun 13 10:33:03 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 10:33:03 +0000 Received: from list by lists.xenproject.org with outflank-mailman.547999.855725 (Exim 4.92) (envelope-from ) id 1q91KN-00022H-Cu; Tue, 13 Jun 2023 10:32:43 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 547999.855725; Tue, 13 Jun 2023 10:32:43 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q91KN-00021R-64; Tue, 13 Jun 2023 10:32:43 +0000 Received: by outflank-mailman (input) for mailman id 547999; Tue, 13 Jun 2023 10:32:41 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q91KL-0001im-C6 for xen-devel@lists.xenproject.org; Tue, 13 Jun 2023 10:32:41 +0000 Received: from mx0b-0039f301.pphosted.com (mx0b-0039f301.pphosted.com [148.163.137.242]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 9ddb8d52-09d5-11ee-b232-6b7b168915f2; Tue, 13 Jun 2023 12:32:38 +0200 (CEST) Received: from pps.filterd (m0174681.ppops.net [127.0.0.1]) by mx0b-0039f301.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 35D7wk88024943; Tue, 13 Jun 2023 10:32:36 GMT Received: from eur03-dba-obe.outbound.protection.outlook.com (mail-dbaeur03lp2169.outbound.protection.outlook.com [104.47.51.169]) by mx0b-0039f301.pphosted.com (PPS) with ESMTPS id 3r6b6r9sqn-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Tue, 13 Jun 2023 10:32:36 +0000 Received: from VI1PR03MB3710.eurprd03.prod.outlook.com (2603:10a6:803:31::18) by AS8PR03MB10054.eurprd03.prod.outlook.com (2603:10a6:20b:63b::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.29; Tue, 13 Jun 2023 10:32:33 +0000 Received: from VI1PR03MB3710.eurprd03.prod.outlook.com ([fe80::6fa2:d7b8:9bd4:1a51]) by VI1PR03MB3710.eurprd03.prod.outlook.com ([fe80::6fa2:d7b8:9bd4:1a51%5]) with mapi id 15.20.6455.045; Tue, 13 Jun 2023 10:32:33 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 9ddb8d52-09d5-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=AwDlxCRDkbFSP9SUWUqjjIoKMiO03Mc1DM4ILm0RMIzoVpI3040pNdH8SisCjfs+h4AV5It0S9R6hNqgO0BpBQariugwzWGjf2okwukXlojiv6lJ/Fem1NX3D8JZBVoLhmhrUr4GC4zkGi+xtT+Cjlmor0cqYOqwqNtHVj1bT00gdMyA5e9/XkP4MMsDRUqC1Y/7jKhvaPjjbKm8JJRVEs/QFdgdkp6+6eRLd5gJt6tLvbU4AjGCF0q4WtWzqlGMqVDhGT2JdNFgCclZ6wA3kfds8bHbi9gt7PRofntz+9VBh+jn6xNnu02zrVXDmagvCTwTqFjPcqVfPlxWxrGxTw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=UY3Tc3JYjXd83nRZfS2pIeBc/5nTAWhkdSGDbSn1R9M=; b=SpDEGTznp0M0SivWEblwb2kXWGHSt5uSCs3xTGC2k/IQQOahNzehN5bpOEgKl2+dolkK31GMIgFMFyUbC0FpQz3nsdzVorMAJOOxQeSr6XT3q0w6Xi49zJas9Sfdc3iqzJyUX8y6EO9znRAru/SlHKbc51EwoJPOE5cOGzUoiQwnVDLZ6AhoYrLufWDOilgriR2HfzU9gXa0RlgX9YavV+UZefyLpvpa1PG3m0Y7YIKyLD/scoPKh3ZLZTKXnYt9DHsNoFvTGTYCndypL+Ieigsseh8PRE4wJwFtQE/7ND91Wacry6K4MSUuDg9EdCnrncN2gnSuJCAG7R3lAdQbFQ== 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 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=epam.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=UY3Tc3JYjXd83nRZfS2pIeBc/5nTAWhkdSGDbSn1R9M=; b=hUBU6xpxSBK98oYzNp7iJy8eVoyWDtcl5cppb54dAc/goZdwd4tqPBaxPh1KPqfp0hWvIHbcwqa20Oq7D1Hgn8jUNBWcPRN9cxxddFCl59ebWT2i7k2CJdsnAStqPGa8iLDq1m9A/UkF6xW29czB3mG9/n/HGie8z3GUPmofY0XdHrTSdYpBbscwPeLwvKo8JzOhhBupMWmdv3Xqf25271lPeXWsG4YvhiBNPYCX6YseEi85OY3PwBpNHLv/vc2ZIKz8W7G5tzMLJ6cS34BTRIBoNIoNWfkmWwCJI0EiDjgspc3tWN4Bz1C/5OkCHQ45xX14xPHx/ic5OIH82vYM3A== From: Volodymyr Babchuk To: "xen-devel@lists.xenproject.org" CC: Oleksandr Andrushchenko , =?iso-8859-1?Q?Roger_Pau_Monn=E9?= Subject: [PATCH v7 08/12] vpci/header: emulate PCI_COMMAND register for guests Thread-Topic: [PATCH v7 08/12] vpci/header: emulate PCI_COMMAND register for guests Thread-Index: AQHZneJadSk5dKCDKUGsmZXzTPgN0A== Date: Tue, 13 Jun 2023 10:32:28 +0000 Message-ID: <20230613103159.524763-9-volodymyr_babchuk@epam.com> References: <20230613103159.524763-1-volodymyr_babchuk@epam.com> In-Reply-To: <20230613103159.524763-1-volodymyr_babchuk@epam.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-mailer: git-send-email 2.40.1 x-ms-publictraffictype: Email x-ms-traffictypediagnostic: VI1PR03MB3710:EE_|AS8PR03MB10054:EE_ x-ms-office365-filtering-correlation-id: 9a50147d-7fb5-419f-14b4-08db6bf97f7b x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: 7QAaEz9qHw4tbXo3eMCbbBCugU5zi1ITszDvARtwnBwMfOjFjAW9/p+BIEpJrnKcB4n3+gaNyhXEXcNUG9O+BFX18uxFGqJKyLTBJSb5szFE9L1mCKv8ijL1j3SU9pPekjHlOLe3XqLkFI/NNmJsuIgMb07PcdDiB+7E3iepJ7komfLRZOMY9EcQ9orXFmxeO/TCaDc21WVfw7Kx1VQByFndSUSbZtuKvNQePsX9T5fWELmwcEmubHyojx586Mb5sE1h1eD1sEpRgNavl3zuo2ZefBO3nlOTyJ+JJu874z6CGK3dGVl+yMYiMwfAXWQLv3mmDMZ4d+hG0MNhQNLmQGwSnZqb7g3fYopfb98n7+v+yvXGcRJfwlQtBO2wPaB63Jn37ZN8vCQTO0HNLoJtw2mUj6RtjxfEc314KWMgV7XPMdrJljDFtKooYTtbDzRGuh4iN218tmYPzfTqpZzAFYRnT+NnLeh7/z1fDr+XFk5AILo9qoZ3FuOVFt6H6BzmLIyFvZeQPknCHmefjbANbju4L+W2aQyjggY4RNxKjrSK542BmJe/6UMIX+rMGsxQz4yu7PweFWrHR4ee9sW7e1b06KA7eC3yq9XNFNIWOBy/m3H0mQGWr2Tktpg23yrLDGtOnlA8c/ntIm4GQj/QSg== x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VI1PR03MB3710.eurprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(366004)(136003)(39860400002)(346002)(396003)(376002)(451199021)(2616005)(83380400001)(86362001)(36756003)(122000001)(38070700005)(38100700002)(478600001)(54906003)(71200400001)(4326008)(6666004)(6486002)(966005)(8936002)(8676002)(2906002)(5660300002)(64756008)(66946007)(91956017)(66446008)(66476007)(66556008)(76116006)(41300700001)(6916009)(316002)(55236004)(186003)(66899021)(6512007)(26005)(1076003)(6506007);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?iso-8859-1?Q?5okfJ1FcEUByPr/7ctEFxv/bxLvaXvXIp1gx2VlNHg4mskTTjSxj4TDM1+?= =?iso-8859-1?Q?RvIKnEAhUpob7jj4GRrClkWI38/bfJS0wF9DiYRTXR5bO7weCv7YsEzpzI?= =?iso-8859-1?Q?dnuwPhTs5iGqR1O+ZJ9923fpJRCODGVweMPQ5dLPQ9ltRB56OXy4xvZdpt?= =?iso-8859-1?Q?u0JtyGenWrZwHEgRIyTOETN5d45gzArhPy+sfAs3ydn/hfR0hY/lflxQuG?= =?iso-8859-1?Q?I9xbCjjf0HFhFbCccErVijeSrDVVbtCBQbhQyvQ9fgtPlBzul3Opxdqdt+?= =?iso-8859-1?Q?HoIkzYQw7ZiOotuhXj52zVRKMYQuq0l1024/+GeOjoFnttXVWpNzLCKM0b?= =?iso-8859-1?Q?+gY11a5NMdT/4B7Cr9yPIJhl4Ril7JNcKam11L6vv3kUndGftJKA8RqqQ0?= =?iso-8859-1?Q?7SeLC/f7dA1UuQ/nj2HiB+KyhD8UxipGKU5Ek6mfIQ6+Ckyy67sq9iDDbY?= =?iso-8859-1?Q?yhnNYlXjLb1QTMgJqKi+pgvYxFKcSZ34BBG4F3Ust7V19osvLqOMmQJoVb?= =?iso-8859-1?Q?3T0Ca2oNPqCYZWI+TGNNzXVKP/dulSWKdm4YrvxzU43JwMW8wcXsNXXquE?= =?iso-8859-1?Q?f8pGeyS5nUgBU6zhDOvZc8c7yU7q/qac1b4A3JxpHLxfUipMAnSstk/B7g?= =?iso-8859-1?Q?Wpeu5oS0SSdg5bo4eIittqILm5ILrRDVuuR6wfFJL+/DAOlz38klN09sRj?= =?iso-8859-1?Q?uUY4rXzg+5+ilHO2iK1N/YEMlEKjMvzqA21ynQUlezW6EB/y9o5Ityn83/?= =?iso-8859-1?Q?VasfWsm1tB4npxNw9Ur58VeZN2mhLBKhIyyR/14uNF0Vr/wv0Eszt/9Ml+?= =?iso-8859-1?Q?HJc1TioaPHFww/YDTUHCJ/0i8UwPthzUBsnmAK5BI43JMCx0pnBBjaY9OG?= =?iso-8859-1?Q?mIz0bAW5+mhOJGwhNg9D0pDDszixXVFS4G8dxpAFlY8A7qg+ApYt4G53qf?= =?iso-8859-1?Q?h0iG8Obz5DtWmGE3kM15GnKFY5Mw1nUeWy86/aWXdXzVWUQg/8MHfcgUMM?= =?iso-8859-1?Q?nnucl7ZuREZ1Azeat3VrhQSsNz7z6DwgVurwcACUqio/AMiZW/LQxFR2bJ?= =?iso-8859-1?Q?Ndckr6moSmg52/+6yXUw6EAxRNgVVlRe7rbQfxPN4ID8+3e130kzLQtWRx?= =?iso-8859-1?Q?yShumTqwdlXv4Fnj8eEVFa7Ytte+MKj/dKsPbZPXH2Yfb9Ht6lH1CKcU3G?= =?iso-8859-1?Q?aG1BXAWTPDaQwc//h26AgEyCJX4MjtUDfW1UAmihHSEPnNCe/JrQDxHYmm?= =?iso-8859-1?Q?/PwadvRsJXVKnWRUo7J44vTaLXvXeMm/dKX2CGJB0JcvTvdmjFL/E5yUCO?= =?iso-8859-1?Q?UsJLM2FdIVZxNCy8c78RzlU23eJ8m6NtTGBPmL3j83y/LGBJsQUF/4ZYhx?= =?iso-8859-1?Q?brGnNgGQowGFivgAtCXxs8mvLXG7kmjTDX3R4kP0LPE73L/2kxWiuUqq1i?= =?iso-8859-1?Q?8aVLBG30e5+U8QsOZ6vewRO8eSkx3FrvpBORjDazUiAmEF65Urdp9Z2NaT?= =?iso-8859-1?Q?ZsLIP8H8avsTSRX23aZiJy8Mk27YIKmRVqBa3sqwSYDDJKAeJfcjGDkonZ?= =?iso-8859-1?Q?Gav4ykVlU9zpyP8XAhkirARxbVtfSvoEq7O2FDCEhFtTXjFPjIFqQywsA5?= =?iso-8859-1?Q?fUMjHKoF9Y4R07GFvPwPEjasjynMJ5yTIkYk/GwzG1EtoFW19Cml86Iw?= =?iso-8859-1?Q?=3D=3D?= Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-OriginatorOrg: epam.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: VI1PR03MB3710.eurprd03.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 9a50147d-7fb5-419f-14b4-08db6bf97f7b X-MS-Exchange-CrossTenant-originalarrivaltime: 13 Jun 2023 10:32:28.9708 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: b41b72d0-4e9f-4c26-8a69-f949f367c91d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: St9RhT52Mug8TNe7Ch+6hr4K8OeWO5drqHDdBSb3pt+waRLDHP2sWpWXxYOsZZVSSSE+HKtQ2XvTVXtvJZSgZAtYOjTValJRpddZPUsTwOI= X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR03MB10054 X-Proofpoint-GUID: JeKz8zX7fR2pCnLmRBophCnGYRxhoQqx X-Proofpoint-ORIG-GUID: JeKz8zX7fR2pCnLmRBophCnGYRxhoQqx X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.254,Aquarius:18.0.957,Hydra:6.0.573,FMLib:17.11.176.26 definitions=2023-06-13_04,2023-06-12_02,2023-05-22_02 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 priorityscore=1501 malwarescore=0 adultscore=0 spamscore=0 bulkscore=0 impostorscore=0 mlxlogscore=999 suspectscore=0 phishscore=0 lowpriorityscore=0 clxscore=1015 mlxscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2305260000 definitions=main-2306130093 From: Oleksandr Andrushchenko Xen and/or Dom0 may have put values in PCI_COMMAND which they expect to remain unaltered. PCI_COMMAND_SERR bit is a good example: while the guest's view of this will want to be zero initially, the host having set it to 1 may not easily be overwritten with 0, or else we'd effectively imply giving the guest control of the bit. Thus, PCI_COMMAND register needs proper emulation in order to honor host's settings. There are examples of emulators [1], [2] which already deal with PCI_COMMAN= D register emulation and it seems that at most they care about is the only IN= Tx bit (besides IO/memory enable and bus master which are write through). It could be because in order to properly emulate the PCI_COMMAND register we need to know about the whole PCI topology, e.g. if any setting in device= 's command register is aligned with the upstream port etc. This makes me think that because of this complexity others just ignore that= . Neither I think this can easily be done in Xen case. According to "PCI LOCAL BUS SPECIFICATION, REV. 3.0", section "6.2.2 Device Control" the reset state of the command register is typically 0, so when assigning a PCI device use 0 as the initial state for the guest's v= iew of the command register. For now our emulation only makes sure INTx is set according to the host requirements, i.e. depending on MSI/MSI-X enabled state. This implementation and the decision to only emulate INTx bit for now is based on the previous discussion at [3]. [1] https://github.com/qemu/qemu/blob/master/hw/xen/xen_pt_config_init.c#L3= 10 [2] https://github.com/projectacrn/acrn-hypervisor/blob/master/hypervisor/h= w/pci.c#L336 [3] https://patchwork.kernel.org/project/xen-devel/patch/20210903100831.177= 748-9-andr2000@gmail.com/ Signed-off-by: Oleksandr Andrushchenko --- lorc's rebase: check for the logic after rebase Since v6: - fold guest's logic into cmd_write - implement cmd_read, so we can report emulated INTx state to guests - introduce header->guest_cmd to hold the emulated state of the PCI_COMMAND register for guests Since v5: - add additional check for MSI-X enabled while altering INTX bit - make sure INTx disabled while guests enable MSI/MSI-X Since v3: - gate more code on CONFIG_HAS_MSI - removed logic for the case when MSI/MSI-X not enabled --- xen/drivers/vpci/header.c | 38 +++++++++++++++++++++++++++++++++++++- xen/drivers/vpci/msi.c | 4 ++++ xen/drivers/vpci/msix.c | 4 ++++ xen/include/xen/vpci.h | 2 ++ 4 files changed, 47 insertions(+), 1 deletion(-) diff --git a/xen/drivers/vpci/header.c b/xen/drivers/vpci/header.c index 0524fbd220..677b93226c 100644 --- a/xen/drivers/vpci/header.c +++ b/xen/drivers/vpci/header.c @@ -465,11 +465,27 @@ static int modify_bars(const struct pci_dev *pdev, ui= nt16_t cmd, bool rom_only) return 0; } =20 +/* TODO: Add proper emulation for all bits of the command register. */ static void cf_check cmd_write( const struct pci_dev *pdev, unsigned int reg, uint32_t cmd, void *data= ) { struct vpci_header *header =3D data; =20 + if ( !is_hardware_domain(pdev->domain) ) + { + struct vpci_header *header =3D data; + + header->guest_cmd =3D cmd; +#ifdef CONFIG_HAS_PCI_MSI + if ( pdev->vpci->msi->enabled || pdev->vpci->msix->enabled ) + /* + * Guest wants to enable INTx, but it can't be enabled + * if MSI/MSI-X enabled. + */ + cmd |=3D PCI_COMMAND_INTX_DISABLE; +#endif + } + /* * Let Dom0 play with all the bits directly except for the memory * decoding one. @@ -486,6 +502,19 @@ static void cf_check cmd_write( pci_conf_write16(pdev->sbdf, reg, cmd); } =20 +static uint32_t cmd_read(const struct pci_dev *pdev, unsigned int reg, + void *data) +{ + if ( !is_hardware_domain(pdev->domain) ) + { + struct vpci_header *header =3D data; + + return header->guest_cmd; + } + + return pci_conf_read16(pdev->sbdf, reg); +} + static void cf_check bar_write( const struct pci_dev *pdev, unsigned int reg, uint32_t val, void *data= ) { @@ -692,8 +721,15 @@ static int cf_check init_bars(struct pci_dev *pdev) return -EOPNOTSUPP; } =20 + /* + * According to "PCI LOCAL BUS SPECIFICATION, REV. 3.0", section "6.2.= 2 + * Device Control" the reset state of the command register is + * typically all 0's, so this is used as initial value for the guests. + */ + ASSERT(header->guest_cmd =3D=3D 0); + /* Setup a handler for the command register. */ - rc =3D vpci_add_register(pdev->vpci, vpci_hw_read16, cmd_write, PCI_CO= MMAND, + rc =3D vpci_add_register(pdev->vpci, cmd_read, cmd_write, PCI_COMMAND, 2, header); if ( rc ) return rc; diff --git a/xen/drivers/vpci/msi.c b/xen/drivers/vpci/msi.c index e7d1f916a0..687aef54d1 100644 --- a/xen/drivers/vpci/msi.c +++ b/xen/drivers/vpci/msi.c @@ -70,6 +70,10 @@ static void cf_check control_write( =20 if ( vpci_msi_arch_enable(msi, pdev, vectors) ) return; + + /* Make sure guest doesn't enable INTx while enabling MSI. */ + if ( !is_hardware_domain(pdev->domain) ) + pci_intx(pdev, false); } else vpci_msi_arch_disable(msi, pdev); diff --git a/xen/drivers/vpci/msix.c b/xen/drivers/vpci/msix.c index b5a7dfdf9c..e4b957d5f3 100644 --- a/xen/drivers/vpci/msix.c +++ b/xen/drivers/vpci/msix.c @@ -97,6 +97,10 @@ static void cf_check control_write( for ( i =3D 0; i < msix->max_entries; i++ ) if ( !msix->entries[i].masked && msix->entries[i].updated ) update_entry(&msix->entries[i], pdev, i); + + /* Make sure guest doesn't enable INTx while enabling MSI-X. */ + if ( !is_hardware_domain(pdev->domain) ) + pci_intx(pdev, false); } else if ( !new_enabled && msix->enabled ) { diff --git a/xen/include/xen/vpci.h b/xen/include/xen/vpci.h index 1e42a59c1d..fe100a8cb7 100644 --- a/xen/include/xen/vpci.h +++ b/xen/include/xen/vpci.h @@ -92,6 +92,8 @@ struct vpci { =20 /* Offset to the ROM BAR register if any. */ unsigned int rom_reg; + /* Guest view of the PCI_COMMAND register. */ + uint16_t guest_cmd; =20 /* * Store whether the ROM enable bit is set (doesn't imply ROM BAR --=20 2.40.1 From xen-devel-bounces@lists.xenproject.org Tue Jun 13 10:33:03 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 10:33:03 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548010.855813 (Exim 4.92) (envelope-from ) id 1q91Ka-0004sB-GW; Tue, 13 Jun 2023 10:32:56 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548010.855813; Tue, 13 Jun 2023 10:32:56 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q91Ka-0004qw-Ay; Tue, 13 Jun 2023 10:32:56 +0000 Received: by outflank-mailman (input) for mailman id 548010; Tue, 13 Jun 2023 10:32:55 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q91KZ-0001im-2G for xen-devel@lists.xenproject.org; Tue, 13 Jun 2023 10:32:55 +0000 Received: from mx0a-0039f301.pphosted.com (mx0a-0039f301.pphosted.com [148.163.133.242]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id a61e7bc9-09d5-11ee-b232-6b7b168915f2; Tue, 13 Jun 2023 12:32:52 +0200 (CEST) Received: from pps.filterd (m0174677.ppops.net [127.0.0.1]) by mx0a-0039f301.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 35D6YVNm012776; Tue, 13 Jun 2023 10:32:41 GMT Received: from eur02-db5-obe.outbound.protection.outlook.com (mail-db5eur02lp2104.outbound.protection.outlook.com [104.47.11.104]) by mx0a-0039f301.pphosted.com (PPS) with ESMTPS id 3r63wtu7t4-4 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Tue, 13 Jun 2023 10:32:41 +0000 Received: from VI1PR03MB3710.eurprd03.prod.outlook.com (2603:10a6:803:31::18) by DBAPR03MB6520.eurprd03.prod.outlook.com (2603:10a6:10:19d::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.46; Tue, 13 Jun 2023 10:32:34 +0000 Received: from VI1PR03MB3710.eurprd03.prod.outlook.com ([fe80::6fa2:d7b8:9bd4:1a51]) by VI1PR03MB3710.eurprd03.prod.outlook.com ([fe80::6fa2:d7b8:9bd4:1a51%5]) with mapi id 15.20.6455.045; Tue, 13 Jun 2023 10:32:34 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: a61e7bc9-09d5-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=erYGgcVaq8sCLME4yLu0RupUF6ma//sPm7x8PVqzRxfuPqVJvYtqW3QS35jR2x1NVIr6UJdmjJZaMWwGB1Yxp5aVEvOC2jVInATHGnRbJ69S4pi9SMRjw2d66ksAJwXtduGzkj+KV9VHvfV8ECYNm/R9lSpX+i9GZzaupE99iqEr/4M2nmqFmIJJb9POOPelP3hCJ5WiQnRrRtw8iELVfGJLCKla1jni1yyuKM4Zu3bB5LxQxVOFusEeSYWttt/31cabcQmudpEocfT9qPSTwWqSvaYuyNCVdii5g+bDRGB6SLfhoVsrCqT4L9cyh/cxMxLB43qjdtyYYuo3u/5owQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=Fu9nYGTzKNJyaJivkA/1i+SwTC+5h8xHonD698eXMgE=; b=YbKmgdO5I2dHVD4hSth8LVzTmyyXhOJoUdSyTWXlIzoQdjyu5sU/g9zPmbzhwdg+2I34gWzEFt6MM0ISFopI+Tv+Alo6mbiwZU52QEUtb7OUNEb1Y7hNRAUjuQUVJcpV0TaPQKR7Q6xrVcgjcIfKc+Sq2ChsD7LtTKwkNnyu98z8r7/k14FpA/qat6S3sXQ1pZMIafjBrscWlTKIjlPXi+7E7eGgwkiu/eQS1tkOktGSOT0mHQQt4BFmNKEzLQUyoCIuhRalif93atDS2kDvpQ4K5bAfpVN0bQ+/K8au8gfpbP2Ybr8NXpYyPGF1KQYDB/yYLnQO4qKCREO/8Zwyxw== 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 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=epam.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Fu9nYGTzKNJyaJivkA/1i+SwTC+5h8xHonD698eXMgE=; b=fAgPH2+Qmosdlflm0jek7vKYBFFotrMhnB2PTdb1p6Qheh/59ub49VBrQj3kDVCgwnR45q1nor78jNy1JmEG0xN5Lk3r14lboP4d4gjU7GubXf4cT8vugi/0j9NwRbFGEkCEptrDqa0kCAWvBbDdlGKjNT283eVunVKvDLAWfLnVeihSzBnEvN6/qF53dE7Vxw1a6RmGfhKoFG9NIuFdeqA2zN/T6O8k31RKseReF+R+RT+YD0yl4Kq+bBXs0hKj4S7t+2tc8kCMMrRy0EDpdKvFJu7WIEEg3o3tKBq4fwlp2BdnBiTnChqPd4Fmhb2S/1BE9azTg/vR/oKWfXKiPQ== From: Volodymyr Babchuk To: "xen-devel@lists.xenproject.org" CC: Oleksandr Andrushchenko , =?iso-8859-1?Q?Roger_Pau_Monn=E9?= , Andrew Cooper , George Dunlap , Jan Beulich , Julien Grall , Stefano Stabellini , Wei Liu Subject: [PATCH v7 10/12] vpci: add initial support for virtual PCI bus topology Thread-Topic: [PATCH v7 10/12] vpci: add initial support for virtual PCI bus topology Thread-Index: AQHZneJaL+74dDpvwk6p5MTZEcUOhg== Date: Tue, 13 Jun 2023 10:32:29 +0000 Message-ID: <20230613103159.524763-11-volodymyr_babchuk@epam.com> References: <20230613103159.524763-1-volodymyr_babchuk@epam.com> In-Reply-To: <20230613103159.524763-1-volodymyr_babchuk@epam.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-mailer: git-send-email 2.40.1 x-ms-publictraffictype: Email x-ms-traffictypediagnostic: VI1PR03MB3710:EE_|DBAPR03MB6520:EE_ x-ms-office365-filtering-correlation-id: da98dc9c-ebf3-452e-a8a1-08db6bf98013 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: g7SUrKsJ+EPYjtIadrZMznmzpgAjwFmC3Eh90FdW/XTHW2SlzoGI54q1LVk7Z48FBynbzyd44cZxod4B22dI7cQeeDwg+3fD0FEU0UuxIv1VEdETebFG59Br1FtUE6wV1bYqe0Idbr+XgWlwWDNZjd0UsjFcc6rgo3zSlbD5chRoc7F9zly0nx6NS86jaZvpk7H1ep1Y2f9kuHbhgqExjR4EqT+6qeUVN94a/rmrTvjDgx/Swnz87vGgF8ux78xI33JESbiGJDg2r4qFJUjthd0k9MX3Sp+Oh0Usj2uBa9SU1Q6WtGmPpvKS6BbxOZNTjja2rP4QABWLc/HPcSuSKeaMKLqiHzBvclnbojBaZtN0+XdSa76TeehkBAcOgz01cZI6bfRXCv7l8yD0CQu2pGrbkhIJgqf2ao6mKeQ74V0OIb6P5QWWbmPXSsQs5flOq/DyH/IdJsDQujoetvW5saQXHbXsCwcNbL7rmfUV2ns6Qgi34jEL43Z6iJ1lcqNaA6GEdgLviApiC1A9Zr5XN3VHZdzgiJvq89RIVao9E8d6f63iuuuuC2Y/WtdpUIHNrycUPR2HQgHisSfyA5S67HPQba8F01moyzTNBMZ94SjrITQ5aUplDzVggGmbN4tI x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VI1PR03MB3710.eurprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(396003)(366004)(136003)(346002)(376002)(39860400002)(451199021)(6486002)(6666004)(6512007)(36756003)(83380400001)(2616005)(38100700002)(86362001)(38070700005)(122000001)(55236004)(1076003)(6506007)(26005)(186003)(2906002)(66446008)(66476007)(5660300002)(54906003)(8936002)(8676002)(316002)(41300700001)(6916009)(4326008)(66946007)(66556008)(76116006)(91956017)(71200400001)(64756008)(478600001);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?iso-8859-1?Q?tCTa99BURWbrfdkk5sk5LZOgz8y/YRvg/PB/q3A4GsSDF9ojTiY1Lonqgr?= =?iso-8859-1?Q?xj2bpToznNkHl4mEONXc6oMll2F6seUPKRpikXSMY20i/NNq/OnoabnbE8?= =?iso-8859-1?Q?Iy+n1WcA3UWdBbgNNWtCzyW35/LTVLj/Zcnzj3lvd81wJHA+5WIz2WlJ7U?= =?iso-8859-1?Q?LSKFL4UiinstbcFSw/M0RXXatr4yGA/WGIM/lVt1YrTDaFRmKp1PlC5z8U?= =?iso-8859-1?Q?Jhlq87q9oZdtCCoX5LNIRbTqaSeLdcE3G1tOQAz5q+yrh4WNnx3rftx+7c?= =?iso-8859-1?Q?y0ud+zVZf2/AaXneeaAvan1Hb+gWwdinNH/8zKgKVBjPekx/af9fW0icA7?= =?iso-8859-1?Q?7DhrIlmth6SRmPnZjoQBSxW6fk/ug0YlpLTkV0gMkK9n4QPmuJ7o/KdpWV?= =?iso-8859-1?Q?WllGD53g/JSAhY8lTMYobLI49y5xgJpT0BcZ+yCzUxbyIvI3hPFXz90HIg?= =?iso-8859-1?Q?/Yb2IC18hw0Sn91yqWbLIP/0bnGh6adWK3EvuCb6Wsujh3Wv341WpFVx0n?= =?iso-8859-1?Q?rFRp3MQs5XW/v5cGjPLNE5q0OiA5t6ifQ10u2ltWkgtyoJyfK1qFJxWdbr?= =?iso-8859-1?Q?8wxqZws9zfDtsegf43w30QRqn0SGDjmhSZjT6T0lN6rIz3ykxA7J6Ue07B?= =?iso-8859-1?Q?L2V+TPVD0fPn4mlkwszvuoGyUCBfRf8pKXic2LEb4fp9f5QdxViVjb+D2n?= =?iso-8859-1?Q?bNRwceO1OtCVg1Ou8FF3uHHFN1sDpUWY0KXadm3JlHtMbtBoa8pZRSlmL6?= =?iso-8859-1?Q?IGxw+fX+0e1LKfFgoWNgEVkUtGySNVcbMsYHALeJ05PjF1H+FF9p79f0t5?= =?iso-8859-1?Q?q86OmeXa2L2dg+A5fBNT+jUk5KgXzpw1DbfuZc5aqL2dp2eYa5l6KcTklE?= =?iso-8859-1?Q?mbl8mM/Manm6JpPb79WItaLKtoPJ0UNiyEZIJZMOisCcmZ3KI5E/1ZPKxz?= =?iso-8859-1?Q?15OmCilNg+/BkmFPr/mTyKNq0Td62WhGRJgMNHoO1wiIsw12zQ2Qgs1LV6?= =?iso-8859-1?Q?J6jf4CZDoTWtQFqQiSwtdf7fs5bkju6rqgaEW2urFYvNJNkGRnAWXVZ8ay?= =?iso-8859-1?Q?ZObkgE1Lzrr8GVXeSauKetEdxFmDxqDgoxor3+86zasvLKLisPt6zNWvlg?= =?iso-8859-1?Q?GI5U/aVrlAIZdx+5wWKuV5FZ00tMJ2tVngHm6ZmS8x7Bnu/4t0ly2xXKD0?= =?iso-8859-1?Q?Inyh/MGRR8Jqk9uNvRikmzC188yncqz2beezY9udLTinLbLx6+fDPh5dzd?= =?iso-8859-1?Q?kaZs5uTlIWQct6KZ1TFuD3JYKtwrbE6vhKi9L7uFWgJ+AlsVxBLGOnjYn5?= =?iso-8859-1?Q?9McmDRNHRA6o6p6BXg+PwWxBJH67oA0Jocsw+38ZaVxo2rrIcZn/Cz6204?= =?iso-8859-1?Q?9v7bDLBF6xEOOOikS4hT08oPWdLxNKX0lVyREhTzUy4tc6P6cgjV3horFz?= =?iso-8859-1?Q?2SSx4DsnL1+ieek9FavLzAzQBjdggC3mOlscE+av9LdtqbUMVAhiZI/uKb?= =?iso-8859-1?Q?GasHld0j6VdbOfITp2j9YEre6EO1MLlI105jGciS+RB/A9CKwgEdbsZwa/?= =?iso-8859-1?Q?PzzHFK9ZfLub190ymoRvkyBzCQjWMBZC5NboPukwcfgFg/FJEA87wbb4GJ?= =?iso-8859-1?Q?76FjZIx0au06fD+InXXnNv8P+JqVIby9JgVJgVdAHw5xoUXf3kDeHsvg?= =?iso-8859-1?Q?=3D=3D?= Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-OriginatorOrg: epam.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: VI1PR03MB3710.eurprd03.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: da98dc9c-ebf3-452e-a8a1-08db6bf98013 X-MS-Exchange-CrossTenant-originalarrivaltime: 13 Jun 2023 10:32:29.6922 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: b41b72d0-4e9f-4c26-8a69-f949f367c91d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: hncphYA7eJcfvmPdHIs3M9ueIZ6XudQ356cKp3IoZxcvwAA7OhaVKsTGe4TRhWLRZWVU3YWAhvSm2eK8Q963dKKagKKvNRWejai4/4UKt3g= X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBAPR03MB6520 X-Proofpoint-GUID: uirJe6HoIbNriTB80PtcRSnsSMXvlJWS X-Proofpoint-ORIG-GUID: uirJe6HoIbNriTB80PtcRSnsSMXvlJWS X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.254,Aquarius:18.0.957,Hydra:6.0.573,FMLib:17.11.176.26 definitions=2023-06-13_04,2023-06-12_02,2023-05-22_02 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 suspectscore=0 lowpriorityscore=0 impostorscore=0 clxscore=1015 mlxscore=0 phishscore=0 mlxlogscore=999 priorityscore=1501 spamscore=0 bulkscore=0 malwarescore=0 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2305260000 definitions=main-2306130093 From: Oleksandr Andrushchenko Assign SBDF to the PCI devices being passed through with bus 0. The resulting topology is where PCIe devices reside on the bus 0 of the root complex itself (embedded endpoints). This implementation is limited to 32 devices which are allowed on a single PCI bus. Please note, that at the moment only function 0 of a multifunction device can be passed through. Signed-off-by: Oleksandr Andrushchenko --- Since v6: - re-work wrt new locking scheme Since v5: - s/vpci_add_virtual_device/add_virtual_device and make it static - call add_virtual_device from vpci_assign_device and do not use REGISTER_VPCI_INIT machinery - add pcidevs_locked ASSERT - use DECLARE_BITMAP for vpci_dev_assigned_map Since v4: - moved and re-worked guest sbdf initializers - s/set_bit/__set_bit - s/clear_bit/__clear_bit - minor comment fix s/Virtual/Guest/ - added VPCI_MAX_VIRT_DEV constant (PCI_SLOT(~0) + 1) which will be used later for counting the number of MMIO handlers required for a guest (Julien) Since v3: - make use of VPCI_INIT - moved all new code to vpci.c which belongs to it - changed open-coded 31 to PCI_SLOT(~0) - added comments and code to reject multifunction devices with functions other than 0 - updated comment about vpci_dev_next and made it unsigned int - implement roll back in case of error while assigning/deassigning devices - s/dom%pd/%pd Since v2: - remove casts that are (a) malformed and (b) unnecessary - add new line for better readability - remove CONFIG_HAS_VPCI_GUEST_SUPPORT ifdef's as the relevant vPCI functions are now completely gated with this config - gate common code with CONFIG_HAS_VPCI_GUEST_SUPPORT New in v2 --- xen/drivers/vpci/vpci.c | 70 ++++++++++++++++++++++++++++++++++++++++- xen/include/xen/sched.h | 8 +++++ xen/include/xen/vpci.h | 11 +++++++ 3 files changed, 88 insertions(+), 1 deletion(-) diff --git a/xen/drivers/vpci/vpci.c b/xen/drivers/vpci/vpci.c index b542ddaf7b..9dacb70bf3 100644 --- a/xen/drivers/vpci/vpci.c +++ b/xen/drivers/vpci/vpci.c @@ -98,6 +98,9 @@ int vpci_add_handlers(struct pci_dev *pdev) =20 INIT_LIST_HEAD(&vpci->handlers); spin_lock_init(&vpci->lock); +#ifdef CONFIG_HAS_VPCI_GUEST_SUPPORT + vpci->guest_sbdf.sbdf =3D ~0; +#endif =20 write_lock(&pdev->domain->vpci_rwlock); =20 @@ -121,6 +124,62 @@ int vpci_add_handlers(struct pci_dev *pdev) } =20 #ifdef CONFIG_HAS_VPCI_GUEST_SUPPORT +static int add_virtual_device(struct pci_dev *pdev) +{ + struct domain *d =3D pdev->domain; + pci_sbdf_t sbdf =3D { 0 }; + unsigned long new_dev_number; + + if ( is_hardware_domain(d) ) + return 0; + + ASSERT(pcidevs_locked()); + + /* + * Each PCI bus supports 32 devices/slots at max or up to 256 when + * there are multi-function ones which are not yet supported. + */ + if ( pdev->info.is_extfn ) + { + gdprintk(XENLOG_ERR, "%pp: only function 0 passthrough supported\n= ", + &pdev->sbdf); + return -EOPNOTSUPP; + } + + new_dev_number =3D find_first_zero_bit(d->vpci_dev_assigned_map, + VPCI_MAX_VIRT_DEV); + if ( new_dev_number >=3D VPCI_MAX_VIRT_DEV ) + return -ENOSPC; + + __set_bit(new_dev_number, &d->vpci_dev_assigned_map); + + /* + * Both segment and bus number are 0: + * - we emulate a single host bridge for the guest, e.g. segment 0 + * - with bus 0 the virtual devices are seen as embedded + * endpoints behind the root complex + * + * TODO: add support for multi-function devices. + */ + sbdf.devfn =3D PCI_DEVFN(new_dev_number, 0); + pdev->vpci->guest_sbdf =3D sbdf; + + return 0; + +} + +static void vpci_remove_virtual_device(const struct pci_dev *pdev) +{ + write_lock(&pdev->domain->vpci_rwlock); + if ( pdev->vpci ) + { + __clear_bit(pdev->vpci->guest_sbdf.dev, + &pdev->domain->vpci_dev_assigned_map); + pdev->vpci->guest_sbdf.sbdf =3D ~0; + } + write_unlock(&pdev->domain->vpci_rwlock); +} + /* Notify vPCI that device is assigned to guest. */ int vpci_assign_device(struct pci_dev *pdev) { @@ -131,8 +190,16 @@ int vpci_assign_device(struct pci_dev *pdev) =20 rc =3D vpci_add_handlers(pdev); if ( rc ) - vpci_deassign_device(pdev); + goto fail; + + rc =3D add_virtual_device(pdev); + if ( rc ) + goto fail; + + return 0; =20 + fail: + vpci_deassign_device(pdev); return rc; } =20 @@ -142,6 +209,7 @@ void vpci_deassign_device(struct pci_dev *pdev) if ( !has_vpci(pdev->domain) ) return; =20 + vpci_remove_virtual_device(pdev); vpci_remove_device(pdev); } #endif /* CONFIG_HAS_VPCI_GUEST_SUPPORT */ diff --git a/xen/include/xen/sched.h b/xen/include/xen/sched.h index 78227b7a1d..312a692b31 100644 --- a/xen/include/xen/sched.h +++ b/xen/include/xen/sched.h @@ -463,6 +463,14 @@ struct domain #ifdef CONFIG_HAS_VPCI rwlock_t vpci_rwlock; #endif +#ifdef CONFIG_HAS_VPCI_GUEST_SUPPORT + /* + * The bitmap which shows which device numbers are already used by the + * virtual PCI bus topology and is used to assign a unique SBDF to the + * next passed through virtual PCI device. + */ + DECLARE_BITMAP(vpci_dev_assigned_map, VPCI_MAX_VIRT_DEV); +#endif #endif =20 #ifdef CONFIG_HAS_PASSTHROUGH diff --git a/xen/include/xen/vpci.h b/xen/include/xen/vpci.h index fe100a8cb7..3cb5d63e84 100644 --- a/xen/include/xen/vpci.h +++ b/xen/include/xen/vpci.h @@ -21,6 +21,13 @@ typedef int vpci_register_init_t(struct pci_dev *dev); =20 #define VPCI_ECAM_BDF(addr) (((addr) & 0x0ffff000) >> 12) =20 +/* + * Maximum number of devices supported by the virtual bus topology: + * each PCI bus supports 32 devices/slots at max or up to 256 when + * there are multi-function ones which are not yet supported. + */ +#define VPCI_MAX_VIRT_DEV (PCI_SLOT(~0) + 1) + #define REGISTER_VPCI_INIT(x, p) \ static vpci_register_init_t *const x##_entry \ __used_section(".data.vpci." p) =3D x @@ -160,6 +167,10 @@ struct vpci { struct vpci_arch_msix_entry arch; } entries[]; } *msix; +#ifdef CONFIG_HAS_VPCI_GUEST_SUPPORT + /* Guest SBDF of the device. */ + pci_sbdf_t guest_sbdf; +#endif #endif }; =20 --=20 2.40.1 From xen-devel-bounces@lists.xenproject.org Tue Jun 13 10:33:04 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 10:33:04 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548006.855782 (Exim 4.92) (envelope-from ) id 1q91KV-0003iS-Rl; Tue, 13 Jun 2023 10:32:51 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548006.855782; Tue, 13 Jun 2023 10:32:51 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q91KV-0003hc-HB; Tue, 13 Jun 2023 10:32:51 +0000 Received: by outflank-mailman (input) for mailman id 548006; Tue, 13 Jun 2023 10:32:49 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q91KT-0001il-Km for xen-devel@lists.xenproject.org; Tue, 13 Jun 2023 10:32:49 +0000 Received: from mx0b-0039f301.pphosted.com (mx0b-0039f301.pphosted.com [148.163.137.242]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id a33706d1-09d5-11ee-8611-37d641c3527e; Tue, 13 Jun 2023 12:32:47 +0200 (CEST) Received: from pps.filterd (m0174683.ppops.net [127.0.0.1]) by mx0b-0039f301.pphosted.com (8.17.1.5/8.17.1.5) with ESMTP id 35DAO5Ke019280; Tue, 13 Jun 2023 10:32:38 GMT Received: from eur05-am6-obe.outbound.protection.outlook.com (mail-am6eur05lp2106.outbound.protection.outlook.com [104.47.18.106]) by mx0b-0039f301.pphosted.com (PPS) with ESMTPS id 3r5yahmgn9-8 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Tue, 13 Jun 2023 10:32:37 +0000 Received: from VI1PR03MB3710.eurprd03.prod.outlook.com (2603:10a6:803:31::18) by DU0PR03MB9706.eurprd03.prod.outlook.com (2603:10a6:10:44e::5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Tue, 13 Jun 2023 10:32:32 +0000 Received: from VI1PR03MB3710.eurprd03.prod.outlook.com ([fe80::6fa2:d7b8:9bd4:1a51]) by VI1PR03MB3710.eurprd03.prod.outlook.com ([fe80::6fa2:d7b8:9bd4:1a51%5]) with mapi id 15.20.6455.045; Tue, 13 Jun 2023 10:32:32 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: a33706d1-09d5-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=i682FnO/2vFekdQsH3XqEGLFo7+c87BEyM7znEYjuBIMEoCFzw7bLDfQJpDL9XASAuYmVXsJnCQ5OI1jV9woXxZJ4CUEPSkZWX8ASCcq0Us1EyHYz4RHPSfC4mJNzcFEHcNsiVz5rgaoovAdIzyMffHye+uGPW8xUzqUx7xGHWFVwt8EdkfWDnncQ8+3oY2tT5xM3QJVvz/tkyYhZlS4p+AP8hprDe4ye7OGd7odyJ9Lg1STNTumJW/X5xmtZgxTKe/6uLztztpZ5U2JBVgf3KpZhVMWPBkJ950rRuZtEbKXOwL4vVOu2nNyv3OAM/ezlvI28dQb5oPAJZquUEr/xQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=8fpDlfsuLlhQ46EF1ZKjojVmfi+Mg0Uj5DZlq5hKl7Q=; b=CVziUQyJa5V5DbfS8EB8w4vSquLqS+7z3YSZX9BZzIvSc2q81SfQSCavXa68GHUyR8Mlg2DTNoo/fwGZHp2X+20Xu31gvBRQGc9Z/bWM59TJ9BfJDjymVeJ0aLwEu3+YvBxT+7EIJFMQt2jX/cNEkGQIApzc9esh5Qb6DY9E3UTFZO8SIiy4lg9wvSTY+hjNB2CzSbBmq5eOfc/+ojmRFVV5V1ycaQObXRCcI1n1OE97rKjnx8xxmAGUrZpGTRYRbCB2bRJ+60aOjpzIabsk5zhbXXaUMF+/9MHRGQdM7WMDWD/7ba2y7FbjbDWbZWhJEwJaghrPAEyM18yb4r69hQ== 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 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=epam.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=8fpDlfsuLlhQ46EF1ZKjojVmfi+Mg0Uj5DZlq5hKl7Q=; b=HENW7E5vrl3CxFPEySgDfxfVQORodNhMPjHsgeaF4iQ7CzssAMp7pBFzJdoRtixln6rICsJoDF2oq/WblD24sqQWZlMSczzrqi9v5/Uw5LCFwSrt7dmif97WhZ5u7sWRBShrgbm177D3NaM/nd/Bpd1UUF60lv10TWPFtwHFtLRTBhjauzDNO5WoHHLiKA4JzcOwms/VoKQA3CkRW4NpHXyAIg6ofPQehwG6pYqwvbPFhKqoaxnFQ+IDmO9oL3rXqNUF7pBrQU+sSQfB/O8YihMxMG3JNrY3qTFxRZLCiIgaLWSFmPjR0WJleZI5Z51tlEaWR+RdCFanZub65R79hA== From: Volodymyr Babchuk To: "xen-devel@lists.xenproject.org" CC: Oleksandr Andrushchenko , =?iso-8859-1?Q?Roger_Pau_Monn=E9?= Subject: [PATCH v7 06/12] vpci/header: handle p2m range sets per BAR Thread-Topic: [PATCH v7 06/12] vpci/header: handle p2m range sets per BAR Thread-Index: AQHZneJa4eA0vie3HEayzZAXloxz2A== Date: Tue, 13 Jun 2023 10:32:28 +0000 Message-ID: <20230613103159.524763-7-volodymyr_babchuk@epam.com> References: <20230613103159.524763-1-volodymyr_babchuk@epam.com> In-Reply-To: <20230613103159.524763-1-volodymyr_babchuk@epam.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-mailer: git-send-email 2.40.1 x-ms-publictraffictype: Email x-ms-traffictypediagnostic: VI1PR03MB3710:EE_|DU0PR03MB9706:EE_ x-ms-office365-filtering-correlation-id: e3cfede5-87c7-42e5-bc26-08db6bf97edd x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: xNaS5P8be9C7m7mg/jCOzLJITnRwmkpjUyaQDXTw0vA02LJfEGHOLd6iN0o4fp0eu6Zpvm98NkazNj8ayT8Ej7l5sO1ZuWUfhiHpUl+1EyIKYsVYn4+WS27EffRcHuJc+hrPbW50XEIeLyHxx8ebF9rtmgheqXRoDT0iqSMc4qBUWUlm789wDyN0S4g6/NDAdDDv0TVFQfVkc77WcddDySgq9QnpeRoHsXC4RqyMccvZC9gU6KfcClx/S55JSxeb6Vy/kWgB+1Tn9ESz2DUXlPvVOTpQUIfi9WdpsTWMgT9H24Pxy3OTJBDby9gl/E61cTf9Mpyz/W938/Tu3eVPkNNHcGwwLIRrtLMskSmzmTfXrIuAknp/pWYgbmGmgMeT/sXP41TFeePGUyF9RcphRv2dnqaK0dFr0uf6WZ3wdtmnxOXsyUYf49puwAJuLDicKgX6O14I/PfYK/wMrQMCIXseMMeW7vf7q+Zb1qnpx3+s1KUcctTbGDDYSKnU+FZ7P/wKKNehaxwpmcdmZ1Dc+8lWSgWajTm5yYNe64lUxGgwKXUm815YyZPYZnMS88yqpyh3hFSCDqEZheq0cebtWLTK4Ntk3NqPSDCQZ7K2Bkihw0NmqUGIqnmu1rvbgEsZ x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VI1PR03MB3710.eurprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(396003)(376002)(136003)(346002)(366004)(451199021)(91956017)(64756008)(76116006)(66556008)(66446008)(4326008)(6916009)(66476007)(71200400001)(5660300002)(66946007)(41300700001)(8936002)(8676002)(316002)(36756003)(54906003)(30864003)(83380400001)(478600001)(2906002)(6486002)(38100700002)(6666004)(186003)(6506007)(26005)(1076003)(6512007)(86362001)(55236004)(38070700005)(2616005)(122000001);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?iso-8859-1?Q?FeHgA9GOlWEF2kYD8c9JZF8O7gJwdNUSg71a/V+n5a4zaZuw3NUcNUVKNf?= =?iso-8859-1?Q?tv5vAMXYS/MvnScfFgZx8IaqrTBiNmdMl1/M1HlCvA6NgGiFp4M1Mvz3n3?= =?iso-8859-1?Q?OXjOATXiwS5Ys+ZCR1U8zuUX+Q7kGm80S8Q3ZeC8eQpz+J205II/TI4hq1?= =?iso-8859-1?Q?FR1mhJNAY/GQxLCOlFVpsSV+xP8eEIf5UoZaAJVQZUO3oMkDwjXh9T2OCs?= =?iso-8859-1?Q?hPs7C0RDibXf9vwC/+ILjH/PzNEhown44AsDKAywK3lkT71i75k671fs2K?= =?iso-8859-1?Q?9wArfD+dHKZJoDp/nGeQMVw5OsmXER9UcE/Trcw4/6j8phHb3vSMySc3K0?= =?iso-8859-1?Q?7PbdD02dhZ0vJK+L8GAC9rOb/Lxg7JPlBE8tJRqie2OcblK2rpaUPY6MVN?= =?iso-8859-1?Q?OvRCHGrDpGw+21vPAgItln18l8jkn8AurSkdTo8M/alEmZJiOfGq0Modik?= =?iso-8859-1?Q?MbbhAca760gEsQTuXlXV36RG56f1l7xNzhdZVCrFrL0OJ2Il4HpAFSTYPh?= =?iso-8859-1?Q?g7FoBwaiQ0TB2jLDMGZGX0msNjvSrO88Mf97LIHLjY/rDrbPdnmrBx1Z3a?= =?iso-8859-1?Q?KpopUtt9A/OgobwuFTtTeOmnsRcP/+dvRdelIks8FjzMkKXrt7+QQEkFBl?= =?iso-8859-1?Q?7KbVTYZ+j/z5qjIihfMfivvFWNyNLskuiBlCosYWToXc/Z5uw3R342vtoP?= =?iso-8859-1?Q?4l/HRx3rO0crLZJUUBrcQKgwOKaMODRnoVoODvdw2QEQhyFff1fvzLEL3M?= =?iso-8859-1?Q?4XGRwbHp97+gp5gV95Te/XsfHjWaiQrsRXi/+Y2Re1Ipjo2i+hINAcYw1T?= =?iso-8859-1?Q?uOWDJxaRXsiNwvIf+ebWps4YGtCRZP7L2J0r9Cf9SKi0PFXiyU7vZOkFQ2?= =?iso-8859-1?Q?Arq96KHciUV4xQ1dmRWzWBxS80hnzK0vFm5aHxsy6flB89vqGWz/TC+xGK?= =?iso-8859-1?Q?DAo+PLY0nWdN4gIDK1I8PRgZxkm8v4Al6zwqjDn8VJskhZsPJjzCvMtRrt?= =?iso-8859-1?Q?Sokto8pNAlSXLPW0LQ4a/TXQOcvClS24Nt/saaNivTfCs3kH5igpdipib8?= =?iso-8859-1?Q?IaHQKXj8U4H4ZYwnMmci4YNmrjofx7kTuYPKI42O6ZBW3IJjaaAxWBWMgd?= =?iso-8859-1?Q?HdLllb/bJ/IpPzyfCRc7qpk2D/gAnpJd46fyQ2YNUHsBlbaOsXgLm0KAG6?= =?iso-8859-1?Q?tT8kBEr1ehJ41wZETETYREZja4+qOMwGiTJCvpmujWyOOy/Y/31N3Cq2JN?= =?iso-8859-1?Q?gzjoHuGxAXGXxSHcsz3WMEhkzf2wdjSKPVSle4tEfTEyjMLKzGVsh0v4Xc?= =?iso-8859-1?Q?kAfMIqeTdeyOSpQY5pqeb3j0/ocsFA2i3Yf2uMGC+OwQrxQB2LFms1KzkA?= =?iso-8859-1?Q?YztSHsEctQY63uIa5uNVOAfUFzDflZqq21JpgfIoivOsfPYnTZ17AoU1Fj?= =?iso-8859-1?Q?L388DfztdcTt5EovtqFeDDLNMsyCK+HPo3cjAosmmzbQjZxLyQosaJ+LYv?= =?iso-8859-1?Q?NtN2D7yiUmtS7jnvVDlgE1YRZiOCWMWwi4ckT3NmnajXiMXFoYV7ybgTlY?= =?iso-8859-1?Q?ArFSXwcMF/FoMxuPGrH+mu528JtrlhIMDuYbT5oOBnVqjA1NWW4+QxiHO5?= =?iso-8859-1?Q?gThAMkh7n15tnbgOWZxozCbfXnaVD/9nWwJ1WRzACroZUGKI9+nLVBRg?= =?iso-8859-1?Q?=3D=3D?= Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-OriginatorOrg: epam.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: VI1PR03MB3710.eurprd03.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: e3cfede5-87c7-42e5-bc26-08db6bf97edd X-MS-Exchange-CrossTenant-originalarrivaltime: 13 Jun 2023 10:32:28.4558 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: b41b72d0-4e9f-4c26-8a69-f949f367c91d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: XsvG42tA7LQvOIzfliyyp11pXyvMgLeAvLkKvNclUWNmdqFsJRat6NphIucuHL+y4cQHH+T8wekFpeTNQOD9EOKVHxmUTWtCLgm4gc+Axa4= X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU0PR03MB9706 X-Proofpoint-GUID: Rm6fJ6vrkbwmHxpQZIsvhvklPZFcNp2N X-Proofpoint-ORIG-GUID: Rm6fJ6vrkbwmHxpQZIsvhvklPZFcNp2N X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.254,Aquarius:18.0.957,Hydra:6.0.573,FMLib:17.11.176.26 definitions=2023-06-13_04,2023-06-12_02,2023-05-22_02 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 mlxscore=0 suspectscore=0 mlxlogscore=999 spamscore=0 malwarescore=0 clxscore=1015 lowpriorityscore=0 bulkscore=0 priorityscore=1501 phishscore=0 impostorscore=0 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2305260000 definitions=main-2306130093 From: Oleksandr Andrushchenko Instead of handling a single range set, that contains all the memory regions of all the BARs and ROM, have them per BAR. As the range sets are now created when a PCI device is added and destroyed when it is removed so make them named and accounted. Note that rangesets were chosen here despite there being only up to 3 separate ranges in each set (typically just 1). But rangeset per BAR was chosen for the ease of implementation and existing code re-usability. This is in preparation of making non-identity mappings in p2m for the MMIOs= . Signed-off-by: Oleksandr Andrushchenko --- Since v6: - update according to the new locking scheme - remove odd fail label in modify_bars Since v5: - fix comments - move rangeset allocation to init_bars and only allocate for MAPPABLE BARs - check for overlap with the already setup BAR ranges Since v4: - use named range sets for BARs (Jan) - changes required by the new locking scheme - updated commit message (Jan) Since v3: - re-work vpci_cancel_pending accordingly to the per-BAR handling - s/num_mem_ranges/map_pending and s/uint8_t/bool - ASSERT(bar->mem) in modify_bars - create and destroy the rangesets on add/remove --- xen/drivers/vpci/header.c | 238 +++++++++++++++++++++++++++----------- xen/drivers/vpci/vpci.c | 5 + xen/include/xen/vpci.h | 3 +- 3 files changed, 180 insertions(+), 66 deletions(-) diff --git a/xen/drivers/vpci/header.c b/xen/drivers/vpci/header.c index 8eebbf968b..8e722857d6 100644 --- a/xen/drivers/vpci/header.c +++ b/xen/drivers/vpci/header.c @@ -141,63 +141,102 @@ static void modify_decoding(const struct pci_dev *pd= ev, uint16_t cmd, =20 bool vpci_process_pending(struct vcpu *v) { - if ( v->vpci.mem ) + struct pci_dev *pdev =3D v->vpci.pdev; + + if ( !pdev ) + return false; + + read_lock(&v->domain->vpci_rwlock); + + if ( v->vpci.map_pending ) { struct map_data data =3D { .d =3D v->domain, .map =3D v->vpci.cmd & PCI_COMMAND_MEMORY, }; - int rc =3D rangeset_consume_ranges(v->vpci.mem, map_range, &data); - - if ( rc =3D=3D -ERESTART ) - return true; - - read_lock(&v->domain->vpci_rwlock); - spin_lock(&v->vpci.pdev->vpci->lock); - /* Disable memory decoding unconditionally on failure. */ - modify_decoding(v->vpci.pdev, - rc ? v->vpci.cmd & ~PCI_COMMAND_MEMORY : v->vpci.c= md, - !rc && v->vpci.rom_only); - spin_unlock(&v->vpci.pdev->vpci->lock); - read_unlock(&v->domain->vpci_rwlock); - - rangeset_destroy(v->vpci.mem); - v->vpci.mem =3D NULL; - if ( rc ) - /* - * FIXME: in case of failure remove the device from the domain= . - * Note that there might still be leftover mappings. While thi= s is - * safe for Dom0, for DomUs the domain will likely need to be - * killed in order to avoid leaking stale p2m mappings on - * failure. - */ - vpci_remove_device(v->vpci.pdev); + struct vpci_header *header =3D &pdev->vpci->header; + unsigned int i; + + for ( i =3D 0; i < ARRAY_SIZE(header->bars); i++ ) + { + struct vpci_bar *bar =3D &header->bars[i]; + int rc; + + if ( rangeset_is_empty(bar->mem) ) + continue; + + rc =3D rangeset_consume_ranges(bar->mem, map_range, &data); + + if ( rc =3D=3D -ERESTART ) + { + read_unlock(&v->domain->vpci_rwlock); + return true; + } + + spin_lock(&pdev->vpci->lock); + /* Disable memory decoding unconditionally on failure. */ + modify_decoding(pdev, rc ? v->vpci.cmd & ~PCI_COMMAND_MEMORY : + v->vpci.cmd, !rc && v->vpci.rom_onl= y); + spin_unlock(&pdev->vpci->lock); + + if ( rc ) + { + /* + * FIXME: in case of failure remove the device from the do= main. + * Note that there might still be leftover mappings. While= this + * is safe for Dom0, for DomUs the domain needs to be kill= ed in + * order to avoid leaking stale p2m mappings on failure. + */ + v->vpci.map_pending =3D false; + read_unlock(&v->domain->vpci_rwlock); + + if ( is_hardware_domain(v->domain) ) + vpci_remove_device(pdev); + else + domain_crash(v->domain); + + return false; + } + } + + v->vpci.map_pending =3D false; } =20 + read_unlock(&v->domain->vpci_rwlock); + return false; } =20 static int __init apply_map(struct domain *d, const struct pci_dev *pdev, - struct rangeset *mem, uint16_t cmd) + uint16_t cmd) { struct map_data data =3D { .d =3D d, .map =3D true }; - int rc; + struct vpci_header *header =3D &pdev->vpci->header; + int rc =3D 0; + unsigned int i; =20 ASSERT(rw_is_write_locked(&d->vpci_rwlock)); =20 - while ( (rc =3D rangeset_consume_ranges(mem, map_range, &data)) =3D=3D= -ERESTART ) + for ( i =3D 0; i < ARRAY_SIZE(header->bars); i++ ) { - /* - * It's safe to drop and reacquire the lock in this context - * without risking pdev disappearing because devices cannot be - * removed until the initial domain has been started. - */ - write_unlock(&d->vpci_rwlock); - process_pending_softirqs(); - write_lock(&d->vpci_rwlock); - } + struct vpci_bar *bar =3D &header->bars[i]; + + if ( rangeset_is_empty(bar->mem) ) + continue; =20 - rangeset_destroy(mem); + while ( (rc =3D rangeset_consume_ranges(bar->mem, map_range, + &data)) =3D=3D -ERESTART ) + { + /* + * It's safe to drop and reacquire the lock in this context + * without risking pdev disappearing because devices cannot be + * removed until the initial domain has been started. + */ + write_unlock(&d->vpci_rwlock); + process_pending_softirqs(); + write_lock(&d->vpci_rwlock); + } + } if ( !rc ) modify_decoding(pdev, cmd, false); =20 @@ -205,10 +244,12 @@ static int __init apply_map(struct domain *d, const s= truct pci_dev *pdev, } =20 static void defer_map(struct domain *d, struct pci_dev *pdev, - struct rangeset *mem, uint16_t cmd, bool rom_only) + uint16_t cmd, bool rom_only) { struct vcpu *curr =3D current; =20 + ASSERT(!!rw_is_write_locked(&pdev->domain->vpci_rwlock)); + /* * FIXME: when deferring the {un}map the state of the device should no= t * be trusted. For example the enable bit is toggled after the device @@ -216,7 +257,7 @@ static void defer_map(struct domain *d, struct pci_dev = *pdev, * started for the same device if the domain is not well-behaved. */ curr->vpci.pdev =3D pdev; - curr->vpci.mem =3D mem; + curr->vpci.map_pending =3D true; curr->vpci.cmd =3D cmd; curr->vpci.rom_only =3D rom_only; /* @@ -231,30 +272,31 @@ static void defer_map(struct domain *d, struct pci_de= v *pdev, static int modify_bars(const struct pci_dev *pdev, uint16_t cmd, bool rom_= only) { struct vpci_header *header =3D &pdev->vpci->header; - struct rangeset *mem =3D rangeset_new(NULL, NULL, 0); struct pci_dev *tmp, *dev =3D NULL; const struct vpci_msix *msix =3D pdev->vpci->msix; - unsigned int i; + unsigned int i, j; int rc; - - if ( !mem ) - return -ENOMEM; + bool map_pending; =20 /* - * Create a rangeset that represents the current device BARs memory re= gion - * and compare it against all the currently active BAR memory regions.= If - * an overlap is found, subtract it from the region to be mapped/unmap= ped. + * Create a rangeset per BAR that represents the current device memory + * region and compare it against all the currently active BAR memory + * regions. If an overlap is found, subtract it from the region to be + * mapped/unmapped. * - * First fill the rangeset with all the BARs of this device or with th= e ROM + * First fill the rangesets with the BARs of this device or with the R= OM * BAR only, depending on whether the guest is toggling the memory dec= ode * bit of the command register, or the enable bit of the ROM BAR regis= ter. */ for ( i =3D 0; i < ARRAY_SIZE(header->bars); i++ ) { - const struct vpci_bar *bar =3D &header->bars[i]; + struct vpci_bar *bar =3D &header->bars[i]; unsigned long start =3D PFN_DOWN(bar->addr); unsigned long end =3D PFN_DOWN(bar->addr + bar->size - 1); =20 + if ( !bar->mem ) + continue; + if ( !MAPPABLE_BAR(bar) || (rom_only ? bar->type !=3D VPCI_BAR_ROM : (bar->type =3D=3D VPCI_BAR_ROM && !header->rom_en= abled)) || @@ -270,14 +312,31 @@ static int modify_bars(const struct pci_dev *pdev, ui= nt16_t cmd, bool rom_only) continue; } =20 - rc =3D rangeset_add_range(mem, start, end); + rc =3D rangeset_add_range(bar->mem, start, end); if ( rc ) { printk(XENLOG_G_WARNING "Failed to add [%lx, %lx]: %d\n", start, end, rc); - rangeset_destroy(mem); return rc; } + + /* Check for overlap with the already setup BAR ranges. */ + for ( j =3D 0; j < i; j++ ) + { + struct vpci_bar *bar =3D &header->bars[j]; + + if ( rangeset_is_empty(bar->mem) ) + continue; + + rc =3D rangeset_remove_range(bar->mem, start, end); + if ( rc ) + { + printk(XENLOG_G_WARNING + "Failed to remove overlapping range [%lx, %lx]: %d\= n", + start, end, rc); + return rc; + } + } } =20 /* Remove any MSIX regions if present. */ @@ -287,14 +346,21 @@ static int modify_bars(const struct pci_dev *pdev, ui= nt16_t cmd, bool rom_only) unsigned long end =3D PFN_DOWN(vmsix_table_addr(pdev->vpci, i) + vmsix_table_size(pdev->vpci, i) - 1); =20 - rc =3D rangeset_remove_range(mem, start, end); - if ( rc ) + for ( j =3D 0; j < ARRAY_SIZE(header->bars); j++ ) { - printk(XENLOG_G_WARNING - "Failed to remove MSIX table [%lx, %lx]: %d\n", - start, end, rc); - rangeset_destroy(mem); - return rc; + const struct vpci_bar *bar =3D &header->bars[j]; + + if ( rangeset_is_empty(bar->mem) ) + continue; + + rc =3D rangeset_remove_range(bar->mem, start, end); + if ( rc ) + { + printk(XENLOG_G_WARNING + "Failed to remove MSIX table [%lx, %lx]: %d\n", + start, end, rc); + return rc; + } } } =20 @@ -327,7 +393,8 @@ static int modify_bars(const struct pci_dev *pdev, uint= 16_t cmd, bool rom_only) unsigned long start =3D PFN_DOWN(bar->addr); unsigned long end =3D PFN_DOWN(bar->addr + bar->size - 1); =20 - if ( !bar->enabled || !rangeset_overlaps_range(mem, start, end= ) || + if ( !bar->enabled || + !rangeset_overlaps_range(bar->mem, start, end) || /* * If only the ROM enable bit is toggled check against ot= her * BARs in the same device for overlaps, but not against = the @@ -336,12 +403,11 @@ static int modify_bars(const struct pci_dev *pdev, ui= nt16_t cmd, bool rom_only) (rom_only && tmp =3D=3D pdev && bar->type =3D=3D VPCI_BAR= _ROM) ) continue; =20 - rc =3D rangeset_remove_range(mem, start, end); + rc =3D rangeset_remove_range(bar->mem, start, end); if ( rc ) { printk(XENLOG_G_WARNING "Failed to remove [%lx, %lx]: %d\n= ", start, end, rc); - rangeset_destroy(mem); pcidevs_unlock(); return rc; } @@ -362,10 +428,23 @@ static int modify_bars(const struct pci_dev *pdev, ui= nt16_t cmd, bool rom_only) * will always be to establish mappings and process all the BARs. */ ASSERT((cmd & PCI_COMMAND_MEMORY) && !rom_only); - return apply_map(pdev->domain, pdev, mem, cmd); + return apply_map(pdev->domain, pdev, cmd); } =20 - defer_map(dev->domain, dev, mem, cmd, rom_only); + /* Find out how many memory ranges has left after MSI and overlaps. */ + map_pending =3D false; + for ( i =3D 0; i < ARRAY_SIZE(header->bars); i++ ) + if ( !rangeset_is_empty(header->bars[i].mem) ) + { + map_pending =3D true; + break; + } + + /* If there's no mapping work write the command register now. */ + if ( !map_pending ) + pci_conf_write16(pdev->sbdf, PCI_COMMAND, cmd); + else + defer_map(dev->domain, dev, cmd, rom_only); =20 return 0; } @@ -556,6 +635,19 @@ static void cf_check rom_write( rom->addr =3D val & PCI_ROM_ADDRESS_MASK; } =20 +static int bar_add_rangeset(struct pci_dev *pdev, struct vpci_bar *bar, in= t i) +{ + char str[32]; + + snprintf(str, sizeof(str), "%pp:BAR%d", &pdev->sbdf, i); + + bar->mem =3D rangeset_new(pdev->domain, str, RANGESETF_no_print); + if ( !bar->mem ) + return -ENOMEM; + + return 0; +} + static int cf_check init_bars(struct pci_dev *pdev) { uint16_t cmd; @@ -639,6 +731,13 @@ static int cf_check init_bars(struct pci_dev *pdev) else bars[i].type =3D VPCI_BAR_MEM32; =20 + rc =3D bar_add_rangeset(pdev, &bars[i], i); + if ( rc ) + { + bars[i].type =3D VPCI_BAR_EMPTY; + return rc; + } + rc =3D pci_size_mem_bar(pdev->sbdf, reg, &addr, &size, (i =3D=3D num_bars - 1) ? PCI_BAR_LAST : 0); if ( rc < 0 ) @@ -690,6 +789,15 @@ static int cf_check init_bars(struct pci_dev *pdev) rom_reg, 4, rom); if ( rc ) rom->type =3D VPCI_BAR_EMPTY; + else + { + rc =3D bar_add_rangeset(pdev, rom, i); + if ( rc ) + { + rom->type =3D VPCI_BAR_EMPTY; + return rc; + } + } =20 header->rom_reg =3D rom_reg; } diff --git a/xen/drivers/vpci/vpci.c b/xen/drivers/vpci/vpci.c index 4182c65eaa..b542ddaf7b 100644 --- a/xen/drivers/vpci/vpci.c +++ b/xen/drivers/vpci/vpci.c @@ -39,6 +39,7 @@ extern vpci_register_init_t *const __end_vpci_array[]; void vpci_remove_device(struct pci_dev *pdev) { struct vpci *vpci; + unsigned int i; =20 if ( !has_vpci(pdev->domain) ) return; @@ -73,6 +74,10 @@ void vpci_remove_device(struct pci_dev *pdev) if ( pdev->vpci->msix->table[i] ) iounmap(pdev->vpci->msix->table[i]); } + + for ( i =3D 0; i < ARRAY_SIZE(vpci->header.bars); i++ ) + rangeset_destroy(vpci->header.bars[i].mem); + xfree(vpci->msix); xfree(vpci->msi); xfree(vpci); diff --git a/xen/include/xen/vpci.h b/xen/include/xen/vpci.h index e9170cc8ca..1e42a59c1d 100644 --- a/xen/include/xen/vpci.h +++ b/xen/include/xen/vpci.h @@ -75,6 +75,7 @@ struct vpci { /* Guest view of the BAR: address and lower bits. */ uint64_t guest_reg; uint64_t size; + struct rangeset *mem; enum { VPCI_BAR_EMPTY, VPCI_BAR_IO, @@ -162,9 +163,9 @@ struct vpci { =20 struct vpci_vcpu { /* Per-vcpu structure to store state while {un}mapping of PCI BARs. */ - struct rangeset *mem; struct pci_dev *pdev; uint16_t cmd; + bool map_pending : 1; bool rom_only : 1; }; =20 --=20 2.40.1 From xen-devel-bounces@lists.xenproject.org Tue Jun 13 10:33:04 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 10:33:04 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548003.855756 (Exim 4.92) (envelope-from ) id 1q91KS-00033l-Cw; Tue, 13 Jun 2023 10:32:48 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548003.855756; Tue, 13 Jun 2023 10:32:48 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q91KS-00033Z-8M; Tue, 13 Jun 2023 10:32:48 +0000 Received: by outflank-mailman (input) for mailman id 548003; Tue, 13 Jun 2023 10:32:47 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q91KQ-0001im-VQ for xen-devel@lists.xenproject.org; Tue, 13 Jun 2023 10:32:46 +0000 Received: from mx0b-0039f301.pphosted.com (mx0b-0039f301.pphosted.com [148.163.137.242]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id a28aba95-09d5-11ee-b232-6b7b168915f2; Tue, 13 Jun 2023 12:32:46 +0200 (CEST) Received: from pps.filterd (m0174683.ppops.net [127.0.0.1]) by mx0b-0039f301.pphosted.com (8.17.1.5/8.17.1.5) with ESMTP id 35DAO5KX019280; Tue, 13 Jun 2023 10:32:33 GMT Received: from eur05-am6-obe.outbound.protection.outlook.com (mail-am6eur05lp2106.outbound.protection.outlook.com [104.47.18.106]) by mx0b-0039f301.pphosted.com (PPS) with ESMTPS id 3r5yahmgn9-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Tue, 13 Jun 2023 10:32:32 +0000 Received: from VI1PR03MB3710.eurprd03.prod.outlook.com (2603:10a6:803:31::18) by DU0PR03MB9706.eurprd03.prod.outlook.com (2603:10a6:10:44e::5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Tue, 13 Jun 2023 10:32:27 +0000 Received: from VI1PR03MB3710.eurprd03.prod.outlook.com ([fe80::6fa2:d7b8:9bd4:1a51]) by VI1PR03MB3710.eurprd03.prod.outlook.com ([fe80::6fa2:d7b8:9bd4:1a51%5]) with mapi id 15.20.6455.045; Tue, 13 Jun 2023 10:32:26 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: a28aba95-09d5-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=HFo7Sa8zm/Ht66kAc4Xn6T+u7b5NHw8DTsD5ymKb6G+HVLVtu4JExg5+KdMKUBf7D2ljXxXhgGCKFizly18kJhngo6BaDC1uap98ChsL+qxiRWC3eb2jivFSm8mIt2YWQYnTK+VVcJC5x+ADUyceHjInyP575OFpZvfgwIpzedtwT7G8KNqc5kxkAXnCph+dw1//fxF4dNKfeqCc5uBl+DcC7pe7323385bJOmTXoqcX0bQOFAN8oCG+umRm61IHrJdMf9K7Bib99gt3QQ9i6nuYo82M/AjCMlgnA2bQ7Hl/lxyhpiIcjSWV6HIKIegku4Mrpo9M9ha6YkQRh8QTVw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=WiG9vC34t2GxGzLSOhrsfH8tHrKU/OCY0N5867nXnSg=; b=HCCBdJhKYOJqyFbwX2RWIh7o0fpA71UDiPRzRsn1glyyB7SDXdrAcSRh+JEJncUxqbaYj5B1kZyV8i+3DPUwmIEjbKG32JryYYVzswoPQcKrtaVBI1Xv2pl9G2Rt8xF6LXxRo3CtbYK/zeSFLxQw5auuXrqKioRhifRUs9jdiYYKMmNH4dx6KDj/m9TUl0oFzYTkVI6ctjNN34GLbkBLZi6JVLciWG5SvY30l2gBheu4sjFD3dgRAmjFQdDC0IJDrK/WkQNwBil0u+jakkEgvYXM5OOM21+w6R2QAFCD0MtOGePNWsc2iGy8tLZ1INkojGyuXuvJ8s499xSvcY7SxA== 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 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=epam.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=WiG9vC34t2GxGzLSOhrsfH8tHrKU/OCY0N5867nXnSg=; b=IFd1PlgBsoXmoEV42RPSiAU1y4yNxUqezFPT38eOtvKvBciQMPCsHdixAFiPrfwhkV0f3gQ+RAyiqAw6UTIPEgicLcUEq0sr7B8UBE9BVMjz6AjhZgM6hZMMLENrfeOcAvC1/bRf7whbI1JqfZO6Y03beWnkn1lxHxhVvICH0IDM2Qrz39zXFqKGgwUMPEY2ozbVy36QnZ0WvpCjQlNiBgL+81TDi+98aoc/HjLgL890O8i9D97ytoxkX4xX/hJWsUPFhHpHZZiDyyHPlTEiIaBxXZITrRofD77D5XRbbbnmFWtDQIdh7wkh2UAWoJ+QYDe423OtJjBT+DTV6jlPxA== From: Volodymyr Babchuk To: "xen-devel@lists.xenproject.org" CC: Volodymyr Babchuk , Jan Beulich , Andrew Cooper , =?utf-8?B?Um9nZXIgUGF1IE1vbm7DqQ==?= , Wei Liu , George Dunlap , Julien Grall , Stefano Stabellini , Paul Durrant , Bertrand Marquis , Volodymyr Babchuk Subject: [PATCH v7 00/12] PCI devices passthrough on Arm, part 3 Thread-Topic: [PATCH v7 00/12] PCI devices passthrough on Arm, part 3 Thread-Index: AQHZneJYJeyWMREaaUSf/027X0QuCg== Date: Tue, 13 Jun 2023 10:32:26 +0000 Message-ID: <20230613103159.524763-1-volodymyr_babchuk@epam.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-mailer: git-send-email 2.40.1 x-ms-publictraffictype: Email x-ms-traffictypediagnostic: VI1PR03MB3710:EE_|DU0PR03MB9706:EE_ x-ms-office365-filtering-correlation-id: e2bbb522-f54b-4288-4094-08db6bf97b88 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: UCm3OR2Xghn68zR6JAyIMurkunurXr/HhEbm1vydwtTur3pISlrvTKhw8PaxGt0ao1Dm8LVnpYx9Vg488AyBHhkB5pitDbjjIwBlrTWbdYbD7WLZVKUa26r4vXRg3z8EaPscB3CVB+5E2wOc0GY8fdBCa4dyVbJGANUw1lLkEaIkbuf9AUrgjD2C2XXBsGw9nH1R21sfuCKBK+T1Z8SONKtavoqT87VB6MvPtCpmszBI8wULy7LdpVeK/j+4ZMP5KHKZEeIbtCCQhjJ0ZzpHATdhA727ICXDrzsnFDA+rbUQoX3eI4ipKi4VkY05CiuXFPMR3/WEXNb6GYuYKqt4SeJJeTjqtPbba0RXJcnhM09PFMYpuM79UXc4n3CGE/BxsvxoxSuRCmRvznd9F4LBVVu8T1QzCgXPIpE+/e1yDWQ7PYnqf+REbxaW4r9dH8mmPwXAyge4fKECMs6O2k5fqpGcHTWJMvcYYpkSFbighrRYPjpeFNa9R0jxUmn26EMVYte+oT+lCMZP+QuOckeuSbTUEzG6b0JZsrtXlxMxj9HK/HMMSZJQiE3qUfYpDotqYSbqJWoMo5AvBj/E6jvE3ITjImtOPdt+lrqfbxx3d/U= x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VI1PR03MB3710.eurprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(396003)(376002)(136003)(346002)(366004)(451199021)(966005)(91956017)(64756008)(76116006)(66556008)(66446008)(7416002)(4326008)(6916009)(66476007)(71200400001)(5660300002)(66946007)(41300700001)(8936002)(8676002)(316002)(36756003)(54906003)(83380400001)(478600001)(2906002)(6486002)(38100700002)(186003)(6506007)(107886003)(26005)(1076003)(6512007)(86362001)(55236004)(38070700005)(2616005)(122000001);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?d05ONEtJeWorcXI0d0dQQVZyam00dEdXM3VzcTZ2MDAzNjgyaTVzWUNFOW50?= =?utf-8?B?eXFtb2hOUXc0VWtuNGNCeDgzaW15Zmt1YWh6MWJ0SDU2cG42U245QUtmc3ZD?= =?utf-8?B?SHFDNE1wV3lqaUkwSDZHNkZZcWU0eWNEYU1PNCtMM2o1c2JoSTBsQTJ0KytG?= =?utf-8?B?MWlHNDRGWHhiWkMrQkxFc1dHQ1h4ZVhVN0trb0RxbUZreXNvWXNoTFRzdXRR?= =?utf-8?B?cnc3Q3UvRUE2Q3MxUVoyUDFVaGRpekwzZ0h0WkxST1F1Qk4vZ2VGMEVBaEti?= =?utf-8?B?Y0FOcHJveU9HWmE3bDFMcGwzSU5sNUo2V21NUnZQSE5rS0RwUDRGNEtieU1I?= =?utf-8?B?VW9COGozZnV4d0wvYjJMRXdMNkZwQnRGcGFPR0pLOXE5cG9pRWR4c1ZoRE4x?= =?utf-8?B?Qy9yUE14RjR0M2R0K1ZQVnBRTEplWE1GQ1pNNkNxamZMRlpEYzBZS01jcDNy?= =?utf-8?B?R0ZJNFhML21DMjdOQmVWWE9Cbzhuc2xRZ0FkQ3VvUGMyeW9DeXg3MVhkQ1RI?= =?utf-8?B?Mks5NndkL0hOY05GWi9jZmNIYXdhVmQvVTBoWEh6NmV0WURNYXRheHNINldD?= =?utf-8?B?bnhiRGpkTDRwMzFXWDFhbW9laUw0MElEVVJ5V3NTb3JRSlkwd2VGY0Q0cXla?= =?utf-8?B?b216d2lPYWtHQnBxOEkzNUNFTnp4NzIzTTArWnVySEE2RGVmalJRZ1A2dmJ0?= =?utf-8?B?R3k4MWVJWTlrUE5CYk9oU215K2pucENiSjJaMytQYUlHN2dYTTZEOVlnL0Uz?= =?utf-8?B?ZzF0dmJkTWdJV3c3bU9vbUpjNG13WHVXZkZwR0ltc1RZWnV3VGxCZGFwaVFD?= =?utf-8?B?eHBXWGRlYlpOMkZLVGE4NEZ5c1JrbGpibWJPMW1OV3FKMUs5UzhicStVK0l0?= =?utf-8?B?WXVPR1Q4NllvYUpuL0NjeFRBL1RIMWhtaEw4bW9wRTJ4RnlaUlZPb3pPKzU1?= =?utf-8?B?dTd6M2JobFhGTFFhNUM3QjY2WDE4aFpoZkpTRmkybUZxWnZNMWxvdGpvMFVN?= =?utf-8?B?QnQ2cFNaM0NSc2wrN2dlVzUxaEpmdDd1U3ZSUC9SdUR6OGlNdGZPNER3N2Nr?= =?utf-8?B?NU5jUDJGMTZ0UEpXL1JlQndvaUZuUy9tRWxxeE5QcFZjbk1QdFJQeVV3b1Zo?= =?utf-8?B?cHZ4MVZXNnNQZWE0RjJRMlBIeStaek5CemN5U3RXWG0rTzRZanVXUzJVT0lq?= =?utf-8?B?SXdYT3JLbDVFem1XbGkwcWtEN1NoMHprRHdSMnBwWFNjdlBwYlBGeE1PZmNX?= =?utf-8?B?WkdyamFTa1B6cXNpNWtaZG1ybVdYVmZJdVJkZ2tYUC9ZUHRyQk1jdU9jNmsz?= =?utf-8?B?TUFnUVJGbXltN3ppazluQnpZN3cydVIvR3p2ZUQ3dmlEekV0Z1lrQ0FnMHgy?= =?utf-8?B?L1VkUitjTHR6ejcvbTFPM3lZM2VoaFJNNW1PblZ6Vmxnc2lmK0g4azhESHc3?= =?utf-8?B?WHRHdVB1eEFBM2VPZTRFMnpZNE93cFdiUU83ajUvVUluZkRzdFJac3diaUdQ?= =?utf-8?B?dWpvc3BPOXBoSmR2T096anJtUFkwN0o3YzA4akNUTm5QMysyQUoyZ0trZFdX?= =?utf-8?B?bmgvbmNzRjF3cmpZdXZJdnoyV3lNS0phRzBVWDFDK0djbGlMVXFCTjlCZTlP?= =?utf-8?B?eE9vM1ZQTHhFai9MZEJ6cER1UWM1SVhJK0JWb0hPcnZ6Y3QyQU1qTFBoTm9H?= =?utf-8?B?c3hscWs2ZVluSCs1ZVFtWDN1cGM3Sm5hYlhYeE81S2U3MGEyTjVycGJZdFNl?= =?utf-8?B?RFFFb3YwaktnajFQNlI4bjhVSy9KWjBIMzg3RE9iNkJDMFNkWGxvOVpoTXBY?= =?utf-8?B?Ym5qZXRWYjdwelp4cEtmS3JyRm9zUUVUUDcxUlBPK0lRRGVpMHBSQ1V5ZEcv?= =?utf-8?B?djA0bDZXdDVIZTlIQVdqK0pBcjE1Vzk5V2xOWGVoTUtGSkNRWUtDbHVXdzJS?= =?utf-8?B?REJEY2xqTEx4bS9yRzhDT1BacGV3eEhzeU5iQVZjQWpiWWVCSkhudkRCRFZT?= =?utf-8?B?SnMxTmQrc1FlaFV0Z0YveU5uMzBJSS9pVVFaaXhpR240bDhTMzVFNmVNRUh2?= =?utf-8?B?S2Y0bHh3TDhaa0szUEphTkJabEduZDFGMFpkYis4RFFDQmErc1kxNnZpS01z?= =?utf-8?B?eHZ5V3pHRjJGZWNHRFo5ZElGQktxWnhIdFdpMllKWmN0VWNETndUVGtHUlFY?= =?utf-8?B?Rmc9PQ==?= Content-Type: text/plain; charset="utf-8" Content-ID: <352CE6813D1022428BF74FB99F62787A@eurprd03.prod.outlook.com> Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: epam.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: VI1PR03MB3710.eurprd03.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: e2bbb522-f54b-4288-4094-08db6bf97b88 X-MS-Exchange-CrossTenant-originalarrivaltime: 13 Jun 2023 10:32:26.6053 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: b41b72d0-4e9f-4c26-8a69-f949f367c91d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: kdKUP8QF4/tIpd9eTehmtiaDQxyF1lAV4a3NU9ZTAn1O9thwZTfSFmyDunJZzqa2FknzC62TWHvhBXLhxEq92/ooy7gOyFMkWUBZCrj6Giw= X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU0PR03MB9706 X-Proofpoint-GUID: aW2oc2PcnjmaewcXi_7-q95ic-WGLpzn X-Proofpoint-ORIG-GUID: aW2oc2PcnjmaewcXi_7-q95ic-WGLpzn X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.254,Aquarius:18.0.957,Hydra:6.0.573,FMLib:17.11.176.26 definitions=2023-06-13_04,2023-06-12_02,2023-05-22_02 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 mlxscore=0 suspectscore=0 mlxlogscore=673 spamscore=0 malwarescore=0 clxscore=1011 lowpriorityscore=0 bulkscore=0 priorityscore=1501 phishscore=0 impostorscore=0 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2305260000 definitions=main-2306130093 SGVsbG8sDQoNClRoaXMgaXMgYW5vdGhlciBhbm90aGVyIHZlcnNpb24gb2YgdlBDSSByZXdvcmsg KHByZXZpb3VzIG9uZSBjYW4gYmUNCmZvdW5kIGF0IFsxXSkuIFRoZSBiaWdnZXN0IGNoYW5nZSBp cyBob3cgdlBDSSBsb2NraW5nIGlzIGRvbmUuIFRoaXMNCnNlcmllcyB1c2VzIHBlci1kb21haW4g dlBDSSByd2xvY2suDQoNCk5vdGUgdGhhdCB0aGlzIHNlcmllcyBkb2VzIG5vdCBpbmNsdWRlIG15 IHdvcmsgb24gcmVmZXJlbmNlIGNvdW50aW5nDQpmb3IgUENJIGRldmljZXMgYmVjYXVzZSB0aGlz IGNvdW50aW5nIGRvZXMgbm90IHJlc29sdmUgaXNzZXMgd2UgYXJlDQpoYXZpbmcgZm9yIHZQQ0ku IFdoaWxlIGl0IGlzIChtYXliZSkgbmljZSB0byBoYXZlIFBDSSByZWZjb3VudGluZywgaXQNCmRv ZXMgbm90IG1vdmVzIHVzIHRvd2FyZHMgUENJIG9uIEFSTS4NCg0KDQpbMV0gaHR0cHM6Ly9sb3Jl Lmtlcm5lbC5vcmcvYWxsLzIwMjIwMjA0MDYzNDU5LjY4MDk2MS0xLWFuZHIyMDAwQGdtYWlsLmNv bS8NCg0KT2xla3NhbmRyIEFuZHJ1c2hjaGVua28gKDEyKToNCiAgdnBjaTogaW50cm9kdWNlIHBl ci1kb21haW4gbG9jayB0byBwcm90ZWN0IHZwY2kgc3RydWN0dXJlDQogIHZwY2k6IHJlc3RyaWN0 IHVuaGFuZGxlZCByZWFkL3dyaXRlIG9wZXJhdGlvbnMgZm9yIGd1ZXN0cw0KICB2cGNpOiBhZGQg aG9va3MgZm9yIFBDSSBkZXZpY2UgYXNzaWduL2RlLWFzc2lnbg0KICB2cGNpL2hlYWRlcjogaW1w bGVtZW50IGd1ZXN0IEJBUiByZWdpc3RlciBoYW5kbGVycw0KICByYW5nZXNldDogYWRkIFJBTkdF U0VURl9ub19wcmludCBmbGFnDQogIHZwY2kvaGVhZGVyOiBoYW5kbGUgcDJtIHJhbmdlIHNldHMg cGVyIEJBUg0KICB2cGNpL2hlYWRlcjogcHJvZ3JhbSBwMm0gd2l0aCBndWVzdCBCQVIgdmlldw0K ICB2cGNpL2hlYWRlcjogZW11bGF0ZSBQQ0lfQ09NTUFORCByZWdpc3RlciBmb3IgZ3Vlc3RzDQog IHZwY2kvaGVhZGVyOiByZXNldCB0aGUgY29tbWFuZCByZWdpc3RlciB3aGVuIGFkZGluZyBkZXZp Y2VzDQogIHZwY2k6IGFkZCBpbml0aWFsIHN1cHBvcnQgZm9yIHZpcnR1YWwgUENJIGJ1cyB0b3Bv bG9neQ0KICB4ZW4vYXJtOiB0cmFuc2xhdGUgdmlydHVhbCBQQ0kgYnVzIHRvcG9sb2d5IGZvciBn dWVzdHMNCiAgeGVuL2FybTogYWNjb3VudCBJTyBoYW5kbGVycyBmb3IgZW11bGF0ZWQgUENJIE1T SS1YDQoNCiB4ZW4vYXJjaC9hcm0vdnBjaS5jICAgICAgICAgICB8ICAzMSArKy0NCiB4ZW4vYXJj aC94ODYvaHZtL3Ztc2kuYyAgICAgICB8ICAgNyArDQogeGVuL2NvbW1vbi9kb21haW4uYyAgICAg ICAgICAgfCAgIDMgKw0KIHhlbi9jb21tb24vcmFuZ2VzZXQuYyAgICAgICAgIHwgICA1ICstDQog eGVuL2RyaXZlcnMvS2NvbmZpZyAgICAgICAgICAgfCAgIDQgKw0KIHhlbi9kcml2ZXJzL3Bhc3N0 aHJvdWdoL3BjaS5jIHwgIDE2ICsrDQogeGVuL2RyaXZlcnMvdnBjaS9oZWFkZXIuYyAgICAgfCA0 ODUgKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLQ0KIHhlbi9kcml2ZXJzL3ZwY2kv bXNpLmMgICAgICAgIHwgIDI5ICstDQogeGVuL2RyaXZlcnMvdnBjaS9tc2l4LmMgICAgICAgfCAg NTUgKysrLQ0KIHhlbi9kcml2ZXJzL3ZwY2kvdnBjaS5jICAgICAgIHwgMjU3ICsrKysrKysrKysr KysrKystLQ0KIHhlbi9pbmNsdWRlL3hlbi9wY2kuaCAgICAgICAgIHwgICAxICsNCiB4ZW4vaW5j bHVkZS94ZW4vcmFuZ2VzZXQuaCAgICB8ICAgNSArLQ0KIHhlbi9pbmNsdWRlL3hlbi9zY2hlZC5o ICAgICAgIHwgIDExICsNCiB4ZW4vaW5jbHVkZS94ZW4vdnBjaS5oICAgICAgICB8ICA0NyArKyst DQogMTQgZmlsZXMgY2hhbmdlZCwgODI2IGluc2VydGlvbnMoKyksIDEzMCBkZWxldGlvbnMoLSkN Cg0KLS0gDQoyLjQwLjENCg== From xen-devel-bounces@lists.xenproject.org Tue Jun 13 10:33:04 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 10:33:04 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548014.855826 (Exim 4.92) (envelope-from ) id 1q91Kd-0005da-B1; Tue, 13 Jun 2023 10:32:59 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548014.855826; Tue, 13 Jun 2023 10:32:59 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q91Kd-0005dE-6v; Tue, 13 Jun 2023 10:32:59 +0000 Received: by outflank-mailman (input) for mailman id 548014; Tue, 13 Jun 2023 10:32:57 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q91Kb-0001il-Ji for xen-devel@lists.xenproject.org; Tue, 13 Jun 2023 10:32:57 +0000 Received: from mx0a-0039f301.pphosted.com (mx0a-0039f301.pphosted.com [148.163.133.242]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id a800e56b-09d5-11ee-8611-37d641c3527e; Tue, 13 Jun 2023 12:32:55 +0200 (CEST) Received: from pps.filterd (m0174677.ppops.net [127.0.0.1]) by mx0a-0039f301.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 35D6YVNk012776; Tue, 13 Jun 2023 10:32:40 GMT Received: from eur02-db5-obe.outbound.protection.outlook.com (mail-db5eur02lp2104.outbound.protection.outlook.com [104.47.11.104]) by mx0a-0039f301.pphosted.com (PPS) with ESMTPS id 3r63wtu7t4-2 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Tue, 13 Jun 2023 10:32:39 +0000 Received: from VI1PR03MB3710.eurprd03.prod.outlook.com (2603:10a6:803:31::18) by DBAPR03MB6520.eurprd03.prod.outlook.com (2603:10a6:10:19d::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.46; Tue, 13 Jun 2023 10:32:35 +0000 Received: from VI1PR03MB3710.eurprd03.prod.outlook.com ([fe80::6fa2:d7b8:9bd4:1a51]) by VI1PR03MB3710.eurprd03.prod.outlook.com ([fe80::6fa2:d7b8:9bd4:1a51%5]) with mapi id 15.20.6455.045; Tue, 13 Jun 2023 10:32:35 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: a800e56b-09d5-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=c/VM4lVNFpm/Tqs7sjBfTG3jzLmU5+cv24ae6tVY/4db4N59sWbIpB9VZiO8g+JbJmaukUgSqSwAEVk4wRA5k0WIpJ8iYMcH+roe/Cqiq3xu8Dp2v9ym6/7fyfXIM5YLqbe7sXNeuYEYHmvMwKbIvj2cDVDigQpLEG/qBxgU/kSfeFY3stEScp9vhdHvzNTcZ5N7sVHRMEQWV56OWQcdHPNztxdNLngQrJsvsdiMZUtvAk41q5IT4EijciHAEgcvGYlbRDDHQRWA+L7ZIx9wQ6vjWzVW5nB9wfIhJMkygoow1M2eRGEYUhlDx2cyBXExpLszK5YajqFhZvVjjntSNw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=zQTW0eUz8gWI49XTcH/ASQwLz+KUFxo+a0xrDbt/xqk=; b=Rtg5FF/ccuyTV7APOw9NTk90lyO337tT0E2rn+pXSIpun3TtiBKy10U8VRy23Wi5L+4nmbjkJoVuc7Rpn52P7bfmWbljbAWe79OkchyT2LKlgE+mhRUri4dWRK+VbgVqzA+FA7ehAre+j+BqTaFOG2Yad49QNHqU0p11Ql25uFmA4pZFlzIb9wyQIdEyvMsoecWyEEHK/vlw+B7RU1liE7yokGyOKBC1VlLCFYiJWYz4hjWGEL13MezA0ArpiR5+/TdnTr2/5h/slanBiyUHae9d//WZzOHM8R3o8HRNP+MujUman4MEQI/jL7p5DOIOMZB65wXhBSnZ+EJhjzP8Qw== 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 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=epam.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=zQTW0eUz8gWI49XTcH/ASQwLz+KUFxo+a0xrDbt/xqk=; b=JA2tSBKSG61ZnvGSUV4fZ/gWDBWxgI8izCJ6CRyQACRn0qeWXb1TekOHqow+TaaqOQFTHHhnXMGzy5vS1vHu3reQDTCTJDBqCN7ulpMF/2keKoAnXnWv9YfcLlo0CdYv8xFp8GHHyeBv52aXyFY4pk+JUOEbjpEX99xNgJGAPwRHLn/Wk6AXbHzx7TpiaKFsD7938Sl1Z2E2ylmbx/OToks5BYjWMy9pPpX3vwGjcH2qIUPGh+MCrS4l525rtSvi70TfwR7hT1Dv1mxeN7lJEIM4k/20FoqgOeFXwGQbN1rQUv+vcrzpn2SWEIsELn3fHrcNLxXt4Cj0WDFgRZ2+Mg== From: Volodymyr Babchuk To: "xen-devel@lists.xenproject.org" CC: Oleksandr Andrushchenko , Bertrand Marquis , Volodymyr Babchuk , Julien Grall , Julien Grall , Stefano Stabellini Subject: [PATCH v7 12/12] xen/arm: account IO handlers for emulated PCI MSI-X Thread-Topic: [PATCH v7 12/12] xen/arm: account IO handlers for emulated PCI MSI-X Thread-Index: AQHZneJbvDOlnUhO1ESuNpaA9WRe9g== Date: Tue, 13 Jun 2023 10:32:30 +0000 Message-ID: <20230613103159.524763-13-volodymyr_babchuk@epam.com> References: <20230613103159.524763-1-volodymyr_babchuk@epam.com> In-Reply-To: <20230613103159.524763-1-volodymyr_babchuk@epam.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-mailer: git-send-email 2.40.1 x-ms-publictraffictype: Email x-ms-traffictypediagnostic: VI1PR03MB3710:EE_|DBAPR03MB6520:EE_ x-ms-office365-filtering-correlation-id: 93648c78-a2d1-42e6-a0da-08db6bf9808f x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: lWbsTwkfpB0lf+0cGsJwGc7vYQ3cNe4OvC0vYrkrIorxFut2noVaJYl3VrIiHkVwLb2oUgD25v6XTg2VU4m7nw3uKKAiknWtlwHeocH5VnEDl2Aec+r48W9vs9MGS6AdN6Hk/OgjjbxKyArtRha9snKPlAnM+fKBFe1Nv4/M69RC7yxjyqI8MTogppTOJi/qCuIEjbvjliWFSBBnkSOVRMXh4LUH9kgXnOM/12EnmB6NiIwnuO3PDMi8Jsin/6xlA7Sjw/SU0casuQ74ymnqYUbda39SVhBe4uVVMJX2Q+NoGvvV1fU7H5WXFbY+AsQqjGABO64lpmae0engs9ZvwP/jRUSOTtxiV37wklKmi6e31O/qDtN+QppLkp73Pw2A8dCwXNwFr1dVB9yWCXI5I/aKk4+c/9vZ1eWJibmVPGWgLM5VKY3Cp9crZmSewWQI7hWHOEgY8iChnGEQhv15C8s+2Tj5pzjN+SWZS1BwEJOTgz7VDpDPx9Mc7AsiI+nxJv97Z7LYjx4o2t3gRARjs1hw2Nv2P9R1dclD22/qVaUGdjmpd7DloQM2ShzVJRddXbOQfybq+bI1xXb71NUWO+4fEXhoZcrHrGV8SKuX4/rtNaOJG2VSvX7pXgv3656c x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VI1PR03MB3710.eurprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(396003)(366004)(136003)(346002)(376002)(39860400002)(451199021)(6486002)(6666004)(6512007)(36756003)(83380400001)(2616005)(38100700002)(86362001)(38070700005)(122000001)(55236004)(1076003)(6506007)(26005)(186003)(2906002)(15650500001)(66446008)(66476007)(5660300002)(54906003)(8936002)(8676002)(316002)(41300700001)(6916009)(4326008)(66946007)(66556008)(76116006)(91956017)(66899021)(71200400001)(64756008)(478600001);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?iso-8859-1?Q?NyyV2/MHy1jlM7ZCIv7NPCj7eBD5RFlf/YEt80+6EFgSKnhtpZsiyhh31d?= =?iso-8859-1?Q?JFTPDLkgpkSmWXjXQnvxf9aEtfic5FmOBYEPQU2O/0vQmHWPZLqL5VHIaV?= =?iso-8859-1?Q?hgjy3L8K6Br1aGtsikDPk351aG54SmcgkXIkxgGDsRztlyE+IduWlcXRRe?= =?iso-8859-1?Q?cNllxdyAUIkwQmY3GiuOEVjgMC0BlyfCqM1A7eCe9lRKkbvfaxFoLVm7lk?= =?iso-8859-1?Q?Z69pn0GwTA5LgiktwTNpLVIOVLpggze8YNLHdFf4PkqIvlAU3IBfAjGwlj?= =?iso-8859-1?Q?I4wzfiWC8IoLN/8AwhvhNhPmuXJHGr0gksmYnJjyOMFPUrdwkgoOYTs8CB?= =?iso-8859-1?Q?ETNIWF9mdOUnQXE5uJ3uk65gj2xEE53Z4RjfzdrdW/dBvwY8DmFP9/eTBf?= =?iso-8859-1?Q?c7qMjXemIKSVkrm4/cWpZoSlz1gcYjcO3kWLkLrLD5YvE3Hd9xQkIn1h8G?= =?iso-8859-1?Q?1LbIhB0hO/+7dCLc+D0JNFl2d25RZbMj95cqHCKeUMQE+1dMxD2aDklB6H?= =?iso-8859-1?Q?s0mWhyrXzDE8It13hbIiCaTsxZX0ZnwBA5pleDW60CGHbY37ISD7upSilX?= =?iso-8859-1?Q?Q65pjH/5mtgQ8xA7a6c2Q4B55Few45y5xE0ANFAQJF4+SDQBKBaXtJvSVm?= =?iso-8859-1?Q?YbTLFwzLu4mkDMer8CjF/KBw7JFPuM9kLURP82QMXo3OYYlUriVo6iRDCo?= =?iso-8859-1?Q?I3jzQQESfiqmzSk3p5dz4xV1PG8qlhOYF3hmoYLSJ+ttbiNamHGCkWzKBg?= =?iso-8859-1?Q?ZDgoirgm+YUJJVIVzoRgOVufEhSWEnzgVgmJvcLhCOC4Dok+Xd4ZQK0g6S?= =?iso-8859-1?Q?d4AMq+Wy70/kcUFFkQGAt9fGBs5ZZaheAyBZmTUfRQ/+jRLAqf+v7HFbb5?= =?iso-8859-1?Q?MSGulHoNqmEO/5XOELo1qgmHNW3xUx4BDra5TSPKfDYcLtmoQL2gMJ8paq?= =?iso-8859-1?Q?f1IG3uTTPQ2rDL80P6F8MRNM3YhpJSL36io9rGRLLBswpgjcr/XgpkfahS?= =?iso-8859-1?Q?fqUYrnilRuqVdUCtSJeLEzGkOn2O+XjR7OVo7C+hAcLFVDJARPc/uc4nOc?= =?iso-8859-1?Q?LyFrZN+DuDBYFBmrNpfd6DximaVjrCl+GIrTRLjGCrl7NyjSPm04btJB8o?= =?iso-8859-1?Q?dGDVOZ87HI7PKuxo7V052CXvHun85aNiax5k7IuTEklJILTDeBjorCIdeN?= =?iso-8859-1?Q?of6WjLVio1zi5m4Adcs6Nx570zCZJSlfq7jxSvTfab3wxr8W6dcY9V2BJr?= =?iso-8859-1?Q?GQLCzfunFiZPxtj4QrmAMYw//QMY1piqE38StUxS2qDTGIURVdHZSepT2s?= =?iso-8859-1?Q?eSwWbQU6AkaEwMScL56HyUTVDoOC5+1YtK81rbiWVm2KJNZksS2AWA4uod?= =?iso-8859-1?Q?OTqTjpi+Is/Wu2RaWG502u5MMvN47yLBXqvIGCm2sYCuETtXDtIwP+4LLk?= =?iso-8859-1?Q?+QSZ2sxLAiOJVbPNfShWqrfbLRkFqQO3OlWmBGr02MIQo/vTI1ZAd+Qd/H?= =?iso-8859-1?Q?dD7Iv5V3IjG1arrc52XH5TBY3R3l92dojBz+O6ac7LtZmjNuv1D6HBx1bc?= =?iso-8859-1?Q?bQrlRA0Q96Zr5F8mIR6JQCOue8F7r/8W49kacmfk2ZJbBr0M3Uk4xDxmqY?= =?iso-8859-1?Q?ThAcJGUpJ3i46lRZN8mG9g5wvYGlqkkBu80erSKuSueNvbfHKuMRuFYQ?= =?iso-8859-1?Q?=3D=3D?= Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-OriginatorOrg: epam.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: VI1PR03MB3710.eurprd03.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 93648c78-a2d1-42e6-a0da-08db6bf9808f X-MS-Exchange-CrossTenant-originalarrivaltime: 13 Jun 2023 10:32:30.1747 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: b41b72d0-4e9f-4c26-8a69-f949f367c91d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: U0gSiYoqumL0WDtvhm0SLwkKqpViEp8Ntc/xB58/1JxXunFu5UwCSgXri3oWOcDQ3dhohI2poeZEEv7Pa3fgvLwTT2aX5Y/IyRYF3eO2a+c= X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBAPR03MB6520 X-Proofpoint-GUID: F0yMd5SMzxh8siSmnZGICctVgUdT5aXe X-Proofpoint-ORIG-GUID: F0yMd5SMzxh8siSmnZGICctVgUdT5aXe X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.254,Aquarius:18.0.957,Hydra:6.0.573,FMLib:17.11.176.26 definitions=2023-06-13_04,2023-06-12_02,2023-05-22_02 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 suspectscore=0 lowpriorityscore=0 impostorscore=0 clxscore=1011 mlxscore=0 phishscore=0 mlxlogscore=599 priorityscore=1501 spamscore=0 bulkscore=0 malwarescore=0 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2305260000 definitions=main-2306130093 From: Oleksandr Andrushchenko At the moment, we always allocate an extra 16 slots for IO handlers (see MAX_IO_HANDLER). So while adding IO trap handlers for the emulated MSI-X registers we need to explicitly tell that we have additional IO handlers, so those are accounted. Signed-off-by: Oleksandr Andrushchenko Acked-by: Julien Grall --- Cc: Julien Grall Cc: Stefano Stabellini --- This actually moved here from the part 2 of the prep work for PCI passthrough on Arm as it seems to be the proper place for it. Since v5: - optimize with IS_ENABLED(CONFIG_HAS_PCI_MSI) since VPCI_MAX_VIRT_DEV is defined unconditionally New in v5 --- xen/arch/arm/vpci.c | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/xen/arch/arm/vpci.c b/xen/arch/arm/vpci.c index d60913e532..7499a1c925 100644 --- a/xen/arch/arm/vpci.c +++ b/xen/arch/arm/vpci.c @@ -122,6 +122,8 @@ static int vpci_get_num_handlers_cb(struct domain *d, =20 unsigned int domain_vpci_get_num_mmio_handlers(struct domain *d) { + unsigned int count; + if ( !has_vpci(d) ) return 0; =20 @@ -142,7 +144,17 @@ unsigned int domain_vpci_get_num_mmio_handlers(struct = domain *d) * For guests each host bridge requires one region to cover the * configuration space. At the moment, we only expose a single host br= idge. */ - return 1; + count =3D 1; + + /* + * There's a single MSI-X MMIO handler that deals with both PBA + * and MSI-X tables per each PCI device being passed through. + * Maximum number of emulated virtual devices is VPCI_MAX_VIRT_DEV. + */ + if ( IS_ENABLED(CONFIG_HAS_PCI_MSI) ) + count +=3D VPCI_MAX_VIRT_DEV; + + return count; } =20 /* --=20 2.40.1 From xen-devel-bounces@lists.xenproject.org Tue Jun 13 10:39:32 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 10:39:32 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548049.855836 (Exim 4.92) (envelope-from ) id 1q91Qr-0000u9-6O; Tue, 13 Jun 2023 10:39:25 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548049.855836; Tue, 13 Jun 2023 10:39:25 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q91Qr-0000u2-3L; Tue, 13 Jun 2023 10:39:25 +0000 Received: by outflank-mailman (input) for mailman id 548049; Tue, 13 Jun 2023 10:39:23 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q91LA-0001im-B6 for xen-devel@lists.xenproject.org; Tue, 13 Jun 2023 10:33:32 +0000 Received: from esa3.hc3370-68.iphmx.com (esa3.hc3370-68.iphmx.com [216.71.145.155]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id bc71a49e-09d5-11ee-b232-6b7b168915f2; Tue, 13 Jun 2023 12:33:30 +0200 (CEST) Received: from mail-co1nam11lp2172.outbound.protection.outlook.com (HELO NAM11-CO1-obe.outbound.protection.outlook.com) ([104.47.56.172]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 13 Jun 2023 06:33:15 -0400 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) by PH0PR03MB6266.namprd03.prod.outlook.com (2603:10b6:510:e2::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.29; Tue, 13 Jun 2023 10:33:13 +0000 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::3474:a81:a100:1529]) by SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::3474:a81:a100:1529%6]) with mapi id 15.20.6455.043; Tue, 13 Jun 2023 10:33:13 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: bc71a49e-09d5-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686652410; h=date:from:to:cc:subject:message-id:references: content-transfer-encoding:in-reply-to:mime-version; bh=K8kwdqFYjB+C+SDMEq8w/k4i2u604oboWdpP7mXttLs=; b=FE3vncvVXeG1AH9vcs8Va4YxPjRlnEKr4ylnSKk6zJxc5Apojf0ejvGB KI4+b6mLRTIjp0QPh4nhPEWieH3OdaoijJ1mkmEFU3k6LX30yAiUeI88f Cj2UUbysvvBks0PEkBbN4MiLLJRR2qV7/EFVxWt+2IyHcDyTmQROikpmO I=; X-IronPort-RemoteIP: 104.47.56.172 X-IronPort-MID: 112605362 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:OBU4bquLAzbIg7bL2N8mp/i5pefnVEtfMUV32f8akzHdYApBsoF/q tZmKWzTbP2NNjb2etFxat+/9k4FsMWHzd41TlZuryAxFSwQ+JbJXdiXEBz9bniYRiHhoOCLz O1FM4Wdc5pkJpP4jk3wWlQ0hSAkjclkfpKlVKiffHg3HVQ+IMsYoUoLs/YjhYJ1isSODQqIu Nfjy+XSI1bg0DNvWo4uw/vrRChH4rKq4Fv0gnRkPaoQ5AGHzCFMZH4iDfrZw0XQE9E88tGSH 44v/JnhlkvF8hEkDM+Sk7qTWiXmlZaLYGBiIlIPM0STqkAqSh4ai87XB9JFAatjsB2bnsgZ9 Tl4ncfYpTHFnEH7sL91vxFwS0mSNEDdkVPNCSDXXce7lyUqf5ZwqhnH4Y5f0YAwo45K7W9yG fMwMjdWKSqvps6M3LeCRtt03cUNPs3sM9ZK0p1g5Wmx4fcOZ7nmGvyPzvgBmTA6i4ZJAOrUY NcfZXx3dhPcbhZTO1ARTpUjgOOvgXq5eDpdwL6XjfNvvy6Pk0osjv60b4C9lt+iHK25mm6Co W3L5SLhCwwyP92D0zuVtHmrg4cjmAuiAdhMTODjqKQCbFu7y2MRDCMRD0OC//y2gUmHR/xxc kcs0397xUQ13AnxJjXnZDW6qnOZuh8XW/JLDvY3rgqKz8L88wufQ2QJUDNFQNgnr9MtAywn0 EeTmNHkDiApt6eaIU9x7Z+RpDK2fCMSdGkLYHZdSRNfuoa55oYukhjIU9BvVravicH4Ei3xx DbMqzUig7IUjogA0KDTEU37vg9Ab6PhFmYdjjg7lEr7tmuVuKbNi1SU1GXm IronPort-HdrOrdr: A9a23:Jtvk5apb24h+BSTLY68hnoEaV5oReYIsimQD101hICG9Ffb1qy nOppsmPHrP4wr5N0tPpTntAsi9qBHnhP1ICPgqXYtKNTOO0AHEEGgI1/qB/9SPIVyYysdtkY tmbqhiGJnRIDFB/KDHCdCDYrMdKQ+8gcSVuds= X-Talos-CUID: 9a23:65rCJmPq5E8DWu5DQi48s3Q4O+wfbnjkwEXIeE6WG2JuR+jA X-Talos-MUID: 9a23:Jdrb2QQlpVbIhQwPRXThizNmCsAy+53wDU8GlqwalefdPhRZbmI= X-IronPort-AV: E=Sophos;i="6.00,239,1681185600"; d="scan'208";a="112605362" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=K330O3M9cvvR7UAVA7IypVJIDxuGBQeJNinMw2HrOtm5jX3xbWiwc5UjfuITO66bxcY66fE3cSCxYtSDM3402VYPtJsdeRytVPyOAC59tsvs2iRwLQL246tcev7DAVfywKQ0AQ+3MQJgCgbmrM4KbSNsk8pKLsLQuNjdwtbMHXJ1OyeAgNVea+QSOrNRgu4NAbznfpK8ok+1eHSLJP3/OTI2URht69LF6+v1xdMwvUHS5SCYvUQvkQ1qI9uYdJHrPkCIHiesUt346EBKdC0IH3ZYhawPOlhB/ROkd7j06Tolw0EgQxRHERr5bd53YhuIhQPFJZ8DajPST2QQw8HC0Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=Xcr/+OpieiydOSz09MoTu/6UtJ5G0GtWOcbANOB2+JU=; b=C2G7it6Lkw1E1W0AvVEve11N5pI7iMoljEIB+xaBzT2+L8u8WkdZodUT+zjbtNiscWIAhFMIo8Fv1a7Nla4N+qHPPJ4UFMb0TNsXJgkc8pC7EBFnXdoOwS4a7Pei6eIUTkmIpn8D4VmHOrtoDptFnV6vsmXBF/+MMs0xcKpwmwJypwuQPWcALCdvUVao3ZQ7lneEVyyUBi3NxtovVDT+NPZO80F6hYC3VkFGjZcyPhNhctr1f9BrvZsKbYEhyE7kzgAzjIUnUavLr192R5E4SXd0vnl13/DDY8JHD6g37tD4TxzbbNO75mfxCzECKm6oQvqXAsTsuOjnwGBvJVfI4w== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Xcr/+OpieiydOSz09MoTu/6UtJ5G0GtWOcbANOB2+JU=; b=SJF0UZYNtjv4vw/5Lsyut4Su+nSVPIezpH5fclQGJ36caobqGmbprjkNmLAVD0Swqxx9hv1/WfaX5WdmUL+ERFHs7rWbm6L/f7oESB7rve3XE1W7MLGdnh8gqJ8v0MCHYvkJ01qj5jqEGBZFop679lWzWSthPbdWfI9udsdgOpM= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Date: Tue, 13 Jun 2023 12:33:08 +0200 From: Roger Pau =?utf-8?B?TW9ubsOp?= To: Jan Beulich Cc: Andrew Cooper , xen-devel@lists.xenproject.org Subject: Re: [PATCH] iommu/amd-vi: fix checking for Invalidate All support in amd_iommu_resume() Message-ID: References: <20230613101313.51326-1-roger.pau@citrix.com> <1c8bf2cc-4c91-6db6-edf7-81472ee107ba@suse.com> Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <1c8bf2cc-4c91-6db6-edf7-81472ee107ba@suse.com> X-ClientProxiedBy: LO2P265CA0129.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:9f::21) To SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|PH0PR03MB6266:EE_ X-MS-Office365-Filtering-Correlation-Id: d16bf6b1-5da6-40e8-b54f-08db6bf99773 X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: sYOuynKckvt6vR7eTpAj3O7nUwvkY7T+b9gvWN6YS2FjfNkyiPgVENgvh5v0ahoZTW/c2cSJmxhxeqdRsZ+2olzoWyoT8tG6LAKVRDFeTTorVPnJlh7PpEXZeAPSQB4kvUxUx3/uOijMEHKEqjOyclrphGwkQbS5xm69IeyEi4OmAleP0x1jLnnHX6DNbi1ME6+dUju4kcjKIXZid14Y2WRUFOl8iWwxQ5BKo5/poCUcidIPFzNJqNTtWTk7OX92/i9WZPEH9LFY0YriVF4xwEbET0SbrsZePmXbDx3v5vY2GXiKpOW9tjK0vezE+26/Ma+yxcdW+8lvCeMxLp4R5s9Ehsi1oq2lFJsQFiDRt0cGLKwTkb0m1LYOLRwFNeW+1aGKluFg3SkMEeV86i0KsLuYzj8FbVsQ+S8+xxcznn/KLzX5fJUfY5rDfgk3oT0fShBh71LrMhhXQyrSvXKbY6RPvjOJqFAL0ihyWafeNa6MqsfgJaFeZCuIrD+tBDMzGvG7nYClHIKIYftewOVEcXvawywRb/uKC4RBXkq9RZDTpvHc14Iq0AeJGHL4PNYR X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(7916004)(4636009)(346002)(136003)(366004)(39860400002)(376002)(396003)(451199021)(86362001)(6486002)(316002)(8676002)(33716001)(41300700001)(82960400001)(5660300002)(83380400001)(26005)(6512007)(85182001)(38100700002)(53546011)(6506007)(6666004)(8936002)(9686003)(66476007)(66556008)(66946007)(6916009)(4326008)(478600001)(186003)(2906002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?V1E5cllXUXBIMzBDY0VXcjBwL0JMYTNsUzFERHBWR3VaQ0c4a0Q1WC95Mmo2?= =?utf-8?B?THprWTUxS01LYTRwRHYrS01veTVUZjFUMXBnUWRNTExQVGltZEJZNVE3ZkN1?= =?utf-8?B?a2RkNXY3amZ6bGk0MU53aWtXaXdFRm5takVEOURITHY0ZXlQRHpCL0pXckZl?= =?utf-8?B?cGYrZHUyQTVRK0RHK2JpRE5COWVJcG14by81NDYwVFZCWUN5VWZJRTh6a2xh?= =?utf-8?B?VWNRY1RkL2VFcHlQU3piN01LWmhPTmpaWHlOMUhyL1gzWFhrQzczYlhLVXFC?= =?utf-8?B?aDR0V3VqMmpaZjB3WjdnUlJxOXZHWGJ2ZDR5ZERNTzZ5amd0MU9WbGxJZ1BD?= =?utf-8?B?NVlCMDg1VDUwVDMrNmpUdWpDQjViQjJJSHRNL3lhMzdBQ2pPR2RkaC9Td0pD?= =?utf-8?B?RmNKdndoTTlRTjlvUzltc1pnM3lkQ25aa0dvZkJkYVEyYnN6Z2tXcGdEalVQ?= =?utf-8?B?WEVqY05RUC9zVzN6Kys4cFNxcGorZjRUMnpodVVrL21IN3NHM292a1RYMlJB?= =?utf-8?B?c3R1ajVmYkVsNTRjSkd5VklkcVdubUpJTU9mcDcxaGF4TzU4RXZRcUppRlZn?= =?utf-8?B?NkIxeHRuTm8zUC91d0dkTHozUkM3aFdaUzF1NkN2V0Y5bEpaa1hhcjBrRTNh?= =?utf-8?B?cE1lTlQ0WFZNWmwzMWZhR1V2WHJuajVCTG41TEdKa05FcWZGTVZKeEZVVVZ5?= =?utf-8?B?ckZHRXJnbEpRUlJVTEhtZy92REVKS3ZUYXdMT2w1eHAxc3pnRDhrZ3pzazky?= =?utf-8?B?eUlqNXJYaXFZUHBSek93SHFyeElQMkJkOU5zTjA1cDVPU0pMcHFwRkdPb2lG?= =?utf-8?B?Z1lFeVBvMEJVVGkxdzdTU2xycDZuTERjcEhIV0RsTktKTnl1QXVRK2lQR25r?= =?utf-8?B?ZFpET2lpQVovaFprNksxOVNOeDZ6MWZ0TXpUYnY2US9sVjJDaFM2MFIwWHZX?= =?utf-8?B?a2VNZjY5c1ozcGxseEo3SWExd1VYOGpIQ0dualBCMjI5Qk5WSWs4YktJY1Nm?= =?utf-8?B?MVl0SVBLRmZNWHNJVGFSNG5FNVdZT2YxRXUzeStsVzZVV2oybldZMlpzblk3?= =?utf-8?B?eXVzZzZBTFNOWE1jWUQ1ekRzb2pnT0FTZjNZWnZjTG16VVZlMDIrRDJRL0Uv?= =?utf-8?B?djE3NXBjOUcxYjN5MU5qcmp0ZWN4NkZuMVdCSHN4dWpNRmY2RDdZbzc5TWJJ?= =?utf-8?B?cHhWM1VNMVgwaDlFT2JIRGxWbC8rNGc2cmFMSHNtU2NjMHFRdXh4SXl5T2ZV?= =?utf-8?B?RGJ1SHluMmgxWmd2WGZnVEREb3BUVmlucGNGajBrSm16ekdkRmpGZGVCYkd3?= =?utf-8?B?WEpnM3R4dG9MQzZyZkdRU1I2UEZnZVREZ0FzdGNNK2NQdU5rRGdZd3pkVEFU?= =?utf-8?B?b3JxbVd3NHQvSXRYWkJuMEZ0ZXBxZis2Qjh2OVVNT25Rd1pRNmN4WHpuVW5i?= =?utf-8?B?d3NFTFZPYWw5aUl4bGtDdjJ5UmxRTWtZR1k0dE4yK2NlTk40TThJbFVlcVE2?= =?utf-8?B?S1M3blR2YnBJVW1ZNkp2dzNrVDRnNU90RDBKK0xxOHllRWl0VzhENXFxQlRr?= =?utf-8?B?ZzJTSDM3OVd0Q0IwdlplaGxNTEx0eG5MdGR3ejAvQWdkZHdEblBMMTRZL3E3?= =?utf-8?B?d2JVRnZXQTJYY3hhSWM2eEdrM1NXUVN3YS9YL0toNWlSalBsZzVDQk0wR2pD?= =?utf-8?B?RkMvWWh4NHQ3ZGR6U2JIM1lwNmNtTmp4d0V6V3NmVW5MTWU5L3pHSzlIQUlu?= =?utf-8?B?V2sxMTJqYndCelBHTmRZUk95dE80SGsxRWQvdEtQRnJILzNCWVpHcExjdkNa?= =?utf-8?B?aXhJd1hMYXd0c3VUcFBuRGxnTnlVTExvd2ptaCtPN3RHamdnQ2RUMDlSZ3Y4?= =?utf-8?B?dVZEMTNMN2p3RXIrVlBHS09RazF5dzlRZURRSnpkTGFxc3hFeGNlZmtMRjJZ?= =?utf-8?B?Vm1BbkFhYU5pVGVSZUFmeXhDcHdEYXoxQ2ZvcXZOWXo4c0U1LzJDdW5KdHg5?= =?utf-8?B?U01hR3k4QnEwQ3ZmU3Zob1Y1ZjdSM3lxOHFodVNDMGVhZ2U0eGR2MUJyMUxI?= =?utf-8?B?eVEzYldqU3ZveWpCcVNLZEJVZmN4Szh2M1lRQ3ZmNjlEeE55U2lRL0hYZ2ZH?= =?utf-8?Q?TQTvHwiZlG47IEexib3rA8Y4A?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: E57kt3VCrWJ8JtqL9W64MdaLAVkKNiYdEigqef0YwmjYBRFLprQ3S9f5Zhpvhj5S+Rf0xYs5u855wPrXHKykz4tIfIYMRWGJ59964hWsx8EjOujKlOMLMD8nakXmxWhhPA/XW+6vGcFXzxfzv+4IAjgnY/Y1n2htRoRIiH9/VaBBdNL1czN397SG7lHtAFRWItx90CamZAHiALYyUJM+44ys7oRLEHNsFE7wGxo1ICfhZpml8QbGZnY/u4M3BpvoXqruMVtpq7gS0jjVv2GmlS6FE75XdhLPcCOtFWrXkmWXhYl6ii7CSJE6xzh2mJV7Hyzvh8C3qwByE0oPwixZGQs/FNfvfVIg811Vzzg5+c2JsFhfqRZE7e8LWv271bqEAr0/R6LfqsikEp/MZTOnpkQdSRwlab0w7IKarDyDudTaIySC0xojqq65k3oAyi3ipoUz1va/SzjN6Vwg82/6/i/dC8LUfwJzGuHlPU2Jtygie/D4bTCQacJ/ZCn+t9ZbpE1flFj4s/JDX/+81FclRMOJp6/qZ9NqW5pbhXU7cJ6Ur0l8fkdaGhXFAy+eFKYhv7xQnHnqy8+aA/Ofxn14UWsuBDQJFyVEws9yPmZ5VKfOBPF6/c1B18+fj/kZ18KYKvn1rOdLqPZj9sq7neJ3qZ++p9o4VeUeGqcuIfYylLfv+YgX8UcuBh9NaZu/s6YHyfTMvxuzxE5IMBnyFWCtkQhxRcDJEkkUMKyD0N2/KiEeLnRJYmQdkatKL8n6iqAAFYJ2jzscoR5A62VelG1/+PjZXcRXJasxx5MWrAsb6Yfb6QBe/B63FwuX9NqyznK8 X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: d16bf6b1-5da6-40e8-b54f-08db6bf99773 X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Jun 2023 10:33:13.7310 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: BcW5SuM/w2qg2Y6utBoeZyWUA21hALddroLalCwxvNZRRI272JaHPzDYEJI02Hz/u2Q144py/2FmI3szhd+1MQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR03MB6266 On Tue, Jun 13, 2023 at 12:23:37PM +0200, Jan Beulich wrote: > On 13.06.2023 12:13, Roger Pau Monne wrote: > > Do not rely on iommu local variable pointing to a valid amd_iommu > > "Do not rely" sounds like we might, but we choose not to. But we may > not rely on this, as the pointer simply isn't valid to deref past > the loop. Hence perhaps better "We cannot rely ..." or even "The > iommu local variable does not point to ..."? "Xen cannot rely ..." doesn't modify the sentence too much and could likely be adjusted at commit if you agree? Otherwise your last suggestion would also be OK by me. > > element after the call to for_each_amd_iommu(). Instead check whether > > any IOMMU on the system doesn't support Invalidate All in order to > > perform the per-domain and per-device flushes. > > > > Fixes: 9c46139de889 ('amd iommu: Support INVALIDATE_IOMMU_ALL command.') > > Signed-off-by: Roger Pau Monné > > --- > > I don't have a way to test host suspend/resume, so the patch is only > > build tested. > > --- > > xen/drivers/passthrough/amd/iommu_init.c | 5 ++++- > > 1 file changed, 4 insertions(+), 1 deletion(-) > > > > diff --git a/xen/drivers/passthrough/amd/iommu_init.c b/xen/drivers/passthrough/amd/iommu_init.c > > index 9773ccfcb41f..4facff93d68b 100644 > > --- a/xen/drivers/passthrough/amd/iommu_init.c > > +++ b/xen/drivers/passthrough/amd/iommu_init.c > > @@ -1580,6 +1580,7 @@ void cf_check amd_iommu_crash_shutdown(void) > > void cf_check amd_iommu_resume(void) > > { > > struct amd_iommu *iommu; > > + bool invalidate_all = true; > > > > for_each_amd_iommu ( iommu ) > > { > > @@ -1589,10 +1590,12 @@ void cf_check amd_iommu_resume(void) > > */ > > disable_iommu(iommu); > > enable_iommu(iommu); > > + if ( !iommu->features.flds.ia_sup && invalidate_all ) > > You don't really need the right hand part of the condition, do you? > > Preferably with the adjustments (which I'd be happy to do while > committing, as long as you agree) > Reviewed-by: Jan Beulich Wanted to avoid repeatedly setting `invalidate_all = false` if all the IOMMUs on the system don't support Invalidate All. I don't have a strong opinion, my first (local) version didn't have the right hand side of the condition, but then I realized that setting this for every IOMMU on the system could be wasteful. Thanks, Roger. From xen-devel-bounces@lists.xenproject.org Tue Jun 13 10:40:41 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 10:40:41 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548078.855846 (Exim 4.92) (envelope-from ) id 1q91S3-0002LX-Fe; Tue, 13 Jun 2023 10:40:39 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548078.855846; Tue, 13 Jun 2023 10:40:39 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q91S3-0002LQ-CG; Tue, 13 Jun 2023 10:40:39 +0000 Received: by outflank-mailman (input) for mailman id 548078; Tue, 13 Jun 2023 10:40:38 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q91S2-0002LK-18 for xen-devel@lists.xenproject.org; Tue, 13 Jun 2023 10:40:38 +0000 Received: from sender3-of-o58.zoho.com (sender3-of-o58.zoho.com [136.143.184.58]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id b962abd1-09d6-11ee-8611-37d641c3527e; Tue, 13 Jun 2023 12:40:35 +0200 (CEST) Received: from [10.10.1.82] (static-72-81-132-2.bltmmd.fios.verizon.net [72.81.132.2]) by mx.zohomail.com with SMTPS id 1686652818704537.0908992853477; Tue, 13 Jun 2023 03:40:18 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: b962abd1-09d6-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; t=1686652825; cv=none; d=zohomail.com; s=zohoarc; b=GUXR02iJIgRWsCWCxVgIMW1UZCEguvM9IAJNc3UIx0KnBLOiWCynFVmdu7cUOoG0GExQ8xkh9YfuxxvnOOR7Y9w35r8zPaJMmFRRK0td/pbBSzCC83WRdjTkG8Y9m863ls1tBiiKpOZmuV7oeEjqg69ZcxN0KVmUJVHaKamCNxE= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1686652825; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:MIME-Version:Message-ID:References:Subject:To; bh=C2s/VgZHS8sWtvgrusTBkAOg6G3bNzV1aLf9P2Gdn/w=; b=CbvsyclMyj+AlKO3Shoa7ljYfeW+v4jLa1Gp074BJOqnvRotCYRiGCHPisySQhGZ2NUX1hwcPyFPjKNU8xxLYttfzopNFR2VBhrRvWmnUPc3DyKDV77u1u73e+YMRzt1Y5pM7s9n4a9qeIpmfWje8z6/4e8sSUyej/513mQPNcQ= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass header.i=apertussolutions.com; spf=pass smtp.mailfrom=dpsmith@apertussolutions.com; dmarc=pass header.from= DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; t=1686652825; s=zoho; d=apertussolutions.com; i=dpsmith@apertussolutions.com; h=Message-ID:Date:Date:MIME-Version:Subject:Subject:To:To:Cc:Cc:References:From:From:In-Reply-To:Content-Type:Content-Transfer-Encoding:Message-Id:Reply-To; bh=C2s/VgZHS8sWtvgrusTBkAOg6G3bNzV1aLf9P2Gdn/w=; b=Z+YOQ2ITsvUdvuQ3ZesEhcHGFDh9J+g2R0PBhx3TMNv7PJZjHpOX1e8XS6oCrxON zQhGZncpWJnu5wVE3OcHscRcvtj4fnpx0l8sHn/UtD9wMxZTzfYJ8l/oBHkDvTcVThf XxHaXSTAsWomFtwZypi+EsCIju68X1Lho5nCxhao= Message-ID: <6549f13a-c905-1791-c508-ac2c0128bf78@apertussolutions.com> Date: Tue, 13 Jun 2023 06:40:17 -0400 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH 2/5] libxl: drop dead assignments to "ret" from libxl__domain_config_setdefault() Content-Language: en-US To: Jan Beulich Cc: Anthony Perard , Wei Liu , Juergen Gross , "xen-devel@lists.xenproject.org" References: <2dc50b58-a4e4-3e32-1876-94412b14b052@suse.com> <5eda17da-7185-9cf6-7e87-70da57aa0ebc@suse.com> <10f2d41f-b34f-207e-eb73-d53f31385d8e@suse.com> <70622b39-cf85-49f4-69a7-b8039baa07f4@apertussolutions.com> From: "Daniel P. Smith" In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-ZohoMailClient: External On 6/13/23 06:15, Jan Beulich wrote: > On 13.06.2023 11:57, Daniel P. Smith wrote: >> On 6/13/23 05:40, Jan Beulich wrote: >>> On 13.06.2023 11:21, Daniel P. Smith wrote: >>>> On 6/13/23 02:33, Jan Beulich wrote: >>>>> On 12.06.2023 22:21, Daniel P. Smith wrote: >>>>>> On 6/12/23 15:44, Daniel P. Smith wrote: >>>>>>> On 6/12/23 07:46, Jan Beulich wrote: >>>>>>>> If XSM is disabled, is it really useful to issue the 2nd and 3rd calls >>>>>>>> if the 1st yielded ENOSYS? >>>>>>> >>>>>>> Would you be okay with the calls staying if instead on the first >>>>>>> invocation of any libxl_flask_* method, flask status was checked and >>>>>>> stored in a variable that would then be checked by any subsequent calls >>>>>>> and immediately returned if flask was not enabled? >>>>> >>>>> I'm wary of global variables in shared libraries. >>>>> >>>> >>>> I agree with that sentiment, but I would distinguish global state from a >>>> global variable. I would take the approach of, >>>> >>>> static boot is_flask_enabled(void) >>>> { >>>> /* 0 unchecked, 1 checked but disabled, 2 enabled */ >>>> static int state = 0; >>>> >>>> if ( state == 0 ) >>>> state = check_flask_state(); /* pseudo call for real logic */ >>>> >>>> return (state < 2 ? false : true); >>>> } >>>> >>>> Then all the libxl_flask_* methods would is_flask_enabled(). This would >>>> not expose a global variable that could be manipulated by users of the >>>> library. >>> >>> Well, I certainly did assume the variable wouldn't be widely exposed. >>> And the library also clearly is far from free of r/w data. But still. >>> >>> That aspect aside - wouldn't such a basic state determination better >>> belong in libxc then? (There's far less contents in .data / .bss >>> there.) >> >> Not opposed at all, so a series with a patch to libxc paired and a new >> sub-op/sysctl as discussed below would be acceptable? > > I can only say yes here for the hypervisor side; I'm not a maintainer > of any significant part of the tool stack. > Understood, thank you. >>>>> Since in the specific case here it looks like the intention really is >>>>> to carry out Flask-specific operations, a means to check for Flask >>>>> specifically might indeed be appropriate. If not a new sub-op of >>>>> xsm_op, a new sysctl might be another option. >>>> >>>> I am actually split on whether this should be an sub-op of xsm op or if >>>> this should be exposed via hyperfs. I did not consider a sysctl, though >>>> I guess an argument could be constructed for it. >>> >>> Please don't forget that hypfs, unlike sysctl, is an optional thing, >>> so you can't use it for decision taking (but only for informational >>> purposes). >> >> Good point regarding hypfs, the check mentioned above is expected to >> always work, thus an optional feature probably is not best. >> >> The next question is, should it be sysctl or xsm-op. I am leaning >> towards xsm-op because as much as I believe XSM should be consider core >> to Xen, the XSM logic should remain contained. Adding it to sysctl would >> mean having to expose XSM state outside of XSM code and would make >> sysctl logic have to be aware of XSM state query functions. > > Well, you seemed hesitant towards an xsm-sub-op, so I suggested sysctl > as a possible alternative. One possible issue with an xsm-op is that at > the public interface level (public headers), besides __HYPERVISOR_xsm_op > there's no notion of xsm-op. And it was pointed out before that by kind > of blindly wiring xsm_op through to flask_op, adding XSM-module- > independent ops and/or ops for some future non-Flask module is going to > be a little, well, bumpy. That is in fact the source of my hesitance. Fixing xsm sub-op from being a flask specific, not well documented thing, to a documented general interface is on the list of many improvements needed. I believe handling this case could be done as an incremental step towards that by introducing a common sub-op structure that is used for the "get current module" sub-op since it will be new sub-op for FLASK module as well. As you mentioned, the next step will be the bumpy one of trying to convert the existing FLASK xsm-op sub-ops over to the new common structure. Until I try, I won't know for sure if I can do this as a small step. Let me see if I can carve out some time and give it a try. v/r, dps From xen-devel-bounces@lists.xenproject.org Tue Jun 13 10:42:27 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 10:42:27 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548085.855856 (Exim 4.92) (envelope-from ) id 1q91Tl-0002yu-T7; Tue, 13 Jun 2023 10:42:25 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548085.855856; Tue, 13 Jun 2023 10:42:25 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q91Tl-0002yn-QU; Tue, 13 Jun 2023 10:42:25 +0000 Received: by outflank-mailman (input) for mailman id 548085; Tue, 13 Jun 2023 10:42:25 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q91Tl-0002yd-9Y for xen-devel@lists.xenproject.org; Tue, 13 Jun 2023 10:42:25 +0000 Received: from mail-lf1-x133.google.com (mail-lf1-x133.google.com [2a00:1450:4864:20::133]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id fa443e0b-09d6-11ee-8611-37d641c3527e; Tue, 13 Jun 2023 12:42:23 +0200 (CEST) Received: by mail-lf1-x133.google.com with SMTP id 2adb3069b0e04-4f6283d0d84so6524637e87.1 for ; Tue, 13 Jun 2023 03:42:22 -0700 (PDT) Received: from EMEAENGAAD19049. (default-46-102-197-194.interdsl.co.uk. [46.102.197.194]) by smtp.gmail.com with ESMTPSA id n18-20020a1c7212000000b003f604793989sm14046403wmc.18.2023.06.13.03.42.21 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 13 Jun 2023 03:42:21 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: fa443e0b-09d6-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cloud.com; s=cloud; t=1686652942; x=1689244942; h=in-reply-to:content-disposition:mime-version:references:subject:cc :to:from:date:message-id:from:to:cc:subject:date:message-id:reply-to; bh=TEZtXVLIntkKJlfoXAG/sPp/JrN9hVzdJxLL7M1OdEo=; b=RPdy04GT968CdKfkx60s2o+0Ka+vURz6iOTc2LXMT/oMG4H+7KMmfM3T6PH8gzketp Eg38pZsmsSOM05c9XV4sOEyc08nES9GywgMlybD0ppHNVaGvKcqF15vAKUuaJOSrq7jL 2F+wpWIbDiA6FuwhG0KFPCtcp8k/nkcx7k35s= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686652942; x=1689244942; h=in-reply-to:content-disposition:mime-version:references:subject:cc :to:from:date:message-id:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=TEZtXVLIntkKJlfoXAG/sPp/JrN9hVzdJxLL7M1OdEo=; b=Xg6ShMdDlCdzjdkTcklKBZauWfvWHeJgcZ/1tOLfuwmqWmGyWwiAhdgj3Hg+NcFLPF qD3SkverUpVOGokCT0SAfGs+zyAmbhcHTjy6nGvP3TmMTiJg8SSgx2FpQgvjyYEJzbY0 mF/+Rlwj/nsIugDJgiZgg+k8n/aGIVe8jmX7P6R5+L93KigWplnRWNarN8xiF9Rrq/xH hcNFvdu8jC4Eq0aYmC/oYnWiiKEKlgQfBGGLEHUAIk+ODuiEgAnecQMvxX1rzl1TAwDf XEWvHT9/8/V9imqRY0qMgsc+o2jy6cEw9QtOoUPgx0EiPNas9bAL6tex8XU/mqOGoyKR WwKg== X-Gm-Message-State: AC+VfDzzWVcdlcoPq2J98tBaqrW0HJNx1zn5iozGsYyRHiMk6LKlls5i S9T2ZaSvWOU6FE7tNcg3dbA9ZA== X-Google-Smtp-Source: ACHHUZ4oVAZsNOPlgUkr3lGirmoC9CRfNSA2iTGJwoP9DYRVQeSM5ECH0uwyj3LCDTk//HAm7Yp53Q== X-Received: by 2002:a19:6551:0:b0:4f6:2a02:fc1a with SMTP id c17-20020a196551000000b004f62a02fc1amr4788747lfj.17.1686652941745; Tue, 13 Jun 2023 03:42:21 -0700 (PDT) Message-ID: <6488480d.1c0a0220.bdc79.4f7a@mx.google.com> X-Google-Original-Message-ID: Date: Tue, 13 Jun 2023 11:42:19 +0100 From: Alejandro Vallejo To: Jan Beulich Cc: Andrew Cooper , Roger Pau =?iso-8859-1?Q?Monn=E9?= , Wei Liu , Xen-devel Subject: Re: [PATCH v2 2/4] x86: Read MSR_ARCH_CAPS after early_microcode_init() References: <20230605170817.9913-1-alejandro.vallejo@cloud.com> <20230605170817.9913-3-alejandro.vallejo@cloud.com> <6ee9e687-b8ac-adfb-552e-522a21e128de@suse.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <6ee9e687-b8ac-adfb-552e-522a21e128de@suse.com> On Mon, Jun 12, 2023 at 05:46:07PM +0200, Jan Beulich wrote: > See early_cpu_init(). Ah, I missed that. I didn't expect several leafs to be read at once. I see now that that function takes care of > (I have to admit that I was also struggling with > your use of "read": Aiui you mean the field was never written / set, > and "read" really refers to the reading of the corresponding CPUID > leaf.) Correct, though in retrospect that does sound misleading. I meant read from the HW CPUID leaf. > > --- a/xen/arch/x86/cpu/microcode/core.c > > +++ b/xen/arch/x86/cpu/microcode/core.c > > @@ -840,6 +840,15 @@ static int __init early_microcode_update_cpu(void) > > return microcode_update_cpu(patch); > > } > > > > +static void __init early_read_cpuid_7d0(void) > > +{ > > + boot_cpu_data.cpuid_level = cpuid_eax(0); > > As per above I don't think this is needed. > > > + if ( boot_cpu_data.cpuid_level >= 7 ) > > + boot_cpu_data.x86_capability[FEATURESET_7d0] > > + = cpuid_count_edx(7, 0); > > This is actually filled in early_cpu_init() as well, so doesn't need > re-doing here unless because of a suspected change to the value (but > then other CPUID output may have changed, too). At which point ... MSR_ARCH_CAPS may genuinely appear only after a microcode update, so re-reading 7d0 and the MSR itself is probably the sane thing to do. > > > @@ -878,5 +887,17 @@ int __init early_microcode_init(unsigned long *module_map, > > if ( ucode_mod.mod_end || ucode_blob.size ) > > rc = early_microcode_update_cpu(); > > > > + early_read_cpuid_7d0(); > > + > > + /* > > + * tsx_init() needs MSR_ARCH_CAPS, but it runs before identify_cpu() > > + * populates boot_cpu_data, so we read it here to centralize early > > + * CPUID/MSR reads in the same place. > > + */ > > + if ( cpu_has_arch_caps ) > > + rdmsr(MSR_ARCH_CAPABILITIES, > > + boot_cpu_data.x86_capability[FEATURESET_m10Al], > > + boot_cpu_data.x86_capability[FEATURESET_m10Ah]); > > ... "centralize" aspect goes away, and hence the comment needs adjusting. Indeed. I'll rewrite that. > > --- a/xen/arch/x86/tsx.c > > +++ b/xen/arch/x86/tsx.c > > @@ -39,9 +39,9 @@ void tsx_init(void) > > static bool __read_mostly once; > > > > /* > > - * This function is first called between microcode being loaded, and CPUID > > - * being scanned generally. Read into boot_cpu_data.x86_capability[] for > > - * the cpu_has_* bits we care about using here. > > + * While MSRs/CPUID haven't yet been scanned, MSR_ARCH_CAPABILITIES > > + * and leaf 7d0 have already been read if present after early microcode > > + * loading time. So we can assume _those_ are present. > > */ > > if ( unlikely(!once) ) > > { > > I think I'd like to see at least the initial part of the original comment > retained here. Ack. Sure. Alejandro From xen-devel-bounces@lists.xenproject.org Tue Jun 13 10:45:16 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 10:45:16 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548089.855866 (Exim 4.92) (envelope-from ) id 1q91WH-0003YV-AX; Tue, 13 Jun 2023 10:45:01 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548089.855866; Tue, 13 Jun 2023 10:45:01 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q91WH-0003YO-6w; Tue, 13 Jun 2023 10:45:01 +0000 Received: by outflank-mailman (input) for mailman id 548089; Tue, 13 Jun 2023 10:45:00 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q91WG-0003YG-3K for xen-devel@lists.xenproject.org; Tue, 13 Jun 2023 10:45:00 +0000 Received: from esa4.hc3370-68.iphmx.com (esa4.hc3370-68.iphmx.com [216.71.155.144]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 5688c962-09d7-11ee-b232-6b7b168915f2; Tue, 13 Jun 2023 12:44:58 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 5688c962-09d7-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686653098; h=date:from:to:cc:subject:message-id:references: mime-version:content-transfer-encoding:in-reply-to; bh=wv/yieXc82E/9t9ufUCmJ/IkmPK3be34y9oKIDK6L9M=; b=fmUwAFUBHuzNfuFLuDkYBw7m3PLy8lyI35XZ7CJilWCbhZJj9F0z3q/B EuV6qVfWeknvxVs2buNNgRmULxA8hfEUEKM1kfg8cYaGQM0O+SjxKBLA3 gEuWRIWMD6E9SGVHDE2uDA62jX+Fwl2TdMudKarzb19OkAT3759tYNZxM k=; Authentication-Results: esa4.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none X-SBRS: 4.0 X-MesageID: 115113014 X-Ironport-Server: esa4.hc3370-68.iphmx.com X-Remote-IP: 162.221.156.123 X-Policy: $RELAYED IronPort-Data: A9a23:TAGOCaPutlPNOoXvrR22l8FynXyQoLVcMsEvi/4bfWQNrUol3zMCx mQfW2vVPq2LYDCmKIpybd+x/BxQ6MPXyYdiSAto+SlhQUwRpJueD7x1DKtS0wC6dZSfER09v 63yTvGacajYm1eF/k/F3oDJ9CU6jufQAOKnUoYoAwgpLSd8UiAtlBl/rOAwh49skLCRDhiE/ Nj/uKUzAnf8s9JPGjxSs/rrRC9H5qyo42tG5wdmPJingXeF/5UrJMNHTU2OByOQrrl8RoaSW +vFxbelyWLVlz9F5gSNy+uTnuUiG9Y+DCDW4pZkc/HKbitq/0Te5p0TJvsEAXq7vh3S9zxHJ HehgrTrIeshFvWkdO3wyHC0GQkmVUFN0OevzXRSLaV/ZqAJGpfh66wGMa04AWEX0r4vMGAWz uUjEiIyTS+Iu9Du/rTmV/Y506zPLOGzVG8eknRpzDWfBvc6W5HTBa7N4Le03h9p2JoIR6yHI ZNEN3w2Nk+ojx5nYz/7DLo3mvuogX/uNSVVsluPqYI84nTJzRw327/oWDbQUoXTGJwMxR7B+ goq+Uz6MiExP8C9zwHZ/1e1vs3QrSD0A60rQejQGvlC3wTImz175ActfUu2p7y1h1CzX/pbK lcI4Ww+oK4q7kupQ9LhGRqirxasoRo0S9dWVeog52mlyKXO5B2CLnMZVTMHY9sj3Oc/XTEw3 0WFt8/oDzdo9raSTBqgGqy89G3of3JPdClbOHFCFFFeizX+nG0tpkqXf9c7K7eOtM/KOg77/ wLSki5jmqpG2KbnyJ6HEUD7byOE/8aZEFBvul2IAgpJ/SsiOtf7OtXABUzzqK8Zcd3HFgTpU G0swZD20QwYMX2aeMVhqs0pFarh2fuKOSa0bbVHT8h4rGTFF5JOkOltDNBCyKRBaJxslcfBO hO7hO+ozMY70IGWRaF2eZmtLM8h0LLtE9/oPtiNMIoQP8ktK1TWoHE3DaJ144wLuBJ0+U3YE c3CGftA8F5AUfg3pNZIb7p1PUAXKtAWmjqIGMGTI+WP2ruCfn+FIYrpw3PXBt3VGJis+V2Pm /4Gbpvi9vmqeLGmCsUh2dJJfA9iwLlSLcyelvG7gcbafVM8RD98UaaMqV7jEqQ895loei7z1 inVcidlJJDX3xUr9S3ihqhfVY7S IronPort-HdrOrdr: A9a23:SYiBUKtWg5Onsm/yP6ShMIir7skDstV00zEX/kB9WHVpm6yj+v xG/c5rsCMc7Qx6ZJhOo7+90cW7L080lqQFg7X5X43DYOCOggLBQL2KhbGI/9SKIVycygcy78 Zdm6gVMqyLMbB55/yKnTVRxbwbsaW6GKPDv5ag8590JzsaD52Jd21Ce36m+ksdfnggObMJUK Cyy+BgvDSadXEefq2AdwI4t7iqnaysqHr+CyR2fiIa1A== X-Talos-CUID: =?us-ascii?q?9a23=3AcOHotmkdGCzmfINRwRI45kJzH4TXOSWF/XaIGFa?= =?us-ascii?q?DM3RWa4KedW3IxqU5jtU7zg=3D=3D?= X-Talos-MUID: 9a23:8yPahQVyEvm6d3bq/DzctBppKOVu2PijLVk1s4o2uMbfGhUlbg== X-IronPort-AV: E=Sophos;i="6.00,239,1681185600"; d="scan'208";a="115113014" Date: Tue, 13 Jun 2023 11:44:51 +0100 From: Anthony PERARD To: Roger Pau Monne CC: , , Wei Liu , Juergen Gross Subject: Re: [PATCH] libs/light: use the cpuid feature names from cpufeatureset.h Message-ID: References: <20230605103657.14191-1-roger.pau@citrix.com> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <20230605103657.14191-1-roger.pau@citrix.com> On Mon, Jun 05, 2023 at 12:36:57PM +0200, Roger Pau Monne wrote: > The current implementation in libxl_cpuid_parse_config() requires > keeping a list of cpuid feature bits that should be mostly in sync > with the contents of cpufeatureset.h. > > Avoid such duplication by using the automatically generated list of > cpuid features in INIT_FEATURE_NAMES in order to map feature names to > featureset bits, and then translate from featureset bits into cpuid > leaf, subleaf, register tuple. > > Note that the full contents of the previous cpuid translation table > can't be removed. That's because some feature names allowed by libxl > are not described in the featuresets, or because naming has diverged > and the previous nomenclature is preserved for compatibility reasons. > > Should result in no functional change observed by callers, albeit some > new cpuid features will be available as a result of the change. I've looked at the removed lists, and some cpuid flag name might be missing with this patch. When looking in "libxl_cpuid.c" and tools/include/xen/lib/x86/cpuid-autogen.h (INIT_FEATURE_NAMES), I found that some flags removed from libxl_cpuid.c seems to be missing with this patch: "sse4_1" "sse4_2" "tsc_adjust" "cmt" I did the same with the list removed from the man page, and those flags are missing (some were probably also missing before, so probably not a problem: "avx512ifma" "avx512vbmi" "cmt" "sse4_1" "sse4_2" "tsc_adjust" So, at least for the first list, is it a problem? Or did I failed to check them properly? (It seems that "cmt" or "tsc_adjust" for example comes from libvirt, 90b2a267c19c ("libxl: add more cpuid flags handling")) > While there constify cpuid_flags name field. > > Signed-off-by: Roger Pau Monné > --- > diff --git a/docs/man/xl.cfg.5.pod.in b/docs/man/xl.cfg.5.pod.in > index 24ac92718288..c5c5b8716521 100644 > --- a/docs/man/xl.cfg.5.pod.in > +++ b/docs/man/xl.cfg.5.pod.in > @@ -2010,24 +2010,12 @@ proccount procpkg stepping > > =back > > -List of keys taking a character: > +List of keys taking a character can be found in the public header file > +L https:// ;-) And this probably want to be "xenbits.xenproject.org" Also, I think there's maybe an issue with this link. Maybe someone can assume that "TM1" takes a character, but that flags I think would get rejected, issue with upper case vs lower case. Then, if we deal with the casing, we still have feature like "AVX512_IFMA", which would only be recognize if written "avx512-ifma", so issue with "-" vs "_". > diff --git a/tools/libs/light/libxl_cpuid.c b/tools/libs/light/libxl_cpuid.c > index f5ce9f97959c..0c7ffff416fe 100644 > --- a/tools/libs/light/libxl_cpuid.c > +++ b/tools/libs/light/libxl_cpuid.c > @@ -342,6 +214,28 @@ int libxl_cpuid_parse_config(libxl_cpuid_policy_list *cpuid, const char* str) > if(!strncmp(str, flag->name, sep - str) && flag->name[sep - str] == 0) > break; > } > + if (flag->name == NULL) { > + const struct feature_name *feat; > + /* Provide a NUL terminated feature name to the search helper. */ > + char *name = strndup(str, sep - str); > + > + if (name == NULL) > + return 4; out-of-memory are usually fatal in libxl. Any reason to use `strndup` instead of `libxl__strndup`? I guess we don't have any libxl_ctx, so we can't use the libxl function. So, instead of returning an arbitrary integer that isn't returned yet by the function, could you return ERROR_NOMEM? I wonder if it would be possible to use a buffer on the stack instead, but it might not be worth the effort to find the right size. Thanks, -- Anthony PERARD From xen-devel-bounces@lists.xenproject.org Tue Jun 13 10:48:50 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 10:48:50 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548094.855876 (Exim 4.92) (envelope-from ) id 1q91Zm-00049s-Os; Tue, 13 Jun 2023 10:48:38 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548094.855876; Tue, 13 Jun 2023 10:48:38 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q91Zm-00049l-M8; Tue, 13 Jun 2023 10:48:38 +0000 Received: by outflank-mailman (input) for mailman id 548094; Tue, 13 Jun 2023 10:48:37 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q91Zl-00049f-Gw for xen-devel@lists.xen.org; Tue, 13 Jun 2023 10:48:37 +0000 Received: from esa6.hc3370-68.iphmx.com (esa6.hc3370-68.iphmx.com [216.71.155.175]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id d7c7dfb6-09d7-11ee-b232-6b7b168915f2; Tue, 13 Jun 2023 12:48:35 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: d7c7dfb6-09d7-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686653315; h=date:from:to:cc:subject:message-id:references: mime-version:in-reply-to; bh=N1pCnkBOjRcSOfashEDIH6C2FXieQW6qKKMz1KiRC9A=; b=UN4dnO71Uy1pww6oZngeTNzSDRzPBf79l024g1BshAea5Z1d3L4GDkrU voEVQKdqFbMyJ7rnA3oAubALpO2JLN2Lyqx/5hHG9WJV2TDUS1TEtin+N Qlt312aP59IXzdX9zFWEReSUE3iUoJtzGsazEDjfqN1wJKU3UY4sasGZP c=; Authentication-Results: esa6.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none X-SBRS: 4.0 X-MesageID: 111915156 X-Ironport-Server: esa6.hc3370-68.iphmx.com X-Remote-IP: 162.221.156.123 X-Policy: $RELAYED IronPort-Data: A9a23:tFMhs6Llo0roVqR+FE+RmZIlxSXFcZb7ZxGr2PjKsXjdYENShmNWm GYaD26EPvbcNjb8f99wa9uzpx5TusPVmIBmSwBlqX01Q3x08seUXt7xwmUcnc+xBpaaEB84t ZV2hv3odp1coqr0/0/1WlTZhSAgk/rOHvykU7Ss1hlZHWdMUD0mhQ9oh9k3i4tphcnRKw6Ws Jb5rta31GWNglaYCUpKrfrbwP9TlK6q4mhA4AVlPakjUGL2zBH5MrpOfcldEFOgKmVkNrbSb /rOyri/4lTY838FYj9yuu+mGqGiaue60Tmm0hK6aYD76vRxjnVaPpIAHOgdcS9qZwChxLid/ jnvWauYEm/FNoWU8AgUvoIx/ytWZcWq85efSZSzXFD6I+QrvBIAzt03ZHzaM7H09c4uOW9Kq d05dQkwYz+oituT6ojldulF05FLwMnDZOvzu1llxDDdS/0nXYrCU+PB4towMDUY354UW6yEP oxANGQpNU6bC/FMEg5/5JYWleG0hn75YntApUicv6Yf6GnP1g1hlrPqNbI5f/TTHJwExxvB+ zyuE2LRXC48asWzzz6/1nuN3MmIjwSlf709G+jtnhJtqALKnTFCYPEMbnOloOO0kU74WM9aI lY8/isopLI1skuxQbHVTxC+5XKJoBMYc95RCPEhrhGAzOzT+QnxLmoLVDlac/Q9qdQ7Azct0 zehnc7tBDFpmK2YTzSa7Lj8hS2zPyMYK3NEajIFURcC//HnoYc6lBWJScxseIauksf8BTbrh jyHsgA5n/AXjNUXzOO//FbOmTXqoYLGJiY84gjHGGio6AV0aaahZoqh81+d6uxPRK6cR0WBv XUZ3dCZ7foPAIulkC2LSf8KWrqu4p6tNznRgkVzDoIh3zuo8n+nO4tX5VlWKV1oMYAfcj/oZ EvSvwx54J5VNWGtK6htbOqZAtwn16H6Gfz5V/rfaZxFZZ0ZSeOc1HgwPwjKhTmryRVy1/hlY v93bPpAE15DMapjkBuXGt4g3JAAyxkb71mNeZDSmkHPPaWlWJKFdVsUGALQPr5ntv/c/1m9H 8V3bJXTlUgGOAHqSmyOqNNIcwhXRZQuLcquw/G7YNJvNeaP9IsJL/bKiY0sdIV+90i+vreZp yrtMqO0JbeWuJEmFelpQio5AF8XdcwjxU/XxAR1VbpS51AtYJy08IAUfIYtcL8s+YRLlKAkE aRUJ5rbU6gfE1wrHgjxi7Gn9OSOkzzx3Gqz09eNOmBjL/aMuSSUkjMbQucf3HZXVXfm3SfPi 7ahyhnaUfI+q/dKVa7rhAaU5wrp5xA1wbsiN3Yk1/EPIC0ABqA2cX2u5hL2SulQQSj+Ksyyj lnPW0tG+LOU/ufYMrDh3Mi5kmtgKMMmdmIyIoURxeje2fXyloZ7/bJ9bQ== IronPort-HdrOrdr: A9a23:7WK/+q6A6TSrVfkmdwPXwMjXdLJyesId70hD6qhwISY6TiW9rb HLoB17726QtN9/YhwdcLy7VJVoBEmskqKdgrNhX4tKPjOHhILAFugLhuHfKn/bak7DH4ZmpM FdmsNFaeEYY2IUsfrH X-Talos-CUID: =?us-ascii?q?9a23=3AND//82oyRnelVNk73eXgzjvmUZkdfHmB7VaNGnK?= =?us-ascii?q?1Jk1kcZi/cwGs+Ioxxg=3D=3D?= X-Talos-MUID: 9a23:d+hpwAR69T7HBSj9RXSyuxc8Letu556KAWFXt9IUnJejCgN/bmI= X-IronPort-AV: E=Sophos;i="6.00,239,1681185600"; d="scan'208";a="111915156" Date: Tue, 13 Jun 2023 11:48:17 +0100 From: Anthony PERARD To: Viresh Kumar CC: , Juergen Gross , Julien Grall , Vincent Guittot , , Alex =?iso-8859-1?Q?Benn=E9e?= , Mathieu Poirier , Oleksandr Tyshchenko , Erik Schilling Subject: Re: [PATCH V3.1] libxl: arm: Add grant_usage parameter for virtio devices Message-ID: References: <0e347b2f4817cc578a5f8e41bf70503ae8cf69e3.1685684586.git.viresh.kumar@linaro.org> <7a0afe5aebba4c0b5be43a517dedf41d4e4ddd57.1686636036.git.viresh.kumar@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Disposition: inline In-Reply-To: <7a0afe5aebba4c0b5be43a517dedf41d4e4ddd57.1686636036.git.viresh.kumar@linaro.org> On Tue, Jun 13, 2023 at 11:32:16AM +0530, Viresh Kumar wrote: > Currently, the grant mapping related device tree properties are added if > the backend domain is not Dom0. While Dom0 is privileged and can do > foreign mapping for the entire guest memory, it is still desired for > Dom0 to access guest's memory via grant mappings and hence map only what > is required. > > This commit adds the "grant_usage" parameter for virtio devices, which > provides better control over the functionality. > > Signed-off-by: Viresh Kumar > --- > V3->V3.1: > - Print "0" or "1" in xenstore instead of "True" or "False" for grant_usage. Reviewed-by: Anthony PERARD Thanks, -- Anthony PERARD From xen-devel-bounces@lists.xenproject.org Tue Jun 13 10:55:44 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 10:55:44 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548099.855885 (Exim 4.92) (envelope-from ) id 1q91gV-0005hn-FH; Tue, 13 Jun 2023 10:55:35 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548099.855885; Tue, 13 Jun 2023 10:55:35 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q91gV-0005hg-Ci; Tue, 13 Jun 2023 10:55:35 +0000 Received: by outflank-mailman (input) for mailman id 548099; Tue, 13 Jun 2023 10:55:34 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q91gU-0005ha-2W for xen-devel@lists.xenproject.org; Tue, 13 Jun 2023 10:55:34 +0000 Received: from mo4-p00-ob.smtp.rzone.de (mo4-p00-ob.smtp.rzone.de [85.215.255.20]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id d0740ed8-09d8-11ee-8611-37d641c3527e; Tue, 13 Jun 2023 12:55:31 +0200 (CEST) Received: from sender by smtp.strato.de (RZmta 49.5.3 AUTH) with ESMTPSA id L38909z5DAtLgi4 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256 bits)) (Client did not present a certificate); Tue, 13 Jun 2023 12:55:21 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: d0740ed8-09d8-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; t=1686653721; cv=none; d=strato.com; s=strato-dkim-0002; b=Q/+qAbJGAeHB72kyFEVHs4asb00k8ZVnaucX8o2BGmFV9a2+lc/WfPZi2rqB3KGLnU 0eVDtviyeOnLEBxwNW9XPoYUVRtAu4wUNb8yYBRq/9D/T3s4Q5uFGVBwft/5y6d0pFH/ +nTczKCjyfRDN+TL0IoZjv0RmcXgXVdAy+CYHf7Ao9A5Hb9gQ6vGmATmMX0ZBLGxUxw/ 9CiQ7O5eQbh4A6KVU4bPXZjZ3+teMk1FipqmNHiqLWtADBd6fWQBKSpSm2s+rMBL/nNQ EDcCxG0MvitxJpsnTL07XClteL+YvbC55LCTVPf3A0O6H5ElOq5ftsuWfw1cJdrmh8o0 fpUw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; t=1686653721; s=strato-dkim-0002; d=strato.com; h=Message-Id:Date:Subject:Cc:To:From:Cc:Date:From:Subject:Sender; bh=sRbirY/RQH93pxT0aGNHNMhIZ9WGkvyruar1mUwhkMU=; b=tTznOkbiFosIHBiv4EVOLafpm8XirhKHuxpQPo7Ar0dnmfXWeRtSh8bDKut6ZDOZwe ABkHqmQf9WRte02Zh/NsRp6zk+IW606oaxzm/M3aLFkhCBh1106jyUK9JBIoye344sez 6xuVbPlcVXlvsJ52oueUdvq2jQTJFZOx4nCqxu01eIK+FrEdPYOE5rKUvWOO9M0zuV4B WKXzrvpQLCR7WJwdNWQtkZtqRC9zW/mZ3jw0cruXdFDI8XAxQHGcpHOiZs72kXuYv5rs OJ8qWUVn5rJyv+MdChVl1euXqC55/tBLJl/MMjIF8v/JcCf5zcIE70+rFXNjUWSb+RiB Ji9Q== ARC-Authentication-Results: i=1; strato.com; arc=none; dkim=none X-RZG-CLASS-ID: mo00 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; t=1686653721; s=strato-dkim-0002; d=aepfle.de; h=Message-Id:Date:Subject:Cc:To:From:Cc:Date:From:Subject:Sender; bh=sRbirY/RQH93pxT0aGNHNMhIZ9WGkvyruar1mUwhkMU=; b=AEpAFCVwDuEIQs4x0OtizU2/EQS31oloSjzsCdpem6rK32UAmX//ltoWsTTsojI8Mi tbmTYgmB+vdsFsGNkJHJ8I/Dgp6/RHZ+cUujygaDPHLVYorCPzG4wckBZN+x/3CTquzv m7e9e4ugHmlJhQKFEq3mHt+k489Y91it7r43sSrhNWSmnEm2Ce/QKqTdkIQQYdvxoltu f5q++ay3wZ3MRcipsxn/Hk3sDsPOg/w6yxGbCP43Nl/Zzt7B8fejz/iWdcwik5GezAw/ 5ERrjf/2Yzn7qV5QYJK/JJm6B6IGJiKhrS/YouR8sJtrhAFwwu2F3DVO2vb5x5xOvO/z nrWg== DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; t=1686653721; s=strato-dkim-0003; d=aepfle.de; h=Message-Id:Date:Subject:Cc:To:From:Cc:Date:From:Subject:Sender; bh=sRbirY/RQH93pxT0aGNHNMhIZ9WGkvyruar1mUwhkMU=; b=23op1sipG9Sd40YrDbRHfw6l4EwNT1ibzHXKmq/NwOnjtaXZVYo8ElqousNOPtfqBi MTZEsv/wX4aZ63DshWCg== X-RZG-AUTH: ":P2EQZWCpfu+qG7CngxMFH1J+3q8wa/QXkBR9MXjAuzpIG0mv9coXAg4wrlX7F5stp0W7RR6sn4IXX0XAi33PEsP+tJs+yA==" From: Olaf Hering To: xen-devel@lists.xenproject.org Cc: Wei Liu , Anthony PERARD Subject: [PATCH v2] tools: fix make rpmball Date: Tue, 13 Jun 2023 12:55:13 +0200 Message-Id: <20230613105513.12949-1-olaf@aepfle.de> X-Mailer: git-send-email 2.35.3 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain; charset="us-ascii" Commit 438c5ffa44e99cceb574c0f9946aacacdedd2952 ("rpmball: Adjust to new rpm, do not require --force") attempted to handle stricter directory permissions in newer distributions. This introduced a few issues: - /boot used to be a constant prior commit 6475d700055fa952f7671cee982a23de2f5e4a7c ("use BOOT_DIR as xen.gz install location"), since this commit the location has to be referenced via ${BOOT_DIR} - it assumed the prefix and the various configurable paths match the glob pattern /*/*/* Adjust the code to build a filelist on demand and filter directories from an installed filesystem.rpm. This works on a SUSE system, and will likely work on a RedHat based system as well. Take the opportunity to replace the usage of $RPM_BUILD_ROOT with %buildroot, and use pushd/popd pairs. Signed-off-by: Olaf Hering --- v2: remove bogus pushd/popd pair, use pipe as delimiter for s command for consistency tools/misc/mkrpm | 32 ++++++++++++++++++++++---------- 1 file changed, 22 insertions(+), 10 deletions(-) diff --git a/tools/misc/mkrpm b/tools/misc/mkrpm index 74f6761bb0..b072144a42 100644 --- a/tools/misc/mkrpm +++ b/tools/misc/mkrpm @@ -50,20 +50,32 @@ uninstall. %build %install -rm -rf \$RPM_BUILD_ROOT -mkdir -p \$RPM_BUILD_ROOT -cd %{_xenroot} -dist/install.sh \$RPM_BUILD_ROOT/ - -cd \$RPM_BUILD_ROOT +rm -rf %buildroot +mkdir -p %buildroot +pushd %_xenroot +dist/install.sh %buildroot + +rm -f dist/filesystem.txt +rm -f dist/directories.txt +rm -f dist/files.txt +find %buildroot -type d | sed 's|^%buildroot||' | sort > dist/directories.txt +find %buildroot -type f | sed 's|^%buildroot||' | sort > dist/files.txt +find %buildroot -type l | sed 's|^%buildroot||' | sort >> dist/files.txt +if rpm -ql filesystem > dist/filesystem.txt +then + while read + do + sed -i "s|^\${REPLY}$||" dist/directories.txt + done < dist/filesystem.txt +fi +sed 's|^|%%dir |' dist/directories.txt >> dist/files.txt +popd %clean -rm -rf \$RPM_BUILD_ROOT +rm -rf %buildroot -%files +%files -f %_xenroot/dist/files.txt %defattr(-,root,root,-) -/*/*/* -/boot/* %post EOF From xen-devel-bounces@lists.xenproject.org Tue Jun 13 11:01:29 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 11:01:29 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548105.855895 (Exim 4.92) (envelope-from ) id 1q91m4-0007D9-28; Tue, 13 Jun 2023 11:01:20 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548105.855895; Tue, 13 Jun 2023 11:01:20 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q91m3-0007D2-VM; Tue, 13 Jun 2023 11:01:19 +0000 Received: by outflank-mailman (input) for mailman id 548105; Tue, 13 Jun 2023 11:01:18 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q91m2-0007Cw-6J for xen-devel@lists.xenproject.org; Tue, 13 Jun 2023 11:01:18 +0000 Received: from esa5.hc3370-68.iphmx.com (esa5.hc3370-68.iphmx.com [216.71.155.168]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 9b9a3d97-09d9-11ee-8611-37d641c3527e; Tue, 13 Jun 2023 13:01:15 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 9b9a3d97-09d9-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686654075; h=date:from:to:cc:subject:message-id:references: mime-version:in-reply-to; bh=bzIgJF1d4fa/39g/1Ipd1CToy/HdoGFWODylF4OoT1U=; b=ahyyHqJapHah+fR9MHHp/E7JNBI9SrMpMnrv6zEDnPpfSbwdK7Spgirs WTq2dmLOQOmYYupcp21R9OheIIAUzMjEILZ2SuzxZRhimVf7GyGncH6ra UZBSEddY9ACmHYhSkWJvZdo2q8MhmVUFLQCxD0GMe6aoOeBkXh8v+sDr6 w=; Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none X-SBRS: 4.0 X-MesageID: 111338205 X-Ironport-Server: esa5.hc3370-68.iphmx.com X-Remote-IP: 162.221.156.123 X-Policy: $RELAYED IronPort-Data: A9a23:5R74qKKK6bgzi9zfFE+RwZUlxSXFcZb7ZxGr2PjKsXjdYENS1TdWz mUaXzuDOPnYY2PzfNslbtzk8EgG7JKBx9FlTgFlqX01Q3x08seUXt7xwmUcnc+xBpaaEB84t ZV2hv3odp1coqr0/0/1WlTZhSAgk/rOHvykU7Ss1hlZHWdMUD0mhQ9oh9k3i4tphcnRKw6Ws Jb5rta31GWNglaYCUpKrfrbwP9TlK6q4mhA4AVlPakjUGL2zBH5MrpOfcldEFOgKmVkNrbSb /rOyri/4lTY838FYj9yuu+mGqGiaue60Tmm0hK6aYD76vRxjnVaPpIAHOgdcS9qZwChxLid/ jnvWauYEm/FNoWU8AgUvoIx/ytWZcWq85efSZSzXFD6I+QrvBIAzt03ZHzaM7H09c4mKFN++ 9ooBQwjUSDdqOO8562EUtJF05FLwMnDZOvzu1llxDDdS/0nXYrCU+PB4towMDUY354UW6yEP oxANGQpNU6bC/FMEg5/5JYWleG0hn75YntApUicv6Yf6GnP1g1hlrPqNbI5f/TTHJwOxRbC/ j+uE2LREh8cMISS+H2+yCiP3O3klCnbcYk5PejtnhJtqALKnTFCYPEMbnO8pfC3okezQ9xbJ goY90IGvaU0sUCmUNT5dxm5u2Kf+A4RXcJKFO834x3LzbDbiy6GAkAUQzgHb8Yp3Oc/XTEw3 0WFt8/oDzdo9raSTBqgGqy89G3of3JPdClbOHFCFFFeizX+nG0tpkPmfOZtNp6YsvPKKW/fw jqtsxcmvJxG2KbnyJ6HEUD7byOE/8aZEFBvul2IAgpJ/SsiOtf7OtXABUzzqK8Zcd3HFgTpU G0swZD20QwYMX2aeMVhqs0pFarh2fuKOSa0bbVHT8h4rGTFF5JOkOltDNBCyKRBaJxslcfBO hO7hO+ozMY70IGWRaF2eZmtLM8h0LLtE9/oPtiNMIoQP8ktK1TWoHE3DaJ144wLuBJ0+U3YE c3CGftA8F5AUfg3pNZIb7p1PUAXKtAWmjqIGMGTI+WP2ruCfn+FIYrpw3PXBt3VGJis+V2Pm /4Gbpvi9vmqeLGmCsUh2dJJfA9iwLlSLcyelvG7gcbafVM8RD98UaaMqV7jEqQ895loei7z1 inVcidlJJDX2BUr9S3ihqhfVY7S IronPort-HdrOrdr: A9a23:g5IvQawAljH+MxMmJPF9KrPwT71zdoMgy1knxilNoH1uEvBw8v rEoB1173LJYVoqMk3I+urgBED/exzhHPdOiOEs1NyZMDUO1lHHEL1f X-Talos-CUID: 9a23:AXfSXG9tRBSXcxKt/LWVvx89KPArVE3w8FnvExGXCGxOV4KNcnbFrQ== X-Talos-MUID: =?us-ascii?q?9a23=3AhJ3o1Q3N/lOV3AhDvq7CkRfVPTUj86qoDBgAoNI?= =?us-ascii?q?9gZOnby5bMj29pT+ca9py?= X-IronPort-AV: E=Sophos;i="6.00,239,1681185600"; d="scan'208";a="111338205" Date: Tue, 13 Jun 2023 12:00:52 +0100 From: Anthony PERARD To: Olaf Hering CC: , Wei Liu Subject: Re: [PATCH v2] tools: fix make rpmball Message-ID: References: <20230613105513.12949-1-olaf@aepfle.de> MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Disposition: inline In-Reply-To: <20230613105513.12949-1-olaf@aepfle.de> On Tue, Jun 13, 2023 at 12:55:13PM +0200, Olaf Hering wrote: > Commit 438c5ffa44e99cceb574c0f9946aacacdedd2952 ("rpmball: Adjust to > new rpm, do not require --force") attempted to handle stricter > directory permissions in newer distributions. > > This introduced a few issues: > - /boot used to be a constant prior commit > 6475d700055fa952f7671cee982a23de2f5e4a7c ("use BOOT_DIR as xen.gz > install location"), since this commit the location has to be > referenced via ${BOOT_DIR} > - it assumed the prefix and the various configurable paths match the > glob pattern /*/*/* > > Adjust the code to build a filelist on demand and filter directories > from an installed filesystem.rpm. This works on a SUSE system, and > will likely work on a RedHat based system as well. > > Take the opportunity to replace the usage of $RPM_BUILD_ROOT with > %buildroot, and use pushd/popd pairs. > > Signed-off-by: Olaf Hering > --- > > v2: remove bogus pushd/popd pair, use pipe as delimiter for s command for consistency Reviewed-by: Anthony PERARD Thanks, -- Anthony PERARD From xen-devel-bounces@lists.xenproject.org Tue Jun 13 11:02:03 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 11:02:03 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548112.855906 (Exim 4.92) (envelope-from ) id 1q91ml-0007nM-Ex; Tue, 13 Jun 2023 11:02:03 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548112.855906; Tue, 13 Jun 2023 11:02:03 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q91ml-0007nF-BW; Tue, 13 Jun 2023 11:02:03 +0000 Received: by outflank-mailman (input) for mailman id 548112; Tue, 13 Jun 2023 11:02:02 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q91mk-0007Zu-H7 for xen-devel@lists.xenproject.org; Tue, 13 Jun 2023 11:02:02 +0000 Received: from esa2.hc3370-68.iphmx.com (esa2.hc3370-68.iphmx.com [216.71.145.153]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id b827f3db-09d9-11ee-b232-6b7b168915f2; Tue, 13 Jun 2023 13:02:01 +0200 (CEST) Received: from mail-dm6nam12lp2171.outbound.protection.outlook.com (HELO NAM12-DM6-obe.outbound.protection.outlook.com) ([104.47.59.171]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 13 Jun 2023 07:01:57 -0400 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) by LV8PR03MB7518.namprd03.prod.outlook.com (2603:10b6:408:190::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.46; Tue, 13 Jun 2023 11:01:54 +0000 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::3474:a81:a100:1529]) by SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::3474:a81:a100:1529%6]) with mapi id 15.20.6455.043; Tue, 13 Jun 2023 11:01:53 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: b827f3db-09d9-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686654121; h=date:from:to:cc:subject:message-id:references: content-transfer-encoding:in-reply-to:mime-version; bh=YDyR3AYWwDz7F2U7p1Va48mLoi3FggJ2SOmPLybHjto=; b=IyLDeuTcF+lvOaoaQroGdPngkSenCJRQVzhHyM4vZstzR/aJsJQ21EXG coEDOoaxghywbnpGwjE2C9O0Amgi018RgrlQQ/+0BJbb+GfAFDDNzbM+7 JK9QzRfzVrKs6Is6SBSL4x++lCDFPwzKV2iKgUqQkKqvAXMQiYFhAUcqL U=; X-IronPort-RemoteIP: 104.47.59.171 X-IronPort-MID: 112476844 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:z/kTYqPHPQG5viDvrR2ClsFynXyQoLVcMsEvi/4bfWQNrUpx1zVWz jZLC2GPPaqCMTT9fIslbIu0oR4H65HQn4RjGgto+SlhQUwRpJueD7x1DKtS0wC6dZSfER09v 63yTvGacajYm1eF/k/F3oDJ9CU6jufQAOKnUoYoAwgpLSd8UiAtlBl/rOAwh49skLCRDhiE/ Nj/uKUzAnf8s9JPGjxSs/rrRC9H5qyo42tG5wdmPJingXeF/5UrJMNHTU2OByOQrrl8RoaSW +vFxbelyWLVlz9F5gSNy+uTnuUiG9Y+DCDW4pZkc/HKbitq/0Te5p0TJvsEAXq7vh3S9zxHJ HehgrTrIeshFvWkdO3wyHC0GQkmVUFN0OevzXRSLaV/ZqAJGpfh66wGMa04AWEX0uhMDyZ// KAKEh8UMRWA187n8Kq2UuY506zPLOGzVG8ekldJ6GiDSNoDH9XESaiM4sJE1jAtgMwIBezZe 8cSdTtoalLHfgFLPVAUTpk5mY9EhFGmK2Ee9A3T+PtxujeKpOBy+OGF3N79YNuFSN8Thk+Fj mnH4374ElcRM9n3JT+tqyv22rCRzX+nMG4UPLvg9fUtnmDK+jdQVBk4eGCfqNuGtmfrDrqzL GRRoELCt5Ma5EGtC9XwQRC8iHqFpQIHHcpdFfUg7wOAwbaS5ByWbkAbShZRZdpgs9U5LRQo2 UWOhMjBHiF0vfueTnf1y1uPhTa7OCxQIWpcYyYBFFEB+4O6/9h1iQ/TRNF+FqLzlsfyBTz73 zGNqm45mqkXiskIka68+Dgrng6Rm3QAdSZtji2/Y45vxlklDGJ5T+REMWTm0Ms= IronPort-HdrOrdr: A9a23:K9Nauq13Q18vwtrCfcZfJQqjBNEkLtp133Aq2lEZdPU1SKylfq WV98jzuiWYtN98YhsdcLO7WZVoP0myyXcd2+B4AV7IZmXbUQWTQr1f0Q== X-Talos-CUID: 9a23:ogOuumEpmzzrPk1/qmJpz0BTK8l5YEfy1SjVIB+UWFZxRaWaHAo= X-Talos-MUID: =?us-ascii?q?9a23=3AJMjPIg3Q0YrvHd62Fg8dbac3+TUj5fytAwcTrMw?= =?us-ascii?q?64IrYMQJdABOUrguLa9py?= X-IronPort-AV: E=Sophos;i="6.00,239,1681185600"; d="scan'208";a="112476844" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=ErxQRWYI3NU4h6TpySeaaHEQnB4fV4DqFBJsmvIizImXAuhQYwxL2E9x7CYeg0jkg1yaNLZIC9+rk+lfVYft9ZOInIMO+65XS3rvYvjVAQQKXEb3zF40caD/Bj0VYFL9FwhuNcZARuX938M6K/HbyRFOv/tHyf3pbsSP6g9dboy7PnWnoG2bwdV1sgp4DehDOZl4HNQmEstxVXa0aUYx1aj7nosZSCNggh88U56g4Ms/3InALqibfQA8h707t7PRZBIBIrTpFEhV1rudHOLJQZpZuzt5zr2ERX0QI2tzLHKjjoe+qioCUjhd5hpm3XhPXh9tL1HrG66q8QXq4yH88g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=YMwdBqaoEcIUxdHwAO9oIQE1YEouS7LZTFXu/dIPxD8=; b=PHr4oulHzsmqLqjifu0YNsn2pEDN+Kposwf/QNgoZP2Kqi9uMQ8x6PWFpgAAuyctzcGhvJP6ArqjIau+IPFS9xg5zIR7ypqU8B5B3e6osRkJ4Bg8mZzPnwkJ4d+TUFIOtqJ7gQT32aqr3uKhxxskos+iRzialiDMk8rTvmoAmbUoQ/Iz5qpPLvAYql7G5GQCgq82OHZQtRY3GqX5QWcRU37hAUCPiyHonI+WGbwbij3JyYejJ9mxjSo5gyeKHo9NgeJ70C8g5mZ/uH1wZg6XGn1fY/LNyYIZR2SKqRZKCj4YsnaEnNXCDa6/xCG1W00OqBtOaBC1HcBHW0PW2gvttw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=YMwdBqaoEcIUxdHwAO9oIQE1YEouS7LZTFXu/dIPxD8=; b=C1rzOwGKvo1BPsIHxvYcyoFI0RHoqTbrVWVjdQJj3e3ss52mIZjLLbw/D8Bu+8qtUbmRCRE277B9Jh6z2iEIprJYZ0LDcx3BQ1vtw3gVawn58R+9YiNWTwHXOi1VBUs7b/cbdlj5OX1k7SqEanHlXuLQxA0r7wI9huJ9Je4D8A4= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Date: Tue, 13 Jun 2023 13:01:47 +0200 From: Roger Pau =?utf-8?B?TW9ubsOp?= To: Anthony PERARD Cc: xen-devel@lists.xenproject.org, andrew.cooper3@citrix.com, Wei Liu , Juergen Gross Subject: Re: [PATCH] libs/light: use the cpuid feature names from cpufeatureset.h Message-ID: References: <20230605103657.14191-1-roger.pau@citrix.com> Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: X-ClientProxiedBy: LO2P123CA0078.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:138::11) To SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|LV8PR03MB7518:EE_ X-MS-Office365-Filtering-Correlation-Id: 4e5d3326-9191-4f4e-6799-08db6bfd98b7 X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: NRS7uoV5g25qGmaTcQH2qRRYCPCSoPKmp6V+TgA7fe8u+UPpXyeQHZwNtqjyLv2ys0rAkVd2yox3posMLRWPN5ay+Qj1U+75YN7t/nZCqR9ZILeWJNlJmBuMsUV3IdchpAV64Ty/fAKF1JJdqiOQQhP6xDRoJAYn1zIK4NRESB31lh40XjEncCAEVPa8FStFP/vceGEPE5iwN+BSswZVaiwDZlMOhP1fnDP6mwcKK7p3kdZM2RAueco8QMEQy9NMatHUtYirgAMVsjLq7oWnJXctn3FUI/M8Vn/S8ZqY9cwwzjlQVd/ub6lOl/Jg/3i+Y8NKKgwme4mlnkCCI1CPpfYJvsEc+LOhWQSN+etDs5BD9/I6jbbVMwvfW3Q9f9o2EhSjnG5IF++3AAT7D3qGkD6j5Pxcopqn/D2suUW2BRXyRVFRlkK14POZ1gOrOcly8X+KsdVcqFmMUtd2sXFgY+JYYHiNyI9CG7eda6m4YfTRXCcpNBAqrD2+qLWMCtm4JGwIy+gVx7xOHEdC/aBGHRef6SnDX/GzMLPilZZiv0MDqkShD3ZdPTsH9rjWKSXB X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(7916004)(4636009)(346002)(396003)(366004)(136003)(39860400002)(376002)(451199021)(85182001)(41300700001)(6666004)(316002)(6486002)(966005)(5660300002)(66946007)(66476007)(478600001)(54906003)(8936002)(6862004)(4326008)(66899021)(6636002)(66556008)(8676002)(33716001)(86362001)(9686003)(186003)(38100700002)(6512007)(6506007)(26005)(82960400001)(2906002)(83380400001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?N2hlUHpZcVpDNS95c2djWWRRbDdDU1VCZWFPNEpWL1hmWWg4TDdpQlJnK0dG?= =?utf-8?B?dnV1WXdHaVZlaEtzRFFFUUtVMUlQbnRneVhtNVhtQkVEZkVuWklQWkNQcjRQ?= =?utf-8?B?Y0VQeHJBUFRJa0dGWkt3aERaQUtIZ1RiNGQ2WUNFc3ViT1NLSnpQazc0Tm5k?= =?utf-8?B?bVkraDBucXZkT2RBamtqckloTGxONXpuV3R2SGMvMFFCU0J4VDQyUmJUaTF3?= =?utf-8?B?L2RTYTM3NlFpRm9hMUI3d0ZaOU83M2dvZVkydTd1VXpubDZkQTJkbXY5MjV5?= =?utf-8?B?WW9yenJpZkRHNzhSbXFvMFpaVXVlcFpJK1pReWZFQ1FGL1kwZUp6b2ZFUlox?= =?utf-8?B?UGRNSjRGUGJUZXpBMllSbjRseVV2Y3J0dEw1T2VkRXVKYytDVncrRnNvU0VB?= =?utf-8?B?OFNFVVZJZHRJMUY5d1JBYy8wZjJvK28ybEZMRCttWllQN1ZUU2lCTkd5Yjk4?= =?utf-8?B?ZTNGd2NaU0RRNVBPZTBSc3hMcUJJNURuYjZGSHJvVlFXVFN0UWQrS25lMitn?= =?utf-8?B?OCtMRy9lOGlUVVRnMkZQOHNqVkdDdVoweHBYZUd0YktQTlBDMGhJYTZQb0di?= =?utf-8?B?M0JvVSs0N1lzSkdudHNVbmJrVFRCbk9sQzQ0SGMwd1pmQXZ4TmZwdVZLRmh5?= =?utf-8?B?V0ZtblpNWTRGQ1I0SUYzSlN3cDZONlIyTjdPUjRzeTlPTWFPaWRDS1pjWmR3?= =?utf-8?B?WkpDdnJXS3UxRWxtQ2UveEp3R3pHTFhpcFI1VmI5RmZmWmFFUFQ5ZFJ4eHhn?= =?utf-8?B?Zk1RbVkvR0d3a1doNjZwZVFtQXNuNkxjK3VYSkxIUjNRWWNpWS9xLzEzRUlS?= =?utf-8?B?MzMwSWMwRW5lNjMvWGRlZmlrYy9OZW5EeEtPYUh5cnVFcHRGMVM5emZHQXJa?= =?utf-8?B?OWU4TGdiWWdrYTh4UWdnOEVMNUV1Tkl2OEhQdEFDRVdlVzNxWDF4OVpEdDVH?= =?utf-8?B?bWh5eVQvRVZqOXd3YXhmRlBQQ09USXpWOVlwTmpRcERHZjlpUTc5bzl0d2FC?= =?utf-8?B?S2hGeDlmcXdLaVVNQXZyMXFGN1AzVmZNVTNucFArTmtZejNsdkUwelQydDdL?= =?utf-8?B?d0t1MGxMSWZ1L1ZYTlJoL2JDQm9FaUJFUFRuUWR6elc1b1VNN0lSNDZDVkM0?= =?utf-8?B?YWM3NnphWVpYb1czb3U1MkhQTE5UZ21CTGk2KzZ1aFh1VC9yS25IdGozZGJi?= =?utf-8?B?anJTMzRxSVB2QWY0OXBFcHVPeGVCY2oyWWh1dEhrV3RwOEdVMkdKNEdKRXVt?= =?utf-8?B?OW04ODdzUEhkMnRFQ2RNcDRTVjdnZG8wMURqZUNqTEZ2cEduZ3djOUE0NDV6?= =?utf-8?B?VWlXc3M3NTJBR1A2dEtVSkNZbmQxZ01EVnJlUDB2bks2bFZLSDlmOUdYRHVU?= =?utf-8?B?Z2daNmRvV2NTdFpjVnBja2ozdm1hWjhEcW15ZWZmUFduMS9mT3lpNXdmYmpo?= =?utf-8?B?MFM0STNWSGlzQVQ2Z3NQNHhSWEZ2KzZ5QWo5VXpYdUNHVitlSU93bytURjFJ?= =?utf-8?B?L3pJUkNUaUZsa1ljZGlHQkNEY2FCMjNZUVViRFJBOUIzcDhuZTU4WVlEU3BK?= =?utf-8?B?LzNNWVlaZm05UFk1TXZZMSsyWTh3bmtlS29BdDN5aUNYMDlMNXE3NGhuQ3lM?= =?utf-8?B?U1A4VjlxVWUwV0o0Z0NjdzhRN2l6M2tyT2kzckZGWXRMN3lNdVprUUtDakdJ?= =?utf-8?B?bVQ5WldyNS9wMXkrbWpzdys5ajkwcXk2TmpxQ3M4S2hieUpzcjlPRzBYbkdY?= =?utf-8?B?UVkvdjZwVi9UMGpzSEpuT0t2WURCOUV2a1l4T1ZFQ2xWQk1jMFgrcE9oYk54?= =?utf-8?B?WE9RYmd6L2hXRTZVYXdCMDJHeVJqM2dYdjZNTFM5THdIaWhaanlQNXJtV3hh?= =?utf-8?B?akhrUEVkQTdEWTdjdk5tMDBxZnFEaVNlUUVWN051UVYyU3o1cnJQcWRtTk9a?= =?utf-8?B?aDVRRXdNeHBzUHhrbHFMNkY5WnpNaXYzc0tEbEVMVkhzYkFLRnVUUGRRc3Jy?= =?utf-8?B?ZjJpMmVRTnlLOW56ZGZSLzVqa1FoZVlKdmJua2c1TEVSN0RpeGhZZnZEV0Z5?= =?utf-8?B?QzZhN052SENybmVmWTZYRVZTbGdFd1NjaFphTTRBYnROV3FLcDJ2TXIwZ24v?= =?utf-8?Q?DpNj6GaQy0CaDQGfuMRSbxEMt?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: 7889dsppeWjnZ/2f6CqcEAMvgfPz+NaaLiDm0qJ4Wc99N3roudoAIp+j0SWCTwvU3ON102WGY97Oc+TBnExiMmDEhTBoJFdN0ojfSjjsPZIupEPMjkgpCec8jhmqcVZn8y7kM4q/9xPBseVtAnNjldG/LArAEjgYWlNR1D55OIoHWk0XFKn4VWijmS60ruOcSecNFw624C7/oMqVHkZRbREKHtAhEHU9/ruEEqgLsU+V3U8ABCpYlQ0ZbqM5cGycqz87oyZsfqAroRe26fjgmXatjZnZiW6WLrz+Qk+ln/P/SPC29CijIikPJ+INx+MDh3uxfI2Cej2/70d7X74+WyjqWvy+mZyMGa3FhuTYBw2q7/hnBX37TfHTFKg2bFw7THTlZQXVFLsvMVqhgDGaGWNpeT/CsqgHE6qH4Wt7sku7IRutMGT/IdW6zLEt2HN4X2nTQF1/jCb34gzBG719qjYNQ4SojPH8t1xmVYix/idXVdaMlnvFLVxAIAEV0ZrefiGCO6eGQlH5pijPb1rPnbkKqHmifd7apOlbdnpTIEslbRkWYyfmfBsXdLAwV3BJKQCwpoA2k56dINfjQ9Lwmnhp8XSpSUuDLcQ7XgHgCjAKh774nkOoKlFMj3RzXqi1XT2UHpyYd2TKdsdUuiKu1wDP9ZrsgHZIXzfXLiVaexjWaR4/dcrGy/ALxuhBGdTFmIAGA7Pi7kRx/5uMp0P4tT+MlN+EoFPLZP2l75yTwie0oDJcNQgkBcLOq/ecPLjuXRTaAhIbKJCHkvDND010TQ9lgJv+5B5OXP+Va+GvgPpBVwc0MljWmbzgfXl7vDjgN8cczIg5139S5AuwKveY+A== X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 4e5d3326-9191-4f4e-6799-08db6bfd98b7 X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Jun 2023 11:01:53.7588 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: FHLyc4JXMN+SconSmz+UOAVmspqZ4xI06bnvpH6uAYs88S5onWgoablr7FS8TpNalIJPFh8ZOGxFY33AucfO0A== X-MS-Exchange-Transport-CrossTenantHeadersStamped: LV8PR03MB7518 On Tue, Jun 13, 2023 at 11:44:51AM +0100, Anthony PERARD wrote: > On Mon, Jun 05, 2023 at 12:36:57PM +0200, Roger Pau Monne wrote: > > The current implementation in libxl_cpuid_parse_config() requires > > keeping a list of cpuid feature bits that should be mostly in sync > > with the contents of cpufeatureset.h. > > > > Avoid such duplication by using the automatically generated list of > > cpuid features in INIT_FEATURE_NAMES in order to map feature names to > > featureset bits, and then translate from featureset bits into cpuid > > leaf, subleaf, register tuple. > > > > Note that the full contents of the previous cpuid translation table > > can't be removed. That's because some feature names allowed by libxl > > are not described in the featuresets, or because naming has diverged > > and the previous nomenclature is preserved for compatibility reasons. > > > > Should result in no functional change observed by callers, albeit some > > new cpuid features will be available as a result of the change. > > I've looked at the removed lists, and some cpuid flag name might be > missing with this patch. > > When looking in "libxl_cpuid.c" and > tools/include/xen/lib/x86/cpuid-autogen.h (INIT_FEATURE_NAMES), I found > that some flags removed from libxl_cpuid.c seems to be missing with this > patch: > "sse4_1" > "sse4_2" > "tsc_adjust" > "cmt" Hm, I got confused with the _ vs - notation, and with cmt I wrongly deleted it I guess. > I did the same with the list removed from the man page, and those > flags are missing (some were probably also missing before, so probably > not a problem: > "avx512ifma" > "avx512vbmi" Those two where already missing, so I'm not planning to add those. > "cmt" > "sse4_1" > "sse4_2" > "tsc_adjust" Those are an oversight and will be added back to cpuid_flags array. > > So, at least for the first list, is it a problem? Or did I failed to > check them properly? > (It seems that "cmt" or "tsc_adjust" for example comes from libvirt, > 90b2a267c19c ("libxl: add more cpuid flags handling")) > > > While there constify cpuid_flags name field. > > > > Signed-off-by: Roger Pau Monné > > --- > > diff --git a/docs/man/xl.cfg.5.pod.in b/docs/man/xl.cfg.5.pod.in > > index 24ac92718288..c5c5b8716521 100644 > > --- a/docs/man/xl.cfg.5.pod.in > > +++ b/docs/man/xl.cfg.5.pod.in > > @@ -2010,24 +2010,12 @@ proccount procpkg stepping > > > > =back > > > > -List of keys taking a character: > > +List of keys taking a character can be found in the public header file > > +L > > https:// ;-) > > And this probably want to be "xenbits.xenproject.org" > > Also, I think there's maybe an issue with this link. Maybe someone can > assume that "TM1" takes a character, but that flags I think would get > rejected, issue with upper case vs lower case. Then, if we deal with > the casing, we still have feature like "AVX512_IFMA", which would only > be recognize if written "avx512-ifma", so issue with "-" vs "_". Right, it's not perfect, but I don't see much better way if we want to keep the documentation in sync. > > diff --git a/tools/libs/light/libxl_cpuid.c b/tools/libs/light/libxl_cpuid.c > > index f5ce9f97959c..0c7ffff416fe 100644 > > --- a/tools/libs/light/libxl_cpuid.c > > +++ b/tools/libs/light/libxl_cpuid.c > > @@ -342,6 +214,28 @@ int libxl_cpuid_parse_config(libxl_cpuid_policy_list *cpuid, const char* str) > > if(!strncmp(str, flag->name, sep - str) && flag->name[sep - str] == 0) > > break; > > } > > + if (flag->name == NULL) { > > + const struct feature_name *feat; > > + /* Provide a NUL terminated feature name to the search helper. */ > > + char *name = strndup(str, sep - str); > > + > > + if (name == NULL) > > + return 4; > > out-of-memory are usually fatal in libxl. Any reason to use `strndup` > instead of `libxl__strndup`? I guess we don't have any libxl_ctx, so we > can't use the libxl function. Yes, even NO_GC requires a CTX. > So, instead of returning an arbitrary integer that isn't returned yet by > the function, could you return ERROR_NOMEM? That would be my preference, but the function already returns (arbitrary) integers as error codes, so I'm not sure whether ERROR_NOMEM won't alias with one of the existing error codes. > I wonder if it would be possible to use a buffer on the stack instead, > but it might not be worth the effort to find the right size. Hm, I could in theory try to do that, as feature names tend to be small, however I think the implementation would be fragile, as the length of the feature name is based on user input (iow: we would do an alloca() using a user provided size). Thanks, Roger. From xen-devel-bounces@lists.xenproject.org Tue Jun 13 12:27:51 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 12:27:51 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548141.855916 (Exim 4.92) (envelope-from ) id 1q937W-0008N6-4s; Tue, 13 Jun 2023 12:27:34 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548141.855916; Tue, 13 Jun 2023 12:27:34 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q937W-0008Mz-1z; Tue, 13 Jun 2023 12:27:34 +0000 Received: by outflank-mailman (input) for mailman id 548141; Tue, 13 Jun 2023 12:27:33 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q937V-0008Mt-6D for xen-devel@lists.xenproject.org; Tue, 13 Jun 2023 12:27:33 +0000 Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.129.124]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id a9e98600-09e5-11ee-8611-37d641c3527e; Tue, 13 Jun 2023 14:27:30 +0200 (CEST) Received: from mail-lf1-f70.google.com (mail-lf1-f70.google.com [209.85.167.70]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-221-3QWpsm99PC-RR67Er65tsw-1; Tue, 13 Jun 2023 08:27:28 -0400 Received: by mail-lf1-f70.google.com with SMTP id 2adb3069b0e04-4f513a3d01eso3743343e87.0 for ; Tue, 13 Jun 2023 05:27:28 -0700 (PDT) Received: from ?IPV6:2003:cb:c710:ff00:1a06:80f:733a:e8c6? (p200300cbc710ff001a06080f733ae8c6.dip0.t-ipconnect.de. [2003:cb:c710:ff00:1a06:80f:733a:e8c6]) by smtp.gmail.com with ESMTPSA id c12-20020a05600c0acc00b003f195d540d9sm14232474wmr.14.2023.06.13.05.27.23 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Tue, 13 Jun 2023 05:27:25 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: a9e98600-09e5-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1686659249; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=+CnFB1DNmO6T96vOB/65A5+oQ7wctSJhf7OTxF1Wbzs=; b=bBOAfgh4Xmnsc66WzSNZjdvRJlmyo/Rod0LRmzhNl/KOGBo5mCS8x2ckVwbX4/NXnA3bWe rCrVAp4G4nz6CURxj5dUUSDVxgyARTccCQ24Aj3KjD4cdyEh3Z/nWguv67iVRoNE86J+Eh G05askvt3RK7SvYINSaF2C1GAkDVL4s= X-MC-Unique: 3QWpsm99PC-RR67Er65tsw-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686659247; x=1689251247; h=content-transfer-encoding:in-reply-to:organization:from:references :cc:to:content-language:subject:user-agent:mime-version:date :message-id:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=+CnFB1DNmO6T96vOB/65A5+oQ7wctSJhf7OTxF1Wbzs=; b=g5OWfaev5FlwmILgStbT2dR+im8aO8+BqQQy8iDMwYVz/8lP8R/bQCcWukL/iBcMIX rAK73deeduE3K9eUr/hSwP/1bQ8ZS+lQVQ3qNOmr+zCUtT4wuvHACAr36tctuJS3146A IOA+Cw+rR5AgYjT24yfLxcx2UY5QchDAMVdUdK+T2vjaNoCwLbD8uNboW4maMqRqF3CX HwvK2CqNcnqrL+Fj8HTVMw/xD5SN7J1rH82xCDKd9LfXf6N1mByviMq0etky14MRdfQ6 wXdWSh0UQLgatFgGTQxp6qtw5+2z4re1w8NRtu650vXzCSC0JwmxBNlz0jgjCvCd90ri 4nRw== X-Gm-Message-State: AC+VfDw81FfQBflnlAD/UNvO6xN9R13+sdv2C9uqApluqivEXDURH+GT xU0FotYQ72kZW1O2D+dPDBFxOshv/z2Hqnw9K6QovPkYmF521hQGEUuNZ16fvxWyinP67mjzrTB qz3opYglNRqjZk7BgT2teaFIIINo= X-Received: by 2002:a19:f248:0:b0:4f1:43b9:a600 with SMTP id d8-20020a19f248000000b004f143b9a600mr4757409lfk.60.1686659246374; Tue, 13 Jun 2023 05:27:26 -0700 (PDT) X-Google-Smtp-Source: ACHHUZ5qxg+OUnNnuA/wq9a021d2mLhWsjtTUxn0p2SKKfWwVdEEV9g+Xp/WxtiQmQ4d7Ue+u9rDFA== X-Received: by 2002:a19:f248:0:b0:4f1:43b9:a600 with SMTP id d8-20020a19f248000000b004f143b9a600mr4757320lfk.60.1686659245781; Tue, 13 Jun 2023 05:27:25 -0700 (PDT) Message-ID: Date: Tue, 13 Jun 2023 14:27:23 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v9 02/42] mm: Move pte/pmd_mkwrite() callers with no VMA to _novma() To: Rick Edgecombe , x86@kernel.org, "H . Peter Anvin" , Thomas Gleixner , Ingo Molnar , linux-kernel@vger.kernel.org, linux-doc@vger.kernel.org, linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-api@vger.kernel.org, Arnd Bergmann , Andy Lutomirski , Balbir Singh , Borislav Petkov , Cyrill Gorcunov , Dave Hansen , Eugene Syromiatnikov , Florian Weimer , "H . J . Lu" , Jann Horn , Jonathan Corbet , Kees Cook , Mike Kravetz , Nadav Amit , Oleg Nesterov , Pavel Machek , Peter Zijlstra , Randy Dunlap , Weijiang Yang , "Kirill A . Shutemov" , John Allen , kcc@google.com, eranian@google.com, rppt@kernel.org, jamorris@linux.microsoft.com, dethoma@microsoft.com, akpm@linux-foundation.org, Andrew.Cooper3@citrix.com, christina.schimpe@intel.com, debug@rivosinc.com, szabolcs.nagy@arm.com, torvalds@linux-foundation.org, broonie@kernel.org Cc: linux-arm-kernel@lists.infradead.org, linux-s390@vger.kernel.org, xen-devel@lists.xenproject.org References: <20230613001108.3040476-1-rick.p.edgecombe@intel.com> <20230613001108.3040476-3-rick.p.edgecombe@intel.com> From: David Hildenbrand Organization: Red Hat In-Reply-To: <20230613001108.3040476-3-rick.p.edgecombe@intel.com> X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Language: en-US Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit On 13.06.23 02:10, Rick Edgecombe wrote: > The x86 Shadow stack feature includes a new type of memory called shadow > stack. This shadow stack memory has some unusual properties, which requires > some core mm changes to function properly. > > One of these unusual properties is that shadow stack memory is writable, > but only in limited ways. These limits are applied via a specific PTE > bit combination. Nevertheless, the memory is writable, and core mm code > will need to apply the writable permissions in the typical paths that > call pte_mkwrite(). Future patches will make pte_mkwrite() take a VMA, so > that the x86 implementation of it can know whether to create regular > writable memory or shadow stack memory. > > But there are a couple of challenges to this. Modifying the signatures of > each arch pte_mkwrite() implementation would be error prone because some > are generated with macros and would need to be re-implemented. Also, some > pte_mkwrite() callers operate on kernel memory without a VMA. > > So this can be done in a three step process. First pte_mkwrite() can be > renamed to pte_mkwrite_novma() in each arch, with a generic pte_mkwrite() > added that just calls pte_mkwrite_novma(). Next callers without a VMA can > be moved to pte_mkwrite_novma(). And lastly, pte_mkwrite() and all callers > can be changed to take/pass a VMA. > > Previous patches have done the first step, so next move the callers that > don't have a VMA to pte_mkwrite_novma(). Also do the same for > pmd_mkwrite(). This will be ok for the shadow stack feature, as these > callers are on kernel memory which will not need to be made shadow stack, > and the other architectures only currently support one type of memory > in pte_mkwrite() > > Cc: linux-doc@vger.kernel.org > Cc: linux-arm-kernel@lists.infradead.org > Cc: linux-s390@vger.kernel.org > Cc: xen-devel@lists.xenproject.org > Cc: linux-arch@vger.kernel.org > Cc: linux-mm@kvack.org > Signed-off-by: Rick Edgecombe > --- Acked-by: David Hildenbrand -- Cheers, David / dhildenb From xen-devel-bounces@lists.xenproject.org Tue Jun 13 12:43:15 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 12:43:15 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548146.855926 (Exim 4.92) (envelope-from ) id 1q93Mb-0002LF-G9; Tue, 13 Jun 2023 12:43:09 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548146.855926; Tue, 13 Jun 2023 12:43:09 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q93Mb-0002L8-DH; Tue, 13 Jun 2023 12:43:09 +0000 Received: by outflank-mailman (input) for mailman id 548146; Tue, 13 Jun 2023 12:43:08 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q93Ma-0002L2-3g for xen-devel@lists.xenproject.org; Tue, 13 Jun 2023 12:43:08 +0000 Received: from eu-smtp-delivery-151.mimecast.com (eu-smtp-delivery-151.mimecast.com [185.58.86.151]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id d7eed89c-09e7-11ee-b232-6b7b168915f2; Tue, 13 Jun 2023 14:43:06 +0200 (CEST) Received: from AcuMS.aculab.com (156.67.243.121 [156.67.243.121]) by relay.mimecast.com with ESMTP with both STARTTLS and AUTH (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id uk-mta-311-rnUksceOM2-gkIbIoMQNcA-1; Tue, 13 Jun 2023 13:43:04 +0100 Received: from AcuMS.Aculab.com (10.202.163.6) by AcuMS.aculab.com (10.202.163.6) with Microsoft SMTP Server (TLS) id 15.0.1497.48; Tue, 13 Jun 2023 13:42:59 +0100 Received: from AcuMS.Aculab.com ([::1]) by AcuMS.aculab.com ([::1]) with mapi id 15.00.1497.048; Tue, 13 Jun 2023 13:42:59 +0100 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: d7eed89c-09e7-11ee-b232-6b7b168915f2 X-MC-Unique: rnUksceOM2-gkIbIoMQNcA-1 From: David Laight To: 'Rasmus Villemoes' , Demi Marie Obenour , Hans de Goede , "Mauro Carvalho Chehab" , Sakari Ailus , Greg Kroah-Hartman , Juergen Gross , "Stefano Stabellini" , Oleksandr Tyshchenko , Lee Jones , Andy Lutomirski , Thomas Gleixner , Vincenzo Frascino , Petr Mladek , Steven Rostedt , Sergey Senozhatsky , "Andy Shevchenko" CC: "linux-media@vger.kernel.org" , "linux-staging@lists.linux.dev" , "linux-kernel@vger.kernel.org" , "xen-devel@lists.xenproject.org" , "Christoph Hellwig" Subject: RE: [PATCH v3 3/4] vsscanf(): do not skip spaces Thread-Topic: [PATCH v3 3/4] vsscanf(): do not skip spaces Thread-Index: AQHZnR4ovdHGuD5F0k2o+1T0Ru69aa+Iri8A Date: Tue, 13 Jun 2023 12:42:59 +0000 Message-ID: <32e8b52d64b642608595142ab2952f16@AcuMS.aculab.com> References: <20230610204044.3653-1-demi@invisiblethingslab.com> <20230610204044.3653-4-demi@invisiblethingslab.com> <546e2ab5-f520-c85e-d6f4-ca7b02457d4c@rasmusvillemoes.dk> In-Reply-To: <546e2ab5-f520-c85e-d6f4-ca7b02457d4c@rasmusvillemoes.dk> Accept-Language: en-GB, en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ms-exchange-transport-fromentityheader: Hosted x-originating-ip: [10.202.205.107] MIME-Version: 1.0 X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: aculab.com Content-Language: en-US Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: base64 RnJvbTogUmFzbXVzIFZpbGxlbW9lcw0KPiBTZW50OiAxMiBKdW5lIDIwMjMgMTI6MDgNCj4gDQo+ IE9uIDEwLzA2LzIwMjMgMjIuNDAsIERlbWkgTWFyaWUgT2Jlbm91ciB3cm90ZToNCj4gPiBQYXNz aW5nIHNwYWNlcyBiZWZvcmUgZS5nLiBhbiBpbnRlZ2VyIGlzIHVzdWFsbHkNCj4gPiBub3QgaW50 ZW5kZWQuDQo+IA0KPiBNYXliZSwgbWF5YmUgbm90LiBCdXQgaXQncyBtYW5kYXRlZCBieSBQT1NJ WC9DOTkuDQo+IA0KPiBBbmQgb2YgY291cnNlIHdlIGFyZSBmcmVlIHRvIGlnbm9yZSB0aGF0IGFu ZCBpbXBsZW1lbnQgb3VyIG93biBzZW1hbnRpY3MNCj4gKHRob3VnaCB3aXRoaW4gdGhlIGNvbnN0 cmFpbnRzIHRoYXQgd2UgcmVhbGx5IHdhbnQgLVdmb3JtYXQgdG8gaGVscCB1cyksDQo+IGJ1dCB0 aGVyZSBzZWVtcyB0byBiZSBleGlzdGluZyBjb2RlIGluLXRyZWUgdGhhdCByZWxpZXMgb24gdGhp cw0KPiBiZWhhdmlvci4gRm9yIGV4YW1wbGUgSSB0aGluayB0aGlzIHdpbGwgYnJlYWsNCj4gZnNs X3NhdGFfaW50cl9jb2FsZXNjaW5nX3N0b3JlKCkgd2hpY2ggdXNlcyBhIHNjYW5mIGZvcm1hdCBv ZiAiJXUldSIuDQo+IA0KPiBTdXJlLCB0aGF0IGNvdWxkIGp1c3Qgc2F5ICIldSAldSIgaW5zdGVh ZCwgYnV0IHRoZSBwb2ludCBpcyB0aGF0DQo+IGN1cnJlbnRseSBpdCBkb2Vzbid0LiBTbyB3aXRo b3V0IHNvbWUgcmVhc29uYWJseSB0aG9yb3VnaCBhbmFseXNpcw0KPiBhY3Jvc3MgdGhlIHRyZWUs IGFuZCB1cGRhdGVzIG9mIGFmZmVjdGVkIGNhbGxlcnMsIE5BSy4NCg0KSXQgd291bGQgYWxtb3N0 IGNlcnRhaW5seSBuZWVkIHRvIGJlICIgJXUgJXUiIHRvIGFsbG93IGZvcg0KdXNlcnNwYWNlIGdl bmVyYXRpbmcgdGhlIGlucHV0IHdpdGggIiU2dSAlNnUiLA0KDQoJRGF2aWQNCg0KLQ0KUmVnaXN0 ZXJlZCBBZGRyZXNzIExha2VzaWRlLCBCcmFtbGV5IFJvYWQsIE1vdW50IEZhcm0sIE1pbHRvbiBL ZXluZXMsIE1LMSAxUFQsIFVLDQpSZWdpc3RyYXRpb24gTm86IDEzOTczODYgKFdhbGVzKQ0K From xen-devel-bounces@lists.xenproject.org Tue Jun 13 12:45:47 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 12:45:47 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548152.855935 (Exim 4.92) (envelope-from ) id 1q93Oy-0002vN-SY; Tue, 13 Jun 2023 12:45:36 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548152.855935; Tue, 13 Jun 2023 12:45:36 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q93Oy-0002vG-Q0; Tue, 13 Jun 2023 12:45:36 +0000 Received: by outflank-mailman (input) for mailman id 548152; Tue, 13 Jun 2023 12:45:35 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q93Ox-0002vA-PG for xen-devel@lists.xenproject.org; Tue, 13 Jun 2023 12:45:35 +0000 Received: from EUR04-DB3-obe.outbound.protection.outlook.com (mail-db3eur04on0605.outbound.protection.outlook.com [2a01:111:f400:fe0c::605]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 2f8bdb2a-09e8-11ee-8611-37d641c3527e; Tue, 13 Jun 2023 14:45:33 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by VI1PR04MB6846.eurprd04.prod.outlook.com (2603:10a6:803:12f::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.46; Tue, 13 Jun 2023 12:45:31 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.039; Tue, 13 Jun 2023 12:45:30 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 2f8bdb2a-09e8-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=huhgTdSjP7ajmhL11JB6kaIv0hoWQ7q2KRjS62AI1WCghVxWli6Q/cUM8GpPtVTrc1I3rsIl0c8yA7xK7tFD7wzpvMHLsU6/ycf4JPeFOOTJPY0PJGnjfIQf1OEVzHTLXDgiKHP1coo045Mij9WfPlVVTUMKpPAjB4rvf7GfnEhB9r0FqM9SCyW9U2D5vTc1KKJ7TuqokTdBxkgRR4gHUVdqued6xIyY0hCQCJlfLKQL+RdOFnyD4dwpA3oLiDCG2QUy7zw7p0lyBCv92c8B8jp0upVj2/9BfLK+uGLopZL1e5m6d5jK7sIncjgx8iyvTUfAwh4q2rEfneu0tS5Z/g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=DwPh9ozuKxsTkqXgll8Bs25n4xuoiBrH5vo5FKhInbk=; b=mtLpm8KZsyoT/zcnTtvdTG8yZvx5yreEIzZqOH4c7L882LUFOeiGn91T3TKzhlhdYLH1l6fjmKsHeOFrsC7g6tCVvK0oXd4i1lTiWzQi4s/DkbsKeV2NKlk6BodV9zH0e/aDBCLVxT1sBLzPomm0N8WmQUMffIJpS4CyYP9fyZ9gphU2W32IFrED4igyHyMdiJlOkvmi+dibNwt/QU6pUEpJC+VdNayBFt33Mw07x6aOJhL4RFLhqbzXwklcw6T6NlfHpPF3U4oK+NqDeZmZZ4ND9KT8VAFi3utjZUfB9/TDG4lSupmjiZyWbXtvL6reG3imORMddlOBV3YBiWxfhQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=DwPh9ozuKxsTkqXgll8Bs25n4xuoiBrH5vo5FKhInbk=; b=hrq+IbzndU5Q6vRKcWYQ4GVh9Jsxm+3uuqw2kceFwRptm8JbjHt0lPUG9613afkfdpWE4em50fnwX2L7O/rWugksiXy/fJXIPwW359B5RZUMlNRS4PnhP6IvYSnOBsFQFw6gS3nONHnJSvqAuxHiQ+o0aRkgALolZOPr9vgXHc6dHQZujhTgq5ioGIGKi4Y9LFHYeIvmPvbjHd5ktHVU9dbxLX35PuEjKi6405dFl5siMOImroznVIx1poAoFHx39W0V5e0X0iw76gpRDCerWyV8eW+mgfV69oQi02XLDxF4arrqHMvWMsHMFnYjfiGrg4je7hDdMNr2AufjA7gcvA== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <2ed59d4b-ce6e-9687-81cc-ffd456deec0e@suse.com> Date: Tue, 13 Jun 2023 14:45:28 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH] iommu/amd-vi: fix checking for Invalidate All support in amd_iommu_resume() Content-Language: en-US To: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= Cc: Andrew Cooper , xen-devel@lists.xenproject.org References: <20230613101313.51326-1-roger.pau@citrix.com> <1c8bf2cc-4c91-6db6-edf7-81472ee107ba@suse.com> From: Jan Beulich In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: FR0P281CA0001.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:15::6) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|VI1PR04MB6846:EE_ X-MS-Office365-Filtering-Correlation-Id: 20ee07ff-a684-4e92-fa47-08db6c0c123a X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: W/H8igbV/ob+8yZ6fhXpIxaiiPZ9VJzMy6wYqUysib690MOYwg+lml0+acgDKXv88YVEiz9oGH1hoJAa4RnT/eczViJQcBWlsyiG0d6F9oqcBAqJLKqmjF7W0mWOhIrBLT6LJ9VTXIHHh1RIl0YTvOCz07mRETmmiO06UOQcDDbUJQHhykaDjsRd6isSnQzvpTyedFnb17Lt1SDs15L6fdXkP3Dn/rsIYFDm3CbtY9r3Jwrwt+jO4wT1la/LybPFM+Bcdp9UCilNW7VtHEOQdriU2zKpC2ApWFUMQE4wIMpDiC6V1cKDy0rWcjvpVMsSe05pUswGfN8odIb7ycUI+cx1cwKeGjhFn0FxaOcb50fkiMEQDVI28Bx7CATIprWv/diSV9N3kyIvxylQpT5F/4MjCrX+HeLXgxcPzGAt7dhR+g5/ypPLE3YSSjPXb947GDpSl7Pk1Y7mBYjQDtElTwWCfZ1xrnTJMhfIi+CKtwMjhr2RyDRQxXpRStyn8gFacPRh5QdVrh+CVb8a68Zq6YHB7+QKe5ZFdeOLVdFZQPdPkivAtagPYtUJXA2a862chSEMfP2zlo0RHJEYTp96knjTHfJ2TtPeGcVc442fMev7OlSU3PMcFfg6ZY7R5yHDx5KPLSlowNm5PT6aiiENBw== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(366004)(396003)(346002)(39860400002)(376002)(136003)(451199021)(36756003)(31696002)(2906002)(86362001)(31686004)(5660300002)(2616005)(186003)(83380400001)(53546011)(6506007)(6512007)(26005)(6486002)(66946007)(66556008)(478600001)(4326008)(316002)(38100700002)(66476007)(41300700001)(6916009)(8676002)(8936002)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?NGVCbFBaS1kzbFhlM2ladUFPaW9kRmtvVEJnQjhuVUpvclk5QktaMm1uamR5?= =?utf-8?B?UGRRcHBiVW0yS2xsMTZXaSt1R1IvVi9nRVNpaUdTVmhPTDZpQ09keWI5NTQ4?= =?utf-8?B?K1ptbDE4V3BJMHNMOVhIOCs2RExiQzAzbkoraGpxQlhpSGkxY3l1V0VBWmp2?= =?utf-8?B?YU1ldkpMb0hFaVA2cDM2cDQ3cHZpRDh4QnlselhnN0kwYmwzdVJCTlhCOTZM?= =?utf-8?B?MEdHbTBGUVh5c1VKZEp0WWhjc3BmOEJqZVphZGlqLzZSSzFub1VHLy84cUVu?= =?utf-8?B?SjYyN3QvU0JSMWg2NkFYalNQT29zbXEyNFRRcnIzQWJEQWRsSEFmbyt0VExl?= =?utf-8?B?QmdIdHdqNmFxVzMvMGt4enIzNGZZNUxXeGZmckhPNFljT0sxWmFLVkJ1aWg0?= =?utf-8?B?WmI2U0pPT2ZDUHg5cVNVRXJTWHpYVUNKTEd5M0R4UnhqbmVHQzUxR3lieUtB?= =?utf-8?B?SnIwalF3b2lxdGg4d0RQMDNCMkZjM3NvZlhjUDhTbEczbG9PT2IwNjl5cjdh?= =?utf-8?B?WTFrRHNIOWFtamhIWTlNM21mZWR1U3JaeFFqQlJORVZxWjcrTStycmFGVDQ5?= =?utf-8?B?c0RuOXFrOVA1L29Nd0NVZkN3RU52UzRSYVZTNmRVT0pFNXVyKzVLMCt1VER4?= =?utf-8?B?MFVXNVpUTXRhWTdWc3NHeGZTaVFPdTdOa3MzV29PUmFsZis4bnpNOUpFMWxu?= =?utf-8?B?MDdpOTZxQ25MeE0rRGc0eFgzRW1ZbWhPbmpMYzNMR0VzWGQwdWlHWWRsZGpE?= =?utf-8?B?bCszVm5YR3hSaGdEcFJFMGJpMzFHNWh6ZnhLVWY2YzUxYkM3cVhUNDZJMVZp?= =?utf-8?B?NzlRVm5GV1JsNmY5RjBxa2loZXc4NE5CLy9qYTFuZHJQVElYZXVKUHlmMFhY?= =?utf-8?B?YndtVE1GZTVOcFJ3Qk5VYWtUOS9QQXRIbkh2THV0QS9oektFY0tCbDg5Vkl6?= =?utf-8?B?WkZpZGkxZnNWRmZrMWsxR0dTeFN4UkRta1pSQlM1dHZDYjlndm5FSVE3RGxF?= =?utf-8?B?OW5MY01DM2RqaHc0RG5lVXJkRFlldEZLRjRGTVdGejhGcEdmeFljeW40TVM5?= =?utf-8?B?RVdIa3gzcHNrS3l5QkZpbHBLYzc4UjJFbHByQjR3SDdWTWY3cXJJSS9VSnMy?= =?utf-8?B?T2l2NTVncllmN0g2ZGV0N2g2cTl5TkMzRnZoc2tEYWp6L2grYzVUTW9FV2FM?= =?utf-8?B?dUowUDhhL2d6VWZWdWpLd0FPUkRPNmFEL1l0MTh4Ykhvc3Mxd0FZckMvQVRP?= =?utf-8?B?Y1ZpbWhhRTlhcEEwVmdkVDNEVFB4c2xTaDBxZzl2UzZwZ0hSKytHUDh2Zlkx?= =?utf-8?B?S1hsdkRjZGxhL1NBNEdPOTZ2L0daQkhZZUdJQmFObkplc3dnaTJsZEROTHZR?= =?utf-8?B?eHQ5N09GckVkQmtaWGtKM3F4d052OElMVllRQUIrNlNzekVxTEJ1Y2NhcDJl?= =?utf-8?B?T0t5Nkg4S0E1N3NUQXdqc0dwMjI5ZzFlRFk3UVdXS2oyNVNrRlRwdUptanow?= =?utf-8?B?aVN3Z0xSY0V5YVRqa01DemZNa0JFanBjbEdoZGMwMXBUL1BHWEs3ckYrZ2ZY?= =?utf-8?B?eHBaeVpIQkIxOXY3L3lmazRuYzFESFB2NGh1ODdkSVBONG9iOWppU2VVQ0Za?= =?utf-8?B?bGZkUlp1K0IxdzBmYTJkZ3JCbW5UWnN3ZEpET3VFZHAwTS9oNUhYeCtlb2h5?= =?utf-8?B?ak1rOTBNaFNaam42NEd5dUNYaU9vUHJDWEw1RjhZc3BERlFoR1AxN1VHclMy?= =?utf-8?B?N2RQa3hPdmpCSTRONHV1Q0l3NzhWVTQ4dnpNUXFoc0xNcUNQeWZpTGZCaUw0?= =?utf-8?B?enRhU3h6STlrUFFONnRjZ1lwdUp6a2VmYklTRFcydW9ySHpYSitqUnNHRlZR?= =?utf-8?B?TjNwM0xGWTRwNXFpb0p3MUlRZGhyak1Vc0ZkcHFJTXdyeVVYcHVZbmt2QXRD?= =?utf-8?B?T1FKYVZocEJFclVpTldXS29xSjFlMW12dWI2cksydTdaTVdjcndlUkZiaWlM?= =?utf-8?B?c2FuaERHaUh4SnQ5SG1sYXM2QXV1NzlsSWdkYzNYK2p2eTFvc1JERklQY2lO?= =?utf-8?B?WktpU0NMWXF4UjVHd3NpTldjTEFBODhDRXU2b01Eb0VJZTlMT2loWkVmeS9Y?= =?utf-8?Q?Rt3aVZF9EPw1OObGfHg/jKoZ7?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 20ee07ff-a684-4e92-fa47-08db6c0c123a X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Jun 2023 12:45:30.5705 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: GcTWYeXerYNnbIA1B6XP+NbWeP8SfO/sNxjVvEKfI6kAyLsj8qZw24mvx1Ho3lbOz6rATDIhpqAZE7FCI+Yyxg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR04MB6846 On 13.06.2023 12:33, Roger Pau Monné wrote: > On Tue, Jun 13, 2023 at 12:23:37PM +0200, Jan Beulich wrote: >> On 13.06.2023 12:13, Roger Pau Monne wrote: >>> Do not rely on iommu local variable pointing to a valid amd_iommu >> >> "Do not rely" sounds like we might, but we choose not to. But we may >> not rely on this, as the pointer simply isn't valid to deref past >> the loop. Hence perhaps better "We cannot rely ..." or even "The >> iommu local variable does not point to ..."? > > "Xen cannot rely ..." doesn't modify the sentence too much and could > likely be adjusted at commit if you agree? > > Otherwise your last suggestion would also be OK by me. I used that latter one, as being more concise. >>> --- a/xen/drivers/passthrough/amd/iommu_init.c >>> +++ b/xen/drivers/passthrough/amd/iommu_init.c >>> @@ -1580,6 +1580,7 @@ void cf_check amd_iommu_crash_shutdown(void) >>> void cf_check amd_iommu_resume(void) >>> { >>> struct amd_iommu *iommu; >>> + bool invalidate_all = true; >>> >>> for_each_amd_iommu ( iommu ) >>> { >>> @@ -1589,10 +1590,12 @@ void cf_check amd_iommu_resume(void) >>> */ >>> disable_iommu(iommu); >>> enable_iommu(iommu); >>> + if ( !iommu->features.flds.ia_sup && invalidate_all ) >> >> You don't really need the right hand part of the condition, do you? >> >> Preferably with the adjustments (which I'd be happy to do while >> committing, as long as you agree) >> Reviewed-by: Jan Beulich > > Wanted to avoid repeatedly setting `invalidate_all = false` if all the > IOMMUs on the system don't support Invalidate All. > > I don't have a strong opinion, my first (local) version didn't have > the right hand side of the condition, but then I realized that setting > this for every IOMMU on the system could be wasteful. I've dropped that part: We don't care much about that tiny performance difference here (and it's unclear whether the extra check actually is a win or a loss), and imo the code is more clear with the simpler conditional. Jan From xen-devel-bounces@lists.xenproject.org Tue Jun 13 13:01:37 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 13:01:37 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548157.855946 (Exim 4.92) (envelope-from ) id 1q93eE-0005Mt-7j; Tue, 13 Jun 2023 13:01:22 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548157.855946; Tue, 13 Jun 2023 13:01:22 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q93eE-0005Mm-4r; Tue, 13 Jun 2023 13:01:22 +0000 Received: by outflank-mailman (input) for mailman id 548157; Tue, 13 Jun 2023 13:01:20 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q93eC-0005Mg-CM for xen-devel@lists.xenproject.org; Tue, 13 Jun 2023 13:01:20 +0000 Received: from mail-wm1-x336.google.com (mail-wm1-x336.google.com [2a00:1450:4864:20::336]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 6214112a-09ea-11ee-8611-37d641c3527e; Tue, 13 Jun 2023 15:01:16 +0200 (CEST) Received: by mail-wm1-x336.google.com with SMTP id 5b1f17b1804b1-3f8d2bfed53so3536305e9.1 for ; Tue, 13 Jun 2023 06:01:16 -0700 (PDT) Received: from EMEAENGAAD19049. (default-46-102-197-194.interdsl.co.uk. [46.102.197.194]) by smtp.gmail.com with ESMTPSA id k20-20020a05600c0b5400b003f4266965fbsm14481457wmr.5.2023.06.13.06.01.13 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 13 Jun 2023 06:01:13 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 6214112a-09ea-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cloud.com; s=cloud; t=1686661276; x=1689253276; h=in-reply-to:content-disposition:mime-version:references:subject:cc :to:from:date:message-id:from:to:cc:subject:date:message-id:reply-to; bh=fGjYYFzsQDTAkC895W9t9aL/cnv4ByOG6QGyUGinFNQ=; b=gUZIRGvTdIdgMEyYokHeG1YHmAxsuuFzRtBDDnyDYdxtnAvHwKY5i1LuzymrUm+phX IOymocwbS/EEa7ULUmfH7BCzej6SK16fPWsa5dZvpZBSxBTeWOIfmFGFBPrHMYx1RMBV E+rQvosVkIHuJ/7PeJjYvqeYeNj3iSgCF6k5s= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686661276; x=1689253276; h=in-reply-to:content-disposition:mime-version:references:subject:cc :to:from:date:message-id:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=fGjYYFzsQDTAkC895W9t9aL/cnv4ByOG6QGyUGinFNQ=; b=W5zIQc/HMwKzAxZ2lZF+xdn9qZLsDFQlprB31KaZKbWwIzS/XI9nT+9xgR7T7Sm4c5 1niNZgHpKpW9NipyZZ92eQIH/rffc5JH1B8y1x3zTy48X0KOFJuzcYAc4jfFWeGnLILp xHBKlYCGLfW4aevx8HlyrZQJah109QgKpLKoAqucOr7UDthg6QlKmH3M1im4qWkK2y4O beHcLSEM99EsJAmhv2LVET2Pc95jCFsFo/ckXuC2xDwwB7KvMQgqCHtEjhkD2QsqG4V4 9y9g5NwTrFez8BCVAwKIabattOIuJA9dOxl4Qw0BxdM0Wv2P1PZlTIrzVQwmMXSDxz8M lCYQ== X-Gm-Message-State: AC+VfDxnW9PA5RN1/fxhR6+sUIaRZT8Zw4nwG8j6K3cUblSdbBeeLuU7 7HCiLFl1f/FSHvYEdbtkrD2CtQ== X-Google-Smtp-Source: ACHHUZ6ZaPSOAHNkJwq8jbMmEjCT4LuUCtMtWsaK++xVpgmMiL+qIbRmwF2z5ZIt8jMlK8+MOSDYIA== X-Received: by 2002:a05:600c:138d:b0:3f8:c9a4:4991 with SMTP id u13-20020a05600c138d00b003f8c9a44991mr1632113wmf.10.1686661276337; Tue, 13 Jun 2023 06:01:16 -0700 (PDT) Message-ID: <64886899.050a0220.c0e98.77c8@mx.google.com> X-Google-Original-Message-ID: Date: Tue, 13 Jun 2023 14:01:11 +0100 From: Alejandro Vallejo To: Andrew Cooper Cc: Xen-devel , Jan Beulich , Roger Pau =?iso-8859-1?Q?Monn=E9?= , Wei Liu Subject: Re: [PATCH v2 4/4] x86/microcode: Prevent attempting updates if DIS_MCU_LOAD is set References: <20230605170817.9913-1-alejandro.vallejo@cloud.com> <20230605170817.9913-5-alejandro.vallejo@cloud.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: On Mon, Jun 12, 2023 at 07:54:00PM +0100, Andrew Cooper wrote: > On 05/06/2023 6:08 pm, Alejandro Vallejo wrote: > > diff --git a/xen/arch/x86/cpu/microcode/core.c b/xen/arch/x86/cpu/microcode/core.c > > index 4f60d96d98..a4c123118b 100644 > > --- a/xen/arch/x86/cpu/microcode/core.c > > +++ b/xen/arch/x86/cpu/microcode/core.c > > @@ -871,6 +885,15 @@ int __init early_microcode_init(unsigned long *module_map, > > * present. > > */ > > ucode_ops = intel_ucode_ops; > > + > > + /* > > + * In the case where microcode updates are blocked by the > > + * DIS_MCU_LOAD bit we can still read the microcode version even if > > + * we can't change it. > > + */ > > + if ( !this_cpu_can_install_update() ) > > + ucode_ops = (struct microcode_ops){ .collect_cpu_info = > > + intel_ucode_ops.collect_cpu_info }; > > I don't see how this (the logic in this_cpu_can_install_update()) can > work, as ... > > > break; > > } > > > > @@ -900,6 +923,10 @@ int __init early_microcode_init(unsigned long *module_map, > > if ( ucode_mod.mod_end || ucode_blob.size ) > > rc = early_microcode_update_cpu(); > > > > + /* > > + * We just updated microcode so we must reload the boot_cpu_data bits > > + * we read before because they might be stale after the updata. > > + */ > > early_read_cpuid_7d0(); > > > > /* > > ... MSR_ARCH_CAPS is read out-of-context down here. Seeing how the minimal CPU state is read in early_cpu_init() I'll stash the read to MSR_ARCH_CAPS there too. Then it's a matter of reloading potentially changing leafs/MSRs after the update, which is a lot clearer rather than adding reads/writes ad-hoc elsewhere. Alejandro From xen-devel-bounces@lists.xenproject.org Tue Jun 13 13:21:29 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 13:21:29 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548163.855956 (Exim 4.92) (envelope-from ) id 1q93xW-0007wj-QR; Tue, 13 Jun 2023 13:21:18 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548163.855956; Tue, 13 Jun 2023 13:21:18 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q93xW-0007wc-No; Tue, 13 Jun 2023 13:21:18 +0000 Received: by outflank-mailman (input) for mailman id 548163; Tue, 13 Jun 2023 13:21:17 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q93xV-0007wS-85; Tue, 13 Jun 2023 13:21:17 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q93xV-0001ML-4X; Tue, 13 Jun 2023 13:21:17 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q93xU-0001T6-Hy; Tue, 13 Jun 2023 13:21:16 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q93xU-00063n-HX; Tue, 13 Jun 2023 13:21:16 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=fGS3QWVx2qEwM6I0t3EGA/9z22WPH+VTJ0D8h9bQUpk=; b=uJmrs8Hk9jpLznY6GGhPb6Xpqb KtqsRQCCtTbfTkWL+pyuwkvVkr+hwxAqKFPFktNBJh+ZMhPZQrH5KIviG8jjeFkLp4D/3cVF9TRhl zhnnlFMc3TKSyaCuW1hSbXuDaq91/g99hDy2sxxVkQi1VRBsc3mLiGwacgwO2Wrw6dMw=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable test] 181398: trouble: blocked/broken/fail/pass X-Osstest-Failures: xen-unstable:build-armhf::broken:regression xen-unstable:build-armhf:host-install(4):broken:regression xen-unstable:build-armhf-libvirt:build-check(1):blocked:nonblocking xen-unstable:test-armhf-armhf-examine:build-check(1):blocked:nonblocking xen-unstable:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking xen-unstable:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking xen-unstable:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking xen-unstable:test-armhf-armhf-xl:build-check(1):blocked:nonblocking xen-unstable:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking xen-unstable:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking xen-unstable:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking xen-unstable:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking xen-unstable:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking xen-unstable:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking xen-unstable:test-amd64-i386-examine-bios:xen-install:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qcow2:guest-start/debian.repeat:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: xen=b4642c32c4d079916d5607ddda0232aae5e1690e X-Osstest-Versions-That: xen=b4642c32c4d079916d5607ddda0232aae5e1690e From: osstest service owner Date: Tue, 13 Jun 2023 13:21:16 +0000 flight 181398 xen-unstable real [real] http://logs.test-lab.xenproject.org/osstest/logs/181398/ Failures and problems with tests :-( Tests which did not succeed and are blocking, including tests which could not be run: build-armhf broken build-armhf 4 host-install(4) broken REGR. vs. 181385 Tests which did not succeed, but are not blocking: build-armhf-libvirt 1 build-check(1) blocked n/a test-armhf-armhf-examine 1 build-check(1) blocked n/a test-armhf-armhf-libvirt 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-qcow2 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-raw 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a test-armhf-armhf-xl-arndale 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit1 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-multivcpu 1 build-check(1) blocked n/a test-armhf-armhf-xl-rtds 1 build-check(1) blocked n/a test-armhf-armhf-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-examine-bios 6 xen-install fail like 181360 test-amd64-amd64-xl-qcow2 21 guest-start/debian.repeat fail like 181373 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 181385 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop fail like 181385 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 181385 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 181385 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop fail like 181385 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop fail like 181385 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 181385 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop fail like 181385 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 181385 test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-i386-xl-pvshim 14 guest-start fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-i386-libvirt 15 migrate-support-check fail never pass test-amd64-i386-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-i386-libvirt-raw 14 migrate-support-check fail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass version targeted for testing: xen b4642c32c4d079916d5607ddda0232aae5e1690e baseline version: xen b4642c32c4d079916d5607ddda0232aae5e1690e Last test of basis 181398 2023-06-13 01:52:10 Z 0 days Testing same since (not found) 0 attempts jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64-xtf pass build-amd64 pass build-arm64 pass build-armhf broken build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt blocked build-i386-libvirt pass build-amd64-prev pass build-i386-prev pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-xtf-amd64-amd64-1 pass test-xtf-amd64-amd64-2 pass test-xtf-amd64-amd64-3 pass test-xtf-amd64-amd64-4 pass test-xtf-amd64-amd64-5 pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl blocked test-amd64-i386-xl pass test-amd64-coresched-i386-xl pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-i386-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-i386-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-i386-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-i386-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-i386-qemut-rhel6hvm-amd pass test-amd64-i386-qemuu-rhel6hvm-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-i386-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-freebsd10-amd64 pass test-amd64-amd64-qemuu-freebsd11-amd64 pass test-amd64-amd64-qemuu-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-i386-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-i386-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-i386-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-amd64-i386-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale blocked test-amd64-amd64-examine-bios pass test-amd64-i386-examine-bios fail test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 blocked test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 blocked test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine blocked test-amd64-i386-examine pass test-amd64-i386-freebsd10-i386 pass test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-i386-qemut-rhel6hvm-intel pass test-amd64-i386-qemuu-rhel6hvm-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt blocked test-amd64-i386-libvirt pass test-amd64-amd64-livepatch pass test-amd64-i386-livepatch pass test-amd64-amd64-migrupgrade pass test-amd64-i386-migrupgrade pass test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu blocked test-amd64-amd64-pair pass test-amd64-i386-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-i386-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-i386-xl-pvshim fail test-amd64-amd64-pygrub pass test-armhf-armhf-libvirt-qcow2 blocked test-amd64-amd64-xl-qcow2 fail test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw blocked test-amd64-i386-libvirt-raw pass test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-amd64-i386-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-i386-examine-uefi pass test-amd64-amd64-libvirt-vhd pass test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd blocked test-amd64-i386-xl-vhd pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary broken-job build-armhf broken broken-step build-armhf host-install(4) Published tested tree is already up to date. From xen-devel-bounces@lists.xenproject.org Tue Jun 13 13:27:58 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 13:27:58 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548170.855966 (Exim 4.92) (envelope-from ) id 1q943n-000084-JK; Tue, 13 Jun 2023 13:27:47 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548170.855966; Tue, 13 Jun 2023 13:27:47 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q943n-00007x-Em; Tue, 13 Jun 2023 13:27:47 +0000 Received: by outflank-mailman (input) for mailman id 548170; Tue, 13 Jun 2023 13:27:45 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q943l-00007n-Ev; Tue, 13 Jun 2023 13:27:45 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q943l-0001So-Ca; Tue, 13 Jun 2023 13:27:45 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q943k-0001cS-Sv; Tue, 13 Jun 2023 13:27:44 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q943k-0001qN-SP; Tue, 13 Jun 2023 13:27:44 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=+KNNbZW/jVn04s+gMHGygNpc0uAExQ54jRNRdLpnAq0=; b=NnK3UPcHnwlcd1fkNNAYElqfZQ iJJI623QO3mcijrAJu/mTH/bL8Em1crvfqIVcdUa5EKK/PjaKKEhSr3yj2qkSuZ0upL8c4L17seyv qkR3W2fIcUq0yR9G7Tbo6OwYZpeh3I7m4BtMnYZbm2QuQtyXXJz8QSunMOo31gto3l1s=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable-smoke test] 181402: tolerable all pass - PUSHED X-Osstest-Failures: xen-unstable-smoke:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking xen-unstable-smoke:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking xen-unstable-smoke:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking xen-unstable-smoke:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking xen-unstable-smoke:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: xen=128557e3a44d79f0c9360dc88e42c3d0ef728edf X-Osstest-Versions-That: xen=b4642c32c4d079916d5607ddda0232aae5e1690e From: osstest service owner Date: Tue, 13 Jun 2023 13:27:44 +0000 flight 181402 xen-unstable-smoke real [real] http://logs.test-lab.xenproject.org/osstest/logs/181402/ Failures :-/ but no regressions. Tests which did not succeed, but are not blocking: test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-armhf-armhf-xl 15 migrate-support-check fail never pass test-armhf-armhf-xl 16 saverestore-support-check fail never pass version targeted for testing: xen 128557e3a44d79f0c9360dc88e42c3d0ef728edf baseline version: xen b4642c32c4d079916d5607ddda0232aae5e1690e Last test of basis 181349 2023-06-09 20:00:24 Z 3 days Testing same since 181396 2023-06-12 22:00:25 Z 0 days 2 attempts ------------------------------------------------------------ People who touched revisions under test: Bertrand Marquis Jason Andryuk Juergen Gross Julien Grall jobs: build-arm64-xsm pass build-amd64 pass build-armhf pass build-amd64-libvirt pass test-armhf-armhf-xl pass test-arm64-arm64-xl-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-libvirt pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Pushing revision : To xenbits.xen.org:/home/xen/git/xen.git b4642c32c4..128557e3a4 128557e3a44d79f0c9360dc88e42c3d0ef728edf -> smoke From xen-devel-bounces@lists.xenproject.org Tue Jun 13 14:27:12 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 14:27:12 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548177.855976 (Exim 4.92) (envelope-from ) id 1q94z9-0006uw-Um; Tue, 13 Jun 2023 14:27:03 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548177.855976; Tue, 13 Jun 2023 14:27:03 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q94z9-0006up-Rx; Tue, 13 Jun 2023 14:27:03 +0000 Received: by outflank-mailman (input) for mailman id 548177; Tue, 13 Jun 2023 14:27:03 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q94z8-0006uj-VT for xen-devel@lists.xenproject.org; Tue, 13 Jun 2023 14:27:03 +0000 Received: from esa6.hc3370-68.iphmx.com (esa6.hc3370-68.iphmx.com [216.71.155.175]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 5a99c1d0-09f6-11ee-b232-6b7b168915f2; Tue, 13 Jun 2023 16:27:00 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 5a99c1d0-09f6-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686666420; h=date:from:to:cc:subject:message-id:references: mime-version:content-transfer-encoding:in-reply-to; bh=bFnADqzkMN61RkkpTC47rENmf+qhl+HhTmip0vSX+HY=; b=gTDFLyr3vG+2RrKlZ9QpoWtzI0kbMBPmLiZJSiSyueXBUF/N9F+ZLDf0 ZjOM6scMmdyEU1XlhecABbWlRg272/y9ek/twl3keAwvU3tQgdOsXfNf7 dnW2z5SUbrbvNPCSfGANwSAFU19aD7vimjFUOJS4tL2m3z2N4svC8vhY7 g=; Authentication-Results: esa6.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none X-SBRS: 4.0 X-MesageID: 111945583 X-Ironport-Server: esa6.hc3370-68.iphmx.com X-Remote-IP: 162.221.156.123 X-Policy: $RELAYED IronPort-Data: A9a23:fwm86K9FGzDhuJc11YztDrUDk36TJUtcMsCJ2f8bNWPcYEJGY0x3y mAXUG7QOf+OMWDzLo9+Odji9EwE7ZfRzN5nTANlriA8E34SpcT7XtnIdU2Y0wF+jCHgZBk+s 5hBMImowOQcFCK0SsKFa+C5xZVE/fjUAOG6UKicYXoZqTZMEE8JkQhkl/MynrlmiN24BxLlk d7pqojUNUTNNwRcawr40Ird7ks31BjOkGlA5AdmO6kQ5Aa2e0Q9V/rzG4ngdxMUfaEMdgKKb 76r5K20+Grf4yAsBruN+losWhRXKlJ6FVHmZkt+A8BOsDAbzsAB+v9T2M4nQVVWk120c+VZk 72hg3ASpTABZcUgkMxFO/VR/roX0aduoNcrKlDn2SCfItGvn9IBDJyCAWlvVbD09NqbDklq1 fomcDAGbSmIqO+MxYrhFNdC3tg8eZyD0IM34hmMzBncBPciB5vCX7/L9ZlT2zJYasJmRKiEI ZBDMHw2MUqGOkcUUrsUIMtWcOOAj3/jczpeuRSNqLA++WT7xw1tyrn9dtHSf7RmQO0Mxx/J+ j+brz+R7hcyPfCYzmaa/FWWvsDVtBnhfrwNNJDi+as/6LGU7jNKU0BHPbehmtGph0j7V99BJ kg8/is1sbN05EGtVsP6XRCzvDiDpBF0c8VUO/037keK0KW8ywSWHG8fVRZadccr8sQxQFQC3 0eEhdrzCRRzsbeeTjSW8bL8kN+pEXFLdylYP3ZCFFZbpYC5++nfky4jUP5HMKiL1t3+Ggj77 D2wqRBk2Ys91dIUgvDTEU/8v968mnTYZldrtluJBD79sV8RiJ2NPNLxtwWChRpUBMPAFwTa4 iBZ8ySLxLpWZaxhghBhVwnk8FuBw/+eeAPRjld0d3XK32T8oiXzFWy8DdwXGauIDirnUWWzC KMrkVkNjKK/xVPzBUONX6q/Ct4x0Y/rHsn/W/bfY7JmO8YhKlLWoH41NBLAhggBdXTAd4llY f93lu72VB4n5VlPlmLqF4/xL5d2rszB+Y8jbc+ilEn2uVZvTHWUVa0EIDOzghMRtcu5TPHu2 48HbaOikkwPONASlwGLqeb/23hWdylkbX03wuQLHtO+zv1OQjB5UKKMme95J+SIXc19z4/1w 510YWcAoHKXuJENAV7ihqxLAF83YatCkA== IronPort-HdrOrdr: A9a23:4IVbNK1SKjDgm0fF+UfRgQqjBU5yeYIsimQD101hICG9Lfb3qy n+ppsmPEHP5Ar5AEtQ/+xoS5PwOE80lKQFlbX5Uo3SODUO1FHIEGgA1/qU/9SDIVyYygc178 4JGZSWYOeAQmSS5vyKgzVQZuxQpeVvh5rY59s2oU0MceniAJsK0+/2YjzrU3GfG2J9aKYRJd 653I5qtjCgcXMYYoCQHX8eRdXOoNXNidbPfQMGLwRP0nj5sRqYrJrBVzSI1BYXVD1ChZ0493 LergD/7qK/99mm1x7n0XPJ5Zg+oqqp9jIDPr3FtiEmEESntu+aXvUtZ1S2hkF/nAjg0idnrD CGmWZZAy060QKrQogem2qi5+Co6kdV11byjVCfmnftusr/WXYzDNdAn5tQdl/D51Mnp8wU6t M544u1jesnMfr7plWM2/HYExVx0kakq3srluAey3RZTIsFcbdU6YgS5llcHpsMFD/zrNlPKp gaMOjMoPJNNV+KZXHQuWdihNSqQ3QoBx+DBkwPoNac3TRalG1wi0EY2MsclHEd849Vceg32w 0FCNUXqFhjdL5oUUsmPpZ9fSKeMB2wfS7x X-Talos-CUID: 9a23:/dtKImxLW+haNucUskI2BgUwOsYbKn3Wz07bDEKCDF4zFoO7EUOPrfY= X-Talos-MUID: 9a23:ILs+3Qbc4hm1LeBTvhPrg219OuBS24u0IXoXt6sZm+TeOnkl X-IronPort-AV: E=Sophos;i="6.00,239,1681185600"; d="scan'208";a="111945583" Date: Tue, 13 Jun 2023 15:26:45 +0100 From: Anthony PERARD To: Roger Pau =?iso-8859-1?Q?Monn=E9?= CC: , , Wei Liu , Juergen Gross Subject: Re: [PATCH] libs/light: use the cpuid feature names from cpufeatureset.h Message-ID: <1dcc1302-4a11-4b83-8a52-0bdbb3b64785@perard> References: <20230605103657.14191-1-roger.pau@citrix.com> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: On Tue, Jun 13, 2023 at 01:01:47PM +0200, Roger Pau Monné wrote: > On Tue, Jun 13, 2023 at 11:44:51AM +0100, Anthony PERARD wrote: > > On Mon, Jun 05, 2023 at 12:36:57PM +0200, Roger Pau Monne wrote: > > > diff --git a/docs/man/xl.cfg.5.pod.in b/docs/man/xl.cfg.5.pod.in > > > index 24ac92718288..c5c5b8716521 100644 > > > --- a/docs/man/xl.cfg.5.pod.in > > > +++ b/docs/man/xl.cfg.5.pod.in > > > @@ -2010,24 +2010,12 @@ proccount procpkg stepping > > > > > > =back > > > > > > -List of keys taking a character: > > > +List of keys taking a character can be found in the public header file > > > +L > > > > https:// ;-) > > > > And this probably want to be "xenbits.xenproject.org" > > > > Also, I think there's maybe an issue with this link. Maybe someone can > > assume that "TM1" takes a character, but that flags I think would get > > rejected, issue with upper case vs lower case. Then, if we deal with > > the casing, we still have feature like "AVX512_IFMA", which would only > > be recognize if written "avx512-ifma", so issue with "-" vs "_". > > Right, it's not perfect, but I don't see much better way if we want to > keep the documentation in sync. I guess we can start with the change you proposed. Then, maybe adding that the keys needs to be lower case with dash instead of underscore might be helpful in the man page. And if we really feel generous, we could just handle both syntax, and have the function apply the necessary transformation, lower case and s/_/-/. > > > diff --git a/tools/libs/light/libxl_cpuid.c b/tools/libs/light/libxl_cpuid.c > > > index f5ce9f97959c..0c7ffff416fe 100644 > > > --- a/tools/libs/light/libxl_cpuid.c > > > +++ b/tools/libs/light/libxl_cpuid.c > > > @@ -342,6 +214,28 @@ int libxl_cpuid_parse_config(libxl_cpuid_policy_list *cpuid, const char* str) > > > if(!strncmp(str, flag->name, sep - str) && flag->name[sep - str] == 0) > > > break; > > > } > > > + if (flag->name == NULL) { > > > + const struct feature_name *feat; > > > + /* Provide a NUL terminated feature name to the search helper. */ > > > + char *name = strndup(str, sep - str); > > > + > > > + if (name == NULL) > > > + return 4; > > So, instead of returning an arbitrary integer that isn't returned yet by > > the function, could you return ERROR_NOMEM? > > That would be my preference, but the function already returns > (arbitrary) integers as error codes, so I'm not sure whether > ERROR_NOMEM won't alias with one of the existing error codes. All libxl error code are negative, so we should be fine. Cheers, -- Anthony PERARD From xen-devel-bounces@lists.xenproject.org Tue Jun 13 14:38:08 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 14:38:08 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548184.855985 (Exim 4.92) (envelope-from ) id 1q959i-0008U6-0r; Tue, 13 Jun 2023 14:37:58 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548184.855985; Tue, 13 Jun 2023 14:37:57 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q959h-0008Tz-UY; Tue, 13 Jun 2023 14:37:57 +0000 Received: by outflank-mailman (input) for mailman id 548184; Tue, 13 Jun 2023 14:37:57 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q959g-0008Tt-SZ for xen-devel@lists.xenproject.org; Tue, 13 Jun 2023 14:37:56 +0000 Received: from alpha.anastas.io (alpha.anastas.io [104.248.188.109]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id e19ea2f2-09f7-11ee-b232-6b7b168915f2; Tue, 13 Jun 2023 16:37:55 +0200 (CEST) Received: from authenticated-user (alpha.anastas.io [104.248.188.109]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by alpha.anastas.io (Postfix) with ESMTPSA id 423163F0E4; Tue, 13 Jun 2023 07:37:52 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: e19ea2f2-09f7-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=anastas.io; s=mail; t=1686667072; bh=kHWJ8ip6MnPNFr4FWAFBsRQOz0+V9Rb5mFKtz6oM4Dc=; h=Date:Cc:Subject:From:To:References:In-Reply-To:From; b=dbIoEY9/V9cXN5KQ9B4jx11OWJONno6kRYwFfRaJbhMW9QFHcUjXmN717PFGe/Ytf OBa2bHYcclHfTv9LJw5Ci3YELLcBnwsOP2geElpJWuKfaZmJNyxb9i5zMhG3zi2hV4 K1/469KZs++pDeACCRLjrIeGuuliIxo31K5Z6Xee+QS1rsUDHNQU2RoCKdD61VfXto EButH2Oq1JZchyicFDmCsdJYVFdXM9xm+bYS9+mfqYrINy5WldxW0V/DO6qFhglNZN tCdgHFA2TxXsx+A1B650eQ81dERDrZvCoNrVDsaDGKYThaqxXddWNseIfj9wfjDGyY a2Qd7Qj0Ag+eQ== Mime-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=UTF-8 Date: Tue, 13 Jun 2023 09:37:50 -0500 Cc: , "Andrew Cooper" , "George Dunlap" , "Julien Grall" , "Stefano Stabellini" , "Wei Liu" , Subject: Re: [PATCH v2 4/4] maintainers: Add ppc64 maintainer From: "Shawn Anastasio" To: "Jan Beulich" Message-Id: References: In-Reply-To: On Mon Jun 12, 2023 at 10:03 AM CDT, Jan Beulich wrote: > On 12.06.2023 16:51, Shawn Anastasio wrote: > > --- a/MAINTAINERS > > +++ b/MAINTAINERS > > @@ -460,6 +460,10 @@ X: xen/arch/x86/acpi/lib.c > > F: xen/drivers/cpufreq/ > > F: xen/include/acpi/cpufreq/ > > =20 > > +PPC64 > > +M: Shawn Anastasio > > +F: xen/arch/ppc > > I'm sorry, but two nits again: This lack a trailing slash, and > padding is done using spaces on the 2nd line instead of a tab. > > Jan Oops, sorry about that. Will fix in v3. Thanks, Shawn From xen-devel-bounces@lists.xenproject.org Tue Jun 13 14:50:41 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 14:50:41 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548189.855996 (Exim 4.92) (envelope-from ) id 1q95Ln-0002QL-2T; Tue, 13 Jun 2023 14:50:27 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548189.855996; Tue, 13 Jun 2023 14:50:27 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q95Lm-0002QD-Vj; Tue, 13 Jun 2023 14:50:26 +0000 Received: by outflank-mailman (input) for mailman id 548189; Tue, 13 Jun 2023 14:50:26 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q95Lm-0002Q3-67 for xen-devel@lists.xenproject.org; Tue, 13 Jun 2023 14:50:26 +0000 Received: from alpha.anastas.io (alpha.anastas.io [104.248.188.109]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id a066741a-09f9-11ee-b232-6b7b168915f2; Tue, 13 Jun 2023 16:50:25 +0200 (CEST) Received: from authenticated-user (alpha.anastas.io [104.248.188.109]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by alpha.anastas.io (Postfix) with ESMTPSA id B87EE43CED; Tue, 13 Jun 2023 07:50:21 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: a066741a-09f9-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=anastas.io; s=mail; t=1686667822; bh=kxbZekarbGjd8rLMSqsHPRGP6CUOtSZDXh+06sP8JiI=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=mZrDxSsWLt63Un/xIC1uVy/DHQB2dN2zKjj9mmlNGgUjqMewCn+f9HmWdAsukTY1l v9d5oYHQACnR5kjqwzSfuqZ4OzgItx3MUVOcKTuEmNQmzVcnw1CYd+pf9Aw6ULoi5C Vy5oIuIs2EBug2NC6fX0hYIMbXUEWXCOyahomSrcJfIEVFJoJIxoTvdO8LkTVfHrsw eXrZ2OYUO5EfBosKiShtVxoZm9niSYrmym0BZOLr3ajF7guWhPMEcPFKI9lzL0ZW/I TLhIt/aLTsv09CNy2sLpVuati7OnJMjn2ayZfp55LHPC6q7trApgTs89HoTJIqD41E f0yqbX6Y73q2A== From: Shawn Anastasio To: xen-devel@lists.xenproject.org Cc: tpearson@raptorengineering.com, Shawn Anastasio , Doug Goldstein , Stefano Stabellini , Shawn Anastasio Subject: [PATCH v3 3/4] automation: Add ppc64le cross-build jobs Date: Tue, 13 Jun 2023 09:50:01 -0500 Message-Id: In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Add build jobs to cross-compile Xen for ppc64le. Signed-off-by: Shawn Anastasio --- automation/gitlab-ci/build.yaml | 60 +++++++++++++++++++++++++++++++++ 1 file changed, 60 insertions(+) diff --git a/automation/gitlab-ci/build.yaml b/automation/gitlab-ci/build.yaml index 420ffa5acb..bd8c7332db 100644 --- a/automation/gitlab-ci/build.yaml +++ b/automation/gitlab-ci/build.yaml @@ -183,6 +183,33 @@ variables: <<: *gcc +.ppc64le-cross-build-tmpl: + <<: *build + variables: + XEN_TARGET_ARCH: ppc64 + tags: + - x86_64 + +.ppc64le-cross-build: + extends: .ppc64le-cross-build-tmpl + variables: + debug: n + +.ppc64le-cross-build-debug: + extends: .ppc64le-cross-build-tmpl + variables: + debug: y + +.gcc-ppc64le-cross-build: + extends: .ppc64le-cross-build + variables: + <<: *gcc + +.gcc-ppc64le-cross-build-debug: + extends: .ppc64le-cross-build-debug + variables: + <<: *gcc + .yocto-test: stage: build image: registry.gitlab.com/xen-project/xen/${CONTAINER} @@ -516,6 +543,39 @@ archlinux-current-gcc-riscv64-debug-randconfig: EXTRA_FIXED_RANDCONFIG: CONFIG_COVERAGE=n +# Power cross-build +debian-bullseye-gcc-ppc64le: + extends: .gcc-ppc64le-cross-build + variables: + CONTAINER: debian:bullseye-ppc64le + KBUILD_DEFCONFIG: openpower_defconfig + HYPERVISOR_ONLY: y + +debian-bullseye-gcc-ppc64le-debug: + extends: .gcc-ppc64le-cross-build-debug + variables: + CONTAINER: debian:bullseye-ppc64le + KBUILD_DEFCONFIG: openpower_defconfig + HYPERVISOR_ONLY: y + +debian-bullseye-gcc-ppc64le-randconfig: + extends: .gcc-ppc64le-cross-build + variables: + CONTAINER: debian:bullseye-ppc64le + KBUILD_DEFCONFIG: openpower_defconfig + RANDCONFIG: y + EXTRA_FIXED_RANDCONFIG: + CONFIG_COVERAGE=n + +debian-bullseye-gcc-ppc64le-debug-randconfig: + extends: .gcc-ppc64le-cross-build-debug + variables: + CONTAINER: debian:bullseye-ppc64le + KBUILD_DEFCONFIG: openpower_defconfig + RANDCONFIG: y + EXTRA_FIXED_RANDCONFIG: + CONFIG_COVERAGE=n + # Yocto test jobs yocto-qemuarm64: extends: .yocto-test-arm64 -- 2.30.2 From xen-devel-bounces@lists.xenproject.org Tue Jun 13 14:50:41 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 14:50:41 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548190.856006 (Exim 4.92) (envelope-from ) id 1q95Lo-0002f4-8J; Tue, 13 Jun 2023 14:50:28 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548190.856006; Tue, 13 Jun 2023 14:50:28 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q95Lo-0002ex-5b; Tue, 13 Jun 2023 14:50:28 +0000 Received: by outflank-mailman (input) for mailman id 548190; Tue, 13 Jun 2023 14:50:26 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q95Lm-0002Q3-R3 for xen-devel@lists.xenproject.org; Tue, 13 Jun 2023 14:50:26 +0000 Received: from alpha.anastas.io (alpha.anastas.io [104.248.188.109]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id a0a44e3d-09f9-11ee-b232-6b7b168915f2; Tue, 13 Jun 2023 16:50:25 +0200 (CEST) Received: from authenticated-user (alpha.anastas.io [104.248.188.109]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by alpha.anastas.io (Postfix) with ESMTPSA id 8C6C543CEE; Tue, 13 Jun 2023 07:50:22 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: a0a44e3d-09f9-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=anastas.io; s=mail; t=1686667823; bh=9fbMLLcZdo9tA/l/g8BIpnobZUIM0rjYjuYg3GgzTUQ=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=n0PbWoxHPkWlG22iFBMjI0oG7wkHvExdFyxCBB3+Yv4fiTH62ka2ZasMQ/oM0z6uD 8ygacd13GpjPABQwXTDojDeKqfcrwj+C0M/i7UPRONykraeFxtW1bsvz36TH2jLL8L /t0TBoVRDLA48Mk+xo5/kzbYDLcXhpngLHnW/cXTxlT0PlW+FpS1GjpvkKPXHEGnu5 fN+cZGJHUApvfUqDBXGSqaYtzZGdVDN96e1aXqBCLUZ4LaimPX5Xc8+sc8ZGWnvnse ra2aEnGULdMUmRlmyTAgJhKSU0bNcZPvZozJoTQqF80ZX8KUZ+F5BLOHNAQcXcMLsN QcZykszaGT1eQ== From: Shawn Anastasio To: xen-devel@lists.xenproject.org Cc: tpearson@raptorengineering.com, Shawn Anastasio , Andrew Cooper , George Dunlap , Jan Beulich , Julien Grall , Stefano Stabellini , Wei Liu , Shawn Anastasio Subject: [PATCH v3 4/4] maintainers: Add ppc64 maintainer Date: Tue, 13 Jun 2023 09:50:02 -0500 Message-Id: <317fa033e1ff2c1d0bd093abfe1cc39804e1fa33.1686667191.git.shawn@anastas.io> In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Signed-off-by: Shawn Anastasio --- MAINTAINERS | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/MAINTAINERS b/MAINTAINERS index 1bb7a6a839..25139fe4a3 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -460,6 +460,10 @@ X: xen/arch/x86/acpi/lib.c F: xen/drivers/cpufreq/ F: xen/include/acpi/cpufreq/ +PPC64 +M: Shawn Anastasio +F: xen/arch/ppc/ + PUBLIC I/O INTERFACES AND PV DRIVERS DESIGNS M: Juergen Gross S: Supported -- 2.30.2 From xen-devel-bounces@lists.xenproject.org Tue Jun 13 14:51:04 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 14:51:04 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548192.856016 (Exim 4.92) (envelope-from ) id 1q95ME-0003Hm-Fm; Tue, 13 Jun 2023 14:50:54 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548192.856016; Tue, 13 Jun 2023 14:50:54 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q95ME-0003Hf-D3; Tue, 13 Jun 2023 14:50:54 +0000 Received: by outflank-mailman (input) for mailman id 548192; Tue, 13 Jun 2023 14:50:53 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q95MD-0002Q3-4h for xen-devel@lists.xenproject.org; Tue, 13 Jun 2023 14:50:53 +0000 Received: from alpha.anastas.io (alpha.anastas.io [104.248.188.109]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id b0d97158-09f9-11ee-b232-6b7b168915f2; Tue, 13 Jun 2023 16:50:52 +0200 (CEST) Received: from authenticated-user (alpha.anastas.io [104.248.188.109]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by alpha.anastas.io (Postfix) with ESMTPSA id BB1133F0E4; Tue, 13 Jun 2023 07:50:18 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: b0d97158-09f9-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=anastas.io; s=mail; t=1686667819; bh=rt61Uz/eGiHr82KWv1cG8abyiRGJCqJ1827g/fedSoc=; h=From:To:Cc:Subject:Date:From; b=HuaQp8R1i08C5RUflmlkJCtduxyw1DIMAAYYgfOaw7kjGTroxJ2L+wYAKN42mrpyq iPxNYom5hcnF+rTI8nG7Ssh1ortFaquZ8uJNVnywtaIT/z1bEjYgWDqXA/JwewKah5 L0tcUd9xLGdPV5VbFn15WbwajzQwwLRxZ84bMTH6k9GgWRlzNeNT/W5kCWWckJ+zyx +dU6YXI0bWRIUpugHCw/Cohl8boET3XWi11C9+tTtTHztUQs095x4tjvN+R8dx63Su 7StKjlB5q/Qf5NGJFMvSldTucVlhhhzHBf1Ix1dgSCTKZrz4hqLRULthqAH474Ea6j J5CS0e8lrB9zQ== From: Shawn Anastasio To: xen-devel@lists.xenproject.org Cc: tpearson@raptorengineering.com, Shawn Anastasio , Doug Goldstein , Stefano Stabellini , Andrew Cooper , George Dunlap , Jan Beulich , Julien Grall , Wei Liu Subject: [PATCH v3 0/4] Initial support for Power Date: Tue, 13 Jun 2023 09:49:58 -0500 Message-Id: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Hello all, This patch series adds support for building a minimal image (head.o-only) for Power ISA 2.07B+ (POWER8+) systems. The first patch boots to an infinite loop and the second adds early serial console support on pseries VMs, with bare metal support planned next. Since Xen previously had support for a much older version of the ISA in version 3.2.3, we were able to carry over some headers and support routines from that version. Unlike that initial port though, this effort focuses solely on POWER8+ CPUs that are capable of running in Little Endian mode. With an appropriate powerpc64le-linux-gnu cross-toolchain, the minimal image can be built with: $ make XEN_TARGET_ARCH=ppc64 -C xen openpower_defconfig $ make XEN_TARGET_ARCH=ppc64 SUBSYSTEMS=xen -C xen build The resulting head.o can then be booted in a standard QEMU/pseries VM: $ qemu-system-ppc64 -M pseries-5.2 -m 256M -kernel xen/xen \ -vga none -serial mon:stdio -nographic Thanks, Shawn -- Changes from v3: - Fix formatting of MAINTAINERS patch Changes from v2: - Add ppc64le cross-build container patch - Add ppc64le cross build CI job patch - Drop serial output patch (will be in future patch series) - Drop setup.c and unneeded headers from minimal build patch - Fixed ordering of MAINTAINERS patch + add F: line - Fix config/ppc64.mk option names - Clarify Kconfig Baseline ISA option help strings Shawn Anastasio (4): automation: Add container for ppc64le builds xen: Add files needed for minimal ppc64le build automation: Add ppc64le cross-build jobs maintainers: Add ppc64 maintainer MAINTAINERS | 4 + .../build/debian/bullseye-ppc64le.dockerfile | 28 +++ automation/gitlab-ci/build.yaml | 60 ++++++ automation/scripts/containerize | 1 + config/ppc64.mk | 5 + xen/Makefile | 5 +- xen/arch/ppc/Kconfig | 42 +++++ xen/arch/ppc/Kconfig.debug | 0 xen/arch/ppc/Makefile | 16 ++ xen/arch/ppc/Rules.mk | 0 xen/arch/ppc/arch.mk | 11 ++ xen/arch/ppc/configs/openpower_defconfig | 13 ++ xen/arch/ppc/include/asm/config.h | 63 +++++++ xen/arch/ppc/include/asm/page-bits.h | 7 + xen/arch/ppc/ppc64/Makefile | 1 + xen/arch/ppc/ppc64/asm-offsets.c | 0 xen/arch/ppc/ppc64/head.S | 27 +++ xen/arch/ppc/xen.lds.S | 173 ++++++++++++++++++ 18 files changed, 454 insertions(+), 2 deletions(-) create mode 100644 automation/build/debian/bullseye-ppc64le.dockerfile create mode 100644 config/ppc64.mk create mode 100644 xen/arch/ppc/Kconfig create mode 100644 xen/arch/ppc/Kconfig.debug create mode 100644 xen/arch/ppc/Makefile create mode 100644 xen/arch/ppc/Rules.mk create mode 100644 xen/arch/ppc/arch.mk create mode 100644 xen/arch/ppc/configs/openpower_defconfig create mode 100644 xen/arch/ppc/include/asm/config.h create mode 100644 xen/arch/ppc/include/asm/page-bits.h create mode 100644 xen/arch/ppc/ppc64/Makefile create mode 100644 xen/arch/ppc/ppc64/asm-offsets.c create mode 100644 xen/arch/ppc/ppc64/head.S create mode 100644 xen/arch/ppc/xen.lds.S -- 2.30.2 From xen-devel-bounces@lists.xenproject.org Tue Jun 13 14:51:06 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 14:51:06 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548194.856025 (Exim 4.92) (envelope-from ) id 1q95MG-0003Z1-N0; Tue, 13 Jun 2023 14:50:56 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548194.856025; Tue, 13 Jun 2023 14:50:56 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q95MG-0003Yr-Jk; Tue, 13 Jun 2023 14:50:56 +0000 Received: by outflank-mailman (input) for mailman id 548194; Tue, 13 Jun 2023 14:50:54 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q95ME-0003AR-MI for xen-devel@lists.xenproject.org; Tue, 13 Jun 2023 14:50:54 +0000 Received: from alpha.anastas.io (alpha.anastas.io [104.248.188.109]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id b136b793-09f9-11ee-8611-37d641c3527e; Tue, 13 Jun 2023 16:50:53 +0200 (CEST) Received: from authenticated-user (alpha.anastas.io [104.248.188.109]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by alpha.anastas.io (Postfix) with ESMTPSA id CF0D443CEA; Tue, 13 Jun 2023 07:50:19 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: b136b793-09f9-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=anastas.io; s=mail; t=1686667820; bh=qfGcTUScEPS/kn+AZiR+Dr4t3spHBjWMGqcd4ljzqZI=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=i2vG7ZUdVuDLhBinWwevrPFWJ+oHgSqjStzlOsGiUPov+glIJhTRJa3TVON35pU97 LchwQIME5uzHR4nQ59+oeyidkalbBhN1nMAf6T9kJ9ZHlOzurC83i8t24vctpMHhU/ 2em7eEF4hHjZdhb0b0lgtisi3nIQRQ9EO+kyufHTKOxlnQ9RtIqsM75ch6kxBNrmzQ zRyOTPnheKdk+IKHvfzc0q3pfVqwLvz+yn4clQdmQ8n0i0hv8tqUDauGUT0iqNE7na n04Kx6q8wDKCYnvDFlz4cgOIkJyYKz4UCvljs3IAj+0vEfi6KCyuL8bg4gtFZZCSbA OPgLvOQ4tVgZw== From: Shawn Anastasio To: xen-devel@lists.xenproject.org Cc: tpearson@raptorengineering.com, Shawn Anastasio , Doug Goldstein , Stefano Stabellini , Shawn Anastasio Subject: [PATCH v3 1/4] automation: Add container for ppc64le builds Date: Tue, 13 Jun 2023 09:49:59 -0500 Message-Id: In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Add a container for cross-compiling xen for ppc64le. Signed-off-by: Shawn Anastasio --- .../build/debian/bullseye-ppc64le.dockerfile | 28 +++++++++++++++++++ automation/scripts/containerize | 1 + 2 files changed, 29 insertions(+) create mode 100644 automation/build/debian/bullseye-ppc64le.dockerfile diff --git a/automation/build/debian/bullseye-ppc64le.dockerfile b/automation/build/debian/bullseye-ppc64le.dockerfile new file mode 100644 index 0000000000..8a87631b52 --- /dev/null +++ b/automation/build/debian/bullseye-ppc64le.dockerfile @@ -0,0 +1,28 @@ +FROM debian:bullseye-slim +LABEL maintainer.name="The Xen Project" \ + maintainer.email="xen-devel@lists.xenproject.org" + +ENV DEBIAN_FRONTEND=noninteractive +ENV USER root + +# Add compiler path +ENV CROSS_COMPILE powerpc64le-linux-gnu- + +RUN mkdir /build +WORKDIR /build + +# build depends +RUN apt-get update && \ + apt-get --quiet --yes --no-install-recommends install \ + bison \ + build-essential \ + checkpolicy \ + flex \ + gawk \ + gcc-powerpc64le-linux-gnu \ + make \ + python3-minimal \ + && \ + apt-get autoremove -y && \ + apt-get clean && \ + rm -rf /var/lib/apt/lists* /tmp/* /var/tmp/* diff --git a/automation/scripts/containerize b/automation/scripts/containerize index 5476ff0ea1..6d46f63665 100755 --- a/automation/scripts/containerize +++ b/automation/scripts/containerize @@ -33,6 +33,7 @@ case "_${CONTAINER}" in _focal) CONTAINER="${BASE}/ubuntu:focal" ;; _jessie) CONTAINER="${BASE}/debian:jessie" ;; _jessie-i386) CONTAINER="${BASE}/debian:jessie-i386" ;; + _bullseye-ppc64le) CONTAINER="${BASE}/debian:bullseye-ppc64le" ;; _stretch|_) CONTAINER="${BASE}/debian:stretch" ;; _stretch-i386) CONTAINER="${BASE}/debian:stretch-i386" ;; _buster-gcc-ibt) CONTAINER="${BASE}/debian:buster-gcc-ibt" ;; -- 2.30.2 From xen-devel-bounces@lists.xenproject.org Tue Jun 13 14:51:07 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 14:51:07 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548195.856030 (Exim 4.92) (envelope-from ) id 1q95MH-0003dI-0e; Tue, 13 Jun 2023 14:50:57 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548195.856030; Tue, 13 Jun 2023 14:50:56 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q95MG-0003cH-Sf; Tue, 13 Jun 2023 14:50:56 +0000 Received: by outflank-mailman (input) for mailman id 548195; Tue, 13 Jun 2023 14:50:56 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q95MG-0003AR-A8 for xen-devel@lists.xenproject.org; Tue, 13 Jun 2023 14:50:56 +0000 Received: from alpha.anastas.io (alpha.anastas.io [104.248.188.109]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id b1d15f96-09f9-11ee-8611-37d641c3527e; Tue, 13 Jun 2023 16:50:54 +0200 (CEST) Received: from authenticated-user (alpha.anastas.io [104.248.188.109]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by alpha.anastas.io (Postfix) with ESMTPSA id A134243CEB; Tue, 13 Jun 2023 07:50:20 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: b1d15f96-09f9-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=anastas.io; s=mail; t=1686667821; bh=+YId0qIzGL2wP+hRUog7lPwPFLFjkvuez2Pylo5yEJY=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=kyeB2mqCmzovy0/spOOevso5IH2pi6Qkx/TDrABe44VaoFtL5uzQavbjWDkyq1KoI QHjZypy9l+fHf7Z5soxozTLa8I3LgT3lsNdJWZ1P6T0O/SNYNnesyy1M9fL2rW4chp PUd6vr5Sw8FtLjLsAjLzcyyXdfT9crI9YvSgRPhMFE28ZrRWlxPSHxtPczQZbpo43Q oya4rqRnwUwMDFSRYybmUy3Lv8Lf7E+8bN7qTeFUoUv7FHLhx8dLQu1TF3esnrl+Lj 6881cHQHtz9zyn5QUm3Wtq2xd6jSclx5WrO8HNEwq3JJvTmcvEGq11pttGfdSB5caV FDRoGyXlZMxyA== From: Shawn Anastasio To: xen-devel@lists.xenproject.org Cc: tpearson@raptorengineering.com, Shawn Anastasio , Andrew Cooper , George Dunlap , Jan Beulich , Julien Grall , Stefano Stabellini , Wei Liu , Shawn Anastasio Subject: [PATCH v3 2/4] xen: Add files needed for minimal ppc64le build Date: Tue, 13 Jun 2023 09:50:00 -0500 Message-Id: In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Add the build system changes required to build for ppc64le (POWER8+). As of now the resulting image simply boots to an infinite loop. $ make XEN_TARGET_ARCH=ppc64 -C xen openpower_defconfig $ make XEN_TARGET_ARCH=ppc64 SUBSYSTEMS=xen -C xen build This port targets POWER8+ CPUs running in Little Endian mode specifically, and does not boot on older machines. Additionally, this initial skeleton only implements the PaPR/pseries boot protocol which allows it to be booted in a standard QEMU virtual machine: $ qemu-system-ppc64 -M pseries-5.2 -m 256M -kernel xen/xen Signed-off-by: Shawn Anastasio --- config/ppc64.mk | 5 + xen/Makefile | 5 +- xen/arch/ppc/Kconfig | 42 ++++++ xen/arch/ppc/Kconfig.debug | 0 xen/arch/ppc/Makefile | 16 +++ xen/arch/ppc/Rules.mk | 0 xen/arch/ppc/arch.mk | 11 ++ xen/arch/ppc/configs/openpower_defconfig | 13 ++ xen/arch/ppc/include/asm/config.h | 63 +++++++++ xen/arch/ppc/include/asm/page-bits.h | 7 + xen/arch/ppc/ppc64/Makefile | 1 + xen/arch/ppc/ppc64/asm-offsets.c | 0 xen/arch/ppc/ppc64/head.S | 27 ++++ xen/arch/ppc/xen.lds.S | 173 +++++++++++++++++++++++ 14 files changed, 361 insertions(+), 2 deletions(-) create mode 100644 config/ppc64.mk create mode 100644 xen/arch/ppc/Kconfig create mode 100644 xen/arch/ppc/Kconfig.debug create mode 100644 xen/arch/ppc/Makefile create mode 100644 xen/arch/ppc/Rules.mk create mode 100644 xen/arch/ppc/arch.mk create mode 100644 xen/arch/ppc/configs/openpower_defconfig create mode 100644 xen/arch/ppc/include/asm/config.h create mode 100644 xen/arch/ppc/include/asm/page-bits.h create mode 100644 xen/arch/ppc/ppc64/Makefile create mode 100644 xen/arch/ppc/ppc64/asm-offsets.c create mode 100644 xen/arch/ppc/ppc64/head.S create mode 100644 xen/arch/ppc/xen.lds.S diff --git a/config/ppc64.mk b/config/ppc64.mk new file mode 100644 index 0000000000..597f0668c3 --- /dev/null +++ b/config/ppc64.mk @@ -0,0 +1,5 @@ +CONFIG_PPC := y +CONFIG_PPC64 := y +CONFIG_PPC_$(XEN_OS) := y + +CONFIG_XEN_INSTALL_SUFFIX := diff --git a/xen/Makefile b/xen/Makefile index e89fc461fc..db5454fb58 100644 --- a/xen/Makefile +++ b/xen/Makefile @@ -38,7 +38,7 @@ EFI_MOUNTPOINT ?= $(BOOT_DIR)/efi ARCH=$(XEN_TARGET_ARCH) SRCARCH=$(shell echo $(ARCH) | \ sed -e 's/x86.*/x86/' -e s'/arm\(32\|64\)/arm/g' \ - -e s'/riscv.*/riscv/g') + -e s'/riscv.*/riscv/g' -e s'/ppc.*/ppc/g') export ARCH SRCARCH # Allow someone to change their config file @@ -244,7 +244,7 @@ include $(XEN_ROOT)/Config.mk export TARGET_SUBARCH := $(XEN_TARGET_ARCH) export TARGET_ARCH := $(shell echo $(XEN_TARGET_ARCH) | \ sed -e 's/x86.*/x86/' -e s'/arm\(32\|64\)/arm/g' \ - -e s'/riscv.*/riscv/g') + -e s'/riscv.*/riscv/g' -e s'/ppc.*/ppc/g') export CONFIG_SHELL := $(SHELL) export CC CXX LD NM OBJCOPY OBJDUMP ADDR2LINE @@ -563,6 +563,7 @@ _clean: $(Q)$(MAKE) $(clean)=xsm $(Q)$(MAKE) $(clean)=crypto $(Q)$(MAKE) $(clean)=arch/arm + $(Q)$(MAKE) $(clean)=arch/ppc $(Q)$(MAKE) $(clean)=arch/riscv $(Q)$(MAKE) $(clean)=arch/x86 $(Q)$(MAKE) $(clean)=test diff --git a/xen/arch/ppc/Kconfig b/xen/arch/ppc/Kconfig new file mode 100644 index 0000000000..a0a70adef4 --- /dev/null +++ b/xen/arch/ppc/Kconfig @@ -0,0 +1,42 @@ +config PPC + def_bool y + +config PPC64 + def_bool y + select 64BIT + +config ARCH_DEFCONFIG + string + default "arch/ppc/configs/openpower_defconfig" + +menu "Architecture Features" + +source "arch/Kconfig" + +endmenu + +menu "ISA Selection" + +choice + prompt "Base ISA" + default POWER_ISA_2_07B if PPC64 + help + This selects the base ISA version that Xen will target. + +config POWER_ISA_2_07B + bool "Power ISA 2.07B" + help + Target version 2.07B of the Power ISA (POWER8) + +config POWER_ISA_3_00 + bool "Power ISA 3.00" + help + Target version 3.00 of the Power ISA (POWER9) + +endchoice + +endmenu + +source "common/Kconfig" + +source "drivers/Kconfig" diff --git a/xen/arch/ppc/Kconfig.debug b/xen/arch/ppc/Kconfig.debug new file mode 100644 index 0000000000..e69de29bb2 diff --git a/xen/arch/ppc/Makefile b/xen/arch/ppc/Makefile new file mode 100644 index 0000000000..10b101cf9c --- /dev/null +++ b/xen/arch/ppc/Makefile @@ -0,0 +1,16 @@ +obj-$(CONFIG_PPC64) += ppc64/ + +$(TARGET): $(TARGET)-syms + cp -f $< $@ + +$(TARGET)-syms: $(objtree)/prelink.o $(obj)/xen.lds + $(LD) $(XEN_LDFLAGS) -T $(obj)/xen.lds -N $< $(build_id_linker) -o $@ + $(NM) -pa --format=sysv $(@D)/$(@F) \ + | $(objtree)/tools/symbols --all-symbols --xensyms --sysv --sort \ + >$(@D)/$(@F).map + +$(obj)/xen.lds: $(src)/xen.lds.S FORCE + $(call if_changed_dep,cpp_lds_S) + +.PHONY: include +include: diff --git a/xen/arch/ppc/Rules.mk b/xen/arch/ppc/Rules.mk new file mode 100644 index 0000000000..e69de29bb2 diff --git a/xen/arch/ppc/arch.mk b/xen/arch/ppc/arch.mk new file mode 100644 index 0000000000..c185a5028a --- /dev/null +++ b/xen/arch/ppc/arch.mk @@ -0,0 +1,11 @@ +######################################## +# Power-specific definitions + +ppc-march-$(CONFIG_POWER_ISA_2_07B) := power8 +ppc-march-$(CONFIG_POWER_ISA_3_00) := power9 + +CFLAGS += -mcpu=$(ppc-march-y) -mstrict-align -mcmodel=large -mabi=elfv2 -mno-altivec -mno-vsx + +# TODO: Drop override when more of the build is working +override ALL_OBJS-y = arch/$(TARGET_ARCH)/built_in.o +override ALL_LIBS-y = diff --git a/xen/arch/ppc/configs/openpower_defconfig b/xen/arch/ppc/configs/openpower_defconfig new file mode 100644 index 0000000000..8783eb3488 --- /dev/null +++ b/xen/arch/ppc/configs/openpower_defconfig @@ -0,0 +1,13 @@ +# CONFIG_SCHED_CREDIT is not set +# CONFIG_SCHED_RTDS is not set +# CONFIG_SCHED_NULL is not set +# CONFIG_SCHED_ARINC653 is not set +# CONFIG_TRACEBUFFER is not set +# CONFIG_HYPFS is not set +# CONFIG_GRANT_TABLE is not set +# CONFIG_SPECULATIVE_HARDEN_ARRAY is not set + +CONFIG_PPC64=y +CONFIG_DEBUG=y +CONFIG_DEBUG_INFO=y +CONFIG_EXPERT=y diff --git a/xen/arch/ppc/include/asm/config.h b/xen/arch/ppc/include/asm/config.h new file mode 100644 index 0000000000..7a2862ef7a --- /dev/null +++ b/xen/arch/ppc/include/asm/config.h @@ -0,0 +1,63 @@ +#ifndef __PPC_CONFIG_H__ +#define __PPC_CONFIG_H__ + +#include +#include + +#if defined(CONFIG_PPC64) +#define LONG_BYTEORDER 3 +#define ELFSIZE 64 +#define MAX_VIRT_CPUS 1024u +#else +#error "Unsupported PowerPC variant" +#endif + +#define BYTES_PER_LONG (1 << LONG_BYTEORDER) +#define BITS_PER_LONG (BYTES_PER_LONG << 3) +#define POINTER_ALIGN BYTES_PER_LONG + +#define BITS_PER_LLONG 64 + +/* xen_ulong_t is always 64 bits */ +#define BITS_PER_XEN_ULONG 64 + +#define CONFIG_PPC_L1_CACHE_SHIFT 7 +#define CONFIG_PAGEALLOC_MAX_ORDER 18 +#define CONFIG_DOMU_MAX_ORDER 9 +#define CONFIG_HWDOM_MAX_ORDER 10 + +#define OPT_CONSOLE_STR "dtuart" +#define INVALID_VCPU_ID MAX_VIRT_CPUS + +/* Linkage for PPC */ +#ifdef __ASSEMBLY__ +#define ALIGN .align 2 + +#define ENTRY(name) \ + .globl name; \ + ALIGN; \ + name: +#endif + +#define XEN_VIRT_START _AT(UL, 0x400000) + +#define SMP_CACHE_BYTES (1 << 6) + +#define STACK_ORDER 2 +#define STACK_SIZE (PAGE_SIZE << STACK_ORDER) + +/* 288 bytes below the stack pointer must be preserved by interrupt handlers */ +#define STACK_VOLATILE_AREA 288 + +/* size of minimum stack frame; C code can write into the caller's stack */ +#define STACK_FRAME_OVERHEAD 32 + +#endif /* __PPC_CONFIG_H__ */ +/* + * Local variables: + * mode: C + * c-file-style: "BSD" + * c-basic-offset: 4 + * indent-tabs-mode: nil + * End: + */ diff --git a/xen/arch/ppc/include/asm/page-bits.h b/xen/arch/ppc/include/asm/page-bits.h new file mode 100644 index 0000000000..4c01bf9716 --- /dev/null +++ b/xen/arch/ppc/include/asm/page-bits.h @@ -0,0 +1,7 @@ +#ifndef __PPC_PAGE_BITS_H__ +#define __PPC_PAGE_BITS_H__ + +#define PAGE_SHIFT 16 /* 64 KiB Pages */ +#define PADDR_BITS 48 + +#endif /* __PPC_PAGE_BITS_H__ */ diff --git a/xen/arch/ppc/ppc64/Makefile b/xen/arch/ppc/ppc64/Makefile new file mode 100644 index 0000000000..3340058c08 --- /dev/null +++ b/xen/arch/ppc/ppc64/Makefile @@ -0,0 +1 @@ +obj-y += head.o diff --git a/xen/arch/ppc/ppc64/asm-offsets.c b/xen/arch/ppc/ppc64/asm-offsets.c new file mode 100644 index 0000000000..e69de29bb2 diff --git a/xen/arch/ppc/ppc64/head.S b/xen/arch/ppc/ppc64/head.S new file mode 100644 index 0000000000..e24331f95c --- /dev/null +++ b/xen/arch/ppc/ppc64/head.S @@ -0,0 +1,27 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ + +.section .text.header, "ax", %progbits + +ENTRY(start) + /* + * Depending on how we were booted, the CPU could be running in either + * Little Endian or Big Endian mode. The following trampoline from Linux + * cleverly uses an instruction that encodes to a NOP if the CPU's + * endianness matches the assumption of the assembler (LE, in our case) + * or a branch to code that performs the endian switch in the other case. + */ + tdi 0, 0, 0x48 /* Reverse endian of b . + 8 */ + b $ + 44 /* Skip trampoline if endian is good */ + .long 0xa600607d /* mfmsr r11 */ + .long 0x01006b69 /* xori r11,r11,1 */ + .long 0x00004039 /* li r10,0 */ + .long 0x6401417d /* mtmsrd r10,1 */ + .long 0x05009f42 /* bcl 20,31,$+4 */ + .long 0xa602487d /* mflr r10 */ + .long 0x14004a39 /* addi r10,r10,20 */ + .long 0xa6035a7d /* mtsrr0 r10 */ + .long 0xa6037b7d /* mtsrr1 r11 */ + .long 0x2400004c /* rfid */ + + /* Now that the endianness is confirmed, continue */ +1: b 1b diff --git a/xen/arch/ppc/xen.lds.S b/xen/arch/ppc/xen.lds.S new file mode 100644 index 0000000000..89fcdc9c00 --- /dev/null +++ b/xen/arch/ppc/xen.lds.S @@ -0,0 +1,173 @@ +#include + +#undef ENTRY +#undef ALIGN + +OUTPUT_ARCH(powerpc:common64) +ENTRY(start) + +PHDRS +{ + text PT_LOAD ; +#if defined(BUILD_ID) + note PT_NOTE ; +#endif +} + +/** + * OF's base load address is 0x400000 (XEN_VIRT_START). + * By defining sections this way, we can keep our virtual address base at 0x400000 + * while keeping the physical base at 0x0. + * + * Without this, OF incorrectly loads .text at 0x400000 + 0x400000 = 0x800000. + * Taken from x86/xen.lds.S + */ +#ifdef CONFIG_LD_IS_GNU +# define DECL_SECTION(x) x : AT(ADDR(#x) - XEN_VIRT_START) +#else +# define DECL_SECTION(x) x : AT(ADDR(x) - XEN_VIRT_START) +#endif + +SECTIONS +{ + . = XEN_VIRT_START; + + DECL_SECTION(.text) { + _stext = .; /* Text section */ + *(.text.header) + + *(.text.cold) + *(.text.unlikely .text.*_unlikely .text.unlikely.*) + + *(.text) +#ifdef CONFIG_CC_SPLIT_SECTIONS + *(.text.*) +#endif + + *(.fixup) + *(.gnu.warning) + . = ALIGN(POINTER_ALIGN); + _etext = .; /* End of text section */ + } :text + + . = ALIGN(PAGE_SIZE); + DECL_SECTION(.rodata) { + _srodata = .; /* Read-only data */ + *(.rodata) + *(.rodata.*) + *(.data.rel.ro) + *(.data.rel.ro.*) + + VPCI_ARRAY + + . = ALIGN(POINTER_ALIGN); + _erodata = .; /* End of read-only data */ + } :text + + #if defined(BUILD_ID) + . = ALIGN(4); + DECL_SECTION(.note.gnu.build-id) { + __note_gnu_build_id_start = .; + *(.note.gnu.build-id) + __note_gnu_build_id_end = .; + } :note :text + #endif + _erodata = .; /* End of read-only data */ + + . = ALIGN(PAGE_SIZE); + DECL_SECTION(.data.ro_after_init) { + __ro_after_init_start = .; + *(.data.ro_after_init) + . = ALIGN(PAGE_SIZE); + __ro_after_init_end = .; + } : text + + DECL_SECTION(.data.read_mostly) { + *(.data.read_mostly) + } :text + + . = ALIGN(PAGE_SIZE); + DECL_SECTION(.data) { /* Data */ + *(.data.page_aligned) + . = ALIGN(8); + __start_schedulers_array = .; + *(.data.schedulers) + __end_schedulers_array = .; + + HYPFS_PARAM + + *(.data .data.*) + CONSTRUCTORS + } :text + + . = ALIGN(PAGE_SIZE); /* Init code and data */ + __init_begin = .; + DECL_SECTION(.init.text) { + _sinittext = .; + *(.init.text) + _einittext = .; + . = ALIGN(PAGE_SIZE); /* Avoid mapping alt insns executable */ + } :text + + . = ALIGN(PAGE_SIZE); + DECL_SECTION(.init.data) { + *(.init.rodata) + *(.init.rodata.*) + + . = ALIGN(POINTER_ALIGN); + __setup_start = .; + *(.init.setup) + __setup_end = .; + + __initcall_start = .; + *(.initcallpresmp.init) + __presmp_initcall_end = .; + *(.initcall1.init) + __initcall_end = .; + + LOCK_PROFILE_DATA + + *(.init.data) + *(.init.data.rel) + *(.init.data.rel.*) + + . = ALIGN(8); + __ctors_start = .; + *(.ctors) + *(.init_array) + *(SORT(.init_array.*)) + __ctors_end = .; + } :text + . = ALIGN(POINTER_ALIGN); + __init_end = .; + + DECL_SECTION(.bss) { /* BSS */ + __bss_start = .; + *(.bss.stack_aligned) + . = ALIGN(PAGE_SIZE); + *(.bss.page_aligned) + . = ALIGN(PAGE_SIZE); + __per_cpu_start = .; + *(.bss.percpu.page_aligned) + *(.bss.percpu) + . = ALIGN(SMP_CACHE_BYTES); + *(.bss.percpu.read_mostly) + . = ALIGN(SMP_CACHE_BYTES); + __per_cpu_data_end = .; + *(.bss .bss.*) + . = ALIGN(POINTER_ALIGN); + __bss_end = .; + } :text + _end = . ; + + /* Section for the device tree blob (if any). */ + DECL_SECTION(.dtb) { *(.dtb) } :text + + DWARF2_DEBUG_SECTIONS + + DISCARD_SECTIONS + + STABS_DEBUG_SECTIONS + + ELF_DETAILS_SECTIONS +} -- 2.30.2 From xen-devel-bounces@lists.xenproject.org Tue Jun 13 14:59:23 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 14:59:23 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548217.856046 (Exim 4.92) (envelope-from ) id 1q95UL-0005Lf-2d; Tue, 13 Jun 2023 14:59:17 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548217.856046; Tue, 13 Jun 2023 14:59:17 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q95UK-0005LY-WA; Tue, 13 Jun 2023 14:59:16 +0000 Received: by outflank-mailman (input) for mailman id 548217; Tue, 13 Jun 2023 14:59:15 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q95UJ-0005LS-JJ for xen-devel@lists.xenproject.org; Tue, 13 Jun 2023 14:59:15 +0000 Received: from alpha.anastas.io (alpha.anastas.io [104.248.188.109]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id dc0d35f8-09fa-11ee-b232-6b7b168915f2; Tue, 13 Jun 2023 16:59:14 +0200 (CEST) Received: from authenticated-user (alpha.anastas.io [104.248.188.109]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by alpha.anastas.io (Postfix) with ESMTPSA id 1C6063F0E4; Tue, 13 Jun 2023 07:59:11 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: dc0d35f8-09fa-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=anastas.io; s=mail; t=1686668351; bh=JI9sqVVZoQBNBwmXnCO6s7yRiaobjc8tCqiYzrVuyt8=; h=Date:To:Cc:Subject:From:References:In-Reply-To:From; b=glcD5JRLRX0+aTX8DtzCp+09Jr3VODjp/3MGVmGMDNG/gJqlFfphCZU/neqDNhax8 cNgKrSEipYrgNl2OBICUIXj9u6+WNKwpKXHEiFbj45Jpi7LpvftNOURyXXl2RXV/XV boBHWTcIy4L5kMKxtz6AXO6ZXMTDajzksePBr7GqR/42jWwK3u8DfucaAVZ8AWLEXl RAby/y/7WeoFc34axOrccVKnerb55j/KkIL9sy7/5IEBmLzK8D30j4xmNtNTBr5R7K I1p1Msf2h2r/bA8hpYGJdMaVcX3S2Ivya5dSdCfAa6YMdRClt3zQhs9QPFhGG5aZ0M iMqtrlrzb722Q== Mime-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=UTF-8 Date: Tue, 13 Jun 2023 09:59:10 -0500 Message-Id: To: "George Dunlap" , "Julien Grall" Cc: "Andrew Cooper" , "Jan Beulich" , , "George Dunlap" , "Stefano Stabellini" , "Wei Liu" , "Shawn Anastasio" , Subject: Re: [PATCH 2/3] xen/ppc: Implement early serial printk on PaPR/pseries From: "Shawn Anastasio" References: <0c0a19de-dde3-8b98-4354-6d3d2019179b@suse.com> <0b24d36b-adbc-9e7c-df6e-8754c269855d@citrix.com> <1c35f696-5a65-06da-8af5-685b8ad2e849@xen.org> <3a7eca41-0ecf-4bf1-1daf-9d66f4aa6400@xen.org> In-Reply-To: On Mon Jun 12, 2023 at 10:19 AM CDT, George Dunlap wrote: > Shawn, > > Again sorry that you've sort of bumped a hornet's nest here. > > Just to clarify, the situation as I understand it is: Hi George, No problem, and thank you for the detailed explanation. > HOWEVER, as Andrew says, there is no official policy at this point; all t= he > document say is that GPLv2-only is the default unless explicitly stated > otherwise. > > Furthermore, the concerns raised by ARM's legal team were nearly a decade > ago; it's not clear to me whether they still care that much. > > All that to say: If you don't mind and feel that you can do so legally, > then consider switching to GPLv2-only; but if you don't want to and/or fe= el > that you can't do so legally, feel free to leave it as-is. I'll definitely keep this in mind when creating new files that don't need t= o include GPLv2+ code. > -George Thanks, Shawn From xen-devel-bounces@lists.xenproject.org Tue Jun 13 15:12:18 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 15:12:18 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548227.856056 (Exim 4.92) (envelope-from ) id 1q95gg-0007pu-7E; Tue, 13 Jun 2023 15:12:02 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548227.856056; Tue, 13 Jun 2023 15:12:02 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q95gg-0007pn-2z; Tue, 13 Jun 2023 15:12:02 +0000 Received: by outflank-mailman (input) for mailman id 548227; Tue, 13 Jun 2023 15:12:00 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q95ge-0007ph-8k for xen-devel@lists.xenproject.org; Tue, 13 Jun 2023 15:12:00 +0000 Received: from out3-smtp.messagingengine.com (out3-smtp.messagingengine.com [66.111.4.27]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id a2b32e2c-09fc-11ee-b232-6b7b168915f2; Tue, 13 Jun 2023 17:11:57 +0200 (CEST) Received: from compute4.internal (compute4.nyi.internal [10.202.2.44]) by mailout.nyi.internal (Postfix) with ESMTP id 9FD525C0145; Tue, 13 Jun 2023 11:11:55 -0400 (EDT) Received: from mailfrontend2 ([10.202.2.163]) by compute4.internal (MEProxy); Tue, 13 Jun 2023 11:11:55 -0400 Received: by mail.messagingengine.com (Postfix) with ESMTPA; Tue, 13 Jun 2023 11:11:54 -0400 (EDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: a2b32e2c-09fc-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= invisiblethingslab.com; h=cc:cc:content-type:content-type:date :date:from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:sender:subject:subject:to:to; s=fm1; t= 1686669115; x=1686755515; bh=0MYD55e2IXMwoYKYllG2nqmHi+XPVXTet6b nmleJ71Q=; b=KnrLo4IjXkDjYj5dn8CARWrB4IqBFmFgHiPhkDJZVtYRdRVxbpm lkkTTXq/qFMObGQpEGwnFLnEKTx1dmHwYwTPDAQRVTBTF79JX6CoQWCuvq/b1CuL T8TQB0MPtEDzXc6tQSCBzeI+uG08OqOWxbGPvCE+LhZ+MC4+8jqwV0Ohn8t3Lgx8 zD7lor/7MoadZqSeOuv0wEgJDtBwIGh47MG9iOfL46IgzkHNmYvVQD8u/r239qTc TLxQIPPBUa6xhScmmo9tJxmPitLSTnud89z/HUuYeEHo/uwQlntUjKR5pKDDXzVT UeFgzWy1iI/OE5Hj9nQtNE9DEc8PBLinwfg== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-type:content-type:date:date :feedback-id:feedback-id:from:from:in-reply-to:in-reply-to :message-id:mime-version:references:reply-to:sender:subject :subject:to:to:x-me-proxy:x-me-proxy:x-me-sender:x-me-sender :x-sasl-enc; s=fm2; t=1686669115; x=1686755515; bh=0MYD55e2IXMwo YKYllG2nqmHi+XPVXTet6bnmleJ71Q=; b=X96i/QI8lNYjBMU3c8PxmItFWqXm2 KwbCOfeKogK3ZKXWUDv2pNF+LMqoexnBmxarApyTE2xXXAQpXIGc8xNrDNqE0Wym te3lahcb/yBq9VDkX6CX3uoKsYGbHfV4c3KGlTYZ5h+m7hYTOq8SXxwst4ChMbAs M7UyCF7V3iNiWRlwwkxKfEgsrJIHDvWjU3A8rOkJCzwFQKd4E6iSZHHB8QNX+TZ0 3MT/LkbnRDF4cEfa3QCYiXItG5vw9PRp9v+2swGDrfiK+1TFbAt4yRFhvWebtg6v T3E+CXAmnZ70k35FXsYuJAfQtRM0CehS/EFGV1LCdr4uD+F/Vv9kOKcNA== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvhedrgedujedgkedvucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne cujfgurhepfffhvfevuffkfhggtggujgesghdtroertddtjeenucfhrhhomhepffgvmhhi ucforghrihgvucfqsggvnhhouhhruceouggvmhhisehinhhvihhsihgslhgvthhhihhngh hslhgrsgdrtghomheqnecuggftrfgrthhtvghrnhepueeuveelheevvdeuvdfhiefhleff tdehuedvfefgveegfefgiefhudehveehtdefnecuvehluhhsthgvrhfuihiivgeptdenuc frrghrrghmpehmrghilhhfrhhomhepuggvmhhisehinhhvihhsihgslhgvthhhihhnghhs lhgrsgdrtghomh X-ME-Proxy: Feedback-ID: iac594737:Fastmail Date: Tue, 13 Jun 2023 11:11:49 -0400 From: Demi Marie Obenour To: Juergen Gross , Stefano Stabellini , Oleksandr Tyshchenko , Jan Beulich , Konrad Rzeszutek Wilk Cc: Xen developer discussion , Linux Kernel Mailing List , stable@vger.kernel.org Subject: Re: [PATCH] xen: speed up grant-table reclaim Message-ID: References: <20230610153232.1859-1-demi@invisiblethingslab.com> <85275900-6b6a-5391-a2a0-16704df3f00f@suse.com> <1150fd9c-25c8-c91c-4ca2-2c587e3fbb43@suse.com> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha512; protocol="application/pgp-signature"; boundary="jXCcFDlqGesoyNm8" Content-Disposition: inline In-Reply-To: <1150fd9c-25c8-c91c-4ca2-2c587e3fbb43@suse.com> --jXCcFDlqGesoyNm8 Content-Type: text/plain; protected-headers=v1; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Date: Tue, 13 Jun 2023 11:11:49 -0400 From: Demi Marie Obenour To: Juergen Gross , Stefano Stabellini , Oleksandr Tyshchenko , Jan Beulich , Konrad Rzeszutek Wilk Cc: Xen developer discussion , Linux Kernel Mailing List , stable@vger.kernel.org Subject: Re: [PATCH] xen: speed up grant-table reclaim On Tue, Jun 13, 2023 at 08:45:31AM +0200, Juergen Gross wrote: > On 12.06.23 22:09, Demi Marie Obenour wrote: > > On Mon, Jun 12, 2023 at 08:27:59AM +0200, Juergen Gross wrote: > > > On 10.06.23 17:32, Demi Marie Obenour wrote: > > > > When a grant entry is still in use by the remote domain, Linux must= put > > > > it on a deferred list. > > >=20 > > > This lacks quite some context. > > >=20 > > > The main problem is related to the grant not having been unmapped aft= er > > > the end of a request, but the side granting the access is assuming th= is > > > should be the case. > >=20 > > The GUI agent has relied on deferred grant reclaim for as long as it has > > existed. One could argue that doing so means that the agent is misusing > > gntalloc, but this is not documented anywhere. A better fix would be to > > use IOCTL_GNTDEV_SET_UNMAP_NOTIFY in the GUI daemon. >=20 > I don't think this is a gntalloc specific problem. You could create the s= ame > problem with a kernel implementation. That is true. > And yes, using IOCTL_GNTDEV_SET_UNMAP_NOTIFY might be a good idea. >=20 > > > In general this means that the two sides implementing the protocol do= n't > > > agree how it should work, or that the protocol itself has a flaw. > >=20 > > What would a better solution be? This is going to be particularly > > tricky with Wayland, as the wl_shm protocol makes absolutely no > > guarantees that compositors will promptly release the mapping and > > provides no way whatsoever for Wayland clients to know when this has > > happened. Relying on an LD_PRELOAD hack is not sustainable. > >=20 > > > > Normally, this list is very short, because > > > > the PV network and block protocols expect the backend to unmap the = grant > > > > first. > > >=20 > > > Normally the list is just empty. Only in very rare cases like prematu= re > > > PV frontend module unloading it is expected to see cases of deferred > > > grant reclaims. > >=20 > > In the case of a system using only properly-designed PV protocols > > implemented in kernel mode I agree. However, both libxenvchan and the > > Qubes GUI protocol are implemented in user mode and this means that if > > the frontend process (the one that uses gntalloc) crashes, deferred > > grant reclaims will occur. >=20 > This would be the user space variant of frontend driver unloading. Yes and no. The main difference is that a frontend driver can prevent itself from being unloaded while it still has grants outstanding, whereas a user space process cannot prevent itself from being killed. The closest a user space process can get to making itself unkillable is to use mlockall() and mark itself ineligible for the OOM killer. This would likely require anything that used grants (including vchans!) to be a privileged daemon that exposes an API over an AF_UNIX socket, which would be a substantial change in the case of Qubes OS. > > Worse, it is possible for the domain to use > > the grant in a PV protocol. If the PV backend driver then maps and > > unmaps the grant and then tells the frontend driver to reclaim it, but > > the backend userspace process (the one using gntdev) maps it before the > > frontend does reclaim it, the frontend will think the backend is trying > > to exploit XSA-396 and freeze the connection. >=20 > Let me sum up how I understand above statement: >=20 > 1. Frontend F in DomA is granting DomB access via grant X for PV-device Y. > 2. DomB backend B for PV-device Y is mapping the page using grant X and u= ses it. > 3. DomB backend B unmaps grant X and signals end of usage to DomA fronten= d F. > 4. DomB userspace process maps grant X > 5. DomA frontend F tries to reclaim grant X and fails due to DomB userspa= ce > mapping All of these are correct, but there is some context that is missing. > So why would DomB userspace process map grant X? This would imply a malic= ious > process in DomB. This might be possible, but I don't see how such an atta= ck > would relate to your problem. It could happen with any malicious userspace > program with root access in a domain running a PV backend. The complete sequence of events is as follows: 1. DomA userspace process C allocates grant X via gntalloc. 2. DomA userspace process C tells DomB userspace process to map grant X via e.g. a vchan message. 3. DomB userspace process S receives message telling it to map grant X. 4. (optional) DomB userspace process S checks that DomA userspace process C is still alive and finds that it is. 5. DomB userspace process S gets preempted. 6. DomA userspace process C exits or is killed. 7. DomA kernel KA deallocates grant X. 8. Frontend F in DomA grants DomB access via grant X for PV-device Y. 9. DomB backend B for PV-device Y is mapping the page using grant X and us= es it. 10. DomB backend B unmaps grant X and signals end of usage to DomA frontend= F. 11. DomB userspace process S is scheduled again. It finally gets the chance to use gntdev to map grant X. 12. DomA frontend F tries to reclaim grant X and fails due to DomB userspace mapping by S. Given the current kernel API, I=E2=80=99m not aware of any way to avoid thi= s race unless C (and possibly S) are unkillable. Even with the check in step 4 there is still a TOCTOU problem. Neither kernel has any visibility into the userspace messaging protocol, so DomA has no way of knowing that S has been told to map the grant in the future. There are four other potential solutions I can think of. 1. If a gntalloc handle is closed while it still has mapped grants, leak the remaining grants. It=E2=80=99s okay to reclaim the pages those gran= ts refer to, but the grants themselves would not be usable until reboot. 2. Assume that =E2=80=9Cbackend has not unmapped grant=E2=80=9D is due to t= his race, and fall back to deferred reclaim instead of closing the connection. For this to work, either the data would need to be discarded by F, or S would need to follow some sort of protocol where it always checks that C is alive after mapping the grant but before writing to the newly mapped page. 3. Implement AF_VSOCK or a similar protocol for kernel-mediated inter-VM communication, and send grants as control messages. This means that both kernels are aware of grant lifetimes and can avoid this race. 4. Same as 3, except that grant table entries are replaced by capabilities that must be sent over Argo. This is obviously the best long-term solution, but it also requires massive changes in all PV protocols, so it isn=E2=80=99t practical in the short term. Additionally, I wonder if grant operations should require CAP_SYS_RAWIO. Userspace use of grants very much seems like a raw I/O operation, inasmuch as it is bypassing the protections Linux normally provides. > > > > However, Qubes OS's GUI protocol is subject to the constraints > > > > of the X Window System, and as such winds up with the frontend unma= pping > > > > the window first. As a result, the list can grow very large, resul= ting > > > > in a massive memory leak and eventual VM freeze. > > >=20 > > > I do understand that it is difficult to change the protocol and/or > > > behavior after the fact, or that performance considerations are in the > > > way of doing so. > >=20 > > Would the correct fix be to use IOCTL_GNTDEV_SET_UNMAP_NOTIFY? That > > would require that the agent either create a new event channel for each > > window or maintain a pool of event channels, but that should be doable. >=20 > I think this sounds like a promising idea. Me too. > > This still does not solve the problem of the frontend exiting > > unexpectedly, though. >=20 > Such cases need to be handled via deferred reclaim. You could add a flag > to struct deferred_entry when called through gntalloc_vma_close(), > indicating that this is an expected deferred reclaim not leading to > error messages. Deferred reclaim can handle this most of the time, but there is still a race (see above). > > > > To partially solve this problem, make the number of entries that th= e VM > > > > will attempt to free at each iteration tunable. The default is sti= ll > > > > 10, but it can be overridden at compile-time (via Kconfig), boot-ti= me > > > > (via a kernel command-line option), or runtime (via sysfs). > > >=20 > > > Is there really a need to have another Kconfig option for this? AFAICS > > > only QubesOS is affected by the problem you are trying to solve. I do= n't > > > see why you can't use the command-line option or sysfs node to set the > > > higher reclaim batch size. > >=20 > > Fair. In practice, Qubes OS will need to use the sysfs node, since > > the other two do not work with in-VM kernels. > >=20 > > > > Fixes: 569ca5b3f94c ("xen/gnttab: add deferred freeing logic") > > >=20 > > > I don't think this "Fixes:" tag is appropriate. The mentioned commit = didn't > > > have a bug. You are adding new functionality on top of it. > >=20 > > I=E2=80=99ll drop the "Fixes:" tag, but I will keep the "Cc: stable@vge= r.kernel.org" > > as I believe this patch meets the following criterion for stable > > backport (from Documentation/process/stable-kernel-rules.rst): > >=20 > > Serious issues as reported by a user of a distribution kernel may = also > > be considered if they fix a notable performance or interactivity i= ssue. > >=20 >=20 > Sure, this seems appropriate. Thank you. > > > > Cc: stable@vger.kernel.org > > > > Signed-off-by: Demi Marie Obenour > > > > --- > > > > drivers/xen/Kconfig | 12 ++++++++++++ > > > > drivers/xen/grant-table.c | 40 ++++++++++++++++++++++++++++-----= ------ > > > > 2 files changed, 41 insertions(+), 11 deletions(-) > > > >=20 > > > > diff --git a/drivers/xen/Kconfig b/drivers/xen/Kconfig > > > > index d5d7c402b65112b8592ba10bd3fd1732c26b771e..8f96e1359eb102d6420= 775b66e7805004a4ce9fe 100644 > > > > --- a/drivers/xen/Kconfig > > > > +++ b/drivers/xen/Kconfig > > > > @@ -65,6 +65,18 @@ config XEN_MEMORY_HOTPLUG_LIMIT > > > > This value is used to allocate enough space in internal > > > > tables needed for physical memory administration. > > > > +config XEN_GRANTS_RECLAIM_PER_ITERATION > > > > + int "Default number of grant entries to reclaim per iteration" > > > > + default 10 > > > > + range 10 4294967295 > > > > + help > > > > + This sets the default value for the grant_table.free_per_iterat= ion > > > > + kernel command line option, which sets the number of grants that > > > > + Linux will try to reclaim at once. The default is 10, but > > > > + workloads that make heavy use of gntalloc will likely want to > > > > + increase this. The current value can be accessed and/or modifi= ed > > > > + via /sys/module/grant_table/parameters/free_per_iteration. > > > > + > > >=20 > > > Apart from the fact that I don't like adding a new Kconfig option, th= e help > > > text is not telling the true story. Heavy use of gntalloc isn't to bl= ame, but > > > the fact that your PV-device implementation is based on the reclaim > > > functionality. TBH, someone not familiar with the grant reclaim will = have no > > > chance to select a sensible value based on your help text. > >=20 > > That=E2=80=99s a good point. Qubes OS will need to use the sysfs value= anyway > > in order to support in-VM kernels, so the Kconfig option is not really > > useful. >=20 > Nice. Yeah, having one less Kconfig option is nice. > > > > config XEN_SCRUB_PAGES_DEFAULT > > > > bool "Scrub pages before returning them to system by default" > > > > depends on XEN_BALLOON > > > > diff --git a/drivers/xen/grant-table.c b/drivers/xen/grant-table.c > > > > index e1ec725c2819d4d5dede063eb00d86a6d52944c0..fa666aa6abc3e786ddd= c94f895641505ec0b23d8 100644 > > > > --- a/drivers/xen/grant-table.c > > > > +++ b/drivers/xen/grant-table.c > > > > @@ -498,14 +498,20 @@ static LIST_HEAD(deferred_list); > > > > static void gnttab_handle_deferred(struct timer_list *); > > > > static DEFINE_TIMER(deferred_timer, gnttab_handle_deferred); > > > > +static atomic64_t deferred_count; > > > > +static atomic64_t leaked_count; > > > > +static unsigned int free_per_iteration =3D CONFIG_XEN_GRANTS_RECLA= IM_PER_ITERATION; > > > > + > > > > static void gnttab_handle_deferred(struct timer_list *unused) > > > > { > > > > - unsigned int nr =3D 10; > > > > + unsigned int nr =3D READ_ONCE(free_per_iteration); > > > > + const bool ignore_limit =3D nr =3D=3D 0; > > > > struct deferred_entry *first =3D NULL; > > > > unsigned long flags; > > > > + size_t freed =3D 0; > > > > spin_lock_irqsave(&gnttab_list_lock, flags); > > > > - while (nr--) { > > > > + while ((ignore_limit || nr--) && !list_empty(&deferred_list)) { > > > > struct deferred_entry *entry > > > > =3D list_first_entry(&deferred_list, > > > > struct deferred_entry, list); > > > > @@ -515,10 +521,13 @@ static void gnttab_handle_deferred(struct tim= er_list *unused) > > > > list_del(&entry->list); > > > > spin_unlock_irqrestore(&gnttab_list_lock, flags); > > > > if (_gnttab_end_foreign_access_ref(entry->ref)) { > > > > + uint64_t ret =3D atomic64_sub_return(1, &deferred_count); > > > > put_free_entry(entry->ref); > > > > - pr_debug("freeing g.e. %#x (pfn %#lx)\n", > > > > - entry->ref, page_to_pfn(entry->page)); > > > > + pr_debug("freeing g.e. %#x (pfn %#lx), %llu remaining\n", > > > > + entry->ref, page_to_pfn(entry->page), > > > > + (unsigned long long)ret); > > >=20 > > > I'd prefer not to issue lots of prints (being it debug or info ones) = if the > > > reclaim is expected to happen with a specific PV-device. > > >=20 > > > My preferred solution would be a per-device flag, but at least you sh= ould > > > switch to pr_*_ratelimited(). Same applies further down. > >=20 > > What do you mean by =E2=80=9Cper-device flag=E2=80=9D? These grants ar= e allocated by > > userspace using gntalloc, so there is no PV device on which the flag > > could be set. >=20 > In this case the flag should relate to the file pointer used for > gntalloc_open(). What about adding a warning if a userspace process exits without having cleaned up all of its grants, and a module parameter that controls whether the remaining grants are reclaimed or leaked? --=20 Sincerely, Demi Marie Obenour (she/her/hers) Invisible Things Lab --jXCcFDlqGesoyNm8 Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQIzBAEBCgAdFiEEdodNnxM2uiJZBxxxsoi1X/+cIsEFAmSIhzcACgkQsoi1X/+c IsHoTQ//f0QAB6i2y+l6aMe02fFTHW/1bW6CuPrYCq7DtV4y8uhsZqEuQah+EWvS a/Rruhq71HCIngFwj1DmQx8YYS5VLND0cRTGFZajCanWU1dTbraOxjPJ45vZmls1 K48OQTw0CAuNY1oUbeGyfwIewF7PbuAwkT47t+VaNtHKZlTe7NQ/fq9Ckpsktvv6 DtTny8JpN+xRt4daTU7wjC6io/2GPsuqikQRAKTa69k4lDNUb9Gcs4iCT3NR5I/y Z8G+Ot7RAo4Ln2DjY6V6JDhc9AMlBf8WMQ7rkwevpRUj1QQKny/NTMq5Rcw5SYEP MbE0Ceonm3kK6o+tOU2gg7iqC2MD76Qn8xpRqr12xv9/9MPJD529ZVAESimb0Ln8 6xTVZbCxQODOQS541nN0WbUpeov9P69vL8uSy/kneIkq1DpPmpmAjoaWLTSFPYkt GlmOLpvRbHBZdf3AkGRa6lNEq21a7RdjMjZ8eOaDM/0Bm5HMK0/ataaGjPSoBldP T7gKhQPB18wJOpLtCnJkcHYx4ck7dDuPNjLvVezPGDKyCYn8n11UXW/FxW2eUqi6 CEgbdQJxdeP6cN1PP6HyivC5T+pNM6ySmHc26QnGEFBcizG424rYh18AjrG8EY0q m0pdNYldV30Yh7agtuBU2buwB/KV65NepcCRDy8gvG3/Mzdv4jg= =nH5M -----END PGP SIGNATURE----- --jXCcFDlqGesoyNm8-- From xen-devel-bounces@lists.xenproject.org Tue Jun 13 15:44:26 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 15:44:26 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548234.856065 (Exim 4.92) (envelope-from ) id 1q96Bo-0002un-Kz; Tue, 13 Jun 2023 15:44:12 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548234.856065; Tue, 13 Jun 2023 15:44:12 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q96Bo-0002ug-Hy; Tue, 13 Jun 2023 15:44:12 +0000 Received: by outflank-mailman (input) for mailman id 548234; Tue, 13 Jun 2023 15:44:12 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q96Bn-0002ua-TG for xen-devel@lists.xenproject.org; Tue, 13 Jun 2023 15:44:11 +0000 Received: from esa4.hc3370-68.iphmx.com (esa4.hc3370-68.iphmx.com [216.71.155.144]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 2289dcab-0a01-11ee-b232-6b7b168915f2; Tue, 13 Jun 2023 17:44:10 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 2289dcab-0a01-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686671050; h=date:from:to:cc:subject:message-id:references: mime-version:content-transfer-encoding:in-reply-to; bh=MXaIcm9LNLLIre10K1LG1BSQeRPlaAhnUNamcV9olYU=; b=FD65DveQKRv3c/Qu8Bp+If9t9co7rznKGgE5SJad0vpUZATUa0apZwJ5 VU/FC0u7iBn06msYLYw+B5BOcnfg1ohP2Bd8mkiBR7YbkhHM/eb2wox4I GYWmH4oqmr89bqNpRuS3LNPLSyM3TaUkRVjJ1OlmenHDukh1fSMq1fJ82 o=; Authentication-Results: esa4.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none X-SBRS: 4.0 X-MesageID: 115157347 X-Ironport-Server: esa4.hc3370-68.iphmx.com X-Remote-IP: 162.221.156.123 X-Policy: $RELAYED IronPort-Data: A9a23:r9LbGKmLNExpkcGPqh2ni2ro5gyoJkRdPkR7XQ2eYbSJt1+Wr1Gzt xJKWmvUPqzZZGL1eoonPYq3pEkGvJOByddqHgJvqn1nFSMWpZLJC+rCIxarNUt+DCFhoGFPt JxCN4aafKjYaleG+39B55C49SEUOZmgH+a6U6icfHgqH2eIcQ954Tp7gek1n4V0ttawBgKJq LvartbWfVSowFaYCEpNg064gE0p5KyaVA8w5ARkPqgV5QSGzRH5MbpETU2PByqgKmVrNrbSq 9brlNmR4m7f9hExPdKp+p6TnpoiG+O60aCm0xK6aoD66vRwjnVaPpUTbZLwXXx/mTSR9+2d/ f0W3XCGpaXFCYWX8AgVe0Ew/yiTpsSq8pefSZS0mZT7I0Er7xIAahihZa07FdRwxwp5PY1B3 eE6EGA0YkCEvMTs8ZOJcKpvnut+HeC+aevzulk4pd3YJfMvQJSFSKTW/95Imjw3g6iiH96HO ZBfM2A2Kk2dPVsWYAx/5JEWxY9EglH2dSFYr1SE47I6+WHJwCR60aT3McqTcduPLSlQth/B+ zuboD+lXXn2MvS+xSepzFKSudaIhH/5SY0pJKGa665D1Qj7Kms7V0RNCArTTeOCoky3Xd5FO lEX0iUrpKk2skesS7HVXRe1vXqFtR40QMdLHqsx7wTl4rrZ5UOVC3YJShZFacc6r4kmSDoyz FiLktj1Qzt1v9W9Vna15rqS6zSoNkA9JHcPfyYeQSMZ4tPop8c4iRenczp4OPfr1JuvQ2i2m m3U6nFk3N3/kPLnyY2m32iXuj78oaPvFD8U1D+UXXqKszJQMdvNi5OT1bTL0RpRBN/HHgff5 iRcxJT2APMmVs/UynHUKAkZNPTwvqvebmWB6bJ6N8N5nwlB7UJPamy5DNtWAE5yevgJdjbyC KM4kVMAvcQDVJdGgEIeXm5QNyjJ5fK6fTgdfqqIBueim7AoHON9wAlgZFSLw0fmm1U2nKc0N P+zKJj8UytLVfs8nWbmHo/xNIPHIAhknQs/orihlnyaPUe2PibJGd/pznPTBgzG0E90iFqMq IsOXyd74x5eTPf/ckHqHX07dDg3wYwALcmu8aR/L7fTSjeK7Ul9U5c9N5t9Id0690mU/8+Ul kyAtrhwkQKv3yebeFvbNxiOqtrHBP5CkJ7yBgR0VX7A5pTpSd/HAHs3H3fvQYQayQ== IronPort-HdrOrdr: A9a23:0f6mzqPuAxVFw8BcTgWjsMiBIKoaSvp037BK7S1MoH1uA6mlfq WV9sjzuiWatN98Yh8dcLO7Scu9qBHnlaKdiLN5VduftWHd01dAR7sSjrcKrQeAJ8X/nNQtr5 uJccJFeaDN5Y4Rt7eH3OG6eexQv+Vu6MqT9IPjJ+8Gd3ATV0lnhT0JbTqzIwlNayRtI4E2L5 aY7tovnUvaRZxGBv7LYEXsRoL41qT2qK4= X-Talos-CUID: 9a23:obe4QW8Lx/xN7pbfqvOVv1M2IpAcfi3a91GKEm6KMyVqUJLIeHbFrQ== X-Talos-MUID: 9a23:HnvAAAhKfw8zVvSR2EMC88MpFct1z5qONn801oxaudiLDhxsGSrNpWHi X-IronPort-AV: E=Sophos;i="6.00,240,1681185600"; d="scan'208";a="115157347" Date: Tue, 13 Jun 2023 16:43:58 +0100 From: Anthony PERARD To: Jason Andryuk CC: Jan Beulich , "xen-devel@lists.xenproject.org" , Wei Liu Subject: Re: [PATCH 1/5] xen-mfndump: drop dead assignment to "page" from lookup_pte_func() Message-ID: <71f080c4-5e7f-4230-ad18-f1f7fb16c9ef@perard> References: <2dc50b58-a4e4-3e32-1876-94412b14b052@suse.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: On Mon, Jun 12, 2023 at 08:47:41AM -0400, Jason Andryuk wrote: > On Mon, Jun 12, 2023 at 7:45 AM Jan Beulich wrote: > > > > The variable isn't used past the loop, and its value also isn't > > meaningful across iterations. Reduce its scope to make this more > > obvious. > > > > Coverity ID: 1532310 > > Fixes: ae763e422430 ("tools/misc: introduce xen-mfndump") > > Signed-off-by: Jan Beulich > > Reviewed-by: Jason Andryuk Acked-by: Anthony PERARD Thanks, -- Anthony PERARD From xen-devel-bounces@lists.xenproject.org Tue Jun 13 15:52:04 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 15:52:04 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548241.856076 (Exim 4.92) (envelope-from ) id 1q96JF-0004UW-HS; Tue, 13 Jun 2023 15:51:53 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548241.856076; Tue, 13 Jun 2023 15:51:53 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q96JF-0004UP-EM; Tue, 13 Jun 2023 15:51:53 +0000 Received: by outflank-mailman (input) for mailman id 548241; Tue, 13 Jun 2023 15:51:52 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q96JE-0004UJ-Bb for xen-devel@lists.xenproject.org; Tue, 13 Jun 2023 15:51:52 +0000 Received: from esa6.hc3370-68.iphmx.com (esa6.hc3370-68.iphmx.com [216.71.155.175]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 34536c49-0a02-11ee-8611-37d641c3527e; Tue, 13 Jun 2023 17:51:49 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 34536c49-0a02-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686671509; h=date:from:to:cc:subject:message-id:references: mime-version:in-reply-to; bh=vinrkEBxhJi3lAQy3F5JzVAKRRCOx2wpkGpS81AX3wk=; b=Oz8cj/D+K8tcZHPOp988ZV/mE0Um7c6FN/dDFiO2FYAoKsGYO+wWjMbp RX+fKfuMtTt6BATITJdIO3M9aQSRxProcI/8XmtkMb+Phpt7h1HvaNDHz JtMWfrK5R1s0jl4LRZgvT2Hc7xwt9EoRa2624zOh82VAEXcXg7CSHWg3g U=; Authentication-Results: esa6.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none X-SBRS: 4.0 X-MesageID: 111959888 X-Ironport-Server: esa6.hc3370-68.iphmx.com X-Remote-IP: 162.221.156.123 X-Policy: $RELAYED IronPort-Data: A9a23:Wnld06gENheTPvqw3J4DuvziX161ohAKZh0ujC45NGQN5FlHY01je htvX2zTaKzbamOkKt10ad62pEpUvZHcz95mSAdvpH9kQn4b9cadCdqndUqhZCn6wu8v7q5Ex 55HNoSfdpBcolv0/ErF3m3J9CEkvU2wbuOgTrWCYmYpHlUMpB4J0XpLg/Q+jpNjne+3CgaMv cKai8DEMRqu1iUc3lg8sspvkzsx+qyq0N8klgZmP6sT4gaFzyN94K83fsldEVOpGuG4IcbiL wrz5OnR1n/U+R4rFuSknt7TGqHdauePVeQmoiM+t5mK2nCulARrukoIHKN0hXNsoyeIh7hMJ OBl7vRcf+uL0prkw4zxWzEAe8130DYvFLXveRBTuuTLp6HKnueFL1yDwyjaMKVBktubD12i+ tQXGBkkS1fbiN7m5+yaZNJn1+cFFMDkadZ3VnFIlVk1DN4jSJHHBa7L+cVZzHE7gcUm8fT2P pRDL2A1NVKZPkMJYw1MYH49tL7Aan3XejtEqFWTtOwv7nLa1gBZ27nxKtvFPNeNQK25m27B/ zuXojWpUkFy2Nq38GOMz3S0vO72libhdKkoDaOVq9lmnwjGroAUIEJPDgbqyRWjsWa8Ud9CL 00f+gI1sLM/skesS7HVTxC+5XKJoBMYc95RCPEhrhGAzLLO5ASUDXRCSSROAPQ5sOcmSDps0 UWG9/vrCiZoq6a9Um+G+/GfqjbaESQNNmoDeS8sRBMI+cX+u5o0ig/TT9FlC+i+ididMTjoz iqDtiQWm7QZhslN3KK+lW0rmBr1+MKPFFRsoFyKACT8tFgRiJOZi5KA5mjyxNMHdImlHn7fn VY/kJm9ytgHAsTY/MCSe9nhDI1F9t7cbm2C3wQzR8Z9n9i+0yX9JN4NuVmSMG8sa59ZImGxP Sc/rCsLvPdu0G2Wgbibim5bI+Aj1uDeGNvsTZg4hfIeM8EqJGdrEMyDDHN8PlwBc2B2y8nTw b/BLa6R4Y8yUMyLNgaeSeYHyqMMzSsj327VTp2T5035geTDNSLKEuZZYALmggUFAEWs+l29H zF3bZLi9vmieLemPnm/HXA7cDjm0kTX9bip8pcKJ4Zv0yJtGX07Cu+5/F/SU9UNokihrc+Rp ivVchYBmDLCaYjvdV3ihoZLNOm+Av6SbBsTYUQRALpf8yF7Mdz1sPZBJsZfkHtO3LUL8MOYh sItI62oasmjgByck9jBRfERdLBfSSk= IronPort-HdrOrdr: A9a23:noU7Da50gO911nshCAPXwPLXdLJyesId70hD6qkRc3Bom6mj/P xG88516faZslgssQgb6La90cu7IU80hKQV3WB5B97LNmTbUQCTXeJfBOXZslndMhy72ulB1b pxN4hSYeeAamSSVPyKgjVQxexQpeW6zA== X-Talos-CUID: =?us-ascii?q?9a23=3AmadUy2vMlwa0BBbILYJN2hcl6IsqQlT06TCILHP?= =?us-ascii?q?oLjhIZoaeGHy2wKprxp8=3D?= X-Talos-MUID: 9a23:DYTAKwrpzvS3MephWkUezwg7Pfpu+56vMUsIi7ktgdCaGHFXNyjI2Q== X-IronPort-AV: E=Sophos;i="6.00,240,1681185600"; d="scan'208";a="111959888" Date: Tue, 13 Jun 2023 16:51:34 +0100 From: Anthony PERARD To: Jan Beulich CC: "xen-devel@lists.xenproject.org" , Wei Liu , Juergen Gross , Daniel Smith Subject: Re: [PATCH 2/5] libxl: drop dead assignments to "ret" from libxl__domain_config_setdefault() Message-ID: <05729d2e-d503-48e4-a8f3-3d65293f544d@perard> References: <2dc50b58-a4e4-3e32-1876-94412b14b052@suse.com> <5eda17da-7185-9cf6-7e87-70da57aa0ebc@suse.com> MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Disposition: inline In-Reply-To: <5eda17da-7185-9cf6-7e87-70da57aa0ebc@suse.com> On Mon, Jun 12, 2023 at 01:46:19PM +0200, Jan Beulich wrote: > The variable needs to be properly set only on the error paths. > > Coverity ID: 1532311 > Fixes: ab4440112bec ("xl / libxl: push parsing of SSID and CPU pool ID down to libxl") > Signed-off-by: Jan Beulich Acked-by: Anthony PERARD Thanks, -- Anthony PERARD From xen-devel-bounces@lists.xenproject.org Tue Jun 13 16:04:00 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 16:04:00 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548246.856085 (Exim 4.92) (envelope-from ) id 1q96Uh-0006ZM-JX; Tue, 13 Jun 2023 16:03:43 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548246.856085; Tue, 13 Jun 2023 16:03:43 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q96Uh-0006ZF-GY; Tue, 13 Jun 2023 16:03:43 +0000 Received: by outflank-mailman (input) for mailman id 548246; Tue, 13 Jun 2023 16:03:42 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q96Ug-0006Z9-0I for xen-devel@lists.xenproject.org; Tue, 13 Jun 2023 16:03:42 +0000 Received: from esa5.hc3370-68.iphmx.com (esa5.hc3370-68.iphmx.com [216.71.155.168]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id db16ca15-0a03-11ee-8611-37d641c3527e; Tue, 13 Jun 2023 18:03:39 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: db16ca15-0a03-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686672219; h=date:from:to:cc:subject:message-id:references: mime-version:in-reply-to; bh=AG3Pg/r8x0vNumvZ+Hbp62jgDlclbg1M0nthnOmbhPU=; b=Vc/HotXkT3TcuCQVupJ+u+vOyIxneW6YhyKcAVqP1xzaPWhdMDoh18ft pM5Z95peHAnWeU9pzUfvmu3tYNjiRNqNrt4it1vRk/GaPFDH0g0Zo5hcm xDuty2lhQsXBalyOyvPNL16ocD9KP/QojfnwNGfydHocujKznh5z+cbf3 U=; Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none X-SBRS: 4.0 X-MesageID: 111380549 X-Ironport-Server: esa5.hc3370-68.iphmx.com X-Remote-IP: 162.221.156.123 X-Policy: $RELAYED IronPort-Data: A9a23:JBh/eKwB6QU3YoI64eJ6t+cbxirEfRIJ4+MujC+fZmUNrF6WrkUHx 2dMWWzXO6yJNGKje48lb4S+9EgE65KAzoA3HAttpSAxQypGp/SeCIXCJC8cHc8wwu7rFxs7s ppEOrEsCOhuExcwcz/0auCJQUFUjP3OHfykTrafYEidfCc8IA85kxVvhuUltYBhhNm9Emult Mj75sbSIzdJ4RYtWo4vw/zF8EsHUMja4mtC5QRgPKsT5jcyqlFOZH4hDfDpR5fHatE88t6SH 47r0Ly/92XFyBYhYvvNfmHTKxBirhb6ZGBiu1IOM0SQqkEqSh8ai87XAME0e0ZP4whlqvgqo Dl7WT5cfi9yVkHEsLx1vxC1iEiSN4UekFPMCSDXXcB+UyQq2pYjqhljJBheAGEWxgp4KUd2r fw4cDEVUiHZwOmc/Yu6bMIzhf12eaEHPKtH0p1h5TTQDPJgSpHfWaTao9Rf2V/chOgXQ6yYP ZBAL2MyMlKZOUYn1lQ/UfrSmM+hgGX/dDtJ7kqYv6Mt70DYzRBr0airO93QEjCPbZwMxx3I/ j+argwVBDkad+yCmBG110utxdXutGDcQJswN6K3o6sCbFq7mTVIVUx+uUGAifuzh1O6WtlfA 1cJ4Sdopq83nGS7Q9+4UxCmrXqsuh8HR8EWA+A88BuKyKff/0CeHGdsZiFFQMwrsokxXzNC/ l2GhdTyHhR0raaYD3ma89+8pCu/IyEPIUceZCUPSk0O5NyLnW0opkuRFJA5Svfz14CrX2iqm FhmsRTSmZ01tZYL9/265Wz22XWnjKXwTygeuQbuCzfNAhxCWGK1W2C5wQGFvagedtrBEQXpU GsswJbHsr1XZX2ZvGnUGbhWQun0jxqQGGeE6WODCaXN4NhEF5SLWYlLqA9zK05yWirvUW+4O RSD0e+9CXI6AZdLUUOUS9jrYyjS5fK8fekJr9iNBja0XrB/dRWc4AZlblOK0mbmnSAEyP9vZ 8rKLZn3XCpKUMyLKQZaoc9HidfHIQhknAvuqW3TlUz7gdJymlbIIVv6DLd+Rr9gt/7VyOkk2 91eK9GL231ivB7WO0HqHXooBQlSdxATXMmmw/G7g8bfemKK7kl9Ua6OqV7gEqQ595loehDgp yntABUEmQSu2BUq62yiMxheVV8mZr4nxVpTAMDmFQrAN6QLCWp30JoiSg== IronPort-HdrOrdr: A9a23:XWjRfquqNozkYgDjpGg0YQHl7skDdtV00zEX/kB9WHVpmszxra 6TddAgpHvJYVcqKRQdcL+7VZVoLUmxyXcx2/h3AV7AZniFhILLFuFfBOLZqlWKcREWtNQttp uIG5IObuEYZmIasS+V2maFL+o= X-Talos-CUID: 9a23:dKUT1WEAtqnncVnQqmJBzBYUOpgkakHsljDbCXKBCEBCF76sHAo= X-Talos-MUID: =?us-ascii?q?9a23=3AmQ5h2g4dua+GzXqEzuGYdjxDxoxooJSzWWs9tKw?= =?us-ascii?q?H+POlHG9XIy6/ryu4F9o=3D?= X-IronPort-AV: E=Sophos;i="6.00,240,1681185600"; d="scan'208";a="111380549" Date: Tue, 13 Jun 2023 17:03:18 +0100 From: Anthony PERARD To: Jan Beulich CC: "xen-devel@lists.xenproject.org" , Wei Liu , Juergen Gross Subject: Re: [PATCH 3/5] libxg: drop dead assignment to "ptes" from xc_core_arch_map_p2m_list_rw() Message-ID: <33566692-ee42-44af-a94a-5535fdf39930@perard> References: <2dc50b58-a4e4-3e32-1876-94412b14b052@suse.com> MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Disposition: inline In-Reply-To: On Mon, Jun 12, 2023 at 01:46:40PM +0200, Jan Beulich wrote: > The function returns immediately after the enclosing if(). > > Coverity ID: 1532314 > Fixes: bd7a29c3d0b9 ("tools/libs/ctrl: fix xc_core_arch_map_p2m() to support linear p2m table") > Signed-off-by: Jan Beulich > > --- a/tools/libs/guest/xg_core_x86.c > +++ b/tools/libs/guest/xg_core_x86.c > @@ -210,7 +210,6 @@ xc_core_arch_map_p2m_list_rw(xc_interfac > } > > munmap(ptes, n_pages * PAGE_SIZE); > - ptes = NULL; > off = p2m_vaddr & ((mask >> shift) << shift); > } Do we have to remove this assignment? What if someone adds code later and reuse the content of the variable `ptes`? Or what if someone adds codes after the loop, and handle an error with `goto out`, we would have a double-munmap(). -- Anthony PERARD From xen-devel-bounces@lists.xenproject.org Tue Jun 13 16:08:37 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 16:08:37 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548251.856096 (Exim 4.92) (envelope-from ) id 1q96ZL-0007DF-51; Tue, 13 Jun 2023 16:08:31 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548251.856096; Tue, 13 Jun 2023 16:08:31 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q96ZL-0007D8-2H; Tue, 13 Jun 2023 16:08:31 +0000 Received: by outflank-mailman (input) for mailman id 548251; Tue, 13 Jun 2023 16:08:29 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q96ZJ-0007D2-PB for xen-devel@lists.xenproject.org; Tue, 13 Jun 2023 16:08:29 +0000 Received: from EUR03-AM7-obe.outbound.protection.outlook.com (mail-am7eur03on20620.outbound.protection.outlook.com [2a01:111:f400:7eaf::620]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 87fcecfa-0a04-11ee-8611-37d641c3527e; Tue, 13 Jun 2023 18:08:27 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by DU2PR04MB9067.eurprd04.prod.outlook.com (2603:10a6:10:2f2::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.35; Tue, 13 Jun 2023 16:08:25 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.039; Tue, 13 Jun 2023 16:08:18 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 87fcecfa-0a04-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=M+mUz+m/icLi6soH5rd5PH8cp/014fTkp//Qd3dLcr2jedrdAVUUyGMXGCncEXH6uYHO4PKlO8QX6Wqsxtvf/CBmE0xvB7sbKThVtxp1V62EmtSQ8YCS/0gDYHGXMvsx0vlCK4b3q0PMB/nhO9xHmbeyl/MW+HTYUz1Vg5MHDZt2iuBs84BwoRKHYQMahJ7AWvgII1v8XLAWWjj6/wznjnGfOt+tL+QVWreb+i07SFoeQ41s/bIM0EMBg42eDlSEKUSZ9sOR2kS68BeLTDHexP4zRLTBVNKWNfFw9qO+DGD5Hnt/GvHjxLyaSa4MjalY6Hhw6YwzfdMWj70RzdJ81Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=OM9lwbqIpER4R9ogt0cDMHR4kIE5JyHL1Jop51j+1vg=; b=TKLx/18fBXmHnnuI1eFfjE9WF3XQzwENLJZFnheoUR3t+zZ9pRGs42P9wDXc0QeNVkiMm+Y9xRaSIPPOCLEdsRGkye2sVmnAhtpiNcvZbnhBEHtNZb6pPJIM1K6bkWscyQOT7YVAZXif6jzJflbK+vaLHs6xa7SGsLK2fFehqGOE8EwR8lKz4wurtac/jQQArpNTmBuyl6RWibBCLETKcUPjg9EUYIGazyCcHN8CyaLGc1dM/I806EiS/MRhFKxGKXzGB8YBKidnWuohbrsEjZpzsYVOAcrMtKKNRWWv2TpvniUk+XE7JsCtU/U7/9deTpTNC3xEPOPf7yJiQZADUA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=OM9lwbqIpER4R9ogt0cDMHR4kIE5JyHL1Jop51j+1vg=; b=3zL6lZ1TBLN3TLNkTk+eax2YUDS++F3D1t6/D/W1I4l9Uf5nliayGwmRD1kppETE1nDlwtQgV3QOOqvXyyHH5XYD5ekIjnuj9EnRjFySkXTJBzAZUOMrih0HEKOa7TpSoRZMczhMCKYXpXi3D47JejP8vyxVSF2lw3KBCaAFwHGLypiTF11RcrdfbR/ygB8ROOavhJ3hh5iWxbd1CcKUbdQDOBj1yWBWDa8r2ubamz85HHxf2LS+iB9ySEzHy4QC7qfwb8vc8AcKFzS/cu+gz7hBBha2sKgXR6hQveh652AUA0jCg6sQgK8h85AJJ0HIEnf0HvNlNdRqqpj7qxJJ5w== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: Date: Tue, 13 Jun 2023 18:08:16 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH 3/5] libxg: drop dead assignment to "ptes" from xc_core_arch_map_p2m_list_rw() Content-Language: en-US To: Anthony PERARD Cc: "xen-devel@lists.xenproject.org" , Wei Liu , Juergen Gross References: <2dc50b58-a4e4-3e32-1876-94412b14b052@suse.com> <33566692-ee42-44af-a94a-5535fdf39930@perard> From: Jan Beulich In-Reply-To: <33566692-ee42-44af-a94a-5535fdf39930@perard> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR2P281CA0007.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:a::17) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|DU2PR04MB9067:EE_ X-MS-Office365-Filtering-Correlation-Id: 0d7dd89e-c20d-4540-b19d-08db6c2866d6 X-LD-Processed: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: lbNLmXiQwdyNeiqOqyRopeQRQpvSUdLWpgMpuw9gkZdQ2OY6mrGaocBTfvFgPZJXAZj3uzS+AXoR6xD2tgJzLwm04YP9zHkRhK7+X9Wg2rVJZ0EX4cwmVhJ4VNTWxMCrnQkAGm3HVABftsyrfVFuy1N79CrlRcI9YSf2hwdSxMhTLX3ydfZiHBTVf9YHdkzpB1deA7g27RSfSrBpFH7HkJ8PkJjPhd8/0+nVO5T04uGHI66x6e7zTo+fxTKR6eLyTuGTJZO80mqYWtKT/WH4FHF9HTIRv+8Y68wE2IFSXO2KnoxnSVlks6kwjYh11tcQDE9rL2aWzoxDqkzHZB40OdL2AdmxG7465bWlXgSMKc2jlg3z0S5pnlSifeAMH8YP+6dnBSsiKK0dzYJUZdAq9TtYmE/DytJgp2kymzATEcIvPc7joyc42lAMxEqNbgA2nqDVOWqvjO75HUldPlCy81zxl2GAYUmkDzG5hMF+Agm6hXA9JhIUO/XlJn3jNXMug+pekwn0Cvj54EhqhudDxxFGmmoEDDtB639YepMe+ZJ27lU8lOdMvKL02HQoSTxAkc6snf6K+1s9XmYzFAkNROFCbbBTRI6/EHdPta2JTAhLKSsnr+/ugucIgahp/jSIx26qjOMLX6WZ7lXHKh3NFQjQw4nYbi36ZlJXM/FuhLkEg6p+3pXceKGSOAHfD3Wt X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(346002)(136003)(376002)(396003)(366004)(39860400002)(451199021)(107886003)(6486002)(36756003)(83380400001)(2616005)(38100700002)(31696002)(86362001)(6512007)(53546011)(6506007)(26005)(186003)(478600001)(2906002)(54906003)(66476007)(6916009)(4326008)(316002)(66556008)(31686004)(41300700001)(5660300002)(8936002)(66946007)(8676002)(70780200001)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?TFJleVM5dXNhTVlUOUh6ek52bGoxQlNxWktPVWI3WHRweU9JZG1ubmJoUWha?= =?utf-8?B?TWR5azRXcjNjZDMrR1U5aTY4ZDczcXpJZnJ4UmZRN244SnlBdW5GVUNYSHlL?= =?utf-8?B?TlZMYlZibndQQnQ1TzN6bmdXUVY0QTdCbU9DZm5TcUdNM0FYZFlaRUNTTmVT?= =?utf-8?B?K3lGL0RXdnZaTGYwZGt2SjFCeUtPNEl1amFHVlFJck91Q1JwVlYvRGhWaXJ2?= =?utf-8?B?b0VaWm53aWlJSy9hVWg5dDBRcU42dzBXYnRBOFpNMjBTTDRDeDlQcVlvRDRY?= =?utf-8?B?c3JsaXpCSWZmK2duMXpIZmRXbWs0N1pBWmtiTDRhUWJzemlVQjlZTmE1cU5M?= =?utf-8?B?MXBVdXFLb2VUUkVxL2JkSlBpSlIxTW43d1pCUzBlcEw5UVFsaG9VWkVxT3ZC?= =?utf-8?B?WHhLWGxqTjVVcm1LWDZ5OC83Y1FXYy8wbGwwT1pKeU5vSzFqbEFWb3ErRGlC?= =?utf-8?B?NmxtVlJzbTg2ZjFZUTVJaE5HWlR3WkY5TmdJOXI4LzJ1QW04TjVORHNnMDR3?= =?utf-8?B?eDNSLzJDTDU1UHppWUUzYnVLY1RQQ2k0ZUhyWi96Qlc5blZ3eW52WTdKclNl?= =?utf-8?B?Tnd4L2Q4a1VMMjJPM09ubnl0OFdlYW5XRTkxMG1JNUMrWkdwNjIxQnVRaFlV?= =?utf-8?B?T0wwTUwxVzJYbisrcERidXpuU0x5MUVCbkE1Q1JLYy9kYXk1NW5pVytIcktR?= =?utf-8?B?Y1VrYWVXZVdXQk1kUUZHb1A2ZEM1RVUrOElZckE1aERxakIxcVZGU2loRnI5?= =?utf-8?B?Rk9vWXNjSmE3U3FDRFN6L1hLeDY4bE9UNE9QTVRUdC9QVnhJWjl2ZmJvVm5R?= =?utf-8?B?MHJuOS9qU2QydjFLcEg2K3VFMms2Ukl3YVUwWVVZT3hIVHhzck9VdURxZ09G?= =?utf-8?B?a0EvLzRVby9WOHZRMzJIZ2FadHdDT2dKdWJ0Q3U4eEd3bk5JMmNxd2VQd0tK?= =?utf-8?B?UVhIQy9WS1RPOS9BTFFGWWQ3eWUyWXdUU0JFVm1FQVV1OVBFMEhrQzZvTVNy?= =?utf-8?B?Q0c5c25xM0FmT3ovSzRQUjhvdHRQSUJqRDRCMzRQWUU0MVd2RW52RE9IcDg0?= =?utf-8?B?bFUzWGFkS2p3eUpuZVZYaWlBYjdxOENVREg2TkZodFFXeTZJd2l2VmpkbUow?= =?utf-8?B?UE5zU29GUW0zbzllR2I4OVpOZGZ0WVdlb082K0ozOGN3RXFzNHpVdWJzOU9X?= =?utf-8?B?TXFRakI4NnAxUWdHc2JlS1BZL0RYWHJQRkhKOGlCQVQ0S2lhWnBEeEdIWjV2?= =?utf-8?B?UGlSemNPZGVLbHkweWJxUnRjT0NZZDdDcEpXKzROTElCN245RW9BaXZlT1N4?= =?utf-8?B?TkxCWlNaZDJGVnhMeTgvWHNmZkk4dlB1M2NHSkVVOURld0FaWHZKaDZQaXNv?= =?utf-8?B?RHBSNmN5NFI3NzRTazRGSUpVMWtWOWVYSHd2VUdYVTRtSDd3T0xIWENzeXR6?= =?utf-8?B?RFNIblNZdEdmNmN3TnZnS0NDbGFSdU0vV0lCWjYxc0ZLNzd4NzhPOGNDd2tx?= =?utf-8?B?MXdrendRZWNTVU81QlF5N0dWMFpRdEZodjRxemN1UHlKOFNyU29wSDYrSU9W?= =?utf-8?B?VFYyTmMwM25qVVNMd0ZIZ0NoUjRpMWMwcjVLMTE5TVA5Tzd5Zk5nTnhRRjVz?= =?utf-8?B?MlVkN1p5TFd4TFk2bnkxNlFQZHRZbTFTK09CTG5nWEdlMllaK0t0TzBXN1lI?= =?utf-8?B?WUVqY3dvWGtpbU9rOURMTC90QXZCU2RUNlB1OFUyM2hZTENtektSb1pnOXRa?= =?utf-8?B?d08vNVA5dm83WCtFS1hkMXllcU9oNjMyMWlZMFJhT0FPRUF5SmxYQU8wZklQ?= =?utf-8?B?Y2VMMVFsTE0rK3dQbk1sT3JNY1RIdll6T29MbVNCb0pvcUhScElWL3lXQWdn?= =?utf-8?B?eS9BTDVLZkJQUTJnREc4UmZjbGRta2xGRGcrWXBFT1pTRGR4Zjd2WUVHbCt5?= =?utf-8?B?RGc3ZW5meExEbUtVUG1QYWZMelY3K2ZyWGhnRXVkVkM3Y21yQmVoYkxodllI?= =?utf-8?B?c29YWkEya085akZnM2haQXQ2TmxEVXdGTUVSWndvSFBIN1JzTDF3Tnc5QmNy?= =?utf-8?B?MEhCSUR3QlJlY2djRWxSZWlHR2Vta2Evdk5wUW03RlF6SWhJYmxHd0VPSVZK?= =?utf-8?Q?c5ZCyFTzlKt+lyBPSH02wcJK/?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 0d7dd89e-c20d-4540-b19d-08db6c2866d6 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Jun 2023 16:08:18.4541 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: xmP0EllXGQID+ku6M26V1BRKW1wRjOAJjtD0kRah2u5d/KZQS2yyFjXbwMUssf349H0FvDcAp6WlYPf3XgISUQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU2PR04MB9067 On 13.06.2023 18:03, Anthony PERARD wrote: > On Mon, Jun 12, 2023 at 01:46:40PM +0200, Jan Beulich wrote: >> The function returns immediately after the enclosing if(). >> >> Coverity ID: 1532314 >> Fixes: bd7a29c3d0b9 ("tools/libs/ctrl: fix xc_core_arch_map_p2m() to support linear p2m table") >> Signed-off-by: Jan Beulich >> >> --- a/tools/libs/guest/xg_core_x86.c >> +++ b/tools/libs/guest/xg_core_x86.c >> @@ -210,7 +210,6 @@ xc_core_arch_map_p2m_list_rw(xc_interfac >> } >> >> munmap(ptes, n_pages * PAGE_SIZE); >> - ptes = NULL; >> off = p2m_vaddr & ((mask >> shift) << shift); >> } > > Do we have to remove this assignment? What if someone adds code later > and reuse the content of the variable `ptes`? Or what if someone adds > codes after the loop, and handle an error with `goto out`, we would have > a double-munmap(). Imo it would be at that time when the assignment wants (re)adding. I fully agree with the tool, and I expect Misra (if it was applied to the tool stack as well) would demand the very same change. Jan From xen-devel-bounces@lists.xenproject.org Tue Jun 13 16:08:51 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 16:08:51 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548252.856106 (Exim 4.92) (envelope-from ) id 1q96Ze-0007Zt-CS; Tue, 13 Jun 2023 16:08:50 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548252.856106; Tue, 13 Jun 2023 16:08:50 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q96Ze-0007Zm-9Q; Tue, 13 Jun 2023 16:08:50 +0000 Received: by outflank-mailman (input) for mailman id 548252; Tue, 13 Jun 2023 16:08:49 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q96Zd-0007Yb-LR for xen-devel@lists.xenproject.org; Tue, 13 Jun 2023 16:08:49 +0000 Received: from esa5.hc3370-68.iphmx.com (esa5.hc3370-68.iphmx.com [216.71.155.168]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 93c2275a-0a04-11ee-b232-6b7b168915f2; Tue, 13 Jun 2023 18:08:48 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 93c2275a-0a04-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686672528; h=date:from:to:cc:subject:message-id:references: mime-version:in-reply-to; bh=ksT2r79A8P0AHjgc2GQuz+tDQS38qLoztQeSnxBjJGg=; b=evc5Bm+crdFQugEj4Bo1U0QunnftuIpT1a6oRCauWVXelv8gChbGBPs3 6VGswGDKrJFbKjnjyQw1AFnJnvS5gVU5/jZrGn5WjWaoNG8L4dpI1S5DX L1XVxaKJQ7M+ZbRCpig9vPsNsZAWaXc0dtR5cAqbu/GPfDZVLKOyimzrJ 0=; Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none X-SBRS: 4.0 X-MesageID: 111381375 X-Ironport-Server: esa5.hc3370-68.iphmx.com X-Remote-IP: 162.221.156.123 X-Policy: $RELAYED IronPort-Data: A9a23:zdwrCKwzeNMWjMFIR5x6t+cbxirEfRIJ4+MujC+fZmUNrF6WrkUDy WQdWGyEPqmIZ2CmL9t+aY619koBvMCGm4U3GwBqpSAxQypGp/SeCIXCJC8cHc8wwu7rFxs7s ppEOrEsCOhuExcwcz/0auCJQUFUjP3OHfykTrafYEidfCc8IA85kxVvhuUltYBhhNm9Emult Mj75sbSIzdJ4RYtWo4vw/zF8EsHUMja4mtC5QRgPKsT5jcyqlFOZH4hDfDpR5fHatE88t6SH 47r0Ly/92XFyBYhYvvNfmHTKxBirhb6ZGBiu1IOM0SQqkEqSh8ai87XAME0e0ZP4whlqvgqo Dl7WT5cfi9yVkHEsLx1vxC1iEiSN4UekFPMCSDXXcB+UyQq2pYjqhljJBheAGEWxgp4KX502 dJBBglXVE24ltLsm5K1d8Rwuv12eaEHPKtH0p1h5TTQDPJgSpHfWaTao9Rf2V/chOgXQ6yYP ZBAL2MyMlKZOUYn1lQ/UfrSmM+hgGX/dDtJ7kqYv6Mt70DYzRBr0airO93QEjCPbZwMxx3I/ zmZogwVBDkQO+GVlACu40mFpcHqmh/dVIcSEeano6sCbFq7mTVIVUx+uUGAifuzh1O6WtlfA 1cJ4Sdopq83nGS7Q9+4UxCmrXqsuh8HR8EWA+A88BuKyKff/0CeHGdsZiFFQMwrsokxXzNC/ l2GhdTyHhR0raaYD3ma89+8pCu/IyEPIUceZCUPSk0O5NyLnW0opkuRFJA5Svfz14CrX2iqm FhmsRTSmZ0Mt+IljouCp2qauCOc/MPpQDMY+jnuCzfNAhxCWGK1W2C5wQGFvagedtrBEQXpU GsswJbHsr1XZX2ZvGnUGbhWQun0jxqQGGeE6WODCaXN4NhEF5SLWYlLqA9zK05yWirvUW+4O RSD0e+9CXI6AZdLUUOUS9jrYyjS5fK8fekJr9iNBja0XrB/dRWc4AZlblOK0mbmnSAEyP9vZ 8rKLZn3XCpKUMyLKQZaoc9HidfHIQhknAvuqW3TlUz7gdJymlbIIVv6DLd+Rr9gt/7VyOkk2 91eK9GL231ivB7WO0HqHXooBQlSdxATXMmmw/G7g8bfemKK7kl9Ua6OqV7gEqQ595loehDgp yntABUEmQSu2BUq62yiMxheVV8mZr4nxVpTAMDmFQzAN6QLCWp30JoiSg== IronPort-HdrOrdr: A9a23:7RlB3qqeRYiCvUbuB79tQz8aV5rveYIsimQD101hICG9Evb0qy nOpoV/6faQslwssR4b9uxoVJPvfZq+z+8W3WByB9eftWDd0QPFEGgL1+DfKlbbak7DH4BmtJ uJc8JFeafN5VoRt7eG3OFveexQvOVu88qT9JjjJ28Gd3APV0n5hT0JcjpyFCdNNW57LKt8Lr WwzOxdqQGtfHwGB/7LfUXsD4D41rv2fIuNW29+OyIa X-Talos-CUID: =?us-ascii?q?9a23=3ArsyZnGhGUdNqrYFh4CS4r2MUmzJubUfx4i7+GhW?= =?us-ascii?q?CVF14eOfOaVGt1b9Yqp87?= X-Talos-MUID: 9a23:bD11DAars/Tc4OBTvTDRjmxYH9ZTyoeALUcxt5kDu8zfKnkl X-IronPort-AV: E=Sophos;i="6.00,240,1681185600"; d="scan'208";a="111381375" Date: Tue, 13 Jun 2023 17:08:42 +0100 From: Anthony PERARD To: Jan Beulich CC: "xen-devel@lists.xenproject.org" , Wei Liu , Juergen Gross , Andrew Cooper , Roger Pau =?iso-8859-1?Q?Monn=E9?= Subject: Re: [PATCH 4/5] libxg: drop dead assignment to "rc" from xc_cpuid_apply_policy() Message-ID: <54331232-e01f-404c-8859-c341c931fcf2@perard> References: <2dc50b58-a4e4-3e32-1876-94412b14b052@suse.com> <89c45e29-fa7e-93e9-a2d5-45991c302794@suse.com> MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Disposition: inline In-Reply-To: <89c45e29-fa7e-93e9-a2d5-45991c302794@suse.com> On Mon, Jun 12, 2023 at 01:47:13PM +0200, Jan Beulich wrote: > "rc" is written immediately below the outer if(). Fold the remaining two > if()s. > > Coverity ID: 1532320 > Fixes: 685e922d6f30 ("tools/libxc: Rework xc_cpuid_apply_policy() to use {get,set}_cpu_policy()") > Signed-off-by: Jan Beulich Acked-by: Anthony PERARD Thanks, -- Anthony PERARD From xen-devel-bounces@lists.xenproject.org Tue Jun 13 16:11:09 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 16:11:09 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548261.856116 (Exim 4.92) (envelope-from ) id 1q96bk-0000ke-Ol; Tue, 13 Jun 2023 16:11:00 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548261.856116; Tue, 13 Jun 2023 16:11:00 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q96bk-0000kX-LO; Tue, 13 Jun 2023 16:11:00 +0000 Received: by outflank-mailman (input) for mailman id 548261; Tue, 13 Jun 2023 16:10:59 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q96bj-0000kO-Be for xen-devel@lists.xenproject.org; Tue, 13 Jun 2023 16:10:59 +0000 Received: from esa1.hc3370-68.iphmx.com (esa1.hc3370-68.iphmx.com [216.71.145.142]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id dfaa8551-0a04-11ee-8611-37d641c3527e; Tue, 13 Jun 2023 18:10:56 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: dfaa8551-0a04-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686672656; h=date:from:to:cc:subject:message-id:references: mime-version:in-reply-to; bh=YOCbkHLgdOYOkJkIMMb/d5b/Zw3GimLQkPjbzS8R3WA=; b=Kk0h27YQU3OdLLTDWX1WBkBazy84Uv4VVqM2r7VgioDimXJumHPNpcGV wUMIp4KJJKf21JlaWTlckYEiZ0eaZLu2SqjsKu2ILlnYHSvvRxiiJyM4K rLqmQI77+W3krZ7ZAkbuFqSGF1av4kl5vKrZUsPKvuQsSkTJudcdvanyC A=; Authentication-Results: esa1.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none X-SBRS: 4.0 X-MesageID: 113059650 X-Ironport-Server: esa1.hc3370-68.iphmx.com X-Remote-IP: 162.221.156.123 X-Policy: $RELAYED IronPort-Data: A9a23:fgQL3q3PcAY1sZn8zPbD5f9xkn2cJEfYwER7XKvMYLTBsI5bpzEBn GIZUWqCbP+IN2T0fY8iadmyoE5Q75KDndQwSAVspC1hF35El5HIVI+TRqvS04F+DeWYFR46s J9OAjXkBJppJpMJjk71atANlVEliefTAOK6ULWeUsxIbVcMYD87jh5+kPIOjIdtgNyoayuAo tq3qMDEULOf82cc3lk8teTb8HuDgNyo4GlD5gJnPqgR1LPjvyJ94Kw3dPnZw0TQGuG4LsbiL 87fwbew+H/u/htFIrtJRZ6iLyXm6paLVeS/oiI+t5qK23CulQRrukoPD9IOaF8/ttm8t4sZJ OOhF3CHYVxB0qXkwIzxWvTDes10FfUuFLTveRBTvSEPpqFvnrSFL/hGVSkL0YMkFulfOThI/ KAqEyk3T068osXnwLiWFONWv5F2RCXrFNt3VnBIyDjYCbAtQIzZQrWM7thdtNsyrpkQR7CEP ZNfMGcxKk2aOHWjOX9OYH46tO6umnn4dSwesF+PrLA7y2PS0BZwwP7mN9+9ltmiHJwOxhvJ+ D+el4j/Kk9BKMKhih+4yyOThPDBzQy8Z4c+KJTto5aGh3XMnzdOWXX6T2CTo/O0l0q/UNJ3M FEP92wlqq1a3FymSJzxUgO1pFaAvwUAQJxAHusi8gaPx6HIpQGDCQAsUTppeNEg8sgsSlQC1 FCTmMjyLSdyq7DTQnWYnp+dtT6oMDIZBXMDbyQDCwAC5rHeTJob10yVCIw5Sejs04OzQGurq 9yXkMQgr41Ki8dX5Z6ix3GZvBeL95jDY1A/3DyCCwpJ8ThFiJ6Zi52AsAaLs6gacN7GEjFtr 1BfxZHAsblm4YWl0XXUHb5TROzBC+OtamW0vLJ5I3U2G91BEVaHdJsY3jxxLVwB3i0sKW6wO x+7Ve+8CfZu0JqWgUxfOdjZ5zwCl/SIKDgcfqm8giBySpZwbhSb2ypleFSd2Wvg+GB1z/FhZ MbHLp39USZDYUiC8NZQb71FuVPM7npnrV4/uLihl0j3uVZgTCP9pUg53KumMblisfLsTPT9+ NdDLcqaoyizo8WnChQ7BbU7dAhQRVBiXMCeliCiXrLbSuaQMD17WqC5LHJIU9ANopm5Yc+Rp iHnABMJlgui7ZAFQC3TAk1ehHrUdc4XhRoG0eYEYj5EB1BLjV6T0Zoi IronPort-HdrOrdr: A9a23:zsu9QKhl4AVunB7mM3+OUvAUJHBQX5913DAbv31ZSRFFG/Fw9v re6cjzsCWe5gr5N0tBpTn+Atj9fZqxz/9ICOoqTMSftXfdyQmVxehZhOOJ/9SKIVycygcy79 YET0B0YOeAcmST5azBjDVReLwbr+VuP8qT6Nv2/jNVaUVPVokl1gF+D2+gYz9LrMstP+tGKH JZjPA31wZJvB4sH7WG7wI+Loz+juyOrovifRkFQzY/8WC1/EqVwY+/KQGcwhAdFxhSwbIumF K17jDR1+GYqvSmzR2Z8GfW4/1t6bzc4+oGPtWIls8WbhPzjQqyDb4RPYGqjXQOueSy71Rvqv ngyi1QR/hb2jfqZ2Sophmo4QX6zzo0zHfnxTaj8ADeiP28fis+F81Cwb1UaQHY7U1IhqAH7J 52 X-Talos-CUID: =?us-ascii?q?9a23=3AKtjeeWl1jFrA1oVF4In2LvWe3O7XOUWEyn6MEXS?= =?us-ascii?q?hM0c3d5iyGF+a1f1uqfM7zg=3D=3D?= X-Talos-MUID: =?us-ascii?q?9a23=3AozLyLA+/0hN9wyezm/1phjWQf5kz/7qQS2UwqMQ?= =?us-ascii?q?5udaKZQM3BDKxsB3iFw=3D=3D?= X-IronPort-AV: E=Sophos;i="6.00,240,1681185600"; d="scan'208";a="113059650" Date: Tue, 13 Jun 2023 17:10:48 +0100 From: Anthony PERARD To: Jan Beulich CC: "xen-devel@lists.xenproject.org" , Wei Liu , Juergen Gross Subject: Re: [PATCH 5/5] libxl: drop dead assignment to transaction variable from libxl__domain_make() Message-ID: <4cc76b26-c1e3-45d8-b1fa-f1c69046f510@perard> References: <2dc50b58-a4e4-3e32-1876-94412b14b052@suse.com> <4fcbe916-890a-1dfc-86a8-eef2bafb2801@suse.com> MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Disposition: inline In-Reply-To: <4fcbe916-890a-1dfc-86a8-eef2bafb2801@suse.com> On Mon, Jun 12, 2023 at 01:47:50PM +0200, Jan Beulich wrote: > "t" is written first thing at the "retry_transaction" label. > > Coverity ID: 1532321 > Fixes: 1057300109ea ("libxl: fix error handling (xenstore transaction leak) in libxl__domain_make") > Signed-off-by: Jan Beulich Acked-by: Anthony PERARD Thanks, -- Anthony PERARD From xen-devel-bounces@lists.xenproject.org Tue Jun 13 16:20:38 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 16:20:38 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548268.856126 (Exim 4.92) (envelope-from ) id 1q96kp-0002LJ-Q0; Tue, 13 Jun 2023 16:20:23 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548268.856126; Tue, 13 Jun 2023 16:20:23 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q96kp-0002LC-NH; Tue, 13 Jun 2023 16:20:23 +0000 Received: by outflank-mailman (input) for mailman id 548268; Tue, 13 Jun 2023 16:20:22 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q96kn-0002L1-Ow for xen-devel@lists.xenproject.org; Tue, 13 Jun 2023 16:20:22 +0000 Received: from mga18.intel.com (mga18.intel.com [134.134.136.126]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 2da7e415-0a06-11ee-8611-37d641c3527e; Tue, 13 Jun 2023 18:20:17 +0200 (CEST) Received: from orsmga005.jf.intel.com ([10.7.209.41]) by orsmga106.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 13 Jun 2023 09:19:59 -0700 Received: from orsmsx601.amr.corp.intel.com ([10.22.229.14]) by orsmga005.jf.intel.com with ESMTP; 13 Jun 2023 09:19:58 -0700 Received: from orsmsx610.amr.corp.intel.com (10.22.229.23) by ORSMSX601.amr.corp.intel.com (10.22.229.14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Tue, 13 Jun 2023 09:19:58 -0700 Received: from orsmsx603.amr.corp.intel.com (10.22.229.16) by ORSMSX610.amr.corp.intel.com (10.22.229.23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Tue, 13 Jun 2023 09:19:58 -0700 Received: from ORSEDG602.ED.cps.intel.com (10.7.248.7) by orsmsx603.amr.corp.intel.com (10.22.229.16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23 via Frontend Transport; Tue, 13 Jun 2023 09:19:58 -0700 Received: from NAM11-DM6-obe.outbound.protection.outlook.com (104.47.57.174) by edgegateway.intel.com (134.134.137.103) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2507.23; Tue, 13 Jun 2023 09:19:55 -0700 Received: from MN0PR11MB5963.namprd11.prod.outlook.com (2603:10b6:208:372::10) by IA1PR11MB7853.namprd11.prod.outlook.com (2603:10b6:208:3f7::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.42; Tue, 13 Jun 2023 16:19:47 +0000 Received: from MN0PR11MB5963.namprd11.prod.outlook.com ([fe80::6984:19a5:fe1c:dfec]) by MN0PR11MB5963.namprd11.prod.outlook.com ([fe80::6984:19a5:fe1c:dfec%7]) with mapi id 15.20.6455.030; Tue, 13 Jun 2023 16:19:47 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 2da7e415-0a06-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1686673217; x=1718209217; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-id:content-transfer-encoding: mime-version; bh=bhYJ198yachG0bkUeuem6pdiFKP0nPpamQIWNCMRb3M=; b=jIXFBF5RnHo0JbLvOlL8avbTrHcOEHimfCiEBBLhKIrR02LOI93jgG4f R9ugj9HyIoEpXEaI/nELI/wiXXqKXk3PQojzCoGQooxtx7KOZoBAKun6S +LW2Ol+mnObID2Q3QOxG7IAOF64gnaZuQndomstI4R2GXO/6Bml55NepB 7R7dr6tzWQJ/87rYOQ97Q8F36/W4VpIpOjwM6GcS83Zj2lYRVlY386ap1 p8K+lfZt20egM+ynrl9aWDUJr5OV7YL01hx5QDJ3ySQ8EtN480G3YjxU3 ooma9O+jSodHTZfJgQe8nnsIfC+8DLbjW1Gi7UhkrrSgICaABWQxjOIEr g==; X-IronPort-AV: E=McAfee;i="6600,9927,10740"; a="343072762" X-IronPort-AV: E=Sophos;i="6.00,240,1681196400"; d="scan'208";a="343072762" X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10740"; a="885906195" X-IronPort-AV: E=Sophos;i="6.00,240,1681196400"; d="scan'208";a="885906195" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=RcMyB/++InbxWu8gaP9ae4ftXUitO56Ys5DOQ0u79tiOm/i7j4QhCix5pyz1nI078atl+I3+NUhzJtrj4+wJshfIgmI73NlSlo5WGBvDeA53w/B6bvbhFGj4KplHf7PFKgCQIf34NP6X9hKKRZ9skaZlIeiKbumxh4LAHnbuAGniJvQbdmJvgq1WS7yrlM581cCRlmmp+LRM+yn3VGYqZs8iBA7eWjrmaPYHAWpJjJilxMCLqo4zJpWtllWX+ZXMiLCl1C7juCkOihyELGOeLoVHr6ImoVkYgWuDex5xlay5ydKHnTEEPyPlFlPQTeX4Vi1fFvfXOhJxIgOCoBV12w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=bhYJ198yachG0bkUeuem6pdiFKP0nPpamQIWNCMRb3M=; b=Ig5LXmsdymy7wYIpd9yJEjSrUn9Jkoq//a170ise01IopUnoaC1SHQvpWuFOFUVsWP5edTkO8U+u0zTUsYk0xu2Uq8VHth9Qr93P6FJPy27MKWEcdtCKQhOyeG0CbPZ/xggJyrUfIhIvZiP/Cg7M+/qdu6iSaMTEZuNGh7MQwJIEsgtmGKiEQDQO/C3lgLV8j9t8iwjQRwetw8Hcv7dVxIYZpXgoqnl97l4VgqAaw4DM9DXvDdgHn5DVD9s91zw5eo1PpVx9NjMZq90s31RdYf28vj7qO/Kc+AmJYtO43lB7pkss77z460FHrXjPYPGQARDfHgG5Q3gSFfeinXU+1A== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com; dkim=pass header.d=intel.com; arc=none From: "Edgecombe, Rick P" To: "rppt@kernel.org" CC: "akpm@linux-foundation.org" , "tglx@linutronix.de" , "linux-arch@vger.kernel.org" , "kcc@google.com" , "Lutomirski, Andy" , "nadav.amit@gmail.com" , "kirill.shutemov@linux.intel.com" , "david@redhat.com" , "Schimpe, Christina" , "linux-s390@vger.kernel.org" , "Torvalds, Linus" , "peterz@infradead.org" , "corbet@lwn.net" , "linux-kernel@vger.kernel.org" , "jannh@google.com" , "dethoma@microsoft.com" , "broonie@kernel.org" , "mike.kravetz@oracle.com" , "pavel@ucw.cz" , "bp@alien8.de" , "rdunlap@infradead.org" , "linux-api@vger.kernel.org" , "john.allen@amd.com" , "arnd@arndb.de" , "jamorris@linux.microsoft.com" , "bsingharora@gmail.com" , "x86@kernel.org" , "oleg@redhat.com" , "fweimer@redhat.com" , "keescook@chromium.org" , "gorcunov@gmail.com" , "andrew.cooper3@citrix.com" , "xen-devel@lists.xenproject.org" , "hpa@zytor.com" , "mingo@redhat.com" , "szabolcs.nagy@arm.com" , "hjl.tools@gmail.com" , "linux-arm-kernel@lists.infradead.org" , "debug@rivosinc.com" , "linux-mm@kvack.org" , "Syromiatnikov, Eugene" , "Yang, Weijiang" , "linux-doc@vger.kernel.org" , "dave.hansen@linux.intel.com" , "Eranian, Stephane" Subject: Re: [PATCH v9 02/42] mm: Move pte/pmd_mkwrite() callers with no VMA to _novma() Thread-Topic: [PATCH v9 02/42] mm: Move pte/pmd_mkwrite() callers with no VMA to _novma() Thread-Index: AQHZnYu5myZdSN5guk62QnYDURPfWq+IWqsAgACP+gA= Date: Tue, 13 Jun 2023 16:19:46 +0000 Message-ID: <21b0342854b067c241206f422bc5b3254b43c7f5.camel@intel.com> References: <20230613001108.3040476-1-rick.p.edgecombe@intel.com> <20230613001108.3040476-3-rick.p.edgecombe@intel.com> <20230613074428.GS52412@kernel.org> In-Reply-To: <20230613074428.GS52412@kernel.org> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: user-agent: Evolution 3.44.4-0ubuntu1 authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=intel.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: MN0PR11MB5963:EE_|IA1PR11MB7853:EE_ x-ms-office365-filtering-correlation-id: 9b9da263-0c70-4fea-b1e0-08db6c2a0157 x-ld-processed: 46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: /U7vQk5+ikQZBx7KOG0adLmQN6e0O6ym32VFx4JTXPrIoxG3uL4Ie/WasOi78Vu1yBlDkMFVwdxWrS1tpE1ML9n/iKZf1WXQxAVeCXMKniNcnaowZ25DwiO7HOG754QPPRuVPUwLtonyqDRicfXbNoOUCmvGkVwVnWuC35RWoQX7r3HkihV/UZevAXp/aLBVytR+PtKMrTGATy7DqFCNtubzvVHBvwGzjUufJ1xw/dDdZvIvPfnMXYWndjyw/fVsbzbTd9X0LsId42H27OhwU5yfxfs/nP7ACsGpb2kqLCCcIApD1m8VTLd1bzDlvoygaWq4VdM5uQAL3/9XPnss6ks2xxfn2eIWEZLEClaQP8XlmvAd8sBVcmT+Pt1Hj4ODIpJMY5hQ37pGQwyVgvelM/nmrG3piwwB+g40adifaTAERKOSU0k23HMMTImnKMzdNR/seiN0zXEzpOPi6qeX55K4TGdmechiOB53xYU4YtYvL4O8it3HXasgPRy1pR2bUbpYX9SdZepxjCtXJ+fL7h5nv/8tiKEj2pZRZRrKN7OBT+oFb+kJ0NNCdaJKUw2qq2R5e2e+T2M3pRYC6fJ83iIRXduDKloq1clJi96oD6aDtLKRFaXa3jhS9FoUkkQQ x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MN0PR11MB5963.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(136003)(39860400002)(346002)(376002)(396003)(366004)(451199021)(38070700005)(86362001)(36756003)(91956017)(66556008)(4326008)(54906003)(6916009)(478600001)(71200400001)(316002)(66946007)(66476007)(64756008)(66446008)(76116006)(6486002)(5660300002)(2906002)(8936002)(7416002)(8676002)(7406005)(2616005)(82960400001)(41300700001)(122000001)(38100700002)(6512007)(6506007)(186003)(26005);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?MTRBRFJjZFk4dyt0ZWJpUWhmUzVPcTltd1dVdVdoOHF5eDZFeFpMNjZ3cVNB?= =?utf-8?B?TnhtLzZXajB2eXY0UzVCd2tpU0dmYXU2MVN2NjNzY1I3QkszRERlWGVtMmZB?= =?utf-8?B?OXpEUVpVYmw5eWkycWpCRkJFVkZkUlVBVkNucERoeElUWlpGcHp0T0xqMmhQ?= =?utf-8?B?SmczOUd0NTN5aExHV1JmemxOZVhrMXNTWGhkelg2L1dYelVUczdxaTVaVkwr?= =?utf-8?B?NGJQK080NndrK1JzVzhBQks5SkNXYTBPazVNdXZpMGNvR1BVK1JvUDlnSHJn?= =?utf-8?B?MUI5TVIwOFFSWDhwSDVxSUxoVTdWbFNyV1dyOUQ3SG12dHhpN0NLMmN0Ry8v?= =?utf-8?B?MXBFeVdtcjB6R0t2dVhGckhVS25yVlBPSFNyOVdJSjhlaDdidzRacjNlNUpV?= =?utf-8?B?d09Dc0tPNzgzUU8wZDkrODV2MjFWeU5icEdYMGdIOFBlWjNQeWVHd1I5ZEdn?= =?utf-8?B?emNUK3luY1dlZ0JLM3pwY3pZNGFsYml1aGpadVZDM3VkaWtOd1BBU3NHTFRo?= =?utf-8?B?cUdFNjBmVUhJamV0czNzUDJscGlBeXZPQnJSMDRGTXIrbllRRERsaGl1QlF4?= =?utf-8?B?Z3hkWmJkWnJERkRxcW9UajVtRWU0T3FMdXB3eGhtZERuUUwyWGV1ZVlTVCtD?= =?utf-8?B?MTAxZVAvUDRoWUQrNjcreE0xTFBQaTllelNsRk1ROTk2R3FlK1ZSdFVzZXVn?= =?utf-8?B?bWtWU2F6aDNPQk5PM3JYVHVadnlSdUZXeWc3MzU4ZUFWNFNRdm96dEhPem9P?= =?utf-8?B?UUUzbDdScVhFcGpscmV3R0UzQnR5VlFPTE9SK1ZuWGhKQkNON0xTblNPODYw?= =?utf-8?B?VmNDVVN4ZGs0ZnZvbThqc0JyVVd4ckJtSndnWmg0Rzgyd08zMXhJdEFpT3Qy?= =?utf-8?B?anhPQWNpUHRCYm9hS2ZqME5xTzlLYTZhNmJSdnRTRDBaUXdrNGc2SURoR2Vx?= =?utf-8?B?OTRJM1JzMzVnTDZQbXlQY3FLSmovcHpCS3luVGxSbVBVU1piNTVXL0drZVhy?= =?utf-8?B?SGFkV0lmZ1EwcWZSM1kwTGhUYnoyK25qbXZLQkx2ays4MEplV0xhbEU0YVo0?= =?utf-8?B?OHVBU1djVWNqK1UyMW1nVlpUdm91SGM5dTVtVFRIa1N1WjZiangydHRmVWJr?= =?utf-8?B?RzFSdENPcVBPRmxCaFhJc3RIZHhCMFlaN1k3SUkxMXVIK1I0Rjh5aTEzMGpW?= =?utf-8?B?STd6cmQ3UnBsSTFaZXdnb2twUXhWQmgzWld5b3pEM3Z6QnFFdlRpTmFMaDF1?= =?utf-8?B?UFYrcGZhdEo3UzZHL0lUZkl4SWpRNVVhNmxnbDZIQndXWjdkdlhWZ1B3TTdj?= =?utf-8?B?N0tsMXN0eSt1T1k2KzY2a1BEQVBtRFlwSVhEU2JLUG1OWlhsakhlZ1JRZmk3?= =?utf-8?B?TFJ2S21pRDhJdzI5U1EzWjVveFdJMTRwUW9hMHJDSTBZQ1RUTDRpc1lKM0xi?= =?utf-8?B?cld0a0k3YVhpSU8rYWxTWTlhcDhjdXp4TTEyM3FxT1g0RWhWRW1uR2JPVHha?= =?utf-8?B?NkNSU0NId1dsUGloWTVaOUZKZm85NmVLWkRwa3BPWTU5THhLQ21YZldNamMx?= =?utf-8?B?T2tnWUt4aVdkOUZISXBmM0JDQmhHdU1GSHhlWEpwL2xqUTU4RExldlNuRHNX?= =?utf-8?B?NjlYVG5kd0pVNHN3ejQvYjA4TkhGdjViZVQvQXNtZmZEdEFYeTlvOGJGUDVH?= =?utf-8?B?blBuYjdvV3ZFTE00TlJWbEk3cEtmbWpEekZSQXlKRlJ3NmNnVnBnckd5RjVW?= =?utf-8?B?YktVeStxNzJ1STdzL3VaWk9Wbk5VTzRBckZPNld1VnNwU0s1eDlIRkhGR2Nk?= =?utf-8?B?bVI0Q3VoLys4YjcrTVM2QXlKOHdPWGZkaWpXNldCeGxmdGFIQmt3WnhKdEw4?= =?utf-8?B?UElxOVRHa0l6YTY4QktwNUY5Ynh5WDJRYXZQY0tYNjZ0bkVxZ2Z0blVhVmQx?= =?utf-8?B?cVM4TnY0K0dvbkRDV09XQmdsNHovcHI3N05CZzJuZlk3eVd3UXM3MTFxeTJp?= =?utf-8?B?bnY5RnNVZld1RXJXdzEvK0FTdGZidVRCaVdnOFg5MVc4Y3JWWDFtWVQxbmgw?= =?utf-8?B?R0xYOTVhMWNtL3hQZ3BsaTNqSCtxN3ZXaHdlSFl1eXo1MmEvSkpuRE1QdHhs?= =?utf-8?B?OXU4TE5COGJCcEVULzdncEh6U3d6T2tqcE1ybHBYV0RPWjYwbWdSRFc5OExE?= =?utf-8?B?M0E9PQ==?= Content-Type: text/plain; charset="utf-8" Content-ID: <5B3CEF624AE8DC41B02D10F98216A552@namprd11.prod.outlook.com> Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: MN0PR11MB5963.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 9b9da263-0c70-4fea-b1e0-08db6c2a0157 X-MS-Exchange-CrossTenant-originalarrivaltime: 13 Jun 2023 16:19:46.9659 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 46c98d88-e344-4ed4-8496-4ed7712e255d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: ybYeNg36NgBEMUS4FaI2ZYO7hLFljUw/Kl0/VlfQCuI+9gz/nVKFUbj2Y97FPfQ5s1GVgQml4sOmxcvbZF6fdTaPhZ8dxwr9h8GswkD9Aao= X-MS-Exchange-Transport-CrossTenantHeadersStamped: IA1PR11MB7853 X-OriginatorOrg: intel.com T24gVHVlLCAyMDIzLTA2LTEzIGF0IDEwOjQ0ICswMzAwLCBNaWtlIFJhcG9wb3J0IHdyb3RlOg0K PiA+IFByZXZpb3VzIHBhdGNoZXMgaGF2ZSBkb25lIHRoZSBmaXJzdCBzdGVwLCBzbyBuZXh0IG1v dmUgdGhlIGNhbGxlcnMNCj4gPiB0aGF0DQo+ID4gZG9uJ3QgaGF2ZSBhIFZNQSB0byBwdGVfbWt3 cml0ZV9ub3ZtYSgpLiBBbHNvIGRvIHRoZSBzYW1lIGZvcg0KPiANCj4gSSBoZWFyIHg4NiBtYWlu dGFpbmVycyBhc2tpbmcgdG8gZHJvcCAicHJldmlvdXMgcGF0Y2hlcyIgOy0pDQo+IA0KPiBNYXli ZQ0KPiBUaGlzIGlzIHRoZSBzZWNvbmQgc3RlcCBvZiB0aGUgY29udmVyc2lvbiB0aGF0IG1vdmVz IHRoZSBjYWxsZXJzIC4uLg0KDQpSZWFsbHk/IEkndmUgbm90IGhlYXJkIHRoYXQuIEp1c3QgYSBz dHJvbmcgYXZlcnNpb24gdG8gInRoaXMgcGF0Y2giLg0KSSd2ZSBnb3QgZmVlZGJhY2sgdG8gc2F5 ICJwcmV2aW91cyBwYXRjaGVzIiBhbmQgbm90ICJ0aGUgbGFzdCBwYXRjaCIgc28NCml0IGRvZXNu J3QgZ2V0IHN0YWxlLiBJIGd1ZXNzIGl0IGNvdWxkIGJlICJwcmV2aW91cyBjaGFuZ2VzIi4NCg0K PiANCj4gPiBwbWRfbWt3cml0ZSgpLiBUaGlzIHdpbGwgYmUgb2sgZm9yIHRoZSBzaGFkb3cgc3Rh Y2sgZmVhdHVyZSwgYXMNCj4gPiB0aGVzZQ0KPiA+IGNhbGxlcnMgYXJlIG9uIGtlcm5lbCBtZW1v cnkgd2hpY2ggd2lsbCBub3QgbmVlZCB0byBiZSBtYWRlIHNoYWRvdw0KPiA+IHN0YWNrLA0KPiA+ IGFuZCB0aGUgb3RoZXIgYXJjaGl0ZWN0dXJlcyBvbmx5IGN1cnJlbnRseSBzdXBwb3J0IG9uZSB0 eXBlIG9mDQo+ID4gbWVtb3J5DQo+ID4gaW4gcHRlX21rd3JpdGUoKQ0KPiA+IA0KPiA+IENjOiBs aW51eC1kb2NAdmdlci5rZXJuZWwub3JnDQo+ID4gQ2M6IGxpbnV4LWFybS1rZXJuZWxAbGlzdHMu aW5mcmFkZWFkLm9yZw0KPiA+IENjOiBsaW51eC1zMzkwQHZnZXIua2VybmVsLm9yZw0KPiA+IENj OiB4ZW4tZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcNCj4gPiBDYzogbGludXgtYXJjaEB2Z2Vy Lmtlcm5lbC5vcmcNCj4gPiBDYzogbGludXgtbW1Aa3ZhY2sub3JnDQo+ID4gU2lnbmVkLW9mZi1i eTogUmljayBFZGdlY29tYmUgPHJpY2sucC5lZGdlY29tYmVAaW50ZWwuY29tPg0KPiANCj4gUmV2 aWV3ZWQtYnk6IE1pa2UgUmFwb3BvcnQgKElCTSkgPHJwcHRAa2VybmVsLm9yZz4NCg0KVGhhbmtz IQ0K From xen-devel-bounces@lists.xenproject.org Tue Jun 13 16:20:38 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 16:20:38 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548269.856133 (Exim 4.92) (envelope-from ) id 1q96kq-0002PH-6C; Tue, 13 Jun 2023 16:20:24 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548269.856133; Tue, 13 Jun 2023 16:20:24 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q96kp-0002OB-V9; Tue, 13 Jun 2023 16:20:23 +0000 Received: by outflank-mailman (input) for mailman id 548269; Tue, 13 Jun 2023 16:20:22 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q96ko-0002L1-Jz for xen-devel@lists.xenproject.org; Tue, 13 Jun 2023 16:20:22 +0000 Received: from mga11.intel.com (mga11.intel.com [192.55.52.93]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 2f23471c-0a06-11ee-8611-37d641c3527e; Tue, 13 Jun 2023 18:20:19 +0200 (CEST) Received: from fmsmga005.fm.intel.com ([10.253.24.32]) by fmsmga102.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 13 Jun 2023 09:20:16 -0700 Received: from fmsmsx602.amr.corp.intel.com ([10.18.126.82]) by fmsmga005.fm.intel.com with ESMTP; 13 Jun 2023 09:20:15 -0700 Received: from fmsmsx610.amr.corp.intel.com (10.18.126.90) by fmsmsx602.amr.corp.intel.com (10.18.126.82) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Tue, 13 Jun 2023 09:20:15 -0700 Received: from FMSEDG603.ED.cps.intel.com (10.1.192.133) by fmsmsx610.amr.corp.intel.com (10.18.126.90) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23 via Frontend Transport; Tue, 13 Jun 2023 09:20:15 -0700 Received: from NAM11-BN8-obe.outbound.protection.outlook.com (104.47.58.168) by edgegateway.intel.com (192.55.55.68) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2507.23; Tue, 13 Jun 2023 09:20:11 -0700 Received: from MN0PR11MB5963.namprd11.prod.outlook.com (2603:10b6:208:372::10) by IA1PR11MB7853.namprd11.prod.outlook.com (2603:10b6:208:3f7::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.42; Tue, 13 Jun 2023 16:20:00 +0000 Received: from MN0PR11MB5963.namprd11.prod.outlook.com ([fe80::6984:19a5:fe1c:dfec]) by MN0PR11MB5963.namprd11.prod.outlook.com ([fe80::6984:19a5:fe1c:dfec%7]) with mapi id 15.20.6455.030; Tue, 13 Jun 2023 16:20:00 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 2f23471c-0a06-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1686673220; x=1718209220; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-id:content-transfer-encoding: mime-version; bh=nD9hKEWIlEQms9D1nSVJYfTkusC5Rkk8ZZSw4+aFueo=; b=NopDCDgbg6I0Svj9zVouDR1wr/9LIyWp5MgSLq8kOkmfmVqCr2J5Zfhp 7U36f4T2ohrpwq5MuwNvE182DpfbBDs+eImKKLEWSPAE5LRG8FmjFKOlq FWiEeszWBQ/Z5304WtczwbQAS84wDYiwBXkW6PSlE3/o/qIvekvR4cbxQ kjEWH84fiCauHp2llCLEP+8qDodaxTT/CBOLTszTg6Jegpwdrj++vU4LM qsUwGyrVLK6e9dwATpmoOeMGEzUX4qVRpbFXM5Ju3Lvu+SDZfrtFXKJJd UlrWpI1+QQ7HvvLbdAw9rv4Yyz3zRffubNoWx/nHCptYUHcJGhp8iTDAW A==; X-IronPort-AV: E=McAfee;i="6600,9927,10740"; a="355882945" X-IronPort-AV: E=Sophos;i="6.00,240,1681196400"; d="scan'208";a="355882945" X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10740"; a="1041832964" X-IronPort-AV: E=Sophos;i="6.00,240,1681196400"; d="scan'208";a="1041832964" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=kiqndRaeBd6lnYxYeTKZoQvchmyXpDOMfKedOeCITbObPavfg1dAi81UQiXFriMQxJ4lyXh51bQlHx4o4ikXfeKpuHs47fZCnf61SNBU43UPgGW23UYZ4837vbyeiMvxqQdgUs2vMt59pnC3DEXHZYq//QwbsUJk0QV93vHwRNfMczuBwC+6e+oZvPQvA5/dq5Ex2iKB/6U3RlbPLLxKkKynRwrp8EO5gbOnd4wSq1WVidw4afoxeRXkBcMcTVr5fWNuXWmoVciPYujTBFipOtvP9PukHgPeWgK4INNS3Xx9Uv3+VM/6oz3uEa6aaAeL6EpkwfMkrBO7/BsnEx5YLA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=nD9hKEWIlEQms9D1nSVJYfTkusC5Rkk8ZZSw4+aFueo=; b=TBppFHl27o19TkLLgQoUDcIjvjom6/7sbs2hyNPP6EaLhf2hg0dkzLH1d1t0W5jxzMtryIssG94xoiPv829P+4G5uOL2DU06VzjPuZmi1K8KzctvPsAhHte6uqwLfNmS3T9AmIwixLm6Fwp5O8XMy/xHduPiHm/wu5mbqLsed4Q/RjNz664Iz+NM4UKg9Dbs4sH8d5USqRr3SorRYG51c+rHEcPJExjJdF3Oi4gkJ+w1ihMoCRlR6Julh2IIFZwW3nHLP4nUueKqe+MHRVTDELlW3eUQaOS7BnbxtVGLqQ8nsZ2HjYOLuMuRa1GAe+IwBLiR1iGTbH/gUo2cGQC7rQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com; dkim=pass header.d=intel.com; arc=none From: "Edgecombe, Rick P" To: "akpm@linux-foundation.org" , "tglx@linutronix.de" , "linux-arch@vger.kernel.org" , "kcc@google.com" , "Lutomirski, Andy" , "nadav.amit@gmail.com" , "kirill.shutemov@linux.intel.com" , "david@redhat.com" , "Schimpe, Christina" , "Torvalds, Linus" , "peterz@infradead.org" , "corbet@lwn.net" , "linux-kernel@vger.kernel.org" , "jannh@google.com" , "dethoma@microsoft.com" , "broonie@kernel.org" , "mike.kravetz@oracle.com" , "pavel@ucw.cz" , "bp@alien8.de" , "rdunlap@infradead.org" , "linux-api@vger.kernel.org" , "john.allen@amd.com" , "arnd@arndb.de" , "jamorris@linux.microsoft.com" , "rppt@kernel.org" , "bsingharora@gmail.com" , "x86@kernel.org" , "oleg@redhat.com" , "fweimer@redhat.com" , "keescook@chromium.org" , "gorcunov@gmail.com" , "andrew.cooper3@citrix.com" , "hpa@zytor.com" , "mingo@redhat.com" , "szabolcs.nagy@arm.com" , "hjl.tools@gmail.com" , "debug@rivosinc.com" , "linux-mm@kvack.org" , "Syromiatnikov, Eugene" , "Yang, Weijiang" , "linux-doc@vger.kernel.org" , "dave.hansen@linux.intel.com" , "Eranian, Stephane" CC: "linux-arm-kernel@lists.infradead.org" , "linux-s390@vger.kernel.org" , "xen-devel@lists.xenproject.org" Subject: Re: [PATCH v9 02/42] mm: Move pte/pmd_mkwrite() callers with no VMA to _novma() Thread-Topic: [PATCH v9 02/42] mm: Move pte/pmd_mkwrite() callers with no VMA to _novma() Thread-Index: AQHZnYu5myZdSN5guk62QnYDURPfWq+IqbeAgABA/YA= Date: Tue, 13 Jun 2023 16:20:00 +0000 Message-ID: <98af2f9db6e98afe5212a2c3828f72d3d70bca5f.camel@intel.com> References: <20230613001108.3040476-1-rick.p.edgecombe@intel.com> <20230613001108.3040476-3-rick.p.edgecombe@intel.com> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: user-agent: Evolution 3.44.4-0ubuntu1 authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=intel.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: MN0PR11MB5963:EE_|IA1PR11MB7853:EE_ x-ms-office365-filtering-correlation-id: 980c5848-0524-491c-300c-08db6c2a0931 x-ld-processed: 46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: jee6UUnbSU9RlYLZUdDotSXwYnK2GL3yO3111PBo/pDe/+0wC/wsimYk/KGniWOjvq4RyDxLVA/CCO68LAdk1UNUtK/CxRKYsq1Ky9cqOXB8HGgdends56El6J5ReCW8vN7eDnUiGSZtwpRpM25KjCQbYgM11P8OCneHxXWcxyFPN2UT34OgVnSnPRmD+YR+CE1EmQw+vdNcbBWTQjlMzFM5IHJBE32lOQDAI2IJX44Ns4gtz2gkm+ozRImFuqg/2B1ziEvilNo9IvEAXuh11AFhCK4PBNfkw1kADb4X5FXDD7QoguGTSUeD9dnv+jLxzNNIt64ZGcpp1wJXtdxzx198c5Zfqq+Fd0qe/1N5T8CFfPAQNCabbWc+xN7Fb2YRh/sA9VzP1zC28E5dcyQPO4nUENA7JnEw+KoixdbvKp8tq6eMe0gXpzY82dZ3lFKZhVg1VCOLT7FCldwMl5Fg1kiveY0ASao51D2VdfymPs6p8Rt5+ui43WMiO2POhj3cvs1Cm+Rk2to2qSTwInpfEIvfrBB7sVNvNUH5rX8CMLY36u425c+peog8HHSpJuMpHbD9lTD79rBHEmLQfRwLTNMNl2CgfWbcovDyjDfFSKrj3X5pZMIBedJPs4eZeZ/VFpp22F6Dkpo5+lCdMrx0Ow== x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MN0PR11MB5963.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(136003)(39860400002)(346002)(376002)(396003)(366004)(451199021)(38070700005)(86362001)(36756003)(558084003)(91956017)(66556008)(110136005)(4326008)(54906003)(478600001)(71200400001)(316002)(66946007)(66476007)(64756008)(66446008)(76116006)(6486002)(5660300002)(2906002)(8936002)(7416002)(8676002)(7406005)(2616005)(921005)(82960400001)(41300700001)(122000001)(38100700002)(6512007)(6506007)(186003)(26005);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?eDhydXMzNi9xeVpJQWpyVE4zVXdrdVlVU0JiS2ZJT1BwRTlVeXhhWGFvYkNr?= =?utf-8?B?dFFaNFlHeGxVbVhFcDBEcGhpVnVranA3VHRKSHlweXZIMmVMbktxZTRXVjZz?= =?utf-8?B?WExIcVFSbko1K1dGVlEvaTdTTDBOcERqek9wYmxZRkVhRm0yOFJ3ajF4Q2Rr?= =?utf-8?B?VjAyK2JvWGp2bnJjaVJxR0oyLzlna0d0djlsZ2kwQVBKQVhaNjVNczlZc0Fa?= =?utf-8?B?RldpMkM3bXlBUy9KU3I0WjBOeElFT1FiVzBFYXZQWHlYcmJKTjdPZzM5d2pr?= =?utf-8?B?dWdvajZBZkJxK1MrVlFNZ3ZpazlIZ3h0Q3d6bm9QaXFNUVRwdllCVUdmTVNF?= =?utf-8?B?aDJXOFQrbWxocG9kc1lvYjhMc0kreTV1dnRKd3k3d2FBT0g5bW91c0pRSmVh?= =?utf-8?B?TlVsVzlyc1RicHdZaWZFMlQwaFpMN0lCYjhyRS9xQ1g2SlN5Tmk5dGJOVnBy?= =?utf-8?B?RmxnRFRVcFl1cXJSWXJLN2lzNGxXN3A4NGhTdHhvSmF3K055WVZiNHlFYmQx?= =?utf-8?B?RzNRa0xERUwyVnRweGF6RERXVm9VK3RPY2dnMGFiS3hmVWhQTmcvaG9wS0FE?= =?utf-8?B?MWYvaEVRK3ZiYjZMUEJ6VHducVhUK1U1WUdadkwxanhTZ3lsTmRERnJrQThj?= =?utf-8?B?bVdFUGM1a1E1WE5kVGV5M2dKR01qZjZpR2o3ekUyamV1dVovQ1dhNUd6cDRN?= =?utf-8?B?VHRUYWVTVWJnMFZZVUpiSHlrbEpCMmFOV3dLZUxiWThoNThQUVE2UzFqdmEx?= =?utf-8?B?aHE0elk4cW9SNk5QanRFQWpIYlNseSt1ZWNxV2FseTh2RnBoOVpIWjlITlJi?= =?utf-8?B?bmJNWEg2NjVoN1ZpeE5Uc3g3bjJSZkZQS0EzNldNRGVLYndxek1sTnFqbE1T?= =?utf-8?B?VXd5Q2JGanBPN1lmMHV4eG8wMW5PT0Y3TlhmUlFDUGp0MHdqQUpZcnJTc0dk?= =?utf-8?B?VTRaZDI1cWF6ejRaTFRDTDVkQlk0NGNudVJRV0c5akptQzFiRUFEVTcwV3o5?= =?utf-8?B?dHBSUTRpWVJQeVRiWlZtYmNIZ2YvbU0yUG1PdTRmdlg3MU5PWU1RSU1PQW1L?= =?utf-8?B?VHZhbC9mYTcwSWhIRWxvbmp4V2tLMld3MFVsakhtSHJESUpxTkdveVV2VG9m?= =?utf-8?B?RXJpeFh0ZWRJU29oRnkrcmFCWllOZ1E0YXN6Y3lsZVpFaXZzcjRtdTdPbzIw?= =?utf-8?B?TWJ4bVFIVEMzUldKUzVESGVtc2FSU3hWWXhOSjlneWp4WnI0OERUZUs1RnVN?= =?utf-8?B?WmR1NjcyRGNMank5cmN5S3ZXYmJ4Tkk2bFJyMUVUK3J4Sng3RloxYkMvcVNi?= =?utf-8?B?MTRFN0JoaUM3emRLc3U0bXdhRUd6Tll5WitsSXE5RlVRZUs0NWdDcGx0OHVF?= =?utf-8?B?TS9HUVBlT0kwSzBHNDN1cnF1TzVYYnA0TjNpd01mckZhanVtSVg2NG5Oa2N3?= =?utf-8?B?VXR2QitwTmhHZWpiMEI0NTFSR1ZoSGRiQnd2alJZcFM4cDZhQ205S3pEemJv?= =?utf-8?B?R05tNWY4U1cvNVVTeXB1MGJZR09TZzhOVE9NNXpmNWlpWXl6eU5MK0I3Rndq?= =?utf-8?B?clNIOGc2NDUyL1NtRWNabnhlRllvRXV5cXgwR0Zab3BqV24wbmxPd244N01Z?= =?utf-8?B?WFZzbVR1MHJVcGhWQml0TFlLSjdqbTU3Smdkc0UyZVVZNk1veUpuQjlQOXpD?= =?utf-8?B?dUszR2xlZjdGSS8rbnJjRFNUZlljQk1taUFoa0FncjJBOStkN2tFQXVYUUtk?= =?utf-8?B?WWRrTy9hc2tlU1FFcDdOZGk1aHBEeWxmOEd1NHh1RElFUUN6bWlWUmlUSjZz?= =?utf-8?B?OCs2RERsWklmRU5wSUVraE5mZG9qVzlrNzNzV2RoY0tEVDltZEUzcnNmUHQx?= =?utf-8?B?M0dmbFZ5WkdvdG1tZXVpcldLNFNOTFVLUGJiQ3lUanJlVVA1VkRrU0p1b29w?= =?utf-8?B?RHpzUUpRMS9OZEVKWmlkSUYwYzB6Skh5SXJwbzh1T1Y4ZXNJK0RPaFI5QjBU?= =?utf-8?B?QVhabHdqRnY4Z0RqU3ZNeFNBbGI2eS9STC9xSGppTldwdVV3YTBFKzZXdTJR?= =?utf-8?B?cXg0NFJDRjlheG5LSGphMGdTM1BRZzg0enJUWitOUXVac2RHbzFTZVZDWmpq?= =?utf-8?B?Mk1yNHVkSGtSZW9qN2ROYjVic01kUXJFSExsM2xWNXJHVU9yZ3hCR3p0ZTV4?= =?utf-8?B?OUE9PQ==?= Content-Type: text/plain; charset="utf-8" Content-ID: <18D51465F1E71A49BE36B63A2C8628C0@namprd11.prod.outlook.com> Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: MN0PR11MB5963.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 980c5848-0524-491c-300c-08db6c2a0931 X-MS-Exchange-CrossTenant-originalarrivaltime: 13 Jun 2023 16:20:00.1302 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 46c98d88-e344-4ed4-8496-4ed7712e255d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: 3Ucay9Po8N/qSUmQwzTCVODt0Qqi/7AxP4N0CmF8OKYzkkxwS2ddnGUBt1/T9NuOXD+WHrZkBqL/4ajUAQ/wcXisj0nxSpHxFhISct8CFrU= X-MS-Exchange-Transport-CrossTenantHeadersStamped: IA1PR11MB7853 X-OriginatorOrg: intel.com T24gVHVlLCAyMDIzLTA2LTEzIGF0IDE0OjI3ICswMjAwLCBEYXZpZCBIaWxkZW5icmFuZCB3cm90 ZToNCj4gQWNrZWQtYnk6IERhdmlkIEhpbGRlbmJyYW5kIDxkYXZpZEByZWRoYXQuY29tPg0KDQpU aGFua3MhDQo= From xen-devel-bounces@lists.xenproject.org Tue Jun 13 16:22:36 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 16:22:36 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548278.856145 (Exim 4.92) (envelope-from ) id 1q96mx-0003Sp-F3; Tue, 13 Jun 2023 16:22:35 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548278.856145; Tue, 13 Jun 2023 16:22:35 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q96mx-0003Si-CX; Tue, 13 Jun 2023 16:22:35 +0000 Received: by outflank-mailman (input) for mailman id 548278; Tue, 13 Jun 2023 16:22:34 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q96mw-0003Sa-DF for xen-devel@lists.xenproject.org; Tue, 13 Jun 2023 16:22:34 +0000 Received: from esa1.hc3370-68.iphmx.com (esa1.hc3370-68.iphmx.com [216.71.145.142]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 7ebcb040-0a06-11ee-b232-6b7b168915f2; Tue, 13 Jun 2023 18:22:32 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 7ebcb040-0a06-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686673352; h=from:to:cc:subject:date:message-id:mime-version: content-transfer-encoding; bh=wI7Ox+ZcvL31pWek3khs75KPYrJtX+VL5V8BRP+W/vc=; b=hJ7Vos5V9MYurOekWLzMM4+4gakrNFTVBFt81Tc9EQfxzo1ap5Dw+itu Z2SmyTA4lCH75bWVX8Jb1eYcnAdLIPOp98zok/C6HUqS4wCZGVStkvdtA 8pqAymacmfTzrW1sD0XIweUHdDsOaKKFuEnNS5vZRu5RbsHmgREFkG5Cz s=; Authentication-Results: esa1.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none X-SBRS: 4.0 X-MesageID: 113061536 X-Ironport-Server: esa1.hc3370-68.iphmx.com X-Remote-IP: 162.221.156.123 X-Policy: $RELAYED IronPort-Data: A9a23:j6rQGa5OI1RWnWsDc6c7RQxRtN7HchMFZxGqfqrLsTDasY5as4F+v mIbDWuPPfrYN2T3ed1+PYuwoEhS6J6DyoBlQVZkqyo8Hi5G8cbLO4+Ufxz6V8+wwm8vb2o8t plDNYOQRCwQZiWBzvt4GuG59RGQ7YnRGvynTraCYnsrLeNdYH9JoQp5nOIkiZJfj9G8Agec0 fv/uMSaM1K+s9JOGjt8B5mr9lU35JwehBtC5gZlPa4S5weE/5UoJMl3yZ+ZfiOQrrZ8RoZWd 86bpJml82XQ+QsaC9/Nut4XpWVTH9Y+lSDX4pZnc/DKbipq/0Te4Y5iXBYoUm9Fii3hojxE4 I4lWapc6+seFvakdOw1C3G0GszlVEFM0OevzXOX6aR/w6BaGpdFLjoH4EweZOUlFuhL7W5mp fUBEytTRCu/hdmN572/FPFIn8oYBZy+VG8fkikIITDxCP8nRdbIQrnQ5M8e1zA17ixMNa+AP YxDM2MpNUmeJUQVYT/7C7pn9AusrlD5fydVtxS+oq0v7nKI5AdwzKLsIJzefdniqcB9xx/D/ jyfoj+nav0cHNiRyn3bojWKuurOnH/yG6I8CJyF5vE/1TV/wURMUUZLBDNXu8KRmkO4Ht5SN UEQ0i4vtrQpslymSMHnWB+1q2LCuQQTM/JyOeAn7ACGyoLP/h2UQGMDS1Zpc8c6vcU7QTgr0 F6hnN7zAzFr9rqPRhq16bO8vT60fy8PIgcqZzIATAYDy8nupsc0lB2nZuhkFKm5n9jkAwbay jqBrDU9r7gLhMtN3KK+lXjNjiiwvJHPQkgw7x/OQ2O+xgpjYciuYInA1LTAxa8edsDDFADH5 SVa3ZHEt4jiEK1higTdSfw2B++D3MqHCwb7jloxB704+Q+ErivLkZ9r3N1uGKt4Gp9aKWG3O hOL5l85CIx7ZyXzM/IuC26lI4FzlPW7S4y4PhzBRoAWCqWdYjNr682HiaS4+2n22HYhnqgkU XtwWZb9VC1KYUiLIdffegv87VPI7npkrY8rbcqnpylLKJLHDJJvdZ8LMUGVcscy576erQPe/ r53bpXalUgODLKlM3WHqOb/yGzmy1BhXfgaTOQNL4a+zvdOQjl9W5c9P5t8E2Cao0ilvriRp SzsMqOp4FH+mWfGOW23hoNLMdvSsWJEhStjZ0QEZA/4s0XPlK7ztM/zgbNrJ+h4nAGipNYoJ 8Q4lzKoW6wfEG6bqmpMMPEQbuVKLXyWuO5HBAL9CBBXQnKqb1ChFgPMFuc3yBQzMw== IronPort-HdrOrdr: A9a23:Smvyc64zB332mUsWHAPXwBrXdLJyesId70hD6qkXc20xTiX4rb HNoB1/73TJYVkqOU3Ip+rwRJVoLUmwyXZaibNhR4tKdjOWwVdBFelZnPDfK9eJIVyCygcl79 YZT0EcMqySMbEZt6bHCVKDYrAdKbC8mcjDuQ659RlQpC5RGt5dBmxCZjpzfHcYeOGGbaBJcK Z1aaJ81l2dRUg= X-Talos-CUID: =?us-ascii?q?9a23=3AMRLog2rq2CfhJl57ttMkRZvmUZAsa0bGkl3rH02?= =?us-ascii?q?DMkFmTOONbUaew4oxxg=3D=3D?= X-Talos-MUID: 9a23:1kZfLQv9EJDAuNUdos2ngD9hc5k4pIKSDUEMzZxFm+eYFBFgNGLI X-IronPort-AV: E=Sophos;i="6.00,240,1681185600"; d="scan'208";a="113061536" From: Andrew Cooper To: Xen-devel CC: Andrew Cooper , Jan Beulich , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Wei Liu , Stefano Stabellini , Julien Grall , Volodymyr Babchuk , Bertrand Marquis Subject: [PATCH] xen/evtchn: Purge ERROR_EXIT{,_DOM}() Date: Tue, 13 Jun 2023 17:22:20 +0100 Message-ID: <20230613162220.3052184-1-andrew.cooper3@citrix.com> X-Mailer: git-send-email 2.30.2 MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit These are disliked specifically by MISRA, but they also interfere with code legibility by hiding control flow. Expand and drop them. * Rearrange the order of actions to write into rc, then render rc in the gdprintk(). * Drop redundant "rc = rc" assignments * Switch to using %pd for rendering domains No functional change. Resulting binary is identical. Signed-off-by: Andrew Cooper --- CC: Jan Beulich CC: Roger Pau Monné CC: Wei Liu CC: Stefano Stabellini CC: Julien Grall CC: Volodymyr Babchuk CC: Bertrand Marquis --- xen/common/event_channel.c | 79 +++++++++++++++++++++++++------------- 1 file changed, 52 insertions(+), 27 deletions(-) diff --git a/xen/common/event_channel.c b/xen/common/event_channel.c index f5e0b12d1520..a7a004a08429 100644 --- a/xen/common/event_channel.c +++ b/xen/common/event_channel.c @@ -36,23 +36,6 @@ #include #endif -#define ERROR_EXIT(_errno) \ - do { \ - gdprintk(XENLOG_WARNING, \ - "EVTCHNOP failure: error %d\n", \ - (_errno)); \ - rc = (_errno); \ - goto out; \ - } while ( 0 ) -#define ERROR_EXIT_DOM(_errno, _dom) \ - do { \ - gdprintk(XENLOG_WARNING, \ - "EVTCHNOP failure: domain %d, error %d\n", \ - (_dom)->domain_id, (_errno)); \ - rc = (_errno); \ - goto out; \ - } while ( 0 ) - #define consumer_is_xen(e) (!!(e)->xen_consumer) /* @@ -336,7 +319,11 @@ int evtchn_alloc_unbound(evtchn_alloc_unbound_t *alloc, evtchn_port_t port) port = rc = evtchn_get_port(d, port); if ( rc < 0 ) - ERROR_EXIT(rc); + { + gdprintk(XENLOG_WARNING, "EVTCHNOP failure: error %d\n", rc); + goto out; + } + rc = 0; chn = evtchn_from_port(d, port); @@ -412,17 +399,30 @@ int evtchn_bind_interdomain(evtchn_bind_interdomain_t *bind, struct domain *ld, lport = rc = evtchn_get_port(ld, lport); if ( rc < 0 ) - ERROR_EXIT(rc); + { + gdprintk(XENLOG_WARNING, "EVTCHNOP failure: error %d\n", rc); + goto out; + } + rc = 0; lchn = evtchn_from_port(ld, lport); rchn = _evtchn_from_port(rd, rport); if ( !rchn ) - ERROR_EXIT_DOM(-EINVAL, rd); + { + rc = -EINVAL; + gdprintk(XENLOG_WARNING, "EVTCHNOP failure: %pd, error %d\n", rd, rc); + goto out; + } + if ( (rchn->state != ECS_UNBOUND) || (rchn->u.unbound.remote_domid != ld->domain_id) ) - ERROR_EXIT_DOM(-EINVAL, rd); + { + rc = -EINVAL; + gdprintk(XENLOG_WARNING, "EVTCHNOP failure: %pd, error %d\n", rd, rc); + goto out; + } rc = xsm_evtchn_interdomain(XSM_HOOK, ld, lchn, rd, rchn); if ( rc ) @@ -487,11 +487,19 @@ int evtchn_bind_virq(evtchn_bind_virq_t *bind, evtchn_port_t port) write_lock(&d->event_lock); if ( read_atomic(&v->virq_to_evtchn[virq]) ) - ERROR_EXIT(-EEXIST); + { + rc = -EEXIST; + gdprintk(XENLOG_WARNING, "EVTCHNOP failure: error %d\n", rc); + goto out; + } port = rc = evtchn_get_port(d, port); if ( rc < 0 ) - ERROR_EXIT(rc); + { + gdprintk(XENLOG_WARNING, "EVTCHNOP failure: error %d\n", rc); + goto out; + } + rc = 0; chn = evtchn_from_port(d, port); @@ -535,7 +543,11 @@ static int evtchn_bind_ipi(evtchn_bind_ipi_t *bind) write_lock(&d->event_lock); if ( (port = get_free_port(d)) < 0 ) - ERROR_EXIT(port); + { + rc = port; + gdprintk(XENLOG_WARNING, "EVTCHNOP failure: error %d\n", rc); + goto out; + } chn = evtchn_from_port(d, port); @@ -599,16 +611,29 @@ static int evtchn_bind_pirq(evtchn_bind_pirq_t *bind) write_lock(&d->event_lock); if ( pirq_to_evtchn(d, pirq) != 0 ) - ERROR_EXIT(-EEXIST); + { + rc = -EEXIST; + gdprintk(XENLOG_WARNING, "EVTCHNOP failure: error %d\n", rc); + goto out; + } if ( (port = get_free_port(d)) < 0 ) - ERROR_EXIT(port); + { + rc = port; + gdprintk(XENLOG_WARNING, "EVTCHNOP failure: error %d\n", rc); + goto out; + } chn = evtchn_from_port(d, port); info = pirq_get_info(d, pirq); if ( !info ) - ERROR_EXIT(-ENOMEM); + { + rc = -ENOMEM; + gdprintk(XENLOG_WARNING, "EVTCHNOP failure: error %d\n", rc); + goto out; + } + info->evtchn = port; rc = (!is_hvm_domain(d) ? pirq_guest_bind(v, info, base-commit: f29363922c1b41310c3d87fd9a861ffa9db9204a -- 2.30.2 From xen-devel-bounces@lists.xenproject.org Tue Jun 13 16:35:49 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 16:35:49 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548285.856155 (Exim 4.92) (envelope-from ) id 1q96zW-00058i-OM; Tue, 13 Jun 2023 16:35:34 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548285.856155; Tue, 13 Jun 2023 16:35:34 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q96zW-00058b-Lh; Tue, 13 Jun 2023 16:35:34 +0000 Received: by outflank-mailman (input) for mailman id 548285; Tue, 13 Jun 2023 16:35:33 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q96zV-00058R-Fk; Tue, 13 Jun 2023 16:35:33 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q96zV-0006mU-Bb; Tue, 13 Jun 2023 16:35:33 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q96zU-0000jH-Uw; Tue, 13 Jun 2023 16:35:33 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q96zU-00033c-UX; Tue, 13 Jun 2023 16:35:32 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=pm7/SjtMGOeuvElnebSEGtOg3s+/ruOw0Un0oPXTBoY=; b=GWkX5hysSO2RR4Ji5qDrAM3/al J0PNehwMgu42yp0OxhUXsZ+0wdoVzpIkkvbTuI0COnQzeTpmRPXJOk/4H78tKZa+lwcwt7gxTiftc bM6oRGKYe+6dFdeByuCRjLQo8GdtVJxXQWfMXoXVE9uZgAvy7Sf1yA7qevtnf5Ux/yl4=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [qemu-mainline test] 181403: regressions - FAIL X-Osstest-Failures: qemu-mainline:build-amd64-xsm:xen-build:fail:regression qemu-mainline:build-arm64-xsm:xen-build:fail:regression qemu-mainline:build-arm64:xen-build:fail:regression qemu-mainline:build-amd64:xen-build:fail:regression qemu-mainline:build-i386:xen-build:fail:regression qemu-mainline:build-i386-xsm:xen-build:fail:regression qemu-mainline:build-armhf:xen-build:fail:regression qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-i386:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:build-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:build-arm64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:build-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:build-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pygrub:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking X-Osstest-Versions-This: qemuu=fdd0df5340a8ebc8de88078387ebc85c5af7b40f X-Osstest-Versions-That: qemuu=6972ef1440a9d685482d78672620a7482f2bd09a From: osstest service owner Date: Tue, 13 Jun 2023 16:35:32 +0000 flight 181403 qemu-mainline real [real] http://logs.test-lab.xenproject.org/osstest/logs/181403/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-amd64-xsm 6 xen-build fail REGR. vs. 180691 build-arm64-xsm 6 xen-build fail REGR. vs. 180691 build-arm64 6 xen-build fail REGR. vs. 180691 build-amd64 6 xen-build fail REGR. vs. 180691 build-i386 6 xen-build fail REGR. vs. 180691 build-i386-xsm 6 xen-build fail REGR. vs. 180691 build-armhf 6 xen-build fail REGR. vs. 180691 Tests which did not succeed, but are not blocking: test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-xl-xsm 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-raw 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-xsm 1 build-check(1) blocked n/a test-arm64-arm64-xl 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit1 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit2 1 build-check(1) blocked n/a test-arm64-arm64-xl-thunderx 1 build-check(1) blocked n/a test-arm64-arm64-xl-vhd 1 build-check(1) blocked n/a test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a test-armhf-armhf-libvirt 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-qcow2 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-raw 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a test-armhf-armhf-xl-arndale 1 build-check(1) blocked n/a test-armhf-armhf-xl-multivcpu 1 build-check(1) blocked n/a test-armhf-armhf-xl-rtds 1 build-check(1) blocked n/a test-armhf-armhf-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-amd 1 build-check(1) blocked n/a test-amd64-i386-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-raw 1 build-check(1) blocked n/a test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-i386 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-amd64 1 build-check(1) blocked n/a test-amd64-coresched-i386-xl 1 build-check(1) blocked n/a test-amd64-coresched-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-xsm 1 build-check(1) blocked n/a build-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-shadow 1 build-check(1) blocked n/a test-amd64-amd64-xl-rtds 1 build-check(1) blocked n/a build-arm64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a build-armhf-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a build-i386-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-amd 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-pair 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-qcow2 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-vhd 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvshim 1 build-check(1) blocked n/a test-amd64-amd64-pair 1 build-check(1) blocked n/a test-amd64-amd64-pygrub 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-intel 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd11-amd64 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd12-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-multivcpu 1 build-check(1) blocked n/a test-amd64-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit1 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit1 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit2 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-intel 1 build-check(1) blocked n/a test-amd64-i386-xl 1 build-check(1) blocked n/a test-amd64-i386-xl-pvshim 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a version targeted for testing: qemuu fdd0df5340a8ebc8de88078387ebc85c5af7b40f baseline version: qemuu 6972ef1440a9d685482d78672620a7482f2bd09a Last test of basis 180691 2023-05-17 10:45:22 Z 27 days Failing since 180699 2023-05-18 07:21:24 Z 26 days 96 attempts Testing same since 181372 2023-06-10 21:38:57 Z 2 days 17 attempts ------------------------------------------------------------ People who touched revisions under test: Afonso Bordado Akihiko Odaki Akihiro Suda Alex Bennée Alex Williamson Alexander Bulekov Alexander Graf Alexander Ivanov Alistair Francis Anastasia Belova Andrew Jeffery Ani Sinha Ani Sinha Anthony PERARD Anton Johansson BALATON Zoltan Bastian Koppelmann Bernhard Beschow Bin Meng Brian Cain Brice Goglin Camilla Conte Carlos Santos Christian Schoenebeck Chuck Zmudzinski Cindy Lu Clément Chigot Cornelia Huck Cédric Le Goater Cédric Le Goater Daniel Henrique Barboza Daniel P. Berrangé Daniil Kovalev David Hildenbrand David Woodhouse Emanuele Giuseppe Esposito Enze Li Eric Auger Eric Blake Eric DeVolder Erico Nunes Eugenio Pérez Fabiano Rosas Fan Ni Fiona Ebner Francesco Cagnin Francisco Iglesias Frederic Barrat Gavin Shan Gregory Price Gregory Price Hanna Czenczek Hao Zeng Hawkins Jiawei Igor Mammedov Ilya Leoshkevich Ira Weiny Jagannathan Raman Jason Wang Jean-Louis Dupond Jean-Philippe Brucker Jiaxun Yang John Snow Jonathan Cameron Juan Quintela Kevin Wolf Laurent Vivier Lei Yang Leonardo Bras Maksim Davydov Marc-André Lureau Marcin Juszkiewicz Marco Liebel Mark Cave-Ayland Markus Armbruster Matheus Tavares Bernardino Mattias Nissler Mauro Matteo Cascella Max Fritz Michael S. Tsirkin Michael Tokarev Michal Privoznik Milan Zamazal Mostafa Saleh Nicholas Piggin Nicolas Saenz Julienne Niek Linnenbank Palmer Dabbelt Paolo Bonzini Peter Maydell Peter Xu Philippe Mathieu-Daudé qianfan Zhao Raghu H Rene Engel Richard Henderson Richard Purdie Ricky Zhou Ryan Wendland Sebastian Ott Sergio Lopez Sid Manning Song Gao Stefan Hajnoczi Stefano Garzarella Steve Sistare Taylor Simpson Thomas Huth Thomas Weißschuh timothee.cocault@gmail.com Timothée Cocault Tommy Wu Vikram Garhwal Viktor Prutyanov Vitaly Cheptsov Vivek Kasireddy Vladimir Sementsov-Ogievskiy Volker Rümelin Xinyu Li Zeng Hao Zhenyu Zhang Zhenzhong Duan Zhuojia Shen jobs: build-amd64-xsm fail build-arm64-xsm fail build-i386-xsm fail build-amd64 fail build-arm64 fail build-armhf fail build-i386 fail build-amd64-libvirt blocked build-arm64-libvirt blocked build-armhf-libvirt blocked build-i386-libvirt blocked build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl blocked test-amd64-coresched-amd64-xl blocked test-arm64-arm64-xl blocked test-armhf-armhf-xl blocked test-amd64-i386-xl blocked test-amd64-coresched-i386-xl blocked test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-i386-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-amd64-libvirt-xsm blocked test-arm64-arm64-libvirt-xsm blocked test-amd64-i386-libvirt-xsm blocked test-amd64-amd64-xl-xsm blocked test-arm64-arm64-xl-xsm blocked test-amd64-i386-xl-xsm blocked test-amd64-amd64-qemuu-nested-amd blocked test-amd64-amd64-xl-pvhv2-amd blocked test-amd64-i386-qemuu-rhel6hvm-amd blocked test-amd64-amd64-dom0pvh-xl-amd blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-freebsd10-amd64 blocked test-amd64-amd64-qemuu-freebsd11-amd64 blocked test-amd64-amd64-qemuu-freebsd12-amd64 blocked test-amd64-amd64-xl-qemuu-ovmf-amd64 blocked test-amd64-i386-xl-qemuu-ovmf-amd64 blocked test-amd64-amd64-xl-qemuu-win7-amd64 blocked test-amd64-i386-xl-qemuu-win7-amd64 blocked test-amd64-amd64-xl-qemuu-ws16-amd64 blocked test-amd64-i386-xl-qemuu-ws16-amd64 blocked test-armhf-armhf-xl-arndale blocked test-amd64-amd64-xl-credit1 blocked test-arm64-arm64-xl-credit1 blocked test-armhf-armhf-xl-credit1 blocked test-amd64-amd64-xl-credit2 blocked test-arm64-arm64-xl-credit2 blocked test-armhf-armhf-xl-credit2 blocked test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-freebsd10-i386 blocked test-amd64-amd64-qemuu-nested-intel blocked test-amd64-amd64-xl-pvhv2-intel blocked test-amd64-i386-qemuu-rhel6hvm-intel blocked test-amd64-amd64-dom0pvh-xl-intel blocked test-amd64-amd64-libvirt blocked test-armhf-armhf-libvirt blocked test-amd64-i386-libvirt blocked test-amd64-amd64-xl-multivcpu blocked test-armhf-armhf-xl-multivcpu blocked test-amd64-amd64-pair blocked test-amd64-i386-pair blocked test-amd64-amd64-libvirt-pair blocked test-amd64-i386-libvirt-pair blocked test-amd64-amd64-xl-pvshim blocked test-amd64-i386-xl-pvshim blocked test-amd64-amd64-pygrub blocked test-armhf-armhf-libvirt-qcow2 blocked test-amd64-amd64-xl-qcow2 blocked test-arm64-arm64-libvirt-raw blocked test-armhf-armhf-libvirt-raw blocked test-amd64-i386-libvirt-raw blocked test-amd64-amd64-xl-rtds blocked test-armhf-armhf-xl-rtds blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-amd64-xl-shadow blocked test-amd64-i386-xl-shadow blocked test-arm64-arm64-xl-thunderx blocked test-amd64-amd64-libvirt-vhd blocked test-arm64-arm64-xl-vhd blocked test-armhf-armhf-xl-vhd blocked test-amd64-i386-xl-vhd blocked ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 17052 lines long.) From xen-devel-bounces@lists.xenproject.org Tue Jun 13 16:40:27 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 16:40:27 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548292.856166 (Exim 4.92) (envelope-from ) id 1q974E-0006cH-CH; Tue, 13 Jun 2023 16:40:26 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548292.856166; Tue, 13 Jun 2023 16:40:26 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q974E-0006cA-7V; Tue, 13 Jun 2023 16:40:26 +0000 Received: by outflank-mailman (input) for mailman id 548292; Tue, 13 Jun 2023 16:40:25 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q974D-0006c4-AN for xen-devel@lists.xenproject.org; Tue, 13 Jun 2023 16:40:25 +0000 Received: from esa1.hc3370-68.iphmx.com (esa1.hc3370-68.iphmx.com [216.71.145.142]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id fd15ad36-0a08-11ee-8611-37d641c3527e; Tue, 13 Jun 2023 18:40:23 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: fd15ad36-0a08-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686674422; h=date:from:to:cc:subject:message-id:references: mime-version:in-reply-to; bh=Bi74crvnuYP9HbwVoECdXnk8P2w9Sfucs3wEkvHdVHI=; b=YOItwM41sA6EcMG3NH0MlfIvoh99UikeTJf3mvmWfG8s4BzbbIdtTRM9 9j29NZuuNow+pb0INNaVjm6R9LlzE7oCkDdD2rQAjaai5Ed/LbEJBciKe UwuFlZ83XB6Ez2IrJ0Ee5hWXQuzm9O4TL2N+Ekw+iMuz3fwD3YaRTnLJV A=; Authentication-Results: esa1.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none X-SBRS: 4.0 X-MesageID: 113063634 X-Ironport-Server: esa1.hc3370-68.iphmx.com X-Remote-IP: 162.221.156.123 X-Policy: $RELAYED IronPort-Data: A9a23:QjqUuKOI2gyPprHvrR2Jl8FynXyQoLVcMsEvi/4bfWQNrUon3zJTm GpJCmuObv6KYGXyfIh3atni/UgBu5fWn981Gwto+SlhQUwRpJueD7x1DKtS0wC6dZSfER09v 63yTvGacajYm1eF/k/F3oDJ9CU6jufQAOKnUoYoAwgpLSd8UiAtlBl/rOAwh49skLCRDhiE/ Nj/uKUzAnf8s9JPGjxSs/rrRC9H5qyo42tG5wdmP5ingXeF/5UrJMNHTU2OByOQrrl8RoaSW +vFxbelyWLVlz9F5gSNy+uTnuUiG9Y+DCDW4pZkc/HKbitq/0Te5p0TJvsEAXq7vh3S9zxHJ HehgrTrIeshFvWkdO3wyHC0GQkmVUFN0OevzXRSLaV/ZqAJGpfh66wGMa04AWEX0uNrUXlvp fZGESgIdha8qqGM55eBQeY506zPLOGzVG8eknRpzDWfBvc6W5HTBa7N4Le03h9p2JoIR6yHI ZNEN3w2Nk+ojx5nYz/7DLo3mvuogX/uNSVVsluPqYI84nTJzRw327/oWDbQUoXTHp0LxRjD+ goq+Uz6HVYACNyc0wHc0TGtrMTrwGT+e5sNQejQGvlC3wTImz175ActfVmxrOS9i0W+c8lCM EFS8S0rxYAi+UruQtTjUhmQpH+fogVaS9dWC/c96gyG1uzT+QnxLncAZi5MbpohrsBebT4lz FiShPvyGCdi9raSTBq1/6+ZtzqoNQAJLGUJYmkPSg5t3jX4iNht1FSVFI8lSfPryISvQlkc3 gxmsgA7m+ULrJ4BiZyj+EjBvB/vnL/sdAU6s1C/sn2e0u9pWGK0T9X2uQaFt6oYc9rxokqp5 yZdxZXHhAwaJdTUzXHWHr1QdF28z6zdWAAwl2KDCHXIG96F33e4Nb5d7zhlTKuCGpZVIGS5C KM/VO442XOyAJdJRfUtC25JI552pZUM7Py8PhwuUvJAY4JqaCiM9zx0aEib0gjFyRZ8z/xuZ cjAIJr8VB727JiLKhLsH4/xNpdxn0gDKZ77H8inn3xLL5LDDJJqdVv1GATXNb1ohE91iA7U7 8xeJ6O3J+Z3CYXDjt3s2ddLdzgidCFrba0aXuQLLoZv1CI6QjB+YxIQqJt9E7FYc1N9z7+Yp CvhCxEJlTISRxTvcG23V5yqU5u3Nb4XkJ7xFXVE0YqAs5T7XbuS0Q== IronPort-HdrOrdr: A9a23:O32gyaOrv1B4jcBcT4T155DYdb4zR+YMi2TDtnoBPCC9F/by+f xG88566faKskdsZJhNo7G90cq7MADhHOBOkOss1N6ZNWGNhILCFvAA0WKN+UyEJ8X0ntQtqp uJG8JFZOEZZjJB4voTL2ODfuoI8Z2/1OSNuM+b9nFqSGhRGtNdB8USMHfkLqWzLjM2dabQ0f Cnl7t6TkGbCBAqR/X+PGABQ+/A4/XTjfvdEGc7Li9i0hCKkTSrrJXnEx2Uty1uLg9n8PMZ6G 3YlA68wa2mv5iAu3jh/l6W1Y1ShNzijv1cA8CW4/JlTAnEu0KTfYF8XL/HhhAZydvfkGoCoZ 33uhI9OMY20X/LYW2vhhPo12DboU0Twk6n80acnXzg5fP0Xyg7Dc0pv/MiTifk X-Talos-CUID: 9a23:KeAJBWA3BlqVkxj6Eyx7pFY1Ssp7S2XY1HHvDgyCLkNTQ7LAHA== X-Talos-MUID: 9a23:FfwmcgXXARO3zoXq/DzzwyteNMRy2P2NS0EnurFb/MynLDMlbg== X-IronPort-AV: E=Sophos;i="6.00,240,1681185600"; d="scan'208";a="113063634" Date: Tue, 13 Jun 2023 17:40:17 +0100 From: Anthony PERARD To: Jan Beulich CC: "xen-devel@lists.xenproject.org" , Wei Liu , Juergen Gross Subject: Re: [PATCH 3/5] libxg: drop dead assignment to "ptes" from xc_core_arch_map_p2m_list_rw() Message-ID: References: <2dc50b58-a4e4-3e32-1876-94412b14b052@suse.com> <33566692-ee42-44af-a94a-5535fdf39930@perard> MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Disposition: inline In-Reply-To: On Tue, Jun 13, 2023 at 06:08:16PM +0200, Jan Beulich wrote: > On 13.06.2023 18:03, Anthony PERARD wrote: > > On Mon, Jun 12, 2023 at 01:46:40PM +0200, Jan Beulich wrote: > >> The function returns immediately after the enclosing if(). > >> > >> Coverity ID: 1532314 > >> Fixes: bd7a29c3d0b9 ("tools/libs/ctrl: fix xc_core_arch_map_p2m() to support linear p2m table") > >> Signed-off-by: Jan Beulich > >> > >> --- a/tools/libs/guest/xg_core_x86.c > >> +++ b/tools/libs/guest/xg_core_x86.c > >> @@ -210,7 +210,6 @@ xc_core_arch_map_p2m_list_rw(xc_interfac > >> } > >> > >> munmap(ptes, n_pages * PAGE_SIZE); > >> - ptes = NULL; > >> off = p2m_vaddr & ((mask >> shift) << shift); > >> } > > > > Do we have to remove this assignment? What if someone adds code later > > and reuse the content of the variable `ptes`? Or what if someone adds > > codes after the loop, and handle an error with `goto out`, we would have > > a double-munmap(). > > Imo it would be at that time when the assignment wants (re)adding. I I don't believe this is going to happen because I don't think a compiler will find a mistake. Maybe a run of Coverity would tell that ptes is reused after munmap(), but by the time Coverity run on the code, it would be too late. > fully agree with the tool, and I expect Misra (if it was applied to > the tool stack as well) would demand the very same change. I guess the issue here is that there's two paths out of the function, the error path via "out" and the success path. If `ptes` is check on both path, then the assignment would be needed, and it would be harder to make a mistake; which can be done by having only one way out. If only we could restrict the scope of `ptes` to the for loop, we wouldn't even need to set it to NULL. Cheers, -- Anthony PERARD From xen-devel-bounces@lists.xenproject.org Tue Jun 13 16:42:24 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 16:42:24 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548299.856176 (Exim 4.92) (envelope-from ) id 1q975y-0007ET-R9; Tue, 13 Jun 2023 16:42:14 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548299.856176; Tue, 13 Jun 2023 16:42:14 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q975y-0007EM-NT; Tue, 13 Jun 2023 16:42:14 +0000 Received: by outflank-mailman (input) for mailman id 548299; Tue, 13 Jun 2023 16:42:13 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q975x-0007ED-If for xen-devel@lists.xenproject.org; Tue, 13 Jun 2023 16:42:13 +0000 Received: from mail-wm1-x32d.google.com (mail-wm1-x32d.google.com [2a00:1450:4864:20::32d]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 3ee6c895-0a09-11ee-b232-6b7b168915f2; Tue, 13 Jun 2023 18:42:12 +0200 (CEST) Received: by mail-wm1-x32d.google.com with SMTP id 5b1f17b1804b1-3f8d176396bso7008115e9.2 for ; Tue, 13 Jun 2023 09:42:12 -0700 (PDT) Received: from EMEAENGAAD19049. (default-46-102-197-194.interdsl.co.uk. [46.102.197.194]) by smtp.gmail.com with ESMTPSA id c16-20020a7bc850000000b003f7ead9be7fsm14827273wml.38.2023.06.13.09.42.10 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 13 Jun 2023 09:42:11 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 3ee6c895-0a09-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cloud.com; s=cloud; t=1686674532; x=1689266532; h=in-reply-to:content-disposition:mime-version:references:subject:cc :to:from:date:message-id:from:to:cc:subject:date:message-id:reply-to; bh=8jPHH0n3tW8eef21HgwqfbkWRC0F9sd3ik60Nshuf8A=; b=YsAeLg5EJ1kf1sSGNNK4nYk7LZhXEecvvdPgFdNWc9+M8/wXPQBk9QKpOdaHB1Mq7w n+qTgPApo5GVcbCSwFUiuJJg8IHZg7swYteBQUyaFOFCfJGFpGuIX8HeMkQE/mG+V7I1 yL5WSRfpVJSktgexbNV4vTkpxN/7HbtngNRSE= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686674532; x=1689266532; h=in-reply-to:content-disposition:mime-version:references:subject:cc :to:from:date:message-id:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=8jPHH0n3tW8eef21HgwqfbkWRC0F9sd3ik60Nshuf8A=; b=VkyQy7GF3Vk5rzRJMz5Qgz+ORitZPT9C/JOa5uJIIRfe/09mlOYXqzl/sYceY6ZuCg ZsWntg98Y7DSPgHcrRi5eVn2cOB/EK7W4OMAx6642pbfu3T7yorlb47m08Oo42vFo6y6 t9M2gSrCNeyAl19ff/rG7Iy3I75vTgjyKqBAcxcV+tVfuEJzvJLc9FYfedma+sH65r4a wzlWaJZNtKy7w/rWLNS4cMAW1kBMtG9GcH75JCgZhJyy43AqNIH2XdBi9ocaiZoBV5Cx k9stjulKi7TAE9x9M7CjpXBBB8XfFErM6yDWM9I0XfXuqMvEJG+mhZfsIJHCohyD2+L1 1gJQ== X-Gm-Message-State: AC+VfDxVQTGkA0xCMbWlt310hKQDHx10+rsiWDjCSnQPEaCCOmqZatWc sIxhS9PWmqe9NOf4wUE5dQCQFA== X-Google-Smtp-Source: ACHHUZ7tmVv7C4yvedukhdzV049YQU2gaXmleMNrXQAs6UCWNal3yVRsdq2Izdfg+YVyoXRXmzhCVA== X-Received: by 2002:a7b:cd9a:0:b0:3f8:cbd9:7724 with SMTP id y26-20020a7bcd9a000000b003f8cbd97724mr1488605wmj.16.1686674531767; Tue, 13 Jun 2023 09:42:11 -0700 (PDT) Message-ID: <64889c63.7b0a0220.b6f4.adb8@mx.google.com> X-Google-Original-Message-ID: Date: Tue, 13 Jun 2023 17:42:08 +0100 From: Alejandro Vallejo To: Jan Beulich Cc: Andrew Cooper , Roger Pau =?iso-8859-1?Q?Monn=E9?= , Wei Liu , Xen-devel Subject: Re: [PATCH v2 4/4] x86/microcode: Prevent attempting updates if DIS_MCU_LOAD is set References: <20230605170817.9913-1-alejandro.vallejo@cloud.com> <20230605170817.9913-5-alejandro.vallejo@cloud.com> <26a77ade-7c77-0309-7a1d-e083621c9dcf@suse.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <26a77ade-7c77-0309-7a1d-e083621c9dcf@suse.com> On Tue, Jun 13, 2023 at 08:57:06AM +0200, Jan Beulich wrote: > On 05.06.2023 19:08, Alejandro Vallejo wrote: > > --- a/xen/arch/x86/cpu/microcode/core.c > > +++ b/xen/arch/x86/cpu/microcode/core.c > > @@ -749,11 +749,12 @@ __initcall(microcode_init); > > /* Load a cached update to current cpu */ > > int microcode_update_one(void) > > { > > + if ( ucode_ops.collect_cpu_info ) > > + alternative_vcall(ucode_ops.collect_cpu_info); > > + > > if ( !ucode_ops.apply_microcode ) > > return -EOPNOTSUPP; > > > > - alternative_vcall(ucode_ops.collect_cpu_info); > > - > > return microcode_update_cpu(NULL); > > } > > This adjustment (and related logic below) doesn't really fit the purpose > that the title states. I wonder if the two things wouldn't better be > split. Well, before this patch collect_cpu_info() and apply_microcode() were both set or cleared together , whereas after this patch that's no longer the case (hence the change). I can submit it standalone patch earlier in v3, seeing as it does no harm. The commit message could also do with better wording. > > > @@ -849,12 +850,25 @@ static void __init early_read_cpuid_7d0(void) > > = cpuid_count_edx(7, 0); > > } > > > > +static bool __init this_cpu_can_install_update(void) > > +{ > > + uint64_t mcu_ctrl; > > + > > + if ( !cpu_has_mcu_ctrl ) > > + return true; > > + > > + rdmsrl(MSR_MCU_CONTROL, mcu_ctrl); > > + return !(mcu_ctrl & MCU_CONTROL_DIS_MCU_LOAD); > > +} > > As Andrew says, in principle AMD could have a means as well. Surely that > would be a different one, so I wonder if this shouldn't be a new hook. > > > @@ -871,6 +885,15 @@ int __init early_microcode_init(unsigned long *module_map, > > * present. > > */ > > ucode_ops = intel_ucode_ops; > > + > > + /* > > + * In the case where microcode updates are blocked by the > > + * DIS_MCU_LOAD bit we can still read the microcode version even if > > + * we can't change it. > > + */ > > + if ( !this_cpu_can_install_update() ) > > + ucode_ops = (struct microcode_ops){ .collect_cpu_info = > > + intel_ucode_ops.collect_cpu_info }; > > Similarly I'm not happy to see a direct reference to some vendor specific > field. I think it wants to be the hook to return such an override struct. > > Jan I'm moving things around a little in v3. We'll have accessors for both AMD and Intel that provide the right thing, encapsulating vendor-specifics (including family checks) inside ${VENDOR}.c Alejandro From xen-devel-bounces@lists.xenproject.org Tue Jun 13 16:49:33 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 16:49:33 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548303.856185 (Exim 4.92) (envelope-from ) id 1q97Cr-0007tC-HU; Tue, 13 Jun 2023 16:49:21 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548303.856185; Tue, 13 Jun 2023 16:49:21 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q97Cr-0007t5-Ef; Tue, 13 Jun 2023 16:49:21 +0000 Received: by outflank-mailman (input) for mailman id 548303; Tue, 13 Jun 2023 16:49:19 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q97Cp-0007sv-TY; Tue, 13 Jun 2023 16:49:19 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q97Cp-0007DN-R7; Tue, 13 Jun 2023 16:49:19 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q97Cp-0001Kg-Fs; Tue, 13 Jun 2023 16:49:19 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q97Cp-0000qy-FS; Tue, 13 Jun 2023 16:49:19 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=3hq9U7SACCA0suRFuHzBaUaS+J22SHGRhkqRGU/DsmA=; b=nrkF4GNdcK4ul50MQgF4LNi1nR u+EEhUYzJewyqzi0I/p7rVRAg3CdagFKbNc2gxe49eV/4HQEHfwtz3iCIlllG9leaeZ6NonieRsHE C6wLSjaqfby3FXf3wfazSFgJ7LQn0e5vTAfAM29Ei4mRV5LKwuDCFBSHyUZmqRX+H3cg=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable-smoke test] 181407: tolerable all pass - PUSHED X-Osstest-Failures: xen-unstable-smoke:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking xen-unstable-smoke:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking xen-unstable-smoke:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking xen-unstable-smoke:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking xen-unstable-smoke:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: xen=2f69ef96801f0d2b9646abf6396e60f99c56e3a0 X-Osstest-Versions-That: xen=128557e3a44d79f0c9360dc88e42c3d0ef728edf From: osstest service owner Date: Tue, 13 Jun 2023 16:49:19 +0000 flight 181407 xen-unstable-smoke real [real] http://logs.test-lab.xenproject.org/osstest/logs/181407/ Failures :-/ but no regressions. Tests which did not succeed, but are not blocking: test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-armhf-armhf-xl 15 migrate-support-check fail never pass test-armhf-armhf-xl 16 saverestore-support-check fail never pass version targeted for testing: xen 2f69ef96801f0d2b9646abf6396e60f99c56e3a0 baseline version: xen 128557e3a44d79f0c9360dc88e42c3d0ef728edf Last test of basis 181402 2023-06-13 05:00:30 Z 0 days Testing same since 181407 2023-06-13 14:00:28 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Alistair Francis Andrew Cooper Jan Beulich Olaf Hering Oleksii Kurochko Roger Pau Monné Viresh Kumar jobs: build-arm64-xsm pass build-amd64 pass build-armhf pass build-amd64-libvirt pass test-armhf-armhf-xl pass test-arm64-arm64-xl-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-libvirt pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Pushing revision : To xenbits.xen.org:/home/xen/git/xen.git 128557e3a4..2f69ef9680 2f69ef96801f0d2b9646abf6396e60f99c56e3a0 -> smoke From xen-devel-bounces@lists.xenproject.org Tue Jun 13 16:52:33 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 16:52:33 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548310.856195 (Exim 4.92) (envelope-from ) id 1q97Fk-0000tE-VF; Tue, 13 Jun 2023 16:52:20 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548310.856195; Tue, 13 Jun 2023 16:52:20 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q97Fk-0000t7-SR; Tue, 13 Jun 2023 16:52:20 +0000 Received: by outflank-mailman (input) for mailman id 548310; Tue, 13 Jun 2023 16:52:19 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q97Fi-0000sz-SS for xen-devel@lists.xenproject.org; Tue, 13 Jun 2023 16:52:19 +0000 Received: from esa3.hc3370-68.iphmx.com (esa3.hc3370-68.iphmx.com [216.71.145.155]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id a604f721-0a0a-11ee-b232-6b7b168915f2; Tue, 13 Jun 2023 18:52:16 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: a604f721-0a0a-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686675136; h=from:to:cc:subject:date:message-id:mime-version: content-transfer-encoding; bh=IwpceYJKNzh/rUXf2UUdvMyT5o9XieuSGGNl5Y9TzsM=; b=VIFVtMks4L1/LjoQpj8wXspVVnDN7+g2O9Z8fV7kSgRpPgms2sSb6gnb RiHWch+yde0iXNFiUeDGKuPxFGQZA83f84yCuKBdoWEbGImQvTsitJpgI /Cq80wIAUQ46F1M+Y8h8KJQOnId/waSwqbTV/nx8A4J44AHBuHMLrN6Y6 4=; Authentication-Results: esa3.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none X-SBRS: 4.0 X-MesageID: 112658514 X-Ironport-Server: esa3.hc3370-68.iphmx.com X-Remote-IP: 162.221.156.123 X-Policy: $RELAYED IronPort-Data: A9a23:A88ViqupBxWaMJNcddCnrEaZrOfnVLBeMUV32f8akzHdYApBsoF/q tZmKW2BM6yDMDPxLdxxYIrg8RlVuMfTxtNmSlQ9ry5hFSsQ+JbJXdiXEBz9bniYRiHhoOCLz O1FM4Wdc5pkJpP4jk3wWlQ0hSAkjclkfpKlVKiffHg3HVQ+IMsYoUoLs/YjhYJ1isSODQqIu Nfjy+XSI1bg0DNvWo4uw/vrRChH4rKq4Fv0gnRkPaoQ5AGHzCFPZH4iDfrZw0XQE9E88tGSH 44v/JnhlkvF8hEkDM+Sk7qTWiXmlZaLYGBiIlIPM0STqkAqSh4ai87XB9JFAatjsB2bnsgZ9 Tl4ncfYpTHFnEH7sL91vxFwS0mSNEDdkVPNCSDXXce7lyUqf5ZwqhnH4Y5f0YAwo45K7W9yG fMwMCFXUz24le6K/LupZOg9qOQ6EtLoBdZK0p1g5Wmx4fcORJnCR+PB5MNC3Sd2jcdLdRrcT 5NHM3w1Nk2GOkARfA5NU/rSn8/x7pX7WxRepEiYuuwc5G/LwRYq+LPsLMDUapqBQsA9ckOw/ zucoTmpX0hGXDCZ4RCD8kCFi+7zpHPicZM4H6OCqsR6mmTGkwT/DzVJDADm8JFVkHWWS99Zb kAZ5Ccqhawz71CwCMnwWQWip3yJtQJaXMBfe8UYwgyQzqvf4y6CG3MJCDVGbbQOr9QqTDYn0 luImdLBBjF1trCRD3WH+d+8sjeaKSUTa2gYakcsTxYB4tTliJE+iFTIVNkLOJCyitr5CDTh2 QegpSI1h6gQpcMT3qD99lfC6xqmq4LVVAcz6kPSV3i88wJiTIe/Ysqj7l2z0BpbBN/HFB/b5 iFCwpXAqrlUVvlhiRBhXs0VDeuUys2XPAHgiExBHsgP1y2T4H2aKNU4DC5FGKt5DioVUWa3M BGN418Ju8M70GiCNvEuPd/oYyg+5e25TIm+CKiJBjZbSsIpHDJr6h2CcqJ5M4rFtEE32Z8yN p6AGSpHJSZLUP83pNZaqgp07FPK+szd7TmJLXwD5077uYdynVbMIVv/DHOAb/oi8ISPqxjP/ tBUOqOikksPDrCvPnaMoNJDdDjmyETX47is86S7kcbZe2Jb9JwJUaeNkdvNhaQ490iqqgs41 i7kARIJoLYOrXbGNR+LehhehEDHBP5CQYYAFXV0Zz6AgiFzCbtDGY9DL/Pbi5F7rr08pRO1J tFZE/i97gNnE2yXoW5BPMes8eSPtn2D3GqzAsZsWxBnF7YIeuAD0oSMktfHnMXWMheKiA== IronPort-HdrOrdr: A9a23:8pIMd6NmHqLCfMBcT4T155DYdb4zR+YMi2TDtnoBPCC9F/by+f xG88566faKskdsZJhNo7G90cq7MADhHOBOkOss1N6ZNWGNhILCFvAA0WKN+UyEJ8X0ntQtqp uJG8JFZOEZZjJB4voTL2ODfuoI8Z2/1OSNuM+b9nFqSGhRGtNdB8USMHfkLqWzLjM2dabQ0f Cnl7t6TkGbCBAqR/X+PGABQ+/A4/XTjfvdEGc7Li9i0hCKkTSrrJXnEx2Uty1uLg9n8PMZ6G 3YlA68wa2mv5iAu3jh/l6W1Y1ShNzijv1cA8CW4/JlTAnEu0KTfYF8XL/HhhAZydvfkGoCoZ 33uhI9OMY20X/LYW2vhhPo12DboU0Twk6n80acnXzg5fP0Xyg7Dc0pv/MiTifk X-Talos-CUID: =?us-ascii?q?9a23=3AbpolF2m44VtbHZ42Q0oUbBlGZiHXOWXMlkr9GF2?= =?us-ascii?q?0NVpgWpOUGHGw4Z1/kPM7zg=3D=3D?= X-Talos-MUID: 9a23:4Lbx5wkl6AuTcJGUbpakdnpIMsdayqmvNHldiLwXkcKaD3BKKy2k2WE= X-IronPort-AV: E=Sophos;i="6.00,240,1681185600"; d="scan'208";a="112658514" From: Andrew Cooper To: Xen-devel CC: Andrew Cooper , Jan Beulich , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Wei Liu , Stefano Stabellini , Julien Grall , Volodymyr Babchuk , Bertrand Marquis Subject: [PATCH] xen/gnttab: Purge PIN_FAIL() Date: Tue, 13 Jun 2023 17:52:09 +0100 Message-ID: <20230613165209.3121038-1-andrew.cooper3@citrix.com> X-Mailer: git-send-email 2.30.2 MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit This is disliked specifically by MISRA, but it also interferes with code legibility by hiding control flow. Expand and drop it. * Drop redundant "rc = rc" assignment * Rework gnttab_copy_buf() to be simpler by dropping the rc variable No functional change. Signed-off-by: Andrew Cooper --- CC: Jan Beulich CC: Roger Pau Monné CC: Wei Liu CC: Stefano Stabellini CC: Julien Grall CC: Volodymyr Babchuk CC: Bertrand Marquis --- xen/common/grant_table.c | 154 ++++++++++++++++++++++++++++----------- 1 file changed, 111 insertions(+), 43 deletions(-) diff --git a/xen/common/grant_table.c b/xen/common/grant_table.c index d87e58a53d86..b62f40f2543c 100644 --- a/xen/common/grant_table.c +++ b/xen/common/grant_table.c @@ -270,13 +270,6 @@ struct gnttab_unmap_common { #define GNTTAB_UNMAP_BATCH_SIZE 32 -#define PIN_FAIL(_lbl, _rc, _f, _a...) \ - do { \ - gdprintk(XENLOG_WARNING, _f, ## _a ); \ - rc = (_rc); \ - goto _lbl; \ - } while ( 0 ) - /* * Tracks a mapping of another domain's grant reference. Each domain has a * table of these, indexes into which are returned as a 'mapping handle'. @@ -785,9 +778,13 @@ static int _set_status_v1(const grant_entry_header_t *shah, /* If not already pinned, check the grant domid and type. */ if ( !act->pin && (((scombo.flags & mask) != GTF_permit_access) || (scombo.domid != ldomid)) ) - PIN_FAIL(done, GNTST_general_error, + { + gdprintk(XENLOG_WARNING, "Bad flags (%x) or dom (%d); expected d%d\n", scombo.flags, scombo.domid, ldomid); + rc = GNTST_general_error; + goto done; + } new = scombo; new.flags |= GTF_reading; @@ -796,8 +793,12 @@ static int _set_status_v1(const grant_entry_header_t *shah, { new.flags |= GTF_writing; if ( unlikely(scombo.flags & GTF_readonly) ) - PIN_FAIL(done, GNTST_general_error, + { + gdprintk(XENLOG_WARNING, "Attempt to write-pin a r/o grant entry\n"); + rc = GNTST_general_error; + goto done; + } } prev.raw = guest_cmpxchg(rd, raw_shah, scombo.raw, new.raw); @@ -805,8 +806,11 @@ static int _set_status_v1(const grant_entry_header_t *shah, break; if ( retries++ == 4 ) - PIN_FAIL(done, GNTST_general_error, - "Shared grant entry is unstable\n"); + { + gdprintk(XENLOG_WARNING, "Shared grant entry is unstable\n"); + rc = GNTST_general_error; + goto done; + } scombo = prev; } @@ -840,9 +844,13 @@ static int _set_status_v2(const grant_entry_header_t *shah, ((((scombo.flags & mask) != GTF_permit_access) && (mapflag || ((scombo.flags & mask) != GTF_transitive))) || (scombo.domid != ldomid)) ) - PIN_FAIL(done, GNTST_general_error, + { + gdprintk(XENLOG_WARNING, "Bad flags (%x) or dom (%d); expected d%d, flags %x\n", scombo.flags, scombo.domid, ldomid, mask); + rc = GNTST_general_error; + goto done; + } if ( readonly ) { @@ -851,8 +859,12 @@ static int _set_status_v2(const grant_entry_header_t *shah, else { if ( unlikely(scombo.flags & GTF_readonly) ) - PIN_FAIL(done, GNTST_general_error, + { + gdprintk(XENLOG_WARNING, "Attempt to write-pin a r/o grant entry\n"); + rc = GNTST_general_error; + goto done; + } *status |= GTF_reading | GTF_writing; } @@ -870,9 +882,11 @@ static int _set_status_v2(const grant_entry_header_t *shah, (!readonly && (scombo.flags & GTF_readonly)) ) { gnttab_clear_flags(rd, GTF_writing | GTF_reading, status); - PIN_FAIL(done, GNTST_general_error, + gdprintk(XENLOG_WARNING, "Unstable flags (%x) or dom (%d); expected d%d (r/w: %d)\n", scombo.flags, scombo.domid, ldomid, !readonly); + rc = GNTST_general_error; + goto done; } } else @@ -880,8 +894,9 @@ static int _set_status_v2(const grant_entry_header_t *shah, if ( unlikely(scombo.flags & GTF_readonly) ) { gnttab_clear_flags(rd, GTF_writing, status); - PIN_FAIL(done, GNTST_general_error, - "Unstable grant readonly flag\n"); + gdprintk(XENLOG_WARNING, "Unstable grant readonly flag\n"); + rc = GNTST_general_error; + goto done; } } @@ -1050,8 +1065,12 @@ map_grant_ref( /* Bounds check on the grant ref */ ref = op->ref; if ( unlikely(ref >= nr_grant_entries(rgt))) - PIN_FAIL(unlock_out, GNTST_bad_gntref, "Bad ref %#x for d%d\n", + { + gdprintk(XENLOG_WARNING, "Bad ref %#x for d%d\n", ref, rgt->domain->domain_id); + rc = GNTST_bad_gntref; + goto unlock_out; + } /* This call also ensures the above check cannot be passed speculatively */ shah = shared_entry_header(rgt, ref); @@ -1062,9 +1081,13 @@ map_grant_ref( ((act->domid != ld->domain_id) || (act->pin & GNTPIN_incr2oflow_mask(pin_incr)) || (act->is_sub_page)) ) - PIN_FAIL(act_release_out, GNTST_general_error, + { + gdprintk(XENLOG_WARNING, "Bad domain (%d != %d), or risk of counter overflow %08x, or subpage %d\n", act->domid, ld->domain_id, act->pin, act->is_sub_page); + rc = GNTST_general_error; + goto act_release_out; + } /* Make sure we do not access memory speculatively */ status = evaluate_nospec(rgt->gt_version == 1) ? &shah->flags @@ -1465,9 +1488,13 @@ unmap_common( if ( op->dev_bus_addr && (flags & GNTMAP_device_map) && unlikely(op->dev_bus_addr != mfn_to_maddr(act->mfn)) ) - PIN_FAIL(act_release_out, GNTST_bad_dev_addr, + { + gdprintk(XENLOG_WARNING, "Bus address doesn't match gntref (%"PRIx64" != %"PRIpaddr")\n", op->dev_bus_addr, mfn_to_maddr(act->mfn)); + rc = GNTST_bad_dev_addr; + goto act_release_out; + } if ( op->host_addr && (flags & GNTMAP_host_map) ) { @@ -2560,8 +2587,11 @@ acquire_grant_for_copy( grant_read_lock(rgt); if ( unlikely(gref >= nr_grant_entries(rgt)) ) - PIN_FAIL(gt_unlock_out, GNTST_bad_gntref, - "Bad grant reference %#x\n", gref); + { + gdprintk(XENLOG_WARNING, "Bad grant reference %#x\n", gref); + rc = GNTST_bad_gntref; + goto gt_unlock_out; + } /* This call also ensures the above check cannot be passed speculatively */ shah = shared_entry_header(rgt, gref); @@ -2571,9 +2601,13 @@ acquire_grant_for_copy( if ( act->pin && ((act->domid != ldom) || (act->pin & GNTPIN_incr2oflow_mask(pin_incr))) ) - PIN_FAIL(unlock_out, GNTST_general_error, + { + gdprintk(XENLOG_WARNING, "Bad domain (%d != %d), or risk of counter overflow %08x\n", act->domid, ldom, act->pin); + rc = GNTST_general_error; + goto unlock_out; + } if ( evaluate_nospec(rgt->gt_version == 1) ) { @@ -2596,16 +2630,24 @@ acquire_grant_for_copy( goto unlock_out; if ( !allow_transitive ) - PIN_FAIL(unlock_out_clear, GNTST_general_error, + { + gdprintk(XENLOG_WARNING, "transitive grant when transitivity not allowed\n"); + rc = GNTST_general_error; + goto unlock_out_clear; + } trans_domid = sha2->transitive.trans_domid; trans_gref = sha2->transitive.gref; barrier(); /* Stop the compiler from re-loading trans_domid from shared memory */ if ( trans_domid == rd->domain_id ) - PIN_FAIL(unlock_out_clear, GNTST_general_error, + { + gdprintk(XENLOG_WARNING, "transitive grants cannot be self-referential\n"); + rc = GNTST_general_error; + goto unlock_out_clear; + } /* * We allow the trans_domid == ldom case, which corresponds to a @@ -2618,9 +2660,13 @@ acquire_grant_for_copy( /* We need to leave the rrd locked during the grant copy. */ td = rcu_lock_domain_by_id(trans_domid); if ( td == NULL ) - PIN_FAIL(unlock_out_clear, GNTST_general_error, + { + gdprintk(XENLOG_WARNING, "transitive grant referenced bad domain %d\n", trans_domid); + rc = GNTST_general_error; + goto unlock_out_clear; + } /* * acquire_grant_for_copy() will take the lock on the remote table, @@ -2928,8 +2974,11 @@ static int gnttab_copy_claim_buf(const struct gnttab_copy *op, rc = get_paged_frame(ptr->u.gmfn, &buf->mfn, &buf->page, buf->read_only, buf->domain); if ( rc != GNTST_okay ) - PIN_FAIL(out, rc, + { + gdprintk(XENLOG_WARNING, "source frame %"PRI_xen_pfn" invalid\n", ptr->u.gmfn); + goto out; + } buf->ptr.u.gmfn = ptr->u.gmfn; buf->ptr.offset = 0; @@ -2972,25 +3021,29 @@ static int gnttab_copy_buf(const struct gnttab_copy *op, struct gnttab_copy_buf *dest, const struct gnttab_copy_buf *src) { - int rc; - if ( ((op->source.offset + op->len) > PAGE_SIZE) || ((op->dest.offset + op->len) > PAGE_SIZE) ) - PIN_FAIL(out, GNTST_bad_copy_arg, "copy beyond page area\n"); + { + gdprintk(XENLOG_WARNING, "copy beyond page area\n"); + return GNTST_bad_copy_arg; + } if ( op->source.offset < src->ptr.offset || op->source.offset + op->len > src->ptr.offset + src->len ) - PIN_FAIL(out, GNTST_general_error, + { + gdprintk(XENLOG_WARNING, "copy source out of bounds: %d < %d || %d > %d\n", - op->source.offset, src->ptr.offset, - op->len, src->len); + op->source.offset, src->ptr.offset, op->len, src->len); + return GNTST_general_error; + } if ( op->dest.offset < dest->ptr.offset || op->dest.offset + op->len > dest->ptr.offset + dest->len ) - PIN_FAIL(out, GNTST_general_error, - "copy dest out of bounds: %d < %d || %d > %d\n", - op->dest.offset, dest->ptr.offset, - op->len, dest->len); + { + gdprintk(XENLOG_WARNING, "copy dest out of bounds: %d < %d || %d > %d\n", + op->dest.offset, dest->ptr.offset, op->len, dest->len); + return GNTST_general_error; + } /* Make sure the above checks are not bypassed speculatively */ block_speculation(); @@ -2998,9 +3051,8 @@ static int gnttab_copy_buf(const struct gnttab_copy *op, memcpy(dest->virt + op->dest.offset, src->virt + op->source.offset, op->len); gnttab_mark_dirty(dest->domain, dest->mfn); - rc = GNTST_okay; - out: - return rc; + + return GNTST_okay; } static int gnttab_copy_one(const struct gnttab_copy *op, @@ -3373,9 +3425,17 @@ swap_grant_ref(grant_ref_t ref_a, grant_ref_t ref_b) /* Bounds check on the grant refs */ if ( unlikely(ref_a >= nr_grant_entries(d->grant_table))) - PIN_FAIL(out, GNTST_bad_gntref, "Bad ref-a %#x\n", ref_a); + { + gdprintk(XENLOG_WARNING, "Bad ref-a %#x\n", ref_a); + rc = GNTST_bad_gntref; + goto out; + } if ( unlikely(ref_b >= nr_grant_entries(d->grant_table))) - PIN_FAIL(out, GNTST_bad_gntref, "Bad ref-b %#x\n", ref_b); + { + gdprintk(XENLOG_WARNING, "Bad ref-b %#x\n", ref_b); + rc = GNTST_bad_gntref; + goto out; + } /* Make sure the above checks are not bypassed speculatively */ block_speculation(); @@ -3386,11 +3446,19 @@ swap_grant_ref(grant_ref_t ref_a, grant_ref_t ref_b) act_a = active_entry_acquire(gt, ref_a); if ( act_a->pin ) - PIN_FAIL(out, GNTST_eagain, "ref a %#x busy\n", ref_a); + { + gdprintk(XENLOG_WARNING, "ref a %#x busy\n", ref_a); + rc = GNTST_eagain; + goto out; + } act_b = active_entry_acquire(gt, ref_b); if ( act_b->pin ) - PIN_FAIL(out, GNTST_eagain, "ref b %#x busy\n", ref_b); + { + gdprintk(XENLOG_WARNING, "ref b %#x busy\n", ref_b); + rc = GNTST_eagain; + goto out; + } if ( evaluate_nospec(gt->gt_version == 1) ) { -- 2.30.2 From xen-devel-bounces@lists.xenproject.org Tue Jun 13 17:00:42 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 17:00:42 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548315.856205 (Exim 4.92) (envelope-from ) id 1q97Ne-0002QG-QB; Tue, 13 Jun 2023 17:00:30 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548315.856205; Tue, 13 Jun 2023 17:00:30 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q97Ne-0002Q9-MQ; Tue, 13 Jun 2023 17:00:30 +0000 Received: by outflank-mailman (input) for mailman id 548315; Tue, 13 Jun 2023 17:00:29 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q97Nd-0002Q2-In for xen-devel@lists.xenproject.org; Tue, 13 Jun 2023 17:00:29 +0000 Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.129.124]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id cb59f281-0a0b-11ee-b232-6b7b168915f2; Tue, 13 Jun 2023 19:00:27 +0200 (CEST) Received: from mail-wm1-f70.google.com (mail-wm1-f70.google.com [209.85.128.70]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-249-8gD7JozFMeyehGXjVYsXEg-1; Tue, 13 Jun 2023 13:00:23 -0400 Received: by mail-wm1-f70.google.com with SMTP id 5b1f17b1804b1-3f7e4dc0fe5so37055575e9.3 for ; Tue, 13 Jun 2023 10:00:21 -0700 (PDT) Received: from ?IPV6:2003:cb:c710:ff00:1a06:80f:733a:e8c6? (p200300cbc710ff001a06080f733ae8c6.dip0.t-ipconnect.de. [2003:cb:c710:ff00:1a06:80f:733a:e8c6]) by smtp.gmail.com with ESMTPSA id d17-20020adffbd1000000b0030fb4b55c13sm9792662wrs.96.2023.06.13.10.00.18 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Tue, 13 Jun 2023 10:00:19 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: cb59f281-0a0b-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1686675626; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=N+LdwBzt0uYokh007O/q+HMXZaTU5MnHMEEMsHFG/3Y=; b=YbYZVOGrrzva336Ye3pwQub+T8sgsrlggRTyI0hiLhdsvrmWwcneTHVL4EAYZUpT0J+TXm an6VEUUEq+kdDOXHvSP5hIwAA+6nmsqtD8HuAsobFhzVF8bOZyjhxjWM/19MqL/C8F0pkx d8YfmwayON96FzPu2nwo9Ln21v/Q3/c= X-MC-Unique: 8gD7JozFMeyehGXjVYsXEg-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686675621; x=1689267621; h=content-transfer-encoding:in-reply-to:organization:from:references :cc:to:content-language:subject:user-agent:mime-version:date :message-id:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=N+LdwBzt0uYokh007O/q+HMXZaTU5MnHMEEMsHFG/3Y=; b=j8AnThlMfhdoSNXAfdHA1QSscODwSC6zs5nJeZY7zMrnDnlJXa9eJVsA1FDubt7u4j UBbltKm6Rzt10liXjuTt/MnrSmPCKjldhbAB42+qJCgOcEeRZhKUXV8iFev0FimxHswn rNWeZ0MQux0X9DB8nALEZU90kF4g2eF39xeh+JofOQu+1/J8FGFS2z6+RGTPTVErdJuf z7lJj9ZyDr31hRXL03E59L/AUcSlNiF9mpydv4KDKB9/eaZi77E0WawViaXfY8zrwfK8 TVpM2MgQs4O+I8sXsXoKMs6plWyCVVZ2cohiDPzZIS1lXrEupV2NQ1W0VrxIH8SYsWu8 yrWg== X-Gm-Message-State: AC+VfDwoXlyu+iKXzAXR7q+6OgHxY0AbXFJbE4RE61Fl0+KIF8vRrTwN yCDsjC7cPTKt6uqyp+YiSKedes5VAYmj0mP5RPfzfzvzzsJnww8YPYxUqBmydN34S3VBmb/+CnG LfTg3cBh8W7WirV2XTpFwdJ8/olY= X-Received: by 2002:a05:600c:2041:b0:3f8:d0e7:daed with SMTP id p1-20020a05600c204100b003f8d0e7daedmr1651707wmg.19.1686675620853; Tue, 13 Jun 2023 10:00:20 -0700 (PDT) X-Google-Smtp-Source: ACHHUZ5DqYDEwXY1aS+T8oevGZM1GGzvu3C6CrpD97OsPgkk4IOclN0QORetIFLX25l+OyKcdC2cGA== X-Received: by 2002:a05:600c:2041:b0:3f8:d0e7:daed with SMTP id p1-20020a05600c204100b003f8d0e7daedmr1651659wmg.19.1686675620442; Tue, 13 Jun 2023 10:00:20 -0700 (PDT) Message-ID: <8a053da2-0f26-82ca-f437-9b9de11d4584@redhat.com> Date: Tue, 13 Jun 2023 19:00:17 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v9 02/42] mm: Move pte/pmd_mkwrite() callers with no VMA to _novma() To: "Edgecombe, Rick P" , "rppt@kernel.org" Cc: "akpm@linux-foundation.org" , "tglx@linutronix.de" , "linux-arch@vger.kernel.org" , "kcc@google.com" , "Lutomirski, Andy" , "nadav.amit@gmail.com" , "kirill.shutemov@linux.intel.com" , "Schimpe, Christina" , "linux-s390@vger.kernel.org" , "Torvalds, Linus" , "peterz@infradead.org" , "corbet@lwn.net" , "linux-kernel@vger.kernel.org" , "jannh@google.com" , "dethoma@microsoft.com" , "broonie@kernel.org" , "mike.kravetz@oracle.com" , "pavel@ucw.cz" , "bp@alien8.de" , "rdunlap@infradead.org" , "linux-api@vger.kernel.org" , "john.allen@amd.com" , "arnd@arndb.de" , "jamorris@linux.microsoft.com" , "bsingharora@gmail.com" , "x86@kernel.org" , "oleg@redhat.com" , "fweimer@redhat.com" , "keescook@chromium.org" , "gorcunov@gmail.com" , "andrew.cooper3@citrix.com" , "xen-devel@lists.xenproject.org" , "hpa@zytor.com" , "mingo@redhat.com" , "szabolcs.nagy@arm.com" , "hjl.tools@gmail.com" , "linux-arm-kernel@lists.infradead.org" , "debug@rivosinc.com" , "linux-mm@kvack.org" , "Syromiatnikov, Eugene" , "Yang, Weijiang" , "linux-doc@vger.kernel.org" , "dave.hansen@linux.intel.com" , "Eranian, Stephane" References: <20230613001108.3040476-1-rick.p.edgecombe@intel.com> <20230613001108.3040476-3-rick.p.edgecombe@intel.com> <20230613074428.GS52412@kernel.org> <21b0342854b067c241206f422bc5b3254b43c7f5.camel@intel.com> From: David Hildenbrand Organization: Red Hat In-Reply-To: <21b0342854b067c241206f422bc5b3254b43c7f5.camel@intel.com> X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Language: en-US Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit On 13.06.23 18:19, Edgecombe, Rick P wrote: > On Tue, 2023-06-13 at 10:44 +0300, Mike Rapoport wrote: >>> Previous patches have done the first step, so next move the callers >>> that >>> don't have a VMA to pte_mkwrite_novma(). Also do the same for >> >> I hear x86 maintainers asking to drop "previous patches" ;-) >> >> Maybe >> This is the second step of the conversion that moves the callers ... > > Really? I've not heard that. Just a strong aversion to "this patch". > I've got feedback to say "previous patches" and not "the last patch" so > it doesn't get stale. I guess it could be "previous changes". Talking about patches make sense when discussing literal patches sent to the mailing list. In the git log, it's commit, and "future commits" or "follow-up work". Yes, we use "patches" all of the time in commit logs, especially when we include the cover letter in the commit message (as done frequently in the -mm tree). -- Cheers, David / dhildenb From xen-devel-bounces@lists.xenproject.org Tue Jun 13 17:16:53 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 17:16:53 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548322.856216 (Exim 4.92) (envelope-from ) id 1q97dK-00044F-8E; Tue, 13 Jun 2023 17:16:42 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548322.856216; Tue, 13 Jun 2023 17:16:42 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q97dK-000448-5O; Tue, 13 Jun 2023 17:16:42 +0000 Received: by outflank-mailman (input) for mailman id 548322; Tue, 13 Jun 2023 17:16:40 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q97dI-00043i-NN; Tue, 13 Jun 2023 17:16:40 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q97dI-0007vk-Ke; Tue, 13 Jun 2023 17:16:40 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q97dI-0002PB-5n; Tue, 13 Jun 2023 17:16:40 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q97dI-0002Eo-5K; Tue, 13 Jun 2023 17:16:40 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=dg4UQpkAxcOBUD5y6X1ywjO9COyRBJKZbM16Rw77ljU=; b=HuAIgBKP8wkev9ip58RCV/IUjz 4xiG+zmyC8iZoVWEUMTSbcu/r42sX1lD+UPTLmbCzdEsQq4vx3BDkrvwTJW+H/oMAW3D1/kYKJbDt ZbQT8q0T/EpbsDXyEcI06BFFdetk1KWZOjOkBSC/LkAkIA0lsa+d49zpZzHsrJ66yiK4=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [libvirt test] 181401: trouble: blocked/broken/pass X-Osstest-Failures: libvirt:build-armhf::broken:regression libvirt:build-armhf:host-install(4):broken:regression libvirt:build-armhf-libvirt:build-check(1):blocked:nonblocking libvirt:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking libvirt:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking libvirt:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking libvirt:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking libvirt:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking libvirt:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking libvirt:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking libvirt:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt:saverestore-support-check:fail:nonblocking libvirt:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking libvirt:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-qcow2:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-qcow2:saverestore-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking libvirt:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking X-Osstest-Versions-This: libvirt=a7ee9eac835324854483a231d7931b9329f259bc X-Osstest-Versions-That: libvirt=97f0bd00b4d055f2329392d2f8b7fe566fc65901 From: osstest service owner Date: Tue, 13 Jun 2023 17:16:40 +0000 flight 181401 libvirt real [real] http://logs.test-lab.xenproject.org/osstest/logs/181401/ Failures and problems with tests :-( Tests which did not succeed and are blocking, including tests which could not be run: build-armhf broken build-armhf 4 host-install(4) broken REGR. vs. 181374 Tests which did not succeed, but are not blocking: build-armhf-libvirt 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-raw 1 build-check(1) blocked n/a test-armhf-armhf-libvirt 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-qcow2 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-i386-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-i386-libvirt 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt 15 migrate-support-check fail never pass test-arm64-arm64-libvirt 16 saverestore-support-check fail never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-i386-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-qcow2 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-qcow2 15 saverestore-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-check fail never pass version targeted for testing: libvirt a7ee9eac835324854483a231d7931b9329f259bc baseline version: libvirt 97f0bd00b4d055f2329392d2f8b7fe566fc65901 Last test of basis 181374 2023-06-11 04:18:49 Z 2 days Testing same since 181401 2023-06-13 04:20:27 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Ján Tomko Michal Privoznik jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf broken build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt blocked build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-i386-libvirt-xsm pass test-amd64-amd64-libvirt pass test-arm64-arm64-libvirt pass test-armhf-armhf-libvirt blocked test-amd64-i386-libvirt pass test-amd64-amd64-libvirt-pair pass test-amd64-i386-libvirt-pair pass test-arm64-arm64-libvirt-qcow2 pass test-armhf-armhf-libvirt-qcow2 blocked test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw blocked test-amd64-i386-libvirt-raw pass test-amd64-amd64-libvirt-vhd pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary broken-job build-armhf broken broken-step build-armhf host-install(4) Not pushing. ------------------------------------------------------------ commit a7ee9eac835324854483a231d7931b9329f259bc Author: Ján Tomko Date: Wed Jun 7 17:40:23 2023 +0200 conf: virtiofs: validate that the target dir is unique even for hotplug https://bugzilla.redhat.com/show_bug.cgi?id=2171384 Signed-off-by: Ján Tomko Reviewed-by: Martin Kletzander commit 063e8b9d621b2bce5560626c70e736d685f77b02 Author: Michal Privoznik Date: Thu Mar 23 09:15:35 2023 +0100 meson: Use dependency().found() instead of conf.has() So far this change alone doesn't make much sense, but prepares code for upcoming change. Unfortunately, some conf.has() statements have to stay, because there's no corresponding dependency(). But that's okay. Signed-off-by: Michal Privoznik Reviewed-by: Erik Skultety commit 2ef5876e2bcd6e117eedff4f14c2125fa05c99d9 Author: Michal Privoznik Date: Thu Mar 23 09:21:17 2023 +0100 meson: numactl_dep switch to dependency() The pkg-config file to libnuma was introduced in 2.0.12 release (though the comment mistakenly claims 2.0.14 version). Every supported distro ships at least this version, and thus we can switch meson detection to dependency(). Signed-off-by: Michal Privoznik Reviewed-by: Erik Skultety commit dffeef89efc2ed1668cb485d6c3e67ef27b824e8 Author: Michal Privoznik Date: Thu Mar 23 09:13:52 2023 +0100 meson: attr_dep switch to dependency() The pkg-config file to libattr was introduced in 2.4.48 release. Now that every supported distro ships at least this version, we can switch meson detection to dependency(). Signed-off-by: Michal Privoznik Reviewed-by: Erik Skultety commit 63ca3e656c0e8499478cad72cfa70a4e46321812 Author: Michal Privoznik Date: Thu Mar 23 09:12:52 2023 +0100 meson: acl_dep switch to dependency() The pkg-config file to libacl was introduced in 2.2.53 release. Now that every supported distro ships at least this version, we can switch meson detection to dependency(). Signed-off-by: Michal Privoznik Reviewed-by: Erik Skultety From xen-devel-bounces@lists.xenproject.org Tue Jun 13 17:22:28 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 17:22:28 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548329.856225 (Exim 4.92) (envelope-from ) id 1q97ik-0005Vs-SD; Tue, 13 Jun 2023 17:22:18 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548329.856225; Tue, 13 Jun 2023 17:22:18 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q97ik-0005Vl-PS; Tue, 13 Jun 2023 17:22:18 +0000 Received: by outflank-mailman (input) for mailman id 548329; Tue, 13 Jun 2023 17:22:17 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q97ij-0005Vb-MG; Tue, 13 Jun 2023 17:22:17 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q97ij-00081I-Jc; Tue, 13 Jun 2023 17:22:17 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q97ii-0002hH-VP; Tue, 13 Jun 2023 17:22:17 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q97ii-0005Id-Uy; Tue, 13 Jun 2023 17:22:16 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=44ROuZU60P7tTi9YU/Nz6naHUjLHimdFv/2FaAZmgIo=; b=pvX2m7xzYX7d5xYCYWnYrkI3MH HY7Swp7P1K0vBeYVJL8hlYJKRtZoQ02JCHiF2NcMpWlxR/bjJ/Skhzz8OgAnzfuoTEhNkOPcxcQzU OlqIa45Y2/75dNISnC9RHx6eJrRPPDfZkD843Vy2/nFWXpRRVJlImAthhg81vY4qetCM=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [linux-linus test] 181405: regressions - FAIL X-Osstest-Failures: linux-linus:test-armhf-armhf-xl-credit1:xen-boot:fail:regression linux-linus:build-arm64-pvops:kernel-build:fail:regression linux-linus:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking linux-linus:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking linux-linus:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking linux-linus:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking linux-linus:test-arm64-arm64-examine:build-check(1):blocked:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking linux-linus:test-arm64-arm64-xl:build-check(1):blocked:nonblocking linux-linus:test-armhf-armhf-xl-multivcpu:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-vhd:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking linux-linus:test-armhf-armhf-xl-credit2:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking linux-linus:test-armhf-armhf-examine:reboot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-arndale:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-raw:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-qcow2:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-rtds:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-raw:migrate-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-qcow2:migrate-support-check:fail:nonblocking X-Osstest-Versions-This: linux=fb054096aea0576f0c0a61c598e5e9676443ee86 X-Osstest-Versions-That: linux=6c538e1adbfc696ac4747fb10d63e704344f763d From: osstest service owner Date: Tue, 13 Jun 2023 17:22:16 +0000 flight 181405 linux-linus real [real] http://logs.test-lab.xenproject.org/osstest/logs/181405/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: test-armhf-armhf-xl-credit1 8 xen-boot fail REGR. vs. 180278 build-arm64-pvops 6 kernel-build fail REGR. vs. 180278 Tests which did not succeed, but are not blocking: test-arm64-arm64-xl-credit1 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit2 1 build-check(1) blocked n/a test-arm64-arm64-xl-thunderx 1 build-check(1) blocked n/a test-arm64-arm64-xl-vhd 1 build-check(1) blocked n/a test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a test-arm64-arm64-examine 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-raw 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-xsm 1 build-check(1) blocked n/a test-arm64-arm64-xl 1 build-check(1) blocked n/a test-armhf-armhf-xl-multivcpu 8 xen-boot fail like 180278 test-armhf-armhf-xl-vhd 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 180278 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 180278 test-armhf-armhf-xl-credit2 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 180278 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 180278 test-armhf-armhf-examine 8 reboot fail like 180278 test-armhf-armhf-libvirt 8 xen-boot fail like 180278 test-armhf-armhf-xl-arndale 8 xen-boot fail like 180278 test-armhf-armhf-libvirt-raw 8 xen-boot fail like 180278 test-armhf-armhf-libvirt-qcow2 8 xen-boot fail like 180278 test-armhf-armhf-xl 8 xen-boot fail like 180278 test-armhf-armhf-xl-rtds 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 180278 test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-amd64-libvirt-raw 14 migrate-support-check fail never pass test-amd64-amd64-libvirt-qcow2 14 migrate-support-check fail never pass version targeted for testing: linux fb054096aea0576f0c0a61c598e5e9676443ee86 baseline version: linux 6c538e1adbfc696ac4747fb10d63e704344f763d Last test of basis 180278 2023-04-16 19:41:46 Z 57 days Failing since 180281 2023-04-17 06:24:36 Z 57 days 109 attempts Testing same since 181397 2023-06-13 01:12:56 Z 0 days 2 attempts ------------------------------------------------------------ 2686 people touched revisions under test, not listing them all jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops fail build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl blocked test-armhf-armhf-xl fail test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm blocked test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm blocked test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-freebsd11-amd64 pass test-amd64-amd64-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale fail test-amd64-amd64-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 blocked test-armhf-armhf-xl-credit1 fail test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 blocked test-armhf-armhf-xl-credit2 fail test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine blocked test-armhf-armhf-examine fail test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt fail test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu fail test-amd64-amd64-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-amd64-pygrub pass test-amd64-amd64-libvirt-qcow2 pass test-armhf-armhf-libvirt-qcow2 fail test-amd64-amd64-libvirt-raw pass test-arm64-arm64-libvirt-raw blocked test-armhf-armhf-libvirt-raw fail test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds fail test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-arm64-arm64-xl-thunderx blocked test-amd64-amd64-examine-uefi pass test-amd64-amd64-xl-vhd pass test-arm64-arm64-xl-vhd blocked test-armhf-armhf-xl-vhd fail ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 341254 lines long.) From xen-devel-bounces@lists.xenproject.org Tue Jun 13 17:32:56 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 17:32:56 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548336.856235 (Exim 4.92) (envelope-from ) id 1q97sm-0007Fn-RY; Tue, 13 Jun 2023 17:32:40 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548336.856235; Tue, 13 Jun 2023 17:32:40 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q97sm-0007Fg-Oq; Tue, 13 Jun 2023 17:32:40 +0000 Received: by outflank-mailman (input) for mailman id 548336; Tue, 13 Jun 2023 17:32:39 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q97sl-0007Fa-NC for xen-devel@lists.xenproject.org; Tue, 13 Jun 2023 17:32:39 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q97sl-0008CP-6k; Tue, 13 Jun 2023 17:32:39 +0000 Received: from 54-240-197-238.amazon.com ([54.240.197.238] helo=[192.168.9.244]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1q97sk-0004z0-VH; Tue, 13 Jun 2023 17:32:39 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=fabbaoZWSW6cElsdjmySxu1cmpNCrxHv6EC737CLbtI=; b=xcXlLflfbksJrfUilDAUKE/Hz7 z5Gh2ZrcXwF9E5D0uMgjlyiIMEznMFxxP268FgNnp2xBWlaILFZz7hhodM4w5XArtlANvItyslhna AokvczEzz/cgOGOaqDnMxgbh7UYGEmSAu7KokKX4erFj6NsT6yU2Wj09gN4AeKHJZ9Rg=; Message-ID: <5967fb0f-0647-c8ff-d485-33e33266e9f6@xen.org> Date: Tue, 13 Jun 2023 18:32:36 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH] xen/gnttab: Purge PIN_FAIL() Content-Language: en-US To: Andrew Cooper , Xen-devel Cc: Jan Beulich , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , Stefano Stabellini , Volodymyr Babchuk , Bertrand Marquis References: <20230613165209.3121038-1-andrew.cooper3@citrix.com> From: Julien Grall In-Reply-To: <20230613165209.3121038-1-andrew.cooper3@citrix.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi, On 13/06/2023 17:52, Andrew Cooper wrote: > This is disliked specifically by MISRA, but it also interferes with code > legibility by hiding control flow. Expand and drop it. > > * Drop redundant "rc = rc" assignment > * Rework gnttab_copy_buf() to be simpler by dropping the rc variable > > No functional change. > > Signed-off-by: Andrew Cooper Reviewed-by: Julien Grall Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Tue Jun 13 17:34:57 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 17:34:57 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548341.856245 (Exim 4.92) (envelope-from ) id 1q97uy-0007nk-8J; Tue, 13 Jun 2023 17:34:56 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548341.856245; Tue, 13 Jun 2023 17:34:56 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q97uy-0007nd-5f; Tue, 13 Jun 2023 17:34:56 +0000 Received: by outflank-mailman (input) for mailman id 548341; Tue, 13 Jun 2023 17:34:54 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q97uw-0007nV-S0 for xen-devel@lists.xenproject.org; Tue, 13 Jun 2023 17:34:54 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q97uw-0008ET-D7; Tue, 13 Jun 2023 17:34:54 +0000 Received: from 54-240-197-238.amazon.com ([54.240.197.238] helo=[192.168.9.244]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1q97uw-0005BM-5T; Tue, 13 Jun 2023 17:34:54 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To: References:Cc:To:From:Subject:MIME-Version:Date:Message-ID; bh=CQXTbn2qeDO7yi9YXlo4Xz4lhJzkzL7bHeuCNXUzeQE=; b=QR5S+tkI2NqU0BShGpqGnI35Kd 6VHuI4YTYxsoFfbq43fYO9DOkKYOW5HSRdn8Q+X/pCEWXKx5nipZWfZzJSCz1w6VVxSqV+sFPaE81 4ctoXb1+52rbzzmqaEbteogUwZsweMeT6VWwrDCNlWhjws24cM4I1DiN3hrnB+in6EXQ=; Message-ID: <1e4f07d9-f9cd-b34b-0e63-5f497c613584@xen.org> Date: Tue, 13 Jun 2023 18:34:51 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH] xen/gnttab: Purge PIN_FAIL() Content-Language: en-US From: Julien Grall To: Andrew Cooper , Xen-devel Cc: Jan Beulich , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , Stefano Stabellini , Volodymyr Babchuk , Bertrand Marquis References: <20230613165209.3121038-1-andrew.cooper3@citrix.com> <5967fb0f-0647-c8ff-d485-33e33266e9f6@xen.org> In-Reply-To: <5967fb0f-0647-c8ff-d485-33e33266e9f6@xen.org> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit On 13/06/2023 18:32, Julien Grall wrote: > On 13/06/2023 17:52, Andrew Cooper wrote: >> This is disliked specifically by MISRA, but it also interferes with code >> legibility by hiding control flow.  Expand and drop it. > >>   * Drop redundant "rc = rc" assignment >>   * Rework gnttab_copy_buf() to be simpler by dropping the rc variable >> >> No functional change. >> >> Signed-off-by: Andrew Cooper > > Reviewed-by: Julien Grall Just one remark. It would be useful to mention the MISRA rule. This helps to find which one you are talking about. Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Tue Jun 13 17:39:25 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 17:39:25 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548348.856255 (Exim 4.92) (envelope-from ) id 1q97z8-0008U6-Rw; Tue, 13 Jun 2023 17:39:14 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548348.856255; Tue, 13 Jun 2023 17:39:14 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q97z8-0008Tz-PO; Tue, 13 Jun 2023 17:39:14 +0000 Received: by outflank-mailman (input) for mailman id 548348; Tue, 13 Jun 2023 17:39:13 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q97z7-0008Tt-6e for xen-devel@lists.xenproject.org; Tue, 13 Jun 2023 17:39:13 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q97z6-0008KR-MZ; Tue, 13 Jun 2023 17:39:12 +0000 Received: from 54-240-197-238.amazon.com ([54.240.197.238] helo=[192.168.9.244]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1q97z6-0005Nu-F1; Tue, 13 Jun 2023 17:39:12 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=lbPowdH5rNaqZM/MpE2Lq8oKXP0yctx1oeAc8gnyk7U=; b=ieeiCsId9fBhzsnfdx6rWRTHPf 7EJpLe1xxmSkozUch49H0spp1TlBLI8XxhhwC/khB6+sEQw8nav5lRbDgrxVp4Ill8YNKTta4OewQ +jtq4Mr+ntKUTbHSUNjzOmz/A5v/vGQ19W7hMXCT/Ug6dVES+naK712UaKPEPwMWI9kg=; Message-ID: Date: Tue, 13 Jun 2023 18:39:09 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH] xen/evtchn: Purge ERROR_EXIT{,_DOM}() Content-Language: en-US To: Andrew Cooper , Xen-devel Cc: Jan Beulich , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , Stefano Stabellini , Volodymyr Babchuk , Bertrand Marquis References: <20230613162220.3052184-1-andrew.cooper3@citrix.com> From: Julien Grall In-Reply-To: <20230613162220.3052184-1-andrew.cooper3@citrix.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi, On 13/06/2023 17:22, Andrew Cooper wrote: > These are disliked specifically by MISRA, but they also interfere with code Please explicitly name the rule. > legibility by hiding control flow. Expand and drop them. > > * Rearrange the order of actions to write into rc, then render rc in the > gdprintk(). > * Drop redundant "rc = rc" assignments > * Switch to using %pd for rendering domains > > No functional change. Resulting binary is identical. > > Signed-off-by: Andrew Cooper Reviewed-by: Julien Grall [...] > base-commit: f29363922c1b41310c3d87fd9a861ffa9db9204a I notice you have a few e-mail contain this tag. This is a pretty useful when reviewing patches. Do you know which tool is creating it? Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Tue Jun 13 17:40:38 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 17:40:38 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548353.856266 (Exim 4.92) (envelope-from ) id 1q980S-0001SU-6G; Tue, 13 Jun 2023 17:40:36 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548353.856266; Tue, 13 Jun 2023 17:40:36 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q980S-0001SN-2A; Tue, 13 Jun 2023 17:40:36 +0000 Received: by outflank-mailman (input) for mailman id 548353; Tue, 13 Jun 2023 17:40:34 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q980Q-0001SF-MS for xen-devel@lists.xenproject.org; Tue, 13 Jun 2023 17:40:34 +0000 Received: from mail-lf1-x12e.google.com (mail-lf1-x12e.google.com [2a00:1450:4864:20::12e]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 65444082-0a11-11ee-8611-37d641c3527e; Tue, 13 Jun 2023 19:40:32 +0200 (CEST) Received: by mail-lf1-x12e.google.com with SMTP id 2adb3069b0e04-4f61735676fso7360528e87.2 for ; Tue, 13 Jun 2023 10:40:32 -0700 (PDT) Received: from [192.168.202.197] ([94.75.70.14]) by smtp.gmail.com with ESMTPSA id q14-20020ac2510e000000b004f64fb058f7sm1839175lfb.225.2023.06.13.10.40.30 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 13 Jun 2023 10:40:31 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 65444082-0a11-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686678032; x=1689270032; h=mime-version:user-agent:content-transfer-encoding:references :in-reply-to:date:cc:to:from:subject:message-id:from:to:cc:subject :date:message-id:reply-to; bh=pjXyEOycp7oBYqb+5xaTqmXWZodwhvh2JVz8Dvx1C70=; b=EVwjVaK9+GywCdSi8c0CS4ypNaeRGBJkisrKCYc8E7odOc/gUQJI1wxIh6y5qwAGlg vEYvTHhvmQlNra6hRndsRqE2Biuj6Dlcp8e5Qh9HzTJeJM7rUACcqWr/Cn1VIoqmXsFT xt6kzWEkKtoOYTMDKfh2c7bE7UkWJdxxGjDJfNbDSrcoO36gjIlBI+rCDjhJ/Fb8qvoH HPcdtXlNkbXo8u67aqLS/aPXGEc4pYuxxb+AX6kCUCZ14rlSx3udUd3VyndTJKhrI3CS j4fvgJ/7hB1j1toVffp+eLYy/+JUtjP3NMCqLbQYKcRH1WiA1UYRrIhLQTz8t60XJUCe OOrA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686678032; x=1689270032; h=mime-version:user-agent:content-transfer-encoding:references :in-reply-to:date:cc:to:from:subject:message-id:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=pjXyEOycp7oBYqb+5xaTqmXWZodwhvh2JVz8Dvx1C70=; b=XIPdsb5MEZz3MxffdxcTMmdgv+bavN8Jx9Hv37zQ3wiq2Vwc6/KFtfkBBBamAY/cOf 1ijQiLjtK5O6B/R6EJU1bQRYF3TTI6iXlNF54st3Lt9mgJg48NjZumfTRdAG1tfHCaVc XWbhguNEwqty3t+BPjtjuhY0dmVd3IULGbgwNZD/NzUoBEroKPMV6ocPxkXWLmjSo6Ih aIlDGbyDxbaLa9b2hD4jzl3mYyOFq8eBa4HgqsEC7EEBcR9BFJIUqLifdbPUsMJa3N3U ZSkRXkzCl6ALLVcQLmXlO8e82jdsJBTqVBfMu7HADMwKWM7R7Pu9QWFlyGMOxM8FJI+Y 0bQA== X-Gm-Message-State: AC+VfDx+tYlgcmrmK9AVialA3X7Edxum/W2LbVtJWMO1g25v0pHxTUgP /m5h6W3ee//POo6U9eQCl60= X-Google-Smtp-Source: ACHHUZ7cqtmDGCf/e29aS71EczRPxLn10YLUkisHjyF+jtPnEQcD5sayH+L+elNNc9J7baDA3B1KeA== X-Received: by 2002:a19:3819:0:b0:4f3:b8db:917f with SMTP id f25-20020a193819000000b004f3b8db917fmr5650588lfa.47.1686678031574; Tue, 13 Jun 2023 10:40:31 -0700 (PDT) Message-ID: <8611e975cb4788ef9e06162b6b70dbf509ff2d71.camel@gmail.com> Subject: Re: [PATCH v1 1/8] xen/riscv: make sure that identity mapping isn't bigger then page size From: Oleksii To: Jan Beulich Cc: Andrew Cooper , Bob Eshleman , Alistair Francis , Connor Davis , xen-devel@lists.xenproject.org Date: Tue, 13 Jun 2023 20:40:30 +0300 In-Reply-To: References: <4ad639bed6b8aa6cee34288a7ce154db21d761b5.1686080337.git.oleksii.kurochko@gmail.com> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable User-Agent: Evolution 3.48.3 (3.48.3-1.fc38) MIME-Version: 1.0 On Mon, 2023-06-12 at 09:09 +0200, Jan Beulich wrote: > On 06.06.2023 21:55, Oleksii Kurochko wrote: > > Signed-off-by: Oleksii Kurochko >=20 > Such commits without description are worrying. This may be okay for > entirely trivial and obvious changes, but that's going to be the > exception. >=20 > > --- a/xen/arch/riscv/xen.lds.S > > +++ b/xen/arch/riscv/xen.lds.S > > @@ -20,6 +20,7 @@ SECTIONS > > =C2=A0=C2=A0=C2=A0=C2=A0 . =3D XEN_VIRT_START; > > =C2=A0=C2=A0=C2=A0=C2=A0 _start =3D .; > > =C2=A0=C2=A0=C2=A0=C2=A0 .text : { > > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 _idmap_start =3D .; > > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 _stext =3D .;=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 /* Text section *= / > > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 *(.text.header) > > =C2=A0 > > @@ -35,6 +36,7 @@ SECTIONS > > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 *(.gnu.warning) > > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 . =3D ALIGN(POINTER_AL= IGN); > > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 _etext =3D .;=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 /* End of t= ext section */ > > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 _idmap_end =3D .; > > =C2=A0=C2=A0=C2=A0=C2=A0 } :text >=20 > So this covers all of .text. Why is it expected that .text will be > (and > remain) ... >=20 > > @@ -174,3 +176,10 @@ ASSERT(!SIZEOF(.got),=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0 ".got non-empty") > > =C2=A0ASSERT(!SIZEOF(.got.plt),=C2=A0 ".got.plt non-empty") > > =C2=A0 > > =C2=A0ASSERT(_end - _start <=3D MB(2), "Xen too large for early-boot > > assumptions") > > + > > +/* > > + * We require that Xen is loaded at a page boundary, so this > > ensures that any > > + * code running on the identity map cannot cross a page boundary. > > + */ > > +ASSERT(IS_ALIGNED(_idmap_start, PAGE_SIZE), "_idmap_start should > > be page-aligned") > > +ASSERT(_idmap_end - _idmap_start <=3D PAGE_SIZE, "Identity mapped > > code is larger than a page size") >=20 > ... less than 4k in size? And why is only .text of interest, but not > other sections? An idea was to keep identity mapping as small as possible because basically identity mapping is needed only for a few instructions. (probably it will be better to create a separate section and put all necessary functions there) Another point was to map the necessary code for switching from 1:1 mapping in one cycle. ( we are using 4K as a page size ) But it looks like PAGE_SIZE isn't enough. I rebased all my patches that are needed to run Dom0 and compiler complains that _idmap is bigger than PAGE_SIZE so I probably have to reject this idea ( to map only PAGE_SIZE ). Actually not only .text section is needed but also stack should be 1:1 mapped. ( what is done in setup_initial_pagetables() ) >=20 > I find the other assertion a little puzzling too: Isn't that merely > checking that XEN_VIRT_START is page aligned? Yeah, you are right. ~ Oleksii From xen-devel-bounces@lists.xenproject.org Tue Jun 13 17:42:05 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 17:42:05 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548358.856276 (Exim 4.92) (envelope-from ) id 1q981i-00021B-GN; Tue, 13 Jun 2023 17:41:54 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548358.856276; Tue, 13 Jun 2023 17:41:54 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q981i-000214-CN; Tue, 13 Jun 2023 17:41:54 +0000 Received: by outflank-mailman (input) for mailman id 548358; Tue, 13 Jun 2023 17:41:53 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q981h-00020y-7E for xen-devel@lists.xenproject.org; Tue, 13 Jun 2023 17:41:53 +0000 Received: from mail-lf1-x12c.google.com (mail-lf1-x12c.google.com [2a00:1450:4864:20::12c]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 943c1717-0a11-11ee-8611-37d641c3527e; Tue, 13 Jun 2023 19:41:51 +0200 (CEST) Received: by mail-lf1-x12c.google.com with SMTP id 2adb3069b0e04-4f620583bc2so7213249e87.1 for ; Tue, 13 Jun 2023 10:41:51 -0700 (PDT) Received: from [192.168.202.197] ([94.75.70.14]) by smtp.gmail.com with ESMTPSA id o26-20020a056512051a00b004f73e290025sm1133815lfb.210.2023.06.13.10.41.49 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 13 Jun 2023 10:41:50 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 943c1717-0a11-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686678111; x=1689270111; h=mime-version:user-agent:content-transfer-encoding:references :in-reply-to:date:cc:to:from:subject:message-id:from:to:cc:subject :date:message-id:reply-to; bh=SaY9juWO6GETL6AiqtS3unBSDymp971SO5UAf/ZzS8c=; b=kVQxyAYivd/kKo814LKpYlAv7tX8CL0qF12bnWJ41nPXLDsQJVt9fY4+3DhvWjT3Up fIo7ugwCPtkUL3C6OWiFaYBSIa2jy9pAzMXvEnsy9Fep+0qry3xC6qh6rEL0kuG7Km0A dVxg5UrY/rzKhdA7u/DiaIXLD+BJai3eDufUS2tTNSGuE4GoEeCEv4QupfZD1k5zqzbU /k8ok/3E+wBVB00qsmVlhPebEk7pqDPVnAh4s8iBwT92aml3lnnORgp1bkwqUTvkLysm 50N1oX4AnpzF+hO5IRaxMncaN4fs4lzAiXRy36zpWfhPs9os4aoZRTp/3hD43Wv5KLLC XXaw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686678111; x=1689270111; h=mime-version:user-agent:content-transfer-encoding:references :in-reply-to:date:cc:to:from:subject:message-id:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=SaY9juWO6GETL6AiqtS3unBSDymp971SO5UAf/ZzS8c=; b=j8+NohJRj11hsGTnbs/gK5l61qbbyEG+qf+oE7nZiApZegTx8OeaYQ77LY1v4uxo4W vM5BhEv/ZvzCuHAIsCoPD+1DHJ90c7Fbe7nGx949eolNGydltPymtvLk+l6penNCStiS W0QgXRVcFJX1nuUEwM4lP/iZY/TBgcKj6Tno9k61Wa4glspk+0lGpM/UQeAbdDV5WG17 jdNduazC/wC9rK4PYCfhh7nQ2zLvUtqYD2aL9BPTDF3gLUHXDhbwBWtOXqRcwwtel68V 5JSmS7KEp5cTWBP22gxYYxE+OPXiMtAxzvABmapg4VOGpmCFwm44p+p7r8P0OiaL6St4 G0LA== X-Gm-Message-State: AC+VfDxEpNYEOFV+DWnSvRc3VkVUUWZcnh/qaQWZLo8Jgy4z3FGnghvz 9lBgDJUHENug26moyofgS5k= X-Google-Smtp-Source: ACHHUZ7GlJ/FseqWybvuSK95sSFAtqunozyPLgpQ4OXfOMv1mwwTYrp33KYYbEINcNJoprcorSwVWg== X-Received: by 2002:a19:3850:0:b0:4f1:4468:ee65 with SMTP id d16-20020a193850000000b004f14468ee65mr7430182lfj.30.1686678110587; Tue, 13 Jun 2023 10:41:50 -0700 (PDT) Message-ID: <2f834b7b832c140a2b3666b054d51c991aab1905.camel@gmail.com> Subject: Re: [PATCH v1 2/8] xen/riscv: add .sbss section to .bss From: Oleksii To: Jan Beulich Cc: Andrew Cooper , Bob Eshleman , Alistair Francis , Connor Davis , xen-devel@lists.xenproject.org Date: Tue, 13 Jun 2023 20:41:48 +0300 In-Reply-To: References: <6a0f3171323f0092b8374f2244182c7e7ca850c0.1686080337.git.oleksii.kurochko@gmail.com> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable User-Agent: Evolution 3.48.3 (3.48.3-1.fc38) MIME-Version: 1.0 On Mon, 2023-06-12 at 09:04 +0200, Jan Beulich wrote: > On 06.06.2023 21:55, Oleksii Kurochko wrote: > > Sometimes variables are located in .sbss section but it won't > > be mapped after MMU will be enabled. > > To avoid MMU failures .sbss should be mapped > >=20 > > Signed-off-by: Oleksii Kurochko > > --- > > =C2=A0xen/arch/riscv/xen.lds.S | 2 +- > > =C2=A01 file changed, 1 insertion(+), 1 deletion(-) > >=20 > > diff --git a/xen/arch/riscv/xen.lds.S b/xen/arch/riscv/xen.lds.S > > index 74afbaab9b..9a2799bab5 100644 > > --- a/xen/arch/riscv/xen.lds.S > > +++ b/xen/arch/riscv/xen.lds.S > > @@ -151,7 +151,7 @@ SECTIONS > > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 *(.bss.percpu.read_mos= tly) > > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 . =3D ALIGN(SMP_CACHE_= BYTES); > > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 __per_cpu_data_end =3D= .; > > -=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 *(.bss .bss.*) > > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 *(.bss .bss.* .sbss) > > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 . =3D ALIGN(POINTER_AL= IGN); > > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 __bss_end =3D .; > > =C2=A0=C2=A0=C2=A0=C2=A0 } :text >=20 > Two remarks, despite Alistair's ack: Wouldn't it be better to add > .sbss.* > right away as well? And strictly speaking wouldn't it be more logical > to > have .sbss ahead of .bss? It makes sense. I'll take it into account in the following patch series. Thanks. >=20 > Jan From xen-devel-bounces@lists.xenproject.org Tue Jun 13 17:45:43 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 17:45:43 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548363.856285 (Exim 4.92) (envelope-from ) id 1q985H-0002e1-UP; Tue, 13 Jun 2023 17:45:35 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548363.856285; Tue, 13 Jun 2023 17:45:35 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q985H-0002du-Rl; Tue, 13 Jun 2023 17:45:35 +0000 Received: by outflank-mailman (input) for mailman id 548363; Tue, 13 Jun 2023 17:45:34 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q985G-0002do-Qb for xen-devel@lists.xenproject.org; Tue, 13 Jun 2023 17:45:34 +0000 Received: from ppsw-30.srv.uis.cam.ac.uk (ppsw-30.srv.uis.cam.ac.uk [131.111.8.130]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 16b57f8e-0a12-11ee-8611-37d641c3527e; Tue, 13 Jun 2023 19:45:30 +0200 (CEST) Received: from hades.srcf.societies.cam.ac.uk ([131.111.179.67]:40314) by ppsw-30.srv.uis.cam.ac.uk (ppsw.cam.ac.uk [131.111.8.136]:25) with esmtps (TLS1.3:TLS_AES_256_GCM_SHA384:256) id 1q9850-00BTgd-Ga (Exim 4.96) (return-path ); Tue, 13 Jun 2023 18:45:18 +0100 Received: from [10.80.67.26] (default-46-102-197-194.interdsl.co.uk [46.102.197.194]) (Authenticated sender: amc96) by hades.srcf.societies.cam.ac.uk (Postfix) with ESMTPSA id C3AEF1FC91; Tue, 13 Jun 2023 18:45:17 +0100 (BST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 16b57f8e-0a12-11ee-8611-37d641c3527e X-Cam-AntiVirus: no malware found X-Cam-ScannerInfo: https://help.uis.cam.ac.uk/email-scanner-virus Message-ID: <86f357da-2fe1-7fe4-c061-d30b8e5bcbd3@srcf.net> Date: Tue, 13 Jun 2023 18:45:16 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH] xen/evtchn: Purge ERROR_EXIT{,_DOM}() Content-Language: en-GB To: Julien Grall , Andrew Cooper , Xen-devel Cc: Jan Beulich , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , Stefano Stabellini , Volodymyr Babchuk , Bertrand Marquis References: <20230613162220.3052184-1-andrew.cooper3@citrix.com> From: Andrew Cooper In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit On 13/06/2023 6:39 pm, Julien Grall wrote: > Hi, > > On 13/06/2023 17:22, Andrew Cooper wrote: >> These are disliked specifically by MISRA, but they also interfere >> with code > > Please explicitly name the rule. I can't remember it off the top of my head. Stefano/Bertrand? > >> legibility by hiding control flow.  Expand and drop them. >> >>   * Rearrange the order of actions to write into rc, then render rc >> in the >>     gdprintk(). >>   * Drop redundant "rc = rc" assignments >>   * Switch to using %pd for rendering domains >> >> No functional change.  Resulting binary is identical. >> >> Signed-off-by: Andrew Cooper > > Reviewed-by: Julien Grall Thanks. > >> base-commit: f29363922c1b41310c3d87fd9a861ffa9db9204a > > I notice you have a few e-mail contain this tag. This is a pretty > useful when reviewing patches. Do you know which tool is creating it? Plain git, and the capability has been around for years and years but nigh on impossible to search for or find in the manual.  Searching for "base-commit" gets you a tonne of intros of how to rebase. You want [format]         useAutoBase = "whenAble" or pass --base=auto to git-format-patch ~Andrew From xen-devel-bounces@lists.xenproject.org Tue Jun 13 17:46:21 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 17:46:21 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548368.856296 (Exim 4.92) (envelope-from ) id 1q9861-00039i-7h; Tue, 13 Jun 2023 17:46:21 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548368.856296; Tue, 13 Jun 2023 17:46:21 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9861-00039b-3z; Tue, 13 Jun 2023 17:46:21 +0000 Received: by outflank-mailman (input) for mailman id 548368; Tue, 13 Jun 2023 17:46:19 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q985z-000373-Fe for xen-devel@lists.xenproject.org; Tue, 13 Jun 2023 17:46:19 +0000 Received: from mail-lf1-x129.google.com (mail-lf1-x129.google.com [2a00:1450:4864:20::129]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 33a7bc06-0a12-11ee-b232-6b7b168915f2; Tue, 13 Jun 2023 19:46:18 +0200 (CEST) Received: by mail-lf1-x129.google.com with SMTP id 2adb3069b0e04-4f649db9b25so7216556e87.0 for ; Tue, 13 Jun 2023 10:46:18 -0700 (PDT) Received: from [192.168.202.197] ([94.75.70.14]) by smtp.gmail.com with ESMTPSA id h3-20020a197003000000b004f00189e1dasm1831301lfc.143.2023.06.13.10.46.17 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 13 Jun 2023 10:46:17 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 33a7bc06-0a12-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686678378; x=1689270378; h=mime-version:user-agent:content-transfer-encoding:references :in-reply-to:date:cc:to:from:subject:message-id:from:to:cc:subject :date:message-id:reply-to; bh=RGfIeKUA8BkoE8fkhjKJI0cd3PZOliJz44DxIItUE3Q=; b=VCUE6sv5JGjU9EGA+xSjOAzyLxrziyB/VD/HngitbH4GTtehc/3IHzskJxcWcO9Ob9 lmPbZkM9c0dcwYGTjQ/Ycf4TT+dWb7URNys7EMbhe6r5ZgrfVtV0iRor1uZdRQYTEkDW 7ji3KQipF3BATgwYwxdNHdH5mIxhoEy/mNFEim2AX1NztqOOfpWUdtIWgQZvBCrGJaDu xyW7ZA6pRr2kFBzaFuDkG4B3wjX08gw/6GbtBQtl+TDkm/iHtje+HWQUtb4Q67zdUet0 878xQbeYVaj/GtfLKeXscjxw4gbAhTTxgR29rKxTAMBW/WtpC0xLGIIue9cdmvC7/aw3 Dp5w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686678378; x=1689270378; h=mime-version:user-agent:content-transfer-encoding:references :in-reply-to:date:cc:to:from:subject:message-id:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=RGfIeKUA8BkoE8fkhjKJI0cd3PZOliJz44DxIItUE3Q=; b=PqxEljdb6kN+v3vfeqQCa4Jzvi4LrTY2aTM7DDIybDgnUvVWCdgDrwVph/l45opHOX SCSu2YpiRhvb3vB2VWkG24j+6FsYxbarf4IEVAMBLmERCGzO1ByeRvp09iE7I/1aqXab wVv6Muisj1XaA8UwDa5WqDxzsbERsGL535ymmvUUdjmSaWFv7/hj/tS2QbI3SYnMQFSC s8Rwqg/2tq+rVlFzkVJkBhXukjbN/0Ohom5LLYLtAP0cGegB1sLAAq+2IcDwdMPJvADh qniMDoLYs9n72no333vC0JTq56bVH/ysUoyDHF/oGTDwgyboOau/7Vg9qR1FrXrQ2ujI r3qQ== X-Gm-Message-State: AC+VfDzTKsZOuZxLpkx7HbIZA4hUHI80Vv5YtrKcIorjYrecRT7znUjz EJO/xFVpazmJq0FzJQj+Umg= X-Google-Smtp-Source: ACHHUZ6+u5xiDbTtqtK5t2jP3I0mI9jQWC1adn4tEnBUVTUiVzHqKP/Zhpo0Rt1IFAR0QQh+m7+CnQ== X-Received: by 2002:ac2:5b89:0:b0:4f6:d9e:7c3a with SMTP id o9-20020ac25b89000000b004f60d9e7c3amr7866275lfn.47.1686678378007; Tue, 13 Jun 2023 10:46:18 -0700 (PDT) Message-ID: <102112e1ed3dce8318aba4d9254f9d02600c71c7.camel@gmail.com> Subject: Re: [PATCH v1 3/8] xen/riscv: introduce reset_stack() function From: Oleksii To: Jan Beulich Cc: Andrew Cooper , Bob Eshleman , Alistair Francis , Connor Davis , xen-devel@lists.xenproject.org Date: Tue, 13 Jun 2023 20:46:16 +0300 In-Reply-To: <92fab0b8-647a-b9c1-d15b-1217a4420715@suse.com> References: <92fab0b8-647a-b9c1-d15b-1217a4420715@suse.com> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable User-Agent: Evolution 3.48.3 (3.48.3-1.fc38) MIME-Version: 1.0 On Mon, 2023-06-12 at 09:12 +0200, Jan Beulich wrote: > On 06.06.2023 21:55, Oleksii Kurochko wrote: > > Signed-off-by: Oleksii Kurochko >=20 > This wants addressing the "Why?" aspect in the description. Is the > present > code wrong in some perhaps subtle way? Are you meaning to re-use the > code? I am re-using it after switching from 1:1 world to reset a stack. > If so, in which way (which is relevant to determine whether the new > function may actually continue to live in .text.header)? Actually there is no such requirement for reset_stack to live in .text.header. > > --- a/xen/arch/riscv/riscv64/head.S > > +++ b/xen/arch/riscv/riscv64/head.S > > @@ -27,8 +27,14 @@ ENTRY(start) > > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 add=C2=A0=C2=A0=C2=A0= =C2=A0 t3, t3, __SIZEOF_POINTER__ > > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 bltu=C2=A0=C2=A0=C2=A0= t3, t4, .L_clear_bss > > =C2=A0 > > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 jal=C2=A0=C2=A0=C2=A0=C2=A0= reset_stack > > + > > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 tail=C2=A0=C2=A0=C2=A0 star= t_xen > > + > > +ENTRY(reset_stack) > > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 la=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0 sp, cpu0_boot_stack > > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 li=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0 t0, STACK_SIZE > > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 add=C2=A0=C2=A0=C2=A0= =C2=A0 sp, sp, t0 > > =C2=A0 > > -=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 tail=C2=A0=C2=A0=C2=A0 star= t_xen > > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 ret > > + >=20 ~ Oleksii From xen-devel-bounces@lists.xenproject.org Tue Jun 13 17:48:59 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 17:48:59 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548373.856305 (Exim 4.92) (envelope-from ) id 1q988S-0003lg-J5; Tue, 13 Jun 2023 17:48:52 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548373.856305; Tue, 13 Jun 2023 17:48:52 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q988S-0003lZ-GS; Tue, 13 Jun 2023 17:48:52 +0000 Received: by outflank-mailman (input) for mailman id 548373; Tue, 13 Jun 2023 17:48:50 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q988Q-0003lN-Mm for xen-devel@lists.xenproject.org; Tue, 13 Jun 2023 17:48:50 +0000 Received: from mail-lf1-x131.google.com (mail-lf1-x131.google.com [2a00:1450:4864:20::131]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 8d99750b-0a12-11ee-b232-6b7b168915f2; Tue, 13 Jun 2023 19:48:49 +0200 (CEST) Received: by mail-lf1-x131.google.com with SMTP id 2adb3069b0e04-4f74cda5f1dso2805671e87.3 for ; Tue, 13 Jun 2023 10:48:49 -0700 (PDT) Received: from [192.168.202.197] ([94.75.70.14]) by smtp.gmail.com with ESMTPSA id n5-20020ac24905000000b004eed68a68efsm1865662lfi.280.2023.06.13.10.48.48 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 13 Jun 2023 10:48:48 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 8d99750b-0a12-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686678529; x=1689270529; h=mime-version:user-agent:content-transfer-encoding:references :in-reply-to:date:cc:to:from:subject:message-id:from:to:cc:subject :date:message-id:reply-to; bh=ZqoiwzBTzT05Ws02wGTYNy1k4OjyTdoJW4iWXXA0yYo=; b=SUAHOf57lP5TNNMUghZ3PM9XO9fYz3kA/zpzw2ecT9Gl5IA7MuSan+ptN91Rpcybft eW/Rw+wgyroHHwMi5xRN6s138D7Eq4J5dbxFIrY7bX1pxwLptu2K3KwANRdHUDEiw6Ck sdI3kFFJN2q3OGvPqiHP+MEoD76SBauqx91/n1ymVL1WSq6ZsbI6TNkBmACkJvTfBBhV Ltr8qArxBJOEpFhhHs8Ip6Cl356fPfSHoYbLUj2/I++2GM5ueNFuDf2UF33VFY1wEz7P gKl7pX3bbYuLiFXUF3qhuqRvRarwTGJy+UYHQJrRm830kmXKpBmw7PKCa8qitSQvNJJg MdMg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686678529; x=1689270529; h=mime-version:user-agent:content-transfer-encoding:references :in-reply-to:date:cc:to:from:subject:message-id:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=ZqoiwzBTzT05Ws02wGTYNy1k4OjyTdoJW4iWXXA0yYo=; b=P3HsQ8iIu01mH3YpK7KKAZ5lOZO6NJSuSKE0atPYmH+YmhFjxb0eGSz9toncp1mDS3 VNgJPv2SIxpF0vQn/+T/B/l/Rc8CfC0TgwJ4ISDqePndNFnSCphhopM3gzdmYdv0gwwF XEANb1uxeLa+8sggScvMLU4tRhD4hLM9fwuB7fyLJnnigU0Tfgijni/7OGu3adk1PXsg B0VhkW/XcVNR/scI9S4C0XmHqCh4FHrLfstZEJrT44WOG1N/YHOy4YON/DhiyjpGHfv2 1foqeiUpzJJ+YxNyd2CmXj98eUWHFQoQV3AJHuKrl5aSr7MveBb4QoxqaUVxPshDAoRH DqwQ== X-Gm-Message-State: AC+VfDwuyE2a7vTKPFLDY3OOnVWG3EQP7DxJsrJvlLfioAYHgQsFktL/ ffiADywekWB8+Ya51Erpry4= X-Google-Smtp-Source: ACHHUZ5ISHlDzRMzH7HVKanXJ7IEZge1M/8KaY43zZFPl2DsnImuSrrG3qv4Zh/ta9FEnfEgZIhCaA== X-Received: by 2002:a05:6512:604:b0:4f4:b0d0:63fb with SMTP id b4-20020a056512060400b004f4b0d063fbmr6096332lfe.35.1686678529095; Tue, 13 Jun 2023 10:48:49 -0700 (PDT) Message-ID: <324b30c3b9e3e2049f20278c3b68ddc53b63b1e0.camel@gmail.com> Subject: Re: [PATCH v1 4/8] xen/riscv: introduce function for physical offset calculation From: Oleksii To: Jan Beulich Cc: Andrew Cooper , Bob Eshleman , Alistair Francis , Connor Davis , xen-devel@lists.xenproject.org Date: Tue, 13 Jun 2023 20:48:47 +0300 In-Reply-To: <726a9d97-aab1-f6d7-ab97-d75cf47b4c2d@suse.com> References: <726a9d97-aab1-f6d7-ab97-d75cf47b4c2d@suse.com> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable User-Agent: Evolution 3.48.3 (3.48.3-1.fc38) MIME-Version: 1.0 On Mon, 2023-06-12 at 09:15 +0200, Jan Beulich wrote: > On 06.06.2023 21:55, Oleksii Kurochko wrote: > > The function was introduced to not calculate and save physical > > offset before MMU is enabled because access to start() is > > PC-relative and in case of linker_addr !=3D load_addr it will result > > in incorrect value in phys_offset. >=20 > "... to _not_ calculate ..."? _not_ should be dropped. Thanks. >=20 > > --- a/xen/arch/riscv/mm.c > > +++ b/xen/arch/riscv/mm.c > > @@ -19,9 +19,11 @@ struct mmu_desc { > > =C2=A0 > > =C2=A0extern unsigned char cpu0_boot_stack[STACK_SIZE]; > > =C2=A0 > > -#define PHYS_OFFSET ((unsigned long)_start - XEN_VIRT_START) > > -#define LOAD_TO_LINK(addr) ((addr) - PHYS_OFFSET) > > -#define LINK_TO_LOAD(addr) ((addr) + PHYS_OFFSET) > > +static unsigned long phys_offset; >=20 > __ro_after_init? It makes sense to mark variable as __ro_after_init. I'll take into account in new version of patch. >=20 > > +#define LOAD_TO_LINK(addr) ((unsigned long)(addr) - phys_offset) > > +#define LINK_TO_LOAD(addr) ((unsigned long)(addr) + phys_offset) > > + > > =C2=A0 >=20 > Nit: No double blank lines please. Sorry. Missed that. >=20 > > @@ -273,3 +275,13 @@ void __init noreturn noinline enable_mmu() > > =C2=A0=C2=A0=C2=A0=C2=A0 switch_stack_and_jump((unsigned long)cpu0_boot= _stack + > > STACK_SIZE, > > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0 cont_after_mmu_is_enabled); > > =C2=A0} > > + > > +/* > > + * calc_phys_offset() should be used before MMU is enabled because > > access to > > + * start() is PC-relative and in case when load_addr !=3D > > linker_addr phys_offset > > + * will have an incorrect value > > + */ > > +void=C2=A0 calc_phys_offset(void) >=20 > __init? And nit: No double blanks please. Thanks. It should be __init. I'll remove double blanks in new patch version. ~ Oleksii From xen-devel-bounces@lists.xenproject.org Tue Jun 13 19:47:47 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 19:47:47 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548381.856316 (Exim 4.92) (envelope-from ) id 1q99zE-0007gT-T0; Tue, 13 Jun 2023 19:47:28 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548381.856316; Tue, 13 Jun 2023 19:47:28 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q99zE-0007gM-Pi; Tue, 13 Jun 2023 19:47:28 +0000 Received: by outflank-mailman (input) for mailman id 548381; Tue, 13 Jun 2023 19:47:27 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q99zD-0007gG-OG for xen-devel@lists.xenproject.org; Tue, 13 Jun 2023 19:47:27 +0000 Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 1e701161-0a23-11ee-b232-6b7b168915f2; Tue, 13 Jun 2023 21:47:26 +0200 (CEST) Received: from [192.168.1.98] (unknown [176.206.20.8]) by support.bugseng.com (Postfix) with ESMTPSA id D4BCD4EE0738; Tue, 13 Jun 2023 21:47:23 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 1e701161-0a23-11ee-b232-6b7b168915f2 Message-ID: Date: Tue, 13 Jun 2023 21:47:23 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.12) Gecko/20050929 Thunderbird/1.0.7 Fedora/1.0.7-1.1.fc4 Mnenhy/0.7.3.0 Subject: Re: [PATCH] xen/evtchn: Purge ERROR_EXIT{,_DOM}() Content-Language: en-US To: Andrew Cooper , Julien Grall , Andrew Cooper , Xen-devel Cc: Jan Beulich , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , Stefano Stabellini , Volodymyr Babchuk , Bertrand Marquis References: <20230613162220.3052184-1-andrew.cooper3@citrix.com> <86f357da-2fe1-7fe4-c061-d30b8e5bcbd3@srcf.net> From: Roberto Bagnara In-Reply-To: <86f357da-2fe1-7fe4-c061-d30b8e5bcbd3@srcf.net> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit On 13/06/23 19:45, Andrew Cooper wrote: > On 13/06/2023 6:39 pm, Julien Grall wrote: >> Hi, >> >> On 13/06/2023 17:22, Andrew Cooper wrote: >>> These are disliked specifically by MISRA, but they also interfere >>> with code >> >> Please explicitly name the rule. > > I can't remember it off the top of my head. > > Stefano/Bertrand? Rule 2.1 >>> legibility by hiding control flow.  Expand and drop them. >>> >>>   * Rearrange the order of actions to write into rc, then render rc >>> in the >>>     gdprintk(). >>>   * Drop redundant "rc = rc" assignments >>>   * Switch to using %pd for rendering domains >>> >>> No functional change.  Resulting binary is identical. >>> >>> Signed-off-by: Andrew Cooper >> >> Reviewed-by: Julien Grall > > Thanks. > >> >>> base-commit: f29363922c1b41310c3d87fd9a861ffa9db9204a >> >> I notice you have a few e-mail contain this tag. This is a pretty >> useful when reviewing patches. Do you know which tool is creating it? > > Plain git, and the capability has been around for years and years but > nigh on impossible to search for or find in the manual.  Searching for > "base-commit" gets you a tonne of intros of how to rebase. > > You want > > [format] >         useAutoBase = "whenAble" > > or pass --base=auto to git-format-patch > > ~Andrew > From xen-devel-bounces@lists.xenproject.org Tue Jun 13 20:11:34 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 20:11:34 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548387.856326 (Exim 4.92) (envelope-from ) id 1q9AMP-0002eq-PK; Tue, 13 Jun 2023 20:11:25 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548387.856326; Tue, 13 Jun 2023 20:11:25 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9AMP-0002ej-MC; Tue, 13 Jun 2023 20:11:25 +0000 Received: by outflank-mailman (input) for mailman id 548387; Tue, 13 Jun 2023 20:11:23 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9AMN-0002eZ-JT; Tue, 13 Jun 2023 20:11:23 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9AMN-0003w8-HC; Tue, 13 Jun 2023 20:11:23 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9AMN-0006e0-4G; Tue, 13 Jun 2023 20:11:23 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q9AMN-0001Lz-3c; Tue, 13 Jun 2023 20:11:23 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=1sVWlo06baPWAsamw50hWuQ80RZfHi7un5Qd0L7Giyg=; b=3SuDexJvSPT3IQdnxxl6mtiB2c n+eN8ncRPo+KAJx+RfT+DzCF+S9M/Bq3Sk+2AEk2wNmHM0vNH7KqAXyzVScjle1ZpD78slJcRW7uG LPsYNlK8XQx1loGHf9B/nlvHKk1gVlZs9TGQcCch0+eHz1zXpBtfQTZcDg8YjqmnjkCE=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [seabios test] 181408: regressions - FAIL X-Osstest-Failures: seabios:test-amd64-i386-qemuu-rhel6hvm-amd:xen-install:fail:regression seabios:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking seabios:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking seabios:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking seabios:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking seabios:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking seabios:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking seabios:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking X-Osstest-Versions-This: seabios=4db444b9a78abf9f6dc981f0e79db749765dc6e8 X-Osstest-Versions-That: seabios=be7e899350caa7b74d8271a34264c3b4aef25ab0 From: osstest service owner Date: Tue, 13 Jun 2023 20:11:23 +0000 flight 181408 seabios real [real] flight 181411 seabios real-retest [real] http://logs.test-lab.xenproject.org/osstest/logs/181408/ http://logs.test-lab.xenproject.org/osstest/logs/181411/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: test-amd64-i386-qemuu-rhel6hvm-amd 7 xen-install fail REGR. vs. 180681 Tests which did not succeed, but are not blocking: test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 180681 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop fail like 180681 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 180681 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 180681 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop fail like 180681 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass version targeted for testing: seabios 4db444b9a78abf9f6dc981f0e79db749765dc6e8 baseline version: seabios be7e899350caa7b74d8271a34264c3b4aef25ab0 Last test of basis 180681 2023-05-16 11:10:38 Z 28 days Testing same since 181408 2023-06-13 15:12:32 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: José Martínez jobs: build-amd64-xsm pass build-i386-xsm pass build-amd64 pass build-i386 pass build-amd64-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-i386-pvops pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-i386-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-i386-qemuu-rhel6hvm-amd fail test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-qemuu-freebsd11-amd64 pass test-amd64-amd64-qemuu-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-i386-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-amd64-i386-xl-qemuu-ws16-amd64 fail test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-qemuu-nested-intel pass test-amd64-i386-qemuu-rhel6hvm-intel pass test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. ------------------------------------------------------------ commit 4db444b9a78abf9f6dc981f0e79db749765dc6e8 Author: José Martínez Date: Tue Jun 13 11:01:34 2023 -0400 Fix high memory zone initialization in CSM mode malloc_high() cannot allocate any memory in CSM mode due to an empty ZoneHigh. SeaBIOS cannot find any disk to boot from because device initialization fails. The bug was introduced in 1.16.1 (commit dc88f9b) when the meaning of BUILD_MAX_HIGHTABLE changed but CSM code was not updated. This patch reverts to the previous behavior by using BUILD_MIN_HIGHTABLE in CSM methods. Signed-off-by: José Martínez From xen-devel-bounces@lists.xenproject.org Tue Jun 13 22:12:26 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 22:12:26 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548396.856339 (Exim 4.92) (envelope-from ) id 1q9CFC-0006No-97; Tue, 13 Jun 2023 22:12:06 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548396.856339; Tue, 13 Jun 2023 22:12:06 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9CFC-0006Nh-4C; Tue, 13 Jun 2023 22:12:06 +0000 Received: by outflank-mailman (input) for mailman id 548396; Tue, 13 Jun 2023 22:12:05 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9CFB-0006NX-0L; Tue, 13 Jun 2023 22:12:05 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9CFA-0006wo-Rd; Tue, 13 Jun 2023 22:12:04 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9CFA-0003Il-DM; Tue, 13 Jun 2023 22:12:04 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q9CFA-0000gV-D3; Tue, 13 Jun 2023 22:12:04 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=s6B1cXueEaZ2vHOBKdf/Qp+tLW/ylBaI5bwbAms7C+k=; b=TrG+hR3jYrzzJpdsNSzO0VoFIK rV5aSuHLNzmv8lHv6GTEkzdtrU+ZPEZBggeLmFEMYA/RllS4ofBL5IZpu5xGWq4y4Awg9o6h7bjmS s7OB0ygD2NJZo4lt7RdlVdo4bUT2+/plcCjAoPXefHac0CTcc9WbRsRcUJWAIUq+QUfU=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable test] 181406: regressions - trouble: broken/fail/pass X-Osstest-Failures: xen-unstable:test-armhf-armhf-xl-arndale::broken:regression xen-unstable:test-armhf-armhf-xl-vhd::broken:regression xen-unstable:test-armhf-armhf-xl-vhd:host-install(5):broken:regression xen-unstable:test-armhf-armhf-xl-arndale:host-install(5):broken:regression xen-unstable:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:debian-hvm-install:fail:regression xen-unstable:test-amd64-i386-xl-vhd:guest-start/debian.repeat:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qcow2:guest-start/debian.repeat:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking X-Osstest-Versions-This: xen=128557e3a44d79f0c9360dc88e42c3d0ef728edf X-Osstest-Versions-That: xen=b4642c32c4d079916d5607ddda0232aae5e1690e From: osstest service owner Date: Tue, 13 Jun 2023 22:12:04 +0000 flight 181406 xen-unstable real [real] http://logs.test-lab.xenproject.org/osstest/logs/181406/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: test-armhf-armhf-xl-arndale broken test-armhf-armhf-xl-vhd broken test-armhf-armhf-xl-vhd 5 host-install(5) broken REGR. vs. 181385 test-armhf-armhf-xl-arndale 5 host-install(5) broken REGR. vs. 181385 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm 12 debian-hvm-install fail REGR. vs. 181398 Tests which did not succeed, but are not blocking: test-amd64-i386-xl-vhd 21 guest-start/debian.repeat fail like 181352 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail like 181385 test-armhf-armhf-libvirt 16 saverestore-support-check fail like 181385 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail like 181385 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 181398 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop fail like 181398 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 181398 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 181398 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop fail like 181398 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop fail like 181398 test-amd64-amd64-xl-qcow2 21 guest-start/debian.repeat fail like 181398 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 181398 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop fail like 181398 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 181398 test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-i386-xl-pvshim 14 guest-start fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-i386-libvirt 15 migrate-support-check fail never pass test-amd64-i386-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-i386-libvirt-raw 14 migrate-support-check fail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-armhf-armhf-xl 15 migrate-support-check fail never pass test-armhf-armhf-xl 16 saverestore-support-check fail never pass test-armhf-armhf-xl-multivcpu 15 migrate-support-check fail never pass test-armhf-armhf-xl-multivcpu 16 saverestore-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass test-armhf-armhf-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-libvirt 15 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 15 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 16 saverestore-support-check fail never pass test-armhf-armhf-xl-credit1 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 16 saverestore-support-check fail never pass test-armhf-armhf-xl-credit2 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit2 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail never pass version targeted for testing: xen 128557e3a44d79f0c9360dc88e42c3d0ef728edf baseline version: xen b4642c32c4d079916d5607ddda0232aae5e1690e Last test of basis 181398 2023-06-13 01:52:10 Z 0 days Testing same since 181406 2023-06-13 13:40:10 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Bertrand Marquis Jason Andryuk Juergen Gross Julien Grall jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64-xtf pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-prev pass build-i386-prev pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-xtf-amd64-amd64-1 pass test-xtf-amd64-amd64-2 pass test-xtf-amd64-amd64-3 pass test-xtf-amd64-amd64-4 pass test-xtf-amd64-amd64-5 pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl pass test-amd64-i386-xl pass test-amd64-coresched-i386-xl pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm fail test-amd64-i386-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-i386-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-i386-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-i386-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-i386-qemut-rhel6hvm-amd pass test-amd64-i386-qemuu-rhel6hvm-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-i386-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-freebsd10-amd64 pass test-amd64-amd64-qemuu-freebsd11-amd64 pass test-amd64-amd64-qemuu-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-i386-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-i386-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-i386-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-amd64-i386-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale broken test-amd64-amd64-examine-bios pass test-amd64-i386-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 pass test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 pass test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine pass test-amd64-i386-examine pass test-amd64-i386-freebsd10-i386 pass test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-i386-qemut-rhel6hvm-intel pass test-amd64-i386-qemuu-rhel6hvm-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt pass test-amd64-i386-libvirt pass test-amd64-amd64-livepatch pass test-amd64-i386-livepatch pass test-amd64-amd64-migrupgrade pass test-amd64-i386-migrupgrade pass test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu pass test-amd64-amd64-pair pass test-amd64-i386-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-i386-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-i386-xl-pvshim fail test-amd64-amd64-pygrub pass test-armhf-armhf-libvirt-qcow2 pass test-amd64-amd64-xl-qcow2 fail test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw pass test-amd64-i386-libvirt-raw pass test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds pass test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-amd64-i386-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-i386-examine-uefi pass test-amd64-amd64-libvirt-vhd pass test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd broken test-amd64-i386-xl-vhd fail ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary broken-job test-armhf-armhf-xl-arndale broken broken-job test-armhf-armhf-xl-vhd broken broken-step test-armhf-armhf-xl-vhd host-install(5) broken-step test-armhf-armhf-xl-arndale host-install(5) Not pushing. ------------------------------------------------------------ commit 128557e3a44d79f0c9360dc88e42c3d0ef728edf Author: Julien Grall Date: Mon Jun 12 11:13:19 2023 +0100 tools/xenstored: Correct the prototype of domain_max_chk() Some version of GCC will complain because the prototype and the declaration of domain_max_chk() don't match: xenstored_domain.c:1503:6: error: conflicting types for 'domain_max_chk' due to enum/integer mismatch; have '_Bool(const struct connection *, enum accitem, unsigned int)' [-Werror=enum-int-mismatch] 1503 | bool domain_max_chk(const struct connection *conn, enum accitem what, | ^~~~~~~~~~~~~~ In file included from xenstored_domain.c:31: xenstored_domain.h:146:6: note: previous declaration of 'domain_max_chk' with type '_Bool(const struct connection *, unsigned int, unsigned int)' 146 | bool domain_max_chk(const struct connection *conn, unsigned int what, | ^~~~~~~~~~~~~~ Update the prototype to match the declaration. This was spotted by Gitlab CI with the job opensuse-tumbleweed-gcc. Fixes: 685048441e1c ("tools/xenstore: switch quota management to be table based") Signed-off-by: Julien Grall Reviewed-by: Jason Andryuk Tested-by: Jason Andryuk Reviewed-by: Juergen Gross commit 1a0342507cb4011607673efec13a8f3238ac6aa8 Author: Juergen Gross Date: Tue May 30 10:54:13 2023 +0200 tools/libs/store: make libxenstore independent of utils.h There is no real need for including tools/xenstore/utils.h from libxenstore, as only streq() and ARRAY_SIZE() are obtained via that header. streq() is just !strcmp(), and ARRAY_SIZE() is brought in via xen-tools/common-macros.h. Signed-off-by: Juergen Gross Acked-by: Julien Grall commit 0d5dfd2ed60addc1361ae82cbb52378abc912ede Author: Juergen Gross Date: Tue May 30 10:54:12 2023 +0200 tools/libs/store: use xen_list.h instead of xenstore/list.h Replace the usage of the xenstore private list.h header with the common xen_list.h one. Use the XEN_TAILQ type list, as it allows to directly swap the related macros/functions without having to change the logic. Signed-off-by: Juergen Gross Acked-by: Julien Grall commit 84ac67cd1e3df780c413cd7093aa3ad8d508b79a Author: Bertrand Marquis Date: Mon Jun 12 15:00:46 2023 +0200 xen/arm: rename guest_cpuinfo in domain_cpuinfo Rename the guest_cpuinfo structure to domain_cpuinfo as it is not only used for guests but also for dom0 so domain is a more suitable name. While there also rename the create_guest_cpuinfo function to create_domain_cpuinfo to be coherent and fix comments accordingly. Signed-off-by: Bertrand Marquis (qemu changes not included) From xen-devel-bounces@lists.xenproject.org Tue Jun 13 22:46:53 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 13 Jun 2023 22:46:53 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548409.856355 (Exim 4.92) (envelope-from ) id 1q9Cmk-0001Vi-UA; Tue, 13 Jun 2023 22:46:46 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548409.856355; Tue, 13 Jun 2023 22:46:46 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9Cmk-0001Vb-R7; Tue, 13 Jun 2023 22:46:46 +0000 Received: by outflank-mailman (input) for mailman id 548409; Tue, 13 Jun 2023 22:46:45 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9Cmj-0001VR-KC; Tue, 13 Jun 2023 22:46:45 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9Cmj-0007jD-H9; Tue, 13 Jun 2023 22:46:45 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9Cmj-0004ot-2i; Tue, 13 Jun 2023 22:46:45 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q9Cmj-00061o-2F; Tue, 13 Jun 2023 22:46:45 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=TpnjOjRXnQ/dA95byfV896FxUg8J25YGRGjFjlhdGFE=; b=VV40tB4CCBpz8MZGgteRMgE9eY pdvBiTwKLwzuK7pkYFOjV2zLd8ERW3ni1+fNWHM1Zs7En48pXnGumCW70rCQ8kMHBFxey/a6ikbEw ta2wyiEvpHFXANPTmjh1004uCyY2+eTp88j/N5hWWbJlQAk6dd6V4oNERUUtQhTq5eE4=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [qemu-mainline test] 181409: regressions - FAIL X-Osstest-Failures: qemu-mainline:build-amd64-xsm:xen-build:fail:regression qemu-mainline:build-arm64:xen-build:fail:regression qemu-mainline:build-arm64-xsm:xen-build:fail:regression qemu-mainline:build-amd64:xen-build:fail:regression qemu-mainline:build-i386:xen-build:fail:regression qemu-mainline:build-i386-xsm:xen-build:fail:regression qemu-mainline:build-armhf:xen-build:fail:regression qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-i386:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:build-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:build-arm64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:build-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:build-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pygrub:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking X-Osstest-Versions-This: qemuu=fdd0df5340a8ebc8de88078387ebc85c5af7b40f X-Osstest-Versions-That: qemuu=6972ef1440a9d685482d78672620a7482f2bd09a From: osstest service owner Date: Tue, 13 Jun 2023 22:46:45 +0000 flight 181409 qemu-mainline real [real] http://logs.test-lab.xenproject.org/osstest/logs/181409/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-amd64-xsm 6 xen-build fail REGR. vs. 180691 build-arm64 6 xen-build fail REGR. vs. 180691 build-arm64-xsm 6 xen-build fail REGR. vs. 180691 build-amd64 6 xen-build fail REGR. vs. 180691 build-i386 6 xen-build fail REGR. vs. 180691 build-i386-xsm 6 xen-build fail REGR. vs. 180691 build-armhf 6 xen-build fail REGR. vs. 180691 Tests which did not succeed, but are not blocking: test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-xl-xsm 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-raw 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-xsm 1 build-check(1) blocked n/a test-arm64-arm64-xl 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit1 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit2 1 build-check(1) blocked n/a test-arm64-arm64-xl-thunderx 1 build-check(1) blocked n/a test-arm64-arm64-xl-vhd 1 build-check(1) blocked n/a test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a test-armhf-armhf-libvirt 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-qcow2 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-raw 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a test-armhf-armhf-xl-arndale 1 build-check(1) blocked n/a test-armhf-armhf-xl-multivcpu 1 build-check(1) blocked n/a test-armhf-armhf-xl-rtds 1 build-check(1) blocked n/a test-armhf-armhf-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-amd 1 build-check(1) blocked n/a test-amd64-i386-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-raw 1 build-check(1) blocked n/a test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-i386 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-amd64 1 build-check(1) blocked n/a test-amd64-coresched-i386-xl 1 build-check(1) blocked n/a test-amd64-coresched-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-xsm 1 build-check(1) blocked n/a build-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-shadow 1 build-check(1) blocked n/a test-amd64-amd64-xl-rtds 1 build-check(1) blocked n/a build-arm64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a build-armhf-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a build-i386-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-amd 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-pair 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-qcow2 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-vhd 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvshim 1 build-check(1) blocked n/a test-amd64-amd64-pair 1 build-check(1) blocked n/a test-amd64-amd64-pygrub 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-intel 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd11-amd64 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd12-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-multivcpu 1 build-check(1) blocked n/a test-amd64-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit1 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit1 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit2 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-intel 1 build-check(1) blocked n/a test-amd64-i386-xl 1 build-check(1) blocked n/a test-amd64-i386-xl-pvshim 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a version targeted for testing: qemuu fdd0df5340a8ebc8de88078387ebc85c5af7b40f baseline version: qemuu 6972ef1440a9d685482d78672620a7482f2bd09a Last test of basis 180691 2023-05-17 10:45:22 Z 27 days Failing since 180699 2023-05-18 07:21:24 Z 26 days 97 attempts Testing same since 181372 2023-06-10 21:38:57 Z 3 days 18 attempts ------------------------------------------------------------ People who touched revisions under test: Afonso Bordado Akihiko Odaki Akihiro Suda Alex Bennée Alex Williamson Alexander Bulekov Alexander Graf Alexander Ivanov Alistair Francis Anastasia Belova Andrew Jeffery Ani Sinha Ani Sinha Anthony PERARD Anton Johansson BALATON Zoltan Bastian Koppelmann Bernhard Beschow Bin Meng Brian Cain Brice Goglin Camilla Conte Carlos Santos Christian Schoenebeck Chuck Zmudzinski Cindy Lu Clément Chigot Cornelia Huck Cédric Le Goater Cédric Le Goater Daniel Henrique Barboza Daniel P. Berrangé Daniil Kovalev David Hildenbrand David Woodhouse Emanuele Giuseppe Esposito Enze Li Eric Auger Eric Blake Eric DeVolder Erico Nunes Eugenio Pérez Fabiano Rosas Fan Ni Fiona Ebner Francesco Cagnin Francisco Iglesias Frederic Barrat Gavin Shan Gregory Price Gregory Price Hanna Czenczek Hao Zeng Hawkins Jiawei Igor Mammedov Ilya Leoshkevich Ira Weiny Jagannathan Raman Jason Wang Jean-Louis Dupond Jean-Philippe Brucker Jiaxun Yang John Snow Jonathan Cameron Juan Quintela Kevin Wolf Laurent Vivier Lei Yang Leonardo Bras Maksim Davydov Marc-André Lureau Marcin Juszkiewicz Marco Liebel Mark Cave-Ayland Markus Armbruster Matheus Tavares Bernardino Mattias Nissler Mauro Matteo Cascella Max Fritz Michael S. Tsirkin Michael Tokarev Michal Privoznik Milan Zamazal Mostafa Saleh Nicholas Piggin Nicolas Saenz Julienne Niek Linnenbank Palmer Dabbelt Paolo Bonzini Peter Maydell Peter Xu Philippe Mathieu-Daudé qianfan Zhao Raghu H Rene Engel Richard Henderson Richard Purdie Ricky Zhou Ryan Wendland Sebastian Ott Sergio Lopez Sid Manning Song Gao Stefan Hajnoczi Stefano Garzarella Steve Sistare Taylor Simpson Thomas Huth Thomas Weißschuh timothee.cocault@gmail.com Timothée Cocault Tommy Wu Vikram Garhwal Viktor Prutyanov Vitaly Cheptsov Vivek Kasireddy Vladimir Sementsov-Ogievskiy Volker Rümelin Xinyu Li Zeng Hao Zhenyu Zhang Zhenzhong Duan Zhuojia Shen jobs: build-amd64-xsm fail build-arm64-xsm fail build-i386-xsm fail build-amd64 fail build-arm64 fail build-armhf fail build-i386 fail build-amd64-libvirt blocked build-arm64-libvirt blocked build-armhf-libvirt blocked build-i386-libvirt blocked build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl blocked test-amd64-coresched-amd64-xl blocked test-arm64-arm64-xl blocked test-armhf-armhf-xl blocked test-amd64-i386-xl blocked test-amd64-coresched-i386-xl blocked test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-i386-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-amd64-libvirt-xsm blocked test-arm64-arm64-libvirt-xsm blocked test-amd64-i386-libvirt-xsm blocked test-amd64-amd64-xl-xsm blocked test-arm64-arm64-xl-xsm blocked test-amd64-i386-xl-xsm blocked test-amd64-amd64-qemuu-nested-amd blocked test-amd64-amd64-xl-pvhv2-amd blocked test-amd64-i386-qemuu-rhel6hvm-amd blocked test-amd64-amd64-dom0pvh-xl-amd blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-freebsd10-amd64 blocked test-amd64-amd64-qemuu-freebsd11-amd64 blocked test-amd64-amd64-qemuu-freebsd12-amd64 blocked test-amd64-amd64-xl-qemuu-ovmf-amd64 blocked test-amd64-i386-xl-qemuu-ovmf-amd64 blocked test-amd64-amd64-xl-qemuu-win7-amd64 blocked test-amd64-i386-xl-qemuu-win7-amd64 blocked test-amd64-amd64-xl-qemuu-ws16-amd64 blocked test-amd64-i386-xl-qemuu-ws16-amd64 blocked test-armhf-armhf-xl-arndale blocked test-amd64-amd64-xl-credit1 blocked test-arm64-arm64-xl-credit1 blocked test-armhf-armhf-xl-credit1 blocked test-amd64-amd64-xl-credit2 blocked test-arm64-arm64-xl-credit2 blocked test-armhf-armhf-xl-credit2 blocked test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-freebsd10-i386 blocked test-amd64-amd64-qemuu-nested-intel blocked test-amd64-amd64-xl-pvhv2-intel blocked test-amd64-i386-qemuu-rhel6hvm-intel blocked test-amd64-amd64-dom0pvh-xl-intel blocked test-amd64-amd64-libvirt blocked test-armhf-armhf-libvirt blocked test-amd64-i386-libvirt blocked test-amd64-amd64-xl-multivcpu blocked test-armhf-armhf-xl-multivcpu blocked test-amd64-amd64-pair blocked test-amd64-i386-pair blocked test-amd64-amd64-libvirt-pair blocked test-amd64-i386-libvirt-pair blocked test-amd64-amd64-xl-pvshim blocked test-amd64-i386-xl-pvshim blocked test-amd64-amd64-pygrub blocked test-armhf-armhf-libvirt-qcow2 blocked test-amd64-amd64-xl-qcow2 blocked test-arm64-arm64-libvirt-raw blocked test-armhf-armhf-libvirt-raw blocked test-amd64-i386-libvirt-raw blocked test-amd64-amd64-xl-rtds blocked test-armhf-armhf-xl-rtds blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-amd64-xl-shadow blocked test-amd64-i386-xl-shadow blocked test-arm64-arm64-xl-thunderx blocked test-amd64-amd64-libvirt-vhd blocked test-arm64-arm64-xl-vhd blocked test-armhf-armhf-xl-vhd blocked test-amd64-i386-xl-vhd blocked ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 17052 lines long.) From xen-devel-bounces@lists.xenproject.org Wed Jun 14 01:24:58 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 01:24:58 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548418.856367 (Exim 4.92) (envelope-from ) id 1q9FFc-0007ll-AD; Wed, 14 Jun 2023 01:24:44 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548418.856367; Wed, 14 Jun 2023 01:24:44 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9FFc-0007le-6z; Wed, 14 Jun 2023 01:24:44 +0000 Received: by outflank-mailman (input) for mailman id 548418; Wed, 14 Jun 2023 01:24:43 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9FFb-0007lU-N7; Wed, 14 Jun 2023 01:24:43 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9FFb-0001mi-KQ; Wed, 14 Jun 2023 01:24:43 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9FFb-0005C9-27; Wed, 14 Jun 2023 01:24:43 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q9FFb-0008Q2-1a; Wed, 14 Jun 2023 01:24:43 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=p5870dAvO/cR/m5nSxbCbBM2YsvHR9tM66Cyf2tOvlo=; b=HrxnyAbqs7nNmzyweVsaSVdP3+ woggJSizJ0a6g0cZfKStUmJeRp4KNLDWXtCmXXmkl6+heGcNSdRfauJ/9iA1ReWM+FS4boUCe55Nd RyQ4A/geyVekQRfs6GPsC1ifdgDfHFAqi7cnkGI7UISRqMNWscT1zA1h6XVFQGOl+tM8=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [seabios test] 181413: tolerable FAIL - PUSHED X-Osstest-Failures: seabios:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking seabios:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking seabios:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking seabios:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking seabios:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking seabios:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking seabios:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking X-Osstest-Versions-This: seabios=cd933454b5e3e1f86379a44b5ae1852c2a01a485 X-Osstest-Versions-That: seabios=be7e899350caa7b74d8271a34264c3b4aef25ab0 From: osstest service owner Date: Wed, 14 Jun 2023 01:24:43 +0000 flight 181413 seabios real [real] http://logs.test-lab.xenproject.org/osstest/logs/181413/ Failures :-/ but no regressions. Tests which did not succeed, but are not blocking: test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 180681 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop fail like 180681 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 180681 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 180681 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop fail like 180681 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass version targeted for testing: seabios cd933454b5e3e1f86379a44b5ae1852c2a01a485 baseline version: seabios be7e899350caa7b74d8271a34264c3b4aef25ab0 Last test of basis 180681 2023-05-16 11:10:38 Z 28 days Failing since 181408 2023-06-13 15:12:32 Z 0 days 2 attempts Testing same since 181413 2023-06-13 20:42:14 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: José Martínez Lukas Stockner Lukas Stockner via SeaBIOS jobs: build-amd64-xsm pass build-i386-xsm pass build-amd64 pass build-i386 pass build-amd64-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-i386-pvops pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-i386-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-i386-qemuu-rhel6hvm-amd pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-qemuu-freebsd11-amd64 pass test-amd64-amd64-qemuu-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-i386-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-amd64-i386-xl-qemuu-ws16-amd64 fail test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-qemuu-nested-intel pass test-amd64-i386-qemuu-rhel6hvm-intel pass test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Pushing revision : To xenbits.xen.org:/home/xen/git/osstest/seabios.git be7e899..cd93345 cd933454b5e3e1f86379a44b5ae1852c2a01a485 -> xen-tested-master From xen-devel-bounces@lists.xenproject.org Wed Jun 14 04:14:32 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 04:14:32 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548432.856378 (Exim 4.92) (envelope-from ) id 1q9Hti-0000Jl-85; Wed, 14 Jun 2023 04:14:18 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548432.856378; Wed, 14 Jun 2023 04:14:18 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9Hti-0000JP-1s; Wed, 14 Jun 2023 04:14:18 +0000 Received: by outflank-mailman (input) for mailman id 548432; Wed, 14 Jun 2023 04:14:16 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9Htg-0000JC-K4; Wed, 14 Jun 2023 04:14:16 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9Htg-0006AV-Go; Wed, 14 Jun 2023 04:14:16 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9Htg-0003zW-4s; Wed, 14 Jun 2023 04:14:16 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q9Htg-0007jb-4O; Wed, 14 Jun 2023 04:14:16 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=qLWQE2EFnLSe4yVMeQpgSSu62zYZAwch9uVov8Nyp8Y=; b=lyyzUSljmJA4qUCLPS1kgCGYW0 OI3S/Tf4kCi6yvseXUzVXOSOGHDuA94Rs5KL0+HJLp+ERu05I9k6l46pRbrduLvDG4s07Vd0yc+UX gEtgNxve4S2uO5xZMhxt/X0FsilMjYw6vztyTsOjw998a6LhIkeBXC0khLfnDAVY/dys=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [linux-linus test] 181410: regressions - FAIL X-Osstest-Failures: linux-linus:test-armhf-armhf-xl-credit1:xen-boot:fail:regression linux-linus:build-arm64-pvops:kernel-build:fail:regression linux-linus:test-amd64-amd64-libvirt-qcow2:guest-start/debian.repeat:fail:heisenbug linux-linus:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking linux-linus:test-arm64-arm64-examine:build-check(1):blocked:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking linux-linus:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking linux-linus:test-arm64-arm64-xl:build-check(1):blocked:nonblocking linux-linus:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking linux-linus:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking linux-linus:test-armhf-armhf-xl-multivcpu:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-credit2:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-vhd:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking linux-linus:test-armhf-armhf-libvirt:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-arndale:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-examine:reboot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-raw:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-qcow2:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-rtds:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-raw:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-qcow2:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: linux=fb054096aea0576f0c0a61c598e5e9676443ee86 X-Osstest-Versions-That: linux=6c538e1adbfc696ac4747fb10d63e704344f763d From: osstest service owner Date: Wed, 14 Jun 2023 04:14:16 +0000 flight 181410 linux-linus real [real] http://logs.test-lab.xenproject.org/osstest/logs/181410/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: test-armhf-armhf-xl-credit1 8 xen-boot fail REGR. vs. 180278 build-arm64-pvops 6 kernel-build fail in 181405 REGR. vs. 180278 Tests which are failing intermittently (not blocking): test-amd64-amd64-libvirt-qcow2 19 guest-start/debian.repeat fail pass in 181405 Tests which did not succeed, but are not blocking: test-arm64-arm64-xl-vhd 1 build-check(1) blocked in 181405 n/a test-arm64-arm64-libvirt-raw 1 build-check(1) blocked in 181405 n/a test-arm64-arm64-examine 1 build-check(1) blocked in 181405 n/a test-arm64-arm64-libvirt-xsm 1 build-check(1) blocked in 181405 n/a test-arm64-arm64-xl-thunderx 1 build-check(1) blocked in 181405 n/a test-arm64-arm64-xl-credit2 1 build-check(1) blocked in 181405 n/a test-arm64-arm64-xl 1 build-check(1) blocked in 181405 n/a test-arm64-arm64-xl-xsm 1 build-check(1) blocked in 181405 n/a test-arm64-arm64-xl-credit1 1 build-check(1) blocked in 181405 n/a test-armhf-armhf-xl-multivcpu 8 xen-boot fail like 180278 test-armhf-armhf-xl-credit2 8 xen-boot fail like 180278 test-armhf-armhf-xl-vhd 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 180278 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 180278 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 180278 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 180278 test-armhf-armhf-libvirt 8 xen-boot fail like 180278 test-armhf-armhf-xl-arndale 8 xen-boot fail like 180278 test-armhf-armhf-examine 8 reboot fail like 180278 test-armhf-armhf-libvirt-raw 8 xen-boot fail like 180278 test-armhf-armhf-libvirt-qcow2 8 xen-boot fail like 180278 test-armhf-armhf-xl 8 xen-boot fail like 180278 test-armhf-armhf-xl-rtds 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 180278 test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qcow2 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass version targeted for testing: linux fb054096aea0576f0c0a61c598e5e9676443ee86 baseline version: linux 6c538e1adbfc696ac4747fb10d63e704344f763d Last test of basis 180278 2023-04-16 19:41:46 Z 58 days Failing since 180281 2023-04-17 06:24:36 Z 57 days 110 attempts Testing same since 181397 2023-06-13 01:12:56 Z 1 days 3 attempts ------------------------------------------------------------ 2686 people touched revisions under test, not listing them all jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl fail test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-freebsd11-amd64 pass test-amd64-amd64-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale fail test-amd64-amd64-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 fail test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 fail test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine fail test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt fail test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu fail test-amd64-amd64-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-amd64-pygrub pass test-amd64-amd64-libvirt-qcow2 fail test-armhf-armhf-libvirt-qcow2 fail test-amd64-amd64-libvirt-raw pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw fail test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds fail test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-amd64-xl-vhd pass test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd fail ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 341254 lines long.) From xen-devel-bounces@lists.xenproject.org Wed Jun 14 04:15:23 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 04:15:23 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548406.856388 (Exim 4.92) (envelope-from ) id 1q9Hul-0000sG-Fs; Wed, 14 Jun 2023 04:15:23 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548406.856388; Wed, 14 Jun 2023 04:15:23 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9Hul-0000s9-CR; Wed, 14 Jun 2023 04:15:23 +0000 Received: by outflank-mailman (input) for mailman id 548406; Tue, 13 Jun 2023 22:16:58 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9CJu-00073l-B4 for xen-devel@lists.xenproject.org; Tue, 13 Jun 2023 22:16:58 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 01543bc2-0a38-11ee-8611-37d641c3527e; Wed, 14 Jun 2023 00:16:56 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 99AA1619B6; Tue, 13 Jun 2023 22:16:54 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 155E5C433C8; Tue, 13 Jun 2023 22:16:52 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 01543bc2-0a38-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1686694614; bh=u1U2JS+u6wM6OBhkKijCKkdxF/PQ2U4e1EnjjkO0qgU=; h=Date:Subject:To:Cc:References:From:In-Reply-To:From; b=hQuqhvJn3yNLy2Olxjnd1xuxCkh0wfTthUElblk3SWD5APhbp2A8h/GrhfZUDe0CA msAOI8lTM4SDCJH4Jw/egXw9kHffrgpSBDU2Lq/B7FL9Ncb4kZlGiVq95JuesT+7qf YEh5WOURMYPSU7yAQJlo+F3GFXuLwUg0ZCA7ynIU6Zby2JiopTRsMlBw6pN58eDxfr P7S7QpyZ+fotvuzUysUkJnW2doGlPUjxnxuveW2tzsGyBUdpBclirEyYiSIpPiSYAo M8uN4PP8S1NMMmXoKD0EuORe3OhQDCHvxGL87kEJWcKBMzzECpxbOCX8TRFljoINsE 8Ubz3n0NLn6FQ== Message-ID: Date: Tue, 13 Jun 2023 17:16:50 -0500 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH v4 27/34] nios2: Convert __pte_free_tlb() to use ptdescs Content-Language: en-US To: "Vishal Moola (Oracle)" , Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins References: <20230612210423.18611-1-vishal.moola@gmail.com> <20230612210423.18611-28-vishal.moola@gmail.com> From: Dinh Nguyen In-Reply-To: <20230612210423.18611-28-vishal.moola@gmail.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit On 6/12/23 16:04, Vishal Moola (Oracle) wrote: > Part of the conversions to replace pgtable constructor/destructors with > ptdesc equivalents. > > Signed-off-by: Vishal Moola (Oracle) > --- > arch/nios2/include/asm/pgalloc.h | 8 ++++---- > 1 file changed, 4 insertions(+), 4 deletions(-) > > diff --git a/arch/nios2/include/asm/pgalloc.h b/arch/nios2/include/asm/pgalloc.h > index ecd1657bb2ce..ce6bb8e74271 100644 > --- a/arch/nios2/include/asm/pgalloc.h > +++ b/arch/nios2/include/asm/pgalloc.h > @@ -28,10 +28,10 @@ static inline void pmd_populate(struct mm_struct *mm, pmd_t *pmd, > > extern pgd_t *pgd_alloc(struct mm_struct *mm); > > -#define __pte_free_tlb(tlb, pte, addr) \ > - do { \ > - pgtable_pte_page_dtor(pte); \ > - tlb_remove_page((tlb), (pte)); \ > +#define __pte_free_tlb(tlb, pte, addr) \ > + do { \ > + pagetable_pte_dtor(page_ptdesc(pte)); \ > + tlb_remove_page_ptdesc((tlb), (page_ptdesc(pte))); \ > } while (0) > > #endif /* _ASM_NIOS2_PGALLOC_H */ Applied! Thanks, Dinh From xen-devel-bounces@lists.xenproject.org Wed Jun 14 05:04:04 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 05:04:04 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548443.856399 (Exim 4.92) (envelope-from ) id 1q9Ifj-0000qo-0k; Wed, 14 Jun 2023 05:03:55 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548443.856399; Wed, 14 Jun 2023 05:03:54 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9Ifi-0000qh-Rj; Wed, 14 Jun 2023 05:03:54 +0000 Received: by outflank-mailman (input) for mailman id 548443; Wed, 14 Jun 2023 05:03:54 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9Ifi-0000qW-8p; Wed, 14 Jun 2023 05:03:54 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9Ifi-0007aI-5t; Wed, 14 Jun 2023 05:03:54 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9Ifh-00056Q-OL; Wed, 14 Jun 2023 05:03:53 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q9Ifh-0000rD-Nq; Wed, 14 Jun 2023 05:03:53 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=fcmWPFF2WwjJI/Atuxv27pGC2ge+Edix2BH7dAqudK4=; b=ZpRSGApndC6Bbx1fGi83adQEwx j8S4EPZbhbZm2QN597gn1RqVC9XYT77qU5hqDiSnzpLwlAiC00glDUh9ap3ZwIYhZu3n7bT9MllYa aqybB+ekp63sfanS3HVBtnoNb9HCYkpq5WRcUuSqhwlcirylSJTWl5ZF7TTHzVJGeB3A=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [qemu-mainline test] 181416: regressions - FAIL X-Osstest-Failures: qemu-mainline:build-amd64-xsm:xen-build:fail:regression qemu-mainline:build-arm64:xen-build:fail:regression qemu-mainline:build-arm64-xsm:xen-build:fail:regression qemu-mainline:build-amd64:xen-build:fail:regression qemu-mainline:build-i386:xen-build:fail:regression qemu-mainline:build-i386-xsm:xen-build:fail:regression qemu-mainline:build-armhf:xen-build:fail:regression qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-i386:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:build-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:build-arm64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:build-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:build-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pygrub:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking X-Osstest-Versions-This: qemuu=fdd0df5340a8ebc8de88078387ebc85c5af7b40f X-Osstest-Versions-That: qemuu=6972ef1440a9d685482d78672620a7482f2bd09a From: osstest service owner Date: Wed, 14 Jun 2023 05:03:53 +0000 flight 181416 qemu-mainline real [real] http://logs.test-lab.xenproject.org/osstest/logs/181416/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-amd64-xsm 6 xen-build fail REGR. vs. 180691 build-arm64 6 xen-build fail REGR. vs. 180691 build-arm64-xsm 6 xen-build fail REGR. vs. 180691 build-amd64 6 xen-build fail REGR. vs. 180691 build-i386 6 xen-build fail REGR. vs. 180691 build-i386-xsm 6 xen-build fail REGR. vs. 180691 build-armhf 6 xen-build fail REGR. vs. 180691 Tests which did not succeed, but are not blocking: test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-xl-xsm 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-raw 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-xsm 1 build-check(1) blocked n/a test-arm64-arm64-xl 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit1 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit2 1 build-check(1) blocked n/a test-arm64-arm64-xl-thunderx 1 build-check(1) blocked n/a test-arm64-arm64-xl-vhd 1 build-check(1) blocked n/a test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a test-armhf-armhf-libvirt 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-qcow2 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-raw 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a test-armhf-armhf-xl-arndale 1 build-check(1) blocked n/a test-armhf-armhf-xl-multivcpu 1 build-check(1) blocked n/a test-armhf-armhf-xl-rtds 1 build-check(1) blocked n/a test-armhf-armhf-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-amd 1 build-check(1) blocked n/a test-amd64-i386-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-raw 1 build-check(1) blocked n/a test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-i386 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-amd64 1 build-check(1) blocked n/a test-amd64-coresched-i386-xl 1 build-check(1) blocked n/a test-amd64-coresched-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-xsm 1 build-check(1) blocked n/a build-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-shadow 1 build-check(1) blocked n/a test-amd64-amd64-xl-rtds 1 build-check(1) blocked n/a build-arm64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a build-armhf-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a build-i386-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-amd 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-pair 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-qcow2 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-vhd 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvshim 1 build-check(1) blocked n/a test-amd64-amd64-pair 1 build-check(1) blocked n/a test-amd64-amd64-pygrub 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-intel 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd11-amd64 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd12-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-multivcpu 1 build-check(1) blocked n/a test-amd64-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit1 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit1 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit2 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-intel 1 build-check(1) blocked n/a test-amd64-i386-xl 1 build-check(1) blocked n/a test-amd64-i386-xl-pvshim 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a version targeted for testing: qemuu fdd0df5340a8ebc8de88078387ebc85c5af7b40f baseline version: qemuu 6972ef1440a9d685482d78672620a7482f2bd09a Last test of basis 180691 2023-05-17 10:45:22 Z 27 days Failing since 180699 2023-05-18 07:21:24 Z 26 days 98 attempts Testing same since 181372 2023-06-10 21:38:57 Z 3 days 19 attempts ------------------------------------------------------------ People who touched revisions under test: Afonso Bordado Akihiko Odaki Akihiro Suda Alex Bennée Alex Williamson Alexander Bulekov Alexander Graf Alexander Ivanov Alistair Francis Anastasia Belova Andrew Jeffery Ani Sinha Ani Sinha Anthony PERARD Anton Johansson BALATON Zoltan Bastian Koppelmann Bernhard Beschow Bin Meng Brian Cain Brice Goglin Camilla Conte Carlos Santos Christian Schoenebeck Chuck Zmudzinski Cindy Lu Clément Chigot Cornelia Huck Cédric Le Goater Cédric Le Goater Daniel Henrique Barboza Daniel P. Berrangé Daniil Kovalev David Hildenbrand David Woodhouse Emanuele Giuseppe Esposito Enze Li Eric Auger Eric Blake Eric DeVolder Erico Nunes Eugenio Pérez Fabiano Rosas Fan Ni Fiona Ebner Francesco Cagnin Francisco Iglesias Frederic Barrat Gavin Shan Gregory Price Gregory Price Hanna Czenczek Hao Zeng Hawkins Jiawei Igor Mammedov Ilya Leoshkevich Ira Weiny Jagannathan Raman Jason Wang Jean-Louis Dupond Jean-Philippe Brucker Jiaxun Yang John Snow Jonathan Cameron Juan Quintela Kevin Wolf Laurent Vivier Lei Yang Leonardo Bras Maksim Davydov Marc-André Lureau Marcin Juszkiewicz Marco Liebel Mark Cave-Ayland Markus Armbruster Matheus Tavares Bernardino Mattias Nissler Mauro Matteo Cascella Max Fritz Michael S. Tsirkin Michael Tokarev Michal Privoznik Milan Zamazal Mostafa Saleh Nicholas Piggin Nicolas Saenz Julienne Niek Linnenbank Palmer Dabbelt Paolo Bonzini Peter Maydell Peter Xu Philippe Mathieu-Daudé qianfan Zhao Raghu H Rene Engel Richard Henderson Richard Purdie Ricky Zhou Ryan Wendland Sebastian Ott Sergio Lopez Sid Manning Song Gao Stefan Hajnoczi Stefano Garzarella Steve Sistare Taylor Simpson Thomas Huth Thomas Weißschuh timothee.cocault@gmail.com Timothée Cocault Tommy Wu Vikram Garhwal Viktor Prutyanov Vitaly Cheptsov Vivek Kasireddy Vladimir Sementsov-Ogievskiy Volker Rümelin Xinyu Li Zeng Hao Zhenyu Zhang Zhenzhong Duan Zhuojia Shen jobs: build-amd64-xsm fail build-arm64-xsm fail build-i386-xsm fail build-amd64 fail build-arm64 fail build-armhf fail build-i386 fail build-amd64-libvirt blocked build-arm64-libvirt blocked build-armhf-libvirt blocked build-i386-libvirt blocked build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl blocked test-amd64-coresched-amd64-xl blocked test-arm64-arm64-xl blocked test-armhf-armhf-xl blocked test-amd64-i386-xl blocked test-amd64-coresched-i386-xl blocked test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-i386-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-amd64-libvirt-xsm blocked test-arm64-arm64-libvirt-xsm blocked test-amd64-i386-libvirt-xsm blocked test-amd64-amd64-xl-xsm blocked test-arm64-arm64-xl-xsm blocked test-amd64-i386-xl-xsm blocked test-amd64-amd64-qemuu-nested-amd blocked test-amd64-amd64-xl-pvhv2-amd blocked test-amd64-i386-qemuu-rhel6hvm-amd blocked test-amd64-amd64-dom0pvh-xl-amd blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-freebsd10-amd64 blocked test-amd64-amd64-qemuu-freebsd11-amd64 blocked test-amd64-amd64-qemuu-freebsd12-amd64 blocked test-amd64-amd64-xl-qemuu-ovmf-amd64 blocked test-amd64-i386-xl-qemuu-ovmf-amd64 blocked test-amd64-amd64-xl-qemuu-win7-amd64 blocked test-amd64-i386-xl-qemuu-win7-amd64 blocked test-amd64-amd64-xl-qemuu-ws16-amd64 blocked test-amd64-i386-xl-qemuu-ws16-amd64 blocked test-armhf-armhf-xl-arndale blocked test-amd64-amd64-xl-credit1 blocked test-arm64-arm64-xl-credit1 blocked test-armhf-armhf-xl-credit1 blocked test-amd64-amd64-xl-credit2 blocked test-arm64-arm64-xl-credit2 blocked test-armhf-armhf-xl-credit2 blocked test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-freebsd10-i386 blocked test-amd64-amd64-qemuu-nested-intel blocked test-amd64-amd64-xl-pvhv2-intel blocked test-amd64-i386-qemuu-rhel6hvm-intel blocked test-amd64-amd64-dom0pvh-xl-intel blocked test-amd64-amd64-libvirt blocked test-armhf-armhf-libvirt blocked test-amd64-i386-libvirt blocked test-amd64-amd64-xl-multivcpu blocked test-armhf-armhf-xl-multivcpu blocked test-amd64-amd64-pair blocked test-amd64-i386-pair blocked test-amd64-amd64-libvirt-pair blocked test-amd64-i386-libvirt-pair blocked test-amd64-amd64-xl-pvshim blocked test-amd64-i386-xl-pvshim blocked test-amd64-amd64-pygrub blocked test-armhf-armhf-libvirt-qcow2 blocked test-amd64-amd64-xl-qcow2 blocked test-arm64-arm64-libvirt-raw blocked test-armhf-armhf-libvirt-raw blocked test-amd64-i386-libvirt-raw blocked test-amd64-amd64-xl-rtds blocked test-armhf-armhf-xl-rtds blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-amd64-xl-shadow blocked test-amd64-i386-xl-shadow blocked test-arm64-arm64-xl-thunderx blocked test-amd64-amd64-libvirt-vhd blocked test-arm64-arm64-xl-vhd blocked test-armhf-armhf-xl-vhd blocked test-amd64-i386-xl-vhd blocked ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 17052 lines long.) From xen-devel-bounces@lists.xenproject.org Wed Jun 14 06:34:46 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 06:34:46 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548452.856407 (Exim 4.92) (envelope-from ) id 1q9K5L-0005Xu-Jt; Wed, 14 Jun 2023 06:34:27 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548452.856407; Wed, 14 Jun 2023 06:34:27 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9K5L-0005Xn-HF; Wed, 14 Jun 2023 06:34:27 +0000 Received: by outflank-mailman (input) for mailman id 548452; Wed, 14 Jun 2023 06:34:26 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9K5K-0005Xf-5w for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 06:34:26 +0000 Received: from EUR05-VI1-obe.outbound.protection.outlook.com (mail-vi1eur05on2060c.outbound.protection.outlook.com [2a01:111:f400:7d00::60c]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 7fdcaf83-0a7d-11ee-8611-37d641c3527e; Wed, 14 Jun 2023 08:34:23 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by PAXPR04MB9156.eurprd04.prod.outlook.com (2603:10a6:102:22f::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.37; Wed, 14 Jun 2023 06:34:19 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.039; Wed, 14 Jun 2023 06:34:19 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 7fdcaf83-0a7d-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=KfG0yaRwi3H/4UKQTL7hkZ4Jx2vRLaxT/WJ11ouQTo9KT6LWUMHhvqkppmWgGrR538pOW/PjeOjNLXQzD/eEaNBvEurQPP8y3PihtaJdXaZRNABDYAk3sbys7SGpdtcrqCXgk6FAz5Z+E+NmnjmPRtAkXLPUHMPcdksDgpD8I4yK+79sXWLtkn4Bai1M3t8lcZLLGHTp468gbl+qG7mxSkspRshT1aVEUb4+K+/YDYAExpNsIoN4y5FsYM9lgCuOZEmpnEAkk4/CKf2eh1W6nVPifexaZ0KcYufDR/K0fCp9+PMykyWGg53JMJkAJ0R4YDBJh9qFQ8vMHvasWGnZ0w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=+uhD3DivwsvlcltU/FZHOGW0OPxHDbzzbL7bT66OREk=; b=PSLSAiN16i2n9cTfreGQlv3ovOZ7yWslE1Mp/Mn62zBeT6/4jxR2SJUd7N/HVkvED0S5laJFpJtsg+CizC+884BhzwGcbaXEkllVPmTg71gqmnZNdcjELxPXAZYrSqsuqPsRYotouEFMo1AmeMIgjOj8bDa09iIpA2/st95LAtAshmM0yMe8vd7Mjb3kv+0xWa+xPOItx1x9bMPEs8l6C8ZzlD8q8k1s0naM2SiUr10NfHhFv8Zoy7LbfD1kLPg2R8n+W6Q5Qe0lTMW3uQGJgEwQnbjTKliZ8wCXEx0g+wxGjO1KAj9MHek0SOl4jR1B3uF6ay7nHOQBxFjScfTohw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=+uhD3DivwsvlcltU/FZHOGW0OPxHDbzzbL7bT66OREk=; b=HJdPr7Va5+V6qZx6c5FHUZLCN3XhwCcTmqTSrs5MdnxS2YoM0EC2dU+WeDTwceDn9akU7SNg2ANLDbULDPWdPJDCIVUomLxw2tj/lxnhkG6fznYIVmKzId6HJ6foYgiB2hWqywmEdUnVpTTpRV8ZNAx6sAfAjeIx2cpEr0WhJ8lTG/9RRbsBkNLZ8K8fE9Q/zqLD/Cz3mISJUlk9aoND09OJMXyW2UiMIRjG9rdC3bxuthNHY4rS9fLA2+fvYcQ5+odttakFwg11wlIYszFUOBTKt8TCX5HS5F9jG52z+RpM07J43Y6w24YkfTRuKouA+s82a1SfthvE0gOuJIKPPg== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <7dc57fa3-9e53-40ff-4a70-cc5d74010f96@suse.com> Date: Wed, 14 Jun 2023 08:34:17 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH 3/5] libxg: drop dead assignment to "ptes" from xc_core_arch_map_p2m_list_rw() Content-Language: en-US To: Anthony PERARD Cc: "xen-devel@lists.xenproject.org" , Wei Liu , Juergen Gross References: <2dc50b58-a4e4-3e32-1876-94412b14b052@suse.com> <33566692-ee42-44af-a94a-5535fdf39930@perard> From: Jan Beulich In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR2P281CA0045.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:92::17) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|PAXPR04MB9156:EE_ X-MS-Office365-Filtering-Correlation-Id: 3fb5c1b8-4c3b-469c-60f2-08db6ca161c6 X-LD-Processed: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 3jHGjKlY4kJewOdnka3DrC+LF6ZfrG4aY2wyWu0/Tr9i10y+5mMERtiPtw6UdkG+WbiNhwhXcb9lgaXaV3cdWaIRFXDL6RYIVuHmYh0f6aU9ge/tpsnBc4claTMcUHF7atILXQ52h/+L+aha9YfROCAFFr51GF9C4Pe/WzkSRN3jtbH00zAyfCOEkuMtT0+1WFKWuzqruZ7D7B4KSgyJO+K4T0/k845GYwcALrNiEgEXo3oU9ySbniPFdEFwdzGXTbuskV+T44dwr0JetjmXko5zWaTgakt+PociHARHzo/qt/hlgxgw1JhTOZqN7AOJZXxHvHi4wsI54RBXb8PD8xRQvjqtF1mFrpJIdnP6VFI3P8kQs0GVtxVmKz55UTzc+9P+oFUGdivgxyhgBxiY/u1Os4jJRnX04EnLvzwFVVTtDJOnOtcQmkc/w+zYPcPHU0T3YRFVFIuUWvUK6j26ii3sWyuHTMNvpDFWNuQq7fUdiIv43CZM5hSYKThLWBmHDH5b6DLVx/qRUYSwKeCz+rqZ4N8Pctgskx42MjzwCnucDel3Q0l9O/MAsxx8aeWNGAgkNOH/3aNohajnHZnY4q8kC6ncIMYm9DCfwqyQF0WLwqRPetb8+q2ISASKs8D/5bY/yR4ZuRTkTCwT1J6os+WSAqQ4R1D+bM8ziM4JA3HUUP0JoxCSmZhXlMF+RAmE X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(346002)(396003)(376002)(39860400002)(366004)(136003)(451199021)(8936002)(6486002)(26005)(8676002)(6512007)(41300700001)(36756003)(478600001)(38100700002)(66946007)(6916009)(66476007)(86362001)(4326008)(66556008)(31696002)(316002)(54906003)(53546011)(6506007)(5660300002)(83380400001)(186003)(2616005)(107886003)(2906002)(31686004)(70780200001)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?OCs1SjQrZ2lYaEx6b3BOOTNmR1B0bzc4ZUV0b0ZUV0ZzZ0tWUDBjYlNMbG1y?= =?utf-8?B?YnZwK2JCTjNjWjNLQXh0RDRtZ1A3UDdtckNlM1E1QXZMZG90LzRBb2ZGaXR1?= =?utf-8?B?VjFodEFmZmVzRWxRNkpQcTRRc0s0OUE5dzFZMk8vMWtLQmJ1UG52ZVJnc0Y5?= =?utf-8?B?ZGJseHN5dThiS3FnTDRoU1I4c1hxYm4zY3RYS0wzV3BKV1JRK0crVG1SY1pv?= =?utf-8?B?U1N3cU5PdEVCeStCVFBkREhkaXhEc2RQc1AzK29FYXdUcGdURFM5YW8vTVIw?= =?utf-8?B?UDZMNHJseGlqZUtRSFpUa3NFUGZjL2lYOVRjanY5SVhiNEhtMGVIUGJ3cFFI?= =?utf-8?B?L0ZlN1d1ck9ENUdmMkc3eThVRDBCVmJIUzUra1Z3dmJ1YldaNHVhYTkxeWlp?= =?utf-8?B?M0xUcVY3NDFUUVZ6b3ZpcnVFc0JwZDBzd2h5c1J6WGNSbU05SUUwZExaamZD?= =?utf-8?B?SE9FdDJNYk5EaFFHWjlONDhmUGhhamFGczc2ZGFsclFUMDA0dHNWSzdwL1V1?= =?utf-8?B?N3JNd1U4Mjk3WkRQbUFiN1B4R1Q0UkczdjlXUHBJY0ExNmxLaHJiekx2OVM4?= =?utf-8?B?WW82djd5UVNBYnJyNVNXdi83b3hjUUpacGo1VmxtMUh1MGoyKzFrdDU5RUs5?= =?utf-8?B?S1lyNjl5ai9SMmhCTUJDaDN4Y2JyektPaVBOYWJrRHRtM1p1NE8yS1dDUUtV?= =?utf-8?B?d21MQTFOZmd1WFI5eHQyV0RGUk94Yk9BSTlLeVA5MDdBaU5vWUVaWHRmZk4v?= =?utf-8?B?TFVuK1NlOVZjOUdRakVrUjVwZFMwU1FLdmg2Yk1RZ2lrbGUyQkt0dS9NSFdS?= =?utf-8?B?ZmdIejY3ZEpkTjB0dmdPS041N0Y0ZWFhdzh6bzlQV2ZKdG9VVFFhSFkvRUFo?= =?utf-8?B?cEdLMWVuZDBYSi8yYXNQUFZFMmErK1djbTRnS2ZGMVpYT0Y0M3dpSm12dWNj?= =?utf-8?B?ZnFyaDVoT09ETGcraVM0VWR3dkxGUDB6aDBwVDZ1bEhaQld1K3A2UG11RXNG?= =?utf-8?B?QlJidTUvS1hKKzhOcm5wYmlzbGF2aDdNS3BEK2M5bmVodWVjcmlXUFVHcVFs?= =?utf-8?B?NktPUzRGc21nS1dyTjhDb1JWOWFPZWgzSnhia3JxRHZUdEJwNVB2TWpya0M3?= =?utf-8?B?YVNlVk0wazNZQUpoLy94bUpxOGxEanYrcXBSSjZpNUtGWHNRb0dsZWF0QzE3?= =?utf-8?B?N055eXdtN0NaZHhLbE5BZ1VuUThvZ0k5WXQ2QUxrYTNIVkxuQk5mZ2RERXRs?= =?utf-8?B?YjJOeEpxeXQxUExaaEU5cnhCeGgzcnQrTGlNaENXaUhKTzRmbWs2TkxIVHkx?= =?utf-8?B?djljd0JwM1MwaGVZVUM1d3o0OXBOdE5yWlY5ZHdrV3Rhd24zeDh1cVkvZmVm?= =?utf-8?B?bjJITzJqY2s2UjBhTU5DOFBZWEFIOUg0UEo1VUZTY1BnSlY0cUVaU1M0UjhO?= =?utf-8?B?a01NNEM2ZDBkRlp5Z21UMFFYL3lpcGdrdXFFSERvYmEvTEtZSk9KZ0h3TGgx?= =?utf-8?B?UldjSUR3Zy9LOC9yVy8ybS9VcEZjSTd1dmpPNmQ0YW5KZGc2dW80Vzl0VThH?= =?utf-8?B?djJGZ2J0VVNBMVpUUFRFSmVuNzJoQUNJUTNmZ2VGQXMwalZXWHF1WVcyd2E4?= =?utf-8?B?TlJkSEZsY1NzK1NSVW5lZDl4S0FqNmdzb0hGMGhEdTNMb2FwNmRzeStvY1pk?= =?utf-8?B?ZWowU2R1enh0QlpIQi9WSmxwcytHQU5BMWdLNm41MjlvRHgvdjlMMVdscGpG?= =?utf-8?B?QUtiNDZOQXp2QzMwaWxBYm9hV0J4RHJhYnV0U1Y2SnBScnJTaHdsVGFvblZh?= =?utf-8?B?UUxlQkJDWVZobW5LWjkxeDJRbzBBZTZLL3c3bFB3RWEya3orWjVybWs3NVlQ?= =?utf-8?B?d1RPVFA3NVJvTFFwZTUzWFBGSE1jSm96QW8rRWNQRjBQZXB3Vkd2RnlrTmFY?= =?utf-8?B?QW1hV2VUaDJrMU5ueDJiREdwSFcwUlJ0NHMwdHlmY0lab0xHcHRwZjJqY1F5?= =?utf-8?B?NXVuOVNPcDdkRi9qSUxHb0pJYWVSR2YybFI0TjFiUkYwY04rZjdueVVadEZQ?= =?utf-8?B?ZTBYZTJHM0xKUWxBVDFWaFlld2cwM2M0a0IrSSt4UVVob1pWYlJTSkcrR3BK?= =?utf-8?Q?X0Y3HchIcNYy60zVxs9xgqlng?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 3fb5c1b8-4c3b-469c-60f2-08db6ca161c6 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Jun 2023 06:34:19.1631 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: hYtk+Cx3cgBlfvTMsI8wlUcPwLeeUu/yEC6mqGnTwV1MwZ2/C23wUavTjOBMqSZDNldPMTBI+NJrUblYztEXFw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB9156 On 13.06.2023 18:40, Anthony PERARD wrote: > On Tue, Jun 13, 2023 at 06:08:16PM +0200, Jan Beulich wrote: >> On 13.06.2023 18:03, Anthony PERARD wrote: >>> On Mon, Jun 12, 2023 at 01:46:40PM +0200, Jan Beulich wrote: >>>> The function returns immediately after the enclosing if(). >>>> >>>> Coverity ID: 1532314 >>>> Fixes: bd7a29c3d0b9 ("tools/libs/ctrl: fix xc_core_arch_map_p2m() to support linear p2m table") >>>> Signed-off-by: Jan Beulich >>>> >>>> --- a/tools/libs/guest/xg_core_x86.c >>>> +++ b/tools/libs/guest/xg_core_x86.c >>>> @@ -210,7 +210,6 @@ xc_core_arch_map_p2m_list_rw(xc_interfac >>>> } >>>> >>>> munmap(ptes, n_pages * PAGE_SIZE); >>>> - ptes = NULL; >>>> off = p2m_vaddr & ((mask >> shift) << shift); >>>> } >>> >>> Do we have to remove this assignment? What if someone adds code later >>> and reuse the content of the variable `ptes`? Or what if someone adds >>> codes after the loop, and handle an error with `goto out`, we would have >>> a double-munmap(). >> >> Imo it would be at that time when the assignment wants (re)adding. I > > I don't believe this is going to happen because I don't think a compiler > will find a mistake. Maybe a run of Coverity would tell that ptes is > reused after munmap(), but by the time Coverity run on the code, it > would be too late. > >> fully agree with the tool, and I expect Misra (if it was applied to >> the tool stack as well) would demand the very same change. > > I guess the issue here is that there's two paths out of the function, the > error path via "out" and the success path. If `ptes` is check on both > path, then the assignment would be needed, and it would be harder to > make a mistake; which can be done by having only one way out. > > If only we could restrict the scope of `ptes` to the for loop, we > wouldn't even need to set it to NULL. I can do that, but then I can't resist to shrink other variables' scopes as well, so it'll be somewhat bigger a change. Let's see how you like it. Jan From xen-devel-bounces@lists.xenproject.org Wed Jun 14 06:47:07 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 06:47:07 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548458.856418 (Exim 4.92) (envelope-from ) id 1q9KHW-0007HI-ND; Wed, 14 Jun 2023 06:47:02 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548458.856418; Wed, 14 Jun 2023 06:47:02 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9KHW-0007HB-KJ; Wed, 14 Jun 2023 06:47:02 +0000 Received: by outflank-mailman (input) for mailman id 548458; Wed, 14 Jun 2023 06:47:01 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9KHV-0007H3-E8 for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 06:47:01 +0000 Received: from EUR05-VI1-obe.outbound.protection.outlook.com (mail-vi1eur05on20626.outbound.protection.outlook.com [2a01:111:f400:7d00::626]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 42d3387b-0a7f-11ee-b232-6b7b168915f2; Wed, 14 Jun 2023 08:46:59 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by GVXPR04MB10070.eurprd04.prod.outlook.com (2603:10a6:150:11d::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.46; Wed, 14 Jun 2023 06:46:55 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.039; Wed, 14 Jun 2023 06:46:55 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 42d3387b-0a7f-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=NDeWjC1lHBRRsAgADA7cX+qwdJquASlsWkB0diOKL9Xn5sp4y2FvWSWQObUpvF7addWhqRILB+pj9D+pG90+WFBwty8IKZlOzZtTEa0v8vXH7+vHsYjuzyyL3acFWZuKpbaAjSYPUjaqmNZR6LO41YfV5uYq4KL/rudUMo41BdkW0JnLXrLyqWdxKUKtqzEbF0BxnYxbyh4zLaTt1ZD6RWR4GGrJMa2vu5HgNocpQPPg5iV0jrtmCRIOMmiijfF+cNnZ5y6YocXx/kEtJ3PLLsRkm/dCkUTfYwX4JBdv3s09BrftlOUoUF5eU7Gf9lwl65zvy0GOtR4ZILFSlBWKCQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=igjqGgjmt1+Xt324yQ1LN2tc426yds9pUYkuR9saag8=; b=DiZOwIY5WBK2Df/RiQRpFtv2TueRYOFrLduiVwdXUrPhHHodhymktN3OQALGIaxlgCzCFG6x5TdzQor2dEjYww435sYVtxSChGD39Op1CJJZ/exiFBCVZIPfqi6X5UUzjBtf1pTuBCfEWkbDtNYWWvMVMDZAb0xCHP8iWVUOK+iXjMPJKC7LSwucgr89WpzQ3GWtBJ1vMZGcqlOVnTf/hZyFv68lxDrtj5/vE1ITHHO66YyJ/6hUu3uZ36qJJWZmol2cSf7mFGwxvmTDqfKUr7Og4U4woHujvNCY9WGTS+hYgsKRGTZZ366h24w1pvQIDGwMgp7MEvTEVzHVG3Wjjw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=igjqGgjmt1+Xt324yQ1LN2tc426yds9pUYkuR9saag8=; b=g6kxLhw2wkOGDHp1293LN9USklKwCWV5Ik1HKCO8zW8Qtag1dTNCcaTrn/7Yg5K8mn6b4ldBCWi8F9TMyUi/67l87SWZPpIGlOPEH88g8Hc1FSluOHPA1/H7aMIQ3pz96UKNHFn000IhUMY3SlhXxDOVj2WCzqz7EGnF3n6kSrFSERUh+Lj9ERKyNEULk3W3iymeRWUtbTrloQYhsXQh/ZPOY44ep2ZP5wZn5SHQ0Sqa5KYrZiYwyIyugmsGlUPinsM1OUaz+J8pyHCGnWILfoFepgi7/5ud7o3lEmz41euMPUFPm+45p5Zv768QXwauh2jz3cWBR1JrJZOoc6r6aQ== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <376041fb-255c-4aeb-855c-c77ec9cf5d4a@suse.com> Date: Wed, 14 Jun 2023 08:46:53 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH] xen/gnttab: Purge PIN_FAIL() Content-Language: en-US To: Andrew Cooper Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , Stefano Stabellini , Julien Grall , Volodymyr Babchuk , Bertrand Marquis , Xen-devel References: <20230613165209.3121038-1-andrew.cooper3@citrix.com> From: Jan Beulich In-Reply-To: <20230613165209.3121038-1-andrew.cooper3@citrix.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR3P281CA0089.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:1f::18) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|GVXPR04MB10070:EE_ X-MS-Office365-Filtering-Correlation-Id: 95007fab-c4e5-4953-9c7d-08db6ca32499 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: j84165dlq62qQZHnr9GWYAr3rGd2iGf5FjBqTZ5UdKvuphoimZ7LZpZBCEWAtZuoWLN9F4eqpSEyvXGjh/p5GyvaNwBrmiPWCB2sYTV4oUFmXLK8/nTKyeOxUqZF6DUEheQT2cTmmk6l+hl2KCCV/xRpLGTsdVaMeMl5vTjO2Xz+bqaoRZaYdAfDsa910UHTTnFHQx0UJmyKmkwK3AqVVuW8//2yKBAiMKIu404WDSITArEIqSRH/FJbHozjKI7dnBzEacXaHv6ajy5adljg7kEo7V9a6BrGEZC/3d/CXQkhRs9f4JMGUWMs+pGglRfB1Zy5rMWogNpEJKXWtAiekneFLWEG/0jcrJjHL20CW5n4K4BFYfsYNb8fZxiIcZLAPK6I2tqBXN1eGarzqxrvyyvjNX3OOyOOdQedanskL2k5QKXPLzn0msVALeRe7FemzHndsOs0kvax5+PRC/frCROGxoc8p3hqO8Ll55Re9CyD9F94f/nxmtLCFMJaPDx7pPvyZcASpz6CEg+Y2kke8KlG8twqOU/eOlyYG6vP/GmQuArPYiAFd+Hh4p7oUx+dOSzPCmCw+T73j/vxB22aaD8tl+/LLYRrDRQ5BRjq3W4lFUfcD6b/PxEcxPw35wvtK2neQ8s2xk+NFByc3jUrXQ== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(366004)(346002)(396003)(136003)(39860400002)(376002)(451199021)(6916009)(66476007)(316002)(4326008)(66556008)(41300700001)(31686004)(186003)(54906003)(2906002)(4744005)(66946007)(8936002)(8676002)(5660300002)(478600001)(6486002)(26005)(6512007)(53546011)(6506007)(83380400001)(36756003)(86362001)(2616005)(31696002)(38100700002)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?Sy9MT2s4NmoxUDJ6R2J3bFVjbVRydVFGMGRwckEzMURjdjQ2K2RpdHErbnZq?= =?utf-8?B?NnJYYU5CcEF6QkZIUG5uYXBVcDJSZ25sam9TTHZMRGxNQXNOM3BBSlFaWEJh?= =?utf-8?B?U3Y3WFJuSzFHS1E4M1dmdVc3QU1INlg5Qkp0V2JoT2pxbW5DOEIvdjFQZ0dx?= =?utf-8?B?eVRSVHpNZGpKWDY3Rzg3OFJzRkZDT1k5c2xQdEcvaVg5R1lxMlJ6V2YyYlBn?= =?utf-8?B?VFRWNWo2UXBHa3VTVWpwWlRIOFhOTEpnYVhVRTdpdndWMmRDeXNDeTFZbVFI?= =?utf-8?B?WUMrQTlibEttNnZIWUY3M0ZvQlhuTFJoTVg5R042REVxaVlIZjZ6RkxnQk5v?= =?utf-8?B?cVFtQzFaTGRuSlJTZkEvUmhYQmdndjhoa0xnZmV3QTkvZ2JSdkVraXZPdlFM?= =?utf-8?B?Mm1NTlRNKzM1Z3QvYkVUWGx4ZFZkOEc0M3FrS3EwbUNKS1Vqc3RUZ1drT0Q2?= =?utf-8?B?NnVGTkVCWmdpNFZuNVAwd1kvVWpwYXlqdlZ2QlMwU1BLYVhXWHFRVnhEL3Jm?= =?utf-8?B?bHl0Vyt1MEhacmROMEM5cUo5YjlvWWQwYkhZYlJkOUJXZ2ZydDlKd3dTZzh2?= =?utf-8?B?K25kN1F3T3dGeVhOUjMwa3pNMGNISTYwQ1pwYkVNdDFNY0pXNWZWRDgxOFQy?= =?utf-8?B?WWhhOExxUlRCaEF2Sk5pZ1BPaTVsUkVjUDE0bU5LNWRFUnNhdVZQSFhHb3hx?= =?utf-8?B?K3lzS2dzSnoyUmlERHUwRDdvT200TklMQ09YNGhYN3lIeW5kMUNrQzZyWTdt?= =?utf-8?B?bW5hT2JMQ0YvVmJicWNTc1J5MTJSaDBYalZnc3hidTkxZGRHZitIdVJNcmlz?= =?utf-8?B?RUQ2Sml6bkIvSDJlQkhwWjRicDVYSC9zRlJFeHErYXZORGttdVlkaGhjdjR4?= =?utf-8?B?TXBRTEN2aGVLRC9OMGxmRHUrS2REV2xrcXU2VmUvQ0JqZ05Jck1nZFdnQ00y?= =?utf-8?B?TkkxdWkyMW04RTQ4aitWNEZHdStpb1Z4RWlTZTJseTJlc1RJcXhaZWNxblZO?= =?utf-8?B?Wk00NW5GOTlKMlhHOEY4dmxvYms4TjRROTd4N0owVWdDdVJkeU1adlh6QUhQ?= =?utf-8?B?QUJuVndoNGh5OHRIT3B0Q0JIWXRFV2lPN3dWc2xadUYrRFF5b3NTMkxNaDRQ?= =?utf-8?B?UmpScU9DV1RFWHlhYzI3NEdYczJlR2s2UWk5Z1piN0hsejF4SC9aNEVEZCtw?= =?utf-8?B?bmhxWW9hMlUwUHptRlVFd3ZYZ3pXT3NhVjBTem51TEplV2VLbElOblhzanZS?= =?utf-8?B?TTBWKzlIVGYra2tXYVZwT2N2bDJpUHI2a3Z6ZjlWa2NqWlJ0Z1l6WUh0RzhK?= =?utf-8?B?V2czc3hBM3cyNHd4NFVNU1owTTdyOUxVaTdnUGJxdmRWZ01Edm9vSmYyQWJJ?= =?utf-8?B?VW8rbkZ1TERKSDFqTHY5K2FqSnk0elZ5NWx2M0VEK3ZLY0J5RmdsQUlKOVE5?= =?utf-8?B?WDZaazQ2Qkw5b1phTys4UW9MNWJMTnNvcURyVWdLK2FGdTVZd2VkYzNPRU9N?= =?utf-8?B?Zmxxa2ViNldJVU03ZHVZWGRBUFVRdGxIcmhSci9ReFBXalc4M2x0ektMdXYx?= =?utf-8?B?SDg3YUhmOElMbGZIMUpRNElPZG96T2pMbk50ZUJDNHM1MnRSelBJLzF2YXZJ?= =?utf-8?B?UkZnYTg5TkgxeWhDdDhwdUtpaytOZk1ybGE4TzV6N1JzUXAraXM2WDRoMlRX?= =?utf-8?B?d0QzU21FZFUxRytHcW1HbGdleTY4cTBCdzNEc1R0bEM1N0IvMEExV0RoUDNv?= =?utf-8?B?b0dLcUZjeEVpM1lrYTlSMDZBdXh1OWNFQ3BxM1JWVHFxNU16MG5TWG92bkU0?= =?utf-8?B?U2dJcUx3Y1ZlNmFrZXVHV1ZwV1ZWZmw1L1BTOE9Rczhkd1VrbmtvVko0RzEx?= =?utf-8?B?WHJtRHJTaEw1Y2YxeldQSnN2cEJJT3BZb0REekEvMXk5S2FvR0tMUzBDNEdQ?= =?utf-8?B?MkxoVlgvZnRtT1hoOHFsS0VsWERPU1JRdm16NW0zNzJrRTBReU5KY1hEZ2oy?= =?utf-8?B?cEFYM1BsdWNLQmNFRlJwc1FtdDA2MmpzM1MzQVBLeENHZTZlWFJnVjVOajJK?= =?utf-8?B?S2l5cmNTdTlrSHlZSDlhK0I3SWZtRUVlMlRoWEdTdlUrN2NBOUlmVHkvcC9N?= =?utf-8?Q?9+ygtgas2CtWFiAjwJ5D07U/h?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 95007fab-c4e5-4953-9c7d-08db6ca32499 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Jun 2023 06:46:55.6045 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: q8Y4U69q/+nAsqS+Ej8Ekpl8C8c89YVf+3evFFtiXUUoLN3Jp8xN8QtVAruBfhsdQdqizHfZe0iTPMCTgDwAtA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: GVXPR04MB10070 On 13.06.2023 18:52, Andrew Cooper wrote: > @@ -1062,9 +1081,13 @@ map_grant_ref( > ((act->domid != ld->domain_id) || > (act->pin & GNTPIN_incr2oflow_mask(pin_incr)) || > (act->is_sub_page)) ) > - PIN_FAIL(act_release_out, GNTST_general_error, > + { > + gdprintk(XENLOG_WARNING, > "Bad domain (%d != %d), or risk of counter overflow %08x, or subpage %d\n", > act->domid, ld->domain_id, act->pin, act->is_sub_page); > + rc = GNTST_general_error; > + goto act_release_out; Nit: One too deep indentation on these last two lines above. With that adjusted: Reviewed-by: Jan Beulich Jan From xen-devel-bounces@lists.xenproject.org Wed Jun 14 06:52:33 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 06:52:33 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548463.856428 (Exim 4.92) (envelope-from ) id 1q9KMd-0000NT-9X; Wed, 14 Jun 2023 06:52:19 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548463.856428; Wed, 14 Jun 2023 06:52:19 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9KMd-0000NM-6Z; Wed, 14 Jun 2023 06:52:19 +0000 Received: by outflank-mailman (input) for mailman id 548463; Wed, 14 Jun 2023 06:52:18 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9KMb-0000NF-Ut for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 06:52:17 +0000 Received: from EUR05-VI1-obe.outbound.protection.outlook.com (mail-vi1eur05on20613.outbound.protection.outlook.com [2a01:111:f400:7d00::613]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id ff6fc983-0a7f-11ee-8611-37d641c3527e; Wed, 14 Jun 2023 08:52:16 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by AM7PR04MB6806.eurprd04.prod.outlook.com (2603:10a6:20b:103::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.37; Wed, 14 Jun 2023 06:52:13 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.039; Wed, 14 Jun 2023 06:52:12 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: ff6fc983-0a7f-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=d4hF4o24Opp4EABxjyIr5RB6j9UlkHetbQKVvESChXJkGhlzBZ7CgCsKTb/O54nICSD4VqirG6mfYNTFMiQbO14vXrqdSK3qa/fflseBMNd5QOeyBhs9D0PtRbL+bjp6vNBvAdXGWybqWumLM0qm8BHoITSY/TGhfAESrdsG5nmo3UH7b+HJ6PRELOyyHb2MEtwbsip1gBgubi4Jt8Mi6gu/EpaEbiXTCZvtI5Wl2VAw3v1Z5QM4DNZLxBrBX2b2lbmgAS7Phmj2ealCUK2kmFneh7aY+fk9ESF5hYhkH+uzWEH7vuFvKKj2bM7D6J5wfbDb1S0rwrR23JsHV9Ub9Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=AHF8ceRqJ/i/Jy/W5LLDJx9ngIg86BYCpYxEQCCN87A=; b=fAUTc2yXpd+hyuyoqbeISY1MU8byvpxnCc4kWj5m6WdZ3YJGSGD8GVyHLwYHzyqKEsg/zPBbiGohsbPoUEwuPxlCcdPvAnNdZ8uJrZeWimJaj2BstZQim5rIgomQC6+9v62Nc1ZlxIa276et8ccaKWZD5YFLR3sJYfe2C1cRerIyvysBADRwTD0YnMONs6kRzuOsvew5zmdVQ9eORKRcXAY6bvb6XLVUv2sDLRSlomxeAkNeeWnM4KinPbqO0RTjqpS+zTjHrxU3zsGPY5JHiTGZJULSaQYLQE2gwJjmf2X8lJhRMUMJDwhepOrY4o0hyMRH2T6O15/v5+rUteqXNA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=AHF8ceRqJ/i/Jy/W5LLDJx9ngIg86BYCpYxEQCCN87A=; b=mD9lKydLpjHLqnrx9gGibgm3yQeHXwAluRSa6ZhI3UmwKViB2Q8KeNL2RFIgT/OeZj0UQQMsUCen3Gkyh6Ew80eUjnGlJuiUZOHJScyjJPjNDb3uhN8b9h2m2DTkFp1s3V92XpT1iz9UtOhB3P7Ywwout9LKBAZ4wqB4hmhi/gSfAiLLYs+4Jr8QHAcglT9gkp6udQ8n9VPLntKWciec1lIFjw/lp1sqG7Ylpsbpe73vSNPBr3Y7qgIT7/DMqFvsg6vIU66tFznLtBvKmOezlo8Fi9nO7x/tq2fLwu/G/B9RqSmcSGrla/gLw3qK+W5RFQcR6AlACFsST7o1gv17vw== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <5dbb751d-e8d7-fa26-81f8-5a3b1b12cd65@suse.com> Date: Wed, 14 Jun 2023 08:52:10 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH] xen/evtchn: Purge ERROR_EXIT{,_DOM}() Content-Language: en-US To: Roberto Bagnara Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , Stefano Stabellini , Volodymyr Babchuk , Bertrand Marquis , Andrew Cooper , Julien Grall , Andrew Cooper , Xen-devel References: <20230613162220.3052184-1-andrew.cooper3@citrix.com> <86f357da-2fe1-7fe4-c061-d30b8e5bcbd3@srcf.net> From: Jan Beulich In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FRYP281CA0004.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10::14) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|AM7PR04MB6806:EE_ X-MS-Office365-Filtering-Correlation-Id: 4ac53715-12c8-4372-ffea-08db6ca3e1ba X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 9qdVwhh5wP3Rqejo+H6TiXhHwuRAdj+pJp9YkOUtTtlRWfbADE7qHthoSG2WlFH7A5iaw+rfNy4Ks4ZgrCwPNNSOqGpCVqPNwWX544dRAbs9J1SUOOXlWIwx2EsHk/Uw0pqAJGD6Oc37yi9vRRgdKPS+62MsrzZXDVWnyYFa072bWch9ugyDaRiNjFGXWirgQqTVlcThDhT1LW7nY1LAzOiROZQiWgxCGGMIQ+IG0m2R/UiHGk8jqrpp5svP33sqAp8wDZ3y+kgjihcdfZ5NZkhi3NSRBMy8GRAqcuNFs/SqrwmMfDTCYn19Yhw8ALFusPK+DHr3Pa88HP8EbJ9yyfW3EMiFNr6+zGI43cD2ePD6kdt8mhJhLCnng5kVo2bwWmt4IpIIBP9nssppdmlG1NhGVjyJ8B3D4bqpjQxP5p/XPrYLSX+tUD2cVJjV0dvbWWPxmdo4AWch7FQDYXHPL50JQopwQ4OY0bqUF14dHwnmmIKrTgLm+7qNlKlHndwwFF6sQY7jg3eN7l+8NSf1h4UKaAZJPwYHz3k/P4f392+lCjggdMVDq3ptYW6B+oH7TK1J0dREtkdGeDUO0GxUnqM85zvKUDWb1ehElVItFliM+Ll9d8VzUL7Cvfo/IEDgIlkw70h6IV35t7KQYGSE8w== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(346002)(396003)(376002)(39860400002)(366004)(136003)(451199021)(8936002)(6486002)(26005)(8676002)(6512007)(41300700001)(36756003)(478600001)(38100700002)(66946007)(6916009)(66476007)(86362001)(4326008)(66556008)(31696002)(316002)(54906003)(53546011)(6506007)(5660300002)(186003)(2616005)(7416002)(4744005)(2906002)(31686004)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?ZXlwdW9IM2xDakI0V1VSanBHT2NSVTh3OFp5UlJVaDBiaE9pYSswKzlHdVA0?= =?utf-8?B?Q3BCU1IwdjFLaWFOZEc4VEJndEJwWlovSUdodFJNSTUzZTdMaFE0UVNFOTdT?= =?utf-8?B?UkgxUW1QRE5lb1h0NTZvZUJ2azhvMnhGZ3VYNDJ6RGVCRUtmRllKMGxXSHpT?= =?utf-8?B?RUt3ZUFqNDI2M2F1RjdkSHo0S01zRFZCVnhON0VWMUF3aWtIQllnRmVXaXli?= =?utf-8?B?M0JBZ1cwdDBWbmlEVC9sUU1DeUN1Y1hZVGVhNEN0Ny9SL0M5SWFjT051a1Zr?= =?utf-8?B?dllBZ01ySmw5dkdUMTYrS2ZpN09zTGZ0VDY4ZERzNzZ1NnNRV1lxV1d2by9x?= =?utf-8?B?TGFxTUdpbkNMWCtGNVZSU1E0ZUo0RWpPZk1KTXgrMEpicmRBckNEREVkdEFr?= =?utf-8?B?UWJuT0QweUg2VVRkZzdwYmJNZVdac2JhOWt3NXU2V0g3OWlFR1JQY1dScGsv?= =?utf-8?B?aTN3N3NETmVVMmltTTQyLzRMdnZLQ05kelZUT0d4V2s0Nzl1bDVoWFBaa09B?= =?utf-8?B?SFNUMk5VVEdZK2pkK0hvZDBZZ1JjSEtZb1J3clYwUmV2VDRhUXZaUUViVDc4?= =?utf-8?B?U3lOcE0rN1pHeXpUQjR3ZVNPUnc5RG1EWmZlM1RUWUsyV29QZUNDYlJsN1px?= =?utf-8?B?SmMwcytsSGhqWHhhT3lVRlFxa1VRS2ljdlJtNjZsZ29ZYzFubDAxTzRQM1Ux?= =?utf-8?B?dHgrNjJvVG0rQkx5MmRablVRbGZBNFpSWUhkc3l0RHZ3SDBSNndIaVpWUUJH?= =?utf-8?B?V1lSNy9Hc1ZHbTUyU0N3YVp0K2RVSSswa2ljQTR2RjVZSEJ3N2lBVDJrWWpF?= =?utf-8?B?YlBBUERHYU5OcmFieTVIRnp6ajRrejk0SHo3MGMxY2VSUnQ3SHJmdmYrRSt6?= =?utf-8?B?bnIxUjV6MVVuZENYMU9tWTVCUFQzRVZaVUNkYXVKQ3RvYWtIUSt2TWRBMFFW?= =?utf-8?B?SlJsR0JFYlRsWXhCZ3VRczRlRERPWlJybHUyU1F6cDFibWhhdi83Q2JneXk5?= =?utf-8?B?WGVJemhYdUs0bEp3MC82c2t1S3R1NCt3V1ZBQkl2ZDEyOHdQNG5RcW9hdGRi?= =?utf-8?B?ZUkvbC9XbGxZK0R0WDZkTHQxbGtTY245ZzFLOFE3YlNuUW9lMXg5TjZ0ZEpI?= =?utf-8?B?YjVzRnc4alhRbHloZUFDcHNlVHdwb3d6cmJTZng2K3IzN0QvVGhRRnlRL2px?= =?utf-8?B?aXR2dnBXQUlRQnNYUDQvT0J3SzNldG1oYldYVWZqbDF3SlNSNWZGLzNLbHNL?= =?utf-8?B?WHdzaENySDJ1N1dYa2NYMTVhUkxFVFBVdk43SlgvMjBnM3VBVTNnS3pNdHNn?= =?utf-8?B?RG85N25kNmlZcFVYNmNKSTRsdy9iclU5aCs2eDRiUnJ5RlU0VDZmbWRlTXMy?= =?utf-8?B?VGNLbGhEVHBGZ2ZJeGZZcDhSd1gvdUhBYVZWYUcrbzBtbDNYTTB2bHJOQVpL?= =?utf-8?B?RStRb1ViY1pIQzVpWnI1elJncVZGeGZ5MDlBaU5lN1dLaGt3bVJFNFFLNXlp?= =?utf-8?B?M3ErYnRNSGtGaWJwRkNENlptM252R0Z3VllhaCtNM1d6bzN3cVhJSytzOHg3?= =?utf-8?B?TUxCR055a1N0Z3oydnRVOFdCR0liT2ZNOThrOFRhQjdZTXQyZUtsOXlMYWI5?= =?utf-8?B?WDByeDYxQjZuYThjVmNEZDBGOG0wY0tEb0JXemIraVAzTzBvOGZYNWJiQXAz?= =?utf-8?B?Z3dmRGVMQ1JIL2NTRlEwcVNPTkR0WktkRVRwUnk5TnROdWtnUmZXUUk1RXBi?= =?utf-8?B?VFg4L2tRTnZIMTM1VURzQmFpYi9rUmxYbXQvQjh6M3N1NXdKNmVvdEZrWk1w?= =?utf-8?B?MFlURC9ZNWxtSkN2KzFzN01IZ3lhU0svU2FTMktPb1hOY0RTTG9XWHpDQWh0?= =?utf-8?B?RHkrWWVRaStaR1RGNGx2YVRDcWhxVE1zNkt1UmJ1eVluZy9nYzR6WEJLMXJk?= =?utf-8?B?UFBIZmtQVGhxbTAxSG9DejZXdlpCd052OW8wdStUSEp3TEN5cktmOTBLSkhY?= =?utf-8?B?bzI2RnpYVkJ4K1cvVlBnZVFCN1FyQ1hKTWVJcFJub2ZuK3ZRK041WkhESDln?= =?utf-8?B?aFZvOEhtWEFEOXQyVkdtZVduTGgra0YwVlhuNHRFNTBOaHhtbXpkZlk5SlRy?= =?utf-8?Q?b2jaazLhjmbUzFigZkF8bEGlB?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 4ac53715-12c8-4372-ffea-08db6ca3e1ba X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Jun 2023 06:52:12.6713 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: C7TLCb5D2X0gSzBRkxFJsZ+nM9CA3wFqeyDdAXfMFUyxevy+1okieNysvJBEXYkLukdBbhpUNac5vbEtaeoEBg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM7PR04MB6806 On 13.06.2023 21:47, Roberto Bagnara wrote: > On 13/06/23 19:45, Andrew Cooper wrote: >> On 13/06/2023 6:39 pm, Julien Grall wrote: >>> Hi, >>> >>> On 13/06/2023 17:22, Andrew Cooper wrote: >>>> These are disliked specifically by MISRA, but they also interfere >>>> with code >>> >>> Please explicitly name the rule. >> >> I can't remember it off the top of my head. >> >> Stefano/Bertrand? > > Rule 2.1 That's about unreachable code, but inside the constructs there's nothing that's unreachable afaics. Plus expanding "manually" them wouldn't change reachability, would it? Jan From xen-devel-bounces@lists.xenproject.org Wed Jun 14 06:59:27 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 06:59:27 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548470.856438 (Exim 4.92) (envelope-from ) id 1q9KTS-0001Bd-3H; Wed, 14 Jun 2023 06:59:22 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548470.856438; Wed, 14 Jun 2023 06:59:22 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9KTS-0001BW-0O; Wed, 14 Jun 2023 06:59:22 +0000 Received: by outflank-mailman (input) for mailman id 548470; Wed, 14 Jun 2023 06:59:21 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9KTR-0001BO-7w for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 06:59:21 +0000 Received: from EUR05-AM6-obe.outbound.protection.outlook.com (mail-am6eur05on2062d.outbound.protection.outlook.com [2a01:111:f400:7e1b::62d]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id fb97882f-0a80-11ee-8611-37d641c3527e; Wed, 14 Jun 2023 08:59:19 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by AM7PR04MB6806.eurprd04.prod.outlook.com (2603:10a6:20b:103::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.37; Wed, 14 Jun 2023 06:59:16 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.039; Wed, 14 Jun 2023 06:59:16 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: fb97882f-0a80-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=H5wFj/tvFAtS3AtTfMyhH5tjAdb0Ya2PZyIUTdZJSGxqnb7Pk7yP6Wp4VJwQWdaLj/wVkUaD9iJPOCai2hredMy2X8ktXaz3DCTHXSJ9LQHoCK/HNN2f2tBBbAoD7k2Sz/P1tDx7OgsCKHB1oKQPUpEikjBCkD6payZz2C4CQ0TbP1TRDa9WCtQP9VyKPSJUdpdSY3K2mYVYzamSbBSar7yAP6uLr7zHnijCXTxRP+JWyXCa7w4OoBqjAtoEcx+DhcZ6zuWLhkVS2kbV9C1bmScqks/JyGEO3fb21VOCw7nQL1Nwa7OTyo8F2BJjUPuNJFksUxwRAkrX/fywrWv+gQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=W/Uv8+2ut0pU8/8B7q7t2WByz98y1j7agDfdD1y5+ro=; b=hBU5CbB06lKDrzHqe7Bge/g3j5n3rYj1CzWVv0FfxBCwsLCXZU189lOMFQzdTt5xSiRRIUuxyWINqJJKaY7vY6AkN6dsvgpGjwU92rCF3JjBc6/F8LDvtlX1bRvA1pC9KkUuerUeEtf9snXufxvzxL89j8IIEzk8hEjynK+R+tZFcY6ulFr9tL3bpjuQRJLAS0nSdrT7j1ZO3IZJG9bIb948AxVzI1ygq200z4WB9FatDzY1lSjEZ4DA4biI3FX3d/t4PXQkGrhRm5QVOPscwsLg6mp6Qw+sFUBA6C3ei1+34tNGZEdIb4dIYgsNL3SO91+mAQ11+cqBmrHWUWg0HQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=W/Uv8+2ut0pU8/8B7q7t2WByz98y1j7agDfdD1y5+ro=; b=Nf0GIwjlMhqVMdFb8QOzlMOR66nSOIfn/CnfJ72pAlZgoY9+Hz752raHzcd8XZnLLm3ubpXQ+U8f8AAQt5mbyiDrZ1VIgPpYR4gsizfeaForQ+EaIf05AB6oMbsddqnBWmnCKTAIziCKf+djksAntlc/y0abD4Y0U+f5+7XxCqboaQueO1ieS3FeQOQJQDstfj+Ons60KBsh9NJ3aGbMgJPBlzBEAsbf5R41JJonjPuVh8QF7aBLHwNZnM/U9pORXBP+aZtWU1qhfjHfeJq4fUT7ZlItm+sAoV9hlLgu6kfcdWUUuKpsMg5kR3D180Ai8U+pnajCdWzJIrJXL+hGaA== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: Date: Wed, 14 Jun 2023 08:59:14 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH] xen/evtchn: Purge ERROR_EXIT{,_DOM}() Content-Language: en-US To: Andrew Cooper Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , Stefano Stabellini , Julien Grall , Volodymyr Babchuk , Bertrand Marquis , Xen-devel References: <20230613162220.3052184-1-andrew.cooper3@citrix.com> From: Jan Beulich In-Reply-To: <20230613162220.3052184-1-andrew.cooper3@citrix.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR3P281CA0201.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:a5::13) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|AM7PR04MB6806:EE_ X-MS-Office365-Filtering-Correlation-Id: 4b7a9f53-9d42-45b9-d20e-08db6ca4de6d X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 7sB08NL8rhkFdFvetm2i3ysDvGWoveJnXczZkVPqLEViS8Lgju0ZlbRE6jPq6yO7+P9hBbr+ejGe4Qj9qZfahvrm0HcXffwhmnyu+AhS4lSzFYA0I6rDAp1SSJUIc6arvF9QIGyCpI/UpEQnwryXk72ZC2Ngkj1BhuVPjEwk0/xQASt/1i1kbeaI0bf3emn59OeDR3RLEHjD4xLIpx7szzZ2rVm6FatB1WLQ/obi/0gbIHP3tPo9QtW2Ik6bFMU6+L78p99baket61Qpyos2Dpj0X3lBv5ALOifvty7vhEtwfAq1FBnlc4vPwhWlzAIa2U3bGCARG9bncLc0hpUcXJMaJaPsg0Q/NHIbHpRTPcnM9GT1sxt1o5+eA91puGIIekgHJcm8S36Qn95o8lZQI/2sFnbrHUI+2yQ/8on7k5DgKuLSdKeX4DZx8VDkOSQRjxhxFSQAZXQtQ9P7k/0BP4S2HtWYwLQRkKXV2Cv6rMBHorHe8AqnT9pUlbHFT+tctqOG2PPKfPMgQ/v/hb9NMkQjlqbt6ztwrg2kZRQHvG8tjw/tuHWuok6+MryTcnzJLGAxLu0oQVvk6kH/B2hoI725XenJ3g8vnl7O533Za3NOvFqk0K7YCZ+25eYh+xf1ll2oWJVTYnOBUO4vx3W2LA== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(346002)(396003)(376002)(39860400002)(366004)(136003)(451199021)(8936002)(6486002)(26005)(8676002)(6512007)(41300700001)(36756003)(478600001)(38100700002)(66946007)(6916009)(66476007)(86362001)(4326008)(66556008)(31696002)(316002)(54906003)(53546011)(6506007)(5660300002)(83380400001)(186003)(2616005)(2906002)(31686004)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?enQ4Mzl2TWNtR2czSUF5NFJIWWRDdDAzcENoOUFrcmVrM0VFbEVnbEYwYWVs?= =?utf-8?B?RmI2NTB4bDZ4Vlk4YmxMK0xmUzFRRGNwZFYxRUpHcXQ4c0JRSUtnRGtoaGlU?= =?utf-8?B?b2V4bWdwSDd0TVhVTGxlc041UlBlTGVOeDVUc1hTRlJvS2djMFVabUh1TjA4?= =?utf-8?B?TEtaMmdvaUxsUjYyNGdlY1BZV3RiQjA0Wmx6NW9ZWWUvUkQrQ1JPcjhHSlNw?= =?utf-8?B?aHI1Yks3cUdKNzB1RVY2bnV6Y0NsUEZab2xjbmtOaDMzRFpHNWRZQmNKNlpk?= =?utf-8?B?VTgvcDZFdmZNRXdyeDZUV3lMaC9yRlNwU3J2VFlwQVNXRjdLUGtzb3BFbG5q?= =?utf-8?B?SEFYNXVuT2J5ajJ3OWxBM0RzZExPOVB3dktRdVRETncvT2h5V2ZOeVRuUy9l?= =?utf-8?B?OThQNjdFRDFRR1dEWWFEaWhEYXNRZkVyU1p3LytHTmdXSXlMbDBCM1pPSTUw?= =?utf-8?B?UFhkT0tkZVFYSVhjdjRqdDVXR2U1VDZGM0tRSHJIclF1TmRXVVord24xelpn?= =?utf-8?B?M3dTRGxwN0hNa28rUGRoTllRalFMTjZ3Z2dUeHRoTGZiUy80MDZ2QUtROFNw?= =?utf-8?B?c0tlc0RtSXAyNXpIb1dUSjc4MjRWWGZMdmYvbGVzK0F5THRINkxKSFZpSmlD?= =?utf-8?B?VWh0YU5vUjNRNS9JRjk1Tm5mb2RmbTZRN05mczFUMm1CcjNpdEJQanZQZ2Z2?= =?utf-8?B?NGR4cUZxZ0VzMm9HaG92eGN5M1VjVEhxelJJTERCSU5CSjE1eG9JSE9lRTJH?= =?utf-8?B?MGJScXo0Y0lTc0puaVdLR1VvaHZ5dGthb0dCTUVsUnJsVDJYOEgwRTZQekE1?= =?utf-8?B?Y2dwTlJjU20xR1dRc0p2V1J5bDNYZ2JIL2FkWGVEbUViN3ZEY05jQms3Sy90?= =?utf-8?B?b3NwaXJHcEt3ZFQ2dWQ4ZSt5enFTN1U1SzIzSzJ6cTM4Wit5NHdmaDB2azdr?= =?utf-8?B?Y1hITHhmaXRzWkM5bkNWUjNYcmEvZncwbEhDS0ptcVNHUng0Uk4wNGhMUVo0?= =?utf-8?B?TUozODJ1dHpzL3BnUnFXeVVYZmV4TVdxOWg5Y1JUQ0lldmhsNzlyTitCeGRI?= =?utf-8?B?WDZnR0ZEb1B2a1FvY05tYnFkbTVTZWpsZVFmeEFubDNHclZUWnBVMGFsSEtn?= =?utf-8?B?d05RSEJOSVNlZTNxZURDOEk2bVpaQTBCdHQ5NmZOcXlZSmRXOFBkUnVIZFZq?= =?utf-8?B?eDMzOXAyZEp4dHdnQ1k5MGdjajZHMFR0OS9RL1FpZ1huTnppWURGVHRzL2RN?= =?utf-8?B?RnVTa2c5REFjVDdwa0NYSHJsZVhiN2ZlbElReDloZ2hQM2d1NE1YaVEyNWtl?= =?utf-8?B?Z3lZK3o5K3Y1cFlkdE16TFdnRnRUYyt2dytNa0YrSzhYWjI1dlJFekJXSncz?= =?utf-8?B?ZnpZMm85ektNclVsaXRaYjlXR1VWbkd6bnRYUmRjekg3cUplSGpmNWRSV1Yr?= =?utf-8?B?b0dCdDBSdldmTDRPVk9wVHNERG1OSVpBS1FNenlBV3k1VHBJbEdlQi9aVEhu?= =?utf-8?B?TEJSNDBvWlk4QWZBNGdrVVFFMnNIZk9mZWpzR2phYnBkY2VZUWF3WTZaQUcy?= =?utf-8?B?THRpL2EyU2Fwci9ZYmlCSU1SWGhWcTROQ3BOR0xrV2ZDZHJLUkJNaGhVK1hn?= =?utf-8?B?VkZRTHVqVzlYUm9TUnQ5VHBZUnRpK1NTZnJtc2NRWHZwVDFoZHBmZHl5N21C?= =?utf-8?B?OEVFN0gxOGIzbk4wZkdqVFlXRHZOekhJRExKaTJSMXE3T1FPcnJTOWJiWVdm?= =?utf-8?B?RkZwNmtBZENZOVN3R1ZId08yM3JsMjBMSldQRzdNSERNV0tIZWFjd2M5OW4w?= =?utf-8?B?UUpvNWxhYjNZVTVpWnpWa2tEVXpTUEZXOFpkWU01eXMzUlZpemsyK2hLRXNZ?= =?utf-8?B?T1dNZElUZWEvMHpWMGtkcUsrcWYvT3dIMnR2Rm0vT3FBNUpOaFVtOWx5TVQy?= =?utf-8?B?Y2xOQi9Qc25Qa09sWUc0V2MwM2lNUUl6SXZPdGttNGRBdDZ2RXY2VUhZVlhX?= =?utf-8?B?Q0grL2U5V0RKd1REbmEvWWJEOVRhVG1qL0ptclFLaTBQeExMZXFKRTVwRnUy?= =?utf-8?B?WU1HM3ZYcVB0WUZiakorU2JDM3dVTStjeFJ1cjdUWEcvQ2xXUjZDakxzUE45?= =?utf-8?Q?NQu0unhoAOf1OcfxSgUEgF085?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 4b7a9f53-9d42-45b9-d20e-08db6ca4de6d X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Jun 2023 06:59:16.6347 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: BXJkxTawhoAtg0izEsnD8cwG6zsuzTK/I6ceCvAyLmGcjj699na47wL+pB1rjsorOwJwVJOeiehFrezgIhDq9Q== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM7PR04MB6806 On 13.06.2023 18:22, Andrew Cooper wrote: > These are disliked specifically by MISRA, but they also interfere with code > legibility by hiding control flow. Expand and drop them. > > * Rearrange the order of actions to write into rc, then render rc in the > gdprintk(). > * Drop redundant "rc = rc" assignments > * Switch to using %pd for rendering domains With this change, ... > No functional change. Resulting binary is identical. ... I doubt this. Even .text being entirely identical would be pure luck, as message offsets might change slightly depending on how much padding the compiler inserts between them. Furthermore I wonder whether ... > @@ -336,7 +319,11 @@ int evtchn_alloc_unbound(evtchn_alloc_unbound_t *alloc, evtchn_port_t port) > > port = rc = evtchn_get_port(d, port); > if ( rc < 0 ) > - ERROR_EXIT(rc); > + { > + gdprintk(XENLOG_WARNING, "EVTCHNOP failure: error %d\n", rc); > + goto out; > + } ... it wouldn't make sense to mention the actual operation that failed, now that each function has its own message(s). In turn I question the usesfulness of "error" in the message text. Then again I wonder whether it isn't time to purge these gdprintk()s altogether. Surely they served a purpose for bringing up initial Linux and mini-os and alike, but that's been two decades ago now. Jan From xen-devel-bounces@lists.xenproject.org Wed Jun 14 07:03:06 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 07:03:06 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548475.856447 (Exim 4.92) (envelope-from ) id 1q9KX2-0002ic-IN; Wed, 14 Jun 2023 07:03:04 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548475.856447; Wed, 14 Jun 2023 07:03:04 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9KX2-0002iV-FH; Wed, 14 Jun 2023 07:03:04 +0000 Received: by outflank-mailman (input) for mailman id 548475; Wed, 14 Jun 2023 07:03:03 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9KX1-0002iN-74 for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 07:03:03 +0000 Received: from EUR02-AM0-obe.outbound.protection.outlook.com (mail-am0eur02on2060e.outbound.protection.outlook.com [2a01:111:f400:fe13::60e]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 808a232b-0a81-11ee-b232-6b7b168915f2; Wed, 14 Jun 2023 09:03:02 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by DBAPR04MB7462.eurprd04.prod.outlook.com (2603:10a6:10:1a0::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.37; Wed, 14 Jun 2023 07:02:59 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.039; Wed, 14 Jun 2023 07:02:58 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 808a232b-0a81-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=VKjJGLUBrqrwXGioXAYZJM+KcHZN7ZeoGrtME1bIxvBxCuJJHDJ7RumxEsDSxqf1nRQ3dGTooOM3ZAYq5WPLsaBSZmXJdXPdxrlbBANH6Xd/grcMRLP/Wg99NnFA9WetAjjzw9c22VND0ZvYCsyWR0cjMVmUo0+N2tZH5LS0vUGlBtkHLlZBo4sioQJnVBsYDnta1Qlr/loyieO15sqhFVR226leizU3aZghqT7E7IdutfCtPn37AnJvzQ2XLTQlef+QOTF/ua/k+GBi6KpHVFpkdHocb4+KBZni7gPuhI/ghKZ/DbrtXyNCTyWUE1ah/9Pt65U8rxc4HODUduX21A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=yHO5cRG6rhGhB3CnH795D3Agajtj0bX3Uqvd4xLoY4g=; b=B0/YdOHRMT78Qj78XWf1lFuW+YqB8U+DaPaKZZofdD/D3JkqkHPDksTtIFmcsOy0EwckpMokGBmvsRouxlN4kTs8MWWbnSomfJdCXMRGDR9ZXEoXpbZPnkjURW4r+CQ6CQKjUYOwD+AiA8+nLfB4Zqxle5RZzZJyn/hilIpPTx2S+XgJT4v3Q9viVC8VBTmy+T23/zb1DNiy1Q+BmBkzWEm7oeSGuPS169D4iZeENHz1Lr6FyiZBS0U7zbIsEo+L2OtON9dpGnsGdRnGvmMekj66nWOkNdFpggVp4vQOIiyWW/kDi9pd9eBSheSWiXngTKwZE25bJg0oHVegm2lhLg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=yHO5cRG6rhGhB3CnH795D3Agajtj0bX3Uqvd4xLoY4g=; b=EbjKjH03beAKzwKVMpToHhE5fz7rEZvcdOj3YD5DiOz4eKgWrsgW1lPIO2gVHmXdEe2nusdwqkWJ4C48iiuxtMc8QAzvdUqirOsZ8Xo6W50CV0Spb37ugnMhLWeGAL6bWuN8v+DUM0jlsQpVGNZ8MhikpJKU2mThoI9bG8bc9gccUC3Rix3PTvxjMUxCb34MTtI8mc2/hAaXl08YPeYPfQKjqCi3mJFSBy2reyabuTwWk/UOFRcNwTHrZ4PAXVUv42xourxjMix9FYXonlq7AaiZ6Cs9xlENvxrBnQHE2MtDczTKoNIJB7uwT86NZybvCqDGXCWElF1SlZhQZ7NJrw== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <3c6fc607-630d-c52f-06b8-4c5aae97f21f@suse.com> Date: Wed, 14 Jun 2023 09:02:56 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Content-Language: en-US To: "xen-devel@lists.xenproject.org" Cc: Anthony Perard , Wei Liu , Juergen Gross From: Jan Beulich Subject: [PATCH] libxg: shrink variable scope in xc_core_arch_map_p2m_list_rw() Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR3P281CA0001.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:1d::10) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|DBAPR04MB7462:EE_ X-MS-Office365-Filtering-Correlation-Id: deac75ce-a445-44db-cdbd-08db6ca5627d X-LD-Processed: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: zZ/1dJDVSZ5NVRqOX4FWviLYtEB6srdWBACmKKuM7Dl7xb5PkwZcyVxBDpOdjJaOPd4zD6vBTtpXrob8Ji+9zpqH5tlDj/ED4v1AgMY+d7c+z96vDLRSCvGgFTRrxsAHEjqLuQrFcKqEpWIX55TADmoaOQLyijjwi9EEJBXbvNmBmo4tnWqgDFaxW0fGFgzyE8dJEuXB+frShISDuDEtP0fxTIK2uf4NDCZTePxuifjgMOplgbXXfHXCtbWn63YKlnpaO3/g7bi02TjwtudvdrH9IV8CGYKRCkJb6hhojN7b2fKyAygfSiK/r2NSoy1X2BylW/cb7L1MuPaqnCzAaiqj7XTRPc9qvlAsHwU0ZvDMRTMmjU+ZmLG4yJCGhkFeEWzJhzN5UHDnQAbpBhje0aySjYH+t6weI28AMcf6UmapXT6xWAsB7HHYvUDn8SxLuXQK+9d54FugGXe2FEdQU2pxoflSqQ7C4xEhNaStiCH5KOxEY5A2epPByfB4oDOhW+pqRQi2LetYNEnQb067FbSTNvvhq6FVEfYClq3XKeZ3qWnDgBA1olkjXv1muYgWy9RPPPC1DJX9tSdOaOOROx6i4aUHRs37W5VhGWsjheDm7N9BYE7Tv3S50OYVOe30mvhtzvKxLLUMygy4ZSoTUDwejuyZ2I2fY1V0AsGhdXMYEsfdiBnggXdovDUAldjM X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(136003)(366004)(376002)(396003)(346002)(39860400002)(451199021)(31686004)(38100700002)(31696002)(86362001)(8936002)(83380400001)(8676002)(5660300002)(316002)(41300700001)(6916009)(66946007)(66556008)(66476007)(4326008)(54906003)(2616005)(36756003)(478600001)(186003)(107886003)(6506007)(26005)(6512007)(2906002)(6486002)(70780200001)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?a2hCMzUvS0VoWGFUeDJmWENUTVlhZEJtaEVpNnRvWXEvVWt4N2IzbjI3Ujdx?= =?utf-8?B?OUxNZGMzVDNjOWQ4ZHZxWjZzM0g5bU9yL2kvdTV3bkRVVXV5Y2tMVnBlVWZv?= =?utf-8?B?OFJjT3EvRVNJNTdXLzdDYS9LYmp2NnRrRmU3UEpWRWxFbmZIVDhyWTFUZVZL?= =?utf-8?B?OWhhMmZTOGU4ZnBVUlJRblNCeWlhV0E4VXp2UG9hMTd1ZVZBVm5pZmpSczQ1?= =?utf-8?B?WWlmU0FndElXdWttMVNRb3loQTI2cHRlVmwxVCtvMmpTOTZXNE1oTE1qZHIz?= =?utf-8?B?K21IbGc5bTFIeldXV0g0ajFyK2xMYnVDRlBDN2tqRkNUbTBIcDgxSDJwVnF1?= =?utf-8?B?cmdWMDdKS3NXZ1BWR1BpaFVwejZScGk3WXljRGlZNnEyUW0xb2k3Nk1ib1I5?= =?utf-8?B?YUEyOHoraDBqVVlmVEJVYXY5OXkxbDBoOEVFNmVkaGt3WlA4QnhnS2Y5cHFr?= =?utf-8?B?YWFVcEs1aGxyaW5aVUNiSFdQQWcyWVFEd1liRVpycXRwZVVPMkE5ZUIwamlP?= =?utf-8?B?S0JJUTJ4aE1CVWlsTGs2c0lTbFc4UEpKenRGRUIvS2dEd05uWGswSjlicS91?= =?utf-8?B?UEI2Z2FpckdQL0RmT0xiYWxqbkF3VHJJU3p5VzdjR3J2bDMzRUFDb2doNHBo?= =?utf-8?B?akdYQ1pFRjFrb29McEJNdE1xT1lGYWswRWZGMUE4bHVyb0hqNk9QYmRUcTVS?= =?utf-8?B?eEdyNmFvck5MazZ2RkJXNWovZDFaSWlOays2cUZwOG1NeTB5ZUJ4L1pWM0Ri?= =?utf-8?B?WXlWUXZBNWllS2oyaGx3VVQ2ZU1KSmdUeEJlcGs1eEFCUE9TYzFKdFY0YzV3?= =?utf-8?B?Y290T01mZFQvZlJXaTN0RldTdlpSSm5qTGdhMkhBMlhTa2tWc0FYVldFUHRn?= =?utf-8?B?WW81VzF5OTcwU01ETE84N0pLQW9wc3RpSkR5UTBtTFJWbzdBU3doVUxnS2hn?= =?utf-8?B?UnQ4QldaTCtqZHVyeEdhY1VYOTNhdnNEUUllZ2YxanhXQ0sycHJNdG5mNyt3?= =?utf-8?B?c0JQbHhGL2t3SWkyUzhpcWJQWDRlUUs2NzNHL3ZEVGZGQk5YK0JSSXNOOENF?= =?utf-8?B?UEZ5OUZKT3lhZndycnlwZnFkKzYvQ2RRVzFuQjBIaS8rekFyWk1JbnFjQVlO?= =?utf-8?B?d1U4YjIrL1p2dTU5UnVlZTNNakd4NU5LMkZlN3BxR1VsV09rMDNsbUxHVFpW?= =?utf-8?B?U0Y3SWkwc2pPMXZSUHlDbnJGdlhENTJpS0RZRW1rUlNQZnlCa0grZ2VZYmFT?= =?utf-8?B?bU9CYmJmbkNmK0NHMFFVYTd6bFNXN0pEY3JpVDNYQlNnSkM5TG51R2dpNCt2?= =?utf-8?B?ZVorUzlHdmVibUhnbDZHOXd4TEtxVzBMbEZtckhRMklJaWJ3QjdMR05YREtH?= =?utf-8?B?cDJxa3VYUUNmaXdSMHhxK0hrVWNmdjU4bmdZeThUdHF5YVR3ZFBLRDBFZ0pi?= =?utf-8?B?MU5SS0NZVVh5WDNvU3hURExmZHFabTVoSmQ4MmI2UFlkVnI0WDJFMHdRbTdP?= =?utf-8?B?Y3RrUFJadmgrSWR2b3ZhSmdFQ1JGa3E1T2pnWkxXM3prVnlMQTFsYVpQYWVJ?= =?utf-8?B?WS8yRmwvMXpuWllqOVcyZC9sanhEb3FFQVh4clMvTU04NTZCVXpGbUsrNUpK?= =?utf-8?B?UmpCNmZQMGFIK2lzaFN2UHJhV1pFUXNwVFhPbFZKVnkxM2djaXA0M1gydzVz?= =?utf-8?B?Q1NIbGFiNG9ZRzlnK01yRzNNTVgvaWVuVFdrMy9rWEVMUWJHNWdNOEltRzhX?= =?utf-8?B?WS9nUXVzaVBmZVVMK2M2RVNmTjc5Rm4rd2FiaU1mSmtLU3F5V3FEL0J5NXky?= =?utf-8?B?QTFCTEZSOXJSMEdVdXU2YTVZWkhhM05BdGI2aE9UdlBueXdyTWx1d2tXUDN2?= =?utf-8?B?dkUzVEVuSlZWTzRIaGhCWHZuUUJUSjN6cTdSZ3VNSDVUekVNZlVXSVZhWmg3?= =?utf-8?B?eW94WFJiUFU4VjFoRDBCRXVGemthcDlsSmVwVnFrK0J6R1V3cmovQ0QycFR5?= =?utf-8?B?eDRLNHY3alNxQU5MRFZzVnEyK2FrcThnRmx4a1NYcElEL0tSaUQzRm9Zbzhv?= =?utf-8?B?NUs5bW81OHRnQ2pmc09aMEJkZEpiQ0poamdXeUJiMEpXZG52WnJ5WXVhL2xB?= =?utf-8?Q?v1GE+KhZ6a/HAvgF3dl/MmknA?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: deac75ce-a445-44db-cdbd-08db6ca5627d X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Jun 2023 07:02:58.2334 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: Drrne90tasiDh3CYlY8jgK+DdtzH2oNTFJoF5HiXD42fZDSt+DEwzflwFJuWPXzDbDIlMgwMTUpDSxfeO0CFtw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBAPR04MB7462 This in particular allows to drop a dead assignment to "ptes" from near the end of the function. Coverity ID: 1532314 Fixes: bd7a29c3d0b9 ("tools/libs/ctrl: fix xc_core_arch_map_p2m() to support linear p2m table") Signed-off-by: Jan Beulich --- v2: Much bigger change to limit the scope of "ptes" and other variables. --- a/tools/libs/guest/xg_core_x86.c +++ b/tools/libs/guest/xg_core_x86.c @@ -92,11 +92,9 @@ xc_core_arch_map_p2m_list_rw(xc_interfac uint64_t p2m_cr3) { uint64_t p2m_vaddr, p2m_end, mask, off; - xen_pfn_t p2m_mfn, mfn, saved_mfn, max_pfn; - uint64_t *ptes = NULL; + xen_pfn_t p2m_mfn, saved_mfn; xen_pfn_t *mfns = NULL; - unsigned int fpp, n_pages, level, n_levels, shift, - idx_start, idx_end, idx, saved_idx; + unsigned int fpp, level, n_levels, idx_start, idx_end, saved_idx; p2m_vaddr = GET_FIELD(live_shinfo, arch.p2m_vaddr, dinfo->guest_width); fpp = PAGE_SIZE / dinfo->guest_width; @@ -152,8 +150,10 @@ xc_core_arch_map_p2m_list_rw(xc_interfac for ( level = n_levels; level > 0; level-- ) { - n_pages = idx_end - idx_start + 1; - ptes = xc_map_foreign_pages(xch, dom, PROT_READ, mfns, n_pages); + unsigned int n_pages = idx_end - idx_start + 1; + uint64_t *ptes = xc_map_foreign_pages(xch, dom, PROT_READ, mfns, n_pages); + unsigned int shift, idx; + if ( !ptes ) { PERROR("Failed to map %u page table pages for p2m list", n_pages); @@ -169,18 +169,21 @@ xc_core_arch_map_p2m_list_rw(xc_interfac if ( !mfns ) { ERROR("Cannot allocate memory for array of %u mfns", idx); + out_unmap: + munmap(ptes, n_pages * PAGE_SIZE); goto out; } for ( idx = idx_start; idx <= idx_end; idx++ ) { - mfn = (ptes[idx] & 0x000ffffffffff000ULL) >> PAGE_SHIFT; + xen_pfn_t mfn = (ptes[idx] & 0x000ffffffffff000ULL) >> PAGE_SHIFT; + if ( mfn == 0 ) { ERROR("Bad mfn %#lx during page table walk for vaddr %#" PRIx64 " at level %d of p2m list", mfn, off + ((uint64_t)idx << shift), level); errno = ERANGE; - goto out; + goto out_unmap; } mfns[idx - idx_start] = mfn; @@ -197,6 +200,8 @@ xc_core_arch_map_p2m_list_rw(xc_interfac if ( level == 2 ) { + xen_pfn_t max_pfn; + if ( saved_idx == idx_end ) saved_idx++; max_pfn = ((xen_pfn_t)saved_idx << 9) * fpp; @@ -210,7 +215,6 @@ xc_core_arch_map_p2m_list_rw(xc_interfac } munmap(ptes, n_pages * PAGE_SIZE); - ptes = NULL; off = p2m_vaddr & ((mask >> shift) << shift); } @@ -218,8 +222,6 @@ xc_core_arch_map_p2m_list_rw(xc_interfac out: free(mfns); - if ( ptes ) - munmap(ptes, n_pages * PAGE_SIZE); return NULL; } From xen-devel-bounces@lists.xenproject.org Wed Jun 14 07:30:57 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 07:30:57 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548485.856457 (Exim 4.92) (envelope-from ) id 1q9Kxj-0006Xm-Oa; Wed, 14 Jun 2023 07:30:39 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548485.856457; Wed, 14 Jun 2023 07:30:39 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9Kxj-0006Xf-Lq; Wed, 14 Jun 2023 07:30:39 +0000 Received: by outflank-mailman (input) for mailman id 548485; Wed, 14 Jun 2023 07:30:38 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9Kxi-0006XX-Ij for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 07:30:38 +0000 Received: from NAM11-CO1-obe.outbound.protection.outlook.com (mail-co1nam11on20617.outbound.protection.outlook.com [2a01:111:f400:7eab::617]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 5a223fda-0a85-11ee-b232-6b7b168915f2; Wed, 14 Jun 2023 09:30:36 +0200 (CEST) Received: from CY5PR22CA0042.namprd22.prod.outlook.com (2603:10b6:930:1d::35) by DS0PR12MB8504.namprd12.prod.outlook.com (2603:10b6:8:155::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.38; Wed, 14 Jun 2023 07:30:32 +0000 Received: from CY4PEPF0000E9D5.namprd05.prod.outlook.com (2603:10b6:930:1d:cafe::58) by CY5PR22CA0042.outlook.office365.com (2603:10b6:930:1d::35) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.35 via Frontend Transport; Wed, 14 Jun 2023 07:30:32 +0000 Received: from SATLEXMB04.amd.com (165.204.84.17) by CY4PEPF0000E9D5.mail.protection.outlook.com (10.167.241.76) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6500.25 via Frontend Transport; Wed, 14 Jun 2023 07:30:31 +0000 Received: from SATLEXMB04.amd.com (10.181.40.145) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Wed, 14 Jun 2023 02:30:31 -0500 Received: from XIR-MICHALO-L1.xilinx.com (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server id 15.1.2507.23 via Frontend Transport; Wed, 14 Jun 2023 02:30:29 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 5a223fda-0a85-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=mz2HQH1nJGDsZ7lKsObqQ9ZKq0SXBzt3U9xi7EZ1fsQ9wkc6y/DVuK8KrPveM/G2tEngBH3cquiKFghJYaHx65NaC8dAPjZC6ifL+qE4WjojdxVWHZe/AYbWf9gYNpNIwycfe5WCUxpFOhWFrtyop3f+YWA3QH5vEqioUfP5GT0EhsIaDg7OACkU3k8i3PQGgMOIbIpBpP88AyPgsmGNUirYfzl23TciD2Tmfuko/UgSJ8D7wjwAyzNguFA5HSLblg8doy6DMLak2VQlxz0HweyPDL+3JtsYEoEWaMRFWqRbEKHtDcFY74cZNqWigMXURVgXdMqSYIofH1fdf7yQcg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=5BjQ6Rxgf8YRbhZ0pNFfEWib0JAFKG6+d25Ov3Zg444=; b=hjINgnVdw7mF1x0uJTgLfsZDAbqXLkvtPtrYUM4FWqc0paIzdMVWzHdO6xfM5Cn2ub2lK0cZpQHyWzIqbhR4bZJYPNFU7p2EqAjZQwpmjMh/KacLJFmNvidomd0k+6QBRIeZBFmWMEOVaVhM9mbx9g/V08ec1Ve96xxwDOGZA9KQrwKNEd8MVciB1bGrY+SNGQFScn5tEwKD0tjc49x0mVfJrtWrkswu1VdBG8rUdKMY2QgwKHVS0Mqx9ofoJ4mgbvuTJ3NL0CbEe6rwIQggVH8BByqpmtCQmsHhHb43FULsCpa1NA17SS/U38xcEKSrSnilH2t1J0ltkq2DMdVIcA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=5BjQ6Rxgf8YRbhZ0pNFfEWib0JAFKG6+d25Ov3Zg444=; b=nckb5aXKKu+7cSz3ETAg3FpBJh1xbmX93XMLJzTfy4i/ZFoESh/AnFhVbQ/dOQDkcNyjJrVCmMFzTYwR6nNkwCvZ/cRbPLJXJa8/fVc8RwYyMjZaRN59NAH9F7LCwGNPcQo6ZpRXks+ZIyoEroY37yNIHL98mBmzwqVf0ANLcNU= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C From: Michal Orzel To: CC: Michal Orzel , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk , Jan Beulich , Andrew Cooper , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Wei Liu Subject: [PATCH] xen: Append a newline character to panic() where missing Date: Wed, 14 Jun 2023 09:30:18 +0200 Message-ID: <20230614073018.21303-1-michal.orzel@amd.com> X-Mailer: git-send-email 2.25.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CY4PEPF0000E9D5:EE_|DS0PR12MB8504:EE_ X-MS-Office365-Filtering-Correlation-Id: 243a8062-da52-427c-b68a-08db6ca93c57 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: UPYrSpsb//kGV2MYw9P6i5s5pzCGWPf3bRaQkCuWSuKItnHCNv2EWHsLs+5kKtdOQ2GuC5xEApvVlKzsajRYSA7mKkYh8gehtYDV6k2cY4EKLQmbcc4TvmAocxLcO8JjAkRa0PuDmd9Z7Hu7GfBkXnZUGmoiUO8W0f+6jFM+IeeHJ6Lp3HgDX+4Uis+Nns4brWDG/3LZLt+weGHE7qGiqRtsvcTcL+8TwsuPKJvUMZj2+bn6Dyv8XsqYReC2m2O3TuLa7Xzx2p4YBdETmQnDHEsg2489mo9Z6BYazYHZdrzbpQB5WoP+HNsK6CSiVp70T4qOJXa4/uf1TTfP6pRrp0GYS6+IdfRkr8C5MkklQDgGmCNtEVm89BVM2Ne+Frtid7x5KLtVCX8hFkHJiDEgCyTCsgNUYzhL1cD3T2bmsHHq5irap3ot7lz7t5phZBUJWB2qqcCaInetUvkhUQmDAKMSdkX7HTcWYv8JnpMHpwqMvEHQRUlqETYMQjK9V7KkYBlLzOdTAsky62qphNYYo5kflQV1fpnPpLJC2RiBtjVLKVDldk5Z20R5AZnEkDwNIIipQjSiLMRJOsjjMcpBLoc5zcWQuKOlggCVCE95vgdzWoyOG2EiwgirnUglfdeD6IyggNTQH4JCvMctdJteRFZlWGMKqPzdmsLV6FZT2B7gDpeRw8me/0d98+e12MzeBeKwGKwcUqr5O7rNHNvxrcS7V1/9JwxRHUPrb0yA79epDFIajCQRdkQhqfkOksKKVY9Cb8QcqJqzs3m3CA+uPA== X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(136003)(39860400002)(346002)(376002)(396003)(451199021)(46966006)(40470700004)(36840700001)(8676002)(8936002)(2906002)(82310400005)(5660300002)(82740400003)(316002)(70586007)(70206006)(356005)(81166007)(4326008)(6916009)(36860700001)(47076005)(83380400001)(54906003)(426003)(336012)(41300700001)(2616005)(36756003)(478600001)(186003)(1076003)(26005)(40480700001)(6666004)(40460700003)(44832011)(86362001)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Jun 2023 07:30:31.9773 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 243a8062-da52-427c-b68a-08db6ca93c57 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com] X-MS-Exchange-CrossTenant-AuthSource: CY4PEPF0000E9D5.namprd05.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS0PR12MB8504 Missing newline is inconsistent with the rest of the callers, since panic() expects it. Signed-off-by: Michal Orzel --- xen/arch/arm/bootfdt.c | 2 +- xen/arch/arm/domain_build.c | 6 +++--- xen/arch/x86/cpu/microcode/core.c | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/xen/arch/arm/bootfdt.c b/xen/arch/arm/bootfdt.c index b6f92a174f5f..2673ad17a1e1 100644 --- a/xen/arch/arm/bootfdt.c +++ b/xen/arch/arm/bootfdt.c @@ -225,7 +225,7 @@ static int __init process_reserved_memory_node(const void *fdt, int node, size_cells, data); if ( rc == -ENOSPC ) - panic("Max number of supported reserved-memory regions reached."); + panic("Max number of supported reserved-memory regions reached.\n"); else if ( rc != -ENOENT ) return rc; return 0; diff --git a/xen/arch/arm/domain_build.c b/xen/arch/arm/domain_build.c index 579bc8194fed..d0d6be922db1 100644 --- a/xen/arch/arm/domain_build.c +++ b/xen/arch/arm/domain_build.c @@ -74,7 +74,7 @@ int __init parse_arch_dom0_param(const char *s, const char *e) return 0; #else - panic("'sve' property found, but CONFIG_ARM64_SVE not selected"); + panic("'sve' property found, but CONFIG_ARM64_SVE not selected\n"); #endif } @@ -697,7 +697,7 @@ static void __init allocate_static_memory(struct domain *d, return; fail: - panic("Failed to allocate requested static memory for domain %pd.", d); + panic("Failed to allocate requested static memory for domain %pd.\n", d); } /* @@ -769,7 +769,7 @@ static void __init assign_static_memory_11(struct domain *d, return; fail: - panic("Failed to assign requested static memory for direct-map domain %pd.", + panic("Failed to assign requested static memory for direct-map domain %pd.\n", d); } diff --git a/xen/arch/x86/cpu/microcode/core.c b/xen/arch/x86/cpu/microcode/core.c index e65af4b82ea3..c3fee629063e 100644 --- a/xen/arch/x86/cpu/microcode/core.c +++ b/xen/arch/x86/cpu/microcode/core.c @@ -524,7 +524,7 @@ static int control_thread_fn(const struct microcode_patch *patch) */ if ( wait_for_condition(wait_cpu_callout, (done + 1), MICROCODE_UPDATE_TIMEOUT_US) ) - panic("Timeout when finished updating microcode (finished %u/%u)", + panic("Timeout when finished updating microcode (finished %u/%u)\n", done, nr_cores); /* Print warning message once if long time is spent here */ base-commit: 2f69ef96801f0d2b9646abf6396e60f99c56e3a0 -- 2.25.1 From xen-devel-bounces@lists.xenproject.org Wed Jun 14 07:35:19 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 07:35:19 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548504.856468 (Exim 4.92) (envelope-from ) id 1q9L27-0007KB-KU; Wed, 14 Jun 2023 07:35:11 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548504.856468; Wed, 14 Jun 2023 07:35:11 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9L27-0007K4-Gk; Wed, 14 Jun 2023 07:35:11 +0000 Received: by outflank-mailman (input) for mailman id 548504; Wed, 14 Jun 2023 07:35:10 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9L26-0007Jv-FM for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 07:35:10 +0000 Received: from smtp-out1.suse.de (smtp-out1.suse.de [2001:67c:2178:6::1c]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id fd3b4439-0a85-11ee-b232-6b7b168915f2; Wed, 14 Jun 2023 09:35:09 +0200 (CEST) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by smtp-out1.suse.de (Postfix) with ESMTPS id B0FB8224BD; Wed, 14 Jun 2023 07:35:08 +0000 (UTC) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id 4F49D1391E; Wed, 14 Jun 2023 07:35:08 +0000 (UTC) Received: from dovecot-director2.suse.de ([192.168.254.65]) by imap2.suse-dmz.suse.de with ESMTPSA id ptTrEaxtiWQoHwAAMHmgww (envelope-from ); Wed, 14 Jun 2023 07:35:08 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: fd3b4439-0a85-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1; t=1686728108; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version: content-transfer-encoding:content-transfer-encoding; bh=DKwEXvQ/TjIOVrDCEZt6GgF/0TeYMetCURbmcH31IcQ=; b=g0lEzuk3UgE0XT4LICu9CQ8Y7UU4W868WxIWRYK3LfzxvongqDRrplMWTOJ0lsvMcEKsgQ pQwij1boQIpk+NBk2wUrrNHBk0WoBx+9hjvNwDIltkt8JLAXBBtcgC6EfctPN/AUPFX5Kj XrWGUQNod2rx8BHiEBf3fk6ZQaUr63U= From: Juergen Gross To: linux-kernel@vger.kernel.org, x86@kernel.org Cc: Juergen Gross , Boris Ostrovsky , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , "H. Peter Anvin" , xen-devel@lists.xenproject.org, Stefano Stabellini , Oleksandr Tyshchenko Subject: [PATCH v4 0/2] x86: xen: add missing prototypes Date: Wed, 14 Jun 2023 09:34:59 +0200 Message-Id: <20230614073501.10101-1-jgross@suse.com> X-Mailer: git-send-email 2.35.3 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Avoid missing prototype warnings. Arnd Bergmann (1): x86: xen: add missing prototypes Juergen Gross (1): x86/xen: add prototypes for paravirt mmu functions arch/x86/xen/efi.c | 2 ++ arch/x86/xen/mmu_pv.c | 16 ++++++++++++++++ arch/x86/xen/smp.h | 4 ++++ arch/x86/xen/smp_pv.c | 1 - arch/x86/xen/xen-ops.h | 3 +++ include/xen/xen.h | 3 +++ 6 files changed, 28 insertions(+), 1 deletion(-) -- 2.35.3 From xen-devel-bounces@lists.xenproject.org Wed Jun 14 07:35:19 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 07:35:19 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548505.856478 (Exim 4.92) (envelope-from ) id 1q9L2F-0007bl-Qm; Wed, 14 Jun 2023 07:35:19 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548505.856478; Wed, 14 Jun 2023 07:35:19 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9L2F-0007bc-No; Wed, 14 Jun 2023 07:35:19 +0000 Received: by outflank-mailman (input) for mailman id 548505; Wed, 14 Jun 2023 07:35:18 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9L2E-0007aV-3M for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 07:35:18 +0000 Received: from smtp-out1.suse.de (smtp-out1.suse.de [195.135.220.28]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 008c9f71-0a86-11ee-8611-37d641c3527e; Wed, 14 Jun 2023 09:35:14 +0200 (CEST) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by smtp-out1.suse.de (Postfix) with ESMTPS id 73AED21857; Wed, 14 Jun 2023 07:35:14 +0000 (UTC) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id 20CA01391E; Wed, 14 Jun 2023 07:35:14 +0000 (UTC) Received: from dovecot-director2.suse.de ([192.168.254.65]) by imap2.suse-dmz.suse.de with ESMTPSA id wH2bBrJtiWQyHwAAMHmgww (envelope-from ); Wed, 14 Jun 2023 07:35:14 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 008c9f71-0a86-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1; t=1686728114; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=YgJA17a1c7AVDrVoB4HwZlBuwIqmPEUlEc3gzIFv3pY=; b=SrM4IiLyt4N7guH1CZIQ0nKGj3L6b9HODrNWAv2YMcYoNAzVz4cSCZUEiGSmZnKipU46r4 2rb0hubPsFyJGeQAp07phllcBHG8owzj2AAk30x9UBgKykWUiR7mPeWxvtj2r6yf+D8NcY MlCT16p+pawSJdSdangqU0dacCuGAAU= From: Juergen Gross To: linux-kernel@vger.kernel.org, x86@kernel.org Cc: Juergen Gross , Boris Ostrovsky , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , "H. Peter Anvin" , xen-devel@lists.xenproject.org, Arnd Bergmann Subject: [PATCH v4 1/2] x86/xen: add prototypes for paravirt mmu functions Date: Wed, 14 Jun 2023 09:35:00 +0200 Message-Id: <20230614073501.10101-2-jgross@suse.com> X-Mailer: git-send-email 2.35.3 In-Reply-To: <20230614073501.10101-1-jgross@suse.com> References: <20230614073501.10101-1-jgross@suse.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit The paravirt MMU functions called via the PV_CALLEE_SAVE_REGS_THUNK() macro can't be defined to be static, as the macro is generating a function via asm() statement calling the paravirt MMU function. In order to avoid warnings when specifying "-Wmissing-prototypes" for the build, add local prototypes (there should never be any external caller of those functions). Reported-by: Arnd Bergmann Signed-off-by: Juergen Gross --- arch/x86/xen/mmu_pv.c | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/arch/x86/xen/mmu_pv.c b/arch/x86/xen/mmu_pv.c index b3b8d289b9ab..e0a975165de7 100644 --- a/arch/x86/xen/mmu_pv.c +++ b/arch/x86/xen/mmu_pv.c @@ -86,6 +86,22 @@ #include "mmu.h" #include "debugfs.h" +/* + * Prototypes for functions called via PV_CALLEE_SAVE_REGS_THUNK() in order + * to avoid warnings with "-Wmissing-prototypes". + */ +pteval_t xen_pte_val(pte_t pte); +pgdval_t xen_pgd_val(pgd_t pgd); +pmdval_t xen_pmd_val(pmd_t pmd); +pudval_t xen_pud_val(pud_t pud); +p4dval_t xen_p4d_val(p4d_t p4d); +pte_t xen_make_pte(pteval_t pte); +pgd_t xen_make_pgd(pgdval_t pgd); +pmd_t xen_make_pmd(pmdval_t pmd); +pud_t xen_make_pud(pudval_t pud); +p4d_t xen_make_p4d(p4dval_t p4d); +pte_t xen_make_pte_init(pteval_t pte); + #ifdef CONFIG_X86_VSYSCALL_EMULATION /* l3 pud for userspace vsyscall mapping */ static pud_t level3_user_vsyscall[PTRS_PER_PUD] __page_aligned_bss; -- 2.35.3 From xen-devel-bounces@lists.xenproject.org Wed Jun 14 07:35:23 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 07:35:23 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548506.856488 (Exim 4.92) (envelope-from ) id 1q9L2J-0007si-4I; Wed, 14 Jun 2023 07:35:23 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548506.856488; Wed, 14 Jun 2023 07:35:23 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9L2I-0007sb-W8; Wed, 14 Jun 2023 07:35:22 +0000 Received: by outflank-mailman (input) for mailman id 548506; Wed, 14 Jun 2023 07:35:22 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9L2I-0007aV-AA for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 07:35:22 +0000 Received: from smtp-out2.suse.de (smtp-out2.suse.de [2001:67c:2178:6::1d]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 03f7a4a0-0a86-11ee-8611-37d641c3527e; Wed, 14 Jun 2023 09:35:20 +0200 (CEST) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by smtp-out2.suse.de (Postfix) with ESMTPS id 3C98C1FD6A; Wed, 14 Jun 2023 07:35:20 +0000 (UTC) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id DA9731391E; Wed, 14 Jun 2023 07:35:19 +0000 (UTC) Received: from dovecot-director2.suse.de ([192.168.254.65]) by imap2.suse-dmz.suse.de with ESMTPSA id EWQDNLdtiWRVHwAAMHmgww (envelope-from ); Wed, 14 Jun 2023 07:35:19 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 03f7a4a0-0a86-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1; t=1686728120; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=jKTmIuG44BdSii87EddLytcEKZcOQpLokCYRhdq7cjM=; b=oIvCas+cd9SDP91Ts9iEvkChPfeGhwMxFt/iaiZ5ygGF17F6cJ/XiH08XzsYKrHT8MXhtk 6itKTL5e3Mx72I9S8uNCXhCl8VGkXe5kOsPCRfg2k1Uwuc9pmmZN713yyAOvhkzO+oqPPr l4PHceSRrfbdCugCtHRe4hhYqyrrFUc= From: Juergen Gross To: linux-kernel@vger.kernel.org, x86@kernel.org Cc: Arnd Bergmann , Juergen Gross , Boris Ostrovsky , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , "H. Peter Anvin" , Stefano Stabellini , Oleksandr Tyshchenko , xen-devel@lists.xenproject.org Subject: [PATCH v4 2/2] x86: xen: add missing prototypes Date: Wed, 14 Jun 2023 09:35:01 +0200 Message-Id: <20230614073501.10101-3-jgross@suse.com> X-Mailer: git-send-email 2.35.3 In-Reply-To: <20230614073501.10101-1-jgross@suse.com> References: <20230614073501.10101-1-jgross@suse.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit From: Arnd Bergmann These function are all called from assembler files, or from inline assembler, so there is no immediate need for a prototype in a header, but if -Wmissing-prototypes is enabled, the compiler warns about them: arch/x86/xen/efi.c:130:13: error: no previous prototype for 'xen_efi_init' [-Werror=missing-prototypes] arch/x86/platform/pvh/enlighten.c:120:13: error: no previous prototype for 'xen_prepare_pvh' [-Werror=missing-prototypes] arch/x86/xen/enlighten_pv.c:1233:34: error: no previous prototype for 'xen_start_kernel' [-Werror=missing-prototypes] arch/x86/xen/irq.c:22:14: error: no previous prototype for 'xen_force_evtchn_callback' [-Werror=missing-prototypes] arch/x86/entry/common.c:302:24: error: no previous prototype for 'xen_pv_evtchn_do_upcall' [-Werror=missing-prototypes] Declare all of them in an appropriate header file to avoid the warnings. For consistency, also move the asm_cpu_bringup_and_idle() declaration out of smp_pv.c. Signed-off-by: Arnd Bergmann Signed-off-by: Juergen Gross --- v4: [jgross]: remove some stubs, carve out mmu_pv.c prototypes into other patch v3: move declations of conditional function in an #ifdef with a stub v2: fix up changelog --- arch/x86/xen/efi.c | 2 ++ arch/x86/xen/smp.h | 4 ++++ arch/x86/xen/smp_pv.c | 1 - arch/x86/xen/xen-ops.h | 3 +++ include/xen/xen.h | 3 +++ 5 files changed, 12 insertions(+), 1 deletion(-) diff --git a/arch/x86/xen/efi.c b/arch/x86/xen/efi.c index 7d7ffb9c826a..863d0d6b3edc 100644 --- a/arch/x86/xen/efi.c +++ b/arch/x86/xen/efi.c @@ -16,6 +16,8 @@ #include #include +#include "xen-ops.h" + static efi_char16_t vendor[100] __initdata; static efi_system_table_t efi_systab_xen __initdata = { diff --git a/arch/x86/xen/smp.h b/arch/x86/xen/smp.h index 22fb982ff971..c20cbb14c82b 100644 --- a/arch/x86/xen/smp.h +++ b/arch/x86/xen/smp.h @@ -2,6 +2,10 @@ #ifndef _XEN_SMP_H #ifdef CONFIG_SMP + +void asm_cpu_bringup_and_idle(void); +asmlinkage void cpu_bringup_and_idle(void); + extern void xen_send_IPI_mask(const struct cpumask *mask, int vector); extern void xen_send_IPI_mask_allbutself(const struct cpumask *mask, diff --git a/arch/x86/xen/smp_pv.c b/arch/x86/xen/smp_pv.c index a9cf8c8fa074..9ccf9759870d 100644 --- a/arch/x86/xen/smp_pv.c +++ b/arch/x86/xen/smp_pv.c @@ -55,7 +55,6 @@ static DEFINE_PER_CPU(struct xen_common_irq, xen_irq_work) = { .irq = -1 }; static DEFINE_PER_CPU(struct xen_common_irq, xen_pmu_irq) = { .irq = -1 }; static irqreturn_t xen_irq_work_interrupt(int irq, void *dev_id); -void asm_cpu_bringup_and_idle(void); static void cpu_bringup(void) { diff --git a/arch/x86/xen/xen-ops.h b/arch/x86/xen/xen-ops.h index a10903785a33..1bbbe216e6e1 100644 --- a/arch/x86/xen/xen-ops.h +++ b/arch/x86/xen/xen-ops.h @@ -148,9 +148,12 @@ int xen_cpuhp_setup(int (*cpu_up_prepare_cb)(unsigned int), void xen_pin_vcpu(int cpu); void xen_emergency_restart(void); +void xen_force_evtchn_callback(void); + #ifdef CONFIG_XEN_PV void xen_pv_pre_suspend(void); void xen_pv_post_suspend(int suspend_cancelled); +void xen_start_kernel(struct start_info *si); #else static inline void xen_pv_pre_suspend(void) {} static inline void xen_pv_post_suspend(int suspend_cancelled) {} diff --git a/include/xen/xen.h b/include/xen/xen.h index 0efeb652f9b8..f989162983c3 100644 --- a/include/xen/xen.h +++ b/include/xen/xen.h @@ -31,6 +31,9 @@ extern uint32_t xen_start_flags; #include extern struct hvm_start_info pvh_start_info; +void xen_prepare_pvh(void); +struct pt_regs; +void xen_pv_evtchn_do_upcall(struct pt_regs *regs); #ifdef CONFIG_XEN_DOM0 #include -- 2.35.3 From xen-devel-bounces@lists.xenproject.org Wed Jun 14 07:42:14 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 07:42:14 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548533.856497 (Exim 4.92) (envelope-from ) id 1q9L8n-0001bT-VD; Wed, 14 Jun 2023 07:42:05 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548533.856497; Wed, 14 Jun 2023 07:42:05 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9L8n-0001bM-SZ; Wed, 14 Jun 2023 07:42:05 +0000 Received: by outflank-mailman (input) for mailman id 548533; Wed, 14 Jun 2023 07:42:05 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9L8m-0001bG-W5 for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 07:42:04 +0000 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by se1-gles-flk1.inumbo.com (Halon) with ESMTP id f233bc94-0a86-11ee-8611-37d641c3527e; Wed, 14 Jun 2023 09:42:00 +0200 (CEST) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id F29671FB; Wed, 14 Jun 2023 00:42:43 -0700 (PDT) Received: from e125920.cambridge.arm.com (e125920.cambridge.arm.com [10.1.199.64]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 92AB13F663; Wed, 14 Jun 2023 00:41:58 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: f233bc94-0a86-11ee-8611-37d641c3527e From: Peter Hoyes To: xen-devel@lists.xenproject.org Cc: bertrand.marquis@arm.com, wei.chen@arm.com, Peter Hoyes , Wei Liu , Anthony PERARD Subject: [PATCH 1/2] tools/console: Add escape argument to configure escape character Date: Wed, 14 Jun 2023 08:41:43 +0100 Message-Id: <20230614074144.3505250-1-peter.hoyes@arm.com> X-Mailer: git-send-email 2.34.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit From: Peter Hoyes Dom0 may be accessed via telnet, meaning the default escape character (which is the same as telnet's) cannot be directly used to exit the console. It would be helpful to make the escape character customizable in such use cases. Add --escape argument to console tool for this purpose. Create parse_escape_character static function to convert a character string (which may include a '^' modifier) into an ANSI integer. Add argument to getopt options, parse escape character and pass value to console_loop. If --escape is not specified, it falls back to the existing behavior using DEFAULT_ESCAPE_SEQUENCE. Issue-Id: SCM-4958 Signed-off-by: Peter Hoyes Change-Id: I3795e654b382e78144d8210f303e3ebccec457ed --- tools/console/client/main.c | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) diff --git a/tools/console/client/main.c b/tools/console/client/main.c index 6775006488..fb7cfb04b5 100644 --- a/tools/console/client/main.c +++ b/tools/console/client/main.c @@ -42,7 +42,7 @@ #include #include "xenctrl.h" -#define ESCAPE_CHARACTER 0x1d +#define DEFAULT_ESCAPE_CHARACTER 0x1d static volatile sig_atomic_t received_signal = 0; static char lockfile[sizeof (XEN_LOCK_DIR "/xenconsole.") + 8] = { 0 }; @@ -77,6 +77,7 @@ static void usage(const char *program) { " -n, --num N use console number N\n" " --type TYPE console type. must be 'pv', 'serial' or 'vuart'\n" " --start-notify-fd N file descriptor used to notify parent\n" + " --escape E escape sequence to exit console\n" , program); } @@ -174,7 +175,7 @@ static void restore_term(int fd, struct termios *old) } static int console_loop(int fd, struct xs_handle *xs, char *pty_path, - bool interactive) + bool interactive, char escape_character) { int ret, xs_fd = xs_fileno(xs), max_fd = -1; @@ -215,7 +216,7 @@ static int console_loop(int fd, struct xs_handle *xs, char *pty_path, char msg[60]; len = read(STDIN_FILENO, msg, sizeof(msg)); - if (len == 1 && msg[0] == ESCAPE_CHARACTER) { + if (len == 1 && msg[0] == escape_character) { return 0; } @@ -335,6 +336,7 @@ int main(int argc, char **argv) { "help", 0, 0, 'h' }, { "start-notify-fd", 1, 0, 's' }, { "interactive", 0, 0, 'i' }, + { "escape", 1, 0, 'e' }, { 0 }, }; @@ -345,6 +347,7 @@ int main(int argc, char **argv) console_type type = CONSOLE_INVAL; bool interactive = 0; const char *console_names = "serial, pv, vuart"; + char escape_character = DEFAULT_ESCAPE_CHARACTER; while((ch = getopt_long(argc, argv, sopt, lopt, &opt_ind)) != -1) { switch(ch) { @@ -375,6 +378,12 @@ int main(int argc, char **argv) case 'i': interactive = 1; break; + case 'e': + if (optarg[0] == '^') + escape_character = optarg[1] & 0x1f; + else + escape_character = optarg[0]; + break; default: fprintf(stderr, "Invalid argument\n"); fprintf(stderr, "Try `%s --help' for more information.\n", @@ -493,7 +502,7 @@ int main(int argc, char **argv) close(start_notify_fd); } - console_loop(spty, xs, path, interactive); + console_loop(spty, xs, path, interactive, escape_character); free(path); free(dom_path); -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Wed Jun 14 07:42:14 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 07:42:14 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548534.856508 (Exim 4.92) (envelope-from ) id 1q9L8u-0001rp-6Q; Wed, 14 Jun 2023 07:42:12 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548534.856508; Wed, 14 Jun 2023 07:42:12 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9L8u-0001ri-3b; Wed, 14 Jun 2023 07:42:12 +0000 Received: by outflank-mailman (input) for mailman id 548534; Wed, 14 Jun 2023 07:42:11 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9L8t-0001bG-9N for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 07:42:11 +0000 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by se1-gles-flk1.inumbo.com (Halon) with ESMTP id f75dd4a3-0a86-11ee-8611-37d641c3527e; Wed, 14 Jun 2023 09:42:08 +0200 (CEST) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id D7EF81FB; Wed, 14 Jun 2023 00:42:52 -0700 (PDT) Received: from e125920.cambridge.arm.com (e125920.cambridge.arm.com [10.1.199.64]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 5FBA93F663; Wed, 14 Jun 2023 00:42:07 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: f75dd4a3-0a86-11ee-8611-37d641c3527e From: Peter Hoyes To: xen-devel@lists.xenproject.org Cc: bertrand.marquis@arm.com, wei.chen@arm.com, Peter Hoyes , Wei Liu , Anthony PERARD , Juergen Gross Subject: [PATCH 2/2] xl: Add escape character argument to xl console Date: Wed, 14 Jun 2023 08:41:44 +0100 Message-Id: <20230614074144.3505250-2-peter.hoyes@arm.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20230614074144.3505250-1-peter.hoyes@arm.com> References: <20230614074144.3505250-1-peter.hoyes@arm.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit From: Peter Hoyes Add -e argument to xl console and pass to new escape_character argument of libxl_console_exec. In libxl_console_exec, there are currently two call sites to execl, which uses varargs, in order to support optionally passing 'start-notify-fd' to the console client. In order to support passing the 'escape' argument optionally too, refactor to instead have a single call site to execv, which has the same behavior but takes an array of arguments. If -e is not specified, --escape is not passed to the console client and the existing value (^]) is used as a default. Issue-Id: SCM-4958 Signed-off-by: Peter Hoyes Change-Id: I80ffbb7fecc63e023ec1c7f1e4ad7979ccf8da44 --- tools/include/libxl.h | 8 ++++++-- tools/libs/light/libxl_console.c | 30 ++++++++++++++++++++++-------- tools/xl/xl_cmdtable.c | 3 ++- tools/xl/xl_console.c | 10 +++++++--- tools/xl/xl_vmcontrol.c | 2 +- 5 files changed, 38 insertions(+), 15 deletions(-) diff --git a/tools/include/libxl.h b/tools/include/libxl.h index cac641a7eb..c513c39483 100644 --- a/tools/include/libxl.h +++ b/tools/include/libxl.h @@ -1958,7 +1958,8 @@ int libxl_vncviewer_exec(libxl_ctx *ctx, uint32_t domid, int autopass); * the caller that it has connected to the guest console. */ int libxl_console_exec(libxl_ctx *ctx, uint32_t domid, int cons_num, - libxl_console_type type, int notify_fd); + libxl_console_type type, int notify_fd, + char* escape_character); /* libxl_primary_console_exec finds the domid and console number * corresponding to the primary console of the given vm, then calls * libxl_console_exec with the right arguments (domid might be different @@ -1968,9 +1969,12 @@ int libxl_console_exec(libxl_ctx *ctx, uint32_t domid, int cons_num, * guests using pygrub. * If notify_fd is not -1, xenconsole will write 0x00 to it to nofity * the caller that it has connected to the guest console. + * If escape_character is not NULL, the provided value is used to exit + * the guest console. */ int libxl_primary_console_exec(libxl_ctx *ctx, uint32_t domid_vm, - int notify_fd); + int notify_fd, + char* escape_character); #if defined(LIBXL_API_VERSION) && LIBXL_API_VERSION < 0x040800 diff --git a/tools/libs/light/libxl_console.c b/tools/libs/light/libxl_console.c index f497be141b..0b7293fe71 100644 --- a/tools/libs/light/libxl_console.c +++ b/tools/libs/light/libxl_console.c @@ -52,7 +52,8 @@ out: } int libxl_console_exec(libxl_ctx *ctx, uint32_t domid, int cons_num, - libxl_console_type type, int notify_fd) + libxl_console_type type, int notify_fd, + char* escape_character) { GC_INIT(ctx); char *p = GCSPRINTF("%s/xenconsole", libxl__private_bindir_path()); @@ -75,15 +76,26 @@ int libxl_console_exec(libxl_ctx *ctx, uint32_t domid, int cons_num, goto out; } + char *args[] = { + p, domid_s, "--num", cons_num_s, "--type", cons_type_s, + NULL, NULL, NULL, NULL, // start-notify-fd, escape + NULL, // list terminator - do not use + }; + char **args_extra = args + 6; + if (notify_fd != -1) { notify_fd_s = GCSPRINTF("%d", notify_fd); - execl(p, p, domid_s, "--num", cons_num_s, "--type", cons_type_s, - "--start-notify-fd", notify_fd_s, (void *)NULL); - } else { - execl(p, p, domid_s, "--num", cons_num_s, "--type", cons_type_s, - (void *)NULL); + *args_extra++ = "--start-notify-fd"; + *args_extra++ = notify_fd_s; } + if (escape_character) { + *args_extra++ = "--escape"; + *args_extra++ = escape_character; + } + + execv(p, args); + out: GC_FREE; return ERROR_FAIL; @@ -156,7 +168,8 @@ out: return rc; } -int libxl_primary_console_exec(libxl_ctx *ctx, uint32_t domid_vm, int notify_fd) +int libxl_primary_console_exec(libxl_ctx *ctx, uint32_t domid_vm, int notify_fd, + char* escape_character) { uint32_t domid; int cons_num; @@ -165,7 +178,8 @@ int libxl_primary_console_exec(libxl_ctx *ctx, uint32_t domid_vm, int notify_fd) rc = libxl__primary_console_find(ctx, domid_vm, &domid, &cons_num, &type); if ( rc ) return rc; - return libxl_console_exec(ctx, domid, cons_num, type, notify_fd); + return libxl_console_exec(ctx, domid, cons_num, type, notify_fd, + escape_character); } int libxl_primary_console_get_tty(libxl_ctx *ctx, uint32_t domid_vm, diff --git a/tools/xl/xl_cmdtable.c b/tools/xl/xl_cmdtable.c index ccf4d83584..67604e9536 100644 --- a/tools/xl/xl_cmdtable.c +++ b/tools/xl/xl_cmdtable.c @@ -141,7 +141,8 @@ const struct cmd_spec cmd_table[] = { "Attach to domain's console", "[options] \n" "-t console type, pv , serial or vuart\n" - "-n console number" + "-n console number\n" + "-e escape character" }, { "vncviewer", &main_vncviewer, 0, 0, diff --git a/tools/xl/xl_console.c b/tools/xl/xl_console.c index b27f9e0136..5633c6f6f7 100644 --- a/tools/xl/xl_console.c +++ b/tools/xl/xl_console.c @@ -28,8 +28,9 @@ int main_console(int argc, char **argv) int opt = 0, num = 0; libxl_console_type type = 0; const char *console_names = "pv, serial, vuart"; + char* escape_character = NULL; - SWITCH_FOREACH_OPT(opt, "n:t:", NULL, "console", 1) { + SWITCH_FOREACH_OPT(opt, "n:t:e:", NULL, "console", 1) { case 't': if (!strcmp(optarg, "pv")) type = LIBXL_CONSOLE_TYPE_PV; @@ -45,13 +46,16 @@ int main_console(int argc, char **argv) case 'n': num = atoi(optarg); break; + case 'e': + escape_character = optarg; + break; } domid = find_domain(argv[optind]); if (!type) - libxl_primary_console_exec(ctx, domid, -1); + libxl_primary_console_exec(ctx, domid, -1, escape_character); else - libxl_console_exec(ctx, domid, num, type, -1); + libxl_console_exec(ctx, domid, num, type, -1, escape_character); fprintf(stderr, "Unable to attach console\n"); return EXIT_FAILURE; } diff --git a/tools/xl/xl_vmcontrol.c b/tools/xl/xl_vmcontrol.c index 5518c78dc6..03971927e9 100644 --- a/tools/xl/xl_vmcontrol.c +++ b/tools/xl/xl_vmcontrol.c @@ -643,7 +643,7 @@ static void autoconnect_console(libxl_ctx *ctx_ignored, postfork(); sleep(1); - libxl_primary_console_exec(ctx, bldomid, notify_fd); + libxl_primary_console_exec(ctx, bldomid, notify_fd, NULL); /* Do not return. xl continued in child process */ perror("xl: unable to exec console client"); _exit(1); -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Wed Jun 14 07:45:35 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 07:45:35 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548547.856518 (Exim 4.92) (envelope-from ) id 1q9LC4-0002pZ-PM; Wed, 14 Jun 2023 07:45:28 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548547.856518; Wed, 14 Jun 2023 07:45:28 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9LC4-0002pS-Lz; Wed, 14 Jun 2023 07:45:28 +0000 Received: by outflank-mailman (input) for mailman id 548547; Wed, 14 Jun 2023 07:45:26 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9LC2-0002pM-Fo for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 07:45:26 +0000 Received: from EUR02-AM0-obe.outbound.protection.outlook.com (mail-am0eur02on2061b.outbound.protection.outlook.com [2a01:111:f400:fe13::61b]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 6c57469f-0a87-11ee-b232-6b7b168915f2; Wed, 14 Jun 2023 09:45:25 +0200 (CEST) Received: from AM0PR01CA0147.eurprd01.prod.exchangelabs.com (2603:10a6:208:aa::16) by AS8PR08MB5960.eurprd08.prod.outlook.com (2603:10a6:20b:29a::23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.37; Wed, 14 Jun 2023 07:45:22 +0000 Received: from AM7EUR03FT012.eop-EUR03.prod.protection.outlook.com (2603:10a6:208:aa:cafe::ab) by AM0PR01CA0147.outlook.office365.com (2603:10a6:208:aa::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.37 via Frontend Transport; Wed, 14 Jun 2023 07:45:22 +0000 Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by AM7EUR03FT012.mail.protection.outlook.com (100.127.141.26) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.23 via Frontend Transport; Wed, 14 Jun 2023 07:45:21 +0000 Received: ("Tessian outbound 3570909035da:v136"); Wed, 14 Jun 2023 07:45:21 +0000 Received: from 5a6e9d1adc59.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 6092FE31-C34B-4099-B570-DF53F7356431.1; Wed, 14 Jun 2023 07:45:10 +0000 Received: from EUR03-AM7-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 5a6e9d1adc59.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Wed, 14 Jun 2023 07:45:10 +0000 Received: from AM6PR08MB3749.eurprd08.prod.outlook.com (2603:10a6:20b:8f::22) by PAWPR08MB10092.eurprd08.prod.outlook.com (2603:10a6:102:369::5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.41; Wed, 14 Jun 2023 07:45:08 +0000 Received: from AM6PR08MB3749.eurprd08.prod.outlook.com ([fe80::ed0b:5730:a1f9:577b]) by AM6PR08MB3749.eurprd08.prod.outlook.com ([fe80::ed0b:5730:a1f9:577b%5]) with mapi id 15.20.6477.037; Wed, 14 Jun 2023 07:45:08 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 6c57469f-0a87-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=hreecgmYIF5KZ6SDQpr5Au2G9nGKxUssVX243U+tcFM=; b=5TSy8W6lKqUxmiRWrI6vp/7wTlkepb+BHvR1P+4nNNAB9Rv8H/9AQadtfLfASbcqBKXWlq/nl04ESUPp75yBAHZGkwlT3qTKCsUgAtYo09TQetdxNp2I0z+XJ6PTGUL8hyvuLO3N2xb0Kw/KWyrLxwJ1fP05MpY9gWTZ2husvFM= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C X-CheckRecipientChecked: true X-CR-MTA-CID: 23a6304dc8f3f1eb X-CR-MTA-TID: 64aa7808 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=kjWfjZ3/046x1ooxudyKtkUp3vEptN+8YarB/sVt7lNu+XfqGOawVn5v96wiza3sNtmHmZPeUT1oVyiGTBA1NtMmTdn6zhkrEg+lw2FIP9w4tzbZv3tqYCFJr2CjkIAdJS4UgtCLN1efx6cUxnQwaYNdFhlc7RVmk9NLMPignw7tOjPwzaj2M0AzXOVFgkpkGPHsskuzdVvYqb73Tot9XMj3LnmyQUG9vk6HMjtVrzskf9rEGiPsGOU5hvvu7DfcsQvyWwP3ui7OjfSHY3j6pIBY6fD6PHM5CKwrxmLD/SZNmFyzlMc2Ww7M0DWQNYqy7scec/6yWV1b1Knwaieg3Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=hreecgmYIF5KZ6SDQpr5Au2G9nGKxUssVX243U+tcFM=; b=YAHummkG68X4D10IspqoolBjiZHvraSSxmYnPBN3FHWWz/7tNhx0H6mEK6K45JazWD3V6nSDA9ABD2MgiTHuTHR84pGJ+UZ2odwApaEOpT2ytfpciKWuJ288sPe10giXaOmzCmFetbp+qZd41OppnfmtDcoZiUKsetZE9sm/y6YKUepe6EmViDEfL/NDfaw9ds2UZtSNb78OoMCFwDaxnwx3GTPxi0jQsdUX5BB9Ojs7qtJjNWTdcr26tY9sm+8IsMY3++KjrGGkbsOIillE108mH8ijrz8SnRA8OsRjEZfFozEHTEtCsvPiSBf4tQzHg0fA38ebxyOB54f3qocRfA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=hreecgmYIF5KZ6SDQpr5Au2G9nGKxUssVX243U+tcFM=; b=5TSy8W6lKqUxmiRWrI6vp/7wTlkepb+BHvR1P+4nNNAB9Rv8H/9AQadtfLfASbcqBKXWlq/nl04ESUPp75yBAHZGkwlT3qTKCsUgAtYo09TQetdxNp2I0z+XJ6PTGUL8hyvuLO3N2xb0Kw/KWyrLxwJ1fP05MpY9gWTZ2husvFM= From: Luca Fancellu To: Michal Orzel CC: Xen-devel , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk , Jan Beulich , Andrew Cooper , =?utf-8?B?Um9nZXIgUGF1IE1vbm7DqQ==?= , Wei Liu Subject: Re: [PATCH] xen: Append a newline character to panic() where missing Thread-Topic: [PATCH] xen: Append a newline character to panic() where missing Thread-Index: AQHZnpI1vn3isrIJAkq87r2/T5dHaa+J6xaA Date: Wed, 14 Jun 2023 07:45:08 +0000 Message-ID: <6D17A0C9-1B69-42F8-88E9-E2E026C57CA3@arm.com> References: <20230614073018.21303-1-michal.orzel@amd.com> In-Reply-To: <20230614073018.21303-1-michal.orzel@amd.com> Accept-Language: en-GB, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-mailer: Apple Mail (2.3731.600.7) Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-traffictypediagnostic: AM6PR08MB3749:EE_|PAWPR08MB10092:EE_|AM7EUR03FT012:EE_|AS8PR08MB5960:EE_ X-MS-Office365-Filtering-Correlation-Id: e58e25eb-3773-42db-e175-08db6cab4e80 x-checkrecipientrouted: true nodisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: J4gyXGbj7KVh21t5NWqj/rWq1UptEMLrDB+kRCKNo2RXRuh7K7KTjLfHq2UBz21I5xti9eCpokOO0TSvcG2SYK/99dX9e3j7kZY0FheWWGLEKwvepV94i1etPUW97jSne0zHsAFmRd1MafmOSlDdDOl8ZAutelYojowaOpCTcENmYV3WjStPu98PuiwPNnqnaPplQMCL8g7IDJg0rbo/yDFcb3LltgrjnoqLacfMzQArX6LFYCWN2+ijqaNwCHHqkYJEf8AegU71k0t/ekBcgaLeNqKUHnXludz4BFg3Q3Amtmyc9+6mJIFuCC6mgCrR218De4u4VF7Z1Q16Ppmv9Y/3pN0YG/3H7knyCss4CsrMSd3sRzzZfAqdjVrrCOjfvnI/+bYgi6vNZsJY3NphxdEfgyDSydljfkmSShdX8DwISKgDG/UAtBDmmbfZrEwAaHSD6lbXOxxfaEMnS+ebMDnra4ahtgQX0lpuGN855JrArcALggZFgrgk7kHXvjVcI+FavJ0LLbWf2F9VwlAQ3dwKlO6slJogA40H1L5VxlpQwV5gTdWlGyRRBjxFhXfjWD40X/duKC5pKC/SfI5k56ChsN+mXcllQZtap2UNqDFWMzDCU2Fq7ySTYyrZCDOj64pHIK2PK6xDwKNN4dtBag== X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM6PR08MB3749.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(136003)(396003)(366004)(39860400002)(376002)(346002)(451199021)(36756003)(38070700005)(5660300002)(86362001)(2906002)(33656002)(2616005)(316002)(26005)(71200400001)(186003)(83380400001)(6486002)(122000001)(6506007)(6512007)(53546011)(91956017)(478600001)(54906003)(66946007)(4326008)(66556008)(66476007)(38100700002)(41300700001)(76116006)(6916009)(8676002)(66446008)(64756008)(8936002)(45980500001);DIR:OUT;SFP:1101; Content-Type: text/plain; charset="utf-8" Content-ID: Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAWPR08MB10092 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: AM7EUR03FT012.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: 2b97ecdb-0eef-4351-6973-08db6cab46a0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: +1rqdKuySLx0CXxkGgcnvJFNE1NRqAGA+dpKOrstn6f1q5KrhK2dKvn+Qm04tCYBKCc3uhCTNnvGqtdMQrCdySHa2WksgbJ5sM0c4/X3wvCZ/pb7rCmXGuwkpbqUCuc4SVn/Bt2XMQelM38B7vTnHN3cku2LY/5RGAU5BKRZbdkCrlNm4wPNnba8XoQvxb6idYPlNb7cl7CjjW+K//FoprjSxBbaa80b6QxN0TdJEngWIHReMkgW8xplaOErE3YgZMMxXyhE4a1FybRSnrE7Ivguu43LpnCYANS8dgRPEpeWLO/yLInTYyLGUUlgZYNT3a2Y3IljNJytgtwFBn/ATtL2SHDdJhmqp9GkMamn3d1UIkNJ8P3rnudLJkkBNDyFVasrlk7sXvIHXB70hRiOu7fhnoRxHW/axTRSElWViMG7T7ncNLDdzJnY6EnxgkeaK0FXRp67aBCKL2CUt5LM5y705LugL3ItuuVvM92nOsWyjdyk75OgUCUrvsKgy0VGfgi/BnkFKUC7TuLNeid1kBC3biISRD2VhSMWZp3CCd8WEPRn3IM41JhFMpJsdgNB7QZbqo1eGEAa+3Vmlt7mTF9WipQ2EhhhLz1wioVmllEtPkginRxoqtrU1Ep9Q9CVUEuoPBm0u/O+MjH88k3ybkWF9EKYMZR92I7TuXBRDUTC1UiRqMiaucozwDZ21oVYYUZsu9niUIbCOAeoAZ7Z232iASR7lhC1QVJU+POv+zCKmQj96U/j2hiwkfW8GPB7 X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230028)(4636009)(346002)(376002)(136003)(39860400002)(396003)(451199021)(36840700001)(46966006)(40470700004)(478600001)(40480700001)(82310400005)(86362001)(6486002)(40460700003)(36860700001)(70206006)(70586007)(4326008)(316002)(336012)(47076005)(83380400001)(2906002)(6862004)(8676002)(8936002)(41300700001)(5660300002)(53546011)(356005)(54906003)(81166007)(26005)(6512007)(6506007)(33656002)(36756003)(2616005)(82740400003)(186003);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Jun 2023 07:45:21.4865 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: e58e25eb-3773-42db-e175-08db6cab4e80 X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: AM7EUR03FT012.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR08MB5960 DQoNCj4gT24gMTQgSnVuIDIwMjMsIGF0IDA4OjMwLCBNaWNoYWwgT3J6ZWwgPG1pY2hhbC5vcnpl bEBhbWQuY29tPiB3cm90ZToNCj4gDQo+IE1pc3NpbmcgbmV3bGluZSBpcyBpbmNvbnNpc3RlbnQg d2l0aCB0aGUgcmVzdCBvZiB0aGUgY2FsbGVycywgc2luY2UNCj4gcGFuaWMoKSBleHBlY3RzIGl0 Lg0KPiANCj4gU2lnbmVkLW9mZi1ieTogTWljaGFsIE9yemVsIDxtaWNoYWwub3J6ZWxAYW1kLmNv bT4NCg0KUmV2aWV3ZWQtYnk6IEx1Y2EgRmFuY2VsbHUgPGx1Y2EuZmFuY2VsbHVAYXJtLmNvbT4N Cg0KDQo+IC0tLQ0KPiB4ZW4vYXJjaC9hcm0vYm9vdGZkdC5jICAgICAgICAgICAgfCAyICstDQo+ IHhlbi9hcmNoL2FybS9kb21haW5fYnVpbGQuYyAgICAgICB8IDYgKysrLS0tDQo+IHhlbi9hcmNo L3g4Ni9jcHUvbWljcm9jb2RlL2NvcmUuYyB8IDIgKy0NCj4gMyBmaWxlcyBjaGFuZ2VkLCA1IGlu c2VydGlvbnMoKyksIDUgZGVsZXRpb25zKC0pDQo+IA0KPiBkaWZmIC0tZ2l0IGEveGVuL2FyY2gv YXJtL2Jvb3RmZHQuYyBiL3hlbi9hcmNoL2FybS9ib290ZmR0LmMNCj4gaW5kZXggYjZmOTJhMTc0 ZjVmLi4yNjczYWQxN2ExZTEgMTAwNjQ0DQo+IC0tLSBhL3hlbi9hcmNoL2FybS9ib290ZmR0LmMN Cj4gKysrIGIveGVuL2FyY2gvYXJtL2Jvb3RmZHQuYw0KPiBAQCAtMjI1LDcgKzIyNSw3IEBAIHN0 YXRpYyBpbnQgX19pbml0IHByb2Nlc3NfcmVzZXJ2ZWRfbWVtb3J5X25vZGUoY29uc3Qgdm9pZCAq ZmR0LCBpbnQgbm9kZSwNCj4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZV9j ZWxscywgZGF0YSk7DQo+IA0KPiAgICAgaWYgKCByYyA9PSAtRU5PU1BDICkNCj4gLSAgICAgICAg cGFuaWMoIk1heCBudW1iZXIgb2Ygc3VwcG9ydGVkIHJlc2VydmVkLW1lbW9yeSByZWdpb25zIHJl YWNoZWQuIik7DQo+ICsgICAgICAgIHBhbmljKCJNYXggbnVtYmVyIG9mIHN1cHBvcnRlZCByZXNl cnZlZC1tZW1vcnkgcmVnaW9ucyByZWFjaGVkLlxuIik7DQo+ICAgICBlbHNlIGlmICggcmMgIT0g LUVOT0VOVCApDQo+ICAgICAgICAgcmV0dXJuIHJjOw0KPiAgICAgcmV0dXJuIDA7DQo+IGRpZmYg LS1naXQgYS94ZW4vYXJjaC9hcm0vZG9tYWluX2J1aWxkLmMgYi94ZW4vYXJjaC9hcm0vZG9tYWlu X2J1aWxkLmMNCj4gaW5kZXggNTc5YmM4MTk0ZmVkLi5kMGQ2YmU5MjJkYjEgMTAwNjQ0DQo+IC0t LSBhL3hlbi9hcmNoL2FybS9kb21haW5fYnVpbGQuYw0KPiArKysgYi94ZW4vYXJjaC9hcm0vZG9t YWluX2J1aWxkLmMNCj4gQEAgLTc0LDcgKzc0LDcgQEAgaW50IF9faW5pdCBwYXJzZV9hcmNoX2Rv bTBfcGFyYW0oY29uc3QgY2hhciAqcywgY29uc3QgY2hhciAqZSkNCj4gDQo+ICAgICAgICAgcmV0 dXJuIDA7DQo+ICNlbHNlDQo+IC0gICAgICAgIHBhbmljKCInc3ZlJyBwcm9wZXJ0eSBmb3VuZCwg YnV0IENPTkZJR19BUk02NF9TVkUgbm90IHNlbGVjdGVkIik7DQo+ICsgICAgICAgIHBhbmljKCIn c3ZlJyBwcm9wZXJ0eSBmb3VuZCwgYnV0IENPTkZJR19BUk02NF9TVkUgbm90IHNlbGVjdGVkXG4i KTsNCg0KU29ycnkgYWJvdXQgdGhhdCEgSeKAmXZlIG1pc3NlZCBpdA0KDQo+ICNlbmRpZg0KPiAg ICAgfQ0KPiANCj4gQEAgLTY5Nyw3ICs2OTcsNyBAQCBzdGF0aWMgdm9pZCBfX2luaXQgYWxsb2Nh dGVfc3RhdGljX21lbW9yeShzdHJ1Y3QgZG9tYWluICpkLA0KPiAgICAgcmV0dXJuOw0KPiANCj4g IGZhaWw6DQo+IC0gICAgcGFuaWMoIkZhaWxlZCB0byBhbGxvY2F0ZSByZXF1ZXN0ZWQgc3RhdGlj IG1lbW9yeSBmb3IgZG9tYWluICVwZC4iLCBkKTsNCj4gKyAgICBwYW5pYygiRmFpbGVkIHRvIGFs bG9jYXRlIHJlcXVlc3RlZCBzdGF0aWMgbWVtb3J5IGZvciBkb21haW4gJXBkLlxuIiwgZCk7DQo+ IH0NCj4gDQo+IC8qDQo+IEBAIC03NjksNyArNzY5LDcgQEAgc3RhdGljIHZvaWQgX19pbml0IGFz c2lnbl9zdGF0aWNfbWVtb3J5XzExKHN0cnVjdCBkb21haW4gKmQsDQo+ICAgICByZXR1cm47DQo+ IA0KPiAgZmFpbDoNCj4gLSAgICBwYW5pYygiRmFpbGVkIHRvIGFzc2lnbiByZXF1ZXN0ZWQgc3Rh dGljIG1lbW9yeSBmb3IgZGlyZWN0LW1hcCBkb21haW4gJXBkLiIsDQo+ICsgICAgcGFuaWMoIkZh aWxlZCB0byBhc3NpZ24gcmVxdWVzdGVkIHN0YXRpYyBtZW1vcnkgZm9yIGRpcmVjdC1tYXAgZG9t YWluICVwZC5cbiIsDQo+ICAgICAgICAgICBkKTsNCj4gfQ0KPiANCj4gZGlmZiAtLWdpdCBhL3hl bi9hcmNoL3g4Ni9jcHUvbWljcm9jb2RlL2NvcmUuYyBiL3hlbi9hcmNoL3g4Ni9jcHUvbWljcm9j b2RlL2NvcmUuYw0KPiBpbmRleCBlNjVhZjRiODJlYTMuLmMzZmVlNjI5MDYzZSAxMDA2NDQNCj4g LS0tIGEveGVuL2FyY2gveDg2L2NwdS9taWNyb2NvZGUvY29yZS5jDQo+ICsrKyBiL3hlbi9hcmNo L3g4Ni9jcHUvbWljcm9jb2RlL2NvcmUuYw0KPiBAQCAtNTI0LDcgKzUyNCw3IEBAIHN0YXRpYyBp bnQgY29udHJvbF90aHJlYWRfZm4oY29uc3Qgc3RydWN0IG1pY3JvY29kZV9wYXRjaCAqcGF0Y2gp DQo+ICAgICAgICAgICovDQo+ICAgICAgICAgaWYgKCB3YWl0X2Zvcl9jb25kaXRpb24od2FpdF9j cHVfY2FsbG91dCwgKGRvbmUgKyAxKSwNCj4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBNSUNST0NPREVfVVBEQVRFX1RJTUVPVVRfVVMpICkNCj4gLSAgICAgICAgICAgIHBhbmljKCJU aW1lb3V0IHdoZW4gZmluaXNoZWQgdXBkYXRpbmcgbWljcm9jb2RlIChmaW5pc2hlZCAldS8ldSki LA0KPiArICAgICAgICAgICAgcGFuaWMoIlRpbWVvdXQgd2hlbiBmaW5pc2hlZCB1cGRhdGluZyBt aWNyb2NvZGUgKGZpbmlzaGVkICV1LyV1KVxuIiwNCj4gICAgICAgICAgICAgICAgICAgZG9uZSwg bnJfY29yZXMpOw0KPiANCj4gICAgICAgICAvKiBQcmludCB3YXJuaW5nIG1lc3NhZ2Ugb25jZSBp ZiBsb25nIHRpbWUgaXMgc3BlbnQgaGVyZSAqLw0KPiANCj4gYmFzZS1jb21taXQ6IDJmNjllZjk2 ODAxZjBkMmI5NjQ2YWJmNjM5NmU2MGY5OWM1NmUzYTANCj4gLS0gDQo+IDIuMjUuMQ0KPiANCj4g DQoNCg== From xen-devel-bounces@lists.xenproject.org Wed Jun 14 08:00:56 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 08:00:56 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548562.856527 (Exim 4.92) (envelope-from ) id 1q9LQt-0005nm-PE; Wed, 14 Jun 2023 08:00:47 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548562.856527; Wed, 14 Jun 2023 08:00:47 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9LQt-0005nf-M3; Wed, 14 Jun 2023 08:00:47 +0000 Received: by outflank-mailman (input) for mailman id 548562; Wed, 14 Jun 2023 08:00:46 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9LQs-0005nW-7z for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 08:00:46 +0000 Received: from EUR05-VI1-obe.outbound.protection.outlook.com (mail-vi1eur05on2060c.outbound.protection.outlook.com [2a01:111:f400:7d00::60c]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 90bca323-0a89-11ee-b232-6b7b168915f2; Wed, 14 Jun 2023 10:00:45 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by DB9PR04MB8314.eurprd04.prod.outlook.com (2603:10a6:10:249::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.37; Wed, 14 Jun 2023 08:00:43 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.039; Wed, 14 Jun 2023 08:00:43 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 90bca323-0a89-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=XnOEPB1RVFKJ1OFIrH/UnpQ6lSvZBcunoGrRESm9REBfMUWJnbtAzlUodmlg2NuuXaaSyZLPPXl52k1O2Zt9R3NsFcBP3P2Cw4rYv7T/j9qPS3ADvi0o6Gsvhvxr0iMlv6Maaq8WRXdz0qRt/d0uCQfGb6f+pseKay14pFJcUYa5lKmA7OU78eO4yhPqeq+wLYr6cla4sp9iIOEYdztyOYoJfHfactKd/eiHL583Q5GQ3ZJPUQqDRf4cktKDuFULemLi3RoeltIr5K0rBkEvcD2NUZS91JlDGErYp9dvMYlktuLBBZ5ztxzNpTVr19CvUYtD49jW1i5UrcCY9SK3nw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=Yu8PGPc8GqK6hukTftBRFWre3GGRFVbt0d9DC/hfPuY=; b=Iy8BCpiNSROzOf+PIbUQhdMczWhrIEuCVGnUUqiuWC1auqslasPqxnQiq15CImTY+9/WbPcKLzZ+baQx3Kee1+z8jdC68I3/vjSCJ+1aVAFi3w57xeu2ey3ffKqqqTZLDm73gUSeuu9iFufaPtglVQxrVZVItMsGpNVBrxpfoKfAHx+r3CO3JQbSzDV/GW2GIdDM+F95iMGoqWwtvPsN0o4BuX4N3rNbuDe8VDjZTBBYbj0DWDUAfYxFpvMYEsTT+DzD8QpyJlIbRFWuamkN/DyWl1oIXKPtZIZ/wA3q5LW/4RzZcAULjvQqUmbVt0vBBJvoZQnIZn1YZ8/RYdHHEg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Yu8PGPc8GqK6hukTftBRFWre3GGRFVbt0d9DC/hfPuY=; b=N0zQIyziD4hr7MyD+kefk+muEvKgEqg7Tu2k7GAynYBCoJag3P/wqYZ5GuSwDZFdLeDpft8+YNlcK0wG0xrwDlrTehzBV3hWaBasQbNGfOC0JsWw/wvNEqouz5/1hCNIFP2X5Yot4hk9XuhDnOwC98xijT71J6qHjGKWirqJhWMJq+v3Dej3TQjTbxmmd6PVS7SyvBPOSrUx6yNPlvKsAFK5+AYBk4u+H8BClQeJ2BwvDI40rVS3nje1Ljlfwm6PGbIBBbUT/+NEZM/bxgkCESMcMScfcgylOBQLnKsTXpzToxWc4Zy6M0c+5Iw19OqgZG/ixZcwH5OP741HRTyrtw== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <5f53088d-5561-0750-e0a8-ca8fbd0a00f8@suse.com> Date: Wed, 14 Jun 2023 10:00:41 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH] xen: Append a newline character to panic() where missing Content-Language: en-US To: Luca Fancellu , Michal Orzel Cc: Xen-devel , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk , Andrew Cooper , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu References: <20230614073018.21303-1-michal.orzel@amd.com> <6D17A0C9-1B69-42F8-88E9-E2E026C57CA3@arm.com> From: Jan Beulich In-Reply-To: <6D17A0C9-1B69-42F8-88E9-E2E026C57CA3@arm.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR3P281CA0099.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:a1::16) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|DB9PR04MB8314:EE_ X-MS-Office365-Filtering-Correlation-Id: 67caf272-4b8a-4020-3d0a-08db6cad73a2 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: KwjNGV8iT/C/RvvSO6Az1hmNpZcEA4A7ccUTPES7nWXLQr/QZSVdCEXi8utzEBR48XUHtBEl/fKC1KJur+5wPbCdBsNVZKISpe/a8ql8tjdUR8mPPrvGn/cBZVop8MaBMKl94hyV/5JEVaMop3lP+Kx7eFgp2yJOQ3Qtojr+xA14DiwDFdhbUxFDcmwku2IyTyEKEofBAkYojwnkIHw/iouRMzyYSuxewuSzftfnnd6RDQ4ybUYU2w5h1mWfUyUYxGONMyxQ+8HOHZ6xRN6ZgtSufnNjfE0GfbqiipiB2QpTBEEmTLGIH72OkPwnXwYFSHo0O6FD1KPcx7/00Zafi2ut2dyrFwWvqwYuUQt3XGWa93ht7hVJhCpnnsIj3sZbI5+r80P0MEjfflarVVK8YFZk7AABzRJKc2q8j8dpgXJzrsrR6vswcvaMXPhu1n+erAd0uWbrAXIu018gwkkvmLOns3yn+ojuIUCMBrOtX9YSMv/+vXtTv4vZ3ZCEmduSt7PVThI6ZV6DhlmH6ksSalymR9hZbFy5kT2PUdx6S4eZTMcHCtUTHbDtl+oCRnkdA94xFkE6MRJ/aVC1QQpwWrR7j+aSH2DDbI2zHmr/1ehzkMWes4PT6MamY5nGK40tOOdiXCXoS8LhK15L/jJeIQ== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(376002)(136003)(396003)(366004)(39860400002)(346002)(451199021)(186003)(38100700002)(2906002)(4744005)(31696002)(86362001)(7416002)(53546011)(6512007)(6506007)(26005)(2616005)(36756003)(316002)(6486002)(4326008)(66556008)(66476007)(66946007)(478600001)(41300700001)(54906003)(5660300002)(110136005)(8676002)(8936002)(31686004)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?RStaTWN0TVNmOG8xTHFwZDdPeXhhcHhCTG92UFcyRUJOd21ORk1jTTZndFdC?= =?utf-8?B?TGpIWmltM2RzYzhGZ2E5QTVPV2VTcXZSbXRSSUtBMTkyS2xoUUdmMCtTdmhM?= =?utf-8?B?MTlUcWJkMXRxWU5wbHNqb3VIelJIa3BRREVYanJVN1MvWkU0NEFWVkM4LzZp?= =?utf-8?B?R1VZSUpWUDdDWVV6WHkwUU5kQ0UybzRVRTFjNVVyVkVIZC9ZcHowajZGTXd4?= =?utf-8?B?UEE0WGJpb3UrSkZYdktYZU1oc0s2WEtmZ2kxSE4zWVIwUm9jVmZnMEZwNjZE?= =?utf-8?B?NlRPWFVhR0tjNndTVk1JOHdGR3NqczZYbEpBNjJsWjM1WDJudlJTbkZqVnE0?= =?utf-8?B?b1p5MGw2L2sra3JiZTFDVHZ4b0Y2VEs1Q3pRSDRTaXIydlloS2hkR2s3eVNi?= =?utf-8?B?dkU1V1p0Rzd5NEduc0ptUzlydXZMT3c3cUEweHE3ei9UV253bUFXUmlHc3Ru?= =?utf-8?B?ZHFCaWlpUGdrUmJjZFhVQzI0RHU0NHArRWxkS3B0aGdZNVVzV3gvU3Ztc1FI?= =?utf-8?B?L2MycHA3QUd1ZjFCMDUyZGhRT3hYUkZxN2QyMWxnaXBZNTJOMFdPaE8zekNv?= =?utf-8?B?NkFIamNydU9rLzNXOExMV3psdFVHTXlBSkNWTkVZcHk0VXBHemp4NVg1aWI5?= =?utf-8?B?Q1k2RU5CbkVQTnVub0pQNkY0NERnOTVnYys4N3Y5VUYxM016UWtLamxBTUU2?= =?utf-8?B?aXovcU43UE0rY0RnK0FNbTArTnhHNjlJRm5yQUppQkt3V2h3N0dSTEl4WjI4?= =?utf-8?B?Ym1OZXRScFpIT1V2VFhwU282SmRoNk9zYmVCYlcwMElBbmRBd2dFaEZZaUdX?= =?utf-8?B?UGdtRFlCOHFZRU1UQUFRU0lLYlcwWnBsZ0tHZzhrNStrN0RkMEZHdERKdHFr?= =?utf-8?B?TUxvUURmT1h1ME9JL1FhZ010Y1BNa3luS1p0OHVKYlc5RVViYlUrZm4rY2xV?= =?utf-8?B?UExUcnVxV0tCMVJlbnQ3enEzMDFQQjUveFZkVGdaUXE2Y2xIRFl4MlJleGtZ?= =?utf-8?B?ZjZxVVI3U0draW82ZXFjUjV6empjcTJZblVNTjZRYUhQbUhJc0ErM0JIV3pt?= =?utf-8?B?elE4Z240bDh0TWFkVDNyL1QxcXp4bE9reTRmalFMQyttemxvWVJ6V0E2aXkz?= =?utf-8?B?eVN0c0V1cTYyczhuTDBFSUNENTFuc0RrNnUzczl1SS8zenpTYVZTN01tMExO?= =?utf-8?B?ak15TUY3cUdvQmpQSitRTXpyU3lwYmlpbWtuRUNmZmIvT0tSSTI4anNqWktE?= =?utf-8?B?NHhYYUJJdUNQYlNFLy9hUDVVY0NjdHhRYU01QzZFQmdjeUhOamh3ZlVVWUNx?= =?utf-8?B?Y0dQcitibWJKcEJqV1QxNERSZis2b29ONzYvcUw2YnAvM2R2ZlBDV3FwcEVh?= =?utf-8?B?UUpDR2RjcEtsSzhteUVhZjhrZ2NXODZYWHRydENDNEw1VGZIMDBZNXNIbW5Z?= =?utf-8?B?b2toMWdHTVFTTWZwTmR4NTllNGNmamczUnh2ZDVYYTlQTGo3dHUwVFVSbkhO?= =?utf-8?B?b3AwVW1JdXp4eVVlMlY4VnNmWmdiVGYyTnNhZk5ZMnRkdk9BTTAyVFp3dnZV?= =?utf-8?B?S2EyTUlzWkMzZklwM2lYQUFSb1M2d2ptUlBjRkJUNW81Yzc2enpTR2VMOEN3?= =?utf-8?B?bFJ6Q0FNcG1MWUxBblFxZWtnQzdlSWxPeXEzMjdmdEtsckN3ZUZoRkxib0ZG?= =?utf-8?B?anNoOHJmeGZWamVrRGlHN0FWbFI2WkpXSzN0aXhvWkNEQjdtWnl2Z21uWVdQ?= =?utf-8?B?SzJFQytZQ3N2Wkg3V1NuR3h2WmQ4NGdXWXMxZ3R3bU5MM1Zoc0NPcWtPZitF?= =?utf-8?B?QUtFZW0zRnAzUFJEYU1RYitmL21EUHdEU3pxN3JMZVVVejlsZmZKVlE3OXRI?= =?utf-8?B?ajJ6bVZkdVVYRitOcXZ1UXZ2THlVSWNaZ3Q5aDdaWGFZUkdPb3B0TkcxWjNa?= =?utf-8?B?U3ZiWFMzb3hrbzRZalFTcmRjV2RPZFVwVlhXZ1dXMXM2aW1SeUptRjNLV1JE?= =?utf-8?B?eU9Jek5zdkFvTllHSUU1REF1WE92cklUL0NncUdhU01DQzJHMkJVT1pXL3JI?= =?utf-8?B?YmtXZ0NBNi9LTWdCbnNEVjZXRXM0Zko0RDAvRGhjOGNLaSsrV25zV0xtMW1K?= =?utf-8?Q?sC98NG9Gw28ylhsu8stN0kOmH?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 67caf272-4b8a-4020-3d0a-08db6cad73a2 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Jun 2023 08:00:42.9374 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: /mMDbaCaq7FCItJAAe+H7VRa34nObdU6PAe8g235OpLgOPbetPSvsqcknabAeAwVBO8QPTILVuI0gQfgkFGfUQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR04MB8314 On 14.06.2023 09:45, Luca Fancellu wrote: >> On 14 Jun 2023, at 08:30, Michal Orzel wrote: >> >> Missing newline is inconsistent with the rest of the callers, since >> panic() expects it. >> >> Signed-off-by: Michal Orzel > > Reviewed-by: Luca Fancellu Acked-by: Jan Beulich From xen-devel-bounces@lists.xenproject.org Wed Jun 14 08:05:09 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 08:05:09 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548567.856538 (Exim 4.92) (envelope-from ) id 1q9LV1-0006Nf-9D; Wed, 14 Jun 2023 08:05:03 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548567.856538; Wed, 14 Jun 2023 08:05:03 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9LV1-0006NY-61; Wed, 14 Jun 2023 08:05:03 +0000 Received: by outflank-mailman (input) for mailman id 548567; Wed, 14 Jun 2023 08:05:01 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9LUz-0006NS-G5 for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 08:05:01 +0000 Received: from esa3.hc3370-68.iphmx.com (esa3.hc3370-68.iphmx.com [216.71.145.155]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 25ffa4a8-0a8a-11ee-8611-37d641c3527e; Wed, 14 Jun 2023 10:04:58 +0200 (CEST) Received: from mail-mw2nam12lp2048.outbound.protection.outlook.com (HELO NAM12-MW2-obe.outbound.protection.outlook.com) ([104.47.66.48]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 14 Jun 2023 04:04:53 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by CH0PR03MB6051.namprd03.prod.outlook.com (2603:10b6:610:be::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.38; Wed, 14 Jun 2023 08:04:52 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606%4]) with mapi id 15.20.6455.043; Wed, 14 Jun 2023 08:04:51 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 25ffa4a8-0a8a-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686729898; h=message-id:date:from:subject:to:cc:references: in-reply-to:content-transfer-encoding:mime-version; bh=JXEHax8nLdyfvviPfnA0xcOG+8OCuwfBkquZ83nAQP4=; b=dPwojKsYbMYaDVanBGOtyiMksj4C2nxLaG1sVtPekQvHgDJsJ8YOTPf7 yAMQZ5qC3qdP+gaujNmjd3QdgeB0O/ppWNw2qGEF0zdcd+tOVR7LiPqsw yG0tu3WypdWq4Lp0an99Gcz8nCzjHloI7zlE1uKUjeZr3fKSRNtlnl3vI Y=; X-IronPort-RemoteIP: 104.47.66.48 X-IronPort-MID: 112741343 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:gjDzLqu5FuStmaEkr1AntS5cn+fnVMhfMUV32f8akzHdYApBsoF/q tZmKTvXaP+JZWP2etxyOdu39R4GuZDUxt82SARu/itgHioR+JbJXdiXEBz9bniYRiHhoOCLz O1FM4Wdc5pkJpP4jk3wWlQ0hSAkjclkfpKlVKiffHg3HVQ+IMsYoUoLs/YjhYJ1isSODQqIu Nfjy+XSI1bg0DNvWo4uw/vrRChH4rKq4Fv0gnRkPaoQ5AGHyyFMZH4iDfrZw0XQE9E88tGSH 44v/JnhlkvF8hEkDM+Sk7qTWiXmlZaLYGBiIlIPM0STqkAqSh4ai87XB9JFAatjsB2bnsgZ9 Tl4ncfYpTHFnEH7sL91vxFwS0mSNEDdkVPNCSDXXce7lyUqf5ZwqhnH4Y5f0YAwo45K7W9yG fMwDD8ubDXAteGM2ZGnQM9Du8saJcjWM9ZK0p1g5Wmx4fcOZ7nmGv+PwOACmTA6i4ZJAOrUY NcfZXx3dhPcbhZTO1ARTpUjgOOvgXq5eDpdwL6XjfNvvy6Pk0ovjv6xYLI5efTTLSlRtm+eq njL4CLSBRYCOcbE4TGE7mitlqnEmiaTtIc6TeTiqaIz2wHIroAVIAAzbHiSnPa8sETgQdhkd kw6+ncvqIFnoSRHSfG4BXVUukWsux8XW9NUVeog+gyJ4qPR70CSAW1sZi5MbpkqudE7QRQu1 0SVhJX5CDp3qrqXRHmBsLCOoluaIjMJJGUPYSsFSwot4NT5pow3yBXVQb5LErOxj9DzMSH9x XaNtidWr78el9IR3qO3u1XOmSuxp4PhRxQwoA7QWwqN0AR9Y4K0Yp2y3nLS5/1AMYWxQ0GIu T4PnM32xOIEAIyJlSeNaP4QB7zv7PGAWBXDhXZ/Ep9n8C6ik0NPZqhV6TB6YUJ2aMANfGazZ FeJ4V8BophOIHGtcKl7JZqrDNgnxrThEtKjUe3Iat1JYd56cwrvEDxSWHN8FlvFyCAE+ZzT8 7/CGSpwJR720Zha8Qc= IronPort-HdrOrdr: A9a23:+3xfd6CYRN9iarjlHej9sceALOsnbusQ8zAXP0AYc20uTiX4rb HdoB1/73DJYVkqKQ0dcLy7SdG9qDbnhO9ICMoqTP6ftWrdyRiVxeNZnPTfKmbbalvDH4dmvM 8KGcUOb6yXfCFHZITBkXmF+r0bsaS6Gc6T9Jzj5kYoZyFGL4pJ1W5Ce2SmO3wzbilqQbEHL/ Onl6l6jgvlU1Q7KuuSLEQiZIH41rj2vaOjSz4qQzoK1SHmt1OVwY+/OTi0mjFbcxRh594ZkF TtokjSxojmirWB9jrxvlW8071m3P/d6LJ4dbmxY7AuW0vRozftQIxgXr2EsnQRoPuzgWxa2O Ukuy1QSPib9UmhCl2dkF/Q5ynMuQxDmhvf9WM= X-Talos-CUID: 9a23:2a8sdmDxahBNpwf6Ew1o10wxWfImSGT+0H32DHK3MG9odbLAHA== X-Talos-MUID: =?us-ascii?q?9a23=3ALHvrmw7nxTsNDutOV1Nf4znoxox1xp2NIX0ClK8?= =?us-ascii?q?M5dOODnFwFTfAjTGeF9o=3D?= X-IronPort-AV: E=Sophos;i="6.00,242,1681185600"; d="scan'208";a="112741343" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Oyr3lUSD44aQtO1u2PAdgOgub6rlnLnlDQbwkTLqbyXHl7/Lqw+voxhaWxckKO20Z+DCdyFBKPhqG+NrLKgn4leoE4+tTtFbbGfTjtJTNyl6EdRCYv/l+ULmv6od4N2sE2dGrItkkqIHknea6n20P9RE7TM6QD1msXY9dk9Vs03ZC+7MWBO+V7ZywTNgjtyzGNwRf+1zU0CADuPg+VIOBlAZbfDqpZgdOHe2SQkBqBMJOSRndtfgSLjKATxDdipv5nkVrJ2ApyR9IJBHYteXAlmwq+QLuvG2VH7ArBdF9g1zGrKAgR4s6OuEnTbbT+zEny7xQQzQvh5rmbkFrX0vXA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=y0ms2YejFOSpaRTBFCXaCHlmXXiuzo5e0M6nCbzl2nQ=; b=g55UM0AUMqCeJsAHwZKz0JDmMOKMcVjXngQszk5VaPkxhe6UnrtCC+rcSb/ReezdSPmH2TRP8oicDCMAQIf1Iedscg15pJNgRRdj+5HDdwd1rbhsI+cSku3mYWo8UHhdL35BxO136XcwjXOMurhvFJhwMYIlvM93WMXl9QRFLFbu4LhLASq0hyFf3ucPr5EmCmQqCxrvNFjxQcsG47lligSobjwEAYi0h2aMh85xOEPR8JoXh3tSK3gbNsExNFZtsXi6aVA4vMCIW7dV9M5Un4kSCZ9SLjazWBXOKR1eACZJPghWAAy0PSGg/hkbh4rEIQwYkGACgm6UoO5vCQzmSA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=y0ms2YejFOSpaRTBFCXaCHlmXXiuzo5e0M6nCbzl2nQ=; b=spkQRZ3/bdVFq/m9Axdw874wPZ7nhLMEJJ269yioBs6iGqx264tP9zjiB91FmIPXkmFSI+72/hpfRB6jG19aP9c1xcRobNhdf9/W8q3NWa7jYuN1Td7C1do9HqbxlU9jkY0wTsMIz1KvtDzRt0SXYf3Q3sArRbR5mkwNsNLs8yE= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: <261ab0b0-91ed-e6b7-730f-0ecb8a7b5635@citrix.com> Date: Wed, 14 Jun 2023 09:04:45 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 From: Andrew Cooper Subject: Re: [PATCH] xen: Append a newline character to panic() where missing Content-Language: en-GB To: Michal Orzel , xen-devel@lists.xenproject.org Cc: Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk , Jan Beulich , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu References: <20230614073018.21303-1-michal.orzel@amd.com> In-Reply-To: <20230614073018.21303-1-michal.orzel@amd.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO4P123CA0104.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:191::19) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|CH0PR03MB6051:EE_ X-MS-Office365-Filtering-Correlation-Id: 982d9d5c-74a5-4713-bcc4-08db6cae078d X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: Lenf2NxecAZiDEWujxYHklLQytDSvElLZR6n1pW+Ilq3rq15rj8BWBqfZOSTyvuk+SkIVrK7tRz2ZUO78lCr3jFTlRxs3D5+SBPYMcP467f19bvwDMhTZwz2hPAFrDow6rV5vY/kCe1c1/6cJo+WbxNr/eFYA4RkSG/qduv3CW0vYSjNTx5iEU5ggTTIPriGq+sCS1TnBNOhzzm0SUprprSYY1SC6Tqis820gEhL9wD2jExpLoP1zH65ghJ0W8+umyK4g3SpiyEftBb2Y+5quZMxvr59C/XJNI4YYtozB0c6Rw9ee0Xj72TfRoaHQpTV68Ol1tW7Zp4egdLbZ/j4tucjKoyKqTl+Fu88A+blrAIVcqEWxs1BuOjq+bBKqPbwhaNLoCDlbhn064jqrEHENzma7Yxy/s41O7F4rJmLKFlUX3XnklE8maO8tY7vEpT+rw4XKI1W8heUJ878p1OvHQhXj9cnqM973s0sOJ0nuO+tKqj2EyyVywMk/su64G8tM7H0kTbAfcuk9ONg4obPlC32HVTrYkts3l5dzy65SxTLztLAlXx6GKKipT+HYvc2qmTN/mHwd2OL7UM32gKR6+F00cWUJn2noM4fF9DKlxw7EIE4szzfWqq7mHUfSDmJAXnJeX9sHfJTGeqKL7yjrQ== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(396003)(366004)(346002)(39860400002)(376002)(136003)(451199021)(54906003)(82960400001)(478600001)(8936002)(41300700001)(5660300002)(8676002)(4326008)(66946007)(66556008)(66476007)(316002)(38100700002)(2616005)(186003)(83380400001)(6486002)(6666004)(53546011)(6512007)(6506007)(26005)(31696002)(86362001)(2906002)(36756003)(31686004)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?SGxVTUthSVcxRDBaS2IwNWszMkNSbXpFNE4rdHpmOEoxV0xBYVdEK0FvS1Rk?= =?utf-8?B?bDJJcWpiQzNaZEFPVDl2a1RJRWV1a0I5UWdETGt5VmtRUFJ0K1NzMXlzTUIz?= =?utf-8?B?RDQwUHgyaWRUalBQY0VtZlZkLzByNUhwZmhqMEF5Y0pya2h0QU5BRFJqTHlB?= =?utf-8?B?OGUwR2IxYUFETGlCMTY0UUxZYWxaMUZlb1l2R09EKzhUZ0VOSVhhYVEvVS9N?= =?utf-8?B?T09NWnFobFU3MjZ3WXRXQ3FTVGFaUjM1Q0dsRGRDWkYvemt4bXdhZXpoNmMx?= =?utf-8?B?YXY5MmZNaUQ1bjlHMmNZcWFNK2MvMkZRSjVyMko0ZjYxMlozMFlyNWpDRWZr?= =?utf-8?B?Y2hKeUtTWS9XSDJwMEZTanF4WXRrM2JlbkNyWk9YNSs3NldoSzdrcEV4QWZH?= =?utf-8?B?a0JBVWNmcGtCRDhxUGdkQ3RGMFg1a0hNVUtJMW9ielYrT1FVRnBPSXM2aEds?= =?utf-8?B?T052c1lBd2JXUk14cWJPejczVkRHZXNYT2lwek1BeG1PZGlJWXZOVFovN2J2?= =?utf-8?B?Nys2RSs2bTkzYWFVblR2MHVWaStQdG82QW5NVGNFbDJwWldnbjU4cEVGYi80?= =?utf-8?B?b2gxSmRFYmpBOWh4ck5adWhGRHMzMEE2emtreFV5ZXJJbkF0RE1wREJvSXRn?= =?utf-8?B?VWx4SHFpaVhRbm00Mm5ROFFyL0V2TjhYYVEwWnhvanJzU3R0YkhpSDNhaGdr?= =?utf-8?B?Nit0U3ArMDZFUFE5aHA1Nkg5WXgyUCtYTENVNmVEOEhUdVBWWTFzRmg4YmNM?= =?utf-8?B?cE5aMHJybVhzazBXSWQwRThBc2JWanhlZDMzaFlsV3lJSVVlaXlwdnJla0NF?= =?utf-8?B?RGluTmdUVFhocThmVjVyQ0pBRkg4UFdsNzN6ZFlFMUVmdVlEMXdYTHRmMnFw?= =?utf-8?B?ZUJDclVuVmxNV2d1SitSWGlnMHNsVlNIU2VHVVVmSU43NitWWUpVR3QraEZB?= =?utf-8?B?Z1crK1VJWVBmV0dIM1c5M2NnVmpnNFZ0R25kdnJHN3BIaG1tbXZBWnd3QTNL?= =?utf-8?B?VlIzdmNnN0hTYWMyL3Vzc09MQTc0cnBXTG9RRmw0c1VaQ2FmSjdnSEZTbVRD?= =?utf-8?B?TnB6Q1VBNjBBTDlOV0U2MFl2bVhWaHoxMHM3b1owV2x3NTU1Y3I3bmt4MGVq?= =?utf-8?B?MGEwayswaWFBdUoxakhhblpsb3BRaXFzZHl0UkVZZlIxWGN3eEpRTVhHNmxm?= =?utf-8?B?d2FRcDRvUkQzYWVnODJDQ2YzU0UxQnE5SWRrS2ZlT1ZtdGJ5Q3BHR1lvNWdv?= =?utf-8?B?cFFlVzFnUWZHVVlvd3JwNE45VXljTnRJaUdPL3ozSS9BaE04YTRvcURnR2NC?= =?utf-8?B?eFVvUVRPc2E2NFhvZ3ZLeHE5REFaZXhyVGxDOXQ3ejNXZjEyOEo4SGtYdHpT?= =?utf-8?B?TjNHM2FzYVgrVFpBTWFVbjZZZ2I5bFhDd0QvdUhJVkVqYnRweHR5Wmx0UWNv?= =?utf-8?B?RTZ0T3dSNHFBOHpNaGNoN1ZpM2lIYitVdUp2d2VLc2NyQ3JoSEIycnV2dXpl?= =?utf-8?B?UHBnMHBXdW8yK0FZOCsvbEQzV2o2ZzdHVm5YTS9DZWpTZUNab1M2TGdFQkZ3?= =?utf-8?B?VnZpRkpiZC9ET1FXNzdpSHA4UEtaenl6SWVOd29zQTNEdk4ydkZxMDJaWm8z?= =?utf-8?B?d0NVUTYzRmlIMTBDYTN1Z2dJYnNldjg0L0phTHZWcFFZN1NZNXF6aEFReno4?= =?utf-8?B?c29laWxGTmxQYWttSkZuYjJTcWEvTWJrKzE2ZE9zcGRXcDRFM1FTU3k2My8y?= =?utf-8?B?SVJGeHlrOFFPaXYvUzNQeWpnZllJeDFOS25XRDdmVmphR3AyQzQ0Y0dwMWc1?= =?utf-8?B?SVFCckJpa3cxbmY2UTdBNlkxRnpZWG5oalhpWmI5WkprOVpGTnBERzFXbHQy?= =?utf-8?B?cUNibWd1OFZkRTI5YTlxamptY0hUanZvbGVHVVlEdCs1Rm1VNzhMWG44UDdS?= =?utf-8?B?SEN6YlVJT3FuTkUySE9ZOWl5cmdpdW5YRjkvN0tlVmZITGROaElNT3FESGlt?= =?utf-8?B?KzZGK21xYmllRmx4bVBlcmlCRDB4YytGeVpMVUpqcnJseWZUMlEraC9vcFFU?= =?utf-8?B?NEJOVG5tS0JvNlZzV3dhamNOaFlBVzNXaWNQNVp4VDFwcm5nNTk0ZmE4TlFN?= =?utf-8?B?a001STNWZHU1OFMxSWF1Z0R6VXBGWDN3L2tHWHFEVjNjam9MRUNCWWFpQjhy?= =?utf-8?B?SlE9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: TmGk5LjFV6HKYZFCWzlN8Sh98MxBuCHtqyOgsFi8oeK+rRur4BhGu25aUgHvWT3OzD7/+Uf7avsn9yVL9qP4FkNJ0XOuftTG6DZ3juvsxXhLGS1WMxd0RnKrXdFjao/g9/2Bi99biA7V5PTv/lsGlDAEyQS1xUg/lLjXnqIU7KJT/BujsVH4mCPe8b63QBPVLOx52OJNdPSUHWOznpp7W0ICcpDCJgaj0+8zxX8Ot6kSuHh5P3xOtiwFFe7ZKqjDYSVvnPUOvHHqCWJFoGrOZOdH9RZcX/43GpMwBtjNUKp9IPRhpKCWx+7A6gOkvCPq2OxgzUyELeXf4Jmk1m9Mrca3VW4+SgS0r4SHQIK6+TGAz68NVHn6fDAbeJvLiNJPYbcGcUgQGOhD7MGsyxu0NnVZiJtonsji4wqGddz1NiZ9enzvs0mq92L8yviVwpOREY/XTAVMyUblnAld4G8wgagVTFZvZmXYPcITf+pCR8O4TdA7uCLzr63TzffzjO452GXWd1cOJy5anCXLddSj4wOrxMp+w1FQJuwO/fFLCHa2rtF7Km9S9SKc0T0UEo/1rGraXYULi8mVPaY7XeuBUs8Ur7bM/CVg93FsFYXwkkGjjtCrXLpYEPzNLSKWzoIpNfO0mq/n1eXgtjjWj/lGY6jOPxo8Ig6DE6445L8/OTNsx2edsdlgBJMtG0QLTJix+MJXV419650LXtaJGu2LGfV8NZGMyiCoSZZ1PhSwb44sRt1FPtFKIZEgRDbrUkO51r1IYYojwY577x9p4+JUVl7EndQoL5mmKAyFw2GBdzy/kciiQXVBAKnslZ1wBD9xMX+EgBcOQ1dmtjED/3/a/348FE7yEy8HHXOKIwSPLtL9Ox9Q0xAtUxonzgTjPiyU+m8cAZ5HG7WadELm1wBkw3fumA9F6CIoDfZzkccbDtQ= X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 982d9d5c-74a5-4713-bcc4-08db6cae078d X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Jun 2023 08:04:51.3323 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 3nWo08TBXoNL8RoQJVbLoecgP1RqGuYLBv5ZuuUwFSKazIYNC1f8+uEzCwLH3K3OsIdSYKcN06gjqGR7YzewJvhM5dlansmP2dMPDb6rcOM= X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH0PR03MB6051 On 14/06/2023 8:30 am, Michal Orzel wrote: > Missing newline is inconsistent with the rest of the callers, since > panic() expects it. > > Signed-off-by: Michal Orzel Acked-by: Andrew Cooper although... > --- > xen/arch/arm/bootfdt.c | 2 +- > xen/arch/arm/domain_build.c | 6 +++--- > xen/arch/x86/cpu/microcode/core.c | 2 +- > 3 files changed, 5 insertions(+), 5 deletions(-) > > diff --git a/xen/arch/arm/bootfdt.c b/xen/arch/arm/bootfdt.c > index b6f92a174f5f..2673ad17a1e1 100644 > --- a/xen/arch/arm/bootfdt.c > +++ b/xen/arch/arm/bootfdt.c > @@ -225,7 +225,7 @@ static int __init process_reserved_memory_node(const void *fdt, int node, > size_cells, data); > > if ( rc == -ENOSPC ) > - panic("Max number of supported reserved-memory regions reached."); > + panic("Max number of supported reserved-memory regions reached.\n"); Trailing punctuation like . or ! is useless.  Most messages don't have them, and it just takes up space in .rodata, the console ring, and time on the UART. I'd recommend dropping the ones you modify, and/or cleaning it up more widely. ~Andrew From xen-devel-bounces@lists.xenproject.org Wed Jun 14 08:10:01 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 08:10:01 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548574.856547 (Exim 4.92) (envelope-from ) id 1q9LZg-00073U-2A; Wed, 14 Jun 2023 08:09:52 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548574.856547; Wed, 14 Jun 2023 08:09:52 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9LZf-00073N-Vj; Wed, 14 Jun 2023 08:09:51 +0000 Received: by outflank-mailman (input) for mailman id 548574; Wed, 14 Jun 2023 08:09:51 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9LZf-00073H-8i for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 08:09:51 +0000 Received: from NAM04-MW2-obe.outbound.protection.outlook.com (mail-mw2nam04on20630.outbound.protection.outlook.com [2a01:111:f400:7e8c::630]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id d4059425-0a8a-11ee-8611-37d641c3527e; Wed, 14 Jun 2023 10:09:48 +0200 (CEST) Received: from DM6PR06CA0076.namprd06.prod.outlook.com (2603:10b6:5:336::9) by CY8PR12MB7220.namprd12.prod.outlook.com (2603:10b6:930:58::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.44; Wed, 14 Jun 2023 08:09:45 +0000 Received: from CY4PEPF0000E9D7.namprd05.prod.outlook.com (2603:10b6:5:336:cafe::1a) by DM6PR06CA0076.outlook.office365.com (2603:10b6:5:336::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.36 via Frontend Transport; Wed, 14 Jun 2023 08:09:44 +0000 Received: from SATLEXMB03.amd.com (165.204.84.17) by CY4PEPF0000E9D7.mail.protection.outlook.com (10.167.241.78) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6500.25 via Frontend Transport; Wed, 14 Jun 2023 08:09:44 +0000 Received: from SATLEXMB07.amd.com (10.181.41.45) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Wed, 14 Jun 2023 03:09:43 -0500 Received: from SATLEXMB04.amd.com (10.181.40.145) by SATLEXMB07.amd.com (10.181.41.45) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.6; Wed, 14 Jun 2023 01:09:43 -0700 Received: from [10.71.193.39] (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server id 15.1.2507.23 via Frontend Transport; Wed, 14 Jun 2023 03:09:41 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: d4059425-0a8a-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=a9CsL5yXVYh3tPYkwD+Agb1Ak3SLkEcOueSpLYxtljZNHxVzuqjnI4t0TrjLJYfCxeL56mbdLI4GmbRpXkkYtTUy1uM072jCEpUnmi1qWzRMGWJJwUatnnJOPqr7rg1VvoNLy2//cGXMXdPxZScs4JyhVLLplzqpxnhCWngB6AD7Ge/ZaloflJ1L01FT7AchPpRjiNO5IUu0LUkC9nY4YR++jbjnZeeIOoYChDlB9XxT/h+fyUrhkg9R7wKKEMjkAx4K3iZnIV19Jhtc84b5oRKKNh5iTtXYb4M2fsxB1OHK69Eyv2yzlaaYR/SLP02/6LXet1Ee/G8WACnVgVAzfA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=rXdTZvQddnn9tDkcSVp70wA46r1lK68Zs0r330WqhS8=; b=PKL/EMGB3txthkRs3FARp9Jd/LoPZ/x/ejIY3V7SAx//7ZBTuk5ssoQycbdAWDFdz5oxi87QiMjzirb0gfX3++mJWLq87G6TSdZu4LBClabSKlRMmZTnZ87u3Wl3KKHeLnx9mqCpmQpcRDC9RKdCb1FZ3t10Ir2sfxcbYt5bM1eAevzm6aOWkrQXTQI/AAnoqfI8g01Q8pKarWDe6XLk6zcdy64X72ko3SunMBis+QTN3HTacslh7lxpSUBp7lJWOSWqV8aYEbYptP4yUJd5wAnAUMK0+pkFQrZTDsKuqzEQ+xP6DcQFHkF8F4rfvDlNwZa4Qdg+vSyYZ/qmYzYhTw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=citrix.com smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=rXdTZvQddnn9tDkcSVp70wA46r1lK68Zs0r330WqhS8=; b=GZJigb5UvRGD1zyW6ny5tr2N8liZDH6X4Kla9sgAl/7pN6MfkHM9tzIcKbzfA7O/0DbheXMMID0rx11Ny9/qNSGfMmLnuCq4AF1uA5gOAgB0xBnjECpypv0MsPA4Lv54Z50+pnCqJgE8ZVk5wkHSVSDg0tVZs8crQc/2PlXW6p4= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C Message-ID: Date: Wed, 14 Jun 2023 10:09:41 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH] xen: Append a newline character to panic() where missing Content-Language: en-US To: Andrew Cooper , CC: Stefano Stabellini , Julien Grall , Bertrand Marquis , "Volodymyr Babchuk" , Jan Beulich , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu References: <20230614073018.21303-1-michal.orzel@amd.com> <261ab0b0-91ed-e6b7-730f-0ecb8a7b5635@citrix.com> From: Michal Orzel In-Reply-To: <261ab0b0-91ed-e6b7-730f-0ecb8a7b5635@citrix.com> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CY4PEPF0000E9D7:EE_|CY8PR12MB7220:EE_ X-MS-Office365-Filtering-Correlation-Id: 0d0ae632-5182-4a27-05ec-08db6caeb6a5 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: hl6l+LzEWc5iQPBMVLi+1zokJuMd/RsC5vkjuPFNq5h+1mTQrkHZkV9WGakSg2ZFnHYSNO5ADz1+QLP11nnk+3kQwo6o1+UUFIlKCdXBPEbKwUaJAAFuzeEtfQQ7S55VEarC55JTQ4AxiEQq7cnkVF5UA4xkyrP3VqgUSyy5Rc8txoPK28raIsxrUbm0Ry+clmal9GIrX9D31T2iJxvRBsQIYPtnnxz9aGdBAogtvQ1R3+lV8/UwrgUvmd1wxhqgGUtrHjmLtCL9jOeGiiZlWXa0fwdNfL+LiwufQyqciaC72nwz+jPOSaOAwBAGEhWVdzfvJQx3itEjYQ+639E+stCmhYzAYOhh8BbjuzYF1IDP2E6X5UH5BDKch6cKYGb7AL9MXgcnQR8ojKqqeB4k+PFvXqlqhFG7Na0N0mDt2payKD+HmgSfOEmVH84YGqjWlWnv8PCL9Jr8xTasCMyuAGp9DWh4lQiFHZ0wDCPk7aAZgOLbeC7QMGQGkMnOiYZU7leGzxgzQpgwzyFxBY4M6DE6ur2HcQlJZDOoGzap0ynNFkN68Ik8c1lA8a35g0qoZ79Uw/W5pMiz+fYftsfrJ5I3gO0twZlTWSYk2usyL19dzyFrDG/CJQ9zKPEU9+avG5nWeV5tLtryz7hNMpy6RoZ1BUtZ7ALA/dPxcEspZvK6mVNh6R3pMgznVQFz8+piqACm4TA+XG5wC/m+g25Ml8oo8dOW0ctziUiTCCiBEPwl1q38cKRNTDKm+eEd63YMJ1SuftWYjBsjEkz8D65I++RwRdWCp70oR6vvdTrtU0V8GgPdKO3UgyXBLJZoC1R5 X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(346002)(376002)(396003)(136003)(451199021)(36840700001)(46966006)(40470700004)(2616005)(40480700001)(54906003)(16576012)(40460700003)(110136005)(70206006)(82740400003)(81166007)(5660300002)(478600001)(8936002)(41300700001)(8676002)(4326008)(70586007)(316002)(186003)(426003)(83380400001)(356005)(36860700001)(47076005)(26005)(53546011)(336012)(31696002)(82310400005)(86362001)(44832011)(2906002)(36756003)(31686004)(36900700001)(43740500002);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Jun 2023 08:09:44.6341 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 0d0ae632-5182-4a27-05ec-08db6caeb6a5 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com] X-MS-Exchange-CrossTenant-AuthSource: CY4PEPF0000E9D7.namprd05.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY8PR12MB7220 On 14/06/2023 10:04, Andrew Cooper wrote: > > > On 14/06/2023 8:30 am, Michal Orzel wrote: >> Missing newline is inconsistent with the rest of the callers, since >> panic() expects it. >> >> Signed-off-by: Michal Orzel > > Acked-by: Andrew Cooper > > although... > >> --- >> xen/arch/arm/bootfdt.c | 2 +- >> xen/arch/arm/domain_build.c | 6 +++--- >> xen/arch/x86/cpu/microcode/core.c | 2 +- >> 3 files changed, 5 insertions(+), 5 deletions(-) >> >> diff --git a/xen/arch/arm/bootfdt.c b/xen/arch/arm/bootfdt.c >> index b6f92a174f5f..2673ad17a1e1 100644 >> --- a/xen/arch/arm/bootfdt.c >> +++ b/xen/arch/arm/bootfdt.c >> @@ -225,7 +225,7 @@ static int __init process_reserved_memory_node(const void *fdt, int node, >> size_cells, data); >> >> if ( rc == -ENOSPC ) >> - panic("Max number of supported reserved-memory regions reached."); >> + panic("Max number of supported reserved-memory regions reached.\n"); > > Trailing punctuation like . or ! is useless. Most messages don't have > them, and it just takes up space in .rodata, the console ring, and time > on the UART. > > I'd recommend dropping the ones you modify, and/or cleaning it up more > widely. I will keep in mind to do that in global scope in the next patch. We also have quite a lot of printk() with trailing punctuation. ~Michal From xen-devel-bounces@lists.xenproject.org Wed Jun 14 08:33:31 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 08:33:31 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548580.856557 (Exim 4.92) (envelope-from ) id 1q9LwJ-0001xH-SV; Wed, 14 Jun 2023 08:33:15 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548580.856557; Wed, 14 Jun 2023 08:33:15 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9LwJ-0001xA-PV; Wed, 14 Jun 2023 08:33:15 +0000 Received: by outflank-mailman (input) for mailman id 548580; Wed, 14 Jun 2023 08:33:15 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9LwJ-0001x4-6p for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 08:33:15 +0000 Received: from esa2.hc3370-68.iphmx.com (esa2.hc3370-68.iphmx.com [216.71.145.153]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 188ed01d-0a8e-11ee-8611-37d641c3527e; Wed, 14 Jun 2023 10:33:12 +0200 (CEST) Received: from mail-dm3nam02lp2040.outbound.protection.outlook.com (HELO NAM02-DM3-obe.outbound.protection.outlook.com) ([104.47.56.40]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 14 Jun 2023 04:33:09 -0400 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) by CO6PR03MB6209.namprd03.prod.outlook.com (2603:10b6:5:355::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.37; Wed, 14 Jun 2023 08:33:06 +0000 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::3474:a81:a100:1529]) by SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::3474:a81:a100:1529%6]) with mapi id 15.20.6455.043; Wed, 14 Jun 2023 08:33:06 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 188ed01d-0a8e-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686731592; h=from:to:cc:subject:date:message-id: content-transfer-encoding:mime-version; bh=/xn8fq+AKaIrxDtZkEtLdFl4caVItXXRSkpaK2LuiB8=; b=DUClowCq12iBZga5c1uK4IZ+tOOfnpeKwvpzHOVRGJqJHBh1zEgeskpi nD4lqR7JXIAkChf5mJBoCbW3eJC0tsNtqZyRmgI5u+7knwJFbG2GgVIS2 aw2XAZkVGu1/Bs9+7F6roawbvf+pZbCypvxc1yMS0IhOgH6NsGCzz3nYp 4=; X-IronPort-RemoteIP: 104.47.56.40 X-IronPort-MID: 112610657 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:I1U13qIP6DYHmoeoFE+RwpQlxSXFcZb7ZxGr2PjKsXjdYENS1mACy zcYDWrTO/qLYjHyfoslatzk/EJSu5OByNJqGwVlqX01Q3x08seUXt7xwmUcnc+xBpaaEB84t ZV2hv3odp1coqr0/0/1WlTZhSAgk/rOHvykU7Ss1hlZHWdMUD0mhQ9oh9k3i4tphcnRKw6Ws Jb5rta31GWNglaYCUpKrfrbwP9TlK6q4mhA4AViPakjUGL2zBH5MrpOfcldEFOgKmVkNrbSb /rOyri/4lTY838FYj9yuu+mGqGiaue60Tmm0hK6aYD76vRxjnVaPpIAHOgdcS9qZwChxLid/ jnvWauYEm/FNoWU8AgUvoIx/ytWZcWq85efSZSzXFD6I+QrvBIAzt03ZHzaM7H09c5XK0Vs8 f80IQsqTUmEuaGG2uLlQdhj05FLwMnDZOvzu1lG5BSBV7MKZMuGRK/Ho9hFwD03m8ZCW+7EY NYUYiZuaxKGZABTPlAQC9Q1m+LAanvXKmUE7g7K4/dppTSLpOBy+OGF3N79YNuFSN8Thk+Fj mnH4374ElcRM9n3JT+tqyv22LaXw36kMG4UPKaWzOFQok2z/0ACGjE6TVi5pOG9kVHrDrqzL GRRoELCt5Ma5EGtC9XwQRC8iHqFpQIHHcpdFfUg7wOAwbaS5ByWbkAGRDNcbN0ttOctWCcnk FSOmrvU6SdHtbSUTTeR8+ySpDbqYywNdzdePWkDUBcP5MTlrMcrlBXTQ91/EamzyNroBTX3x DPMpy8771kOsfM2O2yA1Qivq1qRSlLhFGbZOi2/srqZ0z5E IronPort-HdrOrdr: A9a23:RP9yOK6xe4siU9d2igPXwPfXdLJyesId70hD6qm+c20tTiX4rb HXoB1/73XJYVkqKRQdcLy7Scu9qDbnhP1ICOoqXItKPjOW3FdARbsKheDfKn/bexEWndQtsp uIHZIObuEYzmIXsS852mSF+hobr+VvOZrHudvj X-Talos-CUID: 9a23:MEn6p22flX5DNosrF209ErxfOuoBUHne4H7rBGzhDlgqeKfFF1Sh9/Yx X-Talos-MUID: =?us-ascii?q?9a23=3ATdynNQzDc2yn9ynNdbM+22OqTKCaqL+AMl83s4U?= =?us-ascii?q?mguWVJwBcIzSfiSyzWZByfw=3D=3D?= X-IronPort-AV: E=Sophos;i="6.00,242,1681185600"; d="scan'208";a="112610657" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=UQsLkLqXprTAI/hQ3O/gXE656Z5P3vdGyxxVRSmp/6JGzsm6VC1hPwOHTe8rIpw0135zinzPS7Zd2US3hSZU5WoTFb4TTv5VwAOqFlwOVJlnZDahtVqb/56oPqU9O3JO3bOjqMvNOfw8Fr5EmyjRbuaqfXWkcbvGbiTDnLH8xHB0is8pcvxNfP8utpk0cpR/Q1Lg7zBePpbDWfVo4wibHhK+gz79hGdRHT5/uhCg/y/tVuCf0GPG/h9z2yhqiG7Ld81xA7aicibwN0Amon2kJjUw7ISYNaqXeQCC1XKlCtOslb/hg//MqxK92XgU8147rl+gTMu8qb9n+fktCrN9Zg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=J4fx4wdfNya9VC8KWAVjl+h9vA569LUbD9ne2sHLE7Q=; b=ej/HGCx4mGZvve2TjpPwY9U1XCtB/ltZ44Q2Uk0VSh5uXHA2jWn3HqSXB2IsIIQW0ePtenO04oGoFo6Ol3nkD60dz/lt27txDGB09JgZK0A75fj3ab5jTZGnhrNB6EPSRgOztzytKKYKXi38D+IhlOD5hR4kyUljd3v7w0tlNHtlIXnqgqFrL3VQ9d3BaxnR8sVcRXWy48oq/UwFxXPEjCV2+on+s1wEKNsIqSnXOgAR8NsnL1GpKIDoyFXYvu+g646rNuldXF0T0eewO/qrs4YjwzQ9VK2HzcnwJVtVA2V/5OzQxj0y9WrHV7tUOvHlitOx8JdCbdrHoyg32vtE9Q== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=J4fx4wdfNya9VC8KWAVjl+h9vA569LUbD9ne2sHLE7Q=; b=TlPui/biJ2qaXASwyOxujMRDPaeJTXl888ZPlcLgrxhP7rferWSj5Yk6KHFGV4O1iyKhz4H8A+52dGSJ5RGS9vTMAno7C7XjJYBZ6iya9Ch2/fPP5Nq5ZL9/WJRElA2Fr34Jndf0tCcGdQjSsKG+9w7OPUSp11P6qr5AXh7RrKg= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; From: Roger Pau Monne To: xen-devel@lists.xenproject.org Cc: Roger Pau Monne , Jan Beulich , Andrew Cooper Subject: [PATCH] iommu/amd-vi: adjust _amd_iommu_flush_pages() to handle pseudo-domids Date: Wed, 14 Jun 2023 10:32:36 +0200 Message-Id: <20230614083236.64574-1-roger.pau@citrix.com> X-Mailer: git-send-email 2.40.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO4P265CA0042.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:2ac::7) To SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|CO6PR03MB6209:EE_ X-MS-Office365-Filtering-Correlation-Id: a0022eaa-7e6a-49d8-5fc5-08db6cb1f9fe X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: bGaWrXiecgxc1QOUNQTEqFjXkh+FDboxaw0X6+pWJCGyY1w8AOg8HO3hrpI0gqisEhBFxY7EEsv9099if/nCQgNV7sOKEaQZ2WHeXbtzx5vZbfYIU3RYY5SzQr+sF+pfIhZULzDQzEPOAUwXHFj9TKJCBWvwkaThXZwXfNE2qIaZQG/NTjQqrPq+AvpJq/9AVHKmticX+YMCVIAWhVvNR1ntviiw3MjmH0AsTFcwYB6pT3uBX+R7n/w8OO9FBgPrxUtCbtFr+xzwmAncs+mv8v82LnTY9JfvsIz00mLNoqhg4HD8ugedA/Uj6ibJG2B18NFAARDXB+fPfl8rR2Bx1z/9VKT/7c/cN0tLFyJKUXpJbyPaz54BsVT/o3VJ5Enibr1097goQzwzXszJjpAWK3QHHt50J8GYma7GBcYTowzC1gx/fIY/D7c6LsL6sBm5FHfMCVn8w3DMNIjztQlnISUcUL2wE/I0/NzPvcpaCv5hu5BG07DD4anOBkD7zTbLSHBljp90tfyaVmA5rju1Au0HyPnWyitdSlwhzPg6bfgLUVq7Kk+ZMluc5GMFuntK X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(366004)(376002)(396003)(346002)(136003)(451199021)(83380400001)(5660300002)(186003)(6506007)(2906002)(2616005)(107886003)(41300700001)(6512007)(8936002)(26005)(8676002)(6486002)(316002)(54906003)(6666004)(82960400001)(36756003)(478600001)(38100700002)(86362001)(4326008)(66476007)(66556008)(66946007)(6916009)(1076003);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?bWtFVFhtMkdhNUFYdkl6V1NTZkZjUno3eTEyUmdRQ21NT1YrVUZGRW5uaGxT?= =?utf-8?B?dzNUY1dLTDIxdXVENU9HblE0K0wwYVRFNUN3Z0FqQlljUzF3OGJiS2lQQzRN?= =?utf-8?B?RWZNK1laZGgrcmsvUGk5NXFDWnVNQXBwQ2FJbjkrSjNZTTZybXFtb0pMaWVa?= =?utf-8?B?cVMvVk4xQUF3Zy8rcGVsSU9HVjQwN25SNGhDNEY0OStwZGNERU1pOXhvODUv?= =?utf-8?B?RFZZQWpTckVNRVlQUWI0RldCNFN1NnlUYlo5Uk14eVd1RUo1bTRjYTFqMlAv?= =?utf-8?B?MERGN2dSSzgzZWs3aEhFbzdmNnB3ejBiY3IyM3o5KzFTZEJtTU5GaER3a3BJ?= =?utf-8?B?VGxXZDhGbHI5T293bFNNTUgxaThmRGNQcThHY2ZWNjZhenRXd3JtUzJBZGRX?= =?utf-8?B?aWV5L0pOeE1Pay9Pb3ZMTzU5bXZyMjBrV1dLTGJnUHNDZ3k3VjlLYldSakpq?= =?utf-8?B?NGNwVUxvTVFHbDdPaDhsUDVoaWdLSDR4eHJRWlBGUW05c3JHTnNqMWZxMGkx?= =?utf-8?B?czZ2V1cxNG1WN0g5WThxSlIrZU95bjJKRVdpaTVLNml5T1AzT045Mmk4MkJK?= =?utf-8?B?RlZnVVZ6elJIR0FyVWJ2ZnJGMFhmR2Z0RzVzMEtxMnZuUDdmdXdVRE9TNVdV?= =?utf-8?B?SmNaZXNsT1AzVDZiNk5IS21BZXRzb2Q5VkorWWJBRG9sVUR4ZXFCL1N5SlBP?= =?utf-8?B?SHM3QWJIVFhWRFVNZXNwR29SeWwrRitKUDY4MWNzQjlpelFZeDhLemZJNTAv?= =?utf-8?B?RkZTSzJKWGU4dUhBSjlnMUhVOVpNNUVNWGZadzc5N2dtUXByZFRFNVR3cW1t?= =?utf-8?B?dnNyMXNwemtpNC9FeWt6dlZyOXhJaTRJYW90M0dPOThUNk92U3F6S0Z4ZUZ2?= =?utf-8?B?bEFrSkxwRk9JcHVxK3JHVk9vV3hHL2JmQ1lBaTByT1kyNmxROGg1ZXoxclF5?= =?utf-8?B?NzE4QkRhMUJ1QXZhT0tCQnd2enR1cHk5V09LM3ZWOVYrQVhPbER1VU1zamhZ?= =?utf-8?B?VXpudFJ6cllsQ0NNVmlJYmNlQ0lub0FWdmNueFcwTVMrczMyUFlKM1FaU2hs?= =?utf-8?B?cExoRWVCM3dLQ2wwNlFaTGp6Z1I3eUNkci9kMExLajdGYjQ0VmxnS0J2TXpr?= =?utf-8?B?RUNwdzBybXJ6Q0xvbnAvcXV2eVZvWmNkT0RLdHI2UFFDSkFjWUorOU80d3Av?= =?utf-8?B?YTF5YjV2ckpsR0Q5Y2ZsQTFSVGZjdmM1bktUMnQxSG9ZTjF2NTg3SjdIUkJP?= =?utf-8?B?dFdhcVpyWTJERG9FRFlBOUNCcFZoOXVGeXg3dlpsT1pEelJKNEs1UWJkRzRz?= =?utf-8?B?T3RibDdtTVZIaW9jRW1SUmZEQURGVnVYc0JUa1JtY1JYcmNjalhUUFN2ZTl0?= =?utf-8?B?UU9qVzN1RmxlM0JNSGU1M3FRY082T3BaNTZkYXIycGkrNGQ0R1Y5dVc0T3FY?= =?utf-8?B?VytadjQrUlV5L01OOHJwSDhLUndWMW5NaHppUTlQTHZLRmMvQ2VjUlF6OFZB?= =?utf-8?B?TVc0dGpBbGZQYUhVcWVmSUg4amN6ZFViN0txZis3NHFUVnBqbU1TVTlEOVdz?= =?utf-8?B?REpLWDNwUU9yamhlWGZ0Ykh5M2c4dGp0WXdwaVJLTCs1SFhDTVBQenFvbmJF?= =?utf-8?B?YTZXd1FIYk5mR2orMjFEWllKdFZySlh0ZVVoZHh3cCtvWWtOUitHWncwTXN5?= =?utf-8?B?T09CUUgxVWkvUFFLTkN1cDZZK1VDbTU0OFJTTWNhVTcydXVtSzI5dGFSdTVY?= =?utf-8?B?SUJsSE9wY1duNitHeGIvRE13Ukp3RmgvaEdhZ0tZTjNSTmdreWxBK1N4M0xZ?= =?utf-8?B?RGlpb3ErYUxJcEZ0elBIOWd3eGpMU2VLRlJpbkFMUTF2MHZpeDJMTFZNQTdQ?= =?utf-8?B?SkxJdE1XaFV1WnhlMExHbllBajg3ZlRTeWVGSmJJNnBSRjRNTWtyRHl6Mlpy?= =?utf-8?B?UmU0cUpCZ0MrRWdldExKRHcrVGFMeCtLcmZTOGpsQU1sSThiUUF4QUlBc1I5?= =?utf-8?B?TlZPZW1oUXl2RVhFWlA1VFFjSzBnaDdINU5McDRoUE1Gc2IzK0JhYmozZHB0?= =?utf-8?B?RXVnZllLOHRqWGJRTHdsZEpzTEdGaGMxbXo0dFlERDF2cTJkSUQrRlRaM2w4?= =?utf-8?Q?h5wgAPJW6GFYAzzF2Mh0B/5FP?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: uhkUPn1O2LtpCr50mZEzaEsL2JsEUAlGIkycRaUIZb0VbZQENRtkZxcqQKrdmlNAcacACa98xqb+O0v8aULxuktkuOwWqTpXJdPKJy+EbQvThIucGLP5Ldpe0Vcdo6Y486foonnUIqIqRBuNvRx9rDZU00lkKLVXYWgMnZkt/PzopeRrTx0t+Cm3Mu1s2asz5Zh8Mx4r7J55H1+IvhKaWZjMH5e4E5W6kouDPXZS72rlRxUj6MjS68mwvqYsqFw1DQ3cyUjUnKFyCG6Ds9Gca08UROTU1Aea5SDUQZ9lb0rUr/q1t/IjjmooB3e+MwywMkSrfrDExQpj4zwUrxdYoReKEBiIbdsMPXWhIULKVnBkXrZ6JDpxPs7ZekGE3WAdxiLxLpvkUe0oKlOIgInKjDK6rQjdg4QDFj/mYYiAhDSKnYUJ70nuzq4wRTp3an5unDkCHaI3GNxgHbzBsuJSI5zY+46gdwkVqMoP8Zltld0t2JSVbNkWYcB1OqJRsCctU7BrK6yaBEY8Wa4CmdfooF85I+Ov9HeND5NEfTsfrSyFF8kKtJCd/m+cVXc7jRbl06z4qGDF7PnjyPFQpcrnGnuRxq2i51xYt7QJuubQFMa/FR/6Oiwcyob3VcGFlifwCkUJS5qxRMxceAXCJkzGJW1sD1U0XEBoi+lt4sZl+1TX4niHBNS73tWbROiHsMiWLLWhbURKEM+S9VHdBKA/MQcPhjXkAfR+qXIyXnFJGqZSPsTdT70iIIMLvEHzigEYcewtqyPs13PBbZDA+e14tcdJeOoiKkiDZ87ICzQpjw4= X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: a0022eaa-7e6a-49d8-5fc5-08db6cb1f9fe X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Jun 2023 08:33:06.4860 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: sMez8cFLhFJe9CNZgYEp1vhmnsmKnw7W2sWDaKb60PHpLZ4CIkEZ6vURIXd0hl3MFM6NN9FvKaoSNA1qHjVdBA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: CO6PR03MB6209 When the passed domain is DomIO iterate over the list of DomIO assigned devices and flush each pseudo-domid found. invalidate_all_domain_pages() does call amd_iommu_flush_all_pages() with DomIO as a parameter, and hence the underlying _amd_iommu_flush_pages() implementation must be capable of flushing all pseudo-domids used by the quarantine domain logic. While there fix invalidate_all_domain_pages() to only attempt to flush the domains that have IOMMU enabled, otherwise the flush is pointless. Fixes: 14dd241aad8a ('IOMMU/x86: use per-device page tables for quarantining') Signed-off-by: Roger Pau Monné --- Only build tested, as I don't have an AMD system that I can do suspend/resume on. --- xen/drivers/passthrough/amd/iommu_cmd.c | 29 ++++++++++++++++++++---- xen/drivers/passthrough/amd/iommu_init.c | 4 +++- 2 files changed, 28 insertions(+), 5 deletions(-) diff --git a/xen/drivers/passthrough/amd/iommu_cmd.c b/xen/drivers/passthrough/amd/iommu_cmd.c index 40ddf366bb4d..ff55e3b88ae6 100644 --- a/xen/drivers/passthrough/amd/iommu_cmd.c +++ b/xen/drivers/passthrough/amd/iommu_cmd.c @@ -330,13 +330,34 @@ static void _amd_iommu_flush_pages(struct domain *d, daddr_t daddr, unsigned int order) { struct amd_iommu *iommu; - unsigned int dom_id = d->domain_id; /* send INVALIDATE_IOMMU_PAGES command */ - for_each_amd_iommu ( iommu ) + if ( d != dom_io ) { - invalidate_iommu_pages(iommu, daddr, dom_id, order); - flush_command_buffer(iommu, 0); + for_each_amd_iommu ( iommu ) + { + invalidate_iommu_pages(iommu, daddr, d->domain_id, order); + flush_command_buffer(iommu, 0); + } + } + else + { + const struct pci_dev *pdev; + + for_each_pdev(dom_io, pdev) + if ( pdev->arch.pseudo_domid != DOMID_INVALID ) + { + iommu = find_iommu_for_device(pdev->sbdf.seg, pdev->sbdf.bdf); + if ( !iommu ) + { + ASSERT_UNREACHABLE(); + continue; + } + + invalidate_iommu_pages(iommu, daddr, pdev->arch.pseudo_domid, + order); + flush_command_buffer(iommu, 0); + } } if ( ats_enabled ) diff --git a/xen/drivers/passthrough/amd/iommu_init.c b/xen/drivers/passthrough/amd/iommu_init.c index 7dbd7e7d094a..af6713d2fc02 100644 --- a/xen/drivers/passthrough/amd/iommu_init.c +++ b/xen/drivers/passthrough/amd/iommu_init.c @@ -1532,8 +1532,10 @@ int __init amd_iommu_init_late(void) static void invalidate_all_domain_pages(void) { struct domain *d; + for_each_domain( d ) - amd_iommu_flush_all_pages(d); + if ( is_iommu_enabled(d) ) + amd_iommu_flush_all_pages(d); } static int cf_check _invalidate_all_devices( -- 2.40.0 From xen-devel-bounces@lists.xenproject.org Wed Jun 14 08:44:27 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 08:44:27 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548585.856568 (Exim 4.92) (envelope-from ) id 1q9M6r-0003SG-SJ; Wed, 14 Jun 2023 08:44:09 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548585.856568; Wed, 14 Jun 2023 08:44:09 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9M6r-0003S9-OY; Wed, 14 Jun 2023 08:44:09 +0000 Received: by outflank-mailman (input) for mailman id 548585; Wed, 14 Jun 2023 08:44:08 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9M6p-0003S3-Uq for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 08:44:08 +0000 Received: from mo4-p00-ob.smtp.rzone.de (mo4-p00-ob.smtp.rzone.de [81.169.146.217]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 9ef3d05b-0a8f-11ee-b232-6b7b168915f2; Wed, 14 Jun 2023 10:44:06 +0200 (CEST) Received: from sender by smtp.strato.de (RZmta 49.5.3 AUTH) with ESMTPSA id L38909z5E8i5kWd (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256 bits)) (Client did not present a certificate) for ; Wed, 14 Jun 2023 10:44:05 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 9ef3d05b-0a8f-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; t=1686732245; cv=none; d=strato.com; s=strato-dkim-0002; b=mFhYt+eQVW2Joa+AdEWNc24kP9hRLrcmduKO75xNGZMSdvPHlKB3RkF9hDA0i2+wd/ eCIj2JsFXytlOGfvZjR7pbrdSJS0TPZoV9E18bGU7a+yj1iqt9osVit4lX/TE9WrjITY N8gI2jC5V4HgwhPkn8oCsKulaYN8m1cBHssn+xUgzteBeF2CMgiD0Y82m7Of0yHU0CFG 2kXwIGyukm0LUTKBtn+v1ubprmHO0Jw5KGFn4SfjiDIoE8ERRe3/pHdVxs0Crw1lmHYO OUaoTh7ZxwiWBrXVprVffFulNUH6AwhfbQ6LQ+9W8I2tiRVoxCj5AtS3sfQV/lRVvrdo ojDg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; t=1686732245; s=strato-dkim-0002; d=strato.com; h=Message-ID:Subject:To:From:Date:Cc:Date:From:Subject:Sender; bh=feGxpcqc2SUWbawaHYkxho7w62lCWXe/X00TfFDE8RA=; b=UAIh18N/dbYmZKUzYGggnxiWR+9R+jaxqefjg+YD5XeiD48yYeFFX6sqBcDy/uNR37 M7uQlE9+P5wqbHPhwAQYPWJhmZb2X0sy2liK5xen9L+aUOo/Rfq1N3Yio0PFtthbn1Cr VIqWRBCrs8FwuZQzwykZsshfDtzXhWLUYeDU0iHn2TDbcUS64MEvQ4yC8jGeRQwP81cw irt8JhJ8rVrHT6ZTP/6CotSdSUX4NaFVAedqRm63oqT6VLgYsFtHkaM56SeblfxjyDJt jyR7P1NCqyV7OfPVmmoUSRjRx/eI6o3usxZclzTZky1pfV1W0SWnQAIBHO3ck1ZHgGlt Y8iQ== ARC-Authentication-Results: i=1; strato.com; arc=none; dkim=none X-RZG-CLASS-ID: mo00 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; t=1686732245; s=strato-dkim-0002; d=aepfle.de; h=Message-ID:Subject:To:From:Date:Cc:Date:From:Subject:Sender; bh=feGxpcqc2SUWbawaHYkxho7w62lCWXe/X00TfFDE8RA=; b=KVmQ/nwmK20iagxenOCnDGsn2n92RC0/IdRlfgGzcYkULXV+oLv2lyzpuJZ0FFbKg+ y7sDTq1w/7pk3uvgV3cH4YQO/9kDIp1+d5r9DeFoUsN079FJglwd6XdDsH7D/FkL7XQ2 M0PT+dK96coNVSA87HnJSiirAQo7z3KgCvknYYoxIVpLAP74epgdL0oAqPH2gLXWc1QP L1wNZfKWXzrL0UdpcvXGY2igfAArH4P4J90WyDTP+4LLtn6SWCn+A1rJWwHxourXYf73 eoSNlBQSf2u6ghoQP+EaxdLXUoOPONuHeo8u4U4fo8P4ji8EDYH0mNFCpEa8DiGoA/JQ W3Qg== DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; t=1686732245; s=strato-dkim-0003; d=aepfle.de; h=Message-ID:Subject:To:From:Date:Cc:Date:From:Subject:Sender; bh=feGxpcqc2SUWbawaHYkxho7w62lCWXe/X00TfFDE8RA=; b=BKEOCNiIKIV6Dk4olxVDm/deRpLU33eZ4st9mx//RSvtNW6Ve0OszJCc4cTq8/vdB8 BdRrw/jfTGZ4WyFFC2Bg== X-RZG-AUTH: ":P2EQZWCpfu+qG7CngxMFH1J+3q8wa/QLpd5ylWvMDX3y/OuD5rXVisR5AB2Ibh3sRFQAfajHZ8Hr2i7N1ImBUHmXWy0PQg==" Date: Wed, 14 Jun 2023 10:43:58 +0200 From: Olaf Hering To: xen-devel@lists.xenproject.org Subject: compat code lacks support for __attribute__ Message-ID: <20230614104234.56835aa9.olaf@aepfle.de> X-Mailer: Claws Mail 20230601T090920.68bc28c0 hat ein Softwareproblem, kann man nichts machen. MIME-Version: 1.0 Content-Type: multipart/signed; boundary="Sig_/W/VWX/Lck0UsJ4n=a.wQTi+"; protocol="application/pgp-signature"; micalg=pgp-sha256 Content-Transfer-Encoding: 7bit --Sig_/W/VWX/Lck0UsJ4n=a.wQTi+ Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: quoted-printable I would like to share code between the hypervisor and xenalyze, so that every definition comes from a single place and is not duplicated in xen and xenalyze. This works as long as simple constructs like struct x {}; are used. Depending on the data to be stored into the trace buffer, having support for __packed may reduce the amount of data that need to be copied. The tooling currently converts ___attribute__ into compat___attribute__. Was support for __attribute__ intentionally left out, or was there just no usecase for it? Olaf +++ b/xen/include/public/trace.h @@ -80,6 +80,14 @@ #define TRC_LOST_RECORDS (TRC_GEN + 1) #define TRC_TRACE_WRAP_BUFFER (TRC_GEN + 2) #define TRC_TRACE_CPU_CHANGE (TRC_GEN + 3) +#define TRC_a (TRC_GEN + 123) +struct __attribute__((__packed__)) trc_a { + unsigned a; +}; +#define TRC_b (TRC_GEN + 321) +typedef struct __attribute__((__packed__)) trc_b { + unsigned b; +} trc_b_t; =20 #define TRC_SCHED_RUNSTATE_CHANGE (TRC_SCHED_MIN + 1) #define TRC_SCHED_CONTINUE_RUNNING (TRC_SCHED_MIN + 2) --Sig_/W/VWX/Lck0UsJ4n=a.wQTi+ Content-Type: application/pgp-signature Content-Description: Digitale Signatur von OpenPGP -----BEGIN PGP SIGNATURE----- iQIzBAEBCAAdFiEE97o7Um30LT3B+5b/86SN7mm1DoAFAmSJfc4ACgkQ86SN7mm1 DoDk7Q//c+eVEcmadgX3awWOlIL87B/B2i6I78bm5TkgZ+RhHJI/fu++rYWfLzb4 6wOfOfV28/pZXd9OIJwS8t0vEFuDf5AejBEp9UDSslp9QrVGEWdaeDQvz7ny/y1t g/DtccsMoXx/ofYQxRNcUP4qeUpZTgWU1ZBfAWyj+WAOhZ36k/stYG27ID94phzn pjLKshExwqtz5VkA7L4x4JOL8sq565LDV0pprJmRLKPYgMMRM/4CVi1vwxoIdKSI Vl1J3UMMeiJMa00fB3OYqnqTIlXYu2zABNZSEXp1pAWNAnfz+xVar3CuUVtIuu9X Whd7hV0Htbd0e5PAynm7cNwKIs3zpPc/Vn7M2LbSeyLUHwMWIz9mu1lXRX0kInBp vS7CRr/oKS2CUY+dl9R+yszEMxgh+qAoy3lRBt8s+owZ/7WC+ZoYs7/jXgzT3Hqp U3cuF0JLLVOmXDNyCWPlr/Gu/wpg6ZzHvo1tm60+QZdrQvho1yWlKvraaYBnp00l zpKEZFWZR7KBgXlAtGdVa1TpmWOI6WEVTciCF0mBBW3BzUSvW/03TvUED7Fw6Z0D /TXEDc0v+rbXRSUx/tdOxBArtfzhlMdRbrTD2FBPazoWQ7GMv9r//A0IfrsAR01N 8GZa38D2uPCXl9GZQV188rLIx90RgeAmBoxIqcoGtputGK27st4= =JGnU -----END PGP SIGNATURE----- --Sig_/W/VWX/Lck0UsJ4n=a.wQTi+-- From xen-devel-bounces@lists.xenproject.org Wed Jun 14 09:03:01 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 09:03:01 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548593.856578 (Exim 4.92) (envelope-from ) id 1q9MOy-0005yJ-G8; Wed, 14 Jun 2023 09:02:52 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548593.856578; Wed, 14 Jun 2023 09:02:52 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9MOy-0005yC-Ch; Wed, 14 Jun 2023 09:02:52 +0000 Received: by outflank-mailman (input) for mailman id 548593; Wed, 14 Jun 2023 09:02:51 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9MOx-0005y6-5T for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 09:02:51 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9MOv-000599-MX; Wed, 14 Jun 2023 09:02:49 +0000 Received: from 54-240-197-238.amazon.com ([54.240.197.238] helo=[192.168.9.244]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1q9MOv-0001VE-Eh; Wed, 14 Jun 2023 09:02:49 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=6LCvmA5flYfzovWjOCTQpa23hq/J36muMq4tLhbqgFw=; b=O/6yapYyzMJTSERalxpGlddDLG Khh9+DNFtdg7jOwSBhItud8ywfe+pfix/GANIh2DkEzUw8d3m/MV/UaKwNYaLDLGjFqv2TOxgg63y 0IKTldURjveKFrMLmPVtSbIhD3iIuodvcnw+mqtnrcIQIfIlJRhbqMSSNqfpkY9K2fQs=; Message-ID: <4925a406-3b06-792f-008e-77503ca230f0@xen.org> Date: Wed, 14 Jun 2023 10:02:46 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH] xen: Append a newline character to panic() where missing Content-Language: en-US To: Michal Orzel , Andrew Cooper , xen-devel@lists.xenproject.org Cc: Stefano Stabellini , Bertrand Marquis , Volodymyr Babchuk , Jan Beulich , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu References: <20230614073018.21303-1-michal.orzel@amd.com> <261ab0b0-91ed-e6b7-730f-0ecb8a7b5635@citrix.com> From: Julien Grall In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit On 14/06/2023 09:09, Michal Orzel wrote: > > > On 14/06/2023 10:04, Andrew Cooper wrote: >> >> >> On 14/06/2023 8:30 am, Michal Orzel wrote: >>> Missing newline is inconsistent with the rest of the callers, since >>> panic() expects it. >>> >>> Signed-off-by: Michal Orzel >> >> Acked-by: Andrew Cooper >> >> although... >> >>> --- >>> xen/arch/arm/bootfdt.c | 2 +- >>> xen/arch/arm/domain_build.c | 6 +++--- >>> xen/arch/x86/cpu/microcode/core.c | 2 +- >>> 3 files changed, 5 insertions(+), 5 deletions(-) >>> >>> diff --git a/xen/arch/arm/bootfdt.c b/xen/arch/arm/bootfdt.c >>> index b6f92a174f5f..2673ad17a1e1 100644 >>> --- a/xen/arch/arm/bootfdt.c >>> +++ b/xen/arch/arm/bootfdt.c >>> @@ -225,7 +225,7 @@ static int __init process_reserved_memory_node(const void *fdt, int node, >>> size_cells, data); >>> >>> if ( rc == -ENOSPC ) >>> - panic("Max number of supported reserved-memory regions reached."); >>> + panic("Max number of supported reserved-memory regions reached.\n"); >> >> Trailing punctuation like . or ! is useless. Most messages don't have >> them, and it just takes up space in .rodata, the console ring, and time >> on the UART. >> >> I'd recommend dropping the ones you modify, and/or cleaning it up more >> widely. > I will keep in mind to do that in global scope in the next patch. > We also have quite a lot of printk() with trailing punctuation. This is quite a bit of churn and I am unconvinced this is necessary. Also, if the others want such style, then this should be agreed on in the CODING_STYLE first. Otherwise, I am afraid this is not something I will enforce because I see limited value. Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Wed Jun 14 09:06:24 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 09:06:24 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548598.856587 (Exim 4.92) (envelope-from ) id 1q9MSC-0006Zw-Uv; Wed, 14 Jun 2023 09:06:12 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548598.856587; Wed, 14 Jun 2023 09:06:12 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9MSC-0006Zp-Rm; Wed, 14 Jun 2023 09:06:12 +0000 Received: by outflank-mailman (input) for mailman id 548598; Wed, 14 Jun 2023 09:06:12 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9MSC-0006Zj-5J for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 09:06:12 +0000 Received: from NAM04-MW2-obe.outbound.protection.outlook.com (mail-mw2nam04on2061d.outbound.protection.outlook.com [2a01:111:f400:7e8c::61d]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id b361548f-0a92-11ee-b232-6b7b168915f2; Wed, 14 Jun 2023 11:06:10 +0200 (CEST) Received: from SN7PR04CA0043.namprd04.prod.outlook.com (2603:10b6:806:120::18) by DM6PR12MB4043.namprd12.prod.outlook.com (2603:10b6:5:216::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.29; Wed, 14 Jun 2023 09:06:06 +0000 Received: from SN1PEPF000252A3.namprd05.prod.outlook.com (2603:10b6:806:120:cafe::2a) by SN7PR04CA0043.outlook.office365.com (2603:10b6:806:120::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.37 via Frontend Transport; Wed, 14 Jun 2023 09:06:05 +0000 Received: from SATLEXMB03.amd.com (165.204.84.17) by SN1PEPF000252A3.mail.protection.outlook.com (10.167.242.10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6500.23 via Frontend Transport; Wed, 14 Jun 2023 09:06:04 +0000 Received: from SATLEXMB06.amd.com (10.181.40.147) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Wed, 14 Jun 2023 04:06:03 -0500 Received: from SATLEXMB04.amd.com (10.181.40.145) by SATLEXMB06.amd.com (10.181.40.147) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Wed, 14 Jun 2023 04:06:03 -0500 Received: from [10.71.193.39] (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server id 15.1.2507.23 via Frontend Transport; Wed, 14 Jun 2023 04:06:01 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: b361548f-0a92-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=bM4fc+MXfdyWgIAJWJWwlKEzNJy6pGJ75Gtj42xDtEq2erTZTCKpepMobh264yxEat/CHLlcvf6AXXRlPyYdYb4LDdYpsh7qQ/WtXQdUo4yL/beVAMhqyI/o5P5Vhgkdr3WH0MrEmAdXGrUZLUEzABBQftBKLWsz7iMs3kYty4o+K64MgGvbnzBC8+oLf0DKwpF1p9I7W2v8rZhT3rIpixoimmEV7Vn5Xt0L+wz1CzUWa4KrlvZtOndpj58sfX6qwtF/y6WPMjbTFr97ZwAW/TYAEXbujx/foe61zr7arSVlhmwYtWSzOmYRsWN0SxbAllf0vDCse6tRxvf1eEXAOA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=STYl5yEiI795xS/21poxsmL38Aumxeui2Ad5+dtqIXQ=; b=XgR/UnxB0+kp95Oo7p4hGo985w5BfgU/nbwQBk69x0rE3+AgjmcFUS1Go4eQKSwvj9rySZh52yE5jl7QEpOg3EbNCDHU85zFHEvdjr2LWHRFKeba33UY6BXbSvIQcpJlJfxfZMV7OBvfQP8VDH4xx5UuwvIs+W0py0XaZ1oyV4xux0ctEnhcXqXLTdd7cQAteNsNYqCLCJabRv3o4MhFXpKhGBQfCj4DRKYhVOAD5cUF0qagKp8RvfL/Nh8z2hcMV1js7qGz+qHI7IpPwrmLNHDfznt56s2wqPsjqsuYVp2wctvV9B5HTKgwzEx16EmuUNpHIPC/BbeEQ3ZTorb4Dg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=xen.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=STYl5yEiI795xS/21poxsmL38Aumxeui2Ad5+dtqIXQ=; b=JR1tLcaiOcOQJC702FgcN3PwCGxHvU71nuA+aFpPiD4cgBgt1aGK6rtRERv370sm7VBLGJv78wlXGXQny3u7m7yPLQOhPUrUC2L0+i7WCXE+Zscqqsp9TBfWxmYSItuq0TI1Smuxr9sF3LEKlsGmGKc/EbpI2cl6CBh4LlNHWdY= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C Message-ID: Date: Wed, 14 Jun 2023 11:06:01 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH] xen: Append a newline character to panic() where missing Content-Language: en-US To: Julien Grall , Andrew Cooper , CC: Stefano Stabellini , Bertrand Marquis , Volodymyr Babchuk , Jan Beulich , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu References: <20230614073018.21303-1-michal.orzel@amd.com> <261ab0b0-91ed-e6b7-730f-0ecb8a7b5635@citrix.com> <4925a406-3b06-792f-008e-77503ca230f0@xen.org> From: Michal Orzel In-Reply-To: <4925a406-3b06-792f-008e-77503ca230f0@xen.org> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SN1PEPF000252A3:EE_|DM6PR12MB4043:EE_ X-MS-Office365-Filtering-Correlation-Id: c290c34b-bcac-463e-2d5c-08db6cb69575 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: wrS5vLyhs9pMMsWxxhkA5iYnxlQZuOuNYrpx1RP6n9Q/61i/f9Evw4OQvzEh+XT1ptWFQSiJjJQiT8IyUOvBTl823nVmVK5q9LJmZlIczW2EKYg20odlKrEO2YeoPTP6zGrzgvXjU3Cygvj5axypl65Miym5umzwU8l05Qo14ke1iAHgrDTkdULNB+HGxbqFxBPv/PuTwu0GWZLd+mNVmfxV0pCbmureWxwFmd991YCh+6n3VC2SHHOa2dVTW7jHkPizlzHNERy0l5bPiLyyIXdGTcYzWbAzdF50vmFtw8ZBqzCkSJRWnRBrUF8pPkQH0lixDxbuhmzhR1eGHOaDZ5L8dw0OkLjKXx2Rk2+HIKWJMm7dTDSbrt5gqnrJTy2aQhBwy0h94BZTWh3Qchjj9oO7A6rzOdcM1bn88Vu3MPlej9Zd02UbDQVGEiRMSwjOFRllnWE+WTpFX7GtIbfCSAc3B4iIFNzcEgzVZDfYO1ZD5wnCL1bCvNUsA000odDkbaBjAfI8KkRC1V9GoKA/27o6wbxuCOdnY/Hp4cgutBWBQjiBvBGBPZWo+hd9uGCpdpTwMzyguyfS57G3LoXCnlojlVe8M9ym/nUA1xg7m/OVgkRVGiWJBYeP45hppie3NSFlJ3n9cErF+40Gl0RQUYKULSm/memfLteqIpVtERdHvUaWzVRqxptsBbvnLxPeCmO8wyW1uhsu4Bq8FzPTrlo+b5jxhLB6FhJ+KdJUEQaTpN/OwqX31FXk9QpSmxBXDKw3LjKlnnCV8KMC/8rMVJP3qWfAXjISxlFWJtixACuM06eXhMREzfKZ29pE7l97 X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(396003)(39860400002)(376002)(346002)(136003)(451199021)(40470700004)(46966006)(36840700001)(47076005)(31686004)(70206006)(70586007)(4326008)(426003)(336012)(36756003)(186003)(54906003)(478600001)(110136005)(2616005)(2906002)(16576012)(8676002)(316002)(41300700001)(31696002)(82310400005)(86362001)(40460700003)(36860700001)(356005)(53546011)(8936002)(44832011)(83380400001)(82740400003)(26005)(5660300002)(81166007)(40480700001)(36900700001)(43740500002);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Jun 2023 09:06:04.9764 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: c290c34b-bcac-463e-2d5c-08db6cb69575 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com] X-MS-Exchange-CrossTenant-AuthSource: SN1PEPF000252A3.namprd05.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR12MB4043 On 14/06/2023 11:02, Julien Grall wrote: > > > On 14/06/2023 09:09, Michal Orzel wrote: >> >> >> On 14/06/2023 10:04, Andrew Cooper wrote: >>> >>> >>> On 14/06/2023 8:30 am, Michal Orzel wrote: >>>> Missing newline is inconsistent with the rest of the callers, since >>>> panic() expects it. >>>> >>>> Signed-off-by: Michal Orzel >>> >>> Acked-by: Andrew Cooper >>> >>> although... >>> >>>> --- >>>> xen/arch/arm/bootfdt.c | 2 +- >>>> xen/arch/arm/domain_build.c | 6 +++--- >>>> xen/arch/x86/cpu/microcode/core.c | 2 +- >>>> 3 files changed, 5 insertions(+), 5 deletions(-) >>>> >>>> diff --git a/xen/arch/arm/bootfdt.c b/xen/arch/arm/bootfdt.c >>>> index b6f92a174f5f..2673ad17a1e1 100644 >>>> --- a/xen/arch/arm/bootfdt.c >>>> +++ b/xen/arch/arm/bootfdt.c >>>> @@ -225,7 +225,7 @@ static int __init process_reserved_memory_node(const void *fdt, int node, >>>> size_cells, data); >>>> >>>> if ( rc == -ENOSPC ) >>>> - panic("Max number of supported reserved-memory regions reached."); >>>> + panic("Max number of supported reserved-memory regions reached.\n"); >>> >>> Trailing punctuation like . or ! is useless. Most messages don't have >>> them, and it just takes up space in .rodata, the console ring, and time >>> on the UART. >>> >>> I'd recommend dropping the ones you modify, and/or cleaning it up more >>> widely. >> I will keep in mind to do that in global scope in the next patch. >> We also have quite a lot of printk() with trailing punctuation. > > This is quite a bit of churn and I am unconvinced this is necessary. > Also, if the others want such style, then this should be agreed on in > the CODING_STYLE first. Otherwise, I am afraid this is not something I > will enforce because I see limited value. > I then suggest to take this patch as is if you are also happy with it like others. ~Michal From xen-devel-bounces@lists.xenproject.org Wed Jun 14 09:08:05 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 09:08:05 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548603.856598 (Exim 4.92) (envelope-from ) id 1q9MTh-000777-9P; Wed, 14 Jun 2023 09:07:45 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548603.856598; Wed, 14 Jun 2023 09:07:45 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9MTh-000770-65; Wed, 14 Jun 2023 09:07:45 +0000 Received: by outflank-mailman (input) for mailman id 548603; Wed, 14 Jun 2023 09:07:44 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9MTg-00076s-KV for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 09:07:44 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9MTc-0005FC-O0; Wed, 14 Jun 2023 09:07:40 +0000 Received: from 54-240-197-238.amazon.com ([54.240.197.238] helo=[192.168.9.244]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1q9MTc-0001hg-HV; Wed, 14 Jun 2023 09:07:40 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=hxeLzK98mBRCxEJBY+3ja56BaP9taQEScs3KdlkAk6E=; b=a//fipWBHpvwdxkyHXekWJZ2Bd B4ajQWHUS6mcXRddt7wgoGu2mg1M2QOGd4S89sBrliJ2QcqWNLpSHOoFwbzUfTZcsXviNQT+X7FUo OmCxq9kK98qvdEnV8h2TuNahu1aZPQg4GV4ljqcYJJfhmy6aA0FPjDl5wm5LkSzqRb28=; Message-ID: Date: Wed, 14 Jun 2023 10:07:38 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH] xen/evtchn: Purge ERROR_EXIT{,_DOM}() Content-Language: en-US To: Jan Beulich , Andrew Cooper Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , Stefano Stabellini , Volodymyr Babchuk , Bertrand Marquis , Xen-devel References: <20230613162220.3052184-1-andrew.cooper3@citrix.com> From: Julien Grall In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi Jan, On 14/06/2023 07:59, Jan Beulich wrote: > On 13.06.2023 18:22, Andrew Cooper wrote: >> These are disliked specifically by MISRA, but they also interfere with code >> legibility by hiding control flow. Expand and drop them. >> >> * Rearrange the order of actions to write into rc, then render rc in the >> gdprintk(). >> * Drop redundant "rc = rc" assignments >> * Switch to using %pd for rendering domains > > With this change, ... > >> No functional change. Resulting binary is identical. > > ... I doubt this. Even .text being entirely identical would be pure luck, > as message offsets might change slightly depending on how much padding > the compiler inserts between them. Furthermore I wonder whether ... > >> @@ -336,7 +319,11 @@ int evtchn_alloc_unbound(evtchn_alloc_unbound_t *alloc, evtchn_port_t port) >> >> port = rc = evtchn_get_port(d, port); >> if ( rc < 0 ) >> - ERROR_EXIT(rc); >> + { >> + gdprintk(XENLOG_WARNING, "EVTCHNOP failure: error %d\n", rc); >> + goto out; >> + } > > ... it wouldn't make sense to mention the actual operation that failed, > now that each function has its own message(s). In turn I question the > usesfulness of "error" in the message text. > > Then again I wonder whether it isn't time to purge these gdprintk()s > altogether. Surely they served a purpose for bringing up initial Linux > and mini-os and alike, but that's been two decades ago now. There are still port of new OS on Xen (e.g. QNX, FreeRTOS...) happening time to time. Also, having messages in error path is something I wish most of Xen had. Quite often when I end up to debug an hypercall, I will add printks(). So I am not in favor of removing the gdprintk()s. Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Wed Jun 14 09:09:45 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 09:09:45 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548608.856608 (Exim 4.92) (envelope-from ) id 1q9MVR-0007hi-MS; Wed, 14 Jun 2023 09:09:33 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548608.856608; Wed, 14 Jun 2023 09:09:33 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9MVR-0007hb-I3; Wed, 14 Jun 2023 09:09:33 +0000 Received: by outflank-mailman (input) for mailman id 548608; Wed, 14 Jun 2023 09:09:32 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9MVQ-0007hV-Kv for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 09:09:32 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9MVP-0005Gg-OA; Wed, 14 Jun 2023 09:09:31 +0000 Received: from 54-240-197-238.amazon.com ([54.240.197.238] helo=[192.168.9.244]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1q9MVP-0001lr-HA; Wed, 14 Jun 2023 09:09:31 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=vchz7TNmo8hQBnaTuLczfPJK/vEPwVTQyrBY6n8zvl4=; b=Qavaj+JanEMDih9qX5GKr6tt4Y qHELKFZx04FXIeJpm+RhAHwTuMpTRH1VFc47RlNUPrW0/aRSil9BCGiiSTO82tqrfGvVF7fhdf7/z f76HODRG4nYIYGqxawq2zy1j3lmHl/X9c8BYzITvdTDMu+Sg9p7i4JNmXMx1gByVGKi8=; Message-ID: <5b4c98fb-9f81-ab30-29b4-ad8b9587b96b@xen.org> Date: Wed, 14 Jun 2023 10:09:29 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH] xen: Append a newline character to panic() where missing Content-Language: en-US To: Michal Orzel , Andrew Cooper , xen-devel@lists.xenproject.org Cc: Stefano Stabellini , Bertrand Marquis , Volodymyr Babchuk , Jan Beulich , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu References: <20230614073018.21303-1-michal.orzel@amd.com> <261ab0b0-91ed-e6b7-730f-0ecb8a7b5635@citrix.com> <4925a406-3b06-792f-008e-77503ca230f0@xen.org> From: Julien Grall In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit On 14/06/2023 10:06, Michal Orzel wrote: > > > On 14/06/2023 11:02, Julien Grall wrote: >> >> >> On 14/06/2023 09:09, Michal Orzel wrote: >>> >>> >>> On 14/06/2023 10:04, Andrew Cooper wrote: >>>> >>>> >>>> On 14/06/2023 8:30 am, Michal Orzel wrote: >>>>> Missing newline is inconsistent with the rest of the callers, since >>>>> panic() expects it. >>>>> >>>>> Signed-off-by: Michal Orzel >>>> >>>> Acked-by: Andrew Cooper >>>> >>>> although... >>>> >>>>> --- >>>>> xen/arch/arm/bootfdt.c | 2 +- >>>>> xen/arch/arm/domain_build.c | 6 +++--- >>>>> xen/arch/x86/cpu/microcode/core.c | 2 +- >>>>> 3 files changed, 5 insertions(+), 5 deletions(-) >>>>> >>>>> diff --git a/xen/arch/arm/bootfdt.c b/xen/arch/arm/bootfdt.c >>>>> index b6f92a174f5f..2673ad17a1e1 100644 >>>>> --- a/xen/arch/arm/bootfdt.c >>>>> +++ b/xen/arch/arm/bootfdt.c >>>>> @@ -225,7 +225,7 @@ static int __init process_reserved_memory_node(const void *fdt, int node, >>>>> size_cells, data); >>>>> >>>>> if ( rc == -ENOSPC ) >>>>> - panic("Max number of supported reserved-memory regions reached."); >>>>> + panic("Max number of supported reserved-memory regions reached.\n"); >>>> >>>> Trailing punctuation like . or ! is useless. Most messages don't have >>>> them, and it just takes up space in .rodata, the console ring, and time >>>> on the UART. >>>> >>>> I'd recommend dropping the ones you modify, and/or cleaning it up more >>>> widely. >>> I will keep in mind to do that in global scope in the next patch. >>> We also have quite a lot of printk() with trailing punctuation. >> >> This is quite a bit of churn and I am unconvinced this is necessary. >> Also, if the others want such style, then this should be agreed on in >> the CODING_STYLE first. Otherwise, I am afraid this is not something I >> will enforce because I see limited value. >> > I then suggest to take this patch as is if you are also happy with it like others. The patch looks fine. I will commit it a bit later just to give a chance to Bertrand/Stefano to object. Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Wed Jun 14 09:22:37 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 09:22:37 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548613.856618 (Exim 4.92) (envelope-from ) id 1q9Mho-0001eh-OZ; Wed, 14 Jun 2023 09:22:20 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548613.856618; Wed, 14 Jun 2023 09:22:20 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9Mho-0001ea-KQ; Wed, 14 Jun 2023 09:22:20 +0000 Received: by outflank-mailman (input) for mailman id 548613; Wed, 14 Jun 2023 09:22:18 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9Mhm-0001eU-Fa for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 09:22:18 +0000 Received: from esa4.hc3370-68.iphmx.com (esa4.hc3370-68.iphmx.com [216.71.155.144]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id f321d775-0a94-11ee-b232-6b7b168915f2; Wed, 14 Jun 2023 11:22:16 +0200 (CEST) Received: from mail-bn1nam02lp2044.outbound.protection.outlook.com (HELO NAM02-BN1-obe.outbound.protection.outlook.com) ([104.47.51.44]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 14 Jun 2023 05:21:57 -0400 Received: from BN7PR03MB3618.namprd03.prod.outlook.com (2603:10b6:406:c3::27) by DM6PR03MB4985.namprd03.prod.outlook.com (2603:10b6:5:1f0::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.29; Wed, 14 Jun 2023 09:21:54 +0000 Received: from BN7PR03MB3618.namprd03.prod.outlook.com ([fe80::7ebd:898:4cb0:7514]) by BN7PR03MB3618.namprd03.prod.outlook.com ([fe80::7ebd:898:4cb0:7514%5]) with mapi id 15.20.6477.028; Wed, 14 Jun 2023 09:21:54 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: f321d775-0a94-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686734535; h=message-id:date:from:subject:to:cc:references: in-reply-to:content-transfer-encoding:mime-version; bh=/p6wk7Zbj763leAtBPF/DRevuEDBQhgJIb3HopmlTlU=; b=ejSNEjmvVrQNuLGT5CNb4OH9J5/E+NoSlQLZuEnAHI5Ian9jxJm3p0VS t56cvPSPXgWMrIpbfxXzX0iBaSD8REbJl7xnixQTxMhNJKLx1ilpF9FqL MWRQsEd/uHSW/QsGL+/nth5c9swp//RcEhlurxQdQsOhBeALwL9QRXZjS Q=; X-IronPort-RemoteIP: 104.47.51.44 X-IronPort-MID: 115261419 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:3F1Ntqugd09Gg71TDEDPlW2r3OfnVOBfMUV32f8akzHdYApBsoF/q tZmKWvXa6reazf8Kd13aNyz8xgHvJGEnd81SABlrnw2QS1D+JbJXdiXEBz9bniYRiHhoOCLz O1FM4Wdc5pkJpP4jk3wWlQ0hSAkjclkfpKlVKiffHg3HVQ+IMsYoUoLs/YjhYJ1isSODQqIu Nfjy+XSI1bg0DNvWo4uw/vrRChH4rKq4Fv0gnRkPaoQ5AGHyyFMZH4iDfrZw0XQE9E88tGSH 44v/JnhlkvF8hEkDM+Sk7qTWiXmlZaLYGBiIlIPM0STqkAqSh4ai87XB9JFAatjsB2bnsgZ9 Tl4ncfYpTHFnEH7sL91vxFwS0mSNEDdkVPNCSDXXce7lyUqf5ZwqhnH4Y5f0YAwo45K7W9yG fMwNxAoVxWIhc+P34m/WPk9gM47LJP0FdZK0p1g5Wmx4fcOZ7nmG/+Pz/kBmTA6i4ZJAOrUY NcfZXx3dhPcbhZTO1ARTpUjgOOvgXq5eDpdwL6XjfNvvy6Pk0osif6xbLI5efTTLSlRtm+eq njL4CLSBRYCOcbE4TGE7mitlqnEmiaTtIc6TeTlrKAz3ATCroAVIDEQSniD++SYtkiVZotkA VJIpSpzlpFnoSRHSfG4BXVUukWsvBQRRt5RGO0S8xyWx+zf5APxLnIDRDNbdNtgvsY5QzUw3 3eDgtzyCDpg9raSTBq16bO8vT60fy8PIgcqfjQYRAEI593ipoAbjR/VSNtnVqmvgbXdJzb0x DybqTkksJ8ah8ULyqaT8EjOhnSnoZ2hZgQ4/BnNV2SpqAZwfpe4ZpeA4ELeq/1HKe6xR1yK7 SYsgNKV4qYIAI3lvC6QROQAGpm56vDDNyfT6XZ/Ep9k+zmz9nqLeYFL/Co4NEpvKtwDezLif AnUoww52XNIFH6jbKsyaYToDc0vlfLkDY69CqySacdSaJ9scgPB5DtpeUObw2Hqlg4rjL07P pCYN82rCB72FJha8dZ/fM9FuZdD+8z07TqMLXwn53xLCYajWUM= IronPort-HdrOrdr: A9a23:7Pso7qrcE+FekMUnz8cwyq0aV5s2LNV00zEX/kB9WHVpm5Oj+v xGzc5w6farsl0ssREb9uxo9pPwOE80hqQFhrX5Wo3SITUO2VHYVr2KiLGP/9SOIVycygcw79 YET0E6MqyKMbEYt7eF3ODbKbYdKbC8mcjH5Ns2jU0dNT2CA5sQkDuRYTzrdnGeKjM2Y6bRWK DshPau8FGbCAgqh4mAdzE4t6+pnay4qLvWJTo9QzI34giHij2lrJb8Dhijxx8bFx9f3Ls49m DBsgrhooGuqeuyxBPw33Laq80+oqqs9vJzQOi3zuQFIDTljQilIKxnRr25pTgw5M2/9Vowl9 HIghE4e+B+8WnYcG2ZqQbknyPgzDEtwXn/zkLwuwqvneXJABYBT+ZRj4NQdRXUr2ImodFHya pOm0aUrYBeAx/slDn0o4GgbWAhqmOE5V4Z1cIDhX1WVoUTLJdXsIwk5UtQVLMNBjjz5owLGP RnSOvc+PFVW1WHaG2xhBgl/PWcGlAIWjuWSEkLvcKYlxBQgXBC1kMdgPcSm38RnahNPKVs1q DhCOBFhbtORsgZYeZWH+EaW/a6DWTLXFblLH+SCU6PLtBGB1v977rMpJkl7uCjf5IFiLEono 7abV9evWkuP2rzFMy12oFR+BylehT9Yd3U8LAd23FFgMy4eFKyWhfzDGzG0vHQ7cn3O/erGM paY/ltcrjexWiHI/c84+SxYegVFZAkarxnhj8KYSP+niv1EPybigX6SoekGFO/K0dsZkrPRl 0+YRPUGOJsqmiWZ16QummlZ5qqQD2xwa5N X-Talos-CUID: =?us-ascii?q?9a23=3AU6HEamjpqmklIKv8d5g5WQNBFjJubV349XLbIWK?= =?us-ascii?q?BFl1tWq3ET1WI+Pl7up87?= X-Talos-MUID: 9a23:K71LPQtGgfr6D683TM2nqDd9F/8y/oWSDmswyK4spZXbNXFLAmLI X-IronPort-AV: E=Sophos;i="6.00,242,1681185600"; d="scan'208";a="115261419" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=TTpVjVArUsdNE9pqrYYB2Rg95Yl4LgH9lM9tg+hAKMdXkBDqvtjSCIviFFHO2HoAIs5b6kDlI/9chR3v3m/bP7sG4pavxO+4M4KrwgikkDZg+/uTi8d+pOvtE2N54TbbhVZCEbUBoFx6neHgN/KLrmAXLMrppkMZqq1k845m1/4eAfZbX4RlWkf/8zggC/BYscyR55DQNEzDF8z+uim9iwspxOb+rKRJcmhDTNtA/iEcKP79iXpnIgfy5s6ZesTyC/gWJxfCVMCfYzLJVjSWvA8ZNo4la+Zr0kATx8QN8aNw8U/aYlF67hQhdtl/hr4EYJZM369vq4G9Fi+Omqlqzg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=/p6wk7Zbj763leAtBPF/DRevuEDBQhgJIb3HopmlTlU=; b=HV6FkOPSddc4tq1w9HwqzTHayZrq9ovyCenXJ3yL8HV1DTtdhl+u1BZaZMaav9WqYhVD7979ntr++7aMN4mMtX891DcIRsuVLUxXgrC28uC+HaO99n+k0Gam4uPGRYDdbI1WByrvOsxGjMPXx68VKugSBHtWCdZnnu/6ceFL6V+CSJh5Cwg2MPTNo6oMMQOxvT/cGvLvLWcValbIUan62xfd5R+WCR7fFv6yy7eE+pvQGfzeAVPgz2DYGTY0+p7b0JVZBSMLDcNU2JCdYotqVYcRSdrDKT8SXvOTa5VOMJqJAv3tnJ6vq6/pEMcB29lYRfNKiyWhGYJHQyIhz3TtrA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=/p6wk7Zbj763leAtBPF/DRevuEDBQhgJIb3HopmlTlU=; b=SgCgeMTt3L1XVjJ45YeTQEPFIguFKF4hJkGQhF6NY3Ci9Q4cRXZ/CuPs9Mzi6APNCvRdHzgTvU9S5R4pDLcTgD6gNk20ZnmVE8DDLdCYbNTr92VRyvdwHXBzPiByvabZ4GixwHPGDHDwWjBGwAdxqAela2gVOEwE+61d70wGQl0= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: Date: Wed, 14 Jun 2023 10:21:48 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 From: Andrew Cooper Subject: Re: [PATCH] xen/evtchn: Purge ERROR_EXIT{,_DOM}() Content-Language: en-GB To: Jan Beulich , Roberto Bagnara Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , Stefano Stabellini , Volodymyr Babchuk , Bertrand Marquis , Andrew Cooper , Julien Grall , Xen-devel References: <20230613162220.3052184-1-andrew.cooper3@citrix.com> <86f357da-2fe1-7fe4-c061-d30b8e5bcbd3@srcf.net> <5dbb751d-e8d7-fa26-81f8-5a3b1b12cd65@suse.com> In-Reply-To: <5dbb751d-e8d7-fa26-81f8-5a3b1b12cd65@suse.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: LO4P123CA0629.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:294::10) To BN7PR03MB3618.namprd03.prod.outlook.com (2603:10b6:406:c3::27) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BN7PR03MB3618:EE_|DM6PR03MB4985:EE_ X-MS-Office365-Filtering-Correlation-Id: 29754565-eac3-4253-f850-08db6cb8cb47 X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 85GTjJ0IeSzA5Nr+k9WRFpTqKrgQ2UJajMVIY1+zfUU04cW2AjAIjXKhcr3J8FXsirornDwq0bbO7aYafPf+Sgis+tAJ/YskWDwVkfD38MIembvyubKdY2xDCuA3F3Dv/6ALir1cOPMoO0dc/ZJ2+EPqtR6nIdGSzQEXC8fE2YZPq1Vga56YPW9KaYu4rMEsfHmPT18Jz7/dCiOgF4p0K5ozycxkeHBshp7sAw71BGZ1Hnfd8J8Ha5X836ulTuU6aMoarplDVatMw3wqXZh3FEQiHk3/hus0O4hrkCqfMTmUCo+IUjbr2gJiWOIKEjucC5xFWBJs9nnIK2/VXhgDkCzC+sZFoiFOIzDTRf80T8Eci9aZX1P94bt1U4VeKluwGk0A10RZtlHJ6WzWytp5PaMNU91hASskgX2w0gAYWaBC9rBVuEbfsqlQzQdV6UmRU5ryQWGL6HQRuDUn1ykagJqi9PPCqA+0IxIo5hqpEfPWxqKb7NZ5WKeJ1Je2d+lm9z+eaD5YUrupAEdGZQkCp80ZO0LC7SeiPuA6vqQRVKchXDqMV6OhCLKz60LMPSHJ+U0paLNNva7Dp1o68NNZOiq3+jE5AtJEDsAB94qGSCYLGCnOBpD9NTNMm/VNeJWMlA4D8ax7+jWfGJ92+mVUcQ== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BN7PR03MB3618.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(396003)(39860400002)(366004)(376002)(346002)(136003)(451199021)(31686004)(66946007)(4326008)(36756003)(66556008)(186003)(54906003)(478600001)(110136005)(2616005)(2906002)(66476007)(8676002)(6666004)(316002)(41300700001)(31696002)(86362001)(6486002)(7416002)(6506007)(53546011)(8936002)(82960400001)(26005)(5660300002)(38100700002)(6512007)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?eVBVazlzSXFFVXBJbDZhcllpVmd4WjV4TkFIL0lVdHk1SmVtSVJNVWQ5VTJn?= =?utf-8?B?UDBZUlZMR1JBclFGSVhwclh6TWc4Wi9OdldTeEZuV2F1aHRpa0had240N2tO?= =?utf-8?B?UmJMMkxsNHZBS3RDMXh5bGIzNTJad3RwM1ljSFVLM3JhMS9RZ3hCWGFjbnhn?= =?utf-8?B?Z2FWd3p0ckRHazdKQ05Md2l5eG5jVXVJa3Z2VmdzWlkvNUwyUHdIV0FnNkJG?= =?utf-8?B?Z3kzaFRlcm1vSDBVTmJOdy9lcXZ6TU9BZWJpRmhTVjBCVDJOQVlkbWI2NHJ3?= =?utf-8?B?VUU4dm9lckowUnpXcVN4TEJNVVRiTW1rODNwRDU5eWtibWNNV0JKYXJTK1ov?= =?utf-8?B?UlVFZHlSNE9BWmlHbDhsWWt1L2s0VnJPQzFmcW45YU1vZGNTN29zaEN2WDB0?= =?utf-8?B?VXNremo5VTBDWEdaWFlCZVpQZnNXV3BoME96Q1NjWnFQNFJCdFdEcmo4cGFy?= =?utf-8?B?UTUwZnMwVnZFQjgyNm83cVJhN0VGWS9lV1ZOWlEzblNhU3RBa0dBS0QvMmZm?= =?utf-8?B?TWU3NjMwVmVLYTROV0hCOGxtb01ublA4ZW82dHNwTXNIT3YycTRaT0loQnBa?= =?utf-8?B?Z280Qjh6SzZwSThkWjREK3B3RGhYVlNQVHdUVFZ0UTJhSUxWVndhdmQ5NzNO?= =?utf-8?B?bDVhNmRqMDJ5VmJpaHNCNXVrTnEyaFFuUEtMU3lhQm5KallwRmNKWHlrY0Rq?= =?utf-8?B?VkdBL1A4WGR6dDRjOWJoM1VYckg0aEEzM0JIZlZvVGNPclRJdDAxdnI2VjZX?= =?utf-8?B?WnVlMTUrdE5jR2FDNDlkazg1VXJ5MDZhS01ra1VsK0lQY2RmLzhiLzBnNjF4?= =?utf-8?B?K2RESUhaa0djMTlCMW9iWGZuQUZSSnR4MVdLREE0ZW1XdTVwOXVyVGpJSGtM?= =?utf-8?B?bW83RXdEbVdLeHVINTVBc25Ueml6S01mVDVob0x2V1pwSmdRYUUxZkttaFE5?= =?utf-8?B?K1djQmJURURZOWFQZ0tmM0xheHFKQkdpVUJNekVRU0p4aGlYYUlyaGtDSnkx?= =?utf-8?B?eC9zUFhYdzJSb0NMcHEvc0lHM2ZjZ0RCTmQxWDIrS1J1MkFiNDJSQzQ0YWZm?= =?utf-8?B?SzJJYzA3c1dMV0l3Z2FJQUFneVBhaUVoU1E0L0xHbkhZT08xdUpYbW1qS05X?= =?utf-8?B?c0pEdFozSVVuZVFWOS9UT0RXbldZdjM1TERHL01ydEs0dEhGZGs1cUhNYXln?= =?utf-8?B?ZEdyRGoya2tWK0s0L0Z5TDJ6WW5Rb2hhTUpRMTBlbGdneUw3b0tsVWh2QUpY?= =?utf-8?B?d1ZCbDBiRlZEZlpoeHpiN2orSFdEL1pRV1A0ZmsvakZKTHhWNk5pdE4vbmEy?= =?utf-8?B?YncwcGcwMk9YempOc3ZsRHFOcWllbEZ3N0xCSHV2VXEreW5CZW1BaTlVYUV4?= =?utf-8?B?Q0FiL29sU1U5Uy9odG1vcjkzU0o5dVFsM1o0V3ozOWQ4dTZKY201R2d0K2cw?= =?utf-8?B?V0l0bmc4bElSS2pmeWdiY2Y0Z0l5RDB0UFBobHliSGdObnJPS3ZMNmh4djZN?= =?utf-8?B?dlJzR2pYZlNhLzc1TnFoNkFqZFZUOTFZeklnUFp2NzNFS2p5SWh4QVp0ck9G?= =?utf-8?B?SzBlWUxwVnJ5THF5bDdiVk9DT0hXNVFIck5PYVdLQlhhYUdlbWhtaHBQYVFo?= =?utf-8?B?cEJIODNPVmJ0M3lMeTRGRFRNOHlPK2l2UGYzcEhma1U0a1JPK0lXWHlram9I?= =?utf-8?B?dlFKdzFrT09nRTJkdFQvVFRSMXU1d2VNMzd5RUdpWC84dUQvbC9heUVQN0JU?= =?utf-8?B?WGFweWRtR1lGVkFsSUY4QnhMMEx6OWw2d1cvYzV2SW1hRWpFR1hxcnpPUGpG?= =?utf-8?B?Y1V5MFVwVzdUZzZvRllYaC9TamNIejdPMDNIOHJEcHhkdTJHMEthTWZpaE1a?= =?utf-8?B?YWhtaktBeVhPMGVzcGVnMHFwY01CdVFRTyt4a1hrT1NOa2lXdUxYNjZmTm0r?= =?utf-8?B?bDQyRk9RcVFKeXNtV09iNTFINWU5dGkwU1lKc1ovSHRPajZmVW95dlJBMlVZ?= =?utf-8?B?WmVXZzRxLy9ZbWdIMDF3b1RYNHdtQTcxMVBmRE0wZDhQbjFyUXBJWXdyRlY5?= =?utf-8?B?ZlFmTGtZNHl0Z1VkYXcxTGljSk1TYUVhU2UvODhpQ05CZDNkNHdNaHlPS3NQ?= =?utf-8?B?WDArOWxUckorcDl0aVlkK1VXSWc3aHlFTFpXTktpQUxBY3ZXbHFjdGdaWFJQ?= =?utf-8?B?T1E9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: =?utf-8?B?MjV4ckJUY0FkR295SWZXSGsra1F0VWFmWmwzYUQ5WmFEYU9wOWFvUnh6RzdZ?= =?utf-8?B?WksyMlJqY29pY21PbTUzMVlSVGkvbHpBdzJ4TGt2R21IcTV4OXZJeW95dENk?= =?utf-8?B?U1g1eXFiRzhyQlRRbHZUV3hUTWtyM0dOTHVkVk1ma3MzVjBVRmloY0xESncz?= =?utf-8?B?TDZPQWttZ05UY0hNTkRULzhwY3VING95eDZia280ZWt1TDhadk5VTnROajdi?= =?utf-8?B?am1nY3BzT2dTbyt2cWlQUW54SjNScCtuN3dqTURJZ0lOMVdrWEtnMHpJNW84?= =?utf-8?B?MkRYNWNmdUpmcGlwWWx0VGoyeldsZHRydm9oMkYwQjhqNENJaXFGaTFMbDBl?= =?utf-8?B?a3hPRGJTV3pZcWd5TUgyZ0t1MTMvdG9QNGtEaVFZZlNwbWwrdnJWa0lMK1JL?= =?utf-8?B?OWtJQmVqWXFENW9NWWhVVkc5ZllkUEVLSSt0RFBjTEdRanA1aE9LR0hkcC9v?= =?utf-8?B?RE1vcFBtSUVWVHNWbkpTdk96RkxoVXM5bDQyY0djbVkwUmZJUjdCbFZkWHZm?= =?utf-8?B?eGFYcjVrYTF2V0ZBenkxZi91T3Z6NnJwb3JUVlYwdDRmSlA2a1FKQ3NHOHlm?= =?utf-8?B?NjdWMGovZmpOaEIzYUxiakFXRnpKRldZTElWeGJDNmlkcU4xWnNaR0lJWHJs?= =?utf-8?B?czduN09wZ3Uzc1pUSkowQmd1cSswVTNNNmlDNDNvc2FrbndacFlwRXFhN1JD?= =?utf-8?B?TVArenlqVXo0MEs2RDhoUVNRbloxd3J6Nk9LUDJ5bjNFRGRIczZwVVRQTjU1?= =?utf-8?B?RlBtb3V4K3dhempwTHd3K2JidTdhNis1djMxWUhqU0I2NzRwNmFGS1V6WFIx?= =?utf-8?B?aEZWcytpQ3FTbmhQVzdVUzd4bGVibzBhalFxaHpLSEM5KzlObmlkeDZ5WDB2?= =?utf-8?B?VnQ1UXV4QktTbFdNNGZndTZlMXF2cmpoV3o3V0R1MURZbWFPRzhUc1VOREhk?= =?utf-8?B?YXRmWUtUd2Q5ZUV1amxyeTl0dENKdVo4bm9qektqbVNNWEJ6MW1VR1RLNXIx?= =?utf-8?B?ZVhGRktQdXRzQS9HOE5SREJTYk1xL2h1VGIySVZHRk9oM0pnMHBiTFBVRmMy?= =?utf-8?B?UGVuMC9nTWIwOVlueHNGV2xOWWY0Ly8wRGJyOUxQMU11a2VtVXRBdjQzdzBu?= =?utf-8?B?MDcyMzQwaGdPWFpka3VZNFZqV2xzTXNhWGFPQlpSblJLOWZXSVo4QUN1NFRJ?= =?utf-8?B?a0dPV3BORlZGaXB6eGFJZDhCa05IYy9xT1pZV0ZsamRIR3p2OWFna050TS9N?= =?utf-8?B?STZ1QjliYlY2Y0JOV0N5czJvOHRxTHJVWlZ0VXk2MEVEbTlrUT09?= X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 29754565-eac3-4253-f850-08db6cb8cb47 X-MS-Exchange-CrossTenant-AuthSource: BN7PR03MB3618.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Jun 2023 09:21:54.5304 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: hkK1eWHVTsCYM8lEvdGZAnfwZBL0ddPPwJkQ18CIttAwRv7MC3wUZSrDhoA5RJvC7Xz/1Ke6unL5rre/LH1y/w3RUw2HRaDq1SyVCedk9jU= X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR03MB4985 On 14/06/2023 7:52 am, Jan Beulich wrote: > On 13.06.2023 21:47, Roberto Bagnara wrote: >> On 13/06/23 19:45, Andrew Cooper wrote: >>> On 13/06/2023 6:39 pm, Julien Grall wrote: >>>> Hi, >>>> >>>> On 13/06/2023 17:22, Andrew Cooper wrote: >>>>> These are disliked specifically by MISRA, but they also interfere >>>>> with code >>>> Please explicitly name the rule. >>> I can't remember it off the top of my head. >>> >>> Stefano/Bertrand? >> Rule 2.1 > That's about unreachable code, but inside the constructs there's nothing > that's unreachable afaics. Plus expanding "manually" them wouldn't change > reachability, would it? I bet it's complaining about the while() after the goto. I can see why things end up caring - because this violation can only be spotted in the fully-preprocessed source where the macro-ness has gone away, and *then* applying blanket rules. Which comes back to the original point I made on the call yesterday that do{}while(0) correctness for macros is far more important than some, honestly suspect, claim about the resulting code being somehow "better" without the macro safety. ~Andrew From xen-devel-bounces@lists.xenproject.org Wed Jun 14 09:30:34 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 09:30:34 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548620.856628 (Exim 4.92) (envelope-from ) id 1q9Mpc-0003C2-LW; Wed, 14 Jun 2023 09:30:24 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548620.856628; Wed, 14 Jun 2023 09:30:24 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9Mpc-0003Bv-Ie; Wed, 14 Jun 2023 09:30:24 +0000 Received: by outflank-mailman (input) for mailman id 548620; Wed, 14 Jun 2023 09:30:22 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9Mpa-0003Bp-JF for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 09:30:22 +0000 Received: from mail-yb1-f179.google.com (mail-yb1-f179.google.com [209.85.219.179]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 1450e944-0a96-11ee-8611-37d641c3527e; Wed, 14 Jun 2023 11:30:20 +0200 (CEST) Received: by mail-yb1-f179.google.com with SMTP id 3f1490d57ef6-bc4ed01b5d4so407410276.1 for ; Wed, 14 Jun 2023 02:30:20 -0700 (PDT) Received: from mail-yw1-f174.google.com (mail-yw1-f174.google.com. [209.85.128.174]) by smtp.gmail.com with ESMTPSA id q15-20020a258e8f000000b00ba773472647sm3451397ybl.19.2023.06.14.02.30.17 for (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Wed, 14 Jun 2023 02:30:17 -0700 (PDT) Received: by mail-yw1-f174.google.com with SMTP id 00721157ae682-56d4f50427cso5150067b3.3 for ; Wed, 14 Jun 2023 02:30:17 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 1450e944-0a96-11ee-8611-37d641c3527e X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686735019; x=1689327019; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=sUg4qrNPX3u1L7teHyX+L+B+2nv6pGpY1jj7jQmio6E=; b=BqmBjV4P7uhmAWwiJzg8A9eLUuUg+ccwqU+GQt+YqQUmXN/sMyeHVTFxibN5+3G98m 2SWGsHwbgzkRe+8TuEqYbvbdbZisSQLThA41UvqIdd1ToDzBFWTg4+YHcEhe0ZnSQS6W 4KOZvUFxyXblH508j38ovflHq266ZcHz9VqLVhms7j9wL0VmSQenhEwNEzMA/7AI6SHw BdwV0Yr3BDYgUVPKHuLXGjh9iIRB7HDsKst6RtOLUGJ8WPuVTAnSZwBHMO1hWtGBCYrj FY9OoDv27clYd7/0lqdsfBjT8kuXzY8b5nTdc3Vt/g3IC7ezQ8SMTTBmSa1aBNz8xJnQ hExA== X-Gm-Message-State: AC+VfDxH+tyaasDc6SfNt7BvNmwOQmgVkQYzVfjgroWAn+775ke2WhUy +bIRBEwzhbcipoIdl/x3Te6F0dckYWyjAw== X-Google-Smtp-Source: ACHHUZ6iCcVUCmAseLAwQ3d5lJpcX0135fVnxgDN/iDwZN8ODX0vbuNnuIg3P45JWTMjVsFRJZjcTQ== X-Received: by 2002:a25:b4c:0:b0:bd7:4ee7:887b with SMTP id 73-20020a250b4c000000b00bd74ee7887bmr1323065ybl.37.1686735018989; Wed, 14 Jun 2023 02:30:18 -0700 (PDT) X-Received: by 2002:a25:6b47:0:b0:ba8:2009:ccbb with SMTP id o7-20020a256b47000000b00ba82009ccbbmr1338474ybm.46.1686735017346; Wed, 14 Jun 2023 02:30:17 -0700 (PDT) MIME-Version: 1.0 References: <20230612210423.18611-1-vishal.moola@gmail.com> <20230612210423.18611-28-vishal.moola@gmail.com> In-Reply-To: From: Geert Uytterhoeven Date: Wed, 14 Jun 2023 11:30:05 +0200 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: [PATCH v4 27/34] nios2: Convert __pte_free_tlb() to use ptdescs To: Dinh Nguyen Cc: "Vishal Moola (Oracle)" , Andrew Morton , Matthew Wilcox , linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Hi Dinh, On Wed, Jun 14, 2023 at 12:17=E2=80=AFAM Dinh Nguyen = wrote: > On 6/12/23 16:04, Vishal Moola (Oracle) wrote: > > Part of the conversions to replace pgtable constructor/destructors with > > ptdesc equivalents. > > > > Signed-off-by: Vishal Moola (Oracle) > > --- > > arch/nios2/include/asm/pgalloc.h | 8 ++++---- > > 1 file changed, 4 insertions(+), 4 deletions(-) > > > > diff --git a/arch/nios2/include/asm/pgalloc.h b/arch/nios2/include/asm/= pgalloc.h > > index ecd1657bb2ce..ce6bb8e74271 100644 > > --- a/arch/nios2/include/asm/pgalloc.h > > +++ b/arch/nios2/include/asm/pgalloc.h > > @@ -28,10 +28,10 @@ static inline void pmd_populate(struct mm_struct *m= m, pmd_t *pmd, > > > > extern pgd_t *pgd_alloc(struct mm_struct *mm); > > > > -#define __pte_free_tlb(tlb, pte, addr) \ > > - do { \ > > - pgtable_pte_page_dtor(pte); \ > > - tlb_remove_page((tlb), (pte)); \ > > +#define __pte_free_tlb(tlb, pte, addr) = \ > > + do { \ > > + pagetable_pte_dtor(page_ptdesc(pte)); \ > > + tlb_remove_page_ptdesc((tlb), (page_ptdesc(pte))); \ > > } while (0) > > > > #endif /* _ASM_NIOS2_PGALLOC_H */ > > Applied! I don't think you can just apply this patch, as the new functions were only introduced in [PATCH v4 05/34] of this series. Gr{oetje,eeting}s, Geert --=20 Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k= .org In personal conversations with technical people, I call myself a hacker. Bu= t when I'm talking to journalists I just say "programmer" or something like t= hat. -- Linus Torvalds From xen-devel-bounces@lists.xenproject.org Wed Jun 14 09:37:09 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 09:37:09 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548625.856638 (Exim 4.92) (envelope-from ) id 1q9Mvy-0003oN-B0; Wed, 14 Jun 2023 09:36:58 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548625.856638; Wed, 14 Jun 2023 09:36:58 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9Mvy-0003oG-7b; Wed, 14 Jun 2023 09:36:58 +0000 Received: by outflank-mailman (input) for mailman id 548625; Wed, 14 Jun 2023 09:36:57 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9Mvw-0003oA-U6 for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 09:36:57 +0000 Received: from EUR01-DB5-obe.outbound.protection.outlook.com (mail-db5eur01on0612.outbound.protection.outlook.com [2a01:111:f400:fe02::612]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 004433d2-0a97-11ee-b232-6b7b168915f2; Wed, 14 Jun 2023 11:36:56 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by AM9PR04MB8890.eurprd04.prod.outlook.com (2603:10a6:20b:409::24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.29; Wed, 14 Jun 2023 09:36:54 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.039; Wed, 14 Jun 2023 09:36:53 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 004433d2-0a97-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=mTijVk/C/W5NBP8gb/Z+NqcnTzAE7xLGcKCkO022sBD8mb2gpxANvPcEdtAcRMspvB6b2+/mfHEx5AQ2cT2w0SYe1w4W2jXqRTA+sq/wrpa2A0sUm3N0urmGg3KEWntjVn1ATD7Ei5x9LmC6pbniGHZzjjJQPOVCcR+ba+YmofxE/WbqPQrLJtM8YfpU8eM89ugOVG1dS7qQCN61Gs7uaO9x9Dd7cxcYHB+VIoWRjtqWerqk6VdUyE1oW1xXtSvabnP9XVMdU/UANAvx6jULgtVSQWV6k3/BZm4Sfa4PFt+PNwiVEoo1BsdCHNWFmZ6N/m+BRDtGu0wNTOfIk71fkg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=mUi/OHTpdEXbk/sOXVFrArakKFaFVknHrqKvnCzPPNc=; b=DLTAGs4oU9hwYk9P8E5f+KeMbWasnrMeGAOR9manTCzK3Gg7ehC/abjixFVPi6Ckoq/gyTBBU54UOm8KX8X27YnesJxc65qmotx5lzNtYFUcGRvYmuehq9D/ANIipRPyl64i692ou7KIFEG/37Cbc88tm2x2hJ5nSZukvANazKXEbWLpNejdS7aibwV0HlTLXeXe1CCO+TYYlEKY04Al8yUGhdwOhaybYbvwT7267XYYqERUoY/ztq2jnr/pDKnzZe1ilH3HHfqcGqvn90+5G0rJxJUi4uDI10JAe6ZVd3XfOMPd606R4cUJ2ZawGYFpbcS0AUEc1mhfr5T9rXP4Dg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=mUi/OHTpdEXbk/sOXVFrArakKFaFVknHrqKvnCzPPNc=; b=n6JqU0gguo+89LTi7iNIjB+K87YN3B+3ysXO7ImFtTfEN+wR0NgCSiHJ+4Yq/CAnl7wc4QjuUqpW96myLpDkMiTbnpaHOVI6v3BTMtAMBnfPys+2/d4h55er1o8lsEHi9qxxzTLtqVk/6koUqThD7Re/zvfHAkie94OsekuBJdQs1WkdUm22p+2XYhYp9jHORxwNvKrLPwmJEkate6iMKtZyjeZ+tcXXnzXjZi67ycHLGaLLFqXiofux26cwfnjvhx4/DUB5OMji7MC+H2mRffr1cTerKRgKVd6o+0uaBWWWI/HmDExSmMMn1ln4kXjDpYcHk3BhevrremnmUQHN7g== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <9e7036be-4379-6ac1-bd71-d6d122f92966@suse.com> Date: Wed, 14 Jun 2023 11:36:51 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH] xen/evtchn: Purge ERROR_EXIT{,_DOM}() Content-Language: en-US To: Andrew Cooper , Roberto Bagnara Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , Stefano Stabellini , Volodymyr Babchuk , Bertrand Marquis , Andrew Cooper , Julien Grall , Xen-devel References: <20230613162220.3052184-1-andrew.cooper3@citrix.com> <86f357da-2fe1-7fe4-c061-d30b8e5bcbd3@srcf.net> <5dbb751d-e8d7-fa26-81f8-5a3b1b12cd65@suse.com> From: Jan Beulich In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR3P281CA0186.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:a4::13) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|AM9PR04MB8890:EE_ X-MS-Office365-Filtering-Correlation-Id: 6d904d4e-2705-45fb-cbce-08db6cbae354 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: k4OvjRcnO/iyLXSp/xT0q3g4o6TT6/RrG79ySDxkvR7FBwpuPVI3l6K54gIxFweQucdHQV75iBJaL2T5rnqGL4zydcLUPGlJRYUJHBEQxb1SanYUTk0a2o2xim9bkZ7UdbHzLP5v0cvvFFyflhcYAnJhgbCCGVRXIZK9ZrSRIvyPUzryliNlgdv0O96o82MlllL93QWrt9jZHC+9nTEIBxXBlF608OdOquKBBuYSS+/XbuKAQjslVNpCF5bw4kDs+WGi+m7rvGSsck4FrMOVZvmMJgCAwc+9Ewn7a2i4YXiydh6P+AENcm364e3rSJbzInCrFuZnJ5WAYYowdQ2tREJvqjmb71xlHCZZuTEqvqfGUShe3ZhGIVMEYR/wnX0WXTKn/ZNKEqDC3HKrrIfBw+8mg7W5ueAlGRyh5XJqvtSV5wlV3kLNGkICWNRWpmAVQhvK4F4jFuZpltDeJVuc8WOFTLwkamzfoCIRTFFZhAIs6twQDMRUCll1664tIYEHa+AA5+/1fr+nq0vaBnUA3BPazwQgH4g3Ke18s0kT8GDXt/QArvfwCVJt7j7Ykr8bo/wPGP8wc5Bok9a1uha5Ib1V58CsS3ADgN831YsPLKiQcBZuhh8xnKinr595M0S4jthIzGYxXH+sgaBBJHSObw== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(396003)(39860400002)(366004)(376002)(346002)(136003)(451199021)(31686004)(66946007)(4326008)(36756003)(66556008)(186003)(54906003)(478600001)(110136005)(2616005)(2906002)(66476007)(8676002)(316002)(41300700001)(31696002)(86362001)(6486002)(7416002)(6506007)(53546011)(8936002)(26005)(5660300002)(38100700002)(6512007)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?YUVCSG9kM3V2ZC83UE56cktxdms3YlM1VWhNdTVuUEk1cmJ2aUdTQ2JXdnVT?= =?utf-8?B?cWNjSFZ4dnNwajVMK0xMcG8rNmQxczdXbjNNYUJ3aDFZMHBWY2JRM0hTOU4v?= =?utf-8?B?c1dWVFhjcXFhMEVFRzA0RnhjL3hudW1RWXhnaXBGaXJkRnhuR3F3R0NWczE1?= =?utf-8?B?TlhHTE9MWDlxVlJKaVg3UDlPL0JLcWgxZHVsT1dpNVNGcUwxY2xtMERoN2tz?= =?utf-8?B?eWRQMXV0YVlxeFVZUGhhZmdETWtBSW1sRjBacFlPNEczSzNrOXRIQlQrcWpK?= =?utf-8?B?TW1DM2dnbFZzN1lPRHkvZm5sT0h4L2NPYzBoMVM4L3h4cmNtUWFCWHJ1NnVr?= =?utf-8?B?U3IzRHdXWm8weFhpYXBRSnpybDFoSldqZkF3TlhxRStVbW96eTRnK0krV2R1?= =?utf-8?B?WHhDRnJuY2w2VmRMR3JWNUdWd3JEZGRocTlEcTFaRzNQSnVVcklKUXlJSGh2?= =?utf-8?B?OTJ3Z016akFuMy9GMnB6dFZBbzdsb3haL2RQN2xiUitkdVo2UjJUNXNUcWJG?= =?utf-8?B?cXdWZzdIQXByVHZSRVpPeVlnOXlJZllFeTZpVVAzWHZmM1pUUS9pTjZBVUdR?= =?utf-8?B?QTF5S1RhNWtCalYwT1BMK3hYTGEzNnVLMmc1TUYwT1o5OXg2MVRIdElEckMz?= =?utf-8?B?S3RJSUVtb3B5enN3V2t1OFYvT2dKaGFaUXF4M0ZVeXpHT2pTTE5OeUFNSklP?= =?utf-8?B?eWVNL2Rtc0ExeXJsSWRxQ283UHNGbUJVQ1RIUmY5eG5wNElBaGxab2lySGNo?= =?utf-8?B?S1cyeStTODFOemZ4MEg3ZTVWZVlJckdKUXp6M3l3VXd5UlV5OTBTSjVoVnF6?= =?utf-8?B?Y3pCN1V6NHo3d25UWU9YWFU2ZVNGdkxjaVUxMnJOLzI5TlJkKzM3Q29xUVBO?= =?utf-8?B?NTByMXJWT05IaldrVVNPc0dvSllxSTRsR0ZBRTZkVzZWb0ZubEQ5WGx3OWVk?= =?utf-8?B?aEI2Z0xyczJIeUgvM2VNRCs0UXpDOHNwSy9iTVVyVmNDYUFoRCtNSEMrUVpL?= =?utf-8?B?ZkJyY1prQUJXc1hUNmpCNEovcnpLay92YXZWVVRzUXN4NU9oWkJvL1FlK0pp?= =?utf-8?B?NEdLYVJWaFNUQk1ZaEZkVzM2Nm1tcFdKRFo4dURpS2dJMkdEeFZsU1Y4NFQx?= =?utf-8?B?K3JFMG14QW1leXh0Qnc3aW16UWFRbXhUY0JHQXhYVy9IMXowWU5jK2J6SURD?= =?utf-8?B?cjVXUTRTaHljY0ZXOFhna0ZyM2dLejhreGNoU3IzQytzajZZN2FiZWp3WjhW?= =?utf-8?B?VHAvcTJxVWpUaTVRRGNFZzNwVVVzU25GOTBpM2ltRHYydDI1NnhFWkgrYjdm?= =?utf-8?B?K0ltRXYwQnVZYW1RTEovSnhuTDl6MzY5a3M2RVpXWmZPTFdQUmFoRXFRNXZE?= =?utf-8?B?ZTNoUFJPdXZCUjdpVXV2RmVSNDlLcHE4aGRucmdIVlZ5eG9XcWx3Sldyb0V0?= =?utf-8?B?RXZGNGpDRnZxNzZEbW44R215eHdsbGo4STdoVXZCWTFpTUFtWXMwc3JSZG9a?= =?utf-8?B?bWhKQWpqVFNoVFpwVnphUFBIOWR6MVBpdFZSemhmYzFxVUNmaEkyWCt5WmVR?= =?utf-8?B?VDJRTnIyenUxeWk3Y3NhQ01SekJCaXlXWlphWWtrbUk4bFJlK0pZc1pRNmZx?= =?utf-8?B?U1J4M1ZaVGJYN2V0bVVDQlpOVFAwR3BseUVEZ2kzQnRZSG40dWI0REJpZXJT?= =?utf-8?B?Znp0dzFHQ2RHM3dTS0FQVG5lc3BobkVqc3pxcCtmNVhqK1JmSVJ6TVV3bjFm?= =?utf-8?B?akRSeWR5aHdyMTlxbEZaQlVmTkEvUFZXMEhEYWZIbGJLTncxYXFvRU05OHRx?= =?utf-8?B?UXdYTnpEVVZoZWlHSTUxZjNVOHF5OExkWmF0YkNTQXBZekZ2ckdHV28yVlFT?= =?utf-8?B?WGlmNS9WbmZKWWlGbXE2djMrY3k3WUNEZVZlSWlVTzRlb3lPRzBxdjdSTzZu?= =?utf-8?B?ZFdnT05tU0lnQkZ6V3BBS25jenhBdi9sMzhPaW5SNnViQTNWZy9DOHlPckRF?= =?utf-8?B?K0ZxVW9Lem5ubUlJZW1ZTngyVEorbGdBazFJVUFGRlVCS1dCMnJkeHA0Wkpu?= =?utf-8?B?SWRyckw1UUNGaEc0dUJtWi9KdjNOTDJIMjJuSlBtU05BemRtdlI5amx3Nkxs?= =?utf-8?Q?0FV7pw7U4hmcTXHedxomqyHUH?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 6d904d4e-2705-45fb-cbce-08db6cbae354 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Jun 2023 09:36:53.8367 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: V/zIsLlkaC4lzBgznrJJ6kFKO6+HtNNmSvX7euDg+B95zxqsXUP6C988fCVQU9Unm5InrN8i9Y7NIqdzHfz3sg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR04MB8890 On 14.06.2023 11:21, Andrew Cooper wrote: > On 14/06/2023 7:52 am, Jan Beulich wrote: >> On 13.06.2023 21:47, Roberto Bagnara wrote: >>> On 13/06/23 19:45, Andrew Cooper wrote: >>>> On 13/06/2023 6:39 pm, Julien Grall wrote: >>>>> Hi, >>>>> >>>>> On 13/06/2023 17:22, Andrew Cooper wrote: >>>>>> These are disliked specifically by MISRA, but they also interfere >>>>>> with code >>>>> Please explicitly name the rule. >>>> I can't remember it off the top of my head. >>>> >>>> Stefano/Bertrand? >>> Rule 2.1 >> That's about unreachable code, but inside the constructs there's nothing >> that's unreachable afaics. Plus expanding "manually" them wouldn't change >> reachability, would it? > > I bet it's complaining about the while() after the goto. > > I can see why things end up caring - because this violation can only be > spotted in the fully-preprocessed source where the macro-ness has gone > away, and *then* applying blanket rules. Hmm, perhaps. > Which comes back to the original point I made on the call yesterday that > do{}while(0) correctness for macros is far more important than some, > honestly suspect, claim about the resulting code being somehow "better" > without the macro safety. Even further I would claim that the while(0) part of the construct isn't unreachable code simply because it doesn't result in any code being generated. But of course "code" here may mean "source code", not the resulting binary representation. Jan From xen-devel-bounces@lists.xenproject.org Wed Jun 14 09:42:18 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 09:42:18 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548631.856648 (Exim 4.92) (envelope-from ) id 1q9N0s-0005FY-T6; Wed, 14 Jun 2023 09:42:02 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548631.856648; Wed, 14 Jun 2023 09:42:02 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9N0s-0005FR-Q7; Wed, 14 Jun 2023 09:42:02 +0000 Received: by outflank-mailman (input) for mailman id 548631; Wed, 14 Jun 2023 09:42:01 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9N0r-0005FL-Qm for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 09:42:01 +0000 Received: from NAM10-BN7-obe.outbound.protection.outlook.com (mail-bn7nam10on20603.outbound.protection.outlook.com [2a01:111:f400:7e8a::603]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id b55d72bc-0a97-11ee-b232-6b7b168915f2; Wed, 14 Jun 2023 11:42:00 +0200 (CEST) Received: from BN8PR03CA0020.namprd03.prod.outlook.com (2603:10b6:408:94::33) by IA1PR12MB8238.namprd12.prod.outlook.com (2603:10b6:208:3f9::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.37; Wed, 14 Jun 2023 09:41:55 +0000 Received: from BN8NAM11FT047.eop-nam11.prod.protection.outlook.com (2603:10b6:408:94:cafe::f9) by BN8PR03CA0020.outlook.office365.com (2603:10b6:408:94::33) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.37 via Frontend Transport; Wed, 14 Jun 2023 09:41:55 +0000 Received: from SATLEXMB04.amd.com (165.204.84.17) by BN8NAM11FT047.mail.protection.outlook.com (10.13.177.220) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6500.25 via Frontend Transport; Wed, 14 Jun 2023 09:41:55 +0000 Received: from SATLEXMB04.amd.com (10.181.40.145) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Wed, 14 Jun 2023 04:41:53 -0500 Received: from XIR-MICHALO-L1.xilinx.com (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server id 15.1.2507.23 via Frontend Transport; Wed, 14 Jun 2023 04:41:52 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: b55d72bc-0a97-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=ilboJ2YFvkF02hZHtohrwZ3K+7tD645Fwt5H5ifJmA/91Sa1+DjlXG8K68eRQy7e24IYXNNTHXO9dE5AnbDWRu7XHywXgzjnKh0owJfNXRo3f3IPxuBEXzmYT8gDiADlyHlyFegzr2hteNkokxGtWbd/DaGgIeCWyN6M9Tf+Q8mOBr+5d9o8hhEENifneYN5H7M+A1YIe5hpSdKqX0Yl3k4Iq64GdeD/gklBLsrpFzG/2JD+hz6H/E/LJUX6meE+07zguqjaJQg0L+ukoxDe4OZ3WHLMFb5srGJLgPJEyexNUKdPnuXtPdC1Kq3FB30UP5GC3myc0HWm3SCHTOZDVg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=Crafoo9/Nm8L4EYypZqARlLJBQsdUK+S4879SL0mCl4=; b=ogp5EAUNF5Bd9nqB0nMjQz+UNX/N20hLahiFu3fDR+G0v3uoht9LbZgJd9l+aMHFofb+maYJ6pjpFzuw5gmUAQp4FQo3wV5FgmdhMW0iyDOrjdsH8HeAd8puVJsycOLUEpOvPAB3EkTTE8EbLUy76Pjpa0VavfICwjXDnx7Owe5i+l6kwp1fSA5BMf8Ej1ZaToE9H37mrZtmBVuomXECZjY/IZn+azOCQL3RUKVaUxuRHhKJjeKqpP1TtxpG2ySmThOppHkeTghLQyBOyif2L3w3mwUpSg3nmvIIiH++Et+pU83fmvEPYSOE+phctnGFQO9dLK9Ru4PuPx3eC6fzfQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Crafoo9/Nm8L4EYypZqARlLJBQsdUK+S4879SL0mCl4=; b=w8Alfb5dObF5LqeHFJzNjTHwAEYOCSl7DB8tOaeY5D9TJ5eaBgSPGsowuEgZqEJUHivQhGhjn2nd9OCr39tlGVm6v9TqBH1PrPb+ze4vY4ewYXmH1QvGLKhWxHDj65XqbgDIFnmI4giwpwVuEc1ZWlCoS1SM9l9TQNBU1R2ZYRg= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C From: Michal Orzel To: CC: Michal Orzel , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk Subject: [PATCH] xen/arm: Remove stray semicolon at VREG_REG_HELPERS/TLB_HELPER* callers Date: Wed, 14 Jun 2023 11:41:44 +0200 Message-ID: <20230614094144.9533-1-michal.orzel@amd.com> X-Mailer: git-send-email 2.25.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BN8NAM11FT047:EE_|IA1PR12MB8238:EE_ X-MS-Office365-Filtering-Correlation-Id: fede023e-63ac-4851-3bd9-08db6cbb9735 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: B6H5y5RmNpqTTe06B2zF9I+RUvLJzj+ZE3m7kiCRXoz5L0nheJnF0uLbIQmVPBP1aJxOEnzIKXgj/4qeu+terq3K59UIiDOz+PqARCIcnY5VBQyS/1VSF6rAFuKI+NjVKTU0qEoVpGflOpLUCkN38+I64d9VuZ+wHcEB31zjdrOyPZVBUNxaOUKHTsVH3tVCqBW8T+h8DX/AF08bbqyrjSYITQC2UUGiqTchhBnEA2tIWhG7aUIXADwPrp6QDOZxX9nlqlGyV6lyrusSTeR1HZMObA0Lt8hvhtpvQL3MlyZdOffZnTiNCPUTFwV7EfkFhUDSlfZXPPxpXNlsscVbwI1uQY4+Ut2eWtDaaevuAYIyWTES8a62xTAQSvpkrj6VXsnqmI1XWcXGOmyUTMHTpi/zJMyLoRn48VAN8hk+7d4IE5WbGGRvSqqvgnuLokVUk2yheCQdSpMFtdQ1ZTNlOosJyex6+mFKdSbGo2MzdZEwmpTz8wdedoTYt/MCJHdheOJNdLJdE9j0pwx6UEfsPckEhIBUS/U8dZspJ3pCrVZhHK3nbKoDHhFSAVNbBMT96chp6tReCD+GmEILrHc9Qc5XfJZA73PzggI1/Lo6fXJYUVM6Y5/3Y9eYaapHB+V1bGtKbENeEifscbWOm1DqROXw0oodvQMQKQ6HoZjOVT3mbHEoa2etEejg/TBXklu6pA9hCzbuPR/1oaPUY3cNY0e10g8CrMiTgkor9HFAT3jtL2TTxLpFfhd+cbiPKSCmGgGujOEaKdbEW2wpQupzsBB0pwz+NG3Z2NohPRMqdTA= X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(396003)(376002)(39860400002)(346002)(136003)(451199021)(36840700001)(40470700004)(46966006)(41300700001)(40460700003)(8936002)(8676002)(6666004)(82310400005)(478600001)(82740400003)(81166007)(356005)(2616005)(83380400001)(426003)(336012)(26005)(186003)(1076003)(36860700001)(966005)(47076005)(54906003)(86362001)(36756003)(316002)(40480700001)(4326008)(6916009)(70206006)(70586007)(44832011)(5660300002)(2906002)(36900700001)(473944003);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Jun 2023 09:41:55.4120 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: fede023e-63ac-4851-3bd9-08db6cbb9735 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com] X-MS-Exchange-CrossTenant-AuthSource: BN8NAM11FT047.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: IA1PR12MB8238 This is inconsistent with the rest of the code where macros are used to define functions, as it results in an empty declaration (i.e. semicolon with nothing before it) after function definition. This is also not allowed by C99. Take the opportunity to undefine TLB_HELPER* macros after last use. Signed-off-by: Michal Orzel --- Discussion: https://lore.kernel.org/xen-devel/17C59D5C-795E-4591-A7C9-A4C5179BF373@arm.com/ Other empty declarations appear at callers of TYPE_SAFE and Linux module macros like EXPORT_SYMBOL for which we need some sort of agreement. --- xen/arch/arm/include/asm/arm32/flushtlb.h | 12 +++++++----- xen/arch/arm/include/asm/arm64/flushtlb.h | 17 ++++++++++------- xen/arch/arm/include/asm/vreg.h | 4 ++-- 3 files changed, 19 insertions(+), 14 deletions(-) diff --git a/xen/arch/arm/include/asm/arm32/flushtlb.h b/xen/arch/arm/include/asm/arm32/flushtlb.h index 7ae6a12f8155..22ee3b317b4d 100644 --- a/xen/arch/arm/include/asm/arm32/flushtlb.h +++ b/xen/arch/arm/include/asm/arm32/flushtlb.h @@ -29,19 +29,21 @@ static inline void name(void) \ } /* Flush local TLBs, current VMID only */ -TLB_HELPER(flush_guest_tlb_local, TLBIALL, nsh); +TLB_HELPER(flush_guest_tlb_local, TLBIALL, nsh) /* Flush inner shareable TLBs, current VMID only */ -TLB_HELPER(flush_guest_tlb, TLBIALLIS, ish); +TLB_HELPER(flush_guest_tlb, TLBIALLIS, ish) /* Flush local TLBs, all VMIDs, non-hypervisor mode */ -TLB_HELPER(flush_all_guests_tlb_local, TLBIALLNSNH, nsh); +TLB_HELPER(flush_all_guests_tlb_local, TLBIALLNSNH, nsh) /* Flush innershareable TLBs, all VMIDs, non-hypervisor mode */ -TLB_HELPER(flush_all_guests_tlb, TLBIALLNSNHIS, ish); +TLB_HELPER(flush_all_guests_tlb, TLBIALLNSNHIS, ish) /* Flush all hypervisor mappings from the TLB of the local processor. */ -TLB_HELPER(flush_xen_tlb_local, TLBIALLH, nsh); +TLB_HELPER(flush_xen_tlb_local, TLBIALLH, nsh) + +#undef TLB_HELPER /* Flush TLB of local processor for address va. */ static inline void __flush_xen_tlb_one_local(vaddr_t va) diff --git a/xen/arch/arm/include/asm/arm64/flushtlb.h b/xen/arch/arm/include/asm/arm64/flushtlb.h index 3a9092b814a9..56c6fc763b56 100644 --- a/xen/arch/arm/include/asm/arm64/flushtlb.h +++ b/xen/arch/arm/include/asm/arm64/flushtlb.h @@ -67,25 +67,28 @@ static inline void name(vaddr_t va) \ } /* Flush local TLBs, current VMID only. */ -TLB_HELPER(flush_guest_tlb_local, vmalls12e1, nsh); +TLB_HELPER(flush_guest_tlb_local, vmalls12e1, nsh) /* Flush innershareable TLBs, current VMID only */ -TLB_HELPER(flush_guest_tlb, vmalls12e1is, ish); +TLB_HELPER(flush_guest_tlb, vmalls12e1is, ish) /* Flush local TLBs, all VMIDs, non-hypervisor mode */ -TLB_HELPER(flush_all_guests_tlb_local, alle1, nsh); +TLB_HELPER(flush_all_guests_tlb_local, alle1, nsh) /* Flush innershareable TLBs, all VMIDs, non-hypervisor mode */ -TLB_HELPER(flush_all_guests_tlb, alle1is, ish); +TLB_HELPER(flush_all_guests_tlb, alle1is, ish) /* Flush all hypervisor mappings from the TLB of the local processor. */ -TLB_HELPER(flush_xen_tlb_local, alle2, nsh); +TLB_HELPER(flush_xen_tlb_local, alle2, nsh) /* Flush TLB of local processor for address va. */ -TLB_HELPER_VA(__flush_xen_tlb_one_local, vae2); +TLB_HELPER_VA(__flush_xen_tlb_one_local, vae2) /* Flush TLB of all processors in the inner-shareable domain for address va. */ -TLB_HELPER_VA(__flush_xen_tlb_one, vae2is); +TLB_HELPER_VA(__flush_xen_tlb_one, vae2is) + +#undef TLB_HELPER +#undef TLB_HELPER_VA #endif /* __ASM_ARM_ARM64_FLUSHTLB_H__ */ /* diff --git a/xen/arch/arm/include/asm/vreg.h b/xen/arch/arm/include/asm/vreg.h index d92450017bc4..bf945eebbde4 100644 --- a/xen/arch/arm/include/asm/vreg.h +++ b/xen/arch/arm/include/asm/vreg.h @@ -140,8 +140,8 @@ static inline void vreg_reg##sz##_clearbits(uint##sz##_t *reg, \ *reg &= ~(((uint##sz##_t)bits & mask) << shift); \ } -VREG_REG_HELPERS(64, 0x7); -VREG_REG_HELPERS(32, 0x3); +VREG_REG_HELPERS(64, 0x7) +VREG_REG_HELPERS(32, 0x3) #undef VREG_REG_HELPERS base-commit: 2f69ef96801f0d2b9646abf6396e60f99c56e3a0 -- 2.25.1 From xen-devel-bounces@lists.xenproject.org Wed Jun 14 09:48:16 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 09:48:16 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548636.856658 (Exim 4.92) (envelope-from ) id 1q9N6f-0005rO-Gq; Wed, 14 Jun 2023 09:48:01 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548636.856658; Wed, 14 Jun 2023 09:48:01 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9N6f-0005rH-Dc; Wed, 14 Jun 2023 09:48:01 +0000 Received: by outflank-mailman (input) for mailman id 548636; Wed, 14 Jun 2023 09:48:00 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9N6d-0005rB-Vs for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 09:48:00 +0000 Received: from mail-lf1-x134.google.com (mail-lf1-x134.google.com [2a00:1450:4864:20::134]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 89eaceda-0a98-11ee-8611-37d641c3527e; Wed, 14 Jun 2023 11:47:56 +0200 (CEST) Received: by mail-lf1-x134.google.com with SMTP id 2adb3069b0e04-4f611ac39c5so8568091e87.2 for ; Wed, 14 Jun 2023 02:47:56 -0700 (PDT) Received: from [192.168.202.197] ([94.75.70.14]) by smtp.gmail.com with ESMTPSA id j14-20020a19f50e000000b004f645d15150sm2035536lfb.277.2023.06.14.02.47.54 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 14 Jun 2023 02:47:54 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 89eaceda-0a98-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686736075; x=1689328075; h=mime-version:user-agent:content-transfer-encoding:references :in-reply-to:date:cc:to:from:subject:message-id:from:to:cc:subject :date:message-id:reply-to; bh=SDYhrbqb109v9AIQIXTNEd18fXk/huAC/WHDfPBoFhY=; b=nrasBDSmT1NmFSUyU2C67A/sMFLe1Vzgk+Xm/0vFS9edOjXWokuJ8TWk6pABNAfkpd ArtCO5XOr46EN/gPeI8cur2jpX5jbHmnsIeu7z19o7ue6OVxbLUYZ00IBAyZQYfM7h8r POyEXfBbVSJ308za9zkQ2HoAtaaAJ5yKPd1cs3quLZqUcvCR4Wjreqx009PYD6pUY/j0 W39YXxb8WM6ozpw+3+mNpZg3PxNhA0S+A0j0ixGHcF8yjB2/L4r7JBTKFSUiQ0LQh3Gz rj2Kr8XWMK8AksSTool1UaV975vpzY5J8uqNEbt097DeAv3xOKVqXcieHAitJ5WYZs39 VtoQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686736075; x=1689328075; h=mime-version:user-agent:content-transfer-encoding:references :in-reply-to:date:cc:to:from:subject:message-id:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=SDYhrbqb109v9AIQIXTNEd18fXk/huAC/WHDfPBoFhY=; b=YVjGYc0+87XTBaxdEfIrlP8hVRtPwP628BTZkuaCBmLKGPCUVdKlyKM0QyWMT40TCh tBeJQNUlIGGvl1/KThJZcxNvjmfEs6z4G7XKTz6A+XnmDX0NQ8+A1DJG22uoE1iLtraU EOxGDzO/IWizbOLU2fEJflzLV8oG+sOoDVU+HMfJd7RBKkaembEaCh2KOniyq8xXBZqp 9DvtKhZGOOoybDoMlmGR127tApQrUxg7QkXwSdwowK/aCHP3onCvo36UO1FcogbLWY+C EUJTGrKtZZENbhuoTlKX0bbODgvQad2jQWClo8wKQlH+PovCJ4fgYkYnXh6JqDRoLjEE 1PBg== X-Gm-Message-State: AC+VfDz5ijuhOmb71+PMplHjsqehwSA/8rHDl9cR27iaCO2WFHZNPzSa ORjduxcT1Nhyc+WzvVIzMmY= X-Google-Smtp-Source: ACHHUZ6qfD6ZtzudA9TFzf6tQv3tSXuVAL9rqdgX/NSAIDIkB7+ItxU3O30qlKGxurc8lRQLdLFSGA== X-Received: by 2002:a19:6446:0:b0:4e8:5e39:6234 with SMTP id b6-20020a196446000000b004e85e396234mr6935678lfj.16.1686736075221; Wed, 14 Jun 2023 02:47:55 -0700 (PDT) Message-ID: <3fa74b20c3516dbeaceada0f8e045d697f926000.camel@gmail.com> Subject: Re: [PATCH v1 5/8] xen/riscv: introduce identity mapping From: Oleksii To: Jan Beulich Cc: Andrew Cooper , Bob Eshleman , Alistair Francis , Connor Davis , xen-devel@lists.xenproject.org Date: Wed, 14 Jun 2023 12:47:54 +0300 In-Reply-To: <4ac462c3-9cb6-f467-2b86-925fb068486d@suse.com> References: <32aef31768cd81ffc8c848af6c29cd8510bbbf6d.1686080337.git.oleksii.kurochko@gmail.com> <4ac462c3-9cb6-f467-2b86-925fb068486d@suse.com> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: base64 User-Agent: Evolution 3.48.3 (3.48.3-1.fc38) MIME-Version: 1.0 T24gTW9uLCAyMDIzLTA2LTEyIGF0IDE1OjQ4ICswMjAwLCBKYW4gQmV1bGljaCB3cm90ZToKPiBP biAwNi4wNi4yMDIzIDIxOjU1LCBPbGVrc2lpIEt1cm9jaGtvIHdyb3RlOgo+ID4gVGhlIHdheSBo b3cgc3dpdGNoIHRvIHZpcnR1YWwgYWRkcmVzcyB3YXMgaW1wbGVtZW50ZWQgaW4gdGhlCj4gPiBj b21taXQgZTY2MDAzZTdiZSAoInhlbi9yaXNjdjogaW50cm9kdWNlIHNldHVwX2luaXRpYWxfcGFn ZXMiKQo+ID4gd2Fzbid0IHNhZmUgZW5vdWdoIHNvIGlkZW50aXR5IG1hcHBpbmcgd2FzIGludHJv ZHVjZWQgYW5kCj4gPiB1c2VkLgo+IAo+IEkgZG9uJ3QgdGhpbmsgdGhpcyBpcyBzdWZmaWNpZW50 IGFzIGEgZGVzY3JpcHRpb24uIFlvdSB3YW50IHRvIG1ha2UKPiBjbGVhciB3aGF0IHRoZSAibm90 IHNhZmUgZW5vdWdoIiBpcywgYW5kIHlvdSBhbHNvIHdhbnQgdG8gZ28gaW50bwo+IG1vcmUgZGV0 YWlsIGFzIHRvIHRoZSBzb2x1dGlvbiBjaG9zZW4uIEknbSBwYXJ0aWN1bGFybHkgcHV6emxlZCB0 aGF0Cj4geW91IG1hcCBqdXN0IHR3byBzaW5ndWxhciBwYWdlcyAuLi4KSSdsbCB1cGRhdGUgYSBk ZXNjcnB0aW9uLgoKSSBtYXAgdHdvIHBhZ2VzIGFzIGl0IGxpa2VseSB0byBiZSBlbm91Z2ggdG8g c3dpdGNoIGZyb20gMToxIG1hcHBpbmcKd29ybGQuIE15IHBvaW50IGlzIHRoYXQgd2UgbmVlZCAx OjEgbWFwcGluZyBvbmx5IGZvciBmZXcgaW5zdHJ1Y3Rpb25zCndoaWNoIGFyZSBsb2NhdGVkIGlu IHN0YXJ0KCkgWyBpbiAudGV4dC5oZWFkZXIgc2VjdGlvbiBdOgoKICAgICAgICBsaSAgICAgIHQw LCBYRU5fVklSVF9TVEFSVAogICAgICAgIGxhICAgICAgdDEsIHN0YXJ0CiAgICAgICAgc3ViICAg ICB0MSwgdDEsIHQwCgogICAgICAgIC8qIENhbGN1bGF0ZSBwcm9wZXIgVkEgYWZ0ZXIganVtcCBm cm9tIDE6MSBtYXBwaW5nICovCiAgICAgICAgbGEgICAgICB0MCwgLkxfcHJpbWFyeV9zd2l0Y2hl ZAogICAgICAgIHN1YiAgICAgdDAsIHQwLCB0MQoKICAgICAgICAvKiBKdW1wIGZyb20gMToxIG1h cHBpbmcgd29ybGQgKi8KICAgICAgICBqciAgICAgIHQwCgpBbmQgaXQgaXMgbmVlZGVkIHRvIG1h cCAxOjEgY3B1MF9ib290X3N0YWNrIHRvIG5vdCB0byBmYXVsdCB3aGVuCmV4ZWN1dGluZyBlcGls b2cgb2YgZW5hYmxlX21tdSgpIGZ1bmN0aW9uIGFzIGl0IGFjY2Vzc2VzIGEgdmFsdWUgb24gdGhl CnN0YWNrOgogICAgZmZmZmZmZmZjMDAwMDFiMDogICAgICAgNjQyMiAgICAgICAgICAgICAgICAg ICAgbGQgICAgICBzMCw4KHNwKQogICAgZmZmZmZmZmZjMDAwMDFiMjogICAgICAgMDE0MSAgICAg ICAgICAgICAgICAgICAgYWRkaSAgICBzcCxzcCwxNgogICAgZmZmZmZmZmZjMDAwMDFiNDogICAg ICAgODA4MiAgICAgICAgICAgICAgICAgICAgcmV0Cgo+IAo+ID4gQEAgLTM1LDggKzQwLDEwIEBA IHN0YXRpYyB1bnNpZ25lZCBsb25nIHBoeXNfb2Zmc2V0Owo+ID4gwqAgKgo+ID4gwqAgKiBJdCBt aWdodCBiZSBuZWVkZWQgb25lIG1vcmUgcGFnZSB0YWJsZSBpbiBjYXNlIHdoZW4gWGVuIGxvYWQK PiA+IGFkZHJlc3MKPiA+IMKgICogaXNuJ3QgMiBNQiBhbGlnbmVkLgo+ID4gKyAqCj4gPiArICog MyBhZGRpdGlvbmFsIHBhZ2UgdGFibGVzIGFyZSBuZWVkZWQgZm9yIGlkZW50aXR5IG1hcHBpbmcu Cj4gPiDCoCAqLwo+ID4gLSNkZWZpbmUgUEdUQkxfSU5JVElBTF9DT1VOVCAoKENPTkZJR19QQUdJ TkdfTEVWRUxTIC0gMSkgKyAxKQo+ID4gKyNkZWZpbmUgUEdUQkxfSU5JVElBTF9DT1VOVCAoKENP TkZJR19QQUdJTkdfTEVWRUxTIC0gMSkgKyAxICsgMykKPiAKPiBXaGF0IGlzIHRoaXMgMyBjb21p bmcgZnJvbT8gSXQgZmVlbHMgbGlrZSB0aGUgdmFsdWUgc2hvdWxkIChhZ2FpbikKPiBzb21laG93 IGRlcGVuZCBvbiBDT05GSUdfUEFHSU5HX0xFVkVMUy4KMyBpcyB0b28gbXVjaCBpbiB0aGUgY3Vy cmVudCBjYXNlLiBJdCBzaG91bGQgYmUgMiBtb3JlLgoKVGhlIGxpbmtlciBhZGRyZXNzIGlzIDB4 RkZGRkZGRkMwMDAwMDAwMCB0aGVyZWJ5IG1hcHBpbmcgdGhlIGxpbmtlciB0bwpsb2FkIGFkZHJl c3Nlcwp3ZSBuZWVkIDMgcGFnZXMgKCB3aXRoIHRoZSBjb25kaXRpb24gdGhhdCB0aGUgc2l6ZSBv ZiBYZW4gd29uJ3QgYmUKbGFyZ2VyIHRoYW4gMiBNQiApIGFuZCAxIHBhZ2UgaWYgdGhlIGNhc2Ug d2hlbiBYZW4gbG9hZCBhZGRyZXNzIGlzbid0CjJNViBhbGlnbmVkLgoKV2UgbmVlZCAyIG1vcmUg cGFnZSB0YWJsZXMgYmVjYXVzZSBYZW4gaXMgbG9hZGVkIHRvIGFkZHJlc3MgMHg4MDIwMDAwMApi eSBPcGVuU0JJIGFuZCB0aGUgbG9hZCBhZGRyZXNzIGlzbid0IGVxdWFsIHRvIHRoZSBsaW5rZXIg YWRkcmVzcyBzbyB3ZQpuZWVkIGFkZGl0aW9uYWwgMiBwYWdlcyBhcyB0aGUgTDIgdGFibGUgd2Ug YWxyZWFkeSBhbGxvY2F0ZWQgd2hlbgptYXBwaW5nIHRoZSBsaW5rZXIgdG8gbG9hZCBhZGRyZXNz ZXMuCgpBbmQgaXQgbG9va3MgbGlrZSAyIGlzIGVub3VnaCBmb3IgU3Y0OCwgU3Y1NyBhcyBMNCwg TDMgYW5kIEwyCnBhZ2V0YWJsZXMgd2lsbCBiZSBhbHJlYWR5IGFsbG9jYXRlZCBkdXJpbmcgbWFw cGluZyB0aGUgbGlua2VyIHRvIGxvYWQKYWRkcmVzc2VzLgoKQW5kIGl0IG9ubHkgd2lsbCBiZSB0 b28gbXVjaCBmb3IgU3YzMiAoIHdoaWNoIGhhcyBvbmx5IEwxLCBMMCBpbgpnZW5lcmFsICkgYnV0 IEkgYW0gbm90IHN1cmUgdGhhdCBhbnlvbmUgY2FyZXMgYWJvdXQgU3YzMi4KCj4gCj4gPiBAQCAt MTA4LDE2ICsxMTYsMTggQEAgc3RhdGljIHZvaWQgX19pbml0Cj4gPiBzZXR1cF9pbml0aWFsX21h cHBpbmcoc3RydWN0IG1tdV9kZXNjICptbXVfZGVzYywKPiA+IMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoCB7Cj4gPiDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB1bnNpZ25lZCBsb25n IHBhZGRyID0gKHBhZ2VfYWRkciAtIG1hcF9zdGFydCkgKwo+ID4gcGFfc3RhcnQ7Cj4gPiDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB1bnNpZ25lZCBpbnQgcGVybWlzc2lvbnMgPSBQ VEVfTEVBRl9ERUZBVUxUOwo+ID4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB1bnNp Z25lZCBsb25nIGFkZHIgPSAoaXNfaWRlbnRpdHlfbWFwcGluZykgPwo+IAo+IE5pdDogTm8gbmVl ZCBmb3IgcGFyZW50aGVzZXMgaGVyZS4KVGhhbmtzLgoKPiAKPiA+ICvCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAg cGFnZV9hZGRyIDoKPiA+IExJTktfVE9fTE9BRChwYWdlX2FkZHIpOwo+IAo+IEFzIGEgcmVtYXJr LCB3aGlsZSB3ZSB3YW50IGJpbmFyeSBvcGVyYXRvcnMgYXQgdGhlIGVuZCBvZiBsaW5lcyB3aGVu Cj4gd3JhcHBpbmcsIHdlIHVzdWFsbHkgZG8gdGhpbmdzIGRpZmZlcmVudGx5IGZvciB0aGUgdGVy bmFyeSBvcGVyYXRvcjoKPiBFaXRoZXIKPiAKPiDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqAgdW5zaWduZWQgbG9uZyBhZGRyID0gaXNfaWRlbnRpdHlfbWFwcGluZwo+IMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoCA/IHBhZ2VfYWRkciA6Cj4gTElOS19UT19MT0FEKHBhZ2VfYWRkcik7Cj4gCj4gb3IKPiAK PiDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgdW5zaWduZWQgbG9uZyBhZGRyID0gaXNf aWRlbnRpdHlfbWFwcGluZwo+IMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCA/IHBhZ2VfYWRkcgo+IMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoCA6IExJTktfVE9fTE9BRChwYWdlX2FkZHIpOwpJdCBsb29rcyBiZXR0ZXIuIFRoYW5r cy4KPiAKPiAuCj4gCj4gPiBAQCAtMjMyLDIyICsyNDIsMjcgQEAgdm9pZCBfX2luaXQgc2V0dXBf aW5pdGlhbF9wYWdldGFibGVzKHZvaWQpCj4gPiDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIGxpbmtlcl9zdGFydCwKPiA+IMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgbGlua2VyX2VuZCwKPiA+IMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgbG9hZF9z dGFydCk7Cj4gPiArCj4gPiArwqDCoMKgIGlmICggbGlua2VyX3N0YXJ0ID09IGxvYWRfc3RhcnQg KQo+ID4gK8KgwqDCoMKgwqDCoMKgIHJldHVybjsKPiA+ICsKPiA+ICvCoMKgwqAgc2V0dXBfaW5p dGlhbF9tYXBwaW5nKCZtbXVfZGVzYywKPiA+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBsb2FkX3N0YXJ0LAo+ID4gK8KgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIGxvYWRfc3RhcnQgKyBQQUdFX1NJWkUs Cj4gPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAg bG9hZF9zdGFydCk7Cj4gPiArCj4gPiArwqDCoMKgIHNldHVwX2luaXRpYWxfbWFwcGluZygmbW11 X2Rlc2MsCj4gPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqAgKHVuc2lnbmVkIGxvbmcpY3B1MF9ib290X3N0YWNrLAo+ID4gK8KgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICh1bnNpZ25lZCBsb25nKWNwdTBf Ym9vdF9zdGFjayArCj4gPiBQQUdFX1NJWkUsCj4gCj4gU2hvdWxkbid0IHRoaXMgYmUgU1RBQ0tf U0laRSAoYW5kIHRoZW4gYWxzbyBiZSBwcmVwYXJlZCBmb3IKPiBTVEFDS19TSVpFID4gUEFHRV9T SVpFKT8KWWVzLCBpdCB3aWxsIGJlIGJldHRlciB0byB1c2UgU1RBQ0tfU0laRSBidXQgZm9yIDE6 MSBtYXBwaW5nIGl0IHdpbGwgYmUKZW5vdWdoIFBBR0VfU0laRSBhcyBJIG1lbnRpb25lZCBhYm92 ZSB0aGlzIG9ubHkgbmVlZCBmb3IgZXBpbG9ndWUgb2YKZW5hYmxlX21tdSgpIGZ1bmN0aW9uLgo+ IAo+ID4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg ICh1bnNpZ25lZCBsb25nKWNwdTBfYm9vdF9zdGFjayk7Cj4gPiDCoH0KPiA+IMKgCj4gPiAtdm9p ZCBfX2luaXQgbm9yZXR1cm4gbm9pbmxpbmUgZW5hYmxlX21tdSgpCj4gPiArLyoKPiA+ICsgKiBl bmFibGVfbW11KCkgY2FuJ3QgYmUgX19pbml0IGJlY2F1c2UgX19pbml0IHNlY3Rpb24gaXNuJ3Qg cGFydAo+ID4gb2YgaWRlbnRpdHkKPiA+ICsgKiBtYXBwaW5nIHNvIGl0IHdpbGwgY2F1c2UgYW4g aXNzdWUgYWZ0ZXIgTU1VIHdpbGwgYmUgZW5hYmxlZC4KPiA+ICsgKi8KPiAKPiBBcyBoaW50ZWQg YXQgYWJvdmUgYWxyZWFkeSAtIHBlcmhhcHMgdGhlIGlkZW50aXR5IG1hcHBpbmcgd2FudHMgdG8g YmUKPiBsYXJnZXIsIHVwIHRvIGNvdmVyaW5nIHRoZSBlbnRpcmUgWGVuIGltYWdlPyBTaW5jZSBp dCdzIHRlbXBvcmFyeQo+IG9ubHkgYW55d2F5LCB5b3UgY291bGQgZXZlbiBjb25zaWRlciB1c2lu ZyBhIGxhcmdlIHBhZ2UgKGFuZCBSV1gKPiBwZXJtaXNzaW9uKS4gWW91IGFscmVhZHkgcmVxdWly ZSBubyBvdmVybGFwIG9mIGxpbmsgYW5kIGxvYWQKPiBhZGRyZXNzZXMsCj4gc28gYXQgbGVhc3Qg c21hbGwgcGFnZSBtYXBwaW5ncyBvdWdodCB0byBiZSBwb3NzaWJsZSBmb3IgdGhlIGVudGlyZQo+ IGltYWdlLgpJdCBtYWtlcyBzZW5zZSBhbmQgc3RhcnRlZCB0byB0aG91Z2h0IGFib3V0IHRoYXQg YWZ0ZXIgSSBhcHBsaWVkIHRoZQpwYXRjaCBmb3IgRG9tMCBydW5uaW5nLi4uIEkgdGhpbmsgd2Ug Y2FuIG1hcCAxIEdCIHBhZ2Ugd2hpY2ggd2lsbCBjb3Zlcgp0aGUgd2hvbGUgWGVuIGltYWdlLiBB bHNvIGluIHRoYXQgY2FzZSB3ZSBoYXZlbid0IHRvIGFsbG9jYXRlIDIgbW9yZQpwYWdlIHRhYmxl cy4KCj4gCj4gPiBAQCAtMjU1LDI1ICsyNzAsNDEgQEAgdm9pZCBfX2luaXQgbm9yZXR1cm4gbm9p bmxpbmUgZW5hYmxlX21tdSgpCj4gPiDCoMKgwqDCoCBjc3Jfd3JpdGUoQ1NSX1NBVFAsCj4gPiDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIFBGTl9ET1dOKCh1bnNpZ25lZCBsb25nKXN0YWdl MV9wZ3RibF9yb290KSB8Cj4gPiDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIFJWX1NUQUdF MV9NT0RFIDw8IFNBVFBfTU9ERV9TSElGVCk7Cj4gPiArfQo+ID4gKwo+ID4gK3ZvaWQgX19pbml0 IHJlbW92ZV9pZGVudGl0eV9tYXBwaW5nKHZvaWQpCj4gPiArewo+ID4gK8KgwqDCoCBpbnQgaSwg ajsKPiAKPiBOaXQ6IHVuc2lnbmVkIGludCBwbGVhc2UuClRoYW5rcy4KCj4gCj4gPiArwqDCoMKg IHB0ZV90ICpwZ3RibDsKPiA+ICvCoMKgwqAgdW5zaWduZWQgaW50IGluZGV4LCB4ZW5faW5kZXg7 Cj4gCj4gVGhlc2Ugd291bGQgYWxsIHByb2JhYmx5IGJldHRlciBiZSBkZWNsYXJlZCBpbiB0aGUg bmFycm93ZXN0IHBvc3NpYmxlCj4gc2NvcGUuClN1cmUuCgo+IAo+ID4gLcKgwqDCoCBhc20gdm9s YXRpbGUgKCAiLnAyYWxpZ24gMiIgKTsKPiA+IC0gbW11X2lzX2VuYWJsZWQ6Cj4gPiDCoMKgwqDC oCAvKgo+ID4gLcKgwqDCoMKgICogU3RhY2sgc2hvdWxkIGJlIHJlLWluaXRlZCBhczoKPiA+IC3C oMKgwqDCoCAqIDEuIFJpZ2h0IG5vdyBhbiBhZGRyZXNzIG9mIHRoZSBzdGFjayBpcyByZWxhdGl2 ZSB0byBsb2FkCj4gPiB0aW1lCj4gPiAtwqDCoMKgwqAgKsKgwqDCoCBhZGRyZXNzZXMgd2hhdCB3 aWxsIGNhdXNlIGFuIGlzc3VlIGluIGNhc2Ugb2YgbG9hZCBzdGFydAo+ID4gYWRkcmVzcwo+ID4g LcKgwqDCoMKgICrCoMKgwqAgaXNuJ3QgZXF1YWwgdG8gbGlua2VyIHN0YXJ0IGFkZHJlc3MuCj4g PiAtwqDCoMKgwqAgKiAyLiBBZGRyZXNzZXMgaW4gc3RhY2sgYXJlIGFsbCBsb2FkIHRpbWUgcmVs YXRpdmUgd2hpY2ggY2FuCj4gPiBiZSBhbgo+ID4gLcKgwqDCoMKgICrCoMKgwqAgaXNzdWUgaW4g Y2FzZSB3aGVuIGxvYWQgc3RhcnQgYWRkcmVzcyBpc24ndCBlcXVhbCB0bwo+ID4gbGlua2VyCj4g PiAtwqDCoMKgwqAgKsKgwqDCoCBzdGFydCBhZGRyZXNzLgo+ID4gLcKgwqDCoMKgICoKPiA+IC3C oMKgwqDCoCAqIFdlIGNhbid0IHJldHVybiB0byB0aGUgY2FsbGVyIGJlY2F1c2UgdGhlIHN0YWNr IHdhcyByZXNldGVkCj4gPiAtwqDCoMKgwqAgKiBhbmQgaXQgbWF5IGhhdmUgc3Rhc2ggc29tZSB2 YXJpYWJsZSBvbiB0aGUgc3RhY2suCj4gPiAtwqDCoMKgwqAgKiBKdW1wIHRvIGEgYnJhbmQgbmV3 IGZ1bmN0aW9uIGFzIHRoZSBzdGFjayB3YXMgcmVzZXRlZAo+ID4gK8KgwqDCoMKgICogaWRfYWRk cnMgc2hvdWxkIGJlIGluIHN5bmMgd2l0aCBpZCBtYXBwaW5nIGluCj4gPiArwqDCoMKgwqAgKiBz ZXR1cF9pbml0aWFsX3BhZ2V0YWJsZXMoKQo+IAo+IFdoYXQgaXMgImlkIiBtZWFudCB0byBzdGFu ZCBmb3IgaGVyZT8gQWxzbyBpZiB0aGluZ3MgbmVlZCBrZWVwaW5nIGluCj4gc3luYywgdGhlbiBh IHNpbWlsYXIgY29tbWVudCBzaG91bGQgZXhpc3Qgb24gdGhlIG90aGVyIHNpZGUuCiJpZCIgaGVy ZSBtZWFuIGlkZW50aXR5LgoKPiAKPiA+IMKgwqDCoMKgwqAgKi8KPiA+ICvCoMKgwqAgdW5zaWdu ZWQgbG9uZyBpZF9hZGRyc1tdID3CoCB7Cj4gPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBMSU5LX1RPX0xPQUQoX3N0YXJ0 KSwKPiA+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgIExJTktfVE9fTE9BRChjcHUwX2Jvb3Rfc3RhY2spLAo+ID4gK8KgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg IH07Cj4gPiDCoAo+ID4gLcKgwqDCoCBzd2l0Y2hfc3RhY2tfYW5kX2p1bXAoKHVuc2lnbmVkIGxv bmcpY3B1MF9ib290X3N0YWNrICsKPiA+IFNUQUNLX1NJWkUsCj4gPiAtwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgY29udF9hZnRlcl9tbXVfaXNfZW5h YmxlZCk7Cj4gPiArwqDCoMKgIHBndGJsID0gc3RhZ2UxX3BndGJsX3Jvb3Q7Cj4gPiArCj4gPiAr wqDCoMKgIGZvciAoIGogPSAwOyBqIDwgQVJSQVlfU0laRShpZF9hZGRycyk7IGorKyApCj4gPiAr wqDCoMKgIHsKPiA+ICvCoMKgwqDCoMKgwqDCoCBmb3IgKCBwZ3RibCA9IHN0YWdlMV9wZ3RibF9y b290LCBpID0gQ09ORklHX1BBR0lOR19MRVZFTFMKPiA+IC0gMTsgaSA+PSAwOyBpLS0gKQo+ID4g K8KgwqDCoMKgwqDCoMKgIHsKPiA+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIGluZGV4ID0gcHRf aW5kZXgoaSwgaWRfYWRkcnNbal0pOwo+ID4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqAgeGVuX2lu ZGV4ID0gcHRfaW5kZXgoaSwgWEVOX1ZJUlRfU1RBUlQpOwo+ID4gKwo+ID4gK8KgwqDCoMKgwqDC oMKgwqDCoMKgwqAgaWYgKCBpbmRleCAhPSB4ZW5faW5kZXggKQo+ID4gK8KgwqDCoMKgwqDCoMKg wqDCoMKgwqAgewo+ID4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBwZ3RibFtpbmRl eF0ucHRlID0gMDsKPiA+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgYnJlYWs7Cj4g PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB9Cj4gCj4gVXAgdG8gaGVyZSBJIHVuZGVyc3RhbmQg aW5kZXggc3BlY2lmaWVzIGEgcGFydGljdWxhciBQVEUgd2l0aGluCj4gcGd0YmxbXS4KPiAKPiA+ ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHBndGJsID0gJnBndGJsW2luZGV4XTsKPiAKPiBCdXQg dGhlbiBob3cgY2FuIHRoaXMgYmUgdGhlIGNvbnRpbnVhdGlvbiBvZiB0aGUgcGFnZSB0YWJsZSB3 YWxrPwo+IERvbid0Cj4geW91IG5lZWQgdG8gcmVhZCB0aGUgYWRkcmVzcyBvdXQgb2YgdGhlIFBU RT8KWW91IGFyZSByaWdodC4gaXQgc2hvdWxkIGJlOgogICBwZ3RibCA9IChwdGVfdCAqKXB0ZV90 b19wYWRkcihwZ3RibFtpbmRleF0pOyAKCj4gCj4gPiAtLS0gYS94ZW4vYXJjaC9yaXNjdi9yaXNj djY0L2hlYWQuUwo+ID4gKysrIGIveGVuL2FyY2gvcmlzY3YvcmlzY3Y2NC9oZWFkLlMKPiA+IEBA IC0zMSw2ICszMSwzNiBAQCBFTlRSWShzdGFydCkKPiA+IMKgCj4gPiDCoMKgwqDCoMKgwqDCoMKg IGphbMKgwqDCoMKgIGNhbGNfcGh5c19vZmZzZXQKPiA+IMKgCj4gPiArwqDCoMKgwqDCoMKgwqAg amFswqDCoMKgwqAgc2V0dXBfaW5pdGlhbF9wYWdldGFibGVzCj4gPiArCj4gPiArwqDCoMKgwqDC oMKgwqAgamFswqDCoMKgwqAgZW5hYmxlX21tdQo+ID4gKwo+ID4gK8KgwqDCoMKgwqDCoMKgIC8q Cj4gPiArwqDCoMKgwqDCoMKgwqDCoCAqIENhbGN1bGF0ZSBwaHlzaWNhbCBvZmZzZXQKPiA+ICvC oMKgwqDCoMKgwqDCoMKgICoKPiA+ICvCoMKgwqDCoMKgwqDCoMKgICogV2UgY2FuJ3QgcmUtdXNl IGEgdmFsdWUgaW4gcGh5c19vZmZzZXQgdmFyaWFibGUgaGVyZSBhcwo+ID4gK8KgwqDCoMKgwqDC oMKgwqAgKiBwaHlzX29mZnNldCBpcyBsb2NhdGVkIGluIC5ic3MgYW5kIHRoaXMgc2VjdGlvbiBp c24ndAo+ID4gK8KgwqDCoMKgwqDCoMKgwqAgKiAxOjEgbWFwcGVkIGFuZCBhbiBhY2Nlc3MgdG8g aXQgd2lsbCBjYXVzZSBNTVUgZmF1bHQKPiA+ICvCoMKgwqDCoMKgwqDCoMKgICovCj4gPiArwqDC oMKgwqDCoMKgwqAgbGnCoMKgwqDCoMKgIHQwLCBYRU5fVklSVF9TVEFSVAo+ID4gK8KgwqDCoMKg wqDCoMKgIGxhwqDCoMKgwqDCoCB0MSwgc3RhcnQKPiA+ICvCoMKgwqDCoMKgwqDCoCBzdWLCoMKg wqDCoCB0MSwgdDEsIHQwCj4gCj4gSWYgSSdtIG5vdCBtaXN0YWtlbiB0aGlzIGNhbGN1bGF0ZXMg c3RhcnQgLSBYRU5fVklSVF9TVEFSVCwgYW5kIC4uLgo+IAo+ID4gK8KgwqDCoMKgwqDCoMKgIC8q IENhbGN1bGF0ZSBwcm9wZXIgVkEgYWZ0ZXIganVtcCBmcm9tIDE6MSBtYXBwaW5nICovCj4gPiAr wqDCoMKgwqDCoMKgwqAgbGHCoMKgwqDCoMKgIHQwLCAuTF9wcmltYXJ5X3N3aXRjaGVkCj4gPiAr wqDCoMKgwqDCoMKgwqAgc3ViwqDCoMKgwqAgdDAsIHQwLCB0MQo+IAo+IC4uLiB0aGVuIHRoaXMg LkxfcHJpbWFyeV9zd2l0Y2hlZCAtIChzdGFydCAtIFhFTl9WSVJUX1NUQVJUKS4gV2hpY2gKPiBj YW4KPiBhbHNvIGJlIGV4cHJlc3NlZCBhcyAoLkxfcHJpbWFyeV9zd2l0Y2hlZCAtIHN0YXJ0KSAr IFhFTl9WSVJUX1NUQVJULAo+IHRoZSBmaXJzdCBwYXJ0IG9mIHdoaWNoIGdhcyBvdWdodCB0byBi ZSBhYmxlIHRvIHJlc29sdmUgZm9yIHlvdS4gQnV0Cj4gdXBvbiBleHBlcmltZW50aW5nIGEgbGl0 dGxlIGl0IGxvb2tzIGxpa2UgaXQgY2FuJ3QuIChJIGhhZCB0aG91Z2h0IG9mCj4gc29tZXRoaW5n IGFsb25nIHRoZSBsaW5lcyBvZgo+IAo+IMKgwqDCoMKgwqDCoMKgIGxpwqDCoMKgwqDCoCB0MCwg LkxfcHJpbWFyeV9zd2l0Y2hlZCAtIHN0YXJ0Cj4gwqDCoMKgwqDCoMKgwqAgbGnCoMKgwqDCoMKg IHQxLCBYRU5fVklSVF9TVEFSVAo+IMKgwqDCoMKgwqDCoMKgIGFkZMKgwqDCoMKgIHQwLCB0MCwg dDEKPiAKPiBvciBldmVuCj4gCj4gwqDCoMKgwqDCoMKgwqAgbGnCoMKgwqDCoMKgIHQxLCBYRU5f VklSVF9TVEFSVAo+IMKgwqDCoMKgwqDCoMKgIGFkZMKgwqDCoMKgIHQwLCB0MSwgJXBjcmVsX2xv KC5MX3ByaW1hcnlfc3dpdGNoZWQgLSBzdGFydCkKPiAKPiAuKQpDYWxjdWxhdGlvbiBvZiAiLkxf cHJpbWFyeV9zd2l0Y2hlZCAtIHN0YXJ0IiBtaWdodCBiZSBhbiBpc3N1ZSBmb3IgZ2NjLgpJIHRy aWVkIHRvIGRvIHNvbWV0aGluZyBzaW1pbGFyIGFuZCByZWNpZXZlZCBvciAiRXJyb3I6IGNhbid0 IHJlc29sdmUKLkxfcHJpbWFyeV9zd2l0Y2hlZCAtIHN0YXJ0IiBvciAiRXJyb3I6IGlsbGVnYWwg b3BlcmFuZHMgYGxpCnQwLC5MX3ByaW1hcnlfc3dpdGNoZWQtc3RhcnQnIgoKfiBPbGVrc2lpCg== From xen-devel-bounces@lists.xenproject.org Wed Jun 14 09:49:44 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 09:49:44 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548643.856668 (Exim 4.92) (envelope-from ) id 1q9N8J-0006SS-Sl; Wed, 14 Jun 2023 09:49:43 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548643.856668; Wed, 14 Jun 2023 09:49:43 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9N8J-0006SL-Pp; Wed, 14 Jun 2023 09:49:43 +0000 Received: by outflank-mailman (input) for mailman id 548643; Wed, 14 Jun 2023 09:49:42 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9N8I-0006S7-5r for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 09:49:42 +0000 Received: from EUR05-AM6-obe.outbound.protection.outlook.com (mail-am6eur05on20615.outbound.protection.outlook.com [2a01:111:f400:7e1b::615]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id c7a7e70a-0a98-11ee-8611-37d641c3527e; Wed, 14 Jun 2023 11:49:39 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by DBBPR04MB7884.eurprd04.prod.outlook.com (2603:10a6:10:1f2::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.37; Wed, 14 Jun 2023 09:49:37 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.039; Wed, 14 Jun 2023 09:49:37 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: c7a7e70a-0a98-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=T4V/G4KXpp5RPkmwL58q03Gk9Au51XyqvmB4+TDltT1AD6YUnsGAxlt7uiKvL2mkPMv9EQ/Wk0ln6SLAGRcJIOlOlkwr++JyBqsgdejWDZgc5L8OKF1L4e0T+YaLFaElvLQcG/Cp31+lr5jKHSA60ZAq11JrpfrC/ZsjL6V02X8act3WIEp6wXeL6mri+LxxmLXsjKapUI0iuGhsB28NqFtVxQIxhdPGdULHplhkwJ/ME6A/sjH7QZaod6VdrdrMk+gD/Y0qwG3/YFzZrAv3fmBBAqH50yjdaQRiwrCcAiTc27o4oguUrKpAfq9PqtktojBE8LAp+QRqrXyg5locCA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=UG3CN7y5ALcWwbVCs5KJLsIk+zG5RVr6nb0qeMVpp/I=; b=M75qOXIgMsxxuc4owk/3RHB3WsAqwI43plRS+Vpxd1RmmmW89e1Pn0kVbOSeupcCHsN9X7sMZTPQoUdb69CO4G79riBMO41RHr1pOY5CfDNwZOdcA4jd9RpY93z+jgwzYFvmYpnTICtGBw2zPrfJRfeBVzwWLxhvegu81NIla1zdiPawqIz0Qs73EOgNKL/cocwt8zhv0XXCO0EON7xeHR09lC5jl8HA910+7thnJsmeXEKjUxEqpbIkdK+j1PNdM3vAANlPhMLsmqO4adhuxhBEQc5Jfdbv1dqk1y/rD8lWmf5KBHo8OSSr96dnNvYLKdvgieLTxOeo6ZM8izHc0A== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=UG3CN7y5ALcWwbVCs5KJLsIk+zG5RVr6nb0qeMVpp/I=; b=0YUsnIESQVLteG+J3ZRnwTA4R5DPk5r8vKZN+UVYlCnZSYibvMNGxjGoKL+IrXyVRXyJ5nrYBHWF+K2+eChRj056UpIGH7dLOG2ABGCmzF0jTVuEOIlJIvMOvogmhJzpU4o1ynOlOdNhwiravQcoldfnWYADfDYU6vlc3Qkt6Wrmv1gEEO/er4wTz2K4mub9kRbwu9ARzg9sA0D4wEhgdVwNx72fzXJzt3oBbvVrjpnfpDfNdpLFsjaI/AAgT4l7fPaVFGQidNJzsmRNX0G/uJHaPQpNg81vKTrjHPXdbJ9BrPdE/iqg/GlKXXtqyvfH57YrsZjattgxXotFj3s8Lw== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: Date: Wed, 14 Jun 2023 11:49:35 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: compat code lacks support for __attribute__ Content-Language: en-US To: Olaf Hering References: <20230614104234.56835aa9.olaf@aepfle.de> From: Jan Beulich Cc: xen-devel@lists.xenproject.org In-Reply-To: <20230614104234.56835aa9.olaf@aepfle.de> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR3P281CA0151.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:a2::12) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|DBBPR04MB7884:EE_ X-MS-Office365-Filtering-Correlation-Id: 3ac3be3e-421d-4bb3-2766-08db6cbcaa5b X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: WdEzamDbRFezHhibAqHS4d0AsCi7XbJsO0KRkrTqZZKEKzb/zJMa6WJA5HgzGBDXCIZTC/pIkTyZCDBu1lJIsl91VZe2FJ+2K93jPvMGJlx3/RA5uiVJ2iD6DAj4DgRLW2kQw/ruMaRWdQ3lqmNvkfO2N0PrAenvPnpcbzBvd5ggse5LpQTkIiDWXIMnHTL6AfNEles9gK3Ru9Ofod3WYbQVw4iPk7Yv32hiFZIvQEzbtEeSNt82TR53GNuaJaf6lnFCwjd3NRS7y1Qj+HrudfkXUR1suoSdgZcAR3fIdyhRR5d1YI+G1Bv1r49PfuZohgmcf0/UH3LpYObSObZLoBXGzZRNh3BvKx9ucEQ5KKFyzfkZa3xxC5nyi6lbfQWfPS4B1yC3ZbpQSjrMdrHbMxf0dqemWiFIIf+45aPWqC5FASZTKAqF8BL67nF+2xG6fcZ9c21HJzYM7wuPEtk52kcxdLRlVL9IHmX41KGS4Unz6C8tLkwZc66DKdvdVWFDx0KPj5yh+cDTB7foo8LI8T/Jw7Ui7Y/xBI3ko5zz+BAvt5XCVMBj29AhuunI0u4YWcw65Nqb/Cq6ouoPmpHLbIO4pRLjfM3+wotP71KmrXolV9D2cnn1oZ4raHSoZHCwq1K7uWEvBkJ214T7niy6RA== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(396003)(366004)(376002)(39860400002)(346002)(136003)(451199021)(26005)(36756003)(6512007)(6506007)(478600001)(186003)(53546011)(6486002)(2906002)(316002)(41300700001)(8936002)(86362001)(31696002)(31686004)(5660300002)(8676002)(38100700002)(83380400001)(2616005)(6916009)(66556008)(66946007)(66476007)(4326008)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?c0MxS2t5TWNNM2tEY1BtY09TckVaOGZBTC9PNWFGTDllb2pVSjNpRmQ5Q0s5?= =?utf-8?B?QnNWWUh5VlZqcnJHWExpUHQxcGM1dG5nUXVPVnN3MDZNTGRvQWJRZElNTVF5?= =?utf-8?B?czB3WVFpTnZ4TWZQL3lSWEJFb0t6d1JNWlZxb3NpVFNDQmJaUTZsMW1GTUlo?= =?utf-8?B?NFdBSUp1bEt5YzdvdU5BWGNFejA2ZFB6KzRYL3ROcUVnRlZ5WHZlVDdFSWhm?= =?utf-8?B?UnNySjVaRGNDZUJBWjNncUhiYXhwQTd4NDVVRVBkNGtGL1hLRlVLYitNeVpa?= =?utf-8?B?OFdQakFzSERtTTVqRXZJT1VRZHVueGRrSmw2TlRrNVY4QnRUZngzVnljcXpH?= =?utf-8?B?S0NtUHZQY0xpRG1FeUdjaDNDa2xHakE5YnFNNjBsc0VWZWRDbVl3UkxFbTdK?= =?utf-8?B?d1pNR2ExcXB6cDREWTZGMXdKbCtUVm9aTjZpL3ZUcXpiQ0NLK1ZDT293V0tU?= =?utf-8?B?RlhDRTZJMzhyYVVoZDQzWEpaUjdpcmtJNi9wL1hlV3oxVy9HTFVTWXkrZWRI?= =?utf-8?B?WkI4cSt2SzlqYmRWbXV3OFN4Z2JnWUhaOTFaWDJRQ1pqdDhXN3kwZ1pYRXhX?= =?utf-8?B?WHNMRGs5UEVab2pEeDQvRjRhQjV0eUtvNEt4WnkrTUJwVnA1YlhoWndhY3VB?= =?utf-8?B?V2RWRVdqUE1vQThDVGo2UEpzdG1IZTBtVFozK2p4MEVWN1BwZU4xNzVVRWE2?= =?utf-8?B?dlUwaWlMTzVoTVhDd2VzenFoY2dnb1ZMaTBRT2dLTmRxVjg3UUhlU1BPV2pj?= =?utf-8?B?ekhkWFFiZ2MrZ2hsNlplQ2YzWDNuWFpQOW9xTjEzcWJnUDdFSmV6REI0bUIx?= =?utf-8?B?YUN4S1orSVNxbGFGUjhoTllRLzlrMFFPQWF5dEROYit5UytocnRicERna05i?= =?utf-8?B?L1RYNXJKNW8xRmYvMjR1dXc0YkdrRy9uOGZlTGthWklNNmVpM3BDS0dpZWJK?= =?utf-8?B?VXF6N2JUQjZwNmRDTk5IUEIwdm16cVhmTHU0UytIM3hSVk9KalkrWlZBYWhW?= =?utf-8?B?T2thelJVa3RBOEJjNmw3M0t5WE5vS2VVV09vWGU2cGlldGdseU1IbGJCc05r?= =?utf-8?B?YUhxQXpYdVV4Y2MwMENSSXFyeGQ4TlFMOFhuZ3RzZjFuWWlhTTd3Vy9KTzBy?= =?utf-8?B?N3Uxc0FZOUpHY0Z2WUdSVU1JUHcwcXhqZjlHR3lRR3ZCVmhXS2FpVmxyM0N0?= =?utf-8?B?Y2dnbU1LVFpqOUx4ejVKNlphQkpSZjFEdnZpNDZKN2k3TmtnTjYxQ1VXWnNX?= =?utf-8?B?NkxyRVA2YkZyTXVCcXNJMHYyckNtMlliZFR5eDExczdPRnVmZkFpaTBvSHpJ?= =?utf-8?B?aGdlT0EyRCtxSnFIWjM4TnY5WDJzaFAvbWYySnVtOWdCSURMYk5qUlFKSlM4?= =?utf-8?B?T08wTkJ1cm8ySEUySHY0VG9US2JWM21kdlRZcTJ6cXVDYWtpUnZEZnU3aUk2?= =?utf-8?B?YllZdGJWRXBXcmxzNVdjMmh6M1BOSWxzSk0yT0FKRllmMEhkZUJEWTZLNmd0?= =?utf-8?B?RkVGL2Mrd1BPK2hMZzR5T2htbFdiSklJbmsrQ1hxMnNFSit2bE1Bb0JhcXFp?= =?utf-8?B?WVVMU09hL2svRjIzTllmeGtNNmljVEYydUpDeUVSSnlRSFU2SWtqcXc4S0Rh?= =?utf-8?B?ajF4eVplQUJFL0ZpSVhjaldZcjhIbjhMelhmRDNHRVd2WHhzWjNWK1JNanlR?= =?utf-8?B?L2NJYlpiaG1RQ3hGc01wSUJVOWx3dGszenNYVzRhVUhNVy9saVF1RXRxaUwz?= =?utf-8?B?UWVJZGxteFVyUG5GS1hrMUgxUjJEY0wreXJqT3BVejBMYWVCUjRYUGZJSTk0?= =?utf-8?B?SGxzQ04xQmQ1Vms3Q0syRG5NbjNKK1d6Wm9hN3dPTW0yLzdIcXBkSmxFdkJr?= =?utf-8?B?UGUzVFJXblcvTzdnZG1JdEhyOVE1R01lcHVLenFVTExwVC8zejBlK0o1aGwz?= =?utf-8?B?OVRVbWZKL0lZcG56Zi9xTUcxYVJUQTBLcnlLbUdaU05NVks2d1ZGeWl0L0ZG?= =?utf-8?B?R09TdDNkeWMxWlFHTWdJOFpZUjdKSy9LandlTHZVSTI3aXI5UHpEakt0MS9p?= =?utf-8?B?YjNLT1RXT3IrenRCQXdJcGZJV3o4ZnpjOFR0WnkxN0ZSU0M3RmZNMGZZaEtJ?= =?utf-8?Q?QiWs9N8VO7q111RFZw2VOWTDS?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 3ac3be3e-421d-4bb3-2766-08db6cbcaa5b X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Jun 2023 09:49:37.2091 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: BugASBaqDVjC5Nvt52JUbs1LJ3Zxmral9HZyaLQyooH1/M4jitMaIha314IMqpPbahGQeBLYH4S4qMTmC47Rkw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBBPR04MB7884 On 14.06.2023 10:43, Olaf Hering wrote: > I would like to share code between the hypervisor and xenalyze, so that > every definition comes from a single place and is not duplicated in xen > and xenalyze. This works as long as simple constructs like struct x {}; > are used. Depending on the data to be stored into the trace buffer, having > support for __packed may reduce the amount of data that need to be copied. > > The tooling currently converts ___attribute__ into compat___attribute__. > Was support for __attribute__ intentionally left out, or was there just > no usecase for it? It was intentionally left out, as the public headers that are subject to compat translation are supposed to not use any compiler extensions. See also our checking that these headers build in plain ANSI C mode (which of course doesn't catch all possible cases, as macros would need actually using in order to spot issues). However, if you're after adding packed attributes, and if you're meaning to only communicate between Xen and the tool stack, then the requirement above doesn't exist. Yet then I would also wonder whether you need any compat translation in the first place. Those packed structures would better be arch-/bitness-agnostic, wouldn't they? So perhaps we could arrange for your additions to be excluded from the compat translation machinery? Another option to consider might be to use #pragma pack instead of packed attributes. (I can't say off the top of my head whether such #pragma-s would survive the translation.) Jan From xen-devel-bounces@lists.xenproject.org Wed Jun 14 09:51:39 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 09:51:39 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548648.856677 (Exim 4.92) (envelope-from ) id 1q9NA5-0007sb-7H; Wed, 14 Jun 2023 09:51:33 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548648.856677; Wed, 14 Jun 2023 09:51:33 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9NA5-0007sU-4d; Wed, 14 Jun 2023 09:51:33 +0000 Received: by outflank-mailman (input) for mailman id 548648; Wed, 14 Jun 2023 09:51:31 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9NA3-0007sI-K2 for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 09:51:31 +0000 Received: from EUR05-VI1-obe.outbound.protection.outlook.com (mail-vi1eur05on20604.outbound.protection.outlook.com [2a01:111:f400:7d00::604]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 09535f38-0a99-11ee-b232-6b7b168915f2; Wed, 14 Jun 2023 11:51:30 +0200 (CEST) Received: from AM6PR10CA0094.EURPRD10.PROD.OUTLOOK.COM (2603:10a6:209:8c::35) by AS2PR08MB9344.eurprd08.prod.outlook.com (2603:10a6:20b:597::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.44; Wed, 14 Jun 2023 09:51:26 +0000 Received: from AM7EUR03FT053.eop-EUR03.prod.protection.outlook.com (2603:10a6:209:8c:cafe::b8) by AM6PR10CA0094.outlook.office365.com (2603:10a6:209:8c::35) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.36 via Frontend Transport; Wed, 14 Jun 2023 09:51:26 +0000 Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by AM7EUR03FT053.mail.protection.outlook.com (100.127.140.202) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.23 via Frontend Transport; Wed, 14 Jun 2023 09:51:25 +0000 Received: ("Tessian outbound 3570909035da:v136"); Wed, 14 Jun 2023 09:51:25 +0000 Received: from e9fc9322af6b.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 7B01051C-A44B-424E-8C99-586B9B1187DB.1; Wed, 14 Jun 2023 09:51:19 +0000 Received: from EUR05-DB8-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id e9fc9322af6b.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Wed, 14 Jun 2023 09:51:19 +0000 Received: from AM6PR08MB3784.eurprd08.prod.outlook.com (2603:10a6:20b:85::25) by AM9PR08MB5985.eurprd08.prod.outlook.com (2603:10a6:20b:286::5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.29; Wed, 14 Jun 2023 09:51:18 +0000 Received: from AM6PR08MB3784.eurprd08.prod.outlook.com ([fe80::5e17:39a6:eec7:c482]) by AM6PR08MB3784.eurprd08.prod.outlook.com ([fe80::5e17:39a6:eec7:c482%4]) with mapi id 15.20.6477.037; Wed, 14 Jun 2023 09:51:18 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 09535f38-0a99-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=BIzVhYmomZWZUbdg4SShtbg54CHyllQjw/0c8ZtktO4=; b=BfTJk2vPUioELh1qUw1FOwmcOlGiukjLG3hnL8HYrs+/Ptd8oSfH3/v0O7eZB3JPXK8QGuB55dUMU3Nj6c1p7b80HgyohU87UWhMY6pLR7IES2OMzaMdiH4UhPnqnw1dmbbYLC954qGUfocqRsmHCTnE8RfiSqGf/2+QfQoE6DM= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C X-CheckRecipientChecked: true X-CR-MTA-CID: 6eabe98afe714aef X-CR-MTA-TID: 64aa7808 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=n9b6dxrBjmj2RlF8PjxYEoZKQupWuJ42T2obGMomaIE5xyPshaGiDvmdPjVsJwDxdMyxjA/4ezsugwGD4fgkIIFk97zLqVZ9ztDHKVqa9kRqOBTlc4JxmMvxQUuV1GNyPorXXnMBsoJA6XFu+Kdp57jY97JZZVSmKMRTNxKLKP7PacehPg1hOoYeWG7DbNtI7gmXVBYrOaobQ5mFS9VK9uft7XpM1gfm0KlTBTlr0p0kYq9LSEkMsavv0xCy5u3PWTBCafOiiiOqDhyN6ChjzHUXbkOrZpT5HbqhNoLd0RKr7ktjRlgQ/TCeS/7uKYYGhQqOw4tuuXGVssdoCtgq3A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=BIzVhYmomZWZUbdg4SShtbg54CHyllQjw/0c8ZtktO4=; b=C1NuC8AJxc9Z1UopNJrDkB3fCDIiO7eQcNu9+8QArw9uvM4inUCGxsceYLUmtdm78C97ChbJDs25AcCYJMd1kIPasCpF/RZZDDA4kbf2+ALWZZIGkNK4baQe1J5ouz4LDXCzaCtneYH5lv9gvCKpZ6kHgu9UKe8nGkwgBEyK+b8Rv2rLImUA+AkG/gR0LCZlbF9FIxbKLq/Wq54De/7EQ6OL9+sOxtrmayb0R+2hYWi2uRFeI08K+dmE/p6r4i6LQB7Kt2ZKoLJh6+hBiviv9LabNyHRQDZx+Jz55FA68ll0970+2nMRgrObUbgP4op1qU5zE9HqKH/c4yF7zK7E3w== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=BIzVhYmomZWZUbdg4SShtbg54CHyllQjw/0c8ZtktO4=; b=BfTJk2vPUioELh1qUw1FOwmcOlGiukjLG3hnL8HYrs+/Ptd8oSfH3/v0O7eZB3JPXK8QGuB55dUMU3Nj6c1p7b80HgyohU87UWhMY6pLR7IES2OMzaMdiH4UhPnqnw1dmbbYLC954qGUfocqRsmHCTnE8RfiSqGf/2+QfQoE6DM= From: Bertrand Marquis To: Michal Orzel CC: Xen-devel , Stefano Stabellini , Julien Grall , Volodymyr Babchuk , Jan Beulich , Andrew Cooper , =?iso-8859-1?Q?Roger_Pau_Monn=E9?= , Wei Liu Subject: Re: [PATCH] xen: Append a newline character to panic() where missing Thread-Topic: [PATCH] xen: Append a newline character to panic() where missing Thread-Index: AQHZnpIm6GPbd9zls0aOGDf+8HsR9K+KDlMA Date: Wed, 14 Jun 2023 09:51:15 +0000 Message-ID: <67F5F6D4-E9B4-4862-ACB4-4A95191D5CD8@arm.com> References: <20230614073018.21303-1-michal.orzel@amd.com> In-Reply-To: <20230614073018.21303-1-michal.orzel@amd.com> Accept-Language: en-GB, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-mailer: Apple Mail (2.3731.600.7) Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-traffictypediagnostic: AM6PR08MB3784:EE_|AM9PR08MB5985:EE_|AM7EUR03FT053:EE_|AS2PR08MB9344:EE_ X-MS-Office365-Filtering-Correlation-Id: 678254da-b17e-4f7f-f1f7-08db6cbceb0f x-checkrecipientrouted: true nodisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: zK+XSsuYnqytE2wRtTd8xLhByt9AP5x7KCkZKV5CKLdx4irL3aFFUsrWH8/OnDggVw3AuX8iN2wmqQfOKD6VAalT8RmbhMyEYX4JOl1EGUCsok31CpwY1Nf0E+C+zfAotg1ZfOluWu0l4pbgkeIdWpX/vGXifF4H/iMMHuGhMEDAI1R/ElarZKRcEvjo6kea74XPjMyVtIpDmcBbK6tonLQsn+vxKIr8TCYAXRKPUn/KxZoG9X2pAl7Ig+Zlb7+RxV74DUltjo8fL+2msxoVj6dyifEkFkW9MgxQpgFgwW4undVNFmbc7YxMx4SR65vt1GMu0g1bQVbr2+yNUTr+Fcynq1WzM+vtHlTX1MCJQa7GjZqHl6idkOaDPpOt5QWtqZK9Cg+j/M3CPcdEPMnOYwlidQo8b4Pi+kyhn6omIyGvtXZ+/Gm98igpZ0gdfXTdxUNngQfQCF7BxEZUksTyDWmrgUdNIwd5d1zEj8zW+FDzLEuDa1MvfLoSV1vlprM/mvGkyJAndS+UGmXccSymyGkYADw07rishlVjGixE/3kxkp2/qndDG2JTA+1aWqjS+/Y7qOCUPwN7oA6yJh7zZaqfLGKrZsIO9ic1YpBmDodJ9cDTyAhkqtmSOGo350lBBQqXFgFZzo2Lu+YuRlJ5sQ== X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM6PR08MB3784.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(366004)(396003)(136003)(376002)(39860400002)(346002)(451199021)(6486002)(6666004)(86362001)(36756003)(83380400001)(2616005)(38100700002)(38070700005)(122000001)(6512007)(33656002)(6506007)(26005)(53546011)(186003)(76116006)(5660300002)(2906002)(54906003)(66446008)(316002)(41300700001)(8676002)(8936002)(66946007)(66556008)(6916009)(4326008)(91956017)(66476007)(71200400001)(478600001)(64756008)(45980500001);DIR:OUT;SFP:1101; Content-Type: text/plain; charset="iso-8859-1" Content-ID: <257FBF3943D0D34698AB8C0642728FC5@eurprd08.prod.outlook.com> Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR08MB5985 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: AM7EUR03FT053.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: a3647276-40ab-447b-a099-08db6cbce4ea X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 6b2YkhlWaVxVwCqrsJtKLNzBwBAAVQT45iorllAXqqaABfN5CN9kNOSkpBSIOMQZtV66/ang7OT33r1cXivaPFv+JXSO16HDHD6toq7LmBBP+t1fgsnSuL8QZEyCBVs5+nog2HU2pYbh1iKBN6QijYkvFTw6pr1e+FtyW1PFj+9X+gKLG+EYm6mne31Ml8OmZcdIm1QTkOBcyUTaAzboKeuXlRp87zW3LtKFOkZZMV2q8osKbOLMqFOSOFxUxXNoE65EX6PsCLOpxTt1PfZafC98DYus1baonLXG0HqHqkjSPXCjqh2i8KUNtZSf8JElVLDAGCnxmEJ7Q3676NW+mP/UEJV1Xst3BGQbri0A2gBhFHkBxTjWrWz3VwMBgg16MgjeYXncA9sHsnVPXj6AzJrNeNQdij97ga4SQeZvSwnleXwFlEpuCpnZF/EZovtk4xJtgwY/f45PqmJqgGZ6nbaEzesrF8a4f0KDVA679eH72zJuB/GuTNASutkBlvjsivnxVSevhFueZ8QnvnvFE+u+8xtPOtaO/lFctLMWQ/7BXQ9QibtFjvlXeWpauHqHAjMcNlRJnQdVRoNY80Msq7XTsU4oOSHl8Fohh0HUNJ3dTBmOExQhA1KVTJ7Hq/vSTy9Zxnoz2fvWWrNDgDsAX3kibHeL75r2gWj3toIvNkV3W7Z1SB7J7XLSn4/3p2xROf6uVzsnMSgUq57COQdnhPwqt8KIKJvnHuym3Fd9HOf6bJtgTJh7Bv4I8MKB55iq X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230028)(4636009)(376002)(396003)(39860400002)(136003)(346002)(451199021)(36840700001)(40470700004)(46966006)(40460700003)(54906003)(83380400001)(6506007)(36860700001)(26005)(33656002)(86362001)(53546011)(2616005)(6512007)(356005)(82740400003)(336012)(82310400005)(81166007)(186003)(478600001)(6666004)(47076005)(40480700001)(6486002)(36756003)(2906002)(41300700001)(316002)(8936002)(8676002)(70206006)(5660300002)(6862004)(4326008)(70586007);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Jun 2023 09:51:25.5774 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 678254da-b17e-4f7f-f1f7-08db6cbceb0f X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: AM7EUR03FT053.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS2PR08MB9344 Hi Michal, > On 14 Jun 2023, at 09:30, Michal Orzel wrote: >=20 > Missing newline is inconsistent with the rest of the callers, since > panic() expects it. >=20 > Signed-off-by: Michal Orzel Reviewed-by: Bertrand Marquis And I agree with Julien: trailing punctuation is not an issue and I would definitely not require you to fix it. Cheers Bertrand > --- > xen/arch/arm/bootfdt.c | 2 +- > xen/arch/arm/domain_build.c | 6 +++--- > xen/arch/x86/cpu/microcode/core.c | 2 +- > 3 files changed, 5 insertions(+), 5 deletions(-) >=20 > diff --git a/xen/arch/arm/bootfdt.c b/xen/arch/arm/bootfdt.c > index b6f92a174f5f..2673ad17a1e1 100644 > --- a/xen/arch/arm/bootfdt.c > +++ b/xen/arch/arm/bootfdt.c > @@ -225,7 +225,7 @@ static int __init process_reserved_memory_node(const = void *fdt, int node, > size_cells, data); >=20 > if ( rc =3D=3D -ENOSPC ) > - panic("Max number of supported reserved-memory regions reached."= ); > + panic("Max number of supported reserved-memory regions reached.\= n"); > else if ( rc !=3D -ENOENT ) > return rc; > return 0; > diff --git a/xen/arch/arm/domain_build.c b/xen/arch/arm/domain_build.c > index 579bc8194fed..d0d6be922db1 100644 > --- a/xen/arch/arm/domain_build.c > +++ b/xen/arch/arm/domain_build.c > @@ -74,7 +74,7 @@ int __init parse_arch_dom0_param(const char *s, const c= har *e) >=20 > return 0; > #else > - panic("'sve' property found, but CONFIG_ARM64_SVE not selected")= ; > + panic("'sve' property found, but CONFIG_ARM64_SVE not selected\n= "); > #endif > } >=20 > @@ -697,7 +697,7 @@ static void __init allocate_static_memory(struct doma= in *d, > return; >=20 > fail: > - panic("Failed to allocate requested static memory for domain %pd.", = d); > + panic("Failed to allocate requested static memory for domain %pd.\n"= , d); > } >=20 > /* > @@ -769,7 +769,7 @@ static void __init assign_static_memory_11(struct dom= ain *d, > return; >=20 > fail: > - panic("Failed to assign requested static memory for direct-map domai= n %pd.", > + panic("Failed to assign requested static memory for direct-map domai= n %pd.\n", > d); > } >=20 > diff --git a/xen/arch/x86/cpu/microcode/core.c b/xen/arch/x86/cpu/microco= de/core.c > index e65af4b82ea3..c3fee629063e 100644 > --- a/xen/arch/x86/cpu/microcode/core.c > +++ b/xen/arch/x86/cpu/microcode/core.c > @@ -524,7 +524,7 @@ static int control_thread_fn(const struct microcode_p= atch *patch) > */ > if ( wait_for_condition(wait_cpu_callout, (done + 1), > MICROCODE_UPDATE_TIMEOUT_US) ) > - panic("Timeout when finished updating microcode (finished %u= /%u)", > + panic("Timeout when finished updating microcode (finished %u= /%u)\n", > done, nr_cores); >=20 > /* Print warning message once if long time is spent here */ >=20 > base-commit: 2f69ef96801f0d2b9646abf6396e60f99c56e3a0 > --=20 > 2.25.1 >=20 From xen-devel-bounces@lists.xenproject.org Wed Jun 14 09:52:09 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 09:52:09 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548652.856687 (Exim 4.92) (envelope-from ) id 1q9NAf-0008NL-GF; Wed, 14 Jun 2023 09:52:09 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548652.856687; Wed, 14 Jun 2023 09:52:09 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9NAf-0008NE-DK; Wed, 14 Jun 2023 09:52:09 +0000 Received: by outflank-mailman (input) for mailman id 548652; Wed, 14 Jun 2023 09:52:08 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9NAe-0008Hm-Hr for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 09:52:08 +0000 Received: from EUR04-VI1-obe.outbound.protection.outlook.com (mail-vi1eur04on060c.outbound.protection.outlook.com [2a01:111:f400:fe0e::60c]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 1f39d96f-0a99-11ee-8611-37d641c3527e; Wed, 14 Jun 2023 11:52:06 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by PAXPR04MB9678.eurprd04.prod.outlook.com (2603:10a6:102:23c::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.41; Wed, 14 Jun 2023 09:52:03 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.039; Wed, 14 Jun 2023 09:52:03 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 1f39d96f-0a99-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=fY/uEuNp93tAcB0oZEYxiML7pO48uNenoCpm9kjIKspAjJy9Huy1h19jHcqlDVrRWGgCOoDSg2ZjATq4heP0An43hfCZW0k7en55QHsWuI2kLjoXkYF9aUp7Q4NUVNd76DfwlVcJnDlkCyd62O/t7qOoYdfCkRDppCqmy80aho2wcx1LsK6rac3UQ92AQ96q0Rb3AUeBgMpcZZRpRfL1/1NcA1NhNNA/agkBnvnEwuMbGz0ciVPB580To7zRcvrR2v4G53S9UztWqj3I+GATyrqneZdGqvaKcsjxUYECxaMh+iGoFGsg+4Ux2LqEnc9TbmR3Ga/bMFEHGBHLvLe1tA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=emQ64Lv88G/BXXTzejJVzE/hH+/6Uqek0GKlq2M4ZaU=; b=DSeYLkFw/JtisFXjHTbbgvGhqejAd6VC0gRL+jF8zt5jrETnCknFcHAAsg5BS7ihxMs1rtAQ7Hf+yHMAi6eVEjSn9KS7HNHF+om4u/BlUABIQtwUKYiGRmAPa0uxT06ukN8aOIBgCgA23v7X64b7XgjFbkU7WptkHXLufEy5bGr3LyYpLWLoPAhjVE8xLdEoyjx+bQ4+c29adSl3QcJrJtN/hQByo42bJtZBk53T9LRS0S8OK/2XxNDwICWxhXohpmXYh6aCxAJxSdmr6Zg7OTmc4WJnEzSoSSpZngBoPwfddD3nnuftE42mrWnqsX6It7c5cERrlQfyIDFq7SDoDw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=emQ64Lv88G/BXXTzejJVzE/hH+/6Uqek0GKlq2M4ZaU=; b=gMd91jtYFcGdAVycMs5l0LWN1mNLzyf1b96lvEVi8rAdV2SNaizktXjCCTQazhimFwNJvEQrOq2/CZGE4bPHAQDistDUj/oefmqwGRinaniY98x1Do9+hFuqXTI8J5b5qu8g1hfuKjGd/XwXPJsdIGIvZOPJLIyDthKKBrj/VH4DJVnAEj0NqfBxSr+KgJ5yYiSwdnoBkRi9bvHgeHn76hICFvR9zJfd15RnIyB8s4cVMlQAMfXDudAukHKA/qbpo5uFP9lN3f3bzyl+quaHJDag0/Cqz6nPbFE9SecleP35+3PZU8TgtLHSFXjNWJkh31ICAkGCLRN6WOQtLSV6eg== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <16aa7c82-7cab-8129-f995-3097990ab147@suse.com> Date: Wed, 14 Jun 2023 11:52:01 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH] xen/arm: Remove stray semicolon at VREG_REG_HELPERS/TLB_HELPER* callers Content-Language: en-US To: Michal Orzel Cc: Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk , xen-devel@lists.xenproject.org References: <20230614094144.9533-1-michal.orzel@amd.com> From: Jan Beulich In-Reply-To: <20230614094144.9533-1-michal.orzel@amd.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR3P281CA0003.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:1d::22) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|PAXPR04MB9678:EE_ X-MS-Office365-Filtering-Correlation-Id: 797a9109-397e-41dc-9c7f-08db6cbd0191 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: JsSA4jQiMcHkMHHrjFMMGnvJSptuiC99+5XSexk5CNzYVE4dCZIZTqpFGWS7+DsbbbFm2+oURbapZDkAQm318q2+4cOUjiRT1UW2+JJ0xjuyfegmZED/VoQ0MRComxB8CpSSBbjeDOL29wjyPTFFCz4r2fothDUyvGGwk939dkTCHm1hJTHaynAmd3ddoeZ4DW6ii/hJ9fOrTXB6Nz78mBrs+HfGsjQTab8DS1POmQCd4TBBzTSz5CCS6ZpgjMaHDJnqG7IP9d2yDprgKw6yiVHa0ABboKs9FXAJbUVWSl9XyZnjvzk4Lm6fgJbUOetDeGbgOMvxTPQJxNA9PYzLGAHhZYKGM5fuS7LAwgLWQ2f5aWdVSf8lAXkdb36AeNLUlnXCEwZZIKowRnc864iQ85KyXDAu+gIhxJ4NVovj9kknTSd8gXpm20/dkPNKFb+XiPp/zbTd4ZCVp7m4fSpxr8SWIhg+695u0QzQC/LfJg5bjhXltupgAELfb5POqF6plVjYql90sp4yrazjdtp1FlRKgiXmdv6t6m2NwauTWJJkuiCpDkejWBaH/V3QuHipi7QLo2MN/h8CiMyz7LJi2oTm5Uw/wplPmX5yquUO3p7xpEccUJrEXeIaOIUijcOF X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(376002)(346002)(396003)(136003)(366004)(39860400002)(451199021)(38100700002)(5660300002)(31686004)(8676002)(8936002)(4744005)(2906002)(41300700001)(316002)(66946007)(66476007)(66556008)(4326008)(6916009)(31696002)(54906003)(478600001)(2616005)(53546011)(186003)(966005)(6506007)(26005)(6512007)(86362001)(36756003)(6486002)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?dkUyRVNMTCsrQ2drYk85enlEUEdMVmtpNkwvZi9VUFBrWXZWUC9SRmtWZGhE?= =?utf-8?B?czNDTUFBdjlaYlpueUZhYytaYzRWVTdEaWtSakVEU0piaXdWdGZHMGxLOTZm?= =?utf-8?B?N0wybHg3QmFKRnNKVkRKRFFJZXo0Smw3bThsZTBEeWdmUWlNcmlVNFYvSUh5?= =?utf-8?B?dm9rVXdnMERWcWFVNFJlOGxscUF0a1IzQU9Vd3pRTytyKzZ4Nk9FVDVnM082?= =?utf-8?B?ZGdXZ2FBWHBaYXhLc25VdmcxMlNEeTNnUE51R1dtSEFqSTJQWVVCS2pmODFM?= =?utf-8?B?Uk5CUytoZFBFKzZmcUFPbmFwN1VBTG1rMThkTlJ3aXhMZmE3bVBFVkJsNkZS?= =?utf-8?B?Nk93aTZxZTF5ejVicmlIQlhiNzloeEt2TVVtRmdEWmM5WENFQjI5cEtzOGR1?= =?utf-8?B?MnFsbm13V29BWkliZU5Qb0lBVXpWa0hUQTRKK2t1Y3EwemgxaTQxUGl2TmRv?= =?utf-8?B?c25iOXp4clB5azZ2dkpnNG01YUF2M3FnNVo3RFR4WGpRemN6Zy9henduVDJ0?= =?utf-8?B?WU1SK05xWTMrSzZhalVzNjJ0SHVTR1k4K0tONVlHclRISmloQzJ4U1Z3WVla?= =?utf-8?B?S3NwKzlYZGplcG1vbkxwaUJJKy9BbFd2TnFLYUNWcjJ1YkZWMHVqLzczVEl2?= =?utf-8?B?azIraXJDZkM2dkVHcjlOU2g2OXpkSEZxTmlqL3h0UUZPaExYaSt4dGpsU1dO?= =?utf-8?B?Y0dZWHB2ZitQdGp3VlJYczd2Y2pRQS9IRmpxYjNIUTlYNnU1Zm1LaGJUa0xZ?= =?utf-8?B?NnRwYjZGcXYyQ1lWUzlpMXlObzJqUFlnRHZkVGp2QUhUTDZJbXBWSk4vR0o4?= =?utf-8?B?bHRpKytwR2RoMVc5VWd1OWlPR3JMUDdSZ28zTC9tSGdIeUg2MUlYYTlrL2hD?= =?utf-8?B?RUkrSThPRFpGcFQzYlJpSHBYMHkzOHlDVGRrS3ptdlh3RVhHbnpoY2xMOHdT?= =?utf-8?B?dWhBWnZpTGhDaDdVWTZsbUZLVnhNOGlWZCt4ajNqUkNHaWtqMmRvU2l4UlpR?= =?utf-8?B?ZDIrbFBtYmk1cVdXcU5kU0V1R3UxZllHaGg1WnJaU0cyTFo0aHoxU091c3ox?= =?utf-8?B?Y2p4RmxjckNEbWdYZzBXNlN6M3k3cit5cDJBTlN1NnlCTnh1OWRVNEh5U2xC?= =?utf-8?B?akhUeEtYSEVaY21qZXczU2Zhdk5Qbys1NEc1N0Fna2ZWb3lvbjc1RjFraDJD?= =?utf-8?B?STVkL2Z6Uk9TVUo0ZTUwVVRuL1JvOTFlRHZzOTltR24vMklrU3pNRjhRRmhV?= =?utf-8?B?U2dUWVFybHFDZXZ5WlRncm5Ea3JJRzhOdlRHRVNWOGtYZlArLytja3BnZDlm?= =?utf-8?B?RFlUREpyaDBrWmJ2MDVBYklzY3hJTVVrUFBTN095RVo1bzNiUmpkb2NQRGto?= =?utf-8?B?a3V2REYwZXBrNHBCMkdiaG9hT05tcmlpaG5iekc3c2ZVR2ZYUDJULzdkS0Nr?= =?utf-8?B?WFJQQjRXUFRlQTQzd3pTMXRwa1YwSkhHenlneGIzY1czS2VETDBVdzBibkNC?= =?utf-8?B?SjV1RjhQMVlmTWtIUXgrK2lvNHd3N3E0YnZ0L25uc1lNRFdRNFRpNU5MTlRi?= =?utf-8?B?NHNFVTVvY1FseVVMZzYyWEVJN0tPZ3BJbDZXZm5QR3pyYkpkNjhwSWNzSzFX?= =?utf-8?B?S2FmdzZENGY3N2NqU241NEU2WjJYbEhSdnY5SjM1MHMvaWdHMVg3TnRhK2dI?= =?utf-8?B?bjdKRmVLeHhENllnb1g2c2R6R2JFQVdZdWkrNkhMSVovejdkUC82TlhyNkd3?= =?utf-8?B?QzloNmsxR2RpQm9KVG4yanlZb0dNZU5qMitwdnBmOW5HVXBVRlRBclcwZjRJ?= =?utf-8?B?aVIvTjJuWlMrSlAvOEpkaFQ1Tk1DVHB0MEZiV2R1RU4wOGlIcVFhOVM2K1RI?= =?utf-8?B?RUhDWkJFRXNUQmFxT0h6VUJyQVBWdXlrdURUNWFsdGxrK3Jabi8yMEdwM1JT?= =?utf-8?B?MVFhYXlLN0JNNHQzTzNNSHduTTcrT0hzMEtIT0tLajZqdG5rdVZ3b2trODdC?= =?utf-8?B?cHJZSldpSTlad1ZRVGZsc2pKbTBabFYxRTVPc2tBWmhGekNKR3ZtUk13eEZp?= =?utf-8?B?UXJtZzRuVTFtNDcvZFF6aHJvMzZIUEI2NnJYUyt5L01ZRk1VdHFNdnJub2JN?= =?utf-8?Q?iqNylZp4T3KuE9etHPLv0yVqD?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 797a9109-397e-41dc-9c7f-08db6cbd0191 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Jun 2023 09:52:03.7298 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 5gwjJdqQrU/7mWvPxqW7H05tKvRRb3eu0WMV4LObhYIytTWloqhHp44tAuFrc2rhScXSkz9vJdHJAQ9qrvOE5A== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB9678 On 14.06.2023 11:41, Michal Orzel wrote: > This is inconsistent with the rest of the code where macros are used > to define functions, as it results in an empty declaration (i.e. > semicolon with nothing before it) after function definition. This is also > not allowed by C99. > > Take the opportunity to undefine TLB_HELPER* macros after last use. > > Signed-off-by: Michal Orzel > --- > Discussion: > https://lore.kernel.org/xen-devel/17C59D5C-795E-4591-A7C9-A4C5179BF373@arm.com/ > > Other empty declarations appear at callers of TYPE_SAFE and Linux module > macros like EXPORT_SYMBOL for which we need some sort of agreement. As said elsewhere, I think we should finally get rid of EXPORT_SYMBOL(). For TYPE_SAFE() I think some re-arrangement of the macros can address the Misra concern. Jan From xen-devel-bounces@lists.xenproject.org Wed Jun 14 09:53:15 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 09:53:15 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548660.856698 (Exim 4.92) (envelope-from ) id 1q9NBb-0000al-TA; Wed, 14 Jun 2023 09:53:07 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548660.856698; Wed, 14 Jun 2023 09:53:07 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9NBb-0000ae-Q5; Wed, 14 Jun 2023 09:53:07 +0000 Received: by outflank-mailman (input) for mailman id 548660; Wed, 14 Jun 2023 09:53:07 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9NBa-0000Ey-Uq for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 09:53:06 +0000 Received: from mail-lf1-x136.google.com (mail-lf1-x136.google.com [2a00:1450:4864:20::136]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 42e5d7ca-0a99-11ee-b232-6b7b168915f2; Wed, 14 Jun 2023 11:53:06 +0200 (CEST) Received: by mail-lf1-x136.google.com with SMTP id 2adb3069b0e04-4f629ccb8ebso8153263e87.1 for ; Wed, 14 Jun 2023 02:53:06 -0700 (PDT) Received: from [192.168.202.197] ([94.75.70.14]) by smtp.gmail.com with ESMTPSA id l12-20020ac2554c000000b004f76a7e9c62sm9346lfk.173.2023.06.14.02.53.05 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 14 Jun 2023 02:53:05 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 42e5d7ca-0a99-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686736386; x=1689328386; h=mime-version:user-agent:content-transfer-encoding:references :in-reply-to:date:cc:to:from:subject:message-id:from:to:cc:subject :date:message-id:reply-to; bh=orKzMoBpUMdeeyr8hpkefDRWm3s2KPw5fPgz93hCHUs=; b=YZ2B+B3wMLFHQChDhCELhZbRvLBtC+a5KmoZdWD7rTaPJfRUM0+Zm8tEjE77BgMB/h 7R+hdZ+hsiWhnYPnnBgsGHDG3NsHrL6xEe/+nO5K/Ua3xVpNv8IlOFQo7rlJCXBePdI6 xkuzd2fnR8Z7mspiTIshWu9LQ/5YOMS921CF47XziiDy8mUy6AZqz2tQc1uMM9Ysz3Oe C/D5k2A1N0FS4ZAxlo/EpfNNZZbbvHuBqLJMxn+LYQDEY4QU+LJYF26RqNEuWZY7pClp IS7DYcX9gzFhbJ2AXoUfpzaHbn909qIFZGZL93+/JtQI0+YlUKKovGmJJL0MHGnz50ho hjTQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686736386; x=1689328386; h=mime-version:user-agent:content-transfer-encoding:references :in-reply-to:date:cc:to:from:subject:message-id:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=orKzMoBpUMdeeyr8hpkefDRWm3s2KPw5fPgz93hCHUs=; b=dBY1DpQzU5l/NTBQW6d3YZHou0J2ELf93z3Y6i1Uhox/3I7KZvcV9lF9C+nlFKZGs1 DYGsgmSAUltEliH9ox/fps9I30p4NRkoIkqfvjnQ1lu0hJ2azKJx8xtWfdvylyMJgjvd F1ILXpByMz0Wi6UqNcTxcN6OoUCO3UkTX+w49YZJ43pS6Idcs5nOho7mOMCz4b+CvaOi gdW9LOmzg0XAClj/JHOJo2cLa3iIAdtLpFreMWQtA0XfpngNnyVBIbLnxQtndBkOIcfi rI/syf8EoRHS8D6pzXxdbmIyKysH1vlHob+ciTDyz/WUYCLkJCGtSYtWCtp2lDlsm7Ri QBWQ== X-Gm-Message-State: AC+VfDzBBwzMipnNT9DKLN1yXHT89SFS/tmFUiK8UbEraoIWlFIyR23T ts48bBNHuJsQVsKqwuMPdFA= X-Google-Smtp-Source: ACHHUZ6bZW1JA0m22CiOmY09h65F2KsqNnqKxW0l8u+8XB8tLph1H7L9KNzp0dgoQvpPZeAEplXv9w== X-Received: by 2002:a19:2d08:0:b0:4f6:2629:6cf3 with SMTP id k8-20020a192d08000000b004f626296cf3mr6190253lfj.46.1686736385637; Wed, 14 Jun 2023 02:53:05 -0700 (PDT) Message-ID: <30573cb954cc18f976da8b646a43352445991ee0.camel@gmail.com> Subject: Re: [PATCH v1 5/8] xen/riscv: introduce identity mapping From: Oleksii To: Jan Beulich Cc: Andrew Cooper , Bob Eshleman , Alistair Francis , Connor Davis , xen-devel@lists.xenproject.org Date: Wed, 14 Jun 2023 12:53:04 +0300 In-Reply-To: References: <32aef31768cd81ffc8c848af6c29cd8510bbbf6d.1686080337.git.oleksii.kurochko@gmail.com> <4ac462c3-9cb6-f467-2b86-925fb068486d@suse.com> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable User-Agent: Evolution 3.48.3 (3.48.3-1.fc38) MIME-Version: 1.0 On Mon, 2023-06-12 at 16:24 +0200, Jan Beulich wrote: > On 12.06.2023 15:48, Jan Beulich wrote: > > On 06.06.2023 21:55, Oleksii Kurochko wrote: > > > -void __init noreturn noinline enable_mmu() > > > +/* > > > + * enable_mmu() can't be __init because __init section isn't > > > part of identity > > > + * mapping so it will cause an issue after MMU will be enabled. > > > + */ > >=20 > > As hinted at above already - perhaps the identity mapping wants to > > be > > larger, up to covering the entire Xen image? Since it's temporary > > only anyway, you could even consider using a large page (and RWX > > permission). You already require no overlap of link and load > > addresses, > > so at least small page mappings ought to be possible for the entire > > image. >=20 > To expand on that: Assume a future change on this path results in a > call > to memcpy() or memset() being introduced by the compiler (and then > let's > further assume this only occurs for a specific compiler version). > Right > now such a case would be noticed simply because we don't build those > library functions yet. But it'll likely be a perplexing crash once a > full > hypervisor can be built, the more that exception handlers also aren't > mapped. It makes sense but for some reason it doesn't crash ( I have a bunch of patches to run dom0 ) but as I mentioned in the previous e-mail I agree that probably it would be better to map the whole image using 1 Gb page table for example. >=20 > > > - mmu_is_enabled: > > > =C2=A0=C2=A0=C2=A0=C2=A0 /* > > > -=C2=A0=C2=A0=C2=A0=C2=A0 * Stack should be re-inited as: > > > -=C2=A0=C2=A0=C2=A0=C2=A0 * 1. Right now an address of the stack is r= elative to load > > > time > > > -=C2=A0=C2=A0=C2=A0=C2=A0 *=C2=A0=C2=A0=C2=A0 addresses what will cau= se an issue in case of load > > > start address > > > -=C2=A0=C2=A0=C2=A0=C2=A0 *=C2=A0=C2=A0=C2=A0 isn't equal to linker s= tart address. > > > -=C2=A0=C2=A0=C2=A0=C2=A0 * 2. Addresses in stack are all load time r= elative which > > > can be an > > > -=C2=A0=C2=A0=C2=A0=C2=A0 *=C2=A0=C2=A0=C2=A0 issue in case when load= start address isn't equal to > > > linker > > > -=C2=A0=C2=A0=C2=A0=C2=A0 *=C2=A0=C2=A0=C2=A0 start address. > > > -=C2=A0=C2=A0=C2=A0=C2=A0 * > > > -=C2=A0=C2=A0=C2=A0=C2=A0 * We can't return to the caller because the= stack was > > > reseted > > > -=C2=A0=C2=A0=C2=A0=C2=A0 * and it may have stash some variable on th= e stack. > > > -=C2=A0=C2=A0=C2=A0=C2=A0 * Jump to a brand new function as the stack= was reseted > > > +=C2=A0=C2=A0=C2=A0=C2=A0 * id_addrs should be in sync with id mappin= g in > > > +=C2=A0=C2=A0=C2=A0=C2=A0 * setup_initial_pagetables() > >=20 > > What is "id" meant to stand for here? Also if things need keeping > > in > > sync, then a similar comment should exist on the other side. >=20 > I guess it's meant to stand for "identity mapping", but the common > use > of "id" makes we wonder if the variable wouldn't better be > ident_addrs[]. It would be better. but probably we will remove that variable if we agree to map the whole Xen instead of parts. So I'll wait for your response before starting to work on new patch series. Thanks a lot. ~ Oleksii From xen-devel-bounces@lists.xenproject.org Wed Jun 14 10:05:02 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 10:05:02 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548665.856708 (Exim 4.92) (envelope-from ) id 1q9NMw-0002Km-Va; Wed, 14 Jun 2023 10:04:50 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548665.856708; Wed, 14 Jun 2023 10:04:50 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9NMw-0002Kf-Sg; Wed, 14 Jun 2023 10:04:50 +0000 Received: by outflank-mailman (input) for mailman id 548665; Wed, 14 Jun 2023 10:04:49 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9NMv-0002KZ-NO for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 10:04:49 +0000 Received: from EUR03-AM7-obe.outbound.protection.outlook.com (mail-am7eur03on2060f.outbound.protection.outlook.com [2a01:111:f400:7eaf::60f]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id e4881cf9-0a9a-11ee-8611-37d641c3527e; Wed, 14 Jun 2023 12:04:47 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by AM9PR04MB8569.eurprd04.prod.outlook.com (2603:10a6:20b:434::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Wed, 14 Jun 2023 10:04:44 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.039; Wed, 14 Jun 2023 10:04:44 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: e4881cf9-0a9a-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=M6mkw856OVefNB8qX3viFEJqrv7xHkOV+Wr3nR+Lgke40gvhwS0Y8iKblwdAAhm4hkG4Slg2N8NySU+ZMAlVPFkTl92qMzhwgAZHaqaj/riToi5bvdUYcJU4q8W3TVbVdVEnBEeQ3pdXyx164yXWHDp4atHKB12tgBbE5YMaV81L0BrBvXWXWVLFEH+7J8OJxQeG8+H98MyYEEMUpPHeEFKO7vkP9CHZwg/+LT9+iLDfeGcuZTdUZBZuyFNyqE6Sw7HhQWp+LA7gU/MeLPTsQxYmQo8tDXzMycoEEX4rtJrr3QtKS1oUAEBow6YLOR8Uap/1RejreY56CT7FnoNQyA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=9Gs5SDCLc/imJXrCJIBf58B+16w/IX8Vx3OoprBkPtA=; b=OlF1kZ6I8vvtG5T8P8xxRGSZmGFLlutW6g9o0K/IXZ4ZusimnxItps2LN6snf09CQ+p1bp+1xqntCuV3GOcDKXOI2lnYiJ95q0nivUMbIudHN0tF3vIfst4zO3qy2bJne6pw29kL2naaNJ4wfpFp5BtzWP6S3NJag50pRgQDBFAd5g+dQJLBJI94mKMaj1qhCQH8oQxj5P3367p95TFUv7vjllu3zezAt7jvWpabDnljhajDA27zkYwa1IwLwViM+TL0w5z6wzVZFd+ej2pnOdsujoZW7EqRbbVu9ewteTylrsypH7dHJkshumQgDuWKuTnUNv4hzohE+rqJOGf1Ow== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=9Gs5SDCLc/imJXrCJIBf58B+16w/IX8Vx3OoprBkPtA=; b=dfmYQJG1YH4qRXn9Dc/IC1mQ7ercvqh9htqnIAy6xR7/xAJ5JKVft0Kjq1rJtBFwyOSb7wuXxeSE0PpkqGFhEvJnAFavn017BW5fdTsO5K0JE4yo2VQsrQ2dCNLMO2NybM0Q2UR4TH6gAvs6hRA0JYLFUyFxKAQ2A7HynJBlypVADoz9GhHTA6eDX0hgsuRRKQZ+f8biI6QULITI9oYQpYLcO6WQ5EqUzxOt7CVM/YzwCT4dKP8tSt/N8RRBFL1lnwOP1MnTbrs/c+IGST52aGNtzs2RDNaF0bzGFGB9k+xF3tr2c0HOo3quzbVmPB8pPrIyhGd8kHKMqTcTFBP4Cw== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <0dd8283f-ad73-8590-3800-0f9a00b4a281@suse.com> Date: Wed, 14 Jun 2023 12:04:41 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v1 5/8] xen/riscv: introduce identity mapping Content-Language: en-US To: Oleksii Cc: Andrew Cooper , Bob Eshleman , Alistair Francis , Connor Davis , xen-devel@lists.xenproject.org References: <32aef31768cd81ffc8c848af6c29cd8510bbbf6d.1686080337.git.oleksii.kurochko@gmail.com> <4ac462c3-9cb6-f467-2b86-925fb068486d@suse.com> <3fa74b20c3516dbeaceada0f8e045d697f926000.camel@gmail.com> From: Jan Beulich In-Reply-To: <3fa74b20c3516dbeaceada0f8e045d697f926000.camel@gmail.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: FR0P281CA0233.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:b2::6) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|AM9PR04MB8569:EE_ X-MS-Office365-Filtering-Correlation-Id: 21236a24-7ad4-4ef6-c2a7-08db6cbec6ac X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 3y/ZxgOlpDbt6UeueLTn8PydJbwcNDxFdJR7Dbkojf5E0w/BzUuveBiQHmjDw0irLicXDXavClqf2eHzPXuH/4sU363dDiztV62z9N14gBi6TDw4j5gHnUSSXHgXf7LV1U6VFeqy0GRs3bIMLZ6YEbpft6kvB15XsVDQzQ5yWhXaRXQ9fMLLUMl5Us1vhIqWrAqApKpuO0k/IQQJwsqsywldxpCpgz9muPVeUte+y4Xat4xs27FwcoQKtjsYCLNsJZLotd8gV6R8CAgj/gDq5KsBfl5fQyacSULytNg5KQEEHpkIaF633s211ITN8WkpiV+fjikxhYKDf0q9IyRO0CgZUPnWuxBJiyN6bNteaLNlAnFJyL/f9nDCZGGTpi+TEzvBkYlPRlKuukgWwDCb8Ba32SXZ/RYDl/iina8STOfbmJkTiWRw1Eh43ZWX6/wFa5pgbM37Hhj9Ub7FxactZm/ZSmla3fOCQNqcWuEfjoGYCxGbUgTmsLKiL3yQx6XwNKB5mfpkOQ8ifz9oexJwKuV8LMqPGV7vM1vKde11iNFiUoa19nztiA7AbS5uo8HwJbLdAAK2FclIzi8BORuh3FCU7o4tORySP7SVI3Xqzju4q6F/Fxu2jhWD35QIN9a8DB/VMOfY8RoJQz6lTDQb7g== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(376002)(346002)(366004)(136003)(396003)(39860400002)(451199021)(316002)(41300700001)(54906003)(31686004)(5660300002)(2906002)(8936002)(66946007)(66476007)(6916009)(66556008)(8676002)(478600001)(4326008)(6666004)(6486002)(36756003)(31696002)(38100700002)(2616005)(186003)(86362001)(26005)(53546011)(6506007)(83380400001)(6512007)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?OUl1WVJUSW9SblZqWXptRFpFR0UrRkczanI4elplWGtVWTMrYm9hRmw1TGVa?= =?utf-8?B?d0ZhVll6YXVZZ0dMZHo5VjR6Slk3aHdYODFQVHF3dE1DdGdJN0VaRVo0a0No?= =?utf-8?B?ams1Tlg1aTRsR3UzUy8vdE5ZUGU4SDFmTmJ2SU5Xd29pZTcxVEVrUE4zY0hs?= =?utf-8?B?VG9SN3hzQWd4VklNT0I0ZVZZclZhcWNtRkhDYU5jd1kwZUpUVGhnZnB4OGd6?= =?utf-8?B?UFJVMWVRKy92TmJIcEF3VTI4eTQ5eEgyTExHV3BTVDl1dEtYTlZQVElGRFFJ?= =?utf-8?B?QldZaDUwYlFTTHMvRnVoNE1tVW5LSWh0MjFQR2E1aWlOVzhoZVljRG1vbDgw?= =?utf-8?B?VXd6ZEJlU3Vra09ia2RpNXE0TTBiMndIY3NlQ2J5M1lRQjBGWUdkSE1YM0tw?= =?utf-8?B?a2F5d0s0UUVvdENoUkRFalpETEJGZVk4SDRmNkFISE9Ybjg0blZoTnRlU0c5?= =?utf-8?B?MlpkZUFQaEpOSWpvc01VdVA1TFlncG1Dc2UxeVFTbWpoY2w2Qm9GdEpJUlQy?= =?utf-8?B?VHJjWUFqRGdvSmp5ZkxRaitFMi9QZVZOQmhWRXVTRCsyNFBUY1ZUZmtEYjRW?= =?utf-8?B?bjhCUHNlQ0dlNTRoOERJVWxTWU0rczFYYm1uTGFUVFhNV3poUjZrcHlhUEs5?= =?utf-8?B?Ti9YdXY4cDVvYzZWdVlJRTJleHc3M2NNMkdkQnl1S2xXcEpJdzROdTR2UFN2?= =?utf-8?B?ZU56Q2xOZ3BuWG9jTlF2aS9ZdEpDNGtMLy9hSXd2U1lIdXJValFrZzV3bVFV?= =?utf-8?B?WW55VXZZM3BSUlZmc2kzOHpXY3UxdlFrdnRpZ05selJYdnYvK3RxVzNEMFk1?= =?utf-8?B?TWFjaVlJbjJydE5KMW40SXF6OEt6UVFlR3hMT3JHeENDcEZBZWhmMDI2MVZX?= =?utf-8?B?a1AvbEVHcllyY01GekJKK0F1NStKQWY3bXJNMFE0emV3ZTFEenphWGFOMkdp?= =?utf-8?B?UDVkYXVsMEtDRmVRMExJbVBnTThkcGdWUkdhaXRHdnhvU0c4SEV4L1ZLY2E5?= =?utf-8?B?RkZMZmhsQi9BeWFTNFhlcFB2UmVNL09MbEhJZ1B5dUNFWXBtRkU5TmtMQ3BR?= =?utf-8?B?RHBRMXYzKy9LTlRSMGIzNE96Z0QvLzd1SGRMWjQ4UVd0QWtLRnQ3bVA5SzZC?= =?utf-8?B?THdKYkNWY2lBMnNoZVNtZXpkMUpmcEd6WnZscG5SNkdFdmlNOVAvbXduNnM2?= =?utf-8?B?RVBMWUhzRjVkdC9jWjdHamtyVnRJOU5MYU1ZeCt6TWcxcTJEWUhJdXVSQ1dH?= =?utf-8?B?SS8wUDBmbTFUeGdBY3RhUTlyVVlFd1d0alFEN2NQb0lnUUxiRnlzakpMQmRo?= =?utf-8?B?Zk5kdUhkTGhaeFpycjZLZHFmM3dmaENYZTZJTk5hdTljeDliNTB1TTlCVGNs?= =?utf-8?B?bStsMGFnMjArKzRiTjhQT3JMTUYvOGlhQVVQRjhGRGc3SzM0TFlvanY2dzBa?= =?utf-8?B?YlRxQUFZa1Z2OVJ5OXZJUnduVkdWTC84Rzd5SDhsQjJWMWUrNklLQ2dONmhB?= =?utf-8?B?Q3VmNjRKSGx2RjlFMXdmOGUyYWtJdCsrSzZtT080eVNvRXpBdmpJRUlsSkhZ?= =?utf-8?B?MkNiTXI0Y1h0SmIxSjJvcURWd1VuMXlqeDVWK0pPVS9vSlhQR0ZKWFJualhl?= =?utf-8?B?K3VvL0tobnNiQzMrZ2lNOERpdmNQSkpmZytrZTdZbXl2UFJZNnNVS0Rvdmtt?= =?utf-8?B?TTJHYTNFNWdCaS9NdVY2Q0luMGIxNzA2R2lFN2J1L2VoUktmT25WYUM0a3gz?= =?utf-8?B?SGJYaFRBeEZGWDUxS3I4MU5NaCtuVWFwTitoTG5ucjgvc2ZMV01NUG1BODAz?= =?utf-8?B?eGw1NDBBUEFDOWpZSWJLeUhpSFpIRnFWRHBPUWZ3ZjZzSVA0MGd2ZDMxemNn?= =?utf-8?B?QnFSTHBaTWd1UzZsT1dvQ04wRFNNNlpjNjRxWndNbFZwVFdDamZjVlhVcjVB?= =?utf-8?B?d1J3OS80VzEvcWtNbXYyY2ZZN2MrSmJHR3FXRldsc1Zwb2NoeW5rZHlrZGM4?= =?utf-8?B?T1JtbWdtWWtTdWZLbFBrb3JxaFlyNmVHMXp3SjgwVVZhT1hKekZEUWVvdnJO?= =?utf-8?B?TFJIUktlc3JyYloxQXZva0Z2R2l6dEdqcW5zRmNtNUd1am5oc1ZsK3oxQ0NR?= =?utf-8?Q?reIr+d1g6kGk0qYgIZQYXvEEv?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 21236a24-7ad4-4ef6-c2a7-08db6cbec6ac X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Jun 2023 10:04:43.7792 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 01RAUl6Lq71+w5AooJu7IeO9L3UDUxYf1/VDXt1Qq38f4oQ5ifstfKrz6RJOSUjN0u/fj8kR6MLrhaVFSBZGMA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR04MB8569 On 14.06.2023 11:47, Oleksii wrote: > On Mon, 2023-06-12 at 15:48 +0200, Jan Beulich wrote: >> On 06.06.2023 21:55, Oleksii Kurochko wrote: >>> The way how switch to virtual address was implemented in the >>> commit e66003e7be ("xen/riscv: introduce setup_initial_pages") >>> wasn't safe enough so identity mapping was introduced and >>> used. >> >> I don't think this is sufficient as a description. You want to make >> clear what the "not safe enough" is, and you also want to go into >> more detail as to the solution chosen. I'm particularly puzzled that >> you map just two singular pages ... > I'll update a descrption. > > I map two pages as it likely to be enough to switch from 1:1 mapping I dislike your use of "likely" here: Unless this code is meant to be redone anyway, it should just work. Everywhere. > world. My point is that we need 1:1 mapping only for few instructions > which are located in start() [ in .text.header section ]: > > li t0, XEN_VIRT_START > la t1, start > sub t1, t1, t0 > > /* Calculate proper VA after jump from 1:1 mapping */ > la t0, .L_primary_switched > sub t0, t0, t1 > > /* Jump from 1:1 mapping world */ > jr t0 > > And it is needed to map 1:1 cpu0_boot_stack to not to fault when > executing epilog of enable_mmu() function as it accesses a value on the > stack: > ffffffffc00001b0: 6422 ld s0,8(sp) > ffffffffc00001b2: 0141 addi sp,sp,16 > ffffffffc00001b4: 8082 ret > >> >>> @@ -35,8 +40,10 @@ static unsigned long phys_offset; >>>   * >>>   * It might be needed one more page table in case when Xen load >>> address >>>   * isn't 2 MB aligned. >>> + * >>> + * 3 additional page tables are needed for identity mapping. >>>   */ >>> -#define PGTBL_INITIAL_COUNT ((CONFIG_PAGING_LEVELS - 1) + 1) >>> +#define PGTBL_INITIAL_COUNT ((CONFIG_PAGING_LEVELS - 1) + 1 + 3) >> >> What is this 3 coming from? It feels like the value should (again) >> somehow depend on CONFIG_PAGING_LEVELS. > 3 is too much in the current case. It should be 2 more. > > The linker address is 0xFFFFFFFC00000000 thereby mapping the linker to > load addresses > we need 3 pages ( with the condition that the size of Xen won't be > larger than 2 MB ) and 1 page if the case when Xen load address isn't > 2MV aligned. > > We need 2 more page tables because Xen is loaded to address 0x80200000 > by OpenSBI and the load address isn't equal to the linker address so we > need additional 2 pages as the L2 table we already allocated when > mapping the linker to load addresses. > > And it looks like 2 is enough for Sv48, Sv57 as L4, L3 and L2 > pagetables will be already allocated during mapping the linker to load > addresses. I agree the root table will be there. But depending on load address, I don't think you can rely on any other tables to be re-usable from the Xen mappings you already have. So my gut feeling would be #define PGTBL_INITIAL_COUNT ((CONFIG_PAGING_LEVELS - 1) * 2 + 1) >>> @@ -232,22 +242,27 @@ void __init setup_initial_pagetables(void) >>>                            linker_start, >>>                            linker_end, >>>                            load_start); >>> + >>> +    if ( linker_start == load_start ) >>> +        return; >>> + >>> +    setup_initial_mapping(&mmu_desc, >>> +                          load_start, >>> +                          load_start + PAGE_SIZE, >>> +                          load_start); >>> + >>> +    setup_initial_mapping(&mmu_desc, >>> +                          (unsigned long)cpu0_boot_stack, >>> +                          (unsigned long)cpu0_boot_stack + >>> PAGE_SIZE, >> >> Shouldn't this be STACK_SIZE (and then also be prepared for >> STACK_SIZE > PAGE_SIZE)? > Yes, it will be better to use STACK_SIZE but for 1:1 mapping it will be > enough PAGE_SIZE as I mentioned above this only need for epilogue of > enable_mmu() function. But then it should still be the correct page of the stack that you map (the top one aiui). >>> -void __init noreturn noinline enable_mmu() >>> +/* >>> + * enable_mmu() can't be __init because __init section isn't part >>> of identity >>> + * mapping so it will cause an issue after MMU will be enabled. >>> + */ >> >> As hinted at above already - perhaps the identity mapping wants to be >> larger, up to covering the entire Xen image? Since it's temporary >> only anyway, you could even consider using a large page (and RWX >> permission). You already require no overlap of link and load >> addresses, >> so at least small page mappings ought to be possible for the entire >> image. > It makes sense and started to thought about that after I applied the > patch for Dom0 running... I think we can map 1 GB page which will cover > the whole Xen image. Also in that case we haven't to allocate 2 more > page tables. But you then need to be careful about not mapping space accesses to which may have side effects (i.e. non-RAM, which might be MMIO or holes). Otherwise speculative execution might cause surprises, unless such is excluded by other guarantees (of which I don't know). >>> --- a/xen/arch/riscv/riscv64/head.S >>> +++ b/xen/arch/riscv/riscv64/head.S >>> @@ -31,6 +31,36 @@ ENTRY(start) >>>   >>>          jal     calc_phys_offset >>>   >>> +        jal     setup_initial_pagetables >>> + >>> +        jal     enable_mmu >>> + >>> +        /* >>> +         * Calculate physical offset >>> +         * >>> +         * We can't re-use a value in phys_offset variable here as >>> +         * phys_offset is located in .bss and this section isn't >>> +         * 1:1 mapped and an access to it will cause MMU fault >>> +         */ >>> +        li      t0, XEN_VIRT_START >>> +        la      t1, start >>> +        sub     t1, t1, t0 >> >> If I'm not mistaken this calculates start - XEN_VIRT_START, and ... >> >>> +        /* Calculate proper VA after jump from 1:1 mapping */ >>> +        la      t0, .L_primary_switched >>> +        sub     t0, t0, t1 >> >> ... then this .L_primary_switched - (start - XEN_VIRT_START). Which >> can >> also be expressed as (.L_primary_switched - start) + XEN_VIRT_START, >> the first part of which gas ought to be able to resolve for you. But >> upon experimenting a little it looks like it can't. (I had thought of >> something along the lines of >> >>         li      t0, .L_primary_switched - start >>         li      t1, XEN_VIRT_START >>         add     t0, t0, t1 >> >> or even >> >>         li      t1, XEN_VIRT_START >>         add     t0, t1, %pcrel_lo(.L_primary_switched - start) >> >> .) > Calculation of ".L_primary_switched - start" might be an issue for gcc. > I tried to do something similar and recieved or "Error: can't resolve > .L_primary_switched - start" or "Error: illegal operands `li > t0,.L_primary_switched-start'" Matches the results of my experiments. If I can find time, I may want to look into why exactly gas is rejecting such. Jan From xen-devel-bounces@lists.xenproject.org Wed Jun 14 10:09:10 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 10:09:10 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548670.856718 (Exim 4.92) (envelope-from ) id 1q9NR0-0002wO-FB; Wed, 14 Jun 2023 10:09:02 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548670.856718; Wed, 14 Jun 2023 10:09:02 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9NR0-0002wH-CC; Wed, 14 Jun 2023 10:09:02 +0000 Received: by outflank-mailman (input) for mailman id 548670; Wed, 14 Jun 2023 10:09:00 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9NQy-0002wB-Lf for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 10:09:00 +0000 Received: from mo4-p00-ob.smtp.rzone.de (mo4-p00-ob.smtp.rzone.de [81.169.146.218]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 79f89808-0a9b-11ee-8611-37d641c3527e; Wed, 14 Jun 2023 12:08:58 +0200 (CEST) Received: from sender by smtp.strato.de (RZmta 49.5.3 AUTH) with ESMTPSA id L38909z5EA8vl68 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256 bits)) (Client did not present a certificate); Wed, 14 Jun 2023 12:08:57 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 79f89808-0a9b-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; t=1686737337; cv=none; d=strato.com; s=strato-dkim-0002; b=lZQkmG6gUo8dXBUvhQmzk2v7XhnqrNc/tA8RvjNaU/g9Dh25Y0FTkWSO+918cQkzez zDOg0XlZRv5WM2itWpaZuWfOIbAImhDcmpaIBfUVfW1QNRZJcdyV4yUh8BV6eLNqn5hA /MSx709TVhvPFC12I1ucgSNMPX98wRwPpx3t+IE0A9SeK63MwMG1r6verDXcO/CBflkQ Pin2Tirs+5r8OYyd0WANUVoASLPbZiFGLjumrguUeEyYF9mt7RQSWRZoBI+63983FRep Y6/8R0O/WVnKBUqDTQxuDpN/JkPolPg5S1EH7q71vneEeDURVFJp18GCB4UKKn27/wE7 FD6Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; t=1686737337; s=strato-dkim-0002; d=strato.com; h=References:In-Reply-To:Message-ID:Subject:Cc:To:From:Date:Cc:Date: From:Subject:Sender; bh=6ZbBq/+/Mg97MaoGiiimJ71ZwYCPFfKpYvoi5JiMjb4=; b=ODqIa+NAV1oXvEFkni0G2gMQCsv0WxxJ2Tq+tGjpylgmyk6Y+hu56QnpwEKs5bmaom 0n5NeCGRxdgjyMuhiZcsYbejiK/wX3u+fHFp+8iOD/m7MO1PDZl+FWh21ijChSq0DRvt N1NBTuWD4ayN15jdKRot/q+agNQ5appbND354QH5Qa4D4p6GVs2CyVGDpH73mGXlDYi3 w7Tc8w2QWHllmDtaJ1LoT8EA5O5FuESDWw4l0Pg74D3vkav0/b6fPbLMDZY9RCZsEwUn N+AtIFowCFOnvvkxnj+ThrpCMo3xn9X5cflotsm72CgTi5yPfMGgN+ULfmiWokap/4bk wjjw== ARC-Authentication-Results: i=1; strato.com; arc=none; dkim=none X-RZG-CLASS-ID: mo00 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; t=1686737337; s=strato-dkim-0002; d=aepfle.de; h=References:In-Reply-To:Message-ID:Subject:Cc:To:From:Date:Cc:Date: From:Subject:Sender; bh=6ZbBq/+/Mg97MaoGiiimJ71ZwYCPFfKpYvoi5JiMjb4=; b=alWOBSOYzbWFnKRC6XFNhdHqh8G28TuPO/ZNcDEq10aKp/zR6zHDooPnPyaD7KFeD3 F3zkB/h1xiItHweZpVbADK4Uem7+ggoHmLSzAGPZz3BREdTWw49vNh8TrgA8fNP1R6KI VrHT0e1D/JLOZ4hzqv/nFhiFqIVj4afrxW9/hQxIXaIvPFyN0OIYGLds/ZWafqxYqhUY 9vZWdNEyrQ6zncctQrz/+3JD9b54tRzJNcjOJHcsrveEsKhEoY+qKtUkEIOSgUwONrbQ mIquAZ/MVm5x+sy2YIS3lvZav2ncD/ljTL3Z4+21bj58xyPDtcvDTSz4Cfv5/SWriDLd hXUQ== DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; t=1686737337; s=strato-dkim-0003; d=aepfle.de; h=References:In-Reply-To:Message-ID:Subject:Cc:To:From:Date:Cc:Date: From:Subject:Sender; bh=6ZbBq/+/Mg97MaoGiiimJ71ZwYCPFfKpYvoi5JiMjb4=; b=IqHbRNiW9iY4IPdEMCWmjKuMilg9aLio2atPS/mPe6AMGceLwimMf97LzQFRPaQT+i p+e3+cBAKSEVSRNs35AQ== X-RZG-AUTH: ":P2EQZWCpfu+qG7CngxMFH1J+3q8wa/QLpd5ylWvMDX3y/OuD5rXVisR5AB2Ibh3sRFQAfajHZ8Hr2i7N1ImBUHmXWy0PQg==" Date: Wed, 14 Jun 2023 12:08:50 +0200 From: Olaf Hering To: Jan Beulich Cc: xen-devel@lists.xenproject.org Subject: Re: compat code lacks support for __attribute__ Message-ID: <20230614120850.6b4d0d32.olaf@aepfle.de> In-Reply-To: References: <20230614104234.56835aa9.olaf@aepfle.de> X-Mailer: Claws Mail 20230601T090920.68bc28c0 hat ein Softwareproblem, kann man nichts machen. MIME-Version: 1.0 Content-Type: multipart/signed; boundary="Sig_/=_C11xtIT4EACuM9BnUMiT2"; protocol="application/pgp-signature"; micalg=pgp-sha256 Content-Transfer-Encoding: 7bit --Sig_/=_C11xtIT4EACuM9BnUMiT2 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: quoted-printable Wed, 14 Jun 2023 11:49:35 +0200 Jan Beulich : > So perhaps we could arrange for your additions to be excluded > from the compat translation machinery? Is there maybe a place for headers which are not public, but which are visible for tools/ and xen/? I think the trace functionality would be a candidate for such local shared headers. Olaf --Sig_/=_C11xtIT4EACuM9BnUMiT2 Content-Type: application/pgp-signature Content-Description: Digitale Signatur von OpenPGP -----BEGIN PGP SIGNATURE----- iQIzBAEBCAAdFiEE97o7Um30LT3B+5b/86SN7mm1DoAFAmSJkbIACgkQ86SN7mm1 DoC54A//aH/VXUGxvz3mGKJbyxw7nkl3ELyJNDfnBJKU9eb9jBVsmjkc2+Hgbub9 m+rcMV+bdLM5F66KssYNHiEBnyeg3f1zHGyUtnrXAuTiO4rsi63+afwGnrnZMY7n G87TQePaczunN4mxZirh+cRMtPJelJA/QZINO3+VijrDUxrl0FrXtSGA3J/fZ68V mWPdIf9/cZKWhK+18gmi7RwAB92J66rb9DPRRfY8UU9lmsNUWkpCuZS8jRPpB7WA 2FifzQTMWzf9oS5XDDPkIKo0KEByQzi8kr4yr5/568hUPPcK6TGxozUT+61G0bn7 ygEe7Ea8xA/Ocj/TZ8HzhTBaKXPFXVCury7OUxZ7aboHqU2aIy8r2cAM/e5i6l8e kKeVSFEO/MVVqGDF4aOpI7dPLNOJexg/P9+3wArQCs5/lI/NiHCnfL0zL7dBfJZP 3GkfwBlIkzGqsY9DK/LI396OPnTyc5swfEgY9bAVvhywffN/O80d4OY045Vk0HYm iAzP4EB4Go+C8IsWNr1LRRM3bsJWM+sNHntZK+g/30slg3xzsn0aSZUSasagkcE0 DTV7IVztPtGrv4MWqPiDNJRWpfLPu4SXC+UgsiFAvACBAYq7HBj4hUZSG/jTO2LP vVyrXuxex2G+QTQuO69CX663Y2xxjMao3SSdSxxwF751TQ9tmNA= =Nult -----END PGP SIGNATURE----- --Sig_/=_C11xtIT4EACuM9BnUMiT2-- From xen-devel-bounces@lists.xenproject.org Wed Jun 14 10:26:52 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 10:26:52 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548689.856771 (Exim 4.92) (envelope-from ) id 1q9Ni2-0005uW-GZ; Wed, 14 Jun 2023 10:26:38 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548689.856771; Wed, 14 Jun 2023 10:26:38 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9Ni2-0005uP-Dp; Wed, 14 Jun 2023 10:26:38 +0000 Received: by outflank-mailman (input) for mailman id 548689; Wed, 14 Jun 2023 10:26:37 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9Ni1-0005uJ-FL for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 10:26:37 +0000 Received: from EUR01-VE1-obe.outbound.protection.outlook.com (mail-ve1eur01on061a.outbound.protection.outlook.com [2a01:111:f400:fe1f::61a]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id f06099fa-0a9d-11ee-b232-6b7b168915f2; Wed, 14 Jun 2023 12:26:35 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by AM9PR04MB8620.eurprd04.prod.outlook.com (2603:10a6:20b:43b::23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.37; Wed, 14 Jun 2023 10:26:33 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.039; Wed, 14 Jun 2023 10:26:33 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: f06099fa-0a9d-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=XFfTvVnJHh6xxX5uzq9RN/yv1/K0UUjgO5J873BqmdTy0JGccxyGMzl8Y0jMeBHC2BEjKXoHhK97Otcf77w4MeghgsLVabzpt5OPHJbHSKzPJjaVuzbV9egaeMaMY/LYd2lHQRcDxE/orhXNCIGVeNMyvx1EYjD2GvpHxU0Ui0jIQ3P2AoApszMblVIVIM74pdPz2KH9ayaOxrr2XcAvTdv+WE79yT2+gDYroy7DEUZmR3wZwS9yGpR2mtm45iCu5dYONbqsfgnMjVLE1N89q23Gtobni8DgeXIdNv4hSJfhEsZm2pvIWjRWkjRDuBMbjTSbYjkwbGyvehTSVAxlsQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=bvunzSABM5VefzDQnaIUOO5ataf1NXi6TrR0B3u7FPM=; b=Y4EeubsMsYyvN2R9phD3SulvTzHvJr6Bb/pD+yzk4w1KUsF1oZlZaGHwGhkFlzsv5MrmVx/QdyKEWK3vFXpPqNUY6FAMY5tbSY5U1x1cS3eNIkx+styWX+1KE7Jj87ewk6vYdnut28/jDwgRLzWCQm62jHLWwDP+72Nlj5lDceZfeWcc1q9HSPvfExpUfa7isKi6cUncWxMuxIVDlYuzSOEDpHip3FbffE45QlJsYxoZPVVL/XtpO9rccRK5z2VWDGAbChjqFWhovRse+HY4hu7Em8zR5FfakMCjEL8huc0zy42JjeMsb151+te7gxHuah8GMUHKK/x2dPEQmCHPZA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=bvunzSABM5VefzDQnaIUOO5ataf1NXi6TrR0B3u7FPM=; b=UhB+gBGWABeRsNEE2o0kJe7D79B23+5zG2tnaDqj2gP6XP4CZnza5OX1yl6R2rt9msyrOfdBd0RFcdvW04anW3Bx9AOXi6tDXcC/aHEJ9MSuol2/rCVytUW29AQLqfQGxragao/fwwEM9yPtaub7hPg8Ey/9TdNskW/wlBSN2ywdrtjuRBQMVHXGOgFC1iCehRPmiHimZQFS68qySdefYr1SMq+C+kpal/K/+MNmm73Q35NLmx6TT1A5a3YnPqsBL7PpBx4X4hE9rbHej/FBVDrh5SLW2D/l30p8aPOQRqQbYmvXfQKfGVmWb9iBtBRuR9pe+6VdeqfUQO7eC0MUtw== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: Date: Wed, 14 Jun 2023 12:26:31 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: compat code lacks support for __attribute__ Content-Language: en-US To: Olaf Hering Cc: xen-devel@lists.xenproject.org References: <20230614104234.56835aa9.olaf@aepfle.de> <20230614120850.6b4d0d32.olaf@aepfle.de> From: Jan Beulich In-Reply-To: <20230614120850.6b4d0d32.olaf@aepfle.de> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR0P281CA0107.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:a8::20) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|AM9PR04MB8620:EE_ X-MS-Office365-Filtering-Correlation-Id: 464f84d8-f30f-4818-1e3d-08db6cc1d31a X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: jQunePnoil1iA+wHf4W8DpQxeyq0idyPY4RRSSVyfpXEoyA6rRcF4hkAd1EcLl0aU+VLNnyGxwSADl0bddvqcp7Am9qVejUU0YDYgasyLX0zBW5HQuJi4/Mq+FGkL8BxkPKM63gdkAqsQdIJ/IsQaUjoK3Aa3VW4Na10uirGh1y4yi3/SaFRevI1mugOb5sNtD0hafXilncJ19sbKkGEEM58kz+xYeOUXSpIVR3VjVo4V8EqTXGg1QK3CTyjkxrdj3uo+KGA9oUmpbb+9B/1NgaCXTRwN6DNj/onN8ikcV7CyU/7HUkXV+Exw0CBaTIP8axj/1WZaOGpzW4wD/xXcWISTcWr395CKD4FbZEDrCVyIaL+YgPM8a2Vc8Sc5c0P2eWRTvWcUAAeUOCJFkPcFI07HK7S3aTEU1KN82GcstVS0vKND0tIMTw2Kz6v9jQNcJM2b9kPPRszdi6Rb7CzDqHeB+ZBWznXT/NHxu99YpZPXJxFJj1KS0/Ds/2rxFnhkq2BtQsk7/4M1BVN7hpnDpEJP2gwIMx/thBJuUEzhcDy7oiJqbUQ+1ntHqTAxnfZDIVDjJFgJ5tS8OYaXnp2lQ90z1hB8+/PRoj16b2xTc/9V0ebLjnwg3kxFdky1iVNqrwWKLhoF6i4N6zPKXzK+A== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(39860400002)(366004)(346002)(396003)(136003)(376002)(451199021)(5660300002)(186003)(6506007)(2906002)(31686004)(2616005)(41300700001)(6512007)(8936002)(26005)(8676002)(6486002)(316002)(31696002)(53546011)(36756003)(478600001)(38100700002)(86362001)(4326008)(66476007)(66556008)(66946007)(6916009)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?bEdwQVdxZ01PNFh6OVBzUm05MUZHV2VaQWlhUjI5dm1RZCswa0xLOTZNMUpR?= =?utf-8?B?QVdPQmFpMEtGYTVCYVl3ay92MUpRNU5Hb1VMd1pvV3BnTFNiWVZONmlwcUJs?= =?utf-8?B?UC9QaXp0S2VIWExQNnlWSG1OVjBSdVo5ZzZOTFFKV3AxeFJlcXpucWpkNmFR?= =?utf-8?B?YzMzUGtnczNNMmNtUmZrRlNWL3pXeUh3cHZoTW03OXc1M2swRFJrU2JCSUhD?= =?utf-8?B?ZWN4S0ozUXNzdTR4Y2NYQ0JNelRuM2w4a3lmZitXVzdUM0xGLytRK3pzeFhp?= =?utf-8?B?bHljNk9ON3I0THNzQXZlTzhad2RrdGZLRkR5RWlSWS9zaUtLNGJrOWxiZmhi?= =?utf-8?B?bldrMlNvcjg0bStnYVRkT0RZTFpGRmNEYkNJWVRWRkcyQ05mVW5aMWk5ZXRk?= =?utf-8?B?T0RQYWFaTFpBUDUrRlR4N2hUMGVEajFYM3o1bXp5VHZTSElFTlM5SGx1cXRs?= =?utf-8?B?UGMvOXdPdktCbU9RUzI0R0lmeWtQQUxTMjE5c2JoNmdCaXNYSUQrUkhYZ1NI?= =?utf-8?B?czdzK2VxbmxqekxLV01hSWJrZGx1cGpvOG9SZ1YyN1VuMWVKZU0rNnpYdjNJ?= =?utf-8?B?MlBHVGU3bDBncDZWc0sxczdQM2VmNUVkYmdEclRXYWt6MnM4NVcza0VNSFl4?= =?utf-8?B?WjA3TDFzVFh3QnE1cmEwTVo1WUdSTG1vWXAxVDNhRC9KWVRQQjBGZFVEUTMx?= =?utf-8?B?RVkrTmRQSm1ZZUFsZ3k3K3JTcTZqZkdyR1FUQjdISTNGZnJYb2JaQzQ2S05S?= =?utf-8?B?bUdlMFpEaEJxVk92Q2R0RnpFRjFNY0hmWGhIK0dFN2swK2JhQkdhZnl2cEIz?= =?utf-8?B?b3JXRXJoTmJVNCtWQTBDNS9vYWpIaEJpY3hmZmN3MXZZVzczRWFrUVo4UGlK?= =?utf-8?B?WlYxYU5vRCtwVmZTeElkYXR3cmp1QWhqZUhMSFZXNUxoaktyaThpMnpGNkpm?= =?utf-8?B?c20vS2xtUU1Wd1QrOG5Kakw2YjVvSERISzV3ZXRkZnRCcExwa3VsWmV5enpM?= =?utf-8?B?eWFnZzJ5K2RWNDBVQ08vYllqR3JEd2l2TCtuTzljWmZycnVHWVQxVlRUZTVK?= =?utf-8?B?WXQ1ZjBoNDdEaHJ5ZTgvdE1FS2I3ejc3NWF2RHNOMG9uN1grdVdWalA0WTVa?= =?utf-8?B?SzhSY2JZUGk5TCtBR3lyU1RFMVNuTnk1aU5rUUJoRmpVREV2Y3F1a04zUENv?= =?utf-8?B?WUxXczhDeXZhekJTZ1FOT0VvNXoxeTAxSlovekFERFI1MWRSUFV5YmtQL0pU?= =?utf-8?B?eTVobGllSmpJc1NESUdvTzBVSCt6VHhjS01QajhINjMyS0c5MmNoUWQ5eXdS?= =?utf-8?B?UnhGQlJPMGFuTXBtTWxidncrVVVQWDF0TGJ2bzF0dkZERFpQeUJHaUJ3SXBZ?= =?utf-8?B?N0kxcWk1RUNEUFVIZjVFaXdHYmdDRTNFWHFRWldnakJxV1JMRndncHlaaE1O?= =?utf-8?B?SWhsM1ZDbmN2N1JTSjJnM1ZUY245cndEbWdaTE52eDdTSUdQTkN3V2FNZDZR?= =?utf-8?B?RDkvMUtHeGhyU1poa1dKZW9oQVh6dDA5YlRHR1FFSWVDK2cwbnI0V3ZaZWF5?= =?utf-8?B?UVFGZHdzd05Xcmh0ZkxKMXJRcDZBSERuZjgwaTNzQkRDaWpUM1BEckZvY1NS?= =?utf-8?B?NFllaW1OaXluSU9oam1DQm1PZUxlTDk1eXVhU3Z3d0VlL2lZTVV2QXFwNEVL?= =?utf-8?B?YmY0MnZMNDdVaXFhQVI5K01LZHAxTG5neFU4NDgwblFvNnpYb21xak5Qazlo?= =?utf-8?B?SjFVRE8xeXJQcy9uLzEyMk1DOGxnc0JOZ01QSzVmOGVVNS9ua3VLNDhjRjZB?= =?utf-8?B?VkxEdjh2Y3RvMW5ETFFNcTRxa2haVUVoQXZUS2RteVo0dk5US0tmdEtHdUVw?= =?utf-8?B?b3NjSmtYclJjNHRVeHMyeGJtYithZXEvTm5wSUxXRkpONE1nbFgvbGI3bEEv?= =?utf-8?B?aGd1UFdvQVg4d2NLUWJNNGJXMUQyMmVwSEgvNENLQlFKKy8yODNIZmdwNS8v?= =?utf-8?B?RHZqSmNtbnczbnp1eWpPRTd0NWlPSFpDTkUrMngwUTVSeG4razQxSDNxQm1C?= =?utf-8?B?c3p5NjY4WHEycGhIcXUwc2xLcUNhUTV4aFl6VEdGcitpb2JKcGhBTGMxdktU?= =?utf-8?Q?GUpc/b/ckhamo98fe3TraPhgS?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 464f84d8-f30f-4818-1e3d-08db6cc1d31a X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Jun 2023 10:26:33.0433 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: /OT8GdGobfO4Taj4uAxTK99LzA9iNLOb2NjeVYL4J1z2vC9lknDJwhtvxF4RV0zYSkEZczQl2uQRhk/Rcp+aRQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR04MB8620 On 14.06.2023 12:08, Olaf Hering wrote: > Wed, 14 Jun 2023 11:49:35 +0200 Jan Beulich : > >> So perhaps we could arrange for your additions to be excluded >> from the compat translation machinery? > > Is there maybe a place for headers which are not public, > but which are visible for tools/ and xen/? I think the trace > functionality would be a candidate for such local shared headers. I'm not sure I understand what you're after. The "public" here means the externally visible interface of the hypervisor. Aiui the header your thinking of still falls in this category. In how far checking and translation need to be done for any particular header under public/ is controlled by xen/include/Makefile. So if you were to introduce a new header for your specific purpose, all would depend on what, if anything, you add to that makefile. I don't think we currently have any header which is entirely unmentioned there, but with the right justification I don't see why this couldn't change (or perhaps such a header might simply be added to headers-n, so it's clear that it wasn't just an oversight that it's not listed anywhere [else]). Jan From xen-devel-bounces@lists.xenproject.org Wed Jun 14 10:27:43 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 10:27:43 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548694.856782 (Exim 4.92) (envelope-from ) id 1q9Niu-0006Pr-P9; Wed, 14 Jun 2023 10:27:32 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548694.856782; Wed, 14 Jun 2023 10:27:32 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9Niu-0006Pk-MH; Wed, 14 Jun 2023 10:27:32 +0000 Received: by outflank-mailman (input) for mailman id 548694; Wed, 14 Jun 2023 10:27:30 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9Nis-0006PW-TT; Wed, 14 Jun 2023 10:27:30 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9Nis-0007EL-PA; Wed, 14 Jun 2023 10:27:30 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9Nir-0001Ht-W9; Wed, 14 Jun 2023 10:27:30 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q9Nir-00015A-Vh; Wed, 14 Jun 2023 10:27:29 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=3o1UjkC2V/WhTNKKjSOXv3lsQHn7UPsntZ4Kw5masDQ=; b=N2ZzAn24bDMb9TC0T6R5ntjdLB emNCHGTIw5tD7PdHGvJoR+inKji7mNv6xQFODnmgSSDI1H0Jyxjkn63gnoGRZ46rK4MwsSXoUPADw fnRvySOYEU6CCO+SZIGr0y9USsJtDkt0eyQjkIVeU65ezNIxSmYJaHdNFIiKTx1P8LBU=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable test] 181415: tolerable FAIL - PUSHED X-Osstest-Failures: xen-unstable:test-amd64-i386-livepatch:xen-install:fail:heisenbug xen-unstable:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:debian-hvm-install:fail:heisenbug xen-unstable:test-amd64-amd64-xl-qcow2:guest-start.2:fail:heisenbug xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:windows-install:fail:heisenbug xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-vhd:guest-start/debian.repeat:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking X-Osstest-Versions-This: xen=2f69ef96801f0d2b9646abf6396e60f99c56e3a0 X-Osstest-Versions-That: xen=b4642c32c4d079916d5607ddda0232aae5e1690e From: osstest service owner Date: Wed, 14 Jun 2023 10:27:29 +0000 flight 181415 xen-unstable real [real] flight 181420 xen-unstable real-retest [real] http://logs.test-lab.xenproject.org/osstest/logs/181415/ http://logs.test-lab.xenproject.org/osstest/logs/181420/ Failures :-/ but no regressions. Tests which are failing intermittently (not blocking): test-amd64-i386-livepatch 7 xen-install fail pass in 181420-retest test-amd64-amd64-xl-qemut-debianhvm-i386-xsm 12 debian-hvm-install fail pass in 181420-retest test-amd64-amd64-xl-qcow2 22 guest-start.2 fail pass in 181420-retest test-amd64-amd64-xl-qemuu-win7-amd64 12 windows-install fail pass in 181420-retest Tests which did not succeed, but are not blocking: test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail in 181420 like 181398 test-amd64-i386-xl-vhd 21 guest-start/debian.repeat fail like 181352 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail like 181385 test-armhf-armhf-libvirt 16 saverestore-support-check fail like 181385 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail like 181385 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 181398 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop fail like 181398 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 181398 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 181398 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop fail like 181398 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop fail like 181398 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 181398 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop fail like 181398 test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-i386-xl-pvshim 14 guest-start fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-i386-libvirt 15 migrate-support-check fail never pass test-amd64-i386-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-i386-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 15 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-armhf-armhf-xl-multivcpu 15 migrate-support-check fail never pass test-armhf-armhf-xl-multivcpu 16 saverestore-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass test-armhf-armhf-xl-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 15 saverestore-support-check fail never pass test-armhf-armhf-xl-arndale 15 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 16 saverestore-support-check fail never pass test-armhf-armhf-xl 15 migrate-support-check fail never pass test-armhf-armhf-xl 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-libvirt 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 16 saverestore-support-check fail never pass test-armhf-armhf-xl-credit2 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit2 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail never pass version targeted for testing: xen 2f69ef96801f0d2b9646abf6396e60f99c56e3a0 baseline version: xen b4642c32c4d079916d5607ddda0232aae5e1690e Last test of basis 181398 2023-06-13 01:52:10 Z 1 days Failing since 181406 2023-06-13 13:40:10 Z 0 days 2 attempts Testing same since 181415 2023-06-13 22:37:07 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Alistair Francis Andrew Cooper Bertrand Marquis Jan Beulich Jason Andryuk Juergen Gross Julien Grall Olaf Hering Oleksii Kurochko Roger Pau Monné Viresh Kumar jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64-xtf pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-prev pass build-i386-prev pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-xtf-amd64-amd64-1 pass test-xtf-amd64-amd64-2 pass test-xtf-amd64-amd64-3 pass test-xtf-amd64-amd64-4 pass test-xtf-amd64-amd64-5 pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl pass test-amd64-i386-xl pass test-amd64-coresched-i386-xl pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm fail test-amd64-i386-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-i386-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-i386-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-i386-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-i386-qemut-rhel6hvm-amd pass test-amd64-i386-qemuu-rhel6hvm-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-i386-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-freebsd10-amd64 pass test-amd64-amd64-qemuu-freebsd11-amd64 pass test-amd64-amd64-qemuu-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-i386-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-i386-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-i386-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-amd64-i386-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale pass test-amd64-amd64-examine-bios pass test-amd64-i386-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 pass test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 pass test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine pass test-amd64-i386-examine pass test-amd64-i386-freebsd10-i386 pass test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-i386-qemut-rhel6hvm-intel pass test-amd64-i386-qemuu-rhel6hvm-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt pass test-amd64-i386-libvirt pass test-amd64-amd64-livepatch pass test-amd64-i386-livepatch fail test-amd64-amd64-migrupgrade pass test-amd64-i386-migrupgrade pass test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu pass test-amd64-amd64-pair pass test-amd64-i386-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-i386-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-i386-xl-pvshim fail test-amd64-amd64-pygrub pass test-armhf-armhf-libvirt-qcow2 pass test-amd64-amd64-xl-qcow2 fail test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw pass test-amd64-i386-libvirt-raw pass test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds pass test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-amd64-i386-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-i386-examine-uefi pass test-amd64-amd64-libvirt-vhd pass test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd pass test-amd64-i386-xl-vhd fail ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Pushing revision : To xenbits.xen.org:/home/xen/git/xen.git b4642c32c4..2f69ef9680 2f69ef96801f0d2b9646abf6396e60f99c56e3a0 -> master From xen-devel-bounces@lists.xenproject.org Wed Jun 14 10:28:20 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 10:28:20 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548703.856792 (Exim 4.92) (envelope-from ) id 1q9NjV-00070K-7Z; Wed, 14 Jun 2023 10:28:09 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548703.856792; Wed, 14 Jun 2023 10:28:09 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9NjV-00070D-3Q; Wed, 14 Jun 2023 10:28:09 +0000 Received: by outflank-mailman (input) for mailman id 548703; Wed, 14 Jun 2023 10:28:07 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9NjT-0006zm-9k; Wed, 14 Jun 2023 10:28:07 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9NjT-0007FJ-7g; Wed, 14 Jun 2023 10:28:07 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9NjS-0001JO-Td; Wed, 14 Jun 2023 10:28:06 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q9NjS-0001uG-T4; Wed, 14 Jun 2023 10:28:06 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=ljefUbzkxXXUE9pkUqgozsL9enxJ7+rVDmRh+awaxZU=; b=siCq3pvO6jC0PyKEaXZ/PHt3ZV a1+19oE1PXObLlY48C/iMMlwabjO1syPmyua1iGkC/7ZuUYc5ugsk/m+fJrL2oBFP9544tsWAXD5q MO3gqwLp3xhBqX6a6T8HKEZURxNlidGScYowzJa/jkUNbWuUN1udanLlLde6OzHEZt2Y=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [qemu-mainline test] 181419: regressions - FAIL X-Osstest-Failures: qemu-mainline:build-amd64-xsm:xen-build:fail:regression qemu-mainline:build-arm64:xen-build:fail:regression qemu-mainline:build-arm64-xsm:xen-build:fail:regression qemu-mainline:build-amd64:xen-build:fail:regression qemu-mainline:build-i386:xen-build:fail:regression qemu-mainline:build-i386-xsm:xen-build:fail:regression qemu-mainline:build-armhf:xen-build:fail:regression qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-i386:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:build-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:build-arm64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:build-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:build-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pygrub:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking X-Osstest-Versions-This: qemuu=7efd65423ab22e6f5890ca08ae40c84d6660242f X-Osstest-Versions-That: qemuu=6972ef1440a9d685482d78672620a7482f2bd09a From: osstest service owner Date: Wed, 14 Jun 2023 10:28:06 +0000 flight 181419 qemu-mainline real [real] http://logs.test-lab.xenproject.org/osstest/logs/181419/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-amd64-xsm 6 xen-build fail REGR. vs. 180691 build-arm64 6 xen-build fail REGR. vs. 180691 build-arm64-xsm 6 xen-build fail REGR. vs. 180691 build-amd64 6 xen-build fail REGR. vs. 180691 build-i386 6 xen-build fail REGR. vs. 180691 build-i386-xsm 6 xen-build fail REGR. vs. 180691 build-armhf 6 xen-build fail REGR. vs. 180691 Tests which did not succeed, but are not blocking: test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-xl-xsm 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-raw 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-xsm 1 build-check(1) blocked n/a test-arm64-arm64-xl 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit1 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit2 1 build-check(1) blocked n/a test-arm64-arm64-xl-thunderx 1 build-check(1) blocked n/a test-arm64-arm64-xl-vhd 1 build-check(1) blocked n/a test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a test-armhf-armhf-libvirt 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-qcow2 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-raw 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a test-armhf-armhf-xl-arndale 1 build-check(1) blocked n/a test-armhf-armhf-xl-multivcpu 1 build-check(1) blocked n/a test-armhf-armhf-xl-rtds 1 build-check(1) blocked n/a test-armhf-armhf-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-amd 1 build-check(1) blocked n/a test-amd64-i386-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-raw 1 build-check(1) blocked n/a test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-i386 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-amd64 1 build-check(1) blocked n/a test-amd64-coresched-i386-xl 1 build-check(1) blocked n/a test-amd64-coresched-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-xsm 1 build-check(1) blocked n/a build-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-shadow 1 build-check(1) blocked n/a test-amd64-amd64-xl-rtds 1 build-check(1) blocked n/a build-arm64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a build-armhf-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a build-i386-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-amd 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-pair 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-qcow2 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-vhd 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvshim 1 build-check(1) blocked n/a test-amd64-amd64-pair 1 build-check(1) blocked n/a test-amd64-amd64-pygrub 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-intel 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd11-amd64 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd12-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-multivcpu 1 build-check(1) blocked n/a test-amd64-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit1 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit1 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit2 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-intel 1 build-check(1) blocked n/a test-amd64-i386-xl 1 build-check(1) blocked n/a test-amd64-i386-xl-pvshim 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a version targeted for testing: qemuu 7efd65423ab22e6f5890ca08ae40c84d6660242f baseline version: qemuu 6972ef1440a9d685482d78672620a7482f2bd09a Last test of basis 180691 2023-05-17 10:45:22 Z 27 days Failing since 180699 2023-05-18 07:21:24 Z 27 days 99 attempts Testing same since 181419 2023-06-14 05:08:14 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Afonso Bordado Akihiko Odaki Akihiro Suda Alex Bennée Alex Williamson Alexander Bulekov Alexander Graf Alexander Ivanov Alistair Francis Anastasia Belova Andrea Bolognani Andreas Schwab Andrew Jeffery Ani Sinha Ani Sinha Anthony PERARD Anton Johansson Antonio Caggiano BALATON Zoltan Bastian Koppelmann Bernhard Beschow Bin Meng Brian Cain Brice Goglin Camilla Conte Carlos Santos Christian Schoenebeck Chuck Zmudzinski Cindy Lu Clément Chigot Corey Minyard Cornelia Huck Cédric Le Goater Cédric Le Goater Daniel Henrique Barboza Daniel Henrique Barboza Daniel P. Berrangé Daniil Kovalev David Hildenbrand David Woodhouse Emanuele Giuseppe Esposito Enze Li Eric Auger Eric Blake Eric DeVolder Erico Nunes Eugenio Pérez Fabiano Rosas Fan Ni Fiona Ebner Francesco Cagnin Francisco Iglesias Frederic Barrat Gavin Shan Gregory Price Gregory Price Hanna Czenczek Hao Zeng Hawkins Jiawei Himanshu Chauhan Igor Mammedov Ilya Leoshkevich Ira Weiny Ivan Klokov Jagannathan Raman Jason Wang Jean-Louis Dupond Jean-Philippe Brucker Jiaxun Yang Joao Martins John Snow Jonathan Cameron Juan Quintela Junqiang Wang Kevin Wolf Laurent Vivier Lei Yang Leonardo Bras Maksim Davydov Marc-André Lureau Marcin Juszkiewicz Marco Liebel Mark Cave-Ayland Markus Armbruster Matheus Tavares Bernardino Mattias Nissler Mauro Matteo Cascella Max Fritz Mayuresh Chitale Michael S. Tsirkin Michael Tokarev Michal Privoznik Milan Zamazal Mostafa Saleh Nicholas Piggin Nicolas Saenz Julienne Niek Linnenbank Niklas Cassel Palmer Dabbelt Paolo Bonzini Patrick Venture Peter Maydell Peter Xu Philippe Mathieu-Daudé Philippe Mathieu-Daudé qianfan Zhao Raghu H Rene Engel Richard Henderson Richard Purdie Ricky Zhou Ryan Wendland Sebastian Ott Sergio Lopez Sid Manning Song Gao Stefan Hajnoczi Stefano Garzarella Steve Sistare Sunil V L Taylor Simpson Thomas Huth Thomas Weißschuh timothee.cocault@gmail.com Timothée Cocault Tommy Wu Vikram Garhwal Viktor Prutyanov Vitaly Cheptsov Vivek Kasireddy Vladimir Sementsov-Ogievskiy Volker Rümelin Weiwei Li Xiao Wang Xinyu Li Yin Wang Zeng Hao Zhenyu Zhang Zhenzhong Duan Zhuojia Shen jobs: build-amd64-xsm fail build-arm64-xsm fail build-i386-xsm fail build-amd64 fail build-arm64 fail build-armhf fail build-i386 fail build-amd64-libvirt blocked build-arm64-libvirt blocked build-armhf-libvirt blocked build-i386-libvirt blocked build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl blocked test-amd64-coresched-amd64-xl blocked test-arm64-arm64-xl blocked test-armhf-armhf-xl blocked test-amd64-i386-xl blocked test-amd64-coresched-i386-xl blocked test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-i386-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-amd64-libvirt-xsm blocked test-arm64-arm64-libvirt-xsm blocked test-amd64-i386-libvirt-xsm blocked test-amd64-amd64-xl-xsm blocked test-arm64-arm64-xl-xsm blocked test-amd64-i386-xl-xsm blocked test-amd64-amd64-qemuu-nested-amd blocked test-amd64-amd64-xl-pvhv2-amd blocked test-amd64-i386-qemuu-rhel6hvm-amd blocked test-amd64-amd64-dom0pvh-xl-amd blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-freebsd10-amd64 blocked test-amd64-amd64-qemuu-freebsd11-amd64 blocked test-amd64-amd64-qemuu-freebsd12-amd64 blocked test-amd64-amd64-xl-qemuu-ovmf-amd64 blocked test-amd64-i386-xl-qemuu-ovmf-amd64 blocked test-amd64-amd64-xl-qemuu-win7-amd64 blocked test-amd64-i386-xl-qemuu-win7-amd64 blocked test-amd64-amd64-xl-qemuu-ws16-amd64 blocked test-amd64-i386-xl-qemuu-ws16-amd64 blocked test-armhf-armhf-xl-arndale blocked test-amd64-amd64-xl-credit1 blocked test-arm64-arm64-xl-credit1 blocked test-armhf-armhf-xl-credit1 blocked test-amd64-amd64-xl-credit2 blocked test-arm64-arm64-xl-credit2 blocked test-armhf-armhf-xl-credit2 blocked test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-freebsd10-i386 blocked test-amd64-amd64-qemuu-nested-intel blocked test-amd64-amd64-xl-pvhv2-intel blocked test-amd64-i386-qemuu-rhel6hvm-intel blocked test-amd64-amd64-dom0pvh-xl-intel blocked test-amd64-amd64-libvirt blocked test-armhf-armhf-libvirt blocked test-amd64-i386-libvirt blocked test-amd64-amd64-xl-multivcpu blocked test-armhf-armhf-xl-multivcpu blocked test-amd64-amd64-pair blocked test-amd64-i386-pair blocked test-amd64-amd64-libvirt-pair blocked test-amd64-i386-libvirt-pair blocked test-amd64-amd64-xl-pvshim blocked test-amd64-i386-xl-pvshim blocked test-amd64-amd64-pygrub blocked test-armhf-armhf-libvirt-qcow2 blocked test-amd64-amd64-xl-qcow2 blocked test-arm64-arm64-libvirt-raw blocked test-armhf-armhf-libvirt-raw blocked test-amd64-i386-libvirt-raw blocked test-amd64-amd64-xl-rtds blocked test-armhf-armhf-xl-rtds blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-amd64-xl-shadow blocked test-amd64-i386-xl-shadow blocked test-arm64-arm64-xl-thunderx blocked test-amd64-amd64-libvirt-vhd blocked test-arm64-arm64-xl-vhd blocked test-armhf-armhf-xl-vhd blocked test-amd64-i386-xl-vhd blocked ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 18679 lines long.) From xen-devel-bounces@lists.xenproject.org Wed Jun 14 11:01:22 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 11:01:22 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548710.856801 (Exim 4.92) (envelope-from ) id 1q9OFH-0002xo-PE; Wed, 14 Jun 2023 11:00:59 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548710.856801; Wed, 14 Jun 2023 11:00:59 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9OFH-0002xh-MR; Wed, 14 Jun 2023 11:00:59 +0000 Received: by outflank-mailman (input) for mailman id 548710; Wed, 14 Jun 2023 11:00:58 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9OFG-0002xU-96; Wed, 14 Jun 2023 11:00:58 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9OFG-00080G-6F; Wed, 14 Jun 2023 11:00:58 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9OFF-000230-Lc; Wed, 14 Jun 2023 11:00:57 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q9OFF-0007I2-L1; Wed, 14 Jun 2023 11:00:57 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=ixzX9peyRlyLVd+EuxhMANXoeiLqNZORZknb/z0SCDs=; b=WKDTvirbVTAgWAUAUJC/PjHkMk PKsVfc+HP7OS4n+NWv2xpgWqlIWovTVecUMcet/iQ8cAnuliA+BFOMfpAr/hHywFHtWTijgucmImM kbN1UjcYSvbYB0BrK59GzD/Co/fx/I2q5+mU7s3PzjrkkvuQ9a8mKPXs//0LAkdIGpsA=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [linux-linus test] 181417: regressions - FAIL X-Osstest-Failures: linux-linus:test-armhf-armhf-xl-credit1:xen-boot:fail:regression linux-linus:build-arm64-pvops:kernel-build:fail:regression linux-linus:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking linux-linus:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking linux-linus:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking linux-linus:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking linux-linus:test-arm64-arm64-examine:build-check(1):blocked:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking linux-linus:test-arm64-arm64-xl:build-check(1):blocked:nonblocking linux-linus:test-armhf-armhf-xl-multivcpu:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-credit2:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking linux-linus:test-armhf-armhf-libvirt:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-arndale:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-examine:reboot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-raw:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-qcow2:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-vhd:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-rtds:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-raw:migrate-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-qcow2:migrate-support-check:fail:nonblocking X-Osstest-Versions-This: linux=b6dad5178ceaf23f369c3711062ce1f2afc33644 X-Osstest-Versions-That: linux=6c538e1adbfc696ac4747fb10d63e704344f763d From: osstest service owner Date: Wed, 14 Jun 2023 11:00:57 +0000 flight 181417 linux-linus real [real] http://logs.test-lab.xenproject.org/osstest/logs/181417/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: test-armhf-armhf-xl-credit1 8 xen-boot fail REGR. vs. 180278 build-arm64-pvops 6 kernel-build fail REGR. vs. 180278 Tests which did not succeed, but are not blocking: test-arm64-arm64-xl-credit1 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit2 1 build-check(1) blocked n/a test-arm64-arm64-xl-thunderx 1 build-check(1) blocked n/a test-arm64-arm64-xl-vhd 1 build-check(1) blocked n/a test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a test-arm64-arm64-examine 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-raw 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-xsm 1 build-check(1) blocked n/a test-arm64-arm64-xl 1 build-check(1) blocked n/a test-armhf-armhf-xl-multivcpu 8 xen-boot fail like 180278 test-armhf-armhf-xl-credit2 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 180278 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 180278 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 180278 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 180278 test-armhf-armhf-libvirt 8 xen-boot fail like 180278 test-armhf-armhf-xl-arndale 8 xen-boot fail like 180278 test-armhf-armhf-examine 8 reboot fail like 180278 test-armhf-armhf-libvirt-raw 8 xen-boot fail like 180278 test-armhf-armhf-libvirt-qcow2 8 xen-boot fail like 180278 test-armhf-armhf-xl-vhd 8 xen-boot fail like 180278 test-armhf-armhf-xl 8 xen-boot fail like 180278 test-armhf-armhf-xl-rtds 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 180278 test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-amd64-libvirt-raw 14 migrate-support-check fail never pass test-amd64-amd64-libvirt-qcow2 14 migrate-support-check fail never pass version targeted for testing: linux b6dad5178ceaf23f369c3711062ce1f2afc33644 baseline version: linux 6c538e1adbfc696ac4747fb10d63e704344f763d Last test of basis 180278 2023-04-16 19:41:46 Z 58 days Failing since 180281 2023-04-17 06:24:36 Z 58 days 111 attempts Testing same since 181417 2023-06-14 04:18:54 Z 0 days 1 attempts ------------------------------------------------------------ 2688 people touched revisions under test, not listing them all jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops fail build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl blocked test-armhf-armhf-xl fail test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm blocked test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm blocked test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-freebsd11-amd64 pass test-amd64-amd64-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale fail test-amd64-amd64-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 blocked test-armhf-armhf-xl-credit1 fail test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 blocked test-armhf-armhf-xl-credit2 fail test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine blocked test-armhf-armhf-examine fail test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt fail test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu fail test-amd64-amd64-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-amd64-pygrub pass test-amd64-amd64-libvirt-qcow2 pass test-armhf-armhf-libvirt-qcow2 fail test-amd64-amd64-libvirt-raw pass test-arm64-arm64-libvirt-raw blocked test-armhf-armhf-libvirt-raw fail test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds fail test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-arm64-arm64-xl-thunderx blocked test-amd64-amd64-examine-uefi pass test-amd64-amd64-xl-vhd pass test-arm64-arm64-xl-vhd blocked test-armhf-armhf-xl-vhd fail ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 341431 lines long.) From xen-devel-bounces@lists.xenproject.org Wed Jun 14 11:06:42 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 11:06:42 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548719.856811 (Exim 4.92) (envelope-from ) id 1q9OKk-0003dy-Gb; Wed, 14 Jun 2023 11:06:38 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548719.856811; Wed, 14 Jun 2023 11:06:38 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9OKk-0003dr-Di; Wed, 14 Jun 2023 11:06:38 +0000 Received: by outflank-mailman (input) for mailman id 548719; Wed, 14 Jun 2023 11:06:37 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9OKj-0003dl-BA for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 11:06:37 +0000 Received: from mail-lf1-x132.google.com (mail-lf1-x132.google.com [2a00:1450:4864:20::132]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 8770a254-0aa3-11ee-b232-6b7b168915f2; Wed, 14 Jun 2023 13:06:36 +0200 (CEST) Received: by mail-lf1-x132.google.com with SMTP id 2adb3069b0e04-4f6170b1486so8012762e87.0 for ; Wed, 14 Jun 2023 04:06:36 -0700 (PDT) Received: from [192.168.202.197] ([94.75.70.14]) by smtp.gmail.com with ESMTPSA id w23-20020ac254b7000000b004f60be0c687sm2090810lfk.122.2023.06.14.04.06.34 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 14 Jun 2023 04:06:35 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 8770a254-0aa3-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686740796; x=1689332796; h=mime-version:user-agent:content-transfer-encoding:references :in-reply-to:date:cc:to:from:subject:message-id:from:to:cc:subject :date:message-id:reply-to; bh=4j9jjeC9kYwcknimJac8/V/j04DKwIARrhyBUvrUV3I=; b=Va9WdYPCnog5TUtGvtv3fE+o6yJYrhFWFwV0dW2qzBxiC9CKuipguPPkeMK5JNkmJj GwgDOdF0MWI3O4bdZ5vMNh90DBjnG1gmIxcU4UWgRazrNBOFzRKI5bx1ra2vGaSni+Lg K3g1oXY61RJea17iQ+OsHKfcdVs0TDhyYjEMXeboqCFLD0T79CV0ReTS/OxuSABRd0VW 7hVm1RyV1mRss55fd3OJaYltB+qbWk82D8e/IZsQ1tu1ZRcit1Wtn2W0jYI2UEee60ph GdcMdQypYhZ02bO1uRM0LNKHBHWLgB2trZzEzRnG1gd1/FUYA0PtfnRE4FFsa/dwv0C1 EQzw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686740796; x=1689332796; h=mime-version:user-agent:content-transfer-encoding:references :in-reply-to:date:cc:to:from:subject:message-id:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=4j9jjeC9kYwcknimJac8/V/j04DKwIARrhyBUvrUV3I=; b=bAhw/5R5TrWFU7lj/135VGQm09ToDpfbFHBpRUzCsL9hzmZbuW9x0/PHLjKoJBz+p3 U7C8XM5/JjB9fVQ3I3YtQU4OFQasZnXFG5Tw8s3I3XDC8sskXdluVt1KJ288dfvCuEiM QcYW3aQgaeSpKwra/Z62aqlaTamU68C9PNs8kpO37zjcD/KKlVGL2iy/VgDtkh7//rDp rDzK0hD55/Dco3io69rnIUZgfJY4h65UCt/uTWxP/7TYz5+FPVu31P6LKfHx4kAp4PLR k0RmvSlZcmy9vCQIK+2bdQNx8hcMpvJm0uY33BFgCzVHgw7I9BqYGnFY/0mGulBfx5es VDFA== X-Gm-Message-State: AC+VfDyQE55ojPBmK6dqOucnGCijVmeTavvind5R0MedDlIU2gcmZCFk SNk9vVo69yTMJ7WmHWCuw3w= X-Google-Smtp-Source: ACHHUZ75Ln0qKwVMpCrbG6O4VxwcUepcbnRIqaTWU2QgWBjgBYnmZRIPqt/JwKa2gyRcxhW3KpTUOA== X-Received: by 2002:a05:6512:3a94:b0:4f4:f38a:4423 with SMTP id q20-20020a0565123a9400b004f4f38a4423mr489727lfu.27.1686740795671; Wed, 14 Jun 2023 04:06:35 -0700 (PDT) Message-ID: <2f23afd53e748a09d3de2b50aaec0c6d2cf106c0.camel@gmail.com> Subject: Re: [PATCH v1 5/8] xen/riscv: introduce identity mapping From: Oleksii To: Jan Beulich Cc: Andrew Cooper , Bob Eshleman , Alistair Francis , Connor Davis , xen-devel@lists.xenproject.org Date: Wed, 14 Jun 2023 14:06:34 +0300 In-Reply-To: <4ac462c3-9cb6-f467-2b86-925fb068486d@suse.com> References: <32aef31768cd81ffc8c848af6c29cd8510bbbf6d.1686080337.git.oleksii.kurochko@gmail.com> <4ac462c3-9cb6-f467-2b86-925fb068486d@suse.com> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable User-Agent: Evolution 3.48.3 (3.48.3-1.fc38) MIME-Version: 1.0 > > +} > > + > > +void __init remove_identity_mapping(void) > > +{ > > +=C2=A0=C2=A0=C2=A0 int i, j; >=20 > Nit: unsigned int please. >=20 >=20 It should be int in the current case because of the 'for' exit condition: for ( pgtbl =3D stage1_pgtbl_root, i =3D CONFIG_PAGING_LEVELS - 1; i >=3D 0; i-- ) Should exit condition be re-writen? ~ Oleksii From xen-devel-bounces@lists.xenproject.org Wed Jun 14 11:38:48 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 11:38:48 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548724.856822 (Exim 4.92) (envelope-from ) id 1q9Opf-00072y-Tz; Wed, 14 Jun 2023 11:38:35 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548724.856822; Wed, 14 Jun 2023 11:38:35 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9Opf-00072r-RI; Wed, 14 Jun 2023 11:38:35 +0000 Received: by outflank-mailman (input) for mailman id 548724; Wed, 14 Jun 2023 11:38:34 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9Ope-00072l-Fz for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 11:38:34 +0000 Received: from EUR01-HE1-obe.outbound.protection.outlook.com (mail-he1eur01on2085.outbound.protection.outlook.com [40.107.13.85]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id fd0542fc-0aa7-11ee-8611-37d641c3527e; Wed, 14 Jun 2023 13:38:31 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by DU0PR04MB9694.eurprd04.prod.outlook.com (2603:10a6:10:312::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.29; Wed, 14 Jun 2023 11:38:03 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.039; Wed, 14 Jun 2023 11:38:03 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: fd0542fc-0aa7-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Oosbj4+mpDCK2yuHxSN68GDqUPg/68y7V6JXs6y0f4Ot/9xuIDCo7861rZLdwQ4VH2SUclLoI+91StcvpbnuzWbEWsjVkkxlGoqJqHOsraND1FBuQkLfcXVKJPjf/rgxepX+dcDsJ+Tj5FTPKzTtWaxaCdCcVJbpctgG8pMeSGw/iq+FHHhhRBh6Pdt6CkZb3jdc5KNpWab3X0v98vS1GaV+wlpb7Bzc054iyqTQfTj69Vm7Ev7E7tfTUvPKpZRHZwqRnSoXXHJZ/ouy7kvbVfikebIF5lNKAi7wZsUrTW1mNJ9d3FknTn/wCCnk4Ooq/POYYVPLDuvlXXU2noctOA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=fl+a/GhPZFGdxHdvP5QAkd9hX/pxiNOFfITf5iaNXKE=; b=Q4w2+Y65fG3PssjzSwY3/aO8yCYfq0Zscx6V6vZjIZWx3Hgm5ss8etz6q6RxOrTUlhHlr3YSyJJ+cX35ScG4r6j1t8BVM2fW0kSMgbde71VBjsRMCvevD2kiPfWddYIt2XsT/LRc7v89CH4RWzktlaPfklVFjf6II2yMU/CXhddSu7MbSsmbM90dbr1sAcCYIrnpydNb8dNvDD8cm4UQ3JFzHhYwDtK9ulrRwTsTMNja7AaM2bYHxrAf5lfgXNFTjqZjmH+6g/YmVC4zRXGeBGeq5DwFI1jkjnMvpjlyxHx4cpl/L6wc/wHyMPj4O5a/bKhJN4gy9ZSrZG0Qm6vYpQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=fl+a/GhPZFGdxHdvP5QAkd9hX/pxiNOFfITf5iaNXKE=; b=wVTikH+3iBOnElMIoH952j548uArRu5i0jxdDIM9YwEQ4ZJpXNdlRtV7E6rVl411kT0GiFknxG30doFlABxbvf61C1f7asN7ern6NbLBVlNziSl8nL+EQ0vdg6DN8tRss83kr8wxxUT+A5aB/tqLBPwt2oRUGPe94gydeEQNtEMWCml9gc1sQ32J/fcphaAmxKoTmzOY2jzJZgVq7sI1W3lJZnnKGxFxkur8W8hdzt36e0MkRH0Z/aXas63SqKyLIhCkMAugl9J61s8v73/BDmA7CMaADkPOgLDsCDX84Lyb7N9AIyPHKKbgAYsLXgaaQeKH8o78y6RIj/ihcNFS0g== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: Date: Wed, 14 Jun 2023 13:38:01 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v1 5/8] xen/riscv: introduce identity mapping Content-Language: en-US To: Oleksii Cc: Andrew Cooper , Bob Eshleman , Alistair Francis , Connor Davis , xen-devel@lists.xenproject.org References: <32aef31768cd81ffc8c848af6c29cd8510bbbf6d.1686080337.git.oleksii.kurochko@gmail.com> <4ac462c3-9cb6-f467-2b86-925fb068486d@suse.com> <2f23afd53e748a09d3de2b50aaec0c6d2cf106c0.camel@gmail.com> From: Jan Beulich In-Reply-To: <2f23afd53e748a09d3de2b50aaec0c6d2cf106c0.camel@gmail.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: FR3P281CA0023.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:1c::7) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|DU0PR04MB9694:EE_ X-MS-Office365-Filtering-Correlation-Id: eafdc012-9f0f-4b01-742a-08db6ccbd036 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: oPRwE9+bTqM6jxJPC2sZXaeU+qoyjaamW6SOtAT1RfcJBoYjSFNjgwdwhJMCL/S047bnq5dZ4hfHhchiHOpQKcZDcUeYSDBR1s6YyhWHkxZV6zs4Wi9oj8+gsytwbwpYq3jS+LI37a4Hpyd3oPLgX9U9S2Uf+ZbNEAE9FqqAA68IOH9JBkNWpvDLCYdAaS3IXTXEGgq0Kww3Nw1Xn/obYUvcb1QqbxCTIPso256OTy7gIALeb5hg6t4qCFELIyqyu2w2Ge9TsgXv4rElJiFYOWtOY1vwDi88ACH0fSUtTkD1uHDhtpUfS1L/8USN4VO+xPEmQtOIhktDU9eV6CPCsj3PnRRYFPCE4bQ2/zAJPshoS4kUoSNvR1S4CfiSsfOUkt4nVZA4Cw/lahqkP3OkZiDfnYqL06O6DZVLtg5o/tZx1M/YEAlqECbBbHRkoysdsXd+yJSyi8fCYu62TJxK5i5lxaf1EpL706CBmgmwJ9vYlCVxWruCfnB57PGlwMaTuSLkxynbmbpX51I4XVqfrkXQmQdaPXdCiizZeWeI5IBPcd5ltL5a3ha2CYcaheCMRyYG35X5jbKc5d2cZO2nfm4//eR0F/HEVFaL3LEKToOjqbbLMIkW6ngnr3R8V8PPmeNGzlRpJ6nyyUAhp/kNbg== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(136003)(39860400002)(366004)(346002)(396003)(376002)(451199021)(36756003)(86362001)(31696002)(66556008)(66476007)(478600001)(4326008)(54906003)(6916009)(66946007)(316002)(6486002)(8676002)(5660300002)(4744005)(8936002)(2906002)(38100700002)(41300700001)(2616005)(186003)(26005)(53546011)(83380400001)(6512007)(6506007)(31686004)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?UW5CNGp1dEV2Q1FTRXlORXQrb3lmemhxdmhwdmRKQks0RldiTFhyOERiRWZp?= =?utf-8?B?ak9kUU80Z2NiRHRaV2QzMnJodm1FU1RHTFJBTDlKTzFhUTRCQXFsNkxHcGh2?= =?utf-8?B?aDNMN2V1Y2tyU2dsMzFmRjN0WXpzMW9KWERhZjA4dGZWdnQ3TEkySlE0ZFNp?= =?utf-8?B?bG5xWksxTHZQZW1hZFpsKzYvNVpGeEFRU01TeFF5QStqM3Jza0czVWhHcGxZ?= =?utf-8?B?L1BtS0x2YWtjTXhJbW9VQUc5dW9MZzdCeVB3V0U2NXdkWjE4TjJzWGV1SFBv?= =?utf-8?B?UWpza3NrU3NVTk1FZ0JqWEVsTGlYNUk0c2oxN2hHdmh3bVY0NUJPWHU3RzYy?= =?utf-8?B?Ny91SUd1U3JxaEJmR09aU29FaWxEeUlDTUlvSHQ3eVB2SkIycTJOUEJBZCtK?= =?utf-8?B?L2RSUFExVGlMVmxvQlZ6Nkdxei9mbDVweFZPOU5LcWo0TU10S21lcTRkb3Qw?= =?utf-8?B?bjROLzZmZkpDeUFMdTRFY1lDQkg1V0xhUlF3cUhZakxOVTRFbTBMazloK2Fx?= =?utf-8?B?YnArcWFCVzNMUVdZc0QrcVpIQjg3SEJibTAwZ2FDSTdRVmJvUW9YWWZScEl2?= =?utf-8?B?aHVoQ0dKL0RlYXBwZVRPVER1VW9aeHlHRURidXFXQ00yL0xWM0NwMFV2cElG?= =?utf-8?B?SnpLZTN5UTRiSExYTTh6VnltS2FFL2FNZlgwYUQ2bEM5RjVlNTQrMDlJMUM2?= =?utf-8?B?c1FWRUFQWjg0M1FKQ1ZIaUpYUFJoaVBGWmpoMnNhdWNway9wdEdUM05maUg1?= =?utf-8?B?aHIzMis1bHJiWGU1Z0RWTi8wNW5mR0tJSFFSeitNbnpCUjBOVDR4dTlIRGhB?= =?utf-8?B?UU9BRnFzc0RVcVNab0ZidThEL1RGRlBqRWJTQ1JTWGxZWlc0U1Fla3pjSHk5?= =?utf-8?B?N2o4VlZlMktFWEdUVmpuRnpONitpdW1PTTkwa0kvblB4QnlPVWtScnZSRWdN?= =?utf-8?B?RGl2anNtQzhaQUppM045L0lEL1hrU0tqOHRFR1MwOU9scXNXM3lOazQ1WEVz?= =?utf-8?B?dXdwdXlxcVNOMTVMVmtXZ1NoSHNwNGVlaDlvd2FUUWJ0aUZTNzczcktCOVd3?= =?utf-8?B?MUFoRldiUkN3T3RRV1c1U2w5QmVwRXV3ZGZvMHNTdWpSL1hubWMvMS9RMTJh?= =?utf-8?B?YzBabzJYVnNRT1JOWXJRcEFuQm4rbUtsSjJkcEc5bnhHblJYOGxCeERVZEMw?= =?utf-8?B?bk50elV0RXc2T3BTMXNsblRDcVQ1a0tOczJFSkh1Y2FGWXZhZzRZcXQrNXI3?= =?utf-8?B?RldveXJxYkRVQkxLRUthdmNzM1RwMlBaV2FPWFMvaW1YYlI0R080TlZKN09E?= =?utf-8?B?Z0d4ZHd3Zzh6S1UwZ1B3YlJNQkhmUzFyTEJIWDNZT1M4OCtDYXNSQ2sySU0z?= =?utf-8?B?bk5VU255U0huQXVFeWl4RTJ1SWNhdE00SGg4eVRFVDNZSHIvb0JZU3RwV0VQ?= =?utf-8?B?M3kwdEhCNExEQ04wSkFnZE1kVzdnT2dSbUhqU2ZzVTFMSFpTV29yb3haekRR?= =?utf-8?B?MEVqVUxYRVhlQW8zRGVNSjVQS09hUXBDOHExOHlEa013cTlYWFFFSlUrVmIy?= =?utf-8?B?cXZselY2T085QjJaWE1zNUxtbnNhK25VWCtjb1hDem9pcklBT3Z4ZFNsRm5Z?= =?utf-8?B?UmhvbnVYYmR6TkNPS3RTVzFGUXpNamY2RmY5RjlGUnlwMThVYW82bDJNSko5?= =?utf-8?B?c3NyeXBhNTE2UzBWaFJlci9XdCtpR0hzRHU5UEpIRlhrdEhFNlJ1MWo0YjNE?= =?utf-8?B?Sm9ucUF4NjBqYXhvT1FrTERZY01zcGJPeklHZWlJZXZZazh2RGZ3REp6dGFx?= =?utf-8?B?NjVSS0VrSmxtTzQ2ckFBbkxMQTRmNHMvbFU3M0xOblJBOENkZ1BaWnc2ZUx0?= =?utf-8?B?WmQyTHFuU09GUjVlN3VKQ0JsbDBFRE9BWEQzOTE2STJwMFNLNHo4Y2JNU2FO?= =?utf-8?B?TkJGL0xLT1RQMjg5OTdGK1lvZkU4eXZybUFLTzFCNVVvNk9raExRdzJMaXBU?= =?utf-8?B?OG1qQWpHb3JYV0VqN0d4b2Q1RUV0YWQwRC9oNGN3cmtPQlpKNVlmWDlrbFhT?= =?utf-8?B?amxieElnMU1oVUVkQjBxeUttZ3ErZmNxYXpab1N6SE52dDZGTFN6V1dLSDdt?= =?utf-8?Q?15KmOGPmb1fKRdqrq/G+J7OL1?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: eafdc012-9f0f-4b01-742a-08db6ccbd036 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Jun 2023 11:38:03.1603 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: Lexq7j39pd7kXk9SM4OrndnPRDLuj9G/DybcbRb1tK0VV2oN/bDMUVL9xRRakGvJjJhOcMUu3F3MfBOtRq9qqA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU0PR04MB9694 On 14.06.2023 13:06, Oleksii wrote: >>> +} >>> + >>> +void __init remove_identity_mapping(void) >>> +{ >>> +    int i, j; >> >> Nit: unsigned int please. >> >> > It should be int in the current case because of the 'for' exit > condition: > for ( pgtbl = stage1_pgtbl_root, i = CONFIG_PAGING_LEVELS - 1; i >> = 0; i-- ) > > Should exit condition be re-writen? Since it easily can be, I think that would be preferable. But in a case like this, if you think it's better the way you have it, so be it (until someone comes along and changes it). Jan From xen-devel-bounces@lists.xenproject.org Wed Jun 14 12:20:00 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 12:20:00 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548731.856832 (Exim 4.92) (envelope-from ) id 1q9PTX-0003EP-8c; Wed, 14 Jun 2023 12:19:47 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548731.856832; Wed, 14 Jun 2023 12:19:47 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9PTX-0003EI-59; Wed, 14 Jun 2023 12:19:47 +0000 Received: by outflank-mailman (input) for mailman id 548731; Wed, 14 Jun 2023 12:19:45 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9PTV-0003EC-Kr for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 12:19:45 +0000 Received: from mail-lj1-x232.google.com (mail-lj1-x232.google.com [2a00:1450:4864:20::232]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id bd9982d2-0aad-11ee-8611-37d641c3527e; Wed, 14 Jun 2023 14:19:42 +0200 (CEST) Received: by mail-lj1-x232.google.com with SMTP id 38308e7fff4ca-2b34ac4b6e8so6080971fa.3 for ; Wed, 14 Jun 2023 05:19:42 -0700 (PDT) Received: from [192.168.202.197] ([94.75.70.14]) by smtp.gmail.com with ESMTPSA id k15-20020a2e240f000000b002b1a872c826sm2300003ljk.61.2023.06.14.05.19.40 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 14 Jun 2023 05:19:40 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: bd9982d2-0aad-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686745182; x=1689337182; h=mime-version:user-agent:content-transfer-encoding:references :in-reply-to:date:cc:to:from:subject:message-id:from:to:cc:subject :date:message-id:reply-to; bh=JBk7QGPl/k3z6xWNLAjbrNSZYMJ3wpeG6M6K17GGWhQ=; b=V8oBM79jiCNl9y8vK+zsQ1B0aZdFgiWiWXduV86wYWuNgJasulJUQ+IImeQthKUQMr Qhs9qNmd+P9hGVqiCXOzFrB0ILYpW8qreYXn+hhlNF3sj21Viepgxw7ySs5R54THGmBS aAu8ZeG7FiDUVolrhMgGE0sfM7akUKzngEvG7U/VkSSP9OmDa4/WmgtB01YJgcbiQ1Cl EsHXfZJHN5pG7F/BRpwy54EE2gvEdfOQqitbwFveDul5+Y8ubLzd6p/FlTZh/xHMxWjM IVJUrT5zG6XbZQaF61osnhsmWxWOCi+NmuFHtKRg73IrgAj+ZovConmAu80FCE3fkLIY zFgQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686745182; x=1689337182; h=mime-version:user-agent:content-transfer-encoding:references :in-reply-to:date:cc:to:from:subject:message-id:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=JBk7QGPl/k3z6xWNLAjbrNSZYMJ3wpeG6M6K17GGWhQ=; b=IX2TuHVx4sCD9wwch9seABdRBb5SODsVlCgjl0+6ZBp9B30jdTgjYElaYYMk3Hp/6Z ykMqEyKaFaoYKsE8MeFT2rxQLOfez/lDbGbMDfHB0H9ZFtkXanWRrtjhfKr/OvN3Wf5J iB7JmvwK9qXIctTmCyDKoAD+lvLIHP8NTxOVn0zFSPcHmRA2frKugp4paiY5GHvhW7m5 w0ythc7DaEwt2m8/sr33Xd5m+nzEGCTcKcAhEyMoCCYcTFuIFakE6zgaXfNDqIPpT5K1 SvHdjECscOuT8QF54eVxKhonNHWKQ3Hv+YBEK622soTXtpytw+7G0oNa7rIM07dFtd8g bKVw== X-Gm-Message-State: AC+VfDycQus9Pw6BaVDpWDfSvVP/rcLTGfwC4Nv5aoQ0KPjQI1iZn0hQ 0Vx1lvXBSJRwnKLQiY0rP5g= X-Google-Smtp-Source: ACHHUZ7KIM6IPBOrkXoXTUM/sa5j4rTNSIvuJ78ygkqwyXvhdJUmmMTVTeXpn1XcwXKZWWVhYBWiJQ== X-Received: by 2002:a2e:850d:0:b0:2b1:c0f8:9b95 with SMTP id j13-20020a2e850d000000b002b1c0f89b95mr6717422lji.19.1686745181295; Wed, 14 Jun 2023 05:19:41 -0700 (PDT) Message-ID: Subject: Re: [PATCH v1 3/8] xen/riscv: introduce reset_stack() function From: Oleksii To: Jan Beulich Cc: Andrew Cooper , Bob Eshleman , Alistair Francis , Connor Davis , xen-devel@lists.xenproject.org Date: Wed, 14 Jun 2023 15:19:40 +0300 In-Reply-To: <92fab0b8-647a-b9c1-d15b-1217a4420715@suse.com> References: <92fab0b8-647a-b9c1-d15b-1217a4420715@suse.com> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable User-Agent: Evolution 3.48.3 (3.48.3-1.fc38) MIME-Version: 1.0 On Mon, 2023-06-12 at 09:12 +0200, Jan Beulich wrote: > On 06.06.2023 21:55, Oleksii Kurochko wrote: > > Signed-off-by: Oleksii Kurochko >=20 > This wants addressing the "Why?" aspect in the description. Is the > present > code wrong in some perhaps subtle way? Are you meaning to re-use the > code? > If so, in which way (which is relevant to determine whether the new > function may actually continue to live in .text.header)? >=20 As I mentioned in previous e-mail there is no such requirement for reset_stack() function to live in .text.header. I think such requirement exists only for _start() function as we would like to see it at the start of image as a bootloader jumps to it and it is expected to be the first instructions. Even though I don't see any issue for reset_stack() to live in .text.header section, should it be moved to .text section? If yes, I would appreciate hearing why it would be better. ~ Oleksii From xen-devel-bounces@lists.xenproject.org Wed Jun 14 12:47:34 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 12:47:34 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548736.856842 (Exim 4.92) (envelope-from ) id 1q9PuI-0006eV-AL; Wed, 14 Jun 2023 12:47:26 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548736.856842; Wed, 14 Jun 2023 12:47:26 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9PuI-0006eO-7M; Wed, 14 Jun 2023 12:47:26 +0000 Received: by outflank-mailman (input) for mailman id 548736; Wed, 14 Jun 2023 12:47:24 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9PuG-0006eI-HM for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 12:47:24 +0000 Received: from EUR04-HE1-obe.outbound.protection.outlook.com (mail-he1eur04on2085.outbound.protection.outlook.com [40.107.7.85]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 9b83d99e-0ab1-11ee-b232-6b7b168915f2; Wed, 14 Jun 2023 14:47:23 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by AM9PR04MB8146.eurprd04.prod.outlook.com (2603:10a6:20b:3b5::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.29; Wed, 14 Jun 2023 12:46:54 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.039; Wed, 14 Jun 2023 12:46:54 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 9b83d99e-0ab1-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=iZUNLUYvtbwX7bZSVjzj0t7hrOx55jQCDC/7d40afAuCkeNNctjWtVYkDp9K3ZNLXkc83I5wGSq/UFomS1VIzbBCPsDp9Oi6a7ghnMCk7lEiM+gPDLZ2pRXjOcDGOjlyt0M3tgLiZ6Wu9jFtAJOia9M4w/+5tyfud6iWWXmTGv8++THEJTkRHinb5fVBo2E0wFTfsVL/h/DWz3bk9DMX96AOBLJvNePDke6BJi608WyxXqKJ/t3EiwjpdPjRqAGNW4mH1Hv+Tuj/v2Od3RFRn7xEzN8zOK8EdLSdtOFlVHS2bNQpCRBeEw4ywF5oPPah9euXIJXFj2dOAylSLwxZHA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=OrzAVWHRC5m9R6tb1kW8qaFEfUZgMQ5RkPOtRv08TgE=; b=EftlSnMkAMG07Mzk6MTb+s4yPbAnmwNpGYn0w7/TgbsoWKCKU9jlSdpqe6RK6FbmliN5Kiulpu4I6G3XeBwHGhLpY9XmdXj+oYPm0xwnyzteOFcdCqGzxZ/rPm4xucWaHz1P9yzZtWZQDYF8olgAuExn0av5RJZGt6AnAScAEs7foMCJqmGnfPTXqfkRYu+FWlV/WWQZ/UG2HVBPeJOvcU2MKADD/IQ3lRPLBVcKzNffyXlK2k7b7mdY6vGstpayzwmm9t0+yWhXyp7WBfgucs2tQ60U0T9psmhGFUAxSTcFxYuKwe6J6uuegEmYIUfOAJl+f8fcdIl/Jh9VbNT0SA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=OrzAVWHRC5m9R6tb1kW8qaFEfUZgMQ5RkPOtRv08TgE=; b=Agm8lZylfzoHpOrwiVXHQMKdSjYDfAONudi/b0Tbsbcn6j/n6BHUnSoQiqHKeAcqNkcY2pO9dnea1wXotl6FjujKszfZH4WY+zX8ibeBSQ1JSJNGFWalUTnEoZ+Q3IqWjnkwlacWUM9ZJqWsNxVhgx0tUOEp0HNeDUBWfE7pzht8173JG0P0f3BpkFPysaYpZj7Tak+PXnSmdIMSii2OP3CueoNLErrP48tEj0HDwLeeyoFNmXJ8o8zb3bpRpYF51sHSJ5WukxKwt7G/Ng+44JisNe90VU+6rEEhY0siQG2debq6BxAqsNUnFoFIjDLtDKCAfrRVGxpwhVtiRF0f0w== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <20512f99-a993-443f-6e1f-377c474469d5@suse.com> Date: Wed, 14 Jun 2023 14:46:52 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v1 3/8] xen/riscv: introduce reset_stack() function Content-Language: en-US To: Oleksii Cc: Andrew Cooper , Bob Eshleman , Alistair Francis , Connor Davis , xen-devel@lists.xenproject.org References: <92fab0b8-647a-b9c1-d15b-1217a4420715@suse.com> From: Jan Beulich In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR3P281CA0059.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:4b::21) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|AM9PR04MB8146:EE_ X-MS-Office365-Filtering-Correlation-Id: e1e4da84-2cfd-44a6-51da-08db6cd56e79 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: Pa0Oo1aXwabDeyuxEu/aKL2VRGNWtGNA0to4R5Pw99vAFM9lz95ulKJcG1waaaCNz2y6T5tg4u4LeVkOH66VBebRDyvpqdzDONYZpfnumRz8eqR9ciklbC4SI69/kLAosX/1MtsGjwPE9sFPZoZyrB8hxpnXgV6dX2oJBxaW6MFZBSghaogIwPy9YFIYKIFc9lK/4BPR3KtF4Lt23e1EReMMXGRkx2+gtxCfcMXCVJUWS4UFEpKyBj9QRwOlSywRPkbqra68OkwbinRIZkHclv1h5ON/gzQUZzA5c8MSy62pGeGDCZ4PsUxxLLivpixGcuYZrJV1vX30O3jdFmfsibQXM12m+6BtsYqdUGM9aPe1tkVERF6HtwHK94OqAWVaGiipInw0JleaBQnp1p/dKktD2nsS3lkFGgw/ZH2BgMJLPmOttJ8l/Vkwnw4Z2MMe5zQAcYEmqxMyBfYizLH4cTrqrQD6TN9Z7RGtkVFuoWpNYkRuwqJaDDT0e4lTrAC/nHvF75wshyIA6zNZD2qXvZosKmzDcABMDnzUOcW8+bKBQ6JmVZS6wsiIkPy2XdrrhmRJBgw/Bm2CgnvEjk94dp7azwzI1YD6QQMnJYeXbenOu84CDcSV8jKITarqPTDqK7FINLc6keNR5KBZfmfTDw== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(39860400002)(376002)(136003)(346002)(366004)(396003)(451199021)(6486002)(86362001)(36756003)(2616005)(31696002)(38100700002)(6512007)(6506007)(26005)(53546011)(186003)(2906002)(54906003)(6916009)(316002)(4326008)(41300700001)(31686004)(66476007)(5660300002)(478600001)(66556008)(66946007)(8676002)(8936002)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?VG1FTjJ1M1hFUHZTcHFPZEJCaU1Lenc0NTZXQ0VrV1Y1M29oN1FPSk0xSjhY?= =?utf-8?B?SC9OeUVvZFd2K0FEM0ZuY2FUcTh4emV5aVcwZ1ZvSFExNk45dUo2MFh1NlZ6?= =?utf-8?B?cngyaFpWR0ltY0JLR2trNEUvOTNzZUQrMVRMMVh3RnhaRHY1V2p3ZGdMOTI0?= =?utf-8?B?ejFXNFFWSTVxdS94anRwRE9yVmthUjZCTERDajVjZVUxdzFkT1luMGYxaVpV?= =?utf-8?B?eElUeDZCNGM4NFd4a0dPQUZBQ0gwUTJPNTVrM21aaUNGYTFUZ1BNek0yajZr?= =?utf-8?B?ZEdEV09rYWQ5NC9hUHlka2tlbUJEV2FPOWtxRzEyaXA2UU5URGlXVXhDdzN1?= =?utf-8?B?eTB3RE5BcGdPZ3lnenV2QlpmVC9iY3g2VGdxemttWTdxN3N3N3hoRjNqaitu?= =?utf-8?B?dEhvSWdTZklkeUhWNWlkeWNBa3FRUDNaWDZRYkdOR0piMHVUcFBEN1RoNkp4?= =?utf-8?B?WGptOXlQeFRnMjRJMXplYkVvekUwVDJUZnBvaTQ2aG5vSkFoSis5TVNmWkJJ?= =?utf-8?B?T2J6aXluM0EvcHk3WVFIWnFxYUFpRzl4alQyWGE2R1gwMVM0RVRoWmRVcy9N?= =?utf-8?B?KzN2d1IwSW56dGYremlhd1VxNHlqSHlrZTNnYy9UQ2FPYUNzZlI0ZEVaek5o?= =?utf-8?B?RDRMcmpYei9QWVBFOU1Td09FRmZmaC9la1dpNjllWndLM0pxakhORmRodmtm?= =?utf-8?B?TUxwVzd5ckdrcE95UUNNQkNnYUUvSC95NGdHZm1xNDRIeUhTWVNMeExSc2xm?= =?utf-8?B?cVBUaE5raWpFaitjcTUvQ2djR2VnUWp0bVYvTkFsUDVHRVBiK2d1eGkwRmpV?= =?utf-8?B?Z3JQdWFnTllsUzljUkJCRHo3ZjU5WWJlY2w0WHgrejY1V04xWll0VmMvV2Mv?= =?utf-8?B?bDc0NDhBSEdPdlBWZGRtMThUQjZ3ZEcwamNIUmo2NzRKSWQ4TisyMlVGWTVo?= =?utf-8?B?bndWU2owdEFEYjF6VW1uajdBRmdHNUppYTJTQ21PVTZPaHpsc2pIeUhUOEow?= =?utf-8?B?WGxFMUFLYmJ4d3ByMVZ0YUtiUGptZytwaEMzNXVRUnNqZkhHYlVlazByQnRh?= =?utf-8?B?MzJrSlErVStUa21EVE5pQnFKRVdhQTF3UWpERXdLYmp0QWtwNHZ4OGFMMURK?= =?utf-8?B?TGxUd2FPODFzblZLZlgvTW00eHNBQnpqWWgyZ1cvNmM3Vy9CUVY2djBuNkRK?= =?utf-8?B?WFh6UXNOUmhkOVYyQXhPZ1NuQ0MzYW1EV1h0TGNwWmhQOHpQN0ZhWjIvZHVV?= =?utf-8?B?Mkd2RXBuRHl4RG5nTFR2NTk5NldzWXM0dVdJRkViVHVSMTZpQ3liTG1lQmg2?= =?utf-8?B?VmZFeTdFOGFhZmlZS0U1LzltYk5PSlowTXJjTk0xdGt6UVRkU09WemlpZWZw?= =?utf-8?B?c3VQTjk2YTA2WHZaTWZ3R3Ewa3d5QkNsUnp4ZGY1V0xjZ25lNllMSkV1L1NU?= =?utf-8?B?TDNtYXBwV0o3aWJTTkpJM1htSmd2ei8vNndkVGYzR2JlWWh1aHJYQWlUU2pu?= =?utf-8?B?ZWVhZEpoNUZoeHZmZU1vVU5zVFJ6aW9FcS9RM1NHVElvV2dmcHN1bHYyYmF3?= =?utf-8?B?c0JRcVN3YWVoOFNGQk51MjdCbng4MFFaTktGcWtkYTM5NVlXRWxpYWNXM0xr?= =?utf-8?B?WWxFTE9KQnhtM1Z1dWFkK1J3ZmNNZmFja2h6dTdHNndvK2dmK3lUSmtpVzF6?= =?utf-8?B?N3FJbEl0aTE2UVUra25hNHFrcjc5aGJjdTQyaG45eXFYYUNBVTlmdG1aeDB1?= =?utf-8?B?d1pDdzJvSU8xOHkxS1IvTGRNeStXNUZ4M1ZsM3RNYkdIeTlVcXZUTEhCV1Iw?= =?utf-8?B?Q2NTM0R5b3ZMRG4xenJiOFZkYWJrS2VtMkd1RE5EZDVibHJDa1NKa0ZYVEhy?= =?utf-8?B?TEg0MGpDRjFvTzJabmpEcW5tZS9IR1lBR1kxYXZqZ3pPeGpRdFlLY2J4dStQ?= =?utf-8?B?Q1V4amF6NksrK1ZuWnZSZSthdks5eTJMQnJGQnhzWlpUUXdWdFJ4djhjcHZI?= =?utf-8?B?OGswKzRhY1pmWU9VYTZ0cEhIbmpZeGdxZFZ1ZExsTXhscTJlZ1FzTXNkWEtC?= =?utf-8?B?blVXWnNhZmJJZEIwOVd6WWVaSktiOG9YRGJ3bVdoZnBEQmZHbmVZWXhoSXRs?= =?utf-8?Q?evLOuEdF62cHEtotVG6Q/Poeu?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: e1e4da84-2cfd-44a6-51da-08db6cd56e79 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Jun 2023 12:46:54.1540 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: FvbAb0u114MLxDyIlzXaVXUByCH63gyWlJCifEf1rGAa+XtcWSdH3/sTWS17GvQ/g2olYJHibWXDNF9yyJCiSQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR04MB8146 On 14.06.2023 14:19, Oleksii wrote: > On Mon, 2023-06-12 at 09:12 +0200, Jan Beulich wrote: >> On 06.06.2023 21:55, Oleksii Kurochko wrote: >>> Signed-off-by: Oleksii Kurochko >> >> This wants addressing the "Why?" aspect in the description. Is the >> present >> code wrong in some perhaps subtle way? Are you meaning to re-use the >> code? >> If so, in which way (which is relevant to determine whether the new >> function may actually continue to live in .text.header)? >> > As I mentioned in previous e-mail there is no such requirement for > reset_stack() function to live in .text.header. > > I think such requirement exists only for _start() function as we would > like to see it at the start of image as a bootloader jumps to it and it > is expected to be the first instructions. > > Even though I don't see any issue for reset_stack() to live in > .text.header section, should it be moved to .text section? If yes, I > would appreciate hearing why it would be better. Because of the simple principle of special sections better only holding what really needs to be there. Jan From xen-devel-bounces@lists.xenproject.org Wed Jun 14 12:59:05 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 12:59:05 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548741.856852 (Exim 4.92) (envelope-from ) id 1q9Q5J-0008AB-9r; Wed, 14 Jun 2023 12:58:49 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548741.856852; Wed, 14 Jun 2023 12:58:49 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9Q5J-0008A4-6n; Wed, 14 Jun 2023 12:58:49 +0000 Received: by outflank-mailman (input) for mailman id 548741; Wed, 14 Jun 2023 12:58:48 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9Q5H-00089y-Un for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 12:58:47 +0000 Received: from EUR04-HE1-obe.outbound.protection.outlook.com (mail-he1eur04on2083.outbound.protection.outlook.com [40.107.7.83]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 32f30d15-0ab3-11ee-b232-6b7b168915f2; Wed, 14 Jun 2023 14:58:46 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by PAXPR04MB8368.eurprd04.prod.outlook.com (2603:10a6:102:1bf::5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.29; Wed, 14 Jun 2023 12:58:16 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.039; Wed, 14 Jun 2023 12:58:16 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 32f30d15-0ab3-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=D6eutXjqWIUhrcsHZs8i5gIuQik2phOChUk/iYZvi2/LQB8PRdv4YbBcCAc1+mm3pvSorNDm6rbjwuydYFC4QxK8n9S4x1fK9qQumIvdXfuvHGRb9ZvAsZzYCSSuZbCXqXvqneUbR7sGPZM3f37S3MnzrYpsWWz9JeyslCkxqR6SThj1v5b3fTAcSuWBPcn1SASDvvzWUL9CEC0PiDMLvIVwxUP/uTG7+19+yGANApvgOSnzrrXkSdgHBRDyA2kaQWiugkmvjfN8JHOnjrEKafqNug5Bl3lojh949BMhqXd1lHHttPkyXDbgf9cxF0z87AnewCPyL3oSuhW4Ql6vHQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=C31FW8rDQZ34AXSmE05cOQ8VaLOiOmCoIwOGo8ckfl4=; b=cK5GPI7HmWkvg3XW0rRCfQkybIUn/fJt6p2ZCGOB44M+3LRHZVYuB8ddQ3Yi+J6MA1dvb8q1wFEuDrKVhC7cKKobLVB36R9BVhU7Ca4LktOlEDkbnZ4kaftl4icohNmC1PjV8GLoNL+AGT54PuI4N2w8uO2rmQDekeKmWZCFxDahV9NxS3UjYVfOmQn1QljS4CAHT3SXteArLN0HXR0ItGB9r0wjdbhquyUzYqRK8CvN15YjAW4l39ckJ6FQy3CCo6CjB61Ng8hOLpViaYMdtdGlM6MCzlFuGNf9FafHwLllE0F3gyCuJUORVPro4Sa9t+J6j4M7K8RbBt4UZF7e5A== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=C31FW8rDQZ34AXSmE05cOQ8VaLOiOmCoIwOGo8ckfl4=; b=LcVuctrCLQsRX/RkV7o1vtDAakETZNotW8zbUn13PLA5VVgMdObzEwwDptupr6Ud3FwV2R1M23xrYDN4NHT1H8DG+H1NoScFnVq8i/eeBQfVt4/tpKNayrsAtV+vRT5euCpo8UBkCarIz/v/TVTgJFgW+jOgDzUWhSInIgclgJdwRKwrIby1rmlFjD0fiPWJh8nDb6fOg6+ZKqPtLIWHIB0EGGt6psMtBX2e24BIRUFFr4UHWv7vy4T72teup+LrRy2FxkFbc2uxArcNSnHY4Mw25CubG9HEhiHQ+o0e3fKlQ3FpTTATlCHM+zXkV8ZnmFyjBSF+jvQQpT0z39NoGA== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <5c12e29a-ea85-b216-fedd-a8028a82d3ac@suse.com> Date: Wed, 14 Jun 2023 14:58:14 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH] iommu/amd-vi: adjust _amd_iommu_flush_pages() to handle pseudo-domids Content-Language: en-US To: Roger Pau Monne Cc: Andrew Cooper , xen-devel@lists.xenproject.org References: <20230614083236.64574-1-roger.pau@citrix.com> From: Jan Beulich In-Reply-To: <20230614083236.64574-1-roger.pau@citrix.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR0P281CA0057.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:49::14) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|PAXPR04MB8368:EE_ X-MS-Office365-Filtering-Correlation-Id: 903a78dd-117e-4b4e-3fa5-08db6cd704ea X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: IUbOHQEMZBk7nWn/eyZN8N3apLBD2b/w2w3TeQ2gT9jBS7+yquf6SwbhY0pvdkA5Vn6O+Mc0/x5aDpDkXKVOK/FVR2foLf/g4X35PQOpQSzxL7rh5Yl0i6FllA1QFVmblA2ebFTlWB7ZCdoPawdc1raqInQJSnhVn2bApFmkZxeobP7bVe0/RLDf996dlMk8xiCEzLvQY9xU7EL/ztNKDWkiACZ6e7uXxNSQhY7c2Jh+LpV8N0FIYWsMuZyckCF27PnMPWRLZYFl4u7/U4FSdJxvX18mAcb3wdjlopdAlLGa0MIM2iAMj6MA58Wj/adTMw6t5m6FzgNUsmVMaG8vDVblU1PMnwi5MD+7QU1U+NExPQtszDfQwC6j8mFV8xPGZNgjn7dxQK/JlFBWJlzGBshi/2r9OioG+n9i5C47v+oglJtJ6Wi62aORKflynUYepP8fvxpVjZAAy53GYEGzSGvkqFsJVpzUl0bsSBbPwY0pYgM8OHFSNQn9nAeHUEFVh/3KzCLbmJpaBXPUdvzr+9Ub6PNRRxqi2HWAd9n5bXYcqrs+eywLLyob+LKFjomEvTbs4Vnu6znLHflGpojzlwboDECGQO6JbuRNHtlOam1s8Nv8J3DL6AmpJXJwpGKQxBCqkxzrQht3GZ5NbA6lKA== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(376002)(396003)(346002)(39860400002)(136003)(366004)(451199021)(6486002)(316002)(41300700001)(2906002)(31696002)(6506007)(86362001)(186003)(26005)(53546011)(2616005)(6512007)(38100700002)(83380400001)(5660300002)(36756003)(8936002)(66476007)(66946007)(8676002)(478600001)(66556008)(31686004)(4326008)(6916009)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?WmZ4L1lIcDVHQlo5TmxQQTl4NlNpYzc4WkEwUUs0dUhoTjFtNEFrNDNrcDlJ?= =?utf-8?B?S3VmYXFxbDc0U3FMMVZoc1EyOUNtbHFhUDYzbUVjN21hd3Z2bGE4QTBMNUcw?= =?utf-8?B?L05RYllBVnkzTksvcDU0NEczeFpOdWl6amFhQ2FJc3ZQQU0yTkZBZGZrZ1gy?= =?utf-8?B?WXZyc0tWMXRaYjNibFFrRi9mUXFHYWlqWjVrUXdPbER6MFVoeldoQ3o2am5o?= =?utf-8?B?ay94K1MwbXVTU1Q4VG4vUzRTbHpnM1k5WDQ3WVM0WDBZRVRZUlFNS0ZWRVhL?= =?utf-8?B?S0dkMWk4ZGpDRHNGaU91b0JndzZKZHR0UDNUYi9hVDFYb2M5T241bmwwdi8w?= =?utf-8?B?RnYwUE03K0VMVFo0dGw4WmhtZHVjRGZYUk9xcFFZWThmR3BTMTAxMlkyT2xh?= =?utf-8?B?bWFndmZ2V3BQdml3OXdQcFk0SEluU1pIZFJqdVh6SFpLM1ZPVnh1VmtLN0ND?= =?utf-8?B?dE9zVUcxWHBhczFYYXNIb3Nicll1SVM1TFczNTJKTndLOC9ERmkyVG5VM1dC?= =?utf-8?B?cmh6Uk5SOXhrUkNrcERzb3NhRkc1Wi94ZW1zZ0RtZkZOZG9kRVE3WUZSZW4v?= =?utf-8?B?SjROeHVmUFExOUhXdWc1QnRYNmRVQjdsdGpjME5rcUtySW9UT2dFd1QxbEY5?= =?utf-8?B?WEg2c0xrK0tzNnY2a0k3czcxaGFKMjhnMkhka2UreHVkQzRnUjVab3lsN1da?= =?utf-8?B?cmNsWUFBT2pQVjIyVVROV0E2MXJQSmhnd0M0a0NoVmowRTMzZXFmQUFxTU5M?= =?utf-8?B?QzdkMnQ4aTJOK0tGTkVKdXhTbzY2Y2JLcVo3OVRaOTlMUTZBYlFnclVGUlpI?= =?utf-8?B?Sm10QnhJOGltZ2xQRHdzdmR5ekJmbEEzY2hqbnd4RTF0RWJzcGFhREJkSGNG?= =?utf-8?B?YW5KVGF6RnhkUnNtWERIUVI1MU80cGl3bWloeHRuL1JUOTBkM0VMdzltOUQx?= =?utf-8?B?WkNteHZ1U05MZFRuUkJsRUpCU3c1VzQxTGZJR3dONTEwaE03K3g2TWhqaTUv?= =?utf-8?B?QStVUGszL2hnSzR1UkVFZmtLTDg4Q3Byb0czRVAxNW55U1pHQXh6SFU3T2ox?= =?utf-8?B?dXZFUmErVXY0NCtaei9ydWVGb1M5VzhVeHUwQXIzK1RBVHIzQlc1TzMzOExX?= =?utf-8?B?VHBDRGdRR2xValpnaXQ4VWlibnlUVEpudDE3RmQzRlRjUTRxUzdjeHUzT2Yx?= =?utf-8?B?Z0pxaGpvR1Nvc0d0OGNTN1V2TlJLbFFxd2g0Z3pEYzg1SThjaHRoQ0x2NGNq?= =?utf-8?B?TEtUN0c3MnVUN1hLUDdNWThPejRwTkpqdmdRd0laSlZhL1dDa0pvV1laMHhN?= =?utf-8?B?ZGNFZTdJWWh1YjBjeDJjWFRWV1E4eEZ1M0trY2hHYVpBMzJjSHB5aWNuVjgr?= =?utf-8?B?UTNNbkJwMEdHYitnQXZ0SndQaHZvOG40QnJSYWlLTEdhakZ6NXJqcU5LdWNH?= =?utf-8?B?MkNNS0xLb1dud1VWdm5VS1BUSlVHUHpGYWRabWs2RDJjNHcrR2NINXdxZXVs?= =?utf-8?B?SzFoSFY0a29yRkZMV2lpbHhWSGxnNXgxVUlHY1VlSXFQSTRLR2VXRHpBMGNT?= =?utf-8?B?L01hTTdRQ1lGT09DQTc1MmV4QWt4NTF3Z2E3N2dhU3lFczA3cVkrTXNuSVg3?= =?utf-8?B?K0FtVmwvSmxVQUZVek1FZW51VUd3M3duaXgySGMxYzk2L3pLajcxVWZHLzAr?= =?utf-8?B?OUxXSzF2L2Y1cE91MXlqbWhkbVdpcnNYeGFWSnFxWWROQnBUK3ZhZldrVVRL?= =?utf-8?B?WUYvYXE0R29icnMvdndIMVBhS2h0NlEycWVlUEpnVTZPV0U3SUlVWVNJSkNY?= =?utf-8?B?VkNDSVFGcjN5c0tBRFVNZzcyc3ZTM2UzaVBRa0FLSERVdTJHZk1mZi9BKzdC?= =?utf-8?B?cXkvSm5aK2ZVRWE4MkZFWWQzK2k3YUVCNlZLRmFMSVJLelpZUlE0SUw2b0Zw?= =?utf-8?B?b2xvdS9iUkxIZEdiTkxsa3BKelRxVGVDdjY4WUU3MDB6YVBFc3lxdzNKVm9M?= =?utf-8?B?NlhDcnpKaUwvSStCdjc1QnU3Uld1bGl0dlB3VjE2cGMvM1RLWGhjS1hqT0sz?= =?utf-8?B?b1piRkszejczVFF2UWp2cTJZbml2ZktrbVhjcWN4VStPSTBJNUpqei9ZOFAz?= =?utf-8?Q?dJ0cyxgoUSNeqhK/o4dAccsDW?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 903a78dd-117e-4b4e-3fa5-08db6cd704ea X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Jun 2023 12:58:16.1217 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: zSuu8I2fBtRSb1zSrY/Is8xShML3wP+9+WqhpBNat8vlRqqrFwSkiAatxJkxBo7XeT1/T7QmeVbbqdqcFWkqBQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB8368 On 14.06.2023 10:32, Roger Pau Monne wrote: > When the passed domain is DomIO iterate over the list of DomIO > assigned devices and flush each pseudo-domid found. > > invalidate_all_domain_pages() does call amd_iommu_flush_all_pages() > with DomIO as a parameter, Does it? Since the full function is visible in the patch (because of the "While there ..." change), it seems pretty clear that it doesn't: for_each_domain() iterates over ordinary domains only. > and hence the underlying > _amd_iommu_flush_pages() implementation must be capable of flushing > all pseudo-domids used by the quarantine domain logic. While it didn't occur to me right away when we discussed this, it may well be that I left alone all flushing when introducing the pseudo domain IDs simply because no flushing would ever happen for the quarantine domain. > While there fix invalidate_all_domain_pages() to only attempt to flush > the domains that have IOMMU enabled, otherwise the flush is pointless. For the moment at least it looks to me as if this change alone wants to go in. Jan From xen-devel-bounces@lists.xenproject.org Wed Jun 14 13:02:53 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 13:02:53 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548746.856862 (Exim 4.92) (envelope-from ) id 1q9Q9C-0001CC-PQ; Wed, 14 Jun 2023 13:02:50 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548746.856862; Wed, 14 Jun 2023 13:02:50 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9Q9C-0001C5-MP; Wed, 14 Jun 2023 13:02:50 +0000 Received: by outflank-mailman (input) for mailman id 548746; Wed, 14 Jun 2023 13:02:49 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9Q9B-0001Bz-Cd for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 13:02:49 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id c19d6d09-0ab3-11ee-8611-37d641c3527e; Wed, 14 Jun 2023 15:02:46 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 4E2AB639FF; Wed, 14 Jun 2023 13:02:45 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id C8321C433CB; Wed, 14 Jun 2023 13:02:37 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: c19d6d09-0ab3-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1686747764; bh=Z0S2d/Eru6a8jIIub+wJj2QGnnAEIe7xODp5r4XEjY4=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=Ij1kaX2f2DmI7HK85FkEb/euMvHbhk1Yl6Bfkym5Y/V3n55SCcwdtHPiMl/Uaznfq /JPBcReV4N5cCfLGrjl0lmP3t1/xIRQ0sNu8SuNRKfJvFTG3ehEI7XrnyZzzj/mq5Z LIzsfSZJkFEA+VFk5od8SUJmz7a2MZahKi7y83tUViVFyHKqtoU7QmKJKuQUMruG+3 ZBcXEtH/BdXI8p8nle54zxP2rJXEAQvrH6UElVJeso6ar3qrgbKRU7tK7ulw5ExB7M 3MJes9iMWx7TD3tX2qF3/3jOSJV75iRXzB8fjYUsip9RPr0GERlktBmW7yBKguUpKQ +EDy1u2Ox8vrA== Date: Wed, 14 Jun 2023 16:02:07 +0300 From: Mike Rapoport To: "Vishal Moola (Oracle)" Cc: Andrew Morton , Matthew Wilcox , linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins Subject: Re: [PATCH v4 01/34] mm: Add PAGE_TYPE_OP folio functions Message-ID: <20230614130207.GZ52412@kernel.org> References: <20230612210423.18611-1-vishal.moola@gmail.com> <20230612210423.18611-2-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20230612210423.18611-2-vishal.moola@gmail.com> On Mon, Jun 12, 2023 at 02:03:50PM -0700, Vishal Moola (Oracle) wrote: > No folio equivalents for page type operations have been defined, so > define them for later folio conversions. > > Also changes the Page##uname macros to take in const struct page* since > we only read the memory here. > > Signed-off-by: Vishal Moola (Oracle) Acked-by: Mike Rapoport (IBM) > --- > include/linux/page-flags.h | 20 ++++++++++++++++++-- > 1 file changed, 18 insertions(+), 2 deletions(-) > > diff --git a/include/linux/page-flags.h b/include/linux/page-flags.h > index 92a2063a0a23..e99a616b9bcd 100644 > --- a/include/linux/page-flags.h > +++ b/include/linux/page-flags.h > @@ -908,6 +908,8 @@ static inline bool is_page_hwpoison(struct page *page) > > #define PageType(page, flag) \ > ((page->page_type & (PAGE_TYPE_BASE | flag)) == PAGE_TYPE_BASE) > +#define folio_test_type(folio, flag) \ > + ((folio->page.page_type & (PAGE_TYPE_BASE | flag)) == PAGE_TYPE_BASE) > > static inline int page_type_has_type(unsigned int page_type) > { > @@ -920,20 +922,34 @@ static inline int page_has_type(struct page *page) > } > > #define PAGE_TYPE_OPS(uname, lname) \ > -static __always_inline int Page##uname(struct page *page) \ > +static __always_inline int Page##uname(const struct page *page) \ > { \ > return PageType(page, PG_##lname); \ > } \ > +static __always_inline int folio_test_##lname(const struct folio *folio)\ > +{ \ > + return folio_test_type(folio, PG_##lname); \ > +} \ > static __always_inline void __SetPage##uname(struct page *page) \ > { \ > VM_BUG_ON_PAGE(!PageType(page, 0), page); \ > page->page_type &= ~PG_##lname; \ > } \ > +static __always_inline void __folio_set_##lname(struct folio *folio) \ > +{ \ > + VM_BUG_ON_FOLIO(!folio_test_type(folio, 0), folio); \ > + folio->page.page_type &= ~PG_##lname; \ > +} \ > static __always_inline void __ClearPage##uname(struct page *page) \ > { \ > VM_BUG_ON_PAGE(!Page##uname(page), page); \ > page->page_type |= PG_##lname; \ > -} > +} \ > +static __always_inline void __folio_clear_##lname(struct folio *folio) \ > +{ \ > + VM_BUG_ON_FOLIO(!folio_test_##lname(folio), folio); \ > + folio->page.page_type |= PG_##lname; \ > +} \ > > /* > * PageBuddy() indicates that the page is free and in the buddy system > -- > 2.40.1 > > -- Sincerely yours, Mike. From xen-devel-bounces@lists.xenproject.org Wed Jun 14 13:08:57 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 13:08:57 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548753.856871 (Exim 4.92) (envelope-from ) id 1q9QF1-0001sv-IO; Wed, 14 Jun 2023 13:08:51 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548753.856871; Wed, 14 Jun 2023 13:08:51 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9QF1-0001so-FW; Wed, 14 Jun 2023 13:08:51 +0000 Received: by outflank-mailman (input) for mailman id 548753; Wed, 14 Jun 2023 13:08:50 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9QF0-0001si-Oo for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 13:08:50 +0000 Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 997ed0cf-0ab4-11ee-8611-37d641c3527e; Wed, 14 Jun 2023 15:08:48 +0200 (CEST) Received: from [192.168.1.125] (unknown [176.206.20.8]) by support.bugseng.com (Postfix) with ESMTPSA id A17584EE0738 for ; Wed, 14 Jun 2023 15:08:47 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 997ed0cf-0ab4-11ee-8611-37d641c3527e Message-ID: Date: Wed, 14 Jun 2023 15:08:47 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Content-Language: en-US To: xen-devel@lists.xenproject.org From: Federico Serafini Subject: Functions _spin_lock_cb() and handle_ro_raz() Organization: BUGSENG srl Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hello everyone, I am working on the violations of MISRA C:2012 Rule 8.10, whose headline says: "An inline function shall be declared with the static storage class". For both ARM64 and X86_64 builds, function _spin_lock_cb() defined in spinlock.c violates the rule. Such function is declared in spinlock.h without the inline function specifier: are there any reasons to do this? What about solving the violation by moving the function definition in spinlock.h and declaring it as static inline? The same happens also for the function handle_ro_raz() in the ARM64 build, declared in traps.h and defined in traps.c. Regards, Federico Serafini From xen-devel-bounces@lists.xenproject.org Wed Jun 14 13:15:49 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 13:15:49 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548760.856882 (Exim 4.92) (envelope-from ) id 1q9QLW-0003Mc-6s; Wed, 14 Jun 2023 13:15:34 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548760.856882; Wed, 14 Jun 2023 13:15:34 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9QLW-0003MV-3q; Wed, 14 Jun 2023 13:15:34 +0000 Received: by outflank-mailman (input) for mailman id 548760; Wed, 14 Jun 2023 13:15:33 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9QLU-0003MP-W6 for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 13:15:32 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [2604:1380:4641:c500::1]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 8929798c-0ab5-11ee-b232-6b7b168915f2; Wed, 14 Jun 2023 15:15:31 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id ACBE360BBD; Wed, 14 Jun 2023 13:15:29 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id B649EC433C8; Wed, 14 Jun 2023 13:15:21 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 8929798c-0ab5-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1686748529; bh=whQ+zlV1WEzxZw+ZGXxEweg4a4vDfMR6e71uQQs2gbo=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=s7xjkClpsrRd0CoRixHJBi4/Lfdbz8nogYKdzoqL6s3eJxDRQCWNMpgdb4AbXv9CR Z4Mkv0qvYVy9SJkW/jvAS0ZxXx1CQYkEeu3NCrKciopGG9Und4903naocQqXFUMtl6 yPzbCW2LZ6ezDI/wxoH54Yg/kLOj2i69KWH8UiwI6sF7DiK4/NkKP6rV9un/0W0Doj RAgFJvLRKzVNYh4fJ9vtLInAHMLllXQVH7t+igJKjaaprbiWJJRoGHFINHYZo43mnv pbyGvMKi8Ho+27G5xW4j/fp1MwG565nU3rISYKnonGcF9dec/Rj6LEhrskTSlZT6VS kmQL4fPtrwc2A== Date: Wed, 14 Jun 2023 16:14:50 +0300 From: Mike Rapoport To: "Vishal Moola (Oracle)" Cc: Andrew Morton , Matthew Wilcox , linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , David Hildenbrand , Claudio Imbrenda Subject: Re: [PATCH v4 02/34] s390: Use _pt_s390_gaddr for gmap address tracking Message-ID: <20230614131450.GA52412@kernel.org> References: <20230612210423.18611-1-vishal.moola@gmail.com> <20230612210423.18611-3-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20230612210423.18611-3-vishal.moola@gmail.com> On Mon, Jun 12, 2023 at 02:03:51PM -0700, Vishal Moola (Oracle) wrote: > s390 uses page->index to keep track of page tables for the guest address > space. In an attempt to consolidate the usage of page fields in s390, > replace _pt_pad_2 with _pt_s390_gaddr to replace page->index in gmap. > > This will help with the splitting of struct ptdesc from struct page, as > well as allow s390 to use _pt_frag_refcount for fragmented page table > tracking. > > Since page->_pt_s390_gaddr aliases with mapping, ensure its set to NULL > before freeing the pages as well. I'm looking at the final result and unless I've missed something, setting of _pt_s390_gaddr to 0 is always followed by pagetable_free(). Can't we have pagetable_free() take care of zeroing _pt_s390_gaddr? I think patch 16 ("s390: Convert various gmap functions to use ptdescs") would be the right place for that. Otherwise: Acked-by: Mike Rapoport (IBM) > This also reverts commit 7e25de77bc5ea ("s390/mm: use pmd_pgtable_page() > helper in __gmap_segment_gaddr()") which had s390 use > pmd_pgtable_page() to get a gmap page table, as pmd_pgtable_page() > should be used for more generic process page tables. > > Signed-off-by: Vishal Moola (Oracle) > --- > arch/s390/mm/gmap.c | 56 +++++++++++++++++++++++++++------------- > include/linux/mm_types.h | 2 +- > 2 files changed, 39 insertions(+), 19 deletions(-) > > diff --git a/arch/s390/mm/gmap.c b/arch/s390/mm/gmap.c > index dc90d1eb0d55..81c683426b49 100644 > --- a/arch/s390/mm/gmap.c > +++ b/arch/s390/mm/gmap.c > @@ -70,7 +70,7 @@ static struct gmap *gmap_alloc(unsigned long limit) > page = alloc_pages(GFP_KERNEL_ACCOUNT, CRST_ALLOC_ORDER); > if (!page) > goto out_free; > - page->index = 0; > + page->_pt_s390_gaddr = 0; > list_add(&page->lru, &gmap->crst_list); > table = page_to_virt(page); > crst_table_init(table, etype); > @@ -187,16 +187,20 @@ static void gmap_free(struct gmap *gmap) > if (!(gmap_is_shadow(gmap) && gmap->removed)) > gmap_flush_tlb(gmap); > /* Free all segment & region tables. */ > - list_for_each_entry_safe(page, next, &gmap->crst_list, lru) > + list_for_each_entry_safe(page, next, &gmap->crst_list, lru) { > + page->_pt_s390_gaddr = 0; > __free_pages(page, CRST_ALLOC_ORDER); > + } > gmap_radix_tree_free(&gmap->guest_to_host); > gmap_radix_tree_free(&gmap->host_to_guest); > > /* Free additional data for a shadow gmap */ > if (gmap_is_shadow(gmap)) { > /* Free all page tables. */ > - list_for_each_entry_safe(page, next, &gmap->pt_list, lru) > + list_for_each_entry_safe(page, next, &gmap->pt_list, lru) { > + page->_pt_s390_gaddr = 0; > page_table_free_pgste(page); > + } > gmap_rmap_radix_tree_free(&gmap->host_to_rmap); > /* Release reference to the parent */ > gmap_put(gmap->parent); > @@ -318,12 +322,14 @@ static int gmap_alloc_table(struct gmap *gmap, unsigned long *table, > list_add(&page->lru, &gmap->crst_list); > *table = __pa(new) | _REGION_ENTRY_LENGTH | > (*table & _REGION_ENTRY_TYPE_MASK); > - page->index = gaddr; > + page->_pt_s390_gaddr = gaddr; > page = NULL; > } > spin_unlock(&gmap->guest_table_lock); > - if (page) > + if (page) { > + page->_pt_s390_gaddr = 0; > __free_pages(page, CRST_ALLOC_ORDER); > + } > return 0; > } > > @@ -336,12 +342,14 @@ static int gmap_alloc_table(struct gmap *gmap, unsigned long *table, > static unsigned long __gmap_segment_gaddr(unsigned long *entry) > { > struct page *page; > - unsigned long offset; > + unsigned long offset, mask; > > offset = (unsigned long) entry / sizeof(unsigned long); > offset = (offset & (PTRS_PER_PMD - 1)) * PMD_SIZE; > - page = pmd_pgtable_page((pmd_t *) entry); > - return page->index + offset; > + mask = ~(PTRS_PER_PMD * sizeof(pmd_t) - 1); > + page = virt_to_page((void *)((unsigned long) entry & mask)); > + > + return page->_pt_s390_gaddr + offset; > } > > /** > @@ -1351,6 +1359,7 @@ static void gmap_unshadow_pgt(struct gmap *sg, unsigned long raddr) > /* Free page table */ > page = phys_to_page(pgt); > list_del(&page->lru); > + page->_pt_s390_gaddr = 0; > page_table_free_pgste(page); > } > > @@ -1379,6 +1388,7 @@ static void __gmap_unshadow_sgt(struct gmap *sg, unsigned long raddr, > /* Free page table */ > page = phys_to_page(pgt); > list_del(&page->lru); > + page->_pt_s390_gaddr = 0; > page_table_free_pgste(page); > } > } > @@ -1409,6 +1419,7 @@ static void gmap_unshadow_sgt(struct gmap *sg, unsigned long raddr) > /* Free segment table */ > page = phys_to_page(sgt); > list_del(&page->lru); > + page->_pt_s390_gaddr = 0; > __free_pages(page, CRST_ALLOC_ORDER); > } > > @@ -1437,6 +1448,7 @@ static void __gmap_unshadow_r3t(struct gmap *sg, unsigned long raddr, > /* Free segment table */ > page = phys_to_page(sgt); > list_del(&page->lru); > + page->_pt_s390_gaddr = 0; > __free_pages(page, CRST_ALLOC_ORDER); > } > } > @@ -1467,6 +1479,7 @@ static void gmap_unshadow_r3t(struct gmap *sg, unsigned long raddr) > /* Free region 3 table */ > page = phys_to_page(r3t); > list_del(&page->lru); > + page->_pt_s390_gaddr = 0; > __free_pages(page, CRST_ALLOC_ORDER); > } > > @@ -1495,6 +1508,7 @@ static void __gmap_unshadow_r2t(struct gmap *sg, unsigned long raddr, > /* Free region 3 table */ > page = phys_to_page(r3t); > list_del(&page->lru); > + page->_pt_s390_gaddr = 0; > __free_pages(page, CRST_ALLOC_ORDER); > } > } > @@ -1525,6 +1539,7 @@ static void gmap_unshadow_r2t(struct gmap *sg, unsigned long raddr) > /* Free region 2 table */ > page = phys_to_page(r2t); > list_del(&page->lru); > + page->_pt_s390_gaddr = 0; > __free_pages(page, CRST_ALLOC_ORDER); > } > > @@ -1557,6 +1572,7 @@ static void __gmap_unshadow_r1t(struct gmap *sg, unsigned long raddr, > /* Free region 2 table */ > page = phys_to_page(r2t); > list_del(&page->lru); > + page->_pt_s390_gaddr = 0; > __free_pages(page, CRST_ALLOC_ORDER); > } > } > @@ -1762,9 +1778,9 @@ int gmap_shadow_r2t(struct gmap *sg, unsigned long saddr, unsigned long r2t, > page = alloc_pages(GFP_KERNEL_ACCOUNT, CRST_ALLOC_ORDER); > if (!page) > return -ENOMEM; > - page->index = r2t & _REGION_ENTRY_ORIGIN; > + page->_pt_s390_gaddr = r2t & _REGION_ENTRY_ORIGIN; > if (fake) > - page->index |= GMAP_SHADOW_FAKE_TABLE; > + page->_pt_s390_gaddr |= GMAP_SHADOW_FAKE_TABLE; > s_r2t = page_to_phys(page); > /* Install shadow region second table */ > spin_lock(&sg->guest_table_lock); > @@ -1814,6 +1830,7 @@ int gmap_shadow_r2t(struct gmap *sg, unsigned long saddr, unsigned long r2t, > return rc; > out_free: > spin_unlock(&sg->guest_table_lock); > + page->_pt_s390_gaddr = 0; > __free_pages(page, CRST_ALLOC_ORDER); > return rc; > } > @@ -1846,9 +1863,9 @@ int gmap_shadow_r3t(struct gmap *sg, unsigned long saddr, unsigned long r3t, > page = alloc_pages(GFP_KERNEL_ACCOUNT, CRST_ALLOC_ORDER); > if (!page) > return -ENOMEM; > - page->index = r3t & _REGION_ENTRY_ORIGIN; > + page->_pt_s390_gaddr = r3t & _REGION_ENTRY_ORIGIN; > if (fake) > - page->index |= GMAP_SHADOW_FAKE_TABLE; > + page->_pt_s390_gaddr |= GMAP_SHADOW_FAKE_TABLE; > s_r3t = page_to_phys(page); > /* Install shadow region second table */ > spin_lock(&sg->guest_table_lock); > @@ -1898,6 +1915,7 @@ int gmap_shadow_r3t(struct gmap *sg, unsigned long saddr, unsigned long r3t, > return rc; > out_free: > spin_unlock(&sg->guest_table_lock); > + page->_pt_s390_gaddr = 0; > __free_pages(page, CRST_ALLOC_ORDER); > return rc; > } > @@ -1930,9 +1948,9 @@ int gmap_shadow_sgt(struct gmap *sg, unsigned long saddr, unsigned long sgt, > page = alloc_pages(GFP_KERNEL_ACCOUNT, CRST_ALLOC_ORDER); > if (!page) > return -ENOMEM; > - page->index = sgt & _REGION_ENTRY_ORIGIN; > + page->_pt_s390_gaddr = sgt & _REGION_ENTRY_ORIGIN; > if (fake) > - page->index |= GMAP_SHADOW_FAKE_TABLE; > + page->_pt_s390_gaddr |= GMAP_SHADOW_FAKE_TABLE; > s_sgt = page_to_phys(page); > /* Install shadow region second table */ > spin_lock(&sg->guest_table_lock); > @@ -1982,6 +2000,7 @@ int gmap_shadow_sgt(struct gmap *sg, unsigned long saddr, unsigned long sgt, > return rc; > out_free: > spin_unlock(&sg->guest_table_lock); > + page->_pt_s390_gaddr = 0; > __free_pages(page, CRST_ALLOC_ORDER); > return rc; > } > @@ -2014,9 +2033,9 @@ int gmap_shadow_pgt_lookup(struct gmap *sg, unsigned long saddr, > if (table && !(*table & _SEGMENT_ENTRY_INVALID)) { > /* Shadow page tables are full pages (pte+pgste) */ > page = pfn_to_page(*table >> PAGE_SHIFT); > - *pgt = page->index & ~GMAP_SHADOW_FAKE_TABLE; > + *pgt = page->_pt_s390_gaddr & ~GMAP_SHADOW_FAKE_TABLE; > *dat_protection = !!(*table & _SEGMENT_ENTRY_PROTECT); > - *fake = !!(page->index & GMAP_SHADOW_FAKE_TABLE); > + *fake = !!(page->_pt_s390_gaddr & GMAP_SHADOW_FAKE_TABLE); > rc = 0; > } else { > rc = -EAGAIN; > @@ -2054,9 +2073,9 @@ int gmap_shadow_pgt(struct gmap *sg, unsigned long saddr, unsigned long pgt, > page = page_table_alloc_pgste(sg->mm); > if (!page) > return -ENOMEM; > - page->index = pgt & _SEGMENT_ENTRY_ORIGIN; > + page->_pt_s390_gaddr = pgt & _SEGMENT_ENTRY_ORIGIN; > if (fake) > - page->index |= GMAP_SHADOW_FAKE_TABLE; > + page->_pt_s390_gaddr |= GMAP_SHADOW_FAKE_TABLE; > s_pgt = page_to_phys(page); > /* Install shadow page table */ > spin_lock(&sg->guest_table_lock); > @@ -2101,6 +2120,7 @@ int gmap_shadow_pgt(struct gmap *sg, unsigned long saddr, unsigned long pgt, > return rc; > out_free: > spin_unlock(&sg->guest_table_lock); > + page->_pt_s390_gaddr = 0; > page_table_free_pgste(page); > return rc; > > diff --git a/include/linux/mm_types.h b/include/linux/mm_types.h > index 306a3d1a0fa6..6161fe1ae5b8 100644 > --- a/include/linux/mm_types.h > +++ b/include/linux/mm_types.h > @@ -144,7 +144,7 @@ struct page { > struct { /* Page table pages */ > unsigned long _pt_pad_1; /* compound_head */ > pgtable_t pmd_huge_pte; /* protected by page->ptl */ > - unsigned long _pt_pad_2; /* mapping */ > + unsigned long _pt_s390_gaddr; /* mapping */ > union { > struct mm_struct *pt_mm; /* x86 pgds only */ > atomic_t pt_frag_refcount; /* powerpc */ > -- > 2.40.1 > > -- Sincerely yours, Mike. From xen-devel-bounces@lists.xenproject.org Wed Jun 14 13:20:55 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 13:20:55 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548765.856891 (Exim 4.92) (envelope-from ) id 1q9QQW-0004nT-PY; Wed, 14 Jun 2023 13:20:44 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548765.856891; Wed, 14 Jun 2023 13:20:44 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9QQW-0004nM-Mt; Wed, 14 Jun 2023 13:20:44 +0000 Received: by outflank-mailman (input) for mailman id 548765; Wed, 14 Jun 2023 13:20:43 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9QQV-0004nD-Kf for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 13:20:43 +0000 Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 419f75eb-0ab6-11ee-8611-37d641c3527e; Wed, 14 Jun 2023 15:20:39 +0200 (CEST) Received: from [192.168.1.88] (unknown [176.206.20.8]) by support.bugseng.com (Postfix) with ESMTPSA id E77CC4EE0738; Wed, 14 Jun 2023 15:20:37 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 419f75eb-0ab6-11ee-8611-37d641c3527e Message-ID: Date: Wed, 14 Jun 2023 15:20:36 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [XEN PATCH] xen: fixed violations of MISRA C:2012 Rule 3.1 Content-Language: en-US To: Julien Grall , Jan Beulich Cc: consulting@bugseng.com, Stefano Stabellini , Bertrand Marquis , Volodymyr Babchuk , Andrew Cooper , George Dunlap , Wei Liu , Rahul Singh , xen-devel@lists.xenproject.org References: <42cb13a7-3b62-8d48-a1a1-3094a7bd07fa@suse.com> From: nicola In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit On 13/06/23 11:44, Julien Grall wrote: > Hi, > > On 13/06/2023 09:27, Jan Beulich wrote: >> On 13.06.2023 09:42, Nicola Vetrini wrote: >>> The xen sources contain several violations of Rule 3.1 from MISRA >>> C:2012, >>> whose headline states: >>> "The character sequences '/*' and '//' shall not be used within a >>> comment". >>> >>> Most of the violations are due to the presence of links to webpages >>> within >>> C-style comment blocks, such as: >>> >>> xen/arch/arm/include/asm/smccc.h:37.1-41.3 >>> /* >>>   * This file provides common defines for ARM SMC Calling Convention as >>>   * specified in >>>   * >>> http://infocenter.arm.com/help/topic/com.arm.doc.den0028a/index.html >>>   */ >>> >>> In this case, we propose to deviate all of these occurrences with a >>> project deviation to be captured by a tool configuration. >>> >>> There are, however, a few other violations that do not fall under this >>> category, namely: >>> >>> 1. in file "xen/arch/arm/include/asm/arm64/flushtlb.h" we propose to >>> avoid the usage of a nested comment; >>> 2. in file "xen/common/xmalloc_tlsf.c" we propose to substitute the >>> commented-out if statement with a "#if 0 .. #endif; >>> 3. in file "xen/include/xen/atomic.h" and >>> "xen/drivers/passthrough/arm/smmu-v3.c" we propose to split the C-style >>> comment containing the nested comment into two doxygen comments, >>> clearly >>> identifying the second as a code sample. This can then be captured >>> with a >>> project deviation by a tool configuration. >>> >>> Signed-off-by: Nicola Vetrini >>> --- >>> Changes: >>> - Resending the patch with the right maintainers in CC. >> >> But without otherwise addressing comments already given, afaics. One >> more >> remark: >> >>> --- a/xen/common/xmalloc_tlsf.c >>> +++ b/xen/common/xmalloc_tlsf.c >>> @@ -140,9 +140,10 @@ static inline void MAPPING_SEARCH(unsigned long >>> *r, int *fl, int *sl) >>>           *fl = flsl(*r) - 1; >>>           *sl = (*r >> (*fl - MAX_LOG2_SLI)) - MAX_SLI; >>>           *fl -= FLI_OFFSET; >>> -        /*if ((*fl -= FLI_OFFSET) < 0) // FL will be always >0! >>> -         *fl = *sl = 0; >>> -         */ >>> +#if 0 >>> +        if ((*fl -= FLI_OFFSET) < 0) // FL will be always >0! >>> +        fl = *sl = 0; >> >> You want to get indentation right here, and you don't want to lose >> the indirection on fl. >> >>> +#endif >>>           *r &= ~t; >>>       } >>>   } >> >> If you split this to 4 patches, leaving the URL proposal in just >> the cover letter, then I think this one change (with the adjustments) >> could go in right away. Similarly I expect the arm64/flushtlb.h >> change could be ack-ed right away by an Arm maintainer. > > I actually dislike the proposal. In this case, the code is meant to > look like assembly code. I would replace the // with ;. Also, I would > like to keep the comment style in sync in arm32/flushtlb.h. So can > this be updated as well? > > Cheers, > Hi, Julien. I'm not authorized to send patches about files in the arm32 tree, but surely the patch can be easily replicated in any place where it makes sense for consistency. Regards,   Nicola From xen-devel-bounces@lists.xenproject.org Wed Jun 14 13:22:32 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 13:22:32 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548772.856902 (Exim 4.92) (envelope-from ) id 1q9QS5-0005L0-3P; Wed, 14 Jun 2023 13:22:21 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548772.856902; Wed, 14 Jun 2023 13:22:21 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9QS5-0005Kt-0r; Wed, 14 Jun 2023 13:22:21 +0000 Received: by outflank-mailman (input) for mailman id 548772; Wed, 14 Jun 2023 13:22:20 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9QS4-0005Kj-4N for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 13:22:20 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [2604:1380:4641:c500::1]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 7b2494c4-0ab6-11ee-8611-37d641c3527e; Wed, 14 Jun 2023 15:22:17 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id A19786175C; Wed, 14 Jun 2023 13:22:15 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id E5D64C433C0; Wed, 14 Jun 2023 13:22:07 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 7b2494c4-0ab6-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1686748935; bh=0vqssVcI3AzSm6ZYzSMTFzLW0LK2ArpvNNFnyd0jDMg=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=PwXP+1XbNJMc5dDtJjP8fRUbMVOfgYZkiV/CSEiQO+53OUw1mxkM7TNacSN2UVnvq Mwxs/DwA39lzTfMai8ygKMhnw/8A5txEm5g+274q1AspzudJm5ujeZxuL5SlxzV7kr XEeamoxRIjx3hqKKprCq30b101V9LmtVD7C/YrzqjcfWDUt0IERYcZ+YUZAUB1qm6M qU2wy/k+HKKhrQ/qrF2cNssBn4aoQYbJEpcB5m9Vm0+PGaXZfYQhkb0YSbhsS/HNdF f2cI0J/nTygASR5eUp+uYZzIW/J3GUH1QtysQDebu/WsZ8JxpIwHAuYB2k8FX53JGd 49yjsQPz5+zOQ== Date: Wed, 14 Jun 2023 16:21:37 +0300 From: Mike Rapoport To: "Vishal Moola (Oracle)" Cc: Andrew Morton , Matthew Wilcox , linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , David Hildenbrand , Claudio Imbrenda Subject: Re: [PATCH v4 03/34] s390: Use pt_frag_refcount for pagetables Message-ID: <20230614132137.GB52412@kernel.org> References: <20230612210423.18611-1-vishal.moola@gmail.com> <20230612210423.18611-4-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20230612210423.18611-4-vishal.moola@gmail.com> On Mon, Jun 12, 2023 at 02:03:52PM -0700, Vishal Moola (Oracle) wrote: > s390 currently uses _refcount to identify fragmented page tables. > The page table struct already has a member pt_frag_refcount used by > powerpc, so have s390 use that instead of the _refcount field as well. > This improves the safety for _refcount and the page table tracking. > > This also allows us to simplify the tracking since we can once again use > the lower byte of pt_frag_refcount instead of the upper byte of _refcount. > > Signed-off-by: Vishal Moola (Oracle) One nit below, otherwise Acked-by: Mike Rapoport (IBM) > --- > arch/s390/mm/pgalloc.c | 38 +++++++++++++++----------------------- > 1 file changed, 15 insertions(+), 23 deletions(-) > > diff --git a/arch/s390/mm/pgalloc.c b/arch/s390/mm/pgalloc.c > index 66ab68db9842..6b99932abc66 100644 > --- a/arch/s390/mm/pgalloc.c > +++ b/arch/s390/mm/pgalloc.c > @@ -182,20 +182,17 @@ void page_table_free_pgste(struct page *page) > * As follows from the above, no unallocated or fully allocated parent > * pages are contained in mm_context_t::pgtable_list. > * > - * The upper byte (bits 24-31) of the parent page _refcount is used > + * The lower byte (bits 0-7) of the parent page pt_frag_refcount is used > * for tracking contained 2KB-pgtables and has the following format: > * > * PP AA > - * 01234567 upper byte (bits 24-31) of struct page::_refcount > + * 01234567 upper byte (bits 0-7) of struct page::pt_frag_refcount Nit: lower > * || || > * || |+--- upper 2KB-pgtable is allocated > * || +---- lower 2KB-pgtable is allocated > * |+------- upper 2KB-pgtable is pending for removal > * +-------- lower 2KB-pgtable is pending for removal > * > - * (See commit 620b4e903179 ("s390: use _refcount for pgtables") on why > - * using _refcount is possible). > - * > * When 2KB-pgtable is allocated the corresponding AA bit is set to 1. > * The parent page is either: > * - added to mm_context_t::pgtable_list in case the second half of the > @@ -243,11 +240,12 @@ unsigned long *page_table_alloc(struct mm_struct *mm) > if (!list_empty(&mm->context.pgtable_list)) { > page = list_first_entry(&mm->context.pgtable_list, > struct page, lru); > - mask = atomic_read(&page->_refcount) >> 24; > + mask = atomic_read(&page->pt_frag_refcount); > /* > * The pending removal bits must also be checked. > * Failure to do so might lead to an impossible > - * value of (i.e 0x13 or 0x23) written to _refcount. > + * value of (i.e 0x13 or 0x23) written to > + * pt_frag_refcount. > * Such values violate the assumption that pending and > * allocation bits are mutually exclusive, and the rest > * of the code unrails as result. That could lead to > @@ -259,8 +257,8 @@ unsigned long *page_table_alloc(struct mm_struct *mm) > bit = mask & 1; /* =1 -> second 2K */ > if (bit) > table += PTRS_PER_PTE; > - atomic_xor_bits(&page->_refcount, > - 0x01U << (bit + 24)); > + atomic_xor_bits(&page->pt_frag_refcount, > + 0x01U << bit); > list_del(&page->lru); > } > } > @@ -281,12 +279,12 @@ unsigned long *page_table_alloc(struct mm_struct *mm) > table = (unsigned long *) page_to_virt(page); > if (mm_alloc_pgste(mm)) { > /* Return 4K page table with PGSTEs */ > - atomic_xor_bits(&page->_refcount, 0x03U << 24); > + atomic_xor_bits(&page->pt_frag_refcount, 0x03U); > memset64((u64 *)table, _PAGE_INVALID, PTRS_PER_PTE); > memset64((u64 *)table + PTRS_PER_PTE, 0, PTRS_PER_PTE); > } else { > /* Return the first 2K fragment of the page */ > - atomic_xor_bits(&page->_refcount, 0x01U << 24); > + atomic_xor_bits(&page->pt_frag_refcount, 0x01U); > memset64((u64 *)table, _PAGE_INVALID, 2 * PTRS_PER_PTE); > spin_lock_bh(&mm->context.lock); > list_add(&page->lru, &mm->context.pgtable_list); > @@ -323,22 +321,19 @@ void page_table_free(struct mm_struct *mm, unsigned long *table) > * will happen outside of the critical section from this > * function or from __tlb_remove_table() > */ > - mask = atomic_xor_bits(&page->_refcount, 0x11U << (bit + 24)); > - mask >>= 24; > + mask = atomic_xor_bits(&page->pt_frag_refcount, 0x11U << bit); > if (mask & 0x03U) > list_add(&page->lru, &mm->context.pgtable_list); > else > list_del(&page->lru); > spin_unlock_bh(&mm->context.lock); > - mask = atomic_xor_bits(&page->_refcount, 0x10U << (bit + 24)); > - mask >>= 24; > + mask = atomic_xor_bits(&page->pt_frag_refcount, 0x10U << bit); > if (mask != 0x00U) > return; > half = 0x01U << bit; > } else { > half = 0x03U; > - mask = atomic_xor_bits(&page->_refcount, 0x03U << 24); > - mask >>= 24; > + mask = atomic_xor_bits(&page->pt_frag_refcount, 0x03U); > } > > page_table_release_check(page, table, half, mask); > @@ -368,8 +363,7 @@ void page_table_free_rcu(struct mmu_gather *tlb, unsigned long *table, > * outside of the critical section from __tlb_remove_table() or from > * page_table_free() > */ > - mask = atomic_xor_bits(&page->_refcount, 0x11U << (bit + 24)); > - mask >>= 24; > + mask = atomic_xor_bits(&page->pt_frag_refcount, 0x11U << bit); > if (mask & 0x03U) > list_add_tail(&page->lru, &mm->context.pgtable_list); > else > @@ -391,14 +385,12 @@ void __tlb_remove_table(void *_table) > return; > case 0x01U: /* lower 2K of a 4K page table */ > case 0x02U: /* higher 2K of a 4K page table */ > - mask = atomic_xor_bits(&page->_refcount, mask << (4 + 24)); > - mask >>= 24; > + mask = atomic_xor_bits(&page->pt_frag_refcount, mask << 4); > if (mask != 0x00U) > return; > break; > case 0x03U: /* 4K page table with pgstes */ > - mask = atomic_xor_bits(&page->_refcount, 0x03U << 24); > - mask >>= 24; > + mask = atomic_xor_bits(&page->pt_frag_refcount, 0x03U); > break; > } > > -- > 2.40.1 > > -- Sincerely yours, Mike. From xen-devel-bounces@lists.xenproject.org Wed Jun 14 13:24:15 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 13:24:15 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548779.856912 (Exim 4.92) (envelope-from ) id 1q9QTk-0005yM-Hz; Wed, 14 Jun 2023 13:24:04 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548779.856912; Wed, 14 Jun 2023 13:24:04 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9QTk-0005yF-FB; Wed, 14 Jun 2023 13:24:04 +0000 Received: by outflank-mailman (input) for mailman id 548779; Wed, 14 Jun 2023 13:24:02 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9QTi-0005y3-Hg for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 13:24:02 +0000 Received: from esa3.hc3370-68.iphmx.com (esa3.hc3370-68.iphmx.com [216.71.145.155]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id b7a55bb6-0ab6-11ee-8611-37d641c3527e; Wed, 14 Jun 2023 15:23:59 +0200 (CEST) Received: from mail-dm6nam11lp2173.outbound.protection.outlook.com (HELO NAM11-DM6-obe.outbound.protection.outlook.com) ([104.47.57.173]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 14 Jun 2023 09:23:56 -0400 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) by SJ0PR03MB6223.namprd03.prod.outlook.com (2603:10b6:a03:37f::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.37; Wed, 14 Jun 2023 13:23:50 +0000 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::ab2a:a298:bacb:db47]) by SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::ab2a:a298:bacb:db47%2]) with mapi id 15.20.6477.037; Wed, 14 Jun 2023 13:23:50 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: b7a55bb6-0ab6-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686749039; h=date:from:to:cc:subject:message-id:references: in-reply-to:mime-version; bh=y+pdf4YCSaQqeK6eev4RIoFd0/TlIajkB40cgFzFmrM=; b=F0EGFrKMBqC+nOLBK4wpjDyQSKYB/V/dV6H3FH5CUJnP0EdKL59XDgjv 5293Vu4pBrNMQiU5etP0hx7YXMaecZnwEL+pi7+/JvEWCFsQ48sUvkNxv Z/2JwMq/vs1nJhSoUnK+cuDgj3Mff/t3G2CaJZnSCe6rmtvoSURVm3k6G I=; X-IronPort-RemoteIP: 104.47.57.173 X-IronPort-MID: 112776359 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:QQXqIa5tvDefQQ/SxTmdagxRtCrGchMFZxGqfqrLsTDasY5as4F+v mBJWzvUMvffN2unL41zPYi29kpUsZ/Ux4dqQQBvqX0wHi5G8cbLO4+Ufxz6V8+wwm8vb2o8t plDNYOQRCwQZiWBzvt4GuG59RGQ7YnRGvynTraCYnsrLeNdYH9JoQp5nOIkiZJfj9G8Agec0 fv/uMSaM1K+s9JOGjt8B5mr9lU35JwehBtC5gZlPa4S4AeH/5UoJMl3yZ+ZfiOQrrZ8RoZWd 86bpJml82XQ+QsaC9/Nut4XpWVTH9Y+lSDX4pZnc/DKbipq/0Te4Y5iXBYoUm9Fii3hojxE4 I4lWapc6+seFvakdOw1C3G0GszlVEFM0OevzXOX6aR/w6BaGpdFLjoH4EweZOUlFuhL7W5m2 PU5b24BNza6jN2Xzu+pY9JrheQfI5y+VG8fkikIITDxK98DGMmGb4CUoNhS0XE3m9xEGuvYa 4wBcz1zYR/cYhpJfFAKFJY5m+TujX76G9FagAvN+exrvC6Ok0ooj+OF3Nn9I7RmQe1PmUmVv CTe9nnRCRAGLt2PjzGC9xpAg8eWxHmkB9xJSezQGvhCjW+17TMDUBwtR1Kdnsizh2vnAu1FA hlBksYphe1onKCxdfH/VRClpH+PvjYHRsFdVeY97Wml2qfSpgqUGGUAZjpAc8A98t87QyQw0 V2ElM+vAiZg2IB5UlqY/7aQ6D+3Zy4cKDZbYTdeFFRepd7+vIs0kxTDCM55F7K4hcH0Hje2x C2WqC85hPMYistjO7iHwG0rSgmE/vDhJjPZLC2NNo55xmuVvLKYWrE= IronPort-HdrOrdr: A9a23:Q+5Py6puW3iJh/xideGgGwsaV5oReYIsimQD101hICG9JPbo8P xG+85rtiMc6QxwZJhOo7u90cW7K080lqQV3WByB9iftVLdyQ+VxehZhOPfKlvbdhEWndQy6U 4PScRD4HKbNykdsS5XijPIcerJYbO8gcWVuds= X-Talos-CUID: =?us-ascii?q?9a23=3AbQar/Wsd7dDZHNsYzh7ZMFNM6IsIe1yaknuJBXa?= =?us-ascii?q?zNkdnFa+8cliT2J9rxp8=3D?= X-Talos-MUID: 9a23:V+4eOwlbXxfbjp+AFJACdnpvBuFDvLT2CXsfmLM5isOJEHUpBC202WE= X-IronPort-AV: E=Sophos;i="6.00,242,1681185600"; d="scan'208";a="112776359" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=AZmCJLa6TziQjJXHg/tLs7SZ1ER/xdaygvnGwD/RzdSNmSI7YyKHnCFUgMMJXY7AD96S4kSmCy0rJFI5oJL+Ks/H7N/c9hHUytZQMY5RwVSwdbVHqgPWbczbFGlg20g6vRpwLVQSkz3DVsCoKjF+pykUtFruJgNGLmiiitXIEayds1aHSpWvb/xZIYGkCiDSs8il+GIbTxbYt3ylupywopHM6sXfOP47M1eDsa3v51QfxrEwrYbqRqil1Q2gp41bTHZWeBl1uMsm7eTiIY0uVpJuAK95GIXiU69ukHaMRX2lwpLbDOcDJHAsS2MSUjzUFJLdQn0zSKWu1hP6ved9cA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=EW0J2ASRDyPn3qivvp1t+h7uBWPprYtfWZ7NzD/HKt0=; b=SkBRLPkv9i4wrwu9tw8UpZhhNPTXandfSNM1VD7wRo4qjAA0Pe4B3DudA1CVYo7cg8ce0x70iU17gNrMKnaE4N2m+VIN3B122dgEVcRxv79J7tycrvX+DVKMwqg3YCb8JW/lMkFKLW0+wqPnuX/SyUITMXEI/+W+PfBjkqJb475QvrNpAKcZM4PcJDlVKoIMY/IHv4DPxh4Sjtu3GgDS0dDb+eSlkFhkbqp0dok6RMBYEqhI1yc6cKVTBWBBmX9BN1ChmxsS78ulZDvwPV2hnnmj7YC/Pg03+rfaPuKRZ6Gqa/wT9dIAKNovCtiHtzO5wSgQxXvXbb3IeSdY95EOjA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=EW0J2ASRDyPn3qivvp1t+h7uBWPprYtfWZ7NzD/HKt0=; b=tYCSgZRpHU3dfOaC1vJA4Z4uv+eXt1rKzULVXMFytxkdxCSEI+RKrSNeiNlpj+TlNi6LsXSXLsKbJNzLe4swuJjgafcx/9j/VAth7MM7zLDDWHgXWgakcdpFuhBT9M4XR4M9S3xjXNLPLJvjkkVtsom8zrGzuLtdJXxksG/K3QA= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Date: Wed, 14 Jun 2023 15:23:43 +0200 From: Roger Pau =?utf-8?B?TW9ubsOp?= To: Jan Beulich Cc: Andrew Cooper , xen-devel@lists.xenproject.org Subject: Re: [PATCH] iommu/amd-vi: adjust _amd_iommu_flush_pages() to handle pseudo-domids Message-ID: References: <20230614083236.64574-1-roger.pau@citrix.com> <5c12e29a-ea85-b216-fedd-a8028a82d3ac@suse.com> Content-Type: text/plain; charset=utf-8 Content-Disposition: inline In-Reply-To: <5c12e29a-ea85-b216-fedd-a8028a82d3ac@suse.com> X-ClientProxiedBy: LO4P123CA0196.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:1a4::21) To SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|SJ0PR03MB6223:EE_ X-MS-Office365-Filtering-Correlation-Id: 0a93b11f-3e59-464f-e307-08db6cda9745 X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 8YVC5rOwhi9HFRj/TZvJ+ijRQ8jRaqHYumG9OBUo37XZMMC1rUybzJcgAxw9NJpuCOkwmD9Bhcp3y1qM7+sI0AbOYn1mLpzlZVbs+BDEOcxXZ3z8KfsycZ2PLLzMu0My2iySVbpJoAhXw65MGF91fn+6vbIbvSPKaBW1j7esAP+KUvGh+J04lVceKWiEdcZ4bNQQYvepAOCjr+WCwn9bwQacHR/uCFDM7i4b69Duo5bJmO07Jk0N2UfDBSGFh9qO7AOs5lVT4ToF/Tu5hRj2CPonFfitPKJTVyn/JrQMpfvfwCDrNTMV2EW2Sml3rSQIXE8YqprusFQ2bRb1wZylmr5aczjIAKWVxtp3hp5+kjzCTPfEmZlr17SSrkQkDbWwlIeIbzBUOb3MGNcOcN88Nh7v04x69TkCFw9dT1MSn9qGTQpuqZn97q+b8vprwEt4+8UR7ELKzicvYpTnklA8Oh11CuyiODfUdrTy+LqFQJXBLbvy6XBlyKjGxhqOMLrHKwEl04ub8t8UZj+zHgLXnHAGwzaXYVvKtMWbQK8SSuk1FNK3KMqXqil0hpm6VHA7 X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(7916004)(4636009)(39860400002)(366004)(346002)(396003)(136003)(376002)(451199021)(83380400001)(5660300002)(186003)(33716001)(6506007)(2906002)(41300700001)(6512007)(8936002)(9686003)(26005)(8676002)(6486002)(316002)(53546011)(6666004)(85182001)(82960400001)(478600001)(38100700002)(86362001)(4326008)(66476007)(66556008)(66946007)(6916009);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?c3lkMmV4bWp4Z0J5YVlQeEd2Ym9BT2pWTzd4ZVkzQTFCSlUrdURBc2F4eU9H?= =?utf-8?B?K0x6YUl5SWRpWkh2QVZvNklFTUlXeWJDYW5SUDkxSDRIL2Y3Rmljb21GU1Vl?= =?utf-8?B?TmE5Uk9VK2swbWJ5dXhiMk1MbEY4S25wOXB4R1NadTNGSC90Um1HajdVZXlE?= =?utf-8?B?c2ZaL1U3N1VHVXYvd25hbkM4MDRhMG5pYm9yV2N4U2ovQ0licldoYU1nWE1z?= =?utf-8?B?ZnBEWG50VXBab3psd1hOY3NhQUNRNDBqc0ZQMlRkT3dIckhVY242WFZpSGkw?= =?utf-8?B?N3NaYmFtT0hXUER6UnRYWWZLRzhIbDhJemdla2F2dU9wL25kK0lCdG93dDFR?= =?utf-8?B?WEdMMU9RaXA0cC9XZ3kwcjFVY2ovS0d3L09nRFhEak1jOE45Z1BxakhmaTdK?= =?utf-8?B?VktTWU1JQU1hekY1cFhqTkgra0dYMUtYZmZnTlVVazNGeXovM1A4SVFhcnhk?= =?utf-8?B?YTVZc2gwaW5YZVlvQzMwS09ETE15NDBwVFA0RXczUmM5R3ZkNFYvNWZJRHVp?= =?utf-8?B?Z1dvaTZ1Z01ibWJUYnRqVlRQMTJPUUlMVTlWWFRTZVdObEdsaVhIYlhKSmdS?= =?utf-8?B?TkxiQzExUG43OHdQWDZzeENjSUxFaGYrUWpNOEsyL2w2Smwvemo5TEVndUFE?= =?utf-8?B?UFZCajhiOXlteVJnbHhjalVFVDhFYUVnWEs1NTE0am9oaTgxdlZIakpyNFR6?= =?utf-8?B?NlZpajJlTmE3MS9jV1QwQnZRRlBCVG5tL1d6QVB6RDdRNHJ0b1NvRExvU0RW?= =?utf-8?B?MXI5emJPcVAyWEZPR2lKeXlaQzEwcE0wMFhvNDRNTHg2ZnVoWGVUYjlBdUJu?= =?utf-8?B?Y0txMmlHbk1ubm1DN21LMEl0LzN6eXcxUVVsVHRoWkNXTE1adUxYaHZKeVVH?= =?utf-8?B?bjljVnVTS3gyOXNOQUpLVTFUL3pWeE1aZUI2Z1djemQwbXNUYUZwdHNpc3Rq?= =?utf-8?B?d3B3N09OOVEwLzdPMXVKRTh4SGUwU3EwKy9Wc01nV05TUTVoaUhHbkcrNHhz?= =?utf-8?B?M1V3bkNoNUVRaWRMU2VEdk52aXlVdkZlYWtrN3oxVnVaNXAwcm41ZW5IMzdL?= =?utf-8?B?MlMvMmpDWGhrVHZPK1BHODFXTGZSYnppL1YrVU9oWlZnOG9SNUZpOGxZZHRn?= =?utf-8?B?YnhqV080eWhDYldHTWFGSkNHOU03NjFSOTNDeThLSG9pd2ppZ3FYY214NjZF?= =?utf-8?B?M3lSMW4xK01UcUpvOFlWSTAvRDhjRDZBTmx0emJzVTNpVjhCeWNCZm9mZjRG?= =?utf-8?B?aTBTZTltQzdwQjJtd09Gc2dzcVAzdXlQRnN1cTB4WlBOTjZIbFBSQ0lWMUhQ?= =?utf-8?B?aVVLcW50MC9zUmQwbmY3eWZORGpYWk1ZYWNlaXFERmRyWlF0TnNmdG5oWFJJ?= =?utf-8?B?a2labzd1M2laN0Rzd2pBR1NDVXNOSGp2ZWxQeVRuMjlHdzdtV0R0ejllOTNS?= =?utf-8?B?OTRESEc1Yys1QjY5RytGcml1QlJUN0lPT2lCSGxLOFZKVjZJN1c0UWNIcnFG?= =?utf-8?B?ek9mWC9udi8raElUdHA2ekVYMkpJeCt0VDdUZ3Y5dHEwY3ppT3h2aFZyZms1?= =?utf-8?B?UE9NS1FjVHBoU1RBbzl4UnRscDZpOG9uN0p1eUxmN0FTZjJQKzR4N2JPVVB6?= =?utf-8?B?RHBtdFpBV3dFdzVPbmpYS01IaTBOR25TR3pzTjlMSjBUMWhTUUpxaUMyWG5B?= =?utf-8?B?VWRRRHl5dkY1aTM0Q3RobUZXTHc0NnUycXdaWlB0and0RWVJM3RTTVhGUWlV?= =?utf-8?B?M0hnaVNvakZCWGJISU9xclpmeE1ZQmVqQjE4MkNkeDZsdHkrK0lmNlBQQXB6?= =?utf-8?B?T3hOd2FMZkdGWXIrRlQwZzVaUWdWZSt5ZHo5aFQ4S3FEb1RwVUxuWk0wU05y?= =?utf-8?B?RUJZdVcrR1ZXZExLRUZ4eFZEMGFJTmRoZFFNZVBRVGUvZllNRm9PR1FTOTlk?= =?utf-8?B?NGVZNXJtQ2NrMWR3YnFjWFJ2UWw1L1UzUU1WV2VuaG5Mamg5cWVlWkhSbEVW?= =?utf-8?B?bWVFaHR0Q2R1T3kyWnN5bXZOeDVsR203cXpUZTdlbmhhNWFYRU4vNHZSbFdG?= =?utf-8?B?ajVGOWtlOU9vSlVaWHZZcDF4QjU3NkxETTBwK0JhTk5Bd1hyRVpKVklCVmFN?= =?utf-8?Q?hG3881Wkgd6Za4LKQCXJb52r7?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: JLAC7bfOkGmgLgxu4ZI2UOMOkk3SgbMgrqUh2IRFiMxvXqMeKnmwhRFrLrVbni0c9Ip2DOUC9u8OmBeUt805lO1oO6x2f57pL/IOP7rNNouJCZag1Xdoazlhh1QVMrBDH1iUzebwxer5ogIHeBKeiFK3px/6mHyFpX5pV1d9Dz8Kz2vLOe5F8zLmdB2nGNTlfR81BPRu+80Oo2qwdsOwJUfCC7lu8WYqFKx+zikuJjzHhslkrnDYVIyEQYyJGyPSiSY6BRlhdEg9sa3rankpmOtK0D9hORWh/N9tw1MkOdK951VfH4YRpVPKgIOUHTOt8mSss++p2Vut6sXZmugj3QIiSHR6Ng4Axihm3Y4m7qSd30fY/eIoysvsRaCjLgV54u31GRUmg+joIdoRE1E36wVg5HxAtQaNsJizL6rKGkEkcu2sOXycg26qKh3ecgWcGDMabujGH8ByRPG2Dkl42icyBaR77pfrNW6bqTN2o/Ax+9jUT36B3YT4VXMhhlIexHBy6JsPujQCsCDok/rNJPLIN3Exw+Ic9sXZqH/pLr5nOyjjvaZoCkmjf/Ij/pIryXyVThwacrbmDwseHIIZFtYIpBla9PgNMN+iGiqaeJEEXnUhvG8XRds2C09re4IOjM7CXcKBajBx3gaz9Nv6zwrANbg5Yn+/cjGPAuB+qyIQe/exJb77Q07dTUTKyt21O3RYLkkz135WoNVYob5RksFd8PojRvDUPhDNIL5UbyT0gWGoKt2WLJGsbYSTNiASJ0OFKLnQWiPipIFczFCKlv6zsP/u4IWq3DQDzaU32k0= X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 0a93b11f-3e59-464f-e307-08db6cda9745 X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Jun 2023 13:23:50.2727 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: rA4PHd/HJncPoRlDTO+UNQdzH8dBordAY2tPx4+mGWfDNooVfsdktiWbPOolg8vxYRhdsBfiXyeVaYpG4k4O8w== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR03MB6223 On Wed, Jun 14, 2023 at 02:58:14PM +0200, Jan Beulich wrote: > On 14.06.2023 10:32, Roger Pau Monne wrote: > > When the passed domain is DomIO iterate over the list of DomIO > > assigned devices and flush each pseudo-domid found. > > > > invalidate_all_domain_pages() does call amd_iommu_flush_all_pages() > > with DomIO as a parameter, > > Does it? Since the full function is visible in the patch (because of > the "While there ..." change), it seems pretty clear that it doesn't: > for_each_domain() iterates over ordinary domains only. Oh, I got confused by domain_create() returning early for system domains. > > and hence the underlying > > _amd_iommu_flush_pages() implementation must be capable of flushing > > all pseudo-domids used by the quarantine domain logic. > > While it didn't occur to me right away when we discussed this, it > may well be that I left alone all flushing when introducing the pseudo > domain IDs simply because no flushing would ever happen for the > quarantine domain. But the purpose of the calls to invalidate_all_devices() and invalidate_all_domain_pages() in amd_iommu_resume() is to cover up for the lack of Invalidate All support in the IOMMU, so flushing pseudo-domids is also required in order to flush all possible IOMMU state. Note that as part of invalidate_all_devices() we do invalidate DTEs for devices assigned to pseudo-domids, hence it seems natural that we also flush such pseudo-domids. > > While there fix invalidate_all_domain_pages() to only attempt to flush > > the domains that have IOMMU enabled, otherwise the flush is pointless. > > For the moment at least it looks to me as if this change alone wants > to go in. I would rather get the current patch with an added call to flush dom_io in invalidate_all_domain_pages(). Thanks, Roger. From xen-devel-bounces@lists.xenproject.org Wed Jun 14 13:35:46 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 13:35:46 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548786.856921 (Exim 4.92) (envelope-from ) id 1q9Qes-0007WH-HI; Wed, 14 Jun 2023 13:35:34 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548786.856921; Wed, 14 Jun 2023 13:35:34 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9Qes-0007WA-Ea; Wed, 14 Jun 2023 13:35:34 +0000 Received: by outflank-mailman (input) for mailman id 548786; Wed, 14 Jun 2023 13:35:33 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9Qer-0007W4-3I for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 13:35:33 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 5498c472-0ab8-11ee-b232-6b7b168915f2; Wed, 14 Jun 2023 15:35:31 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 0E80460F45; Wed, 14 Jun 2023 13:35:30 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id D0713C433CA; Wed, 14 Jun 2023 13:35:22 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 5498c472-0ab8-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1686749729; bh=81ZlQN2KCaIJsbaaGHZ2hKMohISmlbSD+ssqzisoAQE=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=peVIK5PcFaRM99or9IKjg5Wk1GpROr9ctyT8BIC08WEGhT/YvEFdtyhqzVHUa/AJj e0i1V5xO3S+nkbZMN2Z1j+Bn1zFA3bcGptvRkcKcxOtQ1DiUiH/SRvFWkjYuPvNtOb /7PZZr5SP19VfVlFD96OM/KULQ1zOIX2Xbubj4bVzLGTDR+801nenrylY8DxDwa57O 6Uw9KCAyHqA9nB1qo3GINyvqzZNtOwnsJDGtTX7sr0o8aiGfHvWm3PF1wyD410WZI6 eWxsBLAJy2LJHLpDUj97I0afV+G5xEfwOHfY+jLMTVk+L4qUJ/WcbncB5RrE8B814w cPPJ2HH5q8yYA== Date: Wed, 14 Jun 2023 16:34:51 +0300 From: Mike Rapoport To: "Vishal Moola (Oracle)" Cc: Andrew Morton , Matthew Wilcox , linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins Subject: Re: [PATCH v4 04/34] pgtable: Create struct ptdesc Message-ID: <20230614133451.GC52412@kernel.org> References: <20230612210423.18611-1-vishal.moola@gmail.com> <20230612210423.18611-5-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20230612210423.18611-5-vishal.moola@gmail.com> On Mon, Jun 12, 2023 at 02:03:53PM -0700, Vishal Moola (Oracle) wrote: > Currently, page table information is stored within struct page. As part > of simplifying struct page, create struct ptdesc for page table > information. > > Signed-off-by: Vishal Moola (Oracle) Acked-by: Mike Rapoport (IBM) > --- > include/linux/pgtable.h | 51 +++++++++++++++++++++++++++++++++++++++++ > 1 file changed, 51 insertions(+) > > diff --git a/include/linux/pgtable.h b/include/linux/pgtable.h > index c5a51481bbb9..330de96ebfd6 100644 > --- a/include/linux/pgtable.h > +++ b/include/linux/pgtable.h > @@ -975,6 +975,57 @@ static inline void ptep_modify_prot_commit(struct vm_area_struct *vma, > #endif /* __HAVE_ARCH_PTEP_MODIFY_PROT_TRANSACTION */ > #endif /* CONFIG_MMU */ > > + > +/** > + * struct ptdesc - Memory descriptor for page tables. > + * @__page_flags: Same as page flags. Unused for page tables. > + * @pt_list: List of used page tables. Used for s390 and x86. > + * @_pt_pad_1: Padding that aliases with page's compound head. > + * @pmd_huge_pte: Protected by ptdesc->ptl, used for THPs. > + * @_pt_s390_gaddr: Aliases with page's mapping. Used for s390 gmap only. > + * @pt_mm: Used for x86 pgds. > + * @pt_frag_refcount: For fragmented page table tracking. Powerpc and s390 only. > + * @ptl: Lock for the page table. Do you mind aligning the descriptions by @pt_frag_refcount? I think it'll be more readable. > + * > + * This struct overlays struct page for now. Do not modify without a good > + * understanding of the issues. > + */ > +struct ptdesc { > + unsigned long __page_flags; > + > + union { > + struct list_head pt_list; > + struct { > + unsigned long _pt_pad_1; > + pgtable_t pmd_huge_pte; > + }; > + }; > + unsigned long _pt_s390_gaddr; > + > + union { > + struct mm_struct *pt_mm; > + atomic_t pt_frag_refcount; > + }; > + > +#if ALLOC_SPLIT_PTLOCKS > + spinlock_t *ptl; > +#else > + spinlock_t ptl; > +#endif > +}; > + > +#define TABLE_MATCH(pg, pt) \ > + static_assert(offsetof(struct page, pg) == offsetof(struct ptdesc, pt)) > +TABLE_MATCH(flags, __page_flags); > +TABLE_MATCH(compound_head, pt_list); > +TABLE_MATCH(compound_head, _pt_pad_1); > +TABLE_MATCH(pmd_huge_pte, pmd_huge_pte); > +TABLE_MATCH(mapping, _pt_s390_gaddr); > +TABLE_MATCH(pt_mm, pt_mm); > +TABLE_MATCH(ptl, ptl); > +#undef TABLE_MATCH > +static_assert(sizeof(struct ptdesc) <= sizeof(struct page)); > + > /* > * No-op macros that just return the current protection value. Defined here > * because these macros can be used even if CONFIG_MMU is not defined. > -- > 2.40.1 > > -- Sincerely yours, Mike. From xen-devel-bounces@lists.xenproject.org Wed Jun 14 13:44:55 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 13:44:55 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548791.856932 (Exim 4.92) (envelope-from ) id 1q9Qnm-0000Ze-DC; Wed, 14 Jun 2023 13:44:46 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548791.856932; Wed, 14 Jun 2023 13:44:46 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9Qnm-0000ZX-AB; Wed, 14 Jun 2023 13:44:46 +0000 Received: by outflank-mailman (input) for mailman id 548791; Wed, 14 Jun 2023 13:44:44 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9Qnk-0000ZL-OP; Wed, 14 Jun 2023 13:44:44 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9Qnk-0003Rn-L8; Wed, 14 Jun 2023 13:44:44 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9Qnj-0002sa-Vx; Wed, 14 Jun 2023 13:44:44 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q9Qnj-0004nW-Tc; Wed, 14 Jun 2023 13:44:43 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=kOPOY7R+7e7kJYQnTiq4KQ+ie1+sMPDlFKaD3MEpkI0=; b=XqEwR00bSlUNOSIViOGPnM+2f+ MVpJzYROg8Ka2a8zKgPTE+NTqBZ+qIdezqfCyLXoBIAH2V3r0S/Rt2hyyHH3kmFHjG3Oj0vZuYRnt 3jcw3BxTJ9IgBldJd+DWVje5jkZwgwZBDkwIASkvXO3nsD2RJg3tdaSrRVOJZPHfCQcs=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [qemu-mainline test] 181424: regressions - FAIL X-Osstest-Failures: qemu-mainline:build-amd64-xsm:xen-build:fail:regression qemu-mainline:build-arm64:xen-build:fail:regression qemu-mainline:build-arm64-xsm:xen-build:fail:regression qemu-mainline:build-amd64:xen-build:fail:regression qemu-mainline:build-i386:xen-build:fail:regression qemu-mainline:build-i386-xsm:xen-build:fail:regression qemu-mainline:build-armhf:xen-build:fail:regression qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-i386:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:build-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:build-arm64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:build-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:build-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pygrub:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking X-Osstest-Versions-This: qemuu=7efd65423ab22e6f5890ca08ae40c84d6660242f X-Osstest-Versions-That: qemuu=6972ef1440a9d685482d78672620a7482f2bd09a From: osstest service owner Date: Wed, 14 Jun 2023 13:44:43 +0000 flight 181424 qemu-mainline real [real] http://logs.test-lab.xenproject.org/osstest/logs/181424/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-amd64-xsm 6 xen-build fail REGR. vs. 180691 build-arm64 6 xen-build fail REGR. vs. 180691 build-arm64-xsm 6 xen-build fail REGR. vs. 180691 build-amd64 6 xen-build fail REGR. vs. 180691 build-i386 6 xen-build fail REGR. vs. 180691 build-i386-xsm 6 xen-build fail REGR. vs. 180691 build-armhf 6 xen-build fail REGR. vs. 180691 Tests which did not succeed, but are not blocking: test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-xl-xsm 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-raw 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-xsm 1 build-check(1) blocked n/a test-arm64-arm64-xl 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit1 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit2 1 build-check(1) blocked n/a test-arm64-arm64-xl-thunderx 1 build-check(1) blocked n/a test-arm64-arm64-xl-vhd 1 build-check(1) blocked n/a test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a test-armhf-armhf-libvirt 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-qcow2 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-raw 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a test-armhf-armhf-xl-arndale 1 build-check(1) blocked n/a test-armhf-armhf-xl-multivcpu 1 build-check(1) blocked n/a test-armhf-armhf-xl-rtds 1 build-check(1) blocked n/a test-armhf-armhf-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-amd 1 build-check(1) blocked n/a test-amd64-i386-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-raw 1 build-check(1) blocked n/a test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-i386 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-amd64 1 build-check(1) blocked n/a test-amd64-coresched-i386-xl 1 build-check(1) blocked n/a test-amd64-coresched-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-xsm 1 build-check(1) blocked n/a build-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-shadow 1 build-check(1) blocked n/a test-amd64-amd64-xl-rtds 1 build-check(1) blocked n/a build-arm64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a build-armhf-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a build-i386-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-amd 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-pair 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-qcow2 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-vhd 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvshim 1 build-check(1) blocked n/a test-amd64-amd64-pair 1 build-check(1) blocked n/a test-amd64-amd64-pygrub 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-intel 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd11-amd64 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd12-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-multivcpu 1 build-check(1) blocked n/a test-amd64-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit1 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit1 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit2 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-intel 1 build-check(1) blocked n/a test-amd64-i386-xl 1 build-check(1) blocked n/a test-amd64-i386-xl-pvshim 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a version targeted for testing: qemuu 7efd65423ab22e6f5890ca08ae40c84d6660242f baseline version: qemuu 6972ef1440a9d685482d78672620a7482f2bd09a Last test of basis 180691 2023-05-17 10:45:22 Z 28 days Failing since 180699 2023-05-18 07:21:24 Z 27 days 100 attempts Testing same since 181419 2023-06-14 05:08:14 Z 0 days 2 attempts ------------------------------------------------------------ People who touched revisions under test: Afonso Bordado Akihiko Odaki Akihiro Suda Alex Bennée Alex Williamson Alexander Bulekov Alexander Graf Alexander Ivanov Alistair Francis Anastasia Belova Andrea Bolognani Andreas Schwab Andrew Jeffery Ani Sinha Ani Sinha Anthony PERARD Anton Johansson Antonio Caggiano BALATON Zoltan Bastian Koppelmann Bernhard Beschow Bin Meng Brian Cain Brice Goglin Camilla Conte Carlos Santos Christian Schoenebeck Chuck Zmudzinski Cindy Lu Clément Chigot Corey Minyard Cornelia Huck Cédric Le Goater Cédric Le Goater Daniel Henrique Barboza Daniel Henrique Barboza Daniel P. Berrangé Daniil Kovalev David Hildenbrand David Woodhouse Emanuele Giuseppe Esposito Enze Li Eric Auger Eric Blake Eric DeVolder Erico Nunes Eugenio Pérez Fabiano Rosas Fan Ni Fiona Ebner Francesco Cagnin Francisco Iglesias Frederic Barrat Gavin Shan Gregory Price Gregory Price Hanna Czenczek Hao Zeng Hawkins Jiawei Himanshu Chauhan Igor Mammedov Ilya Leoshkevich Ira Weiny Ivan Klokov Jagannathan Raman Jason Wang Jean-Louis Dupond Jean-Philippe Brucker Jiaxun Yang Joao Martins John Snow Jonathan Cameron Juan Quintela Junqiang Wang Kevin Wolf Laurent Vivier Lei Yang Leonardo Bras Maksim Davydov Marc-André Lureau Marcin Juszkiewicz Marco Liebel Mark Cave-Ayland Markus Armbruster Matheus Tavares Bernardino Mattias Nissler Mauro Matteo Cascella Max Fritz Mayuresh Chitale Michael S. Tsirkin Michael Tokarev Michal Privoznik Milan Zamazal Mostafa Saleh Nicholas Piggin Nicolas Saenz Julienne Niek Linnenbank Niklas Cassel Palmer Dabbelt Paolo Bonzini Patrick Venture Peter Maydell Peter Xu Philippe Mathieu-Daudé Philippe Mathieu-Daudé qianfan Zhao Raghu H Rene Engel Richard Henderson Richard Purdie Ricky Zhou Ryan Wendland Sebastian Ott Sergio Lopez Sid Manning Song Gao Stefan Hajnoczi Stefano Garzarella Steve Sistare Sunil V L Taylor Simpson Thomas Huth Thomas Weißschuh timothee.cocault@gmail.com Timothée Cocault Tommy Wu Vikram Garhwal Viktor Prutyanov Vitaly Cheptsov Vivek Kasireddy Vladimir Sementsov-Ogievskiy Volker Rümelin Weiwei Li Xiao Wang Xinyu Li Yin Wang Zeng Hao Zhenyu Zhang Zhenzhong Duan Zhuojia Shen jobs: build-amd64-xsm fail build-arm64-xsm fail build-i386-xsm fail build-amd64 fail build-arm64 fail build-armhf fail build-i386 fail build-amd64-libvirt blocked build-arm64-libvirt blocked build-armhf-libvirt blocked build-i386-libvirt blocked build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl blocked test-amd64-coresched-amd64-xl blocked test-arm64-arm64-xl blocked test-armhf-armhf-xl blocked test-amd64-i386-xl blocked test-amd64-coresched-i386-xl blocked test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-i386-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-amd64-libvirt-xsm blocked test-arm64-arm64-libvirt-xsm blocked test-amd64-i386-libvirt-xsm blocked test-amd64-amd64-xl-xsm blocked test-arm64-arm64-xl-xsm blocked test-amd64-i386-xl-xsm blocked test-amd64-amd64-qemuu-nested-amd blocked test-amd64-amd64-xl-pvhv2-amd blocked test-amd64-i386-qemuu-rhel6hvm-amd blocked test-amd64-amd64-dom0pvh-xl-amd blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-freebsd10-amd64 blocked test-amd64-amd64-qemuu-freebsd11-amd64 blocked test-amd64-amd64-qemuu-freebsd12-amd64 blocked test-amd64-amd64-xl-qemuu-ovmf-amd64 blocked test-amd64-i386-xl-qemuu-ovmf-amd64 blocked test-amd64-amd64-xl-qemuu-win7-amd64 blocked test-amd64-i386-xl-qemuu-win7-amd64 blocked test-amd64-amd64-xl-qemuu-ws16-amd64 blocked test-amd64-i386-xl-qemuu-ws16-amd64 blocked test-armhf-armhf-xl-arndale blocked test-amd64-amd64-xl-credit1 blocked test-arm64-arm64-xl-credit1 blocked test-armhf-armhf-xl-credit1 blocked test-amd64-amd64-xl-credit2 blocked test-arm64-arm64-xl-credit2 blocked test-armhf-armhf-xl-credit2 blocked test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-freebsd10-i386 blocked test-amd64-amd64-qemuu-nested-intel blocked test-amd64-amd64-xl-pvhv2-intel blocked test-amd64-i386-qemuu-rhel6hvm-intel blocked test-amd64-amd64-dom0pvh-xl-intel blocked test-amd64-amd64-libvirt blocked test-armhf-armhf-libvirt blocked test-amd64-i386-libvirt blocked test-amd64-amd64-xl-multivcpu blocked test-armhf-armhf-xl-multivcpu blocked test-amd64-amd64-pair blocked test-amd64-i386-pair blocked test-amd64-amd64-libvirt-pair blocked test-amd64-i386-libvirt-pair blocked test-amd64-amd64-xl-pvshim blocked test-amd64-i386-xl-pvshim blocked test-amd64-amd64-pygrub blocked test-armhf-armhf-libvirt-qcow2 blocked test-amd64-amd64-xl-qcow2 blocked test-arm64-arm64-libvirt-raw blocked test-armhf-armhf-libvirt-raw blocked test-amd64-i386-libvirt-raw blocked test-amd64-amd64-xl-rtds blocked test-armhf-armhf-xl-rtds blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-amd64-xl-shadow blocked test-amd64-i386-xl-shadow blocked test-arm64-arm64-xl-thunderx blocked test-amd64-amd64-libvirt-vhd blocked test-arm64-arm64-xl-vhd blocked test-armhf-armhf-xl-vhd blocked test-amd64-i386-xl-vhd blocked ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 18679 lines long.) From xen-devel-bounces@lists.xenproject.org Wed Jun 14 13:48:53 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 13:48:53 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548800.856942 (Exim 4.92) (envelope-from ) id 1q9Qri-0001Gr-1k; Wed, 14 Jun 2023 13:48:50 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548800.856942; Wed, 14 Jun 2023 13:48:50 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9Qrh-0001Gk-Uv; Wed, 14 Jun 2023 13:48:49 +0000 Received: by outflank-mailman (input) for mailman id 548800; Wed, 14 Jun 2023 13:48:48 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9Qrg-0001Ge-TE for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 13:48:48 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 2e83dd5c-0aba-11ee-8611-37d641c3527e; Wed, 14 Jun 2023 15:48:46 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 14F9D64263; Wed, 14 Jun 2023 13:48:45 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 9B707C433C0; Wed, 14 Jun 2023 13:48:38 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 2e83dd5c-0aba-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1686750524; bh=gxU3ouGWBBmqmAiLv/xnL0DeuSWekXdjsP3njBIM/3U=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=V0QZDgjJL3QgE9x8JUspdTbfMfs3pMGIVLLZECZJRsEFY8NLOU3FHa9eCro1DbTQG /FeNyJHOZk4eWdOp9Qm7YkJcLLJo0ck5GXNz5h3cPjiltj6wJSpNYi/mUUybLAseJG L8jXEpIhrSeK1arYk58jkb8ZY9oXqo8PxB0L2CeXKQzmY6lKQeLK4aPo3LbQYz+RlD 4VPsZDkobDvZkcDjfmrkEBjkp93jW2mXHfVUlKBD7ewu+WoTI6jTDRezExZmibSP75 rhMOAusVyZKPnHJ6/AZh/X/iBtHCxp2v/1z1wxzagOqeVMLIVnG7qjazCHaREz+Nj1 kDrhr4zp2JnYA== Date: Wed, 14 Jun 2023 16:48:08 +0300 From: Mike Rapoport To: "Vishal Moola (Oracle)" Cc: Andrew Morton , Matthew Wilcox , linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins Subject: Re: [PATCH v4 05/34] mm: add utility functions for ptdesc Message-ID: <20230614134808.GD52412@kernel.org> References: <20230612210423.18611-1-vishal.moola@gmail.com> <20230612210423.18611-6-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20230612210423.18611-6-vishal.moola@gmail.com> On Mon, Jun 12, 2023 at 02:03:54PM -0700, Vishal Moola (Oracle) wrote: > Introduce utility functions setting the foundation for ptdescs. These > will also assist in the splitting out of ptdesc from struct page. > > Functions that focus on the descriptor are prefixed with ptdesc_* while > functions that focus on the pagetable are prefixed with pagetable_*. > > pagetable_alloc() is defined to allocate new ptdesc pages as compound > pages. This is to standardize ptdescs by allowing for one allocation > and one free function, in contrast to 2 allocation and 2 free functions. > > Signed-off-by: Vishal Moola (Oracle) > --- > include/asm-generic/tlb.h | 11 +++++++ > include/linux/mm.h | 61 +++++++++++++++++++++++++++++++++++++++ > include/linux/pgtable.h | 12 ++++++++ > 3 files changed, 84 insertions(+) > > diff --git a/include/asm-generic/tlb.h b/include/asm-generic/tlb.h > index b46617207c93..6bade9e0e799 100644 > --- a/include/asm-generic/tlb.h > +++ b/include/asm-generic/tlb.h > @@ -481,6 +481,17 @@ static inline void tlb_remove_page(struct mmu_gather *tlb, struct page *page) > return tlb_remove_page_size(tlb, page, PAGE_SIZE); > } > > +static inline void tlb_remove_ptdesc(struct mmu_gather *tlb, void *pt) > +{ > + tlb_remove_table(tlb, pt); > +} > + > +/* Like tlb_remove_ptdesc, but for page-like page directories. */ > +static inline void tlb_remove_page_ptdesc(struct mmu_gather *tlb, struct ptdesc *pt) > +{ > + tlb_remove_page(tlb, ptdesc_page(pt)); > +} > + > static inline void tlb_change_page_size(struct mmu_gather *tlb, > unsigned int page_size) > { > diff --git a/include/linux/mm.h b/include/linux/mm.h > index 0db09639dd2d..f184f1eba85d 100644 > --- a/include/linux/mm.h > +++ b/include/linux/mm.h > @@ -2766,6 +2766,62 @@ static inline pmd_t *pmd_alloc(struct mm_struct *mm, pud_t *pud, unsigned long a > } > #endif /* CONFIG_MMU */ > > +static inline struct ptdesc *virt_to_ptdesc(const void *x) > +{ > + return page_ptdesc(virt_to_page(x)); > +} > + > +static inline void *ptdesc_to_virt(const struct ptdesc *pt) > +{ > + return page_to_virt(ptdesc_page(pt)); > +} > + > +static inline void *ptdesc_address(const struct ptdesc *pt) > +{ > + return folio_address(ptdesc_folio(pt)); > +} > + > +static inline bool pagetable_is_reserved(struct ptdesc *pt) > +{ > + return folio_test_reserved(ptdesc_folio(pt)); > +} > + > +/** > + * pagetable_alloc - Allocate pagetables > + * @gfp: GFP flags > + * @order: desired pagetable order > + * > + * pagetable_alloc allocates a page table descriptor as well as all pages > + * described by it. I think the order should be switched here to emphasize that primarily this method allocates memory for page tables. How about pagetable_alloc allocates memory for the page tables as well as a page table descriptor that describes the allocated memory > + * > + * Return: The ptdesc describing the allocated page tables. > + */ > +static inline struct ptdesc *pagetable_alloc(gfp_t gfp, unsigned int order) > +{ > + struct page *page = alloc_pages(gfp | __GFP_COMP, order); > + > + return page_ptdesc(page); > +} > + > +/** > + * pagetable_free - Free pagetables > + * @pt: The page table descriptor > + * > + * pagetable_free frees a page table descriptor as well as all page > + * tables described by said ptdesc. Similarly here. > + */ > +static inline void pagetable_free(struct ptdesc *pt) > +{ > + struct page *page = ptdesc_page(pt); > + > + __free_pages(page, compound_order(page)); > +} > + > +static inline void pagetable_clear(void *x) > +{ > + clear_page(x); > +} > + > #if USE_SPLIT_PTE_PTLOCKS > #if ALLOC_SPLIT_PTLOCKS > void __init ptlock_cache_init(void); > @@ -2992,6 +3048,11 @@ static inline void mark_page_reserved(struct page *page) > adjust_managed_page_count(page, -1); > } > > +static inline void free_reserved_ptdesc(struct ptdesc *pt) > +{ > + free_reserved_page(ptdesc_page(pt)); > +} > + > /* > * Default method to free all the __init memory into the buddy system. > * The freed pages will be poisoned with pattern "poison" if it's within > diff --git a/include/linux/pgtable.h b/include/linux/pgtable.h > index 330de96ebfd6..c405f74d3875 100644 > --- a/include/linux/pgtable.h > +++ b/include/linux/pgtable.h > @@ -1026,6 +1026,18 @@ TABLE_MATCH(ptl, ptl); > #undef TABLE_MATCH > static_assert(sizeof(struct ptdesc) <= sizeof(struct page)); > > +#define ptdesc_page(pt) (_Generic((pt), \ > + const struct ptdesc *: (const struct page *)(pt), \ > + struct ptdesc *: (struct page *)(pt))) > + > +#define ptdesc_folio(pt) (_Generic((pt), \ > + const struct ptdesc *: (const struct folio *)(pt), \ > + struct ptdesc *: (struct folio *)(pt))) > + > +#define page_ptdesc(p) (_Generic((p), \ > + const struct page *: (const struct ptdesc *)(p), \ > + struct page *: (struct ptdesc *)(p))) > + > /* > * No-op macros that just return the current protection value. Defined here > * because these macros can be used even if CONFIG_MMU is not defined. > -- > 2.40.1 > > -- Sincerely yours, Mike. From xen-devel-bounces@lists.xenproject.org Wed Jun 14 13:52:05 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 13:52:05 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548806.856962 (Exim 4.92) (envelope-from ) id 1q9Quq-0002zu-Mq; Wed, 14 Jun 2023 13:52:04 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548806.856962; Wed, 14 Jun 2023 13:52:04 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9Quq-0002zl-Jk; Wed, 14 Jun 2023 13:52:04 +0000 Received: by outflank-mailman (input) for mailman id 548806; Wed, 14 Jun 2023 13:52:03 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9Qup-0002zG-GF for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 13:52:03 +0000 Received: from EUR01-VE1-obe.outbound.protection.outlook.com (mail-ve1eur01on0630.outbound.protection.outlook.com [2a01:111:f400:fe1f::630]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id a2f4733c-0aba-11ee-8611-37d641c3527e; Wed, 14 Jun 2023 15:52:01 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by AM9PR04MB8857.eurprd04.prod.outlook.com (2603:10a6:20b:408::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.29; Wed, 14 Jun 2023 13:51:58 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.039; Wed, 14 Jun 2023 13:51:57 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: a2f4733c-0aba-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=C6EexMYMKk+uw9UST8Jqk4jnrqxNnu2maoajxMiuX4DIvgPEUz7wvVexK08fdtNpXyAphQpmOhzxYsVIFMYfoH38SYd60ClWTUeJg9NwzRaC0M4xmUG3opn3PmPO6j5CxybBGfQdI8IEkzj67G9ZXTmnFpYdZeDSm4RspEcCbcGHE88ADk0XtHp7kNP72Xacs8eJL1pkkBcYPEctJ8AHmvedAyV3C8pbhSZZIOM9JyncWy0+Cad722fmhbhSYjfJt8mDP6Lsf18VPuUmpZDbQhmg1eaAen2C5JmOyTFs8ZGiAtKBjDpQXBsKSjBq/Aw0a7vpTFMNr8WVMUNK2T462A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=smvQtCsPdiA8ZGiDimrFt5qwpEVDcrd/rk8/Jm6Ir6c=; b=IL0iZc15DLJk9YwjjDf0iOZ2Pl2YlK5RcnrsM2uYlHVKMQv+ebwPM9Vm4avXApMwpE+AQPp53k0C6ype8WJCC7rXk02BIk5R7GMrisUXrDZ7U8lhMrlIJ5NBGcwVBj6Yhzq28ka0JDCQArRZ2EE/Mo8qszeZTFgQZuUX80k8+HJWASiODwcl9HTNUeDqXDSXlcBBiKAElfOaQHoJDutXYLSvqv4CVmbBmds4vhzdAHPH+qhsj9tO7Ftx4z/m317ZTE0FSoyJmUTp5Vq0WVQcjk6M37KSo7MhSifTzLdw0e+2X64ANLwYhK8djnZXEfGNAvOljDrwNRuPvWvlc7A3xg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=smvQtCsPdiA8ZGiDimrFt5qwpEVDcrd/rk8/Jm6Ir6c=; b=Yd2s4RDAtYGJE/gyNKwHWfqti9Zq9Y/TcjurpB8BAY5D/O4HjVSIbGeosSN5byepet//G4GNTuSCsK8sXFH7jmsRUkN/226JNjcqkoSmkm3Vd6cx2bQ5tSPy63kMjYKucoCTgbxGbX587an+2EgS2axmUm3c7tx3UL/zDbIIPGVt7P0iEb/SjKJXecgDrAZo9tG3hvbCzgwopEI12odHcjpM2Wj+XhJA2k2F8xHuJ+eO1G59rVmTaXrJoFGA+1hDYoAJqhsQOnSSKwMZwj+Ah0AkFVT7vLoOYvSoBfsqAzlrecUOgGy5iSSVcfGWPMgfpw43ZJlKY5v6cFrfgQTwVg== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <852e58dc-f71a-30ef-09f0-0b39466efe4d@suse.com> Date: Wed, 14 Jun 2023 15:51:55 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH] iommu/amd-vi: adjust _amd_iommu_flush_pages() to handle pseudo-domids Content-Language: en-US To: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= Cc: Andrew Cooper , xen-devel@lists.xenproject.org References: <20230614083236.64574-1-roger.pau@citrix.com> <5c12e29a-ea85-b216-fedd-a8028a82d3ac@suse.com> From: Jan Beulich In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: FR3P281CA0006.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:1d::16) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|AM9PR04MB8857:EE_ X-MS-Office365-Filtering-Correlation-Id: b9fcd74f-388e-4872-b49e-08db6cde8511 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: FWtvRkFhJWQ6FKNj98aUI4339RyKUkL+CkDT09iIBeh790c2nuXrAn8LWNso+6WgHusdAcEWN1YEiyYLhKTFNftiAJfiVz0Pi3qX7+hc5XuZJEdCBLCblqXdRmjYLADtsJDd11zvGMqHoKaRvvs/kmf9/kEkXuEjjj1Ty2SxUATUWbiYiiQUbRX4mRmUFJ3ysdrUGOxi/QiZSFUg8/FGtrpeGxMU3IRcMIq1fpewhPnIaJaM9i1uEstXbO078vc4pj+FRZqxAWDvFwMn7a2MzIw/ZCQtiQsK+sOmqgtw0wfmvxibEQVgMUPVeURfR1FZt4FAYurNGO/NBJ+L/H8xCgQkH4o+Ns+QRd6dznN4CZ337MR6IutWRgNn9Fv68X2oVDj/UVx4XTBrjyp5NZN2RxYRTZO8oo4tdlUcZjWviglEO/PEIZwans7PMUtEw0dRtltYARc3eGonJhGp/joG+71s4bM9LeIbDGBDC1vhDDSz4u0gQWzh9kK/u/6DeBPIIA4yRkCggKZDsGgB72Nsip8K1Kc29bCWcKhYVbFLlaW44QZmzzkc6NLCV3usuXhH3MwsOM7ioy7xf8S79IBAZ0wGb5XQTslFDQbas6lEYc+nHmtcDOLmXXTH8eHLE40PyYNnQPlDigQhB7M3oFCtqA== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(346002)(136003)(376002)(39860400002)(396003)(366004)(451199021)(86362001)(6486002)(31696002)(316002)(8676002)(41300700001)(5660300002)(26005)(83380400001)(6512007)(38100700002)(53546011)(6506007)(8936002)(66556008)(36756003)(66946007)(6916009)(4326008)(478600001)(186003)(31686004)(2906002)(66476007)(2616005)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?Z2ZZV1ZCSnl3L2tFSG5kdUpDdDkwQmNyLzR4ZHdpY2wyZ2tucDNXQTVmaE1T?= =?utf-8?B?S3pRMFloQ21mK0tJb25yWWZiSEhkOHJJcVdPdHJCK1pDUWtTZ2phY1RYSWRC?= =?utf-8?B?VEN3c2t1OXh6WE9mRjVlcHlCMkRYWVhOSTg5UTkrSHBJTXh3ZFlkY2xudUhZ?= =?utf-8?B?ZEh5SXdWcjZHRGF3RklCcm0vNkh6cFhuOTBqMDV4ak1XV3lmRzRrTVFNMklt?= =?utf-8?B?d1BQR1B1ZkNvLzVGb3BwVlJrRHhhYys3M0ZKR0tFSEV6TnczWXN4VisxMmdw?= =?utf-8?B?bk9zc0hLT1dCL2Y5VGhwSUIyR1hveTZpYzVXZTg2eDFtMmN1VmFEUkhOOHFn?= =?utf-8?B?L0NTWjVxVDQvZ0hGbFNod0JMYU1GdGN6OXI1MGdkU2JYYTdPVUp5NWJTUHJq?= =?utf-8?B?RFlEV0w1MEsweE1UODVmVXZWYUl1THJxb0R4ejFDUFNlVkYyYWxMU3ArUVdl?= =?utf-8?B?eHFtdGVIK3kvZVZzenh4aWZ2azM5aUt5cHQzNGhqRTNwUUUxZnJSVlpqSTd2?= =?utf-8?B?cGxOZG5kcklYUXdjZXE5aUtjY3JnbktrazFjUFVYamU1cjZBNWhJbmZtV3di?= =?utf-8?B?MGRZTk13NXdjSW83Y1U1OE44K1p0TDZVQnNZS3BJRXJBaVdtZllZb1Z0NS9j?= =?utf-8?B?RFpQRDZYSisxeXlVZEp0bE9YWjV1OHlZQ0d4SnBHYVh2TzMxWXVxMndNVzBK?= =?utf-8?B?emdJbzZMcEl0U3EvNFhKTytnMloyWi9kM2cvSG52U3l2TFU4ZDFGMmVkdXFv?= =?utf-8?B?cjZZUDlBcllRaEFGUDlQUkM5VFdBUUxRa0tRcnhSSkF6Wit2OFRFQXIyNnZx?= =?utf-8?B?eCtjMG9BcG1lU1F4YktlY0Z5ekR2WjduS3YzSkJ5T2RsdHR2Nll5UTRFaGFn?= =?utf-8?B?eTN3c3lnRGlQL2RqWDR1a29uNHR5WjVaT3FuRkd1ejFDZDdqQk1yTk9Sb0V1?= =?utf-8?B?ZVU2RkpuS3daQmRGZ3Jha3puQjcwR1lqY1JDRFVVNm1hWHVsUjM2ODB3bTlj?= =?utf-8?B?ODhyaXZNUGFwcmgxVTVTVnR2bHJxcXA1djY2Ui9nYlRWb0lEOVY0emlWcVVX?= =?utf-8?B?SlZIYXlySGhqRlBPYWxQdXNFSFM1a0svdFZ1dnhYbDBWd3JaTVpkcHNZVU43?= =?utf-8?B?V1lqSmRPWFVWOGFtMks1YmxwaE9GZVhpOENRd0k1MjZONllrL3RGb2xXelFs?= =?utf-8?B?UXdXOEtVWk1oSUthT3ErN0E5NFU4SjNaVG01N2RxSzBycFdJUWRIbnFKaUhB?= =?utf-8?B?WENiTjljRFpTbENWZWRzcVY2Q1VkMU96cEJ4bXJDZjdZNDRBbEJqK3VLNnpi?= =?utf-8?B?bmhmWWZEblRpMkRPRDRPLzNLbVU2RkNhcGh5R1QxanVqT1BJejU0LzNpcVFi?= =?utf-8?B?RXR4RlMrOXZUK080UDl6L0pndHMwY1FZZ0sxZmlmMVhNOGNwTFBkd3lycUVi?= =?utf-8?B?MzFmdUJhOGJza3o3ejZaZlNFVzErY0tiM010VGZuNVpaalRORjQwRmhGemYr?= =?utf-8?B?a1Faei9ZSUxNOEpUdHB1djJRdUJ3c1Qrd05sNTJxdGY0Q0J3SXpYcVdGbFZj?= =?utf-8?B?TzcwenJrcloyUVVkZzYyNUhKVnRrUFBQTjZENDRIOStMSTNKcHpsdjRseFJU?= =?utf-8?B?TEN1ZWMzejJJcllOVGdXMWJ5U0IvZDZlOGp1V1NOVjVEdmV4Vm9WSEIza0xK?= =?utf-8?B?UkltV1FLaFFFUVlTWlJRbFBFK0lHS1BqVDNZVGptWjRkZSs3Z2VpL3pYSzlz?= =?utf-8?B?WjROOGwrLy9mRnFTcDhOejVnQkVmRG5MTkVEUVBZOXJnREVEeThvT0h0TXV1?= =?utf-8?B?dVZncmU2YURuVTl5RFBFalpoeERQUVVtNzFoenVZVkgzdHFKR2F6eGt3MlhN?= =?utf-8?B?U0w2RmMrTkRoYkpBcnpGTCs3cXRlbVRvV3EwSCs4c2tlZ3B2RGZxSE55WGxP?= =?utf-8?B?ZW9KcUxaVW5Ca2txc0VnOWxIYytaZ1BFRkI4ZDcraGU2TEtocDUwM1FpYkRR?= =?utf-8?B?cHpnTjBqYmozRmhnQWJOazhsTG1xSGJYbjZpaEtFZzZqS0JtOW9jTGd2UW90?= =?utf-8?B?V2lBL1d5TTZXU3hNZ0FZby9Wa05aL3dldnNOd2hUVzZQaTN3WGlRRDFUS3VO?= =?utf-8?Q?xGqHVje0cgxokYUHQdOBybTAq?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: b9fcd74f-388e-4872-b49e-08db6cde8511 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Jun 2023 13:51:57.5518 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: LVSjRj4K0q8wMT1hNmKr57MX9k1/8IEcUT/SQQoUyEzoQIi2VflOutaT3YLdrTM52VAu3xGXM7ZA75agwIXAgg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR04MB8857 On 14.06.2023 15:23, Roger Pau Monné wrote: > On Wed, Jun 14, 2023 at 02:58:14PM +0200, Jan Beulich wrote: >> On 14.06.2023 10:32, Roger Pau Monne wrote: >>> When the passed domain is DomIO iterate over the list of DomIO >>> assigned devices and flush each pseudo-domid found. >>> >>> invalidate_all_domain_pages() does call amd_iommu_flush_all_pages() >>> with DomIO as a parameter, >> >> Does it? Since the full function is visible in the patch (because of >> the "While there ..." change), it seems pretty clear that it doesn't: >> for_each_domain() iterates over ordinary domains only. > > Oh, I got confused by domain_create() returning early for system > domains. > >>> and hence the underlying >>> _amd_iommu_flush_pages() implementation must be capable of flushing >>> all pseudo-domids used by the quarantine domain logic. >> >> While it didn't occur to me right away when we discussed this, it >> may well be that I left alone all flushing when introducing the pseudo >> domain IDs simply because no flushing would ever happen for the >> quarantine domain. > > But the purpose of the calls to invalidate_all_devices() and > invalidate_all_domain_pages() in amd_iommu_resume() is to cover up for > the lack of Invalidate All support in the IOMMU, so flushing > pseudo-domids is also required in order to flush all possible IOMMU > state. > > Note that as part of invalidate_all_devices() we do invalidate DTEs > for devices assigned to pseudo-domids, hence it seems natural that we > also flush such pseudo-domids. > >>> While there fix invalidate_all_domain_pages() to only attempt to flush >>> the domains that have IOMMU enabled, otherwise the flush is pointless. >> >> For the moment at least it looks to me as if this change alone wants >> to go in. > > I would rather get the current patch with an added call to flush > dom_io in invalidate_all_domain_pages(). The question is: Is there anything that needs flushing for the quarantine domain. Right now I'm thinking that there isn't. Jan From xen-devel-bounces@lists.xenproject.org Wed Jun 14 13:52:05 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 13:52:05 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548805.856951 (Exim 4.92) (envelope-from ) id 1q9Qug-0002i3-Fu; Wed, 14 Jun 2023 13:51:54 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548805.856951; Wed, 14 Jun 2023 13:51:54 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9Qug-0002hw-Ce; Wed, 14 Jun 2023 13:51:54 +0000 Received: by outflank-mailman (input) for mailman id 548805; Wed, 14 Jun 2023 13:51:53 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9Quf-0002hX-BZ for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 13:51:53 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 9d4122eb-0aba-11ee-b232-6b7b168915f2; Wed, 14 Jun 2023 15:51:52 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 0D0F86371D; Wed, 14 Jun 2023 13:51:51 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 7653EC433C0; Wed, 14 Jun 2023 13:51:43 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 9d4122eb-0aba-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1686750710; bh=MAYhMoo3f8WL6wMqKE5pm7ocfhsiks+frK6iH2blioo=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=UEIirlFbT/jXJvHUAqdydA59j1RgDZUUfgyOKgwNndXqGOEHUHhZfOzL8/NQgVHWq /q8XC8zbUoWUdbEY52nA6n3QMoY+5uT3nVSo46hX3ckloa8Tsk20nvsFk+nFyI69rq kqHKU2qNg4cLDxDKYqW/CF0jwV3eWOULQ1qERJP4E28CBFcj6QUn7snwpsx+9K+Qu2 POIbcaK1ERRHtrayBYsdhpVVMqCnIj3U/FswN9W3HiA4Vsg6KhJEbi7yWjCVgy7Bim qkQ5e6uOUhmZCAZAp2Mldqm52UMAWsfOcJWE7Vw1mqKjcEoYqpl1pq42H9ff1U9Ztz NxXUpOfWIJH1g== Date: Wed, 14 Jun 2023 16:51:12 +0300 From: Mike Rapoport To: "Vishal Moola (Oracle)" Cc: Andrew Morton , Matthew Wilcox , linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins Subject: Re: [PATCH v4 06/34] mm: Convert pmd_pgtable_page() to pmd_ptdesc() Message-ID: <20230614135112.GE52412@kernel.org> References: <20230612210423.18611-1-vishal.moola@gmail.com> <20230612210423.18611-7-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20230612210423.18611-7-vishal.moola@gmail.com> On Mon, Jun 12, 2023 at 02:03:55PM -0700, Vishal Moola (Oracle) wrote: > Converts pmd_pgtable_page() to pmd_ptdesc() and all its callers. This > removes some direct accesses to struct page, working towards splitting > out struct ptdesc from struct page. > > Signed-off-by: Vishal Moola (Oracle) Acked-by: Mike Rapoport (IBM) > --- > include/linux/mm.h | 8 ++++---- > 1 file changed, 4 insertions(+), 4 deletions(-) > > diff --git a/include/linux/mm.h b/include/linux/mm.h > index f184f1eba85d..088b7664f897 100644 > --- a/include/linux/mm.h > +++ b/include/linux/mm.h > @@ -2931,15 +2931,15 @@ static inline void pgtable_pte_page_dtor(struct page *page) > > #if USE_SPLIT_PMD_PTLOCKS > > -static inline struct page *pmd_pgtable_page(pmd_t *pmd) > +static inline struct ptdesc *pmd_ptdesc(pmd_t *pmd) > { > unsigned long mask = ~(PTRS_PER_PMD * sizeof(pmd_t) - 1); > - return virt_to_page((void *)((unsigned long) pmd & mask)); > + return virt_to_ptdesc((void *)((unsigned long) pmd & mask)); > } > > static inline spinlock_t *pmd_lockptr(struct mm_struct *mm, pmd_t *pmd) > { > - return ptlock_ptr(pmd_pgtable_page(pmd)); > + return ptlock_ptr(ptdesc_page(pmd_ptdesc(pmd))); > } > > static inline bool pmd_ptlock_init(struct page *page) > @@ -2958,7 +2958,7 @@ static inline void pmd_ptlock_free(struct page *page) > ptlock_free(page); > } > > -#define pmd_huge_pte(mm, pmd) (pmd_pgtable_page(pmd)->pmd_huge_pte) > +#define pmd_huge_pte(mm, pmd) (pmd_ptdesc(pmd)->pmd_huge_pte) > > #else > > -- > 2.40.1 > > -- Sincerely yours, Mike. From xen-devel-bounces@lists.xenproject.org Wed Jun 14 13:52:21 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 13:52:21 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548808.856972 (Exim 4.92) (envelope-from ) id 1q9Qv6-0003Qy-Ut; Wed, 14 Jun 2023 13:52:20 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548808.856972; Wed, 14 Jun 2023 13:52:20 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9Qv6-0003Qr-SE; Wed, 14 Jun 2023 13:52:20 +0000 Received: by outflank-mailman (input) for mailman id 548808; Wed, 14 Jun 2023 13:52:18 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9Qv4-0002hX-Oz for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 13:52:18 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [2604:1380:4641:c500::1]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id ac91f9eb-0aba-11ee-b232-6b7b168915f2; Wed, 14 Jun 2023 15:52:17 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id B94836426A; Wed, 14 Jun 2023 13:52:16 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 57C7AC433CB; Wed, 14 Jun 2023 13:52:09 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: ac91f9eb-0aba-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1686750736; bh=VwaE4ixu2oYgT8bWCqZd/sCxt5Vr7LA6FKY2uA7+iKA=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=Pvu46WaEl54YKxvYrg17S6Us5Z+6jc6ZyxloGDXNG3sVbWCAn8khJSWsZ739VwfPP KwSYnW5Cb22U/hoqAU+3FM5yWaAmL/GvAe5O+LdrEw3/pZtxxI5c7cLPpLdtEqXk8T Fbh9NCB++t1sBODF7SprarK+tEpzTtUTE1tfwFFFrABefWFeIYBfx1eKkeOd7kHivF njsBTw00M7iYLOdiQBjB3A+VyNpSzWxaS2T8NQnbhp/VhP28ksnHBcMgphMjijMkdr wBr5rhU0/C9m5DU9+5BLMiU/dcdSlTsxTG9cV+YRjI8bVXWZYj/RDtOKkEZB/GxHIp Of8H4nZJFOgvQ== Date: Wed, 14 Jun 2023 16:51:38 +0300 From: Mike Rapoport To: "Vishal Moola (Oracle)" Cc: Andrew Morton , Matthew Wilcox , linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins Subject: Re: [PATCH v4 07/34] mm: Convert ptlock_alloc() to use ptdescs Message-ID: <20230614135138.GF52412@kernel.org> References: <20230612210423.18611-1-vishal.moola@gmail.com> <20230612210423.18611-8-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20230612210423.18611-8-vishal.moola@gmail.com> On Mon, Jun 12, 2023 at 02:03:56PM -0700, Vishal Moola (Oracle) wrote: > This removes some direct accesses to struct page, working towards > splitting out struct ptdesc from struct page. > > Signed-off-by: Vishal Moola (Oracle) Acked-by: Mike Rapoport (IBM) > --- > include/linux/mm.h | 6 +++--- > mm/memory.c | 4 ++-- > 2 files changed, 5 insertions(+), 5 deletions(-) > > diff --git a/include/linux/mm.h b/include/linux/mm.h > index 088b7664f897..e6f1be2a405e 100644 > --- a/include/linux/mm.h > +++ b/include/linux/mm.h > @@ -2825,7 +2825,7 @@ static inline void pagetable_clear(void *x) > #if USE_SPLIT_PTE_PTLOCKS > #if ALLOC_SPLIT_PTLOCKS > void __init ptlock_cache_init(void); > -extern bool ptlock_alloc(struct page *page); > +bool ptlock_alloc(struct ptdesc *ptdesc); > extern void ptlock_free(struct page *page); > > static inline spinlock_t *ptlock_ptr(struct page *page) > @@ -2837,7 +2837,7 @@ static inline void ptlock_cache_init(void) > { > } > > -static inline bool ptlock_alloc(struct page *page) > +static inline bool ptlock_alloc(struct ptdesc *ptdesc) > { > return true; > } > @@ -2867,7 +2867,7 @@ static inline bool ptlock_init(struct page *page) > * slab code uses page->slab_cache, which share storage with page->ptl. > */ > VM_BUG_ON_PAGE(*(unsigned long *)&page->ptl, page); > - if (!ptlock_alloc(page)) > + if (!ptlock_alloc(page_ptdesc(page))) > return false; > spin_lock_init(ptlock_ptr(page)); > return true; > diff --git a/mm/memory.c b/mm/memory.c > index 80ce9dda2779..ba9579117686 100644 > --- a/mm/memory.c > +++ b/mm/memory.c > @@ -5934,14 +5934,14 @@ void __init ptlock_cache_init(void) > SLAB_PANIC, NULL); > } > > -bool ptlock_alloc(struct page *page) > +bool ptlock_alloc(struct ptdesc *ptdesc) > { > spinlock_t *ptl; > > ptl = kmem_cache_alloc(page_ptl_cachep, GFP_KERNEL); > if (!ptl) > return false; > - page->ptl = ptl; > + ptdesc->ptl = ptl; > return true; > } > > -- > 2.40.1 > > -- Sincerely yours, Mike. From xen-devel-bounces@lists.xenproject.org Wed Jun 14 13:52:48 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 13:52:48 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548821.856982 (Exim 4.92) (envelope-from ) id 1q9QvY-0004Dn-An; Wed, 14 Jun 2023 13:52:48 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548821.856982; Wed, 14 Jun 2023 13:52:48 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9QvY-0004Dg-86; Wed, 14 Jun 2023 13:52:48 +0000 Received: by outflank-mailman (input) for mailman id 548821; Wed, 14 Jun 2023 13:52:47 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9QvW-0002zG-Vi for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 13:52:46 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id bcd7eadd-0aba-11ee-8611-37d641c3527e; Wed, 14 Jun 2023 15:52:45 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 0070864287; Wed, 14 Jun 2023 13:52:44 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id AA10DC433C0; Wed, 14 Jun 2023 13:52:36 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: bcd7eadd-0aba-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1686750763; bh=Jr1CjE7x6zZhqlD+PrxSeOCGxWprISw499VNjITcty4=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=WTLFY5L6mnlqfGDyFTiH9jqq2FKHmRtqRnjsTj1RSarSSy3AxLfMgUgjr8wGlmHBW ZIyTwYSaSC1laCUlNWdYFX2P0Vpo5Cygx+gCIcavFIbmFA7gdFkAZSMhEGMMgWmRbu 2PIwOB+Zm2qIyVb3o5W9j04IHSX7uWkmLNNjNW4pTo0Uj3+m7MBHT7TUhTgbQveuQG 8Y13PY2/OBFLWcieHZ12iDoM6RLDamAU84EbiDa/rEeH2lt3RpONvk9+fHWXJncK7b 7pIkWK95aM9sq+JHpbXwyxHzzP/N7RDgJmdalD7vC2ycKfkQ6ox4Zo04K9yfj/x21h HrE7P9YKzVHGQ== Date: Wed, 14 Jun 2023 16:52:05 +0300 From: Mike Rapoport To: "Vishal Moola (Oracle)" Cc: Andrew Morton , Matthew Wilcox , linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins Subject: Re: [PATCH v4 08/34] mm: Convert ptlock_ptr() to use ptdescs Message-ID: <20230614135205.GG52412@kernel.org> References: <20230612210423.18611-1-vishal.moola@gmail.com> <20230612210423.18611-9-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20230612210423.18611-9-vishal.moola@gmail.com> On Mon, Jun 12, 2023 at 02:03:57PM -0700, Vishal Moola (Oracle) wrote: > This removes some direct accesses to struct page, working towards > splitting out struct ptdesc from struct page. > > Signed-off-by: Vishal Moola (Oracle) Acked-by: Mike Rapoport (IBM) > --- > arch/x86/xen/mmu_pv.c | 2 +- > include/linux/mm.h | 14 +++++++------- > 2 files changed, 8 insertions(+), 8 deletions(-) > > diff --git a/arch/x86/xen/mmu_pv.c b/arch/x86/xen/mmu_pv.c > index b3b8d289b9ab..f469862e3ef4 100644 > --- a/arch/x86/xen/mmu_pv.c > +++ b/arch/x86/xen/mmu_pv.c > @@ -651,7 +651,7 @@ static spinlock_t *xen_pte_lock(struct page *page, struct mm_struct *mm) > spinlock_t *ptl = NULL; > > #if USE_SPLIT_PTE_PTLOCKS > - ptl = ptlock_ptr(page); > + ptl = ptlock_ptr(page_ptdesc(page)); > spin_lock_nest_lock(ptl, &mm->page_table_lock); > #endif > > diff --git a/include/linux/mm.h b/include/linux/mm.h > index e6f1be2a405e..bb934d51390f 100644 > --- a/include/linux/mm.h > +++ b/include/linux/mm.h > @@ -2828,9 +2828,9 @@ void __init ptlock_cache_init(void); > bool ptlock_alloc(struct ptdesc *ptdesc); > extern void ptlock_free(struct page *page); > > -static inline spinlock_t *ptlock_ptr(struct page *page) > +static inline spinlock_t *ptlock_ptr(struct ptdesc *ptdesc) > { > - return page->ptl; > + return ptdesc->ptl; > } > #else /* ALLOC_SPLIT_PTLOCKS */ > static inline void ptlock_cache_init(void) > @@ -2846,15 +2846,15 @@ static inline void ptlock_free(struct page *page) > { > } > > -static inline spinlock_t *ptlock_ptr(struct page *page) > +static inline spinlock_t *ptlock_ptr(struct ptdesc *ptdesc) > { > - return &page->ptl; > + return &ptdesc->ptl; > } > #endif /* ALLOC_SPLIT_PTLOCKS */ > > static inline spinlock_t *pte_lockptr(struct mm_struct *mm, pmd_t *pmd) > { > - return ptlock_ptr(pmd_page(*pmd)); > + return ptlock_ptr(page_ptdesc(pmd_page(*pmd))); > } > > static inline bool ptlock_init(struct page *page) > @@ -2869,7 +2869,7 @@ static inline bool ptlock_init(struct page *page) > VM_BUG_ON_PAGE(*(unsigned long *)&page->ptl, page); > if (!ptlock_alloc(page_ptdesc(page))) > return false; > - spin_lock_init(ptlock_ptr(page)); > + spin_lock_init(ptlock_ptr(page_ptdesc(page))); > return true; > } > > @@ -2939,7 +2939,7 @@ static inline struct ptdesc *pmd_ptdesc(pmd_t *pmd) > > static inline spinlock_t *pmd_lockptr(struct mm_struct *mm, pmd_t *pmd) > { > - return ptlock_ptr(ptdesc_page(pmd_ptdesc(pmd))); > + return ptlock_ptr(pmd_ptdesc(pmd)); > } > > static inline bool pmd_ptlock_init(struct page *page) > -- > 2.40.1 > > -- Sincerely yours, Mike. From xen-devel-bounces@lists.xenproject.org Wed Jun 14 13:53:24 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 13:53:24 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548826.856992 (Exim 4.92) (envelope-from ) id 1q9Qw2-0004qn-Jz; Wed, 14 Jun 2023 13:53:18 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548826.856992; Wed, 14 Jun 2023 13:53:18 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9Qw2-0004qg-Gt; Wed, 14 Jun 2023 13:53:18 +0000 Received: by outflank-mailman (input) for mailman id 548826; Wed, 14 Jun 2023 13:53:17 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9Qw1-0002zG-4G for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 13:53:17 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id ceda119b-0aba-11ee-8611-37d641c3527e; Wed, 14 Jun 2023 15:53:15 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 3128961F1E; Wed, 14 Jun 2023 13:53:14 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 36061C433C9; Wed, 14 Jun 2023 13:53:06 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: ceda119b-0aba-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1686750793; bh=i+dWwopS2R2pjDCoeERaU9nBu0jCYzS/lwxwHCWXb4I=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=TGto5Dvi/HN8fU/LSHI/Xe9mWSqjuoMuAggxIeDsDpSdGjOz+OD5Q61dYnwlfUI2u 12eC8JWZkY3dBTcv69CxtYmzohm/TspcjrDl3Zxm+eVFHQ1BuvWvblYU6lS5nHTdB4 4jgzdRwk6I0iRkcg+lC5rT6e/+Zoj8O4Z4XMzKkrAI3Xrl//xHCT0oSrSqy8qzE0DR HFjNZU76vrLc90NskBD5ZmADqSbItjU5wL2oiacXptUySDzj5MWQp2048o6t9bgjHk 3J9d7i2fEQepFckTIKlCANmHRPvvJQeN1+/+mCtl5JH8j+CkcnEmQVaXh28mzw5CiW A7drC/yoaT/Vw== Date: Wed, 14 Jun 2023 16:52:36 +0300 From: Mike Rapoport To: "Vishal Moola (Oracle)" Cc: Andrew Morton , Matthew Wilcox , linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins Subject: Re: [PATCH v4 09/34] mm: Convert pmd_ptlock_init() to use ptdescs Message-ID: <20230614135236.GH52412@kernel.org> References: <20230612210423.18611-1-vishal.moola@gmail.com> <20230612210423.18611-10-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20230612210423.18611-10-vishal.moola@gmail.com> On Mon, Jun 12, 2023 at 02:03:58PM -0700, Vishal Moola (Oracle) wrote: > This removes some direct accesses to struct page, working towards > splitting out struct ptdesc from struct page. > > Signed-off-by: Vishal Moola (Oracle) Acked-by: Mike Rapoport (IBM) > --- > include/linux/mm.h | 10 +++++----- > 1 file changed, 5 insertions(+), 5 deletions(-) > > diff --git a/include/linux/mm.h b/include/linux/mm.h > index bb934d51390f..daecf1db6cf1 100644 > --- a/include/linux/mm.h > +++ b/include/linux/mm.h > @@ -2942,12 +2942,12 @@ static inline spinlock_t *pmd_lockptr(struct mm_struct *mm, pmd_t *pmd) > return ptlock_ptr(pmd_ptdesc(pmd)); > } > > -static inline bool pmd_ptlock_init(struct page *page) > +static inline bool pmd_ptlock_init(struct ptdesc *ptdesc) > { > #ifdef CONFIG_TRANSPARENT_HUGEPAGE > - page->pmd_huge_pte = NULL; > + ptdesc->pmd_huge_pte = NULL; > #endif > - return ptlock_init(page); > + return ptlock_init(ptdesc_page(ptdesc)); > } > > static inline void pmd_ptlock_free(struct page *page) > @@ -2967,7 +2967,7 @@ static inline spinlock_t *pmd_lockptr(struct mm_struct *mm, pmd_t *pmd) > return &mm->page_table_lock; > } > > -static inline bool pmd_ptlock_init(struct page *page) { return true; } > +static inline bool pmd_ptlock_init(struct ptdesc *ptdesc) { return true; } > static inline void pmd_ptlock_free(struct page *page) {} > > #define pmd_huge_pte(mm, pmd) ((mm)->pmd_huge_pte) > @@ -2983,7 +2983,7 @@ static inline spinlock_t *pmd_lock(struct mm_struct *mm, pmd_t *pmd) > > static inline bool pgtable_pmd_page_ctor(struct page *page) > { > - if (!pmd_ptlock_init(page)) > + if (!pmd_ptlock_init(page_ptdesc(page))) > return false; > __SetPageTable(page); > inc_lruvec_page_state(page, NR_PAGETABLE); > -- > 2.40.1 > > -- Sincerely yours, Mike. From xen-devel-bounces@lists.xenproject.org Wed Jun 14 13:58:51 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 13:58:51 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548832.857002 (Exim 4.92) (envelope-from ) id 1q9R1A-0005bb-4p; Wed, 14 Jun 2023 13:58:36 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548832.857002; Wed, 14 Jun 2023 13:58:36 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9R1A-0005bU-1V; Wed, 14 Jun 2023 13:58:36 +0000 Received: by outflank-mailman (input) for mailman id 548832; Wed, 14 Jun 2023 13:58:34 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9R18-0005bO-JZ for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 13:58:34 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 8b0d417d-0abb-11ee-8611-37d641c3527e; Wed, 14 Jun 2023 15:58:31 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id C25E463EA8; Wed, 14 Jun 2023 13:58:29 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id E0141C433C8; Wed, 14 Jun 2023 13:58:22 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 8b0d417d-0abb-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1686751109; bh=zODqmBJZryq+bXrqw2+dO7/Egr05l6EFGh7EoAR+f5Q=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=lSDu5H7KOZKMWJOQe/RZf66XvE8x+eCZ2Ytzhs66p+GHx+ddxnclpSnPyGBBVOC05 kntWJ9TrG8h428EjebftgV+rAv2YXAhTb0cmqdcy2uTjvuT0Ga5hGuS9drSzCT7vEe lZBUTVYDwjRpPWR0zfBUHmtTwZ2dHpcIOTvlm3uWIc27APHLBBUO1V3IJqvs3/W4hf V4LiUm2GDpkcLNAf56LDxlLuEAL6oO/16Aw5vUDA8I/ZMKz2QG0XPQLr9Bk8rgf5Zl R9Y5FHwwoN9JyP4cz6UUoLxJJznNWVeOmwWxNxC0W9lJyus9Kc2Q39K0WgkNq1Cbbd +hjJK6ETZawtw== Date: Wed, 14 Jun 2023 16:57:51 +0300 From: Mike Rapoport To: "Vishal Moola (Oracle)" Cc: Andrew Morton , Matthew Wilcox , linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins Subject: Re: [PATCH v4 10/34] mm: Convert ptlock_init() to use ptdescs Message-ID: <20230614135751.GI52412@kernel.org> References: <20230612210423.18611-1-vishal.moola@gmail.com> <20230612210423.18611-11-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20230612210423.18611-11-vishal.moola@gmail.com> On Mon, Jun 12, 2023 at 02:03:59PM -0700, Vishal Moola (Oracle) wrote: > This removes some direct accesses to struct page, working towards > splitting out struct ptdesc from struct page. > > Signed-off-by: Vishal Moola (Oracle) Acked-by: Mike Rapoport (IBM) > --- > include/linux/mm.h | 14 +++++++------- > 1 file changed, 7 insertions(+), 7 deletions(-) > > diff --git a/include/linux/mm.h b/include/linux/mm.h > index daecf1db6cf1..f48e626d9c98 100644 > --- a/include/linux/mm.h > +++ b/include/linux/mm.h > @@ -2857,7 +2857,7 @@ static inline spinlock_t *pte_lockptr(struct mm_struct *mm, pmd_t *pmd) > return ptlock_ptr(page_ptdesc(pmd_page(*pmd))); > } > > -static inline bool ptlock_init(struct page *page) > +static inline bool ptlock_init(struct ptdesc *ptdesc) > { > /* > * prep_new_page() initialize page->private (and therefore page->ptl) > @@ -2866,10 +2866,10 @@ static inline bool ptlock_init(struct page *page) > * It can happen if arch try to use slab for page table allocation: > * slab code uses page->slab_cache, which share storage with page->ptl. > */ > - VM_BUG_ON_PAGE(*(unsigned long *)&page->ptl, page); > - if (!ptlock_alloc(page_ptdesc(page))) > + VM_BUG_ON_PAGE(*(unsigned long *)&ptdesc->ptl, ptdesc_page(ptdesc)); > + if (!ptlock_alloc(ptdesc)) > return false; > - spin_lock_init(ptlock_ptr(page_ptdesc(page))); > + spin_lock_init(ptlock_ptr(ptdesc)); > return true; > } > > @@ -2882,13 +2882,13 @@ static inline spinlock_t *pte_lockptr(struct mm_struct *mm, pmd_t *pmd) > return &mm->page_table_lock; > } > static inline void ptlock_cache_init(void) {} > -static inline bool ptlock_init(struct page *page) { return true; } > +static inline bool ptlock_init(struct ptdesc *ptdesc) { return true; } > static inline void ptlock_free(struct page *page) {} > #endif /* USE_SPLIT_PTE_PTLOCKS */ > > static inline bool pgtable_pte_page_ctor(struct page *page) > { > - if (!ptlock_init(page)) > + if (!ptlock_init(page_ptdesc(page))) > return false; > __SetPageTable(page); > inc_lruvec_page_state(page, NR_PAGETABLE); > @@ -2947,7 +2947,7 @@ static inline bool pmd_ptlock_init(struct ptdesc *ptdesc) > #ifdef CONFIG_TRANSPARENT_HUGEPAGE > ptdesc->pmd_huge_pte = NULL; > #endif > - return ptlock_init(ptdesc_page(ptdesc)); > + return ptlock_init(ptdesc); > } > > static inline void pmd_ptlock_free(struct page *page) > -- > 2.40.1 > > -- Sincerely yours, Mike. From xen-devel-bounces@lists.xenproject.org Wed Jun 14 14:00:05 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 14:00:05 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548837.857011 (Exim 4.92) (envelope-from ) id 1q9R2P-00069k-DU; Wed, 14 Jun 2023 13:59:53 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548837.857011; Wed, 14 Jun 2023 13:59:53 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9R2P-00069d-Av; Wed, 14 Jun 2023 13:59:53 +0000 Received: by outflank-mailman (input) for mailman id 548837; Wed, 14 Jun 2023 13:59:52 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9R2O-00069X-4v for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 13:59:52 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id ba1ab064-0abb-11ee-8611-37d641c3527e; Wed, 14 Jun 2023 15:59:50 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id D676263914; Wed, 14 Jun 2023 13:59:48 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 75DD0C433C8; Wed, 14 Jun 2023 13:59:42 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: ba1ab064-0abb-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1686751188; bh=bczNeLQKsA4Jn/cyv5Zpe2oQqQ9DoTlx1RmcfxuzAiw=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=rB5cuxD7f+pVV/2kNGOgyZm/CMnI+FrUzScbpb3WvoAusSUJT4mgiOW93EX9McJH2 FhTySbUNTBv9MPhFHuVa5nuJ1XZTkWt5yRSSUAhZSNmRhZbJ31odisGjIKfu1++lsZ CH2YOx06YFt56y6ifO55IZUoGHHh/jigUaNtJtYKTg86qZrpU96rQcXjsvJGzQn/kn YLwGgJim4snk8fpaILSaD4wUTac4kDSaDw7wbBi0N7ZYhBsLDqm0a86c4hplOXMBZK gjGoFTFEI0ysZIaZZuOB0qrBTQ+cGwB5XLuAStdydY6oCdalsx3dIZVfFXIzN0yL0V 8u2LU4VeWNaSQ== Date: Wed, 14 Jun 2023 16:59:11 +0300 From: Mike Rapoport To: "Vishal Moola (Oracle)" Cc: Andrew Morton , Matthew Wilcox , linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins Subject: Re: [PATCH v4 11/34] mm: Convert pmd_ptlock_free() to use ptdescs Message-ID: <20230614135911.GJ52412@kernel.org> References: <20230612210423.18611-1-vishal.moola@gmail.com> <20230612210423.18611-12-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20230612210423.18611-12-vishal.moola@gmail.com> On Mon, Jun 12, 2023 at 02:04:00PM -0700, Vishal Moola (Oracle) wrote: > This removes some direct accesses to struct page, working towards > splitting out struct ptdesc from struct page. > > Signed-off-by: Vishal Moola (Oracle) Acked-by: Mike Rapoport (IBM) > --- > include/linux/mm.h | 10 +++++----- > 1 file changed, 5 insertions(+), 5 deletions(-) > > diff --git a/include/linux/mm.h b/include/linux/mm.h > index f48e626d9c98..3b54bb4c9753 100644 > --- a/include/linux/mm.h > +++ b/include/linux/mm.h > @@ -2950,12 +2950,12 @@ static inline bool pmd_ptlock_init(struct ptdesc *ptdesc) > return ptlock_init(ptdesc); > } > > -static inline void pmd_ptlock_free(struct page *page) > +static inline void pmd_ptlock_free(struct ptdesc *ptdesc) > { > #ifdef CONFIG_TRANSPARENT_HUGEPAGE > - VM_BUG_ON_PAGE(page->pmd_huge_pte, page); > + VM_BUG_ON_PAGE(ptdesc->pmd_huge_pte, ptdesc_page(ptdesc)); > #endif > - ptlock_free(page); > + ptlock_free(ptdesc_page(ptdesc)); > } > > #define pmd_huge_pte(mm, pmd) (pmd_ptdesc(pmd)->pmd_huge_pte) > @@ -2968,7 +2968,7 @@ static inline spinlock_t *pmd_lockptr(struct mm_struct *mm, pmd_t *pmd) > } > > static inline bool pmd_ptlock_init(struct ptdesc *ptdesc) { return true; } > -static inline void pmd_ptlock_free(struct page *page) {} > +static inline void pmd_ptlock_free(struct ptdesc *ptdesc) {} > > #define pmd_huge_pte(mm, pmd) ((mm)->pmd_huge_pte) > > @@ -2992,7 +2992,7 @@ static inline bool pgtable_pmd_page_ctor(struct page *page) > > static inline void pgtable_pmd_page_dtor(struct page *page) > { > - pmd_ptlock_free(page); > + pmd_ptlock_free(page_ptdesc(page)); > __ClearPageTable(page); > dec_lruvec_page_state(page, NR_PAGETABLE); > } > -- > 2.40.1 > > -- Sincerely yours, Mike. From xen-devel-bounces@lists.xenproject.org Wed Jun 14 14:00:40 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 14:00:40 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548841.857022 (Exim 4.92) (envelope-from ) id 1q9R30-0007XE-Lz; Wed, 14 Jun 2023 14:00:30 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548841.857022; Wed, 14 Jun 2023 14:00:30 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9R30-0007X7-JS; Wed, 14 Jun 2023 14:00:30 +0000 Received: by outflank-mailman (input) for mailman id 548841; Wed, 14 Jun 2023 14:00:28 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9R2y-00069X-SW for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 14:00:28 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id d02c5894-0abb-11ee-8611-37d641c3527e; Wed, 14 Jun 2023 16:00:27 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id E28C463F79; Wed, 14 Jun 2023 14:00:25 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 67061C433C8; Wed, 14 Jun 2023 14:00:18 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: d02c5894-0abb-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1686751225; bh=uKraQGeV6CHflKMTQULlWthGg679fqUnVunPDgo/6HY=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=PDvLwogGgBD7itA4KpDmMOz5f6z6VH2iaHunkUOmJGb2CV9/5MwRPKrP111EYXtEb UEqH+CWzIgF1Rc6XrQFIv/yMpYEmEBGoEuDURlPd52I/fGmF+q5wVqQlIl9KpU5+Uk bgdwaGWMrQOsCsKhPDLR53apMHeHe+9FdmAd1a7miKQKkWiXMpItAY3NijXk99Jluh Pxd9FqKP+sLyI/lOsBPezf8JoB5Fqp5Gg8oE7VA+UHq8nk2Bo7G2Cvf5IS4Aq32CvE s4FZBegGotMSVk+KfyEvDwvHHiHE5HW4dc9hJuLo8yp+W1/X4mVZFqgnWQ8kmzqF33 SBYFIqusV7nCA== Date: Wed, 14 Jun 2023 16:59:47 +0300 From: Mike Rapoport To: "Vishal Moola (Oracle)" Cc: Andrew Morton , Matthew Wilcox , linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins Subject: Re: [PATCH v4 12/34] mm: Convert ptlock_free() to use ptdescs Message-ID: <20230614135947.GK52412@kernel.org> References: <20230612210423.18611-1-vishal.moola@gmail.com> <20230612210423.18611-13-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20230612210423.18611-13-vishal.moola@gmail.com> On Mon, Jun 12, 2023 at 02:04:01PM -0700, Vishal Moola (Oracle) wrote: > This removes some direct accesses to struct page, working towards > splitting out struct ptdesc from struct page. > > Signed-off-by: Vishal Moola (Oracle) Acked-by: Mike Rapoport (IBM) > --- > include/linux/mm.h | 10 +++++----- > mm/memory.c | 4 ++-- > 2 files changed, 7 insertions(+), 7 deletions(-) > > diff --git a/include/linux/mm.h b/include/linux/mm.h > index 3b54bb4c9753..a1af7983e1bd 100644 > --- a/include/linux/mm.h > +++ b/include/linux/mm.h > @@ -2826,7 +2826,7 @@ static inline void pagetable_clear(void *x) > #if ALLOC_SPLIT_PTLOCKS > void __init ptlock_cache_init(void); > bool ptlock_alloc(struct ptdesc *ptdesc); > -extern void ptlock_free(struct page *page); > +void ptlock_free(struct ptdesc *ptdesc); > > static inline spinlock_t *ptlock_ptr(struct ptdesc *ptdesc) > { > @@ -2842,7 +2842,7 @@ static inline bool ptlock_alloc(struct ptdesc *ptdesc) > return true; > } > > -static inline void ptlock_free(struct page *page) > +static inline void ptlock_free(struct ptdesc *ptdesc) > { > } > > @@ -2883,7 +2883,7 @@ static inline spinlock_t *pte_lockptr(struct mm_struct *mm, pmd_t *pmd) > } > static inline void ptlock_cache_init(void) {} > static inline bool ptlock_init(struct ptdesc *ptdesc) { return true; } > -static inline void ptlock_free(struct page *page) {} > +static inline void ptlock_free(struct ptdesc *ptdesc) {} > #endif /* USE_SPLIT_PTE_PTLOCKS */ > > static inline bool pgtable_pte_page_ctor(struct page *page) > @@ -2897,7 +2897,7 @@ static inline bool pgtable_pte_page_ctor(struct page *page) > > static inline void pgtable_pte_page_dtor(struct page *page) > { > - ptlock_free(page); > + ptlock_free(page_ptdesc(page)); > __ClearPageTable(page); > dec_lruvec_page_state(page, NR_PAGETABLE); > } > @@ -2955,7 +2955,7 @@ static inline void pmd_ptlock_free(struct ptdesc *ptdesc) > #ifdef CONFIG_TRANSPARENT_HUGEPAGE > VM_BUG_ON_PAGE(ptdesc->pmd_huge_pte, ptdesc_page(ptdesc)); > #endif > - ptlock_free(ptdesc_page(ptdesc)); > + ptlock_free(ptdesc); > } > > #define pmd_huge_pte(mm, pmd) (pmd_ptdesc(pmd)->pmd_huge_pte) > diff --git a/mm/memory.c b/mm/memory.c > index ba9579117686..d4d2ea5cf0fd 100644 > --- a/mm/memory.c > +++ b/mm/memory.c > @@ -5945,8 +5945,8 @@ bool ptlock_alloc(struct ptdesc *ptdesc) > return true; > } > > -void ptlock_free(struct page *page) > +void ptlock_free(struct ptdesc *ptdesc) > { > - kmem_cache_free(page_ptl_cachep, page->ptl); > + kmem_cache_free(page_ptl_cachep, ptdesc->ptl); > } > #endif > -- > 2.40.1 > > -- Sincerely yours, Mike. From xen-devel-bounces@lists.xenproject.org Wed Jun 14 14:03:32 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 14:03:32 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548847.857031 (Exim 4.92) (envelope-from ) id 1q9R5l-0008Fk-2P; Wed, 14 Jun 2023 14:03:21 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548847.857031; Wed, 14 Jun 2023 14:03:21 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9R5k-0008Fd-Vy; Wed, 14 Jun 2023 14:03:20 +0000 Received: by outflank-mailman (input) for mailman id 548847; Wed, 14 Jun 2023 14:03:20 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9R5k-0008FV-Dy for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 14:03:20 +0000 Received: from EUR01-DB5-obe.outbound.protection.outlook.com (mail-db5eur01on060a.outbound.protection.outlook.com [2a01:111:f400:fe02::60a]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 36c438f1-0abc-11ee-b232-6b7b168915f2; Wed, 14 Jun 2023 16:03:18 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by DB9PR04MB10036.eurprd04.prod.outlook.com (2603:10a6:10:4c8::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.46; Wed, 14 Jun 2023 14:03:16 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.039; Wed, 14 Jun 2023 14:03:16 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 36c438f1-0abc-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=DLCa4Moy9s1n8aLlg39bvH185ZsuTSwnHkhSwm8kv3Qfa2KvAxwO0wYpu/HeykojEfBb77C4jc6WlDO5LPqbjI0yJxwMJtyCDc/X+cX4cnbQZDjMdD/sBZIwTxqkKIwhYN54BdxL814wluti2JblxVuTojlHbQUjQLTqR9MkXSmaHsqy3Hk0k+6JIW/Mhw5XbMG9+Q+MVcR2cWnRrxVt2susGDbjNcR5qYFQTmrXgyu53ejwfShsW7gM5yMefQcXjArsE8uv4fzxmROTGTdomjC2YjizmZ8Iw5wPscOQyDrvP2QGHaX4L5mPT4tj5beWFLKX9aIrEB6PMgEERQhaCg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=idzF+XoztxYgX8JO67OttnbNM4lNfBbri2Bo0G5K1pQ=; b=hF0EmfY819OFmR5jZ0ZsIUj5tWU/dYMInDlUG5wkPWwnLW8yvw63u5c/+XtQqqKyd6uVBhUC3Hb3Fe+O3dyoSe81yenKVlOlouMFvVAwVNVVEQEBQs1wm1hScFyTIUsZEPtVuAlNxJKs92OSdI1K/8kgMkJqy1gz/D9ZlXpS4KFmTxyuhfni3670zMwy49VSHyTinacN2jxq66Y5Hz3qbUb1WPI675v20C7oz/11IwXtz4hsKJQkajmxoHXqoj6P08RQRWs4+LO7Nsx3l8bwxiVF0vwKs235DEgMcv3sqT9kAMjbCT/k+RwZmm2eH0wdPkx+jFZHrScmsnUXnZv2yw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=idzF+XoztxYgX8JO67OttnbNM4lNfBbri2Bo0G5K1pQ=; b=Bh3Ppcg+7192flG2S/ow4ZKitdvH1mu+s80/CmMUn/hcyKIpjEqA6GLMc0fu/yRgqPJlpkj908Jz3ITtmXHbowwqcBXlSNf388rdsCN1xpOtDukunpCvNLdeMYI2yUAgG+oQUHYu09btR0Xc3vp02r2mQo5TXG8oBhDtisXIBR87soYPVOexC9Rqxp5i6RcS6ygzJeQjbPrg2mIJs/3tihmNsTA+1aTtRWXJ+zLP9ZZLmKs+Ar9PGABQE/mU6xsQgD/O0aiSkf+9DN2PttVMts9QexBDAKFYsNNrk+cSz0xJgrufYrz/LjkluGSncRGJov6+ApBaIBK3G42T4bXg2Q== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <4c13ea0f-9e53-62b2-feb8-45381d4f652b@suse.com> Date: Wed, 14 Jun 2023 16:03:14 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: Functions _spin_lock_cb() and handle_ro_raz() Content-Language: en-US To: Federico Serafini References: Cc: xen-devel@lists.xenproject.org From: Jan Beulich In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR0P281CA0243.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:af::10) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|DB9PR04MB10036:EE_ X-MS-Office365-Filtering-Correlation-Id: 910a23c7-06d2-4c6a-643b-08db6ce019e1 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 0mUyzl4/WIg7RncbuQou5jmfWZojuEYr67ihPIB3CIfJKo5VG1B/4k2wzKQPX/aHoGwpW2HBfVul1uxZopQFXXjySHWaH2SKobYW7akinROduzR7/4eNJcLhsekEmCaHoTeg579hjlVSDav6UjWOAnMULNCA6W8NNHTIMYfMYC/iZtDw1hI3LQKSsO+gby0EkPyznDudse+GWI9nAe2iviQBkvoogeXULJLlzh1hmT6sb5W57Ykmp1QjNYFU9G1ud8pRkUEEWtYB095x622hfyGebTlb/LsmzRorbYMva1ygZPvo8bEprSrM5dFE//4PfSXLGX9d/DIMQX6ktETB1J3Fg73+qCyvyCXwRXfSZi1VkEaGkDhibuHuRctgcVHRmlkZdsjMQhjvJEUhMHL5jv4xOhDbPo5v8hCwZdDv47j4uVisRzD7YHCt1k71ZLFCxL/CDIN92GsYp9pOwEVuCVg2vfFho840EPuzXJ5ZuufnNnWvRyL8Pu8SkX3KX5jTU3JQ3upa76UdlwI3uyHG1pmOBvKjpwjllDRsxbUYi+rUaOHuDsggdzVUMSGkyboTC17C6NEheuFttgVI4sjeFGkxMb0O1VkRZs9Any0PZQvD2guxGch9bPe/iMTkwwwx3waeHQG5X0n4ETCwo3fowg== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(396003)(39860400002)(376002)(366004)(346002)(136003)(451199021)(53546011)(26005)(6506007)(6512007)(186003)(31686004)(2616005)(83380400001)(5660300002)(6486002)(8936002)(8676002)(2906002)(38100700002)(478600001)(66556008)(31696002)(66476007)(66946007)(86362001)(6916009)(41300700001)(4326008)(36756003)(316002)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?cytWV1ZYOVk3QUdHZnNNeHBUYzRQU3lxbDZBZ3djZ1ltTzhQYjBydGNBVG1h?= =?utf-8?B?aUEvUDVSaWhGdklFa2pHTWlNbTVDbytReHBsMlJIa0J0aTV4Ymw0L1lUaXdL?= =?utf-8?B?L3k4eGNWQXpJbVhDVXlPblZUamZLTmxoWTZjN1B5WnQ3RXlxYzJ0dTJnd0NK?= =?utf-8?B?aFBPUit6dHoxR0hNd0c2Z2FDSVVCRGVPSHRGYmxIblBjZEorMzU2Ym4rRk12?= =?utf-8?B?cFpMZHJ2NDd3bG1yWGhOMmxTWGpyejk2eENVUlR6V1ZqcHNOaEgyK214RzFG?= =?utf-8?B?TXR3elZtVXlyV1hERFBBeUFrYVF6emlMTjlNVGV6V1llMUpkL3I0SVdkNldy?= =?utf-8?B?REdCa2ZKSFhxZWp0SW9TWWVvMlZkb3NYeUdyalNNMmF0WWxGMmRoV2RXMmRo?= =?utf-8?B?WGJsaHhyclNrQmhIOHVJVHYwcmlneEFZNThFVk1FbEoxSEp6c0toeWtSK3pG?= =?utf-8?B?MzQ1Y1F1ZVArQ2xlcW8veit6ZTRSTVh6b1UzRVlMbmR4THhJWXV2dG1kWEhG?= =?utf-8?B?MWpjUHdaSHVYTUlLSS8wVUVSaFFxdUZ0a3BDdGJSenFFR3R3T0NnVGJYb0kz?= =?utf-8?B?dGVCZHVMMUxGYjdNSk5ia1NTNEp4SG1CS2tGYUJsQVpTVlowVDZqUTNGaSs5?= =?utf-8?B?cUdIODlCUGk1K0xOV0dBcnJJY3oyeklwbDlvUE13d0R3MmZVaTNUU2VCRHN1?= =?utf-8?B?M0owZWZvK0tZNDVUY1FSejZpajFoQ3VKSUJzRVJ1c2h5YnBJblF1WkNpMGpu?= =?utf-8?B?U1dkaGRSRUdEY1FhSXpPaGNwQmd6WTJmMFMvdjZ2QnJBcGxsaWM2QVdaQXc5?= =?utf-8?B?Q2x4VnFoL2FTLzV6UmpyTm0yT1VrRjJKUVpLOVhobmNBWW5wK0FITmVJMk5p?= =?utf-8?B?NWdSZDkzczMzNUwrMHNRZVpCTnFvTDNVQjhXSExYUzZjYVk3Mm5GaGtIWmI1?= =?utf-8?B?YitzRjYxeUl5RUplcGFYTDEzb1NYTjFneEEveTQ0Nk9ZVTdnWUdLa3FzK2Vu?= =?utf-8?B?a1ZBRHE5bEQ3RWZhL0Nkdzk0SlFiYnhPM1lLSG9zWTdmaXVReEdENXgyNHlL?= =?utf-8?B?eGM4ZnFjYzI1VmRsN1pPWFJ0NVd3UkNNTTdKZVQvYXFaNlc4QnlYV3doOFlh?= =?utf-8?B?bGx3R0RaMlZtbHdmRVdZTklBWTdzbk9nTEh0VVJuRTEySVdQSFZ0RXdmaHA4?= =?utf-8?B?RG8rQjhWc1cxc1k3R0ppenFnaWVZb0dOYWROaUpmeTYwNjhjNXpZOHZpVmIv?= =?utf-8?B?N0NyQkpTN1FBbTd3WjZtN29EQW55UHhCblVmeE41ZG9aTDAwVWpJbEIzU2wr?= =?utf-8?B?Kyt3Rkg2SkdMUzVzMmlyT2dsOHVLa1hGRWJjUEQzVzc4WnFPSmJ5aStkTUhV?= =?utf-8?B?RTFmMTRDemFaM3dPSDk5MHBNSGF6cUZYZ3BrTW5zeTlVZkcyK0xhLzdQeEla?= =?utf-8?B?dDdVZFFDaHp5anc2MGxvNmxWTjd4dVVkbUNoeDc4SUtjSDZWd1NGWC83NnZ5?= =?utf-8?B?OGpNSjFOSkIxWFZnR3JObnFDWXhMWWpsZmlRODZqNjJtT2hPMEtYQjQ3RXVT?= =?utf-8?B?bThQbGZNSHhTdGJsOE5WVkUyeGNsbWU4RzZYUDdYVTMvdFUraXRwbTdDN3dS?= =?utf-8?B?ZG1rQkFJVFNvT0FtRjlmdE5IVTNiUTMyeXoyR1RlVXZBWmdTaU05UUF5c1Vh?= =?utf-8?B?dTljWGo1ak13VmZRUWVQZ3lvSUxsUE85TTFLUlNRY0kwUi91RjBXejladXRN?= =?utf-8?B?aXBta0tqWkJManZ3eUJXdjduU0pSYVVSbGQwUFE2VEEybTJyU1VGeTJ4TzN5?= =?utf-8?B?YW4rckZ2ei9YRjJsci85SWZYa0FieVo4WHhxcENJODdkS2xXOTZ1eTRENWRz?= =?utf-8?B?aXRGL212dEJCUFVrMUhhQ3RwcGhpZ25hSzlwOXRobUNIZkxNajlTTGlwcEFr?= =?utf-8?B?eVBQQmlGL0N6RE1DREdlYUUrZ2F4ZVpUbElHY1BxRW52T21PSDdlTDdzVU9B?= =?utf-8?B?dG5MUkxadEcwTzRZd3NIVS9KaVRNZmlGWWU4dzJXRVM5UlNBYlpqYWdDQ1pI?= =?utf-8?B?MWlQOFFYWTVDclJMVVVJLzRnZEp2cFdFQWs3Z2RrT2RzWG5Ndk0zZFRzbVVt?= =?utf-8?Q?cRbHIhPU5CR7YsrEjSvnqm48c?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 910a23c7-06d2-4c6a-643b-08db6ce019e1 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Jun 2023 14:03:16.6940 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: T/s6bD+P9jUzzeBhkIho0tLSujHCdi8tc5zAaxrJ0y60vRSdrepTQkcjdhCKgj/McdAzXVNYNbTT3Olg4/UlSg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR04MB10036 On 14.06.2023 15:08, Federico Serafini wrote: > Hello everyone, > > I am working on the violations of MISRA C:2012 Rule 8.10, > whose headline says: > "An inline function shall be declared with the static storage class". > > For both ARM64 and X86_64 builds, > function _spin_lock_cb() defined in spinlock.c violates the rule. > Such function is declared in spinlock.h without > the inline function specifier: are there any reasons to do this? Since this function was mentioned elsewhere already, I'm afraid I have to be a little blunt and ask back: Did you check the history of the function. Yes, it is intentional to be that way, for the function to be inlined into _spin_lock(), and for it to also be available for external callers (we have just one right now, but that could change). > What about solving the violation by moving the function definition in > spinlock.h and declaring it as static inline? Did you try whether that would work at least purely mechanically? I'm afraid you'll find that it doesn't, because of LOCK_PROFILE_* being unavailable then. Yet we also don't want to expose all that in the header. In the earlier context I did suggest already to make the function an always-inline one in spinlock.c, under a slightly altered name, and then have _spin_lock_cb() be a trivial wrapper just like _spin_lock() is. I guess best is going to be if I make and post a patch ... Jan From xen-devel-bounces@lists.xenproject.org Wed Jun 14 14:11:40 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 14:11:40 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548854.857042 (Exim 4.92) (envelope-from ) id 1q9RDf-0001PY-Vy; Wed, 14 Jun 2023 14:11:31 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548854.857042; Wed, 14 Jun 2023 14:11:31 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9RDf-0001PR-T5; Wed, 14 Jun 2023 14:11:31 +0000 Received: by outflank-mailman (input) for mailman id 548854; Wed, 14 Jun 2023 14:11:30 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9RDe-0001PL-DJ for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 14:11:30 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 5a851029-0abd-11ee-b232-6b7b168915f2; Wed, 14 Jun 2023 16:11:28 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 6CFA860E9E; Wed, 14 Jun 2023 14:11:27 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 10F7AC433C0; Wed, 14 Jun 2023 14:11:19 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 5a851029-0abd-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1686751886; bh=nq3f91/c6VdnG05wknAO7CzsIzeIwd55LMS9xhs7vLc=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=ZhJtlj5I8piICZIev7qvB69N2MRkFrUNmM4AY9KOSxdltgl+qcVmK0w/AhUDKOYUE C0naLvwDyTJX3vMjNC8e9+i7bgqJP3nnR+cfRN/EKtI25YOH2TSwU36LZazWsweF02 YGMNzwODmUGT8dkPREzGod/+rUbK65tLM4QfOSq3fgVX2NpImfyc5X1iBcneHw7wgS aWE67OFlHHdjdwxPMfJUf27XkhoC98XnYJ++XQkAMrKDt/blZeMPDlGxeoaoTED8QE EqDj0B92olx0FPba9u2ztMQCZcN18316sOzneqJzKqI8FGzRdybM2tuA29sFD9tYUy 7yV6zVzN7CwRA== Date: Wed, 14 Jun 2023 17:10:49 +0300 From: Mike Rapoport To: "Vishal Moola (Oracle)" Cc: Andrew Morton , Matthew Wilcox , linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins Subject: Re: [PATCH v4 13/34] mm: Create ptdesc equivalents for pgtable_{pte,pmd}_page_{ctor,dtor} Message-ID: <20230614141049.GL52412@kernel.org> References: <20230612210423.18611-1-vishal.moola@gmail.com> <20230612210423.18611-14-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20230612210423.18611-14-vishal.moola@gmail.com> On Mon, Jun 12, 2023 at 02:04:02PM -0700, Vishal Moola (Oracle) wrote: > Creates pagetable_pte_ctor(), pagetable_pmd_ctor(), pagetable_pte_dtor(), > and pagetable_pmd_dtor() and make the original pgtable > constructor/destructors wrappers. Nit: either "creates ... makes" or "create ... make" I like the second form more. > Signed-off-by: Vishal Moola (Oracle) Acked-by: Mike Rapoport (IBM) > --- > include/linux/mm.h | 56 ++++++++++++++++++++++++++++++++++------------ > 1 file changed, 42 insertions(+), 14 deletions(-) > > diff --git a/include/linux/mm.h b/include/linux/mm.h > index a1af7983e1bd..dc211c43610b 100644 > --- a/include/linux/mm.h > +++ b/include/linux/mm.h > @@ -2886,20 +2886,34 @@ static inline bool ptlock_init(struct ptdesc *ptdesc) { return true; } > static inline void ptlock_free(struct ptdesc *ptdesc) {} > #endif /* USE_SPLIT_PTE_PTLOCKS */ > > -static inline bool pgtable_pte_page_ctor(struct page *page) > +static inline bool pagetable_pte_ctor(struct ptdesc *ptdesc) > { > - if (!ptlock_init(page_ptdesc(page))) > + struct folio *folio = ptdesc_folio(ptdesc); > + > + if (!ptlock_init(ptdesc)) > return false; > - __SetPageTable(page); > - inc_lruvec_page_state(page, NR_PAGETABLE); > + __folio_set_table(folio); This comment is more to patch 1 ("mm: Add PAGE_TYPE_OP folio functions") It would be better to have _pgtable here, as "table" does not necessary mean page table. With PageType SetPageTable was fine, but with folio I think it should be more explicit. I'd add a third parameter to PAGE_TYPE_OPS for that. > + lruvec_stat_add_folio(folio, NR_PAGETABLE); > return true; > } > > +static inline bool pgtable_pte_page_ctor(struct page *page) > +{ > + return pagetable_pte_ctor(page_ptdesc(page)); > +} > + > +static inline void pagetable_pte_dtor(struct ptdesc *ptdesc) > +{ > + struct folio *folio = ptdesc_folio(ptdesc); > + > + ptlock_free(ptdesc); > + __folio_clear_table(folio); > + lruvec_stat_sub_folio(folio, NR_PAGETABLE); > +} > + > static inline void pgtable_pte_page_dtor(struct page *page) > { > - ptlock_free(page_ptdesc(page)); > - __ClearPageTable(page); > - dec_lruvec_page_state(page, NR_PAGETABLE); > + pagetable_pte_dtor(page_ptdesc(page)); > } > > #define pte_offset_map_lock(mm, pmd, address, ptlp) \ > @@ -2981,20 +2995,34 @@ static inline spinlock_t *pmd_lock(struct mm_struct *mm, pmd_t *pmd) > return ptl; > } > > -static inline bool pgtable_pmd_page_ctor(struct page *page) > +static inline bool pagetable_pmd_ctor(struct ptdesc *ptdesc) > { > - if (!pmd_ptlock_init(page_ptdesc(page))) > + struct folio *folio = ptdesc_folio(ptdesc); > + > + if (!pmd_ptlock_init(ptdesc)) > return false; > - __SetPageTable(page); > - inc_lruvec_page_state(page, NR_PAGETABLE); > + __folio_set_table(folio); > + lruvec_stat_add_folio(folio, NR_PAGETABLE); > return true; > } > > +static inline bool pgtable_pmd_page_ctor(struct page *page) > +{ > + return pagetable_pmd_ctor(page_ptdesc(page)); > +} > + > +static inline void pagetable_pmd_dtor(struct ptdesc *ptdesc) > +{ > + struct folio *folio = ptdesc_folio(ptdesc); > + > + pmd_ptlock_free(ptdesc); > + __folio_clear_table(folio); > + lruvec_stat_sub_folio(folio, NR_PAGETABLE); > +} > + > static inline void pgtable_pmd_page_dtor(struct page *page) > { > - pmd_ptlock_free(page_ptdesc(page)); > - __ClearPageTable(page); > - dec_lruvec_page_state(page, NR_PAGETABLE); > + pagetable_pmd_dtor(page_ptdesc(page)); > } > > /* > -- > 2.40.1 > > -- Sincerely yours, Mike. From xen-devel-bounces@lists.xenproject.org Wed Jun 14 14:17:42 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 14:17:42 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548859.857052 (Exim 4.92) (envelope-from ) id 1q9RJP-00023B-L9; Wed, 14 Jun 2023 14:17:27 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548859.857052; Wed, 14 Jun 2023 14:17:27 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9RJP-000234-Hm; Wed, 14 Jun 2023 14:17:27 +0000 Received: by outflank-mailman (input) for mailman id 548859; Wed, 14 Jun 2023 14:17:25 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9RJN-00022y-Tb for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 14:17:25 +0000 Received: from EUR05-AM6-obe.outbound.protection.outlook.com (mail-am6eur05on20612.outbound.protection.outlook.com [2a01:111:f400:7e1b::612]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 2f39f322-0abe-11ee-b232-6b7b168915f2; Wed, 14 Jun 2023 16:17:25 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by DB9PR04MB8431.eurprd04.prod.outlook.com (2603:10a6:10:24e::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.37; Wed, 14 Jun 2023 14:17:22 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.039; Wed, 14 Jun 2023 14:17:21 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 2f39f322-0abe-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=AWGUC04IMIeomgJxUZd0DhVwXdHfwYESptrcyXe+tn416jpFA8F1yL0foQNsFBDp2jTwFf+Ekyewqba+GOugKvp4Y0T6TDu2tA9GUBztETjjvBnBcovuWGGzuG96u8O+qJXy5woMgnanOpVOweYyM4vh1BUTNQcApt7c8UETFQqcawrkjjIjnLxUPKMeiUdLt6QTc8fAwgNWj8b8jc/LsQOD7tri2chKrjVpLX8aOiFusuhpTFdxdGHheqw/X1XlBGlifmc23ef560/Gsw2pqVA4+a+uuGFwLIxquaI7BnUzl9g02NczBhcDpUga638BbfkYaoNn9apR53ar8Lq2UQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=cunu0xp7pvxz5mEERk0+Akla7p/Ed2j8w9biXRMSufk=; b=TSSOswSe1KlAL7iO20MePSXXJaoJnn8u3o4U1BnxZ+JdP81c0Hh7vlqNRTT2Yvuxk5x1oMTZatHDT5zO8q6SSHDGV3QQiYr/zr+G9JFr5Yb/Dt738dshYfl7k7Rch+I86kv73/v6klctDXFC5gHtAaClDdgHrYzNkNOByVP6lZlP2DB5p+iO/5+Bfwqb4S+EkzfmZIxi2ZedKJfjpRWmah9X/dGz5CZutDi7WL5S1eHLUKrjcg60r2BthIDHkrp+lotheFl7OkKgIRT2nJIgrO16YycZoiHXvrt+2Bco9XnNp3nVI3Lmjko7uDNVXkQ4E65NjPgLgLL68B7O3itofQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=cunu0xp7pvxz5mEERk0+Akla7p/Ed2j8w9biXRMSufk=; b=JDPsc5kCn0DLfPt+sF3tWyBIH8Q4Bwd0M0S5t49NmmvU21dW/yTtEqgcXM1RAPLqoIKMkKpXq7D9nkcucQGga18Mu0rn/D2JFeKcI6EJQXA3qNWQfNctV8JSOVkn72cTh5EzE9UaPKilql6aB1cjziWy9TAPe91/e85dfjrynDAbZbcQO3Xq1BimAyZLkG0KMPZy4uO00uQraYUJlBc91mL6wWMHE0HMCUSxuondLj8yjd9g1Jt/+wnZMKUPL7uBKKJ31YRdMcXWoabILbG1yqdQ9QH3qH0uqj2Hvw6LchUoIYxD08AyfsbCv1GslZCi4qtTSWcf62CHfrhBR7dt/A== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: Date: Wed, 14 Jun 2023 16:17:19 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Content-Language: en-US To: "xen-devel@lists.xenproject.org" Cc: Andrew Cooper , George Dunlap , Julien Grall , Stefano Stabellini , Wei Liu , Federico Serafini From: Jan Beulich Subject: [PATCH] spinlock: alter inlining of _spin_lock_cb() Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR3P281CA0118.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:a3::13) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|DB9PR04MB8431:EE_ X-MS-Office365-Filtering-Correlation-Id: 30dd9b6f-cb6b-4ec7-9f51-08db6ce2119e X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: Zd/pwKBJFd+CDWuasYrqtwxbIzHxS27uH6OH0iLM/0k3Vwewih8e23K6EXhF8Kv0Nf908ugWXzitt8dMtpoHWDmDrAxwf4sxuqiTvvZy1ZUIgYHVt22PyFcPyClXPKOivKjHPX54iSWGV8HPgrwqnNw2nS/Cu7v7sqxON9aeow2kNtkcNFF5TjbBaxX2CzRAwdE3WTJRqTPTyF3IDJrBfTsHiz0cq4alrKL2saw+bt2vRL4/sEgJFnwvgLO/I0CacZB+VcxNLNX7RkuXwwJp4g6pMR5xTtocBET385dYZHeBwzWLGPbLRdMbNv9+75SIoctx0Mb5hTacbXSQ0n/5NIlTas4QU/mgL0Ti8RYTiVpU4YY26bSD8ztbwGUAGgS7VsWib7AggKJtyutn1YDNNJ8kgc91W6Dg5NyRDZ4HcZIcv4mGg7W9k3wdAroWr347zGw1yIRkcAvoratLhnZ+nqNDBHqzODvmp1AcKdcmQcgfqHEiLKXT+q4zPvIWTtv6jezI/dxu7odvDim6PtJ238YtKIXc3sOCSTJlJ8Z332BdR69rnlIRXzIM8EPy0IR44Y/r1lg5+dw9p9QD/1nAPWu69xWo4AnCkScpWkXJpYwnlZYhQu3f/zTY90Zy5AT6t67S2zLn2wZDmKekdO8AcA== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(39860400002)(366004)(346002)(396003)(136003)(376002)(451199021)(83380400001)(5660300002)(186003)(6506007)(2906002)(31686004)(2616005)(41300700001)(6512007)(8936002)(26005)(8676002)(6486002)(316002)(31696002)(54906003)(36756003)(478600001)(38100700002)(86362001)(4326008)(66476007)(66556008)(66946007)(6916009)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?cmJqUFlhckl0dlJPUDRPaC9scHBKTG1vaGV5bWN2Ym5NbHFyZlFQTzZoSXpT?= =?utf-8?B?Y2FPYUR5a1drWXdPczNhR1YwTVdaTUdXS3JwNlo2c0VUK0UvSjJaaFNoQU53?= =?utf-8?B?bE9XTWNLcnVXRGpENEl5aVBnajdBT21RMU5WOVR0cUUvVDJlNkJXZk5wTTRI?= =?utf-8?B?dTNEMmFWMmpobzI4UGRFbHFuWjJvUUpTK3pNdWtQMWwrN3ptRzhWelR1b21H?= =?utf-8?B?bVJEdlR1NkJHL2lSRzhTMWpyOHJmSWFTc2NvcmsrRTVYSjV1b1ZXRDU2cmR3?= =?utf-8?B?bCsrL3k3RHB2MmNQLzExalFDV2hiZVU2Rlh6djRZZFNTMnlCNzhPU3k5RUlS?= =?utf-8?B?aGNKME80TGN6SkZreEhUZnladHphVUZpTXAzTjE2UjQvK2FWeVFLaU84T3ZI?= =?utf-8?B?Y0R3ZkQrZVIwSW1DbU42bjZic2tjNXMxc1NaQ3dVN28yWE5KQVlRZ28vaEU4?= =?utf-8?B?aUczNUc4cHVYZWhYdlNtdEhrUFBTWVdtNEczZWhibnlHQ0NreDlXZmNJMUZE?= =?utf-8?B?Qmw1QTJCQlBJS0d6MkdOR0JZMjJPMnNtYTZWNXljVzdzcytiYnp5UDkvKy84?= =?utf-8?B?bmlKOU9CNWNtZTAySFUxdkVTOHVsd3lKeWtjNEJ2Mk1QSWlyWTljRjZ5RGdz?= =?utf-8?B?Zlcxdjk2bm5DQStNQ2VQeUxPdGpnVWdsemwxbUg0L0MzaVJVSTU1aGtQRnZW?= =?utf-8?B?Y0NYRkVjcHh2NFo4WUNmZWxpOVVpa0R1TEtVR2NPOFRUcFBoeWMrMEYrSmVR?= =?utf-8?B?aDdRUGNPcWRNTzJNMmVvZGZlN0hkbmVyUE9nZ0wwWjNKYnBlYjJ2TDVVcUtn?= =?utf-8?B?Q1pua3hzZEtRekduMENpYXJXUXBLZWRBY2EzYjhQbnBBZFNnYmZEMStFODky?= =?utf-8?B?T0tFcmN0Y25zWEJZMW51ekZ1bTZSbUFxdERZeGtlTUo5K3pBd1VsMVlOU2JU?= =?utf-8?B?aytZODl4TTFlQmVjYSt5ajJ3dHdYQnVuWTcrQlErTFU0NjlJb0hramgvcEpB?= =?utf-8?B?ZGkrbGpuc1UzbXhKTjlVWENtc1I1V1B5VEJCaFZnTTVKUktsZDYvclBTcUlz?= =?utf-8?B?akZsRWRJSm8vczJGdytaQ2lXWWh4RlViTks0M2J5ckV5K2tianVqbTF5YXpr?= =?utf-8?B?c2ozWWN6S2QvNHR0dE5zaEhvQ2oxVHFEUUNJTjgzalladE4xZmFTSEJDcHhY?= =?utf-8?B?WGR2aC9hMnI4bCtuMTRUTUpLVzFYSElHM1RKd25HZGcrYlBCcXdiTkF2dTY0?= =?utf-8?B?TkVMdW81clBxUS95dEJFczIwUTFuT1RPS053RTRHbDBESTdCV3R3Zm02TXNI?= =?utf-8?B?V3N6akkwQkRlM2FtcmlLbG5sM1FIOGhJRmhXbVFSVlA3a1o4YkszcWJSNGFD?= =?utf-8?B?OXJLazJ2TWJqWmhyK2p1NmlETERvSklrSWR0VmliVTlyT09mYnZOOG5QSzJH?= =?utf-8?B?c3JFS1NBWHkxdWIva25CV0RtS2ZBUFhDVmM1aEVFemE4OVpVekNkNkxLSUww?= =?utf-8?B?MmltV25ZNkNDM3pkUjVBNzU1dVBvdkZRNEdhNmtSWVVXenJDY09qVlZXNFNr?= =?utf-8?B?cjdJMGRKRTNwU2hBaXFreEhCTFdTOFVKNjJUQWpZNmF1NzhHYjNSNElVSG1T?= =?utf-8?B?TWg2d1Z4Uzc3eitpVHZuS3o2MDdRRmxKRUxHRHlXS25MNjdkNG10dUtmQ1N5?= =?utf-8?B?ZGdPL1ZJNjNsRllWZnQzdkEzVXZpVWo5ZjFZb3VGdERuZ25nc0QrU25tMnJD?= =?utf-8?B?dFRGd1dwUlV5WVRrN1NwSGY4OVU4d3dxcEtQdlhGR3lPZ0xlcmswb1c1NUdS?= =?utf-8?B?OE0yM0JyRkZhNDBTNnFUaHJ2RVdZZXlUNFBKd0o4TWZrQVk5YzhBczhRbWtS?= =?utf-8?B?UWhTS1Z5cC96TllsQ3c1eTNHWWdTaTBNbzZJeFVJVmsyOHBYR2ZwekNIdUdZ?= =?utf-8?B?YWdSOFAxMlFQWXRrdHdwWk4xdml1czhnSCt1ZUc2K3k3YTA3VUlBNlltMnU1?= =?utf-8?B?dUJrblB3eStsVGs4VkE5RWdDcnMrWVFWZ2YrdlpkQzg1cVN5ODBVMHN6TUw2?= =?utf-8?B?VnhXVkFKazJIVjZjRnlidkJFY0tONy9QS0Z0NS9VVFIzKzd6RTFVYkIxb2tF?= =?utf-8?Q?KpL8MYqqRP+Gevu/9MElsGFF4?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 30dd9b6f-cb6b-4ec7-9f51-08db6ce2119e X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Jun 2023 14:17:21.8026 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: OwwZ2dyAsyhb6oMWBsh/33Y2HdqgHV+02KEIPMbLb3dElKL4lk1yqtFvD+51Wc4VsvX2jg5K+Yc5+jtHR0xgxg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR04MB8431 To comply with Misra rule 8.10 ("An inline function shall be declared with the static storage class"), convert what is presently _spin_lock_cb() to an always-inline (and static) helper, while making the function itself a thin wrapper, just like _spin_lock() is. While there drop the unlikely() from the callback check, and correct indentation in _spin_lock(). Signed-off-by: Jan Beulich --- a/xen/common/spinlock.c +++ b/xen/common/spinlock.c @@ -304,7 +304,8 @@ static always_inline u16 observe_head(sp return read_atomic(&t->head); } -void inline _spin_lock_cb(spinlock_t *lock, void (*cb)(void *), void *data) +static void always_inline spin_lock_common(spinlock_t *lock, + void (*cb)(void *), void *data) { spinlock_tickets_t tickets = SPINLOCK_TICKET_INC; LOCK_PROFILE_VAR; @@ -316,7 +317,7 @@ void inline _spin_lock_cb(spinlock_t *lo while ( tickets.tail != observe_head(&lock->tickets) ) { LOCK_PROFILE_BLOCK; - if ( unlikely(cb) ) + if ( cb ) cb(data); arch_lock_relax(); } @@ -327,7 +328,12 @@ void inline _spin_lock_cb(spinlock_t *lo void _spin_lock(spinlock_t *lock) { - _spin_lock_cb(lock, NULL, NULL); + spin_lock_common(lock, NULL, NULL); +} + +void _spin_lock_cb(spinlock_t *lock, void (*cb)(void *), void *data) +{ + spin_lock_common(lock, cb, data); } void _spin_lock_irq(spinlock_t *lock) From xen-devel-bounces@lists.xenproject.org Wed Jun 14 14:20:19 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 14:20:19 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548864.857062 (Exim 4.92) (envelope-from ) id 1q9RM1-0003TN-1z; Wed, 14 Jun 2023 14:20:09 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548864.857062; Wed, 14 Jun 2023 14:20:09 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9RM0-0003TG-Uv; Wed, 14 Jun 2023 14:20:08 +0000 Received: by outflank-mailman (input) for mailman id 548864; Wed, 14 Jun 2023 14:20:07 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9RLz-0003SO-OP for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 14:20:07 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 8e4e46b5-0abe-11ee-8611-37d641c3527e; Wed, 14 Jun 2023 16:20:05 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id C2ECB610D5; Wed, 14 Jun 2023 14:20:03 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id EA8CFC433C8; Wed, 14 Jun 2023 14:19:55 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 8e4e46b5-0abe-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1686752403; bh=msIQzzbJVOpmfYjD76BXOfuKQSvBA8DkGXsTDNo7F6k=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=rDmqmXQ7/igDzWzKHWbbYSxsjI011+Qu0wfAX+xrJpGzScpx6c+TijBp42WTBHVHg NMmFssQgKjcddaqFVOPxQIHovSCNhsGM78nzLy5IbF4NK4cENbZRynU7sbyPZQ0OJ2 u/YLiI/yye6XVAHtU6FTIMwuBcUtFL1dW8Vds6vGnufNWMWundcXWjgqsCICj6W4Dp 4phecE7fv+X9AppCQNzdJLoMn5npv3j2tWHnKsD12s3s/OF7tMN1vBabdXbvjijdFZ e04wiDqE9JOa0+z6hm50Ui8dV1VvUlrYxaQY9WH+tDrmbOoYiIFulWKAMNy2BNR/ES 9cyaCj1LKvc6w== Date: Wed, 14 Jun 2023 17:19:24 +0300 From: Mike Rapoport To: "Vishal Moola (Oracle)" Cc: Andrew Morton , Matthew Wilcox , linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , Christophe Leroy Subject: Re: [PATCH v4 14/34] powerpc: Convert various functions to use ptdescs Message-ID: <20230614141924.GM52412@kernel.org> References: <20230612210423.18611-1-vishal.moola@gmail.com> <20230612210423.18611-15-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20230612210423.18611-15-vishal.moola@gmail.com> On Mon, Jun 12, 2023 at 02:04:03PM -0700, Vishal Moola (Oracle) wrote: > In order to split struct ptdesc from struct page, convert various > functions to use ptdescs. > > Signed-off-by: Vishal Moola (Oracle) Acked-by: Mike Rapoport (IBM) > --- > arch/powerpc/mm/book3s64/mmu_context.c | 10 +++--- > arch/powerpc/mm/book3s64/pgtable.c | 32 +++++++++--------- > arch/powerpc/mm/pgtable-frag.c | 46 +++++++++++++------------- > 3 files changed, 44 insertions(+), 44 deletions(-) > > diff --git a/arch/powerpc/mm/book3s64/mmu_context.c b/arch/powerpc/mm/book3s64/mmu_context.c > index c766e4c26e42..1715b07c630c 100644 > --- a/arch/powerpc/mm/book3s64/mmu_context.c > +++ b/arch/powerpc/mm/book3s64/mmu_context.c > @@ -246,15 +246,15 @@ static void destroy_contexts(mm_context_t *ctx) > static void pmd_frag_destroy(void *pmd_frag) > { > int count; > - struct page *page; > + struct ptdesc *ptdesc; > > - page = virt_to_page(pmd_frag); > + ptdesc = virt_to_ptdesc(pmd_frag); > /* drop all the pending references */ > count = ((unsigned long)pmd_frag & ~PAGE_MASK) >> PMD_FRAG_SIZE_SHIFT; > /* We allow PTE_FRAG_NR fragments from a PTE page */ > - if (atomic_sub_and_test(PMD_FRAG_NR - count, &page->pt_frag_refcount)) { > - pgtable_pmd_page_dtor(page); > - __free_page(page); > + if (atomic_sub_and_test(PMD_FRAG_NR - count, &ptdesc->pt_frag_refcount)) { > + pagetable_pmd_dtor(ptdesc); > + pagetable_free(ptdesc); > } > } > > diff --git a/arch/powerpc/mm/book3s64/pgtable.c b/arch/powerpc/mm/book3s64/pgtable.c > index 85c84e89e3ea..1212deeabe15 100644 > --- a/arch/powerpc/mm/book3s64/pgtable.c > +++ b/arch/powerpc/mm/book3s64/pgtable.c > @@ -306,22 +306,22 @@ static pmd_t *get_pmd_from_cache(struct mm_struct *mm) > static pmd_t *__alloc_for_pmdcache(struct mm_struct *mm) > { > void *ret = NULL; > - struct page *page; > + struct ptdesc *ptdesc; > gfp_t gfp = GFP_KERNEL_ACCOUNT | __GFP_ZERO; > > if (mm == &init_mm) > gfp &= ~__GFP_ACCOUNT; > - page = alloc_page(gfp); > - if (!page) > + ptdesc = pagetable_alloc(gfp, 0); > + if (!ptdesc) > return NULL; > - if (!pgtable_pmd_page_ctor(page)) { > - __free_pages(page, 0); > + if (!pagetable_pmd_ctor(ptdesc)) { > + pagetable_free(ptdesc); > return NULL; > } > > - atomic_set(&page->pt_frag_refcount, 1); > + atomic_set(&ptdesc->pt_frag_refcount, 1); > > - ret = page_address(page); > + ret = ptdesc_address(ptdesc); > /* > * if we support only one fragment just return the > * allocated page. > @@ -331,12 +331,12 @@ static pmd_t *__alloc_for_pmdcache(struct mm_struct *mm) > > spin_lock(&mm->page_table_lock); > /* > - * If we find pgtable_page set, we return > + * If we find ptdesc_page set, we return > * the allocated page with single fragment > * count. > */ > if (likely(!mm->context.pmd_frag)) { > - atomic_set(&page->pt_frag_refcount, PMD_FRAG_NR); > + atomic_set(&ptdesc->pt_frag_refcount, PMD_FRAG_NR); > mm->context.pmd_frag = ret + PMD_FRAG_SIZE; > } > spin_unlock(&mm->page_table_lock); > @@ -357,15 +357,15 @@ pmd_t *pmd_fragment_alloc(struct mm_struct *mm, unsigned long vmaddr) > > void pmd_fragment_free(unsigned long *pmd) > { > - struct page *page = virt_to_page(pmd); > + struct ptdesc *ptdesc = virt_to_ptdesc(pmd); > > - if (PageReserved(page)) > - return free_reserved_page(page); > + if (pagetable_is_reserved(ptdesc)) > + return free_reserved_ptdesc(ptdesc); > > - BUG_ON(atomic_read(&page->pt_frag_refcount) <= 0); > - if (atomic_dec_and_test(&page->pt_frag_refcount)) { > - pgtable_pmd_page_dtor(page); > - __free_page(page); > + BUG_ON(atomic_read(&ptdesc->pt_frag_refcount) <= 0); > + if (atomic_dec_and_test(&ptdesc->pt_frag_refcount)) { > + pagetable_pmd_dtor(ptdesc); > + pagetable_free(ptdesc); > } > } > > diff --git a/arch/powerpc/mm/pgtable-frag.c b/arch/powerpc/mm/pgtable-frag.c > index 20652daa1d7e..8961f1540209 100644 > --- a/arch/powerpc/mm/pgtable-frag.c > +++ b/arch/powerpc/mm/pgtable-frag.c > @@ -18,15 +18,15 @@ > void pte_frag_destroy(void *pte_frag) > { > int count; > - struct page *page; > + struct ptdesc *ptdesc; > > - page = virt_to_page(pte_frag); > + ptdesc = virt_to_ptdesc(pte_frag); > /* drop all the pending references */ > count = ((unsigned long)pte_frag & ~PAGE_MASK) >> PTE_FRAG_SIZE_SHIFT; > /* We allow PTE_FRAG_NR fragments from a PTE page */ > - if (atomic_sub_and_test(PTE_FRAG_NR - count, &page->pt_frag_refcount)) { > - pgtable_pte_page_dtor(page); > - __free_page(page); > + if (atomic_sub_and_test(PTE_FRAG_NR - count, &ptdesc->pt_frag_refcount)) { > + pagetable_pte_dtor(ptdesc); > + pagetable_free(ptdesc); > } > } > > @@ -55,25 +55,25 @@ static pte_t *get_pte_from_cache(struct mm_struct *mm) > static pte_t *__alloc_for_ptecache(struct mm_struct *mm, int kernel) > { > void *ret = NULL; > - struct page *page; > + struct ptdesc *ptdesc; > > if (!kernel) { > - page = alloc_page(PGALLOC_GFP | __GFP_ACCOUNT); > - if (!page) > + ptdesc = pagetable_alloc(PGALLOC_GFP | __GFP_ACCOUNT, 0); > + if (!ptdesc) > return NULL; > - if (!pgtable_pte_page_ctor(page)) { > - __free_page(page); > + if (!pagetable_pte_ctor(ptdesc)) { > + pagetable_free(ptdesc); > return NULL; > } > } else { > - page = alloc_page(PGALLOC_GFP); > - if (!page) > + ptdesc = pagetable_alloc(PGALLOC_GFP, 0); > + if (!ptdesc) > return NULL; > } > > - atomic_set(&page->pt_frag_refcount, 1); > + atomic_set(&ptdesc->pt_frag_refcount, 1); > > - ret = page_address(page); > + ret = ptdesc_address(ptdesc); > /* > * if we support only one fragment just return the > * allocated page. > @@ -82,12 +82,12 @@ static pte_t *__alloc_for_ptecache(struct mm_struct *mm, int kernel) > return ret; > spin_lock(&mm->page_table_lock); > /* > - * If we find pgtable_page set, we return > + * If we find ptdesc_page set, we return > * the allocated page with single fragment > * count. > */ > if (likely(!pte_frag_get(&mm->context))) { > - atomic_set(&page->pt_frag_refcount, PTE_FRAG_NR); > + atomic_set(&ptdesc->pt_frag_refcount, PTE_FRAG_NR); > pte_frag_set(&mm->context, ret + PTE_FRAG_SIZE); > } > spin_unlock(&mm->page_table_lock); > @@ -108,15 +108,15 @@ pte_t *pte_fragment_alloc(struct mm_struct *mm, int kernel) > > void pte_fragment_free(unsigned long *table, int kernel) > { > - struct page *page = virt_to_page(table); > + struct ptdesc *ptdesc = virt_to_ptdesc(table); > > - if (PageReserved(page)) > - return free_reserved_page(page); > + if (pagetable_is_reserved(ptdesc)) > + return free_reserved_ptdesc(ptdesc); > > - BUG_ON(atomic_read(&page->pt_frag_refcount) <= 0); > - if (atomic_dec_and_test(&page->pt_frag_refcount)) { > + BUG_ON(atomic_read(&ptdesc->pt_frag_refcount) <= 0); > + if (atomic_dec_and_test(&ptdesc->pt_frag_refcount)) { > if (!kernel) > - pgtable_pte_page_dtor(page); > - __free_page(page); > + pagetable_pte_dtor(ptdesc); > + pagetable_free(ptdesc); > } > } > -- > 2.40.1 > > -- Sincerely yours, Mike. From xen-devel-bounces@lists.xenproject.org Wed Jun 14 14:27:03 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 14:27:03 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548869.857072 (Exim 4.92) (envelope-from ) id 1q9RS9-00046G-Ns; Wed, 14 Jun 2023 14:26:29 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548869.857072; Wed, 14 Jun 2023 14:26:29 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9RS9-000469-KS; Wed, 14 Jun 2023 14:26:29 +0000 Received: by outflank-mailman (input) for mailman id 548869; Wed, 14 Jun 2023 14:26:29 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9RS9-00045z-8f; Wed, 14 Jun 2023 14:26:29 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9RS9-0004Y0-5d; Wed, 14 Jun 2023 14:26:29 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9RS8-0004zv-Nr; Wed, 14 Jun 2023 14:26:28 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q9RS8-00085U-NO; Wed, 14 Jun 2023 14:26:28 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=T309/eUwWYUUg2yc3NjUdRgieFKCOKHq1ZgDb65kA6M=; b=QC8pQtMCBOB130YRsoW33cFAy+ tWY5UDtnwykOBQiZLpLEuMUamNYAjdsNty4sBV/iipwK/hGzAx0m7WpJHKjc87rF3QCh8UWnssW29 9gxXaV2nFiZUdTXtRYHsaeH2YBLxxX5Yt84j6f4Qf+irfeahlhjyLr4/TCbcHmfbK3ts=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable-smoke test] 181426: tolerable all pass - PUSHED X-Osstest-Failures: xen-unstable-smoke:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking xen-unstable-smoke:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking xen-unstable-smoke:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking xen-unstable-smoke:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking xen-unstable-smoke:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: xen=87c621d0ef75e5f95987d66811ed1fd7129208d1 X-Osstest-Versions-That: xen=2f69ef96801f0d2b9646abf6396e60f99c56e3a0 From: osstest service owner Date: Wed, 14 Jun 2023 14:26:28 +0000 flight 181426 xen-unstable-smoke real [real] http://logs.test-lab.xenproject.org/osstest/logs/181426/ Failures :-/ but no regressions. Tests which did not succeed, but are not blocking: test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-armhf-armhf-xl 15 migrate-support-check fail never pass test-armhf-armhf-xl 16 saverestore-support-check fail never pass version targeted for testing: xen 87c621d0ef75e5f95987d66811ed1fd7129208d1 baseline version: xen 2f69ef96801f0d2b9646abf6396e60f99c56e3a0 Last test of basis 181407 2023-06-13 14:00:28 Z 1 days Testing same since 181426 2023-06-14 11:02:37 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Anthony PERARD Jan Beulich jobs: build-arm64-xsm pass build-amd64 pass build-armhf pass build-amd64-libvirt pass test-armhf-armhf-xl pass test-arm64-arm64-xl-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-libvirt pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Pushing revision : To xenbits.xen.org:/home/xen/git/xen.git 2f69ef9680..87c621d0ef 87c621d0ef75e5f95987d66811ed1fd7129208d1 -> smoke From xen-devel-bounces@lists.xenproject.org Wed Jun 14 14:28:16 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 14:28:16 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548878.857081 (Exim 4.92) (envelope-from ) id 1q9RTm-0004h9-5x; Wed, 14 Jun 2023 14:28:10 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548878.857081; Wed, 14 Jun 2023 14:28:10 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9RTm-0004h2-3M; Wed, 14 Jun 2023 14:28:10 +0000 Received: by outflank-mailman (input) for mailman id 548878; Wed, 14 Jun 2023 14:28:08 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9RTk-0004gu-Q1 for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 14:28:08 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [2604:1380:4641:c500::1]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id ad1b424f-0abf-11ee-8611-37d641c3527e; Wed, 14 Jun 2023 16:28:06 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id E5A4060ECC; Wed, 14 Jun 2023 14:28:04 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 669D2C433C0; Wed, 14 Jun 2023 14:27:57 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: ad1b424f-0abf-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1686752884; bh=IAb9vqJ9ElNCqXJHA6Yv2u0lekZ+I9QDT850CHa542c=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=sb9Bicm006MQRaA2QJZIqPZuQdkLyF04mr929/fVCvQ7YypT0tAJ1UO18LeBHpTwB Rvh5Rz8gbGxaZSahDSeiH9r0Yz3iKE+GmnXF2aA2Dm48smesHM0aIKruGgo2DEo1bH yqBW4/hs/er7nkcZiUCTdpNMlb1ecIjI20wO5qfSFQMgO7IjC/Z6OtB7JPDuSoqyDB PbEWexd4YMPKGr9SzIWRiVHkqq5QUZvrMkkQ/1wJzpzgtjaQjy7CDpiRl5H1nDBjjg IRNGeQrV6izw2mQTgitk3o+/EZj4A4fQLPaXmWJkD+f2zPWe6D7L/cRZD+jKRK3gcE G59EadJXPqFYg== Date: Wed, 14 Jun 2023 17:27:26 +0300 From: Mike Rapoport To: "Vishal Moola (Oracle)" Cc: Andrew Morton , Matthew Wilcox , linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , Dave Hansen Subject: Re: [PATCH v4 15/34] x86: Convert various functions to use ptdescs Message-ID: <20230614142726.GN52412@kernel.org> References: <20230612210423.18611-1-vishal.moola@gmail.com> <20230612210423.18611-16-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20230612210423.18611-16-vishal.moola@gmail.com> On Mon, Jun 12, 2023 at 02:04:04PM -0700, Vishal Moola (Oracle) wrote: > In order to split struct ptdesc from struct page, convert various > functions to use ptdescs. > > Some of the functions use the *get*page*() helper functions. Convert Nit: *get_free_page*() > these to use pagetable_alloc() and ptdesc_address() instead to help > standardize page tables further. More importantly, get_free_pages() ensures a page won't be allocated from HIGHMEM, and for 32-bits this is a must. > Signed-off-by: Vishal Moola (Oracle) > --- > arch/x86/mm/pgtable.c | 46 +++++++++++++++++++++++++------------------ > 1 file changed, 27 insertions(+), 19 deletions(-) > > diff --git a/arch/x86/mm/pgtable.c b/arch/x86/mm/pgtable.c > index 15a8009a4480..6da7fd5d4782 100644 > --- a/arch/x86/mm/pgtable.c > +++ b/arch/x86/mm/pgtable.c > @@ -52,7 +52,7 @@ early_param("userpte", setup_userpte); > > void ___pte_free_tlb(struct mmu_gather *tlb, struct page *pte) > { > - pgtable_pte_page_dtor(pte); > + pagetable_pte_dtor(page_ptdesc(pte)); > paravirt_release_pte(page_to_pfn(pte)); > paravirt_tlb_remove_table(tlb, pte); > } > @@ -60,7 +60,7 @@ void ___pte_free_tlb(struct mmu_gather *tlb, struct page *pte) > #if CONFIG_PGTABLE_LEVELS > 2 > void ___pmd_free_tlb(struct mmu_gather *tlb, pmd_t *pmd) > { > - struct page *page = virt_to_page(pmd); > + struct ptdesc *ptdesc = virt_to_ptdesc(pmd); > paravirt_release_pmd(__pa(pmd) >> PAGE_SHIFT); > /* > * NOTE! For PAE, any changes to the top page-directory-pointer-table > @@ -69,8 +69,8 @@ void ___pmd_free_tlb(struct mmu_gather *tlb, pmd_t *pmd) > #ifdef CONFIG_X86_PAE > tlb->need_flush_all = 1; > #endif > - pgtable_pmd_page_dtor(page); > - paravirt_tlb_remove_table(tlb, page); > + pagetable_pmd_dtor(ptdesc); > + paravirt_tlb_remove_table(tlb, ptdesc_page(ptdesc)); > } > > #if CONFIG_PGTABLE_LEVELS > 3 > @@ -92,16 +92,16 @@ void ___p4d_free_tlb(struct mmu_gather *tlb, p4d_t *p4d) > > static inline void pgd_list_add(pgd_t *pgd) > { > - struct page *page = virt_to_page(pgd); > + struct ptdesc *ptdesc = virt_to_ptdesc(pgd); > > - list_add(&page->lru, &pgd_list); > + list_add(&ptdesc->pt_list, &pgd_list); > } > > static inline void pgd_list_del(pgd_t *pgd) > { > - struct page *page = virt_to_page(pgd); > + struct ptdesc *ptdesc = virt_to_ptdesc(pgd); > > - list_del(&page->lru); > + list_del(&ptdesc->pt_list); > } > > #define UNSHARED_PTRS_PER_PGD \ > @@ -112,12 +112,12 @@ static inline void pgd_list_del(pgd_t *pgd) > > static void pgd_set_mm(pgd_t *pgd, struct mm_struct *mm) > { > - virt_to_page(pgd)->pt_mm = mm; > + virt_to_ptdesc(pgd)->pt_mm = mm; > } > > struct mm_struct *pgd_page_get_mm(struct page *page) > { > - return page->pt_mm; > + return page_ptdesc(page)->pt_mm; > } > > static void pgd_ctor(struct mm_struct *mm, pgd_t *pgd) > @@ -213,11 +213,14 @@ void pud_populate(struct mm_struct *mm, pud_t *pudp, pmd_t *pmd) > static void free_pmds(struct mm_struct *mm, pmd_t *pmds[], int count) > { > int i; > + struct ptdesc *ptdesc; > > for (i = 0; i < count; i++) > if (pmds[i]) { > - pgtable_pmd_page_dtor(virt_to_page(pmds[i])); > - free_page((unsigned long)pmds[i]); > + ptdesc = virt_to_ptdesc(pmds[i]); > + > + pagetable_pmd_dtor(ptdesc); > + pagetable_free(ptdesc); > mm_dec_nr_pmds(mm); > } > } > @@ -232,16 +235,21 @@ static int preallocate_pmds(struct mm_struct *mm, pmd_t *pmds[], int count) > gfp &= ~__GFP_ACCOUNT; > > for (i = 0; i < count; i++) { > - pmd_t *pmd = (pmd_t *)__get_free_page(gfp); > - if (!pmd) > + pmd_t *pmd = NULL; > + struct ptdesc *ptdesc = pagetable_alloc(gfp, 0); > + > + if (!ptdesc) > failed = true; > - if (pmd && !pgtable_pmd_page_ctor(virt_to_page(pmd))) { > - free_page((unsigned long)pmd); > - pmd = NULL; > + if (ptdesc && !pagetable_pmd_ctor(ptdesc)) { > + pagetable_free(ptdesc); > + ptdesc = NULL; > failed = true; > } > - if (pmd) > + if (ptdesc) { > mm_inc_nr_pmds(mm); > + pmd = ptdesc_address(ptdesc); > + } > + > pmds[i] = pmd; > } > > @@ -830,7 +838,7 @@ int pud_free_pmd_page(pud_t *pud, unsigned long addr) > > free_page((unsigned long)pmd_sv); > > - pgtable_pmd_page_dtor(virt_to_page(pmd)); > + pagetable_pmd_dtor(virt_to_ptdesc(pmd)); > free_page((unsigned long)pmd); > > return 1; > -- > 2.40.1 > > -- Sincerely yours, Mike. From xen-devel-bounces@lists.xenproject.org Wed Jun 14 14:28:37 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 14:28:37 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548879.857092 (Exim 4.92) (envelope-from ) id 1q9RUD-00059A-EG; Wed, 14 Jun 2023 14:28:37 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548879.857092; Wed, 14 Jun 2023 14:28:37 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9RUD-000591-B6; Wed, 14 Jun 2023 14:28:37 +0000 Received: by outflank-mailman (input) for mailman id 548879; Wed, 14 Jun 2023 14:28:36 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9RUC-0004gu-4F for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 14:28:36 +0000 Received: from esa3.hc3370-68.iphmx.com (esa3.hc3370-68.iphmx.com [216.71.145.155]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id bcf26ed7-0abf-11ee-8611-37d641c3527e; Wed, 14 Jun 2023 16:28:33 +0200 (CEST) Received: from mail-dm6nam04lp2042.outbound.protection.outlook.com (HELO NAM04-DM6-obe.outbound.protection.outlook.com) ([104.47.73.42]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 14 Jun 2023 10:28:30 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by BN8PR03MB5009.namprd03.prod.outlook.com (2603:10b6:408:d7::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.37; Wed, 14 Jun 2023 14:28:26 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606%4]) with mapi id 15.20.6477.037; Wed, 14 Jun 2023 14:28:26 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: bcf26ed7-0abf-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686752913; h=message-id:date:from:subject:to:cc:references: in-reply-to:content-transfer-encoding:mime-version; bh=JyObkvyIF+L0s21vBTzrGdDKkYV9+WvYos9hex0Fjv0=; b=gY8nOy0bsfGCnJrvg0uFxM8GQpOlGJt12mpEeYXzvmSqKIKurLqYaAx1 jYbQfMnq8c/l6uy0tNvgQGIzEYpiPlOr/verZVv6nUYHAwX/scu3UToVj HZgMSn9avF0/hH/lngzXxiRg4HOcTDwVxpxjAvmHS22pXquFCyHBb/T5V A=; X-IronPort-RemoteIP: 104.47.73.42 X-IronPort-MID: 112785777 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:P8A2lKz2YoXInRh4HG56t+d8xirEfRIJ4+MujC+fZmUNrF6WrkVRm 2YZWDvXafaCMWD0KdF1Oduy9ENUuMWDyN82Sgs9qiAxQypGp/SeCIXCJC8cHc8wwu7rFxs7s ppEOrEsCOhuExcwcz/0auCJQUFUjP3OHfykTrafYEidfCc8IA85kxVvhuUltYBhhNm9Emult Mj75sbSIzdJ4RYtWo4vw/zF8EsHUMja4mtC5QRgPKwT5TcyqlFOZH4hDfDpR5fHatE88t6SH 47r0Ly/92XFyBYhYvvNfmHTKxBirhb6ZGBiu1IOM0SQqkEqSh8ai87XAME0e0ZP4whlqvgqo Dl7WT5cfi9yVkHEsLx1vxC1iEiSN4UekFPMCSDXXcB+UyQq2pYjqhljJBheAGEWxgp4KX5g5 eAYIjIvVBTZpcm93+KYS+9WgO12eaEHPKtH0p1h5RfwKK56BLzmHeDN79Ie2yosjMdTG/qYf 9AedTdkcBXHZVtIJ0sTD5U92uyvgxETcRUB8A7T+fVxvDOVkFYZPLvFabI5fvSjQ8lPk1nej WXB52njWTkRNcCFyCrD+XWp7gPKtXqiAt1CSeLnqZaGhnXNmnYLBCI4dWKd//aZjhC1ZMtuC mwtr39GQa8asRbDosPGdxu5q3mAt1gCVsZKEus7wAuQxbHZ5QnfDW8BJhZRZdpjuMIoSDgC0 l6Sg8ivFTFpqKeSS3+W6vGTtzzaESMSK3QfYTMFSwQt6cTsu4w1gVTESdMLOLWuktT/FDX0w jaLhCsznbMeiYgMzarT1VLahzOhoLDZQwhz4R/YNkqv4xllfoeja8qt4ELC8PdbBI+DSx+Ku 31ss/aZ6OcCHJScjhunSe8GHKyqz/udOTiaillqd7Ej/Tmw/3+ofahL/SpzYkxuN64sZjvBc ELV/wRL6/d7JnKqcKsxeIO3BMQCxLLlU9/iU5jpgsFmZ5FwcEqL+X9obEvIg2T1yhBwy+c4J IuRdtuqATACE6N7wTGqRuAbl7g22iQ5wmCVTpf+p/i67YejiLeuYe9tGDOzgioRtstofC29H w5jCva3 IronPort-HdrOrdr: A9a23:NgtPMqHTihPyFK7UpLqE0seALOsnbusQ8zAXPhZKOHtom6uj5q OTdZUgtSMc5wx7ZJhNo7q90cq7IE80l6Qb3WBLB8bHYOCOggLBEGgF1+bfKlbbdREWmNQw6U /OGZIObuEZoTJB/KTHCKjTKadE/OW6 X-Talos-CUID: 9a23:Q4C3qmxq+q9AM2DltqxSBgULNNA5cnff7k3UeW2TAnk5a7yTc1m5rfY= X-Talos-MUID: 9a23:SzSA3Aaa3Evo3OBT6WP2nD1dGudRxfqhKERTmqofiuikDHkl X-IronPort-AV: E=Sophos;i="6.00,242,1681185600"; d="scan'208";a="112785777" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=j37PPFk/PmB7m0/Oy5TJ8qwQ1tFc+BwWgx6iKg7w4mTNbLtX2OP03Jml/cxrtpKtQtRFK4gMM9LiE07nAOCl63u7eSfUnouZrCK3DSHsLyZGmbMzX5BsuWNyUILcbv8txVS9OanMNjOhlh9S6uD5s8PrCBpP6LlsLrYx7b391pNSAsbJrLVyDc2WDY2HPPO+dKsrNpUQR9VGM4yq9zVy9QfmkfUbAO0+1MV8mVqbcIwVoGMKmpVOS9DxLGkony9YRAsC+BXs71Lyj5v+T9ruwHNsdlkUA8iurgVgF57zgWOLLtJIMGaQzB2sUlS8TbtVp/OfTMy85qN01ti92GiRWQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=RmXONbex5w6RjBV0L7OFd3V9/VoMzl5BwyVFNh1Ct/8=; b=E1YUa43Mxx6/i1P60TDJaJe6DHaDC/0Q6Z1t6Pfv1BdSHnOuGZV0+P/9bPSPnmJr4OrJXW8sc3T2xJZF8OOFzGsgCZjX3VGfjxENFQiQEdG8qwdV1whScvv8M1TPw6FqI099ho23K3MwNrRPfbdt8YkKvvIAhgAK440O/NpQ/aQu7s/pYrl+zGAdBhmZMuL7nW24ZyCn9abNh8vdxmAyW1rt/aCCJd9X+7TAQq86MsA7gS7xpnBqcOz9BH7GXVft8KKVdZi8duKa9AqGHrYe0u8S0brYJ2mROET49k2c3ormq/m5OUZl1KQl86B01pLeJ8Z3rYEqP45hpzeFoSZvWg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=RmXONbex5w6RjBV0L7OFd3V9/VoMzl5BwyVFNh1Ct/8=; b=jGk114wP6+Sobjzuk1iISJzdCu8gFxmcsAbSE3zgB04vq7yHL1dPoPHMVeSZlLtaf/BoTpiaOXFB1NP3akSEm0I5IUF8vnoCIRfNJfSMHnpR6regkprG9Dk4C66dv/2abPihtVVgIPcjQjG67aE2dPCO6t0mSqMkAIZdyWwjIHE= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: Date: Wed, 14 Jun 2023 15:28:19 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 From: Andrew Cooper Subject: Re: [XEN PATCH] xen: fixed violations of MISRA C:2012 Rule 3.1 Content-Language: en-GB To: Nicola Vetrini , xen-devel@lists.xenproject.org Cc: consulting@bugseng.com, Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk , George Dunlap , Jan Beulich , Wei Liu , Rahul Singh References: In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: LO2P265CA0318.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:a4::18) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|BN8PR03MB5009:EE_ X-MS-Office365-Filtering-Correlation-Id: b5f53ad9-9ab9-4a89-6ee3-08db6ce39d8e X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: NN2lXbimFXMvu3BwepfRs/B+UISRvvJxTSbtTr7nqVKbpzToEfnrqxlHJ1CHN7Pi9/h5zCcBMyGq8h9hU/OZD1FDyhcPfJLGdDtsbhZr6bcyAMsB6cyjMLXu93j14FgnfS/wq9/jSq7f8Y260QHkIZLADYIvBIgYqBFNfJlo0RQ3bYQ1iuMP/U4p8TJV8QE+srB62QXMNW4/B/PrFz/tWUXnNGX7s9PI7c12MBVXIoHIm0kpSdk/MgE4s4IF+2N62fVXa5kUlQ+c+EN4hgufsnOt6ety7Cc7FWXmUfnaf7dCoeKZ/oDJY86xOwf8F89JhlZ5ldND9m+hx690l1IeNwIzGU5DfZfvR5wQYc4o2cZwdNVuBO9/fIoqOetC8T7AhZv85tASP4ZjkEwYKAI1zUghT6C9a192093B+lDaZbW/B9VvpsQMLv1as9SK+JYgqhBqxDzg+qZNWztV4zrdDDnaxK4Bt7rEqm/JVwEZTM859o+Nnq4h70ZAVRXSWkv1MHeD3ms7Ej1JijFZSDVv9TosHGWTukmPMFOVmlS4beOVn5lY6CdeQy3OhI00jSt/+Ryx9ygKQx7J95eDvT9O8kWBjk99E0OJATHPcKJpEmZfUvEW6VUS8xkHWNjF3FW8K/PbY6/PImgnbz+JUfIcdQ== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(366004)(346002)(396003)(136003)(376002)(451199021)(83380400001)(5660300002)(186003)(6506007)(2906002)(31686004)(4744005)(2616005)(7416002)(41300700001)(6512007)(8936002)(26005)(8676002)(6486002)(316002)(31696002)(54906003)(53546011)(6666004)(82960400001)(36756003)(478600001)(38100700002)(86362001)(4326008)(66476007)(66556008)(66946007)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?Tyt5Zm1vM3piR1Vub0FGUzlRNHVNcUpFcVJkY2doa0RLTEpKb2tDeVpNUXZu?= =?utf-8?B?Z29ZL09OZzlsTDV4ZjlaQ084ZXpSWEthbFlQUXJBMmkvKy9ScDNTZGhCZTVR?= =?utf-8?B?L3Z6dWo5czd4UE5DSWZhTllwMElMbFRkdVVmR2NLODFGQmdYWHA4cnJKbGZC?= =?utf-8?B?ZDZnMUtiQXRQbkdkRVFOelJKQm1TUzlBeUxjWVNldmMrRlB1dmh2UFNucjVH?= =?utf-8?B?R290VFB5Sk5oNVovRFM0bGtRTTRWdm5NRk9kSWFKS3dlcnRXZ3lMeHdCVExn?= =?utf-8?B?NmhyYXRjamVOYUpaKzROVUlwcVBHUVNSM1JjMDMvaVlVZVRKWHhsS0MwR0p6?= =?utf-8?B?UHk5NUdlZk90VFpObTk5cmZOOS9OOUl2TzBwNFV1RkRGdSt3S00yNXdiRmVT?= =?utf-8?B?eENFQmNzbkZFdTk1bzBGRnYxbEpBQUs1Rk15bnBjREtLN1pEZDZpZVVqMjVT?= =?utf-8?B?Ym1WdzZaYmp6b05ZcU82bWNXeExvbkVwYXNaaDdYb2FyOGNkRkE1K2svQXRE?= =?utf-8?B?N2ErWk9NNEdNN1VKU1JPWXlzTDRHTlV2VGZNWFdXVXFHZzljUHdudG05emp6?= =?utf-8?B?bkJkbWJhOGw4a0ZpeGp6MkdHcWRMU3ZDeGZhZUJoVkVCQXVhT3l5TVYwcjFt?= =?utf-8?B?VFpEaVR2cGpsYmc3M3ZkelY3NzAzNHZQTHZWSUdlU2lHcyt4V3FCeGY3YXd5?= =?utf-8?B?bUloY0lPSm1LSVJya29hdEREcTE4RGEybS9FTU5XZEtqdnVZUHpFWVo4SWJj?= =?utf-8?B?ZDlFckk3UEo4VFY1QjlTdENnVDYrN3dGV1VUbWR2VXN1TGk4VWFLRkJ1cWdW?= =?utf-8?B?ZDdZY0JLaVhNdmRMemJqc3I3V0MrdjJ1QS9jYUtzN3ZMazVGVDZGa0U0T1Qv?= =?utf-8?B?RFFaYXRiM0RycUZmVFNHTXdXN3IySytaL2RYQXRzQ1dDdXo1UlNNUWtUSmZT?= =?utf-8?B?V0hXSXJ2ZjFYc3lvSFdNbXlQT0E1WkdqSktOWm9TT0FldG4yWEg4ZXVjQmJF?= =?utf-8?B?OVMrME5VYzI4MWkramNmMjlVeitTN3NQWG5CNVVjRFpxQUY0aVhUT2RabldW?= =?utf-8?B?dEJxRzc5TGNqRk42TW8rYVlmcFlPUG1XMXg4bnlJV0pNeGZ5eFBNZWljZkRa?= =?utf-8?B?UTRDMEJ0QzR0K0pOWS9SN2Jpa2ZWekVwRDVEZjBxRXVVR0QrVXNEa1N4SEYz?= =?utf-8?B?U2xubTlYaGFGNjd0YkFSYWwyb0ZDa1Y4aWRRa2p1bEdVYWxXQlF2VUIwYUp5?= =?utf-8?B?bXpPSUt1eUVUYTN3cndFa01wc2pYelpYOE1TdjhLSHpRTUh2R2MrV3lCYU5W?= =?utf-8?B?WGd6N1B4MXVYQ2xZSEtsN3dEQUt5S2lKYUlHQ0N4Zkg4SHdlOVdaVVJCdXZZ?= =?utf-8?B?VmFUWG50dVpoTWE0RWkrcUphRGxXVGRFYUFONVlmSTZLeFlMQlBWU0NVUnMx?= =?utf-8?B?bVozY0NOQTZNVkcxR0pYbmx0QWtCNDV1M0VMeXFSKzhkblp2cGk0aU03U2FL?= =?utf-8?B?WHd4ZzNLZmV2cHZyTEwwWWZJSXpBeGlNc1kySVoxVmt6eUwwRXNRWUtrOVU3?= =?utf-8?B?VGJFL1U5NXd5S2o2cU9zQk96T1hRUmREbWtZMzJRaTNzeWFsNnZXMmMrZDlk?= =?utf-8?B?Qy8xamY3SHdJZ0RNVUY1Y1RUNHJVL1ZRZ3ZqK00rWXB0OUhZWkZ1dUlFTlBX?= =?utf-8?B?eEJBS0dMZTYveWw4ejBvRTZNeHlyWSszNGZBQmlmUGx4ZDBFV3FhTTBTcldF?= =?utf-8?B?cWJnVnBNdkEwdE1TLzRKNW80d2ZTRVNIMXpGdmh2MUtLbXRpVG43eDMxQy9I?= =?utf-8?B?dHFucnEwOVFtWUo1RDZQL2RMWnZxeG5yR1FWaWRKR0JMYzU2U2RnMXQvQ1NW?= =?utf-8?B?UFl3clAxdzhZQVoxNXlnNThMUS9ldGNHN05yTGJCZUliRkxadzlaU0xxOXVv?= =?utf-8?B?L3NaRGttR1I2Z0xZZ1V3TEc1MTZuWmJRVDU0bkk0UnkrYXZhcGlEbDlEbmxj?= =?utf-8?B?eWZkMzNMMVladTZ2RFJwdk9RbWFLMWRFMUtQeWVBU3RMcklqV3ZRV0Z0TVN6?= =?utf-8?B?VmtleEo5QlRsc3Z3TjB5Mlc0UVNqSWU2b2Rtang5enN5d2FmKzN4MmhOZzQ3?= =?utf-8?B?N0xxblNqY2xOUVU3UTdJTmc4MTBRN041em45dGhab3BEeFB2b3RoTThaS1pJ?= =?utf-8?B?S2c9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: =?utf-8?B?ZDhJblZkUTRVUjEzWjUrU25KQ2ZoSjRKNDI3WEVlcWVzYkJuRmp3aXNVTk51?= =?utf-8?B?TlhPUEUyU0NTeStBT2NuK0hpaHFyNTd3ams5UCt5ZDNyTTBxZVlCRHc3K2RZ?= =?utf-8?B?dW5xQURtdDVnRXQwRHY4TlZIcWlCbkQxUVUyTCs0eGVMMlJ2T0VlQVhBTmhN?= =?utf-8?B?bi9VQjV6NCsxYWxUSkNmTFkyUnM1WTBlYkF6QlNtUW5zOXVJdjk5YXkvU0t0?= =?utf-8?B?eEQ3bU5HMTdiUHBobGZjSWd4VmVWZlNZU0xka1BVMkxoU0w5UlAzYlNkRU1L?= =?utf-8?B?NjV2anF4Q01FcnNWcHRrcXFOS0F0ZUxsS2JsdlBOb09RWXkxWEtIYjNtYWdv?= =?utf-8?B?bk96L3lENnRVM293Z0htMDdmUkRVeGFzTDJNdTlPSENSR2RJOTN5RXZkRzRi?= =?utf-8?B?VVR5eXhiV3FPeDMycGZMZmRYTUozMnZhREM4cnEzSlJrOVBDdVk4UWs1VmFC?= =?utf-8?B?VVNFa3kxekg4NS9Oa3EybVhuMEMwSzZ2ZitsOWlEWEV2enlvZWVDNUlsODdo?= =?utf-8?B?MUd2RFlQTHZ6bWUvSUNuU0xtR0JZVlNzdURQR2pkem9XWmZXK0w4YUZZRHVn?= =?utf-8?B?VDVKcmM4TnB0QTRKbEh5bDFHbUdTUjlTbTcxTzJVbHg0N203VzUrT1BwYWRM?= =?utf-8?B?K0tJM1ptc3hNdXBtTTR5c1l0MFAyZDhPQitnaGxQcllXa2JaMjRacHN3VWN3?= =?utf-8?B?ZkpGNnY3ckE2MHBBOGd4RkhDZ3Z5YVp1WFVFdFovTXNUU3A0UGVIVG4wRjEr?= =?utf-8?B?SzliUm5TZ3R3aFJTNTgzWlppMy9BMktsZ0Q0bjBqSmZoNFE3WE5JdThUM1A3?= =?utf-8?B?bkI2Y3lrcy94QUhwVmVBd0hORW85YitlTXJ5RkJvcmtTRUoyME1mUGhCQkM5?= =?utf-8?B?Z3ZBV1lmMzlUSXl3aVFlbisyZHdBY3YrS1VXblJmaTNuRktGdkY3Zmo5TlBl?= =?utf-8?B?TmZhYkU0aW1mbTFOTlAzOVAvSkFoYktGQVZGY1lQVTdScm15T3JiZ01UT0tO?= =?utf-8?B?Yi95d2srd2VadkxyL0FwKytYeDV1MmVTenhIZmpWdTkrNkI5Mk9UVWNyZnd2?= =?utf-8?B?dlc5RXZsQ28xWllpa1BrS3FCa2pSd1ptb0Y4MWVZREZ6YlFNcWU2Uy95UWll?= =?utf-8?B?YXg2MU0zZWwrOHRvK3psQTk1cVpPU0VMaUFkRHIxQVdOUXlTUkxLSG1mVGtq?= =?utf-8?B?d1ZuSklvakJrc0JNNWlGWUZ0TVBZU2crZjQwUWdGUEJzdlRKaW5XRW4rZU9G?= =?utf-8?Q?UsUVgtcwbOSpn62?= X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: b5f53ad9-9ab9-4a89-6ee3-08db6ce39d8e X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Jun 2023 14:28:26.2881 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: ltgjstmsBDYkmoGn/yZQyL8LJFDhemYs7iEKDaqDhDXQnGfyhpynztsOFsbe1W7sgxlg5YVZ4+U6ZHlxG51J9suPyOQpCjJHykgR0zKA5cc= X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN8PR03MB5009 On 13/06/2023 8:42 am, Nicola Vetrini wrote: > diff --git a/xen/common/xmalloc_tlsf.c b/xen/common/xmalloc_tlsf.c > index 75bdf18c4e..ea6ec47a59 100644 > --- a/xen/common/xmalloc_tlsf.c > +++ b/xen/common/xmalloc_tlsf.c > @@ -140,9 +140,10 @@ static inline void MAPPING_SEARCH(unsigned long *r, int *fl, int *sl) > *fl = flsl(*r) - 1; > *sl = (*r >> (*fl - MAX_LOG2_SLI)) - MAX_SLI; > *fl -= FLI_OFFSET; > - /*if ((*fl -= FLI_OFFSET) < 0) // FL will be always >0! > - *fl = *sl = 0; > - */ > +#if 0 > + if ((*fl -= FLI_OFFSET) < 0) // FL will be always >0! > + fl = *sl = 0; > +#endif > *r &= ~t; > } > } This logic has been commented out right from it's introduction in c/s 9736b76d829b2d in 2008, and never touched since. I think it can safely be deleted, and not placed inside an #if 0. ~Andrew From xen-devel-bounces@lists.xenproject.org Wed Jun 14 14:29:25 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 14:29:25 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548887.857102 (Exim 4.92) (envelope-from ) id 1q9RUt-0005kJ-NQ; Wed, 14 Jun 2023 14:29:19 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548887.857102; Wed, 14 Jun 2023 14:29:19 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9RUt-0005kC-KJ; Wed, 14 Jun 2023 14:29:19 +0000 Received: by outflank-mailman (input) for mailman id 548887; Wed, 14 Jun 2023 14:29:18 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9RUs-0005jq-2F; Wed, 14 Jun 2023 14:29:18 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9RUs-0004aX-0S; Wed, 14 Jun 2023 14:29:18 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9RUr-0005Dh-Qk; Wed, 14 Jun 2023 14:29:17 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q9RUr-0001z3-QF; Wed, 14 Jun 2023 14:29:17 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=jyF99FB8nop4bq7hm7AF+vUgWW9Bdlii6ZSI5DKYcdE=; b=xFlgX5Za60rda6n6jgNAOVXmLL e6TmNuvjk5BfcVk6dm1ZvN/Q02jBbbwI50LmSbabVIWuU3Zsb4H1qcK7S2XV1OEhnUmsZGt5/suL5 A/9DxIdOEmvdCHnMDKmzERbC25vxKTn+LMCr6AdNMsTYM9gm0pkS7VoJ3PRJQTyvO2WE=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [libvirt test] 181418: tolerable all pass - PUSHED X-Osstest-Failures: libvirt:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking libvirt:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking libvirt:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking libvirt:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking libvirt:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking libvirt:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking libvirt:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking libvirt:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt:saverestore-support-check:fail:nonblocking libvirt:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking libvirt:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-qcow2:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-qcow2:saverestore-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking libvirt:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking libvirt:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking libvirt:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking libvirt:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking X-Osstest-Versions-This: libvirt=a7ee9eac835324854483a231d7931b9329f259bc X-Osstest-Versions-That: libvirt=97f0bd00b4d055f2329392d2f8b7fe566fc65901 From: osstest service owner Date: Wed, 14 Jun 2023 14:29:17 +0000 flight 181418 libvirt real [real] http://logs.test-lab.xenproject.org/osstest/logs/181418/ Failures :-/ but no regressions. Tests which did not succeed, but are not blocking: test-armhf-armhf-libvirt 16 saverestore-support-check fail like 181374 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail like 181374 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail like 181374 test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-i386-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-i386-libvirt 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt 15 migrate-support-check fail never pass test-arm64-arm64-libvirt 16 saverestore-support-check fail never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-i386-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-qcow2 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-qcow2 15 saverestore-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-check fail never pass test-armhf-armhf-libvirt 15 migrate-support-check fail never pass test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail never pass test-armhf-armhf-libvirt-raw 14 migrate-support-check fail never pass version targeted for testing: libvirt a7ee9eac835324854483a231d7931b9329f259bc baseline version: libvirt 97f0bd00b4d055f2329392d2f8b7fe566fc65901 Last test of basis 181374 2023-06-11 04:18:49 Z 3 days Testing same since 181401 2023-06-13 04:20:27 Z 1 days 2 attempts ------------------------------------------------------------ People who touched revisions under test: Ján Tomko Michal Privoznik jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-i386-libvirt-xsm pass test-amd64-amd64-libvirt pass test-arm64-arm64-libvirt pass test-armhf-armhf-libvirt pass test-amd64-i386-libvirt pass test-amd64-amd64-libvirt-pair pass test-amd64-i386-libvirt-pair pass test-arm64-arm64-libvirt-qcow2 pass test-armhf-armhf-libvirt-qcow2 pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw pass test-amd64-i386-libvirt-raw pass test-amd64-amd64-libvirt-vhd pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Pushing revision : To xenbits.xen.org:/home/xen/git/libvirt.git 97f0bd00b4..a7ee9eac83 a7ee9eac835324854483a231d7931b9329f259bc -> xen-tested-master From xen-devel-bounces@lists.xenproject.org Wed Jun 14 14:29:38 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 14:29:38 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548891.857113 (Exim 4.92) (envelope-from ) id 1q9RVC-0006DM-5p; Wed, 14 Jun 2023 14:29:38 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548891.857113; Wed, 14 Jun 2023 14:29:38 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9RVC-0006DD-0Z; Wed, 14 Jun 2023 14:29:38 +0000 Received: by outflank-mailman (input) for mailman id 548891; Wed, 14 Jun 2023 14:29:37 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9RVB-0006As-5T for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 14:29:37 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id e20eb3f2-0abf-11ee-b232-6b7b168915f2; Wed, 14 Jun 2023 16:29:35 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id E92D56430A; Wed, 14 Jun 2023 14:29:33 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 5D80CC433C0; Wed, 14 Jun 2023 14:29:25 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: e20eb3f2-0abf-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1686752973; bh=WTaYvuDxg6Ye+uQdifpISbANz3GG89I9p1wO2eS6L8A=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=UUaoURE5aAUww0zdJi05OlquU80O9XL9Py3hqHO+LOlrE1dJTlcKfjr7g3Q4pa1ka TpdouhGFDli9Bib8omnOXLlenVR4YFqsF41fzo2fo/7p60Kvnh3A8dxKQ8r4GMkFbV BGnFTzUxZ9yEbmXh9kyBVd2OmMcblodskvomswYUFQH8gESMcIL7ysIdFgwhWL+oVh QIjWn2OGMID6DQBxMSVzgYXrYFcRz2U/pj3+bMpZDPe2q/gGOUq2fTlwvIT8+//6Dj UsLvzsvMCbg3XtPWJ2LFNTIRZaNTRGuIV/RWVmvm3S3QLmVzb5YF+ZcVOLYxCkW6BA JQ1937AG598iQ== Date: Wed, 14 Jun 2023 17:28:54 +0300 From: Mike Rapoport To: "Vishal Moola (Oracle)" Cc: Andrew Morton , Matthew Wilcox , linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , David Hildenbrand , Claudio Imbrenda Subject: Re: [PATCH v4 16/34] s390: Convert various gmap functions to use ptdescs Message-ID: <20230614142854.GO52412@kernel.org> References: <20230612210423.18611-1-vishal.moola@gmail.com> <20230612210423.18611-17-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20230612210423.18611-17-vishal.moola@gmail.com> On Mon, Jun 12, 2023 at 02:04:05PM -0700, Vishal Moola (Oracle) wrote: > In order to split struct ptdesc from struct page, convert various > functions to use ptdescs. > > Some of the functions use the *get*page*() helper functions. Convert > these to use pagetable_alloc() and ptdesc_address() instead to help > standardize page tables further. > > Signed-off-by: Vishal Moola (Oracle) With folding ptdesc->_pt_s390_gaddr = 0; into pagetable_free() Acked-by: Mike Rapoport (IBM) > --- > arch/s390/mm/gmap.c | 230 ++++++++++++++++++++++++-------------------- > 1 file changed, 128 insertions(+), 102 deletions(-) > > diff --git a/arch/s390/mm/gmap.c b/arch/s390/mm/gmap.c > index 81c683426b49..010e87df7299 100644 > --- a/arch/s390/mm/gmap.c > +++ b/arch/s390/mm/gmap.c > @@ -34,7 +34,7 @@ > static struct gmap *gmap_alloc(unsigned long limit) > { > struct gmap *gmap; > - struct page *page; > + struct ptdesc *ptdesc; > unsigned long *table; > unsigned long etype, atype; > > @@ -67,12 +67,12 @@ static struct gmap *gmap_alloc(unsigned long limit) > spin_lock_init(&gmap->guest_table_lock); > spin_lock_init(&gmap->shadow_lock); > refcount_set(&gmap->ref_count, 1); > - page = alloc_pages(GFP_KERNEL_ACCOUNT, CRST_ALLOC_ORDER); > - if (!page) > + ptdesc = pagetable_alloc(GFP_KERNEL_ACCOUNT, CRST_ALLOC_ORDER); > + if (!ptdesc) > goto out_free; > - page->_pt_s390_gaddr = 0; > - list_add(&page->lru, &gmap->crst_list); > - table = page_to_virt(page); > + ptdesc->_pt_s390_gaddr = 0; > + list_add(&ptdesc->pt_list, &gmap->crst_list); > + table = ptdesc_to_virt(ptdesc); > crst_table_init(table, etype); > gmap->table = table; > gmap->asce = atype | _ASCE_TABLE_LENGTH | > @@ -181,25 +181,25 @@ static void gmap_rmap_radix_tree_free(struct radix_tree_root *root) > */ > static void gmap_free(struct gmap *gmap) > { > - struct page *page, *next; > + struct ptdesc *ptdesc, *next; > > /* Flush tlb of all gmaps (if not already done for shadows) */ > if (!(gmap_is_shadow(gmap) && gmap->removed)) > gmap_flush_tlb(gmap); > /* Free all segment & region tables. */ > - list_for_each_entry_safe(page, next, &gmap->crst_list, lru) { > - page->_pt_s390_gaddr = 0; > - __free_pages(page, CRST_ALLOC_ORDER); > + list_for_each_entry_safe(ptdesc, next, &gmap->crst_list, pt_list) { > + ptdesc->_pt_s390_gaddr = 0; > + pagetable_free(ptdesc); > } > gmap_radix_tree_free(&gmap->guest_to_host); > gmap_radix_tree_free(&gmap->host_to_guest); > > /* Free additional data for a shadow gmap */ > if (gmap_is_shadow(gmap)) { > - /* Free all page tables. */ > - list_for_each_entry_safe(page, next, &gmap->pt_list, lru) { > - page->_pt_s390_gaddr = 0; > - page_table_free_pgste(page); > + /* Free all ptdesc tables. */ > + list_for_each_entry_safe(ptdesc, next, &gmap->pt_list, pt_list) { > + ptdesc->_pt_s390_gaddr = 0; > + page_table_free_pgste(ptdesc_page(ptdesc)); > } > gmap_rmap_radix_tree_free(&gmap->host_to_rmap); > /* Release reference to the parent */ > @@ -308,27 +308,27 @@ EXPORT_SYMBOL_GPL(gmap_get_enabled); > static int gmap_alloc_table(struct gmap *gmap, unsigned long *table, > unsigned long init, unsigned long gaddr) > { > - struct page *page; > + struct ptdesc *ptdesc; > unsigned long *new; > > /* since we dont free the gmap table until gmap_free we can unlock */ > - page = alloc_pages(GFP_KERNEL_ACCOUNT, CRST_ALLOC_ORDER); > - if (!page) > + ptdesc = pagetable_alloc(GFP_KERNEL_ACCOUNT, CRST_ALLOC_ORDER); > + if (!ptdesc) > return -ENOMEM; > - new = page_to_virt(page); > + new = ptdesc_to_virt(ptdesc); > crst_table_init(new, init); > spin_lock(&gmap->guest_table_lock); > if (*table & _REGION_ENTRY_INVALID) { > - list_add(&page->lru, &gmap->crst_list); > + list_add(&ptdesc->pt_list, &gmap->crst_list); > *table = __pa(new) | _REGION_ENTRY_LENGTH | > (*table & _REGION_ENTRY_TYPE_MASK); > - page->_pt_s390_gaddr = gaddr; > - page = NULL; > + ptdesc->_pt_s390_gaddr = gaddr; > + ptdesc = NULL; > } > spin_unlock(&gmap->guest_table_lock); > - if (page) { > - page->_pt_s390_gaddr = 0; > - __free_pages(page, CRST_ALLOC_ORDER); > + if (ptdesc) { > + ptdesc->_pt_s390_gaddr = 0; > + pagetable_free(ptdesc); > } > return 0; > } > @@ -341,15 +341,15 @@ static int gmap_alloc_table(struct gmap *gmap, unsigned long *table, > */ > static unsigned long __gmap_segment_gaddr(unsigned long *entry) > { > - struct page *page; > + struct ptdesc *ptdesc; > unsigned long offset, mask; > > offset = (unsigned long) entry / sizeof(unsigned long); > offset = (offset & (PTRS_PER_PMD - 1)) * PMD_SIZE; > mask = ~(PTRS_PER_PMD * sizeof(pmd_t) - 1); > - page = virt_to_page((void *)((unsigned long) entry & mask)); > + ptdesc = virt_to_ptdesc((void *)((unsigned long) entry & mask)); > > - return page->_pt_s390_gaddr + offset; > + return ptdesc->_pt_s390_gaddr + offset; > } > > /** > @@ -1345,6 +1345,7 @@ static void gmap_unshadow_pgt(struct gmap *sg, unsigned long raddr) > unsigned long *ste; > phys_addr_t sto, pgt; > struct page *page; > + struct ptdesc *ptdesc; > > BUG_ON(!gmap_is_shadow(sg)); > ste = gmap_table_walk(sg, raddr, 1); /* get segment pointer */ > @@ -1358,9 +1359,11 @@ static void gmap_unshadow_pgt(struct gmap *sg, unsigned long raddr) > __gmap_unshadow_pgt(sg, raddr, __va(pgt)); > /* Free page table */ > page = phys_to_page(pgt); > - list_del(&page->lru); > - page->_pt_s390_gaddr = 0; > - page_table_free_pgste(page); > + > + ptdesc = page_ptdesc(page); > + list_del(&ptdesc->pt_list); > + ptdesc->_pt_s390_gaddr = 0; > + page_table_free_pgste(ptdesc_page(ptdesc)); > } > > /** > @@ -1374,9 +1377,10 @@ static void gmap_unshadow_pgt(struct gmap *sg, unsigned long raddr) > static void __gmap_unshadow_sgt(struct gmap *sg, unsigned long raddr, > unsigned long *sgt) > { > - struct page *page; > phys_addr_t pgt; > int i; > + struct page *page; > + struct ptdesc *ptdesc; > > BUG_ON(!gmap_is_shadow(sg)); > for (i = 0; i < _CRST_ENTRIES; i++, raddr += _SEGMENT_SIZE) { > @@ -1387,9 +1391,11 @@ static void __gmap_unshadow_sgt(struct gmap *sg, unsigned long raddr, > __gmap_unshadow_pgt(sg, raddr, __va(pgt)); > /* Free page table */ > page = phys_to_page(pgt); > - list_del(&page->lru); > - page->_pt_s390_gaddr = 0; > - page_table_free_pgste(page); > + > + ptdesc = page_ptdesc(page); > + list_del(&ptdesc->pt_list); > + ptdesc->_pt_s390_gaddr = 0; > + page_table_free_pgste(ptdesc_page(ptdesc)); > } > } > > @@ -1405,6 +1411,7 @@ static void gmap_unshadow_sgt(struct gmap *sg, unsigned long raddr) > unsigned long r3o, *r3e; > phys_addr_t sgt; > struct page *page; > + struct ptdesc *ptdesc; > > BUG_ON(!gmap_is_shadow(sg)); > r3e = gmap_table_walk(sg, raddr, 2); /* get region-3 pointer */ > @@ -1418,9 +1425,11 @@ static void gmap_unshadow_sgt(struct gmap *sg, unsigned long raddr) > __gmap_unshadow_sgt(sg, raddr, __va(sgt)); > /* Free segment table */ > page = phys_to_page(sgt); > - list_del(&page->lru); > - page->_pt_s390_gaddr = 0; > - __free_pages(page, CRST_ALLOC_ORDER); > + > + ptdesc = page_ptdesc(page); > + list_del(&ptdesc->pt_list); > + ptdesc->_pt_s390_gaddr = 0; > + pagetable_free(ptdesc); > } > > /** > @@ -1434,9 +1443,10 @@ static void gmap_unshadow_sgt(struct gmap *sg, unsigned long raddr) > static void __gmap_unshadow_r3t(struct gmap *sg, unsigned long raddr, > unsigned long *r3t) > { > - struct page *page; > phys_addr_t sgt; > int i; > + struct page *page; > + struct ptdesc *ptdesc; > > BUG_ON(!gmap_is_shadow(sg)); > for (i = 0; i < _CRST_ENTRIES; i++, raddr += _REGION3_SIZE) { > @@ -1447,9 +1457,11 @@ static void __gmap_unshadow_r3t(struct gmap *sg, unsigned long raddr, > __gmap_unshadow_sgt(sg, raddr, __va(sgt)); > /* Free segment table */ > page = phys_to_page(sgt); > - list_del(&page->lru); > - page->_pt_s390_gaddr = 0; > - __free_pages(page, CRST_ALLOC_ORDER); > + > + ptdesc = page_ptdesc(page); > + list_del(&ptdesc->pt_list); > + ptdesc->_pt_s390_gaddr = 0; > + pagetable_free(ptdesc); > } > } > > @@ -1465,6 +1477,7 @@ static void gmap_unshadow_r3t(struct gmap *sg, unsigned long raddr) > unsigned long r2o, *r2e; > phys_addr_t r3t; > struct page *page; > + struct ptdesc *ptdesc; > > BUG_ON(!gmap_is_shadow(sg)); > r2e = gmap_table_walk(sg, raddr, 3); /* get region-2 pointer */ > @@ -1478,9 +1491,11 @@ static void gmap_unshadow_r3t(struct gmap *sg, unsigned long raddr) > __gmap_unshadow_r3t(sg, raddr, __va(r3t)); > /* Free region 3 table */ > page = phys_to_page(r3t); > - list_del(&page->lru); > - page->_pt_s390_gaddr = 0; > - __free_pages(page, CRST_ALLOC_ORDER); > + > + ptdesc = page_ptdesc(page); > + list_del(&ptdesc->pt_list); > + ptdesc->_pt_s390_gaddr = 0; > + pagetable_free(ptdesc); > } > > /** > @@ -1495,8 +1510,9 @@ static void __gmap_unshadow_r2t(struct gmap *sg, unsigned long raddr, > unsigned long *r2t) > { > phys_addr_t r3t; > - struct page *page; > int i; > + struct page *page; > + struct ptdesc *ptdesc; > > BUG_ON(!gmap_is_shadow(sg)); > for (i = 0; i < _CRST_ENTRIES; i++, raddr += _REGION2_SIZE) { > @@ -1507,9 +1523,11 @@ static void __gmap_unshadow_r2t(struct gmap *sg, unsigned long raddr, > __gmap_unshadow_r3t(sg, raddr, __va(r3t)); > /* Free region 3 table */ > page = phys_to_page(r3t); > - list_del(&page->lru); > - page->_pt_s390_gaddr = 0; > - __free_pages(page, CRST_ALLOC_ORDER); > + > + ptdesc = page_ptdesc(page); > + list_del(&ptdesc->pt_list); > + ptdesc->_pt_s390_gaddr = 0; > + pagetable_free(ptdesc); > } > } > > @@ -1525,6 +1543,7 @@ static void gmap_unshadow_r2t(struct gmap *sg, unsigned long raddr) > unsigned long r1o, *r1e; > struct page *page; > phys_addr_t r2t; > + struct ptdesc *ptdesc; > > BUG_ON(!gmap_is_shadow(sg)); > r1e = gmap_table_walk(sg, raddr, 4); /* get region-1 pointer */ > @@ -1538,9 +1557,11 @@ static void gmap_unshadow_r2t(struct gmap *sg, unsigned long raddr) > __gmap_unshadow_r2t(sg, raddr, __va(r2t)); > /* Free region 2 table */ > page = phys_to_page(r2t); > - list_del(&page->lru); > - page->_pt_s390_gaddr = 0; > - __free_pages(page, CRST_ALLOC_ORDER); > + > + ptdesc = page_ptdesc(page); > + list_del(&ptdesc->pt_list); > + ptdesc->_pt_s390_gaddr = 0; > + pagetable_free(ptdesc); > } > > /** > @@ -1558,6 +1579,7 @@ static void __gmap_unshadow_r1t(struct gmap *sg, unsigned long raddr, > struct page *page; > phys_addr_t r2t; > int i; > + struct ptdesc *ptdesc; > > BUG_ON(!gmap_is_shadow(sg)); > asce = __pa(r1t) | _ASCE_TYPE_REGION1; > @@ -1571,9 +1593,11 @@ static void __gmap_unshadow_r1t(struct gmap *sg, unsigned long raddr, > r1t[i] = _REGION1_ENTRY_EMPTY; > /* Free region 2 table */ > page = phys_to_page(r2t); > - list_del(&page->lru); > - page->_pt_s390_gaddr = 0; > - __free_pages(page, CRST_ALLOC_ORDER); > + > + ptdesc = page_ptdesc(page); > + list_del(&ptdesc->pt_list); > + ptdesc->_pt_s390_gaddr = 0; > + pagetable_free(ptdesc); > } > } > > @@ -1770,18 +1794,18 @@ int gmap_shadow_r2t(struct gmap *sg, unsigned long saddr, unsigned long r2t, > unsigned long raddr, origin, offset, len; > unsigned long *table; > phys_addr_t s_r2t; > - struct page *page; > + struct ptdesc *ptdesc; > int rc; > > BUG_ON(!gmap_is_shadow(sg)); > /* Allocate a shadow region second table */ > - page = alloc_pages(GFP_KERNEL_ACCOUNT, CRST_ALLOC_ORDER); > - if (!page) > + ptdesc = pagetable_alloc(GFP_KERNEL_ACCOUNT, CRST_ALLOC_ORDER); > + if (!ptdesc) > return -ENOMEM; > - page->_pt_s390_gaddr = r2t & _REGION_ENTRY_ORIGIN; > + ptdesc->_pt_s390_gaddr = r2t & _REGION_ENTRY_ORIGIN; > if (fake) > - page->_pt_s390_gaddr |= GMAP_SHADOW_FAKE_TABLE; > - s_r2t = page_to_phys(page); > + ptdesc->_pt_s390_gaddr |= GMAP_SHADOW_FAKE_TABLE; > + s_r2t = page_to_phys(ptdesc_page(ptdesc)); > /* Install shadow region second table */ > spin_lock(&sg->guest_table_lock); > table = gmap_table_walk(sg, saddr, 4); /* get region-1 pointer */ > @@ -1802,7 +1826,7 @@ int gmap_shadow_r2t(struct gmap *sg, unsigned long saddr, unsigned long r2t, > _REGION_ENTRY_TYPE_R1 | _REGION_ENTRY_INVALID; > if (sg->edat_level >= 1) > *table |= (r2t & _REGION_ENTRY_PROTECT); > - list_add(&page->lru, &sg->crst_list); > + list_add(&ptdesc->pt_list, &sg->crst_list); > if (fake) { > /* nothing to protect for fake tables */ > *table &= ~_REGION_ENTRY_INVALID; > @@ -1830,8 +1854,8 @@ int gmap_shadow_r2t(struct gmap *sg, unsigned long saddr, unsigned long r2t, > return rc; > out_free: > spin_unlock(&sg->guest_table_lock); > - page->_pt_s390_gaddr = 0; > - __free_pages(page, CRST_ALLOC_ORDER); > + ptdesc->_pt_s390_gaddr = 0; > + pagetable_free(ptdesc); > return rc; > } > EXPORT_SYMBOL_GPL(gmap_shadow_r2t); > @@ -1855,18 +1879,18 @@ int gmap_shadow_r3t(struct gmap *sg, unsigned long saddr, unsigned long r3t, > unsigned long raddr, origin, offset, len; > unsigned long *table; > phys_addr_t s_r3t; > - struct page *page; > + struct ptdesc *ptdesc; > int rc; > > BUG_ON(!gmap_is_shadow(sg)); > /* Allocate a shadow region second table */ > - page = alloc_pages(GFP_KERNEL_ACCOUNT, CRST_ALLOC_ORDER); > - if (!page) > + ptdesc = pagetable_alloc(GFP_KERNEL_ACCOUNT, CRST_ALLOC_ORDER); > + if (!ptdesc) > return -ENOMEM; > - page->_pt_s390_gaddr = r3t & _REGION_ENTRY_ORIGIN; > + ptdesc->_pt_s390_gaddr = r3t & _REGION_ENTRY_ORIGIN; > if (fake) > - page->_pt_s390_gaddr |= GMAP_SHADOW_FAKE_TABLE; > - s_r3t = page_to_phys(page); > + ptdesc->_pt_s390_gaddr |= GMAP_SHADOW_FAKE_TABLE; > + s_r3t = page_to_phys(ptdesc_page(ptdesc)); > /* Install shadow region second table */ > spin_lock(&sg->guest_table_lock); > table = gmap_table_walk(sg, saddr, 3); /* get region-2 pointer */ > @@ -1887,7 +1911,7 @@ int gmap_shadow_r3t(struct gmap *sg, unsigned long saddr, unsigned long r3t, > _REGION_ENTRY_TYPE_R2 | _REGION_ENTRY_INVALID; > if (sg->edat_level >= 1) > *table |= (r3t & _REGION_ENTRY_PROTECT); > - list_add(&page->lru, &sg->crst_list); > + list_add(&ptdesc->pt_list, &sg->crst_list); > if (fake) { > /* nothing to protect for fake tables */ > *table &= ~_REGION_ENTRY_INVALID; > @@ -1915,8 +1939,8 @@ int gmap_shadow_r3t(struct gmap *sg, unsigned long saddr, unsigned long r3t, > return rc; > out_free: > spin_unlock(&sg->guest_table_lock); > - page->_pt_s390_gaddr = 0; > - __free_pages(page, CRST_ALLOC_ORDER); > + ptdesc->_pt_s390_gaddr = 0; > + pagetable_free(ptdesc); > return rc; > } > EXPORT_SYMBOL_GPL(gmap_shadow_r3t); > @@ -1940,18 +1964,18 @@ int gmap_shadow_sgt(struct gmap *sg, unsigned long saddr, unsigned long sgt, > unsigned long raddr, origin, offset, len; > unsigned long *table; > phys_addr_t s_sgt; > - struct page *page; > + struct ptdesc *ptdesc; > int rc; > > BUG_ON(!gmap_is_shadow(sg) || (sgt & _REGION3_ENTRY_LARGE)); > /* Allocate a shadow segment table */ > - page = alloc_pages(GFP_KERNEL_ACCOUNT, CRST_ALLOC_ORDER); > - if (!page) > + ptdesc = pagetable_alloc(GFP_KERNEL_ACCOUNT, CRST_ALLOC_ORDER); > + if (!ptdesc) > return -ENOMEM; > - page->_pt_s390_gaddr = sgt & _REGION_ENTRY_ORIGIN; > + ptdesc->_pt_s390_gaddr = sgt & _REGION_ENTRY_ORIGIN; > if (fake) > - page->_pt_s390_gaddr |= GMAP_SHADOW_FAKE_TABLE; > - s_sgt = page_to_phys(page); > + ptdesc->_pt_s390_gaddr |= GMAP_SHADOW_FAKE_TABLE; > + s_sgt = page_to_phys(ptdesc_page(ptdesc)); > /* Install shadow region second table */ > spin_lock(&sg->guest_table_lock); > table = gmap_table_walk(sg, saddr, 2); /* get region-3 pointer */ > @@ -1972,7 +1996,7 @@ int gmap_shadow_sgt(struct gmap *sg, unsigned long saddr, unsigned long sgt, > _REGION_ENTRY_TYPE_R3 | _REGION_ENTRY_INVALID; > if (sg->edat_level >= 1) > *table |= sgt & _REGION_ENTRY_PROTECT; > - list_add(&page->lru, &sg->crst_list); > + list_add(&ptdesc->pt_list, &sg->crst_list); > if (fake) { > /* nothing to protect for fake tables */ > *table &= ~_REGION_ENTRY_INVALID; > @@ -2000,8 +2024,8 @@ int gmap_shadow_sgt(struct gmap *sg, unsigned long saddr, unsigned long sgt, > return rc; > out_free: > spin_unlock(&sg->guest_table_lock); > - page->_pt_s390_gaddr = 0; > - __free_pages(page, CRST_ALLOC_ORDER); > + ptdesc->_pt_s390_gaddr = 0; > + pagetable_free(ptdesc); > return rc; > } > EXPORT_SYMBOL_GPL(gmap_shadow_sgt); > @@ -2024,8 +2048,9 @@ int gmap_shadow_pgt_lookup(struct gmap *sg, unsigned long saddr, > int *fake) > { > unsigned long *table; > - struct page *page; > int rc; > + struct page *page; > + struct ptdesc *ptdesc; > > BUG_ON(!gmap_is_shadow(sg)); > spin_lock(&sg->guest_table_lock); > @@ -2033,9 +2058,10 @@ int gmap_shadow_pgt_lookup(struct gmap *sg, unsigned long saddr, > if (table && !(*table & _SEGMENT_ENTRY_INVALID)) { > /* Shadow page tables are full pages (pte+pgste) */ > page = pfn_to_page(*table >> PAGE_SHIFT); > - *pgt = page->_pt_s390_gaddr & ~GMAP_SHADOW_FAKE_TABLE; > + ptdesc = page_ptdesc(page); > + *pgt = ptdesc->_pt_s390_gaddr & ~GMAP_SHADOW_FAKE_TABLE; > *dat_protection = !!(*table & _SEGMENT_ENTRY_PROTECT); > - *fake = !!(page->_pt_s390_gaddr & GMAP_SHADOW_FAKE_TABLE); > + *fake = !!(ptdesc->_pt_s390_gaddr & GMAP_SHADOW_FAKE_TABLE); > rc = 0; > } else { > rc = -EAGAIN; > @@ -2064,19 +2090,19 @@ int gmap_shadow_pgt(struct gmap *sg, unsigned long saddr, unsigned long pgt, > { > unsigned long raddr, origin; > unsigned long *table; > - struct page *page; > + struct ptdesc *ptdesc; > phys_addr_t s_pgt; > int rc; > > BUG_ON(!gmap_is_shadow(sg) || (pgt & _SEGMENT_ENTRY_LARGE)); > /* Allocate a shadow page table */ > - page = page_table_alloc_pgste(sg->mm); > - if (!page) > + ptdesc = page_ptdesc(page_table_alloc_pgste(sg->mm)); > + if (!ptdesc) > return -ENOMEM; > - page->_pt_s390_gaddr = pgt & _SEGMENT_ENTRY_ORIGIN; > + ptdesc->_pt_s390_gaddr = pgt & _SEGMENT_ENTRY_ORIGIN; > if (fake) > - page->_pt_s390_gaddr |= GMAP_SHADOW_FAKE_TABLE; > - s_pgt = page_to_phys(page); > + ptdesc->_pt_s390_gaddr |= GMAP_SHADOW_FAKE_TABLE; > + s_pgt = page_to_phys(ptdesc_page(ptdesc)); > /* Install shadow page table */ > spin_lock(&sg->guest_table_lock); > table = gmap_table_walk(sg, saddr, 1); /* get segment pointer */ > @@ -2094,7 +2120,7 @@ int gmap_shadow_pgt(struct gmap *sg, unsigned long saddr, unsigned long pgt, > /* mark as invalid as long as the parent table is not protected */ > *table = (unsigned long) s_pgt | _SEGMENT_ENTRY | > (pgt & _SEGMENT_ENTRY_PROTECT) | _SEGMENT_ENTRY_INVALID; > - list_add(&page->lru, &sg->pt_list); > + list_add(&ptdesc->pt_list, &sg->pt_list); > if (fake) { > /* nothing to protect for fake tables */ > *table &= ~_SEGMENT_ENTRY_INVALID; > @@ -2120,8 +2146,8 @@ int gmap_shadow_pgt(struct gmap *sg, unsigned long saddr, unsigned long pgt, > return rc; > out_free: > spin_unlock(&sg->guest_table_lock); > - page->_pt_s390_gaddr = 0; > - page_table_free_pgste(page); > + ptdesc->_pt_s390_gaddr = 0; > + page_table_free_pgste(ptdesc_page(ptdesc)); > return rc; > > } > @@ -2814,11 +2840,11 @@ EXPORT_SYMBOL_GPL(__s390_uv_destroy_range); > */ > void s390_unlist_old_asce(struct gmap *gmap) > { > - struct page *old; > + struct ptdesc *old; > > - old = virt_to_page(gmap->table); > + old = virt_to_ptdesc(gmap->table); > spin_lock(&gmap->guest_table_lock); > - list_del(&old->lru); > + list_del(&old->pt_list); > /* > * Sometimes the topmost page might need to be "removed" multiple > * times, for example if the VM is rebooted into secure mode several > @@ -2833,7 +2859,7 @@ void s390_unlist_old_asce(struct gmap *gmap) > * pointers, so list_del can work (and do nothing) without > * dereferencing stale or invalid pointers. > */ > - INIT_LIST_HEAD(&old->lru); > + INIT_LIST_HEAD(&old->pt_list); > spin_unlock(&gmap->guest_table_lock); > } > EXPORT_SYMBOL_GPL(s390_unlist_old_asce); > @@ -2854,7 +2880,7 @@ EXPORT_SYMBOL_GPL(s390_unlist_old_asce); > int s390_replace_asce(struct gmap *gmap) > { > unsigned long asce; > - struct page *page; > + struct ptdesc *ptdesc; > void *table; > > s390_unlist_old_asce(gmap); > @@ -2863,10 +2889,10 @@ int s390_replace_asce(struct gmap *gmap) > if ((gmap->asce & _ASCE_TYPE_MASK) == _ASCE_TYPE_SEGMENT) > return -EINVAL; > > - page = alloc_pages(GFP_KERNEL_ACCOUNT, CRST_ALLOC_ORDER); > - if (!page) > + ptdesc = pagetable_alloc(GFP_KERNEL_ACCOUNT, CRST_ALLOC_ORDER); > + if (!ptdesc) > return -ENOMEM; > - table = page_to_virt(page); > + table = ptdesc_to_virt(ptdesc); > memcpy(table, gmap->table, 1UL << (CRST_ALLOC_ORDER + PAGE_SHIFT)); > > /* > @@ -2875,7 +2901,7 @@ int s390_replace_asce(struct gmap *gmap) > * it will be freed when the VM is torn down. > */ > spin_lock(&gmap->guest_table_lock); > - list_add(&page->lru, &gmap->crst_list); > + list_add(&ptdesc->pt_list, &gmap->crst_list); > spin_unlock(&gmap->guest_table_lock); > > /* Set new table origin while preserving existing ASCE control bits */ > -- > 2.40.1 > > -- Sincerely yours, Mike. From xen-devel-bounces@lists.xenproject.org Wed Jun 14 14:47:44 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 14:47:44 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548904.857122 (Exim 4.92) (envelope-from ) id 1q9RmR-0000TG-Jl; Wed, 14 Jun 2023 14:47:27 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548904.857122; Wed, 14 Jun 2023 14:47:27 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9RmR-0000T9-H7; Wed, 14 Jun 2023 14:47:27 +0000 Received: by outflank-mailman (input) for mailman id 548904; Wed, 14 Jun 2023 14:47:26 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9RmP-0000T3-V2 for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 14:47:25 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 5f33c724-0ac2-11ee-b232-6b7b168915f2; Wed, 14 Jun 2023 16:47:24 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id D618C6384C; Wed, 14 Jun 2023 14:47:22 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 9FE39C433C8; Wed, 14 Jun 2023 14:47:14 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 5f33c724-0ac2-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1686754042; bh=/gZpWG1NklUMCYwhTW6oq7VspsgUlNnjT/+p3rAcQ/o=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=igQ6RmLYycdy/LkKPCHWmgLaIprlzKWUM+53uqFbfLRJhevFg+lNjngLkfjX3mZ8R obw/6JwKlVvEQqgRKWXKxzGA2UmAQ0ncG6zqKaNVuKCaIp64O1Hywm1cGdtyt20LQw 89CIp+N0nyC60+/83Fzd1igImKYWSucwgnQcvtsO61sgrZqAYi2S0MCqJCfUk01VBV zHK4olI/Q8rGU9ZLGe0QTYX/A5QaPlEvSuXOjRl+d0dN1GmYoBFWLk2aJfd9679DSj mapYxATdAWcPn2PiwR+awo5BfU6wZVo1vhXzm4OIIT6uvFoBiNJgpsGYofeZb3FQ6j bhhVRxBTM6TAA== Date: Wed, 14 Jun 2023 17:46:43 +0300 From: Mike Rapoport To: "Vishal Moola (Oracle)" Cc: Andrew Morton , Matthew Wilcox , linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , David Hildenbrand , Claudio Imbrenda Subject: Re: [PATCH v4 17/34] s390: Convert various pgalloc functions to use ptdescs Message-ID: <20230614144643.GP52412@kernel.org> References: <20230612210423.18611-1-vishal.moola@gmail.com> <20230612210423.18611-18-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20230612210423.18611-18-vishal.moola@gmail.com> On Mon, Jun 12, 2023 at 02:04:06PM -0700, Vishal Moola (Oracle) wrote: > As part of the conversions to replace pgtable constructor/destructors with > ptdesc equivalents, convert various page table functions to use ptdescs. > > Some of the functions use the *get*page*() helper functions. Convert > these to use pagetable_alloc() and ptdesc_address() instead to help > standardize page tables further. > > Signed-off-by: Vishal Moola (Oracle) Acked-by: Mike Rapoport (IBM) > --- > arch/s390/include/asm/pgalloc.h | 4 +- > arch/s390/include/asm/tlb.h | 4 +- > arch/s390/mm/pgalloc.c | 108 ++++++++++++++++---------------- > 3 files changed, 59 insertions(+), 57 deletions(-) > > diff --git a/arch/s390/include/asm/pgalloc.h b/arch/s390/include/asm/pgalloc.h > index 17eb618f1348..00ad9b88fda9 100644 > --- a/arch/s390/include/asm/pgalloc.h > +++ b/arch/s390/include/asm/pgalloc.h > @@ -86,7 +86,7 @@ static inline pmd_t *pmd_alloc_one(struct mm_struct *mm, unsigned long vmaddr) > if (!table) > return NULL; > crst_table_init(table, _SEGMENT_ENTRY_EMPTY); > - if (!pgtable_pmd_page_ctor(virt_to_page(table))) { > + if (!pagetable_pmd_ctor(virt_to_ptdesc(table))) { > crst_table_free(mm, table); > return NULL; > } > @@ -97,7 +97,7 @@ static inline void pmd_free(struct mm_struct *mm, pmd_t *pmd) > { > if (mm_pmd_folded(mm)) > return; > - pgtable_pmd_page_dtor(virt_to_page(pmd)); > + pagetable_pmd_dtor(virt_to_ptdesc(pmd)); > crst_table_free(mm, (unsigned long *) pmd); > } > > diff --git a/arch/s390/include/asm/tlb.h b/arch/s390/include/asm/tlb.h > index b91f4a9b044c..383b1f91442c 100644 > --- a/arch/s390/include/asm/tlb.h > +++ b/arch/s390/include/asm/tlb.h > @@ -89,12 +89,12 @@ static inline void pmd_free_tlb(struct mmu_gather *tlb, pmd_t *pmd, > { > if (mm_pmd_folded(tlb->mm)) > return; > - pgtable_pmd_page_dtor(virt_to_page(pmd)); > + pagetable_pmd_dtor(virt_to_ptdesc(pmd)); > __tlb_adjust_range(tlb, address, PAGE_SIZE); > tlb->mm->context.flush_mm = 1; > tlb->freed_tables = 1; > tlb->cleared_puds = 1; > - tlb_remove_table(tlb, pmd); > + tlb_remove_ptdesc(tlb, pmd); > } > > /* > diff --git a/arch/s390/mm/pgalloc.c b/arch/s390/mm/pgalloc.c > index 6b99932abc66..eeb7c95b98cf 100644 > --- a/arch/s390/mm/pgalloc.c > +++ b/arch/s390/mm/pgalloc.c > @@ -43,17 +43,17 @@ __initcall(page_table_register_sysctl); > > unsigned long *crst_table_alloc(struct mm_struct *mm) > { > - struct page *page = alloc_pages(GFP_KERNEL, CRST_ALLOC_ORDER); > + struct ptdesc *ptdesc = pagetable_alloc(GFP_KERNEL, CRST_ALLOC_ORDER); > > - if (!page) > + if (!ptdesc) > return NULL; > - arch_set_page_dat(page, CRST_ALLOC_ORDER); > - return (unsigned long *) page_to_virt(page); > + arch_set_page_dat(ptdesc_page(ptdesc), CRST_ALLOC_ORDER); > + return (unsigned long *) ptdesc_to_virt(ptdesc); > } > > void crst_table_free(struct mm_struct *mm, unsigned long *table) > { > - free_pages((unsigned long)table, CRST_ALLOC_ORDER); > + pagetable_free(virt_to_ptdesc(table)); > } > > static void __crst_table_upgrade(void *arg) > @@ -140,21 +140,21 @@ static inline unsigned int atomic_xor_bits(atomic_t *v, unsigned int bits) > > struct page *page_table_alloc_pgste(struct mm_struct *mm) > { > - struct page *page; > + struct ptdesc *ptdesc; > u64 *table; > > - page = alloc_page(GFP_KERNEL); > - if (page) { > - table = (u64 *)page_to_virt(page); > + ptdesc = pagetable_alloc(GFP_KERNEL, 0); > + if (ptdesc) { > + table = (u64 *)ptdesc_to_virt(ptdesc); > memset64(table, _PAGE_INVALID, PTRS_PER_PTE); > memset64(table + PTRS_PER_PTE, 0, PTRS_PER_PTE); > } > - return page; > + return ptdesc_page(ptdesc); > } > > void page_table_free_pgste(struct page *page) > { > - __free_page(page); > + pagetable_free(page_ptdesc(page)); > } > > #endif /* CONFIG_PGSTE */ > @@ -230,7 +230,7 @@ void page_table_free_pgste(struct page *page) > unsigned long *page_table_alloc(struct mm_struct *mm) > { > unsigned long *table; > - struct page *page; > + struct ptdesc *ptdesc; > unsigned int mask, bit; > > /* Try to get a fragment of a 4K page as a 2K page table */ > @@ -238,9 +238,9 @@ unsigned long *page_table_alloc(struct mm_struct *mm) > table = NULL; > spin_lock_bh(&mm->context.lock); > if (!list_empty(&mm->context.pgtable_list)) { > - page = list_first_entry(&mm->context.pgtable_list, > - struct page, lru); > - mask = atomic_read(&page->pt_frag_refcount); > + ptdesc = list_first_entry(&mm->context.pgtable_list, > + struct ptdesc, pt_list); > + mask = atomic_read(&ptdesc->pt_frag_refcount); > /* > * The pending removal bits must also be checked. > * Failure to do so might lead to an impossible > @@ -253,13 +253,13 @@ unsigned long *page_table_alloc(struct mm_struct *mm) > */ > mask = (mask | (mask >> 4)) & 0x03U; > if (mask != 0x03U) { > - table = (unsigned long *) page_to_virt(page); > + table = (unsigned long *) ptdesc_to_virt(ptdesc); > bit = mask & 1; /* =1 -> second 2K */ > if (bit) > table += PTRS_PER_PTE; > - atomic_xor_bits(&page->pt_frag_refcount, > + atomic_xor_bits(&ptdesc->pt_frag_refcount, > 0x01U << bit); > - list_del(&page->lru); > + list_del(&ptdesc->pt_list); > } > } > spin_unlock_bh(&mm->context.lock); > @@ -267,27 +267,27 @@ unsigned long *page_table_alloc(struct mm_struct *mm) > return table; > } > /* Allocate a fresh page */ > - page = alloc_page(GFP_KERNEL); > - if (!page) > + ptdesc = pagetable_alloc(GFP_KERNEL, 0); > + if (!ptdesc) > return NULL; > - if (!pgtable_pte_page_ctor(page)) { > - __free_page(page); > + if (!pagetable_pte_ctor(ptdesc)) { > + pagetable_free(ptdesc); > return NULL; > } > - arch_set_page_dat(page, 0); > + arch_set_page_dat(ptdesc_page(ptdesc), 0); > /* Initialize page table */ > - table = (unsigned long *) page_to_virt(page); > + table = (unsigned long *) ptdesc_to_virt(ptdesc); > if (mm_alloc_pgste(mm)) { > /* Return 4K page table with PGSTEs */ > - atomic_xor_bits(&page->pt_frag_refcount, 0x03U); > + atomic_xor_bits(&ptdesc->pt_frag_refcount, 0x03U); > memset64((u64 *)table, _PAGE_INVALID, PTRS_PER_PTE); > memset64((u64 *)table + PTRS_PER_PTE, 0, PTRS_PER_PTE); > } else { > /* Return the first 2K fragment of the page */ > - atomic_xor_bits(&page->pt_frag_refcount, 0x01U); > + atomic_xor_bits(&ptdesc->pt_frag_refcount, 0x01U); > memset64((u64 *)table, _PAGE_INVALID, 2 * PTRS_PER_PTE); > spin_lock_bh(&mm->context.lock); > - list_add(&page->lru, &mm->context.pgtable_list); > + list_add(&ptdesc->pt_list, &mm->context.pgtable_list); > spin_unlock_bh(&mm->context.lock); > } > return table; > @@ -309,9 +309,8 @@ static void page_table_release_check(struct page *page, void *table, > void page_table_free(struct mm_struct *mm, unsigned long *table) > { > unsigned int mask, bit, half; > - struct page *page; > + struct ptdesc *ptdesc = virt_to_ptdesc(table); > > - page = virt_to_page(table); > if (!mm_alloc_pgste(mm)) { > /* Free 2K page table fragment of a 4K page */ > bit = ((unsigned long) table & ~PAGE_MASK)/(PTRS_PER_PTE*sizeof(pte_t)); > @@ -321,39 +320,38 @@ void page_table_free(struct mm_struct *mm, unsigned long *table) > * will happen outside of the critical section from this > * function or from __tlb_remove_table() > */ > - mask = atomic_xor_bits(&page->pt_frag_refcount, 0x11U << bit); > + mask = atomic_xor_bits(&ptdesc->pt_frag_refcount, 0x11U << bit); > if (mask & 0x03U) > - list_add(&page->lru, &mm->context.pgtable_list); > + list_add(&ptdesc->pt_list, &mm->context.pgtable_list); > else > - list_del(&page->lru); > + list_del(&ptdesc->pt_list); > spin_unlock_bh(&mm->context.lock); > - mask = atomic_xor_bits(&page->pt_frag_refcount, 0x10U << bit); > + mask = atomic_xor_bits(&ptdesc->pt_frag_refcount, 0x10U << bit); > if (mask != 0x00U) > return; > half = 0x01U << bit; > } else { > half = 0x03U; > - mask = atomic_xor_bits(&page->pt_frag_refcount, 0x03U); > + mask = atomic_xor_bits(&ptdesc->pt_frag_refcount, 0x03U); > } > > - page_table_release_check(page, table, half, mask); > - pgtable_pte_page_dtor(page); > - __free_page(page); > + page_table_release_check(ptdesc_page(ptdesc), table, half, mask); > + pagetable_pte_dtor(ptdesc); > + pagetable_free(ptdesc); > } > > void page_table_free_rcu(struct mmu_gather *tlb, unsigned long *table, > unsigned long vmaddr) > { > struct mm_struct *mm; > - struct page *page; > unsigned int bit, mask; > + struct ptdesc *ptdesc = virt_to_ptdesc(table); > > mm = tlb->mm; > - page = virt_to_page(table); > if (mm_alloc_pgste(mm)) { > gmap_unlink(mm, table, vmaddr); > table = (unsigned long *) ((unsigned long)table | 0x03U); > - tlb_remove_table(tlb, table); > + tlb_remove_ptdesc(tlb, table); > return; > } > bit = ((unsigned long) table & ~PAGE_MASK) / (PTRS_PER_PTE*sizeof(pte_t)); > @@ -363,11 +361,11 @@ void page_table_free_rcu(struct mmu_gather *tlb, unsigned long *table, > * outside of the critical section from __tlb_remove_table() or from > * page_table_free() > */ > - mask = atomic_xor_bits(&page->pt_frag_refcount, 0x11U << bit); > + mask = atomic_xor_bits(&ptdesc->pt_frag_refcount, 0x11U << bit); > if (mask & 0x03U) > - list_add_tail(&page->lru, &mm->context.pgtable_list); > + list_add_tail(&ptdesc->pt_list, &mm->context.pgtable_list); > else > - list_del(&page->lru); > + list_del(&ptdesc->pt_list); > spin_unlock_bh(&mm->context.lock); > table = (unsigned long *) ((unsigned long) table | (0x01U << bit)); > tlb_remove_table(tlb, table); > @@ -377,7 +375,7 @@ void __tlb_remove_table(void *_table) > { > unsigned int mask = (unsigned long) _table & 0x03U, half = mask; > void *table = (void *)((unsigned long) _table ^ mask); > - struct page *page = virt_to_page(table); > + struct ptdesc *ptdesc = virt_to_ptdesc(table); > > switch (half) { > case 0x00U: /* pmd, pud, or p4d */ > @@ -385,18 +383,18 @@ void __tlb_remove_table(void *_table) > return; > case 0x01U: /* lower 2K of a 4K page table */ > case 0x02U: /* higher 2K of a 4K page table */ > - mask = atomic_xor_bits(&page->pt_frag_refcount, mask << 4); > + mask = atomic_xor_bits(&ptdesc->pt_frag_refcount, mask << 4); > if (mask != 0x00U) > return; > break; > case 0x03U: /* 4K page table with pgstes */ > - mask = atomic_xor_bits(&page->pt_frag_refcount, 0x03U); > + mask = atomic_xor_bits(&ptdesc->pt_frag_refcount, 0x03U); > break; > } > > - page_table_release_check(page, table, half, mask); > - pgtable_pte_page_dtor(page); > - __free_page(page); > + page_table_release_check(ptdesc_page(ptdesc), table, half, mask); > + pagetable_pte_dtor(ptdesc); > + pagetable_free(ptdesc); > } > > /* > @@ -424,16 +422,20 @@ static void base_pgt_free(unsigned long *table) > static unsigned long *base_crst_alloc(unsigned long val) > { > unsigned long *table; > + struct ptdesc *ptdesc; > > - table = (unsigned long *)__get_free_pages(GFP_KERNEL, CRST_ALLOC_ORDER); > - if (table) > - crst_table_init(table, val); > + ptdesc = pagetable_alloc(GFP_KERNEL, CRST_ALLOC_ORDER); > + if (!ptdesc) > + return NULL; > + table = ptdesc_address(ptdesc); > + > + crst_table_init(table, val); > return table; > } > > static void base_crst_free(unsigned long *table) > { > - free_pages((unsigned long)table, CRST_ALLOC_ORDER); > + pagetable_free(virt_to_ptdesc(table)); > } > > #define BASE_ADDR_END_FUNC(NAME, SIZE) \ > -- > 2.40.1 > > -- Sincerely yours, Mike. From xen-devel-bounces@lists.xenproject.org Wed Jun 14 14:54:21 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 14:54:21 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548911.857132 (Exim 4.92) (envelope-from ) id 1q9Rsx-000204-Da; Wed, 14 Jun 2023 14:54:11 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548911.857132; Wed, 14 Jun 2023 14:54:11 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9Rsx-0001zx-Aw; Wed, 14 Jun 2023 14:54:11 +0000 Received: by outflank-mailman (input) for mailman id 548911; Wed, 14 Jun 2023 14:54:10 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9Rsw-0001zr-GG for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 14:54:10 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [2604:1380:4641:c500::1]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 4ff21cf7-0ac3-11ee-8611-37d641c3527e; Wed, 14 Jun 2023 16:54:08 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 7B66B64337; Wed, 14 Jun 2023 14:54:06 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id B2F20C433C0; Wed, 14 Jun 2023 14:53:59 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 4ff21cf7-0ac3-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1686754446; bh=aUxoRMWQndKzGf4Pu7KWMeOI/WoSZl9BaSxpwilOg7U=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=jZwYpBVV3Znjt/2r1/XmhShCVNutgqeq3trQicfEgjJSgiA24WGgfoHn4JPicd8He rS8NLkit65oXPztWCIk1plc/L0WWZ1stJCGO0xc9wMl4POqoTrOZPublJSijHPF4oz YlEcjE5Kwe8W73hiYvKQSbG68Y5Kyn6lFrlJJDjGKeMTC6UZAwh79rs3bU7nluQGBU tiS60ivJdA1OXEq/xKwuvgxelAM+i8GtKwUxe5gT00CZzdwQsaCSrG5/5u9c1vIGyV elULRRCAhePhL/Al9xGEtorsHTDGauC6YCgaYOxRHSZ2eYhHw9pEXNQZFB7ZzH7n03 HSw2Jfv0l97fA== Date: Wed, 14 Jun 2023 17:53:28 +0300 From: Mike Rapoport To: "Vishal Moola (Oracle)" Cc: Andrew Morton , Matthew Wilcox , linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins Subject: Re: [PATCH v4 18/34] mm: Remove page table members from struct page Message-ID: <20230614145328.GQ52412@kernel.org> References: <20230612210423.18611-1-vishal.moola@gmail.com> <20230612210423.18611-19-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20230612210423.18611-19-vishal.moola@gmail.com> On Mon, Jun 12, 2023 at 02:04:07PM -0700, Vishal Moola (Oracle) wrote: > The page table members are now split out into their own ptdesc struct. > Remove them from struct page. > > Signed-off-by: Vishal Moola (Oracle) Acked-by: Mike Rapoport (IBM) > --- > include/linux/mm_types.h | 14 -------------- > include/linux/pgtable.h | 3 --- > 2 files changed, 17 deletions(-) > > diff --git a/include/linux/mm_types.h b/include/linux/mm_types.h > index 6161fe1ae5b8..31ffa1be21d0 100644 > --- a/include/linux/mm_types.h > +++ b/include/linux/mm_types.h > @@ -141,20 +141,6 @@ struct page { > struct { /* Tail pages of compound page */ > unsigned long compound_head; /* Bit zero is set */ > }; > - struct { /* Page table pages */ > - unsigned long _pt_pad_1; /* compound_head */ > - pgtable_t pmd_huge_pte; /* protected by page->ptl */ > - unsigned long _pt_s390_gaddr; /* mapping */ > - union { > - struct mm_struct *pt_mm; /* x86 pgds only */ > - atomic_t pt_frag_refcount; /* powerpc */ > - }; > -#if ALLOC_SPLIT_PTLOCKS > - spinlock_t *ptl; > -#else > - spinlock_t ptl; > -#endif > - }; > struct { /* ZONE_DEVICE pages */ > /** @pgmap: Points to the hosting device page map. */ > struct dev_pagemap *pgmap; > diff --git a/include/linux/pgtable.h b/include/linux/pgtable.h > index c405f74d3875..33cc19d752b3 100644 > --- a/include/linux/pgtable.h > +++ b/include/linux/pgtable.h > @@ -1019,10 +1019,7 @@ struct ptdesc { > TABLE_MATCH(flags, __page_flags); > TABLE_MATCH(compound_head, pt_list); > TABLE_MATCH(compound_head, _pt_pad_1); > -TABLE_MATCH(pmd_huge_pte, pmd_huge_pte); > TABLE_MATCH(mapping, _pt_s390_gaddr); > -TABLE_MATCH(pt_mm, pt_mm); > -TABLE_MATCH(ptl, ptl); > #undef TABLE_MATCH > static_assert(sizeof(struct ptdesc) <= sizeof(struct page)); > > -- > 2.40.1 > > -- Sincerely yours, Mike. From xen-devel-bounces@lists.xenproject.org Wed Jun 14 15:00:05 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 15:00:05 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548916.857142 (Exim 4.92) (envelope-from ) id 1q9Rya-0002cp-2d; Wed, 14 Jun 2023 15:00:00 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548916.857142; Wed, 14 Jun 2023 15:00:00 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9RyZ-0002ci-Ul; Wed, 14 Jun 2023 14:59:59 +0000 Received: by outflank-mailman (input) for mailman id 548916; Wed, 14 Jun 2023 14:59:58 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9RyY-0002cc-Ly for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 14:59:58 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 200161cd-0ac4-11ee-b232-6b7b168915f2; Wed, 14 Jun 2023 16:59:57 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id CE70D63CDA; Wed, 14 Jun 2023 14:59:55 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 4CD37C433C8; Wed, 14 Jun 2023 14:59:47 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 200161cd-0ac4-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1686754795; bh=Snf0vvy1ZfRMDrG2QV2GY/XXoVVQULhRbHTUN6/ozYs=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=Yb6roLWgU1FpArbgMhm3suW779Jdabd7l+H7dMd2zBGyrh0BOeY5wtdMql6biURZl v4iwBz/HuCXVMtg61KO5mBWTrhq69oDtUrOThilHfsnE8uTE2ZygL8lFanhWvJUrqE vMcJQ9egXs+J1/HmerJQneWZPIb7WwKm6eCArSImVwb+BZcAaye0RccD/lcNjLTILt TGcYSdafz5ds7jjw5qQKCC3YeIHWy3SRi7PvyD5uV8jIRQEF+KcbULtCXAQiLGBilE AxzTGwTNCf+5ligff90SIYQR5ysfy1RO+UiN0WBtTnV4rm3ThxZVJb9CHZkUcTgAgY VSYQ3btc5Uccg== Date: Wed, 14 Jun 2023 17:59:17 +0300 From: Mike Rapoport To: "Vishal Moola (Oracle)" Cc: Andrew Morton , Matthew Wilcox , linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins Subject: Re: [PATCH v4 19/34] pgalloc: Convert various functions to use ptdescs Message-ID: <20230614145917.GR52412@kernel.org> References: <20230612210423.18611-1-vishal.moola@gmail.com> <20230612210423.18611-20-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20230612210423.18611-20-vishal.moola@gmail.com> On Mon, Jun 12, 2023 at 02:04:08PM -0700, Vishal Moola (Oracle) wrote: > As part of the conversions to replace pgtable constructor/destructors with > ptdesc equivalents, convert various page table functions to use ptdescs. > > Some of the functions use the *get*page*() helper functions. Convert > these to use pagetable_alloc() and ptdesc_address() instead to help > standardize page tables further. > > Signed-off-by: Vishal Moola (Oracle) > --- > include/asm-generic/pgalloc.h | 62 +++++++++++++++++++++-------------- > 1 file changed, 37 insertions(+), 25 deletions(-) > > diff --git a/include/asm-generic/pgalloc.h b/include/asm-generic/pgalloc.h > index a7cf825befae..3fd6ce79e654 100644 > --- a/include/asm-generic/pgalloc.h > +++ b/include/asm-generic/pgalloc.h > @@ -18,7 +18,11 @@ > */ > static inline pte_t *__pte_alloc_one_kernel(struct mm_struct *mm) > { > - return (pte_t *)__get_free_page(GFP_PGTABLE_KERNEL); > + struct ptdesc *ptdesc = pagetable_alloc(GFP_PGTABLE_KERNEL, 0); > + > + if (!ptdesc) > + return NULL; > + return ptdesc_address(ptdesc); > } > > #ifndef __HAVE_ARCH_PTE_ALLOC_ONE_KERNEL > @@ -41,7 +45,7 @@ static inline pte_t *pte_alloc_one_kernel(struct mm_struct *mm) > */ > static inline void pte_free_kernel(struct mm_struct *mm, pte_t *pte) > { > - free_page((unsigned long)pte); > + pagetable_free(virt_to_ptdesc(pte)); > } > > /** > @@ -49,7 +53,7 @@ static inline void pte_free_kernel(struct mm_struct *mm, pte_t *pte) > * @mm: the mm_struct of the current context > * @gfp: GFP flags to use for the allocation > * > - * Allocates a page and runs the pgtable_pte_page_ctor(). > + * Allocates a ptdesc and runs the pagetable_pte_ctor(). Allocates memory for page table and ptdesc > * > * This function is intended for architectures that need > * anything beyond simple page allocation or must have custom GFP flags. The Return: description here should be fixed up > @@ -58,17 +62,17 @@ static inline void pte_free_kernel(struct mm_struct *mm, pte_t *pte) > */ > static inline pgtable_t __pte_alloc_one(struct mm_struct *mm, gfp_t gfp) > { > - struct page *pte; > + struct ptdesc *ptdesc; > > - pte = alloc_page(gfp); > - if (!pte) > + ptdesc = pagetable_alloc(gfp, 0); > + if (!ptdesc) > return NULL; > - if (!pgtable_pte_page_ctor(pte)) { > - __free_page(pte); > + if (!pagetable_pte_ctor(ptdesc)) { > + pagetable_free(ptdesc); > return NULL; > } > > - return pte; > + return ptdesc_page(ptdesc); > } > > #ifndef __HAVE_ARCH_PTE_ALLOC_ONE > @@ -76,7 +80,7 @@ static inline pgtable_t __pte_alloc_one(struct mm_struct *mm, gfp_t gfp) > * pte_alloc_one - allocate a page for PTE-level user page table > * @mm: the mm_struct of the current context > * > - * Allocates a page and runs the pgtable_pte_page_ctor(). > + * Allocates a ptdesc and runs the pagetable_pte_ctor(). Allocates memory for page table and ptdesc > * > * Return: `struct page` initialized as page table or %NULL on error Return: ptdesc ... > */ > @@ -98,8 +102,10 @@ static inline pgtable_t pte_alloc_one(struct mm_struct *mm) > */ > static inline void pte_free(struct mm_struct *mm, struct page *pte_page) > { > - pgtable_pte_page_dtor(pte_page); > - __free_page(pte_page); > + struct ptdesc *ptdesc = page_ptdesc(pte_page); > + > + pagetable_pte_dtor(ptdesc); > + pagetable_free(ptdesc); > } > > > @@ -110,7 +116,7 @@ static inline void pte_free(struct mm_struct *mm, struct page *pte_page) > * pmd_alloc_one - allocate a page for PMD-level page table > * @mm: the mm_struct of the current context > * > - * Allocates a page and runs the pgtable_pmd_page_ctor(). > + * Allocates a ptdesc and runs the pagetable_pmd_ctor(). Allocate memory for page table and ptdesc > * Allocations use %GFP_PGTABLE_USER in user context and > * %GFP_PGTABLE_KERNEL in kernel context. > * > @@ -118,28 +124,30 @@ static inline void pte_free(struct mm_struct *mm, struct page *pte_page) > */ > static inline pmd_t *pmd_alloc_one(struct mm_struct *mm, unsigned long addr) > { > - struct page *page; > + struct ptdesc *ptdesc; > gfp_t gfp = GFP_PGTABLE_USER; > > if (mm == &init_mm) > gfp = GFP_PGTABLE_KERNEL; > - page = alloc_page(gfp); > - if (!page) > + ptdesc = pagetable_alloc(gfp, 0); > + if (!ptdesc) > return NULL; > - if (!pgtable_pmd_page_ctor(page)) { > - __free_page(page); > + if (!pagetable_pmd_ctor(ptdesc)) { > + pagetable_free(ptdesc); > return NULL; > } > - return (pmd_t *)page_address(page); > + return ptdesc_address(ptdesc); > } > #endif > > #ifndef __HAVE_ARCH_PMD_FREE > static inline void pmd_free(struct mm_struct *mm, pmd_t *pmd) > { > + struct ptdesc *ptdesc = virt_to_ptdesc(pmd); > + > BUG_ON((unsigned long)pmd & (PAGE_SIZE-1)); > - pgtable_pmd_page_dtor(virt_to_page(pmd)); > - free_page((unsigned long)pmd); > + pagetable_pmd_dtor(ptdesc); > + pagetable_free(ptdesc); > } > #endif > > @@ -149,11 +157,15 @@ static inline void pmd_free(struct mm_struct *mm, pmd_t *pmd) > > static inline pud_t *__pud_alloc_one(struct mm_struct *mm, unsigned long addr) > { > - gfp_t gfp = GFP_PGTABLE_USER; > + gfp_t gfp = GFP_PGTABLE_USER | __GFP_ZERO; GFP_PGTABLE_USER already contains __GFP_ZERO > + struct ptdesc *ptdesc; > > if (mm == &init_mm) > gfp = GFP_PGTABLE_KERNEL; > - return (pud_t *)get_zeroed_page(gfp); > + ptdesc = pagetable_alloc(gfp, 0); > + if (!ptdesc) > + return NULL; > + return ptdesc_address(ptdesc); > } > > #ifndef __HAVE_ARCH_PUD_ALLOC_ONE > @@ -175,7 +187,7 @@ static inline pud_t *pud_alloc_one(struct mm_struct *mm, unsigned long addr) > static inline void __pud_free(struct mm_struct *mm, pud_t *pud) > { > BUG_ON((unsigned long)pud & (PAGE_SIZE-1)); > - free_page((unsigned long)pud); > + pagetable_free(virt_to_ptdesc(pud)); > } > > #ifndef __HAVE_ARCH_PUD_FREE > @@ -190,7 +202,7 @@ static inline void pud_free(struct mm_struct *mm, pud_t *pud) > #ifndef __HAVE_ARCH_PGD_FREE > static inline void pgd_free(struct mm_struct *mm, pgd_t *pgd) > { > - free_page((unsigned long)pgd); > + pagetable_free(virt_to_ptdesc(pgd)); > } > #endif > > -- > 2.40.1 > > -- Sincerely yours, Mike. From xen-devel-bounces@lists.xenproject.org Wed Jun 14 15:04:22 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 15:04:22 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548921.857152 (Exim 4.92) (envelope-from ) id 1q9S2c-00044o-Gr; Wed, 14 Jun 2023 15:04:10 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548921.857152; Wed, 14 Jun 2023 15:04:10 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9S2c-00044h-Dd; Wed, 14 Jun 2023 15:04:10 +0000 Received: by outflank-mailman (input) for mailman id 548921; Wed, 14 Jun 2023 15:04:09 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9S2b-00044Z-DX for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 15:04:09 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id b51475dc-0ac4-11ee-8611-37d641c3527e; Wed, 14 Jun 2023 17:04:07 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id F175B60B85; Wed, 14 Jun 2023 15:04:05 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 5B074C433C9; Wed, 14 Jun 2023 15:03:58 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: b51475dc-0ac4-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1686755045; bh=9A+PDe1vPCUMDrQYdu5z8EQPSeOjm0q+6tl+clXFAfM=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=j5Ugc1koC28gH2KkEPLkPoTIPNK11ApEJ+qx3mv6eyx57zInMns1iK9e2ZeYWZtaS d6VTROxAYi4QnXIkn3k8NB95BIGVtq/48gNq3/0I/WMA49BRIKydm5cPzbMITNJFuZ ukIwVNbIGFF0ylO7WubZ38JabSGFDmsGB/tgUH9+2GD4DtHbeAr300i11RRFVklrjO zXwlgRZnQv07KKoC7y7mb9Y81PZOH2N9ueNVcmIy2/IhSmwSzwFpOrdGsiFw0fBA3k Xwkm0A1j+e4mOhYVoVB8lslu0VNwTEUQ6zk7ZxZcwqL0ZAjNIDJH5uFFjVn0dxTv++ vvViLh1xvoRTQ== Date: Wed, 14 Jun 2023 18:03:27 +0300 From: Mike Rapoport To: "Vishal Moola (Oracle)" Cc: Andrew Morton , Matthew Wilcox , linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , Catalin Marinas Subject: Re: [PATCH v4 20/34] arm: Convert various functions to use ptdescs Message-ID: <20230614150327.GS52412@kernel.org> References: <20230612210423.18611-1-vishal.moola@gmail.com> <20230612210423.18611-21-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20230612210423.18611-21-vishal.moola@gmail.com> On Mon, Jun 12, 2023 at 02:04:09PM -0700, Vishal Moola (Oracle) wrote: > As part of the conversions to replace pgtable constructor/destructors with > ptdesc equivalents, convert various page table functions to use ptdescs. > > late_alloc() also uses the __get_free_pages() helper function. Convert > this to use pagetable_alloc() and ptdesc_address() instead to help > standardize page tables further. > > Signed-off-by: Vishal Moola (Oracle) Acked-by: Mike Rapoport (IBM) One comment below. > --- > arch/arm/include/asm/tlb.h | 12 +++++++----- > arch/arm/mm/mmu.c | 6 +++--- > 2 files changed, 10 insertions(+), 8 deletions(-) > > diff --git a/arch/arm/include/asm/tlb.h b/arch/arm/include/asm/tlb.h > index b8cbe03ad260..f40d06ad5d2a 100644 > --- a/arch/arm/include/asm/tlb.h > +++ b/arch/arm/include/asm/tlb.h > @@ -39,7 +39,9 @@ static inline void __tlb_remove_table(void *_table) > static inline void > __pte_free_tlb(struct mmu_gather *tlb, pgtable_t pte, unsigned long addr) > { > - pgtable_pte_page_dtor(pte); > + struct ptdesc *ptdesc = page_ptdesc(pte); > + > + pagetable_pte_dtor(ptdesc); > > #ifndef CONFIG_ARM_LPAE > /* > @@ -50,17 +52,17 @@ __pte_free_tlb(struct mmu_gather *tlb, pgtable_t pte, unsigned long addr) > __tlb_adjust_range(tlb, addr - PAGE_SIZE, 2 * PAGE_SIZE); > #endif > > - tlb_remove_table(tlb, pte); > + tlb_remove_ptdesc(tlb, ptdesc); > } > > static inline void > __pmd_free_tlb(struct mmu_gather *tlb, pmd_t *pmdp, unsigned long addr) > { > #ifdef CONFIG_ARM_LPAE > - struct page *page = virt_to_page(pmdp); > + struct ptdesc *ptdesc = virt_to_ptdesc(pmdp); > > - pgtable_pmd_page_dtor(page); > - tlb_remove_table(tlb, page); > + pagetable_pmd_dtor(ptdesc); > + tlb_remove_ptdesc(tlb, ptdesc); > #endif > } > > diff --git a/arch/arm/mm/mmu.c b/arch/arm/mm/mmu.c > index 22292cf3381c..294518fd0240 100644 > --- a/arch/arm/mm/mmu.c > +++ b/arch/arm/mm/mmu.c > @@ -737,11 +737,11 @@ static void __init *early_alloc(unsigned long sz) > > static void *__init late_alloc(unsigned long sz) > { > - void *ptr = (void *)__get_free_pages(GFP_PGTABLE_KERNEL, get_order(sz)); > + void *ptdesc = pagetable_alloc(GFP_PGTABLE_KERNEL, get_order(sz)); > > - if (!ptr || !pgtable_pte_page_ctor(virt_to_page(ptr))) > + if (!ptdesc || !pagetable_pte_ctor(ptdesc)) > BUG(); > - return ptr; > + return ptdesc; should be return ptdesc_to_virt(ptdesc); > } > > static pte_t * __init arm_pte_alloc(pmd_t *pmd, unsigned long addr, > -- > 2.40.1 > > -- Sincerely yours, Mike. From xen-devel-bounces@lists.xenproject.org Wed Jun 14 15:05:41 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 15:05:41 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548926.857162 (Exim 4.92) (envelope-from ) id 1q9S3q-0004dL-QV; Wed, 14 Jun 2023 15:05:26 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548926.857162; Wed, 14 Jun 2023 15:05:26 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9S3q-0004dC-No; Wed, 14 Jun 2023 15:05:26 +0000 Received: by outflank-mailman (input) for mailman id 548926; Wed, 14 Jun 2023 15:05:25 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9S3p-0004d1-C0 for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 15:05:25 +0000 Received: from EUR04-VI1-obe.outbound.protection.outlook.com (mail-vi1eur04on061d.outbound.protection.outlook.com [2a01:111:f400:fe0e::61d]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id e2c81e20-0ac4-11ee-8611-37d641c3527e; Wed, 14 Jun 2023 17:05:23 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by AM9PR04MB8506.eurprd04.prod.outlook.com (2603:10a6:20b:431::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.37; Wed, 14 Jun 2023 15:05:19 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.039; Wed, 14 Jun 2023 15:05:19 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: e2c81e20-0ac4-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=cBh75qghp+5CWCBmv0xt6Psy4vsw3xe2pJSRPuAH1rVGV1JD/JNOQLRvxMMzutTer/puPjROKgstdZmrUvnE9uHCqzbgfrpawujMBLqDaIJE4YfMYsFb3fqppxEzHx+5LFRRXiHWshnveZD1mC3e8ip1mOeEAb5wH1yq06QbEf0esK7fLraayawu1T5uzsiuiDXkPR+OOcYLWoRYWpmpxIezQ72bhmkVulYa5gubIshpkgeXf11VLm0ZuelRD3/tkEDrG3Trbbm01nOrMKeOTAezqtlqPiYrrC1HcJXr9kQWbXOy4vefBmTKzj9/QBoBllXb1MCSZp5g5GJbXIbKYQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=LY0fDI1COrRAPItFK+DtKq5z44jVdpW5FeMRvsr/wGY=; b=ag881cgLObosxLOZIB+We69bNjkZB5yH9hSFVpu3oa/jdGQxsx+kIFogTmseTXoNHWsw0LJUcP3IeSLgaIMeVl/nuNJlJ/zRhP+Nf0XnZ5FIvW+6efI5ubnzdxtHIEEJDISDKv6SJvjoitjz567P/gHSHNWUuLwA3lawFDyKCm5UuNr8V8W8M/MxRaI215fLLAOEFmNi9du4LfdHvZr5neBdbea2E5xRTYJghXTfG4PO1zGFFwn+xJKB898f/fYjKr6ym4MxT6syrV4ZmFoVfxR0b21W3qw4BxRazAYYowLVlwOt2RIiYnpTcZNdNBQKW0KiHv0kdmo6B5oEQ1rbVA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=LY0fDI1COrRAPItFK+DtKq5z44jVdpW5FeMRvsr/wGY=; b=KYMXA143jQTiL1LDw1oAr6iNos79eTBOoVzpS/mvLWci78j15tveigYw58u3mN2qi7zI35ffEsPYK5Sei11WLALvNCwo/tGwCUsAtMOEt72ZvwQXYS0U8B9MRkS7/Fokpuv/awF3xOn8Lonnm38wjpbYK7Lw2Q4FuiA0BO7boeKdOxlkmSVffkivvPZp1pGwNrGqK0zyv4h4EHLodloogh+Zn5uBf5M/AS763ivMPx/dfRgq5yGu+LiU0dQOdovtmy/dzP/MdcJYhqSrsUjT/XXSipDNL3jzP/JPxIrAg9nb7ESRmdgyZeUoHDeiXZFERlrvw17khBCrU+RRkGssjA== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <6bac57d5-c30e-f763-3abe-b3f335f366f7@suse.com> Date: Wed, 14 Jun 2023 17:05:16 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [XEN PATCH] xen: fixed violations of MISRA C:2012 Rule 3.1 Content-Language: en-US To: Andrew Cooper Cc: consulting@bugseng.com, Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk , George Dunlap , Wei Liu , Rahul Singh , xen-devel@lists.xenproject.org, Nicola Vetrini References: From: Jan Beulich In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR2P281CA0109.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:9c::8) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|AM9PR04MB8506:EE_ X-MS-Office365-Filtering-Correlation-Id: 02df30b9-5325-4e32-cb3b-08db6ce8c4a4 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: WhtzvtoEl/gBNLWuUOfsiCi2z0gscLONB+aIIilFHlMaFAeFL5uZ2L1V16dJrQkRrJUEaLtgCGqdryMdEiXZ9Mgwd6kGsicG6lpUZvVtjZ8+rWyCMvGYlDRadUS9X/y7p9pWxK98bZ3P++6gHMJBo15vUrHp+0t893AMUFidpGagbFOAq4FXIwbNrr4BpP9KjkiZ5vtdxjo/S1+DKcN+eG3rIAWRFKPdPZ94OIHykgowEDIWOhxTDZqLpvxHGAyVP07NkrEKviH8vpfi0r9sycxMZIrBBFRL6Q+/NCb9P0JJKnl591gbUFWFrKcEZdsD/uv+1U3K+dJ4R5JlSibqz8rkk/87yjSS2PJE+Kb2XrJs3BCDmawM6G6ZUTqYYwGQ8JKXbmuMc/jfKTFM9CLBG2nmlCg64hzV3KZJqDBgJSF7h7vMRud3R5MOrdvcBbL9gJ49/NyfDx4geXMaV+J1ZDV3J4G4NW2iKvvtOpXKylR0x1hs1krtFo22bKA1YLrW02qa3GJnRYy31MkwiW3WASGR1k2ZBfo43lG+g4Tv/4FR1gVXD2Ov1qOgG6QYYbQ1hpAJPvKcYguDlRZ/WPrpQ/Zn5V0HROKOePRUZM+hO/lQRehNfE4tWqChIazd4ss0M4+ivkqXZBMYEVw3Sed98Q== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(396003)(376002)(136003)(366004)(39860400002)(346002)(451199021)(8936002)(6486002)(26005)(8676002)(6512007)(41300700001)(38100700002)(36756003)(478600001)(86362001)(66946007)(6916009)(4326008)(66476007)(66556008)(31696002)(316002)(54906003)(6666004)(53546011)(6506007)(5660300002)(83380400001)(186003)(2616005)(7416002)(2906002)(31686004)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?UVZQQ3h6N0pKVHlySTV5S1U1Nm9vTlpNaFRIY0VrR3k2N0NPZS8zVzRjcGVK?= =?utf-8?B?T3U0MksvbC9YWU5TWGYxVXo1RlJyMnYrRGRiU3hxZkR5Q3Zsa3NSSExYUVg4?= =?utf-8?B?MFFYQmhVNXBjRnFmY2x0R1V4dmdKWDg5S1k0MGZVYnR0anNBY3RrbUxuVysz?= =?utf-8?B?cmlwZkZWcGY3VTNkNUxEODhqckhoTjNTdVovREtQUE1zTStVOWR3cnI4NHVT?= =?utf-8?B?Q0txT093Q3FROE5nNGJ2a2g5Z2YwYlQ3RTJRZVVrOGR6Z2Z4bXBzM24reEl5?= =?utf-8?B?MWszMWc0dEhUMCthREUxVVJ6N3hYaWF2b1VsUzhER1NidXlnL0ppQVc3eUI3?= =?utf-8?B?NVR4MGhFVGkxL2VLQy8zZHhsM1FJSXgvaDlpb1hsM213a2FLWDJpY2NLLzZW?= =?utf-8?B?RTlxbnpvY2JtVE5WclNNQndiaG45dEc3bzJVOGw1SXc4dElkVytPRmdQZDdC?= =?utf-8?B?V1BwMjdMOUdKMVBhU1pVdTBIOXdEMGxEb2tIb0hsZU1FbmpyUFl5WDYzM1ZS?= =?utf-8?B?NkVhUlk4T29rdGVZdVBEQ2FUNFljWXFoa2JCKyt0MThJckp6YkE1cDRxc2VF?= =?utf-8?B?a0IzeGFPcWpXL0tCQ1dDVVQyMkJOZ2dOSUxvOVgrelF4MW85MzI4TG5NcHlk?= =?utf-8?B?MStlQ2FEWmRHYnowZ0lsdlZWSUQ4cHcrdXJEZVdTcG1sZkNOY0M4Q0R3eEIx?= =?utf-8?B?dmh5NXVaMUZRRGgxMWJTWFZ5Zjh2VUxid1A0SWVhMzJRNzVIZzR3bXdqaXgr?= =?utf-8?B?T3dsS1JXSDVYVE5MWDVnUDQvc09JdHRKaUV3L3JOMVZRUnJVb2JaTUZ1UWZ5?= =?utf-8?B?d3NxRVZ6TXJ5ejNUMWo5RDhuby80K2VzclZ6UWVFaHVpZExML3ZueCtvSWZw?= =?utf-8?B?TS9Jdmw0SDJlZTNtay9UL25DMzUwTmNSeHdhYzNqNkNIV01xSlExeTJuT3l1?= =?utf-8?B?OUhZTnNaUUxoSEVRbUhrNitWeDRRS01DbGs5MFlnUVBTb3BvTUJkN1BNMDJt?= =?utf-8?B?Qkl6Tmh2Qll2MHdzUEhoTVoyemU2QmZvL01sVjJFMzlXN3JOcWNyV1hEaFR4?= =?utf-8?B?RFJ2V1Vranh6NUF3cStMZFhCenNINTVYVnQvWDgwdEt0Y29mcFBUWGVadC93?= =?utf-8?B?dll4Lzgyc3BrU0poQlZWcktYNEIrUWZ3a1UycU5WaXF4dFpBelA5TzErVmdV?= =?utf-8?B?djE4VDNKNERCa3d5ZXNFeVNKMnZEQWhLMlJhbE1RYVUrNnBOaTIramhBMGNT?= =?utf-8?B?bVNEUy83dWRRMkx1aFR0b1QvQnpSMDdKRnAydElRcGFDYklsenZyN0U0UXY2?= =?utf-8?B?V2dJQ3RjRlV1bVo0VXBCSVpUd2IrZjZIa1A2c1M3MW13ZGZsQWtUZUZESUd2?= =?utf-8?B?Sjh1K09YL2tTQ1AweEZrdDBTVllRcWQwV0FqQ0VDaHJlVVFIUG9NVkZkMW43?= =?utf-8?B?aHZxZzdMMEhsUm83cjM3VVpmeGROUTNjTFJYMmRrdVFYQnZoOStXQzFPWURs?= =?utf-8?B?cDgwaFppS3dmcGEvR3M3aTlzWlByUkhRT0ZjRFRQOXBsaExldXlTaUl4UFhG?= =?utf-8?B?K085MzcraVNNd3FReUhRWVphUEMzL2FUaDlPbndJWksxOFptUGdKMWxQSzE3?= =?utf-8?B?Q3I3SkhIVi9jZDJKZGVVM0Y0bmhJWmVkdjZ2cHRhVFplVWhUb2dhVkxiWjJ1?= =?utf-8?B?cDBOa1pOQkhtL0pYcE5PMmFGckdwT1NDa2ZmRGxZVmo4Q1MzL0cwazN2alNS?= =?utf-8?B?aWovcXBhUnl6OVZ4Z1J3bXFhT2g3V0xtZHRWWll6akhWeE1JamphdkNVSHJl?= =?utf-8?B?UEs4TGY1VCtJZ3ZLVjBZM0NFV3JhOEhSOEs2VTMwN20vSENIaHpDQVV5NmFV?= =?utf-8?B?aUdtQ01zWUwrbE4zWGxDck84bWtKWnBTcVp5eXF3UnR4VFF6ajNOZkJuNEJq?= =?utf-8?B?RjFHZWY0MnhIZ2hjSjRudHJGa0dxVlZSMWUwTU93Wi9hT3JpMkdoSXA3TG5z?= =?utf-8?B?M2VNMFdhcUxwd1V5ckhEZ2dCRDFsWVBwQlVqQk5CWVY0dnB5ZmVBRDhjYjVs?= =?utf-8?B?SktobWVrdVU1WTdLUWt3U2VsdWpIcXhjanpkd3JCR2RBQkFISWRRbjU5WmJR?= =?utf-8?Q?mZCdd57Q3ObCszk/0oFGpFZYm?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 02df30b9-5325-4e32-cb3b-08db6ce8c4a4 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Jun 2023 15:05:19.1803 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: K5ie2tnsAlRjj5KBUIOI/w/g+6i+t1tlshYwqaR5a/YW6KwsIjRdCvF65a8O6hrOfYVuIkX4Ks2IXyV5dfeizA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR04MB8506 On 14.06.2023 16:28, Andrew Cooper wrote: > On 13/06/2023 8:42 am, Nicola Vetrini wrote: >> diff --git a/xen/common/xmalloc_tlsf.c b/xen/common/xmalloc_tlsf.c >> index 75bdf18c4e..ea6ec47a59 100644 >> --- a/xen/common/xmalloc_tlsf.c >> +++ b/xen/common/xmalloc_tlsf.c >> @@ -140,9 +140,10 @@ static inline void MAPPING_SEARCH(unsigned long *r, int *fl, int *sl) >> *fl = flsl(*r) - 1; >> *sl = (*r >> (*fl - MAX_LOG2_SLI)) - MAX_SLI; >> *fl -= FLI_OFFSET; >> - /*if ((*fl -= FLI_OFFSET) < 0) // FL will be always >0! >> - *fl = *sl = 0; >> - */ >> +#if 0 >> + if ((*fl -= FLI_OFFSET) < 0) // FL will be always >0! >> + fl = *sl = 0; >> +#endif >> *r &= ~t; >> } >> } > > This logic has been commented out right from it's introduction in c/s > 9736b76d829b2d in 2008, and never touched since. > > I think it can safely be deleted, and not placed inside an #if 0. I have to admit that I wouldn't be happy with deleting without any replacement. Instead of the commented out code, how about instead having ASSERT(*fl >= 0)? (What isn't clear to me is whether the commented out code is actually meant to replace the earlier line, rather than (optionally) be there in addition - at least it very much looks like so. With such an uncertainty I'd be further inclined to not remove what's there.) Jan From xen-devel-bounces@lists.xenproject.org Wed Jun 14 15:06:13 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 15:06:13 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548932.857172 (Exim 4.92) (envelope-from ) id 1q9S4b-00058Z-7X; Wed, 14 Jun 2023 15:06:13 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548932.857172; Wed, 14 Jun 2023 15:06:13 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9S4b-00058S-4P; Wed, 14 Jun 2023 15:06:13 +0000 Received: by outflank-mailman (input) for mailman id 548932; Wed, 14 Jun 2023 15:06:11 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9S4Z-0004wv-Mb for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 15:06:11 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [2604:1380:4641:c500::1]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id fd100773-0ac4-11ee-b232-6b7b168915f2; Wed, 14 Jun 2023 17:06:08 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id AEB8463C32; Wed, 14 Jun 2023 15:06:06 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 69A5AC433C8; Wed, 14 Jun 2023 15:05:59 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: fd100773-0ac4-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1686755166; bh=mYL5daBcxMikalMhh9cCFY+r9XquqesA54K3hjfOLTg=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=STNRxM+Y/xkG0QyBoc53kcCb5yG1Ly+XJdRdHc/zJ1TCbDaJDD0OuxmfQFFT6l7Kq qCp4eYGEWaY44zLye/aA/Sc6bwWU7i2YmGCf+enSLd3bLx7RIr/9d9ksK/M8XETdpa h/shck3gYngL3WCudQKzi54g1OqDGBTFn+RvxrwG+iuix2d51fV9RXhELY1o9p6nzP PK46LJSg5B9o0xTe73U8Gbss933xivoRdOgA30zw2Sz2WY7mXiXJkZyDnMtU6ViDZX 9gqDJzLtn1zUkTLc7vaWLzH0+Q5q/9ETD/YLmVjUjGTzC8B0nzsq7nYMwwuGkaFucZ jo9CN9hwdi+0A== Date: Wed, 14 Jun 2023 18:05:28 +0300 From: Mike Rapoport To: "Vishal Moola (Oracle)" Cc: Andrew Morton , Matthew Wilcox , linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , Catalin Marinas Subject: Re: [PATCH v4 21/34] arm64: Convert various functions to use ptdescs Message-ID: <20230614150528.GT52412@kernel.org> References: <20230612210423.18611-1-vishal.moola@gmail.com> <20230612210423.18611-22-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20230612210423.18611-22-vishal.moola@gmail.com> On Mon, Jun 12, 2023 at 02:04:10PM -0700, Vishal Moola (Oracle) wrote: > As part of the conversions to replace pgtable constructor/destructors with > ptdesc equivalents, convert various page table functions to use ptdescs. > > Signed-off-by: Vishal Moola (Oracle) Acked-by: Mike Rapoport (IBM) > --- > arch/arm64/include/asm/tlb.h | 14 ++++++++------ > arch/arm64/mm/mmu.c | 7 ++++--- > 2 files changed, 12 insertions(+), 9 deletions(-) > > diff --git a/arch/arm64/include/asm/tlb.h b/arch/arm64/include/asm/tlb.h > index c995d1f4594f..2c29239d05c3 100644 > --- a/arch/arm64/include/asm/tlb.h > +++ b/arch/arm64/include/asm/tlb.h > @@ -75,18 +75,20 @@ static inline void tlb_flush(struct mmu_gather *tlb) > static inline void __pte_free_tlb(struct mmu_gather *tlb, pgtable_t pte, > unsigned long addr) > { > - pgtable_pte_page_dtor(pte); > - tlb_remove_table(tlb, pte); > + struct ptdesc *ptdesc = page_ptdesc(pte); > + > + pagetable_pte_dtor(ptdesc); > + tlb_remove_ptdesc(tlb, ptdesc); > } > > #if CONFIG_PGTABLE_LEVELS > 2 > static inline void __pmd_free_tlb(struct mmu_gather *tlb, pmd_t *pmdp, > unsigned long addr) > { > - struct page *page = virt_to_page(pmdp); > + struct ptdesc *ptdesc = virt_to_ptdesc(pmdp); > > - pgtable_pmd_page_dtor(page); > - tlb_remove_table(tlb, page); > + pagetable_pmd_dtor(ptdesc); > + tlb_remove_ptdesc(tlb, ptdesc); > } > #endif > > @@ -94,7 +96,7 @@ static inline void __pmd_free_tlb(struct mmu_gather *tlb, pmd_t *pmdp, > static inline void __pud_free_tlb(struct mmu_gather *tlb, pud_t *pudp, > unsigned long addr) > { > - tlb_remove_table(tlb, virt_to_page(pudp)); > + tlb_remove_ptdesc(tlb, virt_to_ptdesc(pudp)); > } > #endif > > diff --git a/arch/arm64/mm/mmu.c b/arch/arm64/mm/mmu.c > index af6bc8403ee4..5867a0e917b9 100644 > --- a/arch/arm64/mm/mmu.c > +++ b/arch/arm64/mm/mmu.c > @@ -426,6 +426,7 @@ static phys_addr_t __pgd_pgtable_alloc(int shift) > static phys_addr_t pgd_pgtable_alloc(int shift) > { > phys_addr_t pa = __pgd_pgtable_alloc(shift); > + struct ptdesc *ptdesc = page_ptdesc(phys_to_page(pa)); > > /* > * Call proper page table ctor in case later we need to > @@ -433,12 +434,12 @@ static phys_addr_t pgd_pgtable_alloc(int shift) > * this pre-allocated page table. > * > * We don't select ARCH_ENABLE_SPLIT_PMD_PTLOCK if pmd is > - * folded, and if so pgtable_pmd_page_ctor() becomes nop. > + * folded, and if so pagetable_pte_ctor() becomes nop. > */ > if (shift == PAGE_SHIFT) > - BUG_ON(!pgtable_pte_page_ctor(phys_to_page(pa))); > + BUG_ON(!pagetable_pte_ctor(ptdesc)); > else if (shift == PMD_SHIFT) > - BUG_ON(!pgtable_pmd_page_ctor(phys_to_page(pa))); > + BUG_ON(!pagetable_pmd_ctor(ptdesc)); > > return pa; > } > -- > 2.40.1 > > -- Sincerely yours, Mike. From xen-devel-bounces@lists.xenproject.org Wed Jun 14 15:07:56 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 15:07:56 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548938.857182 (Exim 4.92) (envelope-from ) id 1q9S65-0005oJ-H7; Wed, 14 Jun 2023 15:07:45 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548938.857182; Wed, 14 Jun 2023 15:07:45 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9S65-0005oC-EL; Wed, 14 Jun 2023 15:07:45 +0000 Received: by outflank-mailman (input) for mailman id 548938; Wed, 14 Jun 2023 15:07:43 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9S63-0005o4-O1 for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 15:07:43 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 34ffa0b6-0ac5-11ee-8611-37d641c3527e; Wed, 14 Jun 2023 17:07:41 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 8DEC26433D; Wed, 14 Jun 2023 15:07:40 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 7DBECC433C0; Wed, 14 Jun 2023 15:07:33 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 34ffa0b6-0ac5-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1686755259; bh=JsVwqtt4rn+oBmP9veLZYMWTShEVF7o+ZQx0DgLi4Zs=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=C5kIgCv/a7WFPC5tRs5sqFZpJHWZmRkycbqhaUCenxA+sXENaMqraBn8uW0a+QebT mZ6OdRi8HqTKN/fLlxiLY+gYTEXBMlPJd7k4eHkAR+MLf6P+LaRVRHLiwBZOMWFPeh Fhqqn9UjnVNIm5Q5RdXmqRztziwcn9ltJweM50aQJ0s3juJZJPLTo3DhbuvPdQJPaq h2LbrXxJrmkyH9p2jpuC5ESJKX7YVXMhAfWp7vNoPgXlO5lI86wghzWDGdue/lx2YA x6FoTUTEZw7X60hwDiqn+akRr/yO0jO9WPeQeAUaQGxHZWlG5RVnPrpPcimJ1Z2/OZ FP8RrhHA6VKEw== Date: Wed, 14 Jun 2023 18:07:03 +0300 From: Mike Rapoport To: "Vishal Moola (Oracle)" Cc: Andrew Morton , Matthew Wilcox , linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , Guo Ren Subject: Re: [PATCH v4 22/34] csky: Convert __pte_free_tlb() to use ptdescs Message-ID: <20230614150703.GU52412@kernel.org> References: <20230612210423.18611-1-vishal.moola@gmail.com> <20230612210423.18611-23-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20230612210423.18611-23-vishal.moola@gmail.com> On Mon, Jun 12, 2023 at 02:04:11PM -0700, Vishal Moola (Oracle) wrote: > Part of the conversions to replace pgtable constructor/destructors with > ptdesc equivalents. > > Signed-off-by: Vishal Moola (Oracle) > Acked-by: Guo Ren Acked-by: Mike Rapoport (IBM) > --- > arch/csky/include/asm/pgalloc.h | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/arch/csky/include/asm/pgalloc.h b/arch/csky/include/asm/pgalloc.h > index 7d57e5da0914..9c84c9012e53 100644 > --- a/arch/csky/include/asm/pgalloc.h > +++ b/arch/csky/include/asm/pgalloc.h > @@ -63,8 +63,8 @@ static inline pgd_t *pgd_alloc(struct mm_struct *mm) > > #define __pte_free_tlb(tlb, pte, address) \ > do { \ > - pgtable_pte_page_dtor(pte); \ > - tlb_remove_page(tlb, pte); \ > + pagetable_pte_dtor(page_ptdesc(pte)); \ > + tlb_remove_page_ptdesc(tlb, page_ptdesc(pte)); \ > } while (0) > > extern void pagetable_init(void); > -- > 2.40.1 > > -- Sincerely yours, Mike. From xen-devel-bounces@lists.xenproject.org Wed Jun 14 15:08:30 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 15:08:30 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548943.857192 (Exim 4.92) (envelope-from ) id 1q9S6n-0006L4-Ou; Wed, 14 Jun 2023 15:08:29 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548943.857192; Wed, 14 Jun 2023 15:08:29 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9S6n-0006Kx-M9; Wed, 14 Jun 2023 15:08:29 +0000 Received: by outflank-mailman (input) for mailman id 548943; Wed, 14 Jun 2023 15:08:28 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9S6m-0006Kk-QZ for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 15:08:28 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 5080a6e0-0ac5-11ee-b232-6b7b168915f2; Wed, 14 Jun 2023 17:08:27 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id C103D64274; Wed, 14 Jun 2023 15:08:26 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 3F8B4C433C8; Wed, 14 Jun 2023 15:08:19 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 5080a6e0-0ac5-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1686755306; bh=KMZ0sWg3oWLcgQ10FZDJEZz1Q4wDlpsgjoFRtVSwfW0=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=H25tJoPWfpWcsaynauNwXB5hTK36bRqtx/0xTnssPgH0lhjlolKnlOLsfsGu434eI CxYybNyd9SBr/0zVFCnQrFd7/DAbM63g53GRk5YtH7zmCHpo6SmKK/U51sN1E2BFQl m04/LPDFqZFfvtJmJDOYTB/nU393uOzKg1Z3ZAInkjBg8hEXnAKN3CDXAJ7hETSDfQ bbwHZ58euJx0VpBLsdgAjNte0WFG4VJlXw54eBPKUuDtJgtDpvznyTJ/YlrJnQxY8Q qCOf+ZUXW3rIBbsyRwFsS4/dxVgK+bq5VCCnS7blNCFjXDH39Ph8uFmZvgC9UdIhtD AY2vel4DKq+Jg== Date: Wed, 14 Jun 2023 18:07:48 +0300 From: Mike Rapoport To: "Vishal Moola (Oracle)" Cc: Andrew Morton , Matthew Wilcox , linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins Subject: Re: [PATCH v4 23/34] hexagon: Convert __pte_free_tlb() to use ptdescs Message-ID: <20230614150748.GV52412@kernel.org> References: <20230612210423.18611-1-vishal.moola@gmail.com> <20230612210423.18611-24-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20230612210423.18611-24-vishal.moola@gmail.com> On Mon, Jun 12, 2023 at 02:04:12PM -0700, Vishal Moola (Oracle) wrote: > Part of the conversions to replace pgtable constructor/destructors with > ptdesc equivalents. > > Signed-off-by: Vishal Moola (Oracle) Acked-by: Mike Rapoport (IBM) > --- > arch/hexagon/include/asm/pgalloc.h | 8 ++++---- > 1 file changed, 4 insertions(+), 4 deletions(-) > > diff --git a/arch/hexagon/include/asm/pgalloc.h b/arch/hexagon/include/asm/pgalloc.h > index f0c47e6a7427..55988625e6fb 100644 > --- a/arch/hexagon/include/asm/pgalloc.h > +++ b/arch/hexagon/include/asm/pgalloc.h > @@ -87,10 +87,10 @@ static inline void pmd_populate_kernel(struct mm_struct *mm, pmd_t *pmd, > max_kernel_seg = pmdindex; > } > > -#define __pte_free_tlb(tlb, pte, addr) \ > -do { \ > - pgtable_pte_page_dtor((pte)); \ > - tlb_remove_page((tlb), (pte)); \ > +#define __pte_free_tlb(tlb, pte, addr) \ > +do { \ > + pagetable_pte_dtor((page_ptdesc(pte))); \ > + tlb_remove_page_ptdesc((tlb), (page_ptdesc(pte))); \ > } while (0) > > #endif > -- > 2.40.1 > > -- Sincerely yours, Mike. From xen-devel-bounces@lists.xenproject.org Wed Jun 14 15:08:37 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 15:08:37 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548944.857201 (Exim 4.92) (envelope-from ) id 1q9S6u-0006dO-VA; Wed, 14 Jun 2023 15:08:36 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548944.857201; Wed, 14 Jun 2023 15:08:36 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9S6u-0006dH-Se; Wed, 14 Jun 2023 15:08:36 +0000 Received: by outflank-mailman (input) for mailman id 548944; Wed, 14 Jun 2023 15:08:36 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9S6u-0005o4-AQ for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 15:08:36 +0000 Received: from esa5.hc3370-68.iphmx.com (esa5.hc3370-68.iphmx.com [216.71.155.168]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 53cd0607-0ac5-11ee-8611-37d641c3527e; Wed, 14 Jun 2023 17:08:34 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 53cd0607-0ac5-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686755314; h=date:from:to:cc:subject:message-id:references: mime-version:in-reply-to; bh=Vp9p1qfoM2PN1A0zuZ5CziO8jBlfIegSkWMzayQvLt4=; b=GXowiaKMl5K47gBRPdMO2Y2gt1hIcHW1oivKabq9wAIBqcXwXocdy6BI eLx++pBTYRt+nHUDtxzoc0K7q35zMGzGXLUS4VF+x6NxIjmLyDGAwxTy2 JKTOuinB2rat0fa5z5cBG9G7lguZoFN1OGN3UslMRbQRv2aI7fxnmjG3M g=; Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none X-SBRS: 4.0 X-MesageID: 111518432 X-Ironport-Server: esa5.hc3370-68.iphmx.com X-Remote-IP: 162.221.156.123 X-Policy: $RELAYED IronPort-Data: A9a23:7SkRsq1HYFgjQce1r/bD5fVxkn2cJEfYwER7XKvMYLTBsI5bpzEGn 2scDWuEPKqJY2OhLYp/bYiw/UgCupfdyoNjSQM4pC1hF35El5HIVI+TRqvS04F+DeWYFR46s J9OAjXkBJppJpMJjk71atANlVEliefTAOK6ULWeUsxIbVcMYD87jh5+kPIOjIdtgNyoayuAo tq3qMDEULOf82cc3lk8teTb8HuDgNyo4GlD5gJnOagS1LPjvyJ94Kw3dPnZw0TQGuG4LsbiL 87fwbew+H/u/htFIrtJRZ6iLyXm6paLVeS/oiI+t5qK23CulQRrukoPD9IOaF8/ttm8t4sZJ OOhF3CHYVxB0qXkwIzxWvTDes10FfUuFLTveRBTvSEPpqFvnrSFL/hGVSkL0YMkFulfKEVQ1 KZGdmAxci+tjtCfwKqrTrJTr5F2RCXrFNt3VnBIyDjYCbAtQIzZQrWM7thdtNsyrpkQR7CEP ZNfMGcxKk2aOHWjOX9OYH46tO6umnn4dSwesF+PrLA7y2PS0BZwwP7mN9+9ltmiHJwMwx/I+ jmcl4j/KhMaG+LY+xO6yX2TqMTymAX/ZY1VJpTto5aGh3XMnzdOWXX6T2CTo/O0l0q/UNJ3M FEP92wlqq1a3FymSJzxUgO1pFaAvwUAQJxAHusi8gaPx6HIpQGDCQAsUTppeNEg8sgsSlQC1 FCTmMjyLSdyq7DTQnWYnp+dtT6oMDIZBXMDbyQDCwAC5rHeTJob10yVCIw5Sejs04OzQGurq 9yXkMQgr5w3k+9RifvrwUz4rTuej5jRXgpu2SyCCwpJ8ThFiJ6Zi52AsAaLs6gacN7GEjFtr 1BfxZHAsblm4YWl0XXUHb5TROzBC+OtamW0vLJ5I3U2G91BEVaHdJsY3jxxLVwB3i0sKW6wO x+7Ve+8CfZu0JqWgUxfOdjZ5zwCl/SIKDgcfqm8giBySpZwbhSb2ypleFSd2Wvg+GB1z/FhZ 8fCK5r0UyZHYUiC8NZRb71EuYLHOwhknT+DLXwF50nPPUWiiI69Fu5ebQrmghER56KYugTFm +uzxOPToyizpNbWO3GNmaZKdABiEJTOLcyuwyChXrLZc1UO9aBII6O5/I7NjKQ/wv4EybqSr y7nMqKaoXKm7UD6xcyxQigLQNvSsVxX9xrX4QRE0Y6U5kUe IronPort-HdrOrdr: A9a23:pKddOa8/9q74c86PRy1uk+Gddb1zdoMgy1knxilNoH1uA7mlfq WV95omPHDP6Ar5J0tQ5exoVJPgfZq+z+8H3WBuB8bBYOCOggLBRr2KhrGSoAEIdReOk9K03s 9bAtdD4LWbNzRHZa2R2maF+xlL+rS62ZHtvMOb60pECThtbaQI1XYKNu5YeHcGOjWvwfACZe qhDg8snUvQRZ1tVLXeOlA1G9LbosHNltbPeAduPW9f1CC+yQmw7aL8EVyywhcaXlp0sMof2F mAqRX9+qKg99ayzhO07R61071m3OH5z8dFBoirlM8YMVzX+2CVTbUkYaSGoDc25NuOxT8R4a HxiiZlBd1393TSOlu4ugTgwC7p1DpG0Q6Y9XaoxUH7pND/RnYEB9FahYRfGyGpkXYdgA== X-Talos-CUID: 9a23:EV9yjG0t2ASaIx6BUGoEd7xfM+Q7UyeDkifsP3CWAFRASKWFTQSv0fYx X-Talos-MUID: =?us-ascii?q?9a23=3A1Z3/lAyMmIf0dOy7x8ceBp7tBveaqKauJ35Ko7w?= =?us-ascii?q?5gMa7GwdNPhGZsTvwcKZyfw=3D=3D?= X-IronPort-AV: E=Sophos;i="6.00,242,1681185600"; d="scan'208";a="111518432" Date: Wed, 14 Jun 2023 16:08:15 +0100 From: Anthony PERARD To: Jan Beulich CC: "xen-devel@lists.xenproject.org" , Wei Liu , Juergen Gross Subject: Re: [PATCH] libxg: shrink variable scope in xc_core_arch_map_p2m_list_rw() Message-ID: References: <3c6fc607-630d-c52f-06b8-4c5aae97f21f@suse.com> MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Disposition: inline In-Reply-To: <3c6fc607-630d-c52f-06b8-4c5aae97f21f@suse.com> On Wed, Jun 14, 2023 at 09:02:56AM +0200, Jan Beulich wrote: > This in particular allows to drop a dead assignment to "ptes" from near > the end of the function. > > Coverity ID: 1532314 > Fixes: bd7a29c3d0b9 ("tools/libs/ctrl: fix xc_core_arch_map_p2m() to support linear p2m table") > Signed-off-by: Jan Beulich > --- > v2: Much bigger change to limit the scope of "ptes" and other variables. The change of scope of all variables isn't too hard to review with --word-diff option and they all look fine. > --- a/tools/libs/guest/xg_core_x86.c > +++ b/tools/libs/guest/xg_core_x86.c > @@ -169,18 +169,21 @@ xc_core_arch_map_p2m_list_rw(xc_interfac > if ( !mfns ) > { > ERROR("Cannot allocate memory for array of %u mfns", idx); > + out_unmap: > + munmap(ptes, n_pages * PAGE_SIZE); > goto out; > } > I guess it's not that great to have the label out_unmap in the middle of the for loop (at least it's near the beginning), but at least that mean that the mapping need to be gone once out of the loop. So if someone edit the for loop and introduce a `goto out` instead of `goto out_unmap` there's just a potential leak rather than potential use-after-free or double-free, so I guess that better. So: Acked-by: Anthony PERARD Cheers, -- Anthony PERARD From xen-devel-bounces@lists.xenproject.org Wed Jun 14 15:10:24 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 15:10:24 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548953.857211 (Exim 4.92) (envelope-from ) id 1q9S8c-0008M2-B8; Wed, 14 Jun 2023 15:10:22 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548953.857211; Wed, 14 Jun 2023 15:10:22 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9S8c-0008Lv-8V; Wed, 14 Jun 2023 15:10:22 +0000 Received: by outflank-mailman (input) for mailman id 548953; Wed, 14 Jun 2023 15:10:20 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9S8a-0008Ln-Rm for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 15:10:20 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 928fdd9e-0ac5-11ee-8611-37d641c3527e; Wed, 14 Jun 2023 17:10:18 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 8A3FB63E86; Wed, 14 Jun 2023 15:10:17 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 16FDFC433C9; Wed, 14 Jun 2023 15:10:08 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 928fdd9e-0ac5-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1686755416; bh=eEAbU7oQr9nMdD1HLeHjNBK19Ki+7NwrWH3cOyfSAFw=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=u1QQyNDBdtCEWKCdwkI61E6ULyFIgzYYylF24CXModGq8eNzM+Z8HRxJ8NnKbPEF5 UNrt/K6ZH5RXrryPuSNoWGiuCh9vnPW8YLLGFCdMmvIvsn7goY4XYWaNAnF4AlaV9N mfMLdsrym6F2G1al1nf4xNlH9qHN5OFMys6dbDrcrpZ1VYnPTPQnPkmwVp166H2/JK U32Jf//4jTFsBKhLdt7fUkuWV7s3JXIXH4B66LpDynvbrZHamU0t4g4xIlyNwqP+5M W4uLOM28xHt+KNxT29B1NyZJ2yMGSa3xxMl7M4zbMQTq/+ShWbaHrgSWCQ911pmwU9 nPWmBNYhBTiFw== Date: Wed, 14 Jun 2023 18:09:37 +0300 From: Mike Rapoport To: "Vishal Moola (Oracle)" Cc: Andrew Morton , Matthew Wilcox , linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , Huacai Chen Subject: Re: [PATCH v4 24/34] loongarch: Convert various functions to use ptdescs Message-ID: <20230614150937.GW52412@kernel.org> References: <20230612210423.18611-1-vishal.moola@gmail.com> <20230612210423.18611-25-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20230612210423.18611-25-vishal.moola@gmail.com> On Mon, Jun 12, 2023 at 02:04:13PM -0700, Vishal Moola (Oracle) wrote: > As part of the conversions to replace pgtable constructor/destructors with > ptdesc equivalents, convert various page table functions to use ptdescs. > > Some of the functions use the *get*page*() helper functions. Convert > these to use pagetable_alloc() and ptdesc_address() instead to help > standardize page tables further. > > Signed-off-by: Vishal Moola (Oracle) Acked-by: Mike Rapoport (IBM) > --- > arch/loongarch/include/asm/pgalloc.h | 27 +++++++++++++++------------ > arch/loongarch/mm/pgtable.c | 7 ++++--- > 2 files changed, 19 insertions(+), 15 deletions(-) > > diff --git a/arch/loongarch/include/asm/pgalloc.h b/arch/loongarch/include/asm/pgalloc.h > index af1d1e4a6965..70bb3bdd201e 100644 > --- a/arch/loongarch/include/asm/pgalloc.h > +++ b/arch/loongarch/include/asm/pgalloc.h > @@ -45,9 +45,9 @@ extern void pagetable_init(void); > extern pgd_t *pgd_alloc(struct mm_struct *mm); > > #define __pte_free_tlb(tlb, pte, address) \ > -do { \ > - pgtable_pte_page_dtor(pte); \ > - tlb_remove_page((tlb), pte); \ > +do { \ > + pagetable_pte_dtor(page_ptdesc(pte)); \ > + tlb_remove_page_ptdesc((tlb), page_ptdesc(pte)); \ > } while (0) > > #ifndef __PAGETABLE_PMD_FOLDED > @@ -55,18 +55,18 @@ do { \ > static inline pmd_t *pmd_alloc_one(struct mm_struct *mm, unsigned long address) > { > pmd_t *pmd; > - struct page *pg; > + struct ptdesc *ptdesc; > > - pg = alloc_page(GFP_KERNEL_ACCOUNT); > - if (!pg) > + ptdesc = pagetable_alloc(GFP_KERNEL_ACCOUNT, 0); > + if (!ptdesc) > return NULL; > > - if (!pgtable_pmd_page_ctor(pg)) { > - __free_page(pg); > + if (!pagetable_pmd_ctor(ptdesc)) { > + pagetable_free(ptdesc); > return NULL; > } > > - pmd = (pmd_t *)page_address(pg); > + pmd = ptdesc_address(ptdesc); > pmd_init(pmd); > return pmd; > } > @@ -80,10 +80,13 @@ static inline pmd_t *pmd_alloc_one(struct mm_struct *mm, unsigned long address) > static inline pud_t *pud_alloc_one(struct mm_struct *mm, unsigned long address) > { > pud_t *pud; > + struct ptdesc *ptdesc = pagetable_alloc(GFP_KERNEL, 0); > > - pud = (pud_t *) __get_free_page(GFP_KERNEL); > - if (pud) > - pud_init(pud); > + if (!ptdesc) > + return NULL; > + pud = ptdesc_address(ptdesc); > + > + pud_init(pud); > return pud; > } > > diff --git a/arch/loongarch/mm/pgtable.c b/arch/loongarch/mm/pgtable.c > index 36a6dc0148ae..cdba10ffc0df 100644 > --- a/arch/loongarch/mm/pgtable.c > +++ b/arch/loongarch/mm/pgtable.c > @@ -11,10 +11,11 @@ > > pgd_t *pgd_alloc(struct mm_struct *mm) > { > - pgd_t *ret, *init; > + pgd_t *init, *ret = NULL; > + struct ptdesc *ptdesc = pagetable_alloc(GFP_KERNEL, 0); > > - ret = (pgd_t *) __get_free_page(GFP_KERNEL); > - if (ret) { > + if (ptdesc) { > + ret = (pgd_t *)ptdesc_address(ptdesc); > init = pgd_offset(&init_mm, 0UL); > pgd_init(ret); > memcpy(ret + USER_PTRS_PER_PGD, init + USER_PTRS_PER_PGD, > -- > 2.40.1 > > -- Sincerely yours, Mike. From xen-devel-bounces@lists.xenproject.org Wed Jun 14 15:13:42 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 15:13:42 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548958.857221 (Exim 4.92) (envelope-from ) id 1q9SBf-0000WP-PL; Wed, 14 Jun 2023 15:13:31 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548958.857221; Wed, 14 Jun 2023 15:13:31 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9SBf-0000WI-Mf; Wed, 14 Jun 2023 15:13:31 +0000 Received: by outflank-mailman (input) for mailman id 548958; Wed, 14 Jun 2023 15:13:30 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9SBe-0000WC-Jq for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 15:13:30 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 041ef592-0ac6-11ee-b232-6b7b168915f2; Wed, 14 Jun 2023 17:13:29 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id E645264377; Wed, 14 Jun 2023 15:13:27 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 885D9C433C9; Wed, 14 Jun 2023 15:13:20 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 041ef592-0ac6-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1686755607; bh=ooRE0mc8pQQN1dMjaiJ0ZPb9SM8GwemdLsbs/3pu/eg=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=TTauCRLMXAYbj6DwvVWjuhRssYSwJe13c1K0NPkRhYsvxcSKWIMfQpBTkA2tGbp3z wXGshvjRkgcrytc6evPpUtdgHR8HqKPrwA2eiiF0dgNsKrnmwmLzSshVKZlB1P8cTS 1oenGV1fb2arGY1is9AE0FxQeQghR16YOFW4XVbZjjboMrLsKjM23nvulwpmBSKL5g XCIpZq4v8z2TEURhS+KKSdaFb4HvhJXDdh0Uq6ppiSEhUpLe+xv9Km5REWUDDHssXz 00eE0M0epXV6Kc4kORgUUReWrBkViB2MKr5QGGkLvEWV1DMa9XrwJnIr9NmfK9b/hN wRs5qTVp2H96g== Date: Wed, 14 Jun 2023 18:12:49 +0300 From: Mike Rapoport To: "Vishal Moola (Oracle)" Cc: Andrew Morton , Matthew Wilcox , linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , Geert Uytterhoeven Subject: Re: [PATCH v4 25/34] m68k: Convert various functions to use ptdescs Message-ID: <20230614151249.GX52412@kernel.org> References: <20230612210423.18611-1-vishal.moola@gmail.com> <20230612210423.18611-26-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20230612210423.18611-26-vishal.moola@gmail.com> On Mon, Jun 12, 2023 at 02:04:14PM -0700, Vishal Moola (Oracle) wrote: > As part of the conversions to replace pgtable constructor/destructors with > ptdesc equivalents, convert various page table functions to use ptdescs. > > Some of the functions use the *get*page*() helper functions. Convert > these to use pagetable_alloc() and ptdesc_address() instead to help > standardize page tables further. > > Signed-off-by: Vishal Moola (Oracle) Acked-by: Mike Rapoport (IBM) One comment below > --- > arch/m68k/include/asm/mcf_pgalloc.h | 41 ++++++++++++++-------------- > arch/m68k/include/asm/sun3_pgalloc.h | 8 +++--- > arch/m68k/mm/motorola.c | 4 +-- > 3 files changed, 27 insertions(+), 26 deletions(-) > > diff --git a/arch/m68k/include/asm/mcf_pgalloc.h b/arch/m68k/include/asm/mcf_pgalloc.h > index 5c2c0a864524..857949ac9431 100644 > --- a/arch/m68k/include/asm/mcf_pgalloc.h > +++ b/arch/m68k/include/asm/mcf_pgalloc.h > @@ -7,20 +7,19 @@ > > extern inline void pte_free_kernel(struct mm_struct *mm, pte_t *pte) > { > - free_page((unsigned long) pte); > + pagetable_free(virt_to_ptdesc(pte)); > } > > extern const char bad_pmd_string[]; > > extern inline pte_t *pte_alloc_one_kernel(struct mm_struct *mm) > { > - unsigned long page = __get_free_page(GFP_DMA); > + struct ptdesc *ptdesc = pagetable_alloc(GFP_DMA | __GFP_ZERO, 0); > > - if (!page) > + if (!ptdesc) > return NULL; > > - memset((void *)page, 0, PAGE_SIZE); > - return (pte_t *) (page); > + return ptdesc_address(ptdesc); > } > > extern inline pmd_t *pmd_alloc_kernel(pgd_t *pgd, unsigned long address) > @@ -35,36 +34,36 @@ extern inline pmd_t *pmd_alloc_kernel(pgd_t *pgd, unsigned long address) > static inline void __pte_free_tlb(struct mmu_gather *tlb, pgtable_t pgtable, > unsigned long address) > { > - struct page *page = virt_to_page(pgtable); > + struct ptdesc *ptdesc = virt_to_ptdesc(pgtable); > > - pgtable_pte_page_dtor(page); > - __free_page(page); > + pagetable_pte_dtor(ptdesc); > + pagetable_free(ptdesc); > } > > static inline pgtable_t pte_alloc_one(struct mm_struct *mm) > { > - struct page *page = alloc_pages(GFP_DMA, 0); > + struct ptdesc *ptdesc = pagetable_alloc(GFP_DMA, 0); You can add __GFP_ZERO here and drop pagetable_clear() below > pte_t *pte; > > - if (!page) > + if (!ptdesc) > return NULL; > - if (!pgtable_pte_page_ctor(page)) { > - __free_page(page); > + if (!pagetable_pte_ctor(ptdesc)) { > + pagetable_free(ptdesc); > return NULL; > } > > - pte = page_address(page); > - clear_page(pte); > + pte = ptdesc_address(ptdesc); > + pagetable_clear(pte); > > return pte; > } > > static inline void pte_free(struct mm_struct *mm, pgtable_t pgtable) > { > - struct page *page = virt_to_page(pgtable); > + struct ptdesc *ptdesc = virt_to_ptdesc(pgtable); > > - pgtable_pte_page_dtor(page); > - __free_page(page); > + pagetable_pte_dtor(ptdesc); > + pagetable_free(ptdesc); > } > > /* > @@ -75,16 +74,18 @@ static inline void pte_free(struct mm_struct *mm, pgtable_t pgtable) > > static inline void pgd_free(struct mm_struct *mm, pgd_t *pgd) > { > - free_page((unsigned long) pgd); > + pagetable_free(virt_to_ptdesc(pgd)); > } > > static inline pgd_t *pgd_alloc(struct mm_struct *mm) > { > pgd_t *new_pgd; > + struct ptdesc *ptdesc = pagetable_alloc(GFP_DMA | GFP_NOWARN, 0); > > - new_pgd = (pgd_t *)__get_free_page(GFP_DMA | __GFP_NOWARN); > - if (!new_pgd) > + if (!ptdesc) > return NULL; > + new_pgd = ptdesc_address(ptdesc); > + > memcpy(new_pgd, swapper_pg_dir, PTRS_PER_PGD * sizeof(pgd_t)); > memset(new_pgd, 0, PAGE_OFFSET >> PGDIR_SHIFT); > return new_pgd; > diff --git a/arch/m68k/include/asm/sun3_pgalloc.h b/arch/m68k/include/asm/sun3_pgalloc.h > index 198036aff519..ff48573db2c0 100644 > --- a/arch/m68k/include/asm/sun3_pgalloc.h > +++ b/arch/m68k/include/asm/sun3_pgalloc.h > @@ -17,10 +17,10 @@ > > extern const char bad_pmd_string[]; > > -#define __pte_free_tlb(tlb,pte,addr) \ > -do { \ > - pgtable_pte_page_dtor(pte); \ > - tlb_remove_page((tlb), pte); \ > +#define __pte_free_tlb(tlb, pte, addr) \ > +do { \ > + pagetable_pte_dtor(page_ptdesc(pte)); \ > + tlb_remove_page_ptdesc((tlb), page_ptdesc(pte)); \ > } while (0) > > static inline void pmd_populate_kernel(struct mm_struct *mm, pmd_t *pmd, pte_t *pte) > diff --git a/arch/m68k/mm/motorola.c b/arch/m68k/mm/motorola.c > index c75984e2d86b..594575a0780c 100644 > --- a/arch/m68k/mm/motorola.c > +++ b/arch/m68k/mm/motorola.c > @@ -161,7 +161,7 @@ void *get_pointer_table(int type) > * m68k doesn't have SPLIT_PTE_PTLOCKS for not having > * SMP. > */ > - pgtable_pte_page_ctor(virt_to_page(page)); > + pagetable_pte_ctor(virt_to_ptdesc(page)); > } > > mmu_page_ctor(page); > @@ -201,7 +201,7 @@ int free_pointer_table(void *table, int type) > list_del(dp); > mmu_page_dtor((void *)page); > if (type == TABLE_PTE) > - pgtable_pte_page_dtor(virt_to_page((void *)page)); > + pagetable_pte_dtor(virt_to_ptdesc((void *)page)); > free_page (page); > return 1; > } else if (ptable_list[type].next != dp) { > -- > 2.40.1 > > -- Sincerely yours, Mike. From xen-devel-bounces@lists.xenproject.org Wed Jun 14 15:17:08 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 15:17:08 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548965.857232 (Exim 4.92) (envelope-from ) id 1q9SF4-0001Bs-B2; Wed, 14 Jun 2023 15:17:02 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548965.857232; Wed, 14 Jun 2023 15:17:02 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9SF4-0001Bl-8G; Wed, 14 Jun 2023 15:17:02 +0000 Received: by outflank-mailman (input) for mailman id 548965; Wed, 14 Jun 2023 15:17:00 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9SF2-0001Bf-IA for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 15:17:00 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 81652f1b-0ac6-11ee-b232-6b7b168915f2; Wed, 14 Jun 2023 17:16:59 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 4C48063E20; Wed, 14 Jun 2023 15:16:58 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 5C0C6C433C8; Wed, 14 Jun 2023 15:16:50 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 81652f1b-0ac6-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1686755817; bh=YWehRl3xWKEbQP9tq7ePmQYYbNy3P9MQRqza8pSXoQc=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=a5HfETjkviYZmB3yycxaStNQCcDjQ92r6U1dHXLCQYNXXuG0AAUSq7jKrB+2l21WE GypEoOApF1rLNsDZqptGPcxmCr0wOSIRfpVC7vWwoWHblSH2+PhDM7ZW5oWZFVA9ML 0FHsMp89h7dErkEWSqM9r5MLgxZuAZm5NLE0GbwBvKGpFqgzoxM2AhuVGiRnrVxHpJ +MEb2WN6DRbMDDPEuOzeya9BK86TjWF0eG9IOlempn4j36CfKy0Jiz99cVNmFKgRnt JUCMMz1gmGbQUt/P8bZ99XYy/Rxm4p9/4bFRzL62I+G/NVscu1YUh+MWxgzqPj29/v 2pSk7JFRzXlsw== Date: Wed, 14 Jun 2023 18:16:19 +0300 From: Mike Rapoport To: "Vishal Moola (Oracle)" Cc: Andrew Morton , Matthew Wilcox , linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , Thomas Bogendoerfer Subject: Re: [PATCH v4 26/34] mips: Convert various functions to use ptdescs Message-ID: <20230614151619.GY52412@kernel.org> References: <20230612210423.18611-1-vishal.moola@gmail.com> <20230612210423.18611-27-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20230612210423.18611-27-vishal.moola@gmail.com> On Mon, Jun 12, 2023 at 02:04:15PM -0700, Vishal Moola (Oracle) wrote: > As part of the conversions to replace pgtable constructor/destructors with > ptdesc equivalents, convert various page table functions to use ptdescs. > > Some of the functions use the *get*page*() helper functions. Convert > these to use pagetable_alloc() and ptdesc_address() instead to help > standardize page tables further. > > Signed-off-by: Vishal Moola (Oracle) Acked-by: Mike Rapoport (IBM) > --- > arch/mips/include/asm/pgalloc.h | 31 +++++++++++++++++-------------- > arch/mips/mm/pgtable.c | 7 ++++--- > 2 files changed, 21 insertions(+), 17 deletions(-) > > diff --git a/arch/mips/include/asm/pgalloc.h b/arch/mips/include/asm/pgalloc.h > index f72e737dda21..6940e5536664 100644 > --- a/arch/mips/include/asm/pgalloc.h > +++ b/arch/mips/include/asm/pgalloc.h > @@ -51,13 +51,13 @@ extern pgd_t *pgd_alloc(struct mm_struct *mm); > > static inline void pgd_free(struct mm_struct *mm, pgd_t *pgd) > { > - free_pages((unsigned long)pgd, PGD_TABLE_ORDER); > + pagetable_free(virt_to_ptdesc(pgd)); > } > > -#define __pte_free_tlb(tlb,pte,address) \ > -do { \ > - pgtable_pte_page_dtor(pte); \ > - tlb_remove_page((tlb), pte); \ > +#define __pte_free_tlb(tlb, pte, address) \ > +do { \ > + pagetable_pte_dtor(page_ptdesc(pte)); \ > + tlb_remove_page_ptdesc((tlb), page_ptdesc(pte)); \ > } while (0) > > #ifndef __PAGETABLE_PMD_FOLDED > @@ -65,18 +65,18 @@ do { \ > static inline pmd_t *pmd_alloc_one(struct mm_struct *mm, unsigned long address) > { > pmd_t *pmd; > - struct page *pg; > + struct ptdesc *ptdesc; > > - pg = alloc_pages(GFP_KERNEL_ACCOUNT, PMD_TABLE_ORDER); > - if (!pg) > + ptdesc = pagetable_alloc(GFP_KERNEL_ACCOUNT, PMD_TABLE_ORDER); > + if (!ptdesc) > return NULL; > > - if (!pgtable_pmd_page_ctor(pg)) { > - __free_pages(pg, PMD_TABLE_ORDER); > + if (!pagetable_pmd_ctor(ptdesc)) { > + pagetable_free(ptdesc); > return NULL; > } > > - pmd = (pmd_t *)page_address(pg); > + pmd = ptdesc_address(ptdesc); > pmd_init(pmd); > return pmd; > } > @@ -90,10 +90,13 @@ static inline pmd_t *pmd_alloc_one(struct mm_struct *mm, unsigned long address) > static inline pud_t *pud_alloc_one(struct mm_struct *mm, unsigned long address) > { > pud_t *pud; > + struct ptdesc *ptdesc = pagetable_alloc(GFP_KERNEL, PUD_TABLE_ORDER); > > - pud = (pud_t *) __get_free_pages(GFP_KERNEL, PUD_TABLE_ORDER); > - if (pud) > - pud_init(pud); > + if (!ptdesc) > + return NULL; > + pud = ptdesc_address(ptdesc); > + > + pud_init(pud); > return pud; > } > > diff --git a/arch/mips/mm/pgtable.c b/arch/mips/mm/pgtable.c > index b13314be5d0e..729258ff4e3b 100644 > --- a/arch/mips/mm/pgtable.c > +++ b/arch/mips/mm/pgtable.c > @@ -10,10 +10,11 @@ > > pgd_t *pgd_alloc(struct mm_struct *mm) > { > - pgd_t *ret, *init; > + pgd_t *init, *ret = NULL; > + struct ptdesc *ptdesc = pagetable_alloc(GFP_KERNEL, PGD_TABLE_ORDER); > > - ret = (pgd_t *) __get_free_pages(GFP_KERNEL, PGD_TABLE_ORDER); > - if (ret) { > + if (ptdesc) { > + ret = ptdesc_address(ptdesc); > init = pgd_offset(&init_mm, 0UL); > pgd_init(ret); > memcpy(ret + USER_PTRS_PER_PGD, init + USER_PTRS_PER_PGD, > -- > 2.40.1 > > -- Sincerely yours, Mike. From xen-devel-bounces@lists.xenproject.org Wed Jun 14 15:17:37 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 15:17:37 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548967.857241 (Exim 4.92) (envelope-from ) id 1q9SFc-0001cP-Jg; Wed, 14 Jun 2023 15:17:36 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548967.857241; Wed, 14 Jun 2023 15:17:36 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9SFc-0001cI-Gv; Wed, 14 Jun 2023 15:17:36 +0000 Received: by outflank-mailman (input) for mailman id 548967; Wed, 14 Jun 2023 15:17:35 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9SFb-0001Bf-Lz for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 15:17:35 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [2604:1380:4641:c500::1]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 96a2eb34-0ac6-11ee-b232-6b7b168915f2; Wed, 14 Jun 2023 17:17:35 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id E203360C11; Wed, 14 Jun 2023 15:17:33 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id E4DEFC433CA; Wed, 14 Jun 2023 15:17:25 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 96a2eb34-0ac6-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1686755853; bh=1S/7d32fWbuV27InCljg6kvJ/jUmDBZh0FnqMBK6hHQ=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=Zs01V1OMCQW9SGjoiM8833e4+GgLf+roxCp+ov/6p9qYwn56wOxhtLVwhJBsT7OTn GmKNr7uX+7PKLTTatiHu1h0uEJz56DdL9TKqVqAb2j/OoYwLYcpoymomSf3Vf49OoP yZFZoPUVg+zzeaw1qOVp7XommunMKxMETOeiXXwG1fruyJmVlSU1jjsRgmJeqGNLq+ 7Qw3V4aZAWAo+5aqDc7z4QbZ0aSE7DJmDeFcTGvIfVMtmqiMPos6cFk8QO6kEUCdUY C0Hs9o3XgkyQ8iM1Y5etTMXrjXaUuF82+5JCj8C2wU2HvHjg68S/JmOt57YphvSLka 2vW1ji2mH198A== Date: Wed, 14 Jun 2023 18:16:55 +0300 From: Mike Rapoport To: "Vishal Moola (Oracle)" Cc: Andrew Morton , Matthew Wilcox , linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , Dinh Nguyen Subject: Re: [PATCH v4 27/34] nios2: Convert __pte_free_tlb() to use ptdescs Message-ID: <20230614151655.GZ52412@kernel.org> References: <20230612210423.18611-1-vishal.moola@gmail.com> <20230612210423.18611-28-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20230612210423.18611-28-vishal.moola@gmail.com> On Mon, Jun 12, 2023 at 02:04:16PM -0700, Vishal Moola (Oracle) wrote: > Part of the conversions to replace pgtable constructor/destructors with > ptdesc equivalents. > > Signed-off-by: Vishal Moola (Oracle) Acked-by: Mike Rapoport (IBM) > --- > arch/nios2/include/asm/pgalloc.h | 8 ++++---- > 1 file changed, 4 insertions(+), 4 deletions(-) > > diff --git a/arch/nios2/include/asm/pgalloc.h b/arch/nios2/include/asm/pgalloc.h > index ecd1657bb2ce..ce6bb8e74271 100644 > --- a/arch/nios2/include/asm/pgalloc.h > +++ b/arch/nios2/include/asm/pgalloc.h > @@ -28,10 +28,10 @@ static inline void pmd_populate(struct mm_struct *mm, pmd_t *pmd, > > extern pgd_t *pgd_alloc(struct mm_struct *mm); > > -#define __pte_free_tlb(tlb, pte, addr) \ > - do { \ > - pgtable_pte_page_dtor(pte); \ > - tlb_remove_page((tlb), (pte)); \ > +#define __pte_free_tlb(tlb, pte, addr) \ > + do { \ > + pagetable_pte_dtor(page_ptdesc(pte)); \ > + tlb_remove_page_ptdesc((tlb), (page_ptdesc(pte))); \ > } while (0) > > #endif /* _ASM_NIOS2_PGALLOC_H */ > -- > 2.40.1 > > -- Sincerely yours, Mike. From xen-devel-bounces@lists.xenproject.org Wed Jun 14 15:18:16 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 15:18:16 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548974.857252 (Exim 4.92) (envelope-from ) id 1q9SG9-0002B8-Ss; Wed, 14 Jun 2023 15:18:09 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548974.857252; Wed, 14 Jun 2023 15:18:09 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9SG9-0002B1-Pc; Wed, 14 Jun 2023 15:18:09 +0000 Received: by outflank-mailman (input) for mailman id 548974; Wed, 14 Jun 2023 15:18:08 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9SG8-00029H-9T for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 15:18:08 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id a863a5d1-0ac6-11ee-8611-37d641c3527e; Wed, 14 Jun 2023 17:18:04 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id ACE9E63EB4; Wed, 14 Jun 2023 15:18:03 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 67DA4C433C8; Wed, 14 Jun 2023 15:17:56 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: a863a5d1-0ac6-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1686755883; bh=law0Zw5GwZ4vUNNNJfg9xYUAxoAT1vEtTRSmu8uyTiU=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=cB937Fc379p2H6sidrtQvcyE7SjhSVDiQ8fsfmvBYud73st4wP2Qr6CFo6WX9/s01 JYMAIyN+HTRUEnFbhSLa+5Bn06wSCkvLo2zbfe78NcaE+yN0m1csBgyzH+54BdgaWi hkj4tSqaMdn2dDgxx8M+SxKDaATfhmPSw7zNp6q69zKYgpuwrRcJK0OU5fI0Lc5b7j +QW7NONIzYePXcwPMPgPxV4DoA23QefODa2dgADcpUJVKL052M5kYJPDNeYMVnlftS C4Vh7z6LpoOu9Cg6NCMdB+LohoR3p8kQll2UeaT5KBeo1s+c1aEFnsfa9r1LjcJVdi JIaKu8RQMiB8g== Date: Wed, 14 Jun 2023 18:17:26 +0300 From: Mike Rapoport To: "Vishal Moola (Oracle)" Cc: Andrew Morton , Matthew Wilcox , linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , Jonas Bonn Subject: Re: [PATCH v4 28/34] openrisc: Convert __pte_free_tlb() to use ptdescs Message-ID: <20230614151726.GA52412@kernel.org> References: <20230612210423.18611-1-vishal.moola@gmail.com> <20230612210423.18611-29-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20230612210423.18611-29-vishal.moola@gmail.com> On Mon, Jun 12, 2023 at 02:04:17PM -0700, Vishal Moola (Oracle) wrote: > Part of the conversions to replace pgtable constructor/destructors with > ptdesc equivalents. > > Signed-off-by: Vishal Moola (Oracle) Acked-by: Mike Rapoport (IBM) > --- > arch/openrisc/include/asm/pgalloc.h | 8 ++++---- > 1 file changed, 4 insertions(+), 4 deletions(-) > > diff --git a/arch/openrisc/include/asm/pgalloc.h b/arch/openrisc/include/asm/pgalloc.h > index b7b2b8d16fad..c6a73772a546 100644 > --- a/arch/openrisc/include/asm/pgalloc.h > +++ b/arch/openrisc/include/asm/pgalloc.h > @@ -66,10 +66,10 @@ extern inline pgd_t *pgd_alloc(struct mm_struct *mm) > > extern pte_t *pte_alloc_one_kernel(struct mm_struct *mm); > > -#define __pte_free_tlb(tlb, pte, addr) \ > -do { \ > - pgtable_pte_page_dtor(pte); \ > - tlb_remove_page((tlb), (pte)); \ > +#define __pte_free_tlb(tlb, pte, addr) \ > +do { \ > + pagetable_pte_dtor(page_ptdesc(pte)); \ > + tlb_remove_page_ptdesc((tlb), (page_ptdesc(pte))); \ > } while (0) > > #endif > -- > 2.40.1 > > -- Sincerely yours, Mike. From xen-devel-bounces@lists.xenproject.org Wed Jun 14 15:19:46 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 15:19:46 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548981.857262 (Exim 4.92) (envelope-from ) id 1q9SHV-0002qv-6l; Wed, 14 Jun 2023 15:19:33 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548981.857262; Wed, 14 Jun 2023 15:19:33 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9SHV-0002qo-2u; Wed, 14 Jun 2023 15:19:33 +0000 Received: by outflank-mailman (input) for mailman id 548981; Wed, 14 Jun 2023 15:19:31 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9SHT-0002qa-Ca for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 15:19:31 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id db4ae7cb-0ac6-11ee-b232-6b7b168915f2; Wed, 14 Jun 2023 17:19:30 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 1176663EB4; Wed, 14 Jun 2023 15:19:27 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 5818AC433C8; Wed, 14 Jun 2023 15:19:19 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: db4ae7cb-0ac6-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1686755966; bh=c6X3BgGu/EnO13cv7axj+v9K19tCICftWYw//M95Fnc=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=mukQSaSzdQR3OwjUS8vlwj1DHxIFmnMmoNoVkKPQxFhB5yNNsmSGfOiEGD8e6JtXN VZrzNf4q5GRrRBOrFQak3/eBTJY3kdciGuz9dfIz0ogQBeAxF+PTcvQ/gdSnr6B6Ya C9HPAVz2+QHGDvMOZCaBKr/tY2qJeGKCeVCDx4TNXrt2yXr+HZedFR/l+9aCOtZIfW p20G2U+/kfUbEadTA1MzcZsMIBLzRi+uWub7RgdqmiPZpQJB5MtxjDgSgPYQUK2ycp Y3HwjPWpr3Oy82TQpASrv+jsR0EnwOAILsyUfuVeolmVBSHpN9tcvEMjDpzLifkGiY BbULUmkygaTkA== Date: Wed, 14 Jun 2023 18:18:48 +0300 From: Mike Rapoport To: "Vishal Moola (Oracle)" Cc: Andrew Morton , Matthew Wilcox , linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , Palmer Dabbelt Subject: Re: [PATCH v4 29/34] riscv: Convert alloc_{pmd, pte}_late() to use ptdescs Message-ID: <20230614151848.GB52412@kernel.org> References: <20230612210423.18611-1-vishal.moola@gmail.com> <20230612210423.18611-30-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20230612210423.18611-30-vishal.moola@gmail.com> On Mon, Jun 12, 2023 at 02:04:18PM -0700, Vishal Moola (Oracle) wrote: > As part of the conversions to replace pgtable constructor/destructors with > ptdesc equivalents, convert various page table functions to use ptdescs. > > Some of the functions use the *get*page*() helper functions. Convert > these to use pagetable_alloc() and ptdesc_address() instead to help > standardize page tables further. > > Signed-off-by: Vishal Moola (Oracle) > Acked-by: Palmer Dabbelt Acked-by: Mike Rapoport (IBM) > --- > arch/riscv/include/asm/pgalloc.h | 8 ++++---- > arch/riscv/mm/init.c | 16 ++++++---------- > 2 files changed, 10 insertions(+), 14 deletions(-) > > diff --git a/arch/riscv/include/asm/pgalloc.h b/arch/riscv/include/asm/pgalloc.h > index 59dc12b5b7e8..d169a4f41a2e 100644 > --- a/arch/riscv/include/asm/pgalloc.h > +++ b/arch/riscv/include/asm/pgalloc.h > @@ -153,10 +153,10 @@ static inline pgd_t *pgd_alloc(struct mm_struct *mm) > > #endif /* __PAGETABLE_PMD_FOLDED */ > > -#define __pte_free_tlb(tlb, pte, buf) \ > -do { \ > - pgtable_pte_page_dtor(pte); \ > - tlb_remove_page((tlb), pte); \ > +#define __pte_free_tlb(tlb, pte, buf) \ > +do { \ > + pagetable_pte_dtor(page_ptdesc(pte)); \ > + tlb_remove_page_ptdesc((tlb), page_ptdesc(pte));\ > } while (0) > #endif /* CONFIG_MMU */ > > diff --git a/arch/riscv/mm/init.c b/arch/riscv/mm/init.c > index 3d689ffb2072..6bfeec80bf4e 100644 > --- a/arch/riscv/mm/init.c > +++ b/arch/riscv/mm/init.c > @@ -354,12 +354,10 @@ static inline phys_addr_t __init alloc_pte_fixmap(uintptr_t va) > > static phys_addr_t __init alloc_pte_late(uintptr_t va) > { > - unsigned long vaddr; > - > - vaddr = __get_free_page(GFP_KERNEL); > - BUG_ON(!vaddr || !pgtable_pte_page_ctor(virt_to_page((void *)vaddr))); > + struct ptdesc *ptdesc = pagetable_alloc(GFP_KERNEL, 0); > > - return __pa(vaddr); > + BUG_ON(!ptdesc || !pagetable_pte_ctor(ptdesc)); > + return __pa((pte_t *)ptdesc_address(ptdesc)); > } > > static void __init create_pte_mapping(pte_t *ptep, > @@ -437,12 +435,10 @@ static phys_addr_t __init alloc_pmd_fixmap(uintptr_t va) > > static phys_addr_t __init alloc_pmd_late(uintptr_t va) > { > - unsigned long vaddr; > - > - vaddr = __get_free_page(GFP_KERNEL); > - BUG_ON(!vaddr || !pgtable_pmd_page_ctor(virt_to_page((void *)vaddr))); > + struct ptdesc *ptdesc = pagetable_alloc(GFP_KERNEL, 0); > > - return __pa(vaddr); > + BUG_ON(!ptdesc || !pagetable_pmd_ctor(ptdesc)); > + return __pa((pmd_t *)ptdesc_address(ptdesc)); > } > > static void __init create_pmd_mapping(pmd_t *pmdp, > -- > 2.40.1 > > -- Sincerely yours, Mike. From xen-devel-bounces@lists.xenproject.org Wed Jun 14 15:20:15 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 15:20:15 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548984.857271 (Exim 4.92) (envelope-from ) id 1q9SI0-0003vj-Da; Wed, 14 Jun 2023 15:20:04 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548984.857271; Wed, 14 Jun 2023 15:20:04 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9SI0-0003uv-AZ; Wed, 14 Jun 2023 15:20:04 +0000 Received: by outflank-mailman (input) for mailman id 548984; Wed, 14 Jun 2023 15:20:02 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9SHy-0002qa-Gi for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 15:20:02 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id ee26a3a3-0ac6-11ee-b232-6b7b168915f2; Wed, 14 Jun 2023 17:20:01 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id BD89F61F65; Wed, 14 Jun 2023 15:20:00 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 9DADCC433C8; Wed, 14 Jun 2023 15:19:52 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: ee26a3a3-0ac6-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1686756000; bh=pvs0YVME2yJhlMmiS60aNyWkmP4h1eZnbjNjnr8k7aE=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=gpQZOD1HFnMrM9fo4KdT8pfiKgkiDnXqITSqdsPxwtYIOIx2PBHkeiXHNgWscAcgu 7Ludmi0rX4hJke5WXXLAQEn2uCuzmmwp55/iPdSkzGfbm3/7b6D/ARVdqBcqHg2PuT IpiZPKRPo311M/7dwEqLNTB4eEbaoSqrCh9SmEM/Nh700FMYjNTJ646BJmkGOl+ViX wyn9wHmVrmWWVolNGJf0+VJI/kXJrLoD+WGEjfmqa8ga4rLQqqHlxKBhJuM4wDRcU2 FeUYfth8UqkvYnAB19GLBf6adak/YgfNGfdLVnkPWuFE7ylBYlwtenSYSzQgRBwuNz fifauRpCnWIdg== Date: Wed, 14 Jun 2023 18:19:21 +0300 From: Mike Rapoport To: "Vishal Moola (Oracle)" Cc: Andrew Morton , Matthew Wilcox , linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , Yoshinori Sato , Geert Uytterhoeven , John Paul Adrian Glaubitz Subject: Re: [PATCH v4 30/34] sh: Convert pte_free_tlb() to use ptdescs Message-ID: <20230614151921.GC52412@kernel.org> References: <20230612210423.18611-1-vishal.moola@gmail.com> <20230612210423.18611-31-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20230612210423.18611-31-vishal.moola@gmail.com> On Mon, Jun 12, 2023 at 02:04:19PM -0700, Vishal Moola (Oracle) wrote: > Part of the conversions to replace pgtable constructor/destructors with > ptdesc equivalents. Also cleans up some spacing issues. > > Signed-off-by: Vishal Moola (Oracle) > Reviewed-by: Geert Uytterhoeven > Acked-by: John Paul Adrian Glaubitz Acked-by: Mike Rapoport (IBM) > --- > arch/sh/include/asm/pgalloc.h | 9 +++++---- > 1 file changed, 5 insertions(+), 4 deletions(-) > > diff --git a/arch/sh/include/asm/pgalloc.h b/arch/sh/include/asm/pgalloc.h > index a9e98233c4d4..5d8577ab1591 100644 > --- a/arch/sh/include/asm/pgalloc.h > +++ b/arch/sh/include/asm/pgalloc.h > @@ -2,6 +2,7 @@ > #ifndef __ASM_SH_PGALLOC_H > #define __ASM_SH_PGALLOC_H > > +#include > #include > > #define __HAVE_ARCH_PMD_ALLOC_ONE > @@ -31,10 +32,10 @@ static inline void pmd_populate(struct mm_struct *mm, pmd_t *pmd, > set_pmd(pmd, __pmd((unsigned long)page_address(pte))); > } > > -#define __pte_free_tlb(tlb,pte,addr) \ > -do { \ > - pgtable_pte_page_dtor(pte); \ > - tlb_remove_page((tlb), (pte)); \ > +#define __pte_free_tlb(tlb, pte, addr) \ > +do { \ > + pagetable_pte_dtor(page_ptdesc(pte)); \ > + tlb_remove_page_ptdesc((tlb), (page_ptdesc(pte))); \ > } while (0) > > #endif /* __ASM_SH_PGALLOC_H */ > -- > 2.40.1 > > -- Sincerely yours, Mike. From xen-devel-bounces@lists.xenproject.org Wed Jun 14 15:21:01 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 15:21:01 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548990.857281 (Exim 4.92) (envelope-from ) id 1q9SIj-0004jq-MV; Wed, 14 Jun 2023 15:20:49 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548990.857281; Wed, 14 Jun 2023 15:20:49 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9SIj-0004jj-Jl; Wed, 14 Jun 2023 15:20:49 +0000 Received: by outflank-mailman (input) for mailman id 548990; Wed, 14 Jun 2023 15:20:47 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9SIh-0004jT-Pa for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 15:20:47 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [2604:1380:4641:c500::1]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 08305fea-0ac7-11ee-8611-37d641c3527e; Wed, 14 Jun 2023 17:20:45 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 6917063A46; Wed, 14 Jun 2023 15:20:44 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 8D7CFC433C8; Wed, 14 Jun 2023 15:20:36 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 08305fea-0ac7-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1686756043; bh=96hB/Dutg7+YAlKNWDoQ2GAzZAZD6BC/gRuTrx6fMnE=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=PFKiOvSreJTfh5Xtv6ubZJTR9fklehqu0ZAN5wgMUW/sLqZjohhJPxRlmW70y9tfb MJLE0xzsHXtV1/gKV+4z7tPzVs1ZREMtj8U0/znRVOW0O8y6uNIHnGpjzdr49RBrYC xBb5NI93jS0qUzMwboMr7y3y4ocYh19ocFZmLT8j7b8qsMYlxYS9jlizQt+L95Bpg7 ZJLiQdwmzorCuBbqjkmB8vgbIliB9r128kkEi0yENbNqrP9+TzrpqoRpFbndP1I//x MAHASOLZvbHnJOfb7hXUM8MLSqBbEToS6swaIXlfv1V66JK3DzG4OV417sT6SCG7QR ESRbrUE0cTyFQ== Date: Wed, 14 Jun 2023 18:20:05 +0300 From: Mike Rapoport To: "Vishal Moola (Oracle)" Cc: Andrew Morton , Matthew Wilcox , linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "David S. Miller" Subject: Re: [PATCH v4 31/34] sparc64: Convert various functions to use ptdescs Message-ID: <20230614152005.GD52412@kernel.org> References: <20230612210423.18611-1-vishal.moola@gmail.com> <20230612210423.18611-32-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20230612210423.18611-32-vishal.moola@gmail.com> On Mon, Jun 12, 2023 at 02:04:20PM -0700, Vishal Moola (Oracle) wrote: > As part of the conversions to replace pgtable constructor/destructors with > ptdesc equivalents, convert various page table functions to use ptdescs. > > Signed-off-by: Vishal Moola (Oracle) Acked-by: Mike Rapoport (IBM) > --- > arch/sparc/mm/init_64.c | 17 +++++++++-------- > 1 file changed, 9 insertions(+), 8 deletions(-) > > diff --git a/arch/sparc/mm/init_64.c b/arch/sparc/mm/init_64.c > index 04f9db0c3111..105915cd2eee 100644 > --- a/arch/sparc/mm/init_64.c > +++ b/arch/sparc/mm/init_64.c > @@ -2893,14 +2893,15 @@ pte_t *pte_alloc_one_kernel(struct mm_struct *mm) > > pgtable_t pte_alloc_one(struct mm_struct *mm) > { > - struct page *page = alloc_page(GFP_KERNEL | __GFP_ZERO); > - if (!page) > + struct ptdesc *ptdesc = pagetable_alloc(GFP_KERNEL | __GFP_ZERO, 0); > + > + if (!ptdesc) > return NULL; > - if (!pgtable_pte_page_ctor(page)) { > - __free_page(page); > + if (!pagetable_pte_ctor(ptdesc)) { > + pagetable_free(ptdesc); > return NULL; > } > - return (pte_t *) page_address(page); > + return ptdesc_address(ptdesc); > } > > void pte_free_kernel(struct mm_struct *mm, pte_t *pte) > @@ -2910,10 +2911,10 @@ void pte_free_kernel(struct mm_struct *mm, pte_t *pte) > > static void __pte_free(pgtable_t pte) > { > - struct page *page = virt_to_page(pte); > + struct ptdesc *ptdesc = virt_to_ptdesc(pte); > > - pgtable_pte_page_dtor(page); > - __free_page(page); > + pagetable_pte_dtor(ptdesc); > + pagetable_free(ptdesc); > } > > void pte_free(struct mm_struct *mm, pgtable_t pte) > -- > 2.40.1 > > > _______________________________________________ > linux-riscv mailing list > linux-riscv@lists.infradead.org > http://lists.infradead.org/mailman/listinfo/linux-riscv -- Sincerely yours, Mike. From xen-devel-bounces@lists.xenproject.org Wed Jun 14 15:21:36 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 15:21:36 +0000 Received: from list by lists.xenproject.org with outflank-mailman.548998.857292 (Exim 4.92) (envelope-from ) id 1q9SJT-0005Ml-3i; Wed, 14 Jun 2023 15:21:35 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 548998.857292; Wed, 14 Jun 2023 15:21:35 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9SJT-0005Me-0y; Wed, 14 Jun 2023 15:21:35 +0000 Received: by outflank-mailman (input) for mailman id 548998; Wed, 14 Jun 2023 15:21:34 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9SJS-00059p-6H for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 15:21:34 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 24cbd02f-0ac7-11ee-b232-6b7b168915f2; Wed, 14 Jun 2023 17:21:33 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 66B1D63A8D; Wed, 14 Jun 2023 15:21:32 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 7A344C433C8; Wed, 14 Jun 2023 15:21:24 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 24cbd02f-0ac7-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1686756091; bh=il/HQfNL/uVoI8Ww57mtbKzYiPMAc1DKtiQkMGOtIfk=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=EVqVK3+cHzzM3I6jLTXFddZxbFNGPyRkmUP04L3rXdQHtkhROZjeS4xs716iEeHdI 3NTDNl7d+xttJku6jL5Vp2AtMEzW22vWDWbwjll2V8vVRNY23vhOyS7i+LK0LxbXdw FLa/cSLNMXXmsxuzrxQhCn+drunkS9V+mQxgMLtHYqy48lWC0KA1CxMftayd+ywuMN LLMWJKOOtCwfpjAWz8cODynASF/ygJUUKBwEscMZxGpjyvRIOPidi0xPpAYKGa2gya /E5L+RC/PloG4xdfJOfUmDMA7VZBXAl85QlMPjo/CmXi01rcsEFX+MuFeeezAt7qfD tIubuOBxrNFBw== Date: Wed, 14 Jun 2023 18:20:53 +0300 From: Mike Rapoport To: "Vishal Moola (Oracle)" Cc: Andrew Morton , Matthew Wilcox , linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "David S. Miller" Subject: Re: [PATCH v4 32/34] sparc: Convert pgtable_pte_page_{ctor, dtor}() to ptdesc equivalents Message-ID: <20230614152053.GE52412@kernel.org> References: <20230612210423.18611-1-vishal.moola@gmail.com> <20230612210423.18611-33-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20230612210423.18611-33-vishal.moola@gmail.com> On Mon, Jun 12, 2023 at 02:04:21PM -0700, Vishal Moola (Oracle) wrote: > Part of the conversions to replace pgtable pte constructor/destructors with > ptdesc equivalents. > > Signed-off-by: Vishal Moola (Oracle) Acked-by: Mike Rapoport (IBM) > --- > arch/sparc/mm/srmmu.c | 5 +++-- > 1 file changed, 3 insertions(+), 2 deletions(-) > > diff --git a/arch/sparc/mm/srmmu.c b/arch/sparc/mm/srmmu.c > index 13f027afc875..8393faa3e596 100644 > --- a/arch/sparc/mm/srmmu.c > +++ b/arch/sparc/mm/srmmu.c > @@ -355,7 +355,8 @@ pgtable_t pte_alloc_one(struct mm_struct *mm) > return NULL; > page = pfn_to_page(__nocache_pa((unsigned long)ptep) >> PAGE_SHIFT); > spin_lock(&mm->page_table_lock); > - if (page_ref_inc_return(page) == 2 && !pgtable_pte_page_ctor(page)) { > + if (page_ref_inc_return(page) == 2 && > + !pagetable_pte_ctor(page_ptdesc(page))) { > page_ref_dec(page); > ptep = NULL; > } > @@ -371,7 +372,7 @@ void pte_free(struct mm_struct *mm, pgtable_t ptep) > page = pfn_to_page(__nocache_pa((unsigned long)ptep) >> PAGE_SHIFT); > spin_lock(&mm->page_table_lock); > if (page_ref_dec_return(page) == 1) > - pgtable_pte_page_dtor(page); > + pagetable_pte_dtor(page_ptdesc(page)); > spin_unlock(&mm->page_table_lock); > > srmmu_free_nocache(ptep, SRMMU_PTE_TABLE_SIZE); > -- > 2.40.1 > > -- Sincerely yours, Mike. From xen-devel-bounces@lists.xenproject.org Wed Jun 14 15:22:08 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 15:22:08 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549001.857302 (Exim 4.92) (envelope-from ) id 1q9SJz-0005qv-BJ; Wed, 14 Jun 2023 15:22:07 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549001.857302; Wed, 14 Jun 2023 15:22:07 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9SJz-0005qo-8N; Wed, 14 Jun 2023 15:22:07 +0000 Received: by outflank-mailman (input) for mailman id 549001; Wed, 14 Jun 2023 15:22:06 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9SJx-0005qa-Ut for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 15:22:05 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 378568ad-0ac7-11ee-b232-6b7b168915f2; Wed, 14 Jun 2023 17:22:05 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id D3FB163FB4; Wed, 14 Jun 2023 15:22:03 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id CB0F1C433C0; Wed, 14 Jun 2023 15:21:55 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 378568ad-0ac7-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1686756123; bh=JJW2yi8jE1xj4PNXmFMp5BSxmEmVsW21Z/BKD3ijRqA=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=haxUs5/rQ77/llId2yHHxl+zVtdTrLbyvMnIz3tsRFOuBfKBsufDFPpl6sJMFJSpX XdXGa/cXbRpEhaCxlcG6vxqZV4ZzAZgnbLFIXOUhwM8Ua9bXir/zJSNTjBAjZ03+JP UcP/tVhaYEkS/wXO6HoiCL3DGRWNQpiMx2frieXMXFBs/EuOP4yKcsZnjumnh7yMwt mljclEUSRo9j+Uj9+qbtKqWdq7GxEjZQSCnkNZEtTei1kMdLBLTj7XgI45NhwTOXr3 4sBfJLEgvF707hwHqU6mKKWZix4M1FcPGJaAO0WdwWeDGAbdHkQfY6WNHFdb0Gm/o2 ZyO+xqT///0Fg== Date: Wed, 14 Jun 2023 18:21:25 +0300 From: Mike Rapoport To: "Vishal Moola (Oracle)" Cc: Andrew Morton , Matthew Wilcox , linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , Richard Weinberger Subject: Re: [PATCH v4 33/34] um: Convert {pmd, pte}_free_tlb() to use ptdescs Message-ID: <20230614152125.GF52412@kernel.org> References: <20230612210423.18611-1-vishal.moola@gmail.com> <20230612210423.18611-34-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20230612210423.18611-34-vishal.moola@gmail.com> On Mon, Jun 12, 2023 at 02:04:22PM -0700, Vishal Moola (Oracle) wrote: > Part of the conversions to replace pgtable constructor/destructors with > ptdesc equivalents. Also cleans up some spacing issues. > > Signed-off-by: Vishal Moola (Oracle) Acked-by: Mike Rapoport (IBM) > --- > arch/um/include/asm/pgalloc.h | 18 +++++++++--------- > 1 file changed, 9 insertions(+), 9 deletions(-) > > diff --git a/arch/um/include/asm/pgalloc.h b/arch/um/include/asm/pgalloc.h > index 8ec7cd46dd96..de5e31c64793 100644 > --- a/arch/um/include/asm/pgalloc.h > +++ b/arch/um/include/asm/pgalloc.h > @@ -25,19 +25,19 @@ > */ > extern pgd_t *pgd_alloc(struct mm_struct *); > > -#define __pte_free_tlb(tlb,pte, address) \ > -do { \ > - pgtable_pte_page_dtor(pte); \ > - tlb_remove_page((tlb),(pte)); \ > +#define __pte_free_tlb(tlb, pte, address) \ > +do { \ > + pagetable_pte_dtor(page_ptdesc(pte)); \ > + tlb_remove_page_ptdesc((tlb), (page_ptdesc(pte))); \ > } while (0) > > #ifdef CONFIG_3_LEVEL_PGTABLES > > -#define __pmd_free_tlb(tlb, pmd, address) \ > -do { \ > - pgtable_pmd_page_dtor(virt_to_page(pmd)); \ > - tlb_remove_page((tlb),virt_to_page(pmd)); \ > -} while (0) \ > +#define __pmd_free_tlb(tlb, pmd, address) \ > +do { \ > + pagetable_pmd_dtor(virt_to_ptdesc(pmd)); \ > + tlb_remove_page_ptdesc((tlb), virt_to_ptdesc(pmd)); \ > +} while (0) > > #endif > > -- > 2.40.1 > > -- Sincerely yours, Mike. From xen-devel-bounces@lists.xenproject.org Wed Jun 14 15:24:17 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 15:24:17 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549008.857312 (Exim 4.92) (envelope-from ) id 1q9SM3-0006a5-Ll; Wed, 14 Jun 2023 15:24:15 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549008.857312; Wed, 14 Jun 2023 15:24:15 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9SM3-0006Zy-J4; Wed, 14 Jun 2023 15:24:15 +0000 Received: by outflank-mailman (input) for mailman id 549008; Wed, 14 Jun 2023 15:24:14 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9SM2-0006Zs-4s for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 15:24:14 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [2604:1380:4641:c500::1]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 8393e24a-0ac7-11ee-b232-6b7b168915f2; Wed, 14 Jun 2023 17:24:12 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 6D872643A9; Wed, 14 Jun 2023 15:24:11 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 3EFE1C433C0; Wed, 14 Jun 2023 15:24:03 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 8393e24a-0ac7-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1686756250; bh=DYUjdElx66wwW56gbS6Oam3+Ri1YVeFJgUO5WJxkfRA=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=F2VfAIa6x+BTq6Vf7GKpNIQ4VRxhW1RinP9K8UayobTe9Tk8E5+Sq7cmwZZRn0d1y 26CB8picqZJFxo5+mLk+dJnultBctEPc1n6TEIPPARJJzXHv+f/Pgy45b2HV/isl3Y gb/2jcktaHSMftse5jDK8hl+l0HD7oQErPJyL7pw0t1TXRYQmrQl+fKIONYs1PTSvS z8NvkUUtJo2edNsOz3fzHHy16sEmRifJKVrKC5RW3D9o58C7GKLfTiOHZj9zfeqH0l Z6HqMiy17H4r/WPjR88En22k7c9F1SxwlZ7LkQb5J7xPFN1zqBm3yUfunH4M/rparU rulVeBuEQZAuA== Date: Wed, 14 Jun 2023 18:23:33 +0300 From: Mike Rapoport To: "Vishal Moola (Oracle)" Cc: Andrew Morton , Matthew Wilcox , linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins Subject: Re: [PATCH v4 34/34] mm: Remove pgtable_{pmd, pte}_page_{ctor, dtor}() wrappers Message-ID: <20230614152333.GG52412@kernel.org> References: <20230612210423.18611-1-vishal.moola@gmail.com> <20230612210423.18611-35-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <20230612210423.18611-35-vishal.moola@gmail.com> On Mon, Jun 12, 2023 at 02:04:23PM -0700, Vishal Moola (Oracle) wrote: > These functions are no longer necessary. Remove them and cleanup > Documentation referencing them. > > Signed-off-by: Vishal Moola (Oracle) I've found one stale reference in riscv: $ git grep -n pgtable_pmd_page_ctor arch/riscv/mm/init.c:440: BUG_ON(!vaddr || !pgtable_pmd_page_ctor(virt_to_page(vaddr))); Otherwise Acked-by: Mike Rapoport (IBM) > --- > Documentation/mm/split_page_table_lock.rst | 12 +++++------ > .../zh_CN/mm/split_page_table_lock.rst | 14 ++++++------- > include/linux/mm.h | 20 ------------------- > 3 files changed, 13 insertions(+), 33 deletions(-) > > diff --git a/Documentation/mm/split_page_table_lock.rst b/Documentation/mm/split_page_table_lock.rst > index 50ee0dfc95be..4bffec728340 100644 > --- a/Documentation/mm/split_page_table_lock.rst > +++ b/Documentation/mm/split_page_table_lock.rst > @@ -53,7 +53,7 @@ Support of split page table lock by an architecture > =================================================== > > There's no need in special enabling of PTE split page table lock: everything > -required is done by pgtable_pte_page_ctor() and pgtable_pte_page_dtor(), which > +required is done by pagetable_pte_ctor() and pagetable_pte_dtor(), which > must be called on PTE table allocation / freeing. > > Make sure the architecture doesn't use slab allocator for page table > @@ -63,8 +63,8 @@ This field shares storage with page->ptl. > PMD split lock only makes sense if you have more than two page table > levels. > > -PMD split lock enabling requires pgtable_pmd_page_ctor() call on PMD table > -allocation and pgtable_pmd_page_dtor() on freeing. > +PMD split lock enabling requires pagetable_pmd_ctor() call on PMD table > +allocation and pagetable_pmd_dtor() on freeing. > > Allocation usually happens in pmd_alloc_one(), freeing in pmd_free() and > pmd_free_tlb(), but make sure you cover all PMD table allocation / freeing > @@ -72,7 +72,7 @@ paths: i.e X86_PAE preallocate few PMDs on pgd_alloc(). > > With everything in place you can set CONFIG_ARCH_ENABLE_SPLIT_PMD_PTLOCK. > > -NOTE: pgtable_pte_page_ctor() and pgtable_pmd_page_ctor() can fail -- it must > +NOTE: pagetable_pte_ctor() and pagetable_pmd_ctor() can fail -- it must > be handled properly. > > page->ptl > @@ -92,7 +92,7 @@ trick: > split lock with enabled DEBUG_SPINLOCK or DEBUG_LOCK_ALLOC, but costs > one more cache line for indirect access; > > -The spinlock_t allocated in pgtable_pte_page_ctor() for PTE table and in > -pgtable_pmd_page_ctor() for PMD table. > +The spinlock_t allocated in pagetable_pte_ctor() for PTE table and in > +pagetable_pmd_ctor() for PMD table. > > Please, never access page->ptl directly -- use appropriate helper. > diff --git a/Documentation/translations/zh_CN/mm/split_page_table_lock.rst b/Documentation/translations/zh_CN/mm/split_page_table_lock.rst > index 4fb7aa666037..a2c288670a24 100644 > --- a/Documentation/translations/zh_CN/mm/split_page_table_lock.rst > +++ b/Documentation/translations/zh_CN/mm/split_page_table_lock.rst > @@ -56,16 +56,16 @@ Hugetlb特定的辅助函数: > 架构对分页表锁的支持 > ==================== > > -没有必要特别启用PTE分页表锁:所有需要的东西都由pgtable_pte_page_ctor() > -和pgtable_pte_page_dtor()完成,它们必须在PTE表分配/释放时被调用。 > +没有必要特别启用PTE分页表锁:所有需要的东西都由pagetable_pte_ctor() > +和pagetable_pte_dtor()完成,它们必须在PTE表分配/释放时被调用。 > > 确保架构不使用slab分配器来分配页表:slab使用page->slab_cache来分配其页 > 面。这个区域与page->ptl共享存储。 > > PMD分页锁只有在你有两个以上的页表级别时才有意义。 > > -启用PMD分页锁需要在PMD表分配时调用pgtable_pmd_page_ctor(),在释放时调 > -用pgtable_pmd_page_dtor()。 > +启用PMD分页锁需要在PMD表分配时调用pagetable_pmd_ctor(),在释放时调 > +用pagetable_pmd_dtor()。 > > 分配通常发生在pmd_alloc_one()中,释放发生在pmd_free()和pmd_free_tlb() > 中,但要确保覆盖所有的PMD表分配/释放路径:即X86_PAE在pgd_alloc()中预先 > @@ -73,7 +73,7 @@ PMD分页锁只有在你有两个以上的页表级别时才有意义。 > > 一切就绪后,你可以设置CONFIG_ARCH_ENABLE_SPLIT_PMD_PTLOCK。 > > -注意:pgtable_pte_page_ctor()和pgtable_pmd_page_ctor()可能失败--必 > +注意:pagetable_pte_ctor()和pagetable_pmd_ctor()可能失败--必 > 须正确处理。 > > page->ptl > @@ -90,7 +90,7 @@ page->ptl用于访问分割页表锁,其中'page'是包含该表的页面struc > 的指针并动态分配它。这允许在启用DEBUG_SPINLOCK或DEBUG_LOCK_ALLOC的 > 情况下使用分页锁,但由于间接访问而多花了一个缓存行。 > > -PTE表的spinlock_t分配在pgtable_pte_page_ctor()中,PMD表的spinlock_t > -分配在pgtable_pmd_page_ctor()中。 > +PTE表的spinlock_t分配在pagetable_pte_ctor()中,PMD表的spinlock_t > +分配在pagetable_pmd_ctor()中。 > > 请不要直接访问page->ptl - -使用适当的辅助函数。 > diff --git a/include/linux/mm.h b/include/linux/mm.h > index dc211c43610b..6d83483cf186 100644 > --- a/include/linux/mm.h > +++ b/include/linux/mm.h > @@ -2897,11 +2897,6 @@ static inline bool pagetable_pte_ctor(struct ptdesc *ptdesc) > return true; > } > > -static inline bool pgtable_pte_page_ctor(struct page *page) > -{ > - return pagetable_pte_ctor(page_ptdesc(page)); > -} > - > static inline void pagetable_pte_dtor(struct ptdesc *ptdesc) > { > struct folio *folio = ptdesc_folio(ptdesc); > @@ -2911,11 +2906,6 @@ static inline void pagetable_pte_dtor(struct ptdesc *ptdesc) > lruvec_stat_sub_folio(folio, NR_PAGETABLE); > } > > -static inline void pgtable_pte_page_dtor(struct page *page) > -{ > - pagetable_pte_dtor(page_ptdesc(page)); > -} > - > #define pte_offset_map_lock(mm, pmd, address, ptlp) \ > ({ \ > spinlock_t *__ptl = pte_lockptr(mm, pmd); \ > @@ -3006,11 +2996,6 @@ static inline bool pagetable_pmd_ctor(struct ptdesc *ptdesc) > return true; > } > > -static inline bool pgtable_pmd_page_ctor(struct page *page) > -{ > - return pagetable_pmd_ctor(page_ptdesc(page)); > -} > - > static inline void pagetable_pmd_dtor(struct ptdesc *ptdesc) > { > struct folio *folio = ptdesc_folio(ptdesc); > @@ -3020,11 +3005,6 @@ static inline void pagetable_pmd_dtor(struct ptdesc *ptdesc) > lruvec_stat_sub_folio(folio, NR_PAGETABLE); > } > > -static inline void pgtable_pmd_page_dtor(struct page *page) > -{ > - pagetable_pmd_dtor(page_ptdesc(page)); > -} > - > /* > * No scalability reason to split PUD locks yet, but follow the same pattern > * as the PMD locks to make it easier if we decide to. The VM should not be > -- > 2.40.1 > > -- Sincerely yours, Mike. From xen-devel-bounces@lists.xenproject.org Wed Jun 14 15:51:24 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 15:51:24 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549014.857325 (Exim 4.92) (envelope-from ) id 1q9Sm4-0001eg-M3; Wed, 14 Jun 2023 15:51:08 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549014.857325; Wed, 14 Jun 2023 15:51:08 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9Sm4-0001eZ-IP; Wed, 14 Jun 2023 15:51:08 +0000 Received: by outflank-mailman (input) for mailman id 549014; Wed, 14 Jun 2023 15:51:07 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9Sm3-0001eT-JE for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 15:51:07 +0000 Received: from EUR05-DB8-obe.outbound.protection.outlook.com (mail-db8eur05on20624.outbound.protection.outlook.com [2a01:111:f400:7e1a::624]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 455f099f-0acb-11ee-b232-6b7b168915f2; Wed, 14 Jun 2023 17:51:05 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by AS8PR04MB8868.eurprd04.prod.outlook.com (2603:10a6:20b:42f::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.46; Wed, 14 Jun 2023 15:51:03 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.039; Wed, 14 Jun 2023 15:51:02 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 455f099f-0acb-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=gC0YdSkOOExGXKq2kXY8pspk8hVYJWZffVKNnCAfWrubhlulcpXLFwH0Lerzwy1mokLe6wdgQvsEGH7T64PdK59FWmjIEdhn291rpqP3XdraSNd1UB3MLK/XNLOmuTlUmbyx+FyOgke/Qp5ILjPPqUW5uckPWeMev3XNCid54A0I7FwjWB/ddyCtRI7O+F3vt2Bqt4PbfP5bqw/agXU4vHr31wX7gi9TiSfzFSLxNIDAIG6E6Bqt/XT+Fu/PNbwKtm/o2T/rSwjsV+VZp3wN8SEX8hmXoP3XFXBxQ+XzgCCsAVLb/FpA0UDfRC6CE6oJniHh8OIpxxOgfSUWpfcjJA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=BeHIlHKmwY1bKrJgC9kiwaBmKl6aT+BO47L1/JIGvL0=; b=VmJp2FyDvASyk+w2QvdPjwisVyHqMFH7ATFUjgZi2SrC7fT9c93sEmwfC8VbhbUifsFKI5DvT1SVlxP1fyfxau0ym6n/feBMrMKXoyaS5npv7jbTAasjT7ogoeRjd1Eiq2wP5J7PKEkFu8CG2dmwLrcbjXwdUJlSMFF5NGlPBfKeeDbEJEWzJtWWQqi2nCb/RmrHh+BgUoMAZyloRMsx8sBVcaI6A9ogxZMHtME3BItmJ6pFPSnK7WCi2zlexAYe7/B/hQt1Y0XSNPsjLUxhx6wIlVFh9oeHlittuqNjIHRuFJfJU9Xbjvud7ehv9vSXyzkh2krL/EJ7Bow8TChHkw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=BeHIlHKmwY1bKrJgC9kiwaBmKl6aT+BO47L1/JIGvL0=; b=NFspO1bE/KfS5VTWUrGMGc6pEI0hu3NfmAhe8yp3LW83EVqWaXCf40MCtN6cdJzgADty0pcvwvti3pKkMusNK2PDqPO+LIv+C7ekZ/7h33iu6IrgDw7yrdXidP96x3U2QDm+TqJz+jiAGVoNO5yMKnTeYJhi1yrHseoqUxWf9uUVG3MEkNZZzBA9Ci+mC671XIr26b88tOZQLolfvmU3l5ZbmQGhZAwgRW8p8XLTfYtWOMSRj/AgZnca6YAIbRn4LdFw7R6gRYT1Ab60GXnddUi4JaCfHfBALl06WsgzgOIueVXV/tOuNrVlGp+87uCDYdp/buJd0iCmG+g5Pe+riA== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: Date: Wed, 14 Jun 2023 17:51:00 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v3 2/4] xen: Add files needed for minimal ppc64le build Content-Language: en-US To: Shawn Anastasio Cc: tpearson@raptorengineering.com, Andrew Cooper , George Dunlap , Julien Grall , Stefano Stabellini , Wei Liu , Shawn Anastasio , xen-devel@lists.xenproject.org References: From: Jan Beulich In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR3P281CA0208.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:a5::18) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|AS8PR04MB8868:EE_ X-MS-Office365-Filtering-Correlation-Id: 47d166ac-bf68-4ef2-e5ed-08db6cef27c8 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 4lXhRH2j7b18z3m5mP0YTAHlwV3EjCdcbMONhsEpnCjnxxYMVkHEBZ2oNGdpjKURCvAtoEQnpyccKG+bwfO83z0vIjg8zvD7GMp4fqJacur7AbALCjnHzouJ3+UUdufNLajEwl1ohPM/CmBPwoCqL+fWS6QK4/yMoQrAJMUO3Z+D+NWY/hk+M//+iN/gLH7EC1Q6c1626U/Tc0LaBoEXWVUTxHJm92Ai9sFP59DbBaONyIiSdedqHiaylZUHlVXk+qzGjRaER2UN3htExl8GvOX02xByZ3Yo4qPjhIeMt5bwlPtw0adnXxYT+jbP4bHYi5pMY37CYlB9b32BDq8YLmVgVKybZs6anm/7XCDbjF5BrZNSIIvoNmhlTBmrAbPS4W8SY746Et7pS/J2f1FzreQ9eGEoctbqyI1crCUQFqPOs1HGy2rF8Is2BZZb0ZggYA7yBgUHqtKFRWUhZc0ad/VQcMA9If54BPpLY7NYJTAh/sCY5OXG8ZFTgpagP9I2Xk/ltesmU+t3IeV9QmxVmDOg7Kig4hcRdHe1ZtKbex9a4jJHVnClUxGLVsVCjBQdzbBp0Bm25YFEeW9FvTl+LCoVSQHeCJaaMD5n90c9l7uP2/XIPdtmadnVX3PYWy0CcOx9repF1hkWO5hiuNqIrQ== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(39860400002)(346002)(136003)(366004)(396003)(376002)(451199021)(54906003)(5660300002)(66556008)(4326008)(8676002)(41300700001)(8936002)(6916009)(66946007)(2616005)(478600001)(66476007)(316002)(38100700002)(186003)(26005)(83380400001)(6486002)(6506007)(6512007)(53546011)(31696002)(86362001)(2906002)(36756003)(31686004)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?RFpYUE5XQXhzTGwvY1VSdWVGc0luTWI0WlM4ZmwrMVVNdXlsVHIxeFpEbkdQ?= =?utf-8?B?K3hYQWF2VGlXRXpUNTVQMzg1dUlIaVhKKy81aEhCRnd2Z052SVlzN2Vzb3hG?= =?utf-8?B?NE1SZlg3TWYrR3gwNFYvdXpaUzJtU01xSmpENHpTWVVHZEZQSGNrMGZaZlg2?= =?utf-8?B?RjFUVmZIV1FOWFlhRGNTWDQ3Q0NIaVo1UU1mdzYwelU4Y1cvSlRQYmQzT2dq?= =?utf-8?B?ZUJZejQyUHJJSVkrNGhUbVJIcThFVW5ZdUcrSUR3MWNtZzZobm9LWG5YVHdY?= =?utf-8?B?bEJXM29YQkpIbU50bCtReExBUnE2RGRCU284NEhteTI4QUtSWGVPTDdLYTZO?= =?utf-8?B?UHZ6QUcyR3duUEZRZ3lGSFdFNGZjeXNDb2ovaFdJMzBWVjkxQ2wrQUM3WXl2?= =?utf-8?B?cEJYS2dwK2Rta3VKeXk0LzFibVZXVFNic25yTU9STzFwY05yMWI0dzJEWE9h?= =?utf-8?B?Q2Z5aTdmZmxkQ1FzNklUd1NHeEl1VFJ6R3NWanczWE5xVzVGYURSbG1QTmF0?= =?utf-8?B?RFQ3Z2I3STRObU9wQnl6QnpmZC95Tk9sWFF5YlRhMGpqdEhRaFUxYTBiUFBs?= =?utf-8?B?VUlWenM4T2haRm1KOFI3b2VCblcxWW42ZkZCSWNyczJRS0xORms2Nk0rbXFY?= =?utf-8?B?bUVlS3FsNjNrWlo2R3BhRElrRHdKYlpIQ3g5YUxmbkhjL3dhdGJhemtHaXAw?= =?utf-8?B?T0hmNGRLd3pYVzlseTNhZENMKzFCdmFRSWswMzZ3VUlZQ0tOczEwNDV3cmg0?= =?utf-8?B?bE9vQ1VvaWRmSHBxK1hqOExQUUlRbTE5RU0yVGpLajg3eWdnSjc4bHJzalZ3?= =?utf-8?B?TXdkalpMMExwL0NkMC80T2xPZS9jQWZOelhwcEtoMVhkTjI1ZlF2cFY5T1FY?= =?utf-8?B?MU9ad3lnRU9vaU5EZmdqYjhqVVJEZEEvN2ZnN0UrRXVqL1NTMTFlckhlQ0hP?= =?utf-8?B?QW5lSU1QaVFYYzdPQmk4RmJjWFFrdTZFWWhtS2NYVkg4SDhEdVQwZ1N2TytX?= =?utf-8?B?cjZmK3FVbGtMcTZORjBkbGtCQUNlV2t5WUJ1WFR6ZHhaWWR5c0hXdkNzSVBE?= =?utf-8?B?ejNObFo5QnowZkVMTnJKejhmUmxQZGF5aVJaOGtZTXVsVnc0NnJ0THhrUFg1?= =?utf-8?B?eG85WmlROWFKVWd0azRVR2Izd2tHNFNaVzBLMlBQQkFBbms0WlpDYTUwNkdv?= =?utf-8?B?cUZEUkxKSXNwbFZNTlNBaTI3bnBSNS9QdXpkczczUmJGbTJLc21jVnJJSkV4?= =?utf-8?B?OFNyU2ZwdG5FdHFaQkdxSWx6YU5HeTU0ZTFqSFJ1MnpBMlpuZjFmbVRlT0Nq?= =?utf-8?B?U1p2d2VPZ2xKNGVhN1JiVkRQSnhIc0cvUlNOdFNBMkxDQ0JTdksxWlA3MVBS?= =?utf-8?B?b1NhakhweGJSY2lQVzAyaUtyeTNRSk5WRWJMdWhXVTc2bGhzMEQ1bzgrY3Fr?= =?utf-8?B?dDRjZHZwL1lKZVZsek4xOTFxaW5CRjFDZjRROWtNSEY2WTVSb1c0dmpubVJk?= =?utf-8?B?U1RQaUxCOFJNQ3E5d1JTaTZpV2o1a1dTTDArSzlMZFRyVFREbDJjYnZOMnh2?= =?utf-8?B?MkpPcERmTVN1R0xPU1pWZHRwN1ExU0tHaE9wTVJ4MUkyUmtEeW9UOUNoTmRt?= =?utf-8?B?azQyd3VoWE1zMWI3bkpRTGp4cEc2c2RJdGMvcW8vUEQzcWZCOXAwSElzZ21G?= =?utf-8?B?V2FqMlJDT2kwSXdDVTByMmdwZlZWTUNieEFRNGJldHphUmtpOGVNcjBwTHdM?= =?utf-8?B?RlQrKzQ5KzlJN0JRaE5ySlhtQXJQMjZNR0c1bUlSd29XcmtCdGEyNityU0Ru?= =?utf-8?B?TmpGaWNSalp6ZXVPQWgwQitOQk5kL1VNTDNISGVNU2diY1lYaFpWSndKalE3?= =?utf-8?B?TEdxY0dqUWY4dzd0WVBDZ2ptUmNocDVyTGF4VFd4UVB3c3J3SHkraVcxR292?= =?utf-8?B?enVtditRQ3pFQ3RIMTJyK0VoWnF2NlZJdWphcmw2bFJ3U2JoVmRoaTkzQ0lE?= =?utf-8?B?d0tIUHJOL3M2eDNNWktndTRVbVlBaENlS1d6WUdXb3cwQ2lMQTJrUmxTTmlh?= =?utf-8?B?VFlwQXBnYm1FMDJzMEtRQzdRbVpFSHdKY0NmdHhqWit6cmlxZ0J6U3BzNk1X?= =?utf-8?Q?mU+nGiRJsCVKaLBkMBwRv9T+6?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 47d166ac-bf68-4ef2-e5ed-08db6cef27c8 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Jun 2023 15:51:02.5029 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: jvKlCkDoH5NkvuEyKQyL2pnRkpePoanbMSdfte6HcQgMBy3l+kVGVeARJGbpPxpvkOG5+pcrzmJ2gH4hB0dTdQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB8868 On 13.06.2023 16:50, Shawn Anastasio wrote: > --- /dev/null > +++ b/xen/arch/ppc/Makefile > @@ -0,0 +1,16 @@ > +obj-$(CONFIG_PPC64) += ppc64/ > + > +$(TARGET): $(TARGET)-syms > + cp -f $< $@ > + > +$(TARGET)-syms: $(objtree)/prelink.o $(obj)/xen.lds > + $(LD) $(XEN_LDFLAGS) -T $(obj)/xen.lds -N $< $(build_id_linker) -o $@ > + $(NM) -pa --format=sysv $(@D)/$(@F) \ > + | $(objtree)/tools/symbols --all-symbols --xensyms --sysv --sort \ > + >$(@D)/$(@F).map Elsewhere we recently switched these uses of $(@D)/$(@F) to just $@. Please can you do so here as well? > --- /dev/null > +++ b/xen/arch/ppc/arch.mk > @@ -0,0 +1,11 @@ > +######################################## > +# Power-specific definitions > + > +ppc-march-$(CONFIG_POWER_ISA_2_07B) := power8 > +ppc-march-$(CONFIG_POWER_ISA_3_00) := power9 > + > +CFLAGS += -mcpu=$(ppc-march-y) -mstrict-align -mcmodel=large -mabi=elfv2 -mno-altivec -mno-vsx Wouldn't it make sense to also pass -mlittle here, such that a tool chain defaulting to big-endian can still be used? > --- /dev/null > +++ b/xen/arch/ppc/ppc64/head.S > @@ -0,0 +1,27 @@ > +/* SPDX-License-Identifier: GPL-2.0-or-later */ > + > +.section .text.header, "ax", %progbits > + > +ENTRY(start) > + /* > + * Depending on how we were booted, the CPU could be running in either > + * Little Endian or Big Endian mode. The following trampoline from Linux > + * cleverly uses an instruction that encodes to a NOP if the CPU's > + * endianness matches the assumption of the assembler (LE, in our case) > + * or a branch to code that performs the endian switch in the other case. > + */ > + tdi 0, 0, 0x48 /* Reverse endian of b . + 8 */ > + b $ + 44 /* Skip trampoline if endian is good */ If I get this right, $ and . are interchangable on Power? If not, then all is fine and there likely is a reason to use . in the comment but $ in the code. But if so, it would be nice if both could match, and I guess with other architectures in mind . would be preferable. > --- /dev/null > +++ b/xen/arch/ppc/xen.lds.S > @@ -0,0 +1,173 @@ > +#include > + > +#undef ENTRY > +#undef ALIGN > + > +OUTPUT_ARCH(powerpc:common64) > +ENTRY(start) > + > +PHDRS > +{ > + text PT_LOAD ; > +#if defined(BUILD_ID) > + note PT_NOTE ; > +#endif > +} > + > +/** > + * OF's base load address is 0x400000 (XEN_VIRT_START). > + * By defining sections this way, we can keep our virtual address base at 0x400000 > + * while keeping the physical base at 0x0. > + * > + * Without this, OF incorrectly loads .text at 0x400000 + 0x400000 = 0x800000. > + * Taken from x86/xen.lds.S > + */ > +#ifdef CONFIG_LD_IS_GNU > +# define DECL_SECTION(x) x : AT(ADDR(#x) - XEN_VIRT_START) > +#else > +# define DECL_SECTION(x) x : AT(ADDR(x) - XEN_VIRT_START) > +#endif > + > +SECTIONS > +{ > + . = XEN_VIRT_START; > + > + DECL_SECTION(.text) { > + _stext = .; /* Text section */ > + *(.text.header) > + > + *(.text.cold) > + *(.text.unlikely .text.*_unlikely .text.unlikely.*) > + > + *(.text) > +#ifdef CONFIG_CC_SPLIT_SECTIONS > + *(.text.*) > +#endif > + > + *(.fixup) > + *(.gnu.warning) > + . = ALIGN(POINTER_ALIGN); > + _etext = .; /* End of text section */ > + } :text > + > + . = ALIGN(PAGE_SIZE); > + DECL_SECTION(.rodata) { > + _srodata = .; /* Read-only data */ > + *(.rodata) > + *(.rodata.*) > + *(.data.rel.ro) > + *(.data.rel.ro.*) > + > + VPCI_ARRAY > + > + . = ALIGN(POINTER_ALIGN); > + _erodata = .; /* End of read-only data */ > + } :text > + > + #if defined(BUILD_ID) > + . = ALIGN(4); > + DECL_SECTION(.note.gnu.build-id) { > + __note_gnu_build_id_start = .; > + *(.note.gnu.build-id) > + __note_gnu_build_id_end = .; > + } :note :text > + #endif > + _erodata = .; /* End of read-only data */ > + > + . = ALIGN(PAGE_SIZE); > + DECL_SECTION(.data.ro_after_init) { > + __ro_after_init_start = .; > + *(.data.ro_after_init) > + . = ALIGN(PAGE_SIZE); > + __ro_after_init_end = .; > + } : text > + > + DECL_SECTION(.data.read_mostly) { > + *(.data.read_mostly) > + } :text > + > + . = ALIGN(PAGE_SIZE); > + DECL_SECTION(.data) { /* Data */ > + *(.data.page_aligned) > + . = ALIGN(8); > + __start_schedulers_array = .; > + *(.data.schedulers) > + __end_schedulers_array = .; > + > + HYPFS_PARAM > + > + *(.data .data.*) > + CONSTRUCTORS > + } :text > + > + . = ALIGN(PAGE_SIZE); /* Init code and data */ > + __init_begin = .; > + DECL_SECTION(.init.text) { > + _sinittext = .; > + *(.init.text) > + _einittext = .; > + . = ALIGN(PAGE_SIZE); /* Avoid mapping alt insns executable */ > + } :text > + > + . = ALIGN(PAGE_SIZE); > + DECL_SECTION(.init.data) { > + *(.init.rodata) > + *(.init.rodata.*) > + > + . = ALIGN(POINTER_ALIGN); > + __setup_start = .; > + *(.init.setup) > + __setup_end = .; > + > + __initcall_start = .; > + *(.initcallpresmp.init) > + __presmp_initcall_end = .; > + *(.initcall1.init) > + __initcall_end = .; > + > + LOCK_PROFILE_DATA > + > + *(.init.data) > + *(.init.data.rel) > + *(.init.data.rel.*) > + > + . = ALIGN(8); > + __ctors_start = .; > + *(.ctors) > + *(.init_array) > + *(SORT(.init_array.*)) > + __ctors_end = .; > + } :text > + . = ALIGN(POINTER_ALIGN); > + __init_end = .; Up to here I think I agree with all uses of ALIGN(), but ... > + DECL_SECTION(.bss) { /* BSS */ > + __bss_start = .; > + *(.bss.stack_aligned) > + . = ALIGN(PAGE_SIZE); > + *(.bss.page_aligned) ... the one between the two .bss parts looks unmotivated. Within a section definition ALIGN() typically only makes sense when followed by a label definition, like ... > + . = ALIGN(PAGE_SIZE); > + __per_cpu_start = .; ... here. > + *(.bss.percpu.page_aligned) > + *(.bss.percpu) > + . = ALIGN(SMP_CACHE_BYTES); This one is an exception, as it is intended to separate the read-mostly part such that there's no shared cache line. Jan > + *(.bss.percpu.read_mostly) > + . = ALIGN(SMP_CACHE_BYTES); > + __per_cpu_data_end = .; > + *(.bss .bss.*) > + . = ALIGN(POINTER_ALIGN); > + __bss_end = .; > + } :text > + _end = . ; > + > + /* Section for the device tree blob (if any). */ > + DECL_SECTION(.dtb) { *(.dtb) } :text > + > + DWARF2_DEBUG_SECTIONS > + > + DISCARD_SECTIONS > + > + STABS_DEBUG_SECTIONS > + > + ELF_DETAILS_SECTIONS > +} From xen-devel-bounces@lists.xenproject.org Wed Jun 14 16:07:20 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 16:07:20 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549021.857335 (Exim 4.92) (envelope-from ) id 1q9T1f-0003pA-1G; Wed, 14 Jun 2023 16:07:15 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549021.857335; Wed, 14 Jun 2023 16:07:15 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9T1e-0003p3-UQ; Wed, 14 Jun 2023 16:07:14 +0000 Received: by outflank-mailman (input) for mailman id 549021; Wed, 14 Jun 2023 16:07:13 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9T1d-0003ow-JD for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 16:07:13 +0000 Received: from EUR02-DB5-obe.outbound.protection.outlook.com (mail-db5eur02on2062c.outbound.protection.outlook.com [2a01:111:f400:fe12::62c]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 84e3a10b-0acd-11ee-8611-37d641c3527e; Wed, 14 Jun 2023 18:07:11 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by AM8PR04MB7428.eurprd04.prod.outlook.com (2603:10a6:20b:1d5::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.29; Wed, 14 Jun 2023 16:07:09 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.039; Wed, 14 Jun 2023 16:07:09 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 84e3a10b-0acd-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=WTWsfBpLpasMfkThWChAB8V0+DXx1CEP8PmJ773huzZuSabhu4Jr+a2dZq+dukmV8dm7F36Opdrgajqhn42uq8ITVy/TsljQNcm62kmYmESXR6exrMwhdnqcFb5K5x6R3XGztRySBlWu6QuLmDlk1x7fe8Lo0JDkkqTPWa9peBPEXwyda/6Nsg3QpCiy6HPnj4vSf7zmJSZqg1ufV4I2R/Rf7uAbFVnQF0voSCKWYbvnA/SF5AoVzscFSYRao6I6BNYEhgsTBqAl9ati92a76o8InQoQuHsmE6A5cKJIQwwJPECi40l5z8QuyhabGv4/aAI5FmNxKH8am8YH5UJo1Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=fdLN1IgKFlYB0/23G0Y7VBn558guk0oug7RQ6CXwIjY=; b=nn6YPNA1d6wRMtsvvLEWjL4TdUhDzfq+3Un98cp3NpqMX8HOtsH3GT7KczQwO6WqEi806INmflPZS3kwJKZxuiKPkXj6+nsqtYLOKOV3Cxz5zvKf/lzwb+j+lffzUWh7fceGu2woUUfgXGUqVRZ5iM8IJXLR9NnNwBOFboRoBGpoCg1fp6pIUSIX7so4CRQ2p+My88N7MzkO+lVFamN4d9PkxoLSCapneP15oTWYdMh1qgnxoNdRlHwYypzsxh6k8mHTCCnF1ra5hmLn2K0Hcs90BaYASbkFnHkS3unebgH76g2uc2RUrZVUHSLvu4WCPE88NSR8arMPlLTrXrUlMQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=fdLN1IgKFlYB0/23G0Y7VBn558guk0oug7RQ6CXwIjY=; b=0jjJZ/RhJfN5k/p1UI8A4LTogNaiCL0PDdRNNYCU7SCjW09ROr8zvjHHoe/jEgRfw+C02DN4kSZYysWLxiqzvixZ8PiHbqPOGFKTaaPT17yPbtb+/hLvJM/QaoZ981OF4pK+7p9KQsmW4JIEQo22aL5VGUXHj+T0R7eRyFldzb8vDNaw+oAZRKaebrwn8CaiHTWYN37RqVMh6D4a9vLb1aiuo3dgHN628j0ttH0yEFAMKulm0afDW6vAA2gpuq0xhSqeGtgL52k0mq2s814Mrxtv57R3qorelKKpQaPEbg1Q8Nxv8GFzhX4CmYOi9a0mvSRDFwEMtVNUMoFFamvP5g== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <303b0288-d372-315b-16f9-4116d7f478fc@suse.com> Date: Wed, 14 Jun 2023 18:07:07 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Content-Language: en-US To: "xen-devel@lists.xenproject.org" Cc: Julien Grall , Stefano Stabellini , Volodymyr Babchuk , Bertrand Marquis From: Jan Beulich Subject: [PATCH] Arm: drop bogus ALIGN() from linker script Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR3P281CA0010.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:1d::9) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|AM8PR04MB7428:EE_ X-MS-Office365-Filtering-Correlation-Id: bc105a4e-f4df-4b4c-fe0c-08db6cf167ed X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: CjnV98rAxzPGPfHfZTJk6ybBctV/8IoR7Qne5zy3v3HwUXe4XNieVGjl+GsfznOQA2+dHwEHnOwGgZ03wQajX99QeKNsAA5d0mkVmIpptLjDlyLFmlOde5OYcdcxoV6gjiMr73FHvLwpU06tXN/yRNPgGA/4pIW30b4MYe+yg1J1RY7OR14VDqPFL/p8yx+DBk+vLlKBesPAvboY0H3wxfbPaL6PSb2vbngbWXoaC0lfckgwawidUYSWyN5QKcQqiN1Mn90lOrNzL+Rw2SFCYp5bH0/UdOXTKf5OpP7CQKiToP2e2uzhV6vAysjpQzWk46/bzZq5N8CaR2xLQ/G/yCLcxyJTpvcKGzyO2NTeXv13oLAQDBeKjL/1pMjcZAIgR+5FLYHTZNr1F27yQSHtDkip5+UgOGzz9KUoVGCg5uweWhYDAeukyqQf+oo801MSIHfnGsRNP4QoAu6VhhSMbM6zq2EfS6PUw7czXAuHBznDGRWU/D2+8logv2WaQVRz7jfFZOdA6I5BXSy3nSIciGlQtKGzIIiqidithqgUVNRDXgEhf3PbBxR6oBCdXYXK9TxegzTZPO+5Oiw4jK/oIctNaxcV4iY4XO0mjhY0RetbdlaBq+QS194xhPhGB9A0M4PlfqcU58DBVweaBmhRMg== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(136003)(39860400002)(376002)(346002)(366004)(396003)(451199021)(6486002)(86362001)(36756003)(83380400001)(2616005)(31696002)(38100700002)(6512007)(6506007)(26005)(186003)(2906002)(4744005)(54906003)(6916009)(316002)(4326008)(41300700001)(31686004)(66476007)(5660300002)(478600001)(66556008)(66946007)(8676002)(8936002)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?Q1c1NGtqdHc0YVVpNG5ST0VSY1ZCSC9tZE5iWVdCdWt1NzZjTkl4ZThPZE0z?= =?utf-8?B?a20yck0rUnRBV3lMTUxCRTJwWFhQN0Q4U1N1dVpTZU9GUWwrRE5ZTFhaOEo1?= =?utf-8?B?MjJFZUw0RGpBbVQxQ0xqRGdvNDhlS1o5QXJxSGhQMWNVRGFoci9wd013S0Yw?= =?utf-8?B?Z0oydCttUXZOQzBvbUpOWXNFV1ZkSXVlNURpNjdhMjN0S0RQWkdnelpkZCsx?= =?utf-8?B?RnpxM3FiL014dXVHQ3lSekoxVWNCUENWaENlS01SeUk4RXBSUTVVTmJnUTRW?= =?utf-8?B?L1lYS2UxTVJpdXNIdXZvKzdnY2ZvN0YyMm1nYTc5T1hLRmlEZ3lzaWV2Qlds?= =?utf-8?B?UzhhbWJndXhtMTNydHZGWnB2bCsrWWVaOU5aVTRlazhITjB4MWs0SG1wbkp5?= =?utf-8?B?dWJ0R0UrQ2w4ZVFDWUoyL2RtUTBXUW9BM09oYVNjbmJZbXJrczNDb3JhTlo0?= =?utf-8?B?ZG1vU2ptS3RiUXdoSkd4V1Z5S05HcTJ1dlFxdzVyQWRVbHN4OTZWVVBoY05l?= =?utf-8?B?OHZ5dmx3YzM4MGsvN01EbjNwTDNwNERScWZVZ25oNFR6akhqd3NxTUxQZFZF?= =?utf-8?B?TGRGMytINS9ra1hTMUlVaGVKN1J3cCs3alVkL2ZPUFJoSzMzdXloYVFvUGE1?= =?utf-8?B?NlI1YzNBTURzK1dOMk91SWw2UWlPblZuL0NqQkpXZXVDblF4Slc2MlN1dVZv?= =?utf-8?B?TjJ2cVdyRVlVY1NBL1ljdllsZ3VnaDEyWlg2anlzay9WUS9nSE9Fb3R0TWtz?= =?utf-8?B?Z3lmalNzWTR2TUg1N1RJZ3R4UGpjcEI5RUU2QmprUmtxWTI0VGhJM3p1QSt2?= =?utf-8?B?WFdpeE9yVWxFUWtydGRZL3UvVExQd0p1UVNyZ3I3QWtTbGh4T0JXUS9ieW1w?= =?utf-8?B?VzZYbGYrcmZXSXpuUXY2MGZNdVFTVmhhZURQdUZOdnM2Q3IrWmV0SG1HSGc4?= =?utf-8?B?TzVUaytaTDlrWjN5WEtvR2RiUkNDdjUyS2pjWnQ3bUZvR2c2WHdRdmpoV2o5?= =?utf-8?B?dTVGdGRObndMWWJDQVdkcStiQTdQWEt5bXJVOUtzcmJweUxrZlNldnNvOTFz?= =?utf-8?B?VVIwTGVUYWg5V0tyQy94RGpPN28wa1VvelNrem93b1ZEdEtlVVFRZ1ByRTRj?= =?utf-8?B?Q1lScFJSNjlUYWhpWFpBbWx3YVdFdDlLUThuT05OTzhuQm9WRE5wV3RWL3dl?= =?utf-8?B?Q1lZWHJ3TWtqV2hMK0hwdW1hZ1M5TEJxVU1qZlE4Ni94THpOcTZsSXMxNE5k?= =?utf-8?B?QTJrZ3J0elVZMEQrM05KWGdGSnJFQVpMaVh6UnVhTkVxSnF0S2lFVkZIZzlL?= =?utf-8?B?cUQ0NnFsYTRlMVh5ZzNkOERid2hrNndwMy9nQjhtU2h6NHUzWHNLNTJpcnpJ?= =?utf-8?B?Q2duRXRCOEJRQml2Mm05TmVLZXdUUy9PajdkNW05R0orazdmYlVTczg3T0Vw?= =?utf-8?B?UW1FRHQxVFZxM2RHOVpEYnJKMThndmliaEZQRG1pUktBc1MwcjJUL2ZqUWlH?= =?utf-8?B?MmlXWUpsb0dsUzV4WVVoNUxJemRTUiswR2ZBQmNlZWhTQlhZM1lsMlZLbjdT?= =?utf-8?B?UlEvRXFyNnlaOStleVRHK1VscFBMa003OVF6TkFRVThtRHp2VlIwK2VKZ3M1?= =?utf-8?B?RmkrcldGSG5JMlo2WGNuelF4M0J4MHpERm1pczgreTVwNXF5SW85U2Y4dEtT?= =?utf-8?B?Y21rbHIybjFaZGV4YVJkaHd6QTZzMWtNOXNCekE4QTNNNlQ5Q3dnS2dlcVEy?= =?utf-8?B?citCKytBdlJxb1Y2bldMR2RYS09pWHBtUitoRnJ2RDNsdGRqcEVUUkk2T1RW?= =?utf-8?B?dFhEa3ljLzB0Q2E0c0VQb2ljck9vL0VidkFnNUh1WVJBT3VmcnF6VjRmWGxq?= =?utf-8?B?MDhTT0szV2ZNdXFIeGhhcWNMMHV5T0dHZTg0NXZhNmsrcm1NcGU4MndXMWdn?= =?utf-8?B?QmI1dWF0WXpFR2lXRkZZUlV5UjNvZDVkUzd1bDg4cGcxMkZ5dStKWVgzYllW?= =?utf-8?B?QmxKdEh6UFN1a3B6MTV6MmNXZ0k0ajN5MFVTR2Q0QUxLOC9LaU4xaU5ZN3JN?= =?utf-8?B?QVB6Q3VrUVlQbmhyYW1yTWJDaDBVYUorMFdna3VrbnFWeGpndDVvcUprdTdD?= =?utf-8?Q?4I5/ffRqQQj5iZ2zB4K1AEIhS?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: bc105a4e-f4df-4b4c-fe0c-08db6cf167ed X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Jun 2023 16:07:09.0937 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: Ahu8Jf9sUjVWLVzpX4Z1NuPjD0Q17tbgDGXoAIaHhuR0ZAFuHWTUEeG9odG4FeR9QRH1ci0tdE/9cWktuS4AAA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM8PR04MB7428 Having ALIGN() inside a section definition usually makes sense only with a label definition following (an exception case is a few lines out of context, where cache line sharing is intended to be avoided). Constituents of .bss.page_aligned need to specify their own alignment correctly anyway, or else they're susceptible to link order changing. This requirement is already met: Arm-specific code has no such object, while common (EFI) code has another one. That one has suitable alignment specified. Signed-off-by: Jan Beulich --- Note how RISC-V had this dropped pretty recently. --- a/xen/arch/arm/xen.lds.S +++ b/xen/arch/arm/xen.lds.S @@ -199,7 +199,6 @@ SECTIONS .bss : { /* BSS */ __bss_start = .; *(.bss.stack_aligned) - . = ALIGN(PAGE_SIZE); *(.bss.page_aligned) . = ALIGN(PAGE_SIZE); __per_cpu_start = .; From xen-devel-bounces@lists.xenproject.org Wed Jun 14 16:23:37 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 16:23:37 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549028.857347 (Exim 4.92) (envelope-from ) id 1q9THD-0006EU-Ct; Wed, 14 Jun 2023 16:23:19 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549028.857347; Wed, 14 Jun 2023 16:23:19 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9THD-0006EN-9o; Wed, 14 Jun 2023 16:23:19 +0000 Received: by outflank-mailman (input) for mailman id 549028; Wed, 14 Jun 2023 16:23:18 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9THB-0006E8-VV for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 16:23:17 +0000 Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id c365f86f-0acf-11ee-8611-37d641c3527e; Wed, 14 Jun 2023 18:23:15 +0200 (CEST) Received: from [192.168.1.125] (unknown [176.206.20.8]) by support.bugseng.com (Postfix) with ESMTPSA id 7EB674EE0738; Wed, 14 Jun 2023 18:23:14 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: c365f86f-0acf-11ee-8611-37d641c3527e Message-ID: Date: Wed, 14 Jun 2023 18:23:13 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: Functions _spin_lock_cb() and handle_ro_raz() Content-Language: en-US To: Jan Beulich Cc: xen-devel@lists.xenproject.org References: <4c13ea0f-9e53-62b2-feb8-45381d4f652b@suse.com> From: Federico Serafini Organization: BUGSENG srl In-Reply-To: <4c13ea0f-9e53-62b2-feb8-45381d4f652b@suse.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit On 14/06/23 16:03, Jan Beulich wrote: > On 14.06.2023 15:08, Federico Serafini wrote: >> Hello everyone, >> >> I am working on the violations of MISRA C:2012 Rule 8.10, >> whose headline says: >> "An inline function shall be declared with the static storage class". >> >> For both ARM64 and X86_64 builds, >> function _spin_lock_cb() defined in spinlock.c violates the rule. >> Such function is declared in spinlock.h without >> the inline function specifier: are there any reasons to do this? > Since this function was mentioned elsewhere already, I'm afraid I > have to be a little blunt and ask back: Did you check the history > of the function. Yes, it is intentional to be that way, for the > function to be inlined into _spin_lock(), and for it to also be > available for external callers (we have just one right now, but > that could change). > >> What about solving the violation by moving the function definition in >> spinlock.h and declaring it as static inline? > Did you try whether that would work at least purely mechanically? > I'm afraid you'll find that it doesn't, because of LOCK_PROFILE_* > being unavailable then. Yet we also don't want to expose all that > in the header. > > In the earlier context I did suggest already to make the function > an always-inline one in spinlock.c, under a slightly altered name, > and then have _spin_lock_cb() be a trivial wrapper just like > _spin_lock() is. I guess best is going to be if I make and post a > patch ... > > Jan Thank you for the information. Federico From xen-devel-bounces@lists.xenproject.org Wed Jun 14 16:27:07 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 16:27:07 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549035.857358 (Exim 4.92) (envelope-from ) id 1q9TKr-0006q3-Sf; Wed, 14 Jun 2023 16:27:05 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549035.857358; Wed, 14 Jun 2023 16:27:05 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9TKr-0006pw-P2; Wed, 14 Jun 2023 16:27:05 +0000 Received: by outflank-mailman (input) for mailman id 549035; Wed, 14 Jun 2023 16:27:04 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9TKq-0006pW-9V for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 16:27:04 +0000 Received: from esa3.hc3370-68.iphmx.com (esa3.hc3370-68.iphmx.com [216.71.145.155]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 4974450a-0ad0-11ee-8611-37d641c3527e; Wed, 14 Jun 2023 18:27:01 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 4974450a-0ad0-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686760021; h=from:to:cc:subject:date:message-id:mime-version: content-transfer-encoding; bh=XX7YppEKZlH1WqyJ0YIc01s0i6uoLco8Wx3ZU7yKGJU=; b=OMzhBa47OkOGA4WmfeeVJb0FbBN4tgJvnv4dBLlbHjbNmPh/ZM+L38BK o9LkCcYboFx37sO6hgGWhK1UMLmrEIQjopoXYd/1ZB8A97icXl1rDQpnb uJGDQx+rStvRi1mM4vUtu8DAUGd+tGNVPfVyrt3UHI84J5djpMeMgWUSZ c=; Authentication-Results: esa3.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none X-SBRS: 4.0 X-MesageID: 112803798 X-Ironport-Server: esa3.hc3370-68.iphmx.com X-Remote-IP: 162.221.156.123 X-Policy: $RELAYED IronPort-Data: A9a23:qX/4d6BMRmoqChVW/9Xjw5YqxClBgxIJ4kV8jS/XYbTApGkg0WZRx 2YcCD2CPvzeajehco13YdvkpB8HuMXVm9NrQQY4rX1jcSlH+JHPbTi7wuUcHAvJd5GeExg3h yk6QoOdRCzhZiaE/n9BCpC48T8nk/nOHuGmYAL9EngZbRd+Tys8gg5Ulec8g4p56fC0GArIs t7pyyHlEAbNNwVcbCRMs8pvlDs15K6p4G1B4gRkDRx2lAS2e0c9Xcp3yZ6ZdxMUcqEMdsamS uDKyq2O/2+x13/B3fv8z94X2mVTKlLjFVDmZkh+AsBOsTAbzsAG6Y4pNeJ0VKtio27hc+ada jl6ncfYpQ8BZsUgkQmGOvVSO3kW0aZuoNcrLZUj2CA6IoKvn3bEmp1T4E8K0YIw+c1tWDBU6 9AkEhsuSxzSl8DumbClc7w57igjBJGD0II3v3hhyXfSDOo8QICFSKLPjTNa9G5u3IYUR6+YP pdHL2M1N3wsYDUWUrsTILs4kP2lmT/UdDpApUjOjaE2/3LS3Ep6172F3N/9I4XQFZ0OwRfIz o7A12/eL0gIP/ed82fbrDH3msTzgQDqWI1HQdVU8dY12QbOlwT/EiY+RVa95PW0lEO6c9ZeM FAPvDojq7Ao806mRcW7WAe3yFaGsQQVX954Gugz+gaLjKHT5m6xBGIJUzpAY9wOr9ItSHoh0 Vrht8jyGTVlvbmRSHSc3rSZtzW/PW4SN2BqTTAAZRsI5Z/kuo5bphDSStduFoalg9uzHiv/q xi0qyw5i6QWnNQ8/ayx9lDagBqhvpHMCAUy423/VG+/8hlwYoLjYoWy8EXa9t5JNoPfRV6E1 EXogODHsrpIV8vU0nXQHqNURurBC+u53CP0gnV1Rsg76RiRwVWAWIwB8BMmfUV3C5NREdP2W 3M/qT+99bcKYiv0M/UrO93tYyg55fO+TIq4D5g4evILO8EsL1HfoUmCcGbKhwjQfF4QfbbT0 HtxWeKlFj4kBKtu11JarM9NgOZwlkjSKY4+LK0XLihLMpLEPhZ5sZ9fbDOzghoFxK2Fuh7J1 N1UKtGHzR5SOMWnPHmJr95KdwxScyhmbXwTlyCwXrTaSjeK5Ul7U6OBqV/fU9ENc1tpehfgo SjmBx4wJKvXjnzbMwSaAk2Pm5u2NauTWUkTZHR2VX7xgihLXGpaxPtHH7MtY6Id/fBupdYtC aFtlzOoXq4eFVwqOl01MfHAkWCVXE/63l3eZHH7MGNXklwJb1Whx+IItzDHrEEmZhdbf+Nny 1F8/ms3maY+ejk= IronPort-HdrOrdr: A9a23:i+fX1qymQC6Ble5g78ZuKrPwIr1zdoMgy1knxilNoH1uHvBw8v rEoB1173DJYVoqNk3I++rhBEDwexLhHPdOiOF6UItKNzOW21dAQrsSiLfK8nnNHDD/6/4Y9Y oISdkbNDQoNykZsfrH X-Talos-CUID: =?us-ascii?q?9a23=3AFFBGCGjKM5/TGnbFdNyZBwsrETJucVbHlSbKPWO?= =?us-ascii?q?EM01KbbHEWX3IoaF6qp87?= X-Talos-MUID: =?us-ascii?q?9a23=3ATnJUqQ+bauPiSdru1jaIkfSQf8xPzv28A2sPq8h?= =?us-ascii?q?Y5YrfKQdMJxSMjDviFw=3D=3D?= X-IronPort-AV: E=Sophos;i="6.00,243,1681185600"; d="scan'208";a="112803798" From: Andrew Cooper To: Xen-devel CC: Andrew Cooper , Julien Grall , Jan Beulich , Jan Beulich , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Wei Liu , Stefano Stabellini , Julien Grall , Volodymyr Babchuk , Bertrand Marquis Subject: [PATCH v2] xen/grant: Purge PIN_FAIL() Date: Wed, 14 Jun 2023 17:26:46 +0100 Message-ID: <20230614162646.3230716-1-andrew.cooper3@citrix.com> X-Mailer: git-send-email 2.30.2 MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit The name PIN_FAIL() is poor; it's not used only pinning failures. More importantly, it interferes with code legibility by hiding control flow. Expand and drop it. * Drop redundant "rc = rc" assignment * Rework gnttab_copy_buf() to be simpler by dropping the rc variable As a side effect, this fixes several violations of MISRA rule 2.1 (dead code - the while() following a goto). No functional change. Signed-off-by: Andrew Cooper Reviewed-by: Julien Grall Reviewed-by: Jan Beulich --- CC: Jan Beulich CC: Roger Pau Monné CC: Wei Liu CC: Stefano Stabellini CC: Julien Grall CC: Volodymyr Babchuk CC: Bertrand Marquis v2: * Fix indentation. * Reword the commit message a little. --- xen/common/grant_table.c | 154 ++++++++++++++++++++++++++++----------- 1 file changed, 111 insertions(+), 43 deletions(-) diff --git a/xen/common/grant_table.c b/xen/common/grant_table.c index d87e58a53d86..89b7811c51c3 100644 --- a/xen/common/grant_table.c +++ b/xen/common/grant_table.c @@ -270,13 +270,6 @@ struct gnttab_unmap_common { #define GNTTAB_UNMAP_BATCH_SIZE 32 -#define PIN_FAIL(_lbl, _rc, _f, _a...) \ - do { \ - gdprintk(XENLOG_WARNING, _f, ## _a ); \ - rc = (_rc); \ - goto _lbl; \ - } while ( 0 ) - /* * Tracks a mapping of another domain's grant reference. Each domain has a * table of these, indexes into which are returned as a 'mapping handle'. @@ -785,9 +778,13 @@ static int _set_status_v1(const grant_entry_header_t *shah, /* If not already pinned, check the grant domid and type. */ if ( !act->pin && (((scombo.flags & mask) != GTF_permit_access) || (scombo.domid != ldomid)) ) - PIN_FAIL(done, GNTST_general_error, + { + gdprintk(XENLOG_WARNING, "Bad flags (%x) or dom (%d); expected d%d\n", scombo.flags, scombo.domid, ldomid); + rc = GNTST_general_error; + goto done; + } new = scombo; new.flags |= GTF_reading; @@ -796,8 +793,12 @@ static int _set_status_v1(const grant_entry_header_t *shah, { new.flags |= GTF_writing; if ( unlikely(scombo.flags & GTF_readonly) ) - PIN_FAIL(done, GNTST_general_error, + { + gdprintk(XENLOG_WARNING, "Attempt to write-pin a r/o grant entry\n"); + rc = GNTST_general_error; + goto done; + } } prev.raw = guest_cmpxchg(rd, raw_shah, scombo.raw, new.raw); @@ -805,8 +806,11 @@ static int _set_status_v1(const grant_entry_header_t *shah, break; if ( retries++ == 4 ) - PIN_FAIL(done, GNTST_general_error, - "Shared grant entry is unstable\n"); + { + gdprintk(XENLOG_WARNING, "Shared grant entry is unstable\n"); + rc = GNTST_general_error; + goto done; + } scombo = prev; } @@ -840,9 +844,13 @@ static int _set_status_v2(const grant_entry_header_t *shah, ((((scombo.flags & mask) != GTF_permit_access) && (mapflag || ((scombo.flags & mask) != GTF_transitive))) || (scombo.domid != ldomid)) ) - PIN_FAIL(done, GNTST_general_error, + { + gdprintk(XENLOG_WARNING, "Bad flags (%x) or dom (%d); expected d%d, flags %x\n", scombo.flags, scombo.domid, ldomid, mask); + rc = GNTST_general_error; + goto done; + } if ( readonly ) { @@ -851,8 +859,12 @@ static int _set_status_v2(const grant_entry_header_t *shah, else { if ( unlikely(scombo.flags & GTF_readonly) ) - PIN_FAIL(done, GNTST_general_error, + { + gdprintk(XENLOG_WARNING, "Attempt to write-pin a r/o grant entry\n"); + rc = GNTST_general_error; + goto done; + } *status |= GTF_reading | GTF_writing; } @@ -870,9 +882,11 @@ static int _set_status_v2(const grant_entry_header_t *shah, (!readonly && (scombo.flags & GTF_readonly)) ) { gnttab_clear_flags(rd, GTF_writing | GTF_reading, status); - PIN_FAIL(done, GNTST_general_error, + gdprintk(XENLOG_WARNING, "Unstable flags (%x) or dom (%d); expected d%d (r/w: %d)\n", scombo.flags, scombo.domid, ldomid, !readonly); + rc = GNTST_general_error; + goto done; } } else @@ -880,8 +894,9 @@ static int _set_status_v2(const grant_entry_header_t *shah, if ( unlikely(scombo.flags & GTF_readonly) ) { gnttab_clear_flags(rd, GTF_writing, status); - PIN_FAIL(done, GNTST_general_error, - "Unstable grant readonly flag\n"); + gdprintk(XENLOG_WARNING, "Unstable grant readonly flag\n"); + rc = GNTST_general_error; + goto done; } } @@ -1050,8 +1065,12 @@ map_grant_ref( /* Bounds check on the grant ref */ ref = op->ref; if ( unlikely(ref >= nr_grant_entries(rgt))) - PIN_FAIL(unlock_out, GNTST_bad_gntref, "Bad ref %#x for d%d\n", + { + gdprintk(XENLOG_WARNING, "Bad ref %#x for d%d\n", ref, rgt->domain->domain_id); + rc = GNTST_bad_gntref; + goto unlock_out; + } /* This call also ensures the above check cannot be passed speculatively */ shah = shared_entry_header(rgt, ref); @@ -1062,9 +1081,13 @@ map_grant_ref( ((act->domid != ld->domain_id) || (act->pin & GNTPIN_incr2oflow_mask(pin_incr)) || (act->is_sub_page)) ) - PIN_FAIL(act_release_out, GNTST_general_error, + { + gdprintk(XENLOG_WARNING, "Bad domain (%d != %d), or risk of counter overflow %08x, or subpage %d\n", act->domid, ld->domain_id, act->pin, act->is_sub_page); + rc = GNTST_general_error; + goto act_release_out; + } /* Make sure we do not access memory speculatively */ status = evaluate_nospec(rgt->gt_version == 1) ? &shah->flags @@ -1465,9 +1488,13 @@ unmap_common( if ( op->dev_bus_addr && (flags & GNTMAP_device_map) && unlikely(op->dev_bus_addr != mfn_to_maddr(act->mfn)) ) - PIN_FAIL(act_release_out, GNTST_bad_dev_addr, + { + gdprintk(XENLOG_WARNING, "Bus address doesn't match gntref (%"PRIx64" != %"PRIpaddr")\n", op->dev_bus_addr, mfn_to_maddr(act->mfn)); + rc = GNTST_bad_dev_addr; + goto act_release_out; + } if ( op->host_addr && (flags & GNTMAP_host_map) ) { @@ -2560,8 +2587,11 @@ acquire_grant_for_copy( grant_read_lock(rgt); if ( unlikely(gref >= nr_grant_entries(rgt)) ) - PIN_FAIL(gt_unlock_out, GNTST_bad_gntref, - "Bad grant reference %#x\n", gref); + { + gdprintk(XENLOG_WARNING, "Bad grant reference %#x\n", gref); + rc = GNTST_bad_gntref; + goto gt_unlock_out; + } /* This call also ensures the above check cannot be passed speculatively */ shah = shared_entry_header(rgt, gref); @@ -2571,9 +2601,13 @@ acquire_grant_for_copy( if ( act->pin && ((act->domid != ldom) || (act->pin & GNTPIN_incr2oflow_mask(pin_incr))) ) - PIN_FAIL(unlock_out, GNTST_general_error, + { + gdprintk(XENLOG_WARNING, "Bad domain (%d != %d), or risk of counter overflow %08x\n", act->domid, ldom, act->pin); + rc = GNTST_general_error; + goto unlock_out; + } if ( evaluate_nospec(rgt->gt_version == 1) ) { @@ -2596,16 +2630,24 @@ acquire_grant_for_copy( goto unlock_out; if ( !allow_transitive ) - PIN_FAIL(unlock_out_clear, GNTST_general_error, + { + gdprintk(XENLOG_WARNING, "transitive grant when transitivity not allowed\n"); + rc = GNTST_general_error; + goto unlock_out_clear; + } trans_domid = sha2->transitive.trans_domid; trans_gref = sha2->transitive.gref; barrier(); /* Stop the compiler from re-loading trans_domid from shared memory */ if ( trans_domid == rd->domain_id ) - PIN_FAIL(unlock_out_clear, GNTST_general_error, + { + gdprintk(XENLOG_WARNING, "transitive grants cannot be self-referential\n"); + rc = GNTST_general_error; + goto unlock_out_clear; + } /* * We allow the trans_domid == ldom case, which corresponds to a @@ -2618,9 +2660,13 @@ acquire_grant_for_copy( /* We need to leave the rrd locked during the grant copy. */ td = rcu_lock_domain_by_id(trans_domid); if ( td == NULL ) - PIN_FAIL(unlock_out_clear, GNTST_general_error, + { + gdprintk(XENLOG_WARNING, "transitive grant referenced bad domain %d\n", trans_domid); + rc = GNTST_general_error; + goto unlock_out_clear; + } /* * acquire_grant_for_copy() will take the lock on the remote table, @@ -2928,8 +2974,11 @@ static int gnttab_copy_claim_buf(const struct gnttab_copy *op, rc = get_paged_frame(ptr->u.gmfn, &buf->mfn, &buf->page, buf->read_only, buf->domain); if ( rc != GNTST_okay ) - PIN_FAIL(out, rc, + { + gdprintk(XENLOG_WARNING, "source frame %"PRI_xen_pfn" invalid\n", ptr->u.gmfn); + goto out; + } buf->ptr.u.gmfn = ptr->u.gmfn; buf->ptr.offset = 0; @@ -2972,25 +3021,29 @@ static int gnttab_copy_buf(const struct gnttab_copy *op, struct gnttab_copy_buf *dest, const struct gnttab_copy_buf *src) { - int rc; - if ( ((op->source.offset + op->len) > PAGE_SIZE) || ((op->dest.offset + op->len) > PAGE_SIZE) ) - PIN_FAIL(out, GNTST_bad_copy_arg, "copy beyond page area\n"); + { + gdprintk(XENLOG_WARNING, "copy beyond page area\n"); + return GNTST_bad_copy_arg; + } if ( op->source.offset < src->ptr.offset || op->source.offset + op->len > src->ptr.offset + src->len ) - PIN_FAIL(out, GNTST_general_error, + { + gdprintk(XENLOG_WARNING, "copy source out of bounds: %d < %d || %d > %d\n", - op->source.offset, src->ptr.offset, - op->len, src->len); + op->source.offset, src->ptr.offset, op->len, src->len); + return GNTST_general_error; + } if ( op->dest.offset < dest->ptr.offset || op->dest.offset + op->len > dest->ptr.offset + dest->len ) - PIN_FAIL(out, GNTST_general_error, - "copy dest out of bounds: %d < %d || %d > %d\n", - op->dest.offset, dest->ptr.offset, - op->len, dest->len); + { + gdprintk(XENLOG_WARNING, "copy dest out of bounds: %d < %d || %d > %d\n", + op->dest.offset, dest->ptr.offset, op->len, dest->len); + return GNTST_general_error; + } /* Make sure the above checks are not bypassed speculatively */ block_speculation(); @@ -2998,9 +3051,8 @@ static int gnttab_copy_buf(const struct gnttab_copy *op, memcpy(dest->virt + op->dest.offset, src->virt + op->source.offset, op->len); gnttab_mark_dirty(dest->domain, dest->mfn); - rc = GNTST_okay; - out: - return rc; + + return GNTST_okay; } static int gnttab_copy_one(const struct gnttab_copy *op, @@ -3373,9 +3425,17 @@ swap_grant_ref(grant_ref_t ref_a, grant_ref_t ref_b) /* Bounds check on the grant refs */ if ( unlikely(ref_a >= nr_grant_entries(d->grant_table))) - PIN_FAIL(out, GNTST_bad_gntref, "Bad ref-a %#x\n", ref_a); + { + gdprintk(XENLOG_WARNING, "Bad ref-a %#x\n", ref_a); + rc = GNTST_bad_gntref; + goto out; + } if ( unlikely(ref_b >= nr_grant_entries(d->grant_table))) - PIN_FAIL(out, GNTST_bad_gntref, "Bad ref-b %#x\n", ref_b); + { + gdprintk(XENLOG_WARNING, "Bad ref-b %#x\n", ref_b); + rc = GNTST_bad_gntref; + goto out; + } /* Make sure the above checks are not bypassed speculatively */ block_speculation(); @@ -3386,11 +3446,19 @@ swap_grant_ref(grant_ref_t ref_a, grant_ref_t ref_b) act_a = active_entry_acquire(gt, ref_a); if ( act_a->pin ) - PIN_FAIL(out, GNTST_eagain, "ref a %#x busy\n", ref_a); + { + gdprintk(XENLOG_WARNING, "ref a %#x busy\n", ref_a); + rc = GNTST_eagain; + goto out; + } act_b = active_entry_acquire(gt, ref_b); if ( act_b->pin ) - PIN_FAIL(out, GNTST_eagain, "ref b %#x busy\n", ref_b); + { + gdprintk(XENLOG_WARNING, "ref b %#x busy\n", ref_b); + rc = GNTST_eagain; + goto out; + } if ( evaluate_nospec(gt->gt_version == 1) ) { -- 2.30.2 From xen-devel-bounces@lists.xenproject.org Wed Jun 14 16:37:38 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 16:37:38 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549042.857367 (Exim 4.92) (envelope-from ) id 1q9TUx-0008P8-Up; Wed, 14 Jun 2023 16:37:31 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549042.857367; Wed, 14 Jun 2023 16:37:31 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9TUx-0008P1-Rq; Wed, 14 Jun 2023 16:37:31 +0000 Received: by outflank-mailman (input) for mailman id 549042; Wed, 14 Jun 2023 16:37:30 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9TUv-0008Ov-Vo for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 16:37:30 +0000 Received: from alpha.anastas.io (alpha.anastas.io [104.248.188.109]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id bf2c2025-0ad1-11ee-8611-37d641c3527e; Wed, 14 Jun 2023 18:37:27 +0200 (CEST) Received: from authenticated-user (alpha.anastas.io [104.248.188.109]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by alpha.anastas.io (Postfix) with ESMTPSA id C40DA43A47; Wed, 14 Jun 2023 09:36:24 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: bf2c2025-0ad1-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=anastas.io; s=mail; t=1686760585; bh=NYuf0nJMqeA0Euy/f6MNeArvCCSNnYFCDmGSoJPMUgg=; h=Date:To:Cc:Subject:From:References:In-Reply-To:From; b=WJUA+j92csd3KLAs2WScXiq1ZYHwcj6Um1WAaTjeCJk4t/YthNVEd/Ud5+oFqmSKF U7UUg2J4QzA8j1ppL7C+wM1uufwjGsLREcKh0AkkkyA0JSdb+MrUCHRMYlb47W60r4 osEIeQ7hQMUU2u09TS4Ig9RnPxfjuX5ZoAsC49Cqv+uKJakKdHQORnOHeNLS9Sb9x5 adxcJJHMZfZHcML3JpdZmffOKq7RexnYtlM+xTxH4eNPH7cCW3wgDgiAYipQlsc7md ChkDuY1R0RbIUW6vCDZgGYAep7/nFYwvp4VOVC4C0gy8MAcqWz9nmB9JDoKFrwRmu8 uN/OGLEI9pAhg== Mime-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=UTF-8 Date: Wed, 14 Jun 2023 11:36:23 -0500 Message-Id: To: "Jan Beulich" Cc: , "Andrew Cooper" , "George Dunlap" , "Julien Grall" , "Stefano Stabellini" , "Wei Liu" , "Shawn Anastasio" , Subject: Re: [PATCH v3 2/4] xen: Add files needed for minimal ppc64le build From: "Shawn Anastasio" References: In-Reply-To: On Wed Jun 14, 2023 at 10:51 AM CDT, Jan Beulich wrote: > On 13.06.2023 16:50, Shawn Anastasio wrote: > > --- /dev/null > > +++ b/xen/arch/ppc/Makefile > > @@ -0,0 +1,16 @@ > > +obj-$(CONFIG_PPC64) +=3D ppc64/ > > + > > +$(TARGET): $(TARGET)-syms > > + cp -f $< $@ > > + > > +$(TARGET)-syms: $(objtree)/prelink.o $(obj)/xen.lds > > + $(LD) $(XEN_LDFLAGS) -T $(obj)/xen.lds -N $< $(build_id_linker) -o $@ > > + $(NM) -pa --format=3Dsysv $(@D)/$(@F) \ > > + | $(objtree)/tools/symbols --all-symbols --xensyms --sysv --sort \ > > + >$(@D)/$(@F).map > > Elsewhere we recently switched these uses of $(@D)/$(@F) to just $@. > Please can you do so here as well? Sure, will fix in v4. > > --- /dev/null > > +++ b/xen/arch/ppc/arch.mk > > @@ -0,0 +1,11 @@ > > +######################################## > > +# Power-specific definitions > > + > > +ppc-march-$(CONFIG_POWER_ISA_2_07B) :=3D power8 > > +ppc-march-$(CONFIG_POWER_ISA_3_00) :=3D power9 > > + > > +CFLAGS +=3D -mcpu=3D$(ppc-march-y) -mstrict-align -mcmodel=3Dlarge -ma= bi=3Delfv2 -mno-altivec -mno-vsx > > Wouldn't it make sense to also pass -mlittle here, such that a tool > chain defaulting to big-endian can still be used? Good call. On this topic, I suppose I'll also add -m64 to allow 32-bit toolchains to be used as well. > > --- /dev/null > > +++ b/xen/arch/ppc/ppc64/head.S > > @@ -0,0 +1,27 @@ > > +/* SPDX-License-Identifier: GPL-2.0-or-later */ > > + > > +.section .text.header, "ax", %progbits > > + > > +ENTRY(start) > > + /* > > + * Depending on how we were booted, the CPU could be running in ei= ther > > + * Little Endian or Big Endian mode. The following trampoline from= Linux > > + * cleverly uses an instruction that encodes to a NOP if the CPU's > > + * endianness matches the assumption of the assembler (LE, in our = case) > > + * or a branch to code that performs the endian switch in the othe= r case. > > + */ > > + tdi 0, 0, 0x48 /* Reverse endian of b . + 8 */ > > + b $ + 44 /* Skip trampoline if endian is good */ > > If I get this right, $ and . are interchangable on Power? If not, > then all is fine and there likely is a reason to use . in the > comment but $ in the code. But if so, it would be nice if both > could match, and I guess with other architectures in mind . would > be preferable. As hinted by the comment, this code was directly inherited from Linux and I'm not sure why the original author chose '$' instead of '.'. That said, as far as I can tell you are correct about the two being interchangeable, and changing the $ to . results in the exact same machine code. I can go ahead and make the change for consistency in v4. > > + DECL_SECTION(.bss) { /* BSS */ > > + __bss_start =3D .; > > + *(.bss.stack_aligned) > > + . =3D ALIGN(PAGE_SIZE); > > + *(.bss.page_aligned) > > ... the one between the two .bss parts looks unmotivated. Within > a section definition ALIGN() typically only makes sense when followed > by a label definition, like ... Correct me if I'm wrong, but wouldn't the ALIGN here serve to ensure that the subsequent '.bss.page_aligned' section has the correct alignment that its name implies? > Jan Thanks, Shawn From xen-devel-bounces@lists.xenproject.org Wed Jun 14 16:41:13 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 16:41:13 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549048.857378 (Exim 4.92) (envelope-from ) id 1q9TYW-0001Q8-DS; Wed, 14 Jun 2023 16:41:12 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549048.857378; Wed, 14 Jun 2023 16:41:12 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9TYW-0001Q1-AQ; Wed, 14 Jun 2023 16:41:12 +0000 Received: by outflank-mailman (input) for mailman id 549048; Wed, 14 Jun 2023 16:41:10 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9TYU-0001Pr-BF; Wed, 14 Jun 2023 16:41:10 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9TYU-0008K9-7v; Wed, 14 Jun 2023 16:41:10 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9TYT-0006fr-NC; Wed, 14 Jun 2023 16:41:09 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q9TYT-0003rA-Mg; Wed, 14 Jun 2023 16:41:09 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=OCvs5fwj7b/lUbE/4BaZxq022JrJl9OzjQyl13oqsYM=; b=1gkdL9/IBt5YeWsp5E5OA5/9G0 XouV6VYPdou0TzmJXmJiKiF9cmaAk1Yk4SI/xFbrbG0j01RE5kk3pg+fREERpLt3cBP85Lh9b0Hq1 sq6oy9kGGkE5kuElF9FAoI4W/gujSBX5PYk/A5h/eQn9u+EQxlfs0TlW20f/Wu3UZ4+Y=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [qemu-mainline test] 181428: regressions - FAIL X-Osstest-Failures: qemu-mainline:build-amd64-xsm:xen-build:fail:regression qemu-mainline:build-arm64:xen-build:fail:regression qemu-mainline:build-arm64-xsm:xen-build:fail:regression qemu-mainline:build-amd64:xen-build:fail:regression qemu-mainline:build-i386:xen-build:fail:regression qemu-mainline:build-i386-xsm:xen-build:fail:regression qemu-mainline:build-armhf:xen-build:fail:regression qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-i386:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:build-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:build-arm64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:build-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:build-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pygrub:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking X-Osstest-Versions-This: qemuu=7efd65423ab22e6f5890ca08ae40c84d6660242f X-Osstest-Versions-That: qemuu=6972ef1440a9d685482d78672620a7482f2bd09a From: osstest service owner Date: Wed, 14 Jun 2023 16:41:09 +0000 flight 181428 qemu-mainline real [real] http://logs.test-lab.xenproject.org/osstest/logs/181428/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-amd64-xsm 6 xen-build fail REGR. vs. 180691 build-arm64 6 xen-build fail REGR. vs. 180691 build-arm64-xsm 6 xen-build fail REGR. vs. 180691 build-amd64 6 xen-build fail REGR. vs. 180691 build-i386 6 xen-build fail REGR. vs. 180691 build-i386-xsm 6 xen-build fail REGR. vs. 180691 build-armhf 6 xen-build fail REGR. vs. 180691 Tests which did not succeed, but are not blocking: test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-xl-xsm 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-raw 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-xsm 1 build-check(1) blocked n/a test-arm64-arm64-xl 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit1 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit2 1 build-check(1) blocked n/a test-arm64-arm64-xl-thunderx 1 build-check(1) blocked n/a test-arm64-arm64-xl-vhd 1 build-check(1) blocked n/a test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a test-armhf-armhf-libvirt 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-qcow2 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-raw 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a test-armhf-armhf-xl-arndale 1 build-check(1) blocked n/a test-armhf-armhf-xl-multivcpu 1 build-check(1) blocked n/a test-armhf-armhf-xl-rtds 1 build-check(1) blocked n/a test-armhf-armhf-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-amd 1 build-check(1) blocked n/a test-amd64-i386-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-raw 1 build-check(1) blocked n/a test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-i386 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-amd64 1 build-check(1) blocked n/a test-amd64-coresched-i386-xl 1 build-check(1) blocked n/a test-amd64-coresched-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-xsm 1 build-check(1) blocked n/a build-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-shadow 1 build-check(1) blocked n/a test-amd64-amd64-xl-rtds 1 build-check(1) blocked n/a build-arm64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a build-armhf-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a build-i386-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-amd 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-pair 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-qcow2 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-vhd 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvshim 1 build-check(1) blocked n/a test-amd64-amd64-pair 1 build-check(1) blocked n/a test-amd64-amd64-pygrub 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-intel 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd11-amd64 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd12-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-multivcpu 1 build-check(1) blocked n/a test-amd64-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit1 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit1 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit2 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-intel 1 build-check(1) blocked n/a test-amd64-i386-xl 1 build-check(1) blocked n/a test-amd64-i386-xl-pvshim 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a version targeted for testing: qemuu 7efd65423ab22e6f5890ca08ae40c84d6660242f baseline version: qemuu 6972ef1440a9d685482d78672620a7482f2bd09a Last test of basis 180691 2023-05-17 10:45:22 Z 28 days Failing since 180699 2023-05-18 07:21:24 Z 27 days 101 attempts Testing same since 181419 2023-06-14 05:08:14 Z 0 days 3 attempts ------------------------------------------------------------ People who touched revisions under test: Afonso Bordado Akihiko Odaki Akihiro Suda Alex Bennée Alex Williamson Alexander Bulekov Alexander Graf Alexander Ivanov Alistair Francis Anastasia Belova Andrea Bolognani Andreas Schwab Andrew Jeffery Ani Sinha Ani Sinha Anthony PERARD Anton Johansson Antonio Caggiano BALATON Zoltan Bastian Koppelmann Bernhard Beschow Bin Meng Brian Cain Brice Goglin Camilla Conte Carlos Santos Christian Schoenebeck Chuck Zmudzinski Cindy Lu Clément Chigot Corey Minyard Cornelia Huck Cédric Le Goater Cédric Le Goater Daniel Henrique Barboza Daniel Henrique Barboza Daniel P. Berrangé Daniil Kovalev David Hildenbrand David Woodhouse Emanuele Giuseppe Esposito Enze Li Eric Auger Eric Blake Eric DeVolder Erico Nunes Eugenio Pérez Fabiano Rosas Fan Ni Fiona Ebner Francesco Cagnin Francisco Iglesias Frederic Barrat Gavin Shan Gregory Price Gregory Price Hanna Czenczek Hao Zeng Hawkins Jiawei Himanshu Chauhan Igor Mammedov Ilya Leoshkevich Ira Weiny Ivan Klokov Jagannathan Raman Jason Wang Jean-Louis Dupond Jean-Philippe Brucker Jiaxun Yang Joao Martins John Snow Jonathan Cameron Juan Quintela Junqiang Wang Kevin Wolf Laurent Vivier Lei Yang Leonardo Bras Maksim Davydov Marc-André Lureau Marcin Juszkiewicz Marco Liebel Mark Cave-Ayland Markus Armbruster Matheus Tavares Bernardino Mattias Nissler Mauro Matteo Cascella Max Fritz Mayuresh Chitale Michael S. Tsirkin Michael Tokarev Michal Privoznik Milan Zamazal Mostafa Saleh Nicholas Piggin Nicolas Saenz Julienne Niek Linnenbank Niklas Cassel Palmer Dabbelt Paolo Bonzini Patrick Venture Peter Maydell Peter Xu Philippe Mathieu-Daudé Philippe Mathieu-Daudé qianfan Zhao Raghu H Rene Engel Richard Henderson Richard Purdie Ricky Zhou Ryan Wendland Sebastian Ott Sergio Lopez Sid Manning Song Gao Stefan Hajnoczi Stefano Garzarella Steve Sistare Sunil V L Taylor Simpson Thomas Huth Thomas Weißschuh timothee.cocault@gmail.com Timothée Cocault Tommy Wu Vikram Garhwal Viktor Prutyanov Vitaly Cheptsov Vivek Kasireddy Vladimir Sementsov-Ogievskiy Volker Rümelin Weiwei Li Xiao Wang Xinyu Li Yin Wang Zeng Hao Zhenyu Zhang Zhenzhong Duan Zhuojia Shen jobs: build-amd64-xsm fail build-arm64-xsm fail build-i386-xsm fail build-amd64 fail build-arm64 fail build-armhf fail build-i386 fail build-amd64-libvirt blocked build-arm64-libvirt blocked build-armhf-libvirt blocked build-i386-libvirt blocked build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl blocked test-amd64-coresched-amd64-xl blocked test-arm64-arm64-xl blocked test-armhf-armhf-xl blocked test-amd64-i386-xl blocked test-amd64-coresched-i386-xl blocked test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-i386-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-amd64-libvirt-xsm blocked test-arm64-arm64-libvirt-xsm blocked test-amd64-i386-libvirt-xsm blocked test-amd64-amd64-xl-xsm blocked test-arm64-arm64-xl-xsm blocked test-amd64-i386-xl-xsm blocked test-amd64-amd64-qemuu-nested-amd blocked test-amd64-amd64-xl-pvhv2-amd blocked test-amd64-i386-qemuu-rhel6hvm-amd blocked test-amd64-amd64-dom0pvh-xl-amd blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-freebsd10-amd64 blocked test-amd64-amd64-qemuu-freebsd11-amd64 blocked test-amd64-amd64-qemuu-freebsd12-amd64 blocked test-amd64-amd64-xl-qemuu-ovmf-amd64 blocked test-amd64-i386-xl-qemuu-ovmf-amd64 blocked test-amd64-amd64-xl-qemuu-win7-amd64 blocked test-amd64-i386-xl-qemuu-win7-amd64 blocked test-amd64-amd64-xl-qemuu-ws16-amd64 blocked test-amd64-i386-xl-qemuu-ws16-amd64 blocked test-armhf-armhf-xl-arndale blocked test-amd64-amd64-xl-credit1 blocked test-arm64-arm64-xl-credit1 blocked test-armhf-armhf-xl-credit1 blocked test-amd64-amd64-xl-credit2 blocked test-arm64-arm64-xl-credit2 blocked test-armhf-armhf-xl-credit2 blocked test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-freebsd10-i386 blocked test-amd64-amd64-qemuu-nested-intel blocked test-amd64-amd64-xl-pvhv2-intel blocked test-amd64-i386-qemuu-rhel6hvm-intel blocked test-amd64-amd64-dom0pvh-xl-intel blocked test-amd64-amd64-libvirt blocked test-armhf-armhf-libvirt blocked test-amd64-i386-libvirt blocked test-amd64-amd64-xl-multivcpu blocked test-armhf-armhf-xl-multivcpu blocked test-amd64-amd64-pair blocked test-amd64-i386-pair blocked test-amd64-amd64-libvirt-pair blocked test-amd64-i386-libvirt-pair blocked test-amd64-amd64-xl-pvshim blocked test-amd64-i386-xl-pvshim blocked test-amd64-amd64-pygrub blocked test-armhf-armhf-libvirt-qcow2 blocked test-amd64-amd64-xl-qcow2 blocked test-arm64-arm64-libvirt-raw blocked test-armhf-armhf-libvirt-raw blocked test-amd64-i386-libvirt-raw blocked test-amd64-amd64-xl-rtds blocked test-armhf-armhf-xl-rtds blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-amd64-xl-shadow blocked test-amd64-i386-xl-shadow blocked test-arm64-arm64-xl-thunderx blocked test-amd64-amd64-libvirt-vhd blocked test-arm64-arm64-xl-vhd blocked test-armhf-armhf-xl-vhd blocked test-amd64-i386-xl-vhd blocked ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 18679 lines long.) From xen-devel-bounces@lists.xenproject.org Wed Jun 14 16:41:40 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 16:41:40 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549053.857387 (Exim 4.92) (envelope-from ) id 1q9TYy-0001oi-Qd; Wed, 14 Jun 2023 16:41:40 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549053.857387; Wed, 14 Jun 2023 16:41:40 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9TYy-0001ob-Nv; Wed, 14 Jun 2023 16:41:40 +0000 Received: by outflank-mailman (input) for mailman id 549053; Wed, 14 Jun 2023 16:41:40 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9TYy-0001oS-76 for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 16:41:40 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 54a944dd-0ad2-11ee-b232-6b7b168915f2; Wed, 14 Jun 2023 18:41:38 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 14A0661C60; Wed, 14 Jun 2023 16:41:37 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 2092EC433C8; Wed, 14 Jun 2023 16:41:32 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 54a944dd-0ad2-11ee-b232-6b7b168915f2 Date: Wed, 14 Jun 2023 17:41:30 +0100 From: Catalin Marinas To: "Vishal Moola (Oracle)" Cc: Andrew Morton , Matthew Wilcox , linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins Subject: Re: [PATCH v4 21/34] arm64: Convert various functions to use ptdescs Message-ID: References: <20230612210423.18611-1-vishal.moola@gmail.com> <20230612210423.18611-22-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20230612210423.18611-22-vishal.moola@gmail.com> On Mon, Jun 12, 2023 at 02:04:10PM -0700, Vishal Moola (Oracle) wrote: > As part of the conversions to replace pgtable constructor/destructors with > ptdesc equivalents, convert various page table functions to use ptdescs. > > Signed-off-by: Vishal Moola (Oracle) Acked-by: Catalin Marinas From xen-devel-bounces@lists.xenproject.org Wed Jun 14 17:01:01 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 17:01:01 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549085.857415 (Exim 4.92) (envelope-from ) id 1q9TrQ-0005XM-Mp; Wed, 14 Jun 2023 17:00:44 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549085.857415; Wed, 14 Jun 2023 17:00:44 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9TrQ-0005XF-JS; Wed, 14 Jun 2023 17:00:44 +0000 Received: by outflank-mailman (input) for mailman id 549085; Wed, 14 Jun 2023 17:00:43 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9TrO-0005X9-Sq for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 17:00:43 +0000 Received: from mga17.intel.com (mga17.intel.com [192.55.52.151]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id fc7c3fc6-0ad4-11ee-b232-6b7b168915f2; Wed, 14 Jun 2023 19:00:40 +0200 (CEST) Received: from fmsmga006.fm.intel.com ([10.253.24.20]) by fmsmga107.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 14 Jun 2023 10:00:36 -0700 Received: from orsmsx603.amr.corp.intel.com ([10.22.229.16]) by fmsmga006.fm.intel.com with ESMTP; 14 Jun 2023 10:00:35 -0700 Received: from orsmsx611.amr.corp.intel.com (10.22.229.24) by ORSMSX603.amr.corp.intel.com (10.22.229.16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Wed, 14 Jun 2023 10:00:35 -0700 Received: from orsmsx601.amr.corp.intel.com (10.22.229.14) by ORSMSX611.amr.corp.intel.com (10.22.229.24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Wed, 14 Jun 2023 10:00:34 -0700 Received: from ORSEDG602.ED.cps.intel.com (10.7.248.7) by orsmsx601.amr.corp.intel.com (10.22.229.14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23 via Frontend Transport; Wed, 14 Jun 2023 10:00:34 -0700 Received: from NAM04-MW2-obe.outbound.protection.outlook.com (104.47.73.172) by edgegateway.intel.com (134.134.137.103) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2507.23; Wed, 14 Jun 2023 10:00:34 -0700 Received: from MN0PR11MB5963.namprd11.prod.outlook.com (2603:10b6:208:372::10) by PH0PR11MB5207.namprd11.prod.outlook.com (2603:10b6:510:32::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.37; Wed, 14 Jun 2023 17:00:31 +0000 Received: from MN0PR11MB5963.namprd11.prod.outlook.com ([fe80::6984:19a5:fe1c:dfec]) by MN0PR11MB5963.namprd11.prod.outlook.com ([fe80::6984:19a5:fe1c:dfec%7]) with mapi id 15.20.6477.037; Wed, 14 Jun 2023 17:00:31 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: fc7c3fc6-0ad4-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1686762040; x=1718298040; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-id:content-transfer-encoding: mime-version; bh=3zaZ0bD6+23kzURnAWK/nc1bI2BfpFbmpV+dupnusbY=; b=Z9eBoTysSXdWKrOLL6HyF4T34SCeTvNib9mHfSS2vDZAjlKsTn6EV+SV mb9HF+TBJ7/UdAlkIwCSdBZSI6sPneODFto9ZPYD6NNdhpC17v7PHZFUA Z66y9roUzQbIpHYoeeGhfnl9FPDzpzACwuTRetsnXSUmWzdMsxqZed1AC y/rhnA8vKkoUhKhkG6nHEyT248uQhJwDPjvLiE6/LYwviXFfIa4yPzmlK QKyP5gNgoyCOQ8pUIps+jzqQ4NYS0OkeQeVMpIjVdJ3UP4ZTYeChaqbsA ZvFlJ2IVZ6RNSvDP8heOkNZhuySMI+cLCezVuQYRWtP6s963FTfhCA3RL A==; X-IronPort-AV: E=McAfee;i="6600,9927,10741"; a="339022828" X-IronPort-AV: E=Sophos;i="6.00,243,1681196400"; d="scan'208";a="339022828" X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10741"; a="958860473" X-IronPort-AV: E=Sophos;i="6.00,243,1681196400"; d="scan'208";a="958860473" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=mYy1NN3n3qFGqVwRWx8bz4hYQ5u581rb2d4mLfsuhJ25i/pazqvU+e/LNriq078LYiEYN323bqT4cUwKsLPqvYUjbs2Fw+QMySncqt+0cKsClIPo5ESiNyKn2w8nq82PJe5pI3wg66hEaQKmivG7CrdzduyzZACSBNEOMJ4E2sN7s+QmDoQBgXR8uWJBPSgJb34w5wV+UfuoKAeQu61xVE4jyA3kJWMI+PysJlIaPMOmOBNQZSQ537NQmu7JlgnjEBzOxUjJW9cVPY+W4eiK5YeMBKUnK0Pds+bfCuIzGQC7Wi0ysl3z8gg8EWYX+NYN3xTTmBmFpwf7bsX87EGqDg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=3zaZ0bD6+23kzURnAWK/nc1bI2BfpFbmpV+dupnusbY=; b=KfskkY8joG+1OJJj9ZuP8nQNOYgtd4qDoOMWP7RiQfA3kz2ndndTJFMVvJs4fmeJ1EOZtlLFJPsHmCKKEguk8DYwZvScgrbYm7QD5oTcvFwMuwVSLhOqhTYdaT3aF3ehLUMwrlPfam5xUh875nTnqtl7pc9oAJ/1gv6gtN5o/bfTacKp9EwO75XWgNaic6H9BsX5iiq8CrKnrq4aZ2VQUHwe6mrDjs+nainE5QwgmBFccFfJdNr8lGv+s0Wuif4AfJAKhwW5Bd+r+pL9llTBm8ZV0NgGMBStvNSHY4R7iG8q8FhXFg+nDH0xEk0LSKjuDX6c8RVISKZKV2I9TAVPXQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com; dkim=pass header.d=intel.com; arc=none From: "Edgecombe, Rick P" To: "david@redhat.com" , "rppt@kernel.org" CC: "linux-doc@vger.kernel.org" , "tglx@linutronix.de" , "kcc@google.com" , "linux-arch@vger.kernel.org" , "Lutomirski, Andy" , "nadav.amit@gmail.com" , "kirill.shutemov@linux.intel.com" , "szabolcs.nagy@arm.com" , "Schimpe, Christina" , "peterz@infradead.org" , "corbet@lwn.net" , "linux-kernel@vger.kernel.org" , "dethoma@microsoft.com" , "broonie@kernel.org" , "linux-s390@vger.kernel.org" , "x86@kernel.org" , "pavel@ucw.cz" , "bp@alien8.de" , "mike.kravetz@oracle.com" , "linux-api@vger.kernel.org" , "john.allen@amd.com" , "jamorris@linux.microsoft.com" , "arnd@arndb.de" , "bsingharora@gmail.com" , "xen-devel@lists.xenproject.org" , "jannh@google.com" , "oleg@redhat.com" , "fweimer@redhat.com" , "keescook@chromium.org" , "gorcunov@gmail.com" , "rdunlap@infradead.org" , "hpa@zytor.com" , "mingo@redhat.com" , "andrew.cooper3@citrix.com" , "hjl.tools@gmail.com" , "linux-arm-kernel@lists.infradead.org" , "debug@rivosinc.com" , "linux-mm@kvack.org" , "Syromiatnikov, Eugene" , "Torvalds, Linus" , "akpm@linux-foundation.org" , "dave.hansen@linux.intel.com" , "Yang, Weijiang" , "Eranian, Stephane" Subject: Re: [PATCH v9 02/42] mm: Move pte/pmd_mkwrite() callers with no VMA to _novma() Thread-Topic: [PATCH v9 02/42] mm: Move pte/pmd_mkwrite() callers with no VMA to _novma() Thread-Index: AQHZnYu5myZdSN5guk62QnYDURPfWq+IWqsAgACP+gCAAAtSgIABkmQA Date: Wed, 14 Jun 2023 17:00:31 +0000 Message-ID: References: <20230613001108.3040476-1-rick.p.edgecombe@intel.com> <20230613001108.3040476-3-rick.p.edgecombe@intel.com> <20230613074428.GS52412@kernel.org> <21b0342854b067c241206f422bc5b3254b43c7f5.camel@intel.com> <8a053da2-0f26-82ca-f437-9b9de11d4584@redhat.com> In-Reply-To: <8a053da2-0f26-82ca-f437-9b9de11d4584@redhat.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: user-agent: Evolution 3.44.4-0ubuntu1 authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=intel.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: MN0PR11MB5963:EE_|PH0PR11MB5207:EE_ x-ms-office365-filtering-correlation-id: 5cd5210a-16a4-43b9-323e-08db6cf8dcb5 x-ld-processed: 46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: kIHGgA+rB1wKPeA/nkWGr7eohUaS+G2Es6UN8mXzmrcyKc/VQbrwhha5iqwmPfwcsHb19dHODNUy7ewUX5mveoszhKK/8N/6lVBrROcrN2OCFEgZ1GocLSNlBiUBy4wJn9WK6RIW9RVi7EqM8mYe32hs6L1WQpVleZl00pdSVMFJWARg5592UEiPUQ1Memp0TBEi9WiOZZ0fMmFrmtjRGjyCK4n6uIlSa+y7nXQ0zPT+/FjTo4VFLSFQZ1kHD8mDazKbL0FXlphHT12HjPTPFliKR+Px77r9xdXqziOC3LDift0hTWqVfwUOOKL5KWGgh/uhME76WDE1gdSF38AVc0vrp3MkQuWKm2HhEWwS/JKZqAysgxTzvPs6IBBeHnEaFw/Sx96t+rR5P/orY4L2MT7uqsFgJ0176kpuEfn/D0VhONOcsgg9WabBC1PSHMlT/y/hjXKTvsyRQF0tKDbbpmU3wDq5SsufYs1RfmZeLxubvvSOVu2b+iZD9OLjzWZ65Dhb4JZZnnvKWqNn8Vpkc7itANJzTM7SoBj+Vugorqu3Cx0pylHI/DW293MCswff3YMIYMCicRiabieu++zRyoGGXRQHvTqWwFsneg6iHyoKbG8WWt7nKK09XR6gniQ7 x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MN0PR11MB5963.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(396003)(376002)(39860400002)(136003)(366004)(346002)(451199021)(8936002)(6486002)(26005)(8676002)(6512007)(41300700001)(38100700002)(478600001)(82960400001)(36756003)(71200400001)(66946007)(66446008)(64756008)(4326008)(76116006)(66556008)(66476007)(86362001)(91956017)(316002)(122000001)(110136005)(54906003)(38070700005)(53546011)(6506007)(5660300002)(83380400001)(186003)(7406005)(2616005)(7416002)(2906002);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?cDlHMHdOaFl5d1VQUTg2NFBkallIa2x6UjB3Y1A2aHEvcFFOOVFIVC9ocnFW?= =?utf-8?B?M0hrclhneUQrdEczamNxUU9IWWV2cGtDTDlGZ1l3RjRUNzBYRno1VEp5SnM5?= =?utf-8?B?SUVlcnhtRjdpd01XNnZuNUUxaGJSVjdZZHMzMlNNTDMyaENOeENwTkszUmNI?= =?utf-8?B?a2gveHhleVJoUDJxOG81S2ovZUFRb0FLUG5FOWs2RXNLd2dqMHVZeGx5WXYr?= =?utf-8?B?ekQyUURJRFlNa2NWSTJzQlNkV3Vybm9ydzFuamJZaGdxWWNiS2VZWWM1MXZ0?= =?utf-8?B?SHhUc2J4ODdSVHdTbGRDRmc2R3FoZmdQL0NpdGVLNjdhVzl3U2RxY1JETE1q?= =?utf-8?B?T3dSbVpLWnVPSXhCZ0xUZUZOcUZBd3lGWENkclNZNzhNTWQyU1JYQ1N5K2Vz?= =?utf-8?B?cTc4UklIQkZBOVdMQ1FiUVg5VkpZZEJFRkwxV0FNTUdOTitlNDZ6UVNvNXA2?= =?utf-8?B?RGk2dnY3OW90UGxoZzZ1YUtPQ0g5b3NXOEFWeFRRWTFFcXRqeVJtaWl2TFlX?= =?utf-8?B?NDhuN2pSMU92Q2RxS0h3aS9Ld3dqNDhCdEFBTzN3ME03aklsWGxMQW8zcTdR?= =?utf-8?B?eE1hWmNhazJyQ21YSkVxS0lyQkZEYTlWbHViSG5oSDJoKzMycUhHK3IxQnBD?= =?utf-8?B?Wkh5REtaTTYyUjdMQmRQbEpQNjZ0bFZnc1BPY3hDWC9Ud3lNMVFHRkN6bVU1?= =?utf-8?B?dFpwUTk0MGo4UGRpVk1iMTArL2hvM1dIdWNyL1FPSlFoYzN2Wm5ncWdVNXAz?= =?utf-8?B?MG9mbWlZVnJUTnFteVM0aWoyZ0RnTE1PeitPMU5USHl2ZEt3YlhHMGt0N2NO?= =?utf-8?B?TTVlT05aMHcwY2hXTGF4dmx3MTFSaXdaWXFPTmN5SUQwWGVRRWJIQitoNFBF?= =?utf-8?B?Njlsd2s5eWRXM1JrSVZ0UnJrUG9jczhIL1RXelBDTktuNDJBdERmdkZHQUgz?= =?utf-8?B?M2lKOENRZEk5djN2aU9xdHY3cnYvVHpJcCtFb1daM3RhdW5HckltN1g0RDFN?= =?utf-8?B?Q2VacnJRR243cUMwUnBVa0FlMmpXSVl5MVpYWVh6SXNNUG51NVV2eGowd0l1?= =?utf-8?B?SVh3MU4vYS9nWmtWdFFEN1ZCSnpwQkpQL28xc29VYU5md2k2aTk1dXc4bVND?= =?utf-8?B?OXNDWm9GSit2OHoyMk1ka3hVb2lqcUtiNTMzOUtoMXJPbFRKY1dtQUtxcC9N?= =?utf-8?B?SGpyVHVuSGlOV09IU2M3aUZyWUxSTHJFMkVoczlqem1Bak50ekUxczhPYnRT?= =?utf-8?B?ZTNwejZrUzhsV3VBMFZVYjRFRklpQk93OTZHbElNM0hHZE91MzZJTStHL0VI?= =?utf-8?B?bk5HR040MjRUWDMwdHpuTzNTVVJacnNEWTFsaC9sbmRScnhLbEFjQUZTcFRs?= =?utf-8?B?UWo1bm1XU3lnemg2Z1ZabW0wMFpLMEZJV0ZRNXl4QVJJQzU3Q1VsY0RqMUhL?= =?utf-8?B?bUhNdkdhTGF3bklIdVdtcHlRenMwclBSRUhURllyKzA2SUVXZ0szeWg3bWcr?= =?utf-8?B?N2hsLzNnK1pGMGdHdHkzajg2YU12dTJ4T0FZbFd5YnpzNmREZ0lyZ2M3c3Ry?= =?utf-8?B?M3RqdFI0eTVFSzFnd29jbnJIelc3SCtMbmlXTDhPakt0MDludm0zZDhMNmdk?= =?utf-8?B?OGdsNlJqUWtEbjZGT1I5SnlWTXkwN0dIcWtxdlNXa2RERnljdGRNYVYxZjF0?= =?utf-8?B?NjErbkV2Z0o1aFkzdkJqM2VUbkR2L1dEZURtTlNJRWQwZ1lSeE4vUTE1clRa?= =?utf-8?B?Q1Jnd1F4NERnbE9lMTNKUSthRjd3TnhDQWZ0K0dFcTJ2d25seDhsbWxRSXZP?= =?utf-8?B?WklSTlFEMDVLWDM4UDE0c2lSQjIrZkIvTklMQXIrTUowVkVIVWJjRDAxckRp?= =?utf-8?B?dVY0OFhxaUpKNXhtTVNPelQyOTA5U010Y0xGaEZDc3YzWisxQkw5VktEV0pq?= =?utf-8?B?K1lUZHFNZG5WbEZaa21HY2E3ZFFOS3o4OFovQ3ZrNG52a21qMnp2anVFUFpE?= =?utf-8?B?UXBmTGVNN25tZGFpWjJucTBLR3lIa0J2OXFBZzJxYmI3VHNiQVhPc2kreWJB?= =?utf-8?B?Q0IvMnVhbUFtVEVhWXVtQ0FlVUxuZXhCTzZyNm9LbVUyY2ZLQnVPZXJPUEYy?= =?utf-8?B?aFluUHduczd5OUhsclQvWFhGaXFKL3IwRWZabloydWdMNHF4RFQzbGpTOG9l?= =?utf-8?B?VkE9PQ==?= Content-Type: text/plain; charset="utf-8" Content-ID: <4C01EF7287C0C04C9E6A50CA31372C82@namprd11.prod.outlook.com> Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: MN0PR11MB5963.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 5cd5210a-16a4-43b9-323e-08db6cf8dcb5 X-MS-Exchange-CrossTenant-originalarrivaltime: 14 Jun 2023 17:00:31.3410 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 46c98d88-e344-4ed4-8496-4ed7712e255d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: qgdVmBo35mMKF068hpYjqWbMJNuGTEBs6C68aT8vOWZnvRgzxW/ZwIBl1VnvEVHvLg0pbze25SZ++AJqEDZgMLKjVABYTblTjsXsxsTap0Y= X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR11MB5207 X-OriginatorOrg: intel.com T24gVHVlLCAyMDIzLTA2LTEzIGF0IDE5OjAwICswMjAwLCBEYXZpZCBIaWxkZW5icmFuZCB3cm90 ZToNCj4gT24gMTMuMDYuMjMgMTg6MTksIEVkZ2Vjb21iZSwgUmljayBQIHdyb3RlOg0KPiA+IE9u IFR1ZSwgMjAyMy0wNi0xMyBhdCAxMDo0NCArMDMwMCwgTWlrZSBSYXBvcG9ydCB3cm90ZToNCj4g PiA+ID4gUHJldmlvdXMgcGF0Y2hlcyBoYXZlIGRvbmUgdGhlIGZpcnN0IHN0ZXAsIHNvIG5leHQg bW92ZSB0aGUNCj4gPiA+ID4gY2FsbGVycw0KPiA+ID4gPiB0aGF0DQo+ID4gPiA+IGRvbid0IGhh dmUgYSBWTUEgdG8gcHRlX21rd3JpdGVfbm92bWEoKS4gQWxzbyBkbyB0aGUgc2FtZSBmb3INCj4g PiA+IA0KPiA+ID4gSSBoZWFyIHg4NiBtYWludGFpbmVycyBhc2tpbmcgdG8gZHJvcCAicHJldmlv dXMgcGF0Y2hlcyIgOy0pDQo+ID4gPiANCj4gPiA+IE1heWJlDQo+ID4gPiBUaGlzIGlzIHRoZSBz ZWNvbmQgc3RlcCBvZiB0aGUgY29udmVyc2lvbiB0aGF0IG1vdmVzIHRoZSBjYWxsZXJzDQo+ID4g PiAuLi4NCj4gPiANCj4gPiBSZWFsbHk/IEkndmUgbm90IGhlYXJkIHRoYXQuIEp1c3QgYSBzdHJv bmcgYXZlcnNpb24gdG8gInRoaXMNCj4gPiBwYXRjaCIuDQo+ID4gSSd2ZSBnb3QgZmVlZGJhY2sg dG8gc2F5ICJwcmV2aW91cyBwYXRjaGVzIiBhbmQgbm90ICJ0aGUgbGFzdA0KPiA+IHBhdGNoIiBz bw0KPiA+IGl0IGRvZXNuJ3QgZ2V0IHN0YWxlLiBJIGd1ZXNzIGl0IGNvdWxkIGJlICJwcmV2aW91 cyBjaGFuZ2VzIi4NCj4gDQo+IFRhbGtpbmcgYWJvdXQgcGF0Y2hlcyBtYWtlIHNlbnNlIHdoZW4g ZGlzY3Vzc2luZyBsaXRlcmFsIHBhdGNoZXMgc2VudA0KPiB0byANCj4gdGhlIG1haWxpbmcgbGlz dC4gSW4gdGhlIGdpdCBsb2csIGl0J3MgY29tbWl0LCBhbmQgImZ1dHVyZSBjb21taXRzIg0KPiBv ciANCj4gImZvbGxvdy11cCB3b3JrIi4NCj4gDQo+IFllcywgd2UgdXNlICJwYXRjaGVzIiBhbGwg b2YgdGhlIHRpbWUgaW4gY29tbWl0IGxvZ3MsIGVzcGVjaWFsbHkgd2hlbg0KPiB3ZSANCj4gwqAg aW5jbHVkZSB0aGUgY292ZXIgbGV0dGVyIGluIHRoZSBjb21taXQgbWVzc2FnZSAoYXMgZG9uZSBm cmVxdWVudGx5DQo+IGluIA0KPiB0aGUgLW1tIHRyZWUpLg0KDQpJIHRoaW5rIEknbGwgc3dpdGNo IG92ZXIgdG8gdGFsa2luZyBhYm91dCAiY2hhbmdlcyIuIElmIHlvdSB0YWxrIGFib3V0DQpjb21t aXRzIGl0IGRvZXNuJ3QgbWFrZSBhcyBtdWNoIHNlbnNlIHdoZW4gdGhleSBhcmUgc3RpbGwganVz dCBwYXRjaGVzLg0KVGhhbmtzLg0K From xen-devel-bounces@lists.xenproject.org Wed Jun 14 17:26:12 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 17:26:12 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549091.857425 (Exim 4.92) (envelope-from ) id 1q9UFr-00088r-Mm; Wed, 14 Jun 2023 17:25:59 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549091.857425; Wed, 14 Jun 2023 17:25:59 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9UFr-00088k-Jy; Wed, 14 Jun 2023 17:25:59 +0000 Received: by outflank-mailman (input) for mailman id 549091; Wed, 14 Jun 2023 17:25:57 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9UFp-00088b-Ez for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 17:25:57 +0000 Received: from esa1.hc3370-68.iphmx.com (esa1.hc3370-68.iphmx.com [216.71.145.142]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 83d84ca1-0ad8-11ee-b232-6b7b168915f2; Wed, 14 Jun 2023 19:25:55 +0200 (CEST) Received: from mail-bn8nam12lp2172.outbound.protection.outlook.com (HELO NAM12-BN8-obe.outbound.protection.outlook.com) ([104.47.55.172]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 14 Jun 2023 13:25:51 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by MW4PR03MB6635.namprd03.prod.outlook.com (2603:10b6:303:12a::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.37; Wed, 14 Jun 2023 17:25:49 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606%4]) with mapi id 15.20.6477.037; Wed, 14 Jun 2023 17:25:49 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 83d84ca1-0ad8-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686763555; h=message-id:date:from:subject:to:cc:references: in-reply-to:content-transfer-encoding:mime-version; bh=ZuznEZ1jnur4GuYEqJKxWh+jjPE6tji7bqRGtcOuTew=; b=PwtSpnPhb53xW54YauXA49SbYMmKtIvXnXkl0m3jmEKMhThPFtx27k63 DOjtu70WiVinLWygcE2T6pJOH3oJ58d8pbfk2K5G2vXk6YOFOgREZtDb2 sjpB9EKl1KCwNluPLD1DveLDYm+K+iaMT8MPr/smpcJod8C9r0OPzeIDI s=; X-IronPort-RemoteIP: 104.47.55.172 X-IronPort-MID: 113220081 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:qQLH1K4Pxp5Ykpq69oGgPwxRtBXGchMFZxGqfqrLsTDasY5as4F+v jMZDGiEbvvfYGbwfo1yOdni/UlU6pXdzNVrGVZupX9kHi5G8cbLO4+Ufxz6V8+wwm8vb2o8t plDNYOQRCwQZiWBzvt4GuG59RGQ7YnRGvynTraCYnsrLeNdYH9JoQp5nOIkiZJfj9G8Agec0 fv/uMSaM1K+s9JOGjt8B5mr9lU35JwehBtC5gZlPa4S4AeE/5UoJMl3yZ+ZfiOQrrZ8RoZWd 86bpJml82XQ+QsaC9/Nut4XpWVTH9Y+lSDX4pZnc/DKbipq/0Te4Y5iXBYoUm9Fii3hojxE4 I4lWapc6+seFvakdOw1C3G0GszlVEFM0OevzXOX6aR/w6BaGpdFLjoH4EweZOUlFuhL7W5m7 9dAdzQcKUC4qc2Jw5/jY+l0g4cfFZy+VG8fkikIITDxK98DGMqGaYOaoNhS0XE3m9xEGuvYa 4wBcz1zYR/cYhpJfFAKFJY5m+TujX76G9FagAvN+exrvC6OkUooj+KF3Nn9I7RmQe18mEqCq 32A1GP+GhwAb/SUyCaf82LqjejK9c/+cNtLT+firqY62TV/wEQ3NzYMV3mCvsCjrV6aYYNwL XEb8TYx+P1aGEuDC4OVsweDiHyOswMYWtFQO/Yn8wzLwa3Riy6GAkAUQzgHb8Yp3OcmSDpv2 lKXktfBAT10rKbTWX+b7q2Trz65JW4SN2BqWMMfZQ4M4t2mqodjiBvKF4xnCPTs0YezHizsy TeXqiR4n68UkcMAy6S8+xbAni6ooZ/KCAUy4207Q16Y0++wX6b9D6TA1LQRxa0owFqxJrVZg EU5pg== IronPort-HdrOrdr: A9a23:Me6NzKoFxT004WwrJXC9GTwaV5oleYIsimQD101hICG9E/b1qy nKpp8mPHDP5wr5NEtPpTnjAsm9qALnlKKdiLN5Vd3OYOCMghrKEGgN1/qG/xTQXwH46+5Bxe NBXsFFebnN5IFB/KTH3DU= X-Talos-CUID: 9a23:5NEqL2yxYTRN0x6SC9W5BgUOMZh6dmyanEz+DHC7JD5ASKWQCmOprfY= X-Talos-MUID: 9a23:GMbmYwbVC/iVFOBTkwDHnjNADdhR+YO+LHpcvpM7tMKYKnkl X-IronPort-AV: E=Sophos;i="6.00,243,1681185600"; d="scan'208";a="113220081" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=QvO6zhWBoKytVNYGMzzRHOercQjTULfBsP0irwZAJCDG8Bs1aa7v4jEUlZcvt9iU8jEV3uJ4UX3kXXr3/DD0165TYw1/oMsswil0gocV3FbFwRriyD5A/vQueDaJXopBgQ34wEPFd20bqOOknrd70gZQclra+MFLoTC4fd0gh66/pmAsKVYForoFMi00II5dynSjowKWY91ECfgmHrv4HiJKl+VKnrLJtOea5Gj20GEabiCTFJKPHtEvya/8mfFKMqIU4h+uEPSJM7GiYZTnuYP+CZ3q40NfwhKvnwBt1e3nXIHThKKKvhE9NBfGnbH3uLqDVFTZReKxD8y7SjVZPw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=zVM1gH4AuSvDeuzQ3rHL64zPnqC5qQltmp3BW9JIMv0=; b=gOdG8RMBLfD0JdwKI0ypH2ZFJERMHOUkZkUUgeYzjklmy3G8DrSJd0Us6KFnKkYvYbzgAAGe/MqRVDV02KFkDFgyfd4g2Sk4KF7WvHRsav7QckVMCucrLMNwhs4GT+TJW7DXgGGNsPoayO0kEN82ukd49StrIu4kLIUQb7LfmAuQsdxEluppx/ts4FeNYMG6W78KSCWvc6ztX/qv7bcrLTO77/XNSRHXWNGmZ7t0zLegLq0yJyGvYP/Mt0GQZlO+e9xRjtaVqksaPG09erzU3wGfYuesBlRrsgEvio3DvptGFJyzKrO8u180Snz5ZSidwUySruHDn6bL4OcrLJX7eQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=zVM1gH4AuSvDeuzQ3rHL64zPnqC5qQltmp3BW9JIMv0=; b=S63vHD38tzZ5IL0fcSXKzLCUMkCSfIbfuX7AAdVrliikEbDXmemvNGdn/y5svGHdKYHQgO4YZPPmXSyJzjdLVtbPp9r82OxR1ET1UypwUL3n/83tFpmLOU4GLZzeB/1UbPxRFvya0ox00mcv/KGuuNEJYx43TJDSSU49WSIboDg= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: Date: Wed, 14 Jun 2023 18:25:42 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 From: Andrew Cooper Subject: Re: [PATCH v3 3/4] x86/spec-ctrl: Fix up the RSBA/RRSBA bits as appropriate Content-Language: en-GB To: Jan Beulich Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , Xen-devel References: <20230612161306.2739572-1-andrew.cooper3@citrix.com> <20230612161306.2739572-4-andrew.cooper3@citrix.com> <81f74759-766a-bc3f-f4de-199cf3f1bd75@suse.com> In-Reply-To: <81f74759-766a-bc3f-f4de-199cf3f1bd75@suse.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO2P265CA0306.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:a5::30) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|MW4PR03MB6635:EE_ X-MS-Office365-Filtering-Correlation-Id: 33766dd6-911f-457a-512d-08db6cfc64c6 X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: ok1P0Z+GNtmmlSjj0OHr77qtUFbK5OqySupGPTS/bPqHcfD1s3sqfuRwaW7GWEE8DeQz969VYxA3b5xNKn/uSEPULT4zN21apo+NDgEsmcB3YHZo9m2KnEGuMBtVUFvaZD8eanYSPps8JsasQ45OL4j+HVa5acJFLUsyU7SgD5rSe4VV7v2D00brvqV2hETsz2n5dtr6NZvQlE5s+QkuqUe8kesl1AfqYImWN8M5418eu4R0T1wAxBoCvfKnBz/UTRDLDI09TNw+sAlYb6EnzwwMTboAA3QSi3rxahuKdPkE9LyHjYu8D5HLCt2o78jXN9fFxg5AFKAeRCe9HUpfDUyyKDalHGC2MZDtI0k7h5I/qzmCCAx2DS+kUlBXyYJGUoZ6XI78+bluSg6pKmoa3lqOyHIaNMRaXtgAuT2rFl6Jwzg8RSBrunVGhQIO6RBGHZlDkD+uym1vcFUPA0UL/hNTqQQQ8H74p26L+cibqGQBlqlSfZ2TuzKT6il/72JUxNaKeVbq9WjAP3Ibc2T7DXXcPd03V/nbJf/qQtwFueoBGAHsvY45sf1EzwMKDSaGF3tXQB9Q1jRhXbFclKG8ucdb1blRAnFR0oeV7xD+h4OF1v+EzHOYsyqKeN4Qj30zsDFI/xdxSYosSnYJiakyBw== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(366004)(346002)(136003)(376002)(396003)(39860400002)(451199021)(5660300002)(186003)(6506007)(2906002)(31686004)(2616005)(41300700001)(6512007)(8936002)(26005)(8676002)(6486002)(316002)(31696002)(54906003)(53546011)(6666004)(82960400001)(36756003)(478600001)(38100700002)(4326008)(66556008)(66476007)(86362001)(66946007)(6916009)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?aDJLdG5DYmEydTZlRDQ4MERDTTBkMkJKdWwrWU1xK0Fkay9PVUVaT2cxUzZQ?= =?utf-8?B?a25jbTFqaWs3a2lyblEwNUIrMFpBb1czRmt4SWMvN3VMeDlLTDBRY1AyaGFC?= =?utf-8?B?YmhDeWZZQTd3TUx0aWZNdFc4eE8xWTkzdlNoNUVMb0NteE9MdHhnbVVUOThV?= =?utf-8?B?eU9lSWZRWU1kZFArZUdRT0o4ZWlJbVpYS1YyMEZaZkRFZGZLYncrMEZIV2tQ?= =?utf-8?B?WjBma1BnV1k4S1I1N05oQ3ZhUXJCSllieUxSV3VCbWJTeWJOR0xYOTN0VTZu?= =?utf-8?B?R2Ftak1ieXhCY0NVWEJtUnFpWTlYRk9qREJZV2paMVphWEgxbGMzb0hWbVNk?= =?utf-8?B?a0t3OU55YzJyUXl1Y3JyQkdnVEc2Y3UrT0c5Mmd6cURodnRBM2tlR1BOSUh2?= =?utf-8?B?bzcxQlRxRmdZajE4RFhjQ2t6QTdGU0c4dWdzR2xXNnZsNWR3Rmw3dWtqbHdX?= =?utf-8?B?cXd6cld0OFFSZDVwMGhmTHRlZVl2NVdTRkE0VHhZTEZXcmV3UjZOUkNQUThn?= =?utf-8?B?d21vc0l3TmxxdG53eHFxSGNOWDlrUDZ2WSt6Qk9XNXluWkQwL2U0YlZSc1U3?= =?utf-8?B?T09SdWxIU3ptbytMeHlPdTBjRzMrMGxCenJ0SENKRmEycHQzUE5qa2xDWnAx?= =?utf-8?B?Y1VFYjJhVm9RNDNlc2F2QXpCV2NhaXJqR0JYZVhNRWxYWjE0dzB5eTNHSWtO?= =?utf-8?B?T2JMUzBOUTV1Vy9WeTBnQS9rSUdiWDQzT2dsK0VobXdiamc2SFB5Sm1rVFVi?= =?utf-8?B?TDhZNUgvL05hdVg4N3M0aS9hNGh5RTVBdkg0YWl0ZTFJcEFmYWNXMnVnS0Qx?= =?utf-8?B?bzBWdW9OdklCblUyRjRjMVBVSS8xZVlkWmJZVVc3S1dPK2NNSjhyZ21nMFZS?= =?utf-8?B?Z3V4Vi93VTgyUEJnaFJ3U0xRQU5sOUpSbFkwdDAxYk91Nkg1N2w2aDNRdytX?= =?utf-8?B?NlY0QWtnVERWSExVaEpxUG9uNGRFcjcvdWhTNG0wVDhOaUQzUnM4MTdjbnBt?= =?utf-8?B?U0Jsc0lrL3hJWlRvYWkwZHR6WWUzQ1lGd1lQWk1uS0xNcjlQQmYxdTFUQTN1?= =?utf-8?B?dHNkTFJLbTVlbWhYODJDVTZmWkhoUlRDdC9ONVl5Sk9wN29vK0VDMkJSWDM2?= =?utf-8?B?Rm5YdXo1T3RJYTV1S3VndE40L2V5V1U3NWpnbUNqZzZaZUp0a0x5ZDJ4Tk9G?= =?utf-8?B?RTYzMGU3NktKR2RiK04xQXc4UFFDU2ZIU01ENTY5anZBbFpMMkVwbEZVTlBV?= =?utf-8?B?UVFRTHpPT3RLdG9lU0dBekVySWp2TERMUmRCOUJlUlZ6QWRtNHp5b2pnendq?= =?utf-8?B?N0x4aWhtQ0tISlJDK3dSTGI5MWVNUER0ZG1FV3pTZjg1Uk9ua3Flc3ZqZVJv?= =?utf-8?B?aGZHdkNMZkEzRUU5Ym1lN3lZalhRUEpKRGE4Q3o5YzJScWNSYUNoUkN6ek9h?= =?utf-8?B?MGsrUWJPS2V6ZThTdVNmc3hPTC9aYWZZS0FUcWFXRWJlYlN5UHZTVHFlU01t?= =?utf-8?B?eGJLakpja3FLS1g4NVRhMGsvTHJtUlNPVkFqMFJmSHZJczB3dHoyczdiRUdB?= =?utf-8?B?aGVVUERONm9vZ0JjeWhVNHdMVkZCcWpFKzZIN29PSXBEOHR6UEo2OFcvdHFO?= =?utf-8?B?YWlMQ25INzN1aVJRalhDRHY1Y3p3MGQ0RzJKOUxKY0psdUNuNjNiRkF3MVdQ?= =?utf-8?B?R0NuNEM2dVcyOEZzK0pQVVVnd2t6MkZmcHpGQnFaSzZqb3AyRnhrM2JEMHpx?= =?utf-8?B?L2hvWUF4REFiUFF1Wlc5VEttZ3BPYTZDQ3JPK1RKRFBYQ290ZWZ2N1Yxb3Fu?= =?utf-8?B?S0xQK1FzOFZTTE9ldWRSdWIybnhEYWRTQktmVythUUV0cHl5NjVxV0x5VUcv?= =?utf-8?B?Q3JOM3lJVVRNK1lpbTY5ZjVhNzNWWmVJMTcxQTl4V3UrYjR3UWZ4dnk4c0xq?= =?utf-8?B?UkErU1N2Njd0SWJXN1FBL3J6ZkF2NWhsaEZLVVp1aFRSdFl0K3VHbnhQQWxm?= =?utf-8?B?eS9NandUWnVuTlpuYkhjb016RldPY0VaNUp0dGc3TjlKZHV3dTFHeWtSYjlR?= =?utf-8?B?ZFlRWFNUWU4wTHhqSlpjSVJNQUQyZUJLaGFVcy9YbHN0SVVOWGlxTlNBN2RS?= =?utf-8?B?Ny9BOXlPMFI4dENkUDFiM0ltMVl6bEc1Qm5rRSt6cWVjdGJVNHJWK1Z0NVky?= =?utf-8?B?MGc9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: rl3iFZgxvgKes+OpvojH8rQF26oa3QOsZ+hoe25gKMvcLNapWMPhpwd3jMBemsGDqMz980wsTHJwqvSZeyq9b5GjGahljU/Ws4kU2KmS3hdY75I/w14F0/5pvbvjTEvL0OeEAeewKdxx+fKj4yIVCAynC2hPCfvIzUkYII9BtNWzcvH7tDOMMfpGUbaeI1T8+bgMWsq/yIu6GF+a3oaB8SPQCel1GwGNQdcNf72HYb6IcSjIf9LtuBC56lnS8iV45gXJhWYpQD8Fw2B0d70zK4u5JXj4gg74uAnTLSeM3BPI5bj/WyxtHcGrauDPApv5wW5dxRjPrsb9my7bdStFfKofrUVykHoCtdo7TfEZaK80SwT/KDLLfzjX5C8igb9UhsNOQK3pSQWTU+k6BWQoo1drgZyfq8P2j3JSb7kRt7UslZ0rxlyHZpj1tFqe4+N1HLwSyE5BXOFhfXzNkt9+L8pmxw9HkJsgjep9z8P+xcAuWsxflhRjjKg7f6BTr6+rlyxr6mq/PiCBxV4CHLOzg75anXOHCQYCtfBprlqkQBc12OeIEI7I2bZS6bszEA67AhbqUZHf1s8wyUxiLEK/StPQyFEvFWMF2R/O8+YfXS72hTca9a18Tq6Zkl4vXi/CaxNvh0hrSb1KLCC+FVJIxa9ldtsuy+1Ski2gXMZ+I9lsEgWR1Y1bEuc2G6u+D+RU0FmMU6Kf57oXfc0jJfa9t7I3FegNt/0p4wRtYWN8Z8vntlwIdXLleXYEIPwu6hvLFWxyrVl076iDyw9EJnff+oPqG+xX1Z2ff9ejVrolYIock26e/gjVT3RlVWLivFM9 X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 33766dd6-911f-457a-512d-08db6cfc64c6 X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Jun 2023 17:25:48.8120 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 90Dmz3G4nSvNQtgXzOyRoegFZA5syK5V8xwlE+d7H06qodq+5zLNgkUgcy7FY9G7tvWQ4JS7hbyMGKKSOvEH8fAWdvhJg07TKS3D/ocYVWk= X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW4PR03MB6635 On 13/06/2023 10:30 am, Jan Beulich wrote: > On 12.06.2023 18:13, Andrew Cooper wrote: >> @@ -593,15 +596,93 @@ static bool __init retpoline_calculations(void) >> return false; >> >> /* >> - * RSBA may be set by a hypervisor to indicate that we may move to a >> - * processor which isn't retpoline-safe. >> + * The meaning of the RSBA and RRSBA bits have evolved over time. The >> + * agreed upon meaning at the time of writing (May 2023) is thus: >> + * >> + * - RSBA (RSB Alternative) means that an RSB may fall back to an >> + * alternative predictor on underflow. Skylake uarch and later all have >> + * this property. Broadwell too, when running microcode versions prior >> + * to Jan 2018. >> + * >> + * - All eIBRS-capable processors suffer RSBA, but eIBRS also introduces >> + * tagging of predictions with the mode in which they were learned. So >> + * when eIBRS is active, RSBA becomes RRSBA (Restricted RSBA). >> + * >> + * - CPUs are not expected to enumerate both RSBA and RRSBA. >> + * >> + * Some parts (Broadwell) are not expected to ever enumerate this >> + * behaviour directly. Other parts have differing enumeration with >> + * microcode version. Fix up Xen's idea, so we can advertise them safely >> + * to guests, and so toolstacks can level a VM safety for migration. >> + * >> + * The following states exist: >> + * >> + * | | RSBA | EIBRS | RRSBA | Notes | Action | >> + * |---+------+-------+-------+--------------------+---------------| >> + * | 1 | 0 | 0 | 0 | OK (older parts) | Maybe +RSBA | >> + * | 2 | 0 | 0 | 1 | Broken | +RSBA, -RRSBA | >> + * | 3 | 0 | 1 | 0 | OK (pre-Aug ucode) | +RRSBA | >> + * | 4 | 0 | 1 | 1 | OK | | >> + * | 5 | 1 | 0 | 0 | OK | | >> + * | 6 | 1 | 0 | 1 | Broken | -RRSBA | >> + * | 7 | 1 | 1 | 0 | Broken | -RSBA, +RRSBA | >> + * | 8 | 1 | 1 | 1 | Broken | -RSBA | > You've kept the Action column as you had it originally, despite no longer > applying all the fixups. Wouldn't it make sense to mark those we don't do, > e.g. by enclosing in parentheses? Hmm, yes.  How does this look? |   | RSBA | EIBRS | RRSBA | Notes              | Action (in principle) | |---+------+-------+-------+--------------------+-----------------------| | 1 |    0 |     0 |     0 | OK (older parts)   | Maybe +RSBA           | | 2 |    0 |     0 |     1 | Broken             | (+RSBA, -RRSBA)       | | 3 |    0 |     1 |     0 | OK (pre-Aug ucode) | +RRSBA                | | 4 |    0 |     1 |     1 | OK                 |                       | | 5 |    1 |     0 |     0 | OK                 |                       | | 6 |    1 |     0 |     1 | Broken             | (-RRSBA)              | | 7 |    1 |     1 |     0 | Broken             | (-RSBA, +RRSBA)       | | 8 |    1 |     1 |     1 | Broken             | (-RSBA)               | >> + * further investigation. >> + */ >> + if ( cpu_has_eibrs ? cpu_has_rsba /* Rows 7, 8 */ >> + : cpu_has_rrsba /* Rows 2, 6 */ ) >> + { >> + printk(XENLOG_ERR >> + "FIRMWARE BUG: CPU %02x-%02x-%02x, ucode 0x%08x: RSBA %u, EIBRS %u, RRSBA %u\n", >> + boot_cpu_data.x86, boot_cpu_data.x86_model, >> + boot_cpu_data.x86_mask, ucode_rev, >> + cpu_has_rsba, cpu_has_eibrs, cpu_has_rrsba); > Perhaps with adjustments (as you deem them sensible) > Reviewed-by: Jan Beulich Thanks. ~Andrew From xen-devel-bounces@lists.xenproject.org Wed Jun 14 17:33:55 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 17:33:55 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549099.857434 (Exim 4.92) (envelope-from ) id 1q9UNS-0001G2-H0; Wed, 14 Jun 2023 17:33:50 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549099.857434; Wed, 14 Jun 2023 17:33:50 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9UNS-0001FJ-Dz; Wed, 14 Jun 2023 17:33:50 +0000 Received: by outflank-mailman (input) for mailman id 549099; Wed, 14 Jun 2023 17:33:49 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9UNR-0001Et-TU; Wed, 14 Jun 2023 17:33:49 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9UNR-00011t-P8; Wed, 14 Jun 2023 17:33:49 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9UNR-0008ET-9l; Wed, 14 Jun 2023 17:33:49 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q9UNR-0008Ci-9H; Wed, 14 Jun 2023 17:33:49 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=3RPqKXKXMUkOOezjfrxThSRxAHIO5a9srUxNXS5k/xw=; b=fCyCWPHSHeY/7lLv2xwzyhY0Dz t13/JYqactsA1Ndrg7viOJzCbMkQ1HhVKU9ExJyRmUOrsQUsIyFDzQ5+58WlCuL3HHcIqY7r+LREd aJLhRptIhGUXpK1vDxQVCg5ZqrSY6LYpLiYFj7SGPPvM8ZGqPPgkg6I3RVcFeN7rfk48=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable test] 181423: regressions - FAIL X-Osstest-Failures: xen-unstable:build-arm64-pvops:kernel-build:fail:regression xen-unstable:test-amd64-i386-livepatch:xen-install:fail:heisenbug xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:windows-install:fail:heisenbug xen-unstable:test-amd64-amd64-xl-qcow2:guest-start/debian.repeat:fail:heisenbug xen-unstable:test-arm64-arm64-examine:build-check(1):blocked:nonblocking xen-unstable:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking xen-unstable:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking xen-unstable:test-arm64-arm64-xl:build-check(1):blocked:nonblocking xen-unstable:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking xen-unstable:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking xen-unstable:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking xen-unstable:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking xen-unstable:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qcow2:guest-start.2:fail:nonblocking xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:debian-hvm-install:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-i386-xl-vhd:guest-start/debian.repeat:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking X-Osstest-Versions-This: xen=2f69ef96801f0d2b9646abf6396e60f99c56e3a0 X-Osstest-Versions-That: xen=2f69ef96801f0d2b9646abf6396e60f99c56e3a0 From: osstest service owner Date: Wed, 14 Jun 2023 17:33:49 +0000 flight 181423 xen-unstable real [real] http://logs.test-lab.xenproject.org/osstest/logs/181423/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-arm64-pvops 6 kernel-build fail REGR. vs. 181415 Tests which are failing intermittently (not blocking): test-amd64-i386-livepatch 7 xen-install fail in 181415 pass in 181423 test-amd64-amd64-xl-qemuu-win7-amd64 12 windows-install fail in 181415 pass in 181423 test-amd64-amd64-xl-qcow2 21 guest-start/debian.repeat fail pass in 181415 Tests which did not succeed, but are not blocking: test-arm64-arm64-examine 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-raw 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-xsm 1 build-check(1) blocked n/a test-arm64-arm64-xl 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit1 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit2 1 build-check(1) blocked n/a test-arm64-arm64-xl-thunderx 1 build-check(1) blocked n/a test-arm64-arm64-xl-vhd 1 build-check(1) blocked n/a test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail blocked in 181415 test-amd64-amd64-xl-qcow2 22 guest-start.2 fail in 181415 blocked in 181423 test-arm64-arm64-xl-xsm 15 migrate-support-check fail in 181415 never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail in 181415 never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail in 181415 never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail in 181415 never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail in 181415 never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail in 181415 never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail in 181415 never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail in 181415 never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail in 181415 never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail in 181415 never pass test-arm64-arm64-xl 15 migrate-support-check fail in 181415 never pass test-arm64-arm64-xl 16 saverestore-support-check fail in 181415 never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail in 181415 never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail in 181415 never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail in 181415 never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail in 181415 never pass test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 181415 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop fail like 181415 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 181415 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 181415 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop fail like 181415 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop fail like 181415 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm 12 debian-hvm-install fail like 181415 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail like 181415 test-armhf-armhf-libvirt 16 saverestore-support-check fail like 181415 test-amd64-i386-xl-vhd 21 guest-start/debian.repeat fail like 181415 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 181415 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail like 181415 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop fail like 181415 test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-i386-xl-pvshim 14 guest-start fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-i386-libvirt 15 migrate-support-check fail never pass test-amd64-i386-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-i386-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 15 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-multivcpu 15 migrate-support-check fail never pass test-armhf-armhf-xl-multivcpu 16 saverestore-support-check fail never pass test-armhf-armhf-xl-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 15 saverestore-support-check fail never pass test-armhf-armhf-xl-arndale 15 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 16 saverestore-support-check fail never pass test-armhf-armhf-xl 15 migrate-support-check fail never pass test-armhf-armhf-xl 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-libvirt 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 16 saverestore-support-check fail never pass test-armhf-armhf-xl-credit2 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit2 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail never pass version targeted for testing: xen 2f69ef96801f0d2b9646abf6396e60f99c56e3a0 baseline version: xen 2f69ef96801f0d2b9646abf6396e60f99c56e3a0 Last test of basis 181423 2023-06-14 10:29:58 Z 0 days Testing same since (not found) 0 attempts jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64-xtf pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-prev pass build-i386-prev pass build-amd64-pvops pass build-arm64-pvops fail build-armhf-pvops pass build-i386-pvops pass test-xtf-amd64-amd64-1 pass test-xtf-amd64-amd64-2 pass test-xtf-amd64-amd64-3 pass test-xtf-amd64-amd64-4 pass test-xtf-amd64-amd64-5 pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl blocked test-armhf-armhf-xl pass test-amd64-i386-xl pass test-amd64-coresched-i386-xl pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm fail test-amd64-i386-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-i386-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm blocked test-amd64-i386-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm blocked test-amd64-i386-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-i386-qemut-rhel6hvm-amd pass test-amd64-i386-qemuu-rhel6hvm-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-i386-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-freebsd10-amd64 pass test-amd64-amd64-qemuu-freebsd11-amd64 pass test-amd64-amd64-qemuu-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-i386-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-i386-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-i386-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-amd64-i386-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale pass test-amd64-amd64-examine-bios pass test-amd64-i386-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 blocked test-armhf-armhf-xl-credit1 pass test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 blocked test-armhf-armhf-xl-credit2 pass test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine blocked test-armhf-armhf-examine pass test-amd64-i386-examine pass test-amd64-i386-freebsd10-i386 pass test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-i386-qemut-rhel6hvm-intel pass test-amd64-i386-qemuu-rhel6hvm-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt pass test-amd64-i386-libvirt pass test-amd64-amd64-livepatch pass test-amd64-i386-livepatch pass test-amd64-amd64-migrupgrade pass test-amd64-i386-migrupgrade pass test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu pass test-amd64-amd64-pair pass test-amd64-i386-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-i386-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-i386-xl-pvshim fail test-amd64-amd64-pygrub pass test-armhf-armhf-libvirt-qcow2 pass test-amd64-amd64-xl-qcow2 fail test-arm64-arm64-libvirt-raw blocked test-armhf-armhf-libvirt-raw pass test-amd64-i386-libvirt-raw pass test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds pass test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-amd64-i386-xl-shadow pass test-arm64-arm64-xl-thunderx blocked test-amd64-amd64-examine-uefi pass test-amd64-i386-examine-uefi pass test-amd64-amd64-libvirt-vhd pass test-arm64-arm64-xl-vhd blocked test-armhf-armhf-xl-vhd pass test-amd64-i386-xl-vhd fail ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Published tested tree is already up to date. From xen-devel-bounces@lists.xenproject.org Wed Jun 14 17:59:53 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 17:59:53 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549107.857447 (Exim 4.92) (envelope-from ) id 1q9UmU-0003q7-II; Wed, 14 Jun 2023 17:59:42 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549107.857447; Wed, 14 Jun 2023 17:59:42 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9UmU-0003q0-FT; Wed, 14 Jun 2023 17:59:42 +0000 Received: by outflank-mailman (input) for mailman id 549107; Wed, 14 Jun 2023 17:59:41 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9UmT-0003pu-6U for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 17:59:41 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9UmS-0001hL-Je; Wed, 14 Jun 2023 17:59:40 +0000 Received: from [15.248.2.55] (helo=[10.24.67.27]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1q9UmS-0005AO-DX; Wed, 14 Jun 2023 17:59:40 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:Cc: References:To:Subject:MIME-Version:Date:Message-ID; bh=CVWO/3SeL+AfNSv869a3XqeTW4ElIy17X4+hP2IKDXk=; b=ZJLJmic6Kt2zQDhrkfON/h1DrJ Jbwl0q+PdT+7hSnuCrruJ0Zq6puN7TrWcDTaCJ3osipVyNZYvtVgAObiuCy1h1jF8i2CsoAFqAxSq dfwYJNpXFdZ9S5XvYaLmqBb4j9apBW/u0J510V36ImNKUs7mOS9seJPThEoaC9YxkCuc=; Message-ID: Date: Wed, 14 Jun 2023 18:59:38 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: Functions _spin_lock_cb() and handle_ro_raz() Content-Language: en-US To: Federico Serafini , xen-devel@lists.xenproject.org References: Cc: Stefano Stabellini , Bertrand Marquis From: Julien Grall In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit (+ Bertrand and Stefano) On 14/06/2023 14:08, Federico Serafini wrote: > Hello everyone, Hi Federico, Let me start with a tip to help reaching the maintainers and getting a more timely answer. Xen-devel has a large volume of e-mails (still less than Linux :)). So some of us will have filter to try to classify the e-mails received. Commonly, all the e-mails where the person is in the CC/To list will go to the inbox. All the others will go a separate directory that may or may not be watched. Personally, I tend to glance in that directory, but I would not read all of them. So I would highly recommend to CC the maintainers/reviewers of the specific component. You can find them in MAINTAINERS at the root of the Xen repository. We also have script like scripts/get_maintainers.pl that can help you to find who to CC. If you pass '-f ', it will output the maintainers of that file. You can also use the script with patch to find all the maintainers to CC. Now back to the subject of the e-mail. > > I am working on the violations of MISRA C:2012 Rule 8.10, > whose headline says: > "An inline function shall be declared with the static storage class". > > For both ARM64 and X86_64 builds, > function _spin_lock_cb() defined in spinlock.c violates the rule. > Such function is declared in spinlock.h without > the inline function specifier: are there any reasons to do this? > What about solving the violation by moving the function definition in > spinlock.h and declaring it as static inline? Jan answered it and sent a patch. So I will skip the reply for this one. > > The same happens also for the function handle_ro_raz() in the ARM64 > build, declared in traps.h and defined in traps.c. I looked at the history and it is not clear to me why the 'inline' was added at first. That said, I don't see any value to ask the compiler to inline (which it would be free to ignore) the function. So I would suggest to send a patch to remove the 'inline'. Best regards, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Wed Jun 14 18:03:48 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 18:03:48 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549112.857458 (Exim 4.92) (envelope-from ) id 1q9UqG-0005LU-VI; Wed, 14 Jun 2023 18:03:36 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549112.857458; Wed, 14 Jun 2023 18:03:36 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9UqG-0005LN-SR; Wed, 14 Jun 2023 18:03:36 +0000 Received: by outflank-mailman (input) for mailman id 549112; Wed, 14 Jun 2023 18:03:36 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9UqF-0005LA-Vw for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 18:03:36 +0000 Received: from mail-vs1-xe35.google.com (mail-vs1-xe35.google.com [2607:f8b0:4864:20::e35]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id c7602c19-0add-11ee-b232-6b7b168915f2; Wed, 14 Jun 2023 20:03:35 +0200 (CEST) Received: by mail-vs1-xe35.google.com with SMTP id ada2fe7eead31-43dc3f77accso1084383137.3 for ; Wed, 14 Jun 2023 11:03:35 -0700 (PDT) Received: from pm2-ws13.praxislan02.com ([2001:470:8:67e:ba27:ebff:fee8:ce27]) by smtp.gmail.com with ESMTPSA id s5-20020a05621412c500b006262de12a8csm4851613qvv.65.2023.06.14.11.03.32 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 14 Jun 2023 11:03:32 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: c7602c19-0add-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686765813; x=1689357813; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=lU8DGWwiCowI3/H8qxEHgym+pR/PD7+d49EnwTk48c0=; b=FTMGhYzyzesu0y8pq13HQGHdOiX37CAuijIjvJWyvNfGq+oJd8YxyBP8kdauoRw4Tg m6uOw5MoYCdf2z+6RHnovjMpq+Qj9okzrUJEMcbdtWDU/lV5BuqY4VkkNKFJb2kKXSC4 WfevBJzJtfMrZvQ4XdszbfQV6G0u2liwKaQTzPXsPCX7UhBQwEvUzPwNsJvqG6iUVUUA snQ9YIvCZ9DxC5LC8NfHt3ywo1lFu1q0gYah2O5/1fK5v5FUEmgymK6iLt/7umElkTv9 VaM/YsCQ30Q5bT/omyUDZbCo5LFpeiJCJZtZmbb+foEwedk8WYXM7IwJ+z4xu4MAeJHP Ya0g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686765813; x=1689357813; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=lU8DGWwiCowI3/H8qxEHgym+pR/PD7+d49EnwTk48c0=; b=btMjjmXecfxyfoHZCl+/dO5hXa+vJc1CcSWwcx6REag/xBRmo1JBpdvbPGxg5HACH7 84sEgIK5eEHwbJLYzAwt0svK3nfqPAVYtIrlnHQtaVxGLiv70tl/95Z4/nGXZX/R9AwY ljkQrbHdUDXVwi54fgkmCtJ46JQOZrXvSHUHm3c05SFaPYo5ovV5Aj9w8Hfs+qchjJus GgGf18LYXckPEGhKs6gpuBgQlY7oUpAANN7eWmp+5i/rGMWTKQxoiT7Y9LZA4ckAjS+w vis9b7+F+j03QETWt9G/HD5LpPmo/mf7w79+y5vLvPKqWRorqn6qesSM/CAMNHUTt+9r rYDA== X-Gm-Message-State: AC+VfDyWaGeUdD/+P/Lgw9OS5M5Wr6hcdVhPYCo63fHDSd1yVlZ37aXX bZ827CSE+/cotmtqXYREcXUfOaFHL8Y= X-Google-Smtp-Source: ACHHUZ5d7g8agZ07KEhe8IWu0FQmrugubkYEzKObMy6SSopXNduOyiTa/lcirAy2NwfmmUcx7Np8Jw== X-Received: by 2002:a67:ebda:0:b0:43f:35f5:771a with SMTP id y26-20020a67ebda000000b0043f35f5771amr4569198vso.19.1686765813187; Wed, 14 Jun 2023 11:03:33 -0700 (PDT) From: Jason Andryuk To: xen-devel@lists.xenproject.org Cc: Jason Andryuk , Jan Beulich Subject: [PATCH v4 01/15] cpufreq: Allow restricting to internal governors only Date: Wed, 14 Jun 2023 14:02:39 -0400 Message-Id: <20230614180253.89958-2-jandryuk@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230614180253.89958-1-jandryuk@gmail.com> References: <20230614180253.89958-1-jandryuk@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit For hwp, the standard governors are not usable, and only the internal one is applicable. Add the cpufreq_governor_internal boolean to indicate when an internal governor, like hwp, will be used. This is set during presmp_initcall, so that it can suppress governor registration during initcall. Add an internal flag to struct cpufreq_governor to indicate such governors. This way, the unusable governors are not registered, so the internal one is the only one returned to userspace. This means incompatible governors won't be advertised to userspace. Signed-off-by: Jason Andryuk --- v4: Rework to use an internal flag Removed Jan's Ack since the approach is different. v3: Switch to initdata Add Jan Acked-by Commit message s/they/the/ typo Don't register hwp-internal when running non-hwp - Marek v2: Switch to "-internal" Add blank line in header --- xen/drivers/cpufreq/cpufreq.c | 7 +++++++ xen/include/acpi/cpufreq/cpufreq.h | 3 +++ 2 files changed, 10 insertions(+) diff --git a/xen/drivers/cpufreq/cpufreq.c b/xen/drivers/cpufreq/cpufreq.c index 2321c7dd07..cccf9a64c8 100644 --- a/xen/drivers/cpufreq/cpufreq.c +++ b/xen/drivers/cpufreq/cpufreq.c @@ -56,6 +56,7 @@ struct cpufreq_dom { }; static LIST_HEAD_READ_MOSTLY(cpufreq_dom_list_head); +bool __initdata cpufreq_governor_internal; struct cpufreq_governor *__read_mostly cpufreq_opt_governor; LIST_HEAD_READ_MOSTLY(cpufreq_governor_list); @@ -121,6 +122,12 @@ int __init cpufreq_register_governor(struct cpufreq_governor *governor) if (!governor) return -EINVAL; + if (cpufreq_governor_internal && !governor->internal) + return -EINVAL; + + if (!cpufreq_governor_internal && governor->internal) + return -EINVAL; + if (__find_governor(governor->name) != NULL) return -EEXIST; diff --git a/xen/include/acpi/cpufreq/cpufreq.h b/xen/include/acpi/cpufreq/cpufreq.h index 35dcf21e8f..1c0872506a 100644 --- a/xen/include/acpi/cpufreq/cpufreq.h +++ b/xen/include/acpi/cpufreq/cpufreq.h @@ -106,6 +106,7 @@ struct cpufreq_governor { unsigned int event); bool_t (*handle_option)(const char *name, const char *value); struct list_head governor_list; + bool internal; }; extern struct cpufreq_governor *cpufreq_opt_governor; @@ -114,6 +115,8 @@ extern struct cpufreq_governor cpufreq_gov_userspace; extern struct cpufreq_governor cpufreq_gov_performance; extern struct cpufreq_governor cpufreq_gov_powersave; +extern bool cpufreq_governor_internal; + extern struct list_head cpufreq_governor_list; extern int cpufreq_register_governor(struct cpufreq_governor *governor); -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Wed Jun 14 18:03:48 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 18:03:48 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549113.857463 (Exim 4.92) (envelope-from ) id 1q9UqH-0005NU-8a; Wed, 14 Jun 2023 18:03:37 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549113.857463; Wed, 14 Jun 2023 18:03:37 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9UqH-0005N1-25; Wed, 14 Jun 2023 18:03:37 +0000 Received: by outflank-mailman (input) for mailman id 549113; Wed, 14 Jun 2023 18:03:36 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9UqG-0005L9-7U for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 18:03:36 +0000 Received: from mail-qk1-x733.google.com (mail-qk1-x733.google.com [2607:f8b0:4864:20::733]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id c5849e62-0add-11ee-8611-37d641c3527e; Wed, 14 Jun 2023 20:03:32 +0200 (CEST) Received: by mail-qk1-x733.google.com with SMTP id af79cd13be357-75b14216386so225919585a.0 for ; Wed, 14 Jun 2023 11:03:31 -0700 (PDT) Received: from pm2-ws13.praxislan02.com ([2001:470:8:67e:ba27:ebff:fee8:ce27]) by smtp.gmail.com with ESMTPSA id s5-20020a05621412c500b006262de12a8csm4851613qvv.65.2023.06.14.11.03.28 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 14 Jun 2023 11:03:29 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: c5849e62-0add-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686765810; x=1689357810; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=IehyjnpBVsuzAr3QEOZb66rWyHW0327m7BV3mw01hZU=; b=Yw8L4cETW2xuTRK94N4/pI7BVlhTIY/oRHudaSN3wQsPIZSoiGpxj7htQR4tU8keFH wcv6a/s480ybLrj4fvkWYrizFumTxrYfm2w6O8kvQuAER0JHOYN+1MbihH5HncjVJ4ky 7MyWU5q73BWhaKhsCMFaSmXWgGBEeapfC1GJTVxe7Ze7tnQusdrDN+YtZWapc9h52V80 RMq3laooK0HhZGn7YzQaLZp13RWMMcd8RE8e8Emj33w4kqZ73JWr2yYwVy5WnvadZ7CX scDW6zDOi//Oc7ftKtlFmk/OOBHSeeQ9sy6M2F838bfUspw2o6BdtSwDYU4zQPKIgZqT RPaw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686765810; x=1689357810; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=IehyjnpBVsuzAr3QEOZb66rWyHW0327m7BV3mw01hZU=; b=ARJz92hjZ5vMLAnLjoSc/PnUBQjF2Zzb2pFwfDbUnub5mIXSkkxGMRrM2ANcBTl0zw zrkgQ8rHAsG6SyLbbLmRPiFRX4a4p/10lyPcDXvSgnJIkdVEfT/NGK64uND1M4OMLhOr LjFBFQEfIm691gMG92PcOhdeF72NsSmVXYAlaTiWwNavw+cYKc5G9XLYx8jHRSgU7Ugw xLOGH959UmFAfYwsaj8ecImLwcvjQGBlVxqJoVD07C8ymDvXaWZowIZ0Uub2bwMbFaEY wyc3i16hd6iGPgxFcIPTI0iaBpr3L/ahKGmj6z3eWl9T2dwjt5sxN24JpVouHu6z3oAf XuUQ== X-Gm-Message-State: AC+VfDw3n+ft4lZhlSDcGc4BdwktFt8ORxXXxKAd/koBCQAdPUoAbMtR r74uRKc6adFDycY6kC04LOd7dRi7XXY= X-Google-Smtp-Source: ACHHUZ4P0b3rIxVAt3mCcejgI4oxHEOyt747uxjtKfWj8VCA1GVfTUbdsWnKNengRfQtIJHABLNn0g== X-Received: by 2002:a05:6214:20ee:b0:62b:42e4:bc2 with SMTP id 14-20020a05621420ee00b0062b42e40bc2mr17465539qvk.29.1686765810251; Wed, 14 Jun 2023 11:03:30 -0700 (PDT) From: Jason Andryuk To: xen-devel@lists.xenproject.org Cc: Jason Andryuk , Jan Beulich , Andrew Cooper , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Wei Liu , Anthony PERARD , Juergen Gross , George Dunlap , Julien Grall , Stefano Stabellini , Henry Wang , Community Manager Subject: [PATCH v4 00/15] Intel Hardware P-States (HWP) support Date: Wed, 14 Jun 2023 14:02:38 -0400 Message-Id: <20230614180253.89958-1-jandryuk@gmail.com> X-Mailer: git-send-email 2.40.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Hi, This patch series adds Hardware-Controlled Performance States (HWP) for Intel processors to Xen. v2 was only partially reviewed, so v3 is mostly a reposting of v2. In v2 & v3, I think I addressed all comments for v1. I kept patch 11 "xenpm: Factor out a non-fatal cpuid_parse variant", with a v2 comment explaining why I keep it. v3 adds "xen/x86: Tweak PDC bits when using HWP". Qubes testing revealed an issue where enabling HWP can crash firwmare code (maybe SMM). This requires a Linux change to get the PDC bits from Xen and pass them to ACPI. Roger has a patch [0] to set the PDC bits. Roger's 3 patch series was tested with "xen/x86: Tweak PDC bits when using HWP" on affected hardware and allowed proper operation. v4: There is a large amount or renaming from HWP/hwp to CPPC/cppc in the series. The driver remains hwp_ prefixed since it is dealing with the hardware interface. The sysctl, xc and xenpm interfaces were renamed to cppc to be the generic ACPI CPPC (Collaborative Processor Performance Control) interface. struct xen_get_cpufreq_para was re-organized in a binary compatible fashion to nest scaling governor options. This allows the cppc support to use uint32_t's for its parameters. HWP is now enabled with a top-level cpufreq=hwp option. It will fallback to cpufreq=xen if hwp is unavailable. This seems like the most user-friendly option. Since the user was trying to specify *some* cpufreq, we should give them the best that we can instead of disabling the functionality. "xenpm: Factor out a non-fatal cpuid_parse variant" was dropped. set-cpufreq-cppc expects either a cpu number or none specified, which implies all. Some patches were re-arrange - "xen/x86: Tweak PDC bits when using HWP" now comes immediately after "cpufreq: Add Hardware P-State (HWP) driver" The implementation of "cpufreq: Allow restricting to internal governors only " changed, so I removed Jan's Ack. Previous cover letter: With HWP, the processor makes its own determinations for frequency selection, though users can set some parameters and preferences. There is also Turbo Boost which dynamically pushes the max frequency if possible. The existing governors don't work with HWP since they select frequencies and HWP doesn't expose those. Therefore a dummy hwp-interal governor is used that doesn't do anything. xenpm get-cpufreq-para is extended to show HWP parameters, and set-cpufreq-cppc is added to set them. A lightly loaded OpenXT laptop showed ~1W power savings according to powertop. A mostly idle Fedora system (dom0 only) showed a more modest power savings. This is for a 10th gen 6-core 1600 MHz base 4900 MHZ max cpu. In the default balance mode, Turbo Boost doesn't exceed 4GHz. Tweaking the energy_perf preference with `xenpm set-cpufreq-para balance ene:64`, I've seen the CPU hit 4.7GHz before throttling down and bouncing around between 4.3 and 4.5 GHz. Curiously the other cores read ~4GHz when turbo boost takes affect. This was done after pinning all dom0 cores, and using taskset to pin to vCPU/pCPU 11 and running a bash tightloop. HWP defaults to disabled and running with the existing HWP configuration - it doesn't reconfigure by default. It can be enabled with cpufreq=hwp. Hardware Duty Cycling (HDC) is another feature to autonomously powerdown things. It defaults to enabled when HWP is enabled, but HDC can be disabled on the command line. cpufreq=xen:hwp,no-hdc I've only tested on 8th gen and 10th gen systems with activity window and energy_perf support. So the pathes for CPUs lacking those features are untested. Fast MSR support was removed in v2. The model specific checking was not done properly, and I don't have hardware to test with. Since writes are expected to be infrequent, I just removed the code. This changes the systcl_pm_op hypercall, so that wants review. Regards, Jason [0] https://lore.kernel.org/xen-devel/20221121102113.41893-3-roger.pau@citrix.com/ Jason Andryuk (15): cpufreq: Allow restricting to internal governors only cpufreq: Add perf_freq to cpuinfo cpufreq: Export intel_feature_detect xen/sysctl: Nest cpufreq scaling options pmstat&xenpm: Re-arrage for cpufreq union cpufreq: Add Hardware P-State (HWP) driver xen/x86: Tweak PDC bits when using HWP xenpm: Change get-cpufreq-para output for hwp cpufreq: Export HWP parameters to userspace as CPPC libxc: Include cppc_para in definitions xenpm: Print HWP/CPPC parameters xen: Add SET_CPUFREQ_HWP xen_sysctl_pm_op libxc: Add xc_set_cpufreq_cppc xenpm: Add set-cpufreq-cppc subcommand CHANGELOG: Add Intel HWP entry CHANGELOG.md | 2 +- docs/misc/xen-command-line.pandoc | 9 +- tools/include/xenctrl.h | 28 +- tools/libs/ctrl/xc_pm.c | 35 +- tools/misc/xenpm.c | 385 +++++++++++-- xen/arch/x86/acpi/cpufreq/Makefile | 1 + xen/arch/x86/acpi/cpufreq/cpufreq.c | 15 +- xen/arch/x86/acpi/cpufreq/hwp.c | 664 ++++++++++++++++++++++ xen/arch/x86/acpi/lib.c | 5 + xen/arch/x86/cpu/mcheck/mce_intel.c | 6 + xen/arch/x86/include/asm/cpufeature.h | 12 +- xen/arch/x86/include/asm/msr-index.h | 14 + xen/drivers/acpi/pmstat.c | 102 ++-- xen/drivers/cpufreq/cpufreq.c | 16 + xen/drivers/cpufreq/utility.c | 1 + xen/include/acpi/cpufreq/cpufreq.h | 15 + xen/include/acpi/cpufreq/processor_perf.h | 4 + xen/include/acpi/pdc_intel.h | 1 + xen/include/public/sysctl.h | 137 ++++- 19 files changed, 1343 insertions(+), 109 deletions(-) create mode 100644 xen/arch/x86/acpi/cpufreq/hwp.c -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Wed Jun 14 18:03:52 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 18:03:52 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549114.857478 (Exim 4.92) (envelope-from ) id 1q9UqM-0005sb-Hu; Wed, 14 Jun 2023 18:03:42 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549114.857478; Wed, 14 Jun 2023 18:03:42 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9UqM-0005sU-Ej; Wed, 14 Jun 2023 18:03:42 +0000 Received: by outflank-mailman (input) for mailman id 549114; Wed, 14 Jun 2023 18:03:40 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9UqK-0005L9-NB for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 18:03:40 +0000 Received: from mail-qv1-xf32.google.com (mail-qv1-xf32.google.com [2607:f8b0:4864:20::f32]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id c95a91c6-0add-11ee-8611-37d641c3527e; Wed, 14 Jun 2023 20:03:38 +0200 (CEST) Received: by mail-qv1-xf32.google.com with SMTP id 6a1803df08f44-62de651bcf0so20024736d6.2 for ; Wed, 14 Jun 2023 11:03:38 -0700 (PDT) Received: from pm2-ws13.praxislan02.com ([2001:470:8:67e:ba27:ebff:fee8:ce27]) by smtp.gmail.com with ESMTPSA id s5-20020a05621412c500b006262de12a8csm4851613qvv.65.2023.06.14.11.03.35 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 14 Jun 2023 11:03:35 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: c95a91c6-0add-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686765816; x=1689357816; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=o5tkXnrNUw3eHjvmXo8drCoxp1uJZERpOt4e3aBqvlI=; b=WfNbPQT1HJVztPPCPFYHumWFQ4f9i6Y6tO82zr5G78mf9uA5aklvR2FPBCyzFESLQv HamDDASz8qUWFCp+If5uMty6mI5slouwmLtdsV+Z/wD3To1tw8w5l+U0yvu1GzWWF7qB omC+MMuiNiqjmlUmT2K1td73nlWj1CyVmUThHbHTtKWcYig5dwjZzL3EUi6PaiJIc85u zRDr1JhCW1j/fvWPRLJU+PFqcmHsNS2e3C9fkTEefjH/tGcPaLvZjhGNnACmDi32l2mj 1LRWuFsoTGiMltuqEXyNOSvA7pn7XOZs6scE45qlGB2NYCYMq1DL0/JgjFMPiE/ofZEo QIBA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686765816; x=1689357816; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=o5tkXnrNUw3eHjvmXo8drCoxp1uJZERpOt4e3aBqvlI=; b=iTTK6LDSP6lCQvYnNHHuK2jDEznmdipTrLDOb6MgiHYWzYK3Mve6LELsd4uHGyJq8q 3TOx1qxajdweVizGf3gNBRzhQlGUbCG8sRC9uFzQF0erlRnQf+oWdcyeHr2NQDJ3crXv s4+y6xTHcKby6CGzCH3Z3JjjKq/fDi9Tj9pQbrLMP9YgznS/b6fAS2W8gWGYKKKCkzVO yDBfIzopeus5LhHZwUp4+SSyHKVFNlf8tqbPmkccB8g9N22HgvKvIOSrYNaPg2k2GnJi LyzKr5ZNBNpnD4ACjFtPqeJOHjffg6fe6uEnY7l3rka+w8L8/5lE8Q5b+k8C6E3xObKo NNWA== X-Gm-Message-State: AC+VfDw4JUqDW1ZaXVl8F3qOZsJRbg1p9q+xyFec9MSmaAv8T90BkS71 +uQiKvqujTvp0ad9juPqof1vlEYg/+c= X-Google-Smtp-Source: ACHHUZ7qj8JSis1q8yl+rMlAnzFRNgXrHEu7PaDjBjBcTiPdQNLM8Dlr3ErwVNhse3Hbf2SgHdmbUg== X-Received: by 2002:a05:6214:5016:b0:62f:ebc4:89bd with SMTP id jo22-20020a056214501600b0062febc489bdmr750110qvb.63.1686765816353; Wed, 14 Jun 2023 11:03:36 -0700 (PDT) From: Jason Andryuk To: xen-devel@lists.xenproject.org Cc: Jason Andryuk , Jan Beulich , Andrew Cooper , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Wei Liu Subject: [PATCH v4 02/15] cpufreq: Add perf_freq to cpuinfo Date: Wed, 14 Jun 2023 14:02:40 -0400 Message-Id: <20230614180253.89958-3-jandryuk@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230614180253.89958-1-jandryuk@gmail.com> References: <20230614180253.89958-1-jandryuk@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit acpi-cpufreq scales the aperf/mperf measurements by max_freq, but HWP needs to scale by base frequency. Settings max_freq to base_freq "works" but the code is not obvious, and returning values to userspace is tricky. Add an additonal perf_freq member which is used for scaling aperf/mperf measurements. Signed-off-by: Jason Andryuk Acked-by: Jan Beulich --- v3: Add Jan's Ack I don't like this, but it seems the best way to re-use the common aperf/mperf code. The other option would be to add wrappers that then do the acpi vs. hwp scaling. --- xen/arch/x86/acpi/cpufreq/cpufreq.c | 2 +- xen/drivers/cpufreq/utility.c | 1 + xen/include/acpi/cpufreq/cpufreq.h | 3 +++ 3 files changed, 5 insertions(+), 1 deletion(-) diff --git a/xen/arch/x86/acpi/cpufreq/cpufreq.c b/xen/arch/x86/acpi/cpufreq/cpufreq.c index 2e0067fbe5..6c70d04395 100644 --- a/xen/arch/x86/acpi/cpufreq/cpufreq.c +++ b/xen/arch/x86/acpi/cpufreq/cpufreq.c @@ -316,7 +316,7 @@ unsigned int get_measured_perf(unsigned int cpu, unsigned int flag) else perf_percent = 0; - return policy->cpuinfo.max_freq * perf_percent / 100; + return policy->cpuinfo.perf_freq * perf_percent / 100; } static unsigned int cf_check get_cur_freq_on_cpu(unsigned int cpu) diff --git a/xen/drivers/cpufreq/utility.c b/xen/drivers/cpufreq/utility.c index 9eb7ecedcd..6831f62851 100644 --- a/xen/drivers/cpufreq/utility.c +++ b/xen/drivers/cpufreq/utility.c @@ -236,6 +236,7 @@ int cpufreq_frequency_table_cpuinfo(struct cpufreq_policy *policy, policy->min = policy->cpuinfo.min_freq = min_freq; policy->max = policy->cpuinfo.max_freq = max_freq; + policy->cpuinfo.perf_freq = max_freq; policy->cpuinfo.second_max_freq = second_max_freq; if (policy->min == ~0) diff --git a/xen/include/acpi/cpufreq/cpufreq.h b/xen/include/acpi/cpufreq/cpufreq.h index 1c0872506a..e2e03b8bd7 100644 --- a/xen/include/acpi/cpufreq/cpufreq.h +++ b/xen/include/acpi/cpufreq/cpufreq.h @@ -37,6 +37,9 @@ extern struct acpi_cpufreq_data *cpufreq_drv_data[NR_CPUS]; struct cpufreq_cpuinfo { unsigned int max_freq; unsigned int second_max_freq; /* P1 if Turbo Mode is on */ + unsigned int perf_freq; /* Scaling freq for aperf/mpref. + acpi-cpufreq uses max_freq, but HWP uses + base_freq.*/ unsigned int min_freq; unsigned int transition_latency; /* in 10^(-9) s = nanoseconds */ }; -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Wed Jun 14 18:03:53 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 18:03:53 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549115.857483 (Exim 4.92) (envelope-from ) id 1q9UqM-0005vs-Us; Wed, 14 Jun 2023 18:03:42 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549115.857483; Wed, 14 Jun 2023 18:03:42 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9UqM-0005uo-N9; Wed, 14 Jun 2023 18:03:42 +0000 Received: by outflank-mailman (input) for mailman id 549115; Wed, 14 Jun 2023 18:03:41 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9UqL-0005LA-5G for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 18:03:41 +0000 Received: from mail-qk1-x733.google.com (mail-qk1-x733.google.com [2607:f8b0:4864:20::733]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id caba7099-0add-11ee-b232-6b7b168915f2; Wed, 14 Jun 2023 20:03:40 +0200 (CEST) Received: by mail-qk1-x733.google.com with SMTP id af79cd13be357-75eba89e373so136308685a.0 for ; Wed, 14 Jun 2023 11:03:40 -0700 (PDT) Received: from pm2-ws13.praxislan02.com ([2001:470:8:67e:ba27:ebff:fee8:ce27]) by smtp.gmail.com with ESMTPSA id s5-20020a05621412c500b006262de12a8csm4851613qvv.65.2023.06.14.11.03.38 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 14 Jun 2023 11:03:38 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: caba7099-0add-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686765819; x=1689357819; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=VlkDpnzBOrYGbDVTZSSMEmRPTHTcziXTR1AlOBlC9P0=; b=AXnywO9drA3Q8W6DRI1x3EOkjYsJTjm66pGvWIuNfbh9MCYQf9DnHPNj0kPKgBCcJk 5YZwfxOlkJZilJT9HNdET11GHbG2MAW6vGFdnR9GrD3pzwmG8hN6yzA8yoJFniWOICfg 52qEe1JjedvdvS+rPiIeXIi/2ODtHrEjIdjIoCaels7dA/o7U05Y0J+FO0nDGEWyCs8O rs28/5dz/gzyeiOpwZnYJFL+XI1R6dkCMwrDYbaLbJNTs3b4MaGR86DSlO/mbHwi1XbP UYbzL/VTU2qzOLqQjvwj974CBVoGYL+XF1V/pWMR9PQEH/AnKDsnFxF9JyB0DkSjC57+ ic8w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686765819; x=1689357819; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=VlkDpnzBOrYGbDVTZSSMEmRPTHTcziXTR1AlOBlC9P0=; b=GHFUF2rWg9kYUr1k33d6f5FaCbUOlsgEM5EKzhUE45XPYOTila4XYqQ6H1Bm3UwE7/ Wn731Pc1OG86oyPMNs3w4y+VhTeKgsH+zy08Yv3pSzC4gk6P0iZWTJGs4VEqHswLz1vX YLxJQ8FxXsmujHZ3mQLo/kOUrSfYB/qter940e7bpGzklyv5QEx/YP3anTlaJVbBzNcB vx8gHjZ6cAiSAwNPee28wzzcDz8MvyF0NvLhqEsVIiFUI7xxjWyetSnIV3PRcKTOeeyZ 4q9jgpjOlPzvIN+ZvminCdI/1hliw53DksPtYXyX0CDx7tD5Ro4ouU3TLMeS/qzpdQ8J KiPQ== X-Gm-Message-State: AC+VfDyrxw+iPWpC8L29E0Nkd0MK0DKjuee+nPjG2cfLqNFyUCTEO9wi kdegYchdPpbSoQ0hMj2gwvSH0QvKPic= X-Google-Smtp-Source: ACHHUZ5R/W/a+GmZ21I2JuypJPX5nA4naO0DoMZMZaZAwUhz2FeSuuwZnCLdEm4hEUjr8RHGi7G6EQ== X-Received: by 2002:a05:620a:4686:b0:75f:828:3c52 with SMTP id bq6-20020a05620a468600b0075f08283c52mr2758989qkb.3.1686765818943; Wed, 14 Jun 2023 11:03:38 -0700 (PDT) From: Jason Andryuk To: xen-devel@lists.xenproject.org Cc: Jason Andryuk , Jan Beulich , Andrew Cooper , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Wei Liu Subject: [PATCH v4 03/15] cpufreq: Export intel_feature_detect Date: Wed, 14 Jun 2023 14:02:41 -0400 Message-Id: <20230614180253.89958-4-jandryuk@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230614180253.89958-1-jandryuk@gmail.com> References: <20230614180253.89958-1-jandryuk@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Export feature_detect as intel_feature_detect so it can be re-used by HWP. Signed-off-by: Jason Andryuk Acked-by: Jan Beulich --- v4: Add Jan's Ack v3: Remove void * cast when calling intel_feature_detect v2: export intel_feature_detect with typed pointer Move intel_feature_detect to acpi/cpufreq/cpufreq.h since the declaration now contains struct cpufreq_policy *. --- xen/arch/x86/acpi/cpufreq/cpufreq.c | 8 ++++++-- xen/include/acpi/cpufreq/cpufreq.h | 2 ++ 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/xen/arch/x86/acpi/cpufreq/cpufreq.c b/xen/arch/x86/acpi/cpufreq/cpufreq.c index 6c70d04395..f1cc473b4f 100644 --- a/xen/arch/x86/acpi/cpufreq/cpufreq.c +++ b/xen/arch/x86/acpi/cpufreq/cpufreq.c @@ -339,9 +339,8 @@ static unsigned int cf_check get_cur_freq_on_cpu(unsigned int cpu) return extract_freq(get_cur_val(cpumask_of(cpu)), data); } -static void cf_check feature_detect(void *info) +void intel_feature_detect(struct cpufreq_policy *policy) { - struct cpufreq_policy *policy = info; unsigned int eax; eax = cpuid_eax(6); @@ -353,6 +352,11 @@ static void cf_check feature_detect(void *info) } } +static void cf_check feature_detect(void *info) +{ + intel_feature_detect(info); +} + static unsigned int check_freqs(const cpumask_t *mask, unsigned int freq, struct acpi_cpufreq_data *data) { diff --git a/xen/include/acpi/cpufreq/cpufreq.h b/xen/include/acpi/cpufreq/cpufreq.h index e2e03b8bd7..a49efd1cb2 100644 --- a/xen/include/acpi/cpufreq/cpufreq.h +++ b/xen/include/acpi/cpufreq/cpufreq.h @@ -244,4 +244,6 @@ int write_userspace_scaling_setspeed(unsigned int cpu, unsigned int freq); void cpufreq_dbs_timer_suspend(void); void cpufreq_dbs_timer_resume(void); +void intel_feature_detect(struct cpufreq_policy *policy); + #endif /* __XEN_CPUFREQ_PM_H__ */ -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Wed Jun 14 18:03:56 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 18:03:56 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549117.857498 (Exim 4.92) (envelope-from ) id 1q9UqQ-0006Qc-2c; Wed, 14 Jun 2023 18:03:46 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549117.857498; Wed, 14 Jun 2023 18:03:46 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9UqP-0006QI-Ut; Wed, 14 Jun 2023 18:03:45 +0000 Received: by outflank-mailman (input) for mailman id 549117; Wed, 14 Jun 2023 18:03:44 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9UqO-0005LA-8E for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 18:03:44 +0000 Received: from mail-qk1-x72d.google.com (mail-qk1-x72d.google.com [2607:f8b0:4864:20::72d]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id cc7940e3-0add-11ee-b232-6b7b168915f2; Wed, 14 Jun 2023 20:03:43 +0200 (CEST) Received: by mail-qk1-x72d.google.com with SMTP id af79cd13be357-75d528d0811so236863385a.0 for ; Wed, 14 Jun 2023 11:03:43 -0700 (PDT) Received: from pm2-ws13.praxislan02.com ([2001:470:8:67e:ba27:ebff:fee8:ce27]) by smtp.gmail.com with ESMTPSA id s5-20020a05621412c500b006262de12a8csm4851613qvv.65.2023.06.14.11.03.40 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 14 Jun 2023 11:03:41 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: cc7940e3-0add-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686765822; x=1689357822; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=mnealSDcQ5eD4/BMHbAdAnbMLaUANznTtXLujb813pg=; b=aNSOaYk5zO1KBg04VlVemwmWTnIt6/wLAeqR1wPh7xYYpSSH4qlOIMdBGatS2sXEh4 OcaVMqXW1jDcyxAdnVyON3c5BI+g0JwYJWyInEKwR4Bta0GBVkiORyxefZTvGQOdLvw6 0Is4l0/lm+JEINReuo51rkoPfx0SZTZl0wJ7wi+PDlKbEpgmHFmpx0yfCcIqFQfo34+G 8KwlXT14II/YNrHVOojLL8NOX9waHB2JlFSQcwWnSGo1j1HdqoTid7IiOzkGD/6BrdzA RxDgez8RXmvmK4HSF5HDeyljzZfyoFSEy1aYInOzwC8J0g9yW00t5OkXRs6eE5+U1jxG pETg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686765822; x=1689357822; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=mnealSDcQ5eD4/BMHbAdAnbMLaUANznTtXLujb813pg=; b=c1eA/CMvfMBuXD4Y6Y0HS8ULr1mNrJpbO+XjzbfOgxJbCbYh8jmOJUyjdfalerCJw7 esfdzzUBNcMxEicqGNpyVl8CAT/k7EZ+vEIJ7hvkUaarRqQed8aIPx529srSL5lva4iD iZAx6ugfiQfskdacZAwn5kELK3vpxPRCDJmbGRJIP1ejAa7PHNnQCMHRkZpm9ir1LIbX Sh9aFu0NO/yPiGlQO3ALnWUwEhXZcei5gq4GN28DG3wT2l654eJHExHBBjzdbFrRNyet ygMrcdEYDfO+zyhDbn/3G12U02N6sEyhHvhAqN7bFPtiH6HwYon+6UOF7zYXD9MzXwVV xcPQ== X-Gm-Message-State: AC+VfDzO+KnP78vnFk8/p6NGPZWwQgmh6JG82AtLzDFymBKBwV+MyImh PFzaf9D/Xd2o9qkiTOH11/36eXP/LtE= X-Google-Smtp-Source: ACHHUZ7Hjc2utKPmJ0Oof45Hh1e1ert+3gNRKB/sSEHZeaA1HRXQM/ADydrx9UXqqd56EnLb+djrXA== X-Received: by 2002:a05:6214:2467:b0:621:17c6:2713 with SMTP id im7-20020a056214246700b0062117c62713mr9796165qvb.49.1686765821615; Wed, 14 Jun 2023 11:03:41 -0700 (PDT) From: Jason Andryuk To: xen-devel@lists.xenproject.org Cc: Jason Andryuk , Wei Liu , Anthony PERARD , Juergen Gross , Andrew Cooper , George Dunlap , Jan Beulich , Julien Grall , Stefano Stabellini Subject: [PATCH v4 04/15] xen/sysctl: Nest cpufreq scaling options Date: Wed, 14 Jun 2023 14:02:42 -0400 Message-Id: <20230614180253.89958-5-jandryuk@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230614180253.89958-1-jandryuk@gmail.com> References: <20230614180253.89958-1-jandryuk@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Add a union and struct so that most of the scaling variables of struct xen_get_cpufreq_para are within in a binary-compatible layout. This allows cppc_para to live in the larger union and use uint32_ts - struct xen_cppc_para will be 10 uint32_t's. The new scaling struct is 3 * uint32_t + 16 bytes CPUFREQ_NAME_LEN + 4 * uint32_t for xen_ondemand = 11 uint32_t. That means the old size is retained, int32_t turbo_enabled doesn't move and it's binary compatible. Signed-off-by: Jason Andryuk --- tools/include/xenctrl.h | 22 +++++++++++++--------- tools/libs/ctrl/xc_pm.c | 5 ----- tools/misc/xenpm.c | 24 ++++++++++++------------ xen/drivers/acpi/pmstat.c | 27 ++++++++++++++------------- xen/include/public/sysctl.h | 22 +++++++++++++--------- 5 files changed, 52 insertions(+), 48 deletions(-) diff --git a/tools/include/xenctrl.h b/tools/include/xenctrl.h index dba33d5d0f..8aedb952a0 100644 --- a/tools/include/xenctrl.h +++ b/tools/include/xenctrl.h @@ -1909,16 +1909,20 @@ struct xc_get_cpufreq_para { uint32_t cpuinfo_cur_freq; uint32_t cpuinfo_max_freq; uint32_t cpuinfo_min_freq; - uint32_t scaling_cur_freq; - - char scaling_governor[CPUFREQ_NAME_LEN]; - uint32_t scaling_max_freq; - uint32_t scaling_min_freq; - - /* for specific governor */ union { - xc_userspace_t userspace; - xc_ondemand_t ondemand; + struct { + uint32_t scaling_cur_freq; + + char scaling_governor[CPUFREQ_NAME_LEN]; + uint32_t scaling_max_freq; + uint32_t scaling_min_freq; + + /* for specific governor */ + union { + xc_userspace_t userspace; + xc_ondemand_t ondemand; + } u; + } s; } u; int32_t turbo_enabled; diff --git a/tools/libs/ctrl/xc_pm.c b/tools/libs/ctrl/xc_pm.c index c3a9864bf7..f92542eaf7 100644 --- a/tools/libs/ctrl/xc_pm.c +++ b/tools/libs/ctrl/xc_pm.c @@ -265,15 +265,10 @@ int xc_get_cpufreq_para(xc_interface *xch, int cpuid, user_para->cpuinfo_cur_freq = sys_para->cpuinfo_cur_freq; user_para->cpuinfo_max_freq = sys_para->cpuinfo_max_freq; user_para->cpuinfo_min_freq = sys_para->cpuinfo_min_freq; - user_para->scaling_cur_freq = sys_para->scaling_cur_freq; - user_para->scaling_max_freq = sys_para->scaling_max_freq; - user_para->scaling_min_freq = sys_para->scaling_min_freq; user_para->turbo_enabled = sys_para->turbo_enabled; memcpy(user_para->scaling_driver, sys_para->scaling_driver, CPUFREQ_NAME_LEN); - memcpy(user_para->scaling_governor, - sys_para->scaling_governor, CPUFREQ_NAME_LEN); /* copy to user_para no matter what cpufreq governor */ BUILD_BUG_ON(sizeof(((struct xc_get_cpufreq_para *)0)->u) != diff --git a/tools/misc/xenpm.c b/tools/misc/xenpm.c index 1bb6187e56..ee8ce5d5f2 100644 --- a/tools/misc/xenpm.c +++ b/tools/misc/xenpm.c @@ -730,39 +730,39 @@ static void print_cpufreq_para(int cpuid, struct xc_get_cpufreq_para *p_cpufreq) printf("scaling_avail_gov : %s\n", p_cpufreq->scaling_available_governors); - printf("current_governor : %s\n", p_cpufreq->scaling_governor); - if ( !strncmp(p_cpufreq->scaling_governor, + printf("current_governor : %s\n", p_cpufreq->u.s.scaling_governor); + if ( !strncmp(p_cpufreq->u.s.scaling_governor, "userspace", CPUFREQ_NAME_LEN) ) { printf(" userspace specific :\n"); printf(" scaling_setspeed : %u\n", - p_cpufreq->u.userspace.scaling_setspeed); + p_cpufreq->u.s.u.userspace.scaling_setspeed); } - else if ( !strncmp(p_cpufreq->scaling_governor, + else if ( !strncmp(p_cpufreq->u.s.scaling_governor, "ondemand", CPUFREQ_NAME_LEN) ) { printf(" ondemand specific :\n"); printf(" sampling_rate : max [%u] min [%u] cur [%u]\n", - p_cpufreq->u.ondemand.sampling_rate_max, - p_cpufreq->u.ondemand.sampling_rate_min, - p_cpufreq->u.ondemand.sampling_rate); + p_cpufreq->u.s.u.ondemand.sampling_rate_max, + p_cpufreq->u.s.u.ondemand.sampling_rate_min, + p_cpufreq->u.s.u.ondemand.sampling_rate); printf(" up_threshold : %u\n", - p_cpufreq->u.ondemand.up_threshold); + p_cpufreq->u.s.u.ondemand.up_threshold); } printf("scaling_avail_freq :"); for ( i = 0; i < p_cpufreq->freq_num; i++ ) if ( p_cpufreq->scaling_available_frequencies[i] == - p_cpufreq->scaling_cur_freq ) + p_cpufreq->u.s.scaling_cur_freq ) printf(" *%d", p_cpufreq->scaling_available_frequencies[i]); else printf(" %d", p_cpufreq->scaling_available_frequencies[i]); printf("\n"); printf("scaling frequency : max [%u] min [%u] cur [%u]\n", - p_cpufreq->scaling_max_freq, - p_cpufreq->scaling_min_freq, - p_cpufreq->scaling_cur_freq); + p_cpufreq->u.s.scaling_max_freq, + p_cpufreq->u.s.scaling_min_freq, + p_cpufreq->u.s.scaling_cur_freq); printf("turbo mode : %s\n", p_cpufreq->turbo_enabled ? "enabled" : "disabled or n/a"); diff --git a/xen/drivers/acpi/pmstat.c b/xen/drivers/acpi/pmstat.c index 1bae635101..f5a9ac3f1a 100644 --- a/xen/drivers/acpi/pmstat.c +++ b/xen/drivers/acpi/pmstat.c @@ -258,37 +258,38 @@ static int get_cpufreq_para(struct xen_sysctl_pm_op *op) cpufreq_driver.get ? cpufreq_driver.get(op->cpuid) : policy->cur; op->u.get_para.cpuinfo_max_freq = policy->cpuinfo.max_freq; op->u.get_para.cpuinfo_min_freq = policy->cpuinfo.min_freq; - op->u.get_para.scaling_cur_freq = policy->cur; - op->u.get_para.scaling_max_freq = policy->max; - op->u.get_para.scaling_min_freq = policy->min; + + op->u.get_para.u.s.scaling_cur_freq = policy->cur; + op->u.get_para.u.s.scaling_max_freq = policy->max; + op->u.get_para.u.s.scaling_min_freq = policy->min; if ( cpufreq_driver.name[0] ) - strlcpy(op->u.get_para.scaling_driver, + strlcpy(op->u.get_para.scaling_driver, cpufreq_driver.name, CPUFREQ_NAME_LEN); else strlcpy(op->u.get_para.scaling_driver, "Unknown", CPUFREQ_NAME_LEN); if ( policy->governor->name[0] ) - strlcpy(op->u.get_para.scaling_governor, + strlcpy(op->u.get_para.u.s.scaling_governor, policy->governor->name, CPUFREQ_NAME_LEN); else - strlcpy(op->u.get_para.scaling_governor, "Unknown", CPUFREQ_NAME_LEN); + strlcpy(op->u.get_para.u.s.scaling_governor, "Unknown", CPUFREQ_NAME_LEN); /* governor specific para */ - if ( !strncasecmp(op->u.get_para.scaling_governor, + if ( !strncasecmp(op->u.get_para.u.s.scaling_governor, "userspace", CPUFREQ_NAME_LEN) ) { - op->u.get_para.u.userspace.scaling_setspeed = policy->cur; + op->u.get_para.u.s.u.userspace.scaling_setspeed = policy->cur; } - if ( !strncasecmp(op->u.get_para.scaling_governor, + if ( !strncasecmp(op->u.get_para.u.s.scaling_governor, "ondemand", CPUFREQ_NAME_LEN) ) { ret = get_cpufreq_ondemand_para( - &op->u.get_para.u.ondemand.sampling_rate_max, - &op->u.get_para.u.ondemand.sampling_rate_min, - &op->u.get_para.u.ondemand.sampling_rate, - &op->u.get_para.u.ondemand.up_threshold); + &op->u.get_para.u.s.u.ondemand.sampling_rate_max, + &op->u.get_para.u.s.u.ondemand.sampling_rate_min, + &op->u.get_para.u.s.u.ondemand.sampling_rate, + &op->u.get_para.u.s.u.ondemand.up_threshold); } op->u.get_para.turbo_enabled = cpufreq_get_turbo_status(op->cpuid); diff --git a/xen/include/public/sysctl.h b/xen/include/public/sysctl.h index 9d06e92d0f..bdcea99d71 100644 --- a/xen/include/public/sysctl.h +++ b/xen/include/public/sysctl.h @@ -317,16 +317,20 @@ struct xen_get_cpufreq_para { uint32_t cpuinfo_cur_freq; uint32_t cpuinfo_max_freq; uint32_t cpuinfo_min_freq; - uint32_t scaling_cur_freq; - - char scaling_governor[CPUFREQ_NAME_LEN]; - uint32_t scaling_max_freq; - uint32_t scaling_min_freq; - - /* for specific governor */ union { - struct xen_userspace userspace; - struct xen_ondemand ondemand; + struct { + uint32_t scaling_cur_freq; + + char scaling_governor[CPUFREQ_NAME_LEN]; + uint32_t scaling_max_freq; + uint32_t scaling_min_freq; + + /* for specific governor */ + union { + struct xen_userspace userspace; + struct xen_ondemand ondemand; + } u; + } s; } u; int32_t turbo_enabled; -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Wed Jun 14 18:03:57 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 18:03:57 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549118.857508 (Exim 4.92) (envelope-from ) id 1q9UqR-0006iS-Ht; Wed, 14 Jun 2023 18:03:47 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549118.857508; Wed, 14 Jun 2023 18:03:47 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9UqR-0006iG-E8; Wed, 14 Jun 2023 18:03:47 +0000 Received: by outflank-mailman (input) for mailman id 549118; Wed, 14 Jun 2023 18:03:46 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9UqQ-0005LA-HR for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 18:03:46 +0000 Received: from mail-qv1-xf30.google.com (mail-qv1-xf30.google.com [2607:f8b0:4864:20::f30]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id cdde8bb2-0add-11ee-b232-6b7b168915f2; Wed, 14 Jun 2023 20:03:45 +0200 (CEST) Received: by mail-qv1-xf30.google.com with SMTP id 6a1803df08f44-62fe188255eso5281316d6.0 for ; Wed, 14 Jun 2023 11:03:45 -0700 (PDT) Received: from pm2-ws13.praxislan02.com ([2001:470:8:67e:ba27:ebff:fee8:ce27]) by smtp.gmail.com with ESMTPSA id s5-20020a05621412c500b006262de12a8csm4851613qvv.65.2023.06.14.11.03.43 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 14 Jun 2023 11:03:43 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: cdde8bb2-0add-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686765824; x=1689357824; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=10pxhvdrn80PyMa9ObI4vzbfbnF6JqsnYlE3+fZTgH4=; b=TBzWEaEpROdu95ng56aLIM+QHArd/59X1K/ZGOGnC4hZg91HGP0VBDadoi6dlKiC5G M4wOQR3uyRbe/5Sf98NHxtDP88ECcoZG+ZTxwL3u4zugE0FVYgilEkXeyHc1Vi9KQyHQ /IbhHAojqOcd1GLW0/8lDPuaJxt9ab+ABWbZcrVjal22utQOPYayh+NggBQpT2YlcS28 U+m7f9yPOPLRvj3p0eglXJXI5Ihb+agUIA0qD77BwLKMkdciIerzGov7ff2YErFwIPl9 FpbyaoS6NgpvOkNuORNTDuk7MdQFG0039TBFg4GdK2QaLpjAf/REs4xtWR4lDevrdcGz sVaA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686765824; x=1689357824; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=10pxhvdrn80PyMa9ObI4vzbfbnF6JqsnYlE3+fZTgH4=; b=NywY+PFhUsYL5IJ1aMXS/Qi/4r83EFHPxIrO1cWW8iTRMWAAbEasH3M6qGAGcoeEmo Egmuos4GD7GcV24yteF4N1C5MWQUIGYwUSefmI8dcpXx+hjWqgJjCwum3JLxaMf1fCr9 /jeRriUhchMS1jr7mp5V65OYpzoJNHu6Qty/emqYPMdLp/tsJhDqNDd2O3Pa8zdeyUXp RBW+frybv2MMVMGnHsAJHeUBsxNelnKmn5jRmLqjTj+e9DsgxbS0kqZJdGlpmTPw2gtB T9mkNAclBTaYgAZyCBBGEhEK5qf95l0FuxuSgvKdODjHjeHiti4NgvZZvwipicm70MGe KCvg== X-Gm-Message-State: AC+VfDzlaL1fw5V+Smun/9AEtwueZZ+d25il3S2INp57w/Z5zHHE+3Gn 1upMvmOv97wjaxFvGfcvvJ4oYqQtLGU= X-Google-Smtp-Source: ACHHUZ6N5eMFhC3uSDSbTWNAHc6p3JmhOkha9gRR1/mxpVow/vsJGC9n9OEZucxBv1K/MibnvmKS+g== X-Received: by 2002:a05:6214:2022:b0:62b:6bc5:7a1b with SMTP id 2-20020a056214202200b0062b6bc57a1bmr3296531qvf.15.1686765824064; Wed, 14 Jun 2023 11:03:44 -0700 (PDT) From: Jason Andryuk To: xen-devel@lists.xenproject.org Cc: Jason Andryuk , Wei Liu , Anthony PERARD , Juergen Gross , Jan Beulich Subject: [PATCH v4 05/15] pmstat&xenpm: Re-arrage for cpufreq union Date: Wed, 14 Jun 2023 14:02:43 -0400 Message-Id: <20230614180253.89958-6-jandryuk@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230614180253.89958-1-jandryuk@gmail.com> References: <20230614180253.89958-1-jandryuk@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Move some code around now that common xen_sysctl_pm_op get_para fields are together. In particular, the scaling governor information like scaling_available_governors is inside the union, so it is not always available. With that, gov_num may be 0, so bounce buffer handling needs to be modified. scaling_governor won't be filled for hwp, so this will simplify the change when it is introduced. Signed-off-by: Jason Andryuk --- tools/libs/ctrl/xc_pm.c | 12 ++++++++---- tools/misc/xenpm.c | 3 ++- xen/drivers/acpi/pmstat.c | 32 +++++++++++++++++--------------- 3 files changed, 27 insertions(+), 20 deletions(-) diff --git a/tools/libs/ctrl/xc_pm.c b/tools/libs/ctrl/xc_pm.c index f92542eaf7..19fe1a79dd 100644 --- a/tools/libs/ctrl/xc_pm.c +++ b/tools/libs/ctrl/xc_pm.c @@ -221,7 +221,7 @@ int xc_get_cpufreq_para(xc_interface *xch, int cpuid, { if ( (!user_para->affected_cpus) || (!user_para->scaling_available_frequencies) || - (!user_para->scaling_available_governors) ) + (user_para->gov_num && !user_para->scaling_available_governors) ) { errno = EINVAL; return -1; @@ -230,12 +230,15 @@ int xc_get_cpufreq_para(xc_interface *xch, int cpuid, goto unlock_1; if ( xc_hypercall_bounce_pre(xch, scaling_available_frequencies) ) goto unlock_2; - if ( xc_hypercall_bounce_pre(xch, scaling_available_governors) ) + if ( user_para->gov_num && + xc_hypercall_bounce_pre(xch, scaling_available_governors) ) goto unlock_3; set_xen_guest_handle(sys_para->affected_cpus, affected_cpus); set_xen_guest_handle(sys_para->scaling_available_frequencies, scaling_available_frequencies); - set_xen_guest_handle(sys_para->scaling_available_governors, scaling_available_governors); + if ( user_para->gov_num ) + set_xen_guest_handle(sys_para->scaling_available_governors, + scaling_available_governors); } sysctl.cmd = XEN_SYSCTL_pm_op; @@ -278,7 +281,8 @@ int xc_get_cpufreq_para(xc_interface *xch, int cpuid, } unlock_4: - xc_hypercall_bounce_post(xch, scaling_available_governors); + if ( user_para->gov_num ) + xc_hypercall_bounce_post(xch, scaling_available_governors); unlock_3: xc_hypercall_bounce_post(xch, scaling_available_frequencies); unlock_2: diff --git a/tools/misc/xenpm.c b/tools/misc/xenpm.c index ee8ce5d5f2..1c474c3b59 100644 --- a/tools/misc/xenpm.c +++ b/tools/misc/xenpm.c @@ -811,7 +811,8 @@ static int show_cpufreq_para_by_cpuid(xc_interface *xc_handle, int cpuid) ret = -ENOMEM; goto out; } - if (!(p_cpufreq->scaling_available_governors = + if (p_cpufreq->gov_num && + !(p_cpufreq->scaling_available_governors = malloc(p_cpufreq->gov_num * CPUFREQ_NAME_LEN * sizeof(char)))) { fprintf(stderr, diff --git a/xen/drivers/acpi/pmstat.c b/xen/drivers/acpi/pmstat.c index f5a9ac3f1a..57359c21d8 100644 --- a/xen/drivers/acpi/pmstat.c +++ b/xen/drivers/acpi/pmstat.c @@ -239,11 +239,24 @@ static int get_cpufreq_para(struct xen_sysctl_pm_op *op) if ( ret ) return ret; + op->u.get_para.cpuinfo_cur_freq = + cpufreq_driver.get ? cpufreq_driver.get(op->cpuid) : policy->cur; + op->u.get_para.cpuinfo_max_freq = policy->cpuinfo.max_freq; + op->u.get_para.cpuinfo_min_freq = policy->cpuinfo.min_freq; + op->u.get_para.turbo_enabled = cpufreq_get_turbo_status(op->cpuid); + + if ( cpufreq_driver.name[0] ) + strlcpy(op->u.get_para.scaling_driver, + cpufreq_driver.name, CPUFREQ_NAME_LEN); + else + strlcpy(op->u.get_para.scaling_driver, "Unknown", CPUFREQ_NAME_LEN); + if ( !(scaling_available_governors = xzalloc_array(char, gov_num * CPUFREQ_NAME_LEN)) ) return -ENOMEM; - if ( (ret = read_scaling_available_governors(scaling_available_governors, - gov_num * CPUFREQ_NAME_LEN * sizeof(char))) ) + if ( (ret = read_scaling_available_governors( + scaling_available_governors, + gov_num * CPUFREQ_NAME_LEN * sizeof(char))) ) { xfree(scaling_available_governors); return ret; @@ -254,26 +267,16 @@ static int get_cpufreq_para(struct xen_sysctl_pm_op *op) if ( ret ) return ret; - op->u.get_para.cpuinfo_cur_freq = - cpufreq_driver.get ? cpufreq_driver.get(op->cpuid) : policy->cur; - op->u.get_para.cpuinfo_max_freq = policy->cpuinfo.max_freq; - op->u.get_para.cpuinfo_min_freq = policy->cpuinfo.min_freq; - op->u.get_para.u.s.scaling_cur_freq = policy->cur; op->u.get_para.u.s.scaling_max_freq = policy->max; op->u.get_para.u.s.scaling_min_freq = policy->min; - if ( cpufreq_driver.name[0] ) - strlcpy(op->u.get_para.scaling_driver, - cpufreq_driver.name, CPUFREQ_NAME_LEN); - else - strlcpy(op->u.get_para.scaling_driver, "Unknown", CPUFREQ_NAME_LEN); - if ( policy->governor->name[0] ) strlcpy(op->u.get_para.u.s.scaling_governor, policy->governor->name, CPUFREQ_NAME_LEN); else - strlcpy(op->u.get_para.u.s.scaling_governor, "Unknown", CPUFREQ_NAME_LEN); + strlcpy(op->u.get_para.u.s.scaling_governor, "Unknown", + CPUFREQ_NAME_LEN); /* governor specific para */ if ( !strncasecmp(op->u.get_para.u.s.scaling_governor, @@ -291,7 +294,6 @@ static int get_cpufreq_para(struct xen_sysctl_pm_op *op) &op->u.get_para.u.s.u.ondemand.sampling_rate, &op->u.get_para.u.s.u.ondemand.up_threshold); } - op->u.get_para.turbo_enabled = cpufreq_get_turbo_status(op->cpuid); return ret; } -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Wed Jun 14 18:04:04 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 18:04:04 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549121.857517 (Exim 4.92) (envelope-from ) id 1q9UqX-0007EW-QW; Wed, 14 Jun 2023 18:03:53 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549121.857517; Wed, 14 Jun 2023 18:03:53 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9UqX-0007Dc-Mu; Wed, 14 Jun 2023 18:03:53 +0000 Received: by outflank-mailman (input) for mailman id 549121; Wed, 14 Jun 2023 18:03:51 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9UqV-0005L9-JC for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 18:03:51 +0000 Received: from mail-qv1-xf29.google.com (mail-qv1-xf29.google.com [2607:f8b0:4864:20::f29]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id cfadfdb6-0add-11ee-8611-37d641c3527e; Wed, 14 Jun 2023 20:03:49 +0200 (CEST) Received: by mail-qv1-xf29.google.com with SMTP id 6a1803df08f44-62884fa0e53so21279046d6.0 for ; Wed, 14 Jun 2023 11:03:49 -0700 (PDT) Received: from pm2-ws13.praxislan02.com ([2001:470:8:67e:ba27:ebff:fee8:ce27]) by smtp.gmail.com with ESMTPSA id s5-20020a05621412c500b006262de12a8csm4851613qvv.65.2023.06.14.11.03.45 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 14 Jun 2023 11:03:46 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: cfadfdb6-0add-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686765827; x=1689357827; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=3erQ3Tf88rrl0YLlehZaA13XnubAYvrTZWS6hEHGpfQ=; b=gS/cVFi9jkYv4CKeViJ4P01bEvYXsNQkFIcgXdxfBEEKXkB7x/wSglSeWvuFhWYKLs 79D76CW1UlhdZIzF/4JLgPcc2mkUVmrkEEyDOkMopO3jmCENO29cNACJXVUgvU4IJXEM XYGrc94c2LZ7UWrYRcc5ocuvnuuiKEg31EikdTTsX8lErYsB+YVUOyL7JsuRhLlWol0E nMgK8qmUueFenCmyxtrnJH2sc+8Q+O8GVGDHANa4JbaHw6wVFUeLGchkEKMFwTqesEpe VAoTXN4xxkCZmfSWLVGxfEDS5OATyA1PDKQxBZl+czW0UTOpKyH8D/jqUURoHmNpJS63 QUOw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686765827; x=1689357827; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=3erQ3Tf88rrl0YLlehZaA13XnubAYvrTZWS6hEHGpfQ=; b=DT1o1AKJes43ZKRiodVwXQukq4+TIW/qPRZ1l8tvWCEPW5E1yxw71lneLU/eK/kDZA oQsRU2thJfusYg5WjFCkoEVPQ7OMIdUwPdSLTcLViGWH1PxjzwGZ1WubJc6KvTXUxAgR av1HwGwyS7bt5ICW8Mels8BPAbli9sLOylGMN41/6MsxdKV9Eh4CXbFE9y91xMHRXnOk o00Qtd7UNg4dT8DpVdDOiObJWAKOlSzhROg1MSYSvCetJKweqdS4WfbkVTN1ZN9zVUyJ oGEewpoVE+RThRBqm8Bs83BWubJdr33q89OQNGVTS+sfKpc17Fzi6EPdIP0r7rQAIQAn DZJA== X-Gm-Message-State: AC+VfDzkq6V0bAE5hpaoiv6rckFtYz7xrtbXS7qimyIzyuTzPDnxu7TT Zx6+wVAMRlnLUpbRSu8lskGfqOnB2L8= X-Google-Smtp-Source: ACHHUZ5rzAXCLx2h0nHG0yNbhhoAs0CJJCNs3ysW4lCrckM6hXceAe4MbAI5w2Ejko589xq745CsNQ== X-Received: by 2002:ad4:5dea:0:b0:62d:f806:7f80 with SMTP id jn10-20020ad45dea000000b0062df8067f80mr6052255qvb.13.1686765826871; Wed, 14 Jun 2023 11:03:46 -0700 (PDT) From: Jason Andryuk To: xen-devel@lists.xenproject.org Cc: Jason Andryuk , Andrew Cooper , George Dunlap , Jan Beulich , Julien Grall , Stefano Stabellini , Wei Liu , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= Subject: [PATCH v4 06/15] cpufreq: Add Hardware P-State (HWP) driver Date: Wed, 14 Jun 2023 14:02:44 -0400 Message-Id: <20230614180253.89958-7-jandryuk@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230614180253.89958-1-jandryuk@gmail.com> References: <20230614180253.89958-1-jandryuk@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit >From the Intel SDM: "Hardware-Controlled Performance States (HWP), which autonomously selects performance states while utilizing OS supplied performance guidance hints." Enable HWP to run in autonomous mode by poking the correct MSRs. cpufreq=hwp enables and specifying cpufreq=xen would disable it. hdc is a sub-option under hwp (i.e. cpufreq=xen:hwp,hdc=0) as is verbose. If cpufreq=hwp is specified, but hardware support is unavailable, Xen fallbacks back to cpufreq=xen. There is no interface to configure - xen_sysctl_pm_op/xenpm will be extended to configure in subsequent patches. It will run with the default values, which should be the default 0x80 (out of 0x0-0xff) energy/performance preference. Unscientific powertop measurement of an mostly idle, customized OpenXT install: A 10th gen 6-core laptop showed battery discharge drop from ~9.x to ~7.x watts. A 8th gen 4-core laptop dropped from ~10 to ~9 Power usage depends on many factors, especially display brightness, but this does show a power saving in balanced mode when CPU utilization is low. HWP isn't compatible with an external governor - it doesn't take explicit frequency requests. Therefore a minimal internal governor, hwp, is also added as a placeholder. While adding to the xen-command-line.pandoc entry, un-nest verbose from minfreq. They are independent. With cpufreq=hwp,verbose, HWP prints processor capabilities that are not used by the code, like HW_FEEDBACK. This is done because otherwise there isn't a convenient way to query the information. Signed-off-by: Jason Andryuk --- We disable on cpuid_level < 0x16. cpuid(0x16) is used to get the cpu frequencies for calculating the APERF/MPERF. Without it, things would still work, but the average cpu frequency output would be wrong. My 8th & 10th gen test systems both report: (XEN) HWP: 1 notify: 1 act_window: 1 energy_perf: 1 pkg_level: 0 peci: 0 (XEN) HWP: Hardware Duty Cycling (HDC) supported (XEN) HWP: HW_FEEDBACK not supported Specifying HWP as a fake governor - cpufreq=xen:hwp - would require resetting the governor if HWP hardware wasn't available. Making cpufreq=hwp a top level option avoids that issue. Falling back from cpufreq=hwp to cpufreq=xen is a more user-friendly choice than disabling cpufreq when HWP is not available. Specifying cpufreq=hwp indicates the user wants cpufreq, so, if HWP isn't available, it makes sense to give them the cpufreq that can be supported. i.e. I can't see a user only wanting cpufreq=hwp or cpufreq=none, but not cpufreq=xen. We can't use parse_boolean() since it requires a single name=val string and cpufreq_handle_common_option is provided two strings. Use parse_bool() and manual handle no-hwp. Write to disable the interrupt - the linux pstate driver does this. We don't use the interrupts, so we can just turn them off. We aren't ready to handle them, so we don't want any. Unclear if this is necessary. SDM says it's default disabled. FAST_IA32_HWP_REQUEST was removed in v2. The check in v1 was wrong, it's a model specific feature and the CPUID bit is only available after enabling via the MSR. Support was untested since I don't have hardware with the feature. Writes are expected to be infrequent, so just leave it out. --- v2: Alphabetize headers Re-work driver registration name hwp_drv_data anonymous union "hw" Drop hwp_verbose_cont style cleanups Condense hwp_governor switch hwp_cpufreq_target remove .raw from hwp_req assignment Use typed-pointer in a few functions Pass type to xzalloc Add HWP_ENERGY_PERF_BALANCE/IA32_ENERGY_BIAS_BALANCE defines Add XEN_HWP_GOVERNOR define for "hwp-internal" Capitalize CPUID and MSR defines Change '_' to '-' for energy-perf & act-window Read-modify-write MSRs updates Use FAST_IA32_HWP_REQUEST_MSR_ENABLE define constify pointer in hwp_set_misc_turbo Add space after non-fallthrough break in governor switch Add IA32_ENERGY_BIAS_MASK define Check CPUID_PM_LEAK for energy bias when needed Fail initialization with curr_req = -1 Fold hwp_read_capabilities into hwp_init_msrs Add command line cpufreq=xen:hwp Add command line cpufreq=xen:hdc Use per_cpu for hwp_drv_data pointers Move hwp_energy_perf_bias call into hwp_write_request energy_perf 0 is valid, so hwp_energy_perf_bias cannot be skipped Ensure we don't generate interrupts Remove Fast Write of Uncore MSR Initialize hwp_drv_data from curr_req Use SPDX line instead of license text in hwp.c v3: Add cf_check to cpufreq_gov_hwp_init() - Marek Print cpuid_level with %#x - Marek v4: Use BIT() for CPUID and MSR bits Move __initdata after type Add __ro_after_init to feature_* Remove aperf/mperf comment Move feature_hwp_energy_perf { to newline Remove _IA32_ infix Use unsigned int & bool for bitfields Require energy perf pref (Remove ENERGY_PERF_BIAS support) Initialize activity_window Return errors on wrmsr failure Change command line to: cpufreq=xen:hwp Move hdc into the hwp-specific handle_options Drop feature_hwp_energy_perf, feature_hwp_pkg_level_ctl & feature_hwp_peci Print features before exiting when energy/performance preference isn't available Disable HWP MSR on initialization error Change hwp_ print macros to add prefixes Disable HDC when hdc=0 - (opt_hdc no longer initdata) Mark hwp governor internal and use "hwp" name Add XEN_HWP_DRIVER Use top-level cpufreq=hwp command line option Document that cpufreq=hwp falls back to cpufreq=xen without hardware Add SPDX suffix GPL-2.0-only --- docs/misc/xen-command-line.pandoc | 9 +- xen/arch/x86/acpi/cpufreq/Makefile | 1 + xen/arch/x86/acpi/cpufreq/cpufreq.c | 5 +- xen/arch/x86/acpi/cpufreq/hwp.c | 537 ++++++++++++++++++++++ xen/arch/x86/include/asm/cpufeature.h | 12 +- xen/arch/x86/include/asm/msr-index.h | 13 + xen/drivers/cpufreq/cpufreq.c | 9 + xen/include/acpi/cpufreq/cpufreq.h | 3 + xen/include/acpi/cpufreq/processor_perf.h | 3 + xen/include/public/sysctl.h | 1 + 10 files changed, 589 insertions(+), 4 deletions(-) create mode 100644 xen/arch/x86/acpi/cpufreq/hwp.c diff --git a/docs/misc/xen-command-line.pandoc b/docs/misc/xen-command-line.pandoc index 4060ebdc5d..9d6bdd6d66 100644 --- a/docs/misc/xen-command-line.pandoc +++ b/docs/misc/xen-command-line.pandoc @@ -499,7 +499,7 @@ If set, force use of the performance counters for oprofile, rather than detectin available support. ### cpufreq -> `= none | {{ | xen } [:[powersave|performance|ondemand|userspace][,][,[][,[verbose]]]]} | dom0-kernel` +> `= none | {{ | xen } { [:[powersave|performance|ondemand|userspace][,[]][,[]]] } [,verbose]} | dom0-kernel | hwp[:[][,verbose]]` > Default: `xen` @@ -510,6 +510,13 @@ choice of `dom0-kernel` is deprecated and not supported by all Dom0 kernels. * `` and `` are integers which represent max and min processor frequencies respectively. * `verbose` option can be included as a string or also as `verbose=` +* `hwp` selects Hardware-Controlled Performance States (HWP) on supported Intel + hardware. HWP is a Skylake+ feature which provides better CPU power + management. The default is disabled. If `hwp` is selected, but hardware + support is not available, Xen will fallback to cpufreq=xen. +* `` is a boolean to enable Hardware Duty Cycling (HDC). HDC enables the + processor to autonomously force physical package components into idle state. + The default is enabled, but the option only applies when `hwp` is enabled. ### cpuid (x86) > `= List of comma separated booleans` diff --git a/xen/arch/x86/acpi/cpufreq/Makefile b/xen/arch/x86/acpi/cpufreq/Makefile index f75da9b9ca..db83aa6b14 100644 --- a/xen/arch/x86/acpi/cpufreq/Makefile +++ b/xen/arch/x86/acpi/cpufreq/Makefile @@ -1,2 +1,3 @@ obj-y += cpufreq.o +obj-y += hwp.o obj-y += powernow.o diff --git a/xen/arch/x86/acpi/cpufreq/cpufreq.c b/xen/arch/x86/acpi/cpufreq/cpufreq.c index f1cc473b4f..56816b1aee 100644 --- a/xen/arch/x86/acpi/cpufreq/cpufreq.c +++ b/xen/arch/x86/acpi/cpufreq/cpufreq.c @@ -642,7 +642,10 @@ static int __init cf_check cpufreq_driver_init(void) switch ( boot_cpu_data.x86_vendor ) { case X86_VENDOR_INTEL: - ret = cpufreq_register_driver(&acpi_cpufreq_driver); + if ( hwp_available() ) + ret = hwp_register_driver(); + else + ret = cpufreq_register_driver(&acpi_cpufreq_driver); break; case X86_VENDOR_AMD: diff --git a/xen/arch/x86/acpi/cpufreq/hwp.c b/xen/arch/x86/acpi/cpufreq/hwp.c new file mode 100644 index 0000000000..c62345dde7 --- /dev/null +++ b/xen/arch/x86/acpi/cpufreq/hwp.c @@ -0,0 +1,537 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ +/* + * hwp.c cpufreq driver to run Intel Hardware P-States (HWP) + * + * Copyright (C) 2021 Jason Andryuk + */ + +#include +#include +#include +#include +#include +#include +#include + +static bool __ro_after_init feature_hwp; +static bool __ro_after_init feature_hwp_notification; +static bool __ro_after_init feature_hwp_activity_window; + +static bool __ro_after_init feature_hdc; + +bool __initdata opt_cpufreq_hwp; +static bool __ro_after_init opt_cpufreq_hdc = true; + +union hwp_request +{ + struct + { + unsigned int min_perf:8; + unsigned int max_perf:8; + unsigned int desired:8; + unsigned int energy_perf:8; + unsigned int activity_window:10; + bool package_control:1; + unsigned int reserved:16; + bool activity_window_valid:1; + bool energy_perf_valid:1; + bool desired_valid:1; + bool max_perf_valid:1; + bool min_perf_valid:1; + }; + uint64_t raw; +}; + +struct hwp_drv_data +{ + union + { + uint64_t hwp_caps; + struct + { + unsigned int highest:8; + unsigned int guaranteed:8; + unsigned int most_efficient:8; + unsigned int lowest:8; + unsigned int reserved:32; + } hw; + }; + union hwp_request curr_req; + int ret; + uint16_t activity_window; + uint8_t minimum; + uint8_t maximum; + uint8_t desired; + uint8_t energy_perf; +}; +DEFINE_PER_CPU_READ_MOSTLY(struct hwp_drv_data *, hwp_drv_data); + +#define hwp_err(fmt, cpu, ...) \ + printk(XENLOG_ERR "HWP: CPU%u error: " fmt, cpu, ##__VA_ARGS__) +#define hwp_info(fmt, ...) printk(XENLOG_INFO "HWP: " fmt, ##__VA_ARGS__) +#define hwp_verbose(fmt, ...) \ +({ \ + if ( cpufreq_verbose ) \ + printk(XENLOG_DEBUG "HWP: " fmt, ##__VA_ARGS__); \ +}) + +static int cf_check hwp_governor(struct cpufreq_policy *policy, + unsigned int event) +{ + int ret; + + if ( policy == NULL ) + return -EINVAL; + + switch ( event ) + { + case CPUFREQ_GOV_START: + case CPUFREQ_GOV_LIMITS: + ret = 0; + break; + + case CPUFREQ_GOV_STOP: + default: + ret = -EINVAL; + break; + } + + return ret; +} + +static bool hwp_handle_option(const char *s, const char *end) +{ + int ret; + + if ( strncmp(s, "verbose", 7) == 0 ) + { + s += 7; + if ( *s == '=' ) + { + s++; + cpufreq_verbose = !!simple_strtoul(s, NULL, 0); + + return true; + } + + if ( end == NULL || + (end == s && (*end == '\0' || *end == ',')) ) + { + cpufreq_verbose = true; + + return true; + } + + return false; + } + + ret = parse_boolean("hdc", s, end); + if ( ret < 0 ) + return false; + + opt_cpufreq_hdc = ret; + + return true; +} + +int __init hwp_cmdline_parse(const char *s) +{ + do + { + const char *end = strchr(s, ','); + + if ( s && !hwp_handle_option(s, end) ) + { + printk(XENLOG_WARNING "cpufreq/hwp: option '%s' not recognized\n", + s); + + + return -1; + } + + s = end ? ++end : end; + } while ( s ); + + return 0; +} + +static struct cpufreq_governor cpufreq_gov_hwp = +{ + .name = "hwp", + .governor = hwp_governor, + .internal = true, +}; + +static int __init cf_check cpufreq_gov_hwp_init(void) +{ + return cpufreq_register_governor(&cpufreq_gov_hwp); +} +__initcall(cpufreq_gov_hwp_init); + +bool __init hwp_available(void) +{ + unsigned int eax; + + if ( !opt_cpufreq_hwp ) + return false; + + if ( boot_cpu_data.cpuid_level < CPUID_PM_LEAF ) + { + hwp_verbose("cpuid_level (%#x) lacks HWP support\n", + boot_cpu_data.cpuid_level); + + return false; + } + + if ( boot_cpu_data.cpuid_level < 0x16 ) + { + hwp_info("HWP disabled: cpuid_level %#x < 0x16 lacks CPU freq info\n", + boot_cpu_data.cpuid_level); + + return false; + } + + eax = cpuid_eax(CPUID_PM_LEAF); + + hwp_verbose("%d notify: %d act-window: %d energy-perf: %d pkg-level: %d peci: %d\n", + !!(eax & CPUID6_EAX_HWP), + !!(eax & CPUID6_EAX_HWP_NOTIFICATION), + !!(eax & CPUID6_EAX_HWP_ACTIVITY_WINDOW), + !!(eax & CPUID6_EAX_HWP_ENERGY_PERFORMANCE_PREFERENCE), + !!(eax & CPUID6_EAX_HWP_PACKAGE_LEVEL_REQUEST), + !!(eax & CPUID6_EAX_HWP_PECI)); + + if ( !(eax & CPUID6_EAX_HWP) ) + return false; + + if ( !(eax & CPUID6_EAX_HWP_ENERGY_PERFORMANCE_PREFERENCE) ) + { + hwp_verbose("disabled: No energy/performance preference available"); + + return false; + } + + feature_hwp = eax & CPUID6_EAX_HWP; + feature_hwp_notification = eax & CPUID6_EAX_HWP_NOTIFICATION; + feature_hwp_activity_window = eax & CPUID6_EAX_HWP_ACTIVITY_WINDOW; + feature_hdc = eax & CPUID6_EAX_HDC; + + hwp_verbose("Hardware Duty Cycling (HDC) %ssupported%s\n", + feature_hdc ? "" : "not ", + feature_hdc ? opt_cpufreq_hdc ? ", enabled" : ", disabled" + : ""); + + hwp_verbose("HW_FEEDBACK %ssupported\n", + (eax & CPUID6_EAX_HW_FEEDBACK) ? "" : "not "); + + cpufreq_governor_internal = feature_hwp; + + if ( feature_hwp ) + hwp_info("Using HWP for cpufreq\n"); + + return feature_hwp; +} + +static int hdc_set_pkg_hdc_ctl(unsigned int cpu, bool val) +{ + uint64_t msr; + + if ( rdmsr_safe(MSR_PKG_HDC_CTL, msr) ) + { + hwp_err("rdmsr_safe(MSR_PKG_HDC_CTL)\n", cpu); + + return -1; + } + + if ( val ) + msr |= PKG_HDC_CTL_HDC_PKG_ENABLE; + else + msr &= ~PKG_HDC_CTL_HDC_PKG_ENABLE; + + if ( wrmsr_safe(MSR_PKG_HDC_CTL, msr) ) + { + hwp_err("wrmsr_safe(MSR_PKG_HDC_CTL): %016lx\n", cpu, msr); + + return -1; + } + + return 0; +} + +static int hdc_set_pm_ctl1(unsigned int cpu, bool val) +{ + uint64_t msr; + + if ( rdmsr_safe(MSR_PM_CTL1, msr) ) + { + hwp_err("rdmsr_safe(MSR_PM_CTL1)\n", cpu); + + return -1; + } + + if ( val ) + msr |= PM_CTL1_HDC_ALLOW_BLOCK; + else + msr &= ~PM_CTL1_HDC_ALLOW_BLOCK; + + if ( wrmsr_safe(MSR_PM_CTL1, msr) ) + { + hwp_err("wrmsr_safe(MSR_PM_CTL1): %016lx\n", cpu, msr); + + return -1; + } + + return 0; +} + +static void hwp_get_cpu_speeds(struct cpufreq_policy *policy) +{ + uint32_t base_khz, max_khz, bus_khz, edx; + + cpuid(0x16, &base_khz, &max_khz, &bus_khz, &edx); + + policy->cpuinfo.perf_freq = base_khz * 1000; + policy->cpuinfo.min_freq = base_khz * 1000; + policy->cpuinfo.max_freq = max_khz * 1000; + policy->min = base_khz * 1000; + policy->max = max_khz * 1000; + policy->cur = 0; +} + +static void cf_check hwp_init_msrs(void *info) +{ + struct cpufreq_policy *policy = info; + struct hwp_drv_data *data = this_cpu(hwp_drv_data); + uint64_t val; + + /* + * Package level MSR, but we don't have a good idea of packages here, so + * just do it everytime. + */ + if ( rdmsr_safe(MSR_PM_ENABLE, val) ) + { + hwp_err("rdmsr_safe(MSR_PM_ENABLE)\n", policy->cpu); + data->curr_req.raw = -1; + return; + } + + /* Ensure we don't generate interrupts */ + if ( feature_hwp_notification ) + wrmsr_safe(MSR_HWP_INTERRUPT, 0); + + hwp_verbose("CPU%u: MSR_PM_ENABLE: %016lx\n", policy->cpu, val); + if ( !(val & PM_ENABLE_HWP_ENABLE) ) + { + val |= PM_ENABLE_HWP_ENABLE; + if ( wrmsr_safe(MSR_PM_ENABLE, val) ) + { + hwp_err("wrmsr_safe(MSR_PM_ENABLE, %lx)\n", policy->cpu, val); + data->curr_req.raw = -1; + return; + } + } + + if ( rdmsr_safe(MSR_HWP_CAPABILITIES, data->hwp_caps) ) + { + hwp_err("rdmsr_safe(MSR_HWP_CAPABILITIES)\n", policy->cpu); + goto error; + } + + if ( rdmsr_safe(MSR_HWP_REQUEST, data->curr_req.raw) ) + { + hwp_err("rdmsr_safe(MSR_HWP_REQUEST)\n", policy->cpu); + goto error; + } + + /* + * Check for APERF/MPERF support in hardware + * also check for boost/turbo support + */ + intel_feature_detect(policy); + + if ( feature_hdc ) + { + if ( hdc_set_pkg_hdc_ctl(policy->cpu, opt_cpufreq_hdc) ) + goto error; + if ( hdc_set_pm_ctl1(policy->cpu, opt_cpufreq_hdc) ) + goto error; + } + + hwp_get_cpu_speeds(policy); + + return; + + error: + data->curr_req.raw = -1; + val &= ~PM_ENABLE_HWP_ENABLE; + if ( wrmsr_safe(MSR_PM_ENABLE, val) ) + hwp_err("wrmsr_safe(MSR_PM_ENABLE, %lx)\n", policy->cpu, val); + + return; +} + +static int cf_check hwp_cpufreq_verify(struct cpufreq_policy *policy) +{ + struct hwp_drv_data *data = per_cpu(hwp_drv_data, policy->cpu); + + if ( !feature_hwp_activity_window && data->activity_window ) + { + hwp_verbose("HWP activity window not supported\n"); + + return -EINVAL; + } + + return 0; +} + +static void cf_check hwp_write_request(void *info) +{ + const struct cpufreq_policy *policy = info; + struct hwp_drv_data *data = this_cpu(hwp_drv_data); + union hwp_request hwp_req = data->curr_req; + + data->ret = 0; + + BUILD_BUG_ON(sizeof(union hwp_request) != sizeof(uint64_t)); + if ( wrmsr_safe(MSR_HWP_REQUEST, hwp_req.raw) ) + { + hwp_verbose("CPU%u: error wrmsr_safe(MSR_HWP_REQUEST, %lx)\n", + policy->cpu, hwp_req.raw); + rdmsr_safe(MSR_HWP_REQUEST, data->curr_req.raw); + data->ret = -EINVAL; + } +} + +static int cf_check hwp_cpufreq_target(struct cpufreq_policy *policy, + unsigned int target_freq, + unsigned int relation) +{ + unsigned int cpu = policy->cpu; + struct hwp_drv_data *data = per_cpu(hwp_drv_data, cpu); + /* Zero everything to ensure reserved bits are zero... */ + union hwp_request hwp_req = { .raw = 0 }; + + /* .. and update from there */ + hwp_req.min_perf = data->minimum; + hwp_req.max_perf = data->maximum; + hwp_req.desired = data->desired; + hwp_req.energy_perf = data->energy_perf; + if ( feature_hwp_activity_window ) + hwp_req.activity_window = data->activity_window; + + if ( hwp_req.raw == data->curr_req.raw ) + return 0; + + data->curr_req = hwp_req; + + hwp_verbose("CPU%u: wrmsr HWP_REQUEST %016lx\n", cpu, hwp_req.raw); + on_selected_cpus(cpumask_of(cpu), hwp_write_request, policy, 1); + + return data->ret; +} + +static int cf_check hwp_cpufreq_cpu_init(struct cpufreq_policy *policy) +{ + unsigned int cpu = policy->cpu; + struct hwp_drv_data *data; + + data = xzalloc(struct hwp_drv_data); + if ( !data ) + return -ENOMEM; + + if ( cpufreq_opt_governor && strcmp(cpufreq_opt_governor->name, + cpufreq_gov_hwp.name) ) + printk(XENLOG_WARNING + "HWP: governor \"%s\" is incompatible with hwp. Using default \"%s\"\n", + cpufreq_opt_governor->name, cpufreq_gov_hwp.name); + policy->governor = &cpufreq_gov_hwp; + + per_cpu(hwp_drv_data, cpu) = data; + + on_selected_cpus(cpumask_of(cpu), hwp_init_msrs, policy, 1); + + if ( data->curr_req.raw == -1 ) + { + hwp_err("Could not initialize HWP properly\n", cpu); + XFREE(per_cpu(hwp_drv_data, cpu)); + return -ENODEV; + } + + data->minimum = data->curr_req.min_perf; + data->maximum = data->curr_req.max_perf; + data->desired = data->curr_req.desired; + data->energy_perf = data->curr_req.energy_perf; + data->activity_window = data->curr_req.activity_window; + + hwp_verbose("CPU%u: HWP_CAPABILITIES: %016lx\n", cpu, data->hwp_caps); + + hwp_verbose("CPU%u: rdmsr HWP_REQUEST %016lx\n", cpu, data->curr_req.raw); + + return 0; +} + +static int cf_check hwp_cpufreq_cpu_exit(struct cpufreq_policy *policy) +{ + XFREE(per_cpu(hwp_drv_data, policy->cpu)); + + return 0; +} + +/* + * The SDM reads like turbo should be disabled with MSR_IA32_PERF_CTL and + * PERF_CTL_TURBO_DISENGAGE, but that does not seem to actually work, at least + * with my HWP testing. MSR_MISC_ENABLE and MISC_ENABLE_TURBO_DISENGAGE + * is what Linux uses and seems to work. + */ +static void cf_check hwp_set_misc_turbo(void *info) +{ + const struct cpufreq_policy *policy = info; + struct hwp_drv_data *data = per_cpu(hwp_drv_data, policy->cpu); + uint64_t msr; + + data->ret = 0; + + if ( rdmsr_safe(MSR_IA32_MISC_ENABLE, msr) ) + { + hwp_verbose("CPU%u: error rdmsr_safe(MSR_IA32_MISC_ENABLE)\n", + policy->cpu); + data->ret = -EINVAL; + + return; + } + + if ( policy->turbo == CPUFREQ_TURBO_ENABLED ) + msr &= ~MSR_IA32_MISC_ENABLE_TURBO_DISENGAGE; + else + msr |= MSR_IA32_MISC_ENABLE_TURBO_DISENGAGE; + + if ( wrmsr_safe(MSR_IA32_MISC_ENABLE, msr) ) + { + hwp_verbose("CPU%u: error wrmsr_safe(MSR_IA32_MISC_ENABLE): %016lx\n", + policy->cpu, msr); + data->ret = -EINVAL; + } +} + +static int cf_check hwp_cpufreq_update(int cpuid, struct cpufreq_policy *policy) +{ + struct hwp_drv_data *data = per_cpu(hwp_drv_data, cpuid); + on_selected_cpus(cpumask_of(cpuid), hwp_set_misc_turbo, policy, 1); + + return data->ret; +} + +static const struct cpufreq_driver __initconstrel hwp_cpufreq_driver = +{ + .name = XEN_HWP_DRIVER, + .verify = hwp_cpufreq_verify, + .target = hwp_cpufreq_target, + .init = hwp_cpufreq_cpu_init, + .exit = hwp_cpufreq_cpu_exit, + .update = hwp_cpufreq_update, +}; + +int __init hwp_register_driver(void) +{ + return cpufreq_register_driver(&hwp_cpufreq_driver); +} diff --git a/xen/arch/x86/include/asm/cpufeature.h b/xen/arch/x86/include/asm/cpufeature.h index ace31e3b1f..00d618483c 100644 --- a/xen/arch/x86/include/asm/cpufeature.h +++ b/xen/arch/x86/include/asm/cpufeature.h @@ -52,8 +52,16 @@ static inline bool boot_cpu_has(unsigned int feat) return cpu_has(&boot_cpu_data, feat); } -#define CPUID_PM_LEAF 6 -#define CPUID6_ECX_APERFMPERF_CAPABILITY 0x1 +#define CPUID_PM_LEAF 6 +#define CPUID6_EAX_HWP BIT(7, U) +#define CPUID6_EAX_HWP_NOTIFICATION BIT(8, U) +#define CPUID6_EAX_HWP_ACTIVITY_WINDOW BIT(9, U) +#define CPUID6_EAX_HWP_ENERGY_PERFORMANCE_PREFERENCE BIT(10, U) +#define CPUID6_EAX_HWP_PACKAGE_LEVEL_REQUEST BIT(11, U) +#define CPUID6_EAX_HDC BIT(13, U) +#define CPUID6_EAX_HWP_PECI BIT(16, U) +#define CPUID6_EAX_HW_FEEDBACK BIT(19, U) +#define CPUID6_ECX_APERFMPERF_CAPABILITY BIT(0, U) /* CPUID level 0x00000001.edx */ #define cpu_has_fpu 1 diff --git a/xen/arch/x86/include/asm/msr-index.h b/xen/arch/x86/include/asm/msr-index.h index 2749e433d2..47b09a24b5 100644 --- a/xen/arch/x86/include/asm/msr-index.h +++ b/xen/arch/x86/include/asm/msr-index.h @@ -151,6 +151,13 @@ #define MSR_PKRS 0x000006e1 +#define MSR_PM_ENABLE 0x00000770 +#define PM_ENABLE_HWP_ENABLE BIT(0, ULL) + +#define MSR_HWP_CAPABILITIES 0x00000771 +#define MSR_HWP_INTERRUPT 0x00000773 +#define MSR_HWP_REQUEST 0x00000774 + #define MSR_X2APIC_FIRST 0x00000800 #define MSR_X2APIC_LAST 0x000008ff @@ -165,6 +172,11 @@ #define PASID_PASID_MASK 0x000fffff #define PASID_VALID (_AC(1, ULL) << 31) +#define MSR_PKG_HDC_CTL 0x00000db0 +#define PKG_HDC_CTL_HDC_PKG_ENABLE BIT(0, ULL) +#define MSR_PM_CTL1 0x00000db1 +#define PM_CTL1_HDC_ALLOW_BLOCK BIT(0, ULL) + #define MSR_UARCH_MISC_CTRL 0x00001b01 #define UARCH_CTRL_DOITM (_AC(1, ULL) << 0) @@ -503,6 +515,7 @@ #define MSR_IA32_MISC_ENABLE_LIMIT_CPUID (1<<22) #define MSR_IA32_MISC_ENABLE_XTPR_DISABLE (1<<23) #define MSR_IA32_MISC_ENABLE_XD_DISABLE (1ULL << 34) +#define MSR_IA32_MISC_ENABLE_TURBO_DISENGAGE (1ULL << 38) #define MSR_IA32_TSC_DEADLINE 0x000006E0 #define MSR_IA32_ENERGY_PERF_BIAS 0x000001b0 diff --git a/xen/drivers/cpufreq/cpufreq.c b/xen/drivers/cpufreq/cpufreq.c index cccf9a64c8..b6e6d70ddf 100644 --- a/xen/drivers/cpufreq/cpufreq.c +++ b/xen/drivers/cpufreq/cpufreq.c @@ -97,6 +97,15 @@ static int __init cf_check setup_cpufreq_option(const char *str) return cpufreq_cmdline_parse(arg + 1); } + if ( choice < 0 && !cmdline_strcmp(str, "hwp") ) + { + xen_processor_pmbits |= XEN_PROCESSOR_PM_PX; + cpufreq_controller = FREQCTL_xen; + opt_cpufreq_hwp = true; + if ( *arg && *(arg + 1) ) + return hwp_cmdline_parse(arg + 1); + } + return (choice < 0) ? -EINVAL : 0; } custom_param("cpufreq", setup_cpufreq_option); diff --git a/xen/include/acpi/cpufreq/cpufreq.h b/xen/include/acpi/cpufreq/cpufreq.h index a49efd1cb2..6ec7dbcbbb 100644 --- a/xen/include/acpi/cpufreq/cpufreq.h +++ b/xen/include/acpi/cpufreq/cpufreq.h @@ -246,4 +246,7 @@ void cpufreq_dbs_timer_resume(void); void intel_feature_detect(struct cpufreq_policy *policy); +extern bool __initdata opt_cpufreq_hwp; +int hwp_cmdline_parse(const char *s); + #endif /* __XEN_CPUFREQ_PM_H__ */ diff --git a/xen/include/acpi/cpufreq/processor_perf.h b/xen/include/acpi/cpufreq/processor_perf.h index d8a1ba68a6..b751ca4937 100644 --- a/xen/include/acpi/cpufreq/processor_perf.h +++ b/xen/include/acpi/cpufreq/processor_perf.h @@ -7,6 +7,9 @@ #define XEN_PX_INIT 0x80000000 +bool hwp_available(void); +int hwp_register_driver(void); + int powernow_cpufreq_init(void); unsigned int powernow_register_driver(void); unsigned int get_measured_perf(unsigned int cpu, unsigned int flag); diff --git a/xen/include/public/sysctl.h b/xen/include/public/sysctl.h index bdcea99d71..08fe815329 100644 --- a/xen/include/public/sysctl.h +++ b/xen/include/public/sysctl.h @@ -296,6 +296,7 @@ struct xen_ondemand { uint32_t up_threshold; }; +#define XEN_HWP_DRIVER "hwp" /* * cpufreq para name of this structure named * same as sysfs file name of native linux -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Wed Jun 14 18:04:04 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 18:04:04 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549122.857524 (Exim 4.92) (envelope-from ) id 1q9UqY-0007Jh-AU; Wed, 14 Jun 2023 18:03:54 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549122.857524; Wed, 14 Jun 2023 18:03:54 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9UqY-0007J9-3b; Wed, 14 Jun 2023 18:03:54 +0000 Received: by outflank-mailman (input) for mailman id 549122; Wed, 14 Jun 2023 18:03:52 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9UqW-0005LA-Ha for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 18:03:52 +0000 Received: from mail-qv1-xf35.google.com (mail-qv1-xf35.google.com [2607:f8b0:4864:20::f35]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id d0d6b2f1-0add-11ee-b232-6b7b168915f2; Wed, 14 Jun 2023 20:03:50 +0200 (CEST) Received: by mail-qv1-xf35.google.com with SMTP id 6a1803df08f44-62fea2f19d5so3534926d6.0 for ; Wed, 14 Jun 2023 11:03:50 -0700 (PDT) Received: from pm2-ws13.praxislan02.com ([2001:470:8:67e:ba27:ebff:fee8:ce27]) by smtp.gmail.com with ESMTPSA id s5-20020a05621412c500b006262de12a8csm4851613qvv.65.2023.06.14.11.03.48 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 14 Jun 2023 11:03:48 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: d0d6b2f1-0add-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686765829; x=1689357829; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=BW3lKTSm5JYkGrQYyurYltq8i3jFBvOnwjMyoQl8MJY=; b=cA4pTGbySBWczEcKbl+TGDjiEJCwYOqs54YBNFgohCp1tgWnET/wQ3X0NTMjRLxbm0 jv5KELZXFxu9x0LtfwV+ocj+4KY3I/0EaeK3YceeIdpG5GUPjw0EzvuFIbO6Zivz17gF WImmEKDXJs8+3jhHATOgOkvXcFqH7m4z5GAL6vfU5CliY40AFLvGcuicSLakqD6wVeJK zmO/MlFGnvA5zgj1vn8iWQ32MuaSjsXE5BdWq/MWmJyp2jnPQtrKN43E+MdYHOBwyfYA 2A1cET9XYwAxnVn6exRs7VRpiRSt7JXQdMQYrF9RDULW2bXGQTSf1jyd88ffcrQ7xcl3 jEmQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686765829; x=1689357829; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=BW3lKTSm5JYkGrQYyurYltq8i3jFBvOnwjMyoQl8MJY=; b=bHr1z+Q3qBWHkC8Lr+QllkJVvu6tSdWaBkwxy1P2/lpPgdfk6fFRCD/e6w69Dh0lS7 rTsUBPYQ9dt51UtmXI7ShC8amSiW5v4sKhd1F13QSzEY9JYZL0Ic6smqoAaWYx8mBmjk Q1ti9v0dVJkM0/JDIiDNdh9rNoXgrfICZcD//bZLW/cvEdscKJARCR6ujeL1mutCUwSJ Ao0HTAQEO+BldvQeb50UPDdsYXIuX1uYE2qA9iQA0vz+pss+TIl7/yASuA55PbC3sN+y iPmeTuIxZPueShjoyzaK9HJaMX+WdtS/eDpMoKDgGcWepaqRKnQnci6waiJyuxFHxyk3 pWtw== X-Gm-Message-State: AC+VfDwd+3XRe+v2w9KHoEQnz9gcLNVOaxBWTJ87GH4OgPmOL7gskTsl 10PwUtlwUA9DPYUcoL4V5ooqRczYxzk= X-Google-Smtp-Source: ACHHUZ5Y/layCN4TDLjj5ioxrmoHmf9zUbZhIV64z78tfGT5H4NBF5sm6nLjqCJulx214g7aqajTYQ== X-Received: by 2002:a05:6214:1941:b0:62f:eed1:4781 with SMTP id q1-20020a056214194100b0062feed14781mr225846qvk.21.1686765829046; Wed, 14 Jun 2023 11:03:49 -0700 (PDT) From: Jason Andryuk To: xen-devel@lists.xenproject.org Cc: Jason Andryuk , Jan Beulich , Andrew Cooper , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Wei Liu Subject: [PATCH v4 07/15] xen/x86: Tweak PDC bits when using HWP Date: Wed, 14 Jun 2023 14:02:45 -0400 Message-Id: <20230614180253.89958-8-jandryuk@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230614180253.89958-1-jandryuk@gmail.com> References: <20230614180253.89958-1-jandryuk@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Qubes testing of HWP support had a report of a laptop, Thinkpad X1 Carbon Gen 4 with a Skylake processor, locking up during boot when HWP is enabled. A user found a kernel bug that seems to be the same issue: https://bugzilla.kernel.org/show_bug.cgi?id=110941. That bug was fixed by Linux commit a21211672c9a ("ACPI / processor: Request native thermal interrupt handling via _OSC"). The tl;dr is SMM crashes when it receives thermal interrupts, so Linux calls the ACPI _OSC method to take over interrupt handling. The Linux fix looks at the CPU features to decide whether or not to call _OSC with bit 12 set to take over native interrupt handling. Xen needs some way to communicate HWP to Dom0 for making an equivalent call. Xen exposes modified PDC bits via the platform_op set_pminfo hypercall. Expand that to set bit 12 when HWP is present and in use. Any generated interrupt would be handled by Xen's thermal drive, which clears the status. Bit 12 isn't named in the linux header and is open coded in Linux's usage. This will need a corresponding linux patch to pick up and apply the PDC bits. Signed-off-by: Jason Andryuk Reviewed-by: Jan Beulich --- v4: Added __ro_after_init s/ACPI_PDC_CPPC_NTV_INT/ACPI_PDC_CPPC_NATIVE_INTR/ Remove _IA32_ Fixup for opt_cpufreq_hwp removal Add Jan Reviewed-by v3: New --- xen/arch/x86/acpi/cpufreq/hwp.c | 16 +++++++++++----- xen/arch/x86/acpi/lib.c | 5 +++++ xen/arch/x86/cpu/mcheck/mce_intel.c | 6 ++++++ xen/arch/x86/include/asm/msr-index.h | 1 + xen/include/acpi/cpufreq/processor_perf.h | 1 + xen/include/acpi/pdc_intel.h | 1 + 6 files changed, 25 insertions(+), 5 deletions(-) diff --git a/xen/arch/x86/acpi/cpufreq/hwp.c b/xen/arch/x86/acpi/cpufreq/hwp.c index c62345dde7..5f210b54ff 100644 --- a/xen/arch/x86/acpi/cpufreq/hwp.c +++ b/xen/arch/x86/acpi/cpufreq/hwp.c @@ -13,7 +13,8 @@ #include #include -static bool __ro_after_init feature_hwp; +static bool __ro_after_init hwp_in_use; + static bool __ro_after_init feature_hwp_notification; static bool __ro_after_init feature_hwp_activity_window; @@ -168,6 +169,11 @@ static int __init cf_check cpufreq_gov_hwp_init(void) } __initcall(cpufreq_gov_hwp_init); +bool hwp_active(void) +{ + return hwp_in_use; +} + bool __init hwp_available(void) { unsigned int eax; @@ -211,7 +217,6 @@ bool __init hwp_available(void) return false; } - feature_hwp = eax & CPUID6_EAX_HWP; feature_hwp_notification = eax & CPUID6_EAX_HWP_NOTIFICATION; feature_hwp_activity_window = eax & CPUID6_EAX_HWP_ACTIVITY_WINDOW; feature_hdc = eax & CPUID6_EAX_HDC; @@ -224,12 +229,13 @@ bool __init hwp_available(void) hwp_verbose("HW_FEEDBACK %ssupported\n", (eax & CPUID6_EAX_HW_FEEDBACK) ? "" : "not "); - cpufreq_governor_internal = feature_hwp; + hwp_in_use = eax & CPUID6_EAX_HWP; + cpufreq_governor_internal = hwp_in_use; - if ( feature_hwp ) + if ( hwp_in_use ) hwp_info("Using HWP for cpufreq\n"); - return feature_hwp; + return hwp_in_use; } static int hdc_set_pkg_hdc_ctl(unsigned int cpu, bool val) diff --git a/xen/arch/x86/acpi/lib.c b/xen/arch/x86/acpi/lib.c index 43831b92d1..1b4710a790 100644 --- a/xen/arch/x86/acpi/lib.c +++ b/xen/arch/x86/acpi/lib.c @@ -26,6 +26,8 @@ #include #include +#include + u32 __read_mostly acpi_smi_cmd; u8 __read_mostly acpi_enable_value; u8 __read_mostly acpi_disable_value; @@ -140,5 +142,8 @@ int arch_acpi_set_pdc_bits(u32 acpi_id, u32 *pdc, u32 mask) !(ecx & CPUID5_ECX_INTERRUPT_BREAK)) pdc[2] &= ~(ACPI_PDC_C_C1_FFH | ACPI_PDC_C_C2C3_FFH); + if (hwp_active()) + pdc[2] |= ACPI_PDC_CPPC_NATIVE_INTR; + return 0; } diff --git a/xen/arch/x86/cpu/mcheck/mce_intel.c b/xen/arch/x86/cpu/mcheck/mce_intel.c index 2f23f02923..c95152ad85 100644 --- a/xen/arch/x86/cpu/mcheck/mce_intel.c +++ b/xen/arch/x86/cpu/mcheck/mce_intel.c @@ -15,6 +15,9 @@ #include #include #include + +#include + #include "mce.h" #include "x86_mca.h" #include "barrier.h" @@ -64,6 +67,9 @@ static void cf_check intel_thermal_interrupt(struct cpu_user_regs *regs) ack_APIC_irq(); + if ( hwp_active() ) + wrmsr_safe(MSR_HWP_STATUS, 0); + if ( NOW() < per_cpu(next, cpu) ) return; diff --git a/xen/arch/x86/include/asm/msr-index.h b/xen/arch/x86/include/asm/msr-index.h index 47b09a24b5..351745f6bc 100644 --- a/xen/arch/x86/include/asm/msr-index.h +++ b/xen/arch/x86/include/asm/msr-index.h @@ -157,6 +157,7 @@ #define MSR_HWP_CAPABILITIES 0x00000771 #define MSR_HWP_INTERRUPT 0x00000773 #define MSR_HWP_REQUEST 0x00000774 +#define MSR_HWP_STATUS 0x00000777 #define MSR_X2APIC_FIRST 0x00000800 #define MSR_X2APIC_LAST 0x000008ff diff --git a/xen/include/acpi/cpufreq/processor_perf.h b/xen/include/acpi/cpufreq/processor_perf.h index b751ca4937..dd8ec36ba7 100644 --- a/xen/include/acpi/cpufreq/processor_perf.h +++ b/xen/include/acpi/cpufreq/processor_perf.h @@ -8,6 +8,7 @@ #define XEN_PX_INIT 0x80000000 bool hwp_available(void); +bool hwp_active(void); int hwp_register_driver(void); int powernow_cpufreq_init(void); diff --git a/xen/include/acpi/pdc_intel.h b/xen/include/acpi/pdc_intel.h index 4fb719d6f5..abaa098b51 100644 --- a/xen/include/acpi/pdc_intel.h +++ b/xen/include/acpi/pdc_intel.h @@ -17,6 +17,7 @@ #define ACPI_PDC_C_C1_FFH (0x0100) #define ACPI_PDC_C_C2C3_FFH (0x0200) #define ACPI_PDC_SMP_P_HWCOORD (0x0800) +#define ACPI_PDC_CPPC_NATIVE_INTR (0x1000) #define ACPI_PDC_EST_CAPABILITY_SMP (ACPI_PDC_SMP_C1PT | \ ACPI_PDC_C_C1_HALT | \ -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Wed Jun 14 18:04:05 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 18:04:05 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549123.857531 (Exim 4.92) (envelope-from ) id 1q9UqZ-0007XO-1F; Wed, 14 Jun 2023 18:03:55 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549123.857531; Wed, 14 Jun 2023 18:03:54 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9UqY-0007U8-PH; Wed, 14 Jun 2023 18:03:54 +0000 Received: by outflank-mailman (input) for mailman id 549123; Wed, 14 Jun 2023 18:03:53 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9UqX-0005LA-HX for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 18:03:53 +0000 Received: from mail-qk1-x732.google.com (mail-qk1-x732.google.com [2607:f8b0:4864:20::732]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id d210f1d2-0add-11ee-b232-6b7b168915f2; Wed, 14 Jun 2023 20:03:52 +0200 (CEST) Received: by mail-qk1-x732.google.com with SMTP id af79cd13be357-75d528d0811so236879185a.0 for ; Wed, 14 Jun 2023 11:03:52 -0700 (PDT) Received: from pm2-ws13.praxislan02.com ([2001:470:8:67e:ba27:ebff:fee8:ce27]) by smtp.gmail.com with ESMTPSA id s5-20020a05621412c500b006262de12a8csm4851613qvv.65.2023.06.14.11.03.50 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 14 Jun 2023 11:03:50 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: d210f1d2-0add-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686765831; x=1689357831; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=fxVGZ+gvz08OKoWjfCFPcTsdFvOXHOS/NxFkI1JhnIY=; b=LKbwpHLzISyP75fjQUXwZsbNJE6lOz2vmOUuNIfFAvKHNACDHK12L9edz0k0+jEQuQ 5VcMUx9ehO3prQURyQvX3P4qfLdifPjLP05pB5PlfymDB5Xlm3TBJC8pReG3rW3dPf77 oMQcoOJNdusMS6kjJ3VjAwzJk1vqimMWMsH/Jei4X5Y2vmHMUqi6KjFTAJ1ISlS9+/Wz WiLrGvUvJOHkkE1JDdSGsBeU7J5PIZdHXH4KBGBJgHRChQbh2FVJTrpy3pocrP2oZsJz fskfk3Ic9tQdWBxMCTmo/H21oF7LaEuZYvCCU/oLyfDqeI1mHO4A4fxsE43I5iOz+/pv luzA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686765831; x=1689357831; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=fxVGZ+gvz08OKoWjfCFPcTsdFvOXHOS/NxFkI1JhnIY=; b=cnP88vxKNAS84u4pzwSWivbPNf24tingHwDmSaTOLAf+l3nVr31nMqK1jR9xx7+aoC oLSofrO+VQ9JcF5pd43K6Z0m/YNb2ycBOj2os3ZBWHXTt9VP2EhcCa/KRJgschKOuk0Y rMd2d8fPn8iZUHQJF5fOxEFvS5WiZWzlGQ2trPXw3zs2YFoIeWHgCpEEg9PMbMwjp3QQ v2dBEhCfVE88jKKxzjnpTDTA9dDRbkEcb3Em86F5rR1IGirqQWkJh2C5aID4DJ6+OSa1 QNAuaNsaNfotG6WkxgpEnAicNnJyk3Kzo29atssSjhokTWdUGi5oKnUjHGGY9mhUpsbT q3vg== X-Gm-Message-State: AC+VfDxpzQF3ikyW/Wga6ATx7+iFSgkCWfh/CB/Z/M+y8VdWVP1lwj2f yX/nrzvANUyOPsdgK5U8TuCx9v20rEA= X-Google-Smtp-Source: ACHHUZ5ioKKeef9cH4i55/FDg6yrWqp0eMHgoVA2PeT+JYpLBZc+rS0GufDj17GD9r3/h4y5fhgfgg== X-Received: by 2002:a05:6214:c2c:b0:625:ba46:27e6 with SMTP id a12-20020a0562140c2c00b00625ba4627e6mr21097267qvd.2.1686765831038; Wed, 14 Jun 2023 11:03:51 -0700 (PDT) From: Jason Andryuk To: xen-devel@lists.xenproject.org Cc: Jason Andryuk , Wei Liu , Anthony PERARD Subject: [PATCH v4 08/15] xenpm: Change get-cpufreq-para output for hwp Date: Wed, 14 Jun 2023 14:02:46 -0400 Message-Id: <20230614180253.89958-9-jandryuk@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230614180253.89958-1-jandryuk@gmail.com> References: <20230614180253.89958-1-jandryuk@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit When using HWP, some of the returned data is not applicable. In that case, we should just omit it to avoid confusing the user. So switch to printing the base and max frequencies since those are relevant to HWP. Similarly, stop printing the CPU frequencies since those do not apply. The scaling fields are also no longer printed. Signed-off-by: Jason Andryuk --- v2: Use full governor name XEN_HWP_GOVERNOR to change output Style fixes v4: s/turbo/max/ Check for XEN_HWP_DRIVER driver instead of "-internal" --- tools/misc/xenpm.c | 83 +++++++++++++++++++++++++--------------------- 1 file changed, 46 insertions(+), 37 deletions(-) diff --git a/tools/misc/xenpm.c b/tools/misc/xenpm.c index 1c474c3b59..4e53e68dc5 100644 --- a/tools/misc/xenpm.c +++ b/tools/misc/xenpm.c @@ -711,6 +711,7 @@ void start_gather_func(int argc, char *argv[]) /* print out parameters about cpu frequency */ static void print_cpufreq_para(int cpuid, struct xc_get_cpufreq_para *p_cpufreq) { + bool hwp = strcmp(p_cpufreq->scaling_driver, XEN_HWP_DRIVER) == 0; int i; printf("cpu id : %d\n", cpuid); @@ -720,49 +721,57 @@ static void print_cpufreq_para(int cpuid, struct xc_get_cpufreq_para *p_cpufreq) printf(" %d", p_cpufreq->affected_cpus[i]); printf("\n"); - printf("cpuinfo frequency : max [%u] min [%u] cur [%u]\n", - p_cpufreq->cpuinfo_max_freq, - p_cpufreq->cpuinfo_min_freq, - p_cpufreq->cpuinfo_cur_freq); + if ( hwp ) + printf("cpuinfo frequency : base [%u] max [%u]\n", + p_cpufreq->cpuinfo_min_freq, + p_cpufreq->cpuinfo_max_freq); + else + printf("cpuinfo frequency : max [%u] min [%u] cur [%u]\n", + p_cpufreq->cpuinfo_max_freq, + p_cpufreq->cpuinfo_min_freq, + p_cpufreq->cpuinfo_cur_freq); printf("scaling_driver : %s\n", p_cpufreq->scaling_driver); - printf("scaling_avail_gov : %s\n", - p_cpufreq->scaling_available_governors); - - printf("current_governor : %s\n", p_cpufreq->u.s.scaling_governor); - if ( !strncmp(p_cpufreq->u.s.scaling_governor, - "userspace", CPUFREQ_NAME_LEN) ) - { - printf(" userspace specific :\n"); - printf(" scaling_setspeed : %u\n", - p_cpufreq->u.s.u.userspace.scaling_setspeed); - } - else if ( !strncmp(p_cpufreq->u.s.scaling_governor, - "ondemand", CPUFREQ_NAME_LEN) ) + if ( !hwp ) { - printf(" ondemand specific :\n"); - printf(" sampling_rate : max [%u] min [%u] cur [%u]\n", - p_cpufreq->u.s.u.ondemand.sampling_rate_max, - p_cpufreq->u.s.u.ondemand.sampling_rate_min, - p_cpufreq->u.s.u.ondemand.sampling_rate); - printf(" up_threshold : %u\n", - p_cpufreq->u.s.u.ondemand.up_threshold); - } + printf("scaling_avail_gov : %s\n", + p_cpufreq->scaling_available_governors); - printf("scaling_avail_freq :"); - for ( i = 0; i < p_cpufreq->freq_num; i++ ) - if ( p_cpufreq->scaling_available_frequencies[i] == - p_cpufreq->u.s.scaling_cur_freq ) - printf(" *%d", p_cpufreq->scaling_available_frequencies[i]); - else - printf(" %d", p_cpufreq->scaling_available_frequencies[i]); - printf("\n"); + printf("current_governor : %s\n", p_cpufreq->u.s.scaling_governor); + if ( !strncmp(p_cpufreq->u.s.scaling_governor, + "userspace", CPUFREQ_NAME_LEN) ) + { + printf(" userspace specific :\n"); + printf(" scaling_setspeed : %u\n", + p_cpufreq->u.s.u.userspace.scaling_setspeed); + } + else if ( !strncmp(p_cpufreq->u.s.scaling_governor, + "ondemand", CPUFREQ_NAME_LEN) ) + { + printf(" ondemand specific :\n"); + printf(" sampling_rate : max [%u] min [%u] cur [%u]\n", + p_cpufreq->u.s.u.ondemand.sampling_rate_max, + p_cpufreq->u.s.u.ondemand.sampling_rate_min, + p_cpufreq->u.s.u.ondemand.sampling_rate); + printf(" up_threshold : %u\n", + p_cpufreq->u.s.u.ondemand.up_threshold); + } + + printf("scaling_avail_freq :"); + for ( i = 0; i < p_cpufreq->freq_num; i++ ) + if ( p_cpufreq->scaling_available_frequencies[i] == + p_cpufreq->u.s.scaling_cur_freq ) + printf(" *%d", p_cpufreq->scaling_available_frequencies[i]); + else + printf(" %d", p_cpufreq->scaling_available_frequencies[i]); + printf("\n"); - printf("scaling frequency : max [%u] min [%u] cur [%u]\n", - p_cpufreq->u.s.scaling_max_freq, - p_cpufreq->u.s.scaling_min_freq, - p_cpufreq->u.s.scaling_cur_freq); + printf("scaling frequency : max [%u] min [%u] cur [%u]\n", + p_cpufreq->u.s.scaling_max_freq, + p_cpufreq->u.s.scaling_min_freq, + p_cpufreq->u.s.scaling_cur_freq); + } printf("turbo mode : %s\n", p_cpufreq->turbo_enabled ? "enabled" : "disabled or n/a"); -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Wed Jun 14 18:04:07 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 18:04:07 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549126.857548 (Exim 4.92) (envelope-from ) id 1q9Uqb-0008E7-DD; Wed, 14 Jun 2023 18:03:57 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549126.857548; Wed, 14 Jun 2023 18:03:57 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9Uqb-0008Dw-9A; Wed, 14 Jun 2023 18:03:57 +0000 Received: by outflank-mailman (input) for mailman id 549126; Wed, 14 Jun 2023 18:03:56 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9Uqa-0005LA-IC for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 18:03:56 +0000 Received: from mail-qv1-xf36.google.com (mail-qv1-xf36.google.com [2607:f8b0:4864:20::f36]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id d34dc8a1-0add-11ee-b232-6b7b168915f2; Wed, 14 Jun 2023 20:03:55 +0200 (CEST) Received: by mail-qv1-xf36.google.com with SMTP id 6a1803df08f44-5ed99ebe076so20968856d6.2 for ; Wed, 14 Jun 2023 11:03:55 -0700 (PDT) Received: from pm2-ws13.praxislan02.com ([2001:470:8:67e:ba27:ebff:fee8:ce27]) by smtp.gmail.com with ESMTPSA id s5-20020a05621412c500b006262de12a8csm4851613qvv.65.2023.06.14.11.03.52 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 14 Jun 2023 11:03:52 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: d34dc8a1-0add-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686765833; x=1689357833; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=uF8Wj46GTB4zKmfvuCCfVeswvcmmkhkf2knhpTgohUg=; b=IkDKOvKKl5vU1x2uhj2Gw+eeCWbPihqscD/s5K3RdP4VtDf2nyAr9ut6EkAk8mvopn hsx3vrYs5xK5YEU5Xz5BSljnmaeiGIQQzhI5O/++7/T3rWmizocyR44RYkZWPYT6gY13 C99Q8FzB+/GQOVQRHn+JN72uaQsq51oGnNU06TKvhuagzTJI0V8jJqsN6PSzZuQB8tws QJl5Fk62SC5zcuZwsKEeXygAE39w8cimhQMNtAulEUrmBfXTOl+cfyA/BK2QYHIe08pK vZegIsbWgklsyDGnAOOL16tTW1ArKDaQZVshRBBLrfUJLsfhsg8l8GnkhPg0gi+O445L XT3A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686765833; x=1689357833; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=uF8Wj46GTB4zKmfvuCCfVeswvcmmkhkf2knhpTgohUg=; b=MT9A+Px6XfJVo3n4jRhjoUW1HQVoAndn8GrbJ7zDkR2cZjlDVChss0YJXqAOwZOoNM 49VFz/ggMk8Lyj9Z6BIYKjVXIQAPTt2B5n73gNcRd6r5VjzqNk+lzs65SQL/VTynS+rf H7wmMVIyKwLjw7AxR062NjQE4U22B0H1SyBK2DnammMLrvd3IYXWeok4Nd6hzTg+J58T 0VB1IfLk2w23cr5RcGwZ31gcEadI/HK/wkm7dRkk8nLTVBs2FrNAsW5Izq78Xc3AjhWH lD2XCcBLuSpG8T6X1RuUY7Oa101n8W8cX96vpZe2w/LHLIYYx3VkX3cshmyxRLcHwxKP xaCw== X-Gm-Message-State: AC+VfDxNjtuWJgyl4jgOA6Uc17PI4v/6lJc1RP92KeCUKgctLCaOzJ5n XK1GguEvCLh0oqWvT37G49w4pxXx6Vs= X-Google-Smtp-Source: ACHHUZ78fPAF59pf1hisnYm84QCHRPh63yXRIYNML21YOpd3hr1AXgZlNoX4wTttmORx4HLvYP0F7A== X-Received: by 2002:ad4:5c41:0:b0:62d:e9d5:336 with SMTP id a1-20020ad45c41000000b0062de9d50336mr14643490qva.41.1686765833314; Wed, 14 Jun 2023 11:03:53 -0700 (PDT) From: Jason Andryuk To: xen-devel@lists.xenproject.org Cc: Jason Andryuk , Jan Beulich , Andrew Cooper , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Wei Liu , George Dunlap , Julien Grall , Stefano Stabellini Subject: [PATCH v4 09/15] cpufreq: Export HWP parameters to userspace as CPPC Date: Wed, 14 Jun 2023 14:02:47 -0400 Message-Id: <20230614180253.89958-10-jandryuk@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230614180253.89958-1-jandryuk@gmail.com> References: <20230614180253.89958-1-jandryuk@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Extend xen_get_cpufreq_para to return hwp parameters. HWP is an implementation of ACPI CPPC (Collaborative Processor Performance Control). Use the CPPC name since that might be useful in the future for AMD P-state. We need the features bitmask to indicate fields supported by the actual hardware - this only applies to activity window for the time being. The HWP most_efficient is mapped to CPPC lowest_nonlinear, and guaranteed is mapped to nominal. CPPC has a guaranteed that is optional while nominal is required. ACPI spec says "If this register is not implemented, OSPM assumes guaranteed performance is always equal to nominal performance." The use of uint8_t parameters matches the hardware size. uint32_t entries grows the sysctl_t past the build assertion in setup.c. The uint8_t ranges are supported across multiple generations, so hopefully they won't change. Signed-off-by: Jason Andryuk --- v2: Style fixes Don't bump XEN_SYSCTL_INTERFACE_VERSION Drop cpufreq.h comment divider Expand xen_hwp_para comment Add HWP activity window mantissa/exponent defines Handle union rename Add const to get_hwp_para Remove hw_ prefix from xen_hwp_para members Use XEN_HWP_GOVERNOR Use per_cpu for hwp_drv_data v4: Fixup for opt_cpufreq_hwp/hdc removal get_hwp_para() takes cpu as arg XEN_ prefix HWP_ACT_WINDOW_* Drop HWP_ACT_WINDOW_EXPONENT_SHIFT - shift MASK Remove Energy Bias (0-15) EPP fallback Rename xen_hwp_para to xen_cppc_para s/hwp/cppc/ Use scaling driver to switch output --- xen/arch/x86/acpi/cpufreq/hwp.c | 23 +++++++++ xen/drivers/acpi/pmstat.c | 78 ++++++++++++++++-------------- xen/include/acpi/cpufreq/cpufreq.h | 2 + xen/include/public/sysctl.h | 56 +++++++++++++++++++++ 4 files changed, 123 insertions(+), 36 deletions(-) diff --git a/xen/arch/x86/acpi/cpufreq/hwp.c b/xen/arch/x86/acpi/cpufreq/hwp.c index 5f210b54ff..86c5793266 100644 --- a/xen/arch/x86/acpi/cpufreq/hwp.c +++ b/xen/arch/x86/acpi/cpufreq/hwp.c @@ -537,6 +537,29 @@ static const struct cpufreq_driver __initconstrel hwp_cpufreq_driver = .update = hwp_cpufreq_update, }; +int get_hwp_para(const unsigned int cpu, + struct xen_cppc_para *cppc_para) +{ + const struct hwp_drv_data *data = per_cpu(hwp_drv_data, cpu); + + if ( data == NULL ) + return -EINVAL; + + cppc_para->features = + (feature_hwp_activity_window ? XEN_SYSCTL_CPPC_FEAT_ACT_WINDOW : 0); + cppc_para->lowest = data->hw.lowest; + cppc_para->lowest_nonlinear = data->hw.most_efficient; + cppc_para->nominal = data->hw.guaranteed; + cppc_para->highest = data->hw.highest; + cppc_para->minimum = data->minimum; + cppc_para->maximum = data->maximum; + cppc_para->desired = data->desired; + cppc_para->energy_perf = data->energy_perf; + cppc_para->activity_window = data->activity_window; + + return 0; +} + int __init hwp_register_driver(void) { return cpufreq_register_driver(&hwp_cpufreq_driver); diff --git a/xen/drivers/acpi/pmstat.c b/xen/drivers/acpi/pmstat.c index 57359c21d8..10143c084c 100644 --- a/xen/drivers/acpi/pmstat.c +++ b/xen/drivers/acpi/pmstat.c @@ -251,48 +251,54 @@ static int get_cpufreq_para(struct xen_sysctl_pm_op *op) else strlcpy(op->u.get_para.scaling_driver, "Unknown", CPUFREQ_NAME_LEN); - if ( !(scaling_available_governors = - xzalloc_array(char, gov_num * CPUFREQ_NAME_LEN)) ) - return -ENOMEM; - if ( (ret = read_scaling_available_governors( - scaling_available_governors, - gov_num * CPUFREQ_NAME_LEN * sizeof(char))) ) + if ( !strncasecmp(op->u.get_para.scaling_driver, XEN_HWP_DRIVER, + CPUFREQ_NAME_LEN) ) + ret = get_hwp_para(policy->cpu, &op->u.get_para.u.cppc_para); + else { + if ( !(scaling_available_governors = + xzalloc_array(char, gov_num * CPUFREQ_NAME_LEN)) ) + return -ENOMEM; + if ( (ret = read_scaling_available_governors( + scaling_available_governors, + gov_num * CPUFREQ_NAME_LEN * sizeof(char))) ) + { + xfree(scaling_available_governors); + return ret; + } + ret = copy_to_guest(op->u.get_para.scaling_available_governors, + scaling_available_governors, gov_num * CPUFREQ_NAME_LEN); xfree(scaling_available_governors); - return ret; - } - ret = copy_to_guest(op->u.get_para.scaling_available_governors, - scaling_available_governors, gov_num * CPUFREQ_NAME_LEN); - xfree(scaling_available_governors); - if ( ret ) - return ret; + if ( ret ) + return ret; - op->u.get_para.u.s.scaling_cur_freq = policy->cur; - op->u.get_para.u.s.scaling_max_freq = policy->max; - op->u.get_para.u.s.scaling_min_freq = policy->min; + op->u.get_para.u.s.scaling_cur_freq = policy->cur; + op->u.get_para.u.s.scaling_max_freq = policy->max; + op->u.get_para.u.s.scaling_min_freq = policy->min; - if ( policy->governor->name[0] ) - strlcpy(op->u.get_para.u.s.scaling_governor, - policy->governor->name, CPUFREQ_NAME_LEN); - else - strlcpy(op->u.get_para.u.s.scaling_governor, "Unknown", - CPUFREQ_NAME_LEN); + if ( policy->governor->name[0] ) + strlcpy(op->u.get_para.u.s.scaling_governor, + policy->governor->name, CPUFREQ_NAME_LEN); + else + strlcpy(op->u.get_para.u.s.scaling_governor, "Unknown", + CPUFREQ_NAME_LEN); - /* governor specific para */ - if ( !strncasecmp(op->u.get_para.u.s.scaling_governor, - "userspace", CPUFREQ_NAME_LEN) ) - { - op->u.get_para.u.s.u.userspace.scaling_setspeed = policy->cur; - } + /* governor specific para */ + if ( !strncasecmp(op->u.get_para.u.s.scaling_governor, + "userspace", CPUFREQ_NAME_LEN) ) + { + op->u.get_para.u.s.u.userspace.scaling_setspeed = policy->cur; + } - if ( !strncasecmp(op->u.get_para.u.s.scaling_governor, - "ondemand", CPUFREQ_NAME_LEN) ) - { - ret = get_cpufreq_ondemand_para( - &op->u.get_para.u.s.u.ondemand.sampling_rate_max, - &op->u.get_para.u.s.u.ondemand.sampling_rate_min, - &op->u.get_para.u.s.u.ondemand.sampling_rate, - &op->u.get_para.u.s.u.ondemand.up_threshold); + if ( !strncasecmp(op->u.get_para.u.s.scaling_governor, + "ondemand", CPUFREQ_NAME_LEN) ) + { + ret = get_cpufreq_ondemand_para( + &op->u.get_para.u.s.u.ondemand.sampling_rate_max, + &op->u.get_para.u.s.u.ondemand.sampling_rate_min, + &op->u.get_para.u.s.u.ondemand.sampling_rate, + &op->u.get_para.u.s.u.ondemand.up_threshold); + } } return ret; diff --git a/xen/include/acpi/cpufreq/cpufreq.h b/xen/include/acpi/cpufreq/cpufreq.h index 6ec7dbcbbb..fb655fac14 100644 --- a/xen/include/acpi/cpufreq/cpufreq.h +++ b/xen/include/acpi/cpufreq/cpufreq.h @@ -248,5 +248,7 @@ void intel_feature_detect(struct cpufreq_policy *policy); extern bool __initdata opt_cpufreq_hwp; int hwp_cmdline_parse(const char *s); +int get_hwp_para(const unsigned int cpu, + struct xen_cppc_para *cppc_para); #endif /* __XEN_CPUFREQ_PM_H__ */ diff --git a/xen/include/public/sysctl.h b/xen/include/public/sysctl.h index 08fe815329..5c9b60b5d0 100644 --- a/xen/include/public/sysctl.h +++ b/xen/include/public/sysctl.h @@ -296,6 +296,61 @@ struct xen_ondemand { uint32_t up_threshold; }; +struct xen_cppc_para { + /* OUT */ + /* activity_window supported if 1 */ +#define XEN_SYSCTL_CPPC_FEAT_ACT_WINDOW (1 << 0) + uint32_t features; /* bit flags for features */ + /* + * See Intel SDM: HWP Performance Range and Dynamic Capabilities + * + * These four are 0-255 hardware-provided values. They "continuous, + * abstract unit-less, performance" values. smaller numbers are slower + * and larger ones are faster. + */ + uint32_t lowest; + uint32_t lowest_nonlinear; /* most_efficient */ + uint32_t nominal; /* guaranteed */ + uint32_t highest; + /* + * See Intel SDM: IA32_HWP_REQUEST MSR (Address: 774H Logical Processor + * Scope) + * + * These are all hints, and the processor may deviate outside of them. + * Values below are 0-255. + * + * minimum and maximum can be set to the above hardware values to constrain + * operation. The full range 0-255 is accepted and will be clipped by + * hardware. + */ + uint32_t minimum; + uint32_t maximum; + /* + * Set an explicit performance hint, disabling hardware selection. + * 0 lets the hardware decide. + */ + uint32_t desired; + /* + * Hint to hardware for energy/performance preference. + * 0: Performance + * 128: Balance (Default) + * 255: Powersaving + */ + uint32_t energy_perf; + /* + * Activity Window is a moving history window for the processor's operation + * calculations, controlling responsiveness. Measured in microseconds + * encoded as: + * + * bits 6:0 - 7bit mantissa + * bits 9:7 - 3bit base-10 exponent + * btis 15:10 - Unused - must be 0 + */ +#define XEN_CPPC_ACT_WINDOW_MANTISSA_MASK 0x07f +#define XEN_CPPC_ACT_WINDOW_EXPONENT_MASK 0x380 + uint32_t activity_window; +}; + #define XEN_HWP_DRIVER "hwp" /* * cpufreq para name of this structure named @@ -332,6 +387,7 @@ struct xen_get_cpufreq_para { struct xen_ondemand ondemand; } u; } s; + struct xen_cppc_para cppc_para; } u; int32_t turbo_enabled; -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Wed Jun 14 18:04:13 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 18:04:13 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549130.857558 (Exim 4.92) (envelope-from ) id 1q9Uqg-0000PS-VI; Wed, 14 Jun 2023 18:04:02 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549130.857558; Wed, 14 Jun 2023 18:04:02 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9Uqg-0000PH-Qs; Wed, 14 Jun 2023 18:04:02 +0000 Received: by outflank-mailman (input) for mailman id 549130; Wed, 14 Jun 2023 18:04:01 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9Uqf-0005L9-Cw for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 18:04:01 +0000 Received: from mail-qv1-xf2d.google.com (mail-qv1-xf2d.google.com [2607:f8b0:4864:20::f2d]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id d61b5b31-0add-11ee-8611-37d641c3527e; Wed, 14 Jun 2023 20:03:59 +0200 (CEST) Received: by mail-qv1-xf2d.google.com with SMTP id 6a1803df08f44-62de85dd962so18741206d6.0 for ; Wed, 14 Jun 2023 11:03:59 -0700 (PDT) Received: from pm2-ws13.praxislan02.com ([2001:470:8:67e:ba27:ebff:fee8:ce27]) by smtp.gmail.com with ESMTPSA id s5-20020a05621412c500b006262de12a8csm4851613qvv.65.2023.06.14.11.03.56 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 14 Jun 2023 11:03:57 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: d61b5b31-0add-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686765838; x=1689357838; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=2G+0xPmD9u5kzp6yWDZeh7ZvMy436YMgfg56aXJDM/0=; b=HFJzrNHYhSAPngEZ+wRb669gxq7uVYIQUwX4ldz3MzimvMKIFT8t83knxO0WaPhlMW BlpJMbxpKr85dkg4lpDWbbe/ceItB8S8VEcWrwPcnQrmvFip/nZaXKTAy1EtTognkWSr SGSdSZB62pmMdcnIWJ17A6BvqfebQU5wipwGbDycElYp67dlTD2u/74NcKg+6LOf9835 9pIvtH+uw8nSDLw+u4oAgMVbSyvlfPWNIa1Ft6jllKH4zyV8/MBUbIoKfMJAwT/JuA9N 0usYC2hGp+OOHfEiozYpIEgiApujrkYvlFd/5+22k+7dAgAMZo3W6taCx3X3DCycfDbd LhgQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686765838; x=1689357838; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=2G+0xPmD9u5kzp6yWDZeh7ZvMy436YMgfg56aXJDM/0=; b=JSWPnyD9UnrQbKuxWpUkl6rxrvaA2b8qPEORGLseUuuU6OTE0NlhsVC8Fq0ETkSLyI fb/i3SsMJERHR1pt6EiZp7oAadPAyHD/JJglrFy0HCyxDwmhsAtoly2PQ1M48QQzk3gD ZF5m1OfzaFdb6hDsxWkJArCjyH4V8TXDDgFgT0AknflPaihHnsR9VAkh1M0NvMkU3U74 PhP5CL0YRiAEMFmcnkW/m68SXDW5H9YKlHfjwegscVWaeETccGbNyEXpYZ+dfmn2/hBs OhwrrNj87ErvT5tb2Hv7rEz7+vYJPoLiqUPN8XfC43rgCUQ10wsCuTxY9i85UGDQg9/O YXZg== X-Gm-Message-State: AC+VfDw83zb/PQe9HK50susQcZzzmr08/vpRJ1Nuz6mIb6pa05FoJQgg LZlCpneX8oQNauCw26RG9EtdO7sJn3o= X-Google-Smtp-Source: ACHHUZ740s5OQ6s/5g9KdK4xRCjO1EnL5dM8aI86KWmOknFw61KSZMzn+Po6mkTlPMwNCiQ5pD7ZMw== X-Received: by 2002:ad4:5dea:0:b0:62d:f8e7:3043 with SMTP id jn10-20020ad45dea000000b0062df8e73043mr5465088qvb.18.1686765837938; Wed, 14 Jun 2023 11:03:57 -0700 (PDT) From: Jason Andryuk To: xen-devel@lists.xenproject.org Cc: Jason Andryuk , Wei Liu , Anthony PERARD Subject: [PATCH v4 11/15] xenpm: Print HWP/CPPC parameters Date: Wed, 14 Jun 2023 14:02:49 -0400 Message-Id: <20230614180253.89958-12-jandryuk@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230614180253.89958-1-jandryuk@gmail.com> References: <20230614180253.89958-1-jandryuk@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Print HWP-specific parameters. Some are always present, but others depend on hardware support. Signed-off-by: Jason Andryuk --- v2: Style fixes Declare i outside loop Replace repearted hardware/configured limits with spaces Fixup for hw_ removal Use XEN_HWP_GOVERNOR Use HWP_ACT_WINDOW_EXPONENT_* Remove energy_perf hw autonomous - 0 doesn't mean autonomous v4: Return activity_window from calculate_hwp_activity_window Use blanks instead of _ in output Use MASK_EXTR Check XEN_HWP_DRIVER name since governor is no longer returned s/hwp/cppc --- tools/misc/xenpm.c | 66 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 66 insertions(+) diff --git a/tools/misc/xenpm.c b/tools/misc/xenpm.c index 4e53e68dc5..488797fd20 100644 --- a/tools/misc/xenpm.c +++ b/tools/misc/xenpm.c @@ -708,6 +708,46 @@ void start_gather_func(int argc, char *argv[]) pause(); } +static unsigned int calculate_activity_window(const xc_cppc_para_t *cppc, + const char **units) +{ + unsigned int mantissa = MASK_EXTR(cppc->activity_window, + XEN_CPPC_ACT_WINDOW_MANTISSA_MASK); + unsigned int exponent = MASK_EXTR(cppc->activity_window, + XEN_CPPC_ACT_WINDOW_EXPONENT_MASK); + unsigned int multiplier = 1; + unsigned int i; + + /* + * SDM only states a 0 register is hardware selected, and doesn't mention + * a 0 mantissa with a non-0 exponent. Only special case a 0 register. + */ + if ( cppc->activity_window == 0 ) + { + *units = "hardware selected"; + + return 0; + } + + if ( exponent >= 6 ) + { + *units = "s"; + exponent -= 6; + } + else if ( exponent >= 3 ) + { + *units = "ms"; + exponent -= 3; + } + else + *units = "us"; + + for ( i = 0; i < exponent; i++ ) + multiplier *= 10; + + return mantissa * multiplier; +} + /* print out parameters about cpu frequency */ static void print_cpufreq_para(int cpuid, struct xc_get_cpufreq_para *p_cpufreq) { @@ -772,6 +812,32 @@ static void print_cpufreq_para(int cpuid, struct xc_get_cpufreq_para *p_cpufreq) p_cpufreq->u.s.scaling_min_freq, p_cpufreq->u.s.scaling_cur_freq); } + else + { + const xc_cppc_para_t *cppc = &p_cpufreq->u.cppc_para; + + printf("cppc variables :\n"); + printf(" hardware limits : lowest [%u] lowest nonlinear [%u]\n", + cppc->lowest, cppc->lowest_nonlinear); + printf(" : nominal [%u] highest [%u]\n", + cppc->nominal, cppc->highest); + printf(" configured limits : min [%u] max [%u] energy perf [%u]\n", + cppc->minimum, cppc->maximum, cppc->energy_perf); + + if ( cppc->features & XEN_SYSCTL_CPPC_FEAT_ACT_WINDOW ) + { + unsigned int activity_window; + const char *units; + + activity_window = calculate_activity_window(cppc, &units); + printf(" : activity_window [%u %s]\n", + activity_window, units); + } + + printf(" : desired [%u%s]\n", + cppc->desired, + cppc->desired ? "" : " hw autonomous"); + } printf("turbo mode : %s\n", p_cpufreq->turbo_enabled ? "enabled" : "disabled or n/a"); -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Wed Jun 14 18:04:16 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 18:04:16 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549131.857568 (Exim 4.92) (envelope-from ) id 1q9Uqk-0000qI-E5; Wed, 14 Jun 2023 18:04:06 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549131.857568; Wed, 14 Jun 2023 18:04:06 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9Uqk-0000q9-5v; Wed, 14 Jun 2023 18:04:06 +0000 Received: by outflank-mailman (input) for mailman id 549131; Wed, 14 Jun 2023 18:04:04 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9Uqi-0005L9-27 for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 18:04:04 +0000 Received: from mail-qk1-x72d.google.com (mail-qk1-x72d.google.com [2607:f8b0:4864:20::72d]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id d7756023-0add-11ee-8611-37d641c3527e; Wed, 14 Jun 2023 20:04:02 +0200 (CEST) Received: by mail-qk1-x72d.google.com with SMTP id af79cd13be357-75da00a1eddso238630185a.3 for ; Wed, 14 Jun 2023 11:04:02 -0700 (PDT) Received: from pm2-ws13.praxislan02.com ([2001:470:8:67e:ba27:ebff:fee8:ce27]) by smtp.gmail.com with ESMTPSA id s5-20020a05621412c500b006262de12a8csm4851613qvv.65.2023.06.14.11.03.59 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 14 Jun 2023 11:03:59 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: d7756023-0add-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686765840; x=1689357840; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=1GKrKS8MiOO/3IyATz8/1ZuFV/xDUGqEs/80K9twFs0=; b=esf7L9t+l/diomCDY4BXb+pi7Ip3FWjbSJST8nXYCU+g31ySOqGJhpWfw0Tj4cUzDo pVLj0k3qNE5gtEJpHkbERTnJkCQyVrIIdwd4RNmhPECaETgMHB4taCHichGuCHV8Q7HP UjdmEnCOl3+/OjT3pCRXkMhW9fbPGXq/tSOU+lstjLwrXkD7qOH6UKLZVLUqgU1GMvMa S7Rfai24HF5NNjJNh/6PSVrOCVyhPEoTcUwt/GibVbAbwNifahUXmNMijVbu5hcq78OA 88sqCcU8h3Ur3VOEnp9rVpNfgr5UJ3lZ8L6OyDOw9aFU/UN3RjbT835RZgteCtC9sz+q OSzg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686765840; x=1689357840; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=1GKrKS8MiOO/3IyATz8/1ZuFV/xDUGqEs/80K9twFs0=; b=g2a8UtZYZwhx6O93mCjnywBfQn3yp0acXp+DwmFxhrRzDnIzMTFtXOM2KxShZc9wUJ pJ6ee8w8k+avj8isqH1tUTjVqvpFnEd0nlydjAYnNJJPSP7s10p7BO6ykb36WhA/RKfq gCFax0pszoPuJpSGUIdFoMJFHJKp8DOjS2GWTwkvqbiae9JAkc7U6j+l+1riZ3xNOMMj aC5SFLmidCh7U2Fg0InV9IFo71GQdId+2Uy3Fe/WTb8kh4L/XludQfyrNn41DhvAdNJ/ EG0BVYxlpVjgRD5F6JWhjVqGN3BtR9sCy05yeoOjUjtqS+0aWbkDp1Osrhk4XDLBBgbK PqgA== X-Gm-Message-State: AC+VfDwMwDO+venoKzwxvRpHviXJrt6K7IoPE2sWyn7thhRwOWRUhbeO 3MkwhCJMIv6EzdhF7wmUoUApPLqvRaU= X-Google-Smtp-Source: ACHHUZ4V73ClCfCNGt+bqS0RlR2jIE8NAYMZmmKlUEAS2C/EcyReY9KwirAaERaWSiv4w7yaIaTAtQ== X-Received: by 2002:a05:6214:21eb:b0:623:9e5c:e625 with SMTP id p11-20020a05621421eb00b006239e5ce625mr16756670qvj.29.1686765840404; Wed, 14 Jun 2023 11:04:00 -0700 (PDT) From: Jason Andryuk To: xen-devel@lists.xenproject.org Cc: Jason Andryuk , Jan Beulich , Andrew Cooper , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Wei Liu , George Dunlap , Julien Grall , Stefano Stabellini Subject: [PATCH v4 12/15] xen: Add SET_CPUFREQ_HWP xen_sysctl_pm_op Date: Wed, 14 Jun 2023 14:02:50 -0400 Message-Id: <20230614180253.89958-13-jandryuk@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230614180253.89958-1-jandryuk@gmail.com> References: <20230614180253.89958-1-jandryuk@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Add SET_CPUFREQ_HWP xen_sysctl_pm_op to set HWP parameters. The sysctl supports setting multiple values simultaneously as indicated by the set_params bits. This allows atomically applying new HWP configuration via a single wrmsr. XEN_SYSCTL_HWP_SET_PRESET_BALANCE/PERFORMANCE/POWERSAVE provide three common presets. Setting them depends on hardware limits which the hypervisor is already caching. So using them allows skipping a hypercall to query the limits (lowest/highest) to then set those same values. The code is organized to allow a preset to be refined with additional stuff if desired. "most_efficient" and "guaranteed" could be additional presets in the future, but the are not added now. Those levels can change at runtime, but we don't have code in place to monitor and update for those events. Signed-off-by: Jason Andryuk --- v4: Remove IA32_ENERGY_BIAS support Validate parameters don't exceed 255 Use CPPC/cppc name set_cppc_para() add const set_cppc_para() return hwp_cpufreq_target() Expand sysctl comments v3: Remove cpufreq_governor_internal from set_cpufreq_hwp v2: Update for naming anonymous union Drop hwp_err for invalid input in set_hwp_para() Drop uint16_t cast in XEN_SYSCTL_HWP_SET_PARAM_MASK Drop parens for HWP_SET_PRESET defines Reference activity_window format comment Place SET_CPUFREQ_HWP after SET_CPUFREQ_PARA Add {HWP,IA32}_ENERGY_PERF_MAX_{PERFORMANCE,POWERSAVE} defines Order defines before fields in sysctl.h Use XEN_HWP_GOVERNOR Use per_cpu for hwp_drv_data --- xen/arch/x86/acpi/cpufreq/hwp.c | 98 ++++++++++++++++++++++++++++++ xen/drivers/acpi/pmstat.c | 17 ++++++ xen/include/acpi/cpufreq/cpufreq.h | 2 + xen/include/public/sysctl.h | 58 ++++++++++++++++++ 4 files changed, 175 insertions(+) diff --git a/xen/arch/x86/acpi/cpufreq/hwp.c b/xen/arch/x86/acpi/cpufreq/hwp.c index 86c5793266..3ee046940c 100644 --- a/xen/arch/x86/acpi/cpufreq/hwp.c +++ b/xen/arch/x86/acpi/cpufreq/hwp.c @@ -23,6 +23,10 @@ static bool __ro_after_init feature_hdc; bool __initdata opt_cpufreq_hwp; static bool __ro_after_init opt_cpufreq_hdc = true; +#define HWP_ENERGY_PERF_MAX_PERFORMANCE 0 +#define HWP_ENERGY_PERF_BALANCE 0x80 +#define HWP_ENERGY_PERF_MAX_POWERSAVE 0xff + union hwp_request { struct @@ -560,6 +564,100 @@ int get_hwp_para(const unsigned int cpu, return 0; } +int set_hwp_para(struct cpufreq_policy *policy, + const struct xen_set_cppc_para *set_cppc) +{ + unsigned int cpu = policy->cpu; + struct hwp_drv_data *data = per_cpu(hwp_drv_data, cpu); + + if ( data == NULL ) + return -EINVAL; + + /* Validate all parameters first */ + if ( set_cppc->set_params & ~XEN_SYSCTL_CPPC_SET_PARAM_MASK ) + return -EINVAL; + + if ( set_cppc->set_params & XEN_SYSCTL_CPPC_SET_ACT_WINDOW && + !feature_hwp_activity_window ) + return -EINVAL; + + if ( !(set_cppc->set_params & XEN_SYSCTL_CPPC_SET_ACT_WINDOW) && + set_cppc->activity_window ) + return -EINVAL; + + if ( set_cppc->activity_window & ~XEN_SYSCTL_CPPC_ACT_WINDOW_MASK ) + return -EINVAL; + + if ( (set_cppc->set_params & XEN_SYSCTL_CPPC_SET_DESIRED) && + set_cppc->desired != 0 && + (set_cppc->desired < data->hw.lowest || + set_cppc->desired > data->hw.highest) ) + return -EINVAL; + + /* + * minimum & maximum are not validated against lowest or highest as + * hardware doesn't seem to care and the SDM says CPUs will clip + * internally. + */ + if ( set_cppc->minimum > 255 || + set_cppc->maximum > 255 || + set_cppc->energy_perf > 255 ) + return -EINVAL; + + /* Apply presets */ + switch ( set_cppc->set_params & XEN_SYSCTL_CPPC_SET_PRESET_MASK ) + { + case XEN_SYSCTL_CPPC_SET_PRESET_POWERSAVE: + data->minimum = data->hw.lowest; + data->maximum = data->hw.lowest; + data->activity_window = 0; + data->energy_perf = HWP_ENERGY_PERF_MAX_POWERSAVE; + data->desired = 0; + break; + + case XEN_SYSCTL_CPPC_SET_PRESET_PERFORMANCE: + data->minimum = data->hw.highest; + data->maximum = data->hw.highest; + data->activity_window = 0; + data->energy_perf = HWP_ENERGY_PERF_MAX_PERFORMANCE; + data->desired = 0; + break; + + case XEN_SYSCTL_CPPC_SET_PRESET_BALANCE: + data->minimum = data->hw.lowest; + data->maximum = data->hw.highest; + data->activity_window = 0; + data->energy_perf = HWP_ENERGY_PERF_BALANCE; + data->desired = 0; + break; + + case XEN_SYSCTL_CPPC_SET_PRESET_NONE: + break; + + default: + return -EINVAL; + } + + /* Further customize presets if needed */ + if ( set_cppc->set_params & XEN_SYSCTL_CPPC_SET_MINIMUM ) + data->minimum = set_cppc->minimum; + + if ( set_cppc->set_params & XEN_SYSCTL_CPPC_SET_MAXIMUM ) + data->maximum = set_cppc->maximum; + + if ( set_cppc->set_params & XEN_SYSCTL_CPPC_SET_ENERGY_PERF ) + data->energy_perf = set_cppc->energy_perf; + + if ( set_cppc->set_params & XEN_SYSCTL_CPPC_SET_DESIRED ) + data->desired = set_cppc->desired; + + if ( set_cppc->set_params & XEN_SYSCTL_CPPC_SET_ACT_WINDOW ) + data->activity_window = set_cppc->activity_window & + XEN_SYSCTL_CPPC_ACT_WINDOW_MASK; + + return hwp_cpufreq_target(policy, 0, 0); +} + int __init hwp_register_driver(void) { return cpufreq_register_driver(&hwp_cpufreq_driver); diff --git a/xen/drivers/acpi/pmstat.c b/xen/drivers/acpi/pmstat.c index 10143c084c..e4482bcdbc 100644 --- a/xen/drivers/acpi/pmstat.c +++ b/xen/drivers/acpi/pmstat.c @@ -402,6 +402,19 @@ static int set_cpufreq_para(struct xen_sysctl_pm_op *op) return ret; } +static int set_cpufreq_cppc(const struct xen_sysctl_pm_op *op) +{ + struct cpufreq_policy *policy = per_cpu(cpufreq_cpu_policy, op->cpuid); + + if ( !policy || !policy->governor ) + return -EINVAL; + + if ( !hwp_active() ) + return -EINVAL; + + return set_hwp_para(policy, &op->u.set_cppc); +} + int do_pm_op(struct xen_sysctl_pm_op *op) { int ret = 0; @@ -474,6 +487,10 @@ int do_pm_op(struct xen_sysctl_pm_op *op) break; } + case SET_CPUFREQ_CPPC: + ret = set_cpufreq_cppc(op); + break; + case GET_CPUFREQ_AVGFREQ: { op->u.get_avgfreq = cpufreq_driver_getavg(op->cpuid, USR_GETAVG); diff --git a/xen/include/acpi/cpufreq/cpufreq.h b/xen/include/acpi/cpufreq/cpufreq.h index fb655fac14..d757da2ef4 100644 --- a/xen/include/acpi/cpufreq/cpufreq.h +++ b/xen/include/acpi/cpufreq/cpufreq.h @@ -250,5 +250,7 @@ extern bool __initdata opt_cpufreq_hwp; int hwp_cmdline_parse(const char *s); int get_hwp_para(const unsigned int cpu, struct xen_cppc_para *cppc_para); +int set_hwp_para(struct cpufreq_policy *policy, + const struct xen_set_cppc_para *set_cppc); #endif /* __XEN_CPUFREQ_PM_H__ */ diff --git a/xen/include/public/sysctl.h b/xen/include/public/sysctl.h index 5c9b60b5d0..96c58eb998 100644 --- a/xen/include/public/sysctl.h +++ b/xen/include/public/sysctl.h @@ -351,6 +351,62 @@ struct xen_cppc_para { uint32_t activity_window; }; +/* + * Set CPPC values. + * + * Configured the parameters for CPPC. Set bits in set_params control which + * values are applied. + * + * There are a set of presets along with individual fields. Presets are + * applied first, and then individual fields. This allows customizing + * a preset without having to specify every value. + * + * The preset options values are as follows: + * + * preset | minimum | maxium | energy_perf + * ------------+---------+---------+---------------- + * powersave | lowest | lowest | powersave (255) + * ------------+---------+---------+---------------- + * balance | lowest | highest | balance (128) + * ------------+---------+---------+---------------- + * performance | highest | highest | performance (0) + * + * desired and activity_window are set to 0, hardware selected. + */ +struct xen_set_cppc_para { +#define XEN_SYSCTL_CPPC_SET_DESIRED (1U << 0) +#define XEN_SYSCTL_CPPC_SET_ENERGY_PERF (1U << 1) +#define XEN_SYSCTL_CPPC_SET_ACT_WINDOW (1U << 2) +#define XEN_SYSCTL_CPPC_SET_MINIMUM (1U << 3) +#define XEN_SYSCTL_CPPC_SET_MAXIMUM (1U << 4) +#define XEN_SYSCTL_CPPC_SET_PRESET_MASK 0xf000 +#define XEN_SYSCTL_CPPC_SET_PRESET_NONE 0x0000 +#define XEN_SYSCTL_CPPC_SET_PRESET_BALANCE 0x1000 +#define XEN_SYSCTL_CPPC_SET_PRESET_POWERSAVE 0x2000 +#define XEN_SYSCTL_CPPC_SET_PRESET_PERFORMANCE 0x3000 +#define XEN_SYSCTL_CPPC_SET_PARAM_MASK ( \ + XEN_SYSCTL_CPPC_SET_PRESET_MASK | \ + XEN_SYSCTL_CPPC_SET_DESIRED | \ + XEN_SYSCTL_CPPC_SET_ENERGY_PERF | \ + XEN_SYSCTL_CPPC_SET_ACT_WINDOW | \ + XEN_SYSCTL_CPPC_SET_MINIMUM | \ + XEN_SYSCTL_CPPC_SET_MAXIMUM ) + uint32_t set_params; /* bitflags for valid values */ + /* See comments in struct xen_cppc_para. */ + uint32_t minimum; + uint32_t maximum; + uint32_t desired; + /* + * Hint to hardware for energy/performance preference. + * 0: Performance + * 128: Balance (Default) + * 255: Powersaving + */ + uint32_t energy_perf; +#define XEN_SYSCTL_CPPC_ACT_WINDOW_MASK 0x03ff + uint32_t activity_window; +}; + #define XEN_HWP_DRIVER "hwp" /* * cpufreq para name of this structure named @@ -417,6 +473,7 @@ struct xen_sysctl_pm_op { #define SET_CPUFREQ_GOV (CPUFREQ_PARA | 0x02) #define SET_CPUFREQ_PARA (CPUFREQ_PARA | 0x03) #define GET_CPUFREQ_AVGFREQ (CPUFREQ_PARA | 0x04) + #define SET_CPUFREQ_CPPC (CPUFREQ_PARA | 0x05) /* set/reset scheduler power saving option */ #define XEN_SYSCTL_pm_op_set_sched_opt_smt 0x21 @@ -443,6 +500,7 @@ struct xen_sysctl_pm_op { struct xen_get_cpufreq_para get_para; struct xen_set_cpufreq_gov set_gov; struct xen_set_cpufreq_para set_para; + struct xen_set_cppc_para set_cppc; uint64_aligned_t get_avgfreq; uint32_t set_sched_opt_smt; #define XEN_SYSCTL_CX_UNLIMITED 0xffffffff -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Wed Jun 14 18:04:19 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 18:04:19 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549134.857577 (Exim 4.92) (envelope-from ) id 1q9Uqn-0001OJ-LC; Wed, 14 Jun 2023 18:04:09 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549134.857577; Wed, 14 Jun 2023 18:04:09 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9Uqn-0001Na-FS; Wed, 14 Jun 2023 18:04:09 +0000 Received: by outflank-mailman (input) for mailman id 549134; Wed, 14 Jun 2023 18:04:08 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9Uqm-0005L9-E0 for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 18:04:08 +0000 Received: from mail-qk1-x732.google.com (mail-qk1-x732.google.com [2607:f8b0:4864:20::732]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id da0f1f78-0add-11ee-8611-37d641c3527e; Wed, 14 Jun 2023 20:04:06 +0200 (CEST) Received: by mail-qk1-x732.google.com with SMTP id af79cd13be357-75d44cb20a2so228113685a.3 for ; Wed, 14 Jun 2023 11:04:06 -0700 (PDT) Received: from pm2-ws13.praxislan02.com ([2001:470:8:67e:ba27:ebff:fee8:ce27]) by smtp.gmail.com with ESMTPSA id s5-20020a05621412c500b006262de12a8csm4851613qvv.65.2023.06.14.11.04.03 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 14 Jun 2023 11:04:04 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: da0f1f78-0add-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686765845; x=1689357845; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=2TAha9GGtbIdxJkaO8y2Wuv/uF0GuXKaVPOMOdxqX78=; b=DhcVB+qzfZOk0Tf3YAquvn9Qk0KzgkFeL7oyELAWV6v+8KLFDlIEqNEMaTZnFggGPh Y3TAvf7cXIO940NA3F5WnKWZtKlDwPxz4jNbU3NlKW7ufGX2THKvYjPi3/H5urUNmvHB tbXej7KCWfCL25EjBaIK/LKXXCNIEKbIW9SxuiNQUQvQR4VL/21/fjlavKmsDXOrzF80 06+jm1aypyUb2+1Qk8zLncZsf74p9W6b1WOMlM9jUAird2lETwOunjmhV8jQIJkBpdvT DVENOQ+zniWrtS/huRheitJNTzzyapyrhK9cB2bXSs8fPAUkjh795lk7Occ7nt3lfkTx TMDA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686765845; x=1689357845; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=2TAha9GGtbIdxJkaO8y2Wuv/uF0GuXKaVPOMOdxqX78=; b=VifRWYZdT/oNytRLSGUbNTe4zag0VLZFDV+6S0USAvpszKR/bGJ50cg2U1RP1Gisyt DagnLt47xjIFFGYvpQfKKV5kqv0cA90qbruMhWyRzrPyLpXM5KWA+6FyH8oINmEQxrTf hgAlEZYLX2H00ixgsHxPcmD1iTzpm+6buoVHV9kASKBurtWZYNPaPTPtCSDQVaHGh/dR cR1zAYh0J2geiLVV53MN/i3vd1Niru66sxBwS/BsruGSglf7e0I41pOKAecZ7/Ao9Jcq URSjW+EC8x5Wc3oQZJbdPLFTxIpSUpRs5xrUiPyjCtqAcboHA8XXVbL3f8MedqIGxUNn Hb3A== X-Gm-Message-State: AC+VfDxA2FX3jH0R5al2p/jRWO17a/+ykdGP177XQ9CA+gyvggPk8sY/ rEhU7hqCM+CZ5vkglN6W3ge3yhy17cs= X-Google-Smtp-Source: ACHHUZ7sTpaZjatEnLKDG0GeXM4DB6r32bbGsSisKNq+DZoxG62Lk0Nkap5olQC11CqZU7HfU7DArA== X-Received: by 2002:a05:6214:e6b:b0:626:38cc:6497 with SMTP id jz11-20020a0562140e6b00b0062638cc6497mr18507482qvb.5.1686765844607; Wed, 14 Jun 2023 11:04:04 -0700 (PDT) From: Jason Andryuk To: xen-devel@lists.xenproject.org Cc: Jason Andryuk , Wei Liu , Anthony PERARD Subject: [PATCH v4 14/15] xenpm: Add set-cpufreq-cppc subcommand Date: Wed, 14 Jun 2023 14:02:52 -0400 Message-Id: <20230614180253.89958-15-jandryuk@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230614180253.89958-1-jandryuk@gmail.com> References: <20230614180253.89958-1-jandryuk@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit set-cpufreq-cppc allows setting the Hardware P-State (HWP) parameters. It can be run on all or just a single cpu. There are presets of balance, powersave & performance. Those can be further tweaked by param:val arguments as explained in the usage description. Parameter names are just checked to the first 3 characters to shorten typing. Some options are hardware dependent, and ranges can be found in get-cpufreq-para. Signed-off-by: Jason Andryuk --- v4: Remove energy bias 0-15 & 7 references Use MASK_INSR Fixup { placement Drop extra case in parse_activity_window strcmp suffix Expand help text s/hwp/cppc/ Use isdigit() to check cpuid - otherwise run on all CPUs. v2: Compare provided parameter name and not just 3 characters. Use "-" in parameter names Remove hw_ Replace sscanf with strchr & strtoul. Remove toplevel error message with lower level ones. Help text s/127/128/ Help text mention truncation. Avoid some truncation rounding down by adding 5 before division. Help test mention default microseconds Also comment the limit check written to avoid overflow. --- tools/misc/xenpm.c | 237 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 237 insertions(+) diff --git a/tools/misc/xenpm.c b/tools/misc/xenpm.c index 488797fd20..2f2b699794 100644 --- a/tools/misc/xenpm.c +++ b/tools/misc/xenpm.c @@ -16,6 +16,8 @@ */ #define MAX_NR_CPU 512 +#include +#include #include #include #include @@ -67,6 +69,30 @@ void show_help(void) " set-max-cstate |'unlimited' [|'unlimited']\n" " set the C-State limitation ( >= 0) and\n" " optionally the C-sub-state limitation ( >= 0)\n" + " set-cpufreq-cppc [cpuid] [balance|performance|powersave] *\n" + " set Hardware P-State (HWP) parameters\n" + " on CPU or all if omitted.\n" + " optionally a preset of one of:\n" + " balance|performance|powersave\n" + " an optional list of param:val arguments\n" + " minimum:N (0-255)\n" + " maximum:N (0-255)\n" + " get-cpufreq-para lowest/highest\n" + " values are limits for\n" + " minumum/maximum.\n" + " desired:N (0-255)\n" + " set explicit performance target.\n" + " non-zero disables auto-HWP mode.\n" + " energy-perf:N (0-255)\n" + " energy/performance hint\n" + " lower - favor performance\n" + " higher - favor powersave\n" + " 128 - balance\n" + " act-window:N{,m,u}s range 1us-1270s\n" + " window for internal calculations.\n" + " units default to \"us\" if unspecified.\n" + " truncates un-representable values.\n" + " 0 lets the hardware decide.\n" " start [seconds] start collect Cx/Px statistics,\n" " output after CTRL-C or SIGINT or several seconds.\n" " enable-turbo-mode [cpuid] enable Turbo Mode for processors that support it.\n" @@ -1292,6 +1318,216 @@ void disable_turbo_mode(int argc, char *argv[]) errno, strerror(errno)); } +/* + * Parse activity_window:NNN{us,ms,s} and validate range. + * + * Activity window is a 7bit mantissa (0-127) with a 3bit exponent (0-7) base + * 10 in microseconds. So the range is 1 microsecond to 1270 seconds. A value + * of 0 lets the hardware autonomously select the window. + * + * Return 0 on success + * -1 on error + */ +static int parse_activity_window(xc_set_cppc_para_t *set_cppc, unsigned long u, + const char *suffix) +{ + unsigned int exponent = 0; + unsigned int multiplier = 1; + + if ( suffix && suffix[0] ) + { + if ( strcmp(suffix, "s") == 0 ) + { + multiplier = 1000 * 1000; + exponent = 6; + } + else if ( strcmp(suffix, "ms") == 0 ) + { + multiplier = 1000; + exponent = 3; + } + else if ( strcmp(suffix, "us") != 0 ) + { + fprintf(stderr, "invalid activity window units: \"%s\"\n", suffix); + + return -1; + } + } + + /* u * multipler > 1270 * 1000 * 1000 transformed to avoid overflow. */ + if ( u > 1270 * 1000 * 1000 / multiplier ) + { + fprintf(stderr, "activity window is too large\n"); + + return -1; + } + + /* looking for 7 bits of mantissa and 3 bits of exponent */ + while ( u > 127 ) + { + u += 5; /* Round up to mitigate truncation rounding down + e.g. 128 -> 120 vs 128 -> 130. */ + u /= 10; + exponent += 1; + } + + set_cppc->activity_window = + MASK_INSR(exponent, XEN_CPPC_ACT_WINDOW_EXPONENT_MASK) | + MASK_INSR(u, XEN_CPPC_ACT_WINDOW_MANTISSA_MASK); + set_cppc->set_params |= XEN_SYSCTL_CPPC_SET_ACT_WINDOW; + + return 0; +} + +static int parse_cppc_opts(xc_set_cppc_para_t *set_cppc, int *cpuid, + int argc, char *argv[]) +{ + int i = 0; + + if ( argc < 1 ) + { + fprintf(stderr, "Missing arguments\n"); + return -1; + } + + if ( isdigit(argv[i][0]) ) + { + if ( sscanf(argv[i], "%d", cpuid) != 1 || *cpuid < 0 ) + { + fprintf(stderr, "Could not parse cpuid \"%s\"\n", argv[i]); + return -1; + } + + i++; + } + + if ( i == argc ) + { + fprintf(stderr, "Missing arguments\n"); + return -1; + } + + if ( strcasecmp(argv[i], "powersave") == 0 ) + { + set_cppc->set_params = XEN_SYSCTL_CPPC_SET_PRESET_POWERSAVE; + i++; + } + else if ( strcasecmp(argv[i], "performance") == 0 ) + { + set_cppc->set_params = XEN_SYSCTL_CPPC_SET_PRESET_PERFORMANCE; + i++; + } + else if ( strcasecmp(argv[i], "balance") == 0 ) + { + set_cppc->set_params = XEN_SYSCTL_CPPC_SET_PRESET_BALANCE; + i++; + } + + for ( ; i < argc; i++) + { + unsigned long val; + char *param = argv[i]; + char *value; + char *suffix; + int ret; + + value = strchr(param, ':'); + if ( value == NULL ) + { + fprintf(stderr, "\"%s\" is an invalid cppc parameter\n", argv[i]); + return -1; + } + + value[0] = '\0'; + value++; + + errno = 0; + val = strtoul(value, &suffix, 10); + if ( (errno && val == ULONG_MAX) || value == suffix ) + { + fprintf(stderr, "Could not parse number \"%s\"\n", value); + return -1; + } + + if ( strncasecmp(param, "act-window", strlen(param)) == 0 ) + { + ret = parse_activity_window(set_cppc, val, suffix); + if (ret) + return -1; + + continue; + } + + if ( val > 255 ) + { + fprintf(stderr, "\"%s\" value \"%lu\" is out of range\n", param, + val); + return -1; + } + + if ( suffix && suffix[0] ) + { + fprintf(stderr, "Suffix \"%s\" is invalid\n", suffix); + return -1; + } + + if ( strncasecmp(param, "minimum", MAX(2, strlen(param))) == 0 ) + { + set_cppc->minimum = val; + set_cppc->set_params |= XEN_SYSCTL_CPPC_SET_MINIMUM; + } + else if ( strncasecmp(param, "maximum", MAX(2, strlen(param))) == 0 ) + { + set_cppc->maximum = val; + set_cppc->set_params |= XEN_SYSCTL_CPPC_SET_MAXIMUM; + } + else if ( strncasecmp(param, "desired", strlen(param)) == 0 ) + { + set_cppc->desired = val; + set_cppc->set_params |= XEN_SYSCTL_CPPC_SET_DESIRED; + } + else if ( strncasecmp(param, "energy-perf", strlen(param)) == 0 ) + { + set_cppc->energy_perf = val; + set_cppc->set_params |= XEN_SYSCTL_CPPC_SET_ENERGY_PERF; + } + else + { + fprintf(stderr, "\"%s\" is an invalid parameter\n", param); + return -1; + } + } + + if ( set_cppc->set_params == 0 ) + { + fprintf(stderr, "No parameters set in request\n"); + return -1; + } + + return 0; +} + +static void cppc_set_func(int argc, char *argv[]) +{ + xc_set_cppc_para_t set_cppc = {}; + int cpuid = -1; + int i = 0; + + if ( parse_cppc_opts(&set_cppc, &cpuid, argc, argv) ) + exit(EINVAL); + + if ( cpuid != -1 ) + { + i = cpuid; + max_cpu_nr = i + 1; + } + + for ( ; i < max_cpu_nr; i++ ) + if ( xc_set_cpufreq_cppc(xc_handle, i, &set_cppc) ) + fprintf(stderr, "[CPU%d] failed to set cppc params (%d - %s)\n", + i, errno, strerror(errno)); +} + struct { const char *name; void (*function)(int argc, char *argv[]); @@ -1302,6 +1538,7 @@ struct { { "get-cpufreq-average", cpufreq_func }, { "start", start_gather_func }, { "get-cpufreq-para", cpufreq_para_func }, + { "set-cpufreq-cppc", cppc_set_func }, { "set-scaling-maxfreq", scaling_max_freq_func }, { "set-scaling-minfreq", scaling_min_freq_func }, { "set-scaling-governor", scaling_governor_func }, -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Wed Jun 14 18:09:30 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 18:09:30 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549177.857598 (Exim 4.92) (envelope-from ) id 1q9Uvv-0004hS-Mm; Wed, 14 Jun 2023 18:09:27 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549177.857598; Wed, 14 Jun 2023 18:09:27 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9Uvv-0004hJ-K2; Wed, 14 Jun 2023 18:09:27 +0000 Received: by outflank-mailman (input) for mailman id 549177; Wed, 14 Jun 2023 18:09:25 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9Uqb-0005LA-IL for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 18:03:57 +0000 Received: from mail-qv1-xf33.google.com (mail-qv1-xf33.google.com [2607:f8b0:4864:20::f33]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id d478b45e-0add-11ee-b232-6b7b168915f2; Wed, 14 Jun 2023 20:03:57 +0200 (CEST) Received: by mail-qv1-xf33.google.com with SMTP id 6a1803df08f44-62df5fbb186so16921436d6.1 for ; Wed, 14 Jun 2023 11:03:57 -0700 (PDT) Received: from pm2-ws13.praxislan02.com ([2001:470:8:67e:ba27:ebff:fee8:ce27]) by smtp.gmail.com with ESMTPSA id s5-20020a05621412c500b006262de12a8csm4851613qvv.65.2023.06.14.11.03.54 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 14 Jun 2023 11:03:54 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: d478b45e-0add-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686765835; x=1689357835; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=vAh4UqPFdXosdcswDrRJWUQizeR7RUgorIbVDVeVJRs=; b=X+HlpS06rAtgVCWY0crtm+qx5JIids4vI3b6kS1cielwi9+1KHwe8ZAW7NtcW1Z4dJ xunVSd5e+wrLJ/PVIloMK9NEOtmpqgQc7Tpd4RZMRndpZo71t1uPhD5gECa5aNILl8td 8DwsZ3wa6NMUFTKC1DbUoyU5VXRLm7uIRTBu0feXqtgmXe1pn4bKJDXe8tBjm5opRq6p ifZV5Ljavi/jaXHW47l9Y8PBDtLroLi24LXzi5VUoirojILRHnBli8L3Xryafz7Y6mYl BeTK84ZRr9521JAOZ2i6l4vS01DiBYRXdrkRY2ynvtg9r5tTKgIwM7izEjDbOKRywIAs kd8Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686765835; x=1689357835; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=vAh4UqPFdXosdcswDrRJWUQizeR7RUgorIbVDVeVJRs=; b=QTgQ6viuMpTnmCp7J3TQCmu1V4TE2QV6pphYnj7RnIeIDXHh4V4qmpPrvObAMeEOEH xddo5J376fpznFIlnuGLCLDb0OWALJ2AHPUrofxHw9dH3iKElKDJqoddfgxSS01kQIkA EtsqFjME21uSrxXeYf8fzyoW6hXdEEyn+NQboy4vYNEk+k3KDpgOc4RJHcJMFdRQsUWn rc7zZH8/cYX8kvHV15JiywbK0X2Ey/A4T0OqdhQxG0AFgh1XY/eM0f0taoTfwPBJtN9I bkzL8O6xCHJhlfsRiZ6sct221L1Q4yXxKdslCDMhVO8BlauSreS1b5WR+AuHvVLM2vEJ syrA== X-Gm-Message-State: AC+VfDwjLIwbieqYXjbGKslUdsyMMb66jRP2IAxmzrnLoba2VZ6G1jip nFDL/uwkdUcTQEsrW5RQYtn1BjQTK3k= X-Google-Smtp-Source: ACHHUZ4u4u7yyWfrVT40b45uaJ1E5n895mmSlLtzhbqTU3eM3yEL4zsg9xAWfESP7KfaFvF61oAkvA== X-Received: by 2002:a05:6214:daa:b0:62d:f8e7:3047 with SMTP id h10-20020a0562140daa00b0062df8e73047mr6018004qvh.55.1686765835302; Wed, 14 Jun 2023 11:03:55 -0700 (PDT) From: Jason Andryuk To: xen-devel@lists.xenproject.org Cc: Jason Andryuk , Wei Liu , Anthony PERARD , Juergen Gross Subject: [PATCH v4 10/15] libxc: Include cppc_para in definitions Date: Wed, 14 Jun 2023 14:02:48 -0400 Message-Id: <20230614180253.89958-11-jandryuk@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230614180253.89958-1-jandryuk@gmail.com> References: <20230614180253.89958-1-jandryuk@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Expose the cppc_para fields through libxc. Signed-off-by: Jason Andryuk Acked-by: Anthony PERARD --- v4: Rename hwp to cppc Add Anthony's Ack --- tools/include/xenctrl.h | 2 ++ 1 file changed, 2 insertions(+) diff --git a/tools/include/xenctrl.h b/tools/include/xenctrl.h index 8aedb952a0..2092632296 100644 --- a/tools/include/xenctrl.h +++ b/tools/include/xenctrl.h @@ -1892,6 +1892,7 @@ int xc_smt_disable(xc_interface *xch); */ typedef struct xen_userspace xc_userspace_t; typedef struct xen_ondemand xc_ondemand_t; +typedef struct xen_cppc_para xc_cppc_para_t; struct xc_get_cpufreq_para { /* IN/OUT variable */ @@ -1923,6 +1924,7 @@ struct xc_get_cpufreq_para { xc_ondemand_t ondemand; } u; } s; + xc_cppc_para_t cppc_para; } u; int32_t turbo_enabled; -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Wed Jun 14 18:09:30 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 18:09:30 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549175.857588 (Exim 4.92) (envelope-from ) id 1q9Uvu-0004SQ-Ha; Wed, 14 Jun 2023 18:09:26 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549175.857588; Wed, 14 Jun 2023 18:09:26 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9Uvu-0004SB-DO; Wed, 14 Jun 2023 18:09:26 +0000 Received: by outflank-mailman (input) for mailman id 549175; Wed, 14 Jun 2023 18:09:25 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9Uqi-0005LA-Hm for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 18:04:04 +0000 Received: from mail-qv1-xf2a.google.com (mail-qv1-xf2a.google.com [2607:f8b0:4864:20::f2a]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id d8ae584a-0add-11ee-b232-6b7b168915f2; Wed, 14 Jun 2023 20:04:04 +0200 (CEST) Received: by mail-qv1-xf2a.google.com with SMTP id 6a1803df08f44-5ed99ebe076so20969846d6.2 for ; Wed, 14 Jun 2023 11:04:04 -0700 (PDT) Received: from pm2-ws13.praxislan02.com ([2001:470:8:67e:ba27:ebff:fee8:ce27]) by smtp.gmail.com with ESMTPSA id s5-20020a05621412c500b006262de12a8csm4851613qvv.65.2023.06.14.11.04.01 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 14 Jun 2023 11:04:01 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: d8ae584a-0add-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686765842; x=1689357842; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=XCeW0dYT+v8QEPZf3DSgLima7EAFRRshc9U3zxruA5E=; b=ioef9NoqNOhWXzDGhf07TsMCIL+/ArZDW82lXoz5o44kk+HsZ44H7MENnzkDPj/7+g PdclA63C4YtxigRpv5fjwKmEZXwkOtJ4mB0REgQI3lDtKLAUhM2YfOLahLWTPEadTGoP kqVyA43mGoFGz/6gqVESnZiBS7fAS6yFaWLsZmpEQyfmU+dmgs9Rf4qCpgS8Uyv1qb0m Y+Fw7S661t8TCupEDlE9ODvV04zreWC5zul5PfgiRWVZvRpQCF6XXwpC82UD2To+1K5I wA6Bl9dhAw43WhmOBc3nNLP5SQ+8J5wLM7uFAQwdoa2f8LWAnfiwYYzIMk2UxpHx3d7C FQ9w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686765842; x=1689357842; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=XCeW0dYT+v8QEPZf3DSgLima7EAFRRshc9U3zxruA5E=; b=QOH79vRZZ9kW7m83aL/7nAnaB+Kz5g9lY+Z3T1z4fxP9F5vcPTU45Q+GwTvk5im9Mc W813//hANWz4bEdPdAl9Ltq0CsRV8lqYlVmz7V4wmXfGwYfRUqKPG02iAsrD3VmnlcPt QWKkRc/PgsSi7amNmw9Wl1XoSrEI74n1zad9RuqCgFTHv2RWTScMjCFG4CWDUDtJCB/J QA8jQlTN+YzpJpKhnhqZtg1rjPzqEqZgy0nn9QYRlT1VMqQ4ae6DMPUuMP/4INJdTgqV 3VUTScyCP2sT5SEfEb//RLVhtMN0ptQDPUYlvAzS1xOWNfGTGyNBRMz5IgVXqbiaW03N 6a+g== X-Gm-Message-State: AC+VfDyolF4vCEad//wpcYb4AmVsJUKSXqRKTCYBQMN/iGdwyXyhoIfF XGAbq9nSIgdVzf3dMjq2RRwRp77dVVw= X-Google-Smtp-Source: ACHHUZ5n3c7JJqP1H1zg8yJ4E2XIk4P1BXCK8CNzYiAoIkAiTzgx0S4MhLraMwl1ofebkDHWX4xUEA== X-Received: by 2002:ad4:5de3:0:b0:62f:ea09:7088 with SMTP id jn3-20020ad45de3000000b0062fea097088mr1194311qvb.27.1686765842395; Wed, 14 Jun 2023 11:04:02 -0700 (PDT) From: Jason Andryuk To: xen-devel@lists.xenproject.org Cc: Jason Andryuk , Wei Liu , Anthony PERARD , Juergen Gross Subject: [PATCH v4 13/15] libxc: Add xc_set_cpufreq_cppc Date: Wed, 14 Jun 2023 14:02:51 -0400 Message-Id: <20230614180253.89958-14-jandryuk@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230614180253.89958-1-jandryuk@gmail.com> References: <20230614180253.89958-1-jandryuk@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Add xc_set_cpufreq_cppc to allow calling xen_systctl_pm_op SET_CPUFREQ_CPPC. Signed-off-by: Jason Andryuk Acked-by: Anthony PERARD --- v2: Mark xc_set_hwp_para_t const v4: s/hwp/cppc/ Add Anthony's Ack --- tools/include/xenctrl.h | 4 ++++ tools/libs/ctrl/xc_pm.c | 18 ++++++++++++++++++ 2 files changed, 22 insertions(+) diff --git a/tools/include/xenctrl.h b/tools/include/xenctrl.h index 2092632296..c7eb97959a 100644 --- a/tools/include/xenctrl.h +++ b/tools/include/xenctrl.h @@ -1930,11 +1930,15 @@ struct xc_get_cpufreq_para { int32_t turbo_enabled; }; +typedef struct xen_set_cppc_para xc_set_cppc_para_t; + int xc_get_cpufreq_para(xc_interface *xch, int cpuid, struct xc_get_cpufreq_para *user_para); int xc_set_cpufreq_gov(xc_interface *xch, int cpuid, char *govname); int xc_set_cpufreq_para(xc_interface *xch, int cpuid, int ctrl_type, int ctrl_value); +int xc_set_cpufreq_cppc(xc_interface *xch, int cpuid, + const xc_set_cppc_para_t *set_cppc); int xc_get_cpufreq_avgfreq(xc_interface *xch, int cpuid, int *avg_freq); int xc_set_sched_opt_smt(xc_interface *xch, uint32_t value); diff --git a/tools/libs/ctrl/xc_pm.c b/tools/libs/ctrl/xc_pm.c index 19fe1a79dd..e86045697d 100644 --- a/tools/libs/ctrl/xc_pm.c +++ b/tools/libs/ctrl/xc_pm.c @@ -329,6 +329,24 @@ int xc_set_cpufreq_para(xc_interface *xch, int cpuid, return xc_sysctl(xch, &sysctl); } +int xc_set_cpufreq_cppc(xc_interface *xch, int cpuid, + const xc_set_cppc_para_t *set_cppc) +{ + DECLARE_SYSCTL; + + if ( !xch ) + { + errno = EINVAL; + return -1; + } + sysctl.cmd = XEN_SYSCTL_pm_op; + sysctl.u.pm_op.cmd = SET_CPUFREQ_CPPC; + sysctl.u.pm_op.cpuid = cpuid; + sysctl.u.pm_op.u.set_cppc = *set_cppc; + + return xc_sysctl(xch, &sysctl); +} + int xc_get_cpufreq_avgfreq(xc_interface *xch, int cpuid, int *avg_freq) { int ret = 0; -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Wed Jun 14 18:09:36 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 18:09:36 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549192.857608 (Exim 4.92) (envelope-from ) id 1q9Uw3-00053r-W3; Wed, 14 Jun 2023 18:09:35 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549192.857608; Wed, 14 Jun 2023 18:09:35 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9Uw3-00053k-S8; Wed, 14 Jun 2023 18:09:35 +0000 Received: by outflank-mailman (input) for mailman id 549192; Wed, 14 Jun 2023 18:09:35 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9Uqn-0005LA-IT for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 18:04:09 +0000 Received: from mail-qv1-xf35.google.com (mail-qv1-xf35.google.com [2607:f8b0:4864:20::f35]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id db60b4f6-0add-11ee-b232-6b7b168915f2; Wed, 14 Jun 2023 20:04:08 +0200 (CEST) Received: by mail-qv1-xf35.google.com with SMTP id 6a1803df08f44-62fe188255eso5285766d6.0 for ; Wed, 14 Jun 2023 11:04:08 -0700 (PDT) Received: from pm2-ws13.praxislan02.com ([2001:470:8:67e:ba27:ebff:fee8:ce27]) by smtp.gmail.com with ESMTPSA id s5-20020a05621412c500b006262de12a8csm4851613qvv.65.2023.06.14.11.04.06 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 14 Jun 2023 11:04:06 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: db60b4f6-0add-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686765847; x=1689357847; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=AXCdosE1xzkZrcu7sJ9kEjSlEgbAAlcqZ3LQutJHGBw=; b=JK5vcixb8Wt41QBAZT/fOy/v5bOsxStCpDCeZkSiQ8PB6fNvhaRF7NiKjBtYrfUOoR YCNpam/Zb0PPQ8iRsGPUpawZ2URLSYcBIjxA3MPP3DNCGsxwvFJuaGCyrNECYN7BU32j hmTtrMmB6y6tswrR737I0CPEaL5T85eglImsljaxHHW2KjcFVLC2Z6GXcvC3wXIcNkn3 JBHtcr9W0TlWXh2nbgrLD1gegF0/BVptSf/eSPWcSEt4c1iqHrBSjFpEXPolSNbanyU1 RTHUKgOJS8N0iFj2LKzAxMKwmwoM9XrhSioFRtl+60uYO8zNMZ764S0hhzWHZfdkbdJd XW0g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686765847; x=1689357847; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=AXCdosE1xzkZrcu7sJ9kEjSlEgbAAlcqZ3LQutJHGBw=; b=MS+VH31r5vnoifUKzF3RpdWbOSzL6MN1fV53PhCXg9msFTQOOqEg44uiVNQ2ZZwT0K f1yLLa4BtzSSliZQ7YafE05jqlUpbJWrAZ2zhR6nIsrSTsygzEsaitQsMS3yBdlIRIci 0zZRxYdvTJ8RuvpKsn9JcSRmKV6YYeGnyg3EO+BuInhz4A+tDVVFdcP3SfgN2G9Ccb6q 1j4YuVgoz3S7MtBe9Abn+5C5zhcFvyyS4HDQQaFVcUwwXl3exzplV0AbTP84AK4pfe9N yGnqEMgZuxBHs0ovQoKEkz1gEOZe69Ae6PeVl2+d7wwGWHiVsXl6EyAb3OGTVJDNRiQg 4n1A== X-Gm-Message-State: AC+VfDxGJLGk2psHqR0AIiH9FJVLA3iPWVqL/+z8d2253wV5yReOliC6 gsD5Km5Cj5g3S/valWToORNWIFfSkXE= X-Google-Smtp-Source: ACHHUZ46Tf7BnAy/jyT3co960LbUrB7XqzZxSw0x0mXK2jOrH69DJNsDWu7WWv6LxF6h+BEQn0xopw== X-Received: by 2002:a05:6214:27ee:b0:62d:ed66:7ad1 with SMTP id jt14-20020a05621427ee00b0062ded667ad1mr2251672qvb.28.1686765846844; Wed, 14 Jun 2023 11:04:06 -0700 (PDT) From: Jason Andryuk To: xen-devel@lists.xenproject.org Cc: Jason Andryuk , Henry Wang , Community Manager Subject: [PATCH v4 15/15] CHANGELOG: Add Intel HWP entry Date: Wed, 14 Jun 2023 14:02:53 -0400 Message-Id: <20230614180253.89958-16-jandryuk@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230614180253.89958-1-jandryuk@gmail.com> References: <20230614180253.89958-1-jandryuk@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Signed-off-by: Jason Andryuk Acked-by: Henry Wang --- v3: Position under existing Added section Add Henry's Ack v2: Add blank line --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 7d7e0590f8..8d6e6c3088 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -24,7 +24,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) - xl/libxl can customize SMBIOS strings for HVM guests. - Add support for AVX512-FP16 on x86. - On Arm, Xen supports guests running SVE/SVE2 instructions. (Tech Preview) - + - Add Intel Hardware P-States (HWP) cpufreq driver. ## [4.17.0](https://xenbits.xen.org/gitweb/?p=xen.git;a=shortlog;h=RELEASE-4.17.0) - 2022-12-12 -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Wed Jun 14 18:12:25 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 18:12:25 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549208.857618 (Exim 4.92) (envelope-from ) id 1q9Uyk-0006zr-Ej; Wed, 14 Jun 2023 18:12:22 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549208.857618; Wed, 14 Jun 2023 18:12:22 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9Uyk-0006zk-BM; Wed, 14 Jun 2023 18:12:22 +0000 Received: by outflank-mailman (input) for mailman id 549208; Wed, 14 Jun 2023 18:12:21 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9Uyj-0006ze-IX for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 18:12:21 +0000 Received: from esa1.hc3370-68.iphmx.com (esa1.hc3370-68.iphmx.com [216.71.145.142]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id ffc54890-0ade-11ee-b232-6b7b168915f2; Wed, 14 Jun 2023 20:12:19 +0200 (CEST) Received: from mail-dm6nam04lp2047.outbound.protection.outlook.com (HELO NAM04-DM6-obe.outbound.protection.outlook.com) ([104.47.73.47]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 14 Jun 2023 14:12:17 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by DM6PR03MB5020.namprd03.prod.outlook.com (2603:10b6:5:1e8::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.29; Wed, 14 Jun 2023 18:12:15 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606%4]) with mapi id 15.20.6477.037; Wed, 14 Jun 2023 18:12:14 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: ffc54890-0ade-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686766339; h=message-id:date:from:subject:to:cc:references: in-reply-to:content-transfer-encoding:mime-version; bh=fKKNfStN8rZ0/YG19xlj/3SmaOuMzI8FBOOKilA0tfo=; b=cH+LtzL7j7I/772syAF2pUgXeotFsWyNHn1ai8b2sJiYVyb7fsZY0s66 kKC61JHc2YHJ7+cj9vIHGm6EpC5HPGuCnjkB68+gWjRYFY5gLr4yRZRNa 2/OhHvY677hbI5C65oKVR/39JulDyfiA28pNF5qCfrpe3o66i1+kzrBIC E=; X-IronPort-RemoteIP: 104.47.73.47 X-IronPort-MID: 113225193 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:ohgPdqv5aRPDCOSGfcedmHdZz+fnVHRfMUV32f8akzHdYApBsoF/q tZmKTyPaanfMGL8eo11bti29xkEu5XTm9RkHgM/+SBhEiIa+JbJXdiXEBz9bniYRiHhoOCLz O1FM4Wdc5pkJpP4jk3wWlQ0hSAkjclkfpKlVKiffHg3HVQ+IMsYoUoLs/YjhYJ1isSODQqIu Nfjy+XSI1bg0DNvWo4uw/vrRChH4rKq4Fv0gnRkPaoQ5AGHyyFPZH4iDfrZw0XQE9E88tGSH 44v/JnhlkvF8hEkDM+Sk7qTWiXmlZaLYGBiIlIPM0STqkAqSh4ai87XB9JFAatjsB2bnsgZ9 Tl4ncfYpTHFnEH7sL91vxFwS0mSNEDdkVPNCSDXXce7lyUqf5ZwqhnH4Y5f0YAwo45K7W9yG fMwGD8UUTCTrs+Nzo2rEeVttPsJCJTvM9ZK0p1g5Wmx4fcOZ7nmG/mPyfoGmTA6i4ZJAOrUY NcfZXx3dhPcbhZTO1ARTpUjgOOvgXq5eDpdwL6XjfNvvy6Pk0oui/6xb7I5efTTLSlRtm+eq njL4CLSBRYCOcbE4TGE7mitlqnEmiaTtIc6TeTjrKQ32QzIroAVIBEHbwCnqufhsWWZXfR4J hMkqio2/bdnoSRHSfG4BXVUukWsvBQRRt5RGO0S8xyWx+zf5APxLncAZi5MbpohrsBebSwn0 BqFks3kARRrsaaJUjSN+7GMtzSwNCMJa2gYakc5oRAt5tDipMQ/i0zJR9M7TKqt1IWpRnf33 iyAqzU4i/MLl8kX2q6n/FfBxTWxupzOSQ1z7QLSNo640j5EiEeeT9TAwTDmATxode51knHpU KA4pvWj IronPort-HdrOrdr: A9a23:o7//c6NsMSXIpMBcTt6jsMiBIKoaSvp037BL7TESdfUxSKalfq +V98jzuSWZtN9zYgBCpTnjAsi9qBrnnPZICO8qUotKNzOJhILHFuxfBPPZowHdJw== X-Talos-CUID: =?us-ascii?q?9a23=3APx9ivWqxZqGbYUVmZp/dl13mUfAqa0L93F79GEG?= =?us-ascii?q?HGT1lSY+qY3vN/Kwxxg=3D=3D?= X-Talos-MUID: =?us-ascii?q?9a23=3AV2YzTA5jrK9kSOeyZMapE00Yxoxk8p71FEsTya4?= =?us-ascii?q?tnM+iEiEvC2edlGSoF9o=3D?= X-IronPort-AV: E=Sophos;i="6.00,243,1681185600"; d="scan'208";a="113225193" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Iat15Ijn3PZP0I4/hN98J2IG+xI/oTNQEkF0jqrDfGlqKQskCN97YDy65OPccWRJ44BhMF5rZXVGtJavmUK6XOUEUvA5TnH+ENS2OG6wpg9pTvZ/aydokGdu+WOfoKDnFAPah0fswQCO+FJtAPyezkevhwndkht6b22BDCQRqs/XTtmSvHntYL/BeRBX/nOpaheDQ16j4Y3RZ+2xgvKEOKdcqpbaIGY1CvJcFt0kxv1uEIjeZDuy8btyKNGX/B+0kvFXDJ7lgyDXT0z/dJUrKxBuxJPuFG+kLKIdEWEtv1iarJ9lOs2kimNw3ZE+ut7HhfRxseRS9nkyUy4noAKudQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=q8lBetZ2vR+N1A6WS3cRCmk8npyX1ISr5Xyjh7/4okY=; b=RQp303oRKnk2thTjFgERp3pzKCSgg06RNL4SCMup+AkwMHbo6iaJoDeB1Lku6LhXQgjFAGxc9MW0+3YePeUT1OkO0fBgshV+3GyXXEehMwk7BQMXgh4w/to0PJQ/0vwQ3R25uGF6nck8bWCSqG9l7RcwvHZnuNOyFLFmF01PlflwNUSi5LqSVAjSlCxwUo2QoKzR/jUmzxprvm83FTyoZmzn8bfvumlqay+8rtv621FNWWpPc3ao9ft+UfVGbQ84lrH/Yt8BFgdH2O2TwJdSMtA+4joj3PzVuQ/JITmlEZEpQL8q6Gs195enXa0jLHm9Lvd/Pd3Tcfg5DyB8O3EasA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=q8lBetZ2vR+N1A6WS3cRCmk8npyX1ISr5Xyjh7/4okY=; b=UC8guKWPVzH9jLOMi3LdYva0XIySlO9IcgcFtzsegaDIuSpcBF+cctXs2wtOk7Cg2LMWNwHilYh/EG76FAxDA5huyK4VFKV8fmljfVk2Za8IQz6SmHpqg4MMPdG9vRgjqMA4qJbwdCnr95zyLYgyNN+WhykubxCBxLS9FdVz5kI= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: <386058fe-e9a8-d0e1-c3a0-3f15a4585bd5@citrix.com> Date: Wed, 14 Jun 2023 19:12:09 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 From: Andrew Cooper Subject: Re: [PATCH v3 4/4] x86/cpu-policy: Derive RSBA/RRSBA for guest policies Content-Language: en-GB To: Jan Beulich Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , Xen-devel References: <20230612161306.2739572-1-andrew.cooper3@citrix.com> <20230612161306.2739572-5-andrew.cooper3@citrix.com> <82ee7908-4597-433c-0aca-8c0ad22fff13@suse.com> In-Reply-To: <82ee7908-4597-433c-0aca-8c0ad22fff13@suse.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO4P123CA0663.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:316::10) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|DM6PR03MB5020:EE_ X-MS-Office365-Filtering-Correlation-Id: bcbb9ddf-6bc3-4ca6-b144-08db6d02e18e X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: W7okn8+OgRAOLcaz32R0K+bS5PflS7AxGEoQUKc4EKcKIY/LgtIfJ9q1PnsBI/lKuX9J5wav9HnQtOcIqMdqx2zPjheuKisaPiU7XKBkeFWYfPntIwQi8fsAXegSuy7KBCk2EQ4SxVizARF1nQdRGD6/gHg+HD+/+h6ppnSCGcpx5W2yU+XTmrB7Rv7ATLKKSAzpnKUdNjmOZ53uQBA8tJKlQ5SwJcpfDKUkh6vrSDFnQpl+kXJHFx1L+7ffwA/vhwwb49GHEuX1sLTj5Pf8zogh7eh+apMBwUtsIzlNQUeMbaGkwJH99y/vJkl0WY4SJ3Ew+50Wh2lefYoju1w9dfG7ePdH+J13d7tSRXC0cNuLIUDt0RytKmqZUAulVo6VdSLmzHXGCwYGVFZYRVmQZQsO0QjvwvQxhcdysQnImHftl+b9ZLwBoiMh4CpJwxzBHloTjvJzkisSAiz6poYxqCEZ/N1CL2h6643/vF0NZSv4d/rpbPHJ75NqUY+vXiFXNJmN9HxBNq23GSqNS9xYz8/bEPLYLJZLqK5HBisrcRnEAgKKbeAi82bTEh88Er++uWwTCpKur5E5ImG/V99WmeOWvqIpvjoIL/lktPVsd0mhwjDDdwLSyNKdVfiMTC/HrXPVRrukTINgUkZlVaozOQ== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(376002)(346002)(396003)(366004)(39860400002)(136003)(451199021)(86362001)(31696002)(6486002)(8676002)(41300700001)(316002)(83380400001)(26005)(82960400001)(5660300002)(6512007)(38100700002)(53546011)(6666004)(6506007)(8936002)(66476007)(66556008)(36756003)(54906003)(4326008)(66946007)(478600001)(186003)(6916009)(31686004)(2906002)(2616005)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?OXVjSXJjNTFtTVA5LzJ0Qm0vZ3UwZHJjZ2J0anFDT29Xc1ZWQ0NObEdvNm5m?= =?utf-8?B?UGtaRkhtS2ZXYThzNGh3M0NGdGdQek01cjRZOXNObGo5T05xbk1FNXlGaDZm?= =?utf-8?B?cXBDbGxHN0Y1b3FUWVdhdlV1WlVrMmhDR0EyT0Q3aEd2SGlOSnBaREJBeUE0?= =?utf-8?B?OCtucURIeVhSb3ZJK1gxbUxSSFlBNURtMVk2aUdNOFg3dGZZSEQwUm5pd2Z2?= =?utf-8?B?aVZaa1UrMEtLNks3R0t0WUNDMHFZU2tITEROVDFqcGhKV2tyR3czdVlvblRT?= =?utf-8?B?RnM4YmlHWEQrd1pkZld2MnpEWVVKYldCWTRHc2hxclpmZ3hZRVZTQTJnWEVt?= =?utf-8?B?OGRhYXREd2cxYWgvMTdkM0hPTkZkMTBLRHBmUktQRFhYN3JIUWd4d3loYWZV?= =?utf-8?B?UnYxZmdZeDBRTzVNcWZFS29iRG80Zm04azdIV2dyWEdNaUxZRzYzd2NLdVBz?= =?utf-8?B?R3VGd3ZmeVNtOEFMaUREWjZldG5Cd1BUWm4zd0RNUjFDYlQ5dVR6U0l5V0pC?= =?utf-8?B?Z3RXeERLakFnWFk0UmFrT28zZGpyRFNYeDFvSE8zTDhQb0xGSnRoQ01uRS9o?= =?utf-8?B?M0dNK0ZBS1lwTXNoNlViVytBZDB6N0hHRStNRDFGdFNGQ0ZFL1hneXFoSlox?= =?utf-8?B?OUhMMkhqYkJic013V3J1a0xoMFA4NVRhTkoxNTNhZ3M5N2g4Wjcva2Nyb0RT?= =?utf-8?B?L3lXaWxSeGVsdFI2Y0haSUpsQk1KMlBqVElyUmtyUzlZN3RXbEVhdUlLd0Rk?= =?utf-8?B?SzRpRlFUSW1yVDVRMkhCZFBqMkMwbjg2M3UxTXBKeHZyd1grc1E0RWc0VFFW?= =?utf-8?B?Vytaa0x6RHY5Ny9QY2hzMHhGdWQxRG50TzU3dGNvaWR6a004a1pnMkdYQnov?= =?utf-8?B?UUQ4OFRxc3o5TllSQUZlTjZodXdmZW9SaThlUUw0Q0ZYUWVPMXRGOEFGYUpL?= =?utf-8?B?NVJSaGgvUWp3ZE92bEU1SmsxeXp1ZVQzZGNJeFJjc2hPYy8xVStvMDN5YXBG?= =?utf-8?B?VDFJMElIWkNaMzZBM1NySXdvalE5S3RQZTlHUVQ0dU9uNmU5VkE3UlY1WFB5?= =?utf-8?B?TXZMZWgvejREZC9VK2NMeE9KaDgyVEw1T08vRDBBZ3BGUWozRFFtN0JBTzEx?= =?utf-8?B?SWRrcWlLUjdVRmFGcXJ4a0VXbTdTRjkxZDIwSnRQYk1ucFdNWlRwS0pBdEcr?= =?utf-8?B?TWV3clFCMU9MZzVFbUVreW1QckRYZGtGQVBRT2hmc2ZBdS9IdHJwUW9uOHln?= =?utf-8?B?S01sdDh0Yk9KMkVyS3N4VnIxK0lDOTB6MkVqSHcvWDBmQVFWUGl2Y0ZUY09S?= =?utf-8?B?WTBCcjdGREF5cnhGbTFRNHBVQmFxSUo2dVVQVXc0RzlkcFFROGlmQ1lrNUFr?= =?utf-8?B?Y0FXMm9JdDh3K29VVzJHSnZMWTE0bzNzMSs2bWZHYm5TWTRGT3M3dVFjU2hK?= =?utf-8?B?eWtackd6ejdxV0hwbGhKRTFPeUZwOUxlWGZDdjZiRFlrNDhoMzVNU3RUa0Ux?= =?utf-8?B?QmRkWlFnMnFGYVBXL1NoRmgrazhzQUtScEZHaDlQTlpKLzc1TEhwRmQ3MXFy?= =?utf-8?B?VTVjNVl1alZnL0tvaGVvaWZsYkc4WW45TStlM2xCY3pRcUZxY0ovYVI5eFhp?= =?utf-8?B?VkQvYklTdm1vQzVmY3VsR0ZGdGZKOVcwM1UzSzhxVzdzUW4wMElFRGE1K2dx?= =?utf-8?B?VUFDYVBJbk1WWFpaM3k0eENOaTNKUUMzOGVQb2plbFBBNVY1YlBRVWEyZUc0?= =?utf-8?B?RTd5VlpFRkt3YUJadFFGeUtWVFcxbWluSlY4M3FhTVM2TnVYRzdPajlOR3ZH?= =?utf-8?B?aHFQbXBxU2ZZQ3UrRlk0TzJzTXFIejRYdnpuME9IME4yRXNRRDJjbWNqMkpi?= =?utf-8?B?UUdpWWVsKzVZYzR3ckdZTU52RGxCdTJUS3c3Z3E5T08wMUpvK2xNK3BnR3Fi?= =?utf-8?B?cVA5YkhKd3crVGpoMDZtSEZ4Ri80OHlIRUFhZndadjlOR1QxT1E1ZXRiQVFH?= =?utf-8?B?VjUrcit2TjlvR3ZQUWkvZ2pPR01RWTZEckRaNTFYMlpPRm9YN3MwL3ZnTXZm?= =?utf-8?B?amNmQkNOTE1KbHlINmdwRjd3Y2prZktrK28xdVFhQzh1WTNET0dWM0lOS2hR?= =?utf-8?B?U2Y2UnhBRDdjd3oyVTZmQ1N2SHkrZ1VHWjVOakNVRmFWb0ZSa3dwZFVYN1Jv?= =?utf-8?B?UFE9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: nAZ6JPWKOmKBzTWdf5yu+ejTz1tSEqgeZrU9csIlv8HIkzkVaR55iq1F5DmlP82gHLmMa9jI99OmK4/HbfAYCDN4bb3ce8EeqdGCmDt4oU4E+Oz+ZybGh2a7qNewm8P//NEfojyIoorWiIaYPTIg7l1++b7Whh0Pj3ubA66LfKA3lAon9hsZUGtoxOJ95jci+F/2aHidogYxq9N/1+9uzY1+WswVnGjvOzIF0Wrqi5iriUfH1ZGwXPKgsbs+EEZi7fYjH+9tikka860Dji67lEs6LX7fYUt1OhBtbESfNpBAu2NH3UI/QkQO3OpV6YOCYe0ku8EdRNFAaxzJIQJBi2TnLP0+TSyldFgUCr96FU+yxVaxfzVtCVFSvmm74IO7ZU5fO0Em7bl/92TJnUzc5qiYFEe4CoUoCMdPj6KfqoR1FSpwyiShZdpwcfKwRXr8aY1LBjpZyVJ0j1WRDpLKDTORRbHKt92DYKbYA39owXvmo7mGrr4dcTDrvfncPytyqAu7H53FTA210MdEMs2l9oi+4vfjKT0ZQO/wlyb1uhMH1w8kBxK4hnlL9egSmHTQXriURvKn3sKmYHNFYFAPKkmVNErWTOnHkZ68fUIlZU+b1xPHxWnoNgC2A6fRCbNQdMBvyjdud1yf88/TOixrjnGyYWkv/ATXlgapKxeZdv9h9+vOaPe40LbsboitQAYPxLQ8wRYC7/dcX2orz0GaAxDudsqiYcCyg86uxXHGfLLBTguH47BwP0C+mNi48l9jjRQGH9AlSfW/gnY+qXI5IXVFyeHlgNNjndlq0/aCGaIH6TdfHP61xta0SoJq6fIi X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: bcbb9ddf-6bc3-4ca6-b144-08db6d02e18e X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Jun 2023 18:12:14.7537 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: qO31ap5uqrVjYGvwG3+aotO+IAhar5OMWe5EFFr/7Bz1eyDe5eClEnGMYJgYB77ggNvnxvkfzMDSLdqiF0d4PeS08t4W1c4IgXTB/gozmIo= X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR03MB5020 On 13/06/2023 10:59 am, Jan Beulich wrote: > On 12.06.2023 18:13, Andrew Cooper wrote: >> The RSBA bit, "RSB Alternative", means that the RSB may use alternative >> predictors when empty. From a practical point of view, this mean "Retpoline >> not safe". >> >> Enhanced IBRS (officially IBRS_ALL in Intel's docs, previously IBRS_ATT) is a >> statement that IBRS is implemented in hardware (as opposed to the form >> retrofitted to existing CPUs in microcode). >> >> The RRSBA bit, "Restricted-RSBA", is a combination of RSBA, and the eIBRS >> property that predictions are tagged with the mode in which they were learnt. >> Therefore, it means "when eIBRS is active, the RSB may fall back to >> alternative predictors but restricted to the current prediction mode". As >> such, it's stronger statement than RSBA, but still means "Retpoline not safe". >> >> CPUs are not expected to enumerate both RSBA and RRSBA. >> >> Add feature dependencies for EIBRS and RRSBA. While technically they're not >> linked, absolutely nothing good can come of letting the guest see RRSBA >> without EIBRS. Nor a guest seeing EIBRS without IBRSB. Furthermore, we use >> this dependency to simplify the max derivation logic. >> >> The max policies gets RSBA and RRSBA unconditionally set (with the EIBRS >> dependency maybe hiding RRSBA). We can run any VM, even if it has been told >> "somewhere you might run, Retpoline isn't safe". >> >> The default policies are more complicated. A guest shouldn't see both bits, >> but it needs to see one if the current host suffers from any form of RSBA, and >> which bit it needs to see depends on whether eIBRS is visible or not. >> Therefore, the calculation must be performed after sanitise_featureset(). >> >> Signed-off-by: Andrew Cooper >> --- >> CC: Jan Beulich >> CC: Roger Pau Monné >> CC: Wei Liu >> >> v3: >> * Minor commit message adjustment. >> * Drop changes to recalculate_cpuid_policy(). Deferred to a later series. > With this dropped, with the title not saying "max/default", and with > the description also not mentioning "live" policies at all, I don't > think this patch is self-consistent (meaning in particular: leaving > aside the fact that there's no way right now to requests e.g. both > RSBA and RRSBA for a guest; aiui it is possible for Dom0). > > As you may imagine I'm also curious why you decided to drop this. Because when I tried doing levelling in Xapi, I remembered why I did it the way I did in v1, and why the v2 way was wrong. Xen cannot safely edit what the toolstack provides, so must not.  Instead, failing the set_policy() call is an option, and is what we want to do longterm, but also happens to be wrong too in this case. An admin may know that a VM isn't using retpoline, and may need to migrate it anyway for a number of reasons, so any safety checks need to be in the toolstack, and need to be overrideable with something like --force. I don't really associate "derive policies" with anything other than the system policies.  Domain construction isn't any kind of derivation - it's simply doing what the toolstack asks. ~Andrew From xen-devel-bounces@lists.xenproject.org Wed Jun 14 19:49:40 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 19:49:40 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549216.857631 (Exim 4.92) (envelope-from ) id 1q9WUb-0007vB-Mu; Wed, 14 Jun 2023 19:49:21 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549216.857631; Wed, 14 Jun 2023 19:49:21 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9WUb-0007v4-Jh; Wed, 14 Jun 2023 19:49:21 +0000 Received: by outflank-mailman (input) for mailman id 549216; Wed, 14 Jun 2023 19:49:20 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9WUa-0007uu-Bv; Wed, 14 Jun 2023 19:49:20 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9WUa-0004Oa-7Q; Wed, 14 Jun 2023 19:49:20 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9WUZ-0005Qb-Co; Wed, 14 Jun 2023 19:49:19 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q9WUZ-0000U6-CM; Wed, 14 Jun 2023 19:49:19 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=R2Nnqbe1ZbB8oioHn863qr+nvUByINBxfe/9TJ5WZ+0=; b=cE1b37W/p6zsEgZyLIrQ9MIsxP 1XQj6DqnaOpYltB6sA7Iu1M4CRrwTDtDFy317hkvY0JKbzh6utkwmG1hH/H6fwPVADTCeILt88gLR hx16DqcPdj85eiNpGGrwf9C5G9ZvLOR91ypmPdpNoBeTQ7JeoPY9QyhjM10jZ10DjM7Q=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [linux-5.4 test] 181425: regressions - FAIL X-Osstest-Failures: linux-5.4:build-amd64-pvops:kernel-build:fail:regression linux-5.4:test-amd64-coresched-amd64-xl:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-xsm:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-shadow:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-rtds:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qemut-ws16-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qemut-win7-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qemut-debianhvm-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qcow2:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-dom0pvh-xl-amd:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-pvshim:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-dom0pvh-xl-intel:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-pvhv2-intel:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-examine:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-examine-bios:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-examine-uefi:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-pvhv2-amd:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-multivcpu:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-credit2:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-pair:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-credit1:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-pygrub:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-qemuu-freebsd11-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-qemuu-freebsd12-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-qemuu-nested-amd:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-qemuu-nested-intel:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-libvirt-pair:xen-install/dst_host:fail:nonblocking linux-5.4:test-amd64-i386-libvirt-raw:xen-install:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking linux-5.4:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-multivcpu:guest-start/debian.repeat:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking linux-5.4:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking linux-5.4:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: linux=61a2f83e4762ee0c766f86944e612305f5888bcb X-Osstest-Versions-That: linux=f568a20f058fa1e37069cff4aac4187c1650a0e9 From: osstest service owner Date: Wed, 14 Jun 2023 19:49:19 +0000 flight 181425 linux-5.4 real [real] http://logs.test-lab.xenproject.org/osstest/logs/181425/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-amd64-pvops 6 kernel-build fail REGR. vs. 181363 Tests which did not succeed, but are not blocking: test-amd64-coresched-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-shadow 1 build-check(1) blocked n/a test-amd64-amd64-xl-rtds 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemut-ws16-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemut-win7-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemut-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemut-debianhvm-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qcow2 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-amd 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvshim 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-intel 1 build-check(1) blocked n/a test-amd64-amd64-examine 1 build-check(1) blocked n/a test-amd64-amd64-examine-bios 1 build-check(1) blocked n/a test-amd64-amd64-examine-uefi 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-amd 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-pair 1 build-check(1) blocked n/a test-amd64-amd64-xl-multivcpu 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-vhd 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit2 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-amd64-pair 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit1 1 build-check(1) blocked n/a test-amd64-amd64-pygrub 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd11-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd12-amd64 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-intel 1 build-check(1) blocked n/a test-amd64-i386-libvirt-pair 11 xen-install/dst_host fail like 181354 test-amd64-i386-libvirt-raw 7 xen-install fail like 181363 test-armhf-armhf-libvirt 16 saverestore-support-check fail like 181363 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop fail like 181363 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop fail like 181363 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail like 181363 test-armhf-armhf-xl-multivcpu 18 guest-start/debian.repeat fail like 181363 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail like 181363 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop fail like 181363 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop fail like 181363 test-amd64-i386-xl-pvshim 14 guest-start fail never pass test-amd64-i386-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-i386-libvirt 15 migrate-support-check fail never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-armhf-armhf-xl-credit2 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit2 16 saverestore-support-check fail never pass test-armhf-armhf-xl 15 migrate-support-check fail never pass test-armhf-armhf-xl 16 saverestore-support-check fail never pass test-armhf-armhf-xl-multivcpu 15 migrate-support-check fail never pass test-armhf-armhf-xl-multivcpu 16 saverestore-support-check fail never pass test-armhf-armhf-xl-rtds 15 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 16 saverestore-support-check fail never pass test-armhf-armhf-xl-credit1 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass test-armhf-armhf-xl-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 15 saverestore-support-check fail never pass test-armhf-armhf-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 15 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 16 saverestore-support-check fail never pass version targeted for testing: linux 61a2f83e4762ee0c766f86944e612305f5888bcb baseline version: linux f568a20f058fa1e37069cff4aac4187c1650a0e9 Last test of basis 181363 2023-06-10 15:39:59 Z 4 days Testing same since 181425 2023-06-14 10:50:49 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Ai Chao Alan Stern Alex Deucher Alexander Sverdlin Arnd Bergmann Bartosz Golaszewski Ben Hutchings Chia-I Wu Chris Paterson (CIP) David Jander David S. Miller David Sterba Dmitry Torokhov Eric Dumazet Fedor Pchelkin Florian Westphal Greg Kroah-Hartman Guenter Roeck Gustavo A. R. Silva Hangyu Hua Harshit Mogalapalli Ilya Dryomov Ismael Ferreras Morezuelas JaimeLiao Jakub Kicinski Jamal Hadi Salim Jens Axboe Jiri Slaby (SUSE) Jon Hunter Josef Bacik Jozsef Kadlecsik Kuniyuki Iwashima Linus Walleij Linux Kernel Functional Testing Luiz Augusto von Dentz Marc Kleine-Budde Mark Brown Martin Hundebøll Maxime Ripard Michael Chan Min Li Miquel Raynal Oleksij Rempel Pablo Neira Ayuso Paolo Abeni Paulo Alcantara (SUSE) Paulo Alcantara Qingfang DENG Randy Dunlap RenHai Rishabh Bhatnagar Ruihan Li Sasha Levin Shuah Khan Simon Wunderlich Somnath Kotur Stefan Ghinea Stephan Gerhold Steve French Sudip Mukherjee Sungwoo Kim Sven Eckelmann Takashi Iwai Tejun Heo Theodore Ts'o Tijs Van Buggenhout Uwe Kleine-König Ville Syrjälä Vladislav Efanov Wolfram Sang Xiubo Li Ying Hsu YouChing Lin Zixuan Fu jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops fail build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl blocked test-amd64-coresched-amd64-xl blocked test-arm64-arm64-xl pass test-armhf-armhf-xl pass test-amd64-i386-xl pass test-amd64-coresched-i386-xl pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm blocked test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm blocked test-amd64-i386-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-i386-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm blocked test-arm64-arm64-libvirt-xsm pass test-amd64-i386-libvirt-xsm pass test-amd64-amd64-xl-xsm blocked test-arm64-arm64-xl-xsm pass test-amd64-i386-xl-xsm pass test-amd64-amd64-qemuu-nested-amd blocked test-amd64-amd64-xl-pvhv2-amd blocked test-amd64-i386-qemut-rhel6hvm-amd pass test-amd64-i386-qemuu-rhel6hvm-amd pass test-amd64-amd64-dom0pvh-xl-amd blocked test-amd64-amd64-xl-qemut-debianhvm-amd64 blocked test-amd64-i386-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-freebsd10-amd64 pass test-amd64-amd64-qemuu-freebsd11-amd64 blocked test-amd64-amd64-qemuu-freebsd12-amd64 blocked test-amd64-amd64-xl-qemuu-ovmf-amd64 blocked test-amd64-i386-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 blocked test-amd64-i386-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 blocked test-amd64-i386-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 blocked test-amd64-i386-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 blocked test-amd64-i386-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale pass test-amd64-amd64-examine-bios blocked test-amd64-i386-examine-bios pass test-amd64-amd64-xl-credit1 blocked test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 pass test-amd64-amd64-xl-credit2 blocked test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 pass test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine blocked test-arm64-arm64-examine pass test-armhf-armhf-examine pass test-amd64-i386-examine pass test-amd64-i386-freebsd10-i386 pass test-amd64-amd64-qemuu-nested-intel blocked test-amd64-amd64-xl-pvhv2-intel blocked test-amd64-i386-qemut-rhel6hvm-intel pass test-amd64-i386-qemuu-rhel6hvm-intel pass test-amd64-amd64-dom0pvh-xl-intel blocked test-amd64-amd64-libvirt blocked test-armhf-armhf-libvirt pass test-amd64-i386-libvirt pass test-amd64-amd64-xl-multivcpu blocked test-armhf-armhf-xl-multivcpu fail test-amd64-amd64-pair blocked test-amd64-i386-pair pass test-amd64-amd64-libvirt-pair blocked test-amd64-i386-libvirt-pair fail test-amd64-amd64-xl-pvshim blocked test-amd64-i386-xl-pvshim fail test-amd64-amd64-pygrub blocked test-armhf-armhf-libvirt-qcow2 pass test-amd64-amd64-xl-qcow2 blocked test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw pass test-amd64-i386-libvirt-raw fail test-amd64-amd64-xl-rtds blocked test-armhf-armhf-xl-rtds pass test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow blocked test-amd64-i386-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi blocked test-amd64-i386-examine-uefi pass test-amd64-amd64-libvirt-vhd blocked test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd pass test-amd64-i386-xl-vhd pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 1380 lines long.) From xen-devel-bounces@lists.xenproject.org Wed Jun 14 19:57:32 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 19:57:32 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549223.857641 (Exim 4.92) (envelope-from ) id 1q9WcR-0000z7-Hb; Wed, 14 Jun 2023 19:57:27 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549223.857641; Wed, 14 Jun 2023 19:57:27 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9WcR-0000z0-EE; Wed, 14 Jun 2023 19:57:27 +0000 Received: by outflank-mailman (input) for mailman id 549223; Wed, 14 Jun 2023 19:57:26 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9WcQ-0000yu-9H for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 19:57:26 +0000 Received: from mail-ed1-x533.google.com (mail-ed1-x533.google.com [2a00:1450:4864:20::533]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id adf4fc94-0aed-11ee-b232-6b7b168915f2; Wed, 14 Jun 2023 21:57:25 +0200 (CEST) Received: by mail-ed1-x533.google.com with SMTP id 4fb4d7f45d1cf-5147e8972a1so11980442a12.0 for ; Wed, 14 Jun 2023 12:57:23 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: adf4fc94-0aed-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686772643; x=1689364643; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=XLPwTDo5gV4mqPvwKixQb840PKI9upvdKNQ9cbYW6Q8=; b=W2ov78I2fLzdyXFyjae1BbXmaJ7z/RMkaXP6zaB5hIFrlBcHlW7BTNBSt0QXWBZeA+ FvjbNDAiNe8OJ3AdGVfCE83tlA3oQNReMQuYRr2V7TpYf6KPAIZcbf3ArQt0Qf0/tr1l amIBTKFg2Oi0uwX4lGLakw97Lprl8rBVx6iDuoSJoPAKgi7Ego/T91c5XUYZjPbowZlb L0pjIH3s9iCc0ol2fEzUAkFW6zM6AtKS7TbEEhOqCbzWyqxyujC09hyFgTgcTCAdT+jv VZ6lvf86Hyx0YhVji+W0UvoxYEK5QqXxP0SREU2e31HkPc75jS+vrpdYWTku1SVy/rFG IXZQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686772643; x=1689364643; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=XLPwTDo5gV4mqPvwKixQb840PKI9upvdKNQ9cbYW6Q8=; b=VpFDdZD/b3jKKbN5Is40zhE4IDICXMImOPnIUyDBjsPUbJgbEaOCQI4Y48s4h30G5K sclcKt9JeqRJzvDcnSYu3n4C2Dk0syRXVEcsa5YAKMODtrjynGJ7SiOSDIXjqAWx52KW NboHdRAKEA/7hs1gCS5dqqrOnE3OtWyQPjS6BvP0oy8rdgw5Pp3Rv25tB9g3wIxkA0/S ikwCs7VbZjlPuJMgsNA5TY1z2hBvrWHXtqd8SaUmijKVUFGyIf/MmNIx5sY6HR9wZUyJ 51RlTvDSp4aALnX2rzCU7rONuOyk63Y2r9xVtEqbV1UGR+wDWdHkp/YgJMre1wKaLFy7 Ombw== X-Gm-Message-State: AC+VfDz8JMljWoRV38Jilmx7F0SNPbbabnR5H1CvyoIOk3+RKgjQZzt+ 1Po/bRfkNPcR8if2+vNpyAhv5zwl1sLByhSaS1o= X-Google-Smtp-Source: ACHHUZ4oTxUd1zwcNKSxEXWe/7DXGacs3lHbk1VkUT+4f2hzAvNapDLX1fEpElzJYAchKAT6G391OLBoYz2yHVDnOho= X-Received: by 2002:a05:6402:34c:b0:50d:1e11:eb9 with SMTP id r12-20020a056402034c00b0050d1e110eb9mr10572574edw.1.1686772643127; Wed, 14 Jun 2023 12:57:23 -0700 (PDT) MIME-Version: 1.0 References: <20221121102113.41893-1-roger.pau@citrix.com> <20221121102113.41893-3-roger.pau@citrix.com> In-Reply-To: From: Jason Andryuk Date: Wed, 14 Jun 2023 15:57:11 -0400 Message-ID: Subject: Re: [PATCH 2/3] acpi/processor: sanitize _PDC buffer bits when running as Xen dom0 To: =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= Cc: Jan Beulich , xen-devel@lists.xenproject.org, jgross@suse.com, stable@vger.kernel.org, Boris Ostrovsky , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , x86@kernel.org, "H. Peter Anvin" , "Rafael J. Wysocki" , Len Brown , linux-acpi@vger.kernel.org, linux-kernel@vger.kernel.org Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Hi, Roger, On Mon, Nov 21, 2022 at 10:04=E2=80=AFAM Roger Pau Monn=C3=A9 wrote: > > On Mon, Nov 21, 2022 at 03:10:36PM +0100, Jan Beulich wrote: > > On 21.11.2022 11:21, Roger Pau Monne wrote: > > > --- a/drivers/acpi/processor_pdc.c > > > +++ b/drivers/acpi/processor_pdc.c > > > @@ -137,6 +137,14 @@ acpi_processor_eval_pdc(acpi_handle handle, stru= ct acpi_object_list *pdc_in) > > > buffer[2] &=3D ~(ACPI_PDC_C_C2C3_FFH | ACPI_PDC_C_C1_FFH)= ; > > > > > > } > > > + if (xen_initial_domain()) > > > + /* > > > + * When Linux is running as Xen dom0 it's the hypervisor = the > > > + * entity in charge of the processor power management, an= d so > > > + * Xen needs to check the OS capabilities reported in the= _PDC > > > + * buffer matches what the hypervisor driver supports. > > > + */ > > > + xen_sanitize_pdc((uint32_t *)pdc_in->pointer->buffer.poin= ter); > > > status =3D acpi_evaluate_object(handle, "_PDC", pdc_in, NULL); > > > > Again looking at our old XenoLinux forward port we had this inside the > > earlier if(), as an _alternative_ to the &=3D (I don't think it's valid > > to apply both the kernel's and Xen's adjustments). That would also let > > you use "buffer" rather than re-calculating it via yet another (risky > > from an abstract pov) cast. > > Hm, I've wondered this and decided it wasn't worth to short-circuit > the boot_option_idle_override conditional because ACPI_PDC_C_C2C3_FFH > and ACPI_PDC_C_C1_FFH will be set anyway by Xen in > arch_acpi_set_pdc_bits() as part of ACPI_PDC_C_CAPABILITY_SMP. > > I could re-use some of the code in there, but didn't want to make it > more difficult to read just for the benefit of reusing buffer. > > > It was the very nature of requiring Xen-specific conditionals which I > > understand was the reason why so far no attempt was made to get this > > (incl the corresponding logic for patch 1) into any upstream kernel. > > Yes, well, it's all kind of ugly. Hence my suggestion to simply avoid > doing any ACPI Processor object handling in Linux with the native code > and handle it all in a Xen specific driver. That requires the Xen > driver being able to fetch more data itself form the ACPI Processor > methods, but also unties it from the dependency on the data being > filled by the generic code, and the 'tricks' is plays into fooling > generic code to think certain processors are online. Are you working on this patch anymore? My Xen HWP patches need a Linux patch like this one to set bit 12 in the PDC. I had an affected user test with this patch and it worked, serving as an equivalent of Linux commit a21211672c9a ("ACPI / processor: Request native thermal interrupt handling via _OSC"). Another idea is to use Linux's arch_acpi_set_pdc_bits() to make the hypercall to Xen. It occurs earlier: acpi_processor_set_pdc() acpi_processor_alloc_pdc() acpi_set_pdc_bits() arch_acpi_set_pdc_bits() acpi_processor_eval_pdc() So the IDLE_NOMWAIT masking in acpi_processor_eval_pdc() would still apply. arch_acpi_set_pdc_bits() is provided the buffer, so it's a little cleaner in that respect. Thanks, Jason From xen-devel-bounces@lists.xenproject.org Wed Jun 14 20:47:06 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 20:47:06 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549231.857653 (Exim 4.92) (envelope-from ) id 1q9XOD-0006Qs-Dt; Wed, 14 Jun 2023 20:46:49 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549231.857653; Wed, 14 Jun 2023 20:46:49 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9XOD-0006Ql-Ax; Wed, 14 Jun 2023 20:46:49 +0000 Received: by outflank-mailman (input) for mailman id 549231; Wed, 14 Jun 2023 20:46:47 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9XOB-0006Qf-Eo for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 20:46:47 +0000 Received: from mx0a-00069f02.pphosted.com (mx0a-00069f02.pphosted.com [205.220.165.32]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 90f27404-0af4-11ee-8611-37d641c3527e; Wed, 14 Jun 2023 22:46:42 +0200 (CEST) Received: from pps.filterd (m0246629.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 35EJiN0R015397; Wed, 14 Jun 2023 20:46:15 GMT Received: from phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com (phxpaimrmta03.appoci.oracle.com [138.1.37.129]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3r4h2arheq-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Wed, 14 Jun 2023 20:46:15 +0000 Received: from pps.filterd (phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com [127.0.0.1]) by phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 35EK8TxZ021578; Wed, 14 Jun 2023 20:46:14 GMT Received: from nam11-co1-obe.outbound.protection.outlook.com (mail-co1nam11lp2172.outbound.protection.outlook.com [104.47.56.172]) by phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com (PPS) with ESMTPS id 3r4fm6356w-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Wed, 14 Jun 2023 20:46:14 +0000 Received: from BLAPR10MB5009.namprd10.prod.outlook.com (2603:10b6:208:321::10) by CO1PR10MB4564.namprd10.prod.outlook.com (2603:10b6:303:6f::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.46; Wed, 14 Jun 2023 20:46:12 +0000 Received: from BLAPR10MB5009.namprd10.prod.outlook.com ([fe80::2bb9:5d2e:a65b:e731]) by BLAPR10MB5009.namprd10.prod.outlook.com ([fe80::2bb9:5d2e:a65b:e731%6]) with mapi id 15.20.6477.037; Wed, 14 Jun 2023 20:46:12 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 90f27404-0af4-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=message-id : date : subject : to : cc : references : from : in-reply-to : content-type : content-transfer-encoding : mime-version; s=corp-2023-03-30; bh=fYh9IUe12DcvvEn/gnT+f5R+6jlnbKKO4/6BNJy0lzM=; b=Js4Y7btIIoIII7hOEJNrsQos83LAvo0U7Aj0GWskGA1yftPPK5RRsEILt8EV+0EIHbHx uRgKgMXSddSZIDZAMCLX0sRtYKQ5Fet/4DFKXbXqoUvfyYOMTYebTAilbxgYnWrGKrGt GcUOCWd8r1LfSCG5e7q/2qv4bRylqXvZ6ZXz5Q4M3wGWsrmlVO4byMIz9wFujzdoLeRR N0qt1/RoOHjnKNQj2dfAGQsiKAobZbEyVjOH2hpMEOpbSxTd3bGG0J/9wTrD/TlpIW2L WhAxjP37+u8B+Nhcj5esX/RhDnG4xTusNfLoWr8ExHpkzJeNU8WbSjYeVbgDc26OEK6d vQ== ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=f7gE0uAsADJEwWBENHKtE8zCMs2kLsYFqxtFNTOh5ige46i7mnmdQwIgl8kgoB4Ljx2LueoGJ+yYs/Ed8rSI5iWXSCSe+jsqvVtANZock5Fg7esjibJn6K7KBq1T5+MPC9IdRUJm/hpYSlZexRpiigmp5PCajeid+FC8YFLd2LN2/RaD1PI147WSwAGGp+Ry0lgHQjIyfk3W4fGTSjx73mSshTdvZsPZCptGRj1HApflNNm1MxjRCdXH3D7x3ZdvAmwa9aezGNMSlKcWfgCEigh1eu8x/hiK/AWq6wDXBkkDWQYNWjVlFGqkQcbQGQoMPWIE55+6Isf4VD9LhNFlKA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=fYh9IUe12DcvvEn/gnT+f5R+6jlnbKKO4/6BNJy0lzM=; b=DQsk+37ks3XIMvvowz1Kr4GmhVelwIgzVoQogfCQ9UwoF2nA25JIOM6Pg9gt/fyDlP05xrWTnK0u2hlJ/v0Pxauw/jhUkGnJVjhj2850G4Gx75dnBpr+rfA4VruwPy/AFSTMnxUm8XY47UbLudP/2lbf5zA8MSsMHiD+J9UKe9sAS8Xs0TUoM4o8chCXR303VlLXdrOww3AHZ+4HnJruQcXufaBb6ad8vs3h1pVprEiMP/heM6L8YpC1+yH+8oYACb13qjmionNhMoyngDUVK+WYfR+Za/j0MRZwwrADej8EBgn3LPZhhVMpd8pJ4H6BA2BZmeKNPziziofcUa8giw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com; dkim=pass header.d=oracle.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.onmicrosoft.com; s=selector2-oracle-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=fYh9IUe12DcvvEn/gnT+f5R+6jlnbKKO4/6BNJy0lzM=; b=bxp9P/dDvG2c34qiv6RGrpppkLEjSYsU5r1DtiMHmGxO8zLHbBGCdadgCDlkM0olN1+pl/17EdSTY7wqhKv/Ciy/nFZ3jU2f0K6oKGM2sd8zjYEFHjCadZajh3moobaKk7Uc3sy6xFzGlmMFp1qaZuWbCQjHHXbA3FRGuFucsws= Message-ID: <2f29cec7-34a4-9d84-d4ac-5ab7431d5096@oracle.com> Date: Wed, 14 Jun 2023 16:46:05 -0400 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v4 0/2] x86: xen: add missing prototypes Content-Language: en-US To: Juergen Gross , linux-kernel@vger.kernel.org, x86@kernel.org Cc: Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , "H. Peter Anvin" , xen-devel@lists.xenproject.org, Stefano Stabellini , Oleksandr Tyshchenko References: <20230614073501.10101-1-jgross@suse.com> From: Boris Ostrovsky In-Reply-To: <20230614073501.10101-1-jgross@suse.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-ClientProxiedBy: BYAPR05CA0088.namprd05.prod.outlook.com (2603:10b6:a03:e0::29) To BLAPR10MB5009.namprd10.prod.outlook.com (2603:10b6:208:321::10) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BLAPR10MB5009:EE_|CO1PR10MB4564:EE_ X-MS-Office365-Filtering-Correlation-Id: c23d2e3d-f0da-4804-6091-08db6d18639c X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: nNfYOU+VZy7OTDt3qpGx5QP+9bktSreH0vwgHtmAbxbj4br2gD4sCcdKOG10/UNa1x8b/dd1JuBw2McS6KpqbHYvo+v0FirKHcIB5AqH2r++6BlACe5UmpXsd5ka0Zh/ik48AyOhqZZcXtwVpexk945KA5yGtj3Z7Q/whOi0NDtEjpPkmO2hm8HEc5N7rEDuW5OwxihjGG4CouCsNbMc35yNVVeHkUXfUjI3Juwz8Pot1/Atg1O8LItu0eAusnKVDPUVHj54lad6vhwNGIbkX/LB3JXvvdnMOLNOQ+/KyIk9PY7dA9r0D9Y8MqfbywLEzK1yF10vLC5AOXZxAGbGj8L2EI3h1iWjX+ceqB+IhiwwJIeKpM8oGhhtkAiULfouSkDAlvtyKp9SPEv9aRSi5dvT6/cE2TOtt/ciFG+Cx0YdrS3lnIYaBaEv3cb0bho+YnEbkHj4nAxWWZ+Fg8ximgSndseHaTQO6bIqhoQMpRIjcYUQlnjj0vJU7WheQjIiuCCJu/pBBx4tIt+Oi/av3w0EA3uE+ETg2rGCdf+z7y6MV5r6SGZGaitNvuolh3dKlDEuWGwbQrCSK/gsrnhvWkcYwAEppBhetYFKTNx08TYH6dJM8yj34jGpuuba/OTwpx2Hm3r15rggJlA1EXUu2w== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BLAPR10MB5009.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(39860400002)(376002)(136003)(396003)(346002)(366004)(451199021)(6486002)(6666004)(36756003)(83380400001)(2616005)(86362001)(31696002)(38100700002)(6506007)(53546011)(6512007)(26005)(186003)(2906002)(4744005)(54906003)(316002)(4326008)(7416002)(44832011)(66476007)(31686004)(66556008)(41300700001)(478600001)(66946007)(8936002)(5660300002)(8676002)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?SzJFdTlvOEU5V2xiUTRYdk03Z1FOTE5yN2N2b3VRZkNBRlRQMW40aEJsbjAz?= =?utf-8?B?eExhbGRLVDQxa1V4M1Z1TVpFZTg2OU5hY2VZNGVNeDMxaXB5YzF0NytXNy9n?= =?utf-8?B?MW43Rk1zbnlFU1Z2RmxOTG9EWFhvS3dtTjhSalFkU3V4emhvMklpUVI4am1m?= =?utf-8?B?bS9IU0ErbUxHRU05dllBK29MLzd1UE52U1RZSGZKZTZ2RWlVdlduTm13NS9t?= =?utf-8?B?cStOZDdYT3JKTnZQcFlZR2R2SFc3bHNJVkxwWFBBb05XT2Q3RVpCT1IyWlI3?= =?utf-8?B?MlZMZWJjbFRHZ1VvOFBGOEZtcEw0aW9HVWFrKy81bEdyK3VlelRWVW52VWJa?= =?utf-8?B?cWlMaGJ2akxtRUV4S2E5c1pOZzQ0R01KdS9PZDRQMTdRUGpZQWJzK1l4cWc1?= =?utf-8?B?RkZlUFJPREFGTmpZQ2dFT1NNUFB4TGlTRWY3MU1mZzlHcUNPUG5zS0tjbzA0?= =?utf-8?B?OU96ZWdnbmowZVkvOVBjZG9TY3FlYjBHdURpNmpCTjg1NXhqQWxmVUJyNTlL?= =?utf-8?B?U2hIRVM3K24yNVhaL0Jla0phRG5DUDJCZ01rT2RyeU5hTnZXSHlrek45M29V?= =?utf-8?B?UXorSEo3U3pzVkFTM1Y5TUpGQ21WdjVkNFBJRTduSkx3TjBmc2g1M0VRL01H?= =?utf-8?B?VEdubXM0Tm5scDRBNWMrOHJxUjJXUnFjWHdUVnhpSG1DQ0gzazNNRFg0ZUxJ?= =?utf-8?B?OXhINUVNblN5ZWxrdlIzcTZLS3k4R0tyMzU2QU43eXhKZVJuYXBVTXZoZHho?= =?utf-8?B?U2t0UFBjSmRMM3Z3bUF1SzRpcytsV2hVUUFHcW8vQUdGVVk0QTFPQTBDRWF5?= =?utf-8?B?MUZZKzk1dEk0NndBVnZ3bkU2MlpSOGdJbHZJREIzQU1obCtLSUo1cGtOVDZi?= =?utf-8?B?U0Z3alFTeGRhalBiY3hlWEVrZm9OcGlSYlMvUjZrcll6M1VwdUNNNWxnd0JH?= =?utf-8?B?aGllUnUrM25pRitvRTBTZnJ6dWMvN0l2QlBJSi8vbFhQdGhvaS92MmVUU3Uv?= =?utf-8?B?MWZOVmp4L0ZRTjBKWTBuWXFiUVJLN1FIWTFGMGFYYk15K2g2WW1ZY2Z0MUVk?= =?utf-8?B?emlGdEIyKzRCb1BIMXhPdzg3L2dVSHdUNlBLa3NrZUllUHJCc0UzU3Bwc0RR?= =?utf-8?B?Snc3UGNmbFE2MjZHbEFnazBMdkozZGFMVm9DUS9iTmtsNFNOdWRKTTNZcjhV?= =?utf-8?B?cHRQWWwzNkpyRllOR2hJeEpOdTV3R1B1cjJKUTQ4T2I1S0FReXpTVnlsc2oz?= =?utf-8?B?MTdTU2NtN2w1aXk4QWduVGN5Y29hTHAwVHI1d3V4c1JIRVVxcWRoNEtid3RV?= =?utf-8?B?OFlpSnc3ckhIdmJURHVKSXZVcW94UFF2K2NjSDcwY0NSci9veDVmTHptZWVm?= =?utf-8?B?aFhsbnpwYTlNKzZOSVNvL0lsYUYxaTlJTnhwQXJ4bFNaVG41QUtEUW9PVTh5?= =?utf-8?B?QmllcjNMUFQxTWIrMVhkdXkwS1BlemxBUENxZGVUcmswOW1wb29iVjdha1Rw?= =?utf-8?B?d2VoZ0FKazlkRFEzNXFrcGNrTUpRSFZpMzJpY3pHbWV2UmNiblBSdnlrODc0?= =?utf-8?B?UEZMNVozV3RTRXFkeXYyc29BaVhrWlpwT01mN0ZFaW9XaG5JRG4zYk1PMG8x?= =?utf-8?B?cDRIMnU0M0JDbHpOR1dEUGdXeUFlcEU2S2FXSU9TSFgrY2Zza2I1R1E3RjlT?= =?utf-8?B?ZHdVYUQ2cForZVIwYTZOdk1yVmNOTkRPaHAzY2VoN0I2YmE5TzJFT2xrRmly?= =?utf-8?B?QzhlRFRHUWRIZDduQ0QwZXVYbVhSbnRWYVJBOGRTeDE3YUdTelp4Q0lQNWFT?= =?utf-8?B?VDI3ZUVGRkoyeEsyNWtMYVFhZ2Q5MWxMY1FuOWR5ZnhnOVVZdkROM3pMVE9F?= =?utf-8?B?N3Z5bDZhaDRJemF6a3dGblhTclVLa0xobXNkeEVnb0lXNlUyREpTRjNLaGtr?= =?utf-8?B?cGthWi9zRElhbUwzaURmb1JUdHBROUJLYWdnanNsRVJnVElhSmZOeTRUUmR2?= =?utf-8?B?ZjQrRWtGRkUrMmYvV2xDbEtLdUNVR1QxV3MyVndtL1BTQm9UNUwzR3Avb1pO?= =?utf-8?B?UkxEK2NoSzBveityanp2d3dScnA5bjJzdzUycGN4K3phYXhMWjlyNmptWWtQ?= =?utf-8?B?bnVkU1JOUVg4bUwwRmQwSysxdUpKRXIrN1BlMU02RzNiVk1aQW5QMjNVUDEv?= =?utf-8?B?a3c9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: =?utf-8?B?U3ZMVEFPMkFNaVJEc1BFV3dRT3RGNGVjbEpTRDhvVXJvV1FUWVNKbTkxVEYz?= =?utf-8?B?bGx5Rk5iT2trZjgrN1BOU255WmxBRmJSOHBzdlRFYXFUVkxQQ3MrSGZpajVV?= =?utf-8?B?bm5MUFovUldHd3I2WmpScktLb0RSY0dvT2dCaTVrTHBzenlmdWtVOXRlTVZJ?= =?utf-8?B?MkgyR0dGQ1FuMFhIalJ4UjVnd0FmaEh6UnZtSnBhcmNMYVhMZFRVQnhYNjR4?= =?utf-8?B?aUVGcUpaUnl6eU5PTjV3Y2JUWkhXSkxTQ0ZydnhsaGdUSERibW0wV2tXZmpE?= =?utf-8?B?VmFpalQ1dUdoYndjejRCMUlGbFVFS0cvL0M1R1N4NDd4aEZnMEp3ZTl6QTE5?= =?utf-8?B?SW11OVR6RFFLWTRRN3RQbTBIMElkcjdFQ3dENXg2Rk9FVGd5cWg5UzFGb1Ax?= =?utf-8?B?emovTEEzVlV0emFmRjNjN3EvN1R1bnFxdUV4UWRFU29DTGZ3TVZNanZ1UEI3?= =?utf-8?B?WFJEWm1maHUzRWJ3dCs0OUR0UW1nNzVZN0NlQVdia1hhWDJPYzBMNG1LOGQ5?= =?utf-8?B?QmNucDVqalZnQjFoekFlTElIcEEwYXRRaHlLenFWbWtGenF5OTFZZUlwSHBC?= =?utf-8?B?UXJkMTR0eDFvMGdUR2pMVTRONDA2amplNFpXdnZNTnBuSTRpdkVLdDgwcXQ4?= =?utf-8?B?RGtSd0RZRlBRNzFSdk9YcVZwbmRhc0pUejlyRklLUlpuZ3lQM0JPOUJ3UFdN?= =?utf-8?B?L3dQZDV5clFZQlNmUXllMUt2ZDdSbWk2aHFzRXNvQUFJbGxWUktpWWczbWhz?= =?utf-8?B?K2R5OUdwS1VndG1UUGVFYWI1QUZPVWhPQXFZQnc4VXoycVZEOHkwK2h6T25F?= =?utf-8?B?TG14aUpuYjR5Mi8wZUNGeWErTElRQzlWR3pZNXpHMXpUenBpQkdMZ1IySTUw?= =?utf-8?B?bDAvSDhJNjI0WHNyMkdjd3dKbFU2b05XNnlPa2xSWTdDUFNXOEFyTGhZU3Fr?= =?utf-8?B?MUVRTjhEQnpoSkhMU0VkN1ZieTNqdEkxakwrRjE5NFFyYjExdlUwTXl0NDhS?= =?utf-8?B?cW1Vd0l2ejRjMzcrK2VhR0xpc1VqVDZ1aGl5UmhrQXI5VzdJVFVjWU9qR2sw?= =?utf-8?B?YUlIRnFDdTJxa2tYaVpiYzJPM2dqQ0N6QUh5OStraTF0Z0plUTFyODAzOGw0?= =?utf-8?B?L2FQelB6TUdTZzRVdFk3ZEZOeHpFZHdzMHVSQmRFTjRJblRUSG9aYkVicTFD?= =?utf-8?B?c0I1SG8wRElGMnhQdkJxYTdBWkY0U0VRaVRNYzhKQnhNNWxEenZRd1VlNXo0?= =?utf-8?B?WVNwaUhteE5FNlBMb2VEUmlYUm5FUzM5RkRRZ0NIYlJla05MTWZiRW8yRGJk?= =?utf-8?B?dUpPcXBLZ091aDZzeFpIVzVCM3gzakRpdElxb3F1TitDNGt5WllVY2tCb2FT?= =?utf-8?B?cFdzaHZTalR3WmttYmhxcitnVjlHOUVLcTl4OExmRlRNcHFZK3dWa040VjBQ?= =?utf-8?Q?0HvVx4WK?= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: c23d2e3d-f0da-4804-6091-08db6d18639c X-MS-Exchange-CrossTenant-AuthSource: BLAPR10MB5009.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Jun 2023 20:46:12.2969 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 4e2c6054-71cb-48f1-bd6c-3a9705aca71b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: DidQVS/NELsPKqOjoddDF7wuNkbAxK4AiqpeXWSXq2HSZ0XN0VwgnlDyyoeOh28JD0+rqa+W5WtDeyodCUyrizyjnJNVnFQpgeyBF3kLmXo= X-MS-Exchange-Transport-CrossTenantHeadersStamped: CO1PR10MB4564 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.254,Aquarius:18.0.957,Hydra:6.0.573,FMLib:17.11.176.26 definitions=2023-06-14_14,2023-06-14_02,2023-05-22_02 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 adultscore=0 mlxscore=0 phishscore=0 suspectscore=0 mlxlogscore=999 bulkscore=0 spamscore=0 malwarescore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2305260000 definitions=main-2306140181 X-Proofpoint-ORIG-GUID: AO0AYAYtS6xeKCnI73bAG3vTfexyx2VP X-Proofpoint-GUID: AO0AYAYtS6xeKCnI73bAG3vTfexyx2VP On 6/14/23 3:34 AM, Juergen Gross wrote: > Avoid missing prototype warnings. > > Arnd Bergmann (1): > x86: xen: add missing prototypes > > Juergen Gross (1): > x86/xen: add prototypes for paravirt mmu functions > > arch/x86/xen/efi.c | 2 ++ > arch/x86/xen/mmu_pv.c | 16 ++++++++++++++++ > arch/x86/xen/smp.h | 4 ++++ > arch/x86/xen/smp_pv.c | 1 - > arch/x86/xen/xen-ops.h | 3 +++ > include/xen/xen.h | 3 +++ > 6 files changed, 28 insertions(+), 1 deletion(-) > Reviewed-by: Boris Ostrovsky From xen-devel-bounces@lists.xenproject.org Wed Jun 14 21:23:35 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 21:23:35 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549236.857664 (Exim 4.92) (envelope-from ) id 1q9XxZ-0002K7-8f; Wed, 14 Jun 2023 21:23:21 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549236.857664; Wed, 14 Jun 2023 21:23:21 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9XxZ-0002K0-4r; Wed, 14 Jun 2023 21:23:21 +0000 Received: by outflank-mailman (input) for mailman id 549236; Wed, 14 Jun 2023 21:23:20 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9XxY-0002Ju-Ek for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 21:23:20 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [2604:1380:4641:c500::1]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id acc8c188-0af9-11ee-8611-37d641c3527e; Wed, 14 Jun 2023 23:23:16 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 34A296257E; Wed, 14 Jun 2023 21:23:15 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 8E219C433C8; Wed, 14 Jun 2023 21:23:12 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: acc8c188-0af9-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1686777794; bh=sfZlQC0KRiU3VFMaS6H5djLiaDuaR3UyKKAHotXoEC4=; h=Date:Subject:To:Cc:References:From:In-Reply-To:From; b=JSy2cjQ3EfZqDH+GRmJ+mjVAAcseGIvPUq3lquiQxXqEjjGqwU+HemD7F3wiC1btN oSofDjGtfqLFUZE6+eF26LaNmlZ0XJSVLI8h3M4XLmim/HM29Na3QWm9DVPo2aVCXI K79BAGLxK+0MfFwKGWozB9O2gr9yZd3Cu5CIDwhRjdpR3tn5b309NHjtR2IQGAy5FI ii48Ct/zrPJGlO6GMB0nxU3tTn8XzvIvT2D58R4sk2Mn4rxTjXdkRPrgiKhp+20BR7 UEwrTSQZ099UBshJbATcCyWw+lXzjKCSDECSlkjbQFiwFpFsJU9nBH5UIC1JXPi4An txkWeQKuOaEyQ== Message-ID: <5729b45b-6a19-2aa8-8722-c50e6a1fceea@kernel.org> Date: Wed, 14 Jun 2023 16:23:10 -0500 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH v4 27/34] nios2: Convert __pte_free_tlb() to use ptdescs Content-Language: en-US To: Geert Uytterhoeven Cc: "Vishal Moola (Oracle)" , Andrew Morton , Matthew Wilcox , linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins References: <20230612210423.18611-1-vishal.moola@gmail.com> <20230612210423.18611-28-vishal.moola@gmail.com> From: Dinh Nguyen In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit On 6/14/23 04:30, Geert Uytterhoeven wrote: > Hi Dinh, > > On Wed, Jun 14, 2023 at 12:17 AM Dinh Nguyen wrote: >> On 6/12/23 16:04, Vishal Moola (Oracle) wrote: >>> Part of the conversions to replace pgtable constructor/destructors with >>> ptdesc equivalents. >>> >>> Signed-off-by: Vishal Moola (Oracle) >>> --- >>> arch/nios2/include/asm/pgalloc.h | 8 ++++---- >>> 1 file changed, 4 insertions(+), 4 deletions(-) >>> >>> diff --git a/arch/nios2/include/asm/pgalloc.h b/arch/nios2/include/asm/pgalloc.h >>> index ecd1657bb2ce..ce6bb8e74271 100644 >>> --- a/arch/nios2/include/asm/pgalloc.h >>> +++ b/arch/nios2/include/asm/pgalloc.h >>> @@ -28,10 +28,10 @@ static inline void pmd_populate(struct mm_struct *mm, pmd_t *pmd, >>> >>> extern pgd_t *pgd_alloc(struct mm_struct *mm); >>> >>> -#define __pte_free_tlb(tlb, pte, addr) \ >>> - do { \ >>> - pgtable_pte_page_dtor(pte); \ >>> - tlb_remove_page((tlb), (pte)); \ >>> +#define __pte_free_tlb(tlb, pte, addr) \ >>> + do { \ >>> + pagetable_pte_dtor(page_ptdesc(pte)); \ >>> + tlb_remove_page_ptdesc((tlb), (page_ptdesc(pte))); \ >>> } while (0) >>> >>> #endif /* _ASM_NIOS2_PGALLOC_H */ >> >> Applied! > > I don't think you can just apply this patch, as the new functions > were only introduced in [PATCH v4 05/34] of this series. > Ah, thanks for the pointer! Dinh From xen-devel-bounces@lists.xenproject.org Wed Jun 14 22:54:11 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 22:54:11 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549242.857676 (Exim 4.92) (envelope-from ) id 1q9ZNA-0003Ch-I0; Wed, 14 Jun 2023 22:53:52 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549242.857676; Wed, 14 Jun 2023 22:53:52 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9ZNA-0003Ca-FH; Wed, 14 Jun 2023 22:53:52 +0000 Received: by outflank-mailman (input) for mailman id 549242; Wed, 14 Jun 2023 22:53:51 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9ZN9-0003CU-A6 for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 22:53:51 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [2604:1380:4641:c500::1]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 52e2f9c1-0b06-11ee-b232-6b7b168915f2; Thu, 15 Jun 2023 00:53:49 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id D040060E97; Wed, 14 Jun 2023 22:53:47 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 15271C433C0; Wed, 14 Jun 2023 22:53:45 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 52e2f9c1-0b06-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1686783227; bh=MK0OgV1+3iu8fY60ujjgddNCePQ2dkqDHaY4xz+v8H8=; h=Date:From:To:cc:Subject:In-Reply-To:References:From; b=Iec/6V5czjtlf/BWR9Zdy/b0uF1lYaEN5recbLlpFBA41+/YqSY+Of9RbtzpffPww HRY3tbGYvC16hqtkZ8Lmbdp5zAmqWslU+fHpju0ZQkx3+HnvHb1rs0m42JNfUWkOE5 HLZH6Mlj4C1LrD+w48yW25kAnIKWe01341ChGEvRuYJLE/3/RLtszEJA1bnWIB7zac Y/A3cHayCCQMd3YS8t8O+YaNmZwv7w5jhVtmpUsqYJdsta1+Pe4je3P3TWGyNnoys0 +tGGMYy21s3k295M0BNP7pm8SSvBgWn4vOpjCbhlJSeD6rzV1jmIna51zIR4iaNJI0 QLoSr6HeduMmQ== Date: Wed, 14 Jun 2023 15:53:44 -0700 (PDT) From: Stefano Stabellini X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop To: Jan Beulich cc: Stefano Stabellini , julien@xen.org, andrew.cooper3@citrix.com, roger.pau@citrix.com, bertrand.marquis@arm.com, roberto.bagnara@bugseng.com, Stefano Stabellini , xen-devel@lists.xenproject.org Subject: Re: [PATCH v3] docs/misra: new rules addition In-Reply-To: <7a0773e3-450c-4744-ad2b-689102ccc890@suse.com> Message-ID: References: <20230613034456.701654-1-sstabellini@kernel.org> <7a0773e3-450c-4744-ad2b-689102ccc890@suse.com> User-Agent: Alpine 2.22 (DEB 394 2020-01-19) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII On Tue, 13 Jun 2023, Jan Beulich wrote: > On 13.06.2023 05:44, Stefano Stabellini wrote: > > @@ -133,6 +146,13 @@ existing codebase are work-in-progress. > > headers (xen/include/public/) are allowed to retain longer > > identifiers for backward compatibility. > > > > + * - `Rule 6.1 `_ > > + - Required > > + - Bit-fields shall only be declared with an appropriate type > > + - In addition to the C99 types, we also consider appropriate types: > > + unsigned char, unsigned short, unsigned long, unsigned long long, > > + enum, and all explicitly signed integer types. > > If I was to read this without the earlier discussion in mind, I would wonder > why the unsigned types are explicitly enumerated, but the signed ones are > described in more general terms. Can't it simply be "all explicitly unsigned > / signed integer types", which then also covers e.g. uint32_t? I'll change it to that effect > > @@ -143,6 +163,32 @@ existing codebase are work-in-progress. > > - Octal constants shall not be used > > - > > > > + * - `Rule 7.2 `_ > > + - Required > > + - A "u" or "U" suffix shall be applied to all integer constants > > + that are represented in an unsigned type > > + - The rule asks that any integer literal that is implicitly > > + unsigned is made explicitly unsigned by using one of the > > + indicated suffixes. As an example, on a machine where the int > > + type is 32-bit wide, 0x77777777 is signed whereas 0x80000000 is > > + (implicitly) unsigned. In order to comply with the rule, the > > + latter should be rewritten as either 0x80000000u or 0x80000000U. > > + Consistency considerations may suggest using the same suffix even > > + when not required by the rule. For instance, if one has: > > + > > + Original: f(0x77777777); f(0x80000000); > > + > > + one might prefer > > + > > + Solution 1: f(0x77777777U); f(0x80000000U); > > + > > + over > > + > > + Solution 2: f(0x77777777); f(0x80000000U); > > + > > + after having ascertained that "Solution 1" is compatible with the > > + intended semantics. > > I think we should state here what we want people to do, not what "one > might prefer". That aspect aside, I'm not convinced the added text > (matching what Roberto did suggest) really addresses my concerns. Yet > I'm not going to pursue this any further - we'll see how this ends up > working in practice. OK. I'll keep it as is. From xen-devel-bounces@lists.xenproject.org Wed Jun 14 22:55:28 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 22:55:28 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549247.857687 (Exim 4.92) (envelope-from ) id 1q9ZOg-0003l4-SR; Wed, 14 Jun 2023 22:55:26 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549247.857687; Wed, 14 Jun 2023 22:55:26 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9ZOg-0003kx-PF; Wed, 14 Jun 2023 22:55:26 +0000 Received: by outflank-mailman (input) for mailman id 549247; Wed, 14 Jun 2023 22:55:25 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9ZOf-0003kp-Kz for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 22:55:25 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 8bb29fbd-0b06-11ee-b232-6b7b168915f2; Thu, 15 Jun 2023 00:55:24 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 58CE560B8D; Wed, 14 Jun 2023 22:55:23 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 9A31FC433C8; Wed, 14 Jun 2023 22:55:21 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 8bb29fbd-0b06-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1686783322; bh=ZdNVErUCeGAT83PF+zOGrrZsYSZg7ptoQjkJ3ghi4Y0=; h=From:To:Cc:Subject:Date:From; b=Z6r6uEtI9hOI0U+GUzZaN19ywKh84/3IcFrZrTif8ldo795wg5elXREFtQxKFZCX9 Vsclub1V051GHLOrEPCQfxJRvAsMdXjAPaQKoppb9NWfot3ySmhEUa3+Xgrdn/o5XR M8FSmIsxIgFZ2cybSUJYHR/o76biaFyHqPDby4La1IF44QdJvTq6q8QGuPqz+DSZWo Zrv+Xj7QA0MTe5XsRQ/btFLJxZd2hX5GGD+wJKrdk08Q91KTF+FNz6niuOmCQgYJZj AbTJ9mp2DbEtwWRCZuT5+FZ/moq0iVbX96hFXIIyF87chRWiIZHdIxmUlA8jm06xoE yLTnmgwffZiQQ== From: Stefano Stabellini To: xen-devel@lists.xenproject.org Cc: sstabellini@kernel.org, jbeulich@suse.com, julien@xen.org, andrew.cooper3@citrix.com, roger.pau@citrix.com, bertrand.marquis@arm.com, roberto.bagnara@bugseng.com, Stefano Stabellini Subject: [PATCH v4] docs/misra: new rules addition Date: Wed, 14 Jun 2023 15:55:15 -0700 Message-Id: <20230614225515.1057820-1-sstabellini@kernel.org> X-Mailer: git-send-email 2.25.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit From: Stefano Stabellini For Dir 1.1, a document describing all implementation-defined behaviour (i.e. gcc-specific behavior) will be added to docs/misra, also including implementation-specific (gcc-specific) appropriate types for bit-field relevant to Rule 6.1. Rule 21.21 is lacking an example on gitlab but the rule is straightforward: we don't use stdlib at all in Xen. Signed-off-by: Stefano Stabellini --- Changes in v4: - improve wording of the note in 6.1 Changes in v3: - add all signed integer types to the Notes of 6.1 - clarify 7.2 in the Notes - not added: marking "inapplicable" rules, to be a separate patch Changes in v2: - drop 5.6 - specify additional appropriate types for 6.1 --- docs/misra/rules.rst | 50 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 50 insertions(+) diff --git a/docs/misra/rules.rst b/docs/misra/rules.rst index d5a6ee8cb6..41a727ca98 100644 --- a/docs/misra/rules.rst +++ b/docs/misra/rules.rst @@ -40,6 +40,12 @@ existing codebase are work-in-progress. - Summary - Notes + * - `Dir 1.1 `_ + - Required + - Any implementation-defined behaviour on which the output of the + program depends shall be documented and understood + - + * - `Dir 2.1 `_ - Required - All source files shall compile without any compilation errors @@ -57,6 +63,13 @@ existing codebase are work-in-progress. header file being included more than once - + * - `Dir 4.11 `_ + - Required + - The validity of values passed to library functions shall be checked + - We do not have libraries in Xen (libfdt and others are not + considered libraries from MISRA C point of view as they are + imported in source form) + * - `Dir 4.14 `_ - Required - The validity of values received from external sources shall be @@ -133,6 +146,12 @@ existing codebase are work-in-progress. headers (xen/include/public/) are allowed to retain longer identifiers for backward compatibility. + * - `Rule 6.1 `_ + - Required + - Bit-fields shall only be declared with an appropriate type + - In addition to the C99 types, we also consider appropriate types + enum and all explicitly signed / unsigned integer types. + * - `Rule 6.2 `_ - Required - Single-bit named bit fields shall not be of a signed type @@ -143,6 +162,32 @@ existing codebase are work-in-progress. - Octal constants shall not be used - + * - `Rule 7.2 `_ + - Required + - A "u" or "U" suffix shall be applied to all integer constants + that are represented in an unsigned type + - The rule asks that any integer literal that is implicitly + unsigned is made explicitly unsigned by using one of the + indicated suffixes. As an example, on a machine where the int + type is 32-bit wide, 0x77777777 is signed whereas 0x80000000 is + (implicitly) unsigned. In order to comply with the rule, the + latter should be rewritten as either 0x80000000u or 0x80000000U. + Consistency considerations may suggest using the same suffix even + when not required by the rule. For instance, if one has: + + Original: f(0x77777777); f(0x80000000); + + one might prefer + + Solution 1: f(0x77777777U); f(0x80000000U); + + over + + Solution 2: f(0x77777777); f(0x80000000U); + + after having ascertained that "Solution 1" is compatible with the + intended semantics. + * - `Rule 7.3 `_ - Required - The lowercase character l shall not be used in a literal suffix @@ -314,6 +359,11 @@ existing codebase are work-in-progress. used following a subsequent call to the same function - + * - Rule 21.21 + - Required + - The Standard Library function system of shall not be used + - + * - `Rule 22.2 `_ - Mandatory - A block of memory shall only be freed if it was allocated by means of a -- 2.25.1 From xen-devel-bounces@lists.xenproject.org Wed Jun 14 23:03:51 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 23:03:51 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549254.857697 (Exim 4.92) (envelope-from ) id 1q9ZWa-0005LB-Q7; Wed, 14 Jun 2023 23:03:36 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549254.857697; Wed, 14 Jun 2023 23:03:36 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9ZWa-0005L4-Ls; Wed, 14 Jun 2023 23:03:36 +0000 Received: by outflank-mailman (input) for mailman id 549254; Wed, 14 Jun 2023 23:03:34 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9ZWY-0005Ky-PF for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 23:03:34 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id af33913a-0b07-11ee-b232-6b7b168915f2; Thu, 15 Jun 2023 01:03:33 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 57FEA6355B; Wed, 14 Jun 2023 23:03:32 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 8AA0BC433C8; Wed, 14 Jun 2023 23:03:30 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: af33913a-0b07-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1686783811; bh=cCuwpT8Xu8wzNNPOH1vRl/UyjmhgUyE3jKyHcmogiaw=; h=From:To:Cc:Subject:Date:From; b=Lr0O1UJRp/Go21t2q1m3E/agGYX4Hh6X39hgK1t5cDbmsv50aimVnUU6VTNZzSlN9 4kupMDkkeYi7dL7qbX/e13oG5sqkGluSWBt1DQDzX81wk4Jv5CR+UDqyjoMTd4broo FUTlx/Ma5y4eogVfhbgtNZ3RRUqOeVp+luEmixGJdmNRK7uoysfa5L7kbUGBlJ3yCd buq9xpu2JBBwCQb6W59bcMVCQD21ozBNhrnpNBJTLaun4gVFr12WGIw9j8lCKrD/WX Ve5xlVkTnuoL/tU3iZpa8Q/zf3XQnj784x5wd3VYTvWmiABnXZ9l5w+DmBz80Je0ks RR+A1GMfHemVg== From: Stefano Stabellini To: xen-devel@lists.xenproject.org Cc: sstabellini@kernel.org, jbeulich@suse.com, julien@xen.org, andrew.cooper3@citrix.com, roger.pau@citrix.com, bertrand.marquis@arm.com, roberto.bagnara@bugseng.com, Stefano Stabellini Subject: [PATCH] xen/misra: add rules 1.4 and 2.1 Date: Wed, 14 Jun 2023 16:03:28 -0700 Message-Id: <20230614230328.1060282-1-sstabellini@kernel.org> X-Mailer: git-send-email 2.25.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit From: Stefano Stabellini Signed-off-by: Stefano Stabellini --- docs/misra/rules.rst | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/docs/misra/rules.rst b/docs/misra/rules.rst index 41a727ca98..4179e49ac2 100644 --- a/docs/misra/rules.rst +++ b/docs/misra/rules.rst @@ -90,6 +90,17 @@ existing codebase are work-in-progress. behaviour - + * - Rule 1.4 + - Required + - Emergent language features shall not be used + - Emergent language features, such as C11 features, should not be + confused with similar compiler extensions, which we use. + + * - `Rule 2.1 `_ + - Required + - A project shall not contain unreachable code + - + * - `Rule 2.6 `_ - Advisory - A function should not contain unused label declarations -- 2.25.1 From xen-devel-bounces@lists.xenproject.org Wed Jun 14 23:18:32 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 23:18:32 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549259.857706 (Exim 4.92) (envelope-from ) id 1q9Zkr-0006ta-TY; Wed, 14 Jun 2023 23:18:21 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549259.857706; Wed, 14 Jun 2023 23:18:21 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9Zkr-0006tT-Qt; Wed, 14 Jun 2023 23:18:21 +0000 Received: by outflank-mailman (input) for mailman id 549259; Wed, 14 Jun 2023 23:18:21 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9Zkr-0006tJ-FL; Wed, 14 Jun 2023 23:18:21 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9Zkr-0000vO-CF; Wed, 14 Jun 2023 23:18:21 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9Zkq-0000sh-Q8; Wed, 14 Jun 2023 23:18:20 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q9Zkq-0002Pr-Pf; Wed, 14 Jun 2023 23:18:20 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=Yqav5mlA2a0k+bOcjixFTaQZufPfAyQBcWqvGP4lq0Q=; b=OfJJTyf4hCVRaIX5SXdbdgmIXa UvUJ32UBdeA+sLY0CF8sTgAUeBrmkN1jx8GgOvmjDi6IU2yCkVUzzEGFwtuUfzqoYyhGablj8vOZN 89M/BJSMGkSyq6d3vUP6KCJuFpnpMTSGGVxWC2KbdA9O3NIfmK3IBXk6ONkVOEy1Qb2c=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [linux-linus test] 181427: regressions - FAIL X-Osstest-Failures: linux-linus:build-armhf-pvops:kernel-build:fail:regression linux-linus:test-armhf-armhf-xl-credit1:xen-boot:fail:regression linux-linus:build-arm64-pvops:kernel-build:fail:regression linux-linus:test-amd64-amd64-dom0pvh-xl-amd:guest-start/debian.repeat:fail:heisenbug linux-linus:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking linux-linus:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking linux-linus:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking linux-linus:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking linux-linus:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking linux-linus:test-arm64-arm64-xl:build-check(1):blocked:nonblocking linux-linus:test-arm64-arm64-examine:build-check(1):blocked:nonblocking linux-linus:test-armhf-armhf-examine:build-check(1):blocked:nonblocking linux-linus:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking linux-linus:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking linux-linus:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking linux-linus:test-armhf-armhf-xl:build-check(1):blocked:nonblocking linux-linus:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking linux-linus:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking linux-linus:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking linux-linus:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking linux-linus:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking linux-linus:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking linux-linus:test-armhf-armhf-xl-multivcpu:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-credit2:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-arndale:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-examine:reboot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-raw:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-qcow2:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-rtds:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-vhd:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-raw:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-qcow2:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: linux=b6dad5178ceaf23f369c3711062ce1f2afc33644 X-Osstest-Versions-That: linux=6c538e1adbfc696ac4747fb10d63e704344f763d From: osstest service owner Date: Wed, 14 Jun 2023 23:18:20 +0000 flight 181427 linux-linus real [real] http://logs.test-lab.xenproject.org/osstest/logs/181427/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-armhf-pvops 6 kernel-build fail REGR. vs. 180278 test-armhf-armhf-xl-credit1 8 xen-boot fail in 181417 REGR. vs. 180278 build-arm64-pvops 6 kernel-build fail in 181417 REGR. vs. 180278 Tests which are failing intermittently (not blocking): test-amd64-amd64-dom0pvh-xl-amd 22 guest-start/debian.repeat fail pass in 181417 Tests which did not succeed, but are not blocking: test-arm64-arm64-xl-thunderx 1 build-check(1) blocked in 181417 n/a test-arm64-arm64-xl-xsm 1 build-check(1) blocked in 181417 n/a test-arm64-arm64-libvirt-xsm 1 build-check(1) blocked in 181417 n/a test-arm64-arm64-libvirt-raw 1 build-check(1) blocked in 181417 n/a test-arm64-arm64-xl-vhd 1 build-check(1) blocked in 181417 n/a test-arm64-arm64-xl-credit1 1 build-check(1) blocked in 181417 n/a test-arm64-arm64-xl-credit2 1 build-check(1) blocked in 181417 n/a test-arm64-arm64-xl 1 build-check(1) blocked in 181417 n/a test-arm64-arm64-examine 1 build-check(1) blocked in 181417 n/a test-armhf-armhf-examine 1 build-check(1) blocked n/a test-armhf-armhf-libvirt 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-qcow2 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-raw 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a test-armhf-armhf-xl-arndale 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit1 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-multivcpu 1 build-check(1) blocked n/a test-armhf-armhf-xl-rtds 1 build-check(1) blocked n/a test-armhf-armhf-xl-vhd 1 build-check(1) blocked n/a test-armhf-armhf-xl-multivcpu 8 xen-boot fail in 181417 like 180278 test-armhf-armhf-xl 8 xen-boot fail in 181417 like 180278 test-armhf-armhf-xl-credit2 8 xen-boot fail in 181417 like 180278 test-armhf-armhf-libvirt 8 xen-boot fail in 181417 like 180278 test-armhf-armhf-xl-arndale 8 xen-boot fail in 181417 like 180278 test-armhf-armhf-examine 8 reboot fail in 181417 like 180278 test-armhf-armhf-libvirt-raw 8 xen-boot fail in 181417 like 180278 test-armhf-armhf-libvirt-qcow2 8 xen-boot fail in 181417 like 180278 test-armhf-armhf-xl-rtds 8 xen-boot fail in 181417 like 180278 test-armhf-armhf-xl-vhd 8 xen-boot fail in 181417 like 180278 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 180278 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 180278 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 180278 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 180278 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 180278 test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qcow2 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass version targeted for testing: linux b6dad5178ceaf23f369c3711062ce1f2afc33644 baseline version: linux 6c538e1adbfc696ac4747fb10d63e704344f763d Last test of basis 180278 2023-04-16 19:41:46 Z 59 days Failing since 180281 2023-04-17 06:24:36 Z 58 days 112 attempts Testing same since 181417 2023-06-14 04:18:54 Z 0 days 2 attempts ------------------------------------------------------------ 2688 people touched revisions under test, not listing them all jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops fail build-i386-pvops pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl blocked test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-amd64-dom0pvh-xl-amd fail test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-freebsd11-amd64 pass test-amd64-amd64-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale blocked test-amd64-amd64-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 blocked test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 blocked test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine blocked test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt blocked test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu blocked test-amd64-amd64-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-amd64-pygrub pass test-amd64-amd64-libvirt-qcow2 pass test-armhf-armhf-libvirt-qcow2 blocked test-amd64-amd64-libvirt-raw pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw blocked test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-amd64-xl-vhd pass test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd blocked ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 341431 lines long.) From xen-devel-bounces@lists.xenproject.org Wed Jun 14 23:41:38 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 23:41:38 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549276.857718 (Exim 4.92) (envelope-from ) id 1q9a77-0001qI-49; Wed, 14 Jun 2023 23:41:21 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549276.857718; Wed, 14 Jun 2023 23:41:21 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9a76-0001qB-V3; Wed, 14 Jun 2023 23:41:20 +0000 Received: by outflank-mailman (input) for mailman id 549276; Wed, 14 Jun 2023 23:41:19 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9a75-0001q5-ER for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 23:41:19 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [2604:1380:4641:c500::1]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id f4c93df7-0b0c-11ee-b232-6b7b168915f2; Thu, 15 Jun 2023 01:41:17 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 7EABF60AB3; Wed, 14 Jun 2023 23:41:16 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 9C132C433C8; Wed, 14 Jun 2023 23:41:14 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: f4c93df7-0b0c-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1686786075; bh=4rJL0YZWzfDXmdMIt90oCDaNNdX5eTqmnR4ZJNXaTfY=; h=Date:From:To:cc:Subject:In-Reply-To:References:From; b=cs3Yvnf34PLzlBRzLPwhtedtlKpttpbPkzmsl1UeKolU7U2p7UV8s1vJqIfxgjyet vB2GvPTSrGKNhY+9cUx0KACdOJD3PHTKTiWG702FbyvdWic6a+5z6SFhWQuWvpg5Cg q+zXGfeuK5GsAm7GtKsBqXnAXMkN4dED8kN7V3Ei/7hifBdocyt4QMHmE7NfGqJmKD iE0uroJP4hVZUo8USXOMyo6k2ZvGBmnyikzjHeRq5JZZtldWvZ5ey3hCVZTlm4+Y9q hUkhIBV+ht9K5ZLfJ+HUS3xPCgCWrdDyO+qI/Ao1gJyoiY84mch291jotx6zT5HWHy FzoLiknBt/neQ== Date: Wed, 14 Jun 2023 16:41:13 -0700 (PDT) From: Stefano Stabellini X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop To: Jan Beulich cc: "xen-devel@lists.xenproject.org" , Andrew Cooper , George Dunlap , Julien Grall , Stefano Stabellini , Wei Liu , Federico Serafini Subject: Re: [PATCH] spinlock: alter inlining of _spin_lock_cb() In-Reply-To: Message-ID: References: User-Agent: Alpine 2.22 (DEB 394 2020-01-19) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII On Wed, 14 Jun 2023, Jan Beulich wrote: > To comply with Misra rule 8.10 ("An inline function shall be declared > with the static storage class"), convert what is presently > _spin_lock_cb() to an always-inline (and static) helper, while making > the function itself a thin wrapper, just like _spin_lock() is. > > While there drop the unlikely() from the callback check, and correct > indentation in _spin_lock(). > > Signed-off-by: Jan Beulich Reviewed-by: Stefano Stabellini > --- a/xen/common/spinlock.c > +++ b/xen/common/spinlock.c > @@ -304,7 +304,8 @@ static always_inline u16 observe_head(sp > return read_atomic(&t->head); > } > > -void inline _spin_lock_cb(spinlock_t *lock, void (*cb)(void *), void *data) > +static void always_inline spin_lock_common(spinlock_t *lock, > + void (*cb)(void *), void *data) > { > spinlock_tickets_t tickets = SPINLOCK_TICKET_INC; > LOCK_PROFILE_VAR; > @@ -316,7 +317,7 @@ void inline _spin_lock_cb(spinlock_t *lo > while ( tickets.tail != observe_head(&lock->tickets) ) > { > LOCK_PROFILE_BLOCK; > - if ( unlikely(cb) ) > + if ( cb ) > cb(data); > arch_lock_relax(); > } > @@ -327,7 +328,12 @@ void inline _spin_lock_cb(spinlock_t *lo > > void _spin_lock(spinlock_t *lock) > { > - _spin_lock_cb(lock, NULL, NULL); > + spin_lock_common(lock, NULL, NULL); > +} > + > +void _spin_lock_cb(spinlock_t *lock, void (*cb)(void *), void *data) > +{ > + spin_lock_common(lock, cb, data); > } > > void _spin_lock_irq(spinlock_t *lock) > From xen-devel-bounces@lists.xenproject.org Wed Jun 14 23:43:52 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 23:43:52 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549281.857727 (Exim 4.92) (envelope-from ) id 1q9a9W-0002Oc-D8; Wed, 14 Jun 2023 23:43:50 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549281.857727; Wed, 14 Jun 2023 23:43:50 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9a9W-0002OV-AV; Wed, 14 Jun 2023 23:43:50 +0000 Received: by outflank-mailman (input) for mailman id 549281; Wed, 14 Jun 2023 23:43:49 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9a9V-0002OP-OS for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 23:43:49 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 4eb2545b-0b0d-11ee-b232-6b7b168915f2; Thu, 15 Jun 2023 01:43:48 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 72F4C62DE5; Wed, 14 Jun 2023 23:43:47 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 070B0C433C8; Wed, 14 Jun 2023 23:43:45 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 4eb2545b-0b0d-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1686786226; bh=JMaitTtVtZSmRh3vCis5EXNzOM6bThQaUF9PykfQSFk=; h=Date:From:To:cc:Subject:In-Reply-To:References:From; b=mCWYM7LCQ8hf3M5ZREtbQaSt5AGBBeIvWF5tx7kGIgxOTYQ7HLbjq/0TSIxyedfoA 23lpBihjlZ2vP3i+2W5LkBXWsb6FaduV94GThbqlLiNMbcgmtRT1nKBvCgaEtLz8OR EGDCnoXdZGMUgbEeK/6YHqjNoJE/xma7K4E4ep7jivInF17kARWlX7PT0XM1n8u+x1 I4XYkwZF0w5lmzatU1tDnqLBuTR4fFt5avAu2MwbXt/PEEt6KpYs+DpFyi1beImY+F uj438yHlFggUmGxpCIYaZWt4q0fLTNRyaQpc4UcVT8YoSloyhF6S7uE7dmRKn5KuBt ZU/hyfXvFxXYw== Date: Wed, 14 Jun 2023 16:43:44 -0700 (PDT) From: Stefano Stabellini X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop To: Jan Beulich cc: "xen-devel@lists.xenproject.org" , Julien Grall , Stefano Stabellini , Volodymyr Babchuk , Bertrand Marquis Subject: Re: [PATCH] Arm: drop bogus ALIGN() from linker script In-Reply-To: <303b0288-d372-315b-16f9-4116d7f478fc@suse.com> Message-ID: References: <303b0288-d372-315b-16f9-4116d7f478fc@suse.com> User-Agent: Alpine 2.22 (DEB 394 2020-01-19) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII On Wed, 14 Jun 2023, Jan Beulich wrote: > Having ALIGN() inside a section definition usually makes sense only with > a label definition following (an exception case is a few lines out of > context, where cache line sharing is intended to be avoided). > Constituents of .bss.page_aligned need to specify their own alignment > correctly anyway, or else they're susceptible to link order changing. > This requirement is already met: Arm-specific code has no such object, > while common (EFI) code has another one. That one has suitable alignment > specified. > > Signed-off-by: Jan Beulich Acked-by: Stefano Stabellini > --- > Note how RISC-V had this dropped pretty recently. > > --- a/xen/arch/arm/xen.lds.S > +++ b/xen/arch/arm/xen.lds.S > @@ -199,7 +199,6 @@ SECTIONS > .bss : { /* BSS */ > __bss_start = .; > *(.bss.stack_aligned) > - . = ALIGN(PAGE_SIZE); > *(.bss.page_aligned) > . = ALIGN(PAGE_SIZE); > __per_cpu_start = .; > From xen-devel-bounces@lists.xenproject.org Wed Jun 14 23:46:43 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 14 Jun 2023 23:46:43 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549288.857737 (Exim 4.92) (envelope-from ) id 1q9aCA-00033w-VT; Wed, 14 Jun 2023 23:46:34 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549288.857737; Wed, 14 Jun 2023 23:46:34 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9aCA-00033p-RW; Wed, 14 Jun 2023 23:46:34 +0000 Received: by outflank-mailman (input) for mailman id 549288; Wed, 14 Jun 2023 23:46:34 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9aC9-00033j-W5 for xen-devel@lists.xenproject.org; Wed, 14 Jun 2023 23:46:33 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id b080dd42-0b0d-11ee-b232-6b7b168915f2; Thu, 15 Jun 2023 01:46:32 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 94AB7615A3; Wed, 14 Jun 2023 23:46:31 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 2E0DDC433C8; Wed, 14 Jun 2023 23:46:30 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: b080dd42-0b0d-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1686786391; bh=HpKLqdnjWDm302nVPGFAlDgx3gn4KUxpuiUVYrMLD7c=; h=Date:From:To:cc:Subject:In-Reply-To:References:From; b=NltPxSMBr0h/nOl6+KtMjWmUzDURXFNe6YP/rZ4qrmee9GTIQSqW9d8q/CF22sgPm zsGTwME7euloDK1L4iYbpVPHh/U2VGz+1sbgjO0Ca+Nl48xA9kCuFLfkBnHBrVWwGV PW5sNTJ6CYrgOQECf4G34IbFI5l4BaOpdxpYIpddIpDD/PupO+0X0DZqxWW8sF8utw vlE5B731q/QSKwTEfnTfwYSH6NzD1rWkl4z2WfuOvihsIptjn31czXdKhogRQIddQw BtV6fCRiG0BMEIVMG3v6OtdbJ/ytNXwpGcTqhB+ErgjfzWNhxjFWc85WeNgBt46vza z2YsdyGbC6unw== Date: Wed, 14 Jun 2023 16:46:28 -0700 (PDT) From: Stefano Stabellini X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop To: Michal Orzel cc: xen-devel@lists.xenproject.org, Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk Subject: Re: [PATCH] xen/arm: Remove stray semicolon at VREG_REG_HELPERS/TLB_HELPER* callers In-Reply-To: <20230614094144.9533-1-michal.orzel@amd.com> Message-ID: References: <20230614094144.9533-1-michal.orzel@amd.com> User-Agent: Alpine 2.22 (DEB 394 2020-01-19) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII On Wed, 14 Jun 2023, Michal Orzel wrote: > This is inconsistent with the rest of the code where macros are used > to define functions, as it results in an empty declaration (i.e. > semicolon with nothing before it) after function definition. This is also > not allowed by C99. > > Take the opportunity to undefine TLB_HELPER* macros after last use. > > Signed-off-by: Michal Orzel Reviewed-by: Stefano Stabellini > --- > Discussion: > https://lore.kernel.org/xen-devel/17C59D5C-795E-4591-A7C9-A4C5179BF373@arm.com/ > > Other empty declarations appear at callers of TYPE_SAFE and Linux module > macros like EXPORT_SYMBOL for which we need some sort of agreement. > --- > xen/arch/arm/include/asm/arm32/flushtlb.h | 12 +++++++----- > xen/arch/arm/include/asm/arm64/flushtlb.h | 17 ++++++++++------- > xen/arch/arm/include/asm/vreg.h | 4 ++-- > 3 files changed, 19 insertions(+), 14 deletions(-) > > diff --git a/xen/arch/arm/include/asm/arm32/flushtlb.h b/xen/arch/arm/include/asm/arm32/flushtlb.h > index 7ae6a12f8155..22ee3b317b4d 100644 > --- a/xen/arch/arm/include/asm/arm32/flushtlb.h > +++ b/xen/arch/arm/include/asm/arm32/flushtlb.h > @@ -29,19 +29,21 @@ static inline void name(void) \ > } > > /* Flush local TLBs, current VMID only */ > -TLB_HELPER(flush_guest_tlb_local, TLBIALL, nsh); > +TLB_HELPER(flush_guest_tlb_local, TLBIALL, nsh) > > /* Flush inner shareable TLBs, current VMID only */ > -TLB_HELPER(flush_guest_tlb, TLBIALLIS, ish); > +TLB_HELPER(flush_guest_tlb, TLBIALLIS, ish) > > /* Flush local TLBs, all VMIDs, non-hypervisor mode */ > -TLB_HELPER(flush_all_guests_tlb_local, TLBIALLNSNH, nsh); > +TLB_HELPER(flush_all_guests_tlb_local, TLBIALLNSNH, nsh) > > /* Flush innershareable TLBs, all VMIDs, non-hypervisor mode */ > -TLB_HELPER(flush_all_guests_tlb, TLBIALLNSNHIS, ish); > +TLB_HELPER(flush_all_guests_tlb, TLBIALLNSNHIS, ish) > > /* Flush all hypervisor mappings from the TLB of the local processor. */ > -TLB_HELPER(flush_xen_tlb_local, TLBIALLH, nsh); > +TLB_HELPER(flush_xen_tlb_local, TLBIALLH, nsh) > + > +#undef TLB_HELPER > > /* Flush TLB of local processor for address va. */ > static inline void __flush_xen_tlb_one_local(vaddr_t va) > diff --git a/xen/arch/arm/include/asm/arm64/flushtlb.h b/xen/arch/arm/include/asm/arm64/flushtlb.h > index 3a9092b814a9..56c6fc763b56 100644 > --- a/xen/arch/arm/include/asm/arm64/flushtlb.h > +++ b/xen/arch/arm/include/asm/arm64/flushtlb.h > @@ -67,25 +67,28 @@ static inline void name(vaddr_t va) \ > } > > /* Flush local TLBs, current VMID only. */ > -TLB_HELPER(flush_guest_tlb_local, vmalls12e1, nsh); > +TLB_HELPER(flush_guest_tlb_local, vmalls12e1, nsh) > > /* Flush innershareable TLBs, current VMID only */ > -TLB_HELPER(flush_guest_tlb, vmalls12e1is, ish); > +TLB_HELPER(flush_guest_tlb, vmalls12e1is, ish) > > /* Flush local TLBs, all VMIDs, non-hypervisor mode */ > -TLB_HELPER(flush_all_guests_tlb_local, alle1, nsh); > +TLB_HELPER(flush_all_guests_tlb_local, alle1, nsh) > > /* Flush innershareable TLBs, all VMIDs, non-hypervisor mode */ > -TLB_HELPER(flush_all_guests_tlb, alle1is, ish); > +TLB_HELPER(flush_all_guests_tlb, alle1is, ish) > > /* Flush all hypervisor mappings from the TLB of the local processor. */ > -TLB_HELPER(flush_xen_tlb_local, alle2, nsh); > +TLB_HELPER(flush_xen_tlb_local, alle2, nsh) > > /* Flush TLB of local processor for address va. */ > -TLB_HELPER_VA(__flush_xen_tlb_one_local, vae2); > +TLB_HELPER_VA(__flush_xen_tlb_one_local, vae2) > > /* Flush TLB of all processors in the inner-shareable domain for address va. */ > -TLB_HELPER_VA(__flush_xen_tlb_one, vae2is); > +TLB_HELPER_VA(__flush_xen_tlb_one, vae2is) > + > +#undef TLB_HELPER > +#undef TLB_HELPER_VA > > #endif /* __ASM_ARM_ARM64_FLUSHTLB_H__ */ > /* > diff --git a/xen/arch/arm/include/asm/vreg.h b/xen/arch/arm/include/asm/vreg.h > index d92450017bc4..bf945eebbde4 100644 > --- a/xen/arch/arm/include/asm/vreg.h > +++ b/xen/arch/arm/include/asm/vreg.h > @@ -140,8 +140,8 @@ static inline void vreg_reg##sz##_clearbits(uint##sz##_t *reg, \ > *reg &= ~(((uint##sz##_t)bits & mask) << shift); \ > } > > -VREG_REG_HELPERS(64, 0x7); > -VREG_REG_HELPERS(32, 0x3); > +VREG_REG_HELPERS(64, 0x7) > +VREG_REG_HELPERS(32, 0x3) > > #undef VREG_REG_HELPERS > > > base-commit: 2f69ef96801f0d2b9646abf6396e60f99c56e3a0 > -- > 2.25.1 > From xen-devel-bounces@lists.xenproject.org Thu Jun 15 00:05:01 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 15 Jun 2023 00:05:01 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549301.857747 (Exim 4.92) (envelope-from ) id 1q9aTg-00066r-O3; Thu, 15 Jun 2023 00:04:40 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549301.857747; Thu, 15 Jun 2023 00:04:40 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9aTg-00066k-LO; Thu, 15 Jun 2023 00:04:40 +0000 Received: by outflank-mailman (input) for mailman id 549301; Thu, 15 Jun 2023 00:04:39 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9aTf-00066e-Jk for xen-devel@lists.xenproject.org; Thu, 15 Jun 2023 00:04:39 +0000 Received: from NAM11-CO1-obe.outbound.protection.outlook.com (mail-co1nam11on20619.outbound.protection.outlook.com [2a01:111:f400:7eab::619]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 35d4c57a-0b10-11ee-8611-37d641c3527e; Thu, 15 Jun 2023 02:04:36 +0200 (CEST) Received: from SA0PR11CA0032.namprd11.prod.outlook.com (2603:10b6:806:d0::7) by SJ2PR12MB8941.namprd12.prod.outlook.com (2603:10b6:a03:542::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.29; Thu, 15 Jun 2023 00:04:32 +0000 Received: from SN1PEPF0002636C.namprd02.prod.outlook.com (2603:10b6:806:d0:cafe::81) by SA0PR11CA0032.outlook.office365.com (2603:10b6:806:d0::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.38 via Frontend Transport; Thu, 15 Jun 2023 00:04:31 +0000 Received: from SATLEXMB03.amd.com (165.204.84.17) by SN1PEPF0002636C.mail.protection.outlook.com (10.167.241.137) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6500.27 via Frontend Transport; Thu, 15 Jun 2023 00:04:31 +0000 Received: from SATLEXMB08.amd.com (10.181.40.132) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Wed, 14 Jun 2023 19:04:28 -0500 Received: from SATLEXMB04.amd.com (10.181.40.145) by SATLEXMB08.amd.com (10.181.40.132) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Wed, 14 Jun 2023 17:04:28 -0700 Received: from xsjfnuv50.xilinx.com (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server id 15.1.2507.23 via Frontend Transport; Wed, 14 Jun 2023 19:04:27 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 35d4c57a-0b10-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=g/qta4WYWXT02KogmyjfQQpRKsyTRszJrDON3IJ0SeXQsHQTRghisuwZWFiBoDVupk7R9qyTjrOa4tMxiPIyBa/sNnrPJNmSNEtO4SUxaF9z0U3WG7TTi2U1CKoHolIu2szQq4+FlHECiju7sxsqI2b+pzrGHXhoehuuRNtQp8fBX98SOxkwpFWaVbyLjFD1zJNokj1Mdks3dfE8JdXSYew8XzXjERZnSEuERvSx+1piK4GgFlClCah0H5JdWkc9UQOTKD70NBD1nsZGaxKV+uet9lwPzJ00C6HmkAePvqAjyVuNWVmXnbfUn+pcxf74Ou1kPOA6fZ2yJHOm7OlpGQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=+esgy4HuztqSu8ROePQWFE/nHzxIBFggZqfdRu8CEMM=; b=j/7OMMSkJVV2YMpqSY+J0HclyzhCHV6omdoZZq2UC/du9E9pDNHO2FSfy4Bb2lRUzUVpWbAZ1V8AwWiKB0mMdt7MfB40LiQZIVTHPFfrpkLcclstcMJ8/vGBfCSjQ/wE+VTFWfgPixV3XoMPdRrpjj2KnUoSbAoB1FPnXPIj2nW8JH3CmoIhsCP82DC+wobOIbk1JR6nqaYpnr0iym8K6Lq2XadMWaA9dAxwOt+v3+76XPuoz45ypV5dvsTu3DAIvpEs5qerkwYuv34GASxrsPw1ciWv2VtYjwA/aHv3bHZ/6/9NoVQdaZImLoRRl/zDWYca3UZZbJZJF1pQtB2tkg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=nongnu.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=+esgy4HuztqSu8ROePQWFE/nHzxIBFggZqfdRu8CEMM=; b=gCHYgMNfnXSjBSgQHMf/oiXTef1nJOk7eqq1vh4Bm1i0jcAWvtHgj84Iv6STH2rIYyAKyBbVPsJYjQvZV5Od/xKiydwMU2RUG4n/WMeKC8NGsZmlnMr9i6n7tsTyQTDxh/TlQhb8H4DK4V/msLis2mGiJgajA5+d9sF6KjgPqFY= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C From: Vikram Garhwal To: CC: , Vikram Garhwal , Stefano Stabellini , Anthony Perard , Paul Durrant , "Michael S. Tsirkin" , Marcel Apfelbaum , Paolo Bonzini , Richard Henderson , Eduardo Habkost , "open list:X86 Xen CPUs" Subject: [QEMU][PATCH v8 02/11] hw/i386/xen: rearrange xen_hvm_init_pc Date: Wed, 14 Jun 2023 17:03:30 -0700 Message-ID: <20230615000340.1135-3-vikram.garhwal@amd.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20230615000340.1135-1-vikram.garhwal@amd.com> References: <20230615000340.1135-1-vikram.garhwal@amd.com> MIME-Version: 1.0 Content-Type: text/plain X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SN1PEPF0002636C:EE_|SJ2PR12MB8941:EE_ X-MS-Office365-Filtering-Correlation-Id: b09b3bdf-e70e-46e4-7dae-08db6d341839 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 9jsnC67hpUXGZWke6fRSpm7C1mDgAs5mVsc7mjh3Wh+L4Y329hHXu8ORYBqqqdS3BpDRV5KcOKtOdL75wJggEuzeBWZVho/cHaQ/MDzj3BXzvOS2glbVtQTKsIkNGK+r8U+sdm1xGo7zIU0dWFHXeXrm6+/Ij8GVECWgLjsKhjoN+xfcowBWSeLc86NcvgfMMBzp5cifF5hAhMkV4tybyAtmmf5H1JqpRRgv04OZMat/QsdJOl/arQxi0lxNfAKrXoF8PAvNn1totMCSSFPxLmxSjPIZR3TcQ6W6Uu4J2L78Ga4Fb44mEY0HYvEKWCqM6syniq1nopVHteLvuBGM8EImS38mHd9AhkDKVTEyvXUGM/teEezE1S7xvei33BRbO/dNOw3wWQ2VcgI6d3MCSlYNoxacdwP+lnxr7t15TG1T+ng7QVam7vKXNmz8maQ48cFOB2fymhA/5lJbNYBttD2t9o4FBtF1nyEzLUqxEbEdmT4/A9HhtNeONyUxvVQnhXkhxzuG85seJQGh3Tvd2ArFCDctyTUd+88gGXf9FG6KMiuULXY2Q5vaQvskZnXOJF11ZYaNPZl0nuTq6K+pmSpcsL0370SRmOJT7hBLweLvzdQJw9fpm12eBpJGqR3PE8oPL9L0ssxlFM+5SO8/FBUWehoV05eUGrTsLT/8hi80TtmFtTEFgYh7IVDcF998wII9fRTTLcKZlQO7gu6P5TOG5XiyEsnN/bVN4Hh/TnXBj893M5JstlNp6ebtlkGxS97wZG6TxL7I+MgD7VGm4A== X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(346002)(39860400002)(136003)(376002)(396003)(451199021)(46966006)(40470700004)(36840700001)(70586007)(4326008)(70206006)(8936002)(8676002)(5660300002)(36756003)(6666004)(6916009)(478600001)(54906003)(41300700001)(40480700001)(40460700003)(316002)(81166007)(82740400003)(356005)(186003)(1076003)(7416002)(47076005)(26005)(86362001)(36860700001)(44832011)(2616005)(336012)(426003)(83380400001)(82310400005)(2906002)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Jun 2023 00:04:31.4423 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: b09b3bdf-e70e-46e4-7dae-08db6d341839 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com] X-MS-Exchange-CrossTenant-AuthSource: SN1PEPF0002636C.namprd02.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ2PR12MB8941 In preparation to moving most of xen-hvm code to an arch-neutral location, move non IOREQ references to: - xen_get_vmport_regs_pfn - xen_suspend_notifier - xen_wakeup_notifier - xen_ram_init towards the end of the xen_hvm_init_pc() function. This is done to keep the common ioreq functions in one place which will be moved to new function in next patch in order to make it common to both x86 and aarch64 machines. Signed-off-by: Vikram Garhwal Signed-off-by: Stefano Stabellini Reviewed-by: Paul Durrant --- hw/i386/xen/xen-hvm.c | 49 ++++++++++++++++++++++--------------------- 1 file changed, 25 insertions(+), 24 deletions(-) diff --git a/hw/i386/xen/xen-hvm.c b/hw/i386/xen/xen-hvm.c index ab8f1b61ee..7a7764240e 100644 --- a/hw/i386/xen/xen-hvm.c +++ b/hw/i386/xen/xen-hvm.c @@ -1419,12 +1419,6 @@ void xen_hvm_init_pc(PCMachineState *pcms, MemoryRegion **ram_memory) state->exit.notify = xen_exit_notifier; qemu_add_exit_notifier(&state->exit); - state->suspend.notify = xen_suspend_notifier; - qemu_register_suspend_notifier(&state->suspend); - - state->wakeup.notify = xen_wakeup_notifier; - qemu_register_wakeup_notifier(&state->wakeup); - /* * Register wake-up support in QMP query-current-machine API */ @@ -1435,23 +1429,6 @@ void xen_hvm_init_pc(PCMachineState *pcms, MemoryRegion **ram_memory) goto err; } - rc = xen_get_vmport_regs_pfn(xen_xc, xen_domid, &ioreq_pfn); - if (!rc) { - DPRINTF("shared vmport page at pfn %lx\n", ioreq_pfn); - state->shared_vmport_page = - xenforeignmemory_map(xen_fmem, xen_domid, PROT_READ|PROT_WRITE, - 1, &ioreq_pfn, NULL); - if (state->shared_vmport_page == NULL) { - error_report("map shared vmport IO page returned error %d handle=%p", - errno, xen_xc); - goto err; - } - } else if (rc != -ENOSYS) { - error_report("get vmport regs pfn returned error %d, rc=%d", - errno, rc); - goto err; - } - /* Note: cpus is empty at this point in init */ state->cpu_by_vcpu_id = g_new0(CPUState *, max_cpus); @@ -1490,7 +1467,6 @@ void xen_hvm_init_pc(PCMachineState *pcms, MemoryRegion **ram_memory) #else xen_map_cache_init(NULL, state); #endif - xen_ram_init(pcms, ms->ram_size, ram_memory); qemu_add_vm_change_state_handler(xen_hvm_change_state_handler, state); @@ -1511,6 +1487,31 @@ void xen_hvm_init_pc(PCMachineState *pcms, MemoryRegion **ram_memory) QLIST_INIT(&xen_physmap); xen_read_physmap(state); + state->suspend.notify = xen_suspend_notifier; + qemu_register_suspend_notifier(&state->suspend); + + state->wakeup.notify = xen_wakeup_notifier; + qemu_register_wakeup_notifier(&state->wakeup); + + rc = xen_get_vmport_regs_pfn(xen_xc, xen_domid, &ioreq_pfn); + if (!rc) { + DPRINTF("shared vmport page at pfn %lx\n", ioreq_pfn); + state->shared_vmport_page = + xenforeignmemory_map(xen_fmem, xen_domid, PROT_READ|PROT_WRITE, + 1, &ioreq_pfn, NULL); + if (state->shared_vmport_page == NULL) { + error_report("map shared vmport IO page returned error %d handle=%p", + errno, xen_xc); + goto err; + } + } else if (rc != -ENOSYS) { + error_report("get vmport regs pfn returned error %d, rc=%d", + errno, rc); + goto err; + } + + xen_ram_init(pcms, ms->ram_size, ram_memory); + /* Disable ACPI build because Xen handles it */ pcms->acpi_build_enabled = false; -- 2.17.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 15 00:05:06 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 15 Jun 2023 00:05:06 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549302.857757 (Exim 4.92) (envelope-from ) id 1q9aU6-0006Vj-0T; Thu, 15 Jun 2023 00:05:06 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549302.857757; Thu, 15 Jun 2023 00:05:05 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9aU5-0006VZ-Tz; Thu, 15 Jun 2023 00:05:05 +0000 Received: by outflank-mailman (input) for mailman id 549302; Thu, 15 Jun 2023 00:05:05 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9aU5-0006Ty-7E for xen-devel@lists.xenproject.org; Thu, 15 Jun 2023 00:05:05 +0000 Received: from NAM11-DM6-obe.outbound.protection.outlook.com (mail-dm6nam11on20619.outbound.protection.outlook.com [2a01:111:f400:7eaa::619]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 469b7c6b-0b10-11ee-b232-6b7b168915f2; Thu, 15 Jun 2023 02:05:03 +0200 (CEST) Received: from MW4PR04CA0271.namprd04.prod.outlook.com (2603:10b6:303:89::6) by SA1PR12MB6969.namprd12.prod.outlook.com (2603:10b6:806:24c::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.29; Thu, 15 Jun 2023 00:05:00 +0000 Received: from CO1NAM11FT022.eop-nam11.prod.protection.outlook.com (2603:10b6:303:89:cafe::fd) by MW4PR04CA0271.outlook.office365.com (2603:10b6:303:89::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.37 via Frontend Transport; Thu, 15 Jun 2023 00:05:00 +0000 Received: from SATLEXMB04.amd.com (165.204.84.17) by CO1NAM11FT022.mail.protection.outlook.com (10.13.175.199) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6500.25 via Frontend Transport; Thu, 15 Jun 2023 00:04:30 +0000 Received: from SATLEXMB05.amd.com (10.181.40.146) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Wed, 14 Jun 2023 19:04:27 -0500 Received: from SATLEXMB04.amd.com (10.181.40.145) by SATLEXMB05.amd.com (10.181.40.146) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Wed, 14 Jun 2023 19:03:55 -0500 Received: from xsjfnuv50.xilinx.com (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server id 15.1.2507.23 via Frontend Transport; Wed, 14 Jun 2023 19:03:55 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 469b7c6b-0b10-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=ER2yf5I9umHz63PNCorqZKGXapXaeDX2XJJZaLw/XDpXsWbPnpoePZ/NM6w8ZpwIaEV890ElfJm2lUK3VbTuREtZufOznHXZ4s2nkcvJz8sTf5v1HJ0u49xcAHtO1r1ljGcKmb9Q5UxWaOcn26owZopsulGYzhgOrLX+OjyBZiHOaviXWE/nHVqXKHQuULVZUUYnJSirX/LzBXbC8X4WS+iYPMkju3VZ4vjgfKyY7tQto/EpQC7AB+sFiM3mOM7pmwDMhZoTfLqpkScgS+IoLjIXglzfSXfInJ11ak3xoggpVy2HIJR2YlVEBdVJyV3jzE8iZeINWuYy6p82awnuAA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=FR4BawIl2nyLOoaRXHWpiEutGsBER4awTYitO3dxACs=; b=iw5299sIwsEPhUBXMO5q5LpvXBgceQh8C/YvvSm/o6jO+BuO2rNe6spreb3DOKfQ1HQfz98yJfh46Iy5rJ1XWwIOl168sMehKGeDHoNQvnyNWFsKejBkNKuE4O/Q/hJm5Jm20j1exppnbalmefD8v3rSOtxDytK5SJB+1b6vCCe6TS14x6YfYnhiOPUB6WEBb3TTo71058rXJ5N6nmfJ5+vjPnaYWqhf4m5GKD7fsG6QLWZ1fnTssyjOxaF05V7d5Bs5fbtUpqxrJFTCLY0+eUYZdX5hIg2zXT79AixN5t8H2ElP7Iz3LSW98Wx2pQbl6HQD4CwYHWXvc/XnrMdbaQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=nongnu.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=FR4BawIl2nyLOoaRXHWpiEutGsBER4awTYitO3dxACs=; b=G80Ir7+qKGAeT6VzGg4HMVWr7pS6LGUOYhDKBSCpFeXKbT9+e5r8FSWcybf9AWRegyGaio1+XjW0sunbtn3/8ApWaKbMhYdQ8lBg7X5zyrgMjk63Xf1EGiuh5ib5N954eTAqBLzwhXReKa825aiYkREZqeLvdGnb3c8F6yB27HE= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C From: Vikram Garhwal To: CC: , Vikram Garhwal , Stefano Stabellini , Paolo Bonzini , Richard Henderson , Eduardo Habkost , "Michael S. Tsirkin" , Marcel Apfelbaum , Anthony Perard , Paul Durrant , "open list:X86 Xen CPUs" Subject: [QEMU][PATCH v8 01/11] hw/i386/xen/: move xen-mapcache.c to hw/xen/ Date: Wed, 14 Jun 2023 17:03:29 -0700 Message-ID: <20230615000340.1135-2-vikram.garhwal@amd.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20230615000340.1135-1-vikram.garhwal@amd.com> References: <20230615000340.1135-1-vikram.garhwal@amd.com> MIME-Version: 1.0 Content-Type: text/plain X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO1NAM11FT022:EE_|SA1PR12MB6969:EE_ X-MS-Office365-Filtering-Correlation-Id: e5ff215b-b21f-46e6-d087-08db6d3428b5 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 0FIX13yuapYmFOj6gXBvTq20lycg/oMtM4HGdh6knZwiFgojlya4EbSiC6lijn5NiBfN1SMliwPbR0rqfcTR820RQkmciQHtn/IO7I1KmVGiUchC1UTf6ZlgI2CGEcN5mlSLDeabCAlSr5V5DFKK4ibUqgB5TEE/35o09sqF77GdDuFn+FTR3+gl7P7qPsiPf7wHQ3cOehtDMQtMMjXWUAm+0gDCif3otockWPMZS4RtMXml+iAkmrVLwZxSKSQ4lW/NicwV1QeggxiwUQhoDa+RqwLNKuHtzusYX/4JXS0hu6pxMZv8+zAOof4QQhM82Offz7sg9Za73GVQIK24icXjsbcBvf6+hajfnizmPKQexbVWTS36h6y76vn2L1ipHH40QhdtLo1LbZR5Vmsk3uYlQ26vcbtOrpQsTuBysXnGne/JTiqas5yzmXCSlHgTTA1fYGoMxN57lWq+BdBTmGZJjmJEjs/3AvK6bsmzmcnob6ahNQ1rv8nACsaICFPtKqv8qUeWW9yKV2NLdIoUor4wExwhaATwORz4LGL7gdDDBB9m5s+fPDDeXHXi8vMyBuW2BEnQ7djYPJhs+CWnyNDATZoVzIafFOe/j/NGOuxXwkuoeE7Z2dSOn+vcaCTW6k1smqvZ9sIkIkSHAJ4g0WTEuORa75DN84qHemFbI/fXXHK8zhHtEk/gahLVO3Joxbh2WpO3S9PAYhC61+C643Oal+1Kb6la2l1lxtaTW1CPD2CNr0rQ2QSdphceKfRQXe5G28HQfnnQ//mQqwvQUw== X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(136003)(346002)(376002)(396003)(451199021)(36840700001)(40470700004)(46966006)(36756003)(86362001)(47076005)(478600001)(4326008)(6666004)(316002)(6916009)(54906003)(70206006)(70586007)(356005)(7416002)(8676002)(5660300002)(82310400005)(40480700001)(8936002)(44832011)(41300700001)(2616005)(2906002)(82740400003)(426003)(186003)(26005)(81166007)(1076003)(83380400001)(36860700001)(336012)(40460700003)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Jun 2023 00:04:30.5239 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: e5ff215b-b21f-46e6-d087-08db6d3428b5 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com] X-MS-Exchange-CrossTenant-AuthSource: CO1NAM11FT022.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA1PR12MB6969 xen-mapcache.c contains common functions which can be used for enabling Xen on aarch64 with IOREQ handling. Moving it out from hw/i386/xen to hw/xen to make it accessible for both aarch64 and x86. Signed-off-by: Vikram Garhwal Signed-off-by: Stefano Stabellini Reviewed-by: Paul Durrant --- hw/i386/meson.build | 1 + hw/i386/xen/meson.build | 1 - hw/i386/xen/trace-events | 5 ----- hw/xen/meson.build | 4 ++++ hw/xen/trace-events | 5 +++++ hw/{i386 => }/xen/xen-mapcache.c | 0 6 files changed, 10 insertions(+), 6 deletions(-) rename hw/{i386 => }/xen/xen-mapcache.c (100%) diff --git a/hw/i386/meson.build b/hw/i386/meson.build index 213e2e82b3..cfdbfdcbcb 100644 --- a/hw/i386/meson.build +++ b/hw/i386/meson.build @@ -33,5 +33,6 @@ subdir('kvm') subdir('xen') i386_ss.add_all(xenpv_ss) +i386_ss.add_all(xen_ss) hw_arch += {'i386': i386_ss} diff --git a/hw/i386/xen/meson.build b/hw/i386/xen/meson.build index 2e64a34e16..3dc4c4f106 100644 --- a/hw/i386/xen/meson.build +++ b/hw/i386/xen/meson.build @@ -1,6 +1,5 @@ i386_ss.add(when: 'CONFIG_XEN', if_true: files( 'xen-hvm.c', - 'xen-mapcache.c', 'xen_apic.c', 'xen_pvdevice.c', )) diff --git a/hw/i386/xen/trace-events b/hw/i386/xen/trace-events index 5d6be61090..a0c89d91c4 100644 --- a/hw/i386/xen/trace-events +++ b/hw/i386/xen/trace-events @@ -21,8 +21,3 @@ xen_map_resource_ioreq(uint32_t id, void *addr) "id: %u addr: %p" cpu_ioreq_config_read(void *req, uint32_t sbdf, uint32_t reg, uint32_t size, uint32_t data) "I/O=%p sbdf=0x%x reg=%u size=%u data=0x%x" cpu_ioreq_config_write(void *req, uint32_t sbdf, uint32_t reg, uint32_t size, uint32_t data) "I/O=%p sbdf=0x%x reg=%u size=%u data=0x%x" -# xen-mapcache.c -xen_map_cache(uint64_t phys_addr) "want 0x%"PRIx64 -xen_remap_bucket(uint64_t index) "index 0x%"PRIx64 -xen_map_cache_return(void* ptr) "%p" - diff --git a/hw/xen/meson.build b/hw/xen/meson.build index 19c6aabc7c..202752e557 100644 --- a/hw/xen/meson.build +++ b/hw/xen/meson.build @@ -26,3 +26,7 @@ else endif specific_ss.add_all(when: ['CONFIG_XEN', xen], if_true: xen_specific_ss) + +xen_ss = ss.source_set() + +xen_ss.add(when: 'CONFIG_XEN', if_true: files('xen-mapcache.c')) diff --git a/hw/xen/trace-events b/hw/xen/trace-events index 55c9e1df68..f977c7c8c6 100644 --- a/hw/xen/trace-events +++ b/hw/xen/trace-events @@ -41,3 +41,8 @@ xs_node_vprintf(char *path, char *value) "%s %s" xs_node_vscanf(char *path, char *value) "%s %s" xs_node_watch(char *path) "%s" xs_node_unwatch(char *path) "%s" + +# xen-mapcache.c +xen_map_cache(uint64_t phys_addr) "want 0x%"PRIx64 +xen_remap_bucket(uint64_t index) "index 0x%"PRIx64 +xen_map_cache_return(void* ptr) "%p" diff --git a/hw/i386/xen/xen-mapcache.c b/hw/xen/xen-mapcache.c similarity index 100% rename from hw/i386/xen/xen-mapcache.c rename to hw/xen/xen-mapcache.c -- 2.17.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 15 00:05:16 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 15 Jun 2023 00:05:16 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549307.857766 (Exim 4.92) (envelope-from ) id 1q9aUG-0006tu-BU; Thu, 15 Jun 2023 00:05:16 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549307.857766; Thu, 15 Jun 2023 00:05:16 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9aUG-0006tn-8H; Thu, 15 Jun 2023 00:05:16 +0000 Received: by outflank-mailman (input) for mailman id 549307; Thu, 15 Jun 2023 00:05:14 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9aUE-0006qD-IK for xen-devel@lists.xenproject.org; Thu, 15 Jun 2023 00:05:14 +0000 Received: from NAM12-MW2-obe.outbound.protection.outlook.com (mail-mw2nam12on20620.outbound.protection.outlook.com [2a01:111:f400:fe5a::620]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 4c4f6117-0b10-11ee-8611-37d641c3527e; Thu, 15 Jun 2023 02:05:12 +0200 (CEST) Received: from MW4PR04CA0280.namprd04.prod.outlook.com (2603:10b6:303:89::15) by CH3PR12MB7689.namprd12.prod.outlook.com (2603:10b6:610:14d::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.37; Thu, 15 Jun 2023 00:05:08 +0000 Received: from CO1NAM11FT080.eop-nam11.prod.protection.outlook.com (2603:10b6:303:89:cafe::6a) by MW4PR04CA0280.outlook.office365.com (2603:10b6:303:89::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.37 via Frontend Transport; Thu, 15 Jun 2023 00:05:07 +0000 Received: from SATLEXMB04.amd.com (165.204.84.17) by CO1NAM11FT080.mail.protection.outlook.com (10.13.174.99) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6500.23 via Frontend Transport; Thu, 15 Jun 2023 00:05:07 +0000 Received: from SATLEXMB08.amd.com (10.181.40.132) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Wed, 14 Jun 2023 19:04:59 -0500 Received: from SATLEXMB04.amd.com (10.181.40.145) by SATLEXMB08.amd.com (10.181.40.132) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Wed, 14 Jun 2023 17:04:35 -0700 Received: from xsjfnuv50.xilinx.com (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server id 15.1.2507.23 via Frontend Transport; Wed, 14 Jun 2023 19:04:34 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 4c4f6117-0b10-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=FgesDFrY7d8EJyIidvb3+4+X0SEXctsxrwiyh+UdHHyDHYerjVojHlz00XrXgWAVExwFSnlBAoGSGkXLjZsRUA3ATWNbzBKtz2G/KZp2cIpi9xpxEz1YnbYMgOXCAn+zQWVkYipdaO5q3YupNrIQ760JBT4bBGtR+k1gUsoVHh1YS8ZS9nhtXkOVOkWYwZOlFgFjGBUOFGXfNQE4OUAfvlNxhSTdQLyCMvjSZm851utUEp6YEo056t4tXAs9yvlimchaxCrpmW2pMcYgHx9zLdAcMncaH7JMmnaks5p5IXca/s/M8xGaOuTLaZJt8gonUdeZzARW1TA54bL6ZWJJrA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=vvGrcK9HtrPihux4sSLpgxCYMLGl2A40aqt4BVUc2ZM=; b=oBQuJrIA8NkAa0Ds7peXPtmrLTPTJtdhPoBHtAvgM7cqUc/uLMDNmG2Oej9QCyflM2mZrLeEMiOpWUFpkujI1oPXL/ZZlOCXT7RzJPwkslG+IbfcXTuEYitE/LieAWpKPmGpQRiplSDB2UWhO59TzRhDIlAjTvO5af1upIBGLM1PRzj878FHJD4E74SCB52KUlEe5zq7e5AAWIF2WP+zRhnF0bmyoIJCxBJ/L/xN5BscEVxYxXSh3gj0LqepevsvJSeami8Vz/Ns3S6XuJ3LNgq0HVC7TAsKrhokfnVvkABeB2urseEmZwICmdjCwd6GLF+OQJmie+Mh/6d8ld4ZsQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=nongnu.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=vvGrcK9HtrPihux4sSLpgxCYMLGl2A40aqt4BVUc2ZM=; b=YWjiFpLFwLLqr7CE6EY7aAMAcAiHxxOl0s3kq7J0AElXaKmK13q96d+rhhjnTC32XkQrUfTbXUqYGqzAlcgFfEro5Z1hoUKLOygweakSks2TDxENJDbSHLTGFWeYyG6RUewW0pLVG/Xq3kQ1p+/Aud5cWqLk7BdvNyj4jZD6qmI= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C From: Vikram Garhwal To: CC: , Stefano Stabellini , Vikram Garhwal , Anthony Perard , Paul Durrant , "Michael S. Tsirkin" , Marcel Apfelbaum , Paolo Bonzini , Richard Henderson , Eduardo Habkost , "open list:X86 Xen CPUs" Subject: [QEMU][PATCH v8 03/11] hw/i386/xen/xen-hvm: move x86-specific fields out of XenIOState Date: Wed, 14 Jun 2023 17:03:31 -0700 Message-ID: <20230615000340.1135-4-vikram.garhwal@amd.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20230615000340.1135-1-vikram.garhwal@amd.com> References: <20230615000340.1135-1-vikram.garhwal@amd.com> MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO1NAM11FT080:EE_|CH3PR12MB7689:EE_ X-MS-Office365-Filtering-Correlation-Id: b85b4185-f432-4f3c-f020-08db6d342d99 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: LdXTCAS7mWxN3TDAR7AH3PAKxfFHwIqh9ta24gV0yhD5dlffDFxIDf++eVy2y/VwccEmW4X+9l6yNiSl30CMTqjxPF1NC1PAvX1yQc7ceMNIfDIv9mmSeXiOk6ek8XbCB0cIYE8iT3VJAa6lnTVUFaepgkOj1xkeiDcA4FCLtNG6sFghlmC2Ij2ZddoO8V9ddXRTVFSO2SXJirzkCWb/8pIPIQt7esClR4kb1L/YYyqAyg9183uwNElusDYYYtVdQbESFOQojx7oufg3d7VVl2R3UnCeog6pSnQn+VI+qEL3YLomcegddzOWFyiB64fskBlgp8LEn1qaawpHrf7p/rmMEJvzB0Yvgo3z0bO0Gdxre+FHNQFn7i7+VD3hEHNgcwGyAGpFqwEUYye2nVBaFTGivO3EwRdMjExhxsCHe2a3U8z8Ei++Ry84jdRIrg9n1Rp+Yp9N//T9GndKqYFLzPHnfVjI/wOuYnLbPUMZYkkU9s4gt+N/0u2nHiPRDhwIKDe1LAkWHAkqBayW1BsygZMiWNUMuBjDMvv9tJSRUWX7bTq+VIgdvn2jW8svKfEYJa1HAer9TTv4uI8xV6wQFxZLU+EhuwjMdAMw5JBPl1DuXOCqrlyEJiWgZ6TpOgoUbn7RVFLpT48gmU/5wZ5RII5E2g6ixhjeqVCzzJUBDvw9IouyWbggnwChwoiUTXPMiJbJzWSlsVA1oh+bSX9g8FdPMuyYPPc2qH/Frntk5ONlBhD5IeC047plZ3g1j9tzEeuXIe145Y/Gmi6k+/OMDQ== X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(346002)(39860400002)(396003)(376002)(136003)(451199021)(40470700004)(46966006)(36840700001)(26005)(1076003)(356005)(81166007)(82740400003)(2616005)(36756003)(40460700003)(86362001)(186003)(40480700001)(82310400005)(36860700001)(66574015)(47076005)(5660300002)(44832011)(7416002)(6666004)(2906002)(83380400001)(54906003)(41300700001)(8936002)(8676002)(478600001)(4326008)(6916009)(70206006)(70586007)(316002)(426003)(336012)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Jun 2023 00:05:07.2282 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: b85b4185-f432-4f3c-f020-08db6d342d99 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com] X-MS-Exchange-CrossTenant-AuthSource: CO1NAM11FT080.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH3PR12MB7689 From: Stefano Stabellini In preparation to moving most of xen-hvm code to an arch-neutral location, move: - shared_vmport_page - log_for_dirtybit - dirty_bitmap - suspend - wakeup out of XenIOState struct as these are only used on x86, especially the ones related to dirty logging. Updated XenIOState can be used for both aarch64 and x86. Also, remove free_phys_offset as it was unused. Signed-off-by: Stefano Stabellini Signed-off-by: Vikram Garhwal Reviewed-by: Paul Durrant Reviewed-by: Alex Bennée --- hw/i386/xen/xen-hvm.c | 58 ++++++++++++++++++++----------------------- 1 file changed, 27 insertions(+), 31 deletions(-) diff --git a/hw/i386/xen/xen-hvm.c b/hw/i386/xen/xen-hvm.c index 7a7764240e..01bf947f1c 100644 --- a/hw/i386/xen/xen-hvm.c +++ b/hw/i386/xen/xen-hvm.c @@ -74,6 +74,7 @@ struct shared_vmport_iopage { }; typedef struct shared_vmport_iopage shared_vmport_iopage_t; #endif +static shared_vmport_iopage_t *shared_vmport_page; static inline uint32_t xen_vcpu_eport(shared_iopage_t *shared_page, int i) { @@ -96,6 +97,11 @@ typedef struct XenPhysmap { } XenPhysmap; static QLIST_HEAD(, XenPhysmap) xen_physmap; +static const XenPhysmap *log_for_dirtybit; +/* Buffer used by xen_sync_dirty_bitmap */ +static unsigned long *dirty_bitmap; +static Notifier suspend; +static Notifier wakeup; typedef struct XenPciDevice { PCIDevice *pci_dev; @@ -106,7 +112,6 @@ typedef struct XenPciDevice { typedef struct XenIOState { ioservid_t ioservid; shared_iopage_t *shared_page; - shared_vmport_iopage_t *shared_vmport_page; buffered_iopage_t *buffered_io_page; xenforeignmemory_resource_handle *fres; QEMUTimer *buffered_io_timer; @@ -126,14 +131,8 @@ typedef struct XenIOState { MemoryListener io_listener; QLIST_HEAD(, XenPciDevice) dev_list; DeviceListener device_listener; - hwaddr free_phys_offset; - const XenPhysmap *log_for_dirtybit; - /* Buffer used by xen_sync_dirty_bitmap */ - unsigned long *dirty_bitmap; Notifier exit; - Notifier suspend; - Notifier wakeup; } XenIOState; /* Xen specific function for piix pci */ @@ -463,10 +462,10 @@ static int xen_remove_from_physmap(XenIOState *state, } QLIST_REMOVE(physmap, list); - if (state->log_for_dirtybit == physmap) { - state->log_for_dirtybit = NULL; - g_free(state->dirty_bitmap); - state->dirty_bitmap = NULL; + if (log_for_dirtybit == physmap) { + log_for_dirtybit = NULL; + g_free(dirty_bitmap); + dirty_bitmap = NULL; } g_free(physmap); @@ -627,16 +626,16 @@ static void xen_sync_dirty_bitmap(XenIOState *state, return; } - if (state->log_for_dirtybit == NULL) { - state->log_for_dirtybit = physmap; - state->dirty_bitmap = g_new(unsigned long, bitmap_size); - } else if (state->log_for_dirtybit != physmap) { + if (log_for_dirtybit == NULL) { + log_for_dirtybit = physmap; + dirty_bitmap = g_new(unsigned long, bitmap_size); + } else if (log_for_dirtybit != physmap) { /* Only one range for dirty bitmap can be tracked. */ return; } rc = xen_track_dirty_vram(xen_domid, start_addr >> TARGET_PAGE_BITS, - npages, state->dirty_bitmap); + npages, dirty_bitmap); if (rc < 0) { #ifndef ENODATA #define ENODATA ENOENT @@ -651,7 +650,7 @@ static void xen_sync_dirty_bitmap(XenIOState *state, } for (i = 0; i < bitmap_size; i++) { - unsigned long map = state->dirty_bitmap[i]; + unsigned long map = dirty_bitmap[i]; while (map != 0) { j = ctzl(map); map &= ~(1ul << j); @@ -677,12 +676,10 @@ static void xen_log_start(MemoryListener *listener, static void xen_log_stop(MemoryListener *listener, MemoryRegionSection *section, int old, int new) { - XenIOState *state = container_of(listener, XenIOState, memory_listener); - if (old & ~new & (1 << DIRTY_MEMORY_VGA)) { - state->log_for_dirtybit = NULL; - g_free(state->dirty_bitmap); - state->dirty_bitmap = NULL; + log_for_dirtybit = NULL; + g_free(dirty_bitmap); + dirty_bitmap = NULL; /* Disable dirty bit tracking */ xen_track_dirty_vram(xen_domid, 0, 0, NULL); } @@ -1022,9 +1019,9 @@ static void handle_vmport_ioreq(XenIOState *state, ioreq_t *req) { vmware_regs_t *vmport_regs; - assert(state->shared_vmport_page); + assert(shared_vmport_page); vmport_regs = - &state->shared_vmport_page->vcpu_vmport_regs[state->send_vcpu]; + &shared_vmport_page->vcpu_vmport_regs[state->send_vcpu]; QEMU_BUILD_BUG_ON(sizeof(*req) < sizeof(*vmport_regs)); current_cpu = state->cpu_by_vcpu_id[state->send_vcpu]; @@ -1472,7 +1469,6 @@ void xen_hvm_init_pc(PCMachineState *pcms, MemoryRegion **ram_memory) state->memory_listener = xen_memory_listener; memory_listener_register(&state->memory_listener, &address_space_memory); - state->log_for_dirtybit = NULL; state->io_listener = xen_io_listener; memory_listener_register(&state->io_listener, &address_space_io); @@ -1487,19 +1483,19 @@ void xen_hvm_init_pc(PCMachineState *pcms, MemoryRegion **ram_memory) QLIST_INIT(&xen_physmap); xen_read_physmap(state); - state->suspend.notify = xen_suspend_notifier; - qemu_register_suspend_notifier(&state->suspend); + suspend.notify = xen_suspend_notifier; + qemu_register_suspend_notifier(&suspend); - state->wakeup.notify = xen_wakeup_notifier; - qemu_register_wakeup_notifier(&state->wakeup); + wakeup.notify = xen_wakeup_notifier; + qemu_register_wakeup_notifier(&wakeup); rc = xen_get_vmport_regs_pfn(xen_xc, xen_domid, &ioreq_pfn); if (!rc) { DPRINTF("shared vmport page at pfn %lx\n", ioreq_pfn); - state->shared_vmport_page = + shared_vmport_page = xenforeignmemory_map(xen_fmem, xen_domid, PROT_READ|PROT_WRITE, 1, &ioreq_pfn, NULL); - if (state->shared_vmport_page == NULL) { + if (shared_vmport_page == NULL) { error_report("map shared vmport IO page returned error %d handle=%p", errno, xen_xc); goto err; -- 2.17.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 15 00:05:17 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 15 Jun 2023 00:05:17 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549308.857777 (Exim 4.92) (envelope-from ) id 1q9aUH-0007A3-Lx; Thu, 15 Jun 2023 00:05:17 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549308.857777; Thu, 15 Jun 2023 00:05:17 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9aUH-00079t-HH; Thu, 15 Jun 2023 00:05:17 +0000 Received: by outflank-mailman (input) for mailman id 549308; Thu, 15 Jun 2023 00:05:16 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9aUG-0006Ty-5F for xen-devel@lists.xenproject.org; Thu, 15 Jun 2023 00:05:16 +0000 Received: from NAM10-BN7-obe.outbound.protection.outlook.com (mail-bn7nam10on2061e.outbound.protection.outlook.com [2a01:111:f400:7e8a::61e]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 4d7dce9b-0b10-11ee-b232-6b7b168915f2; Thu, 15 Jun 2023 02:05:15 +0200 (CEST) Received: from MW4PR04CA0304.namprd04.prod.outlook.com (2603:10b6:303:82::9) by SA1PR12MB8721.namprd12.prod.outlook.com (2603:10b6:806:38d::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.44; Thu, 15 Jun 2023 00:05:11 +0000 Received: from CO1NAM11FT022.eop-nam11.prod.protection.outlook.com (2603:10b6:303:82:cafe::d5) by MW4PR04CA0304.outlook.office365.com (2603:10b6:303:82::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.37 via Frontend Transport; Thu, 15 Jun 2023 00:05:11 +0000 Received: from SATLEXMB04.amd.com (165.204.84.17) by CO1NAM11FT022.mail.protection.outlook.com (10.13.175.199) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6500.25 via Frontend Transport; Thu, 15 Jun 2023 00:05:11 +0000 Received: from SATLEXMB08.amd.com (10.181.40.132) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Wed, 14 Jun 2023 19:05:00 -0500 Received: from SATLEXMB04.amd.com (10.181.40.145) by SATLEXMB08.amd.com (10.181.40.132) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Wed, 14 Jun 2023 17:04:42 -0700 Received: from xsjfnuv50.xilinx.com (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server id 15.1.2507.23 via Frontend Transport; Wed, 14 Jun 2023 19:04:42 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 4d7dce9b-0b10-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=jrIvBp3JGh6ZSlnwfU6e0PNgqqUzgE1V8Yp/PrednBbwjJCneUxlTgkTtKNIhaSYeVd5wBJIwzgfzv6+mv4rfOLQOjhpHK9DKH5CFYju9Rc2P1EiszIG+7WuxkNvd67AS3/gRRGLsAnXd43sCbPUVIW9Styq1bRUqZ+cOCRaR01uWvmJnhpbKgiHQNN1j4pckgk209CPlPop9B1q0lO7x3lPloI7gcvPQQ61QHUuSVdfOGGPQ0yNo2qc1ZG3xJ5wBbX2BM9Hj+InxG1udov75a0WXg26FxiFmVqQ2nFtyoH6n+ktsUVTWPw9+RJBiyAI/+Ofj0E4UiM+2GPrZIbXzw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=mOsqWHq5VHxUgGsBfaYThNjh0r5g1aFE14BtltHtrOE=; b=YKV/OBLphnLlthGUJSPvWkVFm5g/GDy/BvK/pXHcSHkFeBRCIggbbSR4IuL3ZdNoyd6zMV6Gdd2yDPOgihattlf+aPzPrX9yxrbfb+HmVOIb6ASxNdZiaZnAbl0YbKNFoFuWg5FJrgIE5KNoucbJZuqC2ggaRB2PLnlPZgLaziqkBEQPP3tq35m+Rji/uSrELEEtsj0EBKGpJFejw2olSZeiAW8Y2qDKjOYg4Rur9idVivNfg0LEeh/hGL7EYD96912+eCmzZHHT/cTzA9W6L1glm/Ixq5Pan9Z8BW6HJogujpzHDR1e1pO8NwOCGBncEkw23+yeLOCzaXFPHpsdxA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=nongnu.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=mOsqWHq5VHxUgGsBfaYThNjh0r5g1aFE14BtltHtrOE=; b=OVVRWQbU5speFy+0MY5tRyLvhm8bmi8+OqWRTV7C4WIIKGNhmFtje5DmCRF99MHMiykhxlTHUpZAurvbeEc6Gw+E5xkY01mD5NyEgxeXu+R7dqA0hZwh5KcKGwofwDiJzU59thHOG4fhRznf0ys6cGkZ7ihAD59I+P8MULMZtqI= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C From: Vikram Garhwal To: CC: , Vikram Garhwal , Anthony Perard , Paul Durrant , "open list:X86 Xen CPUs" Subject: [QEMU][PATCH v8 07/11] hw/xen/xen-hvm-common: Use g_new and error_report Date: Wed, 14 Jun 2023 17:03:35 -0700 Message-ID: <20230615000340.1135-8-vikram.garhwal@amd.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20230615000340.1135-1-vikram.garhwal@amd.com> References: <20230615000340.1135-1-vikram.garhwal@amd.com> MIME-Version: 1.0 Content-Type: text/plain X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO1NAM11FT022:EE_|SA1PR12MB8721:EE_ X-MS-Office365-Filtering-Correlation-Id: b88cc8d6-dd8c-4332-2b78-08db6d34301d X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: ZvG/6GVMwnih8VNIYEZjOZRgz7xXzBE6C5wTwQMYcy8G0gNNw15QgY6ejG+bnotPF5K6ZXcf56+pGzaKCGQ+cmi8UzqI7XqNZOQP4Fobv8hzyij6LnJRm4yC1j17UrhHiTbHM8mKvj1A8a4MUjdWToN53AZHbXBkVkR+374LEmBcQIAr9A+Bb0SPpZlgWS5197rDy+5DlOfmNxSf1FjBCp5+/NOA3CYFMc5heX+hmEy4Ztxvl5ms5LAw/P8oA0yNUPqP4jZzpTuHNiELD32VPJ0nc/eizIRaOSFdf+qlxhuAr2CiewDrb7IlpVNYlKxV1Eh1ZeEbfA+8CJJmExY6ISDU8XLIefoALGHrNrtQXYlnjFSrOzksdQs6NwdfC1Svs7/LQf01Fv0l4rhbgtTLj20kgg766FRnXFQcBSGf6EdnDG5iWdpH8VSOLzRhnNLOncGaJD2OFtF93BAliUVqtjjjLr5hw8gp9laiexR4pOFCIa54W6yo4WWroCQDhFcrn0yhsoLfZt8AF2U43R5NRuh79+igS/+JTnDT6+etmQahyUu9Z7bWg70LEhzM5x8RHUbQL0M9u0Icaj6WpiRR9FWmbTitW7H4cnSPAd6atvps8AXZap+NqdOa8mp11LXbnlAbV6wM2id62v8lsXwZJRuaS1Rp0ZTLjFMY0bij/2gn4kOulRx6jWYozPeRLZg2JDkx3XOLjsBk8CpU6zdD4OfxVmx36t4CPIRyG1EakZtJbbSh97CCmMjvLKBhywvFodF6gxqrbpxJ/Y/GwUjPLA== X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(396003)(39860400002)(346002)(136003)(376002)(451199021)(40470700004)(36840700001)(46966006)(26005)(1076003)(47076005)(81166007)(40480700001)(356005)(82740400003)(41300700001)(316002)(478600001)(6916009)(4326008)(36860700001)(70206006)(70586007)(6666004)(186003)(2616005)(8936002)(2906002)(36756003)(8676002)(86362001)(5660300002)(44832011)(83380400001)(40460700003)(54906003)(336012)(426003)(82310400005)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Jun 2023 00:05:11.4596 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: b88cc8d6-dd8c-4332-2b78-08db6d34301d X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com] X-MS-Exchange-CrossTenant-AuthSource: CO1NAM11FT022.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA1PR12MB8721 Replace g_malloc with g_new and perror with error_report. Signed-off-by: Vikram Garhwal Reviewed-by: Stefano Stabellini Reviewed-by: Paul Durrant --- hw/xen/xen-hvm-common.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/hw/xen/xen-hvm-common.c b/hw/xen/xen-hvm-common.c index cb82f4b83d..42339c96bd 100644 --- a/hw/xen/xen-hvm-common.c +++ b/hw/xen/xen-hvm-common.c @@ -33,7 +33,7 @@ void xen_ram_alloc(ram_addr_t ram_addr, ram_addr_t size, MemoryRegion *mr, trace_xen_ram_alloc(ram_addr, size); nr_pfn = size >> TARGET_PAGE_BITS; - pfn_list = g_malloc(sizeof (*pfn_list) * nr_pfn); + pfn_list = g_new(xen_pfn_t, nr_pfn); for (i = 0; i < nr_pfn; i++) { pfn_list[i] = (ram_addr >> TARGET_PAGE_BITS) + i; @@ -730,7 +730,7 @@ void destroy_hvm_domain(bool reboot) return; } if (errno != ENOTTY /* old Xen */) { - perror("xendevicemodel_shutdown failed"); + error_report("xendevicemodel_shutdown failed with error %d", errno); } /* well, try the old thing then */ } @@ -784,7 +784,7 @@ static void xen_do_ioreq_register(XenIOState *state, } /* Note: cpus is empty at this point in init */ - state->cpu_by_vcpu_id = g_malloc0(max_cpus * sizeof(CPUState *)); + state->cpu_by_vcpu_id = g_new0(CPUState *, max_cpus); rc = xen_set_ioreq_server_state(xen_domid, state->ioservid, true); if (rc < 0) { @@ -793,7 +793,7 @@ static void xen_do_ioreq_register(XenIOState *state, goto err; } - state->ioreq_local_port = g_malloc0(max_cpus * sizeof (evtchn_port_t)); + state->ioreq_local_port = g_new0(evtchn_port_t, max_cpus); /* FIXME: how about if we overflow the page here? */ for (i = 0; i < max_cpus; i++) { @@ -850,13 +850,13 @@ void xen_register_ioreq(XenIOState *state, unsigned int max_cpus, state->xce_handle = qemu_xen_evtchn_open(); if (state->xce_handle == NULL) { - perror("xen: event channel open"); + error_report("xen: event channel open failed with error %d", errno); goto err; } state->xenstore = xs_daemon_open(); if (state->xenstore == NULL) { - perror("xen: xenstore open"); + error_report("xen: xenstore open failed with error %d", errno); goto err; } -- 2.17.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 15 00:05:19 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 15 Jun 2023 00:05:19 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549309.857787 (Exim 4.92) (envelope-from ) id 1q9aUI-0007S1-Vl; Thu, 15 Jun 2023 00:05:18 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549309.857787; Thu, 15 Jun 2023 00:05:18 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9aUI-0007Rs-RL; Thu, 15 Jun 2023 00:05:18 +0000 Received: by outflank-mailman (input) for mailman id 549309; Thu, 15 Jun 2023 00:05:16 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9aUG-0006qD-JM for xen-devel@lists.xenproject.org; Thu, 15 Jun 2023 00:05:16 +0000 Received: from NAM12-BN8-obe.outbound.protection.outlook.com (mail-bn8nam12on2061d.outbound.protection.outlook.com [2a01:111:f400:fe5b::61d]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 4d49ac78-0b10-11ee-8611-37d641c3527e; Thu, 15 Jun 2023 02:05:14 +0200 (CEST) Received: from MW4PR04CA0297.namprd04.prod.outlook.com (2603:10b6:303:89::32) by LV8PR12MB9264.namprd12.prod.outlook.com (2603:10b6:408:1e8::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.46; Thu, 15 Jun 2023 00:05:11 +0000 Received: from CO1NAM11FT080.eop-nam11.prod.protection.outlook.com (2603:10b6:303:89:cafe::64) by MW4PR04CA0297.outlook.office365.com (2603:10b6:303:89::32) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.37 via Frontend Transport; Thu, 15 Jun 2023 00:05:11 +0000 Received: from SATLEXMB04.amd.com (165.204.84.17) by CO1NAM11FT080.mail.protection.outlook.com (10.13.174.99) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6500.23 via Frontend Transport; Thu, 15 Jun 2023 00:05:11 +0000 Received: from SATLEXMB08.amd.com (10.181.40.132) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Wed, 14 Jun 2023 19:05:00 -0500 Received: from SATLEXMB04.amd.com (10.181.40.145) by SATLEXMB08.amd.com (10.181.40.132) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Wed, 14 Jun 2023 17:04:41 -0700 Received: from xsjfnuv50.xilinx.com (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server id 15.1.2507.23 via Frontend Transport; Wed, 14 Jun 2023 19:04:41 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 4d49ac78-0b10-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=XOLOC3gYsY/XiNArEWvXiyIdGiPal329t9AhSeiX+QTYt2cbGR0Q4iNCuHQOYqNwy2XFS8JeuNTPTqBa1dyOjyx2iItOvCYykCvTTw+MurNR2eAVbOBpWFt58a+K0psX1eFHBlxi1g/DqtVhZ8HOxFoY4dLJCNPwbTVjXp7Z9EAn8vL0oD7SwYSF06TCOFNHa+NAT/3OVMhN0hZCRO5/W0S+C2BgmJjQjaUXWcE+TJg71jcDjaJNlSyrij0szwfyoIy4oNRAzS/AIjY4zoE0yewC2vVr3ZGQeHjlW2ayKjjAyM+Bt45APaRMIlAACSuOrHbz1gsG02Qx9aLseFLv/w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=ZW0E+n9RRUnGndVzyavBgx17Uvpm/5a+kbmKjIpu9A4=; b=agxGqRZl9xowsSaWFFt+qfUL47SDNnrm36X/j1QKbO3CGqQgrAtE0kUXwzwBP2OBDA+0iTKUYfaL4lh0aCKeDiZSEw5nVAn1Jata4GppUgxmdBGMI7RX0L0jg+56NL+HazJbBdIgx3glkuQj5BXx4pARImgU69icy+35M/is6ukAUDkMFZZBEDbU42ZR9slKBXZTWS7B5gKhMkDuFlDJ9B7RUAmZm5trOMCopfgBWqEPLXQXloWMqpmBQZzu1kecZ3pBYF9rc3z7IGZ1T6oHwg/9fFQrhRGcxl3cVUmorOfgDPou4kwvkIlhZiy7zwzaNbgwfJ5Pg5BCESaEQZRKog== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=nongnu.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=ZW0E+n9RRUnGndVzyavBgx17Uvpm/5a+kbmKjIpu9A4=; b=KwfEWYE1RYj7Hn1oxRyblfisG+7Nj90WCd7F/fD+K1uwMZpHNGiRcgg4ehotdsNPt+o7C6zNzi4jCuQbxou01ZYtOIlmbh2gHXUN8VWo9rGhrgbZQu2evHYXiCdeWtVsSld9BN/PcHmNKYeJg6Eb6inBXWaT3Wih/BxsX9r6Kvs= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C From: Vikram Garhwal To: CC: , Stefano Stabellini , Vikram Garhwal , Anthony Perard , Paul Durrant , "open list:X86 Xen CPUs" Subject: [QEMU][PATCH v8 06/11] hw/xen/xen-hvm-common: skip ioreq creation on ioreq registration failure Date: Wed, 14 Jun 2023 17:03:34 -0700 Message-ID: <20230615000340.1135-7-vikram.garhwal@amd.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20230615000340.1135-1-vikram.garhwal@amd.com> References: <20230615000340.1135-1-vikram.garhwal@amd.com> MIME-Version: 1.0 Content-Type: text/plain X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO1NAM11FT080:EE_|LV8PR12MB9264:EE_ X-MS-Office365-Filtering-Correlation-Id: f75a5b45-9d96-46cb-1c35-08db6d342ff5 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: v5IT0s1Pcx8GVvmnrEedCYZMp0elMXcdr+dsGpoMBOfiTkCJGcVVsBRled1m1gylbLXKBsdOBOqLdRui0Dfmxu9tZBld2BuO04JiKkiCdE1ApzK5lJVTcOZ6baP6njeAkU8zcyRFWnrsQ/T3Pa2DvQa0Fbd2gYOR21oLYx9jlx32GFU4LbB+lroyyssBcWv9K0dTIDdZNqpByzf8Pz8U/iR1YG3m8vF3H3yTF9OdRW0YgrJlWnGpj0iJSTJEOwA24JjFlvNFEzbmP/PK9lEu32n25u+ynultWOKJrsR5dkdyMBVcRcCIbPQy3VjAWlDPDQZ7DXc6Cnljs0Tt+B1FtLhhkPtFWTgtaQa7MdgpQBHDvHBey8MHJ6bKTv9EwsOqqiu7bOiuEzoWLfUrlkf5gkyAmXTmqTB3/vOfUt4tQP6dk8lnnSghGOsPaXmOuQt5NQBTRtfX5rlMhVlnHkl5dnumLldUCzd1XRAPj61NvDXVfIQDFMBgWLzPOjuMbWp/Cq57MgFY2TKUDV2+RLCWyAAECizdTsEiLLtrWh/4A+n97gA+bXXq5szfhLM40gCa9AEOwJjOlcxZ3r3gpJlKniC1aMXMt6kylzsN8keDnJdzA+BOo+GefULzJ5iL32ldShPdoakm3U8zzhIFfiFM7WK75Z/VIO9/EkKtkd3/BfYnlYokNEQgR6HyFMIVlbDFUAvdABnq8KkCicsgO7ePMXYa+ANXAfqNO9q3VfvqrbAzJ9FEthz5tc/knyJDE+PUrEchaL1THqLZ9t0wYIp9Kg== X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(376002)(346002)(396003)(39860400002)(136003)(451199021)(40470700004)(46966006)(36840700001)(40460700003)(54906003)(6666004)(70206006)(70586007)(316002)(36860700001)(478600001)(4326008)(6916009)(36756003)(86362001)(2616005)(426003)(1076003)(83380400001)(26005)(186003)(336012)(5660300002)(8936002)(8676002)(41300700001)(2906002)(82310400005)(44832011)(40480700001)(81166007)(82740400003)(356005)(47076005)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Jun 2023 00:05:11.1814 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: f75a5b45-9d96-46cb-1c35-08db6d342ff5 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com] X-MS-Exchange-CrossTenant-AuthSource: CO1NAM11FT080.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: LV8PR12MB9264 From: Stefano Stabellini On ARM it is possible to have a functioning xenpv machine with only the PV backends and no IOREQ server. If the IOREQ server creation fails continue to the PV backends initialization. Also, moved the IOREQ registration and mapping subroutine to new function xen_do_ioreq_register(). Signed-off-by: Stefano Stabellini Signed-off-by: Vikram Garhwal Reviewed-by: Stefano Stabellini Reviewed-by: Paul Durrant --- hw/xen/xen-hvm-common.c | 57 +++++++++++++++++++++++++++-------------- 1 file changed, 38 insertions(+), 19 deletions(-) diff --git a/hw/xen/xen-hvm-common.c b/hw/xen/xen-hvm-common.c index a31b067404..cb82f4b83d 100644 --- a/hw/xen/xen-hvm-common.c +++ b/hw/xen/xen-hvm-common.c @@ -764,27 +764,12 @@ void xen_shutdown_fatal_error(const char *fmt, ...) qemu_system_shutdown_request(SHUTDOWN_CAUSE_HOST_ERROR); } -void xen_register_ioreq(XenIOState *state, unsigned int max_cpus, - MemoryListener xen_memory_listener) +static void xen_do_ioreq_register(XenIOState *state, + unsigned int max_cpus, + MemoryListener xen_memory_listener) { int i, rc; - setup_xen_backend_ops(); - - state->xce_handle = qemu_xen_evtchn_open(); - if (state->xce_handle == NULL) { - perror("xen: event channel open"); - goto err; - } - - state->xenstore = xs_daemon_open(); - if (state->xenstore == NULL) { - perror("xen: xenstore open"); - goto err; - } - - xen_create_ioreq_server(xen_domid, &state->ioservid); - state->exit.notify = xen_exit_notifier; qemu_add_exit_notifier(&state->exit); @@ -849,12 +834,46 @@ void xen_register_ioreq(XenIOState *state, unsigned int max_cpus, QLIST_INIT(&state->dev_list); device_listener_register(&state->device_listener); + return; + +err: + error_report("xen hardware virtual machine initialisation failed"); + exit(1); +} + +void xen_register_ioreq(XenIOState *state, unsigned int max_cpus, + MemoryListener xen_memory_listener) +{ + int rc; + + setup_xen_backend_ops(); + + state->xce_handle = qemu_xen_evtchn_open(); + if (state->xce_handle == NULL) { + perror("xen: event channel open"); + goto err; + } + + state->xenstore = xs_daemon_open(); + if (state->xenstore == NULL) { + perror("xen: xenstore open"); + goto err; + } + + rc = xen_create_ioreq_server(xen_domid, &state->ioservid); + if (!rc) { + xen_do_ioreq_register(state, max_cpus, xen_memory_listener); + } else { + warn_report("xen: failed to create ioreq server"); + } + xen_bus_init(); xen_be_init(); return; + err: - error_report("xen hardware virtual machine initialisation failed"); + error_report("xen hardware virtual machine backend registration failed"); exit(1); } -- 2.17.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 15 00:05:19 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 15 Jun 2023 00:05:19 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549310.857793 (Exim 4.92) (envelope-from ) id 1q9aUJ-0007Yt-Fj; Thu, 15 Jun 2023 00:05:19 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549310.857793; Thu, 15 Jun 2023 00:05:19 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9aUJ-0007Vk-89; Thu, 15 Jun 2023 00:05:19 +0000 Received: by outflank-mailman (input) for mailman id 549310; Thu, 15 Jun 2023 00:05:17 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9aUH-0006qD-JW for xen-devel@lists.xenproject.org; Thu, 15 Jun 2023 00:05:17 +0000 Received: from NAM02-DM3-obe.outbound.protection.outlook.com (mail-dm3nam02on20626.outbound.protection.outlook.com [2a01:111:f400:7e83::626]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 4d8b54d1-0b10-11ee-8611-37d641c3527e; Thu, 15 Jun 2023 02:05:15 +0200 (CEST) Received: from MW4PR03CA0038.namprd03.prod.outlook.com (2603:10b6:303:8e::13) by PH0PR12MB5645.namprd12.prod.outlook.com (2603:10b6:510:140::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.44; Thu, 15 Jun 2023 00:05:12 +0000 Received: from CO1NAM11FT051.eop-nam11.prod.protection.outlook.com (2603:10b6:303:8e:cafe::49) by MW4PR03CA0038.outlook.office365.com (2603:10b6:303:8e::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.38 via Frontend Transport; Thu, 15 Jun 2023 00:05:11 +0000 Received: from SATLEXMB04.amd.com (165.204.84.17) by CO1NAM11FT051.mail.protection.outlook.com (10.13.174.114) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6500.25 via Frontend Transport; Thu, 15 Jun 2023 00:05:11 +0000 Received: from SATLEXMB08.amd.com (10.181.40.132) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Wed, 14 Jun 2023 19:05:00 -0500 Received: from SATLEXMB04.amd.com (10.181.40.145) by SATLEXMB08.amd.com (10.181.40.132) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Wed, 14 Jun 2023 17:04:40 -0700 Received: from xsjfnuv50.xilinx.com (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server id 15.1.2507.23 via Frontend Transport; Wed, 14 Jun 2023 19:04:40 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 4d8b54d1-0b10-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=fWqJWv4CJuvpySqo0+6Ebe1H6T3d+C6DMRre9jFtCXSto7Hd3SI+u0wb+MLwUVoRzgc7v4bNoDWTHM4QYOCNs9prXzDsVFXb32fYfVx3k9F3R3r5RMihQxYj8J6tY1lEN4pzkUm/x8nFgxWqYDez8qgub7LRm9WAVbZhjTbylMPYkr/TnXKJ+7aclpEVzf+EdssF2trkmIY7FA9m9C+zw6yBikq7hVK6h14RF1akeG/52ODnbcTqX6ezfL2wXq/2UM+mB1SqV9rK21/e4PtfvtTqLNBDYJfDAt4h9ppR84c+G5h0Vfe3jFco1VYQzr6c9DCB9Zl8p+SjYflhLCPJmw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=QhReVhB10vpU72bAY3AMOPyk1Ul54IekP2dQt2HzTMI=; b=Nz4kkFSwwsLVCRW3zDlqm4Cnidp8n8V8MuFQEiYZ/zOk1ARL/ELyNrxqD4LuqbaHZNrGWdghS1dVjWKFmNnam+l3eIgoNch/l+sJBC++mR4V5/ezjM6mRmXrUPWM7paYosym6jykMyGvBDn9KNYmddKl9KRXYDMSZ2PCVmWkfpAB8b8x+RUwXjqu9UtyDaQdrC0nh1ID1M6CDdHNbv5U+nQdTib57xtSlFURLKeV1ZOTlaJ6HiGTKX/hoFzv7CBZU7bS07DV4QxWbtPldA/ojM8aUd/hDP+/epxgplnERMEPH5N3vEyxjFRJkjddu3YUG/0TeLi53evvcnlWY1fwHg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=nongnu.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=QhReVhB10vpU72bAY3AMOPyk1Ul54IekP2dQt2HzTMI=; b=VYdUPU3selH8INXbaj8Mm0878UfiuSvzh1bvT6ztD8aum/MmC2Po+mtPqEfozENbLE3UF5KuZFU0TI6C8DQNftvZrsoh/D1GR2pcz5ENgkraDWqD/busZ1yZH+drSVAD5tMax3mSgBFqfaVMCI5afHM8VfNiFKTN657iVvu4aRo= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C From: Vikram Garhwal To: CC: , Stefano Stabellini , Vikram Garhwal , Anthony Perard , Paul Durrant , "open list:X86 Xen CPUs" Subject: [QEMU][PATCH v8 05/11] include/hw/xen/xen_common: return error from xen_create_ioreq_server Date: Wed, 14 Jun 2023 17:03:33 -0700 Message-ID: <20230615000340.1135-6-vikram.garhwal@amd.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20230615000340.1135-1-vikram.garhwal@amd.com> References: <20230615000340.1135-1-vikram.garhwal@amd.com> MIME-Version: 1.0 Content-Type: text/plain X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO1NAM11FT051:EE_|PH0PR12MB5645:EE_ X-MS-Office365-Filtering-Correlation-Id: e3521574-0481-4543-9174-08db6d342fec X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: Wi+CBZe7JJw8ZmKTtcBgPGte0fnVfCFVBoBMzibtTeM5v4zrD+U7AvUUXHmjwAg1nBIRKDPwBXr+PKzRyvowauS17v8BkN/IsxDYME+wjG4VL7tg36DH10cjTa1jC/rLGI4P/P/u6+kLHhsdxUnOESygvnzQndWaEaJTdVoFSuRylZEPRWaXUQG+bHOinkZxEYdbtXET+Nn1BpqhW6XwnRYTFSO8LRp9GWaaFnCXMppO9JBKh9oxF/2jbOUPY2Y7l9YcIDBRhIzVCwXnwdIvwS0WQIe/833dP0K7WtIs9d7CN1r+9zBMNq5+FTYT5AjrmQWkNpWSyBzztwUo7isEtLU8EMhnVz+5KRVA1AOjHO3dZcwkL91mjFob/IIuQvIt5RCjb5FJc0wfBfovPpb9bgkKtZPo0dSCSCr7dBb4Xk3bHq76+27idyGCdMPIk1whsK4ZdXT7Y5yq6LEvImDRSIPcwarXsHQZGjZ1+gG/DWDubzhwphSZ24YWLl/CuSH39X1teCZMKSt5QMrfaiVwr5h79AA2ZQYGLyVJnZZMb7Y2nOP/7wtHejn6HUS6e79kRxDiG9a+2sFMu6RbghJj8yh5vuzsUuakRNMawRqCZQPYSEiARyremTfzEqT0ROUBERx/h9nTUqxEYTqLBLlqmXWe5vKnj0pahx78JwoxSB5FM98OsoXqT/K5ixjOg7N7f+HLrfSJxPfzAZilKWFloAeylEkjL92wYZevA3Tsw60uqW5VdhFH5TJO/l6pRN2KJrCQ9fi06XPcEAlqTndmyg== X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(396003)(136003)(346002)(376002)(39860400002)(451199021)(36840700001)(40470700004)(46966006)(5660300002)(8936002)(2906002)(8676002)(70586007)(70206006)(44832011)(54906003)(6666004)(4326008)(26005)(1076003)(41300700001)(316002)(6916009)(186003)(36860700001)(82740400003)(356005)(426003)(336012)(47076005)(83380400001)(2616005)(40460700003)(478600001)(40480700001)(82310400005)(36756003)(86362001)(81166007)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Jun 2023 00:05:11.1410 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: e3521574-0481-4543-9174-08db6d342fec X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com] X-MS-Exchange-CrossTenant-AuthSource: CO1NAM11FT051.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR12MB5645 From: Stefano Stabellini This is done to prepare for enabling xenpv support for ARM architecture. On ARM it is possible to have a functioning xenpv machine with only the PV backends and no IOREQ server. If the IOREQ server creation fails, continue to the PV backends initialization. Signed-off-by: Stefano Stabellini Signed-off-by: Vikram Garhwal Reviewed-by: Stefano Stabellini Reviewed-by: Paul Durrant --- include/hw/xen/xen_native.h | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/include/hw/xen/xen_native.h b/include/hw/xen/xen_native.h index f11eb423e3..4dce905fde 100644 --- a/include/hw/xen/xen_native.h +++ b/include/hw/xen/xen_native.h @@ -463,8 +463,8 @@ static inline void xen_unmap_pcidev(domid_t dom, PCI_FUNC(pci_dev->devfn)); } -static inline void xen_create_ioreq_server(domid_t dom, - ioservid_t *ioservid) +static inline int xen_create_ioreq_server(domid_t dom, + ioservid_t *ioservid) { int rc = xendevicemodel_create_ioreq_server(xen_dmod, dom, HVM_IOREQSRV_BUFIOREQ_ATOMIC, @@ -472,12 +472,14 @@ static inline void xen_create_ioreq_server(domid_t dom, if (rc == 0) { trace_xen_ioreq_server_create(*ioservid); - return; + return rc; } *ioservid = 0; use_default_ioreq_server = true; trace_xen_default_ioreq_server(); + + return rc; } static inline void xen_destroy_ioreq_server(domid_t dom, -- 2.17.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 15 00:05:20 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 15 Jun 2023 00:05:20 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549311.857807 (Exim 4.92) (envelope-from ) id 1q9aUK-0007zb-Oe; Thu, 15 Jun 2023 00:05:20 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549311.857807; Thu, 15 Jun 2023 00:05:20 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9aUK-0007yB-Ip; Thu, 15 Jun 2023 00:05:20 +0000 Received: by outflank-mailman (input) for mailman id 549311; Thu, 15 Jun 2023 00:05:18 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9aUI-0006qD-Jq for xen-devel@lists.xenproject.org; Thu, 15 Jun 2023 00:05:18 +0000 Received: from NAM11-BN8-obe.outbound.protection.outlook.com (mail-bn8nam11on20601.outbound.protection.outlook.com [2a01:111:f400:7eae::601]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 4e4d7568-0b10-11ee-8611-37d641c3527e; Thu, 15 Jun 2023 02:05:16 +0200 (CEST) Received: from MW4PR04CA0307.namprd04.prod.outlook.com (2603:10b6:303:82::12) by CH3PR12MB8582.namprd12.prod.outlook.com (2603:10b6:610:163::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.37; Thu, 15 Jun 2023 00:05:12 +0000 Received: from CO1NAM11FT022.eop-nam11.prod.protection.outlook.com (2603:10b6:303:82:cafe::a6) by MW4PR04CA0307.outlook.office365.com (2603:10b6:303:82::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.37 via Frontend Transport; Thu, 15 Jun 2023 00:05:12 +0000 Received: from SATLEXMB04.amd.com (165.204.84.17) by CO1NAM11FT022.mail.protection.outlook.com (10.13.175.199) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6500.25 via Frontend Transport; Thu, 15 Jun 2023 00:05:12 +0000 Received: from SATLEXMB08.amd.com (10.181.40.132) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Wed, 14 Jun 2023 19:05:01 -0500 Received: from SATLEXMB04.amd.com (10.181.40.145) by SATLEXMB08.amd.com (10.181.40.132) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Wed, 14 Jun 2023 17:04:44 -0700 Received: from xsjfnuv50.xilinx.com (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server id 15.1.2507.23 via Frontend Transport; Wed, 14 Jun 2023 19:04:44 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 4e4d7568-0b10-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=l3egmwnP33t7P6hKKRDXWvnP4yWb8RLFclYNBKt5K1XC/NtzAW4cX97Zpv/OiaWIhF3Op+0zZXi7x23V8ZRL4AzFUkiIPGtt+QWyOh4YP/bcwVInXzyTzu7+83tlCxhzmCniYdi5vt69M8ILpe35adCq1kE8VgPPaxP+CCKDlCChiZAhopO8UwakhK+nwcyPWHOGK3T8nDZhjmWew0LGszaL/r0saFSG1pbzXpqFjkQ81sMJavKavY/D8Vp07mY1llx5D7MwTkaKaW4HEzaWNNbpND2A5tnqMxNz8r3wKAEbuGu5/E/NHckH/Iz/W508YPUqhDpkzRB2kj2QzvBzEA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=rgu2qk6/ygfWhwigy5ZR1tCj2ULCOVuVMFI9miV2y6I=; b=nASZFC1OKQu2zcCqhEU0kZOb6GZvJybfEFU0uPY+aO8THkuyEDVRzZkNq8wXDwCWxnDjmhP1VnIn1r1/tRoYHEjOuE96ZXc+NwirovdFxeRuuAsT5B1lFq/NRDuLKjqE87uZADBP/w+sS5p/uOKeRG8W7BMCkdxyk1cfv8wk/4L9fIoOB0WEtuH3hSWinjH3g4ELXceuEtq92tySxHoDZY7r/Uzaw+Zdg4GFFaxqeTTOZ7sQQqvdteITX1m9iJJaYpsLYT2o4u3/mlJoio+JXcq9FPNFet4btVcXS5L+DFnBoXegrdnn3Vax9ZKAO/Oc3REcXoM+JBgaokFyYMiHfQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=nongnu.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=rgu2qk6/ygfWhwigy5ZR1tCj2ULCOVuVMFI9miV2y6I=; b=bB0fVVF9zkRjc93FgwNg5PZA3LeTnvWFzQjRRare1ItRvg6aROoGKULtbtOvHEQad3bYCmE9HitZcvuDgW2myzh+KYwCu55r8y4hQJp5gp24M4CLal1JNeU/TMgw3Dyq6hr7NeYQXNFf6ekdt40QyX7cHOdLQEs79qtNY3PKd1c= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C From: Vikram Garhwal To: CC: , Vikram Garhwal , Stefano Stabellini , Peter Maydell , Anthony Perard , "Paul Durrant" , "open list:ARM TCG CPUs" , "open list:X86 Xen CPUs" Subject: [QEMU][PATCH v8 09/11] hw/arm: introduce xenpvh machine Date: Wed, 14 Jun 2023 17:03:37 -0700 Message-ID: <20230615000340.1135-10-vikram.garhwal@amd.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20230615000340.1135-1-vikram.garhwal@amd.com> References: <20230615000340.1135-1-vikram.garhwal@amd.com> MIME-Version: 1.0 Content-Type: text/plain X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO1NAM11FT022:EE_|CH3PR12MB8582:EE_ X-MS-Office365-Filtering-Correlation-Id: f441096a-5bf8-4ba3-7398-08db6d343088 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 3VMKOM7ebS3BKXUHuCga8Ag6Ffl4UpUUlYS25KzPt70RbOnHauHPVzAysHrr5amQ4JmH/7UXA8UaQVERfWSerD3JvI3B657E5h4nEDdEdb6y2PYGYnRjLR5j9l0Vw4W56ERPhYOC1Takhj9ekLx512GlfWNW/At8h7jB+5W/b8ZCmXiBpQcCHMnlzZFvQBUFkHWhZdsPbieRAxaA/ASc/TCr24ApgLiChGhV0n9bmLl2dGp67XXjzd3XI0PrC9oafCxyG8Oi0rsazGsEDFEm6jM30Q7KWP2uDXF2F4MwPOHlp05ShFpS4v7WMgVzYCdtP0mT98Cs6B/wERXQRf9NrVcuoM2p4lxTHP2zZgg0QD3z5nvW0A7bSkMU/xy9ugyZuyBOsLFqK0/q2uVwOn9kGZ6VYH5/DHoF8pUUGHRa10HpwrRCJwQ8W5+mi4/Xw2RtaAqwfCHwkCv4Tidb41zYrS7/bm5+Pl6XSriekOMwOq9uq7bf2A/9ks92dW8+ATWH/fZusqdN3F9ck6AnYAAm3ZCqpXOz21CbFUSQH0DdVkKqM8l+WgQ1FeN9wIslYinfVmmAaG6ktFPciclKOzEMFfGlwRaKWaJSFY4cUXET9ot5OBRyV7gkhBWb9MlPMH4fB/RaJChI8/kyClFKWZFeUrtYTmiYSKGPakGlduleBg29FvPYbuebT+/XLA3AuMj5WyLdW2QcaMUg6cASZP6slOLs4SMv3SpMjnDUPZIaKOA2bEQ678adTHexfpIPM3uc X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(136003)(39860400002)(346002)(376002)(396003)(451199021)(46966006)(40470700004)(36840700001)(44832011)(4326008)(6916009)(40480700001)(70586007)(70206006)(36756003)(316002)(2906002)(66899021)(5660300002)(8936002)(8676002)(41300700001)(40460700003)(47076005)(54906003)(86362001)(82310400005)(478600001)(6666004)(1076003)(26005)(966005)(36860700001)(186003)(356005)(81166007)(82740400003)(83380400001)(426003)(336012)(2616005)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Jun 2023 00:05:12.1626 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: f441096a-5bf8-4ba3-7398-08db6d343088 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com] X-MS-Exchange-CrossTenant-AuthSource: CO1NAM11FT022.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH3PR12MB8582 Add a new machine xenpvh which creates a IOREQ server to register/connect with Xen Hypervisor. Optional: When CONFIG_TPM is enabled, it also creates a tpm-tis-device, adds a TPM emulator and connects to swtpm running on host machine via chardev socket and support TPM functionalities for a guest domain. Extra command line for aarch64 xenpvh QEMU to connect to swtpm: -chardev socket,id=chrtpm,path=/tmp/myvtpm2/swtpm-sock \ -tpmdev emulator,id=tpm0,chardev=chrtpm \ -machine tpm-base-addr=0x0c000000 \ swtpm implements a TPM software emulator(TPM 1.2 & TPM 2) built on libtpms and provides access to TPM functionality over socket, chardev and CUSE interface. Github repo: https://github.com/stefanberger/swtpm Example for starting swtpm on host machine: mkdir /tmp/vtpm2 swtpm socket --tpmstate dir=/tmp/vtpm2 \ --ctrl type=unixio,path=/tmp/vtpm2/swtpm-sock & Signed-off-by: Vikram Garhwal Signed-off-by: Stefano Stabellini Reviewed-by: Stefano Stabellini --- docs/system/arm/xenpvh.rst | 34 +++++++ docs/system/target-arm.rst | 1 + hw/arm/meson.build | 2 + hw/arm/xen_arm.c | 181 ++++++++++++++++++++++++++++++++++ include/hw/arm/xen_arch_hvm.h | 9 ++ include/hw/xen/arch_hvm.h | 2 + 6 files changed, 229 insertions(+) create mode 100644 docs/system/arm/xenpvh.rst create mode 100644 hw/arm/xen_arm.c create mode 100644 include/hw/arm/xen_arch_hvm.h diff --git a/docs/system/arm/xenpvh.rst b/docs/system/arm/xenpvh.rst new file mode 100644 index 0000000000..e1655c7ab8 --- /dev/null +++ b/docs/system/arm/xenpvh.rst @@ -0,0 +1,34 @@ +XENPVH (``xenpvh``) +========================================= +This machine creates a IOREQ server to register/connect with Xen Hypervisor. + +When TPM is enabled, this machine also creates a tpm-tis-device at a user input +tpm base address, adds a TPM emulator and connects to a swtpm application +running on host machine via chardev socket. This enables xenpvh to support TPM +functionalities for a guest domain. + +More information about TPM use and installing swtpm linux application can be +found at: docs/specs/tpm.rst. + +Example for starting swtpm on host machine: +.. code-block:: console + + mkdir /tmp/vtpm2 + swtpm socket --tpmstate dir=/tmp/vtpm2 \ + --ctrl type=unixio,path=/tmp/vtpm2/swtpm-sock & + +Sample QEMU xenpvh commands for running and connecting with Xen: +.. code-block:: console + + qemu-system-aarch64 -xen-domid 1 \ + -chardev socket,id=libxl-cmd,path=qmp-libxl-1,server=on,wait=off \ + -mon chardev=libxl-cmd,mode=control \ + -chardev socket,id=libxenstat-cmd,path=qmp-libxenstat-1,server=on,wait=off \ + -mon chardev=libxenstat-cmd,mode=control \ + -xen-attach -name guest0 -vnc none -display none -nographic \ + -machine xenpvh -m 1301 \ + -chardev socket,id=chrtpm,path=tmp/vtpm2/swtpm-sock \ + -tpmdev emulator,id=tpm0,chardev=chrtpm -machine tpm-base-addr=0x0C000000 + +In above QEMU command, last two lines are for connecting xenpvh QEMU to swtpm +via chardev socket. diff --git a/docs/system/target-arm.rst b/docs/system/target-arm.rst index a12b6bca05..790ac1b8a2 100644 --- a/docs/system/target-arm.rst +++ b/docs/system/target-arm.rst @@ -107,6 +107,7 @@ undocumented; you can get a complete list by running arm/stm32 arm/virt arm/xlnx-versal-virt + arm/xenpvh Emulated CPU architecture support ================================= diff --git a/hw/arm/meson.build b/hw/arm/meson.build index 870ec67376..4f94f821b0 100644 --- a/hw/arm/meson.build +++ b/hw/arm/meson.build @@ -63,6 +63,8 @@ arm_ss.add(when: 'CONFIG_FSL_IMX7', if_true: files('fsl-imx7.c', 'mcimx7d-sabre. arm_ss.add(when: 'CONFIG_ARM_SMMUV3', if_true: files('smmuv3.c')) arm_ss.add(when: 'CONFIG_FSL_IMX6UL', if_true: files('fsl-imx6ul.c', 'mcimx6ul-evk.c')) arm_ss.add(when: 'CONFIG_NRF51_SOC', if_true: files('nrf51_soc.c')) +arm_ss.add(when: 'CONFIG_XEN', if_true: files('xen_arm.c')) +arm_ss.add_all(xen_ss) softmmu_ss.add(when: 'CONFIG_ARM_SMMUV3', if_true: files('smmu-common.c')) softmmu_ss.add(when: 'CONFIG_EXYNOS4', if_true: files('exynos4_boards.c')) diff --git a/hw/arm/xen_arm.c b/hw/arm/xen_arm.c new file mode 100644 index 0000000000..19b1cb81ad --- /dev/null +++ b/hw/arm/xen_arm.c @@ -0,0 +1,181 @@ +/* + * QEMU ARM Xen PVH Machine + * + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL + * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + */ + +#include "qemu/osdep.h" +#include "qemu/error-report.h" +#include "qapi/qapi-commands-migration.h" +#include "qapi/visitor.h" +#include "hw/boards.h" +#include "hw/sysbus.h" +#include "sysemu/block-backend.h" +#include "sysemu/tpm_backend.h" +#include "sysemu/sysemu.h" +#include "hw/xen/xen-hvm-common.h" +#include "sysemu/tpm.h" +#include "hw/xen/arch_hvm.h" + +#define TYPE_XEN_ARM MACHINE_TYPE_NAME("xenpvh") +OBJECT_DECLARE_SIMPLE_TYPE(XenArmState, XEN_ARM) + +static MemoryListener xen_memory_listener = { + .region_add = xen_region_add, + .region_del = xen_region_del, + .log_start = NULL, + .log_stop = NULL, + .log_sync = NULL, + .log_global_start = NULL, + .log_global_stop = NULL, + .priority = 10, +}; + +struct XenArmState { + /*< private >*/ + MachineState parent; + + XenIOState *state; + + struct { + uint64_t tpm_base_addr; + } cfg; +}; + +void arch_handle_ioreq(XenIOState *state, ioreq_t *req) +{ + hw_error("Invalid ioreq type 0x%x\n", req->type); + + return; +} + +void arch_xen_set_memory(XenIOState *state, MemoryRegionSection *section, + bool add) +{ +} + +void xen_hvm_modified_memory(ram_addr_t start, ram_addr_t length) +{ +} + +void qmp_xen_set_global_dirty_log(bool enable, Error **errp) +{ +} + +#ifdef CONFIG_TPM +static void xen_enable_tpm(XenArmState *xam) +{ + Error *errp = NULL; + DeviceState *dev; + SysBusDevice *busdev; + + TPMBackend *be = qemu_find_tpm_be("tpm0"); + if (be == NULL) { + DPRINTF("Couldn't fine the backend for tpm0\n"); + return; + } + dev = qdev_new(TYPE_TPM_TIS_SYSBUS); + object_property_set_link(OBJECT(dev), "tpmdev", OBJECT(be), &errp); + object_property_set_str(OBJECT(dev), "tpmdev", be->id, &errp); + busdev = SYS_BUS_DEVICE(dev); + sysbus_realize_and_unref(busdev, &error_fatal); + sysbus_mmio_map(busdev, 0, xam->cfg.tpm_base_addr); + + DPRINTF("Connected tpmdev at address 0x%lx\n", xam->cfg.tpm_base_addr); +} +#endif + +static void xen_arm_init(MachineState *machine) +{ + XenArmState *xam = XEN_ARM(machine); + + xam->state = g_new0(XenIOState, 1); + + xen_register_ioreq(xam->state, machine->smp.cpus, xen_memory_listener); + +#ifdef CONFIG_TPM + if (xam->cfg.tpm_base_addr) { + xen_enable_tpm(xam); + } else { + DPRINTF("tpm-base-addr is not provided. TPM will not be enabled\n"); + } +#endif +} + +#ifdef CONFIG_TPM +static void xen_arm_get_tpm_base_addr(Object *obj, Visitor *v, + const char *name, void *opaque, + Error **errp) +{ + XenArmState *xam = XEN_ARM(obj); + uint64_t value = xam->cfg.tpm_base_addr; + + visit_type_uint64(v, name, &value, errp); +} + +static void xen_arm_set_tpm_base_addr(Object *obj, Visitor *v, + const char *name, void *opaque, + Error **errp) +{ + XenArmState *xam = XEN_ARM(obj); + uint64_t value; + + if (!visit_type_uint64(v, name, &value, errp)) { + return; + } + + xam->cfg.tpm_base_addr = value; +} +#endif + +static void xen_arm_machine_class_init(ObjectClass *oc, void *data) +{ + + MachineClass *mc = MACHINE_CLASS(oc); + mc->desc = "Xen Para-virtualized PC"; + mc->init = xen_arm_init; + mc->max_cpus = 1; + mc->default_machine_opts = "accel=xen"; + +#ifdef CONFIG_TPM + object_class_property_add(oc, "tpm-base-addr", "uint64_t", + xen_arm_get_tpm_base_addr, + xen_arm_set_tpm_base_addr, + NULL, NULL); + object_class_property_set_description(oc, "tpm-base-addr", + "Set Base address for TPM device."); + + machine_class_allow_dynamic_sysbus_dev(mc, TYPE_TPM_TIS_SYSBUS); +#endif +} + +static const TypeInfo xen_arm_machine_type = { + .name = TYPE_XEN_ARM, + .parent = TYPE_MACHINE, + .class_init = xen_arm_machine_class_init, + .instance_size = sizeof(XenArmState), +}; + +static void xen_arm_machine_register_types(void) +{ + type_register_static(&xen_arm_machine_type); +} + +type_init(xen_arm_machine_register_types) diff --git a/include/hw/arm/xen_arch_hvm.h b/include/hw/arm/xen_arch_hvm.h new file mode 100644 index 0000000000..8fd645e723 --- /dev/null +++ b/include/hw/arm/xen_arch_hvm.h @@ -0,0 +1,9 @@ +#ifndef HW_XEN_ARCH_ARM_HVM_H +#define HW_XEN_ARCH_ARM_HVM_H + +#include +void arch_handle_ioreq(XenIOState *state, ioreq_t *req); +void arch_xen_set_memory(XenIOState *state, + MemoryRegionSection *section, + bool add); +#endif diff --git a/include/hw/xen/arch_hvm.h b/include/hw/xen/arch_hvm.h index 26674648d8..c7c515220d 100644 --- a/include/hw/xen/arch_hvm.h +++ b/include/hw/xen/arch_hvm.h @@ -1,3 +1,5 @@ #if defined(TARGET_I386) || defined(TARGET_X86_64) #include "hw/i386/xen_arch_hvm.h" +#elif defined(TARGET_ARM) || defined(TARGET_ARM_64) +#include "hw/arm/xen_arch_hvm.h" #endif -- 2.17.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 15 00:05:22 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 15 Jun 2023 00:05:22 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549312.857817 (Exim 4.92) (envelope-from ) id 1q9aUM-0008Jm-65; Thu, 15 Jun 2023 00:05:22 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549312.857817; Thu, 15 Jun 2023 00:05:22 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9aUM-0008IU-1t; Thu, 15 Jun 2023 00:05:22 +0000 Received: by outflank-mailman (input) for mailman id 549312; Thu, 15 Jun 2023 00:05:20 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9aUJ-0006Ty-SY for xen-devel@lists.xenproject.org; Thu, 15 Jun 2023 00:05:20 +0000 Received: from NAM11-BN8-obe.outbound.protection.outlook.com (mail-bn8nam11on20601.outbound.protection.outlook.com [2a01:111:f400:7eae::601]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 4f21bb4b-0b10-11ee-b232-6b7b168915f2; Thu, 15 Jun 2023 02:05:17 +0200 (CEST) Received: from MW4PR04CA0283.namprd04.prod.outlook.com (2603:10b6:303:89::18) by SA1PR12MB6871.namprd12.prod.outlook.com (2603:10b6:806:25f::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.46; Thu, 15 Jun 2023 00:05:12 +0000 Received: from CO1NAM11FT054.eop-nam11.prod.protection.outlook.com (2603:10b6:303:89:cafe::62) by MW4PR04CA0283.outlook.office365.com (2603:10b6:303:89::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.37 via Frontend Transport; Thu, 15 Jun 2023 00:05:11 +0000 Received: from SATLEXMB04.amd.com (165.204.84.17) by CO1NAM11FT054.mail.protection.outlook.com (10.13.174.70) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6500.26 via Frontend Transport; Thu, 15 Jun 2023 00:05:10 +0000 Received: from SATLEXMB08.amd.com (10.181.40.132) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Wed, 14 Jun 2023 19:05:00 -0500 Received: from SATLEXMB04.amd.com (10.181.40.145) by SATLEXMB08.amd.com (10.181.40.132) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Wed, 14 Jun 2023 17:04:39 -0700 Received: from xsjfnuv50.xilinx.com (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server id 15.1.2507.23 via Frontend Transport; Wed, 14 Jun 2023 19:04:38 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 4f21bb4b-0b10-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=cI2Te/Mjg0Agwrfu2juv5mY0TEUc4mH6a999hB2CTddoMZNxWKCT/vgDIA/bqZImqfK6nbLb+7FLoDT/6ya7NC/IVrRWdCnxChzH+QaICrprkXar+X7cYsGOPeR9MFP2+jXhbOpaMb3WRhdZmNkkYy/KN9bNspBWGHaiskGEyTJCyQxXzPUA4qFUk5JpzCziSrVMz1icGXBH3U9tCKZO1h77NDF9rnEb3/gsN5zhFQ/sywdxH7SVczps27x7RIMMlO/Dj/M8rhuKTfTcqsN9hj+0tHuhS/x3DvJPcl69DVugdCjObBbagNhTXAecvjTdrdANCvCIt5qlzTEaG6zO5Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=NetFI3mOW5SjmdnTbZSgx/icyXfkTVKaHu4Wc/6TI7c=; b=Ir61jaHkx7Ti/oSdjKOVe6rdPXpzvlCL4SQB23AQfDVzm1yVlq+KCytUNaD8YBc3RgAmvVLDnon5UaESkkUj3JyiGTDCJVqnRTNxtLSeGaa6k0ZvLu1uRw83qegczoycaD4+Jy0W8rZ7814nAnUwoAkUGwlG66NPuYIA2EX1p1cGYS4RcoiMDiscBhq5ZTIlKTZV3tgdaliRHQUYc6pEJ/FCMTNY2r7V7CJphmZK/J/8g7ANZD0bp5PNjJGVoAT0pONYepSEK4nTTHB5Cew9U91FqVEWWI+dWzmTkW9A8VynekUjpxOtU91w2pblqrvOr2kuB3E98sF9juDEcQ6fRw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=nongnu.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=NetFI3mOW5SjmdnTbZSgx/icyXfkTVKaHu4Wc/6TI7c=; b=Vu06Ifh9VearmpnW+J1r5NBBH6wpC9xuZX+z1P722VA/UHnjV4k9z0FbchEDHjmxJ89vqXDKOBMrVtPbC8OLViJ6uSyCdUVEjADkQzXg7Sdv/zYQDDqEmeu+XNK/RXBxRgo/2/jAsmhYS4f4Mrt7VyQdgK2eKXcJC4CRWOP7MGw= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C From: Vikram Garhwal To: CC: , Stefano Stabellini , Vikram Garhwal , Anthony Perard , Paul Durrant , "Michael S. Tsirkin" , Marcel Apfelbaum , Paolo Bonzini , Richard Henderson , Eduardo Habkost , "open list:X86 Xen CPUs" Subject: [QEMU][PATCH v8 04/11] xen-hvm: reorganize xen-hvm and move common function to xen-hvm-common Date: Wed, 14 Jun 2023 17:03:32 -0700 Message-ID: <20230615000340.1135-5-vikram.garhwal@amd.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20230615000340.1135-1-vikram.garhwal@amd.com> References: <20230615000340.1135-1-vikram.garhwal@amd.com> MIME-Version: 1.0 Content-Type: text/plain X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO1NAM11FT054:EE_|SA1PR12MB6871:EE_ X-MS-Office365-Filtering-Correlation-Id: 7930fd19-a4a0-4cb6-dedf-08db6d342fe3 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: haN3wRSfiLLdxCpORRL4txicIFePwBRSLCgQaP5zcKsbNYK0PasDUSXFIE5YasKJmjFchBReSrw06Y3mC1O5Yj3xMSkn4bd99BdYktWpZcvIp9PLlqg8VxC7iSKNSTWLFRRA1oPB/a2jl6BSsroONmpCUlrXZHYg7tsW79QdfZglvMLzs5Knml8kQtkx8udBX9tc/fHD/LExwfjmo7J4fRtRXMFXJlWpotydPidIHZWb4GEcIriP8xVZ2XW72IsdlReL9yI86hw4HVIv+ROiFPY0hUdl5ao9R2lyLcHXXPPukJc4QphI4q+W3DJv7+jkdz8Q16U5TGQWeai164X3PZ68Mfk0lxcqX1AHiMN1JlQc+H8EwIO/C5rN9zpfTYLA0j4u1ZYXD3/xe4XuRH8FVelrRd0c1k2YGN+/HTHFioadnIYX8vPkT0Z8u+QV3hGbFIOjtApn0di3EvlA92tzMPE2IMyxQ++UMWuTsqJQdQZ5lcAgwlztAq5GI0Xg2oExmaZOJgGP70VxR327uZH9vtGr+EObIwGPEtUj0OczAP79UawbcblPNCA0bEpnd2j7+tHpa9aWRemXv/HKRlfb2apQllQFLKRM/rt4OUgj/ATPC2AgFQVCku2OUGZn/7HNFm6J5XQd94vRoRaOTlTTqsnie5Hbb2eB7rcjdijZdhTz2Krr98M5m4nPu+tuKyBQi+/68Ql33gYSTDQigr1pl99IAAhS1UCgElQBjop0rcGRzwPs3Z6Nfc9X9OHHwQ8tglhFStYrFjCd+xSUH4tXyw== X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(346002)(136003)(396003)(376002)(39860400002)(451199021)(36840700001)(46966006)(40470700004)(82310400005)(316002)(7416002)(86362001)(40460700003)(8676002)(41300700001)(40480700001)(26005)(82740400003)(83380400001)(5660300002)(81166007)(1076003)(356005)(6666004)(36860700001)(8936002)(44832011)(336012)(426003)(36756003)(47076005)(70586007)(4326008)(70206006)(478600001)(6916009)(186003)(30864003)(2906002)(54906003)(2616005)(36900700001)(559001)(579004);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Jun 2023 00:05:10.9903 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 7930fd19-a4a0-4cb6-dedf-08db6d342fe3 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com] X-MS-Exchange-CrossTenant-AuthSource: CO1NAM11FT054.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA1PR12MB6871 From: Stefano Stabellini This patch does following: 1. creates arch_handle_ioreq() and arch_xen_set_memory(). This is done in preparation for moving most of xen-hvm code to an arch-neutral location, move the x86-specific portion of xen_set_memory to arch_xen_set_memory. Also, move handle_vmport_ioreq to arch_handle_ioreq. 2. Pure code movement: move common functions to hw/xen/xen-hvm-common.c Extract common functionalities from hw/i386/xen/xen-hvm.c and move them to hw/xen/xen-hvm-common.c. These common functions are useful for creating an IOREQ server. xen_hvm_init_pc() contains the architecture independent code for creating and mapping a IOREQ server, connecting memory and IO listeners, initializing a xen bus and registering backends. Moved this common xen code to a new function xen_register_ioreq() which can be used by both x86 and ARM machines. Following functions are moved to hw/xen/xen-hvm-common.c: xen_vcpu_eport(), xen_vcpu_ioreq(), xen_ram_alloc(), xen_set_memory(), xen_region_add(), xen_region_del(), xen_io_add(), xen_io_del(), xen_device_realize(), xen_device_unrealize(), cpu_get_ioreq_from_shared_memory(), cpu_get_ioreq(), do_inp(), do_outp(), rw_phys_req_item(), read_phys_req_item(), write_phys_req_item(), cpu_ioreq_pio(), cpu_ioreq_move(), cpu_ioreq_config(), handle_ioreq(), handle_buffered_iopage(), handle_buffered_io(), cpu_handle_ioreq(), xen_main_loop_prepare(), xen_hvm_change_state_handler(), xen_exit_notifier(), xen_map_ioreq_server(), destroy_hvm_domain() and xen_shutdown_fatal_error() 3. Removed static type from below functions: 1. xen_region_add() 2. xen_region_del() 3. xen_io_add() 4. xen_io_del() 5. xen_device_realize() 6. xen_device_unrealize() 7. xen_hvm_change_state_handler() 8. cpu_ioreq_pio() 9. xen_exit_notifier() 4. Replace TARGET_PAGE_SIZE with XC_PAGE_SIZE to match the page side with Xen. Signed-off-by: Vikram Garhwal Signed-off-by: Stefano Stabellini Acked-by: Stefano Stabellini --- hw/i386/xen/trace-events | 14 - hw/i386/xen/xen-hvm.c | 1016 ++----------------------------- hw/xen/meson.build | 5 +- hw/xen/trace-events | 14 + hw/xen/xen-hvm-common.c | 860 ++++++++++++++++++++++++++ include/hw/i386/xen_arch_hvm.h | 11 + include/hw/xen/arch_hvm.h | 3 + include/hw/xen/xen-hvm-common.h | 99 +++ 8 files changed, 1054 insertions(+), 968 deletions(-) create mode 100644 hw/xen/xen-hvm-common.c create mode 100644 include/hw/i386/xen_arch_hvm.h create mode 100644 include/hw/xen/arch_hvm.h create mode 100644 include/hw/xen/xen-hvm-common.h diff --git a/hw/i386/xen/trace-events b/hw/i386/xen/trace-events index a0c89d91c4..5d0a8d6dcf 100644 --- a/hw/i386/xen/trace-events +++ b/hw/i386/xen/trace-events @@ -7,17 +7,3 @@ xen_platform_log(char *s) "xen platform: %s" xen_pv_mmio_read(uint64_t addr) "WARNING: read from Xen PV Device MMIO space (address 0x%"PRIx64")" xen_pv_mmio_write(uint64_t addr) "WARNING: write to Xen PV Device MMIO space (address 0x%"PRIx64")" -# xen-hvm.c -xen_ram_alloc(unsigned long ram_addr, unsigned long size) "requested: 0x%lx, size 0x%lx" -xen_client_set_memory(uint64_t start_addr, unsigned long size, bool log_dirty) "0x%"PRIx64" size 0x%lx, log_dirty %i" -handle_ioreq(void *req, uint32_t type, uint32_t dir, uint32_t df, uint32_t data_is_ptr, uint64_t addr, uint64_t data, uint32_t count, uint32_t size) "I/O=%p type=%d dir=%d df=%d ptr=%d port=0x%"PRIx64" data=0x%"PRIx64" count=%d size=%d" -handle_ioreq_read(void *req, uint32_t type, uint32_t df, uint32_t data_is_ptr, uint64_t addr, uint64_t data, uint32_t count, uint32_t size) "I/O=%p read type=%d df=%d ptr=%d port=0x%"PRIx64" data=0x%"PRIx64" count=%d size=%d" -handle_ioreq_write(void *req, uint32_t type, uint32_t df, uint32_t data_is_ptr, uint64_t addr, uint64_t data, uint32_t count, uint32_t size) "I/O=%p write type=%d df=%d ptr=%d port=0x%"PRIx64" data=0x%"PRIx64" count=%d size=%d" -cpu_ioreq_pio(void *req, uint32_t dir, uint32_t df, uint32_t data_is_ptr, uint64_t addr, uint64_t data, uint32_t count, uint32_t size) "I/O=%p pio dir=%d df=%d ptr=%d port=0x%"PRIx64" data=0x%"PRIx64" count=%d size=%d" -cpu_ioreq_pio_read_reg(void *req, uint64_t data, uint64_t addr, uint32_t size) "I/O=%p pio read reg data=0x%"PRIx64" port=0x%"PRIx64" size=%d" -cpu_ioreq_pio_write_reg(void *req, uint64_t data, uint64_t addr, uint32_t size) "I/O=%p pio write reg data=0x%"PRIx64" port=0x%"PRIx64" size=%d" -cpu_ioreq_move(void *req, uint32_t dir, uint32_t df, uint32_t data_is_ptr, uint64_t addr, uint64_t data, uint32_t count, uint32_t size) "I/O=%p copy dir=%d df=%d ptr=%d port=0x%"PRIx64" data=0x%"PRIx64" count=%d size=%d" -xen_map_resource_ioreq(uint32_t id, void *addr) "id: %u addr: %p" -cpu_ioreq_config_read(void *req, uint32_t sbdf, uint32_t reg, uint32_t size, uint32_t data) "I/O=%p sbdf=0x%x reg=%u size=%u data=0x%x" -cpu_ioreq_config_write(void *req, uint32_t sbdf, uint32_t reg, uint32_t size, uint32_t data) "I/O=%p sbdf=0x%x reg=%u size=%u data=0x%x" - diff --git a/hw/i386/xen/xen-hvm.c b/hw/i386/xen/xen-hvm.c index 01bf947f1c..5dc5e80535 100644 --- a/hw/i386/xen/xen-hvm.c +++ b/hw/i386/xen/xen-hvm.c @@ -10,43 +10,21 @@ #include "qemu/osdep.h" #include "qemu/units.h" +#include "qapi/error.h" +#include "qapi/qapi-commands-migration.h" +#include "trace.h" -#include "cpu.h" -#include "hw/pci/pci.h" -#include "hw/pci/pci_host.h" #include "hw/i386/pc.h" #include "hw/irq.h" -#include "hw/hw.h" #include "hw/i386/apic-msidef.h" -#include "hw/xen/xen_native.h" -#include "hw/xen/xen-legacy-backend.h" -#include "hw/xen/xen-bus.h" #include "hw/xen/xen-x86.h" -#include "qapi/error.h" -#include "qapi/qapi-commands-migration.h" -#include "qemu/error-report.h" -#include "qemu/main-loop.h" #include "qemu/range.h" -#include "sysemu/runstate.h" -#include "sysemu/sysemu.h" -#include "sysemu/xen.h" -#include "sysemu/xen-mapcache.h" -#include "trace.h" -#include +#include "hw/xen/xen-hvm-common.h" +#include "hw/xen/arch_hvm.h" #include -//#define DEBUG_XEN_HVM - -#ifdef DEBUG_XEN_HVM -#define DPRINTF(fmt, ...) \ - do { fprintf(stderr, "xen: " fmt, ## __VA_ARGS__); } while (0) -#else -#define DPRINTF(fmt, ...) \ - do { } while (0) -#endif - -static MemoryRegion ram_memory, ram_640k, ram_lo, ram_hi; +static MemoryRegion ram_640k, ram_lo, ram_hi; static MemoryRegion *framebuffer; static bool xen_in_migration; @@ -74,27 +52,8 @@ struct shared_vmport_iopage { }; typedef struct shared_vmport_iopage shared_vmport_iopage_t; #endif -static shared_vmport_iopage_t *shared_vmport_page; -static inline uint32_t xen_vcpu_eport(shared_iopage_t *shared_page, int i) -{ - return shared_page->vcpu_ioreq[i].vp_eport; -} -static inline ioreq_t *xen_vcpu_ioreq(shared_iopage_t *shared_page, int vcpu) -{ - return &shared_page->vcpu_ioreq[vcpu]; -} - -#define BUFFER_IO_MAX_DELAY 100 - -typedef struct XenPhysmap { - hwaddr start_addr; - ram_addr_t size; - const char *name; - hwaddr phys_offset; - - QLIST_ENTRY(XenPhysmap) list; -} XenPhysmap; +static shared_vmport_iopage_t *shared_vmport_page; static QLIST_HEAD(, XenPhysmap) xen_physmap; static const XenPhysmap *log_for_dirtybit; @@ -103,38 +62,6 @@ static unsigned long *dirty_bitmap; static Notifier suspend; static Notifier wakeup; -typedef struct XenPciDevice { - PCIDevice *pci_dev; - uint32_t sbdf; - QLIST_ENTRY(XenPciDevice) entry; -} XenPciDevice; - -typedef struct XenIOState { - ioservid_t ioservid; - shared_iopage_t *shared_page; - buffered_iopage_t *buffered_io_page; - xenforeignmemory_resource_handle *fres; - QEMUTimer *buffered_io_timer; - CPUState **cpu_by_vcpu_id; - /* the evtchn port for polling the notification, */ - evtchn_port_t *ioreq_local_port; - /* evtchn remote and local ports for buffered io */ - evtchn_port_t bufioreq_remote_port; - evtchn_port_t bufioreq_local_port; - /* the evtchn fd for polling */ - xenevtchn_handle *xce_handle; - /* which vcpu we are serving */ - int send_vcpu; - - struct xs_handle *xenstore; - MemoryListener memory_listener; - MemoryListener io_listener; - QLIST_HEAD(, XenPciDevice) dev_list; - DeviceListener device_listener; - - Notifier exit; -} XenIOState; - /* Xen specific function for piix pci */ int xen_pci_slot_get_pirq(PCIDevice *pci_dev, int irq_num) @@ -247,42 +174,6 @@ static void xen_ram_init(PCMachineState *pcms, } } -void xen_ram_alloc(ram_addr_t ram_addr, ram_addr_t size, MemoryRegion *mr, - Error **errp) -{ - unsigned long nr_pfn; - xen_pfn_t *pfn_list; - int i; - - if (runstate_check(RUN_STATE_INMIGRATE)) { - /* RAM already populated in Xen */ - fprintf(stderr, "%s: do not alloc "RAM_ADDR_FMT - " bytes of ram at "RAM_ADDR_FMT" when runstate is INMIGRATE\n", - __func__, size, ram_addr); - return; - } - - if (mr == &ram_memory) { - return; - } - - trace_xen_ram_alloc(ram_addr, size); - - nr_pfn = size >> TARGET_PAGE_BITS; - pfn_list = g_malloc(sizeof (*pfn_list) * nr_pfn); - - for (i = 0; i < nr_pfn; i++) { - pfn_list[i] = (ram_addr >> TARGET_PAGE_BITS) + i; - } - - if (xc_domain_populate_physmap_exact(xen_xc, xen_domid, nr_pfn, 0, 0, pfn_list)) { - error_setg(errp, "xen: failed to populate ram at " RAM_ADDR_FMT, - ram_addr); - } - - g_free(pfn_list); -} - static XenPhysmap *get_physmapping(hwaddr start_addr, ram_addr_t size) { XenPhysmap *physmap = NULL; @@ -472,144 +363,6 @@ static int xen_remove_from_physmap(XenIOState *state, return 0; } -static void xen_set_memory(struct MemoryListener *listener, - MemoryRegionSection *section, - bool add) -{ - XenIOState *state = container_of(listener, XenIOState, memory_listener); - hwaddr start_addr = section->offset_within_address_space; - ram_addr_t size = int128_get64(section->size); - bool log_dirty = memory_region_is_logging(section->mr, DIRTY_MEMORY_VGA); - hvmmem_type_t mem_type; - - if (section->mr == &ram_memory) { - return; - } else { - if (add) { - xen_map_memory_section(xen_domid, state->ioservid, - section); - } else { - xen_unmap_memory_section(xen_domid, state->ioservid, - section); - } - } - - if (!memory_region_is_ram(section->mr)) { - return; - } - - if (log_dirty != add) { - return; - } - - trace_xen_client_set_memory(start_addr, size, log_dirty); - - start_addr &= TARGET_PAGE_MASK; - size = TARGET_PAGE_ALIGN(size); - - if (add) { - if (!memory_region_is_rom(section->mr)) { - xen_add_to_physmap(state, start_addr, size, - section->mr, section->offset_within_region); - } else { - mem_type = HVMMEM_ram_ro; - if (xen_set_mem_type(xen_domid, mem_type, - start_addr >> TARGET_PAGE_BITS, - size >> TARGET_PAGE_BITS)) { - DPRINTF("xen_set_mem_type error, addr: "HWADDR_FMT_plx"\n", - start_addr); - } - } - } else { - if (xen_remove_from_physmap(state, start_addr, size) < 0) { - DPRINTF("physmapping does not exist at "HWADDR_FMT_plx"\n", start_addr); - } - } -} - -static void xen_region_add(MemoryListener *listener, - MemoryRegionSection *section) -{ - memory_region_ref(section->mr); - xen_set_memory(listener, section, true); -} - -static void xen_region_del(MemoryListener *listener, - MemoryRegionSection *section) -{ - xen_set_memory(listener, section, false); - memory_region_unref(section->mr); -} - -static void xen_io_add(MemoryListener *listener, - MemoryRegionSection *section) -{ - XenIOState *state = container_of(listener, XenIOState, io_listener); - MemoryRegion *mr = section->mr; - - if (mr->ops == &unassigned_io_ops) { - return; - } - - memory_region_ref(mr); - - xen_map_io_section(xen_domid, state->ioservid, section); -} - -static void xen_io_del(MemoryListener *listener, - MemoryRegionSection *section) -{ - XenIOState *state = container_of(listener, XenIOState, io_listener); - MemoryRegion *mr = section->mr; - - if (mr->ops == &unassigned_io_ops) { - return; - } - - xen_unmap_io_section(xen_domid, state->ioservid, section); - - memory_region_unref(mr); -} - -static void xen_device_realize(DeviceListener *listener, - DeviceState *dev) -{ - XenIOState *state = container_of(listener, XenIOState, device_listener); - - if (object_dynamic_cast(OBJECT(dev), TYPE_PCI_DEVICE)) { - PCIDevice *pci_dev = PCI_DEVICE(dev); - XenPciDevice *xendev = g_new(XenPciDevice, 1); - - xendev->pci_dev = pci_dev; - xendev->sbdf = PCI_BUILD_BDF(pci_dev_bus_num(pci_dev), - pci_dev->devfn); - QLIST_INSERT_HEAD(&state->dev_list, xendev, entry); - - xen_map_pcidev(xen_domid, state->ioservid, pci_dev); - } -} - -static void xen_device_unrealize(DeviceListener *listener, - DeviceState *dev) -{ - XenIOState *state = container_of(listener, XenIOState, device_listener); - - if (object_dynamic_cast(OBJECT(dev), TYPE_PCI_DEVICE)) { - PCIDevice *pci_dev = PCI_DEVICE(dev); - XenPciDevice *xendev, *next; - - xen_unmap_pcidev(xen_domid, state->ioservid, pci_dev); - - QLIST_FOREACH_SAFE(xendev, &state->dev_list, entry, next) { - if (xendev->pci_dev == pci_dev) { - QLIST_REMOVE(xendev, entry); - g_free(xendev); - break; - } - } - } -} - static void xen_sync_dirty_bitmap(XenIOState *state, hwaddr start_addr, ram_addr_t size) @@ -717,277 +470,6 @@ static MemoryListener xen_memory_listener = { .priority = 10, }; -static MemoryListener xen_io_listener = { - .name = "xen-io", - .region_add = xen_io_add, - .region_del = xen_io_del, - .priority = 10, -}; - -static DeviceListener xen_device_listener = { - .realize = xen_device_realize, - .unrealize = xen_device_unrealize, -}; - -/* get the ioreq packets from share mem */ -static ioreq_t *cpu_get_ioreq_from_shared_memory(XenIOState *state, int vcpu) -{ - ioreq_t *req = xen_vcpu_ioreq(state->shared_page, vcpu); - - if (req->state != STATE_IOREQ_READY) { - DPRINTF("I/O request not ready: " - "%x, ptr: %x, port: %"PRIx64", " - "data: %"PRIx64", count: %u, size: %u\n", - req->state, req->data_is_ptr, req->addr, - req->data, req->count, req->size); - return NULL; - } - - xen_rmb(); /* see IOREQ_READY /then/ read contents of ioreq */ - - req->state = STATE_IOREQ_INPROCESS; - return req; -} - -/* use poll to get the port notification */ -/* ioreq_vec--out,the */ -/* retval--the number of ioreq packet */ -static ioreq_t *cpu_get_ioreq(XenIOState *state) -{ - MachineState *ms = MACHINE(qdev_get_machine()); - unsigned int max_cpus = ms->smp.max_cpus; - int i; - evtchn_port_t port; - - port = qemu_xen_evtchn_pending(state->xce_handle); - if (port == state->bufioreq_local_port) { - timer_mod(state->buffered_io_timer, - BUFFER_IO_MAX_DELAY + qemu_clock_get_ms(QEMU_CLOCK_REALTIME)); - return NULL; - } - - if (port != -1) { - for (i = 0; i < max_cpus; i++) { - if (state->ioreq_local_port[i] == port) { - break; - } - } - - if (i == max_cpus) { - hw_error("Fatal error while trying to get io event!\n"); - } - - /* unmask the wanted port again */ - qemu_xen_evtchn_unmask(state->xce_handle, port); - - /* get the io packet from shared memory */ - state->send_vcpu = i; - return cpu_get_ioreq_from_shared_memory(state, i); - } - - /* read error or read nothing */ - return NULL; -} - -static uint32_t do_inp(uint32_t addr, unsigned long size) -{ - switch (size) { - case 1: - return cpu_inb(addr); - case 2: - return cpu_inw(addr); - case 4: - return cpu_inl(addr); - default: - hw_error("inp: bad size: %04x %lx", addr, size); - } -} - -static void do_outp(uint32_t addr, - unsigned long size, uint32_t val) -{ - switch (size) { - case 1: - return cpu_outb(addr, val); - case 2: - return cpu_outw(addr, val); - case 4: - return cpu_outl(addr, val); - default: - hw_error("outp: bad size: %04x %lx", addr, size); - } -} - -/* - * Helper functions which read/write an object from/to physical guest - * memory, as part of the implementation of an ioreq. - * - * Equivalent to - * cpu_physical_memory_rw(addr + (req->df ? -1 : +1) * req->size * i, - * val, req->size, 0/1) - * except without the integer overflow problems. - */ -static void rw_phys_req_item(hwaddr addr, - ioreq_t *req, uint32_t i, void *val, int rw) -{ - /* Do everything unsigned so overflow just results in a truncated result - * and accesses to undesired parts of guest memory, which is up - * to the guest */ - hwaddr offset = (hwaddr)req->size * i; - if (req->df) { - addr -= offset; - } else { - addr += offset; - } - cpu_physical_memory_rw(addr, val, req->size, rw); -} - -static inline void read_phys_req_item(hwaddr addr, - ioreq_t *req, uint32_t i, void *val) -{ - rw_phys_req_item(addr, req, i, val, 0); -} -static inline void write_phys_req_item(hwaddr addr, - ioreq_t *req, uint32_t i, void *val) -{ - rw_phys_req_item(addr, req, i, val, 1); -} - - -static void cpu_ioreq_pio(ioreq_t *req) -{ - uint32_t i; - - trace_cpu_ioreq_pio(req, req->dir, req->df, req->data_is_ptr, req->addr, - req->data, req->count, req->size); - - if (req->size > sizeof(uint32_t)) { - hw_error("PIO: bad size (%u)", req->size); - } - - if (req->dir == IOREQ_READ) { - if (!req->data_is_ptr) { - req->data = do_inp(req->addr, req->size); - trace_cpu_ioreq_pio_read_reg(req, req->data, req->addr, - req->size); - } else { - uint32_t tmp; - - for (i = 0; i < req->count; i++) { - tmp = do_inp(req->addr, req->size); - write_phys_req_item(req->data, req, i, &tmp); - } - } - } else if (req->dir == IOREQ_WRITE) { - if (!req->data_is_ptr) { - trace_cpu_ioreq_pio_write_reg(req, req->data, req->addr, - req->size); - do_outp(req->addr, req->size, req->data); - } else { - for (i = 0; i < req->count; i++) { - uint32_t tmp = 0; - - read_phys_req_item(req->data, req, i, &tmp); - do_outp(req->addr, req->size, tmp); - } - } - } -} - -static void cpu_ioreq_move(ioreq_t *req) -{ - uint32_t i; - - trace_cpu_ioreq_move(req, req->dir, req->df, req->data_is_ptr, req->addr, - req->data, req->count, req->size); - - if (req->size > sizeof(req->data)) { - hw_error("MMIO: bad size (%u)", req->size); - } - - if (!req->data_is_ptr) { - if (req->dir == IOREQ_READ) { - for (i = 0; i < req->count; i++) { - read_phys_req_item(req->addr, req, i, &req->data); - } - } else if (req->dir == IOREQ_WRITE) { - for (i = 0; i < req->count; i++) { - write_phys_req_item(req->addr, req, i, &req->data); - } - } - } else { - uint64_t tmp; - - if (req->dir == IOREQ_READ) { - for (i = 0; i < req->count; i++) { - read_phys_req_item(req->addr, req, i, &tmp); - write_phys_req_item(req->data, req, i, &tmp); - } - } else if (req->dir == IOREQ_WRITE) { - for (i = 0; i < req->count; i++) { - read_phys_req_item(req->data, req, i, &tmp); - write_phys_req_item(req->addr, req, i, &tmp); - } - } - } -} - -static void cpu_ioreq_config(XenIOState *state, ioreq_t *req) -{ - uint32_t sbdf = req->addr >> 32; - uint32_t reg = req->addr; - XenPciDevice *xendev; - - if (req->size != sizeof(uint8_t) && req->size != sizeof(uint16_t) && - req->size != sizeof(uint32_t)) { - hw_error("PCI config access: bad size (%u)", req->size); - } - - if (req->count != 1) { - hw_error("PCI config access: bad count (%u)", req->count); - } - - QLIST_FOREACH(xendev, &state->dev_list, entry) { - if (xendev->sbdf != sbdf) { - continue; - } - - if (!req->data_is_ptr) { - if (req->dir == IOREQ_READ) { - req->data = pci_host_config_read_common( - xendev->pci_dev, reg, PCI_CONFIG_SPACE_SIZE, - req->size); - trace_cpu_ioreq_config_read(req, xendev->sbdf, reg, - req->size, req->data); - } else if (req->dir == IOREQ_WRITE) { - trace_cpu_ioreq_config_write(req, xendev->sbdf, reg, - req->size, req->data); - pci_host_config_write_common( - xendev->pci_dev, reg, PCI_CONFIG_SPACE_SIZE, - req->data, req->size); - } - } else { - uint32_t tmp; - - if (req->dir == IOREQ_READ) { - tmp = pci_host_config_read_common( - xendev->pci_dev, reg, PCI_CONFIG_SPACE_SIZE, - req->size); - trace_cpu_ioreq_config_read(req, xendev->sbdf, reg, - req->size, tmp); - write_phys_req_item(req->data, req, 0, &tmp); - } else if (req->dir == IOREQ_WRITE) { - read_phys_req_item(req->data, req, 0, &tmp); - trace_cpu_ioreq_config_write(req, xendev->sbdf, reg, - req->size, tmp); - pci_host_config_write_common( - xendev->pci_dev, reg, PCI_CONFIG_SPACE_SIZE, - tmp, req->size); - } - } - } -} - static void regs_to_cpu(vmware_regs_t *vmport_regs, ioreq_t *req) { X86CPU *cpu; @@ -1031,226 +513,6 @@ static void handle_vmport_ioreq(XenIOState *state, ioreq_t *req) current_cpu = NULL; } -static void handle_ioreq(XenIOState *state, ioreq_t *req) -{ - trace_handle_ioreq(req, req->type, req->dir, req->df, req->data_is_ptr, - req->addr, req->data, req->count, req->size); - - if (!req->data_is_ptr && (req->dir == IOREQ_WRITE) && - (req->size < sizeof (target_ulong))) { - req->data &= ((target_ulong) 1 << (8 * req->size)) - 1; - } - - if (req->dir == IOREQ_WRITE) - trace_handle_ioreq_write(req, req->type, req->df, req->data_is_ptr, - req->addr, req->data, req->count, req->size); - - switch (req->type) { - case IOREQ_TYPE_PIO: - cpu_ioreq_pio(req); - break; - case IOREQ_TYPE_COPY: - cpu_ioreq_move(req); - break; - case IOREQ_TYPE_VMWARE_PORT: - handle_vmport_ioreq(state, req); - break; - case IOREQ_TYPE_TIMEOFFSET: - break; - case IOREQ_TYPE_INVALIDATE: - xen_invalidate_map_cache(); - break; - case IOREQ_TYPE_PCI_CONFIG: - cpu_ioreq_config(state, req); - break; - default: - hw_error("Invalid ioreq type 0x%x\n", req->type); - } - if (req->dir == IOREQ_READ) { - trace_handle_ioreq_read(req, req->type, req->df, req->data_is_ptr, - req->addr, req->data, req->count, req->size); - } -} - -static bool handle_buffered_iopage(XenIOState *state) -{ - buffered_iopage_t *buf_page = state->buffered_io_page; - buf_ioreq_t *buf_req = NULL; - bool handled_ioreq = false; - ioreq_t req; - int qw; - - if (!buf_page) { - return 0; - } - - memset(&req, 0x00, sizeof(req)); - req.state = STATE_IOREQ_READY; - req.count = 1; - req.dir = IOREQ_WRITE; - - for (;;) { - uint32_t rdptr = buf_page->read_pointer, wrptr; - - xen_rmb(); - wrptr = buf_page->write_pointer; - xen_rmb(); - if (rdptr != buf_page->read_pointer) { - continue; - } - if (rdptr == wrptr) { - break; - } - buf_req = &buf_page->buf_ioreq[rdptr % IOREQ_BUFFER_SLOT_NUM]; - req.size = 1U << buf_req->size; - req.addr = buf_req->addr; - req.data = buf_req->data; - req.type = buf_req->type; - xen_rmb(); - qw = (req.size == 8); - if (qw) { - if (rdptr + 1 == wrptr) { - hw_error("Incomplete quad word buffered ioreq"); - } - buf_req = &buf_page->buf_ioreq[(rdptr + 1) % - IOREQ_BUFFER_SLOT_NUM]; - req.data |= ((uint64_t)buf_req->data) << 32; - xen_rmb(); - } - - handle_ioreq(state, &req); - - /* Only req.data may get updated by handle_ioreq(), albeit even that - * should not happen as such data would never make it to the guest (we - * can only usefully see writes here after all). - */ - assert(req.state == STATE_IOREQ_READY); - assert(req.count == 1); - assert(req.dir == IOREQ_WRITE); - assert(!req.data_is_ptr); - - qatomic_add(&buf_page->read_pointer, qw + 1); - handled_ioreq = true; - } - - return handled_ioreq; -} - -static void handle_buffered_io(void *opaque) -{ - XenIOState *state = opaque; - - if (handle_buffered_iopage(state)) { - timer_mod(state->buffered_io_timer, - BUFFER_IO_MAX_DELAY + qemu_clock_get_ms(QEMU_CLOCK_REALTIME)); - } else { - timer_del(state->buffered_io_timer); - qemu_xen_evtchn_unmask(state->xce_handle, state->bufioreq_local_port); - } -} - -static void cpu_handle_ioreq(void *opaque) -{ - XenIOState *state = opaque; - ioreq_t *req = cpu_get_ioreq(state); - - handle_buffered_iopage(state); - if (req) { - ioreq_t copy = *req; - - xen_rmb(); - handle_ioreq(state, ©); - req->data = copy.data; - - if (req->state != STATE_IOREQ_INPROCESS) { - fprintf(stderr, "Badness in I/O request ... not in service?!: " - "%x, ptr: %x, port: %"PRIx64", " - "data: %"PRIx64", count: %u, size: %u, type: %u\n", - req->state, req->data_is_ptr, req->addr, - req->data, req->count, req->size, req->type); - destroy_hvm_domain(false); - return; - } - - xen_wmb(); /* Update ioreq contents /then/ update state. */ - - /* - * We do this before we send the response so that the tools - * have the opportunity to pick up on the reset before the - * guest resumes and does a hlt with interrupts disabled which - * causes Xen to powerdown the domain. - */ - if (runstate_is_running()) { - ShutdownCause request; - - if (qemu_shutdown_requested_get()) { - destroy_hvm_domain(false); - } - request = qemu_reset_requested_get(); - if (request) { - qemu_system_reset(request); - destroy_hvm_domain(true); - } - } - - req->state = STATE_IORESP_READY; - qemu_xen_evtchn_notify(state->xce_handle, - state->ioreq_local_port[state->send_vcpu]); - } -} - -static void xen_main_loop_prepare(XenIOState *state) -{ - int evtchn_fd = -1; - - if (state->xce_handle != NULL) { - evtchn_fd = qemu_xen_evtchn_fd(state->xce_handle); - } - - state->buffered_io_timer = timer_new_ms(QEMU_CLOCK_REALTIME, handle_buffered_io, - state); - - if (evtchn_fd != -1) { - CPUState *cpu_state; - - DPRINTF("%s: Init cpu_by_vcpu_id\n", __func__); - CPU_FOREACH(cpu_state) { - DPRINTF("%s: cpu_by_vcpu_id[%d]=%p\n", - __func__, cpu_state->cpu_index, cpu_state); - state->cpu_by_vcpu_id[cpu_state->cpu_index] = cpu_state; - } - qemu_set_fd_handler(evtchn_fd, cpu_handle_ioreq, NULL, state); - } -} - - -static void xen_hvm_change_state_handler(void *opaque, bool running, - RunState rstate) -{ - XenIOState *state = opaque; - - if (running) { - xen_main_loop_prepare(state); - } - - xen_set_ioreq_server_state(xen_domid, - state->ioservid, - (rstate == RUN_STATE_RUNNING)); -} - -static void xen_exit_notifier(Notifier *n, void *data) -{ - XenIOState *state = container_of(n, XenIOState, exit); - - xen_destroy_ioreq_server(xen_domid, state->ioservid); - if (state->fres != NULL) { - xenforeignmemory_unmap_resource(xen_fmem, state->fres); - } - - qemu_xen_evtchn_close(state->xce_handle); - xs_daemon_close(state->xenstore); -} - #ifdef XEN_COMPAT_PHYSMAP static void xen_read_physmap(XenIOState *state) { @@ -1310,175 +572,17 @@ static void xen_wakeup_notifier(Notifier *notifier, void *data) xc_set_hvm_param(xen_xc, xen_domid, HVM_PARAM_ACPI_S_STATE, 0); } -static int xen_map_ioreq_server(XenIOState *state) -{ - void *addr = NULL; - xen_pfn_t ioreq_pfn; - xen_pfn_t bufioreq_pfn; - evtchn_port_t bufioreq_evtchn; - int rc; - - /* - * Attempt to map using the resource API and fall back to normal - * foreign mapping if this is not supported. - */ - QEMU_BUILD_BUG_ON(XENMEM_resource_ioreq_server_frame_bufioreq != 0); - QEMU_BUILD_BUG_ON(XENMEM_resource_ioreq_server_frame_ioreq(0) != 1); - state->fres = xenforeignmemory_map_resource(xen_fmem, xen_domid, - XENMEM_resource_ioreq_server, - state->ioservid, 0, 2, - &addr, - PROT_READ | PROT_WRITE, 0); - if (state->fres != NULL) { - trace_xen_map_resource_ioreq(state->ioservid, addr); - state->buffered_io_page = addr; - state->shared_page = addr + TARGET_PAGE_SIZE; - } else if (errno != EOPNOTSUPP) { - error_report("failed to map ioreq server resources: error %d handle=%p", - errno, xen_xc); - return -1; - } - - rc = xen_get_ioreq_server_info(xen_domid, state->ioservid, - (state->shared_page == NULL) ? - &ioreq_pfn : NULL, - (state->buffered_io_page == NULL) ? - &bufioreq_pfn : NULL, - &bufioreq_evtchn); - if (rc < 0) { - error_report("failed to get ioreq server info: error %d handle=%p", - errno, xen_xc); - return rc; - } - - if (state->shared_page == NULL) { - DPRINTF("shared page at pfn %lx\n", ioreq_pfn); - - state->shared_page = xenforeignmemory_map(xen_fmem, xen_domid, - PROT_READ | PROT_WRITE, - 1, &ioreq_pfn, NULL); - if (state->shared_page == NULL) { - error_report("map shared IO page returned error %d handle=%p", - errno, xen_xc); - } - } - - if (state->buffered_io_page == NULL) { - DPRINTF("buffered io page at pfn %lx\n", bufioreq_pfn); - - state->buffered_io_page = xenforeignmemory_map(xen_fmem, xen_domid, - PROT_READ | PROT_WRITE, - 1, &bufioreq_pfn, - NULL); - if (state->buffered_io_page == NULL) { - error_report("map buffered IO page returned error %d", errno); - return -1; - } - } - - if (state->shared_page == NULL || state->buffered_io_page == NULL) { - return -1; - } - - DPRINTF("buffered io evtchn is %x\n", bufioreq_evtchn); - - state->bufioreq_remote_port = bufioreq_evtchn; - - return 0; -} - void xen_hvm_init_pc(PCMachineState *pcms, MemoryRegion **ram_memory) { MachineState *ms = MACHINE(pcms); unsigned int max_cpus = ms->smp.max_cpus; - int i, rc; + int rc; xen_pfn_t ioreq_pfn; XenIOState *state; - setup_xen_backend_ops(); - state = g_new0(XenIOState, 1); - state->xce_handle = qemu_xen_evtchn_open(); - if (state->xce_handle == NULL) { - perror("xen: event channel open"); - goto err; - } - - state->xenstore = xs_daemon_open(); - if (state->xenstore == NULL) { - perror("xen: xenstore open"); - goto err; - } - - xen_create_ioreq_server(xen_domid, &state->ioservid); - - state->exit.notify = xen_exit_notifier; - qemu_add_exit_notifier(&state->exit); - - /* - * Register wake-up support in QMP query-current-machine API - */ - qemu_register_wakeup_support(); - - rc = xen_map_ioreq_server(state); - if (rc < 0) { - goto err; - } - - /* Note: cpus is empty at this point in init */ - state->cpu_by_vcpu_id = g_new0(CPUState *, max_cpus); - - rc = xen_set_ioreq_server_state(xen_domid, state->ioservid, true); - if (rc < 0) { - error_report("failed to enable ioreq server info: error %d handle=%p", - errno, xen_xc); - goto err; - } - - state->ioreq_local_port = g_new0(evtchn_port_t, max_cpus); - - /* FIXME: how about if we overflow the page here? */ - for (i = 0; i < max_cpus; i++) { - rc = qemu_xen_evtchn_bind_interdomain(state->xce_handle, xen_domid, - xen_vcpu_eport(state->shared_page, - i)); - if (rc == -1) { - error_report("shared evtchn %d bind error %d", i, errno); - goto err; - } - state->ioreq_local_port[i] = rc; - } - - rc = qemu_xen_evtchn_bind_interdomain(state->xce_handle, xen_domid, - state->bufioreq_remote_port); - if (rc == -1) { - error_report("buffered evtchn bind error %d", errno); - goto err; - } - state->bufioreq_local_port = rc; - - /* Init RAM management */ -#ifdef XEN_COMPAT_PHYSMAP - xen_map_cache_init(xen_phys_offset_to_gaddr, state); -#else - xen_map_cache_init(NULL, state); -#endif - - qemu_add_vm_change_state_handler(xen_hvm_change_state_handler, state); - - state->memory_listener = xen_memory_listener; - memory_listener_register(&state->memory_listener, &address_space_memory); - - state->io_listener = xen_io_listener; - memory_listener_register(&state->io_listener, &address_space_io); - - state->device_listener = xen_device_listener; - QLIST_INIT(&state->dev_list); - device_listener_register(&state->device_listener); - - xen_bus_init(); - xen_be_init(); + xen_register_ioreq(state, max_cpus, xen_memory_listener); QLIST_INIT(&xen_physmap); xen_read_physmap(state); @@ -1518,59 +622,11 @@ err: exit(1); } -void destroy_hvm_domain(bool reboot) -{ - xc_interface *xc_handle; - int sts; - int rc; - - unsigned int reason = reboot ? SHUTDOWN_reboot : SHUTDOWN_poweroff; - - if (xen_dmod) { - rc = xendevicemodel_shutdown(xen_dmod, xen_domid, reason); - if (!rc) { - return; - } - if (errno != ENOTTY /* old Xen */) { - perror("xendevicemodel_shutdown failed"); - } - /* well, try the old thing then */ - } - - xc_handle = xc_interface_open(0, 0, 0); - if (xc_handle == NULL) { - fprintf(stderr, "Cannot acquire xenctrl handle\n"); - } else { - sts = xc_domain_shutdown(xc_handle, xen_domid, reason); - if (sts != 0) { - fprintf(stderr, "xc_domain_shutdown failed to issue %s, " - "sts %d, %s\n", reboot ? "reboot" : "poweroff", - sts, strerror(errno)); - } else { - fprintf(stderr, "Issued domain %d %s\n", xen_domid, - reboot ? "reboot" : "poweroff"); - } - xc_interface_close(xc_handle); - } -} - void xen_register_framebuffer(MemoryRegion *mr) { framebuffer = mr; } -void xen_shutdown_fatal_error(const char *fmt, ...) -{ - va_list ap; - - va_start(ap, fmt); - vfprintf(stderr, fmt, ap); - va_end(ap); - fprintf(stderr, "Will destroy the domain.\n"); - /* destroy the domain */ - qemu_system_shutdown_request(SHUTDOWN_CAUSE_HOST_ERROR); -} - void xen_hvm_modified_memory(ram_addr_t start, ram_addr_t length) { if (unlikely(xen_in_migration)) { @@ -1602,3 +658,57 @@ void qmp_xen_set_global_dirty_log(bool enable, Error **errp) memory_global_dirty_log_stop(GLOBAL_DIRTY_MIGRATION); } } + +void arch_xen_set_memory(XenIOState *state, MemoryRegionSection *section, + bool add) +{ + hwaddr start_addr = section->offset_within_address_space; + ram_addr_t size = int128_get64(section->size); + bool log_dirty = memory_region_is_logging(section->mr, DIRTY_MEMORY_VGA); + hvmmem_type_t mem_type; + + if (!memory_region_is_ram(section->mr)) { + return; + } + + if (log_dirty != add) { + return; + } + + trace_xen_client_set_memory(start_addr, size, log_dirty); + + start_addr &= TARGET_PAGE_MASK; + size = TARGET_PAGE_ALIGN(size); + + if (add) { + if (!memory_region_is_rom(section->mr)) { + xen_add_to_physmap(state, start_addr, size, + section->mr, section->offset_within_region); + } else { + mem_type = HVMMEM_ram_ro; + if (xen_set_mem_type(xen_domid, mem_type, + start_addr >> TARGET_PAGE_BITS, + size >> TARGET_PAGE_BITS)) { + DPRINTF("xen_set_mem_type error, addr: "HWADDR_FMT_plx"\n", + start_addr); + } + } + } else { + if (xen_remove_from_physmap(state, start_addr, size) < 0) { + DPRINTF("physmapping does not exist at "HWADDR_FMT_plx"\n", start_addr); + } + } +} + +void arch_handle_ioreq(XenIOState *state, ioreq_t *req) +{ + switch (req->type) { + case IOREQ_TYPE_VMWARE_PORT: + handle_vmport_ioreq(state, req); + break; + default: + hw_error("Invalid ioreq type 0x%x\n", req->type); + } + + return; +} diff --git a/hw/xen/meson.build b/hw/xen/meson.build index 202752e557..afd20754a1 100644 --- a/hw/xen/meson.build +++ b/hw/xen/meson.build @@ -29,4 +29,7 @@ specific_ss.add_all(when: ['CONFIG_XEN', xen], if_true: xen_specific_ss) xen_ss = ss.source_set() -xen_ss.add(when: 'CONFIG_XEN', if_true: files('xen-mapcache.c')) +xen_ss.add(when: 'CONFIG_XEN', if_true: files( + 'xen-mapcache.c', + 'xen-hvm-common.c', +)) diff --git a/hw/xen/trace-events b/hw/xen/trace-events index f977c7c8c6..67a6c41926 100644 --- a/hw/xen/trace-events +++ b/hw/xen/trace-events @@ -42,6 +42,20 @@ xs_node_vscanf(char *path, char *value) "%s %s" xs_node_watch(char *path) "%s" xs_node_unwatch(char *path) "%s" +# xen-hvm.c +xen_ram_alloc(unsigned long ram_addr, unsigned long size) "requested: 0x%lx, size 0x%lx" +xen_client_set_memory(uint64_t start_addr, unsigned long size, bool log_dirty) "0x%"PRIx64" size 0x%lx, log_dirty %i" +handle_ioreq(void *req, uint32_t type, uint32_t dir, uint32_t df, uint32_t data_is_ptr, uint64_t addr, uint64_t data, uint32_t count, uint32_t size) "I/O=%p type=%d dir=%d df=%d ptr=%d port=0x%"PRIx64" data=0x%"PRIx64" count=%d size=%d" +handle_ioreq_read(void *req, uint32_t type, uint32_t df, uint32_t data_is_ptr, uint64_t addr, uint64_t data, uint32_t count, uint32_t size) "I/O=%p read type=%d df=%d ptr=%d port=0x%"PRIx64" data=0x%"PRIx64" count=%d size=%d" +handle_ioreq_write(void *req, uint32_t type, uint32_t df, uint32_t data_is_ptr, uint64_t addr, uint64_t data, uint32_t count, uint32_t size) "I/O=%p write type=%d df=%d ptr=%d port=0x%"PRIx64" data=0x%"PRIx64" count=%d size=%d" +cpu_ioreq_pio(void *req, uint32_t dir, uint32_t df, uint32_t data_is_ptr, uint64_t addr, uint64_t data, uint32_t count, uint32_t size) "I/O=%p pio dir=%d df=%d ptr=%d port=0x%"PRIx64" data=0x%"PRIx64" count=%d size=%d" +cpu_ioreq_pio_read_reg(void *req, uint64_t data, uint64_t addr, uint32_t size) "I/O=%p pio read reg data=0x%"PRIx64" port=0x%"PRIx64" size=%d" +cpu_ioreq_pio_write_reg(void *req, uint64_t data, uint64_t addr, uint32_t size) "I/O=%p pio write reg data=0x%"PRIx64" port=0x%"PRIx64" size=%d" +cpu_ioreq_move(void *req, uint32_t dir, uint32_t df, uint32_t data_is_ptr, uint64_t addr, uint64_t data, uint32_t count, uint32_t size) "I/O=%p copy dir=%d df=%d ptr=%d port=0x%"PRIx64" data=0x%"PRIx64" count=%d size=%d" +xen_map_resource_ioreq(uint32_t id, void *addr) "id: %u addr: %p" +cpu_ioreq_config_read(void *req, uint32_t sbdf, uint32_t reg, uint32_t size, uint32_t data) "I/O=%p sbdf=0x%x reg=%u size=%u data=0x%x" +cpu_ioreq_config_write(void *req, uint32_t sbdf, uint32_t reg, uint32_t size, uint32_t data) "I/O=%p sbdf=0x%x reg=%u size=%u data=0x%x" + # xen-mapcache.c xen_map_cache(uint64_t phys_addr) "want 0x%"PRIx64 xen_remap_bucket(uint64_t index) "index 0x%"PRIx64 diff --git a/hw/xen/xen-hvm-common.c b/hw/xen/xen-hvm-common.c new file mode 100644 index 0000000000..a31b067404 --- /dev/null +++ b/hw/xen/xen-hvm-common.c @@ -0,0 +1,860 @@ +#include "qemu/osdep.h" +#include "qemu/units.h" +#include "qapi/error.h" +#include "trace.h" + +#include "hw/pci/pci_host.h" +#include "hw/xen/xen-hvm-common.h" +#include "hw/xen/xen-bus.h" +#include "hw/boards.h" +#include "hw/xen/arch_hvm.h" + +MemoryRegion ram_memory; + +void xen_ram_alloc(ram_addr_t ram_addr, ram_addr_t size, MemoryRegion *mr, + Error **errp) +{ + unsigned long nr_pfn; + xen_pfn_t *pfn_list; + int i; + + if (runstate_check(RUN_STATE_INMIGRATE)) { + /* RAM already populated in Xen */ + fprintf(stderr, "%s: do not alloc "RAM_ADDR_FMT + " bytes of ram at "RAM_ADDR_FMT" when runstate is INMIGRATE\n", + __func__, size, ram_addr); + return; + } + + if (mr == &ram_memory) { + return; + } + + trace_xen_ram_alloc(ram_addr, size); + + nr_pfn = size >> TARGET_PAGE_BITS; + pfn_list = g_malloc(sizeof (*pfn_list) * nr_pfn); + + for (i = 0; i < nr_pfn; i++) { + pfn_list[i] = (ram_addr >> TARGET_PAGE_BITS) + i; + } + + if (xc_domain_populate_physmap_exact(xen_xc, xen_domid, nr_pfn, 0, 0, pfn_list)) { + error_setg(errp, "xen: failed to populate ram at " RAM_ADDR_FMT, + ram_addr); + } + + g_free(pfn_list); +} + +static void xen_set_memory(struct MemoryListener *listener, + MemoryRegionSection *section, + bool add) +{ + XenIOState *state = container_of(listener, XenIOState, memory_listener); + + if (section->mr == &ram_memory) { + return; + } else { + if (add) { + xen_map_memory_section(xen_domid, state->ioservid, + section); + } else { + xen_unmap_memory_section(xen_domid, state->ioservid, + section); + } + } + + arch_xen_set_memory(state, section, add); +} + +void xen_region_add(MemoryListener *listener, + MemoryRegionSection *section) +{ + memory_region_ref(section->mr); + xen_set_memory(listener, section, true); +} + +void xen_region_del(MemoryListener *listener, + MemoryRegionSection *section) +{ + xen_set_memory(listener, section, false); + memory_region_unref(section->mr); +} + +void xen_io_add(MemoryListener *listener, + MemoryRegionSection *section) +{ + XenIOState *state = container_of(listener, XenIOState, io_listener); + MemoryRegion *mr = section->mr; + + if (mr->ops == &unassigned_io_ops) { + return; + } + + memory_region_ref(mr); + + xen_map_io_section(xen_domid, state->ioservid, section); +} + +void xen_io_del(MemoryListener *listener, + MemoryRegionSection *section) +{ + XenIOState *state = container_of(listener, XenIOState, io_listener); + MemoryRegion *mr = section->mr; + + if (mr->ops == &unassigned_io_ops) { + return; + } + + xen_unmap_io_section(xen_domid, state->ioservid, section); + + memory_region_unref(mr); +} + +void xen_device_realize(DeviceListener *listener, + DeviceState *dev) +{ + XenIOState *state = container_of(listener, XenIOState, device_listener); + + if (object_dynamic_cast(OBJECT(dev), TYPE_PCI_DEVICE)) { + PCIDevice *pci_dev = PCI_DEVICE(dev); + XenPciDevice *xendev = g_new(XenPciDevice, 1); + + xendev->pci_dev = pci_dev; + xendev->sbdf = PCI_BUILD_BDF(pci_dev_bus_num(pci_dev), + pci_dev->devfn); + QLIST_INSERT_HEAD(&state->dev_list, xendev, entry); + + xen_map_pcidev(xen_domid, state->ioservid, pci_dev); + } +} + +void xen_device_unrealize(DeviceListener *listener, + DeviceState *dev) +{ + XenIOState *state = container_of(listener, XenIOState, device_listener); + + if (object_dynamic_cast(OBJECT(dev), TYPE_PCI_DEVICE)) { + PCIDevice *pci_dev = PCI_DEVICE(dev); + XenPciDevice *xendev, *next; + + xen_unmap_pcidev(xen_domid, state->ioservid, pci_dev); + + QLIST_FOREACH_SAFE(xendev, &state->dev_list, entry, next) { + if (xendev->pci_dev == pci_dev) { + QLIST_REMOVE(xendev, entry); + g_free(xendev); + break; + } + } + } +} + +MemoryListener xen_io_listener = { + .name = "xen-io", + .region_add = xen_io_add, + .region_del = xen_io_del, + .priority = 10, +}; + +DeviceListener xen_device_listener = { + .realize = xen_device_realize, + .unrealize = xen_device_unrealize, +}; + +/* get the ioreq packets from share mem */ +static ioreq_t *cpu_get_ioreq_from_shared_memory(XenIOState *state, int vcpu) +{ + ioreq_t *req = xen_vcpu_ioreq(state->shared_page, vcpu); + + if (req->state != STATE_IOREQ_READY) { + DPRINTF("I/O request not ready: " + "%x, ptr: %x, port: %"PRIx64", " + "data: %"PRIx64", count: %u, size: %u\n", + req->state, req->data_is_ptr, req->addr, + req->data, req->count, req->size); + return NULL; + } + + xen_rmb(); /* see IOREQ_READY /then/ read contents of ioreq */ + + req->state = STATE_IOREQ_INPROCESS; + return req; +} + +/* use poll to get the port notification */ +/* ioreq_vec--out,the */ +/* retval--the number of ioreq packet */ +static ioreq_t *cpu_get_ioreq(XenIOState *state) +{ + MachineState *ms = MACHINE(qdev_get_machine()); + unsigned int max_cpus = ms->smp.max_cpus; + int i; + evtchn_port_t port; + + port = qemu_xen_evtchn_pending(state->xce_handle); + if (port == state->bufioreq_local_port) { + timer_mod(state->buffered_io_timer, + BUFFER_IO_MAX_DELAY + qemu_clock_get_ms(QEMU_CLOCK_REALTIME)); + return NULL; + } + + if (port != -1) { + for (i = 0; i < max_cpus; i++) { + if (state->ioreq_local_port[i] == port) { + break; + } + } + + if (i == max_cpus) { + hw_error("Fatal error while trying to get io event!\n"); + } + + /* unmask the wanted port again */ + qemu_xen_evtchn_unmask(state->xce_handle, port); + + /* get the io packet from shared memory */ + state->send_vcpu = i; + return cpu_get_ioreq_from_shared_memory(state, i); + } + + /* read error or read nothing */ + return NULL; +} + +static uint32_t do_inp(uint32_t addr, unsigned long size) +{ + switch (size) { + case 1: + return cpu_inb(addr); + case 2: + return cpu_inw(addr); + case 4: + return cpu_inl(addr); + default: + hw_error("inp: bad size: %04x %lx", addr, size); + } +} + +static void do_outp(uint32_t addr, + unsigned long size, uint32_t val) +{ + switch (size) { + case 1: + return cpu_outb(addr, val); + case 2: + return cpu_outw(addr, val); + case 4: + return cpu_outl(addr, val); + default: + hw_error("outp: bad size: %04x %lx", addr, size); + } +} + +/* + * Helper functions which read/write an object from/to physical guest + * memory, as part of the implementation of an ioreq. + * + * Equivalent to + * cpu_physical_memory_rw(addr + (req->df ? -1 : +1) * req->size * i, + * val, req->size, 0/1) + * except without the integer overflow problems. + */ +static void rw_phys_req_item(hwaddr addr, + ioreq_t *req, uint32_t i, void *val, int rw) +{ + /* Do everything unsigned so overflow just results in a truncated result + * and accesses to undesired parts of guest memory, which is up + * to the guest */ + hwaddr offset = (hwaddr)req->size * i; + if (req->df) { + addr -= offset; + } else { + addr += offset; + } + cpu_physical_memory_rw(addr, val, req->size, rw); +} + +static inline void read_phys_req_item(hwaddr addr, + ioreq_t *req, uint32_t i, void *val) +{ + rw_phys_req_item(addr, req, i, val, 0); +} +static inline void write_phys_req_item(hwaddr addr, + ioreq_t *req, uint32_t i, void *val) +{ + rw_phys_req_item(addr, req, i, val, 1); +} + + +void cpu_ioreq_pio(ioreq_t *req) +{ + uint32_t i; + + trace_cpu_ioreq_pio(req, req->dir, req->df, req->data_is_ptr, req->addr, + req->data, req->count, req->size); + + if (req->size > sizeof(uint32_t)) { + hw_error("PIO: bad size (%u)", req->size); + } + + if (req->dir == IOREQ_READ) { + if (!req->data_is_ptr) { + req->data = do_inp(req->addr, req->size); + trace_cpu_ioreq_pio_read_reg(req, req->data, req->addr, + req->size); + } else { + uint32_t tmp; + + for (i = 0; i < req->count; i++) { + tmp = do_inp(req->addr, req->size); + write_phys_req_item(req->data, req, i, &tmp); + } + } + } else if (req->dir == IOREQ_WRITE) { + if (!req->data_is_ptr) { + trace_cpu_ioreq_pio_write_reg(req, req->data, req->addr, + req->size); + do_outp(req->addr, req->size, req->data); + } else { + for (i = 0; i < req->count; i++) { + uint32_t tmp = 0; + + read_phys_req_item(req->data, req, i, &tmp); + do_outp(req->addr, req->size, tmp); + } + } + } +} + +static void cpu_ioreq_move(ioreq_t *req) +{ + uint32_t i; + + trace_cpu_ioreq_move(req, req->dir, req->df, req->data_is_ptr, req->addr, + req->data, req->count, req->size); + + if (req->size > sizeof(req->data)) { + hw_error("MMIO: bad size (%u)", req->size); + } + + if (!req->data_is_ptr) { + if (req->dir == IOREQ_READ) { + for (i = 0; i < req->count; i++) { + read_phys_req_item(req->addr, req, i, &req->data); + } + } else if (req->dir == IOREQ_WRITE) { + for (i = 0; i < req->count; i++) { + write_phys_req_item(req->addr, req, i, &req->data); + } + } + } else { + uint64_t tmp; + + if (req->dir == IOREQ_READ) { + for (i = 0; i < req->count; i++) { + read_phys_req_item(req->addr, req, i, &tmp); + write_phys_req_item(req->data, req, i, &tmp); + } + } else if (req->dir == IOREQ_WRITE) { + for (i = 0; i < req->count; i++) { + read_phys_req_item(req->data, req, i, &tmp); + write_phys_req_item(req->addr, req, i, &tmp); + } + } + } +} + +static void cpu_ioreq_config(XenIOState *state, ioreq_t *req) +{ + uint32_t sbdf = req->addr >> 32; + uint32_t reg = req->addr; + XenPciDevice *xendev; + + if (req->size != sizeof(uint8_t) && req->size != sizeof(uint16_t) && + req->size != sizeof(uint32_t)) { + hw_error("PCI config access: bad size (%u)", req->size); + } + + if (req->count != 1) { + hw_error("PCI config access: bad count (%u)", req->count); + } + + QLIST_FOREACH(xendev, &state->dev_list, entry) { + if (xendev->sbdf != sbdf) { + continue; + } + + if (!req->data_is_ptr) { + if (req->dir == IOREQ_READ) { + req->data = pci_host_config_read_common( + xendev->pci_dev, reg, PCI_CONFIG_SPACE_SIZE, + req->size); + trace_cpu_ioreq_config_read(req, xendev->sbdf, reg, + req->size, req->data); + } else if (req->dir == IOREQ_WRITE) { + trace_cpu_ioreq_config_write(req, xendev->sbdf, reg, + req->size, req->data); + pci_host_config_write_common( + xendev->pci_dev, reg, PCI_CONFIG_SPACE_SIZE, + req->data, req->size); + } + } else { + uint32_t tmp; + + if (req->dir == IOREQ_READ) { + tmp = pci_host_config_read_common( + xendev->pci_dev, reg, PCI_CONFIG_SPACE_SIZE, + req->size); + trace_cpu_ioreq_config_read(req, xendev->sbdf, reg, + req->size, tmp); + write_phys_req_item(req->data, req, 0, &tmp); + } else if (req->dir == IOREQ_WRITE) { + read_phys_req_item(req->data, req, 0, &tmp); + trace_cpu_ioreq_config_write(req, xendev->sbdf, reg, + req->size, tmp); + pci_host_config_write_common( + xendev->pci_dev, reg, PCI_CONFIG_SPACE_SIZE, + tmp, req->size); + } + } + } +} + +static void handle_ioreq(XenIOState *state, ioreq_t *req) +{ + trace_handle_ioreq(req, req->type, req->dir, req->df, req->data_is_ptr, + req->addr, req->data, req->count, req->size); + + if (!req->data_is_ptr && (req->dir == IOREQ_WRITE) && + (req->size < sizeof (target_ulong))) { + req->data &= ((target_ulong) 1 << (8 * req->size)) - 1; + } + + if (req->dir == IOREQ_WRITE) + trace_handle_ioreq_write(req, req->type, req->df, req->data_is_ptr, + req->addr, req->data, req->count, req->size); + + switch (req->type) { + case IOREQ_TYPE_PIO: + cpu_ioreq_pio(req); + break; + case IOREQ_TYPE_COPY: + cpu_ioreq_move(req); + break; + case IOREQ_TYPE_TIMEOFFSET: + break; + case IOREQ_TYPE_INVALIDATE: + xen_invalidate_map_cache(); + break; + case IOREQ_TYPE_PCI_CONFIG: + cpu_ioreq_config(state, req); + break; + default: + arch_handle_ioreq(state, req); + } + if (req->dir == IOREQ_READ) { + trace_handle_ioreq_read(req, req->type, req->df, req->data_is_ptr, + req->addr, req->data, req->count, req->size); + } +} + +static bool handle_buffered_iopage(XenIOState *state) +{ + buffered_iopage_t *buf_page = state->buffered_io_page; + buf_ioreq_t *buf_req = NULL; + bool handled_ioreq = false; + ioreq_t req; + int qw; + + if (!buf_page) { + return 0; + } + + memset(&req, 0x00, sizeof(req)); + req.state = STATE_IOREQ_READY; + req.count = 1; + req.dir = IOREQ_WRITE; + + for (;;) { + uint32_t rdptr = buf_page->read_pointer, wrptr; + + xen_rmb(); + wrptr = buf_page->write_pointer; + xen_rmb(); + if (rdptr != buf_page->read_pointer) { + continue; + } + if (rdptr == wrptr) { + break; + } + buf_req = &buf_page->buf_ioreq[rdptr % IOREQ_BUFFER_SLOT_NUM]; + req.size = 1U << buf_req->size; + req.addr = buf_req->addr; + req.data = buf_req->data; + req.type = buf_req->type; + xen_rmb(); + qw = (req.size == 8); + if (qw) { + if (rdptr + 1 == wrptr) { + hw_error("Incomplete quad word buffered ioreq"); + } + buf_req = &buf_page->buf_ioreq[(rdptr + 1) % + IOREQ_BUFFER_SLOT_NUM]; + req.data |= ((uint64_t)buf_req->data) << 32; + xen_rmb(); + } + + handle_ioreq(state, &req); + + /* Only req.data may get updated by handle_ioreq(), albeit even that + * should not happen as such data would never make it to the guest (we + * can only usefully see writes here after all). + */ + assert(req.state == STATE_IOREQ_READY); + assert(req.count == 1); + assert(req.dir == IOREQ_WRITE); + assert(!req.data_is_ptr); + + qatomic_add(&buf_page->read_pointer, qw + 1); + handled_ioreq = true; + } + + return handled_ioreq; +} + +static void handle_buffered_io(void *opaque) +{ + XenIOState *state = opaque; + + if (handle_buffered_iopage(state)) { + timer_mod(state->buffered_io_timer, + BUFFER_IO_MAX_DELAY + qemu_clock_get_ms(QEMU_CLOCK_REALTIME)); + } else { + timer_del(state->buffered_io_timer); + qemu_xen_evtchn_unmask(state->xce_handle, state->bufioreq_local_port); + } +} + +static void cpu_handle_ioreq(void *opaque) +{ + XenIOState *state = opaque; + ioreq_t *req = cpu_get_ioreq(state); + + handle_buffered_iopage(state); + if (req) { + ioreq_t copy = *req; + + xen_rmb(); + handle_ioreq(state, ©); + req->data = copy.data; + + if (req->state != STATE_IOREQ_INPROCESS) { + fprintf(stderr, "Badness in I/O request ... not in service?!: " + "%x, ptr: %x, port: %"PRIx64", " + "data: %"PRIx64", count: %u, size: %u, type: %u\n", + req->state, req->data_is_ptr, req->addr, + req->data, req->count, req->size, req->type); + destroy_hvm_domain(false); + return; + } + + xen_wmb(); /* Update ioreq contents /then/ update state. */ + + /* + * We do this before we send the response so that the tools + * have the opportunity to pick up on the reset before the + * guest resumes and does a hlt with interrupts disabled which + * causes Xen to powerdown the domain. + */ + if (runstate_is_running()) { + ShutdownCause request; + + if (qemu_shutdown_requested_get()) { + destroy_hvm_domain(false); + } + request = qemu_reset_requested_get(); + if (request) { + qemu_system_reset(request); + destroy_hvm_domain(true); + } + } + + req->state = STATE_IORESP_READY; + qemu_xen_evtchn_notify(state->xce_handle, + state->ioreq_local_port[state->send_vcpu]); + } +} + +static void xen_main_loop_prepare(XenIOState *state) +{ + int evtchn_fd = -1; + + if (state->xce_handle != NULL) { + evtchn_fd = qemu_xen_evtchn_fd(state->xce_handle); + } + + state->buffered_io_timer = timer_new_ms(QEMU_CLOCK_REALTIME, handle_buffered_io, + state); + + if (evtchn_fd != -1) { + CPUState *cpu_state; + + DPRINTF("%s: Init cpu_by_vcpu_id\n", __func__); + CPU_FOREACH(cpu_state) { + DPRINTF("%s: cpu_by_vcpu_id[%d]=%p\n", + __func__, cpu_state->cpu_index, cpu_state); + state->cpu_by_vcpu_id[cpu_state->cpu_index] = cpu_state; + } + qemu_set_fd_handler(evtchn_fd, cpu_handle_ioreq, NULL, state); + } +} + + +void xen_hvm_change_state_handler(void *opaque, bool running, + RunState rstate) +{ + XenIOState *state = opaque; + + if (running) { + xen_main_loop_prepare(state); + } + + xen_set_ioreq_server_state(xen_domid, + state->ioservid, + (rstate == RUN_STATE_RUNNING)); +} + +void xen_exit_notifier(Notifier *n, void *data) +{ + XenIOState *state = container_of(n, XenIOState, exit); + + xen_destroy_ioreq_server(xen_domid, state->ioservid); + if (state->fres != NULL) { + xenforeignmemory_unmap_resource(xen_fmem, state->fres); + } + + qemu_xen_evtchn_close(state->xce_handle); + xs_daemon_close(state->xenstore); +} + +static int xen_map_ioreq_server(XenIOState *state) +{ + void *addr = NULL; + xen_pfn_t ioreq_pfn; + xen_pfn_t bufioreq_pfn; + evtchn_port_t bufioreq_evtchn; + int rc; + + /* + * Attempt to map using the resource API and fall back to normal + * foreign mapping if this is not supported. + */ + QEMU_BUILD_BUG_ON(XENMEM_resource_ioreq_server_frame_bufioreq != 0); + QEMU_BUILD_BUG_ON(XENMEM_resource_ioreq_server_frame_ioreq(0) != 1); + state->fres = xenforeignmemory_map_resource(xen_fmem, xen_domid, + XENMEM_resource_ioreq_server, + state->ioservid, 0, 2, + &addr, + PROT_READ | PROT_WRITE, 0); + if (state->fres != NULL) { + trace_xen_map_resource_ioreq(state->ioservid, addr); + state->buffered_io_page = addr; + state->shared_page = addr + XC_PAGE_SIZE; + } else if (errno != EOPNOTSUPP) { + error_report("failed to map ioreq server resources: error %d handle=%p", + errno, xen_xc); + return -1; + } + + rc = xen_get_ioreq_server_info(xen_domid, state->ioservid, + (state->shared_page == NULL) ? + &ioreq_pfn : NULL, + (state->buffered_io_page == NULL) ? + &bufioreq_pfn : NULL, + &bufioreq_evtchn); + if (rc < 0) { + error_report("failed to get ioreq server info: error %d handle=%p", + errno, xen_xc); + return rc; + } + + if (state->shared_page == NULL) { + DPRINTF("shared page at pfn %lx\n", ioreq_pfn); + + state->shared_page = xenforeignmemory_map(xen_fmem, xen_domid, + PROT_READ | PROT_WRITE, + 1, &ioreq_pfn, NULL); + if (state->shared_page == NULL) { + error_report("map shared IO page returned error %d handle=%p", + errno, xen_xc); + } + } + + if (state->buffered_io_page == NULL) { + DPRINTF("buffered io page at pfn %lx\n", bufioreq_pfn); + + state->buffered_io_page = xenforeignmemory_map(xen_fmem, xen_domid, + PROT_READ | PROT_WRITE, + 1, &bufioreq_pfn, + NULL); + if (state->buffered_io_page == NULL) { + error_report("map buffered IO page returned error %d", errno); + return -1; + } + } + + if (state->shared_page == NULL || state->buffered_io_page == NULL) { + return -1; + } + + DPRINTF("buffered io evtchn is %x\n", bufioreq_evtchn); + + state->bufioreq_remote_port = bufioreq_evtchn; + + return 0; +} + +void destroy_hvm_domain(bool reboot) +{ + xc_interface *xc_handle; + int sts; + int rc; + + unsigned int reason = reboot ? SHUTDOWN_reboot : SHUTDOWN_poweroff; + + if (xen_dmod) { + rc = xendevicemodel_shutdown(xen_dmod, xen_domid, reason); + if (!rc) { + return; + } + if (errno != ENOTTY /* old Xen */) { + perror("xendevicemodel_shutdown failed"); + } + /* well, try the old thing then */ + } + + xc_handle = xc_interface_open(0, 0, 0); + if (xc_handle == NULL) { + fprintf(stderr, "Cannot acquire xenctrl handle\n"); + } else { + sts = xc_domain_shutdown(xc_handle, xen_domid, reason); + if (sts != 0) { + fprintf(stderr, "xc_domain_shutdown failed to issue %s, " + "sts %d, %s\n", reboot ? "reboot" : "poweroff", + sts, strerror(errno)); + } else { + fprintf(stderr, "Issued domain %d %s\n", xen_domid, + reboot ? "reboot" : "poweroff"); + } + xc_interface_close(xc_handle); + } +} + +void xen_shutdown_fatal_error(const char *fmt, ...) +{ + va_list ap; + + va_start(ap, fmt); + vfprintf(stderr, fmt, ap); + va_end(ap); + fprintf(stderr, "Will destroy the domain.\n"); + /* destroy the domain */ + qemu_system_shutdown_request(SHUTDOWN_CAUSE_HOST_ERROR); +} + +void xen_register_ioreq(XenIOState *state, unsigned int max_cpus, + MemoryListener xen_memory_listener) +{ + int i, rc; + + setup_xen_backend_ops(); + + state->xce_handle = qemu_xen_evtchn_open(); + if (state->xce_handle == NULL) { + perror("xen: event channel open"); + goto err; + } + + state->xenstore = xs_daemon_open(); + if (state->xenstore == NULL) { + perror("xen: xenstore open"); + goto err; + } + + xen_create_ioreq_server(xen_domid, &state->ioservid); + + state->exit.notify = xen_exit_notifier; + qemu_add_exit_notifier(&state->exit); + + /* + * Register wake-up support in QMP query-current-machine API + */ + qemu_register_wakeup_support(); + + rc = xen_map_ioreq_server(state); + if (rc < 0) { + goto err; + } + + /* Note: cpus is empty at this point in init */ + state->cpu_by_vcpu_id = g_malloc0(max_cpus * sizeof(CPUState *)); + + rc = xen_set_ioreq_server_state(xen_domid, state->ioservid, true); + if (rc < 0) { + error_report("failed to enable ioreq server info: error %d handle=%p", + errno, xen_xc); + goto err; + } + + state->ioreq_local_port = g_malloc0(max_cpus * sizeof (evtchn_port_t)); + + /* FIXME: how about if we overflow the page here? */ + for (i = 0; i < max_cpus; i++) { + rc = qemu_xen_evtchn_bind_interdomain(state->xce_handle, xen_domid, + xen_vcpu_eport(state->shared_page, + i)); + if (rc == -1) { + error_report("shared evtchn %d bind error %d", i, errno); + goto err; + } + state->ioreq_local_port[i] = rc; + } + + rc = qemu_xen_evtchn_bind_interdomain(state->xce_handle, xen_domid, + state->bufioreq_remote_port); + if (rc == -1) { + error_report("buffered evtchn bind error %d", errno); + goto err; + } + state->bufioreq_local_port = rc; + + /* Init RAM management */ +#ifdef XEN_COMPAT_PHYSMAP + xen_map_cache_init(xen_phys_offset_to_gaddr, state); +#else + xen_map_cache_init(NULL, state); +#endif + + qemu_add_vm_change_state_handler(xen_hvm_change_state_handler, state); + + state->memory_listener = xen_memory_listener; + memory_listener_register(&state->memory_listener, &address_space_memory); + + state->io_listener = xen_io_listener; + memory_listener_register(&state->io_listener, &address_space_io); + + state->device_listener = xen_device_listener; + QLIST_INIT(&state->dev_list); + device_listener_register(&state->device_listener); + + xen_bus_init(); + + xen_be_init(); + + return; +err: + error_report("xen hardware virtual machine initialisation failed"); + exit(1); +} diff --git a/include/hw/i386/xen_arch_hvm.h b/include/hw/i386/xen_arch_hvm.h new file mode 100644 index 0000000000..1000f8f543 --- /dev/null +++ b/include/hw/i386/xen_arch_hvm.h @@ -0,0 +1,11 @@ +#ifndef HW_XEN_ARCH_I386_HVM_H +#define HW_XEN_ARCH_I386_HVM_H + +#include +#include "hw/xen/xen-hvm-common.h" + +void arch_handle_ioreq(XenIOState *state, ioreq_t *req); +void arch_xen_set_memory(XenIOState *state, + MemoryRegionSection *section, + bool add); +#endif diff --git a/include/hw/xen/arch_hvm.h b/include/hw/xen/arch_hvm.h new file mode 100644 index 0000000000..26674648d8 --- /dev/null +++ b/include/hw/xen/arch_hvm.h @@ -0,0 +1,3 @@ +#if defined(TARGET_I386) || defined(TARGET_X86_64) +#include "hw/i386/xen_arch_hvm.h" +#endif diff --git a/include/hw/xen/xen-hvm-common.h b/include/hw/xen/xen-hvm-common.h new file mode 100644 index 0000000000..f9559e2885 --- /dev/null +++ b/include/hw/xen/xen-hvm-common.h @@ -0,0 +1,99 @@ +#ifndef HW_XEN_HVM_COMMON_H +#define HW_XEN_HVM_COMMON_H + +#include "qemu/osdep.h" +#include "qemu/units.h" + +#include "cpu.h" +#include "hw/pci/pci.h" +#include "hw/hw.h" +#include "hw/xen/xen_native.h" +#include "hw/xen/xen-legacy-backend.h" +#include "sysemu/runstate.h" +#include "sysemu/sysemu.h" +#include "sysemu/xen.h" +#include "sysemu/xen-mapcache.h" +#include "qemu/error-report.h" +#include + +extern MemoryRegion ram_memory; +extern MemoryListener xen_io_listener; +extern DeviceListener xen_device_listener; + +//#define DEBUG_XEN_HVM + +#ifdef DEBUG_XEN_HVM +#define DPRINTF(fmt, ...) \ + do { fprintf(stderr, "xen: " fmt, ## __VA_ARGS__); } while (0) +#else +#define DPRINTF(fmt, ...) \ + do { } while (0) +#endif + +static inline uint32_t xen_vcpu_eport(shared_iopage_t *shared_page, int i) +{ + return shared_page->vcpu_ioreq[i].vp_eport; +} +static inline ioreq_t *xen_vcpu_ioreq(shared_iopage_t *shared_page, int vcpu) +{ + return &shared_page->vcpu_ioreq[vcpu]; +} + +#define BUFFER_IO_MAX_DELAY 100 + +typedef struct XenPhysmap { + hwaddr start_addr; + ram_addr_t size; + const char *name; + hwaddr phys_offset; + + QLIST_ENTRY(XenPhysmap) list; +} XenPhysmap; + +typedef struct XenPciDevice { + PCIDevice *pci_dev; + uint32_t sbdf; + QLIST_ENTRY(XenPciDevice) entry; +} XenPciDevice; + +typedef struct XenIOState { + ioservid_t ioservid; + shared_iopage_t *shared_page; + buffered_iopage_t *buffered_io_page; + xenforeignmemory_resource_handle *fres; + QEMUTimer *buffered_io_timer; + CPUState **cpu_by_vcpu_id; + /* the evtchn port for polling the notification, */ + evtchn_port_t *ioreq_local_port; + /* evtchn remote and local ports for buffered io */ + evtchn_port_t bufioreq_remote_port; + evtchn_port_t bufioreq_local_port; + /* the evtchn fd for polling */ + xenevtchn_handle *xce_handle; + /* which vcpu we are serving */ + int send_vcpu; + + struct xs_handle *xenstore; + MemoryListener memory_listener; + MemoryListener io_listener; + QLIST_HEAD(, XenPciDevice) dev_list; + DeviceListener device_listener; + + Notifier exit; +} XenIOState; + +void xen_exit_notifier(Notifier *n, void *data); + +void xen_region_add(MemoryListener *listener, MemoryRegionSection *section); +void xen_region_del(MemoryListener *listener, MemoryRegionSection *section); +void xen_io_add(MemoryListener *listener, MemoryRegionSection *section); +void xen_io_del(MemoryListener *listener, MemoryRegionSection *section); +void xen_device_realize(DeviceListener *listener, DeviceState *dev); +void xen_device_unrealize(DeviceListener *listener, DeviceState *dev); + +void xen_hvm_change_state_handler(void *opaque, bool running, RunState rstate); +void xen_register_ioreq(XenIOState *state, unsigned int max_cpus, + MemoryListener xen_memory_listener); + +void cpu_ioreq_pio(ioreq_t *req); +#endif /* HW_XEN_HVM_COMMON_H */ -- 2.17.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 15 01:05:09 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 15 Jun 2023 01:05:09 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549354.857827 (Exim 4.92) (envelope-from ) id 1q9bQ0-0006R0-N2; Thu, 15 Jun 2023 01:04:56 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549354.857827; Thu, 15 Jun 2023 01:04:56 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9bQ0-0006Qt-IY; Thu, 15 Jun 2023 01:04:56 +0000 Received: by outflank-mailman (input) for mailman id 549354; Thu, 15 Jun 2023 01:04:55 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9bPz-0006Qh-BU; Thu, 15 Jun 2023 01:04:55 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9bPz-0002Z4-90; Thu, 15 Jun 2023 01:04:55 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9bPy-0004Ni-Le; Thu, 15 Jun 2023 01:04:54 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q9bPy-0001lw-L4; Thu, 15 Jun 2023 01:04:54 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=qofOj4da/H1+ajHKfNkKSLAFBxb2EA6Pkg2jFBRkV/o=; b=SXVicNifac6U9NlTM+M0NPu0zu iA/YB/2ENrJxRks+ZmaOibLGbUM8TCIIVwAZDaOAKUvoKrfhZoIzbVyIER8s6ZfVu6xVDvh4a/EvH s0OtzQkEEubZ6tXWCZ1PSv4cMnhy6AelfuH91Pp4KKv0JpdiSrLSx2qj5SCCqFOLrmKY=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [qemu-mainline test] 181430: regressions - FAIL X-Osstest-Failures: qemu-mainline:build-amd64-xsm:xen-build:fail:regression qemu-mainline:build-arm64:xen-build:fail:regression qemu-mainline:build-arm64-xsm:xen-build:fail:regression qemu-mainline:build-amd64:xen-build:fail:regression qemu-mainline:build-i386:xen-build:fail:regression qemu-mainline:build-i386-xsm:xen-build:fail:regression qemu-mainline:build-armhf:xen-build:fail:regression qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-i386:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:build-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:build-arm64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:build-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:build-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pygrub:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking X-Osstest-Versions-This: qemuu=7efd65423ab22e6f5890ca08ae40c84d6660242f X-Osstest-Versions-That: qemuu=6972ef1440a9d685482d78672620a7482f2bd09a From: osstest service owner Date: Thu, 15 Jun 2023 01:04:54 +0000 flight 181430 qemu-mainline real [real] http://logs.test-lab.xenproject.org/osstest/logs/181430/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-amd64-xsm 6 xen-build fail REGR. vs. 180691 build-arm64 6 xen-build fail REGR. vs. 180691 build-arm64-xsm 6 xen-build fail REGR. vs. 180691 build-amd64 6 xen-build fail REGR. vs. 180691 build-i386 6 xen-build fail REGR. vs. 180691 build-i386-xsm 6 xen-build fail REGR. vs. 180691 build-armhf 6 xen-build fail REGR. vs. 180691 Tests which did not succeed, but are not blocking: test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-xl-xsm 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-raw 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-xsm 1 build-check(1) blocked n/a test-arm64-arm64-xl 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit1 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit2 1 build-check(1) blocked n/a test-arm64-arm64-xl-thunderx 1 build-check(1) blocked n/a test-arm64-arm64-xl-vhd 1 build-check(1) blocked n/a test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a test-armhf-armhf-libvirt 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-qcow2 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-raw 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a test-armhf-armhf-xl-arndale 1 build-check(1) blocked n/a test-armhf-armhf-xl-multivcpu 1 build-check(1) blocked n/a test-armhf-armhf-xl-rtds 1 build-check(1) blocked n/a test-armhf-armhf-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-amd 1 build-check(1) blocked n/a test-amd64-i386-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-raw 1 build-check(1) blocked n/a test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-i386 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-amd64 1 build-check(1) blocked n/a test-amd64-coresched-i386-xl 1 build-check(1) blocked n/a test-amd64-coresched-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-xsm 1 build-check(1) blocked n/a build-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-shadow 1 build-check(1) blocked n/a test-amd64-amd64-xl-rtds 1 build-check(1) blocked n/a build-arm64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a build-armhf-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a build-i386-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-amd 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-pair 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-qcow2 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-vhd 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvshim 1 build-check(1) blocked n/a test-amd64-amd64-pair 1 build-check(1) blocked n/a test-amd64-amd64-pygrub 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-intel 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd11-amd64 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd12-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-multivcpu 1 build-check(1) blocked n/a test-amd64-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit1 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit1 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-intel 1 build-check(1) blocked n/a test-amd64-i386-xl 1 build-check(1) blocked n/a test-amd64-i386-xl-pvshim 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a version targeted for testing: qemuu 7efd65423ab22e6f5890ca08ae40c84d6660242f baseline version: qemuu 6972ef1440a9d685482d78672620a7482f2bd09a Last test of basis 180691 2023-05-17 10:45:22 Z 28 days Failing since 180699 2023-05-18 07:21:24 Z 27 days 102 attempts Testing same since 181419 2023-06-14 05:08:14 Z 0 days 4 attempts ------------------------------------------------------------ People who touched revisions under test: Afonso Bordado Akihiko Odaki Akihiro Suda Alex Bennée Alex Williamson Alexander Bulekov Alexander Graf Alexander Ivanov Alistair Francis Anastasia Belova Andrea Bolognani Andreas Schwab Andrew Jeffery Ani Sinha Ani Sinha Anthony PERARD Anton Johansson Antonio Caggiano BALATON Zoltan Bastian Koppelmann Bernhard Beschow Bin Meng Brian Cain Brice Goglin Camilla Conte Carlos Santos Christian Schoenebeck Chuck Zmudzinski Cindy Lu Clément Chigot Corey Minyard Cornelia Huck Cédric Le Goater Cédric Le Goater Daniel Henrique Barboza Daniel Henrique Barboza Daniel P. Berrangé Daniil Kovalev David Hildenbrand David Woodhouse Emanuele Giuseppe Esposito Enze Li Eric Auger Eric Blake Eric DeVolder Erico Nunes Eugenio Pérez Fabiano Rosas Fan Ni Fiona Ebner Francesco Cagnin Francisco Iglesias Frederic Barrat Gavin Shan Gregory Price Gregory Price Hanna Czenczek Hao Zeng Hawkins Jiawei Himanshu Chauhan Igor Mammedov Ilya Leoshkevich Ira Weiny Ivan Klokov Jagannathan Raman Jason Wang Jean-Louis Dupond Jean-Philippe Brucker Jiaxun Yang Joao Martins John Snow Jonathan Cameron Juan Quintela Junqiang Wang Kevin Wolf Laurent Vivier Lei Yang Leonardo Bras Maksim Davydov Marc-André Lureau Marcin Juszkiewicz Marco Liebel Mark Cave-Ayland Markus Armbruster Matheus Tavares Bernardino Mattias Nissler Mauro Matteo Cascella Max Fritz Mayuresh Chitale Michael S. Tsirkin Michael Tokarev Michal Privoznik Milan Zamazal Mostafa Saleh Nicholas Piggin Nicolas Saenz Julienne Niek Linnenbank Niklas Cassel Palmer Dabbelt Paolo Bonzini Patrick Venture Peter Maydell Peter Xu Philippe Mathieu-Daudé Philippe Mathieu-Daudé qianfan Zhao Raghu H Rene Engel Richard Henderson Richard Purdie Ricky Zhou Ryan Wendland Sebastian Ott Sergio Lopez Sid Manning Song Gao Stefan Hajnoczi Stefano Garzarella Steve Sistare Sunil V L Taylor Simpson Thomas Huth Thomas Weißschuh timothee.cocault@gmail.com Timothée Cocault Tommy Wu Vikram Garhwal Viktor Prutyanov Vitaly Cheptsov Vivek Kasireddy Vladimir Sementsov-Ogievskiy Volker Rümelin Weiwei Li Xiao Wang Xinyu Li Yin Wang Zeng Hao Zhenyu Zhang Zhenzhong Duan Zhuojia Shen jobs: build-amd64-xsm fail build-arm64-xsm fail build-i386-xsm fail build-amd64 fail build-arm64 fail build-armhf fail build-i386 fail build-amd64-libvirt blocked build-arm64-libvirt blocked build-armhf-libvirt blocked build-i386-libvirt blocked build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl blocked test-amd64-coresched-amd64-xl blocked test-arm64-arm64-xl blocked test-armhf-armhf-xl blocked test-amd64-i386-xl blocked test-amd64-coresched-i386-xl blocked test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-i386-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-amd64-libvirt-xsm blocked test-arm64-arm64-libvirt-xsm blocked test-amd64-i386-libvirt-xsm blocked test-amd64-amd64-xl-xsm blocked test-arm64-arm64-xl-xsm blocked test-amd64-i386-xl-xsm blocked test-amd64-amd64-qemuu-nested-amd blocked test-amd64-amd64-xl-pvhv2-amd blocked test-amd64-i386-qemuu-rhel6hvm-amd blocked test-amd64-amd64-dom0pvh-xl-amd blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-freebsd10-amd64 blocked test-amd64-amd64-qemuu-freebsd11-amd64 blocked test-amd64-amd64-qemuu-freebsd12-amd64 blocked test-amd64-amd64-xl-qemuu-ovmf-amd64 blocked test-amd64-i386-xl-qemuu-ovmf-amd64 blocked test-amd64-amd64-xl-qemuu-win7-amd64 blocked test-amd64-i386-xl-qemuu-win7-amd64 blocked test-amd64-amd64-xl-qemuu-ws16-amd64 blocked test-amd64-i386-xl-qemuu-ws16-amd64 blocked test-armhf-armhf-xl-arndale blocked test-amd64-amd64-xl-credit1 blocked test-arm64-arm64-xl-credit1 blocked test-armhf-armhf-xl-credit1 blocked test-amd64-amd64-xl-credit2 blocked test-arm64-arm64-xl-credit2 blocked test-armhf-armhf-xl-credit2 blocked test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-freebsd10-i386 blocked test-amd64-amd64-qemuu-nested-intel blocked test-amd64-amd64-xl-pvhv2-intel blocked test-amd64-i386-qemuu-rhel6hvm-intel blocked test-amd64-amd64-dom0pvh-xl-intel blocked test-amd64-amd64-libvirt blocked test-armhf-armhf-libvirt blocked test-amd64-i386-libvirt blocked test-amd64-amd64-xl-multivcpu blocked test-armhf-armhf-xl-multivcpu blocked test-amd64-amd64-pair blocked test-amd64-i386-pair blocked test-amd64-amd64-libvirt-pair blocked test-amd64-i386-libvirt-pair blocked test-amd64-amd64-xl-pvshim blocked test-amd64-i386-xl-pvshim blocked test-amd64-amd64-pygrub blocked test-armhf-armhf-libvirt-qcow2 blocked test-amd64-amd64-xl-qcow2 blocked test-arm64-arm64-libvirt-raw blocked test-armhf-armhf-libvirt-raw blocked test-amd64-i386-libvirt-raw blocked test-amd64-amd64-xl-rtds blocked test-armhf-armhf-xl-rtds blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-amd64-xl-shadow blocked test-amd64-i386-xl-shadow blocked test-arm64-arm64-xl-thunderx blocked test-amd64-amd64-libvirt-vhd blocked test-arm64-arm64-xl-vhd blocked test-armhf-armhf-xl-vhd blocked test-amd64-i386-xl-vhd blocked ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 18679 lines long.) From xen-devel-bounces@lists.xenproject.org Thu Jun 15 01:36:53 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 15 Jun 2023 01:36:53 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549361.857837 (Exim 4.92) (envelope-from ) id 1q9bup-0001Uj-1O; Thu, 15 Jun 2023 01:36:47 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549361.857837; Thu, 15 Jun 2023 01:36:47 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9buo-0001Ub-TN; Thu, 15 Jun 2023 01:36:46 +0000 Received: by outflank-mailman (input) for mailman id 549361; Thu, 15 Jun 2023 01:36:46 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9buo-0001UV-7O for xen-devel@lists.xenproject.org; Thu, 15 Jun 2023 01:36:46 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [2604:1380:4641:c500::1]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 140cbc44-0b1d-11ee-8611-37d641c3527e; Thu, 15 Jun 2023 03:36:42 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id DC239616B4; Thu, 15 Jun 2023 01:36:40 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 57D9EC433C0; Thu, 15 Jun 2023 01:36:39 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 140cbc44-0b1d-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1686793000; bh=XZQwi+GeRT9RpqzfkPlkRlZcwMxms+dXPo+ibCeec+I=; h=Date:From:To:cc:Subject:In-Reply-To:References:From; b=kIz37C/dTpxwJGQCZCc08dHpu9N5KWsBwxfNLk3cJU3lsga9BzTDQAaITk0UXVj+J BXLgKW0r9hMCKasN8PPp/TmUKhDnzv12co3CXIAc0XYhSe4OCNYFHGTlBrA7RqMoVK L84XBrbUNUWdi0Bgr6zLHVWLDxSL2hO/stgwARvEpUk/zpWaDzCaeSsfQywhy80DIw O3/GwPVIjPO8kYnIuZPICW+YdemlgDuXkdji64+BvLtizpLuaa2WNgLTMd7FNoTHGb Idu/V7rzvICuSPA6KBGi9vUuEAJ22RcLYWoGYanXWh414/gTIF7fEORFyU9ueWMqqh ow0EyLzF7OKgQ== Date: Wed, 14 Jun 2023 18:36:37 -0700 (PDT) From: Stefano Stabellini X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop To: Michal Orzel cc: xen-devel@lists.xenproject.org, Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk Subject: Re: [PATCH 1/4] xen/arm: debug-pl011: Use correct accessors In-Reply-To: <20230607092727.19654-2-michal.orzel@amd.com> Message-ID: References: <20230607092727.19654-1-michal.orzel@amd.com> <20230607092727.19654-2-michal.orzel@amd.com> User-Agent: Alpine 2.22 (DEB 394 2020-01-19) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII On Wed, 7 Jun 2023, Michal Orzel wrote: > Although most PL011 UARTs can cope with 32-bit accesses, some of the old > legacy ones might not. PL011 registers are 8/16-bit wide and this shall > be perceived as the normal behavior. > > Modify early printk pl011 code for arm32/arm64 to use the correct > accessors depending on the register size (refer ARM DDI 0183G, Table 3.1). > > Signed-off-by: Michal Orzel > --- > Next patch will override strX,ldrX with macros but I prefer to keep the > history clean (+ possibiltity for a backport if needed). > --- > xen/arch/arm/arm32/debug-pl011.inc | 12 ++++++------ > xen/arch/arm/arm64/debug-pl011.inc | 6 +++--- > 2 files changed, 9 insertions(+), 9 deletions(-) > > diff --git a/xen/arch/arm/arm32/debug-pl011.inc b/xen/arch/arm/arm32/debug-pl011.inc > index c527f1d4424d..9fe0c2503831 100644 > --- a/xen/arch/arm/arm32/debug-pl011.inc > +++ b/xen/arch/arm/arm32/debug-pl011.inc > @@ -26,13 +26,13 @@ > */ > .macro early_uart_init rb, rc, rd > mov \rc, #(7372800 / CONFIG_EARLY_UART_PL011_BAUD_RATE % 16) > - str \rc, [\rb, #FBRD] /* -> UARTFBRD (Baud divisor fraction) */ > + strb \rc, [\rb, #FBRD] /* -> UARTFBRD (Baud divisor fraction) */ > mov \rc, #(7372800 / CONFIG_EARLY_UART_PL011_BAUD_RATE / 16) > - str \rc, [\rb, #IBRD] /* -> UARTIBRD (Baud divisor integer) */ > + strh \rc, [\rb, #IBRD] /* -> UARTIBRD (Baud divisor integer) */ > mov \rc, #WLEN_8 /* 8n1 */ > - str \rc, [\rb, #LCR_H] /* -> UARTLCR_H (Line control) */ > + strb \rc, [\rb, #LCR_H] /* -> UARTLCR_H (Line control) */ > ldr \rc, =(RXE | TXE | UARTEN) /* RXE | TXE | UARTEN */ > - str \rc, [\rb, #CR] /* -> UARTCR (Control Register) */ > + strh \rc, [\rb, #CR] /* -> UARTCR (Control Register) */ > .endm > > /* > @@ -42,7 +42,7 @@ > */ > .macro early_uart_ready rb, rc > 1: > - ldr \rc, [\rb, #FR] /* <- UARTFR (Flag register) */ > + ldrh \rc, [\rb, #FR] /* <- UARTFR (Flag register) */ > tst \rc, #BUSY /* Check BUSY bit */ > bne 1b /* Wait for the UART to be ready */ > .endm > @@ -53,7 +53,7 @@ > * rt: register which contains the character to transmit > */ > .macro early_uart_transmit rb, rt > - str \rt, [\rb, #DR] /* -> UARTDR (Data Register) */ > + strb \rt, [\rb, #DR] /* -> UARTDR (Data Register) */ Isn't UARTDR potentially 12-bit? I am not sure if we should use strb or strh here... Everything else checks out. > .endm > > /* > diff --git a/xen/arch/arm/arm64/debug-pl011.inc b/xen/arch/arm/arm64/debug-pl011.inc > index 6d60e78c8ba3..df713eff4922 100644 > --- a/xen/arch/arm/arm64/debug-pl011.inc > +++ b/xen/arch/arm/arm64/debug-pl011.inc > @@ -25,13 +25,13 @@ > */ > .macro early_uart_init xb, c > mov x\c, #(7372800 / CONFIG_EARLY_UART_PL011_BAUD_RATE % 16) > - strh w\c, [\xb, #FBRD] /* -> UARTFBRD (Baud divisor fraction) */ > + strb w\c, [\xb, #FBRD] /* -> UARTFBRD (Baud divisor fraction) */ > mov x\c, #(7372800 / CONFIG_EARLY_UART_PL011_BAUD_RATE / 16) > strh w\c, [\xb, #IBRD] /* -> UARTIBRD (Baud divisor integer) */ > mov x\c, #WLEN_8 /* 8n1 */ > - str w\c, [\xb, #LCR_H] /* -> UARTLCR_H (Line control) */ > + strb w\c, [\xb, #LCR_H] /* -> UARTLCR_H (Line control) */ > ldr x\c, =(RXE | TXE | UARTEN) > - str w\c, [\xb, #CR] /* -> UARTCR (Control Register) */ > + strh w\c, [\xb, #CR] /* -> UARTCR (Control Register) */ > .endm > > /* > -- > 2.25.1 > From xen-devel-bounces@lists.xenproject.org Thu Jun 15 01:43:21 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 15 Jun 2023 01:43:21 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549368.857847 (Exim 4.92) (envelope-from ) id 1q9c0x-00030Z-Ps; Thu, 15 Jun 2023 01:43:07 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549368.857847; Thu, 15 Jun 2023 01:43:07 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9c0x-00030S-MJ; Thu, 15 Jun 2023 01:43:07 +0000 Received: by outflank-mailman (input) for mailman id 549368; Thu, 15 Jun 2023 01:43:06 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9c0w-00030M-LT for xen-devel@lists.xenproject.org; Thu, 15 Jun 2023 01:43:06 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id f787f996-0b1d-11ee-8611-37d641c3527e; Thu, 15 Jun 2023 03:43:03 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id B08F9636F6; Thu, 15 Jun 2023 01:43:02 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 46206C433C0; Thu, 15 Jun 2023 01:43:01 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: f787f996-0b1d-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1686793382; bh=jbUW231jiz+3a2KtIfzGL7nehmUWPPQmCa+PNrOjwOA=; h=Date:From:To:cc:Subject:In-Reply-To:References:From; b=p3y/ztcjrB+kEeHCy8TmLl/p60XvVciz1uosopPww1stMRsQR5j9y3UjhSaYX7wBu vl91REGxwEAI8blrKss7mF5HRKMdw1EVwKZLm0zk93y48dgl2XJLTIrlA4xWqaISQ2 brmwG+UvD+Bh/tX4Uy5dJDL4p/wNidbruDfHIbSX2XFn2XPFPhKAoyigEa9j+h10jh wR0dmi8xEk19TPg23TvkBqqWVO0i+QWO0/fBpEFOJNcqYpVqPia6jhgautouSeabMM +YSo7bHcbIhWyPLrjEE4h+rKJRm2yxHZNINBDbzdmLOq2qqTH0rQcwWescEOVKb4BY oqbii7KJPagbw== Date: Wed, 14 Jun 2023 18:42:59 -0700 (PDT) From: Stefano Stabellini X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop To: Michal Orzel cc: xen-devel@lists.xenproject.org, Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk Subject: Re: [PATCH 2/4] xen/arm: debug-pl011: Add support for 32-bit only MMIO In-Reply-To: <20230607092727.19654-3-michal.orzel@amd.com> Message-ID: References: <20230607092727.19654-1-michal.orzel@amd.com> <20230607092727.19654-3-michal.orzel@amd.com> User-Agent: Alpine 2.22 (DEB 394 2020-01-19) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII On Wed, 7 Jun 2023, Michal Orzel wrote: > There are implementations of PL011 that can only handle 32-bit accesses > as oppose to the normal behavior where accesses are 8/16-bit wide. This > is usually advertised by setting a dt property 'reg-io-width' to 4. > > Introduce CONFIG_EARLY_UART_PL011_MMIO32 Kconfig option to be able to > enable the use of 32-bit only accessors in PL011 early printk code. > Define macros PL011_{STRH,STRB,LDRH} to distinguish accessors for normal > case from 32-bit MMIO one and use them in arm32/arm64 pl011 early printk > code. > > Update documentation accordingly. > > Signed-off-by: Michal Orzel Reviewed-by: Stefano Stabellini With the caveat of the potential change to patch #1 that would affect this patch too > --- > I might want to align the indentation of operands but doing so in this patch > is rather no go as it would limit the visibility of the scope of this patch. > Something to do in the future. > --- > docs/misc/arm/early-printk.txt | 3 +++ > xen/arch/arm/Kconfig.debug | 7 +++++++ > xen/arch/arm/arm32/debug-pl011.inc | 12 ++++++------ > xen/arch/arm/arm64/debug-pl011.inc | 12 ++++++------ > xen/arch/arm/include/asm/pl011-uart.h | 19 +++++++++++++++++++ > 5 files changed, 41 insertions(+), 12 deletions(-) > > diff --git a/docs/misc/arm/early-printk.txt b/docs/misc/arm/early-printk.txt > index aa22826075a4..bc2d65aa2ea3 100644 > --- a/docs/misc/arm/early-printk.txt > +++ b/docs/misc/arm/early-printk.txt > @@ -26,6 +26,9 @@ Other options depends on the driver selected: > If CONFIG_EARLY_UART_PL011_BAUD_RATE is set to 0 then the code will > not try to initialize the UART, so that bootloader or firmware > settings can be used for maximum compatibility. > + > + - CONFIG_EARLY_UART_PL011_MMIO32 is, optionally, used to enable 32-bit > + only accesses to registers. > - scif > - CONFIG_EARLY_UART_SCIF_VERSION_* is, optionally, the interface version > of the UART. Default to version NONE. > diff --git a/xen/arch/arm/Kconfig.debug b/xen/arch/arm/Kconfig.debug > index 842d768280c4..eec860e88e0b 100644 > --- a/xen/arch/arm/Kconfig.debug > +++ b/xen/arch/arm/Kconfig.debug > @@ -253,6 +253,13 @@ config EARLY_UART_PL011_BAUD_RATE > default 115200 if EARLY_PRINTK_FASTMODEL > default 0 > > +config EARLY_UART_PL011_MMIO32 > + bool "32-bit only MMIO for PL011 early printk" > + depends on EARLY_UART_PL011 > + help > + If specified, all accesses to PL011 registers made from early printk code > + will be done using 32-bit only accessors. > + > config EARLY_UART_INIT > depends on EARLY_UART_PL011 && EARLY_UART_PL011_BAUD_RATE != 0 > def_bool y > diff --git a/xen/arch/arm/arm32/debug-pl011.inc b/xen/arch/arm/arm32/debug-pl011.inc > index 9fe0c2503831..5833da2a235c 100644 > --- a/xen/arch/arm/arm32/debug-pl011.inc > +++ b/xen/arch/arm/arm32/debug-pl011.inc > @@ -26,13 +26,13 @@ > */ > .macro early_uart_init rb, rc, rd > mov \rc, #(7372800 / CONFIG_EARLY_UART_PL011_BAUD_RATE % 16) > - strb \rc, [\rb, #FBRD] /* -> UARTFBRD (Baud divisor fraction) */ > + PL011_STRB \rc, [\rb, #FBRD] /* -> UARTFBRD (Baud divisor fraction) */ > mov \rc, #(7372800 / CONFIG_EARLY_UART_PL011_BAUD_RATE / 16) > - strh \rc, [\rb, #IBRD] /* -> UARTIBRD (Baud divisor integer) */ > + PL011_STRH \rc, [\rb, #IBRD] /* -> UARTIBRD (Baud divisor integer) */ > mov \rc, #WLEN_8 /* 8n1 */ > - strb \rc, [\rb, #LCR_H] /* -> UARTLCR_H (Line control) */ > + PL011_STRB \rc, [\rb, #LCR_H] /* -> UARTLCR_H (Line control) */ > ldr \rc, =(RXE | TXE | UARTEN) /* RXE | TXE | UARTEN */ > - strh \rc, [\rb, #CR] /* -> UARTCR (Control Register) */ > + PL011_STRH \rc, [\rb, #CR] /* -> UARTCR (Control Register) */ > .endm > > /* > @@ -42,7 +42,7 @@ > */ > .macro early_uart_ready rb, rc > 1: > - ldrh \rc, [\rb, #FR] /* <- UARTFR (Flag register) */ > + PL011_LDRH \rc, [\rb, #FR] /* <- UARTFR (Flag register) */ > tst \rc, #BUSY /* Check BUSY bit */ > bne 1b /* Wait for the UART to be ready */ > .endm > @@ -53,7 +53,7 @@ > * rt: register which contains the character to transmit > */ > .macro early_uart_transmit rb, rt > - strb \rt, [\rb, #DR] /* -> UARTDR (Data Register) */ > + PL011_STRB \rt, [\rb, #DR] /* -> UARTDR (Data Register) */ > .endm > > /* > diff --git a/xen/arch/arm/arm64/debug-pl011.inc b/xen/arch/arm/arm64/debug-pl011.inc > index df713eff4922..430594610b2c 100644 > --- a/xen/arch/arm/arm64/debug-pl011.inc > +++ b/xen/arch/arm/arm64/debug-pl011.inc > @@ -25,13 +25,13 @@ > */ > .macro early_uart_init xb, c > mov x\c, #(7372800 / CONFIG_EARLY_UART_PL011_BAUD_RATE % 16) > - strb w\c, [\xb, #FBRD] /* -> UARTFBRD (Baud divisor fraction) */ > + PL011_STRB w\c, [\xb, #FBRD] /* -> UARTFBRD (Baud divisor fraction) */ > mov x\c, #(7372800 / CONFIG_EARLY_UART_PL011_BAUD_RATE / 16) > - strh w\c, [\xb, #IBRD] /* -> UARTIBRD (Baud divisor integer) */ > + PL011_STRH w\c, [\xb, #IBRD] /* -> UARTIBRD (Baud divisor integer) */ > mov x\c, #WLEN_8 /* 8n1 */ > - strb w\c, [\xb, #LCR_H] /* -> UARTLCR_H (Line control) */ > + PL011_STRB w\c, [\xb, #LCR_H] /* -> UARTLCR_H (Line control) */ > ldr x\c, =(RXE | TXE | UARTEN) > - strh w\c, [\xb, #CR] /* -> UARTCR (Control Register) */ > + PL011_STRH w\c, [\xb, #CR] /* -> UARTCR (Control Register) */ > .endm > > /* > @@ -41,7 +41,7 @@ > */ > .macro early_uart_ready xb, c > 1: > - ldrh w\c, [\xb, #FR] /* <- UARTFR (Flag register) */ > + PL011_LDRH w\c, [\xb, #FR] /* <- UARTFR (Flag register) */ > tst w\c, #BUSY /* Check BUSY bit */ > b.ne 1b /* Wait for the UART to be ready */ > .endm > @@ -52,7 +52,7 @@ > * wt: register which contains the character to transmit > */ > .macro early_uart_transmit xb, wt > - strb \wt, [\xb, #DR] /* -> UARTDR (Data Register) */ > + PL011_STRB \wt, [\xb, #DR] /* -> UARTDR (Data Register) */ > .endm > > /* > diff --git a/xen/arch/arm/include/asm/pl011-uart.h b/xen/arch/arm/include/asm/pl011-uart.h > index 5bb563ec0814..27c9bfa444cb 100644 > --- a/xen/arch/arm/include/asm/pl011-uart.h > +++ b/xen/arch/arm/include/asm/pl011-uart.h > @@ -21,6 +21,25 @@ > #ifndef __ASM_ARM_PL011_H > #define __ASM_ARM_PL011_H > > +#ifdef __ASSEMBLY__ > + > +/* > + * PL011 registers are 8/16-bit wide. However, there are implementations that > + * can only handle 32-bit accesses. The following macros used in early printk > + * are defined to distinguish accessors for normal case from 32-bit MMIO one. > + */ > +#ifdef CONFIG_EARLY_UART_PL011_MMIO32 > +#define PL011_STRH str > +#define PL011_STRB str > +#define PL011_LDRH ldr > +#else > +#define PL011_STRH strh > +#define PL011_STRB strb > +#define PL011_LDRH ldrh > +#endif > + > +#endif /* __ASSEMBLY__ */ > + > /* PL011 register addresses */ > #define DR (0x00) > #define RSR (0x04) > -- > 2.25.1 > From xen-devel-bounces@lists.xenproject.org Thu Jun 15 01:49:45 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 15 Jun 2023 01:49:45 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549373.857857 (Exim 4.92) (envelope-from ) id 1q9c7C-0003dt-Ey; Thu, 15 Jun 2023 01:49:34 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549373.857857; Thu, 15 Jun 2023 01:49:34 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9c7C-0003dm-Bh; Thu, 15 Jun 2023 01:49:34 +0000 Received: by outflank-mailman (input) for mailman id 549373; Thu, 15 Jun 2023 01:49:32 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9c7A-0003dg-FM for xen-devel@lists.xenproject.org; Thu, 15 Jun 2023 01:49:32 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id dd947d7b-0b1e-11ee-8611-37d641c3527e; Thu, 15 Jun 2023 03:49:29 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 8C2CE60DD7; Thu, 15 Jun 2023 01:49:28 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 1901BC433C8; Thu, 15 Jun 2023 01:49:26 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: dd947d7b-0b1e-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1686793768; bh=jI5cnyjJrLSI2E6m/MaN6cUY12p07MiZKjsTOBy/8wo=; h=Date:From:To:cc:Subject:In-Reply-To:References:From; b=qFAz+LAtFWjVwaOYqJsA1VVO3k5FutKVqR3CQplTqWKUm7pYSfUjfa7YW5yfHlM+X ATF0UGtZKZOQ35sA5YsFy0tmqIoBvzbb635bnSOa9oPnXTIEnhoJkbVwRrwwD0WbCR 38Dcy81Ycw/7kuZDVafCnpmaPrY6cl8BOZ9a1sDMUed7dNqBtb+NDYW7LHwWNpi+Rx R2J5FzSmct5kEwJxvGUCJGbqBxescTOF3rSVR6i4QtdIOdQZiZOqApbOvKQ2nKwfMV 0DDnEgHIguHHoBIZWTofwmysLUQNI0ukxBqfyu4JlYXQtJlSZ3oplQ5QxHAXmpuvdx WO7Bjgw7rK2LQ== Date: Wed, 14 Jun 2023 18:49:25 -0700 (PDT) From: Stefano Stabellini X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop To: Michal Orzel cc: xen-devel@lists.xenproject.org, Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk Subject: Re: [PATCH 3/4] xen/arm: pl011: Use correct accessors In-Reply-To: <20230607092727.19654-4-michal.orzel@amd.com> Message-ID: References: <20230607092727.19654-1-michal.orzel@amd.com> <20230607092727.19654-4-michal.orzel@amd.com> User-Agent: Alpine 2.22 (DEB 394 2020-01-19) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII On Wed, 7 Jun 2023, Michal Orzel wrote: > At the moment, we use 32-bit only accessors (i.e. readl/writel) to match > the SBSA v2.x requirement. This should not be the default case for normal > PL011 where accesses shall be 8/16-bit (max register size is 16-bit). > There are however implementations of this UART that can only handle 32-bit > MMIO. This is advertised by dt property "reg-io-width" set to 4. > > Introduce new struct pl011 member mmio32 and replace pl011_{read/write} > macros with static inline helpers that use 32-bit or 16-bit accessors > (largest-common not to end up using different ones depending on the actual > register size) according to mmio32 value. By default this property is set > to false, unless: > - reg-io-width is specified with value 4, > - SBSA UART is in use. > > For now, no changes done for ACPI due to lack of testing possibilities > (i.e. current behavior maintained resulting in 32-bit accesses). > > Signed-off-by: Michal Orzel Reviewed-by: Stefano Stabellini > --- > xen/drivers/char/pl011.c | 53 +++++++++++++++++++++++++++++++++++----- > 1 file changed, 47 insertions(+), 6 deletions(-) > > diff --git a/xen/drivers/char/pl011.c b/xen/drivers/char/pl011.c > index 052a6512515c..403b1ac06551 100644 > --- a/xen/drivers/char/pl011.c > +++ b/xen/drivers/char/pl011.c > @@ -41,6 +41,7 @@ static struct pl011 { > /* unsigned int timeout_ms; */ > /* bool_t probing, intr_works; */ > bool sbsa; /* ARM SBSA generic interface */ > + bool mmio32; /* 32-bit only MMIO */ > } pl011_com = {0}; > > /* These parity settings can be ORed directly into the LCR. */ > @@ -50,9 +51,30 @@ static struct pl011 { > #define PARITY_MARK (PEN|SPS) > #define PARITY_SPACE (PEN|EPS|SPS) > > -/* SBSA v2.x document requires, all reads/writes must be 32-bit accesses */ > -#define pl011_read(uart, off) readl((uart)->regs + (off)) > -#define pl011_write(uart, off,val) writel((val), (uart)->regs + (off)) > +/* > + * By default, PL011 accesses shall be done using 8/16-bit accessors to > + * support legacy devices that cannot cope with 32-bit. On the other hand, > + * there are implementations of PL011 that can only handle 32-bit MMIO. Also, > + * SBSA v2.x requires 32-bit accesses. Note that for default case, we use > + * largest-common accessors (i.e. 16-bit) not to end up using different ones > + * depending on the actual register size. > + */ > +static inline void > +pl011_write(struct pl011 *uart, unsigned int offset, unsigned int val) > +{ > + if ( uart->mmio32 ) > + writel(val, uart->regs + offset); > + else > + writew(val, uart->regs + offset); > +} > + > +static inline unsigned int pl011_read(struct pl011 *uart, unsigned int offset) > +{ > + if ( uart->mmio32 ) > + return readl(uart->regs + offset); > + > + return readw(uart->regs + offset); > +} > > static unsigned int pl011_intr_status(struct pl011 *uart) > { > @@ -222,7 +244,8 @@ static struct uart_driver __read_mostly pl011_driver = { > .vuart_info = pl011_vuart, > }; > > -static int __init pl011_uart_init(int irq, paddr_t addr, paddr_t size, bool sbsa) > +static int __init > +pl011_uart_init(int irq, paddr_t addr, paddr_t size, bool sbsa, bool mmio32) > { > struct pl011 *uart; > > @@ -233,6 +256,9 @@ static int __init pl011_uart_init(int irq, paddr_t addr, paddr_t size, bool sbsa > uart->stop_bits = 1; > uart->sbsa = sbsa; > > + /* Set 32-bit MMIO also for SBSA since v2.x requires it */ > + uart->mmio32 = (mmio32 || sbsa); > + > uart->regs = ioremap_nocache(addr, size); > if ( !uart->regs ) > { > @@ -259,6 +285,8 @@ static int __init pl011_dt_uart_init(struct dt_device_node *dev, > const char *config = data; > int res; > paddr_t addr, size; > + uint32_t io_width; > + bool mmio32 = false; > > if ( strcmp(config, "") ) > { > @@ -280,7 +308,19 @@ static int __init pl011_dt_uart_init(struct dt_device_node *dev, > return -EINVAL; > } > > - res = pl011_uart_init(res, addr, size, false); > + /* See linux Documentation/devicetree/bindings/serial/pl011.yaml */ > + if ( dt_property_read_u32(dev, "reg-io-width", &io_width) ) > + { > + if ( io_width == 4 ) > + mmio32 = true; > + else if ( io_width != 1 ) > + { > + printk("pl011: Unsupported reg-io-width (%"PRIu32")\n", io_width); > + return -EINVAL; > + } > + } > + > + res = pl011_uart_init(res, addr, size, false, mmio32); > if ( res < 0 ) > { > printk("pl011: Unable to initialize\n"); > @@ -328,8 +368,9 @@ static int __init pl011_acpi_uart_init(const void *data) > /* trigger/polarity information is not available in spcr */ > irq_set_type(spcr->interrupt, IRQ_TYPE_LEVEL_HIGH); > > + /* TODO - mmio32 proper handling (for now set to true) */ > res = pl011_uart_init(spcr->interrupt, spcr->serial_port.address, > - PAGE_SIZE, sbsa); > + PAGE_SIZE, sbsa, true); > if ( res < 0 ) > { > printk("pl011: Unable to initialize\n"); > -- > 2.25.1 > From xen-devel-bounces@lists.xenproject.org Thu Jun 15 01:50:40 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 15 Jun 2023 01:50:40 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549378.857866 (Exim 4.92) (envelope-from ) id 1q9c8F-00050g-Nh; Thu, 15 Jun 2023 01:50:39 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549378.857866; Thu, 15 Jun 2023 01:50:39 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9c8F-00050Z-Ky; Thu, 15 Jun 2023 01:50:39 +0000 Received: by outflank-mailman (input) for mailman id 549378; Thu, 15 Jun 2023 01:50:39 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9c8F-00050T-CQ for xen-devel@lists.xenproject.org; Thu, 15 Jun 2023 01:50:39 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 05c10386-0b1f-11ee-8611-37d641c3527e; Thu, 15 Jun 2023 03:50:37 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 21FA8601D6; Thu, 15 Jun 2023 01:50:36 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id B3CB5C433C0; Thu, 15 Jun 2023 01:50:34 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 05c10386-0b1f-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1686793835; bh=BvL13o8J7hMok5/C+Ksec38j3C0V4DkPm9ObeIcMTVU=; h=Date:From:To:cc:Subject:In-Reply-To:References:From; b=K1Tq1O3DxdFT9RZbrsflNBkqgG/a9wW/woUJQkipUyKNAbd52EeqHhb7akQk2gaY9 45C+3nFWwvAP+EHTpEhHdVZL+imtHDszf0RL5Ie8YeSfsxb2D5Rc6whUuRVY++VJ2q 0Mqam2WN0XfOpIKYIgZrzuG2+UNWCOIqvZES2xViYJPOfspdalz/NTv22xBKNIsZcx 719X+KujULdGAeazCiDpF5KlRjBNPt9Vez5AiFZ1yJP9YGKpknoVcC5yZzH0Jhl1vV JUf37FliKxKLAdhjNLyyvkvEQv520vAg7jNel0EWOx40R6h9LaLowU9UyXJokxTWtj OcZob2PX9chwQ== Date: Wed, 14 Jun 2023 18:50:33 -0700 (PDT) From: Stefano Stabellini X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop To: Michal Orzel cc: xen-devel@lists.xenproject.org, Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk Subject: Re: [PATCH 4/4] xen/arm: pl011: Add SBSA UART device-tree support In-Reply-To: <20230607092727.19654-5-michal.orzel@amd.com> Message-ID: References: <20230607092727.19654-1-michal.orzel@amd.com> <20230607092727.19654-5-michal.orzel@amd.com> User-Agent: Alpine 2.22 (DEB 394 2020-01-19) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII On Wed, 7 Jun 2023, Michal Orzel wrote: > We already have all the bits necessary in PL011 driver to support SBSA > UART thanks to commit 032ea8c736d10f02672863c6e369338f948f7ed8 that > enabled it for ACPI. Plumb in the remaining part for device-tree boot: > - add arm,sbsa-uart compatible to pl011_dt_match (no need for a separate > struct and DT_DEVICE_START as SBSA is a subset of PL011), > - from pl011_dt_uart_init(), check for SBSA UART compatible to determine > the UART type in use. > > Signed-off-by: Michal Orzel Reviewed-by: Stefano Stabellini > --- > After this series the last thing not to be in spec for newer UARTs (well, > for rev1.5 introduced in 2007 I believe) is incorrect FIFO size. We hardcode it > to 16 but in r1.5 it is 32. This requires checking the peripheral ID register > or using arm,primecell-periphid dt property for overriding HW. Something to > be done in the future (at least 16 is not harmful). > --- > xen/drivers/char/pl011.c | 8 ++++++-- > 1 file changed, 6 insertions(+), 2 deletions(-) > > diff --git a/xen/drivers/char/pl011.c b/xen/drivers/char/pl011.c > index 403b1ac06551..f7bf3ad117af 100644 > --- a/xen/drivers/char/pl011.c > +++ b/xen/drivers/char/pl011.c > @@ -286,7 +286,7 @@ static int __init pl011_dt_uart_init(struct dt_device_node *dev, > int res; > paddr_t addr, size; > uint32_t io_width; > - bool mmio32 = false; > + bool mmio32 = false, sbsa; > > if ( strcmp(config, "") ) > { > @@ -320,7 +320,9 @@ static int __init pl011_dt_uart_init(struct dt_device_node *dev, > } > } > > - res = pl011_uart_init(res, addr, size, false, mmio32); > + sbsa = dt_device_is_compatible(dev, "arm,sbsa-uart"); > + > + res = pl011_uart_init(res, addr, size, sbsa, mmio32); > if ( res < 0 ) > { > printk("pl011: Unable to initialize\n"); > @@ -335,6 +337,8 @@ static int __init pl011_dt_uart_init(struct dt_device_node *dev, > static const struct dt_device_match pl011_dt_match[] __initconst = > { > DT_MATCH_COMPATIBLE("arm,pl011"), > + /* No need for a separate struct as SBSA UART is a subset of PL011 */ > + DT_MATCH_COMPATIBLE("arm,sbsa-uart"), > { /* sentinel */ }, > }; > > -- > 2.25.1 > From xen-devel-bounces@lists.xenproject.org Thu Jun 15 02:02:14 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 15 Jun 2023 02:02:14 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549383.857877 (Exim 4.92) (envelope-from ) id 1q9cJK-0006x5-Os; Thu, 15 Jun 2023 02:02:06 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549383.857877; Thu, 15 Jun 2023 02:02:06 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9cJK-0006wy-Lt; Thu, 15 Jun 2023 02:02:06 +0000 Received: by outflank-mailman (input) for mailman id 549383; Thu, 15 Jun 2023 02:02:05 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9cJJ-0006ws-Ik for xen-devel@lists.xenproject.org; Thu, 15 Jun 2023 02:02:05 +0000 Received: from NAM12-DM6-obe.outbound.protection.outlook.com (mail-dm6nam12on2060f.outbound.protection.outlook.com [2a01:111:f400:fe59::60f]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 9e023d02-0b20-11ee-8611-37d641c3527e; Thu, 15 Jun 2023 04:02:02 +0200 (CEST) Received: from BN9PR03CA0631.namprd03.prod.outlook.com (2603:10b6:408:13b::6) by DM6PR12MB4481.namprd12.prod.outlook.com (2603:10b6:5:2af::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.37; Thu, 15 Jun 2023 02:01:58 +0000 Received: from BN8NAM11FT011.eop-nam11.prod.protection.outlook.com (2603:10b6:408:13b:cafe::cf) by BN9PR03CA0631.outlook.office365.com (2603:10b6:408:13b::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.37 via Frontend Transport; Thu, 15 Jun 2023 02:01:57 +0000 Received: from SATLEXMB04.amd.com (165.204.84.17) by BN8NAM11FT011.mail.protection.outlook.com (10.13.176.140) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6500.25 via Frontend Transport; Thu, 15 Jun 2023 02:01:57 +0000 Received: from SATLEXMB06.amd.com (10.181.40.147) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Wed, 14 Jun 2023 21:01:57 -0500 Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB06.amd.com (10.181.40.147) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Wed, 14 Jun 2023 21:01:56 -0500 Received: from [192.168.137.15] (10.180.168.240) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.23 via Frontend Transport; Wed, 14 Jun 2023 21:01:54 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 9e023d02-0b20-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=a2rBWYYjK+FOxaQsrPMdlWvXbrqqxmFk7vnAEN4W9epbAfioT9H0CpZeRxYEMJ+jyvxYOhnNSiJHC6UzmINY4GaWvdi0ithFZFzVgwV8neSHZc1yP3Cr79+SHoAYMA/QsQhN3YNEfyLoL2YBVTzaWQUaZyesy1NTlSS3CPICIH55oItK1BgLPJ3MUS0V/YTfxq2x857TsAYTEgXZpLMVc9TVPOvbCSmhD9zz2zUUythl3xAT7OCtCjAugcRZj76qXn4NPoq3YD0RBIL6CsjuwZOaXaR4FZ4hOo1I07QIZaTJ6KjjT5cpfRME+RYAiYXLr6KZstAcZNNGcmbtVK0UZA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=lQQWy7sJmF9RXCsAbdqLi3mUeB6gRol/H/7B7f/gaTk=; b=OgKaye5wV2vtkooXnEpKnraPyt14vfvTck2yxtIfb4yedMgOIuUkrN73dmFI0U3s/fXzl3AfXH2ZaguPI9mLozoqXUb+fB9NuT1KgwCh+6/V2lTdtwxVr3Ccf8Hpmw5/3DQErrluh7Q5HpM1vCE8OaD9x4sNo1vEQkYznqdptlfdEtISthNBSC9lqI14HIM1XUyd7k4lKDkKWEIM6WjDmtmpnItUmL5edfUjfz0XxkhN2LQuPY576CBKGxpHY44tbM7m9J8SYPWNCJvs3ohb2h49/V8uy2MAPmcBO3j+BAbmlrMrDp8zxJ6zFjF9/Mr+mZuLefJVce5s/AJv+WuHkg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=epam.com smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=lQQWy7sJmF9RXCsAbdqLi3mUeB6gRol/H/7B7f/gaTk=; b=VPJZouB+DhPxV8W4U2fbmw4YqZSoVl6lsjqHN7EXJOAd7BL7uZ2uJ3ekAN8Y9m/D/TE19svb+g85nbtBX/mazm4Kft6t6+Yed+KmYxT2KCpg8n6ilE+1Nl2HhBxZIIprfs3nQ/M2SkaGitBGUMH9Bf8ok20KRJ7bm47IQq7pM2s= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C Message-ID: Date: Wed, 14 Jun 2023 22:01:49 -0400 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH v7 00/12] PCI devices passthrough on Arm, part 3 Content-Language: en-US To: Volodymyr Babchuk , "xen-devel@lists.xenproject.org" CC: Jan Beulich , Andrew Cooper , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , George Dunlap , Julien Grall , Stefano Stabellini , Paul Durrant , Bertrand Marquis References: <20230613103159.524763-1-volodymyr_babchuk@epam.com> From: Stewart Hildebrand In-Reply-To: <20230613103159.524763-1-volodymyr_babchuk@epam.com> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BN8NAM11FT011:EE_|DM6PR12MB4481:EE_ X-MS-Office365-Filtering-Correlation-Id: 88b2f29f-6fec-4d76-00d8-08db6d447fe0 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: Ogfg/n22qhpHCkXfy9OKn8tnPVsViAThBH+ubdgiLRsHV3B5I9h4IXG0ujSaqCsGQwY+fMxHX046WCjX6og/uMUmhVCT4oJZhGlgmizLvBuS0Doq84e7LdLoRwZkJw6xfXpp5euO7S0OEazPF737ue+aDp85fyq1UuuAJ9slFJz8UtJuJRoKbzf4kt5kgQf8HU1pV7lTDPk2OFI00niPuf0PVANhwLaPxnhbg2VlvjuGiKQCEc4yZYWotx7zNiGw463+QF2D3PhpIK/PqJBNX2IzMtmObpfg9XP65dcLJYRc+uOCm2rIgnb+Qy0T8QjvN8wHj+kCP4eSR/iyE9OHFvd80NPeiTKnJgo3wamxiTBMVBdlGXcxi6Ol9f9iVHrgp39Txl2KKUzJ+uIgSyOifNxrPGLU/B3a/lAJmpEl+LXnv/3yBPSGlQbcL7MTWN3eTsGf16RcXl+mnf31vIfVtglhLNT/AzwYFEYU8YykQWK7tmSAjECKO+6bNrdWJCJN2WQtJCAZOf8JcyTMrfI5SIHEDCfwjNpcBIvzPw0uy+K1KCRag6sKyLgQC7jOjZ2PlN47es2gFImBBwLjp72PO0PZx+r6qFxH6EqZ3zwWptgC4BkWXQyAajTUycBB1Vh5ekm5CcrxetKY06FIaZIhBqAvDe6tk9CUdGcHQ1Vf+DNWMrvz4fmASdJtFbO3F/RzMhHEHH/omtlRbeqNq2RAQpXcpmUaFU030wK2p38ecXTvxCwG7FXDXaLSriviu0upaITxuEEnYCY0LVX00Mx/iyPOfwWR29jefOen2t/94+vNDVW67Qq0WenKPUP8RiqfaUdqJK/2/s7L/9ZpaFsrHQ== X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(376002)(346002)(396003)(136003)(451199021)(36840700001)(46966006)(40470700004)(5660300002)(83380400001)(426003)(336012)(186003)(40480700001)(44832011)(2906002)(31686004)(4744005)(47076005)(2616005)(7416002)(966005)(36860700001)(41300700001)(8936002)(26005)(40460700003)(8676002)(31696002)(316002)(110136005)(54906003)(53546011)(6666004)(82740400003)(36756003)(478600001)(81166007)(356005)(82310400005)(4326008)(86362001)(70586007)(70206006)(16576012)(43740500002)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Jun 2023 02:01:57.3335 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 88b2f29f-6fec-4d76-00d8-08db6d447fe0 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com] X-MS-Exchange-CrossTenant-AuthSource: BN8NAM11FT011.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR12MB4481 On 6/13/23 06:32, Volodymyr Babchuk wrote: > Hello, > > This is another another version of vPCI rework (previous one can be > found at [1]). The biggest change is how vPCI locking is done. This > series uses per-domain vPCI rwlock. > > Note that this series does not include my work on reference counting > for PCI devices because this counting does not resolve isses we are > having for vPCI. While it is (maybe) nice to have PCI refcounting, it > does not moves us towards PCI on ARM. > > > [1] https://lore.kernel.org/all/20220204063459.680961-1-andr2000@gmail.com/ Thanks for sending this! Should this be v8? I see v7 at [2]. I had to rewind my xen.git back to 67c28bfc5245 for this series to apply cleanly (just before ee045f3a4a6d "vpci/header: cope with devices not having vpci allocated"). [2] https://lists.xenproject.org/archives/html/xen-devel/2022-07/msg01127.html From xen-devel-bounces@lists.xenproject.org Thu Jun 15 02:26:00 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 15 Jun 2023 02:26:00 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549390.857887 (Exim 4.92) (envelope-from ) id 1q9cg3-00016g-QA; Thu, 15 Jun 2023 02:25:35 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549390.857887; Thu, 15 Jun 2023 02:25:35 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9cg3-00016Z-N0; Thu, 15 Jun 2023 02:25:35 +0000 Received: by outflank-mailman (input) for mailman id 549390; Thu, 15 Jun 2023 02:25:34 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9cg2-00016P-JF; Thu, 15 Jun 2023 02:25:34 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9cg2-000587-HH; Thu, 15 Jun 2023 02:25:34 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9cg2-0006aV-8Y; Thu, 15 Jun 2023 02:25:34 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q9cg2-0003Er-7r; Thu, 15 Jun 2023 02:25:34 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=fEZ3K2E/+GTN45glGaSJgxyrcuwADG8GDPJt9sdSCO0=; b=7HzBk+l55Hwvc7S8AwBcGh2T52 pv7A/WyC6zReu8CvIDlzqqbIiKAlIQShBr9tTEJ4/BF7lwPBluqTX3jmK6i+mKP0U733+Ls2Zkw5U i7oS7yKWvBXS6dXy30vHy5fjujz6nkjHOlNCu4e4oZkC7+6Aadg6eHzzcsCIFsLn09Ig=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [ovmf test] 181429: all pass - PUSHED X-Osstest-Versions-This: ovmf=aad98d915abe5ba092e318913028ed47937a9447 X-Osstest-Versions-That: ovmf=51bb8eb76c4e8c57d5484c647ecf0b5c5fa8fa94 From: osstest service owner Date: Thu, 15 Jun 2023 02:25:34 +0000 flight 181429 ovmf real [real] http://logs.test-lab.xenproject.org/osstest/logs/181429/ Perfect :-) All tests in this flight passed as required version targeted for testing: ovmf aad98d915abe5ba092e318913028ed47937a9447 baseline version: ovmf 51bb8eb76c4e8c57d5484c647ecf0b5c5fa8fa94 Last test of basis 181404 2023-06-13 08:11:19 Z 1 days Testing same since 181429 2023-06-14 15:14:02 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: BruceX Wang jobs: build-amd64-xsm pass build-i386-xsm pass build-amd64 pass build-i386 pass build-amd64-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-i386-pvops pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Pushing revision : To xenbits.xen.org:/home/xen/git/osstest/ovmf.git 51bb8eb76c..aad98d915a aad98d915abe5ba092e318913028ed47937a9447 -> xen-tested-master From xen-devel-bounces@lists.xenproject.org Thu Jun 15 06:42:27 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 15 Jun 2023 06:42:27 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549397.857897 (Exim 4.92) (envelope-from ) id 1q9ggI-0002HZ-JA; Thu, 15 Jun 2023 06:42:06 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549397.857897; Thu, 15 Jun 2023 06:42:06 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9ggI-0002HS-Fs; Thu, 15 Jun 2023 06:42:06 +0000 Received: by outflank-mailman (input) for mailman id 549397; Thu, 15 Jun 2023 06:42:04 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9ggG-0002H3-Px for xen-devel@lists.xenproject.org; Thu, 15 Jun 2023 06:42:04 +0000 Received: from NAM12-BN8-obe.outbound.protection.outlook.com (mail-bn8nam12on20604.outbound.protection.outlook.com [2a01:111:f400:fe5b::604]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id ba93dfb8-0b47-11ee-8611-37d641c3527e; Thu, 15 Jun 2023 08:42:00 +0200 (CEST) Received: from PH8PR07CA0019.namprd07.prod.outlook.com (2603:10b6:510:2cd::18) by SJ0PR12MB8116.namprd12.prod.outlook.com (2603:10b6:a03:4ec::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.37; Thu, 15 Jun 2023 06:41:55 +0000 Received: from SN1PEPF000252A1.namprd05.prod.outlook.com (2603:10b6:510:2cd:cafe::4b) by PH8PR07CA0019.outlook.office365.com (2603:10b6:510:2cd::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.37 via Frontend Transport; Thu, 15 Jun 2023 06:41:55 +0000 Received: from SATLEXMB04.amd.com (165.204.84.17) by SN1PEPF000252A1.mail.protection.outlook.com (10.167.242.8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6500.27 via Frontend Transport; Thu, 15 Jun 2023 06:41:55 +0000 Received: from SATLEXMB04.amd.com (10.181.40.145) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Thu, 15 Jun 2023 01:41:50 -0500 Received: from [10.71.193.39] (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server id 15.1.2507.23 via Frontend Transport; Thu, 15 Jun 2023 01:41:48 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: ba93dfb8-0b47-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=aqldfbLUHgg6JxzP5GnE2Aqr9+F5g4pUkbqmk5dHyaRoWwH5Arg14cxaQrt8bpzT5uAUQRzJfBFvNvs3aPqnvxYFl87LlHuZXlOyL1L/e0qZB5nnzERT1RIE2KFtFe4W8T96nX0CzWp9tb3zi5oiF4N6uI/5OU6gElaryu4GNPjz3WaPtBLkq5F0d7xlpYvM3towx4z7dFrq6Xv+J2xhbl0OvcQDeGX3RSBNCvlwXYXqcsPgw0SMcshqkditx3tmJyRK1c+8TAQYtj33L1FoHVx1BrVr8sDnKP0my4lZLV9N7MYeBFfGzuozP/e5XHQBjQZRdbVh67z88DVCtAGMKA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=+ePZVHWiomxesV+rzw3eymIut3qjDdkJ+FrS4yGi+6o=; b=bDfMt82dNnW0PxQjJgvvZUT2VCSgeBcIJNlX/jr0NhmoO8FyH0DjR/46qxlhH5NpcBeE2dmIH25q4FzYcLIWnLIp0/9/wGsOdQ7FJZpPHC5bzJw2yP9cJeRM3pdCh/eeDwnDxpTn60y+LvLiME+EePFGnV97gDYJQloVv62BvDAX5DxEZtctBCe7oYraSSAzWqFRUOIaToX2Z/vojYXD8vNYcit0G5HggFi0lVv3M19pbvfuxbeMp0Ii7WIXvFrj6izB/bQufuxAULIOUC55xhM7CnOpgVTsJc8XMVjyI+z4kpMwKf1/LyIYOCWneh/LmNm4LZg8gZOKrVmTL/0nrw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=kernel.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=+ePZVHWiomxesV+rzw3eymIut3qjDdkJ+FrS4yGi+6o=; b=rz+5vIUZr1MVbfoSEHdhsla8bA7visuFgJvC1wjjLIZmWQMx5bUAwkA6sNlGMo3BbJNof3L3HGYyy+hbGBa4Oe4jpwvjrMvVkQNmtNfBvDA1K8wV9u7lYS46GAQKIMmdbR0ppyuXLALsAtxN/3Jhw7QCNu3XLMhvRYpz+gBgpuU= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C Message-ID: <8d2a300f-1fe9-590f-7481-b0980d23c743@amd.com> Date: Thu, 15 Jun 2023 08:41:48 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH 1/4] xen/arm: debug-pl011: Use correct accessors To: Stefano Stabellini CC: , Julien Grall , Bertrand Marquis , Volodymyr Babchuk References: <20230607092727.19654-1-michal.orzel@amd.com> <20230607092727.19654-2-michal.orzel@amd.com> Content-Language: en-US From: Michal Orzel In-Reply-To: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SN1PEPF000252A1:EE_|SJ0PR12MB8116:EE_ X-MS-Office365-Filtering-Correlation-Id: b2b0507f-ba72-46cb-3587-08db6d6b9c17 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: XV1j6wNuaDJK9bDtrTv+FouWJnmVZvWN5rEqWy5eH3cwbn/pH4/WtWj/ymeAxDLrvyCGz+6w/qlmWeBsbFbIKvtqGnZV8MTqLfyUPKQk8E0Vxm6yTLUrfOlEJ5F/8K2Iaof3Y2ET+zY+wMGHq4ujspxP4E94uSy6G3pyQgIjIJaQcGBeX5S1YlnnzAQuC3xO+2ZyL3Z5oRKy2l38Fq9OVE2+rhcvWY9Ma4yj+8LlLytPi9l+aiSxMEfz7AnzkyEoQpp46ekQnyV7U4UD5MScJp4tZH3SWqQS82BEBwbPoaP5uG6WjFTNKK4LJa8Qz8u/cjOvXc44w4FlIGfapf+UuiHkVIQE/mA3Lpid3JATzq5lOt5TVbNy401qN/a+YIBC1rIAAtz/tstwRM8UMM4yfQH0UEC+TqyQsFPat//cecc2zI0uiJOG9YhExkzkKmWsgY5tnonDWhKdmGZvadUBZ++RnKXImhgk0jYhAh/N0O/gCgrgkhWWQXrasVHShVS6RnHFuNVc8bu6jhyKnPE1sL2fLg/WYtnrlPEIdfiy/yZ3tP9lemWHcPmQBgOSILpkEMoRGM33hwo9f4ulNX6i9u2GVhstvIGDxe4+cVstltIv7xnVaBG4R5xx8vn7O5QhH5ZT5ERRSrNJTBidIILE7EH3PY+az1GuGSHXhjXaqMzY313zNdTy3mQ7qotxdIHQ4kATYAmx1y3HplpxpPuQ7Wg0ostT0dlEXRJRFv0XigwEiwTtm+xL994h9skWRMSbsyw1Rjf/XOndZtejJc1zX8QnRSX7cvsUXce7y8gS5CjxchLinj0PUQ3FlMs6L8GJ X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(136003)(396003)(346002)(376002)(451199021)(36840700001)(46966006)(40470700004)(82310400005)(40480700001)(40460700003)(478600001)(2616005)(26005)(53546011)(8676002)(41300700001)(8936002)(70586007)(316002)(16576012)(5660300002)(36756003)(4326008)(70206006)(44832011)(54906003)(82740400003)(81166007)(356005)(6916009)(31696002)(86362001)(2906002)(47076005)(186003)(36860700001)(83380400001)(426003)(336012)(31686004)(43740500002)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Jun 2023 06:41:55.0127 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: b2b0507f-ba72-46cb-3587-08db6d6b9c17 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com] X-MS-Exchange-CrossTenant-AuthSource: SN1PEPF000252A1.namprd05.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR12MB8116 Hi Stefano, On 15/06/2023 03:36, Stefano Stabellini wrote: > > > On Wed, 7 Jun 2023, Michal Orzel wrote: >> Although most PL011 UARTs can cope with 32-bit accesses, some of the old >> legacy ones might not. PL011 registers are 8/16-bit wide and this shall >> be perceived as the normal behavior. >> >> Modify early printk pl011 code for arm32/arm64 to use the correct >> accessors depending on the register size (refer ARM DDI 0183G, Table 3.1). >> >> Signed-off-by: Michal Orzel >> --- >> Next patch will override strX,ldrX with macros but I prefer to keep the >> history clean (+ possibiltity for a backport if needed). >> --- >> xen/arch/arm/arm32/debug-pl011.inc | 12 ++++++------ >> xen/arch/arm/arm64/debug-pl011.inc | 6 +++--- >> 2 files changed, 9 insertions(+), 9 deletions(-) >> >> diff --git a/xen/arch/arm/arm32/debug-pl011.inc b/xen/arch/arm/arm32/debug-pl011.inc >> index c527f1d4424d..9fe0c2503831 100644 >> --- a/xen/arch/arm/arm32/debug-pl011.inc >> +++ b/xen/arch/arm/arm32/debug-pl011.inc >> @@ -26,13 +26,13 @@ >> */ >> .macro early_uart_init rb, rc, rd >> mov \rc, #(7372800 / CONFIG_EARLY_UART_PL011_BAUD_RATE % 16) >> - str \rc, [\rb, #FBRD] /* -> UARTFBRD (Baud divisor fraction) */ >> + strb \rc, [\rb, #FBRD] /* -> UARTFBRD (Baud divisor fraction) */ >> mov \rc, #(7372800 / CONFIG_EARLY_UART_PL011_BAUD_RATE / 16) >> - str \rc, [\rb, #IBRD] /* -> UARTIBRD (Baud divisor integer) */ >> + strh \rc, [\rb, #IBRD] /* -> UARTIBRD (Baud divisor integer) */ >> mov \rc, #WLEN_8 /* 8n1 */ >> - str \rc, [\rb, #LCR_H] /* -> UARTLCR_H (Line control) */ >> + strb \rc, [\rb, #LCR_H] /* -> UARTLCR_H (Line control) */ >> ldr \rc, =(RXE | TXE | UARTEN) /* RXE | TXE | UARTEN */ >> - str \rc, [\rb, #CR] /* -> UARTCR (Control Register) */ >> + strh \rc, [\rb, #CR] /* -> UARTCR (Control Register) */ >> .endm >> >> /* >> @@ -42,7 +42,7 @@ >> */ >> .macro early_uart_ready rb, rc >> 1: >> - ldr \rc, [\rb, #FR] /* <- UARTFR (Flag register) */ >> + ldrh \rc, [\rb, #FR] /* <- UARTFR (Flag register) */ >> tst \rc, #BUSY /* Check BUSY bit */ >> bne 1b /* Wait for the UART to be ready */ >> .endm >> @@ -53,7 +53,7 @@ >> * rt: register which contains the character to transmit >> */ >> .macro early_uart_transmit rb, rt >> - str \rt, [\rb, #DR] /* -> UARTDR (Data Register) */ >> + strb \rt, [\rb, #DR] /* -> UARTDR (Data Register) */ > > Isn't UARTDR potentially 12-bit? I am not sure if we should use strb or > strh here... UARTDR is 16-bit register where bits 15:12 are reserved and 11:8 are for indicating errors during READ. Here, we perform WRITE meaning the actual register width is 8 bytes. This is also indicated by the PL011 TRM which specifies width as "12/8" meaning 12 for READ and 8 for WRITE. ~Michal From xen-devel-bounces@lists.xenproject.org Thu Jun 15 06:47:31 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 15 Jun 2023 06:47:31 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549402.857907 (Exim 4.92) (envelope-from ) id 1q9glR-0002u3-4m; Thu, 15 Jun 2023 06:47:25 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549402.857907; Thu, 15 Jun 2023 06:47:25 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9glR-0002tw-1R; Thu, 15 Jun 2023 06:47:25 +0000 Received: by outflank-mailman (input) for mailman id 549402; Thu, 15 Jun 2023 06:47:24 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9glQ-0002tm-0e for xen-devel@lists.xenproject.org; Thu, 15 Jun 2023 06:47:24 +0000 Received: from EUR05-DB8-obe.outbound.protection.outlook.com (mail-db8eur05on20628.outbound.protection.outlook.com [2a01:111:f400:7e1a::628]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 7a6da0b2-0b48-11ee-8611-37d641c3527e; Thu, 15 Jun 2023 08:47:22 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by DB9PR04MB9704.eurprd04.prod.outlook.com (2603:10a6:10:303::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.38; Thu, 15 Jun 2023 06:47:19 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.039; Thu, 15 Jun 2023 06:47:18 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 7a6da0b2-0b48-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=ZMeORvvDrMuJB8+z92Bi5m0NyRkVJT+vJrpIkh3KHQ/F8hV+V3yZrbMIVirdNXpnCkicQvpXAT/jx0ERlxZBmEdg2acjMvyIJRGZVbW28DToClsFTXSPx6CfcVl5aiUKLycmSE9IWilPl2dvh6vCMJ8eNz0ymP/KTa36aFsh66rvK7xD2arprnTu2jxRUt9RREEZDKa2sNZxabbzQ2mHvoD3w9kwzOrz5h6Xhvr3j70vbYZne3VE5nQ1VuRL0Ej4GEm5CDPNbYGfOLppQ0dIKFN3og/aGlOGDlhD0aNzK83O4cqaZBQWgPrwf4vbI9ZDoBTSM2NVewziKYoz7Axw9A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=/G/gnCkroko4U8ZZM2HLq4J4bcmK8s6b1bZVZGd3O1o=; b=fzBMLhvM3WJ7yVYYUtu4iXE0YMQS3xviaDOktBIZOsXgjqLNshlWmbvNatMUIn9h9Q1+pwISp51BQrVcyl0i55Dy4Rk0nwUyWZuqdGV4y493IKwbzY0OaIk1mvfYyBe7xuODRc6DfQ/l3dl8Se4vjGKqlIRasAeggpCPiFj+hzqNBD1ENM9WVM3YxCaNMJC2jg+381RWRWJSDJcn9LvRrYaUQ/CwnB8/d+oAL80N8Bz1XpMwsqMzkPxPf3FLUxuqE9uJ+Owy+Pi9IH+6SnCUVlTB4TEspusDh/a0UNMqzY8fwoa2sjSnANA9auxlnZWj2Su6fSxQm9MnA/qiVrKfWg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=/G/gnCkroko4U8ZZM2HLq4J4bcmK8s6b1bZVZGd3O1o=; b=plWxE0b3upNFBnZAe5tQFRr6Qgt8727MWwGoKKd4moqUwRSA3uqAwMTHhPnDAc93QrxoyQOcunTiYi40KoMd4a/qweHSFqlHR2eXeVQ8PICILiFspGSSvuC4DbTPD1ylMWtPrdNrMt6ktOJZAMCp5ma3Gm3acwdXqJ2MluwdxOwQ6mvmqaw3X0IAcamTpQMlrSpmJ+X17DC4n3JQjh+U+2cUWShXvz/f7FQij/LrFbxTHcKj4yKeCyjFSQ0maeAxodK2Dq/BRkkG/uZNeLk8z4UxfX4lrvGNyJl6lPJHzUypLQ+1//xXI/qTLo9OsV3468cZxP70YCb6gTHWfTyf4w== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: Date: Thu, 15 Jun 2023 08:47:16 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v3 2/4] xen: Add files needed for minimal ppc64le build Content-Language: en-US To: Shawn Anastasio Cc: tpearson@raptorengineering.com, Andrew Cooper , George Dunlap , Julien Grall , Stefano Stabellini , Wei Liu , Shawn Anastasio , xen-devel@lists.xenproject.org References: From: Jan Beulich In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR3P281CA0095.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:a1::7) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|DB9PR04MB9704:EE_ X-MS-Office365-Filtering-Correlation-Id: db3ae136-609e-4ff0-11e6-08db6d6c5ce8 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: ZvxOLsNzXSZx9UHV5xbdIb4eOBxSjRZLNYCK/thFIdjUxXzaAvL7QrwlOOA+JaklveYF2JK0YWldNVAx9BlRYIbCSmMSkormltXn2rsaG6hwUD1I9S+nhAYvsw1XsXlMWmtvy5Gb/JaATgWdSZRN/7O5/2UxE/ahyYE09Bx6NlkMaXkUrRbyeo2IzHvx73mYRzwrcOZ47BSDUnOYMQVBiQhxBboccdaTXFsxrGwsoR/aZLrgkfzKHcWR2mCN9pl+2SZmS1cJxCbkmmBpPhV4et4jk42AtKhVpief4FeStBrO0+uSMQBYKShsouXNxYKuNGKVmFr5dN3rW6yTp170++beI1B9TLBp8ARjo3+yunHEdVg8qSXWtMHC5qJYubWfTXrLCgwHwhKxCAShwRnfUhrLqGeJ76b7PLUJMNrxcvWxOhsqpHrlVk0gMA0aIvoEwqJeq9DCY1ndvTM5yNfXQXGQHcV6r0B9FQ9V0BBdywu0K9/7xp8K3CMDRulSY2eSRTQoVMKA68aVIsTPAGMB47vgIxxODujSjPoCTVVyrn8D/+K2QjoP8ltMnKG+lmS6udnsRtq9/pfaiVHYgCiy2ROE9WukwPje452kR7Dxnvo4ctMr/FCCvAA7i3SPHEawL+Udgehb7EX49RyaeOIocA== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(346002)(39860400002)(366004)(396003)(136003)(376002)(451199021)(5660300002)(41300700001)(83380400001)(54906003)(6486002)(8936002)(8676002)(66946007)(86362001)(38100700002)(66556008)(316002)(478600001)(31696002)(4326008)(66476007)(6916009)(36756003)(2906002)(186003)(26005)(6506007)(2616005)(6512007)(53546011)(31686004)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?UDJ4YnZMYm40aCtFcm9rY1VRRXY5RlF0ZTh6cDRrNUkyNHZtWmRaREV5RElm?= =?utf-8?B?ZUdoT1M2eTUraU9tMlpDU0pYaVRQaWxFbktyYkkvVUVxZ0ZaSE45WGJVanhp?= =?utf-8?B?SXA2UmJBN1FRVXBrL3NKT21RS09iT1dsS3ZEalhaVjViNFplL1N5MG1iY0Vk?= =?utf-8?B?d3ZySmZJWWJmdjlnL0VaSWViZTJqa1FHM3YrOTFLcW4wQXpkVUxCMFZEakwr?= =?utf-8?B?YlVRODBLV1RSSmdJYnhrdEpDbTZNNXpBNUlLYmF2QW5IQnYxcXc2MVJYVnBJ?= =?utf-8?B?WThBU3QvNGpnVm9MVHlIWlhFYzN5MG81QjF1U1p5NFI5NTdPUzFNTHFlODBF?= =?utf-8?B?endIejRUYjF0YmVIb3FjajFVbXEwUTZWTjNqZnJYS2FxN0ZYZ0dnMVhObXBJ?= =?utf-8?B?OEs0U3cvTVhYU3kvVk9SeU80cGw1NHlqcG9pODVPOEpyZCsxQlRONkFWY1VR?= =?utf-8?B?UWZsR2tZM1NHbndtUDVBUDRTOFNHb21XYWFlZUJxRDVlR2tUNFZNUHlSK1NI?= =?utf-8?B?WVVFZi8vaERhSnpNbEIvTlZTV0RWR2ZiWGw3eXNtc2dDTjdLNWdFbmdudndo?= =?utf-8?B?eGxpb2xRWnA4ME4zcEtZL25kNG15L0dDYkl5bFh1dCtLejZURkhEbVhrd1I3?= =?utf-8?B?R2hsZndvdXBraUlkbmlCUzljMDAvd1RTSnA1azZNWUIxbkp2M1dQamlDSUt6?= =?utf-8?B?bXBnczY3bzlyYlZvSkExNDhLakROQzREcmZPeHhjZ0lzWXNKWi90clNTRGFJ?= =?utf-8?B?RDJXYVRiTTk0d2NDVFB0Wm9yaHlralo3ZGV2THN4UVl2TTdxQ3VjYUVLNTRv?= =?utf-8?B?eGMzRERCTmlQTXpLS3BxcUdqOGFRVW14WDdoTFJ4KzZXQ1MyS0czeVAybVZP?= =?utf-8?B?T1JsWnUvcWVaN1kveTNQaHFsbDJFeUZjQkx5QjBrZW5HOVc2TldxWlhiSHo0?= =?utf-8?B?eS9qMGh1YVU0QWVadG9wa25ON2ljOHdVOU12bExOWXJiVG9QOWd4QnV2RHV5?= =?utf-8?B?dXZkRTh5WmNQeHNEUjNYZWNBODlGcDRUN3VwTlh6YjNaMFhCQXdjRE1HTWJ6?= =?utf-8?B?Q3BKeFlzUWFuVXovZDhnVTJ3bHFBTXlKbVQrN0o5ZjhOcy82RGpLT1ZYVGxO?= =?utf-8?B?b2xaUnI5V2xoNjRGV2Q1R3ZUTTJHL1ZidUhwTHV6MGdlaE8xR3pNeFRiajN2?= =?utf-8?B?VTV3UnJ5R213Z1hwcFlra0JNZnN3aUZ2UUZKRXBrK2IwTDI1R00wbTJCVlBX?= =?utf-8?B?NGtsVHFaWTZPSEl3OXozWEZ5K01MRVlwRi9zMmRXUW5xN3dXMldwVWdJWkl2?= =?utf-8?B?bld4NWlpQi9STzI0eFR4bUJVVzFVWG1MSHRtdGpJdUp4M0FZcTZ1VTUwV3pz?= =?utf-8?B?UnloWXlSa2QwckYvL3p1bU1jRUlLTHBDWVppTEYwaWZuNUJUdXNlaFRMa0hx?= =?utf-8?B?N2RFTEthTmt5eEUvUk55azdtUWxnVWJsVENNM1p0SFhQRUM2QnFVcUx4bDN6?= =?utf-8?B?VVhRTm1JZmh6OGt2NnZGTGZlVjlOTTVLY1ZrdTg5NUs0aHlzU1NzM3d5aCtl?= =?utf-8?B?WG5iQzVyRXl4d29CcExTUGFKbXUrdW1VTjByaEVlRG0yeFpPNzVaR3dETlNh?= =?utf-8?B?ZHBBQ1Zvejl3TDFPbm8rM1hGYlJOcDk2WDNWWGF4aUpkYnJhbzkvcFovNmw2?= =?utf-8?B?am5MQjBUV1VWVC9TM2dIaEZ4a2x1UHV3aDZCWWJ5OWZuZVVyV0dwUDdxYzFh?= =?utf-8?B?aVNncFUzeUpSRUZMV094Yi9NZjVtcTVRVTRqZloxQjVhSlhwZTM4SU85dXFR?= =?utf-8?B?Qk85N2xoZlJHNzVIMEVVWHlXTW9QUmkzVlI1VTNFOTIzY0hXWHdKNzlBWExz?= =?utf-8?B?dUpnNDdlamlmZjNsbUwvVFVGV3NIUkdhNW5MZ3hER3VoWWFQOUZ0dE1HWnUy?= =?utf-8?B?ZStxK0lOZzd2Ymhtdm1WeFZaTFViNSs3alk3Yk1zakRGMVFjTU4xV2Vub1Zr?= =?utf-8?B?RjN5M05RcVRnc0pDNzgwemwzSmJwdFpNUW5DaWNIMmZqT2I4QUFvcGFlNHZY?= =?utf-8?B?WUpNUHBaZHdGaU5kMm9IaDNMR3Mvc0k0REhaOE5CL3djN0ZSQ3VkTmRXNnFx?= =?utf-8?Q?r1kjlJdlgQZLovuJWcNGq9yvb?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: db3ae136-609e-4ff0-11e6-08db6d6c5ce8 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Jun 2023 06:47:18.7163 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: EKXQvc4nX+pxSUSNqCYZCI+2EhXgPxR61WBwFtAAGflQehl9b/WsI2EFZuXdXv6MiUgKt2Rf6W46kmF3V/MOsg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR04MB9704 On 14.06.2023 18:36, Shawn Anastasio wrote: > On Wed Jun 14, 2023 at 10:51 AM CDT, Jan Beulich wrote: >> On 13.06.2023 16:50, Shawn Anastasio wrote: >>> + DECL_SECTION(.bss) { /* BSS */ >>> + __bss_start = .; >>> + *(.bss.stack_aligned) >>> + . = ALIGN(PAGE_SIZE); >>> + *(.bss.page_aligned) >> >> ... the one between the two .bss parts looks unmotivated. Within >> a section definition ALIGN() typically only makes sense when followed >> by a label definition, like ... > > Correct me if I'm wrong, but wouldn't the ALIGN here serve to ensure > that the subsequent '.bss.page_aligned' section has the correct alignment > that its name implies? Yes and no. Thing is that every contribution to .bss.page_aligned already needs to specify page alignment itself, or else it may break if any earlier contribution was page-aligned, but not a full page in size (which I think the compiler wouldn't allow to happen, but assembly code can result in such). Note how this very ALIGN() was recently dropped from RISC-V code, and my respective Arm side patch is also about to go in. Jan From xen-devel-bounces@lists.xenproject.org Thu Jun 15 06:52:27 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 15 Jun 2023 06:52:27 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549407.857917 (Exim 4.92) (envelope-from ) id 1q9gq7-0004MA-NI; Thu, 15 Jun 2023 06:52:15 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549407.857917; Thu, 15 Jun 2023 06:52:15 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9gq7-0004M3-Jd; Thu, 15 Jun 2023 06:52:15 +0000 Received: by outflank-mailman (input) for mailman id 549407; Thu, 15 Jun 2023 06:52:14 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9gq6-0004Lt-JS; Thu, 15 Jun 2023 06:52:14 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9gq6-0003OM-FT; Thu, 15 Jun 2023 06:52:14 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9gq6-0005Bk-1c; Thu, 15 Jun 2023 06:52:14 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q9gq6-0002l7-15; Thu, 15 Jun 2023 06:52:14 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=t5/lZVisuTOvJYIa6nKaiW4GWdu0PXc/QtEjtY48RvI=; b=VMezvhWVhSD6Ce8DDsa1P77aaI zvqcnPEnYuvEafUCZJ4Z2RAx44aSS1BIkGYZABvMQdUj7w+Dpmj/vTow+OZzhqQp4SJg2X3pT2v2Q kM9EaqIMnsK4pn4HBTP5J4Jh6ICEbI9i9IkO3O6U+AjAhpKk4o+erYZXPcWqqGKc7MLs=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable test] 181431: tolerable FAIL - PUSHED X-Osstest-Failures: xen-unstable:test-amd64-amd64-libvirt-vhd:guest-start/debian.repeat:fail:heisenbug xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qcow2:guest-start/debian.repeat:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking X-Osstest-Versions-This: xen=87c621d0ef75e5f95987d66811ed1fd7129208d1 X-Osstest-Versions-That: xen=2f69ef96801f0d2b9646abf6396e60f99c56e3a0 From: osstest service owner Date: Thu, 15 Jun 2023 06:52:14 +0000 flight 181431 xen-unstable real [real] flight 181439 xen-unstable real-retest [real] http://logs.test-lab.xenproject.org/osstest/logs/181431/ http://logs.test-lab.xenproject.org/osstest/logs/181439/ Failures :-/ but no regressions. Tests which are failing intermittently (not blocking): test-amd64-amd64-libvirt-vhd 19 guest-start/debian.repeat fail pass in 181439-retest Tests which did not succeed, but are not blocking: test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 181423 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop fail like 181423 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 181423 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 181423 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop fail like 181423 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail like 181423 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop fail like 181423 test-amd64-amd64-xl-qcow2 21 guest-start/debian.repeat fail like 181423 test-armhf-armhf-libvirt 16 saverestore-support-check fail like 181423 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 181423 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail like 181423 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop fail like 181423 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 181423 test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-i386-xl-pvshim 14 guest-start fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-i386-libvirt 15 migrate-support-check fail never pass test-amd64-i386-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-i386-libvirt-raw 14 migrate-support-check fail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-armhf-armhf-xl-multivcpu 15 migrate-support-check fail never pass test-armhf-armhf-xl-multivcpu 16 saverestore-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass test-armhf-armhf-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 15 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 16 saverestore-support-check fail never pass test-armhf-armhf-xl-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 15 saverestore-support-check fail never pass test-armhf-armhf-xl-arndale 15 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 16 saverestore-support-check fail never pass test-armhf-armhf-xl 15 migrate-support-check fail never pass test-armhf-armhf-xl 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 16 saverestore-support-check fail never pass test-armhf-armhf-xl-credit2 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit2 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail never pass version targeted for testing: xen 87c621d0ef75e5f95987d66811ed1fd7129208d1 baseline version: xen 2f69ef96801f0d2b9646abf6396e60f99c56e3a0 Last test of basis 181423 2023-06-14 10:29:58 Z 0 days Testing same since 181431 2023-06-14 17:41:35 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Anthony PERARD Jan Beulich jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64-xtf pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-prev pass build-i386-prev pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-xtf-amd64-amd64-1 pass test-xtf-amd64-amd64-2 pass test-xtf-amd64-amd64-3 pass test-xtf-amd64-amd64-4 pass test-xtf-amd64-amd64-5 pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl pass test-amd64-i386-xl pass test-amd64-coresched-i386-xl pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-i386-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-i386-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-i386-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-i386-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-i386-qemut-rhel6hvm-amd pass test-amd64-i386-qemuu-rhel6hvm-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-i386-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-freebsd10-amd64 pass test-amd64-amd64-qemuu-freebsd11-amd64 pass test-amd64-amd64-qemuu-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-i386-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-i386-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-i386-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-amd64-i386-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale pass test-amd64-amd64-examine-bios pass test-amd64-i386-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 pass test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 pass test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine pass test-amd64-i386-examine pass test-amd64-i386-freebsd10-i386 pass test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-i386-qemut-rhel6hvm-intel pass test-amd64-i386-qemuu-rhel6hvm-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt pass test-amd64-i386-libvirt pass test-amd64-amd64-livepatch pass test-amd64-i386-livepatch pass test-amd64-amd64-migrupgrade pass test-amd64-i386-migrupgrade pass test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu pass test-amd64-amd64-pair pass test-amd64-i386-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-i386-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-i386-xl-pvshim fail test-amd64-amd64-pygrub pass test-armhf-armhf-libvirt-qcow2 pass test-amd64-amd64-xl-qcow2 fail test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw pass test-amd64-i386-libvirt-raw pass test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds pass test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-amd64-i386-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-i386-examine-uefi pass test-amd64-amd64-libvirt-vhd fail test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd pass test-amd64-i386-xl-vhd pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Pushing revision : To xenbits.xen.org:/home/xen/git/xen.git 2f69ef9680..87c621d0ef 87c621d0ef75e5f95987d66811ed1fd7129208d1 -> master From xen-devel-bounces@lists.xenproject.org Thu Jun 15 07:14:30 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 15 Jun 2023 07:14:30 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549423.857953 (Exim 4.92) (envelope-from ) id 1q9hBR-0007DK-TS; Thu, 15 Jun 2023 07:14:17 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549423.857953; Thu, 15 Jun 2023 07:14:17 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9hBR-0007DD-Op; Thu, 15 Jun 2023 07:14:17 +0000 Received: by outflank-mailman (input) for mailman id 549423; Thu, 15 Jun 2023 07:14:16 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9hBQ-0007D7-9X for xen-devel@lists.xenproject.org; Thu, 15 Jun 2023 07:14:16 +0000 Received: from NAM11-BN8-obe.outbound.protection.outlook.com (mail-bn8nam11on20600.outbound.protection.outlook.com [2a01:111:f400:7eae::600]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 3ad7cbb3-0b4c-11ee-8611-37d641c3527e; Thu, 15 Jun 2023 09:14:13 +0200 (CEST) Received: from BL1PR12MB5849.namprd12.prod.outlook.com (2603:10b6:208:384::18) by CY5PR12MB6179.namprd12.prod.outlook.com (2603:10b6:930:24::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.37; Thu, 15 Jun 2023 07:14:10 +0000 Received: from BL1PR12MB5849.namprd12.prod.outlook.com ([fe80::4ef5:2244:743b:9989]) by BL1PR12MB5849.namprd12.prod.outlook.com ([fe80::4ef5:2244:743b:9989%4]) with mapi id 15.20.6477.037; Thu, 15 Jun 2023 07:14:09 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 3ad7cbb3-0b4c-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=YMeFgZMHUaEQrgLolzA7Yjr+19q0/TLjFgfTObE3NIQ4yTIGKSgQ1bVuGaf7ZU00fY5tvhOCVTB5Tq/VTzT87wtRaLNMFg/tyCKFsQ6PgbNT+4p8uG+LdbX+FtUbpr2Bu6J/M8FJM0CH8W+OSuTx26DFopXYci1PJbHdBtTRhA83WZQOfRFdJRxJxMJslTKYLRP6FV8rFzFPlDprzWMkDRp3a7N17bdPaIMitR8Lv3+zNDCVnUwTcZJZli/Gn3lo44Wvaf70rLQyYLMb9Cs+M9mL5p5D8UUuhxC8M59YU1tpA3HfPo77IOm7OURVxIE9UYc57JNPrjCxYNxJ/+z0Ng== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=uuslI52s5eH4fyaTfs+m+y/Xq4yK5BOPAy2LGibZ8yU=; b=BGYQILpWYq8e9A6x8/p3ACBZRAi9P50Z3TLWmgXP2jMCL+DkGgjQvhnq7J4z+gSGOzLvHr04rE3Wtpy+X1pTSvyjETUbW5vkq28n3C9qfE64ho7gbfjkIHBFDA0ThO76X+yR/mPM2CoYAt9KGAhpeXL2rKYBsOGUdmfZIYMWfvEGOpZ5NhPiF80KycUvV0l3lBk3PMUKVJd1xRBiBPX0TmtvmFP89o+oQ3V0CwKu2BEWS2BUPUt9U9DsH5F98Vk/fuS/m50reGAlyXt9+AX52oTARFrV07abLQOHDQgfSH/+aYLRvMipQEDefrZh+HhBzAMDzJiIWdP5qFcx9HiNWg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass header.d=amd.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=uuslI52s5eH4fyaTfs+m+y/Xq4yK5BOPAy2LGibZ8yU=; b=C69qZLgh0q/lBHQJK2wiwy3afsYHxxoMtvGDBesdToJcO5eqfOmfHRqAVcxeMfQ1BKJYxn8XgUSTc90Z0Yglg3SOQfle3l/MwQ1IlC66oeSn8DzUj4IApWZd1UD4C3X5QCoAwJO4RjE48aw6wvkWqWJvovDZuySaneFXs1sEo0E= From: "Chen, Jiqian" To: =?utf-8?B?TWFyYy1BbmRyw6kgTHVyZWF1?= , Gerd Hoffmann , Damien Hedde CC: "Michael S . Tsirkin" , Stefano Stabellini , Anthony PERARD , =?utf-8?B?Um9nZXIgUGF1IE1vbm7DqQ==?= , Jan Beulich , Antonio Caggiano , "Dr . David Alan Gilbert" , Robert Beckett , "qemu-devel@nongnu.org" , "xen-devel@lists.xenproject.org" , "Deucher, Alexander" , "Koenig, Christian" , "Hildebrand, Stewart" , Xenia Ragiadakou , "Huang, Honglei1" , "Zhang, Julia" , "Huang, Ray" , "Chen, Jiqian" Subject: Re: [QEMU PATCH 1/1] virtgpu: do not destroy resources when guest suspend Thread-Topic: [QEMU PATCH 1/1] virtgpu: do not destroy resources when guest suspend Thread-Index: AQHZmbUjDQZRLEUzRUmYVwd7de4D46+HI2eAgATfQgA= Date: Thu, 15 Jun 2023 07:14:09 +0000 Message-ID: References: <20230608025655.1674357-1-Jiqian.Chen@amd.com> <20230608025655.1674357-2-Jiqian.Chen@amd.com> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ms-exchange-imapappendstamp: BL1PR12MB5206.namprd12.prod.outlook.com (15.20.6500.009) authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=amd.com; x-ms-exchange-messagesentrepresentingtype: 1 x-ms-publictraffictype: Email x-ms-traffictypediagnostic: BL1PR12MB5849:EE_|CY5PR12MB6179:EE_ x-ms-office365-filtering-correlation-id: 3d876ab2-6b13-4ab6-1663-08db6d701d38 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: ZyuM/fX/bQjCO0DKhEevYANdNI6r5Vz/NfARxnH7ItIwKsGNyz444Z+6yJJ6YP2mD4/Dl319JlWLEL6wr8X8c5grA6Mj7HegzMSU3lDesJkdTMGl4ejwBKICvmWlIdIUtPKl3GhEsT45U6S/oNR5xgxRcfwyOO+NSCGvn2KPOnGT8UtaHFzXAZ9UrH1YctLgxkQzWIhplvMa19v882/be2XTExSu/tSrURHS3nGW9g4KM69ZIclzEBhig8ZSh1X66Ksx+AMeQpLpI3drSMuErEgEZuQ+uOm2DEGl53Q9B2QS3GlbMbapDaivK9eoTKFTFMUC6PecxVjL9nIVyxisgtBvQH05W0m6wXAFQn4DRgzJem3G4fgMFgFpc+5d++EHUQnnzy/CRoMrrCux7nD8dzBRw74KpZjJ2mzGl7dZSTMeC+QafQtWpiCd/8dfJlGJsaZZJ6gO2YFxx/WIJfKUBW7dKIlBsZ91BkVSdcNuWc2aMFoCJVvTUfa3/CN1dLlynEN5vItjN4jiO09rt9OF4VUCnKCVHC2xootMpr6X4KE/jQMdRsVXeqmmn41HU0RxsBzBwek4IuQHJcq2ew2Ielb/poDkXsOzk5HforymZ6bMpBZsdCJYJwu81jLOTEFu x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BL1PR12MB5849.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(366004)(39860400002)(346002)(376002)(396003)(136003)(451199021)(5660300002)(83380400001)(52536014)(186003)(55016003)(6506007)(2906002)(15650500001)(7416002)(41300700001)(8936002)(9686003)(7696005)(26005)(8676002)(316002)(122000001)(110136005)(54906003)(38070700005)(33656002)(53546011)(478600001)(4326008)(76116006)(66556008)(66476007)(66946007)(66446008)(64756008)(38100700002)(71200400001);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?SytIcTkybStOcDJFVEdJRXlVNHM0RXYxVDVsRFZDb3JuR2FrWEJQM2hoaE50?= =?utf-8?B?Nkp0bmJYZ3p2UFhrSUJBamxwcFhwcmljQVZib0g1VEZEc1g1TXJ0Qm9MYW8v?= =?utf-8?B?TzQ0eDBsRWdtRjNlSlpQQVB0TmRCYm5kY3lvWkIxVDRwSy94bUprc21FdlhP?= =?utf-8?B?WDI0ampOZk02b25Bb2FYU2xYSDhWcFU3cFlPTzJvYVREald2akQ1bVIvalBG?= =?utf-8?B?eEQ4d3lJbnFEUzRFRk5yT1VZeTVrcjJXTHVSNWR2bnZtaWZkMGZJaGREcEF4?= =?utf-8?B?aStqdXRERFcwdmNaT1E0RE5iRitaaVkwNElTNFhhVDBSdWVCeGxISC9hQk1F?= =?utf-8?B?U1dkQ2hOa0doT05kbGtuaHJyZHZYUGxuVTVRNlJsT1dBQmlWUnF0TkNteUZ5?= =?utf-8?B?VDlhUmZXS2tEdDQ5R0FnZG1EdWpCR2V1bnNiNVpGcGl1Wnhmdk0rUFJRbTFT?= =?utf-8?B?cG11NkI0Z0tOSlhLclhQNGc3OE5SNEpZSHBSanBjTHR2RHZNQ1dHbjhwekcz?= =?utf-8?B?VmE1aDlmZTdsWDUza3FRQmx4VGZYbEUzQnBWWXZLZ1pZbHFoa21HZlQ3QnIr?= =?utf-8?B?QkhEWVVEWjY3V21ZSDZ2WGIralBkMFRKMjFiL3FlL1BnU2RnK1VQOEZlTEVH?= =?utf-8?B?dkJheDlrOU9XR3drRWRLOXNWTWlmb25Cd3dma0RwYWVncjNIZlVHbm1BVE94?= =?utf-8?B?cmx3R1hycG5SZGFxdjV3bzlBRUZEWmxhTXVFSklEWGZiNVB0OVlIalRDdDRH?= =?utf-8?B?YzVHZWtJSmlRcm0yOG1TWXUzWStWS0dqOWpWQzViWEV2dndqaW55Wm5BSHJn?= =?utf-8?B?dVc3U2x4QTJEOWJtU1I1TUc2UTdLZnJ6M09sNDFhcjk1dC9tUE1OTDJXQlds?= =?utf-8?B?TkgyQW82Z1lLaHZZTFg4UHFST3AwOWZEUmJFQjFjekd5elRxODlVUFozRXU3?= =?utf-8?B?T1NHd241bTE5TFhLdlFUQU5OYVFNNU5OUUVJbWMvdHNVMlNhdERCK1F6N0p2?= =?utf-8?B?dEMzTGxKWUNidGVNdWVmdmFvalpjbyt5V00rZkU5R3hucXRJQjlLVElnV1hr?= =?utf-8?B?WlkxUy95Y3g2cVRuNDQzeGpzcDdRczJNWUNJSUw2bVJSL1Y1RmgzOHdRdEtF?= =?utf-8?B?VFFWa1BucXZlRHcxd3ZRZ2VlcDU2MlNWVU02MHhCN1phREMxTkxxMU9waXlB?= =?utf-8?B?Z2QvTU1CTGhaSmF1b1k3ZkprbEcxK0pvLzQzMnNPT0F0K1BvQ0dOdC9JdFdI?= =?utf-8?B?eVd3aHdHODJPK1dmQi9DU0w0QktpbHJUZmZsVXR3TFI3eUdvc2FyT1BheE1l?= =?utf-8?B?UTIxOHYwUjdaYzdrTktKUHkxY0JYbW83UlN6UGgxbXpoYjJldm5HOW1XMk9m?= =?utf-8?B?NXEwZytsYkU3THZqM2hweVN6b1h3QjhqZVpDNkI4YlhNaVNtMnVOckhkVlJF?= =?utf-8?B?ZE1Zd2lRSi9SZER0bTY5a0NFY2NGckkxajFEamg3WUZrWVNFZXhINmd2VHVt?= =?utf-8?B?My92ajJMenp1TlBxZmpibmVZOW45VkxiamFIeWxCV2xLYTJUbFRIbWV3MDJX?= =?utf-8?B?aENmUUdqZnAwVXZMaVhCTlZZdUdaaWdKUUxBTXRWeElFZk5mYmg3bGVEd3lj?= =?utf-8?B?R3llSFZNeFZLN1gvMHh6RG9zK1BiejFhMHY1R3lwQWVLd2RsZkZMMlBhN0Nv?= =?utf-8?B?V2dWYmhpTmxVZ0p6VnFyVlRpUGN0T016cEhGa1N4WlVOMVFCY2NvRWwyWUpE?= =?utf-8?B?NllBZkhaMEtWaC9UVUlCT2NZVnk4MmxDaGw5OTRaTDA0aml5ZDVRbVkyd3dZ?= =?utf-8?B?Ly9qRzRSaFE2TEZGN0EwMXA3N1JleFI5cXhjSGpZMVJ5NnZKMGliOXpXMHJm?= =?utf-8?B?c3NtSkVWSktUTUJzQjA1elcrRXMrdTc4aG5WdEJMK3FrK29MSjB0Q0ZmZXFl?= =?utf-8?B?VnRnM3dnazNva09lWklGVmM1VExFVThNeS9aZjhkMkxMaUQyNkJkTWthU3lU?= =?utf-8?B?aElkZ2lXblg4a1U0dVRYdE5CVzJTN09mZ1VqV0drVFpNRjI0ajZGcDV0NzVs?= =?utf-8?B?dldEL3MzTVhNZEh0eWdLSnpwaXZ1U1JEWWljL3cxcjNtbkw3eG5MdUh3MThN?= =?utf-8?Q?Wkpk=3D?= Content-Type: text/plain; charset="utf-8" Content-ID: <57531EDF700BD94491D46AEFBCF5C19F@amdcloud.onmicrosoft.com> Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: BL1PR12MB5849.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 3d876ab2-6b13-4ab6-1663-08db6d701d38 X-MS-Exchange-CrossTenant-originalarrivaltime: 15 Jun 2023 07:14:09.7017 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: 4CHHU/ScT9mcSDUfVTsPvIui3wKyEFcfnL4LW+sESMZn+BnXkU/6tNRlEHfO1BkdrclhPG+vJHvD5kCWTf7GGA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY5PR12MB6179 SGkgTWFyYy1BbmRyw6kgTHVyZWF1DQoNCk9uIDIwMjMvNi8xMiAyMDo0MiwgTWFyYy1BbmRyw6kg THVyZWF1IHdyb3RlOg0KPiBIaQ0KPiANCj4gT24gVGh1LCBKdW4gOCwgMjAyMyBhdCA2OjI24oCv QU0gSmlxaWFuIENoZW4gPEppcWlhbi5DaGVuQGFtZC5jb20gPG1haWx0bzpKaXFpYW4uQ2hlbkBh bWQuY29tPj4gd3JvdGU6DQo+IA0KPiAgICAgQWZ0ZXIgc3VzcGVuZGluZyBhbmQgcmVzdW1pbmcg Z3Vlc3QgVk0sIHlvdSB3aWxsIGdldA0KPiAgICAgYSBibGFjayBzY3JlZW4sIGFuZCB0aGUgZGlz cGxheSBjYW4ndCBjb21lIGJhY2suDQo+IA0KPiAgICAgVGhpcyBpcyBiZWNhdXNlIHdoZW4gZ3Vl c3QgZGlkIHN1c3BlbmRpbmcsIGl0IGNhbGxlZA0KPiAgICAgaW50byBxZW11IHRvIGNhbGwgdmly dGlvX2dwdV9nbF9yZXNldC4gSW4gZnVuY3Rpb24NCj4gICAgIHZpcnRpb19ncHVfZ2xfcmVzZXQs IGl0IGRlc3Ryb3llZCByZXNvdXJjZXMgYW5kIHJlc2V0DQo+ICAgICByZW5kZXJlciwgd2hpY2gg d2VyZSB1c2VkIGZvciBkaXNwbGF5LiBBcyBhIHJlc3VsdCwNCj4gICAgIGd1ZXN0J3Mgc2NyZWVu IGNhbid0IGNvbWUgYmFjayB0byB0aGUgdGltZSB3aGVuIGl0IHdhcw0KPiAgICAgc3VzcGVuZGVk IGFuZCBvbmx5IHNob3dlZCBibGFjay4NCj4gDQo+ICAgICBTbywgdGhpcyBwYXRjaCBhZGRzIGEg bmV3IGN0cmwgbWVzc2FnZQ0KPiAgICAgVklSVElPX0dQVV9DTURfU1RBVFVTX0ZSRUVaSU5HIHRv IGdldCBub3RpZmljYXRpb24gZnJvbQ0KPiAgICAgZ3Vlc3QuIElmIGd1ZXN0IGlzIGR1cmluZyBz dXNwZW5kaW5nLCBpdCBzZXRzIGZyZWV6aW5nDQo+ICAgICBzdGF0dXMgb2YgdmlydGdwdSB0byB0 cnVlLCB0aGlzIHdpbGwgcHJldmVudCBkZXN0cm95aW5nDQo+ICAgICByZXNvdXJjZXMgYW5kIHJl c2V0dGluZyByZW5kZXJlciB3aGVuIGd1ZXN0IGNhbGxzIGludG8NCj4gICAgIHZpcnRpb19ncHVf Z2xfcmVzZXQuIElmIGd1ZXN0IGlzIGR1cmluZyByZXN1bWluZywgaXQgc2V0cw0KPiAgICAgZnJl ZXppbmcgdG8gZmFsc2UsIGFuZCB0aGVuIHZpcnRpb19ncHVfZ2xfcmVzZXQgd2lsbCBrZWVwDQo+ ICAgICBpdHMgb3JpZ2luIGFjdGlvbnMgYW5kIGhhcyBubyBvdGhlciBpbXBhY3Rpb24uDQo+IA0K PiAgICAgU2lnbmVkLW9mZi1ieTogSmlxaWFuIENoZW4gPEppcWlhbi5DaGVuQGFtZC5jb20gPG1h aWx0bzpKaXFpYW4uQ2hlbkBhbWQuY29tPj4NCj4gICAgIC0tLQ0KPiAgICAgwqBody9kaXNwbGF5 L3ZpcnRpby1ncHUtZ2wuY8KgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIHzCoCA5ICsrKysrKy0N Cj4gICAgIMKgaHcvZGlzcGxheS92aXJ0aW8tZ3B1LXZpcmdsLmPCoCDCoCDCoCDCoCDCoCDCoCDC oCDCoHzCoCAzICsrKw0KPiAgICAgwqBody9kaXNwbGF5L3ZpcnRpby1ncHUuY8KgIMKgIMKgIMKg IMKgIMKgIMKgIMKgIMKgIMKgIMKgfCAyNiArKysrKysrKysrKysrKysrKysrLS0NCj4gICAgIMKg aW5jbHVkZS9ody92aXJ0aW8vdmlydGlvLWdwdS5owqAgwqAgwqAgwqAgwqAgwqAgwqAgfMKgIDMg KysrDQo+ICAgICDCoGluY2x1ZGUvc3RhbmRhcmQtaGVhZGVycy9saW51eC92aXJ0aW9fZ3B1Lmgg fMKgIDkgKysrKysrKw0KPiAgICAgwqA1IGZpbGVzIGNoYW5nZWQsIDQ3IGluc2VydGlvbnMoKyks IDMgZGVsZXRpb25zKC0pDQo+IA0KPiAgICAgZGlmZiAtLWdpdCBhL2h3L2Rpc3BsYXkvdmlydGlv LWdwdS1nbC5jIGIvaHcvZGlzcGxheS92aXJ0aW8tZ3B1LWdsLmMNCj4gICAgIGluZGV4IGUwNmJl NjBkZmIuLmUxMWFkMjMzZWIgMTAwNjQ0DQo+ICAgICAtLS0gYS9ody9kaXNwbGF5L3ZpcnRpby1n cHUtZ2wuYw0KPiAgICAgKysrIGIvaHcvZGlzcGxheS92aXJ0aW8tZ3B1LWdsLmMNCj4gICAgIEBA IC0xMDAsNyArMTAwLDE0IEBAIHN0YXRpYyB2b2lkIHZpcnRpb19ncHVfZ2xfcmVzZXQoVmlydElP RGV2aWNlICp2ZGV2KQ0KPiAgICAgwqAgwqAgwqAgKi8NCj4gICAgIMKgIMKgIMKgaWYgKGdsLT5y ZW5kZXJlcl9pbml0ZWQgJiYgIWdsLT5yZW5kZXJlcl9yZXNldCkgew0KPiAgICAgwqAgwqAgwqAg wqAgwqB2aXJ0aW9fZ3B1X3ZpcmdsX3Jlc2V0X3NjYW5vdXQoZyk7DQo+ICAgICAtwqAgwqAgwqAg wqAgZ2wtPnJlbmRlcmVyX3Jlc2V0ID0gdHJ1ZTsNCj4gICAgICvCoCDCoCDCoCDCoCAvKg0KPiAg ICAgK8KgIMKgIMKgIMKgIMKgKiBJZiBndWVzdCBpcyBzdXNwZW5kaW5nLCB3ZSBzaG91bGRuJ3Qg cmVzZXQgcmVuZGVyZXIsDQo+ICAgICArwqAgwqAgwqAgwqAgwqAqIG90aGVyd2lzZSwgdGhlIGRp c3BsYXkgY2FuJ3QgY29tZSBiYWNrIHRvIHRoZSB0aW1lIHdoZW4NCj4gICAgICvCoCDCoCDCoCDC oCDCoCogaXQgd2FzIHN1c3BlbmRlZCBhZnRlciBndWVzdCByZXN1bWVkLg0KPiAgICAgK8KgIMKg IMKgIMKgIMKgKi8NCj4gICAgICvCoCDCoCDCoCDCoCBpZiAoIWctPmZyZWV6aW5nKSB7DQo+ICAg ICArwqAgwqAgwqAgwqAgwqAgwqAgZ2wtPnJlbmRlcmVyX3Jlc2V0ID0gdHJ1ZTsNCj4gICAgICvC oCDCoCDCoCDCoCB9DQo+ICAgICDCoCDCoCDCoH0NCj4gICAgIMKgfQ0KPiANCj4gICAgIGRpZmYg LS1naXQgYS9ody9kaXNwbGF5L3ZpcnRpby1ncHUtdmlyZ2wuYyBiL2h3L2Rpc3BsYXkvdmlydGlv LWdwdS12aXJnbC5jDQo+ICAgICBpbmRleCA3M2NiOTJjOGQ1Li4xODNlYzkyZDUzIDEwMDY0NA0K PiAgICAgLS0tIGEvaHcvZGlzcGxheS92aXJ0aW8tZ3B1LXZpcmdsLmMNCj4gICAgICsrKyBiL2h3 L2Rpc3BsYXkvdmlydGlvLWdwdS12aXJnbC5jDQo+ICAgICBAQCAtNDY0LDYgKzQ2NCw5IEBAIHZv aWQgdmlydGlvX2dwdV92aXJnbF9wcm9jZXNzX2NtZChWaXJ0SU9HUFUgKmcsDQo+ICAgICDCoCDC oCDCoGNhc2UgVklSVElPX0dQVV9DTURfR0VUX0VESUQ6DQo+ICAgICDCoCDCoCDCoCDCoCDCoHZp cnRpb19ncHVfZ2V0X2VkaWQoZywgY21kKTsNCj4gICAgIMKgIMKgIMKgIMKgIMKgYnJlYWs7DQo+ ICAgICArwqAgwqAgY2FzZSBWSVJUSU9fR1BVX0NNRF9TVEFUVVNfRlJFRVpJTkc6DQo+ICAgICAr wqAgwqAgwqAgwqAgdmlydGlvX2dwdV9jbWRfc3RhdHVzX2ZyZWV6aW5nKGcsIGNtZCk7DQo+ICAg ICArwqAgwqAgwqAgwqAgYnJlYWs7DQo+ICAgICDCoCDCoCDCoGRlZmF1bHQ6DQo+ICAgICDCoCDC oCDCoCDCoCDCoGNtZC0+ZXJyb3IgPSBWSVJUSU9fR1BVX1JFU1BfRVJSX1VOU1BFQzsNCj4gICAg IMKgIMKgIMKgIMKgIMKgYnJlYWs7DQo+ICAgICBkaWZmIC0tZ2l0IGEvaHcvZGlzcGxheS92aXJ0 aW8tZ3B1LmMgYi9ody9kaXNwbGF5L3ZpcnRpby1ncHUuYw0KPiAgICAgaW5kZXggNWUxNWM3OWI5 NC4uOGYyMzVkNzg0OCAxMDA2NDQNCj4gICAgIC0tLSBhL2h3L2Rpc3BsYXkvdmlydGlvLWdwdS5j DQo+ICAgICArKysgYi9ody9kaXNwbGF5L3ZpcnRpby1ncHUuYw0KPiAgICAgQEAgLTM3Myw2ICsz NzMsMTYgQEAgc3RhdGljIHZvaWQgdmlydGlvX2dwdV9yZXNvdXJjZV9jcmVhdGVfYmxvYihWaXJ0 SU9HUFUgKmcsDQo+ICAgICDCoCDCoCDCoFFUQUlMUV9JTlNFUlRfSEVBRCgmZy0+cmVzbGlzdCwg cmVzLCBuZXh0KTsNCj4gICAgIMKgfQ0KPiANCj4gICAgICt2b2lkIHZpcnRpb19ncHVfY21kX3N0 YXR1c19mcmVlemluZyhWaXJ0SU9HUFUgKmcsDQo+ICAgICArwqAgwqAgwqAgwqAgwqAgwqAgwqAg wqAgwqAgwqAgwqAgwqAgwqBzdHJ1Y3QgdmlydGlvX2dwdV9jdHJsX2NvbW1hbmQgKmNtZCkNCj4g ICAgICt7DQo+ICAgICArwqAgwqAgc3RydWN0IHZpcnRpb19ncHVfc3RhdHVzX2ZyZWV6aW5nIHNm Ow0KPiAgICAgKw0KPiAgICAgK8KgIMKgIFZJUlRJT19HUFVfRklMTF9DTUQoc2YpOw0KPiAgICAg K8KgIMKgIHZpcnRpb19ncHVfYnN3YXBfMzIoJnNmLCBzaXplb2Yoc2YpKTsNCj4gICAgICvCoCDC oCBnLT5mcmVlemluZyA9IHNmLmZyZWV6aW5nOw0KPiAgICAgK30NCj4gICAgICsNCj4gICAgIMKg c3RhdGljIHZvaWQgdmlydGlvX2dwdV9kaXNhYmxlX3NjYW5vdXQoVmlydElPR1BVICpnLCBpbnQg c2Nhbm91dF9pZCkNCj4gICAgIMKgew0KPiAgICAgwqAgwqAgwqBzdHJ1Y3QgdmlydGlvX2dwdV9z Y2Fub3V0ICpzY2Fub3V0ID0gJmctPnBhcmVudF9vYmouc2Nhbm91dFtzY2Fub3V0X2lkXTsNCj4g ICAgIEBAIC05ODYsNiArOTk2LDkgQEAgdm9pZCB2aXJ0aW9fZ3B1X3NpbXBsZV9wcm9jZXNzX2Nt ZChWaXJ0SU9HUFUgKmcsDQo+ICAgICDCoCDCoCDCoGNhc2UgVklSVElPX0dQVV9DTURfUkVTT1VS Q0VfREVUQUNIX0JBQ0tJTkc6DQo+ICAgICDCoCDCoCDCoCDCoCDCoHZpcnRpb19ncHVfcmVzb3Vy Y2VfZGV0YWNoX2JhY2tpbmcoZywgY21kKTsNCj4gICAgIMKgIMKgIMKgIMKgIMKgYnJlYWs7DQo+ ICAgICArwqAgwqAgY2FzZSBWSVJUSU9fR1BVX0NNRF9TVEFUVVNfRlJFRVpJTkc6DQo+ICAgICAr wqAgwqAgwqAgwqAgdmlydGlvX2dwdV9jbWRfc3RhdHVzX2ZyZWV6aW5nKGcsIGNtZCk7DQo+ICAg ICArwqAgwqAgwqAgwqAgYnJlYWs7DQo+ICAgICDCoCDCoCDCoGRlZmF1bHQ6DQo+ICAgICDCoCDC oCDCoCDCoCDCoGNtZC0+ZXJyb3IgPSBWSVJUSU9fR1BVX1JFU1BfRVJSX1VOU1BFQzsNCj4gICAg IMKgIMKgIMKgIMKgIMKgYnJlYWs7DQo+ICAgICBAQCAtMTM0NCw2ICsxMzU3LDggQEAgdm9pZCB2 aXJ0aW9fZ3B1X2RldmljZV9yZWFsaXplKERldmljZVN0YXRlICpxZGV2LCBFcnJvciAqKmVycnAp DQo+ICAgICDCoCDCoCDCoFFUQUlMUV9JTklUKCZnLT5yZXNsaXN0KTsNCj4gICAgIMKgIMKgIMKg UVRBSUxRX0lOSVQoJmctPmNtZHEpOw0KPiAgICAgwqAgwqAgwqBRVEFJTFFfSU5JVCgmZy0+ZmVu Y2VxKTsNCj4gICAgICsNCj4gICAgICvCoCDCoCBnLT5mcmVlemluZyA9IGZhbHNlOw0KPiAgICAg wqB9DQo+IA0KPiAgICAgwqB2b2lkIHZpcnRpb19ncHVfcmVzZXQoVmlydElPRGV2aWNlICp2ZGV2 KQ0KPiAgICAgQEAgLTEzNTIsOCArMTM2NywxNSBAQCB2b2lkIHZpcnRpb19ncHVfcmVzZXQoVmly dElPRGV2aWNlICp2ZGV2KQ0KPiAgICAgwqAgwqAgwqBzdHJ1Y3QgdmlydGlvX2dwdV9zaW1wbGVf cmVzb3VyY2UgKnJlcywgKnRtcDsNCj4gICAgIMKgIMKgIMKgc3RydWN0IHZpcnRpb19ncHVfY3Ry bF9jb21tYW5kICpjbWQ7DQo+IA0KPiAgICAgLcKgIMKgIFFUQUlMUV9GT1JFQUNIX1NBRkUocmVz LCAmZy0+cmVzbGlzdCwgbmV4dCwgdG1wKSB7DQo+ICAgICAtwqAgwqAgwqAgwqAgdmlydGlvX2dw dV9yZXNvdXJjZV9kZXN0cm95KGcsIHJlcyk7DQo+ICAgICArwqAgwqAgLyoNCj4gICAgICvCoCDC oCDCoCogSWYgZ3Vlc3QgaXMgc3VzcGVuZGluZywgd2Ugc2hvdWxkbid0IGRlc3Ryb3kgcmVzb3Vy Y2VzLA0KPiAgICAgK8KgIMKgIMKgKiBvdGhlcndpc2UsIHRoZSBkaXNwbGF5IGNhbid0IGNvbWUg YmFjayB0byB0aGUgdGltZSB3aGVuDQo+ICAgICArwqAgwqAgwqAqIGl0IHdhcyBzdXNwZW5kZWQg YWZ0ZXIgZ3Vlc3QgcmVzdW1lZC4NCj4gICAgICvCoCDCoCDCoCovDQo+ICAgICArwqAgwqAgaWYg KCFnLT5mcmVlemluZykgew0KPiAgICAgK8KgIMKgIMKgIMKgIFFUQUlMUV9GT1JFQUNIX1NBRkUo cmVzLCAmZy0+cmVzbGlzdCwgbmV4dCwgdG1wKSB7DQo+ICAgICArwqAgwqAgwqAgwqAgwqAgwqAg dmlydGlvX2dwdV9yZXNvdXJjZV9kZXN0cm95KGcsIHJlcyk7DQo+ICAgICArwqAgwqAgwqAgwqAg fQ0KPiAgICAgwqAgwqAgwqB9DQo+IA0KPiAgICAgwqAgwqAgwqB3aGlsZSAoIVFUQUlMUV9FTVBU WSgmZy0+Y21kcSkpIHsNCj4gICAgIGRpZmYgLS1naXQgYS9pbmNsdWRlL2h3L3ZpcnRpby92aXJ0 aW8tZ3B1LmggYi9pbmNsdWRlL2h3L3ZpcnRpby92aXJ0aW8tZ3B1LmgNCj4gICAgIGluZGV4IDJl Mjg1MDdlZmUuLmMyMWMyOTkwZmIgMTAwNjQ0DQo+ICAgICAtLS0gYS9pbmNsdWRlL2h3L3ZpcnRp by92aXJ0aW8tZ3B1LmgNCj4gICAgICsrKyBiL2luY2x1ZGUvaHcvdmlydGlvL3ZpcnRpby1ncHUu aA0KPiAgICAgQEAgLTE3Myw2ICsxNzMsNyBAQCBzdHJ1Y3QgVmlydElPR1BVIHsNCj4gDQo+ICAg ICDCoCDCoCDCoHVpbnQ2NF90IGhvc3RtZW07DQo+IA0KPiAgICAgK8KgIMKgIGJvb2wgZnJlZXpp bmc7DQo+ICAgICDCoCDCoCDCoGJvb2wgcHJvY2Vzc2luZ19jbWRxOw0KPiAgICAgwqAgwqAgwqBR RU1VVGltZXIgKmZlbmNlX3BvbGw7DQo+ICAgICDCoCDCoCDCoFFFTVVUaW1lciAqcHJpbnRfc3Rh dHM7DQo+ICAgICBAQCAtMjg0LDUgKzI4NSw3IEBAIHZvaWQgdmlydGlvX2dwdV92aXJnbF9yZXNl dF9zY2Fub3V0KFZpcnRJT0dQVSAqZyk7DQo+ICAgICDCoHZvaWQgdmlydGlvX2dwdV92aXJnbF9y ZXNldChWaXJ0SU9HUFUgKmcpOw0KPiAgICAgwqBpbnQgdmlydGlvX2dwdV92aXJnbF9pbml0KFZp cnRJT0dQVSAqZyk7DQo+ICAgICDCoGludCB2aXJ0aW9fZ3B1X3ZpcmdsX2dldF9udW1fY2Fwc2V0 cyhWaXJ0SU9HUFUgKmcpOw0KPiAgICAgK3ZvaWQgdmlydGlvX2dwdV9jbWRfc3RhdHVzX2ZyZWV6 aW5nKFZpcnRJT0dQVSAqZywNCj4gICAgICvCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDC oCDCoCDCoHN0cnVjdCB2aXJ0aW9fZ3B1X2N0cmxfY29tbWFuZCAqY21kKTsNCj4gDQo+ICAgICDC oCNlbmRpZg0KPiAgICAgZGlmZiAtLWdpdCBhL2luY2x1ZGUvc3RhbmRhcmQtaGVhZGVycy9saW51 eC92aXJ0aW9fZ3B1LmggYi9pbmNsdWRlL3N0YW5kYXJkLWhlYWRlcnMvbGludXgvdmlydGlvX2dw dS5oDQo+ICAgICBpbmRleCAyZGE0OGQzZDRjLi5hZWZmZmJkNzUxIDEwMDY0NA0KPiAgICAgLS0t IGEvaW5jbHVkZS9zdGFuZGFyZC1oZWFkZXJzL2xpbnV4L3ZpcnRpb19ncHUuaA0KPiAgICAgKysr IGIvaW5jbHVkZS9zdGFuZGFyZC1oZWFkZXJzL2xpbnV4L3ZpcnRpb19ncHUuaA0KPiAgICAgQEAg LTExNiw2ICsxMTYsOSBAQCBlbnVtIHZpcnRpb19ncHVfY3RybF90eXBlIHsNCj4gICAgIMKgIMKg IMKgIMKgIFZJUlRJT19HUFVfUkVTUF9FUlJfSU5WQUxJRF9SRVNPVVJDRV9JRCwNCj4gICAgIMKg IMKgIMKgIMKgIFZJUlRJT19HUFVfUkVTUF9FUlJfSU5WQUxJRF9DT05URVhUX0lELA0KPiAgICAg wqAgwqAgwqAgwqAgVklSVElPX0dQVV9SRVNQX0VSUl9JTlZBTElEX1BBUkFNRVRFUiwNCj4gICAg ICsNCj4gICAgICvCoCDCoCDCoCDCoC8qIHN0YXR1cyAqLw0KPiAgICAgK8KgIMKgIMKgIMKgVklS VElPX0dQVV9DTURfU1RBVFVTX0ZSRUVaSU5HID0gMHgxMzAwLA0KPiAgICAgwqB9Ow0KPiANCj4g DQoNClRoYW5rIHlvdSBmb3IgcmV2aWV3aW5nIQ0KDQo+IEFkZGluZyBhIG5ldyBjb21tYW5kIHJl cXVpcmVzIG5ldyBmZWF0dXJlIGZsYWcgKGFuZCBtYXliZSBpdCBzaG91bGQgYmUgaW4gdGhlIDww eDEwMDAgcmFuZ2UgaW5zdGVhZCkNCj4gDQo+IEJ1dCBJIGFtIG5vdCBzdXJlIHdlIG5lZWQgYSBu ZXcgbWVzc2FnZSBhdCB0aGUgdmlydGlvLWdwdSBsZXZlbC4gR2VyZCwgd2R5dD8NCg0KSSBhZGRl ZCB0aGlzIG1lc3NhZ2UgdG8gZ2V0IG5vdGlmaWNhdGlvbnMgZnJvbSBndWVzdC4gSSBkb24ndCBr bm93IHdoYXQgbGV2ZWwgaXMgbW9yZSBzdWl0YWJsZS4gQ291bGQgeW91IHBsZWFzZSBnaXZlIHNv bWUgYWR2aWNlPw0KDQo+IA0KPiBNYXliZSBpdCdzIG5vdCBhIGdvb2QgcGxhY2UgdG8gcmVzZXQg YWxsIEdQVSByZXNvdXJjZXMgZHVyaW5nIFFFTVUgcmVzZXQoKSBhZnRlciBhbGwsIGlmIGl0J3Mg Y2FsbGVkIGR1cmluZyBzMyBhbmQgdGhlcmUgaXMgbm8gbWVjaGFuaXNtIHRvIHJlc3RvcmUgaXQu IERhbWllbj8NCg0KWWVzLCBkdXJpbmcgczMsIHZpcnRpb19ncHVfcmVzZXQoKSBpcyBjYWxsZWQs IGFuZCBhbGwgcmVzb3VyY2VzIGFyZSBkZXN0cm95ZWQuIElmIHRoZXJlIGlzIGEgYmV0dGVyIHBs YWNlIHRvIGRlc3Ryb3kgcmVzb3VyY2VzLCBJIHRoaW5rIHRoZSBkaXNwbGF5IHByb2JsZW0gbWF5 IGRpc2FwcGVhciBhbmQgdGhlIG5ldyBtZXNzYWdlIEkgYWRkZWQgbWF5IGJlIG5vdCBuZWNlc3Nh cnkuDQoNCj4gDQo+IHRoYW5rcw0KPiANCj4gDQo+IC4uLg0KPiANCj4gICAgIMKgZW51bSB2aXJ0 aW9fZ3B1X3NobV9pZCB7DQo+ICAgICBAQCAtNDUzLDQgKzQ1NiwxMCBAQCBzdHJ1Y3QgdmlydGlv X2dwdV9yZXNvdXJjZV91bm1hcF9ibG9iIHsNCj4gICAgIMKgIMKgIMKgIMKgIHVpbnQzMl90IHBh ZGRpbmc7DQo+ICAgICDCoH07DQo+IA0KPiAgICAgKy8qIFZJUlRJT19HUFVfQ01EX1NUQVRVU19G UkVFWklORyAqLw0KPiAgICAgK3N0cnVjdCB2aXJ0aW9fZ3B1X3N0YXR1c19mcmVlemluZyB7DQo+ ICAgICArwqAgwqAgwqAgwqBzdHJ1Y3QgdmlydGlvX2dwdV9jdHJsX2hkciBoZHI7DQo+ICAgICAr wqAgwqAgwqAgwqBfX3UzMiBmcmVlemluZzsNCj4gICAgICt9Ow0KPiAgICAgKw0KPiAgICAgwqAj ZW5kaWYNCj4gICAgIC0tIA0KPiAgICAgMi4zNC4xDQo+IA0KPiANCj4gDQo+IA0KPiAtLSANCj4g TWFyYy1BbmRyw6kgTHVyZWF1DQoNCi0tIA0KQmVzdCByZWdhcmRzLA0KSmlxaWFuIENoZW4uDQo= From xen-devel-bounces@lists.xenproject.org Thu Jun 15 07:23:42 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 15 Jun 2023 07:23:42 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549429.857962 (Exim 4.92) (envelope-from ) id 1q9hKO-0000Gr-OR; Thu, 15 Jun 2023 07:23:32 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549429.857962; Thu, 15 Jun 2023 07:23:32 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9hKO-0000Gk-LH; Thu, 15 Jun 2023 07:23:32 +0000 Received: by outflank-mailman (input) for mailman id 549429; Thu, 15 Jun 2023 07:23:30 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9hKM-0000Gb-P6 for xen-devel@lists.xenproject.org; Thu, 15 Jun 2023 07:23:30 +0000 Received: from NAM12-MW2-obe.outbound.protection.outlook.com (mail-mw2nam12on20605.outbound.protection.outlook.com [2a01:111:f400:fe5a::605]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 85a6417b-0b4d-11ee-8611-37d641c3527e; Thu, 15 Jun 2023 09:23:28 +0200 (CEST) Received: from BL1PR12MB5849.namprd12.prod.outlook.com (2603:10b6:208:384::18) by IA1PR12MB7639.namprd12.prod.outlook.com (2603:10b6:208:425::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.25; Thu, 15 Jun 2023 07:23:23 +0000 Received: from BL1PR12MB5849.namprd12.prod.outlook.com ([fe80::4ef5:2244:743b:9989]) by BL1PR12MB5849.namprd12.prod.outlook.com ([fe80::4ef5:2244:743b:9989%4]) with mapi id 15.20.6477.037; Thu, 15 Jun 2023 07:23:23 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 85a6417b-0b4d-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=D+WpOIDSbQyvy011IaJLJIaxgDPz6KVpYGomFOJsGyirWjdghfQNqCduawLR+KZVi4EcnIm/fJbtAufNIxlnt4orS9GzYP/RnqRxB9eNnd+Vxrfogq3SbUkaVQonQU+76ZHZBD4icvCFokNrqC6E3TTG0x9oXMlXTwem5mSAuLolHxjiu+e2uFItmz0gmtmSvCRv5WWjhy98eaZetzvVeoYTW+PRg/qaQFgvC/Y+BmYTXO1RKwJq6HRymgX65Usyv7ojLuxSF7DnU3ALL4H/XeutrxEfE80rbaIpdxIm6/GRgOfA07M5M/n7THDPVJpeyu76yCMq2k3dJGAFNtYm8A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=ZxxLaNYQNm8DqVphkGJwTfNyDob1aRqd8yFgUa3gSwM=; b=CY9KRieAJuQl3SF3tBguyF+hSP0M+LyvswR0jR81C2JlqxC6FxVWciL6T6dnoFUmpP/A7RyFblklwwJZ0UV7mg5be4okPOLiZOvgP/CDN+km6H1h9mkUzeQpIa/lnNk8Zu4abbJZJXHvgiRzUOUVAfxZlqU/zRUH+/S9QnYEDyv+/Z0F9Qj0k4aXQ+UTY5UqBR99FyNh+AmczArDzarV4l7OXO7veKgM7jBygmlAinqrlVGE1dJWpWo64hQNtR4yBEu5qcBxnX74kZljb+e+sMKvIUQu0fG/r9w096pY7aT38GBW2tgFuVJ2RcgdSHnEE9hYwErZ7oKK6RS2laeoAQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass header.d=amd.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=ZxxLaNYQNm8DqVphkGJwTfNyDob1aRqd8yFgUa3gSwM=; b=cgsG7TpKwoWE/ayDlm/Az563LfwiyBtC1n9JC6VIfzgBvB3zZdmwM6QgoFd+zXU2GfH64RUEZ7j1AlOIGcJeLSGYEb92wfuUia3BD77Z8byHIvylJVfehB0cjWvgr+wTNTaHpJoLkLhce98PG5g/RYhhcgOXjqvS7UttyxB9psc= From: "Chen, Jiqian" To: Robert Beckett CC: "xen-devel@lists.xenproject.org" , "qemu-devel@nongnu.org" , "Dr . David Alan Gilbert" , Jan Beulich , =?utf-8?B?Um9nZXIgUGF1IE1vbm7DqQ==?= , Anthony PERARD , Stefano Stabellini , "Michael S . Tsirkin" , Gerd Hoffmann , "Deucher, Alexander" , "Koenig, Christian" , "Hildebrand, Stewart" , Xenia Ragiadakou , "Huang, Honglei1" , "Zhang, Julia" , "Huang, Ray" , "Chen, Jiqian" Subject: Re: [QEMU PATCH 1/1] virtgpu: do not destroy resources when guest suspend Thread-Topic: [QEMU PATCH 1/1] virtgpu: do not destroy resources when guest suspend Thread-Index: AQHZmbUjDQZRLEUzRUmYVwd7de4D46+BHLmAgArhWIA= Date: Thu, 15 Jun 2023 07:23:23 +0000 Message-ID: References: <20230608025655.1674357-1-Jiqian.Chen@amd.com> <20230608025655.1674357-2-Jiqian.Chen@amd.com> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ms-exchange-imapappendstamp: BL1PR12MB5206.namprd12.prod.outlook.com (15.20.6500.009) authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=amd.com; x-ms-exchange-messagesentrepresentingtype: 1 x-ms-publictraffictype: Email x-ms-traffictypediagnostic: BL1PR12MB5849:EE_|IA1PR12MB7639:EE_ x-ms-office365-filtering-correlation-id: 5e7fb7c2-adcd-4aac-f5c7-08db6d716726 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: 9l8mCGE92IbvL14MN2F7pCDsai0LMn2w3vJTsitGIMU7/ZcoqQTdRWxVtgHqi64zL5jv4rgwvnzcNVglhy7N8pxwEe6FVITGnE70uoo0JDnl38U95Kwxlsfiw4R3I+e58+hy6MtwjvSM+Q1W9SvqqmrFFK4t6dctJbh9Pv0w0k86uUlxLv1SyrN3eeDgAOAB9bb0EUE15g4yQrU/yJgWPzWghmnu2J7ZSV11qb/BAHyRxtZHuAgmQCeUYu+RW9BzGXa+XU2f9aRxwZb/KjGLwt5a3LFe17Wf0XpcFl6D1rfH/UYpPrw8Bp3NfYx66ZflT2dApx+ssJYX33qcg8J9I+JGFwF+10vxr5QUuQ6yImil1/AXBgTe+9ZCvuyydoWcaqLRY9Br8ehN4SIEHo+yBIagHAEIHX8XFYNAqWuEtCxNSKRi3Rx9BhvTpdV4vsEVs3Bo6CvYQxKI8Tpori72xLUC3r6mqRmyiCAWynPrm2z0aK90tkFFg0pGv4Jp4pIfc+lbSAtG6yY78cIe21knkTiytDGfoT/pvjChiEjV2p1TAYIlF6+SBZzupS77d+n2m+K2LUW0FvLcZx7hjlaOJBu4caBtKpbPsjfQ44X5mY0zxPMsuxfioS5oiV2IfniW x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BL1PR12MB5849.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(396003)(366004)(346002)(136003)(376002)(39860400002)(451199021)(5660300002)(478600001)(55016003)(54906003)(8936002)(41300700001)(52536014)(7696005)(316002)(8676002)(6506007)(7416002)(186003)(4326008)(71200400001)(64756008)(66446008)(6916009)(66946007)(66556008)(76116006)(66476007)(53546011)(9686003)(26005)(15650500001)(2906002)(83380400001)(38100700002)(122000001)(33656002)(38070700005);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?cWRkeEo2bURDNytEalN6Skw5ZGNTQkxzQmZRU2FERWdrUStieHU0anpIeVAy?= =?utf-8?B?ZEZYUktKWllPdVk4b2QvRkwrMStZNmFBdDlBM2Ntc1BjZXFOZkl6eDlzb3U1?= =?utf-8?B?MFVZM1pxOTNvQWd2dFRhMmFnS3JmRE1LK2ZzSlYxcHd4a0VIVWdCbU9xTVAw?= =?utf-8?B?NHhtOW5wN0gvWjZROWdqZXpOUm1rdDZaN2d4NGdtN1U2R2s2RHR4VW95dUZn?= =?utf-8?B?T1ZoM0h0NmgvMzJNbWd3cHYwaW5lNW11RFRYMkpsdk9DOHBKVCtUbHZ0VW1m?= =?utf-8?B?dGlaUmZhdXRFb1N5dTJPeENKSVlvQlFqcUJrVnhUSGJHT3FRRmliZk9OdzRu?= =?utf-8?B?SFFGeEwwNmtiTjVYK3grMXR1OTh5ZGVYZnh1YVV5S2tNbGpEYXg3bWtzV1pP?= =?utf-8?B?SVpvY1RYMTYyMm1IM3dkcVVKc2FXaWFuZHRmS0tRREtYZXNWOFM4ZEtHd2hW?= =?utf-8?B?WFNhMzBzbzg2NTI0ako5OVVIanZuN0pQaTkvbWNaN2I4Y2UvT0dJMWtzbncr?= =?utf-8?B?MmNyUE11SGRsU29jd2ZzMGdTVTJMQXhwSDNJM1BJYjUzQ3QvemI4NlF1NVY0?= =?utf-8?B?K3BMYmwyWnhtRi9BSnBmbHorQ3MwRnBTVlZ0NGY2RVNjVHVUc2RBWmRhdUpZ?= =?utf-8?B?RU1YZHU4OCtsVGpXQ0IyMzdKUXBtajMzMXUvK1B3RTRGRzQ2Wkh1VWE3bEp5?= =?utf-8?B?SkZVL3RoNG81ODVJYlJjcmdaTkxvVEFCL0U5QUxTRlFMMnFKeXpPWWtKZlZ4?= =?utf-8?B?OXBkRjk4cWduWm1GK01XUG5iQ0NXN092RWMxQmQrL1QvNTdKVEI1dE9IVGZN?= =?utf-8?B?cG1uQ1V2dXAydGdQYUZ1UmlDZUVxVmxnc01RWFJnS2EwdTdHbEU5K1k5MXNM?= =?utf-8?B?bXg2TWlPTWMwUjZUb0ZvTy9EOHZ4YnJHQlNCRWpYeXkySjYvOVp3VHJEaXVU?= =?utf-8?B?YkFaZU12NXVURG94S1dHN0EybDYwT0xCZ3dYdVJHSXJ0SnlsbmVIM01IcWJt?= =?utf-8?B?Q1pYVGZiR2E5Uno2RFUvWERhSlJGMXJRZFN6cCtIK2FzMVU5d3B5c1Y4Ukw4?= =?utf-8?B?aVlxY0t6TEk2bUZBU1F2NWpZZlRhRG5PLzdGRWt4Z2JUM3k5QXFnOTdJQVZZ?= =?utf-8?B?NndCUHFmTStoanBnWjlaK2locUtNZE5pUEJhRVloS25iWW9iTFFtT2tWWWhw?= =?utf-8?B?R3htNSt2VTVBVjZOT0VCL1Rmb3BkT0p0bXN5ZGNGcGxST0xLak91VGFQdHdK?= =?utf-8?B?a2E5RlB2aFY5UVBMaUxGcUFXR0JXOXZoaFl0elZXaFRid1p2RHIzUnhXS21l?= =?utf-8?B?Si83VHJBYXBsUzJWK2xWRFBsdzh0R25XRDNjOGpMSVhzTE1meEY2a3o4Z2dI?= =?utf-8?B?OG9MN2paaldNdG42S3g4eENobjBJTXdUQ29LL0IwM2sxTkJjVHNVbWZXQzEx?= =?utf-8?B?QTNmTmZSMi81RldhYVRwZWJtdWpwWFZadHNieVNFT1c3YjZidUF3NEo0b2tL?= =?utf-8?B?RE1tUzgyTHdyckJOa1NGWlVVaG1DR2hFN3VRaWVsUXFkM283RmVYeHRsai84?= =?utf-8?B?REpvSnBGYnpXbDVucmZ2U2hzNHRkQ1l0NkRLeFExK1hHelplVzd6ZStXK2cv?= =?utf-8?B?K1VJbTdLaFlvUVVoSjhDdzNKTkpyQ2krMUptaFpyeUZhT3VpempGQUwwZzVq?= =?utf-8?B?a0tPUTJac1dqa1Z6Uk80ZHlSQmE3SzNOcnFpT1ZsVlU0T2RMQlN3by9NR1JM?= =?utf-8?B?UWV1aHpaaWNuYmh5SzBUNDZyWXlSMXpaQkgvanlPclJSUnN2NDlhU0JIc2pw?= =?utf-8?B?L0pGTThjZ3AxSE5TaVhzT0lHMUNyMXl5ZXplUlpwQTRLanQ4aHVRaGR5Szdr?= =?utf-8?B?aENraE5PMS9lOVNONGJMVGF2Z3N1dTFQWll6TjZzQlhhdk1xWVJzd2s4RzFw?= =?utf-8?B?WmROa3grQVZFVXRyQ1FMWmpqd1RSeE5Mem14NzI4N2JjWDdXZnJneWF3OWQx?= =?utf-8?B?ejY1T0gwY1k4QWt6MGEyd3BkNzR4Z2ZXcVE3d29NUFdrbUNEc0dnZ1JQK3lR?= =?utf-8?B?Yll6YVdSaG5HenhZQWZ2c0hKcU5tYThGOGNVZDRGbzZnUHAxOUxhOWV3bHpz?= =?utf-8?Q?SYuE=3D?= Content-Type: text/plain; charset="utf-8" Content-ID: Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: BL1PR12MB5849.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 5e7fb7c2-adcd-4aac-f5c7-08db6d716726 X-MS-Exchange-CrossTenant-originalarrivaltime: 15 Jun 2023 07:23:23.2375 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: t8sjOfxQOxmgH/EKyjFDgWFE8BqpuqbSP6EUipg73PSjTVXdKiEh0aBxuPXsGTZmEA2ZQhpBG0SN+BHjjD9I2A== X-MS-Exchange-Transport-CrossTenantHeadersStamped: IA1PR12MB7639 DQpPbiAyMDIzLzYvOSAwMDo0MSwgUm9iZXJ0IEJlY2tldHQgd3JvdGU6DQo+IA0KPiBPbiAwOC8w Ni8yMDIzIDAzOjU2LCBKaXFpYW4gQ2hlbiB3cm90ZToNCj4+IEFmdGVyIHN1c3BlbmRpbmcgYW5k IHJlc3VtaW5nIGd1ZXN0IFZNLCB5b3Ugd2lsbCBnZXQNCj4+IGEgYmxhY2sgc2NyZWVuLCBhbmQg dGhlIGRpc3BsYXkgY2FuJ3QgY29tZSBiYWNrLg0KPj4NCj4+IFRoaXMgaXMgYmVjYXVzZSB3aGVu IGd1ZXN0IGRpZCBzdXNwZW5kaW5nLCBpdCBjYWxsZWQNCj4+IGludG8gcWVtdSB0byBjYWxsIHZp cnRpb19ncHVfZ2xfcmVzZXQuIEluIGZ1bmN0aW9uDQo+PiB2aXJ0aW9fZ3B1X2dsX3Jlc2V0LCBp dCBkZXN0cm95ZWQgcmVzb3VyY2VzIGFuZCByZXNldA0KPj4gcmVuZGVyZXIsIHdoaWNoIHdlcmUg dXNlZCBmb3IgZGlzcGxheS4gQXMgYSByZXN1bHQsDQo+PiBndWVzdCdzIHNjcmVlbiBjYW4ndCBj b21lIGJhY2sgdG8gdGhlIHRpbWUgd2hlbiBpdCB3YXMNCj4+IHN1c3BlbmRlZCBhbmQgb25seSBz aG93ZWQgYmxhY2suDQo+Pg0KPj4gU28sIHRoaXMgcGF0Y2ggYWRkcyBhIG5ldyBjdHJsIG1lc3Nh Z2UNCj4+IFZJUlRJT19HUFVfQ01EX1NUQVRVU19GUkVFWklORyB0byBnZXQgbm90aWZpY2F0aW9u IGZyb20NCj4+IGd1ZXN0LiBJZiBndWVzdCBpcyBkdXJpbmcgc3VzcGVuZGluZywgaXQgc2V0cyBm cmVlemluZw0KPj4gc3RhdHVzIG9mIHZpcnRncHUgdG8gdHJ1ZSwgdGhpcyB3aWxsIHByZXZlbnQg ZGVzdHJveWluZw0KPj4gcmVzb3VyY2VzIGFuZCByZXNldHRpbmcgcmVuZGVyZXIgd2hlbiBndWVz dCBjYWxscyBpbnRvDQo+PiB2aXJ0aW9fZ3B1X2dsX3Jlc2V0LiBJZiBndWVzdCBpcyBkdXJpbmcg cmVzdW1pbmcsIGl0IHNldHMNCj4+IGZyZWV6aW5nIHRvIGZhbHNlLCBhbmQgdGhlbiB2aXJ0aW9f Z3B1X2dsX3Jlc2V0IHdpbGwga2VlcA0KPj4gaXRzIG9yaWdpbiBhY3Rpb25zIGFuZCBoYXMgbm8g b3RoZXIgaW1wYWN0aW9uLg0KPj4NCj4+IFNpZ25lZC1vZmYtYnk6IEppcWlhbiBDaGVuIDxKaXFp YW4uQ2hlbkBhbWQuY29tPg0KPj4gLS0tDQo+PiDCoCBody9kaXNwbGF5L3ZpcnRpby1ncHUtZ2wu Y8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgfMKgIDkgKysrKysrLQ0KPj4gwqAg aHcvZGlzcGxheS92aXJ0aW8tZ3B1LXZpcmdsLmPCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg IHzCoCAzICsrKw0KPj4gwqAgaHcvZGlzcGxheS92aXJ0aW8tZ3B1LmPCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHwgMjYgKysrKysrKysrKysrKysrKysrKy0tDQo+PiDC oCBpbmNsdWRlL2h3L3ZpcnRpby92aXJ0aW8tZ3B1LmjCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oCB8wqAgMyArKysNCj4+IMKgIGluY2x1ZGUvc3RhbmRhcmQtaGVhZGVycy9saW51eC92aXJ0aW9f Z3B1LmggfMKgIDkgKysrKysrKw0KPj4gwqAgNSBmaWxlcyBjaGFuZ2VkLCA0NyBpbnNlcnRpb25z KCspLCAzIGRlbGV0aW9ucygtKQ0KPj4NCj4+IGRpZmYgLS1naXQgYS9ody9kaXNwbGF5L3ZpcnRp by1ncHUtZ2wuYyBiL2h3L2Rpc3BsYXkvdmlydGlvLWdwdS1nbC5jDQo+PiBpbmRleCBlMDZiZTYw ZGZiLi5lMTFhZDIzM2ViIDEwMDY0NA0KPj4gLS0tIGEvaHcvZGlzcGxheS92aXJ0aW8tZ3B1LWds LmMNCj4+ICsrKyBiL2h3L2Rpc3BsYXkvdmlydGlvLWdwdS1nbC5jDQo+PiBAQCAtMTAwLDcgKzEw MCwxNCBAQCBzdGF0aWMgdm9pZCB2aXJ0aW9fZ3B1X2dsX3Jlc2V0KFZpcnRJT0RldmljZSAqdmRl dikNCj4+IMKgwqDCoMKgwqDCoCAqLw0KPj4gwqDCoMKgwqDCoCBpZiAoZ2wtPnJlbmRlcmVyX2lu aXRlZCAmJiAhZ2wtPnJlbmRlcmVyX3Jlc2V0KSB7DQo+PiDCoMKgwqDCoMKgwqDCoMKgwqAgdmly dGlvX2dwdV92aXJnbF9yZXNldF9zY2Fub3V0KGcpOw0KPj4gLcKgwqDCoMKgwqDCoMKgIGdsLT5y ZW5kZXJlcl9yZXNldCA9IHRydWU7DQo+PiArwqDCoMKgwqDCoMKgwqAgLyoNCj4+ICvCoMKgwqDC oMKgwqDCoMKgICogSWYgZ3Vlc3QgaXMgc3VzcGVuZGluZywgd2Ugc2hvdWxkbid0IHJlc2V0IHJl bmRlcmVyLA0KPj4gK8KgwqDCoMKgwqDCoMKgwqAgKiBvdGhlcndpc2UsIHRoZSBkaXNwbGF5IGNh bid0IGNvbWUgYmFjayB0byB0aGUgdGltZSB3aGVuDQo+PiArwqDCoMKgwqDCoMKgwqDCoCAqIGl0 IHdhcyBzdXNwZW5kZWQgYWZ0ZXIgZ3Vlc3QgcmVzdW1lZC4NCj4+ICvCoMKgwqDCoMKgwqDCoMKg ICovDQo+PiArwqDCoMKgwqDCoMKgwqAgaWYgKCFnLT5mcmVlemluZykgew0KPj4gK8KgwqDCoMKg wqDCoMKgwqDCoMKgwqAgZ2wtPnJlbmRlcmVyX3Jlc2V0ID0gdHJ1ZTsNCj4+ICvCoMKgwqDCoMKg wqDCoCB9DQo+PiDCoMKgwqDCoMKgIH0NCj4+IMKgIH0NCj4+IMKgIGRpZmYgLS1naXQgYS9ody9k aXNwbGF5L3ZpcnRpby1ncHUtdmlyZ2wuYyBiL2h3L2Rpc3BsYXkvdmlydGlvLWdwdS12aXJnbC5j DQo+PiBpbmRleCA3M2NiOTJjOGQ1Li4xODNlYzkyZDUzIDEwMDY0NA0KPj4gLS0tIGEvaHcvZGlz cGxheS92aXJ0aW8tZ3B1LXZpcmdsLmMNCj4+ICsrKyBiL2h3L2Rpc3BsYXkvdmlydGlvLWdwdS12 aXJnbC5jDQo+PiBAQCAtNDY0LDYgKzQ2NCw5IEBAIHZvaWQgdmlydGlvX2dwdV92aXJnbF9wcm9j ZXNzX2NtZChWaXJ0SU9HUFUgKmcsDQo+PiDCoMKgwqDCoMKgIGNhc2UgVklSVElPX0dQVV9DTURf R0VUX0VESUQ6DQo+PiDCoMKgwqDCoMKgwqDCoMKgwqAgdmlydGlvX2dwdV9nZXRfZWRpZChnLCBj bWQpOw0KPj4gwqDCoMKgwqDCoMKgwqDCoMKgIGJyZWFrOw0KPj4gK8KgwqDCoCBjYXNlIFZJUlRJ T19HUFVfQ01EX1NUQVRVU19GUkVFWklORzoNCj4+ICvCoMKgwqDCoMKgwqDCoCB2aXJ0aW9fZ3B1 X2NtZF9zdGF0dXNfZnJlZXppbmcoZywgY21kKTsNCj4+ICvCoMKgwqDCoMKgwqDCoCBicmVhazsN Cj4+IMKgwqDCoMKgwqAgZGVmYXVsdDoNCj4+IMKgwqDCoMKgwqDCoMKgwqDCoCBjbWQtPmVycm9y ID0gVklSVElPX0dQVV9SRVNQX0VSUl9VTlNQRUM7DQo+PiDCoMKgwqDCoMKgwqDCoMKgwqAgYnJl YWs7DQo+PiBkaWZmIC0tZ2l0IGEvaHcvZGlzcGxheS92aXJ0aW8tZ3B1LmMgYi9ody9kaXNwbGF5 L3ZpcnRpby1ncHUuYw0KPj4gaW5kZXggNWUxNWM3OWI5NC4uOGYyMzVkNzg0OCAxMDA2NDQNCj4+ IC0tLSBhL2h3L2Rpc3BsYXkvdmlydGlvLWdwdS5jDQo+PiArKysgYi9ody9kaXNwbGF5L3ZpcnRp by1ncHUuYw0KPj4gQEAgLTM3Myw2ICszNzMsMTYgQEAgc3RhdGljIHZvaWQgdmlydGlvX2dwdV9y ZXNvdXJjZV9jcmVhdGVfYmxvYihWaXJ0SU9HUFUgKmcsDQo+PiDCoMKgwqDCoMKgIFFUQUlMUV9J TlNFUlRfSEVBRCgmZy0+cmVzbGlzdCwgcmVzLCBuZXh0KTsNCj4+IMKgIH0NCj4+IMKgICt2b2lk IHZpcnRpb19ncHVfY21kX3N0YXR1c19mcmVlemluZyhWaXJ0SU9HUFUgKmcsDQo+PiArwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHN0cnVjdCB2aXJ0aW9f Z3B1X2N0cmxfY29tbWFuZCAqY21kKQ0KPj4gK3sNCj4+ICvCoMKgwqAgc3RydWN0IHZpcnRpb19n cHVfc3RhdHVzX2ZyZWV6aW5nIHNmOw0KPj4gKw0KPj4gK8KgwqDCoCBWSVJUSU9fR1BVX0ZJTExf Q01EKHNmKTsNCj4+ICvCoMKgwqAgdmlydGlvX2dwdV9ic3dhcF8zMigmc2YsIHNpemVvZihzZikp Ow0KPj4gK8KgwqDCoCBnLT5mcmVlemluZyA9IHNmLmZyZWV6aW5nOw0KPj4gK30NCj4+ICsNCj4+ IMKgIHN0YXRpYyB2b2lkIHZpcnRpb19ncHVfZGlzYWJsZV9zY2Fub3V0KFZpcnRJT0dQVSAqZywg aW50IHNjYW5vdXRfaWQpDQo+PiDCoCB7DQo+PiDCoMKgwqDCoMKgIHN0cnVjdCB2aXJ0aW9fZ3B1 X3NjYW5vdXQgKnNjYW5vdXQgPSAmZy0+cGFyZW50X29iai5zY2Fub3V0W3NjYW5vdXRfaWRdOw0K Pj4gQEAgLTk4Niw2ICs5OTYsOSBAQCB2b2lkIHZpcnRpb19ncHVfc2ltcGxlX3Byb2Nlc3NfY21k KFZpcnRJT0dQVSAqZywNCj4+IMKgwqDCoMKgwqAgY2FzZSBWSVJUSU9fR1BVX0NNRF9SRVNPVVJD RV9ERVRBQ0hfQkFDS0lORzoNCj4+IMKgwqDCoMKgwqDCoMKgwqDCoCB2aXJ0aW9fZ3B1X3Jlc291 cmNlX2RldGFjaF9iYWNraW5nKGcsIGNtZCk7DQo+PiDCoMKgwqDCoMKgwqDCoMKgwqAgYnJlYWs7 DQo+PiArwqDCoMKgIGNhc2UgVklSVElPX0dQVV9DTURfU1RBVFVTX0ZSRUVaSU5HOg0KPj4gK8Kg wqDCoMKgwqDCoMKgIHZpcnRpb19ncHVfY21kX3N0YXR1c19mcmVlemluZyhnLCBjbWQpOw0KPj4g K8KgwqDCoMKgwqDCoMKgIGJyZWFrOw0KPj4gwqDCoMKgwqDCoCBkZWZhdWx0Og0KPj4gwqDCoMKg wqDCoMKgwqDCoMKgIGNtZC0+ZXJyb3IgPSBWSVJUSU9fR1BVX1JFU1BfRVJSX1VOU1BFQzsNCj4+ IMKgwqDCoMKgwqDCoMKgwqDCoCBicmVhazsNCj4+IEBAIC0xMzQ0LDYgKzEzNTcsOCBAQCB2b2lk IHZpcnRpb19ncHVfZGV2aWNlX3JlYWxpemUoRGV2aWNlU3RhdGUgKnFkZXYsIEVycm9yICoqZXJy cCkNCj4+IMKgwqDCoMKgwqAgUVRBSUxRX0lOSVQoJmctPnJlc2xpc3QpOw0KPj4gwqDCoMKgwqDC oCBRVEFJTFFfSU5JVCgmZy0+Y21kcSk7DQo+PiDCoMKgwqDCoMKgIFFUQUlMUV9JTklUKCZnLT5m ZW5jZXEpOw0KPj4gKw0KPj4gK8KgwqDCoCBnLT5mcmVlemluZyA9IGZhbHNlOw0KPj4gwqAgfQ0K Pj4gwqAgwqAgdm9pZCB2aXJ0aW9fZ3B1X3Jlc2V0KFZpcnRJT0RldmljZSAqdmRldikNCj4+IEBA IC0xMzUyLDggKzEzNjcsMTUgQEAgdm9pZCB2aXJ0aW9fZ3B1X3Jlc2V0KFZpcnRJT0RldmljZSAq dmRldikNCj4+IMKgwqDCoMKgwqAgc3RydWN0IHZpcnRpb19ncHVfc2ltcGxlX3Jlc291cmNlICpy ZXMsICp0bXA7DQo+PiDCoMKgwqDCoMKgIHN0cnVjdCB2aXJ0aW9fZ3B1X2N0cmxfY29tbWFuZCAq Y21kOw0KPj4gwqAgLcKgwqDCoCBRVEFJTFFfRk9SRUFDSF9TQUZFKHJlcywgJmctPnJlc2xpc3Qs IG5leHQsIHRtcCkgew0KPj4gLcKgwqDCoMKgwqDCoMKgIHZpcnRpb19ncHVfcmVzb3VyY2VfZGVz dHJveShnLCByZXMpOw0KPj4gK8KgwqDCoCAvKg0KPj4gK8KgwqDCoMKgICogSWYgZ3Vlc3QgaXMg c3VzcGVuZGluZywgd2Ugc2hvdWxkbid0IGRlc3Ryb3kgcmVzb3VyY2VzLA0KPj4gK8KgwqDCoMKg ICogb3RoZXJ3aXNlLCB0aGUgZGlzcGxheSBjYW4ndCBjb21lIGJhY2sgdG8gdGhlIHRpbWUgd2hl bg0KPj4gK8KgwqDCoMKgICogaXQgd2FzIHN1c3BlbmRlZCBhZnRlciBndWVzdCByZXN1bWVkLg0K Pj4gK8KgwqDCoMKgICovDQo+IA0KPiANCj4gV2hhdCBzaG91bGQgaGFwcGVuIGlmIHFlbXUgaXMg dG9ybiBkb3duIHdoaWxlIHRoZSBndWVzdCBpcyBzdXNwZW5kZWQuDQoNCkkgZG9uJ3Qga25vdyBp ZiB0aGVyZSBpcyBhIHBsYWNlIHRvIHJlY2xhaW0gYWxsIG1lbW9yeSBpbiBRZW11LiBJZiBub3Qs IGluIHRoZSBjYXNlIHlvdSBzYWlkLCB0aGUgbWVtb3J5IG9mIHJlc291cmNlcyBtYXkgbGVhay4N CkJ1dCBJIHJhbiAic3VkbyB4bCBkZXN0cm95IDxkb21haW4gaWQ+IiB0byBkZXN0cm95IFFlbXUg d2l0aG91dCBzdXNwZW5kaW5nIGd1ZXN0LCBhbmQgdGhlbiBJIGZvdW5kIGl0IGRpZG4ndCBkZXN0 cm95IHJlc291cmNlcyB0b28gKEJ5IGFkZGluZyBwcmludGluZ3MgaW4gdmlydGlvX2dwdV9yZXNl dCwgYnV0IHRoZSBmdW5jdGlvbiBkaWRuJ3QgYmUgY2FsbGVkIHdoZW4gZGVzdHJveWluZyBRZW11 KS4gU28sIHRoZSBsZWFrIG1heSBiZSBhbiBleGlzdGluZyBwcm9ibGVtIGJlZm9yZSB1c2luZyBt eSBwYXRjaC4NCg0KPiBDdXJyZW50bHkgdGhlcmUgaXMgbm8gb3RoZXIgcGxhY2Ugd2hlcmUgdGhl IHJlc291cmNlcyB3aWxsIGJlIGRlc3Ryb3llZC4gV2hpbGUgaXQgaXMgbGlrZWx5IHZpYWJsZSB0 byByZWx5IG9uIHByb2Nlc3MgYXV0byB0ZWFyIGRvd24gb2YgbWVtIGFuZCBmaWxlcyBmcm9tIHRo ZSBob3N0IGNsZWFudXAgcG9pbnQgb2YgdmlldywgaXQgZmVlbHMgYmFkIHRvIHJlbHkgb24gdGhh dC4NCj4gUGVyaGFwcyBhbiBpbnZlcnRlZCBjb25kaXRpb25hbCB3aXRoIGRlc3Ryb3kgbG9vcCBp biB2aXJ0aW9fZ3B1X2RldmljZV91bnJlYWxpemUoKSB3b3VsZCBzdWZmaWNlPw0KDQpCdXQgbWF5 IHRoZSBpbnZlcnRlZCBjb25kaXRpb25hbCBhbHNvIG5lZWQgdG8gcmVseSBvbiBndWVzdD8NCkFu ZCBJIGFsc28gYWRkZWQgcHJpbnRpbmdzIGluIHZpcnRpb19ncHVfZGV2aWNlX3VucmVhbGl6ZSgp LCBidXQgZGlkbid0IGdldCB0aGVtIHdoZW4gZGVzdHJveWluZyBRZW11Lg0KSWYgdGhlcmUgaXMg YSBtb3JlIHN1aXRhYmxlIHBsYWNlIHRvIGRlc3Ryb3kgcmVzb3VyY2VzIGluc3RlYWQgb2YgZHVy aW5nIHN1c3BlbmRpbmcgcHJvY2VzcywgdGhlIGxlYWsgYW5kIHRoZSBkZXBlbmRlbmN5IHByb2Js ZW0gd2lsbCBnby4NCg0KPiANCj4gSSBhbSBub3QgYSBxZW11IGV4cGVydCwgYnV0IEkgYW0gYXNz dW1pbmcgdGhhdCB0aGUgdW5yZWFsaXplIGNhbGwgd2lsbCBiZSBjYWxsZWQgZHVyaW5nIG1hY2hp bmUgZGVzdHJ1Y3Rpb24gaWYgdGhlIGd1ZXN0IGlzIHN1c3BlbmRlZC4NCj4gQWxzbyBpZiBxZW11 IHN1cHBvcnRzIChvciBpbnRlbmRzIHRvIHN1cHBvcnQgaW4gZnV0dXJlKSBob3RwbHVnZ2luZyBv ZiB0aGUgZGV2aWNlLCB0aGUgd291bGQgaGVscCBhdm9pZCBsZWFrcyB1bnRpbCBxZW11IGV4aXQg dG9vLg0KPiANCg0KSSB0aGluayBzbyB0b28uIFRoZSBob3RwbHVnIGZ1bmN0aW9uIGlzIGJlbmVm aWNpYWwgdG8gdGhlIGxlYWtzLiBCdXQgaXQgc2VlbXMgUWVtdSBkb2Vzbid0IHN1cHBvcnQgdmly dGdwdSBob3RwbHVnIG5vdy4NCklmIHZpcnRncHUgc3VwcG9ydHMgaG90cGx1ZywgaXRzIGNhbGwg c3RhY2sgbWF5IGJlOg0KbWFpbl9kZXN0cm95DQoJbGlieGxfZG9tYWluX2Rlc3Ryb3kNCgkJbGli eGxfX2RldmljZV9wY2lfZGVzdHJveV9hbGwNCgkJCWxpYnhsX19kZXZpY2VfcGNpX3JlbW92ZV9j b21tb24NCgkJCQlkb19wY2lfcmVtb3ZlDQoJCQkJCXFtcF9kZXZpY2VfZGVsDQoJCQkJCQlob3Rw bHVnX2hhbmRsZXJfdW5wbHVnDQoJCQkJCQkJdW5yZWFsaXplDQo+IA0KPj4gK8KgwqDCoCBpZiAo IWctPmZyZWV6aW5nKSB7DQo+PiArwqDCoMKgwqDCoMKgwqAgUVRBSUxRX0ZPUkVBQ0hfU0FGRShy ZXMsICZnLT5yZXNsaXN0LCBuZXh0LCB0bXApIHsNCj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKg IHZpcnRpb19ncHVfcmVzb3VyY2VfZGVzdHJveShnLCByZXMpOw0KPj4gK8KgwqDCoMKgwqDCoMKg IH0NCj4+IMKgwqDCoMKgwqAgfQ0KPj4gwqAgwqDCoMKgwqDCoCB3aGlsZSAoIVFUQUlMUV9FTVBU WSgmZy0+Y21kcSkpIHsNCj4+IGRpZmYgLS1naXQgYS9pbmNsdWRlL2h3L3ZpcnRpby92aXJ0aW8t Z3B1LmggYi9pbmNsdWRlL2h3L3ZpcnRpby92aXJ0aW8tZ3B1LmgNCj4+IGluZGV4IDJlMjg1MDdl ZmUuLmMyMWMyOTkwZmIgMTAwNjQ0DQo+PiAtLS0gYS9pbmNsdWRlL2h3L3ZpcnRpby92aXJ0aW8t Z3B1LmgNCj4+ICsrKyBiL2luY2x1ZGUvaHcvdmlydGlvL3ZpcnRpby1ncHUuaA0KPj4gQEAgLTE3 Myw2ICsxNzMsNyBAQCBzdHJ1Y3QgVmlydElPR1BVIHsNCj4+IMKgIMKgwqDCoMKgwqAgdWludDY0 X3QgaG9zdG1lbTsNCj4+IMKgICvCoMKgwqAgYm9vbCBmcmVlemluZzsNCj4+IMKgwqDCoMKgwqAg Ym9vbCBwcm9jZXNzaW5nX2NtZHE7DQo+PiDCoMKgwqDCoMKgIFFFTVVUaW1lciAqZmVuY2VfcG9s bDsNCj4+IMKgwqDCoMKgwqAgUUVNVVRpbWVyICpwcmludF9zdGF0czsNCj4+IEBAIC0yODQsNSAr Mjg1LDcgQEAgdm9pZCB2aXJ0aW9fZ3B1X3ZpcmdsX3Jlc2V0X3NjYW5vdXQoVmlydElPR1BVICpn KTsNCj4+IMKgIHZvaWQgdmlydGlvX2dwdV92aXJnbF9yZXNldChWaXJ0SU9HUFUgKmcpOw0KPj4g wqAgaW50IHZpcnRpb19ncHVfdmlyZ2xfaW5pdChWaXJ0SU9HUFUgKmcpOw0KPj4gwqAgaW50IHZp cnRpb19ncHVfdmlyZ2xfZ2V0X251bV9jYXBzZXRzKFZpcnRJT0dQVSAqZyk7DQo+PiArdm9pZCB2 aXJ0aW9fZ3B1X2NtZF9zdGF0dXNfZnJlZXppbmcoVmlydElPR1BVICpnLA0KPj4gK8KgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBzdHJ1Y3QgdmlydGlvX2dw dV9jdHJsX2NvbW1hbmQgKmNtZCk7DQo+PiDCoCDCoCAjZW5kaWYNCj4+IGRpZmYgLS1naXQgYS9p bmNsdWRlL3N0YW5kYXJkLWhlYWRlcnMvbGludXgvdmlydGlvX2dwdS5oIGIvaW5jbHVkZS9zdGFu ZGFyZC1oZWFkZXJzL2xpbnV4L3ZpcnRpb19ncHUuaA0KPj4gaW5kZXggMmRhNDhkM2Q0Yy4uYWVm ZmZiZDc1MSAxMDA2NDQNCj4+IC0tLSBhL2luY2x1ZGUvc3RhbmRhcmQtaGVhZGVycy9saW51eC92 aXJ0aW9fZ3B1LmgNCj4+ICsrKyBiL2luY2x1ZGUvc3RhbmRhcmQtaGVhZGVycy9saW51eC92aXJ0 aW9fZ3B1LmgNCj4+IEBAIC0xMTYsNiArMTE2LDkgQEAgZW51bSB2aXJ0aW9fZ3B1X2N0cmxfdHlw ZSB7DQo+PiDCoMKgwqDCoMKgIFZJUlRJT19HUFVfUkVTUF9FUlJfSU5WQUxJRF9SRVNPVVJDRV9J RCwNCj4+IMKgwqDCoMKgwqAgVklSVElPX0dQVV9SRVNQX0VSUl9JTlZBTElEX0NPTlRFWFRfSUQs DQo+PiDCoMKgwqDCoMKgIFZJUlRJT19HUFVfUkVTUF9FUlJfSU5WQUxJRF9QQVJBTUVURVIsDQo+ PiArDQo+PiArwqDCoMKgIC8qIHN0YXR1cyAqLw0KPj4gK8KgwqDCoCBWSVJUSU9fR1BVX0NNRF9T VEFUVVNfRlJFRVpJTkcgPSAweDEzMDAsDQo+PiDCoCB9Ow0KPj4gwqAgwqAgZW51bSB2aXJ0aW9f Z3B1X3NobV9pZCB7DQo+PiBAQCAtNDUzLDQgKzQ1NiwxMCBAQCBzdHJ1Y3QgdmlydGlvX2dwdV9y ZXNvdXJjZV91bm1hcF9ibG9iIHsNCj4+IMKgwqDCoMKgwqAgdWludDMyX3QgcGFkZGluZzsNCj4+ IMKgIH07DQo+PiDCoCArLyogVklSVElPX0dQVV9DTURfU1RBVFVTX0ZSRUVaSU5HICovDQo+PiAr c3RydWN0IHZpcnRpb19ncHVfc3RhdHVzX2ZyZWV6aW5nIHsNCj4+ICvCoMKgwqAgc3RydWN0IHZp cnRpb19ncHVfY3RybF9oZHIgaGRyOw0KPj4gK8KgwqDCoCBfX3UzMiBmcmVlemluZzsNCj4+ICt9 Ow0KPj4gKw0KPj4gwqAgI2VuZGlmDQoNCi0tIA0KQmVzdCByZWdhcmRzLA0KSmlxaWFuIENoZW4u DQo= From xen-devel-bounces@lists.xenproject.org Thu Jun 15 07:32:47 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 15 Jun 2023 07:32:47 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549436.857972 (Exim 4.92) (envelope-from ) id 1q9hT5-0001pG-PP; Thu, 15 Jun 2023 07:32:31 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549436.857972; Thu, 15 Jun 2023 07:32:31 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9hT5-0001p9-L7; Thu, 15 Jun 2023 07:32:31 +0000 Received: by outflank-mailman (input) for mailman id 549436; Thu, 15 Jun 2023 07:32:30 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9hT4-0001p3-C4 for xen-devel@lists.xenproject.org; Thu, 15 Jun 2023 07:32:30 +0000 Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id c7fc280f-0b4e-11ee-b232-6b7b168915f2; Thu, 15 Jun 2023 09:32:28 +0200 (CEST) Received: from [172.20.10.2] (unknown [37.161.238.96]) by support.bugseng.com (Postfix) with ESMTPSA id 92D544EE0748; Thu, 15 Jun 2023 09:32:27 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: c7fc280f-0b4e-11ee-b232-6b7b168915f2 Message-ID: <6f3b663a-1f8b-5555-ae61-ddf768b46fbd@bugseng.com> Date: Thu, 15 Jun 2023 09:32:26 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: Functions _spin_lock_cb() and handle_ro_raz() To: Julien Grall , xen-devel@lists.xenproject.org Cc: Stefano Stabellini , Bertrand Marquis References: Content-Language: en-US From: Federico Serafini Organization: BUGSENG srl In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit On 14/06/23 19:59, Julien Grall wrote: > (+ Bertrand and Stefano) > > On 14/06/2023 14:08, Federico Serafini wrote: >> Hello everyone, > > Hi Federico, > > Let me start with a tip to help reaching the maintainers and getting a > more timely answer. Xen-devel has a large volume of e-mails (still > less than Linux :)). So some of us will have filter to try to classify > the e-mails received. > > Commonly, all the e-mails where the person is in the CC/To list will > go to the inbox. All the others will go a separate directory that may > or may not be watched. Personally, I tend to glance in that directory, > but I would not read all of them. > > So I would highly recommend to CC the maintainers/reviewers of the > specific component. You can find them in MAINTAINERS at the root of > the Xen repository. We also have script like > scripts/get_maintainers.pl that can help you to find who to CC. > > If you pass '-f ', it will output the maintainers of that file. > You can also use the script with patch to find all the maintainers to CC. > > Now back to the subject of the e-mail. > >> >> I am working on the violations of MISRA C:2012 Rule 8.10, >> whose headline says: >> "An inline function shall be declared with the static storage class". >> >> For both ARM64 and X86_64 builds, >> function _spin_lock_cb() defined in spinlock.c violates the rule. >> Such function is declared in spinlock.h without >> the inline function specifier: are there any reasons to do this? >> What about solving the violation by moving the function definition in >> spinlock.h and declaring it as static inline? > > Jan answered it and sent a patch. So I will skip the reply for this one. > >> >> The same happens also for the function handle_ro_raz() in the ARM64 >> build, declared in traps.h and defined in traps.c. > > I looked at the history and it is not clear to me why the 'inline' was > added at first. That said, I don't see any value to ask the compiler > to inline (which it would be free to ignore) the function. > > So I would suggest to send a patch to remove the 'inline'. > > Best regards, > Thank you Julien, very helpful. From xen-devel-bounces@lists.xenproject.org Thu Jun 15 07:57:45 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 15 Jun 2023 07:57:45 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549443.857982 (Exim 4.92) (envelope-from ) id 1q9hrJ-0004Jp-MX; Thu, 15 Jun 2023 07:57:33 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549443.857982; Thu, 15 Jun 2023 07:57:33 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9hrJ-0004Ji-JC; Thu, 15 Jun 2023 07:57:33 +0000 Received: by outflank-mailman (input) for mailman id 549443; Thu, 15 Jun 2023 07:57:33 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9hrI-0004Jc-Vc for xen-devel@lists.xenproject.org; Thu, 15 Jun 2023 07:57:33 +0000 Received: from mail-yw1-x1131.google.com (mail-yw1-x1131.google.com [2607:f8b0:4864:20::1131]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 46d4a3e3-0b52-11ee-8611-37d641c3527e; Thu, 15 Jun 2023 09:57:30 +0200 (CEST) Received: by mail-yw1-x1131.google.com with SMTP id 00721157ae682-570282233ceso7591497b3.1 for ; Thu, 15 Jun 2023 00:57:30 -0700 (PDT) Received: from ripple.attlocal.net (172-10-233-147.lightspeed.sntcca.sbcglobal.net. [172.10.233.147]) by smtp.gmail.com with ESMTPSA id w10-20020a0dd40a000000b00568a207aaedsm4237877ywd.68.2023.06.15.00.57.26 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 15 Jun 2023 00:57:28 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 46d4a3e3-0b52-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20221208; t=1686815849; x=1689407849; h=mime-version:references:message-id:in-reply-to:subject:cc:to:from :date:from:to:cc:subject:date:message-id:reply-to; bh=xLt61v9ssqW8THTFBubZKFO6yUx9jJyRuoagCfuj5p4=; b=sqOjHZl7egAhowGBIl8syIGU5uGIW1wSh5YqCADkB0Zmhbwaikuj12BL/Atk+qYS71 8dY5tiV1rX4DjXNhrE2xJeIEdceT4TUB4AfmV60Sg7nUR26TxpBkZUfQbEPDRpELwXiM 3HDz0uXJ5pPS05kzKVjfB3TERQuwjHm7feUY48emv6g2FTDXB9kM0valHSq3MAkeYNdE mA/iBYPYSlEE3tWbGq5EWumSWyWn91B8nqrAaue3xEBOGl9H7R/5SfVVFZg7lrOxN+sl dQY9293XfHEDMeAx5R4qX4oCaN7KwBo3Iv/M+KCSiSSfPpdtHzovKysKwSYDtQgZOCuN 1f9Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686815849; x=1689407849; h=mime-version:references:message-id:in-reply-to:subject:cc:to:from :date:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=xLt61v9ssqW8THTFBubZKFO6yUx9jJyRuoagCfuj5p4=; b=Gw3kUOzNcfXqo8eZrdQrdutSlNa5y6LiG2W0BucLMOAEwCuaIeVn6465xBmiH21bZF QlQuldjMzhtV89s18YneY+ndL7qrw1a1WboFFPhasgnghAVnUHtGouvfJ8oZ/ZQh9yxC oPsS11SS93GG5FRGaZgs9g85PQUQ4MnjgrPxbasV7sDEU/jv6Hs/qAamMWGMrryuw6Gd ZyZFmu08vTBlGQ03ajGzLGsTA0MxYmwmovNnllRD3CcDnT1zlUlj9+dU+wqVbNx7zUGt GkBym59jlW1NKEo2CsbtJ/uHZD4yARZzr34EnLzm4m7BRDiY2l7V0eGl3hlcczAgcWya C7cw== X-Gm-Message-State: AC+VfDxliXWBopHOFhu4slkH1OZpXvlOa45NVIkHiDM/EqR4iM2qizM3 Ljea42KezjAtyFqZHd1S4CxuWg== X-Google-Smtp-Source: ACHHUZ7WkxW4gg02vDJcQOsCLmdXn2XBXedO6GCP0YsU33dh0gQYY291P8lwRaex9WlgnYowIiPsYQ== X-Received: by 2002:a0d:d9c9:0:b0:56d:244:ab13 with SMTP id b192-20020a0dd9c9000000b0056d0244ab13mr4185666ywe.28.1686815849226; Thu, 15 Jun 2023 00:57:29 -0700 (PDT) Date: Thu, 15 Jun 2023 00:57:19 -0700 (PDT) From: Hugh Dickins X-X-Sender: hugh@ripple.attlocal.net To: "Vishal Moola (Oracle)" cc: Andrew Morton , Matthew Wilcox , Gerald Schaefer , Vasily Gorbik , Jason Gunthorpe , Heiko Carstens , Christian Borntraeger , Claudio Imbrenda , Alexander Gordeev , linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins Subject: Re: [PATCH v4 04/34] pgtable: Create struct ptdesc In-Reply-To: <20230612210423.18611-5-vishal.moola@gmail.com> Message-ID: References: <20230612210423.18611-1-vishal.moola@gmail.com> <20230612210423.18611-5-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII On Mon, 12 Jun 2023, Vishal Moola (Oracle) wrote: > Currently, page table information is stored within struct page. As part > of simplifying struct page, create struct ptdesc for page table > information. > > Signed-off-by: Vishal Moola (Oracle) Vishal, as I think you have already guessed, your ptdesc series and my pte_free_defer() "mm: free retracted page table by RCU" series are on a collision course. Probably just trivial collisions in most architectures, which either of us can easily adjust to the other; powerpc likely to be more awkward, but fairly easily resolved; s390 quite a problem. I've so far been unable to post a v2 of my series (and powerpc and s390 were stupidly wrong in the v1), because a good s390 patch is not yet decided - Gerald Schaefer and I are currently working on that, on the s390 list (I took off most Ccs until we are settled and I can post v2). As you have no doubt found yourself, s390 has sophisticated handling of free half-pages already, and I need to add rcu_head usage in there too: it's tricky to squeeze it all in, and ptdesc does not appear to help us in any way (though mostly it's just changing some field names, okay). If ptdesc were actually allowing a flexible structure which architectures could add into, that would (in some future) be nice; but of course at present it's still fitting it all into one struct page, and mandating new restrictions which just make an architecture's job harder. Some notes on problematic fields below FYI. > --- > include/linux/pgtable.h | 51 +++++++++++++++++++++++++++++++++++++++++ > 1 file changed, 51 insertions(+) > > diff --git a/include/linux/pgtable.h b/include/linux/pgtable.h > index c5a51481bbb9..330de96ebfd6 100644 > --- a/include/linux/pgtable.h > +++ b/include/linux/pgtable.h > @@ -975,6 +975,57 @@ static inline void ptep_modify_prot_commit(struct vm_area_struct *vma, > #endif /* __HAVE_ARCH_PTEP_MODIFY_PROT_TRANSACTION */ > #endif /* CONFIG_MMU */ > > + > +/** > + * struct ptdesc - Memory descriptor for page tables. > + * @__page_flags: Same as page flags. Unused for page tables. > + * @pt_list: List of used page tables. Used for s390 and x86. > + * @_pt_pad_1: Padding that aliases with page's compound head. > + * @pmd_huge_pte: Protected by ptdesc->ptl, used for THPs. > + * @_pt_s390_gaddr: Aliases with page's mapping. Used for s390 gmap only. > + * @pt_mm: Used for x86 pgds. > + * @pt_frag_refcount: For fragmented page table tracking. Powerpc and s390 only. > + * @ptl: Lock for the page table. > + * > + * This struct overlays struct page for now. Do not modify without a good > + * understanding of the issues. > + */ > +struct ptdesc { > + unsigned long __page_flags; > + > + union { > + struct list_head pt_list; I shall be needing struct rcu_head rcu_head (or pt_rcu_head or whatever, if you prefer) in this union too. Sharing the lru or pt_list with rcu_head is what's difficult to get right and efficient on s390 - and if ptdesc gave us an independent rcu_head for each page table, that would be a blessing! but sadly not, it still has to squeeze into a struct page. > + struct { > + unsigned long _pt_pad_1; > + pgtable_t pmd_huge_pte; > + }; > + }; > + unsigned long _pt_s390_gaddr; > + > + union { > + struct mm_struct *pt_mm; > + atomic_t pt_frag_refcount; Whether s390 will want pt_mm is not yet decided: I want to use it, Gerald prefers to go without it; but if we do end up using it, then pt_frag_refcount is a luxury we would have to give up. s390 does very well already with its _refcount tricks, and I'd expect powerpc's simpler but more wasteful implementation to work as well with _refcount too - I know that a few years back, powerpc did misuse _refcount (it did not allow for speculative accesses, thought it had sole ownership of that field); but s390 copes well with that, and I expect powerpc can do so too, without the luxury of pt_frag_refcount. But I've no desire to undo powerpc's use of pt_frag_refcount: just warning that we may want to undo any use of it in s390. I thought I had more issues to mention, probably Gerald will remind me of a whole new unexplored dimension! gmap perhaps. Hugh > + }; > + > +#if ALLOC_SPLIT_PTLOCKS > + spinlock_t *ptl; > +#else > + spinlock_t ptl; > +#endif > +}; > + > +#define TABLE_MATCH(pg, pt) \ > + static_assert(offsetof(struct page, pg) == offsetof(struct ptdesc, pt)) > +TABLE_MATCH(flags, __page_flags); > +TABLE_MATCH(compound_head, pt_list); > +TABLE_MATCH(compound_head, _pt_pad_1); > +TABLE_MATCH(pmd_huge_pte, pmd_huge_pte); > +TABLE_MATCH(mapping, _pt_s390_gaddr); > +TABLE_MATCH(pt_mm, pt_mm); > +TABLE_MATCH(ptl, ptl); > +#undef TABLE_MATCH > +static_assert(sizeof(struct ptdesc) <= sizeof(struct page)); > + > /* > * No-op macros that just return the current protection value. Defined here > * because these macros can be used even if CONFIG_MMU is not defined. > -- > 2.40.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 15 08:05:48 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 15 Jun 2023 08:05:48 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549452.857992 (Exim 4.92) (envelope-from ) id 1q9hz3-0006NJ-QU; Thu, 15 Jun 2023 08:05:33 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549452.857992; Thu, 15 Jun 2023 08:05:33 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9hz3-0006NC-Ni; Thu, 15 Jun 2023 08:05:33 +0000 Received: by outflank-mailman (input) for mailman id 549452; Thu, 15 Jun 2023 08:05:31 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9hz1-0006N6-JY for xen-devel@lists.xenproject.org; Thu, 15 Jun 2023 08:05:31 +0000 Received: from NAM11-DM6-obe.outbound.protection.outlook.com (mail-dm6nam11on20624.outbound.protection.outlook.com [2a01:111:f400:7eaa::624]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 6398cabd-0b53-11ee-8611-37d641c3527e; Thu, 15 Jun 2023 10:05:28 +0200 (CEST) Received: from BN9PR03CA0542.namprd03.prod.outlook.com (2603:10b6:408:138::7) by CY5PR12MB6454.namprd12.prod.outlook.com (2603:10b6:930:36::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.37; Thu, 15 Jun 2023 08:05:25 +0000 Received: from BN8NAM11FT041.eop-nam11.prod.protection.outlook.com (2603:10b6:408:138:cafe::84) by BN9PR03CA0542.outlook.office365.com (2603:10b6:408:138::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.37 via Frontend Transport; Thu, 15 Jun 2023 08:05:24 +0000 Received: from SATLEXMB04.amd.com (165.204.84.17) by BN8NAM11FT041.mail.protection.outlook.com (10.13.177.18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6500.25 via Frontend Transport; Thu, 15 Jun 2023 08:05:24 +0000 Received: from SATLEXMB08.amd.com (10.181.40.132) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Thu, 15 Jun 2023 03:05:24 -0500 Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB08.amd.com (10.181.40.132) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Thu, 15 Jun 2023 01:05:24 -0700 Received: from [10.71.193.39] (10.180.168.240) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.23 via Frontend Transport; Thu, 15 Jun 2023 03:05:22 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 6398cabd-0b53-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=l2bx89wsTFQf2IphOZWoJ6i2CvFCZ603H0gTKGJFkLS0CkaRX2NUMqKpSPRKbXLztZQ64WLWzloUHCTdfIQmuYOkCtVmNvYnjjOikyfUn4rXhgVR42cZe4e5MFMGgu+6/0va2iRQcau6+YmsJDZISW522GnDJMi5GAJmGMDWCTJGsP18HFMiHHFIxdlNbA4fQ1W9jksZ7H5LtSVG/KL75iFQouH1fGOUlrsc9ZbqFqHpuZKX/GsScMf0N2UjtqKMhNF8XfKqBxZ2DkEn4DdH5KXo7jZaUtpphakv5Ss5DTr75LD1k9RITuixXt2sSoVG0k3ugm0rzxXcog4C2Mv58w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=NnLnADTVkCwXvkAgc60AJ1gSX2AAZrRirUMni6+dhN0=; b=MYNhqKopjI8Qhgj3o2V23abB7Du4DyWx3PoI45MGLJdbbM2jfWGhnmZdRwEqkHb46XqJTsqoNZeWviRCVtJ8vkxZmcAvX9Mq2P/+bXZaq4x21+lcy4T89W/WHvdU4KgG5m36P3lgVt9fS8vealgs5WfgH77mWaefPl7jOhv3F7v37dZtNSw+HxndMnlTOvxSzfq7qU+sQ1mZHZO8l6rwHE3Ny9fZA3GYfig3qQcBV80HAjMET+C8YVhgeMJpud2fqh3/CQ+bpQ/3MfK9ckmxuXx4+WQOrfh0/9koz0hKJhF0U5ISpbxD2rqJy68TvCCPtjYGDpnoJtTqBOR5fKwW9g== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=NnLnADTVkCwXvkAgc60AJ1gSX2AAZrRirUMni6+dhN0=; b=RPTfZqk8hSaFB6vRRlCXrRcb/lMEmbzpw/qLu+MDhOhdqlRfhpCAuFKLV6bOubIEbxmXylUN6Cri3fo9vgbZ6aspaQPYppfN0RgVXT/ReD9w+XEUJasDu6dgSPw99PaYYNloXrW4szRd0JKz87SRdTkp9Iwsp9fqfM2IOSd9rGA= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C Message-ID: Date: Thu, 15 Jun 2023 10:05:21 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [XEN v8 1/5] xen/arm: p2m: Use the pa_range_info table to support ARM_32 and ARM_64 Content-Language: en-US To: Ayan Kumar Halder , CC: , , , , , , , , , References: <20230602120754.23817-1-ayan.kumar.halder@amd.com> <20230602120754.23817-2-ayan.kumar.halder@amd.com> From: Michal Orzel In-Reply-To: <20230602120754.23817-2-ayan.kumar.halder@amd.com> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BN8NAM11FT041:EE_|CY5PR12MB6454:EE_ X-MS-Office365-Filtering-Correlation-Id: edc56542-3829-43e3-2107-08db6d774616 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: QQBYlpQcPE0FdOv7AvxTxDsVqTsn/0hXIR4yoXbDEE9/PSdjgb/o38y71sLVlgbXybq5/zdJ9vV8Fkvpo4+/bdcS0mYdlLSAHszODPL8L3E3cZI1qItovla8ubcfmEI+UFCDR8CQY+LoEVWqfusKUvTMOXeAyUUJ2fVh4XOzWZTnJcZ+sAeGFSsr7fftq9X6jraNbGLh6GluxCKN03/D7+SJt3q5Tu6LvVUtMk/y5zrTJH5eIgqbKcbEISNlL0qj+dCKF2wsWPzO7rjA9RwgRadf6AwZWeY/KSyoWBd6h/xrreHT76SH4wPwhxJsan+sI24aK5zIU1ZBfPGdcN7TwAAv46MHIIGx5DW3iZcGVDzi+Otcks1jsJmVrtnBqMGKeWNeefrSHzgWbdBFR279XyYjTXLTgcAtnrkvJztS+XppFr9DAYmbyXyXri/Svzft1GsBF8svDuSYWe4cLc82K7hmwuqEumgqmgciHJTN5UyQom74HNk5kx02zlgQm1sAX0dJg4cdVkhVLvxVT0tmzNoy9EA9/S9hIDgxsdauvSYm5WnSGtLvxDfz69BdoWvd6EBhwlPzdijevW81rseBPJ/7GoH2li0a/CKSzk37bGFOTimqR8gBPbgAaFiwJYlDbeFrV69J65q1C9T2R7KoyG73UddGn9FGQe+kYc5zyIIAJIj1SYpek5uLCLRxXYRJxfiH6jWM8hdV4+kojtnUcFT6cX91I9SsLEIzcE3eq9fnIe5GKpkEvr+uGX2z1AugEYbnD6Na+KJFcevy/0VGArpdwx4BtmigemRCfObKsj0= X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(376002)(39860400002)(346002)(396003)(136003)(451199021)(36840700001)(40470700004)(46966006)(82740400003)(356005)(81166007)(40460700003)(40480700001)(478600001)(16576012)(54906003)(110136005)(7416002)(316002)(44832011)(41300700001)(5660300002)(8936002)(8676002)(70586007)(2906002)(70206006)(4326008)(47076005)(426003)(83380400001)(82310400005)(36860700001)(336012)(26005)(186003)(53546011)(2616005)(31696002)(36756003)(86362001)(31686004)(43740500002)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Jun 2023 08:05:24.6979 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: edc56542-3829-43e3-2107-08db6d774616 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com] X-MS-Exchange-CrossTenant-AuthSource: BN8NAM11FT041.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY5PR12MB6454 Hi Ayan, On 02/06/2023 14:07, Ayan Kumar Halder wrote: > > > Restructure the code so that one can use pa_range_info[] table for both > ARM_32 as well as ARM_64. I grepped for ARM_{32,64} in our code base and could not find any use in source files except for things introduced by this commit. While I'm ok with it in a commit message I think for consistency we should be using arm32/arm64 in the code. > > Also, removed the hardcoding for P2M_ROOT_ORDER and P2M_ROOT_LEVEL as > p2m_root_order can be obtained from the pa_range_info[].root_order and > p2m_root_level can be obtained from pa_range_info[].sl0. > > Refer ARM DDI 0406C.d ID040418, B3-1345, > "Use of concatenated first-level translation tables > > ...However, a 40-bit input address range with a translation granularity of 4KB > requires a total of 28 bits of address resolution. Therefore, a stage 2 > translation that supports a 40-bit input address range requires two concatenated > first-level translation tables,..." > > Thus, root-order is 1 for 40-bit IPA on ARM_32. > > Refer ARM DDI 0406C.d ID040418, B3-1348, > > "Determining the required first lookup level for stage 2 translations > > For a stage 2 translation, the output address range from the stage 1 > translations determines the required input address range for the stage 2 > translation. The permitted values of VTCR.SL0 are: > > 0b00 Stage 2 translation lookup must start at the second level. > 0b01 Stage 2 translation lookup must start at the first level. > > VTCR.T0SZ must indicate the required input address range. The size of the input > address region is 2^(32-T0SZ) bytes." > > Thus VTCR.SL0 = 1 (maximum value) and VTCR.T0SZ = -8 when the size of input > address region is 2^40 bytes. > > Thus, pa_range_info[].t0sz = 1 (VTCR.S) | 8 (VTCR.T0SZ) ie 11000b which is 24. > > VTCR.T0SZ, is bits [5:0] for ARM_64. > VTCR.T0SZ is bits [3:0] and S(sign extension), bit[4] for ARM_32. > > For this, we have used struct bitfields to convert pa_range_info[].t0sz to its > ARM_32 variant. > > pa_range_info[] is indexed by ID_AA64MMFR0_EL1.PARange which is present in Arm64 > only. This is the reason we do not specify the indices for ARM_32. Also, we > duplicated the entry "{ 40, 24/*24*/, 1, 1 }" between ARM_64 and > ARM_32. This is done to avoid introducing extra #if-defs. > > Signed-off-by: Ayan Kumar Halder > --- > Changes from - > > v3 - 1. New patch introduced in v4. > 2. Restructure the code such that pa_range_info[] is used both by ARM_32 as > well as ARM_64. > > v4 - 1. Removed the hardcoded definitions of P2M_ROOT_ORDER and P2M_ROOT_LEVEL. > The reason being root_order will not be always 1 (See the next patch). > 2. Updated the commit message to explain t0sz, sl0 and root_order values for > 32-bit IPA on Arm32. > 3. Some sanity fixes. > > v5 - pa_range_info is indexed by system_cpuinfo.mm64.pa_range. ie > when PARange is 0, the PA size is 32, 1 -> 36 and so on. So pa_range_info[] has > been updated accordingly. > For ARM_32 pa_range_info[0] = 0 and pa_range_info[1] = 0 as we do not support > 32-bit, 36-bit physical address range yet. > > v6 - 1. Added pa_range_info[] entries for ARM_32 without indices. Some entry > may be duplicated between ARM_64 and ARM_32. > 2. Recalculate p2m_ipa_bits for ARM_32 from T0SZ (similar to ARM_64). > 3. Introduced an union to reinterpret T0SZ bits between ARM_32 and ARM_64. > > v7 - 1. Used struct bifield instead of union to reinterpret T0SZ bits between > ARM_32 and ARM_64. > 2. Removed the invalid entry for ARM_32. > > xen/arch/arm/include/asm/p2m.h | 6 ---- > xen/arch/arm/p2m.c | 50 +++++++++++++++++++++++++--------- > 2 files changed, 37 insertions(+), 19 deletions(-) > > diff --git a/xen/arch/arm/include/asm/p2m.h b/xen/arch/arm/include/asm/p2m.h > index f67e9ddc72..940495d42b 100644 > --- a/xen/arch/arm/include/asm/p2m.h > +++ b/xen/arch/arm/include/asm/p2m.h > @@ -14,16 +14,10 @@ > /* Holds the bit size of IPAs in p2m tables. */ > extern unsigned int p2m_ipa_bits; > > -#ifdef CONFIG_ARM_64 > extern unsigned int p2m_root_order; > extern unsigned int p2m_root_level; > #define P2M_ROOT_ORDER p2m_root_order > #define P2M_ROOT_LEVEL p2m_root_level > -#else > -/* First level P2M is always 2 consecutive pages */ > -#define P2M_ROOT_ORDER 1 > -#define P2M_ROOT_LEVEL 1 > -#endif > > struct domain; > > diff --git a/xen/arch/arm/p2m.c b/xen/arch/arm/p2m.c > index 418997843d..76388ba54b 100644 > --- a/xen/arch/arm/p2m.c > +++ b/xen/arch/arm/p2m.c > @@ -19,9 +19,9 @@ > > #define INVALID_VMID 0 /* VMID 0 is reserved */ > > -#ifdef CONFIG_ARM_64 > unsigned int __read_mostly p2m_root_order; > unsigned int __read_mostly p2m_root_level; > +#ifdef CONFIG_ARM_64 > static unsigned int __read_mostly max_vmid = MAX_VMID_8_BIT; > /* VMID is by default 8 bit width on AArch64 */ > #define MAX_VMID max_vmid > @@ -2247,16 +2247,6 @@ void __init setup_virt_paging(void) > /* Setup Stage 2 address translation */ > register_t val = VTCR_RES1|VTCR_SH0_IS|VTCR_ORGN0_WBWA|VTCR_IRGN0_WBWA; > > -#ifdef CONFIG_ARM_32 > - if ( p2m_ipa_bits < 40 ) > - panic("P2M: Not able to support %u-bit IPA at the moment\n", > - p2m_ipa_bits); > - > - printk("P2M: 40-bit IPA\n"); > - p2m_ipa_bits = 40; > - val |= VTCR_T0SZ(0x18); /* 40 bit IPA */ > - val |= VTCR_SL0(0x1); /* P2M starts at first level */ > -#else /* CONFIG_ARM_64 */ > static const struct { > unsigned int pabits; /* Physical Address Size */ > unsigned int t0sz; /* Desired T0SZ, minimum in comment */ > @@ -2265,6 +2255,7 @@ void __init setup_virt_paging(void) > } pa_range_info[] __initconst = { > /* T0SZ minimum and SL0 maximum from ARM DDI 0487H.a Table D5-6 */ > /* PA size, t0sz(min), root-order, sl0(max) */ > +#ifdef CONFIG_ARM_64 > [0] = { 32, 32/*32*/, 0, 1 }, > [1] = { 36, 28/*28*/, 0, 1 }, > [2] = { 40, 24/*24*/, 1, 1 }, > @@ -2273,11 +2264,28 @@ void __init setup_virt_paging(void) > [5] = { 48, 16/*16*/, 0, 2 }, > [6] = { 52, 12/*12*/, 4, 2 }, > [7] = { 0 } /* Invalid */ > +#else > + { 40, 24/*24*/, 1, 1 } > +#endif > }; > > unsigned int i; > unsigned int pa_range = 0x10; /* Larger than any possible value */ > > +#ifdef CONFIG_ARM_32 > + /* > + * Typecast pa_range_info[].t0sz into ARM_32 bit variant. > + * > + * VTCR.T0SZ is bits [3:0] and S(sign extension), bit[4] for ARM_32. > + * Thus, pa_range_info[].t0sz is translated to its ARM_32 variant using > + * struct bitfields. > + */ > + struct > + { > + signed int val:5; > + } t0sz_32; > +#else > + no need for this empty line > /* > * Restrict "p2m_ipa_bits" if needed. As P2M table is always configured > * with IPA bits == PA bits, compare against "pabits". > @@ -2291,6 +2299,7 @@ void __init setup_virt_paging(void) > */ > if ( system_cpuinfo.mm64.vmid_bits == MM64_VMID_16_BITS_SUPPORT ) > max_vmid = MAX_VMID_16_BIT; > +#endif > > /* Choose suitable "pa_range" according to the resulted "p2m_ipa_bits". */ > for ( i = 0; i < ARRAY_SIZE(pa_range_info); i++ ) > @@ -2304,26 +2313,41 @@ void __init setup_virt_paging(void) > > /* pa_range is 4 bits but we don't support all modes */ this comment makes sense really only on arm64 as it refers to PARange field of ID_AA64MMFR0_EL1. > if ( pa_range >= ARRAY_SIZE(pa_range_info) || !pa_range_info[pa_range].pabits ) > - panic("Unknown encoding of ID_AA64MMFR0_EL1.PARange %x\n", pa_range); > + { > + /* > + * In case of ARM_64, we do not support this encoding of > + * ID_AA64MMFR0_EL1.PARange > + */ > + panic("Unsupported value for p2m_ipa_bits = 0x%x\n", p2m_ipa_bits); NIT: Putting variable names in messages visible by users is not a great idea IMO. "Unsupported IPA size" would read better. Furthermore, I do not think printing IPA size in hex is beneficial. I would use "%u bits" (i.e. 32 bits reads better than 0x20 bits). > + } > > +#ifdef CONFIG_ARM_64 > val |= VTCR_PS(pa_range); > val |= VTCR_TG0_4K; > > /* Set the VS bit only if 16 bit VMID is supported. */ > if ( MAX_VMID == MAX_VMID_16_BIT ) > val |= VTCR_VS; > +#endif > + > val |= VTCR_SL0(pa_range_info[pa_range].sl0); > val |= VTCR_T0SZ(pa_range_info[pa_range].t0sz); > > p2m_root_order = pa_range_info[pa_range].root_order; > p2m_root_level = 2 - pa_range_info[pa_range].sl0; > + > +#ifdef CONFIG_ARM_64 > p2m_ipa_bits = 64 - pa_range_info[pa_range].t0sz; > +#else > + t0sz_32.val = pa_range_info[pa_range].t0sz; > + p2m_ipa_bits = 32 - t0sz_32.val; > +#endif > > printk("P2M: %d-bit IPA with %d-bit PA and %d-bit VMID\n", > p2m_ipa_bits, > pa_range_info[pa_range].pabits, > ( MAX_VMID == MAX_VMID_16_BIT ) ? 16 : 8); > -#endif > + > printk("P2M: %d levels with order-%d root, VTCR 0x%"PRIregister"\n", > 4 - P2M_ROOT_LEVEL, P2M_ROOT_ORDER, val); > > -- > 2.17.1 > > ~Michal From xen-devel-bounces@lists.xenproject.org Thu Jun 15 08:07:33 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 15 Jun 2023 08:07:33 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549459.858003 (Exim 4.92) (envelope-from ) id 1q9i0o-0006ys-BK; Thu, 15 Jun 2023 08:07:22 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549459.858003; Thu, 15 Jun 2023 08:07:22 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9i0o-0006yl-6k; Thu, 15 Jun 2023 08:07:22 +0000 Received: by outflank-mailman (input) for mailman id 549459; Thu, 15 Jun 2023 08:07:20 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9i0m-0006yd-9C for xen-devel@lists.xenproject.org; Thu, 15 Jun 2023 08:07:20 +0000 Received: from NAM11-CO1-obe.outbound.protection.outlook.com (mail-co1nam11on20624.outbound.protection.outlook.com [2a01:111:f400:7eab::624]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id a46c0923-0b53-11ee-8611-37d641c3527e; Thu, 15 Jun 2023 10:07:18 +0200 (CEST) Received: from DM6PR02CA0138.namprd02.prod.outlook.com (2603:10b6:5:1b4::40) by BL1PR12MB5995.namprd12.prod.outlook.com (2603:10b6:208:39b::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.25; Thu, 15 Jun 2023 08:07:12 +0000 Received: from SA2PEPF00001509.namprd04.prod.outlook.com (2603:10b6:5:1b4:cafe::c0) by DM6PR02CA0138.outlook.office365.com (2603:10b6:5:1b4::40) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.38 via Frontend Transport; Thu, 15 Jun 2023 08:07:12 +0000 Received: from SATLEXMB03.amd.com (165.204.84.17) by SA2PEPF00001509.mail.protection.outlook.com (10.167.242.41) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6500.27 via Frontend Transport; Thu, 15 Jun 2023 08:07:11 +0000 Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Thu, 15 Jun 2023 03:07:10 -0500 Received: from [10.71.193.39] (10.180.168.240) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.23 via Frontend Transport; Thu, 15 Jun 2023 03:07:08 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: a46c0923-0b53-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=OS+qmHp5PohZP2hDax7i1OresOMQB7XqID7XUEszO7D/DuLE3dmLqUlrMALJsM/rHqSypYJzWejKvrm8oxZ1+VUBQxmxqi3RxlRu9n8LCr2R+JQAH9L5dfwHmWgTxDVKyZhegJIADx/wpR3CMwYOjOGx8t/lDrPpkGa0TxBJ0vCvvqqRRk4zqboYjd3iWvpl1RsLe6FLBW4nZdoFnv/bKse3fJo9XMNXLTNMRevABLuUj6geATWq1TWbpcykuS5tCeZuQK4nB8K1DyKkwyJ5Z9iee+4QI9ETPvJ8nA1NRVtYEJZ6lHXcdQLlv2xmfp6y7rhlcWTGUZSPcT08bzAgqA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=kG92KfOdPScVe4jWWPZdt3Md0Q0upSN9BDzoXqj98cM=; b=NkT7AVpNv2XFZ/0ZVMpFeWkL0ERnJ8hyXZFjCfdBTK8grz5K4KCefMbOdLxjPnbzj8umzjMi7Jb+fcPsTCE3E4ipCrOXVZosnML6OQzam1AdTKAZbaAcC9ffgQPzHlCjPnZLkmrdqdNXjWcnqnIhgjge3inBc50qQP2CAWpFVdIUmIWje3nqqsyFLSxqyNEyfRgqak0Wy0EdjBqpYinZAzjXJSW7YvcokmAcRhKU9caDnXb4iSVnjk73+J/yq8sM8Q36/aPX7U95lF26RDJK2AOPSMm6wxRWrLuHMbLVFoIwwZDoWJKnb7ORz46PKWMb02lZ4VWWgBYQcOckLgNcHQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=kG92KfOdPScVe4jWWPZdt3Md0Q0upSN9BDzoXqj98cM=; b=mYqZznZBOjqYpfTbNEMBqMPYrDkeBaJ7xsdO+D38JwXuuWvUeahc4/Bn/IJBC8DkQyw8t9TWrGku1lxEZUvbA8G8B/bPoomkUEtmhXnZpIjnIXmbjV63F5R2fgcw0mNjJ1XULTVGeu21FZDhEkEH90XuOrQO8yVLQVQPxz5SywM= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C Message-ID: <5ab989bb-2ef7-d8bb-16f7-ec3a46142b72@amd.com> Date: Thu, 15 Jun 2023 10:07:08 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [XEN v8 5/5] xen/arm: p2m: Enable support for 32bit IPA for ARM_32 Content-Language: en-US To: Ayan Kumar Halder , CC: , , , , , , , , , References: <20230602120754.23817-1-ayan.kumar.halder@amd.com> <20230602120754.23817-6-ayan.kumar.halder@amd.com> From: Michal Orzel In-Reply-To: <20230602120754.23817-6-ayan.kumar.halder@amd.com> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SA2PEPF00001509:EE_|BL1PR12MB5995:EE_ X-MS-Office365-Filtering-Correlation-Id: 0089b738-070d-42e7-880d-08db6d77860c X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: AuIz4vkNKTh+SDJFiwY2kI8l5W59SmlMfjj8ZydMd+zhptTkFcy/LovzQumm2Jq2+g7rQ9NAw4pgY5zNoaQcILqiJGgI8G2yhtf7AIyw94ikY/OTpDBTZNytDmI+65XUBanRlQ+piDLJfdOmdaIyKzVXWAex0kCtok1UuNNoNMV2Hkuh6ilkeEvuqepuC2VHbIBVuKT+WbTHUX7MRLygTVAT/nHYj9TK5SRVEur2ZRgnDmLUNYze8OjQtxWuUlG9u3tCMCsklVA0DAMhdeQqqh1SQ9nBoY4vg54Ke35gBX9eoLWyeupDPXUPymiHWBKzCQViyC04rq1/Mcd0GvtqMCCXDinmQkW6TeJy8MWVz08EtPC1a+nJcfF7Wq6YIyFobV9zTdGfiEowBbByJ+cYgzG3fbv/DynGgc+U6baJFdcuif63uqWgL2IAs2lc5jy5Bu/DVNo4nSnOCMiW+gRuEPkkCxG7V919AwPlrXN6Pu8d6NH3nYCgCKupEi74yj/JftpJk6Z2sVZgClgA8Q6vwcwHDnHdl1X4Le73Ypg0kZ0VQxGJ3m7JhAJyGE5RKlZMQng28jAiWJHOqMLoy7BF1zNVrIOV90YYUZ3LZ43q7vrOPveoM2elgYyLhtv2ZPz/LToCZP0fQ52d3AlZ1wlZtDAsu+vhwQSexTpKnMTu+sl7mA2XysPxTkiEXbORtc593bIo5JinCNA/xYnavDXDamqLA0tpb0jhV+1Ad/KHOkSdyFnGoptHwMSLZLuTVt+0cPFT3LsdcvW7tjrLWjadAXp1LBjrQ15hPP6sSfIP2nGyEjTWv2HeWrtcg5fOo4/d X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(346002)(376002)(396003)(136003)(451199021)(40470700004)(46966006)(36840700001)(81166007)(478600001)(82740400003)(356005)(82310400005)(40480700001)(83380400001)(47076005)(426003)(336012)(2616005)(36860700001)(186003)(26005)(53546011)(36756003)(40460700003)(316002)(41300700001)(70206006)(70586007)(4326008)(44832011)(7416002)(31696002)(86362001)(2906002)(31686004)(5660300002)(8936002)(8676002)(110136005)(54906003)(16576012)(36900700001)(43740500002);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Jun 2023 08:07:11.9936 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 0089b738-070d-42e7-880d-08db6d77860c X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com] X-MS-Exchange-CrossTenant-AuthSource: SA2PEPF00001509.namprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: BL1PR12MB5995 On 02/06/2023 14:07, Ayan Kumar Halder wrote: > > > Refer ARM DDI 0406C.d ID040418, B3-1345, > > "A stage 2 translation with an input address range of 31-34 bits can > start the translation either: > > - With a first-level lookup, accessing a first-level translation > table with 2-16 entries. > > - With a second-level lookup, accessing a set of concatenated > second-level translation tables" > > Thus, for 32 bit IPA, there will be no concatenated root level tables. > So, the root-order is 0. > > Also, Refer ARM DDI 0406C.d ID040418, B3-1348 > "Determining the required first lookup level for stage 2 translations > > For a stage 2 translation, the output address range from the stage 1 > translations determines the required input address range for the stage 2 > translation. The permitted values of VTCR.SL0 are: > 0b00 Stage 2 translation lookup must start at the second level. > 0b01 Stage 2 translation lookup must start at the first level. > > VTCR.T0SZ must indicate the required input address range. The size of > the input address region is 2^(32-T0SZ) bytes." > > Thus VTCR.SL0 = 1 (maximum value) and VTCR.T0SZ = 0 when the size of > input address region is 2^32 bytes. > > Signed-off-by: Ayan Kumar Halder Reviewed-by: Michal Orzel ~Michal From xen-devel-bounces@lists.xenproject.org Thu Jun 15 08:22:47 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 15 Jun 2023 08:22:47 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549467.858012 (Exim 4.92) (envelope-from ) id 1q9iFT-0000xY-DJ; Thu, 15 Jun 2023 08:22:31 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549467.858012; Thu, 15 Jun 2023 08:22:31 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9iFT-0000xR-AS; Thu, 15 Jun 2023 08:22:31 +0000 Received: by outflank-mailman (input) for mailman id 549467; Thu, 15 Jun 2023 08:22:30 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9iFR-0000xL-W8 for xen-devel@lists.xenproject.org; Thu, 15 Jun 2023 08:22:30 +0000 Received: from EUR05-AM6-obe.outbound.protection.outlook.com (mail-am6eur05on20608.outbound.protection.outlook.com [2a01:111:f400:7e1b::608]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id c3fff3e5-0b55-11ee-b232-6b7b168915f2; Thu, 15 Jun 2023 10:22:28 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by DB9PR04MB9940.eurprd04.prod.outlook.com (2603:10a6:10:4c1::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.46; Thu, 15 Jun 2023 08:22:26 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.039; Thu, 15 Jun 2023 08:22:26 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: c3fff3e5-0b55-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=JedKUNE9p6YcHIKRneretAmo2nw7DtCcrSD7cACq+rSt7RH0SZ/9QQQmSe6ef0DUAIo0mPMhjZN7h/zEHmHzxSINFhA7bVGUizYlZvi4Hi54JvysEJuqjQe888/3y6ibYrwpA5pVXjisoZV8SvScx849PNeRfNimpfuGlwKgk3EdJtirH2AfkVKRE1fMxdI2jcxlYTnZ1JXb3s/cgeQv6eYlFT8odn6WTbqgkAsBbFfW8EO1rJuAxMwXtLLZRdbfpxNxIGX8jBwSx3BHLt/oXZmbxTXCY/zBf1thqKS+v1o4vtKroD0+YjgPib3OJ9YgVT6vGFJyS9PGhmFhtCKpPQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=iIrFIpWMHz3XJx/JGfisJkze9hbqIriLrzyI90IHmxM=; b=RZIAKIkV5kXcxjtF9ahzX/XkBzwJz2LwqJloX47q8jzatmHjJ0kFE9d7nfYOtOCQ3aiYA5oJAvd4pEL05lb+Tj4nBJ0dHNOZ1FauD7T7Zn10GAbf7S6+vxit+Uh/dVxufnf/iBlkrDZi8ZAh6BArdRT8wTPIH3n12kque+Z7DMxSUDvuIcC1tu00mOqP+I/i5viST1Olbw4Qxbm5GWSqSH/gAczwi03U+P4iFJVuixZzTP0O2/SuuhZnTy5FvG1w0od+1FBjXCc6VzuM8BAM5NSJ34WlJx9E/nK3nt9G/0f79RO8zTE6SCmIpcq1BBzzwPLxYP8K1wnmhR38yumpLg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=iIrFIpWMHz3XJx/JGfisJkze9hbqIriLrzyI90IHmxM=; b=Ob20wu8nNatw5jR43NyolR7AOmIzLQ+IC6TR/8TaZJkX6To9uDliKylFLbDZ8WhnQyc/LVDH9bHU4tKhDhKNUhXegF3JT0AxkAWsl6pThj4tTlGn+/caaYJyWFiWhT9MQRiZwyORA2gPgUisic2mnn6NbxvGrw44wqcBC1E6Cys7WCPwDvEWUZm6+DfXDBWT87aBH/mO0R23G6oHPZyEr6COTMpHZrVbOr9Lx2qaGfUZj0z4SFUYfFGnMg/nZJBgLIavdxcHK6DI2nmC6zc/aeNk2092ues11sw05GuU40Z1N8vwZMiBngSp5eIQTCpMn2YDm85q5epo4HV4VawqgA== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <7302e44e-3b27-84e6-72ca-55e6e5f148c5@suse.com> Date: Thu, 15 Jun 2023 10:22:24 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v3 3/4] x86/spec-ctrl: Fix up the RSBA/RRSBA bits as appropriate Content-Language: en-US To: Andrew Cooper Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , Xen-devel References: <20230612161306.2739572-1-andrew.cooper3@citrix.com> <20230612161306.2739572-4-andrew.cooper3@citrix.com> <81f74759-766a-bc3f-f4de-199cf3f1bd75@suse.com> From: Jan Beulich In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: FR3P281CA0074.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:1f::12) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|DB9PR04MB9940:EE_ X-MS-Office365-Filtering-Correlation-Id: b3402325-6238-4301-f84f-08db6d79a6c1 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: FMk91GcHQfbH6W77aP5w2/QbCtrsaGEGr0XQ9Id9kafkR4yqNNUJIP5jV5qsLWYaFVMgaZ0vQWk+BQpUb6FfWP2HHBaRzpPNw0ORJKESxl8JI0b0Gis6Z1YK1YmRPz7jgwf2klKGzK+As/rIg/vyjLDef7Wdsgeostle6T7D+sMZk75kDHTzWf9I+te8q5gsX0Z8eVyozV2MUr0lKirq0NZlHh/goc2/e74Q/q7vD69zfmO0f3Moje2TQZtsIZyLrtL9bBdaEng3DdxLhOutgPX3kApXhMGT6o09p0Xm/wXiMXqal+NQIh8NISSKLw36tOTfwlCk/64+qf1qpC2J+84FDhqReyBMI5dRvDxFHIanLPjzlkl0k4O0+1u3yAOE0TNMGkmAbM3qO6QwVSiN8KBQBiigaJLEwXEfS+lV8gO26suDmYhsnKsfPuYffih0MwgYP83qhFIQ5mIXRj9cOWc4lZaOx20SjdS+m+SjhAmbHGiz+ofjH38rQZlAHqvD8fXBUTj0Xq2QgxwUDRgm6GkeF9LdRM1wzkogNYZRr5KQWLeVe38lAiwx3H3muuQ53JnmqZDOiVkMcGGo7jd+355/d7WXE60plm8VNHkRGqXCCkmpe6QA730SYHr9Ij0i79Qn92TdhpqWES7wVfp+iw== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(39860400002)(346002)(396003)(376002)(136003)(366004)(451199021)(31686004)(86362001)(31696002)(8676002)(5660300002)(38100700002)(316002)(8936002)(41300700001)(66556008)(66476007)(6916009)(66946007)(4326008)(54906003)(2616005)(53546011)(186003)(6512007)(478600001)(6506007)(36756003)(26005)(2906002)(6486002)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?QlpKZ1hla28rcmZaQitBVnRCWHRMY0JIRUlNVTZCOG45MWljNWk3VFZkN1hh?= =?utf-8?B?ZlRHMWw5bXRaQVF0VDlBSVQvd0FGbkFKY0luRFlVc3FWaDBtQlNCUDFyV0FE?= =?utf-8?B?bk5aTG9jUWZvRnJMVkYzbnRYUktXTGFtczNubDVKMDZlelIzdm1wcGFGaHlp?= =?utf-8?B?QnZuNjg3TkFuNklwRHBqbFA1c0I5RHVSNnRiNlQ3Q3dUWUZlVTVIOEdLaVZu?= =?utf-8?B?bDZFc09xOW1hY1FZTkRQYjg2THRuMnRYaGxTV2RKSXBhT2xhcXVkYW5pRHBv?= =?utf-8?B?anl3a1didDlEamxMMW1WUEZZbFNYWnpFcFY1TThocCttRE16eHdDSFY5M2Uw?= =?utf-8?B?VERSNlpQaVRmbFEvVzdBL1ZUNjFWNkdpN0Q3aVVsRk1WUGJ2QjcvQTZscU85?= =?utf-8?B?UldmV1pINmlhRTZ1ZDRjdTVDNVYwVW9PWExpRXFkMmVzVGFVK05qMWxycTJB?= =?utf-8?B?S24yQXhScGp1U1dhV3dsZGd4ZW5KY21VRXRPVWh6aVVKQ1c5S2VWd3FKY1hl?= =?utf-8?B?Vng4M0JQT3d2UWN6VHFzMmZrSVpnV28zbUlJUzRvbHk0Tkpnai9NTkhGZjN4?= =?utf-8?B?ak14K2Eva2YwbEcvQkQ5V21zV2VvZldlMWdqUFlEcUtNOVI0Slhqc3lhRHJj?= =?utf-8?B?L0R0ZWZKamU3SWU5S0hzcVNOUFF2ZUJsMTB3Smgyck9teE1GQ0h3WDFvNUcz?= =?utf-8?B?ZjdtWVJIOTBLQ0xES2cxSzBYOUZtV0VpbmFmQVZIZzdXajR1NUZYVEUvQi8v?= =?utf-8?B?UHZRZm93Nlp4OUpWd1lLc0JxMjYwSGRrby9wUEV3cG1wZGpxaG9WVmFmUHUy?= =?utf-8?B?MHBjWk1rMFBEQmhhbGw2Mm1ENXBadzVBZWduaHYvRjFzU0cxRm1ad3ZoMVlS?= =?utf-8?B?SHVPdmZrUHNGTGMyRG1ZTTB3QXp4YmRKZlU2R3hQTlZtRlc0NCtyWGxLbFM3?= =?utf-8?B?cllialNtc1IxaCsybmVQUVRCMnYxWmJRbkxnS0FiUnBjMXcvYi9yd2JIalpP?= =?utf-8?B?WDVIRXArNGJLTUxOVUVZdzBpR2Ircld5bW1lYjI1NEcwOUcrTU5BbGpEb2N0?= =?utf-8?B?ODRVdlNEdmJHL0JXK3JWczFRZ3E2OEY0bFdORldONlBiQWk2R0hXa0FieVdB?= =?utf-8?B?V2NTNE45M3Yva1pFQy9ZM1FhNmFyaVJOWVN2RjRweG4ybmdPTS9vVXNhNlBS?= =?utf-8?B?aFhNanU1RmNDNXppaHFhTGdzeXJJTXI3R3R5Qi94dmdpV3gyVDV0OWdnTlZY?= =?utf-8?B?NWhTVjJ0U3FtdGdDWm0xZndQUDdaRHdsQ0lKVlQzRWNFQ0ZjSVRmc0orU0x0?= =?utf-8?B?cWt3WTRyMUhJMjlrclVNUC9tZWxMYUw3WVZGcXpCS1JHMGlWK3liRG01ak42?= =?utf-8?B?VEoxUDc2ZWpuWXpkRzZkUndFa2NTQW1QU0VEYVpOVjljb3J1V04rRi9RdTJ3?= =?utf-8?B?cm5TVHJlQ3Q3Y0M2SXp1MGNNUXQva2RXYi9qZEdEOXJDWGZNUUl2cnJHbmhL?= =?utf-8?B?ejBZUVFwL25zM3RqZDM3OXhwWGhCc3IzU245c2pLS1grQnIxVlI1eEtqZHcr?= =?utf-8?B?TUFNWCtxSXF6K0k1M2ZZTzR2dWt4ZXE4aGNJT1VqMkZHQmhmWlZRcHBxaEhr?= =?utf-8?B?RkRvWVpTaHdid2R5NUh4eGJNTmVTMzBYaDYyUVV6VkZuWHFuSGtRN2NCWTBl?= =?utf-8?B?K1h1OU9ETkRPOG1EdlNRSXZ5UnZwcUljRVRtYk00bVhoZndTQVBTVFFTT0kx?= =?utf-8?B?eU9ZeG92NTJXbjNiRTREV3FFTXpzYmYxNWZydkM2b2VNRDRuSG1BSmduWHVu?= =?utf-8?B?ZkFPQUg1YUlxMDdZV05aYko0aWx3ZkpHM3R1MTlhMk9PcVVzMUlnQ3RlSGN1?= =?utf-8?B?M2RlOFZTcThhMVNBU0psWHlhbitobDJwVFZXQ29uczZNeEdIKzM1ZTZINGJt?= =?utf-8?B?M09jdkNLekQyVVFPcy9LbUs0OGNBSnQ1TmlYYjBsQ2VodlV5eXFyaUVSb2R1?= =?utf-8?B?RkxpZ3pBOE5JQllTUjNPYUZsbEdUOHJrUU40SzFFZlBWRU5qdS9kbnIwSm5p?= =?utf-8?B?by9PWXA4WFoyN1R1ZmtiSndIWWFLQ0VqTEFDQ3NpN0RoTFpNbDk5WHFmT2wr?= =?utf-8?Q?ImldA+Z1/+Iq6Q/X2yaGGQii+?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: b3402325-6238-4301-f84f-08db6d79a6c1 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Jun 2023 08:22:26.0540 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: e+DTVK+Ukvu+grCmaFel9/qZWzStrJr430dI/I0CRmlq+Tawr1My3FOYZ/FstnJBjW7zLS2013wB0xdP/f3uFA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR04MB9940 On 14.06.2023 19:25, Andrew Cooper wrote: > On 13/06/2023 10:30 am, Jan Beulich wrote: >> On 12.06.2023 18:13, Andrew Cooper wrote: >>> @@ -593,15 +596,93 @@ static bool __init retpoline_calculations(void) >>> return false; >>> >>> /* >>> - * RSBA may be set by a hypervisor to indicate that we may move to a >>> - * processor which isn't retpoline-safe. >>> + * The meaning of the RSBA and RRSBA bits have evolved over time. The >>> + * agreed upon meaning at the time of writing (May 2023) is thus: >>> + * >>> + * - RSBA (RSB Alternative) means that an RSB may fall back to an >>> + * alternative predictor on underflow. Skylake uarch and later all have >>> + * this property. Broadwell too, when running microcode versions prior >>> + * to Jan 2018. >>> + * >>> + * - All eIBRS-capable processors suffer RSBA, but eIBRS also introduces >>> + * tagging of predictions with the mode in which they were learned. So >>> + * when eIBRS is active, RSBA becomes RRSBA (Restricted RSBA). >>> + * >>> + * - CPUs are not expected to enumerate both RSBA and RRSBA. >>> + * >>> + * Some parts (Broadwell) are not expected to ever enumerate this >>> + * behaviour directly. Other parts have differing enumeration with >>> + * microcode version. Fix up Xen's idea, so we can advertise them safely >>> + * to guests, and so toolstacks can level a VM safety for migration. >>> + * >>> + * The following states exist: >>> + * >>> + * | | RSBA | EIBRS | RRSBA | Notes | Action | >>> + * |---+------+-------+-------+--------------------+---------------| >>> + * | 1 | 0 | 0 | 0 | OK (older parts) | Maybe +RSBA | >>> + * | 2 | 0 | 0 | 1 | Broken | +RSBA, -RRSBA | >>> + * | 3 | 0 | 1 | 0 | OK (pre-Aug ucode) | +RRSBA | >>> + * | 4 | 0 | 1 | 1 | OK | | >>> + * | 5 | 1 | 0 | 0 | OK | | >>> + * | 6 | 1 | 0 | 1 | Broken | -RRSBA | >>> + * | 7 | 1 | 1 | 0 | Broken | -RSBA, +RRSBA | >>> + * | 8 | 1 | 1 | 1 | Broken | -RSBA | >> You've kept the Action column as you had it originally, despite no longer >> applying all the fixups. Wouldn't it make sense to mark those we don't do, >> e.g. by enclosing in parentheses? > > Hmm, yes.  How does this look? > > |   | RSBA | EIBRS | RRSBA | Notes              | Action (in principle) | > |---+------+-------+-------+--------------------+-----------------------| > | 1 |    0 |     0 |     0 | OK (older parts)   | Maybe +RSBA           | > | 2 |    0 |     0 |     1 | Broken             | (+RSBA, -RRSBA)       | > | 3 |    0 |     1 |     0 | OK (pre-Aug ucode) | +RRSBA                | > | 4 |    0 |     1 |     1 | OK                 |                       | > | 5 |    1 |     0 |     0 | OK                 |                       | > | 6 |    1 |     0 |     1 | Broken             | (-RRSBA)              | > | 7 |    1 |     1 |     0 | Broken             | (-RSBA, +RRSBA)       | > | 8 |    1 |     1 |     1 | Broken             | (-RSBA)               | Yes, I think it's better to have it this way, thanks. Jan From xen-devel-bounces@lists.xenproject.org Thu Jun 15 08:30:42 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 15 Jun 2023 08:30:42 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549474.858023 (Exim 4.92) (envelope-from ) id 1q9iNK-0002Rw-9s; Thu, 15 Jun 2023 08:30:38 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549474.858023; Thu, 15 Jun 2023 08:30:38 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9iNK-0002Rp-5W; Thu, 15 Jun 2023 08:30:38 +0000 Received: by outflank-mailman (input) for mailman id 549474; Thu, 15 Jun 2023 08:30:37 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9iNJ-0002Rj-6S for xen-devel@lists.xenproject.org; Thu, 15 Jun 2023 08:30:37 +0000 Received: from EUR04-VI1-obe.outbound.protection.outlook.com (mail-vi1eur04on0623.outbound.protection.outlook.com [2a01:111:f400:fe0e::623]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id e5dcdc18-0b56-11ee-8611-37d641c3527e; Thu, 15 Jun 2023 10:30:35 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by AM8PR04MB7298.eurprd04.prod.outlook.com (2603:10a6:20b:1df::24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.25; Thu, 15 Jun 2023 08:30:33 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.039; Thu, 15 Jun 2023 08:30:32 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: e5dcdc18-0b56-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=QEOjlj7GRpDJMXKe1bU6KM+3eyF+w13IQ3z4S7veu97R5oZc155LWWSzG3SZ4OZqXz11j37hcczLSwdUMlEEx9CCTA2dEMbDf7OIkvtawcW071Vd3d2Z1sNf3RleucYd1dCen23AUMFf5FHPt0b96JhOuCW5rD5b2Ba54gY1mHNLdQ0Dhx9ElTBbqNOqDg5OrQt0BSTE/FClqITcjXuMqbgj48OXiaTG64ahrWmK7RU2b3XQZm1atjzCwzC3KZHrDhg5yH3KUPK95Nbl21WG6aKrV/dTHiShvsmHeioaRuKqdkvdn2rvk4ZoI2ddKo8mzl2o+5nRxU+knIx/kq30vw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=ATz8cj1PVQEDTSdpW1keIKbkMyuBQdQ4uXROrJa78lY=; b=b4XIr9Ij8uS0GSHiYFSvXZU0T5/s6kyogBvm4LRTgRqIpbuaj6hpWw2Cbfg8jdDFaQO5VFa4W4H8xiIAX1lBw0watXIsfesGIGIncy+n7dk75Tn+MeRZk4+AKKyzf0YZv5V3akgq3EJcecy75EqnubTH3jo/hwLgnT3ZxsQ1YBFiQJJ2UEjzIzt5FS0dAZdsBd3ClZc6UAlw3l3pBwlbRuqFcLdd6YxkObI9s6oGMiesDlXq80D5WYRzzdXmhgPmj7+/R3D3O7BW4soAChEE7GX/ZRzQjHqUVxsWK0D6NO7kqyCW0NWzVVygCo8AVSQbFay3/cDe72xqa3aowwcB3w== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=ATz8cj1PVQEDTSdpW1keIKbkMyuBQdQ4uXROrJa78lY=; b=k0bofiYoX12apR7QBGNfH1Ot97Bq+rG7h2t7BiWItdePM41n/gi2KIdDYELtBAJuDsiiQpLxcrUP4zMRGqW5B1BPBPCr3fceQgoFtnvnQoRm/8SpAfZPFmKVgr2BWiBhNLHPeMV1masldnu0CiWBUBcderLDtc+S4WqNNaFFmG1UwepoRPMlnpJz9TFRWGo0Wu8in+25P0KEtR9A0V5rnWeaLhorlemC/kizOYaj9ufsI1bV5Bp/7H5Fd023FdGrOWRu98GceDIKHuExocWm1Y1Z98eC0SdeFe/wwUk1CygK5S/ytiEoo7w1BsoSSwl2ghwIS5Yi1uG62+I04CRlMw== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: Date: Thu, 15 Jun 2023 10:30:30 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v3 4/4] x86/cpu-policy: Derive RSBA/RRSBA for guest policies Content-Language: en-US To: Andrew Cooper Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , Xen-devel References: <20230612161306.2739572-1-andrew.cooper3@citrix.com> <20230612161306.2739572-5-andrew.cooper3@citrix.com> <82ee7908-4597-433c-0aca-8c0ad22fff13@suse.com> <386058fe-e9a8-d0e1-c3a0-3f15a4585bd5@citrix.com> From: Jan Beulich In-Reply-To: <386058fe-e9a8-d0e1-c3a0-3f15a4585bd5@citrix.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: FR3P281CA0132.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:94::12) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|AM8PR04MB7298:EE_ X-MS-Office365-Filtering-Correlation-Id: af0b3296-e22d-40e6-6fb3-08db6d7ac8dd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: K7fYeuxPBzGeOVmUyXpLrssXbNWhQF+jeTCWd+RP7hDViV0unbaixPufZJcdMezUaMwQd9NUlIGQELUjJgnZRy49Ox8NJZ9NQSSXU5B249+uIT1QI3NlcI6scLsSChSfBvMPm1fRyJof3aKVKiDlSsHRUcdsdQBZGDdF653SBnkeKoKqCke3aPKYvCswfZuUXAsyKS53x+o4yM8lqyr/u4zOcMMD6J4+Os42+oEVYYWW127U8ZZLeluImhw2+5jfNNl/5hBKswMKZ9C6ts4Ueho8fKTHommxoExPFhSmI03uTFUTVVs7/yaKunhw4A86uv3xG46wO1dIc7eihzb5Z/R+54F3x7dXWyLbwEZp+V60p1ufBeb+guHcxB9g5Bs6HsWXnnJiQ+yED6D4+eWuhjUZ61tmHTSOZ7CCM3IwXKNi9se7jR2kKWz7jHQbVeUVcxncEUgowUytpmBBP6l/dx9CiV6wywcVevo3AhRcSzs8u00dyFtCSXnQQ0jiWQ1+4X6I5CIylXxVK25pKmdQ9dTJIKdUT9rHgTnn1xBIC0Vdce+iEjMHIQTE9DrFkCmTGgj6ruJqbEgYXY4MPFzk+6uaMK32/Y9GNrRdGWLfIjvsL/Rx4GuO1i5Cs94ELNFAA+hymcJike39xoVFcBmCfQ== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(39860400002)(346002)(376002)(396003)(136003)(366004)(451199021)(478600001)(6486002)(38100700002)(83380400001)(2616005)(186003)(6512007)(26005)(6506007)(53546011)(36756003)(316002)(41300700001)(66476007)(66556008)(66946007)(6916009)(4326008)(31696002)(86362001)(2906002)(31686004)(5660300002)(8936002)(8676002)(54906003)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?d09TamRrME5jR05qc253MlFDa09WMjV1UzJUaW1UblVFNlA1cXBFQjdUTXdh?= =?utf-8?B?cTY2cjlHeGtFbXEycldFSkZaM3M0SGRvaWUrRERRODBXVzhmZC9ITEZtWDVW?= =?utf-8?B?ZUViaGNqZXRRREFXak53VHhINXNBUW5oUFgrL1dNM0xTcHF0Q3IvSVpQMHNC?= =?utf-8?B?dUwyMEpPdkgrb2YvSndIYmtEZlk4SE9ReHBNWlQwaDhMTUw0bkE1TEE2MzNT?= =?utf-8?B?Vm1UL3p5c0xZQ0FmQmRZeWRNclEyaTlTaWNIYkRjUkpJSi93dXlJaTI3c1BV?= =?utf-8?B?NHR1bW1ONlp5a0pLWjJuNmlZemx6WHUyKzRLRllPRHdUOXR0QVBwbThUZGI1?= =?utf-8?B?VStobXRMcVdDdEdXcFVDUkpvTk5mRDRXZHpxSEsrVEMwR1ZhbmIvZEJRQmla?= =?utf-8?B?Q3BwcW44M0tiMTBmcmUweE9KeEJSWXRrYXBLbksraHlNSmJtV2hJNTJka29Y?= =?utf-8?B?bEN2VVN4Mkh6eS8rYXlZNkZXd0NBUnFRY2tPR0ZrNzg5R09hRmZyOFYvM0tS?= =?utf-8?B?ZnNObG9GV2tXRkpWZTdPSHF0eExINEpUeS9kYVdPQWQxZ0hINEI4cXY2VDZT?= =?utf-8?B?ODBQNDVYZ2daa3ZDQU8wR3BQdTR2aEMweUVJdXZkRGd4enl4cUlKemVEY3lu?= =?utf-8?B?cllEZi95V09HRFBjS1h2YVQ4VkNXUHoxSk1HK1kzM2RXaVNRNzVXSGVQcDdF?= =?utf-8?B?UHFhb054NnovUjE3Q3Z1N2dSbC9DaFRKdEpaY0Y3ZExTcFVhNUJycEZSa0xW?= =?utf-8?B?ZlFZNzdySDQ3UEJIc093SDVXNUt4bFVQMEMxcW91c1krU2t0ZWhGK2l6TU5G?= =?utf-8?B?a1libVp5UzRJUVczaC9MZEJnRTR3M1JENVJnOVlpdWZBWU8rQ0ptNjc3Slo1?= =?utf-8?B?WFQ5dzFmajBrOUhCZ1IzejVHNzN5WnljaWJvYmVWUzR2NE80MjZWYkJzV242?= =?utf-8?B?OXhmU09tTVo0T2pzc0RIcXgvbHNBbTVEcFhybzBpVDE3Um1SbW5GcUVuZitS?= =?utf-8?B?Um8xbWpzRjJnTzE5eklqajE3SXJpQmFTN0JWV080eEhURzFVNlIzL2xqbHc0?= =?utf-8?B?K3ZVWUpTTjh3cEJTRWNVY0Q0cFIzU2FXS3llNFR1cUUxVk5oU2ozM09kT3Jn?= =?utf-8?B?WkRQbHUyVS94MWtnZ2NUeVFWQ0lPVWtDY1V3emltNk5KdnVyeUlmRG1oTlRa?= =?utf-8?B?K25JWU9aMytRSk5mV1FpVTRYdXczQ1RhdG8vR01qd1B3STMrYlYyVFdCa0JX?= =?utf-8?B?WUNleSs1SkRVZ0E2dE9pMGJtUE5ISVVIclh2MHI1ZWl0ZG5LMCtCRjV4elJF?= =?utf-8?B?OWpUZTdMYUQvemt1MkRDRzhPWFBsVWVIckEzNkxXUmdlVDBpbHF6d3dPQ2dR?= =?utf-8?B?dzYwZDFkYUowWkV0U1FTTGZzUm1xc3BtcUpLUHVETTBLZjlXSFIrcWFwSUho?= =?utf-8?B?Uk0wbE9hc1gvblZIN210czRtdlpsb2wzT043Sm9NaE5VaVh4alY2aGdhbktN?= =?utf-8?B?K0s4VHFuRlM4YmJ6aHpiV0VjUzB1WEZjUFFzR0pCL3BpMDg5Sk5VWlhBMDVz?= =?utf-8?B?SnlPZnpCTHdJc2pqMUZBbHpIdjlURUxBRUZadTVVenN3SEVWWFFyZGxjS2hO?= =?utf-8?B?K21Qc0ZjTHUvNEtnRFlESmVOYVB1WlpTU1pBRGZzUTlnYlh6K3JpcTAzT21y?= =?utf-8?B?ampTY2IwRncraDRNMTh1bkVaSlYzUUtHU1RZYy9IbWZmbzhyT1oreU10TFFs?= =?utf-8?B?RDMra1hVK1BxS3lZYzBia2VVNjVVbE85eXdlbXdWY3B5aFAwbHBpNGdpUXM4?= =?utf-8?B?Ykwzb3NNTnl4cWlRU0hBbG9KTndmZFBwZW1GRGs5KzdVSkQxSWNsZldGWXNW?= =?utf-8?B?WlpVdkxYOEw0ZldvQmdYS2FKVjRqM1lRT1QrMjF1NndVL09oK3YxcnhpWUVD?= =?utf-8?B?L2ZVS2Fac3Q4ejJlZVZZdWFhZzFNdFRoMjBCVmxPWVlZbWlJL3N4R2FQdWJ0?= =?utf-8?B?T0ZDdlI3UGoza0huRHZHU3VlVFR0Y09LU0VJelpDdEpMV0l2OEV6aU10NURV?= =?utf-8?B?cm5EOGZJSmhNMFY4WGJwRW5pWG9FdlBRMHdOTDZGRXAyVy9IUm9Uc2RhUFNM?= =?utf-8?Q?FHavsAnCIY1p5lfOvt4otftvY?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: af0b3296-e22d-40e6-6fb3-08db6d7ac8dd X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Jun 2023 08:30:32.7996 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: p8qybOMGSJDWRG66tOmx6UwXxfKqXUiqvZAYco3HxzBJAhhbEHlY6XLXtrRmAEoTgTt3ZIAAsGnFiF2K+WCYnw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM8PR04MB7298 On 14.06.2023 20:12, Andrew Cooper wrote: > On 13/06/2023 10:59 am, Jan Beulich wrote: >> On 12.06.2023 18:13, Andrew Cooper wrote: >>> The RSBA bit, "RSB Alternative", means that the RSB may use alternative >>> predictors when empty. From a practical point of view, this mean "Retpoline >>> not safe". >>> >>> Enhanced IBRS (officially IBRS_ALL in Intel's docs, previously IBRS_ATT) is a >>> statement that IBRS is implemented in hardware (as opposed to the form >>> retrofitted to existing CPUs in microcode). >>> >>> The RRSBA bit, "Restricted-RSBA", is a combination of RSBA, and the eIBRS >>> property that predictions are tagged with the mode in which they were learnt. >>> Therefore, it means "when eIBRS is active, the RSB may fall back to >>> alternative predictors but restricted to the current prediction mode". As >>> such, it's stronger statement than RSBA, but still means "Retpoline not safe". >>> >>> CPUs are not expected to enumerate both RSBA and RRSBA. >>> >>> Add feature dependencies for EIBRS and RRSBA. While technically they're not >>> linked, absolutely nothing good can come of letting the guest see RRSBA >>> without EIBRS. Nor a guest seeing EIBRS without IBRSB. Furthermore, we use >>> this dependency to simplify the max derivation logic. >>> >>> The max policies gets RSBA and RRSBA unconditionally set (with the EIBRS >>> dependency maybe hiding RRSBA). We can run any VM, even if it has been told >>> "somewhere you might run, Retpoline isn't safe". >>> >>> The default policies are more complicated. A guest shouldn't see both bits, >>> but it needs to see one if the current host suffers from any form of RSBA, and >>> which bit it needs to see depends on whether eIBRS is visible or not. >>> Therefore, the calculation must be performed after sanitise_featureset(). >>> >>> Signed-off-by: Andrew Cooper >>> --- >>> CC: Jan Beulich >>> CC: Roger Pau Monné >>> CC: Wei Liu >>> >>> v3: >>> * Minor commit message adjustment. >>> * Drop changes to recalculate_cpuid_policy(). Deferred to a later series. >> With this dropped, with the title not saying "max/default", and with >> the description also not mentioning "live" policies at all, I don't >> think this patch is self-consistent (meaning in particular: leaving >> aside the fact that there's no way right now to requests e.g. both >> RSBA and RRSBA for a guest; aiui it is possible for Dom0). >> >> As you may imagine I'm also curious why you decided to drop this. > > Because when I tried doing levelling in Xapi, I remembered why I did it > the way I did in v1, and why the v2 way was wrong. > > Xen cannot safely edit what the toolstack provides, so must not.  And this is the part I don't understand: Why can't we correct the (EIBRS,RSBA,RRSBA) tuple to a combination that is "legal"? At least as long as ... > Instead, failing the set_policy() call is an option, and is what we want > to do longterm, ... we aren't there. > but also happens to be wrong too in this case. An admin > may know that a VM isn't using retpoline, and may need to migrate it > anyway for a number of reasons, so any safety checks need to be in the > toolstack, and need to be overrideable with something like --force. Possibly leading to an inconsistent policy exposed to a guest? I guess this may be the only option when we can't really resolve an ambiguity, but that isn't the case here, is it? > I don't really associate "derive policies" with anything other than the > system policies.  Domain construction isn't any kind of derivation - > it's simply doing what the toolstack asks. Hmm, I see. To me, since we do certain adjustments, "derive" still fits there as well. But I'm not going to insist on a subject adjustment then, given that imo both ways of looking at things make some sense. Jan From xen-devel-bounces@lists.xenproject.org Thu Jun 15 08:43:33 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 15 Jun 2023 08:43:33 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549481.858032 (Exim 4.92) (envelope-from ) id 1q9iZg-00043H-Ie; Thu, 15 Jun 2023 08:43:24 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549481.858032; Thu, 15 Jun 2023 08:43:24 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9iZg-00043A-Ex; Thu, 15 Jun 2023 08:43:24 +0000 Received: by outflank-mailman (input) for mailman id 549481; Thu, 15 Jun 2023 08:43:23 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9iZf-000434-C3 for xen-devel@lists.xenproject.org; Thu, 15 Jun 2023 08:43:23 +0000 Received: from EUR01-VE1-obe.outbound.protection.outlook.com (mail-ve1eur01on062e.outbound.protection.outlook.com [2a01:111:f400:fe1f::62e]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id ae7abbab-0b58-11ee-8611-37d641c3527e; Thu, 15 Jun 2023 10:43:21 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by PR3PR04MB7226.eurprd04.prod.outlook.com (2603:10a6:102:8e::24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.37; Thu, 15 Jun 2023 08:43:18 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.039; Thu, 15 Jun 2023 08:43:18 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: ae7abbab-0b58-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=fee6CxXuG0ACh00oaSdFDOf46VCeI68POyvB1Pl9+6Ff4ACIZdfjCtsHHOIyF+8PIG6ZoB+aTRKh6sHOgMsGHeMkHQuTSbQ5a26oewB/6N7uxyjmJmIc0O03HThcdHusz9ASBnF6O65eemBZ07KNbkauWujkznrIuAYvj21W+9J05+hxG3etz8LkkfnTtJJ0yZfTjh1xLFUi7qHqXM0ndmmBlWQnY4sZ4fc0GlpxPNN2oElov/qtRbyb/TluDxvrf1MNs15Ko8px8kwQ5l4m4n7kKgJo0dVEGbOi74ZU+ta984bsRqlX9lkapwmMIsPXioUr/Uvd1lelK230tn1NfQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=TV5g7q92JENy3mRZHUo46btEJi5t856kzCuyg6iwtzM=; b=L8kDprOzSEl9nw5bo3Y5Wa0af4oI1FrWTEVI4l78oxvPIfYtFZfX8zp/l+mxYrcjkTWgvS/iOP2pQwfp5CU0i3fmsygMmx060sqPPniMvQ4fEJxwpufQ2JhfShhTSI06atp8W24Rj1Hobe/x/GS4BzSDQnt5zyd5+f7aLbjimRO9puEOnM8Us3dXnuoHcufyHjLbbT4XhPDgUGTcrvoAQ5NNQnkAanWWSy0gpg0YD70WmF/TPCCrrnfNJkHnDt+YqFOr5Jh2VbKZ9EILk6dvICHC0ZuqbdK3lk5yHeIhBSFZZi8M+lS8REh5sPBuyA4I8exKur8j10hvThiM3+zRQg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=TV5g7q92JENy3mRZHUo46btEJi5t856kzCuyg6iwtzM=; b=P9uIdbB7o45Vo+emDIdG6ZdfFKaLvlChAWelGsHukqtexTWJOyCSUNatFbn0drf9F1/oOa7XW1O2RTlPZbGis0JTtUuw02znTCkrMvDTiuoXT26R2bvhdcquJGYb1S9fjcqv34wjrcEeZ0CTFYFP+FQoe3l1p3ynncgdFIXnLck0JqhMZeFzFNAOvMXTLRrvAOqJLBFz3kRjwJySJhcb5Rd2ghsT7gnOw89DGoqN6lVGGPmN4KLWS8J1oFuJDH973+aXtyNVSzlPOhPi8SNCpGtHFyZH+6diBxh93qIkA7qh18HHvTyU7zSbmeaLca8gJF2iKHSISNYjI3cmccM4/w== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <0a8a5eec-0d07-c1ba-21cc-a336a7f49ddb@suse.com> Date: Thu, 15 Jun 2023 10:43:16 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH] xen/misra: add rules 1.4 and 2.1 Content-Language: en-US To: Stefano Stabellini Cc: julien@xen.org, andrew.cooper3@citrix.com, roger.pau@citrix.com, bertrand.marquis@arm.com, roberto.bagnara@bugseng.com, Stefano Stabellini , xen-devel@lists.xenproject.org References: <20230614230328.1060282-1-sstabellini@kernel.org> From: Jan Beulich In-Reply-To: <20230614230328.1060282-1-sstabellini@kernel.org> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR3P281CA0022.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:1c::10) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|PR3PR04MB7226:EE_ X-MS-Office365-Filtering-Correlation-Id: 34c137a4-1dac-4725-2e45-08db6d7c9142 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: w51jaWO6VplhDbNi08n976SXfrt5WzwY2A559BuYMG6XXSiu9IQkLQvyaLVWoVu39hnZTKGHvh2Qa47K1aJOoJHJp1mBoDzMyBcBwCwZ4XDwd5TFBXaduhD5+QXk81nOz/GBSwBIjnP0+yMYKNwSDml/7t/CENAx+x4HDTV89X6OKElC4sR4hcW8vvcbGLgIqxKu27vvFGTThJdmhg8DxY+EaHGuIpS4Z4/gxrubW2OavDCQwbA072XVly7PJZTEBr08fA9VKexrCHxwfWQw0kX4DYdgBpzDonQlstBQh/ylqIsWeoHzUCcOOpz0N9Z8SfoQ95vzJlIDpnU74pMxbztzWFSOT/RNLFza/89z1lAqCN0Ei/3jTeB6LMsrKKfwwEI02A5LMyOiJCXfuyacCKEvKjywb2fvsE17YDIf4nVg4XNgzJg8yVVQn/4E3m76Dk0/yFF1FBK1mXpT3bF0236sT9wdooPHrqnsm0ysYa464KVFi7+R7T6hputwfDsvAAa8DGp64s2v1kSmJk+yyJ8Hg+jTt84674nepPIB9uNEGCUxLlTpq7ka0H+//UEXRdNQdkwjQYoSG1KpBopJL9e4UJUrLcyf12yutHlKy+BQmrDs3ga/VVrqbwJ1X8jIrtwrAY7bL7zu6D6LXY0c1Q== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(396003)(39860400002)(346002)(366004)(376002)(136003)(451199021)(5660300002)(41300700001)(8676002)(6916009)(8936002)(6486002)(66556008)(66476007)(316002)(2906002)(186003)(4744005)(478600001)(4326008)(66946007)(38100700002)(86362001)(31696002)(36756003)(31686004)(6512007)(53546011)(6506007)(2616005)(26005)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?S3oxYTU3SmRwUlNPWk1NdzVNSS95Zlc0bk9hd2lqckRsWVBYNXZFeFRCdDFz?= =?utf-8?B?cFBsdWZaUnNoaHBKd0trSXlFTkU4WTdSVTArbEtvcUxMOU9nVjQ0emI1TTlM?= =?utf-8?B?SHZ0aWtXOEUyUm8yUGdIMHlyMHBWUWh3MlBYYVhIeEV1ajBBUHAwbXJjSU1W?= =?utf-8?B?bjEwZklxMlJFWVlQT2ZRRlEvekc4c0lWekd5cHFqaHdSUVg0R0hBbVIyeHdn?= =?utf-8?B?cURnVWdVd3Q4NWxyQWNVNnREcnpFMW95NnNlaGpUUDIxSldKQzVKZEFnQWhL?= =?utf-8?B?ZGZZSS9CbU9tY1RiNjE3dWdsVFVnSUhHVWRPUTE5Y0ZwSkNwK0xLWVdDMS9D?= =?utf-8?B?QzZDeU9BY2d3UDZhNE9nV3BmRmhjZGMyOTluZEloTnRjNXNNODBFRDJxd3Rv?= =?utf-8?B?TG50TWRub1JycGRWRWhGVFVhVkcrVlFiWkFoWUI5aGRTNGxzQUdRSlQxa1dF?= =?utf-8?B?WEhTamQvMmFQNks4WFNnMnNRSVZuQUtKRGhRQitqdmpRZVY4Sm5MSVNoYlFz?= =?utf-8?B?M2YwaFRIT2NBZEZZRzFwbklLeUpISVZNMGhYYWNPamlQMXY1Z0tEWjRSMFhX?= =?utf-8?B?VWRBQnRRQmZSMk9PbmJQK2plMzlidUV0NlVadjJUOUFBMTZJSTJnWWU5RjZz?= =?utf-8?B?cVNwODJPOVQrQWdodnVlaUJmMWh2L1BhVXRtUmlxMEVJMmV1NEFlYnlIbkVN?= =?utf-8?B?QU53WUo1ZE1haitYRHIzSkJkZHlmZmlZbURSSTQ0Ty9LRjQ1dndVaDQ5NUFJ?= =?utf-8?B?L05Kb2FrU1lwdVJScUNpSkZ6MDVPVjBCTWp3VEtiK2hldTNUN0xqN0VJUjg3?= =?utf-8?B?Q0FzRzhvbE9UYVVmZUttY1ZKQ3N6OVNkajVxdk1jZ2ZvTnNYdlA1WHl6bVQ0?= =?utf-8?B?UEJGUy9oa3BHbTlLbEszamc0cy9kM0xXYkMzdGtrWngvNnMzUzIwaXFnK1lw?= =?utf-8?B?cnZNN3QvRmpCWnlZMVBxeTBmMVNNUEZxUFRMK3JpZm82eXBITnYzR2QydTFk?= =?utf-8?B?OGwwdDBxV2cxY2RHSG5nQThRcFd3S1BvT1NzZEdhMVJvWGtBaG9rOUhGMXpt?= =?utf-8?B?T3Z6M2ZMTDhVSWYwcHlWd3BaTytOeFBGRi82RDlCWUhuZTNmTTk0UlJKWWts?= =?utf-8?B?MThKSE9YMThHTTZGTCtPTFFNRVVYWnk5bmNZalM4aWJwNk1kTkpEazFhazJG?= =?utf-8?B?UVBlUmJTUjkvU2Y4N2lteWpNa1ZuYk1VVUFDMkNNYW9LaGw4Y1ZTRWwyWFR6?= =?utf-8?B?RTdRSlN0bnBBYzZ6K2tYckVETU1PdFAwc1R3UVg4VkZlV3ZPYzFSc1lxQTUx?= =?utf-8?B?ZU5GV0hUbi9Xa2Zzd0RLVnh1czZOWmFzR3NFdzd4YXRlM0cxMmdqUEdSVUdX?= =?utf-8?B?ZnAxaHV3Wlh6eUxuMmhBMzFmd1hGOEF3T3hHQ3h5UmlETE9qZWJWY3h6dTNV?= =?utf-8?B?UysyQlZGQmc5RnYxdmlJMEFMZUtjLzRPK1hJalc1Sm5DQ1ZRK0JadmtPMDJB?= =?utf-8?B?UmlVTzJiYWZBMGNVSVlyV1pDNTdaUDFxNHpLYnZLeHVkRmY3OUpMUGIxU0t4?= =?utf-8?B?SEtBSHkvT21iWUZhVzJKRDU3M1FKaDFLMnZ5Z2tRVnp5cVFmaGwvZTdCTmEy?= =?utf-8?B?N1F2bUV6ckZFMnlUZ1BPWngyNHZ3V2xkdzZ5dkp1anoyZkJHanJDakp2RUlL?= =?utf-8?B?eGQzeFdaakRmR1paeTFDcXlOeXJtUkZsVWgrd3NZYWJieHNjbzRYemZ3K2xU?= =?utf-8?B?aElmcHZHUFdnNTRsalZLZzRLOXlWOXVnNThxVEtFVHRKeWJ0dzZreGpEWlpX?= =?utf-8?B?UFFVbjdqcS9jOXVqN0xnYStKLzZWa1ptWE4zOWJreHZhUC8yMFppMzFtblNh?= =?utf-8?B?UXFVb1BxMFRPbkNmVGorajVOUlNKai9Bai9OU0xZT3Q5QVF0cWpRc0tZVkNa?= =?utf-8?B?U09tTlFNU0E4cytTeHd0M0JmaU1xWks5Z0xQS2FiTDl2eDBKWFljYzRJVkxj?= =?utf-8?B?c1ZGQitQTHk1UGlFVlFuT1I5WDFSZW1YV2tBc3ZSLzFXZVlrSVRFRCt4dEVW?= =?utf-8?B?dGgzU0llb2ViaTAxK2xyU3NxWHU3djZuRW9KOXdiUmhQMEJmYlEwSWpyNzJr?= =?utf-8?Q?ADZGpKblYKiLJ+mX823VcN+Zb?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 34c137a4-1dac-4725-2e45-08db6d7c9142 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Jun 2023 08:43:18.5342 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: rDU0enoMhVHExtteIHOTfEmQrpkCFaxdVyQHkHHU6Ch5sR+TY74wSxef6X/gYyXAlxejtSBC+3QNi2JcvORnnA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PR3PR04MB7226 On 15.06.2023 01:03, Stefano Stabellini wrote: > --- a/docs/misra/rules.rst > +++ b/docs/misra/rules.rst > @@ -90,6 +90,17 @@ existing codebase are work-in-progress. > behaviour > - > > + * - Rule 1.4 > + - Required > + - Emergent language features shall not be used > + - Emergent language features, such as C11 features, should not be > + confused with similar compiler extensions, which we use. The plans to possibly use _Generic, as mentioned during the discussion, are (I think) making this the first case where we accept a rule with the expectation to later break (deviate) it. I don't think I'm aware of provisions in this regard, so by accepting the rule in the form you suggest may well lead to people later pointing here and say "no" to any attempt to use _Generic. IOW I think it wants clarifying in the text at the top of the file that there is flexibility to change in how far we mean to comply to already accepted rules. Jan From xen-devel-bounces@lists.xenproject.org Thu Jun 15 09:30:04 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 15 Jun 2023 09:30:04 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549486.858041 (Exim 4.92) (envelope-from ) id 1q9jIT-000090-U0; Thu, 15 Jun 2023 09:29:41 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549486.858041; Thu, 15 Jun 2023 09:29:41 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9jIT-00008t-R7; Thu, 15 Jun 2023 09:29:41 +0000 Received: by outflank-mailman (input) for mailman id 549486; Thu, 15 Jun 2023 09:29:39 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9jIR-00008l-HB for xen-devel@lists.xenproject.org; Thu, 15 Jun 2023 09:29:39 +0000 Received: from NAM04-MW2-obe.outbound.protection.outlook.com (mail-mw2nam04on2061d.outbound.protection.outlook.com [2a01:111:f400:7e8c::61d]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 247c2d87-0b5f-11ee-b232-6b7b168915f2; Thu, 15 Jun 2023 11:29:37 +0200 (CEST) Received: from SN6PR12MB2621.namprd12.prod.outlook.com (2603:10b6:805:73::15) by PH7PR12MB5853.namprd12.prod.outlook.com (2603:10b6:510:1d4::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.37; Thu, 15 Jun 2023 09:29:32 +0000 Received: from SN6PR12MB2621.namprd12.prod.outlook.com ([fe80::8018:78f7:1b08:7a54]) by SN6PR12MB2621.namprd12.prod.outlook.com ([fe80::8018:78f7:1b08:7a54%2]) with mapi id 15.20.6477.028; Thu, 15 Jun 2023 09:29:32 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 247c2d87-0b5f-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=cH86Y9T5uThPhHlekyI2rYKzhqQ+u7EPcrToVxJNyPaGW5Ot+YfoHlCh2EPhct+CPh1ecPQgdTzqLPHKw+hPE934jQn+zgR5v3ugpcPWP7ZGb3r7sDbW8cRZrjnClxbXIFJj7YFz07SwmyW1an7+RA8rHGCrRmRV4CW9zKdFFleaqPgtG9QyvRiQpraQ39GHNKqdJG5FQbNyiNpAT35kwa2I1Qh2Wd/ILFGumJiAsUyMkywvHQ4rEx9Smo7/rSzd19oJdD7EkoV4u2m7fivFK3pzMxSidrEdczXOhmbk/0lAbJm66ITimwMv7ilR66HUu17RHS2COIGmggM3KX+VOg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=K9+hB91vdYIyh3ZL/5nCng+79saeOXjbX4b2GHDomPY=; b=J65e8fWyynq2HQRZtrZH3oDVW+Hc9c/IucsteM9EqUrYkh3lD2PsKAevERvIBJnmnAJJA173W3PYAQhm1/TxvPhMC99xJ+iOjx9Fs4SYEn40E6IYBaKC2o20xuwba55OF29LeCs7iotn+0G9BzYgCDhQQHROYP/uc9tV9hhYPikL6Z8lZWe58hv87zw58/RlFU3o49l3ruE7RTSFNifLjdd+4Vy7Rf77RUed4y28JIBGJ20za0TVxAMHFqQwYw0rEVNdNPwRSH2wgQTPkEhurA51yDz/wPm4x9Ygeq8pXbbWtmhsAP0tyy92KLjc4cwGfosevMSPkChNyAUvpJMBzw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass header.d=amd.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=K9+hB91vdYIyh3ZL/5nCng+79saeOXjbX4b2GHDomPY=; b=fZ+PB7PGnRA4OuIqFO0M1u21BLW7ZwhEd+9dhyRRWt3eUSoWXEJlIbMsCs/uIPyShttzZCFRr+rTeJH1tFBHxeEhu57KpUkaeSdMRRJoUeskSo4lq+u09C4+nckZDTzm6hUB7a9JhW0M3cju4TNW7KcqPUJwZCD8deEPsYJ1/Q8= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=amd.com; Message-ID: <35d0fd4a-4afe-6203-183b-d0a1f2f5d5ba@amd.com> Date: Thu, 15 Jun 2023 10:29:24 +0100 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [XEN v8 1/5] xen/arm: p2m: Use the pa_range_info table to support ARM_32 and ARM_64 To: Michal Orzel , Ayan Kumar Halder , xen-devel@lists.xenproject.org Cc: sstabellini@kernel.org, stefano.stabellini@amd.com, julien@xen.org, Volodymyr_Babchuk@epam.com, bertrand.marquis@arm.com, andrew.cooper3@citrix.com, george.dunlap@citrix.com, jbeulich@suse.com, wl@xen.org, rahul.singh@arm.com References: <20230602120754.23817-1-ayan.kumar.halder@amd.com> <20230602120754.23817-2-ayan.kumar.halder@amd.com> From: Ayan Kumar Halder In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-ClientProxiedBy: LO2P265CA0178.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:a::22) To SN6PR12MB2621.namprd12.prod.outlook.com (2603:10b6:805:73::15) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SN6PR12MB2621:EE_|PH7PR12MB5853:EE_ X-MS-Office365-Filtering-Correlation-Id: 97ab3bbd-890e-4467-ada9-08db6d830636 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: VpBxhCYKHTjTgfNXu8gakFOVW14aibFPD3Q7QT+7kN4ptiXmlXKlpGn9zHcMe+lzs2wskGfalYiR6S8ffj1GV+dR7EjPEa0V6EsaLc1VRb3Ih7QpIvYzAOMoTyXAbK+ravQriqSVi/lg5ny3+IqKv+3iHJgkQWSDqGoS+NT4gi7SA97k6hSUVTQowaNFSOhjz/9WB95H1q/9/EoHXsV/fJ8pcT+rExuj1LZrY8CpeuiBjYSyHfe+WofYDYTNRII7rLiwhI3iynNuWQmbFQsE5+68WQGzbtJEtbT7sazw21ULhzPO+YRvxh7+bRJMBDpqbrUCPQxx5nuDUdx6ugE+3fVat9n6MDeJbrrZ0zFeDSyvr48xu0/tclWIIdUIcSQMAQVqtHboz4ppGsXzfirLNjKCsvEWe/ervEdgO8Q9YFMDO9hPrfFIHWPfliuKxlRKRPOr88aiKC+K5UodHjduvGD7Bz/hPcQ1e9OhM3jhXwN8rMHc1LLFmOkLzaNm3klQ1AAdhjLzuUN3F51YhcITVpbEDXiQsYOtYQcKeS1nHJ4IURTuzBAp+d1OJErrpK1tL5x0sydjOpM4u/ACBzQ20Z2xYM308CgRw+zfeD86a624SnKDAVVcxEWwhmcd1X5w2p9X1x7w4IsARLYN6VwJrw== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SN6PR12MB2621.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(376002)(136003)(396003)(39860400002)(366004)(346002)(451199021)(8936002)(6486002)(26005)(8676002)(6512007)(41300700001)(478600001)(36756003)(66946007)(38100700002)(4326008)(66556008)(66476007)(316002)(110136005)(31696002)(6666004)(53546011)(6506007)(5660300002)(83380400001)(186003)(7416002)(2616005)(2906002)(31686004)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?dnU0SzBvRE1ZR2t6MW9zNExnOWt4NU9URXgxdERncVJxaUliczc0Vk9uSFJz?= =?utf-8?B?RDRISXRNV0RRNU1WcmUzaGZzZnJjeFpVd1VmbmlrL0ZsTFFaRDVPOVRhdEFY?= =?utf-8?B?bHJjVHBQd2pQaEtMRE1qUjREdzNqWkFuamR1MzVLT3VQZWxCUDIweGNjd2hG?= =?utf-8?B?bCsxVEZnNmI1bjFVZ0tJQ3VhUGxhcmVhQktFbkxFZFhvMUc0MjJPZURLV3NG?= =?utf-8?B?am5WR2VKR2FQTXAxQ2FZWmQwME9TblJrZEZjNVRkYmRGaUx6ckpHbmthVnc2?= =?utf-8?B?RVlsdEIxSG5xb21Bd1huWmwwakVYaldWekhseWljeDBQaGVGcmQxRk43bWI4?= =?utf-8?B?K040V3pWY0hDeTZVSTlOMjRsOSt5aFhsazBqOVV6NXVoYzQwcEpTay9Tem1i?= =?utf-8?B?enVtNFJJTVVJRGJYUlp3UWhkckF4dXlGdW42RHVKcU5yR21aM2didkdZd05v?= =?utf-8?B?QWwxQ2c1c1VJVHpGOTUzVk95NmIydGRibThEekl5aDgxSENWUTR5MHRwSmFE?= =?utf-8?B?V0pkSkFJL1dKS3FiS2VuNW9pcjErblNrb2ZENWRFWnlFc205L2hHbjcxM051?= =?utf-8?B?MlNQcjVlMWNPbFdFaFZqLzNLWWZXWmwyY2NCeE9mbkxFZko2THF3SUdXaFFE?= =?utf-8?B?c2ZRNnFnNW12dTlWT0xWS3IrWEszdDh3TGVpY2ZjSUR0Uzl6TE9WWkpFb3Qw?= =?utf-8?B?YlNITk91Qy9PWUFJQnh5UXNZdW1JaUVEdkxsbUMyb0ZKTzlTQUlvL2FvdHV0?= =?utf-8?B?ODRJVEFWQ2QrWm9Rdlg3Vno0VjIvTXFleWJ2VmVNa21DaENhcXVQZlBZY2Q0?= =?utf-8?B?UVpkNENVdTdlTElBUUhqaDNlUTZvU2xFdmtJRXgvSUFHYTNWQ01QaHhJT2RP?= =?utf-8?B?a0s5TTNBVitZSVZ5ZXdrS3dEUWppODFoYXNLRkJ2TWtld0tieW5aMWdscDNR?= =?utf-8?B?VFFTeTF4bTBudjNYZ0V3dHBTQVViaXpTZnFEdzA3L1cvUlFPbDNpc25mOHZt?= =?utf-8?B?NVNIK29SN1V5ZEJnTStTNUliZ0JPb2NuRmNZSk05WUxxZW1xVXdkNWRmMW15?= =?utf-8?B?alltcUoweUlrUno2amk5ZzdSQVZHYVFDaGNlOWd6WS83RlB0dE1EQzZ2VU5s?= =?utf-8?B?Q3JhREhhak1QdnZlT3plMDMwYlBBd01tVGpPeVk4cksvWWYySWJ4dTgyQ0F1?= =?utf-8?B?YzNKd1l5YUdkMFpLWXpzNGEyRVRyOThrdnl5WkladDZsYmF5dTM3SzZOaTFI?= =?utf-8?B?c0xVcnNTNFZpOVRnY3Z0MFRGYUloL2hWQ2loUkNwNU9tbTJ1V21USzFBczJi?= =?utf-8?B?dmJ6bS9hNld1N0Myc1YxUk9VcU1OMjJ4dWZsN09FV1k1VEVjNkVnNVVzOHlB?= =?utf-8?B?ZUpxMTRva0ttOTZoL3MyeUhXeXNGYk1zMTY3ejBMODYxMlc4WmR4MW5qT0hY?= =?utf-8?B?ZEZPQk12S0g0S2N3bGdWaUFiODFtTkI2QitUUWxKdkpwUjJ2VW14VnRwOGVU?= =?utf-8?B?cVQvSlcvUWZOY3lNMUh2elh5WC9SYnM3WlFwQUpUQS9sKzJmUmgzeG9Qc2xK?= =?utf-8?B?UkVCS2tSUUVzc0pSajJSaVAwVU5BY0dZWmZRMWZGdzlZSUs1WGJQYmNSb2pT?= =?utf-8?B?bjhKWFU3dmV3bWNuYWs1bng3dGpiSjBpUVVsVE5rS2NjcXRpUDdEZDRZaGhP?= =?utf-8?B?aEtDYXZXTEl4YTMwQzBrTTBZZ0VWQ2FOUE1CZjIzU2dhRk5SczlJcVgvOWJT?= =?utf-8?B?QnVNd2FFRWFOTUFYaW96eHVLcU53VXBRSkIra25uWUlDZHRCRVdoeFczd0xX?= =?utf-8?B?ZUx6R3hIblZjRTR1RUY1d09OZ0xhdXp6bVp5ZlFHTEF5eEt5Qk90UFdDSE1G?= =?utf-8?B?azVXeGcrcDJJVHFTV1UxTW00bGZGNGl2eWIwNWNwSEhKM1FmcXJocmU0a0VS?= =?utf-8?B?aC9iVjlXdkJOODNOcTFhZFRyalN6MzdKbXlMZTVBMTljVHo1ekFRaks5NWRU?= =?utf-8?B?bUs3bTBqU2pKR3lRYmh0RFViYVdORGppQlR0ZlRIdlNrNE4zazEzL3Fncnc2?= =?utf-8?B?MzFlTjZLV0F1YkMwRDdaLzNyMno0ZWtNd3lHMlZXeUlOWGdKdHpRb25kbEFp?= =?utf-8?Q?pSHel7ixr8A5TpPGid1TEqm0w?= X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-Network-Message-Id: 97ab3bbd-890e-4467-ada9-08db6d830636 X-MS-Exchange-CrossTenant-AuthSource: SN6PR12MB2621.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Jun 2023 09:29:31.7370 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: cxoje+Z0whCnhoqg+AW0uzIw3l8l38dx4QgsBrri6a9F5y3eScj+q8KCK8mWa5qsKH5jtSLjx7VCR7CPA53Jyg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH7PR12MB5853 On 15/06/2023 09:05, Michal Orzel wrote: > Hi Ayan, Hi Michal, > > On 02/06/2023 14:07, Ayan Kumar Halder wrote: >> >> Restructure the code so that one can use pa_range_info[] table for both >> ARM_32 as well as ARM_64. > I grepped for ARM_{32,64} in our code base and could not find any use in source files except for things > introduced by this commit. While I'm ok with it in a commit message I think for consistency we should be > using arm32/arm64 in the code. AFAIU, arm32/arm64 refers to the Architecture. ARM_32/ARM_64 refers to the configuration. If you see the original code (xen/arch/arm/include/asm/p2m.h, xen/arch/arm/p2m.c) ARM_32/ARM_64 has been used. Thus, I used ARM_32/ARM_64 in this commit. Let me know if it makes sense. The rest of your comments look sane to me. - Ayan > >> Also, removed the hardcoding for P2M_ROOT_ORDER and P2M_ROOT_LEVEL as >> p2m_root_order can be obtained from the pa_range_info[].root_order and >> p2m_root_level can be obtained from pa_range_info[].sl0. >> >> Refer ARM DDI 0406C.d ID040418, B3-1345, >> "Use of concatenated first-level translation tables >> >> ...However, a 40-bit input address range with a translation granularity of 4KB >> requires a total of 28 bits of address resolution. Therefore, a stage 2 >> translation that supports a 40-bit input address range requires two concatenated >> first-level translation tables,..." >> >> Thus, root-order is 1 for 40-bit IPA on ARM_32. >> >> Refer ARM DDI 0406C.d ID040418, B3-1348, >> >> "Determining the required first lookup level for stage 2 translations >> >> For a stage 2 translation, the output address range from the stage 1 >> translations determines the required input address range for the stage 2 >> translation. The permitted values of VTCR.SL0 are: >> >> 0b00 Stage 2 translation lookup must start at the second level. >> 0b01 Stage 2 translation lookup must start at the first level. >> >> VTCR.T0SZ must indicate the required input address range. The size of the input >> address region is 2^(32-T0SZ) bytes." >> >> Thus VTCR.SL0 = 1 (maximum value) and VTCR.T0SZ = -8 when the size of input >> address region is 2^40 bytes. >> >> Thus, pa_range_info[].t0sz = 1 (VTCR.S) | 8 (VTCR.T0SZ) ie 11000b which is 24. >> >> VTCR.T0SZ, is bits [5:0] for ARM_64. >> VTCR.T0SZ is bits [3:0] and S(sign extension), bit[4] for ARM_32. >> >> For this, we have used struct bitfields to convert pa_range_info[].t0sz to its >> ARM_32 variant. >> >> pa_range_info[] is indexed by ID_AA64MMFR0_EL1.PARange which is present in Arm64 >> only. This is the reason we do not specify the indices for ARM_32. Also, we >> duplicated the entry "{ 40, 24/*24*/, 1, 1 }" between ARM_64 and >> ARM_32. This is done to avoid introducing extra #if-defs. >> >> Signed-off-by: Ayan Kumar Halder >> --- >> Changes from - >> >> v3 - 1. New patch introduced in v4. >> 2. Restructure the code such that pa_range_info[] is used both by ARM_32 as >> well as ARM_64. >> >> v4 - 1. Removed the hardcoded definitions of P2M_ROOT_ORDER and P2M_ROOT_LEVEL. >> The reason being root_order will not be always 1 (See the next patch). >> 2. Updated the commit message to explain t0sz, sl0 and root_order values for >> 32-bit IPA on Arm32. >> 3. Some sanity fixes. >> >> v5 - pa_range_info is indexed by system_cpuinfo.mm64.pa_range. ie >> when PARange is 0, the PA size is 32, 1 -> 36 and so on. So pa_range_info[] has >> been updated accordingly. >> For ARM_32 pa_range_info[0] = 0 and pa_range_info[1] = 0 as we do not support >> 32-bit, 36-bit physical address range yet. >> >> v6 - 1. Added pa_range_info[] entries for ARM_32 without indices. Some entry >> may be duplicated between ARM_64 and ARM_32. >> 2. Recalculate p2m_ipa_bits for ARM_32 from T0SZ (similar to ARM_64). >> 3. Introduced an union to reinterpret T0SZ bits between ARM_32 and ARM_64. >> >> v7 - 1. Used struct bifield instead of union to reinterpret T0SZ bits between >> ARM_32 and ARM_64. >> 2. Removed the invalid entry for ARM_32. >> >> xen/arch/arm/include/asm/p2m.h | 6 ---- >> xen/arch/arm/p2m.c | 50 +++++++++++++++++++++++++--------- >> 2 files changed, 37 insertions(+), 19 deletions(-) >> >> diff --git a/xen/arch/arm/include/asm/p2m.h b/xen/arch/arm/include/asm/p2m.h >> index f67e9ddc72..940495d42b 100644 >> --- a/xen/arch/arm/include/asm/p2m.h >> +++ b/xen/arch/arm/include/asm/p2m.h >> @@ -14,16 +14,10 @@ >> /* Holds the bit size of IPAs in p2m tables. */ >> extern unsigned int p2m_ipa_bits; >> >> -#ifdef CONFIG_ARM_64 >> extern unsigned int p2m_root_order; >> extern unsigned int p2m_root_level; >> #define P2M_ROOT_ORDER p2m_root_order >> #define P2M_ROOT_LEVEL p2m_root_level >> -#else >> -/* First level P2M is always 2 consecutive pages */ >> -#define P2M_ROOT_ORDER 1 >> -#define P2M_ROOT_LEVEL 1 >> -#endif >> >> struct domain; >> >> diff --git a/xen/arch/arm/p2m.c b/xen/arch/arm/p2m.c >> index 418997843d..76388ba54b 100644 >> --- a/xen/arch/arm/p2m.c >> +++ b/xen/arch/arm/p2m.c >> @@ -19,9 +19,9 @@ >> >> #define INVALID_VMID 0 /* VMID 0 is reserved */ >> >> -#ifdef CONFIG_ARM_64 >> unsigned int __read_mostly p2m_root_order; >> unsigned int __read_mostly p2m_root_level; >> +#ifdef CONFIG_ARM_64 >> static unsigned int __read_mostly max_vmid = MAX_VMID_8_BIT; >> /* VMID is by default 8 bit width on AArch64 */ >> #define MAX_VMID max_vmid >> @@ -2247,16 +2247,6 @@ void __init setup_virt_paging(void) >> /* Setup Stage 2 address translation */ >> register_t val = VTCR_RES1|VTCR_SH0_IS|VTCR_ORGN0_WBWA|VTCR_IRGN0_WBWA; >> >> -#ifdef CONFIG_ARM_32 >> - if ( p2m_ipa_bits < 40 ) >> - panic("P2M: Not able to support %u-bit IPA at the moment\n", >> - p2m_ipa_bits); >> - >> - printk("P2M: 40-bit IPA\n"); >> - p2m_ipa_bits = 40; >> - val |= VTCR_T0SZ(0x18); /* 40 bit IPA */ >> - val |= VTCR_SL0(0x1); /* P2M starts at first level */ >> -#else /* CONFIG_ARM_64 */ >> static const struct { >> unsigned int pabits; /* Physical Address Size */ >> unsigned int t0sz; /* Desired T0SZ, minimum in comment */ >> @@ -2265,6 +2255,7 @@ void __init setup_virt_paging(void) >> } pa_range_info[] __initconst = { >> /* T0SZ minimum and SL0 maximum from ARM DDI 0487H.a Table D5-6 */ >> /* PA size, t0sz(min), root-order, sl0(max) */ >> +#ifdef CONFIG_ARM_64 >> [0] = { 32, 32/*32*/, 0, 1 }, >> [1] = { 36, 28/*28*/, 0, 1 }, >> [2] = { 40, 24/*24*/, 1, 1 }, >> @@ -2273,11 +2264,28 @@ void __init setup_virt_paging(void) >> [5] = { 48, 16/*16*/, 0, 2 }, >> [6] = { 52, 12/*12*/, 4, 2 }, >> [7] = { 0 } /* Invalid */ >> +#else >> + { 40, 24/*24*/, 1, 1 } >> +#endif >> }; >> >> unsigned int i; >> unsigned int pa_range = 0x10; /* Larger than any possible value */ >> >> +#ifdef CONFIG_ARM_32 >> + /* >> + * Typecast pa_range_info[].t0sz into ARM_32 bit variant. >> + * >> + * VTCR.T0SZ is bits [3:0] and S(sign extension), bit[4] for ARM_32. >> + * Thus, pa_range_info[].t0sz is translated to its ARM_32 variant using >> + * struct bitfields. >> + */ >> + struct >> + { >> + signed int val:5; >> + } t0sz_32; >> +#else >> + > no need for this empty line > >> /* >> * Restrict "p2m_ipa_bits" if needed. As P2M table is always configured >> * with IPA bits == PA bits, compare against "pabits". >> @@ -2291,6 +2299,7 @@ void __init setup_virt_paging(void) >> */ >> if ( system_cpuinfo.mm64.vmid_bits == MM64_VMID_16_BITS_SUPPORT ) >> max_vmid = MAX_VMID_16_BIT; >> +#endif >> >> /* Choose suitable "pa_range" according to the resulted "p2m_ipa_bits". */ >> for ( i = 0; i < ARRAY_SIZE(pa_range_info); i++ ) >> @@ -2304,26 +2313,41 @@ void __init setup_virt_paging(void) >> >> /* pa_range is 4 bits but we don't support all modes */ > this comment makes sense really only on arm64 as it refers to PARange field of ID_AA64MMFR0_EL1. > >> if ( pa_range >= ARRAY_SIZE(pa_range_info) || !pa_range_info[pa_range].pabits ) >> - panic("Unknown encoding of ID_AA64MMFR0_EL1.PARange %x\n", pa_range); >> + { >> + /* >> + * In case of ARM_64, we do not support this encoding of >> + * ID_AA64MMFR0_EL1.PARange >> + */ >> + panic("Unsupported value for p2m_ipa_bits = 0x%x\n", p2m_ipa_bits); > NIT: Putting variable names in messages visible by users is not a great idea IMO. > "Unsupported IPA size" would read better. Furthermore, I do not think printing IPA size in hex > is beneficial. I would use "%u bits" (i.e. 32 bits reads better than 0x20 bits). > >> + } >> >> +#ifdef CONFIG_ARM_64 >> val |= VTCR_PS(pa_range); >> val |= VTCR_TG0_4K; >> >> /* Set the VS bit only if 16 bit VMID is supported. */ >> if ( MAX_VMID == MAX_VMID_16_BIT ) >> val |= VTCR_VS; >> +#endif >> + >> val |= VTCR_SL0(pa_range_info[pa_range].sl0); >> val |= VTCR_T0SZ(pa_range_info[pa_range].t0sz); >> >> p2m_root_order = pa_range_info[pa_range].root_order; >> p2m_root_level = 2 - pa_range_info[pa_range].sl0; >> + >> +#ifdef CONFIG_ARM_64 >> p2m_ipa_bits = 64 - pa_range_info[pa_range].t0sz; >> +#else >> + t0sz_32.val = pa_range_info[pa_range].t0sz; >> + p2m_ipa_bits = 32 - t0sz_32.val; >> +#endif >> >> printk("P2M: %d-bit IPA with %d-bit PA and %d-bit VMID\n", >> p2m_ipa_bits, >> pa_range_info[pa_range].pabits, >> ( MAX_VMID == MAX_VMID_16_BIT ) ? 16 : 8); >> -#endif >> + >> printk("P2M: %d levels with order-%d root, VTCR 0x%"PRIregister"\n", >> 4 - P2M_ROOT_LEVEL, P2M_ROOT_ORDER, val); >> >> -- >> 2.17.1 >> >> > ~Michal From xen-devel-bounces@lists.xenproject.org Thu Jun 15 09:39:26 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 15 Jun 2023 09:39:26 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549491.858052 (Exim 4.92) (envelope-from ) id 1q9jRq-0001ei-Qn; Thu, 15 Jun 2023 09:39:22 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549491.858052; Thu, 15 Jun 2023 09:39:22 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9jRq-0001eb-Mf; Thu, 15 Jun 2023 09:39:22 +0000 Received: by outflank-mailman (input) for mailman id 549491; Thu, 15 Jun 2023 09:39:22 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9jRp-0001eV-Mj for xen-devel@lists.xenproject.org; Thu, 15 Jun 2023 09:39:21 +0000 Received: from mx0b-0039f301.pphosted.com (mx0b-0039f301.pphosted.com [148.163.137.242]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 803dc9ea-0b60-11ee-b232-6b7b168915f2; Thu, 15 Jun 2023 11:39:20 +0200 (CEST) Received: from pps.filterd (m0174681.ppops.net [127.0.0.1]) by mx0b-0039f301.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 35F7jbSS009705; Thu, 15 Jun 2023 09:39:06 GMT Received: from eur02-am0-obe.outbound.protection.outlook.com (mail-am0eur02lp2234.outbound.protection.outlook.com [104.47.11.234]) by mx0b-0039f301.pphosted.com (PPS) with ESMTPS id 3r7n75syt1-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Thu, 15 Jun 2023 09:39:05 +0000 Received: from VI1PR03MB3710.eurprd03.prod.outlook.com (2603:10a6:803:31::18) by AS8PR03MB7320.eurprd03.prod.outlook.com (2603:10a6:20b:2e0::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.37; Thu, 15 Jun 2023 09:39:02 +0000 Received: from VI1PR03MB3710.eurprd03.prod.outlook.com ([fe80::6fa2:d7b8:9bd4:1a51]) by VI1PR03MB3710.eurprd03.prod.outlook.com ([fe80::6fa2:d7b8:9bd4:1a51%5]) with mapi id 15.20.6455.045; Thu, 15 Jun 2023 09:39:02 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 803dc9ea-0b60-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=hpWEXB3GFdnCgK7Xdgz5dStPF5Dw75C5IpivAZI9WIt1WcnAMhuFtG1aM1hbD3DhuIOzGN+s47j7cGlQPt9mGj3wgdD0Nx9uSh3UxgGgJjbOAN1cpGy4lLcYS3Pd/KvNO7WqRycYJZObYN6kJHqWmL53Cm1epSPdp1u55xlEd9ODoiEiCxtJgJ2MXliTe68/misBD8k/8ZfHGbzxaqiNM1L4J+8lrBv8WHtP0GbdXjVeOP42Z3GBuvS9Ys8RYyroM874Q/hDqxYKe0DoPF391kHcOn7v0oRaVGdqwL4t34+9sWgC+l2NIcBMEEhDr5/e4kLC2LbIovDd4weBXmxs2Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=V4luQ8/I9W0s4oJd63j1Hy6oyNXVndbEYQGAjRQ3Ga0=; b=Wk14MC09FHsYzE+t1G/Y/EgqqU+HfDT8YdLiVfVOIm7fcRJyAwGuzDuBZhsw8OGsrZNDvWwgIgKWmZEMskYzNfW55WpqyIVq2W5m+wCnmKIdIzbp2tFnr+8781q5xn605qvqFlHWmAbyuWgyRPYH+YGi1e9zDMZKrC+Q027cag2abMU+3hZVt6NTTbBIT7KkrDSycRObNOksBw5edRHBDUpKcC2Bp4wWD2qjAtkHglvAObMj7SwyNCapIhha/W5eLbWmPkzPslg+PPTjip4oTW+W0RYjPD9Da/1whFbS48s7VKLnwFC8iNteKbPbU0smOCY6Fbz8+ADf2LjAgMKgqw== 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 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=epam.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=V4luQ8/I9W0s4oJd63j1Hy6oyNXVndbEYQGAjRQ3Ga0=; b=n1CNgZVHiywCrqkD/gdzYZ8kBNTslvIlgvlUs6lAMD0aJAoM1NOixCC3Dnhhv2Tt1X+qJS/+5QTafUieZbgPpKHgGtC1Az+dymsGrjWzl5dmYqw4RCpgj/e5Bwqrf17PE7jojQqs5LtxQjOvYRAUpXl4ySqigj/FVhrQZvPYxY1o7nlyHmfyc7pt27etVuPOvAH84jpKsRyhcsjW6/zVplJ0FU6t6vQIbRYpbSmkHH1u3RMFWFrvgow+Nl6xxd1PUN6qk9ox3PI5ARqm/R8xZInkO82DFyBkv0DBJAtDznu6oWsEFHLEHNU/inpd4iltX2IVrzWudOdWvxtwH1zngA== From: Volodymyr Babchuk To: Stewart Hildebrand CC: "xen-devel@lists.xenproject.org" , Jan Beulich , Andrew Cooper , =?iso-8859-1?Q?Roger_Pau_Monn=E9?= , Wei Liu , George Dunlap , Julien Grall , Stefano Stabellini , Paul Durrant , Bertrand Marquis Subject: Re: [PATCH v7 00/12] PCI devices passthrough on Arm, part 3 Thread-Topic: [PATCH v7 00/12] PCI devices passthrough on Arm, part 3 Thread-Index: AQHZneJYJeyWMREaaUSf/027X0QuCq+LHuyAgAB+64A= Date: Thu, 15 Jun 2023 09:39:02 +0000 Message-ID: <875y7p9ia2.fsf@epam.com> References: <20230613103159.524763-1-volodymyr_babchuk@epam.com> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: user-agent: mu4e 1.8.9; emacs 28.2 x-ms-publictraffictype: Email x-ms-traffictypediagnostic: VI1PR03MB3710:EE_|AS8PR03MB7320:EE_ x-ms-office365-filtering-correlation-id: 6f7c83b6-6ddb-4b56-1621-08db6d845a8b x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: GtsbBQYOmZDaAdWN3dWzU5awJqdYNebwyLog84d242ls0Oe4O2hCIDBELxWK68YPvT4oG3cm5V3qOSI7r6LmB7hSYFlOq+7gzf2Q8m719DWa/UM+mBBgdWyEbA48TyDGcnvVFSrT2dphIhKdqjr/l2pJ3NUdPFzUiZsXJjVze0KBvj/amMsAUn+4n2pNA+PjdHo6Lzcms5ZbRWUiB2HBOjZz0BClW6cNuL5N/3p+MP/+24ZL+WXwIT6NV2B7CK+kEPrlGHXreaNvY0r4tL4FMA/5MRn50es0XUn9lPlNdh885ZsBXG0l7TUkvL+muT0GYVZh0sC7lR10vxCobDdtsds2RrZKYvhx8BBFn0XhdHxp2Lb4X27FglxEpExXykxSn0SmrHa4XExc+P23WW+XvpGGEN1WOdsl2gvsxHV8HKkypimk8XMmA0LKvdabjWgjkDpsXz+AiBbkNUQWzn5KN4Ew7tN2vQW6u20XcP29icDiG5r7JpDGJcu71BLtctpl8eA0dBg03FgqCq/+6wM67PgpsRxUJv42FvYUo/nRZg4TrXbLck6OX2sjERomumLkvq18Wws9QVudOMScs6fY19wEGDlGLxArI9qF8xQhF58= x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VI1PR03MB3710.eurprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(346002)(366004)(39860400002)(396003)(136003)(376002)(451199021)(5660300002)(83380400001)(186003)(55236004)(6506007)(2906002)(7416002)(2616005)(966005)(6512007)(41300700001)(8936002)(26005)(8676002)(6486002)(316002)(122000001)(54906003)(38070700005)(53546011)(36756003)(478600001)(4326008)(76116006)(66556008)(66476007)(86362001)(38100700002)(66946007)(6916009)(66446008)(64756008)(91956017)(71200400001);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?iso-8859-1?Q?lbNIVnDEX0dn9Kqo38arVnAM8mDqswFyrTsMqI49y4gW4Ils0OL02/tMau?= =?iso-8859-1?Q?5wtRZMScHtcbJvbahHHsabxptMNWeCLOcIkHumv85zgq6j8Bqef0vpszE0?= =?iso-8859-1?Q?woaUy5SguLbEPOR5nS/tQbB67/iHxIrGAaM5fF6kJPE2nHAJSdoKCgkrXP?= =?iso-8859-1?Q?ZVz/uyWLYqsNjwGrMMX0E8pkHLVrl/1hYxnzU73hs4KIy9u1bxElquUnKz?= =?iso-8859-1?Q?Po1IAUmH1/h6++pONRetPjFhWnNXyhvHyRz8ARVVzTKuy5Vqb411XW3sit?= =?iso-8859-1?Q?YUp6O239b9RWXlpEhVk6/5z30cwD8TI6406l8s9fsqixv0WYsjCgpWtCi5?= =?iso-8859-1?Q?FjDzaOut1Lc6mRwIK+74mkX92RJPiQK9H+Zrf5G5GoJTMdoHceNwI/uY+Z?= =?iso-8859-1?Q?FXn4j6LV6cipvLpuDoU/6S9ysAymwBIHDoFiPDuKj8+98cN9xPL+pIkOIV?= =?iso-8859-1?Q?pNt+gkRhpH56FlmvvGGhB6at7j32bxaQBsuFlSAddcq4Eqb+TAyO4k266c?= =?iso-8859-1?Q?58Z1onjTzLZs3ta3AdgqwH5QioX+EOG+9S3t2rP9Ff2mDGRKAl/Plzup/v?= =?iso-8859-1?Q?/p1qqZ0NRIBmuYdk2AuiGmV5Eh8j/VK0lNaQkk4yhDDejCxY0SjAZy96p3?= =?iso-8859-1?Q?ogSeY7mxN7cSCtptt6rGE3Vf/eNc1DcBfIqW83yDxmqtsbbygLLkWxOAJT?= =?iso-8859-1?Q?yJX0BQ3eBneoh7ocZoa09vpVizHMFSUtfcq8pA9LoyaYslLP/t0kUBkAvC?= =?iso-8859-1?Q?7H2hWFVbIbYCFMdyvzQZ6FsVEJsxyrE/JtQpq16+454ue8BeRZHtkepq2n?= =?iso-8859-1?Q?beEfRrZBIGN5QBBZiWrk9OhdLbnAU/DyRvvW1TiQ13jHtKFWUZnJWd/0PD?= =?iso-8859-1?Q?OTbIh/CIYAMyOt9mKP+H2qJt8Q0bC93dM7C5rq78PBIkObE8y721sd0T9h?= =?iso-8859-1?Q?Ol2OCzbLj/nslvzQb7ZwXSQSoOwDl9ZlMwU5aQ5Z+ecWldPwFGf9GtiHCY?= =?iso-8859-1?Q?r1jKY39RQq0GNDwhUAUmEx03exDg6zdYlE07QNKN14MqnxBwRSmSvfD2cw?= =?iso-8859-1?Q?RHGvsjhyx3HQD0eCbp0kE0BSTbAwutFQZ9xIOHRF1ZRweS7kHoSFUsDZav?= =?iso-8859-1?Q?TnSPzBWqZoacZgyrRKkE/oR/CtbNaAzABfYQ2ayfNtrqT0x2YtBQlC1z5s?= =?iso-8859-1?Q?fsQx1k+uaZFLa20c9pvUGDAsNSZMeOHivqVUmkxeJk/uS3ozoge9toxDIr?= =?iso-8859-1?Q?V4kzU6uWB9bRYb6uV9qg1xKxKzgOPmkIgBNt2vEPo/NbPFJapdmdaj+rQv?= =?iso-8859-1?Q?2SWJMaD8NtOAdoEUGYflnzEVN4LdS7JwH22lfvIY7F9C30t+hu+0+SqbyJ?= =?iso-8859-1?Q?CtO4Oi5QCa2cKXKt3+cyfpWbeDmCODa3MOdE2JNDJCtMtjghGW3DQKA9Rs?= =?iso-8859-1?Q?ZeLnrF8HsoAUf5tMMKF5u3M4nZNLXoI8aNpKUuHSrC+RPtzrHVCDWgxrdn?= =?iso-8859-1?Q?Hh+SA+chxPGwLczzdiOEVbnfgOg5vugeDQKSPHsoI+XvK8UFjdOYvGajO3?= =?iso-8859-1?Q?C/gNF5c/OBQz03WybdiPjClnEVTv4nKjin2+M67Z7N4mlP5XpyklLOtL/4?= =?iso-8859-1?Q?0JTuAfI4xIjGGh8vGnCewDczYKGe/kW2frtUxas9iBW7wXP9eUxqhKgA?= =?iso-8859-1?Q?=3D=3D?= Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-OriginatorOrg: epam.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: VI1PR03MB3710.eurprd03.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 6f7c83b6-6ddb-4b56-1621-08db6d845a8b X-MS-Exchange-CrossTenant-originalarrivaltime: 15 Jun 2023 09:39:02.4699 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: b41b72d0-4e9f-4c26-8a69-f949f367c91d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: 3HetkAFHZ9I3mx44csJCWKnDaXfH4KlLUkxdNxWrUbu772lZlYpq5AKN3aavMEenbkqKeSPsP4iyRO1mR5uVJtoVYdhSp2YTNn7k7FtmVB4= X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR03MB7320 X-Proofpoint-ORIG-GUID: U6kik1pU9wW-91rKBioI6iXecJD-t4dq X-Proofpoint-GUID: U6kik1pU9wW-91rKBioI6iXecJD-t4dq X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.254,Aquarius:18.0.957,Hydra:6.0.573,FMLib:17.11.176.26 definitions=2023-06-15_06,2023-06-14_02,2023-05-22_02 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 mlxscore=0 impostorscore=0 malwarescore=0 phishscore=0 spamscore=0 lowpriorityscore=0 bulkscore=0 adultscore=0 clxscore=1015 suspectscore=0 mlxlogscore=718 priorityscore=1501 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2305260000 definitions=main-2306150082 Hi Stewart, Stewart Hildebrand writes: > On 6/13/23 06:32, Volodymyr Babchuk wrote: >> Hello, >>=20 >> This is another another version of vPCI rework (previous one can be >> found at [1]). The biggest change is how vPCI locking is done. This >> series uses per-domain vPCI rwlock. >>=20 >> Note that this series does not include my work on reference counting >> for PCI devices because this counting does not resolve isses we are >> having for vPCI. While it is (maybe) nice to have PCI refcounting, it >> does not moves us towards PCI on ARM. >>=20 >>=20 >> [1] >> https://urldefense.com/v3/__https://lore.kernel.org/all/20220204063459.6= 80961-1-andr2000@gmail.com/__;!!GF_29dbcQIUBPA!0BUqPos1zFKUoPwbKLLwKItNgBVP= aBgxmH1Y6zXpms2bngrlWrzB-qMNvIaiAy2WSWMa93UrlvRi0ijYP8X4Ymx07GXYPO1W$ >> [lore[.]kernel[.]org] > > Thanks for sending this! > > Should this be v8? I see v7 at [2]. Oops, my bad.=20 > I had to rewind my xen.git back to 67c28bfc5245 for this series to apply = cleanly (just before ee045f3a4a6d "vpci/header: cope with devices not havin= g vpci allocated"). I rebased this series onto staging about two weeks ago. Looks like there was new changes into the PCI code after that. Should I send a new, real v8 which is rebased onto current staging, or we'll wait for review for the current set of patches? --=20 WBR, Volodymyr= From xen-devel-bounces@lists.xenproject.org Thu Jun 15 09:40:14 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 15 Jun 2023 09:40:14 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549498.858062 (Exim 4.92) (envelope-from ) id 1q9jSf-00033y-6l; Thu, 15 Jun 2023 09:40:13 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549498.858062; Thu, 15 Jun 2023 09:40:13 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9jSf-00033r-3Z; Thu, 15 Jun 2023 09:40:13 +0000 Received: by outflank-mailman (input) for mailman id 549498; Thu, 15 Jun 2023 09:40:12 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9jSd-00033j-VD for xen-devel@lists.xenproject.org; Thu, 15 Jun 2023 09:40:11 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9jSd-0007wx-H2; Thu, 15 Jun 2023 09:40:11 +0000 Received: from gw1.octic.net ([88.97.20.152] helo=[10.0.1.240]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1q9jSd-0002pp-9s; Thu, 15 Jun 2023 09:40:11 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=Ce2Hf9V6ob4s+vYtijmG/3zPfNoIQPCs7FVQBuC5w8o=; b=wg4TCXbU7FS+kOqBKTvKsSEGwP bOfxTInlar31q1iqOM755ALUdNIm0X3cIPRXqvNCDRkUlsVcj6xrh1etNA7tTYsqzWTYOSXybYhz7 NT+ylGDAjEcOUp9a0WZpbO9SF8X1MC3sqBJC/YnyPygFbD7uH0mUaCkxBb4nyJlOiGk0=; Message-ID: Date: Thu, 15 Jun 2023 10:40:08 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [XEN v8 1/5] xen/arm: p2m: Use the pa_range_info table to support ARM_32 and ARM_64 Content-Language: en-US To: Ayan Kumar Halder , Michal Orzel , Ayan Kumar Halder , xen-devel@lists.xenproject.org Cc: sstabellini@kernel.org, stefano.stabellini@amd.com, Volodymyr_Babchuk@epam.com, bertrand.marquis@arm.com, andrew.cooper3@citrix.com, george.dunlap@citrix.com, jbeulich@suse.com, wl@xen.org, rahul.singh@arm.com References: <20230602120754.23817-1-ayan.kumar.halder@amd.com> <20230602120754.23817-2-ayan.kumar.halder@amd.com> <35d0fd4a-4afe-6203-183b-d0a1f2f5d5ba@amd.com> From: Julien Grall In-Reply-To: <35d0fd4a-4afe-6203-183b-d0a1f2f5d5ba@amd.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi Ayan, On 15/06/2023 10:29, Ayan Kumar Halder wrote: > > On 15/06/2023 09:05, Michal Orzel wrote: >> Hi Ayan, > Hi Michal, >> >> On 02/06/2023 14:07, Ayan Kumar Halder wrote: >>> >>> Restructure the code so that one can use pa_range_info[] table for both >>> ARM_32 as well as ARM_64. >> I grepped for ARM_{32,64} in our code base and could not find any use >> in source files except for things >> introduced by this commit. While I'm ok with it in a commit message I >> think for consistency we should be >> using arm32/arm64 in the code. > > AFAIU, arm32/arm64 refers to the Architecture. ARM_32/ARM_64 refers to > the configuration. > > If you see the original code (xen/arch/arm/include/asm/p2m.h, > xen/arch/arm/p2m.c) > > ARM_32/ARM_64 has been used. > > Thus, I used ARM_32/ARM_64 in this commit. Let me know if it makes sense. > The rest of your comments look sane to me. In text, we commonly don't use the name of the config. Instead we use the name of the architecture (i.e. arm32/arm64) because this is a strict correspondence. I agree with Michal, about using arm32/arm64 rather than ARM_32/ARM_64 in the comments at least to stay consistent with the rest of the code. Assuming there is no other changes required in this patch (I haven't looked at it yet), then I am happy to handle this request on commit if you are OK with it. Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Thu Jun 15 10:15:25 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 15 Jun 2023 10:15:25 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549503.858072 (Exim 4.92) (envelope-from ) id 1q9k0S-0006i6-S4; Thu, 15 Jun 2023 10:15:08 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549503.858072; Thu, 15 Jun 2023 10:15:08 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9k0S-0006hz-O7; Thu, 15 Jun 2023 10:15:08 +0000 Received: by outflank-mailman (input) for mailman id 549503; Thu, 15 Jun 2023 10:15:07 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9k0R-0006gn-Kc; Thu, 15 Jun 2023 10:15:07 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9k0R-0000Kl-IQ; Thu, 15 Jun 2023 10:15:07 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9k0R-0004qW-36; Thu, 15 Jun 2023 10:15:07 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q9k0R-0002Hi-1n; Thu, 15 Jun 2023 10:15:07 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=GoAc7gpUaN8kzGyVCvn0/WRavzTZEiSF4nMb8NI5x9Q=; b=5/r3DmT1NhzGBNpHjSElOjO2bB YTxUiDi6jB29mRyalSWobPNqrx3GUadheFoGHM9gfQTUKeirDsBcBqsYzjnsn7IMck+eyesUpFJRJ 5GqWgZVKzr6vTF4h5F5He/7OpeU2kkz2pEjuLpV0i9fJnk9Z7tpS7cLWzYS9+orsuSEo=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [ovmf test] 181438: tolerable FAIL - PUSHED X-Osstest-Failures: ovmf:test-amd64-amd64-xl-qemuu-ovmf-amd64:guest-localmigrate/x10:fail:heisenbug X-Osstest-Versions-This: ovmf=ea55bd8f66eeca5f4e80c3679bcf1b1007286b8a X-Osstest-Versions-That: ovmf=aad98d915abe5ba092e318913028ed47937a9447 From: osstest service owner Date: Thu, 15 Jun 2023 10:15:07 +0000 flight 181438 ovmf real [real] flight 181441 ovmf real-retest [real] http://logs.test-lab.xenproject.org/osstest/logs/181438/ http://logs.test-lab.xenproject.org/osstest/logs/181441/ Failures :-/ but no regressions. Tests which are failing intermittently (not blocking): test-amd64-amd64-xl-qemuu-ovmf-amd64 18 guest-localmigrate/x10 fail pass in 181441-retest version targeted for testing: ovmf ea55bd8f66eeca5f4e80c3679bcf1b1007286b8a baseline version: ovmf aad98d915abe5ba092e318913028ed47937a9447 Last test of basis 181429 2023-06-14 15:14:02 Z 0 days Testing same since 181438 2023-06-15 05:42:42 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Tuan Phan jobs: build-amd64-xsm pass build-i386-xsm pass build-amd64 pass build-i386 pass build-amd64-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-i386-pvops pass test-amd64-amd64-xl-qemuu-ovmf-amd64 fail test-amd64-i386-xl-qemuu-ovmf-amd64 pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Pushing revision : To xenbits.xen.org:/home/xen/git/osstest/ovmf.git aad98d915a..ea55bd8f66 ea55bd8f66eeca5f4e80c3679bcf1b1007286b8a -> xen-tested-master From xen-devel-bounces@lists.xenproject.org Thu Jun 15 10:18:17 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 15 Jun 2023 10:18:17 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549510.858082 (Exim 4.92) (envelope-from ) id 1q9k3U-0007Hh-9r; Thu, 15 Jun 2023 10:18:16 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549510.858082; Thu, 15 Jun 2023 10:18:16 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9k3U-0007Ha-6g; Thu, 15 Jun 2023 10:18:16 +0000 Received: by outflank-mailman (input) for mailman id 549510; Thu, 15 Jun 2023 10:18:14 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9k3S-0007HQ-I0; Thu, 15 Jun 2023 10:18:14 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9k3S-0000OR-GO; Thu, 15 Jun 2023 10:18:14 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9k3S-0004wj-5F; Thu, 15 Jun 2023 10:18:14 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q9k3S-0003As-4k; Thu, 15 Jun 2023 10:18:14 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=5xHsYet1f9wNoSXWHgkf1KA2WiTTGssatfjBQCjh1Vg=; b=4ffbavq9fSEoO+kQMEERUJMxe4 lyaN7Y0B4TOUl6Qn/bMzvXnKPpxXei0ei57acAv9k6FmYaq1mBXk5hHnn3lPQiQlm/7QEARzRS6NA 1YZhuw2dJYjxhOXZMaQqvLqI2dmQij6uhvRJOeWh/7P3vkqTo5kHJt/U4123P9CvR0n0=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [qemu-mainline test] 181436: regressions - FAIL X-Osstest-Failures: qemu-mainline:build-amd64-xsm:xen-build:fail:regression qemu-mainline:build-arm64:xen-build:fail:regression qemu-mainline:build-arm64-xsm:xen-build:fail:regression qemu-mainline:build-amd64:xen-build:fail:regression qemu-mainline:build-i386:xen-build:fail:regression qemu-mainline:build-i386-xsm:xen-build:fail:regression qemu-mainline:build-armhf:xen-build:fail:regression qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-i386:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:build-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:build-arm64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:build-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:build-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pygrub:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking X-Osstest-Versions-This: qemuu=7efd65423ab22e6f5890ca08ae40c84d6660242f X-Osstest-Versions-That: qemuu=6972ef1440a9d685482d78672620a7482f2bd09a From: osstest service owner Date: Thu, 15 Jun 2023 10:18:14 +0000 flight 181436 qemu-mainline real [real] http://logs.test-lab.xenproject.org/osstest/logs/181436/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-amd64-xsm 6 xen-build fail REGR. vs. 180691 build-arm64 6 xen-build fail REGR. vs. 180691 build-arm64-xsm 6 xen-build fail REGR. vs. 180691 build-amd64 6 xen-build fail REGR. vs. 180691 build-i386 6 xen-build fail REGR. vs. 180691 build-i386-xsm 6 xen-build fail REGR. vs. 180691 build-armhf 6 xen-build fail REGR. vs. 180691 Tests which did not succeed, but are not blocking: test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-xl-xsm 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-raw 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-xsm 1 build-check(1) blocked n/a test-arm64-arm64-xl 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit1 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit2 1 build-check(1) blocked n/a test-arm64-arm64-xl-thunderx 1 build-check(1) blocked n/a test-arm64-arm64-xl-vhd 1 build-check(1) blocked n/a test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a test-armhf-armhf-libvirt 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-qcow2 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-raw 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a test-armhf-armhf-xl-arndale 1 build-check(1) blocked n/a test-armhf-armhf-xl-multivcpu 1 build-check(1) blocked n/a test-armhf-armhf-xl-rtds 1 build-check(1) blocked n/a test-armhf-armhf-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-amd 1 build-check(1) blocked n/a test-amd64-i386-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-raw 1 build-check(1) blocked n/a test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-i386 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-amd64 1 build-check(1) blocked n/a test-amd64-coresched-i386-xl 1 build-check(1) blocked n/a test-amd64-coresched-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-xsm 1 build-check(1) blocked n/a build-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-shadow 1 build-check(1) blocked n/a test-amd64-amd64-xl-rtds 1 build-check(1) blocked n/a build-arm64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a build-armhf-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a build-i386-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-amd 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-pair 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-qcow2 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-vhd 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvshim 1 build-check(1) blocked n/a test-amd64-amd64-pair 1 build-check(1) blocked n/a test-amd64-amd64-pygrub 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-intel 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd11-amd64 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd12-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-multivcpu 1 build-check(1) blocked n/a test-amd64-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit1 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit1 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-intel 1 build-check(1) blocked n/a test-amd64-i386-xl 1 build-check(1) blocked n/a test-amd64-i386-xl-pvshim 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a version targeted for testing: qemuu 7efd65423ab22e6f5890ca08ae40c84d6660242f baseline version: qemuu 6972ef1440a9d685482d78672620a7482f2bd09a Last test of basis 180691 2023-05-17 10:45:22 Z 28 days Failing since 180699 2023-05-18 07:21:24 Z 28 days 103 attempts Testing same since 181419 2023-06-14 05:08:14 Z 1 days 5 attempts ------------------------------------------------------------ People who touched revisions under test: Afonso Bordado Akihiko Odaki Akihiro Suda Alex Bennée Alex Williamson Alexander Bulekov Alexander Graf Alexander Ivanov Alistair Francis Anastasia Belova Andrea Bolognani Andreas Schwab Andrew Jeffery Ani Sinha Ani Sinha Anthony PERARD Anton Johansson Antonio Caggiano BALATON Zoltan Bastian Koppelmann Bernhard Beschow Bin Meng Brian Cain Brice Goglin Camilla Conte Carlos Santos Christian Schoenebeck Chuck Zmudzinski Cindy Lu Clément Chigot Corey Minyard Cornelia Huck Cédric Le Goater Cédric Le Goater Daniel Henrique Barboza Daniel Henrique Barboza Daniel P. Berrangé Daniil Kovalev David Hildenbrand David Woodhouse Emanuele Giuseppe Esposito Enze Li Eric Auger Eric Blake Eric DeVolder Erico Nunes Eugenio Pérez Fabiano Rosas Fan Ni Fiona Ebner Francesco Cagnin Francisco Iglesias Frederic Barrat Gavin Shan Gregory Price Gregory Price Hanna Czenczek Hao Zeng Hawkins Jiawei Himanshu Chauhan Igor Mammedov Ilya Leoshkevich Ira Weiny Ivan Klokov Jagannathan Raman Jason Wang Jean-Louis Dupond Jean-Philippe Brucker Jiaxun Yang Joao Martins John Snow Jonathan Cameron Juan Quintela Junqiang Wang Kevin Wolf Laurent Vivier Lei Yang Leonardo Bras Maksim Davydov Marc-André Lureau Marcin Juszkiewicz Marco Liebel Mark Cave-Ayland Markus Armbruster Matheus Tavares Bernardino Mattias Nissler Mauro Matteo Cascella Max Fritz Mayuresh Chitale Michael S. Tsirkin Michael Tokarev Michal Privoznik Milan Zamazal Mostafa Saleh Nicholas Piggin Nicolas Saenz Julienne Niek Linnenbank Niklas Cassel Palmer Dabbelt Paolo Bonzini Patrick Venture Peter Maydell Peter Xu Philippe Mathieu-Daudé Philippe Mathieu-Daudé qianfan Zhao Raghu H Rene Engel Richard Henderson Richard Purdie Ricky Zhou Ryan Wendland Sebastian Ott Sergio Lopez Sid Manning Song Gao Stefan Hajnoczi Stefano Garzarella Steve Sistare Sunil V L Taylor Simpson Thomas Huth Thomas Weißschuh timothee.cocault@gmail.com Timothée Cocault Tommy Wu Vikram Garhwal Viktor Prutyanov Vitaly Cheptsov Vivek Kasireddy Vladimir Sementsov-Ogievskiy Volker Rümelin Weiwei Li Xiao Wang Xinyu Li Yin Wang Zeng Hao Zhenyu Zhang Zhenzhong Duan Zhuojia Shen jobs: build-amd64-xsm fail build-arm64-xsm fail build-i386-xsm fail build-amd64 fail build-arm64 fail build-armhf fail build-i386 fail build-amd64-libvirt blocked build-arm64-libvirt blocked build-armhf-libvirt blocked build-i386-libvirt blocked build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl blocked test-amd64-coresched-amd64-xl blocked test-arm64-arm64-xl blocked test-armhf-armhf-xl blocked test-amd64-i386-xl blocked test-amd64-coresched-i386-xl blocked test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-i386-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-amd64-libvirt-xsm blocked test-arm64-arm64-libvirt-xsm blocked test-amd64-i386-libvirt-xsm blocked test-amd64-amd64-xl-xsm blocked test-arm64-arm64-xl-xsm blocked test-amd64-i386-xl-xsm blocked test-amd64-amd64-qemuu-nested-amd blocked test-amd64-amd64-xl-pvhv2-amd blocked test-amd64-i386-qemuu-rhel6hvm-amd blocked test-amd64-amd64-dom0pvh-xl-amd blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-freebsd10-amd64 blocked test-amd64-amd64-qemuu-freebsd11-amd64 blocked test-amd64-amd64-qemuu-freebsd12-amd64 blocked test-amd64-amd64-xl-qemuu-ovmf-amd64 blocked test-amd64-i386-xl-qemuu-ovmf-amd64 blocked test-amd64-amd64-xl-qemuu-win7-amd64 blocked test-amd64-i386-xl-qemuu-win7-amd64 blocked test-amd64-amd64-xl-qemuu-ws16-amd64 blocked test-amd64-i386-xl-qemuu-ws16-amd64 blocked test-armhf-armhf-xl-arndale blocked test-amd64-amd64-xl-credit1 blocked test-arm64-arm64-xl-credit1 blocked test-armhf-armhf-xl-credit1 blocked test-amd64-amd64-xl-credit2 blocked test-arm64-arm64-xl-credit2 blocked test-armhf-armhf-xl-credit2 blocked test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-freebsd10-i386 blocked test-amd64-amd64-qemuu-nested-intel blocked test-amd64-amd64-xl-pvhv2-intel blocked test-amd64-i386-qemuu-rhel6hvm-intel blocked test-amd64-amd64-dom0pvh-xl-intel blocked test-amd64-amd64-libvirt blocked test-armhf-armhf-libvirt blocked test-amd64-i386-libvirt blocked test-amd64-amd64-xl-multivcpu blocked test-armhf-armhf-xl-multivcpu blocked test-amd64-amd64-pair blocked test-amd64-i386-pair blocked test-amd64-amd64-libvirt-pair blocked test-amd64-i386-libvirt-pair blocked test-amd64-amd64-xl-pvshim blocked test-amd64-i386-xl-pvshim blocked test-amd64-amd64-pygrub blocked test-armhf-armhf-libvirt-qcow2 blocked test-amd64-amd64-xl-qcow2 blocked test-arm64-arm64-libvirt-raw blocked test-armhf-armhf-libvirt-raw blocked test-amd64-i386-libvirt-raw blocked test-amd64-amd64-xl-rtds blocked test-armhf-armhf-xl-rtds blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-amd64-xl-shadow blocked test-amd64-i386-xl-shadow blocked test-arm64-arm64-xl-thunderx blocked test-amd64-amd64-libvirt-vhd blocked test-arm64-arm64-xl-vhd blocked test-armhf-armhf-xl-vhd blocked test-amd64-i386-xl-vhd blocked ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 18679 lines long.) From xen-devel-bounces@lists.xenproject.org Thu Jun 15 10:25:52 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 15 Jun 2023 10:25:52 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549519.858091 (Exim 4.92) (envelope-from ) id 1q9kAg-0000QJ-4k; Thu, 15 Jun 2023 10:25:42 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549519.858091; Thu, 15 Jun 2023 10:25:42 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9kAg-0000QC-1t; Thu, 15 Jun 2023 10:25:42 +0000 Received: by outflank-mailman (input) for mailman id 549519; Thu, 15 Jun 2023 10:25:40 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9kAe-0000Q6-Pw for xen-devel@lists.xenproject.org; Thu, 15 Jun 2023 10:25:40 +0000 Received: from NAM11-CO1-obe.outbound.protection.outlook.com (mail-co1nam11on2061d.outbound.protection.outlook.com [2a01:111:f400:7eab::61d]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id f821e251-0b66-11ee-b232-6b7b168915f2; Thu, 15 Jun 2023 12:25:39 +0200 (CEST) Received: from SN6PR12MB2621.namprd12.prod.outlook.com (2603:10b6:805:73::15) by DM6PR12MB4579.namprd12.prod.outlook.com (2603:10b6:5:2ac::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.25; Thu, 15 Jun 2023 10:25:34 +0000 Received: from SN6PR12MB2621.namprd12.prod.outlook.com ([fe80::8018:78f7:1b08:7a54]) by SN6PR12MB2621.namprd12.prod.outlook.com ([fe80::8018:78f7:1b08:7a54%2]) with mapi id 15.20.6477.028; Thu, 15 Jun 2023 10:25:34 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: f821e251-0b66-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=C+srvkMUAi6To3AveVf6kGt74nv2EIago9OcpwMHWnHTBP6njsu1vZfhZ+Rk5PW5dHRIr1GbMZ3i9Fmmvu4KpsIG4UR9XUtFofzTISQlwnZzORaCH7stTgHwrBxNCMu7sd4v+lr9qOsjSk5WmXramkrHLRGW7EOZ9aCPLRhqC/3n6XN0+xFCh1hJXIuWzxd9OODsl0qhfhlAO5ZGy8C4dvLhgLDL4qtEA/E+NUeO5bo3di95VpY/PzLEc8ECf+kAr2O52hq4YtOSFN2UFJGk5HlZgkasrrE+jnhEUxjMnoVcTjuEnTdFBaf51jUWFckIM3x1eotAxJJUwVBQfGwh2g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=PZ3kod+gYclj2c63iWXLJqlG07+b/S5pELG7wjaa8RE=; b=kQD5c3b7qusWN/BapM4DjRHmjspZM1DPn8X9JWf5/vyXKeDMwEV8cVjXTff3RUnYzTInM5Fs87gY1POiM1YjrNqaOfbBH+OuThDh96CXFGDoHvFE84VuzEynU2O+54MxpOw4AkM2Wq2EkE56HaXZfz9ylXg+ig7pWGySVffO7QvEG10VO5vnu20wJzpzM1w8TPRKx2fz7bOso2C9XvM2kkyb8ryt1PsXz38HfaS8cMlKKKLUOoMldIqPYTsFrHTSkqn7f29nOdYNRVmFBCcbtD8Ty6loBl8ATiWuiO8/NxuCgU4rVH2YJAkQ51av7FUcLJhPXCdLwkUuuyzm9zh/hg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass header.d=amd.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=PZ3kod+gYclj2c63iWXLJqlG07+b/S5pELG7wjaa8RE=; b=O2CVhEQdjyMrvF1uHdPpwS2/IpBl5fbckDb4Of6xqHcjAemgqWfNtuq4Yytxt4IR2TVsR0jOHdMpptWN43DCREBEs783hLLFGAp5gC9kQl1poRT/FzkyzEfjNK+xbTEVVWH6iNeL9UvxzAMzmNd4tM+2ne0zhgZ46jWrzh//Q/Y= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=amd.com; Message-ID: <7b52a2bb-b34c-f659-52b2-53b730351de4@amd.com> Date: Thu, 15 Jun 2023 11:25:26 +0100 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [XEN v8 1/5] xen/arm: p2m: Use the pa_range_info table to support ARM_32 and ARM_64 To: Julien Grall , Michal Orzel , Ayan Kumar Halder , xen-devel@lists.xenproject.org Cc: sstabellini@kernel.org, stefano.stabellini@amd.com, Volodymyr_Babchuk@epam.com, bertrand.marquis@arm.com, andrew.cooper3@citrix.com, george.dunlap@citrix.com, jbeulich@suse.com, wl@xen.org, rahul.singh@arm.com References: <20230602120754.23817-1-ayan.kumar.halder@amd.com> <20230602120754.23817-2-ayan.kumar.halder@amd.com> <35d0fd4a-4afe-6203-183b-d0a1f2f5d5ba@amd.com> From: Ayan Kumar Halder In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-ClientProxiedBy: LO4P265CA0021.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:2ae::22) To SN6PR12MB2621.namprd12.prod.outlook.com (2603:10b6:805:73::15) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SN6PR12MB2621:EE_|DM6PR12MB4579:EE_ X-MS-Office365-Filtering-Correlation-Id: 1cb629b2-3db8-45cf-62c6-08db6d8ada68 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 1h5E1F3aP+AZF2qHIwmQ9cCApV07VtwNl1oxp70o137izcYGtBwJNQVSWpjSZe2FmbWXoshCvGxfzPN3bfX2U93QInwsfHUAogOAjkLKAWZeIS2e4sXUkIPCrnQ1YVF/tpnLFyLb/Bcrdl64Z47EavfYvMmoQkEhYre3ikFQ/9Bxou7UoahockAsdFvrG7PfKTfmbt4lN0SOspgui1xyxRWaw6dDawmc4qPNeOlcyYUV7wqlH5Z+cyTQhKZSjij4HggboOfMEejCaYe56NuFh6PW+ZXRqkTSeN5PsGpzsNiaQkvFrXWdHPogSYtA2jV2ztNbe+L+SgIBDEnXdxVwlCq3Qkn3dJjoMtYLbhaDscDKh8mUlt1GnVlhXNoGyj2LygeO1UJ9ukOM92bZWYzV3o9SFxvFV1SmLojYgN5Poxl8DuJHfioaSVbvA8DOToSQI3tHU5x8gMISBOABkU2sZiFKg8fWbo2ptxp+9/y9auDPS5RV/D0W+djuPV7EPMiE0QmAZ2t8YmgMK7K103GvB2pDi5qMXHzGG++6M10anNlQ9QPWFS2jJ/Y0z6iZBArvprZUzg+a7aKc2xKy7c1TM2g5U9Ss+gks2mm04Y+EwdSqq/I+gkYeevZ4V8j+8WgFQkqEQdFO461QDoWyydvGWQ== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SN6PR12MB2621.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(366004)(376002)(136003)(396003)(346002)(451199021)(2906002)(26005)(6512007)(186003)(83380400001)(2616005)(66946007)(66476007)(66556008)(31686004)(4326008)(41300700001)(8936002)(8676002)(6486002)(316002)(6666004)(110136005)(31696002)(36756003)(38100700002)(478600001)(7416002)(53546011)(6506007)(5660300002)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?NlE5MUo2U0FFeC9USVpQRUdMejZrWkxyTzhSeXVRYWJMNGJodUE4STJ1ckgz?= =?utf-8?B?cjQ4c2dleHVSbXd0QndmckpXU04wbjIvbFhXMisvUDBTelpKMVN5a3ZKS2Vy?= =?utf-8?B?bW9iblVRc0l0Q3F6WWJBUmQ1dlByM1cvbldtRC8zaU5YajZyTTdBQWNPZGNH?= =?utf-8?B?Yi8vUm0vUTErUWE1dWRyZnpCZnlBc2tKL0V0d2JyT1IzaG5OblBIQUdvanJ3?= =?utf-8?B?aXFLRExZWXB2RWJMdmdUblNQeXZ5cnBaTDJSL04zekV2akVxakdBUkNiYkZH?= =?utf-8?B?NzdORkNyK0hxWVRoV0NjWDR4NjhnV2w4T01qUWxzY1VoZTM5djVqSVQzdVhE?= =?utf-8?B?T1pPSGlyTFBZRFlWU01CaWVpQWJXMUpMM2x5QjYweWNtM1dOQ2RhY2RRc3Rp?= =?utf-8?B?cGwzNTNGSzVYU0huandmc0hnUWEzaS8vakcvMnhWV1RYazJmTjVCQ2o1dlBS?= =?utf-8?B?NmVKUlIwaWRFamNQYmwycmpaR2VyczUrRm5NemxGQWVRZ3QvTU95b1h3ZmRi?= =?utf-8?B?ZVpCY1BDQWZVUjlhSWdUWUdRQnVWV2Y5anlRTXRoVDRWWVZrTXJZbHpnaGw1?= =?utf-8?B?dW9MUWJybHdQUm5VTzdwWnZxQ1VSZUgreTcwbE93Qm9KZUpveG41anFLV29x?= =?utf-8?B?eDhnbndqWWlQWkhhMlNtcExlSmZndFZ0cVhJTElMQVE2RSs1SW02SmhIMFFt?= =?utf-8?B?NE9FMDFUYU0zWHc5eGRVbkk1cXBCMjdEbWtZRTYvMVlPanhSYmFTbHR5TDN1?= =?utf-8?B?VjE2WTZjL09FWEZNSzZoVkxTa1NCS3NwY25xVVVVVEo5SWJDSS9TanVFVEh2?= =?utf-8?B?RnIreHlJOFgrR2JiODJKc2E4V3ozbG1xdVdrcThkTDJiZHV3eEN3MXByU2JC?= =?utf-8?B?MXFOd0hlcnAwRUp3bG5DdTM4QUxkUFhaMWcvQlZmR0tobjhPQU9hUjZWYXBl?= =?utf-8?B?QUVOUCtJdFdWQ0pkMlVPQ1lDdUtpelN4UUtFNUxGT1JxcjVrdlRreEVWemgw?= =?utf-8?B?V0diaFZsR05SMHRDV2UrZWxDMGRmZklTZnlaQnBaT2JsNStXcFYzWCs0aEg0?= =?utf-8?B?ak50dnpiWnZiR1ZMeHJJU09XNHlIalBmVlQrcGs3cTI2cm5DVXppUTk4QU1y?= =?utf-8?B?R3luZ3BGc1VYaDYzK1l6WGhncEo0TGs1VlJvUnlyVWlZeVNKU1pSWGZWT2Q5?= =?utf-8?B?L2NqY0hKVWR2V0JrejU3VG5IL1NJcjI3TE5PcnVpZDhETnNvNTBHeDN6S0xm?= =?utf-8?B?UTRPdlFRa3VvaFFmYThaemZJeGVDQ3VEUTZhSndQRUhrZ2JkN2dVUXFCUlNl?= =?utf-8?B?dmQ3MkNacG9xa1VJL2EwVXpLNUQwcjBVOFkwZ2M2cXFFb1RZRnBrSVNMRXFo?= =?utf-8?B?ZjBEcXZsZGFCN1BydG41MmpvWGRDSzBsR0dobkNzRytTN1AvcW01SHNWQ3VU?= =?utf-8?B?LzR6SlhUU3hRUmxUWUhsWXNqb2lJTGVsVytOaTVxNlJJZmI0RDF0VWxiTDAw?= =?utf-8?B?MHNpTmdBM0pmb2FGSHFMNTBkZGxYWGEwVzF2Mzd5Q2lKcm5WSXVyd29pUDlo?= =?utf-8?B?SWhvWW5IY0RoVTBXaHFYV2JQSi9pbUJyVUlXS0J3dnEzaWxBUXBNSEVKcnZB?= =?utf-8?B?cldQRHQvdlNzYU9pTmVFOWRzN09ndDFnd3djaG5nc1A1OXRaNE1MaUlveU5l?= =?utf-8?B?UXFmdFVzblV2MU4wMUpWa2NZcXFacENaTDhoVUJoalNDeExRYXV2aEkrRlFU?= =?utf-8?B?V2kyNEloeWJ4LzFwRWZTUWFWNWNDYkNKdk8wN25LL2R6WVQ3QWN0azNKVkJh?= =?utf-8?B?Z3JGcEdoL2V6K253MFNEdGl0M2w5eHcrSEFqdU9Ia29pTFhhbVBGMHh0SUdm?= =?utf-8?B?ZSt6OTFsaXVKSkRwczIyUEZMUERhWHoyUyt3STM2OGtPVDh0bmpuZi9OZ1o4?= =?utf-8?B?bmpFZ0xxRmNjTkcyaldML0gvcmZKS0QrT3d5S3hUc1pmQnR4OGpOTG9SOFpY?= =?utf-8?B?S29sMjl0YjdsdDJMMVN6anlwQ3ZCT0FtQmRpOTNtWmpOT2t3TGdENjdVWDZ1?= =?utf-8?B?ZGNhS3E4YWJ1OGlDSjFkWHZZNDFWZ2VENkFDSXpkUURyVlc0Sjl3NHFCbHBh?= =?utf-8?Q?5aUyCPSEyYBqEtvRdw3YU8WtQ?= X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-Network-Message-Id: 1cb629b2-3db8-45cf-62c6-08db6d8ada68 X-MS-Exchange-CrossTenant-AuthSource: SN6PR12MB2621.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Jun 2023 10:25:34.2119 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: F1B0Ga+soP7MNYgBKR9mUkh9vfvAnymwgPOIKJNFWjQS5d48xHMtxTMUOX30/CWxI9G34wA1m6G9TDjxUYRsXw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR12MB4579 On 15/06/2023 10:40, Julien Grall wrote: > Hi Ayan, Hi Julien, > > On 15/06/2023 10:29, Ayan Kumar Halder wrote: >> >> On 15/06/2023 09:05, Michal Orzel wrote: >>> Hi Ayan, >> Hi Michal, >>> >>> On 02/06/2023 14:07, Ayan Kumar Halder wrote: >>>> >>>> Restructure the code so that one can use pa_range_info[] table for >>>> both >>>> ARM_32 as well as ARM_64. >>> I grepped for ARM_{32,64} in our code base and could not find any >>> use in source files except for things >>> introduced by this commit. While I'm ok with it in a commit message >>> I think for consistency we should be >>> using arm32/arm64 in the code. >> >> AFAIU, arm32/arm64 refers to the Architecture. ARM_32/ARM_64 refers >> to the configuration. >> >> If you see the original code (xen/arch/arm/include/asm/p2m.h, >> xen/arch/arm/p2m.c) >> >> ARM_32/ARM_64 has been used. >> >> Thus, I used ARM_32/ARM_64 in this commit. Let me know if it makes >> sense. >> The rest of your comments look sane to me. > In text, we commonly don't use the name of the config. Instead we use > the name of the architecture (i.e. arm32/arm64) because this is a > strict correspondence. > > I agree with Michal, about using arm32/arm64 rather than ARM_32/ARM_64 > in the comments at least to stay consistent with the rest of the code. I see what you mean. > > Assuming there is no other changes required in this patch (I haven't > looked at it yet), then I am happy to handle this request on commit if > you are OK with it. I see that the rest of the comments from Michal are related to style (ie no functional changes). Thus, I am happy for you to fix them on commit. - Ayan > > Cheers, > From xen-devel-bounces@lists.xenproject.org Thu Jun 15 10:30:42 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 15 Jun 2023 10:30:42 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549524.858102 (Exim 4.92) (envelope-from ) id 1q9kFI-0001rv-Lg; Thu, 15 Jun 2023 10:30:28 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549524.858102; Thu, 15 Jun 2023 10:30:28 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9kFI-0001ro-Iv; Thu, 15 Jun 2023 10:30:28 +0000 Received: by outflank-mailman (input) for mailman id 549524; Thu, 15 Jun 2023 10:30:27 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9kFH-0001ri-K1 for xen-devel@lists.xenproject.org; Thu, 15 Jun 2023 10:30:27 +0000 Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id a3c5a7bf-0b67-11ee-b232-6b7b168915f2; Thu, 15 Jun 2023 12:30:25 +0200 (CEST) Received: from nico.bugseng.com (unknown [151.57.87.217]) by support.bugseng.com (Postfix) with ESMTPSA id 32E2B4EE0738; Thu, 15 Jun 2023 12:30:23 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: a3c5a7bf-0b67-11ee-b232-6b7b168915f2 From: Nicola Vetrini To: xen-devel@lists.xenproject.org Cc: consulting@bugseng.com, Nicola Vetrini , Andrew Cooper , George Dunlap , Jan Beulich , Julien Grall , Stefano Stabellini , Wei Liu Subject: [XEN PATCH] xen/include/xen/lib.h: avoid undefined behavior. Date: Thu, 15 Jun 2023 12:30:15 +0200 Message-Id: X-Mailer: git-send-email 2.34.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Redefine BUILD_BUG_ON_ZERO to fully comply with C99 avoiding undefined behavior 58 ("A structure or union is defined as containing no named members (6.7.2.1)." This also avoids a dependency on the compiler and its version. Signed-off-by: Nicola Vetrini --- xen/include/xen/lib.h | 16 +--------------- 1 file changed, 1 insertion(+), 15 deletions(-) diff --git a/xen/include/xen/lib.h b/xen/include/xen/lib.h index 67fc7c1d7e..a266159b9f 100644 --- a/xen/include/xen/lib.h +++ b/xen/include/xen/lib.h @@ -40,22 +40,8 @@ unlikely(ret_warn_on_); \ }) -/* All clang versions supported by Xen have _Static_assert. */ -#if defined(__clang__) || \ - (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 6)) -/* Force a compilation error if condition is true */ -#define BUILD_BUG_ON(cond) ({ _Static_assert(!(cond), "!(" #cond ")"); }) - -/* Force a compilation error if condition is true, but also produce a - result (of value 0 and type size_t), so the expression can be used - e.g. in a structure initializer (or where-ever else comma expressions - aren't permitted). */ -#define BUILD_BUG_ON_ZERO(cond) \ - sizeof(struct { _Static_assert(!(cond), "!(" #cond ")"); }) -#else -#define BUILD_BUG_ON_ZERO(cond) sizeof(struct { int:-!!(cond); }) +#define BUILD_BUG_ON_ZERO(cond) (sizeof(char[(cond)? -1 : 1]) - 1U) #define BUILD_BUG_ON(cond) ((void)BUILD_BUG_ON_ZERO(cond)) -#endif #ifndef NDEBUG #define ASSERT(p) \ -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 15 10:38:17 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 15 Jun 2023 10:38:17 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549531.858112 (Exim 4.92) (envelope-from ) id 1q9kMb-0002XL-DL; Thu, 15 Jun 2023 10:38:01 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549531.858112; Thu, 15 Jun 2023 10:38:01 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9kMb-0002XE-AV; Thu, 15 Jun 2023 10:38:01 +0000 Received: by outflank-mailman (input) for mailman id 549531; Thu, 15 Jun 2023 10:37:59 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9kMZ-0002X8-Bc for xen-devel@lists.xenproject.org; Thu, 15 Jun 2023 10:37:59 +0000 Received: from esa1.hc3370-68.iphmx.com (esa1.hc3370-68.iphmx.com [216.71.145.142]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id afcb6b9c-0b68-11ee-8611-37d641c3527e; Thu, 15 Jun 2023 12:37:56 +0200 (CEST) Received: from mail-co1nam11lp2174.outbound.protection.outlook.com (HELO NAM11-CO1-obe.outbound.protection.outlook.com) ([104.47.56.174]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 15 Jun 2023 06:37:53 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by PH7PR03MB6917.namprd03.prod.outlook.com (2603:10b6:510:12c::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.37; Thu, 15 Jun 2023 10:37:51 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606%4]) with mapi id 15.20.6477.037; Thu, 15 Jun 2023 10:37:50 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: afcb6b9c-0b68-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686825476; h=message-id:date:from:subject:to:cc:references: in-reply-to:content-transfer-encoding:mime-version; bh=s374c79AP8kCXdnnKeb7u25zQ2L7Zev1mKjMSQPK5FQ=; b=Wt2gYxKv6shbCFf72gu1JsYiMWV8A8mijtiPdOiR/HMpGmP1OqFDg3MB S5in13F4JC48oofbXVt/g/SjEv+Vsa4Uqmeg0V4KUkzR9tZWPoGCaj3wF QtT+miiEaumgM2ndXaV/N9JOIkmpZBWrukWNjZmovKGDnCHwvjh73keQJ I=; X-IronPort-RemoteIP: 104.47.56.174 X-IronPort-MID: 113310389 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:F2k6GahuOJUUdLH+V0jyFDk2X1614REKZh0ujC45NGQN5FlHY01je htvUDuFOvneZDb1etB/Pdzg/R5X6pLdyNFqTgA++HszRHkb9cadCdqndUqhZCn6wu8v7q5Ex 55HNoSfdpBcolv0/ErF3m3J9CEkvU2wbuOgTrWCYmYpHlUMpB4J0XpLg/Q+jpNjne+3CgaMv cKai8DEMRqu1iUc3lg8sspvkzsx+qyq0N8klgZmP6sT4gaDzyB94K83fsldEVOpGuG4IcbiL wrz5OnR1n/U+R4rFuSknt7TGqHdauePVeQmoiM+t5mK2nCulARrukoIHKN0hXNsoyeIh7hMJ OBl7vRcf+uL0prkw4zxWzEAe8130DYvFLXveRBTuuTLp6HKnueFL1yDwyjaMKVBktubD12i+ tQZGhUkP0jTp9mRnoihTfVTq+t7MOn0adZ3VnFIlVk1DN4AaLWaGuDhwoYd2z09wMdTAfzZe swVLyJ1awjNaAFOPVFRD48imOCvhT/0dDgwRFC9/PJrpTSMilEvluGybLI5efTTLSlRtm+eq njL4CLSBRYCOcbE4TGE7mitlqnEmiaTtIc6TeTjracy2w3CroAVIB4wXnme+vyUs3KzcYhvD 1dJ1ywC9ZFnoSRHSfG4BXVUukWsuB8XXN5ZVfM39BuMzKv86RuWHWUCQXhKb9lOnN87Q3km2 0GEm/vtBCdzq/uFRHSF7LCWoDiufy8PIgcqbigCVhYB/9jlr6k5kx3UQ9BsVqWyi7XdGzv93 jSLpygWnKgIgIgA0KDT1VLahzOhoLDZQwhz4R/YNkq+9R9wboOhY42u6HDY4OxGIYLfSUOO1 FAbn+CO4eZICouC/BFhW80IFbCtov2CaTvVhAc2G4F7rmvxvXm+YYpX/TdyYl9zNdoJciPoZ 0mVvh5N4JhUPz2haqofj5+NNvnGBJPITbzNPs04pPIXCnStXGdrJB1TWHM= IronPort-HdrOrdr: A9a23:jU3H1655awN1jxLg6QPXwdWCI+orL9Y04lQ7vn2ZFiY5TiXIra qTdaogviMc6Ax/ZJjvo6H4BEDyewK6yXcT2/htAV7CZnidhILMFu1fBOTZsl7d8kHFh4tgPO JbAtND4b7LfCZHZKTBgDVQeuxIqLfnzEnrv5an854Ed3AUV0gK1XYcNu/0KDwReOALP+taKH LKjfA32wZINE5nJvhSQRI+Lpr+juyOsKijTQ8NBhYh5gXLpTS06ITiGxzd8gYCXyhJybIC93 GAtwDi/K2sv9yy1xeZjgbonthrseqk7uEGKN2Hi8ATJDmpogG0ZL55U7nHkCEprPqp4FMKls CJhxs7Jcx8517YY2nwixrw3AvL1ioo9hbZuBKlqEqmhfa8aCMxCsJHi44cWhzF63A4tNU59K 5QxWqWu7deEBuFxU3GlpL1fiAvsnDxjWspkOYVgXAaeYwCaIVJpYha2E9OCp8PEA/z9YhiOu hzC8P34upQbDqhHjvkl1gq5ObpcmU4Hx+ATERHksuJ0wJOlHQ89EcczNx3pAZ2yLsND71/o8 jUOKVhk79DCuUMa7hmOesHScyrTkTQXBPlKgupUBTaPZBCH0iIh4/84b0z6u3vUocP1oEOlJ PIV04dnXIuenjpFdaF0PRwg1HwqV2GLHbQI/xllt1EUuWWfsuuDcTDciFhryKYmYRdPiWBMM zDf66/AJfYXB/T8MhyrkvDsqJpWAojuf0uy6cGsm2107L2w63Rx5rmmaXoVfPQOAdhfF/DKV 0+exW2DPl8zymQKwrFaV7qKjzQRnA= X-Talos-CUID: 9a23:TmkxmGxV+pnIYRkm7c66BgUVKOUMIyWN7Ez3fXWiDnpWZZLNVX+PrfY= X-Talos-MUID: 9a23:wF3gbQkNvtWyWvcpDcXGdnphEsxKxv+rJXkxnL9ci+2faAF2F2+k2WE= X-IronPort-AV: E=Sophos;i="6.00,244,1681185600"; d="scan'208";a="113310389" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=g6PVIVFy5huHUuqv8zsqmyzNd0zVpJwkAgFkECySoFCqBjUwvzJkdwIhcTgPaQa1uD/E85xfjgXgwYv3G6PQXxOK+18CeS9puJH0xntwVo3eLV0LbHKD+qZCttPr/LKgDzrd3HBPSmpZ738XpPUBlWNo8ga0AuiSsduWiugQMfd7CbSk8zG695S4HMXM31xhyyvJlnFVGTTNyLeicJCLGH5mkhI/AaT9NMZp8WTDJWkMz+0PYYOecmoVUBY+isYj+nyVC3D1qJF0DP/6IrRP8e3H1z8l/18tbBR+m+vZikjwbMXyg58eV+hauq7oImgmw235RIOwIB4Q/9DItMLQMA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=csWPI2a8l2nrLLK3Guftw/MEB5zQkVpYlI4F+L8ePQ0=; b=Il4hXSM+Fn3cV7S1rhJzr49rbmw1lnwzr/W7f2I7pENKPE1fo3JnLTfPsrh5A5uiVuPiPWPq3mZAj1tgzml8ASdLPrh7XlWWHPlqJdOc5oNd8eDbBv5wKyLAZ7tTzE2UrwaQeeG76OVzg1aXn2qu4EkE6LljLGYLdTkywJW8tUF/1+o7qbwogXO11sZpo2z6LGpGharn0oxvLbMi3u0XIbmb0FB11m1Q9LKsGD/S3k122oS6BKEtZQRazzHHGK7Q5d2AqqeuipyQgU3XwD0NTA06DXF7msl16t2Rbf1CcEKHoZxenPKpFuDxk6WH3uBTxgOMHpnYo48Tr/rydj8a1A== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=csWPI2a8l2nrLLK3Guftw/MEB5zQkVpYlI4F+L8ePQ0=; b=t5a8/KchuwqJ2q31Y/TMyn5SM0e4HiaNvVksNhPv6LH51TJpalDWrzfiDV9w7hHPaHtzuyrYpn0kciw50ChvpHcuwGmyrWBTlh+F4W527OYLudKsZLBi2I4cUfNWAH12By9mzAnzmFLaE4g8XlhMs6Ndmipf3Aby79zqEeQsAgE= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: <33090fef-c72f-3232-93d2-bea0822fbbae@citrix.com> Date: Thu, 15 Jun 2023 11:37:43 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 From: Andrew Cooper Subject: Re: [XEN PATCH] xen/include/xen/lib.h: avoid undefined behavior. Content-Language: en-GB To: Nicola Vetrini , xen-devel@lists.xenproject.org Cc: consulting@bugseng.com, George Dunlap , Jan Beulich , Julien Grall , Stefano Stabellini , Wei Liu References: In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO4P123CA0550.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:319::20) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|PH7PR03MB6917:EE_ X-MS-Office365-Filtering-Correlation-Id: d70315e8-88e1-4632-08fd-08db6d8c9168 X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: GxgTcUWtiflz670qmb0jS5lM0VZU6uV6hV4bVsLJw3/G5/KIFqxt/XN/zGvCZCR6/So0uXI1VNn13r3A9l3tjOCBXHap09epUJd9p81mBa+LkreSJSng9o1NQp5mdwr7Ri/3gyYfReDRFE4Y37ZG7zh7o/gQYab4QcF7t9/eTT+/kYTXjInF2afMsB48DvOVOw9thpDNa7YkQOEZgG+kP0EN2OjajHmOKU9py1nPrFFCgDiw56Vfh4jE/m7q0TrlJZ/2MujqnyVGAUClzlhcdAOAgTkjEsKjkvnmhgMvfL6DnXXNHNjtHkhT7uviIg7w9APg3nm3LiT/oE37qK0S8acpbT7i+0MnhL639mPB6hq5DB/+B1eHwMlxYUmcoazFubcTkacYoJfcAmx+3zLvT96MrD6s0AYe5lfASByMTcSpGIf2PkZTP7kUao5+6DZJej0OjDsMOJT/cvz0teM8mEKc0zomfBDTBYD6C4sGE/KkjntvVCGhYkhvnGQkHhp56XMsA3KdwQ2BDcSwTtOHmNT1YpoHjkpxOkEBk+6sevWAncRBH5Ztqj9RKvRI62OQJzCOPrBxer3dM21rYiQxL45Wzf0nwEk7XLYUZq0j3HtfApME434OTIUrW179sP6jXqwZ06DXVgExbHClKmomzuBpg5oNQyE9moVzwweq5u59o20LNUMRzJXLwIattDmKLOgEzDhKy1d3ZLc8MURNGA== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(136003)(346002)(376002)(396003)(366004)(451199021)(4326008)(66556008)(6666004)(66946007)(316002)(66476007)(6486002)(36756003)(8676002)(5660300002)(31686004)(8936002)(41300700001)(478600001)(54906003)(31696002)(53546011)(86362001)(186003)(2906002)(38100700002)(82960400001)(83380400001)(6512007)(26005)(6506007)(2616005)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?ZEE2WjJyckNuYXd1Zy9Lbnd0bWJQUmlUUGgvbjdiTFoyNVNSaWtNUVE0Q3VM?= =?utf-8?B?WXZxV3p6ckJ0NjVBTjlKM0FacHBFcGtpWXQ3VlRmT293UUtvcE5DTG92bk1z?= =?utf-8?B?Mk9jSTMwT3M2VTA4WjByOG1FYjRINXFiR0owL3ZOR1BKWUJkamdrbWRYTVhE?= =?utf-8?B?VjY5L0svOWdpcjAzaEhMNEtuOVRRZmFUZ3ZUUGZIajlSOHFlYnlhZC9lbVJt?= =?utf-8?B?czlEeGlMQ08xRURMMVBKSE5IWnBTMVMvVExWaWF0dXBTSnNjVjhWa0tOUlNG?= =?utf-8?B?WFlSZDYyZ2FnODA1YUdTcUw2RHZRS2lHQVVWL1psOGNtTko3VmxnSER6MVZi?= =?utf-8?B?WGdMcjE1WGFWS3lwT0NUZEEwRVpZa2V0eExUMWtCK1E0TVkwN0RyK0dlVndR?= =?utf-8?B?YVpuMW1iWGdHTnQ2UStmZEFQOXRNRmtkSTFDSGlqY2lrWnB2cmxsV1dCTUl3?= =?utf-8?B?a2lnN2s3N0gvUFpuUmFlRlVUclFJcWpYb0RuaHdpbDdIRmVBZGFIbDNoUTJj?= =?utf-8?B?aUdNeHc2V085dWg0Y3E3VjVaSTZaVHhyTWxVZ2EvM1h4aGEzMlpXUFcyUWt2?= =?utf-8?B?dTlJU3lVb3dRK1J6Yy8zZm1FTE5OTmVmVVFjSDlnNVhLVlpuSHpKOWRTYmxp?= =?utf-8?B?OHUvck9pN3UwQ1J3VHpMejlaMTR0U0N3MVJ6ZlpUYnExQ1BFR2pPU0poNTY2?= =?utf-8?B?eHRxYmxuQXpwWjRWcHVlZ2JOdFB4Wk14K2czaFV2RUp5OXBnclI0WWVDbm1L?= =?utf-8?B?WGVNbHhnSVVMN01qSThLYzZsb1ZZc3V4eTNRVXg3dzdlOGNBbUloT1d0KzZX?= =?utf-8?B?UFpyU1c5TUlkdng4UW5jRHIwRUVnMEtNVzdLNHk5L09xSFRQMkZEaWRMb2ky?= =?utf-8?B?WVo1amVNVVpNM29lTFlnVGkxS3BlVFczUXA2QjJycCtFMzkvMGtWU0JWWENB?= =?utf-8?B?U0d6eFBsdW4rb3VyVGd0VHlkSTMyUFpGaVVvaEJtaE1UVUZDREJLOUpQdTkw?= =?utf-8?B?RlJxTHlsSWpVTWdYU0ZrdWFkajZ1eXhsWWlpNkhEOEdEb2Ryb2dpLzZyNE1E?= =?utf-8?B?ek5sYjNvWHpRVlZkcDBWWjM5NmRIK09Eb3Rvd0JMT2o2b2FqRkVUN3dsSkpO?= =?utf-8?B?M2RZaU1qR2lqL3A1NFozWHk5ekZjZURWdU5FdjdMUE9qRWtub1FXb05qbFdN?= =?utf-8?B?WGlYZjFHYlRPRkE5SFRRS2toaUxxWm9DNU50ME1LNHh1K2plZTlOY0E5dlJP?= =?utf-8?B?blpqRmU0SjJrY0lacXJrbzlySjJ2emVQcjlUWjBiaU5LTS9xRWw5czNmeW5X?= =?utf-8?B?LzJWZWl6akZqNzFVblRJUW9oR0w5MFZlWFhyVjFhQXhURU55Q0ZCaE5WeEUr?= =?utf-8?B?Y3g1ZkovdlpGanQzNTRvbU96Umphb08xakRkZ1U0TmxjTjhYTWJEVlFPRDBz?= =?utf-8?B?cmFCa0p6dThvY1NnUHR1b3ZJTGgrdTMvcTVXUVNsQW80eVdLV01aZldGWE1n?= =?utf-8?B?VURRT3JEMGxCUitwaTdxTnhJYlZoYmxjQ0pjK2dyRDhpaHp5YUpCT3ZHZGlV?= =?utf-8?B?SUlKZ0xTaU1ueEpoVHZrUWhJRlRyTTl2cnhvWGV1Vlp3T0FwUVJZNGdHdDlq?= =?utf-8?B?Vzh3WkZ0UElZd001VFdJTFUxTDAyYUc5dzFFaEpIN3pTM1plc0N4TXN3V2NF?= =?utf-8?B?c1lTSkJKd29nWU1reG5mUmg3a2tPcnd2dTZmcFVXYUN1R2NBZjVnUXdRTW9O?= =?utf-8?B?MEFoSEQvYU9wSVFTb1IxMmpwMGJRM0FxYWpJb1E0c3dxOEdLNHpkeU9iRzZu?= =?utf-8?B?cC9uR2o3SjQ0NFRNWVpzVHpVZEJpY3JMcllUNUFodzZ0L1VyUTBCTjVNYTlk?= =?utf-8?B?eXEvUmk1OWVZbzJUYjhyYjdjMWtqQTdicEwwUjJidGdXcHhzckhUd0gwS0tp?= =?utf-8?B?R1EwR0o1eGp0S2ZDa3pxVHVyS3NGV1Q2NlNMVDZiaSsrZkliYXcwdnlvb1pu?= =?utf-8?B?OEwyMC9KL2tRSkdleWp6MTcrcU5QWUR2ekFiZFZ4NENpZkg0VWhGdHpTYTVm?= =?utf-8?B?NCtZblViS1pnN01lRGJXVStsd3Z6MFR2NGlzRml4L0xORzlGZTVZRDBjWkR2?= =?utf-8?B?dVJYY2NmL3NweEF1NEpaeWZCd2l0bVl6WEw4VzI3a1JNSmZVbXZzd0tLVGg1?= =?utf-8?B?SUE9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: R/NskfYbws13pQOU574dZcC7iNuFbZsS6BX1lA/izyW33Ek/5e7Cxn0aaaxRvWhwctIz+ws7vrRvemIKhIkWALpEgpTwQcE/5l5EZSFlIILcscn5846ywcd176dySHwgjXELMG0BiDbPb+tFDrdiKPSt6ABq7xdxjuOuhRQflXKdo+bIrjgAhWGKtde5NfhpfC2Gi6j6gBtYjCeMdp8gVti/vbF0Wv4cY+gqLnVOjjZDHwpdFIEks5B2K9wOIIi4EIjiuOplwypbqmg68T6dQTyY1BRfWwguJzBEHyEPxcROAvrQCJ+aRnusgN9H7XqrBDBwQYb1VhZWzVMOr9OfjfxGjzXoKL+Ei1zA+qieHH5SaxzKjXIVQNn2kuaTgHiozzYHWBeqFzylyFZy0GesqgHww/HSrwKIOG9DpXotEhJezvb6kvIU3X/w2pRI5s7vNIOcxyyYcb+PF+gAJn9F3t7eKsmlv00LeMNpJ7H2SasbggPoVgiVVDuk21iLOVJwC6LyewjuCMwTnK9rPAUWPqNeqNbMlOJBWnFxZ+Q0zPCRT0kp0U+1kVWzTT3IaZnC1DSb7+er0Q6AgqdQoGDWfUvxgjAjsgMawXSh4wJNoxUzDPhTQSSkAsRNetmMFGzO9sBQoaYprxrvXYqRQaC10jeEwmH/P+YfT/5RFFUOHX43lw1cjavl//p16l0eZ69IbdgUgk4HR8Z04WPGSBeks4cWkDRwTHtGda/KzAabcBcyFmUqjr9DloUxOUXButLzfx8H1XZZW6kd3IJ3AKh9XqHUoE9Jl8BO9eYq2XdjMf9PRGzTV5RJdT4+cUbqOAgSTaiSr/63lAmUxoo3WgzH9edAFSRNWoIaRWoETKz1krtIBncybV1noggCv/JZCy1g X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: d70315e8-88e1-4632-08fd-08db6d8c9168 X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Jun 2023 10:37:50.8267 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 2ZYDn77GnOPT2IYvNsFHr6S+ZmCY5sho5FDhlDUGHcl0VlO4BcRL+/SLROfll6/tn70FEVcCSzgTChjcYGbdGxyx4rqpHYPcV3q6MQE6prw= X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH7PR03MB6917 On 15/06/2023 11:30 am, Nicola Vetrini wrote: > Redefine BUILD_BUG_ON_ZERO to fully comply with C99 avoiding > undefined behavior 58 ("A structure or union is defined as > containing no named members (6.7.2.1)." > This also avoids a dependency on the compiler and its version. > > Signed-off-by: Nicola Vetrini > --- > xen/include/xen/lib.h | 16 +--------------- > 1 file changed, 1 insertion(+), 15 deletions(-) > > diff --git a/xen/include/xen/lib.h b/xen/include/xen/lib.h > index 67fc7c1d7e..a266159b9f 100644 > --- a/xen/include/xen/lib.h > +++ b/xen/include/xen/lib.h > @@ -40,22 +40,8 @@ > unlikely(ret_warn_on_); \ > }) > > -/* All clang versions supported by Xen have _Static_assert. */ > -#if defined(__clang__) || \ > - (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 6)) > -/* Force a compilation error if condition is true */ > -#define BUILD_BUG_ON(cond) ({ _Static_assert(!(cond), "!(" #cond ")"); }) > - > -/* Force a compilation error if condition is true, but also produce a > - result (of value 0 and type size_t), so the expression can be used > - e.g. in a structure initializer (or where-ever else comma expressions > - aren't permitted). */ > -#define BUILD_BUG_ON_ZERO(cond) \ > - sizeof(struct { _Static_assert(!(cond), "!(" #cond ")"); }) > -#else > -#define BUILD_BUG_ON_ZERO(cond) sizeof(struct { int:-!!(cond); }) > +#define BUILD_BUG_ON_ZERO(cond) (sizeof(char[(cond)? -1 : 1]) - 1U) > #define BUILD_BUG_ON(cond) ((void)BUILD_BUG_ON_ZERO(cond)) > -#endif Getting rid of memberless structs is fine.  Getting rid of _Static_assert() is absolutely not, because this change massively obfuscates build time error messages. The MISRA work can do whatever is necessary to get _Static_assert() permitted for use globally across Xen. ~Andrew From xen-devel-bounces@lists.xenproject.org Thu Jun 15 10:42:17 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 15 Jun 2023 10:42:17 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549538.858122 (Exim 4.92) (envelope-from ) id 1q9kQe-000441-1Q; Thu, 15 Jun 2023 10:42:12 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549538.858122; Thu, 15 Jun 2023 10:42:12 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9kQd-00043u-U8; Thu, 15 Jun 2023 10:42:11 +0000 Received: by outflank-mailman (input) for mailman id 549538; Thu, 15 Jun 2023 10:42:10 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9kQc-00043T-DP for xen-devel@lists.xenproject.org; Thu, 15 Jun 2023 10:42:10 +0000 Received: from esa3.hc3370-68.iphmx.com (esa3.hc3370-68.iphmx.com [216.71.145.155]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 43c738a6-0b69-11ee-8611-37d641c3527e; Thu, 15 Jun 2023 12:42:04 +0200 (CEST) Received: from mail-co1nam11lp2177.outbound.protection.outlook.com (HELO NAM11-CO1-obe.outbound.protection.outlook.com) ([104.47.56.177]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 15 Jun 2023 06:42:02 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by PH7PR03MB6917.namprd03.prod.outlook.com (2603:10b6:510:12c::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.37; Thu, 15 Jun 2023 10:42:00 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606%4]) with mapi id 15.20.6477.037; Thu, 15 Jun 2023 10:42:00 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 43c738a6-0b69-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686825724; h=message-id:date:from:subject:to:cc:references: in-reply-to:content-transfer-encoding:mime-version; bh=ebPZQpXDPr+kQ+zkBy7tFVzhh325XmOUawACjb/KqdU=; b=Js7MBE2NILrLARWyWK86Tl2xskJ4cVp+6Me/WPX/ncY+IR+7q3FUELNR KHssK3kLJeBWYlEYI1aqddCKLGlqkhqZS72CGK4z+choyiLxbeUxAsLeF aMdkxGPCNTYFxOcbN47Er5L3R/yCSXzSdYWnp8N4SPZsIhoMcVBd+a4lX U=; X-IronPort-RemoteIP: 104.47.56.177 X-IronPort-MID: 112903236 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:X01h5aycDzTLs1rj2Id6t+caxyrEfRIJ4+MujC+fZmUNrF6WrkUFm mccD2HSaPzeYzfyKtt0PYnko0kPscCHydI1TQpu/CAxQypGp/SeCIXCJC8cHc8wwu7rFxs7s ppEOrEsCOhuExcwcz/0auCJQUFUjP3OHfykTrafYEidfCc8IA85kxVvhuUltYBhhNm9Emult Mj75sbSIzdJ4RYtWo4vw/zF8EsHUMja4mtC5QRgPK0T5TcyqlFOZH4hDfDpR5fHatE88t6SH 47r0Ly/92XFyBYhYvvNfmHTKxBirhb6ZGBiu1IOM0SQqkEqSh8ai87XAME0e0ZP4whlqvgqo Dl7WT5cfi9yVkHEsLx1vxC1iEiSN4UekFPMCSDXXcB+UyQq2pYjqhljJBheAGEWxgp4KWZK9 98qdWoAVCKKl92z5O/8buZNmst2eaEHPKtH0p1h5RfwKK9/BLvkGuDN79Ie2yosjMdTG/qYf 9AedTdkcBXHZVtIJ0sTD5U92uyvgxETcRUB8A7T+fVxvjaVlVMuuFTuGIO9ltiibMNZhEuH4 EnB+Hz0GEoyP92D0zuVtHmrg4cjmAuiAdhDTObiraACbFu73mhILx4HaV+ChMaiiFCCHM5eG mcP9X97xUQ13AnxJjXnZDW6qnOZuh8XW/JLDvY3rgqKz8L8/AKxFmUCCDlbZ7QOpMIwADAny FKNt9foHiB09q2YT2qH8bWZpi/0PjIaRVLufgcBRAoBptLk+Yc6i0uWSs45SfHqyNroBTv33 jaG6jAkgKkehtIK0KP9+k3bhzWrpd7CSQtdChjrY19JJzhRPOaND7FEI3CChRqcBO51lmW8g UU= IronPort-HdrOrdr: A9a23:0HIGl622MCTh0m8Nj+wxRQqjBa9xeYIsimQD101hICG9Lfb0qy n+pp4mPEHP4wr5OEtOpTlPAtj4fZquz+8T3WB3B8beYOCGghrTEGgG1+ffKlLbak7DH4JmpM Jdmu1FeabN5DtB/LjHCWuDc+rIqePvmM7IuQ6d9QYUcegDUdAe0+4TMHf+LqQZfnghOXN0Lu v/2iIRzADQBUj/I/7LTkXsGIP41q/2vaOjRSRDKw8s6QGIgz/twLnmEyKA1hNbfyJTzawk+W 3llRW8wqm4qfm0xjLVymeWtv1t6Zfc4+oGIPbJptkeKz3qhArtTIN9W4eatDRwjPCz5E0smN zspQ5lG8ho8Xvecky8vBOo8Qj91zQF7WPk1Daj8DbeiP28YAh/J9tKhIpffBecw008vOtk2K YO+26CrZJYAT7JgSy4vrHzJltXv3vxhUBnvf8YjnRZX4dbQLhNrbYH9EcQNJsbBir15K0uDe ErJsDB4/R9d0+cchnizyJS6e3pek52MgaNQ0AEtMDQ+z9KnEphx09d/8AblmdozuNLd7B0o8 D/doh4nrBHScEbKYhnAv0afMexAmvRBTrRLWO7Oz3cZeE6EkOIj6SyzKQ+5emsdpBN5oA1go 79XFRRsnN3U17yCPeJwIZA/nn2MSSAtAzWu4NjDqVCy/jBrOKBC1zGdLluqbrvnxwnOLyZZx 7pU6gmRMMKLgPVaPJ0NkPFKt9vwEIlIb4oU+YAKiOzS/3wW/3XX8zgAYDuzenWYH8Zc1K6JE c/dx7OA+gFxnyXexbD8W3ssjXWCwPCwa4= X-Talos-CUID: 9a23:EY1FNWzt0wui7LjqSPUCBgUTHsIGQCCHwU3iKl+HDEI0D5maaEOfrfY= X-Talos-MUID: 9a23:QDXubwr4k9vuHjBX5yIezylmb+Br8piqMWUyipcYh46YNB1bIDjI2Q== X-IronPort-AV: E=Sophos;i="6.00,244,1681185600"; d="scan'208";a="112903236" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=RTk82AUpeUf6R0/FQ8u/FyRmmkX+oUjLrtG6Kliqhru55jnFykFH0nuuzG23ze4sywtCpFQL1udMFx0Ajw4MLfshnAwyM/Bm2n3Wxu/XUB+kJRmYFvBtXmUX0kN9hNwx9emScax2Z/uzK7pSF5rb60qHxq483o6pzdjDcbtuL5hPDOeg8M64bY9RiSylHwxNZ9qQPluv7wqGRu1pOn/+t+FKaBhUFZUhAyVCN8cUlfKK8A2zuxA4+Rtc2VWYWGVOeEGSSf5mhSH1z1yWG36DLFcXsVAdq+jmhI/VuBfWYzfNr3jPbH0lN2geECr/6CiTyF1c58bJUuCwNrtIjNC6KA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=lIqwDCdnzsmQRsv19InjPQYPxpJ4eIavPCVl68cnLxE=; b=mazNV9Aqc/ztItnoVob+siogGhlCuuiKdTpZGOvn7qFfBp6lqi0sSHLHtI1vq3wXKsCQKBYcGKQLzVJZj+xRVG3jqJX87Q/tIUKFxACSO9+uVESmD9ukedin25QNwQK6lskpZPhMx92Q0KgADoUOSn2nhBLkJLDxKL1sVUOrdDDbcpFEN7xeaGTzjuX26AWB34nSuch8bjb8ozhUHO56hdofzsbRCcDLv82Ag3KXsfTvaGi7UK6XXZdyQesD1L6B5H4S4hlohcg/hEM/gc8clIyE0+bC1zNhmNyofhUrbudL+5FISuLCVHkDrHPtywSWPcE8NqeETmKCUlC0/8Cyhw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=lIqwDCdnzsmQRsv19InjPQYPxpJ4eIavPCVl68cnLxE=; b=AoiCeyTuQWJokXswdg2m4Aw1HX9vyZUHQtrQ7M6LvTyD2grD6u3OATkXio1rA39sjPivhBm7ftFcg5wHPXHn0aDyNDioxtO8if/W2jd7QgNIjh8fi/arffHuCaVhDTWxUavJj9GQFzrX8UDxaNjp7zdRGiDaR2KNpszgbYV8KPU= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: <8a44c577-07e4-fbc4-d402-efa581042079@citrix.com> Date: Thu, 15 Jun 2023 11:41:54 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 From: Andrew Cooper Subject: Re: [PATCH v3 4/4] x86/cpu-policy: Derive RSBA/RRSBA for guest policies Content-Language: en-GB To: Jan Beulich Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , Xen-devel References: <20230612161306.2739572-1-andrew.cooper3@citrix.com> <20230612161306.2739572-5-andrew.cooper3@citrix.com> <82ee7908-4597-433c-0aca-8c0ad22fff13@suse.com> <386058fe-e9a8-d0e1-c3a0-3f15a4585bd5@citrix.com> In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO4P123CA0366.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:18e::11) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|PH7PR03MB6917:EE_ X-MS-Office365-Filtering-Correlation-Id: 40feb35f-492a-42b5-296e-08db6d8d25e5 X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: tKJdOIiTixdTyctJg02qFKNpfL88m+Zu8x+JpVMeEz6/LGFONH3iusGz49kJ9Dd5ZdheakG5PQOu35rtgerbMV+jRkDK9FVIw70UG9SUHxtKYZg0mv3PHD+Zc0JZMKGip8UgWudy/g6PqzfBukNySGnmmkE9LOEBIqQg+hkygdPbHUKsl683V6szCJxTDuNjCyREKO30oi/ph3DRG2QQlWvC1OIUdSQnHca24zG+iJN2/1IFtDudd1VZrsjF6zHAtnDn5PZorYNf9MIKCik2f7pZFt71s/pK2scXvf7uhkGX9n0wouL6NuGSndY6uqNF62hbSoYjlNpsIC78a+3yqDBCqlBi5fawSUohRMwAcRH5EpnH0T65tIiHccAbM4MNSFTaZzUXQDbjSmzrX25fpu9XJbRVpgzAaT9mNCFpYKkpQMI7y0bxcoNnB+VfGI+/tSWNthKbEiUXnl/0OuNi02wCQqiRsVZdL3uIql5tCxYhbxXr8i6fIeQJLT7xjvt/IZFtn3Sxagk4WZdeOIMJhxkuz5shmmCcWpNuPM8O4R3DeOKNEOuNLYUQKaLbN9baaL34okiVCZCYfJwsdlnSdND5/ybawux0ziiVOYcW1k06kayzhOOtW+DQ1AwHieWMO8RXDXdgekFcEJAPkAEXsQ7uEtQhDQnGFiTOybSf/JLfTYuSc456kmV+dseLETmantEz2b2TNRhdIFlKtXhhrQ== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(136003)(346002)(376002)(396003)(366004)(451199021)(4326008)(6916009)(66556008)(6666004)(66946007)(316002)(66476007)(6486002)(36756003)(8676002)(5660300002)(31686004)(8936002)(41300700001)(478600001)(54906003)(31696002)(53546011)(86362001)(186003)(2906002)(38100700002)(82960400001)(83380400001)(6512007)(26005)(6506007)(2616005)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?WGlDWDdDOGlhQm9jUnhSMVQ4R3puSHNXQ2VncFJ3dEpzTjlRdkVwM2lYeUt6?= =?utf-8?B?YUxMNXo3cTQvd2ErdDFBRWdBNEpmQUw3WVJYN2N4L1lib2VNSWVZUG5kYWhR?= =?utf-8?B?Wk1mejVHanRvUmFETy9mMVFORXM3dG5OcjRDTzBjcmRkTHQ1WFZhOVFKVEJK?= =?utf-8?B?SnNWY0o2bVZhYTR1azJpQi9sN053emhBYzF1RStFTkFmZ1c2Q2hGWTZlQWE1?= =?utf-8?B?NXpGWXNvVWdYbytkV2pkRURXbjQvaHEwOTA4UHFpUW9VcDJmYWNyS0ZqeHZH?= =?utf-8?B?SzZqc3lLTmRhdFZLdTNCbEE0dTE0U0o5WGFFaVlJVGVZRk13cWtaSCtYSlJ1?= =?utf-8?B?YnEyV2wva0dmRDY1K29HQmRZSjh1R0lxR3VhaVpSTzlxdElzM2lWb01BQmN1?= =?utf-8?B?aUd1dVVZdFVoMGc4WVlFVjlZamZrM290bHFBUEo0aENrMzNwYXQrTWtJSDhh?= =?utf-8?B?NEJ6STh4YTE5TFFYZmJKMlFXdmVGSXorL1F3UjNVT2trU0RSYXBCVk15bk40?= =?utf-8?B?S1hNMVdER1kxVGFDVVI2cFc5QkJad1dCYkxxb2pranNiNFZKa1Fodk1xVElX?= =?utf-8?B?aUg2SGJ5UmF4L2ZVaGpzdlpOcm9SSFFQTUJrZDlNZXc0amFhWUhyUGc3TG85?= =?utf-8?B?YUVZdHQ4d0JLa2o3YmFvUTJqV0V1WEpqdmNkNDhxb2F3TTIzOERsTndDbndn?= =?utf-8?B?L0h4ZGxTTnk5UXpjU3pPZ3dXektLWWJuZ2dab1FjSDViZTNOcmd5TXRiUDNh?= =?utf-8?B?QmUrbUd6UW1SRGFNdXFTYTdzNk5XaU1wWDBrQ2lXcENOY2FPMmRHY3NsVFdK?= =?utf-8?B?cDVZalBkTFBNMnF0cmFBZDVDYVRiKzBwcjAzQllHa0NualpBTUx6T01GY3Uy?= =?utf-8?B?Vm9GMjExL0I1QWttc1VHY0thUmpFeS9hRzJ4bllueGsrblhYV0RUWXplVitW?= =?utf-8?B?NUhoWDlMNk9MaDA5VDVnc3ZvWVl6TkI2RmdpaytHNVJPUzJXeXYyK2x5QW5h?= =?utf-8?B?NFVxcHoybER6Q0ViNStFZmpTR04rdy9nOGc1MFQ3QnBreFR2RTFYVUZJV2lk?= =?utf-8?B?N29saGVUSzlaMDlNVVVEaHpaMVNDVTlEU0dHZjBHbEI2c1BBdE9ucmhTaVY3?= =?utf-8?B?QS9lWURLSnVHcGZ2Rko0V25JSUp5eTM5STV1cnpTalNZRzZXanlQK0lYajBp?= =?utf-8?B?Ni9JN2hkekVUQ2kwNlNQN09JZnpQaHo3Q1AzcjVxb01zaHZ1YktMcktCbjJO?= =?utf-8?B?ZGl0cmYzN1pIZUl2eHIrcm0vbGlRWFZLVWtkRkZ3QzI0VTdtRkQ4MWtGSVRw?= =?utf-8?B?cTAwc29hc2E0NjhMemcweHJ4a3crQ09RSmNOSVMxZnlubnQ3YlFIUDdONGxI?= =?utf-8?B?RXNNcHc3a3lzaGVoSlpGR1VMa2dqTVNxeHovME93THY4cTNwdTByN1dmeDlB?= =?utf-8?B?bjZ5SFBvbUVINnhycnY2b2o4ZkFzUHVqc1QvSENzUmJVS0NJa0dUdnBjeUs0?= =?utf-8?B?UnJnWFpLb1R3cm5VSUsyMFJXMlh6dXZnclV5cVJCU01SbXBzaXo2a0g5NnA5?= =?utf-8?B?eFNQNDJpczZOMExldnFkZCt0cjY2b25CYnlaQ0M0QU0vMHlUenlCNVpUS2Jl?= =?utf-8?B?MnVWbzdVa2xNaGgwcUNIeHpsRHNEVTF6TzJZYWhZVkRXd1pvU0tXZEQ2d0Z2?= =?utf-8?B?Skw1bjgwVW15RDBEZlpGZUxTcElTWVRNdUhSNnh1Vk5ZKy8vOVZVSkFrTDI5?= =?utf-8?B?dmNZZmFlNVFNaG9qMjVPb1dJbGN5VjZTUmtNa1lwc3pXTHhuYkw2RVJMM1dU?= =?utf-8?B?QkNNNGh0TkdndHdtM2tQWFJqZzl2cEdHaTRQN2xpLzdWaXNlZHdJV2U4bkRG?= =?utf-8?B?dEMxR0daRmRYbDR4b3ZFNGMzaDNpWjhDU2RrYVpvZkxORXhmdU1LazVOdVBR?= =?utf-8?B?ZnFnQ0xBL05jcFdLaThGY1FUQjBVUVBUb2EweFNkUVZzU05pWU9Cc2ZjMVA1?= =?utf-8?B?NzJTNFA5VEFrZFczaU44bHVFU0xudkR4VW5iOUNOeTdkMTdESWVEM3VoQ0t3?= =?utf-8?B?STlUM2VxMWFTblovM3N6OFBKYmZ4enVWcWdxVDkrTHRodmxwOEFuYlU3MUY2?= =?utf-8?B?b2N4ZHlZOFJMZkZNOGRaTXM2eFUwNFZVTFZXTHZzOEc4UG9IY2RPRFVUV0d5?= =?utf-8?B?K0E9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: ok4/+XK2ikBbfUyeCAASTRXtwlMW9Py/Zb7bwAJP9baGNMIRDaHE431roG+OrMYCwWEXrN2h6dyXO6iI1f8kmXnErlEC2h277x/hpaaEaqCAbvyF2vtz5EOWLnlfXDFo0ASXBNcA19dQBeRD0xOJ3CNtb2XLOfJdz3reVRGpHUWkC702ndQzhJJbzKx/I7yTBTFtbkbj7WXBdYBIoGav0D+1u5umqRCB2dHBAN9cWxvmvj6OgmE6PFI7r73M3a6kFH87zk+VbRU56kBx1a16gftlJ64qMx/JNlaiCc0V9wQozpgDCXyCt6q3XgSsuzUIMHBIek1G4l+OHGdd8sJgQ1mHU8cEAFrdCE1NaMrxV8lAnFg9WsTkUaVMN9wZgGqpg5QnsC4G6i5YKEpr9Z7qJaCS5cdMRiXVLbBfdUqbEwnLSqCclH0fXakNMlKjQ0kOOXVJEHxOm/o4CBjV8f1G75bNyxqzetXTwNOq65SzDMg8f6k1J/t0QQ+zAfvFuEd/pUL2YleUBCNTGnS4PdXsys7f6VkPzwQH5pCafbhYnmMImyixr+p0mR29b8SktejIx8wGi3S+KS7EfusjNvZ/wHed0rihgagkn62sISm3Nxbi5ZDMAO6mmpreaTFGsAVcU1E8Re7FpHBDw+JtUZLZX8InAV5vpmpGvpLr+w13utDZrzmjHw+x4/Bpp/UVutru+lfhN0mHFBog2AbVOGLD87t6HTubxWhV8kTTjcaxl/NFXcKr9OgLN46WJQleUtQaeb5cWAg1vf7ss+Fk5pFk+trtpNYi+LjA4uT4Vzg8eQ33473j1TGKwxI/JBk2+8YbbheBSXmSpSH/OrJOBsOaGQ== X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 40feb35f-492a-42b5-296e-08db6d8d25e5 X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Jun 2023 10:41:59.9466 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: nPQTMLTMhprQT0ql8g+goVkwuT68uH6GScmJMnP17vCJnIsnZ1F9yGq1RBIDAS+LLupxCM+5cSvRDYQELPSaKsDPqqh4Vvpex6eOCM93uMQ= X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH7PR03MB6917 On 15/06/2023 9:30 am, Jan Beulich wrote: > On 14.06.2023 20:12, Andrew Cooper wrote: >> On 13/06/2023 10:59 am, Jan Beulich wrote: >>> On 12.06.2023 18:13, Andrew Cooper wrote: >>>> The RSBA bit, "RSB Alternative", means that the RSB may use alternative >>>> predictors when empty. From a practical point of view, this mean "Retpoline >>>> not safe". >>>> >>>> Enhanced IBRS (officially IBRS_ALL in Intel's docs, previously IBRS_ATT) is a >>>> statement that IBRS is implemented in hardware (as opposed to the form >>>> retrofitted to existing CPUs in microcode). >>>> >>>> The RRSBA bit, "Restricted-RSBA", is a combination of RSBA, and the eIBRS >>>> property that predictions are tagged with the mode in which they were learnt. >>>> Therefore, it means "when eIBRS is active, the RSB may fall back to >>>> alternative predictors but restricted to the current prediction mode". As >>>> such, it's stronger statement than RSBA, but still means "Retpoline not safe". >>>> >>>> CPUs are not expected to enumerate both RSBA and RRSBA. >>>> >>>> Add feature dependencies for EIBRS and RRSBA. While technically they're not >>>> linked, absolutely nothing good can come of letting the guest see RRSBA >>>> without EIBRS. Nor a guest seeing EIBRS without IBRSB. Furthermore, we use >>>> this dependency to simplify the max derivation logic. >>>> >>>> The max policies gets RSBA and RRSBA unconditionally set (with the EIBRS >>>> dependency maybe hiding RRSBA). We can run any VM, even if it has been told >>>> "somewhere you might run, Retpoline isn't safe". >>>> >>>> The default policies are more complicated. A guest shouldn't see both bits, >>>> but it needs to see one if the current host suffers from any form of RSBA, and >>>> which bit it needs to see depends on whether eIBRS is visible or not. >>>> Therefore, the calculation must be performed after sanitise_featureset(). >>>> >>>> Signed-off-by: Andrew Cooper >>>> --- >>>> CC: Jan Beulich >>>> CC: Roger Pau Monné >>>> CC: Wei Liu >>>> >>>> v3: >>>> * Minor commit message adjustment. >>>> * Drop changes to recalculate_cpuid_policy(). Deferred to a later series. >>> With this dropped, with the title not saying "max/default", and with >>> the description also not mentioning "live" policies at all, I don't >>> think this patch is self-consistent (meaning in particular: leaving >>> aside the fact that there's no way right now to requests e.g. both >>> RSBA and RRSBA for a guest; aiui it is possible for Dom0). >>> >>> As you may imagine I'm also curious why you decided to drop this. >> Because when I tried doing levelling in Xapi, I remembered why I did it >> the way I did in v1, and why the v2 way was wrong. >> >> Xen cannot safely edit what the toolstack provides, so must not.  > And this is the part I don't understand: Why can't we correct the > (EIBRS,RSBA,RRSBA) tuple to a combination that is "legal"? At least > as long as ... > >> Instead, failing the set_policy() call is an option, and is what we want >> to do longterm, > ... we aren't there. > >> but also happens to be wrong too in this case. An admin >> may know that a VM isn't using retpoline, and may need to migrate it >> anyway for a number of reasons, so any safety checks need to be in the >> toolstack, and need to be overrideable with something like --force. > Possibly leading to an inconsistent policy exposed to a guest? I > guess this may be the only option when we can't really resolve an > ambiguity, but that isn't the case here, is it? Wrong.  Xen does not have any knowledge of other hosts the VM might migrate to. So while Xen can spot problem combinations *on this host*, which way to correct the problem combination depends on where the VM might migrate to. Xen cannot safely correct a problem combination even if you don't wish to allow the admin the ability to override the safety check. > >> I don't really associate "derive policies" with anything other than the >> system policies.  Domain construction isn't any kind of derivation - >> it's simply doing what the toolstack asks. > Hmm, I see. To me, since we do certain adjustments, "derive" still > fits there as well. But I'm not going to insist on a subject > adjustment then, given that imo both ways of looking at things make > some sense. It's a problem that Xen ever made adjustments behind the toolstack's back, and this decade of technical debt has been extremely difficult to address.  I guess I still view it in terms of the end properties, not the intermediate mess. ~Andrew From xen-devel-bounces@lists.xenproject.org Thu Jun 15 12:14:18 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 15 Jun 2023 12:14:18 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549554.858132 (Exim 4.92) (envelope-from ) id 1q9lrV-0005Au-UC; Thu, 15 Jun 2023 12:14:01 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549554.858132; Thu, 15 Jun 2023 12:14:01 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9lrV-0005An-QS; Thu, 15 Jun 2023 12:14:01 +0000 Received: by outflank-mailman (input) for mailman id 549554; Thu, 15 Jun 2023 12:14:00 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9lrU-0005Ah-D7 for xen-devel@lists.xenproject.org; Thu, 15 Jun 2023 12:14:00 +0000 Received: from EUR05-DB8-obe.outbound.protection.outlook.com (mail-db8eur05on20605.outbound.protection.outlook.com [2a01:111:f400:7e1a::605]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 1a9a60ec-0b76-11ee-b232-6b7b168915f2; Thu, 15 Jun 2023 14:13:58 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by PAXPR04MB9255.eurprd04.prod.outlook.com (2603:10a6:102:2bb::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.37; Thu, 15 Jun 2023 12:13:56 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.039; Thu, 15 Jun 2023 12:13:56 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 1a9a60ec-0b76-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=nvajeFiRAF/tjnzJ8sf+pkvbyXX2ley68oI7CMCid+8PXG6bt1L68Pt4LSNNwi0/b5QBGOQ8r4NOpY2FdrzmsTyj4YXqq4VuVH3dWjUozmZuajdhj0gG6ibq9izhv1pFzIcRTk+nyfF9cXAPZ8Ye5ZGLF+RLimKjYNALqVL+pNOCwsLhl6T32hic41jaP1RET8CnuRs8Okr6ml8xsYZLjWksCPSE/nH/GjPCR+8QPWze26CYBu56HbEnUg4NZvmRYIgnqMdKXBXpc6cEnRha7t4n/gpaOV6R7ILt2gzs7w9RdlKW3bFbPSZc+WNJcoqKqXlBLlPa/AAktJaGYy9ulQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=aUi551lm4BRhVLFxi737l/DCWqxATAKVq3LGR+0ap6E=; b=a1tfkuNqxIOQXYcRTefhe8pQtqpTkzIhlVTGw70DPEEozUOlBrWFP5hTOvJA0eHDGNuUrWVHncjY3XmDRz0fz4NxqtKpYdTyCZv7wjDojhc6533/dJjeOwgZrzr/211/ubL8TnMbfov6GmYTaX6495mN61aZiiOJaOMVoWDcSEDtxtXOicfgxnD0vGxYxT4fR/DQXpKrwPdXRP83RD44fhaJCnNO6ELw5/fITqk3F/EuDYN0cJsqWP4cKnYQrT1VE9jZXNSifTJLZoVgP0i0IQaA+OSUx2vvEFmO8RKxbuuL36QnM/SxyI2oHLMuJyMPWhuG61xoxyXZ0IK8cxSLDw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=aUi551lm4BRhVLFxi737l/DCWqxATAKVq3LGR+0ap6E=; b=VfqK+XmeG/cB94bCcW9/wBp0BEbUlYcKC34Hjn5bK/b/XABAAuYFlWuBmnKFP2IZND3397tiMRDYbo/mz0EXZOuUPDF+eDicf1XCJrW3lnbdxjcC8p0cKiARfD0vQLuSmwoHlhNWhMYIesC5s9Z4bUz/J/Oy8gCmEbevpGa9BgZqan3tkN/YXLNiWmDYHblUnstOTYEkPU8D1CVkCfr6kZbhUcFn7gZrK8NJjkD+B5n0U/vA+Fv2kAYmFumFr88G01/lzdbmXPIqMmpTsWJNZODUqBdVR8cUX1YizaWwg86XscrNp2qDZqC8YSkGKTn6grv/g44wu5LtCNCV8zIJqw== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <35ac1ede-73ed-c748-9eae-06b156145274@suse.com> Date: Thu, 15 Jun 2023 14:13:53 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v3 4/4] x86/cpu-policy: Derive RSBA/RRSBA for guest policies Content-Language: en-US To: Andrew Cooper Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , Xen-devel References: <20230612161306.2739572-1-andrew.cooper3@citrix.com> <20230612161306.2739572-5-andrew.cooper3@citrix.com> <82ee7908-4597-433c-0aca-8c0ad22fff13@suse.com> <386058fe-e9a8-d0e1-c3a0-3f15a4585bd5@citrix.com> <8a44c577-07e4-fbc4-d402-efa581042079@citrix.com> From: Jan Beulich In-Reply-To: <8a44c577-07e4-fbc4-d402-efa581042079@citrix.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: FR2P281CA0065.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:93::11) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|PAXPR04MB9255:EE_ X-MS-Office365-Filtering-Correlation-Id: 77c6ab4e-5b81-4b15-4d87-08db6d99fdbf X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: Z8i2/udHsYPYhGm91zxe5swRSp8BeUdda6byqi+7QTLrsWMz2AiUxEnkJoXXA6kB0R4po1APcCbdg8Bd8mhICetacgVxlOai6GWmPT4Wyuz0bX9Uwg4eGgPdBIw/WEvtlZeJ/lb7ScZVd4LUMmpL/tuMM0bQP5yoQtzTpyrF3muRhxhm45X7iUBrb+Yh0+Fo5kmZ+KKUm0LS2ynvC/ltsa5bMhfyTsMlE2i5fYMH+aRMxyRasVrW0HsHiaSbifJRNQMH858ddrSpJdhbZ8IOegecLABt4h2I8rcn76IUt3XLeuTxchTIFepxTGGE//73BO8ju/NXOmz2kzwg2DngWBk3dNNA7+9DLMM3YyuDmqm8vV5IxuXPbbGW4FyFUCHBr93Zfa7ikkmIEWBIDDuwch8qOcpinQbvKF2k127Y72APzddY/Xb9qQBnRmr6wNlGLMoZSm/CfsHGRiDlWIbt9YK+4lEIdG50P9Rs0/kkTN1K+HqkbbvJgMrdCfQM9OXDKCqLFCof7R/pCJOzdNvw58hyppVmTSnEAI//BAHdGdPzhMF+tK1BOKr2dK7KEZ/7EDKDUabvsydR2n8DTB97hdjdn/okhsYbGFkN3NpWacdPh3Z0GyHQwMJPyDXNfA4zeonNnARrTXhk2kXYJ/UHIw== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(396003)(136003)(346002)(366004)(376002)(39860400002)(451199021)(36756003)(86362001)(31696002)(2906002)(31686004)(6486002)(83380400001)(6666004)(186003)(6506007)(26005)(53546011)(6512007)(478600001)(54906003)(4326008)(66556008)(6916009)(66476007)(316002)(38100700002)(66946007)(2616005)(8676002)(41300700001)(5660300002)(8936002)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?V2g0bkJSTWthSUpma05hbGVQRkR4azhHaDJoVWtUSUxCS0dhSWcrVENXaTRn?= =?utf-8?B?Vm1acVVnODVMZWlxSUp2YzF6OWZpT0pzd29sQkxZOTU5dncvNWJyQkRHWW1t?= =?utf-8?B?bisrSkZYb0tvUnZvZ044SUpXdWZGNk5DdDZsbmJPdjVjLzRTUmhLRjhxT0ZF?= =?utf-8?B?Vnd5ZHpubGtobWVUTHRTK082amJ2OFdKR05KbkhaRm5ncUJVeEVqT0pqMTJO?= =?utf-8?B?LzNab29PMm9RcU5rS3JIVWtLQ0Z4aWxQdGpXbkFlbDVVVnFoWWdsVTlYKy9Z?= =?utf-8?B?ZDV6Q0RqVmFmK3BmSWh4Z0grUzlWTEhWNDNuMWY4S0ZGYjNPMDdyclVXMng5?= =?utf-8?B?U1AvS29LWDJrZVVaZGZNNFJ2YXhSTHIvUU9iaEk4cmkyWlpWVDBmYkI5NDZl?= =?utf-8?B?ckFQZVJ4cmxyQ0pPY3dnNHRVSWcrMDV5Y1VoR2xVcHdOeERBL2lSWEx3OFI2?= =?utf-8?B?TFlwcnF4aXJ3bGZzVVdJZGI0ZDczSUx3T3RiNTFlWUc3SnFOTXhVQ3Foc1Ur?= =?utf-8?B?QnRuWGdLODZhMzhERmpUdFJoaW9UelBYZkVmZW5Cb25HOXRwMjN5RDhnUnJC?= =?utf-8?B?K3B0M3BCQ2JOcDZodWFYMzFLZzQ3Q0RJbHNFdzV3bm8wTklNYytHdjRRZlY0?= =?utf-8?B?bWxCTW1Dejdla2ZwNWVBQTNjN040bGRVMmJpV2hoS1dQczZTQ3J6UFRySFVv?= =?utf-8?B?WFRPZHl2UkFnNmJHaUdkeERSdFdxUTJGeEVGZzJWSE54QjdrNkRUNDF0NGl1?= =?utf-8?B?NEF5NTdsNVA4OG9ReW1tbUNTOHFBbGZzazZFMkJqbmFLbTVzVzR2UU1EWFF2?= =?utf-8?B?a1NTMCtNRVNkY3dVVWtabTNsdFlWak9EWUxqVDRHeEwwcGhyVGl1NmJCVDBD?= =?utf-8?B?bWc1RWZKTlpjNGhucjFSTUkvcnZ4VXBxNXJCRXRQbmdBZlNINlYxWU5mcnNI?= =?utf-8?B?cTVoYVk3aVZQaWJVWEpIc3RVaEtGUFVsanNzOGUyVWw3OUFPSStJNml5MTZV?= =?utf-8?B?ZEV2SU0xeFl0MjR6c1M0dUQ2TnNXRzcvODhVeUVWZm1tMVQ3cjd1aUNOWCtw?= =?utf-8?B?TWpLSCtCNzZhZWVaT3NPQ0NzQTJuOS9mQnE3dWliT0dEaUVya05RYTBGbTZ5?= =?utf-8?B?eHB6RU1TTmhCNGtkSndZR2dtZEc2Q1I0eitYMm00T3d4Sy9ySVZySldBTkp2?= =?utf-8?B?U2NadGVqQVJDOGJLRWs4K241cEhZM1M0cjFhTU5XRjlzaDNvSG45V1Y1UER0?= =?utf-8?B?U1JicXNva01USGRUNnhoS0VSSUM1RFFiVktNMEk1cU1GdU5udlkvbXIvcFJI?= =?utf-8?B?Wm9QTGlIZFBzWitaUi96SjExWTFSNFNYM1kxS1lBRlAxdmpvRW1yQ005bG9l?= =?utf-8?B?SVdIQWR2MU9ZRFhhNzFKQkxpRlVxN3pEYkpyb0VseGNJRUVoWFRWKzB3ZWFD?= =?utf-8?B?UWhCeUVhRVBVU3NMeTNUQ1Rza1Z2cXROV1dFczdHdmpOaFQzUmR6dmIveXJJ?= =?utf-8?B?TGFjL2NobHRQYjFsWWh4d09hVE05NUdMQkhhSCtIZXRkbmYzMjdKckV5Vmcz?= =?utf-8?B?K3hTNEdJV2tocHhURE9NY1k3MGtvN1BGTVBsMDRnS2NFOXF4YXJFbU5ERVZK?= =?utf-8?B?ZGgrT0FGRENnWU85L1NlbzVEZnRzbVpDNFcyYWJoaUtRejdlanVwNHI3Zk5p?= =?utf-8?B?UTV3Z3M3U2l0eUQrOHFBTGJrTkxGOUx6eDJXaEhoOC93cUt1MXlESDdEaFVx?= =?utf-8?B?clc0S0lxZU5QRnArUTZBUnlKazVQYWxMT2ZFL01VdWliRFZFbUgzNlIyemFn?= =?utf-8?B?N01ISkhmWm83VXpZRU05ZEtkZDREUlZWN0FSU0N4Y2dOZG5oWkI2OURiUUhP?= =?utf-8?B?a0x0d0dPODdnMG5FR1ovZmVnRDk5SGw5NkVCczFRS3d1TVU0UW42SmRkQlFI?= =?utf-8?B?RE9ITTdZWGdGQlA4aVd0QjJhcVVVclFvSklVL0Uxd0ZMeGpaa3NObFRKQmhQ?= =?utf-8?B?Qk96anp2NnpaVnZvTmFnSEQ3RDZqQWZHbmYwVlRBekQ1WC9Oa3lPTmNPMnRU?= =?utf-8?B?dGpBK2FQTDdhb2JpRDBOdEJFY3NUYTVHRmdkOFIxclZiRSs0cG1raFAvYmNN?= =?utf-8?Q?HJLHockdGWFzrUlG+qnIAt4rZ?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 77c6ab4e-5b81-4b15-4d87-08db6d99fdbf X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Jun 2023 12:13:55.8979 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: A2KInLrdh1WFHhzZ0trs1cUJtafJd6vqQQDb4cfgaoO4/vfgP6C1bj2Oj/6D+RijQYEPXifyC/Cuz3LT7JOh0w== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB9255 On 15.06.2023 12:41, Andrew Cooper wrote: > On 15/06/2023 9:30 am, Jan Beulich wrote: >> On 14.06.2023 20:12, Andrew Cooper wrote: >>> On 13/06/2023 10:59 am, Jan Beulich wrote: >>>> On 12.06.2023 18:13, Andrew Cooper wrote: >>>>> The RSBA bit, "RSB Alternative", means that the RSB may use alternative >>>>> predictors when empty. From a practical point of view, this mean "Retpoline >>>>> not safe". >>>>> >>>>> Enhanced IBRS (officially IBRS_ALL in Intel's docs, previously IBRS_ATT) is a >>>>> statement that IBRS is implemented in hardware (as opposed to the form >>>>> retrofitted to existing CPUs in microcode). >>>>> >>>>> The RRSBA bit, "Restricted-RSBA", is a combination of RSBA, and the eIBRS >>>>> property that predictions are tagged with the mode in which they were learnt. >>>>> Therefore, it means "when eIBRS is active, the RSB may fall back to >>>>> alternative predictors but restricted to the current prediction mode". As >>>>> such, it's stronger statement than RSBA, but still means "Retpoline not safe". >>>>> >>>>> CPUs are not expected to enumerate both RSBA and RRSBA. >>>>> >>>>> Add feature dependencies for EIBRS and RRSBA. While technically they're not >>>>> linked, absolutely nothing good can come of letting the guest see RRSBA >>>>> without EIBRS. Nor a guest seeing EIBRS without IBRSB. Furthermore, we use >>>>> this dependency to simplify the max derivation logic. >>>>> >>>>> The max policies gets RSBA and RRSBA unconditionally set (with the EIBRS >>>>> dependency maybe hiding RRSBA). We can run any VM, even if it has been told >>>>> "somewhere you might run, Retpoline isn't safe". >>>>> >>>>> The default policies are more complicated. A guest shouldn't see both bits, >>>>> but it needs to see one if the current host suffers from any form of RSBA, and >>>>> which bit it needs to see depends on whether eIBRS is visible or not. >>>>> Therefore, the calculation must be performed after sanitise_featureset(). >>>>> >>>>> Signed-off-by: Andrew Cooper >>>>> --- >>>>> CC: Jan Beulich >>>>> CC: Roger Pau Monné >>>>> CC: Wei Liu >>>>> >>>>> v3: >>>>> * Minor commit message adjustment. >>>>> * Drop changes to recalculate_cpuid_policy(). Deferred to a later series. >>>> With this dropped, with the title not saying "max/default", and with >>>> the description also not mentioning "live" policies at all, I don't >>>> think this patch is self-consistent (meaning in particular: leaving >>>> aside the fact that there's no way right now to requests e.g. both >>>> RSBA and RRSBA for a guest; aiui it is possible for Dom0). >>>> >>>> As you may imagine I'm also curious why you decided to drop this. >>> Because when I tried doing levelling in Xapi, I remembered why I did it >>> the way I did in v1, and why the v2 way was wrong. >>> >>> Xen cannot safely edit what the toolstack provides, so must not.  >> And this is the part I don't understand: Why can't we correct the >> (EIBRS,RSBA,RRSBA) tuple to a combination that is "legal"? At least >> as long as ... >> >>> Instead, failing the set_policy() call is an option, and is what we want >>> to do longterm, >> ... we aren't there. >> >>> but also happens to be wrong too in this case. An admin >>> may know that a VM isn't using retpoline, and may need to migrate it >>> anyway for a number of reasons, so any safety checks need to be in the >>> toolstack, and need to be overrideable with something like --force. >> Possibly leading to an inconsistent policy exposed to a guest? I >> guess this may be the only option when we can't really resolve an >> ambiguity, but that isn't the case here, is it? > > Wrong.  Xen does not have any knowledge of other hosts the VM might > migrate to. > > So while Xen can spot problem combinations *on this host*, which way to > correct the problem combination depends on where the VM might migrate to. I actually view this as two different levels: With a flawed policy, the guest is liable to not work correctly at all. No point thinking about it being able to migrate. With a fixed up policy it may fail to migrate, but it'll at least work otherwise. Jan From xen-devel-bounces@lists.xenproject.org Thu Jun 15 12:16:31 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 15 Jun 2023 12:16:31 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549559.858142 (Exim 4.92) (envelope-from ) id 1q9ltu-0005lQ-Ax; Thu, 15 Jun 2023 12:16:30 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549559.858142; Thu, 15 Jun 2023 12:16:30 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9ltu-0005lJ-7M; Thu, 15 Jun 2023 12:16:30 +0000 Received: by outflank-mailman (input) for mailman id 549559; Thu, 15 Jun 2023 12:16:29 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9ltt-0005lD-QT for xen-devel@lists.xenproject.org; Thu, 15 Jun 2023 12:16:29 +0000 Received: from EUR05-VI1-obe.outbound.protection.outlook.com (mail-vi1eur05on20602.outbound.protection.outlook.com [2a01:111:f400:7d00::602]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 73fdcd1f-0b76-11ee-b232-6b7b168915f2; Thu, 15 Jun 2023 14:16:28 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by DU0PR04MB9561.eurprd04.prod.outlook.com (2603:10a6:10:312::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.44; Thu, 15 Jun 2023 12:16:25 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.039; Thu, 15 Jun 2023 12:16:25 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 73fdcd1f-0b76-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Tb203h49XeuGP6e72YhHmiaQPQ6QFLU8WBLHw/t1sG5JMVkutil2bEsR33xXIkZXH5FRO3itOojxIHKWsMGvrAsQI/r1tAkj/Ak/ojtgHtkQNJHMdatNxZ67z6fmd7q/gEF4Ss94gpqBsjHFFfqxowhIY1uTrqX4YNnKuRAGv8rOh930GQ8MxVxACa0yGs04V7k2T8i4O7lTCXiQvLDhGO8QfHjhm/+dKKrVDbeJv7Bodpi1GUH1NsLb/T78PgeF+cLfibaqTiOQQekqZRSTNOXW6Xp5yMvj7RoSgSXJYbp6uI7d6iiriqjLEiLKq4CJcv3KuZIMtxUEloBih5hIcg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=IeMe3i7111ySq248IWi7+mRH7GcpptEyMPwITjOWlbY=; b=RbQzPzNabhesm32By4i+9YyXROgjHXpFFzRGmNv8x8Z5wiM7Je1QM/n9n/F9M6FQ6leRUYcM+QJn3sLhYG4k/nxUmdgeWdNin+Wc7oRB5g1ZL90molIGxDpGQvSyJ6sbNF12ICZCVF2VtGOC0Y41JWHh1NrQCVwMBEn3obNYf5afQgSTw2CfwzuZPHJwIj/njg06pKGl4t4ePm+PLCTxps2G0VnSJprFWHoP6KM6W0vwlkxDs+JXGim3+6+PpBah8MdyGbsEs9OareXrcYgGqy6jlqOJ5+SW63fTz/CF4qglLTABroa6grdfJ42SGj0PEElsAqh0uE2iPuRkT6RQZg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=IeMe3i7111ySq248IWi7+mRH7GcpptEyMPwITjOWlbY=; b=2nIXlnUbuhn3+W0xrKoR9F1jVgo/+zQHb7z1hYVC8k9b/hjol4wPW9p6WxFgJscCAKFFX4H2xTpjBw06cqbOTBMGtPWG/UIbh+QvW4t5NgJs+HlLjTjNVFteLk/9x9lH9iKACH4nbauiYObMMx8GzeWhN8iR6PrLBM7QqjKYlG/xkz+UT5qOxthJAmvvowTP1rbak4GF+wzr7HQ09UCtgz1aVac7USrx359xzOkgt+Lwsrq0Fkj7hSv/vqqthNy/izyHYsEy+3kn+Obm/m4e32XK0IB+0TqL/NLdtqkvj5f/VhAyk0c/XfhiCmZx3rVcq7P70rIhTSYTYyABsKPw8w== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: Date: Thu, 15 Jun 2023 14:16:22 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v7 00/12] PCI devices passthrough on Arm, part 3 Content-Language: en-US To: Volodymyr Babchuk Cc: "xen-devel@lists.xenproject.org" , Andrew Cooper , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , George Dunlap , Julien Grall , Stefano Stabellini , Paul Durrant , Bertrand Marquis , Stewart Hildebrand References: <20230613103159.524763-1-volodymyr_babchuk@epam.com> <875y7p9ia2.fsf@epam.com> From: Jan Beulich In-Reply-To: <875y7p9ia2.fsf@epam.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR0P281CA0079.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:1e::19) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|DU0PR04MB9561:EE_ X-MS-Office365-Filtering-Correlation-Id: 02ee4372-b4cf-47a6-12b2-08db6d9a56c9 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: CHyLG83yHD+nHj5iJCXP2DXgElHRL0xrvDCAoN8kcWrYkHXDerlEjlFAUUL11i/roNpb09mwzYYUaeEvgT2Q/v3PXv5l2xinkpMeKxaXnSdBBFnB0Ovz9xFc/WutdQ7wJcug9aHoGX632z/e8wqPDDkDRL70byYLHvt/HW0tXCLDu73sQ6J+3/s4WEGVRbsFjc6LGlPr+2VOj1u9VUcecvpp3MUOHzkJij8UOM99DgzFSbar3bfZIt4Wh9RLl7FQBrrE78rs3NeLTYqEqW04aujUnkCWhkY+HPW3+PQ1YuFwj4lky1l+5IOuDRL7MVr5BnvfECRt4x/wn3zRNpzRiIp9RQyArWA1q4SghNtredAZ1oEug6iYxxbsrK6MzNf09JIeml76rEHDTv7wMmBZAuCNlF7FIXUNjwSt9OJ8xqbZ1TkaWFiBrZElhH5r6pq0HaPR63vISCIOpQLq9yoqpa/Y+pK1h0udANMTr89MQ8U7okJWOveKdPzGZSkiBdjSK28RjJ9gpQjRs69nFeJUNupVKSPWojI37v+IEe2yibGp2XzV4C2rE92CrwSyBxYn8fEUiP+Zqf5+7ZO1EWhcNfiAlbOl3m9Ivwf/JjQYIWqJvL4dYK/LBbN3OP3RBg0lLXDL9nKOuzBfqLCmuQ1eVg== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(346002)(136003)(39860400002)(396003)(366004)(376002)(451199021)(2616005)(316002)(966005)(66556008)(478600001)(54906003)(6666004)(6916009)(8676002)(41300700001)(38100700002)(8936002)(66946007)(4326008)(66476007)(186003)(6486002)(83380400001)(6512007)(26005)(6506007)(53546011)(5660300002)(86362001)(31696002)(7416002)(2906002)(36756003)(31686004)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?SjZudGhiYkREVnBwVUZKZlN6WHpNcUVyRHV5TEdYbklwUmZsV2xPSVl5czBq?= =?utf-8?B?L2VweHBTOWNyVFZJMXhQUTdkK1crMS8xL2piN3Z6K2RrZ1JWcWlSbEIyOHlW?= =?utf-8?B?MmNoaGt0azhFTWYrdmFMd1NrYWZnYk5SK0c1dHpkQ1JtU3BRZ09LRC9OdXdS?= =?utf-8?B?WTJIZ1Q1aFkxV2hiL1l0NXdTRzRJNCtCaHJST2JyZ3hOVjhCdHZVVldLUTVF?= =?utf-8?B?NTFvVE1TUkh2aEVlL05BbEw5ZHNRZnJwU1U0cG1KS2hzSG5DQjlCWVV6aXo3?= =?utf-8?B?VmpCa09JY3piTmV4VXArOG1oTWRXNG5lVStlRC9hM2RKUnFnYTJ1RDlzV0lh?= =?utf-8?B?QkFGN3pEbzc3SFA2cXhDNTdMT200MjdRZzRsU3dHU3lQNDFXc2x4ZXoyZWd1?= =?utf-8?B?UEhCVXU4bjQ0MVZ4WkdiZnl1UnRxanZlenM0NUpMajc5QlpXR0FvTlN3SzNU?= =?utf-8?B?b09OM25kK2c5dEkyYnNIck55cmZ5dEtMSU9uMVBLVWhsYkF1R1dOTWlKR1NN?= =?utf-8?B?c1JpejR0ci9ET282NUxFWDBUOFZNYTNOcDBBbU1KQWV5emZmaTdlSTFGQ01B?= =?utf-8?B?aHlZUFdYSzd5d3E2bzYvaHVWNmFUSFpJdUkyTnhoN1ZSZFRNMFprbHo1SGxY?= =?utf-8?B?RFZEYWordVpqbTFOWkJvWEM2SzJBdVU4TXZwT0dES1diaGNmSG1LMFlXdGxu?= =?utf-8?B?Q0svS0tRUkhiMkl4TUl6NGo1WHZOLzFLQThKM2pVNmRybGM1OVJuTGlWL3Z5?= =?utf-8?B?cHRkVVByd1pLa25pWUxpWkNoekFFWGhBWjZzTWxld2JvZ3hFeVNJUkxKcDd6?= =?utf-8?B?d0pqcjcxQVRvUWJ4V2g3M0xvVCtYM2ZhaUxNaHRxZm9UdVMzV1doVmEwaVpY?= =?utf-8?B?Z2JKU0Y3RTdZOEZDMDBjc1cyT3hncUt2a2pwZ21SZGpRc1Z3K1g0TVlzTzB5?= =?utf-8?B?cHI4dDMzYUROY2xzcGdhU3lDQ0ZMeUdxaTFIRklJY3hYY0xNdGpMTGZoKzZP?= =?utf-8?B?NXRqM1NZN0FVaElKWmFoTG81THJvWjZjSytLZWh0WnpQbVU5ODNyTEpPUk1w?= =?utf-8?B?ZllGa2wwaVBYZWpzdWUxVDFKazVOWnNhOXhZRHRWbmR2azhkZHpTS3NCdlMy?= =?utf-8?B?clFqOEMrRytSU2ZBZjJNeHVMMmxlMFN0TGxhNktFNXpNckhDb1BLbFBWYmkx?= =?utf-8?B?VFJZNlo4ZDhtODREdDAxSXJoOXh0VFE4eWdNVVlna3hUQlBSa2NDdTc3Umpv?= =?utf-8?B?TjMyVHFRTCs5T2tyUkI5NTNsSmFCZ1pMKytTTlQvYmdmRVN3ZXczNlpnZUNv?= =?utf-8?B?Rmd3a29ldlE2M0g0WWhjaVhidU44VmZqQ0k2Sy8wTmhqck9ERGtRTUVoMUV6?= =?utf-8?B?cjVxeEg0V2dHT093Si9PV1B3MFNOZjlzQlc0b1c1RjcrL2VjN1FsVk5Rc3Fp?= =?utf-8?B?YWlzNmJ6eTE4MHo2Qkt1b0xzbjVxK0k1Yk5wL2plSFZOWFVuSUFIVFdRVVV6?= =?utf-8?B?V0Foc3ZCYTMyVCt5bTZjYlJERHFlSHhpQWphV3FlNUpHclVRRmZBTlhmWlVM?= =?utf-8?B?bS9MZEloUTAraHZxUkFRTEhWeXpwRkFpci8wUEJ4SmVXbWpWSlp1VTNKN0hB?= =?utf-8?B?cGhsUWhpNWRNc2RoYXVhc2I5cjFkbWNWVmpQSWQ5Y0NNNmVBZUR3bVBNN3JB?= =?utf-8?B?VnU5UU1QOWdzalNNYXhCUlFndXlLRGFmWGVPWWtsSDRDdHkveC9LZUlCQnBn?= =?utf-8?B?bzRTWXBOOUIxTXFreFhabXBtRlBVWHhUbXhPaWpCbWcrSmo3YkFCZTRYbmN2?= =?utf-8?B?b2pDcy90THRyMXVLYVI5WEV6b0xiMEZxZUlwc00vamtsUWtqd2VOaGNBVUIr?= =?utf-8?B?TXRGOW1HcVB3T3o4eXp1RVhIL3dxT0NlOHUyWXByUHJRZ0NQeEgvdjBGQ0dz?= =?utf-8?B?eFd6aTBvd0RTOW15V3VFd0hESzM4L3lQYko3SmJhS1JOTVBtYU9sV3pDZ2NL?= =?utf-8?B?cGpPR2NVdHdEUlk5VUE1TmIzUFlJUDZqMnl1eVZGM2hjNVVFeTVaWmtkWHBR?= =?utf-8?B?MCtRTmdTUHNDL1JqZWdaYkR1YWs4UzNNa29RajIzbUNCUERlbWg2MXczR2JO?= =?utf-8?Q?r/mZSERXuqDPvmiaZygeux9UG?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 02ee4372-b4cf-47a6-12b2-08db6d9a56c9 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Jun 2023 12:16:25.2825 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: B7JDXFKLMPLaP6+ag4CvNrIK95uesmM45L7J9du6xmXQwN/ENNa7rAkmYPuVpwJdzYuodFCWGFTncpzr8BNEJQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU0PR04MB9561 On 15.06.2023 11:39, Volodymyr Babchuk wrote: > Stewart Hildebrand writes: >> On 6/13/23 06:32, Volodymyr Babchuk wrote: >>> Hello, >>> >>> This is another another version of vPCI rework (previous one can be >>> found at [1]). The biggest change is how vPCI locking is done. This >>> series uses per-domain vPCI rwlock. >>> >>> Note that this series does not include my work on reference counting >>> for PCI devices because this counting does not resolve isses we are >>> having for vPCI. While it is (maybe) nice to have PCI refcounting, it >>> does not moves us towards PCI on ARM. >>> >>> >>> [1] >>> https://urldefense.com/v3/__https://lore.kernel.org/all/20220204063459.680961-1-andr2000@gmail.com/__;!!GF_29dbcQIUBPA!0BUqPos1zFKUoPwbKLLwKItNgBVPaBgxmH1Y6zXpms2bngrlWrzB-qMNvIaiAy2WSWMa93UrlvRi0ijYP8X4Ymx07GXYPO1W$ >>> [lore[.]kernel[.]org] >> >> Thanks for sending this! >> >> Should this be v8? I see v7 at [2]. > > Oops, my bad. > >> I had to rewind my xen.git back to 67c28bfc5245 for this series to apply cleanly (just before ee045f3a4a6d "vpci/header: cope with devices not having vpci allocated"). > > I rebased this series onto staging about two weeks ago. Looks like > there was new changes into the PCI code after that. > > Should I send a new, real v8 which is rebased onto current staging, or > we'll wait for review for the current set of patches? Please send a version which, at least at the time of posting, actually applies. Taking into account Stewart's observation on the version number makes it even more desirable to have a re-post. Jan From xen-devel-bounces@lists.xenproject.org Thu Jun 15 12:19:24 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 15 Jun 2023 12:19:24 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549564.858152 (Exim 4.92) (envelope-from ) id 1q9lwe-0006LX-Oy; Thu, 15 Jun 2023 12:19:20 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549564.858152; Thu, 15 Jun 2023 12:19:20 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9lwe-0006LQ-LX; Thu, 15 Jun 2023 12:19:20 +0000 Received: by outflank-mailman (input) for mailman id 549564; Thu, 15 Jun 2023 12:19:19 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9lwd-0006LF-N7 for xen-devel@lists.xenproject.org; Thu, 15 Jun 2023 12:19:19 +0000 Received: from NAM10-DM6-obe.outbound.protection.outlook.com (mail-dm6nam10on2062a.outbound.protection.outlook.com [2a01:111:f400:7e88::62a]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id d8d86665-0b76-11ee-b232-6b7b168915f2; Thu, 15 Jun 2023 14:19:17 +0200 (CEST) Received: from BN9P223CA0004.NAMP223.PROD.OUTLOOK.COM (2603:10b6:408:10b::9) by CY8PR12MB7290.namprd12.prod.outlook.com (2603:10b6:930:55::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.27; Thu, 15 Jun 2023 12:19:13 +0000 Received: from BN8NAM11FT086.eop-nam11.prod.protection.outlook.com (2603:10b6:408:10b:cafe::4c) by BN9P223CA0004.outlook.office365.com (2603:10b6:408:10b::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.25 via Frontend Transport; Thu, 15 Jun 2023 12:19:13 +0000 Received: from SATLEXMB03.amd.com (165.204.84.17) by BN8NAM11FT086.mail.protection.outlook.com (10.13.176.220) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6500.27 via Frontend Transport; Thu, 15 Jun 2023 12:19:12 +0000 Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Thu, 15 Jun 2023 07:19:12 -0500 Received: from [10.71.193.39] (10.180.168.240) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.23 via Frontend Transport; Thu, 15 Jun 2023 07:19:10 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: d8d86665-0b76-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=S85GYti7BA9U1Imp86V9RPAEX2NUoerv61XHmR+4Kkru46+80/fqBrp01pKMKkn1ZSQYUVDKeYrtVc8GjfblpwReWOS8PMHtKOAPQ2qtzDd7/vLL6+/RgzTlta4GP6TBznGkdO6ZFEaHHkB4hC5XXQvERx3vKf7of5ZttdjWdghjsprebM0RLt7AfTpRi1u8syiNsCHP0yB+wHVMVlKu+uMpApmxrADJFYYflWDdXfHi9qkykA0GgqKZXBw1YEgK6qWp75mYf/eLwrg3Qfgs6mm7D+0D2yktfX299ZHmvJIY2oab5dgxqvLJlKw3ngn/+TT4vYzWqY9n+5MU8jRdrg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=f52EWptb0zm4uV+cNUY2upkFs0zbDUbzOAWVNbWXJSM=; b=N4ANzF+BiNlePnSw0Nl60rx6PV8ObouIywd1ZgdZ/4HbnW/bLR41cxaOUtMhamfopRjYgP+dwQCq7QXdtUbps60Cvq3W0Pfp67nDhJZquhcJ3Hu4fwdl20muD2MTKB8As9cuhW0EnGNVxRoLDU/MH9P6fAwb6guM2bG91ShQKJt41DM0uG7+Ilg/1A3TFiOmtU6GQmkmh/VFJ2UpHk7MKtOWzeyydVr4DosddpmfQvuGsvlzX3Vzrjy8j8em141r9y5HgZJx54oR1bzJgRtWIlMO5SD7QULAlh4kaIuYnRERnJHZiFQ8VtU21fsyjq0W6JGcpG69XtNvTjDuhJoxjw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=kernel.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=f52EWptb0zm4uV+cNUY2upkFs0zbDUbzOAWVNbWXJSM=; b=xl3VjZDnm0nOJ3wK+CUPAjlZazvp1y/0MroTYB52EdeNojIg8+UCJT3PO16+vqZ6JppIFrFIhbGEA3kjJA+QQVOWJ7sscn22I91i1d0iQG8MdlnWlwnxT2BeSXWFo1S6K4LReH5AtxYs9PEBhCWhfp8tcdQsKRkmEW+kfEHxbgc= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C Message-ID: Date: Thu, 15 Jun 2023 14:19:10 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v4] docs/misra: new rules addition Content-Language: en-US To: Stefano Stabellini , CC: , , , , , , Stefano Stabellini References: <20230614225515.1057820-1-sstabellini@kernel.org> From: Michal Orzel In-Reply-To: <20230614225515.1057820-1-sstabellini@kernel.org> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BN8NAM11FT086:EE_|CY8PR12MB7290:EE_ X-MS-Office365-Filtering-Correlation-Id: 13e25efc-d2fc-4f71-c421-08db6d9abad0 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: vSJWyAT3t4HBk2qTjt8Jx/ysPrBC1pPfxLzLeKz9ma/xhlF817ps2Q+Jrv7+1HF+q1+8LwHCQ38TwBZTY9IlZ8OgVEEutzmAQfJVcGon+66wKA9w4Y88+SjqIdAKDjER/qogGRPgPujQbC+Gb3PKhtoOtzHlQ1hsxe30bxNwH5KODI6kV06EaC+DWfz5QYYDlzO171i8S/RNWsgvxNYbe4FyzYdEM5dO8HYu08TeqLvwoW2OYY2WC1R/buJ+br0AGYWyB37es12OjsOvWhHcici0G2xqBMpdTxe+ujMRQqukFMiKr5IMuGGgis6tHpf4p6Czme7FXZ1Ka9Q6W3An1yO1URenrvDXJ9F2rWuO/QfDvE01qcRee5f1RWwlo2aikCXPXiERCmfrtL0fBj/oBkjdHJ/yyqGqS0SaurSlF1Wo+UAmOe2vqsQChimbSBo4XrU/D8qVJq5utR1lRpGb7ds10DnRzWCwFvNyDtTIxVMlOoJatxUihi2ytBbZHXcVtVkG7AgQU8tBDENFxU0jvvftyxeGJZwRIy4bOuHbb4k67iCgP1rox34YRR0HQZttjfCsCoMsf3p8fXgr4/EACnnY7S0a/8YgWVAAswQIPmZsdVa1YBqpPvOSPL6wjxPiwRj4fpNazx0soY6ZT+6lhdFAk00H9sT7ZCHE8Abw7flksCBahPmz/6ou7QOsSXKRJmx4NKGauuX5b6Xgw5ro63euHrW2X7lZg2yI3scPw67BdbZnG6/RgP95lkvCtQEWKhCM9htx7Fb7dkpcTIRfvyyZ906tQsnukpyJk7vmbIFDFdeRpxomRiuVL6x+QSGNVS71SzkwRyMAx6yctkcqwg== X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(346002)(136003)(39860400002)(376002)(396003)(451199021)(46966006)(36840700001)(40470700004)(40460700003)(5660300002)(82740400003)(81166007)(356005)(336012)(2616005)(53546011)(83380400001)(426003)(186003)(2906002)(26005)(36860700001)(47076005)(44832011)(478600001)(40480700001)(70206006)(316002)(8936002)(8676002)(41300700001)(86362001)(31696002)(82310400005)(70586007)(36756003)(4326008)(31686004)(54906003)(110136005)(16576012)(36900700001)(43740500002);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Jun 2023 12:19:12.9223 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 13e25efc-d2fc-4f71-c421-08db6d9abad0 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com] X-MS-Exchange-CrossTenant-AuthSource: BN8NAM11FT086.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY8PR12MB7290 Hi Stefano, On 15/06/2023 00:55, Stefano Stabellini wrote: > > > From: Stefano Stabellini > > For Dir 1.1, a document describing all implementation-defined behaviour > (i.e. gcc-specific behavior) will be added to docs/misra, also including > implementation-specific (gcc-specific) appropriate types for bit-field > relevant to Rule 6.1. > > Rule 21.21 is lacking an example on gitlab but the rule is > straightforward: we don't use stdlib at all in Xen. > > Signed-off-by: Stefano Stabellini > --- > Changes in v4: > - improve wording of the note in 6.1 > > Changes in v3: > - add all signed integer types to the Notes of 6.1 > - clarify 7.2 in the Notes > - not added: marking "inapplicable" rules, to be a separate patch > > Changes in v2: > - drop 5.6 > - specify additional appropriate types for 6.1 > --- > docs/misra/rules.rst | 50 ++++++++++++++++++++++++++++++++++++++++++++ > 1 file changed, 50 insertions(+) > > diff --git a/docs/misra/rules.rst b/docs/misra/rules.rst > index d5a6ee8cb6..41a727ca98 100644 > --- a/docs/misra/rules.rst > +++ b/docs/misra/rules.rst > @@ -40,6 +40,12 @@ existing codebase are work-in-progress. > - Summary > - Notes > > + * - `Dir 1.1 `_ > + - Required > + - Any implementation-defined behaviour on which the output of the > + program depends shall be documented and understood > + - > + > * - `Dir 2.1 `_ > - Required > - All source files shall compile without any compilation errors > @@ -57,6 +63,13 @@ existing codebase are work-in-progress. > header file being included more than once > - > > + * - `Dir 4.11 `_ > + - Required > + - The validity of values passed to library functions shall be checked > + - We do not have libraries in Xen (libfdt and others are not > + considered libraries from MISRA C point of view as they are > + imported in source form) > + > * - `Dir 4.14 `_ > - Required > - The validity of values received from external sources shall be > @@ -133,6 +146,12 @@ existing codebase are work-in-progress. > headers (xen/include/public/) are allowed to retain longer > identifiers for backward compatibility. > > + * - `Rule 6.1 `_ > + - Required > + - Bit-fields shall only be declared with an appropriate type > + - In addition to the C99 types, we also consider appropriate types > + enum and all explicitly signed / unsigned integer types. > + > * - `Rule 6.2 `_ > - Required > - Single-bit named bit fields shall not be of a signed type > @@ -143,6 +162,32 @@ existing codebase are work-in-progress. > - Octal constants shall not be used > - > > + * - `Rule 7.2 `_ > + - Required > + - A "u" or "U" suffix shall be applied to all integer constants > + that are represented in an unsigned type > + - The rule asks that any integer literal that is implicitly > + unsigned is made explicitly unsigned by using one of the > + indicated suffixes. As an example, on a machine where the int > + type is 32-bit wide, 0x77777777 is signed whereas 0x80000000 is > + (implicitly) unsigned. In order to comply with the rule, the > + latter should be rewritten as either 0x80000000u or 0x80000000U. > + Consistency considerations may suggest using the same suffix even > + when not required by the rule. For instance, if one has: > + > + Original: f(0x77777777); f(0x80000000); > + > + one might prefer Shouldn't this be "one should do" in reference to Jan remark? > + > + Solution 1: f(0x77777777U); f(0x80000000U); > + > + over > + > + Solution 2: f(0x77777777); f(0x80000000U); > + > + after having ascertained that "Solution 1" is compatible with the > + intended semantics. > + > * - `Rule 7.3 `_ > - Required > - The lowercase character l shall not be used in a literal suffix > @@ -314,6 +359,11 @@ existing codebase are work-in-progress. > used following a subsequent call to the same function > - > > + * - Rule 21.21 This is incorrect as it should be surrounded by `` similar to other lines. Otherwise it will not be taken into account by convert_misra_doc.py which converts this document into cppcheck rule list. With that fixed (i.e. on commit): Reviewed-by: Michal Orzel ~Michal From xen-devel-bounces@lists.xenproject.org Thu Jun 15 12:21:11 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 15 Jun 2023 12:21:11 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549571.858162 (Exim 4.92) (envelope-from ) id 1q9lyH-0007p2-61; Thu, 15 Jun 2023 12:21:01 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549571.858162; Thu, 15 Jun 2023 12:21:01 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9lyH-0007ov-3M; Thu, 15 Jun 2023 12:21:01 +0000 Received: by outflank-mailman (input) for mailman id 549571; Thu, 15 Jun 2023 12:20:59 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9lyF-0007op-La for xen-devel@lists.xenproject.org; Thu, 15 Jun 2023 12:20:59 +0000 Received: from NAM10-MW2-obe.outbound.protection.outlook.com (mail-mw2nam10on2060c.outbound.protection.outlook.com [2a01:111:f400:7e89::60c]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 13c486ca-0b77-11ee-8611-37d641c3527e; Thu, 15 Jun 2023 14:20:57 +0200 (CEST) Received: from BN8PR04CA0034.namprd04.prod.outlook.com (2603:10b6:408:70::47) by DM8PR12MB5400.namprd12.prod.outlook.com (2603:10b6:8:3b::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.27; Thu, 15 Jun 2023 12:20:51 +0000 Received: from BN8NAM11FT100.eop-nam11.prod.protection.outlook.com (2603:10b6:408:70:cafe::81) by BN8PR04CA0034.outlook.office365.com (2603:10b6:408:70::47) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.25 via Frontend Transport; Thu, 15 Jun 2023 12:20:51 +0000 Received: from SATLEXMB03.amd.com (165.204.84.17) by BN8NAM11FT100.mail.protection.outlook.com (10.13.177.100) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6500.27 via Frontend Transport; Thu, 15 Jun 2023 12:20:51 +0000 Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Thu, 15 Jun 2023 07:20:51 -0500 Received: from [10.71.193.39] (10.180.168.240) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.23 via Frontend Transport; Thu, 15 Jun 2023 07:20:49 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 13c486ca-0b77-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=IQNLaqUTWRXLol2tMHnPaeRcwUi1DzINEbMSUiyjrcaLDz6rn6evgy1WImMySImGIyz+IJqMRdio2we+ZUTuWpwuT9YODyydLoditgL0ftPO9FKj+AlGlUUJn2PqleJqidh9A5+d1i+qYYy4PDLCuUbgZc9+5RcA4KGyAXIZ7z+7BXX6hAOZ7kXV1IULX8c3ejHZINdbOlNtsF4lcT2LT1YwOpCfV6PXZ7AI4xQfWp2/PBzN+6BPs7vscxgnD69vDOIo2a9n5OxB1ZpPbZ4OnZaKtXsdWqA32H4gJzbHg5rrD+n/nKrUqMwz/994fm7KAg80hkGGz1xtC9LsWL1t1Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=qGje6PgFAJIH8je0TbbXGfv4L46SJSd1zMr/ZOKOmOg=; b=N9C0OaOLYIg4A7vVjaCfe/6ovs2Qyu5T5bf4wdP4ysC6jRw9JRf+pdgxBPSdPBYrTQZV5EmJNCINNWblRonc+f1e1nGH7WVXOLOmv3ym6lxb4xpbqw7jAb1Vs506cx1RyUQAtq+6hkG3oBrDiz0b1MWrLZNZGCoAzBzcbFpyAsKjT5O9m5dcSE4NEwnh202uSfbUEW7cwFWqe3qCoCnaKDp/tD3IWU2LmD2It02YvPoj+5NsPY8XD2Xdc3bNvNZzrFRL3eYCrrDMuj9JZEEth+13xIi/+Jh8g8v46Zm0jLhiCsFpOgOKhJTYVzIlYudo7cMWbcOTQUzXu9yDbuTV3g== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=kernel.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=qGje6PgFAJIH8je0TbbXGfv4L46SJSd1zMr/ZOKOmOg=; b=EW3mXuf42xemHcu7LexBBoehMTdsuXKhng2Qfs8KlKIErFoc/yH2M447glkZCAi/ta+BcekwHjG9fzcCc72zXIKnVLBKrLZiLu9xgNQe/UTE+3qOn3plcVIM1gSltQe6LZ57b2ljtRyEBXHKgqcBfPLQpSmn0tuyi7ySrkBJDwY= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C Message-ID: <2b1faf85-dc6c-76dd-3d88-d33bbd3c5df3@amd.com> Date: Thu, 15 Jun 2023 14:20:44 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH] xen/misra: add rules 1.4 and 2.1 Content-Language: en-US To: Stefano Stabellini , CC: , , , , , , Stefano Stabellini References: <20230614230328.1060282-1-sstabellini@kernel.org> From: Michal Orzel In-Reply-To: <20230614230328.1060282-1-sstabellini@kernel.org> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BN8NAM11FT100:EE_|DM8PR12MB5400:EE_ X-MS-Office365-Filtering-Correlation-Id: f4cd4bbd-021d-4bb6-a639-08db6d9af5bf X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 0ZteP2tQv0Hdnf5y7aoXP5X8jAL5jAopKFkMPatFD7cSQdUkbis9cs/EqFj3BaccphJoWy3W0MngqKEBNMwFZ7/b/iq7aUScjAG0IOn6iMsddN+TKgX4ENZKlXnefHneHGBQtWX7Cjxala72tmWvxrkM5HvsyE15xka8qNZ1JmGayaL5+aosS1y3btOyvKpZ6taEmkiSNyZIRkXjzY+HQxbu85gT1Rsnx/wLBZ/4QXx88w2c9lPHTJ0gQqmqYAr+TQSDly2MDbhVfsed/91wLbDxnh/Wt4X2Xd6xcX9KJpQHBH2Z2tL1Iso7oMkc2tC4G6qqwL1cy7LkDIqAP2lLOUIKWaBNK9EpG/5S59hn1CTQ/JwShrsZb1LSNwtDXT002bOpxKGF6GGYvSfV4os7t9UTg+XaYRAD7sD0UFSC6FG9rxCxTnuHITjqLpGQqNK72PthS4jRuWPHEVtl/Ecrim58wSPKAuJaCJ13hsKk9owCllNhD3hni0bluvUhyxD7WbbqP0IGYyZst/Z6fggc4bHB32j621mDYFCAQ130JWrUVKOHcrthQGF8B/a8NKrngPQ6keq4le5D5kivUjPP/24Rix4t0r1hwGVCoV5YygcSTQn8DmiDGH0kSj7Ii1CYpNQVK9cYxFSMh0LHdRcK8Si8DIMoGLzRM+4GXmGnaGn8QqxuS3UZZ7VEc3NT28eL1YIHW0dy+CZXl6v3H02OCBBkEAPgZSte0zL6sIYiLxOp8Qoz+697EXVDTHU4wjCY+Qs4I2wB1OumrYh+gL3kTjy0vRgpOpRiqq5qNsON/L01ceK27cSDH6Hq1rH0swtg X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(376002)(396003)(39860400002)(346002)(136003)(451199021)(36840700001)(40470700004)(46966006)(70206006)(70586007)(40460700003)(316002)(4326008)(186003)(2616005)(356005)(81166007)(82310400005)(31696002)(86362001)(53546011)(26005)(36860700001)(83380400001)(47076005)(82740400003)(426003)(336012)(478600001)(36756003)(110136005)(6666004)(54906003)(16576012)(40480700001)(4744005)(2906002)(44832011)(5660300002)(31686004)(8676002)(8936002)(41300700001)(36900700001)(43740500002);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Jun 2023 12:20:51.7957 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: f4cd4bbd-021d-4bb6-a639-08db6d9af5bf X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com] X-MS-Exchange-CrossTenant-AuthSource: BN8NAM11FT100.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM8PR12MB5400 Hi Stefano, On 15/06/2023 01:03, Stefano Stabellini wrote: > Caution: This message originated from an External Source. Use proper caution when opening attachments, clicking links, or responding. > > > From: Stefano Stabellini > > Signed-off-by: Stefano Stabellini > --- > docs/misra/rules.rst | 11 +++++++++++ > 1 file changed, 11 insertions(+) > > diff --git a/docs/misra/rules.rst b/docs/misra/rules.rst > index 41a727ca98..4179e49ac2 100644 > --- a/docs/misra/rules.rst > +++ b/docs/misra/rules.rst > @@ -90,6 +90,17 @@ existing codebase are work-in-progress. > behaviour > - > > + * - Rule 1.4 Just as for the previous patch: This is incorrect as it should be surrounded by `` similar to other lines. Otherwise it will not be taken into account by convert_misra_doc.py which converts this document into cppcheck rule list. ~Michal From xen-devel-bounces@lists.xenproject.org Thu Jun 15 12:23:22 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 15 Jun 2023 12:23:22 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549576.858172 (Exim 4.92) (envelope-from ) id 1q9m0W-0008Ow-J1; Thu, 15 Jun 2023 12:23:20 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549576.858172; Thu, 15 Jun 2023 12:23:20 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9m0W-0008Op-F6; Thu, 15 Jun 2023 12:23:20 +0000 Received: by outflank-mailman (input) for mailman id 549576; Thu, 15 Jun 2023 12:23:19 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9m0V-0008Od-4K for xen-devel@lists.xenproject.org; Thu, 15 Jun 2023 12:23:19 +0000 Received: from EUR01-VE1-obe.outbound.protection.outlook.com (mail-ve1eur01on061c.outbound.protection.outlook.com [2a01:111:f400:fe1f::61c]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 67db3949-0b77-11ee-8611-37d641c3527e; Thu, 15 Jun 2023 14:23:17 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by AM0PR04MB6916.eurprd04.prod.outlook.com (2603:10a6:208:185::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.37; Thu, 15 Jun 2023 12:23:14 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.039; Thu, 15 Jun 2023 12:23:13 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 67db3949-0b77-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Z6ErRZpFH7HK8KM1178UeXbBTWp59C1hLQT1h9QdNRVSXToaomgExFKifz5z5toRgjRG7iHgAvFMTUkRnEUG8cpIwp3dJ5Ack4dJLbkR4DEWNft/YbO92yv6i4BHKGUitVm1PODLiiJNhVqnqTAfs64Ju7Oao6tzTRGL7pUkS4zpvkbbUl+S65RrXCqRvsxZahKem3VaFq+Ncd4FUBLciN0Cug1jWz7u1d+VXFOTgXTEm65pXsvNVKl/Y0wYby1fx3+Z8ex4zaC9OEYr3/xLcVqcwqx/sk2roxnQckh6JNuJZ5Tcs3avz8I65lLXEewTJuuNCmXhn2rd6PBLPdhsqA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=2QUprFQF0h8870RPvKwiYQmm8QryBFOrTZhglpSVI+s=; b=CFkkJgYpWYImAfQAf4E3xAdt7zw+kJ30U/3CesoFHKQM3J9v0c8QsNG+5r1/R7rhiCpMs3Aj1dNSXcGV3FGvGR7+nDlBduKHLjBHoKgVcrhXwWkkZpuMNRy7Xo7Ydi6khbdcTB/oMCtBXIRuz5PtJ63e6fOG8ix13jMozPrurkVCF1UvEUFCdzD4qWnlIV0DlH5Ep4w9J66sRoEQYYuDriX9hay/7PtF3R4CPi/0+MUtvpZsT0Vpd4+0RRegOTUSwgTPsQWtKoFnQlXbOzI61M4VvSlUmddPdSzs0eC4VhmpRzkZeqV4ebspU7b8MMv/V2BSVNF6vDMni2icpz2vtg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=2QUprFQF0h8870RPvKwiYQmm8QryBFOrTZhglpSVI+s=; b=Zw9CGLHtVzK2OlIuwS+W3CVZtOXvGgRcxkM3I0t+Ou1Ly6KAdSlcfrKsjmbBXqjn0OVw4VsNzB7p7Php/qREAisXHmPQwk5YfQmp9Jr09U1rCHxmID5kM8DFFEmzx1l+zlOlODdU6O93anu8o9hHrx6vdSsuwTKoYDIMXX2czS47Bl3tS5ARyg7ZG9UM/h7bCF+KGBJmyPfS/3xQj5SZSD7CImDikL7Z+iYRiCilismF7m9sB9+FgXG8DQnynY+djqnRC0BvqgFIG7TWcL6BKD5WQdjGLYRpbD2yZo+z/fwjCfJrsfU/m91AM1uAOTBholMIInNmTiO6BRiGCS6vew== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <50c1ad9f-158e-e7cd-e94a-84e842ffbef0@suse.com> Date: Thu, 15 Jun 2023 14:23:11 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [XEN PATCH] xen/include/xen/lib.h: avoid undefined behavior. Content-Language: en-US To: Nicola Vetrini Cc: consulting@bugseng.com, Andrew Cooper , George Dunlap , Julien Grall , Stefano Stabellini , Wei Liu , xen-devel@lists.xenproject.org References: From: Jan Beulich In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR3P281CA0079.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:1f::7) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|AM0PR04MB6916:EE_ X-MS-Office365-Filtering-Correlation-Id: 2c2bf57d-d907-4731-d694-08db6d9b4a4a X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: O9GNYONH829x7VnADztvpCftL0P8Kl2uwWdSyGpLWBDfJQcWU326J1GV4GdwOCJX/MuxmBWSoN4Z1NyJyIQNB/JBfdsGuSxfwkS+j01191FgG4CY3dRgYFz3Op/oph0GZd7P/dBtf/WBB3bDxbcckjTn/JhCq14+4gGBT4wmOJbZrA7e4KkJfHvD4xmvIxM6/3skba8WKxzF+DGD7GIVniEBASuTNQu2640hMNYE8YiDkv8Kqu22uQZVbTYvVNsfX5hnY+QX3GfCCM4kuysU/Oht3PP8IGWFpUIadsyTjF0CMq8dm+SXxA1qAlVIcHLiYhq0kUJxNe4iypdOKSgRxWPKhNXl/lTl+Vtye+1TylBehv0w8+CCnGfRhlx1tvw2PfGc3tc6lWKU19o9CVzVBEVThI/DgaQMO+Ugdj+nxq4KWEPR5tc7XExYsbNJWfneQOKwm8WItTg37rIce5TXZULJOs5uTlRiKR+FVz9IOCTWnxZS298vvHS319Vpa0Db1EvIu2iQwertyIiALn2KqeyKLsmK8lswxNecjrLvhhunVMYg7lhsP0JI65Fa8fkNticuEoY6O9wd1KNIcR2yL7s7wCBQrM1GhHH+a3+k0hl9hPtEKyrCXgAEQksP3WnUvUGDxNblOV7B0lhUHo8cww== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(366004)(396003)(346002)(39860400002)(136003)(376002)(451199021)(26005)(36756003)(6506007)(6512007)(186003)(478600001)(53546011)(6486002)(2906002)(316002)(41300700001)(8936002)(86362001)(31696002)(31686004)(5660300002)(8676002)(38100700002)(54906003)(2616005)(66476007)(66946007)(6916009)(66556008)(4326008)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?dkNUTEo4aVJnaEtoSjZZRUlMcC9aKzI3NzJud2FDTWMzMlNEa0NFdVhYeXJ3?= =?utf-8?B?ZUpIMWhKanRDcHlraEgxcHZadjBIS3pTY1hHUDA2U1NEQlU1YlhCUE56SWV3?= =?utf-8?B?d2hiUEtUeGppS24wM2pkTFlOcnZrSUNNVmRHbGlheTBRRlRWOVgwWmNNQmZM?= =?utf-8?B?cGg1aFBxMWZsYmVXZUZxMWEzSHJPTzBaNGNkR2grc2JEcmhhZU00UXgrT2pv?= =?utf-8?B?T0ltTjhyY0czWS85VWJHbzJORzh5akp1a0ZXUk9vdG15MUN0Zm1TcWpKVGdJ?= =?utf-8?B?YkR4RVBjVStLcU1NdU9xcTFXWmxLL3piK0orUXF5Q0pSQkl0eVo5dG04bkFk?= =?utf-8?B?MnFUT1pWbWJWNkd3RGlnTGRmakZ1TjBJM2d2WWpuVXdKS1FPRWxpWE1kd01Q?= =?utf-8?B?c1lhUGtIRmpqUW9MQ2RSMk1ON2R3NEpBVEwvcktvOTl4Z2JQVStWcklqY2sz?= =?utf-8?B?ZG5wV0FsR0w0SnBQL3VjZko3dXY5K0libUQ1QW5mbzgwNlllR2txNDhhQWVO?= =?utf-8?B?cFZsWUlhNU1Va1lhNklvbnNQMDBSY29yTmdlS2NZLytrYWFKN2I4eW5vVFIv?= =?utf-8?B?bVFDdFZEdHZJendtTThNUGpOL0k0TDV6cmM4TE9za3hYVjI1cmFrWFdkd3lm?= =?utf-8?B?bW90di9oTTd5SVdrQmNIbi9DT0ZSSU5ZZUFDaEFZaXZWUENDcU0vbG9ERzRp?= =?utf-8?B?QkdFN0JKZUxJNDBKTXR1QzBUdEZwZ1Z6RmxyMUdVVXhBWks4d2ZiREZJVzlN?= =?utf-8?B?a1BvTjFpc0pmWEp0Q056SmFFNWJFOHlHeGlqdSs3eHlmN2dWb1I1U1FHVWNz?= =?utf-8?B?UFRkTHk5d25aOEZ0QU14MHc2TFgvbmZpRDkrNGN1TjMwS2g5M1Q5NjhhK2FD?= =?utf-8?B?LzgxNXdKM245R0RCMU5HeFNGTDh6aWFYZDB6UXpXM2xUUXlUeWo3ekxOZVRX?= =?utf-8?B?YzlQT2VnbkFWdlprcVJDQkZmYkRsL1BINWdVZ2NWaGJJektwOTJqQ1o1eTNI?= =?utf-8?B?VnhQQXFEU0RieVBaOC9WemdUOFJqeERKNWxvbWlJeUo3cHAySnF2RVdiWWtV?= =?utf-8?B?WlQ2RGNIUUpIckhXT09mNFc4ZGh5dndEbkdZNFZoalpia2M1WTFscUhIQTZn?= =?utf-8?B?ZVlUenkxVkVhOFdOSTh4blplUm9KSzV3bTlCSVJiZ3lTbUdsNHkvcWxTUjJr?= =?utf-8?B?b0JwZFk1RFdpUk10MExQMkJGNWR0aGlzODBDMkRJb2Jvd2tkNkFOZ3pxSDJW?= =?utf-8?B?YTVVTHVvYjZsemdML2JiYWNvZWc5dmZXNkNuanlCNVVLc0ZCQUhrSzFhR2lp?= =?utf-8?B?dis2MjVRb2Q3RlErMjFWMHNxejdEZVQyQ1B0UzZtNlhRQzYyK3kzNkxDV2ww?= =?utf-8?B?RWZlSzJxbjRUdHRVVy83NVZENlNxVFRuQ3FSd0h1MXIxM3U2SW9oVWNRZmxU?= =?utf-8?B?RjhvUnlJaXBWR1p6VTdmY0hQeVoxc0tOcGZFQnB1enR6OXJYZmxKcnpURHdp?= =?utf-8?B?ZzdLQXJJTHBpV2tER2RXL3NNWG9KWkMrYkdja1V5di84Y0lkc0U3RHdXUTFD?= =?utf-8?B?OUhkUU55M1RGRlhMb1J3WUx6TkxqSzF6aEFuelJLamlJQlVtRWo2NWduTUpq?= =?utf-8?B?OUxoTXZqTHcyNkl6eE5LWDI0b291MlNxeXZjNjRBQU5iUDVwdWdqUXRVQkV0?= =?utf-8?B?SVN4b2N6cHZ5NkhOVk0reU5jZ0hpNnptQlhrQTFtclBtYUZmQTRCV2I4Z3RR?= =?utf-8?B?WXpuYzBFRnFLSDNaeGl1Vi9YQ091Y2lmWlBMNUNqZlllNFNoMUVVQXhuVzJx?= =?utf-8?B?V2V1dDc0ci9jNHM3SFR6UlIzVTh4bGgwZG8xY1kvTS8wcFNrdndzK0hSWWJm?= =?utf-8?B?SkpHdGJ3YlFkL3l2RDdubnVpT1BjdkJ3VmtpbndWNTZUR2k2T0xueHI1di8w?= =?utf-8?B?cHlNYmkyK2tjaGpuK3V3aUVQZXJ1bkVCU1FBTDV2am1lSGtQRGMrV3lzZHJE?= =?utf-8?B?KzZhTlNkU2N5cDNhRDI0U2tnd0lpOWhWK1BmNzhiOG8yY3hxK3d4d0wxL1JS?= =?utf-8?B?b3BtRFovNm1jQ1p1Nitqc29ZMEJHbFJmSUN1a043N0NiN2Rxb3ZNWHpWOENu?= =?utf-8?Q?5sUQaK4af7aau7SKEPSh+b8uA?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 2c2bf57d-d907-4731-d694-08db6d9b4a4a X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Jun 2023 12:23:13.9163 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: AEkZRSQsjkt+wBcrwjw1Vw/o7TNnDANqdRZfS+c/V9utKayuW18UemlAFfkHo4Pr6g5Bgifj2sDDu3inV6xk8Q== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0PR04MB6916 On 15.06.2023 12:30, Nicola Vetrini wrote: > --- a/xen/include/xen/lib.h > +++ b/xen/include/xen/lib.h > @@ -40,22 +40,8 @@ > unlikely(ret_warn_on_); \ > }) > > -/* All clang versions supported by Xen have _Static_assert. */ > -#if defined(__clang__) || \ > - (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 6)) > -/* Force a compilation error if condition is true */ > -#define BUILD_BUG_ON(cond) ({ _Static_assert(!(cond), "!(" #cond ")"); }) > - > -/* Force a compilation error if condition is true, but also produce a > - result (of value 0 and type size_t), so the expression can be used > - e.g. in a structure initializer (or where-ever else comma expressions > - aren't permitted). */ > -#define BUILD_BUG_ON_ZERO(cond) \ > - sizeof(struct { _Static_assert(!(cond), "!(" #cond ")"); }) > -#else > -#define BUILD_BUG_ON_ZERO(cond) sizeof(struct { int:-!!(cond); }) > +#define BUILD_BUG_ON_ZERO(cond) (sizeof(char[(cond)? -1 : 1]) - 1U) In addition to what Andrew has said, I'd further like to ask that you try to first understand why certain things are the way they are, by looking at history. We did use an array here up to commit c8e857a0aff3, and if you go there you'll find an explanation why it wants to be something else. Jan From xen-devel-bounces@lists.xenproject.org Thu Jun 15 12:40:22 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 15 Jun 2023 12:40:22 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549581.858182 (Exim 4.92) (envelope-from ) id 1q9mGi-00029n-TC; Thu, 15 Jun 2023 12:40:04 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549581.858182; Thu, 15 Jun 2023 12:40:04 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9mGi-000299-Oz; Thu, 15 Jun 2023 12:40:04 +0000 Received: by outflank-mailman (input) for mailman id 549581; Thu, 15 Jun 2023 12:40:03 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9mGh-0001pM-AI for xen-devel@lists.xenproject.org; Thu, 15 Jun 2023 12:40:03 +0000 Received: from smtp-out1.suse.de (smtp-out1.suse.de [195.135.220.28]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id be9bd698-0b79-11ee-b232-6b7b168915f2; Thu, 15 Jun 2023 14:40:01 +0200 (CEST) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by smtp-out1.suse.de (Postfix) with ESMTPS id 38D70223DE; Thu, 15 Jun 2023 12:40:01 +0000 (UTC) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id D010513A47; Thu, 15 Jun 2023 12:40:00 +0000 (UTC) Received: from dovecot-director2.suse.de ([192.168.254.65]) by imap2.suse-dmz.suse.de with ESMTPSA id JJxjMaAGi2T1OQAAMHmgww (envelope-from ); Thu, 15 Jun 2023 12:40:00 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: be9bd698-0b79-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1; t=1686832801; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version: content-transfer-encoding:content-transfer-encoding; bh=sLKvpHmhwxzhGsa8RD9GXj1E3Cqd53RX8qPUzRGgONI=; b=Adcvt8jp3J6VJHStWp7XI8UqjjBdIO+60lveaGrjsR2IoO908L/uW+lrRpAlKri7Tr1U1b 0rSAZhSTlsBqaIbAeAjCVNdKHFRgkFCQ/FRCyulDtp7vEKz/s5lL6REthbZkfhlyB+L2PA Eawu3ARj6wsxY5ljRaIEnRG2FZSLwEo= From: Juergen Gross To: linux-kernel@vger.kernel.org, x86@kernel.org Cc: Juergen Gross , Boris Ostrovsky , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , "H. Peter Anvin" , xen-devel@lists.xenproject.org Subject: [PATCH] x86/xen: set default memory type for pv guests to WB Date: Thu, 15 Jun 2023 14:39:59 +0200 Message-Id: <20230615123959.12298-1-jgross@suse.com> X-Mailer: git-send-email 2.35.3 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit When running as an unprivileged PV-guest under Xen (not dom0), the default MTRR memory type should be write-back. Signed-off-by: Juergen Gross --- Based on tip x86/mtrr branch --- arch/x86/xen/enlighten_pv.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/arch/x86/xen/enlighten_pv.c b/arch/x86/xen/enlighten_pv.c index 8732b85d5650..93b658248d01 100644 --- a/arch/x86/xen/enlighten_pv.c +++ b/arch/x86/xen/enlighten_pv.c @@ -187,6 +187,8 @@ static void __init xen_pv_init_platform(void) if (xen_initial_domain()) xen_set_mtrr_data(); + else + mtrr_overwrite_state(NULL, 0, MTRR_TYPE_WRBACK); } static void __init xen_pv_guest_late_init(void) -- 2.35.3 From xen-devel-bounces@lists.xenproject.org Thu Jun 15 12:42:12 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 15 Jun 2023 12:42:12 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549586.858193 (Exim 4.92) (envelope-from ) id 1q9mIl-0002wG-9o; Thu, 15 Jun 2023 12:42:11 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549586.858193; Thu, 15 Jun 2023 12:42:11 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9mIl-0002w9-4n; Thu, 15 Jun 2023 12:42:11 +0000 Received: by outflank-mailman (input) for mailman id 549586; Thu, 15 Jun 2023 12:42:09 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9mIj-0002vz-SK; Thu, 15 Jun 2023 12:42:09 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9mIj-0003fn-QA; Thu, 15 Jun 2023 12:42:09 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9mIj-0002yv-Fd; Thu, 15 Jun 2023 12:42:09 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q9mIj-0006k3-FH; Thu, 15 Jun 2023 12:42:09 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=axOrOwmFXWQweUAbTlEblAMug3OfCigPxff6IcHZ3Bk=; b=l02EOovsLwBUo+OOSLrMwTJu5X 969U11JL9ITyfkykxFmeGulZ4r7/Bw13ZL5lnQF1P7BX/c/FQteWiTC0WnpxDEkt4ms70GDDnZRSe +EqDDgMRyeaPH1jJZZf2HW9aa1KUAl6whFHyuCFZqB6RqAcvoH59JwIITUnMrFbYLQO4=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable-smoke test] 181442: tolerable all pass - PUSHED X-Osstest-Failures: xen-unstable-smoke:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking xen-unstable-smoke:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking xen-unstable-smoke:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking xen-unstable-smoke:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking xen-unstable-smoke:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: xen=1512a68721620338daf477bf717d23befbb4faf5 X-Osstest-Versions-That: xen=87c621d0ef75e5f95987d66811ed1fd7129208d1 From: osstest service owner Date: Thu, 15 Jun 2023 12:42:09 +0000 flight 181442 xen-unstable-smoke real [real] http://logs.test-lab.xenproject.org/osstest/logs/181442/ Failures :-/ but no regressions. Tests which did not succeed, but are not blocking: test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-armhf-armhf-xl 15 migrate-support-check fail never pass test-armhf-armhf-xl 16 saverestore-support-check fail never pass version targeted for testing: xen 1512a68721620338daf477bf717d23befbb4faf5 baseline version: xen 87c621d0ef75e5f95987d66811ed1fd7129208d1 Last test of basis 181426 2023-06-14 11:02:37 Z 1 days Testing same since 181442 2023-06-15 10:00:29 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Andrew Cooper Anthony PERARD Jan Beulich Stefano Stabellini jobs: build-arm64-xsm pass build-amd64 pass build-armhf pass build-amd64-libvirt pass test-armhf-armhf-xl pass test-arm64-arm64-xl-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-libvirt pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Pushing revision : To xenbits.xen.org:/home/xen/git/xen.git 87c621d0ef..1512a68721 1512a68721620338daf477bf717d23befbb4faf5 -> smoke From xen-devel-bounces@lists.xenproject.org Thu Jun 15 13:21:29 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 15 Jun 2023 13:21:29 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549597.858202 (Exim 4.92) (envelope-from ) id 1q9muU-0007LU-4w; Thu, 15 Jun 2023 13:21:10 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549597.858202; Thu, 15 Jun 2023 13:21:10 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9muU-0007LN-1e; Thu, 15 Jun 2023 13:21:10 +0000 Received: by outflank-mailman (input) for mailman id 549597; Thu, 15 Jun 2023 13:21:08 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9muS-0007L1-B5 for xen-devel@lists.xenproject.org; Thu, 15 Jun 2023 13:21:08 +0000 Received: from EUR04-VI1-obe.outbound.protection.outlook.com (mail-vi1eur04on062a.outbound.protection.outlook.com [2a01:111:f400:fe0e::62a]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 7b26232f-0b7f-11ee-b232-6b7b168915f2; Thu, 15 Jun 2023 15:21:06 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by PA4PR04MB7664.eurprd04.prod.outlook.com (2603:10a6:102:f1::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.37; Thu, 15 Jun 2023 13:21:02 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.039; Thu, 15 Jun 2023 13:21:02 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 7b26232f-0b7f-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Dckts8ly34m1e07NR0DcGADDdCtPrk86CiNL/c/P6IDSg5uf0rqWECUG4dmJCCeuEHkKNqM2c4HJ7aSfwoqv+3zbk3AK8yWcIXuG2ONnD6h7MDYkVM3WQf+PRgOTEtumTOCDDZQENub+hxyjrMEnNzkWn11eyPfyVWrUzjMisHPxu8SMMljdRR2TBkOLzFfmIGB5P7ylY31nkmTxhO5+4HAbRfefOu9+V3vfFnsNSSym2ogoejemZETlotnDz1mTUWwNSr3knYj0/QhhEaxmL1lUaosXfp1mkOGanB+8JV5KFaaka9VxyIbHLK7HxMqkZz4ACWna01nV7PKSf9rEjQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=v6w/X1faUS+IaYNpp6Kv691yIk7tfGh0yQQ6AgYPbok=; b=kMqhMLbUGHcdsgVDQGPBdrrmByCLAMz2hf5shUm33Bs7+nbxR+EH09uq4TAUC51KNu4bZ0ywu8ORoeD07ZftxdrAHhkRvYXD6RXTdJFf99A3iHT2TRNvF02IXdDF83vNdk4HldWkwf4OKkOmqfY8TsQAqEQ8Q+BxRbtmlSK//PgPnuuHjQB6EoXhkL8yYX2feYKv5USHJ7+LyGlF8uM8ftDV8gxmZ288EF32yTn0kGGTJpibMSp6k6gAqZ24ICI4Ijgs93nf9XEGqbgqpL3fZ3n1KvAC4npy93j2XZREUKQyKWbMyPYzSs/1LnpNeTR81CvTpR3eKvtEJ8I4U2FJcA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=v6w/X1faUS+IaYNpp6Kv691yIk7tfGh0yQQ6AgYPbok=; b=18bIHEI7sOQheca9zPkgLgGdwpm5+3NPH0RSYCEMSiUQsoBARkV/Ep5x5tWrsQ0Ck3CeMb5shNhIlfc9xIZZAWmtAaYa5n12tItRb0g6pZXkLF9dzFgT+GVNu3U5Q+NrvIk4l15Fv44JamS2ZJ6sQYvOtXYsFGdklxuXp06Y6ux4xY0KeRLv3WUDlb9W2q/R/h/nCU+N0E7gNVPhXJiszo8a8myXVcrCx68WVTBSeRsdkGSjAaNCswmmxqXn9RQANEKqcaBFC2jTpQSjsZWiPEb7Nfx8hNO5BBjf7f9txd1wbjc2aZZxXgMFuuvsl4cryhgQPtFZ26vukFAiyyYIkQ== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <71c1d8cd-8777-e913-5a9d-93696dad3740@suse.com> Date: Thu, 15 Jun 2023 15:21:00 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v4 01/15] cpufreq: Allow restricting to internal governors only Content-Language: en-US To: Jason Andryuk References: <20230614180253.89958-1-jandryuk@gmail.com> <20230614180253.89958-2-jandryuk@gmail.com> Cc: xen-devel@lists.xenproject.org From: Jan Beulich In-Reply-To: <20230614180253.89958-2-jandryuk@gmail.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR3P281CA0098.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:a1::14) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|PA4PR04MB7664:EE_ X-MS-Office365-Filtering-Correlation-Id: fbc96e9a-4bdf-4fa9-56da-08db6da35d79 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: P5c3DULP9cwRRbaZIBTESVrTgmCx3r63YExtuqHerGfq/+xVWCM/JLNwmVOP03kICcVAsSak2FnUy89QGgByulsT5HneMg7Z1MajI3ot4jcI1ocyDUL5ZGIKcVbYqiK5OpF2Hwa5ibxRoVSLZJ8D3Gmc1Zn1bkeDgdiAcx+XyQ9nD9UdIg47RTaz1dmVyFY7xuUJIGIoRLa2FjGVmZQSYmK9Z9UCiL1X+UJVmMoMe/D3y9o2iD4kOgzdYgwfiRMeYxwNmzzHLsNqX4CFf4Ga/CBFw66adW68ZvkGO8/hoqCAYX30/VyGl4qqJwAjazj+9DDihU4v2QQ0jnQFL5zZ+pb9OAM8ziSi1X4XHdm8fPkiFLw0r7z8et/gadaVu2vpSOxPVRZxOxXYRgtAuLaSRbtZ+iHeRDyW7xSuGqq+L6KpbidzaOXF72xHpOxSFo2B+rZO+AgoJZcR7pW3E/lrCadlhFLLBI4jhdDpoJSiVQ6OAUCErUWa3xQePe2nKQ4NJLeAc5ZUODOxPXVPEIjlFTPoagZ+jMCDtXXOByl3N2tBFIbBPjz26Czd/44j4+RC86XutcPF3NPvUyTqm4bp4pd+OGFXlHpVTdFw30jBWTdKEQ917AXqQvUlCqe4Vifp+VeoLGQZ668fhiJwvPVMaA== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(366004)(39860400002)(136003)(376002)(346002)(396003)(451199021)(4744005)(31686004)(5660300002)(2616005)(186003)(26005)(6512007)(6506007)(53546011)(2906002)(6486002)(8936002)(8676002)(41300700001)(66946007)(36756003)(38100700002)(316002)(6916009)(478600001)(66476007)(66556008)(31696002)(86362001)(4326008)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?NUxXZjRWb0RWK2JlV3dsWHZ6OXV1WXFYT2RVVGhlRWR3ZXBpRDhVcFZtdGlh?= =?utf-8?B?VlJGMnVObitHN1kwWExpTUdKK21rRCtGNFFjSkY3ekErbElTTEN0aEpqaUdY?= =?utf-8?B?QzV5ZEV0cGhVZU1pZS9reUJZYXVwbHRFdXZFNEVzQzBlcFczdGFlSjZaWHBp?= =?utf-8?B?TEY0b1Z1K092bFZ1NXF3VjJnRzJWTWZER0dGOStSWFd5R2pPZDBoVFhidGlo?= =?utf-8?B?VlFIbkVEakwvdHJwKzJsSmZCaWF3bzYvZDdrNFRRSlFJSCtvSjE0RVp6NXJy?= =?utf-8?B?TExYRjhiRmJWUkphTExoQkg3WXJYQnMwZ05SeXlWUGxiZ2ZiY2M0dUcwZGRn?= =?utf-8?B?U0cwaDFscFgxOXZVTHU3bEJJc2hsVGF3MXFlVWxtbFJCcjRSZVpLakdscDdX?= =?utf-8?B?Ym4wOENUaEJCcXV3NWJBY2hOMlEvRnBqbDQ2SVcwOWt4bVBXdWl0RGJQRWtL?= =?utf-8?B?cktLSWhqZEpRK1ZNbm94TWQ0NWYvQS96ektOZmVHVjdJdVNHNTNRMWpvN2Jx?= =?utf-8?B?eWg0QUFmRjFKRmtzVG1nUFg2Y3d3YVJSaEhud2VIaFJTaWlMWlJCWTB5Y0s2?= =?utf-8?B?UE55dC9wNlRIU3RJTGhCeGZKWHkrTy9LS29rby95anNwaXJDK0RXWHhqYTc1?= =?utf-8?B?NTYrSjFTZVlyVFl2aTMvUXZvc05RNGFKL1ZBTHVDZnFuYzlYUXUvdmFBWGRV?= =?utf-8?B?aDFzdURMMlh3MTQ2aUVVYldDdnZVd1pmMnFRWUZEeFRUeDExemZaVFhiMkpU?= =?utf-8?B?M2R1cThRdjl0R1ducE83M2cvTnplbTJIN3N4Q1puSG1oT1NBYVc2eEk2ZFpn?= =?utf-8?B?OGcxSFRaZmQ2R2RCc0tGTXBjK0dVR1p1N0E2UklUcGhzNzFPT2c1QXlsY2tW?= =?utf-8?B?WlFkNUZ6bjFiVy8rU3RxL1ZqekU0NENrcDNWUHZ1WmN1andoRjhRaGhCbTNm?= =?utf-8?B?UHFBbXdCRXFoSWxWVnF3VGErVVhFd0NVNnBvRTl0M2svalh6VHJ1WmUrbmhP?= =?utf-8?B?UTU2alZqVjFreGJjUjBVcUhsSzF1QWp3Vml4NFF2dU1kSTUxOFRMOTh3dEtD?= =?utf-8?B?clBXT3FKdithSEhQY2NOQ3BGdWVWc1VjOW9PemRUSTJSV2VaeDA4c2xwc1J3?= =?utf-8?B?NDljYUgvRlJPRnhWMi9vTGtrcU5Dazk4R0VacDlXM3pwclhVTzRTM2RQNmlo?= =?utf-8?B?d3JFNExTRVlDcGtuQVJLczYzQTNMZnhGTlB4WTlVRlRVV0kranFFdmptWCtL?= =?utf-8?B?dXRIOXp4MDF4VnZSQmdHMzA2ZXRVcWt6K3F6b256K0sxelZ1VmJYTDdNQ09t?= =?utf-8?B?ZFRHRVF0OWY1Vm1vbUlCQ2F2dEJFMkRWRHVZT3lYbHRHTUczYXd4WW5tWXE1?= =?utf-8?B?RlpMbTZLL2dpTHR0K2syRG94aVpuWkkwaDJzNGZndEl1aHByLzdTbE1aUEcx?= =?utf-8?B?Y0NUVFdjcmg4azdEMVdHREk2b0JHY3U3czlrUlBKbjFXWW1WLzE5ckFHZ1VO?= =?utf-8?B?ZVU3cVBLY3dkNUFySDZSSUdmeUdMV3VnOXk4MDJ4alh0ZUhRWTJuYWt5cVRp?= =?utf-8?B?Uk9nMFI3Z0hnc2d2c2tYZFNxVHJHZjlHTFZOdzczU0VlVGR5YzhycnhCbGxH?= =?utf-8?B?ZTlzNFl0TkV4UmVYR2F6a0lVMzA0MklRMjBINGRrdWRRN0RwbjN6TkRLWmNk?= =?utf-8?B?WUo3S3JjZmV4NCtkL0hobm1TMmpWaFByN1RFc3ZFSG1UZlczUzc1NTRKWmsw?= =?utf-8?B?THlBTlh4ajZwcklsVS9mZXZCVTlWZndUdUxsZ1lGdmY5VWFzL3hoTlhNbnhy?= =?utf-8?B?NVFjVUFacGdUdklSVG9qL0lIZS91U043a2ZnVVBCZGNBcmQ1MEY5cThaM3ZD?= =?utf-8?B?SmordHRsVjZIeXB6QjJxR1B3M0FOem96cVgxWTRGb2UvcEFyRDFKM3ZNaXR6?= =?utf-8?B?SXB3M0gwT2J6ZjNRdkdTZGJXbGtZME1RZGtOb2VvZmhoTHQ2dWNqeTBoOTRL?= =?utf-8?B?RndiTDZ3TTU3ZXhsaC9pY3dZVUpNb3JDb3pBSHdnaHlhL21UVjZYTnNYSDFK?= =?utf-8?B?QjBKeGxpWTdSKzlMblEydlJuVUh1eUliQmRybkZIQjJjSncrdUNWbkE0UzZV?= =?utf-8?Q?Or/1nhrOEM0s6zEwTMq00XTy6?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: fbc96e9a-4bdf-4fa9-56da-08db6da35d79 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Jun 2023 13:21:01.9639 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: WG2FsFhPraibJpOEPcCDgGC2jVzwYxgr+GT3MISpDpZA3YARDJ4aIBI1G933+RDjzjDH3lAXElnp1aJlTAfBhg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR04MB7664 On 14.06.2023 20:02, Jason Andryuk wrote: > @@ -121,6 +122,12 @@ int __init cpufreq_register_governor(struct cpufreq_governor *governor) > if (!governor) > return -EINVAL; > > + if (cpufreq_governor_internal && !governor->internal) > + return -EINVAL; > + > + if (!cpufreq_governor_internal && governor->internal) > + return -EINVAL; First just a nit: Why not simply if (cpufreq_governor_internal != governor->internal) return -EINVAL; ? Yet then I find this approach a little odd anyway. I think the registration attempts would better be suppressed, thus also not resulting in (apparently) failed init-calls. Especially for the userspace governor this would then also mean / allow to avoid registering of the CPU notifier. Jan From xen-devel-bounces@lists.xenproject.org Thu Jun 15 13:30:34 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 15 Jun 2023 13:30:34 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549604.858211 (Exim 4.92) (envelope-from ) id 1q9n3V-0000TJ-3Q; Thu, 15 Jun 2023 13:30:29 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549604.858211; Thu, 15 Jun 2023 13:30:29 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9n3V-0000TC-0l; Thu, 15 Jun 2023 13:30:29 +0000 Received: by outflank-mailman (input) for mailman id 549604; Thu, 15 Jun 2023 13:30:27 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9n3T-0000T2-Lh for xen-devel@lists.xenproject.org; Thu, 15 Jun 2023 13:30:27 +0000 Received: from EUR04-HE1-obe.outbound.protection.outlook.com (mail-he1eur04on2080.outbound.protection.outlook.com [40.107.7.80]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id c9a19c2f-0b80-11ee-b232-6b7b168915f2; Thu, 15 Jun 2023 15:30:26 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by DU2PR04MB8743.eurprd04.prod.outlook.com (2603:10a6:10:2e1::5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.37; Thu, 15 Jun 2023 13:29:56 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.039; Thu, 15 Jun 2023 13:29:56 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: c9a19c2f-0b80-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=U8HudnC8SrDrkbyKj8ZSdK3WNWyMw9Ow7naGxlrH0Fsxxeu74A3EVWVDasJxfa9TqwHtwXB/KlHnB6p6moDwoYe6PCIy+67ehdKgmHOuofYqtnJBa3UkfN/LL0w7E2y9vmGz10twPLqe4iJmhEER7eVg8KkdMVPr/AxX5Y4P+Av2ElY2TwnYJOSXM40wiwOSkk4QWJ3DbLmU6sZvKnRGU/mbWRdO4nn8zyupgu3dQEcN00LgQonUCUBBgcaUmJgFVkPkWsy6X9j3pyt2eHbgxJo9wkW6cvy9qvN/hoZ+Hv14oEepiXMBES9fH5ACuHfvV8X1056G0OX2cV+0IOPJWw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=WbUm2nN9F5UNXiPltud+Dsqi5MVNj35r/G8iK0IBdqA=; b=kY6270/YTfrSNBWBvivT7fWqprhIQQEt60bCKnh/nhm0vqURFtlof9R1vw5uhb63gpSRMI+LBP3CQNTLApHPBywwmUtgBltJChEfKctdZOvNh+lQ7A8Q6Gx3q2aoDIZdGj2qnT1pq/FF5uUwl+oGg7oCIFRS0tVz+SAb2h3kGt4Ef7jdFyhO8gza4c6Z180cUTYVeS9xUY2B95vKk2xajQbvhI+Bgd3Io6cD6OUZC04Ky5qzZdtmz9AyKLfSsE2EyG3kBTpubhxUEPsmEFDy9lYGvg4o2jxaasOfV404lh5ynCmcClbH87kwRmVTH6d0K4iqPbcRACPki0u1e8Vt2g== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=WbUm2nN9F5UNXiPltud+Dsqi5MVNj35r/G8iK0IBdqA=; b=fTAd+W97vW8GrQJrMvAR+H0d5rdymiGFSSJqsZhHHpO4UFG3A1HjSGmgTDcTA/F6znKxbn1j0alIsbIpj1j0M0Tg3RmU/dFQqyPD3Z8wyd8U6uECuo6i89o1cjtMhgbT2m6uWTlCYQEU4UC1Nnpy/8ooYirhDpcOdqX/7x4eb5JYPm+HzfqG2u+s+McW9zmaFkp/y5xufc0MijdxHkLlIZ0Qpe3hKHvG/i1/cYzos22tfqaJ1a2e83VuYjPSNngEcexyA5DT4Mp0DRDBCyaqzUhhtQDPawR9rG04faL+ZkyIJpxPziFs0EAg+v85szjlGw4ZSwHMwPJmZQVN1LsSTQ== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <194760c8-31fe-d0f7-828f-b8a637884989@suse.com> Date: Thu, 15 Jun 2023 15:29:53 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v4 04/15] xen/sysctl: Nest cpufreq scaling options Content-Language: en-US To: Jason Andryuk Cc: Wei Liu , Anthony PERARD , Juergen Gross , Andrew Cooper , George Dunlap , Julien Grall , Stefano Stabellini , xen-devel@lists.xenproject.org References: <20230614180253.89958-1-jandryuk@gmail.com> <20230614180253.89958-5-jandryuk@gmail.com> From: Jan Beulich In-Reply-To: <20230614180253.89958-5-jandryuk@gmail.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR0P281CA0071.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:49::10) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|DU2PR04MB8743:EE_ X-MS-Office365-Filtering-Correlation-Id: ca9d400f-772e-4855-7abb-08db6da49bdf X-LD-Processed: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: LLW4L+e2ZZM5BQkN1uTf3ylgqsbId5aD+Rgr56cOqALNLZSDbevxJ6nBkAZdwpXMdQ/j333lMpW3rZgectbuKh3HRPhnIApIuMSvJHiPOc7grkeDzpOC7Ta2WnH7TP0LlZQfFaS9sSdL0bdZBDMDM77isbNosRLuLDpbZIAW8eR3A3ZMPKLo25sL7AyTGvsgF5mrVFglQyfIwUVQovHOZUs9oguG95wcwvH1irtThgfkxAkghFUBGUGrS95nC4oAY2IT0IHs4TR3LeOR+QLlNEFlZHUgD1vAJc9jPNkY4XCO1y48SbU5IES2njG3HATPYQdHg++UYN/4c4dlRfS1jbAVOR5qIOjeNyjbBKMZMRiIyyMocZapkxtEl6lpHmUP1hjG35z6Df6liNZcpkmoq3Lpts6zbolec8X9ad58ZY4OQXLYxQMzYGHEOXq5JHetl7WOB5BpCUmLjpuI1JP0EhLP3ERB0cvvCgXbcNgKwFusQ5h2pvosce5Eqdg7Ey9UJavabohvskGaPpe01ldPRcP19FYnILP0e3QerJyiuVS08kB97jT9QFfF9eYTKtNhs9K6HCppasbUSPOACGAoI7R9QTsZdrxRQmTlh2Jw9FibQs+UyFar/R9Ng+NMqsCc5t/OQF/ukWOlB9Zw75lLOg== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(346002)(366004)(39860400002)(396003)(136003)(376002)(451199021)(5660300002)(83380400001)(186003)(6506007)(2906002)(31686004)(2616005)(6512007)(41300700001)(8936002)(26005)(8676002)(6486002)(31696002)(316002)(54906003)(53546011)(6666004)(36756003)(478600001)(4326008)(66556008)(66476007)(86362001)(38100700002)(66946007)(6916009)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?Z3ZVK0gzS2FCbGN6UG1neVFSVGpOVUFyVGsrVDFHb2dHSE1nem1PZUhoMVFT?= =?utf-8?B?VGo3R0p3akN1dWNZMTFnczNndUpMcHNZVUtxc245a2JFRmpxdlA4bHNraTls?= =?utf-8?B?RUFzZExYMkxQeGwya05sRHdrWk9hczlSSi9ZM2RzdGRMWThIR01YZWRJdTZC?= =?utf-8?B?VzhsVEZKMjBDdHNjZHRiMkNnWVRpVWFwUWpPM0tpOHI3M1EvNy9sd1JQeEpT?= =?utf-8?B?VnYveFZ4eGVodnZOVDFmMkl2STcrYWZidUJ1WnJnRU5WNy85WjI0Q0V5eEZC?= =?utf-8?B?aHE4OThNWWlPWkt4bmgvam9pc2JkRXJxekRoQUVZYVJVWnJCZ0xhbVJsMXB0?= =?utf-8?B?UFBxbG5PSWhlWVkxTjdkMUkzMEIzZ0J3SUJhdHlvdVYvb0NaWG9uelFpMk91?= =?utf-8?B?M0s1Sjh6SjgvZ1pBUlRIM3NWZFQ0YWNuT2RwTzhzWFpjNkhlOC9QMGJBeFhY?= =?utf-8?B?ZXNzc1hja0NhcUNTc2JFRW9Yakx0N0FCVmd0b01wSmRFZm5uY1l0V2VkV3JY?= =?utf-8?B?S1lFTllla1VqdWhUYzRzaTZnZGpsK2gzNEF0eG5iRDBxc0cyUzRYMXVEbWh3?= =?utf-8?B?RU9ocmgwUXBlaTVRU21mQzVwV3B2YThhQUY0aXZmT2NkelhXZU9MZmI4QkYw?= =?utf-8?B?bGJiVnF2OVZXWVJHdWV1b1hnS002Mkt4NUFQUU5jdDVnWXE4Z1d2dUFRM2la?= =?utf-8?B?bGpPWXFpN2FaODFmWUxrWDRQZXNzZnZYNjJYTGJrN3FaMG95Y1I1ZlpjU1Bm?= =?utf-8?B?eXoxb0tmL1g4MHVNdWk4SWZwbkU4Z2NsV2I4REZPMHhaVFJtNzI1Q3R4MlJ6?= =?utf-8?B?eDFMdUhWcTNDNGxIZnFEWlZHdk8yTWtHdm1XakJ6dlRZeXgzQjNZYXZSWHJk?= =?utf-8?B?emQxV01lNWNJMno5TWMyd0tOQUcxTkdnektNS0ttMVdqRFRLY0d4TVp1VVk2?= =?utf-8?B?TUJVR0V4d1JMWkVvbVhyaEFDMkJIeGU3WTlNdmhzWHdLdjdOL0dJeDdZbUx2?= =?utf-8?B?cDVtMHVlTVZ1V1ZmRGdzZHc2VTdlcTN1dkYyZjRuTWJKWXVRZTdYbjV3RkNB?= =?utf-8?B?SlRUZHFHa3lRZzd1cmE0UTlKQlhVUzY3L1J2QTlrejN2QW9CYlQ4aW5aeTZj?= =?utf-8?B?VXlmSmRCSUNRVFI3Yy9GcU11M3NCeEIzbDBTa21pb2plRmxnTWZPMlp0VWpE?= =?utf-8?B?UEhNUTV1K2pCR0podFU4LzZPMmhONlhCckpubGlKb3dOaENDNEVqRjkzeklK?= =?utf-8?B?R2R5QXVEZDR0L0VBRXR2eVd6YW1YaWVWSCtEMzVxc001dU5wT2NoVlZwUloz?= =?utf-8?B?WGJHc3ZySlUxc1ZrUE5ZbkZlWW1wWmVKdVoxQWdwcHkzTUgwVHhUMDZVY3FB?= =?utf-8?B?TjNqWVcxOXFVVFIzVmVyYU50Q0tKb3QrbTJ6M2FibmdjZGVDUjB5Rm5WOEJp?= =?utf-8?B?ZzJURkF5OXpteW5BeVVNaVZSNWkyVW1hdmV5UEpIa3pmb1lQSllkUHpzdzhx?= =?utf-8?B?S3gwM3ZnVDFUOXdHWjIvaDBkNUw3cXo0TDVUWXJPc2RvRmNkRjdRQm9uNjdN?= =?utf-8?B?alFNR3FPN3l4L2twWFNNSWZwam4vc05FamgybHFNM2dqa0trc0VwNmhrWFkv?= =?utf-8?B?L1hDMWRmV2hEU05DTDJYQ0trZm9WMUVuU2dRNEROYTlTaElyVm9GUlA4Z3h6?= =?utf-8?B?dFk5UFlCbXB2YkJUdDc2blRzaDRnNE9lcVp6Skk0SVgrNnNWU2ZEdGpDVkFW?= =?utf-8?B?RzRFZ0ZEam5UU2phcmV1Slp5WG1WU05Yc3p1MldlMTZXK1FJWXVVQ0t3Slhp?= =?utf-8?B?QUFLQWlwWUlrSTdHR1AvYVZ3UkcvYnBLZ005dzJJOE8rb2R0MC9oL2dwNllV?= =?utf-8?B?QWpFYjNaNWo0OEJZTFZ5bDQyQU83c0M2RVNob3ZGNDJXaE5mMno0bWlVaklQ?= =?utf-8?B?WFZBTjdSY0p6YUhNMmxpWUt5dTI5QWx6SE5HM1R0UDlJQU56WUg2czBtNElr?= =?utf-8?B?WlJvUG1JU1FYbzFCaGV6eDduYmc0SFBWQjRNNUxJVXNBdW9EOWh2WWRpbkVm?= =?utf-8?B?akNKcHVrTU5qenlJakdjUklWN1lkc21hSjVmMDB2SzJmajNhMi80cGE4REJC?= =?utf-8?Q?xgZqLh4V84DLH/2m7NpC9+ZEC?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: ca9d400f-772e-4855-7abb-08db6da49bdf X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Jun 2023 13:29:56.1696 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: WVjfaAgT+LrxO1A1TZ37ST1cH8H8BDk4hbg6V5mksOx4zXfaxoHcHgTQ9RqdUQeBstNFecWIFrYz4Dy1btVTuw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU2PR04MB8743 On 14.06.2023 20:02, Jason Andryuk wrote: > --- a/tools/include/xenctrl.h > +++ b/tools/include/xenctrl.h > @@ -1909,16 +1909,20 @@ struct xc_get_cpufreq_para { > uint32_t cpuinfo_cur_freq; > uint32_t cpuinfo_max_freq; > uint32_t cpuinfo_min_freq; > - uint32_t scaling_cur_freq; > - > - char scaling_governor[CPUFREQ_NAME_LEN]; > - uint32_t scaling_max_freq; > - uint32_t scaling_min_freq; > - > - /* for specific governor */ > union { > - xc_userspace_t userspace; > - xc_ondemand_t ondemand; > + struct { > + uint32_t scaling_cur_freq; > + > + char scaling_governor[CPUFREQ_NAME_LEN]; > + uint32_t scaling_max_freq; > + uint32_t scaling_min_freq; > + > + /* for specific governor */ > + union { > + xc_userspace_t userspace; > + xc_ondemand_t ondemand; > + } u; > + } s; > } u; There's no comment in the header that this needs to mirror the sysctl struct. Does it really need changing? > --- a/tools/libs/ctrl/xc_pm.c > +++ b/tools/libs/ctrl/xc_pm.c > @@ -265,15 +265,10 @@ int xc_get_cpufreq_para(xc_interface *xch, int cpuid, > user_para->cpuinfo_cur_freq = sys_para->cpuinfo_cur_freq; > user_para->cpuinfo_max_freq = sys_para->cpuinfo_max_freq; > user_para->cpuinfo_min_freq = sys_para->cpuinfo_min_freq; > - user_para->scaling_cur_freq = sys_para->scaling_cur_freq; > - user_para->scaling_max_freq = sys_para->scaling_max_freq; > - user_para->scaling_min_freq = sys_para->scaling_min_freq; > user_para->turbo_enabled = sys_para->turbo_enabled; > > memcpy(user_para->scaling_driver, > sys_para->scaling_driver, CPUFREQ_NAME_LEN); > - memcpy(user_para->scaling_governor, > - sys_para->scaling_governor, CPUFREQ_NAME_LEN); Did you really mean to remove the copying of these 4 entities, rather than simply change the way the fields are accessed? Jan From xen-devel-bounces@lists.xenproject.org Thu Jun 15 13:50:55 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 15 Jun 2023 13:50:55 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549609.858222 (Exim 4.92) (envelope-from ) id 1q9nN1-0002uN-Nh; Thu, 15 Jun 2023 13:50:39 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549609.858222; Thu, 15 Jun 2023 13:50:39 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9nN1-0002uG-Ks; Thu, 15 Jun 2023 13:50:39 +0000 Received: by outflank-mailman (input) for mailman id 549609; Thu, 15 Jun 2023 13:50:38 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9nN0-0002uA-Ps for xen-devel@lists.xenproject.org; Thu, 15 Jun 2023 13:50:38 +0000 Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 9b458cc1-0b83-11ee-b232-6b7b168915f2; Thu, 15 Jun 2023 15:50:37 +0200 (CEST) Received: from federico.dell.bugseng.com (unknown [37.162.212.93]) by support.bugseng.com (Postfix) with ESMTPSA id D4CF14EE0738; Thu, 15 Jun 2023 15:50:35 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 9b458cc1-0b83-11ee-b232-6b7b168915f2 From: Federico Serafini To: xen-devel@lists.xenproject.org Cc: consulting@bugseng.com, Federico Serafini , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk Subject: [XEN PATCH] xen/arch/arm/traps: remove inlining of handle_ro_raz() Date: Thu, 15 Jun 2023 15:50:16 +0200 Message-Id: <98c6fb7ace8fce22bc263fe1d7fffac4e8130b57.1686835890.git.federico.serafini@bugseng.com> X-Mailer: git-send-email 2.34.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit To comply with MISRA C:2012 Rule 8.10 ("An inline function shall be declared with the static storage class"), remove inline function specifier from handle_ro_raz() since asking the compiler to inline such function does not seem to add any kind of value. Signed-off-by: Federico Serafini --- xen/arch/arm/traps.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/xen/arch/arm/traps.c b/xen/arch/arm/traps.c index f6437f6aa9..ef5c6a8195 100644 --- a/xen/arch/arm/traps.c +++ b/xen/arch/arm/traps.c @@ -1677,11 +1677,11 @@ void handle_ro_read_val(struct cpu_user_regs *regs, } /* Read only as read as zero */ -inline void handle_ro_raz(struct cpu_user_regs *regs, - int regidx, - bool read, - const union hsr hsr, - int min_el) +void handle_ro_raz(struct cpu_user_regs *regs, + int regidx, + bool read, + const union hsr hsr, + int min_el) { handle_ro_read_val(regs, regidx, read, hsr, min_el, 0); } -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 15 14:05:04 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 15 Jun 2023 14:05:04 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549616.858232 (Exim 4.92) (envelope-from ) id 1q9nam-0004Vn-Uv; Thu, 15 Jun 2023 14:04:52 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549616.858232; Thu, 15 Jun 2023 14:04:52 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9nam-0004Vg-Rb; Thu, 15 Jun 2023 14:04:52 +0000 Received: by outflank-mailman (input) for mailman id 549616; Thu, 15 Jun 2023 14:04:51 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9nal-0004Va-Ho for xen-devel@lists.xenproject.org; Thu, 15 Jun 2023 14:04:51 +0000 Received: from mail-ed1-x535.google.com (mail-ed1-x535.google.com [2a00:1450:4864:20::535]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 964ccb31-0b85-11ee-8611-37d641c3527e; Thu, 15 Jun 2023 16:04:47 +0200 (CEST) Received: by mail-ed1-x535.google.com with SMTP id 4fb4d7f45d1cf-51480d3e161so11645460a12.3 for ; Thu, 15 Jun 2023 07:04:47 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 964ccb31-0b85-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686837887; x=1689429887; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=wxnY0aK7SzkApStiLsuE2St3iDQaPT3SpvYKIOPYDHM=; b=dKY9IUMg5OrDyvek2D9RfqctTKv51JRz8LOQd28qO97cuitZ1y2GBC0giqxnMMZFLz o/uq8THymLJcH1u4wxRp5GEsVEvp1jeZ1pfIZ++4DiQpNZKnZAiy/QdY9mf8RwPrUcHf xljFGZf8MPsdJbOYTw1sGJEjwudBi1zyF5O519+zWSHUJPMe+n1P1yoquKSAHYKkV1T4 rmXM2Sgr0IVFSUoqo82KgBBYpDemJeZqjyX1Uf76yDtFFvTzg8eCWcRYSP5glV7hKZsG 5uP6L3Si8sIGqlLzKWjA33PJpsKHCl1W9sdT+IpdE4wYYQe7QC7ohxyiYuKTL66O6OD7 1TIg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686837887; x=1689429887; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=wxnY0aK7SzkApStiLsuE2St3iDQaPT3SpvYKIOPYDHM=; b=CHt+zP7BE9nw8ki0I47CVTCEzcEZF0ZiO6AuaOoJrYSrXJ/ELIo8u2i4CmZPtSIPnZ GRwZnEuk2dateBkwtw0/wyGpYBXHgk1nQ7ubeWdTEKuAeGVqn3I4mxof2O/5ALVsJPxe ymvEidPj1lZkSH3B5woIKCvx9hv7fC2Fsc6GdqgXdohvklOyvZivjGJRq3zqbZwEPgft +cmnoRlZCkNjg9hSUHSJZmeCeSZsQvnvmIfMkKGmQVQP+NncUpah0rwkgWXGumQJTEg1 Q7+W+0MfECiDrJUSSATYgIFSEnCpEbjplQXCVupCf0GVc40wkAvco6kyrHphhcfuDGOw IAWA== X-Gm-Message-State: AC+VfDwosjp9qUAipZPTg+2tKC4WJX9a9DWo4o2WFHWSMznF1fiFAY4l TPRYv4esVBBNNCwCYzk3ZTdZuH6e2QHl9lbLsyUWH5ahywc= X-Google-Smtp-Source: ACHHUZ6tSSqBieXweBWcdg1hx6BpGXBTq4Cy495u6TYXRY/U2LeMl3lNxlrdebVuYLjEpC3IdQbLAZphh5IyPyHUCFo= X-Received: by 2002:aa7:da0d:0:b0:514:666b:1e04 with SMTP id r13-20020aa7da0d000000b00514666b1e04mr12081192eds.35.1686837886927; Thu, 15 Jun 2023 07:04:46 -0700 (PDT) MIME-Version: 1.0 References: <20230614180253.89958-1-jandryuk@gmail.com> <20230614180253.89958-2-jandryuk@gmail.com> <71c1d8cd-8777-e913-5a9d-93696dad3740@suse.com> In-Reply-To: <71c1d8cd-8777-e913-5a9d-93696dad3740@suse.com> From: Jason Andryuk Date: Thu, 15 Jun 2023 10:04:34 -0400 Message-ID: Subject: Re: [PATCH v4 01/15] cpufreq: Allow restricting to internal governors only To: Jan Beulich Cc: xen-devel@lists.xenproject.org Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Thu, Jun 15, 2023 at 9:21=E2=80=AFAM Jan Beulich wro= te: > > On 14.06.2023 20:02, Jason Andryuk wrote: > > @@ -121,6 +122,12 @@ int __init cpufreq_register_governor(struct cpufre= q_governor *governor) > > if (!governor) > > return -EINVAL; > > > > + if (cpufreq_governor_internal && !governor->internal) > > + return -EINVAL; > > + > > + if (!cpufreq_governor_internal && governor->internal) > > + return -EINVAL; > > First just a nit: Why not simply > > if (cpufreq_governor_internal !=3D governor->internal) > return -EINVAL; > > ? Yes, that would work. > Yet then I find this approach a little odd anyway. I think the > registration attempts would better be suppressed, thus also not > resulting in (apparently) failed init-calls. Especially for the > userspace governor this would then also mean / allow to avoid > registering of the CPU notifier. So are you suggesting that each caller check cpufreq_governor_internal and potentially skip calling cpufreq_register_governor()? e.g. the start of cpufreq_gov_userspace_init() would gain: if (cpufreq_governor_internal) return 0 ? I put the check in cpufreq_register_governor() since then it is handled in a single place instead of being spread around. To leave the check in cpufreq_register_governor(), cpufreq_gov_userspace_init() could be rearranged to call cpufreq_register_governor() first and only call register_cpu_notifier() on success? Or do you want the whole governor registration to be re-worked to be more explicit? Remove initcalls and have governors registered according to the cpufreq driver? Regards, Jason From xen-devel-bounces@lists.xenproject.org Thu Jun 15 14:08:19 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 15 Jun 2023 14:08:19 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549621.858242 (Exim 4.92) (envelope-from ) id 1q9ndw-00056L-Cm; Thu, 15 Jun 2023 14:08:08 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549621.858242; Thu, 15 Jun 2023 14:08:08 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9ndw-00056E-9c; Thu, 15 Jun 2023 14:08:08 +0000 Received: by outflank-mailman (input) for mailman id 549621; Thu, 15 Jun 2023 14:08:06 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9ndu-000564-Qd for xen-devel@lists.xenproject.org; Thu, 15 Jun 2023 14:08:06 +0000 Received: from mail-lj1-x22d.google.com (mail-lj1-x22d.google.com [2a00:1450:4864:20::22d]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 0bd92b48-0b86-11ee-8611-37d641c3527e; Thu, 15 Jun 2023 16:08:04 +0200 (CEST) Received: by mail-lj1-x22d.google.com with SMTP id 38308e7fff4ca-2b1acd41ad2so28446971fa.3 for ; Thu, 15 Jun 2023 07:08:04 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 0bd92b48-0b86-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686838084; x=1689430084; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=35Xp/xzSTIq0bvn06gcv6fcs5PrVPcnmufNOpdv+E8w=; b=oOD+YdPJYQEcKr1woXPMTylORcV3JDk8qFmX0FEfYg66sDAYqsNyQyTXUYKqxVKkcx ruuks3rmxqLXPDBJwYklJJxvLHN5HeEO1ryCEHk5uGwvJk9+llJcUWrCez0aydrIfiJy SeZylgNNSptVr499oAkB5qm38X6xI/1aiVcI05rAcs/GMiqSfHzCETI13XDnJ+trvry1 8fU27MWBToPNYH/GICTFj3XaYynBjS862BM2At+pAYUpRkkpx+J8oR06RfPO4kJGePPy ac3wPLEYlbffWQtqGspojxZs6sYYf3NBYuYj4IZ/KzbzcpIiFIVwfAAVM3v7EcrgJ+jg pmvw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686838084; x=1689430084; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=35Xp/xzSTIq0bvn06gcv6fcs5PrVPcnmufNOpdv+E8w=; b=E7uu5VuX2tk72/l37j7tvz/9pr68FrvkcBo2N0B/2fNalZ46MCQZwBPwk/r/proi4c FgoiHteVtkY0STCPGQlqyEbs6oaW+pQDnEQOgyqST7Srrs60bJAMkBirjQS9Nb2NDX4Y YwVdjGv3SZyYcPKdb4GJoMQe+Di8rfjy6MKa7PbfIRU8MlAtoZLtUdRlNZ3m6uMKY4FL o6uz+TP9DdPWgxTZ7xt2ncXySNQdjeJmF5Jt72pfZu37HJXFqXFxrLabVcGgVNfn7+jT kaCxNbnxilG5ZxaJTDv1BKHjjtaoQPWPk1alZoKeYVI683guOUlmSRGrRm6rRRFE+GB/ yuQw== X-Gm-Message-State: AC+VfDz2+eVXWugxnD0WsdRvnmHckPVCvxtzuqCE4+tBzqmehpQaJTFE ryl7Xj8Fis4Z5ugos+aMb2vBqjJnmhqiUx2P+XQ= X-Google-Smtp-Source: ACHHUZ5oFBfOBR3f988zFy/j/q4Ysg2nDc7uf22o1k6zf8JEH59cPBtzx6XtuTVNVJRfsAtoia3vy4ZXHHVWWUYRLKE= X-Received: by 2002:a2e:870d:0:b0:2b1:cb17:b445 with SMTP id m13-20020a2e870d000000b002b1cb17b445mr8243788lji.48.1686838083996; Thu, 15 Jun 2023 07:08:03 -0700 (PDT) MIME-Version: 1.0 References: <20230614180253.89958-1-jandryuk@gmail.com> <20230614180253.89958-5-jandryuk@gmail.com> <194760c8-31fe-d0f7-828f-b8a637884989@suse.com> In-Reply-To: <194760c8-31fe-d0f7-828f-b8a637884989@suse.com> From: Jason Andryuk Date: Thu, 15 Jun 2023 10:07:52 -0400 Message-ID: Subject: Re: [PATCH v4 04/15] xen/sysctl: Nest cpufreq scaling options To: Jan Beulich Cc: Wei Liu , Anthony PERARD , Juergen Gross , Andrew Cooper , George Dunlap , Julien Grall , Stefano Stabellini , xen-devel@lists.xenproject.org Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Thu, Jun 15, 2023 at 9:29=E2=80=AFAM Jan Beulich wro= te: > > On 14.06.2023 20:02, Jason Andryuk wrote: > > --- a/tools/include/xenctrl.h > > +++ b/tools/include/xenctrl.h > > @@ -1909,16 +1909,20 @@ struct xc_get_cpufreq_para { > > uint32_t cpuinfo_cur_freq; > > uint32_t cpuinfo_max_freq; > > uint32_t cpuinfo_min_freq; > > - uint32_t scaling_cur_freq; > > - > > - char scaling_governor[CPUFREQ_NAME_LEN]; > > - uint32_t scaling_max_freq; > > - uint32_t scaling_min_freq; > > - > > - /* for specific governor */ > > union { > > - xc_userspace_t userspace; > > - xc_ondemand_t ondemand; > > + struct { > > + uint32_t scaling_cur_freq; > > + > > + char scaling_governor[CPUFREQ_NAME_LEN]; > > + uint32_t scaling_max_freq; > > + uint32_t scaling_min_freq; > > + > > + /* for specific governor */ > > + union { > > + xc_userspace_t userspace; > > + xc_ondemand_t ondemand; > > + } u; > > + } s; > > } u; > > There's no comment in the header that this needs to mirror the sysctl > struct. Does it really need changing? Since this matched the other structure, I kept them in sync. The cppc/hwp data needs to be represented somehow, and it gets introduced in the same way for both later. If this doesn't get the new nested struct, then maybe fields could be placed into the single union. That would grow the overall struct and have unused fields for hwp. > > --- a/tools/libs/ctrl/xc_pm.c > > +++ b/tools/libs/ctrl/xc_pm.c > > @@ -265,15 +265,10 @@ int xc_get_cpufreq_para(xc_interface *xch, int cp= uid, > > user_para->cpuinfo_cur_freq =3D sys_para->cpuinfo_cur_freq; > > user_para->cpuinfo_max_freq =3D sys_para->cpuinfo_max_freq; > > user_para->cpuinfo_min_freq =3D sys_para->cpuinfo_min_freq; > > - user_para->scaling_cur_freq =3D sys_para->scaling_cur_freq; > > - user_para->scaling_max_freq =3D sys_para->scaling_max_freq; > > - user_para->scaling_min_freq =3D sys_para->scaling_min_freq; > > user_para->turbo_enabled =3D sys_para->turbo_enabled; > > > > memcpy(user_para->scaling_driver, > > sys_para->scaling_driver, CPUFREQ_NAME_LEN); > > - memcpy(user_para->scaling_governor, > > - sys_para->scaling_governor, CPUFREQ_NAME_LEN); > > Did you really mean to remove the copying of these 4 entities, rather > than simply change the way the fields are accessed? Yes, it was intentional. The immediate following lines are: /* copy to user_para no matter what cpufreq governor */ BUILD_BUG_ON(sizeof(((struct xc_get_cpufreq_para *)0)->u) !=3D sizeof(((struct xen_get_cpufreq_para *)0)->u)); memcpy(&user_para->u, &sys_para->u, sizeof(sys_para->u)); And this memcpy copies all the moved entities. I suppose the comment could change to "...no matter which cpufreq driver". Regards, Jason From xen-devel-bounces@lists.xenproject.org Thu Jun 15 14:24:01 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 15 Jun 2023 14:24:01 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549626.858252 (Exim 4.92) (envelope-from ) id 1q9nsz-0007W3-Kn; Thu, 15 Jun 2023 14:23:41 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549626.858252; Thu, 15 Jun 2023 14:23:41 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9nsz-0007Vw-I1; Thu, 15 Jun 2023 14:23:41 +0000 Received: by outflank-mailman (input) for mailman id 549626; Thu, 15 Jun 2023 14:23:40 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9nsy-0007Vq-6o for xen-devel@lists.xenproject.org; Thu, 15 Jun 2023 14:23:40 +0000 Received: from EUR01-DB5-obe.outbound.protection.outlook.com (mail-db5eur01on0624.outbound.protection.outlook.com [2a01:111:f400:fe02::624]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 37ee8d91-0b88-11ee-b232-6b7b168915f2; Thu, 15 Jun 2023 16:23:38 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by AS8PR04MB8296.eurprd04.prod.outlook.com (2603:10a6:20b:3f2::23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.37; Thu, 15 Jun 2023 14:23:35 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.039; Thu, 15 Jun 2023 14:23:34 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 37ee8d91-0b88-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=K1KlOs1agyi9TepISsnyyNIKxtJN55wjTyTT9k59RIvDw8NOhx/d+c8yekdSNlBahmfyGjDZK5Hdiff7nn8aLe205knbdWH/JLq7fjz40AcEWpszwMwjfnF4CEaD4L1f19IceSUNmpyQ5zh/mDoiqaYAZSk/CViqUkN2683+OkFH+0B4y/1dduzNmByz4HSHZRYhmDcawCR/a78X0SUyyLmq5oKqeqfvP4M7BeSy33sPJhsuhQN3HqE0bnD3xjZ3fpzOprfCiJtuFzsmaNFacp7cp0prIswWHeNN4aHdwwIPptjQlg6+U71SqcbLmNxEi3oDWzhs8oeQph60PDQ9sg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=jLgDniDbZ/fM4TgGEeUzyNPpmQxp8widl1D8rqaW0ow=; b=hEPvfSJBMHuZ+cUVRjg15p8xpO244fg47F35w05eEKCQN3xKrVx3AJlRiJ7GlxEIh/1WRHHtPyXVh88ELC5eqeErkHh3uXJ/nu3Lixj/5m6j9mHkonK89yo5bBwCG7KJ+mMUJfXHOQ/+ZyjPhZYjVo67SCOGIAk/gMWvqqYj44BhyngaOiIZMVOfFZN9hTIZ85dgXRLFLGYzILDtGp8SLqkCkXv7CsgrECPm0SfvUWuu5ufZvOP3ZsF8Lvhx3thQNNFticfETjyqD2ylq6VESj+EDk2bZtcdIyygHIcsfFdwzHHoUMe/vCeHubVGbOO/Lkv9wy+st4NUI+7WIJ0Vhg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=jLgDniDbZ/fM4TgGEeUzyNPpmQxp8widl1D8rqaW0ow=; b=QH6vbbgFNjUENvbWq8akP3O5PUUbLwLepZ+mXe56D3aqmMvSDBL8HwWNrIT3yCukbWLzN5b684rZV5ECjUjGbtxLZf4VZqK4Y5isIkTPsc56iB/pTF3x4wNYePyLeXdyQgMTQeXaiEnetc5JgpkltXc+/6JJhMTJM0D7OuISzBbJ8iD9bP8sp108iaMk/UUcCmFw/J0tI2Xybr8RQD/cZt2AfVqO6P2NrAMBv3gOhrX52uXmlwnYX+bmc33Y2TJhFQoJVX0RsU0Aj5mvKM4+/6LVlxeA6eZAL9iHo7pb7qwlug16Qlq4U+ZbgR9rW9dia0uL+jEBGodd8AZZpt2KAw== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <2d4be98a-ae27-0cd9-d72e-8557d2d3a319@suse.com> Date: Thu, 15 Jun 2023 16:23:32 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v4 01/15] cpufreq: Allow restricting to internal governors only Content-Language: en-US To: Jason Andryuk Cc: xen-devel@lists.xenproject.org References: <20230614180253.89958-1-jandryuk@gmail.com> <20230614180253.89958-2-jandryuk@gmail.com> <71c1d8cd-8777-e913-5a9d-93696dad3740@suse.com> From: Jan Beulich In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: FR3P281CA0097.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:a1::15) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|AS8PR04MB8296:EE_ X-MS-Office365-Filtering-Correlation-Id: 2b64d909-eb12-4d1d-dc05-08db6dac1a46 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: CLh0/tfuzc1iKcYM0DEzfoRwsLplotDLiCu694MEaZRCtiviDWVBOej2BzmY6daGGn0LhoVNFJohMkUXOdsDG8NeBGMwu4Qu4uuWSGnb9WNVuAIWo3wOP7DhlsKvLZzZ3zDWB0653I4C77GlsC5XMOgWrW1qE4RvBZx1F3StGgIm4l5LaW3DTlME2/t+2AYV/ZRBNPZwmmXBT1l/1T5KZwUIS4ydAh8WNtxiNCbaRn/ZrKV5Vpne/5I2agaqTM8KxzDiWX6g1djNYEBREqc5/0S0G5K9dnUc1QrxAI/Q6S85stCHMqYxVgPkDJnbefqZg0aalpG81K+zPC6ji441kSALUKjETSaP3YN+vcSVz2xuz4ga2SMagtk2lO4bF+96dVrEBa+ykWrCX4dffMbFrCbWOW60gqCiHC9Q+gb3pjN5uXMP5WFhmFPOPHDb1ZxfNIX+REOqGnaUFeTmS75wSZ+OLC8UFyxHTTLIPvJ33fjNxJY/QStiXJLT2fhOnCvrWEFVrf0jRe+Rvd2QWJ6ufsGcRdKtgV4yKUSDiKrYO84HnWDhEn5nwgAJOr4mbSScMUeAYK4psUpkzg/DgCOFJgLyRtEi7aSQNQ4/1DVJpKcbhCiaBtN5zxENYC7TJHqEeXy1WKpaxsUtVLxfjCuQHQ== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(346002)(366004)(396003)(39860400002)(136003)(376002)(451199021)(53546011)(6506007)(36756003)(26005)(6512007)(186003)(478600001)(6486002)(2906002)(316002)(8936002)(41300700001)(31696002)(86362001)(31686004)(38100700002)(5660300002)(8676002)(83380400001)(2616005)(6916009)(4326008)(66946007)(66556008)(66476007)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?OE9LeFV5eTgvQjRoYi9mdXlEMGFhWUpSaUpUNkEvaDlPMlBjMUJDdi9mb0Rl?= =?utf-8?B?R21qS096clBIQm0zakFIbE9UNEljWWdFODJDOGl0NDN5Wm1renMxMVhLWVRS?= =?utf-8?B?QnBWL0xJeU9CQjM2RUg3Rm1iSHQ0T2NEZDJyTWNjaGNadmhoQVdhR2FYajZT?= =?utf-8?B?VnZ1TGlwcG1HRXVHNnkvVjh4dHBpSGh3dklRL2pvUG90bHI0aVVqeDZDT2pP?= =?utf-8?B?ejVYQ3ZHNEpXZDFESkZWMnJHOWYrM0NQSjZJMlZOd3ZSM0FoYXg0WUtNNEZ1?= =?utf-8?B?eEc3c1ZHUGFrdXBaWGJidG84RVg3OXpNUmw3YjJUSFNmZzJRekhrakFiTWFV?= =?utf-8?B?citVMGFUU2piOU55TnVpZFExRkhhdTNCY0xibWUzeGh4Mm0zRnhrUy93Ump0?= =?utf-8?B?NnFXK2N3S3A3VDlCTklVTk0ra0RoaysyYS9pUWtROFlhNXlTRGNrSDcwcFN0?= =?utf-8?B?U0crZGxVQVJmMWxRUG1zUThqdmo3eEs4bngzSndEMVpud3dPaUdaSmFzendt?= =?utf-8?B?Y3pmajgwZ2pyZ1djNnN2S0tRYVdtc0RIVnJrcERoZjluRW5kRW9xMGhBYTRJ?= =?utf-8?B?WE11VXhWOW44UTNBeW9MYU5zUmVVYXlYVW04TkxCeDJSUnpKVXdaejhFM0tu?= =?utf-8?B?Zk5ONDJyOFp1U0lBcWZQMzFGbnZLeEQxbzRLMHhWdmhxZFNIdGQ2aWlObkI0?= =?utf-8?B?bW4zOEszK0p1UlZHS3V4OGR5MkpqVDBZYkMxQmVTSXorcXRpZXF1Ym5qRXYv?= =?utf-8?B?NERDdllIVjJUMFJFRUcxZVZZazN1ZXFqWDJhSWZ6ekNSOXB6MmlDQXRWRHVm?= =?utf-8?B?aHQwZUV0bmFiTnVaQk5zTXFpTzVpbXNTVWllUkE2QVZSUVdVVWVROHFHUm1C?= =?utf-8?B?bHVPelc0T2xvZEZndCt2Vm5tVGxpbE9id2pieUlOWEZReUxmNnZhZjBDbEZp?= =?utf-8?B?d0lGeXZXQzUvZ2p3T0w3TXl6REhDSUd1RlJjMG02OVppem1SRVZYTW9ZbjFW?= =?utf-8?B?MEhKWnJTdDd2Y25Idkw5Ri92eWZNZHRuZ3VEY3krcVY5c3hCT2s0L1VVa0JB?= =?utf-8?B?MzJKcjRLcitVZHJWOGdIWFVhczE2TUh6WGZCWGdJOWxxc2NqUXk1ZUZuZk15?= =?utf-8?B?akFBczVZa2IwWWJGaUI5UTdyaUQ5cjJvTlVWaFFIV0RGaFkxczVqbUxiOXl2?= =?utf-8?B?MFI5Y3ZBa1VqaVlIeWJ5bCtzblQ2bVVmdnZkVm0rTXh2bzZ3UlFsaGZSZ05w?= =?utf-8?B?V0RqT3oyNzI1ays0ZUUvUTZQMHUrVGpDKzYwV1FPcEJFTXQxZitDVmx6WnlJ?= =?utf-8?B?SG1vb3ovV1RGQUg2Ty9rS1EyMjNlMlQxTDBEbGowNGpuMS9CTTJxZyt3eC9m?= =?utf-8?B?dTVqdXprbDVKYUxVclVnczJ5d1RpQVVZMnRQU2tnSndFcCt4aVk0UFB2aC9s?= =?utf-8?B?dHVuT2xCblNpc3ZubXZsbHhCb0hVNXVRZkZDdTdLUTZ2YnA4djBmT1JiYitP?= =?utf-8?B?bXJ2R0dic3Jxb1VxRUtLUHc5WEtwUkc5VlBTdGpPc2JFRG9Sc2I1Z3IwYjl6?= =?utf-8?B?SVdFWU1TajFJWkU3SEtLYVBFb3Z4SzdQTXJDY3h3QVNVU3VNS2ZjYnVybmh3?= =?utf-8?B?VTRqdUJvWUxEclVqVG1zemQ4ZFZpb3FnWHNYZ1BSMHVWUVpScnF3ZFVTMkhZ?= =?utf-8?B?MW1ZdVgwZ2Qxbnd2c3ROelQxbkljaHhhVnJWRzVEOUFkS1FRcWVFWTlzMlRL?= =?utf-8?B?TnhkQmROZW9NMld5RGpvNXFGVTRSZ3BBUDNTaVJTQ2JocmRlNFJQV0pJWU96?= =?utf-8?B?Vk8vMzRpbS92K1ZEdmI0QWVaS0xyVThiSHd3Vm51Z3AyeDdNMkhTLzVhaHdY?= =?utf-8?B?QXRtdjVhend5cVRDRFE4OHBWa3pva3RkR2Q0Q1QwenpPL01BTzJ4emtKZm40?= =?utf-8?B?Mm1ZUlliVW5QZHJSUUN1RzVpRWh3RDY2bGpxRENnbC8rN0pvTnpMRDA2Y2J3?= =?utf-8?B?NGk2Zkh4NzlJc2xsbzJ5cEErSERlcEM0MHRKcTFTMW00VkVzVTZpaTlJUldI?= =?utf-8?B?Ylo5aFdqdnVzN0JyaFZrbDU0bFZ6aFlQTkQzYXBHVHZkUjdUYklidkRoVXJ0?= =?utf-8?Q?bBBjJ01giarmDRNCvJAibBvBs?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 2b64d909-eb12-4d1d-dc05-08db6dac1a46 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Jun 2023 14:23:34.7025 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: j/qWw3hA8BXX0o2gTekBl35H3SdzbUg/RlwF+L+Tdx2IWFUv+osFaXV54XxU7xmyLTRJzMIXyUYqpYreLVYmzA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB8296 On 15.06.2023 16:04, Jason Andryuk wrote: > On Thu, Jun 15, 2023 at 9:21 AM Jan Beulich wrote: >> Yet then I find this approach a little odd anyway. I think the >> registration attempts would better be suppressed, thus also not >> resulting in (apparently) failed init-calls. Especially for the >> userspace governor this would then also mean / allow to avoid >> registering of the CPU notifier. > > So are you suggesting that each caller check cpufreq_governor_internal > and potentially skip calling cpufreq_register_governor()? e.g. the > start of cpufreq_gov_userspace_init() would gain: > > if (cpufreq_governor_internal) > return 0 > > ? Right. > I put the check in cpufreq_register_governor() since then it is > handled in a single place instead of being spread around. I understand this was the goal, but I'm still wondering why we would try registration we know will fail. Plus, as said and even if benign right now, I'm not happy to see initcall failures being introduced. > To leave the check in cpufreq_register_governor(), > cpufreq_gov_userspace_init() could be rearranged to call > cpufreq_register_governor() first and only call > register_cpu_notifier() on success? Might be an option, but would address only part of my concerns. > Or do you want the whole governor registration to be re-worked to be > more explicit? Remove initcalls and have governors registered > according to the cpufreq driver? No, I'm not after any extensive re-work. Jan From xen-devel-bounces@lists.xenproject.org Thu Jun 15 14:29:22 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 15 Jun 2023 14:29:22 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549633.858262 (Exim 4.92) (envelope-from ) id 1q9nyF-0008Bc-C3; Thu, 15 Jun 2023 14:29:07 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549633.858262; Thu, 15 Jun 2023 14:29:07 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9nyF-0008BV-8v; Thu, 15 Jun 2023 14:29:07 +0000 Received: by outflank-mailman (input) for mailman id 549633; Thu, 15 Jun 2023 14:29:06 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9nyE-0008BP-0J for xen-devel@lists.xenproject.org; Thu, 15 Jun 2023 14:29:06 +0000 Received: from EUR05-AM6-obe.outbound.protection.outlook.com (mail-am6eur05on2061d.outbound.protection.outlook.com [2a01:111:f400:7e1b::61d]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id f9ff3fd7-0b88-11ee-8611-37d641c3527e; Thu, 15 Jun 2023 16:29:03 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by AS8PR04MB7942.eurprd04.prod.outlook.com (2603:10a6:20b:2a9::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.37; Thu, 15 Jun 2023 14:29:01 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.039; Thu, 15 Jun 2023 14:29:01 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: f9ff3fd7-0b88-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=lqhpgNxHS+jwEBdK6PSxp1iGBj/brM/tgy6n/GWpdpulJ1v+hKVApxgbbs1OzDAk1UThoH88Xm07Bp6MzBBYmqUJuok/aGJxcNvO5dZcbWRuBC5zLQ71pA0iO1vNz4CPdNUPiq+jWiFH1cSbv0FZo6CQPDoHutSfqg8YzNZVd1b0SLLPVsT3ChT60AKAMjjYxFow0BbN+TiWQbfjysFoAZq6Gd+gMivzH3WD1WQDu1RvBh5kXhr8d3n5gwbeLSehq63VXqej6CSpq9qZmi2uUwnOx6rBxQqGU3UT0/TNVx6F22baczXONWzOn8EKwclKRw67b2VQ80g27g3L24Nb/w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=Mcpi16jFW5svy6wcXcRTb4Pq7ldv2xnKYnlaTHJbYrg=; b=DCE2l81wgo7yqAknsqJLlg10wYGK33HDFbvFQDxYeOPN3FN6RePOVhs/wboQsFS36pOTbLrrbOZkh54HOtXJSt9JFW1Itp4dszm7rEU1bE4IviNstbAJibVwlfHo5Y+An4Yo8IVbZuEr3iPJEtccsLcf/cmQ2jWReKnrMJJs3Fg3bu6SI89pRfSBOCLrN2+L0y11vkgv9ar4X3kfIDhcF4L0vEO9k5vJBA0xGX79Dn3mUztSTZnVt84AI8WoVRRByB2yiTthn6DaB+6xpEaZVDlXvPqP3vkg30se43XRzc2IpDFAdZ/evRtVr92w0N+jfE9xqkhuqEb/PpmbSqeurQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Mcpi16jFW5svy6wcXcRTb4Pq7ldv2xnKYnlaTHJbYrg=; b=Kn7R+U8GO8RGp+3Cvx1l7YhePk1nVIxkGbnoejf/wkjLlY5QiRl6Gd7YLrS3XKTUx4X1M7g8py0xeOm9ri4qXp/B49xhnAtJAY9cc3Sp8Ri2AuxpdKx9pe0TizDlO6rWcQ6IwFgu3pX+yC+Ov7BuHelSzAhatbbzRkvrtnmbZMjD53orwDYUtkCl3V2ZYCCR21evEI4/s3rfrMQlqD2mm6+qI3HDOHnKRxUsFAW8HCwS4/qFkQstbqAdQRVRjqD4aR6yLPiaTSJTjeHJCiU7FBBi975NgQc/rI7aBWlM83iWzd1lHh/nX5k6C4uuGLMcRZIogOP/pdDAPik0zg2NRQ== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <7d00571e-7f04-3cf1-dafe-05d811318e92@suse.com> Date: Thu, 15 Jun 2023 16:28:59 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v4 04/15] xen/sysctl: Nest cpufreq scaling options Content-Language: en-US To: Jason Andryuk Cc: Wei Liu , Anthony PERARD , Juergen Gross , Andrew Cooper , George Dunlap , Julien Grall , Stefano Stabellini , xen-devel@lists.xenproject.org References: <20230614180253.89958-1-jandryuk@gmail.com> <20230614180253.89958-5-jandryuk@gmail.com> <194760c8-31fe-d0f7-828f-b8a637884989@suse.com> From: Jan Beulich In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: FR2P281CA0172.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:9f::6) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|AS8PR04MB7942:EE_ X-MS-Office365-Filtering-Correlation-Id: 80dc4d2a-f08e-4f14-b296-08db6dacdcf2 X-LD-Processed: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: Vnl7kxHFnEKgIREUg58mjLgGEiII+iV3JctOUvvglLTfPLFOegkmRygzTtQ+HMARN0OWbWXfMEQd1ndLKC6u996o/rMk/ri+lzertb/W3Rr+EfMzb8IYFNyUhsRDDXPOV14qmo55MKDmMkuVlvEqKMiK9UhXuaWuHaWGcoMAKugw2lJOL3lE+ihZeYkNNBrpBA4yDr31zULAtlIscCdpf8mwozvN9UJfT1eyJjdI1ALbrUXf5qxTZgQUOKtFigKIeLvYFq7NvH6sMgGhZ6g3YEj5/Wc0Oiu/PEC7QXbHuGwGNLBkDCM0IRKSgFQYkrKvnByZMOSs5Dl0DBXoFCm5DzCZ2UhBjv2xiTPpA88r4FSqLCf5IZDO7oCp02JqPqDAl3ERjaX5Avd2PC51V/3njOGY9sRQiARxjtbyQzbU1zTZzFjzS8O0PG1lTC8GRHZEYcXJ09w+c0ePT6Fr+/nyMC6E3zMQQdEXXPbi07E+wYD2sm4+F7s2raArNByYppphRv+d02hJQGldCdx9G5UW8sq2CybDDMhtmTcztCgz27r0ZGDkwYVJDE5ysXDF5ypWr1sHLmBFnjfP8F4o+QSEjx7PywG2aA4AU68MNS7SqzIq9bT1f+be4GtrHf2sqM4QRe/NKu8kMmwgUmsuJGmB/Q== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(366004)(346002)(396003)(376002)(136003)(39860400002)(451199021)(83380400001)(31686004)(4326008)(5660300002)(54906003)(36756003)(316002)(53546011)(8676002)(8936002)(86362001)(66476007)(26005)(6512007)(6506007)(41300700001)(2906002)(31696002)(38100700002)(66556008)(6916009)(66946007)(2616005)(478600001)(186003)(6486002)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?RUc1ckhtZTFuVTU5MXBESGhOWDhlcUg1eEtXU2FORUtzdDZxNXU2TlFuRWRC?= =?utf-8?B?WG1qUmJZbmozMENsNWdoZWhhYW9tYVI1QkVBOExsOXZuUjFkeTQxdE9iL1Jp?= =?utf-8?B?TnM4a2FtZlVLTDNZUklhaHNDSnFLYm1wWk9qMk1iZDhNUGhTNkE3YS9zTHJH?= =?utf-8?B?dDlCQlZDZ1RjMXhJSm5ad2Y1ZXNTWllPYkJoRy81aWxCZS9LZmZtYXBKOWlH?= =?utf-8?B?SnV6NjZTOVhnazFiVEp3QndqNDR4WThBYUxianRYbUJHYkhXTXdBdEczVU1I?= =?utf-8?B?cnEwdjVrSDBGNmpXY0VMWGVEYmN5UWVUR3BrZkQ3ZVd0R1VEM21vTXNXMCti?= =?utf-8?B?T1hwdGozeEhwejg1dm5Zb3Y1MWp1L0hVbzRSNkxZMnNXYzdGVXo5OU9ORFZ1?= =?utf-8?B?NmYyZll0ZDdwWVRHbEsySGlNSVNxRUtmYmYwWWZRM25RMXZ2NC9sWVpzaG5C?= =?utf-8?B?d0N2S1VlelNNaENWTnFZa1JmVE5ZaVZadjQ5bnNGcGlJMWkyWmppR2lyVVNz?= =?utf-8?B?S3FkOTlBdFFOQTA3TXJWYlBFMTIrcVZWN2NZQ1JDMEJhdVIxQUNENUtVT1JC?= =?utf-8?B?dHRiNFF3eThrK3Rkd2xOUG9pRHdrT1F4bmlMUTA3SVpKMThES2FaNmVTcDlG?= =?utf-8?B?TkRZUHF6T3FGQm92S3BaR0NBVktJZ3pXSTBzS1BrZWJZanV6Ym1WaWR2NkdX?= =?utf-8?B?SUQ5QmpwN1pId2V4ZTFWSWZaeGt3WGZFUzI2VHJHQURxaEhvWUVrZzE3TjBY?= =?utf-8?B?eGVEVzB4MG04dzJtVmVrZVh4VlRsQzFLb2lkRWcxSURvMVF6S2ZzUUF5SHZ2?= =?utf-8?B?WG0rY01pbkJZTE1iK2xwRzZ2aVJmZkFNbThnSUM2K3BsbmIwS0RGd056NVFX?= =?utf-8?B?K2dXWWcyR0ZJTVlqakVBWGFBQnVOWXQ5dm5rcjlNNEpWWkhPeDV2RjBwaFp1?= =?utf-8?B?WTZndUhiODlQK0d3VFV5ZzNDVDgxNjd5ZmFldENFVFRDZG5uTXFMQ3o5L0hU?= =?utf-8?B?SGNJeE0yUUlLT2lObm9TSFpJRjNPREYwblZ1dUIxb2RINUZzRkw3c1dhT2dJ?= =?utf-8?B?c2I3RUozbEN1Z3UzY1JjWk0yVUg4T0pQNGpGenhmS0pPM1o1NTB1SnB5K010?= =?utf-8?B?cUdBY0JoMVdTSThxR0tTdnVVZ0tRM1E3eGVVNkdESmRtem9EZlo5Y2xvMVBn?= =?utf-8?B?S0lSWnNvczVhWEt5ZjMzTnBsNHhYVmcxV2NYRDhJNXlPWitoVndUc21WL2xk?= =?utf-8?B?NEFxaU9UY3RDS3lIdkd4anExZVJ3dGpSL0lIaXdRaWZUelZQaklKanEyMWhI?= =?utf-8?B?UVJ6R1ltdGJramgvUVppOWg2d052V1F3Tkc0Q1NjdHU4NU9OQXVSTlQ5UU9n?= =?utf-8?B?bkpXcFg3dGE2Tk1hTm1TSzNzQ3VDTEFad3ZJcmd6WHowdXIxYmY1VGx6dFhj?= =?utf-8?B?T0ZTcVlPZlNNRnFhYm1oZHcvdnlocE9OVGtZcW1XVTV5NGxObVJpbjZIT2pq?= =?utf-8?B?WSt2V0ZQbnljSDNPbTRyVGtURE51TDJLS1gyRElicFM5MEZ3QTFVYTE1Sms3?= =?utf-8?B?SUFCTUxFejQ5ajR1MEF4aVJmZUVVeTgxLzZKWllwdFRnUDZMZS84TXU2YzJ4?= =?utf-8?B?SjNJSGtnR3lCaGlYem1rK0EzOTNGUGNZenFCVUlWYVVKYi94L09JNG1NNm1K?= =?utf-8?B?MnRNcUhUUFZvYWI0VndsWjhTcFBsRWN5ZHRqTGRWYXFBNnZ4d0JqRjNDcXZK?= =?utf-8?B?dWJOeDVTSXQ1SnBha2dzUVRlZHV1L1VFc0lpSGFtVG8vVXdYOHpSS2d3NjFm?= =?utf-8?B?YmQzVlBWb3E1M0NLYU1aT2NpbVBLQnM5RW9wMi9Ga3Z1YWsxL2gybzgzMXcr?= =?utf-8?B?QlU0M1RDc3d5cnpxN2NRRTRSMmFSMVVrWXZ1NThpVGgzZUdyVEY0S2tMTlFC?= =?utf-8?B?ZUVGRFpqNmM2WmoyNEhTa2lwYUFiWlVHR242Q2txUitUZERrNHFaNXVBbzcx?= =?utf-8?B?OWVrdWMyaTNMYWk4Qkh4TU05a0ZNNUNOMjlzOEVFMXZMZDgwZ1M2WTF2UEkw?= =?utf-8?B?ekViUmVBWUJKNW9RNnByNWUzRnhpRzRuOVV1MmY0ZkdubG1wcU9FbmpoNTRl?= =?utf-8?Q?/Qc4OdgQBE72wnJx1/J6C7AHM?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 80dc4d2a-f08e-4f14-b296-08db6dacdcf2 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Jun 2023 14:29:01.5053 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: f+RsdJjgyncmbCkmvchVLAA95HfVkRirffMobtg9jGyej3uYvtwMi8SlVpiyL+rbJcocYDReLMvtFVWUwqlPTQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB7942 On 15.06.2023 16:07, Jason Andryuk wrote: > On Thu, Jun 15, 2023 at 9:29 AM Jan Beulich wrote: >> >> On 14.06.2023 20:02, Jason Andryuk wrote: >>> --- a/tools/include/xenctrl.h >>> +++ b/tools/include/xenctrl.h >>> @@ -1909,16 +1909,20 @@ struct xc_get_cpufreq_para { >>> uint32_t cpuinfo_cur_freq; >>> uint32_t cpuinfo_max_freq; >>> uint32_t cpuinfo_min_freq; >>> - uint32_t scaling_cur_freq; >>> - >>> - char scaling_governor[CPUFREQ_NAME_LEN]; >>> - uint32_t scaling_max_freq; >>> - uint32_t scaling_min_freq; >>> - >>> - /* for specific governor */ >>> union { >>> - xc_userspace_t userspace; >>> - xc_ondemand_t ondemand; >>> + struct { >>> + uint32_t scaling_cur_freq; >>> + >>> + char scaling_governor[CPUFREQ_NAME_LEN]; >>> + uint32_t scaling_max_freq; >>> + uint32_t scaling_min_freq; >>> + >>> + /* for specific governor */ >>> + union { >>> + xc_userspace_t userspace; >>> + xc_ondemand_t ondemand; >>> + } u; >>> + } s; >>> } u; >> >> There's no comment in the header that this needs to mirror the sysctl >> struct. Does it really need changing? > > Since this matched the other structure, I kept them in sync. The > cppc/hwp data needs to be represented somehow, and it gets introduced > in the same way for both later. If this doesn't get the new nested > struct, then maybe fields could be placed into the single union. That > would grow the overall struct and have unused fields for hwp. I guess I need to leave this to the maintainers then. Still ... >>> --- a/tools/libs/ctrl/xc_pm.c >>> +++ b/tools/libs/ctrl/xc_pm.c >>> @@ -265,15 +265,10 @@ int xc_get_cpufreq_para(xc_interface *xch, int cpuid, >>> user_para->cpuinfo_cur_freq = sys_para->cpuinfo_cur_freq; >>> user_para->cpuinfo_max_freq = sys_para->cpuinfo_max_freq; >>> user_para->cpuinfo_min_freq = sys_para->cpuinfo_min_freq; >>> - user_para->scaling_cur_freq = sys_para->scaling_cur_freq; >>> - user_para->scaling_max_freq = sys_para->scaling_max_freq; >>> - user_para->scaling_min_freq = sys_para->scaling_min_freq; >>> user_para->turbo_enabled = sys_para->turbo_enabled; >>> >>> memcpy(user_para->scaling_driver, >>> sys_para->scaling_driver, CPUFREQ_NAME_LEN); >>> - memcpy(user_para->scaling_governor, >>> - sys_para->scaling_governor, CPUFREQ_NAME_LEN); >> >> Did you really mean to remove the copying of these 4 entities, rather >> than simply change the way the fields are accessed? > > Yes, it was intentional. > > The immediate following lines are: > /* copy to user_para no matter what cpufreq governor */ > BUILD_BUG_ON(sizeof(((struct xc_get_cpufreq_para *)0)->u) != > sizeof(((struct xen_get_cpufreq_para *)0)->u)); > > memcpy(&user_para->u, &sys_para->u, sizeof(sys_para->u)); ... this suggests that some matching is intended, yet it's not clear to me why then the hole struct-s aren't assumed to be matching / made match. > And this memcpy copies all the moved entities. Right, I should have gone to the source instead of going just from patch context, sorry. > I suppose the comment could change to "...no matter which cpufreq driver". Yeah, well, it really would be driver/governor then, I guess. Jan From xen-devel-bounces@lists.xenproject.org Thu Jun 15 14:36:40 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 15 Jun 2023 14:36:40 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549638.858272 (Exim 4.92) (envelope-from ) id 1q9o5O-0001Ep-4X; Thu, 15 Jun 2023 14:36:30 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549638.858272; Thu, 15 Jun 2023 14:36:30 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9o5O-0001Ei-1X; Thu, 15 Jun 2023 14:36:30 +0000 Received: by outflank-mailman (input) for mailman id 549638; Thu, 15 Jun 2023 14:36:29 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9o5M-0001Ec-Vi for xen-devel@lists.xenproject.org; Thu, 15 Jun 2023 14:36:29 +0000 Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 027d3d52-0b8a-11ee-b232-6b7b168915f2; Thu, 15 Jun 2023 16:36:27 +0200 (CEST) Received: from delta.bugseng.com (unknown [151.35.56.171]) by support.bugseng.com (Postfix) with ESMTPSA id 8E98C4EE0738; Thu, 15 Jun 2023 16:36:24 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 027d3d52-0b8a-11ee-b232-6b7b168915f2 From: Roberto Bagnara To: xen-devel@lists.xenproject.org Cc: consulting@bugseng.com, Roberto Bagnara , Andrew Cooper , George Dunlap , Jan Beulich , Julien Grall , Stefano Stabellini , Wei Liu Subject: [XEN PATCH] docs/misra: document the C dialect and translation toolchain assumptions. Date: Thu, 15 Jun 2023 16:35:53 +0200 Message-Id: X-Mailer: git-send-email 2.34.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit This document specifies the C language dialect used by Xen and the assumptions Xen makes on the translation toolchain. Signed-off-by: Roberto Bagnara --- docs/misra/C-language-toolchain.rst | 465 ++++++++++++++++++++++++++++ 1 file changed, 465 insertions(+) create mode 100644 docs/misra/C-language-toolchain.rst diff --git a/docs/misra/C-language-toolchain.rst b/docs/misra/C-language-toolchain.rst new file mode 100644 index 0000000000..013cef071c --- /dev/null +++ b/docs/misra/C-language-toolchain.rst @@ -0,0 +1,465 @@ +============================================= +C Dialect and Translation Assumptions for Xen +============================================= + +This document specifies the C language dialect used by Xen and +the assumptions Xen makes on the translation toolchain. +It covers, in particular: + +1. the used language extensions; +2. the translation limits that the translation toolchains must be able + to accommodate; +3. the implementation-defined behaviors upon which Xen may depend. + +All points are of course relevant for portability. In addition, +programming in C is impossible without a detailed knowledge of the +implementation-defined behaviors. For this reason, it is recommended +that Xen developers have familiarity with this document and the +documentation referenced therein. + +This document needs maintenance and adaptation in the following +circumstances: + +- whenever the compiler is changed or updated; +- whenever the use of a certain language extension is added or removed; +- whenever code modifications cause exceeding the stated translation limits. + + +Applicable C Language Standard +______________________________ + +Xen is written in C99 with extensions. The relevant ISO standard is + + *ISO/IEC 9899:1999/Cor 3:2007*: Programming Languages - C, + Technical Corrigendum 3. + ISO/IEC, Geneva, Switzerland, 2007. + + +Reference Documentation +_______________________ + +The following documents are referred to in the sequel: + +GCC_MANUAL: + https://gcc.gnu.org/onlinedocs/gcc-12.1.0/gcc.pdf +CPP_MANUAL: + https://gcc.gnu.org/onlinedocs/gcc-12.1.0/cpp.pdf +ARM64_ABI_MANUAL: + https://github.com/ARM-software/abi-aa/blob/60a8eb8c55e999d74dac5e368fc9d7e36e38dda4/aapcs64/aapcs64.rst +X86_64_ABI_MANUAL: + https://gitlab.com/x86-psABIs/x86-64-ABI/-/jobs/artifacts/master/raw/x86-64-ABI/abi.pdf?job=build +ARM64_LIBC_MANUAL: + https://www.gnu.org/software/libc/manual/pdf/libc.pdf +X86_64_LIBC_MANUAL: + https://www.gnu.org/software/libc/manual/pdf/libc.pdf + + +C Language Extensions +_____________________ + + +The following table lists the extensions currently used in Xen. +The table columns are as follows: + + Extension + a terse description of the extension; + Architectures + a set of Xen architectures making use of the extension; + References + when available, references to the documentation explaining + the syntax and semantics of (each instance of) the extension. + + +.. list-table:: + :widths: 30 15 55 + :header-rows: 1 + + * - Extension + - Architectures + - References + + * - Non-standard tokens + - ARM64, X86_64 + - _Static_assert: + see Section "2.1 C Language" of GCC_MANUAL. + asm, __asm__: + see Sections "6.48 Alternate Keywords" and "6.47 How to Use Inline Assembly Language in C Code" of GCC_MANUAL. + __volatile__: + see Sections "6.48 Alternate Keywords" and "6.47.2.1 Volatile" of GCC_MANUAL. + __const__, __inline__, __inline: + see Section "6.48 Alternate Keywords" of GCC_MANUAL. + typeof, __typeof__: + see Section "6.7 Referring to a Type with typeof" of GCC_MANUAL. + __alignof__, __alignof: + see Sections "6.48 Alternate Keywords" and "6.44 Determining the Alignment of Functions, Types or Variables" of GCC_MANUAL. + __attribute__: + see Section "6.39 Attribute Syntax" of GCC_MANUAL. + __builtin_types_compatible_p: + see Section "6.59 Other Built-in Functions Provided by GCC" of GCC_MANUAL. + __builtin_va_arg: + non-documented GCC extension. + __builtin_offsetof: + see Section "6.53 Support for offsetof" of GCC_MANUAL. + __signed__: + non-documented GCC extension. + + * - Empty initialization list + - ARM64, X86_64 + - Non-documented GCC extension. + + * - Arithmetic operator on void type + - ARM64, X86_64 + - See Section "6.24 Arithmetic on void- and Function-Pointers" of GCC_MANUAL." + + * - GNU statement expression + - ARM64, X86_64 + - See Section "6.1 Statements and Declarations in Expressions" of GCC_MANUAL. + + * - Structure or union definition with no members + - ARM64, X86_64 + - See Section "6.19 Structures with No Members" of GCC_MANUAL. + + * - Zero size array type + - ARM64, X86_64 + - See Section "6.18 Arrays of Length Zero" of GCC_MANUAL. + + * - Binary conditional expression + - ARM64, X86_64 + - See Section "6.8 Conditionals with Omitted Operands" of GCC_MANUAL. + + * - 'Case' label with upper/lower values + - ARM64, X86_64 + - See Section "6.30 Case Ranges" of GCC_MANUAL. + + * - Unnamed field that is not a bit-field + - ARM64, X86_64 + - See Section "6.63 Unnamed Structure and Union Fields" of GCC_MANUAL. + + * - Empty declaration + - ARM64, X86_64 + - Non-documented GCC extension. + + * - Incomplete enum declaration + - ARM64 + - Non-documented GCC extension. + + * - Implicit conversion from a pointer to an incompatible pointer + - ARM64, X86_64 + - Non-documented GCC extension. + + * - Pointer to a function is converted to a pointer to an object or a pointer to an object is converted to a pointer to a function + - X86_64 + - Non-documented GCC extension. + + * - Ill-formed source detected by the parser + - ARM64, X86_64 + - token pasting of ',' and __VA_ARGS__ is a GNU extension: + see Section "6.21 Macros with a Variable Number of Arguments" of GCC_MANUAL. + must specify at least one argument for '...' parameter of variadic macro: + see Section "6.21 Macros with a Variable Number of Arguments" of GCC_MANUAL. + void function should not return void expression: + see the documentation for -Wreturn-type in Section "3.8 Options to Request or Suppress Warnings" of GCC_MANUAL. + use of GNU statement expression extension from macro expansion: + see Section "6.1 Statements and Declarations in Expressions" of GCC_MANUAL. + invalid application of sizeof to a void type: + see Section "6.24 Arithmetic on void- and Function-Pointers" of GCC_MANUAL. + redeclaration of already-defined enum is a GNU extension: + see Section "6.49 Incomplete enum Types" of GCC_MANUAL. + static function is used in an inline function with external linkage: + non-documented GCC extension. + struct may not be nested in a struct due to flexible array member: + see Section "6.18 Arrays of Length Zero" of GCC_MANUAL. + struct may not be used as an array element due to flexible array member: + see Section "6.18 Arrays of Length Zero" of GCC_MANUAL. + ISO C restricts enumerator values to the range of int: + non-documented GCC extension. + + * - Unspecified escape sequence is encountered in a character constant or a string literal token + - X86_64 + - \\m: + non-documented GCC extension. + + * - Non-standard type + - X86_64 + - See Section "6.9 128-bit Integers" of GCC_MANUAL. + + +Translation Limits +__________________ + +The following table lists the translation limits that a toolchain has +to satisfy in order to translate Xen. The numbers given are a +compromise: on the one hand, many modern compilers have very generous +limits (in several cases, the only limitation is the amount of +available memory); on the other hand we prefer setting limits that are +not too high, because compilers do not have any obligation of +diagnosing when a limit has been exceeded, and not too low, so as to +avoid frequently updating this document. In the table, only the +limits that go beyond the minima specified by the relevant C Standard +are listed. + +The table columns are as follows: + + Limit + a terse description of the translation limit; + Architectures + a set relevant of Xen architectures; + Threshold + a value that the Xen project does not wish to exceed for that limit + (this is typically below, often much below what the translation + toolchain supports); + References + when available, references to the documentation providing evidence + that the translation toolchain honors the threshold (and more). + +.. list-table:: + :widths: 30 15 10 45 + :header-rows: 1 + + * - Limit + - Architectures + - Threshold + - References + + * - Size of an object + - ARM64, X86_64 + - 8388608 + - The maximum size of an object is defined in the MAX_SIZE macro, and for a 32 bit architecture is 8MB. + The maximum size for an array is defined in the PTRDIFF_MAX and in a 32 bit architecture is 2^30-1. + See occurrences of these macros in GCC_MANUAL. + + * - Characters in one logical source line + - ARM64 + - 5000 + - See Section "11.2 Implementation limits" of CPP_MANUAL. + + * - Characters in one logical source line + - X86_64 + - 12000 + - See Section "11.2 Implementation limits" of CPP_MANUAL. + + * - Nesting levels for #include files + - ARM64 + - 24 + - See Section "11.2 Implementation limits" of CPP_MANUAL. + + * - Nesting levels for #include files + - X86_64 + - 32 + - See Section "11.2 Implementation limits" of CPP_MANUAL. + + * - case labels for a switch statement (excluding those for any nested switch statements) + - X86_64 + - 1500 + - See Section "4.12 Statements" of GCC_MANUAL. + + * - Number of significant initial characters in an external identifier + - ARM64, X86_64 + - 63 + - See Section "4.3 Identifiers" of GCC_MANUAL. + + +Implementation-Defined Behaviors +________________________________ + +The following table lists the C language implementation-defined behaviors +relevant for MISRA C:2012 Dir 1.1 upon which Xen may possibly depend. + +The table columns are as follows: + + I.-D.B. + a terse description of the implementation-defined behavior; + Architectures + a set relevant of Xen architectures; + Value(s) + for i.-d.b.'s with values, the values allowed; + References + when available, references to the documentation providing details + about how the i.-d.b. is resolved by the translation toolchain. + +.. list-table:: + :widths: 30 15 10 45 + :header-rows: 1 + + * - I.-D.B. + - Architectures + - Value(s) + - References + + * - Allowable bit-field types other than _Bool, signed int, and unsigned int + - ARM64, X86_64 + - All explicitly signed integer types, all unsigned integer types, + and enumerations. + - See Section "4.9 Structures, Unions, Enumerations, and Bit-Fields". + + * - #pragma preprocessing directive that is documented as causing translation failure or some other form of undefined behavior is encountered + - ARM64, X86_64 + - pack, GCC visibility + - #pragma pack: + see Section "6.62.11 Structure-Layout Pragmas" of GCC_MANUAL. + #pragma GCC visibility: + see Section "6.62.14 Visibility Pragmas" of GCC_MANUAL. + + * - The number of bits in a byte + - ARM64 + - 8 + - See Section "4.4 Characters" of GCC_MANUAL and Section "8.1 Data types" of ARM64_ABI_MANUAL. + + * - The number of bits in a byte + - X86_64 + - 8 + - See Section "4.4 Characters" of GCC_MANUAL and Section "3.1.2 Data Representation" of X86_64_ABI_MANUAL. + + * - Whether signed integer types are represented using sign and magnitude, two's complement, or one's complement, and whether the extraordinary value is a trap representation or an ordinary value + - ARM64, X86_64 + - Two's complement + - See Section "4.5 Integers" of GCC_MANUAL. + + * - Any extended integer types that exist in the implementation + - X86_64 + - __uint128_t + - See Section "6.9 128-bit Integers" of GCC_MANUAL. + + * - The number, order, and encoding of bytes in any object + - ARM64 + - + - See Section "4.15 Architecture" of GCC_MANUAL and Chapter 5 "Data types and alignment" of ARM64_ABI_MANUAL. + + * - The number, order, and encoding of bytes in any object + - X86_64 + - + - See Section "4.15 Architecture" of GCC_MANUAL and Section "3.1.2 Data Representation" of X86_64_ABI_MANUAL. + + * - Whether a bit-field can straddle a storage-unit boundary + - ARM64 + - + - See Section "4.9 Structures, Unions, Enumerations, and Bit-Fields of GCC_MANUAL and Section "8.1.8 Bit-fields" of ARM64_ABI_MANUAL. + + * - Whether a bit-field can straddle a storage-unit boundary + - X86_64 + - + - See Section "4.9 Structures, Unions, Enumerations, and Bit-Fields" of GCC_MANUAL and Section "3.1.2 Data Representation" of X86_64_ABI_MANUAL. + + * - The order of allocation of bit-fields within a unit + - ARM64 + - + - See Section "4.9 Structures, Unions, Enumerations, and Bit-Fields of GCC_MANUAL and Section "8.1.8 Bit-fields" of ARM64_ABI_MANUAL. + + * - The order of allocation of bit-fields within a unit + - X86_64 + - + - See Section "4.9 Structures, Unions, Enumerations, and Bit-Fields" of GCC_MANUAL and Section "3.1.2 Data Representation" of X86_64_ABI_MANUAL. + + * - What constitutes an access to an object that has volatile-qualified type + - ARM64, X86_64 + - + - See Section "4.10 Qualifiers" of GCC_MANUAL. + + * - The values or expressions assigned to the macros specified in the headers , , and + - ARM64 + - + - See Section "4.15 Architecture" of GCC_MANUAL and Chapter 5 "Data types and alignment" of ARM64_ABI_MANUAL. + + * - The values or expressions assigned to the macros specified in the headers , , and + - X86_64 + - + - See Section "4.15 Architecture" of GCC_MANUAL and Section "3.1.2 Data Representation" of X86_64_ABI_MANUAL. + + * - Character not in the basic source character set is encountered in a source file, except in an identifier, a character constant, a string literal, a header name, a comment, or a preprocessing token that is never converted to a token + - ARM64 + - UTF-8 + - See Section "1.1 Character sets" of CPP_MANUAL. + We assume the locale is not restricting any UTF-8 characters being part of the source character set. + + * - The value of a char object into which has been stored any character other than a member of the basic execution character set + - ARM64 + - + - See Section "4.4 Characters" of GCC_MANUAL and Section "8.1 Data types" of ARM64_ABI_MANUAL. + + * - The value of a char object into which has been stored any character other than a member of the basic execution character set + - X86_64 + - + - See Section "4.4 Characters" of GCC_MANUAL and Section "3.1.2 Data Representation" of X86_64_ABI_MANUAL. + + * - The value of an integer character constant containing more than one character or containing a character or escape sequence that does not map to a single-byte execution character + - ARM64 + - + - See Section "4.4 Characters" of GCC_MANUAL and Section "8.1 Data types" of ARM64_ABI_MANUAL. + + * - The value of an integer character constant containing more than one character or containing a character or escape sequence that does not map to a single-byte execution character + - X86_64 + - + - See Section "4.4 Characters" of GCC_MANUAL and Section "3.1.2 Data Representation" of X86_64_ABI_MANUAL. + + * - The mapping of members of the source character set + - ARM64, X86_64 + - + - See Section "4.4 Characters" of GCC_MANUAL and the documentation for -finput-charset=charset in the same manual. + + * - The members of the source and execution character sets, except as explicitly specified in the Standard + - ARM64, X86_64 + - UTF-8 + - See Section "4.4 Characters" of GCC_MANUAL + + * - The values of the members of the execution character set + - ARM64, X86_64 + - + - See Section "4.4 Characters" of GCC_MANUAL and the documentation for -fexec-charset=charset in the same manual. + + * - How a diagnostic is identified + - ARM64, X86_64 + - + - See Section "4.1 Translation" of GCC_MANUAL. + + * - The termination status returned to the host environment by the abort, exit, or _Exit function + - ARM64 + - + - See "Section 25.7 Program Termination" of ARM64_LIBC_MANUAL. + + * - The termination status returned to the host environment by the abort, exit, or _Exit function + - X86_64 + - + - See "Section 25.7 Program Termination" of X86_64_LIBC_MANUAL. + + * - The places that are searched for an included < > delimited header, and how the places are specified or the header is identified + - ARM64, X86_64 + - + - See Chapter "2 Header Files" of CPP_MANUAL. + + * - How the named source file is searched for in an included " " delimited header + - ARM64, X86_64 + - + - See Chapter "2 Header Files" of CPP_MANUAL. + + * - How sequences in both forms of header names are mapped to headers or external source file names + - ARM64, X86_64 + - + - See Chapter "2 Header Files" of CPP_MANUAL. + + * - Whether the # operator inserts a \ character before the \ character that begins a universal character name in a character constant or string literal + - ARM64, X86_64 + - + - See Section "3.4 Stringizing" of CPP_MANUAL. + + * - The current locale used to convert a wide string literal into corresponding wide character codes + - ARM64, X86_64 + - + - See Section "4.4 Characters" of GCC_MANUAL and Section "11.1 Implementation-defined behavior" of CPP_MANUAL. + + * - The value of a string literal containing a multibyte character or escape sequence not represented in the execution character set + - X86_64 + - + - See Section "4.4 Characters" of GCC_MANUAL and Section "11.1 Implementation-defined behavior" of CPP_MANUAL. + + * - The behavior on each recognized #pragma directive + - ARM64, X86_64 + - pack, GCC visibility + - See Section "4.13 Preprocessing Directives" of GCC_MANUAL and Section "7 Pragmas" of CPP_MANUAL. + + * - The method by which preprocessing tokens (possibly resulting from macro expansion) in a #include directive are combined into a header name + - X86_64 + - + - See Section "4.13 Preprocessing Directives" of GCC_MANUAL and Section "11.1 Implementation-defined behavior" of CPP_MANUAL. + + +END OF DOCUMENT. -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 15 14:38:55 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 15 Jun 2023 14:38:55 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549647.858282 (Exim 4.92) (envelope-from ) id 1q9o7d-0001r3-Lz; Thu, 15 Jun 2023 14:38:49 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549647.858282; Thu, 15 Jun 2023 14:38:49 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9o7d-0001qw-JH; Thu, 15 Jun 2023 14:38:49 +0000 Received: by outflank-mailman (input) for mailman id 549647; Thu, 15 Jun 2023 14:38:49 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9o7d-0001qq-1I for xen-devel@lists.xenproject.org; Thu, 15 Jun 2023 14:38:49 +0000 Received: from EUR04-DB3-obe.outbound.protection.outlook.com (mail-db3eur04on062e.outbound.protection.outlook.com [2a01:111:f400:fe0c::62e]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 5639f9d7-0b8a-11ee-b232-6b7b168915f2; Thu, 15 Jun 2023 16:38:47 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by AS8PR04MB7991.eurprd04.prod.outlook.com (2603:10a6:20b:289::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.37; Thu, 15 Jun 2023 14:38:45 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.039; Thu, 15 Jun 2023 14:38:44 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 5639f9d7-0b8a-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=mJIhXUpL3Z4kYdVxniWVs7XHi9kpUiY8aWiTMwkuuchhZTUGTT+Egs8vtPK9x0wOGPIP3ibgLNlQgarGXBbHkQ611/aCSiUocNDvMB1O+jkfsszjMm0euLVCdv//sBQZEYur8znbyZQ+uS3mfr40pm0JaozGg0V2es7SzvKgMRTwJpesXnSAg8hIfCXudEGMf4LQVnBSCsqJWdFWxFNuIcOaHhCoivzeeqzaqrE+tHGhR7t1JRH5HVxwIEcK62XEItt4gTMC5QvH2Rus4Ys/k8wHavt7rQxyM0toODmLYZFiGsllUT/4o+ohUVB+GLr6xxJ9EPUo44FReCGM/hfELA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=DMQcq16yR4R4HnA7uEqbnUpjDmdxy1iUNDdOMtJYSwM=; b=WC/6gKS/WQnoPEfXxrF5r+5+8MLBbv/7tmA09ugARVRvnYnGk9XTrW1AY+/3kl0HwSdVHrbQQ3wwXNtXlzvzt88eyzMeldPAugokMiJAjA2KBzkL7jdR0PYsQLVaL4wSnZTWU7KLAqoMTNfXUFbUg+UirrleoGNg6QMD9wUqgPBNqBRiACXY8gTWSgv4BhHslUTJDHrs5Nbj69D0OL0OOD+mHmylK5ja5TnJefW6OZ5RG1zPVDwMYMlSRDov6GZMdHS1U6UQXykhTm7U/M4mXq0EaZ5P9Ym95FTGxoAr7cbLxQdzAL58Pymwtq9B+uVDaIRIgFM9h2AxWRadZEfVZQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=DMQcq16yR4R4HnA7uEqbnUpjDmdxy1iUNDdOMtJYSwM=; b=jLdTzHm5j7fzwvcbojxk68MqdT83oq1jLJWcnPEGAiNu41QofuRMKuZCqnL4maRlEDLT9v7wCu2nkMs0ZTxfA324vkahlDCaQXuNZj8j6b+0cgPjNo9ZNxK2PnSxn3f7EbrG8h+u9yypXb/f8t3fqvus0rdaHMCgk9ifJM6IJlIBjrf6PP4fYIDq2qJVdW6gnrR/huhM9AvNijRKGRbavjT0CB5WocZmq1uDOknPimApILYQ8eJT5AWVn+mxH762iK9NmriqIk4xQr3eAFKYTmiH8Jw38rNcSOiQeu6Ko8fR1GnF0+Sqw31mk8X9GdAntvFjAW6UYEWlypiOMhRB1Q== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <4ee7b593-6e87-25f3-83f8-6309c1cddbfc@suse.com> Date: Thu, 15 Jun 2023 16:38:42 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v4 05/15] pmstat&xenpm: Re-arrage for cpufreq union Content-Language: en-US To: Jason Andryuk Cc: Wei Liu , Anthony PERARD , Juergen Gross , xen-devel@lists.xenproject.org References: <20230614180253.89958-1-jandryuk@gmail.com> <20230614180253.89958-6-jandryuk@gmail.com> From: Jan Beulich In-Reply-To: <20230614180253.89958-6-jandryuk@gmail.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR3P281CA0166.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:a0::9) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|AS8PR04MB7991:EE_ X-MS-Office365-Filtering-Correlation-Id: 4cebf405-572a-4e46-9059-08db6dae389b X-LD-Processed: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: GP57PTr+oBkr6sQo0Bu35UvPFDISz9GcAyRrOm3gIE5CPHZnoy6SSlwCvF+lyWXaR7+Y9RwXuxjqr+ZtRLXOcbb+Wh2cRcPmwG4nfpNm4bEibIQNmQwgQSzN6lZCTB+BqEJq1nnw5hC/HIw8NGhID8Qt3dUsnqss8FcSSpD4Icv/CzqneE2S1n0r85vaP4HD8kMCk/qS9fxrMcySId+vgE+regK8HfCC2z6Bw672R6NehCpZqe6UlJIlW+nUTwG/NKf6mHtjC3AX6ba1u7thAmtLWdIUWkYnJ2CmNaXf8BmYGQVFGrgJ2tYomElaIL5i1S6TRjegQFJ2dU9TFabLqRoyIA/0bczkJIRFWoKaTGqD3ZsPDYhKXzL4FtGO2I07nJnjPJPQN1EXjWf3lk4K9IHqBseWopstsYDs2D8Rvoa6o0bSxxu9xj79kQ2RtYLEqLh9AJ48ycGc331PJsMrL4/a6GYIJgLKa31emNR+8zbi/OJm0prZYuY4mD6MnsSDB1nHWd7wVxnfqWoN5/+lDpN4a/PN3UpVIk0OadvwHTdy3yDD+LUGxJRDFvjlo4Y2+4c9/ySSEkv5GozsuCOfozdIW8v5ySfZ8hQxIcrdls8kraeB8lnAemCwk7OBwjz9m3d5e1XKdtrlw4PyGyro6g== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(366004)(346002)(396003)(376002)(136003)(39860400002)(451199021)(83380400001)(31686004)(4326008)(5660300002)(54906003)(36756003)(316002)(53546011)(8676002)(8936002)(86362001)(66476007)(26005)(6512007)(6506007)(41300700001)(2906002)(31696002)(38100700002)(66556008)(6916009)(66946007)(2616005)(478600001)(186003)(6486002)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?SC90b0NtTldneFJaUXpkY3lzMTMrR2xhOENObUFmNm4xRGxwMG9pSjJIdHky?= =?utf-8?B?ZVJvQU1OVVVsbzg2V3lOZ2swaEVKSTZmazY2RTdWWlRmWDBuTnYyLzN0dXZ0?= =?utf-8?B?ckFNWkdNdVozUnhhZEJoUW5RcjhUZnVsMXJLekNoZitWY25xTU55a3FTVkV6?= =?utf-8?B?WGdIUXZnSHgwSGFyNkNEclk4L2J4Y3hPeDJsYXBaMFUrbzFYTnV4OUFDUkty?= =?utf-8?B?YTIxakoyNzVTNlZqMUNkV1QwQWJZbHNiRGxQcW9KQVJQTXRoWnJyZzgwZjAx?= =?utf-8?B?ZmFFTGpsTTZweTJhZjY4QXJlVUs1bDhDekx2dGo0QWtFMlcvOThZMjdBbUl6?= =?utf-8?B?U1NZcDVtdmlKanhMYk04dmsvbFdTeElSRCsxdXcyT2pZVmJFdG15REM5MWJB?= =?utf-8?B?YmczMEFiZnVBNStzU2JCbkRvWk9Oc0Rwc2ZxWi96Q2kwTkpmWldWRFpJN1Fq?= =?utf-8?B?eVVrdy9PdWRQcW1ZNlpVcFZhTDlMK2FDUjVQRTZyOUhaYnFUbmc4ZzhDNU12?= =?utf-8?B?ekk2OWFjOFNjaXhOeEl6R3oxWmVLZUhUeXZkOGVTZ1ZoNisvbkw2ZmZzRWpK?= =?utf-8?B?eEpvNmtLYUxYSWRmVGJtQ3ZaOURENGNyUG9RNGdPR2lKWWZ5cFVlVFhzRm5w?= =?utf-8?B?N05kbDQzQ29IL3JyK21uRWx1MzIzVkI2bFNVZ0NZbnNrTnlGNEdCR09wM3R5?= =?utf-8?B?ZXIxSStBRkNoTnN0b1JXUGF3QWY4NWJoZUlnTWpZRnRaNFIrb3djUmlaRkU5?= =?utf-8?B?Mm56ektkc2dnQzRSUTljN1lET1BsaW9xdjhqOERsS2NXaWNyMlpHRmJTOXZO?= =?utf-8?B?NEYrUTFuc1AxVDkxdnBSeVkrbHRIZEg0Qmw5VUl1Vng0NlhyMzlxazlHTnc2?= =?utf-8?B?WkxQRVMyakNzMHM1Q0Y2Qys4K0RkdVF6bEYyWDVpa094UHJhc2xraVZLOVpY?= =?utf-8?B?OWd5RnQwaUl1NjZiSkMyMU9KUXptV2hZVEhYZHJCN0EyN3pQV2lLeEIvKytZ?= =?utf-8?B?dTdUc2tOMEJ4V1pPaUFjMTZ1L1YxQ05sYlNzTGNOMlpWYkcvWk9WVHFFRzNo?= =?utf-8?B?dG9sM0FySFFhZk9DcHZxSnI2dW9ZcjFFNXJWVHQ2TmkzNWFhRHkxSUg5dUJo?= =?utf-8?B?TkNaN0x1SFFWaVN0YUhmMVo1S05xWXF5N3JoM3BqTnl4R2taa2E0dU52TnhD?= =?utf-8?B?cWNjVEo1Uml4YjgzL3gwUC94czgzUDdGYWFydnZUYVNIWERONUFoa0Q3ZzJZ?= =?utf-8?B?Zk5pRXdJV1BGL2tQWko0RFdZT1pMNkNsVkpaSTlIYS82TVNybjR0S2lCdHhM?= =?utf-8?B?TXNnaFh4clh1T1ZNN1JqSVc2VGpHQUF4dzBZM0ZDRmltN05jZ3FpYmJyQlhM?= =?utf-8?B?b01BeVdIZ0FYYzQ2WUJ1dU9KczNLOGYvUS9RNHhTejFndzJVMHJXVUhoQi80?= =?utf-8?B?QXpUeDY2a3lOcE1aK2Ztell0RlN2TUxSSG92c1RVQW9tV05tQVdjYXNMK1pI?= =?utf-8?B?N21wZHgxUkQxYXR2VEZNaWlFUjQySnFHbE5BUDNFd3YzUnNQMzUvYWV0a0Jw?= =?utf-8?B?bzAyUmdVbG15aVYrSXJmSkVGMTRGbGJ1eUJMMjVnMnlhS0ZBSW9taDhsYldS?= =?utf-8?B?MnZZYnN0M1RMQ2F4aW9FNXRhNXkrUnVGenYvbmxpY09FY0JkNUF6OFFHb3Ix?= =?utf-8?B?MDl2dUVlRWFGMndHVnlycnJPS0IxcDlBUCs4Y25PMlZIWHBHSk1SZEZTOGxn?= =?utf-8?B?YWlBdVBCbzBjbVM3eXoxd3dUTWttZVZNaTAvVW12djZEZVUwQUU2TSs1bEo3?= =?utf-8?B?NThMbnM0L0ZLUko2NDF6a0R2S202a0pkeGREc0djckZDV29TV1hCM2NWaTFl?= =?utf-8?B?SjV1YVpUeDl5UGpGZ0ljbU5GYUVxcG5HNkFqSi9LUjR2U2lLcnFaOXVBaHNP?= =?utf-8?B?bkwwSjFpd0dYdGhCTW5XQ29WMzBzTDlMYVJXOXh0QUhNanVTT1pVSDRCaGtZ?= =?utf-8?B?MDVsb3I1OGhtc2JhWEFQSWUyMTdCRE82Y0Z5M21PNUthMGNiNWxLa1I5SC9Y?= =?utf-8?B?dFpRL2NZdE5adkZWTmJHQWJvK0tPcGFZR3lSckVtUTZ2MnI0aGNhVXMzVG5y?= =?utf-8?Q?XScN3K4sD28/Z2xkRGevT3aVe?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 4cebf405-572a-4e46-9059-08db6dae389b X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Jun 2023 14:38:44.6498 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 42sPgn0ERCYyiSiiayYAqQUILeqR5QbqxJd039cJmoKtXlhNrgSphfxoZZSC9vrj+6tZP64lVUHH8YXgzdSHkg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB7991 On 14.06.2023 20:02, Jason Andryuk wrote: > Move some code around now that common xen_sysctl_pm_op get_para fields > are together. In particular, the scaling governor information like > scaling_available_governors is inside the union, so it is not always > available. > > With that, gov_num may be 0, so bounce buffer handling needs > to be modified. > > scaling_governor won't be filled for hwp, so this will simplify the > change when it is introduced. While I think this suitably describes the tool stack side changes, ... > --- a/xen/drivers/acpi/pmstat.c > +++ b/xen/drivers/acpi/pmstat.c > @@ -239,11 +239,24 @@ static int get_cpufreq_para(struct xen_sysctl_pm_op *op) > if ( ret ) > return ret; > > + op->u.get_para.cpuinfo_cur_freq = > + cpufreq_driver.get ? cpufreq_driver.get(op->cpuid) : policy->cur; > + op->u.get_para.cpuinfo_max_freq = policy->cpuinfo.max_freq; > + op->u.get_para.cpuinfo_min_freq = policy->cpuinfo.min_freq; > + op->u.get_para.turbo_enabled = cpufreq_get_turbo_status(op->cpuid); > + > + if ( cpufreq_driver.name[0] ) > + strlcpy(op->u.get_para.scaling_driver, > + cpufreq_driver.name, CPUFREQ_NAME_LEN); > + else > + strlcpy(op->u.get_para.scaling_driver, "Unknown", CPUFREQ_NAME_LEN); > + > if ( !(scaling_available_governors = > xzalloc_array(char, gov_num * CPUFREQ_NAME_LEN)) ) > return -ENOMEM; > - if ( (ret = read_scaling_available_governors(scaling_available_governors, > - gov_num * CPUFREQ_NAME_LEN * sizeof(char))) ) > + if ( (ret = read_scaling_available_governors( > + scaling_available_governors, > + gov_num * CPUFREQ_NAME_LEN * sizeof(char))) ) > { > xfree(scaling_available_governors); > return ret; > @@ -254,26 +267,16 @@ static int get_cpufreq_para(struct xen_sysctl_pm_op *op) > if ( ret ) > return ret; > > - op->u.get_para.cpuinfo_cur_freq = > - cpufreq_driver.get ? cpufreq_driver.get(op->cpuid) : policy->cur; > - op->u.get_para.cpuinfo_max_freq = policy->cpuinfo.max_freq; > - op->u.get_para.cpuinfo_min_freq = policy->cpuinfo.min_freq; > - > op->u.get_para.u.s.scaling_cur_freq = policy->cur; > op->u.get_para.u.s.scaling_max_freq = policy->max; > op->u.get_para.u.s.scaling_min_freq = policy->min; > > - if ( cpufreq_driver.name[0] ) > - strlcpy(op->u.get_para.scaling_driver, > - cpufreq_driver.name, CPUFREQ_NAME_LEN); > - else > - strlcpy(op->u.get_para.scaling_driver, "Unknown", CPUFREQ_NAME_LEN); > - > if ( policy->governor->name[0] ) > strlcpy(op->u.get_para.u.s.scaling_governor, > policy->governor->name, CPUFREQ_NAME_LEN); > else > - strlcpy(op->u.get_para.u.s.scaling_governor, "Unknown", CPUFREQ_NAME_LEN); > + strlcpy(op->u.get_para.u.s.scaling_governor, "Unknown", > + CPUFREQ_NAME_LEN); > > /* governor specific para */ > if ( !strncasecmp(op->u.get_para.u.s.scaling_governor, > @@ -291,7 +294,6 @@ static int get_cpufreq_para(struct xen_sysctl_pm_op *op) > &op->u.get_para.u.s.u.ondemand.sampling_rate, > &op->u.get_para.u.s.u.ondemand.up_threshold); > } > - op->u.get_para.turbo_enabled = cpufreq_get_turbo_status(op->cpuid); > > return ret; > } ... all I see on the hypervisor side is re-ordering of steps and re-formatting of over-long lines. It's not clear to me why what you do is necessary for your purpose. Jan From xen-devel-bounces@lists.xenproject.org Thu Jun 15 14:50:32 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 15 Jun 2023 14:50:32 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549655.858297 (Exim 4.92) (envelope-from ) id 1q9oIh-0004GV-QA; Thu, 15 Jun 2023 14:50:15 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549655.858297; Thu, 15 Jun 2023 14:50:15 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9oIh-0004GO-NE; Thu, 15 Jun 2023 14:50:15 +0000 Received: by outflank-mailman (input) for mailman id 549655; Thu, 15 Jun 2023 14:50:14 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9oIg-0004GI-Cw for xen-devel@lists.xenproject.org; Thu, 15 Jun 2023 14:50:14 +0000 Received: from NAM10-BN7-obe.outbound.protection.outlook.com (mail-bn7nam10on2061d.outbound.protection.outlook.com [2a01:111:f400:7e8a::61d]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id ee8e0ea6-0b8b-11ee-b232-6b7b168915f2; Thu, 15 Jun 2023 16:50:12 +0200 (CEST) Received: from MW4P220CA0016.NAMP220.PROD.OUTLOOK.COM (2603:10b6:303:115::21) by DS7PR12MB5936.namprd12.prod.outlook.com (2603:10b6:8:7f::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.37; Thu, 15 Jun 2023 14:50:08 +0000 Received: from CO1NAM11FT063.eop-nam11.prod.protection.outlook.com (2603:10b6:303:115:cafe::ea) by MW4P220CA0016.outlook.office365.com (2603:10b6:303:115::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.27 via Frontend Transport; Thu, 15 Jun 2023 14:50:08 +0000 Received: from SATLEXMB03.amd.com (165.204.84.17) by CO1NAM11FT063.mail.protection.outlook.com (10.13.175.37) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6500.23 via Frontend Transport; Thu, 15 Jun 2023 14:50:07 +0000 Received: from SATLEXMB04.amd.com (10.181.40.145) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Thu, 15 Jun 2023 09:50:06 -0500 Received: from [10.71.193.39] (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server id 15.1.2507.23 via Frontend Transport; Thu, 15 Jun 2023 09:50:05 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: ee8e0ea6-0b8b-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=GuzXXBjtzys7TlIGEnPOHqaZ3ELpPH9pl+9X+WUFxNa5a2BMVVRwZodEtMs3j9A7Otww4d3QrI9uefZJaNSLliqjdqLSPkgTMKF26Xl01Y/cQRwwGN++GiCOZCcTpsa1BbePFYoeT8RpqJlQWP+xW0Wz+OT78maX1FsRYn1Rx47LsD9jdcQnf9e3nyjg2B/VLd1thEG2bv8dUDuHZ/HGbsk9WJt1TSFC3JAVnsxZaddlmfsjTzO6crjioGrpVaZQVubUxiUqw1ziqfHHi11BQOlONqAAgTXgdKxjamePQqS+6wdHvR3As3PCkupCuOGoXOtRqIWx3kBh92w+t1mzcQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=/PSe3wL1FlX4SRiiVy+oQUs2Fn1Y5kSvri+Me8B2+8s=; b=UG/YoctD2buf/z0sHIiCR/dHKXBtQQwewZ97v8kZ9Ecvasp4MgJfAhig+TKPXT1DdyMcjNCFORGs78jgXQZEfRnNVma8AYFyozyXhWOD8AA0soAlvSpOxfnKmUM9+EgY28/dp2oPqfIrTpFOk9Zxf94I2aR8L+ByLTlTo6D67b+rC0Q2uI8uXuPFKK1R+76E12qf+ex3S7HtUSn0wauudmhJ3dF6YwAuiidXnmpDH6xvcyNOiqbvPLG2j2oNnwATF9ts/hXvJ0WWrcCXYfYQvM0pLwZk6tcP23tD1YT+AqOVbZJ4HrAQn42E3GNrXmVQr61VzwndvuRjqX0lo4BaSw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=bugseng.com smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=/PSe3wL1FlX4SRiiVy+oQUs2Fn1Y5kSvri+Me8B2+8s=; b=iOhI48lDi62nynRnEq5jEtzx3wvSrgCEtrJf0gLQ/mbyu1PkS65ovAgnCHewBz5d8swVFyzcSOoHAJUE5xw8t4uin8gU9Aon+6Hb56LIk7gN3gTQPVxPhW5BJcrXaBj8k8hSCLxk3DPC0h5G3sp9u0rHfUD3CBIhYwqKPCOPhTo= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C Message-ID: <7a3becdb-6002-47ce-96f0-844fff23ee7b@amd.com> Date: Thu, 15 Jun 2023 16:49:59 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [XEN PATCH] xen/arch/arm/traps: remove inlining of handle_ro_raz() Content-Language: en-US To: Federico Serafini , CC: , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk References: <98c6fb7ace8fce22bc263fe1d7fffac4e8130b57.1686835890.git.federico.serafini@bugseng.com> From: Michal Orzel In-Reply-To: <98c6fb7ace8fce22bc263fe1d7fffac4e8130b57.1686835890.git.federico.serafini@bugseng.com> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO1NAM11FT063:EE_|DS7PR12MB5936:EE_ X-MS-Office365-Filtering-Correlation-Id: b337cc9b-78c1-4487-a04d-08db6dafcfe7 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: kDBXo5qr7JHldktS+xkF3fFDzeGbSnarKnZtDFEyiufnvcBcCPwZTV1aSf4Q5lZzVi0AxzdnNoz22MBtBMUcnRfO2fGlL4UjeXRlsZc7JoOUb5O1SZs2vRETu0WGU7MwlzCNMDznxFs1zqJ6fGFhqhFtgctNzLh4WxBItbU1sjlwPmQglNK9WCJGP1gvUAN7TTZBbavQX1I/p+k9YWrpzL3LYq/HGQA6gtGL0CyaWHAvvVD6NsHDj08qJZdMOmHydF+ze+CMb2Dydce9WiVusfHd7+VeyS3Fvz+GGS2su1ObqDvIBW8Ai1gnoN65r44BF2efjwYnWFFT9NTeV3OOMV1zHSVn5UzdUtRAByZ3PC3oqUeGQ3wS6ryp5PBNogVTHSGyzk+bcy8cfcQfJsicfDNHic5mtJS/PrpBr8litwK6CqSAALiDgCogWC2PTlwVjAx5T+6Mj5CjF/WCRRV4fw3VyAaPlNggFCbBZUgy9g8i4iyQbKj8fTzriQ3fSI7vY0pmKMMamES17msD6v2bTM00WGr+eL2nQCAbE4QA6sBPT5oDOWdWOyxWXvsTD5++YuX4JgbdgZdV12hWzwbvfXtRm92A5Y6jsAYhvdZbzmh5cPMVZUrFdVMQVMkil5ZLD7qgF2qimnacwAth7JETvtUcGWar4MfvRO7nfqi1CGF50fXgU0pOlmHK6JZZ5qDd5sQYUW3UJUSfKYssh0OeZyWlLXxvZdbxOzuxre0zZCE4ID+4ieOrl26IFziXaCh7P/mzlfC3fvNBWU6b2RPFvMKWfVw2nlyDy8r6cf2EpDLeRUwfWNJPmfkvRc6ThEaA X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(376002)(396003)(136003)(346002)(39860400002)(451199021)(46966006)(36840700001)(40470700004)(40460700003)(478600001)(2906002)(36756003)(110136005)(4744005)(82740400003)(54906003)(16576012)(8936002)(6666004)(8676002)(5660300002)(4326008)(70586007)(70206006)(44832011)(316002)(41300700001)(40480700001)(356005)(81166007)(31696002)(53546011)(26005)(86362001)(186003)(47076005)(426003)(336012)(36860700001)(2616005)(31686004)(82310400005)(43740500002)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Jun 2023 14:50:07.6262 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: b337cc9b-78c1-4487-a04d-08db6dafcfe7 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com] X-MS-Exchange-CrossTenant-AuthSource: CO1NAM11FT063.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR12MB5936 Hi Federico, NIT: for Arm, we use "xen/arm: " as a component name in a commit title or if you want to also specify the sub component, then "xen/arm: : " e.g. "xen/arm: traps: " On 15/06/2023 15:50, Federico Serafini wrote: > > > To comply with MISRA C:2012 Rule 8.10 ("An inline function shall be > declared with the static storage class"), remove inline function > specifier from handle_ro_raz() since asking the compiler to inline > such function does not seem to add any kind of value. > > Signed-off-by: Federico Serafini Reviewed-by: Michal Orzel ~Michal From xen-devel-bounces@lists.xenproject.org Thu Jun 15 14:55:18 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 15 Jun 2023 14:55:18 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549660.858307 (Exim 4.92) (envelope-from ) id 1q9oNU-0004sn-BV; Thu, 15 Jun 2023 14:55:12 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549660.858307; Thu, 15 Jun 2023 14:55:12 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9oNU-0004sg-8v; Thu, 15 Jun 2023 14:55:12 +0000 Received: by outflank-mailman (input) for mailman id 549660; Thu, 15 Jun 2023 14:55:11 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9oNT-0004sY-Df for xen-devel@lists.xenproject.org; Thu, 15 Jun 2023 14:55:11 +0000 Received: from EUR04-HE1-obe.outbound.protection.outlook.com (mail-he1eur04on2042.outbound.protection.outlook.com [40.107.7.42]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 9f4addf2-0b8c-11ee-8611-37d641c3527e; Thu, 15 Jun 2023 16:55:09 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by DB9PR04MB9259.eurprd04.prod.outlook.com (2603:10a6:10:371::5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.28; Thu, 15 Jun 2023 14:54:40 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.039; Thu, 15 Jun 2023 14:54:40 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 9f4addf2-0b8c-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=XjSfcjrSpxHlX7SdcEKfSlAGLyXQC0f96ZiYqKVFDnFdit3UeM2hJyccjkCsDYlpdHkO9piG3WZS/fvHmq+T2Bm0EV4gPtZS0fL+u9SoSdmkiLt70m7Akw+19JPR/wPiNzcm5hCYfq1e2Lbut4K43XsrS5jaf9AJsK+Eu9AWxNFTJ1skKqX4TrOckzFYPqZNWu0qcrxnjPrFySxCFyJ8B8DTkRuD2mNfwGRJZCEhgTd+DpVxG8V8p0uo2sNthYkE/yaqcV341uo7UT3Jm2ISf9DX+uGVNmeGw8AQ/Fp9XlcnLFlu5Xmbq0aoIA0nJlFbUqCyUd1Cx4emEqH9ARtYVQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=Csk19f7zKgjYkgkNipWNOArhMZJoVpmcCMF/R/YGjqw=; b=X3Ska4ax/zUVBYDpdaZccTagwkTgWx0JShwNS2Uoct395u0rT5EgieSf8ujHH97eB+j6xk3wE7aMXS2igMrIG9XCoXgfLPnaBSUjGw4pSozmOeQ0h6L2G5fIktKetOLuRFElMmLeuJn4e7CFiuXU4vrcP5URgZsYs0+yTReS6NxFwQA4p+M9ExY7E5SyDd2S1/Urn/tQhES8xceKn5D/JCitmjaRIjNqfmerWj0LrTqIFFQF7nyMTiHoOYkETjGUR8iQGdIH1p6YiLRZul/vC3DZYlOLOj0wtCtPMajSH4H/Zi/yXToj06DPJ0FHEkTQglIDB5ta20zQaGLZzXZFNw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Csk19f7zKgjYkgkNipWNOArhMZJoVpmcCMF/R/YGjqw=; b=bVxXS5H0I7EsRiVtf/EO366H7OOAG6neetinG5I5EAHknWrNx//NAcPnKruTz1blOzRPXZsxGJBVPnHCeiXhKylqFJ+HI8iQh/JA8dQdl6V4iSWCAPJh4UrdSAZ52b2HI6WEIzRNjyked9kKoIMiw3q5vkRfRu8BHiZ+Um+yhPwG9BF9nXtA8IAPNtPr02qHyMTRl3RKeaUZNBTgeCV8KFA9K+c25GfTqzK2Zn5WkYSZMiXVr7qIJeQleWmS0r8ZkRJqVUL/EKgvlN5ugeYUCe++aO68fY7+Fk7jfOSrQBQWIA5pyWhrHNSVOhd48O209JNMqZVXqerkiwEqUJ3uAw== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: Date: Thu, 15 Jun 2023 16:54:38 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 From: Jan Beulich Subject: [PATCH v2 0/2] x86/vPIT: account for "counter stopped" time To: "xen-devel@lists.xenproject.org" Cc: Andrew Cooper , Wei Liu , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= Content-Language: en-US Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR3P281CA0209.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:a5::8) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|DB9PR04MB9259:EE_ X-MS-Office365-Filtering-Correlation-Id: a5698416-3403-4961-cb5b-08db6db07215 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: kQ8iBJi59uIMCvzVl2x4CLfCuhQFh3AqdNj/T9CYpDM80oAZs1Px9rWTbu99jsnfnD6tEpUyIrO1IWi6HuktTRtr6w2AoKp4zFcDIAM7KlLKNIAob6hojlQ29jQiEN9vTx9/7XW3RyiuKhinCaje4/HbSH+PS+k5jKA2DwFD6G2dm6Ywo7snvajjMyhCd7LR7lJvaCUFJDVL/IZKog7YApr1otaJdpXSM9CJmshi8Qs7kQbSZc0A+jyJ54J/tLDyf1gKe8DebvECoNB7hy6JyONOj1mqmXB9L8DCzJL90Czc0uS1Py41xmzkYKElRc2i5xvINqYGcRQS5l6YjNoo0H2uVZDrstziydTj0GA/GWh9vEK/MY4uDtXoXe8HugtTj8D6t890H48n0cLjImTrGTptZyS3dlpwP+f3J0evI5lXN2vaSi7KAOYNdO9JkX1ZyAAd7H/lsanykxRZS0fPd+tehvELwnJL3ZiD4NYJbp5xxEMZsQUQ+6ABGX8O1KcglApE7mi+tcHRzDv0MkEk1Jv/vyJotGYTh27gmBUX5zt0RkVMKLsQ8zl/ZuZrSVlWAAqEFinErqyktAxdVljbo2JxFuOX6uurQ3o5/2YwpJpW79elQzD4fKuawKTIP247lQ5PkiJ1Mxt4l4stL/0byw== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(366004)(396003)(136003)(39860400002)(376002)(346002)(451199021)(36756003)(31696002)(86362001)(2616005)(558084003)(66946007)(66556008)(66476007)(478600001)(6916009)(4326008)(316002)(54906003)(5660300002)(15650500001)(8936002)(41300700001)(2906002)(38100700002)(8676002)(6486002)(6512007)(6506007)(186003)(26005)(83380400001)(31686004)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?NTdaNG4rUVU3MlZDeVV6NThEZlA5Y1pBa0dEckVyUTBqVTJJZmljOWRrL0VP?= =?utf-8?B?VUdQcnRmYnFiV3RiOTdRdUFaNW15YkdhckYxY2dRL0lRenV6YXJzRkg1Snp6?= =?utf-8?B?Q2I3WFp2cFl6SDgvYnM3RU03d3E1VmMrTGx3a2J0S0MvZW4vUGl0Wk1sVTFp?= =?utf-8?B?cjZtemdtWDhvR0RFWGFRcWJpWktWaU5LKzRkNFNjKzZvODJNUDNjK1ZUQ3c1?= =?utf-8?B?WWJhS1NQUHNhVkt2N3I2SDQ0SzlwYlZ5ZXNLUjZuQjJ2QVlYSWk2RWlzRWZ5?= =?utf-8?B?ZTIwajNuallRSDNvQVpsWVNBSE16cFBzSmVWNVM2YWlpVEtNMktVMEo5aUhD?= =?utf-8?B?VUtkamFNUEdLdUNiVFNMMDVYSXdEd0d2Vzlma25PcGxCem5QdkJuTTV0Mk95?= =?utf-8?B?czlId1NFVTRvOHRoZngzYlFrd2hsVXYzT2NlZC9aSmpZendqTmppRXlTTWxn?= =?utf-8?B?NlB3SEpMa1BVK20vSVAxNlhXNkp1SGZmS3FGMFZFRzhGT05ISUZHTnE3Vjc0?= =?utf-8?B?aEcxT2gzNERrUXZJOEpCT0FOWFlBY3U2eTlXMmVJRXFHQmNORS9mK1RDZ3dP?= =?utf-8?B?S0lqaFBaZzdCL3JIcjdPaXBObUZ2TG94WWRJWVVoOWxpMytVM1VXalpGRUxn?= =?utf-8?B?cmxUY1plak1RTEJVY1k5YXBIUUh1NWQ0dW5MaUxlZmJOclo3ckxOL2NrMENa?= =?utf-8?B?ZThQTzlUYTBJQ1VBM281NUhldjdRQjNRRHh0QlNPenJpS0l6V1I3emNXcG9x?= =?utf-8?B?YzFVamM3TTljTW8raUp4RmdxOWN0a3M4d1Z1bHRseDVyMWJUVklwZm0ydXA4?= =?utf-8?B?Y2RyZjZhVWp5YVprd1Z3dGF2YkMzbXZWVEJYWC9kV2Rxc1RkNHVJZ3Q1T1cx?= =?utf-8?B?dE14VVJDdnJuMXVmUCsxZXRMN2JUM0lld245c0tsR2FiY1dVOU0zM2xTQkIy?= =?utf-8?B?MlVBMmtSSlZNRDBqUTIvVFZtVDk2Qyt2bkJPcGFuZUtQUnJ2S2NYQ2JIUEgz?= =?utf-8?B?M2NKdzFOL01ERndjR1gycVRkNDVncWhHa0tVYUpFcmtvMDNrckxJWUNJbnZl?= =?utf-8?B?bi90end2NlZuU3E2YUV1a0t2by9UT0xVMlV2cENkV1lKTHBXdy9sdCtNZEVw?= =?utf-8?B?QTNDVjVEdnVpOXEySGJBV2NMemM3ckc2VHNOMCtwK0VIZDhEQXVKd1czOTZ3?= =?utf-8?B?SG5nbHMxbVJjc2piV3RpaWJtcld2UGZocW9mZnJnY0xNbFFKWWh2R01hTWtr?= =?utf-8?B?dlNtZ2V1OW9rOHd2RHVYaFdTdHZIMU1zeU9yd2thcFV5UHlkNnZzeU01RXcz?= =?utf-8?B?eGZ2eC9QNXlZd0RNRDI4NzFHSlhoSC9WdVd3bHJNTFo0aGZvSWt6T0o3ZWo3?= =?utf-8?B?eTc3NS9DbGdOazR2aHFrRlVoTGZrQ01HRWJ5UWpaeWw5WUp2ZTJZemIrMTdT?= =?utf-8?B?TGl3WFdHa2Y1dEZqNUFmM0tPamFJb2JGWUd0V3Y4a2x3RGM4RnpCWTN0MjJ6?= =?utf-8?B?U25LdDdtMEtvU21xd3Jjb0hDVUxibXVCTXRFUjM2bFAzbHAxZlFxRkJ6Y0VO?= =?utf-8?B?OHVYeFR5ZVYyenA5K2taZ1p4NjN0cnBQdy95RWR3YytzVEE4ZFA4M21uRWs2?= =?utf-8?B?eDRSQUNqTmI5RThhOXk4clNkWEsxVFNJOGVWU0dSeTd1alhZOVlHSExmU1lw?= =?utf-8?B?Q0RWb0g3RzRSczdaREorM21vaTZoL1NwbDlXM0tUNFJ3elVDNUs1Z2tiSUJD?= =?utf-8?B?ejA5Vm5nMkY2ZHNiZGZDMkdLbjhGbmM1MlpWS2lBc0JWTmdtS3YwbmlpdUE4?= =?utf-8?B?SktyVG5CdkJSRWd4aG12Ui9iMllhSVJ6SDF4aDB4UlNzYzYzckJDa1FJRXRl?= =?utf-8?B?WVZiUlpjekMydmtZdFkveVBTdEZDUHJsdWlSakR3ZnNUZEVJb01KN3VtOGxY?= =?utf-8?B?enBsVHhlc0grQWU4cDdQQTh2VGZ3eHp0cmp2ZHZ3M0U0WkhGa2pUOGxUdmxI?= =?utf-8?B?NGR5LzRoK1hQR2w4aGQ2VUFPUisvTy9JTC8ycVZNcmREUHdQSWhMM0o0YmhS?= =?utf-8?B?akNONkhXT2RuQWNLd3h3cDlIVUxyYU56d2JrdWhGZkZWM2lwU3BrbEpWbUxm?= =?utf-8?Q?IVViV8Kw3gMTtHG9iJCFmAu6N?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: a5698416-3403-4961-cb5b-08db6db07215 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Jun 2023 14:54:40.0454 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: XALku0NIV3NdAyC3wVPRDSo3hioqvDYJ8+xqacXw9/WrDuhmMh+evtkLgzizEAjdchHCvsgzVGEfjmndv0l6Ow== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR04MB9259 This addresses an observation made while putting together "x86: detect PIT aliasing on ports other than 0x4[0-3]". 1: re-order functions 2: account for "counter stopped" time Jan From xen-devel-bounces@lists.xenproject.org Thu Jun 15 14:56:43 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 15 Jun 2023 14:56:43 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549668.858328 (Exim 4.92) (envelope-from ) id 1q9oOk-0005lW-W9; Thu, 15 Jun 2023 14:56:31 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549668.858328; Thu, 15 Jun 2023 14:56:30 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9oOk-0005lN-Sd; Thu, 15 Jun 2023 14:56:30 +0000 Received: by outflank-mailman (input) for mailman id 549668; Thu, 15 Jun 2023 14:56:29 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9oOj-0005W0-8g for xen-devel@lists.xenproject.org; Thu, 15 Jun 2023 14:56:29 +0000 Received: from EUR04-HE1-obe.outbound.protection.outlook.com (mail-he1eur04on2070.outbound.protection.outlook.com [40.107.7.70]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id ce0c15c5-0b8c-11ee-8611-37d641c3527e; Thu, 15 Jun 2023 16:56:27 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by PAXPR04MB9665.eurprd04.prod.outlook.com (2603:10a6:102:240::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.25; Thu, 15 Jun 2023 14:56:24 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.039; Thu, 15 Jun 2023 14:56:24 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: ce0c15c5-0b8c-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=UUcQj1qOv7HNY3eMDYdW05BLEG/ESx3BkhHfS4jNWZ7LUEnlLj/VTAWB8s8K64bjqhGyUr7qAGq7/hOZRhNsWeUQoJWeYc8VJesKYlxjpVbYxOZ83BKIv3ohuAmPAsyQ68YSHuA/nL94gdjBgwZh2DnOsk1ZrbXguObdJ7xvW3nbIlS0AfA7q1fu+YaKXY/PqWtdPpWvM3cDDja+2c8u0V2FKFfkD7QJYNa+1+WDJ2njFK6BORYC7gwLet0tyg1v033mt0C7h6N98qkTTW/Blhu5+r9ZLaXb4FS1VwfHu/pJvbecqSVO7v/nuTu6xYIn6EdOhhYu2+NdFzcKv1s1oA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=qmhhqca6YSZa1ppylCiI9prpDFctF1Vhnvq7mhVxCUw=; b=b92FX2AgB5hpeOnmU1CDspK0Yo/Mk0jLIcUOqLahk3zHfV9od7xq6jpGYoqNzyrgNQKhD+aZVRWmtLpTIYJDYzmefEMlPz+t8NYCVt6/mr3LY1YUKKaAjycIlwZjsTXyiV1keOye0A+CTEUjFsNdWgxzIWVv74TVFq/zIxpLgoLtnbYC+Us97Y9iVO4Wq95aR5fn6YWoI+qegamPzbZA01lmyGt3AYGRMeCzuv5hCBHCpcRNkAYY6LGKb/veZYPIm0+9/XAPOvhgbki3L6WdAuNY2bprfi73Gb50VS1v+ZZzsjgtaAOKdIX6vqaSbQ6Yf9fiax0Gwt6TGtaPmMasMA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=qmhhqca6YSZa1ppylCiI9prpDFctF1Vhnvq7mhVxCUw=; b=psUQHWrfzYwdZ6a6SvOiGbFOc2f5XAF54bsarsSg10vG2uWtuO4xg7ymK7l/7yA/04STBn2cvI1xFLFRbTKta0FJ8nIiWbegcg5CYPJ5ASlR4Mp2TRdPjBcyj5dgP6do93kmrHYMGXVMUXeoqjxQcBkkQk2ilmugvuZiAJfBOwH6u8sXaChAI8lRrxpwYnVl0HQylm3OVdfzZkHFf8u94P4DXwbbsD8mqVOCSs3ILjWOivjgU/q3zeFvZCUD3HfyEf6woMKm7lVu5ZG4zSblGEh8g2LUPedFm3bzyQ0g+SLW/379JjjLN+/6mFV6SlLAjeWfYvcHIP54fXx7dt8jLA== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <7b69e322-bc37-a1bd-444d-b2cbe1d76b39@suse.com> Date: Thu, 15 Jun 2023 16:56:22 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: [PATCH v2 2/2] x86/vPIT: account for "counter stopped" time Content-Language: en-US From: Jan Beulich To: "xen-devel@lists.xenproject.org" Cc: Andrew Cooper , Wei Liu , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= References: In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR2P281CA0073.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:9a::15) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|PAXPR04MB9665:EE_ X-MS-Office365-Filtering-Correlation-Id: ffbab607-6f5b-4e6d-16f0-08db6db0b019 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: U0hkV3Agd5s3ahA+d7w0qReNESaVtSORPlCDkGD1eKrXlou2t+z84enR+uJ9jnszvsAPqFyGpum77kqBjzjoV1+AXV5/cLlUnIP1L+beZtGwc3XnAjPP1HSZ7tr5mndcc7u39R38+DRleaCTqTSxBUN1tBKJhqSV06v9JEwJ8oFv6omy7D/NwklwhePKau/MPUWMEGZhWlW57j/GosJm83p2PMdz0awZ7yfBACNx0FpTmBLfcviv1/kUQlMIAhzXMQJ3se6VlfVMyH18NcQxEuf1Ey2u2mN1TskKd+ZgEnkQPWamlfKRuL9q/GqMzorBbocMOgjYZeLdvA20rJBVCN2c01Rq+us3uSfZEIhZDvL79WvMY/KkKnMbIE/rCZ8jC9mnddU38VKXUNaIoSc5Qz9JTNfUGsPzMau7riP7yAEddprEdonAi8fXGxfn3kMbqhPJStmn2ANkrtJ3FbwzqHAypb3pO8yE3QYWV02pazr/UnuzG7kNYqdRSrg2mW6abs+FfJn39lNAQvdltUIh2wzMVsfiqFiMlcQQcVWu45fPqepmVznBquMqxwjzviKilpFwbepQ8lQTTxhiKYmLNyhL35gQWS2mrxdnj4nfaOyq8qD+K3uDTDiDDapZRngdCpiLfL+Z5WiIVHzvXeK51S+qnbDSHdK2Q0h5fjjPTj4= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(376002)(136003)(346002)(366004)(396003)(39860400002)(451199021)(5660300002)(966005)(38100700002)(2616005)(83380400001)(6506007)(186003)(2906002)(15650500001)(26005)(6512007)(478600001)(66556008)(6916009)(66946007)(66476007)(316002)(8936002)(6486002)(8676002)(41300700001)(86362001)(31696002)(36756003)(4326008)(31686004)(54906003)(66899021)(21314003)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?WjNZbEdJbVNFWTEvaXBhTEZoR256QTRNNW9nSnVrVkNmak52bVRYZUYySmtF?= =?utf-8?B?NVVubk9BUnBTNy9mUEEvZ2NBYVY0dTljeUE2Y2pOTVU3dFkrUktMenZvaS9G?= =?utf-8?B?cHRQM3Bib0lib2ZJckVqZEVJckxkSmRra0NvZkUySnhNcVB5VEtWZUJPQ1p1?= =?utf-8?B?YjdFOGpCTU4xMjhSUVZtTWFvaC92WHY3LzdhOS9yYU03bjNNRGNIYUdSazFs?= =?utf-8?B?eWlhWHNuc1dxT3JHNlBlaEdsbVhmaVRnWjB2VGFyZmVPTmgydkJGSUtkY1FN?= =?utf-8?B?MnZIbTR4YStXQ2NsTXhGTTBPU29JckxQR2lMZ3ErU0NROWE1aGJCaUdIeElW?= =?utf-8?B?dktvaFRyb3VzSWUwUHIvaS83cU9YR0Njd2JPbEpyQkkxd0FORGFUZkw0Unp5?= =?utf-8?B?c2dMRG94L04rSmhmNzZySkUvYXZLd1ZHWTlNM083eWRTTnNKSTByekdHUGgy?= =?utf-8?B?UXErMGMvQWZUOWhJRWRRcHVuVHpGcEMvc2ZvdmpvazJHRjd2TUFIaXdKdXZm?= =?utf-8?B?TFBKeG91cER6RmV2STdzV3BwRXpMR2cxYVM1NjFjMitJR01zSURFSW9ac0lx?= =?utf-8?B?YkFNVys1R3g5dzBZclJsajkvMlBUYVVqNXdKaCtQcG13ZkladDdEc1ZVMWFi?= =?utf-8?B?UVFjUHZCYTFMNjZGS2hieG82bGVua1pYeWFZSGpEanprUzFDN2RPUHRpVWxx?= =?utf-8?B?S1pzZmhXUFkvSDdRWFZNSGZiaU43L0xrY0kwcFNpL1lHV2pXMGprajNPQ2Z3?= =?utf-8?B?bkdwUSs5L3hZV0JxNzhpbGVlYnY4R0JacWFhYTc2dmdXcDdKYjUyMzVGc091?= =?utf-8?B?QkV0ZStqT2d5NTcyZzMrNXVwWUM3NlBmYjlJVWgxZ0N0ZXU5dEZiWWg4WUND?= =?utf-8?B?Q2ZoakN4SzZzM3lQL1RhaURzQkpVVFROV2tTZFlhYjAwT3RPSFB0TVJYVk5W?= =?utf-8?B?ZTR0Nm9zRzMyTW4yT0RQRzVueVhabUhaQTZub0JaL05WQURqejhtczVzckdt?= =?utf-8?B?SjFBOEdmNHkvREFLR1ZzN3FrQkhjV0xPWWJkbmUrQm9Uc08wZm1NWmNkaHZG?= =?utf-8?B?dlNJaG9PRW90bHQ4Y2J1czFYTlBTdDJjdEZYUkVFclh0eU9TK29qRUI5dktN?= =?utf-8?B?L0w3ZEtFcjJLWjVQSkRTNko1djJGd1dQUmVnRjFKdDJBRU9OazlGQ1lMclpj?= =?utf-8?B?ZVBFQmZ4OUQzTUNadU42eHh1d1dNditUZVpiN1puRlRFOVRzZ2hla05SblRT?= =?utf-8?B?VWVKV2dGVWRlWW5GNE1CNWpkOE1pdlNWT3VDZ3c1UitpSVZMU2plSGNrNGlF?= =?utf-8?B?VTNndTVTa1psbTRqRmJhakJJaEcwZ294NUR0WVZzOGJ2MGxGZ09ZeVFhOFUr?= =?utf-8?B?b250Nmd5NytTL0NML1pxZjJORVcwRnJPZjZESC9oQzV3bjRwb2pWTjZGVmNy?= =?utf-8?B?K3hNUkEvU1RLbnpjRWJMc2hOWkxwNEtvUE5QVXZQNERkUEE1M3Naempmd0xi?= =?utf-8?B?RnZkQzhoTEVJSTFIQUR1eFc4R1JHR0ZSQWJOczNRL3d3OGRGdWhZc0g4bkRa?= =?utf-8?B?Y2FuTEQ0TkhkS1htWk96N2k5VlZuNnViKzRxWlJhcWtNSWpZMUI2TmYwN1Zn?= =?utf-8?B?QkVud1hNTnI5Y3JVeUxFcUI3WkZydHpManQrU3paMmRsODJOVjJ6M09MZ3NX?= =?utf-8?B?Sms0Mlh1NEdrZHAycnlsOU5ncnZrZzdHYzEwQVBndFFBWkw0UElxUGx1SnRY?= =?utf-8?B?VktWNENKK3lDZnp1cUVTdWEzZjY2ZzBGZituTlZNVmN2cis3dnFBYTZ3ZXhh?= =?utf-8?B?Z3I5SnFqRU03RE1wNzkxdU53b0VtTzdFQkYyc2ZSeGNVYTJuSEhpMVZTZHVp?= =?utf-8?B?V0dEWE5TNjBwWDI2Y25MenR5eTgyTnhnQWpMYUZyZmZtU0tOWHpwVVFnemF0?= =?utf-8?B?cE9telNCZDRaaUVqMDk3bkJFa3QxZGxleUEzUHYvRUwyZ01PSENQU05MWjZv?= =?utf-8?B?cElPNGJaMS9rLzRTTFBLK0I2RzZMTG9ySStnRmVCeXEzb0RkN0FSRlk1UTBs?= =?utf-8?B?bVMzd0RjWG1nQmdadnNyODRpb09SSDkzUURyUXJxTzZnejNjNWNGdWQxTi83?= =?utf-8?Q?sLJSsa00WhEYzhvnl7qp7f0ft?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: ffbab607-6f5b-4e6d-16f0-08db6db0b019 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Jun 2023 14:56:24.0340 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: msB07mKMwl8RtGOFAnfIL7+3yvjBgcvr4fh+qpyFAANkKkMtDmHYDhYZQliutUnncDPFIP7dYgE26Uw8oowv6A== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB9665 For an approach like that used in "x86: detect PIT aliasing on ports other than 0x4[0-3]" [1] to work, channel 2 may not (appear to) continue counting when "gate" is low. Record the time when "gate" goes low, and adjust pit_get_{count,out}() accordingly. Additionally for most of the modes a rising edge of "gate" doesn't mean just "resume counting", but "initiate counting", i.e. specifically the reloading of the counter with its init value. No special handling for state save/load: See the comment near the end of pit_load(). [1] https://lists.xen.org/archives/html/xen-devel/2023-05/msg00898.html Signed-off-by: Jan Beulich --- TBD: "gate" can only ever be low for chan2 (with "x86/vPIT: check/bound values loaded from state save record" [2] in place), so in principle we could get away without a new pair of arrays, but just two individual fields. At the expense of more special casing in code. TBD: Should we deal with other aspects of "gate low" in pit_get_out() here as well, right away? I was hoping to get away without ... (Note how the two functions also disagree in their placement of the "default" labels, even if that's largely benign when taking into account that modes 6 and 7 are transformed to 2 and 3 respectively by pit_load(). A difference would occur only before the guest first sets the mode, as pit_reset() sets it to 7.) Other observations: - Loading of new counts occurs too early in some of the modes (2/3: at end of current sequence or when gate goes high; 1/5: only when gate goes high). - BCD counting doesn't appear to be properly supported either (at least that's mentioned in the public header). [2] https://lists.xen.org/archives/html/xen-devel/2023-05/msg00887.html --- v2: In pit_load_count() also set count_stop_time from count_load_time (in case the counter is stopped). Correct spelling in comments. Correct calculations in pit_get_{count,out}(). --- a/xen/arch/x86/emul-i8254.c +++ b/xen/arch/x86/emul-i8254.c @@ -65,7 +65,10 @@ static int pit_get_count(PITState *pit, ASSERT(spin_is_locked(&pit->lock)); - d = muldiv64(get_guest_time(v) - pit->count_load_time[channel], + d = pit->hw.channels[channel].gate || (c->mode & 3) == 1 + ? get_guest_time(v) + : pit->count_stop_time[channel]; + d = muldiv64(d - pit->count_load_time[channel] - pit->stopped_time[channel], PIT_FREQ, SYSTEM_TIME_HZ); switch ( c->mode ) @@ -110,6 +113,10 @@ static void pit_load_count(PITState *pit pit->count_load_time[channel] = 0; else pit->count_load_time[channel] = get_guest_time(v); + + pit->count_stop_time[channel] = pit->count_load_time[channel]; + pit->stopped_time[channel] = 0; + s->count = val; period = DIV_ROUND(val * SYSTEM_TIME_HZ, PIT_FREQ); @@ -148,7 +155,10 @@ static int pit_get_out(PITState *pit, in ASSERT(spin_is_locked(&pit->lock)); - d = muldiv64(get_guest_time(v) - pit->count_load_time[channel], + d = pit->hw.channels[channel].gate || (s->mode & 3) == 1 + ? get_guest_time(v) + : pit->count_stop_time[channel]; + d = muldiv64(d - pit->count_load_time[channel] - pit->stopped_time[channel], PIT_FREQ, SYSTEM_TIME_HZ); switch ( s->mode ) @@ -182,22 +192,39 @@ static void pit_set_gate(PITState *pit, ASSERT(spin_is_locked(&pit->lock)); - switch ( s->mode ) - { - default: - case 0: - case 4: - /* XXX: just disable/enable counting */ - break; - case 1: - case 5: - case 2: - case 3: - /* Restart counting on rising edge. */ - if ( s->gate < val ) - pit->count_load_time[channel] = get_guest_time(v); - break; - } + if ( s->gate > val ) + switch ( s->mode ) + { + case 0: + case 2: + case 3: + case 4: + /* Disable counting. */ + if ( !channel ) + destroy_periodic_time(&pit->pt0); + pit->count_stop_time[channel] = get_guest_time(v); + break; + } + + if ( s->gate < val ) + switch ( s->mode ) + { + default: + case 0: + case 4: + /* Enable counting. */ + pit->stopped_time[channel] += get_guest_time(v) - + pit->count_stop_time[channel]; + break; + + case 1: + case 5: + case 2: + case 3: + /* Initiate counting on rising edge. */ + pit_load_count(pit, channel, pit->hw.channels[channel].count); + break; + } s->gate = val; } --- a/xen/arch/x86/include/asm/hvm/vpt.h +++ b/xen/arch/x86/include/asm/hvm/vpt.h @@ -48,8 +48,14 @@ struct periodic_time { typedef struct PITState { /* Hardware state */ struct hvm_hw_pit hw; - /* Last time the counters read zero, for calcuating counter reads */ + + /* Last time the counters read zero, for calculating counter reads */ int64_t count_load_time[3]; + /* Last time the counters were stopped, for calculating counter reads */ + int64_t count_stop_time[3]; + /* Accumulate "stopped" time, since the last counter write/reload. */ + uint64_t stopped_time[3]; + /* Channel 0 IRQ handling. */ struct periodic_time pt0; spinlock_t lock; From xen-devel-bounces@lists.xenproject.org Thu Jun 15 14:56:43 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 15 Jun 2023 14:56:43 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549667.858318 (Exim 4.92) (envelope-from ) id 1q9oOi-0005WI-Og; Thu, 15 Jun 2023 14:56:28 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549667.858318; Thu, 15 Jun 2023 14:56:28 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9oOi-0005WB-L9; Thu, 15 Jun 2023 14:56:28 +0000 Received: by outflank-mailman (input) for mailman id 549667; Thu, 15 Jun 2023 14:56:27 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9oOh-0005W0-Fy for xen-devel@lists.xenproject.org; Thu, 15 Jun 2023 14:56:27 +0000 Received: from EUR04-HE1-obe.outbound.protection.outlook.com (mail-he1eur04on2070.outbound.protection.outlook.com [40.107.7.70]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id cc94a841-0b8c-11ee-8611-37d641c3527e; Thu, 15 Jun 2023 16:56:25 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by PAXPR04MB9665.eurprd04.prod.outlook.com (2603:10a6:102:240::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.25; Thu, 15 Jun 2023 14:55:54 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.039; Thu, 15 Jun 2023 14:55:54 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: cc94a841-0b8c-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=ViTfpIZ4Ba9SXt5AGTOqOAwElEaQGfdGZn4pkvYCwdMtlhDV7U8hPhW6ddmUuK7PWAkCmgN/cGgtnv97Yq57KKJd9BQa1h4CiETCMM8dpSSp9wkfoIi+rJQpxWgW1tN54IDV356yEDHWmFpHdxVwYhRoS7+jz3Cr6sgAq9/IBEHsGZgvo1VHHJ774pYBbKcH7YrJQPjsNsraNpNkXoSmDaktoCYyzz+cIS/Bn4YIq/pAUpidDo+f+D3biNfOx2NRbvocmW/y4jShDrAqtuTflN/S9JL7DwVn5PAYaY8xc6i21HQsFLPjAaq+TslUIcYeO9y9aI4ycl1pedYC5jsr2Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=OIdP+fPD+oF9cEQiMq7yKwpArFJAY76tnF1ijHYYjN8=; b=oKqM1Y2aU1AD3xfDOr5ACjQr5szE/jn93odDFIvzj8U+YFjPrgz2hfI9kG06apDbdyKAxNhevVtv7X+xibTfi/n9e8u+6datYUCkuwYLxGFmY8phCeHY3lTIvqJ4WLYCzHE8yxyM1S4N1L5ID1nr/jnx8ZD7wgEUkLnNOQPSKrvusMwDw8RORwHHteKvMPP+Bk6AdoI15Y8qoqH8va0xBkSB17y0AyFtKEwp9UTONJ6dU1LQI8k2ziUjgkQaMq0BSJ6+xkLeH10DEMu5m109/o6yVUE9Qf+WYKkSVjOL4LmTj3QzWaSFCYc8PXTWS8HBX0RGWBydPVaOAThRzYt7mg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=OIdP+fPD+oF9cEQiMq7yKwpArFJAY76tnF1ijHYYjN8=; b=Sj+rb7AIiCPLVdGGoEQCUBtDep6sBzN6qAeR5gEcigc9h3rCDt5RWFnnbVF5okuTqOHXAQvwC+3dI4pcUkV/k0T1B3w+7+iz/kR+w3Myod2dxcuMQuNsSxjrpwBy6/iWNxUuH84hNkLCCay0uwf82Phi3WPqK5B9uuWqBwViyBsaghjg3dxmV2nvw2o233QIUy9/IYAfKxTe6kFIXJi9GD4pEca35ia4cyIDcLYnBQj7wRctWddvUsZa05vA2iBpTS7MqovFk9kmYm0JU0mFziplypGLisHT3kJ/R6M9T17wEhg2282O3Bjoe7b6fUX8FtFOsY2Umg5UFhsAF4crrQ== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <84853482-edea-ff2e-7301-1148e29bca65@suse.com> Date: Thu, 15 Jun 2023 16:55:52 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: [PATCH v2 1/2] x86/vPIT: re-order functions Content-Language: en-US From: Jan Beulich To: "xen-devel@lists.xenproject.org" Cc: Andrew Cooper , Wei Liu , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= References: In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: FR2P281CA0068.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:9a::12) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|PAXPR04MB9665:EE_ X-MS-Office365-Filtering-Correlation-Id: da522441-91cc-4c19-f325-08db6db09e8f X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: iiVEUvMsqyFTew2r8tSwvfnir1Nag5PPN6Kx7yRcArDNyvkmHy1ynBUs5wKH5MqoxaLVLM4qgOFPujPqmmZBW9hEbpXFpqNM8F79vVkrNfgRbEd6an+ryCa20LZbWNDuuGHEizUSRy9RndsBxVtENJubd8FTxg1S75J37MCZqeSR4DtZH+oTYyPbtPpRpD8DD8fqmX3eOHEnutr2keoW/KC65lDisjZN2d51oRl2r2L57snYZ+UGG2/b8S/pyvZfpmiM7vDyE245xFnUw6ZApV+OADwdxDsw2VZ4IshRGy3TOZd5MYK57oAAMXnYG8AJb0dT3Gd/BRozWs4NgEEoHjGSKKhcnd6uirb5NbISXsIzJQBsTJUS2QomjBZ/Ll7r/6amLRjf2P13UccEXvKlZJdvhfi+aN+cnfKu1UvrWaCjvi3Liufjqn0sxC4XoYwulyI4sY81Pa2iZeIahlpjVStPBxbq36YKmpSTWxBNwq6ph+sKSr4tSaRZnY/4EJ3TINSnJK21u7bi1WB22DhvDPyB4Nzr+k8tZr0cqWOhEms10KlHkFS3uonNDn8H9EhlJQrfhD34gDt7GByq2Hxrbn44nN366L0pjyAewIOegZsr++RDFKBHtbnKbPdwCp2/Mo/noR/z0Fi7Y4DLZuHFHGQ59XpM+kPyaPI33xIXResMsKRA3w90Wur+CRS+TxLm X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(376002)(136003)(346002)(366004)(396003)(39860400002)(451199021)(5660300002)(38100700002)(2616005)(83380400001)(6506007)(186003)(2906002)(26005)(6512007)(478600001)(66556008)(6916009)(66946007)(66476007)(316002)(8936002)(6486002)(8676002)(41300700001)(86362001)(31696002)(36756003)(4326008)(31686004)(54906003)(169823001)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?UW5FRWdSdUowQUNWVDFlNDNvMm45Q2xhUXdEME1PWG85alBLakFDeG5aSkg5?= =?utf-8?B?cC9XejRiSVNJZkdNL2htbXJDNXZnTU1NZ0VNcGhCMnB6bm1ZSENMakFpUEJO?= =?utf-8?B?V2QvSysyM3hISW1iNlIwcVBFSHhnbUdweEluWnJmNVRiZldicHpaR1NERk5Y?= =?utf-8?B?T3AvVkxtTExlMk9sdmNRUVdxamdiVlgxUk1rSXFXbk4wcTRFTGNIQTRqcFp0?= =?utf-8?B?b01KMSs1MlpUTE52SThXVTdGNG1MdHhaZWF6dHByQlpXaFNoVjBkbGZINGlN?= =?utf-8?B?cXI2Tnl5MCtIU05YaEY3ZkxKYWd5TEEweFBTRFpDYUt3QXYweS9BSXZPOEwz?= =?utf-8?B?QmNJUFFFbUFqYm5XRitTRDZ6dDZBSUF1RWVVN3cvWE5DY1M1RDhxTUsxcEY1?= =?utf-8?B?MGtaR0psL1RiTG1iaE03NlJvVHFnVDJFSXpOcGV5enZxc0ppd2RGRklYSE9M?= =?utf-8?B?SEx1eCtvRWR1K0hPSVZWbHB6T1NYSUIzUE1JOGJ1Z0wxUHJ5ZExmV3BMdEow?= =?utf-8?B?aW83clVMQlplOTdpZG5SWmR2Rk5NNG5JeXBQYnd4RFd1MFZhaXhRZk56cTJB?= =?utf-8?B?d0tGc0xmVVdhZytuR3JHTlhaVlJYdkFRcm9jQjMySkpEcWhXTHZjelVJbmtz?= =?utf-8?B?ajhpcmNwWmRQTGJnTUtva3loYVArL2RuZ0RkZUtrUEdFeXZiZ00wdXNaMkFp?= =?utf-8?B?ZlIzN0ZwWUJjUWNzVVZ3eko4R3Y4RnBkSnlpMGZFNzJlVUdWRkVyTmZWSTJs?= =?utf-8?B?dENhSXRuR045ZWJVMDhtRVhFc0p4NTZvL21SckNBUVZMWkFTN0JrQS81cDlk?= =?utf-8?B?MWRSSkd6U3ZCZyttOHEzS1pLMG42UXp4cjN6TjUyTTAzU3orOGg0a21pb3RR?= =?utf-8?B?UWhUenBpRFRlWnA1L0ZLYUxsNnVWYUhJb1lsYXZyTnRUN1JDbDF5cGdkcHIy?= =?utf-8?B?UE85Q1BUZ1lQV3N2ZWNaVDFmT2RGQXA2a1RSbHN1WGNBM1pDOURvMHNGcms0?= =?utf-8?B?cDNiZ2NSWUV1dkxYY0g3Z3g3T0RWRU1PaFV6MWVHb0N3dXU1aUtCOEpOVjA0?= =?utf-8?B?dzE4VXU5a1pYSmRlbDM4bG01K2lqQU83T1Ztc2FGdEFpTXhkcy9BcHlQYzFV?= =?utf-8?B?K1huVllaN2UrVUUwMjBkNTZsS1BaQXlCUi9iekFKRW9MWWV1QmxZK2hSYkht?= =?utf-8?B?cVRvY0szbGtqRnhTMDJtRGtLWG5kem9kdkZQNG02ams1QkozOFRMRDRhVEdS?= =?utf-8?B?YUI5SzZLNi9iTGJueUlYS29aTml0SllGMk5VaTNmQTBwNk1oM0V0Vkw1VnBD?= =?utf-8?B?RHJCMjhXbnVsWHlPbFJVem9XYzlmeXVvK052MHlUSng0UDhuS2g3SWtIcWpQ?= =?utf-8?B?K2Jra0J5bVJ4UjR1cjJ0ZVcyOXk2M3dVSE9yeDAzb0JVLzNYYU9VU2dMNitX?= =?utf-8?B?UWs4aGlGOGJ0UlJTdXRFSGg0Q3pTSjJ4b21ocEY2bVN6cUpuZTlwQmMrL3ZT?= =?utf-8?B?ZWljOXhjUUg5RGNIV0l3THRxTWFYNjY1MjdodUxvSHh2WGx3Wm8rU01UTUpz?= =?utf-8?B?VnF4cGVnTGxHTGM4RmFCM0NGQ1prMnM3c3NKSjIrdVlFeDhGbWV4MHJCRlN5?= =?utf-8?B?L2ttTWNqQ3oxL0ZUb2UzY3dLVGZTNnp6VkloLzZuS1NHMmV0T1BTRVEweWRI?= =?utf-8?B?NkhXRGZmNkxEVjlMNGc4dW1JRENXTHRORXpYQmJpOU5Vc0VoUmlKSTVjSi83?= =?utf-8?B?b2trUUtDM2hQMnpHUm1Nb3JyZ0RjUHNoZjNUZWFVR2FsT0NYTWk3Q2JoVk00?= =?utf-8?B?K25nV01Yc2FxRldYL2NoQmt4WDRSbTlFaHJvVXBWLzJrYU5oVGY2eWFZZWRI?= =?utf-8?B?bEdpYm1DT3JFdGlyR0VtbGhHNnJyUWJOSTNzUnJ0UGc4VmZNNGxES29aRXZ2?= =?utf-8?B?ZXk4L0pBczlXbmQzS25vNHhyQS9DUmdqTnBCTXNjeVR5NkN1RTA4Y3RSTWNi?= =?utf-8?B?bEU5SG8yWTg0VC9yRUNMNVJRdk9mUU8vTk1Bc3hwS01TWGJDSTJkMkRmRkZL?= =?utf-8?B?ZkMyNnJmc2gzdllnekh3OFFDN1BLRUVwWmpTalYyVmJJeHJHeGlsQnZlS0VX?= =?utf-8?Q?sn1pMKEHrDCRFJyK+s3Y8jjrY?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: da522441-91cc-4c19-f325-08db6db09e8f X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Jun 2023 14:55:54.6024 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: yvwKE2WPt7U3VyBsoFoXHtXZwVPORbgeKv5cSA2S2fAugsvK7scsiZCdjSd5yRjDEHU1y0/YUUhn7/pxVFyfdA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB9665 To avoid the need for a forward declaration of pit_load_count() in a subsequent change, move it earlier in the file (along with its helper callback). While moving the code, address a few style issues. Signed-off-by: Jan Beulich Reviewed-by: Roger Pau Monné --- v2: Address a few style issues while moving the code. --- a/xen/arch/x86/emul-i8254.c +++ b/xen/arch/x86/emul-i8254.c @@ -87,6 +87,58 @@ static int pit_get_count(PITState *pit, return counter; } +static void cf_check pit_time_fired(struct vcpu *v, void *priv) +{ + uint64_t *count_load_time = priv; + + TRACE_0D(TRC_HVM_EMUL_PIT_TIMER_CB); + *count_load_time = get_guest_time(v); +} + +static void pit_load_count(PITState *pit, int channel, int val) +{ + uint32_t period; + struct hvm_hw_pit_channel *s = &pit->hw.channels[channel]; + struct vcpu *v = vpit_vcpu(pit); + + ASSERT(spin_is_locked(&pit->lock)); + + if ( val == 0 ) + val = 0x10000; + + if ( v == NULL ) + pit->count_load_time[channel] = 0; + else + pit->count_load_time[channel] = get_guest_time(v); + s->count = val; + period = DIV_ROUND(val * SYSTEM_TIME_HZ, PIT_FREQ); + + if ( !v || !is_hvm_vcpu(v) || channel ) + return; + + switch ( s->mode ) + { + case 2: + case 3: + /* Periodic timer. */ + TRACE_2D(TRC_HVM_EMUL_PIT_START_TIMER, period, period); + create_periodic_time(v, &pit->pt0, period, period, 0, pit_time_fired, + &pit->count_load_time[channel], false); + break; + case 1: + case 4: + /* One-shot timer. */ + TRACE_2D(TRC_HVM_EMUL_PIT_START_TIMER, period, 0); + create_periodic_time(v, &pit->pt0, period, 0, 0, pit_time_fired, + &pit->count_load_time[channel], false); + break; + default: + TRACE_0D(TRC_HVM_EMUL_PIT_STOP_TIMER); + destroy_periodic_time(&pit->pt0); + break; + } +} + static int pit_get_out(PITState *pit, int channel) { struct hvm_hw_pit_channel *s = &pit->hw.channels[channel]; @@ -156,57 +208,6 @@ static int pit_get_gate(PITState *pit, i return pit->hw.channels[channel].gate; } -static void cf_check pit_time_fired(struct vcpu *v, void *priv) -{ - uint64_t *count_load_time = priv; - TRACE_0D(TRC_HVM_EMUL_PIT_TIMER_CB); - *count_load_time = get_guest_time(v); -} - -static void pit_load_count(PITState *pit, int channel, int val) -{ - u32 period; - struct hvm_hw_pit_channel *s = &pit->hw.channels[channel]; - struct vcpu *v = vpit_vcpu(pit); - - ASSERT(spin_is_locked(&pit->lock)); - - if ( val == 0 ) - val = 0x10000; - - if ( v == NULL ) - pit->count_load_time[channel] = 0; - else - pit->count_load_time[channel] = get_guest_time(v); - s->count = val; - period = DIV_ROUND(val * SYSTEM_TIME_HZ, PIT_FREQ); - - if ( (v == NULL) || !is_hvm_vcpu(v) || (channel != 0) ) - return; - - switch ( s->mode ) - { - case 2: - case 3: - /* Periodic timer. */ - TRACE_2D(TRC_HVM_EMUL_PIT_START_TIMER, period, period); - create_periodic_time(v, &pit->pt0, period, period, 0, pit_time_fired, - &pit->count_load_time[channel], false); - break; - case 1: - case 4: - /* One-shot timer. */ - TRACE_2D(TRC_HVM_EMUL_PIT_START_TIMER, period, 0); - create_periodic_time(v, &pit->pt0, period, 0, 0, pit_time_fired, - &pit->count_load_time[channel], false); - break; - default: - TRACE_0D(TRC_HVM_EMUL_PIT_STOP_TIMER); - destroy_periodic_time(&pit->pt0); - break; - } -} - static void pit_latch_count(PITState *pit, int channel) { struct hvm_hw_pit_channel *c = &pit->hw.channels[channel]; From xen-devel-bounces@lists.xenproject.org Thu Jun 15 15:05:23 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 15 Jun 2023 15:05:23 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549678.858337 (Exim 4.92) (envelope-from ) id 1q9oXF-0007bm-S8; Thu, 15 Jun 2023 15:05:17 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549678.858337; Thu, 15 Jun 2023 15:05:17 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9oXF-0007bf-PL; Thu, 15 Jun 2023 15:05:17 +0000 Received: by outflank-mailman (input) for mailman id 549678; Thu, 15 Jun 2023 15:05:16 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9oXE-0007bW-ML for xen-devel@lists.xenproject.org; Thu, 15 Jun 2023 15:05:16 +0000 Received: from mail-lj1-x22c.google.com (mail-lj1-x22c.google.com [2a00:1450:4864:20::22c]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 08070086-0b8e-11ee-8611-37d641c3527e; Thu, 15 Jun 2023 17:05:14 +0200 (CEST) Received: by mail-lj1-x22c.google.com with SMTP id 38308e7fff4ca-2b448470602so9413331fa.2 for ; Thu, 15 Jun 2023 08:05:14 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 08070086-0b8e-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686841514; x=1689433514; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=pXp3CZvNX7rLpeiqaWkvWunNWyaPzPAcCiwzgNquZkQ=; b=R/ukOAYm2c5ih5pusYkOljU0/K7m+m2ZFWQGw6pO2X8DB6RoWE9ZkAXUgfT6UiSCsZ 0LEK0WpgHFe3FdkfbgdpZvjVHGks3kkof21WLG7ZpodrP11pUudc78g45fZtoiaMRBYt fs3pI781XwSnzMDt+2H1OHGuzULbuxyvEAZzHKIbLQA/jB1JjcEGNiL8qSTQPfV4BDGn vdS74OPQfg2skDJTHWH3k5e6BP8nzBhpWnkXYntocAgEloKaWFRP7llDukJXI6NQDvwo krRBcZ/Ks7kXP52OXVDbKy3fabp29j56nQcY9lA3WryxmOFrM8g/pCV69suzWXR15U0O nGAQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686841514; x=1689433514; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=pXp3CZvNX7rLpeiqaWkvWunNWyaPzPAcCiwzgNquZkQ=; b=H2MAoPd0xkmeUfPZAQs87CMBxEa9/tqOM5Jq/TG8kVUdLNFdo1kceKD2DZmHTKbzKe y59JAIAhgBYVpGrFsz6BlXUTno8g4pUFuVqi5RfAFOUJcCSiIx1Fn4nBc4vhi6mHUHbE TvFEZsegb9GaTxs8b4SYh6nTEFHOhFR7Gxu5qd7B3+bcCJb9tHMmM4GqT550AyD49MzL RloCMZZ4gbU3ledD+a5FLI8OwTG1CwFMHoD6qqudSCcX9PZg9mCE3/A6AFK8Sa0CiWFO PUXlKOvXLoUhrLcO1+0OZ1V3SsZfJPjW9H+/aMFMwjWqlWJqhvK72BrRo2UorcVBWhjr GOOQ== X-Gm-Message-State: AC+VfDwin/ZcGuJMjd2eJ8sXGj8R4CEBn328ycpqSCliXHhwjAVq1Bix jri92pf/GGvCBYwPlaJiLF5V4VXmvL0g6usuBOVL8jS7gdY= X-Google-Smtp-Source: ACHHUZ4PfzmXsZvKj2RKMOl5B1GEddv8NM6kEzdnPWgZf8c9h/ql2FecBAxj1v1eLqeBf8AFvUMk6Zs9kXxKnxE1Y3o= X-Received: by 2002:a05:651c:102d:b0:2a8:ce32:867 with SMTP id w13-20020a05651c102d00b002a8ce320867mr9061171ljm.53.1686841513696; Thu, 15 Jun 2023 08:05:13 -0700 (PDT) MIME-Version: 1.0 References: <20230614180253.89958-1-jandryuk@gmail.com> <20230614180253.89958-6-jandryuk@gmail.com> <4ee7b593-6e87-25f3-83f8-6309c1cddbfc@suse.com> In-Reply-To: <4ee7b593-6e87-25f3-83f8-6309c1cddbfc@suse.com> From: Jason Andryuk Date: Thu, 15 Jun 2023 11:05:01 -0400 Message-ID: Subject: Re: [PATCH v4 05/15] pmstat&xenpm: Re-arrage for cpufreq union To: Jan Beulich Cc: Wei Liu , Anthony PERARD , Juergen Gross , xen-devel@lists.xenproject.org Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Thu, Jun 15, 2023 at 10:38=E2=80=AFAM Jan Beulich wr= ote: > > On 14.06.2023 20:02, Jason Andryuk wrote: > > Move some code around now that common xen_sysctl_pm_op get_para fields > > are together. In particular, the scaling governor information like > > scaling_available_governors is inside the union, so it is not always > > available. > > > > With that, gov_num may be 0, so bounce buffer handling needs > > to be modified. > > > > scaling_governor won't be filled for hwp, so this will simplify the > > change when it is introduced. > > While I think this suitably describes the tool stack side changes, ... > > > --- a/xen/drivers/acpi/pmstat.c > > +++ b/xen/drivers/acpi/pmstat.c > > @@ -239,11 +239,24 @@ static int get_cpufreq_para(struct xen_sysctl_pm_= op *op) > > if ( ret ) > > return ret; > > > > + op->u.get_para.cpuinfo_cur_freq =3D > > + cpufreq_driver.get ? cpufreq_driver.get(op->cpuid) : policy->c= ur; > > + op->u.get_para.cpuinfo_max_freq =3D policy->cpuinfo.max_freq; > > + op->u.get_para.cpuinfo_min_freq =3D policy->cpuinfo.min_freq; > > + op->u.get_para.turbo_enabled =3D cpufreq_get_turbo_status(op->cpui= d); > > + > > + if ( cpufreq_driver.name[0] ) > > + strlcpy(op->u.get_para.scaling_driver, > > + cpufreq_driver.name, CPUFREQ_NAME_LEN); > > + else > > + strlcpy(op->u.get_para.scaling_driver, "Unknown", CPUFREQ_NAME= _LEN); > > + > > if ( !(scaling_available_governors =3D > > xzalloc_array(char, gov_num * CPUFREQ_NAME_LEN)) ) > > return -ENOMEM; > > - if ( (ret =3D read_scaling_available_governors(scaling_available_g= overnors, > > - gov_num * CPUFREQ_NAME_LEN * sizeof(char))) ) > > + if ( (ret =3D read_scaling_available_governors( > > + scaling_available_governors, > > + gov_num * CPUFREQ_NAME_LEN * sizeof(char))) ) > > { > > xfree(scaling_available_governors); > > return ret; > > @@ -254,26 +267,16 @@ static int get_cpufreq_para(struct xen_sysctl_pm_= op *op) > > if ( ret ) > > return ret; > > > > - op->u.get_para.cpuinfo_cur_freq =3D > > - cpufreq_driver.get ? cpufreq_driver.get(op->cpuid) : policy->c= ur; > > - op->u.get_para.cpuinfo_max_freq =3D policy->cpuinfo.max_freq; > > - op->u.get_para.cpuinfo_min_freq =3D policy->cpuinfo.min_freq; > > - > > op->u.get_para.u.s.scaling_cur_freq =3D policy->cur; > > op->u.get_para.u.s.scaling_max_freq =3D policy->max; > > op->u.get_para.u.s.scaling_min_freq =3D policy->min; > > > > - if ( cpufreq_driver.name[0] ) > > - strlcpy(op->u.get_para.scaling_driver, > > - cpufreq_driver.name, CPUFREQ_NAME_LEN); > > - else > > - strlcpy(op->u.get_para.scaling_driver, "Unknown", CPUFREQ_NAME= _LEN); > > - > > if ( policy->governor->name[0] ) > > strlcpy(op->u.get_para.u.s.scaling_governor, > > policy->governor->name, CPUFREQ_NAME_LEN); > > else > > - strlcpy(op->u.get_para.u.s.scaling_governor, "Unknown", CPUFRE= Q_NAME_LEN); > > + strlcpy(op->u.get_para.u.s.scaling_governor, "Unknown", > > + CPUFREQ_NAME_LEN); > > > > /* governor specific para */ > > if ( !strncasecmp(op->u.get_para.u.s.scaling_governor, > > @@ -291,7 +294,6 @@ static int get_cpufreq_para(struct xen_sysctl_pm_op= *op) > > &op->u.get_para.u.s.u.ondemand.sampling_rate, > > &op->u.get_para.u.s.u.ondemand.up_threshold); > > } > > - op->u.get_para.turbo_enabled =3D cpufreq_get_turbo_status(op->cpui= d); > > > > return ret; > > } > > ... all I see on the hypervisor side is re-ordering of steps and re-forma= tting > of over-long lines. It's not clear to me why what you do is necessary for= your > purpose. The purpose was to move accesses to the nested struct and union "op->u.get_para.u.s.u" to the end of the function, and the accesses to common fields (e.g. op->u.get_para.turbo_enabled) earlier. This simplifies the changes in "cpufreq: Export HWP parameters to userspace as CPPC". These governor fields get indented, and that needed some re-formatting. Some re-formatting slipped in while I rebased changes - sorry about that. Regards, Jason From xen-devel-bounces@lists.xenproject.org Thu Jun 15 15:22:47 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 15 Jun 2023 15:22:47 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549687.858351 (Exim 4.92) (envelope-from ) id 1q9onv-0001eY-DE; Thu, 15 Jun 2023 15:22:31 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549687.858351; Thu, 15 Jun 2023 15:22:31 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9onv-0001eR-9s; Thu, 15 Jun 2023 15:22:31 +0000 Received: by outflank-mailman (input) for mailman id 549687; Thu, 15 Jun 2023 15:22:30 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9onu-0001eL-6F for xen-devel@lists.xenproject.org; Thu, 15 Jun 2023 15:22:30 +0000 Received: from EUR04-VI1-obe.outbound.protection.outlook.com (mail-vi1eur04on060a.outbound.protection.outlook.com [2a01:111:f400:fe0e::60a]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 70a1ab1b-0b90-11ee-b232-6b7b168915f2; Thu, 15 Jun 2023 17:22:29 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by PA4PR04MB7631.eurprd04.prod.outlook.com (2603:10a6:102:e1::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.37; Thu, 15 Jun 2023 15:22:26 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.039; Thu, 15 Jun 2023 15:22:26 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 70a1ab1b-0b90-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=UE55xUmQRN14Lmhnax9J5XYkv+Duque4UlYqy6ZImwNfzszUWUjjdhre67zTNwI1uK28m3goISO3mwPmRvzRxpukqOpIjoHp0OcZsyLexLx9giUrIAq9upacvEw4d+MayRQAOLkWjSqIKmDgOh4kYIn6PEmpQMHUKlxHXVai1kk5yZqsyI4bEVLdndaJQm7KTr8ZIB6nzAGfOMT7ehW6cTnPMBIVdq46za8rpMl8t1sPgzrMvjnlMM4psEmI/BdzRLMSVWRc/7GKRCimTV2yIwkTi9AAHsllagYiOkGXzrkhwgfBWmHxrj5T+fqgCf19KRfPbdeevzXAd+Zx2q7e4A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=+h4Dzb+0kBzimTRBPa6/JxLJbWXkSXkr3y/YzngK4tI=; b=h2KLVjoLmaV41tNLk3iOHCum1+jB7Mu+R5TN8tBbbDvvnJae52UuETiRWY5TLeZY73LUgNH+DtTS/tBXcfiapzI81dpwLj7g9fDCXnNFkCntexJlVozlqJMJLP3MEL5MNUsII9aDIpFphBszcJMd7S83INRcaAyD8xRRsG5tgwc3e4lNH0RqHaq5neYOe0+E6rPTSTgz+UMXFg7W7/u6Omu4crkaUsHIhXqGFAlDqogwEQnbVzjyM0V3B/YYM4XA96CU9IR50aes7gSKUp2CRbwEWKAjadSP+Kgh+FwetP1NsSsm99wkPBvA8vqtHHrK9COLG05W/gezDAvg+nV2Ww== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=+h4Dzb+0kBzimTRBPa6/JxLJbWXkSXkr3y/YzngK4tI=; b=jvi4WQUp/dAOdvevBqqGFhrfo2U7ddqtGYjRib+9j4qCbDCJSLzEBpUsRO7CWrfBnmnhNlfOTEOWu1cdmOtox87RNg86GMqTyj457L58PuVZAmzt8X08al80NuChrCBytwuUJHHAQpvTPtYf/kxOh+/3S/PJSlyNYHII5xOGi0gxkOut21kPfPEasLAUdQszhXjJssFPdEfkcnhhCAEBC/7YAqC1lrG8py2PhouJKBqBdMDFHRE5DuJN85CSXDe2CxQzEph6KNbLZNVGFK7kvEOkYBDpf8LSSzye9UZXJrsiVRUBF+PlH/1APpy2Qk2sRwwTY+lHHXWVXDhR866rhQ== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: Date: Thu, 15 Jun 2023 17:22:24 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v4 05/15] pmstat&xenpm: Re-arrage for cpufreq union Content-Language: en-US To: Jason Andryuk Cc: Wei Liu , Anthony PERARD , Juergen Gross , xen-devel@lists.xenproject.org References: <20230614180253.89958-1-jandryuk@gmail.com> <20230614180253.89958-6-jandryuk@gmail.com> <4ee7b593-6e87-25f3-83f8-6309c1cddbfc@suse.com> From: Jan Beulich In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: FR0P281CA0049.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:48::15) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|PA4PR04MB7631:EE_ X-MS-Office365-Filtering-Correlation-Id: 94f5cc76-faba-48ac-1b7c-08db6db45372 X-LD-Processed: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: jt5fOHMtNxb2TlZ7JUQA1zK95seGEIGdaKIgYc0+1/7fkW3R/DYD4XWUZrVy4/08/8O0sNxK/z7kStf++/0v1dbBBREPMLIxn6MH0d2jJbJ73K6gIbeaXBkVoAD4PzR1fMd1ovx8YYM1+RJ3YB5HnOTG2l0N4tN3/X6EgsKVv7couxNZdi35apRgBFvS08dqCfTe0UYHl9izAmz16TZdr4t0bCwxMsSAPCq13LwZrddT8tHVd6O/qXHEYDc9i2EOWR3A8GUq0G3CMjQBcdEuPkdxn5vlUG5py++7qv4E2BaPPFHaCjpZAFk5atOoUKfSjGJmx0sUHHp54Aj5wgmNA5l+/temSZobdZdTHogwYQJsxbzDEXWSKXMFWGaFzCfMU1QUUFnXA04yYVs3MtkC99zP6MBNMsjKsCx/4O+xvB2JN3pC2qBYy/Y690FNKDoMVJx3wYN/JpV4WovbTC84/ymPP4KymULI4f93BRmy5V6VyZpRoR72IO+/shyR4yX95EAV9Y+HLqg4TPx1VcjxUlP+0b32PJGBgaCgvez1/U/ZLGZN/YH2f2sUolxndSmbUr3lKpeWiWlBDuoaecTiTXEwmTEpIVYZOJyAiFiw++68Gf1MazHKFJnn12bjrWtPXYK059B218mI+qm+L4BfKA== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(39860400002)(366004)(396003)(376002)(136003)(346002)(451199021)(31686004)(83380400001)(4326008)(316002)(41300700001)(38100700002)(6506007)(26005)(6512007)(53546011)(6486002)(66946007)(66556008)(6916009)(31696002)(66476007)(8936002)(2906002)(5660300002)(36756003)(2616005)(54906003)(478600001)(8676002)(86362001)(186003)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?VFhpRy9aV2ZTS215MHV4bHlIcmN0T1JtZUdITmNlZnlnRStsMml4MzdGd0Fz?= =?utf-8?B?YUhPcFlPSkhUeFAwRTI0TVFoMTBQVnFCeXFlVE4wczYxSnI1WlJYYjRLd1Uv?= =?utf-8?B?VUtSd2toV3hoMDFJNUhlVTJqbGR1OGI1UHVaM2N0NzlHOE01Z1hGREZvYVVh?= =?utf-8?B?ai9NejdraG5wRFp3S1I2YXIrY2NOd0xNTjVMNzUvRU4wNEpxT1VLZTJyalE1?= =?utf-8?B?L0I1aHFSdG5iSzFvZmFhdzIvQzZYUzhFREZaank5ay9DUVI1cjVaNXhtQWNn?= =?utf-8?B?czhpdzN5TUFLakp4VVU2Mk9BYXZYMmFpU2I4SzZsQXpqbXNDa1NxZEJYQW5h?= =?utf-8?B?N3dZbWdzc2tMSTB6cXdqczNnRG5XR080TXlhNllWaGFhM200ZnZIMSt0TFA4?= =?utf-8?B?a01hMFMrR1laU21OM1JpaWo0UUJjb09rVEJoTU5MMmlrdHVnd2xUWCtUVzZn?= =?utf-8?B?ak1PbVdYejF3amgvUHNvaEVhT3dBZW0zU3NCSjVXNHNCQ0hvUXlQd0cxcE93?= =?utf-8?B?akg5NFFrU3BIUk9DNGhUSTdDWk5FQXhScDRkak1WZXVMN013cUdpSjhwV0FV?= =?utf-8?B?c0lza2FodEh6cjRwVDNpb0Nhc1ZSY3NRNmNPSmd3T2JOOCt6RmxzeWNPZzc4?= =?utf-8?B?aGZmZUtseWtLdDlXb0dhMkNXYkZ1SVFrNGdkMURWaFgyVUFPM3dZUHlJMWRB?= =?utf-8?B?VUY3eHRldzAvRzQralF1TEFFb3RJSFZHNm9OdERSMXFSd29qS3RwT2EvNjBU?= =?utf-8?B?VXp2MEFmUTNnNm1INHFTMWlPZnJVWCtJUEd6UmV6NXJXZW1ESktPcXRtdXRp?= =?utf-8?B?T3diVWV6bllxSVNmNU92UWtEZlJ6RitUdnNDYmh0NTh1WWk4RjUrWDRGMzdp?= =?utf-8?B?SGZiMFlPYmcvQlgzOTBSNGZPQnhtZjJvaUc2eWlyejJTait4K05DV21zMmFo?= =?utf-8?B?RTZKbWxiajFEOS9zd0ZwZHVlOTAzUHdTajdiZzBUb25lZXlya2pzYWRNZ2l3?= =?utf-8?B?SjcvanhrZElETmVjL2pYVFh3NmJGanBrL1M4Z3k2UWl2SGNiNDZzaXJMWHhM?= =?utf-8?B?bGZYdHlmMkgxRHRYeVQyVmpsakQ3cElET3cxZy9KSWdhaEpjTi9oQTJDMjlH?= =?utf-8?B?OG9qMXllaUVmY0xHUVF5MTRGZVFxV0F0bFBuc1B3ZENEcVRyKzljbFFaNlo4?= =?utf-8?B?VlFRVzBxYlVwWG5SQVU0elBrWkJKK1ljc0Nhc21aT1pvUXdGVmZDNzdVNkZS?= =?utf-8?B?UkhROFNqNGVxK2hXNHEzbUhZSVBFY3kzYndnb1pOSUR6MVdiL2dlNGs3V1hi?= =?utf-8?B?WUhlaW1CTzlTV0tSL0Zab3ltbFVrU0hJMDNNQTYrUnRsMDBBWTRuZTVvRGdR?= =?utf-8?B?a3UxQUhkMi9wUTFra0RETmVBZkt2Q0FlbEpZcGw1NmU5QU5qTTJlWmNkL1kr?= =?utf-8?B?YTlOTkpiQ2E2YTVzTjAxbjdBRnhFZjQzMVhMdFI5RVM1WXIzYnZaWnpYRXNW?= =?utf-8?B?U1NLTlJKMk84dGhJVmkxTWU0aTdaQ2s1aGlvbVpNWnBZVTcvWWJNVTVXZ0Y0?= =?utf-8?B?Q0xCSDd0Y3k0U2p2OC8zNk4zSk15WVNSQXVXM0RwdlgyWTJHYzBPZmp5Ky9I?= =?utf-8?B?alhnay9RU0FDT21ha053RUtCVUJlbXNGeFJLQlZGMkd1ckNOWi9SNzhla0Ja?= =?utf-8?B?SDMrdkFUMXRCY2pHVHNPUkljVjBFbjEyZEdwMkJMNzVLeWFYWjBGR3dnb2x2?= =?utf-8?B?WExwdEtQdzV0dEVWV2JHaGFpcVBmWElnK2RTZE1EVlh5T1FHNExSYWswcy9N?= =?utf-8?B?YkJGR212c1g1d0Z2RDhlZDM3YTFmT3A2VHIwdzZiaG43VDg2bGpVMGk0Vkpw?= =?utf-8?B?WGp5OUh3dlZWKzd4QmlsSE54d1RtaTBXb2xHKzE5YjZNQThuTTNSSmRrcTMy?= =?utf-8?B?VkttcWF5aVdkSDVuQ0Ixd29tZFpWRGZnZWZSZnBsUkhGRURvcDRKQnk1dlJV?= =?utf-8?B?K052NHlNMFU4N1BabGlNd2dtcDJHelRVQ3Vqa085S1NrUDdZMVRvR04rQzdk?= =?utf-8?B?V3AvT21QazYvMDlqM0dkYnNzdzlDbVV0dHQrN0EvYk1KWUU3S2lFOFZoNm9M?= =?utf-8?Q?6hKzuS4LxH91IAPCh/nNkqKtX?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 94f5cc76-faba-48ac-1b7c-08db6db45372 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Jun 2023 15:22:26.6199 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 3RvhfGCUbJDhsp8CTezL7MVKvcSSf/5740f5oc7lO/2HT0SGRM6rDPzmcc/Ix5003gyyummTzOjURykO1cVryg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR04MB7631 On 15.06.2023 17:05, Jason Andryuk wrote: > On Thu, Jun 15, 2023 at 10:38 AM Jan Beulich wrote: >> >> On 14.06.2023 20:02, Jason Andryuk wrote: >>> Move some code around now that common xen_sysctl_pm_op get_para fields >>> are together. In particular, the scaling governor information like >>> scaling_available_governors is inside the union, so it is not always >>> available. >>> >>> With that, gov_num may be 0, so bounce buffer handling needs >>> to be modified. >>> >>> scaling_governor won't be filled for hwp, so this will simplify the >>> change when it is introduced. >> >> While I think this suitably describes the tool stack side changes, ... >> >>> --- a/xen/drivers/acpi/pmstat.c >>> +++ b/xen/drivers/acpi/pmstat.c >>> @@ -239,11 +239,24 @@ static int get_cpufreq_para(struct xen_sysctl_pm_op *op) >>> if ( ret ) >>> return ret; >>> >>> + op->u.get_para.cpuinfo_cur_freq = >>> + cpufreq_driver.get ? cpufreq_driver.get(op->cpuid) : policy->cur; >>> + op->u.get_para.cpuinfo_max_freq = policy->cpuinfo.max_freq; >>> + op->u.get_para.cpuinfo_min_freq = policy->cpuinfo.min_freq; >>> + op->u.get_para.turbo_enabled = cpufreq_get_turbo_status(op->cpuid); >>> + >>> + if ( cpufreq_driver.name[0] ) >>> + strlcpy(op->u.get_para.scaling_driver, >>> + cpufreq_driver.name, CPUFREQ_NAME_LEN); >>> + else >>> + strlcpy(op->u.get_para.scaling_driver, "Unknown", CPUFREQ_NAME_LEN); >>> + >>> if ( !(scaling_available_governors = >>> xzalloc_array(char, gov_num * CPUFREQ_NAME_LEN)) ) >>> return -ENOMEM; >>> - if ( (ret = read_scaling_available_governors(scaling_available_governors, >>> - gov_num * CPUFREQ_NAME_LEN * sizeof(char))) ) >>> + if ( (ret = read_scaling_available_governors( >>> + scaling_available_governors, >>> + gov_num * CPUFREQ_NAME_LEN * sizeof(char))) ) >>> { >>> xfree(scaling_available_governors); >>> return ret; >>> @@ -254,26 +267,16 @@ static int get_cpufreq_para(struct xen_sysctl_pm_op *op) >>> if ( ret ) >>> return ret; >>> >>> - op->u.get_para.cpuinfo_cur_freq = >>> - cpufreq_driver.get ? cpufreq_driver.get(op->cpuid) : policy->cur; >>> - op->u.get_para.cpuinfo_max_freq = policy->cpuinfo.max_freq; >>> - op->u.get_para.cpuinfo_min_freq = policy->cpuinfo.min_freq; >>> - >>> op->u.get_para.u.s.scaling_cur_freq = policy->cur; >>> op->u.get_para.u.s.scaling_max_freq = policy->max; >>> op->u.get_para.u.s.scaling_min_freq = policy->min; >>> >>> - if ( cpufreq_driver.name[0] ) >>> - strlcpy(op->u.get_para.scaling_driver, >>> - cpufreq_driver.name, CPUFREQ_NAME_LEN); >>> - else >>> - strlcpy(op->u.get_para.scaling_driver, "Unknown", CPUFREQ_NAME_LEN); >>> - >>> if ( policy->governor->name[0] ) >>> strlcpy(op->u.get_para.u.s.scaling_governor, >>> policy->governor->name, CPUFREQ_NAME_LEN); >>> else >>> - strlcpy(op->u.get_para.u.s.scaling_governor, "Unknown", CPUFREQ_NAME_LEN); >>> + strlcpy(op->u.get_para.u.s.scaling_governor, "Unknown", >>> + CPUFREQ_NAME_LEN); >>> >>> /* governor specific para */ >>> if ( !strncasecmp(op->u.get_para.u.s.scaling_governor, >>> @@ -291,7 +294,6 @@ static int get_cpufreq_para(struct xen_sysctl_pm_op *op) >>> &op->u.get_para.u.s.u.ondemand.sampling_rate, >>> &op->u.get_para.u.s.u.ondemand.up_threshold); >>> } >>> - op->u.get_para.turbo_enabled = cpufreq_get_turbo_status(op->cpuid); >>> >>> return ret; >>> } >> >> ... all I see on the hypervisor side is re-ordering of steps and re-formatting >> of over-long lines. It's not clear to me why what you do is necessary for your >> purpose. > > The purpose was to move accesses to the nested struct and union > "op->u.get_para.u.s.u" to the end of the function, and the accesses to > common fields (e.g. op->u.get_para.turbo_enabled) earlier. This > simplifies the changes in "cpufreq: Export HWP parameters to userspace > as CPPC". Could you mention this as (part of) the purpose in the description? > These governor fields get indented, and that needed some re-formatting. Would it maybe make sense to split the function? Jan From xen-devel-bounces@lists.xenproject.org Thu Jun 15 15:32:18 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 15 Jun 2023 15:32:18 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549692.858361 (Exim 4.92) (envelope-from ) id 1q9oxF-0003A0-9X; Thu, 15 Jun 2023 15:32:09 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549692.858361; Thu, 15 Jun 2023 15:32:09 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9oxF-00039t-6P; Thu, 15 Jun 2023 15:32:09 +0000 Received: by outflank-mailman (input) for mailman id 549692; Thu, 15 Jun 2023 15:32:07 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9oxD-00039m-A6 for xen-devel@lists.xenproject.org; Thu, 15 Jun 2023 15:32:07 +0000 Received: from mail-wm1-x332.google.com (mail-wm1-x332.google.com [2a00:1450:4864:20::332]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id c7fb31f9-0b91-11ee-8611-37d641c3527e; Thu, 15 Jun 2023 17:32:05 +0200 (CEST) Received: by mail-wm1-x332.google.com with SMTP id 5b1f17b1804b1-3f8d17639feso21127155e9.2 for ; Thu, 15 Jun 2023 08:32:05 -0700 (PDT) Received: from localhost.localdomain (default-46-102-197-194.interdsl.co.uk. [46.102.197.194]) by smtp.gmail.com with ESMTPSA id c12-20020a05600c0acc00b003f195d540d9sm20829986wmr.14.2023.06.15.08.32.03 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 15 Jun 2023 08:32:03 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: c7fb31f9-0b91-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cloud.com; s=cloud; t=1686843124; x=1689435124; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=VCA3Pf6f+/2jMpccddEtY1bpoEHdgMvPsL2NvMFA0ds=; b=eZdtVCr1JhpBPaxe9XBEMlAw+4qe7kNox3jZMl5eGgM89Ndr+4/PPxHNQi9KhHX5R4 ShSIBE560xCNEfW0jXQhLyQz0Vwr3epY8ITcE6nzXqttZjVZw2u1V4fMkEm8AovjSqIG JakfoJq0rtTvOJzDDtWnsAgGvf1PYVFqQBvyw= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686843124; x=1689435124; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=VCA3Pf6f+/2jMpccddEtY1bpoEHdgMvPsL2NvMFA0ds=; b=fYZc1PCGb6rjdoHlpdjug+GxNLEKJpDTWCcW1LsL1Y8xRSajuyPOg9d+amHJQUh8YL 4ZKAGhepJz3UgW7rjbg6Ftc0x6bHvdLf+bRQ+OsUjEgMtvYTwKqJab99QLnoA7DRE3x4 7665DO1VXPmMrbC6BNqQTOQMfzuK1STViXfNz+uc7VEzphTnPVf9ysyCCiQoxaBlSofe s6yJQA3hM57XctUbSNlPrI2Yqm7eaX38lCI8LC93TSl5RqMHVwKg8dZHcWfHt3ZrIFaG SO5fNMljYKl54KIX71RfLi9BhNaf7GOxbr/8GNyKXw8dIlgTfOhtuDbc6Fgany5STs2m 1vzw== X-Gm-Message-State: AC+VfDz0o5yhjgmt9iwYA5/zTsziBoIhCwqyWESXR8BipyJL2KlQ55Zl NOUFTtc+Ets2HftnA0peOHhXbHcHGq+RcfoeNT8= X-Google-Smtp-Source: ACHHUZ7j8Mg7a1iQPH7GpjiWhoddlxY/xWGWBScW/EqDDoh/y4Ts5y4CGQjbr9Had6L60tbnY5oPWQ== X-Received: by 2002:a05:600c:2186:b0:3f7:2323:e012 with SMTP id e6-20020a05600c218600b003f72323e012mr14014139wme.5.1686843124127; Thu, 15 Jun 2023 08:32:04 -0700 (PDT) From: Alejandro Vallejo To: Xen-devel Cc: Alejandro Vallejo , Jan Beulich , Andrew Cooper , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Wei Liu Subject: [PATCH v2 1/2] x86/boot: Clear XD_DISABLE from the early boot path Date: Thu, 15 Jun 2023 16:31:56 +0100 Message-Id: <20230615153157.444-2-alejandro.vallejo@cloud.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20230615153157.444-1-alejandro.vallejo@cloud.com> References: <20230615153157.444-1-alejandro.vallejo@cloud.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Intel CPUs have a bit in MSR_IA32_MISC_ENABLE that may prevent the NX bit from being advertised. Clear it unconditionally if we can't find the NX feature right away on boot. The conditions for the MSR being read on early boot are (in this order): * Long Mode is supported * NX isn't advertised * The vendor is Intel The order of checks has been chosen carefully so a virtualized Xen on a hypervisor that doesn't emulate that MSR (but supports NX) doesn't triple fault trying to access the non-existing MSR. While at it, make sure we use rdmsr_safe rather than rdmsrl in the Intel-specific init path so we don't accidentally crash if the MSR isn't emulated while Xen is virtualized. Signed-off-by: Alejandro Vallejo --- xen/arch/x86/boot/head.S | 60 ++++++++++++++++++++++++---- xen/arch/x86/cpu/intel.c | 32 +++++++-------- xen/arch/x86/include/asm/msr-index.h | 2 +- 3 files changed, 69 insertions(+), 25 deletions(-) diff --git a/xen/arch/x86/boot/head.S b/xen/arch/x86/boot/head.S index 09bebf8635..ce62eae6f3 100644 --- a/xen/arch/x86/boot/head.S +++ b/xen/arch/x86/boot/head.S @@ -142,8 +142,8 @@ efi_platform: .section .init.text, "ax", @progbits -bad_cpu: - add $sym_offs(.Lbad_cpu_msg),%esi # Error message +.Lbad_cpu: + add $sym_offs(.Lbad_cpu_msg),%esi jmp .Lget_vtb not_multiboot: add $sym_offs(.Lbad_ldr_msg),%esi # Error message @@ -647,15 +647,59 @@ trampoline_setup: cpuid 1: mov %edx, CPUINFO_FEATURE_OFFSET(X86_FEATURE_LM) + sym_esi(boot_cpu_data) - /* Check for NX. Adjust EFER setting if available. */ + /* Check for availability of long mode. */ + bt $cpufeat_bit(X86_FEATURE_LM),%edx + jnc .Lbad_cpu + + /* Check for NX */ bt $cpufeat_bit(X86_FEATURE_NX), %edx + jc .Lhas_nx_bit + + /* + * NX appears to be unsupported, but it might be hidden. + * + * Intel CPUs (may) implement MSR_IA32_MISC_ENABLE. Among other + * things this MSR has a bit that artificially hides NX support in + * CPUID. Xen _really_ wants that feature enabled if present, so we + * have to determine if (a) the MSR exists and if so (b) clear the + * bit. + * + * For native boots this is perfectly fine because the MSR was + * introduced before Netburst, which was the first family to + * provide 64bit support. So we're safe simply accessing it as long + * as long mode support has already been checked. + * + * For the virtualized case the MSR might not be emulated though, + * so we make sure to do an initial check for NX in order to bypass + * this MSR read + */ + xor %eax,%eax + cpuid + cmpl $X86_VENDOR_INTEL_EBX,%ebx + jnz .Lno_nx_bit + cmpl $X86_VENDOR_INTEL_EDX,%edx + jnz .Lno_nx_bit + cmpl $X86_VENDOR_INTEL_ECX,%ecx + jnz .Lno_nx_bit + + /* Clear the XD_DISABLE bit */ + movl $MSR_IA32_MISC_ENABLE, %ecx + rdmsr + btrl $2, %edx jnc 1f - orb $EFER_NXE >> 8, 1 + sym_esi(trampoline_efer) -1: + wrmsr + orb $MSR_IA32_MISC_ENABLE_XD_DISABLE >> 32, 4 + sym_esi(trampoline_misc_enable_off) - /* Check for availability of long mode. */ - bt $cpufeat_bit(X86_FEATURE_LM),%edx - jnc bad_cpu +1: /* Check again for NX */ + mov $0x80000001,%eax + cpuid + bt $cpufeat_bit(X86_FEATURE_NX), %edx + jnc .Lno_nx_bit + +.Lhas_nx_bit: + /* Adjust EFER is NX is present */ + orb $EFER_NXE >> 8, 1 + sym_esi(trampoline_efer) +.Lno_nx_bit: /* Stash TSC to calculate a good approximation of time-since-boot */ rdtsc diff --git a/xen/arch/x86/cpu/intel.c b/xen/arch/x86/cpu/intel.c index 168cd58f36..46b0cd8dbb 100644 --- a/xen/arch/x86/cpu/intel.c +++ b/xen/arch/x86/cpu/intel.c @@ -305,23 +305,23 @@ static void cf_check early_init_intel(struct cpuinfo_x86 *c) c->x86_cache_alignment = 128; /* Unmask CPUID levels and NX if masked: */ - rdmsrl(MSR_IA32_MISC_ENABLE, misc_enable); - - disable = misc_enable & (MSR_IA32_MISC_ENABLE_LIMIT_CPUID | - MSR_IA32_MISC_ENABLE_XD_DISABLE); - if (disable) { - wrmsrl(MSR_IA32_MISC_ENABLE, misc_enable & ~disable); - bootsym(trampoline_misc_enable_off) |= disable; - bootsym(trampoline_efer) |= EFER_NXE; - } + if (rdmsr_safe(MSR_IA32_MISC_ENABLE, misc_enable) == 0) { + disable = misc_enable & (MSR_IA32_MISC_ENABLE_LIMIT_CPUID | + MSR_IA32_MISC_ENABLE_XD_DISABLE); + if (disable) { + wrmsrl(MSR_IA32_MISC_ENABLE, misc_enable & ~disable); + bootsym(trampoline_misc_enable_off) |= disable; + bootsym(trampoline_efer) |= EFER_NXE; + } - if (disable & MSR_IA32_MISC_ENABLE_LIMIT_CPUID) - printk(KERN_INFO "revised cpuid level: %d\n", - cpuid_eax(0)); - if (disable & MSR_IA32_MISC_ENABLE_XD_DISABLE) { - write_efer(read_efer() | EFER_NXE); - printk(KERN_INFO - "re-enabled NX (Execute Disable) protection\n"); + if (disable & MSR_IA32_MISC_ENABLE_LIMIT_CPUID) + printk(KERN_INFO "revised cpuid level: %d\n", + cpuid_eax(0)); + if (disable & MSR_IA32_MISC_ENABLE_XD_DISABLE) { + write_efer(read_efer() | EFER_NXE); + printk(KERN_INFO + "re-enabled NX (Execute Disable) protection\n"); + } } /* CPUID workaround for Intel 0F33/0F34 CPU */ diff --git a/xen/arch/x86/include/asm/msr-index.h b/xen/arch/x86/include/asm/msr-index.h index 2749e433d2..4f861c0bb4 100644 --- a/xen/arch/x86/include/asm/msr-index.h +++ b/xen/arch/x86/include/asm/msr-index.h @@ -502,7 +502,7 @@ #define MSR_IA32_MISC_ENABLE_MONITOR_ENABLE (1<<18) #define MSR_IA32_MISC_ENABLE_LIMIT_CPUID (1<<22) #define MSR_IA32_MISC_ENABLE_XTPR_DISABLE (1<<23) -#define MSR_IA32_MISC_ENABLE_XD_DISABLE (1ULL << 34) +#define MSR_IA32_MISC_ENABLE_XD_DISABLE (_AC(1, ULL) << 34) #define MSR_IA32_TSC_DEADLINE 0x000006E0 #define MSR_IA32_ENERGY_PERF_BIAS 0x000001b0 -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 15 15:32:18 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 15 Jun 2023 15:32:18 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549693.858371 (Exim 4.92) (envelope-from ) id 1q9oxH-0003PQ-GH; Thu, 15 Jun 2023 15:32:11 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549693.858371; Thu, 15 Jun 2023 15:32:11 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9oxH-0003PF-DY; Thu, 15 Jun 2023 15:32:11 +0000 Received: by outflank-mailman (input) for mailman id 549693; Thu, 15 Jun 2023 15:32:09 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9oxF-00039m-LK for xen-devel@lists.xenproject.org; Thu, 15 Jun 2023 15:32:09 +0000 Received: from mail-wm1-x335.google.com (mail-wm1-x335.google.com [2a00:1450:4864:20::335]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id c9d6b4e4-0b91-11ee-8611-37d641c3527e; Thu, 15 Jun 2023 17:32:08 +0200 (CEST) Received: by mail-wm1-x335.google.com with SMTP id 5b1f17b1804b1-3f8ca80e889so19732085e9.3 for ; Thu, 15 Jun 2023 08:32:08 -0700 (PDT) Received: from localhost.localdomain (default-46-102-197-194.interdsl.co.uk. [46.102.197.194]) by smtp.gmail.com with ESMTPSA id c12-20020a05600c0acc00b003f195d540d9sm20829986wmr.14.2023.06.15.08.32.02 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 15 Jun 2023 08:32:02 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: c9d6b4e4-0b91-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cloud.com; s=cloud; t=1686843123; x=1689435123; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=xa5LqqAnhhZGhhNjydhBSa/TUirey21KtPrdKQ3hxdY=; b=aAG0yzb67hfuEGZfLDlzi0UDhjpMzstR9Dmp3CojQLYZszamDzAMkgyhFDqdppSrJZ bQ9H8NyWjS9NYy1L7+ZU1nOMoNjuBjDjrOr/ruMlqQxY0fDu+HnQdvbTjAlyy9sMaTql drAbk5AaOVreUSZT2D0UwyyTYfZG0d8Ki19sI= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686843123; x=1689435123; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=xa5LqqAnhhZGhhNjydhBSa/TUirey21KtPrdKQ3hxdY=; b=DjdU8LJowUJCW9SCg+Kuykk05V69QDHzmYXlkyecsax5+Dynk1/W5/CZOmrtKMKF6U RVoVOkdUfjw5xoE/EJTgdmmO2/pvWlHo2lBR57ERbM5p22pIWiXCrtWt3dvZUU9UOMxh nyYDgrBnbdQWUu/dXNsvUG1sWmArRfacPaUTfGhA8LtfguzV9pEanErEkFeUw8MR+Az8 8RdDJbSSK4FjrvT0B7Von+f2870+elJ2M64h7qJ8xUVVKbyRIwN3+lL3E39svaMagIdn R5/m5y4yyBhtI6HG4LMY0WGMZA+myCh+UhAIPFqfpobm0+N5860B9+ZWfwktTQoXpZLE Cezw== X-Gm-Message-State: AC+VfDzRCBMmCWLahdTXVnQNodCo3JAHjOOYrxQQU3EIjGNPJJjwJjNR hcoaQEOLVfb/n6ubnMkfUYReWS/BacQ4tznh1Ac= X-Google-Smtp-Source: ACHHUZ6Os8mhpaayczU4KQ9NRqUIYSRAjYf2iei7pM2+pYKl80DJwA3vhK6eJRqFYxEt9Nwx741IDQ== X-Received: by 2002:a7b:cd97:0:b0:3f7:678a:cf24 with SMTP id y23-20020a7bcd97000000b003f7678acf24mr12201855wmj.39.1686843123399; Thu, 15 Jun 2023 08:32:03 -0700 (PDT) From: Alejandro Vallejo To: Xen-devel Cc: Alejandro Vallejo , Jan Beulich , Andrew Cooper , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Wei Liu Subject: [PATCH v2 0/2] Introduce a REQUIRE_NX Kconfig option Date: Thu, 15 Jun 2023 16:31:55 +0100 Message-Id: <20230615153157.444-1-alejandro.vallejo@cloud.com> X-Mailer: git-send-email 2.34.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit v2: * Created assembly override for cases where XD_DISABLE is set * Turned rdmsrl() into rdmsr_safe() when reading IA32_MSR_MISC_ENABLE in C This option hardens Xen by forcing it to write secure (NX-enhanced) PTEs regardless of the runtime NX feature bit in boot_cpu_data. This prevents an attacker with partial write support from affecting Xen's PTE generation logic by overriding the NX feature flag. The patch asserts support for the NX bit in PTEs at boot time and if so short-circuits the cpu_has_nx macro to 1. Alejandro Vallejo (2): x86/boot: Clear XD_DISABLE from the early boot path x86: Add Kconfig option to require NX bit support xen/arch/x86/Kconfig | 16 ++++++ xen/arch/x86/boot/head.S | 73 ++++++++++++++++++++++++--- xen/arch/x86/boot/trampoline.S | 3 +- xen/arch/x86/cpu/intel.c | 32 ++++++------ xen/arch/x86/efi/efi-boot.h | 9 ++++ xen/arch/x86/include/asm/cpufeature.h | 3 +- xen/arch/x86/include/asm/msr-index.h | 2 +- 7 files changed, 111 insertions(+), 27 deletions(-) -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 15 15:32:18 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 15 Jun 2023 15:32:18 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549694.858375 (Exim 4.92) (envelope-from ) id 1q9oxH-0003Sv-PG; Thu, 15 Jun 2023 15:32:11 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549694.858375; Thu, 15 Jun 2023 15:32:11 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9oxH-0003Sb-Li; Thu, 15 Jun 2023 15:32:11 +0000 Received: by outflank-mailman (input) for mailman id 549694; Thu, 15 Jun 2023 15:32:09 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9oxF-00039s-N6 for xen-devel@lists.xenproject.org; Thu, 15 Jun 2023 15:32:09 +0000 Received: from mail-wm1-x32e.google.com (mail-wm1-x32e.google.com [2a00:1450:4864:20::32e]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id c9c3b99e-0b91-11ee-b232-6b7b168915f2; Thu, 15 Jun 2023 17:32:08 +0200 (CEST) Received: by mail-wm1-x32e.google.com with SMTP id 5b1f17b1804b1-3f8cc042e2bso18181975e9.2 for ; Thu, 15 Jun 2023 08:32:07 -0700 (PDT) Received: from localhost.localdomain (default-46-102-197-194.interdsl.co.uk. [46.102.197.194]) by smtp.gmail.com with ESMTPSA id c12-20020a05600c0acc00b003f195d540d9sm20829986wmr.14.2023.06.15.08.32.04 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 15 Jun 2023 08:32:04 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: c9c3b99e-0b91-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cloud.com; s=cloud; t=1686843127; x=1689435127; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=h9QjuDeIZX/4P8TG4G2HtMpHPapdilzqZaLVcacUT5A=; b=JWda/emZrdxyPpI6myh4+8ZwvDUx4tFsKVOqpVE62PliCLXRk6IsNdP0eXXVSwXAQY KDXIvyMdn8PQ+D9MSDrzIBkC2Az3LBUJ5nWkX/z4RItxKBfEh4phpDrHQDqhxXKM86cf SFPzwIS866YVU8MMwZ2LC1i/ZM7qoX9AXK5c0= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686843127; x=1689435127; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=h9QjuDeIZX/4P8TG4G2HtMpHPapdilzqZaLVcacUT5A=; b=Ca0I6Oz0pJYb2BH/5bGfUCpxdzkbWFRYElVzP2VIKj9Dg4Vhn7vERA92r9dBGhc890 kh/qr0UuuqmhatscgpJygh/BNeTl8qjYoo2F8FpQbN8JD0rGNl1BDtXmZT70eYx2ijzv vEtTxHw3eAXgLWhp7kSWcRydW/Fqot2NTtWRhTxBOnjINAGt9bgkAcCq9MkpegyfbVlP ojCfnoJ3yIDTpuhbXw4k6+oedjc9kUovtUR1bCy7GL2FzUGNZ3Io7vbfm5P6dja93XT3 LJcp3yzTsBV6E4S51kVRo7FznTKp0cTLQjq5/Miwyedhx3ElOj09bXGeMNyo6Tgbefj3 niMg== X-Gm-Message-State: AC+VfDyOqEtWkOJ41chTdhir4BpGoMYkQ49wSpB1PsBi0a60L0bVd+iY denEvjhUiMngWucT5UMLexnAuacpXtHCiwV0FfA= X-Google-Smtp-Source: ACHHUZ5FDQrtyDzEPBl7bp48bBZpDCajSrmhz/uHslPoLUx6X9HWawCQigcplt//FqDzjSX2EeHd3A== X-Received: by 2002:a1c:4c0c:0:b0:3f7:3699:c294 with SMTP id z12-20020a1c4c0c000000b003f73699c294mr12533886wmf.29.1686843127210; Thu, 15 Jun 2023 08:32:07 -0700 (PDT) From: Alejandro Vallejo To: Xen-devel Cc: Alejandro Vallejo , Jan Beulich , Andrew Cooper , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Wei Liu Subject: [PATCH v2 2/2] x86: Add Kconfig option to require NX bit support Date: Thu, 15 Jun 2023 16:31:57 +0100 Message-Id: <20230615153157.444-3-alejandro.vallejo@cloud.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20230615153157.444-1-alejandro.vallejo@cloud.com> References: <20230615153157.444-1-alejandro.vallejo@cloud.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit This option hardens Xen by forcing it to write secure (NX-enhanced) PTEs regardless of the runtime NX feature bit in boot_cpu_data. This prevents an attacker with partial write support from affecting Xen's PTE generation logic by overriding the NX feature flag. The patch asserts support for the NX bit in PTEs at boot time and if so short-circuits the cpu_has_nx macro to 1. It has the nice benefit of replacing many instances of runtime checks with folded constants. This has several knock-on effects that improve codegen, saving 2.5KiB off the text section. The config option defaults to OFF for compatibility with previous behaviour. Signed-off-by: Alejandro Vallejo --- xen/arch/x86/Kconfig | 16 ++++++++++++++++ xen/arch/x86/boot/head.S | 15 ++++++++++++++- xen/arch/x86/boot/trampoline.S | 3 ++- xen/arch/x86/efi/efi-boot.h | 9 +++++++++ xen/arch/x86/include/asm/cpufeature.h | 3 ++- 5 files changed, 43 insertions(+), 3 deletions(-) diff --git a/xen/arch/x86/Kconfig b/xen/arch/x86/Kconfig index 406445a358..fa97d4cccc 100644 --- a/xen/arch/x86/Kconfig +++ b/xen/arch/x86/Kconfig @@ -307,6 +307,22 @@ config MEM_SHARING bool "Xen memory sharing support (UNSUPPORTED)" if UNSUPPORTED depends on HVM +config REQUIRE_NX + bool "Require NX bit support" + help + No-eXecute (also called XD "eXecute Disable" and DEP "Data + Execution Prevention") is a security feature designed originally + to combat buffer overflow attacks by marking regions of memory + which the CPU must not interpret as instructions. + + The NX feature exists in every 64bit CPU except for some very + early Pentium 4 Prescott machines. + + Enabling this option will improve Xen's security by removing + cases where Xen could be tricked into thinking that the feature + was unavailable. However, if enabled, Xen will no longer boot on + any CPU which is lacking NX support. + endmenu source "common/Kconfig" diff --git a/xen/arch/x86/boot/head.S b/xen/arch/x86/boot/head.S index ce62eae6f3..ec1e80ef68 100644 --- a/xen/arch/x86/boot/head.S +++ b/xen/arch/x86/boot/head.S @@ -123,6 +123,7 @@ multiboot2_header: .Lbad_ldr_nih: .asciz "ERR: EFI ImageHandle is not provided by bootloader!" .Lbad_efi_msg: .asciz "ERR: EFI IA-32 platforms are not supported!" .Lbag_alg_msg: .asciz "ERR: Xen must be loaded at a 2Mb boundary!" +.Lno_nx_bit_msg: .asciz "ERR: Not an NX-bit capable CPU!" .section .init.data, "aw", @progbits .align 4 @@ -151,6 +152,11 @@ not_multiboot: .Lnot_aligned: add $sym_offs(.Lbag_alg_msg),%esi # Error message jmp .Lget_vtb +#ifdef CONFIG_REQUIRE_NX +.Lno_nx_bit: + add $sym_offs(.Lno_nx_bit_msg),%esi + jmp .Lget_vtb +#endif .Lmb2_no_st: /* * Here we are on EFI platform. vga_text_buffer was zapped earlier @@ -651,7 +657,12 @@ trampoline_setup: bt $cpufeat_bit(X86_FEATURE_LM),%edx jnc .Lbad_cpu - /* Check for NX */ + /* + * Check for NX + * - If Xen was compiled requiring it simply assert it's + * supported. The trampoline already has the right constant. + * - Otherwise, update the trampoline EFER mask accordingly. + */ bt $cpufeat_bit(X86_FEATURE_NX), %edx jc .Lhas_nx_bit @@ -697,9 +708,11 @@ trampoline_setup: jnc .Lno_nx_bit .Lhas_nx_bit: +#ifndef CONFIG_REQUIRE_NX /* Adjust EFER is NX is present */ orb $EFER_NXE >> 8, 1 + sym_esi(trampoline_efer) .Lno_nx_bit: +#endif /* Stash TSC to calculate a good approximation of time-since-boot */ rdtsc diff --git a/xen/arch/x86/boot/trampoline.S b/xen/arch/x86/boot/trampoline.S index c6005fa33d..b8ab0ffdcb 100644 --- a/xen/arch/x86/boot/trampoline.S +++ b/xen/arch/x86/boot/trampoline.S @@ -147,7 +147,8 @@ GLOBAL(trampoline_misc_enable_off) /* EFER OR-mask for boot paths. SCE conditional on PV support, NX added when available. */ GLOBAL(trampoline_efer) - .long EFER_LME | (EFER_SCE * IS_ENABLED(CONFIG_PV)) + .long EFER_LME | (EFER_SCE * IS_ENABLED(CONFIG_PV)) | \ + (EFER_NXE * IS_ENABLED(CONFIG_REQUIRE_NX)) GLOBAL(trampoline_xen_phys_start) .long 0 diff --git a/xen/arch/x86/efi/efi-boot.h b/xen/arch/x86/efi/efi-boot.h index c94e53d139..84700559bb 100644 --- a/xen/arch/x86/efi/efi-boot.h +++ b/xen/arch/x86/efi/efi-boot.h @@ -751,6 +751,15 @@ static void __init efi_arch_cpu(void) { caps[FEATURESET_e1d] = cpuid_edx(0x80000001); + /* + * This check purposefully doesn't use cpu_has_nx because + * cpu_has_nx bypasses the boot_cpu_data read if Xen was compiled + * with CONFIG_REQUIRE_NX + */ + if ( IS_ENABLED(CONFIG_REQUIRE_NX) && + !boot_cpu_has(X86_FEATURE_NX) ) + blexit(L"This Xen build requires NX bit support."); + if ( cpu_has_nx ) trampoline_efer |= EFER_NXE; } diff --git a/xen/arch/x86/include/asm/cpufeature.h b/xen/arch/x86/include/asm/cpufeature.h index ace31e3b1f..610532da43 100644 --- a/xen/arch/x86/include/asm/cpufeature.h +++ b/xen/arch/x86/include/asm/cpufeature.h @@ -91,7 +91,8 @@ static inline bool boot_cpu_has(unsigned int feat) #define cpu_has_hypervisor boot_cpu_has(X86_FEATURE_HYPERVISOR) /* CPUID level 0x80000001.edx */ -#define cpu_has_nx boot_cpu_has(X86_FEATURE_NX) +#define cpu_has_nx (IS_ENABLED(CONFIG_REQUIRE_NX) || \ + boot_cpu_has(X86_FEATURE_NX)) #define cpu_has_page1gb boot_cpu_has(X86_FEATURE_PAGE1GB) #define cpu_has_rdtscp boot_cpu_has(X86_FEATURE_RDTSCP) #define cpu_has_3dnow_ext boot_cpu_has(X86_FEATURE_3DNOWEXT) -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 15 15:45:53 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 15 Jun 2023 15:45:53 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549709.858391 (Exim 4.92) (envelope-from ) id 1q9pAL-0005sr-41; Thu, 15 Jun 2023 15:45:41 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549709.858391; Thu, 15 Jun 2023 15:45:41 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9pAL-0005sk-1O; Thu, 15 Jun 2023 15:45:41 +0000 Received: by outflank-mailman (input) for mailman id 549709; Thu, 15 Jun 2023 15:45:39 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9pAJ-0005sd-T0 for xen-devel@lists.xenproject.org; Thu, 15 Jun 2023 15:45:39 +0000 Received: from mail-ed1-x534.google.com (mail-ed1-x534.google.com [2a00:1450:4864:20::534]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id acc0dea8-0b93-11ee-b232-6b7b168915f2; Thu, 15 Jun 2023 17:45:38 +0200 (CEST) Received: by mail-ed1-x534.google.com with SMTP id 4fb4d7f45d1cf-519608ddbf7so2451434a12.2 for ; Thu, 15 Jun 2023 08:45:38 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: acc0dea8-0b93-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686843938; x=1689435938; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=lUGQdEOFDd5kOXlnIo177KaIHTBcAk19g9JtNc8L+zU=; b=RMrFItNGooPZT0zA35PJuOR2a6MZQ3GJ7SiWK/gzsxOEaVUjccLelqDRLW7FJk6FKZ pS4PudsGFl0GaRabHVwYTAwTzQratChZuC+/khCr8Nqj4eS4W6g7RNiZWUFbNix4NOSP SZXGcrvTLz3mt4ta2iC0hZiyfnQpCQAwkYNYKOt6Q/vQ3fuB/S64pFmUzfBL8dY492gs 5mS/XyDmCvzFD+Ze5+ZFT3BjehJms1ZE/HsmDn4ZWgiUth54WqeiDOOuRfpg+BfPQ0j0 v9p04H7h350S+i6luecqMfGxjOlsQHdCEDv/kPL31bev0+6tusK1ITd41L7cZ/8w3vZL htdg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686843938; x=1689435938; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=lUGQdEOFDd5kOXlnIo177KaIHTBcAk19g9JtNc8L+zU=; b=GkREWKmsbe0avrpfFlP3VPNETdirIuiCJt1NuMl2F9S4yaT6Ged1G5HA2Qswnqk6Mc vrx1ZuOu1LF+aUocsAm3uHM9sxFTiQZQil10quufjG+hGFrQ0evNx9rMGDpshgMTQoTW 16u0+IQ9qd8hZ473kW+PvcVeqDJAazMJh4KBtYOl7f//v3Zf/oSyAfjkRB1K9xr17L7c Or89tJRAQkEMmKph20N8nqI1FZUt/DolKUJ3PhHqDPnwLnYfCA+/OjIsF9yTxpDulMRi c1ZuW+s+5XcRN4/SXB6lpI2/4HPZHnhJTZMaDR1AwZkpd44pL//guImx3VSy4H2J/ClB FwxQ== X-Gm-Message-State: AC+VfDy+f3wIRUekVwVpi3pQQ36kPtd6t6sVU0RzUpmTqEKfRkoShwJn F+oKwNjcoaZdBx6WjEB217DuTAvbs6KanVmWHHY8BrVG5Pw= X-Google-Smtp-Source: ACHHUZ6gsd4J8IBK0rJ73Wh7Utb4okruPgifrfmaBQSI7CcnW9DlOsBtPyDsUahnhoTPta9c0tOmKW5++Z/GVAkjYOM= X-Received: by 2002:aa7:d413:0:b0:516:9fef:f8e7 with SMTP id z19-20020aa7d413000000b005169feff8e7mr10897082edq.3.1686843937644; Thu, 15 Jun 2023 08:45:37 -0700 (PDT) MIME-Version: 1.0 References: <20230614180253.89958-1-jandryuk@gmail.com> <20230614180253.89958-6-jandryuk@gmail.com> <4ee7b593-6e87-25f3-83f8-6309c1cddbfc@suse.com> In-Reply-To: From: Jason Andryuk Date: Thu, 15 Jun 2023 11:45:25 -0400 Message-ID: Subject: Re: [PATCH v4 05/15] pmstat&xenpm: Re-arrage for cpufreq union To: Jan Beulich Cc: Wei Liu , Anthony PERARD , Juergen Gross , xen-devel@lists.xenproject.org Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Thu, Jun 15, 2023 at 11:22=E2=80=AFAM Jan Beulich wr= ote: > > On 15.06.2023 17:05, Jason Andryuk wrote: > > On Thu, Jun 15, 2023 at 10:38=E2=80=AFAM Jan Beulich wrote: > >> > >> On 14.06.2023 20:02, Jason Andryuk wrote: > >>> Move some code around now that common xen_sysctl_pm_op get_para field= s > >>> are together. In particular, the scaling governor information like > >>> scaling_available_governors is inside the union, so it is not always > >>> available. > >>> > >>> With that, gov_num may be 0, so bounce buffer handling needs > >>> to be modified. > >>> > >>> scaling_governor won't be filled for hwp, so this will simplify the > >>> change when it is introduced. > >> > >> While I think this suitably describes the tool stack side changes, ... > >> > >>> --- a/xen/drivers/acpi/pmstat.c > >>> +++ b/xen/drivers/acpi/pmstat.c > >>> @@ -239,11 +239,24 @@ static int get_cpufreq_para(struct xen_sysctl_p= m_op *op) > >>> if ( ret ) > >>> return ret; > >>> > >>> + op->u.get_para.cpuinfo_cur_freq =3D > >>> + cpufreq_driver.get ? cpufreq_driver.get(op->cpuid) : policy-= >cur; > >>> + op->u.get_para.cpuinfo_max_freq =3D policy->cpuinfo.max_freq; > >>> + op->u.get_para.cpuinfo_min_freq =3D policy->cpuinfo.min_freq; > >>> + op->u.get_para.turbo_enabled =3D cpufreq_get_turbo_status(op->cp= uid); > >>> + > >>> + if ( cpufreq_driver.name[0] ) > >>> + strlcpy(op->u.get_para.scaling_driver, > >>> + cpufreq_driver.name, CPUFREQ_NAME_LEN); > >>> + else > >>> + strlcpy(op->u.get_para.scaling_driver, "Unknown", CPUFREQ_NA= ME_LEN); > >>> + > >>> if ( !(scaling_available_governors =3D > >>> xzalloc_array(char, gov_num * CPUFREQ_NAME_LEN)) ) > >>> return -ENOMEM; > >>> - if ( (ret =3D read_scaling_available_governors(scaling_available= _governors, > >>> - gov_num * CPUFREQ_NAME_LEN * sizeof(char))) ) > >>> + if ( (ret =3D read_scaling_available_governors( > >>> + scaling_available_governors, > >>> + gov_num * CPUFREQ_NAME_LEN * sizeof(char))) ) > >>> { > >>> xfree(scaling_available_governors); > >>> return ret; > >>> @@ -254,26 +267,16 @@ static int get_cpufreq_para(struct xen_sysctl_p= m_op *op) > >>> if ( ret ) > >>> return ret; > >>> > >>> - op->u.get_para.cpuinfo_cur_freq =3D > >>> - cpufreq_driver.get ? cpufreq_driver.get(op->cpuid) : policy-= >cur; > >>> - op->u.get_para.cpuinfo_max_freq =3D policy->cpuinfo.max_freq; > >>> - op->u.get_para.cpuinfo_min_freq =3D policy->cpuinfo.min_freq; > >>> - > >>> op->u.get_para.u.s.scaling_cur_freq =3D policy->cur; > >>> op->u.get_para.u.s.scaling_max_freq =3D policy->max; > >>> op->u.get_para.u.s.scaling_min_freq =3D policy->min; > >>> > >>> - if ( cpufreq_driver.name[0] ) > >>> - strlcpy(op->u.get_para.scaling_driver, > >>> - cpufreq_driver.name, CPUFREQ_NAME_LEN); > >>> - else > >>> - strlcpy(op->u.get_para.scaling_driver, "Unknown", CPUFREQ_NA= ME_LEN); > >>> - > >>> if ( policy->governor->name[0] ) > >>> strlcpy(op->u.get_para.u.s.scaling_governor, > >>> policy->governor->name, CPUFREQ_NAME_LEN); > >>> else > >>> - strlcpy(op->u.get_para.u.s.scaling_governor, "Unknown", CPUF= REQ_NAME_LEN); > >>> + strlcpy(op->u.get_para.u.s.scaling_governor, "Unknown", > >>> + CPUFREQ_NAME_LEN); > >>> > >>> /* governor specific para */ > >>> if ( !strncasecmp(op->u.get_para.u.s.scaling_governor, > >>> @@ -291,7 +294,6 @@ static int get_cpufreq_para(struct xen_sysctl_pm_= op *op) > >>> &op->u.get_para.u.s.u.ondemand.sampling_rate, > >>> &op->u.get_para.u.s.u.ondemand.up_threshold); > >>> } > >>> - op->u.get_para.turbo_enabled =3D cpufreq_get_turbo_status(op->cp= uid); > >>> > >>> return ret; > >>> } > >> > >> ... all I see on the hypervisor side is re-ordering of steps and re-fo= rmatting > >> of over-long lines. It's not clear to me why what you do is necessary = for your > >> purpose. > > > > The purpose was to move accesses to the nested struct and union > > "op->u.get_para.u.s.u" to the end of the function, and the accesses to > > common fields (e.g. op->u.get_para.turbo_enabled) earlier. This > > simplifies the changes in "cpufreq: Export HWP parameters to userspace > > as CPPC". > > Could you mention this as (part of) the purpose in the description? Certainly. > > These governor fields get indented, and that needed some re-formatting. > > Would it maybe make sense to split the function? While that could be done, I don't think it's needed. Maybe you'll feel otherwise after you look at "cpufreq: Export HWP parameters to userspace as CPPC". Regards, Jason From xen-devel-bounces@lists.xenproject.org Thu Jun 15 15:48:48 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 15 Jun 2023 15:48:48 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549717.858410 (Exim 4.92) (envelope-from ) id 1q9pDH-0006b7-2k; Thu, 15 Jun 2023 15:48:43 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549717.858410; Thu, 15 Jun 2023 15:48:43 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9pDG-0006a1-Vg; Thu, 15 Jun 2023 15:48:42 +0000 Received: by outflank-mailman (input) for mailman id 549717; Thu, 15 Jun 2023 15:48:42 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9pDG-0006RY-29 for xen-devel@lists.xenproject.org; Thu, 15 Jun 2023 15:48:42 +0000 Received: from mail-wr1-x429.google.com (mail-wr1-x429.google.com [2a00:1450:4864:20::429]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 194a138e-0b94-11ee-8611-37d641c3527e; Thu, 15 Jun 2023 17:48:40 +0200 (CEST) Received: by mail-wr1-x429.google.com with SMTP id ffacd0b85a97d-307d20548adso5971786f8f.0 for ; Thu, 15 Jun 2023 08:48:40 -0700 (PDT) Received: from localhost.localdomain (default-46-102-197-194.interdsl.co.uk. [46.102.197.194]) by smtp.gmail.com with ESMTPSA id e10-20020a056000194a00b0030497b3224bsm21374699wry.64.2023.06.15.08.48.39 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 15 Jun 2023 08:48:39 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 194a138e-0b94-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cloud.com; s=cloud; t=1686844119; x=1689436119; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=hW/Gx0/gWuVvgcbydVmma7SPTfd/FqCS3V8cKgHysUU=; b=euaZ9xVkCiDKzfJx4HtgNdKwXIAAMf/7Yr0O8yib05CeCA4cKaMQ3innKj8xLI5li+ oggIbJRLorHhk910Vnv6+EjP36br8jWjjeYd6ZO8SskaPuOrRtq4lZwcnPxs2KA84vt5 gKsv/9J8B04YWqs3b4wLLKnuw4QD6bln6oL+k= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686844119; x=1689436119; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=hW/Gx0/gWuVvgcbydVmma7SPTfd/FqCS3V8cKgHysUU=; b=UbrIV8S/Dr/CKWZ4Xwsia0aR05tevhdYoe/4HikpyX6yHHwLUdW9TDpkzUUmb7FS8s V/gUW6b6GK2inP9Aff03SbEzyqtTA2yHHtGTCCUjtaSf5h/v6UOo66mIoaqSOtKoKsbL 7/Dano0JChBvjPeMPRNq3B7rQtZG9ASfoObGe1zSbGUiacPjXyTCjWrPyxoZZlVLvZFu 2ZAofYiec0hz/n/8Vd6pShqeA/1CL25vVISu1xv7VZfgotBXZtMeVwzju4rYUdNL5yj9 mcr3FpmhY8cG+wrgyrjK85BmG1VkuOZ5xojirzpR6i0i/wZd46grPf9q+19F9AKLCGbq /rFA== X-Gm-Message-State: AC+VfDyDaSb6mjwLJ1yvWK4FfizmwFEB1U8u1doQTKfVk8TpstpDuOxa +ImzMbenyKkRFWbjNn7cYLf7luJLSxmNsRI9uTI= X-Google-Smtp-Source: ACHHUZ4Z9FQLS5JRGxg0W/2DYdAKIjM0uoPCaHcxYEAGtC3t9TVrbUiMZmdnhBXDUnQSiJpPEC+6eQ== X-Received: by 2002:a5d:4e05:0:b0:304:8149:239b with SMTP id p5-20020a5d4e05000000b003048149239bmr10956632wrt.50.1686844119748; Thu, 15 Jun 2023 08:48:39 -0700 (PDT) From: Alejandro Vallejo To: Xen-devel Cc: Alejandro Vallejo , Jan Beulich , Andrew Cooper , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Wei Liu Subject: [PATCH v3 2/5] x86/microcode: Create per-vendor microcode_ops builders Date: Thu, 15 Jun 2023 16:48:31 +0100 Message-Id: <20230615154834.959-3-alejandro.vallejo@cloud.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20230615154834.959-1-alejandro.vallejo@cloud.com> References: <20230615154834.959-1-alejandro.vallejo@cloud.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Replace the ucode_ops assignments in core.c for per-vendor calls. This is in preparation for another patch that adds Intel-specific conditions. While moving the code around, also remove the family check on Intel, as microcode loading is present on every Intel 64 machine. Signed-off-by: Alejandro Vallejo --- v3: * Subsumes v2/patch1 * Removes previous long comment on rationale for skipping family checks (Jan/Andrew) * Isolates vendor-specific code in ${VENDOR}.c (Jan, from v2/patch4) --- xen/arch/x86/cpu/microcode/amd.c | 16 ++++++++++------ xen/arch/x86/cpu/microcode/core.c | 10 +++------- xen/arch/x86/cpu/microcode/intel.c | 13 +++++++------ xen/arch/x86/cpu/microcode/private.h | 19 ++++++++++++++++++- 4 files changed, 38 insertions(+), 20 deletions(-) diff --git a/xen/arch/x86/cpu/microcode/amd.c b/xen/arch/x86/cpu/microcode/amd.c index a9a5557835..7c9f311454 100644 --- a/xen/arch/x86/cpu/microcode/amd.c +++ b/xen/arch/x86/cpu/microcode/amd.c @@ -432,9 +432,13 @@ static struct microcode_patch *cf_check cpu_request_microcode( return patch; } -const struct microcode_ops __initconst_cf_clobber amd_ucode_ops = { - .cpu_request_microcode = cpu_request_microcode, - .collect_cpu_info = collect_cpu_info, - .apply_microcode = apply_microcode, - .compare_patch = compare_patch, -}; +void __init amd_get_ucode_ops(struct microcode_ops *ops) +{ + if ( boot_cpu_data.x86 < 0x10 ) + return; + + ops->cpu_request_microcode = cpu_request_microcode; + ops->collect_cpu_info = collect_cpu_info; + ops->apply_microcode = apply_microcode; + ops->compare_patch = compare_patch; +} diff --git a/xen/arch/x86/cpu/microcode/core.c b/xen/arch/x86/cpu/microcode/core.c index df7e1df870..530e3e8267 100644 --- a/xen/arch/x86/cpu/microcode/core.c +++ b/xen/arch/x86/cpu/microcode/core.c @@ -845,19 +845,15 @@ static int __init early_microcode_update_cpu(void) int __init early_microcode_init(unsigned long *module_map, const struct multiboot_info *mbi) { - const struct cpuinfo_x86 *c = &boot_cpu_data; int rc = 0; - switch ( c->x86_vendor ) + switch ( boot_cpu_data.x86_vendor ) { case X86_VENDOR_AMD: - if ( c->x86 >= 0x10 ) - ucode_ops = amd_ucode_ops; + amd_get_ucode_ops(&ucode_ops); break; - case X86_VENDOR_INTEL: - if ( c->x86 >= 6 ) - ucode_ops = intel_ucode_ops; + intel_get_ucode_ops(&ucode_ops); break; } diff --git a/xen/arch/x86/cpu/microcode/intel.c b/xen/arch/x86/cpu/microcode/intel.c index 8d4d6574aa..a99e402b98 100644 --- a/xen/arch/x86/cpu/microcode/intel.c +++ b/xen/arch/x86/cpu/microcode/intel.c @@ -385,9 +385,10 @@ static struct microcode_patch *cf_check cpu_request_microcode( return patch; } -const struct microcode_ops __initconst_cf_clobber intel_ucode_ops = { - .cpu_request_microcode = cpu_request_microcode, - .collect_cpu_info = collect_cpu_info, - .apply_microcode = apply_microcode, - .compare_patch = compare_patch, -}; +void __init intel_get_ucode_ops(struct microcode_ops *ops) +{ + ops->cpu_request_microcode = cpu_request_microcode; + ops->collect_cpu_info = collect_cpu_info; + ops->apply_microcode = apply_microcode; + ops->compare_patch = compare_patch; +} diff --git a/xen/arch/x86/cpu/microcode/private.h b/xen/arch/x86/cpu/microcode/private.h index 626aeb4d08..13f0c7fb8e 100644 --- a/xen/arch/x86/cpu/microcode/private.h +++ b/xen/arch/x86/cpu/microcode/private.h @@ -60,6 +60,23 @@ struct microcode_ops { const struct microcode_patch *new, const struct microcode_patch *old); }; -extern const struct microcode_ops amd_ucode_ops, intel_ucode_ops; +/** + * Retrieve the vendor-specific microcode management handlers + * + * Note that this is not an static set of handlers and may change from + * system to system depending on the presence of certain runtime features. + * even for the same + * + * - If the system has no microcode facilities, no handler is set. + * - If the system has unrestricted microcode facilities, all handlers + * are set + * - If the system has microcode facilities, but they can't be used to + * update the revision, then all handlers except for apply_microcode() + * are set + * + * @param[out] ops Set of vendor-specific microcode handlers to overwrite + */ +void intel_get_ucode_ops(struct microcode_ops *ops); +void amd_get_ucode_ops(struct microcode_ops *ops); #endif /* ASM_X86_MICROCODE_PRIVATE_H */ -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 15 15:48:48 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 15 Jun 2023 15:48:48 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549715.858401 (Exim 4.92) (envelope-from ) id 1q9pDG-0006Rq-IA; Thu, 15 Jun 2023 15:48:42 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549715.858401; Thu, 15 Jun 2023 15:48:42 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9pDG-0006Rj-E0; Thu, 15 Jun 2023 15:48:42 +0000 Received: by outflank-mailman (input) for mailman id 549715; Thu, 15 Jun 2023 15:48:40 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9pDE-0006RS-Kd for xen-devel@lists.xenproject.org; Thu, 15 Jun 2023 15:48:40 +0000 Received: from mail-wm1-x32f.google.com (mail-wm1-x32f.google.com [2a00:1450:4864:20::32f]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 18e765e1-0b94-11ee-b232-6b7b168915f2; Thu, 15 Jun 2023 17:48:39 +0200 (CEST) Received: by mail-wm1-x32f.google.com with SMTP id 5b1f17b1804b1-3f7fcdc7f7fso7359415e9.0 for ; Thu, 15 Jun 2023 08:48:39 -0700 (PDT) Received: from localhost.localdomain (default-46-102-197-194.interdsl.co.uk. [46.102.197.194]) by smtp.gmail.com with ESMTPSA id e10-20020a056000194a00b0030497b3224bsm21374699wry.64.2023.06.15.08.48.38 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 15 Jun 2023 08:48:38 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 18e765e1-0b94-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cloud.com; s=cloud; t=1686844119; x=1689436119; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=lhal1etJcoQVv2Xj28gXUSWBqPiytpkGg3ZC25OkTWA=; b=CJKdztpwLwg32RhJ+fc1jM+0mM9Fs37dYwmugnDGjfuYVNyiVEjIn6s/GpP6t1BWuz I4n7Ve2H+GU1HlVDbkcd7/8KgNRpkYRuN7ZvUOqDeMW0DGTc2jOhnO69XwGF+g6SpSpu LrLDwGG1DB+o49pWoHInDSRqHyhdfexDUOj7o= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686844119; x=1689436119; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=lhal1etJcoQVv2Xj28gXUSWBqPiytpkGg3ZC25OkTWA=; b=TmYzwuLiPq4qF60dlx2kjgX3zCG4/yVvgr4Oe24aWcW830Sn8NGbhI+O4u3X2rg3wg aRsihOMPTsPjlc8Cdh9pCRKrKkwnKiHuj/cXuOn3UtNyzCPBirJ9uJJWWJFofY1Xux2r J0+eHphD8vmYblzRKkody8qnLLTKSWgXO6RCbNpRUpIyI9nLG03fTYph13HOGo+DsZa+ QekI8vi6v6vMVzSwS0eETjQ6jiOHgQkK8h9PavXcY5PQqqUozOLE7xVuU5ct+Vm2iXqd iSjRvkt+0joDUwiqxd9n1DzXPHBa2KBLBXMNympYHOA/2dLErBrhLxfDKBAzYUrF40fb ly3g== X-Gm-Message-State: AC+VfDxMkHB9boxkFJYVDW5wrf8bkWjsHsOnAYN0KSxDhDxQigoct0DR 7w9LdsWY0jD+X2+zUiD5DgU9Okn9qLMLKgtdOYU= X-Google-Smtp-Source: ACHHUZ5pk6DdQICbIzSsGjHZ33b6KNwddueizS4fOfbWOZhYaSWZLU0xq3PVlUBAFWdH0aoj2vDItg== X-Received: by 2002:a5d:4687:0:b0:30f:ba3a:85c5 with SMTP id u7-20020a5d4687000000b0030fba3a85c5mr4532927wrq.25.1686844119084; Thu, 15 Jun 2023 08:48:39 -0700 (PDT) From: Alejandro Vallejo To: Xen-devel Cc: Alejandro Vallejo , Jan Beulich , Andrew Cooper , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Wei Liu Subject: [PATCH v3 1/5] x86/microcode: Allow reading microcode revision even if it can't be updated Date: Thu, 15 Jun 2023 16:48:30 +0100 Message-Id: <20230615154834.959-2-alejandro.vallejo@cloud.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20230615154834.959-1-alejandro.vallejo@cloud.com> References: <20230615154834.959-1-alejandro.vallejo@cloud.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit The code currently assumes all microcode handlers are set or none are. That won't be the case in a future patch, as apply_microcode() may not be set while the others are. Hence, this patch allows reading the microcode revision even if updating it is unavailable. Signed-off-by: Alejandro Vallejo --- v3: * Hunks taken from v2/patch4 (Jan) --- xen/arch/x86/cpu/microcode/core.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/xen/arch/x86/cpu/microcode/core.c b/xen/arch/x86/cpu/microcode/core.c index e65af4b82e..df7e1df870 100644 --- a/xen/arch/x86/cpu/microcode/core.c +++ b/xen/arch/x86/cpu/microcode/core.c @@ -750,11 +750,12 @@ __initcall(microcode_init); /* Load a cached update to current cpu */ int microcode_update_one(void) { + if ( ucode_ops.collect_cpu_info ) + alternative_vcall(ucode_ops.collect_cpu_info); + if ( !ucode_ops.apply_microcode ) return -EOPNOTSUPP; - alternative_vcall(ucode_ops.collect_cpu_info); - return microcode_update_cpu(NULL); } @@ -860,6 +861,9 @@ int __init early_microcode_init(unsigned long *module_map, break; } + if ( ucode_ops.collect_cpu_info ) + ucode_ops.collect_cpu_info(); + if ( !ucode_ops.apply_microcode ) { printk(XENLOG_WARNING "Microcode loading not available\n"); @@ -868,8 +872,6 @@ int __init early_microcode_init(unsigned long *module_map, microcode_grab_module(module_map, mbi); - ucode_ops.collect_cpu_info(); - if ( ucode_mod.mod_end || ucode_blob.size ) rc = early_microcode_update_cpu(); -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 15 15:48:48 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 15 Jun 2023 15:48:48 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549716.858405 (Exim 4.92) (envelope-from ) id 1q9pDG-0006Uy-Q1; Thu, 15 Jun 2023 15:48:42 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549716.858405; Thu, 15 Jun 2023 15:48:42 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9pDG-0006Tx-Ln; Thu, 15 Jun 2023 15:48:42 +0000 Received: by outflank-mailman (input) for mailman id 549716; Thu, 15 Jun 2023 15:48:41 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9pDF-0006RY-CJ for xen-devel@lists.xenproject.org; Thu, 15 Jun 2023 15:48:41 +0000 Received: from mail-wr1-x431.google.com (mail-wr1-x431.google.com [2a00:1450:4864:20::431]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 189f4e00-0b94-11ee-8611-37d641c3527e; Thu, 15 Jun 2023 17:48:39 +0200 (CEST) Received: by mail-wr1-x431.google.com with SMTP id ffacd0b85a97d-30c4c1fd511so7560183f8f.1 for ; Thu, 15 Jun 2023 08:48:39 -0700 (PDT) Received: from localhost.localdomain (default-46-102-197-194.interdsl.co.uk. [46.102.197.194]) by smtp.gmail.com with ESMTPSA id e10-20020a056000194a00b0030497b3224bsm21374699wry.64.2023.06.15.08.48.37 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 15 Jun 2023 08:48:38 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 189f4e00-0b94-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cloud.com; s=cloud; t=1686844118; x=1689436118; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=WqvJ9lDw5wAI+BX6sbDIqPcE8HO42JuEoFJ4XXLoAX4=; b=XYU46Ecf8oPKWIAttJRbkJIDmE7B4Mgbs+t0+mp19FWdQeVacmPVbbxPq4bYIWWOUD 7fMtacvHGoDNXqzaYw8r1vx3Z7MMc4CfpJXm58qvUjsog5po8NpX/ChfP9w/QYm3fl+P 4rMzRT8TjSjqWa8IKunrv2TIOePWWyaqiG2bk= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686844118; x=1689436118; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=WqvJ9lDw5wAI+BX6sbDIqPcE8HO42JuEoFJ4XXLoAX4=; b=PYV9BW+h20XfMyMjj1+sp52ybRBhyXfiU/slt7A/ue2PWe6NGqzXbYxAPg4uc42oIZ fwQ61Nz8EAzXzmy+Iduf4Gc0aIO/NXMZF00C6EG6oZmVLJWUiqdYJ0xO7FveQCZeDsBk UMTCkN1o7BBmIElRrSTc3EvUQhuJ+cFN2z6XhcbCIaiVongBF7RP0DCY3T9uzv5ozMO+ Fn57HYRjhvBRNcKFpzbZeBMj0QsbzJWoaFzk6re0BuNTfjfTP5BNUjhi6t9r+u5yS4FF bCRIVDdTbEqZrB5pAxjcMYtkX9j5yDdGr5o0955jiRf4LT//znNswFyhZirnkgrFGLDC 1vDw== X-Gm-Message-State: AC+VfDyuIdVc3X33X3OceNSQDe2mXYm8vLd4tdGFDAVHqpaO/uM/tcPz A6/53RnmDYa8m5nS72OzJgbfVFDdfB/D0yrhK2I= X-Google-Smtp-Source: ACHHUZ5m4IR9l1MMO7wl+JUYZSl8XJRtMh12kHAJgktepYIzPRZ9w4YiZ8UVQ9d0uAk4BIKUSEqlXA== X-Received: by 2002:a5d:54d2:0:b0:311:13a7:2d87 with SMTP id x18-20020a5d54d2000000b0031113a72d87mr2122511wrv.66.1686844118433; Thu, 15 Jun 2023 08:48:38 -0700 (PDT) From: Alejandro Vallejo To: Xen-devel Cc: Alejandro Vallejo , Jan Beulich , Andrew Cooper , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Wei Liu Subject: [PATCH v2 0/5] Prevent attempting updates known to fail Date: Thu, 15 Jun 2023 16:48:29 +0100 Message-Id: <20230615154834.959-1-alejandro.vallejo@cloud.com> X-Mailer: git-send-email 2.34.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit v3: * Lots of hunks moved around. Individually mentioned in each patch * Removed a redundant check * Ignore microcode interface if the revision is -1 * Perform the DIS_MCU_LOAD checks during init rather than apply time Under certain conditions a CPU may not be able to perform microcode updates even if hardware exists to that effect. In particular: * If Xen runs under certain hypervisors they won't allow microcode updates, and will signal this fact by reporting a microcode revision of -1. * If the DIS_MCU_LOAD bit is set, which is expected in some baremetal clouds where the owner may not trust the tenant, then the CPU is not capable of loading new microcode. This series adds logic so that in both of these cases we don't needlessly attempt updates that are not going to succeed. Patch summary: Patch 1 Does the refactors to allow collecting cpu info on systems with microcode updates disabled Patch 2 Isolates early_microcode_init() per-vendor logic in per-vendor functions Patch 3 Recognizes microcode revision of -1 as a hint meaning "don't use the microcode interface". Patch 4 Moves the MSR_ARCH_CAPS read from tsx_init() to early_microcode_init() Patch 5 Adds the logic to detect microcode updates being disabled on Intel. Alejandro Vallejo (5): x86/microcode: Allow reading microcode revision even if it can't be updated x86/microcode: Create per-vendor microcode_ops builders x86/microcode: Ignore microcode loading interface for revision = -1 x86: Read MSR_ARCH_CAPS immediately after early_microcode_init() x86/microcode: Disable microcode update handler if DIS_MCU_UPDATE is set xen/arch/x86/cpu/common.c | 5 ++++ xen/arch/x86/cpu/microcode/amd.c | 16 +++++++---- xen/arch/x86/cpu/microcode/core.c | 41 ++++++++++++++++++++------- xen/arch/x86/cpu/microcode/intel.c | 27 ++++++++++++++---- xen/arch/x86/cpu/microcode/private.h | 19 ++++++++++++- xen/arch/x86/include/asm/cpufeature.h | 1 + xen/arch/x86/include/asm/msr-index.h | 5 ++++ xen/arch/x86/tsx.c | 15 ++-------- 8 files changed, 93 insertions(+), 36 deletions(-) -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 15 15:48:49 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 15 Jun 2023 15:48:49 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549718.858431 (Exim 4.92) (envelope-from ) id 1q9pDI-000799-Gf; Thu, 15 Jun 2023 15:48:44 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549718.858431; Thu, 15 Jun 2023 15:48:44 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9pDI-00077B-BT; Thu, 15 Jun 2023 15:48:44 +0000 Received: by outflank-mailman (input) for mailman id 549718; Thu, 15 Jun 2023 15:48:42 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9pDG-0006RS-HC for xen-devel@lists.xenproject.org; Thu, 15 Jun 2023 15:48:42 +0000 Received: from mail-wm1-x32e.google.com (mail-wm1-x32e.google.com [2a00:1450:4864:20::32e]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 1a3a6748-0b94-11ee-b232-6b7b168915f2; Thu, 15 Jun 2023 17:48:41 +0200 (CEST) Received: by mail-wm1-x32e.google.com with SMTP id 5b1f17b1804b1-3f8d176396bso19742675e9.2 for ; Thu, 15 Jun 2023 08:48:41 -0700 (PDT) Received: from localhost.localdomain (default-46-102-197-194.interdsl.co.uk. [46.102.197.194]) by smtp.gmail.com with ESMTPSA id e10-20020a056000194a00b0030497b3224bsm21374699wry.64.2023.06.15.08.48.40 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 15 Jun 2023 08:48:40 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 1a3a6748-0b94-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cloud.com; s=cloud; t=1686844121; x=1689436121; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=PygkzDMarvKkBrBEGn4BWQS9IKMe1k1LLgAi19GYhP8=; b=HPzd4Zyex9as+U9ydNDI3tGQtwRCTB7c7d5MjHU1IH8Z7jJhGrRWMjIL7+bYYRmPZi 2/FVV3+PCcnsuD4nA9pUUZsazPWwBkfMA/NyyuLkbZLgWUjkwPp2kJke7eW5lmbkBPvr 9KVvJBUONVVNh0pyhy8zuMWPCpTfUYh2u/Ubk= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686844121; x=1689436121; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=PygkzDMarvKkBrBEGn4BWQS9IKMe1k1LLgAi19GYhP8=; b=X/Krc+wz3zqFs9MHSjFlwCKPF5DQ0pGE45nsl7nBR1+R8T8QsSuN1zuyrkVlZmP2ZA r6AE6PrxpbSoX6E6Bh5pTBTvTsL4fOXvEXF9kcJ4I5HC6CoBM49FS3aObEZnnecNeIkq qw2RR9M4J1bCAU/sqNzRQIqQZhPq2zlhCN5BUxbx0EbVV71Wj0FkyPMZ3Mdh66mzd/mB YdQuLPVf6ZEbuq/29G+zCd86+sVODiOIiFwBc/GExDBUvqPtlU/BGekpqMho0/c5irHb m2HNhvx/eNIcuLfap0KIfi/ZBEZ6i58sucGO037LlzRamF6eqiRWCmd0Htm7DHkD9U7V e8Uw== X-Gm-Message-State: AC+VfDxaGYxmAhKomM9SgnlLQ8rMBNqNtKDprWU0DVomBWPBfshKZvB/ K5Y0633ZclIfaqlebGIwWwPo0jBv5EIv5jcs/AM= X-Google-Smtp-Source: ACHHUZ7u+G2JRXo+ew0FlGXSbGfZJGVxMwXLRreh9PhyU0vbxEMYOMEJcEb2FgtgArGvvYTQMrt1/w== X-Received: by 2002:a5d:6b0f:0:b0:311:17ae:ddbf with SMTP id v15-20020a5d6b0f000000b0031117aeddbfmr1615595wrw.51.1686844121294; Thu, 15 Jun 2023 08:48:41 -0700 (PDT) From: Alejandro Vallejo To: Xen-devel Cc: Alejandro Vallejo , Jan Beulich , Andrew Cooper , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Wei Liu Subject: [PATCH v3 4/5] x86: Read MSR_ARCH_CAPS immediately after early_microcode_init() Date: Thu, 15 Jun 2023 16:48:33 +0100 Message-Id: <20230615154834.959-5-alejandro.vallejo@cloud.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20230615154834.959-1-alejandro.vallejo@cloud.com> References: <20230615154834.959-1-alejandro.vallejo@cloud.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Move MSR_ARCH_CAPS read code from tsx_init() to immediately after the early microcode update. This helps keep the reload closer to its cause and is the earliest point we can read it, as it might be exposed only after a microcode update. Signed-off-by: Alejandro Vallejo --- v3: * Replaces v2/patch2. Moved after the "rev == ~0" check (Andrew) --- xen/arch/x86/cpu/microcode/core.c | 13 +++++++++++++ xen/arch/x86/tsx.c | 15 +++------------ 2 files changed, 16 insertions(+), 12 deletions(-) diff --git a/xen/arch/x86/cpu/microcode/core.c b/xen/arch/x86/cpu/microcode/core.c index 1554fa38eb..ef3c94018c 100644 --- a/xen/arch/x86/cpu/microcode/core.c +++ b/xen/arch/x86/cpu/microcode/core.c @@ -879,5 +879,18 @@ int __init early_microcode_init(unsigned long *module_map, if ( ucode_mod.mod_end || ucode_blob.size ) rc = early_microcode_update_cpu(); + /* + * We might have exposed MSR_ARCH_CAPS after the microcode update. + * Reload relevant fields in boot_cpu_data if so because they are + * needed in tsx_init() + */ + if ( boot_cpu_data.cpuid_level >= 7 ) + boot_cpu_data.x86_capability[FEATURESET_7d0] + = cpuid_count_edx(7, 0); + if ( cpu_has_arch_caps ) + rdmsr(MSR_ARCH_CAPABILITIES, + boot_cpu_data.x86_capability[FEATURESET_m10Al], + boot_cpu_data.x86_capability[FEATURESET_m10Ah]); + return rc; } diff --git a/xen/arch/x86/tsx.c b/xen/arch/x86/tsx.c index 80c6f4cedd..11e9471180 100644 --- a/xen/arch/x86/tsx.c +++ b/xen/arch/x86/tsx.c @@ -39,9 +39,9 @@ void tsx_init(void) static bool __read_mostly once; /* - * This function is first called between microcode being loaded, and CPUID - * being scanned generally. Read into boot_cpu_data.x86_capability[] for - * the cpu_has_* bits we care about using here. + * This function is first called between microcode being loaded, and + * CPUID being scanned generally. early_microcode_init() has already + * prepared the feature bits needed here after the microcode update. */ if ( unlikely(!once) ) { @@ -49,15 +49,6 @@ void tsx_init(void) once = true; - if ( boot_cpu_data.cpuid_level >= 7 ) - boot_cpu_data.x86_capability[FEATURESET_7d0] - = cpuid_count_edx(7, 0); - - if ( cpu_has_arch_caps ) - rdmsr(MSR_ARCH_CAPABILITIES, - boot_cpu_data.x86_capability[FEATURESET_m10Al], - boot_cpu_data.x86_capability[FEATURESET_m10Ah]); - has_rtm_always_abort = cpu_has_rtm_always_abort; if ( cpu_has_tsx_ctrl && cpu_has_srbds_ctrl ) -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 15 15:48:50 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 15 Jun 2023 15:48:50 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549719.858436 (Exim 4.92) (envelope-from ) id 1q9pDI-0007Eo-Tm; Thu, 15 Jun 2023 15:48:44 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549719.858436; Thu, 15 Jun 2023 15:48:44 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9pDI-0007Dv-Nj; Thu, 15 Jun 2023 15:48:44 +0000 Received: by outflank-mailman (input) for mailman id 549719; Thu, 15 Jun 2023 15:48:43 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9pDH-0006RY-2C for xen-devel@lists.xenproject.org; Thu, 15 Jun 2023 15:48:43 +0000 Received: from mail-wr1-x429.google.com (mail-wr1-x429.google.com [2a00:1450:4864:20::429]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 19d816cf-0b94-11ee-8611-37d641c3527e; Thu, 15 Jun 2023 17:48:41 +0200 (CEST) Received: by mail-wr1-x429.google.com with SMTP id ffacd0b85a97d-30aea656e36so5973964f8f.1 for ; Thu, 15 Jun 2023 08:48:41 -0700 (PDT) Received: from localhost.localdomain (default-46-102-197-194.interdsl.co.uk. [46.102.197.194]) by smtp.gmail.com with ESMTPSA id e10-20020a056000194a00b0030497b3224bsm21374699wry.64.2023.06.15.08.48.39 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 15 Jun 2023 08:48:39 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 19d816cf-0b94-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cloud.com; s=cloud; t=1686844120; x=1689436120; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=WnBLCpBRw4FnACMA6JimLolA7wsQAmylgXv84AWmx3g=; b=EOe8C24/Hha9iJPhezP4egK6yCdGlX22P+KZyztDJ1gAfauTk3KiSU/GAMWBWK/1OZ 7qTMvvNL+03KOvJ8cUg3QS2mBasXeHqgaak5RsqyPmUdu4PDFgdfTAYKPg/rn1y6Q8T0 oXdfp8NqNEcWCUGVNavjXvUlL2XvW+Tvy40SI= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686844120; x=1689436120; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=WnBLCpBRw4FnACMA6JimLolA7wsQAmylgXv84AWmx3g=; b=l8Yk9n1mYWfU6h3/M0xYvpmo5Vq1po8xKr/8PApokvmlCjOQG7jUm+iOAbeFxtd2rz Bg7DFDuGFgzYh8wASVzriuLzkx0v9MeHAPanT1v8EkRW8FH7SuMhmt30SdP9Yh/48o+o zRatikvZ0e7jdrSL/eWBNhDrVtpwIaHIq2OisXMx7cwNXK5vrd/0z/KdZjfgq/lBJG17 l83jXb21Sonj4L8qr2xo4aGgybiaFCF0g9lTxMKVWzbiZbu/QPUYEDCvuu12cv8vfwgZ yAOnGq1avEyAyqVnkH6tVdO0ivYUDVCdyqfrjWEMJ87u3qUyREILitEvgm1ZPVXJSLp+ d98g== X-Gm-Message-State: AC+VfDx7kOvAbbKsf4lVySchq8UfQDyv9Y8N1JvHaoyFQrKlWkSMhdYN RonMDNSyVOy5nHFNj7ahqYp0tJBa2OMSHZb33Oc= X-Google-Smtp-Source: ACHHUZ7xfYEs4frXBMKRcOHNEZ4p3qSPH+O9sVU0knfUAn3HS5x+N+3ZXdmYbnu/CAb/i7aBM0xL7g== X-Received: by 2002:adf:eb8d:0:b0:309:1532:8287 with SMTP id t13-20020adfeb8d000000b0030915328287mr11785575wrn.19.1686844120373; Thu, 15 Jun 2023 08:48:40 -0700 (PDT) From: Alejandro Vallejo To: Xen-devel Cc: Alejandro Vallejo , Jan Beulich , Andrew Cooper , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Wei Liu Subject: [PATCH v3 3/5] x86/microcode: Ignore microcode loading interface for revision = -1 Date: Thu, 15 Jun 2023 16:48:32 +0100 Message-Id: <20230615154834.959-4-alejandro.vallejo@cloud.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20230615154834.959-1-alejandro.vallejo@cloud.com> References: <20230615154834.959-1-alejandro.vallejo@cloud.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Some hypervisors report ~0 as the microcode revision to mean "don't issue microcode updates". Ignore the microcode loading interface in that case. Signed-off-by: Alejandro Vallejo --- v3: * Moved from v2/patch3 (Andrew) --- xen/arch/x86/cpu/microcode/core.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/xen/arch/x86/cpu/microcode/core.c b/xen/arch/x86/cpu/microcode/core.c index 530e3e8267..1554fa38eb 100644 --- a/xen/arch/x86/cpu/microcode/core.c +++ b/xen/arch/x86/cpu/microcode/core.c @@ -860,6 +860,14 @@ int __init early_microcode_init(unsigned long *module_map, if ( ucode_ops.collect_cpu_info ) ucode_ops.collect_cpu_info(); + /* + * Some hypervisors deliberately report a microcode revision of -1 to + * mean that they will not accept microcode updates. We take the hint + * and ignore the microcode interface in that case. + */ + if ( this_cpu(cpu_sig).rev == ~0 ) + ucode_ops.apply_microcode = NULL; + if ( !ucode_ops.apply_microcode ) { printk(XENLOG_WARNING "Microcode loading not available\n"); -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 15 15:48:50 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 15 Jun 2023 15:48:50 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549720.858442 (Exim 4.92) (envelope-from ) id 1q9pDJ-0007LR-9L; Thu, 15 Jun 2023 15:48:45 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549720.858442; Thu, 15 Jun 2023 15:48:45 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9pDJ-0007Jo-2O; Thu, 15 Jun 2023 15:48:45 +0000 Received: by outflank-mailman (input) for mailman id 549720; Thu, 15 Jun 2023 15:48:43 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9pDH-0006RS-8t for xen-devel@lists.xenproject.org; Thu, 15 Jun 2023 15:48:43 +0000 Received: from mail-lj1-x22e.google.com (mail-lj1-x22e.google.com [2a00:1450:4864:20::22e]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 1aaf2a78-0b94-11ee-b232-6b7b168915f2; Thu, 15 Jun 2023 17:48:42 +0200 (CEST) Received: by mail-lj1-x22e.google.com with SMTP id 38308e7fff4ca-2b448470602so10251061fa.2 for ; Thu, 15 Jun 2023 08:48:42 -0700 (PDT) Received: from localhost.localdomain (default-46-102-197-194.interdsl.co.uk. [46.102.197.194]) by smtp.gmail.com with ESMTPSA id e10-20020a056000194a00b0030497b3224bsm21374699wry.64.2023.06.15.08.48.41 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 15 Jun 2023 08:48:41 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 1aaf2a78-0b94-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cloud.com; s=cloud; t=1686844122; x=1689436122; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=tFauoCPb3uFIKLyQY0yOuojLsuuCte23s4sWaojZ6LI=; b=MThFwTc94JwI5fxtNvYJ5ouIYUb2vHHDV8sdWVrIQanhRfWjHdjci5JVvYOmLzjcoB 50PteWgdEk1gvPqv7zG2u7FjF+01RWxYpoc+YgjamHzTq8oFZZJnWnRxY22mOvzfD7Fw bfC5yb8OkuLdhpa7D6SbhqSTdZGvgFNdQEgf0= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686844122; x=1689436122; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=tFauoCPb3uFIKLyQY0yOuojLsuuCte23s4sWaojZ6LI=; b=dWXaq85pRiGnGmOFUzV2KbIUJgSWLlkpBE5kb4sRYRIF3cd9k7bbApyxZGgx/Jo1bB MRScApYOKW2mK7+W5gDPCIvnLCBMxDP8r7oI3/EKiOpBNagCkioplyWfwPPstWlp7Cyt 5NyPj/IFJF2cjJeFf4gKGs/o88RW9qpQcG3LdRsBY28oXp0RKLKu69CbiI7eDByQ+TJP N9uwprN47cmZAcDNbw+jn8g28z6wtLUnbM/XeJAXN68AJvafBhsu3UHkXYVCanRaPbG3 5Ly9U7EFthmK+HFLF5tioAzEUeERLaPIlLkW0QjUWzo2X1lOVbPGe673uct5uXXji3A3 1VlA== X-Gm-Message-State: AC+VfDyZYwHXr/TXk6toREtMrYReDzuTjf+kVxuLqo+gp5lDDFL+eD1+ JC0AnCD4+ccvjtJgpOJ69yHxeAHfntDTjJnUR90= X-Google-Smtp-Source: ACHHUZ6+qEDZ5JtKp1AuzwFXFhPE0BDozyeWFnxRya3nBahP7ijDZCpAjwzP+C8q210kec3UuBXPMA== X-Received: by 2002:ac2:5b46:0:b0:4f6:2317:f387 with SMTP id i6-20020ac25b46000000b004f62317f387mr9179734lfp.35.1686844122040; Thu, 15 Jun 2023 08:48:42 -0700 (PDT) From: Alejandro Vallejo To: Xen-devel Cc: Alejandro Vallejo , Jan Beulich , Andrew Cooper , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Wei Liu Subject: [PATCH v3 5/5] x86/microcode: Disable microcode update handler if DIS_MCU_UPDATE is set Date: Thu, 15 Jun 2023 16:48:34 +0100 Message-Id: <20230615154834.959-6-alejandro.vallejo@cloud.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20230615154834.959-1-alejandro.vallejo@cloud.com> References: <20230615154834.959-1-alejandro.vallejo@cloud.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit If IA32_MSR_MCU_CONTROL exists then it's possible a CPU may be unable to perform microcode updates. This is controlled through the DIS_MCU_LOAD bit and is intended for baremetal clouds where the owner may not trust the tenant to choose the microcode version in use. If we notice that bit being set then simply disable the "apply_microcode" handler so we can't even try to perform update (as it's known to be silently dropped). Signed-off-by: Alejandro Vallejo --- v3: * Removed microcode_update_one() hunk (Jan, from v2/patch4) * Read MSR_ARCH_CAPS in early_cpu_init(), missing in v2/patch4 (Andy) * Moved the MSR_ARCH_CAPS after-update read (it's on v3/p3 now) * Logic previouslyin this_cpu_can_install_update() is now integrated in intel_get_ucode_ops() (Jan, from v2/p4) --- xen/arch/x86/cpu/common.c | 5 +++++ xen/arch/x86/cpu/microcode/intel.c | 14 ++++++++++++++ xen/arch/x86/include/asm/cpufeature.h | 1 + xen/arch/x86/include/asm/msr-index.h | 5 +++++ 4 files changed, 25 insertions(+) diff --git a/xen/arch/x86/cpu/common.c b/xen/arch/x86/cpu/common.c index cfcdaace12..2f895e7c7c 100644 --- a/xen/arch/x86/cpu/common.c +++ b/xen/arch/x86/cpu/common.c @@ -352,6 +352,11 @@ void __init early_cpu_init(void) &c->x86_capability[FEATURESET_7c0], &c->x86_capability[FEATURESET_7d0]); + if (test_bit(X86_FEATURE_ARCH_CAPS, c->x86_capability)) + rdmsr(MSR_ARCH_CAPABILITIES, + c->x86_capability[FEATURESET_m10Al], + c->x86_capability[FEATURESET_m10Ah]); + if (max_subleaf >= 1) cpuid_count(7, 1, &eax, &ebx, &ecx, &c->x86_capability[FEATURESET_7d1]); diff --git a/xen/arch/x86/cpu/microcode/intel.c b/xen/arch/x86/cpu/microcode/intel.c index a99e402b98..abcfdc460d 100644 --- a/xen/arch/x86/cpu/microcode/intel.c +++ b/xen/arch/x86/cpu/microcode/intel.c @@ -387,8 +387,22 @@ static struct microcode_patch *cf_check cpu_request_microcode( void __init intel_get_ucode_ops(struct microcode_ops *ops) { + uint64_t mcu_ctrl; + ops->cpu_request_microcode = cpu_request_microcode; ops->collect_cpu_info = collect_cpu_info; ops->apply_microcode = apply_microcode; ops->compare_patch = compare_patch; + + if ( cpu_has_mcu_ctrl ) + { + rdmsrl(MSR_MCU_CONTROL, mcu_ctrl); + /* + * If DIS_MCU_LOAD is set applying microcode updates won't work. We + * can still query the current version and things like that, so + * we'll leave the other handlers in place. + */ + if ( mcu_ctrl & MCU_CONTROL_DIS_MCU_LOAD ) + ops->apply_microcode = NULL; + } } diff --git a/xen/arch/x86/include/asm/cpufeature.h b/xen/arch/x86/include/asm/cpufeature.h index ace31e3b1f..0118171d7e 100644 --- a/xen/arch/x86/include/asm/cpufeature.h +++ b/xen/arch/x86/include/asm/cpufeature.h @@ -192,6 +192,7 @@ static inline bool boot_cpu_has(unsigned int feat) #define cpu_has_if_pschange_mc_no boot_cpu_has(X86_FEATURE_IF_PSCHANGE_MC_NO) #define cpu_has_tsx_ctrl boot_cpu_has(X86_FEATURE_TSX_CTRL) #define cpu_has_taa_no boot_cpu_has(X86_FEATURE_TAA_NO) +#define cpu_has_mcu_ctrl boot_cpu_has(X86_FEATURE_MCU_CTRL) #define cpu_has_fb_clear boot_cpu_has(X86_FEATURE_FB_CLEAR) /* Synthesized. */ diff --git a/xen/arch/x86/include/asm/msr-index.h b/xen/arch/x86/include/asm/msr-index.h index 2749e433d2..5c1350b5f9 100644 --- a/xen/arch/x86/include/asm/msr-index.h +++ b/xen/arch/x86/include/asm/msr-index.h @@ -165,6 +165,11 @@ #define PASID_PASID_MASK 0x000fffff #define PASID_VALID (_AC(1, ULL) << 31) +#define MSR_MCU_CONTROL 0x00001406 +#define MCU_CONTROL_LOCK (_AC(1, ULL) << 0) +#define MCU_CONTROL_DIS_MCU_LOAD (_AC(1, ULL) << 1) +#define MCU_CONTROL_EN_SMM_BYPASS (_AC(1, ULL) << 2) + #define MSR_UARCH_MISC_CTRL 0x00001b01 #define UARCH_CTRL_DOITM (_AC(1, ULL) << 0) -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 15 15:57:02 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 15 Jun 2023 15:57:02 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549743.858460 (Exim 4.92) (envelope-from ) id 1q9pL5-0002K2-AG; Thu, 15 Jun 2023 15:56:47 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549743.858460; Thu, 15 Jun 2023 15:56:47 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9pL5-0002Jv-7m; Thu, 15 Jun 2023 15:56:47 +0000 Received: by outflank-mailman (input) for mailman id 549743; Thu, 15 Jun 2023 15:56:45 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9pL3-0002Jp-NH for xen-devel@lists.xenproject.org; Thu, 15 Jun 2023 15:56:45 +0000 Received: from mail-wr1-x436.google.com (mail-wr1-x436.google.com [2a00:1450:4864:20::436]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 39546dd9-0b95-11ee-8611-37d641c3527e; Thu, 15 Jun 2023 17:56:43 +0200 (CEST) Received: by mail-wr1-x436.google.com with SMTP id ffacd0b85a97d-3094910b150so7923084f8f.0 for ; Thu, 15 Jun 2023 08:56:43 -0700 (PDT) Received: from EMEAENGAAD19049. (default-46-102-197-194.interdsl.co.uk. [46.102.197.194]) by smtp.gmail.com with ESMTPSA id cs6-20020a056000088600b0030ae849c70csm21409966wrb.37.2023.06.15.08.56.41 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 15 Jun 2023 08:56:42 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 39546dd9-0b95-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cloud.com; s=cloud; t=1686844603; x=1689436603; h=in-reply-to:content-disposition:mime-version:references:subject:cc :to:from:date:message-id:from:to:cc:subject:date:message-id:reply-to; bh=zr4rFd+Ly2V6JooMMPLRSfzkA3i6Yeh7UUEOOrn55Ls=; b=RbUk1mPTNV3DsUHmhSSQXLObhGw191TZaMVy4ie0bKQLIU7mTqKBHbbSQRvo7irA0H +BBtkpOdtY9pAqAO1Tax/EeAYvPIbGAuX0Qxck1w8Mvyo+9csH9PXiI2RX1bN+Uxxoi1 vqbB/UlUxT3g5/SgKxgWahFQ6XG4O5D0tPTy4= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686844603; x=1689436603; h=in-reply-to:content-disposition:mime-version:references:subject:cc :to:from:date:message-id:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=zr4rFd+Ly2V6JooMMPLRSfzkA3i6Yeh7UUEOOrn55Ls=; b=WP/fqUmd5KP6wOcdHIOWIgMT1mfADqHty8/16Vc6IiEzEjHio8jklYPlYfU/xkALpF iydx4EQ3gr5pLyZ8mTNs7qQhQb4Ef+Jg0SvWqg4xx4u++wIZfLFgvWT9ZbxEkQGvBXvW iBuRz+d2wHbql6CYfF0GFdsO4CDZVFKq/3nFnLkjMlbwBLrmDNZOFSg0Fh+Wr1rbnYiE sZq2UQOzXoAWcB949hCy7Whn+haGW8W+I8WfUrWyXRpko0iA8IVeXnFKzySLXPH+bsT6 gY/WLRKxqgZM8p1/qXOmFqkt14LEFK/a8dgpYC7O/D3CEq0pxpEsrCoHylZsItsbVrlT hhrg== X-Gm-Message-State: AC+VfDwcL6G3gY0X/gBe73HC52CZWVoFg26fpQs8tBGp2fIzCj4DLMgO sG004e8gH8bUgMNXjhDCMSpJV2jLdJ8UiWdu92g= X-Google-Smtp-Source: ACHHUZ5r9W81j6+Fx8RTTpn3JZ2H2d9UoCyUUkOE4mdGd2thP64oRaHDGqvM7kBpM0hW40xW8KL4VA== X-Received: by 2002:a5d:678e:0:b0:30f:c2a3:6281 with SMTP id v14-20020a5d678e000000b0030fc2a36281mr8838498wru.64.1686844602837; Thu, 15 Jun 2023 08:56:42 -0700 (PDT) Message-ID: <648b34ba.050a0220.770ef.1a02@mx.google.com> X-Google-Original-Message-ID: Date: Thu, 15 Jun 2023 16:56:39 +0100 From: Alejandro Vallejo To: Xen-devel Cc: Jan Beulich , Andrew Cooper , Roger Pau =?iso-8859-1?Q?Monn=E9?= , Wei Liu Subject: Re: [PATCH v2 0/5] Prevent attempting updates known to fail References: <20230615154834.959-1-alejandro.vallejo@cloud.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20230615154834.959-1-alejandro.vallejo@cloud.com> On Thu, Jun 15, 2023 at 04:48:29PM +0100, Alejandro Vallejo wrote: > v3: > * Lots of hunks moved around. Individually mentioned in each patch > * Removed a redundant check > * Ignore microcode interface if the revision is -1 > * Perform the DIS_MCU_LOAD checks during init rather than apply time You might think that looks a whole lot like the enumeration in v2, and you'd be right :) . I sent this ahead of time and that's incorrect. The actual summary is: * Lots of hunks moved around. Individually mentioned in each patch * MSR_ARCH_CAPS read in early_cpu_init() * Per-vendor functions used to encapsulate vendor-specific logic in early_microcode_init() * Inlined previous helper for realoading 7d0 It addresses most concerns raised, but the final look is a bit different from what was reviewed before. I think it's a lot cleaner and allows future per-vendor logic to be neatly integrated into their per-vendor files. Alejandro From xen-devel-bounces@lists.xenproject.org Thu Jun 15 16:28:00 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 15 Jun 2023 16:28:00 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549748.858471 (Exim 4.92) (envelope-from ) id 1q9ppC-0006Iv-Pt; Thu, 15 Jun 2023 16:27:54 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549748.858471; Thu, 15 Jun 2023 16:27:54 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9ppC-0006Io-MA; Thu, 15 Jun 2023 16:27:54 +0000 Received: by outflank-mailman (input) for mailman id 549748; Thu, 15 Jun 2023 16:27:53 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9ppB-0006Ii-AF for xen-devel@lists.xenproject.org; Thu, 15 Jun 2023 16:27:53 +0000 Received: from mail-wr1-x431.google.com (mail-wr1-x431.google.com [2a00:1450:4864:20::431]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 92b74df8-0b99-11ee-b232-6b7b168915f2; Thu, 15 Jun 2023 18:27:51 +0200 (CEST) Received: by mail-wr1-x431.google.com with SMTP id ffacd0b85a97d-30e412a852dso6009350f8f.0 for ; Thu, 15 Jun 2023 09:27:51 -0700 (PDT) Received: from localhost.localdomain (default-46-102-197-194.interdsl.co.uk. [46.102.197.194]) by smtp.gmail.com with ESMTPSA id v18-20020adfebd2000000b0030789698eebsm21410353wrn.89.2023.06.15.09.27.49 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 15 Jun 2023 09:27:50 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 92b74df8-0b99-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cloud.com; s=cloud; t=1686846471; x=1689438471; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=CxikZb+F64c+mT8kOHYJ8gz8gbxDCfn/MPVB7fzFoGg=; b=JNanJcgbNM6B9GBriYaiFW0xnPW9hcEDInNYbF61K6bqXjskRSWbtVTfDCfrboru7L znB2aGSd1g0938fbcuNMoNb9TjMGyyhRbCvwr7JO21TC4BU6ePTxPa4L7UHO/ZK2zp9a MkJV4aClZUcxZImB5dIAzciHSNZ3Y0bPavr9M= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686846471; x=1689438471; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=CxikZb+F64c+mT8kOHYJ8gz8gbxDCfn/MPVB7fzFoGg=; b=ViZLgOJOzkn5QBfnvgOdyFfpb96KAUKdfnCmo2rEkUl0T8wYc9fGWVWe+G7nlW8Szk /aCXOelpQ24PvhXO4c5rQ2jzTu8Q7VU3R8Mv+pdVdMiIelbu4kNrV+SVLLKiKqhUX8Bw 7Lcy9qV5AYgRuP2nuoWeBkQ635AyRcyN0qZi89OY84oLlb3gJedBZt1CQ65nvJniGRP0 P+CAIYwJyXedxQ31XdJxMQfhPoWgIJAfRa3Zvt5gWnujRPzgHPGLMHRwMEMuaE//o4MZ q9F9mvAUUkLO9UGQyaC++ofaeQAjH7tVd2Szy7Seo8YSqqYsr4D2cjOLMQpKkmOfvJrj qb1Q== X-Gm-Message-State: AC+VfDx8GLsYaOk6IEFYHQu7/P6mEo7+kIF1CZ2qivsZdNSzC7Vb+sGH mfJapFrRbCm0OgoB0pobGY7+rrGcUeWWWGKPW7o= X-Google-Smtp-Source: ACHHUZ60fqGUju3VGUCV/vJ9e/5cqEJL73VgEXr8d9YiM6Qw4jHu55b5ztdb/8lqYVLnzVYiv0mI/A== X-Received: by 2002:a05:6000:51:b0:30a:f3ca:17bb with SMTP id k17-20020a056000005100b0030af3ca17bbmr9848670wrx.35.1686846470585; Thu, 15 Jun 2023 09:27:50 -0700 (PDT) From: Alejandro Vallejo To: Xen-devel Cc: Alejandro Vallejo , Andrew Cooper , George Dunlap , Jan Beulich , Julien Grall , Stefano Stabellini , Wei Liu Subject: [PATCH] mm/pdx: Add comments throughout the codebase for pdx Date: Thu, 15 Jun 2023 17:27:41 +0100 Message-Id: <20230615162741.2008-1-alejandro.vallejo@cloud.com> X-Mailer: git-send-email 2.34.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Document the behaviour of the pdx machinery in Xen. Some logic is fairly opaque and hard to follow without it being documented anywhere. This explains the rationale behind compression and its relationship to frametable indexing and directmap management. While modifying the file: * Convert u64 -> uint64_t * Remove extern keyword from function prototypes No functional change. Signed-off-by: Alejandro Vallejo --- xen/common/pdx.c | 66 ++++++++++++++++++++-- xen/include/xen/mm.h | 16 ++++++ xen/include/xen/pdx.h | 128 ++++++++++++++++++++++++++++++++++++++++-- 3 files changed, 202 insertions(+), 8 deletions(-) diff --git a/xen/common/pdx.c b/xen/common/pdx.c index c91875fabe..0121ab1915 100644 --- a/xen/common/pdx.c +++ b/xen/common/pdx.c @@ -20,13 +20,55 @@ #include #include -/* Parameters for PFN/MADDR compression. */ +/* + * Diagram to make sense of the following variables. The masks and shifts + * are done on mfn values in order to convert to/from pdx: + * + * pfn_hole_mask + * pfn_pdx_hole_shift (mask bitsize) + * | + * |---------| + * | | + * V V + * -------------------------- + * |HHHHHHH|000000000|LLLLLL| <--- mfn + * -------------------------- + * ^ ^ ^ ^ + * | | |------| + * | | | + * | | pfn_pdx_bottom_mask + * | | + * |-------| + * | + * pfn_top_mask + * + * ma_{top,bottom}_mask is simply a shifted pfn_{top,pdx_bottom}_mask where the + * bottom one shifts in 1s rather than 0s. + */ + +/** Maximum (non-inclusive) usable pdx */ unsigned long __read_mostly max_pdx; + +/** Mask for the lower non-compressible bits of an mfn */ unsigned long __read_mostly pfn_pdx_bottom_mask = ~0UL; + +/** Mask for the lower non-compressible bits of an maddr or vaddr */ unsigned long __read_mostly ma_va_bottom_mask = ~0UL; + +/** Mask for the higher non-compressible bits of an mfn */ unsigned long __read_mostly pfn_top_mask = 0; + +/** Mask for the higher non-compressible bits of an maddr or vaddr */ unsigned long __read_mostly ma_top_mask = 0; + +/** + * Mask for a pdx compression bit slice. + * + * Invariant: valid(mfn) implies (mfn & pfn_hole_mask) == 0 + */ unsigned long __read_mostly pfn_hole_mask = 0; + +/** Number of bits of the "compressible" bit slice of an mfn */ unsigned int __read_mostly pfn_pdx_hole_shift = 0; unsigned long __read_mostly pdx_group_valid[BITS_TO_LONGS( @@ -42,7 +84,7 @@ bool __mfn_valid(unsigned long mfn) } /* Sets all bits from the most-significant 1-bit down to the LSB */ -static u64 __init fill_mask(u64 mask) +static uint64_t __init fill_mask(uint64_t mask) { while (mask & (mask + 1)) mask |= mask + 1; @@ -57,9 +99,25 @@ uint64_t __init pdx_init_mask(uint64_t base_addr) (uint64_t)1 << (MAX_ORDER + PAGE_SHIFT)) - 1); } -u64 __init pdx_region_mask(u64 base, u64 len) +uint64_t __init pdx_region_mask(uint64_t base, uint64_t len) { - return fill_mask(base ^ (base + len - 1)); + uint64_t last = base + len - 1; + /* + * The only bit that matters in base^last is the MSB. There are 2 cases. + * + * case msb(base) < msb(last): + * then fill_mask(base^last) == fill_mask(last). This is non + * compressible. + * case msb(base) == msb(last): + * This means that there _may_ be a sequence of compressible zeroes + * for all addresses between `base` and `last` iff `base` has enough + * trailing zeroes. That is, it's compressible when + * fill_mask(base^last) < fill_mask(last) + * + * The resulting mask is effectively the moving bits between `base` and + * `last` + */ + return fill_mask(base ^ last); } void set_pdx_range(unsigned long smfn, unsigned long emfn) diff --git a/xen/include/xen/mm.h b/xen/include/xen/mm.h index b0dc3ba9c9..568cc396ab 100644 --- a/xen/include/xen/mm.h +++ b/xen/include/xen/mm.h @@ -31,6 +31,22 @@ * (i.e. all devices assigned to) a guest share a single DMA address space * and, by default, Xen will ensure dfn == pfn. * + * pdx: Page InDeX + * Indices into the frame table holding the per-page's book-keeping + * metadata. A compression scheme is used and there's a non-identity + * mapping between valid(mfn) <-> valid(pdx) See the comments in pdx.c + * for an in-depth explanation of that mapping. + * + * maddr: Machine Address + * The physical address that corresponds to an mfn + * + * vaddr: Xen Virtual Address + * A virtual address of memory accesible to Xen. It is typically either + * an address into the direct map or to Xen's own code/data. The direct + * map implements several compression tricks to save memory, so an offset + * into it does _not_ necessarily correspond to an maddr due to pdx + * compression. + * * WARNING: Some of these terms have changed over time while others have been * used inconsistently, meaning that a lot of existing code does not match the * definitions above. New code should use these terms as described here, and diff --git a/xen/include/xen/pdx.h b/xen/include/xen/pdx.h index 9fcfb0ce52..adc5707e88 100644 --- a/xen/include/xen/pdx.h +++ b/xen/include/xen/pdx.h @@ -1,6 +1,62 @@ #ifndef __XEN_PDX_H__ #define __XEN_PDX_H__ +/* + * PDX (Page inDeX) + * + * This file deals with optimisations pertaining frame table indexing, + * A pdx is an index into the frame table. However, having an identity + * relationship between mfn and pdx could waste copious amounts of memory + * in empty frame table entries. There are some techniques to bring memory + * wastage down. + * + * ## PDX grouping + * + * The frame table may have some sparsity even on systems where the memory + * banks are tightly packed. This is due to system quirks (like the PCI + * hole) which might introduce several GiB of unused page frame numbers + * that uselessly waste memory in the frame table. PDX grouping addresses + * this by keeping a bitmap of the ranges in the frame table containing + * invalid entries and not allocating backing memory for them. + * + * ## PDX compression + * + * This is a technique to avoid wasting memory on machines known to have + * split their machine address space in two big discontinuous and highly + * disjoint chunks. + * + * In its uncompressed form the frame table must have book-keeping metadata + * structures for every page between [0, max_mfn) (whether they exist or + * not), and a similar condition exists for the direct map. We know some + * architectures, however, that have some sparsity in their address space, + * leading to a lot of wastage in the form of unused frame table entries. + * + * This is where compression becomes useful. The idea is to note that if + * you have 2 big chunks of memory sufficiently far apart you can ignore + * the middle part of the address because it will always contain zeroes as + * long as the base address is sufficiently well aligned and the length of + * the region is much smaller than the base address. + * + * i.e: + * Consider 2 regions of memory. One starts at 0 while the other starts + * at offset 2^off_h. Furthermore, let's assume both regions are smaller + * than 2^off_l. This means that all addresses between [2^off_l, 2^off_h) + * are invalid and we can assume them to be zero on all valid addresses + * + * off_h off_l + * | | + * V V + * -------------------------- + * |HHHHHHH|000000000|LLLLLL| <--- mfn + * -------------------------- + * ^ | + * | | (de)compression by adding/removing "useless" zeroes + * | V + * --------------- + * |HHHHHHHLLLLLL| <--- pdx + * --------------- + */ + #ifdef CONFIG_HAS_PDX extern unsigned long max_pdx; @@ -13,22 +69,77 @@ extern unsigned long pfn_top_mask, ma_top_mask; (sizeof(*frame_table) & -sizeof(*frame_table))) extern unsigned long pdx_group_valid[]; -extern uint64_t pdx_init_mask(u64 base_addr); -extern u64 pdx_region_mask(u64 base, u64 len); +/** + * Calculates a mask covering "moving" bits of all addresses of a region + * + * e.g: + * base=0x1B00000000 + * len+base=0x1B0008200; + * + * ought to return 0x00000FFFFF; + * + * @param base Base address of the region + * @param len Size in octets of the region + * @return Mask of moving bits at the bottom of all the region addresses + */ +uint64_t pdx_init_mask(u64 base_addr); -extern void set_pdx_range(unsigned long smfn, unsigned long emfn); +/** + * Calculates a mask covering "moving" bits of all addresses of a region + * + * e.g: + * base=0x1B00000000 + * len+base=0x1B0008200; + * + * ought to return 0x00000FFFFF; + * + * @param base Base address of the region + * @param len Size in octets of the region + * @return Mask of moving bits at the bottom of all the region addresses + */ +uint64_t pdx_region_mask(uint64_t base, uint64_t len); + +/** + * Mark range between smfn and emfn is allocatable in the frame table + * + * @param smfn Start mfn + * @param emfn End mfn + */ +void set_pdx_range(unsigned long smfn, unsigned long emfn); #define page_to_pdx(pg) ((pg) - frame_table) #define pdx_to_page(pdx) gcc11_wrap(frame_table + (pdx)) +/** + * Invoked to determine if an mfn maps to a legal pdx + * + * In order for it to be legal it must pass bounds, grouping and + * compression sanity checks. + * + * @param smfn Start mfn + * @param emfn End mfn + * @return True iff all checks pass + */ bool __mfn_valid(unsigned long mfn); +/** + * Map pfn to its corresponding pdx + * + * @param pfn Frame number + * @return Obtained pdx after compressing the pfn + */ static inline unsigned long pfn_to_pdx(unsigned long pfn) { return (pfn & pfn_pdx_bottom_mask) | ((pfn & pfn_top_mask) >> pfn_pdx_hole_shift); } +/** + * Map a pdx to its corresponding pfn + * + * @param pdx Page index + * @return Obtained pfn after decompressing the pdx + */ static inline unsigned long pdx_to_pfn(unsigned long pdx) { return (pdx & pfn_pdx_bottom_mask) | @@ -38,7 +149,16 @@ static inline unsigned long pdx_to_pfn(unsigned long pdx) #define mfn_to_pdx(mfn) pfn_to_pdx(mfn_x(mfn)) #define pdx_to_mfn(pdx) _mfn(pdx_to_pfn(pdx)) -extern void pfn_pdx_hole_setup(unsigned long); +/** + * Initializes global variables with information about the compressible + * range of the current memory regions. + * + * @param mask This mask is the biggest pdx_mask of every region in the + * system ORed with all base addresses of every region in the + * system. The result is a mask where every sequence of zeroes + * surrounded by ones is compressible. + */ +void pfn_pdx_hole_setup(unsigned long mask); #endif /* HAS_PDX */ #endif /* __XEN_PDX_H__ */ -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 15 16:35:20 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 15 Jun 2023 16:35:20 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549754.858480 (Exim 4.92) (envelope-from ) id 1q9pwD-0007qG-Kn; Thu, 15 Jun 2023 16:35:09 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549754.858480; Thu, 15 Jun 2023 16:35:09 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9pwD-0007q9-Hl; Thu, 15 Jun 2023 16:35:09 +0000 Received: by outflank-mailman (input) for mailman id 549754; Thu, 15 Jun 2023 16:35:08 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9pwC-0007pz-Pe; Thu, 15 Jun 2023 16:35:08 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9pwC-0001EJ-Ln; Thu, 15 Jun 2023 16:35:08 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9pwB-0004tk-DB; Thu, 15 Jun 2023 16:35:07 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q9pwB-0007yY-Cg; Thu, 15 Jun 2023 16:35:07 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=K3yOHFZlDyZjx9nbQ5dGYq68fh2LTS3ZBZ/TlyB9hT4=; b=hXWJjVZZJ1Y/8AFBZgjnEWPj3I TcSgusoEXimEqGSvySBvViI8VJOgmsDgspfGF5fcXjYA4Dwm4z/5alaTtAuPEJWIgItmxc2/CSL5h h1SNC6te9HrepRqJcoEDi4Q3YAJiHPLtYWZ/sirxiLnP9uNXSZZlSxPadScuZGe4CXZE=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [qemu-mainline test] 181443: regressions - trouble: blocked/broken/fail/pass X-Osstest-Failures: qemu-mainline:build-armhf::broken:regression qemu-mainline:build-amd64-xsm:xen-build:fail:regression qemu-mainline:build-arm64:xen-build:fail:regression qemu-mainline:build-arm64-xsm:xen-build:fail:regression qemu-mainline:build-amd64:xen-build:fail:regression qemu-mainline:build-i386:xen-build:fail:regression qemu-mainline:build-armhf:host-build-prep:fail:regression qemu-mainline:build-i386-xsm:xen-build:fail:regression qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-i386:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:build-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:build-arm64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:build-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:build-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pygrub:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking X-Osstest-Versions-This: qemuu=7efd65423ab22e6f5890ca08ae40c84d6660242f X-Osstest-Versions-That: qemuu=6972ef1440a9d685482d78672620a7482f2bd09a From: osstest service owner Date: Thu, 15 Jun 2023 16:35:07 +0000 flight 181443 qemu-mainline real [real] http://logs.test-lab.xenproject.org/osstest/logs/181443/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-armhf broken build-amd64-xsm 6 xen-build fail REGR. vs. 180691 build-arm64 6 xen-build fail REGR. vs. 180691 build-arm64-xsm 6 xen-build fail REGR. vs. 180691 build-amd64 6 xen-build fail REGR. vs. 180691 build-i386 6 xen-build fail REGR. vs. 180691 build-armhf 5 host-build-prep fail REGR. vs. 180691 build-i386-xsm 6 xen-build fail REGR. vs. 180691 Tests which did not succeed, but are not blocking: test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-xl-xsm 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-raw 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-xsm 1 build-check(1) blocked n/a test-arm64-arm64-xl 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit1 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit2 1 build-check(1) blocked n/a test-arm64-arm64-xl-thunderx 1 build-check(1) blocked n/a test-arm64-arm64-xl-vhd 1 build-check(1) blocked n/a test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a test-armhf-armhf-libvirt 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-qcow2 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-raw 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a test-armhf-armhf-xl-arndale 1 build-check(1) blocked n/a test-armhf-armhf-xl-multivcpu 1 build-check(1) blocked n/a test-armhf-armhf-xl-rtds 1 build-check(1) blocked n/a test-armhf-armhf-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-amd 1 build-check(1) blocked n/a test-amd64-i386-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-raw 1 build-check(1) blocked n/a test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-i386 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-amd64 1 build-check(1) blocked n/a test-amd64-coresched-i386-xl 1 build-check(1) blocked n/a test-amd64-coresched-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-xsm 1 build-check(1) blocked n/a build-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-shadow 1 build-check(1) blocked n/a test-amd64-amd64-xl-rtds 1 build-check(1) blocked n/a build-arm64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a build-armhf-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a build-i386-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-amd 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-pair 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-qcow2 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-vhd 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvshim 1 build-check(1) blocked n/a test-amd64-amd64-pair 1 build-check(1) blocked n/a test-amd64-amd64-pygrub 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-intel 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd11-amd64 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd12-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-multivcpu 1 build-check(1) blocked n/a test-amd64-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit1 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit1 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-intel 1 build-check(1) blocked n/a test-amd64-i386-xl 1 build-check(1) blocked n/a test-amd64-i386-xl-pvshim 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a version targeted for testing: qemuu 7efd65423ab22e6f5890ca08ae40c84d6660242f baseline version: qemuu 6972ef1440a9d685482d78672620a7482f2bd09a Last test of basis 180691 2023-05-17 10:45:22 Z 29 days Failing since 180699 2023-05-18 07:21:24 Z 28 days 104 attempts Testing same since 181419 2023-06-14 05:08:14 Z 1 days 6 attempts ------------------------------------------------------------ People who touched revisions under test: Afonso Bordado Akihiko Odaki Akihiro Suda Alex Bennée Alex Williamson Alexander Bulekov Alexander Graf Alexander Ivanov Alistair Francis Anastasia Belova Andrea Bolognani Andreas Schwab Andrew Jeffery Ani Sinha Ani Sinha Anthony PERARD Anton Johansson Antonio Caggiano BALATON Zoltan Bastian Koppelmann Bernhard Beschow Bin Meng Brian Cain Brice Goglin Camilla Conte Carlos Santos Christian Schoenebeck Chuck Zmudzinski Cindy Lu Clément Chigot Corey Minyard Cornelia Huck Cédric Le Goater Cédric Le Goater Daniel Henrique Barboza Daniel Henrique Barboza Daniel P. Berrangé Daniil Kovalev David Hildenbrand David Woodhouse Emanuele Giuseppe Esposito Enze Li Eric Auger Eric Blake Eric DeVolder Erico Nunes Eugenio Pérez Fabiano Rosas Fan Ni Fiona Ebner Francesco Cagnin Francisco Iglesias Frederic Barrat Gavin Shan Gregory Price Gregory Price Hanna Czenczek Hao Zeng Hawkins Jiawei Himanshu Chauhan Igor Mammedov Ilya Leoshkevich Ira Weiny Ivan Klokov Jagannathan Raman Jason Wang Jean-Louis Dupond Jean-Philippe Brucker Jiaxun Yang Joao Martins John Snow Jonathan Cameron Juan Quintela Junqiang Wang Kevin Wolf Laurent Vivier Lei Yang Leonardo Bras Maksim Davydov Marc-André Lureau Marcin Juszkiewicz Marco Liebel Mark Cave-Ayland Markus Armbruster Matheus Tavares Bernardino Mattias Nissler Mauro Matteo Cascella Max Fritz Mayuresh Chitale Michael S. Tsirkin Michael Tokarev Michal Privoznik Milan Zamazal Mostafa Saleh Nicholas Piggin Nicolas Saenz Julienne Niek Linnenbank Niklas Cassel Palmer Dabbelt Paolo Bonzini Patrick Venture Peter Maydell Peter Xu Philippe Mathieu-Daudé Philippe Mathieu-Daudé qianfan Zhao Raghu H Rene Engel Richard Henderson Richard Purdie Ricky Zhou Ryan Wendland Sebastian Ott Sergio Lopez Sid Manning Song Gao Stefan Hajnoczi Stefano Garzarella Steve Sistare Sunil V L Taylor Simpson Thomas Huth Thomas Weißschuh timothee.cocault@gmail.com Timothée Cocault Tommy Wu Vikram Garhwal Viktor Prutyanov Vitaly Cheptsov Vivek Kasireddy Vladimir Sementsov-Ogievskiy Volker Rümelin Weiwei Li Xiao Wang Xinyu Li Yin Wang Zeng Hao Zhenyu Zhang Zhenzhong Duan Zhuojia Shen jobs: build-amd64-xsm fail build-arm64-xsm fail build-i386-xsm fail build-amd64 fail build-arm64 fail build-armhf broken build-i386 fail build-amd64-libvirt blocked build-arm64-libvirt blocked build-armhf-libvirt blocked build-i386-libvirt blocked build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl blocked test-amd64-coresched-amd64-xl blocked test-arm64-arm64-xl blocked test-armhf-armhf-xl blocked test-amd64-i386-xl blocked test-amd64-coresched-i386-xl blocked test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-i386-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-amd64-libvirt-xsm blocked test-arm64-arm64-libvirt-xsm blocked test-amd64-i386-libvirt-xsm blocked test-amd64-amd64-xl-xsm blocked test-arm64-arm64-xl-xsm blocked test-amd64-i386-xl-xsm blocked test-amd64-amd64-qemuu-nested-amd blocked test-amd64-amd64-xl-pvhv2-amd blocked test-amd64-i386-qemuu-rhel6hvm-amd blocked test-amd64-amd64-dom0pvh-xl-amd blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-freebsd10-amd64 blocked test-amd64-amd64-qemuu-freebsd11-amd64 blocked test-amd64-amd64-qemuu-freebsd12-amd64 blocked test-amd64-amd64-xl-qemuu-ovmf-amd64 blocked test-amd64-i386-xl-qemuu-ovmf-amd64 blocked test-amd64-amd64-xl-qemuu-win7-amd64 blocked test-amd64-i386-xl-qemuu-win7-amd64 blocked test-amd64-amd64-xl-qemuu-ws16-amd64 blocked test-amd64-i386-xl-qemuu-ws16-amd64 blocked test-armhf-armhf-xl-arndale blocked test-amd64-amd64-xl-credit1 blocked test-arm64-arm64-xl-credit1 blocked test-armhf-armhf-xl-credit1 blocked test-amd64-amd64-xl-credit2 blocked test-arm64-arm64-xl-credit2 blocked test-armhf-armhf-xl-credit2 blocked test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-freebsd10-i386 blocked test-amd64-amd64-qemuu-nested-intel blocked test-amd64-amd64-xl-pvhv2-intel blocked test-amd64-i386-qemuu-rhel6hvm-intel blocked test-amd64-amd64-dom0pvh-xl-intel blocked test-amd64-amd64-libvirt blocked test-armhf-armhf-libvirt blocked test-amd64-i386-libvirt blocked test-amd64-amd64-xl-multivcpu blocked test-armhf-armhf-xl-multivcpu blocked test-amd64-amd64-pair blocked test-amd64-i386-pair blocked test-amd64-amd64-libvirt-pair blocked test-amd64-i386-libvirt-pair blocked test-amd64-amd64-xl-pvshim blocked test-amd64-i386-xl-pvshim blocked test-amd64-amd64-pygrub blocked test-armhf-armhf-libvirt-qcow2 blocked test-amd64-amd64-xl-qcow2 blocked test-arm64-arm64-libvirt-raw blocked test-armhf-armhf-libvirt-raw blocked test-amd64-i386-libvirt-raw blocked test-amd64-amd64-xl-rtds blocked test-armhf-armhf-xl-rtds blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-amd64-xl-shadow blocked test-amd64-i386-xl-shadow blocked test-arm64-arm64-xl-thunderx blocked test-amd64-amd64-libvirt-vhd blocked test-arm64-arm64-xl-vhd blocked test-armhf-armhf-xl-vhd blocked test-amd64-i386-xl-vhd blocked ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary broken-job build-armhf broken Not pushing. (No revision log; it would be 18679 lines long.) From xen-devel-bounces@lists.xenproject.org Thu Jun 15 16:40:06 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 15 Jun 2023 16:40:06 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549761.858491 (Exim 4.92) (envelope-from ) id 1q9q0y-0000Ry-8R; Thu, 15 Jun 2023 16:40:04 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549761.858491; Thu, 15 Jun 2023 16:40:04 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9q0y-0000RW-5K; Thu, 15 Jun 2023 16:40:04 +0000 Received: by outflank-mailman (input) for mailman id 549761; Thu, 15 Jun 2023 16:40:03 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9q0x-0000An-11 for xen-devel@lists.xenproject.org; Thu, 15 Jun 2023 16:40:03 +0000 Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 45b43e12-0b9b-11ee-b232-6b7b168915f2; Thu, 15 Jun 2023 18:40:01 +0200 (CEST) Received: from [192.168.1.198] (unknown [151.35.43.103]) by support.bugseng.com (Postfix) with ESMTPSA id 7D5744EE0738; Thu, 15 Jun 2023 18:39:59 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 45b43e12-0b9b-11ee-b232-6b7b168915f2 Message-ID: Date: Thu, 15 Jun 2023 18:39:57 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Content-Language: en-US From: nicola To: Xen-devel Cc: Stefano Stabellini , Andrew Cooper , George Dunlap , Jan Beulich , Julien Grall , Wei Liu Subject: Refactoring of a possibly unsafe pattern for variable initialization via function calls Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi all, while investigating possible patches regarding Mandatory Rule 9.1, I found the following pattern, that is likely to results in a lot possible positives from many (all) static analysis tools for this rule. This is the current status (taken from `xen/common/device_tree.c:135') const struct dt_property *dt_find_property(const struct dt_device_node *np, const char *name, u32 *lenp) { const struct dt_property *pp; if ( !np ) return NULL; for ( pp = np->properties; pp; pp = pp->next ) { if ( dt_prop_cmp(pp->name, name) == 0 ) { if ( lenp ) *lenp = pp->length; break; } } return pp; } It's very hard to detect that the pointee is always written whenever a non-NULL pointer for `lenp' is supplied, and it can safely be read in the callee, so a sound analysis will err on the cautious side. My proposal, in a future patch, is to refactor these kinds of functions as follows: const struct dt_property *dt_find_property(const struct dt_device_node *np, const char *name, u32 *lenp) { u32 len = 0; const struct dt_property *pp; if ( !np ) return NULL; for ( pp = np->properties; pp; pp = pp->next ) { if ( dt_prop_cmp(pp->name, name) == 0 ) { len = pp->length; break; } } if ( lenp ) *lenp = len; return pp; } The advantage here is that we can easily argue that `*lenp' is always initialized by the function (if not NULL) and inform the tool about this, which is a safer API and also resolves almost all subsequent "don't know"s about further uses of the variables involved (e.g. `lenp'). Regards, -- Nicola Vetrini, BSc Software Engineer, BUGSENG srl (https://bugseng.com) From xen-devel-bounces@lists.xenproject.org Thu Jun 15 17:56:41 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 15 Jun 2023 17:56:41 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549770.858501 (Exim 4.92) (envelope-from ) id 1q9rCq-0008Qg-R4; Thu, 15 Jun 2023 17:56:24 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549770.858501; Thu, 15 Jun 2023 17:56:24 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9rCq-0008QZ-OB; Thu, 15 Jun 2023 17:56:24 +0000 Received: by outflank-mailman (input) for mailman id 549770; Thu, 15 Jun 2023 17:56:23 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9rCp-0008QT-KV for xen-devel@lists.xenproject.org; Thu, 15 Jun 2023 17:56:23 +0000 Received: from mail-lj1-x22d.google.com (mail-lj1-x22d.google.com [2a00:1450:4864:20::22d]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id ee87235c-0ba5-11ee-8611-37d641c3527e; Thu, 15 Jun 2023 19:56:19 +0200 (CEST) Received: by mail-lj1-x22d.google.com with SMTP id 38308e7fff4ca-2b1afe57bdfso33464821fa.0 for ; Thu, 15 Jun 2023 10:56:19 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: ee87235c-0ba5-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686851779; x=1689443779; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=4ReuSc0lTm5pJuFPDEcSwwMC9WpxishEdjGAo3hpGg8=; b=S77fGWPuAgagfA8nlE6LO413kMn/fIGjsUdgK60zM/9MRM0n+LHgYcLqlPNsuxxqpI yiRR6MiUqRObzJ1gIF0euGFT1uKHYgO2ORqgykD+T9M/JHY6Yy+6ka2+otlCUPGTldkU JAou1LqgtIuDrZ5r/B30yET7dpSmNKK1T7XWswsnA9mkZhi474AjEDS4t0LIqKBWQsC2 0XFBhEo1sg69yNYI5Q9I4kk17+AolwGde0HEK3asztdl3GJ3RTpNMZdnA3wc5ufiJmhV YWzov52PHPFUHqGrnwPtBGC6M9uhB0MbJle59h88ne8it6opRvNhy7CT/HisvFF9ZyuK ur3Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686851779; x=1689443779; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=4ReuSc0lTm5pJuFPDEcSwwMC9WpxishEdjGAo3hpGg8=; b=GzIAsxxuDXdr87ZYTtMWd/oqXWln39w0yj/cOvSyD7WC24dTZ5yX8bPmxNeMuw1tNP MdgQ1KlRYLpUX95raAlMEsPtxdIe0j0qLItN0k4/9dr8+nIZS7g1B1KkeVz1tZN4TIP+ VZUvhgTGnP7i5p3Juh4eAsHI1/jC1RPexOTa2vMUOOLIYiLyvcC20V5l4qs1GV4xrsB2 4nwPlSImmNIbTFOcvb8D9lUT6AYzeQqLX2SRrpRWEOsSk64o9BnL4QZzegG7g6kD8E8i zrC6HrlnfEbz/hYnePy4/3BYz+7ZFrmeEF83hf5iZJZAvMzTu0iKZozVctL0HdZcMl6Z Tk3A== X-Gm-Message-State: AC+VfDwUAKTumQ8OiYwvg/Np5a/D2Kr17uLDIIPxAJ6hFiy1OqtP9Z3Q 184k43Nn6Q1sZRFiuMFoQup94b/X8SBd09P+WJ0= X-Google-Smtp-Source: ACHHUZ7ho+I0gz+wHDeASs3vc70Wgvy85Ve/oBJ1TjOWp9IFayr65wYbNW8+TuPoWUF478fNd7aAzwmzfk8OnKUoi4M= X-Received: by 2002:a2e:994a:0:b0:2ac:7505:de2d with SMTP id r10-20020a2e994a000000b002ac7505de2dmr140460ljj.23.1686851778648; Thu, 15 Jun 2023 10:56:18 -0700 (PDT) MIME-Version: 1.0 References: <20230614180253.89958-1-jandryuk@gmail.com> <20230614180253.89958-5-jandryuk@gmail.com> <194760c8-31fe-d0f7-828f-b8a637884989@suse.com> <7d00571e-7f04-3cf1-dafe-05d811318e92@suse.com> In-Reply-To: <7d00571e-7f04-3cf1-dafe-05d811318e92@suse.com> From: Jason Andryuk Date: Thu, 15 Jun 2023 13:56:06 -0400 Message-ID: Subject: Re: [PATCH v4 04/15] xen/sysctl: Nest cpufreq scaling options To: Jan Beulich Cc: Wei Liu , Anthony PERARD , Juergen Gross , Andrew Cooper , George Dunlap , Julien Grall , Stefano Stabellini , xen-devel@lists.xenproject.org Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Thu, Jun 15, 2023 at 10:29=E2=80=AFAM Jan Beulich wr= ote: > > On 15.06.2023 16:07, Jason Andryuk wrote: > > On Thu, Jun 15, 2023 at 9:29=E2=80=AFAM Jan Beulich = wrote: > >> > >> On 14.06.2023 20:02, Jason Andryuk wrote: > >>> --- a/tools/include/xenctrl.h > >>> +++ b/tools/include/xenctrl.h > >>> @@ -1909,16 +1909,20 @@ struct xc_get_cpufreq_para { > >>> uint32_t cpuinfo_cur_freq; > >>> uint32_t cpuinfo_max_freq; > >>> uint32_t cpuinfo_min_freq; > >>> - uint32_t scaling_cur_freq; > >>> - > >>> - char scaling_governor[CPUFREQ_NAME_LEN]; > >>> - uint32_t scaling_max_freq; > >>> - uint32_t scaling_min_freq; > >>> - > >>> - /* for specific governor */ > >>> union { > >>> - xc_userspace_t userspace; > >>> - xc_ondemand_t ondemand; > >>> + struct { > >>> + uint32_t scaling_cur_freq; > >>> + > >>> + char scaling_governor[CPUFREQ_NAME_LEN]; > >>> + uint32_t scaling_max_freq; > >>> + uint32_t scaling_min_freq; > >>> + > >>> + /* for specific governor */ > >>> + union { > >>> + xc_userspace_t userspace; > >>> + xc_ondemand_t ondemand; > >>> + } u; > >>> + } s; > >>> } u; > >> > >> There's no comment in the header that this needs to mirror the sysctl > >> struct. Does it really need changing? > > > > Since this matched the other structure, I kept them in sync. The > > cppc/hwp data needs to be represented somehow, and it gets introduced > > in the same way for both later. If this doesn't get the new nested > > struct, then maybe fields could be placed into the single union. That > > would grow the overall struct and have unused fields for hwp. > > I guess I need to leave this to the maintainers then. Still ... > > >>> --- a/tools/libs/ctrl/xc_pm.c > >>> +++ b/tools/libs/ctrl/xc_pm.c > >>> @@ -265,15 +265,10 @@ int xc_get_cpufreq_para(xc_interface *xch, int = cpuid, > >>> user_para->cpuinfo_cur_freq =3D sys_para->cpuinfo_cur_freq; > >>> user_para->cpuinfo_max_freq =3D sys_para->cpuinfo_max_freq; > >>> user_para->cpuinfo_min_freq =3D sys_para->cpuinfo_min_freq; > >>> - user_para->scaling_cur_freq =3D sys_para->scaling_cur_freq; > >>> - user_para->scaling_max_freq =3D sys_para->scaling_max_freq; > >>> - user_para->scaling_min_freq =3D sys_para->scaling_min_freq; > >>> user_para->turbo_enabled =3D sys_para->turbo_enabled; > >>> > >>> memcpy(user_para->scaling_driver, > >>> sys_para->scaling_driver, CPUFREQ_NAME_LEN); > >>> - memcpy(user_para->scaling_governor, > >>> - sys_para->scaling_governor, CPUFREQ_NAME_LEN); > >> > >> Did you really mean to remove the copying of these 4 entities, rather > >> than simply change the way the fields are accessed? > > > > Yes, it was intentional. > > > > The immediate following lines are: > > /* copy to user_para no matter what cpufreq governor */ > > BUILD_BUG_ON(sizeof(((struct xc_get_cpufreq_para *)0)->u) !=3D > > sizeof(((struct xen_get_cpufreq_para *)0)->u)); > > > > memcpy(&user_para->u, &sys_para->u, sizeof(sys_para->u)); > > ... this suggests that some matching is intended, yet it's not clear > to me why then the hole struct-s aren't assumed to be matching / made > match. The tools version replaces struct xen_$foo with xc_$foo typedefs. Maybe it's just to enforce the typedefs? Regards, Jason From xen-devel-bounces@lists.xenproject.org Thu Jun 15 18:14:34 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 15 Jun 2023 18:14:34 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549776.858512 (Exim 4.92) (envelope-from ) id 1q9rUH-0002Wz-Bd; Thu, 15 Jun 2023 18:14:25 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549776.858512; Thu, 15 Jun 2023 18:14:25 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9rUH-0002Ws-7T; Thu, 15 Jun 2023 18:14:25 +0000 Received: by outflank-mailman (input) for mailman id 549776; Thu, 15 Jun 2023 18:14:23 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9rUF-0002Wi-FQ; Thu, 15 Jun 2023 18:14:23 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9rUF-0003g1-AG; Thu, 15 Jun 2023 18:14:23 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9rUE-00017n-Rm; Thu, 15 Jun 2023 18:14:22 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q9rUE-0004qz-RG; Thu, 15 Jun 2023 18:14:22 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=FVhTIqSnKigk+feMoXNi1Ln4r3cS6bewieA+2sMl28g=; b=Czt/EYkihPAG9HCxTWE8MuXkZ1 vT/6aUIvdLaLHXHqsZVSCN/ZBlWeZ6xtrVI0Gha1M4u3KYob7kcdTmdiALQQoAmOuZ3sBq8XSimpX O2Lu/eBy4Px/DHBBemNvWoBNn/m9WGSQS1+gSc4m+ivCzdBs+h1m1w9i+mlAzcwiBSTA=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [linux-5.4 test] 181434: regressions - FAIL X-Osstest-Failures: linux-5.4:test-amd64-amd64-libvirt-vhd:guest-start/debian.repeat:fail:regression linux-5.4:build-amd64-pvops:kernel-build:fail:regression linux-5.4:test-amd64-i386-xl:xen-install:fail:heisenbug linux-5.4:test-amd64-i386-libvirt:xen-install:fail:heisenbug linux-5.4:test-armhf-armhf-libvirt-qcow2:guest-start:fail:heisenbug linux-5.4:test-amd64-amd64-dom0pvh-xl-intel:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-examine-bios:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qemut-win7-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-credit2:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking linux-5.4:test-amd64-coresched-amd64-xl:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-pygrub:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qemut-debianhvm-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-dom0pvh-xl-amd:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-xsm:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-shadow:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-examine-uefi:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-qemuu-nested-amd:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-pvshim:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-pvhv2-intel:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-multivcpu:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-pvhv2-amd:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-rtds:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-qemuu-nested-intel:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-qemuu-freebsd12-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-credit1:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-examine:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qemut-ws16-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-pair:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-qemuu-freebsd11-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qcow2:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-multivcpu:guest-start/debian.repeat:fail:nonblocking linux-5.4:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-multivcpu:guest-start:fail:nonblocking linux-5.4:test-amd64-i386-libvirt-pair:xen-install/dst_host:fail:nonblocking linux-5.4:test-amd64-i386-libvirt-raw:xen-install:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking linux-5.4:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking linux-5.4:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking linux-5.4:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking linux-5.4:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking linux-5.4:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking linux-5.4:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: linux=61a2f83e4762ee0c766f86944e612305f5888bcb X-Osstest-Versions-That: linux=f568a20f058fa1e37069cff4aac4187c1650a0e9 From: osstest service owner Date: Thu, 15 Jun 2023 18:14:22 +0000 flight 181434 linux-5.4 real [real] http://logs.test-lab.xenproject.org/osstest/logs/181434/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: test-amd64-amd64-libvirt-vhd 19 guest-start/debian.repeat fail REGR. vs. 181363 build-amd64-pvops 6 kernel-build fail in 181425 REGR. vs. 181363 Tests which are failing intermittently (not blocking): test-amd64-i386-xl 7 xen-install fail pass in 181425 test-amd64-i386-libvirt 7 xen-install fail pass in 181425 test-armhf-armhf-libvirt-qcow2 13 guest-start fail pass in 181425 Tests which did not succeed, but are not blocking: test-amd64-amd64-dom0pvh-xl-intel 1 build-check(1) blocked in 181425 n/a test-amd64-amd64-xl-qemuu-ovmf-amd64 1 build-check(1) blocked in 181425 n/a test-amd64-amd64-examine-bios 1 build-check(1) blocked in 181425 n/a test-amd64-amd64-xl-qemut-win7-amd64 1 build-check(1) blocked in 181425 n/a test-amd64-amd64-libvirt-pair 1 build-check(1) blocked in 181425 n/a test-amd64-amd64-xl 1 build-check(1) blocked in 181425 n/a test-amd64-amd64-xl-credit2 1 build-check(1) blocked in 181425 n/a test-amd64-amd64-libvirt 1 build-check(1) blocked in 181425 n/a test-amd64-coresched-amd64-xl 1 build-check(1) blocked in 181425 n/a test-amd64-amd64-pygrub 1 build-check(1) blocked in 181425 n/a test-amd64-amd64-xl-qemut-debianhvm-amd64 1 build-check(1) blocked in 181425 n/a test-amd64-amd64-libvirt-vhd 1 build-check(1) blocked in 181425 n/a test-amd64-amd64-dom0pvh-xl-amd 1 build-check(1) blocked in 181425 n/a test-amd64-amd64-xl-xsm 1 build-check(1) blocked in 181425 n/a test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked in 181425 n/a test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked in 181425 n/a test-amd64-amd64-xl-shadow 1 build-check(1) blocked in 181425 n/a test-amd64-amd64-xl-qemuu-ws16-amd64 1 build-check(1) blocked in 181425 n/a test-amd64-amd64-examine-uefi 1 build-check(1) blocked in 181425 n/a test-amd64-amd64-qemuu-nested-amd 1 build-check(1) blocked in 181425 n/a test-amd64-amd64-xl-pvshim 1 build-check(1) blocked in 181425 n/a test-amd64-amd64-xl-pvhv2-intel 1 build-check(1) blocked in 181425 n/a test-amd64-amd64-xl-multivcpu 1 build-check(1) blocked in 181425 n/a test-amd64-amd64-xl-pvhv2-amd 1 build-check(1) blocked in 181425 n/a test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked in 181425 n/a test-amd64-amd64-xl-rtds 1 build-check(1) blocked in 181425 n/a test-amd64-amd64-qemuu-nested-intel 1 build-check(1) blocked in 181425 n/a test-amd64-amd64-qemuu-freebsd12-amd64 1 build-check(1) blocked in 181425 n/a test-amd64-amd64-xl-credit1 1 build-check(1) blocked in 181425 n/a test-amd64-amd64-libvirt-xsm 1 build-check(1) blocked in 181425 n/a test-amd64-amd64-examine 1 build-check(1) blocked in 181425 n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked in 181425 n/a test-amd64-amd64-xl-qemuu-win7-amd64 1 build-check(1) blocked in 181425 n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked in 181425 n/a test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm 1 build-check(1) blocked in 181425 n/a test-amd64-amd64-xl-qemut-ws16-amd64 1 build-check(1) blocked in 181425 n/a test-amd64-amd64-pair 1 build-check(1) blocked in 181425 n/a test-amd64-amd64-qemuu-freebsd11-amd64 1 build-check(1) blocked in 181425 n/a test-amd64-amd64-xl-qcow2 1 build-check(1) blocked in 181425 n/a test-amd64-amd64-xl-qemut-debianhvm-i386-xsm 1 build-check(1) blocked in 181425 n/a test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail in 181425 like 181363 test-armhf-armhf-xl-multivcpu 18 guest-start/debian.repeat fail in 181425 like 181363 test-amd64-i386-libvirt 15 migrate-support-check fail in 181425 never pass test-armhf-armhf-xl-multivcpu 15 migrate-support-check fail in 181425 never pass test-armhf-armhf-xl-multivcpu 16 saverestore-support-check fail in 181425 never pass test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail in 181425 never pass test-armhf-armhf-xl-multivcpu 14 guest-start fail like 181336 test-amd64-i386-libvirt-pair 11 xen-install/dst_host fail like 181354 test-amd64-i386-libvirt-raw 7 xen-install fail like 181363 test-armhf-armhf-libvirt 16 saverestore-support-check fail like 181363 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 181363 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop fail like 181363 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop fail like 181363 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 181363 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 181363 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 181363 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail like 181363 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop fail like 181363 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop fail like 181363 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 181363 test-amd64-i386-xl-pvshim 14 guest-start fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-i386-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-armhf-armhf-xl-credit2 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit2 16 saverestore-support-check fail never pass test-armhf-armhf-xl 15 migrate-support-check fail never pass test-armhf-armhf-xl 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 15 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 16 saverestore-support-check fail never pass test-armhf-armhf-xl-credit1 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 15 saverestore-support-check fail never pass test-armhf-armhf-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 15 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 16 saverestore-support-check fail never pass version targeted for testing: linux 61a2f83e4762ee0c766f86944e612305f5888bcb baseline version: linux f568a20f058fa1e37069cff4aac4187c1650a0e9 Last test of basis 181363 2023-06-10 15:39:59 Z 5 days Testing same since 181425 2023-06-14 10:50:49 Z 1 days 2 attempts ------------------------------------------------------------ People who touched revisions under test: Ai Chao Alan Stern Alex Deucher Alexander Sverdlin Arnd Bergmann Bartosz Golaszewski Ben Hutchings Chia-I Wu Chris Paterson (CIP) David Jander David S. Miller David Sterba Dmitry Torokhov Eric Dumazet Fedor Pchelkin Florian Westphal Greg Kroah-Hartman Guenter Roeck Gustavo A. R. Silva Hangyu Hua Harshit Mogalapalli Ilya Dryomov Ismael Ferreras Morezuelas JaimeLiao Jakub Kicinski Jamal Hadi Salim Jens Axboe Jiri Slaby (SUSE) Jon Hunter Josef Bacik Jozsef Kadlecsik Kuniyuki Iwashima Linus Walleij Linux Kernel Functional Testing Luiz Augusto von Dentz Marc Kleine-Budde Mark Brown Martin Hundebøll Maxime Ripard Michael Chan Min Li Miquel Raynal Oleksij Rempel Pablo Neira Ayuso Paolo Abeni Paulo Alcantara (SUSE) Paulo Alcantara Qingfang DENG Randy Dunlap RenHai Rishabh Bhatnagar Ruihan Li Sasha Levin Shuah Khan Simon Wunderlich Somnath Kotur Stefan Ghinea Stephan Gerhold Steve French Sudip Mukherjee Sungwoo Kim Sven Eckelmann Takashi Iwai Tejun Heo Theodore Ts'o Tijs Van Buggenhout Uwe Kleine-König Ville Syrjälä Vladislav Efanov Wolfram Sang Xiubo Li Ying Hsu YouChing Lin Zixuan Fu jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl pass test-amd64-i386-xl fail test-amd64-coresched-i386-xl pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-i386-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-i386-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-i386-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-i386-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-i386-qemut-rhel6hvm-amd pass test-amd64-i386-qemuu-rhel6hvm-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-i386-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-freebsd10-amd64 pass test-amd64-amd64-qemuu-freebsd11-amd64 pass test-amd64-amd64-qemuu-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-i386-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-i386-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-i386-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-amd64-i386-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale pass test-amd64-amd64-examine-bios pass test-amd64-i386-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 pass test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 pass test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine pass test-amd64-i386-examine pass test-amd64-i386-freebsd10-i386 pass test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-i386-qemut-rhel6hvm-intel pass test-amd64-i386-qemuu-rhel6hvm-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt pass test-amd64-i386-libvirt fail test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu fail test-amd64-amd64-pair pass test-amd64-i386-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-i386-libvirt-pair fail test-amd64-amd64-xl-pvshim pass test-amd64-i386-xl-pvshim fail test-amd64-amd64-pygrub pass test-armhf-armhf-libvirt-qcow2 fail test-amd64-amd64-xl-qcow2 pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw pass test-amd64-i386-libvirt-raw fail test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds pass test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-amd64-i386-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-i386-examine-uefi pass test-amd64-amd64-libvirt-vhd fail test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd pass test-amd64-i386-xl-vhd pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 1380 lines long.) From xen-devel-bounces@lists.xenproject.org Thu Jun 15 18:17:45 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 15 Jun 2023 18:17:45 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549785.858521 (Exim 4.92) (envelope-from ) id 1q9rXK-0003C1-Ua; Thu, 15 Jun 2023 18:17:34 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549785.858521; Thu, 15 Jun 2023 18:17:34 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9rXK-0003Bu-RN; Thu, 15 Jun 2023 18:17:34 +0000 Received: by outflank-mailman (input) for mailman id 549785; Thu, 15 Jun 2023 18:17:33 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9rXJ-0003Bm-3W for xen-devel@lists.xenproject.org; Thu, 15 Jun 2023 18:17:33 +0000 Received: from esa3.hc3370-68.iphmx.com (esa3.hc3370-68.iphmx.com [216.71.145.155]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id e33095ba-0ba8-11ee-b232-6b7b168915f2; Thu, 15 Jun 2023 20:17:31 +0200 (CEST) Received: from mail-bn1nam02lp2043.outbound.protection.outlook.com (HELO NAM02-BN1-obe.outbound.protection.outlook.com) ([104.47.51.43]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 15 Jun 2023 14:17:27 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by PH8PR03MB7308.namprd03.prod.outlook.com (2603:10b6:510:254::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.27; Thu, 15 Jun 2023 18:17:24 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606%4]) with mapi id 15.20.6477.037; Thu, 15 Jun 2023 18:17:24 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: e33095ba-0ba8-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686853050; h=message-id:date:from:subject:to:cc:references: in-reply-to:content-transfer-encoding:mime-version; bh=kN1yyi2xoKBZlW9i2AiQxJMVMuLPWLSm5ef/dogZ8lU=; b=Wi7ya3fzlO6irTP0/5LTDXdVw3FYW/x+F8afWRAytFDIpFnJzzVSrWEs Sx9XdDa747ilr3zvxzgeDZJe7H1XU/F3Eq6aJ6y97IgMoCxtTtrZNRVVk sWFuxKpFF22dzcXrXOZN+8ghy88YysDmO5tw7bFLNME4A/I3OOHd3ivnS 8=; X-IronPort-RemoteIP: 104.47.51.43 X-IronPort-MID: 112962350 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:qGG+U6hyXpicccigqTsHAPQ/X161QhEKZh0ujC45NGQN5FlHY01je htvX2yDO/yJajf8eNxzPtvk8RlQuZDRn9VhGgJkrX89Ei4b9cadCdqndUqhZCn6wu8v7q5Ex 55HNoSfdpBcolv0/ErF3m3J9CEkvU2wbuOgTrWCYmYpHlUMpB4J0XpLg/Q+jpNjne+3CgaMv cKai8DEMRqu1iUc3lg8sspvkzsx+qyq0N8klgZmP6sT4gaDzyN94K83fsldEVOpGuG4IcbiL wrz5OnR1n/U+R4rFuSknt7TGqHdauePVeQmoiM+t5mK2nCulARrukoIHKN0hXNsoyeIh7hMJ OBl7vRcf+uL0prkw4zxWzEAe8130DYvFLXveRBTuuTLp6HKnueFL1yDwyjaMKVBktubD12i+ tQyD2FSVjSOndia752FG8RrnOAGMMnCadZ3VnFIlVk1DN4AaLWbGeDgw4Yd2z09wMdTAfzZe swVLyJ1awjNaAFOPVFRD48imOCvhT/0dDgwRFC9/PJrpTSMilEoluS2WDbWUoXiqcF9t0CUv G/ZuU/+BQkXLoe3wjuZ6HO8wOTImEsXXapLTefpqKQx3QX7Kmo7MDE9cFjkpsSFknWzAcpgD FxP0yU3ov1nnKCsZpynN/Gim1aGtBMBX9tbE8Uh9RqAjKHT5m6xGWwsXjNHLts8u6ceVTEsk 1OEgd7tLThuq6GOD2KQ8K+OqjG/MjRTKnUNDRLoViMA6tjn5Ys11xTGS445FLbv1oGuXzbt3 zqNsS4ywa0JitIG3Lm6+laBhC+wop/OTUg+4QC/sn+Z0z6VrbWNP+SAgWU3J94aRGpFZjFtZ EQ5pvU= IronPort-HdrOrdr: A9a23:CoCbValumBneHMrTcx0d+4aTk+npDfL63DAbv31ZSRFFG/Fw8P re/8jztCWE6gr5PUtBpTnuAtj7fZrjz+8T3WB8B8bcYOCEghrPEGgB1/qa/9SIIUSXndK1s5 0QD5SWY+eAdmSS4/yKnTVRa7wbsb26GKfBv4njJyAEd21Xg3oJ1XYANu6IencWeOFUbaBXKH KNjvAsm9K7EU57UizDbEN1OtT+mw== X-Talos-CUID: =?us-ascii?q?9a23=3AhB0woWvTemnKrl5wHSfFcGuE6IsPVSyC9FPdOXW?= =?us-ascii?q?UJklXGZCSU3u15KNNxp8=3D?= X-Talos-MUID: 9a23:Qp7+bQpxNLcWg0goLCEezwlOH+JrvKOTNFg2nM8ehO6UbgV/IjjI2Q== X-IronPort-AV: E=Sophos;i="6.00,245,1681185600"; d="scan'208";a="112962350" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=SKEyC9Cb7uUMfNTUtNSUlnjvlGxP5Q4Jiwf27SKBpp42RFbQ7b/4ObA/87UKh4ea/DexwQXeU1DHDDtw1syBNbfBnG0T2A7pQgWU+GTyKbu3gPRWdaa+LjW2N0Yey/UFjymMhtyZtOYFGNL7aU12Stft5XKRrGrQvK4oO+OSuKOgVa0piZXyrfMBbn0cWu8hOMGUg57dmpd4Qxh18hN98RuSfgo7RocbPLcJkCIy26NRnGLe0KPQohZVL15YXwS9fXJmSSRS/Z15SfP4J76JSyYLHem97ckjoctzcKYz6OnUDmalCpJfK53tNaS54hZ4cgKIMFG5Sl1rtSFzxH29wQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=6fJRxw4S4PmsbnyYquTXTmcIyivHNuY0t4uzMFeJBvE=; b=CwmqYsiT/mQsGa4oI6iiilh9me01PfuXpRAzlkzRdf499fBvxwbTueUCuGNA3yT08wg0mfWKTpsWNZway81CKcdTp3o8c8p3Ji5aHtZZ9h9vsG8vmOZF+JfIPkCiVHBHiaLXkn4s7tO6t3Vq74r/grUDBAs6eN9jyGylxJEnuTPIlxfGzNQBsq3OozRkI/6wYYi92nqpr5c4CMN5kWmtfuQ2zhL9LmzYdzcQXrpHHsx1hAKiug261FmqfILhGDLOTQFwjroeu9UjvuQPe62oXfaP63y1Kftvid/UREnOMyE074kymplIOtiuiAoQuKMZomjdpa+yFfLBGJ38f4kAXg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=6fJRxw4S4PmsbnyYquTXTmcIyivHNuY0t4uzMFeJBvE=; b=NG0HBkbzW/9CXU31fS95fZZ5oQZtZeTILHviKZGWkYxex/94k5uT0NfUHIirDJI2otNBUsMpK8nnXeJL2/eUY9L+sXb3l5iU5cCzvAuSUHMJiECI8+BirrbzsSYuwqKktCktQUsw3PEZ8Gn6TRuZVEcvnTvdofBYq+DpHk+tDe8= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: <50fe5a44-2e26-461b-1676-abae665816e6@citrix.com> Date: Thu, 15 Jun 2023 19:17:18 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 From: Andrew Cooper Subject: Re: [PATCH v3 4/4] x86/cpu-policy: Derive RSBA/RRSBA for guest policies Content-Language: en-GB To: Jan Beulich Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , Xen-devel References: <20230612161306.2739572-1-andrew.cooper3@citrix.com> <20230612161306.2739572-5-andrew.cooper3@citrix.com> <82ee7908-4597-433c-0aca-8c0ad22fff13@suse.com> <386058fe-e9a8-d0e1-c3a0-3f15a4585bd5@citrix.com> <8a44c577-07e4-fbc4-d402-efa581042079@citrix.com> <35ac1ede-73ed-c748-9eae-06b156145274@suse.com> In-Reply-To: <35ac1ede-73ed-c748-9eae-06b156145274@suse.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LNXP123CA0008.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:d2::20) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|PH8PR03MB7308:EE_ X-MS-Office365-Filtering-Correlation-Id: 395ef228-4630-49cd-b09d-08db6dccc474 X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: bD8h80uB2utnrgVP0Yp5M1cV5Py55cM1TC+khO1KV0mICxMm1fGTi+u/W1TzNhNMxwkClkI+7RlKph9Wm1+if9ciWmjjqBQwTx8JbMwhk2ubFcw3GWP7mM77lpjdFnF0wuQtqi1vR39ouB5bZNAXIiUTgB3yLfbscwWMOzS6dBStUa+8lKdvPtrWorVfmPbmKG8gsCNmWI9PiJihcungM3O+TA/RPoN3KDctKLCbZiJo2U4cmFjDCeXj6+AF4ashZv8vYSMLEXJ8aOVs9ozbTzoXllggjnqytU0tZ4qzxQYH4nXONx66NtQT9ot9ICHsMy7q/cmU6TtEUPTAduRJURRW7cJDFS1Uk+alJmx484cTlN3TAinDS0jiR3ETmoJQELjWV2IiekF3YndPy4i8Fhx9OrqQ7Sgkrv7q97HN5IcFtkXbpahxSlElwLxhGQF0N7MRBFO/r6MI0vJF/LgUWL+1cHOgsgLyojSVzF0oRJzPOxJwD19z8CadIhIBy3xrlJie7p+IeaNhmrbJCf6NVvlaeTIGf9McXp1iBVTt9o8yzQIO3raxP0K+pbVoQ6HtwemGXl7dh3QkqwzMC1jiwtlVwHSN03TU9o9OJxLKBrMChIRXt9uAYLxB6TMKca+Btd/x4ghsm2xxm53KXl6x0g== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(396003)(366004)(346002)(136003)(376002)(39860400002)(451199021)(5660300002)(478600001)(31686004)(54906003)(8936002)(41300700001)(316002)(8676002)(6486002)(6506007)(186003)(4326008)(6916009)(66946007)(66556008)(66476007)(6666004)(53546011)(26005)(6512007)(2616005)(83380400001)(2906002)(38100700002)(82960400001)(86362001)(31696002)(36756003)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?N1ZnOHZoa0xyQ0RXYkhWdWh3K2hwOTNsR05MWXJGVXBUSnBWb1dlODRsT0Ry?= =?utf-8?B?ckU3Z3pSdm9qZ3dhVVE2dFoxZ01rRHdVb0JjVUorYzZlb2ptbUIvNjRValZT?= =?utf-8?B?aEFiMlZqK0dwYXdiYkd5V2JOYmFMV2lmMStzZ1lxUmdLMzVvalplNmJXVlFC?= =?utf-8?B?UldHemJWYUcrOWhaT1R3ZmdyaWQwcEswemN2NzhDMk9sQXFyUmJYUVZyU0Nj?= =?utf-8?B?Q0VGa1JMNTAyWlIzUGRRQTJaZlZRWGkvYmZtMmVYd0tJM2ZQeTlHRi9kYlJs?= =?utf-8?B?RzlDdEkvaFB1OU1mQnF3VlgzVXVZRmpzQ2hRNmlxVkh4cE8xN2NZQWZJLytz?= =?utf-8?B?RE9yUEI4Zk9NK1A1VDdGWDdWa0J2a1ppZTIxR0dvMjNCTWs5YzZ1S0ZSQ1dU?= =?utf-8?B?NVJrU3Y1K1E5eWl6UWNKVE9pUGV6dVRrQnMwRlJXZ3hPRitHalM3K09PcUY3?= =?utf-8?B?eUI0bGFQNVNvblV5Q0FSSVFKK2F2eUYrbTZxTjZnY2p5Ukl4MElYWXFiNzBs?= =?utf-8?B?TVZpNnh6bmhXaEttbUo1eFlKZ2wzbWl0cnh2dWliTFVMS3E1K1FpalpIdmN6?= =?utf-8?B?RDRzRHlqQUNXL2MrNmF4NFIzQzcxMHh2ai9hcHpzK3ZuTlhLd1dmVGZ6bHNG?= =?utf-8?B?eTJGS1lwcFVNenBWRkJqWlV3V05nVnRwOXB0QnNRLy9DazUxWWJKT2xtNUtw?= =?utf-8?B?OUg5WVNwbHFUYndId1BOdmdEb3huNnZPUnBNb2x5YzMrM3JiT3I3ZXBuTjJX?= =?utf-8?B?eDBad2FMakp5R2FjQnkxbUV4dGVIZlNnbDEyWXUyMDlFYU1vbnNQcUtydGQ4?= =?utf-8?B?OCsvaUZyVlF1T1BvWlUwQXZjdU9yYXlCQy83eHhEYzJRL0ZxYmdvcElFa0Rh?= =?utf-8?B?TUF6bWtMemF4cWx4WkFsOFRGRTM4Q0hsVFZkbXNDYkpLMEh4WEhFalU1Wk0z?= =?utf-8?B?eWJlaUxwbG5YQjB5Ukh0akovaW9RbTg1WXA3eWpRTm5WaS9peTU2U2V0ZHJF?= =?utf-8?B?QlllVnAzTFNoUXBxbmhJdTdYT0dlSUV4L0M5YklkUzhLL0ZENmhTaTVqY1NT?= =?utf-8?B?dDlQNUhBVjE4L2xtN01IckZVSkRJVm85TDZDWWczeFVjcWJSNTFTNVg0MEcy?= =?utf-8?B?Z1NWQytlK2MxRjc4NzkxeFdycGZROTE1Qm5aWUlweWFXc3MrMnhyYmxNTk9u?= =?utf-8?B?RkhJbHRIdWl6L1MzMVFDbTBVajVaMThncWk1Qms2OHY4eHRyVkVsWDl0SUZp?= =?utf-8?B?cGdYM0JWbXlYNC9Ob3NsN0ZQeS9jam5sdFBRZmVjMFFDeEFBQy9LRGQrY2RB?= =?utf-8?B?eUNMTERBdXYvRHFIYmJaTmpBTFNiVndvanRKQXZGcndZM1lJRXZ3aDlCTW8y?= =?utf-8?B?ZWNNUGdhWUpLV09takJxQzNGV1ZsQzVuU0pWV2JXUzB2YmNLcnZHeGp6akEy?= =?utf-8?B?WVNoUnNpRlF5WWhTaHZYZzBjdCthRi9udE9LWmFRZysrSlpIalZGNWRkUEp2?= =?utf-8?B?dXRPK0REUTJ6OThreko2UkxxYjBkQkNtSWFBT2lXOFUveFowVnVYdWc4WGRa?= =?utf-8?B?cnFGY2ltbEppbThReGxFRTNpbkxMY04yY3BKS3pSNjZvVkx3blRGeGN5WktB?= =?utf-8?B?NXArZ3JjRDZtNWhwZDNvb3krR1ZISkhMeko3Wk5jQ2d0NklYOVBDVU5ueFUr?= =?utf-8?B?TXFFSis2WXh4ZUU3cFd2TjBzMFBPSW16MVdrNGw5ZElsTjQ5b0pReWs4Q0tl?= =?utf-8?B?R213V0I4S0h6cHFpRXNDbTAxeTB6dDJ2L0NQczhRT2xka0g3UmNld0lmRFFF?= =?utf-8?B?SC95M2lXR3BVL3lZUTZmWEhCVTl0czluQkFmQ0tic1RhNkNDU3dUOFhLbGlF?= =?utf-8?B?YVJWbE9xRDdZVzJ3L0cxZmhCN1hvRFZGa3lzUkZBUDVSd3o2UHM0TjRWVk9D?= =?utf-8?B?Z2pQS1lTdmd4dlhOWkxYVzA0bE5oZEVGekdTYnZSa04vZTNiVDJLU1hZVXc0?= =?utf-8?B?ZllJeURZc1JKSjNmZTNiNHYwalR0bU52cmVzbHIrb0VlZzFqanhCWGZXK1pa?= =?utf-8?B?ZktVeHhUSzhEcThvN0o1ejREL3hEcmNMOUxkdHFFOWpBT0ZxVE5CNzNkVFB1?= =?utf-8?B?VHF2eXV1S3o2dVVwL1JZd3JFcUhJZEtpcitUa0JFNlMwNFFtc1psckVZQ0x3?= =?utf-8?B?UXc9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: celK906iLjdjiv9yTB9LQlgGdrN3/eqzuz1usURSmsg7I5QkzeR6Wqbnz4vIsZ9hsaYHYwr8zt8TKjoZWt5C3X+6/fKZA5BmDShZkHq33kCbATtnzUej3A8Z6129zdC0PEk1RnP+hTtbl1SdXdKehdmFp94MGwc5J2rQN5GvL1l3mRpKZLBl96rwLSNe8KT+ZSv7UmWGhdSDu5stc8WPM+EyDruePecc4mriiKtYfS8DN2hX5X2e3c7xGdesFizEKZBgpO0aY3EhvM537Z5Fj+E9p6QvA/gf+4XjvAFGnL1y29+ks5+Zm1H8zBvLj8TAjw+UvpkkzrZgsmXn+CKqAcnOclNYvxvpfEu+e9YRM+vMp7dkqvNNXKPNFGj/srZWBsGlf+udKSCnRy+x1jTXEzoS5SQM317BUKFVLUQWLOHsdhSQ/3/zqGBGhxf0xdDhPD5nu3Awg2neNem+jtaq8RIk85gB6rUcEKRpiZQBHCjwKDuLOsla5fQi1B0hkORsRvS+/Murd3PdBWOdUzMkemPQ36T0+Y+tpFM9OliVo/3KcTK+0Jw/7xfYqZ8Eb2eaYjR/VTCyNY4X0kzLZXfqEk24cpXAbwqO9xHXFL93d6u2uxu6QKRqXN8KOdwqmcW2CPMEPbNFnr+guEJKjep2vRN4IyiX6OY6mW5zg4Ci7jRpcusWKlGkOQ/vTL+XmpjddWB+IgcIN4QCz2uHPNyTj9+e+hTr1yZel7EzN5kjmZEUksLktA8GFe/Zh9F1WlynKE5/sLX2xB6wiW9H9s56El+j+c3wGrLPI4GIVoZYYzo8Qqe2IwWFrykkvAtMEp/x X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 395ef228-4630-49cd-b09d-08db6dccc474 X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Jun 2023 18:17:24.3380 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: VnSsJjcyWcOjPjScTZpfe+ZOH1NzGpNNMcxDvXti509uVgAQ2AGpM/BzUFevW2QvnK1DV8F2swt3hCalAEl3baiR393/7RH0uzY6tumYaSE= X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH8PR03MB7308 On 15/06/2023 1:13 pm, Jan Beulich wrote: > On 15.06.2023 12:41, Andrew Cooper wrote: >> On 15/06/2023 9:30 am, Jan Beulich wrote: >>> On 14.06.2023 20:12, Andrew Cooper wrote: >>>> On 13/06/2023 10:59 am, Jan Beulich wrote: >>>>> On 12.06.2023 18:13, Andrew Cooper wrote: >>>>>> The RSBA bit, "RSB Alternative", means that the RSB may use alternative >>>>>> predictors when empty. From a practical point of view, this mean "Retpoline >>>>>> not safe". >>>>>> >>>>>> Enhanced IBRS (officially IBRS_ALL in Intel's docs, previously IBRS_ATT) is a >>>>>> statement that IBRS is implemented in hardware (as opposed to the form >>>>>> retrofitted to existing CPUs in microcode). >>>>>> >>>>>> The RRSBA bit, "Restricted-RSBA", is a combination of RSBA, and the eIBRS >>>>>> property that predictions are tagged with the mode in which they were learnt. >>>>>> Therefore, it means "when eIBRS is active, the RSB may fall back to >>>>>> alternative predictors but restricted to the current prediction mode". As >>>>>> such, it's stronger statement than RSBA, but still means "Retpoline not safe". >>>>>> >>>>>> CPUs are not expected to enumerate both RSBA and RRSBA. >>>>>> >>>>>> Add feature dependencies for EIBRS and RRSBA. While technically they're not >>>>>> linked, absolutely nothing good can come of letting the guest see RRSBA >>>>>> without EIBRS. Nor a guest seeing EIBRS without IBRSB. Furthermore, we use >>>>>> this dependency to simplify the max derivation logic. >>>>>> >>>>>> The max policies gets RSBA and RRSBA unconditionally set (with the EIBRS >>>>>> dependency maybe hiding RRSBA). We can run any VM, even if it has been told >>>>>> "somewhere you might run, Retpoline isn't safe". >>>>>> >>>>>> The default policies are more complicated. A guest shouldn't see both bits, >>>>>> but it needs to see one if the current host suffers from any form of RSBA, and >>>>>> which bit it needs to see depends on whether eIBRS is visible or not. >>>>>> Therefore, the calculation must be performed after sanitise_featureset(). >>>>>> >>>>>> Signed-off-by: Andrew Cooper >>>>>> --- >>>>>> CC: Jan Beulich >>>>>> CC: Roger Pau Monné >>>>>> CC: Wei Liu >>>>>> >>>>>> v3: >>>>>> * Minor commit message adjustment. >>>>>> * Drop changes to recalculate_cpuid_policy(). Deferred to a later series. >>>>> With this dropped, with the title not saying "max/default", and with >>>>> the description also not mentioning "live" policies at all, I don't >>>>> think this patch is self-consistent (meaning in particular: leaving >>>>> aside the fact that there's no way right now to requests e.g. both >>>>> RSBA and RRSBA for a guest; aiui it is possible for Dom0). >>>>> >>>>> As you may imagine I'm also curious why you decided to drop this. >>>> Because when I tried doing levelling in Xapi, I remembered why I did it >>>> the way I did in v1, and why the v2 way was wrong. >>>> >>>> Xen cannot safely edit what the toolstack provides, so must not.  >>> And this is the part I don't understand: Why can't we correct the >>> (EIBRS,RSBA,RRSBA) tuple to a combination that is "legal"? At least >>> as long as ... >>> >>>> Instead, failing the set_policy() call is an option, and is what we want >>>> to do longterm, >>> ... we aren't there. >>> >>>> but also happens to be wrong too in this case. An admin >>>> may know that a VM isn't using retpoline, and may need to migrate it >>>> anyway for a number of reasons, so any safety checks need to be in the >>>> toolstack, and need to be overrideable with something like --force. >>> Possibly leading to an inconsistent policy exposed to a guest? I >>> guess this may be the only option when we can't really resolve an >>> ambiguity, but that isn't the case here, is it? >> Wrong.  Xen does not have any knowledge of other hosts the VM might >> migrate to. >> >> So while Xen can spot problem combinations *on this host*, which way to >> correct the problem combination depends on where the VM might migrate to. > I actually view this as two different levels: With a flawed policy, the > guest is liable to not work correctly at all. No point thinking about > it being able to migrate. With a fixed up policy it may fail to migrate, > but it'll at least work otherwise. If you get RSBA and/or RRSBA wrong, nothing is going to malfunction in the guest, even if you migrate it. The consequence of getting RSBA and/or RRSBA wrong is the guest *might* think retpoline is safe to use, and *might* end up vulnerable to speculative attacks on this or other hardware. And the admin might know that they overrode the default settings and forced the use of some other protection mechanism, so the guest is in fact safe despite having wrong RSBA/RRSBA settings. I don't know how to put it any more plainly.  Xen *does not* have the information necessary to make a safety judgement in this matter.  Only the toolstack (as a proxy for the admin) has the necessary information. ~Andrew From xen-devel-bounces@lists.xenproject.org Thu Jun 15 19:38:19 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 15 Jun 2023 19:38:19 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549792.858537 (Exim 4.92) (envelope-from ) id 1q9snF-0003C0-OX; Thu, 15 Jun 2023 19:38:05 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549792.858537; Thu, 15 Jun 2023 19:38:05 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9snF-0003Bt-LF; Thu, 15 Jun 2023 19:38:05 +0000 Received: by outflank-mailman (input) for mailman id 549792; Thu, 15 Jun 2023 19:38:04 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9snE-0003Bn-Kz for xen-devel@lists.xenproject.org; Thu, 15 Jun 2023 19:38:04 +0000 Received: from mx0a-00069f02.pphosted.com (mx0a-00069f02.pphosted.com [205.220.165.32]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 231de057-0bb4-11ee-b232-6b7b168915f2; Thu, 15 Jun 2023 21:38:01 +0200 (CEST) Received: from pps.filterd (m0246627.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 35FGJh0V001345; Thu, 15 Jun 2023 19:37:51 GMT Received: from iadpaimrmta01.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta01.appoci.oracle.com [130.35.100.223]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3r4fs22wem-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Thu, 15 Jun 2023 19:37:51 +0000 Received: from pps.filterd (iadpaimrmta01.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1]) by iadpaimrmta01.imrmtpd1.prodappiadaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 35FIEBg8012373; Thu, 15 Jun 2023 19:37:50 GMT Received: from nam04-dm6-obe.outbound.protection.outlook.com (mail-dm6nam04lp2046.outbound.protection.outlook.com [104.47.73.46]) by iadpaimrmta01.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTPS id 3r4fmdn9yg-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Thu, 15 Jun 2023 19:37:49 +0000 Received: from BLAPR10MB5009.namprd10.prod.outlook.com (2603:10b6:208:321::10) by BN0PR10MB5014.namprd10.prod.outlook.com (2603:10b6:408:115::5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.25; Thu, 15 Jun 2023 19:37:48 +0000 Received: from BLAPR10MB5009.namprd10.prod.outlook.com ([fe80::2bb9:5d2e:a65b:e731]) by BLAPR10MB5009.namprd10.prod.outlook.com ([fe80::2bb9:5d2e:a65b:e731%7]) with mapi id 15.20.6500.026; Thu, 15 Jun 2023 19:37:48 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 231de057-0bb4-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=message-id : date : to : cc : references : from : subject : in-reply-to : content-type : content-transfer-encoding : mime-version; s=corp-2023-03-30; bh=8/0ZMmb2IS1LTvLJrKGYHW1mfHRytLxU0PJ4reqOB2Q=; b=r1V5I00TKfBaAGSMXjyfnTEDjJd4FrRinLH9jQVLVmWDgstHrISnVhp8c/izbuLHAdSp 4aNpZSqQb0vQEyr6izOLUL5FibfgCISArBNTj3mDt331wDmIZbnR8R8QV/lOU5VdeGuQ za1QGzRrMjQ+qUseXal/W9wS8BsZ9p4Fi/tNpSzdg4O+hx/t44Dre5J7/XtDtOe1Q8mi Vf+6QHzFkqpvE9BXB6Gro07XGsRaIJnpbcLWlZIGgbD1JB2aVuykOzBBkY0p/bfCXpRQ JylubfCHZYFFy/CaOyvoj6LAecZg6RJmjnyTesJj0vW+rVLttN1jaGKhXxKdFZGWvGKA Pg== ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=CJjLPaIH5+dBf+ZBsSERAqaM29HV+N+UAURTkBTpFximpMWm2kltbaPlqK2MAuJxYvK7ic8A+QpTr1VueKdrw10lVSRhYDqeTACAMF0/nmVKYEJN2UonhRkOsJisXRcfjncdZDR2DuwSnLuTDZltQdUTNO2oyI3JtRnDUx7OGtJmdVUBbmBHcmp+Z/8aczhpftPHcOk8zqiLSUR6LYkjhoO52ajEP8JiumC6ZsXhx6DnGwRswDf08+BPmiol5oLE5NEqoK5B2sQUB2u3xDDmwg3l+mwFeALaH1al1gmYnwLkCdlWR7XAqYUj4ONgb2iPB9whI17Ps5jOKgtFudkYZg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=8/0ZMmb2IS1LTvLJrKGYHW1mfHRytLxU0PJ4reqOB2Q=; b=KbucuDls8G3ryhoBGGvL1B2IaHKdM7AmpEfohw4sg9Y5qpe2LVkrNGg/TIJtE2s1wINg00KKf340gdTIFh4ZL9s+wy8I8J2E8ua8BmFkHEZiHkmzbPZ5lpsNLqqPSl60WGmyFbg6jMeOOnBEa5tAAWlGp8ZX/EzJeGYNulNvlAz/4O1cExjoC/hq9RGviTyxPj+6v4Is4H1MecMdtM+wAvnJ+ZlvO5l0PuXsCWg2x1GJG2bk9seM2F98gIZkj0w5ukHEDFpRSaGbVRnfqPyGcmr+WXQMrwAQ9xXXmgOWmf/Qs5XLxtFVD7ujXelohS5E6eXpWwAbL+pHAEeQY5X30Q== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com; dkim=pass header.d=oracle.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.onmicrosoft.com; s=selector2-oracle-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=8/0ZMmb2IS1LTvLJrKGYHW1mfHRytLxU0PJ4reqOB2Q=; b=xpub/Qoh8tOHJOFd6fHQaApDZKtdtTdJhkOAr5tqIx6vmnm9HJF1jf/1IYhQY/Nw5ABDDR0eJJfzaX3kgh2zUPnRZwR9pLvcrXMv7zJFgUreAan5Aby6GYcFJgFRcM0PRcsGyt3dR5d1KR9EiJk/hfj/Ql1wL3IKfX7jaJVhVXI= Message-ID: <08357576-145d-2e84-c6ba-b48583bc6bf2@oracle.com> Date: Thu, 15 Jun 2023 15:37:42 -0400 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Content-Language: en-US To: Juergen Gross , linux-kernel@vger.kernel.org, x86@kernel.org Cc: Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , "H. Peter Anvin" , xen-devel@lists.xenproject.org References: <20230615123959.12298-1-jgross@suse.com> From: Boris Ostrovsky Subject: Re: [PATCH] x86/xen: set default memory type for pv guests to WB In-Reply-To: <20230615123959.12298-1-jgross@suse.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-ClientProxiedBy: BYAPR08CA0025.namprd08.prod.outlook.com (2603:10b6:a03:100::38) To BLAPR10MB5009.namprd10.prod.outlook.com (2603:10b6:208:321::10) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BLAPR10MB5009:EE_|BN0PR10MB5014:EE_ X-MS-Office365-Filtering-Correlation-Id: e6104249-d8c2-46e2-05f2-08db6dd7ffb0 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 80Kpg6Tzohv8RleQzx5VTMv1KPr9ASXpDD1R6wmdxJaeJc1tNnJU+LLIRMM7Vn3QvpJqcgqeUhOZByyFJXye0ZcNr7A7/6TyYDjIKOL9bzzTMl2WkqyVeOy8c4SLZPqrGdeWndqRn2OcumRij7SSn3KYrgYhIZmIx2ljsytgwRdtTUnAc6eZOiOL81V48tg/Ux16Plv9HYYLkeFx1rsmigpLcjSGJFfTX7WWDOxJkQnkSt3Cp0quuRX8wnlyhlf67kDdd4TPRvv9U+gFwP6/V8U4nm609cYTAUcxJYu2m4JD1A1semlfRbd3IzRpu8Y0EJX8MPdeFLC4Fgyypb6AVEIIOl59dwep1vF+3AFHT8ZMXk0TFezL1nRB7R2orKwheyjkBXXaeCkWB+LbJnZRV8pGFuYb9V3UxvuODEk/h4IXmUgx83WZsZ41d8edJM7sSU6vLY49bg/oYiVzjngdhr+eznF/vAYB3vdzHK7FjAbCwWX5LRDnaiRLOwDVpfYbBA4Y53P1VEmJcx+q84jhJ07/wSYr1IRccQ55coojdH7OgtzY++RvW1UaOkimNlRbg1piYS/5QN4AmXlE9n1PAnpg5mQAwxlyfs7PX9JfQkKALOXwOqUfuZYIEmdgSCZ+gz28+cDOhjiIcfKdvSH/9g== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BLAPR10MB5009.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(39860400002)(376002)(396003)(346002)(136003)(366004)(451199021)(36756003)(558084003)(86362001)(38100700002)(478600001)(41300700001)(8676002)(6486002)(8936002)(4326008)(31686004)(31696002)(54906003)(6666004)(316002)(5660300002)(44832011)(6506007)(53546011)(6512007)(186003)(26005)(2906002)(2616005)(66476007)(66946007)(66556008)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?WW9tbi8zNlFacWt5UU83OVVleVFsa1YvZVRQT254V0tieXVBaHlSaFBzRDVu?= =?utf-8?B?UjVBMFJ5TmNiV2ZKSHg3NlFxWmxyN0JCYVdjckU1Q1QreksxRUU5SUFKWE81?= =?utf-8?B?SURwTCszcCtuek0yOUFzMXVLY0RJNGVuM0ZaMTdBbklRK25yc3phR1JLY3JR?= =?utf-8?B?Z0FiZTFNZlhLaGVWWndDZmdLU1pBdWlUYmZ2d3A1QzlsT3NrbFNrUW5RaHNj?= =?utf-8?B?cVZudjlFZlFndFIxakdLWEs4TWpGTnVLY1Q1T0VRQ2ZURzRUeDlWU1hQM3da?= =?utf-8?B?MDUvM2tNM1lhUTh5NTBYRUFNOSs2M2JUN0V2dFNDeWF3SG9DaW13UFZoeUVD?= =?utf-8?B?TlJsWUgrbktEcUdvUS8vODYxdm5WTk90SkNuVWcrYnBUdEwvY2pydjRKUXJs?= =?utf-8?B?MERUTmxjMUxMVkhRRmxZc3BmVUFVMFFUaVBOK0toRUE1MFpkcHNkRlIxeXVR?= =?utf-8?B?UkZIcVJjT045c2JYajMzelY5Ym9SMHNNMGFTdlpMeEk3TFlTb09ncDVaVEFq?= =?utf-8?B?SDVvZVpzcFZBZDcrOXM4M1RPN3Y5akhPd0NERG41anY2UXZLSGxpbFVGbDJu?= =?utf-8?B?c0xXSi9NY0gyc2M1cFQxcW1hcFlnaDZubVA3QXpLV01NaStKTjY3UUhGalk0?= =?utf-8?B?RUlTczVaaThndUNIODhxdGRINEIxNnpwUkR3YzJ5OHNkMG9LZjF5Q2pjdkhw?= =?utf-8?B?K3NEUXdGK1NaVFpnY2o5dUxNWTRkMEJ2cmlJaWNvd3FQcTRoMyt5VjYzQmJx?= =?utf-8?B?bzNzbTZ6Z0w4cTBpNkZNSm9rcTN2eXpyR21zSUR4VGJmUEZsOU1hSWNQNEVp?= =?utf-8?B?RkwzWDVoNTVvdXMrU1p6M1cxcHVGc0Rucm5lZ3dSOUs5YUJXOWpnR3Z1RStw?= =?utf-8?B?NzFueWtGUjZ2a0RZa0pFSkxnbG5xUHRJTCt6dTRDRWxBV3Iyd0NpanlvSVdm?= =?utf-8?B?R01ySnV2VXhNdGw5Znd2djRFT2N5U3FpRGIyL2J0NU9RaWU2M3JvUHYxaHlD?= =?utf-8?B?eG0wd2lQVkJHUjdVUXBSbnU1aGlCQ2ZtRlIrVjhwSGR0blE3N3RoeGZqWVpH?= =?utf-8?B?dU1VSElmdDJOWXc1aUIrbXhWQzBvUW1XOE1rN0dKSVA1dUZuTXBjUnkvSlhu?= =?utf-8?B?a3VjWk1mQ3E1TElZWlRsVmJRaUFTNGtmMjRadzBFM2pVV0FmU1lzcmxnSG5U?= =?utf-8?B?SVJxc0cybmtKcjZtWFlKRk1vWmpIeU9nbkFRVlZDZG1qSVRIWWpMaHFHdTAx?= =?utf-8?B?a2p0SHdNV0ozQWhVb3gybWlsR2dFRCtTTXNNaVRML01zVVNOemNVaEhpMG5i?= =?utf-8?B?NUFlKzAxY0JqNmlwZ2R1NWpteHM0WDNOeXBMV0twSUw3NWdkOWdoeVZmTk4v?= =?utf-8?B?WmN1dVZYSjFTOFpnYW5BOWZEQ0tQYm9LZzZzbWVhZzRRaEM4RWJIWUhJNDZS?= =?utf-8?B?ZWJuWG9PcklCWk9PVHVnTHY5WCtWNVpVcUx5MXB0UGZ1c1pTSjlYYXZhdUVN?= =?utf-8?B?Vk1RWXdMbWdoeGdVZFFpb0ROUk85OFJNK0QxWEtBdUtrVXY1S24rcjdjNHdW?= =?utf-8?B?bE1oejRzZU5nUlJZSjdBZHUrVXd4WTkyVllmd0RUTzkxay9tRi9kVHFPVDdZ?= =?utf-8?B?LzNpYmNvR0lMMGNNYUpPUWhHMWNKdzRDK2ovenJsV1J0Q1FQQksybTFJS09n?= =?utf-8?B?dlNrUTNmQXRXSGhSeDMvZUVnVDJxYVRzL2F3ZWxuSWxnS1VLc2cvVWRuTEV4?= =?utf-8?B?VFFhWE94aVl4RGR6Y29sYllEcW5Oby9HVkduNkJmU2dyYW50ZzFSZnpvTjU5?= =?utf-8?B?dUROalFuUldDV0Y1dkJBSWEyU3daM3FqSUxGZ29Xc1NMTlJhNHBZRE0rOXo4?= =?utf-8?B?WXFncVdSNmRLU3lINXJCZk9xNXA5UDVHYVJzbHJKbXVqQUQwK2JQc3gwUnJZ?= =?utf-8?B?T0oyWEV4VnoyMEFibXl5T3lBQlBzWEc1Y1lhbTVublovbmJRVlJhbVh1c3lW?= =?utf-8?B?NnU4ak1WV3lNVWo2K1p0RU80cUxlOHhUYXJuWEFXbE8xcGJsZTE4M0tyQjNt?= =?utf-8?B?MEdzaVB0aUhjWVdEdVNndHF5Tkp2NUdxTzlvak4vWDd2S2lwemsyaUhrcHBS?= =?utf-8?B?ZEp1VWpKRTc4SzZIWWtsaFIrSG9RRVNmZWt4WXZNeU41bEdjSU53RGc2bUxq?= =?utf-8?B?M1E9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: =?utf-8?B?NVFrRXdJZVZuWURkeEhVaXcyVElxTTZPelI5bHJ2Vmtuc1lDbXpMNVUvbEpr?= =?utf-8?B?K3prL2luZHBZY1pmRXVwTHJzSGFkbE1JbzhnazduTmJQckI2RnJQU1hHUmkz?= =?utf-8?B?Ym84NFJVZENZbUwyaXlHSno4VS9yZFNZd0dQK2dTSlJkczdxYzhpR0RJakVz?= =?utf-8?B?YWpxdXlJZUxYUkYyUWczTS9pV3hmdUZkYjdjT01XdGZ1QzA2UGJvWXYrZW1T?= =?utf-8?B?Vkk5a0ZMY3AzUUFVTXJ0S1Z3K2VHNVhoLzl1VXV3RDR1LzY3YTA2VjhqUGlU?= =?utf-8?B?b1NkdXlaUktCMTRIazhrZVRZMzlacDErZkdKTVlpZEJKZEVseklSUGk1R1NC?= =?utf-8?B?UCtjc0NuQkhlWlphREpUY0tqQlNUWDJNemtnT2JXeHREZEJwRlNmRTdtRzIv?= =?utf-8?B?Vm4vZkwyemdUMkwxODhmckN3RzBpNlpRR1JMMzBJc3lPZG1KalVpd2lCb1BT?= =?utf-8?B?VlJVV1dlSGhESGlFTHNDU0taK1ZYMkNUQzNiVWdiQkRjbnNTTlgrZEt5QWVC?= =?utf-8?B?d0N5L25EMzJKOHZZUm1vNXB6M21yK1ZaVWorYmc4WEl5RDBCNnlpclB3ZWhY?= =?utf-8?B?VkpmbkVMRktXclRvSVZ5cDZnY3g2WWljMnNlVUo1TkpjRVpwekZxZTd1bFhx?= =?utf-8?B?UVhad1RzV2JmSldrcGx1bG1FenlwOXllV2JVSk1CdkhDTmlDZTBhMVgxV3Z1?= =?utf-8?B?M05wcW5UMjN0OUgvNmpSSm9Wb2pDYUpRWWJCOWhqblZRK2dTNHdVeWFqNHRL?= =?utf-8?B?cXhVRVVFcGFwYnhGbWFDNTNQWXJEN3ZpQ1diS0pneDkwVVIyOTdNQTRXY2U4?= =?utf-8?B?ODJ3d3doOVBsVTdqYzIvMTBuVjV0ejJkNGo0QjFhT2pqVndJQ3cySmNtNVZi?= =?utf-8?B?V0VuUXhldHc5OGNCcDVzc0lSWXRCdS9rUTNmRnBqVGxObDVVcTF6RHBnRXgz?= =?utf-8?B?dFJINXNHQ29RNWFqUzZoMUVRVzR1NUFPcTlaQ3lQZkZrUUFuaEpVVkllT1Bi?= =?utf-8?B?WkMwQVBEYmMvUzROd1IvVE02YTl4cXUrSStjWlh5bHRuZzNsTWhpU0pEVm1W?= =?utf-8?B?QW1yYy94N2kvVWQzNGtKaE9iMDcyTHBTMlVlSElWZFM2TGhCWGZPUy81elYr?= =?utf-8?B?bzBXSnFVRlZMdW10TzJRalZQL0ZlVERMT0FMY3l6ZHI4UlllYldQcjYzM2kr?= =?utf-8?B?RktuWkQ0cytua3FXNXZRWWRCVFN3WnBzT2hQVGQyYjRJeHFUSmY4TVY5ZzJR?= =?utf-8?B?cytRNHIvVzNhQi9XdHlmcDF1R0RZbDFJdlQzYlByeFFOL21XZjNaYjlTdXhw?= =?utf-8?B?eXg4Ym1QOGlXUWo5QzkvbUN4cjV4bjhOMVZ5Mkt4azQ1cVFlMTVvQUdjSndN?= =?utf-8?B?V3pSTEd1Qy9CY0E9PQ==?= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: e6104249-d8c2-46e2-05f2-08db6dd7ffb0 X-MS-Exchange-CrossTenant-AuthSource: BLAPR10MB5009.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Jun 2023 19:37:48.0356 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 4e2c6054-71cb-48f1-bd6c-3a9705aca71b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: Cvo5+LA8zJ2gCcy+b2ka51xKuN6n0I0bQsYyCvK1fP/xlEsNiFCAfTWNLZpKYgqdWaHzDeGUtvCN6O6lhI0Cl1w59bJ9fM4PTTQp+2sjWQQ= X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN0PR10MB5014 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.254,Aquarius:18.0.957,Hydra:6.0.591,FMLib:17.11.176.26 definitions=2023-06-15_15,2023-06-15_01,2023-05-22_02 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 mlxlogscore=999 phishscore=0 malwarescore=0 mlxscore=0 adultscore=0 bulkscore=0 spamscore=0 suspectscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2305260000 definitions=main-2306150168 X-Proofpoint-GUID: 3vhSqbEoVm6EUa-NnR9WuqFOzrKTiZib X-Proofpoint-ORIG-GUID: 3vhSqbEoVm6EUa-NnR9WuqFOzrKTiZib On 6/15/23 8:39 AM, Juergen Gross wrote: > When running as an unprivileged PV-guest under Xen (not dom0), the > default MTRR memory type should be write-back. > > Signed-off-by: Juergen Gross Reviewed-by: Boris Ostrovsky From xen-devel-bounces@lists.xenproject.org Thu Jun 15 19:57:21 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 15 Jun 2023 19:57:21 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549800.858549 (Exim 4.92) (envelope-from ) id 1q9t5l-0005oD-FQ; Thu, 15 Jun 2023 19:57:13 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549800.858549; Thu, 15 Jun 2023 19:57:13 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9t5l-0005o6-Ct; Thu, 15 Jun 2023 19:57:13 +0000 Received: by outflank-mailman (input) for mailman id 549800; Thu, 15 Jun 2023 19:57:12 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9t5k-0005nw-2k; Thu, 15 Jun 2023 19:57:12 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9t5j-0005mp-W6; Thu, 15 Jun 2023 19:57:12 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9t5i-0003Y7-RL; Thu, 15 Jun 2023 19:57:10 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q9t5i-0005JF-Qw; Thu, 15 Jun 2023 19:57:10 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=sSPDtYe/Z4nc0YDR80T+GKAB1XpA1pN1vOhA7IIQuWM=; b=xUzIYqIffUoeEBM07SnBlCP6i1 UOzgq/GN7Sedm/ib6obse1CpJvRrtWIhMI2sZlUgKA++r1tBNRllwCwnCBlXJeF+dXuLsbJak5dvW K61Wu8TLpeGBmg3dW2rhY78tFTcd+cYKP5eZlsJN6lvKcMrHOGXe0GG8l52VuKzHeJx0=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [libvirt test] 181437: tolerable FAIL - PUSHED X-Osstest-Failures: libvirt:test-amd64-amd64-libvirt-vhd:guest-start/debian.repeat:fail:heisenbug libvirt:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking libvirt:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking libvirt:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking libvirt:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking libvirt:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking libvirt:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking libvirt:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking libvirt:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt:saverestore-support-check:fail:nonblocking libvirt:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking libvirt:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-qcow2:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-qcow2:saverestore-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking libvirt:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking libvirt:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking libvirt:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking libvirt:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking X-Osstest-Versions-This: libvirt=078e645cc3b19458eee4b89b4bfd8e0a32a8b424 X-Osstest-Versions-That: libvirt=a7ee9eac835324854483a231d7931b9329f259bc From: osstest service owner Date: Thu, 15 Jun 2023 19:57:10 +0000 flight 181437 libvirt real [real] flight 181450 libvirt real-retest [real] http://logs.test-lab.xenproject.org/osstest/logs/181437/ http://logs.test-lab.xenproject.org/osstest/logs/181450/ Failures :-/ but no regressions. Tests which are failing intermittently (not blocking): test-amd64-amd64-libvirt-vhd 19 guest-start/debian.repeat fail pass in 181450-retest Tests which did not succeed, but are not blocking: test-armhf-armhf-libvirt 16 saverestore-support-check fail like 181418 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail like 181418 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail like 181418 test-amd64-i386-libvirt 15 migrate-support-check fail never pass test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-i386-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt 15 migrate-support-check fail never pass test-arm64-arm64-libvirt 16 saverestore-support-check fail never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-i386-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-qcow2 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-qcow2 15 saverestore-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-check fail never pass test-armhf-armhf-libvirt 15 migrate-support-check fail never pass test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail never pass test-armhf-armhf-libvirt-raw 14 migrate-support-check fail never pass version targeted for testing: libvirt 078e645cc3b19458eee4b89b4bfd8e0a32a8b424 baseline version: libvirt a7ee9eac835324854483a231d7931b9329f259bc Last test of basis 181418 2023-06-14 04:19:30 Z 1 days Testing same since 181437 2023-06-15 04:20:15 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Martin Kletzander jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-i386-libvirt-xsm pass test-amd64-amd64-libvirt pass test-arm64-arm64-libvirt pass test-armhf-armhf-libvirt pass test-amd64-i386-libvirt pass test-amd64-amd64-libvirt-pair pass test-amd64-i386-libvirt-pair pass test-arm64-arm64-libvirt-qcow2 pass test-armhf-armhf-libvirt-qcow2 pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw pass test-amd64-i386-libvirt-raw pass test-amd64-amd64-libvirt-vhd fail ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Pushing revision : To xenbits.xen.org:/home/xen/git/libvirt.git a7ee9eac83..078e645cc3 078e645cc3b19458eee4b89b4bfd8e0a32a8b424 -> xen-tested-master From xen-devel-bounces@lists.xenproject.org Thu Jun 15 20:16:24 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 15 Jun 2023 20:16:24 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549810.858563 (Exim 4.92) (envelope-from ) id 1q9tO5-0008R6-3w; Thu, 15 Jun 2023 20:16:09 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549810.858563; Thu, 15 Jun 2023 20:16:09 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9tO5-0008Qz-0U; Thu, 15 Jun 2023 20:16:09 +0000 Received: by outflank-mailman (input) for mailman id 549810; Thu, 15 Jun 2023 20:16:08 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9tO3-0008Qp-V5; Thu, 15 Jun 2023 20:16:07 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9tO3-0006Lb-Qt; Thu, 15 Jun 2023 20:16:07 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9tO3-0003zx-I4; Thu, 15 Jun 2023 20:16:07 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q9tO3-0001dF-Hf; Thu, 15 Jun 2023 20:16:07 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=7E6CFz9Qzuyjg+Seq9jOYCMq3FfFAIuskBmHbjzlhuA=; b=FmdHSddLt/7Ie7x6vfzHErIYHj Oa85sROWPZgC1LbJxEJewkOwU18oANXVkQ4Fo3OYMYQvDw1aJfkyT7E8Qm1S2V+336daDCcyuJWsl lxIb9K0x1LiOZAq9PtMB5qNj65vITYt5l5ILwzEAWXvlxYE/0ApxnptvOP1m0Lts0y3g=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [linux-linus test] 181435: regressions - FAIL X-Osstest-Failures: linux-linus:test-armhf-armhf-xl-credit1:xen-boot:fail:regression linux-linus:test-armhf-armhf-xl-multivcpu:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-credit2:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking linux-linus:test-armhf-armhf-libvirt:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-arndale:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-examine:reboot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-raw:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-qcow2:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-rtds:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-vhd:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-raw:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-qcow2:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: linux=b6dad5178ceaf23f369c3711062ce1f2afc33644 X-Osstest-Versions-That: linux=6c538e1adbfc696ac4747fb10d63e704344f763d From: osstest service owner Date: Thu, 15 Jun 2023 20:16:07 +0000 flight 181435 linux-linus real [real] flight 181452 linux-linus real-retest [real] http://logs.test-lab.xenproject.org/osstest/logs/181435/ http://logs.test-lab.xenproject.org/osstest/logs/181452/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: test-armhf-armhf-xl-credit1 8 xen-boot fail REGR. vs. 180278 Tests which did not succeed, but are not blocking: test-armhf-armhf-xl-multivcpu 8 xen-boot fail like 180278 test-armhf-armhf-xl 8 xen-boot fail like 180278 test-armhf-armhf-xl-credit2 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 180278 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 180278 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 180278 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 180278 test-armhf-armhf-libvirt 8 xen-boot fail like 180278 test-armhf-armhf-xl-arndale 8 xen-boot fail like 180278 test-armhf-armhf-examine 8 reboot fail like 180278 test-armhf-armhf-libvirt-raw 8 xen-boot fail like 180278 test-armhf-armhf-libvirt-qcow2 8 xen-boot fail like 180278 test-armhf-armhf-xl-rtds 8 xen-boot fail like 180278 test-armhf-armhf-xl-vhd 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 180278 test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qcow2 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass version targeted for testing: linux b6dad5178ceaf23f369c3711062ce1f2afc33644 baseline version: linux 6c538e1adbfc696ac4747fb10d63e704344f763d Last test of basis 180278 2023-04-16 19:41:46 Z 60 days Failing since 180281 2023-04-17 06:24:36 Z 59 days 113 attempts Testing same since 181417 2023-06-14 04:18:54 Z 1 days 3 attempts ------------------------------------------------------------ 2688 people touched revisions under test, not listing them all jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl fail test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-freebsd11-amd64 pass test-amd64-amd64-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale fail test-amd64-amd64-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 fail test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 fail test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine fail test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt fail test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu fail test-amd64-amd64-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-amd64-pygrub pass test-amd64-amd64-libvirt-qcow2 pass test-armhf-armhf-libvirt-qcow2 fail test-amd64-amd64-libvirt-raw pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw fail test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds fail test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-amd64-xl-vhd pass test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd fail ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 341431 lines long.) From xen-devel-bounces@lists.xenproject.org Thu Jun 15 20:18:25 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 15 Jun 2023 20:18:25 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549817.858573 (Exim 4.92) (envelope-from ) id 1q9tQ6-0000Z0-Fi; Thu, 15 Jun 2023 20:18:14 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549817.858573; Thu, 15 Jun 2023 20:18:14 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9tQ6-0000Yn-Cs; Thu, 15 Jun 2023 20:18:14 +0000 Received: by outflank-mailman (input) for mailman id 549817; Thu, 15 Jun 2023 20:18:13 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9tQ5-0000Yh-5q for xen-devel@lists.xenproject.org; Thu, 15 Jun 2023 20:18:13 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9tQ4-0006N8-Hf; Thu, 15 Jun 2023 20:18:12 +0000 Received: from 54-240-197-233.amazon.com ([54.240.197.233] helo=[192.168.16.225]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1q9tQ4-0001Ts-Bd; Thu, 15 Jun 2023 20:18:12 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=jtZKD26kUdhPWE7c6OM5qsUOkMskYdjWVF8qnBnZvKs=; b=4gHZZ0k4Kw6oqBt33cl3JKLC/E HNK0RvF++YquCG8sJHuGQ3YZaoMheGDY2tMKkA86kpiVL79QZcMOS7lgkLCnYpmpYhJXQdMcW97Ws l897hqifxt5QjhDPK6qS/OBv+c+uvu2z/+6vuHeWrEG8kZme1QaSzfuUShnLZKFMqCeU=; Message-ID: Date: Thu, 15 Jun 2023 21:18:10 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [XEN PATCH] xen/arch/arm/traps: remove inlining of handle_ro_raz() Content-Language: en-US To: Michal Orzel , Federico Serafini , xen-devel@lists.xenproject.org Cc: consulting@bugseng.com, Stefano Stabellini , Bertrand Marquis , Volodymyr Babchuk References: <98c6fb7ace8fce22bc263fe1d7fffac4e8130b57.1686835890.git.federico.serafini@bugseng.com> <7a3becdb-6002-47ce-96f0-844fff23ee7b@amd.com> From: Julien Grall In-Reply-To: <7a3becdb-6002-47ce-96f0-844fff23ee7b@amd.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi, On 15/06/2023 15:49, Michal Orzel wrote: > Hi Federico, > > NIT: for Arm, we use "xen/arm: " as a component name in a commit title or if you want to also specify > the sub component, then "xen/arm: : " e.g. "xen/arm: traps: " > > On 15/06/2023 15:50, Federico Serafini wrote: >> >> >> To comply with MISRA C:2012 Rule 8.10 ("An inline function shall be >> declared with the static storage class"), remove inline function >> specifier from handle_ro_raz() since asking the compiler to inline >> such function does not seem to add any kind of value. >> >> Signed-off-by: Federico Serafini > Reviewed-by: Michal Orzel Acked-by: Julien Grall I will update the title while committing. Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Thu Jun 15 20:27:04 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 15 Jun 2023 20:27:04 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549822.858583 (Exim 4.92) (envelope-from ) id 1q9tYW-00024x-BI; Thu, 15 Jun 2023 20:26:56 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549822.858583; Thu, 15 Jun 2023 20:26:56 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9tYW-00024q-7y; Thu, 15 Jun 2023 20:26:56 +0000 Received: by outflank-mailman (input) for mailman id 549822; Thu, 15 Jun 2023 20:26:54 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9tYU-00024j-H0 for xen-devel@lists.xenproject.org; Thu, 15 Jun 2023 20:26:54 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9tYT-0006Xk-T7; Thu, 15 Jun 2023 20:26:53 +0000 Received: from 54-240-197-233.amazon.com ([54.240.197.233] helo=[192.168.16.225]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1q9tYT-0001n3-Ma; Thu, 15 Jun 2023 20:26:53 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=YHgAoq3yzxiJgCE2iG3fF10p7NsdjvqOo19e4b7NnMk=; b=g3OzXfYvm82sVw9YrCkMucGxG+ 2MfolhLcFFUQtEYvc1eeEXyqFwR2gTaS64H+Thf6TuoazdU0iJGDkR4w0lrFRhlX55m4IHrMGSxM3 JTJHaEYPoLDNNG/QM36Tk/GpOM3EgMOXSsOS5Z1oadKkW2ZnMpagde1U9F3dKzOTgFJ4=; Message-ID: <9eecd70a-8027-a550-7f49-6a4fd3de1dfa@xen.org> Date: Thu, 15 Jun 2023 21:26:51 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [XEN v8 2/5] xen/arm: Introduce choice to enable 64/32 bit physical addressing Content-Language: en-US To: Ayan Kumar Halder , xen-devel@lists.xenproject.org Cc: sstabellini@kernel.org, stefano.stabellini@amd.com, Volodymyr_Babchuk@epam.com, bertrand.marquis@arm.com, andrew.cooper3@citrix.com, george.dunlap@citrix.com, jbeulich@suse.com, wl@xen.org, rahul.singh@arm.com References: <20230602120754.23817-1-ayan.kumar.halder@amd.com> <20230602120754.23817-3-ayan.kumar.halder@amd.com> From: Julien Grall In-Reply-To: <20230602120754.23817-3-ayan.kumar.halder@amd.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi Ayan, On 02/06/2023 13:07, Ayan Kumar Halder wrote: > Some Arm based hardware platforms which does not support LPAE > (eg Cortex-R52), uses 32 bit physical addresses. > Also, users may choose to use 32 bits to represent physical addresses > for optimization. > > To support the above use cases, we have introduced arch independent > config to choose if the physical address can be represented using > 32 bits (PHYS_ADDR_T_32) or 64 bits (!PHYS_ADDR_T_32). > For now only ARM_32 provides support to enable 32 bit physical > addressing. > > When PHYS_ADDR_T_32 is defined, PADDR_BITS is set to 32. Note that we > use "unsigned long" (not "uint32_t") to denote the datatype of physical > address. This is done to avoid using a cast each time PAGE_* macros are > used on paddr_t. For eg PAGE_SIZE is defined as unsigned long. Thus, > each time PAGE_SIZE is used with paddr_t, the result will be > "unsigned long". > On 32-bit architecture, "unsigned long" is 32-bit wide. Thus, it can be > used to denote physical address. > > When PHYS_ADDR_T_32 is not defined for ARM_32, PADDR_BITS is set to 40. > For ARM_64, PADDR_BITS is set to 48. > The last two are same as the current configuration used today on Xen. > > Signed-off-by: Ayan Kumar Halder > Reviewed-by: Michal Orzel Acked-by: Julien Grall Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Thu Jun 15 20:28:39 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 15 Jun 2023 20:28:39 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549829.858593 (Exim 4.92) (envelope-from ) id 1q9ta7-0002h5-OH; Thu, 15 Jun 2023 20:28:35 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549829.858593; Thu, 15 Jun 2023 20:28:35 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9ta7-0002gy-LR; Thu, 15 Jun 2023 20:28:35 +0000 Received: by outflank-mailman (input) for mailman id 549829; Thu, 15 Jun 2023 20:28:34 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9ta6-0002gq-9z for xen-devel@lists.xenproject.org; Thu, 15 Jun 2023 20:28:34 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9ta5-0006Ze-T6; Thu, 15 Jun 2023 20:28:33 +0000 Received: from 54-240-197-233.amazon.com ([54.240.197.233] helo=[192.168.16.225]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1q9ta5-0001oN-Mt; Thu, 15 Jun 2023 20:28:33 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=gCze7DpVgdh1qiNLAimpY+xJ61OAwQr/ilUidAqwa0k=; b=Qnus4U3r9U59PZYlr/ELITj7jK dBzHZVMah6mtVtNH6QjR3BIO5ODRJn/XycYjGmfWIwy0owAmxdrTAEWjbAq2SoUNGbse8S/pw3XC4 lm4hs4qf9cE7RTE2TSnFCcbCfX8yMika0/2KY7xdB8rE+r2V1Fse45CUdhhLJbVNb0rs=; Message-ID: <8acfbb02-f5d1-fb15-d375-0638346cba57@xen.org> Date: Thu, 15 Jun 2023 21:28:31 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [XEN v8 5/5] xen/arm: p2m: Enable support for 32bit IPA for ARM_32 Content-Language: en-US To: Ayan Kumar Halder , xen-devel@lists.xenproject.org Cc: sstabellini@kernel.org, stefano.stabellini@amd.com, Volodymyr_Babchuk@epam.com, bertrand.marquis@arm.com, andrew.cooper3@citrix.com, george.dunlap@citrix.com, jbeulich@suse.com, wl@xen.org, rahul.singh@arm.com References: <20230602120754.23817-1-ayan.kumar.halder@amd.com> <20230602120754.23817-6-ayan.kumar.halder@amd.com> From: Julien Grall In-Reply-To: <20230602120754.23817-6-ayan.kumar.halder@amd.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi Ayan, On 02/06/2023 13:07, Ayan Kumar Halder wrote: > Refer ARM DDI 0406C.d ID040418, B3-1345, > > "A stage 2 translation with an input address range of 31-34 bits can > start the translation either: > > - With a first-level lookup, accessing a first-level translation > table with 2-16 entries. > > - With a second-level lookup, accessing a set of concatenated > second-level translation tables" > > Thus, for 32 bit IPA, there will be no concatenated root level tables. > So, the root-order is 0. > > Also, Refer ARM DDI 0406C.d ID040418, B3-1348 > "Determining the required first lookup level for stage 2 translations > > For a stage 2 translation, the output address range from the stage 1 > translations determines the required input address range for the stage 2 > translation. The permitted values of VTCR.SL0 are: > 0b00 Stage 2 translation lookup must start at the second level. > 0b01 Stage 2 translation lookup must start at the first level. > > VTCR.T0SZ must indicate the required input address range. The size of > the input address region is 2^(32-T0SZ) bytes." > > Thus VTCR.SL0 = 1 (maximum value) and VTCR.T0SZ = 0 when the size of > input address region is 2^32 bytes. > > Signed-off-by: Ayan Kumar Halder Acked-by: Julien Grall Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Thu Jun 15 20:32:30 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 15 Jun 2023 20:32:30 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549834.858603 (Exim 4.92) (envelope-from ) id 1q9tdk-00049Z-6x; Thu, 15 Jun 2023 20:32:20 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549834.858603; Thu, 15 Jun 2023 20:32:20 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9tdk-00049S-3R; Thu, 15 Jun 2023 20:32:20 +0000 Received: by outflank-mailman (input) for mailman id 549834; Thu, 15 Jun 2023 20:32:18 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9tdi-00049M-RX for xen-devel@lists.xenproject.org; Thu, 15 Jun 2023 20:32:18 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9tdi-0006eF-9F; Thu, 15 Jun 2023 20:32:18 +0000 Received: from 54-240-197-225.amazon.com ([54.240.197.225] helo=[192.168.16.225]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1q9tdi-0001sY-30; Thu, 15 Jun 2023 20:32:18 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=Wb2NhWzZSQflX6T+cSu+q5jc8XXyDiUYqPsS9FXt3Sg=; b=yRhHo78/uAjOn4BESGmq6nKp95 aG9qWAzPQ/PJLLHj6k7MA7P1MsCupS4GuYduHM/9PV41vBpGMyHpSUpD1YcLFMey247zXIumbtMSu 6SKj2mVTGGw7oWSbJS5eGg49V9db+Qw+I5qyLpQ+4AZIQVkjWOfbnywxezX0uEvN3qiA=; Message-ID: Date: Thu, 15 Jun 2023 21:32:15 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [XEN v8 1/5] xen/arm: p2m: Use the pa_range_info table to support ARM_32 and ARM_64 Content-Language: en-US To: Michal Orzel , Ayan Kumar Halder , xen-devel@lists.xenproject.org Cc: sstabellini@kernel.org, stefano.stabellini@amd.com, Volodymyr_Babchuk@epam.com, bertrand.marquis@arm.com, andrew.cooper3@citrix.com, george.dunlap@citrix.com, jbeulich@suse.com, wl@xen.org, rahul.singh@arm.com References: <20230602120754.23817-1-ayan.kumar.halder@amd.com> <20230602120754.23817-2-ayan.kumar.halder@amd.com> From: Julien Grall In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi Michal, I notice you posted some comments but didn't add a Acked-by/Reviewed-by. Can you indicate if you are happy with the patch so long your comments are addressed? If so, are you OK if I deal with them on commit? Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Thu Jun 15 20:36:12 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 15 Jun 2023 20:36:12 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549839.858613 (Exim 4.92) (envelope-from ) id 1q9thN-0004kh-Ld; Thu, 15 Jun 2023 20:36:05 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549839.858613; Thu, 15 Jun 2023 20:36:05 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9thN-0004ka-IL; Thu, 15 Jun 2023 20:36:05 +0000 Received: by outflank-mailman (input) for mailman id 549839; Thu, 15 Jun 2023 20:36:04 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9thM-0004kU-1J for xen-devel@lists.xenproject.org; Thu, 15 Jun 2023 20:36:04 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9thJ-0006im-Sl; Thu, 15 Jun 2023 20:36:01 +0000 Received: from 54-240-197-233.amazon.com ([54.240.197.233] helo=[192.168.16.225]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1q9thJ-0002AW-Ms; Thu, 15 Jun 2023 20:36:01 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=VmVT8gk0RY6hks+BhxH5eIwo8duHiKpnpc0sAjSGDQM=; b=dOrHR7Q6fveIlieGTKN8lOvMKl g7nz3rq1Gu6mL45a4XhBUOFTlRrzXmlWqwZoPa236VC2ZRTsjfH/svx0/b7LqD1MsYcYvdP7eXV+A caQZApdkeXqh5e4dTVJyUy05vFPbjq5JqrDGrkMrAV8Hd5wREhx6q+OMR1gxoyLH/N1Y=; Message-ID: Date: Thu, 15 Jun 2023 21:35:59 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH] xen/arm: Remove stray semicolon at VREG_REG_HELPERS/TLB_HELPER* callers Content-Language: en-US To: Stefano Stabellini , Michal Orzel Cc: xen-devel@lists.xenproject.org, Bertrand Marquis , Volodymyr Babchuk References: <20230614094144.9533-1-michal.orzel@amd.com> From: Julien Grall In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi, On 15/06/2023 00:46, Stefano Stabellini wrote: > On Wed, 14 Jun 2023, Michal Orzel wrote: >> This is inconsistent with the rest of the code where macros are used >> to define functions, as it results in an empty declaration (i.e. >> semicolon with nothing before it) after function definition. This is also >> not allowed by C99. >> >> Take the opportunity to undefine TLB_HELPER* macros after last use. >> >> Signed-off-by: Michal Orzel > > Reviewed-by: Stefano Stabellini I have committed the patch. Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Thu Jun 15 20:52:19 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 15 Jun 2023 20:52:19 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549847.858634 (Exim 4.92) (envelope-from ) id 1q9tww-0007Qf-Em; Thu, 15 Jun 2023 20:52:10 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549847.858634; Thu, 15 Jun 2023 20:52:10 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9tww-0007PY-BV; Thu, 15 Jun 2023 20:52:10 +0000 Received: by outflank-mailman (input) for mailman id 549847; Thu, 15 Jun 2023 20:52:08 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9twu-0007L4-AT; Thu, 15 Jun 2023 20:52:08 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9twt-00077m-F6; Thu, 15 Jun 2023 20:52:07 +0000 Received: from 54-240-197-225.amazon.com ([54.240.197.225] helo=[192.168.16.225]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1q9twt-0002hC-9Q; Thu, 15 Jun 2023 20:52:07 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=KOAJoufzK5XHN3vfthVNiFM+xUJh2FnvSnd12rpZ5so=; b=riSi35tQKqUrysCpwXLy4MUOWi DDKxPzaWytVc1hE/ATcTc+oRV/Aa7BROUgobn34hf8dTreMIiSTaaUSWlF9knBO8egProSKhH4HqH 9J9F2bUTfAmGau0gxsgL+OSjZRB7gW5DfQuqyOS1hGdq29KQF4Rb56rtmS7Rbo48whUo=; Message-ID: Date: Thu, 15 Jun 2023 21:52:05 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: Asking for help to debug xen efi on Kunpeng machine Content-Language: en-US To: Jiatong Shen Cc: Stefano Stabellini , xen-users@lists.xenproject.org, xen-devel@lists.xenproject.org, bertrand.marquis@arm.com References: <78899eac-9de8-3626-8f40-98f993984f95@xen.org> From: Julien Grall In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi, On 13/06/2023 02:07, Jiatong Shen wrote: > Hello Stefano and Julien, > > Could you provide more insights for debugging? I tried to connect to > serial console through ipmitool sol activate and enabled ACPI, I do see > some logs but the machine is still stuck. BMC video screen is still not > responsive and black out. Looking at your command line, you want to use console=hvc0 on the dom0 command line. Hopefully, this will enable more logs from the kernel and give you an idea where it may be stuck. Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Thu Jun 15 20:53:59 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 15 Jun 2023 20:53:59 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549872.858655 (Exim 4.92) (envelope-from ) id 1q9tyf-0000Jv-R6; Thu, 15 Jun 2023 20:53:57 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549872.858655; Thu, 15 Jun 2023 20:53:57 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9tyf-0000Jo-OF; Thu, 15 Jun 2023 20:53:57 +0000 Received: by outflank-mailman (input) for mailman id 549872; Thu, 15 Jun 2023 20:53:56 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9tye-0000Ja-86 for xen-devel@lists.xenproject.org; Thu, 15 Jun 2023 20:53:56 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9tyd-000797-5T; Thu, 15 Jun 2023 20:53:55 +0000 Received: from 54-240-197-233.amazon.com ([54.240.197.233] helo=[192.168.16.225]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1q9tyc-0002kS-W4; Thu, 15 Jun 2023 20:53:55 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To: References:Cc:To:From:Subject:MIME-Version:Date:Message-ID; bh=CTS99/u756TBpDALqIcy1/WVxDnbX9qs3OsdD7DgVLw=; b=RHIKSF50lHp8X+Ih4aBjipnirW dZhFFH833LcJOjbUeCxZWNpfaXv5f07dDr7GIEU/7HGh66ANKuo6Ha3akXKacPPuZzLdFoQjoTfgU 3ECKX02LMKfJDvp76QSLU1fmacqrhXXgDO0LInx+D3V+FE2gjirJJe61KH/SbEJZl0W4=; Message-ID: Date: Thu, 15 Jun 2023 21:53:52 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH] xen: Append a newline character to panic() where missing Content-Language: en-US From: Julien Grall To: Michal Orzel , Andrew Cooper , xen-devel@lists.xenproject.org Cc: Stefano Stabellini , Bertrand Marquis , Volodymyr Babchuk , Jan Beulich , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu References: <20230614073018.21303-1-michal.orzel@amd.com> <261ab0b0-91ed-e6b7-730f-0ecb8a7b5635@citrix.com> <4925a406-3b06-792f-008e-77503ca230f0@xen.org> <5b4c98fb-9f81-ab30-29b4-ad8b9587b96b@xen.org> In-Reply-To: <5b4c98fb-9f81-ab30-29b4-ad8b9587b96b@xen.org> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi, On 14/06/2023 10:09, Julien Grall wrote: > The patch looks fine. I will commit it a bit later just to give a chance > to Bertrand/Stefano to object. And committed. Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Thu Jun 15 21:00:18 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 15 Jun 2023 21:00:18 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549885.858664 (Exim 4.92) (envelope-from ) id 1q9u4a-0001hH-FD; Thu, 15 Jun 2023 21:00:04 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549885.858664; Thu, 15 Jun 2023 21:00:04 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9u4a-0001gr-CE; Thu, 15 Jun 2023 21:00:04 +0000 Received: by outflank-mailman (input) for mailman id 549885; Thu, 15 Jun 2023 21:00:03 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9u4Z-0001UP-9C for xen-devel@lists.xenproject.org; Thu, 15 Jun 2023 21:00:03 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9u4Y-0007Hc-Jc; Thu, 15 Jun 2023 21:00:02 +0000 Received: from 54-240-197-233.amazon.com ([54.240.197.233] helo=[192.168.16.225]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1q9u4Y-0002yg-D9; Thu, 15 Jun 2023 21:00:02 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=dZt+950HjfTgtDA5EWE7mE3Qn0cX0A3CA3zKoAswfas=; b=Y/1De1NB0J44ViIUZxI6Sci/HU bJ+33/8esMFrw0hKqTqv2lNFjgFS2he3aBYvO4cTxS6zaVNTzsvjLhSQWsZYlp+vTmAxB4mtaj9YC 3w/IA2ymXzuR9a3nntUOSWBtPaAs/g7W0fvyyXWZIgEbCyzfj7KXv0ZDaz1hYIV3MEKo=; Message-ID: Date: Thu, 15 Jun 2023 22:00:00 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v3 12/16] tools/xenstore: remove no longer needed functions from xs_lib.c Content-Language: en-US To: Juergen Gross , xen-devel@lists.xenproject.org Cc: Wei Liu , Anthony PERARD References: <20230530085418.5417-1-jgross@suse.com> <20230530085418.5417-13-jgross@suse.com> From: Julien Grall In-Reply-To: <20230530085418.5417-13-jgross@suse.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi Juergen, On 30/05/2023 09:54, Juergen Gross wrote: > xs_daemon_tdb() in xs_lib.c is no longer used at all, so it can be > removed. xs_domain_dev() and xs_write_all() are not used by xenstored, > so they can be moved to tools/libs/store/xs.c. > > xs_daemon_rootdir() is used by xenstored only and it only calls > xs_daemon_rundir(), so replace its use cases with xs_daemon_rundir() > and remove it from xs_lib.c. > > xs_daemon_socket_ro() is needed in libxenstore only, so move it to > tools/libs/store/xs.c. > > Move functions used by xenstore-client only to xenstore_client.c. > > Signed-off-by: Juergen Gross Acked-by: Julien Grall Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Thu Jun 15 21:03:50 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 15 Jun 2023 21:03:50 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549890.858674 (Exim 4.92) (envelope-from ) id 1q9u82-0002bg-Uv; Thu, 15 Jun 2023 21:03:38 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549890.858674; Thu, 15 Jun 2023 21:03:38 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9u82-0002bZ-S9; Thu, 15 Jun 2023 21:03:38 +0000 Received: by outflank-mailman (input) for mailman id 549890; Thu, 15 Jun 2023 21:03:37 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9u81-0002bT-0I for xen-devel@lists.xenproject.org; Thu, 15 Jun 2023 21:03:37 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [2604:1380:4641:c500::1]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 162ca628-0bc0-11ee-8611-37d641c3527e; Thu, 15 Jun 2023 23:03:34 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 65F6461AC1; Thu, 15 Jun 2023 21:03:32 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id E8511C433C8; Thu, 15 Jun 2023 21:03:30 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 162ca628-0bc0-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1686863011; bh=O6fyuygQXydiEtrAx6nEbiKxT2NQRvMIms9FyeLv69c=; h=Date:From:To:cc:Subject:In-Reply-To:References:From; b=oQsOI1lS6alqccfJhZfbPTaWw1iMV3DYEooSbCouUph7BXj7qKOrMbttaGQA6pJ2C CvTEa1RH5hE32z3sKO4Kbta9/0Wlp42t0OFDxtdm37vv3kEU6E4qN3Fl/BcG+JApsa EWxjIoJOt5SI0J8WCMhxK2o/rme8l5eXGJ7vxynJtUIPYstuBAEJq8YZTaYLkTFBC5 NwohQ6lLqdsBmc0nqr/JhnJxyH/wwRs6ys6zNEpkEXWxkkQfvU67YjUSLqLOJ2hpC5 saTpGR+4jpsKyDx8V3ZYCJAxRSK2pK/Lw8jvIqGeNNjReLohLwn1+Yr/HyArfaL3+q 7Jd+VmVdD8eCA== Date: Thu, 15 Jun 2023 14:03:29 -0700 (PDT) From: Stefano Stabellini X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop To: Michal Orzel cc: Stefano Stabellini , xen-devel@lists.xenproject.org, Julien Grall , Bertrand Marquis , Volodymyr Babchuk Subject: Re: [PATCH 1/4] xen/arm: debug-pl011: Use correct accessors In-Reply-To: <8d2a300f-1fe9-590f-7481-b0980d23c743@amd.com> Message-ID: References: <20230607092727.19654-1-michal.orzel@amd.com> <20230607092727.19654-2-michal.orzel@amd.com> <8d2a300f-1fe9-590f-7481-b0980d23c743@amd.com> User-Agent: Alpine 2.22 (DEB 394 2020-01-19) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII On Thu, 15 Jun 2023, Michal Orzel wrote: > Hi Stefano, > > On 15/06/2023 03:36, Stefano Stabellini wrote: > > > > > > On Wed, 7 Jun 2023, Michal Orzel wrote: > >> Although most PL011 UARTs can cope with 32-bit accesses, some of the old > >> legacy ones might not. PL011 registers are 8/16-bit wide and this shall > >> be perceived as the normal behavior. > >> > >> Modify early printk pl011 code for arm32/arm64 to use the correct > >> accessors depending on the register size (refer ARM DDI 0183G, Table 3.1). > >> > >> Signed-off-by: Michal Orzel > >> --- > >> Next patch will override strX,ldrX with macros but I prefer to keep the > >> history clean (+ possibiltity for a backport if needed). > >> --- > >> xen/arch/arm/arm32/debug-pl011.inc | 12 ++++++------ > >> xen/arch/arm/arm64/debug-pl011.inc | 6 +++--- > >> 2 files changed, 9 insertions(+), 9 deletions(-) > >> > >> diff --git a/xen/arch/arm/arm32/debug-pl011.inc b/xen/arch/arm/arm32/debug-pl011.inc > >> index c527f1d4424d..9fe0c2503831 100644 > >> --- a/xen/arch/arm/arm32/debug-pl011.inc > >> +++ b/xen/arch/arm/arm32/debug-pl011.inc > >> @@ -26,13 +26,13 @@ > >> */ > >> .macro early_uart_init rb, rc, rd > >> mov \rc, #(7372800 / CONFIG_EARLY_UART_PL011_BAUD_RATE % 16) > >> - str \rc, [\rb, #FBRD] /* -> UARTFBRD (Baud divisor fraction) */ > >> + strb \rc, [\rb, #FBRD] /* -> UARTFBRD (Baud divisor fraction) */ > >> mov \rc, #(7372800 / CONFIG_EARLY_UART_PL011_BAUD_RATE / 16) > >> - str \rc, [\rb, #IBRD] /* -> UARTIBRD (Baud divisor integer) */ > >> + strh \rc, [\rb, #IBRD] /* -> UARTIBRD (Baud divisor integer) */ > >> mov \rc, #WLEN_8 /* 8n1 */ > >> - str \rc, [\rb, #LCR_H] /* -> UARTLCR_H (Line control) */ > >> + strb \rc, [\rb, #LCR_H] /* -> UARTLCR_H (Line control) */ > >> ldr \rc, =(RXE | TXE | UARTEN) /* RXE | TXE | UARTEN */ > >> - str \rc, [\rb, #CR] /* -> UARTCR (Control Register) */ > >> + strh \rc, [\rb, #CR] /* -> UARTCR (Control Register) */ > >> .endm > >> > >> /* > >> @@ -42,7 +42,7 @@ > >> */ > >> .macro early_uart_ready rb, rc > >> 1: > >> - ldr \rc, [\rb, #FR] /* <- UARTFR (Flag register) */ > >> + ldrh \rc, [\rb, #FR] /* <- UARTFR (Flag register) */ > >> tst \rc, #BUSY /* Check BUSY bit */ > >> bne 1b /* Wait for the UART to be ready */ > >> .endm > >> @@ -53,7 +53,7 @@ > >> * rt: register which contains the character to transmit > >> */ > >> .macro early_uart_transmit rb, rt > >> - str \rt, [\rb, #DR] /* -> UARTDR (Data Register) */ > >> + strb \rt, [\rb, #DR] /* -> UARTDR (Data Register) */ > > > > Isn't UARTDR potentially 12-bit? I am not sure if we should use strb or > > strh here... > UARTDR is 16-bit register where bits 15:12 are reserved and 11:8 are for indicating errors during READ. > Here, we perform WRITE meaning the actual register width is 8 bytes. This is also indicated by the PL011 TRM > which specifies width as "12/8" meaning 12 for READ and 8 for WRITE. That makes sense Reviewed-by: Stefano Stabellini From xen-devel-bounces@lists.xenproject.org Thu Jun 15 21:04:03 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 15 Jun 2023 21:04:03 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549891.858685 (Exim 4.92) (envelope-from ) id 1q9u8H-0002wF-6J; Thu, 15 Jun 2023 21:03:53 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549891.858685; Thu, 15 Jun 2023 21:03:53 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9u8H-0002w8-2r; Thu, 15 Jun 2023 21:03:53 +0000 Received: by outflank-mailman (input) for mailman id 549891; Thu, 15 Jun 2023 21:03:51 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9u8F-0002u4-36 for xen-devel@lists.xenproject.org; Thu, 15 Jun 2023 21:03:51 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9u8E-0007Lh-V6; Thu, 15 Jun 2023 21:03:50 +0000 Received: from 54-240-197-225.amazon.com ([54.240.197.225] helo=[192.168.16.225]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1q9u8E-0003HR-PM; Thu, 15 Jun 2023 21:03:50 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=4lIIcwgkI0NoCd2u6GpHXGsiddOZrXBXEq5OOp2uMMM=; b=hlXTc7UnQgnANb5uxIADiyElfn piwIwe9KK7+G32fU6R5IqbBzDGDg32CDAHE7kRPJAIJhctDLCHPE7DSdvufHGAP3hBtCf75T8XIT/ +KwR916739hRZSg+jl7IRnIp5Op2nSzQh+/XSVlmLGYGZbg1wYMIepgLV/HPvSLwepFQ=; Message-ID: Date: Thu, 15 Jun 2023 22:03:48 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v3 13/16] tools/xenstore: replace xs_lib.c with a header Content-Language: en-US To: Juergen Gross , xen-devel@lists.xenproject.org Cc: Andrew Cooper , George Dunlap , Jan Beulich , Stefano Stabellini , Wei Liu , Anthony PERARD References: <20230530085418.5417-1-jgross@suse.com> <20230530085418.5417-14-jgross@suse.com> From: Julien Grall In-Reply-To: <20230530085418.5417-14-jgross@suse.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi Juergen, On 30/05/2023 09:54, Juergen Gross wrote: > Instead of including the same small C source in multiple binaries from > 2 source directories, use a header file with inline functions as a > replacement. > > As some of the functions are exported by libxenstore, rename the inline > functions from xs_*() do xenstore_*() and add xs_*() wrappers to > libxenstore. > > With that no sources required to build libxenstore are left in > tools/xenstore, so the file COPYING can be removed now. > > Signed-off-by: Juergen Gross Acked-by: Julien Grall Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Thu Jun 15 21:06:09 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 15 Jun 2023 21:06:09 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549902.858695 (Exim 4.92) (envelope-from ) id 1q9uAC-0003n2-NJ; Thu, 15 Jun 2023 21:05:52 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549902.858695; Thu, 15 Jun 2023 21:05:52 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9uAC-0003mv-Jn; Thu, 15 Jun 2023 21:05:52 +0000 Received: by outflank-mailman (input) for mailman id 549902; Thu, 15 Jun 2023 21:05:51 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9uAB-0003mp-Dd for xen-devel@lists.xenproject.org; Thu, 15 Jun 2023 21:05:51 +0000 Received: from NAM10-BN7-obe.outbound.protection.outlook.com (mail-bn7nam10on2061d.outbound.protection.outlook.com [2a01:111:f400:7e8a::61d]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 66fe624e-0bc0-11ee-b232-6b7b168915f2; Thu, 15 Jun 2023 23:05:49 +0200 (CEST) Received: from DS0PR17CA0018.namprd17.prod.outlook.com (2603:10b6:8:191::18) by PH7PR12MB8153.namprd12.prod.outlook.com (2603:10b6:510:2b0::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.37; Thu, 15 Jun 2023 21:05:42 +0000 Received: from MWH0EPF000989E8.namprd02.prod.outlook.com (2603:10b6:8:191:cafe::b4) by DS0PR17CA0018.outlook.office365.com (2603:10b6:8:191::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.27 via Frontend Transport; Thu, 15 Jun 2023 21:05:41 +0000 Received: from SATLEXMB04.amd.com (165.204.84.17) by MWH0EPF000989E8.mail.protection.outlook.com (10.167.241.135) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6500.27 via Frontend Transport; Thu, 15 Jun 2023 21:05:41 +0000 Received: from SATLEXMB08.amd.com (10.181.40.132) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Thu, 15 Jun 2023 16:05:39 -0500 Received: from SATLEXMB04.amd.com (10.181.40.145) by SATLEXMB08.amd.com (10.181.40.132) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Thu, 15 Jun 2023 14:05:39 -0700 Received: from [192.168.137.15] (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server id 15.1.2507.23 via Frontend Transport; Thu, 15 Jun 2023 16:05:37 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 66fe624e-0bc0-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=lPfvWVKBMpuv+fDYTkYeT21Y8weIDK89PvKyesuaJgFAEOZEC9sw4nQV8z689MfjdahnEnAdWGWToYxHuv0tIkbZxoNm8KFB51vTgNRwrE0q+IMKIbrzSMCvaRxHIRhYTCxQQkr8a99LwIw3mhM1lmuKq3eDyX8pzH3HQg6LjSjtmuoCcO+qT284NCUwMuDn6MIqfILvqG9rPI17clr35p856c90ajfiqEYIjLh3q+PdEAk6zNl6vhrtXHvhsPgcSH6vJVHU62hM+gK5C4OW+tLeJ2c1xTBULb9t6uUJuDPR0arOIBLgxADj0ysscqeQNj/N/vOAXz+Nw+T2ZM+xTg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=HQPJ9QqgCTW3fJ/mcojhhSDZWlbD3+QB+jX8citFzqU=; b=RJ+sw+CeQkXU/O0q7GfAwBUarLAmg8Dq7Vb5QeCNP8uCHAnbdB4VX/+BbjRWUBoKIhOGjeOejcIL/SGi/gTnONE/MTfU9boMr1ui6aMpHYa9I72n0iqq74zUSm2xpT0gZzwztwPv0wbVCyZ1KPTUrXXdblcPDj/Eqh+wT7kniehw4i5FCFZyOHnbdQfA1t32KoblFFlq9CeeEY2wagbRq0o/h+emAzIDuwM7f4KXCkGPdoRmMenzuwX2E4+eX8QmF+yojNFAWTEUBTdG7g8qSoiX+IUFia9oraXE/FZtv2rhu/AlkeUCfULbywC6Ot72LbA3I4BBLGLRM0pa/+++fg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=xen.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=HQPJ9QqgCTW3fJ/mcojhhSDZWlbD3+QB+jX8citFzqU=; b=ralqJ9srQ7G+CjsZbdZ6gNQaleUjT7ol8dsWekBCRkxcLWIB3xU37K7lYzFzrvChz99Ix+iZEqBx/aNnkjXeDLNZtIyxST25gAe4DNBMDQnUBIXWesxmT3a608mdAGHUdFJgC3P65DHrvey277rNtgRoZveLfizDFwFp9dbpFEA= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C Message-ID: <4b08b38e-3beb-6b72-83fb-6dd8c8702718@amd.com> Date: Thu, 15 Jun 2023 17:05:37 -0400 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 From: Stewart Hildebrand Subject: Re: [PATCH v4 0/7] SMMU handling for PCIe Passthrough on ARM To: Julien Grall , CC: Stefano Stabellini , Bertrand Marquis , Volodymyr Babchuk , Rahul Singh , Jan Beulich , "Paul Durrant" , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= References: <20230607030220.22698-1-stewart.hildebrand@amd.com> <1f5aa53c-a9ed-41c3-2a4d-38538912cdd5@xen.org> Content-Language: en-US In-Reply-To: <1f5aa53c-a9ed-41c3-2a4d-38538912cdd5@xen.org> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: MWH0EPF000989E8:EE_|PH7PR12MB8153:EE_ X-MS-Office365-Filtering-Correlation-Id: 6f243ab1-a7e5-4b6c-53db-08db6de44706 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: Xl2Io5cgylZq9VPSQk86CBE5bE8PmCfxbRKpM0iUFUD/GTmjHroCpA0/+EVBaQIK8Z8u9hF5Di8Qx/qmfRP1SK+ikdfIBZzTLDR+Qx7hJjlZioxTRxrCcT+Z4Tq+STaGIMt9B4Fj0dhPHb7bW7D3yo+/E963m2iBzRcDTUmMsBE7oz8uVAlwzcM/CcfK0zRYGlmy9fwkkggScqyYYpqSUWkTWcfUxa0lO8ytUK+R7ZkBXBH3tWUyM8+nIAbVrh9YuSd8aAB7q8FQkID1mU4TzQsgvlkXxwHABeEAahfx5rfDRDixVnxBTQ+qOhAjLkehfcOxds/lfuSuAzQogHDXDUOZNLDlAFnTDTOJ4rp9Qm93VrSocpzHE4MEhEq7vois7eyxfIWe0wpTdC6FaiZxsb7Saf3UeYBrtS+8OG5bPgYAgi+In07B0PbdLE0RJo35o7u1gom6EJ2xEFqE5IMncGLL2I42TMqTwbp26tYwvPiZ36BLDMAXHj1llZSdMV4sZV5M9LGkSDzRc8ZR4JhvKv1hVSYINAB7VpgAFQqMr2ZU3XhdNlUETd6+zgXmyolS4fjknF5Rw3PsGLDozW9HRVU3HYlVTHW5ezDjHOY5N+01rPnD28JOEx6KPW3P3n/8Thp/hfH+ch5gFEltihGs8TrVp6j7ZzyuIb/Wo2RiaCrfGjGrJbXUq5V/3Zni1CKG4sS5VKTjlpu0+Ftfdr6YpHxsSnHWQ3gfOpbWdNgkMd4CmconU19Ot7AGO3QF4urAUWSNXDAktdCsUNl9tBMo0SnUr6kVSkn8jlONu+sJNmONEnDNJHSiqtZeKPa2/FjaDwAEzzb+ElJiCJelx1ZICQ== X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(346002)(136003)(396003)(376002)(451199021)(46966006)(40470700004)(36840700001)(40480700001)(40460700003)(110136005)(54906003)(16576012)(82740400003)(81166007)(356005)(478600001)(8676002)(41300700001)(8936002)(5660300002)(70206006)(2616005)(316002)(4326008)(70586007)(36860700001)(186003)(47076005)(966005)(336012)(83380400001)(53546011)(26005)(426003)(31696002)(86362001)(82310400005)(44832011)(2906002)(36756003)(31686004)(36900700001)(43740500002);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Jun 2023 21:05:41.3219 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 6f243ab1-a7e5-4b6c-53db-08db6de44706 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com] X-MS-Exchange-CrossTenant-AuthSource: MWH0EPF000989E8.namprd02.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH7PR12MB8153 On 6/7/23 03:19, Julien Grall wrote: > Hi Stewart, > > On 07/06/2023 04:02, Stewart Hildebrand wrote: >> This series introduces SMMU handling for PCIe passthrough on ARM. These patches >> are independent from (and don't depend on) the vPCI reference counting/locking >> work in progress, and should be able to be upstreamed independently. > > Can you clarify how this code was tested? Does this require code not yet > upstreamed? I'm testing the series standalone (+ config changes) by using a PCI device in dom0, and also in combination with the vPCI series [3] [4] for passthrough to a domU. Here are some more details on the test cases I'm using. 1. Using the PCI device in dom0 with the pci-passthrough=yes arg. In this case a couple of additional config changes [1] [2] are needed to select CONFIG_HAS_PCI=y, CONFIG_HAS_VPCI=y, and make has_vpci() return true. Aside from this series itself and the config changes, nothing else not-yet-upstreamed is required for this test case. It is on my TODO list to upstream these config changes, which I think will be useful on their own, not necessarily as part of any other series. Actually, your question prompted me to look at my test cases a bit more carefully, and I discovered a case that v4 of this series doesn't handle right. In order for the PCI device to be usable in dom0, it should be assigned by default to dom0/hardware domain during PHYSDEVOP_pci_device_add. But v4 of this series doesn't assign it by default to dom0/hardware domain. I initially missed this because I happened to assign the stream ID of the PCI device to dom0 by the iommus property. In other words, I initially tested with this: &pcie { iommus = <&smmu 0x4d0>; iommu-map = <0x0 &smmu 0x4d0 0x10000>; iommu-map-mask = <0x0>; }; But I should be testing with this (i.e. omitting the iommus property): &pcie { iommu-map = <0x0 &smmu 0x4d0 0x10000>; iommu-map-mask = <0x0>; }; Omitting iommus currently breaks using a PCI device in dom0 in v4. I'll fix this in v5. 2. To test the phantom bits, since I don't have a phantom device readily available, I use the pci-phantom arg and a carefully constructed iommu-map property. The PCI device's stream ID is actually 0x4d0, but I put 0x4ce in the iommu-map to make it appear as if it's one of the phantom functions generating the DMA traffic. pci-phantom=01:00,1 &pcie { /* phantom test */ iommu-map = <0x0 &smmu 0x4ce 0x10000>; iommu-map-mask = <0x7>; }; 3. Passthrough to a domU. In this case the vPCI series is needed [3], and an MSI series not yet submitted to the list [4] (or another way to hack/assign the IRQ to the domU), in addition to the 2 config changes [1] [2]. The procedure is described at [5]. [1] https://gitlab.com/xen-project/people/bmarquis/xen-arm-poc/-/commit/9a08f1f7ce28ec619640ba9ce11018bf443e9a0e [2] https://gitlab.com/xen-project/people/bmarquis/xen-arm-poc/-/commit/27be1729ce8128dbe37275ce7946b2fbd2e5a382 [3] https://lists.xenproject.org/archives/html/xen-devel/2023-06/msg00863.html [4] https://gitlab.com/xen-project/people/bmarquis/xen-arm-poc/-/commits/poc/pci-passthrough [5] https://lists.xenproject.org/archives/html/xen-devel/2022-12/msg00682.html From xen-devel-bounces@lists.xenproject.org Thu Jun 15 21:17:42 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 15 Jun 2023 21:17:42 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549907.858705 (Exim 4.92) (envelope-from ) id 1q9uLP-0005Mf-Od; Thu, 15 Jun 2023 21:17:27 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549907.858705; Thu, 15 Jun 2023 21:17:27 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9uLP-0005MY-Lu; Thu, 15 Jun 2023 21:17:27 +0000 Received: by outflank-mailman (input) for mailman id 549907; Thu, 15 Jun 2023 21:17:26 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9uLO-0005MS-OZ for xen-devel@lists.xenproject.org; Thu, 15 Jun 2023 21:17:26 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 0503db71-0bc2-11ee-8611-37d641c3527e; Thu, 15 Jun 2023 23:17:24 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 7AE776193C; Thu, 15 Jun 2023 21:17:22 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 591E2C433C0; Thu, 15 Jun 2023 21:17:20 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 0503db71-0bc2-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1686863841; bh=m2UZ0ylc2lzSYxb2KTpVWcO1K+t5tWLqB+icEGu6s9A=; h=Date:From:To:cc:Subject:In-Reply-To:References:From; b=WbZNeXCFz6ABfnUr3PlGdgzMN8RzdbydsX5ScqSD5muTE8RJhlslV+tZJqecJsEL7 tevCAO1DBd+dKCTIKdMek4KHpmGErzs8IBMU5lmgyHofFdiHTeU18Te5cLirQ+DoE8 RiBIwY53ZGhRtygoTDY13AnoiNRdOF6oOUluosv5A/C1ehTVVVNX550miBaXLzYuex McooazD1Zd2mW90CnBDS2B/dToqxqWRsZHhP5r/3BKkO2X8PZZXnAlpgtX9qF9yca/ fEZ7GCaV1OQbZOeL/CK2VDa6HzyE89Fi+NcAg1nYNORpDC0vEaNuNbpRtrPs21wjQu UAC1ScEKtKQaw== Date: Thu, 15 Jun 2023 14:17:18 -0700 (PDT) From: Stefano Stabellini X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop To: Michal Orzel cc: Stefano Stabellini , xen-devel@lists.xenproject.org, jbeulich@suse.com, julien@xen.org, andrew.cooper3@citrix.com, roger.pau@citrix.com, bertrand.marquis@arm.com, roberto.bagnara@bugseng.com, Stefano Stabellini Subject: Re: [PATCH v4] docs/misra: new rules addition In-Reply-To: Message-ID: References: <20230614225515.1057820-1-sstabellini@kernel.org> User-Agent: Alpine 2.22 (DEB 394 2020-01-19) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII On Thu, 15 Jun 2023, Michal Orzel wrote: > Hi Stefano, > > On 15/06/2023 00:55, Stefano Stabellini wrote: > > > > > > From: Stefano Stabellini > > > > For Dir 1.1, a document describing all implementation-defined behaviour > > (i.e. gcc-specific behavior) will be added to docs/misra, also including > > implementation-specific (gcc-specific) appropriate types for bit-field > > relevant to Rule 6.1. > > > > Rule 21.21 is lacking an example on gitlab but the rule is > > straightforward: we don't use stdlib at all in Xen. > > > > Signed-off-by: Stefano Stabellini > > --- > > Changes in v4: > > - improve wording of the note in 6.1 > > > > Changes in v3: > > - add all signed integer types to the Notes of 6.1 > > - clarify 7.2 in the Notes > > - not added: marking "inapplicable" rules, to be a separate patch > > > > Changes in v2: > > - drop 5.6 > > - specify additional appropriate types for 6.1 > > --- > > docs/misra/rules.rst | 50 ++++++++++++++++++++++++++++++++++++++++++++ > > 1 file changed, 50 insertions(+) > > > > diff --git a/docs/misra/rules.rst b/docs/misra/rules.rst > > index d5a6ee8cb6..41a727ca98 100644 > > --- a/docs/misra/rules.rst > > +++ b/docs/misra/rules.rst > > @@ -40,6 +40,12 @@ existing codebase are work-in-progress. > > - Summary > > - Notes > > > > + * - `Dir 1.1 `_ > > + - Required > > + - Any implementation-defined behaviour on which the output of the > > + program depends shall be documented and understood > > + - > > + > > * - `Dir 2.1 `_ > > - Required > > - All source files shall compile without any compilation errors > > @@ -57,6 +63,13 @@ existing codebase are work-in-progress. > > header file being included more than once > > - > > > > + * - `Dir 4.11 `_ > > + - Required > > + - The validity of values passed to library functions shall be checked > > + - We do not have libraries in Xen (libfdt and others are not > > + considered libraries from MISRA C point of view as they are > > + imported in source form) > > + > > * - `Dir 4.14 `_ > > - Required > > - The validity of values received from external sources shall be > > @@ -133,6 +146,12 @@ existing codebase are work-in-progress. > > headers (xen/include/public/) are allowed to retain longer > > identifiers for backward compatibility. > > > > + * - `Rule 6.1 `_ > > + - Required > > + - Bit-fields shall only be declared with an appropriate type > > + - In addition to the C99 types, we also consider appropriate types > > + enum and all explicitly signed / unsigned integer types. > > + > > * - `Rule 6.2 `_ > > - Required > > - Single-bit named bit fields shall not be of a signed type > > @@ -143,6 +162,32 @@ existing codebase are work-in-progress. > > - Octal constants shall not be used > > - > > > > + * - `Rule 7.2 `_ > > + - Required > > + - A "u" or "U" suffix shall be applied to all integer constants > > + that are represented in an unsigned type > > + - The rule asks that any integer literal that is implicitly > > + unsigned is made explicitly unsigned by using one of the > > + indicated suffixes. As an example, on a machine where the int > > + type is 32-bit wide, 0x77777777 is signed whereas 0x80000000 is > > + (implicitly) unsigned. In order to comply with the rule, the > > + latter should be rewritten as either 0x80000000u or 0x80000000U. > > + Consistency considerations may suggest using the same suffix even > > + when not required by the rule. For instance, if one has: > > + > > + Original: f(0x77777777); f(0x80000000); > > + > > + one might prefer > Shouldn't this be "one should do" in reference to Jan remark? Yes OK > > + > > + Solution 1: f(0x77777777U); f(0x80000000U); > > + > > + over > > + > > + Solution 2: f(0x77777777); f(0x80000000U); > > + > > + after having ascertained that "Solution 1" is compatible with the > > + intended semantics. > > + > > * - `Rule 7.3 `_ > > - Required > > - The lowercase character l shall not be used in a literal suffix > > @@ -314,6 +359,11 @@ existing codebase are work-in-progress. > > used following a subsequent call to the same function > > - > > > > + * - Rule 21.21 > This is incorrect as it should be surrounded by `` similar to other lines. > Otherwise it will not be taken into account by convert_misra_doc.py which converts this document into cppcheck rule list. As there is no example for 21.21 yet, I'll link the base directory with all the examples: https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-Suite/ > With that fixed (i.e. on commit): > Reviewed-by: Michal Orzel Thanks, I'll add From xen-devel-bounces@lists.xenproject.org Thu Jun 15 21:19:31 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 15 Jun 2023 21:19:31 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549912.858715 (Exim 4.92) (envelope-from ) id 1q9uNO-0005x6-5K; Thu, 15 Jun 2023 21:19:30 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549912.858715; Thu, 15 Jun 2023 21:19:30 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9uNO-0005wz-1h; Thu, 15 Jun 2023 21:19:30 +0000 Received: by outflank-mailman (input) for mailman id 549912; Thu, 15 Jun 2023 21:19:29 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9uNN-0005wp-2U for xen-devel@lists.xenproject.org; Thu, 15 Jun 2023 21:19:29 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 4ec588ce-0bc2-11ee-b232-6b7b168915f2; Thu, 15 Jun 2023 23:19:27 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 7D2A16118B; Thu, 15 Jun 2023 21:19:26 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id A3DB5C433C0; Thu, 15 Jun 2023 21:19:24 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 4ec588ce-0bc2-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1686863965; bh=+SBuZ5f9sDGbdmLCuV7ar8OyOhaU3ESQ2QU0MH1lnjg=; h=From:To:Cc:Subject:Date:From; b=B6SS6GIESAVuC7yewaYC1Ex1s2HZqavVZYF8vSbU14tQXwnTpynyyeFUgh49BF7J/ lWEstBZG1sNF0osbNDSyvkcfZs6xYm0uAk3ni/DtG6yeDd1/3lszh+L0JFqfjWLC6J pM2KJN/B9Ed8BxQGTszTNi0qeNlXKOm+3euj9CP9GOCw1LPlWUvIAyMM12kjKJEBUB 5z1Smd8jhYHqLT69/BvntAeG/0KnthF6o7zG+eK+wGJ+t2X8MjE5XBfrcXOOP9gvBl dkucxwpS/UNv2OLH07EAv9Ffkd+Qz8k9gON3ywnsScHvNKziDhKonnUl+sHc0qSknT nEJn0qsjdHlGw== From: Stefano Stabellini To: xen-devel@lists.xenproject.org Cc: sstabellini@kernel.org, jbeulich@suse.com, julien@xen.org, andrew.cooper3@citrix.com, roger.pau@citrix.com, bertrand.marquis@arm.com, roberto.bagnara@bugseng.com, Stefano Stabellini , Michal Orzel Subject: [PATCH v5] docs/misra: new rules addition Date: Thu, 15 Jun 2023 14:19:22 -0700 Message-Id: <20230615211922.1328972-1-sstabellini@kernel.org> X-Mailer: git-send-email 2.25.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit From: Stefano Stabellini For Dir 1.1, a document describing all implementation-defined behaviour (i.e. gcc-specific behavior) will be added to docs/misra, also including implementation-specific (gcc-specific) appropriate types for bit-field relevant to Rule 6.1. Rule 21.21 is lacking an example on gitlab but the rule is straightforward: we don't use stdlib at all in Xen. Signed-off-by: Stefano Stabellini Reviewed-by: Michal Orzel --- Changes in v5: - clarify suggested approach to Rule 7.2 - add link for 21.21 Changes in v4: - improve wording of the note in 6.1 Changes in v3: - add all signed integer types to the Notes of 6.1 - clarify 7.2 in the Notes - not added: marking "inapplicable" rules, to be a separate patch Changes in v2: - drop 5.6 - specify additional appropriate types for 6.1 iii --- docs/misra/rules.rst | 50 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 50 insertions(+) diff --git a/docs/misra/rules.rst b/docs/misra/rules.rst index d5a6ee8cb6..a88c284e7d 100644 --- a/docs/misra/rules.rst +++ b/docs/misra/rules.rst @@ -40,6 +40,12 @@ existing codebase are work-in-progress. - Summary - Notes + * - `Dir 1.1 `_ + - Required + - Any implementation-defined behaviour on which the output of the + program depends shall be documented and understood + - + * - `Dir 2.1 `_ - Required - All source files shall compile without any compilation errors @@ -57,6 +63,13 @@ existing codebase are work-in-progress. header file being included more than once - + * - `Dir 4.11 `_ + - Required + - The validity of values passed to library functions shall be checked + - We do not have libraries in Xen (libfdt and others are not + considered libraries from MISRA C point of view as they are + imported in source form) + * - `Dir 4.14 `_ - Required - The validity of values received from external sources shall be @@ -133,6 +146,12 @@ existing codebase are work-in-progress. headers (xen/include/public/) are allowed to retain longer identifiers for backward compatibility. + * - `Rule 6.1 `_ + - Required + - Bit-fields shall only be declared with an appropriate type + - In addition to the C99 types, we also consider appropriate types + enum and all explicitly signed / unsigned integer types. + * - `Rule 6.2 `_ - Required - Single-bit named bit fields shall not be of a signed type @@ -143,6 +162,32 @@ existing codebase are work-in-progress. - Octal constants shall not be used - + * - `Rule 7.2 `_ + - Required + - A "u" or "U" suffix shall be applied to all integer constants + that are represented in an unsigned type + - The rule asks that any integer literal that is implicitly + unsigned is made explicitly unsigned by using one of the + indicated suffixes. As an example, on a machine where the int + type is 32-bit wide, 0x77777777 is signed whereas 0x80000000 is + (implicitly) unsigned. In order to comply with the rule, the + latter should be rewritten as either 0x80000000u or 0x80000000U. + Consistency considerations may suggest using the same suffix even + when not required by the rule. For instance, if one has: + + Original: f(0x77777777); f(0x80000000); + + one should do + + Solution 1: f(0x77777777U); f(0x80000000U); + + over + + Solution 2: f(0x77777777); f(0x80000000U); + + after having ascertained that "Solution 1" is compatible with the + intended semantics. + * - `Rule 7.3 `_ - Required - The lowercase character l shall not be used in a literal suffix @@ -314,6 +359,11 @@ existing codebase are work-in-progress. used following a subsequent call to the same function - + * - `Rule 21.21 `_ + - Required + - The Standard Library function system of shall not be used + - + * - `Rule 22.2 `_ - Mandatory - A block of memory shall only be freed if it was allocated by means of a -- 2.25.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 15 21:21:55 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 15 Jun 2023 21:21:55 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549917.858725 (Exim 4.92) (envelope-from ) id 1q9uPY-0007Nw-Gv; Thu, 15 Jun 2023 21:21:44 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549917.858725; Thu, 15 Jun 2023 21:21:44 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9uPY-0007Np-Dt; Thu, 15 Jun 2023 21:21:44 +0000 Received: by outflank-mailman (input) for mailman id 549917; Thu, 15 Jun 2023 21:21:43 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9uPX-0007Nj-7y for xen-devel@lists.xenproject.org; Thu, 15 Jun 2023 21:21:43 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 9eecddbe-0bc2-11ee-b232-6b7b168915f2; Thu, 15 Jun 2023 23:21:42 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id E504A610AA; Thu, 15 Jun 2023 21:21:40 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 2B5B9C433C0; Thu, 15 Jun 2023 21:21:39 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 9eecddbe-0bc2-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1686864100; bh=Z9/u9nYsdbIMAxiVxLhdpMcIMDrHHBX+Fjx4xzGwWto=; h=Date:From:To:cc:Subject:In-Reply-To:References:From; b=A0muWO7fsmBCC+JG2lcsE9H+q47WoY92tGfW/6znT3L/OVkHhjejxmE+ylPVf8c+A Z5BRkk8aEEPBDkK2lzX01fKPQtbToNxlvYKzMmZ9Dg6ryRTSfUfx8fbTKenMSarutf Sm1sPJXQKl592K3xrxE5Rl7TG+Sy2lZm9c5aI+2pbClxux4dXd9qsQTPcSnQ27l96c tBHJEuMar1Q5mb9F3Jm03teb3xHvajiPClum6XCCAcELndvd4CySPQBMEyvorrevM3 qVdBYqyBMQ6rud7+62mCh8SUV908alBF85uHlifpE+XGRp34nXgTzEehcr9WJiz3YZ KLxwlomrb51sA== Date: Thu, 15 Jun 2023 14:21:37 -0700 (PDT) From: Stefano Stabellini X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop To: Michal Orzel cc: Stefano Stabellini , xen-devel@lists.xenproject.org, jbeulich@suse.com, julien@xen.org, andrew.cooper3@citrix.com, roger.pau@citrix.com, bertrand.marquis@arm.com, roberto.bagnara@bugseng.com, Stefano Stabellini Subject: Re: [PATCH] xen/misra: add rules 1.4 and 2.1 In-Reply-To: <2b1faf85-dc6c-76dd-3d88-d33bbd3c5df3@amd.com> Message-ID: References: <20230614230328.1060282-1-sstabellini@kernel.org> <2b1faf85-dc6c-76dd-3d88-d33bbd3c5df3@amd.com> User-Agent: Alpine 2.22 (DEB 394 2020-01-19) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII On Thu, 15 Jun 2023, Michal Orzel wrote: > Hi Stefano, > > On 15/06/2023 01:03, Stefano Stabellini wrote: > > Caution: This message originated from an External Source. Use proper caution when opening attachments, clicking links, or responding. > > > > > > From: Stefano Stabellini > > > > Signed-off-by: Stefano Stabellini > > --- > > docs/misra/rules.rst | 11 +++++++++++ > > 1 file changed, 11 insertions(+) > > > > diff --git a/docs/misra/rules.rst b/docs/misra/rules.rst > > index 41a727ca98..4179e49ac2 100644 > > --- a/docs/misra/rules.rst > > +++ b/docs/misra/rules.rst > > @@ -90,6 +90,17 @@ existing codebase are work-in-progress. > > behaviour > > - > > > > + * - Rule 1.4 > Just as for the previous patch: > This is incorrect as it should be surrounded by `` similar to other lines. > Otherwise it will not be taken into account by convert_misra_doc.py which converts this document into cppcheck rule list. OK. I'll add a link to the base directory like I did in the other patch From xen-devel-bounces@lists.xenproject.org Thu Jun 15 21:27:33 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 15 Jun 2023 21:27:33 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549924.858734 (Exim 4.92) (envelope-from ) id 1q9uV2-00085h-6x; Thu, 15 Jun 2023 21:27:24 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549924.858734; Thu, 15 Jun 2023 21:27:24 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9uV2-00085a-4K; Thu, 15 Jun 2023 21:27:24 +0000 Received: by outflank-mailman (input) for mailman id 549924; Thu, 15 Jun 2023 21:27:22 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9uV0-00085O-Su for xen-devel@lists.xenproject.org; Thu, 15 Jun 2023 21:27:22 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 68cf68dd-0bc3-11ee-8611-37d641c3527e; Thu, 15 Jun 2023 23:27:20 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id A0F5061DCF; Thu, 15 Jun 2023 21:27:19 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id DF601C433C8; Thu, 15 Jun 2023 21:27:17 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 68cf68dd-0bc3-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1686864439; bh=x1kXzx7pPDuFD2e7tslJipL42jrsChZD9clwm3g37Uk=; h=From:To:Cc:Subject:Date:From; b=XovzLdIerTfn6LYgbvtIeR2HNVbz39IN9EWrr/yA4bk6gmAmEPHVIp3AaIkvvBSZw A26d1DJMruZQkwVLBzS8uPfZ17SOnU+B5VdEv0jvivypjq+dzfHNvFSx2CAmrI1F1r LEGo4VsIg2wnyphg8RjP8P5daWuiobPFJYg1aWQsrZpWXY5tl2jUGekt5S7JRf/MNn 6OPZd45EiudOLdZ6bevMZhtwnqg9csoC2/aUr8coKRKpgC7XuVEflfaiaBp3SacsSs IaxGTV+GsMWfwutsS6p27RgGVa6N0AZWggV4gAfipR6XyXFa/9s7owQrMkdHmRP1bk Xkk8TTCwMmyKQ== From: Stefano Stabellini To: xen-devel@lists.xenproject.org Cc: sstabellini@kernel.org, jbeulich@suse.com, julien@xen.org, andrew.cooper3@citrix.com, roger.pau@citrix.com, bertrand.marquis@arm.com, roberto.bagnara@bugseng.com, Stefano Stabellini Subject: [PATCH v2] xen/misra: add rules 1.4 and 2.1 Date: Thu, 15 Jun 2023 14:27:16 -0700 Message-Id: <20230615212716.1330929-1-sstabellini@kernel.org> X-Mailer: git-send-email 2.25.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit From: Stefano Stabellini Also add a comment at the top of the file to say rules.rst could be changed. Signed-off-by: Stefano Stabellini --- Changes in v2: - add link for 1.4 - expand 1.4 comment to say it could be revisited - add comment at the top --- docs/misra/rules.rst | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/docs/misra/rules.rst b/docs/misra/rules.rst index a88c284e7d..11b9c42b70 100644 --- a/docs/misra/rules.rst +++ b/docs/misra/rules.rst @@ -32,6 +32,9 @@ violations are meant to be documented as deviations, while some others should be fixed. Both compliance and documenting deviations on the existing codebase are work-in-progress. +The list below might need to be updated over time. Reach out to THE REST +maintainers if you want to suggest a change. + .. list-table:: :header-rows: 1 @@ -90,6 +93,18 @@ existing codebase are work-in-progress. behaviour - + * - `Rule 1.4 `_ + - Required + - Emergent language features shall not be used + - Emergent language features, such as C11 features, should not be + confused with similar compiler extensions, which we use. When the + time comes to adopt C11, this rule will be revisited. + + * - `Rule 2.1 `_ + - Required + - A project shall not contain unreachable code + - + * - `Rule 2.6 `_ - Advisory - A function should not contain unused label declarations -- 2.25.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 15 21:27:33 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 15 Jun 2023 21:27:33 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549925.858744 (Exim 4.92) (envelope-from ) id 1q9uV3-0008KS-Dp; Thu, 15 Jun 2023 21:27:25 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549925.858744; Thu, 15 Jun 2023 21:27:25 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9uV3-0008KL-B4; Thu, 15 Jun 2023 21:27:25 +0000 Received: by outflank-mailman (input) for mailman id 549925; Thu, 15 Jun 2023 21:27:23 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9uV1-00085U-UB for xen-devel@lists.xenproject.org; Thu, 15 Jun 2023 21:27:23 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 69ffe82a-0bc3-11ee-b232-6b7b168915f2; Thu, 15 Jun 2023 23:27:22 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id B1AD76147E; Thu, 15 Jun 2023 21:27:21 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 0368EC433C0; Thu, 15 Jun 2023 21:27:19 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 69ffe82a-0bc3-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1686864441; bh=O/TD4sLifRkWWfks/UHjVphPxmFUvobdzocjHvocOWQ=; h=Date:From:To:cc:Subject:In-Reply-To:References:From; b=XaQLLaMF+vetSwbWLCNIsebVya2e48rk0IZajqss9TCw40lu2zbSpjmn+GwwuAbbq Kh/t/nSGwYOyZBwYR9TafF6vXXxH6lvhI2uHZuotCnhXTvh2xE5Ch2IbtzjZmydW81 CMU5VMhPLki2M+rD9ze+zENh1yJO5HOHFkKSmAMuFd+DPziZ8qG0zvlsGFmIvYgA/i fZOXplRd2TeRR5XqKSrQcnHxKLIeFf5zEKJf34OsCj73S8OWCosYTpCy86LE7r6K1w UiqtAV9J3NP2CsJ2XDiEZu0pmNHY8RPn3klUTfhmRpRTgREXFoETs1fDdeS/cSHaQ0 htcLTSfPtEh4A== Date: Thu, 15 Jun 2023 14:27:18 -0700 (PDT) From: Stefano Stabellini X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop To: Jan Beulich cc: Stefano Stabellini , julien@xen.org, andrew.cooper3@citrix.com, roger.pau@citrix.com, bertrand.marquis@arm.com, roberto.bagnara@bugseng.com, Stefano Stabellini , xen-devel@lists.xenproject.org Subject: Re: [PATCH] xen/misra: add rules 1.4 and 2.1 In-Reply-To: <0a8a5eec-0d07-c1ba-21cc-a336a7f49ddb@suse.com> Message-ID: References: <20230614230328.1060282-1-sstabellini@kernel.org> <0a8a5eec-0d07-c1ba-21cc-a336a7f49ddb@suse.com> User-Agent: Alpine 2.22 (DEB 394 2020-01-19) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII On Thu, 15 Jun 2023, Jan Beulich wrote: > On 15.06.2023 01:03, Stefano Stabellini wrote: > > --- a/docs/misra/rules.rst > > +++ b/docs/misra/rules.rst > > @@ -90,6 +90,17 @@ existing codebase are work-in-progress. > > behaviour > > - > > > > + * - Rule 1.4 > > + - Required > > + - Emergent language features shall not be used > > + - Emergent language features, such as C11 features, should not be > > + confused with similar compiler extensions, which we use. > > The plans to possibly use _Generic, as mentioned during the discussion, > are (I think) making this the first case where we accept a rule with > the expectation to later break (deviate) it. I don't think I'm aware of > provisions in this regard, so by accepting the rule in the form you > suggest may well lead to people later pointing here and say "no" to any > attempt to use _Generic. IOW I think it wants clarifying in the text at > the top of the file that there is flexibility to change in how far we > mean to comply to already accepted rules. I'll do both things: - expand the comment in the Notes section of 1.4 - also add a comment at the top of the file From xen-devel-bounces@lists.xenproject.org Thu Jun 15 21:53:06 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 15 Jun 2023 21:53:06 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549937.858761 (Exim 4.92) (envelope-from ) id 1q9utb-0003a0-Gj; Thu, 15 Jun 2023 21:52:47 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549937.858761; Thu, 15 Jun 2023 21:52:47 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9utb-0003Zt-Di; Thu, 15 Jun 2023 21:52:47 +0000 Received: by outflank-mailman (input) for mailman id 549937; Thu, 15 Jun 2023 21:52:46 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9uta-0003Zi-AU for xen-devel@lists.xenproject.org; Thu, 15 Jun 2023 21:52:46 +0000 Received: from mail-qk1-x729.google.com (mail-qk1-x729.google.com [2607:f8b0:4864:20::729]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id f2fe4b96-0bc6-11ee-8611-37d641c3527e; Thu, 15 Jun 2023 23:52:42 +0200 (CEST) Received: by mail-qk1-x729.google.com with SMTP id af79cd13be357-7621b9d84a2so10523285a.1; Thu, 15 Jun 2023 14:52:41 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: f2fe4b96-0bc6-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686865960; x=1689457960; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=xHDXtAmCULNcgatJP9gmhjw7CxfvMj5rLRSN1vS20fM=; b=i9eM0KDveV7vPz6hNJuWxmHwjZ7J1rqzFtsyNzWLL2HCubDpH9vBkR9TN4luhDT6b6 vHBFNGnH/fG3MV7hW5mzP+wf8PggP0aR23hOxh3cP5MXXh3EtWfyBjitxJAJEUvNTVRE rmqJ2nrpcRDIm9apubWLM3Xr3++QNUrSbfr9WuV95tqPu02OdVam3HnGHzReRRtfwHiZ 2PnsM3fARanno2+kFGuy5yahA7YADukWZeM3cGRumgzM9Dr9zcnQ+EFem1zleYMIt1Ht xuAjRDbvRKLr/cmjXQxg1wrJ19FhOFe19P3RRymzhPWq028KOIgERmGtax/r+LTf+Wts xesg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686865960; x=1689457960; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=xHDXtAmCULNcgatJP9gmhjw7CxfvMj5rLRSN1vS20fM=; b=kXawJlIGnA5Vr/1fV7fDDcnfV19Gk0uVF3sTnLZaBhiV7CaZBxTy7ZuvYNQ4wHwHdQ lAHjmAWfCgEqSW10cn8MI75AK4oHtW8EJnVIx7K7t1PEbSAcNhgjKCAcquCG/w1h2woK v9ziT+1UXHQuramYd5AXYRutYeMRZ+dHIco1zmCVtyuVLKs61+L9VzvF64bea2f3O15A uBG3zO+KgVWe8MVUda/PmC/zIrsZnPok1LDk7vFM0QMMKPeJNuzkIAb5OAYVMhmifnDB 7DUdqoNOWnVU/D2lOxHrOfFgHREgwkkx9k8IebuxE7ZFHGkEdUKRjuEkGYlOq1iSh1me FLHg== X-Gm-Message-State: AC+VfDwQ3xAojer71x0Zae4U/kbdWrZ8nkGhTB+OW7lDjUhaaBX4dBCQ LNXU7uaaQzArCGZy2SIqQC9zcETRlPZJ8r4yCanTeuU5 X-Google-Smtp-Source: ACHHUZ663ww8zC1A6pHvPUt1VTkLb5wm0wigPDtDCdXhk0HVLVcVEfLgzKJMCAIXSrd/2N0vIw6E10S8Whr7mWRDA2Y= X-Received: by 2002:a05:620a:1b98:b0:75b:23a1:8e5e with SMTP id dv24-20020a05620a1b9800b0075b23a18e5emr18918392qkb.47.1686865959735; Thu, 15 Jun 2023 14:52:39 -0700 (PDT) MIME-Version: 1.0 References: <78899eac-9de8-3626-8f40-98f993984f95@xen.org> In-Reply-To: From: Jiatong Shen Date: Fri, 16 Jun 2023 05:52:28 +0800 Message-ID: Subject: Re: Asking for help to debug xen efi on Kunpeng machine To: Julien Grall Cc: Stefano Stabellini , xen-users@lists.xenproject.org, xen-devel@lists.xenproject.org, bertrand.marquis@arm.com Content-Type: multipart/mixed; boundary="000000000000514e2605fe32169e" --000000000000514e2605fe32169e Content-Type: multipart/alternative; boundary="000000000000514e2305fe32169c" --000000000000514e2305fe32169c Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Hello Julien, Thank you for your answer! Adding console=3Dhvc0 indeed provides kernel output serial console. Looking at the log message, I found dom0 kernel failed to initialize a lot of device drivers (network cards, raid cards, etc). Is it related to iommu? I remember iommu is not enabled during the xen kernel booting stage. Thank you again for the help and looking forward to your reply. Best Regards, Jiatong Shen On Fri, Jun 16, 2023 at 4:52=E2=80=AFAM Julien Grall wrote= : > Hi, > > On 13/06/2023 02:07, Jiatong Shen wrote: > > Hello Stefano and Julien, > > > > Could you provide more insights for debugging? I tried to connect t= o > > serial console through ipmitool sol activate and enabled ACPI, I do see > > some logs but the machine is still stuck. BMC video screen is still not > > responsive and black out. > > Looking at your command line, you want to use console=3Dhvc0 on the dom0 > command line. Hopefully, this will enable more logs from the kernel and > give you an idea where it may be stuck. > > Cheers, > > -- > Julien Grall > --=20 Best Regards, Jiatong Shen --000000000000514e2305fe32169c Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Hello Julien,

=C2=A0 =C2=A0 Thank= you for your answer! Adding console=3Dhvc0 indeed provides kernel output s= erial console. Looking at the log message,
I found dom0 kernel fail= ed to initialize a lot of device drivers (network cards, raid cards, etc).<= /div>

=C2=A0 =C2=A0Is it related to iommu? I remember io= mmu is not enabled during the xen kernel booting stage.=C2=A0
Thank you again for the help and looking forward to your reply.=

Best Regards,
Jiatong Shen
<= br>
On Fri,= Jun 16, 2023 at 4:52=E2=80=AFAM Julien Grall <julien@xen.org> wrote:
Hi,

On 13/06/2023 02:07, Jiatong Shen wrote:
> Hello Stefano and Julien,
>
>=C2=A0 =C2=A0 =C2=A0Could you provide more insights for debugging? I tr= ied to connect to
> serial console through ipmitool sol activate and enabled ACPI, I do se= e
> some logs but the machine is still stuck. BMC video screen is still no= t
> responsive and black out.

Looking at your command line, you want to use console=3Dhvc0 on the dom0 command line. Hopefully, this will enable more logs from the kernel and give you an idea where it may be stuck.

Cheers,

--
Julien Grall


--

Best Regards,

Jiatong Shen=
--000000000000514e2305fe32169c-- --000000000000514e2605fe32169e Content-Type: application/octet-stream; name="dom0-kernel.log" Content-Disposition: attachment; filename="dom0-kernel.log" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_lixod66h0 KFhFTikgKioqIFNlcmlhbCBpbnB1dCB0byBET00wICh0eXBlICdDVFJMLWEnIHRocmVlIHRpbWVz IHRvIHN3aXRjaCBpbnB1dCkNCihYRU4pIHNqdC10ZXN0OiBzZXJpYWwgZW5kYm9vdCANCihYRU4p IHNqdC10ZXN0OiB4c20gc2V0IHN5c3RlbSBhY3RpdmUgDQooWEVOKSBzanQtdGVzdDogZG9tYWlu IHVucGF1c2UgYnkgc3lzdGVtY29udHJvbGxlciANCihYRU4pIHNqdC10ZXN0OiB1bnBhdXNlIGRv bWFpbnN3aXRjaCBzdGFjayBhbmQganVtcCANCihYRU4pIEZyZWVkIDM4MGtCIGluaXQgbWVtb3J5 Lg0KKFhFTikgc2p0LXRlc3Q6IG1vZGlmeSB4ZW4gbWFwcGluZ3MgDQooWEVOKSBzanQtdGVzdDog c3RhcnR1cCBjcHUgaWRsZSBsb29wIA0KKFhFTikgZDB2MDogdkdJQ0Q6IFJBWiBvbiByZXNlcnZl ZCByZWdpc3RlciBvZmZzZXQgMHgwMDAwMGMNCihYRU4pIGQwdjA6IHZHSUNEOiB1bmhhbmRsZWQg d29yZCB3cml0ZSAweDAwMDAwMGZmZmZmZmZmIHRvIElDQUNUSVZFUjQNCihYRU4pIGQwdjA6IHZH SUNEOiB1bmhhbmRsZWQgd29yZCB3cml0ZSAweDAwMDAwMGZmZmZmZmZmIHRvIElDQUNUSVZFUjgN CihYRU4pIGQwdjA6IHZHSUNEOiB1bmhhbmRsZWQgd29yZCB3cml0ZSAweDAwMDAwMGZmZmZmZmZm IHRvIElDQUNUSVZFUjEyDQooWEVOKSBkMHYwOiB2R0lDRDogdW5oYW5kbGVkIHdvcmQgd3JpdGUg MHgwMDAwMDBmZmZmZmZmZiB0byBJQ0FDVElWRVIxNg0KKFhFTikgZDB2MDogdkdJQ0Q6IHVuaGFu ZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMjANCihYRU4pIGQw djA6IHZHSUNEOiB1bmhhbmRsZWQgd29yZCB3cml0ZSAweDAwMDAwMGZmZmZmZmZmIHRvIElDQUNU SVZFUjI0DQooWEVOKSBkMHYwOiB2R0lDRDogdW5oYW5kbGVkIHdvcmQgd3JpdGUgMHgwMDAwMDBm ZmZmZmZmZiB0byBJQ0FDVElWRVIyOA0KKFhFTikgZDB2MDogdkdJQ0Q6IHVuaGFuZGxlZCB3b3Jk IHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMzINCihYRU4pIGQwdjA6IHZHSUNE OiB1bmhhbmRsZWQgd29yZCB3cml0ZSAweDAwMDAwMGZmZmZmZmZmIHRvIElDQUNUSVZFUjM2DQoo WEVOKSBkMHYwOiB2R0lDRDogdW5oYW5kbGVkIHdvcmQgd3JpdGUgMHgwMDAwMDBmZmZmZmZmZiB0 byBJQ0FDVElWRVI0MA0KKFhFTikgZDB2MDogdkdJQ0Q6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4 MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSNDQNCihYRU4pIGQwdjA6IHZHSUNEOiB1bmhhbmRs ZWQgd29yZCB3cml0ZSAweDAwMDAwMGZmZmZmZmZmIHRvIElDQUNUSVZFUjQ4DQooWEVOKSBkMHYw OiB2R0lDRDogdW5oYW5kbGVkIHdvcmQgd3JpdGUgMHgwMDAwMDBmZmZmZmZmZiB0byBJQ0FDVElW RVI1Mg0KKFhFTikgZDB2MDogdkdJQ0Q6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZm ZmZmZmYgdG8gSUNBQ1RJVkVSNTYNCihYRU4pIGQwdjA6IHZHSUNEOiB1bmhhbmRsZWQgd29yZCB3 cml0ZSAweDAwMDAwMGZmZmZmZmZmIHRvIElDQUNUSVZFUjYwDQooWEVOKSBkMHYwOiB2R0lDRDog dW5oYW5kbGVkIHdvcmQgd3JpdGUgMHgwMDAwMDBmZmZmZmZmZiB0byBJQ0FDVElWRVI2NA0KKFhF TikgZDB2MDogdkdJQ0Q6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8g SUNBQ1RJVkVSNjgNCihYRU4pIGQwdjA6IHZHSUNEOiB1bmhhbmRsZWQgd29yZCB3cml0ZSAweDAw MDAwMGZmZmZmZmZmIHRvIElDQUNUSVZFUjcyDQooWEVOKSBkMHYwOiB2R0lDRDogdW5oYW5kbGVk IHdvcmQgd3JpdGUgMHgwMDAwMDBmZmZmZmZmZiB0byBJQ0FDVElWRVI3Ng0KKFhFTikgZDB2MDog dkdJQ0Q6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVS ODANCihYRU4pIGQwdjA6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAw ZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2MTogdkdJQ1I6IFNHSTogdW5oYW5kbGVk IHdvcmQgd3JpdGUgMHgwMDAwMDBmZmZmZmZmZiB0byBJQ0FDVElWRVIwDQooWEVOKSBkMHYyOiB2 R0lDUjogU0dJOiB1bmhhbmRsZWQgd29yZCB3cml0ZSAweDAwMDAwMGZmZmZmZmZmIHRvIElDQUNU SVZFUjANCihYRU4pIGQwdjM6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAw MDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2NDogdkdJQ1I6IFNHSTogdW5oYW5k bGVkIHdvcmQgd3JpdGUgMHgwMDAwMDBmZmZmZmZmZiB0byBJQ0FDVElWRVIwDQooWEVOKSBkMHY1 OiB2R0lDUjogU0dJOiB1bmhhbmRsZWQgd29yZCB3cml0ZSAweDAwMDAwMGZmZmZmZmZmIHRvIElD QUNUSVZFUjANCihYRU4pIGQwdjY6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4 MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2NzogdkdJQ1I6IFNHSTogdW5o YW5kbGVkIHdvcmQgd3JpdGUgMHgwMDAwMDBmZmZmZmZmZiB0byBJQ0FDVElWRVIwDQooWEVOKSBk MHY4OiB2R0lDUjogU0dJOiB1bmhhbmRsZWQgd29yZCB3cml0ZSAweDAwMDAwMGZmZmZmZmZmIHRv IElDQUNUSVZFUjANCihYRU4pIGQwdjk6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRl IDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2MTA6IHZHSUNSOiBTR0k6 IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhF TikgZDB2MTE6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZm ZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2MTI6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3Jk IHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2MTM6IHZHSUNS OiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVS MA0KKFhFTikgZDB2MTQ6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAw ZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2MTU6IHZHSUNSOiBTR0k6IHVuaGFuZGxl ZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2MTY6 IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNB Q1RJVkVSMA0KKFhFTikgZDB2MTc6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4 MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2MTg6IHZHSUNSOiBTR0k6IHVu aGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikg ZDB2MTk6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYg dG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2MjA6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdy aXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2MjE6IHZHSUNSOiBT R0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0K KFhFTikgZDB2MjI6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZm ZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2MjM6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3 b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2MjQ6IHZH SUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJ VkVSMA0KKFhFTikgZDB2MjU6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAw MDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2MjY6IHZHSUNSOiBTR0k6IHVuaGFu ZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2 Mjc6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8g SUNBQ1RJVkVSMA0KKFhFTikgZDB2Mjg6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRl IDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2Mjk6IHZHSUNSOiBTR0k6 IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhF TikgZDB2MzA6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZm ZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2MzE6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3Jk IHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2MzI6IHZHSUNS OiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVS MA0KKFhFTikgZDB2MzM6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAw ZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2MzQ6IHZHSUNSOiBTR0k6IHVuaGFuZGxl ZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2MzU6 IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNB Q1RJVkVSMA0KKFhFTikgZDB2MzY6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4 MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2Mzc6IHZHSUNSOiBTR0k6IHVu aGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikg ZDB2Mzg6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYg dG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2Mzk6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdy aXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2NDA6IHZHSUNSOiBT R0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0K KFhFTikgZDB2NDE6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZm ZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2NDI6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3 b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2NDM6IHZH SUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJ VkVSMA0KKFhFTikgZDB2NDQ6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAw MDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2NDU6IHZHSUNSOiBTR0k6IHVuaGFu ZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2 NDY6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8g SUNBQ1RJVkVSMA0KKFhFTikgZDB2NDc6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRl IDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2NDg6IHZHSUNSOiBTR0k6 IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhF TikgZDB2NDk6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZm ZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2NTA6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3Jk IHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2NTE6IHZHSUNS OiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVS MA0KKFhFTikgZDB2NTI6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAw ZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2NTM6IHZHSUNSOiBTR0k6IHVuaGFuZGxl ZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2NTQ6 IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNB Q1RJVkVSMA0KKFhFTikgZDB2NTU6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4 MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2NTY6IHZHSUNSOiBTR0k6IHVu aGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikg ZDB2NTc6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYg dG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2NTg6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdy aXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2NTk6IHZHSUNSOiBT R0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0K KFhFTikgZDB2NjA6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZm ZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2NjE6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3 b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2NjI6IHZH SUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJ VkVSMA0KKFhFTikgZDB2NjM6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAw MDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2NjQ6IHZHSUNSOiBTR0k6IHVuaGFu ZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2 NjU6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8g SUNBQ1RJVkVSMA0KKFhFTikgZDB2NjY6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRl IDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2Njc6IHZHSUNSOiBTR0k6 IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhF TikgZDB2Njg6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZm ZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2Njk6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3Jk IHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2NzA6IHZHSUNS OiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVS MA0KKFhFTikgZDB2NzE6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAw ZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2NzI6IHZHSUNSOiBTR0k6IHVuaGFuZGxl ZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2NzM6 IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNB Q1RJVkVSMA0KKFhFTikgZDB2NzQ6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4 MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2NzU6IHZHSUNSOiBTR0k6IHVu aGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikg ZDB2NzY6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYg dG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2Nzc6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdy aXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2Nzg6IHZHSUNSOiBT R0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0K KFhFTikgZDB2Nzk6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZm ZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2ODA6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3 b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2ODE6IHZH SUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJ VkVSMA0KKFhFTikgZDB2ODI6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAw MDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2ODM6IHZHSUNSOiBTR0k6IHVuaGFu ZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2 ODQ6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8g SUNBQ1RJVkVSMA0KKFhFTikgZDB2ODU6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRl IDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2ODY6IHZHSUNSOiBTR0k6 IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhF TikgZDB2ODc6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZm ZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2ODg6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3Jk IHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2ODk6IHZHSUNS OiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVS MA0KKFhFTikgZDB2OTA6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAw ZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2OTE6IHZHSUNSOiBTR0k6IHVuaGFuZGxl ZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2OTI6 IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNB Q1RJVkVSMA0KKFhFTikgZDB2OTM6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4 MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2OTQ6IHZHSUNSOiBTR0k6IHVu aGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikg ZDB2OTU6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYg dG8gSUNBQ1RJVkVSMA0KWyAgICAwLjc1MDA0NF0gcGNpIDAwMDA6MDA6MDAuMDogRmFpbGVkIHRv IGFkZCAtIHBhc3N0aHJvdWdoIG9yIE1TSS9NU0ktWCBtaWdodCBmYWlsIQ0KWyAgICAwLjc1MDE5 OF0gcGNpIDAwMDA6MDA6MDQuMDogRmFpbGVkIHRvIGFkZCAtIHBhc3N0aHJvdWdoIG9yIE1TSS9N U0ktWCBtaWdodCBmYWlsIQ0KWyAgICAwLjc1MDMyOV0gcGNpIDAwMDA6MDA6MDguMDogRmFpbGVk IHRvIGFkZCAtIHBhc3N0aHJvdWdoIG9yIE1TSS9NU0ktWCBtaWdodCBmYWlsIQ0KWyAgICAwLjc1 MDQ2MV0gcGNpIDAwMDA6MDA6MGMuMDogRmFpbGVkIHRvIGFkZCAtIHBhc3N0aHJvdWdoIG9yIE1T SS9NU0ktWCBtaWdodCBmYWlsIQ0KWyAgICAwLjc1MDU5NF0gcGNpIDAwMDA6MDA6MTAuMDogRmFp bGVkIHRvIGFkZCAtIHBhc3N0aHJvdWdoIG9yIE1TSS9NU0ktWCBtaWdodCBmYWlsIQ0KWyAgICAw Ljc1MDcyMV0gcGNpIDAwMDA6MDA6MTEuMDogRmFpbGVkIHRvIGFkZCAtIHBhc3N0aHJvdWdoIG9y IE1TSS9NU0ktWCBtaWdodCBmYWlsIQ0KWyAgICAwLjc1MDg0NF0gcGNpIDAwMDA6MDA6MTIuMDog RmFpbGVkIHRvIGFkZCAtIHBhc3N0aHJvdWdoIG9yIE1TSS9NU0ktWCBtaWdodCBmYWlsIQ0KWyAg ICAwLjc1NDYwNF0gcGNpIDAwMDA6MDE6MDAuMDogRmFpbGVkIHRvIGFkZCAtIHBhc3N0aHJvdWdo IG9yIE1TSS9NU0ktWCBtaWdodCBmYWlsIQ0KWyAgICAwLjc1ODE4MF0gcGNpIDAwMDA6MDE6MDAu MTogRmFpbGVkIHRvIGFkZCAtIHBhc3N0aHJvdWdoIG9yIE1TSS9NU0ktWCBtaWdodCBmYWlsIQ0K WyAgICAwLjc2MTcwOF0gcGNpIDAwMDA6MDI6MDAuMDogRmFpbGVkIHRvIGFkZCAtIHBhc3N0aHJv dWdoIG9yIE1TSS9NU0ktWCBtaWdodCBmYWlsIQ0KWyAgICAwLjc2NTAwNV0gcGNpIDAwMDA6MDI6 MDAuMTogRmFpbGVkIHRvIGFkZCAtIHBhc3N0aHJvdWdoIG9yIE1TSS9NU0ktWCBtaWdodCBmYWls IQ0KWyAgICAwLjc2NTI5OV0gcGNpIDAwMDA6MDM6MDAuMDogRmFpbGVkIHRvIGFkZCAtIHBhc3N0 aHJvdWdoIG9yIE1TSS9NU0ktWCBtaWdodCBmYWlsIQ0KWyAgICAwLjc2ODczOV0gcGNpIDAwMDA6 MDQ6MDAuMDogRmFpbGVkIHRvIGFkZCAtIHBhc3N0aHJvdWdoIG9yIE1TSS9NU0ktWCBtaWdodCBm YWlsIQ0KWyAgICAwLjc3MjAxOF0gcGNpIDAwMDA6MDQ6MDAuMTogRmFpbGVkIHRvIGFkZCAtIHBh c3N0aHJvdWdoIG9yIE1TSS9NU0ktWCBtaWdodCBmYWlsIQ0KWyAgICAwLjc3MjMyNl0gcGNpIDAw MDA6MDU6MDAuMDogRmFpbGVkIHRvIGFkZCAtIHBhc3N0aHJvdWdoIG9yIE1TSS9NU0ktWCBtaWdo dCBmYWlsIQ0KWyAgICAwLjc3MjU4MV0gcGNpIDAwMDA6MDY6MDAuMDogRmFpbGVkIHRvIGFkZCAt IHBhc3N0aHJvdWdoIG9yIE1TSS9NU0ktWCBtaWdodCBmYWlsIQ0KWyAgICAwLjc3MzcyNl0gcGNp IDAwMDA6N2I6MDAuMDogRmFpbGVkIHRvIGFkZCAtIHBhc3N0aHJvdWdoIG9yIE1TSS9NU0ktWCBt aWdodCBmYWlsIQ0KWyAgICAwLjc3NDY2Nl0gcGNpIDAwMDA6N2E6MDAuMDogRmFpbGVkIHRvIGFk ZCAtIHBhc3N0aHJvdWdoIG9yIE1TSS9NU0ktWCBtaWdodCBmYWlsIQ0KWyAgICAwLjc3NDc0Ml0g cGNpIDAwMDA6N2E6MDEuMDogRmFpbGVkIHRvIGFkZCAtIHBhc3N0aHJvdWdoIG9yIE1TSS9NU0kt WCBtaWdodCBmYWlsIQ0KWyAgICAwLjc3NDgxMF0gcGNpIDAwMDA6N2E6MDIuMDogRmFpbGVkIHRv IGFkZCAtIHBhc3N0aHJvdWdoIG9yIE1TSS9NU0ktWCBtaWdodCBmYWlsIQ0KWyAgICAwLjc3NTc3 MF0gcGNpIDAwMDA6Nzg6MDAuMDogRmFpbGVkIHRvIGFkZCAtIHBhc3N0aHJvdWdoIG9yIE1TSS9N U0ktWCBtaWdodCBmYWlsIQ0KWyAgICAwLjc3NTg5MF0gcGNpIDAwMDA6Nzg6MDEuMDogRmFpbGVk IHRvIGFkZCAtIHBhc3N0aHJvdWdoIG9yIE1TSS9NU0ktWCBtaWdodCBmYWlsIQ0KWyAgICAwLjc3 NjEyNl0gcGNpIDAwMDA6Nzk6MDAuMDogRmFpbGVkIHRvIGFkZCAtIHBhc3N0aHJvdWdoIG9yIE1T SS9NU0ktWCBtaWdodCBmYWlsIQ0KWyAgICAwLjc3NzAyM10gQUNQSTogSU9SVDogW0Zpcm13YXJl IEJ1Z106IFttYXAgKF9fX19wdHJ2YWxfX19fKV0gY29uZmxpY3RpbmcgbWFwcGluZyBmb3IgaW5w dXQgSUQgMHg3YzAwDQpbICAgIDAuNzc3MDMxXSBBQ1BJOiBJT1JUOiBbRmlybXdhcmUgQnVnXTog YXBwbHlpbmcgd29ya2Fyb3VuZC4NClsgICAgMC43NzcwNjddIHBjaSAwMDAwOjdjOjAwLjA6IEZh aWxlZCB0byBhZGQgLSBwYXNzdGhyb3VnaCBvciBNU0kvTVNJLVggbWlnaHQgZmFpbCENClsgICAg MC43NzcyMjRdIHBjaSAwMDAwOjdkOjAwLjA6IEZhaWxlZCB0byBhZGQgLSBwYXNzdGhyb3VnaCBv ciBNU0kvTVNJLVggbWlnaHQgZmFpbCENClsgICAgMC43NzczMjNdIHBjaSAwMDAwOjdkOjAwLjE6 IEZhaWxlZCB0byBhZGQgLSBwYXNzdGhyb3VnaCBvciBNU0kvTVNJLVggbWlnaHQgZmFpbCENClsg ICAgMC43Nzc0MjFdIHBjaSAwMDAwOjdkOjAwLjI6IEZhaWxlZCB0byBhZGQgLSBwYXNzdGhyb3Vn aCBvciBNU0kvTVNJLVggbWlnaHQgZmFpbCENClsgICAgMC43Nzc1MTZdIHBjaSAwMDAwOjdkOjAw LjM6IEZhaWxlZCB0byBhZGQgLSBwYXNzdGhyb3VnaCBvciBNU0kvTVNJLVggbWlnaHQgZmFpbCEN ClsgICAgMC43Nzg1NzldIHBjaSAwMDAwOjc0OjAwLjA6IEZhaWxlZCB0byBhZGQgLSBwYXNzdGhy b3VnaCBvciBNU0kvTVNJLVggbWlnaHQgZmFpbCENClsgICAgMC43Nzg2ODFdIHBjaSAwMDAwOjc0 OjAxLjA6IEZhaWxlZCB0byBhZGQgLSBwYXNzdGhyb3VnaCBvciBNU0kvTVNJLVggbWlnaHQgZmFp bCENClsgICAgMC43Nzg3ODVdIHBjaSAwMDAwOjc0OjAyLjA6IEZhaWxlZCB0byBhZGQgLSBwYXNz dGhyb3VnaCBvciBNU0kvTVNJLVggbWlnaHQgZmFpbCENClsgICAgMC43Nzg4NjVdIHBjaSAwMDAw Ojc0OjAzLjA6IEZhaWxlZCB0byBhZGQgLSBwYXNzdGhyb3VnaCBvciBNU0kvTVNJLVggbWlnaHQg ZmFpbCENClsgICAgMC43Nzg5NzZdIHBjaSAwMDAwOjc0OjA0LjA6IEZhaWxlZCB0byBhZGQgLSBw YXNzdGhyb3VnaCBvciBNU0kvTVNJLVggbWlnaHQgZmFpbCENClsgICAgMC43NzkxOTJdIHBjaSAw MDAwOjc1OjAwLjA6IEZhaWxlZCB0byBhZGQgLSBwYXNzdGhyb3VnaCBvciBNU0kvTVNJLVggbWln aHQgZmFpbCENClsgICAgMC43Nzk0MDRdIHBjaSAwMDAwOjc2OjAwLjA6IEZhaWxlZCB0byBhZGQg LSBwYXNzdGhyb3VnaCBvciBNU0kvTVNJLVggbWlnaHQgZmFpbCENClsgICAgMC43ODA1MzVdIHBj aSAwMDAwOjgwOjAwLjA6IEZhaWxlZCB0byBhZGQgLSBwYXNzdGhyb3VnaCBvciBNU0kvTVNJLVgg bWlnaHQgZmFpbCENClsgICAgMC43ODA2NzZdIHBjaSAwMDAwOjgwOjA0LjA6IEZhaWxlZCB0byBh ZGQgLSBwYXNzdGhyb3VnaCBvciBNU0kvTVNJLVggbWlnaHQgZmFpbCENClsgICAgMC43ODA4MjFd IHBjaSAwMDAwOjgwOjEwLjA6IEZhaWxlZCB0byBhZGQgLSBwYXNzdGhyb3VnaCBvciBNU0kvTVNJ LVggbWlnaHQgZmFpbCENClsgICAgMC43ODQ1ODFdIHBjaSAwMDAwOjgxOjAwLjA6IEZhaWxlZCB0 byBhZGQgLSBwYXNzdGhyb3VnaCBvciBNU0kvTVNJLVggbWlnaHQgZmFpbCENClsgICAgMC43ODgx NjRdIHBjaSAwMDAwOjgxOjAwLjE6IEZhaWxlZCB0byBhZGQgLSBwYXNzdGhyb3VnaCBvciBNU0kv TVNJLVggbWlnaHQgZmFpbCENClsgICAgMC43OTE3MjVdIHBjaSAwMDAwOjgyOjAwLjA6IEZhaWxl ZCB0byBhZGQgLSBwYXNzdGhyb3VnaCBvciBNU0kvTVNJLVggbWlnaHQgZmFpbCENClsgICAgMC43 OTUwMzhdIHBjaSAwMDAwOjgyOjAwLjE6IEZhaWxlZCB0byBhZGQgLSBwYXNzdGhyb3VnaCBvciBN U0kvTVNJLVggbWlnaHQgZmFpbCENClsgICAgMC43OTYxNzhdIHBjaSAwMDAwOmJiOjAwLjA6IEZh aWxlZCB0byBhZGQgLSBwYXNzdGhyb3VnaCBvciBNU0kvTVNJLVggbWlnaHQgZmFpbCENClsgICAg MC43OTcxNDZdIHBjaSAwMDAwOmJhOjAwLjA6IEZhaWxlZCB0byBhZGQgLSBwYXNzdGhyb3VnaCBv ciBNU0kvTVNJLVggbWlnaHQgZmFpbCENClsgICAgMC43OTcyMzFdIHBjaSAwMDAwOmJhOjAxLjA6 IEZhaWxlZCB0byBhZGQgLSBwYXNzdGhyb3VnaCBvciBNU0kvTVNJLVggbWlnaHQgZmFpbCENClsg ICAgMC43OTczMTddIHBjaSAwMDAwOmJhOjAyLjA6IEZhaWxlZCB0byBhZGQgLSBwYXNzdGhyb3Vn aCBvciBNU0kvTVNJLVggbWlnaHQgZmFpbCENClsgICAgMC43OTgzMzhdIHBjaSAwMDAwOmI4OjAw LjA6IEZhaWxlZCB0byBhZGQgLSBwYXNzdGhyb3VnaCBvciBNU0kvTVNJLVggbWlnaHQgZmFpbCEN ClsgICAgMC43OTg0NjZdIHBjaSAwMDAwOmI4OjAxLjA6IEZhaWxlZCB0byBhZGQgLSBwYXNzdGhy b3VnaCBvciBNU0kvTVNJLVggbWlnaHQgZmFpbCENClsgICAgMC43OTg2ODRdIHBjaSAwMDAwOmI5 OjAwLjA6IEZhaWxlZCB0byBhZGQgLSBwYXNzdGhyb3VnaCBvciBNU0kvTVNJLVggbWlnaHQgZmFp bCENClsgICAgMC43OTk2MDRdIEFDUEk6IElPUlQ6IFtGaXJtd2FyZSBCdWddOiBbbWFwIChfX19f cHRydmFsX19fXyldIGNvbmZsaWN0aW5nIG1hcHBpbmcgZm9yIGlucHV0IElEIDB4YmMwMA0KWyAg ICAwLjc5OTYxMV0gQUNQSTogSU9SVDogW0Zpcm13YXJlIEJ1Z106IGFwcGx5aW5nIHdvcmthcm91 bmQuDQpbICAgIDAuNzk5NjY3XSBwY2kgMDAwMDpiYzowMC4wOiBGYWlsZWQgdG8gYWRkIC0gcGFz c3Rocm91Z2ggb3IgTVNJL01TSS1YIG1pZ2h0IGZhaWwhDQpbICAgIDAuODAwNzMyXSBwY2kgMDAw MDpiNDowMC4wOiBGYWlsZWQgdG8gYWRkIC0gcGFzc3Rocm91Z2ggb3IgTVNJL01TSS1YIG1pZ2h0 IGZhaWwhDQpbICAgIDAuODAwODQyXSBwY2kgMDAwMDpiNDowMS4wOiBGYWlsZWQgdG8gYWRkIC0g cGFzc3Rocm91Z2ggb3IgTVNJL01TSS1YIG1pZ2h0IGZhaWwhDQpbICAgIDAuODAwOTU1XSBwY2kg MDAwMDpiNDowMi4wOiBGYWlsZWQgdG8gYWRkIC0gcGFzc3Rocm91Z2ggb3IgTVNJL01TSS1YIG1p Z2h0IGZhaWwhDQpbICAgIDAuODAxMDM1XSBwY2kgMDAwMDpiNDowMy4wOiBGYWlsZWQgdG8gYWRk IC0gcGFzc3Rocm91Z2ggb3IgTVNJL01TSS1YIG1pZ2h0IGZhaWwhDQpbICAgIDAuODAxMTMzXSBw Y2kgMDAwMDpiNDowNC4wOiBGYWlsZWQgdG8gYWRkIC0gcGFzc3Rocm91Z2ggb3IgTVNJL01TSS1Y IG1pZ2h0IGZhaWwhDQpbICAgIDAuODAxMzU5XSBwY2kgMDAwMDpiNTowMC4wOiBGYWlsZWQgdG8g YWRkIC0gcGFzc3Rocm91Z2ggb3IgTVNJL01TSS1YIG1pZ2h0IGZhaWwhDQpbICAgIDAuODAxNTQ5 XSBwY2kgMDAwMDpiNjowMC4wOiBGYWlsZWQgdG8gYWRkIC0gcGFzc3Rocm91Z2ggb3IgTVNJL01T SS1YIG1pZ2h0IGZhaWwhDQpbICAgIDEuMjUzNTE4XSBIaXNpbGljb24gTUJJR0VOLVYyIEhJU0kw MTUyOjAwOiBGYWlsZWQgdG8gY3JlYXRlIG1iaS1nZW4gaXJxZG9tYWluDQpbICAgIDEuMjUzNjk2 XSBIaXNpbGljb24gTUJJR0VOLVYyIEhJU0kwMTUyOjAxOiBGYWlsZWQgdG8gY3JlYXRlIG1iaS1n ZW4gaXJxZG9tYWluDQpbICAgIDEuMjUzNzg1XSBIaXNpbGljb24gTUJJR0VOLVYyIEhJU0kwMTUy OjAyOiBGYWlsZWQgdG8gY3JlYXRlIG1iaS1nZW4gaXJxZG9tYWluDQpbICAgIDEuMjUzODU5XSBI aXNpbGljb24gTUJJR0VOLVYyIEhJU0kwMTUyOjAzOiBGYWlsZWQgdG8gY3JlYXRlIG1iaS1nZW4g aXJxZG9tYWluDQpbICAgIDEuMjUzOTM1XSBIaXNpbGljb24gTUJJR0VOLVYyIEhJU0kwMTUyOjA0 OiBGYWlsZWQgdG8gY3JlYXRlIG1iaS1nZW4gaXJxZG9tYWluDQpbICAgIDEuMjU0MDA3XSBIaXNp bGljb24gTUJJR0VOLVYyIEhJU0kwMTUyOjA1OiBGYWlsZWQgdG8gY3JlYXRlIG1iaS1nZW4gaXJx ZG9tYWluDQpbICAgIDEuMjU0MDc0XSBIaXNpbGljb24gTUJJR0VOLVYyIEhJU0kwMTUyOjA4OiBG YWlsZWQgdG8gY3JlYXRlIG1iaS1nZW4gaXJxZG9tYWluDQpbICAgIDEuMjU0MTQzXSBIaXNpbGlj b24gTUJJR0VOLVYyIEhJU0kwMTUyOjA5OiBGYWlsZWQgdG8gY3JlYXRlIG1iaS1nZW4gaXJxZG9t YWluDQpbICAgIDEuMjU0MjEzXSBIaXNpbGljb24gTUJJR0VOLVYyIEhJU0kwMTUyOjBhOiBGYWls ZWQgdG8gY3JlYXRlIG1iaS1nZW4gaXJxZG9tYWluDQpbICAgIDEuMjU0MjgxXSBIaXNpbGljb24g TUJJR0VOLVYyIEhJU0kwMTUyOjBiOiBGYWlsZWQgdG8gY3JlYXRlIG1iaS1nZW4gaXJxZG9tYWlu DQpbICAgIDEuMjU0MzUwXSBIaXNpbGljb24gTUJJR0VOLVYyIEhJU0kwMTUyOjBjOiBGYWlsZWQg dG8gY3JlYXRlIG1iaS1nZW4gaXJxZG9tYWluDQpbICAgIDEuMjU0NDE5XSBIaXNpbGljb24gTUJJ R0VOLVYyIEhJU0kwMTUyOjBkOiBGYWlsZWQgdG8gY3JlYXRlIG1iaS1nZW4gaXJxZG9tYWluDQpb ICAgIDEuMjU0NDg5XSBIaXNpbGljb24gTUJJR0VOLVYyIEhJU0kwMTUyOjBlOiBGYWlsZWQgdG8g Y3JlYXRlIG1iaS1nZW4gaXJxZG9tYWluDQpbICAgIDEuMjU0NTU3XSBIaXNpbGljb24gTUJJR0VO LVYyIEhJU0kwMTUyOjBmOiBGYWlsZWQgdG8gY3JlYXRlIG1iaS1nZW4gaXJxZG9tYWluDQpbICAg IDEuMjU0NjI1XSBIaXNpbGljb24gTUJJR0VOLVYyIEhJU0kwMTUyOjEwOiBGYWlsZWQgdG8gY3Jl YXRlIG1iaS1nZW4gaXJxZG9tYWluDQpbICAgIDEuMjU0NjkzXSBIaXNpbGljb24gTUJJR0VOLVYy IEhJU0kwMTUyOjExOiBGYWlsZWQgdG8gY3JlYXRlIG1iaS1nZW4gaXJxZG9tYWluDQpbICAgIDEu MjU0NzYxXSBIaXNpbGljb24gTUJJR0VOLVYyIEhJU0kwMTUyOjEyOiBGYWlsZWQgdG8gY3JlYXRl IG1iaS1nZW4gaXJxZG9tYWluDQpbICAgIDEuMjU0ODI5XSBIaXNpbGljb24gTUJJR0VOLVYyIEhJ U0kwMTUyOjEzOiBGYWlsZWQgdG8gY3JlYXRlIG1iaS1nZW4gaXJxZG9tYWluDQpbICAgIDEuMjU0 ODk4XSBIaXNpbGljb24gTUJJR0VOLVYyIEhJU0kwMTUyOjE2OiBGYWlsZWQgdG8gY3JlYXRlIG1i aS1nZW4gaXJxZG9tYWluDQpbICAgIDEuMjU0OTY1XSBIaXNpbGljb24gTUJJR0VOLVYyIEhJU0kw MTUyOjE3OiBGYWlsZWQgdG8gY3JlYXRlIG1iaS1nZW4gaXJxZG9tYWluDQpbICAgIDEuMjU1MDMy XSBIaXNpbGljb24gTUJJR0VOLVYyIEhJU0kwMTUyOjE4OiBGYWlsZWQgdG8gY3JlYXRlIG1iaS1n ZW4gaXJxZG9tYWluDQpbICAgIDEuMjU1MTAxXSBIaXNpbGljb24gTUJJR0VOLVYyIEhJU0kwMTUy OjE5OiBGYWlsZWQgdG8gY3JlYXRlIG1iaS1nZW4gaXJxZG9tYWluDQpbICAgIDEuMjU1MTcxXSBI aXNpbGljb24gTUJJR0VOLVYyIEhJU0kwMTUyOjFhOiBGYWlsZWQgdG8gY3JlYXRlIG1iaS1nZW4g aXJxZG9tYWluDQpbICAgIDEuMjU1MjM4XSBIaXNpbGljb24gTUJJR0VOLVYyIEhJU0kwMTUyOjFi OiBGYWlsZWQgdG8gY3JlYXRlIG1iaS1nZW4gaXJxZG9tYWluDQpbICAgIDEuMjU1MzE2XSBIaXNp bGljb24gTUJJR0VOLVYyIEhJU0kwMTUyOjFjOiBGYWlsZWQgdG8gY3JlYXRlIG1iaS1nZW4gaXJx ZG9tYWluDQpbICAgIDEuMjU1MzkzXSBIaXNpbGljb24gTUJJR0VOLVYyIEhJU0kwMTUyOjFkOiBG YWlsZWQgdG8gY3JlYXRlIG1iaS1nZW4gaXJxZG9tYWluDQpbICAgIDEuMjU1NDYzXSBIaXNpbGlj b24gTUJJR0VOLVYyIEhJU0kwMTUyOjFlOiBGYWlsZWQgdG8gY3JlYXRlIG1iaS1nZW4gaXJxZG9t YWluDQpbICAgIDEuMjU1NTMxXSBIaXNpbGljb24gTUJJR0VOLVYyIEhJU0kwMTUyOjFmOiBGYWls ZWQgdG8gY3JlYXRlIG1iaS1nZW4gaXJxZG9tYWluDQpbICAgIDEuMjU1NTkwXSBIaXNpbGljb24g TUJJR0VOLVYyIEhJU0kwMTUyOjIwOiBGYWlsZWQgdG8gY3JlYXRlIG1iaS1nZW4gaXJxZG9tYWlu DQpbICAgIDEuMjU1NjQ5XSBIaXNpbGljb24gTUJJR0VOLVYyIEhJU0kwMTUyOjIxOiBGYWlsZWQg dG8gY3JlYXRlIG1iaS1nZW4gaXJxZG9tYWluDQpbICAgIDEuMjU1NzEyXSBIaXNpbGljb24gTUJJ R0VOLVYyIEhJU0kwMTUyOjI0OiBGYWlsZWQgdG8gY3JlYXRlIG1iaS1nZW4gaXJxZG9tYWluDQpb ICAgIDEuMjU1Nzc3XSBIaXNpbGljb24gTUJJR0VOLVYyIEhJU0kwMTUyOjI1OiBGYWlsZWQgdG8g Y3JlYXRlIG1iaS1nZW4gaXJxZG9tYWluDQpbICAgIDEuMjU1ODQ0XSBIaXNpbGljb24gTUJJR0VO LVYyIEhJU0kwMTUyOjI2OiBGYWlsZWQgdG8gY3JlYXRlIG1iaS1nZW4gaXJxZG9tYWluDQpbICAg IDEuMjU1OTExXSBIaXNpbGljb24gTUJJR0VOLVYyIEhJU0kwMTUyOjI3OiBGYWlsZWQgdG8gY3Jl YXRlIG1iaS1nZW4gaXJxZG9tYWluDQpbICAgIDEuMjU1OTc2XSBIaXNpbGljb24gTUJJR0VOLVYy IEhJU0kwMTUyOjI4OiBGYWlsZWQgdG8gY3JlYXRlIG1iaS1nZW4gaXJxZG9tYWluDQpbICAgIDEu MjU2MDQyXSBIaXNpbGljb24gTUJJR0VOLVYyIEhJU0kwMTUyOjI5OiBGYWlsZWQgdG8gY3JlYXRl IG1iaS1nZW4gaXJxZG9tYWluDQpbICAgIDEuMjU2MTEwXSBIaXNpbGljb24gTUJJR0VOLVYyIEhJ U0kwMTUyOjJhOiBGYWlsZWQgdG8gY3JlYXRlIG1iaS1nZW4gaXJxZG9tYWluDQpbICAgIDEuMjU2 MTc3XSBIaXNpbGljb24gTUJJR0VOLVYyIEhJU0kwMTUyOjJiOiBGYWlsZWQgdG8gY3JlYXRlIG1i aS1nZW4gaXJxZG9tYWluDQpbICAgIDEuMjU2MjQzXSBIaXNpbGljb24gTUJJR0VOLVYyIEhJU0kw MTUyOjJjOiBGYWlsZWQgdG8gY3JlYXRlIG1iaS1nZW4gaXJxZG9tYWluDQpbICAgIDEuMjU2MzAx XSBIaXNpbGljb24gTUJJR0VOLVYyIEhJU0kwMTUyOjJkOiBGYWlsZWQgdG8gY3JlYXRlIG1iaS1n ZW4gaXJxZG9tYWluDQpbICAgIDEuMjU2MzYwXSBIaXNpbGljb24gTUJJR0VOLVYyIEhJU0kwMTUy OjJlOiBGYWlsZWQgdG8gY3JlYXRlIG1iaS1nZW4gaXJxZG9tYWluDQpbICAgIDEuMjU2NDE5XSBI aXNpbGljb24gTUJJR0VOLVYyIEhJU0kwMTUyOjJmOiBGYWlsZWQgdG8gY3JlYXRlIG1iaS1nZW4g aXJxZG9tYWluDQpbICAgIDEuMjU2NDc5XSBIaXNpbGljb24gTUJJR0VOLVYyIEhJU0kwMTUyOjMy OiBGYWlsZWQgdG8gY3JlYXRlIG1iaS1nZW4gaXJxZG9tYWluDQpbICAgIDEuMjU2NTQwXSBIaXNp bGljb24gTUJJR0VOLVYyIEhJU0kwMTUyOjMzOiBGYWlsZWQgdG8gY3JlYXRlIG1iaS1nZW4gaXJx ZG9tYWluDQpbICAgIDEuMjU2NjAwXSBIaXNpbGljb24gTUJJR0VOLVYyIEhJU0kwMTUyOjM0OiBG YWlsZWQgdG8gY3JlYXRlIG1iaS1nZW4gaXJxZG9tYWluDQpbICAgIDEuMjU2Njg1XSBIaXNpbGlj b24gTUJJR0VOLVYyIEhJU0kwMTUyOjM1OiBGYWlsZWQgdG8gY3JlYXRlIG1iaS1nZW4gaXJxZG9t YWluDQpbICAgIDEuMjU2NzU2XSBIaXNpbGljb24gTUJJR0VOLVYyIEhJU0kwMTUyOjM2OiBGYWls ZWQgdG8gY3JlYXRlIG1iaS1nZW4gaXJxZG9tYWluDQpbICAgIDEuMjU2ODI1XSBIaXNpbGljb24g TUJJR0VOLVYyIEhJU0kwMTUyOjM3OiBGYWlsZWQgdG8gY3JlYXRlIG1iaS1nZW4gaXJxZG9tYWlu DQpbICAgIDEuMjU2ODkzXSBIaXNpbGljb24gTUJJR0VOLVYyIEhJU0kwMTUyOjM4OiBGYWlsZWQg dG8gY3JlYXRlIG1iaS1nZW4gaXJxZG9tYWluDQpbICAgIDEuMjU5MTA4XSBBQ1BJOiBJT1JUOiBb RmlybXdhcmUgQnVnXTogW21hcCAoX19fX3B0cnZhbF9fX18pXSBjb25mbGljdGluZyBtYXBwaW5n IGZvciBpbnB1dCBJRCAweDdjMDANClsgICAgMS4yNTkxMThdIEFDUEk6IElPUlQ6IFtGaXJtd2Fy ZSBCdWddOiBhcHBseWluZyB3b3JrYXJvdW5kLg0KWyAgICAxLjI1OTE2Nl0gQUNQSTogSU9SVDog W0Zpcm13YXJlIEJ1Z106IFttYXAgKF9fX19wdHJ2YWxfX19fKV0gY29uZmxpY3RpbmcgbWFwcGlu ZyBmb3IgaW5wdXQgSUQgMHhiYzAwDQpbICAgIDEuMjU5MTg4XSBBQ1BJOiBJT1JUOiBbRmlybXdh cmUgQnVnXTogYXBwbHlpbmcgd29ya2Fyb3VuZC4NClsgICAgMS4yNTkzMTNdIEFDUEk6IElPUlQ6 IFtGaXJtd2FyZSBCdWddOiBbbWFwIChfX19fcHRydmFsX19fXyldIGNvbmZsaWN0aW5nIG1hcHBp bmcgZm9yIGlucHV0IElEIDB4N2MwMA0KWyAgICAxLjI1OTMyMF0gQUNQSTogSU9SVDogW0Zpcm13 YXJlIEJ1Z106IGFwcGx5aW5nIHdvcmthcm91bmQuDQpbICAgIDEuMjU5MzUwXSBBQ1BJOiBJT1JU OiBbRmlybXdhcmUgQnVnXTogW21hcCAoX19fX3B0cnZhbF9fX18pXSBjb25mbGljdGluZyBtYXBw aW5nIGZvciBpbnB1dCBJRCAweGJjMDANClsgICAgMS4yNTkzNTddIEFDUEk6IElPUlQ6IFtGaXJt d2FyZSBCdWddOiBhcHBseWluZyB3b3JrYXJvdW5kLg0KWyAgICAxLjM0NTg5NV0gaW50ZWdyaXR5 OiBDb3VsZG4ndCBnZXQgc2l6ZTogMHg4MDAwMDAwMDAwMDAwMDAzDQpbICAgIDEuMzQ1OTAzXSBp bnRlZ3JpdHk6IE1PRFNJR046IENvdWxkbid0IGdldCBVRUZJIGRiIGxpc3QNClsgICAgMS4zNDU5 MDldIGludGVncml0eTogQ291bGRuJ3QgZ2V0IHNpemU6IDB4ODAwMDAwMDAwMDAwMDAwMw0KWyAg ICAxLjM1NDM3NF0gQUNQSTogSU9SVDogW0Zpcm13YXJlIEJ1Z106IFttYXAgKF9fX19wdHJ2YWxf X19fKV0gY29uZmxpY3RpbmcgbWFwcGluZyBmb3IgaW5wdXQgSUQgMHg3YzAwDQpbICAgIDEuMzU0 Mzg2XSBBQ1BJOiBJT1JUOiBbRmlybXdhcmUgQnVnXTogYXBwbHlpbmcgd29ya2Fyb3VuZC4NClsg ICAgMS4zNjAzODJdIEFDUEk6IElPUlQ6IFtGaXJtd2FyZSBCdWddOiBbbWFwIChfX19fcHRydmFs X19fXyldIGNvbmZsaWN0aW5nIG1hcHBpbmcgZm9yIGlucHV0IElEIDB4YmMwMA0KWyAgICAxLjM2 MDM5M10gQUNQSTogSU9SVDogW0Zpcm13YXJlIEJ1Z106IGFwcGx5aW5nIHdvcmthcm91bmQuDQpb ICAgIDEuODc4NzQzXSBobnMzIDAwMDA6N2Q6MDAuMDogZmFpbGVkIHRvIHF1ZXJ5IHZlcnNpb24g YW5kIGNhcGFiaWxpdGllcywgcmV0ID0gLTUyDQpbICAgIDEuODkxMTQxXSB7MX1bSGFyZHdhcmUg RXJyb3JdOiBIYXJkd2FyZSBlcnJvciBmcm9tIEFQRUkgR2VuZXJpYyBIYXJkd2FyZSBFcnJvciBT b3VyY2U6IDMNClsgICAgMS44OTExNjRdIHsxfVtIYXJkd2FyZSBFcnJvcl06IGV2ZW50IHNldmVy aXR5OiByZWNvdmVyYWJsZQ0KWyAgICAxLjg5MTE3MF0gezF9W0hhcmR3YXJlIEVycm9yXTogIEVy cm9yIDAsIHR5cGU6IHJlY292ZXJhYmxlDQpbICAgIDEuODkxMTc1XSB7MX1bSGFyZHdhcmUgRXJy b3JdOiAgIHNlY3Rpb25fdHlwZTogUENJZSBlcnJvcg0KWyAgICAxLjg5MTE4MF0gezF9W0hhcmR3 YXJlIEVycm9yXTogICB2ZXJzaW9uOiA0LjANClsgICAgMS44OTExODRdIHsxfVtIYXJkd2FyZSBF cnJvcl06ICAgY29tbWFuZDogMHgwMDA2LCBzdGF0dXM6IDB4MDAxMA0KWyAgICAxLjg5MTE4OV0g ezF9W0hhcmR3YXJlIEVycm9yXTogICBkZXZpY2VfaWQ6IDAwMDA6N2Q6MDAuMw0KWyAgICAxLjg5 MTE5M10gezF9W0hhcmR3YXJlIEVycm9yXTogICBzbG90OiAwDQpbICAgIDEuODkxMTk3XSB7MX1b SGFyZHdhcmUgRXJyb3JdOiAgIHNlY29uZGFyeV9idXM6IDB4MDANClsgICAgMS44OTEyMDFdIHsx fVtIYXJkd2FyZSBFcnJvcl06ICAgdmVuZG9yX2lkOiAweDE5ZTUsIGRldmljZV9pZDogMHhhMjIx DQpbICAgIDEuODkxMjA2XSB7MX1bSGFyZHdhcmUgRXJyb3JdOiAgIGNsYXNzX2NvZGU6IDAyMDAw MA0KWyAgICAxLjg5MTIyMV0gezJ9W0hhcmR3YXJlIEVycm9yXTogSGFyZHdhcmUgZXJyb3IgZnJv bSBBUEVJIEdlbmVyaWMgSGFyZHdhcmUgRXJyb3IgU291cmNlOiAyDQpbICAgIDEuODkxMjI3XSB7 Mn1bSGFyZHdhcmUgRXJyb3JdOiBldmVudCBzZXZlcml0eTogcmVjb3ZlcmFibGUNClsgICAgMS44 OTEyMzJdIHsyfVtIYXJkd2FyZSBFcnJvcl06ICBFcnJvciAwLCB0eXBlOiByZWNvdmVyYWJsZQ0K WyAgICAxLjg5MTIzN10gezJ9W0hhcmR3YXJlIEVycm9yXTogICBzZWN0aW9uX3R5cGU6IFBDSWUg ZXJyb3INClsgICAgMS44OTEyNDFdIHsyfVtIYXJkd2FyZSBFcnJvcl06ICAgdmVyc2lvbjogNC4w DQpbICAgIDEuODkxMjQ1XSB7Mn1bSGFyZHdhcmUgRXJyb3JdOiAgIGNvbW1hbmQ6IDB4MDAwNiwg c3RhdHVzOiAweDAwMTANClsgICAgMS44OTEyNTBdIHsyfVtIYXJkd2FyZSBFcnJvcl06ICAgZGV2 aWNlX2lkOiAwMDAwOjdkOjAwLjINClsgICAgMS44OTEyNTVdIHsyfVtIYXJkd2FyZSBFcnJvcl06 ICAgc2xvdDogMA0KWyAgICAxLjg5MTI1OF0gezJ9W0hhcmR3YXJlIEVycm9yXTogICBzZWNvbmRh cnlfYnVzOiAweDAwDQpbICAgIDEuODkxMjYzXSB7Mn1bSGFyZHdhcmUgRXJyb3JdOiAgIHZlbmRv cl9pZDogMHgxOWU1LCBkZXZpY2VfaWQ6IDB4YTIyMg0KWyAgICAxLjg5MTI2N10gezJ9W0hhcmR3 YXJlIEVycm9yXTogICBjbGFzc19jb2RlOiAwMjAwMDANClsgICAgMS44OTEzMjJdIHBjaSAwMDAw OjdkOjAwLjM6IEFFUjogYWVyX3N0YXR1czogMHgwMDQwMDAwMCwgYWVyX21hc2s6IDB4MDAwMDAw MDANClsgICAgMS44OTEzMjldIHBjaSAwMDAwOjdkOjAwLjM6ICAgIFsyMl0gVW5jb3JySW50RXJy ICAgICAgICAgIA0KWyAgICAxLjg5MTMzNV0gcGNpIDAwMDA6N2Q6MDAuMzogQUVSOiBhZXJfbGF5 ZXI9VHJhbnNhY3Rpb24gTGF5ZXIsIGFlcl9hZ2VudD1SZWNlaXZlciBJRA0KWyAgICAxLjg5MTM0 MV0gcGNpIDAwMDA6N2Q6MDAuMzogQUVSOiBhZXJfdW5jb3Jfc2V2ZXJpdHk6IDB4MDAwMDAwMDAN ClsgICAgMS45NDU2ODldIG9oY2ktcGNpIDAwMDA6N2E6MDAuMDogT0hDSSBVbnJlY292ZXJhYmxl IEVycm9yLCBkaXNhYmxlZA0KWyAgICAxLjk0NTcwMl0gb2hjaS1wY2kgMDAwMDo3YTowMC4wOiBI QyBkaWVkOyBjbGVhbmluZyB1cA0KWyAgICAyLjUyMzQ1NF0gaXJxIDI4OiBub2JvZHkgY2FyZWQg KHRyeSBib290aW5nIHdpdGggdGhlICJpcnFwb2xsIiBvcHRpb24pDQpbICAgIDIuNTIzNTQ0XSBo YW5kbGVyczoNClsgICAgMi41MjM1NDldIFs8KF9fX19wdHJ2YWxfX19fKT5dIHBjaWVfcG1lX2ly cQ0KWyAgICAyLjUyMzU1NV0gWzwoX19fX3B0cnZhbF9fX18pPl0gYWVyX2lycSB0aHJlYWRlZCBb PChfX19fcHRydmFsX19fXyk+XSBhZXJfaXNyDQpbICAgIDIuNTIzNTg2XSBbPChfX19fcHRydmFs X19fXyk+XSBwY2llX3BtZV9pcnENClsgICAgMi41MjM1OTFdIFs8KF9fX19wdHJ2YWxfX19fKT5d IGFlcl9pcnEgdGhyZWFkZWQgWzwoX19fX3B0cnZhbF9fX18pPl0gYWVyX2lzcg0KWyAgICAyLjUy MzU5OV0gWzwoX19fX3B0cnZhbF9fX18pPl0gcGNpZV9wbWVfaXJxDQpbICAgIDIuNTIzNjA0XSBb PChfX19fcHRydmFsX19fXyk+XSBhZXJfaXJxIHRocmVhZGVkIFs8KF9fX19wdHJ2YWxfX19fKT5d IGFlcl9pc3INClsgICAgMi41MjM2MTJdIFs8KF9fX19wdHJ2YWxfX19fKT5dIHBjaWVfcG1lX2ly cQ0KWyAgICAyLjUyMzYxN10gWzwoX19fX3B0cnZhbF9fX18pPl0gYWVyX2lycSB0aHJlYWRlZCBb PChfX19fcHRydmFsX19fXyk+XSBhZXJfaXNyDQpbICAgIDIuNTIzNjI1XSBbPChfX19fcHRydmFs X19fXyk+XSBwY2llX3BtZV9pcnENClsgICAgMi41MjM2MzBdIFs8KF9fX19wdHJ2YWxfX19fKT5d IGFlcl9pcnEgdGhyZWFkZWQgWzwoX19fX3B0cnZhbF9fX18pPl0gYWVyX2lzcg0KWyAgICAyLjUy MzYzOF0gWzwoX19fX3B0cnZhbF9fX18pPl0gcGNpZV9wbWVfaXJxDQpbICAgIDIuNTIzNjQzXSBb PChfX19fcHRydmFsX19fXyk+XSBhZXJfaXJxIHRocmVhZGVkIFs8KF9fX19wdHJ2YWxfX19fKT5d IGFlcl9pc3INClsgICAgMi41MjM2NTFdIFs8KF9fX19wdHJ2YWxfX19fKT5dIHBjaWVfcG1lX2ly cQ0KWyAgICAyLjUyMzY1Nl0gWzwoX19fX3B0cnZhbF9fX18pPl0gYWVyX2lycSB0aHJlYWRlZCBb PChfX19fcHRydmFsX19fXyk+XSBhZXJfaXNyDQpbICAgIDIuNTIzNjY0XSBbPChfX19fcHRydmFs X19fXyk+XSBwY2llX3BtZV9pcnENClsgICAgMi41MjM2NjldIFs8KF9fX19wdHJ2YWxfX19fKT5d IGFlcl9pcnEgdGhyZWFkZWQgWzwoX19fX3B0cnZhbF9fX18pPl0gYWVyX2lzcg0KWyAgICAyLjUy MzY3N10gWzwoX19fX3B0cnZhbF9fX18pPl0gcGNpZV9wbWVfaXJxDQpbICAgIDIuNTIzNjgyXSBb PChfX19fcHRydmFsX19fXyk+XSBhZXJfaXJxIHRocmVhZGVkIFs8KF9fX19wdHJ2YWxfX19fKT5d IGFlcl9pc3INClsgICAgMi41MjM2OTBdIFs8KF9fX19wdHJ2YWxfX19fKT5dIHBjaWVfcG1lX2ly cQ0KWyAgICAyLjUyMzY5NV0gWzwoX19fX3B0cnZhbF9fX18pPl0gYWVyX2lycSB0aHJlYWRlZCBb PChfX19fcHRydmFsX19fXyk+XSBhZXJfaXNyDQpbICAgIDIuNTIzNzA2XSBbPChfX19fcHRydmFs X19fXyk+XSB1c2JfaGNkX2lycSBbdXNiY29yZV0NClsgICAgMi41MjM3MTNdIFs8KF9fX19wdHJ2 YWxfX19fKT5dIHVzYl9oY2RfaXJxIFt1c2Jjb3JlXQ0KWyAgICAyLjUyMzcyMF0gWzwoX19fX3B0 cnZhbF9fX18pPl0gdXNiX2hjZF9pcnEgW3VzYmNvcmVdDQpbICAgIDIuNTIzNzI2XSBbPChfX19f cHRydmFsX19fXyk+XSBhaGNpX3NpbmdsZV9sZXZlbF9pcnFfaW50ciBbbGliYWhjaV0NClsgICAg Mi41MjM3MzVdIFs8KF9fX19wdHJ2YWxfX19fKT5dIHVzYl9oY2RfaXJxIFt1c2Jjb3JlXQ0KWyAg ICAyLjUyMzc0MV0gWzwoX19fX3B0cnZhbF9fX18pPl0gYWhjaV9zaW5nbGVfbGV2ZWxfaXJxX2lu dHIgW2xpYmFoY2ldDQpbICAgIDIuNTIzNzQ5XSBbPChfX19fcHRydmFsX19fXyk+XSB1c2JfaGNk X2lycSBbdXNiY29yZV0NClsgICAgMi41MjM3NTRdIERpc2FibGluZyBJUlEgIzI4DQpbICAgIDIu NTI1ODQ1XSBobnMzIDAwMDA6N2Q6MDAuMDogaW5pdCBhZV9kZXYgZXJyb3IsIHJldCA9IC01Mg0K WyAgIDIzLjgyNDYzM10gcmN1OiBJTkZPOiByY3Vfc2NoZWQgc2VsZi1kZXRlY3RlZCBzdGFsbCBv biBDUFUNClsgICAyMy44MjQ2OTNdIHJjdTogCTAtLi4uLjogKDUyNTAgdGlja3MgdGhpcyBHUCkg aWRsZT04ZWEvMS8weDQwMDAwMDAwMDAwMDAwMDIgc29mdGlycT0xNTMvMTUzIGZxcz0yNjI1IA0K WyAgIDQ4LjAyMDYzNV0gd2F0Y2hkb2c6IEJVRzogc29mdCBsb2NrdXAgLSBDUFUjMCBzdHVjayBm b3IgMjJzISBba3dvcmtlci8wOjY6NzEzXQ0KWyAgIDYyLjY2NTAzOF0gbHBmYyAwMDAwOjAxOjAw LjA6IDA6MzAyNiBNYWlsYm94IGZhaWxlZCAsIG1ieENtZCB4OWIgR0VUX0ZVTkNUSU9OX0NPTkZJ RywgbWJ4U3RhdHVzIHgwDQpbICAgNjIuNjY1MzU3XSBvaGNpLXBjaSAwMDAwOjdhOjAwLjA6IGlu aXQgMDAwMDo3YTowMC4wIGZhaWwsIC0xMDgNClsgICA2Mi42NjU2ODRdIFVuYWJsZSB0byBoYW5k bGUga2VybmVsIE5VTEwgcG9pbnRlciBkZXJlZmVyZW5jZSBhdCB2aXJ0dWFsIGFkZHJlc3MgMDAw MDAwMDAwMDAwMDBjMA0KWyAgIDYyLjY2NTY5M10gTWVtIGFib3J0IGluZm86DQpbICAgNjIuNjY1 NzAxXSAgIEVTUiA9IDB4OTYwMDAwMDQNClsgICA2Mi42NjU3MDVdICAgRUMgPSAweDI1OiBEQUJU IChjdXJyZW50IEVMKSwgSUwgPSAzMiBiaXRzDQpbICAgNjIuNjY1NzEwXSAgIFNFVCA9IDAsIEZu ViA9IDANClsgICA2Mi42NjU3MTRdICAgRUEgPSAwLCBTMVBUVyA9IDANClsgICA2Mi42NjU3MTdd IERhdGEgYWJvcnQgaW5mbzoNClsgICA2Mi42NjU3MjBdICAgSVNWID0gMCwgSVNTID0gMHgwMDAw MDAwNA0KWyAgIDYyLjY2NTcyNF0gICBDTSA9IDAsIFduUiA9IDANClsgICA2Mi42NjU3MjhdIFsw MDAwMDAwMDAwMDAwMGMwXSB1c2VyIGFkZHJlc3MgYnV0IGFjdGl2ZV9tbSBpcyBzd2FwcGVyDQpb ICAgNjIuNjY1NzM2XSBJbnRlcm5hbCBlcnJvcjogT29wczogOTYwMDAwMDQgWyMxXSBTTVANClsg ICA2Mi42NjU3NDJdIE1vZHVsZXMgbGlua2VkIGluOiBscGZjKCspIG9oY2lfcGNpKCspIG52bWV0 X2ZjIG52bWV0IG52bWVfZmMgbnZtZV9mYWJyaWNzIGhpc2lfc2FzX3YzX2h3KCspIG52bWVfY29y ZSBoaXNpX3Nhc19tYWluIGxpYnNhcyBobnMzKCspIGFoY2kgeGhjaV9wY2kgdDEwX3BpIG1seDVf Y29yZSgrKSBsaWJhaGNpIHNjc2lfdHJhbnNwb3J0X3NhcyBjcmNfdDEwZGlmIHhoY2lfaGNkIGhj bGdlIG9oY2lfaGNkIGVoY2lfcGNpIGNyY3QxMGRpZl9nZW5lcmljIGVoY2lfaGNkIGhuYWUzIGNy Y3QxMGRpZl9jZSBtZGlvX2RldnJlcyBsaWJhdGEgbWVnYXJhaWRfc2FzKCspIG9mX21kaW8gc2Nz aV90cmFuc3BvcnRfZmMgdXNiY29yZSBmaXhlZF9waHkgbGlicGh5IHNjc2lfbW9kIG1seGZ3IHVz Yl9jb21tb24gcHRwIGNvbmZpZ2ZzIHBwc19jb3JlIGNyY3QxMGRpZl9jb21tb24gaTJjX2Rlc2ln bndhcmVfcGxhdGZvcm0gaTJjX2Rlc2lnbndhcmVfY29yZQ0KWyAgIDYyLjY2NTgxNl0gQ1BVOiAw IFBJRDogNzA5IENvbW06IGt3b3JrZXIvMDo1IFRhaW50ZWQ6IEcgICAgICAgICAgICAgTCAgICA1 LjEwLjAtMjMtYXJtNjQgIzEgRGViaWFuIDUuMTAuMTc5LTENClsgICA2Mi42NjU4MzZdIFdvcmtx dWV1ZTogZXZlbnRzIGhjZF9kaWVkX3dvcmsgW3VzYmNvcmVdDQpbICAgNjIuNjY1ODQzXSBwc3Rh dGU6IDIwYzAwMDA1IChuekN2IGRhaWYgK1BBTiArVUFPIC1UQ08gQlRZUEU9LS0pDQpbICAgNjIu NjY1ODUxXSBwYyA6IGtvYmplY3RfdWV2ZW50X2VudisweDU0LzB4NmIwDQpbICAgNjIuNjY1ODU4 XSBsciA6IGhjZF9kaWVkX3dvcmsrMHgyYy8weDQwIFt1c2Jjb3JlXQ0KWyAgIDYyLjY2NTg2M10g c3AgOiBmZmZmODAwMDFiMTdiZDEwDQpbICAgNjIuNjY1ODY2XSB4Mjk6IGZmZmY4MDAwMWIxN2Jk MTAgeDI4OiAwMDAwMDAwMDAwMDAwMDAwIA0KWyAgIDYyLjY2NTg3Ml0geDI3OiBmZmZmMDA4MDQ3 ZGI3ZmM4IHgyNjogZmZmZjAwNmZiZmNlZmM0MCANClsgICA2Mi42NjU4NzhdIHgyNTogMDAwMDAw MDAwMDAwMDAwMCB4MjQ6IGZmZmYwMDQxMGIzZTQ5MTggDQpbICAgNjIuNjY1ODgzXSB4MjM6IGZm ZmY4MDAwMDhkMGEyNTggeDIyOiBmZmZmODAwMDEwYzBkMDkwIA0KWyAgIDYyLjY2NTg4OV0geDIx OiAwMDAwMDAwMDAwMDAwMDA1IHgyMDogMDAwMDAwMDAwMDAwMDBhMCANClsgICA2Mi42NjU4OTRd IHgxOTogZmZmZjAwNDEwYjNlNDkxMCB4MTg6IDAwMDAwMDAwMDAwMDAwMDAgDQpbICAgNjIuNjY1 ODk5XSB4MTc6IDAwMDAwMDAwZjMyMjY2ZmMgeDE2OiAwMDAwMDAwMGRlYWRiZWVmIA0KWyAgIDYy LjY2NTkwNF0geDE1OiAwMDAwMDAwMDAwMDAwMDA0IHgxNDogZmZmZjAwODA0MDAwNDYxMCANClsg ICA2Mi42NjU5MTBdIHgxMzogMDAwMDAwMDAwMDAwMDAwMCB4MTI6IGZmZmYwMDQxMDA0M2JjYjgg DQpbICAgNjIuNjY1OTE1XSB4MTE6IGZmZmYwMDQxMDA0M2JiNTAgeDEwOiAwMDAwMDAwMDAwMDAw YjAwIA0KWyAgIDYyLjY2NTkyMF0geDkgOiBmZmZmODAwMDEwMGI2ZTMwIHg4IDogZmVmZWZlZmVm ZWZlZmVmZiANClsgICA2Mi42NjU5MjVdIHg3IDogMDAwMDAwMDAwMDAwMDAxOCB4NiA6IGZmZmYw MDQxMTQ4Njk1NmMgDQpbICAgNjIuNjY1OTMxXSB4NSA6IDAwMDA3Mzc0NmU2NTc2NjUgeDQgOiAw MDAwMDAwMDAwMDAwMGEwIA0KWyAgIDYyLjY2NTkzNl0geDMgOiBkZWFkMDAwMDAwMDAwMTIyIHgy IDogZmZmZjgwMDAwOGQwYTI1OCANClsgICA2Mi42NjU5NDFdIHgxIDogMDAwMDAwMDAwMDAwMDAw NSB4MCA6IGZmZmY4MDAwMTBkYTc5MzggDQpbICAgNjIuNjY1OTQ3XSBDYWxsIHRyYWNlOg0KWyAg IDYyLjY2NTk1MV0gIGtvYmplY3RfdWV2ZW50X2VudisweDU0LzB4NmIwDQpbICAgNjIuNjY1OTU3 XSAgaGNkX2RpZWRfd29yaysweDJjLzB4NDAgW3VzYmNvcmVdDQpbICAgNjIuNjY1OTYzXSAgcHJv Y2Vzc19vbmVfd29yaysweDFkMC8weDRkMA0KWyAgIDYyLjY2NTk2OF0gIHdvcmtlcl90aHJlYWQr MHgxODAvMHg1NDANClsgICA2Mi42NjU5NzJdICBrdGhyZWFkKzB4MTJjLzB4MTMwDQpbICAgNjIu NjY1OTc3XSAgcmV0X2Zyb21fZm9yaysweDEwLzB4MzQNClsgICA2Mi42NjU5ODJdIENvZGU6IGFh MTQwM2U0IDE0MDAwMDAzIGY5NDAwYzg0IGI0MDAyYTI0IChmOTQwMTA5MykgDQpbICAgNjIuNjY1 OTg5XSAtLS1bIGVuZCB0cmFjZSA1ODYyNzY3NDBhM2M1ZWMwIF0tLS0NClsgICA2Mi42NjYwNDJd IGxwZmMgMDAwMDowMTowMC4wOiAwOjE0MTIgRmFpbGVkIHRvIHNldCB1cCBkcml2ZXIgcmVzb3Vy Y2UuDQpbICAgNjIuNjY2MTgyXSBvaGNpLXBjaSAwMDAwOmJhOjAwLjA6IE9IQ0kgUENJIGhvc3Qg Y29udHJvbGxlcg0KWyAgIDYyLjY2NjIwMV0gb2hjaS1wY2kgMDAwMDpiYTowMC4wOiBuZXcgVVNC IGJ1cyByZWdpc3RlcmVkLCBhc3NpZ25lZCBidXMgbnVtYmVyIDcNClsgICA2Mi42NjYyMTFdIGxw ZmM6IHByb2JlIG9mIDAwMDA6MDE6MDAuMCBmYWlsZWQgd2l0aCBlcnJvciAtMTINClsgICA2Mi42 NjYyNTVdIG9oY2ktcGNpIDAwMDA6YmE6MDAuMDogaXJxIDI4LCBpbyBtZW0gMHgyMDAyMGMxMDAw MDANClsgICA2Mi42NjYyODNdIGxwZmMgMDAwMDowMTowMC4xOiBBZGRpbmcgdG8gaW9tbXUgZ3Jv dXAgMjcNClsgICA2Mi42Njc2OTVdIGhpc2lfc2FzX3YzX2h3OiBwcm9iZSBvZiAwMDAwOjc0OjAy LjAgZmFpbGVkIHdpdGggZXJyb3IgLTINClsgICA2Mi42Njc3NzZdIGhpc2lfc2FzX3YzX2h3IDAw MDA6NzQ6MDQuMDogQWRkaW5nIHRvIGlvbW11IGdyb3VwIDMyDQpbICAgNjIuNzI1NzA1XSBvaGNp LXBjaSAwMDAwOmJhOjAwLjA6IE9IQ0kgVW5yZWNvdmVyYWJsZSBFcnJvciwgZGlzYWJsZWQNClsg ICA2Mi43MjU3MTRdIG9oY2ktcGNpIDAwMDA6YmE6MDAuMDogSEMgZGllZDsgY2xlYW5pbmcgdXAN ClsgICA2Mi43Mjg3NTBdIG9oY2ktcGNpIDAwMDA6YmE6MDAuMDogVVNCIGJ1cyA3IGRlcmVnaXN0 ZXJlZA0KWyAgIDYyLjcyODc3MV0gb2hjaS1wY2kgMDAwMDpiYTowMC4wOiBpbml0IDAwMDA6YmE6 MDAuMCBmYWlsLCAtMTA4DQpbICAgNjIuNzI4ODE5XSBvaGNpLXBjaTogcHJvYmUgb2YgMDAwMDpi YTowMC4wIGZhaWxlZCB3aXRoIGVycm9yIC0xMDgNClsgICA2Mi44ODg2NTJdIG1seDVfY29yZSAw MDAwOjAyOjAwLjA6IHdhaXRfZnVuYzoxMDY4OihwaWQgMTUpOiBFTkFCTEVfSENBKDB4MTA0KSB0 aW1lb3V0LiBXaWxsIGNhdXNlIGEgbGVhayBvZiBhIGNvbW1hbmQgcmVzb3VyY2UNClsgICA2Mi44 ODg2NjhdIG1seDVfY29yZSAwMDAwOjAyOjAwLjA6IG1seDVfZnVuY3Rpb25fc2V0dXA6OTg1Oihw aWQgMTUpOiBlbmFibGUgaGNhIGZhaWxlZA0KWyAgIDYyLjkwNjg3N10gbWx4NV9jb3JlIDAwMDA6 MDI6MDAuMDogaW5pdF9vbmU6MTM3MzoocGlkIDE1KTogbWx4NV9sb2FkX29uZSBmYWlsZWQgd2l0 aCBlcnJvciBjb2RlIC0xMTANClsgICA2Mi45MDcwOTRdIG1seDVfY29yZTogcHJvYmUgb2YgMDAw MDowMjowMC4wIGZhaWxlZCB3aXRoIGVycm9yIC0xMTANClsgICA2Mi45MDcxODVdIG1seDVfY29y ZSAwMDAwOjAyOjAwLjE6IEFkZGluZyB0byBpb21tdSBncm91cCAzMw0KWyAgIDY5LjU1MjY0NV0g bWVnYXJhaWRfc2FzIDAwMDA6MDM6MDAuMDogSW5pdCBjbWQgcmV0dXJuIHN0YXR1cyBGQUlMRUQg Zm9yIFNDU0kgaG9zdCAwDQpbICAgODQuMjI4NjQwXSBtZWdhcmFpZF9zYXMgMDAwMDowMzowMC4w OiBXYWl0aW5nIGZvciBGVyB0byBjb21lIHRvIHJlYWR5IHN0YXRlDQoNCg0KDQpHYXZlIHVwIHdh aXRpbmcgZm9yIHN1c3BlbmQvcmVzdW1lIGRldmljZQ0KR2F2ZSB1cCB3YWl0aW5nIGZvciByb290 IGZpbGUgc3lzdGVtIGRldmljZS4gIENvbW1vbiBwcm9ibGVtczoNCiAtIEJvb3QgYXJncyAoY2F0 IC9wcm9jL2NtZGxpbmUpDQogICAtIENoZWNrIHJvb3RkZWxheT0gKGRpZCB0aGUgc3lzdGVtIHdh aXQgbG9uZyBlbm91Z2g/KQ0KIC0gTWlzc2luZyBtb2R1bGVzIChjYXQgL3Byb2MvbW9kdWxlczsg bHMgL2RldikNCkFMRVJUISAgVVVJRD01ZWJjMjNhZi1jMmUyLTRhYzMtYjMwOC0zZTgyZWM3ODZj MDQgZG9lcyBub3QgZXhpc3QuICBEcm9wcGluZyB0byBhIHNoZWxsIQ0KDQoNCkJ1c3lCb3ggdjEu MzAuMSAoRGViaWFuIDE6MS4zMC4xLTYrYjMpIGJ1aWx0LWluIHNoZWxsIChhc2gpDQpFbnRlciAn aGVscCcgZm9yIGEgbGlzdCBvZiBidWlsdC1pbiBjb21tYW5kcy4NCg0KKGluaXRyYW1mcykgDQoo aW5pdHJhbWZzKSANCihpbml0cmFtZnMpIA0KKGluaXRyYW1mcykgDQooaW5pdHJhbWZzKSBscw0K YmluICAgICAgZGV2ICAgICAgaW5pdCAgICAgcHJvYyAgICAgcnVuICAgICAgc2NyaXB0cyAgdG1w ICAgICAgdmFyDQpjb25mICAgICBldGMgICAgICBsaWIgICAgICByb290ICAgICBzYmluICAgICBz eXMgICAgICB1c3INCihpbml0cmFtZnMpIFsgIDE5MS42Njg2MzddIG1lZ2FyYWlkX3NhcyAwMDAw OjAzOjAwLjA6IEZXIG5vdyBpbiBSZWFkeSBzdGF0ZQ0KWyAgMTkxLjY2ODY2Nl0gbWVnYXJhaWRf c2FzIDAwMDA6MDM6MDAuMDogUGVyZm9ybWFuY2UgbW9kZSA6TGF0ZW5jeQ0KWyAgMTkxLjY2ODY3 Ml0gbWVnYXJhaWRfc2FzIDAwMDA6MDM6MDAuMDogRlcgc3VwcG9ydHMgc3luYyBjYWNoZQk6IFll cw0KWyAgMTkxLjY2ODY4MV0gbWVnYXJhaWRfc2FzIDAwMDA6MDM6MDAuMDogbWVnYXNhc19kaXNh YmxlX2ludHJfZnVzaW9uIGlzIGNhbGxlZCBvdXRib3VuZF9pbnRyX21hc2s6MHg0MDAwMDAwOQ0K DQooaW5pdHJhbWZzKSANCihpbml0cmFtZnMpIA0KKGluaXRyYW1mcykgbHMgL3N5cy9jbGFzcy9i bG9jay8NCihpbml0cmFtZnMpIFsgIDIwNS42OTY2NDZdIG1lZ2FyYWlkX3NhcyAwMDAwOjAzOjAw LjA6IEluaXQgY21kIHJldHVybiBzdGF0dXMgRkFJTEVEIGZvciBTQ1NJIGhvc3QgMA0KWyAgMjA1 Ljc3NjQxNF0gbWVnYXJhaWRfc2FzIDAwMDA6MDM6MDAuMDogRmFpbGVkIGZyb20gbWVnYXNhc19p bml0X2Z3IDY0NjcNCg== --000000000000514e2605fe32169e-- From xen-devel-bounces@lists.xenproject.org Thu Jun 15 23:26:43 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 15 Jun 2023 23:26:43 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549946.858775 (Exim 4.92) (envelope-from ) id 1q9wMF-0004WM-F7; Thu, 15 Jun 2023 23:26:27 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549946.858775; Thu, 15 Jun 2023 23:26:27 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9wMF-0004WF-An; Thu, 15 Jun 2023 23:26:27 +0000 Received: by outflank-mailman (input) for mailman id 549946; Thu, 15 Jun 2023 23:26:26 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9wME-0004W9-PB for xen-devel@lists.xenproject.org; Thu, 15 Jun 2023 23:26:26 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 09cdacf9-0bd4-11ee-8611-37d641c3527e; Fri, 16 Jun 2023 01:26:23 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 8D21161507; Thu, 15 Jun 2023 23:26:21 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 951A3C433C8; Thu, 15 Jun 2023 23:26:19 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 09cdacf9-0bd4-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1686871580; bh=6f4Yp4TNdxplNvT5S26a9uVV+H4+sAV1aCvrAP+5/7k=; h=Date:From:To:cc:Subject:In-Reply-To:References:From; b=AWNh7dG+Tgd9ylFviyvsZimbS2gSY2olBJ49nQjr+ljat3thn5Vug0WY407VhKoAP sMAc+f4j7qBVTL5h5IyhfZuiXQvTq85Hc3/cI9lWCcOgO28FbvzWI/hnG7AsPPhxJN rwLTsz4MkhKyjiLsMQvrEZ8ff9KbnLXVpwv42MLt3HGXpgOlxC+/CHFA95jj/eChnT yx/jVkKpMhvPdHl/mVgVfToNwgfRQhVUofKR9ahiIaETZhJqrzRfBHghtg7iJWSkOm 1k/JteYyfpdLIWbBDmlHyxB1LP0+Bbn4fDPp1rjY/hu7RpR5GnMCQhXuq4d5GYELod 9SNMcn13u9aUA== Date: Thu, 15 Jun 2023 16:26:18 -0700 (PDT) From: Stefano Stabellini X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop To: Roberto Bagnara cc: xen-devel@lists.xenproject.org, consulting@bugseng.com, Andrew Cooper , George Dunlap , Jan Beulich , Julien Grall , Stefano Stabellini , Wei Liu Subject: Re: [XEN PATCH] docs/misra: document the C dialect and translation toolchain assumptions. In-Reply-To: Message-ID: References: User-Agent: Alpine 2.22 (DEB 394 2020-01-19) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII On Thu, 15 Jun 2023, Roberto Bagnara wrote: > This document specifies the C language dialect used by Xen and > the assumptions Xen makes on the translation toolchain. > > Signed-off-by: Roberto Bagnara Thanks Roberto for the amazing work of research and archaeology. I have a few comments below, mostly to clarify the description of some of the less documented GCC extensions, for the purpose of having all community members be able to understand what they can and cannot use. > --- > docs/misra/C-language-toolchain.rst | 465 ++++++++++++++++++++++++++++ > 1 file changed, 465 insertions(+) > create mode 100644 docs/misra/C-language-toolchain.rst > > diff --git a/docs/misra/C-language-toolchain.rst b/docs/misra/C-language-toolchain.rst > new file mode 100644 > index 0000000000..013cef071c > --- /dev/null > +++ b/docs/misra/C-language-toolchain.rst > @@ -0,0 +1,465 @@ > +============================================= > +C Dialect and Translation Assumptions for Xen > +============================================= > + > +This document specifies the C language dialect used by Xen and > +the assumptions Xen makes on the translation toolchain. > +It covers, in particular: > + > +1. the used language extensions; > +2. the translation limits that the translation toolchains must be able > + to accommodate; > +3. the implementation-defined behaviors upon which Xen may depend. > + > +All points are of course relevant for portability. In addition, > +programming in C is impossible without a detailed knowledge of the > +implementation-defined behaviors. For this reason, it is recommended > +that Xen developers have familiarity with this document and the > +documentation referenced therein. > + > +This document needs maintenance and adaptation in the following > +circumstances: > + > +- whenever the compiler is changed or updated; > +- whenever the use of a certain language extension is added or removed; > +- whenever code modifications cause exceeding the stated translation limits. > + > + > +Applicable C Language Standard > +______________________________ > + > +Xen is written in C99 with extensions. The relevant ISO standard is > + > + *ISO/IEC 9899:1999/Cor 3:2007*: Programming Languages - C, > + Technical Corrigendum 3. > + ISO/IEC, Geneva, Switzerland, 2007. > + > + > +Reference Documentation > +_______________________ > + > +The following documents are referred to in the sequel: > + > +GCC_MANUAL: > + https://gcc.gnu.org/onlinedocs/gcc-12.1.0/gcc.pdf > +CPP_MANUAL: > + https://gcc.gnu.org/onlinedocs/gcc-12.1.0/cpp.pdf > +ARM64_ABI_MANUAL: > + https://github.com/ARM-software/abi-aa/blob/60a8eb8c55e999d74dac5e368fc9d7e36e38dda4/aapcs64/aapcs64.rst > +X86_64_ABI_MANUAL: > + https://gitlab.com/x86-psABIs/x86-64-ABI/-/jobs/artifacts/master/raw/x86-64-ABI/abi.pdf?job=build > +ARM64_LIBC_MANUAL: > + https://www.gnu.org/software/libc/manual/pdf/libc.pdf > +X86_64_LIBC_MANUAL: > + https://www.gnu.org/software/libc/manual/pdf/libc.pdf > + > + > +C Language Extensions > +_____________________ > + > + > +The following table lists the extensions currently used in Xen. > +The table columns are as follows: > + > + Extension > + a terse description of the extension; > + Architectures > + a set of Xen architectures making use of the extension; > + References > + when available, references to the documentation explaining > + the syntax and semantics of (each instance of) the extension. > + > + > +.. list-table:: > + :widths: 30 15 55 > + :header-rows: 1 > + > + * - Extension > + - Architectures > + - References > + > + * - Non-standard tokens > + - ARM64, X86_64 > + - _Static_assert: > + see Section "2.1 C Language" of GCC_MANUAL. > + asm, __asm__: > + see Sections "6.48 Alternate Keywords" and "6.47 How to Use Inline Assembly Language in C Code" of GCC_MANUAL. > + __volatile__: > + see Sections "6.48 Alternate Keywords" and "6.47.2.1 Volatile" of GCC_MANUAL. > + __const__, __inline__, __inline: > + see Section "6.48 Alternate Keywords" of GCC_MANUAL. > + typeof, __typeof__: > + see Section "6.7 Referring to a Type with typeof" of GCC_MANUAL. > + __alignof__, __alignof: > + see Sections "6.48 Alternate Keywords" and "6.44 Determining the Alignment of Functions, Types or Variables" of GCC_MANUAL. > + __attribute__: > + see Section "6.39 Attribute Syntax" of GCC_MANUAL. > + __builtin_types_compatible_p: > + see Section "6.59 Other Built-in Functions Provided by GCC" of GCC_MANUAL. > + __builtin_va_arg: > + non-documented GCC extension. > + __builtin_offsetof: > + see Section "6.53 Support for offsetof" of GCC_MANUAL. > + __signed__: > + non-documented GCC extension. > + > + * - Empty initialization list > + - ARM64, X86_64 > + - Non-documented GCC extension. > + > + * - Arithmetic operator on void type > + - ARM64, X86_64 > + - See Section "6.24 Arithmetic on void- and Function-Pointers" of GCC_MANUAL." > + > + * - GNU statement expression "GNU statement expression" is not very clear, at least for me. I would call it "Statements and Declarations in Expressions". > + - ARM64, X86_64 > + - See Section "6.1 Statements and Declarations in Expressions" of GCC_MANUAL. > + > + * - Structure or union definition with no members > + - ARM64, X86_64 > + - See Section "6.19 Structures with No Members" of GCC_MANUAL. > + > + * - Zero size array type > + - ARM64, X86_64 > + - See Section "6.18 Arrays of Length Zero" of GCC_MANUAL. > + > + * - Binary conditional expression > + - ARM64, X86_64 > + - See Section "6.8 Conditionals with Omitted Operands" of GCC_MANUAL. > + > + * - 'Case' label with upper/lower values > + - ARM64, X86_64 > + - See Section "6.30 Case Ranges" of GCC_MANUAL. > + > + * - Unnamed field that is not a bit-field > + - ARM64, X86_64 > + - See Section "6.63 Unnamed Structure and Union Fields" of GCC_MANUAL. > + > + * - Empty declaration > + - ARM64, X86_64 > + - Non-documented GCC extension. For the non-documented GCC extensions, would it be possible to add a very brief example or a couple of words in the "References" sections? Otherwise I think people might not understand what we are talking about. For instance in this case I would say: An empty declaration is a semicolon with nothing before it. Non-documented GCC extension. > + * - Incomplete enum declaration > + - ARM64 > + - Non-documented GCC extension. Is this 6.49 of the GCC manual perhaps? > + * - Implicit conversion from a pointer to an incompatible pointer > + - ARM64, X86_64 > + - Non-documented GCC extension. Is this related to -Wincompatible-pointer-types? > + * - Pointer to a function is converted to a pointer to an object or a pointer to an object is converted to a pointer to a function > + - X86_64 > + - Non-documented GCC extension. Is this J.5.7 of n1570? https://www.iso-9899.info/n1570.html Or maybe we should link https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83584 > + * - Ill-formed source detected by the parser As we are documenting compiler extensions that we are using, I am a bit confused by the name of this category of compiler extensions, and the reason why they are bundled together. After all, they are all separate compiler extensions? Should each of them have their own row? > + - ARM64, X86_64 > + - token pasting of ',' and __VA_ARGS__ is a GNU extension: > + see Section "6.21 Macros with a Variable Number of Arguments" of GCC_MANUAL. > + must specify at least one argument for '...' parameter of variadic macro: > + see Section "6.21 Macros with a Variable Number of Arguments" of GCC_MANUAL. > + void function should not return void expression: I understand that GCC does a poor job at documenting several of these extensions. In fact a few of them are not even documented at all. However, if they are extensions, they should be described for what they do, not for the rule they violate. What do you think? For example, in this case maybe we should say "void function can return a void expression" ? > + see the documentation for -Wreturn-type in Section "3.8 Options to Request or Suppress Warnings" of GCC_MANUAL. > + use of GNU statement expression extension from macro expansion: > + see Section "6.1 Statements and Declarations in Expressions" of GCC_MANUAL. > + invalid application of sizeof to a void type: > + see Section "6.24 Arithmetic on void- and Function-Pointers" of GCC_MANUAL. > + redeclaration of already-defined enum is a GNU extension: > + see Section "6.49 Incomplete enum Types" of GCC_MANUAL. > + static function is used in an inline function with external linkage: > + non-documented GCC extension. I am not sure if I follow about this one. Did you mean "static is used in an inline function with external linkage" ? > + struct may not be nested in a struct due to flexible array member: > + see Section "6.18 Arrays of Length Zero" of GCC_MANUAL. > + struct may not be used as an array element due to flexible array member: > + see Section "6.18 Arrays of Length Zero" of GCC_MANUAL. > + ISO C restricts enumerator values to the range of int: > + non-documented GCC extension. Should we call it instead "enumerator values can be larger than int" ? > + > + * - Unspecified escape sequence is encountered in a character constant or a string literal token > + - X86_64 > + - \\m: > + non-documented GCC extension. Are you saying that we are using \m and \m is not allowed by the C standard? > + * - Non-standard type Should we call it "128-bit Integers" ? > + - X86_64 > + - See Section "6.9 128-bit Integers" of GCC_MANUAL. > +Translation Limits > +__________________ > + > +The following table lists the translation limits that a toolchain has > +to satisfy in order to translate Xen. The numbers given are a > +compromise: on the one hand, many modern compilers have very generous > +limits (in several cases, the only limitation is the amount of > +available memory); on the other hand we prefer setting limits that are > +not too high, because compilers do not have any obligation of > +diagnosing when a limit has been exceeded, and not too low, so as to > +avoid frequently updating this document. In the table, only the > +limits that go beyond the minima specified by the relevant C Standard > +are listed. > + > +The table columns are as follows: > + > + Limit > + a terse description of the translation limit; > + Architectures > + a set relevant of Xen architectures; > + Threshold > + a value that the Xen project does not wish to exceed for that limit > + (this is typically below, often much below what the translation > + toolchain supports); > + References > + when available, references to the documentation providing evidence > + that the translation toolchain honors the threshold (and more). > + > +.. list-table:: > + :widths: 30 15 10 45 > + :header-rows: 1 > + > + * - Limit > + - Architectures > + - Threshold > + - References > + > + * - Size of an object > + - ARM64, X86_64 > + - 8388608 > + - The maximum size of an object is defined in the MAX_SIZE macro, and for a 32 bit architecture is 8MB. > + The maximum size for an array is defined in the PTRDIFF_MAX and in a 32 bit architecture is 2^30-1. > + See occurrences of these macros in GCC_MANUAL. > + > + * - Characters in one logical source line > + - ARM64 > + - 5000 > + - See Section "11.2 Implementation limits" of CPP_MANUAL. > + > + * - Characters in one logical source line > + - X86_64 > + - 12000 > + - See Section "11.2 Implementation limits" of CPP_MANUAL. > + > + * - Nesting levels for #include files > + - ARM64 > + - 24 > + - See Section "11.2 Implementation limits" of CPP_MANUAL. > + > + * - Nesting levels for #include files > + - X86_64 > + - 32 > + - See Section "11.2 Implementation limits" of CPP_MANUAL. > + > + * - case labels for a switch statement (excluding those for any nested switch statements) > + - X86_64 > + - 1500 > + - See Section "4.12 Statements" of GCC_MANUAL. > + > + * - Number of significant initial characters in an external identifier > + - ARM64, X86_64 > + - 63 > + - See Section "4.3 Identifiers" of GCC_MANUAL. > + > + > +Implementation-Defined Behaviors > +________________________________ > + > +The following table lists the C language implementation-defined behaviors > +relevant for MISRA C:2012 Dir 1.1 upon which Xen may possibly depend. > + > +The table columns are as follows: > + > + I.-D.B. > + a terse description of the implementation-defined behavior; > + Architectures > + a set relevant of Xen architectures; > + Value(s) > + for i.-d.b.'s with values, the values allowed; > + References > + when available, references to the documentation providing details > + about how the i.-d.b. is resolved by the translation toolchain. > + > +.. list-table:: > + :widths: 30 15 10 45 > + :header-rows: 1 > + > + * - I.-D.B. > + - Architectures > + - Value(s) > + - References > + > + * - Allowable bit-field types other than _Bool, signed int, and unsigned int > + - ARM64, X86_64 > + - All explicitly signed integer types, all unsigned integer types, > + and enumerations. > + - See Section "4.9 Structures, Unions, Enumerations, and Bit-Fields". > + > + * - #pragma preprocessing directive that is documented as causing translation failure or some other form of undefined behavior is encountered > + - ARM64, X86_64 > + - pack, GCC visibility > + - #pragma pack: > + see Section "6.62.11 Structure-Layout Pragmas" of GCC_MANUAL. > + #pragma GCC visibility: > + see Section "6.62.14 Visibility Pragmas" of GCC_MANUAL. > + > + * - The number of bits in a byte > + - ARM64 > + - 8 > + - See Section "4.4 Characters" of GCC_MANUAL and Section "8.1 Data types" of ARM64_ABI_MANUAL. > + > + * - The number of bits in a byte > + - X86_64 > + - 8 > + - See Section "4.4 Characters" of GCC_MANUAL and Section "3.1.2 Data Representation" of X86_64_ABI_MANUAL. > + > + * - Whether signed integer types are represented using sign and magnitude, two's complement, or one's complement, and whether the extraordinary value is a trap representation or an ordinary value > + - ARM64, X86_64 > + - Two's complement > + - See Section "4.5 Integers" of GCC_MANUAL. > + > + * - Any extended integer types that exist in the implementation > + - X86_64 > + - __uint128_t > + - See Section "6.9 128-bit Integers" of GCC_MANUAL. > + > + * - The number, order, and encoding of bytes in any object > + - ARM64 > + - > + - See Section "4.15 Architecture" of GCC_MANUAL and Chapter 5 "Data types and alignment" of ARM64_ABI_MANUAL. > + > + * - The number, order, and encoding of bytes in any object > + - X86_64 > + - > + - See Section "4.15 Architecture" of GCC_MANUAL and Section "3.1.2 Data Representation" of X86_64_ABI_MANUAL. > + > + * - Whether a bit-field can straddle a storage-unit boundary > + - ARM64 > + - > + - See Section "4.9 Structures, Unions, Enumerations, and Bit-Fields of GCC_MANUAL and Section "8.1.8 Bit-fields" of ARM64_ABI_MANUAL. > + > + * - Whether a bit-field can straddle a storage-unit boundary > + - X86_64 > + - > + - See Section "4.9 Structures, Unions, Enumerations, and Bit-Fields" of GCC_MANUAL and Section "3.1.2 Data Representation" of X86_64_ABI_MANUAL. > + > + * - The order of allocation of bit-fields within a unit > + - ARM64 > + - > + - See Section "4.9 Structures, Unions, Enumerations, and Bit-Fields of GCC_MANUAL and Section "8.1.8 Bit-fields" of ARM64_ABI_MANUAL. > + > + * - The order of allocation of bit-fields within a unit > + - X86_64 > + - > + - See Section "4.9 Structures, Unions, Enumerations, and Bit-Fields" of GCC_MANUAL and Section "3.1.2 Data Representation" of X86_64_ABI_MANUAL. > + > + * - What constitutes an access to an object that has volatile-qualified type > + - ARM64, X86_64 > + - > + - See Section "4.10 Qualifiers" of GCC_MANUAL. > + > + * - The values or expressions assigned to the macros specified in the headers , , and > + - ARM64 > + - > + - See Section "4.15 Architecture" of GCC_MANUAL and Chapter 5 "Data types and alignment" of ARM64_ABI_MANUAL. > + > + * - The values or expressions assigned to the macros specified in the headers , , and > + - X86_64 > + - > + - See Section "4.15 Architecture" of GCC_MANUAL and Section "3.1.2 Data Representation" of X86_64_ABI_MANUAL. > + > + * - Character not in the basic source character set is encountered in a source file, except in an identifier, a character constant, a string literal, a header name, a comment, or a preprocessing token that is never converted to a token > + - ARM64 > + - UTF-8 > + - See Section "1.1 Character sets" of CPP_MANUAL. > + We assume the locale is not restricting any UTF-8 characters being part of the source character set. > + > + * - The value of a char object into which has been stored any character other than a member of the basic execution character set > + - ARM64 > + - > + - See Section "4.4 Characters" of GCC_MANUAL and Section "8.1 Data types" of ARM64_ABI_MANUAL. > + > + * - The value of a char object into which has been stored any character other than a member of the basic execution character set > + - X86_64 > + - > + - See Section "4.4 Characters" of GCC_MANUAL and Section "3.1.2 Data Representation" of X86_64_ABI_MANUAL. > + > + * - The value of an integer character constant containing more than one character or containing a character or escape sequence that does not map to a single-byte execution character > + - ARM64 > + - > + - See Section "4.4 Characters" of GCC_MANUAL and Section "8.1 Data types" of ARM64_ABI_MANUAL. > + > + * - The value of an integer character constant containing more than one character or containing a character or escape sequence that does not map to a single-byte execution character > + - X86_64 > + - > + - See Section "4.4 Characters" of GCC_MANUAL and Section "3.1.2 Data Representation" of X86_64_ABI_MANUAL. > + > + * - The mapping of members of the source character set > + - ARM64, X86_64 > + - > + - See Section "4.4 Characters" of GCC_MANUAL and the documentation for -finput-charset=charset in the same manual. > + > + * - The members of the source and execution character sets, except as explicitly specified in the Standard > + - ARM64, X86_64 > + - UTF-8 > + - See Section "4.4 Characters" of GCC_MANUAL > + > + * - The values of the members of the execution character set > + - ARM64, X86_64 > + - > + - See Section "4.4 Characters" of GCC_MANUAL and the documentation for -fexec-charset=charset in the same manual. > + > + * - How a diagnostic is identified > + - ARM64, X86_64 > + - > + - See Section "4.1 Translation" of GCC_MANUAL. > + > + * - The termination status returned to the host environment by the abort, exit, or _Exit function > + - ARM64 > + - > + - See "Section 25.7 Program Termination" of ARM64_LIBC_MANUAL. > + > + * - The termination status returned to the host environment by the abort, exit, or _Exit function > + - X86_64 > + - > + - See "Section 25.7 Program Termination" of X86_64_LIBC_MANUAL. > + > + * - The places that are searched for an included < > delimited header, and how the places are specified or the header is identified > + - ARM64, X86_64 > + - > + - See Chapter "2 Header Files" of CPP_MANUAL. > + > + * - How the named source file is searched for in an included " " delimited header > + - ARM64, X86_64 > + - > + - See Chapter "2 Header Files" of CPP_MANUAL. > + > + * - How sequences in both forms of header names are mapped to headers or external source file names > + - ARM64, X86_64 > + - > + - See Chapter "2 Header Files" of CPP_MANUAL. > + > + * - Whether the # operator inserts a \ character before the \ character that begins a universal character name in a character constant or string literal > + - ARM64, X86_64 > + - > + - See Section "3.4 Stringizing" of CPP_MANUAL. > + > + * - The current locale used to convert a wide string literal into corresponding wide character codes > + - ARM64, X86_64 > + - > + - See Section "4.4 Characters" of GCC_MANUAL and Section "11.1 Implementation-defined behavior" of CPP_MANUAL. > + > + * - The value of a string literal containing a multibyte character or escape sequence not represented in the execution character set > + - X86_64 > + - > + - See Section "4.4 Characters" of GCC_MANUAL and Section "11.1 Implementation-defined behavior" of CPP_MANUAL. > + > + * - The behavior on each recognized #pragma directive > + - ARM64, X86_64 > + - pack, GCC visibility > + - See Section "4.13 Preprocessing Directives" of GCC_MANUAL and Section "7 Pragmas" of CPP_MANUAL. > + > + * - The method by which preprocessing tokens (possibly resulting from macro expansion) in a #include directive are combined into a header name > + - X86_64 > + - > + - See Section "4.13 Preprocessing Directives" of GCC_MANUAL and Section "11.1 Implementation-defined behavior" of CPP_MANUAL. > + > + > +END OF DOCUMENT. END OF DOCUMENT is unnecessary > -- > 2.34.1 > From xen-devel-bounces@lists.xenproject.org Thu Jun 15 23:36:48 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 15 Jun 2023 23:36:48 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549951.858784 (Exim 4.92) (envelope-from ) id 1q9wWA-00064X-DT; Thu, 15 Jun 2023 23:36:42 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549951.858784; Thu, 15 Jun 2023 23:36:42 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9wWA-00064Q-9M; Thu, 15 Jun 2023 23:36:42 +0000 Received: by outflank-mailman (input) for mailman id 549951; Thu, 15 Jun 2023 23:36:40 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9wW8-00064G-T6; Thu, 15 Jun 2023 23:36:40 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9wW8-0002DH-P4; Thu, 15 Jun 2023 23:36:40 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9wW8-00047Z-4n; Thu, 15 Jun 2023 23:36:40 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q9wW8-0006RR-4E; Thu, 15 Jun 2023 23:36:40 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=LErlprRtppWe0oi9wH82+/1+ssmbYX/mxqkjsfKrr00=; b=M7FPrHm+WxQQXGhhWsg6w5KIpc tv4rx+yJOTkIOFaKYaIwoAKFP51Y1puXXsiHZ3MwJXhVcvbcJosEHYioJ+QwbDn/1V60i2PixYcMF F2Cgraj480qCWWBfKpL8j49wqiVX4G2xnnTfYZkmH7ujL0Cxs4m7s47mtbpbWbAzxKko=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [qemu-mainline test] 181446: regressions - FAIL X-Osstest-Failures: qemu-mainline:build-amd64-xsm:xen-build:fail:regression qemu-mainline:build-arm64:xen-build:fail:regression qemu-mainline:build-arm64-xsm:xen-build:fail:regression qemu-mainline:build-amd64:xen-build:fail:regression qemu-mainline:build-i386:xen-build:fail:regression qemu-mainline:build-i386-xsm:xen-build:fail:regression qemu-mainline:build-armhf:xen-build:fail:regression qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-i386:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:build-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:build-arm64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:build-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:build-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pygrub:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking X-Osstest-Versions-This: qemuu=7efd65423ab22e6f5890ca08ae40c84d6660242f X-Osstest-Versions-That: qemuu=6972ef1440a9d685482d78672620a7482f2bd09a From: osstest service owner Date: Thu, 15 Jun 2023 23:36:40 +0000 flight 181446 qemu-mainline real [real] http://logs.test-lab.xenproject.org/osstest/logs/181446/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-amd64-xsm 6 xen-build fail REGR. vs. 180691 build-arm64 6 xen-build fail REGR. vs. 180691 build-arm64-xsm 6 xen-build fail REGR. vs. 180691 build-amd64 6 xen-build fail REGR. vs. 180691 build-i386 6 xen-build fail REGR. vs. 180691 build-i386-xsm 6 xen-build fail REGR. vs. 180691 build-armhf 6 xen-build fail REGR. vs. 180691 Tests which did not succeed, but are not blocking: test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-xl-xsm 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-raw 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-xsm 1 build-check(1) blocked n/a test-arm64-arm64-xl 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit1 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit2 1 build-check(1) blocked n/a test-arm64-arm64-xl-thunderx 1 build-check(1) blocked n/a test-arm64-arm64-xl-vhd 1 build-check(1) blocked n/a test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a test-armhf-armhf-libvirt 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-qcow2 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-raw 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a test-armhf-armhf-xl-arndale 1 build-check(1) blocked n/a test-armhf-armhf-xl-multivcpu 1 build-check(1) blocked n/a test-armhf-armhf-xl-rtds 1 build-check(1) blocked n/a test-armhf-armhf-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-amd 1 build-check(1) blocked n/a test-amd64-i386-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-raw 1 build-check(1) blocked n/a test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-i386 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-amd64 1 build-check(1) blocked n/a test-amd64-coresched-i386-xl 1 build-check(1) blocked n/a test-amd64-coresched-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-xsm 1 build-check(1) blocked n/a build-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-shadow 1 build-check(1) blocked n/a test-amd64-amd64-xl-rtds 1 build-check(1) blocked n/a build-arm64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a build-armhf-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a build-i386-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-amd 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-pair 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-qcow2 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-vhd 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvshim 1 build-check(1) blocked n/a test-amd64-amd64-pair 1 build-check(1) blocked n/a test-amd64-amd64-pygrub 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-intel 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd11-amd64 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd12-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-multivcpu 1 build-check(1) blocked n/a test-amd64-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit1 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit1 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-intel 1 build-check(1) blocked n/a test-amd64-i386-xl 1 build-check(1) blocked n/a test-amd64-i386-xl-pvshim 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a version targeted for testing: qemuu 7efd65423ab22e6f5890ca08ae40c84d6660242f baseline version: qemuu 6972ef1440a9d685482d78672620a7482f2bd09a Last test of basis 180691 2023-05-17 10:45:22 Z 29 days Failing since 180699 2023-05-18 07:21:24 Z 28 days 105 attempts Testing same since 181419 2023-06-14 05:08:14 Z 1 days 7 attempts ------------------------------------------------------------ People who touched revisions under test: Afonso Bordado Akihiko Odaki Akihiro Suda Alex Bennée Alex Williamson Alexander Bulekov Alexander Graf Alexander Ivanov Alistair Francis Anastasia Belova Andrea Bolognani Andreas Schwab Andrew Jeffery Ani Sinha Ani Sinha Anthony PERARD Anton Johansson Antonio Caggiano BALATON Zoltan Bastian Koppelmann Bernhard Beschow Bin Meng Brian Cain Brice Goglin Camilla Conte Carlos Santos Christian Schoenebeck Chuck Zmudzinski Cindy Lu Clément Chigot Corey Minyard Cornelia Huck Cédric Le Goater Cédric Le Goater Daniel Henrique Barboza Daniel Henrique Barboza Daniel P. Berrangé Daniil Kovalev David Hildenbrand David Woodhouse Emanuele Giuseppe Esposito Enze Li Eric Auger Eric Blake Eric DeVolder Erico Nunes Eugenio Pérez Fabiano Rosas Fan Ni Fiona Ebner Francesco Cagnin Francisco Iglesias Frederic Barrat Gavin Shan Gregory Price Gregory Price Hanna Czenczek Hao Zeng Hawkins Jiawei Himanshu Chauhan Igor Mammedov Ilya Leoshkevich Ira Weiny Ivan Klokov Jagannathan Raman Jason Wang Jean-Louis Dupond Jean-Philippe Brucker Jiaxun Yang Joao Martins John Snow Jonathan Cameron Juan Quintela Junqiang Wang Kevin Wolf Laurent Vivier Lei Yang Leonardo Bras Maksim Davydov Marc-André Lureau Marcin Juszkiewicz Marco Liebel Mark Cave-Ayland Markus Armbruster Matheus Tavares Bernardino Mattias Nissler Mauro Matteo Cascella Max Fritz Mayuresh Chitale Michael S. Tsirkin Michael Tokarev Michal Privoznik Milan Zamazal Mostafa Saleh Nicholas Piggin Nicolas Saenz Julienne Niek Linnenbank Niklas Cassel Palmer Dabbelt Paolo Bonzini Patrick Venture Peter Maydell Peter Xu Philippe Mathieu-Daudé Philippe Mathieu-Daudé qianfan Zhao Raghu H Rene Engel Richard Henderson Richard Purdie Ricky Zhou Ryan Wendland Sebastian Ott Sergio Lopez Sid Manning Song Gao Stefan Hajnoczi Stefano Garzarella Steve Sistare Sunil V L Taylor Simpson Thomas Huth Thomas Weißschuh timothee.cocault@gmail.com Timothée Cocault Tommy Wu Vikram Garhwal Viktor Prutyanov Vitaly Cheptsov Vivek Kasireddy Vladimir Sementsov-Ogievskiy Volker Rümelin Weiwei Li Xiao Wang Xinyu Li Yin Wang Zeng Hao Zhenyu Zhang Zhenzhong Duan Zhuojia Shen jobs: build-amd64-xsm fail build-arm64-xsm fail build-i386-xsm fail build-amd64 fail build-arm64 fail build-armhf fail build-i386 fail build-amd64-libvirt blocked build-arm64-libvirt blocked build-armhf-libvirt blocked build-i386-libvirt blocked build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl blocked test-amd64-coresched-amd64-xl blocked test-arm64-arm64-xl blocked test-armhf-armhf-xl blocked test-amd64-i386-xl blocked test-amd64-coresched-i386-xl blocked test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-i386-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-amd64-libvirt-xsm blocked test-arm64-arm64-libvirt-xsm blocked test-amd64-i386-libvirt-xsm blocked test-amd64-amd64-xl-xsm blocked test-arm64-arm64-xl-xsm blocked test-amd64-i386-xl-xsm blocked test-amd64-amd64-qemuu-nested-amd blocked test-amd64-amd64-xl-pvhv2-amd blocked test-amd64-i386-qemuu-rhel6hvm-amd blocked test-amd64-amd64-dom0pvh-xl-amd blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-freebsd10-amd64 blocked test-amd64-amd64-qemuu-freebsd11-amd64 blocked test-amd64-amd64-qemuu-freebsd12-amd64 blocked test-amd64-amd64-xl-qemuu-ovmf-amd64 blocked test-amd64-i386-xl-qemuu-ovmf-amd64 blocked test-amd64-amd64-xl-qemuu-win7-amd64 blocked test-amd64-i386-xl-qemuu-win7-amd64 blocked test-amd64-amd64-xl-qemuu-ws16-amd64 blocked test-amd64-i386-xl-qemuu-ws16-amd64 blocked test-armhf-armhf-xl-arndale blocked test-amd64-amd64-xl-credit1 blocked test-arm64-arm64-xl-credit1 blocked test-armhf-armhf-xl-credit1 blocked test-amd64-amd64-xl-credit2 blocked test-arm64-arm64-xl-credit2 blocked test-armhf-armhf-xl-credit2 blocked test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-freebsd10-i386 blocked test-amd64-amd64-qemuu-nested-intel blocked test-amd64-amd64-xl-pvhv2-intel blocked test-amd64-i386-qemuu-rhel6hvm-intel blocked test-amd64-amd64-dom0pvh-xl-intel blocked test-amd64-amd64-libvirt blocked test-armhf-armhf-libvirt blocked test-amd64-i386-libvirt blocked test-amd64-amd64-xl-multivcpu blocked test-armhf-armhf-xl-multivcpu blocked test-amd64-amd64-pair blocked test-amd64-i386-pair blocked test-amd64-amd64-libvirt-pair blocked test-amd64-i386-libvirt-pair blocked test-amd64-amd64-xl-pvshim blocked test-amd64-i386-xl-pvshim blocked test-amd64-amd64-pygrub blocked test-armhf-armhf-libvirt-qcow2 blocked test-amd64-amd64-xl-qcow2 blocked test-arm64-arm64-libvirt-raw blocked test-armhf-armhf-libvirt-raw blocked test-amd64-i386-libvirt-raw blocked test-amd64-amd64-xl-rtds blocked test-armhf-armhf-xl-rtds blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-amd64-xl-shadow blocked test-amd64-i386-xl-shadow blocked test-arm64-arm64-xl-thunderx blocked test-amd64-amd64-libvirt-vhd blocked test-arm64-arm64-xl-vhd blocked test-armhf-armhf-xl-vhd blocked test-amd64-i386-xl-vhd blocked ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 18679 lines long.) From xen-devel-bounces@lists.xenproject.org Thu Jun 15 23:55:17 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 15 Jun 2023 23:55:17 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549960.858793 (Exim 4.92) (envelope-from ) id 1q9wnt-00009B-2T; Thu, 15 Jun 2023 23:55:01 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549960.858793; Thu, 15 Jun 2023 23:55:01 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9wns-000094-Vn; Thu, 15 Jun 2023 23:55:00 +0000 Received: by outflank-mailman (input) for mailman id 549960; Thu, 15 Jun 2023 23:54:59 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9wnr-00008u-PG; Thu, 15 Jun 2023 23:54:59 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9wnr-0002dk-LN; Thu, 15 Jun 2023 23:54:59 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9wnr-0005U6-A3; Thu, 15 Jun 2023 23:54:59 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q9wnr-00068U-9M; Thu, 15 Jun 2023 23:54:59 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=NS7bC4FaYrxoXV/WhP2Bh3wnMt5yAksdY6iMADWNgkA=; b=Jq4NNGf29UofG1xfVWfogQzWT+ JTFHWtKUMDqvZTMIPv9HFnZ+9eGdnNcJfpe0/LPPOzq1jVMATuqxYv/OB7mAop6kdtD87my8tU7A6 DVdBBpQjSpdb71RmKY6JnicVXPd0jOuQxRsNlfOcPQSAmRFTi2r9coiOra0KXyGQ9JcM=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable test] 181440: trouble: broken/fail/pass X-Osstest-Failures: xen-unstable:test-armhf-armhf-xl-vhd::broken:regression xen-unstable:test-armhf-armhf-xl-vhd:host-install(5):broken:heisenbug xen-unstable:test-amd64-amd64-libvirt-vhd:guest-start/debian.repeat:fail:heisenbug xen-unstable:test-amd64-i386-xl-qemut-debianhvm-i386-xsm:xen-install:fail:heisenbug xen-unstable:test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm:xen-install:fail:heisenbug xen-unstable:test-amd64-i386-xl-xsm:xen-install:fail:heisenbug xen-unstable:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qcow2:guest-start/debian.repeat:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking X-Osstest-Versions-This: xen=87c621d0ef75e5f95987d66811ed1fd7129208d1 X-Osstest-Versions-That: xen=87c621d0ef75e5f95987d66811ed1fd7129208d1 From: osstest service owner Date: Thu, 15 Jun 2023 23:54:59 +0000 flight 181440 xen-unstable real [real] http://logs.test-lab.xenproject.org/osstest/logs/181440/ Failures and problems with tests :-( Tests which did not succeed and are blocking, including tests which could not be run: test-armhf-armhf-xl-vhd broken Tests which are failing intermittently (not blocking): test-armhf-armhf-xl-vhd 5 host-install(5) broken pass in 181431 test-amd64-amd64-libvirt-vhd 19 guest-start/debian.repeat fail in 181431 pass in 181440 test-amd64-i386-xl-qemut-debianhvm-i386-xsm 7 xen-install fail pass in 181431 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm 7 xen-install fail pass in 181431 test-amd64-i386-xl-xsm 7 xen-install fail pass in 181431 Tests which did not succeed, but are not blocking: test-armhf-armhf-xl-vhd 14 migrate-support-check fail in 181431 never pass test-armhf-armhf-xl-vhd 15 saverestore-support-check fail in 181431 never pass test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 181431 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop fail like 181431 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 181431 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 181431 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop fail like 181431 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop fail like 181431 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail like 181431 test-amd64-amd64-xl-qcow2 21 guest-start/debian.repeat fail like 181431 test-armhf-armhf-libvirt 16 saverestore-support-check fail like 181431 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 181431 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail like 181431 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop fail like 181431 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 181431 test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-i386-xl-pvshim 14 guest-start fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-i386-libvirt 15 migrate-support-check fail never pass test-amd64-i386-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 15 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 16 saverestore-support-check fail never pass test-amd64-i386-libvirt-raw 14 migrate-support-check fail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-armhf-armhf-xl-multivcpu 15 migrate-support-check fail never pass test-armhf-armhf-xl-multivcpu 16 saverestore-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass test-armhf-armhf-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 15 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 16 saverestore-support-check fail never pass test-armhf-armhf-xl 15 migrate-support-check fail never pass test-armhf-armhf-xl 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 16 saverestore-support-check fail never pass test-armhf-armhf-xl-credit2 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit2 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail never pass version targeted for testing: xen 87c621d0ef75e5f95987d66811ed1fd7129208d1 baseline version: xen 87c621d0ef75e5f95987d66811ed1fd7129208d1 Last test of basis 181440 2023-06-15 06:54:36 Z 0 days Testing same since (not found) 0 attempts jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64-xtf pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-prev pass build-i386-prev pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-xtf-amd64-amd64-1 pass test-xtf-amd64-amd64-2 pass test-xtf-amd64-amd64-3 pass test-xtf-amd64-amd64-4 pass test-xtf-amd64-amd64-5 pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl pass test-amd64-i386-xl pass test-amd64-coresched-i386-xl pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm fail test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-i386-xl-qemut-debianhvm-i386-xsm fail test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-i386-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-i386-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-i386-xl-xsm fail test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-i386-qemut-rhel6hvm-amd pass test-amd64-i386-qemuu-rhel6hvm-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-i386-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-freebsd10-amd64 pass test-amd64-amd64-qemuu-freebsd11-amd64 pass test-amd64-amd64-qemuu-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-i386-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-i386-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-i386-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-amd64-i386-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale pass test-amd64-amd64-examine-bios pass test-amd64-i386-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 pass test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 pass test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine pass test-amd64-i386-examine pass test-amd64-i386-freebsd10-i386 pass test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-i386-qemut-rhel6hvm-intel pass test-amd64-i386-qemuu-rhel6hvm-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt pass test-amd64-i386-libvirt pass test-amd64-amd64-livepatch pass test-amd64-i386-livepatch pass test-amd64-amd64-migrupgrade pass test-amd64-i386-migrupgrade pass test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu pass test-amd64-amd64-pair pass test-amd64-i386-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-i386-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-i386-xl-pvshim fail test-amd64-amd64-pygrub pass test-armhf-armhf-libvirt-qcow2 pass test-amd64-amd64-xl-qcow2 fail test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw pass test-amd64-i386-libvirt-raw pass test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds pass test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-amd64-i386-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-i386-examine-uefi pass test-amd64-amd64-libvirt-vhd pass test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd broken test-amd64-i386-xl-vhd pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary broken-job test-armhf-armhf-xl-vhd broken broken-step test-armhf-armhf-xl-vhd host-install(5) Published tested tree is already up to date. From xen-devel-bounces@lists.xenproject.org Fri Jun 16 00:54:30 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 16 Jun 2023 00:54:30 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549967.858803 (Exim 4.92) (envelope-from ) id 1q9xjG-0007Be-5n; Fri, 16 Jun 2023 00:54:18 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549967.858803; Fri, 16 Jun 2023 00:54:18 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9xjG-0007BX-2g; Fri, 16 Jun 2023 00:54:18 +0000 Received: by outflank-mailman (input) for mailman id 549967; Fri, 16 Jun 2023 00:54:16 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9xjE-0007Az-Ne; Fri, 16 Jun 2023 00:54:16 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9xjE-0004Va-Kw; Fri, 16 Jun 2023 00:54:16 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9xjE-0000Mu-EX; Fri, 16 Jun 2023 00:54:16 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1q9xjE-00015M-EA; Fri, 16 Jun 2023 00:54:16 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=cVb/a5zavrxsLBRgn+P42YZeroE3VB7WC1u399gLYwc=; b=Q2ymU8EPchxgNefHelssAOJSjd iYX42jBGd0ElHlNpNUdya9gadvXI+EZmqLjDAylrNlkcJCpbZU6jJnLBYylsRvlI842aOxgwawJaz +Iwaha0HLIomREL4+zVJSgkeZIscwZqpzO2EF2VSxDk3DUvrbOEUbZyw9ExbGRzVxnOc=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable-smoke test] 181457: tolerable all pass - PUSHED X-Osstest-Failures: xen-unstable-smoke:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking xen-unstable-smoke:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking xen-unstable-smoke:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking xen-unstable-smoke:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking xen-unstable-smoke:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: xen=c4e492a1399b763400daf3ca35fcef3028c7a7da X-Osstest-Versions-That: xen=1512a68721620338daf477bf717d23befbb4faf5 From: osstest service owner Date: Fri, 16 Jun 2023 00:54:16 +0000 flight 181457 xen-unstable-smoke real [real] http://logs.test-lab.xenproject.org/osstest/logs/181457/ Failures :-/ but no regressions. Tests which did not succeed, but are not blocking: test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-armhf-armhf-xl 15 migrate-support-check fail never pass test-armhf-armhf-xl 16 saverestore-support-check fail never pass version targeted for testing: xen c4e492a1399b763400daf3ca35fcef3028c7a7da baseline version: xen 1512a68721620338daf477bf717d23befbb4faf5 Last test of basis 181442 2023-06-15 10:00:29 Z 0 days Testing same since 181457 2023-06-15 21:00:25 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Andrew Cooper Federico Serafini Jan Beulich Julien Grall Michal Orzel jobs: build-arm64-xsm pass build-amd64 pass build-armhf pass build-amd64-libvirt pass test-armhf-armhf-xl pass test-arm64-arm64-xl-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-libvirt pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Pushing revision : To xenbits.xen.org:/home/xen/git/xen.git 1512a68721..c4e492a139 c4e492a1399b763400daf3ca35fcef3028c7a7da -> smoke From xen-devel-bounces@lists.xenproject.org Fri Jun 16 01:09:57 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 16 Jun 2023 01:09:57 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549974.858814 (Exim 4.92) (envelope-from ) id 1q9xy8-00077d-FT; Fri, 16 Jun 2023 01:09:40 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549974.858814; Fri, 16 Jun 2023 01:09:40 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9xy8-00077W-CO; Fri, 16 Jun 2023 01:09:40 +0000 Received: by outflank-mailman (input) for mailman id 549974; Fri, 16 Jun 2023 01:09:38 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1q9xy6-00077Q-7f for xen-devel@lists.xenproject.org; Fri, 16 Jun 2023 01:09:38 +0000 Received: from mga14.intel.com (mga14.intel.com [192.55.52.115]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 7407d617-0be2-11ee-b232-6b7b168915f2; Fri, 16 Jun 2023 03:09:35 +0200 (CEST) Received: from orsmga008.jf.intel.com ([10.7.209.65]) by fmsmga103.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 15 Jun 2023 18:09:32 -0700 Received: from fmsmsx601.amr.corp.intel.com ([10.18.126.81]) by orsmga008.jf.intel.com with ESMTP; 15 Jun 2023 18:09:32 -0700 Received: from fmsmsx611.amr.corp.intel.com (10.18.126.91) by fmsmsx601.amr.corp.intel.com (10.18.126.81) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Thu, 15 Jun 2023 18:09:31 -0700 Received: from fmsmsx603.amr.corp.intel.com (10.18.126.83) by fmsmsx611.amr.corp.intel.com (10.18.126.91) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Thu, 15 Jun 2023 18:09:31 -0700 Received: from fmsedg601.ED.cps.intel.com (10.1.192.135) by fmsmsx603.amr.corp.intel.com (10.18.126.83) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23 via Frontend Transport; Thu, 15 Jun 2023 18:09:31 -0700 Received: from NAM10-DM6-obe.outbound.protection.outlook.com (104.47.58.109) by edgegateway.intel.com (192.55.55.70) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2507.23; Thu, 15 Jun 2023 18:09:30 -0700 Received: from BN9PR11MB5276.namprd11.prod.outlook.com (2603:10b6:408:135::18) by DS0PR11MB7580.namprd11.prod.outlook.com (2603:10b6:8:148::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.37; Fri, 16 Jun 2023 01:09:29 +0000 Received: from BN9PR11MB5276.namprd11.prod.outlook.com ([fe80::4f05:6b0b:dbc8:abbb]) by BN9PR11MB5276.namprd11.prod.outlook.com ([fe80::4f05:6b0b:dbc8:abbb%7]) with mapi id 15.20.6500.026; Fri, 16 Jun 2023 01:09:29 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 7407d617-0be2-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1686877775; x=1718413775; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=LxGP2GWzJRVmTxcnM6mofTmNwNDqLU+VDC0evC6/D94=; b=BDq9ZGGuaGdF3WOX5dHQaLrh1R1CFIPqqFw6y8TSXbLe/BX+kyCMeUQW gPZgQ3n3nZDtdax0wLwbR2PuZ7fn/ZrpbwPXomTYPtcb5VG+vNkJzZH/n HkIfwuJqW/MpBidFjBGF69bGzIojp72GiCCDNZlcnq/5sb+btmpwlBs9R RjsidlbGuUyxbky3t+fQfQRa7Yd/M93WgDHdC9KHcKgXv15HUZw9Iln8y YatC8BKLnDunSSbkgeQ4aGAzC7UAeXzRy4qWXcXiwdv1lfc+KtoHhWZXc F4XkZ0oQ6NWM0X6/87H4wxoGIA3cUobKJ14UVUWrZH/ghm3hYVaZMIXF4 w==; X-IronPort-AV: E=McAfee;i="6600,9927,10742"; a="359085247" X-IronPort-AV: E=Sophos;i="6.00,246,1681196400"; d="scan'208";a="359085247" X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10742"; a="742453117" X-IronPort-AV: E=Sophos;i="6.00,246,1681196400"; d="scan'208";a="742453117" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=mmF5uMiR1di6V7Kwobf96dw0/7VNo1jNi3W8Y72UWDHoFw9N822tse4WScUfJ942g/Rmj5VjN28AndSzwxLLZ0FWIVF0gKLVELG1sAYnxEwdg8+IXJRWhaQyTtqNFPNIAYkVdwO0mXWwQac/2Ip4SEbf9obnrMBRHV6gziMk/DXzDdKPlIq41RHVyrT92xRXpmFJUKSz2hGlRQveL4WM2bu/IJA4gIsFbYTdZw0MC6M+y+acDzAY1Wll48HH98kIKEI8Fm8M+0Uxbm50i9zb4xMnQPSdDha8wFkh8yhEXLdh5bPkDU+OtWT5HVLhUvi1SJVtxMRgP0a1zsMsppvQEg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=LxGP2GWzJRVmTxcnM6mofTmNwNDqLU+VDC0evC6/D94=; b=oQgn+p4XwwdXnOYlKtqHTKvxTRJ+PAmxfgEx69in5gS0JA6kUXrNrg0nfMToeU3cOTXOsSpJ7tEuwuYAS0x4VDJGBx8ou7wSLo7vWV8cstInQglrTnfaptsXTvoC+cda20Xc0ez2d5Cj32SZ9Yf6KhRVO67BITOc+oAa9rX4ctlSICEI6y4Q0UEKOFDK1ADMDdK6Fn8nBZwyFxJ+45xmBj706nL9Mz3x04M7K2xxbkt+0/syjtAPWCXYBx+fExKOo5RVcuobxijK9rJ0PStAw5emIGRTwOzF5GK/TpSls7+ZD+sJPjqM3eWIrpYvkeZMAOy9Pfqn95yKx5X76/MUkw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com; dkim=pass header.d=intel.com; arc=none From: "Tian, Kevin" To: =?utf-8?B?UGF1IE1vbm7DqSwgUm9nZXI=?= , "xen-devel@lists.xenproject.org" CC: =?utf-8?B?UGF1IE1vbm7DqSwgUm9nZXI=?= Subject: RE: [PATCH v3] iommu/vtd: fix address translation for leaf entries Thread-Topic: [PATCH v3] iommu/vtd: fix address translation for leaf entries Thread-Index: AQHZjuA2oVnv7WacykC43mswHahgOK+MwIiw Date: Fri, 16 Jun 2023 01:09:29 +0000 Message-ID: References: <20230525080859.29859-1-roger.pau@citrix.com> In-Reply-To: <20230525080859.29859-1-roger.pau@citrix.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=intel.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: BN9PR11MB5276:EE_|DS0PR11MB7580:EE_ x-ms-office365-filtering-correlation-id: 117bfb58-19d3-4041-3bc7-08db6e0655cb x-ld-processed: 46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: yR1XHOPFSqDntfUL4Chn8I28pJCvhiCaycwmsUoGwfWWcb4vta3rgDWH+/0bxOZyyBHUPHT+vAwZftmmt/ceWV8bHywbhVykEjSiJX/fvTpqGk7+5+HyEFmMgrPq3n4JCFSSSLfpyhIeSc38x/WwWSNWbJt9Kf1ZctzeZcZW/fMmIHwvYRAGQZeq1FTZ33j0r5p6+5HTRe+522QdM8NIX+wVAEXM3FvOm1VUlVXnDHtPU+0XGsD/L9Lei4JIM/W4Ki6rMNy7R/1DgxnfpLYrVDEA2cvxNV8ogfaf/O7S0Jy6mrcNqqpjz4EucRhGwHr8+AuCc8Lvet/rMyMYWD9tSrqVj8w8SpjGL6sWPXM1/+5KAzYRjo4sHUVcp2UbgGHU9DOFrWFMwKPF8Q8Vx/iB9yCpgWQz47Qrw2RmybmvtQv8zY8MtFr4VwPdEbZSWITxsWDeh509LGXFXBwi4SHaTQtVzfT9HOPfBGKSnq3eqvqV4Y3VovNtuQs3AuWu1gGw6sRauOLrEspJvDRIfXO7gTAMcN9NqOxbGioDVzH4qOD1dRLjk/gx51YDqiK0RkrRe2sImy3vkmZYNNfezqWhAVJ1gPeHAypGos3b5dlyM2ubWHWEjyhYyTqExVUqpqVb x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BN9PR11MB5276.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(136003)(396003)(376002)(39860400002)(366004)(346002)(451199021)(186003)(38070700005)(2906002)(33656002)(38100700002)(4744005)(86362001)(26005)(83380400001)(55016003)(6506007)(9686003)(122000001)(82960400001)(66446008)(4326008)(316002)(71200400001)(66476007)(64756008)(76116006)(66556008)(7696005)(66946007)(478600001)(41300700001)(8676002)(5660300002)(110136005)(8936002)(52536014);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?eW1rTU1MaXpmcE1rZEZub2pvMWx6ZXdRYmdUVXRvWW0zWDJESHZVVUNMTFFl?= =?utf-8?B?cXRrUlRKM3I3enZ5dXJrRHVQbGE5ZTk4NVp6NUI0QUY0amRwcDc1ZHFaTmc1?= =?utf-8?B?S2RPaUdWaVZ2SUEzM1lubElxdzZjNUowZ1ZjTDA5Zms4alZ1S3JxYWZaSlBC?= =?utf-8?B?ZFhrL0FzQWN2UWg3NkNjOXlIVWVRclVyU3pkdXhvd0lpSFVjd3k2UGpDVzVJ?= =?utf-8?B?UWcvUnF0WkNoZU9pMHBmMVp5TEQ1RmRaQitvYVNzSTQvWU8rS0NqeWJuZGZJ?= =?utf-8?B?ZVlwQ1pvSks0NFhNejFsb1VOZUFYMlFKdFdWRXh1d1FIeVRjYnBoemtmMXd6?= =?utf-8?B?ZkJSNUc5eFVDZEtIMVVYU0hIdEdUNXlOVmRFZ3lOMTUzaVJGUnQ3bXdSdXM1?= =?utf-8?B?OGQ4bnJiRlBob3Z6SmdzVVhLWkFUeUVwaENPKzdDTEIxWklmU2tCeUJ6OUUw?= =?utf-8?B?YU1XZ1hJamlib0lrSXU2K0lBZnd5aDNBZ2JrU20yZW4wOU5ObVo3NURpZS9v?= =?utf-8?B?M1I0Z0liVm9zNUovWGpNOUY0Yk1vMDRxL0ZmenI0dU44c1dFdHNWcnI0NTl5?= =?utf-8?B?aW1rclB2NFNFY3dsaGZTYmpaQTRHTm9seU54TVQvWnEydmJwZmZFaHZTN0dz?= =?utf-8?B?bkkvYXZMUDNaY2daYS94ZGhTcm9JcWNFamY1REMxZGFQdTJRSGVTYVVvSXBl?= =?utf-8?B?aUQ2ZlFWY0V5TlFvNlo3SitIVHZubm5saWZkbVNWMFMrVVEvemtOQ3pRRnR0?= =?utf-8?B?b1ZGS2FIOFdVbjFVWTVTZXBBbDR5SDJDYlNkc093NnFQbGM0RzhtbjNTOURM?= =?utf-8?B?Q2p2dXg5T0JjeXFWTGY3SHJIOGR0RzJwdGMyK0RQZGRwMFFOTzQ2RURNU1Rr?= =?utf-8?B?OU0yTnRpVXhmVHV1WFBhNEhpbnpIUzV2cnR6UTZUNmtrUVZBaWZROERhU3BW?= =?utf-8?B?RzhhdGxwR3FWalFVVkZoMTRJOXROTThyc2NZNWVqYnptUlFyRGVFNDQ2Qi9Z?= =?utf-8?B?NnhsNFF6Y3JFSTlOZVJRcGNBbHZGTzNQRjZMSUpIMDRKTXYxVTZ5TGYrZmV0?= =?utf-8?B?cXhyclFRbitLamtRNWo4Y0U5a0ZZRTk5NW85dnM2UFdHZ1Z6aGJrenZyL3FP?= =?utf-8?B?eWplVjNUYzAvanIrZURHdm5rZG80eXdOcStXOFV2QnlvcEJwVHVzOEpTS1RK?= =?utf-8?B?ZE96OFhaREdwb1ljcXlPUWkrZmxVdHlVVkJoUS82SU50Y2MvdXJIRXVaUERy?= =?utf-8?B?ZWtvZlYxSEduNEFxUTNtR3ZNZWt1SG10SHFTalZKcW5XdHhqRnljUEpyb3p2?= =?utf-8?B?YnVYVjRPcGJTYnBaQWx6MVVTcGFhdG04cy95UjJPd3MrRlhHTU9uWHpjaFA1?= =?utf-8?B?eUJvRE1oWkpTd3lMOHRRVVQ2bllMc2J4RWhMTHd2dHcwWExRTk9sQ3lVQ0Er?= =?utf-8?B?OTh0eWZHamhpajJObHRrTHJJMUpzei9ydklrbElYTUEvMWk4MVpZS2lJMVdL?= =?utf-8?B?UjFBd1lYVVUvTXRRWmZSSW1LSzd4b1NqSzRFaUxRcDV6ZWJ1QlNYSWZ6UlZ5?= =?utf-8?B?TmRKTXNCaHUyNzRjVk9zM3V4WGlwSVpONEFzbkVpNzhxUlNUSDRrVi9nWXdW?= =?utf-8?B?QzVTbUFGZXRsWWtYKzhybENzZnhYeTQ5aTNKdEIvN2pmWkorNFpRbU1Kdm11?= =?utf-8?B?MG53djBvRnVrZjhWNlNreU4vd3R4L1MzM0p2Uk5xMjNlaEpocEU4bDRIM1cy?= =?utf-8?B?NEs0dDhqaEZMRXF6YnhnK3hDQkFEOGNEZ2cvQkpSZ1Q4YjVscnc4MU51cS82?= =?utf-8?B?V0JEaUtOMjdaREZ0TnkwVUc3anpDQ2x5UVIxbXRKT2NEeXUxQmI5NUNvYitr?= =?utf-8?B?Tm9WcFNMUDQyaTF5aThyZyt2dGZGR3BTZU5hV0tLb09tdUVQUm41WFlocHZ3?= =?utf-8?B?V0pWV3JqWXZLR0VUOTlyRFdjejk1azd0YjFJWFYvMEZtN0lzSTY0MGw4T01r?= =?utf-8?B?T2taajVwUEc2OWVhNUtLVmRSalNDT0RGYTdKTTdlUDVqU0s3dXlzTnV3MG1Q?= =?utf-8?B?U3htMW5oQUtQL2V5QUtWWVdWckFkNWF5cjlEeXJ3VHQzMjlrSkJXL1VKSm5I?= =?utf-8?Q?jylS1ztauJH2JJYpcOygb0uch?= Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: BN9PR11MB5276.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 117bfb58-19d3-4041-3bc7-08db6e0655cb X-MS-Exchange-CrossTenant-originalarrivaltime: 16 Jun 2023 01:09:29.0780 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 46c98d88-e344-4ed4-8496-4ed7712e255d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: AWLqaefBQVwqgXbzI5eL2+aHsx5gtdjTJIFxHmal+ypf0BwadVWF9U6H8EHZM+tyX3bRfsDwDtK2OaQCdafHtw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS0PR11MB7580 X-OriginatorOrg: intel.com PiBGcm9tOiBSb2dlciBQYXUgTW9ubmUgPHJvZ2VyLnBhdUBjaXRyaXguY29tPg0KPiBTZW50OiBU aHVyc2RheSwgTWF5IDI1LCAyMDIzIDQ6MDkgUE0NCj4gDQo+IEZpeCB0d28gaXNzdWVzIHJlbGF0 ZWQgdG8gbGVhZiBhZGRyZXNzIGxvb2t1cHMgaW4gVlQtZDoNCj4gDQo+ICogV2hlbiB0cmFuc2xh dGluZyBhbiBhZGRyZXNzIHRoYXQgZmFsbHMgaW5zaWRlIG9mIGEgc3VwZXJwYWdlIGluIHRoZQ0K PiAgIElPTU1VIHBhZ2UgdGFibGVzIHRoZSBmZXRjaGluZyBvZiB0aGUgUFRFIHZhbHVlIHdhc24n dCBtYXNraW5nIG9mIHRoZQ0KPiAgIGNvbnRpZ3VvdXMgcmVsYXRlZCBkYXRhLCB3aGljaCBjYXVz ZWQgdGhlIHJldHVybmVkIGRhdGEgdG8gYmUNCj4gICBjb3JydXB0IGFzIGl0IHdvdWxkIGNvbnRh aW4gYml0cyB0aGF0IHRoZSBjYWxsZXIgd291bGQgaW50ZXJwcmV0IGFzDQo+ICAgcGFydCBvZiB0 aGUgYWRkcmVzcy4NCj4gDQo+ICogV2hlbiB0aGUgcmVxdWVzdGVkIGxlYWYgYWRkcmVzcyB3YXNu J3QgbWFwcGVkIGJ5IGEgc3VwZXJwYWdlIHRoZQ0KPiAgIHJldHVybmVkIHZhbHVlIHdvdWxkbid0 IGhhdmUgYW55IG9mIHRoZSBsb3cgMTIgYml0cyBzZXQsIHRodXMgbWlzc2luZw0KPiAgIHRoZSBw ZXJtaXNzaW9uIGJpdHMgZXhwZWN0ZWQgYnkgdGhlIGNhbGxlci4NCj4gDQo+IFRha2UgdGhlIG9w cG9ydHVuaXR5IHRvIGFsc28gYWRqdXN0IHRoZSBmdW5jdGlvbiBjb21tZW50IHRvIG5vdGUgdGhh dA0KPiB3aGVuIHJldHVybmluZyB0aGUgZnVsbCBQVEUgdGhlIGJpdHMgYWJvdmUgUEFERFJfQklU UyBhcmUgcmVtb3ZlZC4NCj4gDQo+IEZpeGVzOiBjNzFlNTU1MDFhNjEgKCdWVC1kOiBoYXZlIGNh bGxlcnMgc3BlY2lmeSB0aGUgdGFyZ2V0IGxldmVsIGZvciBwYWdlIHRhYmxlDQo+IHdhbGtzJykN Cj4gU2lnbmVkLW9mZi1ieTogUm9nZXIgUGF1IE1vbm7DqSA8cm9nZXIucGF1QGNpdHJpeC5jb20+ DQoNClJldmlld2VkLWJ5OiBLZXZpbiBUaWFuIDxrZXZpbi50aWFuQGludGVsLmNvbT4NCg== From xen-devel-bounces@lists.xenproject.org Fri Jun 16 04:38:09 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 16 Jun 2023 04:38:09 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549981.858824 (Exim 4.92) (envelope-from ) id 1qA1De-00036w-CL; Fri, 16 Jun 2023 04:37:54 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549981.858824; Fri, 16 Jun 2023 04:37:54 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qA1De-00036o-7W; Fri, 16 Jun 2023 04:37:54 +0000 Received: by outflank-mailman (input) for mailman id 549981; Fri, 16 Jun 2023 04:37:53 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qA1Dd-00036e-4O; Fri, 16 Jun 2023 04:37:53 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qA1Dd-0000EM-09; Fri, 16 Jun 2023 04:37:53 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qA1Dc-0003aK-Lh; Fri, 16 Jun 2023 04:37:52 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qA1Dc-0005I9-Ko; Fri, 16 Jun 2023 04:37:52 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=VhUW9TRP93o9E5ov5lBX+W2KRtjURZnTaUBT4f+NjDg=; b=dMr6XVPwIxsI+SlSv2KiYiKFVv aPoYQJBsn+kkwFmeB2ADe8NR/ijTqXUFt+gC08/kKpVCbErTccJXvr8m/5xYJ2K/U6Z8/rdHPwbeC 3DYYKzkvJjnD4ihgSRAMotPXkmWzUUVb1tar3eu9aStAGDi+K7d4vLpefzfwzp8NvfWo=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [linux-5.4 test] 181448: regressions - trouble: blocked/broken/fail/pass X-Osstest-Failures: linux-5.4:test-armhf-armhf-xl::broken:regression linux-5.4:build-amd64-pvops:kernel-build:fail:regression linux-5.4:build-i386-pvops:kernel-build:fail:regression linux-5.4:build-arm64-pvops:kernel-build:fail:regression linux-5.4:test-amd64-amd64-libvirt-vhd:guest-start/debian.repeat:fail:regression linux-5.4:test-armhf-armhf-xl:host-install(5):broken:heisenbug linux-5.4:test-amd64-i386-xl:xen-install:fail:heisenbug linux-5.4:test-amd64-i386-libvirt:xen-install:fail:heisenbug linux-5.4:test-armhf-armhf-libvirt-qcow2:guest-start:fail:heisenbug linux-5.4:test-armhf-armhf-libvirt-raw:guest-start:fail:heisenbug linux-5.4:test-amd64-i386-freebsd10-i386:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-libvirt-raw:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-pair:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-qemut-rhel6hvm-amd:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-qemut-rhel6hvm-intel:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-qemuu-rhel6hvm-amd:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-qemuu-rhel6hvm-intel:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-pvshim:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-qemut-debianhvm-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-qemut-debianhvm-i386-xsm:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-qemut-win7-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-qemut-ws16-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-shadow:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-vhd:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-xsm:build-check(1):blocked:nonblocking linux-5.4:test-arm64-arm64-examine:build-check(1):blocked:nonblocking linux-5.4:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking linux-5.4:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking linux-5.4:test-arm64-arm64-xl:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-examine:build-check(1):blocked:nonblocking linux-5.4:test-amd64-coresched-i386-xl:build-check(1):blocked:nonblocking linux-5.4:test-amd64-coresched-amd64-xl:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-xsm:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-shadow:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-rtds:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qemut-ws16-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qemut-win7-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qemut-debianhvm-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qcow2:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-dom0pvh-xl-amd:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-pvshim:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-dom0pvh-xl-intel:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-pvhv2-intel:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-examine:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-examine-bios:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-examine-uefi:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-pvhv2-amd:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-multivcpu:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-credit2:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-pair:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-credit1:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-pygrub:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-qemuu-freebsd11-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-qemuu-freebsd12-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-qemuu-nested-amd:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-qemuu-nested-intel:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-examine-bios:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-examine-uefi:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-freebsd10-amd64:build-check(1):blocked:nonblocking linux-5.4:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking linux-5.4:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking linux-5.4:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking linux-5.4:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking linux-5.4:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-xl-multivcpu:guest-start/debian.repeat:fail:nonblocking linux-5.4:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-multivcpu:guest-start:fail:nonblocking linux-5.4:test-amd64-i386-libvirt-pair:xen-install/dst_host:fail:nonblocking linux-5.4:test-amd64-i386-libvirt-raw:xen-install:fail:nonblocking linux-5.4:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking linux-5.4:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking linux-5.4:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking linux-5.4:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking linux-5.4:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking linux-5.4:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-credit2:guest-start:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-rtds:guest-start/debian.repeat:fail:nonblocking linux-5.4:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: linux=61a2f83e4762ee0c766f86944e612305f5888bcb X-Osstest-Versions-That: linux=f568a20f058fa1e37069cff4aac4187c1650a0e9 From: osstest service owner Date: Fri, 16 Jun 2023 04:37:52 +0000 flight 181448 linux-5.4 real [real] http://logs.test-lab.xenproject.org/osstest/logs/181448/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: test-armhf-armhf-xl broken build-amd64-pvops 6 kernel-build fail REGR. vs. 181363 build-i386-pvops 6 kernel-build fail REGR. vs. 181363 build-arm64-pvops 6 kernel-build fail REGR. vs. 181363 test-amd64-amd64-libvirt-vhd 19 guest-start/debian.repeat fail in 181434 REGR. vs. 181363 Tests which are failing intermittently (not blocking): test-armhf-armhf-xl 5 host-install(5) broken pass in 181434 test-amd64-i386-xl 7 xen-install fail in 181434 pass in 181425 test-amd64-i386-libvirt 7 xen-install fail in 181434 pass in 181425 test-armhf-armhf-libvirt-qcow2 13 guest-start fail in 181434 pass in 181448 test-armhf-armhf-libvirt-raw 13 guest-start fail pass in 181434 Tests which did not succeed, but are not blocking: test-amd64-i386-freebsd10-i386 1 build-check(1) blocked n/a test-amd64-i386-libvirt 1 build-check(1) blocked n/a test-amd64-i386-libvirt-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-raw 1 build-check(1) blocked n/a test-amd64-i386-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-i386-pair 1 build-check(1) blocked n/a test-amd64-i386-qemut-rhel6hvm-amd 1 build-check(1) blocked n/a test-amd64-i386-qemut-rhel6hvm-intel 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-amd 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-intel 1 build-check(1) blocked n/a test-amd64-i386-xl 1 build-check(1) blocked n/a test-amd64-i386-xl-pvshim 1 build-check(1) blocked n/a test-amd64-i386-xl-qemut-debianhvm-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemut-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-i386-xl-qemut-win7-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemut-ws16-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-xl-xsm 1 build-check(1) blocked n/a test-arm64-arm64-examine 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-raw 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-xsm 1 build-check(1) blocked n/a test-arm64-arm64-xl 1 build-check(1) blocked n/a test-amd64-i386-examine 1 build-check(1) blocked n/a test-amd64-coresched-i386-xl 1 build-check(1) blocked n/a test-amd64-coresched-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-shadow 1 build-check(1) blocked n/a test-amd64-amd64-xl-rtds 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemut-ws16-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemut-win7-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemut-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemut-debianhvm-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qcow2 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-amd 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvshim 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-intel 1 build-check(1) blocked n/a test-amd64-amd64-examine 1 build-check(1) blocked n/a test-amd64-amd64-examine-bios 1 build-check(1) blocked n/a test-amd64-amd64-examine-uefi 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-amd 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-pair 1 build-check(1) blocked n/a test-amd64-amd64-xl-multivcpu 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-vhd 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit2 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-amd64-pair 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit1 1 build-check(1) blocked n/a test-amd64-amd64-pygrub 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd11-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd12-amd64 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-intel 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-i386-examine-bios 1 build-check(1) blocked n/a test-amd64-i386-examine-uefi 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-amd64 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit1 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit2 1 build-check(1) blocked n/a test-arm64-arm64-xl-thunderx 1 build-check(1) blocked n/a test-arm64-arm64-xl-vhd 1 build-check(1) blocked n/a test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a test-armhf-armhf-xl-multivcpu 18 guest-start/debian.repeat fail in 181425 like 181363 test-amd64-i386-libvirt 15 migrate-support-check fail in 181425 never pass test-armhf-armhf-xl-multivcpu 14 guest-start fail in 181434 like 181336 test-amd64-i386-libvirt-pair 11 xen-install/dst_host fail in 181434 like 181354 test-amd64-i386-libvirt-raw 7 xen-install fail in 181434 like 181363 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail in 181434 like 181363 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop fail in 181434 like 181363 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop fail in 181434 like 181363 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail in 181434 like 181363 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail in 181434 like 181363 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail in 181434 like 181363 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail in 181434 like 181363 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop fail in 181434 like 181363 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop fail in 181434 like 181363 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail in 181434 like 181363 test-amd64-i386-xl-pvshim 14 guest-start fail in 181434 never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail in 181434 never pass test-amd64-i386-libvirt-xsm 15 migrate-support-check fail in 181434 never pass test-amd64-amd64-libvirt 15 migrate-support-check fail in 181434 never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail in 181434 never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail in 181434 never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail in 181434 never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail in 181434 never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail in 181434 never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail in 181434 never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail in 181434 never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail in 181434 never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail in 181434 never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail in 181434 never pass test-arm64-arm64-xl 15 migrate-support-check fail in 181434 never pass test-arm64-arm64-xl 16 saverestore-support-check fail in 181434 never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail in 181434 never pass test-armhf-armhf-xl-credit2 15 migrate-support-check fail in 181434 never pass test-armhf-armhf-xl-credit2 16 saverestore-support-check fail in 181434 never pass test-armhf-armhf-xl 15 migrate-support-check fail in 181434 never pass test-armhf-armhf-xl 16 saverestore-support-check fail in 181434 never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-check fail in 181434 never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail in 181434 never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail in 181434 never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail in 181434 never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail in 181434 never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail in 181434 never pass test-armhf-armhf-libvirt-raw 14 migrate-support-check fail in 181434 never pass test-armhf-armhf-xl-credit2 14 guest-start fail like 181354 test-armhf-armhf-libvirt 16 saverestore-support-check fail like 181363 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail like 181363 test-armhf-armhf-xl-rtds 18 guest-start/debian.repeat fail like 181363 test-armhf-armhf-xl-multivcpu 15 migrate-support-check fail never pass test-armhf-armhf-xl-multivcpu 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt 15 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 15 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 16 saverestore-support-check fail never pass test-armhf-armhf-xl-credit1 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 16 saverestore-support-check fail never pass test-armhf-armhf-xl-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 15 saverestore-support-check fail never pass test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 15 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 16 saverestore-support-check fail never pass version targeted for testing: linux 61a2f83e4762ee0c766f86944e612305f5888bcb baseline version: linux f568a20f058fa1e37069cff4aac4187c1650a0e9 Last test of basis 181363 2023-06-10 15:39:59 Z 5 days Testing same since 181425 2023-06-14 10:50:49 Z 1 days 3 attempts ------------------------------------------------------------ People who touched revisions under test: Ai Chao Alan Stern Alex Deucher Alexander Sverdlin Arnd Bergmann Bartosz Golaszewski Ben Hutchings Chia-I Wu Chris Paterson (CIP) David Jander David S. Miller David Sterba Dmitry Torokhov Eric Dumazet Fedor Pchelkin Florian Westphal Greg Kroah-Hartman Guenter Roeck Gustavo A. R. Silva Hangyu Hua Harshit Mogalapalli Ilya Dryomov Ismael Ferreras Morezuelas JaimeLiao Jakub Kicinski Jamal Hadi Salim Jens Axboe Jiri Slaby (SUSE) Jon Hunter Josef Bacik Jozsef Kadlecsik Kuniyuki Iwashima Linus Walleij Linux Kernel Functional Testing Luiz Augusto von Dentz Marc Kleine-Budde Mark Brown Martin Hundebøll Maxime Ripard Michael Chan Min Li Miquel Raynal Oleksij Rempel Pablo Neira Ayuso Paolo Abeni Paulo Alcantara (SUSE) Paulo Alcantara Qingfang DENG Randy Dunlap RenHai Rishabh Bhatnagar Ruihan Li Sasha Levin Shuah Khan Simon Wunderlich Somnath Kotur Stefan Ghinea Stephan Gerhold Steve French Sudip Mukherjee Sungwoo Kim Sven Eckelmann Takashi Iwai Tejun Heo Theodore Ts'o Tijs Van Buggenhout Uwe Kleine-König Ville Syrjälä Vladislav Efanov Wolfram Sang Xiubo Li Ying Hsu YouChing Lin Zixuan Fu jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops fail build-arm64-pvops fail build-armhf-pvops pass build-i386-pvops fail test-amd64-amd64-xl blocked test-amd64-coresched-amd64-xl blocked test-arm64-arm64-xl blocked test-armhf-armhf-xl broken test-amd64-i386-xl blocked test-amd64-coresched-i386-xl blocked test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm blocked test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm blocked test-amd64-amd64-xl-qemut-debianhvm-i386-xsm blocked test-amd64-i386-xl-qemut-debianhvm-i386-xsm blocked test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-i386-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-amd64-libvirt-xsm blocked test-arm64-arm64-libvirt-xsm blocked test-amd64-i386-libvirt-xsm blocked test-amd64-amd64-xl-xsm blocked test-arm64-arm64-xl-xsm blocked test-amd64-i386-xl-xsm blocked test-amd64-amd64-qemuu-nested-amd blocked test-amd64-amd64-xl-pvhv2-amd blocked test-amd64-i386-qemut-rhel6hvm-amd blocked test-amd64-i386-qemuu-rhel6hvm-amd blocked test-amd64-amd64-dom0pvh-xl-amd blocked test-amd64-amd64-xl-qemut-debianhvm-amd64 blocked test-amd64-i386-xl-qemut-debianhvm-amd64 blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-freebsd10-amd64 blocked test-amd64-amd64-qemuu-freebsd11-amd64 blocked test-amd64-amd64-qemuu-freebsd12-amd64 blocked test-amd64-amd64-xl-qemuu-ovmf-amd64 blocked test-amd64-i386-xl-qemuu-ovmf-amd64 blocked test-amd64-amd64-xl-qemut-win7-amd64 blocked test-amd64-i386-xl-qemut-win7-amd64 blocked test-amd64-amd64-xl-qemuu-win7-amd64 blocked test-amd64-i386-xl-qemuu-win7-amd64 blocked test-amd64-amd64-xl-qemut-ws16-amd64 blocked test-amd64-i386-xl-qemut-ws16-amd64 blocked test-amd64-amd64-xl-qemuu-ws16-amd64 blocked test-amd64-i386-xl-qemuu-ws16-amd64 blocked test-armhf-armhf-xl-arndale pass test-amd64-amd64-examine-bios blocked test-amd64-i386-examine-bios blocked test-amd64-amd64-xl-credit1 blocked test-arm64-arm64-xl-credit1 blocked test-armhf-armhf-xl-credit1 pass test-amd64-amd64-xl-credit2 blocked test-arm64-arm64-xl-credit2 blocked test-armhf-armhf-xl-credit2 fail test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-amd64-examine blocked test-arm64-arm64-examine blocked test-armhf-armhf-examine pass test-amd64-i386-examine blocked test-amd64-i386-freebsd10-i386 blocked test-amd64-amd64-qemuu-nested-intel blocked test-amd64-amd64-xl-pvhv2-intel blocked test-amd64-i386-qemut-rhel6hvm-intel blocked test-amd64-i386-qemuu-rhel6hvm-intel blocked test-amd64-amd64-dom0pvh-xl-intel blocked test-amd64-amd64-libvirt blocked test-armhf-armhf-libvirt pass test-amd64-i386-libvirt blocked test-amd64-amd64-xl-multivcpu blocked test-armhf-armhf-xl-multivcpu pass test-amd64-amd64-pair blocked test-amd64-i386-pair blocked test-amd64-amd64-libvirt-pair blocked test-amd64-i386-libvirt-pair blocked test-amd64-amd64-xl-pvshim blocked test-amd64-i386-xl-pvshim blocked test-amd64-amd64-pygrub blocked test-armhf-armhf-libvirt-qcow2 pass test-amd64-amd64-xl-qcow2 blocked test-arm64-arm64-libvirt-raw blocked test-armhf-armhf-libvirt-raw fail test-amd64-i386-libvirt-raw blocked test-amd64-amd64-xl-rtds blocked test-armhf-armhf-xl-rtds fail test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-amd64-xl-shadow blocked test-amd64-i386-xl-shadow blocked test-arm64-arm64-xl-thunderx blocked test-amd64-amd64-examine-uefi blocked test-amd64-i386-examine-uefi blocked test-amd64-amd64-libvirt-vhd blocked test-arm64-arm64-xl-vhd blocked test-armhf-armhf-xl-vhd pass test-amd64-i386-xl-vhd blocked ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary broken-job test-armhf-armhf-xl broken broken-step test-armhf-armhf-xl host-install(5) Not pushing. (No revision log; it would be 1380 lines long.) From xen-devel-bounces@lists.xenproject.org Fri Jun 16 05:42:32 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 16 Jun 2023 05:42:32 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549989.858834 (Exim 4.92) (envelope-from ) id 1qA2Du-0002FG-29; Fri, 16 Jun 2023 05:42:14 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549989.858834; Fri, 16 Jun 2023 05:42:14 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qA2Dt-0002F9-UU; Fri, 16 Jun 2023 05:42:13 +0000 Received: by outflank-mailman (input) for mailman id 549989; Fri, 16 Jun 2023 05:42:12 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qA2Ds-0002Ez-Nt; Fri, 16 Jun 2023 05:42:12 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qA2Ds-0002ER-LL; Fri, 16 Jun 2023 05:42:12 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qA2Ds-0006FG-6L; Fri, 16 Jun 2023 05:42:12 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qA2Ds-0004i2-5j; Fri, 16 Jun 2023 05:42:12 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=wlYVnoingwKQlD9FPogMqjwYpii569OpV+NRucUtWwM=; b=ZvvrgFpWzGWjsoRmt7/zp5XUJj sCQcPqUkwg3Ed+6QV3BZi8PLyF/cC2nQWX/DpIO5jNZNXXVkBTMzWPf77dildMupk8nUVecDHoAXT 4iJdrheP9lAWtGuq52CQaz1+wO3YLoujn0I1lVAoK6c/gWzd1GMzXaSoVLcKwsFr/ik0=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [qemu-mainline test] 181461: regressions - FAIL X-Osstest-Failures: qemu-mainline:build-amd64-xsm:xen-build:fail:regression qemu-mainline:build-arm64:xen-build:fail:regression qemu-mainline:build-arm64-xsm:xen-build:fail:regression qemu-mainline:build-amd64:xen-build:fail:regression qemu-mainline:build-i386:xen-build:fail:regression qemu-mainline:build-i386-xsm:xen-build:fail:regression qemu-mainline:build-armhf:xen-build:fail:regression qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-i386:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:build-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:build-arm64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:build-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:build-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pygrub:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking X-Osstest-Versions-This: qemuu=7efd65423ab22e6f5890ca08ae40c84d6660242f X-Osstest-Versions-That: qemuu=6972ef1440a9d685482d78672620a7482f2bd09a From: osstest service owner Date: Fri, 16 Jun 2023 05:42:12 +0000 flight 181461 qemu-mainline real [real] http://logs.test-lab.xenproject.org/osstest/logs/181461/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-amd64-xsm 6 xen-build fail REGR. vs. 180691 build-arm64 6 xen-build fail REGR. vs. 180691 build-arm64-xsm 6 xen-build fail REGR. vs. 180691 build-amd64 6 xen-build fail REGR. vs. 180691 build-i386 6 xen-build fail REGR. vs. 180691 build-i386-xsm 6 xen-build fail REGR. vs. 180691 build-armhf 6 xen-build fail REGR. vs. 180691 Tests which did not succeed, but are not blocking: test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-xl-xsm 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-raw 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-xsm 1 build-check(1) blocked n/a test-arm64-arm64-xl 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit1 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit2 1 build-check(1) blocked n/a test-arm64-arm64-xl-thunderx 1 build-check(1) blocked n/a test-arm64-arm64-xl-vhd 1 build-check(1) blocked n/a test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a test-armhf-armhf-libvirt 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-qcow2 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-raw 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a test-armhf-armhf-xl-arndale 1 build-check(1) blocked n/a test-armhf-armhf-xl-multivcpu 1 build-check(1) blocked n/a test-armhf-armhf-xl-rtds 1 build-check(1) blocked n/a test-armhf-armhf-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-amd 1 build-check(1) blocked n/a test-amd64-i386-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-raw 1 build-check(1) blocked n/a test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-i386 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-amd64 1 build-check(1) blocked n/a test-amd64-coresched-i386-xl 1 build-check(1) blocked n/a test-amd64-coresched-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-xsm 1 build-check(1) blocked n/a build-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-shadow 1 build-check(1) blocked n/a test-amd64-amd64-xl-rtds 1 build-check(1) blocked n/a build-arm64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a build-armhf-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a build-i386-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-amd 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-pair 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-qcow2 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-vhd 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvshim 1 build-check(1) blocked n/a test-amd64-amd64-pair 1 build-check(1) blocked n/a test-amd64-amd64-pygrub 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-intel 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd11-amd64 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd12-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-multivcpu 1 build-check(1) blocked n/a test-amd64-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit1 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit1 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit2 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-intel 1 build-check(1) blocked n/a test-amd64-i386-xl 1 build-check(1) blocked n/a test-amd64-i386-xl-pvshim 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a version targeted for testing: qemuu 7efd65423ab22e6f5890ca08ae40c84d6660242f baseline version: qemuu 6972ef1440a9d685482d78672620a7482f2bd09a Last test of basis 180691 2023-05-17 10:45:22 Z 29 days Failing since 180699 2023-05-18 07:21:24 Z 28 days 106 attempts Testing same since 181419 2023-06-14 05:08:14 Z 2 days 8 attempts ------------------------------------------------------------ People who touched revisions under test: Afonso Bordado Akihiko Odaki Akihiro Suda Alex Bennée Alex Williamson Alexander Bulekov Alexander Graf Alexander Ivanov Alistair Francis Anastasia Belova Andrea Bolognani Andreas Schwab Andrew Jeffery Ani Sinha Ani Sinha Anthony PERARD Anton Johansson Antonio Caggiano BALATON Zoltan Bastian Koppelmann Bernhard Beschow Bin Meng Brian Cain Brice Goglin Camilla Conte Carlos Santos Christian Schoenebeck Chuck Zmudzinski Cindy Lu Clément Chigot Corey Minyard Cornelia Huck Cédric Le Goater Cédric Le Goater Daniel Henrique Barboza Daniel Henrique Barboza Daniel P. Berrangé Daniil Kovalev David Hildenbrand David Woodhouse Emanuele Giuseppe Esposito Enze Li Eric Auger Eric Blake Eric DeVolder Erico Nunes Eugenio Pérez Fabiano Rosas Fan Ni Fiona Ebner Francesco Cagnin Francisco Iglesias Frederic Barrat Gavin Shan Gregory Price Gregory Price Hanna Czenczek Hao Zeng Hawkins Jiawei Himanshu Chauhan Igor Mammedov Ilya Leoshkevich Ira Weiny Ivan Klokov Jagannathan Raman Jason Wang Jean-Louis Dupond Jean-Philippe Brucker Jiaxun Yang Joao Martins John Snow Jonathan Cameron Juan Quintela Junqiang Wang Kevin Wolf Laurent Vivier Lei Yang Leonardo Bras Maksim Davydov Marc-André Lureau Marcin Juszkiewicz Marco Liebel Mark Cave-Ayland Markus Armbruster Matheus Tavares Bernardino Mattias Nissler Mauro Matteo Cascella Max Fritz Mayuresh Chitale Michael S. Tsirkin Michael Tokarev Michal Privoznik Milan Zamazal Mostafa Saleh Nicholas Piggin Nicolas Saenz Julienne Niek Linnenbank Niklas Cassel Palmer Dabbelt Paolo Bonzini Patrick Venture Peter Maydell Peter Xu Philippe Mathieu-Daudé Philippe Mathieu-Daudé qianfan Zhao Raghu H Rene Engel Richard Henderson Richard Purdie Ricky Zhou Ryan Wendland Sebastian Ott Sergio Lopez Sid Manning Song Gao Stefan Hajnoczi Stefano Garzarella Steve Sistare Sunil V L Taylor Simpson Thomas Huth Thomas Weißschuh timothee.cocault@gmail.com Timothée Cocault Tommy Wu Vikram Garhwal Viktor Prutyanov Vitaly Cheptsov Vivek Kasireddy Vladimir Sementsov-Ogievskiy Volker Rümelin Weiwei Li Xiao Wang Xinyu Li Yin Wang Zeng Hao Zhenyu Zhang Zhenzhong Duan Zhuojia Shen jobs: build-amd64-xsm fail build-arm64-xsm fail build-i386-xsm fail build-amd64 fail build-arm64 fail build-armhf fail build-i386 fail build-amd64-libvirt blocked build-arm64-libvirt blocked build-armhf-libvirt blocked build-i386-libvirt blocked build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl blocked test-amd64-coresched-amd64-xl blocked test-arm64-arm64-xl blocked test-armhf-armhf-xl blocked test-amd64-i386-xl blocked test-amd64-coresched-i386-xl blocked test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-i386-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-amd64-libvirt-xsm blocked test-arm64-arm64-libvirt-xsm blocked test-amd64-i386-libvirt-xsm blocked test-amd64-amd64-xl-xsm blocked test-arm64-arm64-xl-xsm blocked test-amd64-i386-xl-xsm blocked test-amd64-amd64-qemuu-nested-amd blocked test-amd64-amd64-xl-pvhv2-amd blocked test-amd64-i386-qemuu-rhel6hvm-amd blocked test-amd64-amd64-dom0pvh-xl-amd blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-freebsd10-amd64 blocked test-amd64-amd64-qemuu-freebsd11-amd64 blocked test-amd64-amd64-qemuu-freebsd12-amd64 blocked test-amd64-amd64-xl-qemuu-ovmf-amd64 blocked test-amd64-i386-xl-qemuu-ovmf-amd64 blocked test-amd64-amd64-xl-qemuu-win7-amd64 blocked test-amd64-i386-xl-qemuu-win7-amd64 blocked test-amd64-amd64-xl-qemuu-ws16-amd64 blocked test-amd64-i386-xl-qemuu-ws16-amd64 blocked test-armhf-armhf-xl-arndale blocked test-amd64-amd64-xl-credit1 blocked test-arm64-arm64-xl-credit1 blocked test-armhf-armhf-xl-credit1 blocked test-amd64-amd64-xl-credit2 blocked test-arm64-arm64-xl-credit2 blocked test-armhf-armhf-xl-credit2 blocked test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-freebsd10-i386 blocked test-amd64-amd64-qemuu-nested-intel blocked test-amd64-amd64-xl-pvhv2-intel blocked test-amd64-i386-qemuu-rhel6hvm-intel blocked test-amd64-amd64-dom0pvh-xl-intel blocked test-amd64-amd64-libvirt blocked test-armhf-armhf-libvirt blocked test-amd64-i386-libvirt blocked test-amd64-amd64-xl-multivcpu blocked test-armhf-armhf-xl-multivcpu blocked test-amd64-amd64-pair blocked test-amd64-i386-pair blocked test-amd64-amd64-libvirt-pair blocked test-amd64-i386-libvirt-pair blocked test-amd64-amd64-xl-pvshim blocked test-amd64-i386-xl-pvshim blocked test-amd64-amd64-pygrub blocked test-armhf-armhf-libvirt-qcow2 blocked test-amd64-amd64-xl-qcow2 blocked test-arm64-arm64-libvirt-raw blocked test-armhf-armhf-libvirt-raw blocked test-amd64-i386-libvirt-raw blocked test-amd64-amd64-xl-rtds blocked test-armhf-armhf-xl-rtds blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-amd64-xl-shadow blocked test-amd64-i386-xl-shadow blocked test-arm64-arm64-xl-thunderx blocked test-amd64-amd64-libvirt-vhd blocked test-arm64-arm64-xl-vhd blocked test-armhf-armhf-xl-vhd blocked test-amd64-i386-xl-vhd blocked ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 18679 lines long.) From xen-devel-bounces@lists.xenproject.org Fri Jun 16 06:36:20 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 16 Jun 2023 06:36:20 +0000 Received: from list by lists.xenproject.org with outflank-mailman.549996.858844 (Exim 4.92) (envelope-from ) id 1qA34A-0007g6-2V; Fri, 16 Jun 2023 06:36:14 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 549996.858844; Fri, 16 Jun 2023 06:36:14 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qA349-0007fz-Vr; Fri, 16 Jun 2023 06:36:13 +0000 Received: by outflank-mailman (input) for mailman id 549996; Fri, 16 Jun 2023 06:36:12 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qA348-0007ft-CF for xen-devel@lists.xenproject.org; Fri, 16 Jun 2023 06:36:12 +0000 Received: from EUR01-VE1-obe.outbound.protection.outlook.com (mail-ve1eur01on0613.outbound.protection.outlook.com [2a01:111:f400:fe1f::613]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 128df4fa-0c10-11ee-8611-37d641c3527e; Fri, 16 Jun 2023 08:36:07 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by AM0PR04MB6883.eurprd04.prod.outlook.com (2603:10a6:208:17f::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.25; Fri, 16 Jun 2023 06:36:02 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.039; Fri, 16 Jun 2023 06:36:02 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 128df4fa-0c10-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=hKW0G0jXBoKSz87fmpk4OqLWXHICiRh/FXIwcjbpZXvcZ0euxOlWey3h0OZDxPu1AxFiXQaXK2ooktNycAu8VwY9Ia3jGh84vznWyaf49ST5VoE3hzoGktxv6kBG8Arua6W5LO/JYvVOma4lR8Ur5VjbToq6jpoKexiRzEkOILbcmGgL3CqDY1Rkmf8FodIg3nNjnhgRWYuIZTB7f1i4KJz9xdgDtGoFUJwparnUi5WliljOTj2vscmaFbTUm4t2ZILM+o4V+bwA/etDpMD82XOW3a4MBUzIk6Rwto0WbQK7JeiTSEzZUzvq12lYgjf6So0TCFxLdzjBT2Lkb9r84w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=PKNMScvce+2jl5Vq9PHbxuEgQYwxAYNtD6/4s4nkuRs=; b=OZmww18hM8o0vdOamuixCOtsgGX1KlGJiN+Hx1sfOgQUKZ5vIpjvR3E/rcd/SDgd4FiQ6p8+oD9arpV+6J2J8mU3RWwZHzevKIlZQqC5RLXxnSWbgidNfO4MJOsmrszTxJS/LLoXbPDdYMWgx+Kbypzf1jK0iqrk6jEip1sxnCTpRHPUwUH0dAwOZfptPSruEexmh9eUfwL+WJTUmH0YgvC/cFZo69QtmABWv4qNcCTlHXrfZ3IGEi2bO+OAfKt8ykpKp7qfeGDyuc9RbUk3mjW2fHjHrBnW8pCY1ZVSgP5kQi76zPXcunMA1ptJO4fYYSZtp0Mm2QMpYEQ+loBIyA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=PKNMScvce+2jl5Vq9PHbxuEgQYwxAYNtD6/4s4nkuRs=; b=oDAQcb0torV6C6bRwvBCsjuEDReuvwU7HOKSI7+qNsQLWuj1Vlso9pgsEWl2GKK4ECJySRyVZ6k7lk6/dfcWGcynQ5SKWhpkToYMVgq35PcTzvbFCrO3xf+EelFBf9SwPhtQpVYeI76hgcIj5KML0I9rXOANHup6v2FlsZvFnIq2ritaMsCtZgBP2PvxZf6JKU7PJL4ZZrZE4lkL1mRZI/xgbS1SYXQKjBgkcB1zu5QwMI0UjtpPWqNJEW5jsVakEnGXIYdr6iWwSxHMpxwq6Kdythq+sEsdYz2el0IYMniiRVkrmBgvEc2FOmAM0q7x5giSBDqYHeyHOhoN0a9mQQ== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: Date: Fri, 16 Jun 2023 08:36:00 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 From: Jan Beulich Subject: [PATCH v2] x86/Xen: tidy xen-head.S To: "xen-devel@lists.xenproject.org" Cc: Juergen Gross , Boris Ostrovsky Content-Language: en-US Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR2P281CA0036.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:14::23) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|AM0PR04MB6883:EE_ X-MS-Office365-Filtering-Correlation-Id: 54f7dbd6-05bd-49e0-c7b5-08db6e33f46d X-LD-Processed: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: mIaJIeUMqjIRN43rePnn6YG3m2DBrGobJQPxI4fPnB2Ww0nMaMqWKJXoY7R0ju0cAO+o8hA6b+nnLyhO7YLLBEcKun5BRNwRmWuTzIDohk8VybBO8Q0CcFTx0hyuI4CvNPW3MxvMa7wItph+wBFgANbdh7cDWwz3y1RBEtMEfd7+nW4Hk8VjXiL+QlEJ1DQTai81LVHhc1MbP64XEB/QyOEISgvj7ko0fJe1zczR+Flgb2Forpl/NaLKFWpcxuQbD7N0AfzXfxx07u5ZH21LcYQMaoLkA25pvs1pxHBVNga1Q4j2Tu3Gi/stcfGbKWro0V6895n/7Jfgpnd+N6pRzAf1Hm+NoMhtPR2ku5kMie3CXz/8I4RERx9LJvstdIkPKg3Agr2++7NiVEVBrZpwsQhL+/9hQC/qZBuxFsSnIUWJ9+oQelNpzxbw+/a3t65lrNcRF3QH8W7QC1DOXBuHY3iEsoNLaSkerOJT+aHVUcp66lA2M7PfVZ6dbAGcdx24JWyRwM+uIk8I9Eq/dp336jSslpjBjrEf9Obnvt7SAeQpX+EJidp9VYnZonKQM4qthD4CT4Zj7dqKLleGtympyGPsT00HweMuprOfoDpN3JI= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(136003)(346002)(39860400002)(376002)(366004)(396003)(451199021)(5660300002)(83380400001)(38100700002)(2616005)(6506007)(2906002)(186003)(26005)(6512007)(478600001)(66556008)(66946007)(66476007)(316002)(6486002)(6916009)(8936002)(86362001)(41300700001)(31696002)(8676002)(4326008)(36756003)(31686004)(54906003)(84970400001)(66899021)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?Zm1ZWENHdnJVV0xwSGg1bjNKb3V0d0FQUmVyUGs3YzJNdVgzbFU1R3NNR3RT?= =?utf-8?B?MVkwSTVvOXpaR3NBTTlPaTFaVk9ZOXAwdXdSQjBmRWcxYTA1UWxWZXBhdURq?= =?utf-8?B?VlJLR0dJdENCUDB3UG0xSHZWdThxeENSUXJlQlBSZGQ3UVNiSGJxR1FRZjE4?= =?utf-8?B?bTZaRk1zakI0d1VoaCtYaTNVOEF2bjZEeCtPNjhySUszN3ZxWGQzQnRyQ2Nx?= =?utf-8?B?bzlwVGlZSitGdC9XY2RnQ3d6a3ROODJNK0ZoaVE4TDZiMFh2QUhuemZkbnhU?= =?utf-8?B?aXV0RTFRMldrT2MzR210OTd2cnI0dVRIL1RoSzd1cVR2UnRERDJOOVVlenZk?= =?utf-8?B?UkFqNVQ5ajcrTkgrTVdGVmxBc1lmZUZkR1FxVzFoMVlFRkFWUHF5NnVrditH?= =?utf-8?B?VmRhd3d6MjYwWW1TSmxCdndZOWR2aWN0VTlIQjJzcWVFR2phYlBuTHVOWTUr?= =?utf-8?B?Y2l1akdCU2xTVFBYNzVTYldSb2VPaEl4TmNzd1IySVRxc2FaMDdtN040dksy?= =?utf-8?B?L09Mc1BoRjd4MnRwUUxCTU5XRXhZcDRIMXpaNUJtc2N2TlBWdk92d2ZCb0tt?= =?utf-8?B?Vk5nY2tsT0VXcGdrZW5EdmJrWFpVMjYrMzZFQWFHV1NSdUV2Ums1N0hoZ0xo?= =?utf-8?B?Y3RBNjRRcGVCL2VJcm9nY2kzenA1VDJzWHZNQklqQVg3bDZ1UkJ3cWFNVmNr?= =?utf-8?B?UHBlS3VGNnBaRm5LUzhjRWc3THIvZTdLVkVvOFJhbDRlRGFMb05PL1pqeGlI?= =?utf-8?B?V2hpbExqeE0yRW1WNG1NZnRPNnBDN1p1UitRQk55a3Y4VjY1UnZGKzQ5RDJm?= =?utf-8?B?aTRBR1V1UjBVZ0ZSVmJuSUJOU0xrb3UwMW8rN3dkOUdIVkVySFZjOXJ6ZWtQ?= =?utf-8?B?aHhHRmEvSGtYeEI4QkJ3MDVYVFRWYlVmSlo5amJGaTZJalFUMTFUaXMxR3R6?= =?utf-8?B?UUo5VTRBZDVpd2o2eFBORUUzUFcyL3lkT2hKYlo2T2tTMVNiMjg2ZXZNQjVE?= =?utf-8?B?MnVkd08vdjZOT09aNWdhK0FXdVpqVEd1TVRrbVhCM2Y5QmVYOHR4MU5QR2ht?= =?utf-8?B?ZGpMd2VURUJyOHYzcG5PWVJHNzhKbU1zODZoRlVmM3B1NUpQNlcrMDBOWjJr?= =?utf-8?B?VVFOcENYTy8wTExjaFdsbzJwWUVNK0xzVW5TQnJYcVNVcEJlRzJHZWh6cjRa?= =?utf-8?B?T0ZLbDgxT0JXOVVCTUlVR0hXdkQwTGxBclF1cWZpWnBWWTdseWdpYmJrK2F0?= =?utf-8?B?NG1oeUJqUGo2QVVaNS9FazdoSkFvWGwrL1gxbndudEZSU1k4R1ovNTdQWnBO?= =?utf-8?B?VGlyWU1xcDMraUVnUnVtNmxub3VpUUpMRnQwRFhhdDBhT3hjQzJRM1V2V3FH?= =?utf-8?B?RDV0cHBucE90TWhaSXVUVXpMMndRRlQ0OWxURTM4ZVNMNmllYlIzMmg3VkUz?= =?utf-8?B?RkEvOWhSUG1Cd2pzWDc3ZlMyZE1vT2hDYzVWSllTWTlrK2NXUUt6SFdJNWRE?= =?utf-8?B?SFArYnFKaGhCckZIR3FxQ2VpaFoxR2ZZdkUrWHVtdThOV3NxWWlTbVNuU3Nt?= =?utf-8?B?REF2bDJIQ1dnTVdMcW9DeTh6TkhSai8vRHpYKy9XK285eVdYaEUzVkdodGxY?= =?utf-8?B?SDlkaTgyUkhKMUc5cXhpOFBKekY5MXk1aTJTYlAwRDdpWlpSd2FUWXk1VW9J?= =?utf-8?B?TDcxSlJBc2pxbTd0VmZsMVdaZlA1a1lGT2psL0xnSk9jRERDSWZHZXVuWlRM?= =?utf-8?B?bVkzaGpmKytJNEp2b0RBM2pURDlyZi93NDBIZ3VNazZVUklxSkRpWFdMdUov?= =?utf-8?B?cmdwYXRNaXRPTHVzb1V5RU9PTGE1Zlh0UTZacGZHeDZ0dFR3UUZEdUZnVXFS?= =?utf-8?B?N2hUU0VnNDQvMDVrUnBWcGpoaDBuMWdocUtLcXJPL1RKVHFjSi9kWXZFMTd1?= =?utf-8?B?ZE9BcDN1d2trbmRZaG01UjJBRE8vNUlmTktENlU0Nnk4cXdCWXVIL2l3d2tU?= =?utf-8?B?ZDlxOW93eHk3Qm5tYzV6QytoTnJkM3ZEcS9oVXlYM05NM3p1WWkydEJSQlJu?= =?utf-8?B?a3RHYUJ4ZjhONUVDR3JKdmR2dU0yVGVsRWRyc0xpSkNvU3VtVG80QVV3UEhH?= =?utf-8?Q?VxN2V7GOXuwKPgRSlhTP/7XRz?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 54f7dbd6-05bd-49e0-c7b5-08db6e33f46d X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Jun 2023 06:36:02.7513 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 0qlqc9fdBKfjsqhiLYSp0lA3nlYijR/+UoWygESF9Zu6Cjgy/Qq4f4XRYm881kVtPGsngCg9HeMSly9DxY0yyA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0PR04MB6883 First of all move PV-only ELF notes inside the XEN_PV conditional; note that - HV_START_LOW is dropped altogether, as it was meaningful for 32-bit PV only, - the 32-bit instance of VIRT_BASE is dropped, as it would be dead code once inside the conditional, - while PADDR_OFFSET is not exactly unused for PVH, it defaults to zero there, and the hypervisor (or tool stack) complains if it is present but VIRT_BASE isn't. Then have the "supported features" note actually report reality: All three of the features there are supported and/or applicable only in certain cases. Signed-off-by: Jan Beulich --- PAE_MODE, while in principle meaningful only for 32-bit PV, subtly affects the start_info structure handed to Dom0. I guess I'd prefer if that subtlety was first dealt with in the hypervisor, but it may well turn out that it needs leaving as is. SUSPEND_CANCEL is questionable as well: It was only ever consumed by xend. --- v2: Correct 32-bit non-PV mistakes. Drop HV_START_LOW. Also move VIRT_BASE, INIT_P2M, MOD_START_PFN, and PADDR_OFFSET. --- head.orig/arch/x86/xen/xen-head.S 2023-04-23 21:02:52.000000000 +0200 +++ head/arch/x86/xen/xen-head.S 2023-02-15 15:43:03.000000000 +0100 @@ -90,30 +90,35 @@ SYM_CODE_END(xen_cpu_bringup_again) ELFNOTE(Xen, XEN_ELFNOTE_GUEST_OS, .asciz "linux") ELFNOTE(Xen, XEN_ELFNOTE_GUEST_VERSION, .asciz "2.6") ELFNOTE(Xen, XEN_ELFNOTE_XEN_VERSION, .asciz "xen-3.0") -#ifdef CONFIG_X86_32 - ELFNOTE(Xen, XEN_ELFNOTE_VIRT_BASE, _ASM_PTR __PAGE_OFFSET) -#else +#ifdef CONFIG_XEN_PV ELFNOTE(Xen, XEN_ELFNOTE_VIRT_BASE, _ASM_PTR __START_KERNEL_map) /* Map the p2m table to a 512GB-aligned user address. */ ELFNOTE(Xen, XEN_ELFNOTE_INIT_P2M, .quad (PUD_SIZE * PTRS_PER_PUD)) -#endif -#ifdef CONFIG_XEN_PV ELFNOTE(Xen, XEN_ELFNOTE_ENTRY, _ASM_PTR startup_xen) -#endif - ELFNOTE(Xen, XEN_ELFNOTE_HYPERCALL_PAGE, _ASM_PTR hypercall_page) - ELFNOTE(Xen, XEN_ELFNOTE_FEATURES, - .ascii "!writable_page_tables|pae_pgdir_above_4gb") - ELFNOTE(Xen, XEN_ELFNOTE_SUPPORTED_FEATURES, - .long (1 << XENFEAT_writable_page_tables) | \ - (1 << XENFEAT_dom0) | \ - (1 << XENFEAT_linux_rsdp_unrestricted)) + ELFNOTE(Xen, XEN_ELFNOTE_FEATURES, .ascii "!writable_page_tables") ELFNOTE(Xen, XEN_ELFNOTE_PAE_MODE, .asciz "yes") - ELFNOTE(Xen, XEN_ELFNOTE_LOADER, .asciz "generic") ELFNOTE(Xen, XEN_ELFNOTE_L1_MFN_VALID, .quad _PAGE_PRESENT; .quad _PAGE_PRESENT) - ELFNOTE(Xen, XEN_ELFNOTE_SUSPEND_CANCEL, .long 1) ELFNOTE(Xen, XEN_ELFNOTE_MOD_START_PFN, .long 1) - ELFNOTE(Xen, XEN_ELFNOTE_HV_START_LOW, _ASM_PTR __HYPERVISOR_VIRT_START) ELFNOTE(Xen, XEN_ELFNOTE_PADDR_OFFSET, _ASM_PTR 0) +# define FEATURES_PV (1 << XENFEAT_writable_page_tables) +#else +# define FEATURES_PV 0 +#endif +#ifdef CONFIG_XEN_PVH +# define FEATURES_PVH (1 << XENFEAT_linux_rsdp_unrestricted) +#else +# define FEATURES_PVH 0 +#endif +#ifdef CONFIG_XEN_DOM0 +# define FEATURES_DOM0 (1 << XENFEAT_dom0) +#else +# define FEATURES_DOM0 0 +#endif + ELFNOTE(Xen, XEN_ELFNOTE_HYPERCALL_PAGE, _ASM_PTR hypercall_page) + ELFNOTE(Xen, XEN_ELFNOTE_SUPPORTED_FEATURES, + .long FEATURES_PV | FEATURES_PVH | FEATURES_DOM0) + ELFNOTE(Xen, XEN_ELFNOTE_LOADER, .asciz "generic") + ELFNOTE(Xen, XEN_ELFNOTE_SUSPEND_CANCEL, .long 1) #endif /*CONFIG_XEN */ From xen-devel-bounces@lists.xenproject.org Fri Jun 16 06:53:48 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 16 Jun 2023 06:53:48 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550003.858854 (Exim 4.92) (envelope-from ) id 1qA3Kz-0001n7-If; Fri, 16 Jun 2023 06:53:37 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550003.858854; Fri, 16 Jun 2023 06:53:37 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qA3Kz-0001n0-Fu; Fri, 16 Jun 2023 06:53:37 +0000 Received: by outflank-mailman (input) for mailman id 550003; Fri, 16 Jun 2023 06:53:36 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qA3Ky-0001mu-KD for xen-devel@lists.xenproject.org; Fri, 16 Jun 2023 06:53:36 +0000 Received: from EUR05-VI1-obe.outbound.protection.outlook.com (mail-vi1eur05on20626.outbound.protection.outlook.com [2a01:111:f400:7d00::626]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 8348be34-0c12-11ee-b232-6b7b168915f2; Fri, 16 Jun 2023 08:53:35 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by DU2PR04MB8840.eurprd04.prod.outlook.com (2603:10a6:10:2e3::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.29; Fri, 16 Jun 2023 06:53:31 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.039; Fri, 16 Jun 2023 06:53:31 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 8348be34-0c12-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=ETnXwClJlySsaJ/UnF+V+tjr7n7/tC9IwP7tSgRZVNXu1IhnVp6RWDeFvaKCw8N5ySFRSGIZYXB9qbz6dIutay/rCl4nrcsv6TsmaZfc5/H8u5HSWi1R89bw/NcnGGmcfY3EvPuxJC1vxPrrNdgbKhu2GCNwOIKSfgn1PQEruG73CQRIvA8SG5/mmbBKziXnRWqWJAVZkDHpYdQm9cmGsHrsNj8uQW9WJgE447EY11gusVhrIB+FDr0gDpVKdSl8amiHiTIdFAVE1+0UsYLZXnr6oNppIlnAiVNfex4ufFQPGFYGotI3j9inrNuuJeyyqsN+UOTi6Tg5g4IUBO84vQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=TVo+TBSYQf/729ZD3ntmDIto7uHW/kHofae0lkEKJvg=; b=hE1mM2gb1Gow4Xl0KSBGVeOk3wap9X//UgstQ5Yjoom2BuS3MwYC83jAMLTwtdLKh+iKvY87GLBSjBzygm8JU3cgRl1xhvhrync2A+DTO6KYKekLGJNjJWT23K3csiLov3Ir0Fk2+hr89RAbrnfj+JwqcLTmbQPL0fvp8IHPb4wxPpDKnKNfvK6Y4Gif3DPJV2gV2IBouJQ0SnPxqx0Ie04paIKbC9+/kc57tDOKr10/6n79mnkEn/AFMKo67Nx2A4QXtcP31DIald9PXx3CTzA2ZDgSdxhUhfuYBWjAKg6kL7tyGVSr+3Kw51uAxTt0zdHYdlh0ztuJ8ONfjEDVUg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=TVo+TBSYQf/729ZD3ntmDIto7uHW/kHofae0lkEKJvg=; b=ABuKTWWwsx9VNuTDrsLbWJdBLHrGhLykpWfCsEZqci2wJ4velAeNs3yq8nFKLVpLWJCAd46nCVd+zMZDCTsW4xHbUxTE/eENSaN2QHVEAjBMklXXitdrqFwLv7NWLfhHNBGFnzguAHLUixWjh/ROuq0CWJwBcYKVRbi37hGqoQO4rWxbcUvdp69Y4UWK4DNoSY4aC1eH5XCCrvjmV7XXg51iM5wM+MCXKUQaBUMCLA3YlssM0UTJeTay62LC1lF0X5C9P9szac9lz8PFPPure7+UPwdfYPDzft1vrl3wKgZrnL8dzKnEfRCq4XC55NLFEVyDgLdYexFDN3MGBy/89w== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <7eaadcb4-8580-b240-4451-5a98c66ebe5a@suse.com> Date: Fri, 16 Jun 2023 08:53:29 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [XEN PATCH] docs/misra: document the C dialect and translation toolchain assumptions. Content-Language: en-US To: Stefano Stabellini , Roberto Bagnara Cc: xen-devel@lists.xenproject.org, consulting@bugseng.com, Andrew Cooper , George Dunlap , Julien Grall , Wei Liu References: From: Jan Beulich In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR3P281CA0106.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:a3::16) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|DU2PR04MB8840:EE_ X-MS-Office365-Filtering-Correlation-Id: 20a9ffe7-214b-44ab-eacb-08db6e36657b X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: lfhqi8IypwaowM48WHwGEPuPikAvbt9mgGpyETAgmpBBDzKGiLeznrsmAYJ3yNOGEXpQa4Rmx6xghsvu7HHeggKiWmVI/OnR7pWC5FXrrYM+GL7KrQy/4J2Ige9ZhQ7SP86mYVg+Q5U/zVFbWZss/DvE5NrviuEOItoM3QnXcbfGzx+iTpXrKdWnzivbwGf26yV2mF1cB1zYeFYSUr5wdk5wFYypb7euTfDDDJmc9+hfo8ui2ZFelJVXQTIcNSE96t57gt30DhIujyzcjojpIbiNUdMrmD64mbl5InWqQ1YWkAhu98QA/mMeaeBfmzRmS7b6VyYe4tAOQyy4IYD73f5JJQa1y0P/pvlAQz4o/vCrVNDHUSRufhYAbiTBa7q08ylRcYFrjsZxUFfe58haoKQiFFAhzlB7b1VHo5uIQ+NNxYwLDHwd9WQCxDJ3OI5/qHO5om+tat2NXnoId9VLt/uv8lX5URhwZVDNuwtBV7KWdQ3sdMa4oO9BSxQKy6sxXVRXuEM7zmqh+nd9O36+BSwWF6jNvVWSSYn2Q71BiC9X6aMgzG7KyNiM++ZO69W/bQe3F72Yy7p+k70u3UJtTF7Um4r1SnlggO95snTxq6BCXbJKe+wPfmw0j9fIE9zN4yFddreImtG+x0BCNqhWXe34+1YUao0oP6Yo0hgXuZM= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(396003)(39860400002)(136003)(346002)(376002)(366004)(451199021)(31686004)(8676002)(8936002)(2906002)(5660300002)(38100700002)(41300700001)(66946007)(66556008)(66476007)(4326008)(83380400001)(2616005)(36756003)(186003)(54906003)(110136005)(53546011)(26005)(6506007)(6512007)(478600001)(6486002)(966005)(316002)(86362001)(31696002)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?dUN4elpFaGppUHpRbEE5ZTVqdFoxVUJ5M2g2aHlrMmZXQjNmYzNOcGFwcTBn?= =?utf-8?B?b0U4TlRoNFRnbDM1UE1OYjhKdDRCbnRMa0FoRC8vaEJ1OEh1TkJuc1lEaUJH?= =?utf-8?B?ejJWSGhoMkRYYzJaZ2tMdzNPM2wxNjZXQnMraUpMK0gycEpYZk9GTWhjTk0r?= =?utf-8?B?UFZscEtjRG1wbVRFZDg5cURqSUN4VktKclRNY2hDUHRhQ1J2MGxtdzFZUUtM?= =?utf-8?B?Sk5Udm00akUrRThYZVQ3R0NQM29RSmZVbUplb2N4NUQ5bXpxNTlnVGF2amN1?= =?utf-8?B?eXdsS1BNM3lQTDFZeG1nTWF4ajF2MGEzcUx3KzgrL05vODhDZjBlNnRLMXcw?= =?utf-8?B?RTBvNzFIVVc1dXFudWV4Z1FiREZsOXNkaVQ3d0NlTHlkTVg3bzFVRnpkWVov?= =?utf-8?B?S3BZVDRsbDZEU2tJeEd5alM0dHUwcXdHWElDZ2l4TnRldGRQOGMvTjZOK2tW?= =?utf-8?B?dTNWZFRuK2FMTUp5TjhudmpGQkxGNHNqemdjenFNam9JdnV6ak9Wbkp5WFcv?= =?utf-8?B?dWJobmJEMXRTcERHVHpMS1p6S0Uya1ZQcHFhVGI0S053ZlBKMzU1L3lRcEJ0?= =?utf-8?B?SlRUZjQ0cnFzcEhOZkZBcHAvZlFlQncyU1UwUXZteU9KQ1ErNWVpOEQ4UDhi?= =?utf-8?B?MEtrNFZvRnBjcU5FMEtURk1zVFRRTnlhM1lhZjhWWXRoK0QrUWwzK05DWmJS?= =?utf-8?B?Q0Rqa3N1K3UveGdQUUJyWjdrbEU0aXNwQmwxcytWZ3N0cXB3UTgxV3BKYVdH?= =?utf-8?B?cWE0ZDZtRmx6MjZiMmhmN05tMlo5REQ4ZDBJVk4yWFJoM3FVVHh0WDhEZHJI?= =?utf-8?B?WlhYNFJWR3I2VUdxQjhHeldFT0JvdFNrMitrd0JESktnUy9maTYrWW9xVDdq?= =?utf-8?B?bWl0ZDYxVGFDdFFBb1BKTkhhN1lCa2NWbnNDZUVXN3lsRGVTQkd0dzZFdkV3?= =?utf-8?B?TkszQTdseE5jWEZiK2VSL0ZrM3VEbUNnRDFnRFZJOEcrUFd6MVR1Q0JsZnJQ?= =?utf-8?B?ZWRLeUhwRTh3bFRYSlBXWTRuRUFYWVNIRVhPSU1JdUVZTEdmYzN3aXZBdSt0?= =?utf-8?B?WWpRVnlOOU5FV2NkWnFVeFVCNmNod2lvMUNPR2VOL0dRSjZ6dmRMSmhsU3RS?= =?utf-8?B?TWJSNklTOVJNZWI0UldYM2hvdGdja1dWL3pBd0M4UGhXbXNJMVg1QnQxb2h3?= =?utf-8?B?V0xpTi90MHJhQ2lSbEFCRVI1cUZjSjV4a1IreDVnWXdINm9oeFE5cHRwdzJa?= =?utf-8?B?aEJiOGlrMGZTOXhybFV6MGlrVVdRN3V3WjZKV090M1lUWTRGU2E1cFZPZlNS?= =?utf-8?B?V1FnV1k2SjVsZWZDK1BuWTRQNGJLRlJPYmtGbERuZUJJcythVmV2cDdXTFpp?= =?utf-8?B?ZzczcmVUVUtGU3NIOGR6U2R6OXJoNDcvSllwSkdOakFEYVNCNkUxLzdKMzF5?= =?utf-8?B?SGl2ak5YK1NxSzQzS1hFclc5MXhGTVBqQ1FnMlI4b3d4Y09CbVJFKzJkWUx6?= =?utf-8?B?cWZzeXFjNWNpYm1PdXAwMDgwTWc3QTFjZHUwY25sdE1ydi9mektQa2Rhd2N1?= =?utf-8?B?RkdkTFh3YjREL1IxaUNkY3A0ZkRWVU9zM2tEOHhRZ1VFUzRGWG83VkhHelg1?= =?utf-8?B?UVhFdXA1UTlEQ0FFTWthbzRwcnkyRE1Jb2tmRjRDTENScndyTzhlSVFIN2p6?= =?utf-8?B?WTYrQjRnU2VPZEFxeWZmNVBaRmRNV0Z2ZzR4VGVITnZEdG45QWRvRGRzR1p4?= =?utf-8?B?WHhEMG90RHFCZ1RnUWxzczhoenFiTzcrdlVPQmNJU043Yy82ejREa0pjK2tQ?= =?utf-8?B?ZzZBMnBUaW1CQWcyWi9lb2J0Q2FRc0dqM2NyMlcwMi9zeWY4cmFjNkhEbWh4?= =?utf-8?B?Y3NyZ0xtdndJVUUxTTNrbC9ROVFrbE12aEdITlNzNUI5RkVyR09tcUJQeTJr?= =?utf-8?B?VVJKNkh1d0lWVGVGcGVybmxyZUQ5Y3Y1RGEwVXZYazJCelFQZkxvRTkwZU9h?= =?utf-8?B?cVozTmRhdUFQa29SVVIzVkE2dEFVTTJVSlllWTJOVVBsYm9jWWxmUmVCVDcw?= =?utf-8?B?RWYzRXNGM05YZVpyaE9KVjY0SkJ0L2pSSHFqdjdCZ09POHAxNkNURnhrZHZl?= =?utf-8?Q?iFzeIxRrxkYRXZr+Qo/FFk5oP?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 20a9ffe7-214b-44ab-eacb-08db6e36657b X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Jun 2023 06:53:31.4137 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: go0KFGjAPd4mxkofHzpIooWN0oV+xoDW8Yn/krL9Pqqyuq5snwsiU4a0aT9/55xcI2vJfTdOBEpPKv4ApLzFMQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU2PR04MB8840 On 16.06.2023 01:26, Stefano Stabellini wrote: > On Thu, 15 Jun 2023, Roberto Bagnara wrote: > I have a few comments below, mostly to clarify the description of some > of the less documented GCC extensions, for the purpose of having all > community members be able to understand what they can and cannot use. What do you mean by "can and cannot use"? Is this document intended to forbid the use of any extensions we may not currently use, or we use but which aren't enumerated here? One of the reasons that kept me from replying to this submission is that the full purpose of this new doc isn't stated in the description. Which in turn leaves open whether certain items actually need to be here (see e.g. the libc related remark below). Another is that it's hard to tell how to convince oneself of this being an exhaustive enumeration. One extension we use extensively yet iirc is missing here is omission of the middle operand of the ternary operator. >> --- /dev/null >> +++ b/docs/misra/C-language-toolchain.rst >> @@ -0,0 +1,465 @@ >> +============================================= >> +C Dialect and Translation Assumptions for Xen >> +============================================= >> + >> +This document specifies the C language dialect used by Xen and >> +the assumptions Xen makes on the translation toolchain. >> +It covers, in particular: >> + >> +1. the used language extensions; >> +2. the translation limits that the translation toolchains must be able >> + to accommodate; >> +3. the implementation-defined behaviors upon which Xen may depend. >> + >> +All points are of course relevant for portability. In addition, >> +programming in C is impossible without a detailed knowledge of the >> +implementation-defined behaviors. For this reason, it is recommended >> +that Xen developers have familiarity with this document and the >> +documentation referenced therein. >> + >> +This document needs maintenance and adaptation in the following >> +circumstances: >> + >> +- whenever the compiler is changed or updated; >> +- whenever the use of a certain language extension is added or removed; >> +- whenever code modifications cause exceeding the stated translation limits. >> + >> + >> +Applicable C Language Standard >> +______________________________ >> + >> +Xen is written in C99 with extensions. The relevant ISO standard is >> + >> + *ISO/IEC 9899:1999/Cor 3:2007*: Programming Languages - C, >> + Technical Corrigendum 3. >> + ISO/IEC, Geneva, Switzerland, 2007. >> + >> + >> +Reference Documentation >> +_______________________ >> + >> +The following documents are referred to in the sequel: >> + >> +GCC_MANUAL: >> + https://gcc.gnu.org/onlinedocs/gcc-12.1.0/gcc.pdf >> +CPP_MANUAL: >> + https://gcc.gnu.org/onlinedocs/gcc-12.1.0/cpp.pdf Why 12.1 when meanwhile there's 12.3 and 13.1? >> +ARM64_ABI_MANUAL: >> + https://github.com/ARM-software/abi-aa/blob/60a8eb8c55e999d74dac5e368fc9d7e36e38dda4/aapcs64/aapcs64.rst >> +X86_64_ABI_MANUAL: >> + https://gitlab.com/x86-psABIs/x86-64-ABI/-/jobs/artifacts/master/raw/x86-64-ABI/abi.pdf?job=build >> +ARM64_LIBC_MANUAL: >> + https://www.gnu.org/software/libc/manual/pdf/libc.pdf >> +X86_64_LIBC_MANUAL: >> + https://www.gnu.org/software/libc/manual/pdf/libc.pdf How is libc relevant to the hypervisor? >> + * - Empty declaration >> + - ARM64, X86_64 >> + - Non-documented GCC extension. > > For the non-documented GCC extensions, would it be possible to add a > very brief example or a couple of words in the "References" sections? > Otherwise I think people might not understand what we are talking about. > > For instance in this case I would say: > > An empty declaration is a semicolon with nothing before it. > Non-documented GCC extension. Which then could be confused with empty statements. I think in a document like this language needs to be very precise, to avoid ambiguities and confusion as much as possible. (Iirc from going over this doc yesterday this applies elsewhere as well.) >> + * - Ill-formed source detected by the parser > > As we are documenting compiler extensions that we are using, I am a bit > confused by the name of this category of compiler extensions, and the > reason why they are bundled together. After all, they are all separate > compiler extensions? Should each of them have their own row? +1 >> + >> + * - Unspecified escape sequence is encountered in a character constant or a string literal token >> + - X86_64 >> + - \\m: >> + non-documented GCC extension. > > Are you saying that we are using \m and \m is not allowed by the C > standard? This exists in the __ASSEMBLY__ part of a header, and I had previously commented on Roberto's diagnosis (possibly derived from Eclair's) here. As per that I don't think the item should be here, but I'm of course open to be shown that my understanding of translation phases is wrong. >> + * - Non-standard type > > Should we call it "128-bit Integers" ? Or better more generally "Extended integer types" (or something along these lines, i.e. as these are called in the spec)? Jan From xen-devel-bounces@lists.xenproject.org Fri Jun 16 06:55:59 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 16 Jun 2023 06:55:59 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550008.858864 (Exim 4.92) (envelope-from ) id 1qA3N6-0002NE-W3; Fri, 16 Jun 2023 06:55:48 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550008.858864; Fri, 16 Jun 2023 06:55:48 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qA3N6-0002N7-Sz; Fri, 16 Jun 2023 06:55:48 +0000 Received: by outflank-mailman (input) for mailman id 550008; Fri, 16 Jun 2023 06:55:47 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qA3N5-0002N1-FA for xen-devel@lists.xenproject.org; Fri, 16 Jun 2023 06:55:47 +0000 Received: from EUR04-DB3-obe.outbound.protection.outlook.com (mail-db3eur04on0627.outbound.protection.outlook.com [2a01:111:f400:fe0c::627]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id d1319409-0c12-11ee-b232-6b7b168915f2; Fri, 16 Jun 2023 08:55:45 +0200 (CEST) Received: from DUZPR01CA0133.eurprd01.prod.exchangelabs.com (2603:10a6:10:4bc::28) by DU0PR08MB10359.eurprd08.prod.outlook.com (2603:10a6:10:416::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.29; Fri, 16 Jun 2023 06:55:42 +0000 Received: from DBAEUR03FT005.eop-EUR03.prod.protection.outlook.com (2603:10a6:10:4bc:cafe::f2) by DUZPR01CA0133.outlook.office365.com (2603:10a6:10:4bc::28) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.29 via Frontend Transport; Fri, 16 Jun 2023 06:55:42 +0000 Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by DBAEUR03FT005.mail.protection.outlook.com (100.127.142.81) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.13 via Frontend Transport; Fri, 16 Jun 2023 06:55:41 +0000 Received: ("Tessian outbound e13c2446394c:v136"); Fri, 16 Jun 2023 06:55:41 +0000 Received: from 7a5ed9365d59.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 5E799520-6507-45E6-88E2-C597F591228C.1; Fri, 16 Jun 2023 06:55:36 +0000 Received: from EUR04-DB3-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 7a5ed9365d59.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Fri, 16 Jun 2023 06:55:36 +0000 Received: from AM6PR08MB3784.eurprd08.prod.outlook.com (2603:10a6:20b:85::25) by AS8PR08MB9598.eurprd08.prod.outlook.com (2603:10a6:20b:61a::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.29; Fri, 16 Jun 2023 06:55:34 +0000 Received: from AM6PR08MB3784.eurprd08.prod.outlook.com ([fe80::5e17:39a6:eec7:c482]) by AM6PR08MB3784.eurprd08.prod.outlook.com ([fe80::5e17:39a6:eec7:c482%4]) with mapi id 15.20.6500.029; Fri, 16 Jun 2023 06:55:34 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: d1319409-0c12-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=fXgNCGCw7cgZgp/vYzeRfsXQDIRSVG4XAafGv3kJCvQ=; b=G1SJz26S7HFtOZXeeGPqvQJXY5FZkvV7RYxlsjj3naTGdUm7b6D1Caom1BUTmkTzafgQiplGzQnlhyf+/fBqsNcGpA2BWkg6CldReukf5ftWWZ0NGQkDI4/u/acZ6jGh99XMgldHIQs3AfVfl+bOtLH4GByDbzbXdZUIG6TJd5A= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C X-CheckRecipientChecked: true X-CR-MTA-CID: 055f5c3854a653dd X-CR-MTA-TID: 64aa7808 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Ey2I2kaGcyH/5Ix4n7w+/fA2yupOrBIkIjmdHDjUfQKSdKpDs+pHAkHf9gMkAVUpzo/bIZQMZUoyg9IHgQpPZ4D/ZjMo1MGPpm20dp+/7ic+4Ni/UeL5HlOy9X9tMJNaAp8R5pgEoWhv4q+Cf0EwHbkL7beoLH9Zs5iXVv8iw+Y9a+oWlj1vM6tlONLYNEPehXduOgVuEuJjXSM/LsSdXyNoHT6RKNrmXL3O0PhuMLSHCHaWIQOXoZNle9MTi0zluQ9qAOpXfQ2Z+UK4S+XBEx6oPbk7AageL2iz9byVTTVCcfVZJiwijpp5LJojGpC02BnZkUtF1xenWips4KR37Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=fXgNCGCw7cgZgp/vYzeRfsXQDIRSVG4XAafGv3kJCvQ=; b=iexpvMOUK00eKIwCFPg/LajoQg3AEYcnU3p6ZiEXG9T2WsHe2dSvbMUaAntmiQnDWLwoHhlsV2JzS/gMx+NqTHSY1kRFan+Mesrj5gKLQNPYetjUuLeDzhLLLlY5MbHGNEj0BNqDk6zozkT6jv5WEki3zbU8d6QdAcG9vte747uunQBBl1PXS+XOL8l90pPLfjgZ2uNNFG/I5AkO7wuMKBmhgOvOLPazN6qsq/ZRxwmhZVz5+r5JJRsrxfRpjbQrQgr0rQy9vjKlj6X36Qt5A2XbFxN6xHiSTTrO8dNmPFE8S8zvpY7mfhD8BbeNRFoyTH1xzflG5GItRe87p2UX8w== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=fXgNCGCw7cgZgp/vYzeRfsXQDIRSVG4XAafGv3kJCvQ=; b=G1SJz26S7HFtOZXeeGPqvQJXY5FZkvV7RYxlsjj3naTGdUm7b6D1Caom1BUTmkTzafgQiplGzQnlhyf+/fBqsNcGpA2BWkg6CldReukf5ftWWZ0NGQkDI4/u/acZ6jGh99XMgldHIQs3AfVfl+bOtLH4GByDbzbXdZUIG6TJd5A= From: Bertrand Marquis To: Stefano Stabellini CC: Xen-devel , Jan Beulich , "julien@xen.org" , "andrew.cooper3@citrix.com" , "roger.pau@citrix.com" , "roberto.bagnara@bugseng.com" , Stefano Stabellini , Michal Orzel Subject: Re: [PATCH v5] docs/misra: new rules addition Thread-Topic: [PATCH v5] docs/misra: new rules addition Thread-Index: AQHZn88VmRmLP0MYHEWbK1HWPOziPK+M/22A Date: Fri, 16 Jun 2023 06:55:34 +0000 Message-ID: References: <20230615211922.1328972-1-sstabellini@kernel.org> In-Reply-To: <20230615211922.1328972-1-sstabellini@kernel.org> Accept-Language: en-GB, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-mailer: Apple Mail (2.3731.600.7) Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-traffictypediagnostic: AM6PR08MB3784:EE_|AS8PR08MB9598:EE_|DBAEUR03FT005:EE_|DU0PR08MB10359:EE_ X-MS-Office365-Filtering-Correlation-Id: 3012a05e-c639-4f83-c1cf-08db6e36b365 x-checkrecipientrouted: true nodisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: u0lE5wLW6kz2OqEOqwPvleWpiGLfImXkhAqNHGbQ67wXxZuOICzoD761fKu7KfOfeKOJWS6QQtjdfj50FCuSNucjBxn7KEKuxOHb+Obi7ErddPVhCa2hOq07AAAhD+FEaS9hvU1o92NQZUOS7i6rfHRmsPWJR6StHdsWp5XZukFUKg7oRRw/vm85CBh2h8CXF+94xg9odRa2b4qXtja0BvL/px5YiiiX8mdsrTp8SnHlKNUmc+ffeRFhbsdMVY8X6RUsAkSZrnZyo/YYVmI9CMcYBCJiTnzNEqMOb3+KmvSYmAAh1POCcZXdptO9EBmNLR7NrqpUM4ESnUOaxsVqrrs5XjKLKYqzgg4nguUcDLN2MmpEJwd0CdeQ2FFH+itOX6NptowkKJ2JgKbOCL+M0+uxoXo4d2ZI+auEjfJdd4wBSjJ8Dk3/rhviPwG5vdUI24rfdhSTkFLqTn5KHpRpWazYmrUrMolh7hc5rkGTol+DrNiA20pdgYTaAOJEfXuc5XYWuL2dP6AAEaLRSSs7F2RvZ6Zp4b7SwPl/ZXF+yJMSJ4r72QWER00N9kP+8769rWh4rAy1cXL/pHG5ImM0CUYtiFVNAlE9j7POFErLgK4/tlqPuUvPnFo3s9Cy5AR5ztw07mSK3FvFen/8ZVAaYoz8aE+h7XpXmO7DcB97Ng9qr2GHxAWlrygIguNT6Rlv X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM6PR08MB3784.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(346002)(396003)(366004)(376002)(136003)(39860400002)(451199021)(2906002)(91956017)(64756008)(41300700001)(5660300002)(33656002)(8676002)(8936002)(316002)(4326008)(76116006)(66446008)(66476007)(66556008)(66946007)(6916009)(36756003)(83380400001)(2616005)(71200400001)(6512007)(186003)(53546011)(6506007)(38100700002)(38070700005)(86362001)(122000001)(478600001)(54906003)(6486002)(45980500001);DIR:OUT;SFP:1101; Content-Type: text/plain; charset="us-ascii" Content-ID: <673385E157A9DD42875A90BB7BB031BE@eurprd08.prod.outlook.com> Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR08MB9598 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: DBAEUR03FT005.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: 9cfadb08-8039-4dad-3310-08db6e36aed1 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: ZoGmi6W3mFk8SkCRywUw+pW/sm+PUimPyNZuP4C1PyCrxMukuXTCyNPGlGpmMl0t+FUIpI5Nnj8QpoQlfxc8vdxvtkU3/MMByZTo7LZ1/J+nreYRGwIZy+ccDwuUgNJh1zzHUXKK3GKl7XgQ2AjxyhEAc1dVhUIi2VQDdosfqKVMdP2Wp0LNGBMAE/uH8WIP0/THRuWDU8dMRpIMIs+AAiUAD0tFcVGzMu4nctJ/EgxN0gNvOTv+//2FzKl27uE6Qmrn0fdN4WHWE44veR5HuLdmyWHs0V1TlI7F8xnHcZbzUbwOktvoB5bW5MKJn5sW5vvmHm5l5suc6OkiTQmp4xh2j0wBOSbb7ygvEqQdCOC82dXuDxRG7BtP9ygpddTUA8dGwq5iXUlHaLHfYYT5Cx2c32uTrITgd5Hh99mOF8MS0RS7TVxsL9cj1qm75hWYhz0oOFAev6No2q5Q3zi6ltB2IbUPW0wwffI+Im9zZxeylNS6HG3nGtBI3J1mDWyYSMRjOPJ0G3iGGtaZxoL9QF05+cNYS4MuFwyvu8HShFmcL0MkLumwPffE9kZBPuYh2DI4E8q3qYHnz/Ri3aIRVsQi+pcueZpLIA6k+r3j/OI9fuF+/2JgyM5LBhce8v4APUK9qrS5XQZF4MCTPKqYj+yQGMvY8ifrNJZxUaDDPhRvKR1mbF6O013xsbqqzXkDpcd2M39x7GwD7OoXtJtyfYfdkR7gjMx6/WtJOA4uaocHxYQCmzDrefteZVS385pfA5sg4VOL2xzrM0FeoB9kwA== X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230028)(4636009)(376002)(346002)(136003)(39860400002)(396003)(451199021)(40470700004)(46966006)(36840700001)(40480700001)(478600001)(86362001)(6486002)(316002)(40460700003)(82310400005)(41300700001)(83380400001)(47076005)(36860700001)(70586007)(70206006)(4326008)(81166007)(5660300002)(6862004)(8676002)(8936002)(33656002)(356005)(2906002)(82740400003)(53546011)(186003)(54906003)(6512007)(6506007)(26005)(2616005)(36756003)(336012);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Jun 2023 06:55:41.9980 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 3012a05e-c639-4f83-c1cf-08db6e36b365 X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: DBAEUR03FT005.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU0PR08MB10359 Hi Stefano, > On 15 Jun 2023, at 23:19, Stefano Stabellini wro= te: >=20 > From: Stefano Stabellini >=20 > For Dir 1.1, a document describing all implementation-defined behaviour > (i.e. gcc-specific behavior) will be added to docs/misra, also including > implementation-specific (gcc-specific) appropriate types for bit-field > relevant to Rule 6.1. >=20 > Rule 21.21 is lacking an example on gitlab but the rule is > straightforward: we don't use stdlib at all in Xen. >=20 > Signed-off-by: Stefano Stabellini > Reviewed-by: Michal Orzel Reviewed-by: Bertrand Marquis Cheers Bertrand > --- > Changes in v5: > - clarify suggested approach to Rule 7.2 > - add link for 21.21 >=20 > Changes in v4: > - improve wording of the note in 6.1 >=20 > Changes in v3: > - add all signed integer types to the Notes of 6.1 > - clarify 7.2 in the Notes > - not added: marking "inapplicable" rules, to be a separate patch >=20 > Changes in v2: > - drop 5.6 > - specify additional appropriate types for 6.1 >=20 > iii > --- > docs/misra/rules.rst | 50 ++++++++++++++++++++++++++++++++++++++++++++ > 1 file changed, 50 insertions(+) >=20 > diff --git a/docs/misra/rules.rst b/docs/misra/rules.rst > index d5a6ee8cb6..a88c284e7d 100644 > --- a/docs/misra/rules.rst > +++ b/docs/misra/rules.rst > @@ -40,6 +40,12 @@ existing codebase are work-in-progress. > - Summary > - Notes >=20 > + * - `Dir 1.1 `_ > + - Required > + - Any implementation-defined behaviour on which the output of the > + program depends shall be documented and understood > + - > + > * - `Dir 2.1 `_ > - Required > - All source files shall compile without any compilation errors > @@ -57,6 +63,13 @@ existing codebase are work-in-progress. > header file being included more than once > - >=20 > + * - `Dir 4.11 `_ > + - Required > + - The validity of values passed to library functions shall be check= ed > + - We do not have libraries in Xen (libfdt and others are not > + considered libraries from MISRA C point of view as they are > + imported in source form) > + > * - `Dir 4.14 `_ > - Required > - The validity of values received from external sources shall be > @@ -133,6 +146,12 @@ existing codebase are work-in-progress. > headers (xen/include/public/) are allowed to retain longer > identifiers for backward compatibility. >=20 > + * - `Rule 6.1 `_ > + - Required > + - Bit-fields shall only be declared with an appropriate type > + - In addition to the C99 types, we also consider appropriate types > + enum and all explicitly signed / unsigned integer types. > + > * - `Rule 6.2 `_ > - Required > - Single-bit named bit fields shall not be of a signed type > @@ -143,6 +162,32 @@ existing codebase are work-in-progress. > - Octal constants shall not be used > - >=20 > + * - `Rule 7.2 `_ > + - Required > + - A "u" or "U" suffix shall be applied to all integer constants > + that are represented in an unsigned type > + - The rule asks that any integer literal that is implicitly > + unsigned is made explicitly unsigned by using one of the > + indicated suffixes. As an example, on a machine where the int > + type is 32-bit wide, 0x77777777 is signed whereas 0x80000000 is > + (implicitly) unsigned. In order to comply with the rule, the > + latter should be rewritten as either 0x80000000u or 0x80000000U. > + Consistency considerations may suggest using the same suffix even > + when not required by the rule. For instance, if one has: > + > + Original: f(0x77777777); f(0x80000000); > + > + one should do > + > + Solution 1: f(0x77777777U); f(0x80000000U); > + > + over > + > + Solution 2: f(0x77777777); f(0x80000000U); > + > + after having ascertained that "Solution 1" is compatible with the > + intended semantics. > + > * - `Rule 7.3 `_ > - Required > - The lowercase character l shall not be used in a literal suffix > @@ -314,6 +359,11 @@ existing codebase are work-in-progress. > used following a subsequent call to the same function > - >=20 > + * - `Rule 21.21 `_ > + - Required > + - The Standard Library function system of shall not be u= sed > + - > + > * - `Rule 22.2 `_ > - Mandatory > - A block of memory shall only be freed if it was allocated by means= of a > --=20 > 2.25.1 >=20 From xen-devel-bounces@lists.xenproject.org Fri Jun 16 06:57:44 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 16 Jun 2023 06:57:44 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550015.858874 (Exim 4.92) (envelope-from ) id 1qA3On-00030I-ER; Fri, 16 Jun 2023 06:57:33 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550015.858874; Fri, 16 Jun 2023 06:57:33 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qA3On-00030B-Ar; Fri, 16 Jun 2023 06:57:33 +0000 Received: by outflank-mailman (input) for mailman id 550015; Fri, 16 Jun 2023 06:57:31 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qA3Ol-000303-Os for xen-devel@lists.xenproject.org; Fri, 16 Jun 2023 06:57:31 +0000 Received: from EUR02-AM0-obe.outbound.protection.outlook.com (mail-am0eur02on20630.outbound.protection.outlook.com [2a01:111:f400:fe13::630]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 0fe04f82-0c13-11ee-b232-6b7b168915f2; Fri, 16 Jun 2023 08:57:31 +0200 (CEST) Received: from AS8PR05CA0003.eurprd05.prod.outlook.com (2603:10a6:20b:311::8) by GV2PR08MB8051.eurprd08.prod.outlook.com (2603:10a6:150:79::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.37; Fri, 16 Jun 2023 06:57:28 +0000 Received: from AM7EUR03FT023.eop-EUR03.prod.protection.outlook.com (2603:10a6:20b:311:cafe::ae) by AS8PR05CA0003.outlook.office365.com (2603:10a6:20b:311::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.29 via Frontend Transport; Fri, 16 Jun 2023 06:57:28 +0000 Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by AM7EUR03FT023.mail.protection.outlook.com (100.127.140.73) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.25 via Frontend Transport; Fri, 16 Jun 2023 06:57:27 +0000 Received: ("Tessian outbound 3a01b65b5aad:v136"); Fri, 16 Jun 2023 06:57:27 +0000 Received: from ae72e5991994.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id D6D0CDD4-DF73-4F2E-8C4C-8804304A0718.1; Fri, 16 Jun 2023 06:57:21 +0000 Received: from EUR04-DB3-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id ae72e5991994.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Fri, 16 Jun 2023 06:57:21 +0000 Received: from AM6PR08MB3784.eurprd08.prod.outlook.com (2603:10a6:20b:85::25) by AS8PR08MB9598.eurprd08.prod.outlook.com (2603:10a6:20b:61a::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.29; Fri, 16 Jun 2023 06:57:19 +0000 Received: from AM6PR08MB3784.eurprd08.prod.outlook.com ([fe80::5e17:39a6:eec7:c482]) by AM6PR08MB3784.eurprd08.prod.outlook.com ([fe80::5e17:39a6:eec7:c482%4]) with mapi id 15.20.6500.029; Fri, 16 Jun 2023 06:57:19 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 0fe04f82-0c13-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=WyoZ1JjqFNvCAly0Fcxmqd0FMh+/TPd9uuitzR22yKE=; b=WPlc7j3BjQvQ2wd04dHXo9aQU6QuWF2Gm8q58/XzXMX9ks7juTbAhCvbHcV3qdHFsV9cYzXocUJyBZJ8ejctuYMmQ7TkoBc+LdKThcvJJ2OHA+IMRs0zNjLpaUO8dbXtEZwvQl6YtDqIMzSrgcBtL9bzl3LPr5LI/7eTfQme43Y= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C X-CheckRecipientChecked: true X-CR-MTA-CID: 9bae4f177981c73a X-CR-MTA-TID: 64aa7808 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=ZGKDAsxtm8Tpcp1W65wCiG/F6OxlRrCYc3XJEMiETAXvvmruZ91KEAhtyupk6AasBhSvLZk4gNPhgrYG08zCkfXmKx5i1jd2whMaEmMg+Iq09BL6Knf7PiTZGJrHAdpGKD7LgREYiiW6sU2v2/vHPoO/AbmI+xS/wEQEOwDbcpaW0ryEuGwrVW4q/zFIdKDZvSPO2s/1WciSEI1madg+MI5gXt3lpbd3d0anajq81woLP2O5RPpzF4bdHynBHcF2InJQXFFWnEQxlStwYSqRA/0TQPLNPyG/v5uZGK7ebTgoboA/k5TojzWMyK+4eKGQfirKlUsnfAB1TSXQppiamw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=WyoZ1JjqFNvCAly0Fcxmqd0FMh+/TPd9uuitzR22yKE=; b=Tku1FKFu6KbNeqS1qTazLMLRzc3b3D/E5uW8IBMUJNaJ6pWQAZJ7WTPZzzP5E2xhs2oPkuIoXnXBIDwZnp3fqbCQLDKCRMGV0PJ82ixbv164ChUuAKMCxrpwY/mtzp3ZyNZPT6DaYW0PM542RoM2htUrnjsNAMe+23jl32LpgkhnUVL+Ajnmb3X7P365HZ1oDjKDJAOT+S72ZO+UFAZKaSoeOm5ebG88b+fKlmOUGxmMFTDEWJDNLeqcyNAaSi5osc4brmtq5LOPTzKTu/U2dzHpswajNd67nOcmAlUzT+LN1TkoF5Fa2wdwcMaEcB4fspff+tT/xWlLA0nfqxYNIQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=WyoZ1JjqFNvCAly0Fcxmqd0FMh+/TPd9uuitzR22yKE=; b=WPlc7j3BjQvQ2wd04dHXo9aQU6QuWF2Gm8q58/XzXMX9ks7juTbAhCvbHcV3qdHFsV9cYzXocUJyBZJ8ejctuYMmQ7TkoBc+LdKThcvJJ2OHA+IMRs0zNjLpaUO8dbXtEZwvQl6YtDqIMzSrgcBtL9bzl3LPr5LI/7eTfQme43Y= From: Bertrand Marquis To: Stefano Stabellini CC: Xen-devel , Jan Beulich , "julien@xen.org" , "andrew.cooper3@citrix.com" , "roger.pau@citrix.com" , "roberto.bagnara@bugseng.com" , Stefano Stabellini Subject: Re: [PATCH v2] xen/misra: add rules 1.4 and 2.1 Thread-Topic: [PATCH v2] xen/misra: add rules 1.4 and 2.1 Thread-Index: AQHZn9A1cetUSIw+5k+zCggrDNtc/q+M/+mA Date: Fri, 16 Jun 2023 06:57:19 +0000 Message-ID: <415F37D4-0812-4094-AB35-C304450B06BB@arm.com> References: <20230615212716.1330929-1-sstabellini@kernel.org> In-Reply-To: <20230615212716.1330929-1-sstabellini@kernel.org> Accept-Language: en-GB, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-mailer: Apple Mail (2.3731.600.7) Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-traffictypediagnostic: AM6PR08MB3784:EE_|AS8PR08MB9598:EE_|AM7EUR03FT023:EE_|GV2PR08MB8051:EE_ X-MS-Office365-Filtering-Correlation-Id: db3a19f3-93d0-4e0d-d2de-08db6e36f289 x-checkrecipientrouted: true nodisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: 3t7KfhsVWrZQN1woscDhRIl9gEHBVBSLTzoBHjEWT/HSrAMC3d8+L5OHSPbrpLin/Y61OHWa/SA5vjNQbQfj6m9Q6suyJd2SHGGaPbqa8Ee7FRY+zc1hhTBqee2j3pWmtpuD3vSu21jjsqKjAHjOxRWMwUQKIuhpnsyaFkUq2FZ1+30kgdLeOSnEwnbuxJ1uO9jaeWJMbcfQ+d1Wii2/qVKhBekPmABZTFikBo6iPA83BZjGQuawD4hBOa5WfentpeAXmadLQEtioIQQjEW3eaZ5SMNMjW/3AfOiewlnPbqfk93S2gPngbKXQgPd4769b4WLy7aEFNlBgkdNKq7Y/u42bpCUGI5lZBUXQ7bNiIJAMtHl+zqfqo867w/XkAkt9PpL5V6FWuY1Xpo8N33/mnlMtC1tpaLzSoSMw6AdogbDxMQAScJ02b3Gca5GU1THgcvuDHJUZkore98vj5qdPxeAx7G5LAC8QECJrpXuntz4rBT7TYKMf8jgN9QZJgPAHBsDctnl7tI71EJFlBAWO4oSvoe5gHqAijIPJGBEngSDgJ8kot2jXecJyhOoqFLifBcWFMtv9AlxEeMBcmLuGB/WT1BS3R39Sk3992yi6XYMyevoZ4c1YI3uNHUIikceQe3MVNHSw7I3CMAbu3afgno+xucZs0uRyhzidZMQICg= X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM6PR08MB3784.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(346002)(396003)(366004)(376002)(136003)(39860400002)(451199021)(2906002)(91956017)(64756008)(41300700001)(5660300002)(33656002)(8676002)(8936002)(316002)(4326008)(76116006)(66446008)(66476007)(66556008)(66946007)(6916009)(36756003)(83380400001)(2616005)(71200400001)(6512007)(186003)(53546011)(6506007)(38100700002)(38070700005)(86362001)(122000001)(478600001)(54906003)(6486002)(45980500001);DIR:OUT;SFP:1101; Content-Type: text/plain; charset="us-ascii" Content-ID: Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR08MB9598 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: AM7EUR03FT023.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: 2acec121-3c9d-4c84-219e-08db6e36edb0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: fi+j5LhAn+w3q3/bBrCF3Ek1yHdd39zCH18HMV5SBdoq+EXKg77yExZpHrQ249iQ65ivgSJcDyEX7fQVzh9eoRki0RScSD8qGp6LABZRqCNrL2JtiMQhs0CZJn5BqZin8n7ObXRpEJp3g7Bs9T8guBOy3+WCkGCGokSpNMnd5JaqeSQrlzDK9W+FkRL+rnJEGCe7+Ub8RXLcjY1pPM7MK1X8/m/zhLrbcF9z+HNLF6KEbRqWtS+zAsQHpkcRIMJEaykDoYHUlGxcTgpgGtOT13kkX9rEZk2XiHJkIHHqFDWZL2UQEoUZeCm1eqUaCtdEsqg9quO1s6yN48qLpTKxsOVUUF4Ihtl59ZrURzMTDfKfxipj1KrRsaVclGIzapEsKwbMxYbbMM/1zjfDFIBxTIZfQA2Fq8rbFOVkJW17XrVs3W16ci3ZmpOSGKxRRUGN9zlTRIWfMOCPoSruJ3vitM3u1PxuldhFaoNBNREBKvcXgQyu6HfD2ajXIO02iup6fDoVedp7HsPmUSFkhizveK0uxnQlijO33fXHwaa2sl6lGhWylTLtgtK4iSGko5CHJngJ7x6g9H3gWrPITo52fY6h06gr5J5Bx0HFLMao/zr172Np7ezHeOdeDDBqFYA6FkW83hFLmAiHsuQJYKFE0f4elqdGSQcytH3q7D0lwa1mHDmM9qLD9F8Pndv7cMxYbypKCrenJ3sN7Kf5Ngtmf5Hyw8oaemIhqp3VFNQASjodR7QO2627oktaW1mubN9prWLvDFax4IlGdqMWftSYxQ== X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230028)(4636009)(396003)(136003)(346002)(39860400002)(376002)(451199021)(46966006)(40470700004)(36840700001)(186003)(26005)(6512007)(36860700001)(53546011)(336012)(6506007)(70586007)(2906002)(4326008)(70206006)(82310400005)(47076005)(83380400001)(2616005)(33656002)(86362001)(36756003)(40460700003)(81166007)(54906003)(82740400003)(356005)(6486002)(41300700001)(6862004)(5660300002)(8676002)(8936002)(316002)(40480700001)(478600001);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Jun 2023 06:57:27.8527 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: db3a19f3-93d0-4e0d-d2de-08db6e36f289 X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: AM7EUR03FT023.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: GV2PR08MB8051 Hi Stefano, > On 15 Jun 2023, at 23:27, Stefano Stabellini wro= te: >=20 > From: Stefano Stabellini >=20 > Also add a comment at the top of the file to say rules.rst could be > changed. >=20 > Signed-off-by: Stefano Stabellini Reviewed-by: Bertrand Marquis Cheers Bertrand >=20 > --- > Changes in v2: > - add link for 1.4 > - expand 1.4 comment to say it could be revisited > - add comment at the top > --- > docs/misra/rules.rst | 15 +++++++++++++++ > 1 file changed, 15 insertions(+) >=20 > diff --git a/docs/misra/rules.rst b/docs/misra/rules.rst > index a88c284e7d..11b9c42b70 100644 > --- a/docs/misra/rules.rst > +++ b/docs/misra/rules.rst > @@ -32,6 +32,9 @@ violations are meant to be documented as deviations, wh= ile some others > should be fixed. Both compliance and documenting deviations on the > existing codebase are work-in-progress. >=20 > +The list below might need to be updated over time. Reach out to THE REST > +maintainers if you want to suggest a change. > + > .. list-table:: > :header-rows: 1 >=20 > @@ -90,6 +93,18 @@ existing codebase are work-in-progress. > behaviour > - >=20 > + * - `Rule 1.4 `_ > + - Required > + - Emergent language features shall not be used > + - Emergent language features, such as C11 features, should not be > + confused with similar compiler extensions, which we use. When the > + time comes to adopt C11, this rule will be revisited. > + > + * - `Rule 2.1 `_ > + - Required > + - A project shall not contain unreachable code > + - > + > * - `Rule 2.6 `_ > - Advisory > - A function should not contain unused label declarations > --=20 > 2.25.1 >=20 From xen-devel-bounces@lists.xenproject.org Fri Jun 16 06:59:58 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 16 Jun 2023 06:59:58 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550020.858884 (Exim 4.92) (envelope-from ) id 1qA3R2-0003bp-Rg; Fri, 16 Jun 2023 06:59:52 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550020.858884; Fri, 16 Jun 2023 06:59:52 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qA3R2-0003bi-Oo; Fri, 16 Jun 2023 06:59:52 +0000 Received: by outflank-mailman (input) for mailman id 550020; Fri, 16 Jun 2023 06:59:50 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qA3R0-0003ba-SY for xen-devel@lists.xenproject.org; Fri, 16 Jun 2023 06:59:50 +0000 Received: from EUR03-DBA-obe.outbound.protection.outlook.com (mail-dbaeur03on2060c.outbound.protection.outlook.com [2a01:111:f400:fe1a::60c]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 628b24e4-0c13-11ee-b232-6b7b168915f2; Fri, 16 Jun 2023 08:59:49 +0200 (CEST) Received: from DU2PR04CA0232.eurprd04.prod.outlook.com (2603:10a6:10:2b1::27) by DB9PR08MB8412.eurprd08.prod.outlook.com (2603:10a6:10:3d4::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.29; Fri, 16 Jun 2023 06:59:39 +0000 Received: from DBAEUR03FT026.eop-EUR03.prod.protection.outlook.com (2603:10a6:10:2b1:cafe::96) by DU2PR04CA0232.outlook.office365.com (2603:10a6:10:2b1::27) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.25 via Frontend Transport; Fri, 16 Jun 2023 06:59:39 +0000 Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by DBAEUR03FT026.mail.protection.outlook.com (100.127.142.242) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.12 via Frontend Transport; Fri, 16 Jun 2023 06:59:39 +0000 Received: ("Tessian outbound 945aec65ec65:v136"); Fri, 16 Jun 2023 06:59:39 +0000 Received: from ba5edfc41ffd.2 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 75178AE5-2139-4351-8E83-98DAD8553F7C.1; Fri, 16 Jun 2023 06:59:29 +0000 Received: from EUR05-VI1-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id ba5edfc41ffd.2 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Fri, 16 Jun 2023 06:59:29 +0000 Received: from AM6PR08MB3749.eurprd08.prod.outlook.com (2603:10a6:20b:8f::22) by PA4PR08MB6142.eurprd08.prod.outlook.com (2603:10a6:102:ee::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.25; Fri, 16 Jun 2023 06:59:27 +0000 Received: from AM6PR08MB3749.eurprd08.prod.outlook.com ([fe80::ed0b:5730:a1f9:577b]) by AM6PR08MB3749.eurprd08.prod.outlook.com ([fe80::ed0b:5730:a1f9:577b%5]) with mapi id 15.20.6500.029; Fri, 16 Jun 2023 06:59:26 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 628b24e4-0c13-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=geJ4ck+wDlAjV+Rj2So2JTHgIvF3DbzfN5ItGQdb12s=; b=mqGuds1lIH6X3M4wM9kY2x4L99TyS8rFPF23CbEwxqeCxTdcuP+QLZR4s5YTfeOiAuyuza3merG2qL6QiixUtkNKEppeJUX1YC2S7/UKRqR7NfPCuRiTRAeaX9K/ZpcujZtwNX0VO5tN7ZfKDSUQb+JBnZSl7rz3ZXPQaotBSco= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C X-CheckRecipientChecked: true X-CR-MTA-CID: 30126feacc87242a X-CR-MTA-TID: 64aa7808 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Ry8YOvNysz6OwX9GpUq6LgCNuUvW58V7PAxAdrZL+qBtaDesQuck2NPQ0/UR6D1ZmOvEeLHZY2kP+VZhth95f2EgMpf4I1/lkZtu1oMVJNBD7+G+S+/2dzhb17g52cG5a8bXI77S2QtxrFuFjs2hdkITp78mQeQk/+V4+xnpoZFJXkzgh64N0w19tlJWDnz8XcUOsHV5TcEzUk7E5PFDzLnTXwS7YVoDepo0WatuWdoCTE0V6J59wg/0tzSGY0OyeZtq1QGwyHcMBZ/CRxg+fbHCbPlX+93buPVu01oB4x4PbCFUE+B4y+YLYMS12TsHUbNPOjHU16N1LrfMgX5/4Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=geJ4ck+wDlAjV+Rj2So2JTHgIvF3DbzfN5ItGQdb12s=; b=QM2CgY4w8z58KPbzWAx/QqS9pmgeuUg44Hw32TgWimAPkd/gQAOeP26CzyQ3/efsfCjuCNsTurN+bBOWWC6j1x0gEmoEhAtDXoIixwxBIde26KNEVy28hmYa4VZCjY1WdFl6Wu9XzX8e7E1+wM6Asl7TYxSooLc1dDExfk16CQH8107Mcf00eYEkPuLyQNmAf5rwCjenoOGGNFkz0vd4mjmi8jKAkP37QR7FM3UAoaNVbhJ8M4cOcYnAsce7IwE6fY9RTitlPM7kk7uoMeWX5B+AcZMNj7E1zGCiHmrTUBqUoPXigK2/nz6XsqnEoi7BzP6WmhNn34IKgPpcTBrkdQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=geJ4ck+wDlAjV+Rj2So2JTHgIvF3DbzfN5ItGQdb12s=; b=mqGuds1lIH6X3M4wM9kY2x4L99TyS8rFPF23CbEwxqeCxTdcuP+QLZR4s5YTfeOiAuyuza3merG2qL6QiixUtkNKEppeJUX1YC2S7/UKRqR7NfPCuRiTRAeaX9K/ZpcujZtwNX0VO5tN7ZfKDSUQb+JBnZSl7rz3ZXPQaotBSco= From: Luca Fancellu To: Stefano Stabellini CC: Xen-devel , Jan Beulich , Julien Grall , "andrew.cooper3@citrix.com" , "roger.pau@citrix.com" , Bertrand Marquis , "roberto.bagnara@bugseng.com" , Stefano Stabellini Subject: Re: [PATCH v2] xen/misra: add rules 1.4 and 2.1 Thread-Topic: [PATCH v2] xen/misra: add rules 1.4 and 2.1 Thread-Index: AQHZn9A+0YpNQKb1cEue9Yb+wSfzh6+NAIAA Date: Fri, 16 Jun 2023 06:59:26 +0000 Message-ID: References: <20230615212716.1330929-1-sstabellini@kernel.org> In-Reply-To: <20230615212716.1330929-1-sstabellini@kernel.org> Accept-Language: en-GB, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-mailer: Apple Mail (2.3731.600.7) Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-traffictypediagnostic: AM6PR08MB3749:EE_|PA4PR08MB6142:EE_|DBAEUR03FT026:EE_|DB9PR08MB8412:EE_ X-MS-Office365-Filtering-Correlation-Id: 330186ac-fb09-4346-50c6-08db6e37410e x-checkrecipientrouted: true nodisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: zY51RAAW9blQM7EnzZ156N9Yu+k7Kta/6NEfx4hPVP24XLGNZaIHoYtWwDWld0lT/m86DzDiFK0et7R1bJUosLZmger23uLgDKzQsdAc5HqgA1ULlfH/18mz40Q4Ww29SYueq/ae2KoA1yE8TtUrnUX4+KazhKBR2UeFj0TWtMDXjOahbA7Kwb9/aGJX1C9Y9wSwpbUsCs50ZrqlCpofg4MDQrJHstOAHcq9BZZvGHb2+OSrbKQ5SLfe+T7NxjXjQvVrfZaGIWJz5g5Fu8PdeDY1RnWYYIyr6zp8fGmCKnPpY0Z1RlmNDi/gjuSKVmIVL4fXxNUob4eO/caIZ3AAc8Qm/FvYUwL5krGtHE7jMQ1ptQGbQoE/7W9SEmxV1IC2MoL1nmI3N7+fKRomws4p5pGJxTxaycIEQE066GQGTiHwk4An8VQGvtYgLe97S3F7SbmJJvCOz2NTiyFAPxyUsy01pTBcc2V511qvtzrhTmsyI86B9CJXzz0Jx+q0wUYJsBZSzKzxK5fdYpG0C9v624MVIb+7exhjFlB6JB0lIkVc0Oo4vP4AtdSIaqFfP9QqLNtLtpbG4Uaml/+9O+BwEcfDJD+0NykrQLebp5n4w/xBRNTzPh798ME53Rsuhtp9yBBs3nxl/9I5mGWYTkIHsVt0JMQ6R2f1XuCQ7Eb4eZo= X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM6PR08MB3749.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(376002)(39860400002)(136003)(396003)(346002)(366004)(451199021)(83380400001)(2906002)(2616005)(36756003)(86362001)(38070700005)(33656002)(38100700002)(122000001)(54906003)(8936002)(8676002)(6486002)(316002)(41300700001)(5660300002)(478600001)(66946007)(76116006)(91956017)(66556008)(66476007)(66446008)(4326008)(71200400001)(64756008)(6916009)(6512007)(53546011)(26005)(186003)(6506007)(45980500001);DIR:OUT;SFP:1101; Content-Type: text/plain; charset="utf-8" Content-ID: Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR08MB6142 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: DBAEUR03FT026.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: 5b8ea8ae-7257-4eb9-2817-08db6e373962 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: z2Vec8nLNT+/PFs+S9ISiyPg4xUNM3tOUce0SX29xx531erEBZANRwg+2Mn9n5AnVOsC55cfoeeguatdPPlS1Fmxvx1hDPQ3c2h12Afn8WTuJ1sGeSJhXx54/jtHEJFCT5eM4WvIFuil09QRVLo9fVNDjjqVkU7l/F2WsDauzmFESkXpg/9caQ09kJK9/EUXSSGRp6dT+PpjDu6eUu+o+YHbZYl7kVyLpWCZyTv7YdJFpg2BwvkXpD+4L9GYJ0ZcFh8MbG1m0xAg79eaBtRsAJv+jAtHPchnUWc9goh9FCrxlnoqnnegqa3ZPuezAJfCHqJ+r41UMkn3yeDr/O0D5qJCQgmT19/Yl9ZhwOOKpMRXDzZGpG7KdKlM10kn1uLZkzFkGE7NlApn/NuolLP2X9qKP5Wd6GcLo0r5mEXl9O6queBZmKL+uBxczX6T8PmcMPg4atjZTEiDXso0cdbKayUTPc8Ehl2hkuD+iGjnonrWl/H3FeVFlvy1TQ1P2ZUQaFHVAv2IgV1UHReBkqtsqBdKgLJHnjncNpQDS9K/PyTCQ5nP6kwboVgRWQpdPrQlKkJnBL2Xei7nnPATrlPGqtGNxoBlFcXGeFe71GSu6SBXqI00ZTTfZ/nuHshAV1KAqAxMDi6/cu2uDDG/n8EMPGW8WT7dw/k++9uKjx2JvZBgdvXHiyWG++d8/8jMRWO0HL8Z6DYAiTnuysBfx9DbQp6yBdVe2+Kfwtf52JIpQuRzwlugFjJde09u7TwqIFJezLvqVr27v9xftmRfyVXvsw== X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230028)(4636009)(136003)(39860400002)(376002)(346002)(396003)(451199021)(36840700001)(46966006)(40470700004)(53546011)(26005)(6512007)(6506007)(36756003)(186003)(478600001)(6486002)(40460700003)(40480700001)(2906002)(316002)(41300700001)(5660300002)(86362001)(82740400003)(356005)(81166007)(8936002)(8676002)(6862004)(82310400005)(83380400001)(54906003)(47076005)(2616005)(70206006)(70586007)(4326008)(33656002)(336012)(36860700001);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Jun 2023 06:59:39.6614 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 330186ac-fb09-4346-50c6-08db6e37410e X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: DBAEUR03FT026.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR08MB8412 DQoNCj4gT24gMTUgSnVuIDIwMjMsIGF0IDIyOjI3LCBTdGVmYW5vIFN0YWJlbGxpbmkgPHNzdGFi ZWxsaW5pQGtlcm5lbC5vcmc+IHdyb3RlOg0KPiANCj4gRnJvbTogU3RlZmFubyBTdGFiZWxsaW5p IDxzdGVmYW5vLnN0YWJlbGxpbmlAYW1kLmNvbT4NCj4gDQo+IEFsc28gYWRkIGEgY29tbWVudCBh dCB0aGUgdG9wIG9mIHRoZSBmaWxlIHRvIHNheSBydWxlcy5yc3QgY291bGQgYmUNCj4gY2hhbmdl ZC4NCj4gDQo+IFNpZ25lZC1vZmYtYnk6IFN0ZWZhbm8gU3RhYmVsbGluaSA8c3RlZmFuby5zdGFi ZWxsaW5pQGFtZC5jb20+DQoNCkhpIFN0ZWZhbm8sDQoNClJldmlld2VkLWJ5OiBMdWNhIEZhbmNl bGx1IDxsdWNhLmZhbmNlbGx1QGFybS5jb20+DQoNCg0KV2hpbGUgSSB3YXMgdGVzdGluZyB0aGUg cGF0Y2ggd2l0aCBvdXIgc2NyaXB0IHRoYXQgdHJhbnNsYXRlcyB0aGUgZG9jcyB0byBjcHBjaGVj aw0KSW5wdXRzLCBJIG5vdGljZWQgd2UgbWlnaHQgaGF2ZSBhIHNtYWxsIGlzc3VlIHRoZXJlLCBz ZWVtcyB0aGF0IERpcmVjdGl2ZXMgYW5kIFJ1bGVzDQpjbGFzaGVzLCBhbmQgZnJvbSBhIHF1aWNr IGxvb2sgdG8gY3BwY2hlY2sgYWRkb24sIHNlZW1zIHRoYXQgb25seSB0aGUgcnVsZXMgYXJlIG5l ZWRlZC4NCg0KSeKAmWxsIGhhdmUgYSBsb29rIG9uIHRoYXQgc29vbi4NCg0KPiANCj4gLS0tDQo+ IENoYW5nZXMgaW4gdjI6DQo+IC0gYWRkIGxpbmsgZm9yIDEuNA0KPiAtIGV4cGFuZCAxLjQgY29t bWVudCB0byBzYXkgaXQgY291bGQgYmUgcmV2aXNpdGVkDQo+IC0gYWRkIGNvbW1lbnQgYXQgdGhl IHRvcA0KPiAtLS0NCj4gZG9jcy9taXNyYS9ydWxlcy5yc3QgfCAxNSArKysrKysrKysrKysrKysN Cj4gMSBmaWxlIGNoYW5nZWQsIDE1IGluc2VydGlvbnMoKykNCj4gDQo+IGRpZmYgLS1naXQgYS9k b2NzL21pc3JhL3J1bGVzLnJzdCBiL2RvY3MvbWlzcmEvcnVsZXMucnN0DQo+IGluZGV4IGE4OGMy ODRlN2QuLjExYjljNDJiNzAgMTAwNjQ0DQo+IC0tLSBhL2RvY3MvbWlzcmEvcnVsZXMucnN0DQo+ ICsrKyBiL2RvY3MvbWlzcmEvcnVsZXMucnN0DQo+IEBAIC0zMiw2ICszMiw5IEBAIHZpb2xhdGlv bnMgYXJlIG1lYW50IHRvIGJlIGRvY3VtZW50ZWQgYXMgZGV2aWF0aW9ucywgd2hpbGUgc29tZSBv dGhlcnMNCj4gc2hvdWxkIGJlIGZpeGVkLiBCb3RoIGNvbXBsaWFuY2UgYW5kIGRvY3VtZW50aW5n IGRldmlhdGlvbnMgb24gdGhlDQo+IGV4aXN0aW5nIGNvZGViYXNlIGFyZSB3b3JrLWluLXByb2dy ZXNzLg0KPiANCj4gK1RoZSBsaXN0IGJlbG93IG1pZ2h0IG5lZWQgdG8gYmUgdXBkYXRlZCBvdmVy IHRpbWUuIFJlYWNoIG91dCB0byBUSEUgUkVTVA0KPiArbWFpbnRhaW5lcnMgaWYgeW91IHdhbnQg dG8gc3VnZ2VzdCBhIGNoYW5nZS4NCj4gKw0KPiAuLiBsaXN0LXRhYmxlOjoNCj4gICAgOmhlYWRl ci1yb3dzOiAxDQo+IA0KPiBAQCAtOTAsNiArOTMsMTggQEAgZXhpc3RpbmcgY29kZWJhc2UgYXJl IHdvcmstaW4tcHJvZ3Jlc3MuDQo+ICAgICAgICBiZWhhdmlvdXINCj4gICAgICAtDQo+IA0KPiAr ICAgKiAtIGBSdWxlIDEuNCA8aHR0cHM6Ly9naXRsYWIuY29tL01JU1JBL01JU1JBLUMvTUlTUkEt Qy0yMDEyL0V4YW1wbGUtU3VpdGUvPmBfDQo+ICsgICAgIC0gUmVxdWlyZWQNCj4gKyAgICAgLSBF bWVyZ2VudCBsYW5ndWFnZSBmZWF0dXJlcyBzaGFsbCBub3QgYmUgdXNlZA0KPiArICAgICAtIEVt ZXJnZW50IGxhbmd1YWdlIGZlYXR1cmVzLCBzdWNoIGFzIEMxMSBmZWF0dXJlcywgc2hvdWxkIG5v dCBiZQ0KPiArICAgICAgIGNvbmZ1c2VkIHdpdGggc2ltaWxhciBjb21waWxlciBleHRlbnNpb25z LCB3aGljaCB3ZSB1c2UuIFdoZW4gdGhlDQo+ICsgICAgICAgdGltZSBjb21lcyB0byBhZG9wdCBD MTEsIHRoaXMgcnVsZSB3aWxsIGJlIHJldmlzaXRlZC4NCj4gKw0KPiArICAgKiAtIGBSdWxlIDIu MSA8aHR0cHM6Ly9naXRsYWIuY29tL01JU1JBL01JU1JBLUMvTUlTUkEtQy0yMDEyL0V4YW1wbGUt U3VpdGUvLS9ibG9iL21hc3Rlci9SXzAyXzAxXzEuYz5gXw0KPiArICAgICAtIFJlcXVpcmVkDQo+ ICsgICAgIC0gQSBwcm9qZWN0IHNoYWxsIG5vdCBjb250YWluIHVucmVhY2hhYmxlIGNvZGUNCj4g KyAgICAgLQ0KPiArDQo+ICAgICogLSBgUnVsZSAyLjYgPGh0dHBzOi8vZ2l0bGFiLmNvbS9NSVNS QS9NSVNSQS1DL01JU1JBLUMtMjAxMi9FeGFtcGxlLVN1aXRlLy0vYmxvYi9tYXN0ZXIvUl8wMl8w Ni5jPmBfDQo+ICAgICAgLSBBZHZpc29yeQ0KPiAgICAgIC0gQSBmdW5jdGlvbiBzaG91bGQgbm90 IGNvbnRhaW4gdW51c2VkIGxhYmVsIGRlY2xhcmF0aW9ucw0KPiAtLSANCj4gMi4yNS4xDQo+IA0K PiANCg0K From xen-devel-bounces@lists.xenproject.org Fri Jun 16 07:19:37 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 16 Jun 2023 07:19:37 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550025.858894 (Exim 4.92) (envelope-from ) id 1qA3js-0006An-Bq; Fri, 16 Jun 2023 07:19:20 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550025.858894; Fri, 16 Jun 2023 07:19:20 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qA3js-0006Ag-8I; Fri, 16 Jun 2023 07:19:20 +0000 Received: by outflank-mailman (input) for mailman id 550025; Fri, 16 Jun 2023 07:19:19 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qA3jr-0006Aa-2G for xen-devel@lists.xenproject.org; Fri, 16 Jun 2023 07:19:19 +0000 Received: from EUR05-DB8-obe.outbound.protection.outlook.com (mail-db8eur05on2061b.outbound.protection.outlook.com [2a01:111:f400:7e1a::61b]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 1ac155d0-0c16-11ee-b232-6b7b168915f2; Fri, 16 Jun 2023 09:19:17 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by AS8PR04MB8916.eurprd04.prod.outlook.com (2603:10a6:20b:42f::23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.29; Fri, 16 Jun 2023 07:19:15 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.039; Fri, 16 Jun 2023 07:19:14 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 1ac155d0-0c16-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=QO/kaLyifzNhBvQCUdlOCfIOEoBZznPZmzHQF/YPaO44n1552TpLIMKl4dVr4n/bt+KN1zkJgJ1JTFE9gw8O/VF37Kq/ebQTlMtQ6F9irfG5WSmuPzG0UfuaE2HMnIMoBwYLCMEsQPIWVS1hTG86BF4rVaWsPAUpxOVlyEqgG9T/On80PfNfv8pOvVVzSmwdw6xBztCSO+u7nZNpDoVa34DU26bCaJ4GplodyxUg1vdHNJWI16mDTbNmnXYh7a4zgTIoy8ximS1RVTdh9XEYEcZn2YNFPRydHyDYLhGzl8ivRDSgZLtr26ZNnzf0k4Soddc4Kcdi+nyXLkcVWGTzyg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=p9GTJ1kuzPSWUrtDGYm9JyTBeMTLVQJg9R+4uoGTD1c=; b=PubUqC4aHlK5NyVfg29+aGfYXzm0UKhNB05haOmTw57R7ggIJW8BLUn0Kbv5uloa138vHq7qpojOiejQQilBI+UrhzP9kp4krXS3YfRCpFGvkGX5crVg6Tcn9mIvfdE/C1Y4p8KxaPevWwiK1ykj2DQzeAlcp16Mq2HqbeeItZR39hey+WMlFITLbyvj6BoRcwV6FAb7FJ/DLXivDI38BVxb5HzxJD4WWXXMuPdzelmuZkZQPFG2RMMAe41c6PVZdeN/UlLVHLc+uqpqs0CkOp8NDMXxnr1n42YBP0yrSo+JnFO8yHJAnvIBQOVJ5BU67Jh9ZV4Kbt+7Yiuh8uPzEw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=p9GTJ1kuzPSWUrtDGYm9JyTBeMTLVQJg9R+4uoGTD1c=; b=z8wssizdxPaFqihsg+WamUT16ZiPCHnFyC1AWAmWp/4ndq3gbRG27L6y0OAM0xYsUU5MfLCg5fQKxTSUc12tZzwEgYJEuws9Skpq/eaRozfuAIytcxKCP4dFpXKGvIxbLzKJSuaTbDSeT+ABVbZKQw5PoL3IYPDkGRXMMwqZ0cdEVUaDLTIUtn0SowHlfTJgwZWxzfrQypOdsZzNJnK7ShLTKb/slUsZM1/sjRr3li4/h/DFy/fOf5Iqd6VIGviWU0wffxkRifK0qRQETrgigcfNztPepvI5GlCQT3MBduOAfjbYhSubnBvDLWll7B6X9kW7Sj0A5/tjZUBka4OV7g== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <3fc32674-af28-2a04-4eb8-059364a6a6fb@suse.com> Date: Fri, 16 Jun 2023 09:19:12 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: Refactoring of a possibly unsafe pattern for variable initialization via function calls Content-Language: en-US To: nicola Cc: Stefano Stabellini , Andrew Cooper , George Dunlap , Julien Grall , Wei Liu , Xen-devel References: From: Jan Beulich In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR0P281CA0120.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:a8::10) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|AS8PR04MB8916:EE_ X-MS-Office365-Filtering-Correlation-Id: 49e99047-741d-41bb-4139-08db6e39fd6c X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: eRfqsorGixNzLJXHBOGoX36RFVfhN5ygfcmSgoUPyvmbVlGHtf8GZdfx79eO06O0AZ1BcBvVFQ8JhDK1E1zA8pa/KKJ3/WG11LfNM6mtIaumJhEQ6Hmt8S+hszvCs2R/BQhigZe7eePX3iFxIvL78XSTCEMA6YrOOtM+wv94GOKiq0KouqC9ggmo16U8hL44hIkILBOHJ+U630yOyAZNhgAjfhAxybFFnd/4/xU22zT0aYLAO4KMTjUFW9Xx9w3FAhURSUy7quEjMYCsx1g/D8ilIew3XSChY5o4oIyVx05bEgI9dNfJpQM7a5QMCCAziwBeSqpu9sc+hNu0DDeUbn9YN8t8lJyAsnFFIlg92mNXlPTIPaf+tJKv9wunaoPP58P6hdNF+25RlTyhy0R6XX5awwAuc2BG/KCGOY1wymeI/9S/LDIQvVi8tK6/O0U+d2WTKMBKYrPy+N0CNyGGUSYRJozFGIuRJp9Dsl9XHOe8ZM4h5vpxj//iWOE4/tCYIbIRE3PaDWZsg0YacHLFCWLYmHHCa2ks3IGNJaekpWSGTsqzj39pDP4B1ZQEHQppQL47CEhEQuudJtbND27/7UcWlFb6qJw0c+2yWcN6o6wcmHQFPclFBleiIwznnIYEw2CJMTkn1nH3nAPGKT8EKw== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(346002)(396003)(136003)(366004)(376002)(39860400002)(451199021)(31686004)(86362001)(31696002)(38100700002)(8936002)(8676002)(5660300002)(316002)(41300700001)(6916009)(4326008)(66556008)(66946007)(66476007)(54906003)(83380400001)(2616005)(186003)(36756003)(478600001)(26005)(53546011)(6512007)(6506007)(2906002)(6486002)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?YWtmbVViNFV5UXVYUGsyY3A2Vy9xZzlnMjVMdlVtZ3dOTDl0RjZuR3NmWlBI?= =?utf-8?B?SE5UY2JvekdaNnM2RXlDam42M292YkJDNUFleVgrWmlybGFYNnhUYVZ1dklY?= =?utf-8?B?c3VuN00ycysyWFRUSmtlZTJaMkI5K2I3ZmVjZHpEcWszamxnM1BNV0I0OWxn?= =?utf-8?B?MG0vN29VOEEyenNkZEdUamlITFlTekI2SVBKcDBlM1cwSThkbWc1VDdMQk1o?= =?utf-8?B?V1NlSGV4WU9YWmJhLzBEZ2V4cGRaaml6QTZtSkRPeDN5c1ZNT1Q4M292VmpU?= =?utf-8?B?WVpBQjJvZkQ3c3RsMU40VUdMd0l5dDBHV0hjaFZCTW9TMXpCdjhkVjZ4dXJY?= =?utf-8?B?SUhkV1JyN0pGb2Z6OExCd05POVVjUmh1clB5a1lPQ2syTFl0aDliSFVlK3VK?= =?utf-8?B?WUIvWVUwV2FRbGxmMDlTa0YwWSt1L3A5VkwwSU5sbDVDSUdzRWwwOVppVDd1?= =?utf-8?B?SzBQZnBqS2RxNHFpZkpuZVhNMGtONXNzeVVOS3AzZFY2ODlQenV0cExSVVli?= =?utf-8?B?eXlQeGtJeWhzbG1ob2ZEbURuQXVDcVdLV0FqblJtNXJ0SkNMa1k0WTRNZXVx?= =?utf-8?B?N2pXVDV0a3lZTkpMck02OUgxOG1odlU5aHNLVkxkci9Sdmk5SFZrTTF5dTQy?= =?utf-8?B?T1ZsUzFzRjZwS0xnK05RK2V2Q2hiYktmcVVpQk5vemYra0VpSGRsNy8vdHJp?= =?utf-8?B?MDNrNDFkS3BVNXo1aDQvdXRaU0FPUFBZaHhvcHkvb1gxRlZweExYaTJGWWRC?= =?utf-8?B?YjFQbTk1VGgrQTJjU1FXUmJJY29TZjYxSG5vcDFsajJCaFVscmM2bVVuc05S?= =?utf-8?B?R3lYUDZ6YXB4SzlrYmJKaWFtOWR5UHlVU0lSTlduN1FUSloxR1lOZ2JhZFl0?= =?utf-8?B?YVMwOURLR2JFRDRDWlcwclBXSzdXWVVQTW10UEYwNEVSZlZNaGNsdW5pMHkx?= =?utf-8?B?dHhtWHV5UTRFdGNjZXlCanNNcnJLTU5jU2l3RlhlK1BxSDRocUUwOU5EV3Rv?= =?utf-8?B?eGdXbmpRWHNZTmxPY09XQ0ZqaGh1SHdxOFZhWmFTYVpzZEZKUlVrUUZraGZZ?= =?utf-8?B?UDdFeFF0RXIxOXc5d1d2dzVYZDdOYVZLR2FwNSs4anVQdk42SWY3Slh5SGIz?= =?utf-8?B?bFZyNmlFQjhZMnMzcXBpdFZNYTJmRnhzTE9sb2pndk9wVVJBSDZYQW1ORXVZ?= =?utf-8?B?WjRxQTQ0SHBxQ0tsdmdTbWE3Rm9rWHF2UXo5NlMwRnhRTTZCa2VKRWxSL2ty?= =?utf-8?B?TmpTREdMYVNranp2ZkFIamVPZ3pRRDFwbVV1KzRwaDZrN2ZBRzZHdSsxUC9P?= =?utf-8?B?aTRDRDk2WmpRY2pWZktYY0haY25panhTRWdVNjU2VFFwdDhTY1hHYmhFaUhh?= =?utf-8?B?b1hTZjZoWlVoM0hKaGJQYzJwUnJ3Q2N5dzZhSmsyc0xkK2NaZThOOWE0YUI4?= =?utf-8?B?SyttNGZrbUwzcWxzOEhQY2dsaDdNQkRnTEEyRE8rcHBHaWlBeWNCa3NVQnFz?= =?utf-8?B?Vk40blNqQk1OSm1yaTR4aEpVcnAzdlpQeXpYcHg5eTRjTHlnU0pIYkV6LytU?= =?utf-8?B?M3h1NjZDUWJONlE0MmlMY3Zza0ZzZU5EZlZ3SlgwOWFPREpIQ00vQ1JEamN2?= =?utf-8?B?ZXBRQUdxc3VzWXBZZCt3M0lreUhIUldaeDFmZWFnaXBvQXgvZngzelRMTjIv?= =?utf-8?B?c0xoaGE1ejFmSzBabFdtdVA4VG53RGNJSnRsbzZLTWhDZkJFMWNRYk1Hc3E0?= =?utf-8?B?M3B4YVVzRHAyOFNVdVpJT3ZDUmVWYmY0Nk5ncWlqRDBXTVFZY25LaFhkSTAw?= =?utf-8?B?REM3aW8xOHRtVFUvbTcxcXc2dlBKWWx6cFNwcVZWOG02QWpDQkJ0WGU5T3RM?= =?utf-8?B?aW16OWlzU09mNjd6aFNTdWd0Tmc2T3doUVJOakhUcUNGUFFzaGlheSs5VU5R?= =?utf-8?B?SWdTNjlFNnZUc25VVnd3aEpjaU03b0Rtc01iWWIrV1dxOGk5eDhxUlQ3aEN4?= =?utf-8?B?VGRobFFjOWZGYURMeCs3RldxTDZyMmVubDBQS1FtQTVIRUYzS3paM1hEWWd0?= =?utf-8?B?bHhKRWtZMzdPS28yOVNST2pwUUN4ZWlManJwOTBGN3dhd092Wm53elU0eWdn?= =?utf-8?Q?pXUIHV/NGDvs/HRs28fHTAILz?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 49e99047-741d-41bb-4139-08db6e39fd6c X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Jun 2023 07:19:14.8316 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: nyEUDih17gEcYGTXvEDd9J1XOEyySOH2GQACKn95jBj28yXGeUUNn20wWYsxGX+i7v5LlbcnnGOAcozbMoBrmQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB8916 On 15.06.2023 18:39, nicola wrote: > while investigating possible patches regarding Mandatory Rule 9.1, I > found the following pattern, that is likely to results in a lot possible > positives from many (all) static analysis tools for this rule. > > This is the current status (taken from `xen/common/device_tree.c:135') > > > const struct dt_property *dt_find_property(const struct dt_device_node *np, > const char *name, u32 *lenp) > { > const struct dt_property *pp; > > if ( !np ) > return NULL; > > for ( pp = np->properties; pp; pp = pp->next ) > { > if ( dt_prop_cmp(pp->name, name) == 0 ) > { > if ( lenp ) > *lenp = pp->length; > break; > } > } > > return pp; > } > > > > > It's very hard to detect that the pointee is always written whenever a > non-NULL pointer for `lenp' is supplied, and it can safely be read in > the callee, so a sound analysis will err on the cautious side. I'm having trouble seeing why this is hard to recognize: The loop can only be exited two ways: pp == NULL or with *lenp written. For rule 9.1 I'd rather expect the scanning tool (and often the compiler) to get into trouble with the NULL return value case, and *lenp not being written yet apparently consumed in the caller. Then, however, ... > My proposal, in a future patch, is to refactor these kinds of functions > as follows: > > > const struct dt_property *dt_find_property(const struct dt_device_node *np, > const char *name, u32 *lenp) > { > u32 len = 0; > const struct dt_property *pp; > > if ( !np ) > return NULL; ... this path would be a problem as well. > for ( pp = np->properties; pp; pp = pp->next ) > { > if ( dt_prop_cmp(pp->name, name) == 0 ) > { > len = pp->length; > break; > } > } > > if ( lenp ) > *lenp = len; > return pp; > } > > > The advantage here is that we can easily argue that `*lenp' is always > initialized by the function (if not NULL) and inform the tool about > this, which is a safer API and also resolves almost all subsequent > "don't know"s about further uses of the variables involved (e.g. `lenp'). The disadvantage is that in a more complex case and with the function e.g. being static, the initializer of "len" may prevent compiler / tools from spotting cases where the variable would (otherwise) truly (and wrongly) remain uninitialized (and that fact propagating up the call chain, through - in this example - whatever variable's address the caller passed for "lenp"). IOW - I don't think a common pattern can be agreed upon up front for cases like this one. Jan From xen-devel-bounces@lists.xenproject.org Fri Jun 16 07:45:32 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 16 Jun 2023 07:45:32 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550032.858903 (Exim 4.92) (envelope-from ) id 1qA492-0001DW-Ef; Fri, 16 Jun 2023 07:45:20 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550032.858903; Fri, 16 Jun 2023 07:45:20 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qA492-0001DP-Bs; Fri, 16 Jun 2023 07:45:20 +0000 Received: by outflank-mailman (input) for mailman id 550032; Fri, 16 Jun 2023 07:45:19 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qA491-0001DJ-Gx for xen-devel@lists.xenproject.org; Fri, 16 Jun 2023 07:45:19 +0000 Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id bbf5973f-0c19-11ee-8611-37d641c3527e; Fri, 16 Jun 2023 09:45:16 +0200 (CEST) Received: from [192.168.1.143] (unknown [151.57.159.155]) by support.bugseng.com (Postfix) with ESMTPSA id 826FB4EE0738; Fri, 16 Jun 2023 09:45:14 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: bbf5973f-0c19-11ee-8611-37d641c3527e Message-ID: <47325b0b-2ccc-6485-da59-2c0a367c2bf0@bugseng.com> Date: Fri, 16 Jun 2023 09:45:12 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.12) Gecko/20050929 Thunderbird/1.0.7 Fedora/1.0.7-1.1.fc4 Mnenhy/0.7.3.0 Subject: Re: [XEN PATCH] docs/misra: document the C dialect and translation toolchain assumptions. Content-Language: en-US To: Jan Beulich , Stefano Stabellini Cc: xen-devel@lists.xenproject.org, consulting@bugseng.com, Andrew Cooper , George Dunlap , Julien Grall , Wei Liu References: <7eaadcb4-8580-b240-4451-5a98c66ebe5a@suse.com> From: Roberto Bagnara In-Reply-To: <7eaadcb4-8580-b240-4451-5a98c66ebe5a@suse.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit On 16/06/23 08:53, Jan Beulich wrote: > On 16.06.2023 01:26, Stefano Stabellini wrote: >> On Thu, 15 Jun 2023, Roberto Bagnara wrote: >> I have a few comments below, mostly to clarify the description of some >> of the less documented GCC extensions, for the purpose of having all >> community members be able to understand what they can and cannot use. > > What do you mean by "can and cannot use"? Is this document intended to > forbid the use of any extensions we may not currently use, or we use > but which aren't enumerated here? > > One of the reasons that kept me from replying to this submission is > that the full purpose of this new doc isn't stated in the description. My full purpose was to give the community a starting point for the discussion on the assumptions the project makes on the programming language and the translation toolchains that are intended to be used now or in the future. As far as I know, no documentation is currently provided on these topics, so I believe the document fills a gap and I hope it is good enough as a starting point. > Which in turn leaves open whether certain items actually need to be > here (see e.g. the libc related remark below). Because the analyzed build used to included some of the tools, which in turn relied on libc for program termination. Once confirmation is given that the analyzed build is now what is intended, all references to libc can be removed. > Another is that it's > hard to tell how to convince oneself of this being an exhaustive > enumeration. One extension we use extensively yet iirc is missing here > is omission of the middle operand of the ternary operator. Not sure I understand: do you mean something different from the following entry in the document? * - Binary conditional expression - ARM64, X86_64 - See Section "6.8 Conditionals with Omitted Operands" of GCC_MANUAL. >>> +Reference Documentation >>> +_______________________ >>> + >>> +The following documents are referred to in the sequel: >>> + >>> +GCC_MANUAL: >>> + https://gcc.gnu.org/onlinedocs/gcc-12.1.0/gcc.pdf >>> +CPP_MANUAL: >>> + https://gcc.gnu.org/onlinedocs/gcc-12.1.0/cpp.pdf > > Why 12.1 when meanwhile there's 12.3 and 13.1? For no special reason: as I said, my purpose is only to provide a starting point for discussion and customization of the assumptions. >>> +ARM64_ABI_MANUAL: >>> + https://github.com/ARM-software/abi-aa/blob/60a8eb8c55e999d74dac5e368fc9d7e36e38dda4/aapcs64/aapcs64.rst >>> +X86_64_ABI_MANUAL: >>> + https://gitlab.com/x86-psABIs/x86-64-ABI/-/jobs/artifacts/master/raw/x86-64-ABI/abi.pdf?job=build >>> +ARM64_LIBC_MANUAL: >>> + https://www.gnu.org/software/libc/manual/pdf/libc.pdf >>> +X86_64_LIBC_MANUAL: >>> + https://www.gnu.org/software/libc/manual/pdf/libc.pdf > > How is libc relevant to the hypervisor? See above. >>> + * - Empty declaration >>> + - ARM64, X86_64 >>> + - Non-documented GCC extension. >> >> For the non-documented GCC extensions, would it be possible to add a >> very brief example or a couple of words in the "References" sections? >> Otherwise I think people might not understand what we are talking about. >> >> For instance in this case I would say: >> >> An empty declaration is a semicolon with nothing before it. >> Non-documented GCC extension. > > Which then could be confused with empty statements. I think in a document > like this language needs to be very precise, to avoid ambiguities and > confusion as much as possible. (Iirc from going over this doc yesterday > this applies elsewhere as well.) OK. >>> + * - Ill-formed source detected by the parser >> >> As we are documenting compiler extensions that we are using, I am a bit >> confused by the name of this category of compiler extensions, and the >> reason why they are bundled together. After all, they are all separate >> compiler extensions? Should each of them have their own row? > > +1 OK. >>> + >>> + * - Unspecified escape sequence is encountered in a character constant or a string literal token >>> + - X86_64 >>> + - \\m: >>> + non-documented GCC extension. >> >> Are you saying that we are using \m and \m is not allowed by the C >> standard? > > This exists in the __ASSEMBLY__ part of a header, and I had previously > commented on Roberto's diagnosis (possibly derived from Eclair's) here. > As per that I don't think the item should be here, but I'm of course > open to be shown that my understanding of translation phases is wrong. I was not convinced by your explanation but, as I think I have said already, I am not the one to be convinced. In the specific case, independently from __ASSEMBLY__ or any other considerations, that thing reaches the C preprocessor and, to the best of my knowledge, the C preprocessor documentation does not say how that would be handled. I have spent a lot of time in the past 10 years on the study of functional-safety standards, and what I am providing is a honest opinion on what I believe is compliant and what is not. But I may be wrong of course: if you or anyone else feels like they would not have any problems in arguing a different position from mine in front of an assessor, then please go for it, but please do not ask me to go beyond my judgment. >>> + * - Non-standard type >> >> Should we call it "128-bit Integers" ? > > Or better more generally "Extended integer types" (or something along > these lines, i.e. as these are called in the spec)? OK, "Extended integer types" is indeed a good summary of item 1 of C99 Section "J.3.5 Integers", which is "Any extended integer types that exist in the implementation (6.2.5)." From xen-devel-bounces@lists.xenproject.org Fri Jun 16 07:59:32 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 16 Jun 2023 07:59:32 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550039.858914 (Exim 4.92) (envelope-from ) id 1qA4MZ-0002lH-Kx; Fri, 16 Jun 2023 07:59:19 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550039.858914; Fri, 16 Jun 2023 07:59:19 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qA4MZ-0002lA-IN; Fri, 16 Jun 2023 07:59:19 +0000 Received: by outflank-mailman (input) for mailman id 550039; Fri, 16 Jun 2023 07:59:18 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qA4MY-0002l4-LN for xen-devel@lists.xenproject.org; Fri, 16 Jun 2023 07:59:18 +0000 Received: from NAM02-SN1-obe.outbound.protection.outlook.com (mail-sn1nam02on2061c.outbound.protection.outlook.com [2a01:111:f400:7ea9::61c]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id aec4c086-0c1b-11ee-8611-37d641c3527e; Fri, 16 Jun 2023 09:59:14 +0200 (CEST) Received: from BN1PR10CA0023.namprd10.prod.outlook.com (2603:10b6:408:e0::28) by MW4PR12MB6803.namprd12.prod.outlook.com (2603:10b6:303:20e::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.37; Fri, 16 Jun 2023 07:59:09 +0000 Received: from BN8NAM11FT105.eop-nam11.prod.protection.outlook.com (2603:10b6:408:e0:cafe::a1) by BN1PR10CA0023.outlook.office365.com (2603:10b6:408:e0::28) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.27 via Frontend Transport; Fri, 16 Jun 2023 07:59:09 +0000 Received: from SATLEXMB04.amd.com (165.204.84.17) by BN8NAM11FT105.mail.protection.outlook.com (10.13.176.183) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6500.30 via Frontend Transport; Fri, 16 Jun 2023 07:59:09 +0000 Received: from SATLEXMB04.amd.com (10.181.40.145) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Fri, 16 Jun 2023 02:59:08 -0500 Received: from [10.71.193.39] (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server id 15.1.2507.23 via Frontend Transport; Fri, 16 Jun 2023 02:59:06 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: aec4c086-0c1b-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=ihUvspbxNOcxtIi9Y5s6bHj+FR67qHO6lT5nzoP/iM9AxqkeVSx/RYrwT3mJH7n3SXeh+KzrUwJurkfeKYpzyhNx6LQI31kQ69eK3K6npsO2xeChH2EhsHk26Pz9KqnUV7VejjE8oPoqO8LhKMwNMiQwsv3WRqiw4XwkHus2IMH8z+BJVjqVQi610mxwQiBSmyEWazItQrkiOkhihFEp8RvLJjEuX2+8IsNoCZRuqYBp7pyYfazxerB39Ipjvhd0yrj/2VChlz5RrUjUl4DBRhnyKFsXEpX8Aa2FUYzNpsKEbhg02IT+C7xdimuUfyXdL//HpOXUYLySrAKorvwgkA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=oZaHSpr25C2HE1KvWI0eK5BbPCCE5r8n20DlrLwBkBY=; b=ngMSmbZOYxRgvNURcFYPzlqtqEgvzfHWHMxChVtD3poHr5nWJ/HwPdH4j+bv+NFSXATcuOtsl2xXrhoQ0M1Xpp7Aw3lLSmncSoD/f6p0pKgFZaCHdielQKPrczEKJnIKEsf/HyWmM3/vlto1LscgRmgcsI2IG1Di62yI3VHE91V/3fmYwu4Z88IqKH5yKxmXBby83AszDJITvjWMY5HHSjpeCst6wf8crzp+w3kRofTzucKR6i3A6OaKREzcDnlii2aeGuoCmA1Hgf1c1leZRQKYiqhZIwk/1zvAoFlOkHrb4xcDc82HroXVaLJbwm5HZrlWFLYdOZw+LB7yizKLig== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=xen.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=oZaHSpr25C2HE1KvWI0eK5BbPCCE5r8n20DlrLwBkBY=; b=bU/iWHthB4rer3mNowCIMRcm0nl4LW6vMujbJ4VEjIascmGZa3F3SCUhMqwIKs9B6fyUivjoMNv+wg3ZEz21Wg7DstMirBcz1hBSMtu11kgspZDkzodzUx4MxYxPUS4+Smp9xkR+c01AXYz6Rnz2frNAtLh2HUHIPR3OS7ginnE= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C Message-ID: <9590af0b-e40e-6996-0dc1-00e065d62187@amd.com> Date: Fri, 16 Jun 2023 09:59:06 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [XEN v8 1/5] xen/arm: p2m: Use the pa_range_info table to support ARM_32 and ARM_64 Content-Language: en-US To: Julien Grall , Ayan Kumar Halder , CC: , , , , , , , , References: <20230602120754.23817-1-ayan.kumar.halder@amd.com> <20230602120754.23817-2-ayan.kumar.halder@amd.com> From: Michal Orzel In-Reply-To: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BN8NAM11FT105:EE_|MW4PR12MB6803:EE_ X-MS-Office365-Filtering-Correlation-Id: c9e3a363-0a94-4677-96c3-08db6e3f909f X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 4cIhi3CfwN3XoVTk6PmDK2svJmbceDcO0IrfHvJeHqn1TD95co9N9kokDAW0SwwwhSdqXLqb6kTb/TKaYOeNTckN8PGzlLWRGCbncMLiYCAdeS8PTeweK0sN/33e14PClAm2kUjOvFejxuCrstW1KaPAkweVNJ+9wwZvkKs0bL/pDgXLB6eBJVdPHJD4tne4nFxKxN68bbkya+oC6Qirggn4NRNQ/vBUqnYjhL7U0J3zBx6WwQYKfMwc5sggkCElNikjtWcnzUjuzwsiT4PohWyByEocJFkhGBWFcL4egLB0GFaEu+5QxCYodS6zFnOK8ERLEAd14rcSdFStrNtPVLBQ17MttrGALLgThoKPNLzXjml4sdeONgerfVbyFqm6kiSTOLJPQzg2StVkBAaXbBT2tbUzzNLLbnDDG9Er7eolVDMbrWywCozG9LS0NrSlDal67TP/7mEp8ANYMAEBFHWI/NFOUcKQzWOV0u5FAQJt+EI1VkiT0krEDq7+2SE5NONeoFXJCKSA0BccqnBoSapgYP6rUA88+uks0ZFxSHnP0an/w8S2o1sx2trDqD3sWPh5OAEXFYuN8zX5voleDhhMoyR1bS0bXZHGgszvryhXRS9k05D4CrMcx6nK007L8HGQvscCSsVGdk+wUc/SfXK+uQijtFBPjUVPbKdzZ/3DV4hgEhV1/XDZnfBYSEfio3xNixo/Elk/EBWgCSQ6S1pzfXb4p8EuAozKnSdXtSUOlIxXmPbbptpnT9jsRIH49CVESYjmXfGKS6CJDVuvnJ90DYCZquKC2qwJIACv2T4xNkoyhodxf210jYsWL8iV X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(136003)(39860400002)(376002)(346002)(396003)(451199021)(46966006)(40470700004)(36840700001)(53546011)(26005)(36756003)(186003)(478600001)(40480700001)(40460700003)(2906002)(4744005)(316002)(336012)(41300700001)(44832011)(8936002)(86362001)(7416002)(8676002)(31696002)(82310400005)(31686004)(81166007)(356005)(82740400003)(5660300002)(426003)(83380400001)(54906003)(47076005)(16576012)(66899021)(2616005)(70206006)(70586007)(4326008)(110136005)(36860700001)(36900700001)(43740500002);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Jun 2023 07:59:09.1117 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: c9e3a363-0a94-4677-96c3-08db6e3f909f X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com] X-MS-Exchange-CrossTenant-AuthSource: BN8NAM11FT105.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW4PR12MB6803 Hi Julien, On 15/06/2023 22:32, Julien Grall wrote: > > > Hi Michal, > > I notice you posted some comments but didn't add a Acked-by/Reviewed-by. > Can you indicate if you are happy with the patch so long your comments > are addressed? > > If so, are you OK if I deal with them on commit? I thought I added my tag but clearly not. With the remarks addressed on commit: Reviewed-by: Michal Orzel ~Michal From xen-devel-bounces@lists.xenproject.org Fri Jun 16 08:46:36 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 16 Jun 2023 08:46:36 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550051.858924 (Exim 4.92) (envelope-from ) id 1qA569-0000JZ-Pk; Fri, 16 Jun 2023 08:46:25 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550051.858924; Fri, 16 Jun 2023 08:46:25 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qA569-0000JS-Lz; Fri, 16 Jun 2023 08:46:25 +0000 Received: by outflank-mailman (input) for mailman id 550051; Fri, 16 Jun 2023 08:46:24 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qA568-0000JK-Dp for xen-devel@lists.xenproject.org; Fri, 16 Jun 2023 08:46:24 +0000 Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 453cb930-0c22-11ee-b232-6b7b168915f2; Fri, 16 Jun 2023 10:46:22 +0200 (CEST) Received: from [192.168.1.198] (unknown [151.57.159.155]) by support.bugseng.com (Postfix) with ESMTPSA id BE8C44EE074E; Fri, 16 Jun 2023 10:46:20 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 453cb930-0c22-11ee-b232-6b7b168915f2 Message-ID: <4522eead-bcc3-a735-3293-54ec457e83eb@bugseng.com> Date: Fri, 16 Jun 2023 10:46:19 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 From: Nicola Vetrini Subject: Re: Refactoring of a possibly unsafe pattern for variable initialization via function calls To: Jan Beulich Cc: Stefano Stabellini , Andrew Cooper , George Dunlap , Julien Grall , Wei Liu , Xen-devel References: <3fc32674-af28-2a04-4eb8-059364a6a6fb@suse.com> Content-Language: en-US In-Reply-To: <3fc32674-af28-2a04-4eb8-059364a6a6fb@suse.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit On 16/06/23 09:19, Jan Beulich wrote: > On 15.06.2023 18:39, nicola wrote: >> while investigating possible patches regarding Mandatory Rule 9.1, I >> found the following pattern, that is likely to results in a lot possible >> positives from many (all) static analysis tools for this rule. >> >> This is the current status (taken from `xen/common/device_tree.c:135') >> >> >> const struct dt_property *dt_find_property(const struct dt_device_node *np, >> const char *name, u32 *lenp) >> { >> const struct dt_property *pp; >> >> if ( !np ) >> return NULL; >> >> for ( pp = np->properties; pp; pp = pp->next ) >> { >> if ( dt_prop_cmp(pp->name, name) == 0 ) >> { >> if ( lenp ) >> *lenp = pp->length; >> break; >> } >> } >> >> return pp; >> } >> >> >> >> >> It's very hard to detect that the pointee is always written whenever a >> non-NULL pointer for `lenp' is supplied, and it can safely be read in >> the callee, so a sound analysis will err on the cautious side. > > I'm having trouble seeing why this is hard to recognize: The loop can > only be exited two ways: pp == NULL or with *lenp written. > > For rule 9.1 I'd rather expect the scanning tool (and often the compiler) > to get into trouble with the NULL return value case, and *lenp not being > written yet apparently consumed in the caller. Then, however, ... You're right, I made a mistake, thank you for finding it. I meant to write on `*lenp' in all execution paths. Please, take a look at this revised version: const struct dt_property *dt_find_property(const struct dt_device_node *np, const char *name, u32 *lenp) { u32 len = 0; const struct dt_property *pp = NULL; if ( np ) { for ( pp = np->properties; pp; pp = pp->next ) { if ( dt_prop_cmp(pp->name, name) == 0 ) { len = pp->length; break; } } } if ( lenp ) *lenp = len; return pp; } >> My proposal, in a future patch, is to refactor these kinds of functions >> as follows: >> >> >> const struct dt_property *dt_find_property(const struct dt_device_node *np, >> const char *name, u32 *lenp) >> { >> u32 len = 0; >> const struct dt_property *pp; >> >> if ( !np ) >> return NULL; > > ... this path would be a problem as well. > >> for ( pp = np->properties; pp; pp = pp->next ) >> { >> if ( dt_prop_cmp(pp->name, name) == 0 ) >> { >> len = pp->length; >> break; >> } >> } >> >> if ( lenp ) >> *lenp = len; >> return pp; >> } >> >> >> The advantage here is that we can easily argue that `*lenp' is always >> initialized by the function (if not NULL) and inform the tool about >> this, which is a safer API and also resolves almost all subsequent >> "don't know"s about further uses of the variables involved (e.g. `lenp') > The disadvantage is that in a more complex case and with the function > e.g. being static, the initializer of "len" may prevent compiler / > tools from spotting cases where the variable would (otherwise) truly > (and wrongly) remain uninitialized (and that fact propagating up the > call chain, through - in this example - whatever variable's address > the caller passed for "lenp"). IOW - I don't think a common pattern > can be agreed upon up front for cases like this one. That's ok, but perhaps we can agree that in a subset of functions as simple as this one the refactoring can help both developers and tools. -- Nicola Vetrini, BSc Software Engineer, BUGSENG srl (https://bugseng.com) From xen-devel-bounces@lists.xenproject.org Fri Jun 16 09:51:35 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 16 Jun 2023 09:51:35 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550058.858934 (Exim 4.92) (envelope-from ) id 1qA66t-0007V3-Gb; Fri, 16 Jun 2023 09:51:15 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550058.858934; Fri, 16 Jun 2023 09:51:15 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qA66t-0007Uw-DX; Fri, 16 Jun 2023 09:51:15 +0000 Received: by outflank-mailman (input) for mailman id 550058; Fri, 16 Jun 2023 09:51:14 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qA66r-0007Up-FX for xen-devel@lists.xenproject.org; Fri, 16 Jun 2023 09:51:14 +0000 Received: from mo4-p00-ob.smtp.rzone.de (mo4-p00-ob.smtp.rzone.de [81.169.146.221]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 530189e2-0c2b-11ee-b232-6b7b168915f2; Fri, 16 Jun 2023 11:51:11 +0200 (CEST) Received: from sender by smtp.strato.de (RZmta 49.6.0 AUTH) with ESMTPSA id y5401az5G9pA79i (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256 bits)) (Client did not present a certificate); Fri, 16 Jun 2023 11:51:10 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 530189e2-0c2b-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; t=1686909070; cv=none; d=strato.com; s=strato-dkim-0002; b=J+fcPpGIMbsH1BcD4udFSFWiCiKkK6T20RjtjFyiUCMESNju7GogjT3mIG2Oyc7/IC hqQlyLM+1pz/W4HhjGNpnllRX43QUWkZS7pL+jGkKFKcsCwF47xYWqGaVAh/1FoEFrJi p/XdGgq/LvGCzanSdumzoJ88Ud9RHWyPnkbicgxj/nzPC6Tlu1sRbDz24IaE9qImB5o7 hQUhfV6kniGJs1WIGdg3ZLlFFcIW6lGJT+M/pyJW4MFtW4qJT1lwTum+tLKZEQEIhKil OQOMQ4W5i7dfHeEQHh0UbZRRFYlCwNgqGygWoDEvJaly8gF4VKNRvcNh1ZL1E8Y+q5e0 gQYA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; t=1686909070; s=strato-dkim-0002; d=strato.com; h=References:In-Reply-To:Message-ID:Subject:Cc:To:From:Date:Cc:Date: From:Subject:Sender; bh=2P1x9GXm0TweywT8hh6nU0PzG0yD9qJ7KPg+jyEgi9o=; b=V3JWGl8eHeEupf/GKSR21jKGHKTr+TWOud5FGYH+OSu0NVh+bVO12jSZNCqK+qJb40 l1PmZXa8zG+Wdw/m7gOrN/DO+x8f28LdC+q/W8HC32w9+zabpPaArpbCWEhYnhBZG2Br KZ7Jr1rXoKhWOlgLPrl3OmUkyPAcuYnIiRbMi0/7XhyKqA2jPsabNfk+D7IjCQcVQQtq wFDgmDGlaHbULVhBEVdONZgYrZLcde7x439/TUvaB8WYIj57XX0jGKxtAdnRFEdLFvqi IJvmv6D99E/3ibaMI69eMapG5CLD9F+BKH3Aq3UwPFbTLwmULLdH5pwTxMdG+3ewa0Lf MJRA== ARC-Authentication-Results: i=1; strato.com; arc=none; dkim=none X-RZG-CLASS-ID: mo00 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; t=1686909070; s=strato-dkim-0002; d=aepfle.de; h=References:In-Reply-To:Message-ID:Subject:Cc:To:From:Date:Cc:Date: From:Subject:Sender; bh=2P1x9GXm0TweywT8hh6nU0PzG0yD9qJ7KPg+jyEgi9o=; b=KtMrfRdnI8Eid97zhQ4qGyG6AIPbXWQxHQ1DvxVccBVBucFZBDoqXxgM4nnWkszWsz qPN//udpY4sT3ABSBqHFPaVze9z9Zp5BN1aZeRX6iDkAfBBr4yfWI/8xqWBV587emncr 8fukqUiKMbh3kkEvo1gMCadZ8uldhORcSK0xtl52gHvs+JPQ3O4llMrWnhNnPIjCccPn 65csGK4QrdQaFbYYb/mez+9eYcPrDQWc2B0qcAz7WPUMjf4cx5IxPtjB/V5rI2tc6WtT zJLy35OEzgRvCRIVxUBTM8EhFnL6+IE3l6lOP+ZjpPuBdjUM2Z53rDwSr3G5zyx7DqcO ObUw== DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; t=1686909070; s=strato-dkim-0003; d=aepfle.de; h=References:In-Reply-To:Message-ID:Subject:Cc:To:From:Date:Cc:Date: From:Subject:Sender; bh=2P1x9GXm0TweywT8hh6nU0PzG0yD9qJ7KPg+jyEgi9o=; b=HMziUXWyvpzHsT9/oGrCtCpCczY9cBj9dCNTBdLqzGr9fPizTeJC6qSQUIKiE7co+W QYLk1caO9Nx/Znj5kFBw== X-RZG-AUTH: ":P2EQZWCpfu+qG7CngxMFH1J+3q8wa/QLpd5ylWvMDX3y/OuD5rXVisR5AB2Ibh3sRFQAfajHZ8Hr2i7N1ImBUHmXWy0PQg==" Date: Fri, 16 Jun 2023 11:51:03 +0200 From: Olaf Hering To: Jan Beulich Cc: xen-devel@lists.xenproject.org Subject: Re: compat code lacks support for __attribute__ Message-ID: <20230616115103.1fc88699.olaf@aepfle.de> In-Reply-To: References: <20230614104234.56835aa9.olaf@aepfle.de> X-Mailer: Claws Mail 20230601T090920.68bc28c0 hat ein Softwareproblem, kann man nichts machen. MIME-Version: 1.0 Content-Type: multipart/signed; boundary="Sig_/T_WllCH8rSUp/jtfFjW/+cc"; protocol="application/pgp-signature"; micalg=pgp-sha256 Content-Transfer-Encoding: 7bit --Sig_/T_WllCH8rSUp/jtfFjW/+cc Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: quoted-printable Wed, 14 Jun 2023 11:49:35 +0200 Jan Beulich : > However, if you're after adding packed attributes, and if you're > meaning to only communicate between Xen and the tool stack, then > the requirement above doesn't exist. Yet then I would also wonder > whether you need any compat translation in the first place. Those > packed structures would better be arch-/bitness-agnostic, wouldn't > they? So perhaps we could arrange for your additions to be excluded > from the compat translation machinery? The change below works for me. I wonder if any special compat handling for t_buf and t_rec is required. To me it looks like only uint32_t is used, which will most likely cause no unexpected alignment issues. Olaf --- a/xen/common/trace.c +++ b/xen/common/trace.c @@ -34,15 +34,6 @@ #include #include =20 -#ifdef CONFIG_COMPAT -#include -#define xen_t_buf t_buf -CHECK_t_buf; -#undef xen_t_buf -#else -#define compat_t_rec t_rec -#endif - /* opt_tbuf_size: trace buffer size (in pages) for each cpu */ static unsigned int opt_tbuf_size; static unsigned int opt_tevt_mask; --- a/xen/include/Makefile +++ b/xen/include/Makefile @@ -30,7 +30,7 @@ headers-$(CONFIG_HVM) +=3D compat/hvm/hvm_op.h headers-$(CONFIG_HVM) +=3D compat/hvm/hvm_vcpu.h headers-$(CONFIG_HYPFS) +=3D compat/hypfs.h headers-$(CONFIG_KEXEC) +=3D compat/kexec.h -headers-$(CONFIG_TRACEBUFFER) +=3D compat/trace.h +headers-n +=3D compat/trace.h headers-$(CONFIG_XENOPROF) +=3D compat/xenoprof.h headers-$(CONFIG_XSM_FLASK) +=3D compat/xsm/flask_op.h =20 --- a/xen/include/public/trace.h +++ b/xen/include/public/trace.h @@ -81,6 +81,15 @@ #define TRC_TRACE_WRAP_BUFFER (TRC_GEN + 2) #define TRC_TRACE_CPU_CHANGE (TRC_GEN + 3) =20 +#define TRC_a (TRC_GEN + 123) +struct __attribute__((__packed__)) trc_a { + unsigned a; +}; +#define TRC_b (TRC_GEN + 321) +typedef struct __attribute__((__packed__)) trc_b { + unsigned b; +} trc_b_t; + #define TRC_SCHED_RUNSTATE_CHANGE (TRC_SCHED_MIN + 1) #define TRC_SCHED_CONTINUE_RUNNING (TRC_SCHED_MIN + 2) #define TRC_SCHED_DOM_ADD (TRC_SCHED_VERBOSE + 1) --Sig_/T_WllCH8rSUp/jtfFjW/+cc Content-Type: application/pgp-signature Content-Description: Digitale Signatur von OpenPGP -----BEGIN PGP SIGNATURE----- iQIzBAEBCAAdFiEE97o7Um30LT3B+5b/86SN7mm1DoAFAmSMMIcACgkQ86SN7mm1 DoA7jw//XvvbIgTXZw+M3t+NQRqKhBrLMMlZjxgR3u6wAgadcJG+oADpKm/pw6pk BeHpISl4LHCEY6eGLqKSwRX4q6hz5e5axAXsP3+056YGOv6mX2V2q4qaBU/IoVEh EGxPBsr91GX9MsmM0Fnuj/fOXB590jAvxJFEVijKI792TKXxUFCIqvteLO4NY2e3 jEpvKdWIkK6xzFGxPP6w1YXg1u3UNdAC90ef+EzIgrLHVNZGI9UG++6QjHMVoKn4 i85kUims4Mcb+Wp8Qcj2fg8dpLF5smEImVEmXjBx0t1dqgyKJ9l2i+X/yC9A7YGI 5cYGQKdeCzUAvrksmTj5gw8thept2EamowXX2M96lMP8fZU7yuSfjpFW8+5kLAbu N+e5jswx9yp4VWnTStj9eYIiQj0sIpxQ1fOr8Xw5t1L4WxqkYLqwI7bUitJNZEoS mj3ipmXcEoT5QY7iBG64GEZycs5+0anB7PihHMXO22G4Vc8X2BdBrSP2wR4TRYLi RDIr5b97Dfik7BzupMZkaI3G6fpBOoyUnDg+9NixbgCM51rdSTt7S4SdxzbsNBKG w+srrLRL/CWbIkIyi0Zmw1YO7+8hkhkqhOSC3EDfC9J9h8pK+wvlJ8cT5q/FmTsy Z4P4FpZLH+ys+YlrsSexb0B4XJw8tm0YVrh3HMUoqf5xKjIecks= =HvBs -----END PGP SIGNATURE----- --Sig_/T_WllCH8rSUp/jtfFjW/+cc-- From xen-devel-bounces@lists.xenproject.org Fri Jun 16 10:03:38 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 16 Jun 2023 10:03:38 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550067.858943 (Exim 4.92) (envelope-from ) id 1qA6Im-0000j8-Lr; Fri, 16 Jun 2023 10:03:32 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550067.858943; Fri, 16 Jun 2023 10:03:32 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qA6Im-0000j1-J0; Fri, 16 Jun 2023 10:03:32 +0000 Received: by outflank-mailman (input) for mailman id 550067; Fri, 16 Jun 2023 10:03:31 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qA6Il-0000iv-B1 for xen-devel@lists.xenproject.org; Fri, 16 Jun 2023 10:03:31 +0000 Received: from EUR01-DB5-obe.outbound.protection.outlook.com (mail-db5eur01on0621.outbound.protection.outlook.com [2a01:111:f400:fe02::621]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 0a35e617-0c2d-11ee-8611-37d641c3527e; Fri, 16 Jun 2023 12:03:28 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by PAXPR04MB8862.eurprd04.prod.outlook.com (2603:10a6:102:20d::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.25; Fri, 16 Jun 2023 10:03:26 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.039; Fri, 16 Jun 2023 10:03:25 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 0a35e617-0c2d-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=MRrOOB6aK+vejteOZdkeQ53a9iXTlrDwnhlss44BeXsBgqVPgTAOdsPK3Ga313+EO0MqNQ7Tv3X9l43eZybhnjh+lfEZyz19BLFO3V+AgyFTY7A5hXH/PlBJXGxVY6xCVXJavAkCK2z5yAspoUzloryoMN+Nvjf0DXMxLhHifxdlSwRFNW8vBuJo+CuqE/89o8jYNQDW/dMSVkSPFeP8ACgoPUfWIj/cKojsxVwPvKGUwPNXGaXE9Q7Q6LCCS8cwjSbEs5xDMakHFYnDBTrV+nZsNp0sMQ3Q6K9nZxsGsnJqtAEggAf2U8J2Lajr29Ia/kbRZ62pPwf/CFRskEVhlg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=vJwJM5fP4xmY+pa2eVCUivduNqcf46JT4N73cZvqJNQ=; b=Dy3OGOcRI811Yis52okI9bynykILiylTWrX5YemuZqWUCyzO7FXFm0snmRVBC0JolPkPdg3YpZS4wkezL1/nErQgaXlR6vishGMqYRZ4vHcK0CNyjKBPyacKI5NNHKna0Y+fPeE1bcLXJbhd5Jg2Eoq5U2sFsm71jg5fsz5Df4mxJ0sfXjlCvmTJTskCLvRaXXz3QvB+MOOwJFGPe+kC3tugj31JrfuKxnUS5OO+FxcZtccJyyqBECfeaDOv2BeWAfx77sacOP7SWy+8h/IsFX2a+jaSzZjzNlqnYB6SJT5MckFljy/vAXWZFmBNmUSIpLU5A9XG4LWUpnVuS3nB2A== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=vJwJM5fP4xmY+pa2eVCUivduNqcf46JT4N73cZvqJNQ=; b=I/oQPFa5+X6+NhZ0Vjxs9ue0Pke9h9JbCehj//vsnrkKKveaws5zukejdyY5x7PCTtJTXwSQXdxTVwGgLmDYesVcHTcD+6nol+IxylAOZVMFwTxM9OUXeGt/LMoGpkX+jju6aGlqGWkt9Mhm9YkzO67fPuE+bwNGsf9Uv+EWOyma1v84hrQp/N+l5MKUSYRbAAU8dXDXnXCoknJUtZZa3o/AGsi/Y0fqZEbd+7lIpwyBdW6DXa+jLHUdMy93DgBqtMm0i6QWnkMF1r/MH3VIXT1oMk21dGy9mdAZfXG5+8TOckE4/6E1mglWr4PESqEuJiOOAEPcQrr2SoGy1Eo1tg== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <5a7fe98d-28de-dd7a-addb-9122226d5419@suse.com> Date: Fri, 16 Jun 2023 12:03:23 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [XEN PATCH] docs/misra: document the C dialect and translation toolchain assumptions. Content-Language: en-US To: Roberto Bagnara Cc: xen-devel@lists.xenproject.org, consulting@bugseng.com, Andrew Cooper , George Dunlap , Julien Grall , Wei Liu , Stefano Stabellini References: <7eaadcb4-8580-b240-4451-5a98c66ebe5a@suse.com> <47325b0b-2ccc-6485-da59-2c0a367c2bf0@bugseng.com> From: Jan Beulich In-Reply-To: <47325b0b-2ccc-6485-da59-2c0a367c2bf0@bugseng.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR0P281CA0260.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:b5::17) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|PAXPR04MB8862:EE_ X-MS-Office365-Filtering-Correlation-Id: eef35b81-bdae-484b-99c7-08db6e50ecfe X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: p4Kp37iZ1jsz3Xe+wJrFPPkTULdtelhBS33RIShB8y+Fa9v+wYbmkqPg4n6TF8Wrnu7+NNMtRasZwpHzpz5u//E8ONdCPZZYlvRYqQdKdHMZvPYrFRVY4cmedGuotgORuYREI/k6tWg2HwyAmL+8kCePVpgyHGFWDgY0KZBo21Ikdq1Z7lF23O7UEMtECk+PD1y2EaG55MMenuotbMXYwOtrIopD7cBHNhXUbSmmIOLOZwaeXnf0g0N/x/7imJzgUQ0AuAwv/kXpGSwKQTuPbKVc1DSBHuFBS+cV7melXboR9rMsaowZf27LY60/4scDY7yDHBgPMbBaoJ6LF4dXK6PXG8G37DVuMkXgKPdvMB3cmbtnNt5Tgt0FKyiZgnPFvhy+JDjaOmlkMmeDy1Gp6cspb9SMU1L/KqTchsh14uUASoUtCQd+ixUPNWRw3HtXd2eG5q+sT+gNDZ5SMnNBgMYJHUhRrPLIawHFPD41XKOSDww1wRpW0WoRywLPwB9WiaHfAwo34LlEBGDlFLhd0PnXOsFI8RCpdp77Dol+djvk8Oyq1K7XU3JKn+ic97ZrLPCpAVAOwgLQCv9xeHGjhN6DA7/l/o+877jmi4vzXWF3SCXGs3XlWrkWv/swIzj1UGd0NZyk8mpMrcYfrNqIUQ== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(346002)(396003)(39860400002)(376002)(136003)(366004)(451199021)(5660300002)(478600001)(31686004)(54906003)(8936002)(41300700001)(6486002)(8676002)(316002)(6506007)(186003)(6916009)(4326008)(66476007)(66556008)(66946007)(6512007)(53546011)(26005)(2616005)(2906002)(38100700002)(31696002)(86362001)(36756003)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?alBWUEQ5RGVvSFlPV1poaTQxQ2o5My9GNlNHYS82RmVqYk5nRURhWFB4Q0t0?= =?utf-8?B?VTRWS2NhK1g4VFh6by8waVFUMU1LUnBVb2hjNUJBMm9TTXA2RW5CcVYveDFJ?= =?utf-8?B?OGlOcGZHVGJXUVFsWFpBbFFNMHFkNU43L3lBOWxvTWJJdXRFT3ZJRmk1cEp0?= =?utf-8?B?RTdiNzgrazJ4TVFPOFRLeDUydEI0enJJbmFoaG5DQ1V0Y1JPYXpsc3ozNFBD?= =?utf-8?B?akxKNTN0VkVCSkhQMkdFMjJmSHpRVFNnZGFqbzRELzMwc0EwVmEyWDM5c1Ft?= =?utf-8?B?VWw1d212MFQ1TmFPNDZWQjZVNFgxT3FIMWg5L0tzek5iVmJNblZWMGppb3Np?= =?utf-8?B?U1Nmc0NGczhBRzl1NjlCVXhXZkw5aTIrbFlzaFpRbTk1T05tSG5mRXdoYngr?= =?utf-8?B?NUxwMUtnVVdQQ3FRRGduUmhrRDltWVVRRENUQ1J5Y1QzeHZhM0tpUTg2VElF?= =?utf-8?B?d0VJbVBiejI1NHU5c05PVWF4YUFtNVFQdC83Z1N6ZTJ5TmZtdEpnTXdNMUhX?= =?utf-8?B?QkcrWUt3RTg3MHlyWlA1bXlyWVVMYytJczljVHYwb0lId2dnVE5DN3JQVUhD?= =?utf-8?B?a2tPY1cwdnRQeDZ4RDQ3cUFPYW5ZeDNESG9RMk1iS2FLMjFpWXpuUDcxenhQ?= =?utf-8?B?ZmVIT01hR0dMLzFxNnNGSnhqMWhOejFvdkFNaTZVWWlBVnNpSitKeFpFOHBZ?= =?utf-8?B?cHZhSXN6RE1OcEdUVDV1cXdHc0ZQOHphaTMxQ09pTjE0ekpXL1lNUzNxTDhs?= =?utf-8?B?cU8wQWtwbWY3Mk9wcWlTOVlrK1NWblV6MDlxNjUwN1FyNG1JcGtmcGh1WVdP?= =?utf-8?B?YWJBYUdVeGQvaFkwbW13Y1UzVVZCY3h0WkIxSXhQZVhqblhsaDQ2bFpUYzUw?= =?utf-8?B?MkQ0b01IQXJvTFBPbGw4dDFoZkFYNTVvaDY0Ni84ZExGSnBnTGYyVGVBU0k0?= =?utf-8?B?MjZDZXFuQzd4ZHowV29SMGhZUjd5andSRjZsUCtOREoybXc1ZkpOTjFVb0JI?= =?utf-8?B?VnhrMWtQVXRzbXhwNGNCR3FUanRWRVRoa242c0E3anRkdSswOGhpdFYyaE51?= =?utf-8?B?UEdhbDM4KzVUR2pFSzJRdmNGQTBOUzlMNURuZGkzdlF0SkdMTU0vTUlEcjln?= =?utf-8?B?ci9KNzQ2Wmw4eWRKSkxIRGlHWnA0N3RRVWptakhLRTRzTHk4RlltRzllekVJ?= =?utf-8?B?b0t2YnlUblNRYVppMlY4dk8rWVRmdzZKT01ZOEtuZzFkbUY1QzFMZGVYWmhE?= =?utf-8?B?TTEySUM5VUFFNnlsNG5jaEY3SE5EVmRJSGE2YXlSWGpqWElWTzVXNjRkWDgv?= =?utf-8?B?Y1dhRmc0T2EvVWR3NnMwT3ZKVjBNeVVMbzgwWGdRNUVyNzZKU09BNGhRNkpT?= =?utf-8?B?NitNcnk1Ry93MXZhZVNFUlVWOUIrV3c1anBrdmVBa0xtSmtMOTZDWE9LNDBG?= =?utf-8?B?ZlFOampaME5VbTcyTC9uaGpRSHFQSmtTYkZPdWJnYTRucXNZUjA1eXVKTWxr?= =?utf-8?B?UzRKRG0rRzRHbEEwSFJSQ3RWUnFBNFBVQmxjcUFmb2EycnlWeXBhSU9VRVZw?= =?utf-8?B?eC9EMVYzTEdhK3lqdmxaM1RzU1l3bG5zaDNrRnRnS0tna1czbmFjMXhaa2wy?= =?utf-8?B?ejZoMTNyZFBHblU1dnZsaGtsK05HQWtGNjVDMkdWK2Iyd2s0YlZDRW9RMzFk?= =?utf-8?B?MEozdi96Qm0vWTdKUHYzSVNiVkg1RGE4d2xxN2IzTFNZTmJlTHB0YmdPYXJR?= =?utf-8?B?UmREcUVPME00NnZwYmdieS9MaE96SEVFSElhVm92NjY2dUxlZVBJM3VPVlFE?= =?utf-8?B?eGM2V05kSm5Vb0Y5dXFBOExuMkJUK1d1NjRlWk1CdjJndGNubmJLN2ZrVFd0?= =?utf-8?B?cThQbGdlL0tsTEMyUFBDaW9nYXBjUnlIOEsrRmo5bFo0RkJaeEVJY2E0VFgy?= =?utf-8?B?UWRuSW9aZElaakNOZFdYeU8vNVZaU1VreGQrVWZYTy95M0Q3bC9kRkw1Qis2?= =?utf-8?B?TnJjWUl6Tkw3SDhzR2ltNmFCL3czUThSeU95WVF3Zm5OTjVWU0VlajhMTEtK?= =?utf-8?B?clgwOUtIQ0h1Z1FtcUJ2MnRtMkdXYndYQ3NCVFhiaEJnL3Q3ZUcvTTdEdUFP?= =?utf-8?Q?Lfe+zNDKatPJMSzfSYaJq8Z2t?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: eef35b81-bdae-484b-99c7-08db6e50ecfe X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Jun 2023 10:03:25.7084 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: spVSzZo+pB1YbmXcQiGldiVhXTzHCECWVLcyY6zIcYUIshSaqLuSFq4cOVEdqUiAp0Ouab+BinX2PhQuiIRWDw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB8862 On 16.06.2023 09:45, Roberto Bagnara wrote: > On 16/06/23 08:53, Jan Beulich wrote: >> On 16.06.2023 01:26, Stefano Stabellini wrote: >> Another is that it's >> hard to tell how to convince oneself of this being an exhaustive >> enumeration. One extension we use extensively yet iirc is missing here >> is omission of the middle operand of the ternary operator. > > Not sure I understand: do you mean something different from the following > entry in the document? > > * - Binary conditional expression > - ARM64, X86_64 > - See Section "6.8 Conditionals with Omitted Operands" of GCC_MANUAL. Ah, yes, that is it. I find gcc's title misleading (because there are far more "conditionals" than just the ternary operator), and hence when going through you doc I didn't spot this (I'm sorry), and when then searching for "ternary" and "?:" there were no hits. >>>> + * - Unspecified escape sequence is encountered in a character constant or a string literal token >>>> + - X86_64 >>>> + - \\m: >>>> + non-documented GCC extension. >>> >>> Are you saying that we are using \m and \m is not allowed by the C >>> standard? >> >> This exists in the __ASSEMBLY__ part of a header, and I had previously >> commented on Roberto's diagnosis (possibly derived from Eclair's) here. >> As per that I don't think the item should be here, but I'm of course >> open to be shown that my understanding of translation phases is wrong. > > I was not convinced by your explanation but, as I think I have said already, > I am not the one to be convinced. In the specific case, independently > from __ASSEMBLY__ or any other considerations, that thing reaches the C > preprocessor and, to the best of my knowledge, the C preprocessor documentation > does not say how that would be handled. I have spent a lot of time in the > past 10 years on the study of functional-safety standards, and what I > am providing is a honest opinion on what I believe is compliant > and what is not. But I may be wrong of course: if you or anyone else feels > like they would not have any problems in arguing a different position > from mine in front of an assessor, then please go for it, but please > do not ask me to go beyond my judgment. Well, disagreement on purely a technical matter can usually be resolved, unless something is truly unspecified. Since you referred to translation phases, and since I pointed out that preprocessing directives are carried out before escape sequences are converted to the execution character set (which is the point where unknown escape sequences would matter afaict), there must be something you view differently in this process. It would be helpful if you could point out what this is, possibly leading to me recognizing a mistake of mine. Actually, maybe I figured what you're concerned about: Already at the stage of decomposing into preprocessing-token-s there is an issue, as e.g. "\mode" doesn't form a valid string-literal. For other, unquoted \m I would assume though that the final "each non-white-space character that cannot be one of the above" (in the enumeration of what a preprocessing-token is) would catch it. Furthermore it is entirely unclear to me what it is that you suggest we do instead. It can't reasonably be "name all you assembler macro parameters such that they start with a, b, f, n, r, t, or v". Splitting headers also wouldn't be very nice - we try to keep related things together, after all. It also doesn't look like __stringify(\mode) would be okay, as macro expansion shares a translation phase with execution of preprocessing directives (so in principle the body of "#if 0" could be macro-expanded before being discarded). (Plus I think this would result in "\\mode", i.e. also wouldn't work in the first place. But it would rule out other possible C macro trickery as well.) Jan From xen-devel-bounces@lists.xenproject.org Fri Jun 16 10:07:38 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 16 Jun 2023 10:07:38 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550072.858953 (Exim 4.92) (envelope-from ) id 1qA6MZ-0001KY-5s; Fri, 16 Jun 2023 10:07:27 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550072.858953; Fri, 16 Jun 2023 10:07:27 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qA6MZ-0001KR-3J; Fri, 16 Jun 2023 10:07:27 +0000 Received: by outflank-mailman (input) for mailman id 550072; Fri, 16 Jun 2023 10:07:26 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qA6MY-0001KJ-C8 for xen-devel@lists.xenproject.org; Fri, 16 Jun 2023 10:07:26 +0000 Received: from EUR03-AM7-obe.outbound.protection.outlook.com (mail-am7eur03on2062e.outbound.protection.outlook.com [2a01:111:f400:7eaf::62e]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 978df4c3-0c2d-11ee-b232-6b7b168915f2; Fri, 16 Jun 2023 12:07:25 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by PA4PR04MB9687.eurprd04.prod.outlook.com (2603:10a6:102:270::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.37; Fri, 16 Jun 2023 10:07:22 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.039; Fri, 16 Jun 2023 10:07:22 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 978df4c3-0c2d-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=gl3JfBrALmCqmpK3Ws6LnQ6cEz6LWUmUg1dKyMCNssEWZDojM68Z5sm1qzgU/Wr4VCoJCZf0sEsCuxDAn8tpQE2QmUqIhISxlYvDxmGfLaoCaQ5wJkvnOI5q/BqUdsEcQl1jOsAk0TyneSDGjTzv4P+WlxSn6kr++8zZbMp17xRWcucrTww4YI4SRC5Uz9Xo5keAKi0c4W6ABEcWg+oVOx+7XizIpSMgiQ39VuNoe/EUxLkzpatKIzRfQH5MXb2ji3xT9YC00wBtQZZCpS4Y2znpRPQooRhDbNQ0iNl+CvJLN6PHBIZyMKRwAhBXi1DZaMw4wN9Y+MzM8Fc1AmZwZg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=1GCVSF+xRa5nKArnmz74uJeaknbxVohR+Sa76QFPa7U=; b=GBgdGe+RTLhcBcWsjlklBah37liVzDfKjymgJrGwRoEvMgvuT6basErl8wyapPq1BDgAZP3ZFRp/yJM2oZ1iY9kRn31nuKYz8dN5LH+FzUx5eBPxgBV6luGywG6DqGZhaw1iX31iIUyW88hJIgdHr74cgsczYCfpbv8vJK5pwDsDXRHqxDdEFxVWS7VA8jceyiuNSB5WFU78p6cqDp0Q/Sd80Zoi2VTMjf+lSeACy9yEgW+hb4w92RQDYAy/UlGfAy3brJs3VtYvPLO36XVWgTDCCKuzqeKWvdNUjsV2y3y4s6e1pjUKep/vOjNIzDr3nU+7BhZ6CJD483hskri/MA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=1GCVSF+xRa5nKArnmz74uJeaknbxVohR+Sa76QFPa7U=; b=QntHemvm2tqV5l0r66jFQ88V+HGncxrjaiSY5n76WqslHRePj7nYA64StKW/S3ASZNUaeVgegQK44XZnNlxkeoMHhJ6uZ7bpshUz93/2YydNdAzhQRcaK+/1ZlFguW8sIRAvObxk2Z0E8/gu1KaFjwVJUyNMBf6RMaEtY/roHvOCtGC2S8TlJtgsg+klUha+0/j9xRcvBK0FqtSVcSLKrRQ5K9t8McpEgLbBXthpjo2VRORdt7Kx5gwCoKl/h6MygNk0hZb4jhM06g8G4EBxJZYTGINrlkeVgQ0v8H2uRtaTWQp2ZZlJqvQa/GYIB/0c/Kdj6+5T/n2+0axpdviwHA== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <554d9f6d-0ff4-c387-3f7b-4f04e24f5197@suse.com> Date: Fri, 16 Jun 2023 12:07:20 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: compat code lacks support for __attribute__ Content-Language: en-US To: Olaf Hering Cc: xen-devel@lists.xenproject.org References: <20230614104234.56835aa9.olaf@aepfle.de> <20230616115103.1fc88699.olaf@aepfle.de> From: Jan Beulich In-Reply-To: <20230616115103.1fc88699.olaf@aepfle.de> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR2P281CA0156.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:98::13) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|PA4PR04MB9687:EE_ X-MS-Office365-Filtering-Correlation-Id: aea6e0ce-40d3-4586-aa44-08db6e517a01 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: HYnpm4L1rh8O0GDI8CcSeeUguhUI6KQylQ6Gm6EPx8foasFO5+CZ9yEyOHPcXrPETWnksL+Z4CgxvqIta2Lk8UVAPXC+3X39mCYub79GBBf6sXryBHfZUNV2nYJU8HrqRiuq41kLQFK6qdGafLq8TPmQpZgcyULwx0hj9b4Ux8W5tv641rSrxHPajRoIjCQUwyyuDPgF6T6t7a34RnnBfF5HlBvKoK5lJVK9UuurBfBwTsHQoHXhDyv6CSWP07gGvwRgoTiMyWjpn0D+T+9/8PMOG3gkenSRNnqIdT4THvJnSsr996loeNbyv6sdxTro88sCKDPazYFEr9okt19GH7zdy4ziJmvE6nFzCUq+1eVB3v+cS2ZESJ91I4K8Hn7S9nw/xx6OlEHTENTgaFadAHs2QOg+T2X9hsWQmplbSgOqUqgVu+RfRwt1F3cXEO3hzGZK83e2HcKYWtO4IWVGzL+OjP+Ln5h3tJthvicDImf7YGvJ903pGRk6URDJwX6NOF7ia2109jURXfjv2Dnm7G1/5KWlAN+fFtbfPcyyYdxQLGn1kyq/Jv9KpIs3QM3xDQwyi0z9jRMssbZYXfFwl55Zdn4h6fhetX+dLjg+SsHC8UUg+M70vh26FfsJVnx5yIXzsyM35rlFlJJH6Zp6FQ== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(396003)(346002)(136003)(366004)(39860400002)(376002)(451199021)(26005)(6506007)(36756003)(6512007)(478600001)(186003)(53546011)(6486002)(2906002)(316002)(41300700001)(8936002)(31696002)(86362001)(31686004)(8676002)(5660300002)(38100700002)(83380400001)(2616005)(66946007)(66476007)(6916009)(66556008)(4326008)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?NWU1NTRwbW9vdVd5MG1oekdNNWlZU2RVNEROWklJTjdtc2ZaZlNPMktkNHp5?= =?utf-8?B?YUFjSlNoTVZMcDZldU44Z0xjSFN2NWV4NHpBc2JTc04wZVk2NWlFYm84NEZF?= =?utf-8?B?TUdBeldiUzhzeFVqa0lEcDhVeU1ERWx3SkdzK2JpTHV5MzJWN01Wb0l5eHRm?= =?utf-8?B?WnZlRmlhL2VxNHdxcjZaUzQ5OE94Rk5WNWRqbmFHRm5kbHp2d1BhZEJDM0xF?= =?utf-8?B?N2VVZnpGc1M3VmNTb0xSZEt2UkJMQkJjd0lDTktmaEVyQ1MvdkxpbjZwbExC?= =?utf-8?B?bG9nZ2ozUnpYdEVRRW9na2o1MGJEQkJyRHB2ZDREMmpJSUs3YkE5S0JjYjBm?= =?utf-8?B?REF1OHlQVGIwTThkQVhEZTAvWElmKzZ2R1p1UlFNYTZjN0g4d1FSbCt5b3VO?= =?utf-8?B?Z0dadC9RVVJvNzRIUnduVFBYanN1dWZIZ2JzSGJwN2VFanBVYmMvRzZXSkk4?= =?utf-8?B?dWUySVpLSmIvdGdudFpPSTlYWmEwM2FIUkRMa3NDRVV1Sm80cHZNcmdOTnc1?= =?utf-8?B?cmszeURRWDJGQUhBVGpuVDl6VUdyczFTZFdISWhmQVpqQytlTFNHWStZVG9P?= =?utf-8?B?bnFwWG9PbTVvQVhiTDkxaVRySldyZjh2V01scUtKOG15Y1ZIQmN1VElOVlhv?= =?utf-8?B?QUxEaXp2NUh0bHd1bjJLd25iSURoTU9XU29TbWJSdkhITUZtRy9SdGF1Z0dF?= =?utf-8?B?RGFPdmE0dTNvK0FGL0MrQ29odTBjUWhydU9OZjY5K0J6YWV4QWFZNkxqblp0?= =?utf-8?B?OE5YMWRteFM5MGhRVTBVdWVkZmpTMHRxSzRmaTc1SnBZTGZXdFU4WmwweUJ2?= =?utf-8?B?aGpuWDdENHlXcVMrek9oSWhNdkdHcDhyWG1SMlJSMTJFV0xwMUluYnRydnBt?= =?utf-8?B?N2VyYzRmeFhYUjZEZVVNWkhIWVdLeFFaaVBZdytUaU9FQUZqdHFRRFhFOWxT?= =?utf-8?B?YTFJR05UOEROZ1orOWRVclpWYm1WdGxFQUhCcENhWVpYUm9hSkk2MWJUR0pw?= =?utf-8?B?dzBkTDJ3ZzhVTk1zN2VyMW84aDJyVGUxYy8wNmh1RHFOS0FUdGh2NEZuSy9y?= =?utf-8?B?TFltZHVXU0JNd0tacUp6WjhJb2FiWEFKamFaWU9LeUJuZmc4RW5PaTBnVFVs?= =?utf-8?B?Wjk0amdGQnVZWktOZG5oYjJHYitrNXBwOTQyVzB2bFdxYmRvTnZ5Vk16V1J2?= =?utf-8?B?a1M1Mm5vakphbUVqakVrN0Y2WGRzKzZkNXRJeWJGWks2TzdmTjM0S1dmbXZO?= =?utf-8?B?L2pMNit4R3d5Ylg3ekJWdTltZ20wRnFySTN3VlAzdURnam5XUUxGMXF1bGUx?= =?utf-8?B?ZUY1bWZQdFIyVWQwRGxTaTVYZGRxNzlBcVhocGVtVUhvM0xkamdBUThhb0JF?= =?utf-8?B?WGRhalAzcFduYlczSDJwQm1RZkl0ZnQzVlIvbTUvazVZeEsyYm5ScGRFTHBm?= =?utf-8?B?b2tLcTZJK3hHYXJHRGxsR0oyOG1HUCtJMTdZQk5QUGExVkVVdi84REdaVzJw?= =?utf-8?B?ZGRmT2FzNHNhVXNnazdUaGJTMGNYcnN1cVBoNlZJSkJ5Y1MzYlVsTFZkS0Uz?= =?utf-8?B?WkpRN0FYQWc5MDM0UnI1NDZ1QjNRZlZnMlVwZTl3cTQvNS9nWSt1Z1M1OHJC?= =?utf-8?B?WjhHak5ZSHZuRXRhUVNNSTZVMXdpdTR5UzZPb0w3N2RYTVpqaHBZUGI2RmJ3?= =?utf-8?B?bURpcUZ1ZFdWUTlIL3d0VVVEOU1SeGtPTHJmUXkrdUJleVAxRVNJZm13SWE4?= =?utf-8?B?YTdsN0JoME03LytncElIMDl1a1plMEFobHBjcDhKMVRnU2ZXelY2TWRvNlF5?= =?utf-8?B?ZHZoUWY1aDEyWG4rVHQ3blgveG12aVFYeGtvbkt2Uzlmem80bW1iQ3pWZzZ5?= =?utf-8?B?QXg2UVh6RHBXa2ZtOGlDQ05nc3dXZ2tXN3BNT3VOcmk2Zlh2NGNuY0NhSkM2?= =?utf-8?B?SW04cm5BcFE5b3VyZHB4YnFJb2VxOHV0TnBqTmcxTnE5eU9UcHN4R0ZqUFZD?= =?utf-8?B?OHl4ZU1PS1k0R2hmd1gwRmdTZFJTNit1NXZPc3BhU0NoQmF6SVdWOUoxN3hN?= =?utf-8?B?bUtZMm8ycW1TN3BNcGduazJEMTdkZ3VQbStMSHZwMjRKdGd5VHZ6SlZ3N3BU?= =?utf-8?Q?twHa8iwVsnr/hebnddIpeqOLf?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: aea6e0ce-40d3-4586-aa44-08db6e517a01 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Jun 2023 10:07:22.2530 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: Sur6iMOxV8+cYrhsBHbsoE1W02cUeX4DKpq6IFjp9yovVL6++UK6jQjHpIITiVPa/xNGlYVrlrhuR3MRvLBbfQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR04MB9687 On 16.06.2023 11:51, Olaf Hering wrote: > Wed, 14 Jun 2023 11:49:35 +0200 Jan Beulich : > >> However, if you're after adding packed attributes, and if you're >> meaning to only communicate between Xen and the tool stack, then >> the requirement above doesn't exist. Yet then I would also wonder >> whether you need any compat translation in the first place. Those >> packed structures would better be arch-/bitness-agnostic, wouldn't >> they? So perhaps we could arrange for your additions to be excluded >> from the compat translation machinery? > > The change below works for me. I wonder if any special compat handling > for t_buf and t_rec is required. To me it looks like only uint32_t is > used, which will most likely cause no unexpected alignment issues. No special handling is needed, indeed, but ... > --- a/xen/common/trace.c > +++ b/xen/common/trace.c > @@ -34,15 +34,6 @@ > #include > #include > > -#ifdef CONFIG_COMPAT > -#include > -#define xen_t_buf t_buf > -CHECK_t_buf; ... you're removing the line that's actually verifying this is the case. Jan From xen-devel-bounces@lists.xenproject.org Fri Jun 16 10:23:20 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 16 Jun 2023 10:23:20 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550077.858964 (Exim 4.92) (envelope-from ) id 1qA6bg-0003jM-Gb; Fri, 16 Jun 2023 10:23:04 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550077.858964; Fri, 16 Jun 2023 10:23:04 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qA6bg-0003jF-Db; Fri, 16 Jun 2023 10:23:04 +0000 Received: by outflank-mailman (input) for mailman id 550077; Fri, 16 Jun 2023 10:23:03 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qA6bf-0003j9-8U for xen-devel@lists.xenproject.org; Fri, 16 Jun 2023 10:23:03 +0000 Received: from mo4-p00-ob.smtp.rzone.de (mo4-p00-ob.smtp.rzone.de [81.169.146.219]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id c504f711-0c2f-11ee-8611-37d641c3527e; Fri, 16 Jun 2023 12:23:00 +0200 (CEST) Received: from sender by smtp.strato.de (RZmta 49.6.0 AUTH) with ESMTPSA id y5401az5GAMx7Ru (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256 bits)) (Client did not present a certificate); Fri, 16 Jun 2023 12:22:59 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: c504f711-0c2f-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; t=1686910979; cv=none; d=strato.com; s=strato-dkim-0002; b=RyWZXFb5QCilnS/njpbR+62WyWIYwHKIQjc2/Oh5pbUG2wMGMqWwyzPldghM+WckqW XAxIfQyGRN4PGOufnKZQdhpCWkR/UrqiboMs85UT0vGJG/lO1pTiLP8xcKLk4RrYvihQ bODm1vPY44KWfgIbCEp1oR+N18FzNfIdcpMkqWcfdbC7aScjHk4ITx2dMU67HvxzMixH fMqUm+apwD8lxZafq0RU09Pa6B6sIO7o27QZditnSsbjMwi97Qb4UGK4Tdbgvu5obKcR qQ+x9U0Y5U8qJFPsInaTQlBQd+VyPy+RTMg0Foxyla75c9JcLdu21/S1l4jbvsOyAQFd my/Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; t=1686910979; s=strato-dkim-0002; d=strato.com; h=References:In-Reply-To:Message-ID:Subject:Cc:To:From:Date:Cc:Date: From:Subject:Sender; bh=/AtIliz3Jkoz9ThIeB88H/UDa2Rq5GSpB7wL+VQWiXw=; b=MsOT1SU1SQzL6e6K+5Umos8CElykufZytCRSloujEqDM3jF3cE1F4NGQx1F12xAe4v FJDdIFDNGQKxEFQmsGsTGrv4BxgWA69erkm9lVJNC6LUQyBaYXvd5qDiLY2Q9WPlBGKV pDBEoBIf17txJGf2Sv0OKW59mrwKQhR4tmONR1CG7wqwfK6D9hbRrdf55u4cFBaGUQo1 yUvV+574GfMlLY+R/8sWe6rJ9Z/vCGlF7T8HBiHl9eKlAGeZTg2ENXeBFIO6BOyyfwTY K2oD3rHvKQxMpTuae1pFp27eak7mBrREH8/EOER3yndnKnZqzxBmBKbd9BXMbPQh7a+n uyug== ARC-Authentication-Results: i=1; strato.com; arc=none; dkim=none X-RZG-CLASS-ID: mo00 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; t=1686910979; s=strato-dkim-0002; d=aepfle.de; h=References:In-Reply-To:Message-ID:Subject:Cc:To:From:Date:Cc:Date: From:Subject:Sender; bh=/AtIliz3Jkoz9ThIeB88H/UDa2Rq5GSpB7wL+VQWiXw=; b=SEDadTp/61xSQBWeEc5n7UnppycpeJnlCBxTiWkCSmGkML86xY0eTOXgvP2z1MZlJp ySry9V1o5JAjgjY1pE2dKIq+f4M8GZndRhND1EsRMps/4kp4rsta+B6mqep8rN1zPZMO CvYkpgDXWyBZeqPNihUmNfsoHBREaWY50rAwSFnxTaMQWiY/N7rRQIBXZ6vVZtZkauiu B0Seu+K+5kju33tndMAys3fmAThGoGy2JaF0RIHluubTaq49AZr7+4IiD8CNWk7NrM9O jopF6bUdek0KINEguaiTtlOYAKvIugL913bHWDdrw5Ho07roOifnWsyFKqNACDCY+Q7w V8+Q== DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; t=1686910979; s=strato-dkim-0003; d=aepfle.de; h=References:In-Reply-To:Message-ID:Subject:Cc:To:From:Date:Cc:Date: From:Subject:Sender; bh=/AtIliz3Jkoz9ThIeB88H/UDa2Rq5GSpB7wL+VQWiXw=; b=Jf+hHJxKhTRwhd80uw/4yjAb0Xhdgf6yYlOY8zbiSoN336h2Zbq3FbHHb9M37mP1RL DPMlaQ9nHo2JFfvSOiBA== X-RZG-AUTH: ":P2EQZWCpfu+qG7CngxMFH1J+3q8wa/QLpd5ylWvMDX3y/OuD5rXVisR5AB2Ibh3sRFQAfajHZ8Hr2i7N1ImBUHmXWy0PQg==" Date: Fri, 16 Jun 2023 12:22:51 +0200 From: Olaf Hering To: Jan Beulich Cc: xen-devel@lists.xenproject.org Subject: Re: compat code lacks support for __attribute__ Message-ID: <20230616122251.5c7a1498.olaf@aepfle.de> In-Reply-To: <554d9f6d-0ff4-c387-3f7b-4f04e24f5197@suse.com> References: <20230614104234.56835aa9.olaf@aepfle.de> <20230616115103.1fc88699.olaf@aepfle.de> <554d9f6d-0ff4-c387-3f7b-4f04e24f5197@suse.com> X-Mailer: Claws Mail 20230601T090920.68bc28c0 hat ein Softwareproblem, kann man nichts machen. MIME-Version: 1.0 Content-Type: multipart/signed; boundary="Sig_/cRXNS7Jk0OKE=lyCE7JJQyj"; protocol="application/pgp-signature"; micalg=pgp-sha256 Content-Transfer-Encoding: 7bit --Sig_/cRXNS7Jk0OKE=lyCE7JJQyj Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: quoted-printable Fri, 16 Jun 2023 12:07:20 +0200 Jan Beulich : > ... you're removing the line that's actually verifying this is the case. Yeah, because it disappeared. I think the other approach is to teach the python tool about __attribute__(()). Let me know which way is preferred. Olaf --Sig_/cRXNS7Jk0OKE=lyCE7JJQyj Content-Type: application/pgp-signature Content-Description: Digitale Signatur von OpenPGP -----BEGIN PGP SIGNATURE----- iQIzBAEBCAAdFiEE97o7Um30LT3B+5b/86SN7mm1DoAFAmSMN/sACgkQ86SN7mm1 DoAcfw//dQ18maoDfKoURvBjb0goE4d954bHDXqxBXAgl2LdwQVWa4TT00iA+KMs gR1VOsWmKT+CUxY8Rqvh+kEiFvVlTWum6oBY+SVkKeyUM7vJmRGgAz7oH5WUSe52 p190uP/WxQ7vhWIFlCXVnQs8xc0ajuSWbJCnEjk/3wPjAqsabwuWGDOs0TIlX9sX hTWfw9kz2VjKNTV6W93+WykFTCdjRq6oG9n7+syPnv7YozdGCjYjJuILNzHr42P6 +ygjr18wBE8NGkyn1NC9DB7A+SAaUEUlWU+n0jQbTpMMJ1KtjJnNv6noEx6aawxn ZIbNXFjAErjLwhk1XO0kQWUjyZY9KLrAdyNUmxv028PV8eKsYs6jk9jzkF8nx9xj TNyoUMcUCnQx+hbJSTRIGpb3lf/Gk2rbMBpUofXidWLrTbrIg+i+oAydgO0p2Amd TiWC6VLizWwOFKyg+zeSHf63rj+P1e9rxfDXBX6kx/u6TM3YGKg3fyrH25zeIcDt YDFtOdxVCOK9daAkq9zyHVZIv6FA7dIlESj03Iw+7ktZy01UGUtGi4XWFyFfikkS bo6jJ7BNo4lBCF1d46GGut7wU2yqLqBl0YmhU5iKRHWj2eFShhULBJM1gBCAK/xy pigno+sWHngAuoL5a5KC3YbXQtdGPNAdR/ocPRkSq1wZTXpG4Rw= =FXNw -----END PGP SIGNATURE----- --Sig_/cRXNS7Jk0OKE=lyCE7JJQyj-- From xen-devel-bounces@lists.xenproject.org Fri Jun 16 10:29:50 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 16 Jun 2023 10:29:50 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550084.858974 (Exim 4.92) (envelope-from ) id 1qA6i9-0004NH-6E; Fri, 16 Jun 2023 10:29:45 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550084.858974; Fri, 16 Jun 2023 10:29:45 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qA6i9-0004NA-3Y; Fri, 16 Jun 2023 10:29:45 +0000 Received: by outflank-mailman (input) for mailman id 550084; Fri, 16 Jun 2023 10:29:43 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qA6i7-0004N4-Aa for xen-devel@lists.xenproject.org; Fri, 16 Jun 2023 10:29:43 +0000 Received: from esa3.hc3370-68.iphmx.com (esa3.hc3370-68.iphmx.com [216.71.145.155]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id b3120b49-0c30-11ee-b232-6b7b168915f2; Fri, 16 Jun 2023 12:29:41 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: b3120b49-0c30-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686911381; h=from:to:cc:subject:date:message-id:mime-version: content-transfer-encoding; bh=+VmkU5tvzVeHOy2hjZpX01rGc7gzXP7d+I90b9zWBac=; b=BQ2UkNsKYu6ifvLcSqbUv4Vcjd0KLNb4hEbYhnc5JMqP2LBoWSkp1xct mIs+TEbdE5917eX0VQKLo2xvP3SDY4PzgJVvvHHUk1SxIlLPnb58qiW1s y3yOtqDnkVbcgg3n+pSpqsNDwHq80OmCLYgSLkGwO2m7DaT3kfLwEfWer Y=; Authentication-Results: esa3.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none X-SBRS: 4.0 X-MesageID: 113069243 X-Ironport-Server: esa3.hc3370-68.iphmx.com X-Remote-IP: 162.221.156.123 X-Policy: $RELAYED IronPort-Data: A9a23:+Iv53KyHQgZw0dJhgaB6t+cfxirEfRIJ4+MujC+fZmUNrF6WrkUHx jAfWjqGPKuPZWqkedEnaY2/pxwEuJSEzYRqGVNpriAxQypGp/SeCIXCJC8cHc8wwu7rFxs7s ppEOrEsCOhuExcwcz/0auCJQUFUjP3OHfykTrafYEidfCc8IA85kxVvhuUltYBhhNm9Emult Mj75sbSIzdJ4RYtWo4vw/zF8EsHUMja4mtC5QRgPK4T5jcyqlFOZH4hDfDpR5fHatE88t6SH 47r0Ly/92XFyBYhYvvNfmHTKxBirhb6ZGBiu1IOM0SQqkEqSh8ai87XAME0e0ZP4whlqvgqo Dl7WT5cfi9yVkHEsLx1vxC1iEiSN4UekFPMCSDXXcB+UyQq2pYjqhljJBheAGEWxgp4KWtey fhJBjUjVS3Zlr6v/JLkeMlA3dt2eaEHPKtH0p1h5TTQDPJgSpHfWaTao9Rf2V/chOgXQ6yYP ZBAL2MyMlKZOUYn1lQ/UfrSmM+hgGX/dDtJ7kqYv6Mt70DYzRBr0airO93QEjCPbZwMxR7G9 ziapAwVBDlCc4Gf2SSGzknr2MHWogjpXqg0PbyBo6sCbFq7mTVIVUx+uUGAiem0jAuyVsxSL 2QQ+zEytu4i+UqzVN7/Uhak5nmesXY0WdBdDuk74wGl0bfP7kCSAW1sZjxcbN0rsucmSDps0 UWG9/vyHiBmurCRTXOb95+XoCm0NCxTKnUNDQcbSSMV7t+lp5s85i8jVf46TvTz1IesX2itn XbT9nNWa6gvYdAj3bWH+QHphhyXm8LYEhcJxlrlfk7+8VYsDGK6XLBE+WQ3/N4ZctbHHgTZ5 CVc8ySNxLtQVM/QzURhVM1IRej0vKjdbVUwlHY1R/EcGyKRF2lPlGy6yBV3Pw9XP8kNYlcFi 2eD6FoKtPe/0JZHBJKbgr5d6Oxwl8AM7fy/CpjpgiNmO/CdjjOv8iB0flK31GvwikUqmqxXE c7FIZj8UCxGU/s5nWfeqwIhPVkDnHhWKYT7H8qT8vha+eDGOC79pUktbjNikdzVHIvb+V6Io r6zxuOByglFUf2WX8Uk2dd7ELz+FlBiXcqeg5UOJoa+zv9ORDlJ5wn5nelwJOSIXs19yo/1w 51KchYHlwWh3ieccF3ih7IKQOqHYKuTZEkTZUQEVWtEEVB6CWpzxM/zr6cKQIQ= IronPort-HdrOrdr: A9a23:ZTgx6arb1LQIKGzqJUxuCnEaV5omeYIsimQD101hICG9E/b5qy nKpp9w6faaskd1ZJheo6HlBEDtex7hHOdOkOss1O6ZLWrbUQiTTb2Kj7GM/9SIIUSXygc378 ldmsZFZOEYBGIK6vrH3A== X-Talos-CUID: =?us-ascii?q?9a23=3AhsID8GoorhFcsaGKRU84PcbmUco1TnmM4nL+GHL?= =?us-ascii?q?iGDpwdJ3Ke3+8o7wxxg=3D=3D?= X-Talos-MUID: 9a23:a6OEwAZnJ0LHV+BT73ixhCF8N/tTpPqAEX8mg5MsneCFDHkl X-IronPort-AV: E=Sophos;i="6.00,247,1681185600"; d="scan'208";a="113069243" From: Anthony PERARD To: CC: Anthony PERARD , Andrew Cooper , George Dunlap , "Jan Beulich" , Julien Grall , "Stefano Stabellini" , Wei Liu Subject: [XEN PATCH] Config.mk: update OVMF to edk2-stable202305 Date: Fri, 16 Jun 2023 11:29:08 +0100 Message-ID: <20230616102908.59109-1-anthony.perard@citrix.com> X-Mailer: git-send-email 2.39.2 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain Update to OVMF's latest stable tag. This is been prompt by trying to build Xen on Debian Bookworm, where edk2-stable202108 doesn't build. Also, it's been too long since the last update. Signed-off-by: Anthony PERARD --- I've tested it in osstest, so the update should be fine: http://logs.test-lab.xenproject.org/osstest/logs/181458/ --- Config.mk | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Config.mk b/Config.mk index d12d4c2b8f..c529b1ba19 100644 --- a/Config.mk +++ b/Config.mk @@ -216,7 +216,7 @@ QEMU_TRADITIONAL_REVISION ?= $(QEMU_TAG) endif OVMF_UPSTREAM_URL ?= https://xenbits.xen.org/git-http/ovmf.git -OVMF_UPSTREAM_REVISION ?= 7b4a99be8a39c12d3a7fc4b8db9f0eab4ac688d5 +OVMF_UPSTREAM_REVISION ?= ba91d0292e593df8528b66f99c1b0b14fadc8e16 QEMU_UPSTREAM_URL ?= https://xenbits.xen.org/git-http/qemu-xen.git QEMU_UPSTREAM_REVISION ?= master -- Anthony PERARD From xen-devel-bounces@lists.xenproject.org Fri Jun 16 10:33:57 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 16 Jun 2023 10:33:57 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550092.858984 (Exim 4.92) (envelope-from ) id 1qA6m5-0005r9-Qd; Fri, 16 Jun 2023 10:33:49 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550092.858984; Fri, 16 Jun 2023 10:33:49 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qA6m5-0005r2-MZ; Fri, 16 Jun 2023 10:33:49 +0000 Received: by outflank-mailman (input) for mailman id 550092; Fri, 16 Jun 2023 10:33:49 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qA6m5-0005qs-2J; Fri, 16 Jun 2023 10:33:49 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qA6m4-0000qj-V9; Fri, 16 Jun 2023 10:33:48 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qA6m4-00030h-Hv; Fri, 16 Jun 2023 10:33:48 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qA6m4-0002P4-HQ; Fri, 16 Jun 2023 10:33:48 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=/5kaV6YA4ShLIKqFptRnjuIPLHcbL6BqmHjSlwLar9M=; b=IuQJPA+LCAX5UR2N92VdgLrSgy EeUODiQ3dOUW6vXhY1UKPgnvNVUD379QAur/f9vjhwDQgSWgjp+MN96hJ4k5BpjH3FLpcsOnuJwJu JFK2DEEhG2nz6hucOcDUbzoDzHzi6+S3wDqeMB2dCx9nVR6zaWI8TO8RnWTv9qfNseVs=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [linux-linus test] 181456: regressions - FAIL X-Osstest-Failures: linux-linus:build-amd64-pvops:kernel-build:fail:regression linux-linus:build-armhf-pvops:kernel-build:fail:regression linux-linus:test-armhf-armhf-examine:build-check(1):blocked:nonblocking linux-linus:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking linux-linus:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking linux-linus:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking linux-linus:test-armhf-armhf-xl:build-check(1):blocked:nonblocking linux-linus:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking linux-linus:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking linux-linus:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking linux-linus:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking linux-linus:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking linux-linus:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking linux-linus:test-amd64-coresched-amd64-xl:build-check(1):blocked:nonblocking linux-linus:test-amd64-amd64-xl-xsm:build-check(1):blocked:nonblocking linux-linus:test-amd64-amd64-xl-vhd:build-check(1):blocked:nonblocking linux-linus:test-amd64-amd64-xl-shadow:build-check(1):blocked:nonblocking linux-linus:test-amd64-amd64-xl-rtds:build-check(1):blocked:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:build-check(1):blocked:nonblocking linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:build-check(1):blocked:nonblocking linux-linus:test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking linux-linus:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:build-check(1):blocked:nonblocking linux-linus:test-amd64-amd64-xl-qemut-debianhvm-amd64:build-check(1):blocked:nonblocking linux-linus:test-amd64-amd64-xl-pvshim:build-check(1):blocked:nonblocking linux-linus:test-amd64-amd64-dom0pvh-xl-amd:build-check(1):blocked:nonblocking linux-linus:test-amd64-amd64-xl-pvhv2-intel:build-check(1):blocked:nonblocking linux-linus:test-amd64-amd64-dom0pvh-xl-intel:build-check(1):blocked:nonblocking linux-linus:test-amd64-amd64-xl-pvhv2-amd:build-check(1):blocked:nonblocking linux-linus:test-amd64-amd64-examine:build-check(1):blocked:nonblocking linux-linus:test-amd64-amd64-examine-bios:build-check(1):blocked:nonblocking linux-linus:test-amd64-amd64-examine-uefi:build-check(1):blocked:nonblocking linux-linus:test-amd64-amd64-xl-multivcpu:build-check(1):blocked:nonblocking linux-linus:test-amd64-amd64-freebsd11-amd64:build-check(1):blocked:nonblocking linux-linus:test-amd64-amd64-freebsd12-amd64:build-check(1):blocked:nonblocking linux-linus:test-amd64-amd64-xl-credit2:build-check(1):blocked:nonblocking linux-linus:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking linux-linus:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking linux-linus:test-amd64-amd64-xl-credit1:build-check(1):blocked:nonblocking linux-linus:test-amd64-amd64-libvirt-qcow2:build-check(1):blocked:nonblocking linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking linux-linus:test-amd64-amd64-xl:build-check(1):blocked:nonblocking linux-linus:test-amd64-amd64-libvirt-raw:build-check(1):blocked:nonblocking linux-linus:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking linux-linus:test-amd64-amd64-qemuu-nested-intel:build-check(1):blocked:nonblocking linux-linus:test-amd64-amd64-pair:build-check(1):blocked:nonblocking linux-linus:test-amd64-amd64-pygrub:build-check(1):blocked:nonblocking linux-linus:test-amd64-amd64-qemuu-nested-amd:build-check(1):blocked:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: linux=b6dad5178ceaf23f369c3711062ce1f2afc33644 X-Osstest-Versions-That: linux=6c538e1adbfc696ac4747fb10d63e704344f763d From: osstest service owner Date: Fri, 16 Jun 2023 10:33:48 +0000 flight 181456 linux-linus real [real] http://logs.test-lab.xenproject.org/osstest/logs/181456/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-amd64-pvops 6 kernel-build fail REGR. vs. 180278 build-armhf-pvops 6 kernel-build fail REGR. vs. 180278 Tests which did not succeed, but are not blocking: test-armhf-armhf-examine 1 build-check(1) blocked n/a test-armhf-armhf-libvirt 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-qcow2 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-raw 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a test-armhf-armhf-xl-arndale 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit1 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-multivcpu 1 build-check(1) blocked n/a test-armhf-armhf-xl-rtds 1 build-check(1) blocked n/a test-armhf-armhf-xl-vhd 1 build-check(1) blocked n/a test-amd64-coresched-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-vhd 1 build-check(1) blocked n/a test-amd64-amd64-xl-shadow 1 build-check(1) blocked n/a test-amd64-amd64-xl-rtds 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemut-ws16-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemut-win7-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemut-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemut-debianhvm-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvshim 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-amd 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-intel 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-amd 1 build-check(1) blocked n/a test-amd64-amd64-examine 1 build-check(1) blocked n/a test-amd64-amd64-examine-bios 1 build-check(1) blocked n/a test-amd64-amd64-examine-uefi 1 build-check(1) blocked n/a test-amd64-amd64-xl-multivcpu 1 build-check(1) blocked n/a test-amd64-amd64-freebsd11-amd64 1 build-check(1) blocked n/a test-amd64-amd64-freebsd12-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit2 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-pair 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit1 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-qcow2 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-raw 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-intel 1 build-check(1) blocked n/a test-amd64-amd64-pair 1 build-check(1) blocked n/a test-amd64-amd64-pygrub 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-amd 1 build-check(1) blocked n/a test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass version targeted for testing: linux b6dad5178ceaf23f369c3711062ce1f2afc33644 baseline version: linux 6c538e1adbfc696ac4747fb10d63e704344f763d Last test of basis 180278 2023-04-16 19:41:46 Z 60 days Failing since 180281 2023-04-17 06:24:36 Z 60 days 114 attempts Testing same since 181417 2023-06-14 04:18:54 Z 2 days 4 attempts ------------------------------------------------------------ 2688 people touched revisions under test, not listing them all jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops fail build-arm64-pvops pass build-armhf-pvops fail build-i386-pvops pass test-amd64-amd64-xl blocked test-amd64-coresched-amd64-xl blocked test-arm64-arm64-xl pass test-armhf-armhf-xl blocked test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm blocked test-amd64-amd64-xl-qemut-debianhvm-i386-xsm blocked test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-amd64-libvirt-xsm blocked test-arm64-arm64-libvirt-xsm pass test-amd64-amd64-xl-xsm blocked test-arm64-arm64-xl-xsm pass test-amd64-amd64-qemuu-nested-amd blocked test-amd64-amd64-xl-pvhv2-amd blocked test-amd64-amd64-dom0pvh-xl-amd blocked test-amd64-amd64-xl-qemut-debianhvm-amd64 blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64 blocked test-amd64-amd64-freebsd11-amd64 blocked test-amd64-amd64-freebsd12-amd64 blocked test-amd64-amd64-xl-qemuu-ovmf-amd64 blocked test-amd64-amd64-xl-qemut-win7-amd64 blocked test-amd64-amd64-xl-qemuu-win7-amd64 blocked test-amd64-amd64-xl-qemut-ws16-amd64 blocked test-amd64-amd64-xl-qemuu-ws16-amd64 blocked test-armhf-armhf-xl-arndale blocked test-amd64-amd64-examine-bios blocked test-amd64-amd64-xl-credit1 blocked test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 blocked test-amd64-amd64-xl-credit2 blocked test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 blocked test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-amd64-examine blocked test-arm64-arm64-examine pass test-armhf-armhf-examine blocked test-amd64-amd64-qemuu-nested-intel blocked test-amd64-amd64-xl-pvhv2-intel blocked test-amd64-amd64-dom0pvh-xl-intel blocked test-amd64-amd64-libvirt blocked test-armhf-armhf-libvirt blocked test-amd64-amd64-xl-multivcpu blocked test-armhf-armhf-xl-multivcpu blocked test-amd64-amd64-pair blocked test-amd64-amd64-libvirt-pair blocked test-amd64-amd64-xl-pvshim blocked test-amd64-amd64-pygrub blocked test-amd64-amd64-libvirt-qcow2 blocked test-armhf-armhf-libvirt-qcow2 blocked test-amd64-amd64-libvirt-raw blocked test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw blocked test-amd64-amd64-xl-rtds blocked test-armhf-armhf-xl-rtds blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-amd64-xl-shadow blocked test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi blocked test-amd64-amd64-xl-vhd blocked test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd blocked ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 341431 lines long.) From xen-devel-bounces@lists.xenproject.org Fri Jun 16 11:43:21 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 16 Jun 2023 11:43:21 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550099.858993 (Exim 4.92) (envelope-from ) id 1qA7r9-0004jr-JG; Fri, 16 Jun 2023 11:43:07 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550099.858993; Fri, 16 Jun 2023 11:43:07 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qA7r9-0004jk-Ge; Fri, 16 Jun 2023 11:43:07 +0000 Received: by outflank-mailman (input) for mailman id 550099; Fri, 16 Jun 2023 11:43:05 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qA7r7-0004jd-CL for xen-devel@lists.xenproject.org; Fri, 16 Jun 2023 11:43:05 +0000 Received: from EUR05-VI1-obe.outbound.protection.outlook.com (mail-vi1eur05on20604.outbound.protection.outlook.com [2a01:111:f400:7d00::604]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id f266cb0f-0c3a-11ee-8611-37d641c3527e; Fri, 16 Jun 2023 13:43:02 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by PA4PR04MB7550.eurprd04.prod.outlook.com (2603:10a6:102:f0::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.29; Fri, 16 Jun 2023 11:42:58 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.039; Fri, 16 Jun 2023 11:42:58 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: f266cb0f-0c3a-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=F6QFeHvK2s+3+jKuXLppLtV0TFYasbiLTOfqoDdZsmnDViHjRw7kxI8x4fZ3uqpjDYw3fp/oJyUW6sYElg9WGApNyxC9f4Plf6C6fF2FbkSpV6dvXsnJ0D2Wko/VcYySIpc3etYpA/ozhnSl9j2LxOluJdqFIFjFENmAINha+L+vGj+X24cJxGC/D1M49PUSmw4NtwvHYAZU50JAulO9ZQGIbc7KBB/VQaOoGngleO98fYfxgqCyF94tbB7JPSunRr1FB8nBz0j9cNIg0hhWg8hZyFEjrIG0ByBzH8SZcABmFepygSddplLa0N5M0wI+tcxm/C3gepdRSHVJ8xKzwA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=VvsuY0KXe1k/byvGoH2kqL1CJQK+C/t1rDWLZ1M6AoI=; b=N5PBnPy4KSyrqxOKT2Jqcq9Ic5l/gRl/IB3bEDNllPGQcTZM/wWEqEnPPFs9jxCJ3nv87kFRKc7eU77aS8dmSUMHdfsFKG4Ftcq7PgcWr+t3BMqheqFlJ9B2F5sIeMv5ytwgUTT5y2uXs56iVpeadsrkb3R0JrjPhgloY9hJUWJcZcLjEuDFO/rbQBdnpQDihrZrNQGFe8LdUf749vb5BV6euhhLiAWBd4rboVOlqdlT2qhrsAeVIyWaNpaTXFTuJgWRhWb4b07WKkHtPNsajrSa7HN4JedsG++nSMg9zMmrrCMS9z3lO17ZtUCmLvERuvbrAQMgqqeWTe8Rfi79+A== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=VvsuY0KXe1k/byvGoH2kqL1CJQK+C/t1rDWLZ1M6AoI=; b=UQWG2tJhqwzpAOV4gSQI4Iv4D1w7fR/l+wTL9gZaODzoO2RKSx0HSHzbD9eemPLEGJd7fsNeX94gMQoDCw4+Gt4eQkZg30AyQQc5HJpLBqypuuGfYtMWLd5185t+sUm8oSqIw6jy6Li9PIW7O0FVQG8XGaSt7wvU7BNDCSNJB6fTj5tOZ7oCIdom36zvyIKH/mAzTDhQCphmu/CxRiRsn9lGyYuVyNv866kdBSnTloxUk9Sxy+VfMCKVKsrzS5/A1wyB+czEjuoAxoHGFUGvTz16lO6GleC4zKhrNjttBuvh2chWkDL9lZ4166enPM5O5vs8d9BKKswy5whUukKvKA== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: Date: Fri, 16 Jun 2023 13:42:55 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: compat code lacks support for __attribute__ Content-Language: en-US To: Olaf Hering Cc: xen-devel@lists.xenproject.org References: <20230614104234.56835aa9.olaf@aepfle.de> <20230616115103.1fc88699.olaf@aepfle.de> <554d9f6d-0ff4-c387-3f7b-4f04e24f5197@suse.com> <20230616122251.5c7a1498.olaf@aepfle.de> From: Jan Beulich In-Reply-To: <20230616122251.5c7a1498.olaf@aepfle.de> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR0P281CA0059.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:49::7) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|PA4PR04MB7550:EE_ X-MS-Office365-Filtering-Correlation-Id: 51d687a1-b741-450f-b619-08db6e5ed465 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: HCshRr9lE992J1CKpMejJL4wdy6zBaleGVXiIMbHWKsTn0gxl1GIU2QH1NFzbCQyQTSSqJU+4+vI5eip2TrEeL6p+FHj7ARvOu8+YAbMCqr8EWiBf/hKtOxXua+jf+j33g6qTq+kuUVFdFBTqoOxajKRH2TjUZkveatdUqR9Pudwz1t9zKDIjQwlbQ0baDuiuEwhp940wabEHaGNyw+2gSFtzpwppWXP6KxKS4ZrvKXwtNWJetT4Ca3VHjFtRhG8V4CANeofy3sXPuWILpYEMgGsMGnKlahYZAilcE8OeuOnOKKbtGBy7VdqBZkA/mXHz531deqkWT+743z/tGWm+QBPaG0kJ2Mdccu95CyBodPPwALSqxersE70CnMjHGDOyjLFEhKc673rHEkVnSZBgyTkRddpFumr9d4+ihUGuY7/8nNGra7RAmMBvrLW0AkRpdswfbMcjdcnPLysyWMzm5ce2bKZPkzv3R7ELrv6OSkS/AwwYGo+9MKWnnoRH3xhquhFYaLwPFStNZfekmYnNrYGeHg501k0EslmnmuLJLlQpldy4TbdKGXrRHxiAzu5DfGmxAc1KIuXMxYaxNRrbhDatC18HxqhS1KeEgIkXhGfY77IDW4NmU5f7zv3Nd4JU9Hi8LD1GatvyY+lxy05mA== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(376002)(136003)(396003)(39860400002)(366004)(346002)(451199021)(478600001)(66476007)(66556008)(66946007)(38100700002)(316002)(6486002)(8676002)(8936002)(6666004)(4326008)(6916009)(41300700001)(31686004)(186003)(5660300002)(26005)(53546011)(6506007)(6512007)(83380400001)(2616005)(31696002)(36756003)(86362001)(2906002)(4744005)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?amxOSmpjOHM3MWN4bTY5WFdxSnBaeGhRNnF5eW1OUllaV1JpTnN1NENLMnhy?= =?utf-8?B?bktVT3NOZ0IvdXl3SFNoLzNxckFQUjh0eHN5MTZGcU9JZHJjNzFuREI0aG9i?= =?utf-8?B?d250eSs3VWJjaTJDUWJjQ0E4aG9qbDh6VGE1WVJlUWlRQ0tLR2lJRXJyTjJi?= =?utf-8?B?c2s3Mk1WMFpTU1RDQTBzNXd2UEdMVDZ4b1M3dm9ra25WR0VSdldJdVd5SXVN?= =?utf-8?B?WFVxNVNpSTBlUjFEdkFlOGRYeDBGUDZJbmxNQ015UzZmT0lhSkwvTmVtRmJB?= =?utf-8?B?L1c1WnUveHl5cFpYMW1Lanh3Q3U0Yy85V01OYyt3ZnJVQzdpSnFhWmJmcExI?= =?utf-8?B?azhZWFhWbHhSaTFyTGZ4R1dYdXAwWjJwVndaYktwcFkvMExMTHprSEQzdXNn?= =?utf-8?B?anpUY2FudGdkNWdWL1BLai9zWjAxVlJrUmV6d2dkY25xaVkvazU3bThyRndS?= =?utf-8?B?VlN5QTQxSDdwbU1FKzFmNHZrR1haT0NBdk5HMzBYdzMybGtJK1ZTSS9IT2hY?= =?utf-8?B?cVZ2SXgrVEJzckR3bUMyQlloNWszYW1rNDYyTmJRMFh1Z0lvZlBOUVRXZUFi?= =?utf-8?B?Zi9ML3B2N1RGTDhRa0lJem1vR0Z2dUtrZ2h5VWtUU2RCa1FhL2x0NVZibnVw?= =?utf-8?B?UmJsTVBja3FoaFNjb0FnV2xXWVRVV0FWTnl0d1Fla3FsSXpiOTVLYUcxQlBI?= =?utf-8?B?T1FIM014dU81UlNCNWhjUWRCWUQxTFVsd1FwNGFITkh4NDZQTEF4QVJMUTEv?= =?utf-8?B?dXZtWGVKVE5BbmxQSVovRS9tNXloVkNtZE9uZytZR0oyN3RTeWloa2s5elpo?= =?utf-8?B?K2xnUVRsWjZRamhHVHNIVkVCZHhaazZ6L0JUbldKMXc3RHo1dkM4REwvc3ZU?= =?utf-8?B?M091UUpsWTV5b3gwM24vM1NLLzRFUGZiajZnZHU5VHIyNE8zWE56ejVIemtY?= =?utf-8?B?VXVwRy9MNUg4MVo5QzdaU2ZCc0RGYjNISjE3Vi96U1Z3K2Z5TXNaL2I3UkdD?= =?utf-8?B?R3lzSHRqdmtmTHZqYlI4ZUpYeUxXN0hxRFpEMm53OTE2MmlTTVk1bFdjbDAr?= =?utf-8?B?N1Z0b1lObGZtZUdKS2l1VjF0ellBY29qdDE2a00vTUY0SFB0dXdLRkZUWmp5?= =?utf-8?B?b2UwcHoxTmhmc2NiU3BpcU5GYkVtWDlibUs5bFNGdEl0c3U3cU1DV2hXTzJy?= =?utf-8?B?Yk44YnFORXZKVm5vbVhZNHZ6SllFUjJWQzI2UEU2c2NVMldLOUlTWUlySEda?= =?utf-8?B?ZW5LVWZNRTVjTThZWlNSSXZ5UDFlNXprRDBvTldZQ0ZGNkx0bE9KNVFFVEdx?= =?utf-8?B?ZXh5RGd4eVo5b1oxK1dzS0F2MEtKUUlRdFJHaGpvUGxHeW1iYU40ZlpuTGZX?= =?utf-8?B?cDNTUERKVmhVb01Vd0hXN05pcE9pLzNUdlRYaFl1WG4yQVlxY3ZNbjl2bU5G?= =?utf-8?B?RXF4S2IyaDlqaTVTVG9KVHpuSFRXRExIS0U1VjRjQUdFelEvYmEzR3RHZDVE?= =?utf-8?B?cXNTYWVDT00zZ3BZcWx3L0djWmpnam5vd1ZXMzh4UTFkVk9WdlJOQmF5dE5v?= =?utf-8?B?dCs5Q2RtNWdXSlZxQjJXb0JpSm1ZL0RkMVJMSCtSUFpyKzgxTEEyUERPaHBB?= =?utf-8?B?ZDhBZG1GQ2VQcnN2ektkSVg1aU9SbktBMDM2dE1yKzVKZEtGZkM4b28vbmlS?= =?utf-8?B?bXM2OWZMamZZbjI4cHN6dDg3OXhrSlZkLzVFdjZxd0s1VGx4Um5IaEd2em5E?= =?utf-8?B?OVFFK1FBTXpiM3BBSElocTZsMlU0bkkyMVFMV2hqeS9VWkltLy95UkkrbzZO?= =?utf-8?B?TEJLWGRtZlNzRUdiaWpFMysyRW5PRmZoWUJMSGIrTkZJQkQ1bUZiL1NjeWcv?= =?utf-8?B?d3dRQmVnbkVnMUNBYk51U01iMHF3WU8xamEyVS9YY3F6Z1dpb1ZwdmlLUXpL?= =?utf-8?B?Z29GSVpCV0tXNVdSZHZkMTl6NkwvOGR5N1laeVVMR2RpRitCTng1UHhTSGZQ?= =?utf-8?B?RkpmN3B5N1pBUFFwL0U5MmVLV2IvYmJRYkV4cVdpVFhsNGRBQzJ4bVg5aWlC?= =?utf-8?B?K1FwQ1lrSFVCV0ZxeWZZU0Z2Snp4VzZkaUlrVkNPRmpKcTZFWDFid0R0V3ZY?= =?utf-8?Q?a+rp4V11smK1Hxpk3kCU0DExI?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 51d687a1-b741-450f-b619-08db6e5ed465 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Jun 2023 11:42:57.9003 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: YoS8+l6r/fShQWrwOn+w3sUTLWOy1Mgx7uLmedzUsg1XkxV8YVVaWy4Cs5fzpVBZaOZljWTk76RjgoP9ldrvVA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR04MB7550 On 16.06.2023 12:22, Olaf Hering wrote: > Fri, 16 Jun 2023 12:07:20 +0200 Jan Beulich : > >> ... you're removing the line that's actually verifying this is the case. > > Yeah, because it disappeared. I think the other approach is to teach > the python tool about __attribute__(()). > > Let me know which way is preferred. For the moment neither, I'm afraid. I don't know about other maintainers, but I at least would first like to see the gain. And if there is agreement that that's worth it, we could then try to determine what price we're willing to pay. Jan From xen-devel-bounces@lists.xenproject.org Fri Jun 16 11:46:37 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 16 Jun 2023 11:46:37 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550104.859004 (Exim 4.92) (envelope-from ) id 1qA7uM-0005Jw-3d; Fri, 16 Jun 2023 11:46:26 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550104.859004; Fri, 16 Jun 2023 11:46:26 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qA7uL-0005Jp-VY; Fri, 16 Jun 2023 11:46:25 +0000 Received: by outflank-mailman (input) for mailman id 550104; Fri, 16 Jun 2023 11:46:25 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qA7uL-0005JP-IA for xen-devel@lists.xenproject.org; Fri, 16 Jun 2023 11:46:25 +0000 Received: from EUR04-HE1-obe.outbound.protection.outlook.com (mail-he1eur04on2075.outbound.protection.outlook.com [40.107.7.75]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 6ae8df68-0c3b-11ee-b232-6b7b168915f2; Fri, 16 Jun 2023 13:46:23 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by PA4PR04MB7550.eurprd04.prod.outlook.com (2603:10a6:102:f0::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.29; Fri, 16 Jun 2023 11:45:54 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6455.039; Fri, 16 Jun 2023 11:45:54 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 6ae8df68-0c3b-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=gePkfqGxg4NkHJh9eGgqRzqbd8wq6YRwnHPtImMwOzCUQnF4ZxxxE/IrniL5I4Yt+YUMtQ46XHsCMDmbkTpHuObMXjnT3poOJXE+7IKHXELdBVZY1UZTXiTYeEniGkwBFPDVRBcqD4eH+5wctm8I7oMkK7bDoRfPoSXWlFKtMPQgDMLTQiMPCWJ4KJlEiiNlurXarz6/A6i/QcdlhPo212MHCkhNtLfNxGtqV1ogGLOdfTDvj+wrEY8aptf8Z3JK6TUBogdPVk4a7CZjrvTeTSJVwzpdrB3bUKbfiwIaF0lNQfcwOvSnT7VWwFabOUmn4DMrrjz7po/aY6JNRbUkaA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=gP/RNkMO0WWOMIc3XgIlxMNETbrI+EWOuYsy8qTCyU4=; b=e6aOxNvVmKNQFL+29w+/7B7wuDoVONQ78uUpjuLiP6UtBWAcJcSwdp/46n9WzS9w8dufk5ujF81HMiN2kVlsU9K/727Bixmfzo9RLFbcLclRVOdz6u8YZagxup6QOiK+EnBeDTbmz5vupHeHVtL6Fr7a6Aah7AQXWmqS6JVWoc90/lNnJUhq32Ha0DLCH4mAsuMFXRwmJsyu0UOuX0ZjA1fSajPsqIftOb32Q5ykHrZYBbodfwRYQog+jFDFcIFX1/2hSNeIxbCJnvwAl4qwXG1lD0gtnNGFhcFItZKeFL7pVcU/Vs10Ci/Mh+4sZ1t0Cs/S8fo0ODBz5VXPGjBP8A== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=gP/RNkMO0WWOMIc3XgIlxMNETbrI+EWOuYsy8qTCyU4=; b=eHX+SjklDsK+MeC48g7P8Z1lyOR9rYursjbpqf32QQYx2QabST8wObRkAhGAamwBaixX+Y0iCDOuyaMLeLa87g2u75C4UU79aC4GPAeBIuv/2VoA/3vLyuF1uqpfvQJdvaaIkdbAEcbKPixfA79f7FoL7Bz3p1KF0DCRxjI7YWpVy2C/gMbUapYuNJDayWlLS2x+nZnKasDhlojQBhxdtO0FdaNCA540ZSG4WguWzAVHUQb+EXXUFKiiB5bZFs0MwHSdAogMAqqrDauvYhlFnttuYCqyImuMbLrMrjVg7mxvpcuEeJ3YV+BBIG0jarLCJLFQx29myBpShzN2WItesQ== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <25c54a63-4d59-16b3-6833-a3c7ba6c43c8@suse.com> Date: Fri, 16 Jun 2023 13:45:52 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [XEN PATCH] Config.mk: update OVMF to edk2-stable202305 Content-Language: en-US To: Anthony PERARD Cc: Andrew Cooper , George Dunlap , Julien Grall , Stefano Stabellini , Wei Liu , xen-devel@lists.xenproject.org References: <20230616102908.59109-1-anthony.perard@citrix.com> From: Jan Beulich In-Reply-To: <20230616102908.59109-1-anthony.perard@citrix.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR3P281CA0105.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:a1::6) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|PA4PR04MB7550:EE_ X-MS-Office365-Filtering-Correlation-Id: 6d1e6192-4cad-495d-8c5c-08db6e5f3dbb X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 80qqoujM9nkSdpxxxEhKKxDhRXMzYthf8Z26iBomMi5cnW4RGuugHSTUVrRw32kcxdiXJrqYRSugcRaBD6pzDZ8knPgnVKX9aZHHVdAL01SYTJRA9X4bv70NOMTJUvitqlelOXPWwg67B9tfVuYyqD1fWK+87j3fQZHF/HQnDcKG9k0pzgHc37UA6xHPdSfz4tQVA1nBnr4B3AvuTx64pGITqcywt8l+zBqjaM+2LMbQgWuvwnoUfBVJWbthQeD2kFM5eGDYi1dtTYnnXubUL+kAMuXvYsIE2P4XqHsbUF3sgGVLAlhyNP4yrIg8ailMz5ELpBgTAgS1JMjtER5e9hh8UOJIKTWlSdLISkpMdTBHkvqOaEsaYionHrJtimwa5nSKQ5SQBFr/LEUB8dBh2pV1akjvXhrC80r9hu4NLeNVKVvxLb2wcZmxzLcL3fp9v+RcgtaLYLdZiEuzKxY0TxnQdIjhHUUsHZKdWh769ggKFv0pk1HBt/GFvveG9l5wgNrmRRd2DFyWHDaPHY/ZvY4KctkUjeFdmtNppgDWfO/EKzZvlJ+VORJ7xRv+gKbtQ+MnVmTItaMrGpUM/xjj0kxXDaNeCrrwuCL8e+e0DmAWtutvCN5vkoWEbhdCWsKB2o3bMh6X9s1r9Q8YgGVGTg== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(376002)(136003)(396003)(39860400002)(366004)(346002)(451199021)(54906003)(478600001)(66476007)(66556008)(66946007)(38100700002)(316002)(6486002)(8676002)(8936002)(4326008)(6916009)(41300700001)(31686004)(186003)(5660300002)(26005)(53546011)(6506007)(6512007)(83380400001)(2616005)(31696002)(36756003)(86362001)(15650500001)(2906002)(4744005)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?RlVGUml1dHl3SjBhcjZrOCtORTAvSUZKMUpZTFpPUEp0ZlEvU0lpNGZLQzJ1?= =?utf-8?B?R1FnRjkxR3AvZ1dLd3hVT04yL29vSnVGOHYrYWxKNCtSb1NKVjVyOWJwNW9Z?= =?utf-8?B?ZHF4V2FKdkRlaGgrNE44a0tiSFlVVzVmQnlxd2JFdG1JY1Ircy9IajlpblRD?= =?utf-8?B?dFVXempZc0JzWDEzUzZydlFpREVSeCs3WGRUTFRHWGJBL2hOK0VjT2tSbzE5?= =?utf-8?B?MmZNWGtIdW9TLzFNY1BUakpKKy8xSXRCUlh1dmE1cWRqWHZ3N1VXL25LOXZr?= =?utf-8?B?NnJxakVIdEw4WElqNE8rc0hIS1VaYmRCWVRKUXAzNXBzMkU3TW9tUzNJVzI2?= =?utf-8?B?NklIM2dqUFIzLytjQTY4b3NjTllLdGU2dHBBYXJrbTUyRkVnZ1ZUN05XM2tv?= =?utf-8?B?b3hUWlg3TmZoUng4TWZkbG03SitqTnVaeFpFSlY1dXdwWEpzbXlFanljcFgv?= =?utf-8?B?VjdvRFFiTXZ4VVdiWW9Vc0Y0UUZGTm81aUV5cnBSK1RWRzVJb252UjJrdk9Y?= =?utf-8?B?Rm1PM3JzNlRFT1VRelZXd3hYa1JKWENhV3lORVF0TENLNjBJTXdBa1lXdWE3?= =?utf-8?B?TXpwZWdVSUlvMUQvTEE2dlFjRnNyL2lsaGFrK3p6WEVJcFc2aGl4TUVOUGx0?= =?utf-8?B?akluVkpVZDdtUFpDKzFaaXdNa05EVHByTjhEbzRONHY4N1FTU1FIdFpJOXIv?= =?utf-8?B?dFprSmxHZ1N1VWZGK2w0QmJaUmZwUG1kMU5aR3pmMGRnN2FESnF3QnVxWEtZ?= =?utf-8?B?eVBjRFFLQm9oaTNiRkZBZ2MxaGpVNVBldzF0QUVwVTRrNTdXcmI3K0tLaEtW?= =?utf-8?B?Y3JrbGNPWHdmT3UraXlpY2FlMEhoZXA1dmNxWDdDK09DMlNXYkIxa0huc3Vx?= =?utf-8?B?Qml5aU1nMmoyUmdYTDBObjBBaU1JNC9uQ2YwTmFEajBHQnV1RE5xS2h2Ykxl?= =?utf-8?B?WEtoMG0ramJzcTRIenoyK0szQ2M0ZzRMRUYzT2RIWEIyVXdEZVN2Z1dXejFh?= =?utf-8?B?Znd4THNmcDVJQ0l6NFFBZGc5MFdDd2RmbWQvRjFQQ2xNUkdBSTY4NGVaZ1hi?= =?utf-8?B?c1E4RnIybDRWS05qdE9TdzhHVFhOZGh6OU9JTVdWUytxRDdyWUVOTDRkMENu?= =?utf-8?B?NVNhWTdsQkJzVHFmRFRGMG5FenU4OEtKbnZKWnRHS2RVditTSHdRbnZ4aGxk?= =?utf-8?B?SXhkOXUvRDB0QkZzSG5nb2dYYWJGSWdpRUsrdWdsSVgwY2IwMlpLd2IzNGlN?= =?utf-8?B?S0xTZnpYSTlBbW40NWRleDhzWi9KSnd5TXZZYWNyQTZ1Nk5DNk1NcExKWUJ0?= =?utf-8?B?MDQvOUVEUVRyRmpkM0REdzF1QlNhWUt2MDN1YTQvS2JXS1lVNWordDYvRHJk?= =?utf-8?B?UVV4TzBtUFlrcWp5eHFEaFFMZkhuU3lMT0xwbHZyVncrMXMzRzJGNVlSanBJ?= =?utf-8?B?UVljbHFjWmsrRm4xQ2tlS0lvSVBkSU04SWYxQ0NTeFFFZkNTdHRLSVJvc3Vp?= =?utf-8?B?UE5OQnZmMXNrK05KYTVSSmRUb3VqVXlpQkxYVFRmWTVNVlpXRGl0QjkyTXBj?= =?utf-8?B?M0txZXU1aVo5NmhpcUhSZ3hndktwOFk1aHdrYWFlb3FZMDlZVTYxNkNaaDhM?= =?utf-8?B?dFNGbEN3ODZWZFVzcjJPWllqcGZvOW44OG41VmdUK1NmVEFFNGF6ZkFjVlU3?= =?utf-8?B?eUFicVc4MjF3c3R6Z0RoRlhmeW5KN0FadUp6VXFJZWhNV2M2dzh3N2tPUnFy?= =?utf-8?B?V2VPNWd5ajkzVGRnOW1XckYrZjJLRitHNU9xTDRqaldNOG95U01JbEI2N1JS?= =?utf-8?B?VkRYQi9yWnlzQ2U4d1hwTmRWcmtOak84U0R2WjJFdDhLU2VIbEhFa3BBVGZP?= =?utf-8?B?UktZVjVWbDhSZFVVVjFObkI0RWpENTEyZzJOZmNLeWlwTGh0Ykg1T2hTL3dn?= =?utf-8?B?N0RNYzB1bkVnaEE5Q1NvajQ2SFBzMFdwVnNNV3lVc21hcmlsSEpibHdNM1d3?= =?utf-8?B?MExETzVjeE9WbVVONURDM2F0SS9aUWlWUVRzMXZGMGEvWk45UXBFdVBPVExV?= =?utf-8?B?RFFnM0dmcjUrdElDdjhrTGpFdUV3OXU3b3VqTUQzVDFoZ1RRMldTbmpyRUNO?= =?utf-8?Q?yvuuiMjlKrwzWoFAVCXNdfUGp?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 6d1e6192-4cad-495d-8c5c-08db6e5f3dbb X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Jun 2023 11:45:54.2030 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: r4Uc65TVByRYEJCkVKpr7wF/BrOKk42vJIHoQ+8DW7b0chEEFK7FuUC6UXW7I1Y6c3AtVC5XmTTSRRARXnEaOw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR04MB7550 On 16.06.2023 12:29, Anthony PERARD wrote: > Update to OVMF's latest stable tag. > > This is been prompt by trying to build Xen on Debian Bookworm, > where edk2-stable202108 doesn't build. Also, it's been too long since > the last update. Hmm, yes, almost 2 years. > Signed-off-by: Anthony PERARD Acked-by: Jan Beulich From xen-devel-bounces@lists.xenproject.org Fri Jun 16 11:47:32 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 16 Jun 2023 11:47:32 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550111.859014 (Exim 4.92) (envelope-from ) id 1qA7vG-0005tN-H0; Fri, 16 Jun 2023 11:47:22 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550111.859014; Fri, 16 Jun 2023 11:47:22 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qA7vG-0005tG-Dl; Fri, 16 Jun 2023 11:47:22 +0000 Received: by outflank-mailman (input) for mailman id 550111; Fri, 16 Jun 2023 11:47:20 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qA7vE-0005qE-Os for xen-devel@lists.xenproject.org; Fri, 16 Jun 2023 11:47:20 +0000 Received: from mo4-p00-ob.smtp.rzone.de (mo4-p00-ob.smtp.rzone.de [81.169.146.162]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 8af9993f-0c3b-11ee-8611-37d641c3527e; Fri, 16 Jun 2023 13:47:17 +0200 (CEST) Received: from sender by smtp.strato.de (RZmta 49.6.0 AUTH) with ESMTPSA id y5401az5GBlF7vV (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256 bits)) (Client did not present a certificate); Fri, 16 Jun 2023 13:47:15 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 8af9993f-0c3b-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; t=1686916035; cv=none; d=strato.com; s=strato-dkim-0002; b=PZ2xoQ75y+NvZPgMj1QKuR01CKimrB6vhbJBOxf2Igs4jMqkhL+EDo7oOPYg56wofC RomLuyQ/KYlTH6QTKQPBdc1Tj8lYfxGINd3qzQas6SDqHqCbJ8B4929T11hfK5kkLidF QzclO+D/hRRya7h8JZJl8P8SwEySKnorDR1Z6adYixaCLtlISaEQCG5d/dob7TutOTGn xzxbI9aHywWvcmVFsqfwbS0DNFTTR6kTeE7a8GDGkCz1hQYXE6jwDGrhYun0ysstxhgI dbeFRVuz1B0MXeBABFTa7n7Mm/aZ9OXsefU5/phUeDeWlRAimQzJmGZPtEN2GdZccFJV /e/Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; t=1686916035; s=strato-dkim-0002; d=strato.com; h=References:In-Reply-To:Message-ID:Subject:Cc:To:From:Date:Cc:Date: From:Subject:Sender; bh=+JAwBarfPfVRONQKvkhvJMNBYqOxNfnw0XkD4Q9Kc8E=; b=EXXhg35WtDESm0ZG+YayhD1rPVxNCqmu3YbQ3Bl9YS8iIJ5yEINNQ5JNHPVMQoC8IP 54wURqwNTtt3He9fLSyAOhMFIFO9XjEjHcUP7jQRoZPFVjkX2KCR87taK/d3Cjm+xnRA GefoNMWccjL/JHDwL//JIxzjM/QXp34T9SiIQnoK4/WUJZxSMAE1emCnwgw+w5TzT4OL WxGv98c5toVtVOdwiFkVZ9FHCkxuS/sV8xwnvTXUtXf6ADN11K+0RmTptS4kWlwJtgJN fkcMlqyc4qJqAk3KV2BXSdC/ed5xsQGUXwK6ZB/QivHupcX0fikxKQcLacbwDcxEIXlI EJfQ== ARC-Authentication-Results: i=1; strato.com; arc=none; dkim=none X-RZG-CLASS-ID: mo00 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; t=1686916035; s=strato-dkim-0002; d=aepfle.de; h=References:In-Reply-To:Message-ID:Subject:Cc:To:From:Date:Cc:Date: From:Subject:Sender; bh=+JAwBarfPfVRONQKvkhvJMNBYqOxNfnw0XkD4Q9Kc8E=; b=SPb3A+WiZUk4zfu1c6OXehfKquNBcRPpBQ0qps2i63sd0yRNblmM5rrYyHACFR0RCZ phDfrftu4Wa7UG+7aDXikagIhCUxtdHMFzKcXpjFOKYdohk4W6wxCYYpeyilRlWMcw0h DSRb5OiAAYifBqADhZv3PVlYfhtpuiTc/4zWZDpUluBovFufhlSBN8Ykq42TQJehAjHI Ilv4xfrSdYAY9FfLlhHMmsM0Fx6hajUm6RDQWUtd21lQz04laTSsbZBwWpLcIMzUZ7yX qalwjwKvHbkZBiTZg00q/hJTfNlBDYRU+OlHKxO3VIl0uCkCQlws0LWRVaPs+jvsWN4X 6Umg== DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; t=1686916035; s=strato-dkim-0003; d=aepfle.de; h=References:In-Reply-To:Message-ID:Subject:Cc:To:From:Date:Cc:Date: From:Subject:Sender; bh=+JAwBarfPfVRONQKvkhvJMNBYqOxNfnw0XkD4Q9Kc8E=; b=HNAsr7fTuRl10iviU30Zdmfj9Gq3gWgaWa3Bg2h3mpwjcDOaaUwYB7CQHLURKPh0X7 kSvq3n81ZTR7zJ2hpkDA== X-RZG-AUTH: ":P2EQZWCpfu+qG7CngxMFH1J+3q8wa/QLpd5ylWvMDX3y/OuD5rXVisR5AB2Ibh3sRFQAfajHZ8Hr2i7N1ImBUHmXWy0PQg==" Date: Fri, 16 Jun 2023 13:47:08 +0200 From: Olaf Hering To: Jan Beulich , Juergen Gross Cc: xen-devel@lists.xenproject.org Subject: Re: xentrace buffer size, maxcpus and online cpus Message-ID: <20230616134708.6b3c6964.olaf@aepfle.de> In-Reply-To: <1b99e58d-338c-02af-eeab-00d691337d00@suse.com> References: <20230530095859.60a3e4ea.olaf@aepfle.de> <578d341d-0c54-de64-73e7-1dfc7e5d7584@suse.com> <20230530220613.4c4da5cc.olaf@aepfle.de> <1b99e58d-338c-02af-eeab-00d691337d00@suse.com> X-Mailer: Claws Mail 20230601T090920.68bc28c0 hat ein Softwareproblem, kann man nichts machen. MIME-Version: 1.0 Content-Type: multipart/signed; boundary="Sig_/3I7OyAD8F5DuDB8umA8hwSZ"; protocol="application/pgp-signature"; micalg=pgp-sha256 Content-Transfer-Encoding: 7bit --Sig_/3I7OyAD8F5DuDB8umA8hwSZ Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: quoted-printable Wed, 31 May 2023 11:05:52 +0200 Jan Beulich : > As said before, num_online_cpus() will under-report for the purpose > here, as CPUs may have been brought offline, and may be brought online > again later (independent of the use of "maxcpus=3D"). It turned out, commit 74584a367051bc0d6f4b96fd360fa7bc6538fc39 broke the expected behavior. But to me it is unclear what bug was fixed by this commit. If I read alloc_trace_bufs correctly, it already operates on online cpus. And __trace_var will do nothing if called on a cpu which was not online, t_bufs will likely be NULL. To me it looks like commit 74584a367051bc0d6f4b96fd360fa7bc6538fc39 could be reverted. Olaf --Sig_/3I7OyAD8F5DuDB8umA8hwSZ Content-Type: application/pgp-signature Content-Description: Digitale Signatur von OpenPGP -----BEGIN PGP SIGNATURE----- iQIzBAEBCAAdFiEE97o7Um30LT3B+5b/86SN7mm1DoAFAmSMS7wACgkQ86SN7mm1 DoDMVQ//UZ26hDCqxGCcfRQ2uhYOFvNfQUQ9KFgIrRp1mDun2SxpHn0jzLvWvVv5 aSlSV1SaNutZEwYA8z3+aZhfxpq9ORA4EZGfFv+zVpxS4ZYnb4fuM82FaMvmZx5D 8qw1KfmU0v36jI8IqUg4KGtnkl0jxgLEWfCNaS9GC1u/rOE6wRita+i6eERm/nYK ZebY37Z1kF4mOCPjtDrtrGliWqBcjr4D/yy3HGK2rNw/uEYNycj44HtuXDszmT4O DtGB2zIo/35KbK+IDeVCTvMTg6Vixtj3chRfUCrzezsDQEjfNPSw31D99d9Gm7FG 2QzR3My2Q5WEetejeK24XaODyGS6gfhThegwjknzKDfygwEumRcjfYE1g/rNTlth o1nQHQ8iKLTujzi1tPQzPkL/UslkHX5MUQ/wn2P/DuvGzMn23sKvkXiPA+79e9Yq HN8fISAz6TDNGnR2HflHN15Je4kADh9Qe1qerWGwJJ9TCGTsfz41JwqeZ8v4nWeq JfWp2gUOQ5qXGVuR9vvf/ZUPBvGGEFkzfp52MLwLVJs/fq1titC5/1E8yEGaBxmj iCrqLDaTPVVGn7TOSoHXitnkPlCHpCGTN7sQVi3tn3CeghNcdc6E5CVXKd2Qikl9 EBEDqisLV+LV0f8UWy86KM7epLbvT5tX4O7KpzIAb0G84PdfLN8= =nCS6 -----END PGP SIGNATURE----- --Sig_/3I7OyAD8F5DuDB8umA8hwSZ-- From xen-devel-bounces@lists.xenproject.org Fri Jun 16 11:52:57 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 16 Jun 2023 11:52:57 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550118.859024 (Exim 4.92) (envelope-from ) id 1qA80b-0007Pg-4r; Fri, 16 Jun 2023 11:52:53 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550118.859024; Fri, 16 Jun 2023 11:52:53 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qA80b-0007PZ-2A; Fri, 16 Jun 2023 11:52:53 +0000 Received: by outflank-mailman (input) for mailman id 550118; Fri, 16 Jun 2023 11:52:51 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qA80Z-0007PT-8D for xen-devel@lists.xenproject.org; Fri, 16 Jun 2023 11:52:51 +0000 Received: from EUR04-HE1-obe.outbound.protection.outlook.com (mail-he1eur04on2052.outbound.protection.outlook.com [40.107.7.52]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 518ce087-0c3c-11ee-b232-6b7b168915f2; Fri, 16 Jun 2023 13:52:50 +0200 (CEST) Received: from AM6PR04MB6551.eurprd04.prod.outlook.com (2603:10a6:20b:fa::20) by AM0PR04MB6770.eurprd04.prod.outlook.com (2603:10a6:208:187::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.25; Fri, 16 Jun 2023 11:52:21 +0000 Received: from AM6PR04MB6551.eurprd04.prod.outlook.com ([fe80::d5cd:a63d:6ce1:2be3]) by AM6PR04MB6551.eurprd04.prod.outlook.com ([fe80::d5cd:a63d:6ce1:2be3%2]) with mapi id 15.20.6477.028; Fri, 16 Jun 2023 11:52:21 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 518ce087-0c3c-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=GQdjmFfDjjLRy2DIqKqEVOJvAnBJ1qPw6mue3r3RvzAzxljeqF3sl5MTLk3JB+AWUsNgdwjR08oqNORNBcLKtOWaHLs3ixt5+U7mUiNEXBwB+jLY6ow/Hf/tAXjHMyNeBTk1bgatNPCDIYzgqF1mDdx67TSzIFE2twGfQ5CoglBk/q1QM3FysynhLMZqq+psF0vlyL0k6ivZAY2ZbKejQVQstzELjDkuIxq0Rc4+nQPMoXT9bBT7c++HQtrO0sCLYBujxRtbrxsUO+lzrhIP9g8e/6Ycgdf5dQiRoLkmITFXXFPrXJXggV3PzH7qRnUbnY+4ypUy9cUS2+ydl/dIcQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=BmAqTKUHvtih2PbS7cm+jZjRazW++IkRPBWTxvFyeEs=; b=Y4zpQ+zpOl/gh2Kbvj7y33woDQYSztBPdlsJ/tR9Fz6WuMTOlC6YGWORjZWuHS6p+YH9jz0JBXCYQx/D77R/xie+E7M5LwUcim3sZ4SZ4GRiS7hLyVCT8icn8x34ZTbkopG+OaDwJ8+R6QvvZTLZMdL00y9y5/TiqwfC57wxeobwiM5h6BiTGn8DFOfdPoJ0pBjjIrlqZSlkXoq3NLe3Hp1zCeoCvOBmaAedPackBVyFxT844ks9SISeuk8iWzuloeFnGIaIRZtGj4Mp9JflU/3t2Vx0cSyRBe67MM5KGaJ8YYH907y+Juz6Pd6P/W5vl/fCFsUbgNXEXa+8dc1MXw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=BmAqTKUHvtih2PbS7cm+jZjRazW++IkRPBWTxvFyeEs=; b=P5wunL3GKlSFBCvFg9r28jJAgKa52vimzQOvFoL5psodNKoIubV8Yl7Qt0zAPXP5gl0s9ADPmKmszhTDmjP9D09lv2xElC0mHI0sLemNknM5qkuHSgAdXgNvkNVocEPFwEiOcPvRB60r8bgb5Gr6Ey/q8eLoweE/muBYp4DDaYJ64eLONhblAfpNwa4vsCv+UUhKug1mg0Go/0y3vn1fBbVwlucHZ0qgtK/RSwzJA4aLQKo2iEevff+H/PpRQIdIvCiy3fw2vj3gzQ5zeii+rjv4hIUByNTOO0tZCmXLqMSRSCG77ErCKA/I8LGPnDB7niBL4jZ5g/ah1Nbz57gNAw== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: Date: Fri, 16 Jun 2023 13:52:17 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: xentrace buffer size, maxcpus and online cpus Content-Language: en-US To: Olaf Hering Cc: xen-devel@lists.xenproject.org, Juergen Gross , George Dunlap References: <20230530095859.60a3e4ea.olaf@aepfle.de> <578d341d-0c54-de64-73e7-1dfc7e5d7584@suse.com> <20230530220613.4c4da5cc.olaf@aepfle.de> <1b99e58d-338c-02af-eeab-00d691337d00@suse.com> <20230616134708.6b3c6964.olaf@aepfle.de> From: Jan Beulich In-Reply-To: <20230616134708.6b3c6964.olaf@aepfle.de> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR2P281CA0164.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:99::14) To AM6PR04MB6551.eurprd04.prod.outlook.com (2603:10a6:20b:fa::20) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: AM6PR04MB6551:EE_|AM0PR04MB6770:EE_ X-MS-Office365-Filtering-Correlation-Id: 4d8a32b3-e7ed-4bfc-e0d4-08db6e602339 X-LD-Processed: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: q7XykT5JBohmz1SsE08ksLRun+C4JaewK225P10svVhsjGzzis1pwrdtdlkctF0Q2S9EK/e3cJ0GAm5vrhxsnPjBB7ukklUoQ8YRvQJ6GYoyly96MaKol/ALCBQXlzBaQrmdlJjJYJqKpiiSGVQeZYQ45nlD5Iuanm9ZttNdyPP3++sc0ZcmQYonVEq17tgJ/n3ql9EwsvVkZpUA2R1kiUr2I2IFt+bD2WsVy8XjixmGxf1maGd7jIYdrzqtXS/O5jhRrsVsxASLgyhmwlA7AwayOqpCH1EuWtN6iBiY+E0FipRGdANBUJLNcdfQbMJfL9kxzuRPYlwsFu+CMTVnyTfUoQ06MVeN0RkZWDmPLIH3qEBM/7NpPeclTR71Indh1NRbIw2HY9pq867zSnyzH9gG7D9UWgCz3Loh6mWFtkf2Bt5udDgTWbJoxNkpwcF7wBV9Kz/8aOH5D6gmAwQlFVIMzzf0KlNN19iWABDwISDc5Ba84vbdRxoatH0Gz82MVyzvRecJoM+z3d2Z/C8apQZLchimmk9r8jVNuiJRlscxJ5pzk0GeROmUaNVnfJq6k9FULJXf12W3mDifl22KagMxh9SGyNywFvqWWmCiE3PsIOHh3+EWaIEYZUrrpsEPG1mBgXMgre6iKVyWpap2Zw== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM6PR04MB6551.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(366004)(39860400002)(396003)(346002)(136003)(376002)(451199021)(66946007)(54906003)(31686004)(4326008)(86362001)(66476007)(66556008)(6916009)(6666004)(8936002)(8676002)(6486002)(41300700001)(316002)(36756003)(38100700002)(31696002)(6506007)(53546011)(5660300002)(478600001)(4744005)(26005)(6512007)(2906002)(186003)(2616005)(83380400001)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?L2Q0eGVxbHVORDB0SWdtNTI0bUljeDdlSVk3djRoWjZpVTVrVnc3d1FSd05V?= =?utf-8?B?QnY5V016WWVJb0JURXJiYmVsZ1dnckh3ZzRsV0gxYjBWY3E3c1BXVXNvUU9h?= =?utf-8?B?dHlJbXVJZTZGMDI4eFZRdFZLMWpEM1Nadk55VXFwMVZQb25lc0FKQm0reVBs?= =?utf-8?B?T1NJYWVPT0VIWTBna09kK2g3ODBseWdncjZGdFFUaHRDVGFpWWxWd1lTck5p?= =?utf-8?B?ektjUWg3TmpKdXh0cU8xVE9XckFFdC9kYVp6M1hiWi9wL202QjhHOERGOWhH?= =?utf-8?B?Ry9sbDhVTkhJejNjUWNWRWx5TTBacDhyY2hYcysvdGxVWExmYkE4V2F1Q2Z5?= =?utf-8?B?d0JDdDBDOVpZcVVxWWh0YlpyWUVNRWpkM3pFeDg1bFFqQVhwcDQ3UDUxVVBF?= =?utf-8?B?ZDlNSVU4YTlsK01rNDJZdmcrWW1kbkhLN0VkTjVYOUNVQ1N4QjF4Qzdja3R6?= =?utf-8?B?VVFzVUpGMDhpaGpjWTcxQlpLbDY5NXAwVkxXbWFFUW9uUHg0eU8vZUFEYWs5?= =?utf-8?B?UnNMNFZybHBURU94SzcwUmo1bGR2S3MrUWh4R3lrbVFRZTIvUmtvQ0VWWno2?= =?utf-8?B?SGVIWUYwRW5mYmxFMjNTTUtjKzRGd01XcmlxSXVwUXFOOEdYUkVuYTRCeSti?= =?utf-8?B?ZWd4RFdyT1hIbmdQL1AvNnFGZTRlODIvRmhUeFVFblR3SWcwR0Q5UGRVUWQy?= =?utf-8?B?TDdQeGlHN2orcWxxTWpUSVMzQWhTdXdlM1I0Si9laVNIU2UwUWVNU0pSMXZI?= =?utf-8?B?aUlwWVFlc0kxaElDWjJsTHNFYXZVY0tJSHd4eGpHZGkydjVhMitYL3lyRG96?= =?utf-8?B?UTFMVXQwaHUvV0ExWDdSc25xd0tKbG1mMU5Ka251bEw1dm13VUdQN1JUNXg5?= =?utf-8?B?VitWNnFPTk5jd29GZmRhb09uelowcEEwOVQvTVJrSG5XZVpCNTFJN2lDcUVB?= =?utf-8?B?cDJ2K1NXcFNiS211RXZvSzR3N05RTHoxd2RnMUNSdEJCbFFhN3FxNFQzWEJ5?= =?utf-8?B?dTBvay9GOVQ1MzhJUnRXVDd6SVI4UUdYalN6QTl1S29DaTFhcUQvVWxNK1ZP?= =?utf-8?B?ejhiVHlmM0FYQ3B6T1AzQkFMNXBlTzNUS2h1c0dxaGlvQXRxVHRFc0JPZlA1?= =?utf-8?B?NGFXamp0dEczbHNNTVNONVhka3JrOC9rSndVUTNBbCs5SG8rSWdkeVVtNmoy?= =?utf-8?B?SXI3YmdwZGxDQzVzWGRDTVpGVXRzek1mdHpjSTFqNUxJenNoTFBOM2hOQnY1?= =?utf-8?B?djZCVS91Wk01VkdKcUU0M0I5aFJVdVUxTTJmSWJ5dkdMYm50WGlUdHBDOFJ0?= =?utf-8?B?U2NqYnMrTGVEVE1YdEpmSjErSVVRNW5Ic2ZvdVdzVk80c1B0U2M1Q0lkYTBP?= =?utf-8?B?YmJpOHZ4VmVCc2laeEs5MVJZU29ZQWd5dmUxU3BKekNXSElONFFITURKVTdG?= =?utf-8?B?TlJCNk1IZ0xwL1dQWlQ0RVk3elVJdnlPdHhKcDlyUG5ZN1EyVFFXNVdId01S?= =?utf-8?B?dHN4TmswQVluK1hlbnJkczNOWEZpaFNaYXVFOEV1VzdtMFQ2ai9ZQ0VtaDda?= =?utf-8?B?d05Gd1VJbWNPRHhaWCtmRUIwN0hzcVdaZHkvSm95azY1c2UxVkEwZ3VIT0NF?= =?utf-8?B?L25hMWhGcVBqcVhIWTc3cVlvOGwvd3U3ekZqKzNhZW56QTdzdkZHMFJ2OWJr?= =?utf-8?B?SnlHN25Oa3hreE5NL01zNGpndjFER1NJNk1BOUtNMXRpdytCK05HYTIxZ21t?= =?utf-8?B?MDIyMG8rQlpjazZIWUdqc1J2R2NYMmFvMWUyQ29qSEtRVzUyaFR2N2poTDZE?= =?utf-8?B?M1E4YnBQK2N6bm9WYXJJMGFJWHQ1RVdlcDFZRGg4M05FL09YVndWblA0d3Nl?= =?utf-8?B?MzhybFl4QVZ3ODNkeUhyL3pPVExuWG9oQWZIeU5oMzBjZTFwZFlyQktYYTcz?= =?utf-8?B?NE13TkpUY0FoOEFUN2VkWW0xY3BNK0ZNRzk3ZTAvNDBIdEV0OHhNV01FWFh3?= =?utf-8?B?TUd1NHBUSVRHbUt6ajNMb0xMS0ZkVGJvR3BDeVBvQlBlTkd5SmRsM3FOL2Jh?= =?utf-8?B?bmltVGczNFlNcEhhTlEzRDNYRFEzWTJDbmVHNzRQNVp6ekI0ZUFNbURncmxk?= =?utf-8?Q?BvpiR42+761I2QT+Xnc0gl6D2?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 4d8a32b3-e7ed-4bfc-e0d4-08db6e602339 X-MS-Exchange-CrossTenant-AuthSource: AM6PR04MB6551.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Jun 2023 11:52:21.5672 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: xyCNxlBCVgb/ecT+LwFguU00qqqhk66HGz96iCzODiEHG/Qo+qc4wr1KvZV+H6pd1Kzm6v/RN5YDsU3xxYbQmQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0PR04MB6770 On 16.06.2023 13:47, Olaf Hering wrote: > Wed, 31 May 2023 11:05:52 +0200 Jan Beulich : > >> As said before, num_online_cpus() will under-report for the purpose >> here, as CPUs may have been brought offline, and may be brought online >> again later (independent of the use of "maxcpus="). > > It turned out, commit 74584a367051bc0d6f4b96fd360fa7bc6538fc39 broke > the expected behavior. But to me it is unclear what bug was fixed by > this commit. Hmm, I find title and description quite clear there. > If I read alloc_trace_bufs correctly, it already operates on online > cpus. And __trace_var will do nothing if called on a cpu which was > not online, t_bufs will likely be NULL. Yielding an incomplete overall trace, at best. > To me it looks like commit 74584a367051bc0d6f4b96fd360fa7bc6538fc39 > could be reverted. I don't think so. I'll add George to Cc as well, as he's the maintainer of this stuff. Jan From xen-devel-bounces@lists.xenproject.org Fri Jun 16 12:12:54 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 16 Jun 2023 12:12:54 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550137.859034 (Exim 4.92) (envelope-from ) id 1qA8Ji-0001jG-9B; Fri, 16 Jun 2023 12:12:38 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550137.859034; Fri, 16 Jun 2023 12:12:38 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qA8Ji-0001j9-5u; Fri, 16 Jun 2023 12:12:38 +0000 Received: by outflank-mailman (input) for mailman id 550137; Fri, 16 Jun 2023 12:12:37 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qA8Jg-0001j3-T8 for xen-devel@lists.xenproject.org; Fri, 16 Jun 2023 12:12:37 +0000 Received: from EUR04-VI1-obe.outbound.protection.outlook.com (mail-vi1eur04on061c.outbound.protection.outlook.com [2a01:111:f400:fe0e::61c]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 13729b12-0c3f-11ee-8611-37d641c3527e; Fri, 16 Jun 2023 14:12:34 +0200 (CEST) Received: from AM6PR04MB6551.eurprd04.prod.outlook.com (2603:10a6:20b:fa::20) by AS8PR04MB7783.eurprd04.prod.outlook.com (2603:10a6:20b:2a4::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.29; Fri, 16 Jun 2023 12:12:31 +0000 Received: from AM6PR04MB6551.eurprd04.prod.outlook.com ([fe80::d5cd:a63d:6ce1:2be3]) by AM6PR04MB6551.eurprd04.prod.outlook.com ([fe80::d5cd:a63d:6ce1:2be3%2]) with mapi id 15.20.6477.028; Fri, 16 Jun 2023 12:12:31 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 13729b12-0c3f-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=XXkiUUWkfI9szS45OniiiQOoVTwvhp9tgC/rDKGbCqwLWKIfxssFFYZablJYdbiZ/vDxNd3VaFlP+7TXZFln3q3D/rG/rjDZ46hWIWpW2idtpF+0j+5cHOHgOlBxTin122lv4S4sKhBmTEIZSLs/CRQ9fm3DIbars226YAPvuo5Q0+VZ6CoTLNy96dEj6VhGDAhJwzC+5f+5ctDSnnCXhzXG4Q4W5DMOtREUYVHZEf4mZIY53Qz2ccQTsEX/oaE9LYQV53sC5mkT1DabJYDNLd1mkSDs3OmtYuhlbNKxt8AuXI7E79UXjEEbckK0ZRcVxeT7tosufyQ+ysetFiIWEg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=UdFKnM2x4eXMR1SRVIZtGdeSEii6gRJcWrcAs1rYC58=; b=mHk2iaZfFaDlumAMA00hrGezDZh3Z58oUc3xXc++if3ZcEDCarNIYPtu1TxuGwaZbIsDGUmaE6HF23vbjlKzixwoAUoN99OmUmT29aJRuqF4n6Ub2ccXuKZKoUuIne065d4t+96dwX1c59IYMX5oNVHeEK/JBQjl38fdJ8bN7vY7gbVZNG4kD9+sHRwpvrbfAFXODqQ097nYbUVyUtXkrziUc03juFmgcK7g+iE22qLGUSaXCtyOT5WDB/wnuSgD+ah3F0mGTFTddN9IFjPbPRThqgclwRu8ENKo+QPBYsaWIUGMXX1GsaqBCIuZ/ezyqWwLN3jkvcWyIqTrj9JB+w== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=UdFKnM2x4eXMR1SRVIZtGdeSEii6gRJcWrcAs1rYC58=; b=L7ajGMbHk1fgdRclNuciShhKhACNFY+pF9aF1pymHu52EN4QvICiIk8eK/b7BvyGvvisJco4VBXDjV0aEtte4uzpMsaNKL2m8KQQoZHwdvLA4Yw950JcAzEu7chg2qeRoDzKeYquPKNbbD1Jr5XPAEba15VO7IR0sD6eDOaotPX3thgUrLg98uo8BB5l1xzvwJg8wK3ihVXagmyrjz7ZiUXo2FtK06/cy2qE+IQM3AS6DZLKEEWz8c2RqSDhXYGoR1VUI2PbX76dUkuftzoEweoetgv8lGsPk6mE0/urQmIadm+i5DQboFDKqgrOaYJU/Un0XcFlU9MCXJlszb96mw== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <39f2eed7-4a28-5c98-6e10-2171d630d198@suse.com> Date: Fri, 16 Jun 2023 14:12:29 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v3 4/4] x86/cpu-policy: Derive RSBA/RRSBA for guest policies Content-Language: en-US To: Andrew Cooper Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , Xen-devel References: <20230612161306.2739572-1-andrew.cooper3@citrix.com> <20230612161306.2739572-5-andrew.cooper3@citrix.com> <82ee7908-4597-433c-0aca-8c0ad22fff13@suse.com> <386058fe-e9a8-d0e1-c3a0-3f15a4585bd5@citrix.com> <8a44c577-07e4-fbc4-d402-efa581042079@citrix.com> <35ac1ede-73ed-c748-9eae-06b156145274@suse.com> <50fe5a44-2e26-461b-1676-abae665816e6@citrix.com> From: Jan Beulich In-Reply-To: <50fe5a44-2e26-461b-1676-abae665816e6@citrix.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: FR3P281CA0189.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:a4::12) To AM6PR04MB6551.eurprd04.prod.outlook.com (2603:10a6:20b:fa::20) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: AM6PR04MB6551:EE_|AS8PR04MB7783:EE_ X-MS-Office365-Filtering-Correlation-Id: 353252f1-0ba8-4cec-f5bd-08db6e62f5d9 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: JIa7MZZZcvVLJSZIHYf707Pum6bj9K32T01XReGws+XvNJ1Y4HL0UgkQUqcNqDFNw2+/6SbBTkFqT88nyS21cutZuEGDn8nVcjKu+PMKAwN4jBb4chGtK5T4zuIrlrBsLJ3qvtO2rTy4/bIOuQxhZkj7bH6IQeVxY3cjlotwpeFndWxyB1aPge78bb+t/jwyrLYHcolfcQlUgdHkIqa7sY5PhgGFV07g088969VP5CINAf5b/JUt7awIuMaHhBQej/LwzR0GRWCaYYaAIoaWnF5b4m6XFD77sA7J7ujneyQ8WfvHhOtXR8OJSxP6dL5YgYytX7O+RyTzDEgPA7eCMEPrIGRlgErHbZsxr+MYAq12Arn95+cGU0zZiTx88USfQi5Anv2dKhSGBHX/wu+t1yRwLDdBBn726hgjkczKUP+JMYTFvkjEh2980oZhWvd1HuXn7bf0Jo0PyvPc8auBgk+leBgRsOLOhoLBgQWypbqXMom4abUdn6XcFx9z/5vGxLWsZBwodYmBdIgxv9X428CpMoK8zebC1a9tv80JEKd4NdTsbhxhp9t3JDhHocK7j3aeHvm5P6QpUxGzZcpj6XMoVRcpyf0g2Jmf8K9w60/30yuV5wZOHKMzhv+e5AEeFIh3N9mWJ7inXJg7aYVzag== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM6PR04MB6551.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(366004)(136003)(376002)(346002)(39860400002)(396003)(451199021)(478600001)(31696002)(86362001)(6486002)(316002)(41300700001)(38100700002)(83380400001)(66556008)(66946007)(4326008)(6916009)(66476007)(8676002)(8936002)(31686004)(2906002)(5660300002)(53546011)(186003)(54906003)(6512007)(26005)(6506007)(2616005)(36756003)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?TDRGM1o5ZVhlUFRvQms4MmtkOEQ5OVZ6VnNVbFhTZzBaR2gyQ29WVUJHQitY?= =?utf-8?B?ZkxidlhBMVJSMTBYYVl2SFFaMzNaUnhVaDBIaCtEQk1qZEJKZHdSdTBjd1dO?= =?utf-8?B?ZzV5Yy95ZmVncXlMcWg0UThNSmJrdnUwSDZMU3A0RVFudFBVYTlZcUhxWjAy?= =?utf-8?B?bldlYWtmM2pmQVRyOTFUK0xhdTlWZ1dGVXp4M25zMmlabVNtNUREN0UxY1Zw?= =?utf-8?B?NzQyNTI1OEsrdFJPUDFrWCtkRWlua0d2eDA2MGRYbnFUanJhdzR1aVlDYVpE?= =?utf-8?B?ZjFCMkEycTA2NWl5MEdkc0pDaWlldnMxZWlMSDBnTmlFZnpVc2wwc2tuQ0Iw?= =?utf-8?B?eEdTRlhTWWZJTzA0NGI5aUUrS3d4YU5uR3d1ZXFJSUN4R2hVWHYzeHBEVjVp?= =?utf-8?B?RHc5RHRIRUZsOWViUjM4VFdtVitZeXAvNUxyNFVRbVlXNGt1SERVUGllSlRP?= =?utf-8?B?NnFjMHltUWVEcWhaTnBGNklLRXVVTkRyajh2ZnFjVnhYOU5IZmMxcE04aXlJ?= =?utf-8?B?TENiZ1ljclo2d3R0Rm1oK1hJbUk4aUp6QWw3Ymd0bCt4cXNOMFRVeER5bEZI?= =?utf-8?B?K1Y2MHgrQWNoek5hMm12TGloc2FsanUwQ2Fad2FaUkJEekhtR3F4TC9hSGNq?= =?utf-8?B?cXYyNmZERDFQUFlqM0IwZnZaejRRL25XdFNibGZBcVhGL2ZiUTRJOExJMkt2?= =?utf-8?B?ZFRMSC81NFJTK1BXRTNqamtqS1JWQXhET1l0ZzZRcXBSdVhLR3ZIbUFEVU5l?= =?utf-8?B?emVxa3RGNnJRKy9PQkVMc21nWjR1aHBjdWxlQmNJRlZTMDNZY21VNzBxVkZQ?= =?utf-8?B?OUtlUy9ta2thQkMrV1E2WG04dS9JaHovSGltNjZrMEtNRFpBYWhSdktFanBr?= =?utf-8?B?dmYzRkN1TU9IL3V5amlBYUxBNEFGZVQ1RGRRbk9oc0VDSXpBZU5QS1JYcXNI?= =?utf-8?B?S200SnRYODU3UitTeDZ4WjlRUDNnRkRnUUJQYy9Na0VYWXowL2RCaXBwRG5E?= =?utf-8?B?VGYrTGx3Skp6aUNFUWxXRC82cTRwMjF2ZkVGeTlseXowajdwOUNMSGNxUVM1?= =?utf-8?B?Mmk5WE11VFl3OXZ4bDZTZGJ0QlgwTktmak1WOFZKSGhvNnN5b3M5UnhqMUEv?= =?utf-8?B?TDhVVVJVZjgvNENQSUtRZWxlQ2s2UEgzeFgwWE52Y0YzZ3ZTdktLKytzbFla?= =?utf-8?B?eDk4a0l4T1ZPM0pQbFd6bnFvREcrMTFVSTdMK05uNy9tVUZ0ZkN5R2NmaDFn?= =?utf-8?B?aldMTkExdkV4RjZ2U0d4T3hDT2ppalJ4Y0pFcWZUZVBsU0h4MXBPSno2Tm1J?= =?utf-8?B?RFhkTU81Ykk3SWFuNStsVjlLdG1KUmFCbURVcmxUckRJaWw2SGgydmkrMkp4?= =?utf-8?B?Q3FhV2FQV3ZEbGYzdUFxQkhPajA1dUhvZk5hQmFhM3FQVGkvNXdyQ1JFSkF4?= =?utf-8?B?bjBRWVRwRUEvVkhCVXZMOGJ4RzQvbjVOaERGMGVuSzBWeGFobytMNWFUam9z?= =?utf-8?B?SFZLRSs0NEpUNVdSL1VsdG4rVE5xSklHc2xUN0h3KzNsWjhCZ3BMZ0ZNa1V0?= =?utf-8?B?Q3JXc1pycFRBamlLc25xL2U4RFlCeVhzZ2pJMmdPVDRSN2NHZ1I0ellBOXBl?= =?utf-8?B?aW5CTXhlNzk5d09haVNJU2JjQjVUOE0zUVR1N0MrQi9tdXpHWGpGUmQwQnJ5?= =?utf-8?B?TWlROHhMV0xHWmhGUzFITHJNU3NqYk1JUEpQeGZ0RWUvWmc1NmFQQ2NMQ3p6?= =?utf-8?B?RHJlMHV4dEdkb08xa1dYaTJiWEpFQ0NESHlBbWJyUkd2Mi9lcVRoOGNMNTRo?= =?utf-8?B?R0E3SlVNZmloQXdCRGRqQzdQWC80ZVMxRjNwdlZKdExVeUV5bThjcU52NlE1?= =?utf-8?B?aHpHbWhQSUsyejcxWDRMd3NQREF0K3Z5TlNjTCt3ZG1URFVrOXd6REZpSGdx?= =?utf-8?B?VlhZRk8vK3ZWVXQ0WTczTEJjaVlyajllV1pmbGY4cElpRCtlRmpnL0QrSGM4?= =?utf-8?B?d0hmNThrWjgwWGxUUHVjM3prMUlvWkVNRXpIQmlpbXNXalBrWk14VThoODVY?= =?utf-8?B?c0VWUk5oTC9aRHVrRTNaMjNEb25LN1FWU2xlc0pyd2IzNGNzMHlTOEFUaVNF?= =?utf-8?Q?Jj02YoS1hlouu4gRNGQcddGRA?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 353252f1-0ba8-4cec-f5bd-08db6e62f5d9 X-MS-Exchange-CrossTenant-AuthSource: AM6PR04MB6551.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Jun 2023 12:12:31.5158 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: PVPO49rd/qmQ0UCD8Wj58BV1htYPuHlT8wKSE4lkXKMulbL/gL6v6Mn6lXF37+ZhH2TRQWxN+LxiGvv4/7jkzA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB7783 On 15.06.2023 20:17, Andrew Cooper wrote: > On 15/06/2023 1:13 pm, Jan Beulich wrote: >> On 15.06.2023 12:41, Andrew Cooper wrote: >>> On 15/06/2023 9:30 am, Jan Beulich wrote: >>>> On 14.06.2023 20:12, Andrew Cooper wrote: >>>>> On 13/06/2023 10:59 am, Jan Beulich wrote: >>>>>> On 12.06.2023 18:13, Andrew Cooper wrote: >>>>>>> The RSBA bit, "RSB Alternative", means that the RSB may use alternative >>>>>>> predictors when empty. From a practical point of view, this mean "Retpoline >>>>>>> not safe". >>>>>>> >>>>>>> Enhanced IBRS (officially IBRS_ALL in Intel's docs, previously IBRS_ATT) is a >>>>>>> statement that IBRS is implemented in hardware (as opposed to the form >>>>>>> retrofitted to existing CPUs in microcode). >>>>>>> >>>>>>> The RRSBA bit, "Restricted-RSBA", is a combination of RSBA, and the eIBRS >>>>>>> property that predictions are tagged with the mode in which they were learnt. >>>>>>> Therefore, it means "when eIBRS is active, the RSB may fall back to >>>>>>> alternative predictors but restricted to the current prediction mode". As >>>>>>> such, it's stronger statement than RSBA, but still means "Retpoline not safe". >>>>>>> >>>>>>> CPUs are not expected to enumerate both RSBA and RRSBA. >>>>>>> >>>>>>> Add feature dependencies for EIBRS and RRSBA. While technically they're not >>>>>>> linked, absolutely nothing good can come of letting the guest see RRSBA >>>>>>> without EIBRS. Nor a guest seeing EIBRS without IBRSB. Furthermore, we use >>>>>>> this dependency to simplify the max derivation logic. >>>>>>> >>>>>>> The max policies gets RSBA and RRSBA unconditionally set (with the EIBRS >>>>>>> dependency maybe hiding RRSBA). We can run any VM, even if it has been told >>>>>>> "somewhere you might run, Retpoline isn't safe". >>>>>>> >>>>>>> The default policies are more complicated. A guest shouldn't see both bits, >>>>>>> but it needs to see one if the current host suffers from any form of RSBA, and >>>>>>> which bit it needs to see depends on whether eIBRS is visible or not. >>>>>>> Therefore, the calculation must be performed after sanitise_featureset(). >>>>>>> >>>>>>> Signed-off-by: Andrew Cooper >>>>>>> --- >>>>>>> CC: Jan Beulich >>>>>>> CC: Roger Pau Monné >>>>>>> CC: Wei Liu >>>>>>> >>>>>>> v3: >>>>>>> * Minor commit message adjustment. >>>>>>> * Drop changes to recalculate_cpuid_policy(). Deferred to a later series. >>>>>> With this dropped, with the title not saying "max/default", and with >>>>>> the description also not mentioning "live" policies at all, I don't >>>>>> think this patch is self-consistent (meaning in particular: leaving >>>>>> aside the fact that there's no way right now to requests e.g. both >>>>>> RSBA and RRSBA for a guest; aiui it is possible for Dom0). >>>>>> >>>>>> As you may imagine I'm also curious why you decided to drop this. >>>>> Because when I tried doing levelling in Xapi, I remembered why I did it >>>>> the way I did in v1, and why the v2 way was wrong. >>>>> >>>>> Xen cannot safely edit what the toolstack provides, so must not.  >>>> And this is the part I don't understand: Why can't we correct the >>>> (EIBRS,RSBA,RRSBA) tuple to a combination that is "legal"? At least >>>> as long as ... >>>> >>>>> Instead, failing the set_policy() call is an option, and is what we want >>>>> to do longterm, >>>> ... we aren't there. >>>> >>>>> but also happens to be wrong too in this case. An admin >>>>> may know that a VM isn't using retpoline, and may need to migrate it >>>>> anyway for a number of reasons, so any safety checks need to be in the >>>>> toolstack, and need to be overrideable with something like --force. >>>> Possibly leading to an inconsistent policy exposed to a guest? I >>>> guess this may be the only option when we can't really resolve an >>>> ambiguity, but that isn't the case here, is it? >>> Wrong.  Xen does not have any knowledge of other hosts the VM might >>> migrate to. >>> >>> So while Xen can spot problem combinations *on this host*, which way to >>> correct the problem combination depends on where the VM might migrate to. >> I actually view this as two different levels: With a flawed policy, the >> guest is liable to not work correctly at all. No point thinking about >> it being able to migrate. With a fixed up policy it may fail to migrate, >> but it'll at least work otherwise. > > If you get RSBA and/or RRSBA wrong, nothing is going to malfunction in > the guest, even if you migrate it. > > The consequence of getting RSBA and/or RRSBA wrong is the guest *might* > think retpoline is safe to use, and *might* end up vulnerable to > speculative attacks on this or other hardware. Isn't that some sort of "malfunction"? > And the admin might know that they overrode the default settings and > forced the use of some other protection mechanism, so the guest is in > fact safe despite having wrong RSBA/RRSBA settings. But then the guest would also be safe with adjusted settings, wouldn't it? > I don't know how to put it any more plainly.  Xen *does not* have the > information necessary to make a safety judgement in this matter.  Only > the toolstack (as a proxy for the admin) has the necessary information. I'm not looking at it as Xen making things safe by adjusting bogus settings. I'm merely looking at it as not letting a guest run that way. For the safety aspect I agree it needs a wider view than Xen has. Anyway, I don't think either of us is going to convince the other of there being only one way of looking at things vs there being at least two possible ways, so in order to allow things to progress Acked-by: Jan Beulich Jan From xen-devel-bounces@lists.xenproject.org Fri Jun 16 12:33:52 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 16 Jun 2023 12:33:52 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550142.859044 (Exim 4.92) (envelope-from ) id 1qA8dz-0004Bj-00; Fri, 16 Jun 2023 12:33:35 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550142.859044; Fri, 16 Jun 2023 12:33:34 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qA8dy-0004Bc-T3; Fri, 16 Jun 2023 12:33:34 +0000 Received: by outflank-mailman (input) for mailman id 550142; Fri, 16 Jun 2023 12:33:33 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qA8dx-0004BW-RW for xen-devel@lists.xenproject.org; Fri, 16 Jun 2023 12:33:33 +0000 Received: from EUR03-AM7-obe.outbound.protection.outlook.com (mail-am7eur03on2061f.outbound.protection.outlook.com [2a01:111:f400:7eaf::61f]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 0062b1d9-0c42-11ee-b232-6b7b168915f2; Fri, 16 Jun 2023 14:33:31 +0200 (CEST) Received: from AM6PR04MB6551.eurprd04.prod.outlook.com (2603:10a6:20b:fa::20) by PAXPR04MB9220.eurprd04.prod.outlook.com (2603:10a6:102:228::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.25; Fri, 16 Jun 2023 12:33:29 +0000 Received: from AM6PR04MB6551.eurprd04.prod.outlook.com ([fe80::d5cd:a63d:6ce1:2be3]) by AM6PR04MB6551.eurprd04.prod.outlook.com ([fe80::d5cd:a63d:6ce1:2be3%2]) with mapi id 15.20.6477.028; Fri, 16 Jun 2023 12:33:29 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 0062b1d9-0c42-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=iJky29xXbm48AD34wVFIGa1G8twKvpWcUC9W7lmDDt5dNrqJE0SqsPOHTxBBeIxJsaiDXf4+PSDavy56zE3qFTdofmFvhxfYRPOqwB0lvXgXaFebL1JHQeFGa9t2jvnt1Ajli6kdBYJq2OVEObM93YZHzfb7nfVyLuyQ1llOhBqXXenfYEiqh0AQYCmFj5/SXmMucmjlrDF0kNzb1ONDC42cMWASynGH5Jpvb6oUiZFhLETnqH22s9vUZlMvXWNHs6hS9UswV1//iztkdBz4RfgpSZJ4yfCYs4vvBuIewF8v4mUP6m7gxqGdw7uOVP8DItZE0VGY4yrti5anIoI48w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=klBzpCbgSPj0ni89aaVPSPANxPpV6E2Ix9Zp/2rfEHc=; b=WxqlEgbMnBFtpamqh5UY9IrrHKVwVHuCI+LNIBMHFYKDHfXAFTo3Hm4DvjtPaVoPgkWF+b3q2xFV+5HRTqA6XIvVEKtX/nNfUyO+zwgF7jneoeF21pVRMabEvzHNi51Ki3R6FAp7jkZa0g5ywB8uDABMDUAbSn8vwr0Bcqmlg4vNb80WJZuvkhTaEBMnmAAV/26e8zypUwOPDU2FoMDNPZ10tYcbO4PllHWMefp6L3eYdQf2DpQJ/SxVbarYqur6KeIqV99QCI5OrTV534GqeQFcq+DqYx7fh739VO8044JxgB9grVfoFaU5okfFCBIwFYcdCCfX8ytZTMvvo5WEyw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=klBzpCbgSPj0ni89aaVPSPANxPpV6E2Ix9Zp/2rfEHc=; b=YdrN1j15L8yRomn8Nyfodmr4SYL+mRjRZm2Lz5gW1uUGcFL70S5RxhHxaqS+ilUEPgI4N18riVYSEz2+0Qd6j/ICEf2B4GfK4P9YZzFEpLAvtLe8lzaNDPLyKdA9t0cXU/ZLq2aGPpJX1ZElzBTwOFLX/k5cwhDNzFqlq39jOQgy5xq4K1R2lbuh7vPIZP1yGsSadFLlnbcuY3aoNZ2YXPMibxRg19gQMS/pooq8MHoVrguINJnBFLfEj5c/oSSoNcrB3iUEH0vSGJYNPyV6gKc0gL1ON/tM6/rfIH9/3ySXSx7jUPAQWmv8yOoCZOPquOFd5tt3juDgsqN7L/QitQ== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <51f4fa1f-065b-2e3f-97cd-fb91737150e8@suse.com> Date: Fri, 16 Jun 2023 14:33:27 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Content-Language: en-US To: "xen-devel@lists.xenproject.org" Cc: "H.J. Lu" From: Jan Beulich Subject: [PATCH] x86: fix expansion of %XV Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR0P281CA0121.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:97::19) To AM6PR04MB6551.eurprd04.prod.outlook.com (2603:10a6:20b:fa::20) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: AM6PR04MB6551:EE_|PAXPR04MB9220:EE_ X-MS-Office365-Filtering-Correlation-Id: 58f22c31-bea7-4ee1-63df-08db6e65e3ca X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 48XYupuz20affJ2iFud2ByNvpDNFkfmSf1v5r3SGsSghB2cn9KOMuE3IwXc0anFf4latctDUEKBGP7UyiaMu4mRcMrW39Li67UTA9J7Mrixz6Xwl0DWnUTCQV5H3EF65qibFVYGr2osY7kr3o/TXQTNyTpjtw8vW4+uLYNPwrf23Mbfdqu0mzuHZdAxjwm+prmHr4ABueJsL+YGYYeHdVBzkm3Ob8akDGxkXwaKAb3Npow4vqoMNi3xm4uiiYvDFzfDJ2efJKqTHgzVM++V10TwhmjR+3n2fClt4fuWwU8tIPFIahNgqgqnPUZyujAw6seBFpfHfSRVPlkr3jrk3PsBN6mJyIvDQQu3A0ZCfq4zdyjiSwqdsDhvJpXbATtnEG1Et2CFHIPpMhs6VUD1RPeElYGYnbPqUXRXDkunfC9JyuK6Up8OKcoMb1+YI4MnQrJicIpaSXguHU+x8SIokpkBU7Ci/qXHMkADlADK3oMdWMRG8hnkuhqxHontGStibVa9ZkfZMAzRmP7NagkwrD/VBqXY8rBkuStQqCwDoF41yiSfEaqCnIS8Re7Pn4oxfMj1WDDe2o8HpUdIMlDZaz14VijRa/aCMB4BxPTZGCj3g4ar2LhpIHtxzqNsE3J7POQxPGaPPcPn0iQRrCtJISg== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM6PR04MB6551.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(366004)(376002)(346002)(396003)(39860400002)(136003)(451199021)(31686004)(41300700001)(86362001)(31696002)(6916009)(66946007)(66556008)(66476007)(8676002)(6486002)(8936002)(316002)(36756003)(4326008)(478600001)(6512007)(26005)(5660300002)(6506007)(2906002)(4744005)(186003)(38100700002)(2616005)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?NGdvR0NERDU1dEo3YktRUG5jeVd2Z0dOMHc5Q282MngrYU1zelFQL0kzV013?= =?utf-8?B?d1VXSmxkYTVxemdwcjJ1VXU0c084MHg4ZDBxaUFlQ0wwLzJLdElaZExTZXZp?= =?utf-8?B?dUN0dURlWitIYkNWbWxDZE5qbWZHRXh1NSt3azRvaU1ZZVVxUFpkZTBEV3BL?= =?utf-8?B?UEpERGhoVlNYY1ZMZHQwR1dISWdxcTU0dzRYMGtNT2FxWm8xejVYR3Fqa1Zu?= =?utf-8?B?TUFMZjhsS1ViQW01d3c5U1VBVzNoVWxYRUN5Q2JCa3hSSDhPcHVIK3VjMXZa?= =?utf-8?B?enRmeXZmK1FqY1FmUXFzQzB3MlNkdElVMzE1czJZbis4czAwQ0tkNGZNbXJO?= =?utf-8?B?NGw5OC9iNGIrVzY0SkYzQk1rOVlvdnJadWlJdTNsa2h5aWNycTNxbWxSRTNJ?= =?utf-8?B?TGM4Q3JES2hVU3k5Q2JlRkRPSzN4SlpuYVpyNHhPc2lUazdXZnFQV3cyend4?= =?utf-8?B?dFVnNzBSNnRwaFgzcFkzV2pFcGx1a1lOcDdOQitkNWI2KzN6bFZCQlZpVEJB?= =?utf-8?B?WkZKMGdRUDRIRFE4VzR6V3pYNVE2VVBqSEFUTXhmUFl3QnQzNG1iU3F4WUU0?= =?utf-8?B?bnJyYjlzdE51QjBwWlZjRCtRazIwNHNuSmI1blZyK1Frc2lnRDJpZjY5UFk0?= =?utf-8?B?L09LQlEzZEV3WFJiTlVFWEpQbHVKNnBmUHQ3NXROSSsyUVpPTlJLUGt3a3hW?= =?utf-8?B?c1U2WW5CTm1hRDJsK1NYbTR4Rm1GemRlQXVpVE5ScU1CSXVPc2wvWDhoQk5x?= =?utf-8?B?WENGcFlHdGhkZlZGL3p2S2lwMlBMTUNiSHNuZ1V2dUtDSVBjQS9TTDR6STB1?= =?utf-8?B?dDZxWGQ0REhCUjh0Wmt5RjFYbzh2bWI3YkVJMVZHRSt2OFo5MDE2bk9uUDJu?= =?utf-8?B?c2R4K1paRUdxZVRxQVE5WnBTbWN2QlhUZ3JNSjlaaFp6cjZOeUk4WFpHRGY4?= =?utf-8?B?dlRta0xTdE1HK1lpZTdieDQrK2F2UXJ4dU1PMEk2dTM4QnhmRGFKMDNLN3ZH?= =?utf-8?B?WGx1aVJHS1BQRFRDbG9yNlYxQldVVS9lUXc4T2dVRVoxYUJSVXBWV0hSaGlJ?= =?utf-8?B?VElLQnB6Vk01Ymw2WGx4UjBoS250M3BDbGZIeitXN2swSTJqcEQwNUQxR05X?= =?utf-8?B?dG5Ra1hwYTVOQXpoSGIyMXFnaFRXSWhsSFVWdFpkUXJTUHJxcWp6bVpQeDEz?= =?utf-8?B?SncvR1dpV3lhWGxSeGwxb1hxTXl4bUNNM3BMeVRtS3pWWDMyL01yMCsycDZu?= =?utf-8?B?UlRGc3I3UVVJNS9QSExZYTVlbVBkRHZOTTlxVEZwRENiNnlkZkpFUWY3YnpU?= =?utf-8?B?WXNZek1KbFJHTEhha2lmV3pydEFTbW55bXVST1M0M3p0Q1ArUVk4TDMzYkEr?= =?utf-8?B?L05vSG96RTNTZDRHRVdWaXRmRHZlam5DMWlQQ055bWJ2YW9qSlh3SmxORkRu?= =?utf-8?B?RjM3V0ZjL0ZTVEpNWGQ4VzV5Y3BmMkZGQjA1d2JIMGR6Q2NLVEtJTkxtckMr?= =?utf-8?B?TTdCZnBsemd5RzVUK1Bic2dYNHRDTlBMSHBRUlFuMHhsckg2c0x1VzcvNkVk?= =?utf-8?B?T2lKT3psd2pBZWExWEVITHAzejNPQmVsZkd6L0dKTnB4RG5DdThDdWdWWEdY?= =?utf-8?B?YzF3N214OVdjdHhJdUwvWnFEL1pGY0pJMGx5dXVXU3hyZ2R2ZzJBMTZxeTJy?= =?utf-8?B?ekdndDY2V3hJbDhNWEdaYm5nL1hIa2d1K2l3UHp2ZXlrU1Z4SzJFalNFODBI?= =?utf-8?B?cUptcFhZeUl3QUp1dll5M28xSjBxODY2dFQ0dVFhVWlPb2I4RG9kcSt6bmVE?= =?utf-8?B?Vm95OUZyM0dkbS9waEx0dVF1c05OR2F1WXVMSEdMSXFGNlF2YkE0WUNrY1Ir?= =?utf-8?B?eHYwK1JxM1Z0YWpudTNIckhvdHczcUtyQVlrZm9XUk5yYVNCd1pPNDlKSUN1?= =?utf-8?B?eUs5cnpOb2RueGJsbDc3c3l1a240MnNYZjhWQTQxUWVYUStleGlsUjZGbjRB?= =?utf-8?B?RW5JNEFJU1RMdnY2enNXRysyV0NsYThBQnRxOFh1cjc5Q0dFKy9oQVEvM1JP?= =?utf-8?B?NHdBZjhyK3FTbU9yeXU3VmVFQjFqTWdTRll1R2ZiUHZkZVdZckZheGJUbzRw?= =?utf-8?Q?xT7/Bo7CyVGKeMt97IMRAJZJO?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 58f22c31-bea7-4ee1-63df-08db6e65e3ca X-MS-Exchange-CrossTenant-AuthSource: AM6PR04MB6551.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Jun 2023 12:33:29.6458 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: X8fokaxyDP7IDqRwXLzy7XCyghjOX0XlVDrDXKAvxqH1e6A/AV1GCDWAErL4iLa9vdsWLXe1Y6p3XPjoG6yOcg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB9220 Only %LV should continue on to S handling; avoid emitting a stray 'l' (typically) in suffix-always mode. --- a/opcodes/i386-dis.c +++ b/opcodes/i386-dis.c @@ -11067,19 +11067,20 @@ putop (instr_info *ins, const char *in_t *ins->obufp++ = ' '; break; case 'L': - if (!(ins->rex & REX_W)) - break; - *ins->obufp++ = 'a'; - *ins->obufp++ = 'b'; - *ins->obufp++ = 's'; - break; + if (ins->rex & REX_W) + { + *ins->obufp++ = 'a'; + *ins->obufp++ = 'b'; + *ins->obufp++ = 's'; + } + goto case_S; default: abort (); } } else abort (); - goto case_S; + break; case 'W': if (l == 0) { From xen-devel-bounces@lists.xenproject.org Fri Jun 16 12:35:16 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 16 Jun 2023 12:35:16 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550147.859054 (Exim 4.92) (envelope-from ) id 1qA8fR-0004hP-Ah; Fri, 16 Jun 2023 12:35:05 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550147.859054; Fri, 16 Jun 2023 12:35:05 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qA8fR-0004hI-7H; Fri, 16 Jun 2023 12:35:05 +0000 Received: by outflank-mailman (input) for mailman id 550147; Fri, 16 Jun 2023 12:35:04 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qA8fQ-0004h6-56 for xen-devel@lists.xenproject.org; Fri, 16 Jun 2023 12:35:04 +0000 Received: from EUR05-AM6-obe.outbound.protection.outlook.com (mail-am6eur05on2060e.outbound.protection.outlook.com [2a01:111:f400:7e1b::60e]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 377bece0-0c42-11ee-b232-6b7b168915f2; Fri, 16 Jun 2023 14:35:03 +0200 (CEST) Received: from AM6PR04MB6551.eurprd04.prod.outlook.com (2603:10a6:20b:fa::20) by PAXPR04MB9220.eurprd04.prod.outlook.com (2603:10a6:102:228::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.25; Fri, 16 Jun 2023 12:35:02 +0000 Received: from AM6PR04MB6551.eurprd04.prod.outlook.com ([fe80::d5cd:a63d:6ce1:2be3]) by AM6PR04MB6551.eurprd04.prod.outlook.com ([fe80::d5cd:a63d:6ce1:2be3%2]) with mapi id 15.20.6477.028; Fri, 16 Jun 2023 12:35:01 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 377bece0-0c42-11ee-b232-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=GWFNzt4C6uQZao+dVxgSLx2oIl/CaiuxkV4aSSlsGCzXaLJbAH2+5q8PEk5qL35orHdNkBQhLtJ02enMuax9STxvYUgnDzmq4Sk8hafAJHxMfHAf2DifBUyjm25AzYDk8fHNN8XfTdePmiOaEijjTi9EYhDY4kgP+fX1Kk1AiAdba5UB1IBgPHTPxxa17XA4IQXxEDnya1ftijGfcsUaY8d1Oo1lsfSxbytT75scc4AK1+fZjbOzDzlHVl2itRDBemQ7jCJAqvlYm/6kbe4HXJUjw31qXBPD286JxSclJX436nwIuboDRDQS01mX5ye5mAcoGSmbzNhiIUpO7b+Lsw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=hfS3vE2T1VLNIhD8fOCheuPBqsBTMf8f0zk7Gx5Sr08=; b=FaBKM9bWP8k0GTLWgFFFM9T2NTl41kqp6voPY+BKQ2yAABRMgmu5B+O9raPYiuObueOxffeRq2DRKYVVv6sPOaP/PKs/KC48X+fY8R3PFapdXgFR1bpGjh/az/Cm+l7luFI7SCavi7+DYWH76k0SvI19qRholGelX28gTyJvWMFjqtltVvXp1vZ1zAIifoxc48NxwxzgmllnztZ2+3BXc6LDOh6dGbiU6t+s1k9DlRGf9LR/9EZHsnh5bGfg1A8Y71f5CPLpS4FvebkeRhXLsccqmi5sU3NaNlhuxkpsilJn5v9nIQl+VvRVV/6pQgP6MkJ396HJZ+EM6Fy1iggBPQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=hfS3vE2T1VLNIhD8fOCheuPBqsBTMf8f0zk7Gx5Sr08=; b=KRLTcCdV2Gra43ueyqqY8LdaGvcRmR81QbylViHfVgA/SRyPrGSKxMBNWmVOPa33q4jq2QcCiObTHwSbFM+OjNgWnnpyvUdcDHjtAZ07Wj+F9z4OnvwSNnMb1oyZCjknEH2kJJF+DzWv0Xhv/W9mWNPaBo2Lghy6cEVL1GKbp2VlLmVJk4presxAnCNriGjCghHrFpulw/RQwgUtyBjetDYLDQOPqLRWA9dtgcAAPBbtgZaPgkj2tO0jHRMZRKx0yIe3/c857o+Pf7IX3JkCw3z4+2jSeM9ubiliL6e3BkDb3AN7zsOjnFODThoQgu/K/SiW/QRB+Dm1r1eiHynRPQ== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: Date: Fri, 16 Jun 2023 14:35:00 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH] x86: fix expansion of %XV Content-Language: en-US From: Jan Beulich To: "xen-devel@lists.xenproject.org" References: <51f4fa1f-065b-2e3f-97cd-fb91737150e8@suse.com> In-Reply-To: <51f4fa1f-065b-2e3f-97cd-fb91737150e8@suse.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR3P281CA0141.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:95::14) To AM6PR04MB6551.eurprd04.prod.outlook.com (2603:10a6:20b:fa::20) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: AM6PR04MB6551:EE_|PAXPR04MB9220:EE_ X-MS-Office365-Filtering-Correlation-Id: 11303e2c-3e98-45ce-e9a6-08db6e661acc X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: kMLA/ZzvWIra6tGRWeKVu7Y1akSFvDdSKk5xK1Rfkyn6DKLQSZrNJ2STedh0XYI1s43DzV6W80UfOEzbz9WctN6O8PZrOboG5J92CxtvS2hc3dwdxuGgojG9ACRpZxlqkYY0yqaX80uoPO5oTnPa/1mW0zdZ9DD4pj8SCxZ2Nq3u2ps7QHdusDi1OC4nTwZnvWiHPdJUuCiDSoBxPPU0wa8LTvDMCPS2t/BLXJB5kgS/dpKGwQCYxmsiz1ojLniegQMSHlZnhExD/c3SvvuGIXZFrFmU/CtSDTsmgJcGrLv1I0epqw1FdZ2H80+4aTtF1JovEh9ldOuxDXPd2+gAhvd9Aq1osRMAZosYGvE0zju/ydSJgeiOfnwfJt6TEfWwu2hWB/+gXbM9rnGsYLsCDvCnavPjdmBdb9/GU9PQhgZ3bjRfKPnqwwv/xwJnVsET5oawhwRPzEFNEUWtxDB7EfVyPix31lNB4hsUWdixg3lvcLLxkHSOMMk3UYuSaZSboSLDHbWXc1MHvQmr2PKUo3y7QGRAHPoijQKGVVXRYQ7mC+P5tXSXJ4IgPlUU1DJTYglGz21IxfMs37TW/LUq2gPIjLIRSGU6tPPRZubBSHLYOSQm65ZJKfsXI+g4OXU4mSVCKf79geXb789lhDdm2g== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM6PR04MB6551.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(366004)(376002)(346002)(396003)(39860400002)(136003)(451199021)(31686004)(41300700001)(86362001)(31696002)(6916009)(66946007)(66556008)(66476007)(8676002)(6486002)(8936002)(558084003)(316002)(36756003)(53546011)(478600001)(6512007)(26005)(5660300002)(6506007)(2906002)(186003)(38100700002)(2616005)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?c0hyL1BydFhtQnRtdkFoSWQxcWFQa2JUTC9CbXZna2FkQzNZOEtFVFJGVWhi?= =?utf-8?B?MVl2K25BYi90UWpQbDVnR01WSWpRS09PbldTUGQwbFJLamFFZUx1VkN0eXJE?= =?utf-8?B?YkVIY1dPYTdZOUZnRFk0UWE5dDY4SWNQMkEzNGZrM0VMeW1FV2ZWcTRqOWc0?= =?utf-8?B?NTlaaUx3UHVnTFA5TFdEL1VLZlRWZE91QjNWWThTNnBGOUxiS0QyNVBUMXE1?= =?utf-8?B?TnNjMmtyZ2xrbE00cmhPUWJFYzNjNlFzYUswS3k3RXJNYkxvZ21RQ01ycVNj?= =?utf-8?B?TE02QVFtYzc4RVV3ckhFa1N4UmtMNnA3d1RNUDJyS2I4ckdmR29tMDBJRDF2?= =?utf-8?B?RFBSYUhsMllrUGZJNzFyTjNmTEhRQkZ0TThERnQ3Ny9Wd2YwNWtld1pwdGFw?= =?utf-8?B?VjBNSDc4MFVtWnJLVC9NOWtMeVlFT0RTa0lnVE84eGRvM2ZPbTN1QmtWWkFh?= =?utf-8?B?Y2lrbUVPZG90V1N6b0RNdWVmR0NtbTVTOHo2dGR3bVRNbnF0cHY1dU1EaWdt?= =?utf-8?B?WUs2SGg5MWkzSllrZENPcmZsMUhJa1RlQlIzeEc2bXJTVVNsWUQ5TW1wNXdh?= =?utf-8?B?YWpUejUyK0JNdFk0S1VOR1VIRnhmTTVrZ0c5SnJFcjZ4VjRvM05LVHhoTDEr?= =?utf-8?B?LzlLYWh4NjJZSDFSWXlzakN4TElyN3BBckhTUDNZRFpPQjhQbG1XSkM0ZVJo?= =?utf-8?B?cVozZndsaGxCYXcwQ1RiODBNdUlrUkZEUGRMVmxuTnBEUURsbS94U3crVmR5?= =?utf-8?B?YkI1cUM5VFJOQU5jZVZ5cXI1SGtrY2UyQnA1M1VaMXk1YnN1WEZaMWlrV1Qz?= =?utf-8?B?cElBbmU5WkFxSGFvWDhmWUdzaEZOTmVNcVpwWDl2ZVNkWEM0VnNlRFdhc1lE?= =?utf-8?B?anByTkF5dHBlQ1JpeFR1QzNxSUh1OStSWjUzOEtnYzExTUt4UEs0YlI2OERT?= =?utf-8?B?STBjQ3Nsckp2M2pOOTNaUG4zUzVLV3huRVJ2blArQ2pHSkQ3VmZCMnhlY1kx?= =?utf-8?B?VUxKeWMyNEwxMGRQWjVMcDJkNzc4STBwZExlQlZraDJ0VDQzMnBoVXpUbDdD?= =?utf-8?B?cVV6cW5kYmx4V2EwZ1drcjMzWTFzU0pJT3kzL1pLZktCZjFXNHl6QllBZGta?= =?utf-8?B?dUpLQzFVbXc2cFF5VTFWTW9xdGpxNlFTeTBnK2FQN1VueEhOZDhBWXRwZDU2?= =?utf-8?B?UmV1N01wcHc2L1J6Y2hZMElwN1J0b2RKVDR6alZDWHBLQ2s4NjlhRG8wYjZ5?= =?utf-8?B?NXB0TUxUb1AvUUxiU2RUUSs0UitnRmZNSGROazdKZ0c1VnpiS1M5cGdqNFd3?= =?utf-8?B?NDdqUTZVTElBVEZKN3pyYzRTSDl5b1R6QkxOYldLSndZcko5VGltMG5TWVhQ?= =?utf-8?B?VUJBcW9OajZsckEyS0pxZ2NmZzBFeW50OHhwYjhZblpjTkg0ZnpMcGM3S3NF?= =?utf-8?B?TVNrbnR4VWM5clpSdjR3MGpaQW9UeVVkY0cwbHRFYU5IOHVadHB2L0s0SGtp?= =?utf-8?B?QUY4dER2UTZ0cWx1WXdGZElVSzgveGRWTTkyZjVhTTViQ0hFSlIrVVlNVE45?= =?utf-8?B?c0pmWHpNd3kxU1lWUXVpOW5iOE1WbEVRWmI5ZDJpK0Z5SUN1cU41Z1dudzZD?= =?utf-8?B?T0NkeDJiQnVxZGR0OHJBdDJDRXlmbnBGaHRkaE5rVno2U0EwL0ZEU25hUlkw?= =?utf-8?B?RXhORE1iZVliOWd2aHp5VUlYL291eFg1YkJDOUhIbkwzU1JUbDZqRmx6a2VW?= =?utf-8?B?d25JdXNsVlRreHg5dXJERTJhb1JTN3VUQ0RjMHZ3NmU5RG8yMC9ZYUIydGwz?= =?utf-8?B?cXltKzdnSjVhV1h1bkdBVGFpZzRoZnpNQ3hoMHE4aFI3ZU52cTB4a3U2a09K?= =?utf-8?B?b3o5U2RXNzI1TDRscUVTTWJtV2xISVM5clpoamswZDNoV1psMDhJYUl6TUx3?= =?utf-8?B?b0xocUJSV0VTb2pTRWJQb0krRnBDK2pNVFYzbzFBU2R0cVFWWGhuT2Q5Zkt5?= =?utf-8?B?Z28zQmhyR2Z0ZmZyL0l1c0Q5VFllVW5ZTVVNNEpGK09mVnNRL0loL3hqYzBw?= =?utf-8?B?bGcyUXZ1Tndmb29teGYvbG83OUhHam1BR2hILzFuSWVIeVlKZ1A0QjZwd1dh?= =?utf-8?Q?lQbDg0/YpcwD2UpbqHCwA7umw?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 11303e2c-3e98-45ce-e9a6-08db6e661acc X-MS-Exchange-CrossTenant-AuthSource: AM6PR04MB6551.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Jun 2023 12:35:01.9446 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: yYMqENuIlrSzcaH/XqbVP/MXMoqDuI9IAEPb1DkyMblEcrLi/ZgmDPk7ciP104IpEglZ0wX2NPOcquHbTxr3Xw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB9220 On 16.06.2023 14:33, Jan Beulich wrote: > Only %LV should continue on to S handling; avoid emitting a stray 'l' > (typically) in suffix-always mode. Oops, I'm sorry, confusion of mailing lists. Jan From xen-devel-bounces@lists.xenproject.org Fri Jun 16 12:38:47 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 16 Jun 2023 12:38:47 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550152.859064 (Exim 4.92) (envelope-from ) id 1qA8ip-0005Ny-U7; Fri, 16 Jun 2023 12:38:35 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550152.859064; Fri, 16 Jun 2023 12:38:35 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qA8ip-0005Nr-Qy; Fri, 16 Jun 2023 12:38:35 +0000 Received: by outflank-mailman (input) for mailman id 550152; Fri, 16 Jun 2023 12:38:35 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qA8ip-0005Nl-2T for xen-devel@lists.xenproject.org; Fri, 16 Jun 2023 12:38:35 +0000 Received: from NAM11-DM6-obe.outbound.protection.outlook.com (mail-dm6nam11on20609.outbound.protection.outlook.com [2a01:111:f400:7eaa::609]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id b38b66b5-0c42-11ee-8611-37d641c3527e; Fri, 16 Jun 2023 14:38:32 +0200 (CEST) Received: from LV2PR12MB5869.namprd12.prod.outlook.com (2603:10b6:408:176::16) by IA0PR12MB7577.namprd12.prod.outlook.com (2603:10b6:208:43e::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.25; Fri, 16 Jun 2023 12:38:28 +0000 Received: from LV2PR12MB5869.namprd12.prod.outlook.com ([fe80::f7a7:a561:87e9:5fab]) by LV2PR12MB5869.namprd12.prod.outlook.com ([fe80::f7a7:a561:87e9:5fab%7]) with mapi id 15.20.6477.037; Fri, 16 Jun 2023 12:38:28 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: b38b66b5-0c42-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=PbEipcviY9zGC0ab2wKX0TynH5hnPwh7Zzgp297OD8mpBKjqEAQevQ7v7R7ySMPRWJ2YkEGs+oWogWO8kjser9lsyVrFbIO5/xB9VFw4Vmr3rT36GwHAQgbmmg8P0I03kL4xjA9/5/dw3ikiHi0rB2ZORSfZRWdDFyyQDvXce/5SDxmRN82ApjEw61jvy41ZkP5KAONThUOI6udozUn6pMgjIOz5f78j1ya+R7H8EPQPQYol2ICFESylNYVtun7I7794EMoqUvyrVZhWkGf2af1IdYM4EsgeDVQMiJ55WNO71a+lp8J5WjdxZsA9Js3XN959l14Tr9Hz/aZTp/nKnA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=RBR3YGss3cI0UzYEflUIczDUB09k7UkNH7V/zqmf6Yg=; b=cjWEL+XYktzuLL44i0EyitI6dfUhZOf77T+tZ860X+6amPwhF2u7r08Mo/2teW589MdkU57ssBm+N5YoGr61g/+90C0HkPylyOOSIUsmOcc2iPBOoMOO1ep4sEs5opNKm/HGP39vu92XeeGe5s8+KvTUiNJzLxAfspku9QsUdoLlb3WnWIbHsWtDBQgIOx4kKuTawJKdUpeXHCX+BbUGeVAiBszmxBB6MYtTWP/scuxElJMqjW8Wrx5p7gzQsyvzPS7Uc+f8eXr6wbIHlNgLdq/s8wxpTO/Jpw0erqhRMIJ4izGwlAlG/rYtV+kUuE6A82mNNKLAjJyQdllzrl9rqw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nvidia.com; dmarc=pass action=none header.from=nvidia.com; dkim=pass header.d=nvidia.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Nvidia.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=RBR3YGss3cI0UzYEflUIczDUB09k7UkNH7V/zqmf6Yg=; b=ceBbog0E+AeI1CoNtHw0AldT8zR8BRFnDlIuDqAN3xf70U9Ys3W2Pf7Ii+9xhaSlCUzUhSXokfRZ249xX1bc5OBWaxYpt+SNkl3jc3an6d38Pw7TN/5uiPPaRQ+WI7lVWNfQQqf9KRjxEuNkihTjnCiNLiGb4ulyCx1pJZv3GmH9k8lYnl6StluaDiE6CFuc4ZAyBf8D5JmssK5lwdOp7mN8UpD/WycIYjYV/p0PsdU3dypOkVqdFSPqcj+ijiM3g7diavbnhQA+JsJMWgeO1RHO84tNvZx1+0N4IrZYygDLIPCEdX+yE5yJIjowQDIuGP7GTae86vPGu3IBW+Dluw== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nvidia.com; Date: Fri, 16 Jun 2023 09:38:27 -0300 From: Jason Gunthorpe To: "Vishal Moola (Oracle)" Cc: Andrew Morton , Matthew Wilcox , linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins Subject: Re: [PATCH v4 04/34] pgtable: Create struct ptdesc Message-ID: References: <20230612210423.18611-1-vishal.moola@gmail.com> <20230612210423.18611-5-vishal.moola@gmail.com> Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20230612210423.18611-5-vishal.moola@gmail.com> X-ClientProxiedBy: BL0PR0102CA0025.prod.exchangelabs.com (2603:10b6:207:18::38) To LV2PR12MB5869.namprd12.prod.outlook.com (2603:10b6:408:176::16) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: LV2PR12MB5869:EE_|IA0PR12MB7577:EE_ X-MS-Office365-Filtering-Correlation-Id: 8506705d-9a30-4258-c03b-08db6e6695d5 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: A1HBD5wD+23hljrt/BZDQ+Nq0kQdQCxvg+5QYwtqH0PvCuU0t+WZTcNeWVcPSeddfw7FwpKwPSrzyhfwIFb4hbe3Dduz5Td9kFUULTputVDH5dop9R47s7pwKtPLRnpWid3osDc+RoVSBxi84loqCiol4HKOOCUThtivw5p+7V305zg163JS80jbz6Nbq33o3bjiVsMdxEeAapbh4c4h3rPAzTJikGnn3Wrm/TEz6VRCcF3jf+jXw7+/vok0zU4ANfZeCsKt01GrQj2ezq8NXwRdrdT55uUbXCy+jb6ciQj1ACmXOz+HWEnpi10Hl431bujZ1n/wtxXeujt1xHRxMNCZYEg7cH4WHt0EcO6iSdWRE7I4KpFSC7sb/Egaf0o+sloQMWQ+cWXh/eDpR7gTC7SdCAGWsDSa6eNBjXFOT1GkV5M9Li8KLsT99nJhh2gBXNIjDoYLUG+B2bEw0S6dZSNuVgytIQDnSS0sALAJwdZQkUcoU0XJYlraVVs1V3XsZmbJXu67VfObirhEb2VdePBKCG0xTu/hVG5KZ3pK88IYnu342H9g+3Tw41/InV9v8wYuAqUSipnmQL/CDErDlnXvLwsGeSujy5kXXpRKMihuCi/JvMsMVHcgkoDKieULI/y91b+0usAD19Wh6QpfmA== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:LV2PR12MB5869.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(376002)(136003)(346002)(366004)(396003)(39860400002)(451199021)(5660300002)(38100700002)(186003)(2616005)(83380400001)(2906002)(6506007)(6512007)(7416002)(478600001)(26005)(6916009)(66946007)(316002)(66476007)(6486002)(66556008)(8936002)(8676002)(41300700001)(86362001)(4326008)(36756003)(54906003)(67856001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?/Irqnl8o7kuP7oMmsP7PZvxKq7x2MmLRtDR+Vgt5CkkvQCJm2lPuWCVSvzo6?= =?us-ascii?Q?EbSIh+gkp9UQMFnOC7TLMnZfJ9XORFM9u3h+C9G9T174M+Cr6B7Q1q8D0YQ6?= =?us-ascii?Q?ucDM/oEkFCVR7DZVQxsSWRtKh0Pys7OtL9Rexlr+CSROsJqX4p2u/c19b1kH?= =?us-ascii?Q?7VERJjIDRwtpfgFovjP95eL1HQMOHpJjcVt5I0hFmKBR6vC4chQRWwSgtDe0?= =?us-ascii?Q?GAhbRzQTgrncE/F2yKzxlod6TFgXF4+6kg8XzzQgHbpaHSWU1p+Fu9cdbcO/?= =?us-ascii?Q?ppcDma4W0nRi5KmTeClGmwb9gYdpdpaALHBS86rfBHHUjfLkon+4CaVr7L63?= =?us-ascii?Q?T+xiQqf58weB/ZJ7hC5aY/Rj3rn58pbOzXMFWjxRKBBhQKAQlIWUOz4q8aQ5?= =?us-ascii?Q?uMf+69CwroesnC4uK4bdIJKkwYB5KYLnxUmH5lceQTyX9US/wb04E9C8WmO8?= =?us-ascii?Q?d2Igorxe7kyhchQ3YoAifJowzDausi3w9XkgwCygcId7CuV+D0NG3krnXG7+?= =?us-ascii?Q?8OWJr0TlKxY8HY3CWB5cjoZprye1VkM6yKqK9TBC5O9nPQxAlfzlXA42zTy7?= =?us-ascii?Q?cib2mo2WMjA8Cn0XJU+92IsShh0d3LxuZNaC+H0Caosp9AcATityFkNmEVNF?= =?us-ascii?Q?IdqnRm5asjVXFUZ4MDlimjrs4X0NLD9ZB4R9EHQi3cpCJBq708reJGCRorjW?= =?us-ascii?Q?+g3+p3Cg2ZyoKdOCndqVgQ7WtZr+5t0AoCpWQ0xi8LbjevjEhI9Py3rbAVvj?= =?us-ascii?Q?6lWh9Fp7szpCvF8T0/3HPd2+wkCpQaGj+/yDF1dvHHrLdmgCSYo4wckaQxhR?= =?us-ascii?Q?2lsRQwZEMRbD44vineIy9pxCbfESFWeG5A6bSf3slk57ghdXAbu9CEoZ6jcl?= =?us-ascii?Q?OpDI7lobgYTPDBZFjM0h7oZS4CuSfpuR++xNUeCAgOsu8T7Ds8Dpluq8uX4n?= =?us-ascii?Q?9Jm8cg8Jt0WoIRtPGEW5i9Isit3cyifJ7dZyKhGLLfgm+M/UKz6XVfhQjsOV?= =?us-ascii?Q?8bpZrzwmFG9rscMg9MSDwoy1bxx5Pc/yufiRFf5kAEtL1caZM8GTILicpeHK?= =?us-ascii?Q?hrE/7mGA8DpvM+qLBSjUIhEleXhmYzoVneHhJGXUncswjykpaBi+xGVkmHit?= =?us-ascii?Q?7K1tbHXYmlELlYTqdOdrlfy5CchSvODQE3VEx7/8JKKEi6k9uC6hiN35VKMR?= =?us-ascii?Q?k1Ca8xzyUotdpcK4BfCwnuujpOE+bhKZah11psUhKDLIJ1DDQoBxsei6C7az?= =?us-ascii?Q?jl86JF6Os4p3oTZRz0Cfi2jfp1uFhCbJa7YVzR3xLNzT6odu8kpKHZcMbrnG?= =?us-ascii?Q?rJ0kVqPp/XW1F8JHCv4NKt446tO6B8lxGlfEi5hT4t0LWRMb8iWRvhR1QZLX?= =?us-ascii?Q?IjClfLE/su4iY/Uas0HpwhAycdwOaATK2/OlucyTwlJs+75NV4LmT4VuMAsY?= =?us-ascii?Q?E9DcShxP5bbFHq9wZ3maqkQMutw0YJhOZzXZqWTlQWq82e9gin9apVec6eCa?= =?us-ascii?Q?fUBpj9ANJGOGl3b8d06YR9CjL8EX8qzHHJLwYrwngykFvIeJwVnKPJWnrq2x?= =?us-ascii?Q?d1/tocPhkWuPEB6GZDs=3D?= X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-Network-Message-Id: 8506705d-9a30-4258-c03b-08db6e6695d5 X-MS-Exchange-CrossTenant-AuthSource: LV2PR12MB5869.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Jun 2023 12:38:28.6370 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: F8WtUVEqEUr+4a6ARSihpj6oeN2X6Diaq/r9BANH+D4NwEndUZStIxp4szriDpA4 X-MS-Exchange-Transport-CrossTenantHeadersStamped: IA0PR12MB7577 On Mon, Jun 12, 2023 at 02:03:53PM -0700, Vishal Moola (Oracle) wrote: > Currently, page table information is stored within struct page. As part > of simplifying struct page, create struct ptdesc for page table > information. > > Signed-off-by: Vishal Moola (Oracle) > --- > include/linux/pgtable.h | 51 +++++++++++++++++++++++++++++++++++++++++ > 1 file changed, 51 insertions(+) > > diff --git a/include/linux/pgtable.h b/include/linux/pgtable.h > index c5a51481bbb9..330de96ebfd6 100644 > --- a/include/linux/pgtable.h > +++ b/include/linux/pgtable.h > @@ -975,6 +975,57 @@ static inline void ptep_modify_prot_commit(struct vm_area_struct *vma, > #endif /* __HAVE_ARCH_PTEP_MODIFY_PROT_TRANSACTION */ > #endif /* CONFIG_MMU */ > > + > +/** > + * struct ptdesc - Memory descriptor for page tables. > + * @__page_flags: Same as page flags. Unused for page tables. > + * @pt_list: List of used page tables. Used for s390 and x86. > + * @_pt_pad_1: Padding that aliases with page's compound head. > + * @pmd_huge_pte: Protected by ptdesc->ptl, used for THPs. > + * @_pt_s390_gaddr: Aliases with page's mapping. Used for s390 gmap only. > + * @pt_mm: Used for x86 pgds. > + * @pt_frag_refcount: For fragmented page table tracking. Powerpc and s390 only. > + * @ptl: Lock for the page table. > + * > + * This struct overlays struct page for now. Do not modify without a good > + * understanding of the issues. > + */ > +struct ptdesc { > + unsigned long __page_flags; > + > + union { > + struct list_head pt_list; > + struct { > + unsigned long _pt_pad_1; > + pgtable_t pmd_huge_pte; > + }; > + }; > + unsigned long _pt_s390_gaddr; > + > + union { > + struct mm_struct *pt_mm; > + atomic_t pt_frag_refcount; > + }; > + > +#if ALLOC_SPLIT_PTLOCKS > + spinlock_t *ptl; > +#else > + spinlock_t ptl; > +#endif > +}; I think you should include the memcg here too? It needs to be valid for a ptdesc, even if we don't currently deref it through the ptdesc type. Also, do you see a way to someday put a 'struct rcu_head' into here? Thanks, Jason From xen-devel-bounces@lists.xenproject.org Fri Jun 16 12:40:02 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 16 Jun 2023 12:40:02 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550158.859073 (Exim 4.92) (envelope-from ) id 1qA8k5-0005yD-7k; Fri, 16 Jun 2023 12:39:53 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550158.859073; Fri, 16 Jun 2023 12:39:53 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qA8k5-0005y6-57; Fri, 16 Jun 2023 12:39:53 +0000 Received: by outflank-mailman (input) for mailman id 550158; Fri, 16 Jun 2023 12:39:52 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qA8k4-0005y0-DN for xen-devel@lists.xenproject.org; Fri, 16 Jun 2023 12:39:52 +0000 Received: from mo4-p00-ob.smtp.rzone.de (mo4-p00-ob.smtp.rzone.de [85.215.255.20]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id e226be0e-0c42-11ee-8611-37d641c3527e; Fri, 16 Jun 2023 14:39:50 +0200 (CEST) Received: from sender by smtp.strato.de (RZmta 49.6.0 AUTH) with ESMTPSA id y5401az5GCdh8BP (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256 bits)) (Client did not present a certificate); Fri, 16 Jun 2023 14:39:43 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: e226be0e-0c42-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; t=1686919184; cv=none; d=strato.com; s=strato-dkim-0002; b=Sau7TxcbMD2hYKuqP3OZCZG8xZBNQnYKkaOZ/2YLGMAGASd+SgzY+2j7WSNjx7vECw /5FntSOkpYKVdwp1HHktGpUvhXXgKTDTCK8SdQk9Oj07uskTqkPihElmCCyLJhp+/Um7 0djy/yGPUeajjCpk/0Yt101FgLKqe904rFqCEO2SmZiVgU4C26A8mQaIpILkeUvRaizO D9odxB66ocoHlR1BAlSLBykoxIZZFWmOmWdmIKv8XSqjpMeTf7oMh6RauV4Kbj2vjwq5 l+/pKS7U0AysDc8MbdKkLNtgsHJHC8NTiWbxPy/hiSOmvGWxUTwcPFocVoudt0objUjO e+aA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; t=1686919184; s=strato-dkim-0002; d=strato.com; h=Message-Id:Date:Subject:Cc:To:From:Cc:Date:From:Subject:Sender; bh=wFK9LEIHC5Lyh2cqXtt1DBdqqnSo5xG2B7caRPIX1zY=; b=kXl49KidqUoGqMbMi4va2YF+5gFTw6ftzii6joI+ldhgyQ5JwSxoP08Bd7seJkHDMq VOKRTvsLQjuhZdGcnsJaaRJS8INNQbWbEG+87XkoLFPr9iFLRzoTf60rt5ceqWNjkpDh BBNpZZMJAiMlLxSOCxLtFykTPZczspNKBBIncDhNwYiP3hQgO1rWhkqBcxL1fC+gfBid 1R26Nf5H9H7oIVs+vm9Z4VMHdhQNKxZwrf2YlvPK4BGgd7VnvfcqL2tXZM/Bar0L1C8a /S2jS2Rjd+qg/ZbXfMeukeyueG9/LGYvKrIhy21pDvIA8o3TJJYfFXBce30vLKAGiNbi U6Dg== ARC-Authentication-Results: i=1; strato.com; arc=none; dkim=none X-RZG-CLASS-ID: mo00 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; t=1686919184; s=strato-dkim-0002; d=aepfle.de; h=Message-Id:Date:Subject:Cc:To:From:Cc:Date:From:Subject:Sender; bh=wFK9LEIHC5Lyh2cqXtt1DBdqqnSo5xG2B7caRPIX1zY=; b=bgQQEnmPFSjhaCwBkbQSS7EboqYNFxN+DCiNtBMOyz7RkfrGpWnKqViLSV2DLXY/vg 5l0wpaManwyWWjQm5UFHknkHPd9jwMu+Og3+rDCkD8JP6rkF3T+etDfetZITCb1ozin/ 5I9BOmzwQDxLUKE0NKUQYof1dsCnRoV9C/7/yyvnPIYwb3PA+5HazG0TXB80vnHCR55q 0L1MKSEffRrUWPWn0KWqbBJ+cWh9TR8r20BGZsGyBJ92QxeJU67W8hydA4waMaAFK1uC K1oTZjvsXdGr+g7qqLDhQPBD6P6vos/c5LJM3+ju3lBHGLaFSk78P2B0jAR+bh8RSp/c xppw== DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; t=1686919184; s=strato-dkim-0003; d=aepfle.de; h=Message-Id:Date:Subject:Cc:To:From:Cc:Date:From:Subject:Sender; bh=wFK9LEIHC5Lyh2cqXtt1DBdqqnSo5xG2B7caRPIX1zY=; b=nf7spAwa0pCDN2FYblMAQfpt1Afss16lqdYqBmBDKtEkXH0UDEDNAyMqv6A8Ok/wWb CYcUqCg8niNlmWj9s4AQ== X-RZG-AUTH: ":P2EQZWCpfu+qG7CngxMFH1J+3q8wa/QXkBR9MXjAuzpIG0mv9coXAg4wrlX7F5stp0W7RR6sn4IXX0XAi33PEsP+tJs+yA==" From: Olaf Hering To: xen-devel@lists.xenproject.org Cc: George Dunlap Subject: [PATCH v1] xen/trace: remove duplicate check for tb_init_done Date: Fri, 16 Jun 2023 14:39:38 +0200 Message-Id: <20230616123938.12458-1-olaf@aepfle.de> X-Mailer: git-send-email 2.35.3 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain; charset="us-ascii" The single caller of next_record already checked for tb_init_done. The functions are called with t_lock held. The call stack look like this: __trace_var tb_init_done? insert_wrap_record insert_lost_records __insert_record next_record tb_init_done? Signed-off-by: Olaf Hering --- xen/common/trace.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/xen/common/trace.c b/xen/common/trace.c index 582c58c884..8d56124ec9 100644 --- a/xen/common/trace.c +++ b/xen/common/trace.c @@ -514,7 +514,7 @@ static unsigned char *next_record(const struct t_buf *buf, uint32_t *next, barrier(); /* must read buf->prod and buf->cons only once */ *next = x; - if ( !tb_init_done || bogus(x, cons) ) + if ( bogus(x, cons) ) return NULL; if ( x >= data_size ) From xen-devel-bounces@lists.xenproject.org Fri Jun 16 13:11:15 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 16 Jun 2023 13:11:15 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550166.859084 (Exim 4.92) (envelope-from ) id 1qA9EF-0001xT-Ns; Fri, 16 Jun 2023 13:11:03 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550166.859084; Fri, 16 Jun 2023 13:11:03 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qA9EF-0001xM-Jf; Fri, 16 Jun 2023 13:11:03 +0000 Received: by outflank-mailman (input) for mailman id 550166; Fri, 16 Jun 2023 13:11:02 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qA9EE-0001xG-Cf for xen-devel@lists.xenproject.org; Fri, 16 Jun 2023 13:11:02 +0000 Received: from esa3.hc3370-68.iphmx.com (esa3.hc3370-68.iphmx.com [216.71.145.155]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 3bd9a88a-0c47-11ee-b232-6b7b168915f2; Fri, 16 Jun 2023 15:10:59 +0200 (CEST) Received: from mail-mw2nam12lp2042.outbound.protection.outlook.com (HELO NAM12-MW2-obe.outbound.protection.outlook.com) ([104.47.66.42]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 16 Jun 2023 09:10:56 -0400 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) by SA1PR03MB6547.namprd03.prod.outlook.com (2603:10b6:806:1c6::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.27; Fri, 16 Jun 2023 13:10:54 +0000 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::ab2a:a298:bacb:db47]) by SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::ab2a:a298:bacb:db47%2]) with mapi id 15.20.6477.037; Fri, 16 Jun 2023 13:10:54 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 3bd9a88a-0c47-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686921059; h=from:to:cc:subject:date:message-id: content-transfer-encoding:mime-version; bh=65UCKKh134J0IWvzlgvq4hxcx/9Z3sMgmsn8JZkBqMw=; b=PyXMVNyHtV2MtuTTjP/h5g8aMtQKTVMxy0/piQjJIfqi4V5+UIeoBHCe ZdhM2DoO7nD/SFmqGesGGVBOmaVdi+jdFPF/sZEUlArFP3K7wIGVVj862 u+HSHNG8ZYXpXxqc6lT/ILLghhm/klNHCZY6tC+IoBRjWsWYKD9Eh+R2c Y=; X-IronPort-RemoteIP: 104.47.66.42 X-IronPort-MID: 113085852 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:brers6wI3+KGv1AB1O56t+cBxyrEfRIJ4+MujC+fZmUNrF6WrkUEm mRJUWuDbPeOMDHwKdpyaI+09kkPucPTyNBiQQdr+yAxQypGp/SeCIXCJC8cHc8wwu7rFxs7s ppEOrEsCOhuExcwcz/0auCJQUFUjP3OHfykTrafYEidfCc8IA85kxVvhuUltYBhhNm9Emult Mj75sbSIzdJ4RYtWo4vw/zF8EsHUMja4mtC5QRgPK4T5jcyqlFOZH4hDfDpR5fHatE88t6SH 47r0Ly/92XFyBYhYvvNfmHTKxBirhb6ZGBiu1IOM0SQqkEqSh8ai87XAME0e0ZP4whlqvgqo Dl7WT5cfi9yVkHEsLx1vxC1iEiSN4UekFPMCSDXXcB+UyQq2pYjqhljJBheAGEWxgp4KWNg+ eYyNjJUVU2siu6UzoucTcQ2p9t2eaEHPKtH0p1h5RfwKK98BLX8GeDN79Ie2yosjMdTG/qYf 9AedTdkcBXHZVtIJ0sTD5U92uyvgxETcRUB8A7T+fVxvTaVkFYZPLvFabI5fvSQQspYhACAr 3/u9GXlGBAKcteYzFJp91r137SXzX6rBdh6+LuQ2eN4umLJ3FYqCww5UXGqrNib03+OVIcKQ 6AT0m90xUQoz2S7Q9+4UxCmrXqsuh8HR8EWA+A88BuKyKff/0CeHGdsZiFFQMwrsokxXzNC/ l2GhdTyHhR0raaYD3ma89+8rzm/JCwUJm8qfjIfQE0O5NyLnW0ophfGT9ImFbHviNTwQGv02 2rS8HJ4gKgPh8kW0an95UrAnz+nupnOSEgy+xnTWWWmqAh+YeZJerCV1LQS1t4YRK7xc7VLl CFsdxS2hAzWMaywqQ== IronPort-HdrOrdr: A9a23:Nhxm/anP4wJJl3+oViMwOzwOb/bpDfLh3DAbv31ZSRFFG/Fw9/ rFoB19726QtN9xYgBDpTnuAsW9qB/nmqKdgrNhXotKPjOGhILAFugLgLcKqweKJ8SUzI5gPM lbHZSXCLfLfCJHZcSR2njELz4iquP3jJxBnY3lvhNQpZkBUdAZ0+9+YDzrdXFedU19KrcSMo GT3cZDryrIQwVtUizqbkN1OdQqvrfw5evbXSI= X-Talos-CUID: 9a23:o41TMm8wGcBWB6tRz++Vv0w6FtoPbH+E9yr/LkOaB19OT5DPaEDFrQ== X-Talos-MUID: =?us-ascii?q?9a23=3AYEDqpw2hL8BLjuH5tN5Ip7AhUzUjzLm8Mn9Xi68?= =?us-ascii?q?/uNirMQZhNha/1QWHTdpy?= X-IronPort-AV: E=Sophos;i="6.00,247,1681185600"; d="scan'208";a="113085852" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=n6cZnlhA7TmtBDSwuzPqgjNylFz0An3j543m2ynIMvtsVvvQzzXBl1mrXrdK36Vo6eG6vIR6lYf4oWIwiZdRh62jtdyWYqoPSTehg8RLxF1idW6ezjMZrQpqxdsePwW7Lv0IJBLR+SDzJYJasEu8BbG4ECqrwDYF829QOTu7ucAVPDhiJpEyeFbD5rGtRFbX80MK4vINfZxaomCN+WWRbCGj7qfx5lfCSjAMIP9DxgI+q5dVohvX8vXuUu75FoZeYAz3W2Yx26H8Ult5sVNvacqjPsZkIq95+6iKKtnDapqdslwoX4kzLpCGrlHLgyPDjyhqNouttwIrDph+1CPrBA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=JNqSx622qdR/rT04RVhtSMuEjyQxLCiBxalL8rrQoxE=; b=IHKP7YLKCUhgQ8WTmt6NOL/NUpA+RpT9jBFMXUUoCW8WGMaYlF/bpH7QSM2LVJVaqgKNCMX3AY9h0BOhe483x+7cSHrgteWC3TAyu+XOLwhNjrrOHCZqTqFRa/ZymJ9kC1qU3VjCko12pEwBYhoL1kc8sSCPwRQAqctHjx1jX6jGSiIRO/VxUEmoDOtFOTT6SlNvdskPYvTzmqYCqZm6mpxIJrJaW5CQ2nzzwc3+Pl+iLB4HNsG/2PWMJc+op/c2zegl3TNMzZVqnubXRLC9X52ESppOL8u2PyRk5Z0BgD+tLkMkgYuhRzVzEmtaX7i7zuLm8NQqeZGTWbJlZTS/4Q== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=JNqSx622qdR/rT04RVhtSMuEjyQxLCiBxalL8rrQoxE=; b=ronw0CXijfVcMh952wRaZkhrfbCqcgrWSdFPrgvhep646XOvswNhJ+7caYC4wHuxItLYX8GM2B/UQhyXTm736RbT6cr04xXFIQEAENOLJ+q1wanru25bejNySIGmTglmCtbTF05dX+CXWKyZq4EbzflqnfU7n3VlUPcACV3NR+o= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; From: Roger Pau Monne To: xen-devel@lists.xenproject.org Cc: Roger Pau Monne , Wei Liu , Anthony PERARD , Juergen Gross , Jan Beulich , Andrew Cooper Subject: [PATCH 00/13] lib{xc,xl}: support for guest MSR features Date: Fri, 16 Jun 2023 15:10:06 +0200 Message-Id: <20230616131019.11476-1-roger.pau@citrix.com> X-Mailer: git-send-email 2.40.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO2P123CA0013.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:a6::25) To SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|SA1PR03MB6547:EE_ X-MS-Office365-Filtering-Correlation-Id: 3beda851-de65-45a5-d751-08db6e6b1dc2 X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: K+vB2+7KR2+FN18xU1fNn0aTF4RoGWNlrl17KQxl3lgBgUVsG2Y/FKh873nLmiJujfWGj36iIXfWym2p920uIwIOljikZUYywduQZfuklxvkp6Rf9M4pgIMJcmbavVl/E/6cLMrheIOIw4ex/EkNLZtyliBiC4ZMvNITOYKPbxeu5dtReYqpoLNfVs8wuHdXfGqf9qnEJ0lX2/iyS+3bJTgPHIBMXRGE5CZsbSfpvHpcY9bpVjEBKZY+AB3CgjBQWOfm+A85E6S4F2UKq79IpB4vmw+avzLaBwHvLTW4Tv94abDxxTL/fDRAnmrMokxvqxDc9u1ACFxOaJ5YeU/oz3QJwf8F3O/Z/aAlxreZuRQx/klVA61dIY7iKOFE5J7K34AVn459EHgHGtBbn+P/hYYfbySzsUllcBXemZbVjT9AKIIiafSPq02gW55xzYPFi7WEsf5TlSQwxS3WyjZRfGvAzWjBqpaEBINWW09W/rwPd30wu8DSJC95okrwz0LMdvVxERAGi3crKo6Xz6UvaCY34kTmbl7sfYB10iOHKH6wU8kuZTeYYeRUCh4oL4ko X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(366004)(39860400002)(136003)(376002)(396003)(346002)(451199021)(86362001)(38100700002)(8676002)(5660300002)(82960400001)(316002)(8936002)(41300700001)(66946007)(66556008)(66476007)(6916009)(4326008)(54906003)(83380400001)(2616005)(186003)(36756003)(478600001)(107886003)(1076003)(6512007)(6506007)(26005)(2906002)(6486002)(6666004);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?OG1xV3NNeGxsNVBrN1NOVUJiV1BWWVVqeXdoUGd1SU1zZVlHWG5mQTVja0Zz?= =?utf-8?B?aGYyWE5iVWtDbXJ1TlRicWoyakwzcWxTQXpzMy9iVGlIVldXMFUxOEtxR0Rx?= =?utf-8?B?MmpDekt6enl4Ly92Q1dBMzBWWWhwVHE3dEU4N2xVSnJMeGVvaExDRElrT2lh?= =?utf-8?B?VkFpcEk0Z2JrSTUyUlU2YWF6SFM2VGhZZXRzYi91QjM0Nm0xK0FjSjd3OWsx?= =?utf-8?B?Z05mOXg1azBTTEJZdHR4UTRVU21SVjZUK1FlNDZzV2dYY0gwVVlHajI5U0NO?= =?utf-8?B?ZWJnNEVGb1lBZWJRRVRhV3R2YzROV2JWY1JrQWJiWS82MEcyS0xJMWJJOHZD?= =?utf-8?B?dHFtRy9ZUXdaSC9BeFVmS1d3d1I5bmV1NjJmY1RaTjdUN1NYTTdaem16NjVa?= =?utf-8?B?RlRTMnUvY0daZndmN09ndXgraXgzck8wa2ZhV2kzYy9YYUdvOUkzTm5nOGRZ?= =?utf-8?B?TWJCSG5pT0h6b0IySGJXWWc0d3o2aDl4SjBEUDV3Nk0vVlRKc3lic3hlUjFC?= =?utf-8?B?bGZQNnphLzQ2UHZUazNWNTlGblBjdWRxVStyTWRqdXFYM0FlZndmMnZYdFRN?= =?utf-8?B?WWZYVlpZZkVOWDF0OHR4bmp5a2FXRG40cUVWTDROeTdtTUFKbHo1OWVrY3dC?= =?utf-8?B?YW54NHRnSmVlZ0VQUFNvWTA4MWI1Tjd5QnJUKzR1TThMOE5JSEFtdVVmdExl?= =?utf-8?B?Wm5xdHZ4NllnOUNNZUUzRXgxSGpiSkdsSTBVQjNRVk4rMExBVStPQ05hNkUx?= =?utf-8?B?V1lFRlc0dFZkaTFlS1ZrWndOcWVlRlpNYTI1dzBnMit5OFZZOFFCcWR1VHBU?= =?utf-8?B?bDAzTVVVQm5UaGN4OUc1NnYwa0ZiN2ZDQm9FNU1DaGFqZEJaUlZYcWFRNGZl?= =?utf-8?B?VCtjVXNRc2I2Y3pSeXd0d0NGdTl5MVJ0b0VxWTBkNXRZcGZtWGNSdnM0Q1Mv?= =?utf-8?B?ZVlBZ0szNlphdENkQmtKV1g3ZzFGTDRXai9Db3hDUVN2RjlKNzdSVUI5MlVh?= =?utf-8?B?TTAvUWM4TUYxYUFSVEFNTVVZc3JBVEVvakV3aElCZ1E5cjlSaFZTdjR1bnpD?= =?utf-8?B?NTd6WUJQb05DaGR0aGFoVDNUYXI4cmMyQ1ZZQll0WXNXQWxIMXBOdWE2MXpV?= =?utf-8?B?bnozV2VGL1R1ekVHbzdPMXJuUmhaQU9RVTZHbHVnNGMzZVBlRHNsakRxWFdu?= =?utf-8?B?dkRGWm1jeEY5NU9aZW9EaElpOXF1NXNyUUVhc1pUVkxMRlYySDRLMUpKeDJC?= =?utf-8?B?QVpJMlVpOHUwWk1xZ00xd21BNDdISUIra2o2WGRrUzVGYUgrbVBiV3I3TWl1?= =?utf-8?B?ejI5eWN6RE51TmxlRzRXSWtSSUdEQ202aW4xS1I2b0ZMaVRlZzdoY00rQ2ZD?= =?utf-8?B?eHVCck9zektITEFZbmhNRUxTK1h3QUpPTEFDeGl4QVhrOWFHQzBKL3NGNU5t?= =?utf-8?B?bjJTTnN2dHUydHVUbzdhWEFrekszenZRbzg5SURtOGE4V0hGUm1pVWN3TFZB?= =?utf-8?B?bG9UcDIzQ0svUkphTWtYUkRHTzJ0MjlQYlFNcXFlaXpUQWhkcFNrNmdYMVly?= =?utf-8?B?N2FiaUVUT2NrRDk2c2svanBDMjFaM1BneTJFREJmanZVU3F4eEY1TjBJMitY?= =?utf-8?B?eUVnenUrQmdjK0NxS1RkZ01hY0dBNVE5Y2NsbjM2dFh0cVd4Ty9MNEd2V1d1?= =?utf-8?B?Y3V6NEdUV2t0UjBvcDFKdmtIaXkwaEJZK2JET2dqR096dWdUbkpHUDFwVTJK?= =?utf-8?B?ZEN0YnRueDlTY0s3a0xlSS9HMzQ0NnJBck0yNG5hMThqRzMwUzVMMDlPanEy?= =?utf-8?B?Mld6SFE0OUF4T0JDOU9NYUdveGN5WU5ZR1V0eTBhV05tMjRFb1k4ZFcwUFZK?= =?utf-8?B?c2ZtZWhlc1VRRFdSWlYzN0xQeHJSd25YUCtYSEJjcFdDM2plSzkvV3c5Zmlx?= =?utf-8?B?d1JVVTcrUEE3YXV6RHNlV095b0hBVWd4d2RmWW5OeXNnNUtJL3Z2bEpxNXVQ?= =?utf-8?B?L3FOS0VyRG9IMXBuS2ZaNG0xK0I3aGFRMmR1cmVUd3BQZFFZQmNRQWoxTXNQ?= =?utf-8?B?dXE3cWQ0OEs5azNOUTd5KzQ2RjVidHBpMFB0RHhMN1dnZjZEbDV4V1dMRWZk?= =?utf-8?Q?hKrQB5g2fAno0dAWqcG3fylSB?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: wIFjyQAvYXCe/EwDVTja8evRdYqvD8hWs1d3aUW5wmQyS7Wy7lgPceA8FjoxnJJTuOuvmyUHzA+tGiyg1XvM1FIPe8esBKLIdvRU0P1CcVtwufvcDldHw72eFbjj8zOovScdl/FhEHFFeS70EX07wxpyr+zMbV02BavkbyQpbIy3fMHioFjYAUIjZ4bCKVhdoFskNulrwN7vhcOKlx426CPpuUO8JTchxluVYWu2YOla04QRz1OVBvytXixNHYOlBPENuUKQQ+9ysRX19x2WljRrbXtH62dLLyJk+lceFW80v/nRP5ZOl0R8KkNkxFfHEHvUz8AHMWZPq98PCMywW6syIRO0FWS4cgxD4QwDZtHzsETcNi+ecRp281Z9om06+qPbzhFmXwEdFML9fuQcPgXIIfCwZePVeynwKRihuQwatTpQyHLtLTUoVlmTA7FplPrr/YRXlP5foBPx+mXx0ko6J8Qvw77VnEqDNDXJMeorlKKaz8D1xZcu1SB6qLGY4nbQ3SWZnp7XbipoVwt36uXUgb2u2Gv4d8CmNiDTHLC5JdAU0r2kdNTznlku7bNLnVQnwsmLt0bMiMRldOxa/9QGTLsLtjmKT83Y/J5a1eBG1m6t6eE2kxFWivBIOFF7NxF9f85/oyO8591kqE/bYGxktRlTTe5etTdSXkjpeAc40z9sGBUqfWpv6eNf+8essS9ySPAeRDHpfu6wx097aIANQAnjUnCGH+m5H1XrBb5hWlCpWWJl92xdymS+FTXezekFpxdfp7AApZPXjlioBrn/FP8FzRuyVTrXztXcqBYQIQFJH3fr5QzF+IulN112 X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 3beda851-de65-45a5-d751-08db6e6b1dc2 X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Jun 2023 13:10:54.5325 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 0acbXgfHETsqDXCGiDvgJzguRGFADs7h7O+3BhrZuHa5v5ydSRC1E8f8FeWU3nPh5w9Mx+lnZaFGRSDnEKh3UQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA1PR03MB6547 Hello, The following series adds support for handling guest MSR features as defined in arch-x86/cpufeatureset.h. The end result is the user being able to use such features with the xl.cfg(5) cpuid option. This also involves adding support to all the underlying layers, so both libxl and libxc also get new functionality in order to properly parse those. In order for such support to be as transparent as possible for existing users of libxl, both libxl_cpuid_policy_list and libxl_cpuid_policy are modified, so that the libxl_cpuid_policy_list type is no longer an array anymore, and libxl_cpuid_policy is converted into a structure with two fields to hold both a CPUID and MSR arrays. It's my thinking that current users of libxl had no business in poking at libxl_cpuid_policy_list, since the underlying type (struct xc_xend_cpuid) is opaque in that context. Also the format of the array (with a terminating empty element) is not documented in the public headers. Some of the patches had been salvaged from a previous series of mine to introduce better cpu_policy management support in libxc and libxl, and hence contain some version notes about changes, or are already reviewed. Thanks, Roger. Roger Pau Monne (13): libs/guest: simplify xc_cpuid_apply_policy() libx86: introduce helper to fetch cpuid leaf libs/guest: allow fetching a specific CPUID leaf from a cpu policy libx86: introduce helper to fetch msr entry libs/guest: allow fetching a specific MSR entry from a cpu policy libs/guest: replace usage of host featureset in xc_cpuid_apply_policy() libs/guest: rework xc_cpuid_xend_policy libs/guest: introduce support for setting guest MSRs libxl: change the type of libxl_cpuid_policy_list libxl: introduce MSR data in libxl_cpuid_policy libxl: split logic to parse user provided CPUID features libxl: use the cpuid feature names from cpufeatureset.h libxl: add support for parsing MSR features docs/man/xl.cfg.5.pod.in | 24 +- tools/include/libxl.h | 7 +- tools/include/xenctrl.h | 21 +- tools/include/xenguest.h | 13 + tools/libs/guest/xg_cpuid_x86.c | 383 +++++++++-------- tools/libs/light/gentest.py | 2 +- tools/libs/light/libxl_cpuid.c | 504 +++++++++++------------ tools/tests/cpu-policy/test-cpu-policy.c | 220 +++++++++- tools/xl/xl_parse.c | 3 + xen/arch/x86/cpuid.c | 55 +-- xen/include/xen/lib/x86/cpu-policy.h | 37 +- xen/lib/x86/cpuid.c | 52 +++ xen/lib/x86/msr.c | 41 +- 13 files changed, 821 insertions(+), 541 deletions(-) -- 2.40.0 From xen-devel-bounces@lists.xenproject.org Fri Jun 16 13:11:15 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 16 Jun 2023 13:11:15 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550168.859094 (Exim 4.92) (envelope-from ) id 1qA9EP-0002EL-1z; Fri, 16 Jun 2023 13:11:13 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550168.859094; Fri, 16 Jun 2023 13:11:13 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qA9EO-0002EE-Ur; Fri, 16 Jun 2023 13:11:12 +0000 Received: by outflank-mailman (input) for mailman id 550168; Fri, 16 Jun 2023 13:11:10 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qA9EM-0001xG-Pd for xen-devel@lists.xenproject.org; Fri, 16 Jun 2023 13:11:10 +0000 Received: from esa5.hc3370-68.iphmx.com (esa5.hc3370-68.iphmx.com [216.71.155.168]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 419748da-0c47-11ee-b232-6b7b168915f2; Fri, 16 Jun 2023 15:11:09 +0200 (CEST) Received: from mail-sn1nam02lp2045.outbound.protection.outlook.com (HELO NAM02-SN1-obe.outbound.protection.outlook.com) ([104.47.57.45]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 16 Jun 2023 09:11:02 -0400 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) by SA1PR03MB6547.namprd03.prod.outlook.com (2603:10b6:806:1c6::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.27; Fri, 16 Jun 2023 13:11:00 +0000 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::ab2a:a298:bacb:db47]) by SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::ab2a:a298:bacb:db47%2]) with mapi id 15.20.6477.037; Fri, 16 Jun 2023 13:11:00 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 419748da-0c47-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686921069; h=from:to:cc:subject:date:message-id:in-reply-to: references:content-transfer-encoding:mime-version; bh=VVZh+dgSVSe07XE3ToIkuC1ghXLj6DzyVNrGoP3ERmg=; b=ZJMmhsxz7HthTcW1nbambwrY+xwefIYrcyolsDSznSO7mPmeHqA4PD7b r3/DllHCHyYp7k/hBXdwPQApY70c0nf/QVdxmLvddJb9LLYg1jNCQa45i vIu4MQbqusroCARLrT71ZQMsIslHQrB+65wlrB7HavIgnrdkULITwJPnW k=; X-IronPort-RemoteIP: 104.47.57.45 X-IronPort-MID: 111813000 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:ol6CxKCmgIxQPRVW/wziw5YqxClBgxIJ4kV8jS/XYbTApDMm0WEBz WobC2GPP/+LYGCgc9p0b4W29BxSsJDRzdZkQQY4rX1jcSlH+JHPbTi7wuUcHAvJd5GeExg3h yk6QoOdRCzhZiaE/n9BCpC48T8nk/nOHuGmYAL9EngZbRd+Tys8gg5Ulec8g4p56fC0GArIs t7pyyHlEAbNNwVcbCRMs8pvlDs15K6p4G1B4ARkDRx2lAS2e0c9Xcp3yZ6ZdxMUcqEMdsamS uDKyq2O/2+x13/B3fv8z94X2mVTKlLjFVDmZkh+AsBOsTAbzsAG6Y4pNeJ0VKtio27hc+ada jl6ncfYpQ8BZsUgkQmGOvVSO3kW0aZuoNcrLZUj2CA6IoKvn3bEmp1T4E8K0YIw2sUsHmFD7 cwkARMGKT+Fmsyy2omCc7w57igjBJGD0II3nFhFlWucNtB/BJfJTuPN+MNS2yo2ioZWB/HCa sEFaD1pKhPdfxlIPVRRA5U79AuqriCnL3sE9xTI+uxrvgA/zyQouFTpGMDSddGQA91cg26Tp 37c/nS/CRYfXDCa4WPcqyL13beXxUsXXqojHeCIy8R6uGa02082OicxWlqZ+MeQ3xvWt9V3b hZ8FjAVhbg/8gmnQ8fwWzW8oWWYpVgMVtxICeo45QqRjK3O7G6xGWwsXjNHLts8u6ceRzMw0 USSt8j0HjEpu7qQIU9x7Z+RpDK2fDMTdGkLYHdeSRNfu4W+5oYukhjIU9BvVravicH4Ei3xx DbMqzUig7IUjogA0KDTEU37vg9Ab6PhFmYdjjg7lEr/hu+lTOZJv7CV1GU= IronPort-HdrOrdr: A9a23:U1b0UK0/IkiRgDlMBhVIAAqjBH8kLtp133Aq2lEZdPU0SKalfq eV7ZEmPH7P+VQssR4b9exoVJPufZq+z+8X3WByB9aftWDd0QPEEGgL1+DfKlbbexEWmNQy6U 9hGZIOcuEZDzJB/LvHCArTKadd/DGemprY4ds3Vx1WPHlXg6cL1XYfNi+rVndYaSNhHpQDGJ +V9qN81kGdkSR+VLXcOpEdNdKz3uH2qA== X-Talos-CUID: 9a23:lZ14xmxNz7SmkZjwEh55BgU0OZs6cnDF/Ev5AET/JmB0ZrmPcmaprfY= X-Talos-MUID: =?us-ascii?q?9a23=3AIGLbTA2RwbzH3TOmDExKlSS3/TUj0q3zOH03ga0?= =?us-ascii?q?9nNSnEB5KHDicrm2Ja9py?= X-IronPort-AV: E=Sophos;i="6.00,247,1681185600"; d="scan'208";a="111813000" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=dkI5xGdv0NbGyVtksVHPFKqv8BUC9eRA6oRC2oL6jWGcZQRKcMX9HgHpxKi0kT+syeztVE7kARDP7pNYp6jp/l8MbTrh6HxVGrRc1ZYo/rHabRZZIDmceG3i788bAkCgoKGPl9QfFnXSVdOBInwzgLD/UW6WYDQMZFnGnYY0WgAmOG+ITjGHtBi5+Y0vH6wdl4aUuHK68UQ0r0V4+o/OhziM/PtpzizlG8wt6jLvnUlWXvUvLsR2KNjWtiHMGqQkGsWkIcRulgMSZs5yey8KDjr0qogpCL1rijcBV5nmp4ZnM1Sz/nMw06JKtnD+NagvASuaG1FK2ni9qKyRWSF1UA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=mEbdhEtUGe5VZzMlFSg0aCuqqcHueFD8gRJQ93XBhdU=; b=ckbFGY9iBiBFqSTA6BVTyrVEXofYlVtVivJmG8OqQTzLNcIGOkEzOFi1drqatIJ00TXyDS4Mj6+7q3YHRfErXOI1Pxo1irrw8W42sptd0xpXJb6dZ4BDK7IwJtNMHyl7WzeLZD/S/tyOIIuAB8jQQ+TluaVZtYP4/dOt5XwpkmEgeQYb08n8+bdWanEuWNBWuXFiMYCEZgPoUUy6J5ZWI/R0TH1KVArE6ft2a5WTr9ECXGl08ADnsAtJ3uVub4cfSdXLc8WMQQGrRD4RFiyjnjT4rKKgr1Wg+tj+z/3T/ck1bgH/Wx8WZoVDF2agBzu+OdVWWtiNwfQsKuYQe2/qiQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=mEbdhEtUGe5VZzMlFSg0aCuqqcHueFD8gRJQ93XBhdU=; b=ajoO/lOHGyoY7ESMSC4B0p7an5b+Aq4gGpDVvugp7SkIN5rY1RhSiZaXk6xQTKf4fDbsRxOoXBoYFhKDrKj5dUjxZOlN6hTRV0OwDbih/6eNdi3t0oNunSSsX4gv/YxSBzzLIhP2IpVX3K1LaYHp4ibpQH4DS49odHU2DkyzLEk= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; From: Roger Pau Monne To: xen-devel@lists.xenproject.org Cc: Roger Pau Monne , Wei Liu , Anthony PERARD , Juergen Gross Subject: [PATCH 01/13] libs/guest: simplify xc_cpuid_apply_policy() Date: Fri, 16 Jun 2023 15:10:07 +0200 Message-Id: <20230616131019.11476-2-roger.pau@citrix.com> X-Mailer: git-send-email 2.40.0 In-Reply-To: <20230616131019.11476-1-roger.pau@citrix.com> References: <20230616131019.11476-1-roger.pau@citrix.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO4P123CA0507.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:272::17) To SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|SA1PR03MB6547:EE_ X-MS-Office365-Filtering-Correlation-Id: 20f7d8d5-c85d-48e8-55e8-08db6e6b215d X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: dlbjJVXfHqMLGeEyGIi32Q3z8USYVioebmIbJ+WXwACh67PfGS2kVkbw1TOAW9Wn3m3/1uOqsO7PX1aVdHOODaZhNnYpr/7jfAgm7Ln1BneogWI89gdQBN2d4Tk+v7sBPNa6PpcMEiuXlJ06DmeiUsquU8lIGd6KzjucsJAARDVAnZsPyocVyko4cYe+4wmZnKSalGC6YgTnFqRvkr3uo9CtpQjR4VqFhj9wvJjLeHSiNpILn8gunLmfOCLOMprSFKgxAwWqz6N6CW7KcXfdAz6t2n/K/nPpbcx9jDyEwlLnIYNMv4XeV2/r9pa1Koagx8CO/pabqu6Q/dVtMtWi/0xo+zNt/fFRgXvX08Le9dzbiSaZVbw4aDLNKfLcwd5TB7t3uFkgCj4gdhCV3j134g/Nnn1ILQBsdWOIiZ7SzC9jDR6RtA1VNE6517A9/LZJWxJrAA9f8qjr/cQDAo3vgnk8TdlphHwO0UQO6Wr4JmZZivdIDlKxWpuVdLO0Cl9MGdPf6s3JJF1XmVmo+x0Gc5u0E0YT6Pem38hx4RMEgPGUVzniQjOA1+gPOQvpc27P X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(366004)(39860400002)(136003)(376002)(396003)(346002)(451199021)(86362001)(38100700002)(8676002)(5660300002)(82960400001)(316002)(8936002)(41300700001)(66946007)(66556008)(66476007)(6916009)(4326008)(54906003)(83380400001)(2616005)(186003)(36756003)(478600001)(1076003)(6512007)(6506007)(26005)(2906002)(6486002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?aXZVdVhHVnZiWjd0M0svaS82TGxPbDRnZy9NZnlIWDFqNFA1SXpJNWZDV2lj?= =?utf-8?B?eklzbEMyOUdKWGhnUUhLbytHT1pYYUZ1blE1dWNOdytKL0Y5cVMrc1RmNHhV?= =?utf-8?B?RnpvRXRTa2pnTk9ESXB4WFVmMEdXaWVtTHd6U3JoSWxrM2lRejFvUUxtUTk4?= =?utf-8?B?bTdxYUg2ZVBiN0MwL2Y2cFNrdWhxRUtVbXJTSThnZFRqNHVCT3dyVGhzeVZn?= =?utf-8?B?K1VBWnJ0Tm02WFRnMTdmZzJJeFFhck9weVB0UjlqN1dGUTI0cC8xakt3aGxr?= =?utf-8?B?Z29TRmhIM0g0UTdpN1FIek1vbVg2UjE4dktoUFhrTkxOdC93NmRaaFIxTzAx?= =?utf-8?B?bEVoeDdxdlF6VkFyM0RTRDE0QjhOL2MvYVQzZzBBNmhYaXBDV1JXMmJhQjJG?= =?utf-8?B?c1gycmdJalhnQWRLM25TcktyVVRQYjNDMkc5NmhiOVFsWWo4aXVuMkp3N1Qr?= =?utf-8?B?enRnbTZQbkczOUo5WWVQekZ2aDE5S3cwSFFYTE9zbWMyRldudmkyMlNNR3hB?= =?utf-8?B?MHZocHB0NXMyRXhyY3VYUW9yVHhxSkRUTEQwdjFkVzluN0pWdHZPa1pDYjlG?= =?utf-8?B?UHVHMUhSRitYcFNJWkpoZTdXQi9nVEY4S3puL2MzeFZVamVvdFBTUWczb0lS?= =?utf-8?B?Y3B2TWlVUDQxM0hheDBFbXNHYjgvRjdoK3BTZVAzVERLVk9HZTRvVE1MOHpw?= =?utf-8?B?RmFyUDdPUE9nalJ6Yk9jbDBHQmJndG13cTFmRCs2QS9BZ2NmM3NraGJINTNn?= =?utf-8?B?ZnlaTjV0S0VTcTV5bUNrVmZ0VGxKRW1TTjgvb1RyS2wzeHFEY1JXK1hLWTZV?= =?utf-8?B?LzdrYW5YSU00OGovNFBxaDlkOW5TZ3VBRVIwblk4NExhYWFqNHRnVFAxNEVm?= =?utf-8?B?N042OE1GVlEyK0oydkNwWFpVdHkyVHJSbW0xNitjcTVNNW5Oa0lucTIxdGxB?= =?utf-8?B?N0pud0dPeWRDekJ6SVVSS3ZVOTZ5QWd6bEtLZ0xXd0tzYUlTV2ExcWRWTmI0?= =?utf-8?B?WDk0dGV2RnIvUnhpMkFMeDUxYmpqUkxTZnlIeHNLTVNFYXlQS2paQjlTVmhy?= =?utf-8?B?RXhjWFBsU2djQitkMUVlVGREdEI4d3ByMWlWbEZ5czIvTzRzbnFja1RRUUZM?= =?utf-8?B?MFp6S2F5OFRGWXZYOHpOYnhUS0lNL2I2WTZFdWU5ZmhOOXpTdlhrYUxyNGdH?= =?utf-8?B?YWpFQUQ4a1ZZSUtsaE9nTnJRQndkazkybDFBNWQxREtyYXl5Wk1lYWhRUFJH?= =?utf-8?B?RXVRMktBSkM4UlFzdUJIR0xZV2czUGFlRlViTmowRHFFcEd5bjJ2M016bFZa?= =?utf-8?B?VnFnTTkyWEF2MzJ2b0VYMjlmK0dyVGR2cnNsSHNHajluM0VEQW5ZMEJGMFdS?= =?utf-8?B?T21UN3VkNVMvMGNlcHJZZXRrbkc1Q1FKRlptTjRGaUI5ZDhhTU5VT0NpcHBI?= =?utf-8?B?eDMvRzNMNzE4dEIvZ0xtRGFTUUJxM2tCdk93RXE2MUQ0ZjduL0xDMFd4WTll?= =?utf-8?B?RkJzcEJGZ2FMbC8vaDltWEVibGVDNlZoV3p5R2x2d2ozTk1YU1Y1MjVIYlFE?= =?utf-8?B?TVh4OUYrc0tUVjFmbU9PRVdGQU9TK0c1WldVNE1aYWQvVEVKWmg3RDhEUmhv?= =?utf-8?B?WEhXd0ttVks1RThYRTROSDAxaFJCRG15dzJmZEMzekM5Z1d1S1Znd0ttYXNx?= =?utf-8?B?TGFNbU8zQlJCeVQ3N29kQjJhSlA2VloyejdlNWszNkJGaXJaL1haWERacll5?= =?utf-8?B?a0lCS2Y1eVpTejdlTWpFdmN6d2dDRXdkN09vaFpIU2ZGNmFWeDlsTHhjSlUw?= =?utf-8?B?cGJIeEI2RlcvakVuZjQvb3JDbDdHK0o0QXk0Yi8vWitpVlBMMThkOWw3TWI5?= =?utf-8?B?eEs1d2FpME5uTHcra0xqWEk0dUw1K3JUNldkWEx0TDRlTGdPdU5YN3Qxd1VJ?= =?utf-8?B?M1FyVmNxbUU0a3NxZG5hVVI4VHQ3S2ovTUFEU1RWVGpzOG13TllxQkVDUkJ2?= =?utf-8?B?V1VOcFROVm5rVnJuYlk4TUIvUDhublFTRVd5MXJwVXl1ZENYRi9qbzVsdjY5?= =?utf-8?B?bmxuc0ZZMk1XUzA0K3phSFZUdXdFaVBoVmJqWnhJZEI0VW9hS1VCS2g1SU5X?= =?utf-8?B?YWNlaWppQnJkZHg2VE9weHlqNjNLWHFpcWNET3FoZk5yckJ4RmR4Q1pBTWVl?= =?utf-8?B?dmc9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: 4lGw7q33OkS3ecxKh8xGZu8+QsZSwLjxNyUEdm7tNXqUtuaRF6Ubl22qztVAfV9BOJT0zL4gkAQZbCeIKKnv6xygJQExM3NKKmn83wyVfgKtqdjUHnHmUQRZYO8Gg9Yy7lgiaOdT+CgyidsGorotRrLOWWer51G4oedWJEzoUu4YCZsUTwiTBulnb40kquV9v4eKg3fg69QPukksn5Ixocq5COKfy2iqZhU2UuSZSwAgxkN+LFoSmYr5hW9P2969Fe9ZTp0w1ErD7U8j/j3hO3jSHU5DMrFmU2HrTI/1kCXyQkVOCuMKmioEUpyAgB3SQhR3C267EGoq2loq61RJF7MBUVm3wsTxClVrrEDk9hmnY+zQSQAgecYE99mPOLZblJ4w1+lNM1tTPHmFcquL2On4X4hD1rm6gee3gjfLO/vsCKIradVZqjH9Ee0GUAkb8Px7FGR/AE656AunUjjJAghTKTqrOx6ecOdXsA5vz9GK5f+wdej5ur71vL4E5MytaHGwdC4gd//qeMRe2iM1YV/S7O8C7/hnZgxKe2ER74/ujVj+PqtJr87YNoUulWv2b9OWYX+peU7hJesR9tccLLY+cWVhMFM+sVh0wYvtaJ1Pj2FFTk3JvtyUphvRb63iYpftjg6I/y/2WvC/cinduG8CLG1Si4DpHHTgh3YiREpGVWq2KSEQViu7PMK7PB1umjRndkvsuAHU49oQpkv2JGRU0keU4Q0bGh6zwtip2abBUStQ3xG0izX5JdXHsbIs66IOEIVw3FKp6KjPqyouZxcWQMFFb1i41LCqkZQx6/yP05LZhvlWysdxz8r+uCZV X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 20f7d8d5-c85d-48e8-55e8-08db6e6b215d X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Jun 2023 13:11:00.5840 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 2GIA6ZLfY9G1TYjPOQpQmFiGtpA6e+T7AaySNbkFEwfLoQLghYJPFnSbQQW9TxIl+tvliIF5HumtovwU68n17Q== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA1PR03MB6547 Introduce a local xc_cpu_policy_t and use it to simplify some of the logic in the function: * Populate the introduced xc_cpu_policy_t with the current domain policy, which will already be the default for the given domain type. This avoids fetching and processing any default policy. * Use xc_cpu_policy_set_domain() to apply the adjusted policy to the domain, thus avoiding open-coding the policy serialization. Note that some error messages are removed, as the newly used xc_cpu_policy_ functions already print an error message themselves. No functional change intended. Signed-off-by: Roger Pau Monné --- tools/libs/guest/xg_cpuid_x86.c | 51 ++++++--------------------------- 1 file changed, 9 insertions(+), 42 deletions(-) diff --git a/tools/libs/guest/xg_cpuid_x86.c b/tools/libs/guest/xg_cpuid_x86.c index 5b035223f4f5..67e0dc9b4ad2 100644 --- a/tools/libs/guest/xg_cpuid_x86.c +++ b/tools/libs/guest/xg_cpuid_x86.c @@ -431,10 +431,9 @@ int xc_cpuid_apply_policy(xc_interface *xch, uint32_t domid, bool restore, int rc; bool hvm; xc_domaininfo_t di; - unsigned int i, nr_leaves, nr_msrs; - xen_cpuid_leaf_t *leaves = NULL; - struct cpu_policy *p = NULL; - uint32_t err_leaf = -1, err_subleaf = -1, err_msr = -1; + unsigned int i; + xc_cpu_policy_t *policy = NULL; + struct cpu_policy *p; uint32_t host_featureset[FEATURESET_NR_ENTRIES] = {}; uint32_t len = ARRAY_SIZE(host_featureset); @@ -446,17 +445,8 @@ int xc_cpuid_apply_policy(xc_interface *xch, uint32_t domid, bool restore, } hvm = di.flags & XEN_DOMINF_hvm_guest; - rc = xc_cpu_policy_get_size(xch, &nr_leaves, &nr_msrs); - if ( rc ) - { - PERROR("Failed to obtain policy info size"); - rc = -errno; - goto out; - } - rc = -ENOMEM; - if ( (leaves = calloc(nr_leaves, sizeof(*leaves))) == NULL || - (p = calloc(1, sizeof(*p))) == NULL ) + if ( (policy = xc_cpu_policy_init()) == NULL ) goto out; /* Get the host policy. */ @@ -470,26 +460,14 @@ int xc_cpuid_apply_policy(xc_interface *xch, uint32_t domid, bool restore, goto out; } - /* Get the domain's default policy. */ - nr_msrs = 0; - rc = get_system_cpu_policy(xch, hvm ? XEN_SYSCTL_cpu_policy_hvm_default - : XEN_SYSCTL_cpu_policy_pv_default, - &nr_leaves, leaves, &nr_msrs, NULL); + /* Get the domain's policy. */ + rc = xc_cpu_policy_get_domain(xch, domid, policy); if ( rc ) { - PERROR("Failed to obtain %s default policy", hvm ? "hvm" : "pv"); rc = -errno; goto out; } - - rc = x86_cpuid_copy_from_buffer(p, leaves, nr_leaves, - &err_leaf, &err_subleaf); - if ( rc ) - { - ERROR("Failed to deserialise CPUID (err leaf %#x, subleaf %#x) (%d = %s)", - err_leaf, err_subleaf, -rc, strerror(-rc)); - goto out; - } + p = &policy->policy; if ( restore ) { @@ -643,19 +621,9 @@ int xc_cpuid_apply_policy(xc_interface *xch, uint32_t domid, bool restore, } } - rc = x86_cpuid_copy_to_buffer(p, leaves, &nr_leaves); - if ( rc ) - { - ERROR("Failed to serialise CPUID (%d = %s)", -rc, strerror(-rc)); - goto out; - } - - rc = xc_set_domain_cpu_policy(xch, domid, nr_leaves, leaves, 0, NULL, - &err_leaf, &err_subleaf, &err_msr); + rc = xc_cpu_policy_set_domain(xch, domid, policy); if ( rc ) { - PERROR("Failed to set d%d's policy (err leaf %#x, subleaf %#x, msr %#x)", - domid, err_leaf, err_subleaf, err_msr); rc = -errno; goto out; } @@ -666,8 +634,7 @@ int xc_cpuid_apply_policy(xc_interface *xch, uint32_t domid, bool restore, rc = 0; out: - free(p); - free(leaves); + xc_cpu_policy_destroy(policy); return rc; } -- 2.40.0 From xen-devel-bounces@lists.xenproject.org Fri Jun 16 13:11:15 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 16 Jun 2023 13:11:15 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550169.859101 (Exim 4.92) (envelope-from ) id 1qA9EP-0002Iu-F5; Fri, 16 Jun 2023 13:11:13 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550169.859101; Fri, 16 Jun 2023 13:11:13 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qA9EP-0002Gd-7X; Fri, 16 Jun 2023 13:11:13 +0000 Received: by outflank-mailman (input) for mailman id 550169; Fri, 16 Jun 2023 13:11:12 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qA9EO-0001xG-Ed for xen-devel@lists.xenproject.org; Fri, 16 Jun 2023 13:11:12 +0000 Received: from esa5.hc3370-68.iphmx.com (esa5.hc3370-68.iphmx.com [216.71.155.168]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 433aae63-0c47-11ee-b232-6b7b168915f2; Fri, 16 Jun 2023 15:11:10 +0200 (CEST) Received: from mail-sn1nam02lp2048.outbound.protection.outlook.com (HELO NAM02-SN1-obe.outbound.protection.outlook.com) ([104.47.57.48]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 16 Jun 2023 09:11:09 -0400 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) by SA1PR03MB6547.namprd03.prod.outlook.com (2603:10b6:806:1c6::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.27; Fri, 16 Jun 2023 13:11:06 +0000 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::ab2a:a298:bacb:db47]) by SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::ab2a:a298:bacb:db47%2]) with mapi id 15.20.6477.037; Fri, 16 Jun 2023 13:11:06 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 433aae63-0c47-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686921071; h=from:to:cc:subject:date:message-id:in-reply-to: references:content-transfer-encoding:mime-version; bh=teyfxT690T5FSXoOSSniTAsDc/olb8QuZGXjP4dniKc=; b=CGKY/AbjWlk+XyFxU2SA4J9cr9q0faEMqQHyrN4F2ANJilXkjP//jx+A UfXoDv6Oj3s+TDrc3l7sCmp0mJU67IImw+3aU3e85JBSBdja3bokuptLk ln2bGYbbpOWdzdvgOwyqH5Ib/GK+YekeZ3HARtTFsh0R4EUIsWvg7qF3T Q=; X-IronPort-RemoteIP: 104.47.57.48 X-IronPort-MID: 111813013 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:U5Ei5K2/CKI28OF5AfbD5fRwkn2cJEfYwER7XKvMYLTBsI5bp2AHm 2EfXGqAMvuCNGaneIhxbIm1pxxXvJLRz9NjTVE5pC1hF35El5HIVI+TRqvS04F+DeWYFR46s J9OAjXkBJppJpMJjk71atANlVEliefTAOK6ULWeUsxIbVcMYD87jh5+kPIOjIdtgNyoayuAo tq3qMDEULOf82cc3lk8teTb8HuDgNyo4GlD5gJnO6gR1LPjvyJ94Kw3dPnZw0TQGuG4LsbiL 87fwbew+H/u/htFIrtJRZ6iLyXm6paLVeS/oiI+t5qK23CulQRrukoPD9IOaF8/ttm8t4sZJ OOhF3CHYVxB0qXkwIzxWvTDes10FfUuFLTveRBTvSEPpqFvnrSFL/hGVSkL0YMkFulfOV4Wq MZIdT83bR2bu++ckaKrDeh8mZF2RCXrFNt3VnBI6xj8VaxjeraaBqLA6JlfwSs6gd1IEbDGf c0FZDFzbRPGJRpSJlMQD5F4l+Ct7pX9W2QA9BTJ+uxqvC6PnGSd05C0WDbRUsaNSshP2F6Ru 0rN/njjAwFcP9uaodaA2iv137+WxnuiA+r+EpWRzaZOkWOf4FU+JycQbV/4pfSn1GWxDoc3x 0s8v3BGQbIJ3FymSJzxUgO1pFaAvwUAQJxAHusi8gaPx6HIpQGDCQAsTDRMddgnv88eXiEx2 xmCmNaBLSNrmK2YTzSa7Lj8kN+pES0cLGtHfildSwIAu4PnuNtr0kKJSct/GqmoiNGzASv33 z2BsCk5gfMUkNIP0KK4u1vAhlpAu6T0c+L83S2PNkrN0++zTNfNi1CAgbQD0ct9EQ== IronPort-HdrOrdr: A9a23:NREI+aMvDMppAMBcTgyjsMiBIKoaSvp037BK7SpMoHtuA6mlfq GV7ZYmPHDP5Ar5NEtOpTniAtjifZq/z/9ICOAqVN/OYOCPggCVxepZjbcKrQePJ8X/nNQtr5 uJccJFeaDN5VsRt7eH3OGheexQpOVuaMqT9J/jJ3EGd3AMV4hQqz1XJyy8CUNMSAxPFfMCZe GhDpounUvHRZwPBP7Lf0U4Yw== X-Talos-CUID: 9a23:Nsyf327hWkKfKfBvktsszHFMR/p1L3Lnz3rIH0KSWHZ5D7yFVgrF X-Talos-MUID: 9a23:pdAEUQpWGMHIQxvb3bMezxhZbON53aiIMW0iq5M+v4qAODIuEDjI2Q== X-IronPort-AV: E=Sophos;i="6.00,247,1681185600"; d="scan'208";a="111813013" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=IUdK0hnCDmbCF7DT+bpunIApCOc7L2nks6ccXDZ5fE8Ex7u57Jni1PRWhZ9GOCttg7+ym9iLqXWEQ+S8xavQuiGFhQmJXjUyhDSJBGrZsGuz2yxiBH8kjzcr4IIycZ88jlFup6Nl6QJV2rZgH4v1YpyyPHGB7KPuHrjNFzcboKJbnbWMn3MJYI7womCAnMlMsqy8lFGxdaXRFQI43Opz53t231JDxJrrvg6ium5JMJBTpDd1hR1Oqe9Fxk9B0KPwB3fOIu0WJW/hjHfRPXieWEQA2nhQag2NBoP6ucs2KeYIFoQP2w8F3KxTJAFKDXdzObsF87wFbFebBjB4x9DDFg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=IprQ04Jt1eHCGLkFgtgI4smULvZWNBrzC5dKiJTVpfU=; b=jUiiBMO3XrVEpvq/8n7WEItQyt7zUwF+BjF/SMP2D8W93VJq5G0QimUV6zttXnIRJUb3s3G3aTEaY9fAvAPMlmN1zJkDehBeZDXR/RUL1fzRw02RLcUtYp4tZ2WUxI1pN0hm9TuXlK1UXH0GfycOKE3CwEmdlefC9Jz0GErO/8CO+Es+ETNuylwgxOphbVeNhx403YcrOuo8x6XDDXi6gsMbeCYdlZ3SbGPG8aghaix+/LmDgaA999KZj3VYabiDwbXiPiTyqaNg7JJtvK3y7HrYBp3S02a3T6ANmqPxy2itjWTFMksyQCpYaIFcZpmKXCSp0K543AnK1cT7N2WiqQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=IprQ04Jt1eHCGLkFgtgI4smULvZWNBrzC5dKiJTVpfU=; b=Z8L8B5rYCJxIM04qi+ySteGU4sP9uGmKcHHS3YIsg3LJqVqHQquATAiwpP1y3bjDV07xsNhskkdQ9SIM3wHG+aobe8qGpHhkztt/krR4s01YYz4zPHVRk3gcyYvhEKN6dB87PufClZRfH4k/WW0WwXOTGGwjtrVbHHNt6xiK3/s= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; From: Roger Pau Monne To: xen-devel@lists.xenproject.org Cc: Roger Pau Monne , Jan Beulich , Andrew Cooper , Wei Liu , Anthony PERARD Subject: [PATCH 02/13] libx86: introduce helper to fetch cpuid leaf Date: Fri, 16 Jun 2023 15:10:08 +0200 Message-Id: <20230616131019.11476-3-roger.pau@citrix.com> X-Mailer: git-send-email 2.40.0 In-Reply-To: <20230616131019.11476-1-roger.pau@citrix.com> References: <20230616131019.11476-1-roger.pau@citrix.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO4P123CA0035.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:151::22) To SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|SA1PR03MB6547:EE_ X-MS-Office365-Filtering-Correlation-Id: 3b379771-0332-4ea3-6d0d-08db6e6b2514 X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: lU+kIk3HP5SVfVtTmfWsai23AsV4bHQ9yUB+k7MrpLcrgU7nDDCujlT0p+I7f/n7f7Fk9obU8sDNDisdLBTUutj2g87MFS0uWr1zdNSJt9oCQqoRh3bkM9fU+CqB7O/IV8yARjjnBdva4ERkef6ly9CAzsn/zKGMsOnosdZ3Jf3Caf6rv4WchkeOjstxiYknQAza8804htuhjvqDXEMnGAZ2xOns/Sja6ncZgXBebRrBMNLIKOUlwTSCCG4W41WOqdP9BrO4FPEV8okcG4cs90hRcWQZLza5oMVKfj4MTyfbNFAP46vSF72OUJfcgsvUY0AHHjiwzGTky8mEmAW/+R6nJM38F48+21LbT8oH8V0JDN0IIoRGGOjk9mx63tIBPLfW0tKuCBxvIbFN0s8YSjCxgI0uLMwEOdJ39igr8qBtE3bdZvlVtv44aC3IKJWp/IjagPEz0c0RKqHbWz3RZWIvD42sLKie1u/QLzNcQtYRQ8V7frqcmL1QTyNboG418pEXn0D5PKu7cL/ZQtNCnx7TAwpXyJTEy0+nPmoYzoZwUXpT1brG9A0fdPRFFCR9 X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(366004)(39860400002)(136003)(376002)(396003)(346002)(451199021)(86362001)(38100700002)(8676002)(5660300002)(82960400001)(30864003)(316002)(8936002)(41300700001)(66946007)(66556008)(66476007)(6916009)(4326008)(54906003)(83380400001)(2616005)(66899021)(186003)(36756003)(478600001)(107886003)(1076003)(6512007)(6506007)(26005)(2906002)(6486002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?WGcxamMxT1ZQbXlCMU5JSnJ6WUFvaUppTDRXY2pZNzZZZHhIaUlQRktuenpP?= =?utf-8?B?MktxLzJtcWhDU1crSGlORFc5bjVnOWlRanBPYVFDWDZEQTJxSkNyY1B0WC9O?= =?utf-8?B?b09rRHhwNVgvMnhhYWZMMWZrM3lvQ2svcktzZkgzTkMwMm4wMmgybUk1ZUhN?= =?utf-8?B?S1NadmhDVCtBMjUxdWNQSHlVUlp5UFdhZFUzdEVKTG5FWE83MDJHeUVySm9v?= =?utf-8?B?T254bW44S2VJZGVlQlV4cFNKd3dyVXpnZWFKR2pTNEFBWGx3K2JCdUJDREZM?= =?utf-8?B?d3hKWXJXYTBJaFVUQ0hVMmFtVGFVWDFBTGFiKy9sNTlURk00Q3RBTzJIY1RL?= =?utf-8?B?Q2lqMC96bjVYR05zT0lPTEtjTEEwV1dFNnBZY3IrUkw3TElHcGFYREdrb0ZY?= =?utf-8?B?TlNDbXZnVkJKUzU3dFdnT29CbUJYVitWMTd1Q2hTWVQ5NEQxaSt4cjhHeUt2?= =?utf-8?B?L3Rzc3Z3VXNRRXlWcWIrSnEvU3FEYkh5cVB6cDFZQkNaRnlQNnlQZVJYRlMz?= =?utf-8?B?MFZCY09vYjZtRUtpbjJRMzBIbUNKZmE5TjJQSENIc0s3YlV3cURBbnZoV1J5?= =?utf-8?B?aStBeElDQW5WOXI3Q2lkMis4N0p5OUpzd0gvT1hleldzN1VoV1FrVWNjaGhY?= =?utf-8?B?a3JaTFhRU2FsYVFyOENCZTF4THcvdlZLSmxURk05emdES3lOeXIwZzVIYTN4?= =?utf-8?B?Zm8rVE1hOFViZDYxaVZsOWVidkhKK2xBVkMvY3l0dFdLdUdmT3AyUDJack5j?= =?utf-8?B?UHMrSW5lc3AyaldWY1A2NEhwSGZvUnJYTHFpUzFaREFUdGFuRFpGZllNeDR6?= =?utf-8?B?NnVsNC9wTkQzYUpEeEoyVVRXcmxwNjBZMDJUVHZ5bCtLanVVTGREeGRYTUZh?= =?utf-8?B?QjMzaW12T25Pc29FUnlKcVNWemNMWHFENWZsZHJkdnVhTEN6ckVuYzAvQk4x?= =?utf-8?B?aHdhbmw0d1RzZlRKc2I3TkpKUFNZd0FzYWhOejFUUkJrV1B0VVY2Z3VmSklI?= =?utf-8?B?K0hleWFDU09yTkdidUxySFpVQ3J5Y1J5UkhYQk01bmtGZXdFdlJZSE9CVkJ1?= =?utf-8?B?ZzhnbFgzalBqeS9XTGpKMTJMQkRiRU1JMnAvZUVsWXQzNXdZSUQra0hQeXVk?= =?utf-8?B?TkRnSUNPcDNUTzFuUW1pQ21GeVJmUkFNdHM1Tysyb2JJajFxQjRUL24yamxu?= =?utf-8?B?cFdSTVhvQm9teTRaUVpoeGtlTUlEYjkycVV1R2FHaURDL29MdjBnVXpGY0tR?= =?utf-8?B?c0lFd1prMXkrM3doNzY4a0t2a08zRitRZmIvVVJJWlczeGVXUHRlcUUvaU9I?= =?utf-8?B?VHdaWS8zdjhRSGtCUjJwaDU2T3dXWndKVDNxS2Z1ZWxoYkpJS0ttN2k3bDVS?= =?utf-8?B?OSsvbFFyRlZjQW5pekVrbFFndVZrQS9NcTltT2o0SkRTNUs3NjJGdHRyUG5O?= =?utf-8?B?QkxtT0lBYUdkOTc4VmJjQ0kwNktQUU8rbjB6UVhGZWp1OTR3SHFXb0xpTjRW?= =?utf-8?B?Y0VnV0drNGkwVlRIdjE1RDNQQlQ3UXE3VTJHWENCSzZldzdRUUw4K0oxME9s?= =?utf-8?B?U2d5RWwxV0JzVjBoUW44Z1FhYVhSUjRGalRMa0dWT2FLUTFtUFNwdmQxclg3?= =?utf-8?B?NW80cUpmSUFRbWlrRHNaWSsyN3c1VjZQWFV4UW9iTUFNdkFvUXEyTE1EclRS?= =?utf-8?B?eDZvcXo4NVNxMExzUnQ2VFoySTA5K05yTnl0OE1kdEJ3S0htZm05aE5ybWl4?= =?utf-8?B?bDd5N2lnY2lpUkI0bjRnOFhzQlp2aDZjaE1jQURBaCtvSGM2aERtRDMyVXdT?= =?utf-8?B?Y2VmMlFZTmg3ZStWb3dyVGQvelpoUWhCVG9pWW04bW9ySjZaL2pIK3hxYkpX?= =?utf-8?B?V2lXeTVKVG14cm1KbTQ1SXREZ0gxY0NZK3U5VFIwU3hrV09OdHpyK0xUSTFj?= =?utf-8?B?SjBsQzE4b0NUbjd6cFNuRTE0V0hEamMrUDU2cEtSdlJxRnhTb2ZPOFpGc2ZW?= =?utf-8?B?eG5lVEhOOHRnTWxoWjVZeUlaYTlUYTFrdXJMdm05ZkJ6Z1VKUzRpSDRmc2RP?= =?utf-8?B?VGRWVC90T2g3Y2M3bVVienZpdE0vTTNPdVhiOUpCcWpJczB6RlZYMlZDNHRm?= =?utf-8?B?ZkE0M1BYOUhrZ09CVU1LQ3NKb3l5Q3ZSUmQvR1JFQWNsblJEcjBMVTdpaWdF?= =?utf-8?B?K0E9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: iNchi3aEL/qSKKfoewOi/eDlMAuq9RXJPp7GUSXhr3WwqKk1HtrollHr9cNgwGSHFzOoRsZRJsiUwUJtXvwZ21puiB/Qp5To4NgnfmL6rdNnRslSluKzRhFb0McZmkYGxoNi+jm14EueexrXCj9YFc3DKeeKr42q6NMksmnjtBQm4/DzjrXIRDJEpB5s8HDwWkSADrsI/2GpQOgO2b0ZQ5eZVzldsy7ytRCbRVJpWWNH1Iko0+vqe9C7AArhPQnVdldwgb+4S4aNJqCg9c4NDFUr0SqhUrj9gOHscQYghsRbdqVb0DQS60EhCqsX0WNJUYqF3+ROeN0YkQAceDNPG8poifNnbDSaj9GuwGP8aglCFzSgA9njir0T6kSp4HGxkjTAbKRG8yPLA5ovPDlJvTnzvWM7jNw99pos0VDjrSds2EVkJSJIsZZ2iKTe9ItNs1/lJjj+hmFwTrA3vpto6HLCYG4Qu11PV/3h8yWn6DNP+U+VoARSFa7nRSD4cB+uKpfeq2buzPjHVww3VOz9PnNAljMWsRxSb1/vkR3ilfNFBWh746ncNd1oTV89rcqSHDWd1XcbjwCSjQttQPKfBZI9O7n/TWNJRLSZJOfyDuHdxjGcsv/uxG9lOVk3lVoITnLbSQQSmUb3zHJ3oWsFDXEygnkxkqRsxeMo4a0ZJ0sTRnPbDLvj/uthseV2vEby/tK5+gzOyeL+UUAJrlDSX91OlEPBUpri8VzGX3NBMPGdQoJxlogRaYbXHcfkaLlT4IEXXxQJeB4eeH/IaxYR0LGXe7PTc1aeyfva0qwE4JdZI5OMe6nPtMs3TStt1EK6 X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 3b379771-0332-4ea3-6d0d-08db6e6b2514 X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Jun 2023 13:11:06.7341 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: dWN07rhwedP81Y07Fy2bO/Bid2hWA5Lq8aGzDoIrZ1f96z1B8XKcUFxRUAFLK/MQ7hLmZB14wGP77JDxvDWjPA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA1PR03MB6547 Introduce a helper based on the current Xen guest_cpuid code in order to fetch a cpuid leaf from a policy. The newly introduced function in cpuid.c should not be directly called and instead the provided x86_cpuid_get_leaf macro should be used that will properly deal with const and non-const inputs. Also add a test to check that the introduced helper doesn't go over the bounds of the policy. Note the code in x86_cpuid_copy_from_buffer is not switched to use the new function because of the boundary checks against the max fields of the policy, which might not be properly set at the point where x86_cpuid_copy_from_buffer get called, for example when filling an empty policy from scratch. Signed-off-by: Roger Pau Monné --- Changes since v6: - Add more tests. - Drop Jan R-b. Changes since v4: - Rename _x86_cpuid_get_leaf to x86_cpuid_get_leaf_const. Changes since v3: - New in this version. --- tools/tests/cpu-policy/test-cpu-policy.c | 177 +++++++++++++++++++++++ xen/arch/x86/cpuid.c | 55 +------ xen/include/xen/lib/x86/cpu-policy.h | 19 +++ xen/lib/x86/cpuid.c | 52 +++++++ 4 files changed, 255 insertions(+), 48 deletions(-) diff --git a/tools/tests/cpu-policy/test-cpu-policy.c b/tools/tests/cpu-policy/test-cpu-policy.c index 301df2c00285..a11c8f067aad 100644 --- a/tools/tests/cpu-policy/test-cpu-policy.c +++ b/tools/tests/cpu-policy/test-cpu-policy.c @@ -1,6 +1,7 @@ #include #include #include +#include #include #include #include @@ -565,6 +566,180 @@ static void test_cpuid_out_of_range_clearing(void) } } +static void test_cpuid_get_leaf_failure(void) +{ + static const struct test { + struct cpu_policy p; + const char *name; + uint32_t leaf, subleaf; + } tests[] = { + /* Test for invalid configurations in the object itself. */ + { + .name = "Basic max leaf >= array size", + .p = { + .basic.max_leaf = CPUID_GUEST_NR_BASIC, + }, + }, + { + .name = "Feature max leaf >= array size", + .p = { + .basic.max_leaf = CPUID_GUEST_NR_BASIC - 1, + .feat.max_subleaf = CPUID_GUEST_NR_FEAT, + }, + .leaf = 0x7, + }, + { + .name = "Extended max leaf >= array size", + .p = { + .extd.max_leaf = 0x80000000 + CPUID_GUEST_NR_EXTD, + }, + .leaf = 0x80000000, + }, + + /* Test out-of-bounds checks in the accessor. */ + { + .name = "Basic leaf >= max leaf", + .p = { + .basic.max_leaf = CPUID_GUEST_NR_BASIC - 1, + }, + .leaf = CPUID_GUEST_NR_BASIC, + }, + { + .name = "Cache leaf >= cache array size", + .p = { + .basic.max_leaf = CPUID_GUEST_NR_BASIC - 1, + }, + .leaf = 0x4, + .subleaf = CPUID_GUEST_NR_CACHE, + }, + { + .name = "Feature leaf >= max leaf", + .p = { + .basic.max_leaf = CPUID_GUEST_NR_BASIC - 1, + .feat.max_subleaf = CPUID_GUEST_NR_FEAT - 1, + }, + .leaf = 0x7, + .subleaf = CPUID_GUEST_NR_FEAT, + }, + { + .name = "Extended Topo leaf >= cache array size", + .p = { + .basic.max_leaf = CPUID_GUEST_NR_BASIC - 1, + }, + .leaf = 0xb, + .subleaf = CPUID_GUEST_NR_TOPO, + }, + { + .name = "Xstate leaf >= cache array size", + .p = { + .basic.max_leaf = CPUID_GUEST_NR_BASIC - 1, + }, + .leaf = 0xd, + .subleaf = CPUID_GUEST_NR_XSTATE, + }, + { + .name = "Extended leaf >= max leaf", + .p = { + .extd.max_leaf = 0x80000000 + CPUID_GUEST_NR_EXTD - 1, + }, + .leaf = 0x80000000 + CPUID_GUEST_NR_EXTD, + }, + + /* Test fetching Xsave without present. */ + { + .name = "Fetch Xsave without present", + .p = { + .basic = { + .max_leaf = CPUID_GUEST_NR_BASIC - 1, + .xsave = false, + }, + }, + .leaf = 0xd, + }, + + }; + const struct cpu_policy pc = {}; + const struct cpuid_leaf *lc; + struct cpu_policy p = {}; + struct cpuid_leaf *l; + + /* Constness build test. */ + lc = x86_cpuid_get_leaf(&pc, 0, 0); + l = x86_cpuid_get_leaf(&p, 0, 0); + + printf("Testing CPUID get leaf bound checking:\n"); + + for ( size_t i = 0; i < ARRAY_SIZE(tests); ++i ) + { + const struct test *t = &tests[i]; + const struct cpu_policy *p = memdup(&t->p); + + if ( x86_cpuid_get_leaf_const(p, t->leaf, t->subleaf) ) + fail(" Test %s get leaf fail\n", t->name); + } +} + +static void test_cpuid_get_leaf(void) +{ + static const struct cpu_policy policy = { + .basic = { + .max_leaf = CPUID_GUEST_NR_BASIC - 1, + .xsave = true, + }, + .feat.max_subleaf = CPUID_GUEST_NR_FEAT - 1, + .extd.max_leaf = 0x80000000 + CPUID_GUEST_NR_EXTD - 1, + }; + static const struct test { + const char *name; + uint32_t leaf, subleaf; + size_t offset; + } tests[] = { + /* Test fetch different leaves. */ + { + .name = "Fetch basic leaf", + .offset = offsetof(struct cpu_policy, basic.raw[0]), + }, + { + .name = "Fetch cache leaf", + .leaf = 0x4, + .offset = offsetof(struct cpu_policy, cache.raw[0]), + }, + { + .name = "Fetch feature leaf", + .leaf = 0x7, + .offset = offsetof(struct cpu_policy, feat.raw[0]), + }, + { + .name = "Fetch Topo leaf", + .leaf = 0xb, + .offset = offsetof(struct cpu_policy, topo.raw[0]), + }, + { + .name = "Fetch Xstate leaf", + .leaf = 0xd, + .offset = offsetof(struct cpu_policy, xstate.raw[0]), + }, + { + .name = "Fetch extended leaf", + .leaf = 0x80000000, + .offset = offsetof(struct cpu_policy, extd.raw[0]), + }, + }; + const struct cpu_policy *p = memdup(&policy); + + printf("Testing CPUID get leaf:\n"); + + for ( size_t i = 0; i < ARRAY_SIZE(tests); ++i ) + { + const struct test *t = &tests[i]; + const struct cpuid_leaf *l = x86_cpuid_get_leaf_const(p, t->leaf, + t->subleaf); + + if ( l != (const void *)p + t->offset ) + fail(" Test %s get leaf fail\n", t->name); + } +} + static void test_is_compatible_success(void) { static struct test { @@ -660,6 +835,8 @@ int main(int argc, char **argv) test_cpuid_serialise_success(); test_cpuid_deserialise_failure(); test_cpuid_out_of_range_clearing(); + test_cpuid_get_leaf_failure(); + test_cpuid_get_leaf(); test_msr_serialise_success(); test_msr_deserialise_failure(); diff --git a/xen/arch/x86/cpuid.c b/xen/arch/x86/cpuid.c index 455a09b2dd22..407919ffeffd 100644 --- a/xen/arch/x86/cpuid.c +++ b/xen/arch/x86/cpuid.c @@ -50,48 +50,16 @@ void guest_cpuid(const struct vcpu *v, uint32_t leaf, switch ( leaf ) { case 0 ... CPUID_GUEST_NR_BASIC - 1: - ASSERT(p->basic.max_leaf < ARRAY_SIZE(p->basic.raw)); - if ( leaf > min_t(uint32_t, p->basic.max_leaf, - ARRAY_SIZE(p->basic.raw) - 1) ) - return; - - switch ( leaf ) - { - case 0x4: - if ( subleaf >= ARRAY_SIZE(p->cache.raw) ) - return; - - *res = array_access_nospec(p->cache.raw, subleaf); - break; - - case 0x7: - ASSERT(p->feat.max_subleaf < ARRAY_SIZE(p->feat.raw)); - if ( subleaf > min_t(uint32_t, p->feat.max_subleaf, - ARRAY_SIZE(p->feat.raw) - 1) ) - return; - - *res = array_access_nospec(p->feat.raw, subleaf); - break; - - case 0xb: - if ( subleaf >= ARRAY_SIZE(p->topo.raw) ) - return; - - *res = array_access_nospec(p->topo.raw, subleaf); - break; - - case XSTATE_CPUID: - if ( !p->basic.xsave || subleaf >= ARRAY_SIZE(p->xstate.raw) ) - return; + case 0x80000000 ... 0x80000000 + CPUID_GUEST_NR_EXTD - 1: + { + const struct cpuid_leaf *tmp = x86_cpuid_get_leaf(p, leaf, subleaf); - *res = array_access_nospec(p->xstate.raw, subleaf); - break; + if ( !tmp ) + return; - default: - *res = array_access_nospec(p->basic.raw, leaf); - break; - } + *res = *tmp; break; + } case 0x40000000 ... 0x400000ff: if ( is_viridian_domain(d) ) @@ -106,15 +74,6 @@ void guest_cpuid(const struct vcpu *v, uint32_t leaf, case 0x40000100 ... 0x400001ff: return cpuid_hypervisor_leaves(v, leaf, subleaf, res); - case 0x80000000 ... 0x80000000 + CPUID_GUEST_NR_EXTD - 1: - ASSERT((p->extd.max_leaf & 0xffff) < ARRAY_SIZE(p->extd.raw)); - if ( (leaf & 0xffff) > min_t(uint32_t, p->extd.max_leaf & 0xffff, - ARRAY_SIZE(p->extd.raw) - 1) ) - return; - - *res = array_access_nospec(p->extd.raw, leaf & 0xffff); - break; - default: return; } diff --git a/xen/include/xen/lib/x86/cpu-policy.h b/xen/include/xen/lib/x86/cpu-policy.h index 6d5e9edd269b..3fcc02c729db 100644 --- a/xen/include/xen/lib/x86/cpu-policy.h +++ b/xen/include/xen/lib/x86/cpu-policy.h @@ -540,6 +540,25 @@ int x86_cpu_policies_are_compatible(const struct cpu_policy *host, const struct cpu_policy *guest, struct cpu_policy_errors *err); +/** + * Get a cpuid leaf from a policy object. + * + * @param policy The cpuid_policy object. + * @param leaf The leaf index. + * @param subleaf The subleaf index. + * @returns a pointer to the requested leaf or NULL in case of error. + * + * The function will perform out of bound checks. Do not call this function + * directly and instead use x86_cpuid_get_leaf that will deal with both const + * and non-const policies returning a pointer with constness matching that of + * the input. + */ +const struct cpuid_leaf *x86_cpuid_get_leaf_const(const struct cpu_policy *p, + uint32_t leaf, + uint32_t subleaf); +#define x86_cpuid_get_leaf(p, l, s) \ + ((__typeof__(&(p)->basic.raw[0]))x86_cpuid_get_leaf_const(p, l, s)) + #endif /* !XEN_LIB_X86_POLICIES_H */ /* diff --git a/xen/lib/x86/cpuid.c b/xen/lib/x86/cpuid.c index 07e550191448..a93b372e29e1 100644 --- a/xen/lib/x86/cpuid.c +++ b/xen/lib/x86/cpuid.c @@ -546,6 +546,58 @@ int x86_cpuid_copy_from_buffer(struct cpu_policy *p, return -ERANGE; } +const struct cpuid_leaf *x86_cpuid_get_leaf_const(const struct cpu_policy *p, + uint32_t leaf, + uint32_t subleaf) +{ + switch ( leaf ) + { + case 0 ... CPUID_GUEST_NR_BASIC - 1: + if ( p->basic.max_leaf >= ARRAY_SIZE(p->basic.raw) || + leaf > p->basic.max_leaf ) + return NULL; + + switch ( leaf ) + { + case 0x4: + if ( subleaf >= ARRAY_SIZE(p->cache.raw) ) + return NULL; + + return &array_access_nospec(p->cache.raw, subleaf); + + case 0x7: + if ( p->feat.max_subleaf >= ARRAY_SIZE(p->feat.raw) || + subleaf > p->feat.max_subleaf ) + return NULL; + + return &array_access_nospec(p->feat.raw, subleaf); + + case 0xb: + if ( subleaf >= ARRAY_SIZE(p->topo.raw) ) + return NULL; + + return &array_access_nospec(p->topo.raw, subleaf); + + case 0xd: + if ( !p->basic.xsave || subleaf >= ARRAY_SIZE(p->xstate.raw) ) + return NULL; + + return &array_access_nospec(p->xstate.raw, subleaf); + } + + return &array_access_nospec(p->basic.raw, leaf); + + case 0x80000000 ... 0x80000000 + CPUID_GUEST_NR_EXTD - 1: + if ( (p->extd.max_leaf & 0xffff) >= ARRAY_SIZE(p->extd.raw) || + leaf > p->extd.max_leaf ) + return NULL; + + return &array_access_nospec(p->extd.raw, leaf & 0xffff); + } + + return NULL; +} + /* * Local variables: * mode: C -- 2.40.0 From xen-devel-bounces@lists.xenproject.org Fri Jun 16 13:11:22 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 16 Jun 2023 13:11:22 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550171.859114 (Exim 4.92) (envelope-from ) id 1qA9EY-0002sP-Oa; Fri, 16 Jun 2023 13:11:22 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550171.859114; Fri, 16 Jun 2023 13:11:22 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qA9EY-0002sE-Ll; Fri, 16 Jun 2023 13:11:22 +0000 Received: by outflank-mailman (input) for mailman id 550171; Fri, 16 Jun 2023 13:11:21 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qA9EX-0002qy-Ix for xen-devel@lists.xenproject.org; Fri, 16 Jun 2023 13:11:21 +0000 Received: from esa3.hc3370-68.iphmx.com (esa3.hc3370-68.iphmx.com [216.71.145.155]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 47633171-0c47-11ee-8611-37d641c3527e; Fri, 16 Jun 2023 15:11:18 +0200 (CEST) Received: from mail-sn1nam02lp2044.outbound.protection.outlook.com (HELO NAM02-SN1-obe.outbound.protection.outlook.com) ([104.47.57.44]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 16 Jun 2023 09:11:16 -0400 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) by SA1PR03MB6547.namprd03.prod.outlook.com (2603:10b6:806:1c6::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.27; Fri, 16 Jun 2023 13:11:13 +0000 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::ab2a:a298:bacb:db47]) by SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::ab2a:a298:bacb:db47%2]) with mapi id 15.20.6477.037; Fri, 16 Jun 2023 13:11:13 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 47633171-0c47-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686921078; h=from:to:cc:subject:date:message-id:in-reply-to: references:content-transfer-encoding:mime-version; bh=R/FIEqQgNYgNNHOA/C/KiytTy24Bfn6/iDD9X38QBJ4=; b=dDNdNAEbVokybTFUq3Dx3T5mdPGrAHVV21YzhSil51cgfpCYkhNj2zV5 iVtd4/Vpu0WiLjZ2Zq8mvbf5SOJEaT8xHGyCG0lh/sw5DMEhpxy5dWDIP YHzGY8b8ms23vcB4fd4Qrpeqnx/YW37NI2xEPcnw/FdCKQI8bsewlA9pW s=; X-IronPort-RemoteIP: 104.47.57.44 X-IronPort-MID: 113085896 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:ee08zK84l69rD2RZT5E4DrUDtn+TJUtcMsCJ2f8bNWPcYEJGY0x3z DcWXT2AO/yNYmugfd9+atmw/E0DuJ/dnYdiSAtqqCE8E34SpcT7XtnIdU2Y0wF+jCHgZBk+s 5hBMImowOQcFCK0SsKFa+C5xZVE/fjUAOG6UKicYXoZqTZMEE8JkQhkl/MynrlmiN24BxLlk d7pqojUNUTNNwRcawr40Ird7ks31BjOkGlA5AdmO6kV5AW2e0Q9V/rzG4ngdxMUfaEMdgKKb 76r5K20+Grf4yAsBruN+losWhRXKlJ6FVHmZkt+A8BOsDAbzsAB+v9T2M4nQVVWk120c+VZk 72hg3ASpTABZcUgkMxFO/VR/roX0aduoNcrKlDn2SCfItGvn9IBDJyCAWlvVbD09NqbDklft vw6JRUiUSq7xP/vkK21afBMvu8KeZyD0IM34hmMzBn/JNN+G9X4ZfyP4tVVmjAtmspJAPDSI dIDbiZiZwjBZBsJPUoLDJU5n6GjgXyXnz9w8QrJ4/ZopTWMilAtuFTuGIO9ltiiX8Jak1zev mvb12/4HgsbJJqUzj/tHneE37aUxXOmCNNMfFG+3sZHskWwy2ZINBkbDXqCg/2FrBSlct0Kf iT4/QJr98De7neDXtT7GhG1vnOAlhodQMZLVf037hmXzajZ6BrfAXILJhZebPQ2uclwQiYlv neLkMnuHidHq6CORDSW8bL8hTG4NDURLGQCTTQZVgZD6N7myLzflTrKR9dnVbWz19v8HGmqx yjQ9HRiwbIOkcQMyqO3u0jdhC6hrYTISQhz4RjLWmWi7UVyY4vNi5GU1GU3JM1odO6xJmRtd lBe8yRCxIji1a2wqRE= IronPort-HdrOrdr: A9a23:c8Yydq3Y9XGpZFbDVRaeXAqjBIgkLtp133Aq2lEZdPUzSKClfq GV88jzsCWetN9/Yh8dcLy7WZVoI0mslqKdkLNwAV7KZmCP0gaVxepZnOnfKlPbakrD398Y+a B8c7VvTP3cZGIK6/oSOTPIdurIFuP3lJyVuQ== X-Talos-CUID: =?us-ascii?q?9a23=3AaqdKSGsLklDha+yirW1Y2UIS6Is0MX3/wVL/HHW?= =?us-ascii?q?ASnswGKKbakawwIhNxp8=3D?= X-Talos-MUID: 9a23:jBmimQibAkru4YpQvJNk9MMpDOpa+4ejAhsxlZhemvCmMRBWYSy0g2Hi X-IronPort-AV: E=Sophos;i="6.00,247,1681185600"; d="scan'208";a="113085896" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=k45Z3xPR1V0NbjFdP3XaIrwitZ3hx9n/oVLM2YZLwUFGO4XmKPbdfO3YO3SZQnyjXHftJD6wp1W4DZZ6jOdkFMrauG+3fPr17vfQ6AWhtBfQw4AgCqr7Z43MpoX+O7oIbD/tbvu8VUPxSA0Mx6OvagCZImQy7Zh2dbtw3+6LY6KE3dL1aNcZjZdMKhi8U7020Ir4g9gzOg60PqoMj0YdlExVQmWelquxo8srZXefyuXjiso1lbCzaC7kHg+EmHUIeSS1H3XoY6KoIXq3tXDJDzLe6wdJQzGC1o8EcAjArS+6O5ARJ5NODdQj6GzWt+8NMC78VydAnAdlj9J52abh8A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=ThmNVYMmQ6VGfb+VH01B+FGJrydg+3CLS9eYmXTIbHE=; b=GmTp73NW93WVCaR0XGym5cBBtSwJuRuAydf5DoHLP2RAfuRjvucYWObeDiaGMRPTlYgDQplnHnic5f5tTZrTsH8xQ4+GTQnCs7uQTuYsVPWgtTYt+H1uZ51HqhdPpruxz0RKxMp0wRxjAHppqpsf4n/S1Nj64IUyvTP+ErfnzZQsapA0mH15Dnd72o5MmVhoN8+9rOZD72DkzrHWdX+JV30WL2tCMn/mc3OgCSuwsyqwIxFO0nXtIaQVk9z2J8OlSFCxcuuug+kshobIe7HlsiySXOW5j75nfUev7hWjWUN5GSgMb8gY9S+pYLIY0ce5j8qlGF632vjREJecNGHnDA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=ThmNVYMmQ6VGfb+VH01B+FGJrydg+3CLS9eYmXTIbHE=; b=Ce5l+swfz2nQgqntYgYuH+oOGoPHGtXd3aArC/jDddjIZi1+J7xgTBxmzyDalkCv1pDX4oXfIZCb58eAAJ4W7TjtobAo+T8z73KRkOXTCRik+U4NUJkb7w0H+3lTAKD+wrpJ1tNhi0VuwvfY9ZEiO+JmZkpkmawcwMnXMpbSNxA= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; From: Roger Pau Monne To: xen-devel@lists.xenproject.org Cc: Roger Pau Monne , Wei Liu , Anthony PERARD , Juergen Gross , Jan Beulich Subject: [PATCH 03/13] libs/guest: allow fetching a specific CPUID leaf from a cpu policy Date: Fri, 16 Jun 2023 15:10:09 +0200 Message-Id: <20230616131019.11476-4-roger.pau@citrix.com> X-Mailer: git-send-email 2.40.0 In-Reply-To: <20230616131019.11476-1-roger.pau@citrix.com> References: <20230616131019.11476-1-roger.pau@citrix.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO4P265CA0139.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:2c4::14) To SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|SA1PR03MB6547:EE_ X-MS-Office365-Filtering-Correlation-Id: 41c1aae7-fcb8-40f6-d005-08db6e6b28d9 X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: TAOJiPWoJjI7B61OAIHLkeMHXaJguimxC8kmlqypuaSCjjdoNpDH8tGaREbIRQRWN0ENvRcGpAlY7d1ALgONOtvc2rCmfLiF3PosXuRejBh4rcP0IpUbSIcVEmt/yKrEhQLYuoYI0C/GLy4sUFgOv1Nq7MP5g6JY+DK6eO4OQWKn5XVnBuCzdEr7sk7gKdwn1n5vCCTm5+u3Mz6//1SAdC1/03n/t9QujS8Q+1ucTZ8sQLk4wm3tWVeqXmt2yacIf+5Tx1qA45resHqXOvXb50FqZsEnBPCj0zZ0lBQhnUTYaqzeYn4icaXFxQQzC17LR1M8ra4eUfJPYKDLbcSJH6AKk1gbxxIbY1SJbIExxFQtr32rtBKw3Jwm5TD92s8pTtoAJftIdCTlaSyI8KCUA0DaNhIUe9m/At5fFhOb0ZeRvRV0pW4vtJurQ9dsqfKYw7kWK0QSRaQx2X56N+YGNMjpG1yATyjmrL3lGeEaMGE2cDNM04qByd+rZFyUvWbPGNztfhXlQVORfVVWG0U6XREzHO19f8a34ya/3Z6fAo2z0kncS1Qn1mpADuVJPmkh X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(366004)(39860400002)(136003)(376002)(396003)(346002)(451199021)(86362001)(38100700002)(8676002)(5660300002)(82960400001)(316002)(8936002)(41300700001)(66946007)(66556008)(66476007)(6916009)(4326008)(54906003)(83380400001)(2616005)(186003)(36756003)(478600001)(1076003)(6512007)(6506007)(26005)(2906002)(6486002)(6666004);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?WWlIcURSM0tGSHluR3lObkRKdXd6UjR3M2ZlT2x5S0tWZXNTKzgwOWFrNHVK?= =?utf-8?B?Znl3MjV3U1JURTZ5Q2FKMEJuWjExNTZCQm9oNjArY1padDZFMm5IclNTQzZU?= =?utf-8?B?ZkVJL3BCK1U2ZGhGcHdzb3FTalhVOGE2Tlkyb01KMWJYWk9RSUFFNW1ZR09y?= =?utf-8?B?cHFGUW1nRGNXOG05TEUrZWdadlptRVZ3cWpsOGdZTmlWRW5DRW5vdDkyVlpD?= =?utf-8?B?YS9lanAweG9pL1UvUFZFU2VYb1paSWxHMjJJWWtHUHQ0eTJHc29YemRjajNW?= =?utf-8?B?K2UvOFpLSmhzNjhVU3RJSEpxQWJJRXhJQ2lPbW5kSnNjWlArdlVoRndFbDVI?= =?utf-8?B?cHgySld4dDVIWkdnNW9lNmVadm4yUjdHdVhNWGVHdlBlQzdRblpxbVFaVmxU?= =?utf-8?B?KzB3d3k5MlJoWEx5NDVsYzJieTkxZytldytSUGdML3Z0WHZjOE9UbUhvUmtF?= =?utf-8?B?TnJsNkg1VmhMZ2pMZFZlYTJwRWk0UE1YT0FjVGxmbWw2TWhjTHFHZ0ZBcUMr?= =?utf-8?B?bDV2dUNGczhNTHRRQ1o3bGFBcjYyMVN5SWU1UlVkREhjeFVjTjdHcUFmWTRn?= =?utf-8?B?cWhxRk9qUTY0ZlBqaVFOWXoxM0ZUQXV4NVZWNytaT085SzFCRitmL2M1a3VN?= =?utf-8?B?UDlFZ2d5RkpOSURPc2RJRk92TEwyTGlma1J3WEQzUFJueExwOUNBQkRoeEc1?= =?utf-8?B?eGxRTlhLZDVuMlRrakdKVUp0bmtmbzhlZ2Q2M2RWdzRCbWsxbXIvK0prQnJj?= =?utf-8?B?KzV0UytYdFJsUXhFWmMrZDNlT1djL1N0Mi9BUEFpS0tHNWs4UnZVdTlkL1JM?= =?utf-8?B?cnZsRUtxVUtVRVRmakFQMndSeDZLTTBEemlQT0ZzOGJyVXdDdEsySGdNYVdC?= =?utf-8?B?Mi81NGFiaTlrcncxam9zcW1mWkYxaFFuS0Rrb0FrS2VFeTBhNzFRanFQU0xq?= =?utf-8?B?TXAzUjJCeHFJZy92SnY4Q2gveFhkTENOQ0Zxd1lsRjIzSTcySFRoc0FMNEdT?= =?utf-8?B?M0ljcExXaTRmbG8wSEdOZ2QxeHA0R0Q3Y3VXNU5VOHdqakVLdjFzNDNtWmtv?= =?utf-8?B?QmVlNi9JMDcxK2JWZy9keEJrWHdhNTNaRHE4SU9uVVFNQ1VkRUlOUVYzMXJM?= =?utf-8?B?Y3VCRmplSzRlN3hJaUkxUlIwaDlBbDRmS1BpaUpWRDZ2TDRORWJuM0pMbXNM?= =?utf-8?B?Y2IrcHl3V2dvMEp6cS9UTVlVWnE4eEVxRWJKR2NIVUxDVnVrN283bWpBdWxk?= =?utf-8?B?TDR2M2YwcnhPQkRsWWZwMC96NWZEaGJHS1JXbC9mNWpiUmN3L1dpUEh2blBl?= =?utf-8?B?S0lWMzRLelVPeVJMUmZzdzVPb3c1VjJ1ZG9BbVBWMTlvZ2NEaUdZVlZlRkpz?= =?utf-8?B?UU9kWEZ3bVkwVzd0Vll5THZzdjY3TXI5aGJIZjgvOEZ3a05RN0dUOWU3alVu?= =?utf-8?B?aFlYVGZBaDc3TXN1QW5Yc0hoL3JNbHZsM1JNOWlOdEV5eDBPK042UE9kVTBI?= =?utf-8?B?UythZkJBR29RTDJJYUtqSU13bFYxOW51QVRYckozRjZ2T2VsRDdHcURMcjNs?= =?utf-8?B?OUtxRlV4VCt1VkdIa3pVVnJOb2hRaEZVV253MTR1eFd5MG1IVjRMYk9kMzRM?= =?utf-8?B?c203VTR1K1FMRCtPWVQ1MWlmSjFzeUM3RHpyMXRFYmxxNzRsbEsrTmF6YUxX?= =?utf-8?B?ZzlCd2ZMN2NiYUllcTYveXkvZDU2eWxha3I5TzF3bHRkTHB3ZlQ4amx2QmRZ?= =?utf-8?B?QUNrYldJRHNHS1pmYkJyZU01ZGdxREo3QTFyTTBsbVNiU0R0cis2dXU5eDF5?= =?utf-8?B?ckJ1WS9DaXg2Q1hRTXdKcU42Ym05V2FySjM4aU43MFovUDFQQWtDYWNGRDVi?= =?utf-8?B?ZHZCRm44S0EyMmpBQ05FYi9oK2Z6SXNtalhUQU10ZUxCazYrcmUwWHMzVnJ6?= =?utf-8?B?ZWVvdzdhMXNYYzJndTAvUUpSRHZLeVRFdVIzSVFvUjcxa1NSTVN0cmJKVWRy?= =?utf-8?B?aW5UZ290NXR3NGJZQmNXbFBWZzVlTzlrSjM4eFpjOGZRbUNNUWFJT1l5NmZU?= =?utf-8?B?U3RoWmFBQ1Z4UG45RDZaYWdrZEIyci8wLytMa3ViaUkxaEZkN2dPUVRTbWs2?= =?utf-8?Q?nrMYmqki7nUCGsVOe27+BIgBw?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: 15jYTJIFWTF+nunWpGLtCdm6DznMZTpeVIRXGC0no0MRyi5rXnu5O0B1ZSEotimzoy5HLMEL3Y1xz6g1Koo2zhQOTYxBcRQfB9jYSOUuqIoVL9LEXqg3opoXG3ypPue2PPAIIfFKfSwQb1uF5rQ8/8lSzVWl+U04DSlgxP/5KorGQwObUR/VN3Z1NVPhGgxP31qCEyvat+rMd6fSVWmODTaW7UDc9k5FiPy+UybdGakRtfJiRvqUg3QGmlFzjWGPaiK8V/J5rCMbD3STtGDrDlvwRa23WVjFtJO62KAE1rJ4U+abFkAJdgAidkjzg2/usWA0/XoucG4y1m4zWCEpqOfD6plHgU3KpGhheWMd6ED4Rc5I3+g5yLmCGDcxsJu15EFtECp3woApPPB2vWvMtrtagGnRPz1uG1l7akvQdM8nheAK9lAX9gTGCv4DGpFxvrFC5k4eRvQcJltS37t/IE40CWsPstZTO/0jLJ5U91mjws8h0BrBourlhTyrjXA1zlrhAhpRRpZzOQXW4+MrI2wSN0tIXzoxDeR7R5jsmR95g3Kvm5WCB7l8Jdmc9OKhx6Rw5QxBOCWxQi93lMA5iAN5OYk7QCVxtF51wV3DOiUdWIudWOWm4jqyf2uvlu4/4JyLNa2hJ4/FtiCelNg7u1LgHT2QiePT8420U/D3g46a+qHhcLLoBxTl7SReMaAuJJoNn86tAaSQyPFTT34RtUUEEtaBbRDxy18qZhD3Ifh8bUiStRLDG5R85Cv067TsJvV5mYyFLUcztRYE7QhvsSalya1IYhLSZW0VieeZPpel6wzzBpHgSGx29XcVL5SV X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 41c1aae7-fcb8-40f6-d005-08db6e6b28d9 X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Jun 2023 13:11:13.1907 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: nXY6pgpL9+LFRHTeeaNheHPtIf8dL1N5yGvxX0kYovoxzH8xfOjWRhkNnb7hWwpFt7Dz01dlZ3Az40rqBWWapQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA1PR03MB6547 Introduce an interface that returns a specific leaf/subleaf from a cpu policy in xen_cpuid_leaf_t format. This is useful to callers can peek data from the opaque xc_cpu_policy_t type. No caller of the interface introduced on this patch. Signed-off-by: Roger Pau Monné Reviewed-by: Jan Beulich --- Changes since v6: - Add newline before return. Changes since v5: - Zero out parameter. Changes since v3: - Use x86_cpuid_get_leaf. Changes since v1: - Use find leaf. --- tools/include/xenguest.h | 3 +++ tools/libs/guest/xg_cpuid_x86.c | 26 ++++++++++++++++++++++++++ 2 files changed, 29 insertions(+) diff --git a/tools/include/xenguest.h b/tools/include/xenguest.h index e01f494b772a..0a6fd9930627 100644 --- a/tools/include/xenguest.h +++ b/tools/include/xenguest.h @@ -807,6 +807,9 @@ int xc_cpu_policy_update_cpuid(xc_interface *xch, xc_cpu_policy_t *policy, uint32_t nr); int xc_cpu_policy_update_msrs(xc_interface *xch, xc_cpu_policy_t *policy, const xen_msr_entry_t *msrs, uint32_t nr); +int xc_cpu_policy_get_cpuid(xc_interface *xch, const xc_cpu_policy_t *policy, + uint32_t leaf, uint32_t subleaf, + xen_cpuid_leaf_t *out); /* Compatibility calculations. */ bool xc_cpu_policy_is_compatible(xc_interface *xch, xc_cpu_policy_t *host, diff --git a/tools/libs/guest/xg_cpuid_x86.c b/tools/libs/guest/xg_cpuid_x86.c index 67e0dc9b4ad2..630d0018529f 100644 --- a/tools/libs/guest/xg_cpuid_x86.c +++ b/tools/libs/guest/xg_cpuid_x86.c @@ -828,6 +828,32 @@ int xc_cpu_policy_update_msrs(xc_interface *xch, xc_cpu_policy_t *policy, return rc; } +int xc_cpu_policy_get_cpuid(xc_interface *xch, const xc_cpu_policy_t *policy, + uint32_t leaf, uint32_t subleaf, + xen_cpuid_leaf_t *out) +{ + const struct cpuid_leaf *tmp; + + *out = (xen_cpuid_leaf_t){}; + + tmp = x86_cpuid_get_leaf(&policy->policy, leaf, subleaf); + if ( !tmp ) + { + /* Unable to find a matching leaf. */ + errno = ENOENT; + return -1; + } + + out->leaf = leaf; + out->subleaf = subleaf; + out->a = tmp->a; + out->b = tmp->b; + out->c = tmp->c; + out->d = tmp->d; + + return 0; +} + bool xc_cpu_policy_is_compatible(xc_interface *xch, xc_cpu_policy_t *host, xc_cpu_policy_t *guest) { -- 2.40.0 From xen-devel-bounces@lists.xenproject.org Fri Jun 16 13:11:25 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 16 Jun 2023 13:11:25 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550172.859125 (Exim 4.92) (envelope-from ) id 1qA9Eb-0003BJ-3c; Fri, 16 Jun 2023 13:11:25 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550172.859125; Fri, 16 Jun 2023 13:11:25 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qA9Ea-0003BA-Tn; Fri, 16 Jun 2023 13:11:24 +0000 Received: by outflank-mailman (input) for mailman id 550172; Fri, 16 Jun 2023 13:11:23 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qA9EZ-0002qy-GL for xen-devel@lists.xenproject.org; Fri, 16 Jun 2023 13:11:23 +0000 Received: from esa3.hc3370-68.iphmx.com (esa3.hc3370-68.iphmx.com [216.71.145.155]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 4978018b-0c47-11ee-8611-37d641c3527e; Fri, 16 Jun 2023 15:11:21 +0200 (CEST) Received: from mail-sn1nam02lp2044.outbound.protection.outlook.com (HELO NAM02-SN1-obe.outbound.protection.outlook.com) ([104.47.57.44]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 16 Jun 2023 09:11:20 -0400 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) by SA1PR03MB6547.namprd03.prod.outlook.com (2603:10b6:806:1c6::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.27; Fri, 16 Jun 2023 13:11:18 +0000 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::ab2a:a298:bacb:db47]) by SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::ab2a:a298:bacb:db47%2]) with mapi id 15.20.6477.037; Fri, 16 Jun 2023 13:11:18 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 4978018b-0c47-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686921081; h=from:to:cc:subject:date:message-id:in-reply-to: references:content-transfer-encoding:mime-version; bh=caRvDxyjTRnpGoU3owd5Gsf9GzyF5C4JPa0GfIQXU2U=; b=LzcWEAptuvwyaLDbpR/Alxrl7K1lLk1BBl+uOn+jLRHPlJijktWNrFcl k6+NqHdB1/Vojuum3etCh1piKjhCGDihc8rUqwUNNGO1pzxyBCnlKZe2U 01EWVkJIvzymW68MOJSYWUT9k0YPBvcv4zXee9OHoHi/Fc0+M8IyfsTAz c=; X-IronPort-RemoteIP: 104.47.57.44 X-IronPort-MID: 113085905 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:JL4B26LqReWdEkMtFE+R9pQlxSXFcZb7ZxGr2PjKsXjdYENSgTUOz DROCmyGaf3cZzfxe9h1PNi08B8CuZGDy4RqT1dlqX01Q3x08seUXt7xwmUcnc+xBpaaEB84t ZV2hv3odp1coqr0/0/1WlTZhSAgk/rOHvykU7Ss1hlZHWdMUD0mhQ9oh9k3i4tphcnRKw6Ws Jb5rta31GWNglaYCUpKrfrbwP9TlK6q4mhA4AVgPaojUGL2zBH5MrpOfcldEFOgKmVkNrbSb /rOyri/4lTY838FYj9yuu+mGqGiaue60Tmm0hK6aYD76vRxjnVaPpIAHOgdcS9qZwChxLid/ jnvWauYEm/FNoWU8AgUvoIx/ytWZcWq85efSZSzXFD6I+QrvBIAzt03ZHzaM7H09c5zG05g/ /8/NgozQTOJ1umq57+WS+lj05FLwMnDZOvzu1lG5BSBV7MdZ8mGRK/Ho9hFwD03m8ZCW+7EY NYUYiZuaxKGZABTPlAQC9Q1m+LAanvXKmUE7g7K4/dopTSPpOBy+OGF3N79YNuFSN8Thk+Fj mnH4374ElcRM9n3JT+tqyv33r+SzHumMG4UPJOYqLlAmV+4/zMsFCIEanabpd/j1VHrDrqzL GRRoELCt5Ma5EGtC9XwQRC8iHqFpQIHHcpdFfUg7wOAwbaS5ByWbkAGRDNcbN0ttOctWCcnk FSOmrvBGjhHoLCTD3WH+d+pQSiaPCEUKSoZY3YCRA5dud37+tlv0lTIU8ppF7OzgpvtAzbsz juWrS84wbIOkcoM0Kb99lfC696xmqX0oscOzl2/dgqYAslRPeZJu6TABYDn0Mt9 IronPort-HdrOrdr: A9a23:tluO1K5hSY1mSQekNAPXwVyBI+orL9Y04lQ7vn2ZFiY5TiXIra qTdaogviMc0AxhIE3Jmbi7WJVoMkmsjqKdgLNhdItKMzOW3FdAQLsN0WKm+UyYJ8SczJ8U6U 4DSdkYNDSYNzET4anHCUuDYrAdKbK8gcOVbJLlvhJQpHZRGsNdBmlCazqzIwlTfk1rFJA5HJ 2T6o5svDy7Y0kaacy9Gz0sQ/XDj8ejruOtXTc2QzocrCWehzKh77D3VzKC2A0Fbj9JybA+tU DYjg3C4Lm5uf3T8G6Q64aT1eUbpDLS8KoMOCW+sLlVFtwqsHfpWG1VYczMgNnympDt1L9lqq iPn/5qBbUI15qYRBDJnfKq4Xiq7N9m0Q6f9XaIxXTkusD3XzQ8Fo5Igp9YaALQ7w46sMh7y7 8j5RPsi3N7N2KzoM3G3am8azh60k6v5XYym+8aiHJSFYMYdb9KtIQauEdYCo0JEi724J0uVL AGNrCr2N9GNVeBK3zJtGhmx9KhGnw1AxedW0AH/siYySJfknx1x1YRgMYfgnAD/pQgTIQs3Z WyDo140LVVCsMGZ6N0A+kMBcOxF2zWWBrJdHmfJFz2fZt3SE4la6SHkIndyNvaCaDglqFC56 gpeGkoy1IPRw== X-Talos-CUID: 9a23:cQy8/G/Qls05LFq5uCaVv0oONe4vcVrD9kn/AEXpAnpORZCUSVDFrQ== X-Talos-MUID: 9a23:c4qGqAtuDdIp1/3nI82nqhE8c+1x4Y+XV38Rroc5lumAE3YvJGLI X-IronPort-AV: E=Sophos;i="6.00,247,1681185600"; d="scan'208";a="113085905" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=FfS50OwOsfVN15ndc3wfgpZgNxrhlVyYuApV0nwO/aSl664mkKfH5Tm9+HQAFTGXsZKcye5Mn+MiNgxvrXHJadOrVsPPb039sgZ/RI7H3Ayc0+I+fdmSQfXL66IeKhEgvv/RIY6uezTfiBT09v3XESsV0L7sfeccdsc4Jl/AvDfJ+RCOFGFSFEWxbl8thNPkactf9yGYgPZPFVOqNOc3JmRYcU6EcyBt/lpLXesFqz6jO4QExpxt6VjA3DnquXlO1SbpxxPd/BgQUatLx2+0sPd07xxjFcTZ/xi1BhMCMJsmnNMsof3DGx3BxmVkKiKe32xqh4lM2BNaq90ZOyt92Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=ac5AClrtpFCusFXUZIqoP1b/u9m1+EtbcnCrqOyjr0M=; b=AKzvTEZbgV28A/m647AxVkD6+PZQXdmvCTN/pTHhJpkFtr+jYfv60a06lCq6aLOVSgriQaynpLcZVOEPj5nJOQFENooLi+eEO9KccBK080bLQ2PZfBb0kYj88mvArx7TYl3mMAHHqo0CjuPB/RvjsZr2IYJarlLEReqPBhDdhzfvr77DR8rU0OeKF4jZnuvXVod6Ptk/02JYICW/1l2eLcrzL8LOs2DdCfqJydaHE1p5pNw0Pk6QA93IvgxCZUlryxUlaJwljByPr6T6MbabbgRvM1dNSnJdrq4Q7tA9dHxofbk19MASJyHPncsNc9Jrt/ZobQ0YWZLZPp5e9JwLPQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=ac5AClrtpFCusFXUZIqoP1b/u9m1+EtbcnCrqOyjr0M=; b=azvp6vqemXWJ3hlgxFNuMtzUZWE6mc1y4afdEnMC0l7WYYSwbmx3DG4UilTQMu1iOQ/K6Zh8dvTSHQRIQLOlmVykJ+om5U7E58eqeeKMQgYfZLiJZ+2SYjgSKKmN78TqXDgsMQ7GYIQCSfBoj/LPtIIhJ/noR600IHFFYmFHSf0= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; From: Roger Pau Monne To: xen-devel@lists.xenproject.org Cc: Roger Pau Monne , Jan Beulich , Andrew Cooper , Wei Liu , Anthony PERARD Subject: [PATCH 04/13] libx86: introduce helper to fetch msr entry Date: Fri, 16 Jun 2023 15:10:10 +0200 Message-Id: <20230616131019.11476-5-roger.pau@citrix.com> X-Mailer: git-send-email 2.40.0 In-Reply-To: <20230616131019.11476-1-roger.pau@citrix.com> References: <20230616131019.11476-1-roger.pau@citrix.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO2P123CA0102.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:139::17) To SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|SA1PR03MB6547:EE_ X-MS-Office365-Filtering-Correlation-Id: 1f4acfea-9356-4b93-cdbd-08db6e6b2bee X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: ZbVM+DXjxdXVnPJ+8JhspgkYra+F+UNEgkm0NMP3nt48h8ypryYtybl2jy9ddMZYoLpjpeYQ2hxH+lHtebsNscdxJOcV7/xT0pitsv8sl0WaBRelktqoZMCDIooV1prbpryRkdEpbvEg0XcQMZyDKDszulpfHN2U/ORDb5ietSnRg3D7zebZsBXUhR78sYrAuefS0nFA63LgdyDfJdqQ2V9t+DXHmswM6s0cfESX+B3YdEc56+Vll7iNLF81pZhSQQSzkRG0vE+IJUPxdPKSRWGK8U0TSUB21SSIIWzrhD4vSOceRuCPIDoX4TkaiCz3tidXXsCy1aFIgEVp7dDZZOB7dz0WLPtD6TcSxMKFpQzvvctjj6Zm5oxTY/T4HfzfRwu5JoSjIfH9BEn85714eSgXtVFEFQs7WDadk1yYDXMDKAxAOzT95hR1DToejtgBj+NmY3yS/zpgGkog0FVXTAr1EGg9hg4cEorIbnyZrmQGYIPz92rF8gB7IYjPaJhs7LC+TZJZzg0z7kCjgukSrP3viN9EL2FnG16ww/Vz2CWzywr9uwc59hmDTaJmCkT4hJvSy55cRLcsq4s6rNnNJOgKHhj2/YTOTXQSFJDTPUdigGyKkwyKJa+pKFqHk1lt X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(366004)(39860400002)(136003)(376002)(396003)(346002)(451199021)(86362001)(38100700002)(8676002)(5660300002)(82960400001)(316002)(8936002)(41300700001)(66946007)(66556008)(66476007)(6916009)(4326008)(54906003)(83380400001)(2616005)(66899021)(186003)(36756003)(478600001)(107886003)(1076003)(6512007)(6506007)(26005)(2906002)(6486002)(6666004)(309714004);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?dDk2eVhWY29mUkIyZUxkVlFEN0kyUnVBTVdXRmQ4UWRrelBvcVpMbk5NMlVu?= =?utf-8?B?VGg3Z01nVVJiMWhPcXQ0bFg4M0R1NU5xQ2VlSkt3c01UQzM4YVdIZmV2T0o0?= =?utf-8?B?UnVQZjJHOU02VWRDMjkzL2FiMnNSOUVVSGFleFBqMEw1Mm1LS3NveFdVeXRE?= =?utf-8?B?VnllZ1J1U1R6Vmo0djFXVE8xWUV3ZGhONVZGb2JZYjUvTW5Hb0ZON0V1WC83?= =?utf-8?B?OEFwVWMyQUZJbG0yT0dGMkFEbHcvRmpnWERERzVJc1ZKTnZFWmNIVHo2VUpz?= =?utf-8?B?R1dHdDdrenFuL0MxMUlUUXZyaWpXaUEyT2hJTFJDMDZzNWFpM0JiNW1PS09w?= =?utf-8?B?dXBqZUVGUGpQYVg4YmExb0poeVhhcUM3cS8rUGRPRzErWXIwTUZnUVNzdVNq?= =?utf-8?B?UTdBUmlpdWx2L1hFVU10L2Jka2NwYXRwYlFrTHZKRlRzN2RqTDBKVVErWWd6?= =?utf-8?B?YnZVMUYraU12WnRyaWpwL0ZQU0NPSUJrSGRMVzYzdFcxc2REQWZHdDFnTXJE?= =?utf-8?B?cnExcmduTE1MOW1qQXBXMU1zdFlzNHJCdTBYMk5PZU9rMjUrUWY0c3R1Z2Nx?= =?utf-8?B?cDV6c1J2NjdEckhxZUpvaE1tOHB6Ty9KemZwRWNiVW1SVFN0NnN5aVRtdnFT?= =?utf-8?B?czFuTnZuZ3VrUVBXK0RuQjJIWTNiWlpNVlpCODhPT0lhZUFxZ0E1aS9sVGZo?= =?utf-8?B?QmE5d3VXdnFLa2VXTDM2QWRzdE9yOW02enpKRnltc0tRL1NMRU96a2ZIQXpp?= =?utf-8?B?V2hQZmkrTUxkRU1aUkgxb1dvcTF0RnNibTdrY1hhTmhieTVpV1g2N1AxWmtO?= =?utf-8?B?OHA3UWxSOFJWRGlpOEZYRVpRTW40SDhXOC9vOXg0UWpwWHZnQ0R0L1pJTHh2?= =?utf-8?B?VkRZOG5EQTA4VnBNRm8zTjM5VkpiUkpiY00raGpHdGpmRUNzOEJRUTBaVGQw?= =?utf-8?B?dHNZOHR0NFdmVHJwU1BqZ1FENXBXUHNVc016a1dLQ2d4YzU1K2hYYURJcnVp?= =?utf-8?B?Qi9mSS9RY3hqcE9jbTFoNk4xcDh6R3hudFdXWC9NS3RkUTVjdkcvNXdKeGdP?= =?utf-8?B?VVR2TW82MlgvV0ZwMzRhak53NzNqekdnQjRHbmhsN2JKODlJL2NtQjlFeUsv?= =?utf-8?B?QUNxM0craUlBckhFVXVyOWp6ak9Vc1N6b21xTEx6UmFnVjJsbVdVYVdTTXo0?= =?utf-8?B?RWIvSlpyck43VjVjY1JFcWNTenFJWDBEaEpqeFlmcUdieng5aEdjMWdnQ0l3?= =?utf-8?B?OGVGaHlXVXB0RS9vMGZRMXZrbnROVEpNRG9pVloySElkUTZjT3BqVFRwQ3U4?= =?utf-8?B?Z1dITDk5RmxILzdZNExDdGVUc1NQM3p0UVZha1JDK0JqVm9RUjVjd3VQSXoz?= =?utf-8?B?QWdadHVKZGJTNWphd2NpdzhxMkIrdFFuUXVadGNNQVFFZWhrL29DL1RHV1BN?= =?utf-8?B?QVc2ZGUwa0JIWHJheUd4UlJTUlpMd0pSL1MrSTZ1SlpnalFBQ0hKcHpSajZP?= =?utf-8?B?ZEQzb1dyeG1NRWFQcjR6WEVzRm9SOWxhREljSEhIMkxpQ1N5QUhEOHBVbllq?= =?utf-8?B?RmUvUUtsY2V2YUxoUG5FeGQ0dDJycXY1VDg0YzQyUnhyWUpWN2JmVnRwaDg5?= =?utf-8?B?bC9CbzQzVXlvTkwvcUFIYWtpa25rN2gwMGxvZVVNUEZzdUVaWERORG1RWm4w?= =?utf-8?B?VXBkd2JvWkczVHVEMWJybUFBRlEvcnE4QWlpbXZVRzl5T2VNYjZRZlpTQzRr?= =?utf-8?B?QU9ySGliUm9wSlkvbGJscXlsQkFNeWprYXRyK3JTSk5PWnhkRU55Z2N6NDlU?= =?utf-8?B?dzM5QmMyYW9jRklIeHkwTUkyRUZFbnVOZUQ5Z3h5Nm5wNGloc0xuaDVLeFFv?= =?utf-8?B?SW9hSnYvLzF6a0oxekY0Ti9YRDQ5SWpsTExFOXdJVWNUV2lmSjdhcGNzK3J1?= =?utf-8?B?MUcwOW1pRmpleWhlRkJFSnhXZnYwSVR1bytOcHpvYjRLOXJoUjNFZ1lSV0lX?= =?utf-8?B?Z0xoak5WakUvSjlDVzFKSVBwOEJUTkRRTjVyd2FnK2krenk5WDdCaXFZeDVu?= =?utf-8?B?eDNEUXJ2VmUwR0UxeVRXQTVRRGJLUk01UTgvTldFTEVNOVdiYXlOMG04N0lQ?= =?utf-8?B?endPa0xXZ1ZodnBZWjZOditLTzhNODhNTVB5a05qSzRSNm85ZCtxN2h3YUgw?= =?utf-8?B?WGc9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: o6P9uSlgZ32POVtBR8VdyEm7b0AZOcfMJxOWLTm4ayH18g23hXTxsb5y/QLLNJdFS3WIHHTO/kp4jLyooDZ+y6bbFAL1OD4wU0T/6SgJAocgLujY9DWLyOZsjdhUDxSwtJ5HA7Wb4SUmWBSY28cuPxdibsGi+Lpr7h5cVzTmkVmfOhH8+w1bxn0QPgUJTjgJHRQMzpBF4MB0mv4O8dFvpMMmQkXMvSaUB3y56LoNVtLyG9BnAjasDeBE2NIlsivDS7IURmj3EOrovTDACWu737iTVXZRcaEHFAerhpD4BoVyKx+P2DpR9BhIp7/JbS1qqPPxXBVQkaDXKn/CfFlNbql2x8ckMWJ37JLuXAfwBXuCCbhRCfLvcRui5URttQRBu3sLP8pdoeLr39JGUqFB0hapmA03HFhotvsBEBSOQA4Xff8uI66EPilWSbI7oHWB7bJKFpuGKLsf7ajawWCgvLZZtDPwEPH28w7pdO4Quhusz/q3hcYuqer3MEGeC8qm7gjwQ78a9xK/Dr2weJRg6hF/lYSuXDXR1t1d1NW3s3PWtHJCvaM+qUDOV+LUm/iqOBy4Hg/NOnE3i8NZULmXbe7cePTHVVxYwqmX0SjyBFT6G3TRAqU4XoWgILWenMRrVPp3TNie0yqMtNyJRrDRbIsSm35wx6ho10zbPqk0dIC3PCrpBiY2CUincvA1oL+5tNj5EPHW7bzQVpjsPjv+RsqYdsEguPDOsosK94xqxdzgcs8k/qV5wVpSnSSvl6FvYUeL8lf1dmdPapU1PVDPxHNYXMjTjo6Vmfl9META4eQbAhhELMZx2Ohede3Ahq24 X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 1f4acfea-9356-4b93-cdbd-08db6e6b2bee X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Jun 2023 13:11:18.3008 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: QzhsfdRT8FSeanrH7MwIqdqVB+kCTvzYmCOYaAY1Hc/27i/V4khu5UIlAGPtr7/u0ytb0b+brvwafnQzt/IB/g== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA1PR03MB6547 Use such helper in order to replace the code in x86_msr_copy_from_buffer. Note the introduced helper should not be directly called and instead x86_msr_get_entry should be used that will properly deal with const and non-const inputs. Note this requires making the raw fields uint64_t so that it can accommodate the maximum size of MSRs values, and in turn removing the truncation tests. Signed-off-by: Roger Pau Monné --- Changes since v4: - Rename _x86_msr_get_entry to x86_msr_get_entry_const. - Add newline before endif. Changes since v3: - New in this version. --- tools/tests/cpu-policy/test-cpu-policy.c | 43 +++++++++++++++++++++--- xen/include/xen/lib/x86/cpu-policy.h | 18 +++++++++- xen/lib/x86/msr.c | 41 +++++++++++----------- 3 files changed, 75 insertions(+), 27 deletions(-) diff --git a/tools/tests/cpu-policy/test-cpu-policy.c b/tools/tests/cpu-policy/test-cpu-policy.c index a11c8f067aad..2ce6ee96f91f 100644 --- a/tools/tests/cpu-policy/test-cpu-policy.c +++ b/tools/tests/cpu-policy/test-cpu-policy.c @@ -387,11 +387,6 @@ static void test_msr_deserialise_failure(void) .msr = { .idx = 0xce, .flags = 1 }, .rc = -EINVAL, }, - { - .name = "truncated val", - .msr = { .idx = 0xce, .val = ~0ull }, - .rc = -EOVERFLOW, - }, }; printf("Testing MSR deserialise failure:\n"); @@ -740,6 +735,43 @@ static void test_cpuid_get_leaf(void) } } +static void test_msr_get_entry(void) +{ + static const struct test { + const char *name; + unsigned int idx; + bool success; + } tests[] = { + { + .name = "bad msr index", + .idx = -1, + }, + { + .name = "good msr index", + .idx = 0xce, + .success = true, + }, + }; + const struct cpu_policy pc = { }; + const uint64_t *ec; + struct cpu_policy p = { }; + uint64_t *e; + + /* Constness build test. */ + ec = x86_msr_get_entry(&pc, 0); + e = x86_msr_get_entry(&p, 0); + + printf("Testing MSR get leaf:\n"); + + for ( size_t i = 0; i < ARRAY_SIZE(tests); ++i ) + { + const struct test *t = &tests[i]; + + if ( !!x86_msr_get_entry(&pc, t->idx) != t->success ) + fail(" Test %s failed\n", t->name); + } +} + static void test_is_compatible_success(void) { static struct test { @@ -840,6 +872,7 @@ int main(int argc, char **argv) test_msr_serialise_success(); test_msr_deserialise_failure(); + test_msr_get_entry(); test_is_compatible_success(); test_is_compatible_failure(); diff --git a/xen/include/xen/lib/x86/cpu-policy.h b/xen/include/xen/lib/x86/cpu-policy.h index 3fcc02c729db..877879fc8c16 100644 --- a/xen/include/xen/lib/x86/cpu-policy.h +++ b/xen/include/xen/lib/x86/cpu-policy.h @@ -337,7 +337,7 @@ struct cpu_policy * is dependent on real hardware support. */ union { - uint32_t raw; + uint64_t raw; struct { uint32_t :31; bool cpuid_faulting:1; @@ -559,6 +559,22 @@ const struct cpuid_leaf *x86_cpuid_get_leaf_const(const struct cpu_policy *p, #define x86_cpuid_get_leaf(p, l, s) \ ((__typeof__(&(p)->basic.raw[0]))x86_cpuid_get_leaf_const(p, l, s)) +/** + * Get a MSR entry from a policy object. + * + * @param policy The msr_policy object. + * @param idx The index. + * @returns a pointer to the requested leaf or NULL in case of error. + * + * Do not call this function directly and instead use x86_msr_get_entry that + * will deal with both const and non-const policies returning a pointer with + * constness matching that of the input. + */ +const uint64_t *x86_msr_get_entry_const(const struct cpu_policy *p, + uint32_t idx); +#define x86_msr_get_entry(p, i) \ + ((__typeof__(&(p)->platform_info.raw))x86_msr_get_entry_const(p, i)) + #endif /* !XEN_LIB_X86_POLICIES_H */ /* diff --git a/xen/lib/x86/msr.c b/xen/lib/x86/msr.c index e04b9ca01302..25f6e8e0be92 100644 --- a/xen/lib/x86/msr.c +++ b/xen/lib/x86/msr.c @@ -74,6 +74,8 @@ int x86_msr_copy_from_buffer(struct cpu_policy *p, for ( i = 0; i < nr_entries; i++ ) { + uint64_t *val; + if ( copy_from_buffer_offset(&data, msrs, i, 1) ) return -EFAULT; @@ -83,31 +85,13 @@ int x86_msr_copy_from_buffer(struct cpu_policy *p, goto err; } - switch ( data.idx ) + val = x86_msr_get_entry(p, data.idx); + if ( !val ) { - /* - * Assign data.val to p->field, checking for truncation if the - * backing storage for field is smaller than uint64_t - */ -#define ASSIGN(field) \ -({ \ - if ( (typeof(p->field))data.val != data.val ) \ - { \ - rc = -EOVERFLOW; \ - goto err; \ - } \ - p->field = data.val; \ -}) - - case MSR_INTEL_PLATFORM_INFO: ASSIGN(platform_info.raw); break; - case MSR_ARCH_CAPABILITIES: ASSIGN(arch_caps.raw); break; - -#undef ASSIGN - - default: rc = -ERANGE; goto err; } + *val = data.val; } return 0; @@ -119,6 +103,21 @@ int x86_msr_copy_from_buffer(struct cpu_policy *p, return rc; } +const uint64_t *x86_msr_get_entry_const(const struct cpu_policy *p, + uint32_t idx) +{ + switch ( idx ) + { + case MSR_INTEL_PLATFORM_INFO: + return &p->platform_info.raw; + + case MSR_ARCH_CAPABILITIES: + return &p->arch_caps.raw; + } + + return NULL; +} + /* * Local variables: * mode: C -- 2.40.0 From xen-devel-bounces@lists.xenproject.org Fri Jun 16 13:11:31 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 16 Jun 2023 13:11:31 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550176.859135 (Exim 4.92) (envelope-from ) id 1qA9Eh-0003jF-J5; Fri, 16 Jun 2023 13:11:31 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550176.859135; Fri, 16 Jun 2023 13:11:31 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qA9Eh-0003j2-DO; Fri, 16 Jun 2023 13:11:31 +0000 Received: by outflank-mailman (input) for mailman id 550176; Fri, 16 Jun 2023 13:11:30 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qA9Eg-0002qy-QI for xen-devel@lists.xenproject.org; Fri, 16 Jun 2023 13:11:30 +0000 Received: from esa3.hc3370-68.iphmx.com (esa3.hc3370-68.iphmx.com [216.71.145.155]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 4da7919f-0c47-11ee-8611-37d641c3527e; Fri, 16 Jun 2023 15:11:28 +0200 (CEST) Received: from mail-sn1nam02lp2044.outbound.protection.outlook.com (HELO NAM02-SN1-obe.outbound.protection.outlook.com) ([104.47.57.44]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 16 Jun 2023 09:11:27 -0400 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) by SA1PR03MB6547.namprd03.prod.outlook.com (2603:10b6:806:1c6::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.27; Fri, 16 Jun 2023 13:11:25 +0000 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::ab2a:a298:bacb:db47]) by SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::ab2a:a298:bacb:db47%2]) with mapi id 15.20.6477.037; Fri, 16 Jun 2023 13:11:25 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 4da7919f-0c47-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686921088; h=from:to:cc:subject:date:message-id:in-reply-to: references:content-transfer-encoding:mime-version; bh=hBwvY3lfHoNM8Xj1tdtM0Io/t3NQd40npWjmDL1Q44A=; b=VU4sjFCZWcNEIbHXCJMVGjhj9u9D2vFD7OxQ3Y8+Ieu45V3CUkpaB3fg Hkqf84kGtV5wU01IYjNbPZ7M8j+i2kK6D+q9B7yhfn5NmPWWHvPnQlEDe erRSKAX5wgcdMyJkAVNrIO5cBeMTMblhPnZgWWQaZliST/pcdva5y9NFo k=; X-IronPort-RemoteIP: 104.47.57.44 X-IronPort-MID: 113085923 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:l1REhKPdrd4hs2/vrR2TlsFynXyQoLVcMsEvi/4bfWQNrUomgTFWz zMZXWuHP6rYajH1et8iYInn/EoO68eBz4U2Swto+SlhQUwRpJueD7x1DKtS0wC6dZSfER09v 63yTvGacajYm1eF/k/F3oDJ9CU6jufQAOKnUoYoAwgpLSd8UiAtlBl/rOAwh49skLCRDhiE/ Nj/uKUzAnf8s9JPGjxSs/rrRC9H5qyo42tG5wJmP5ingXeF/5UrJMNHTU2OByOQrrl8RoaSW +vFxbelyWLVlz9F5gSNy+uTnuUiG9Y+DCDW4pZkc/HKbitq/0Te5p0TJvsEAXq7vh3S9zxHJ HehgrTrIeshFvWkdO3wyHC0GQkmVUFN0OevzXRSLaV/ZqAJGpfh66wGMa04AWEX0uBdImcV6 aIXFDBXahDfh+WW+ojnTNA506zPLOGzVG8ekldJ6GmDSM0AGNXESaiM4sJE1jAtgMwIBezZe 8cSdTtoalLHfgFLPVAUTpk5mY9EhFGmK2Ee9A3T+PVxvzS7IA9ZidABNPLPfdOHX4NNl1uwr WPa5WXpRBodMbRzzBLcqyn01rKex3iTtIQ6LKK2qr00nkavxjJNOjsLdwPhjPm1lRvrMz5YA wlOksY0loAi+UruQtTjUhmQpH+fogVaS9dWC/c96gyG1uzT+QnxLncAZi5MbpohrsBebT4lz FiShPvyGCdi9raSTBq19L2ZsDezMig9NnIZaGkPSg5t3jX4iIQ6jxaKVdA6Fqew1ofxAWuon 2zMqzUijbIOi8JNz7+84V3MnzOroN7OUxIx4QLUGGmi62uVebKYWmBh0nCDhd4oEWpTZgDpU KQs8yRG0N0zMA== IronPort-HdrOrdr: A9a23:3Oo2F60cvoC7UuEO7/WzgwqjBH8kLtp133Aq2lEZdPU0SKalfq eV7ZEmPH7P+VQssR4b9exoVJPufZq+z+8X3WByB9aftWDd0QPEEGgL1+DfKlbbexEWmNQy6U 9hGZIOcuEZDzJB/LvHCArTKadd/DGemprY4ds3Vx1WPHlXg6cL1XYfNi+rVndYaSNhHpQDGJ +V9qN81kGdkSR+VLXcOpEdNdKz3uH2qA== X-Talos-CUID: =?us-ascii?q?9a23=3A1EMdU2jXD9u84jXtak24w995HDJudFf+yizMfUC?= =?us-ascii?q?ECTxtSOGVTn+qwv9iqp87?= X-Talos-MUID: =?us-ascii?q?9a23=3An5dYJA+ohtNJRhm23+V0LTyQf/937fjtVl4WrZV?= =?us-ascii?q?Y5fuiKA4oYRqdgCviFw=3D=3D?= X-IronPort-AV: E=Sophos;i="6.00,247,1681185600"; d="scan'208";a="113085923" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Du6eygVEPkomcX7RCGWs0Im63Fnm/4qWoHUv1T10ZCXPvRqPG3k21SQHZfgiSHngggaTyMsgbuGrgisruwvrH8ZM+tCph6FGUdTiaT5DBTb0sdrwFJlSM4pqtYarK0b7EgmHGQvExRsgITltwa3RmdqRqsGng76TI7k1aShB1oHjdtHYNNImV5C92Grh/6tyj1NzEoImVL70XFW9kYvoOSfbkJkpN067DdHk9Pwp0z0qcITjfFhXVTosbQNPXzTa4dh+iCO6QjbxCtd8n3B93KeBm7pjoLx8Ty6Bx3iLFl+71arZbrl+4sMpg1JeRopP3Gs8sAZYPM+Cy6t1okNlMg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=qWrUG40xYuI686NvKvmyZ+nsvRDiKbBAZHC1yketgNo=; b=Qmqc1MPAH9aiKt/CgZTnybP6L7ziTyPAQbWVPiBGx5UtaynzW4xYPgg70FEZb2lraKNqm2xjMCga0MSz/Tx4vrxlQ0eOrPY5n0BSfMaeLyhKdTnql0m4iCrAbcDq64OivVNy1nEqdXSaabl/IPP5Ao1c/JN/YFoocsmTLWpGrBcBafczY9S8lgnWRCTdqH9Z0GSqep19aaCy2pkdo3NjYliAUE7Maclvb85DtuGc3mKMKOPIF5g6oZXUcui2nJECELzw9ewdC1vaEHEDjcqjMQn9TAcwCnACgM8CpGHTAyPzEJzcwICbq4xEnvGeZQgiLY5gQ3pQr4ctad3/2pKt7Q== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=qWrUG40xYuI686NvKvmyZ+nsvRDiKbBAZHC1yketgNo=; b=PG/pfOIU7tjMTbfQx5ux65+hrmh3iYRQ5sB3Sfz7/lovZtI13nhr6TqPLbWfw7Yum81InecTn/QXT7fOJnaTvwR0PC7zGzEC8gagjPIT9X5gbv9SZkdHMcna8F1jyZv4nMHtMpEW0pWe6L5w8dVqV6jDstn2IdbMPJbImkRVjOE= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; From: Roger Pau Monne To: xen-devel@lists.xenproject.org Cc: Roger Pau Monne , Wei Liu , Anthony PERARD , Juergen Gross , Jan Beulich Subject: [PATCH 05/13] libs/guest: allow fetching a specific MSR entry from a cpu policy Date: Fri, 16 Jun 2023 15:10:11 +0200 Message-Id: <20230616131019.11476-6-roger.pau@citrix.com> X-Mailer: git-send-email 2.40.0 In-Reply-To: <20230616131019.11476-1-roger.pau@citrix.com> References: <20230616131019.11476-1-roger.pau@citrix.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LNXP265CA0049.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:5d::13) To SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|SA1PR03MB6547:EE_ X-MS-Office365-Filtering-Correlation-Id: 2b730fe6-8e3c-4b69-bd64-08db6e6b3067 X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 2ksVjEoXiLuz9GJoaEbkjsFgmtDKUHyLPwKj54hCqxv0mYK5MwammpwKqU2V53O72UgJ/y1Ycc1nrqna5y816EWtxEoUtKaR5SPcl4yBFnNYzOMSfkstls8QywtMPy3UgGpn+JhHySr8yccWSec+b8FvacZP/M7gOXAF3Cgy2c0IJFHd1n6fAfrNKefQK9DOqC1GfaB2fkJQatzLqbXeK5VvqAC0Y3Qh9Rl4pl1Nmp1IQ6vDSC3IpG3y4nehmuxlXK08HytxEeeLc79fka6nn4OtGdtWQX/io1rh48QBPE0sIkIOkEdcw/NI04RcLvwWv4UjeBfWCOFvxIHGId1pVrrF4aiT61EPdY15a3d3eHLlpqAQWoV4F/1dSzkDYwhfS3qptLiBGwbelzXb1gl5b9dzJn+SPMBNL1s8Ys5UnBI7It3bHajgskY2mNekH0uYm9/uE7HQWj7Af8ZypdzuQZYDXUY1+UUHxthTj+69De7P6JQgHnCSXYI5qZIw7R3T2oKym8ZHOsp4BceSuHYmmGFrY15C6Zvy5XYj7QClpkOeaJ32gUVp+6I+3rqb//Jq X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(366004)(39860400002)(136003)(376002)(396003)(346002)(451199021)(86362001)(38100700002)(8676002)(5660300002)(82960400001)(316002)(8936002)(41300700001)(66946007)(66556008)(66476007)(6916009)(4326008)(54906003)(83380400001)(2616005)(186003)(36756003)(478600001)(1076003)(6512007)(6506007)(26005)(2906002)(6486002)(6666004);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?ZGhScnFObmFUbmRZVlJObjNnTTVDTFdWOU5HaisxZ2R4ZjY1RnNMY2pJUmVr?= =?utf-8?B?OXA4VENvM21EWVdBalcySk1yQjUzb3F4TitwazFic0M0VDhTS2gvQU5VNlJ1?= =?utf-8?B?anRrdllOdnMzUDN4YURLaGcva3JrM2g3T0FzTStJejFpd016a3kxTE5wa2d5?= =?utf-8?B?WmZWa29nM092RTJpeTBLY3lVdk9FTStKejI3UE9PUFNsWWtLSEdVNnJCci9C?= =?utf-8?B?Qy96RlM1dlh0c1NvRzJnQWRlbHBoL1ErY2Z0T3g0bUxqNHduZ1h0UWJRWWtI?= =?utf-8?B?RjVKUFFTZ2tYYTBFRnh1cVptUVFxZGNsc1REQkVXWTkzcGRpTmVkMVhJcHpm?= =?utf-8?B?YzBsSHpIRU1BTXNtNzFuOEZuWkp3Y1pRdDZzb0JGdkJkR1JSZ1B1bzF3Z1JI?= =?utf-8?B?MjJKSEZ0NXowZ1RIUEsyREtlb0lNM2pZbE5VSE0yNnhGTWxFWGYwM0NlMkUx?= =?utf-8?B?Zk01ei9sb1ZtRUtkMUJpckphaXVndHdLczVIUlJoekFJcm0vTWxLOGw2MW9z?= =?utf-8?B?N3F2YU8yWTF5Vk9YSmxJZDl3amUwTEQ0WkZuYmppMHNtbUlHZWtVOWdTVWxO?= =?utf-8?B?QzUrZmFmS0d5M2RMOVp3NVRSYmd3Q2MxRElTMFhpVStIcXhkbS9aTGJJT1JV?= =?utf-8?B?RVgrMitUa2pwcUZvQThMMldLNnYvZ3RiQS9kMlY5VXFSTmZNeG1rSzR0WDNz?= =?utf-8?B?eDR5alVta2diL0VlSXdEUjhyeFJWOWttMS9WaGttZUhiQk12d1ZBcUNUOVZp?= =?utf-8?B?Rkt2Q0JxZDArdjR5VU1wWGw5dTlZaVYwb0pLTnF5dEl2SzEvdlVVRHhFS2JE?= =?utf-8?B?SnVac3NpcGJBdk9mOFJCU1czM2J6WU4vQXdNUFdFYnFXa2p3T3lKWnNvQlFy?= =?utf-8?B?SmFMeVNpOENQQ3p0b2EvL09oa2FGUEtZa1N6bzIzYkRLNU1odGN5N08yMTVq?= =?utf-8?B?M2NXdTR2cWw5UDJpeXpibW04K1ltK1g2cHRlRjJPays1OVVTOXNUQllHazdZ?= =?utf-8?B?cWgxTEtMUTRUK0Fjak53WmlsV1ZwbXRmWjBoUmRSczRMOHpVaW4za1dLaE8z?= =?utf-8?B?bTlqeE9EOTBSL2h3QVY1ZllscWR6UmZIMlJ6TkQ5TDhUaDI0cDEybFZIWG1O?= =?utf-8?B?VVhvRmR5K2JPNjAzeWl2bUtJa3Q3OVA2bklRNnFxZU02UGRyUTcwSEw4eTZi?= =?utf-8?B?N0RYa1NUb3ZwcHNDN21sZmJObWVWREFHSUZjamw4dElXRjQ2TVJqZHVYSjYr?= =?utf-8?B?TVVRSk1Lc09UbjBZN0Z4Yjd3NnA0Q05MTnBxbmx3Zk8vVmczTkNxZ0daV1cr?= =?utf-8?B?K3d2TDhQRXlYY0pETndTaGdRcnhxTzltUFpla3JyL0VQenpDMzVVanp1ZFJa?= =?utf-8?B?Q1IrR2gzcER0QnBLaitPRGoyUkJJSDErdWkvazJTY29xdkcwM3p4ODBrYVhx?= =?utf-8?B?NTFnUURtREI0R1dVQngvclQwODQ1ZmhQV1lYekZJT3BPNUJKZlc4dDZlbUhE?= =?utf-8?B?MVhIQjZTTTZFYXVyRm5ZbHVFdnhnUWZMS2dLUUFTSUtQSXV2Mlk5RXY1L1Vu?= =?utf-8?B?Y0tCcG9lV1VPVkQ5ZWpRbVhSaDFBQ05tNlpiWGVlSjAvVUVVQk51SVQ0YmJ6?= =?utf-8?B?YlNxZTN4bVdWR0FJUnFvUzJRMncrZ1BweTJwd1VCZXhLY3E3d2ZSOVJVZU1a?= =?utf-8?B?cjFROHJEWlJGRC9NckxKdEtPMlJrMytPK2hKMzVrTCs4Q0k2TGJTNHlFNkZt?= =?utf-8?B?RmtTem9zSUxLeDhPMUJFeXpDbnFOdXpQVnVMcHJPVm5aYVRJZXRTckdtcTMw?= =?utf-8?B?dU1ZVkcyRDVobGlZS1lwQ0xwZ2xqSGJsMUVsUGZLZXMwNlc5T3RuMWxiVXVr?= =?utf-8?B?a0Z2b2lua2tYZjhzMk1vcm8yZGFZYU00K1kvNldBLzN0WTZQcC9QbjVPRFRW?= =?utf-8?B?L0xBV1RIVUVuWElZS2Mza3lJb0Y1cnlGL0xGSlBBaTRHcnpFTnMrTE0rWGwx?= =?utf-8?B?S3dqR2YzeWc5ak9PTDMramxJTFhPR1BHanpDYzF3d2FjcTVYbUlCOTNzQjJN?= =?utf-8?B?VGZCSmdlQTA5R0lHejNIeisvNmlsTlFDUHBYNGpSTjZBTDNuV1pSaVZHQzhp?= =?utf-8?B?L0dQaW42QkVjcHFheUhZVGR2c2NpQ2sza0VJaDc1bU9MUi9LVmhsdDFZOEt2?= =?utf-8?B?QWc9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: 0EuYKFdDNE/Bda9p1F8U1/+UqKhZN56DersOWL7gycX3fql+l9MKemcHRAA8ZMhsQpGnEnjRH+t5cD9VrlGX5uy6Q058Qcvi+hVFyhH6yLCXbJQHHAyxUKso23xiwrFPS/UPUidFqZKntseh5xP1r+La6DPewsVQWPTk9ieDmLQYXqdHvo6nStU5RNz7sd2+5xJXY88tyOJrpEFI9AOBuEeD7EAikNr+xN7HVhFuEDG2qjj9pO2RKJUkjwAnpeuiB0l9cQQG3pe5kyKHcb1+5OiT9eUvKs98IWXAMpsYt3ErdewTrJDUSC4Ro+HJcBC7fbNSnMfuc3ugSPtrevUb28Y69LYVLciaF3s1/OIwk5/7HSevdwZDN6tPXNyAKD0ybNqwOiYYwYIFDUsc6grOE+8oJr8QrzULCPnvi5oVdkmRi3yi9oMNJdBXycT3rd6QUhEeWrgIvFqVoQ4cowCGPwC3wSsdz69pcT2tApw9GY2zhHImEeWGi2xokI/TXfwAgp11sOmgnswWBO8oSqhh9BmoAzLNxoX7OeX5/vYq2k7zE00AmAdV1YghOYXaVkJuQ1ashoEM95drSlb45445c4bTUY9QWbeacFtcCEk3DdeyDiwMbuv1mhrNVfgHnFTRgWOTh/t3H4d/qP/tpnFZmjzXQlW8Ls56+w6r79lfEnnT0e5nw+2Vqt8fBYpsxl91wNltb6CFzFC7EK0eXYwvpSd8L35n7OtMVdd5V6V5wYo93f33ADCMtFd02iX06tmlsVTtAxrGqatelkVKHSrbIJtc6cAPn0tzZ9UvOccEgCywPz4qclla7gtxIaeKRJRu X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 2b730fe6-8e3c-4b69-bd64-08db6e6b3067 X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Jun 2023 13:11:25.6715 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: Ewbo0j0ICgYrl7thVrBp/tYV4h7sNdEohzU+xdmoGd/npOpz6DU+jkrwBT2FA2l0VeOjo+ogzoYFzPIxYUPo9w== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA1PR03MB6547 Introduce an interface that returns a specific MSR entry from a cpu policy in xen_msr_entry_t format. This is useful to callers can peek data from the opaque xc_cpu_policy_t type. No caller of the interface introduced on this patch. Signed-off-by: Roger Pau Monné Reviewed-by: Jan Beulich --- Changes since v3: - Use x86_msr_get_entry. Changes since v1: - Introduce a helper to perform a binary search of the MSR entries array. --- tools/include/xenguest.h | 2 ++ tools/libs/guest/xg_cpuid_x86.c | 20 ++++++++++++++++++++ 2 files changed, 22 insertions(+) diff --git a/tools/include/xenguest.h b/tools/include/xenguest.h index 0a6fd9930627..2672fd043cf9 100644 --- a/tools/include/xenguest.h +++ b/tools/include/xenguest.h @@ -810,6 +810,8 @@ int xc_cpu_policy_update_msrs(xc_interface *xch, xc_cpu_policy_t *policy, int xc_cpu_policy_get_cpuid(xc_interface *xch, const xc_cpu_policy_t *policy, uint32_t leaf, uint32_t subleaf, xen_cpuid_leaf_t *out); +int xc_cpu_policy_get_msr(xc_interface *xch, const xc_cpu_policy_t *policy, + uint32_t msr, xen_msr_entry_t *out); /* Compatibility calculations. */ bool xc_cpu_policy_is_compatible(xc_interface *xch, xc_cpu_policy_t *host, diff --git a/tools/libs/guest/xg_cpuid_x86.c b/tools/libs/guest/xg_cpuid_x86.c index 630d0018529f..c67e8c458f24 100644 --- a/tools/libs/guest/xg_cpuid_x86.c +++ b/tools/libs/guest/xg_cpuid_x86.c @@ -854,6 +854,26 @@ int xc_cpu_policy_get_cpuid(xc_interface *xch, const xc_cpu_policy_t *policy, return 0; } +int xc_cpu_policy_get_msr(xc_interface *xch, const xc_cpu_policy_t *policy, + uint32_t msr, xen_msr_entry_t *out) +{ + const uint64_t *val; + + *out = (xen_msr_entry_t){}; + + val = x86_msr_get_entry(&policy->policy, msr); + if ( !val ) + { + errno = ENOENT; + return -1; + } + + out->idx = msr; + out->val = *val; + + return 0; +} + bool xc_cpu_policy_is_compatible(xc_interface *xch, xc_cpu_policy_t *host, xc_cpu_policy_t *guest) { -- 2.40.0 From xen-devel-bounces@lists.xenproject.org Fri Jun 16 13:11:38 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 16 Jun 2023 13:11:38 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550179.859144 (Exim 4.92) (envelope-from ) id 1qA9En-0004Dz-R9; Fri, 16 Jun 2023 13:11:37 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550179.859144; Fri, 16 Jun 2023 13:11:37 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qA9En-0004Df-Nu; Fri, 16 Jun 2023 13:11:37 +0000 Received: by outflank-mailman (input) for mailman id 550179; Fri, 16 Jun 2023 13:11:36 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qA9Em-0002qy-7N for xen-devel@lists.xenproject.org; Fri, 16 Jun 2023 13:11:36 +0000 Received: from esa3.hc3370-68.iphmx.com (esa3.hc3370-68.iphmx.com [216.71.145.155]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 50e18efe-0c47-11ee-8611-37d641c3527e; Fri, 16 Jun 2023 15:11:33 +0200 (CEST) Received: from mail-sn1nam02lp2041.outbound.protection.outlook.com (HELO NAM02-SN1-obe.outbound.protection.outlook.com) ([104.47.57.41]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 16 Jun 2023 09:11:32 -0400 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) by SA1PR03MB6547.namprd03.prod.outlook.com (2603:10b6:806:1c6::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.27; Fri, 16 Jun 2023 13:11:31 +0000 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::ab2a:a298:bacb:db47]) by SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::ab2a:a298:bacb:db47%2]) with mapi id 15.20.6477.037; Fri, 16 Jun 2023 13:11:31 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 50e18efe-0c47-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686921093; h=from:to:cc:subject:date:message-id:in-reply-to: references:content-transfer-encoding:mime-version; bh=hliZfAPo88FD8LfVDnai3HNz4jmGABT4LkpZwEyRO6Y=; b=EIMS6GEIOE+cnHYYTPOeiChalUDMos5guk+Itdt+AcXMCRKwBPASnegh ilQQVm65cyr6nth9u8MH2XQO+VnFnH2Wywc5Cl1BMPpAFv62LO1DweZk8 zrUK/VYUHVNlkkfTUJ61DxIBK5urt+dso9T8/Y1xsjBDxwHor6pwYCAKE A=; X-IronPort-RemoteIP: 104.47.57.41 X-IronPort-MID: 113085936 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:PXMC7qKm3KyjpAKmFE+R9JQlxSXFcZb7ZxGr2PjKsXjdYENS0jcPn 2sZWmmFP6yOMWfwfoogPdjg8UNSvZSBxtZnGQVlqX01Q3x08seUXt7xwmUcnc+xBpaaEB84t ZV2hv3odp1coqr0/0/1WlTZhSAgk/rOHvykU7Ss1hlZHWdMUD0mhQ9oh9k3i4tphcnRKw6Ws Jb5rta31GWNglaYCUpKrfrbwP9TlK6q4mhA4AVgPaojUGL2zBH5MrpOfcldEFOgKmVkNrbSb /rOyri/4lTY838FYj9yuu+mGqGiaue60Tmm0hK6aYD76vRxjnVaPpIAHOgdcS9qZwChxLid/ jnvWauYEm/FNoWU8AgUvoIx/ytWZcWq85efSZSzXFD6I+QrvBIAzt03ZHzaM7H09c5WI2N3r 8MzMAoSZ1OCp/jx/qCicvZF05FLwMnDZOvzu1lG5BSBV7MdZ8mGRK/Ho9hFwD03m8ZCW+7EY NYUYiZuaxKGZABTPlAQC9Q1m+LAanvXKmUE7g7K4/dopTSKpOBy+OGF3N79YNuFSN8Thk+Fj mnH4374ElcRM9n3JT+tqyv33r+SzHilMG4UPPqR+vlxkV6v/UMsIgUUf2rmqMecqGfrDrqzL GRRoELCt5Ma5EGtC9XwQRC8iHqFpQIHHcpdFfUg7wOAwbaS5ByWbkAbShZRZdpgs9U5LRQo2 UWOhMjBHiF0vfueTnf1y1uPhTa7OCxQNmlbYyYBFVEB+4O7/Nh1iQ/TRNF+FqLzlsfyBTz73 zGNqm45mqkXiskIka68+Dgrng6Rm3QAdSZtji2/Y45vxloRiFKND2Bw1WXm0A== IronPort-HdrOrdr: A9a23:VMB4m62i4+RO2J16MZc04wqjBH8kLtp133Aq2lEZdPU0SKalfq eV7ZEmPH7P+VQssR4b9exoVJPufZq+z+8X3WByB9aftWDd0QPEEGgL1+DfKlbbexEWmNQy6U 9hGZIOcuEZDzJB/LvHCArTKadd/DGemprY4ds3Vx1WPHlXg6cL1XYfNi+rVndYaSNhHpQDGJ +V9qN81kGdkSR+VLXcOpEdNdKz3uH2qA== X-Talos-CUID: 9a23:vDazD2FcCfusHHI6qmJG1kwtQP8OakfCxTTRA1X/N3RwcKK8HAo= X-Talos-MUID: 9a23:+eCLNwXTJT9FG5Hq/HjFiDZ5JcRU2IuRIlgPu6RbsvehFwUlbg== X-IronPort-AV: E=Sophos;i="6.00,247,1681185600"; d="scan'208";a="113085936" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=ZNlbY7Ytj+srlNC9JMF8R0olvHsYR5/re/Oj8HZbJXk+plfwgMhbzGakGiTTkubm5TtF7EPGdivF1ds1ifNE7ZgAWqC3xaIvmGiaDt11woFo5bn3OKRxcg8zrKOQxZxSGTgpgjRNMbMi/EuucWiuF0M9dIbMiQvw3DtQ1+6VC18hXts2B7PQyAgqh1XokuenoTy85W7cJVjg9p5LseKrbRWTMjpqyCWhKkwJyHXYyNCuWtmjw8GgWeRhlRAtp3v4KNV8voyRhQe0ZVJP5cObyLCwRXsPLD5VYGELiWbF8T02/LRdYhcgzkaNQiAMAzMBk1Axfj4nNTQ87fthSXDvQA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=iGF4NgKbdLxi9cAWht352jpRnufL5F1NEQpFr1PckI0=; b=N6Qu0J84U68sbzZi8DpVt9rJ6+atK+uO0k7jL4dC12CoZpPxcV9OsdJwT+hvPNYFr64XKTEF1gRjd5EUNo2m8giiM+n7mcfb68M5hojKDydsfGfZSKZew6vrtJgbP2CIPzM1Dy3VsZSAU3Z4JUaj6EWPH+5Fk1HLM2/E7cy5O8zAYVRSqp2zfVrXo6Q1AvnANdwkcWACUyRf596iNLyhJHjn+ZFPuPgHprzoSVREVGaMGxZrc7GaZzs8thdnsd9TOOOh126oGTUumBGBI8Y9Y2hl8zB6ookHKlrXDrt1uHVQZ80V7ouAMd2Z0eb4yCwH944RVSAinNdd+VilAXKIpA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=iGF4NgKbdLxi9cAWht352jpRnufL5F1NEQpFr1PckI0=; b=OaDR7hxIj8EsvyfH+EsdLfuDUz640mApD3aHdTOQ0cCdjshq3Fmgs8RcgqhkVux6QHwnx2PnjvyXnnhUDt3Cx9pcEhUcRdmaE1HxS3/KySoeYGhg4HvRu8XR7Se5SvfLUnkjuO6pfYdXu63lh9fkhrX3jBkJ0z+T6vF7Q/oLn4Y= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; From: Roger Pau Monne To: xen-devel@lists.xenproject.org Cc: Roger Pau Monne , Wei Liu , Anthony PERARD , Juergen Gross Subject: [PATCH 06/13] libs/guest: replace usage of host featureset in xc_cpuid_apply_policy() Date: Fri, 16 Jun 2023 15:10:12 +0200 Message-Id: <20230616131019.11476-7-roger.pau@citrix.com> X-Mailer: git-send-email 2.40.0 In-Reply-To: <20230616131019.11476-1-roger.pau@citrix.com> References: <20230616131019.11476-1-roger.pau@citrix.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO4P123CA0265.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:194::18) To SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|SA1PR03MB6547:EE_ X-MS-Office365-Filtering-Correlation-Id: 540acf58-dbd6-4f56-9352-08db6e6b337f X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: w+mFrfrLQ9hqQcZHzwtMGBSmXDkm8G3jttn1kx9vfjJRi70Lm6tqjlfadrrz0koPIBwhVjBHSXGlnKOjBoEpGH1JkUFL4S9niohLnC1Gb7IfcTfmDFB1my4nY7w2y65rVQWmaymV1tUEAXXmXsrHkUdN+zii1AZ7hJkUjqhE0ba8u+dtL7lC5+YLIiGgSsk9E0dp2tYtMqLdOc+PqzKMCC7RrwLhz7G+FWLj+gNtFtLVsZVre2UOIaxrw7xWzzWHuT5JmOuOXJOjfAqfVqVBp1TNc5VCa0L+89eN/b6mqeuPBUnFzN4VeZNqqyR/WPW89ZV69GeG46rQXsrnm9js7TuhquZ3nY+d4MgYvAJ/ni2mAw2pLQGEL3k4OnizWy+//EYJPLK6sWJXGmfCXQCMh8qFmH2wUIYZsQrP45jdcCFPT4JmN8xmSSOl4XuG+fDR58beOIHjLu8fBJQhc2gex5EJKf/Oo+p9tkWltcgXTb3CEYvVXlPr5Zk3wWVuST8YdKwLttOByVU96sVuJdQ8hiqzmYlib4qLH0NRHSiahKCQVDL7pOB17qSaU8+RQ1ee X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(366004)(39860400002)(136003)(376002)(396003)(346002)(451199021)(86362001)(38100700002)(8676002)(5660300002)(82960400001)(316002)(8936002)(41300700001)(66946007)(66556008)(66476007)(6916009)(4326008)(54906003)(83380400001)(2616005)(186003)(36756003)(478600001)(1076003)(6512007)(6506007)(26005)(2906002)(6486002)(6666004);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?ZUVFV3d2elN3VHhjMTd1eFRQUzJXdjNGYTJWcXlaNGQza0pHRU9ZdDZHZHBR?= =?utf-8?B?UlJWVXJMc0dFZUd0SzR3Qk5kK2pPOFV4K05DRlpmMmpNa3N2M1cxYWw4Q09C?= =?utf-8?B?OXYyUUJsbXYrREVGeVJvMHBhL2ZSNU9HR0l3WTcrRjU1MFNMM3dlb1FhVHRC?= =?utf-8?B?V1RwbkM5QlVYQzVtRUE0RFpCcFAvdFJvbW12dFlyUDFjZFUxVXZHeU9uTlNn?= =?utf-8?B?NFJaVm5rWjdTZk5KSTh1RFlYa0J6T0lieElYaDVCaEtwQzJqMk95MXRBL1do?= =?utf-8?B?NFQyRG1mMHpWNzdNYjg1VTR4bHRHOVJCM2R6aVN2Q2RjdEtBL2RKaVBzSmZq?= =?utf-8?B?Mk9RR1hJNFI2RXNueVFGSm1KM243ZGtObmN4Q29nNEVDRFJQSUFLZWMzVUdX?= =?utf-8?B?MlE1TFdKV1BvOVdaaDRPODg3NlJVZ2lMb3JIMWZaNVo4WlVMNlVMTDc3K3hT?= =?utf-8?B?YlZUdWhVQnJSQ0M5YkF3VVhuakRlOEtLVEVkVFZjTFhaQmRYYXJSVUhiVjBO?= =?utf-8?B?ZUVjNnJpdUxtbmVoNU1OOHhSajNtdlIvQ29adnJjajZQN2hCeUp4emYvMWNu?= =?utf-8?B?bHB3aTZzMTdRcU9vWk96K1IxK1NPYllUK1FIZGNCOFB4TnhJMGVVd01ITzFO?= =?utf-8?B?ODFwMW9qd0pqQlEzZEpJUmxoWlNOVnlROWM3MDFyclVETE1JcnNVR01wYVpP?= =?utf-8?B?S0JjUlRFbXFJWWZTUjlwcXUxT2x1OEJYMjFuZkFCUlFLSURjYzNGOGx2WnJJ?= =?utf-8?B?dEl1VFBkVWU2eXVoYWxQWXpPeTNVTHpFMXN2Um5FclM1WXZTcEZFYTdReDNx?= =?utf-8?B?SVl3R0w0Tk53YWVjL0ZHNzBwbVhiUGo5UC9rM2t0d0FCN05BR1M4b2lxUHNT?= =?utf-8?B?YlRXOFptbzBRSDBGUjYyUHpzcmpZb3VJd0o5K29xSnRsbTBYRThHQ0NsbWZT?= =?utf-8?B?ZFdwcUxCZ1JwMHphbDg5SHJ5NzVsSlpHL3FXalVWMVRvQWd2bFMwamRlQzFT?= =?utf-8?B?NWlod0V5dHcvYUNsbU9BcFIyYWtEUzVNWXkxN01ueVZLMXhzMGUySXFHYnlE?= =?utf-8?B?RkRyL2VVNmxmYkwwaXdZaHczMXY2S3d0M3FtNHBjRmNWSGhiTXVycWtCZkV1?= =?utf-8?B?Z2FqcVo1Y1JKTVhrZ2VCbVduTnNjQ21MVlBVUGtMcmx4VENqQ3A4Q09Hdnh5?= =?utf-8?B?L3ZpWDlKN0JhUFVBaDNJcUl0ZHJMZlJXRnJlZUFJVkg3NEZZZ2xUWW1LU2Fs?= =?utf-8?B?UDBZc2VlU2R2NVEwMS9ZV05WRm5xOXR4eXJmeG43cDFkRlg3M2RWOThYeFlN?= =?utf-8?B?enNZdTdMUVU0SXZPTG5vUkRxS082K09iMytKSjBzTkpEbWEyRzVWZ2EwZk80?= =?utf-8?B?OXlhZ2hybmJ1L1FoMDNqcTBHT1BNMHY1bzJGdWtDcmxLL0JJTmZrVDFjM1Ja?= =?utf-8?B?OXpoVktMaHZrRW5RbGhBZk9nTktLY1BXdlE3UWhic2M0M2NuWERURlZwSjk2?= =?utf-8?B?UnZEeitnb1BRc0lOMzZYK1ZTWGlPSjV1WFlsUXZqd0ZHR1R4WGFSa3A3NWlk?= =?utf-8?B?bEtxNTZwV3hpZTRtMlpnRFkwRTlwaUxOYTBFVmdEZmcrZE40c2hsdUZKR0VZ?= =?utf-8?B?QkJ3dGJjZDZUVTFkR2laVmcvNEthb2JPV21pWkVpT0NBbXYrWG9TOERNM0Uy?= =?utf-8?B?OEZ0dUNMTVNxTElnZ0lmU3N2RU94TCtoOHZhQnZTR3JrMnFpeXdxZ2VWdEJv?= =?utf-8?B?MVlGVXZTWlFtMjhHUzB2SFdQV1ZLV2gvWHZBR0V0bkNCTURhOURzQ1dFZkh3?= =?utf-8?B?NjhCYmNrSE5GZU9pWVZvTDVNdTkzTW96QkNYY2NtZUYxUHpKRmx5ck1xS3RJ?= =?utf-8?B?K2JGdEVqZ2ZQZktGdkRKSUJZTmJtVjVWQlZzcTMyYjBVcXBidjAvSVR1MTdX?= =?utf-8?B?QXpBUjFGbmdZVkJVZVJhUnZIOVczZzE5a2R3WktJcGZ0aGVwU255YkpJV1hi?= =?utf-8?B?ZUhGTHp0U2ZNK1EwZVQ4V2RDR2xnN3J3ZElKN3Q0MjJpdzQ3M0t6MXVHcXlu?= =?utf-8?B?aXcxT3FUanBtSzVPb0RST3NkM3lXUFFidEorcXdJVjBaMG1memVBU3RHanB4?= =?utf-8?B?VFZmZnlobHZRSWozN0tkZUNweXdRUDlsYi9OcEdlZkg5bnVaNFlQUlgreStj?= =?utf-8?B?ZkE9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: WYmnaNAMWKIeaI9LqVwxK+pQz+k+YgLLUxgoqcD+ikKPoRnTYZo1JCl+a3rfZfMbr3fYKjpudNfXxAEtftt+ZJNjNytX5O0Ou+lwWRUU3r1Y6IgfdyFfxBAcihocWDJliHovM3gbYbyaYJ4rLjmNxHlnJ42/jL+OUqVWrP4byb2Y9vkxZAqBpT915r7TjiE9Y6YVFGaPKZol5UMQMCdp5zKhqdFZWkpCrbEWi+HxbRF0h3cVGs07OWeZu22NRpwif+oBWLALXOxg0A7z4o4LZL5zfxTT+Is+qgwLLxWzvWm76D+fMFR+eI7+TWAYb5FUBDrTcb10eTfYd5WUrlN2T2j7JIMkVc9DL5ssN+XQdsmsOtALJF8AfYoeiPHyelzU4pa0PL/vV62+jjOkJjhgB4ydPTIQo4uBQHD1lV1SMlW45sNiLl/npgx/tbPmhIA3grQsDIh96BdHocpzdivR2psaGUE6sIsg4aQm+gvz3mQcg0c8xYULQ71W8JKZZoOFB2zhAH87Ax9I4tFLrFggy9ImQHvqR85h2AqMd+nda4ci7N9u3FYwFbabNLMLXfL2hWWoNP3Lv0fF8RR5zkD+RDSsXpMD/tJml3Mor0zWOH6vDwMGg3Opq8qjgIHYTUiKYKv6d98srdGRYtapwuaMCx8/fNKjVRGnH/dHRT0ztW20F+VKJJpiNgX/UgbloobKlaNKY5V0CVrKnG56bjaqZyn3KeTMerkyzRtirK66j0/cGvbL8MKGuf2Q+RvuS6dDjV6ufn2b5Bf7XRVeb0k8y5Si4BXNkbY/a7KCuGpvnE1iznR/i2aMVUmBefwc4hiA X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 540acf58-dbd6-4f56-9352-08db6e6b337f X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Jun 2023 13:11:31.0398 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: a7JYpF5c2J7HQrkbEzZRm0RLw0pIF6wMU0MfiYbYp2XTH2jFmLCvU7iCxuqI8/bqmR4njXUtjmxSZLOASnig8A== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA1PR03MB6547 Further changes to the function will require a host policy, hence switch usages now in order to avoid having both a host featureset and a host policy in the same context. No functional change intended. Signed-off-by: Roger Pau Monné --- tools/libs/guest/xg_cpuid_x86.c | 27 ++++++++++++--------------- 1 file changed, 12 insertions(+), 15 deletions(-) diff --git a/tools/libs/guest/xg_cpuid_x86.c b/tools/libs/guest/xg_cpuid_x86.c index c67e8c458f24..1e532b255c21 100644 --- a/tools/libs/guest/xg_cpuid_x86.c +++ b/tools/libs/guest/xg_cpuid_x86.c @@ -432,10 +432,8 @@ int xc_cpuid_apply_policy(xc_interface *xch, uint32_t domid, bool restore, bool hvm; xc_domaininfo_t di; unsigned int i; - xc_cpu_policy_t *policy = NULL; + xc_cpu_policy_t *policy = NULL, *host = NULL; struct cpu_policy *p; - uint32_t host_featureset[FEATURESET_NR_ENTRIES] = {}; - uint32_t len = ARRAY_SIZE(host_featureset); if ( (rc = xc_domain_getinfo_single(xch, domid, &di)) < 0 ) { @@ -446,16 +444,14 @@ int xc_cpuid_apply_policy(xc_interface *xch, uint32_t domid, bool restore, hvm = di.flags & XEN_DOMINF_hvm_guest; rc = -ENOMEM; - if ( (policy = xc_cpu_policy_init()) == NULL ) + if ( (policy = xc_cpu_policy_init()) == NULL || + (host = xc_cpu_policy_init()) == NULL ) goto out; /* Get the host policy. */ - rc = xc_get_cpu_featureset(xch, XEN_SYSCTL_cpu_featureset_host, - &len, host_featureset); - /* Tolerate "buffer too small", as we've got the bits we need. */ - if ( rc && errno != ENOBUFS ) + rc = xc_cpu_policy_get_system(xch, XEN_SYSCTL_cpu_policy_host, host); + if ( rc ) { - PERROR("Failed to obtain host featureset"); rc = -errno; goto out; } @@ -485,13 +481,13 @@ int xc_cpuid_apply_policy(xc_interface *xch, uint32_t domid, bool restore, * - Re-enable features which have become (possibly) off by default. */ - p->basic.rdrand = test_bit(X86_FEATURE_RDRAND, host_featureset); - p->feat.hle = test_bit(X86_FEATURE_HLE, host_featureset); - p->feat.rtm = test_bit(X86_FEATURE_RTM, host_featureset); + p->basic.rdrand = host->policy.basic.rdrand; + p->feat.hle = host->policy.feat.hle; + p->feat.rtm = host->policy.feat.rtm; if ( hvm ) { - p->feat.mpx = test_bit(X86_FEATURE_MPX, host_featureset); + p->feat.mpx = host->policy.feat.mpx; } p->basic.max_leaf = min(p->basic.max_leaf, 0xdu); @@ -560,8 +556,8 @@ int xc_cpuid_apply_policy(xc_interface *xch, uint32_t domid, bool restore, * On hardware without CPUID Faulting, PV guests see real topology. * As a consequence, they also need to see the host htt/cmp fields. */ - p->basic.htt = test_bit(X86_FEATURE_HTT, host_featureset); - p->extd.cmp_legacy = test_bit(X86_FEATURE_CMP_LEGACY, host_featureset); + p->basic.htt = host->policy.basic.htt; + p->extd.cmp_legacy = host->policy.extd.cmp_legacy; } else { @@ -635,6 +631,7 @@ int xc_cpuid_apply_policy(xc_interface *xch, uint32_t domid, bool restore, out: xc_cpu_policy_destroy(policy); + xc_cpu_policy_destroy(host); return rc; } -- 2.40.0 From xen-devel-bounces@lists.xenproject.org Fri Jun 16 13:11:49 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 16 Jun 2023 13:11:49 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550191.859154 (Exim 4.92) (envelope-from ) id 1qA9Ez-00058r-7x; Fri, 16 Jun 2023 13:11:49 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550191.859154; Fri, 16 Jun 2023 13:11:49 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qA9Ez-00058k-4L; Fri, 16 Jun 2023 13:11:49 +0000 Received: by outflank-mailman (input) for mailman id 550191; Fri, 16 Jun 2023 13:11:47 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qA9Ex-0001xG-J5 for xen-devel@lists.xenproject.org; Fri, 16 Jun 2023 13:11:47 +0000 Received: from esa6.hc3370-68.iphmx.com (esa6.hc3370-68.iphmx.com [216.71.155.175]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 5730c64e-0c47-11ee-b232-6b7b168915f2; Fri, 16 Jun 2023 15:11:45 +0200 (CEST) Received: from mail-sn1nam02lp2049.outbound.protection.outlook.com (HELO NAM02-SN1-obe.outbound.protection.outlook.com) ([104.47.57.49]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 16 Jun 2023 09:11:39 -0400 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) by SA1PR03MB6547.namprd03.prod.outlook.com (2603:10b6:806:1c6::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.27; Fri, 16 Jun 2023 13:11:37 +0000 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::ab2a:a298:bacb:db47]) by SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::ab2a:a298:bacb:db47%2]) with mapi id 15.20.6477.037; Fri, 16 Jun 2023 13:11:37 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 5730c64e-0c47-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686921105; h=from:to:cc:subject:date:message-id:in-reply-to: references:content-transfer-encoding:mime-version; bh=+2q9vH3BWwKJ4q10lD+ahR58VVJqbvLHJmNue2GHCrU=; b=d4llkfzJnyq7n5jYv4yTlruuNkNcgHVA+xUzXqnREqHBWN3juJRmgAyL IDPyImGvsCrlViTItIF+AxoOIbRUb7iV8fIQBs+FIBH8BHI1s6bvUkNMB iZDkWYEcTLtJLXfRCSMPYdM0l6n1WCIXBdAgodpx8T+cVji+xPzXYqDXF Q=; X-IronPort-RemoteIP: 104.47.57.49 X-IronPort-MID: 112390549 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:ctEjZ6PbgSMOxW/vrR2AlsFynXyQoLVcMsEvi/4bfWQNrUorhjEHx zNJC2qHbPjbM2GmfNlyatznpBsHuZ7Xz98xHQto+SlhQUwRpJueD7x1DKtS0wC6dZSfER09v 63yTvGacajYm1eF/k/F3oDJ9CU6jufQAOKnUoYoAwgpLSd8UiAtlBl/rOAwh49skLCRDhiE/ Nj/uKUzAnf8s9JPGjxSs/rrRC9H5qyo42tG5wJmP5ingXeF/5UrJMNHTU2OByOQrrl8RoaSW +vFxbelyWLVlz9F5gSNy+uTnuUiG9Y+DCDW4pZkc/HKbitq/0Te5p0TJvsEAXq7vh3S9zxHJ HehgrTrIeshFvWkdO3wyHC0GQkmVUFN0OevzXRSLaV/ZqAJGpfh66wGMa04AWEX0vlqX0x/5 dwnEhZTURSFleS9npuJc/Y506zPLOGzVG8ekldJ6GmDSM0AGNXESaiM4sJE1jAtgMwIBezZe 8cSdTtoalLHfgFLPVAUTpk5mY9EhFGmK2Ee9A3T+PVxvzm7IA9ZidABNPLPfdOHX4NNl1uwr WPa5WXpRBodMbRzzBLcqyj317eSwXKTtIQ6Tb7gzdhnsgGplmULJTEGWGS8/9SasxvrMz5YA wlOksY0loAi+UruQtTjUhmQpH+fogVaS9dWC/c96gyG1uzT+QnxLncAZi5MbpohrsBebT4lz FiShPvyGCdi9raSTBqgGqy8qDqzPW0OKzYEbCpcFw8duYG/8cc0kw7FSctlHOitlNrpFDrsw jeM6i8jm7EUis1N3KK+lbzavw+RSlHyZlZdzm3qsqiNtGuVuKbNi1SU1GXm IronPort-HdrOrdr: A9a23:4dj846xVaAnJ9/NH6hS+KrPwFr1zdoMgy1knxilNoHtuHvBw9v rAoB1/73TJYVkqNk3I9ergBEDjewK+yXcF2+ks1N6ZNWGN1VdAR7sSj7cKrQeQfBHWx6pw0r phbrg7KPCYNykdsS8i2njcLz/3+qjizJyV X-Talos-CUID: 9a23:6FAg2GH1zY/fPuzFqmJ46RA5K9AFTUf7kkjUJV2+AjhAeoSKHAo= X-Talos-MUID: =?us-ascii?q?9a23=3AgNTsJQ7Qz/d5d5fnjcJCRPuKxowx4PyVLk0/za9?= =?us-ascii?q?WstGpGTx9BDDDoReOF9o=3D?= X-IronPort-AV: E=Sophos;i="6.00,247,1681185600"; d="scan'208";a="112390549" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=JJcd6w41D7eAqMmjTeMfS87UM5Fo8p0gQFLslaF6flD8wpt1WWVZC5p2wuhyOWuTTw5adYAC+qwxt+Moy2R49+zPAsd7Mzjay+QEVtviGVMIwwViHqjEIVGgzkmkzOeJGfVdow7wsY/bd7KkJtHX5HNnZ2ZhkFJAa0DnAkAfKOl+1qQFGuQFYQQbMvWw4r3y5inhPj5YgQ3uZ1cwz+gbXbgFw5bPjhbM0k6zP7vKWIHR7rPdslcVZ0PGwK7+hVFNNgrw99LW0Mp0UjHm3ARzd+w3K4yXuo7NxyRPjEuwRITRxLkr3dBgB5zsfhc32Pyot+Ckap0Kzngq0s72+jzr+A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=jzuDL17K5HVWw0U6vxRy/7T4WO2u/BryL7lPZZcHWag=; b=WOSc5Z4iKbhxZYgKarS/z0H4pX4+fE+OoRGRd2s7b3Z53l6uBrROqR5vKIKB83i/ZkCUnRKlO6IcwtVluird1KP4pgYDFwpzl8p4mxZ0b8OVyWRYvRCMX6Hesizqk/F+RoeYQHOIHXYXCsghTMnaIT+ocuIWEdXxjpzVqklTR8vv5AhydrzUeDpqDT9ZDWKMS5mbYCeC6ehbncZXzZ6FLYtliEqfutTAk8q7rsokTWgmlB/ZIeQ/IpO61Xn2x9tdYuPvjCDtUwLYv3PPs7rLB6qBT3H6eiznO/VmoY2Whz7/U0ETPkMW6vBf8mhZHRBTHaQ6TzB1RSaPt/s/zxwgmQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=jzuDL17K5HVWw0U6vxRy/7T4WO2u/BryL7lPZZcHWag=; b=O42NuCWVqDSMVxp2yrYlCYwF5ESGmopGBkIb5PEMqu3SdJK9M8LI0E+lDKvwQUUXIAyR8fH8ffFsz3mqpVejX2EyYzeSWYufLG71f+N2PYR2G7BsYfv8HH2yumIlgkltDiiOtMADEF0z1Zeg4cNaXHyBppcwHqX3Bzwaz0Cn1t8= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; From: Roger Pau Monne To: xen-devel@lists.xenproject.org Cc: Roger Pau Monne , Wei Liu , Anthony PERARD , Juergen Gross Subject: [PATCH 07/13] libs/guest: rework xc_cpuid_xend_policy Date: Fri, 16 Jun 2023 15:10:13 +0200 Message-Id: <20230616131019.11476-8-roger.pau@citrix.com> X-Mailer: git-send-email 2.40.0 In-Reply-To: <20230616131019.11476-1-roger.pau@citrix.com> References: <20230616131019.11476-1-roger.pau@citrix.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO4P265CA0226.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:315::7) To SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|SA1PR03MB6547:EE_ X-MS-Office365-Filtering-Correlation-Id: fc458089-4a5c-4dbb-a79e-08db6e6b3734 X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: heDrS+Pwg6ht+hA6JrBnglIfFiSrq8dLSnGfMh1uptVnjtnumaSuWcEP1rGanmY6yL/z9UZlDTO9NGJzaEelA0W1SGCcG7V8yt/ZmxzUKBkQzribqG3si3jra9JfrDSzNUD6zZo4EsIimSb1gduAmzE2GMYNji8VYreb+8W8LRyzjj+Me96KYLXCwLMpq/P8FzB+zXyT+TL4gklaT/noq6XniNrH9m8z6thQCZAUcAJIgvZhQ16bgH2dfxiB6ifhGigS8DK4lSY5pAiK8VY4fRiW90tMfDH109pcmlAWkZsh86WCUBkDqQtCXeUK1rKhSNahrU1M4d2JDmn871igVLeVNdiLyd/uDHh/wcGPIOAuXGkf37MIJ805teLZ9cjNsym8qp204qYNW6YQETWSBO8bPWsgQXjh9O7d89PnhtC1/OKTPjtQdtCFqTxWiyBOWSzh8SuwuERcjej9c9tsuohrk2RaYmMbn1JUXKTRuG5zjCbf0Y+hBEvLYDP6nkyfa30MeyIljDK/xOyjNzRlBqyFcT9hdnPtjx95aiedLwUbXGsB1Y0qep3ptsVS/daJ X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(366004)(39860400002)(136003)(376002)(396003)(346002)(451199021)(86362001)(38100700002)(8676002)(5660300002)(82960400001)(316002)(8936002)(41300700001)(66946007)(66556008)(66476007)(6916009)(4326008)(54906003)(83380400001)(2616005)(186003)(36756003)(478600001)(1076003)(6512007)(6506007)(26005)(2906002)(6486002)(6666004);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?YUxBUHZVcWY4UFpTcy8vSldIbmYxZkVtWmxwTXpEdDNOalN1V05Ea2RxUDM4?= =?utf-8?B?TUVlTC83RVlQL0xuSllkbXRBT0NGTUlmUG1nTXhtT2YwdkRvNStHNVZyaVU1?= =?utf-8?B?THZiYzJkZnJWVlFZbTFwbS95ZnZ1dnY2d0pnVTFzSHN3TnBOMEl4a2FrQkw4?= =?utf-8?B?V2xTVW5vVXp3MXJuZ3I3UmZpalNQK0NDSytETXZJamNTcDdENkhsZnNDRG95?= =?utf-8?B?NWZreG05YXcrYkhHZ0RKVDFuU0szeTBTVFNIc09VVlFFU0RqdWpBZFcvMEJU?= =?utf-8?B?SFVLOXgvcWhsUEhFZU5rT2MxUFV1Q3p6ZVJlV2ZrYzFHQ1h4S2RGVTJOblBy?= =?utf-8?B?UllWOHpzWk9WcnJLZWp6VTB2UWNSbmp4dXFvM1hmaWc5eHhwMlVIMUJVTkxj?= =?utf-8?B?a3U5L3dEQk9BNjFxSkZ3TXI2TkQvQnJyTVA1TlU1Q3pna3pwMWkwOFpFaHQz?= =?utf-8?B?L1p0c29Xd3puQkFUSEtTUTV0b3QxUUFnNllkOVdiSUtwRFZ2MkEyd0ZCSDJs?= =?utf-8?B?cFdMRGZDRjg4Unc1RnhBM21wK0pTb0JPazJDYWtYQS9xMm5tbENrSXJRUWln?= =?utf-8?B?T3NWZ2k1ekZGaEJZNi9Ld3R1UXhjbVRMaDdIaTdVRGxudkdhV2hmWTRSUkVl?= =?utf-8?B?b0VVazB5bWZqQlBqSXozVm54dGM5NlpVRElIRXZvb2d6WCtxS2tXTnpVRUR5?= =?utf-8?B?cThSbXNZdkI1R1ZFMVhqY0xqTmpWbkNXNHhsb3VlOFVtUlY0VXV0RG52UWsw?= =?utf-8?B?MmNKTDFQcHZsdU1MWFh3Uisya08wM05KSWNOTFdrYTJhOXpaZ0FPMm9iMmF0?= =?utf-8?B?UllYeUZFK3kxZXVtc1U5NGtyM0liSmdZWkl4UG9ic0NhQTA2SUtIelVrVndF?= =?utf-8?B?cnkyNVNpci81UEJJM2JHYnZyUWNQUWpnQmZWalBuTDVjbTM4TTJHeFIyU2Ur?= =?utf-8?B?TmpUNXZqbmVRYTduVTN3TEZiMXJQY0NneVlYK0VuOHh2T2QvYWVyQyt0REMw?= =?utf-8?B?RXlQNENvMnNZRUxSK2FaeHVhOTRqc3U1YUNCY2lTQnVlRXJ4cFlsSnNlSWlp?= =?utf-8?B?NFNONld5b0g2a2p4NTlkV2FaTzFDQ0VyVUpTa1lROHpCTlRZQUtoa0U4SE81?= =?utf-8?B?eVg2ZUwxbzBvYVhvaHEyeFFJMjJXcWx3Y2FWUXFYUVpKWjZkTXd1b3VtSXZ6?= =?utf-8?B?ZDhkbzVudHM2M3JjQlUyalZUeVRqK1ZSTDl1MkpRdU9Lem1yTWNjdUdJZ0s3?= =?utf-8?B?SEROU1U0OFZJWnh6YjN3WFFUZXhzZ3BzZ24vZk5wWVpnb0p3RWsrSnF0MlNN?= =?utf-8?B?b2YyQWM4ZENSM2lya3dvbnNSK0h3WTVlcXVDNGtreVdHQ3NXTEtJWFpIajBs?= =?utf-8?B?MDVGNGRnMHhWZjJhZ3RVM2NtOTJRQ0FUaXZRSE0yc1NiR0NkKzZJeTJvajhu?= =?utf-8?B?YzdHV3NQTDdoeFZhMEZVREZwVmVRd3JyWkdYMlp2OVQ4bm9zUVRHMVFRc1Zp?= =?utf-8?B?NGxZdHpvQU5WLzJiQVhnT3V4VTljR0JTT1piS2FIa0VlWGh5QzVNOXRoOHBk?= =?utf-8?B?M1U4SGdkaDhZREcxeDgzVGsydGVFb2lsTm84K3N0S1JQWDRrNFR0SFppd0t6?= =?utf-8?B?WktVZ0YvTjExVDcwa3AwZG1welhNbnJqY2MvRWRCSk1kNmJJcGdseXE5N2ht?= =?utf-8?B?WmN5VmtmZ0hHaHRWcXhqNStqZlRqVllKN0hZeGwwYTd0QzcxOGRJNkRPTFFX?= =?utf-8?B?K2ttdTVpUVBkRWs4dFBiR1BsdFVsSmZFTmxxbnNzdnRGZTNpM2FBSjN4UzRv?= =?utf-8?B?am9ZalRvai83Tmgzd0pVTUhEQnhtR21oWEdZYjFwR1ZQOVBpV3UwUzBvdTlH?= =?utf-8?B?bXJya3ZGK0x5UERYTWpUcnEvMzNVNWkzL2ZyUk5NeXVLOWZTeVpqd0VLRml2?= =?utf-8?B?QkxDVTRsZUp5NUt3WVRyRy90TTdVcC9wMUhGdVhhOVUyU3RtSHhSalhHeFJR?= =?utf-8?B?aGxraUJrZWpxelVzTHFGZGxPR2x0ck5mSDU0V0xzdlU2cU5ZNHo5S2NKOGxU?= =?utf-8?B?ME1sSkRUTk9EVkNaT3ZNdTlvajJwOFRYZm1ETGRLQ2Q5RGVBbDFJUDdQUW8z?= =?utf-8?B?dHlnbStkdUhYazJRaDQ4bDNaaGtCT1ZsUHVpZ2lIMithVUZiMEkzODVLcEJi?= =?utf-8?B?blE9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: FLW0e8Vk3yWOqJecLInbegesChKsF6UWLxZDtN7hqkqkpRzKHocmhpeiuLtArf3WspAmH4bajvpsFdroF9bznc0oPfnVgcPA6p9QSco/w8twI5Agw8e/hQ7gH/0R4eEzcujWFq7wju08w5JX9FW7NBsJC0pMKg4SFzdVHoId30Ry/+1Rb/uTmzGSUmJttHwLL7AGNBTJf7XJaMo6iSDrhQ/RQ4UahQLRhkOzhQ0qGkiY5TSfyQSci6DTFuRCdzoZ4TlABsy7BsHhhcSvjbbmAODNSg5uTv7mG3KFoMbxSGfdaDTYwrUMbMv/Vc1R+nyK59XjDC+HZifJDrnrxsIzmmsIzOqSbDH51TN5EVZo+SRaFJ87aX3bZ4qF/GxavUJhBK98uiZREVdYZ6i9+yRgKjk7SGxwTsVxLXPz0ipgzcKLWZ7wqKuxxA2+hvGW+mK5WNet6aF8oQZb23RVGEtCRNOyOXy8h7kf2Tp39PmqhilAkcNkgHScfT3MHhhQ5Op635kw2KriHThpewXSm8ZgYY+eDGv1wZQDGJg1vgDGbvna6HFFriXJmrG9TRuIEaxep+BD73HiTw5aWGjl5L0WpYqkyBkWiak04UDzOKXIpL73UnmSEuVISqEYTCq6NWyLsZ0Awa3C/YHkSQ7X4mzJCqihce97+JZ96NJPW1sQQnhKGyR/G5kE3acIejLLlOtx6eUV4SndMxPL1A37aQCufL0L48P6TPO+kOsVh1/uACGfDI3xDuM6uB3QW5hM1dL7RhYyjzOwRm80mUVf4MaiEtsKNgQAdaF4T42J9oJPG6SUKV6/cVtX6rTc+poil91x X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: fc458089-4a5c-4dbb-a79e-08db6e6b3734 X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Jun 2023 13:11:37.2341 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: cy0YDn+iU4ge2oC5M5gwrxB2x7nhZDLUDicxPW/oib55CLj/xLBhKgc7RO9NaR1Axvs+GTaBDE85HQ7dtXYpTw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA1PR03MB6547 Rename xc_cpuid_xend_policy to xc_cpu_policy_apply_cpuid and make it public. Modify the function internally to use the new xc_cpu_policy_* set of functions. Also don't apply the passed policy to a domain directly, and instead modify the provided xc_cpu_policy_t. The caller will be responsible of applying the modified cpu policy to the domain. The find_leaf helper and related comparison function is also removed, as it's no longer needed to search for cpuid leafs as finding the matching leaves is now done using xc_cpu_policy_get_cpuid. For the purpose of the 'x' modifier, assume that the passed xc_cpu_policy_t 'policy' parameter contains the default policy, and hence just skip making any modifications in that case. This simplifies some of the logic and avoids having to fetch the default policy for the domain. No functional change intended. Signed-off-by: Roger Pau Monné --- Changes since v6: - Pass a host policy to xc_cpuid_apply_policy. Changes since v3: - Drop find_leaf and comparison helper. --- tools/include/xenctrl.h | 2 +- tools/include/xenguest.h | 5 + tools/libs/guest/xg_cpuid_x86.c | 201 +++++++++----------------------- 3 files changed, 64 insertions(+), 144 deletions(-) diff --git a/tools/include/xenctrl.h b/tools/include/xenctrl.h index dba33d5d0f39..45f05a2d3d7e 100644 --- a/tools/include/xenctrl.h +++ b/tools/include/xenctrl.h @@ -1839,7 +1839,7 @@ int xc_cpuid_apply_policy(xc_interface *xch, uint32_t domid, bool restore, const uint32_t *featureset, unsigned int nr_features, bool pae, bool itsc, - bool nested_virt, const struct xc_xend_cpuid *xend); + bool nested_virt, const struct xc_xend_cpuid *cpuid); int xc_mca_op(xc_interface *xch, struct xen_mc *mc); int xc_mca_op_inject_v2(xc_interface *xch, unsigned int flags, xc_cpumap_t cpumap, unsigned int nr_cpus); diff --git a/tools/include/xenguest.h b/tools/include/xenguest.h index 2672fd043cf9..705a93a058fb 100644 --- a/tools/include/xenguest.h +++ b/tools/include/xenguest.h @@ -817,6 +817,11 @@ int xc_cpu_policy_get_msr(xc_interface *xch, const xc_cpu_policy_t *policy, bool xc_cpu_policy_is_compatible(xc_interface *xch, xc_cpu_policy_t *host, xc_cpu_policy_t *guest); +/* Apply an array of xc_xend_cpuid leafs to the policy. */ +int xc_cpu_policy_apply_cpuid(xc_interface *xch, xc_cpu_policy_t *policy, + const struct xc_xend_cpuid *cpuid, + const xc_cpu_policy_t *host); + int xc_get_cpu_levelling_caps(xc_interface *xch, uint32_t *caps); int xc_get_cpu_featureset(xc_interface *xch, uint32_t index, uint32_t *nr_features, uint32_t *featureset); diff --git a/tools/libs/guest/xg_cpuid_x86.c b/tools/libs/guest/xg_cpuid_x86.c index 1e532b255c21..0d0970d4bd69 100644 --- a/tools/libs/guest/xg_cpuid_x86.c +++ b/tools/libs/guest/xg_cpuid_x86.c @@ -254,145 +254,67 @@ int xc_set_domain_cpu_policy(xc_interface *xch, uint32_t domid, return ret; } -static int compare_leaves(const void *l, const void *r) +int xc_cpu_policy_apply_cpuid(xc_interface *xch, xc_cpu_policy_t *policy, + const struct xc_xend_cpuid *cpuid, + const xc_cpu_policy_t *host) { - const xen_cpuid_leaf_t *lhs = l; - const xen_cpuid_leaf_t *rhs = r; - - if ( lhs->leaf != rhs->leaf ) - return lhs->leaf < rhs->leaf ? -1 : 1; - - if ( lhs->subleaf != rhs->subleaf ) - return lhs->subleaf < rhs->subleaf ? -1 : 1; - - return 0; -} - -static xen_cpuid_leaf_t *find_leaf( - xen_cpuid_leaf_t *leaves, unsigned int nr_leaves, - const struct xc_xend_cpuid *xend) -{ - const xen_cpuid_leaf_t key = { xend->leaf, xend->subleaf }; - - return bsearch(&key, leaves, nr_leaves, sizeof(*leaves), compare_leaves); -} - -static int xc_cpuid_xend_policy( - xc_interface *xch, uint32_t domid, const struct xc_xend_cpuid *xend) -{ - int rc; - bool hvm; - xc_domaininfo_t di; - unsigned int nr_leaves, nr_msrs; - uint32_t err_leaf = -1, err_subleaf = -1, err_msr = -1; - /* - * Three full policies. The host, default for the domain type, - * and domain current. - */ - xen_cpuid_leaf_t *host = NULL, *def = NULL, *cur = NULL; - unsigned int nr_host, nr_def, nr_cur; - - if ( (rc = xc_domain_getinfo_single(xch, domid, &di)) < 0 ) - { - PERROR("Failed to obtain d%d info", domid); - rc = -errno; - goto fail; - } - hvm = di.flags & XEN_DOMINF_hvm_guest; - - rc = xc_cpu_policy_get_size(xch, &nr_leaves, &nr_msrs); - if ( rc ) - { - PERROR("Failed to obtain policy info size"); - rc = -errno; - goto fail; - } - - rc = -ENOMEM; - if ( (host = calloc(nr_leaves, sizeof(*host))) == NULL || - (def = calloc(nr_leaves, sizeof(*def))) == NULL || - (cur = calloc(nr_leaves, sizeof(*cur))) == NULL ) - { - ERROR("Unable to allocate memory for %u CPUID leaves", nr_leaves); - goto fail; - } - - /* Get the domain's current policy. */ - nr_msrs = 0; - nr_cur = nr_leaves; - rc = get_domain_cpu_policy(xch, domid, &nr_cur, cur, &nr_msrs, NULL); - if ( rc ) - { - PERROR("Failed to obtain d%d current policy", domid); - rc = -errno; - goto fail; - } - - /* Get the domain type's default policy. */ - nr_msrs = 0; - nr_def = nr_leaves; - rc = get_system_cpu_policy(xch, hvm ? XEN_SYSCTL_cpu_policy_hvm_default - : XEN_SYSCTL_cpu_policy_pv_default, - &nr_def, def, &nr_msrs, NULL); - if ( rc ) + for ( ; cpuid->leaf != XEN_CPUID_INPUT_UNUSED; ++cpuid ) { - PERROR("Failed to obtain %s def policy", hvm ? "hvm" : "pv"); - rc = -errno; - goto fail; - } - - /* Get the host policy. */ - nr_msrs = 0; - nr_host = nr_leaves; - rc = get_system_cpu_policy(xch, XEN_SYSCTL_cpu_policy_host, - &nr_host, host, &nr_msrs, NULL); - if ( rc ) - { - PERROR("Failed to obtain host policy"); - rc = -errno; - goto fail; - } - - rc = -EINVAL; - for ( ; xend->leaf != XEN_CPUID_INPUT_UNUSED; ++xend ) - { - xen_cpuid_leaf_t *cur_leaf = find_leaf(cur, nr_cur, xend); - const xen_cpuid_leaf_t *def_leaf = find_leaf(def, nr_def, xend); - const xen_cpuid_leaf_t *host_leaf = find_leaf(host, nr_host, xend); + xen_cpuid_leaf_t cur_leaf, host_leaf; + int rc; - if ( cur_leaf == NULL || def_leaf == NULL || host_leaf == NULL ) + rc = xc_cpu_policy_get_cpuid(xch, policy, cpuid->leaf, cpuid->subleaf, + &cur_leaf); + if ( rc ) { - ERROR("Missing leaf %#x, subleaf %#x", xend->leaf, xend->subleaf); - goto fail; + ERROR("Failed to get current policy leaf %#x subleaf %#x", + cpuid->leaf, cpuid->subleaf); + return rc; + } + rc = xc_cpu_policy_get_cpuid(xch, host, cpuid->leaf, cpuid->subleaf, + &host_leaf); + if ( rc ) + { + ERROR("Failed to get host policy leaf %#x subleaf %#x", + cpuid->leaf, cpuid->subleaf); + return rc; } - for ( unsigned int i = 0; i < ARRAY_SIZE(xend->policy); i++ ) + for ( unsigned int i = 0; i < ARRAY_SIZE(cpuid->policy); i++ ) { - uint32_t *cur_reg = &cur_leaf->a + i; - const uint32_t *def_reg = &def_leaf->a + i; - const uint32_t *host_reg = &host_leaf->a + i; + uint32_t *cur_reg = &cur_leaf.a + i; + const uint32_t *host_reg = &host_leaf.a + i; - if ( xend->policy[i] == NULL ) + if ( cpuid->policy[i] == NULL ) continue; for ( unsigned int j = 0; j < 32; j++ ) { bool val; - if ( xend->policy[i][j] == '1' ) + switch ( cpuid->policy[i][j] ) + { + case '1': val = true; - else if ( xend->policy[i][j] == '0' ) + break; + + case '0': val = false; - else if ( xend->policy[i][j] == 'x' ) - val = test_bit(31 - j, def_reg); - else if ( xend->policy[i][j] == 'k' || - xend->policy[i][j] == 's' ) + break; + + case 'x': + /* Leave alone: the current policy is the default one. */ + continue; + + case 'k': + case 's': val = test_bit(31 - j, host_reg); - else - { + break; + + default: ERROR("Bad character '%c' in policy[%d] string '%s'", - xend->policy[i][j], i, xend->policy[i]); - goto fail; + cpuid->policy[i][j], i, cpuid->policy[i]); + return -EINVAL; } clear_bit(31 - j, cur_reg); @@ -400,33 +322,19 @@ static int xc_cpuid_xend_policy( set_bit(31 - j, cur_reg); } } - } - /* Feed the transformed currrent policy back up to Xen. */ - rc = xc_set_domain_cpu_policy(xch, domid, nr_cur, cur, 0, NULL, - &err_leaf, &err_subleaf, &err_msr); - if ( rc ) - { - PERROR("Failed to set d%d's policy (err leaf %#x, subleaf %#x, msr %#x)", - domid, err_leaf, err_subleaf, err_msr); - rc = -errno; - goto fail; + rc = xc_cpu_policy_update_cpuid(xch, policy, &cur_leaf, 1); + if ( rc ) + return rc; } - /* Success! */ - - fail: - free(cur); - free(def); - free(host); - - return rc; + return 0; } int xc_cpuid_apply_policy(xc_interface *xch, uint32_t domid, bool restore, const uint32_t *featureset, unsigned int nr_features, bool pae, bool itsc, bool nested_virt, - const struct xc_xend_cpuid *xend) + const struct xc_xend_cpuid *cpuid) { int rc; bool hvm; @@ -617,6 +525,16 @@ int xc_cpuid_apply_policy(xc_interface *xch, uint32_t domid, bool restore, } } + if ( cpuid ) + { + rc = xc_cpu_policy_apply_cpuid(xch, policy, cpuid, host); + if ( rc ) + { + rc = -errno; + goto out; + } + } + rc = xc_cpu_policy_set_domain(xch, domid, policy); if ( rc ) { @@ -624,9 +542,6 @@ int xc_cpuid_apply_policy(xc_interface *xch, uint32_t domid, bool restore, goto out; } - if ( xend && (rc = xc_cpuid_xend_policy(xch, domid, xend)) ) - goto out; - rc = 0; out: -- 2.40.0 From xen-devel-bounces@lists.xenproject.org Fri Jun 16 13:11:58 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 16 Jun 2023 13:11:58 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550197.859164 (Exim 4.92) (envelope-from ) id 1qA9F8-0005os-Ho; Fri, 16 Jun 2023 13:11:58 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550197.859164; Fri, 16 Jun 2023 13:11:58 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qA9F8-0005oh-Dl; Fri, 16 Jun 2023 13:11:58 +0000 Received: by outflank-mailman (input) for mailman id 550197; Fri, 16 Jun 2023 13:11:57 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qA9F7-0002qy-Lh for xen-devel@lists.xenproject.org; Fri, 16 Jun 2023 13:11:57 +0000 Received: from esa2.hc3370-68.iphmx.com (esa2.hc3370-68.iphmx.com [216.71.145.153]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 5c952631-0c47-11ee-8611-37d641c3527e; Fri, 16 Jun 2023 15:11:54 +0200 (CEST) Received: from mail-sn1nam02lp2044.outbound.protection.outlook.com (HELO NAM02-SN1-obe.outbound.protection.outlook.com) ([104.47.57.44]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 16 Jun 2023 09:11:52 -0400 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) by SA1PR03MB6547.namprd03.prod.outlook.com (2603:10b6:806:1c6::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.27; Fri, 16 Jun 2023 13:11:49 +0000 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::ab2a:a298:bacb:db47]) by SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::ab2a:a298:bacb:db47%2]) with mapi id 15.20.6477.037; Fri, 16 Jun 2023 13:11:49 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 5c952631-0c47-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686921114; h=from:to:cc:subject:date:message-id:in-reply-to: references:content-transfer-encoding:mime-version; bh=7Ds7+HuYIyt6HEqzcj5MwosLlYKE7B0tHlsStdp/T7E=; b=N/SQvEraLBKcjAWOw+R8HJFPEP3v59y5XfQBdGy+YJJcBsLVEqXSOc0m Se8CfYqZIChfzywBGeiXzGjSvD6OBXn0RqRkh11kcFPQ9kcVyTS62nNOX 8yHlHW115KK4kGSFHP4JogTj0wE5kdhLI9FY5F05fo22EbmHxAaV/fvTR M=; X-IronPort-RemoteIP: 104.47.57.44 X-IronPort-MID: 112951618 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:QEWS8aBIH0MCgxVW/wziw5YqxClBgxIJ4kV8jS/XYbTApDJx0mRRy mcbXzjUaKqOM2vzKdpzbYm2/BlV75Pcm4A3QQY4rX1jcSlH+JHPbTi7wuUcHAvJd5GeExg3h yk6QoOdRCzhZiaE/n9BCpC48T8nk/nOHuGmYAL9EngZbRd+Tys8gg5Ulec8g4p56fC0GArIs t7pyyHlEAbNNwVcbCRMs8pvlDs15K6p4G1B4ARkDRx2lAS2e0c9Xcp3yZ6ZdxMUcqEMdsamS uDKyq2O/2+x13/B3fv8z94X2mVTKlLjFVDmZkh+AsBOsTAbzsAG6Y4pNeJ0VKtio27hc+ada jl6ncfYpQ8BZsUgkQmGOvVSO3kW0aZuoNcrLZUj2CA6IoKvn3bEmp1T4E8K0YIw6N1OGltN7 MYiJC0OMjOqheC40JerVbw57igjBJGD0II3nFhFlWucNtB/BJfJTuPN+MNS2yo2ioZWB/HCa sEFaD1pKhPdfxlIPVRRA5U79AuqriCnL3sE9xTI+uxrvwA/zyQouFTpGMDSddGQA91cg26Tp 37c/nS/CRYfXDCa4WPcqCPx37GWzUsXXqpDCeSoyvxNvmeC/UgRDQUnR3u2juOA3xvWt9V3b hZ8FjAVhbg/8gmnQ8fwWzW8oWWYpVgMVtxICeo45QqRjK3O7G6xGWwsXjNHLts8u6ceRzMw0 USSt8j0HjEpu7qQIU9x7Z+RpDK2fDMTdGkLYHdeSRNfu4W/5oYukhjIU9BvVravicH4Ei3xx DbMqzUig7IUjogA0KDTEU37vg9Ab6PhFmYdjjg7lEr8hu+lTOZJv7CV1GU= IronPort-HdrOrdr: A9a23:J2caH6BY+6WwG6HlHeg4sceALOsnbusQ8zAXPh9KJCC9I/bzqy nxpp8mPEfP+U4ssHFJo7C90dq7MAjhHP9OkMAs1NiZLW3bUQeTQr2KqLGSugEIeBeOvtK1t5 0QFJSWYeeYZTQUsS+52njfLz9K+qjlzEncv5a6854bd3AJV0gP1WZEIzfeNnczaBhNBJI/Gp bZzNFAvSCcdXMeadn+LmUZXsDYzue73q7OUFojPVoK+QOOhTSn5PrRCB6DxCoTVDtJ3PML7X XFqQrk/a+u2svLhyM0llWjo6i+quGRhOerN/b8y/T97Q+cyjpAUb4RFIFqegpF491Hpmxa0u Uk6C1QRfibo0mhA11d5yGdkDUImQxel0PK2BuWh2Durtf+Qy9/A81dhZhBeh+c8EY4uspguZ g7q15xmqAnfy8oph6NkuTgRlVvjA65sHAimekcgzhWVpYfcqZYqcga8FlOGJkNESrm4MR/ed Meev309bJTaxeXfnrZtm5gzJilWWkyBA6PRgwHttaO2zZbkXhlxw8TxdAZnH0H6JUhIqM0kN jsI+BtjvVDX8UWZaVyCKMIRta2EHXERVbWPGebMT3cZdI60rL22u7KCZkOlZCXkcYzveQPcb z6IS1liVI= X-Talos-CUID: 9a23:I40fc27SDwkIvmdp79ss5nUtAfoma0fnwGrTf2yRC2RnWJiFVgrF X-Talos-MUID: =?us-ascii?q?9a23=3A09brgAyB9z3WQ/FEN/QshIEf/E6aqPWzUVAxk7I?= =?us-ascii?q?4gdi/ES51IwaPrDmYWLZyfw=3D=3D?= X-IronPort-AV: E=Sophos;i="6.00,247,1681185600"; d="scan'208";a="112951618" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=U/XAaXztHCW4n0L7sUejslu0aU3t8hQuZRD2RqfmfsKRofElr4VJWYpw9Uh+tS3Er/3ZvMQZvKUBolPtHEzQBg/SJPIicPOGOSc69dQFkSYGn9QzvbX+rimUxNkMVMeNgz7FJ2en01JBHVPTDOEbSOyzwT+gH8OuSeZc+xS8UZXNBrUELrjt+/fY4nfysczlXm51cC8vIwb+fFm4eXX9Obh9f6KamUcvqDGvwLcdZNQZ9+wvbet4movci7kQP2/9YUDY5t6J9/+CosjrB1Ox/NokpEGRB3TKw2R/mtFADXvgOzW3dkexllk5RZdNPtR0Yi6Il/uPMif7wlDV7rP5Pg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=K/kbRo92d6u5kFORF8OyzCqReC5oQpO77s0waaoKxaw=; b=Rb/W8B6asNkQP85/8067Ulu8Ob9rHuGVqMtTPoxa0w9uZXUiDJkKLmv7fdGBc0aL/U4qSjJ9nDoMpTKUQZxJyJJa82QWWwpIK0HLungVXzENnVvUw9ywR6PhngS7l5pHTq3Fw5WdDDCEvFQU395CByu7b+Q0THSnVtAC7VrKuw5ISJEEjbqTRbwp3+YLHTihW4Ihmw01SG7Jvoz9k4dJGsPjsidKtMAfh6aXjjop7cW1gi4ENtIJA7a+5pbLYeK4IdLwBjsbaEzy1fLuBFSjvHsHtJBabTTSOkOY/C8b5CaquNDeUO7dSsijc3ANIhf5+KNmjD5DfkE1Mune1AhNjw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=K/kbRo92d6u5kFORF8OyzCqReC5oQpO77s0waaoKxaw=; b=rPfiUnw6h6MNFxi7VKeQEb51akWHdcmAxeeOgqXORTMtjHAxLACLPJD6acr/fp/09rctk6gTu0lphitjfKhOwT/9gj02IKwYI0nZp7wrK4KTUkFZeNox3hoCzpaexPVBckij1c/81drJtI8h5Z+uTlm6kdoR8CXEpjuAsHAjR/g= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; From: Roger Pau Monne To: xen-devel@lists.xenproject.org Cc: Roger Pau Monne , Wei Liu , Anthony PERARD , Juergen Gross Subject: [PATCH 09/13] libxl: change the type of libxl_cpuid_policy_list Date: Fri, 16 Jun 2023 15:10:15 +0200 Message-Id: <20230616131019.11476-10-roger.pau@citrix.com> X-Mailer: git-send-email 2.40.0 In-Reply-To: <20230616131019.11476-1-roger.pau@citrix.com> References: <20230616131019.11476-1-roger.pau@citrix.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO2P265CA0029.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:61::17) To SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|SA1PR03MB6547:EE_ X-MS-Office365-Filtering-Correlation-Id: 0910a13f-c6e4-46ef-654e-08db6e6b3eaa X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: WySOezY4OMCfwUkSycr4gqPLIIXnfHJjMXj8Zg+FSyydrLdVqtxNUmWk8/8J98bOGQCdUTlJe8osMu9K4BDIYUjupM2FAjHGRNyrho3PLPv7z5wcmlTf0UgXPi3FWD3wtSUZtDEG5wZLTSfAlUdEHV5AljJjcyY30yh2feuxJZO9zVDWK+OF8mnS6/O0dBYWJ+uaRYMfgsJLp1pluSarggyBKrNhJHJZQllyrvPekMJT3iegfz9NZEEwK8etJ3OD2t0PqbaqoNz/epVfAJ5IkYyCX6TjKYj9BZ1zi9AATj2IAoDgbH/iCHOZQzMxYTeFDinEGmosTCFLMPlKvmJC6VVD7thDR9twS7NWhRupltZROb1yLeq3ILwMw1BQx7HuSG8YdkShUoqeWfcJQWafjfXwacL9deB5vKmzE1RCmxkeefqdco7OnW/ZmirnmqJjREwMnWYmf3qQiBb6JM2cw/CFOW0p4mU8AEH29gK6dvzERFxbzzl3dW7bWPZMBJjss2BTsrnqYhKRJ5hB87ScJ6aAt62RURdnYNHfWhg4pG3YE26rF6xBQACaebxCoyfy X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(366004)(39860400002)(136003)(376002)(396003)(346002)(451199021)(86362001)(38100700002)(8676002)(5660300002)(82960400001)(316002)(8936002)(41300700001)(66946007)(66556008)(66476007)(6916009)(4326008)(54906003)(83380400001)(2616005)(186003)(36756003)(478600001)(1076003)(6512007)(6506007)(26005)(2906002)(6486002)(6666004);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?dExpL3hmS09DUDk5cU4xcWZXWXVSQVNWVnlUZFdnUG90WS81ZzlVSG5yQlYz?= =?utf-8?B?WFM2WkFXK1ZldFpsUDJhYUxMdDVjWVBkZFNrRjhqY292bVZvNHVJSzV3Um81?= =?utf-8?B?TjVsaTRKZnliMnpNdUtJMU55OENNVXh0cHg3NjFXTTBodGpLVGp2aHJXamVX?= =?utf-8?B?b3BHUGNJVFZjR2tUK2YraVVzTEdGenVjMkhrT25WNmxKRmoxd3laTFhiZ1RS?= =?utf-8?B?TUwrWnJ5c2RacGQvSUZldkZhSmZNNFA5MVdNOTRpKzB2SXBYeXpqODMzWTVO?= =?utf-8?B?YzN5SWhIUHk0MFpxU25KQ2xwcTRjWXdPbWZ1UEhBNXpvaExrNndzSjREUFZ2?= =?utf-8?B?SHJuVndkTm9La215bjR5ZHNuT0xkcUZMQlU5NDhmQUxISzBqcTBaV2NoT3J5?= =?utf-8?B?dnF4TURLR3lXR3FITS9tMTRQLzd4SCtBSTVSR052Vm1WT0JDOVhvVENjMFB6?= =?utf-8?B?Z1Q3bFkzSndMVkp1ejBmdmx2MktLOEV6S0VaY1FLL0JweDZlclh4N3F6RVpF?= =?utf-8?B?bnRHd3F2TnQ3WFd2ckpzdG5JeEJlTTJVS2JvRTNMYkt4Qm1tazZ0V0EycDJt?= =?utf-8?B?WW5ydFM3cFlNbmt1UjlPdUdMckQ5UVk0VjdKdUY0bFh3WUtVSXBUT0xMdzJO?= =?utf-8?B?Q1JrV21YSXRLbnpSNXNpa0g2N0NtMmcxMi9rRDlZd3RNM3NKSVMrekhvVTRu?= =?utf-8?B?ZURMWkRpSkJxL0VhTWZFZjRPeE5MdVpqMGgzSUFON1IvZUczd3ZqdWg2eFIr?= =?utf-8?B?cExKbXVhQzhjSndHU1c5amNpbWpQaTYxUnFZR2RzREVXOFg3bTQvbnFKeXpr?= =?utf-8?B?b1RYRG5xUjluRDlHNW9HaEdkZExtTnkreGJ2ZkEzVEFObGMxbGMvN3VaTFVV?= =?utf-8?B?cUJFb1UxWWgrVXo4dnBHaGRJekwxVFNZR21iaTRDbnFjbHFQTHprcnhTYTJM?= =?utf-8?B?Z3puV2lJdndxTE45NzNIK2l2dms2bERucmhXS1VhUGphUHV0eWVhWWJiN0N3?= =?utf-8?B?VGlUaWlCaXBzLy90SVh6VEdYR0FwckdrQ2ZnYTZla3FneVBYWG9FTi8zTkhv?= =?utf-8?B?eFNzRWNkZ0RhY1lPa0l0RFJ3enhCQkVaOWFHWTZFOU1Obm9UWVdiZTQ2OG8x?= =?utf-8?B?SUNRazdKdTkwM0c4TGYrY0FnMUdZNVFscVFwL1pwZytGK2J4eTZRSkJqUm5y?= =?utf-8?B?ek9Xay93a3FCQ0Q5TUZpV1M2UjlnWktJZGVvRnJjdU9DamhHL2w4UzU1dlo5?= =?utf-8?B?cUFhN0RrN0NqRHdnaDRIY1FxU0Zyd09WamdHZjN5Rng2bVp5azlkSisyR3Vx?= =?utf-8?B?UEQ0MFNzQ3pxS3dEQzczTElUWGNGRWpJbE9DZ2xlV0FndFhuWUlPQU1CaXpx?= =?utf-8?B?Nm5hZXV0Z0R5ZXhsMmtpNkJQelBnVTZsQnpuOGtqYVZ1MTAwQzEraU5BRzNn?= =?utf-8?B?SlRwUVpoZXVPUGVCdElhNlQ2Q1ZsZVlhZzUxVUVxdjh0RGE5dy9xVUM0NWc3?= =?utf-8?B?TkswSDRBQ245aW8vQXJLSFRFYTFPbDFLT0VYZWZZYkJPTGVLMG9WR0hKZW9q?= =?utf-8?B?UmowbnB6S21UbFV2QXEvM0UveUEwWWM4eW5pclIwM1lVeElkL1ZnMlMwUXp3?= =?utf-8?B?YVhEOVVZVkdkblE0NW56c1NkUjFDR205Q0pVS0trQWFvbHo5aHN3UXZyNDgr?= =?utf-8?B?QjJKcXRPaUNwYzk3LzMwb0VHRVdGc2NNbnVRbmNOV2tIL1FXY1dhTkZzY0NT?= =?utf-8?B?RFZmZHlYdWR5ZTJ5b3Y3WGtMOFRiTzl6d3RpTUprdkN1NEEzMUVidCtCZS9H?= =?utf-8?B?Z2d0K2lsUyt1VkJodDFRckdrSW1RZ2FaM1Q2ZmU4UGFOZTZvTW54OFY4MjVM?= =?utf-8?B?VjI4MGowdkh4b2dqQkRlazN1ODRxcFZmZXJxbWVXKzdmN1ljc3JSSDFwQWlk?= =?utf-8?B?ZUZUV1hta0hpVXVJTW5tZ1VaQjY4WFJ6TExWUlhubFR4ZG1iT0lYdmtNQmhP?= =?utf-8?B?MFVweFcrUXdxMHhKalYwYVFuY2ZGOUdWMDVtWW93RFRTSmZVcU9YQi92TXlF?= =?utf-8?B?Nkh4RUxFSXlKNjFLSSs0Qk16empyKzRCQ1ZwUTZaNUpWWWlnMHhvcTlydVcy?= =?utf-8?B?ci9TcUJobUVnMHhUNzNTa244QzFZWElibjZ3bk9mT24xai9qR0NkQ2ZqVlhN?= =?utf-8?B?a0E9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: 6XflWninR5RmXwYjCenMhw19t+o/NiKmD+bjgL3iHqBB9ReVdYKiVac4kfMHFSvK8PXJm5f/yPrN0VeaY2/vtd3VWalqxC3qfShcskIybL4t53IBB7ee5tAN13prbIxOICW3Ed0I9dQEvlZk80JGJ6HpmmeMY4QPcDw9rqdRgDgECxJ8ux1xSPDHiZ4r+aQyajoFtd9m4ZX4vLq2CMPImcFeIlZ+5UKarEzpyrnTap6uA4XH6d9uaVmilRpUjm2CzthGqHrPgUZPoEMWeCTKpuTqSpnbOC7pBJ3JlNcuEwRCQ4L1T0JRtm0uBk08Ys0diXf9gutUExxoCP9ueZCVtNOXJimvNu5RRIBzOlNMI3e9+JW+zx1zqi/nn8pYA/cAjTUIQcuueteh1VxVySHtOP9elMzIQCgDUecLAtJSp6IyITexKVkdkII5sIoMVTnt4avPhGgKPYvjseoSbXq9R9As5aWw7nnU/RiLaG3RD8f8VGB81b9FfuZjYO3wLybkv0inomSY3Nb0lBxrD3Rgi1S8bRyRMCutkxBGnJ6E/s6FKmQy40wlJ6cRlS8BUftbYsPMgyQNeop9ZdRt1koAxb1RxbKo9JZA5zuUnzJ/1kY3oaotSUy5eIbJXetBrPAX1g2QgK5f2/HcuwLtLjAQWonuFQXXryTP4z4ucJ9RLe5jebteu/BXt0G+GVbVxEBRRG94vxPqkQ/i74SghOZBCz4WeV03qwi+tn0xhpwmmRDta/oVAfp+Gfs2jdPH7d7Ro4NkKTVHSTEJpk+NBlUJSUsJh6JSn6vVC0/UTZaeuZckBCHvkmk/9nu4CM903tM1 X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 0910a13f-c6e4-46ef-654e-08db6e6b3eaa X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Jun 2023 13:11:49.6398 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: NZS2zBB7fvzaiOj2F1yXreu+4Zl/3VxrJZu6zLje+mm0FM5FaoJ1jjk/nvWgm2zqSYKnm5rfymYs9zOEfz5DTA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA1PR03MB6547 Currently libxl_cpuid_policy_list is an opaque type to the users of libxl, and internally it's an array of xc_xend_cpuid objects. Change the type to instead be a structure that contains one array for CPUID policies, in preparation for it also holding another array for MSR policies. Signed-off-by: Roger Pau Monné --- tools/include/libxl.h | 6 +++-- tools/libs/light/gentest.py | 2 +- tools/libs/light/libxl_cpuid.c | 49 +++++++++++++++++++--------------- 3 files changed, 32 insertions(+), 25 deletions(-) diff --git a/tools/include/libxl.h b/tools/include/libxl.h index cac641a7eba2..41e19f2af7f5 100644 --- a/tools/include/libxl.h +++ b/tools/include/libxl.h @@ -1459,8 +1459,10 @@ void libxl_bitmap_dispose(libxl_bitmap *map); * libxl_cpuid_policy is opaque in the libxl ABI. Users of both libxl and * libxc may not make assumptions about xc_xend_cpuid. */ -typedef struct xc_xend_cpuid libxl_cpuid_policy; -typedef libxl_cpuid_policy * libxl_cpuid_policy_list; +typedef struct libxl_cpu_policy { + struct xc_xend_cpuid *cpuid; +} libxl_cpuid_policy; +typedef libxl_cpuid_policy libxl_cpuid_policy_list; void libxl_cpuid_dispose(libxl_cpuid_policy_list *cpuid_list); int libxl_cpuid_policy_list_length(const libxl_cpuid_policy_list *l); void libxl_cpuid_policy_list_copy(libxl_ctx *ctx, diff --git a/tools/libs/light/gentest.py b/tools/libs/light/gentest.py index 1cc7eebc826d..207f988a741d 100644 --- a/tools/libs/light/gentest.py +++ b/tools/libs/light/gentest.py @@ -194,7 +194,7 @@ static void libxl_cpuid_policy_list_rand_init(libxl_cpuid_policy_list *pp) }; const int nr_options = sizeof(options)/sizeof(options[0]); char buf[64]; - libxl_cpuid_policy_list p = NULL; + libxl_cpuid_policy_list p = { }; for (i = 0; i < nr_policies; i++) { int opt = test_rand(nr_options); diff --git a/tools/libs/light/libxl_cpuid.c b/tools/libs/light/libxl_cpuid.c index c96aeb3bce46..ded0d0b8bc15 100644 --- a/tools/libs/light/libxl_cpuid.c +++ b/tools/libs/light/libxl_cpuid.c @@ -19,10 +19,10 @@ int libxl__cpuid_policy_is_empty(libxl_cpuid_policy_list *pl) return !libxl_cpuid_policy_list_length(pl); } -void libxl_cpuid_dispose(libxl_cpuid_policy_list *p_cpuid_list) +void libxl_cpuid_dispose(libxl_cpuid_policy_list *policy) { int i, j; - libxl_cpuid_policy_list cpuid_list = *p_cpuid_list; + struct xc_xend_cpuid *cpuid_list = policy->cpuid; if (cpuid_list == NULL) return; @@ -33,8 +33,8 @@ void libxl_cpuid_dispose(libxl_cpuid_policy_list *p_cpuid_list) cpuid_list[i].policy[j] = NULL; } } - free(cpuid_list); - *p_cpuid_list = NULL; + free(policy->cpuid); + policy->cpuid = NULL; return; } @@ -62,9 +62,10 @@ struct cpuid_flags { /* go through the dynamic array finding the entry for a specified leaf. * if no entry exists, allocate one and return that. */ -static libxl_cpuid_policy_list cpuid_find_match(libxl_cpuid_policy_list *list, - uint32_t leaf, uint32_t subleaf) +static struct xc_xend_cpuid *cpuid_find_match(libxl_cpuid_policy *policy, + uint32_t leaf, uint32_t subleaf) { + struct xc_xend_cpuid **list = &policy->cpuid; int i = 0; if (*list != NULL) { @@ -86,7 +87,7 @@ static libxl_cpuid_policy_list cpuid_find_match(libxl_cpuid_policy_list *list, * Will overwrite earlier entries and thus can be called multiple * times. */ -int libxl_cpuid_parse_config(libxl_cpuid_policy_list *cpuid, const char* str) +int libxl_cpuid_parse_config(libxl_cpuid_policy_list *policy, const char* str) { #define NA XEN_CPUID_INPUT_UNUSED static const struct cpuid_flags cpuid_flags[] = { @@ -345,7 +346,7 @@ int libxl_cpuid_parse_config(libxl_cpuid_policy_list *cpuid, const char* str) if (flag->name == NULL) { return 2; } - entry = cpuid_find_match(cpuid, flag->leaf, flag->subleaf); + entry = cpuid_find_match(policy, flag->leaf, flag->subleaf); resstr = entry->policy[flag->reg - 1]; num = strtoull(val, &endptr, 0); flags[flag->length] = 0; @@ -400,7 +401,7 @@ int libxl_cpuid_parse_config(libxl_cpuid_policy_list *cpuid, const char* str) * the strings for each register were directly exposed to the user. * Used for maintaining compatibility with older config files */ -int libxl_cpuid_parse_config_xend(libxl_cpuid_policy_list *cpuid, +int libxl_cpuid_parse_config_xend(libxl_cpuid_policy_list *policy, const char* str) { char *endptr; @@ -427,7 +428,7 @@ int libxl_cpuid_parse_config_xend(libxl_cpuid_policy_list *cpuid, return 3; } str = endptr + 1; - entry = cpuid_find_match(cpuid, leaf, subleaf); + entry = cpuid_find_match(policy, leaf, subleaf); for (str = endptr + 1; *str != 0;) { if (str[0] != 'e' || str[2] != 'x') { return 4; @@ -502,7 +503,7 @@ int libxl__cpuid_legacy(libxl_ctx *ctx, uint32_t domid, bool restore, info->tsc_mode == LIBXL_TSC_MODE_ALWAYS_EMULATE); r = xc_cpuid_apply_policy(ctx->xch, domid, restore, NULL, 0, - pae, itsc, nested_virt, info->cpuid, NULL); + pae, itsc, nested_virt, info->cpuid.cpuid, NULL); if (r) LOGEVD(ERROR, -r, domid, "Failed to apply CPUID policy"); @@ -527,9 +528,9 @@ static const char *policy_names[4] = { "eax", "ebx", "ecx", "edx" }; */ yajl_gen_status libxl_cpuid_policy_list_gen_json(yajl_gen hand, - libxl_cpuid_policy_list *pcpuid) + libxl_cpuid_policy_list *policy) { - libxl_cpuid_policy_list cpuid = *pcpuid; + struct xc_xend_cpuid *cpuid = policy->cpuid; yajl_gen_status s; int i, j; @@ -556,7 +557,8 @@ yajl_gen_status libxl_cpuid_policy_list_gen_json(yajl_gen hand, s = libxl__yajl_gen_asciiz(hand, policy_names[j]); if (s != yajl_gen_status_ok) goto out; s = yajl_gen_string(hand, - (const unsigned char *)cpuid[i].policy[j], 32); + (const unsigned char *)cpuid[i].policy[j], + 32); if (s != yajl_gen_status_ok) goto out; } } @@ -575,7 +577,7 @@ int libxl__cpuid_policy_list_parse_json(libxl__gc *gc, libxl_cpuid_policy_list *p) { int i, size; - libxl_cpuid_policy_list l; + struct xc_xend_cpuid *l; flexarray_t *array; if (!libxl__json_object_is_array(o)) @@ -587,7 +589,8 @@ int libxl__cpuid_policy_list_parse_json(libxl__gc *gc, size = array->count; /* need one extra slot as sentinel */ - l = *p = libxl__calloc(NOGC, size + 1, sizeof(libxl_cpuid_policy)); + p->cpuid = libxl__calloc(NOGC, size + 1, sizeof(struct xc_xend_cpuid)); + l = p->cpuid; l[size].input[0] = XEN_CPUID_INPUT_UNUSED; l[size].input[1] = XEN_CPUID_INPUT_UNUSED; @@ -627,10 +630,10 @@ int libxl__cpuid_policy_list_parse_json(libxl__gc *gc, return 0; } -int libxl_cpuid_policy_list_length(const libxl_cpuid_policy_list *pl) +int libxl_cpuid_policy_list_length(const libxl_cpuid_policy_list *policy) { int i = 0; - libxl_cpuid_policy_list l = *pl; + struct xc_xend_cpuid *l = policy->cpuid; if (l) { while (l[i].input[0] != XEN_CPUID_INPUT_UNUSED) @@ -641,9 +644,11 @@ int libxl_cpuid_policy_list_length(const libxl_cpuid_policy_list *pl) } void libxl_cpuid_policy_list_copy(libxl_ctx *ctx, - libxl_cpuid_policy_list *dst, - const libxl_cpuid_policy_list *src) + libxl_cpuid_policy_list *pdst, + const libxl_cpuid_policy_list *psrc) { + struct xc_xend_cpuid **dst = &pdst->cpuid; + struct xc_xend_cpuid *const *src = &psrc->cpuid; GC_INIT(ctx); int i, j, len; @@ -652,9 +657,9 @@ void libxl_cpuid_policy_list_copy(libxl_ctx *ctx, goto out; } - len = libxl_cpuid_policy_list_length(src); + len = libxl_cpuid_policy_list_length(psrc); /* one extra slot for sentinel */ - *dst = libxl__calloc(NOGC, len + 1, sizeof(libxl_cpuid_policy)); + *dst = libxl__calloc(NOGC, len + 1, sizeof(struct xc_xend_cpuid)); (*dst)[len].input[0] = XEN_CPUID_INPUT_UNUSED; (*dst)[len].input[1] = XEN_CPUID_INPUT_UNUSED; -- 2.40.0 From xen-devel-bounces@lists.xenproject.org Fri Jun 16 13:19:03 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 16 Jun 2023 13:19:03 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550209.859173 (Exim 4.92) (envelope-from ) id 1qA9Ll-0007OW-DH; Fri, 16 Jun 2023 13:18:49 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550209.859173; Fri, 16 Jun 2023 13:18:49 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qA9Ll-0007OP-A8; Fri, 16 Jun 2023 13:18:49 +0000 Received: by outflank-mailman (input) for mailman id 550209; Fri, 16 Jun 2023 13:18:47 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qA9Lj-0007OH-NW for xen-devel@lists.xenproject.org; Fri, 16 Jun 2023 13:18:47 +0000 Received: from esa2.hc3370-68.iphmx.com (esa2.hc3370-68.iphmx.com [216.71.145.153]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 515ba184-0c48-11ee-8611-37d641c3527e; Fri, 16 Jun 2023 15:18:45 +0200 (CEST) Received: from mail-co1nam11lp2169.outbound.protection.outlook.com (HELO NAM11-CO1-obe.outbound.protection.outlook.com) ([104.47.56.169]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 16 Jun 2023 09:18:43 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by CH0PR03MB6115.namprd03.prod.outlook.com (2603:10b6:610:ba::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.25; Fri, 16 Jun 2023 13:18:38 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606%4]) with mapi id 15.20.6500.029; Fri, 16 Jun 2023 13:18:40 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 515ba184-0c48-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686921525; h=message-id:date:from:subject:to:cc:references: in-reply-to:content-transfer-encoding:mime-version; bh=KMf5cVuF96ffd/apERITuQaD0hNdIodJm8Gckp5Z804=; b=f8XQKbgnvFlH9f2254ny3APNmmhUwmnmHYeTdhkgIsTUH1TiHSyMtiCk w169/joitmpI/3PVCgMgutNYWKa9XEaYUfNcn7Vxd+0Dk0SCkqEuoHRCr /6eKfFhJpzhU66EJvttA59SFxIxEWq0uXc9xdBmVLsc3mcP4Fc8ZQvctG w=; X-IronPort-RemoteIP: 104.47.56.169 X-IronPort-MID: 112952670 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:EoxT7aIjfcFYOkfCFE+R/JQlxSXFcZb7ZxGr2PjKsXjdYENShGYEz zcWCz2OPf/fM2rweY8gaNni808Dv5SAyd5rTABlqX01Q3x08seUXt7xwmUcnc+xBpaaEB84t ZV2hv3odp1coqr0/0/1WlTZhSAgk/rOHvykU7Ss1hlZHWdMUD0mhQ9oh9k3i4tphcnRKw6Ws Jb5rta31GWNglaYCUpKrfrbwP9TlK6q4mhA4AVgPaojUGL2zBH5MrpOfcldEFOgKmVkNrbSb /rOyri/4lTY838FYj9yuu+mGqGiaue60Tmm0hK6aYD76vRxjnVaPpIAHOgdcS9qZwChxLid/ jnvWauYEm/FNoWU8AgUvoIx/ytWZcWq85efSZSzXFD6I+QrvBIAzt03ZHzaM7H09c5GKkBv2 NEWBAtXLT6qn+fp8Iqpe8Bj05FLwMnDZOvzu1lG5BSAVLMNZsmGRK/Ho9hFwD03m8ZCW+7EY NYUYiZuaxKGZABTPlAQC9Q1m+LAanvXKmUE7g7K4/dppTGNnWSd05C0WDbRUvWMSd9YgQCzo WXe8n6iKhobKMae2XyO9XfEaurnxHqhCd9ISuLgnhJsqEOB+Dw3DTswbFayjsG8sg2OX9cBK 1NBr0LCqoB3riRHVOLVXRe1vXqFtR40QMdLHqsx7wTl4rXQyxaUAC4DVDEpQMwrsoo6SCIn0 neNnsj1Hnp/vbuNU3Wf+7yI6zSoNkAowXQqYCYFSU4O5IDlqYRq1xbXFI89Qeiyk8H/Hiz2z 3aSti8iir4PjMkNkaKm4VTAhDHqrZ/MJuIo2jjqsquexlsRTOaYi0aAsDA3Md4owF6lc2S8 IronPort-HdrOrdr: A9a23:o0sGIKhnMfeIbnoiS+6WhmEZenBQX0513DAbv31ZSRFFG/FwyP rCoB1L73XJYWgqM03IwerwQJVpQRvnlaKdkrNhRotKPTOW8VdAQ7sSibcKrwePJ8S6zJ8l6U 4CSdk3NDSTNykcsS+S2mDRf7kdKZu8gcaVbIzlvhRQpHRRGsRdBnBCe2Sm+yNNJTVuNN4cLt 6x98BHrz2vdTA8dcKgHEQIWODFupniiI/mSQRuPW9s1CC+yReTrJLqGRmR2RkTFxlVx605zG TDmwvloo2+rvCAzAPG3WO71eUapDKh8KoOOCW/sLlaFtzesHfoWG2nYczDgNkBmpDh1L/tqq iOn/5vBbUw15qbRBDOnfKk4Xic7N9p0Q6o9bbQuwqeneXpAD09EMZPnoRfb1/Q7Fchpsh11O ZR03uerIc/N2K1oM3R3am7a/hRrDvAnVMy1eoIy3BPW4oXb7Fc6YQZ4UNOCZ8FWCb38pouHu ViBNzVoK8+SyLtU1nJ+m10hNC8VHU6GRmLBkAEp8yOyjBT2HR01VERysATlmoJsJg9V55H7e LZNbkArsA4cuYGKaZmQOsRS8q+DWLABRrKLWKJOFziULoKPnrcwqSHk4ndJNvaCKDg4KFC6a gpCmkoylLaU3ied/Gz4A== X-Talos-CUID: 9a23:LHOYSm4Zu8AsnVkRtNssxWU1O+0IfFHmljT+Cle9VlZRWoy8RgrF X-Talos-MUID: 9a23:TB6rRwY+2bpHGuBTqS3S1BVnEuFR7q2BMEU10qUCvpeEKnkl X-IronPort-AV: E=Sophos;i="6.00,247,1681185600"; d="scan'208";a="112952670" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=P4BAmnTQaxCB8VDX/4+HImxiqHMOTP5wjm48dBfB2gE8oauR8m51M6EMo02B3Z1N4RIU/SBY9zgFyYGgko2+ERXnuEFSXlm+gD0pgORE137JJEczaNbRlBg7vFnPGxl/Z0Ao8kdPqEKyQHL1lk5AeiauDWKHIPlNBIRijMJtOB9UKNQYZa7nil8S/cNdWtcqP8yIWXciFYsb6/KveGrK3/c+47ISiEGKrpgA8sqgZNhoytk4Ky73Hl9ZMH/VCPGP6jujHBbzaQmqAeH9ql+rBMl0AknCOnhXB4gS5BLyqXQgOH3m0OBRLfIJeKFqLfGCAtwDSYYeKzUanCiTJFzqEQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=wFYFyFViGCwaP3dT/4/Ri8jfi/Lu/yIX3HIVH9bAINI=; b=eLZ7wF0e+i1cUM0TZ8cCkyvTPTq9L/qWcycKmwG65pp1miTSFP2YN8ZMfwTa9ySQOS7ui/P7sr46/7qVXA47pyhk2hAX1bNEvYv6WZYJDpFw4AWrMgk1UgFg6Z+j4ZZXeH+0Q6TIncD5s6Z6Hd4j2XlcC4oWmykM+AqqNTKJ0i8fcDXrYphe+hUSMlHcGnnHjvJKsa/lMX/RK/qGB3MaOk7fDhHfEWm2zTjH1XTrR6mUEbcAwXl+8qlLQbdgilykLy9f1G8w96Nfoue/TgOVhvtkC+2uJOdC7uHBZ/r/Nzv0KWUruwyqEKE03PFmuRSF5c8LsN8d7eUT2rI+fyax2g== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=wFYFyFViGCwaP3dT/4/Ri8jfi/Lu/yIX3HIVH9bAINI=; b=GDRYgPCkuyrbkG3E5vWYopNC2KnQlamRl/Lnp3JqvJ6ayT9WFY+khkLaKH1xKaNIbNJDfxyV8kz8CL1wQTPcQ7016bMfm6dALWmezA4Bz/8hHAofXjOE6B5eRhrvF9xN4nfDLNx9O4+bzWz2I0hr5wwneaXHGzcU79+8TxaLvaE= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: Date: Fri, 16 Jun 2023 14:18:34 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 From: Andrew Cooper Subject: Re: [PATCH v3 4/4] x86/cpu-policy: Derive RSBA/RRSBA for guest policies Content-Language: en-GB To: Jan Beulich Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , Xen-devel References: <20230612161306.2739572-1-andrew.cooper3@citrix.com> <20230612161306.2739572-5-andrew.cooper3@citrix.com> <82ee7908-4597-433c-0aca-8c0ad22fff13@suse.com> <386058fe-e9a8-d0e1-c3a0-3f15a4585bd5@citrix.com> <8a44c577-07e4-fbc4-d402-efa581042079@citrix.com> <35ac1ede-73ed-c748-9eae-06b156145274@suse.com> <50fe5a44-2e26-461b-1676-abae665816e6@citrix.com> <39f2eed7-4a28-5c98-6e10-2171d630d198@suse.com> In-Reply-To: <39f2eed7-4a28-5c98-6e10-2171d630d198@suse.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO3P265CA0014.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:bb::19) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|CH0PR03MB6115:EE_ X-MS-Office365-Filtering-Correlation-Id: a36753d3-7dfc-4288-9374-08db6e6c3322 X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: HSiqcHvahL/mONSJZ/UdURrOjz2HOoetaGgucLgk8qY23dsijNjXq/70+2fiwLAq9/sH1jZJCfBcOR7Fo4+rKJDCpF2FjYqYd09cfBoiouCvwEC4kpAqrUdwnsRdUmDYHeeRFS30oCPfdGjpo4t/UudwPArYhFgkQ70tH4xnyFZW3mRWUonFQXW/OoVJi9j9fWpWXWvgFr4AhQhS/1SZoI6KWRBBmya1L3dA7iwkq01/ylLEPKDovVZs2ObWo1YQSasIpXiFaoSQr6nE6HsqHtK31CX5Qpmn6hJ6qFJBP0rUOCEeEoYK9v9PTr8BPnZPBMHAC0uxqYxctlza6v/nEj79oHjXr00307RQLHWw/XO+AABEg/gAuoFszCboBGTrNkNkDWI55hGHjVJPVoDRAUm35lv/4REuUAptYqgMIrXJmzzPAZgrbq29TTZ6IvoZN4kWM60Tj4uOEo2w4dhlYVpRMvk+HkxJnWU6R/r5oZMuKnnLaN0xJUXJRPCxJAK5jVJLlLRkt+3Sp1t7vKtB0Yg1MaEwMpTYIEL50/fHGY7X0X4S/CRdDDy0s6oQwNY8eZC4kt/AOG+ft89qUOWwF/3u1xFKXWiy9Imous9OKx5xZ1Y2Wmd7ZmJuUEzKu9jyA/IzPA1yjbN5dyGk8aO26g== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(376002)(366004)(396003)(136003)(346002)(39860400002)(451199021)(31696002)(4326008)(86362001)(2906002)(316002)(66476007)(6916009)(66556008)(66946007)(41300700001)(5660300002)(31686004)(8676002)(8936002)(54906003)(38100700002)(508600001)(6486002)(6666004)(82960400001)(83380400001)(186003)(6506007)(53546011)(26005)(36756003)(2616005)(6512007)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?V3JObzNpUHZJanFzSkhkUVYzQy8yajUxZXVEcGN0dHJJRjRaNmJUY1pBbkpR?= =?utf-8?B?WVpzV2c3azFuYUpOOFNsVmowRm1WRzVOUzdPTU9QUjRmOXd0MmJWOVdJNUc5?= =?utf-8?B?UlhjZUtGS2l1VENzNVh4WGsyUHBMdktEUVdJOWcrUjN0bFpwYWpZUjl2T1J4?= =?utf-8?B?WVkxakdPL2w1QWRUT2lUVml1NG9TZzBJemRyZVk5OER0ZXdKUHRYdFd2aXdr?= =?utf-8?B?R2NkL3hvSWM3SGpzNlU2RStZS3RJbFJRMVczTEhnaWZYdjU3azVsT2IrYXAw?= =?utf-8?B?eFBkR0o1dCtSZFZMTEZneTVsMXgyWi9SZWJYRXB1YkFIZ3JNdTJyYitsSDRH?= =?utf-8?B?Q0J0MHNyQUgyMVJOK2lKWnpkWkVDbVRYZUVjMHh5Yk9yaTFCMGdQR2g4UEtx?= =?utf-8?B?UjVmdkhLRm5sTmpBZVV1Kys4b1pzNmhvWFNNM0ZZcGZibnordUhWRWo0MUVK?= =?utf-8?B?RUJiYU5EVDgwL0JqbTEzQUJTeElsQ1l1R2J3cm1nREY1UVlVTEREbWhiTDlG?= =?utf-8?B?czdCOXp4Sy9nSVlJdDlrRThzUVdWSGxaRXZHSlVzSEROU0owaUtUY1VVU04z?= =?utf-8?B?RTlwOXBjNUlZNmgvT0VKbnpFMzZHZllydlZVa3AwdnpBNFZKWlV4VkhHMURM?= =?utf-8?B?TjNHVVZKWlBlUDlWMWY4cSt6OUR5eVhEUEVSaGJ4RzVjQTlGSWI2VE5XTTNz?= =?utf-8?B?TU9DOVY5ZnpVSXd3bW9RTGdLNXYzOVd1WG1WQUVSK2wxcHhrVjllN00xQVJC?= =?utf-8?B?SHBNOXZCTUdNSktVOGpka3pSeFpqZmhXNzJyYWkxdnh5YWw0UzBmLzNJejRt?= =?utf-8?B?aURWY2ROOGxEcjIrRmNybkpIMGZLeFp1U3JZaWxOd2NuY0VDa1Rsc1pFRkgx?= =?utf-8?B?RHZ6Y1J5TkwrNndrNjFRMmJObmU0ZlcwZ2drdUFlcWdGMVlBT0RxbU5EM2Yx?= =?utf-8?B?d3JESm13SWhNVlpDcnBXMUsrNnlkT0pqeXlIUlJPaEkyaEU0cnhXbHlna0dj?= =?utf-8?B?elJFeW9KTHdxRUpJUHNQS2lRdnQ0VTR0SzdIRlgrczk5MnNoMkcveWh2ZXh1?= =?utf-8?B?ellrL056N3Y5ZzRmbVBEeTgyTjM1ejlnWjNqSi9GeEZpcTRJSy9ZdVFpQkc5?= =?utf-8?B?em9hUXhPbUFqWlRBK09rMWFDYnE3T2xYRjVIbUFTb3lRN04vRUM2QVNhN2hW?= =?utf-8?B?SjNCTityd1Bzei80dzZLWUxQT0theHpuMW5kZGNRUWJzaWM0N1k2ZHlPWXRi?= =?utf-8?B?VXMvQVlYbVFuNUxxM0xBeFAydHAyN3dLRllsVmtXS1pxa0FOcUxGMGJEVDA1?= =?utf-8?B?SjVNd3ZiYTBpUjdCL05oQVJKbkFBU2lObktlc1JtdnJMYy91WDl0bDhQbUFI?= =?utf-8?B?SkZKdU04WFRScGlvdFVFbU1ENW1Hd3BLK2NncmNCZHJtZzQyOHlLQlI0MmEy?= =?utf-8?B?aW9HbnhxMjdWRWxYRTRmNG5QSHo3VkpuR3YvVjlaM2xaS1duVisyQUIyYmVo?= =?utf-8?B?S21TTUx4ZG5CZmNMODd0eE5oUERyN3hIc2dZU1ZocHBhMk02aFp4WmRoZmRh?= =?utf-8?B?MTZHblQ0czVFUHgwbVhGNGFYMndUc3VxbHV4NUV0S01ZT3kxNGhkSkVSejl3?= =?utf-8?B?amhlb1pWWVZydi9kSjZkQ2pHemJNTDJYbzlxdktwUDdxR3NkSExFSjdyRlpR?= =?utf-8?B?cm9XSGJFOHhUbHMxakRDSmFJb0dnSEVIY1ZnWUpUSDN1djVoNmJDQ3VvT0Fs?= =?utf-8?B?T1M0UU1MekhqNzdraTNRQWJYdzM0YmgxeFVCc21ROU9hTzBqcnFJOE14dEJR?= =?utf-8?B?MS9pb1hBREJqR1AzbkZibC9ySStmNWpXRTZrZHk2WFl3SGtJMzVGbEhrZWFx?= =?utf-8?B?MFR3WjNielNZa01nMGh3VDdCUkNyOEJEa1F3QXIrVDRCYlVVOWc1OFJMTnJN?= =?utf-8?B?NkZpMzRsRmdVTEN0SE1YeVpBMWNOL1cwZGduMzN2OWtKcFVMelorZnBGMHZn?= =?utf-8?B?UUZkN1pLM1MrVlNSdkpRYWVseGFxVUZZcjRsVy9zVHd2QXNRNkZQelNUVzlC?= =?utf-8?B?ZjRYVEJWK0hkMXhGSVByWTI1MUZqUlo2YmtIdU00NnA5REcvLzZrNFpNUlFr?= =?utf-8?B?WXB4WnRDNEEycUNKc3dvWDVYdmpRTWluSll2dEVTQWZJTTEyanExbXBLQmoy?= =?utf-8?B?emc9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: Ntzo3YixxAyKRli/Moza63rmfctumCqV5+HdvgSsEviikMMvpivvbkUgxj95uwqXz62X4v1XYrAkTjUk6kKrFMmSelzMyzRiA2ksDeZm+l829rNDf1CVaoly7JA1RIlSDS4YwtXjVN5HyxDC6LkpSw+4iRDI65MYV+L/S34Vk6UjR09CXhzIqEELlKrDY+gCUWkBBARgvNNDX2srCZGuks82K4+N+UKm6YQXKanKmDxh7btRFdFA5Q5T+16A1QzXeeYcCcz3FxYjhziXYY2Xsk3tyrl/46gQotuNZaXSZYb77YReQRN122hbul1MLZXXoTofJE7e/AUIa7uYwxzAUaVeJDahzg0SXYJ/ez552FwngIu0xK8uVwCpImYI+PzzLvYcN004uv2fezrVLf7mxGapjRE+Qt1k+tRG0qL3+Kzj+J62TMEciHMlPvnfAU2q3f+5kzpd8wftn0TQoobIdJyFrk9NACnwPEoYV3NPfbdQrkVT2RL65ZU2oqblNEJTuKEXSDU7cabvssAePyuWCzfrVR/sVakfqwWvj0xD4ECcQqSOMBKMhfjldj/J9H7J2WcKye1SMqR9tZgUvhRYCxtYxNTJcWlaMwhr7tbiiBOQLB4WCcMVPzbc8igaMAIt0xX5UtHSfbXxLubWdWaRbjFUv4RjWf5528Lam/U1T3JWdA27crbTGM8vCk8G5pzZwPfqU42J5a1zg5eieN3ZpxEjymKC4DVAgpBQrT7giBDDPbZatwdsPOEHf2gWbcAKS0QT0Y5R0K/scZVmpC1eqpxmfkjojqiKC8snVDrGHDbnvGB+mdA1MyRxCo0HJ+HR X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: a36753d3-7dfc-4288-9374-08db6e6c3322 X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Jun 2023 13:18:39.9769 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 8wqD8Dg//NQGNhY2hBE6j87ewpxGitS8tm6eYk+E+1TSNezoGxsMCCeWKz6LilVkqu33AVq4dZorjPqh6py2qakEzNieEZl2nbkr336sRr0= X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH0PR03MB6115 On 16/06/2023 1:12 pm, Jan Beulich wrote: > On 15.06.2023 20:17, Andrew Cooper wrote: >> On 15/06/2023 1:13 pm, Jan Beulich wrote: >>> On 15.06.2023 12:41, Andrew Cooper wrote: >>>> On 15/06/2023 9:30 am, Jan Beulich wrote: >>>>> On 14.06.2023 20:12, Andrew Cooper wrote: >>>>>> On 13/06/2023 10:59 am, Jan Beulich wrote: >>>>>>> On 12.06.2023 18:13, Andrew Cooper wrote: >>>>>>>> The RSBA bit, "RSB Alternative", means that the RSB may use alternative >>>>>>>> predictors when empty. From a practical point of view, this mean "Retpoline >>>>>>>> not safe". >>>>>>>> >>>>>>>> Enhanced IBRS (officially IBRS_ALL in Intel's docs, previously IBRS_ATT) is a >>>>>>>> statement that IBRS is implemented in hardware (as opposed to the form >>>>>>>> retrofitted to existing CPUs in microcode). >>>>>>>> >>>>>>>> The RRSBA bit, "Restricted-RSBA", is a combination of RSBA, and the eIBRS >>>>>>>> property that predictions are tagged with the mode in which they were learnt. >>>>>>>> Therefore, it means "when eIBRS is active, the RSB may fall back to >>>>>>>> alternative predictors but restricted to the current prediction mode". As >>>>>>>> such, it's stronger statement than RSBA, but still means "Retpoline not safe". >>>>>>>> >>>>>>>> CPUs are not expected to enumerate both RSBA and RRSBA. >>>>>>>> >>>>>>>> Add feature dependencies for EIBRS and RRSBA. While technically they're not >>>>>>>> linked, absolutely nothing good can come of letting the guest see RRSBA >>>>>>>> without EIBRS. Nor a guest seeing EIBRS without IBRSB. Furthermore, we use >>>>>>>> this dependency to simplify the max derivation logic. >>>>>>>> >>>>>>>> The max policies gets RSBA and RRSBA unconditionally set (with the EIBRS >>>>>>>> dependency maybe hiding RRSBA). We can run any VM, even if it has been told >>>>>>>> "somewhere you might run, Retpoline isn't safe". >>>>>>>> >>>>>>>> The default policies are more complicated. A guest shouldn't see both bits, >>>>>>>> but it needs to see one if the current host suffers from any form of RSBA, and >>>>>>>> which bit it needs to see depends on whether eIBRS is visible or not. >>>>>>>> Therefore, the calculation must be performed after sanitise_featureset(). >>>>>>>> >>>>>>>> Signed-off-by: Andrew Cooper >>>>>>>> --- >>>>>>>> CC: Jan Beulich >>>>>>>> CC: Roger Pau Monné >>>>>>>> CC: Wei Liu >>>>>>>> >>>>>>>> v3: >>>>>>>> * Minor commit message adjustment. >>>>>>>> * Drop changes to recalculate_cpuid_policy(). Deferred to a later series. >>>>>>> With this dropped, with the title not saying "max/default", and with >>>>>>> the description also not mentioning "live" policies at all, I don't >>>>>>> think this patch is self-consistent (meaning in particular: leaving >>>>>>> aside the fact that there's no way right now to requests e.g. both >>>>>>> RSBA and RRSBA for a guest; aiui it is possible for Dom0). >>>>>>> >>>>>>> As you may imagine I'm also curious why you decided to drop this. >>>>>> Because when I tried doing levelling in Xapi, I remembered why I did it >>>>>> the way I did in v1, and why the v2 way was wrong. >>>>>> >>>>>> Xen cannot safely edit what the toolstack provides, so must not.  >>>>> And this is the part I don't understand: Why can't we correct the >>>>> (EIBRS,RSBA,RRSBA) tuple to a combination that is "legal"? At least >>>>> as long as ... >>>>> >>>>>> Instead, failing the set_policy() call is an option, and is what we want >>>>>> to do longterm, >>>>> ... we aren't there. >>>>> >>>>>> but also happens to be wrong too in this case. An admin >>>>>> may know that a VM isn't using retpoline, and may need to migrate it >>>>>> anyway for a number of reasons, so any safety checks need to be in the >>>>>> toolstack, and need to be overrideable with something like --force. >>>>> Possibly leading to an inconsistent policy exposed to a guest? I >>>>> guess this may be the only option when we can't really resolve an >>>>> ambiguity, but that isn't the case here, is it? >>>> Wrong.  Xen does not have any knowledge of other hosts the VM might >>>> migrate to. >>>> >>>> So while Xen can spot problem combinations *on this host*, which way to >>>> correct the problem combination depends on where the VM might migrate to. >>> I actually view this as two different levels: With a flawed policy, the >>> guest is liable to not work correctly at all. No point thinking about >>> it being able to migrate. With a fixed up policy it may fail to migrate, >>> but it'll at least work otherwise. >> If you get RSBA and/or RRSBA wrong, nothing is going to malfunction in >> the guest, even if you migrate it. >> >> The consequence of getting RSBA and/or RRSBA wrong is the guest *might* >> think retpoline is safe to use, and *might* end up vulnerable to >> speculative attacks on this or other hardware. > Isn't that some sort of "malfunction"? Perhaps, there's a difference between "it will likely crash hard" and "you won't notice the difference". > >> And the admin might know that they overrode the default settings and >> forced the use of some other protection mechanism, so the guest is in >> fact safe despite having wrong RSBA/RRSBA settings. > But then the guest would also be safe with adjusted settings, wouldn't it? It doesn't mean the guest is going to tolerate having features change underfoot. > >> I don't know how to put it any more plainly.  Xen *does not* have the >> information necessary to make a safety judgement in this matter.  Only >> the toolstack (as a proxy for the admin) has the necessary information. > I'm not looking at it as Xen making things safe by adjusting bogus > settings. I'm merely looking at it as not letting a guest run that way. > For the safety aspect I agree it needs a wider view than Xen has. > > Anyway, I don't think either of us is going to convince the other of > there being only one way of looking at things vs there being at least > two possible ways, so in order to allow things to progress > Acked-by: Jan Beulich Thankyou. To be clear, we are planning to put checks in place.  We definitely don't want the admin to end up in this corner case accidentally. ~Andrew From xen-devel-bounces@lists.xenproject.org Fri Jun 16 13:20:12 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 16 Jun 2023 13:20:12 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550221.859184 (Exim 4.92) (envelope-from ) id 1qA9Mv-0007yQ-Pk; Fri, 16 Jun 2023 13:20:01 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550221.859184; Fri, 16 Jun 2023 13:20:01 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qA9Mv-0007xz-LW; Fri, 16 Jun 2023 13:20:01 +0000 Received: by outflank-mailman (input) for mailman id 550221; Fri, 16 Jun 2023 13:20:00 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qA9Ez-0001xG-R1 for xen-devel@lists.xenproject.org; Fri, 16 Jun 2023 13:11:49 +0000 Received: from esa6.hc3370-68.iphmx.com (esa6.hc3370-68.iphmx.com [216.71.155.175]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 59769fc9-0c47-11ee-b232-6b7b168915f2; Fri, 16 Jun 2023 15:11:48 +0200 (CEST) Received: from mail-sn1nam02lp2049.outbound.protection.outlook.com (HELO NAM02-SN1-obe.outbound.protection.outlook.com) ([104.47.57.49]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 16 Jun 2023 09:11:47 -0400 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) by SA1PR03MB6547.namprd03.prod.outlook.com (2603:10b6:806:1c6::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.27; Fri, 16 Jun 2023 13:11:43 +0000 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::ab2a:a298:bacb:db47]) by SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::ab2a:a298:bacb:db47%2]) with mapi id 15.20.6477.037; Fri, 16 Jun 2023 13:11:43 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 59769fc9-0c47-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686921108; h=from:to:cc:subject:date:message-id:in-reply-to: references:content-transfer-encoding:mime-version; bh=YPA9b+1Jq+QT5jKnKko+p2QVQM1PKRxB/6N+2JAeUmY=; b=FLjv9VAj4aPPo+qUklI+fEzR2VqXL1H1fVYiHBVSqi3pcbQQEt5NETLV 86zM8BODn6IkqUBsT0mGyyrlZm/wXvGYIoMF5ghgsjiVxIhkzm6u3B3e3 GZaZyaR4Dm12rdEOF+TP2YGm/+RS85Q8BV27IVcNzA1ISI5sbF6U1hMZV I=; X-IronPort-RemoteIP: 104.47.57.49 X-IronPort-MID: 112390561 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:8UEaEKgqQunNzVDoUjnY5fBnX161RREKZh0ujC45NGQN5FlHY01je htvXjvUbqmJYWOnLt5xaI+xoU4D7JWGmNEyTQY9/yk1RX4b9cadCdqndUqhZCn6wu8v7q5Ex 55HNoSfdpBcolv0/ErF3m3J9CEkvU2wbuOgTrWCYmYpHlUMpB4J0XpLg/Q+jpNjne+3CgaMv cKai8DEMRqu1iUc3lg8sspvkzsx+qyq0N8klgZmP6sT4gaAzyN94K83fsldEVOpGuG4IcbiL wrz5OnR1n/U+R4rFuSknt7TGqHdauePVeQmoiM+t5mK2nCulARrukoIHKN0hXNsoyeIh7hMJ OBl7vRcf+uL0prkw4zxWzEAe8130DYvFLXveRBTuuTLp6HKnueFL1yDwyjaMKVBktubD12i+ tQDLgAIYAzAltuMnu2AQ7dcoMl+EMTSadZ3VnFIlVk1DN4AaLWbGeDxw4Yd2z09wMdTAfzZe swVLyJ1awjNaAFOPVFRD48imOCvhT/0dDgwRFC9/PJrpTSMilEuluS8WDbWUoXiqcF9hEGXq 3iA523kKhobKMae2XyO9XfEaurnxHqhA9NKSePhnhJsqFeXwUA5LDkbbl/hiKi3mlOsHIlcN 0NBr0LCqoB3riRHVOLVTxC+5XKJoBMYc95RCPEhrhGAzLLO5ASUDXRCSSROAPQ5sOcmSDps0 UWG9/vrCiZoq6a9Um+G+/GfqjbaBMQOBWoLZCtBVg1c5dDm+Ns3lkiXEoclF7OphNroHz222 yqNsCU1m7QUi4gMyrm/+lfExTmro/AlUzII2+keZUr9hisRWWJvT9bABYTzhRqYELukcw== IronPort-HdrOrdr: A9a23:Y19reKDwEqYHgLvlHeg4sceALOsnbusQ8zAXPh9KJCC9I/bzqy nxpp8mPEfP+U4ssHFJo7C90dq7MAjhHP9OkMAs1NiZLW3bUQeTQr2KqLGSugEIeBeOvtK1t5 0QFJSWYeeYZTQUsS+52njfLz9K+qjlzEncv5a6854bd3AJV0gP1WZEIzfeNnczaBhNBJI/Gp bZzNFAvSCcdXMeadn+LmUZXsDYzue73q7OUFojPVoK+QOOhTSn5PrRCB6DxCoTVDtJ3PML7X XFqQrk/a+u2svLhyM0llWjo6i+quGRhOerN/b8y/T97Q+cyjpAUb4RFIFqegpF491Hpmxa0u Uk6C1QRfibo0mhA11d5yGdkDUImQxel0PK2BuWh2Durtf+Qy9/A81dhZhBeh+c8EY4uspguZ g7q15xmqAnfy8oph6NkuTgRlVvjA65sHAimekcgzhWVpYfcqZYqcga8FlOGJkNESrm4MR/ed Meev309bJTaxeXfnrZtm5gzJilWWkyBA6PRgwHttaO2zZbkXhlxw8TxdAZnH0H6JUhIqM0kN jsI+BtjvVDX8UWZaVyCKMIRta2EHXERVbWPGebMT3cZdI60rL22u7KCZkOlZCXkcYzveQPcb z6IS1liVI= X-Talos-CUID: 9a23:Oa0R2W9Ni2KLks29O8mVv1USKsUrbj7M9U2OfHSxV1ZPReCpRGbFrQ== X-Talos-MUID: 9a23:xyivXAahxSFw3eBTvTvrqBtGEMpT5/6HWU4djIdB4MqYOnkl X-IronPort-AV: E=Sophos;i="6.00,247,1681185600"; d="scan'208";a="112390561" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Zl1XMyXD73kJrpy3z5KNFPc+gMODbkEFnOKSszHdoMz58LCs/X+Y2c9yDeSgSZ7rOMqNt1D3iaDZCgJMZoep0/ZxQjZg586UrALr42GDfTWK8VHfpRte410cVUCzI6eQtjy0jJUZrJZKipU5S3LpkWkJcRCO88PrafFT1XdkA5WZuxSQhs7pP2yKRKyCUQWG5X+6WeH84zZpCzDEyX2lSLt53ITdeJCuFFBFoQxXCfKOXHFPAJsMW/hZiYn07RcUXA8bJftvrYc+NfAqUuayubSc5EHXK65VrL8eX6gBTWyFJRZwJuvPW//SxWWFlYG7ZuKff/8nCUkKdmtQD4IhuA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=nQoex3KxQDT4pxXIKFv2y1HP714iKzUK1fS15AmZAi4=; b=J/ARkOuUqlmlDF54S9My45+oa7SAGCvRH0aroF05qYGhDoivZSkGFVSry7BK1H4GFodM0WyzWeix86Q0s0lAGsPWtJ4Gz6dy4jrHunaFfCdvf1cF5+AHZxSqE04e9pU/TEhaKQuERv3EMWSoLDnuqMpnMMtoIPbnaUX9ATJcZ2cCZ1aXlcfu5IxDXZjX0v5T33YWKPIkJxffVXGKE2oVWdD0dtPhM0qzqEe9SmLAC+YzsvMK922xILm9kBJnMvipevvOneGXtszWf3irKhAdfvgZB9lI4FeEjKLqJNu3VtHBYnlO+Y3TDnHcAq5Yqlh9NLN89B3fCXlaPomJKFqnvA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=nQoex3KxQDT4pxXIKFv2y1HP714iKzUK1fS15AmZAi4=; b=aFEIF86WfsFIoDZeMEvxj9GkFiL5CjEl3EiG1MqoP8dDTPq4En+TjbR1pysjI/CuELFMW1uRLXriwAK/McCXfyTio7HtS5vncf06gRQZtmzhx2Go+8VsbD4TJ5gpt+sby3GWMCBUsJIs25G1pcfnHjUM/dzMcREAqz31Yn85WGM= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; From: Roger Pau Monne To: xen-devel@lists.xenproject.org Cc: Roger Pau Monne , Wei Liu , Anthony PERARD , Juergen Gross Subject: [PATCH 08/13] libs/guest: introduce support for setting guest MSRs Date: Fri, 16 Jun 2023 15:10:14 +0200 Message-Id: <20230616131019.11476-9-roger.pau@citrix.com> X-Mailer: git-send-email 2.40.0 In-Reply-To: <20230616131019.11476-1-roger.pau@citrix.com> References: <20230616131019.11476-1-roger.pau@citrix.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO3P123CA0013.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:ba::18) To SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|SA1PR03MB6547:EE_ X-MS-Office365-Filtering-Correlation-Id: 7505b2f8-e908-4db3-37e4-08db6e6b3b06 X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: jR9doi4taS/D/BxUzcl3RjApWkX+UGoXdlpQeCO7pYbDCK6W6aiaOWP+dDjoBFhVRVIpQEFc0GkX6B6mJ0H91sPzDFhEWmsOWO8zoIW5vwnsMs+bgbc8DkPOq/yYStceyoMa7fOkO5E90+OqNjkHAfCxdYAYdse2hRlPnHy/AQMC28CPml6pVC9ZrTmKJx4C9gmdP+LAfOGVgKDIP5S/+gQiU4ippUXPLYsoqhaENndIGgVo/s7EWGe78ztRSbaRPzuwXk0tFebJ06dNhoK7d9Q11TL4CixFzEeMEOk+0kA0n1/mvB7dynpCYRWLtyCLC5gr27MK+OHojBNuo0YdcW41ydXbKGLX3MjIr5b8Q1AIxA+gQrKSuEpVblWwoN5ScJWMUAVU9ZbaM5PEp/bJ93Jwg9IvDue/d/nO/9kV/FP2N9jpaUaIxaQCZbeQJK/+9/34Vjr5HyF8SMWOqVb/8aPjKB6okYHBU2Zp0HRkNC4lF/BCEDgCDIQo9cGogkBdjhtoghV/Hvi933A2ZFSe5ok5J1wt7x8KKA8y9ClrDEUfOqVaReTBpsHTJ1wiwdgJ X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(366004)(39860400002)(136003)(376002)(396003)(346002)(451199021)(86362001)(38100700002)(8676002)(5660300002)(82960400001)(316002)(8936002)(41300700001)(66946007)(66556008)(66476007)(6916009)(4326008)(54906003)(83380400001)(2616005)(186003)(36756003)(478600001)(1076003)(6512007)(6506007)(26005)(2906002)(6486002)(6666004);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?RlhmeW5GWkpJQzljZmg2NWhmTWFrV0YwVFZCVXBvYjFqRnR6UUs3ODZ1djAw?= =?utf-8?B?YTVoeVhKVUVTMHhLcFNWYXZkd3p3bEZGOGlaMitUVFlQcVVlR3NIcnk1VDhm?= =?utf-8?B?ejBhOXVDS1FLb3FvM3YybUhUcDR1WkpjRjl3eE1BTDAyUGNBRHowTm5nRUVL?= =?utf-8?B?b1ZMTlhKU1dCcVpKSjdBdXVIQnhHNHhRRS9nU0FtT3RoSkl5cHQ0TzV4YUlG?= =?utf-8?B?ZUZXcjhScFEzaDdHREQ2MHp5NHp3VWlFM0ZiOEswVTFWL05KOUUxekpXU2dW?= =?utf-8?B?VWtld0tUaUk4M0FlZ2paU3p1YkROTmtVNFJDQVlVU09vbDVMcy9mSEJDaVpQ?= =?utf-8?B?T0Z3S0NsTHB2MXBCbWRnWlpLZVJSYjdZTXBRMitSaFB3U3JuWWVLT1Fkd0Uz?= =?utf-8?B?V05KZnlCUE5QQ3FsZ3BhbkUwcmxJbTR2MklBQkdhaXREd0E4QmVzalFTUkt0?= =?utf-8?B?RlVTenlSTU4rQmFMenhCOEdUc1BSamtIU2VHZnYxcHhIZWwxemhIN0lQV3BX?= =?utf-8?B?ckpNZ3l5VEd4Tml6U3VRbjVDYkJpN1IxN3BXM0k1czhUMERVN05UbE90Vmgv?= =?utf-8?B?NzhneDE1Qnp6ZHZycE5UV3VEdkY5YU93YjhSTjFyOUFWRE5rL3dRREVmOE5J?= =?utf-8?B?M2FZb0cxTmpJSGdXbDg2RG9YWit4b2JXbUc5QmhnbFVFTExxcnBPWTg0am92?= =?utf-8?B?UmZ5a0hDZVpzRlNDM2ZMeFhQM3lOcll4QUFmTmdCY1Y2Ky91VUtadnEzUFli?= =?utf-8?B?SVlSWkZ6NTdBdWtlK3JJeTA2elZVNUtDWVdlazNkMDFCV040SE5rQUMyV0Nj?= =?utf-8?B?UlhvVkxTZVdtRGlxRGk3L092VStEdnB6SFF2aXZibnd4QWJtd2p2NGdETUk1?= =?utf-8?B?SHdkOHlSK0pIRXJNVlVXQi94SjQ0TzhpMjl1UHk3bDEydndYdjVlZ0hTS25h?= =?utf-8?B?eUYrais4OU1MdHlxOW5FWTRrUW5nMDRjOWZQanplVkRPNEpXQWNDVXVOdTlE?= =?utf-8?B?bHE2YVdiSi9IV2lnU3NPSVBDSWo4OGtkcUlLbnVvWC9BMDZkWWQ2bC9FWDQy?= =?utf-8?B?b1NFaXpHYXUzNTdqODNBV203WjBpWUluVS9JYTY2bkVOWkNYTVQzWk8xRVN6?= =?utf-8?B?dFJUc0tBR0l5QkhPTWJ0UjJNd0lLNFh6R0xWclMrdWpQMXY0QU9lalp5Yi8w?= =?utf-8?B?dE84dHNiL250Z09nUG1iYjEzVjBkZTcvTHNUcGNBb1UrQVg2SjV2eEQrcmIx?= =?utf-8?B?WndKT09zQ2pnWG9icThIejRYcGtiNTRaY0hYYlVCV3pBUTN6VHFsYzgyelpY?= =?utf-8?B?V3pxcERGeU9taXdiOFFzdy9hUG5EMG14Z2c2dmVaeGdONytVTFRRNUhoeHpr?= =?utf-8?B?cFRaU3REN2hpTEhVRXozc0RSNGFUUmNyT0lGMXhoM0RpZk1nbll3YUFHNk0r?= =?utf-8?B?c2pqd1NpWUhmVDdBWTQ2QzRxc3FaL1VLRGNtYStTOTRjRGs3aDNoNmthcnZD?= =?utf-8?B?UGROK25Rb1JUaEV0MkxzdnBTZDZEdFJMcDhKTHlqdHYvNWY4UitxUm82UHRC?= =?utf-8?B?Q2U1MVFiVHBvbWZzMlpPckk2dDE0QkxyVmMyb1d4Zm1FQms1WDkzNUJtQXVE?= =?utf-8?B?U2NkQW1qeDdWcFBtYkNLWGVPcmZmemNXQVMyTDljMnNmY05wTXBmemg0U244?= =?utf-8?B?VTc5aXJNOHNJL1JjNEJLVGV2QTdKM1lXc1A2NFIzZStKNE0va2RTOG1acDk3?= =?utf-8?B?dzJITDVtTWFWTTdTZldOMFQzYStCT1NTQ092RXBQdDlRNVJtTHJpMUNMTjVS?= =?utf-8?B?akFOYmhaQ3k4MmZKaE9VSUpyNldVL3orQTF1SlQ5MFJxOS8ybDBWVUg1NVJZ?= =?utf-8?B?REFPdFFDV1RkQ1lIc21WN2xjdmdjVUhVanAwdVJOTUpheXBzdzI1NlAzekly?= =?utf-8?B?azhYUkduSUI2cWgxR0cwSGZpL2RES2ZKcWFLYWhGYTZZYU1Ray9KTFBEb1Mr?= =?utf-8?B?OEc3T1dEYVJkN0VTRTVLWHo0ZWZDOGx5NFdZUWF6ZFBuVExySGNFMTlSeXFh?= =?utf-8?B?QkxMSGZqL295ZzZ0L0taUjlPS3lob0F3dk5yckI0c2h1bE43c0E1ODlWeWRq?= =?utf-8?B?NmY3NFlTNDV3T1BIT21UcEdNaDNoYlR0M0RkZ0kyS2JiaWtiNlk1VDBXYmdC?= =?utf-8?B?eEE9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: 0WtjfyfPJkxPBM3/0TiyBjKLpl4eJCqW7B4eOlj1amuvwI6Vjr+xZRJP7FyN9G5oDSV0iMymZ0mkmH9996qvDnd9FrbIZ4ndxvTn+jbtUAqih/9GFlJdpgHyRDDrWI+7AHGxs+CnzY9niYi6DPfzSLNGQ8jo4hgwOv1GU5DdtomRI7MWiX55EAcelGAs8Y5jHLouORSfbvsskS4Co8bkNdY98Ef2gcK4Rr7lKRXQmJ2KrRLUOOZRYLBZezfqAZOs1tgPYXG+iDIvy4MPHpmuqZQCmUVDIlSSYX4/GA4ErgUSqEjCtyhIKuQZJhc7P1Rgd5h9X8p1H/iOZ+mNaFjmNyNxgXxJSg+uQDIYoWLAiDWfq72tEKVYcLuW4c0jnunxCXP4Qd9mV7AxYq8kpiuWLR994bVL/zhHis7H3sJlW48jWdKK6IScn3Z6V80E0sPJq6Z+cfjt2Wzq3yyaDvChV1JJdk1XS1u1oSqwADqHwGMq5jzb8OtRIeZjCW28g3g9MwF+4PRBvC3PRz/jSC2op+1rDfKBpQtolee2p1zHv7N36kxB+Vr+WkpNrd4DQD3sYM63M3+57pgC9IDAXKUf3r5CVJXY/iumHhFbGyetE7vOWAieF4ZBVAdXhO/w8kEVf9KiLcLSKV2NU7x2UZVb6mTfODVYc3FauiF3t5QSSzqxA/2XJ77YUVXL298ZbIFNuah5KgaVnLowX++gIqImR0TUJDqoQHHMG67lQKro1D7UkvQYTSF7r7Rs9WPKZlZO3mmhYtuV7IJsiCh/ua6nzmSJinp6GIAUqQ8nXlcIEFVZ9Oj94glYmmilFABwr+EN X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 7505b2f8-e908-4db3-37e4-08db6e6b3b06 X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Jun 2023 13:11:43.5606 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: sZap6wW/AhYRUjqHYm0WmWtMJokK9Vopd/gk6EYfo+SpzSI7WBPvXv/YsQdg5s45yv3v7oMm17pNtZ29DIwxww== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA1PR03MB6547 Like it's done with CPUID, introduce support for passing MSR values to xc_cpuid_apply_policy(). The chosen format for expressing MSR policy data matches the current one used for CPUID. Note that existing callers of xc_cpuid_apply_policy() can pass NULL as the value for the newly introduced 'msr' parameter in order to preserve the same functionality, and in fact that's done in libxl on this patch. Signed-off-by: Roger Pau Monné --- tools/include/xenctrl.h | 21 ++++++++- tools/include/xenguest.h | 5 ++- tools/libs/guest/xg_cpuid_x86.c | 76 ++++++++++++++++++++++++++++++++- tools/libs/light/libxl_cpuid.c | 2 +- 4 files changed, 99 insertions(+), 5 deletions(-) diff --git a/tools/include/xenctrl.h b/tools/include/xenctrl.h index 45f05a2d3d7e..786061282c91 100644 --- a/tools/include/xenctrl.h +++ b/tools/include/xenctrl.h @@ -1822,6 +1822,21 @@ struct xc_xend_cpuid { char *policy[4]; }; +/* + * MSR policy data. + * + * The format of the policy string is the following: + * '1' -> force to 1 + * '0' -> force to 0 + * 'x' -> we don't care (use default) + * 'k' -> pass through host value + */ +struct xc_msr { + uint32_t index; + char policy[65]; +}; +#define XC_MSR_INPUT_UNUSED 0xffffffffu + /* * Make adjustments to the CPUID settings for a domain. * @@ -1833,13 +1848,15 @@ struct xc_xend_cpuid { * Either pass a full new @featureset (and @nr_features), or adjust individual * features (@pae, @itsc, @nested_virt). * - * Then (optionally) apply legacy XEND overrides (@xend) to the result. + * Then (optionally) apply legacy XEND CPUID overrides (@cpuid) or MSR (@msr) + * to the result. */ int xc_cpuid_apply_policy(xc_interface *xch, uint32_t domid, bool restore, const uint32_t *featureset, unsigned int nr_features, bool pae, bool itsc, - bool nested_virt, const struct xc_xend_cpuid *cpuid); + bool nested_virt, const struct xc_xend_cpuid *cpuid, + const struct xc_msr *msr); int xc_mca_op(xc_interface *xch, struct xen_mc *mc); int xc_mca_op_inject_v2(xc_interface *xch, unsigned int flags, xc_cpumap_t cpumap, unsigned int nr_cpus); diff --git a/tools/include/xenguest.h b/tools/include/xenguest.h index 705a93a058fb..be61ff0af7fe 100644 --- a/tools/include/xenguest.h +++ b/tools/include/xenguest.h @@ -817,10 +817,13 @@ int xc_cpu_policy_get_msr(xc_interface *xch, const xc_cpu_policy_t *policy, bool xc_cpu_policy_is_compatible(xc_interface *xch, xc_cpu_policy_t *host, xc_cpu_policy_t *guest); -/* Apply an array of xc_xend_cpuid leafs to the policy. */ +/* Apply an array of xc_xend_cpuid leafs or xc_msrs to the policy. */ int xc_cpu_policy_apply_cpuid(xc_interface *xch, xc_cpu_policy_t *policy, const struct xc_xend_cpuid *cpuid, const xc_cpu_policy_t *host); +int xc_cpu_policy_apply_msr(xc_interface *xch, xc_cpu_policy_t *policy, + const struct xc_msr *msr, + const xc_cpu_policy_t *host); int xc_get_cpu_levelling_caps(xc_interface *xch, uint32_t *caps); int xc_get_cpu_featureset(xc_interface *xch, uint32_t index, diff --git a/tools/libs/guest/xg_cpuid_x86.c b/tools/libs/guest/xg_cpuid_x86.c index 0d0970d4bd69..09a012960a43 100644 --- a/tools/libs/guest/xg_cpuid_x86.c +++ b/tools/libs/guest/xg_cpuid_x86.c @@ -331,10 +331,74 @@ int xc_cpu_policy_apply_cpuid(xc_interface *xch, xc_cpu_policy_t *policy, return 0; } +int xc_cpu_policy_apply_msr(xc_interface *xch, xc_cpu_policy_t *policy, + const struct xc_msr *msr, + const xc_cpu_policy_t *host) +{ + for ( ; msr->index != XC_MSR_INPUT_UNUSED; ++msr ) + { + xen_msr_entry_t cur_msr, host_msr; + int rc; + + rc = xc_cpu_policy_get_msr(xch, policy, msr->index, &cur_msr); + if ( rc ) + { + ERROR("Failed to get current MSR %#x", msr->index); + return rc; + } + rc = xc_cpu_policy_get_msr(xch, host, msr->index, &host_msr); + if ( rc ) + { + ERROR("Failed to get host policy MSR %#x", msr->index); + return rc; + } + + for ( unsigned int i = 0; i < ARRAY_SIZE(msr->policy) - 1; i++ ) + { + bool val; + + switch ( msr->policy[i] ) + { + case '1': + val = true; + break; + + case '0': + val = false; + break; + + case 'x': + /* Leave alone: the current policy is the default one. */ + continue; + + case 'k': + val = test_bit(63 - i, &host_msr.val); + break; + + default: + ERROR("Bad character '%c' in policy string '%s'", + msr->policy[i], msr->policy); + return -EINVAL; + } + + clear_bit(63 - i, &cur_msr.val); + if ( val ) + set_bit(63 - i, &cur_msr.val); + } + + rc = xc_cpu_policy_update_msrs(xch, policy, &cur_msr, 1); + if ( rc ) + return rc; + } + + return 0; +} + int xc_cpuid_apply_policy(xc_interface *xch, uint32_t domid, bool restore, const uint32_t *featureset, unsigned int nr_features, bool pae, bool itsc, bool nested_virt, - const struct xc_xend_cpuid *cpuid) + const struct xc_xend_cpuid *cpuid, + const struct xc_msr *msr) { int rc; bool hvm; @@ -535,6 +599,16 @@ int xc_cpuid_apply_policy(xc_interface *xch, uint32_t domid, bool restore, } } + if ( msr ) + { + rc = xc_cpu_policy_apply_msr(xch, policy, msr, host); + if ( rc ) + { + rc = -errno; + goto out; + } + } + rc = xc_cpu_policy_set_domain(xch, domid, policy); if ( rc ) { diff --git a/tools/libs/light/libxl_cpuid.c b/tools/libs/light/libxl_cpuid.c index f5ce9f97959c..c96aeb3bce46 100644 --- a/tools/libs/light/libxl_cpuid.c +++ b/tools/libs/light/libxl_cpuid.c @@ -502,7 +502,7 @@ int libxl__cpuid_legacy(libxl_ctx *ctx, uint32_t domid, bool restore, info->tsc_mode == LIBXL_TSC_MODE_ALWAYS_EMULATE); r = xc_cpuid_apply_policy(ctx->xch, domid, restore, NULL, 0, - pae, itsc, nested_virt, info->cpuid); + pae, itsc, nested_virt, info->cpuid, NULL); if (r) LOGEVD(ERROR, -r, domid, "Failed to apply CPUID policy"); -- 2.40.0 From xen-devel-bounces@lists.xenproject.org Fri Jun 16 13:20:12 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 16 Jun 2023 13:20:12 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550222.859189 (Exim 4.92) (envelope-from ) id 1qA9Mw-00082C-1i; Fri, 16 Jun 2023 13:20:02 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550222.859189; Fri, 16 Jun 2023 13:20:02 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qA9Mv-00081O-Tn; Fri, 16 Jun 2023 13:20:01 +0000 Received: by outflank-mailman (input) for mailman id 550222; Fri, 16 Jun 2023 13:20:00 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qA9FH-0001xG-0d for xen-devel@lists.xenproject.org; Fri, 16 Jun 2023 13:12:07 +0000 Received: from esa5.hc3370-68.iphmx.com (esa5.hc3370-68.iphmx.com [216.71.155.168]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 63cb7b89-0c47-11ee-b232-6b7b168915f2; Fri, 16 Jun 2023 15:12:05 +0200 (CEST) Received: from mail-bn7nam10lp2107.outbound.protection.outlook.com (HELO NAM10-BN7-obe.outbound.protection.outlook.com) ([104.47.70.107]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 16 Jun 2023 09:12:03 -0400 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) by PH0PR03MB5736.namprd03.prod.outlook.com (2603:10b6:510:37::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.27; Fri, 16 Jun 2023 13:12:00 +0000 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::ab2a:a298:bacb:db47]) by SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::ab2a:a298:bacb:db47%2]) with mapi id 15.20.6477.037; Fri, 16 Jun 2023 13:12:00 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 63cb7b89-0c47-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686921125; h=from:to:cc:subject:date:message-id:in-reply-to: references:content-transfer-encoding:mime-version; bh=gVwZvkh6fQpNEwo+H17Wdk8WJM37Ao2vdvqxgWh3rWk=; b=IUZBPAIZEX1aBbKSgGnZdSRrKcwFpZ5DpCMXnKSGwATVme6zrNyKrik3 61r9IFEtRpvcKWLoWt6mb2Ps0qeQgqBgkO3uSju/qlQ5PiCvxNySLctGL T4I8vmgkmcPirYJ7aqgnyCUpGMmTK+COqM3x2KZwDv9LHaQEkesoEPU/X U=; X-IronPort-RemoteIP: 104.47.70.107 X-IronPort-MID: 111813151 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:orUHMawl11adrcS8xYd6t+cTxyrEfRIJ4+MujC+fZmUNrF6WrkUBz mBMWj3TPf6OYWP8co1xbdm28EwFscKAy4JnGgNp+SAxQypGp/SeCIXCJC8cHc8wwu7rFxs7s ppEOrEsCOhuExcwcz/0auCJQUFUjP3OHfykTrafYEidfCc8IA85kxVvhuUltYBhhNm9Emult Mj75sbSIzdJ4RYtWo4vw/zF8EsHUMja4mtC5QRgPK4T5jcyqlFOZH4hDfDpR5fHatE88t6SH 47r0Ly/92XFyBYhYvvNfmHTKxBirhb6ZGBiu1IOM0SQqkEqSh8ai87XAME0e0ZP4whlqvgqo Dl7WT5cfi9yVkHEsLx1vxC1iEiSN4UekFPMCSDXXcB+UyQq2pYjqhljJBheAGEWxgp4KTpA2 uQzOj5UVQqKlfu/0oq9bs41m8t2eaEHPKtH0p1h5RfwKK9+BLrlHODN79Ie2yosjMdTG/qYf 9AedTdkcBXHZVtIJ0sTD5U92uyvgxETcRUB8A7T+fVxvDCVlVQuuFTuGIO9ltiiX8Jak1zev mvb12/4HgsbJJqUzj/tHneE37aWzXqgAd9LfFG+3s8wm3m5nmkINBpISUO0n+Ll1Uijes0Kf iT4/QJr98De7neDXtT7GhG1vnOAlhodQMZLVf037hmXzajZ6BrfAXILJhZebPQ2uclwQiYlv neLkMnuHidHq6CORDSW8bL8kN+pES0cLGtHbylbSwIAuoHnuNtq1k2JSct/GqmoiNGzASv33 z2BsCk5gfMUkNIP0KK4u1vAhlpAu6T0c+L83S2PNkrN0++zTNfNi1CAgbQD0ct9EQ== IronPort-HdrOrdr: A9a23:23Cj5q4iJLsdHkRWOQPXwVyBI+orL9Y04lQ7vn2ZFiY5TiXIra qTdaogviMc0AxhIE3Jmbi7WJVoMkmsjqKdgLNhdItKMzOW3FdAQLsN0WKm+UyYJ8SczJ8U6U 4DSdkYNDSYNzET4anHCUuDYrAdKbK8gcOVbJLlvhJQpHZRGsNdBmlCazqzIwlTfk1rFJA5HJ 2T6o5svDy7Y0kaacy9Gz0sQ/XDj8ejruOtXTc2QzocrCWehzKh77D3VzKC2A0Fbj9JybA+tU DYjg3C4Lm5uf3T8G6Q64aT1eUbpDLS8KoMOCW+sLlVFtwqsHfpWG1VYczMgNnympDt1L9lqq iPn/5qBbUI15qYRBDJnfKq4Xiq7N9m0Q6f9XaIxXTkusD3XzQ8Fo5Igp9YaALQ7w46sMh7y7 8j5RPsi3N7N2KzoM3G3am8azh60k6v5XYym+8aiHJSFYMYdb9KtIQauEdYCo0JEi724J0uVL AGNrCr2N9GNVeBK3zJtGhmx9KhGnw1AxedW0AH/siYySJfknx1x1YRgMYfgnAD/pQgTIQs3Z WyDo140LVVCsMGZ6N0A+kMBcOxF2zWWBrJdHmfJFz2fZt3SE4la6SHkIndyNvaCaDglqFC56 gpeGkoy1IPRw== X-Talos-CUID: 9a23:0WbyqmGH7gL+McWAqmI8+mEMMdIrK0bHxWXJKl2AD0JOEaCaHAo= X-Talos-MUID: 9a23:fj4BbwkELgsnnFh1tZmRdnpTbtxMyfyrE3wKz4ketPefaXN2JhaC2WE= X-IronPort-AV: E=Sophos;i="6.00,247,1681185600"; d="scan'208";a="111813151" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=IFCKKBl7hS7DL7MymfjABQ7xajgt0ekYIi3uGE7SIxRuCqgPdt7L3xi14SPIyE0SrEKdyAuI1ZKWDWyDa6iPT8XddDFP03urCA066WSPLyvIVRoC4vr8UY5kKWgdILbSvsS45h0KMdG/f8/EcorWNaeauwkmWNUDFhOHfoFf7yN8m95dkH/ib/vRwBbyVePvmE72L3IVVTBzyWlA01WQzYRb5Aga0XrnTVJ9fitHqcXthjwHGv3xuH3RY4rjW/hYuetZvz4L8IkAfiGtitwzoUhFyuwEtOJHMGdvITciJsu3p9LzXKDJSCpC21r810vzUu+48E/K5hL646ACqdkIvQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=89oNHMjcOQaqY5FhZmJT10qj0SRQfG/Z1me2QYyTjBQ=; b=GW8MW/ZlXtuVF+UgQn9g0dEsCYlF/8RoZirBlZRBPumCyhbhb0zlpV7vJxuDAn+vul8AYVebdDhnVUACxzVpI5ygQAJN6SdH30sG7dgd1fpKmtZvA4qWsKPTTXzpI8L9cQvCwA2LqOpEqLT+C1edRotmPmiOGlArY0BgX6VB/8Py2t2bRVPSPfClj9WEh+izT9b2IwTaTYD0V0WUDLMiL/14vLumQ0YqZpVbcRhv1IRz+8bJfZ8wXrS10e5WhDvA8NYJEeNXH36eubCrL/Yxr8BElSqb1zosD8MXfQwjIGu8qQaDLlv9VFn7baMqyRtB4OWm0HsvAYmvtLZOlj8OMw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=89oNHMjcOQaqY5FhZmJT10qj0SRQfG/Z1me2QYyTjBQ=; b=rbNp8KRPhdxB7/HUqKQcSv6EWTJ+wUw+jElUqBx6rRoyDqwonffyg7bjeuVo5BgJTGXtyhhMbzXRjJFyewnVol18Xaf8KG/Mg7Jza704CnxcG9+eurGgQdExyBF72nek1AC2VRURNYlhLafBAr43Ty8WJNbTneHFZQXP3gR5S24= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; From: Roger Pau Monne To: xen-devel@lists.xenproject.org Cc: Roger Pau Monne , Wei Liu , Anthony PERARD , Juergen Gross Subject: [PATCH 11/13] libxl: split logic to parse user provided CPUID features Date: Fri, 16 Jun 2023 15:10:17 +0200 Message-Id: <20230616131019.11476-12-roger.pau@citrix.com> X-Mailer: git-send-email 2.40.0 In-Reply-To: <20230616131019.11476-1-roger.pau@citrix.com> References: <20230616131019.11476-1-roger.pau@citrix.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO2P265CA0329.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:a4::29) To SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|PH0PR03MB5736:EE_ X-MS-Office365-Filtering-Correlation-Id: d0b4cf0d-b3be-4b0c-e5b3-08db6e6b4533 X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: xWFStiwylD/og+D1k+buFtbGq8HNplTDTv+s986cGjJqI1GPWEaxsirHM7HkBdz5Hzzi3PaUe25YnUws47k0Gpve0JsJCVFCgGQhf7s/2RD+as7Zmk0DHTisgBAJC0Ljn2YJjWBioYOh2XMl0jttc64u88+3ehpx9Co72Zw6N+FLfdPmjMN9JAERWIT4+p+1y+JkxyFC8a/tr1muHbn9Kb9RGjRwAD+LEFVpSTGnWa/5BAeAtjgcDqKKTcIJjRBQnECER+E6vVBcgJRdCH5KUhyRkPAVccwafoG2hiYldj5uRhnVTGfHaxS1VFj6PItBidQRZFWgj+TYZvOAxQ+xKG1BieLPqn+t5BqHU/S5K9j9sxK1CO/fpwEfo1LU/twzFOSe0OcojDIfHC3qscyTWZRSxe6/bAxRFgFzn97HnFwKyb+/RGxDy1zRL8C2H/yBbtz5z00whoPVtjRAaY1MnkU9XRmSkwQbe6tzhBsy6jXtp8fPlvlbLQ2d/G/HbLPw/Se5Q6JsCzL3hBuUGI4jP0A0RhnBNB2M2SxnHrmd6iiXg29zrqCnlEmsao2bmQ1T X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(396003)(366004)(39860400002)(346002)(136003)(376002)(451199021)(54906003)(41300700001)(8676002)(86362001)(66946007)(66476007)(66556008)(6486002)(6916009)(8936002)(316002)(6666004)(4326008)(36756003)(478600001)(6512007)(26005)(5660300002)(83380400001)(6506007)(1076003)(2906002)(186003)(82960400001)(38100700002)(2616005);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?MkpubTVMdnJWT1NmMHZnLzg0cmRPR0h3djdDSklSQWlzNDF4eVZoMHBxaDAv?= =?utf-8?B?NTlyTk9qUDlkV1Q4QkEzbWppWW4zSkl3VlNUdHdsQ29BODdocFZMOG4yRWVV?= =?utf-8?B?MmJsaUZaRWZhY2h2WXAwbCtMUWRrUkdBNm05dGRqczFwOVIwUDNiWmM1Qm1t?= =?utf-8?B?clRGeVd2RUpsaGc0c2JJdnJwQWZnN0FpVUtmdHRIWkJNQy9PQzFzc1hYMTls?= =?utf-8?B?RTFJQkpHM0VCdTJ0SGpSU0txcXFuRUdsTk1zTG9iVm1WdUJaanpEUjM3VFRr?= =?utf-8?B?Y0J6bmtRSnpmTmp6SG1ZNUNCTUtrbGNqWVVsVlFhLzgrcG0vNEFCRWt2QTVa?= =?utf-8?B?ZmszaTZnRnN4NlREbTEzUU9EaUxGRGgzS2ZrRUI3Nzg0Y0hESWYvVy9CWUtQ?= =?utf-8?B?TTZvcWdwcGJvUE1NSHYyWmdLTjduYU5lNldmWFRyeFlFUGFtdzdVeTg5Rytu?= =?utf-8?B?YVBUL1BpMnZpQ0lRejVNRkpuajY2QWxLR1pHUUlkdmxPdFp2V1pNdTF3bmcy?= =?utf-8?B?TW4ybmlnZTYybFgzMFFSaEJpWm1JZGRWNklCVk9acUcyV1JiUWRUZ1JuNVJQ?= =?utf-8?B?NzNKV0NFejJ3M2tOenZGNlBUQXAwYWh0MFFOQitWa01KbU02RWJ5RFpGS1o2?= =?utf-8?B?bG1KWGJmeXAybEo0bFZlU21PL2hwZHZLb2JVaEFjbXMrckhKN0ppSjd0am1q?= =?utf-8?B?SVBGQ1g2cDlHSG9rUFB1Qjdhd2dlUlZRaXBVSEpCcE5yLzhweEZDYzlJQk52?= =?utf-8?B?VU5HT1dXS0hNRG9ya0ViazFwYlJKSzY3VUwzTWludGtEc2czWmJlcGtzd0dG?= =?utf-8?B?cEk5Y0U0cHdsVm5KNlJPeWZlSUhCb1cxVXg5Y2RlM3BHNnl6YU9qYUxnWlM4?= =?utf-8?B?d3piTWJ1bXVrTjk3U044KzhuUnY4akpvSFd2dEFwbVZTQi9ha1h6VlZpeTZC?= =?utf-8?B?YjhjK2JzZWpLdHVMK2hZZnpMb3BMY041SHFiOThQU1JUY1owTVhheVl5Zks0?= =?utf-8?B?NkFLWmlmYk9ZNVJUTDFkNndyd3p3M0xCZjV4SjZwNGN0eGFvb0grc1IxQjd4?= =?utf-8?B?UzhDdGNhUmdlbENNVGtCVUJveG51OHFCanZ6SjVXeDVMWWRnSCtYR0pjdU5S?= =?utf-8?B?SWl3RkpLclFEQjR1RWVXaHlDb2dvYjBMYkE5RjVKV3hvMy9rTVhCajRkcmtQ?= =?utf-8?B?VTV5UW80eTdJMFgwdEFJb1dsRklpZ2srUFNmY2lEaGhUTjVaSlVtcEpzLzc2?= =?utf-8?B?WmxRMWlwRTB4S1IxVHpMMVNPRlVFTDdtYjhYQVhTdnlMa0x0S1IzeklNNWYr?= =?utf-8?B?emNLTWpmd0lGSlhOaTUxeUZTU0xjcnVnUmltYllQbU5xK0Jwa1hJRTRta1V3?= =?utf-8?B?SzIwRlFvbUlhckl1UG1obkpGeGxZYTNmaUxzR0JqVFR5alVWVVdGWGp5aFpS?= =?utf-8?B?VUxRTkVId01tR3dBclBqVXAvODZDNStSOXVtYkgrMnJmVkdMS01adnE0RVhH?= =?utf-8?B?K1RncFcwdEdtWHlad0NTRXZqa1BPSy9DaGs2OVRJb1FVN1hodlRXM3Qxb3FD?= =?utf-8?B?amMvd2lkMVBNbDlIcHFidTBaUUhKaWQ5bHAxRWgwcDRvSzFPUTNOV0ZoR1ZZ?= =?utf-8?B?eW0vMVk0T2tQZDUzNDVMYkRua3VaRU1xeUxrYXpBTXduMHdNWFpmcHpVMEJE?= =?utf-8?B?SDdzREhhTjIzU3lvYTEwTHVJeWZ0dDRQNSthd09zZzNmd0U5Vjc0dER0UzBW?= =?utf-8?B?VzJjMmRjeVlhNEZsaTV3bUxpemtGeGRESm9aU3J2WnBoZW1OcVliT1F3dTlu?= =?utf-8?B?NEVhSlBZTC9DMDZJTHA1b2ZXWHNGR3IraWpGRDh3ZElsYzVCWHFqbUQ0STkv?= =?utf-8?B?TUlJZU91TjdyTjZsZFpaSk1sbW1BRklGV2lnOFEvZ3h3cTRRS3Q0OEJxK1Jk?= =?utf-8?B?S01FRDVyaDJkR3pJaHNOTHJ0UHJBQmtvU1BYQ0dLeHl0U01hTms1ME94U3BX?= =?utf-8?B?OHB5WnNIQm5aMzhzZkR5SUVGVTd1TzJnVHZqSGhpT0xQNmF2UldLMjY4eUVX?= =?utf-8?B?b1dVeTBzYzRCR3NtMmY3akI1TXRvSkNaSXpQZmdSYkJwZ0IyUTJDSlg1TlEr?= =?utf-8?B?dWJsSjFYd0tsNFY2TGtYREpISEZjUVhPZjhtOVB2SHZnWkxFMW9kVnVJbWdN?= =?utf-8?B?a2c9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: VZQX1sfNoN3tl+CORhyBHV3qTN0uPV+pm8qBTVTgUnITVyy4RoMY0FA3ll130X/X2jr+MLDrIOb8vcWjgKJoxbWXcIcxaSUZDNt0JcQwO/8RvzHJ0oQ7Q3xYP3nUZW5gfe+bznS/vmg8955+Sg0u5CSoabQZocg3ee4rPydFy1XtdQZQsqk9PflyIYWaqW/mLNeFdRgsVcHzmHXZv7WSxHjkI0DtWsQiYzops16zAP6I9rVJpbxwnA2pJLZOeEDoV08012TosRv4dccfyVUYMOKxlu57JE9lnxEctDQwl2zEfEE/3+Ac0RUVF5iKII/mDtzAn4595UL1Z1kgLNtzEZVjPa6M+9IaQnpH9aYPkh/sJh6h380U+vKyEAVHGFcX7ZpEgu92UAY/2icIkTtREUO7tUO6N4IlupgvCJ4eWL6W7rm6dOBaF4HFM8qQOOyXab84EVnOjYDOF4iP5LHANCEsmPsYerGQ2oRtUKbH3s5iZ5HbBMEr5zEEyb6oBaA0Lr7IF2wPSOzRMufkGZsKr9IQ5fpm6tFSmR26ERjrL0ptRmaWfgOJMMCdcgLhng0RynILebIaNDC+o6IymwlEf+qG2NUhd3C8hdqI9Xg10X09j3rXG5i/qynFsC6sxRUJeiwW1N93By32x1cEzgXGgRfj/jjTaDxu2RnROC9JovyZi3Ez/ALsC6l37m5oCO7VVpElIwQpbeJuPjT2enuREpPhlR/jm5apZ5co/kN7h/CGxSh2uJHp93Wwpg3sdmXSFRaWoqMK+jwep6RzMTF+hNs8b81HBi5DqJog/Lbt2RyJem3/yOnOLaJS/HRuP033 X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: d0b4cf0d-b3be-4b0c-e5b3-08db6e6b4533 X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Jun 2023 13:12:00.7272 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: ePISHWykQof+B87s1uj9PVz7KAykksl7X4a8J12+Lfidct9ooM9zqRDrcqLWkvBxwAEiGn8VV4DoCvEAOA/2qA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR03MB5736 Move the CPUID value parsers out of libxl_cpuid_parse_config() into a newly created cpuid_add() local helper. This is in preparation for also adding MSR feature parsing support. No functional change intended. Signed-off-by: Roger Pau Monné --- tools/libs/light/libxl_cpuid.c | 120 +++++++++++++++++---------------- 1 file changed, 63 insertions(+), 57 deletions(-) diff --git a/tools/libs/light/libxl_cpuid.c b/tools/libs/light/libxl_cpuid.c index 7261c1f1fd82..d0ac5b2bc102 100644 --- a/tools/libs/light/libxl_cpuid.c +++ b/tools/libs/light/libxl_cpuid.c @@ -88,6 +88,66 @@ static struct xc_xend_cpuid *cpuid_find_match(libxl_cpuid_policy *policy, return *list + i; } +static int cpuid_add(libxl_cpuid_policy *policy, const struct cpuid_flags *flag, + const char *val) +{ + struct xc_xend_cpuid *entry = cpuid_find_match(policy, flag->leaf, + flag->subleaf); + unsigned long num; + char flags[33], *resstr, *endptr; + unsigned int i; + + resstr = entry->policy[flag->reg - 1]; + num = strtoull(val, &endptr, 0); + flags[flag->length] = 0; + if (endptr != val) { + /* if this was a valid number, write the binary form into the string */ + for (i = 0; i < flag->length; i++) { + flags[flag->length - 1 - i] = "01"[!!(num & (1 << i))]; + } + } else { + switch(val[0]) { + case 'x': case 'k': case 's': + memset(flags, val[0], flag->length); + break; + default: + return 3; + } + } + + if (resstr == NULL) { + resstr = strdup("xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"); + } + + /* the family and model entry is potentially split up across + * two fields in Fn0000_0001_EAX, so handle them here separately. + */ + if (!strcmp(flag->name, "family")) { + if (num < 16) { + memcpy(resstr + (32 - 4) - flag->bit, flags + 4, 4); + memcpy(resstr + (32 - 8) - 20, "00000000", 8); + } else { + num -= 15; + memcpy(resstr + (32 - 4) - flag->bit, "1111", 4); + for (i = 0; i < 7; i++) { + flags[7 - i] = "01"[num & 1]; + num >>= 1; + } + memcpy(resstr + (32 - 8) - 20, flags, 8); + } + } else if (!strcmp(flag->name, "model")) { + memcpy(resstr + (32 - 4) - 16, flags, 4); + memcpy(resstr + (32 - 4) - flag->bit, flags + 4, 4); + } else { + memcpy(resstr + (32 - flag->length) - flag->bit, flags, + flag->length); + } + entry->policy[flag->reg - 1] = resstr; + + return 0; + +} + /* parse a single key=value pair and translate it into the libxc * used interface using 32-characters strings for each register. * Will overwrite earlier entries and thus can be called multiple @@ -332,12 +392,8 @@ int libxl_cpuid_parse_config(libxl_cpuid_policy_list *policy, const char* str) {NULL, 0, NA, CPUID_REG_INV, 0, 0} }; #undef NA - char *sep, *val, *endptr; - int i; + const char *sep, *val; const struct cpuid_flags *flag; - struct xc_xend_cpuid *entry; - unsigned long num; - char flags[33], *resstr; sep = strchr(str, '='); if (sep == NULL) { @@ -347,60 +403,10 @@ int libxl_cpuid_parse_config(libxl_cpuid_policy_list *policy, const char* str) } for (flag = cpuid_flags; flag->name != NULL; flag++) { if(!strncmp(str, flag->name, sep - str) && flag->name[sep - str] == 0) - break; - } - if (flag->name == NULL) { - return 2; - } - entry = cpuid_find_match(policy, flag->leaf, flag->subleaf); - resstr = entry->policy[flag->reg - 1]; - num = strtoull(val, &endptr, 0); - flags[flag->length] = 0; - if (endptr != val) { - /* if this was a valid number, write the binary form into the string */ - for (i = 0; i < flag->length; i++) { - flags[flag->length - 1 - i] = "01"[!!(num & (1 << i))]; - } - } else { - switch(val[0]) { - case 'x': case 'k': case 's': - memset(flags, val[0], flag->length); - break; - default: - return 3; - } - } - - if (resstr == NULL) { - resstr = strdup("xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"); + return cpuid_add(policy, flag, val); } - /* the family and model entry is potentially split up across - * two fields in Fn0000_0001_EAX, so handle them here separately. - */ - if (!strncmp(str, "family", sep - str)) { - if (num < 16) { - memcpy(resstr + (32 - 4) - flag->bit, flags + 4, 4); - memcpy(resstr + (32 - 8) - 20, "00000000", 8); - } else { - num -= 15; - memcpy(resstr + (32 - 4) - flag->bit, "1111", 4); - for (i = 0; i < 7; i++) { - flags[7 - i] = "01"[num & 1]; - num >>= 1; - } - memcpy(resstr + (32 - 8) - 20, flags, 8); - } - } else if (!strncmp(str, "model", sep - str)) { - memcpy(resstr + (32 - 4) - 16, flags, 4); - memcpy(resstr + (32 - 4) - flag->bit, flags + 4, 4); - } else { - memcpy(resstr + (32 - flag->length) - flag->bit, flags, - flag->length); - } - entry->policy[flag->reg - 1] = resstr; - - return 0; + return 2; } /* parse a single list item from the legacy Python xend syntax, where -- 2.40.0 From xen-devel-bounces@lists.xenproject.org Fri Jun 16 13:20:17 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 16 Jun 2023 13:20:17 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550226.859204 (Exim 4.92) (envelope-from ) id 1qA9N1-0000oa-EA; Fri, 16 Jun 2023 13:20:07 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550226.859204; Fri, 16 Jun 2023 13:20:07 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qA9N1-0000o8-AH; Fri, 16 Jun 2023 13:20:07 +0000 Received: by outflank-mailman (input) for mailman id 550226; Fri, 16 Jun 2023 13:20:06 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qA9FF-0001xG-CC for xen-devel@lists.xenproject.org; Fri, 16 Jun 2023 13:12:05 +0000 Received: from esa5.hc3370-68.iphmx.com (esa5.hc3370-68.iphmx.com [216.71.155.168]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 625e0382-0c47-11ee-b232-6b7b168915f2; Fri, 16 Jun 2023 15:12:04 +0200 (CEST) Received: from mail-bn7nam10lp2107.outbound.protection.outlook.com (HELO NAM10-BN7-obe.outbound.protection.outlook.com) ([104.47.70.107]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 16 Jun 2023 09:12:01 -0400 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) by PH0PR03MB5736.namprd03.prod.outlook.com (2603:10b6:510:37::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.27; Fri, 16 Jun 2023 13:11:55 +0000 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::ab2a:a298:bacb:db47]) by SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::ab2a:a298:bacb:db47%2]) with mapi id 15.20.6477.037; Fri, 16 Jun 2023 13:11:54 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 625e0382-0c47-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686921124; h=from:to:cc:subject:date:message-id:in-reply-to: references:content-transfer-encoding:mime-version; bh=jjb2XN3FlzP7GiqggDJ+sTgjB6pTu8yM2HN3iWebSd0=; b=QHsaGcxfDmK2g9BUOHwxDL1rkqdpBALEPG7dszmCzPCLYXohDNSWgDdH OtlqJeRUo6A6YtWCiyEYi6ad3/PTkZRVT6BW3yIEBLt1NrZL7620hOtYu E2fYu5zksfZuc9Tb4fsqQ/0SpCTsIjJIE8vX2YsaoP3G29sVt/Mf3R6Eq 4=; X-IronPort-RemoteIP: 104.47.70.107 X-IronPort-MID: 111813143 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:5IY/4a27Ou1eVU7/NvbD5fdwkn2cJEfYwER7XKvMYLTBsI5bpzdRn DQeUWiBafaPZWSnc952YIy08x4DsZXRzYVrGlNppC1hF35El5HIVI+TRqvS04F+DeWYFR46s J9OAjXkBJppJpMJjk71atANlVEliefTAOK6ULWeUsxIbVcMYD87jh5+kPIOjIdtgNyoayuAo tq3qMDEULOf82cc3lk8teTb8HuDgNyo4GlD5gJnO6gR1LPjvyJ94Kw3dPnZw0TQGuG4LsbiL 87fwbew+H/u/htFIrtJRZ6iLyXm6paLVeS/oiI+t5qK23CulQRrukoPD9IOaF8/ttm8t4sZJ OOhF3CHYVxB0qXkwIzxWvTDes10FfUuFLTveRBTvSEPpqFvnrSFL/hGVSkL0YMkFulfIUBj9 KUJORY3X06mlsev2qDnctdvv5F2RCXrFNt3VnBI6xj8VK5ja7acBqLA6JlfwSs6gd1IEbDGf c0FZDFzbRPGJRpSJlMQD5F4l+Ct7pX9W2QA9BTJ+uxouy6KlFMZPLvFabI5fvSQQspYhACAr 3/u9GXlGBAKcteYzFJp91r137afxHiiBNl6+LuQ+Kd00Aai1G8oNSIYf1CSvem/iW2jVIcKQ 6AT0m90xUQoz2S7Q9+4UxCmrXqsuh8HR8EWA+A88BuKyKff/0CeHGdsZiFFQMwrsokxXzNC/ l2GhdTyHhR0raaYD3ma89+pQSiaPCEUKSoIY3ACRA5cu937+thr0VTIU8ppF7OzgpvtAzbsz juWrS84wbIOkcoM0Kb99lfC696xmqX0oscOzl2/dgqYAslRPeZJu6TABYDn0Mt9 IronPort-HdrOrdr: A9a23:I6m4saAme8S7pJjlHeg4sceALOsnbusQ8zAXPh9KJCC9I/bzqy nxpp8mPEfP+U4ssHFJo7C90dq7MAjhHP9OkMAs1NiZLW3bUQeTQr2KqLGSugEIeBeOvtK1t5 0QFJSWYeeYZTQUsS+52njfLz9K+qjlzEncv5a6854bd3AJV0gP1WZEIzfeNnczaBhNBJI/Gp bZzNFAvSCcdXMeadn+LmUZXsDYzue73q7OUFojPVoK+QOOhTSn5PrRCB6DxCoTVDtJ3PML7X XFqQrk/a+u2svLhyM0llWjo6i+quGRhOerN/b8y/T97Q+cyjpAUb4RFIFqegpF491Hpmxa0u Uk6C1QRfibo0mhA11d5yGdkDUImQxel0PK2BuWh2Durtf+Qy9/A81dhZhBeh+c8EY4uspguZ g7q15xmqAnfy8oph6NkuTgRlVvjA65sHAimekcgzhWVpYfcqZYqcga8FlOGJkNESrm4MR/ed Meev309bJTaxeXfnrZtm5gzJilWWkyBA6PRgwHttaO2zZbkXhlxw8TxdAZnH0H6JUhIqM0kN jsI+BtjvVDX8UWZaVyCKMIRta2EHXERVbWPGebMT3cZdI60rL22u7KCZkOlZCXkcYzveQPcb z6IS1liVI= X-Talos-CUID: 9a23:4UQj2W4Ai940jGX7adss1G85G5k0Y1vn/Sn1MmqhE3Q1cIOWcArF X-Talos-MUID: =?us-ascii?q?9a23=3AHCQjBwxjAQpLSKsRNkZJxFHd5DaaqKr3FhBWoIc?= =?us-ascii?q?FgPS7OwZ7EiuNijeUX4Byfw=3D=3D?= X-IronPort-AV: E=Sophos;i="6.00,247,1681185600"; d="scan'208";a="111813143" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=L39OD1CPGuXNeI5nj4RcqImH9pRJRtXky9MIsyAMNfwK298pMOBlHN6Kb9U76Dk/x2/GcorS+qN0ixy3fj+/ckR2Q9sedcypynYvnDQgGyGM3rrYUE6MMm2/obcsPzO5lZ4JEkMUOABXgGV8f37F2tNugq3j7OEDghGoA7Mvk5WpdL08Sq8d8eEmwKz2/Bp1oXfgPfbXDhvqGe34ufFsQrgA0Q/llI+zx+50m12TdD20QhlhSY8i6FoK7Q6Iou5i1kSZ6GxJOqFvW00s/0MNLxYK6iDQpv0lOZtSxY68f0PNA+IPRnAauVpnShtxETJUs3Q98Ndg9/5eD/TbyR3fhQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=B45CPjJS2wNothOhTq7SFJvAgWc7InS6Fke8gTqrsao=; b=dlIBDVNjwhPGu+qxHkRCWNQllsfmIblm8Wq9piROwWkmrhp4lvUaTSiYxnOJ6r2ExkzcWkMdU5FgheCRjlCj0OiGZHKuefut95ESwnfwQYwA+sS+mCULeREej2/cwQ8dAtSnfpyrjxieYQ5+ItdMMCbzu38UEtYFqo3pxjOtplnQBV7GkyCEMfJ9+zsCNa+FUEAgmSMvMpEUSwwfA7EdC02z5jtv7ECisF30O9YVNL9wZjHu8yZU3/4ZG37gPisU4mkuTnBgPwHKjrcXYD3/TkEQT+32FLyNf7c/oPFPmKocrE0bsGQdP3vuPQ9XzpRcwMTE2WT42MH80/4vmkUaOg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=B45CPjJS2wNothOhTq7SFJvAgWc7InS6Fke8gTqrsao=; b=Yi1y4vscRanWwa23Owoxs13vmv87bjr+v1cg7j3/BUlmvNg28486jFFRDxo34zLjs5xm+hrjqUA9A95dU1RStA7Sj6NX/LjrVlTuBKD7K6J6hnzl2n30y2etMMtJWVZ2yX0RO78zt0oqkOoqAw02X86PI8HrZSKhINYjvQ2g+cw= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; From: Roger Pau Monne To: xen-devel@lists.xenproject.org Cc: Roger Pau Monne , Wei Liu , Anthony PERARD , Juergen Gross Subject: [PATCH 10/13] libxl: introduce MSR data in libxl_cpuid_policy Date: Fri, 16 Jun 2023 15:10:16 +0200 Message-Id: <20230616131019.11476-11-roger.pau@citrix.com> X-Mailer: git-send-email 2.40.0 In-Reply-To: <20230616131019.11476-1-roger.pau@citrix.com> References: <20230616131019.11476-1-roger.pau@citrix.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO2P123CA0056.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:1::20) To SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|PH0PR03MB5736:EE_ X-MS-Office365-Filtering-Correlation-Id: 0302a3f6-12bf-4eab-cbff-08db6e6b41ae X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: kzDQcHNV49mBBTM1/RF/K5wHDrJs3xzhPThNsdgJXU0h7oCoSI2uEw9mR8zsqwNiXq16yLAWpiLXwZ/kA7fjLTDsR4E7Wo407S3tFE3BViEj/RKwZ0oi3/lfnhXxWCn0lUgPHc5T0KI4lgMMzGusPc45Hlf9AIpWBEtzMQqIjV5aH2sS0m6Gc/+uV2UyVBPkH7B3ix/j/7RwbFHKb/ETWrUlI//LozeDFo2n1VwFu5NgI35n6msmua8F4KcoHh3sGTMQruLTTbL1L6139w36xkgayVcIJlfmHWOv0rvT1ibnKnf6SONEBGkufb7ou8mY+Ly0sJ4ezQU2GrxiY3wrsLn4Ql+2i4WNPcO7CDE6v6/9zHLFFpLo9zmKO9w6t2Ty8xI6CPv1KNtmSzBm8vCTnn+V0HMYpiPGZmbuz0U/agmXGqiT9ifm22jrbFFMaxQ5QhwYX7RfD6roZfqvCAM5ZArs3FO+Mz+YC0J6hZG5IyajN0MA7pJR/inwY8mKviMGBlhCVHsC+OWtXn03vwu08p1I7Sxl+049V66HVm9muyyS5Wv6rlhn8VRXfesjZUux X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(396003)(366004)(39860400002)(346002)(136003)(376002)(451199021)(54906003)(41300700001)(8676002)(86362001)(66946007)(66476007)(66556008)(6486002)(6916009)(8936002)(316002)(6666004)(4326008)(36756003)(66899021)(478600001)(6512007)(26005)(5660300002)(83380400001)(6506007)(1076003)(2906002)(186003)(82960400001)(38100700002)(2616005);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?YURaRzVkeDdMQ3g4SkRjbzhLR1I0SFdXWENwbnpJV3l4OWpwY0FTcDVmMXRn?= =?utf-8?B?Y0xNUTdoWVZhVTBITkVyTWdzc1hWMXhTaGZXVTFrWG1QekxCSEdsaFVFaURh?= =?utf-8?B?bXpXYXdSSFdRNWswdWU3RXZJOGpMN2tUNnBkcFdvbUlUamlaVWQvYnk3YWJF?= =?utf-8?B?VS9mWWg3dkVCcEtBUGhmekJ3ZnJGTGlhNjlUMmJmVTV6K2U5dGtTekRHV243?= =?utf-8?B?c2VKQUk4emFOTmVnZm5KREswOFFEbU1XZjd2cVE2WEpSR0x2U2hTemFlQjVv?= =?utf-8?B?c21iV216VURRZlJoMDFCYVlRU3k0YmFyUEdzSFhCYVlGM3RwenZxUUM4UWZJ?= =?utf-8?B?eWVEUkxFVTZRYm1nMnFEYWwxOHhSTFBVWlV6RmdRVDFGaXJVMTJ6cmJJUGsw?= =?utf-8?B?YlNMZGhnMHVEN0g0MW0rRTNtaVYreXIwZzlWa1lrdkpUc0FxRGlINlFYS2xF?= =?utf-8?B?Myt0RnduZkhjNlZiUm1yTU11bHNISlMwTTFCV3R1bXZ0bGEvZnIzYm03cWNC?= =?utf-8?B?UmdpcTFWcGdQdjZkQUV2ZHhtbWxCc0NzNWRYYkM4dWpGcXZkSUR1Z3hnRDVn?= =?utf-8?B?ZWRtc1prTFZLUnMyc3BidjdYU1I3UnJpRmJaK1RWZnB6emQ4UVlocHhZVXhn?= =?utf-8?B?VlJZd2tFUERscXhkR2ttS09BNVNza2dtUHprQ2t2UkNCa3VRcnUvcjRNV09M?= =?utf-8?B?VUNTamlPVXBRdFI0amdkZ3dkMW9PT2F3QSt4VGdndTFrdVhoeWJDMFo5R2lj?= =?utf-8?B?UHpQckdzN3FIaUZSRkxydm5DdHJIT01YcE90VFl4S25sUGd0b3Bid3Q1YVE0?= =?utf-8?B?b0JZc3UybGhGK0d2SW5ZdGFvTGZqSjJ0WDNKZitEQUZzRXhlWEJRc3ZGRHpM?= =?utf-8?B?T3orREtwbFNaN3F1aG83SnVXOFhsT3NybWhpR3htZ2cyZlZBRFFUeWtxRCt6?= =?utf-8?B?S0dRYTdrWUIwcW1EcURCNFdsKytWVC9PRzRPeURRN2QzTmtwNERuaThJT0dZ?= =?utf-8?B?ZEZ5M1JhR0dnOVlEdjhuclh0UEw1TlZiUUNsOUxOd2FRV05aTTVtMm1STUVp?= =?utf-8?B?Q3lpb3BZZG9lOUJTY1hiSUpvL2R1aW1xVHZEVzlRclU0c0JJNTJvOUJ3MzNF?= =?utf-8?B?U0JxY21qVlI2UmxsY3Fab09ZekFQUGNPOFZWMmxyMXFBZk9YL2RKSmdzZzU0?= =?utf-8?B?eEI0VUsyWVBvMWNWWG5MWkdtRjdRTm8vNFBHeGRKU1RLU1I4NXZiZFBTNFAr?= =?utf-8?B?bDZzbEZzZ0VBRlluRmF0SFBLbXZ0Mzh3R2ZsZnR4T29qK0pmY2VoQ29SUEdI?= =?utf-8?B?NTRDQTBDSkxMRXNsTmtUelJpNE53bE5UTVNPTzVMdCt2eUNOaS9RUWtjb0E4?= =?utf-8?B?T1VORStBRUkzRFJoNkVKVXRkQkJMME90aWNWdEFySzk0dWdxZUU4MHVncGtr?= =?utf-8?B?TWRMc3FQVUVDNFNFWm1HMUM4UGVicEZNRCt2UmJRK2JKMnk4RmNxRnZMdlBq?= =?utf-8?B?bmhPUjd5VmpyN0tML1E3dlRBTTkwODVVOEp0STFMekVLUXkxZm95T3Nka0xO?= =?utf-8?B?aHlZTzYxWG10cm5ZV1lqSms0VzdMbFg3MVdDWTZsY0syekdPSXgwbzAydTMx?= =?utf-8?B?aVpycnl6ZzBNZUxreE8wazkwVEV1S29kRW1ZbG1jclZQZGV6eTFSbkR2Ym1y?= =?utf-8?B?d3ByY2FvSGdYcmRYQlRneWlIbjN5OTZEOEYzVFJiMXRQcUxBUEwybVV1LzJy?= =?utf-8?B?bjFadXZWOVlLM3NZZDRXVWw2QTk0Q3NOYmp0Q0RzNFBaUC94dFpwbk9CYWJC?= =?utf-8?B?dTRnb0JKdGtEeW5xWG5JUUdKM0tUNFJaWnZVV3R6QndPN3BxOG92QnAzS2t2?= =?utf-8?B?MXhaMHFUbnBtaDQzVDhsR3l5d25ZaVRvUDF1NXFlZy9VZ0MybDg3VFM3UWE3?= =?utf-8?B?MFB0eWsybzFRaDlESGRTMjNyMThTUDI0RkhyeXQ0NktqcFl5RXJCV2JNMWVJ?= =?utf-8?B?anNiM0dQOWY0ZmVHVWJNYXBPdTRDYnFJZjBSdDQyLzRUWVVvT0l5QW5wQlZn?= =?utf-8?B?RWNTVDUrbC9WcWxlb0FvZ2R1NjNJRXA5cm9nRjIwMUVaTmtKd3dvZ3o4bmNx?= =?utf-8?B?YXpxT0RhOHFRTGFHbUM4LzlYdXdxTmQ5aXVkWEYzZDcrbkloazNzVmFrRTRL?= =?utf-8?B?VHc9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: vRyHWjTy1+FVfaec7cefF9egrkB7NczVdeUnSrRCMf9TSnL0GxUJB39tAGaJ4UOivmELb47arMCI0iehuZUg+tG/7eAdhZooiWNzfioSEWEy2eWSlbNn30Y/tyxdPBvDYNbq4feQhhLIoFkaluke1il762qWyFHkgnNqhEfes5hLqy3zO8tKgRFNMjvqwszEITMWIGrlIHm6t7IgkBnkL+GgUu1XnmUqMr8ygohVYf/4BZRn6SiH747zZeZu5Hjjcq1Y8UB3qQjsddVu4a52dWLIAmk5wC2eVJfZzviYkADhwHw0KMhZkqVQ/pALeT1egxzeP+A+mn0YLTohZJkbNZ2idCWhJrVy/BIGec2qLL9nPFxlpSH01gV2Nil1nR3oxLSHPPJw33dvuP2EqlRaVlKBkXj0xcEftsT1D5B/XgN455iIyzxVY7L5Vs2fWdRJr2zsQZUgmNY569/CAP5An6EyexBdjDisW+SnDgYaoahSWd/xK7yLx7a3cajcVw3fvTfZl2kQBOXtRowrqATh69j0swlPXjlZSO7z6+SIHSWqzokuj62z4GBgu7yWFcyUjZ0/Ez48RoPg56uP6PuRFYSpRvGd9Ce0VlppriexlsGfQvtnlDOiAMiWu+Lky4zMH/QPOFzgNoHyY1Slmz4dX7SP3Bruv9dcSxPB3YJ/gakNH31i9shvqmiTRDk9JYgfhHDGElP/utkvtCzNoCtOqyJ2j0+z0T6iENQoYwHOv+LXc/ALZxxs4I/m5+//SnmTM+ftD2S4hrRhxV28wanFJVOuJECSKYOwKhfF119KFyVYGjq7Y88cL0VME+NAZcjE X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 0302a3f6-12bf-4eab-cbff-08db6e6b41ae X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Jun 2023 13:11:54.7219 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: HJLNTEiyLDVB4xBzQBtC6toth8H17u52AQA9oMIIgZy8Nnj2fejzP8GLfrIa5RH4uuQfqBfRaMGT9fYlUJmXkA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR03MB5736 Add a new array field to libxl_cpuid_policy in order to store the MSR policies. Note that libxl_cpuid_policy_list_{copy,length,parse_json,gen_json} are not adjusted to deal with the new MSR array now part of libxl_cpuid_policy_list. Adding the MSR data in the libxl_cpuid_policy_list type is done so that existing users can seamlessly pass MSR features as part of the CPUID data, without requiring the introduction of a separate domain_build_info field, and a new set of handlers functions. Signed-off-by: Roger Pau Monné --- tools/include/libxl.h | 1 + tools/libs/light/libxl_cpuid.c | 31 +++++++++++++++++++------------ 2 files changed, 20 insertions(+), 12 deletions(-) diff --git a/tools/include/libxl.h b/tools/include/libxl.h index 41e19f2af7f5..4e7b08ab5027 100644 --- a/tools/include/libxl.h +++ b/tools/include/libxl.h @@ -1461,6 +1461,7 @@ void libxl_bitmap_dispose(libxl_bitmap *map); */ typedef struct libxl_cpu_policy { struct xc_xend_cpuid *cpuid; + struct xc_msr *msr; } libxl_cpuid_policy; typedef libxl_cpuid_policy libxl_cpuid_policy_list; void libxl_cpuid_dispose(libxl_cpuid_policy_list *cpuid_list); diff --git a/tools/libs/light/libxl_cpuid.c b/tools/libs/light/libxl_cpuid.c index ded0d0b8bc15..7261c1f1fd82 100644 --- a/tools/libs/light/libxl_cpuid.c +++ b/tools/libs/light/libxl_cpuid.c @@ -21,20 +21,26 @@ int libxl__cpuid_policy_is_empty(libxl_cpuid_policy_list *pl) void libxl_cpuid_dispose(libxl_cpuid_policy_list *policy) { - int i, j; struct xc_xend_cpuid *cpuid_list = policy->cpuid; - if (cpuid_list == NULL) - return; - for (i = 0; cpuid_list[i].input[0] != XEN_CPUID_INPUT_UNUSED; i++) { - for (j = 0; j < 4; j++) - if (cpuid_list[i].policy[j] != NULL) { - free(cpuid_list[i].policy[j]); - cpuid_list[i].policy[j] = NULL; - } + if (cpuid_list) { + unsigned int i, j; + + for (i = 0; cpuid_list[i].input[0] != XEN_CPUID_INPUT_UNUSED; i++) { + for (j = 0; j < 4; j++) + if (cpuid_list[i].policy[j] != NULL) { + free(cpuid_list[i].policy[j]); + cpuid_list[i].policy[j] = NULL; + } + } + free(policy->cpuid); + policy->cpuid = NULL; + } + + if (policy->msr) { + free(policy->msr); + policy->msr = NULL; } - free(policy->cpuid); - policy->cpuid = NULL; return; } @@ -503,7 +509,8 @@ int libxl__cpuid_legacy(libxl_ctx *ctx, uint32_t domid, bool restore, info->tsc_mode == LIBXL_TSC_MODE_ALWAYS_EMULATE); r = xc_cpuid_apply_policy(ctx->xch, domid, restore, NULL, 0, - pae, itsc, nested_virt, info->cpuid.cpuid, NULL); + pae, itsc, nested_virt, info->cpuid.cpuid, + info->cpuid.msr); if (r) LOGEVD(ERROR, -r, domid, "Failed to apply CPUID policy"); -- 2.40.0 From xen-devel-bounces@lists.xenproject.org Fri Jun 16 13:20:17 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 16 Jun 2023 13:20:17 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550227.859209 (Exim 4.92) (envelope-from ) id 1qA9N1-0000rm-PD; Fri, 16 Jun 2023 13:20:07 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550227.859209; Fri, 16 Jun 2023 13:20:07 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qA9N1-0000qc-Ix; Fri, 16 Jun 2023 13:20:07 +0000 Received: by outflank-mailman (input) for mailman id 550227; Fri, 16 Jun 2023 13:20:06 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qA9FQ-0002qy-37 for xen-devel@lists.xenproject.org; Fri, 16 Jun 2023 13:12:16 +0000 Received: from esa4.hc3370-68.iphmx.com (esa4.hc3370-68.iphmx.com [216.71.155.144]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 6726d063-0c47-11ee-8611-37d641c3527e; Fri, 16 Jun 2023 15:12:12 +0200 (CEST) Received: from mail-sn1nam02lp2043.outbound.protection.outlook.com (HELO NAM02-SN1-obe.outbound.protection.outlook.com) ([104.47.57.43]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 16 Jun 2023 09:12:09 -0400 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) by PH0PR03MB5736.namprd03.prod.outlook.com (2603:10b6:510:37::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.27; Fri, 16 Jun 2023 13:12:06 +0000 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::ab2a:a298:bacb:db47]) by SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::ab2a:a298:bacb:db47%2]) with mapi id 15.20.6477.037; Fri, 16 Jun 2023 13:12:06 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 6726d063-0c47-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686921132; h=from:to:cc:subject:date:message-id:in-reply-to: references:content-transfer-encoding:mime-version; bh=GZpr78/jfVQj+rN1NN3ev3EOcCzUwsdsDYWFHWDJN/s=; b=h+/MITMEn8Bo/ANbwyHFP+JkDrg8jcPijWNtYqQZ8YH3BENX/8gALHrx NnG4LXMP8kYeKDzXtGCbiYklgBzUBezKPjmGe7GOGsU9nagmUgpW3yzrx uhUXanBpTMWwZJ60RzcW1Gfv83Ovdkky0bl1ivaDCLYs6GmSGEs7OpMkY I=; X-IronPort-RemoteIP: 104.47.57.43 X-IronPort-MID: 115608599 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:JYSpGa8Rqhy+pGg0Q8DqDrUDpX+TJUtcMsCJ2f8bNWPcYEJGY0x3x 2FKC2qHMv6KMWWjKNokYN619U8H6JbSz9EwSAZl/C08E34SpcT7XtnIdU2Y0wF+jCHgZBk+s 5hBMImowOQcFCK0SsKFa+C5xZVE/fjUAOG6UKicYXoZqTZMEE8JkQhkl/MynrlmiN24BxLlk d7pqojUNUTNNwRcawr40Ird7ks31BjOkGlA5AdmO6kV5AW2e0Q9V/rzG4ngdxMUfaEMdgKKb 76r5K20+Grf4yAsBruN+losWhRXKlJ6FVHmZkt+A8BOsDAbzsAB+v9T2M4nQVVWk120c+VZk 72hg3ASpTABZcUgkMxFO/VR/roX0aduoNcrKlDn2SCfItGvn9IBDJyCAWlvVbD09NqbDkkJ1 t8RIQAVbimnrOS2xouwErZUn+E8eZyD0IM34hmMzBn/JNN+G9X4ZfyP4tVVmjAtmspJAPDSI dIDbiZiZwjBZBsJPUoLDJU5n6GjgXyXnz9w8QrJ4/ZopTWMilAquFTuGIO9ltiiX8Jak1zev mvb12/4HgsbJJqUzj/tHneE37aSw3urBdNDfFG+3sdaoESKyWsKMhA5U0rhr/Plq0C8VusKf iT4/QJr98De7neDXtT7GhG1vnOAlhodQMZLVf037hmXzajZ6BrfAXILJhZebPQ2uclwQiYlv neLkMnuHidHq6CORDSW8bL8kN+pES0cLGtHfildSwIAu4PnuNtr0kmJSct/GqmoiNGzASv33 z2BsCk5gfMUkNIP0KK4u1vAhlpAu6T0c+L83S2PNkrN0++zTNTNi1CAgbQD0ct9EQ== IronPort-HdrOrdr: A9a23:0KvKT6xQ0xvfQr8YNi5kKrPw4b1zdoMgy1knxilNoHxuGPBw8P re+cjztCWE6gr5N0tNpTntAsa9qBDnhP1ICOsqXItKNTOO0AaVxelZhrcKqAeBJ8SRzIBgPa cLSdkFNDXzZ2IK8PoT42ODYqodKMHsytHNuQ9HpU0dNT2DbctbnmBEIzfeKGJabi9cC6E0EZ KNj/A33AZJKRwsH6KG7mBuZZm7m+H2 X-Talos-CUID: 9a23:yyI3SWOI9Bxrwe5DHwpE/UckAsAcVlbbzHHpKBfnMX9MV+jA X-Talos-MUID: 9a23:O+uZHwvtfjYrbeCpos2nvQFCLd5n5L2UBW8LgM8IsZWlOy59AmLI X-IronPort-AV: E=Sophos;i="6.00,247,1681185600"; d="scan'208";a="115608599" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=DN067OZThGHKGGZBLIdgV4zXVcbDq6oMZNzLDpZK+GKVeP7x6wSuYewZmfkG1GeH87auB7VWXPbDAjqz3u8XnE70ZkRP9f3QXN5Dk1WNP2toA0LiEVrRLoRsSgIydvt7XKGnq5KUjzBeX4rKkDJJ0Z61nt3jySzVBIBj1vNA1kmOpjRR5S9kDZZ+kFXNr5M4Imjw0zUfeHl6ub1KYjuCP2X9Rjji5GQGVWdkNs9S/7DFXH9nPyxE53x0JPK2cBBgBm59reavc2CSC1w/gs0w8iNeh0Ijl+yo8rC+1g7WMeMXBxionwl43FEAThoceDWxgcO8V2YtzSbvHdxpeF94Jg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=TwvFq2qizFz52+7Nx4padiTvAhqPe0/kcagVO7qnwS4=; b=OvccUVtkToW56nBSp8QUs0Q7X6vtRZ8X0u8lVpzd6EqfAK9paHuSTG3afjSMcwOOO02IKs+NvJFHwS+Q59T7wmXNL0yhuWtCxztXQuP7CJ6cH964vnEag9jvUOTrs32o9k2qd4F7qV4HfiLS7/CKv3oM1g5wdrtuX4p+xJZQPsdvR0+49eUwPMZZ2nf5B4VIJ530RgfYwO2dYFRrtl2KegLCMGKIcqOHj034taXwt3HdzObsqF9TLzUq2WVWp/JiACWLiBNaHj4EKmkZYyiNvDNziYZDCkDn7i4iBvNGRbpX1Lp5vAigqCh0PHdb5ODMbrVZThp0liGeDKQ2B4zahw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=TwvFq2qizFz52+7Nx4padiTvAhqPe0/kcagVO7qnwS4=; b=fs2iKz429zldCcmq1nBrft4FIYdxCSi+1eqoHK4Fh+OECeq/qxUlH/SKX55BdQ/oaa6LmW/WGniWVEUmtvLobptqwsbASCevU/yxu1xbBADx8eyWwe1AbQwmyyLVX7iFQU3aa2I0s5w3r1V8hd2orecUm9UEu3wppvypHnKqLFc= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; From: Roger Pau Monne To: xen-devel@lists.xenproject.org Cc: Roger Pau Monne , Wei Liu , Anthony PERARD , Juergen Gross Subject: [PATCH 12/13] libxl: use the cpuid feature names from cpufeatureset.h Date: Fri, 16 Jun 2023 15:10:18 +0200 Message-Id: <20230616131019.11476-13-roger.pau@citrix.com> X-Mailer: git-send-email 2.40.0 In-Reply-To: <20230616131019.11476-1-roger.pau@citrix.com> References: <20230616131019.11476-1-roger.pau@citrix.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO4P123CA0122.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:192::19) To SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|PH0PR03MB5736:EE_ X-MS-Office365-Filtering-Correlation-Id: 2beee5bc-8fe8-4644-9983-08db6e6b4897 X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: ignTJg1N/ZrumkJwExQdYs5RgU3qvlhBusqBG/dPxOEYOCl9CvfxF+FHsjze1Hx3kQc+mDAM1nozN2dNTvZdQSJNATFFMuebyFJ8LoszGbRIQgVHjO+PisRdvuJ3PtjKp8+FZzAmto1xsVPgrx03NQLK4p3UIlES4aglC1PECDDupyeF/fxb1H7IX9Gc6kD80OF94IsP0ZXZhHyUw6HmBKAk0soLPVJGh4gjTnZmUF7omDZvK5cBSIzMvrydburmQsoGreeWII9Uz0qk0rdP3RMHHTju9uRrjgVaDKgfdQaqkuFnLpNge0R/mAFmU4Vm6IjmV+1cWT93Szh5i7DW80EfDWiGVish1gLpgeTJiS7a9XFOILYzss0uaTsQC//gyz4Dr46fCAEEi9149HFHNogl5/b7lBvb1LX92lxK+djzSfQkUC2JXt0N2eSjS+LQl002BYALJ1+PSIvDY856f92yqENFuCwJtZ/7pMVYnfLbMu7pDC6KjOV8aS1SCLcIFrUsnfrtrWWI0qVxjOxln/fduTHzM8NTqBMOHpqfH0XIB691h4+ymVn2FHL4L4tVYXxefglXtisSu7giE2GR1Ztawi7tf0lJplEbAd/sOMs= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(396003)(366004)(39860400002)(346002)(136003)(376002)(451199021)(54906003)(41300700001)(8676002)(86362001)(66946007)(66476007)(66556008)(6486002)(6916009)(8936002)(316002)(6666004)(4326008)(36756003)(478600001)(6512007)(30864003)(26005)(5660300002)(83380400001)(6506007)(1076003)(66574015)(2906002)(186003)(82960400001)(38100700002)(2616005)(473944003);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?ek92WTNqVURVTmtwVlZwMEJ1TU1uS1Z6QXJ2RUw1TWJFNHREWlg0cGZYL0JF?= =?utf-8?B?NW9GNFNwblROWmlQcThXM2F0MURIR3EvYUF2NWFqSytUTVRzZVdaRFN1Yi9P?= =?utf-8?B?SFkxZ0hpYmZ5R2wvb0lwQWF3UWEvRGt3NGliU0J1QVZIT1diMHdFZS9LL0ZV?= =?utf-8?B?Z2MzRGdPT2p1V1orOWhDbTFkVWhhOFhnNTdPa2VEZTZNWlVWMjY0S01TSlpD?= =?utf-8?B?STl5Z083VG1qK0xDaEJDSkFneWhpNlowRXIzU2MvcFdiUVVKeHJ5RHJXSXZB?= =?utf-8?B?RVVJT2lGWnVaME9hcklxUW02U21tcTFRZjJhdGx5MjBFSDROaURtZmo4NTAx?= =?utf-8?B?NXQvdmJlOXQvcjF2VUovdHFHVWhzcDZkQ2Q2ZkkyTDNmbnRINFdZY2M1NHNM?= =?utf-8?B?TFpVMUhnUFNCOWhCcFc0QnloN1Y0c2REaFFlOCtPd1pHS1JXYkVydG1qOEJm?= =?utf-8?B?YkRTeVVHVC9sVjYydVZQVnY0NnJkSzN6T0N5aEcrZE03bmJHQUYvOHhTZ2cw?= =?utf-8?B?SUJKUkNjbnNJNElGSURHRTB0djZFZStvMkhHbWx3cjN5Y1pFRGJ3WWwyeSti?= =?utf-8?B?czhrWkczaTViSGh2R3o3QjY2MXNZWVZKMkRHMXljUHNLT0I2MC9JRC9PRzJl?= =?utf-8?B?YWtJZE1VWG9PUXVSc2ZtRjB0eGc2dWRjUnFoWmxsU3BGazZkaU9PYWlVeUpw?= =?utf-8?B?S2hGY3BEY2hjeWhuZGNubDI1WTdFTkc2cThFa0o2V2pWQXJIeWszMTVhL3lQ?= =?utf-8?B?YW14djJYN3RuemhoMnZxd2F4Mzl3QXk3bkxTbE5KUzBuYThyQlhMcldpOWFp?= =?utf-8?B?YnVPZjVmRmMxRXY4TVptKzIzMUFRbC9aNmRNaGxFVDByR1lEUGx2cG9JZmJh?= =?utf-8?B?NTZDNGlRc0lXbWtHVFRNTGluOStuMGV5R2hIYkpWWHkwTU42VWt0cWY1bmI4?= =?utf-8?B?dGJzdlJzNnk4MmYweGVZQU5sNVptVFpWTzFteTR0dHB2MjBkR0k3aDBncWNM?= =?utf-8?B?YmVFYVJuVi9NUlFjWnN4Z2dZeDdMV1Q4dTFjRlJET0h6c0xISkxrK2gvckty?= =?utf-8?B?SlZuRVMwYU1GZXBDeitnVU1LL2hnUG1xaSt2dUhRTGxiV09nWTBEV3EyM01J?= =?utf-8?B?WkhmaWVLMXpRRTUwazV5VG4vL1ZBL0Q1eU1mWThzeENGbnZKbW1lQU4vTjRE?= =?utf-8?B?SWN0UUI1SWQrN0E2dVJ2aVAzV1NhRlJUMXZaSGI4RHFQVEl2UmNpbmFIcUVo?= =?utf-8?B?biszOEszYVBZd01SWCt3ck5yeUYwblRQV2F0ZVFFd2tpSjBvTTRqQ3F6Z2xj?= =?utf-8?B?aXBnWE1HQWlSODVaOEErTlkva1gySUQ4VFh5aEcyQ2c0UENVWmdSSjhhNVlY?= =?utf-8?B?NG8wb1ZBaTFId01KSjFuN1puRmg4MEp4L3RFYVJtWUVuR3pYU1ZzWldNbGkv?= =?utf-8?B?UG5iSVllQ3hQL25CT010S0NyQXEyWlU4enI3bmZTS2x0dzJoTjVIbUNMdWZX?= =?utf-8?B?NUZocUY4UkFCNFhpUzh0TWMxTEtEOGtjV0xsRzA5K25taHRKbWpGbXM2S2hU?= =?utf-8?B?M0xJeVFGa2NrQ1g4SzJUMm5aamVUVGRhWTFLZGNLN2NXWnVjTHZKcEZBUGdr?= =?utf-8?B?cEZJcjNNVm90aEQ5RXZOanJCQkhlMDVGNVJVMmM5Uzl5MVBuUkZsM0Fqd1I1?= =?utf-8?B?b2Q0cFJsVnZjWTB3Z2lqMGFaTmg1TlBaREp5cEVhcUQ3bzgxd1FyY01ERlhU?= =?utf-8?B?VE45THlienZudmVGTk5qN094NnExR1RLZlA0eStqcDNVbmFpcHRaZTZtMDJV?= =?utf-8?B?Z2dIQTJuSG1BMTEzK1pFb1R3b2N1QXlnVlVmVUJrWmFCSWVTbDRvRUQxb2tI?= =?utf-8?B?ejhpMjZINnZXTFhnUWxwc3VjdEdmWXhZeU1pQnNuOG9UZ0RpMURhb3VWbCtE?= =?utf-8?B?MERWNElJcEF2VkpmRURUd0NOMzJ4eEE2Q0VUd2lwalRvRWVhcm4rNXg0NjBq?= =?utf-8?B?aVZsMWQyOTd0YXB0SS9wNk54ZkZrUnEvM2VjZ1RUcXJpMWFjZDl4TVN4NTNs?= =?utf-8?B?dG0wU1pJc004b01BYy81N1I0QTVGeUZwdStxUm1UN0hiYUhLQk40TXNlV3o1?= =?utf-8?B?K3BQOVM3UVI0cTFvTjNrTDdxYUt2bXloQWMzSmxUTDh3bjBiSys5ejc4YXVL?= =?utf-8?B?UFE9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: oq+K7avRGJyFR6axEsxr/UgU+0lJutCEyVuy+iZml9vtIhzk/9w5LZF9syKQIF/WqvIz9tC0GgdyRPqlPOVQwodPKN5rRWgFhdZqUwxz1uttV578pbUXcT/zf6Y0k6MVKcdo3ATEhkVg0NUTJUlSVPUhY4q9IMgl5kdiFnKCTkCOT7B4tL4EN+ACyL8TbapwG3RDZ0ZfmjIda1obNS8N12DAuZ9jhukJOQ8CziZ4DIG94kAyBAJWc3SqN72zy+pE1fVXGT0QurGcOWS+xrNqLi238EAdeOyEwfBNMyL0UzEWdPNLczKX2fYTpox2QN3+QGKQ6d25qMhnG+70a4ztirK7D2lnPybQ9RQPkCZvGC7RjZpk8QZOyC+pOvldpqcUjJsbp/uXe5I4/WtMCrGh5/on0DQiWufXF7W2Vg9d2Bwv7HQWQvSgJadxLMZUAZM65mgGKQz9Bx4+q5p0daFqVdsFViv8ULO+Qv3xOWBidAEYNjH0oUTegRawbLxGaVqP6x2re/0JhEtZ1zKYau4y3zFE+1cHfIOyjKGocVhTMAkhOCnynqbOCF3ULhPKHyxxIowJWxDChHRXxMxaop4ote1fk8XtpdK5BYYe8pUgB4RASs5NbZoQpbEkh7cM4qZ/NLc33zTbimhUXBJY5LZrRGNpIiNBXVbPbutUEaQdXhPKzgBHicFqW287AkvXFaIjGZjLjmxJf0aEcZ/xQKvxNC3oWC/YhKTeJ7Wfj0I6Ly43gsUbSmD35qFvCIW0VLKmgWGfZ/qojpbMXlsRaMTUmDw2xRoPtRzjN8q0B3Kbdv5GqHM2dMI2ryzM4wwfoxG8 X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 2beee5bc-8fe8-4644-9983-08db6e6b4897 X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Jun 2023 13:12:06.4209 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: VMPvi6aEsTEocPlbtHgUmTJCjAEHS0QTR6fBsbEtSQGQisyOd8Px6svwkB65uOHnLHKUUY7GXGFJMVSLaCdYyA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR03MB5736 The current implementation in libxl_cpuid_parse_config() requires keeping a list of cpuid feature bits that should be mostly in sync with the contents of cpufeatureset.h. Avoid such duplication by using the automatically generated list of cpuid features in INIT_FEATURE_NAMES in order to map feature names to featureset bits, and then translate from featureset bits into cpuid leaf, subleaf, register tuple. Note that the full contents of the previous cpuid translation table can't be removed. That's because some feature names allowed by libxl are not described in the featuresets, or because naming has diverged and the previous nomenclature is preserved for compatibility reasons. Should result in no functional change observed by callers, albeit some new cpuid features will be available as a result of the change. While there constify cpuid_flags name field. Signed-off-by: Roger Pau Monné --- Changes since v1: - const unnamed structure cast. - Declare struct feature_name outside the function. - Use strcmp. - Fix indentation. - Add back missing feature name options. - Return ERROR_NOMEM if allocation fails. - Improve xl.cfg documentation about how to reference the features described in the public header. --- docs/man/xl.cfg.5.pod.in | 24 +-- tools/libs/light/libxl_cpuid.c | 267 ++++++++++++--------------------- tools/xl/xl_parse.c | 3 + 3 files changed, 107 insertions(+), 187 deletions(-) diff --git a/docs/man/xl.cfg.5.pod.in b/docs/man/xl.cfg.5.pod.in index 3979be2a590a..55161856f4c7 100644 --- a/docs/man/xl.cfg.5.pod.in +++ b/docs/man/xl.cfg.5.pod.in @@ -2010,24 +2010,16 @@ proccount procpkg stepping =back -List of keys taking a character: +List of keys taking a character can be found in the public header file +L -=over 4 - -3dnow 3dnowext 3dnowprefetch abm acpi adx aes altmovcr8 apic arat avx avx2 -avx512-4fmaps avx512-4vnniw avx512bw avx512cd avx512dq avx512er avx512f -avx512ifma avx512pf avx512vbmi avx512vl bmi1 bmi2 clflushopt clfsh clwb cmov -cmplegacy cmpxchg16 cmpxchg8 cmt cntxid dca de ds dscpl dtes64 erms est extapic -f16c ffxsr fma fma4 fpu fsgsbase fxsr hle htt hypervisor ia64 ibs invpcid -invtsc lahfsahf lm lwp mca mce misalignsse mmx mmxext monitor movbe mpx msr -mtrr nodeid nx ospke osvw osxsave pae page1gb pat pbe pcid pclmulqdq pdcm -perfctr_core perfctr_nb pge pku popcnt pse pse36 psn rdrand rdseed rdtscp rtm -sha skinit smap smep smx ss sse sse2 sse3 sse4.1 sse4.2 sse4_1 sse4_2 sse4a -ssse3 svm svm_decode svm_lbrv svm_npt svm_nrips svm_pausefilt svm_tscrate -svm_vmcbclean syscall sysenter tbm tm tm2 topoext tsc tsc-deadline tsc_adjust -umip vme vmx wdt x2apic xop xsave xtpr +The feature names described in C should be specified in all +lowercase letters, and with underscores converted to hyphens. For example in +order to reference feature C the string C should be used. -=back +Note that C is described as an option that takes a value, and that +takes precedence over the C flag in C. The feature +flag must be referenced as C. =back diff --git a/tools/libs/light/libxl_cpuid.c b/tools/libs/light/libxl_cpuid.c index d0ac5b2bc102..cbbd5d31d63b 100644 --- a/tools/libs/light/libxl_cpuid.c +++ b/tools/libs/light/libxl_cpuid.c @@ -14,6 +14,8 @@ #include "libxl_internal.h" +#include + int libxl__cpuid_policy_is_empty(libxl_cpuid_policy_list *pl) { return !libxl_cpuid_policy_list_length(pl); @@ -57,7 +59,7 @@ void libxl_cpuid_dispose(libxl_cpuid_policy_list *policy) * Used for the static structure describing all features. */ struct cpuid_flags { - char* name; + const char *name; uint32_t leaf; uint32_t subleaf; int reg; @@ -145,7 +147,19 @@ static int cpuid_add(libxl_cpuid_policy *policy, const struct cpuid_flags *flag, entry->policy[flag->reg - 1] = resstr; return 0; +} + +struct feature_name { + const char *name; + unsigned int bit; +}; + +static int search_feature(const void *a, const void *b) +{ + const char *key = a; + const char *feat = ((const struct feature_name *)b)->name; + return strcmp(key, feat); } /* parse a single key=value pair and translate it into the libxc @@ -168,208 +182,42 @@ int libxl_cpuid_parse_config(libxl_cpuid_policy_list *policy, const char* str) {"proccount", 0x00000001, NA, CPUID_REG_EBX, 16, 8}, {"localapicid", 0x00000001, NA, CPUID_REG_EBX, 24, 8}, - {"sse3", 0x00000001, NA, CPUID_REG_ECX, 0, 1}, - {"pclmulqdq", 0x00000001, NA, CPUID_REG_ECX, 1, 1}, - {"dtes64", 0x00000001, NA, CPUID_REG_ECX, 2, 1}, - {"monitor", 0x00000001, NA, CPUID_REG_ECX, 3, 1}, - {"dscpl", 0x00000001, NA, CPUID_REG_ECX, 4, 1}, - {"vmx", 0x00000001, NA, CPUID_REG_ECX, 5, 1}, - {"smx", 0x00000001, NA, CPUID_REG_ECX, 6, 1}, {"est", 0x00000001, NA, CPUID_REG_ECX, 7, 1}, - {"tm2", 0x00000001, NA, CPUID_REG_ECX, 8, 1}, - {"ssse3", 0x00000001, NA, CPUID_REG_ECX, 9, 1}, {"cntxid", 0x00000001, NA, CPUID_REG_ECX, 10, 1}, - {"fma", 0x00000001, NA, CPUID_REG_ECX, 12, 1}, {"cmpxchg16", 0x00000001, NA, CPUID_REG_ECX, 13, 1}, - {"xtpr", 0x00000001, NA, CPUID_REG_ECX, 14, 1}, - {"pdcm", 0x00000001, NA, CPUID_REG_ECX, 15, 1}, - {"pcid", 0x00000001, NA, CPUID_REG_ECX, 17, 1}, - {"dca", 0x00000001, NA, CPUID_REG_ECX, 18, 1}, /* Linux uses sse4_{1,2}. Keep sse4.{1,2} for compatibility */ {"sse4_1", 0x00000001, NA, CPUID_REG_ECX, 19, 1}, {"sse4.1", 0x00000001, NA, CPUID_REG_ECX, 19, 1}, {"sse4_2", 0x00000001, NA, CPUID_REG_ECX, 20, 1}, {"sse4.2", 0x00000001, NA, CPUID_REG_ECX, 20, 1}, - {"x2apic", 0x00000001, NA, CPUID_REG_ECX, 21, 1}, - {"movbe", 0x00000001, NA, CPUID_REG_ECX, 22, 1}, - {"popcnt", 0x00000001, NA, CPUID_REG_ECX, 23, 1}, - {"tsc-deadline", 0x00000001, NA, CPUID_REG_ECX, 24, 1}, {"aes", 0x00000001, NA, CPUID_REG_ECX, 25, 1}, - {"xsave", 0x00000001, NA, CPUID_REG_ECX, 26, 1}, - {"osxsave", 0x00000001, NA, CPUID_REG_ECX, 27, 1}, - {"avx", 0x00000001, NA, CPUID_REG_ECX, 28, 1}, - {"f16c", 0x00000001, NA, CPUID_REG_ECX, 29, 1}, - {"rdrand", 0x00000001, NA, CPUID_REG_ECX, 30, 1}, - {"hypervisor", 0x00000001, NA, CPUID_REG_ECX, 31, 1}, - - {"fpu", 0x00000001, NA, CPUID_REG_EDX, 0, 1}, - {"vme", 0x00000001, NA, CPUID_REG_EDX, 1, 1}, - {"de", 0x00000001, NA, CPUID_REG_EDX, 2, 1}, - {"pse", 0x00000001, NA, CPUID_REG_EDX, 3, 1}, - {"tsc", 0x00000001, NA, CPUID_REG_EDX, 4, 1}, - {"msr", 0x00000001, NA, CPUID_REG_EDX, 5, 1}, - {"pae", 0x00000001, NA, CPUID_REG_EDX, 6, 1}, - {"mce", 0x00000001, NA, CPUID_REG_EDX, 7, 1}, + {"cmpxchg8", 0x00000001, NA, CPUID_REG_EDX, 8, 1}, - {"apic", 0x00000001, NA, CPUID_REG_EDX, 9, 1}, {"sysenter", 0x00000001, NA, CPUID_REG_EDX, 11, 1}, - {"mtrr", 0x00000001, NA, CPUID_REG_EDX, 12, 1}, - {"pge", 0x00000001, NA, CPUID_REG_EDX, 13, 1}, - {"mca", 0x00000001, NA, CPUID_REG_EDX, 14, 1}, - {"cmov", 0x00000001, NA, CPUID_REG_EDX, 15, 1}, - {"pat", 0x00000001, NA, CPUID_REG_EDX, 16, 1}, - {"pse36", 0x00000001, NA, CPUID_REG_EDX, 17, 1}, {"psn", 0x00000001, NA, CPUID_REG_EDX, 18, 1}, {"clfsh", 0x00000001, NA, CPUID_REG_EDX, 19, 1}, - {"ds", 0x00000001, NA, CPUID_REG_EDX, 21, 1}, - {"acpi", 0x00000001, NA, CPUID_REG_EDX, 22, 1}, - {"mmx", 0x00000001, NA, CPUID_REG_EDX, 23, 1}, - {"fxsr", 0x00000001, NA, CPUID_REG_EDX, 24, 1}, - {"sse", 0x00000001, NA, CPUID_REG_EDX, 25, 1}, - {"sse2", 0x00000001, NA, CPUID_REG_EDX, 26, 1}, - {"ss", 0x00000001, NA, CPUID_REG_EDX, 27, 1}, - {"htt", 0x00000001, NA, CPUID_REG_EDX, 28, 1}, {"tm", 0x00000001, NA, CPUID_REG_EDX, 29, 1}, {"ia64", 0x00000001, NA, CPUID_REG_EDX, 30, 1}, {"pbe", 0x00000001, NA, CPUID_REG_EDX, 31, 1}, {"arat", 0x00000006, NA, CPUID_REG_EAX, 2, 1}, - {"fsgsbase", 0x00000007, 0, CPUID_REG_EBX, 0, 1}, {"tsc_adjust", 0x00000007, 0, CPUID_REG_EBX, 1, 1}, - {"bmi1", 0x00000007, 0, CPUID_REG_EBX, 3, 1}, - {"hle", 0x00000007, 0, CPUID_REG_EBX, 4, 1}, - {"avx2", 0x00000007, 0, CPUID_REG_EBX, 5, 1}, - {"smep", 0x00000007, 0, CPUID_REG_EBX, 7, 1}, - {"bmi2", 0x00000007, 0, CPUID_REG_EBX, 8, 1}, - {"erms", 0x00000007, 0, CPUID_REG_EBX, 9, 1}, - {"invpcid", 0x00000007, 0, CPUID_REG_EBX, 10, 1}, - {"rtm", 0x00000007, 0, CPUID_REG_EBX, 11, 1}, {"cmt", 0x00000007, 0, CPUID_REG_EBX, 12, 1}, - {"mpx", 0x00000007, 0, CPUID_REG_EBX, 14, 1}, - {"avx512f", 0x00000007, 0, CPUID_REG_EBX, 16, 1}, - {"avx512dq", 0x00000007, 0, CPUID_REG_EBX, 17, 1}, - {"rdseed", 0x00000007, 0, CPUID_REG_EBX, 18, 1}, - {"adx", 0x00000007, 0, CPUID_REG_EBX, 19, 1}, - {"smap", 0x00000007, 0, CPUID_REG_EBX, 20, 1}, - {"avx512-ifma", 0x00000007, 0, CPUID_REG_EBX, 21, 1}, - {"clflushopt", 0x00000007, 0, CPUID_REG_EBX, 23, 1}, - {"clwb", 0x00000007, 0, CPUID_REG_EBX, 24, 1}, - {"proc-trace", 0x00000007, 0, CPUID_REG_EBX, 25, 1}, - {"avx512pf", 0x00000007, 0, CPUID_REG_EBX, 26, 1}, - {"avx512er", 0x00000007, 0, CPUID_REG_EBX, 27, 1}, - {"avx512cd", 0x00000007, 0, CPUID_REG_EBX, 28, 1}, - {"sha", 0x00000007, 0, CPUID_REG_EBX, 29, 1}, - {"avx512bw", 0x00000007, 0, CPUID_REG_EBX, 30, 1}, - {"avx512vl", 0x00000007, 0, CPUID_REG_EBX, 31, 1}, - - {"prefetchwt1", 0x00000007, 0, CPUID_REG_ECX, 0, 1}, - {"avx512-vbmi", 0x00000007, 0, CPUID_REG_ECX, 1, 1}, - {"umip", 0x00000007, 0, CPUID_REG_ECX, 2, 1}, - {"pku", 0x00000007, 0, CPUID_REG_ECX, 3, 1}, - {"ospke", 0x00000007, 0, CPUID_REG_ECX, 4, 1}, - {"avx512-vbmi2", 0x00000007, 0, CPUID_REG_ECX, 6, 1}, - {"cet-ss", 0x00000007, 0, CPUID_REG_ECX, 7, 1}, - {"gfni", 0x00000007, 0, CPUID_REG_ECX, 8, 1}, - {"vaes", 0x00000007, 0, CPUID_REG_ECX, 9, 1}, - {"vpclmulqdq", 0x00000007, 0, CPUID_REG_ECX, 10, 1}, - {"avx512-vnni", 0x00000007, 0, CPUID_REG_ECX, 11, 1}, - {"avx512-bitalg",0x00000007, 0, CPUID_REG_ECX, 12, 1}, - {"avx512-vpopcntdq",0x00000007,0,CPUID_REG_ECX, 14, 1}, - {"rdpid", 0x00000007, 0, CPUID_REG_ECX, 22, 1}, - {"cldemote", 0x00000007, 0, CPUID_REG_ECX, 25, 1}, - {"pks", 0x00000007, 0, CPUID_REG_ECX, 31, 1}, - - {"avx512-4vnniw",0x00000007, 0, CPUID_REG_EDX, 2, 1}, - {"avx512-4fmaps",0x00000007, 0, CPUID_REG_EDX, 3, 1}, - {"fsrm", 0x00000007, 0, CPUID_REG_EDX, 4, 1}, - {"avx512-vp2intersect",0x00000007,0,CPUID_REG_EDX,8, 1}, - {"srbds-ctrl", 0x00000007, 0, CPUID_REG_EDX, 9, 1}, - {"md-clear", 0x00000007, 0, CPUID_REG_EDX, 10, 1}, - {"serialize", 0x00000007, 0, CPUID_REG_EDX, 14, 1}, - {"tsxldtrk", 0x00000007, 0, CPUID_REG_EDX, 16, 1}, - {"cet-ibt", 0x00000007, 0, CPUID_REG_EDX, 20, 1}, - {"avx512-fp16", 0x00000007, 0, CPUID_REG_EDX, 23, 1}, - {"ibrsb", 0x00000007, 0, CPUID_REG_EDX, 26, 1}, - {"stibp", 0x00000007, 0, CPUID_REG_EDX, 27, 1}, - {"l1d-flush", 0x00000007, 0, CPUID_REG_EDX, 28, 1}, - {"arch-caps", 0x00000007, 0, CPUID_REG_EDX, 29, 1}, - {"core-caps", 0x00000007, 0, CPUID_REG_EDX, 30, 1}, - {"ssbd", 0x00000007, 0, CPUID_REG_EDX, 31, 1}, - - {"avx-vnni", 0x00000007, 1, CPUID_REG_EAX, 4, 1}, - {"avx512-bf16", 0x00000007, 1, CPUID_REG_EAX, 5, 1}, - {"fzrm", 0x00000007, 1, CPUID_REG_EAX, 10, 1}, - {"fsrs", 0x00000007, 1, CPUID_REG_EAX, 11, 1}, - {"fsrcs", 0x00000007, 1, CPUID_REG_EAX, 12, 1}, - {"wrmsrns", 0x00000007, 1, CPUID_REG_EAX, 19, 1}, - {"avx-ifma", 0x00000007, 1, CPUID_REG_EAX, 23, 1}, - - {"avx-vnni-int8",0x00000007, 1, CPUID_REG_EDX, 4, 1}, - {"avx-ne-convert",0x00000007, 1, CPUID_REG_EDX, 5, 1}, - {"cet-sss", 0x00000007, 1, CPUID_REG_EDX, 18, 1}, - - {"intel-psfd", 0x00000007, 2, CPUID_REG_EDX, 0, 1}, - {"ipred-ctrl", 0x00000007, 2, CPUID_REG_EDX, 1, 1}, - {"rrsba-ctrl", 0x00000007, 2, CPUID_REG_EDX, 2, 1}, - {"ddp-ctrl", 0x00000007, 2, CPUID_REG_EDX, 3, 1}, - {"bhi-ctrl", 0x00000007, 2, CPUID_REG_EDX, 4, 1}, - {"mcdt-no", 0x00000007, 2, CPUID_REG_EDX, 5, 1}, {"lahfsahf", 0x80000001, NA, CPUID_REG_ECX, 0, 1}, {"cmplegacy", 0x80000001, NA, CPUID_REG_ECX, 1, 1}, - {"svm", 0x80000001, NA, CPUID_REG_ECX, 2, 1}, - {"extapic", 0x80000001, NA, CPUID_REG_ECX, 3, 1}, {"altmovcr8", 0x80000001, NA, CPUID_REG_ECX, 4, 1}, - {"abm", 0x80000001, NA, CPUID_REG_ECX, 5, 1}, - {"sse4a", 0x80000001, NA, CPUID_REG_ECX, 6, 1}, - {"misalignsse", 0x80000001, NA, CPUID_REG_ECX, 7, 1}, - {"3dnowprefetch",0x80000001, NA, CPUID_REG_ECX, 8, 1}, - {"osvw", 0x80000001, NA, CPUID_REG_ECX, 9, 1}, - {"ibs", 0x80000001, NA, CPUID_REG_ECX, 10, 1}, - {"xop", 0x80000001, NA, CPUID_REG_ECX, 11, 1}, - {"skinit", 0x80000001, NA, CPUID_REG_ECX, 12, 1}, - {"wdt", 0x80000001, NA, CPUID_REG_ECX, 13, 1}, - {"lwp", 0x80000001, NA, CPUID_REG_ECX, 15, 1}, - {"fma4", 0x80000001, NA, CPUID_REG_ECX, 16, 1}, {"nodeid", 0x80000001, NA, CPUID_REG_ECX, 19, 1}, - {"tbm", 0x80000001, NA, CPUID_REG_ECX, 21, 1}, - {"topoext", 0x80000001, NA, CPUID_REG_ECX, 22, 1}, {"perfctr_core", 0x80000001, NA, CPUID_REG_ECX, 23, 1}, {"perfctr_nb", 0x80000001, NA, CPUID_REG_ECX, 24, 1}, - {"syscall", 0x80000001, NA, CPUID_REG_EDX, 11, 1}, - {"nx", 0x80000001, NA, CPUID_REG_EDX, 20, 1}, - {"mmxext", 0x80000001, NA, CPUID_REG_EDX, 22, 1}, - {"ffxsr", 0x80000001, NA, CPUID_REG_EDX, 25, 1}, - {"page1gb", 0x80000001, NA, CPUID_REG_EDX, 26, 1}, - {"rdtscp", 0x80000001, NA, CPUID_REG_EDX, 27, 1}, - {"lm", 0x80000001, NA, CPUID_REG_EDX, 29, 1}, - {"3dnowext", 0x80000001, NA, CPUID_REG_EDX, 30, 1}, - {"3dnow", 0x80000001, NA, CPUID_REG_EDX, 31, 1}, - {"procpkg", 0x00000004, 0, CPUID_REG_EAX, 26, 6}, {"invtsc", 0x80000007, NA, CPUID_REG_EDX, 8, 1}, - {"clzero", 0x80000008, NA, CPUID_REG_EBX, 0, 1}, - {"rstr-fp-err-ptrs", 0x80000008, NA, CPUID_REG_EBX, 2, 1}, - {"wbnoinvd", 0x80000008, NA, CPUID_REG_EBX, 9, 1}, - {"ibpb", 0x80000008, NA, CPUID_REG_EBX, 12, 1}, - {"ibrs", 0x80000008, NA, CPUID_REG_EBX, 14, 1}, - {"amd-stibp", 0x80000008, NA, CPUID_REG_EBX, 15, 1}, - {"ibrs-always", 0x80000008, NA, CPUID_REG_EBX, 16, 1}, - {"stibp-always", 0x80000008, NA, CPUID_REG_EBX, 17, 1}, - {"ibrs-fast", 0x80000008, NA, CPUID_REG_EBX, 18, 1}, - {"ibrs-same-mode", 0x80000008, NA, CPUID_REG_EBX, 19, 1}, - {"no-lmsl", 0x80000008, NA, CPUID_REG_EBX, 20, 1}, {"ppin", 0x80000008, NA, CPUID_REG_EBX, 23, 1}, - {"amd-ssbd", 0x80000008, NA, CPUID_REG_EBX, 24, 1}, - {"virt-ssbd", 0x80000008, NA, CPUID_REG_EBX, 25, 1}, - {"ssb-no", 0x80000008, NA, CPUID_REG_EBX, 26, 1}, - {"psfd", 0x80000008, NA, CPUID_REG_EBX, 28, 1}, {"btc-no", 0x80000008, NA, CPUID_REG_EBX, 29, 1}, - {"ibpb-ret", 0x80000008, NA, CPUID_REG_EBX, 30, 1}, {"nc", 0x80000008, NA, CPUID_REG_ECX, 0, 8}, {"apicidsize", 0x80000008, NA, CPUID_REG_ECX, 12, 4}, @@ -383,17 +231,63 @@ int libxl_cpuid_parse_config(libxl_cpuid_policy_list *policy, const char* str) {"svm_pausefilt",0x8000000a, NA, CPUID_REG_EDX, 10, 1}, {"lfence+", 0x80000021, NA, CPUID_REG_EAX, 2, 1}, - {"nscb", 0x80000021, NA, CPUID_REG_EAX, 6, 1}, - {"auto-ibrs", 0x80000021, NA, CPUID_REG_EAX, 8, 1}, - {"cpuid-user-dis", 0x80000021, NA, CPUID_REG_EAX, 17, 1}, {"maxhvleaf", 0x40000000, NA, CPUID_REG_EAX, 0, 8}, {NULL, 0, NA, CPUID_REG_INV, 0, 0} }; + static const struct feature_name features[] = INIT_FEATURE_NAMES; + /* + * NB: if we switch to using a cpu_policy derived object instead of a + * libxl_cpuid_policy_list we could get rid of the featureset -> cpuid leaf + * conversion table and use a featureset directly as we have conversions + * to/from featureset and cpu_policy. + */ + static const struct { + enum { FEAT_CPUID, FEAT_MSR } type; + union { + struct { + uint32_t leaf, subleaf; + unsigned int reg; + } cpuid; + struct { + uint32_t index; + unsigned int reg; + } msr; + }; + } feature_to_policy[] = { +#define CPUID_ENTRY(l, s, r) \ + { .type = FEAT_CPUID, .cpuid.leaf = l, .cpuid.subleaf = s, .cpuid.reg = r } +#define MSR_ENTRY(i, r) \ + { .type = FEAT_MSR, .msr.index = i, .msr.reg = r } + CPUID_ENTRY(0x00000001, NA, CPUID_REG_EDX), + CPUID_ENTRY(0x00000001, NA, CPUID_REG_ECX), + CPUID_ENTRY(0x80000001, NA, CPUID_REG_EDX), + CPUID_ENTRY(0x80000001, NA, CPUID_REG_ECX), + CPUID_ENTRY(0x0000000D, 1, CPUID_REG_EAX), + CPUID_ENTRY(0x00000007, 0, CPUID_REG_EBX), + CPUID_ENTRY(0x00000007, 0, CPUID_REG_ECX), + CPUID_ENTRY(0x80000007, NA, CPUID_REG_EDX), + CPUID_ENTRY(0x80000008, NA, CPUID_REG_EBX), + CPUID_ENTRY(0x00000007, 0, CPUID_REG_EDX), + CPUID_ENTRY(0x00000007, 1, CPUID_REG_EAX), + CPUID_ENTRY(0x80000021, NA, CPUID_REG_EAX), + CPUID_ENTRY(0x00000007, 1, CPUID_REG_EBX), + CPUID_ENTRY(0x00000007, 2, CPUID_REG_EDX), + CPUID_ENTRY(0x00000007, 1, CPUID_REG_ECX), + CPUID_ENTRY(0x00000007, 1, CPUID_REG_EDX), + MSR_ENTRY(0x10a, CPUID_REG_EAX), + MSR_ENTRY(0x10a, CPUID_REG_EDX), +#undef MSR_ENTRY +#undef CPUID_ENTRY + }; #undef NA const char *sep, *val; + char *name; const struct cpuid_flags *flag; + const struct feature_name *feat; + + BUILD_BUG_ON(ARRAY_SIZE(feature_to_policy) != FEATURESET_NR_ENTRIES); sep = strchr(str, '='); if (sep == NULL) { @@ -406,6 +300,37 @@ int libxl_cpuid_parse_config(libxl_cpuid_policy_list *policy, const char* str) return cpuid_add(policy, flag, val); } + /* Provide a NUL terminated feature name to the search helper. */ + name = strndup(str, sep - str); + if (name == NULL) + return ERROR_NOMEM; + + feat = bsearch(name, features, ARRAY_SIZE(features), sizeof(features[0]), + search_feature); + free(name); + + if (feat == NULL) + return 2; + + switch (feature_to_policy[feat->bit / 32].type) { + case FEAT_CPUID: + { + struct cpuid_flags f; + + f.name = feat->name; + f.leaf = feature_to_policy[feat->bit / 32].cpuid.leaf; + f.subleaf = feature_to_policy[feat->bit / 32].cpuid.subleaf; + f.reg = feature_to_policy[feat->bit / 32].cpuid.reg; + f.bit = feat->bit % 32; + f.length = 1; + + return cpuid_add(policy, &f, val); + } + + case FEAT_MSR: + return 2; + } + return 2; } diff --git a/tools/xl/xl_parse.c b/tools/xl/xl_parse.c index f036e56fc239..7bf587455d08 100644 --- a/tools/xl/xl_parse.c +++ b/tools/xl/xl_parse.c @@ -2620,6 +2620,9 @@ skip_usbdev: case 3: errstr = "illegal CPUID value (must be: [0|1|x|k|s])"; break; + case ERROR_NOMEM: + errstr = "out of memory"; + break; default: errstr = "unknown error"; break; -- 2.40.0 From xen-devel-bounces@lists.xenproject.org Fri Jun 16 13:20:20 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 16 Jun 2023 13:20:20 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550230.859224 (Exim 4.92) (envelope-from ) id 1qA9N4-0001UL-CA; Fri, 16 Jun 2023 13:20:10 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550230.859224; Fri, 16 Jun 2023 13:20:10 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qA9N4-0001Tm-7x; Fri, 16 Jun 2023 13:20:10 +0000 Received: by outflank-mailman (input) for mailman id 550230; Fri, 16 Jun 2023 13:20:09 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qA9FT-0001xG-BD for xen-devel@lists.xenproject.org; Fri, 16 Jun 2023 13:12:19 +0000 Received: from esa3.hc3370-68.iphmx.com (esa3.hc3370-68.iphmx.com [216.71.145.155]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 69968e84-0c47-11ee-b232-6b7b168915f2; Fri, 16 Jun 2023 15:12:16 +0200 (CEST) Received: from mail-sn1nam02lp2045.outbound.protection.outlook.com (HELO NAM02-SN1-obe.outbound.protection.outlook.com) ([104.47.57.45]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 16 Jun 2023 09:12:14 -0400 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) by PH0PR03MB5736.namprd03.prod.outlook.com (2603:10b6:510:37::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.27; Fri, 16 Jun 2023 13:12:12 +0000 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::ab2a:a298:bacb:db47]) by SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::ab2a:a298:bacb:db47%2]) with mapi id 15.20.6477.037; Fri, 16 Jun 2023 13:12:12 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 69968e84-0c47-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686921136; h=from:to:cc:subject:date:message-id:in-reply-to: references:content-transfer-encoding:mime-version; bh=sjKlgl/yPyFkCKYOe4mhWoUddlmkQUo8Y8MV7rKkmHo=; b=aCb32IaL1FA99tG6dUFZ9mfRtuOllU6/QJBEOUEqP9Kr8qDAl/CQBYEU ZVMkc2+Ze6dkgz4kUNbI6UKutE0OE1gubxiZCgDxQv3HIzcCGr5Zr00sy 9nWuLZpy99FQcABw1MNAmmb1lfo05BWkC743M0pR+9x+S5sN11eF2mmsl o=; X-IronPort-RemoteIP: 104.47.57.45 X-IronPort-MID: 113086008 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:1Vykq69hXgOhhk2GjRAXDrUDpX+TJUtcMsCJ2f8bNWPcYEJGY0x3m mcbCDjUOq3eYWD3Ld0lPozioB4H6JCHytJhHANvqHo8E34SpcT7XtnIdU2Y0wF+jCHgZBk+s 5hBMImowOQcFCK0SsKFa+C5xZVE/fjUAOG6UKicYXoZqTZMEE8JkQhkl/MynrlmiN24BxLlk d7pqojUNUTNNwRcawr40Ird7ks31BjOkGlA5AdmO6kV5AW2e0Q9V/rzG4ngdxMUfaEMdgKKb 76r5K20+Grf4yAsBruN+losWhRXKlJ6FVHmZkt+A8BOsDAbzsAB+v9T2M4nQVVWk120c+VZk 72hg3ASpTABZcUgkMxFO/VR/roX0aduoNcrKlDn2SCfItGvn9IBDJyCAWlvVbD09NqbDklJ9 aMeGi9OcSyjoP69m62hVuhzv8EaeZyD0IM34hmMzBn/JNN+G9X4ZfyP4tVVmjAtmspJAPDSI dIDbiZiZwjBZBsJPUoLDJU5n6GjgXyXnz9w8QrJ4/ZopTWMilAsuFTuGIO9ltiiX8Jak1zev mvb12/4HgsbJJqUzj/tHneE37aUxXOlANpCfFG+3ttmpgyY6TwzNCIHfkHmsPe1hEHhZ90Kf iT4/QJr98De7neDXtT7GhG1vnOAlhodQMZLVf037hmXzajZ6BrfAXILJhZebPQ2uclwQiYlv neLkMnuHidHq6CORDSW8bL8kN+pES0cLGtHfildSwIAu4PnuNtr0k+JSct/GqmoiNGzASv33 z2BsCk5gfMUkNIP0KK4u1vAhlpAu6T0c+L83S2PNkrN0++zTNfNi1CAgbQD0ct9EQ== IronPort-HdrOrdr: A9a23:1fClgasnnZJ5u6rD9odxz2PA7skDRdV00zEX/kB9WHVpm6uj5q WTdZUgpH3JYVMqMk3I9ursBEHvK0msjaKdjbN8AV7aZniehILKFvAA0WKB+Vzd80yVzJ866U 4IScEXY+EYa2IUsS+Q2mmF+rgbruVurcuT9IDjJxgGd3APV51d X-Talos-CUID: =?us-ascii?q?9a23=3AucmUVmgXi0gadljmG5G4fEVr9TJudX2CykXPYFC?= =?us-ascii?q?EKUF1Q+aKU0OR55phqp87?= X-Talos-MUID: 9a23:HYXLVAUP34qip4bq/BrgomBpG5dI35u/I1pQgJsKtcbbCSMlbg== X-IronPort-AV: E=Sophos;i="6.00,247,1681185600"; d="scan'208";a="113086008" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=ezHsxC/PxitmDLy/AuvHFOeg6NRsGJ6zUok5QoNuN0g4dzNeKYkep8m9NXpoc8pPaWKkxhgD6zBp3s2CiR+7CC+JaDtkRMXh8PQUggycD3mO8wxLlaqvH9X9qLfa1tBV03zT1Kqs1nbFf57QiX7CeZxD2n+AgSSgHjlAZ/RP3PWsElCyHzV+zDvOaWVM1xOibPPEfpQjvdOyT91sz/WGuNLwsI528OZkz4EhZIipxo+HNKm9mkf3TgIkD2vUc7VQbwi/JpU2/S94dsQxkeEKJV2qx+b0fm5QHL8S58aXOFEdvkjD7W0JPBYatepYAGppSaQrw68ll6ovHnhAE3HR/A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=3Mor47Tk+HAkXO06D3oYKwBm48TJAA+Ss+RoUvUbsSI=; b=kk8KKI5/kwVelY1+iDPYKOqSaRhrUhXyN2trk7svgCWuOH0oQsatxdfm08cKfYqyWs+hFJz8IPc+0XxBJk8Z/XCLFm+M/JMZOv4V7+Zw+WIXG0sw3zuxIScBHbZrCuqlFsLE8I8mXn+7QcOJPZUwTmLaCbCC3L2RydqUNjtoaJNojIklyyRIUW1S0EtJbT6jVjYdzM9wzeOC2jSZsNMIobALb4oLxaNENk5BNeWilur09JJnfXV0EFwzqPv1e/HvMpX6zbeZ5NpKDn6R0tiDWBXrzcy2JrC98MXuD2Dnqkk1xUwAXUOsD3ocdKN1Bc7/CanUT3RP/xK03PBMCL1LXA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=3Mor47Tk+HAkXO06D3oYKwBm48TJAA+Ss+RoUvUbsSI=; b=lMY7IT8VgZrbN2vL2/bwOBCj173Lv2Xa3A29wkNIcTg6KKnUlTBxEgKbcpDp5M1qV5X0gncc3JLd+4HuAW239Ahn9ctp/Y6XhBy8wbdks+Ln/qEqX8R9SWk/PZry0lmaL8RJ4pNsUQ3dDQOJeO62i2jaf3XaWcTxhyR6pNE7K6I= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; From: Roger Pau Monne To: xen-devel@lists.xenproject.org Cc: Roger Pau Monne , Wei Liu , Anthony PERARD , Juergen Gross Subject: [PATCH 13/13] libxl: add support for parsing MSR features Date: Fri, 16 Jun 2023 15:10:19 +0200 Message-Id: <20230616131019.11476-14-roger.pau@citrix.com> X-Mailer: git-send-email 2.40.0 In-Reply-To: <20230616131019.11476-1-roger.pau@citrix.com> References: <20230616131019.11476-1-roger.pau@citrix.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO4P265CA0141.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:2c4::11) To SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|PH0PR03MB5736:EE_ X-MS-Office365-Filtering-Correlation-Id: aec05583-0ffa-432a-6ccb-08db6e6b4c21 X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: chK8S6k+M1WYhCkZlWouMVZyRmb8/CkNZCZz0W1n3zZoFbXhK8NNsP7eZJxQr75NAEahY8+8vFn2rS4OKokXISaY9EqY0PTGfRxuiTddN/U8xd6okGbzvjolE5HeYzwUiT83f6VeJreSMEaFFKCRnD+c0bprsF/opLkJ3L4ZXasIxZXl16G+GRt/s4h70ICC6xKeTeTNh7aa11/zKL1wiWWL5SlzPus8qz927K0oqI7PdjVo+21Os53LtTGSSMY4QSQ1JysemSJo4K7SGZunwtK4l4uA4yHkoVGHLlMAxQD7+H4vOs03WJ9WJJ4PwWaXCj9k0DowWe3HQelz4wzFFthShaHDR009STWlN3ilUCrCM1LoWoiuidzTWOzX2sOmpazeYz/q9WocEIJ1JvF99j0QGVMOwypx/wfG7sYaqxLcilPXTbe7D7jYLTWtOa189/VzR/VMZZQHtbzVZ6wlGHra9d4RfqUaIl/sQfetpoXxpYEujcTHkGkNCmfM4VreEx5k27OanDHYw5mT59CYTIHEZShUn6+eZAwSw/SbD4w78pD8P6ib7+i8dBXAwPkb X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(396003)(366004)(39860400002)(346002)(136003)(376002)(451199021)(54906003)(41300700001)(8676002)(86362001)(66946007)(66476007)(66556008)(6486002)(6916009)(8936002)(316002)(4326008)(36756003)(478600001)(6512007)(26005)(5660300002)(83380400001)(6506007)(1076003)(2906002)(186003)(82960400001)(38100700002)(2616005);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?V3QwK3YwbVFCOTV2U21CK05HWmxzSTZHVlhMbVhTUVBkdCszUEg4Z1RGZHc0?= =?utf-8?B?ODA3aVpUMTlFZm9SS1N6bEwwd1pRU082VjJBalVKRkliN1RHZnlFTDJ2dDBl?= =?utf-8?B?Wk8rVnhxYmdyQjFMOG1CT1cyRHVzNXhiUEFzN3dRbFFqVGxYSnYwbEsrdkJM?= =?utf-8?B?UVpBdnRuYkpoYlFmeGpOZ1dDR0JFdGVORUtxZXBIMDd6ZGI3SjA2eWV4VUwr?= =?utf-8?B?Tm8xTW00TlV5QkRzNCt1elZxeUJTeXpNUG5VUTV0SGdvQmtmODNBem1zNmxl?= =?utf-8?B?cUtXRzZpYzVWUVROSld5SmN3M0JYSy9CbWdoWURyNTUyMUVwdXpyeDdoYXpQ?= =?utf-8?B?WENKMHlYUU8vVUtnQk5PZXZqUHdkY0Z3VEhLenk3NUdVL3N3eCs5L3EyUThS?= =?utf-8?B?aHNoYnZrZG51UFpYRG9EYUExYlUvUDZGbzZlK3lrR0tUME9kL2RrWDdZZGkz?= =?utf-8?B?T1Y4V3o3S3hLL3ZxeTRDRVlvWUM1WkJTTVBWdGZ6OEdDM3Erc1JEYk5aZUd2?= =?utf-8?B?Wnp6Z245WEhDWUJmaDZXaWFRblFkeG85a20vQmdxa29RRjB4NmU0ZU9DUXBH?= =?utf-8?B?alFwMklFQ2xqM242QzJET3R0RjJFZmo1WDlLQzdNU3NFZmpYRHJGZ0EyTmd2?= =?utf-8?B?WHBPaE4wTUxCQllVd3JXd3hKLzdTZitmNGpYTzRzKzlDbGYxUjFZN2lpaHh2?= =?utf-8?B?a0hTeXdPYk1VRXRkZUo1UEkvUnN4ckEvQm5pRG5RT0xTU2ttTnpBUXdOVFVm?= =?utf-8?B?bTBTRWh1MDcxN1R3Zkk3LzdjOEM4d0VmOUd2YndIUUFMS20xVW9nNkI3L3lN?= =?utf-8?B?emY4c2dhN2pzL1FqRjF0VGw4NWhuaXpRSWlXVFVYWjFOenA1ckVqTXNTZEIv?= =?utf-8?B?OFR5WG9iTGtXYjZ0Q01JdVRzdDQraFdwWlpkN2RrZytaMEVvUmVrNC90NmVt?= =?utf-8?B?Qk1lMFNCa2pYbktyK2FoK2REVFJNaGduSEJIR2dVa1BxZkQ3N2pKTjA4Y1cy?= =?utf-8?B?d3puai8wSXVYQmtBQ2NiajBDUlRsK1kxTWlicGdZK2FYNTdMNUNtd1EyQi9m?= =?utf-8?B?T2Y0dTFLdjQ3Y1hhUHEwZWdRR0p5MEppa3M5M3JaVXFVS08xQnhGdTBNL2FO?= =?utf-8?B?ZTY0L0hFNTMrbHNGeHhFa09FVVdTRkFuMGNyYVVRMTlLVFZReVE5Rndja0JN?= =?utf-8?B?WDFXYXg2eC9HMElabzYyQ1p6a3pacy9FUlBvSkRjMjROOFZsQS8xVHIxekht?= =?utf-8?B?TFNTenVQbU8zRGhnSnNaZmJ2Ly9aT0Z2cDl5eU5uem41SEVGSVE4eHpKSGtP?= =?utf-8?B?YzgvcGFCeTQ5cTZhSUMzMWlwWDk4UlFlNFFwUzBJWjRxdExCQ29GRTR3RFl4?= =?utf-8?B?dXNHRFkzZzBDNERFM1YzRWhDeHpWeS9sUmo2WHRnbi9nSXNGT2hYS2Q2QUZR?= =?utf-8?B?TlpiYmc5Z0pNWFZUVk5XT3JPelRKWTBJQ2QzMlZFYm0zTHhUb1ZNL3RoSVgv?= =?utf-8?B?SGI5NGJYNUZHSmJoOEkvTzJaYzdpYmM4VzZrTzIvS0hxek5GTEU3VFFmSjEr?= =?utf-8?B?c2NkV1U4Uk1MQVJoNjlpdVc0b1QrU1Fmd1lCM0FwaG1vUHBkdSs2NmtLSFow?= =?utf-8?B?Qy9CY1BwV2JhSFRhdXM3Lyt6aHZPdWhFVW50VFNVellUdGorUW1WbE9YZm5n?= =?utf-8?B?dDZscmloM3NPV2ppdlFxZkR5SHlZMDFRWnNEL21OcVE4bzIrL2RsUUthK1VN?= =?utf-8?B?UDB5ek5YZjN5QlJFYUE1UExYVjJheTVaa0RsN2k5Q0ZRaXlzNlR4Z3JNSHUy?= =?utf-8?B?Wm52TzVvSzF6UUpPME55NWpHUm92a0lrVUl2SzdzcUZWdi9OaWJ4YnRab1R1?= =?utf-8?B?WFZTQ2JrNEtQc01RY044cjVEd09heUNVdUZsRHhiU3FLS2VzbkswdG5oaEEx?= =?utf-8?B?RXZsNzFDeGppa2tuUUNmdFdUSHNScDZNbmZnUm0xZ2MyRjY1N2pGVDN2dTNx?= =?utf-8?B?c0hCby9mbStDOEhXSXUzSFJjZEtoYUdvQk9GS1RkWVlpQS85VTBzVWhHVkhU?= =?utf-8?B?dTRCODlGVmxCZGF4SFE0a1haUDRpVGpIWXZTZElyRjBzMVpEZkNqL25sK0c4?= =?utf-8?B?RnFrRkZFMG9BZTVUWGFCbk5VeWhvNEdIZS82TmJ4dkFpaVFvRXZqc25kWUt1?= =?utf-8?B?TVE9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: ob+pv/Gj0wQn2PP8hTHv3d+eI1/lERKhxREVpJNrW3MwuOMz1QvKTsdA9MgtUxlhYuaEbeB3EnCEWYnFAonClM8kzwF4PufxKWiGywR3jezTvoO3ni678JbX22bKx20Yb1RgEKc4MFI/SThJ832kqXPYVlynUGq4maBPoPwQbEiSiyZW83+tFYAXgMAVWre6mG1ePcWCHAjLnc3laqudF1sTuRNj487a75T6mrgliFmljXiJaT3BI8ytUOHgOyn/SBDW3N+uned2OqlNtNvcPZFcxtZqago/e4pVLdawMe1gKQwscBD72QAd5Q77gM86C8CTQOy3Yxi+eJgDHRgMyzQlKkw2U42wT2k5WZzxiABN+cjnAaouXZv3tfgKNpVqpwbT4/qiLFeL44MsN1blz7Tw99rbAn+AhCpB7XWegEAzcUMJw/ZKFEMDjzfhhz2uLomKadVmq7A6tyrIm84VwIXQZauOplk+HGAvP5Zi13LVFKhyKfbeE+Oo9noqtBNSv4s1bXTedXikWgq6fiPO7VKkWVwUHBrC5f1V5VZnFkcgwth+nyNTYskylWrj13V9Cm4b58GK++4rIwdmQC6qLVTA3CtVDBWT37Hvg55jtBwzspGbDD+HI1MufGFJF/pzywsMPwXEw4o8xi30KctKjPNfPfeg43mCx0Zcgns/MAXXFZzGzj7yX91JsiknKdyiMRtOyM7uJh+yPicUHi5q1ezE3gxtuMbOKP4fmQ54lFZEKIaKZkGup0GlDgvv/rMWQhU5yybVCB83DGSkpklSSMX12AG/COGuf19kNKGI+hCOpvMfioFvHX80fCnHixTb X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: aec05583-0ffa-432a-6ccb-08db6e6b4c21 X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Jun 2023 13:12:12.2519 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: hvQgu7h+LCuFlVox6aW1Cy0VWysTw+Fi5DVTf+xB6Sxnbcn6LA8caUpY+Gz3ofQfNVnzsHa08Txc++kyyTvpSw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR03MB5736 Introduce support for handling MSR features in libxl_cpuid_parse_config(). The MSR policies are added to the libxl_cpuid_policy like the CPUID one, which gets passed to xc_cpuid_apply_policy(). This allows existing users of libxl to provide MSR related features as key=value pairs to libxl_cpuid_parse_config() without requiring the usage of a different API. Signed-off-by: Roger Pau Monné --- tools/libs/light/libxl_cpuid.c | 57 +++++++++++++++++++++++++++++++++- 1 file changed, 56 insertions(+), 1 deletion(-) diff --git a/tools/libs/light/libxl_cpuid.c b/tools/libs/light/libxl_cpuid.c index cbbd5d31d63b..804dddb446c3 100644 --- a/tools/libs/light/libxl_cpuid.c +++ b/tools/libs/light/libxl_cpuid.c @@ -149,6 +149,53 @@ static int cpuid_add(libxl_cpuid_policy *policy, const struct cpuid_flags *flag, return 0; } +static struct xc_msr *msr_find_match(libxl_cpuid_policy *policy, uint32_t index) +{ + unsigned int i = 0; + + if (policy->msr != NULL) + for (i = 0; policy->msr[i].index != XC_MSR_INPUT_UNUSED; i++) + if (policy->msr[i].index == index) + return &policy->msr[i]; + + policy->msr = realloc(policy->msr, sizeof(struct xc_msr) * (i + 2)); + policy->msr[i].index = index; + memset(policy->msr[i].policy, 'x', ARRAY_SIZE(policy->msr[0].policy) - 1); + policy->msr[i].policy[ARRAY_SIZE(policy->msr[0].policy) - 1] = '\0'; + policy->msr[i + 1].index = XC_MSR_INPUT_UNUSED; + + return &policy->msr[i]; +} + +static int msr_add(libxl_cpuid_policy *policy, uint32_t index, unsigned int bit, + const char *val) +{ + struct xc_msr *entry = msr_find_match(policy, index); + + /* Only allow options taking a character for MSRs, no values allowed. */ + if (strlen(val) != 1) + return 3; + + switch (val[0]) { + case '0': + case '1': + case 'x': + case 'k': + entry->policy[63 - bit] = val[0]; + break; + + case 's': + /* Translate s -> k as xc_msr doesn't support the deprecated 's'. */ + entry->policy[63 - bit] = 'k'; + break; + + default: + return 3; + } + + return 0; +} + struct feature_name { const char *name; unsigned int bit; @@ -328,7 +375,15 @@ int libxl_cpuid_parse_config(libxl_cpuid_policy_list *policy, const char* str) } case FEAT_MSR: - return 2; + { + unsigned int bit = feat->bit % 32; + + if (feature_to_policy[feat->bit / 32].msr.reg == CPUID_REG_EDX) + bit += 32; + + return msr_add(policy, feature_to_policy[feat->bit / 32].msr.index, + bit, val); + } } return 2; -- 2.40.0 From xen-devel-bounces@lists.xenproject.org Fri Jun 16 14:19:36 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 16 Jun 2023 14:19:36 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550257.859234 (Exim 4.92) (envelope-from ) id 1qAAIH-0008Pv-IB; Fri, 16 Jun 2023 14:19:17 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550257.859234; Fri, 16 Jun 2023 14:19:17 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAAIH-0008Po-FV; Fri, 16 Jun 2023 14:19:17 +0000 Received: by outflank-mailman (input) for mailman id 550257; Fri, 16 Jun 2023 14:19:16 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAAIF-0008Pi-KI for xen-devel@lists.xenproject.org; Fri, 16 Jun 2023 14:19:16 +0000 Received: from esa4.hc3370-68.iphmx.com (esa4.hc3370-68.iphmx.com [216.71.155.144]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id c2034d75-0c50-11ee-8611-37d641c3527e; Fri, 16 Jun 2023 16:19:10 +0200 (CEST) Received: from mail-dm6nam12lp2173.outbound.protection.outlook.com (HELO NAM12-DM6-obe.outbound.protection.outlook.com) ([104.47.59.173]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 16 Jun 2023 10:19:01 -0400 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) by SJ2PR03MB7110.namprd03.prod.outlook.com (2603:10b6:a03:4fd::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.25; Fri, 16 Jun 2023 14:18:53 +0000 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::ab2a:a298:bacb:db47]) by SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::ab2a:a298:bacb:db47%2]) with mapi id 15.20.6477.037; Fri, 16 Jun 2023 14:18:56 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: c2034d75-0c50-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686925150; h=date:from:to:cc:subject:message-id:references: content-transfer-encoding:in-reply-to:mime-version; bh=LoGNBidYuDMD601mu4KlZfZlBuYRVPKeoHr4p2pQcMQ=; b=bc3zIY6cw8TCRvbZVVkonPsOv7SljbWXgiLg0bZ3kYRwdTZ5LuHuNErN MSfztoUs8mMXIXM0o7yru3JKfXgdATfZLqCZBvWAk9YsHuGyXj3kCGGZ1 Ozj6E+oVpB0H9FFXkTN1nM4A2/VEeXdKUJQtpNcf1X5/NwrgIg91sRl/T 8=; X-IronPort-RemoteIP: 104.47.59.173 X-IronPort-MID: 115617747 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:dWlR26NXcxTNA+LvrR2DlsFynXyQoLVcMsEvi/4bfWQNrUpz0mNRm mAfXTyCM/qDZDTweNwlaYTjp00G7ZfTyYRrTwto+SlhQUwRpJueD7x1DKtS0wC6dZSfER09v 63yTvGacajYm1eF/k/F3oDJ9CU6jufQAOKnUoYoAwgpLSd8UiAtlBl/rOAwh49skLCRDhiE/ Nj/uKUzAnf8s9JPGjxSs/rrRC9H5qyo42tG5wJmP5ingXeF/5UrJMNHTU2OByOQrrl8RoaSW +vFxbelyWLVlz9F5gSNy+uTnuUiG9Y+DCDW4pZkc/HKbitq/0Te5p0TJvsEAXq7vh3S9zxHJ HehgrTrIeshFvWkdO3wyHC0GQkmVUFN0OevzXRSLaV/ZqAJGpfh66wGMa04AWEX0sBIXmBQ7 eIbEioQNTvYoO24zpieS+Y506zPLOGzVG8ekldJ6GiDSNoDH9XESaiM4sJE1jAtgMwIBezZe 8cSdTtoalLHfgFLPVAUTpk5mY9EhFGmK2Ee9A3T+PtxujeIpOBy+OGF3N79YNuFSN8Thk+Fj mnH4374ElcRM9n3JT+tqyvx2LaQwn+kMG4UPJG69+dVgXu5+nEeKUNJcX+csKmhlHfrDrqzL GRRoELCt5Ma9kamU938VB2Qu2Ofs1gXXN84O/037kSBx7TZ5y6dB3MYVXhRZdo+rsg0SDc2k FiTkLvBGjhHoLCTD3WH+d+pQSiaPCEUKSoOYHECRA5cud37+ths1VTIU8ppF7OzgpvtAzbsz juWrS84wbIOkcoM0Kb99lfC696xmqX0oscOzl2/dgqYAslROOZJu6TABYDn0Mt9 IronPort-HdrOrdr: A9a23:QXxIsatbw9+q6qCiGmxalEVM7skDVNV00zEX/kB9WHVpm62j5q WTdZEgv3LJYVkqNE3I9eruBED4ewK6yXcX2/hyAV7BZmnbUQKTRelfBO3ZrQEIcBeOldK1u5 0AT0FIMqyVMbErt63HCdGDYqwdKQO8gdiVbDrlvhFQpN1RGtpdBtlCe3um+iIffng+OaYE X-Talos-CUID: 9a23:K1y1+WDLJPMaDDf6Ew9Yq08KAt4mSGfAl1yLBEC2B0xMSbLAHA== X-Talos-MUID: 9a23:ZXlirQTboZD5elAwRXTAhjB7C8ZOyZizBWFTzrEinNjULTJJbmI= X-IronPort-AV: E=Sophos;i="6.00,247,1681185600"; d="scan'208";a="115617747" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=ZbrP6HmwpssHW8K0ghbY64Fz5iVMcN58ugSnGbg0b6cq66WgoW86oZ0SBvCJomgBetjY4/ZfunLkZYUaQEcqWvMkcH56EM3sFZWpHxwTnbCDkqXCzMs0Pl1eY8yvXcvBUhJWPW10XY/2PIaSfNz17aF9V05Zv2vkg6e2MeAKA0FovYZ601LKo/fP+OyL3UEAsxTeMFbO+d9Hrj5yrfGIlyqA4m7lvX9Ja1zr0ksVwyhSE9T1q3FPL0dOTi4XHhjZh/oLcDNGMjIUo1CT4jtZg/Ukg+OTBdGPBvsqcCDJI84CIyRHa86fqjXjTT03HVTh6WPgzlbEvrIRM6PzQeFfwA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=ZMRs5HB8KDONtHqFdLtM9HLt+kXNH5MONu4AiB7pklo=; b=di2pCADf5Y1PCzNv3PHbAXrtDAWIi+8I6Zmcfp/kNIOynJbmH2TBBVNcRN2cUWvwNQSBpOXufz3VVPWRlK0z37hR6P6etMdwEplhesbBwcYKX5ebICssOPsvQ3ZCHj2uUFuPiqdQB8XO/9mWein+tFZx2eQIhUtq1JZxB1/KnKernwy7M0K2kNYiuBKlN4n7QsE24dcgzgx3NHba/99D7Cz9hcPWCa45lI5qEpCxG0ju85BJJxWDbQorfA/eQLDkYt3mjjHOvIaV+iK4c1yEVSiL+/natFsxzPdUIIrsBPadJrj4cCMyMzkiqqefj1xhQne9t3OBfSienX4Na2i0xw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=ZMRs5HB8KDONtHqFdLtM9HLt+kXNH5MONu4AiB7pklo=; b=M1Oq6iAsWE2FxJyMrnmFZQ5mD12kZTLm+/9iTPd7yBeeuz2h/wrdVPw53m5qfg6wEJiz45ke9X1ZWagvCOdFZ2au8jdGnTOxsf4nMQBAWKqHIa8JIjopswIcZizLH/VJR0Fk49TjkFQ5iYQuXcXUmg6iULLGiTrcV7goOe/jbi4= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Date: Fri, 16 Jun 2023 16:18:49 +0200 From: Roger Pau =?utf-8?B?TW9ubsOp?= To: Jan Beulich Cc: "xen-devel@lists.xenproject.org" , Andrew Cooper , Wei Liu Subject: Re: [PATCH v2 2/2] x86/vPIT: account for "counter stopped" time Message-ID: References: <7b69e322-bc37-a1bd-444d-b2cbe1d76b39@suse.com> Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <7b69e322-bc37-a1bd-444d-b2cbe1d76b39@suse.com> X-ClientProxiedBy: LO4P123CA0102.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:191::17) To SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|SJ2PR03MB7110:EE_ X-MS-Office365-Filtering-Correlation-Id: 4a6423a0-b16b-46dd-9088-08db6e749e86 X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: UqwCo+htZ98HnbOyihT7CNF1xvukzDG982INaklMKnu+r3Zh1IBaKqjzQgF1Urg1HR5hZi+7pOy8C2DrtdU4tHW6mUZv8RHgoTljWZhXRat2PIK0/piEtXuwgZtQJs2HQJInK8DzwDGkIDCGYhwjG3Cg2YY21f4CDnfUL54LEcNgEMdFup8OEbVqk7yHwTXQxRgW9xHxjHtE+dgVW9Odr+Td5F5mljnLBCz7d1zduYFztWZ+eEvrSO+uplDMGjUwW+e2YzFktTIRX1r8ljtcd4/e3V5Pm1xCtS4R06cSVpJ/P6VIVUek66kEAH1oNmqS0SuABRHVAaXI6Rxq/n/lFdZ7ui/Tp/VqQS/zJmE1pAnjua1W696MZqRT9f44eE63r2LhDN+dwcm3vn/mq8qtsD5IQN/sViENOSR+uaBmk2XgXqe8xGpCSTNQX7OE01uhRuEVS4LUrd/tawWBOsFBzErMXQLN3CeZAm6cqzkNTPpdi6UcMiYqFsmH+dVIUgODWbZKLh0zfH+ceJDcITpjljtRsW2Yf/DeQIdxMQqkjm+4lUHokaRli/7rK1tBELdcuCTtwurwfJSK7arxbJaF/FO4gogsZ+CeVgHEWlb2Tff2q9oj1BVFHBUOwvoX5tKqQmgIVMc/RBjFEo8Qqse5LA== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(396003)(366004)(346002)(136003)(376002)(451199021)(54906003)(41300700001)(86362001)(66556008)(66946007)(316002)(6486002)(6916009)(8676002)(8936002)(6666004)(66476007)(4326008)(85182001)(66899021)(508600001)(6512007)(9686003)(5660300002)(966005)(26005)(83380400001)(6506007)(2906002)(15650500001)(186003)(82960400001)(38100700002)(67856001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?eEdTSk1kUnZoZlQzUkcvY21HaTRKRlNka0FUMTdJQ2JzR1NOSXRTbThDNDNP?= =?utf-8?B?UHJsUDg3d1JpdTd3NS96eWFkMk5mRUl5dFBGaFg3RGZ4VXBVMnZqblZDTHdR?= =?utf-8?B?MnVwODZTWmZEaC9MY3poNVhUT29VNTM5MlhYRGl1NlFObVA3Z2MvdHl6ZmZS?= =?utf-8?B?d3B3T05BRVhhNDdDUGwvU1VmWkJrUXVzb2Y3bkQ1QTlPTENZVlo0ZE5SSVJ4?= =?utf-8?B?UnpvbExhSWZvZGo4Vk5YUXcrdmo1QXd2Rk5jMkJEQmJ2MGhqVk13VEFIeUhy?= =?utf-8?B?L2VhLzN2SDZUbVQ2SnJJMVRtSDJxZStaM05VQ3FUb2FGSTVTSjl6U3FmUi9I?= =?utf-8?B?aHloR2JUUnd5SC9rY2Q5Vk43QWFZd0ppK3J4V1hDdXM4UVFObTZSYlh4WjdQ?= =?utf-8?B?TTEwcC9YazF0aWlvTlZUNWtXcDc2eG9pb05rT0lDM0JpL1hMVlBrQnBFS3Bh?= =?utf-8?B?ajFQMzUvZndrYmliWWVnUXVzYnZkamZIWTd0cU1GaTNWempFbnJiRHlqVXpX?= =?utf-8?B?WGdiVHRMMHZuaXVOS2V4QTYvK2ZObjU5YjJMZ1FYbVgrQTU3MGRhaXdRNzJ5?= =?utf-8?B?RU5HcU1uN0dwZnFOWHJRY2dKbUVRWFpnejQ2N2l4YmNRaldIc0JXODc5UVRP?= =?utf-8?B?VW5kVDBpRG9EQjlJZDhtbmYwbUdWUmtEaDNTTGc4SzArYi92NDF2N1hzMW1U?= =?utf-8?B?Wm5pMVBhWDdpdVc0bmI5UmJaWjRPNFpTeVdYUmNtSmZzWFhta1dCMit3MnY3?= =?utf-8?B?cVEybisvU2lXL2dCb3lsRHhLTmc4a1dXUXF0N25DbHpucE44elJkeUlqYmtk?= =?utf-8?B?bjhZdWpDc0I5ZXBrUXdtdHIwYzBRQ3ZpbW5lRGdSWE5SajhoMFM1azJJYkZ3?= =?utf-8?B?ODJXVG1kaHJWQUdUb3FmOGpqbW1Gcyt2M09BVkxlNmxjK254N0dCYzJ0VVUx?= =?utf-8?B?SzZ6MHBRUlpvMWZYYWtuSjZqdUpKZUxUK21rYmpCME9DWGZ4YWtlWXVIcE5V?= =?utf-8?B?aGpVU2Q5TmMyblJvRStRUk9VK2JRankwaVlTSXdmbFgrdFBjUFZoUDIvWFUw?= =?utf-8?B?YXQ3aFp1Z2RYS1Y1dS9RUFRac05wakR1SEFTSFU5cHU3WHlOdWJZL1RPVGtp?= =?utf-8?B?WXorTXRRZ1J2R2dJZzVwTnhUK0R1ZW5SbGlQeWRiblU4bjZyTTd5bEJvOXpH?= =?utf-8?B?ZENscElGM00wYXN4dnFubXJ1blJzRU5Ob1VOVmJTclZMUGpma1BiUUlRSWh6?= =?utf-8?B?V0xGclAwaXlMS2VzeWFSUy8wdFBSRUJVeklGRDN3UlNIOTBMdlQyb3RUOFFl?= =?utf-8?B?eTdhcCtZNmdCbkd3K2FTeldvUEtiY2UzS0QyNzJQRHBveGIvdzhGSlNVMld1?= =?utf-8?B?dUZVTGNnOVhyMTU5YWdEMm13cG1vclJFdkVRL3c5MHZ4Y3hHZlkwbFIxNkMv?= =?utf-8?B?aUE1bk5RYXlwR0lRc21iSFEyU09aalVqYmxabkR2Z3hXUmxqQnQzRUtxUXFI?= =?utf-8?B?dStlVk4zY1lQQ3Y2TFNKYVdDMDcrSys2QThlTVpENVVNUHJJZHBwNHJsWmxN?= =?utf-8?B?cjZnRjFaVVVuZ201N3ZTMjkvNkxwcVJaSnpLRFNMNzk0ZlU5Mld6d2NVUDla?= =?utf-8?B?M1JPUjFFZXUxVjExMzc5aU9aRWNUMm5xL0xqV0lET2dMckdMWTNkUkl1bWJn?= =?utf-8?B?RE5tR1VNQ2hFK3NvcGVSNkljYW5OU1BzRldHUGlNVGtNN2VCMWZCV3hvLzA0?= =?utf-8?B?ejJUTWhrNWkzVHM0MnpHcEVrbCtEdU9HRDAzelJybEhtZHRuRk1rRmdIRUVs?= =?utf-8?B?VVpBcVFibzJPV2o3YVNlamMxRUN4MXYveUh6ZGhZUFR6OHZiOGxVSnEyN2Ra?= =?utf-8?B?bE5ITmhWdmRIdzRUelRIRER2UHA5NWJFR3BnL05iZUc1NVZLRFJqd2xZQzJu?= =?utf-8?B?Q3RtTzFrTHJMSndKWkFVemErRlh4VUZWa3VPR3BzcTdiWlVubllyOGVFbTdF?= =?utf-8?B?Yk0yNTVhTitMdHJyV0FxUkJFNnNnbHVmWUtlZVRkbDJNdlVtdC82eDg4VkdD?= =?utf-8?B?VnF5N1U0RGxEYUtxQlpTbCtSOWFua3ZWL1luRkZ0azhPZ05JQStja3hjM0Jz?= =?utf-8?B?d3R2N3M4UjBCVi9MdGlmeHNXQ1E4OFF4SmdPWmduQkpWVmk4RGJIenVnWSsw?= =?utf-8?B?NFE9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: VrKE2TC+cJQNelUeol3l32auTgoe0q3QIknHkqB5O7GJ5Cs7ccVw5Ohy7QA5PUjZikhvrC0FLDFO3dysYW3iJu9JJ1S6zW+0BnXfRagjr36D2VCDPKTDHhPfABmu0nRSFI5BI2Jiz7Su8b2dqTJBxCQksHdgGwoNzrEiKteTaExjKyCuRHe7B6uu1eHNl8qq2mk3L2BIQ5AXt4KRSmvznfYxvdI58QzsD0NbaTGU/VEPT1r0doE5jvruSiTzMpObcThO75R4M++Yl/bPhIaIAivk6Q7WdG1FCO/vnOW4zbwmfQiCHpKQGEgec/JwvJmgYAl3VGtZFlepsAriCRImEIa4AvA6fST3w8tOsfKrWE9CX38POd9ZnqihbjhC+FX3Uo0FlA+32IMCfwmKUtXh4SfvoMEJCcUTx3qclV7xW7OwV5/BMsXu8IOpEL5Thdd6zP4H95Ng1HwiS7LP7em3YcWZ9+J8L+9MB5P5uKvdmBWmrJ8BiWCwU+9ZchkFmxWB/u3l3AltJlc815BlLGLMceQDDr0Q6xcYwF1jfRGGbo2k9dFUumvHXNy15aOP2fyMowmi10IevL+Mlx5u25qkiEW93aHANeW0AvpY/joW0x7z1BV+kemwdnD3EgDXMOKBqM1apa+V7etaKdUkVItlBVlJ4qOfSHz7IFKVr3Tsdo+cM147HNQZ/Nk15009k8+mEV/lpUaPLE2nklO2cubSuHDuSgelz5cJ1pe4jfstt5RwAJecplLgnksGJkmesdAOUTD9lvmFeb8ee7y0obonAN4HHXoVS8qSh7uq61vHYBiRQ3lfeX86WTbL2bRGmd57 X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 4a6423a0-b16b-46dd-9088-08db6e749e86 X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Jun 2023 14:18:56.1342 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: AfQgBqrr8nEMzHPGQZtWrAOCQbnKoiu1imCdwke1nDDZgJmdxVkTFylVRvyWyuYAOozkQcvtO6KYxSqKoFNfrw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ2PR03MB7110 On Thu, Jun 15, 2023 at 04:56:22PM +0200, Jan Beulich wrote: > For an approach like that used in "x86: detect PIT aliasing on ports > other than 0x4[0-3]" [1] to work, channel 2 may not (appear to) continue > counting when "gate" is low. Record the time when "gate" goes low, and > adjust pit_get_{count,out}() accordingly. Additionally for most of the > modes a rising edge of "gate" doesn't mean just "resume counting", but > "initiate counting", i.e. specifically the reloading of the counter with > its init value. > > No special handling for state save/load: See the comment near the end of > pit_load(). > > [1] https://lists.xen.org/archives/html/xen-devel/2023-05/msg00898.html > > Signed-off-by: Jan Beulich Acked-by: Roger Pau Monné Albeit I have one request below I would like you to considerate. > --- > TBD: "gate" can only ever be low for chan2 (with "x86/vPIT: check/bound > values loaded from state save record" [2] in place), so in > principle we could get away without a new pair of arrays, but just > two individual fields. At the expense of more special casing in > code. One bit I'm missing is how is the gate for timers 0 and 1 is accessed. Is such line simply not accessible? My i8254 spec doesn't mention this, and the (kind of random) copy of the ICH7 Spec I'm looking at also doesn't mention enable bits for timers 0 and 1 being available. I assume those are always enabled? > > TBD: Should we deal with other aspects of "gate low" in pit_get_out() > here as well, right away? I was hoping to get away without ... > (Note how the two functions also disagree in their placement of the > "default" labels, even if that's largely benign when taking into > account that modes 6 and 7 are transformed to 2 and 3 respectively > by pit_load(). A difference would occur only before the guest first > sets the mode, as pit_reset() sets it to 7.) I wouldn't, but as mentioned before I would also avoid touching the PIT much unless it's fixing an issue that's reproducible. I think the chances of us messing up while modifying the code is high due to the lack of testing. > > Other observations: > - Loading of new counts occurs too early in some of the modes (2/3: at > end of current sequence or when gate goes high; 1/5: only when gate > goes high). > - BCD counting doesn't appear to be properly supported either (at least > that's mentioned in the public header). > > [2] https://lists.xen.org/archives/html/xen-devel/2023-05/msg00887.html > --- > v2: In pit_load_count() also set count_stop_time from count_load_time > (in case the counter is stopped). Correct spelling in comments. > Correct calculations in pit_get_{count,out}(). > > --- a/xen/arch/x86/emul-i8254.c > +++ b/xen/arch/x86/emul-i8254.c > @@ -65,7 +65,10 @@ static int pit_get_count(PITState *pit, > > ASSERT(spin_is_locked(&pit->lock)); > > - d = muldiv64(get_guest_time(v) - pit->count_load_time[channel], > + d = pit->hw.channels[channel].gate || (c->mode & 3) == 1 > + ? get_guest_time(v) > + : pit->count_stop_time[channel]; > + d = muldiv64(d - pit->count_load_time[channel] - pit->stopped_time[channel], > PIT_FREQ, SYSTEM_TIME_HZ); > > switch ( c->mode ) > @@ -110,6 +113,10 @@ static void pit_load_count(PITState *pit > pit->count_load_time[channel] = 0; > else > pit->count_load_time[channel] = get_guest_time(v); > + > + pit->count_stop_time[channel] = pit->count_load_time[channel]; > + pit->stopped_time[channel] = 0; > + > s->count = val; > period = DIV_ROUND(val * SYSTEM_TIME_HZ, PIT_FREQ); > > @@ -148,7 +155,10 @@ static int pit_get_out(PITState *pit, in > > ASSERT(spin_is_locked(&pit->lock)); > > - d = muldiv64(get_guest_time(v) - pit->count_load_time[channel], > + d = pit->hw.channels[channel].gate || (s->mode & 3) == 1 > + ? get_guest_time(v) > + : pit->count_stop_time[channel]; > + d = muldiv64(d - pit->count_load_time[channel] - pit->stopped_time[channel], > PIT_FREQ, SYSTEM_TIME_HZ); The above logic is repeated here and in pit_get_count(), maybe could be abstracted into a common helper to keep both in sync? (get_counter()) Thanks, Roger. From xen-devel-bounces@lists.xenproject.org Fri Jun 16 14:22:49 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 16 Jun 2023 14:22:49 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550264.859244 (Exim 4.92) (envelope-from ) id 1qAALX-0001Tu-43; Fri, 16 Jun 2023 14:22:39 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550264.859244; Fri, 16 Jun 2023 14:22:39 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAALX-0001Tn-0z; Fri, 16 Jun 2023 14:22:39 +0000 Received: by outflank-mailman (input) for mailman id 550264; Fri, 16 Jun 2023 14:22:37 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAALV-0001Tf-Br for xen-devel@lists.xenproject.org; Fri, 16 Jun 2023 14:22:37 +0000 Received: from mail-lf1-x135.google.com (mail-lf1-x135.google.com [2a00:1450:4864:20::135]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 3d8ccd8a-0c51-11ee-b232-6b7b168915f2; Fri, 16 Jun 2023 16:22:36 +0200 (CEST) Received: by mail-lf1-x135.google.com with SMTP id 2adb3069b0e04-4f60a27c4a2so1017499e87.2 for ; Fri, 16 Jun 2023 07:22:36 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 3d8ccd8a-0c51-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cloud.com; s=cloud; t=1686925355; x=1689517355; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=USKmhBP01O0nkmgv6gp1nWZdy8qcHw3nrgJUzZjV8Rc=; b=IJFS3CCK0evYgf9TkAO82YuinPq71mYyJwAPei+txshxFf/VFphrj3qF/yEO68rVzR dnOiNEloKLbpE5C0p3jf9kyiMdv0MuAj81VKAmdghrp3ZMI50AZ0xXC5tvdDJZnLpbXZ t6c11mN25pxQa5g6IvXSnMT9k8J/4s/8DgXa0= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686925355; x=1689517355; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=USKmhBP01O0nkmgv6gp1nWZdy8qcHw3nrgJUzZjV8Rc=; b=Bv3cUMq31ZHanbBbeeepRfjG1bblBwLkNMscQZQHwxTos9Vo1+nZK2ivvjegW2jhPq XM04uiid/Caq/B+rRgpCb671bVS9T0M2bkbNVT4kFrMoUUe7Lak5Q9RYxphCoba9AquY ewbrpBaV2ZPqJHlhy0eSXweg6HZ2Bds4yUbCCFzuiEWAYZIXGs2nH85cDJoixFhgOPu8 V4ZHBZp9SGBcIaBgLUdUcOEtPoEgDsExpxIE1u/5qE6OByTYAbWwFUz1lCFP9bfTEJ94 WlK3LapTiS39TJjKKJXBw1WvM2rxGn7CA52IbqIA4a6+g16DIrAv5ttMfMC1WeaHdcSN PdIg== X-Gm-Message-State: AC+VfDxiLzTFo80EVK38BSljK2fN/9EwZYWOOTjWew0c45FED8qaIj11 y0yu+4teO00XXr+FB2+ttwpLA9bw8g2KnJT+PAei/w== X-Google-Smtp-Source: ACHHUZ50N7ORlj6u1QajENTjRJs8iksofxh2Hq9tBjyMCsmnoKQcAHFKCOp8J2RVtL9i7cvccXYEAaf1vkQNb2uWb44= X-Received: by 2002:a19:d61a:0:b0:4f7:6630:8373 with SMTP id n26-20020a19d61a000000b004f766308373mr1412169lfg.19.1686925355429; Fri, 16 Jun 2023 07:22:35 -0700 (PDT) MIME-Version: 1.0 References: <20230530095859.60a3e4ea.olaf@aepfle.de> <578d341d-0c54-de64-73e7-1dfc7e5d7584@suse.com> <20230530220613.4c4da5cc.olaf@aepfle.de> <1b99e58d-338c-02af-eeab-00d691337d00@suse.com> <20230616134708.6b3c6964.olaf@aepfle.de> In-Reply-To: From: George Dunlap Date: Fri, 16 Jun 2023 15:22:24 +0100 Message-ID: Subject: Re: xentrace buffer size, maxcpus and online cpus To: Jan Beulich Cc: Olaf Hering , xen-devel@lists.xenproject.org, Juergen Gross , George Dunlap Content-Type: multipart/alternative; boundary="00000000000092d1db05fe3fea7e" --00000000000092d1db05fe3fea7e Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Fri, Jun 16, 2023 at 12:52=E2=80=AFPM Jan Beulich wr= ote: > On 16.06.2023 13:47, Olaf Hering wrote: > > Wed, 31 May 2023 11:05:52 +0200 Jan Beulich : > > > >> As said before, num_online_cpus() will under-report for the purpose > >> here, as CPUs may have been brought offline, and may be brought online > >> again later (independent of the use of "maxcpus=3D"). > > > > It turned out, commit 74584a367051bc0d6f4b96fd360fa7bc6538fc39 broke > > the expected behavior. But to me it is unclear what bug was fixed by > > this commit. > > Hmm, I find title and description quite clear there. > [SNIP] > > To me it looks like commit 74584a367051bc0d6f4b96fd360fa7bc6538fc39 > > could be reverted. > > I don't think so. I'll add George to Cc as well, as he's the maintainer > of this stuff. > I agree; the clear implication is that with smt=3D0, you might have num_online_cpus() return 4, but cpuids that look like {1, 3, 5, 7}; so you need the trace buffer array to be of size 8. > > If I read alloc_trace_bufs correctly, it already operates on online > > cpus. And __trace_var will do nothing if called on a cpu which was > > not online, t_bufs will likely be NULL. > > Yielding an incomplete overall trace, at best. > Historically we've avoided the thorny problems of synchronization wrt the trace buffers by saying that you get one chance to set them up the way you want, and that's what you get until you reboot the host. If someone felt like sorting all that out I wouldn't oppose it. But in the meantime, the current "policy" is that it's OK if *tracing* breaks when changing the number of cpus, as long as it doesn't cause the *hypervisor* to break. The proposed change to calculate_tbuf_size() wouldn't work as-is, because it looks like at the moment alloc_trace_bufs() leaves a gap in the mfn list for "offline" CPUs. But it looks like maybe the "interface" would allow those "holes" to be compacted? -George --00000000000092d1db05fe3fea7e Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable


=
On Fri, Jun 16, 2023 at 12:52=E2=80= =AFPM Jan Beulich <jbeulich@suse.co= m> wrote:
On 16.06.2023 13:47, Olaf Hering wrote:
> Wed, 31 May 2023 11:05:52 +0200 Jan Beulich <jbeulich@suse.com>:
>
>> As said before, num_online_cpus() will under-report for the purpos= e
>> here, as CPUs may have been brought offline, and may be brought on= line
>> again later (independent of the use of "maxcpus=3D"). >
> It turned out, commit 74584a367051bc0d6f4b96fd360fa7bc6538fc39 broke > the expected behavior. But to me it is unclear what bug was fixed by > this commit.

Hmm, I find title and description quite clear there.
[= SNIP]=C2=A0
> To me it looks like commit 74584a367051bc0d6f4b96fd360fa7bc6538fc39> could be reverted.

I don't think so. I'll add George = to Cc as well, as he's the maintainer
of this stuff.

I agree; the clear implication is that with smt= =3D0, you might have num_online_cpus() return 4, but cpuids that look like = {1, 3, 5, 7}; so you need the trace buffer array to be of size=C2=A08.
=C2=A0
> If I read alloc_trace_bufs correctly, it already operates on online > cpus. And __trace_var will do nothing if called on a cpu which was
> not online, t_bufs will likely be NULL.

Yielding an incomplete overall trace, at best.

Historically we've avoided the thorny problems of synchronizati= on=C2=A0wrt the trace buffers by saying that you get one chance to set them= up the way you want, and that's what you get until you reboot the host= .=C2=A0 If someone felt like sorting all that out I wouldn't oppose it.= =C2=A0 But in the meantime, the current "policy" is that it's= OK if *tracing* breaks when changing the number of cpus, as long as it doe= sn't cause the *hypervisor* to break.

The prop= osed change to calculate_tbuf_size() wouldn't work as-is, because it lo= oks like at the moment alloc_trace_bufs() leaves a gap in the mfn list for = "offline" CPUs.=C2=A0 But it looks like maybe the "interface= " would allow those "holes" to be compacted?

<= /div>
=C2=A0-George
--00000000000092d1db05fe3fea7e-- From xen-devel-bounces@lists.xenproject.org Fri Jun 16 14:40:13 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 16 Jun 2023 14:40:13 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550273.859254 (Exim 4.92) (envelope-from ) id 1qAAcG-00036Q-Ig; Fri, 16 Jun 2023 14:39:56 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550273.859254; Fri, 16 Jun 2023 14:39:56 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAAcG-00036J-Ec; Fri, 16 Jun 2023 14:39:56 +0000 Received: by outflank-mailman (input) for mailman id 550273; Fri, 16 Jun 2023 14:39:54 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAAcE-00036B-Qd for xen-devel@lists.xenproject.org; Fri, 16 Jun 2023 14:39:54 +0000 Received: from esa5.hc3370-68.iphmx.com (esa5.hc3370-68.iphmx.com [216.71.155.168]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id a60fab42-0c53-11ee-8611-37d641c3527e; Fri, 16 Jun 2023 16:39:52 +0200 (CEST) Received: from mail-dm6nam12lp2171.outbound.protection.outlook.com (HELO NAM12-DM6-obe.outbound.protection.outlook.com) ([104.47.59.171]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 16 Jun 2023 10:39:42 -0400 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) by SA1PR03MB7073.namprd03.prod.outlook.com (2603:10b6:806:33e::5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.46; Fri, 16 Jun 2023 14:39:40 +0000 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::ab2a:a298:bacb:db47]) by SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::ab2a:a298:bacb:db47%2]) with mapi id 15.20.6477.037; Fri, 16 Jun 2023 14:39:39 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: a60fab42-0c53-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686926391; h=date:from:to:cc:subject:message-id:references: content-transfer-encoding:in-reply-to:mime-version; bh=/RYjVjUrXjlQUNNE2bGP7mj9QaBpoXQWWlttT/G5ct0=; b=VUMH1VEsTOwH2DgVIFUWl6Peqs6W5lF9pgnaQBtvCtwY5e0C/5WTzlpu CzoXH8T0B7ZSabDpHtQYJrb/H3/RDQc3fjkWkeAGbhJtIBHu684K9bqb1 s7J+QkPF7xF07syef1jKl2GJi5+4YWwO348oPAmby/BZHXxW0J9vzGXdC o=; X-IronPort-RemoteIP: 104.47.59.171 X-IronPort-MID: 111824231 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:MbX2faOGEKESqm3vrR2el8FynXyQoLVcMsEvi/4bfWQNrUpx1jZTy TAYWWDTaP/fNDP2ft5/OoWz9U1Q6pXVmoQ2Gwto+SlhQUwRpJueD7x1DKtS0wC6dZSfER09v 63yTvGacajYm1eF/k/F3oDJ9CU6jufQAOKnUoYoAwgpLSd8UiAtlBl/rOAwh49skLCRDhiE/ Nj/uKUzAnf8s9JPGjxSs/rrRC9H5qyo42tG5wJmP5ingXeF/5UrJMNHTU2OByOQrrl8RoaSW +vFxbelyWLVlz9F5gSNy+uTnuUiG9Y+DCDW4pZkc/HKbitq/0Te5p0TJvsEAXq7vh3S9zxHJ HehgrTrIeshFvWkdO3wyHC0GQkmVUFN0OevzXRSLaV/ZqAJGpfh66wGMa04AWEX0uQvW0Yey tdGEh4qfAvbiv/q8omyQNA506zPLOGzVG8ekldJ6GiDSNoDH9XESaiM4sJE1jAtgMwIBezZe 8cSdTtoalLHfgFLPVAUTpk5mY9EhFGmK2Ee9A3T+PtxujeKpOBy+OGF3N79YNuFSN8Thk+Fj mnH4374ElcRM9n3JT+tqyv11rWTx3iiMG4UPIOYrt1q2APJ/FwsIixVbXuHsf/jiWfrDrqzL GRRoELCt5Ma9kWtQsPsQh6Qr3uNvxpaUN1Ve8U44gyQzqvf4y6CG3MJCDVGbbQOpMIwADAny FKNt9foHiB09q2YT2qH8bWZpi/0PjIaRUcAajUDVhAt+MT4rcc4iRenZs1/GaSxg/XrFjzqh TOHti4zg/MUl8Fj/6+851HcxTW3uoLOUBU29y3QRGuu6g4/b4mgD6S05lzLxfJBKpuFVF6Hv WhCl8X2xOUPC56KvDaATOUEAPei4PPtGDfEqVdrHpQnp3Kh9haLcYlO7Xd+LUFyP8AsfT7vf V+VuAVN6ZsVN3yvBYdnM9yZCMkwy6XkU9P/WZj8bsJHSopgaAiduippYCa4xWnjmUUouaIyI 5GWdYCrF3lyIaBqyjCeROoH17IvgCckygv7QZH90gTi2LGGZVaLRrofdliDdOY06OWDugq92 9JeMdaajhZSSuvzZgHJ/oMJa1MHN342AdbxscM/SwKYCg9vGWVkB/qPx7okItZhh/4Myb6O+ WyhUEhFzla5nWfANQiBdnFkbvXoQIp7qnU4eycrOD5ExkQeXGpm149HH7NfQFXt3LULISJcJ xXdR/i9Pw== IronPort-HdrOrdr: A9a23:Jxu63qtVQUCeY3Jdg/b21J6o7skD/9V00zEX/kB9WHVpm62j+/ xG+c5x6faaslYssR0b+OxofZPwOE8036QFhrX5Xo3MYOCZghrPEGgK1+KLqVDd8m/Fh5ZgPM FbAtND4bbLY2SS4/yKnDWQIpINx8SG7bDtpcq29QYTceiyUdAb0+6uMHfnLmRGADNLAocjBN 644MRIqyHIQwV0Uu2LQkMIWPXZt5nvkpzpbQVDIhI55Azmt0LM1JfKVyKV2QoEQ3d32rEg/W LZ+jaJhZmLgrWAxhjAzH+W1JhOncuk990rPr3ptvQo X-Talos-CUID: 9a23:aV4TEG9tYfosNiJI93eVv0xMQOd1TVaD9ln3MVTgBHs1eoacQ2bFrQ== X-Talos-MUID: 9a23:lD+gvgTh8lIJyVplRXTSpGlBNJ82uZ6eN2o80q0mh9mCby9ZbmI= X-IronPort-AV: E=Sophos;i="6.00,247,1681185600"; d="scan'208";a="111824231" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Eiai+NuI2uG2XC7ZPZRJGH6jN54cUKXTHoKNPWZ0mrt6nEdvaK54tSVFwxSRQBBOqPiUJ8AMM2GLQLk8LqvdykNW2Tf76HVrPmL7hlS7ZzhhcnidxDMMdvZRG4NU8TT2IAKGxSzWNck/yuty7ihxH4TQmktlPrdK2Y3SE1eYzGfI3k9AV+8aXfpcLSp1iHJf93KvzZi+wmDv/QjUeseH+Am2MsqDQcxkNfXZq7YPMFeEhjU/ssQX8bt7kz23kBNhafL0OpPp7vHnT55Z1r5mG/cv/HIAa1PM9KWToFqLWnpnz2EVGJekxIsFDhNPL45DZxYCAqs84CIryoHJXQ3Wuw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=07Hlh83Rzfc93wV1PdtX/VuuiLcn2vG76Ns1+RGeYRY=; b=KsjoAfMPPrSkhJqChXRigrZBCPtE30oK1wZYoqsgwwQ7ISwfDWuRK/On6Ct2AqRwDhN5bvzi7mRysuAHempunssVDjpSoH8fH31uM+zs3RGMnpdA0OX3DMKoJAE8hYIFHjkpyCaaqf+pbz3cAeGHXbdnHlXh1zNiapBq7Q7ax0Eoov0sgbjxg4nNQ2qegGWrZT+pehnOYzHeZqJ+Thm8LGkXLF4t2Uqe6y4xMCppKL66xbewj9pSUxHDyMXw6B9RM3AeP2HCNqUltsEnVBsV89DZoEVzlBvx8OSHU/zQ0V4dtem40CgPIVOBWWZYzAOKfzyfXpYiIr9SrZczDCx0AQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=07Hlh83Rzfc93wV1PdtX/VuuiLcn2vG76Ns1+RGeYRY=; b=D3l6v3sdnVg0T00KX/M6AsJRNy6RvU5f//og9rmeAycEzl+odiT7SJfF9OzSQcAhaqXQge2rF2JpXbGRWY7VnbHV8oFVlw/RuNj3f9e3ZN5zXQvaw4GNhvkUx9guYZPclWXMW0VII5olFjy+m9A5eIfgZy6bW5mqioJlX0iDH+s= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Date: Fri, 16 Jun 2023 16:39:34 +0200 From: Roger Pau =?utf-8?B?TW9ubsOp?= To: Jason Andryuk Cc: Jan Beulich , xen-devel@lists.xenproject.org, jgross@suse.com, stable@vger.kernel.org, Boris Ostrovsky , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , x86@kernel.org, "H. Peter Anvin" , "Rafael J. Wysocki" , Len Brown , linux-acpi@vger.kernel.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH 2/3] acpi/processor: sanitize _PDC buffer bits when running as Xen dom0 Message-ID: References: <20221121102113.41893-1-roger.pau@citrix.com> <20221121102113.41893-3-roger.pau@citrix.com> Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: X-ClientProxiedBy: LO3P265CA0026.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:387::9) To SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|SA1PR03MB7073:EE_ X-MS-Office365-Filtering-Correlation-Id: 6ea77b2b-1a5a-40e6-da92-08db6e7783bd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 4O7acrVa+hFkCeI37sQSfqi/6iVlf4q2k6gq+ByJsGkt+rFdMB8J3RFGB0Ymx5hPaj2Kv67aDlirQvjuS/KELX2KA1IPpwB6Isn69nunWiC3+jewi6kfbMyHXLw2g2Dn+ki0xg6FeEHGcrewHrvb2h/1tBzXvK3lDpjlQAT5+zPAWiRYQb7M+CXnCtQS0W90ouhf7BY/PLU91w0Ua8Uy6DQF0W4GAIJ3Z16d2MM6Kx43H2Gw2TS57wG9/SSLpOyQEVf0Fr1sCAcVHnbrW7bsX/pritH4lAfehQYsHOReYrI0Eq8ltfco7KZDlP9sf5zMTEHkzzgEjIAy9g9rsOc6Xm6u8H4mdpf//NXmURntIn6DIlfYDBsVlTB5IOccTdBd8wYfDfvM4F1QSgqnh00DxGR6Af6Ov8ua7rLZs/2Nqz5jbYse+1OPoof1G9pBxJTM0fEEXbNCCJ4BtLgCLQYaH8f7FnBnulTMbgw8lQgIT3q73xkxWkPjL9lHJoIu10dj4GOyHZDQUC/Xa1NQVM79bITxpJw8gfHA5yNAxt1U3l9hnhIl9nWSV0iKOmIKoFzO X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(136003)(346002)(376002)(366004)(396003)(451199021)(5660300002)(83380400001)(82960400001)(4326008)(41300700001)(85182001)(66476007)(66946007)(316002)(66556008)(38100700002)(6512007)(6666004)(53546011)(26005)(6506007)(9686003)(6916009)(478600001)(86362001)(2906002)(8936002)(8676002)(7416002)(54906003)(6486002)(186003);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?MG1KbURCOUoveHJGS3R6RkJyc09kcWoyeUlpR3dGSFo0TitKQ25DS0wyNWFn?= =?utf-8?B?RlpudkhxRkJkanljSkk5eDZqVEJQQlpxdnJFdmVYRE1FeXRsdWFnZEVuRi91?= =?utf-8?B?aXhqclpaNks2M215WnJXUUVzb1FFd3N0SmdwcXJCMVhIODF3NkhXVjkzRVZ0?= =?utf-8?B?U0N0MzlWZ2ZXbnQ1cG5YU2orSEEzUXE2bVVDVmFxcjFjWUZnRFVhbVRuL01s?= =?utf-8?B?TFVxcVA1blJvOWljcXNxbEhuajhFUUpLUUNmMFU5cEg5NlUxYVdJVGYrWGhL?= =?utf-8?B?TGNEVU9pMlFUeG9WNkI5M2IvTUhTUklsZE5zVng5cmZOK0owVGRyMk1xbkhK?= =?utf-8?B?cXBEWjU4QWR2eituWGZPbWQ4cW9ZVUYwUDlYUU9HQjZUTHFjdXAzalgvN3M1?= =?utf-8?B?VzBoWWhkZXNqQkEvVEpDcVBXMVR2eGp6c2VZUDBRSmJGMnZ1Q05VeFFiQnd5?= =?utf-8?B?cnY5aVdlbGFmWnJJbEkrRG0rN0ttL3A0ZjVvelFSMVhHVWpVb0hpMFBkOXlP?= =?utf-8?B?YXNISXpOK1hkcS84YTB6NjZidTZJRkRRREV5dEVHNitjZ09DUG1aNDBoTk9a?= =?utf-8?B?TDR0Y2NDc2ZLWk5vREJkdHdNT051M3BHN3Fjcm84dXY1Rm1JdFBRTzlMZGVG?= =?utf-8?B?bG9ZQ0YxdG5sc29aWUZZZlRZdTdxMTBtVHl4RGNmZXdDK2pVeThHSVh6NHpD?= =?utf-8?B?RVp0eEtPNlUwNHdqSlBpdjk2WFNCZ0tKMGZCT0gxeXpnczVsMHBBV0lMZ09L?= =?utf-8?B?d1ZVUzFoTy9jTHo3alE3ajhvaVZvOEdEK3IyYm1qTDVCcHJ1TGhTNm1ZUnhE?= =?utf-8?B?Wi96aFhPRGJERWF5YVVJWGtzU2dFUEpjK3U2eUdjKys5TGxITCtIYjM5Z3Mr?= =?utf-8?B?VE03bkRhbUNYYWtFb1B1bVFXL28yUEdyZjFIRkp3eUIxWjVlaGd2bTdERFhB?= =?utf-8?B?K2xVR1JjRkQwdjBtUVR5N1FSa2praVQ2VUZpQktRUUlvYS9WeHJLc1M5dElK?= =?utf-8?B?Z3dhODA2VnJSTlRiUmdxMGVGdnZ0bkYzcnd2Mmw1alFYZVlDdnhkNGs1ZVI4?= =?utf-8?B?ME14T3BtUzhkenBUQ0hGLzQxZXo5bkh1WU1KQVV2WEdMUFVNSUdhNHZuZ1l1?= =?utf-8?B?a1N5TTBGTG9wSFhtUnljeVd0Y1pISU5lODYxcis5L0duY0ZIWHUzQWVGT2Fp?= =?utf-8?B?L0tYenlyditFcFVDNjM0SElsYlUrZTljS1ZPRFNTUkRJaUU5cjdXNGxvaUtz?= =?utf-8?B?dHYvTnBiV0E2a1VJdTNHVWN3cmZFN3Nrd21PaGszK2QzQmxDU1ZkWHpjb2VV?= =?utf-8?B?SWk0NGdOVE51NEN1OXF2S2VrY1IwVDlSNmo1VzdEVVpyRWk0VW5nZ00wRWVn?= =?utf-8?B?QTc1aVMrb3hWZHlxQWZMMG1YOGxjeTRuNVkxSlBRNHZocGlhdTVrRlE1MnF2?= =?utf-8?B?N09yZUVhRGQ3VkRQSUFFbzZnSi9TYzJ0UUxGM2Z0dlNWYmF2MUJ1d0ttNTRw?= =?utf-8?B?ZXJzUmNMcnd1SkZjWHF6NUh6TVhwb2oxTGU4ZWR2VVN3cEIyam5RTkd1WnU1?= =?utf-8?B?QkNQTzk1TnBXZUxCUWRkYXZCYjNwbG04SmJWMEt4R2E2by8wSGFUOFBhNEhm?= =?utf-8?B?WVd1TFIzTTZWaEpHbEhwNEt1OUIvbFVPZWJMZndXY3BTQWR2SVoyVkNWSEE0?= =?utf-8?B?VDV0dEZJaXlDOS9hVlRjZ05TUjJpYmJvTlhScjJnb1J4VnVRampFS09RZUs5?= =?utf-8?B?b2wwTkJ1cVdVWEozM0NPUW9OMTFIWUMxLzdxT0h0RVdnRWNZMzhnMWI0QVFC?= =?utf-8?B?ZE5ubW5WS3IrWUpHaWNYYnJ2THFHcHpzYzZjRmNVQzNhNVEwajVaOWtFREZm?= =?utf-8?B?MGhoaWx3dzgvdDdBLzc0bDdLQW54eXZyOFZ6ejBBWEZkblo2azU0cHZzQVlS?= =?utf-8?B?VWE0M0UzN3lNVXJjOXZlM3YwTEREUCtaYlhFU29iK2tVWXBOczgyM2tpRUZk?= =?utf-8?B?SVQyOEUvVDRGWUJBVVYwUFVIOXNzRFRnOGo0MjFtamJ4bUZSc1ljRnBITTZn?= =?utf-8?B?alBUbVozb3k5ck83NUFTN24zbjBOM1NYcE5hVlo4ODlLSzUwbHZqZTZiM1ZS?= =?utf-8?B?QitTSXNNYUtobXQ0WnE3d1hYcmkrK1NsaTVDcWxYcHRoUVZidXc1eEV4VlYx?= =?utf-8?B?T2c9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: =?utf-8?B?WUpmV2hLR2llamQvQTc0SGdNU3BQMjlId0lMSWdsMU5wTXVpMWpaMFJGWUx3?= =?utf-8?B?N2x4QVE1QU43d3lGbGVudGx1SFVpTUN6ZytIVmNGam5tV3RBVDdrQTh6NFJo?= =?utf-8?B?SWFaS09tWUR3eWlwTU9iMS9kcEVER1ZVUE53TzZvSWhiQTF6UVE2YWZKaitJ?= =?utf-8?B?QkhIOFgxaVU1TkV3MHZrVktXb21PenhCTUJlRVlKOFlIbmVRN0RvbDFtMnhh?= =?utf-8?B?bEFlSmFIb1B3U2FmNndvSk5uQzJieFFkenhaV0dhZ0dodWRMbzJEUWN4dTdp?= =?utf-8?B?RGlPbHpsWmRjbVRmaDAxY3BNV3BGdGFFNjBYdW5aaFFTSCtUY0hRVkcxc2lQ?= =?utf-8?B?dkJpY3E2d2tQbGxIMkNPV2NQUkFZc25YWlNMVnBZSk9jUi9KSC9GUWtraU9o?= =?utf-8?B?Y1Vtc1J2dDUxQ0hYbGRVTVhFVThzYWdrZlF2RGtTOW1BNFZsUHE1aWxkZTVw?= =?utf-8?B?TVBtc1F6dUZIdVp4cnliVzBmMzY0ZEZzZ3JvODNWTHhqdm1lekZHWllZZlRP?= =?utf-8?B?WjZXRW9vcWhmdVhWVUt3RS9tT1R4NnVkYXNXV2ZndUVYb1hDbDBQVEJQVVdj?= =?utf-8?B?L2s3a0g1NEdmdHowTkJmcnBlTENkZFNzOXpKVmFib2s3QzNDNU4vcDdzblAx?= =?utf-8?B?SHhGTVpRcnFaUlVFdnBhRVJTU1VMNytBT0lIUEhmcnpKRUs3WjhnTGNnSzFP?= =?utf-8?B?OGhjRUJ4akxDSnZPUmxYWEJsaktvQTBNVU41RDU1VDduSzZhWEFSb0s4aVZw?= =?utf-8?B?NEZ5eCs5L3FPYlNXZ1FrTzhVaWRSUmxhdlNIS0RtN0lnOE5KVnU1M1VLdXA5?= =?utf-8?B?QlEyM2lMRXVtcHZpM2UvMHNMYXBnaHFWbVZlcDFRQWI0RjJKYU12Rk1wbDBS?= =?utf-8?B?QU9NVTZGZ3VJUUhvNk1EMGpJM2RobGZsK3plNlIyWk5GRlp2eXcrTkJsdmRF?= =?utf-8?B?MHllVXA5M2tTMlZrNGZYMVpLdDNxcEtyVmtFR3k3RVRNeElaaDdOZEt6S2Fz?= =?utf-8?B?cE9lSDlJWWNDclYvbGZSY1RtcWtBdGFSdUhaVDBmLzFoNFdrbUx3eGdqckdq?= =?utf-8?B?WEphNVNZMjhkaFhpU1ZFdFdUZnM2Mnk5T2dkTmNkZE5DYVgzT0RXc3pCNmZG?= =?utf-8?B?TU9JYkN0amZYcVZ5OXpmTEpRY3VzZjV0WWRjdEMya0lENDk4NzNUZnRLQyta?= =?utf-8?B?RENWbnBJNmhJN3FNVTZvdGxxblV4dVhYU1JuV1l6bFJVT0pHWWdGb3g0S2p0?= =?utf-8?B?aVdQWDlsSHdaOTY1Z2FaOG8xUFRHQ1pPMUY5MXdUQ1dzT2tnQTFaUmVzTE01?= =?utf-8?B?cXgzL08wcTYzYjRIeldsQzZhUUU2T2VVamM1ZTlOUGpVLzZYNGFNT2wyVHFh?= =?utf-8?B?UUZHYXVsVHJ4QkkzclMrOS9wZ1crVWlLV3kwL2s4dGRvRklRVmVvUmdhYy9i?= =?utf-8?B?ZTdXbytGR0x6RHlXTTVXSnV4NWNidTBNdWVTVzBnPT0=?= X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 6ea77b2b-1a5a-40e6-da92-08db6e7783bd X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Jun 2023 14:39:39.6754 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: l+5jyGcTnIU5yC8gz+ZQqC5RtcJ8EVdPoj86SZovacxSL1rOgbwREd2Rhb6TuQPz3XTlK5w4L11zvuwSTVz19g== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA1PR03MB7073 On Wed, Jun 14, 2023 at 03:57:11PM -0400, Jason Andryuk wrote: > Hi, Roger, > > On Mon, Nov 21, 2022 at 10:04 AM Roger Pau Monné wrote: > > > > On Mon, Nov 21, 2022 at 03:10:36PM +0100, Jan Beulich wrote: > > > On 21.11.2022 11:21, Roger Pau Monne wrote: > > > > --- a/drivers/acpi/processor_pdc.c > > > > +++ b/drivers/acpi/processor_pdc.c > > > > @@ -137,6 +137,14 @@ acpi_processor_eval_pdc(acpi_handle handle, struct acpi_object_list *pdc_in) > > > > buffer[2] &= ~(ACPI_PDC_C_C2C3_FFH | ACPI_PDC_C_C1_FFH); > > > > > > > > } > > > > + if (xen_initial_domain()) > > > > + /* > > > > + * When Linux is running as Xen dom0 it's the hypervisor the > > > > + * entity in charge of the processor power management, and so > > > > + * Xen needs to check the OS capabilities reported in the _PDC > > > > + * buffer matches what the hypervisor driver supports. > > > > + */ > > > > + xen_sanitize_pdc((uint32_t *)pdc_in->pointer->buffer.pointer); > > > > status = acpi_evaluate_object(handle, "_PDC", pdc_in, NULL); > > > > > > Again looking at our old XenoLinux forward port we had this inside the > > > earlier if(), as an _alternative_ to the &= (I don't think it's valid > > > to apply both the kernel's and Xen's adjustments). That would also let > > > you use "buffer" rather than re-calculating it via yet another (risky > > > from an abstract pov) cast. > > > > Hm, I've wondered this and decided it wasn't worth to short-circuit > > the boot_option_idle_override conditional because ACPI_PDC_C_C2C3_FFH > > and ACPI_PDC_C_C1_FFH will be set anyway by Xen in > > arch_acpi_set_pdc_bits() as part of ACPI_PDC_C_CAPABILITY_SMP. > > > > I could re-use some of the code in there, but didn't want to make it > > more difficult to read just for the benefit of reusing buffer. > > > > > It was the very nature of requiring Xen-specific conditionals which I > > > understand was the reason why so far no attempt was made to get this > > > (incl the corresponding logic for patch 1) into any upstream kernel. > > > > Yes, well, it's all kind of ugly. Hence my suggestion to simply avoid > > doing any ACPI Processor object handling in Linux with the native code > > and handle it all in a Xen specific driver. That requires the Xen > > driver being able to fetch more data itself form the ACPI Processor > > methods, but also unties it from the dependency on the data being > > filled by the generic code, and the 'tricks' is plays into fooling > > generic code to think certain processors are online. > > Are you working on this patch anymore? Not really, I didn't get any feedback from maintainers (apart from Jans comments, which I do value), and wasn't aware of this causing issues, or being required by any other work, hence I kind of dropped it (I have plenty of other stuff to work on). > My Xen HWP patches need a > Linux patch like this one to set bit 12 in the PDC. I had an affected > user test with this patch and it worked, serving as an equivalent of > Linux commit a21211672c9a ("ACPI / processor: Request native thermal > interrupt handling via _OSC"). > > Another idea is to use Linux's arch_acpi_set_pdc_bits() to make the > hypercall to Xen. It occurs earlier: > acpi_processor_set_pdc() > acpi_processor_alloc_pdc() > acpi_set_pdc_bits() > arch_acpi_set_pdc_bits() > acpi_processor_eval_pdc() > > So the IDLE_NOMWAIT masking in acpi_processor_eval_pdc() would still > apply. arch_acpi_set_pdc_bits() is provided the buffer, so it's a > little cleaner in that respect. I see. My reasoning for placing the Xen filtering in acpi_processor_eval_pdc() is so that there are no further modifications to the buffer by Linux after the call to sanitize the buffer (XENPF_set_processor_pminfo). I think if the filtering done by Xen is moved to arch_acpi_set_pdc_bits() we would then need to disable the evaluation of boot_option_idle_override in acpi_processor_eval_pdc() as we don't want dom0 choices affecting the selection of _PDC features done by Xen? In any case, feel free to pick this patch and re-submit upstream if you want. Thanks, Roger. From xen-devel-bounces@lists.xenproject.org Fri Jun 16 15:24:28 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 16 Jun 2023 15:24:28 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550281.859264 (Exim 4.92) (envelope-from ) id 1qABJ7-0008M8-Si; Fri, 16 Jun 2023 15:24:13 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550281.859264; Fri, 16 Jun 2023 15:24:13 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qABJ7-0008M1-PN; Fri, 16 Jun 2023 15:24:13 +0000 Received: by outflank-mailman (input) for mailman id 550281; Fri, 16 Jun 2023 15:24:12 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qABJ6-0008Lv-9I for xen-devel@lists.xenproject.org; Fri, 16 Jun 2023 15:24:12 +0000 Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id d410202c-0c59-11ee-8611-37d641c3527e; Fri, 16 Jun 2023 17:24:04 +0200 (CEST) Received: from [192.168.1.143] (unknown [151.35.105.218]) by support.bugseng.com (Postfix) with ESMTPSA id 9981A4EE073A; Fri, 16 Jun 2023 17:24:03 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: d410202c-0c59-11ee-8611-37d641c3527e Message-ID: <180c2497-1ff0-1230-76b1-08c1c578912f@bugseng.com> Date: Fri, 16 Jun 2023 17:24:02 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.12) Gecko/20050929 Thunderbird/1.0.7 Fedora/1.0.7-1.1.fc4 Mnenhy/0.7.3.0 Subject: Re: [XEN PATCH] docs/misra: document the C dialect and translation toolchain assumptions. Content-Language: en-US To: Jan Beulich Cc: xen-devel@lists.xenproject.org, consulting@bugseng.com, Andrew Cooper , George Dunlap , Julien Grall , Wei Liu , Stefano Stabellini References: <7eaadcb4-8580-b240-4451-5a98c66ebe5a@suse.com> <47325b0b-2ccc-6485-da59-2c0a367c2bf0@bugseng.com> <5a7fe98d-28de-dd7a-addb-9122226d5419@suse.com> From: Roberto Bagnara In-Reply-To: <5a7fe98d-28de-dd7a-addb-9122226d5419@suse.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit On 16/06/23 12:03, Jan Beulich wrote: > On 16.06.2023 09:45, Roberto Bagnara wrote: >> On 16/06/23 08:53, Jan Beulich wrote: >>> On 16.06.2023 01:26, Stefano Stabellini wrote: >>>>> + * - Unspecified escape sequence is encountered in a character constant or a string literal token >>>>> + - X86_64 >>>>> + - \\m: >>>>> + non-documented GCC extension. >>>> >>>> Are you saying that we are using \m and \m is not allowed by the C >>>> standard? >>> >>> This exists in the __ASSEMBLY__ part of a header, and I had previously >>> commented on Roberto's diagnosis (possibly derived from Eclair's) here. >>> As per that I don't think the item should be here, but I'm of course >>> open to be shown that my understanding of translation phases is wrong. >> >> I was not convinced by your explanation but, as I think I have said already, >> I am not the one to be convinced. In the specific case, independently >> from __ASSEMBLY__ or any other considerations, that thing reaches the C >> preprocessor and, to the best of my knowledge, the C preprocessor documentation >> does not say how that would be handled. I have spent a lot of time in the >> past 10 years on the study of functional-safety standards, and what I >> am providing is a honest opinion on what I believe is compliant >> and what is not. But I may be wrong of course: if you or anyone else feels >> like they would not have any problems in arguing a different position >> from mine in front of an assessor, then please go for it, but please >> do not ask me to go beyond my judgment. > > Well, disagreement on purely a technical matter can usually be resolved, > unless something is truly unspecified. Since you referred to translation > phases, and since I pointed out that preprocessing directives are carried > out before escape sequences are converted to the execution character set > (which is the point where unknown escape sequences would matter afaict), > there must be something you view differently in this process. It would be > helpful if you could point out what this is, possibly leading to me > recognizing a mistake of mine. > > Actually, maybe I figured what you're concerned about: Already at the > stage of decomposing into preprocessing-token-s there is an issue, as > e.g. "\mode" doesn't form a valid string-literal. For other, unquoted > \m I would assume though that the final "each non-white-space character > that cannot be one of the above" (in the enumeration of what a > preprocessing-token is) would catch it. Yes but, more generally, my concern is that the behavior in presence of unspecified escape sequences is not specified in the C99 standard and it is not a documented extension according to the documentation I have examined. For this reason, I don't think that feature is usable for safety-related development unless other (potentially quite expensive) activities are performed (such as prescribing extra validation activities for the preprocessor). > Furthermore it is entirely unclear to me what it is that you suggest we > do instead. It can't reasonably be "name all you assembler macro > parameters such that they start with a, b, f, n, r, t, or v". Splitting > headers also wouldn't be very nice - we try to keep related things > together, after all. It also doesn't look like __stringify(\mode) would > be okay, as macro expansion shares a translation phase with execution > of preprocessing directives (so in principle the body of "#if 0" could > be macro-expanded before being discarded). (Plus I think this would > result in "\\mode", i.e. also wouldn't work in the first place. But it > would rule out other possible C macro trickery as well.) My suggestion is avoiding the use of the C preprocessor outside its specification. This includes, among other possibilities: a) using a different preprocessor or substitution mechanism; b) amend the preprocessor specification by, e.g., submitting patches with suitable additions for "The C Preprocessor" manual of GCC. In view of that, naming macro parameters so that you never have an unspecified escape sequence is probably the cheapest (yet bulletproof) solution. Kind regards, Roberto From xen-devel-bounces@lists.xenproject.org Fri Jun 16 15:29:59 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 16 Jun 2023 15:29:59 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550290.859273 (Exim 4.92) (envelope-from ) id 1qABOc-0000cN-L9; Fri, 16 Jun 2023 15:29:54 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550290.859273; Fri, 16 Jun 2023 15:29:54 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qABOc-0000cG-IT; Fri, 16 Jun 2023 15:29:54 +0000 Received: by outflank-mailman (input) for mailman id 550290; Fri, 16 Jun 2023 15:29:53 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qABOb-0000cA-4m for xen-devel@lists.xenproject.org; Fri, 16 Jun 2023 15:29:53 +0000 Received: from esa6.hc3370-68.iphmx.com (esa6.hc3370-68.iphmx.com [216.71.155.175]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id a1f73a11-0c5a-11ee-b232-6b7b168915f2; Fri, 16 Jun 2023 17:29:51 +0200 (CEST) Received: from mail-sn1nam02lp2044.outbound.protection.outlook.com (HELO NAM02-SN1-obe.outbound.protection.outlook.com) ([104.47.57.44]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 16 Jun 2023 11:29:40 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by SA1PR03MB7075.namprd03.prod.outlook.com (2603:10b6:806:325::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.46; Fri, 16 Jun 2023 15:29:40 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606%4]) with mapi id 15.20.6500.029; Fri, 16 Jun 2023 15:29:38 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: a1f73a11-0c5a-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686929391; h=message-id:date:subject:to:cc:references:from: in-reply-to:content-transfer-encoding:mime-version; bh=8l2IOP+pPMfpJVIMig30zcUqDszr92zBrLUZzk/D10Y=; b=fkT48PvePeWXG49IM1sbXb5ZXwLdwZoBolos8XuaGHlDpVJCEbtmWHjB uScsP7ZwCocfFi4eg9r/kqIhHbbAjDnPICl8/8LvJcSbJ2R0g1KtEAZvj /XB93CZI2OcPesi1nqjI3+2OtPX0uzNuTaexidi0hNUABT73Ss/MkGy94 M=; X-IronPort-RemoteIP: 104.47.57.44 X-IronPort-MID: 112407735 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:g2br1ajwwNVN4LxlDmRKyKZYX1614hEKZh0ujC45NGQN5FlHY01je htvXT2PPvuKZmOgf40jOouz9hkF6J/cydM1QQZqpCk8FyIb9cadCdqndUqhZCn6wu8v7q5Ex 55HNoSfdpBcolv0/ErF3m3J9CEkvU2wbuOgTrWCYmYpHlUMpB4J0XpLg/Q+jpNjne+3CgaMv cKai8DEMRqu1iUc3lg8sspvkzsx+qyq0N8klgZmP6sT4gaAzyN94K83fsldEVOpGuG4IcbiL wrz5OnR1n/U+R4rFuSknt7TGqHdauePVeQmoiM+t5mK2nCulARrukoIHKN0hXNsoyeIh7hMJ OBl7vRcf+uL0prkw4zxWzEAe8130DYvFLXveRBTuuTLp6HKnueFL1yDwyjaMKVBktubD12i+ tQVeRcQSznd19moxeypRNVxuu4FMuDCadZ3VnFIlVk1DN4AaLWbGeDxw4Yd2z09wMdTAfzZe swVLyJ1awjNaAFOPVFRD48imOCvhT/0dDgwRFC9/PJrpTSMilEuluSxWDbWUoXiqcF9t0CUv G/ZuU/+BQkXLoe3wjuZ6HO8wOTImEsXXapLTefkrqE12wD7Kmo7FzJJRRiV8NCFgWGYRvhnd BIY6iMFlP1nnKCsZpynN/Gim1afvhcDXfJZFeQh9AiWjKvTiy6JC25BQjNfZdgOsM4tWSdsx lKPh8nuBzFkrPuSU3313quMoDqoIi8TBXULfTMDVwYD7NjlrYwpjxTACN1kFcadhdTvFTb96 zuDtiQ5ivMYistj/76g4VnNjjaop57IZg04/APaWiSi9AwRTJWsYYWz9VHA7PFoNo+BUl6bs X4Lms6T4foPC57LnyuIKNjhB5ms7veBdSba2FhmGsF78yz3oyL/O4dN/Dt5OUFldN4efiPka 1PSvgUX44JPOHytbul8ZIfZ59kW8JUM3O/NDpj8BueiqLArHONb1EmCvXKt4l0= IronPort-HdrOrdr: A9a23:3xKIoqiUBGljtdmJqIXOYwodDnBQX/l23DAbv31ZSRFFG/FwyP rBoB1L73DJYWgqNE3IwerwRJVpQRvnhPpICPoqTMiftWjdySGVxeRZh+rfKlLbalXDH4JmpM Vdmu1FeaDN5DtB/IvHCWuDYq0dKbC8mcjC6IeurEuFDzsaEZ2IhD0JbTpzZ3cGPTWucqBJcq Z0iPA3wgaISDAyVICWF3MFV+/Mq5nik4/nWwcPA1oK+RSDljSh7Z/9Cly90g0FWz1C7L8++S yd+jaJqZmLgrWe8FvxxmXT55NZlJ/IzcZCPtWFjow4OyjhkQGhYaVmQvmnsCouqO+ixV42mJ 3nogsmPe5093TNF1vF7SfF6k3F6nID+nXiwViXjT/IusriXg83DMJHmMZwbgbZw1BIhqA87I t7m0ai87ZHBxLJmyrwo/LSUQtxq0ayqX0+1cYOkn1kV5cEYrM5l/1ewKoVKuZCIMvJ0vFjLA BcNrCZ2B9iSyLZU5mWhBgp/DXmZAVMIv7PeDlyhiXS6UkZoFlJi3ICwsoRh3EB8494ZaVlyo 3/Q/1VvYALd9QRa61lAucHXI+QMUziBTzxEE/6GyWgKEkgU0i98KIfJI9FvN2CadgGyoA/l4 /GV04dvWkue1j2AcnLx5FT9AvRKV/NFAgF5/sukKSRgIeMMobDIGmGUhQjgsGgq/IQDonSXO uyIotfB7vmIXH1EYhE0gXiU90KQENuG/E9q5I+QRaDs8jLIorluqjSd+vSPqPkFXIhVnnkCn UOUTDvLIFL71ytWHX/nB/NMkmdMnDX7NZ1CuzX7uITwI8COslFtRUUk02w4oWRJThLosUNDT 9DyXPc49aGTEWNjBT1Bj9SS2pg525ukcbdb08= X-Talos-CUID: =?us-ascii?q?9a23=3AcL8qGGvPLeSr/soeNQrUpUh+6IsoI1rA6V6Oc3S?= =?us-ascii?q?mDDh7RoGIdXW25opNxp8=3D?= X-Talos-MUID: 9a23:9W+qhwrUC2WZTldvqL8ezy5Na9crzfWHNEsit4gsg5baOTx5EA7I2Q== X-IronPort-AV: E=Sophos;i="6.00,247,1681185600"; d="scan'208";a="112407735" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=aEN5ajCepUL6NtkjB4khDc+G0+2GVEl+iljMsMlH8UvlnKS7Zgpzz1hO8ufpX+Fc9EpdoiP3kdUBYTADU7CRf/TJDt9deS6azFbpyRVWDEAhZHsZ0luEJKKpvEpiKzQuPiltuTxk0KZUXyVyCDdYHstR9eSjcO7/rsO5jmbHvHj3yHcMI2844yzgKUilN66i3B6wozzFekSJu0Bt1BDUEL0nKdoDh6CpcKglJ8Z1sb9BDr5o01uxoErwlj4EB+RePg/zWwHlRVsx7UjMx1aVqEgRdwtSbUnIWApOLOGTQZ/lOIK/cWpoGFtneV11REdfmv8UOuC2wRYn3TL9UXXR6A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=8l2IOP+pPMfpJVIMig30zcUqDszr92zBrLUZzk/D10Y=; b=KOlEwq4mZ9EImx6BvIn4oZWZXnUqKFBbdndWNRo/TAMFFGr/vA4gt+1ZPiIbgnCSKaWK4UFuFNqmg5MgVQX2vcCCj5PaBK07AbVQqru8UEEXIDjt0IVVpQ7R1gwQH06s3Kmt6mfHTvrzT7XCK/vVKIU/GAgFepqKHnocdIhCCaE4WQqFkcAn59Z0PLKZjN0BcCebtMiTe+gkiyOLYOnJsZK2eyEoskfY8hNO+wi8aFQ3t2a2bvMUg8a/N88TlKDmiUh4NI2GZsW1TC7ylZM7PMY6RXunKzzi6b0S1Xdh4RfrUA1WXTNVGSnLIzt6XrrIaFq2eccKGrxksRa1F93UeQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=8l2IOP+pPMfpJVIMig30zcUqDszr92zBrLUZzk/D10Y=; b=BKhj3r9Jq6cFi0SEav7qw1x/NShP/ExjED2k4GkImki1MmDa63Lj2GbKTmHxO2XbX6KMrCtqpO5TqSeFcvY5Ng5fm3KV9DLd7CPeMoEGiTq3dIXrBNEeOpmrbCEAjZfFwf/xFzuWDAt6EJldP8ChjzcmAJvqViA/vC2VzIkgsOc= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: Date: Fri, 16 Jun 2023 16:29:32 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH v3 1/4] automation: Add container for ppc64le builds Content-Language: en-GB To: Shawn Anastasio , xen-devel@lists.xenproject.org Cc: tpearson@raptorengineering.com, Doug Goldstein , Stefano Stabellini , Shawn Anastasio References: From: Andrew Cooper In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: LO4P123CA0461.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:1aa::16) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|SA1PR03MB7075:EE_ X-MS-Office365-Filtering-Correlation-Id: 42898a48-afcf-4b4a-ffdf-08db6e7e7f20 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: y5IUBqyfe4LbDQyk2A0/5jDSNGnbjD4xtvOodtpzGuMr183uda6CFtRwZtcDrZ6mDr7o3PKNsFShNNdARB44YUl3ls6S3rbGwSYEOQRof3hHgtSi2mM+ujxHbsn7yJjGo9tTanUteh6IjnS9Bs7NuQmCfPzFErREoG2T1oLgGJpFm/RrId1lS4OyTsP6qGdath6dQ90Jt+9dmoiOs28jqb0q8ALVgbk5MM16ui5dT46XgNakFAENIMKsxaKmZ/BgDT/0thqY18gwR9/0W4k5ERpYDGIdcR/6ZBKroM2EGPdbVptQrC6sYqqQC6/viDcg1icwaw5vCOVtB9aLibF4+OnVUuu12letD/EY07fMNWl6aZs0rjWWL5ub90qHd0nXq+/HVkxWfvhZ/fnne8FRinL2dEWwLDdxIE4O0mBkjh9uSI7TfDgSDhsbksFOp539rmQ9GE9vdry/OCPwon2PdVv80Zz9AtsxdxA5KkNjlu4K16SBj24DfqUGMzsBMHIDFme+nVdZCHyWMB2f/sQKFggb+YR9J7p15BIj3+rJUqR0WzRhGbsSCmsO7mwpY712PmovbBRN44kGTLN2IRYiqPqWJBt3R8o1PfE58UqmrXAq2gbMK9C/2isq6lKD3BGu3ed8SwQB7G3WEc4voeSlBy9Ah3cklavG/DumAx1BYNk6OlGmj6oateBPnvTTOKNn X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(376002)(136003)(396003)(346002)(366004)(451199021)(36756003)(86362001)(31696002)(2906002)(4744005)(31686004)(6486002)(6666004)(186003)(6506007)(26005)(6512007)(53546011)(82960400001)(54906003)(66476007)(316002)(41300700001)(4326008)(38100700002)(2616005)(66946007)(5660300002)(66556008)(478600001)(8676002)(8936002)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?NUd5ZEFKOWNsMkora0hZZ0pjalpPb1VVN3ZMTDg3RU1EM2VjamdDMGhjK1Rs?= =?utf-8?B?VHZEcGozSVp0eWUwdEU3cW5GOE43YkVBblM1N0x1b21oeEtERFZ0ZG9BMDlv?= =?utf-8?B?Vm5PM0xtT3JXM0hETDFLYnRZcGhqV1BlQ2cyRXBwVlA3emQ0Y1FNRnFEZkRC?= =?utf-8?B?aXJMekRhWU8rMkN6SGRONnEwWVBzZk9PbTJ6ZnBFVWl3dkVtbzk2bUxvb0xE?= =?utf-8?B?Qit2ZDV3K3BnT3d0QlJyZjB5Uk5LQzlIeXBDenF6am8vMlVKSy8wSjkyc2hq?= =?utf-8?B?WDAxOW1aSWVUM050SDBBcXl4UmJZSS8zMldKeTFoaDEydXF2Z1E4Rkp3UHJj?= =?utf-8?B?Tm5OVHdURGw3ZnE3UzJiVnRNdytrNU1nWTFlaTJWd3d1UWpNaWJXV1ljeFIv?= =?utf-8?B?WjBNZUpzbVhFWWpuTnZ1K3MzcTdtdGlvZE8ycnArSVg2ZG9LTlVwTTBPWER3?= =?utf-8?B?NTJ2T0tZeXVXeDNkekpVb0Y0dmREeWExSjUwZWo2V3FiRHNpNk5wbEtQVUxk?= =?utf-8?B?ajk2dHhyWS9naURESXVmcW01K09Eb1NOb2ZLWi9QQ1l6MXpHbUg3OGhpOVVQ?= =?utf-8?B?V2xpVGg3bGUrdnJYQ3B5WjlJWHkvNi8zQ3ljRWJGTXFoSklXQllnUTY4aUFt?= =?utf-8?B?T29lR2lmQ1NDMzNRYXhzZ0sycGhBRmREYU9EdGN6UWt0MkJIQ2NXd0J0cFRt?= =?utf-8?B?MVFsblJrbUpRMXl1V1gyQVVyTDBKVFN6WFhuSTJCSXR6WWExRzlOUWVEL2g0?= =?utf-8?B?dkZOWm5EU3V5N2Exa2xXOVp4MWo3QVk1YnFZbVpCOFhQaFp5ejJ6d000YU94?= =?utf-8?B?WklUQU0vSXNnVkdrT0lqRjN4TmZublRaaDViNlRGN1J6OXkyaDFsdGxCVVhm?= =?utf-8?B?U2xPcWdWclVmbjE5UVRNMXFQT1l4ZnBSUURsbkdoRjF6WGxRaU83M1J4SVQ0?= =?utf-8?B?QjRBczc5R2lVaVVhWnByQStCVzZZNEhnOUtiaEVOK3lDbERmUW1yMDBtOFNj?= =?utf-8?B?U0NJUlNVdkhicWx5U2tjT2s3cFc3M055aVBYUjBhYi93ZFBvNFJBUDc3cjg1?= =?utf-8?B?Z2dEbURNT1p3bmhjZGtqSzRjWUF4Q0V0dzRPVkZtbmlHUWtVZ201Uk1FUlFE?= =?utf-8?B?UllpTVJlQWQva3owRjdhZ0o3OTlwTTVPS0kxMG5qa0F3VTgxb0RrbldDZklh?= =?utf-8?B?RFUrc1hwaHlmNkNtNWJGTkJyY3pJSndEOEFCZWlLbnd6MUg4VjgwYm1JTDdh?= =?utf-8?B?a1VVcXE0MU9oc1FjZmliQkk2blBZZGtweCtYN2o4L1VwUUNTWk5SVG5iUHBV?= =?utf-8?B?SnJrY2VTM3YrSFhvcHZiU2NydUdaMXhXN0gvYXZTa0IzaHpQZG9zbDZ4V0lp?= =?utf-8?B?MlpWZTAwc20zeFU4Q1RSK0dveS9hMUJQdVdvSHBwSnYxUi85aURSMUo3QWcx?= =?utf-8?B?L0Zhb0kvTG1mc0ZtMW8zM29XYWJwY3dmbjJmV1M4RHpMaUhGOGxGTmt2eXly?= =?utf-8?B?MmFSVDgyR0tTcG90S2k5UnVaL3ZQREpwRjRvMWxaMlN0QzBqdERGUGNNa2du?= =?utf-8?B?ZjJOTHRpYW9hdUF0cFpSSHNtWStUemdXdFlOZHRSQ3NWaTlsdFlvUitLNlcw?= =?utf-8?B?amgwSnc0L291aDNzSkQyZElYZFVqN0J2SlpHZUNKK2VrZk00MjV2TTlNV0ZZ?= =?utf-8?B?Rk9LTjA3YnpzdStmWm1ra0JzbW9ON0VYUXh4TWU3d0FLNUxCQ3ROS0UzOTNK?= =?utf-8?B?Vm0rbkNobzAzQmJiYURtYVp5RnM4SU9pYy96TnNwc21EWUl1NnVDeHRmWVVF?= =?utf-8?B?VlowNHFyZ1ZseG5naythZ2FKMHpBaXUzVG80NXA1ZGFrV0dmVGxyd1FRbjUy?= =?utf-8?B?MTVrNERZenVqYm56bHVPV2EzU25BeWlpUEZuMWpsdUV4TUtVbU1aODBZSWNN?= =?utf-8?B?cTRWWnFmbVpNaE11MjU0NEpZUXV1NzhuRGR2eGF5TmhzMmpzcTYyWENLeDdX?= =?utf-8?B?aVhncGVXU3lXUms4aG5jaW1kNmU0TkRJbFhhZnUzbytFQUFqd1g5V09UQVpY?= =?utf-8?B?ekZ4SVlyQytUTmZzSk52K2Q1UVFGNFQ0YnA4QkNVSE5Nb3loRURScWhFSWhn?= =?utf-8?B?Z25mQTZaUXpPc1N6YXVEUEVlREhPNzk5UlpnclBoQkJ1RVJTTmpRV3J0U3dk?= =?utf-8?B?K3c9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: V0PU+HwH/AdpLr7dEeRWOg9Nw0hjYAXrytr++dnyLmGYDmHkXYRr2VUUoT1znLoPZgNGXhVYldqadTjTR0AAtNj5TgA+gIgiiZknptgDVPFg90NZITD4Yg4xXE/puUROshgme/OLhBmy405cWzvPTvxjlow66bZiiiDbqPa0KwUmzRUqmZke2B3tbZA9JDs359OzRTcueH1BNUGzxzQTXCyeaWFvOe971Q7Cv8dJFHV/N+T3XgKH9Wwwv1jSv7zsUrquXbddnhSO8yv1xrABOSKoubVrSmoVU9lqw5SvmhvStwkLUcuXf9dxMKm66R8IZx2jzcBNZ7PAxn5cIr5Ou/wUnN1UA0ysnBHeS+2FW6SUMCytC8K4UPWmOPvVg6IisbFGGhOduu9C0YP9p7vNMaold3UsfGj5CHP9/0Nzj3B8IwIuaqQ178h3RK/1b1BUGukTF6YWSCzcdp5n4EPX+luCuwOWgr3c5HougMKhA+g/OxE2N7OcpXnvnM5z/eYKfxOiDhRi4QdqmQ4IPtmGr6y0botGq9EqAjVeTyukrarRBX3K1eL1JePCMYysHxKl1zd5kcAcbKVNVWnxVn8KBOinvXmFOOQGxaotB/vfD+ZKC5aAVtid9OFXvWJZL8E9B5WZDfaF9OiIPOkayk43it1gpbBRSSHY36JVwtxbq/j9jplFCoN+cg8Qeoh9N7hsZjpX2XM6AH0W8nJucrNZPlIN+5WtCpijek0Uq6f+RBOGQ5AWsXHFk/5QxGPlD6M1okNaP1lHSjglpK+YeeAoNfm+eLp1v7KJP44LVcMgX56ZGEOn5dOpDWvNVXNcsMTlsgk44vmQsSwMdUaEe1DBaaTEyC8QGLsUp3xVYVpIde/5WFoq9GXg5QAE5+kq83zvDwjD5qmo379abKOg456Goo8aBkLpQKAGNwpfz3PjdxQ= X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 42898a48-afcf-4b4a-ffdf-08db6e7e7f20 X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Jun 2023 15:29:38.5364 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: /n+U5bGZDR+O8sTM9NSwHjkClma88mRvo2q+KhtF7a9+k8c091nD/8D2wTYDySxpOIcYauEla824MarQuwwgQYzZXDKnMPxJXPLp5mjoUZk= X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA1PR03MB7075 On 13/06/2023 3:49 pm, Shawn Anastasio wrote: > Add a container for cross-compiling xen for ppc64le. > > Signed-off-by: Shawn Anastasio Acked-by: Andrew Cooper I've built and deployed this container properly, replacing the prototype from earlier. From xen-devel-bounces@lists.xenproject.org Fri Jun 16 15:37:48 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 16 Jun 2023 15:37:48 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550295.859284 (Exim 4.92) (envelope-from ) id 1qABW1-00026O-F1; Fri, 16 Jun 2023 15:37:33 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550295.859284; Fri, 16 Jun 2023 15:37:33 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qABW1-00026H-Ar; Fri, 16 Jun 2023 15:37:33 +0000 Received: by outflank-mailman (input) for mailman id 550295; Fri, 16 Jun 2023 15:37:31 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qABVz-00026B-Pc for xen-devel@lists.xenproject.org; Fri, 16 Jun 2023 15:37:31 +0000 Received: from mo4-p00-ob.smtp.rzone.de (mo4-p00-ob.smtp.rzone.de [85.215.255.22]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id b36ee070-0c5b-11ee-8611-37d641c3527e; Fri, 16 Jun 2023 17:37:29 +0200 (CEST) Received: from sender by smtp.strato.de (RZmta 49.6.0 AUTH) with ESMTPSA id y5401az5GFbO8gI (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256 bits)) (Client did not present a certificate); Fri, 16 Jun 2023 17:37:24 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: b36ee070-0c5b-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; t=1686929844; cv=none; d=strato.com; s=strato-dkim-0002; b=hXlGPjikASoOWrPlfxxrGJYRcCW0YHoJA2CJH5kNikcUujKNjWTGy5dDTHGwuILaxD Jm5BlUs0tvmh61zuvjiZF/y1i8qMaM20hyn0LhVl8zcA/mo9KTEvyPrZXwMIyGAoMWEs erPZTYbM58/t5nlzL8A655mZuK+dzvCEGtJwyOY9MGWC+Q302C4ov1ZYu7PHAkba55i0 HgfY9l5XJ0FpyOv5jN7wIRJvSY9m3dOCNjW1nroar2xXbY+ZjTVr/amaFZvPLyMbqWlY XnKtXY+pmhD59+9JVPAvsn/qTpssuzituitk6RqU7lZFpIN3Bz2GTQ36niOHB3poWYW+ kKQw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; t=1686929844; s=strato-dkim-0002; d=strato.com; h=References:In-Reply-To:Message-ID:Subject:Cc:To:From:Date:Cc:Date: From:Subject:Sender; bh=TOVhKHcZds+z64/Mll4qxdSnkrdEf3civ2YHnUTTv8o=; b=As/c1Ee+N+2i5GSowXKaLTJIDmBrOHtHpxBl10sY+FWhPAP25C2EaX2EnKi4d5u23+ nQugGqmQlQT1cI3PuaDdrkdjoy+OE68az1AJx9FK3Q80P59aZyYkVwAKwuW1vAF3BR4J lW/KZokJs5q4bqkFDfmDEWADnWuZH1LVrJ2KQGjZk1j1moY4gDdLZqT/l8vP/KP1pj7L XWecXlfG9JchjxpI/bdCwWqcdNKPWhYoi8yUYartmD8bEvNIY2FBppezfnrSrubeKDFs kRwA3c2DvxD3cEEto362FqqE6rVB1MuxQRB5RAT2ugZjj+z8kkvSmAGeGWST6hdaD5/h NROw== ARC-Authentication-Results: i=1; strato.com; arc=none; dkim=none X-RZG-CLASS-ID: mo00 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; t=1686929844; s=strato-dkim-0002; d=aepfle.de; h=References:In-Reply-To:Message-ID:Subject:Cc:To:From:Date:Cc:Date: From:Subject:Sender; bh=TOVhKHcZds+z64/Mll4qxdSnkrdEf3civ2YHnUTTv8o=; b=dADoSyZbHHOtf7LO/1DP5V98s4iN3FFG8ri9X7MAyFE5tYv192jLEhI+zb57F1BBCG XCQxUJi84bN18TZhlB49ds2ZQKB1Sr/XJY2EJk6fgypKMFB+VnRpatE8SrS8vT53kUZ3 4tDbBvzCKebt/i5bjvUEDsitL1mVDSZfFE5muys/FSZftU4uKfvbrdZHVklOnkIdj5N1 WGWKwKotJ0G44uehleF8nS+9xMK5b3idgo62S9Rjaf4gURD30a+nmUg8LFEI5+2cflkJ 9/NW7Fim5c5lDu4IXHn5oApK6cRu5jbFyObmOKF20Ork6Z3KUPZyvQ48GPmVBWFfNRkA GsKw== DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; t=1686929844; s=strato-dkim-0003; d=aepfle.de; h=References:In-Reply-To:Message-ID:Subject:Cc:To:From:Date:Cc:Date: From:Subject:Sender; bh=TOVhKHcZds+z64/Mll4qxdSnkrdEf3civ2YHnUTTv8o=; b=ep7KPPYUY1YmJp/1sibf4kO54bBwxQlOs2ZQ+qhnChX3Uhzv8Gu7RKRtgsc7ft442y SC0s7MBmsa57kTVUB7AQ== X-RZG-AUTH: ":P2EQZWCpfu+qG7CngxMFH1J+3q8wa/QLpd5ylWvMDX3y/OuD5rXVisR5AB2Ibh3sRFQAfajHZ8Hr2i7N1ImBUHmXWy0PQg==" Date: Fri, 16 Jun 2023 17:37:17 +0200 From: Olaf Hering To: George Dunlap Cc: Jan Beulich , xen-devel@lists.xenproject.org, Juergen Gross , George Dunlap Subject: Re: xentrace buffer size, maxcpus and online cpus Message-ID: <20230616173717.3f264151.olaf@aepfle.de> In-Reply-To: References: <20230530095859.60a3e4ea.olaf@aepfle.de> <578d341d-0c54-de64-73e7-1dfc7e5d7584@suse.com> <20230530220613.4c4da5cc.olaf@aepfle.de> <1b99e58d-338c-02af-eeab-00d691337d00@suse.com> <20230616134708.6b3c6964.olaf@aepfle.de> X-Mailer: Claws Mail 20230601T090920.68bc28c0 hat ein Softwareproblem, kann man nichts machen. MIME-Version: 1.0 Content-Type: multipart/signed; boundary="Sig_/Ezg3xPca+1bliHFynUjPX5R"; protocol="application/pgp-signature"; micalg=pgp-sha256 Content-Transfer-Encoding: 7bit --Sig_/Ezg3xPca+1bliHFynUjPX5R Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: quoted-printable Fri, 16 Jun 2023 15:22:24 +0100 George Dunlap : > I agree; the clear implication is that with smt=3D0, you might have > num_online_cpus() return 4, but cpuids that look like {1, 3, 5, 7}; so you > need the trace buffer array to be of size 8. I see. Apparently some remapping is required to map a cpuid to an index into the trace buffer metadata. Olaf --Sig_/Ezg3xPca+1bliHFynUjPX5R Content-Type: application/pgp-signature Content-Description: Digitale Signatur von OpenPGP -----BEGIN PGP SIGNATURE----- iQIzBAEBCAAdFiEE97o7Um30LT3B+5b/86SN7mm1DoAFAmSMga0ACgkQ86SN7mm1 DoApeA/5AWhL4IlRtXTVrf8ffrYm3pGQ10gFf0+moTq5sxjaSEdtY4FyvPGGOcPd Bmw3Dmbte9xPOe9PXxr5vuvBo8MBI0E1LFo4zhIDlTRDT0wQkZwA4eynq0E40OVR D5Ccz0LYINluE9dquIqKU6K0LZ1R5BEQ6cjhhKrsFuujNNDW+C2if0waj1ICPOsg o+ZX5JKkOWIwud5B+YJ7i9ZJh7UF3LhM8l26WEOUdx5mvN1oNzOOl/nvq5H4JLnm xwSqeUupFHhDFg+/1V4+QgBIAZLF9YwLPrAtTbnraJtQwkPGX8tEE0+uQU6pddZU xJcc2Pl7b1UG2kpSxkT3avhOHtxrWa/nVXdKyFnRilkmzOXvddSAnezTYGruT2wF 2wxl10oKVdZMQRnplqaPpCFpdhbBuTHUXbY1rd625+K4dRidaTpVSjJ4OpnlWauH 5vxqH5Ho1TkV0DqDvbdEVUUF4QujbnMOLh2l+W2ePy2OuVojBOdV44rC4cXCBevx f2RvFco/X/Q0Q0K4CDgcPSEJgxkAW/LvCDSwmy6bmM9d9DwCEVftOWGNEcXKlkL9 YwBTLhXpzjmFbBSEPACdpFKRRIuKIcG30vVoRNd0Z0T9a6cJEoaeo78gECiz4yIn Bw2Zj4YVrU7qAJYdXmfH11mIrBrAz1OxJ1akWu4sSl/wdEinZZQ= =3XJg -----END PGP SIGNATURE----- --Sig_/Ezg3xPca+1bliHFynUjPX5R-- From xen-devel-bounces@lists.xenproject.org Fri Jun 16 15:54:24 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 16 Jun 2023 15:54:24 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550302.859294 (Exim 4.92) (envelope-from ) id 1qABm3-0004W9-Pd; Fri, 16 Jun 2023 15:54:07 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550302.859294; Fri, 16 Jun 2023 15:54:07 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qABm3-0004W2-MX; Fri, 16 Jun 2023 15:54:07 +0000 Received: by outflank-mailman (input) for mailman id 550302; Fri, 16 Jun 2023 15:54:05 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qABm1-0004Vw-SF for xen-devel@lists.xenproject.org; Fri, 16 Jun 2023 15:54:05 +0000 Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 04d43ccd-0c5e-11ee-b232-6b7b168915f2; Fri, 16 Jun 2023 17:54:04 +0200 (CEST) Received: from [192.168.1.143] (unknown [151.35.105.218]) by support.bugseng.com (Postfix) with ESMTPSA id 20F854EE073A; Fri, 16 Jun 2023 17:54:03 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 04d43ccd-0c5e-11ee-b232-6b7b168915f2 Message-ID: <3499c107-ea0d-3a74-4278-86879a9d80e7@bugseng.com> Date: Fri, 16 Jun 2023 17:54:02 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.12) Gecko/20050929 Thunderbird/1.0.7 Fedora/1.0.7-1.1.fc4 Mnenhy/0.7.3.0 Subject: Re: [XEN PATCH] docs/misra: document the C dialect and translation toolchain assumptions. Content-Language: en-US To: Stefano Stabellini Cc: xen-devel@lists.xenproject.org, consulting@bugseng.com, Andrew Cooper , George Dunlap , Jan Beulich , Julien Grall , Wei Liu References: From: Roberto Bagnara In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit On 16/06/23 01:26, Stefano Stabellini wrote: > On Thu, 15 Jun 2023, Roberto Bagnara wrote: >> This document specifies the C language dialect used by Xen and >> the assumptions Xen makes on the translation toolchain. >> >> Signed-off-by: Roberto Bagnara > > Thanks Roberto for the amazing work of research and archaeology. > > I have a few comments below, mostly to clarify the description of some > of the less documented GCC extensions, for the purpose of having all > community members be able to understand what they can and cannot use. >> + * - Arithmetic operator on void type >> + - ARM64, X86_64 >> + - See Section "6.24 Arithmetic on void- and Function-Pointers" of GCC_MANUAL." >> + >> + * - GNU statement expression > > "GNU statement expression" is not very clear, at least for me. I would > call it "Statements and Declarations in Expressions". Agreed. >> + * - Empty declaration >> + - ARM64, X86_64 >> + - Non-documented GCC extension. > > For the non-documented GCC extensions, would it be possible to add a > very brief example or a couple of words in the "References" sections? > Otherwise I think people might not understand what we are talking about. Ok. >> + * - Incomplete enum declaration >> + - ARM64 >> + - Non-documented GCC extension. > > Is this 6.49 of the GCC manual perhaps? Indeed, on a second reading, I think that section covers also the case of an enum declaration that is never completed in the course of the translation unit. >> + * - Implicit conversion from a pointer to an incompatible pointer >> + - ARM64, X86_64 >> + - Non-documented GCC extension. > > Is this related to -Wincompatible-pointer-types? In my opinion, this does not specify what the result of the conversion is. >> + * - Pointer to a function is converted to a pointer to an object or a pointer to an object is converted to a pointer to a function >> + - X86_64 >> + - Non-documented GCC extension. > > Is this J.5.7 of n1570? > https://www.iso-9899.info/n1570.html This says that function pointer casts are a common extension. What we need here is documentation for GCC that assures us that the extension is implemented and what its semantics is. > Or maybe we should link https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83584 My opinion is that this might not be accepted by an assessor: if I was an assessor, I would not accept it. >> + * - Ill-formed source detected by the parser > > As we are documenting compiler extensions that we are using, I am a bit > confused by the name of this category of compiler extensions, and the > reason why they are bundled together. After all, they are all separate > compiler extensions? Should each of them have their own row? Agreed. >> + - ARM64, X86_64 >> + - token pasting of ',' and __VA_ARGS__ is a GNU extension: >> + see Section "6.21 Macros with a Variable Number of Arguments" of GCC_MANUAL. >> + must specify at least one argument for '...' parameter of variadic macro: >> + see Section "6.21 Macros with a Variable Number of Arguments" of GCC_MANUAL. >> + void function should not return void expression: > > I understand that GCC does a poor job at documenting several of these > extensions. In fact a few of them are not even documented at all. > However, if they are extensions, they should be described for what they > do, not for the rule they violate. What do you think? The point is that we don't know what they do. We might make observations, and our observations might substantiate what we believe they do. But this would not allow us to generalize them. > For example, in this case maybe we should say "void function can return > a void expression" ? We can certainly say that, but this might not convince an assessor. One possibility would be to submit patches to the GCC manual and see whether they are accepted. >> + see the documentation for -Wreturn-type in Section "3.8 Options to Request or Suppress Warnings" of GCC_MANUAL. >> + use of GNU statement expression extension from macro expansion: >> + see Section "6.1 Statements and Declarations in Expressions" of GCC_MANUAL. >> + invalid application of sizeof to a void type: >> + see Section "6.24 Arithmetic on void- and Function-Pointers" of GCC_MANUAL. >> + redeclaration of already-defined enum is a GNU extension: >> + see Section "6.49 Incomplete enum Types" of GCC_MANUAL. >> + static function is used in an inline function with external linkage: >> + non-documented GCC extension. > > I am not sure if I follow about this one. Did you mean "static is used > in an inline function with external linkage" ? An inline function with external linkage can be inlined everywhere. If that calls a static functions, which is not available everywhere, the behavior is not defined. >> + struct may not be nested in a struct due to flexible array member: >> + see Section "6.18 Arrays of Length Zero" of GCC_MANUAL. >> + struct may not be used as an array element due to flexible array member: >> + see Section "6.18 Arrays of Length Zero" of GCC_MANUAL. >> + ISO C restricts enumerator values to the range of int: >> + non-documented GCC extension. > > Should we call it instead "enumerator values can be larger than int" ? Yes, I have rephrased that entry. >> + * - Unspecified escape sequence is encountered in a character constant or a string literal token >> + - X86_64 >> + - \\m: >> + non-documented GCC extension. > > Are you saying that we are using \m and \m is not allowed by the C > standard? The C standard does not specify that escape sequence, so what is done with it, in particular by the preprocessor, is not specified. >> + * - Non-standard type > > Should we call it "128-bit Integers" ? I have rephrased this as suggested by Jan. Thanks for your review. I will submit a revised patch on Monday. Kind regards, Roberto From xen-devel-bounces@lists.xenproject.org Fri Jun 16 16:08:55 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 16 Jun 2023 16:08:55 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550309.859304 (Exim 4.92) (envelope-from ) id 1qAC0H-0006ba-03; Fri, 16 Jun 2023 16:08:49 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550309.859304; Fri, 16 Jun 2023 16:08:48 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAC0G-0006bT-TM; Fri, 16 Jun 2023 16:08:48 +0000 Received: by outflank-mailman (input) for mailman id 550309; Fri, 16 Jun 2023 16:08:47 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAC0F-0006bN-Gj for xen-devel@lists.xenproject.org; Fri, 16 Jun 2023 16:08:47 +0000 Received: from esa5.hc3370-68.iphmx.com (esa5.hc3370-68.iphmx.com [216.71.155.168]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 1015ac96-0c60-11ee-8611-37d641c3527e; Fri, 16 Jun 2023 18:08:43 +0200 (CEST) Received: from mail-bn8nam11lp2169.outbound.protection.outlook.com (HELO NAM11-BN8-obe.outbound.protection.outlook.com) ([104.47.58.169]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 16 Jun 2023 12:08:36 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by DM6PR03MB5052.namprd03.prod.outlook.com (2603:10b6:5:1f2::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.29; Fri, 16 Jun 2023 16:08:26 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606%4]) with mapi id 15.20.6500.029; Fri, 16 Jun 2023 16:08:30 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 1015ac96-0c60-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686931724; h=message-id:date:subject:to:cc:references:from: in-reply-to:content-transfer-encoding:mime-version; bh=XcrUm6zFccncdK8W5vds6X7HaE8nBIvjaXpviGg7bmM=; b=VQ7yVFbDtT8rUHAD1c4oT8Yk7AfFw+DugnuSDoWC1LyiNgeggLqxya5g a092uquhEUoQZSaSKu4+6fFq4qtRgy96JNQ0ybCleKlp27wJRnW3jv9X7 tbDDhD1NGAd0KHQco0hoC2bEFHpi+dhYz3tFDcsYLZXD61oa4TasWq8Zk k=; X-IronPort-RemoteIP: 104.47.58.169 X-IronPort-MID: 111836639 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:Ptk+rqDCbyCDuhVW//riw5YqxClBgxIJ4kV8jS/XYbTApG5w0zNWm GFNW2CHOP2KZGvxKt5waY+woR4PuJHdn4NmQQY4rX1jcSlH+JHPbTi7wuUcHAvJd5GeExg3h yk6QoOdRCzhZiaE/n9BCpC48T8nk/nOHuGmYAL9EngZbRd+Tys8gg5Ulec8g4p56fC0GArIs t7pyyHlEAbNNwVcbCRMs8pvlDs15K6p4G1B4ARkDRx2lAS2e0c9Xcp3yZ6ZdxMUcqEMdsamS uDKyq2O/2+x13/B3fv8z94X2mVTKlLjFVDmZkh+AsBOsTAbzsAG6Y4pNeJ0VKtio27hc+ada jl6ncfYpQ8BZsUgkQmGOvVSO3kW0aZuoNcrLZUj2CA6IoKvn3bEmp1T4E8K0YIwxv5IKlFo9 6EiBmoVczqnuOKUxuj8Vbw57igjBJGD0II3nFhFlGicJ9B2BJfJTuPN+MNS2yo2ioZWB/HCa sEFaD1pKhPdfxlIPVRRA5U79AuqriCnL3sE9xTI9exuvTm7IA9ZidABNPL8fNCQSNoTtUGfv m/cpEzyAw0ANczZwj2Amp6prraWxHOgBtxJRdVU8NZ0slGa+mAfVScwdn+hn6f+g3KzC91Af hl8Fi0G6PJaGFaQZt75VhOQqXOcsBoRHdZde8U15QaXxaeS7xufAmEcZjVFb8Eq8sQxQFQC1 FWEgtfoDjxHq6CORDSW8bL8hSO/P20ZIHEPYQcATBAZ+J/zrYcrlBXNQ91/VqmvgbXdGz7qx CuRhDMjnLhVhskOv5hX5njCijOo45LPHgg841yOWnr/t10oIom4e4av9F7Xq+5aK5qURUWAu 35CnNWC6OcJDteGkynlrPgxIYxFLs2taFX06WOD1bF6n9hx0xZPpbxt3Qw= IronPort-HdrOrdr: A9a23:BOaNX6hxdnf5JJBByFekvpHzunBQXh4ji2hC6mlwRA09TyX5ra 2TdZUgpHrJYVMqMk3I9uruBEDtex3hHP1OkOss1NWZPDUO0VHARO1fBOPZqAEIcBeOldK1u5 0AT0B/YueAd2STj6zBkXSF+wBL+qj6zEiq792usEuEVWtRGsVdB58SMHfiLqVxLjM2YqYRJd 6nyedsgSGvQngTZtTTPAh/YwCSz+e78q4PeHQ9dmca1DU= X-Talos-CUID: =?us-ascii?q?9a23=3A33V0lGiiINyAAPkXUlXT0fAHMDJuTmXi50f2IRK?= =?us-ascii?q?CJzxxVZexdl+y/vkjjJ87?= X-Talos-MUID: =?us-ascii?q?9a23=3ATv+DYgw2cRJ8n0GmcfU+KL66QAOaqLqcBEkxnZl?= =?us-ascii?q?bge+nETZOZXCUsDnnTZByfw=3D=3D?= X-IronPort-AV: E=Sophos;i="6.00,247,1681185600"; d="scan'208";a="111836639" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=PyjkNa/JFSh5+pIW6IEFvXBrLctq8VaDki/JU4Q5xltaTPpV+AtKBEkTGhKa14imFv9X3zgoAeIKobUw70ST8fT3ApAvAF9DeeS6y/4rR6AReb/O4ZN10LkDRZ71tFX1SQZNIHne1aNF/qXhWmivqf+7PugjFmwtqqT0uHicj64StZCkAH7DzjWKzWmwPOTGiP2LnSwaEaMSug1EK+jRoUYqWu4uWL4+xh3nnvZn8yVHEBAwh5iRGrhPb2sok5Ni8TZJ46eSVZuZFY030JjSTHSBSU96zkBPtoEIeKP0EY959CzTncoyx5Jqyt5Q26VC7LjdPyeKUSUb89RYvaSg1Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=XcrUm6zFccncdK8W5vds6X7HaE8nBIvjaXpviGg7bmM=; b=N7iDi7Zk9nvN1rOIwERmMo5XvH0vilt+JIgcysicdAHquU9YB8fqmR0oqpsRPnWclTy0U5AR9WKBLhBCEfh3T7c/IZP7GJkKsRtTiAEtEMYhIHfCd3NrTgsxAEBilgLQVTFvMgyMsHYkQ+UBGcpXnXbn7jaREjmiwLtn5CFIhgPf505atFKHeHHKeBnT2NDU7bMd0eY8KAA+9Wc6DTvVBmRMsqz6mNIuvDkt8JT9FiucXbXT+2maF0d1zzzN9gl9qbbbpMAWr4zwxslehzLdTAZz+FsfZh0cqk3Tr0R725HVC9PraSS04QnJ7A9vYAuTvkwRjBbQRUttALiHLYXI/A== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=XcrUm6zFccncdK8W5vds6X7HaE8nBIvjaXpviGg7bmM=; b=VAbkxxNqsuP8cTCCLjnJoSQaCecR23wVgyH/hLxazF/vVyug7GWAk4m9+T2tYl0nmE1r7sIOAXdCUX8UzmROvmkAjEF6uF5tW9PEBTSpGhasv14bLixFpq1ANhL7v29Fzth7Qh/u4M+6A1eZCDN1xYJ6tBs1THlItKe6cOBXN2o= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: Date: Fri, 16 Jun 2023 17:08:25 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: xentrace buffer size, maxcpus and online cpus Content-Language: en-GB To: Olaf Hering , George Dunlap Cc: Jan Beulich , xen-devel@lists.xenproject.org, Juergen Gross , George Dunlap References: <20230530095859.60a3e4ea.olaf@aepfle.de> <578d341d-0c54-de64-73e7-1dfc7e5d7584@suse.com> <20230530220613.4c4da5cc.olaf@aepfle.de> <1b99e58d-338c-02af-eeab-00d691337d00@suse.com> <20230616134708.6b3c6964.olaf@aepfle.de> <20230616173717.3f264151.olaf@aepfle.de> From: Andrew Cooper In-Reply-To: <20230616173717.3f264151.olaf@aepfle.de> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: LO4P123CA0256.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:194::9) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|DM6PR03MB5052:EE_ X-MS-Office365-Filtering-Correlation-Id: 28f6d725-924d-41b7-9fb0-08db6e83ece5 X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: m2AZj0T4Q4g4zkAerSbfU/aFv9QmiT6cjXPfAQUk1CjmXuJHHBj3MTB9qoGF1/LgwQF7mkAoIyM+uW0GByyKtmBVrkm0EDG6YPRsEscHIqsWug3tRAkFjcu2QU50Vr4OMpm2XXH/ZoNewvJ9cpFLLWl/QHfgNZSqzUvGnCD+EseuD9LWB6vupG75lw58t+tnwx4mGcC37E7jiw0oYlvSqtzTP3xVcNsKHFzKA/8uJ7ybYZwaFfYsZeUX2tvZyWY34mekTJJfgO10N1cVqZlKVCJ/gfnvWFaAPWMGFa2lvJ+ftlwckukHopF0Dkp63e5tayOPIW0S03GGgbVwnTg49ZC50saxRhlJpnSEyXb915PSq7yVQtShaYrHZ4ylCFsEfhTSMeg3tEu8FeqZWrDJq3g4XwaiYKPvQwBwaXif+8ngnqf6qb5/2z6Du8rrRmam/3eWhJM3KKmKEqXbpWhR4QdpajeWVVju8e0DlYXQjJxusbGtOwsBf9kdIUP6HkpWy9h7jYGwGiJoHwPLbjKmGOd2Rku6uAhV/DP7RgbCM/2Ml3ebLxmqAUHUADgR2u0duillE5yEeUgUM9aFyVxYyDTDHWzLzJSBaGUwkX6ACZnommwuSITkuqxYWXsRG+25dki38PZAz/roU5QE4hCUGQ== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(396003)(39860400002)(366004)(376002)(346002)(136003)(451199021)(38100700002)(2616005)(82960400001)(83380400001)(2906002)(36756003)(8936002)(41300700001)(6486002)(8676002)(316002)(6666004)(5660300002)(110136005)(54906003)(31686004)(4326008)(66556008)(66946007)(478600001)(66476007)(86362001)(53546011)(6506007)(186003)(107886003)(6512007)(31696002)(26005)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?UExFajA1M3pRRjg2dndNTlFOOVpaSnZuZXV0S3piSVgwSFdKNHNxc25TWm5o?= =?utf-8?B?eHZFQ3JidXRkUC9OeWhBN1hiNXpaYm9CeWtNRDlJbHBFOExnTG80S3EwaCtx?= =?utf-8?B?QjlYaEFQL0V0RURZYUlRYXl5dGx3QkkxSkJhVThQV3BRNFpIZW0wZ3RnMnhE?= =?utf-8?B?Z1U5ZENyRExXMjhFM2VIVEVia2VxTStsaVZBaytGa3I4K0xhNDRlVlh6b1RP?= =?utf-8?B?Y3dQK3NiQVpwanBYS1paREw1ZEx4NEtES3A5djYzeWZIcCtVMDF0ZDBSUXMv?= =?utf-8?B?aGorTG5VMUhDOWFTWU05L2Fkb3g3RDJTb281ZnN5VVlxRFpSQ0c1b0o0ZFMx?= =?utf-8?B?Q0duUElZVCs1cVNoMlcwWUkxUUtIMVdqTGViWEhHQ2s3djNJZHQ4M2FIdzhD?= =?utf-8?B?eXRzRnZSc1dMa01iNkZob3NwV0VLUUxjSURMNzZqd1V3OFdaeHRqVm9XVFVo?= =?utf-8?B?MXhhdVhmU1JGc3BGNDdja1RpWTl4N0RGYWRJQitSUDZkOEkydXA0N3d4RVZm?= =?utf-8?B?VTJlbkJaOGpoOXovYkV2NVJaSU1nMGtjd1hMUU9RRVBndUcrenBXQnZmMzJO?= =?utf-8?B?em5FeWVTR3VmQkZmcXNaY25vbWZLSGx3WDMvQ0hLaFV0WEFlWGVhWi9HbVE0?= =?utf-8?B?MUR1NHg2RkhPSkFsNjZkQnE5cUJLSTJnNWlGL2tNS1o4bGgrRVg2SlBRZWI3?= =?utf-8?B?dnN4MTZBSkt1Q2lucExweDExd3pFL1Q3Y29jMGZYdEZZbkxITEVBb0dsdUFF?= =?utf-8?B?NHJZZGVXMG0wOHJnbEZWS0JGTUt6WlZDRURINHF0VEhNVzlYOGlGcXlzWlFX?= =?utf-8?B?S0w3Ui9rc1RsQ005ZmprcW53d2xSTnUzRGd3bzhUTjFCOUIzT0xuL1hNb3VN?= =?utf-8?B?REZwTEZOS3FjbGlVYUZJdTgxQ0g3TTU1dUZ0R1NMYVNRd3J4ZllhalVqMEpj?= =?utf-8?B?UTg4aHZwaWRaQU5VQ2VyOHJwbXJTeEI3OHNTNC9NYjc4VFlFNDgrMXdFZWtW?= =?utf-8?B?aXh3T1NNY2JhaUtiemFJdm1lem9GWlhZTnBhRlA0THJNdENiWE9HbXJiMUVh?= =?utf-8?B?WXlzTGNja0dhNmlRT05jL25oWHZPTklIb2xxRHVWbUJ1ZFhwUmJCTG9WQitu?= =?utf-8?B?am5KSUt0VHNydWtBSFVCdkUxcFQyZHR3ZmUvZzQ4NElzRWVnQmZlUnVnbWZ6?= =?utf-8?B?Rnc5SCt0R0gwVGk4QzFiRTFrak9nbVdoTnFFcENTdExwZFZuRzNqekxFUDhS?= =?utf-8?B?QW11aXgzeldRRDN3Q2dMeG1KSFg3RjJ6T0tqRXBjRmhoKzErNVNRL3lqejhl?= =?utf-8?B?TERZUU9vTWxZRm1qU2VHeDZUT2IvaUt2WWY0a2htbVNPVVFnNGhTN0hmSGhv?= =?utf-8?B?SVZqTXBMMTR3bU1YdjJIVlVHWTJZR2hsTWZ1ZlBTR0VMTHRaeXdrVDI1UlN1?= =?utf-8?B?VjkramZDaU1lS05ESmhPREE1bDdrZDhhVGkzb0ErODVYM0lVK2pUWUMwUnVR?= =?utf-8?B?dVExNElmWWlPc1JjMFNUeFZFU2Ixa2o2KzRkUEZUdmJNYmRzajVrMW5scFEx?= =?utf-8?B?VVN0TjUvZk1PaDFiYlhwU0FzVlpSdm9OR3hoalcxWjV5Y05xd2JLWm5Bd1U1?= =?utf-8?B?RCthMTFmSG5PSUd0STZleXM4SHk4Sis2NXpoMXNFbmxaT0pDZ1d2RVAvNGpq?= =?utf-8?B?WTZVelhhbTZsNEpFUW5jamErVzNVSmtpK1JhRHFpWlFyeFVGaTVGOGJ5UTNL?= =?utf-8?B?MDF1WCtyTlFPS1BLbUhWOWtNRFRYaTZkRGoyeUpDN3FyNkRxU0Z3Q0k3VlRj?= =?utf-8?B?NzM0aWpralJRL3pYQmIvNFZTaWZLZzhrbEFrR0dLOVZxY1Q3MXZqb0ZlZGRW?= =?utf-8?B?cU1XbzdGcXUwNzNNOFBjUkNUdlc5ZHRqYWh6d3NFS2FnWU4vT1NWY0ZYbXE4?= =?utf-8?B?UnBtSlZuOUQrN3d3Q1Ztdi9BZ2V5b0xibTFwYTJpYk5La2x2K3JlbEhzTit4?= =?utf-8?B?ODdiSTJ0UGppM2lZYTRVTy9VR01meFJFQ25qS3h6UVc4SjBHcTdhUElOZkpa?= =?utf-8?B?SWpWazdBQnlkQ29rSWd3Vk1yMXc0b29GQ1VVdzZBZzNaaW50QTMxOWhOdG5y?= =?utf-8?B?KzJjNVhzQVIrSUJLcnp3NnpaYjd0VGRUSDZKZU1ERlF3U0dOeVlJY091SVVl?= =?utf-8?B?ZHc9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: YlzNWfs2VkAwLpVhyyfTHcBFosG9E8w0H70gi/WLUbGlLhqAgCNXsBleYyXQmuPJcbj33zokY87M636j0BBf71bNrSTLlunQWeCpzfgNFD2XFUatmdyVsDHrkC98fVVnMTPM61t3M9deznXRc1KrMlfCzBQqnwhMzoy0gwduFVviyEjHgkUwtcXhwpqeE4TKIVx8aOvWedsEpZmDq4PqFv9kIGA00eNPneyMqwyzonC/S/dLaD2KSndpJACo50b+ffldkXfMWRkloIiqCtjSrt/LCmnNG4NSYZ89aQtkZ1Z0EKJqsKHqkj/Mi8MFuEMUea5h2Oveko8hwiswUlxh/RNQB922/OVO18w1XBUcO6zPjyoFC4v68TlzV2utQThIvf5d9yJAoOwbHE7UWpQU9YV0QOeKmV5dJL1GP96OQoYBj7w6mi76aXYE0pqee/1nRa+ihT5iQ7s9TDT+nml3SDqchLx8T/FRCFWiEKeGwXjcESOIq9FUDa+hMPuIPmGyIR7TNQhP3WeWX3A6A3XQJTgZNLuBBB6sD28jh+UMnocuHFTlKd1WyuHeYTPFo+VpKUCTDoRfKSDHAeOqidfmdvJWjKSJNA/AyR7iheKXUiOFL/PLxir2Zgas98UTD7hRxxbt86OkXEfz+5GuXXLZShOyig78/+Ya56utD45RET/tUKBpmB6BvgymeildbAh+4KUMSPvmNbe0JX34Y7lq4Cx2nL6faltxheICcdDUwaNBMFsEETJ+2mN6JGKW0NLUFai18AaFbC70e542FNWrVHctq8Nl57nElUmiXR0x4jlTbTRU3XdwvQKXU6QU0M7xoCzgJOxCTICddHvaRxX5sKBCM/EGS/ulgUqmfs3IXrE= X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 28f6d725-924d-41b7-9fb0-08db6e83ece5 X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Jun 2023 16:08:30.0731 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: YcZfOr7dL6Qxr6HcJcVXkKXKCLY9cH/oye2b8KJ/3R+kOSVhDKQQpysIimQcujMBu4GTWDKNsFEJy6JjUQl+0hTDmaOaVOWRuO6k6sZo7MA= X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR03MB5052 On 16/06/2023 4:37 pm, Olaf Hering wrote: > Fri, 16 Jun 2023 15:22:24 +0100 George Dunlap : > >> I agree; the clear implication is that with smt=0, you might have >> num_online_cpus() return 4, but cpuids that look like {1, 3, 5, 7}; so you >> need the trace buffer array to be of size 8. > I see. Apparently some remapping is required to map a cpuid to an index > into the trace buffer metadata. The xentrace mapping interface is horrible, and makes a lot of assumptions which date from the early PV-only days. If you want to improve things, we've got all the building blocks now for a much more sane interface. XENMEM_acquire_resource is a new mapping interface with far more sane semantics which, amongst other things, will work in PVH guests too. If we specify a new mapping space of type xentrace, using cpu id's as the sub-index space (see vmtrace as an example), then you'll remove that entire opencoded mechanism of passing mfns around, as well as reducing the number of unstable hypercalls that the xentrace infrastructure uses. I can talk you through it further if you feel up to tackling this. ~Andrew From xen-devel-bounces@lists.xenproject.org Fri Jun 16 16:30:39 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 16 Jun 2023 16:30:39 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550316.859314 (Exim 4.92) (envelope-from ) id 1qACL6-0001YG-P7; Fri, 16 Jun 2023 16:30:20 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550316.859314; Fri, 16 Jun 2023 16:30:20 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qACL6-0001Y9-Ld; Fri, 16 Jun 2023 16:30:20 +0000 Received: by outflank-mailman (input) for mailman id 550316; Fri, 16 Jun 2023 16:30:19 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qACL5-0001Y3-85 for xen-devel@lists.xenproject.org; Fri, 16 Jun 2023 16:30:19 +0000 Received: from esa5.hc3370-68.iphmx.com (esa5.hc3370-68.iphmx.com [216.71.155.168]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 10d0b001-0c63-11ee-8611-37d641c3527e; Fri, 16 Jun 2023 18:30:13 +0200 (CEST) Received: from mail-dm6nam11lp2170.outbound.protection.outlook.com (HELO NAM11-DM6-obe.outbound.protection.outlook.com) ([104.47.57.170]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 16 Jun 2023 12:30:11 -0400 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) by SJ0PR03MB5949.namprd03.prod.outlook.com (2603:10b6:a03:2ad::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.29; Fri, 16 Jun 2023 16:30:08 +0000 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::ab2a:a298:bacb:db47]) by SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::ab2a:a298:bacb:db47%2]) with mapi id 15.20.6477.037; Fri, 16 Jun 2023 16:30:07 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 10d0b001-0c63-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686933013; h=date:from:to:cc:subject:message-id:references: content-transfer-encoding:in-reply-to:mime-version; bh=F7Ol4U2NttDFEbRiWSNpOsk0GcNQpciuOlqRqqEc61s=; b=dZ24t3BoaXz9Zump/LAQHcXLNl+ULjJNTZd4JF5eM1B/SYCtUKfFoKuz 9qaxhgh+GFjfDJAUpILXLH78BeyVSJOKWcVS79eVf4g6kB28CZLpG17Kf 6kpU8cHLF9pUvDOcPZhmPhnEahPUvnJCIITMbCr9FLsHftXlB132oE8lD s=; X-IronPort-RemoteIP: 104.47.57.170 X-IronPort-MID: 111838852 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:Y7iHw64fQ8H0zNuVK2A6eQxRtKrGchMFZxGqfqrLsTDasY5as4F+v jcbW26DM/jYamajeN5za4yz9UtTup+Ez9djGgRprC5hHi5G8cbLO4+Ufxz6V8+wwm8vb2o8t plDNYOQRCwQZiWBzvt4GuG59RGQ7YnRGvynTraCYnsrLeNdYH9JoQp5nOIkiZJfj9G8Agec0 fv/uMSaM1K+s9JOGjt8B5mr9lU35JwehBtC5gZlPa4S4geE/5UoJMl3yZ+ZfiOQrrZ8RoZWd 86bpJml82XQ+QsaC9/Nut4XpWVTH9Y+lSDX4pZnc/DKbipq/0Te4Y5iXBYoUm9Fii3hojxE4 I4lWapc6+seFvakdOw1C3G0GszlVEFM0OevzXOX6aR/w6BaGpdFLjoH4EweZOUlFuhL7W5m2 dZJCxQXSDO/2Ofs7+ygdthUtM48M5y+VG8fkikIITDxK98DGMmGb4CUoNhS0XE3m9xEGuvYa 4wBcz1zYR/cYhpJfFAKFJY5m+TujX76G9FagAvN+exrvC6Ok0ooj+CF3Nn9I7RmQe1PmUmVv CTe9nnRCRAGLt2PjzGC9xpAg8eWxHqrA9JCSefQGvhC2QfP30MBKSEsb1aakP6mpA2OBNRAN BlBksYphe1onKCxdfHDWBm/rG+BrwQrcdNaGO0n6ymA0qPRpQ2eAwAsXjNHLdArqsIybTgrz UOS2cPkAyR1t7+YQm7b8a2bxRuVPSUWNmYEaTUzZA0J+cT4oIozgxTMSf5uCKewyNbyHFnYw TqHsSw/jLU7ltMQ2uOw+lWvqy2ojojESEgy/Aq/dmC46gJ0Yqa1aoru7kLUhd5bN5qQRFSFu HkCmuCd4foIAJXLkzaCKM0VFaytz+aINnvbm1EHInU63zGk+nrmcYUO5jh7fR5tKpxdJmevZ 1LPswRM4pMVJGGtcaJ8f4O2DYIt0LTkEtPmEPvTa7Kif6RMSeNOxwk2DWb44ownuBFEfX0XU XtDTfuRMA== IronPort-HdrOrdr: A9a23:rfx25KCVH4wQrSPlHejasseALOsnbusQ8zAXPh9KJCC9I/bzqy nxpp8mPEfP+UMssbQb6Ji90KnpewKgyXcH2/hkAV7CZninhILMFu1fBOTZskzd8kHFh5VgPO JbAtpD4b7LfBtHZKTBkXmF+r8bqbHpntHK9IWutgYUcexzUcFdBkVCe3Wm+yVNNUx77PECZe ahD7981kSdkAMsH7uG7xc+LpL+Tunw5dbbSC9DKw8s7QGPiT+yybjhDhSU5BcRVDtT3awv6y zgnxbi7quuiuq8wBPHzWPfhq4m/efJ+59uFcaIgsgQJi7Njh+yZIN9c7eevDYzydvfjmoCoZ 3hsh0kN8R252jwenivoRzx/gH83DEl+xbZuDilqEqmjd3yQTo7D8ZbvJleYwv941ctu9ttuZ g7u15x+qAnVy8pU0zGlpn1fiAvsnDxjWspkOYVgXAaeYwCaIVJpYhax09RGIdoJlO31Ghyet MOMOjsoNJtNX+KZXHQuWdihPa2WG4oIxuASk8e/uSIzjl/hhlCvhgl7f1auk1F2IM2SpFC6e iBGL9vjqtyQsgfar84LPsdQPGwFnfGTXv3QTKvyGzcZfM60k/22sDKCfQOlb6XkaUzvccPcU H6IQJlXW1bQTOiNSTB5uwIg0XwqKPUZ0Wr9igU3ekPhlTGfsugDcVYIGpeyvdIk89vRPEzE8 zDTq6+I8WTdVcGSrw5hDEXrfFpWDcjuDp8gKd1Z7vJmLOXFmXn29arOco7DICdWgoZZg== X-Talos-CUID: 9a23:B6eYIWMUhzcH0e5DdAM212oOPOMZLXiH4ynLH36AO2x2V+jA X-Talos-MUID: 9a23:8RtT5gaL7DItIOBT7mWwnR5wFftS2amPOUcSv9Y25M+bKnkl X-IronPort-AV: E=Sophos;i="6.00,247,1681185600"; d="scan'208";a="111838852" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=cqaobjiDlLuemh4ymaW7ypZ3HIpQiVj/hGyDCbiYmc6oYa8iXpIsZj4ZYGIMoVxDZp8Ib4KedWvMlkX4J1In0DE1KkFWaf4O91adPkt/yKmkmNITUaCmRJOnt2BQfsIu3TlNJuRXd1PIIUgiQp1RZcpicFsThb6SEe+o+d+MD7/lrn+Yfs0C6Hw6g+tKZEUR+Nhd30BCpAqiyMB6ak16xZxpVGeDza/RET3ZaXG9I/AS7+sazreyEyEpiX2OnTV08Gkt8aWFrhKLMQg5kO2KSSYyk8MiM2hi6omDM7wqCCSbgaWdmiZfw8XeTuZnso459e5bTOC81VSz9xsu+zpC8g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=A0RUBcKKCpumDwz/osAT0XjKKty3iRAr0yaziCsPFbA=; b=AniQp3Q9rTRfpkStvREDzVDGRjU5RirUDvvPnqqWxR/RjTF+t2u0vvciWyPu+nsyKwb9Gfm5U3XEuNPpaXXfJYo3uvxo7fz9JvJvO08FmWwV28YU5lBQyC8pSKxlDbdtDc7zcPKeQYE4zr/8T1lyCwRt2XJqPqJbpeOgemi7dHgrXJunyzcYGynGZX+hXDKJPQPWZHb71iMoPHZU2l5e2aLK55+65JX8sYaSyZvWJYbA3NnpVzepFrHQUWz/Hv569EmNR0YrFZtFx8rX/x01he0dVa5UmdA7aVlkdFMbL6Ec3ivREBXaLy4TLwsg1uiNKiWvMs8/S6ThZZiFmQS4dA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=A0RUBcKKCpumDwz/osAT0XjKKty3iRAr0yaziCsPFbA=; b=miAzT9jmxeSprsj3vMG+PifMIQ9C+wQw0QNivTfN14DJi5AB1qWkG/ZhnCH54N1y/r5blvvm7vkMl84v3tkVdb20TiGl7HwVu1GhkS51+45tj9IvRQ7xg9I3OSU1NOqCWPiuS46tbWalc0v0u8zBacTASOAj+X8V5Ao85r/hP3U= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Date: Fri, 16 Jun 2023 18:30:01 +0200 From: Roger Pau =?utf-8?B?TW9ubsOp?= To: Volodymyr Babchuk Cc: "xen-devel@lists.xenproject.org" , Oleksandr Andrushchenko , Jan Beulich , Andrew Cooper , Wei Liu , George Dunlap , Julien Grall , Stefano Stabellini , Paul Durrant Subject: Re: [PATCH v7 01/12] vpci: introduce per-domain lock to protect vpci structure Message-ID: References: <20230613103159.524763-1-volodymyr_babchuk@epam.com> <20230613103159.524763-2-volodymyr_babchuk@epam.com> Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <20230613103159.524763-2-volodymyr_babchuk@epam.com> X-ClientProxiedBy: LO6P123CA0012.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:338::18) To SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|SJ0PR03MB5949:EE_ X-MS-Office365-Filtering-Correlation-Id: f221e0f3-5be8-4c8f-21a5-08db6e86f1f7 X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: RRcIFlz+j0XiK44iDduBDYuDFBu2EKlW6zIh5w2k8QbahH62JQyuXU69PPkH8Wfypqi3uKb3PTLzVz1184aP/EM6XBv1mfpi2jtjxGTT5aFik96i0l7501w9Dz4Tv+PWfAlef0ZiAnJv9ISIk9jYG18YAMhQ0GdEUMnTCN6aFsNi1AeyA7PHbe9W853Q1F8MMZcXsjo8eQY90TitRTF7FGEBvNe+MwslAw4/ZWit7I50YH49MFXXvn7nOIBMcKM/x4xuz2/GVkxPqkicy9Pv5FNuUDCJKDHXs6I11Gh1hBwXNC9maYiWf1aNy2EtwjQhmEOAoTsKHK7z85mU/IJys/0Ouc17uQeR+wHclIc7hqSjqVTdEXS9VM8j1cx6c2zdPMOTqC4blPCWwp+EaZdZ28dWozMYVjLgD8u6NEIJNMubx4/72p5k6yvhPfEgsSVH0TO1TsP8XqTFbuuNfwxkvudXS0sryKslH3W3a0dgKGI9PsoyJCdQGW0j1ifdyDE5tz9wgotF+J5RNZlxGedjd+MHQQNpYWRG3p/8FDsu22e+YIl8O7MqxJ4Au+i6m9iH/SJ70APrurh55yToOAssB1jU2uTWxCLE6UiDYpJ4SqA= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(136003)(346002)(376002)(366004)(39860400002)(396003)(451199021)(54906003)(5660300002)(8936002)(41300700001)(6486002)(8676002)(316002)(966005)(6666004)(186003)(66899021)(6506007)(9686003)(7416002)(26005)(30864003)(6512007)(508600001)(4326008)(66556008)(6916009)(66476007)(66946007)(86362001)(82960400001)(38100700002)(83380400001)(85182001)(2906002)(309714004);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?QVpiREZtbVlMbHFuRGd3bWRFN3ZLcFpIV0l5WTVISDlSNlZxTVFuZHhPV1hF?= =?utf-8?B?ODlzbUhsMXU4bjVvVGZuRzRDZVpsb2syaldUWjR0RGtuNi92SHB2R0tnOVJq?= =?utf-8?B?bktmWks5NWdqT25lNXliN1VXSm9TMjZyRGkvcy8rSTVtQWl1bXhaZmY2akxM?= =?utf-8?B?SDJQRVNjN0VFaFJnYUZFTE5OK3dlMUs3Mmx1Uk9oL2s2MDM2UUliRFByYmho?= =?utf-8?B?NWhvTlFIRnRzdkJXTkgweDgxZ3gxY0U4TnhuWDViZHZBZ1lWZUVoOVFNSGRJ?= =?utf-8?B?NFZSamkyMkxtUnN5V0sxS3hLVWFDQ051SUh2UmRyQmpKSXhyRUxXRUhPdUJo?= =?utf-8?B?emxwbUlOT08vaGdDcTR3SDFuL2hzU0JVV3B2RktvWGt6VUFmaVFmRGkzbWg1?= =?utf-8?B?NGFEQ2lLS2xJOTZrSGhZMWFZcXUxRFRxOWR0enZJVko2RldOUHVFOVUxOGVV?= =?utf-8?B?a09ITTBDQ3dhQ2M2eWZpNGdLcEY2TnJsTWNGa2IzaWg1b1czd3hWUHZuMVRU?= =?utf-8?B?YU44NWJCMlFUelZ2dHI5QjZTdW1VdmtYYVJLOVZvamE4U0JBN0pveUlJZmFM?= =?utf-8?B?bW5sQkw1NzVyN090c00vSFVCWHpWMitBMlR6dEp1b3JQNjJnZEdJdnhDdzQy?= =?utf-8?B?a29MWmc2Uk1xSDY2c20zdWFiTVo3RDBGdGpYU3Urd2FubjdZVXpxTHo2ZnNC?= =?utf-8?B?OFVFeFRZeDVQZUdjVGo3dkxKODdXcmZKVExNaHZSY1ZlbnhWSE5Zb1hwckNt?= =?utf-8?B?MHhEYWw5RmVybGJSb3ZqTzFXSkw2OHNnU1d5Zmp6WU5hRjhUaFU1Y2l5TlpK?= =?utf-8?B?Q2t3WFduYUlHVys5d0laS29WVnRuUUN1RVVnOEcrcVZnUlFCS3dIQVcwSzR0?= =?utf-8?B?eGMxWFF1SkxWS3dWRTRBeHVZOFhYQmgxZ3pkd1IwZXVWdkE1S0d2cjNmWW5O?= =?utf-8?B?U0FrZ3JNTytRU0N2dnEyenJzWEFXU1JZR2VPc2VYOERXNnB6bW96SllHb1p5?= =?utf-8?B?UjZzSkhVa1NqL0srbmV6c05rNXBLZXc3UnppYVp6ckcxYXJIUzNUMXl4T2g2?= =?utf-8?B?V3dIYWVtQkw0a3ZIR0ZidzlKSENwN3N3TmwxUTNxR2FzMWJnK0N3aFdpTmVt?= =?utf-8?B?V0lmZ0ZheXlqeVBLbTJJazYzQ2NyRHgxbFhkVFRWc2NXMHQ2VUdOZUJYcUgx?= =?utf-8?B?VjNydm54YzhnU1F1bkRpNDdnTmdUOFBicUZ3MmYzbXY3Z3JQVFVYUzNlbTNr?= =?utf-8?B?TCtjUXRqaGQzQko1KzRSZ3FyWkRTMHkweGNkeU1DMHBjNWlaYzRvV0dhVTln?= =?utf-8?B?SHZsR1BnUzVObnkwNkh6RU1pcWNyUFZCUlE3bWxua08xSEJWd1lQUzZTRDJn?= =?utf-8?B?UWNOWW9OUkFYNlNoYTk5dHZNcyt5VFJ5RGNXc2U5enBIS1hRekMzYVVhd1BM?= =?utf-8?B?SUE0QnlHSTlBQjIyYlE0MVZaaVZSM1lZVUlETmNUU2J6NWRWV3A5cktoMEVM?= =?utf-8?B?NlVLNHlhb20xTFJ6cUpmUnlJQVZDTFc1YzUySHhhYnBWdGpwWnZmVkpKTlRC?= =?utf-8?B?aFg1T3BKR0o1aDgwcTB4U01mdnc5QS8ySjRQdWtWUUU2OVozNldpUmJYbnYv?= =?utf-8?B?cEJldERBckZ3SlMzTDVmeGkxUHQyalI1V0NEcVB3a2RFa2lWeWk5Zm91YkxV?= =?utf-8?B?SGhWS0IrRmpiUDkweXNoQkw4VFNGeHRkS2VmcG10aU9pZGdxeThDWDRyaEE5?= =?utf-8?B?cHlCMTZxYTU5RGZMTFU3Skt6Y2lWUkZhaG12bHFmbFhBemhSNFFmQTZtRmpI?= =?utf-8?B?NmJ2L1FJWG5sTC9QeUlwWVdYU3lGa0ZSVmNmMDlJY0dlUlhoVkZUR1lsMU9D?= =?utf-8?B?NDBhMlo4ck9XNStRMVZBcTFIZjFtVDBidjFjdWhSNFNxZGVXTHZQbW1JK0lU?= =?utf-8?B?dWlmZThBY1ZuVC9YcHlMN1p0NTVRK2VXQVlhTHJYNHAyTDBOWWdlZVN1aDQ0?= =?utf-8?B?TG5JUTA0QjhQMVpsVWRBQVo4WTdhamllTHhTYkZUdXBhYXlZVTFQVlljZWc5?= =?utf-8?B?MEJseEs3Q2dvSWprYzQ1YnVydE5Pd3IranI4YnhIQS91NW0zYjZhUStyVFd5?= =?utf-8?B?SWRqUkJzb281ZVpOWnBIZk5kZ1BweVpDa29vWmJLTDNyMlZ3Q3lVQW9ENlVI?= =?utf-8?B?dkE9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: byn9hYG5JykLfqTD6lmNQG6hmrjnp1rO7f0iZO4OZBcQLBM7rmhNeVDV81EhRZW8bRXQbbN0AtOt7hb6MOk7478iGtSJawyRTkC65aFKTUlI5OX84ejlItxs7EH7YrOak1Sxj+KsMq6KAm3rv3FiRNHoN7JmL2M6uTAwNuCs9axuoBPz02OLqX354BWcXaepBifr0kfKImeYjEH+tCL3mKLO3481DOV0Xr/TRYhDLo9qny3ljeaLgF0z3ZvYzfYeHJHzEVpPnEu4NI1R5kW8pr47kPu5EAGSW+FXYPPP+XxPFAUt7mapunD6f6e1lJzRBGIUXKgjl2ZHT0eZvFqaq7lzFp6iOcyPfg+4BuwecJR1cHIMowZQK5THFUK1SFLKcv9NE7UPe5rkL0VRVHK/3KSBW4u5JJ4YoZPQNN6PSF29qkdujg7ze293MtrLL6tKvkmICQB3OViQL0NZvK/hzpsRrRIicKraRCExoU7CRxwq+WufzruI+IsmDVMvEhf/RWL4vXo4TBEpIImR93tN373pRUxcmZjpwGN9vuksOh5WJbWY8QFGKOSaKxucJnEmvrsSEnnIcEUovXn4FmBIXlpv7v2MJ+LGKG/QY4UuPnQxuklJ9J176JGYFITQzyMyigAVXSpM6uYn7sRMYhbn4n8Xl3yX8nEZ8B/++5+FkYVNlBIcJjmwzkxHD0Sz7WJgcNAlBFp4S43nRXiEsAQEgwaxFwmR4AaUACcY+WvZftAXoThAfYdEAKOuk+dncvHK8Ex8a7puRKbvljyQpnwfappZCi3EI22kTiGagfa2asEYeFOMfLLoNR84cOCrx0QP8LiPyA5RB7x0pKe2sW/Xc04sXkWp0mzqfkQc1PgDQXeV1dQyHgY7Psmhop2Te307 X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: f221e0f3-5be8-4c8f-21a5-08db6e86f1f7 X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Jun 2023 16:30:07.1419 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: Wxl9rS8oI/656EZanpiuxh1ns0fYRelWwlf0F7RhmD/pSxWe5Kl0rWApvZO3tttdueZiiJasWwjoK0LlOnPDEg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR03MB5949 On Tue, Jun 13, 2023 at 10:32:26AM +0000, Volodymyr Babchuk wrote: > From: Oleksandr Andrushchenko > > Introduce a per-domain read/write lock to check whether vpci is present, > so we are sure there are no accesses to the contents of the vpci struct > if not. This lock can be used (and in a few cases is used right away) > so that vpci removal can be performed while holding the lock in write > mode. Previously such removal could race with vpci_read for example. > > 1. Per-domain's vpci_rwlock is used to protect pdev->vpci structure > from being removed. > > 2. Writing the command register and ROM BAR register may trigger > modify_bars to run, which in turn may access multiple pdevs while > checking for the existing BAR's overlap. The overlapping check, if done > under the read lock, requires vpci->lock to be acquired on both devices > being compared, which may produce a deadlock. It is not possible to > upgrade read lock to write lock in such a case. So, in order to prevent > the deadlock, check which registers are going to be written and acquire > the lock in the appropriate mode from the beginning. > > All other code, which doesn't lead to pdev->vpci destruction and does not > access multiple pdevs at the same time, can still use a combination of the > read lock and pdev->vpci->lock. > > 3. Optimize if ROM BAR write lock required detection by caching offset > of the ROM BAR register in vpci->header->rom_reg which depends on > header's type. > > 4. Reduce locked region in vpci_remove_device as it is now possible > to set pdev->vpci to NULL early right after the write lock is acquired. > > 5. Reduce locked region in vpci_add_handlers as it is possible to > initialize many more fields of the struct vpci before assigning it to > pdev->vpci. > > 6. vpci_{add|remove}_register are required to be called with the write lock > held, but it is not feasible to add an assert there as it requires > struct domain to be passed for that. So, add a comment about this requirement > to these and other functions with the equivalent constraints. > > 7. Drop const qualifier where the new rwlock is used and this is appropriate. > > 8. Do not call process_pending_softirqs with any locks held. For that unlock > prior the call and re-acquire the locks after. After re-acquiring the > lock there is no need to check if pdev->vpci exists: > - in apply_map because of the context it is called (no race condition > possible) > - for MSI/MSI-X debug code because it is called at the end of > pdev->vpci access and no further access to pdev->vpci is made > > 9. Check for !pdev->vpci in vpci_{read|write} after acquiring the lock > and if so, allow reading or writing the hardware register directly. This is > acceptable as we only deal with Dom0 as of now. Once DomU support is > added the write will need to be ignored and read return all 0's for the > guests, while Dom0 can still access the registers directly. > > 10. Introduce pcidevs_trylock, so there is a possibility to try locking > the pcidev's lock. > > 11. Use pcidev's lock around for_each_pdev and pci_get_pdev_by_domain > while accessing pdevs in vpci code. > > 12. This is based on the discussion at [1]. > > [1] https://lore.kernel.org/all/20220204063459.680961-4-andr2000@gmail.com/ > > Suggested-by: Roger Pau Monné > Suggested-by: Jan Beulich > Signed-off-by: Oleksandr Andrushchenko Thanks. I haven't looked in full detail, but I'm afraid there's an ABBA deadlock with the per-domain vpci lock and the pcidevs lock in modify_bars() vs vpci_add_handlers() and vpci_remove_device(). I've made some comments below. > --- > This was checked on x86: with and without PVH Dom0. > --- > xen/arch/x86/hvm/vmsi.c | 7 +++ > xen/common/domain.c | 3 + > xen/drivers/passthrough/pci.c | 5 ++ > xen/drivers/vpci/header.c | 52 +++++++++++++++++ > xen/drivers/vpci/msi.c | 25 +++++++- > xen/drivers/vpci/msix.c | 51 +++++++++++++--- > xen/drivers/vpci/vpci.c | 107 +++++++++++++++++++++++++--------- > xen/include/xen/pci.h | 1 + > xen/include/xen/sched.h | 3 + > xen/include/xen/vpci.h | 6 ++ > 10 files changed, 223 insertions(+), 37 deletions(-) > > diff --git a/xen/arch/x86/hvm/vmsi.c b/xen/arch/x86/hvm/vmsi.c > index 3cd4923060..f188450b1b 100644 > --- a/xen/arch/x86/hvm/vmsi.c > +++ b/xen/arch/x86/hvm/vmsi.c > @@ -895,6 +895,9 @@ int vpci_msix_arch_print(const struct vpci_msix *msix) > { > unsigned int i; > > + ASSERT(rw_is_locked(&msix->pdev->domain->vpci_rwlock)); > + ASSERT(pcidevs_locked()); > + > for ( i = 0; i < msix->max_entries; i++ ) > { > const struct vpci_msix_entry *entry = &msix->entries[i]; > @@ -913,7 +916,11 @@ int vpci_msix_arch_print(const struct vpci_msix *msix) > struct pci_dev *pdev = msix->pdev; > > spin_unlock(&msix->pdev->vpci->lock); > + pcidevs_unlock(); > + read_unlock(&pdev->domain->vpci_rwlock); > process_pending_softirqs(); > + read_lock(&pdev->domain->vpci_rwlock); > + pcidevs_lock(); Why do you need the pcidevs_lock here? Isn't it enough to have the per-domain rwlock taken in read mode in order to prevent devices from being de-assigned from the domain? > /* NB: we assume that pdev cannot go away for an alive domain. */ > if ( !pdev->vpci || !spin_trylock(&pdev->vpci->lock) ) > return -EBUSY; > diff --git a/xen/common/domain.c b/xen/common/domain.c > index 6a440590fe..a4640acb62 100644 > --- a/xen/common/domain.c > +++ b/xen/common/domain.c > @@ -622,6 +622,9 @@ struct domain *domain_create(domid_t domid, > > #ifdef CONFIG_HAS_PCI > INIT_LIST_HEAD(&d->pdev_list); > +#ifdef CONFIG_HAS_VPCI > + rwlock_init(&d->vpci_rwlock); > +#endif > #endif > > /* All error paths can depend on the above setup. */ > diff --git a/xen/drivers/passthrough/pci.c b/xen/drivers/passthrough/pci.c > index 07d1986d33..0afcb59af0 100644 > --- a/xen/drivers/passthrough/pci.c > +++ b/xen/drivers/passthrough/pci.c > @@ -57,6 +57,11 @@ void pcidevs_lock(void) > spin_lock_recursive(&_pcidevs_lock); > } > > +int pcidevs_trylock(void) > +{ > + return spin_trylock_recursive(&_pcidevs_lock); > +} > + > void pcidevs_unlock(void) > { > spin_unlock_recursive(&_pcidevs_lock); > diff --git a/xen/drivers/vpci/header.c b/xen/drivers/vpci/header.c > index ec2e978a4e..23b5223adf 100644 > --- a/xen/drivers/vpci/header.c > +++ b/xen/drivers/vpci/header.c > @@ -152,12 +152,14 @@ bool vpci_process_pending(struct vcpu *v) > if ( rc == -ERESTART ) > return true; > > + read_lock(&v->domain->vpci_rwlock); > spin_lock(&v->vpci.pdev->vpci->lock); > /* Disable memory decoding unconditionally on failure. */ > modify_decoding(v->vpci.pdev, > rc ? v->vpci.cmd & ~PCI_COMMAND_MEMORY : v->vpci.cmd, > !rc && v->vpci.rom_only); > spin_unlock(&v->vpci.pdev->vpci->lock); > + read_unlock(&v->domain->vpci_rwlock); I think you likely want to expand the scope of the domain vpci lock in order to also protect the data in v->vpci? So that vPCI device removal can clear this data if required without racing with vpci_process_pending(). Otherwise you need to pause the domain when removing vPCI. > > rangeset_destroy(v->vpci.mem); > v->vpci.mem = NULL; > @@ -181,8 +183,20 @@ static int __init apply_map(struct domain *d, const struct pci_dev *pdev, > struct map_data data = { .d = d, .map = true }; > int rc; > > + ASSERT(rw_is_write_locked(&d->vpci_rwlock)); > + > while ( (rc = rangeset_consume_ranges(mem, map_range, &data)) == -ERESTART ) > + { > + /* > + * It's safe to drop and reacquire the lock in this context > + * without risking pdev disappearing because devices cannot be > + * removed until the initial domain has been started. > + */ > + write_unlock(&d->vpci_rwlock); > process_pending_softirqs(); > + write_lock(&d->vpci_rwlock); > + } > + > rangeset_destroy(mem); > if ( !rc ) > modify_decoding(pdev, cmd, false); > @@ -213,6 +227,7 @@ static void defer_map(struct domain *d, struct pci_dev *pdev, > raise_softirq(SCHEDULE_SOFTIRQ); > } > > +/* This must hold domain's vpci_rwlock in write mode. */ Why it must be in write mode? Is this to avoid ABBA deadlocks as not taking the per-domain lock in write mode would then force us to take each pdev->vpci->lock in order to prevent concurrent modifications of remote devices? > static int modify_bars(const struct pci_dev *pdev, uint16_t cmd, bool rom_only) > { > struct vpci_header *header = &pdev->vpci->header; > @@ -287,6 +302,7 @@ static int modify_bars(const struct pci_dev *pdev, uint16_t cmd, bool rom_only) > * Check for overlaps with other BARs. Note that only BARs that are > * currently mapped (enabled) are checked for overlaps. > */ > + pcidevs_lock(); This can be problematic I'm afraid, as it's a guest controlled path that allows applying unrestricted contention on the pcidevs lock. I'm unsure whether multiple guests could be able to trigger the watchdog if given enough devices/vcpus to be able to perform enough simultaneous calls to modify_bars(). Maybe you could expand the per-domain vpci lock to also protect modifications of domain->pdev_list? IOW: kind of a per-domain pdev_lock. > for_each_pdev ( pdev->domain, tmp ) > { > if ( tmp == pdev ) > @@ -326,10 +342,12 @@ static int modify_bars(const struct pci_dev *pdev, uint16_t cmd, bool rom_only) > printk(XENLOG_G_WARNING "Failed to remove [%lx, %lx]: %d\n", > start, end, rc); > rangeset_destroy(mem); > + pcidevs_unlock(); > return rc; > } > } > } > + pcidevs_unlock(); > > ASSERT(dev); > > @@ -482,6 +500,8 @@ static int cf_check init_bars(struct pci_dev *pdev) > struct vpci_bar *bars = header->bars; > int rc; > > + ASSERT(rw_is_write_locked(&pdev->domain->vpci_rwlock)); > + > switch ( pci_conf_read8(pdev->sbdf, PCI_HEADER_TYPE) & 0x7f ) > { > case PCI_HEADER_TYPE_NORMAL: > @@ -570,6 +590,8 @@ static int cf_check init_bars(struct pci_dev *pdev) > } > } > > + ASSERT(!header->rom_reg); > + > /* Check expansion ROM. */ > rc = pci_size_mem_bar(pdev->sbdf, rom_reg, &addr, &size, PCI_BAR_ROM); > if ( rc > 0 && size ) > @@ -586,12 +608,42 @@ static int cf_check init_bars(struct pci_dev *pdev) > 4, rom); > if ( rc ) > rom->type = VPCI_BAR_EMPTY; > + > + header->rom_reg = rom_reg; > } > > return (cmd & PCI_COMMAND_MEMORY) ? modify_bars(pdev, cmd, false) : 0; > } > REGISTER_VPCI_INIT(init_bars, VPCI_PRIORITY_MIDDLE); > > +static bool overlap(unsigned int r1_offset, unsigned int r1_size, > + unsigned int r2_offset, unsigned int r2_size) > +{ > + /* Return true if there is an overlap. */ > + return r1_offset < r2_offset + r2_size && r2_offset < r1_offset + r1_size; Hm, we already have a vpci_register_cmp(), which does a very similar comparison. I wonder if it would be possible to somehow use that here. > +} > + > +bool vpci_header_need_write_lock(const struct pci_dev *pdev, > + unsigned int start, unsigned int size) > +{ > + /* > + * Writing the command register and ROM BAR register may trigger > + * modify_bars to run, which in turn may access multiple pdevs while > + * checking for the existing BAR's overlap. The overlapping check, if done > + * under the read lock, requires vpci->lock to be acquired on both devices > + * being compared, which may produce a deadlock. At the same time it is not > + * possible to upgrade read lock to write lock in such a case. > + * Check which registers are going to be written and return true if lock > + * needs to be acquired in write mode. > + */ > + if ( overlap(start, size, PCI_COMMAND, 2) || > + (pdev->vpci->header.rom_reg && > + overlap(start, size, pdev->vpci->header.rom_reg, 4)) ) > + return true; > + > + return false; > +} > + > /* > * Local variables: > * mode: C > diff --git a/xen/drivers/vpci/msi.c b/xen/drivers/vpci/msi.c > index 8f2b59e61a..e7d1f916a0 100644 > --- a/xen/drivers/vpci/msi.c > +++ b/xen/drivers/vpci/msi.c > @@ -190,6 +190,8 @@ static int cf_check init_msi(struct pci_dev *pdev) > uint16_t control; > int ret; > > + ASSERT(rw_is_write_locked(&pdev->domain->vpci_rwlock)); > + > if ( !pos ) > return 0; > > @@ -265,7 +267,7 @@ REGISTER_VPCI_INIT(init_msi, VPCI_PRIORITY_LOW); > > void vpci_dump_msi(void) > { > - const struct domain *d; > + struct domain *d; > > rcu_read_lock(&domlist_read_lock); > for_each_domain ( d ) > @@ -277,6 +279,15 @@ void vpci_dump_msi(void) > > printk("vPCI MSI/MSI-X d%d\n", d->domain_id); > > + if ( !read_trylock(&d->vpci_rwlock) ) > + continue; > + > + if ( !pcidevs_trylock() ) > + { > + read_unlock(&d->vpci_rwlock); > + continue; > + } > + > for_each_pdev ( d, pdev ) > { > const struct vpci_msi *msi; > @@ -318,14 +329,22 @@ void vpci_dump_msi(void) > * holding the lock. > */ > printk("unable to print all MSI-X entries: %d\n", rc); > - process_pending_softirqs(); > - continue; > + goto pdev_done; > } > } > > spin_unlock(&pdev->vpci->lock); > + pdev_done: > + pcidevs_unlock(); > + read_unlock(&d->vpci_rwlock); > + > process_pending_softirqs(); > + > + read_lock(&d->vpci_rwlock); > + pcidevs_lock(); > } > + pcidevs_unlock(); > + read_unlock(&d->vpci_rwlock); > } > rcu_read_unlock(&domlist_read_lock); > } > diff --git a/xen/drivers/vpci/msix.c b/xen/drivers/vpci/msix.c > index 25bde77586..b5a7dfdf9c 100644 > --- a/xen/drivers/vpci/msix.c > +++ b/xen/drivers/vpci/msix.c > @@ -143,6 +143,7 @@ static void cf_check control_write( > pci_conf_write16(pdev->sbdf, reg, val); > } > > +/* This must hold domain's vpci_rwlock in write mode. */ > static struct vpci_msix *msix_find(const struct domain *d, unsigned long addr) > { > struct vpci_msix *msix; > @@ -163,7 +164,13 @@ static struct vpci_msix *msix_find(const struct domain *d, unsigned long addr) > > static int cf_check msix_accept(struct vcpu *v, unsigned long addr) > { > - return !!msix_find(v->domain, addr); > + int rc; > + > + read_lock(&v->domain->vpci_rwlock); > + rc = !!msix_find(v->domain, addr); > + read_unlock(&v->domain->vpci_rwlock); > + > + return rc; > } > > static bool access_allowed(const struct pci_dev *pdev, unsigned long addr, > @@ -358,21 +365,34 @@ static int adjacent_read(const struct domain *d, const struct vpci_msix *msix, > static int cf_check msix_read( > struct vcpu *v, unsigned long addr, unsigned int len, unsigned long *data) > { > - const struct domain *d = v->domain; > - struct vpci_msix *msix = msix_find(d, addr); > + struct domain *d = v->domain; > + struct vpci_msix *msix; > const struct vpci_msix_entry *entry; > unsigned int offset; > > *data = ~0ul; > > + read_lock(&d->vpci_rwlock); > + > + msix = msix_find(d, addr); > if ( !msix ) > + { > + read_unlock(&d->vpci_rwlock); > return X86EMUL_RETRY; > + } > > if ( adjacent_handle(msix, addr) ) > - return adjacent_read(d, msix, addr, len, data); > + { > + int rc = adjacent_read(d, msix, addr, len, data); > + read_unlock(&d->vpci_rwlock); > + return rc; > + } > > if ( !access_allowed(msix->pdev, addr, len) ) > + { > + read_unlock(&d->vpci_rwlock); > return X86EMUL_OKAY; > + } > > spin_lock(&msix->pdev->vpci->lock); > entry = get_entry(msix, addr); > @@ -404,6 +424,7 @@ static int cf_check msix_read( > break; > } > spin_unlock(&msix->pdev->vpci->lock); > + read_unlock(&d->vpci_rwlock); > > return X86EMUL_OKAY; > } > @@ -491,19 +512,32 @@ static int adjacent_write(const struct domain *d, const struct vpci_msix *msix, > static int cf_check msix_write( > struct vcpu *v, unsigned long addr, unsigned int len, unsigned long data) > { > - const struct domain *d = v->domain; > - struct vpci_msix *msix = msix_find(d, addr); > + struct domain *d = v->domain; > + struct vpci_msix *msix; > struct vpci_msix_entry *entry; > unsigned int offset; > > + read_lock(&d->vpci_rwlock); > + > + msix = msix_find(d, addr); > if ( !msix ) > + { > + read_unlock(&d->vpci_rwlock); > return X86EMUL_RETRY; > + } > > if ( adjacent_handle(msix, addr) ) > - return adjacent_write(d, msix, addr, len, data); > + { > + int rc = adjacent_write(d, msix, addr, len, data); > + read_unlock(&d->vpci_rwlock); > + return rc; > + } > > if ( !access_allowed(msix->pdev, addr, len) ) > + { > + read_unlock(&d->vpci_rwlock); > return X86EMUL_OKAY; > + } > > spin_lock(&msix->pdev->vpci->lock); > entry = get_entry(msix, addr); > @@ -579,6 +613,7 @@ static int cf_check msix_write( > break; > } > spin_unlock(&msix->pdev->vpci->lock); > + read_unlock(&d->vpci_rwlock); > > return X86EMUL_OKAY; > } > @@ -665,6 +700,8 @@ static int cf_check init_msix(struct pci_dev *pdev) > struct vpci_msix *msix; > int rc; > > + ASSERT(rw_is_write_locked(&pdev->domain->vpci_rwlock)); > + > msix_offset = pci_find_cap_offset(pdev->seg, pdev->bus, slot, func, > PCI_CAP_ID_MSIX); > if ( !msix_offset ) > diff --git a/xen/drivers/vpci/vpci.c b/xen/drivers/vpci/vpci.c > index 652807a4a4..1270174e78 100644 > --- a/xen/drivers/vpci/vpci.c > +++ b/xen/drivers/vpci/vpci.c > @@ -38,20 +38,32 @@ extern vpci_register_init_t *const __end_vpci_array[]; > > void vpci_remove_device(struct pci_dev *pdev) > { > - if ( !has_vpci(pdev->domain) || !pdev->vpci ) > + struct vpci *vpci; > + > + if ( !has_vpci(pdev->domain) ) > return; > > - spin_lock(&pdev->vpci->lock); > + write_lock(&pdev->domain->vpci_rwlock); > + if ( !pdev->vpci ) > + { > + write_unlock(&pdev->domain->vpci_rwlock); > + return; > + } > + > + vpci = pdev->vpci; > + pdev->vpci = NULL; > + write_unlock(&pdev->domain->vpci_rwlock); > + > while ( !list_empty(&pdev->vpci->handlers) ) > { > - struct vpci_register *r = list_first_entry(&pdev->vpci->handlers, > + struct vpci_register *r = list_first_entry(&vpci->handlers, > struct vpci_register, > node); > > list_del(&r->node); > xfree(r); > } > - spin_unlock(&pdev->vpci->lock); > + > if ( pdev->vpci->msix ) > { > unsigned int i; > @@ -61,29 +73,33 @@ void vpci_remove_device(struct pci_dev *pdev) > if ( pdev->vpci->msix->table[i] ) > iounmap(pdev->vpci->msix->table[i]); > } > - xfree(pdev->vpci->msix); > - xfree(pdev->vpci->msi); > - xfree(pdev->vpci); > - pdev->vpci = NULL; > + xfree(vpci->msix); > + xfree(vpci->msi); > + xfree(vpci); > } > > int vpci_add_handlers(struct pci_dev *pdev) > { > + struct vpci *vpci; > unsigned int i; > int rc = 0; > > if ( !has_vpci(pdev->domain) ) > return 0; > > + vpci = xzalloc(struct vpci); > + if ( !vpci ) > + return -ENOMEM; > + > + INIT_LIST_HEAD(&vpci->handlers); > + spin_lock_init(&vpci->lock); > + > + write_lock(&pdev->domain->vpci_rwlock); I think the usage of the vpci per-domain lock here and in vpci_remove_device() create an ABBA deadlock situation with the usage of it in modify_bars(). Both vpci_add_handlers() and vpci_remove_device() get called with the pcidevs lock taken, and take the per-domain vpci lock afterwards, while modify_bars() does the inverse locking, gets called with the per-domain vpci lock taken and then take the pcidevs lock inside the function. > + > /* We should not get here twice for the same device. */ > ASSERT(!pdev->vpci); > > - pdev->vpci = xzalloc(struct vpci); > - if ( !pdev->vpci ) > - return -ENOMEM; > - > - INIT_LIST_HEAD(&pdev->vpci->handlers); > - spin_lock_init(&pdev->vpci->lock); > + pdev->vpci = vpci; > > for ( i = 0; i < NUM_VPCI_INIT; i++ ) > { > @@ -91,6 +107,7 @@ int vpci_add_handlers(struct pci_dev *pdev) > if ( rc ) > break; > } > + write_unlock(&pdev->domain->vpci_rwlock); > > if ( rc ) > vpci_remove_device(pdev); > @@ -139,6 +156,7 @@ uint32_t cf_check vpci_hw_read32( > return pci_conf_read32(pdev->sbdf, reg); > } > > +/* This must hold domain's vpci_rwlock in write mode. */ > int vpci_add_register(struct vpci *vpci, vpci_read_t *read_handler, > vpci_write_t *write_handler, unsigned int offset, > unsigned int size, void *data) > @@ -162,8 +180,6 @@ int vpci_add_register(struct vpci *vpci, vpci_read_t *read_handler, > r->offset = offset; > r->private = data; > > - spin_lock(&vpci->lock); If you remove the lock here we need to assert that the per-domain vpci lock is taken in write mode. > - > /* The list of handlers must be kept sorted at all times. */ > list_for_each ( prev, &vpci->handlers ) > { > @@ -175,25 +191,23 @@ int vpci_add_register(struct vpci *vpci, vpci_read_t *read_handler, > break; > if ( cmp == 0 ) > { > - spin_unlock(&vpci->lock); > xfree(r); > return -EEXIST; > } > } > > list_add_tail(&r->node, prev); > - spin_unlock(&vpci->lock); > > return 0; > } > > +/* This must hold domain's vpci_rwlock in write mode. */ > int vpci_remove_register(struct vpci *vpci, unsigned int offset, > unsigned int size) > { > const struct vpci_register r = { .offset = offset, .size = size }; > struct vpci_register *rm; > > - spin_lock(&vpci->lock); > list_for_each_entry ( rm, &vpci->handlers, node ) > { > int cmp = vpci_register_cmp(&r, rm); > @@ -205,14 +219,12 @@ int vpci_remove_register(struct vpci *vpci, unsigned int offset, > if ( !cmp && rm->offset == offset && rm->size == size ) > { > list_del(&rm->node); > - spin_unlock(&vpci->lock); > xfree(rm); > return 0; > } > if ( cmp <= 0 ) > break; > } > - spin_unlock(&vpci->lock); Same here about the per-domain lock being taken. > > return -ENOENT; > } > @@ -320,7 +332,7 @@ static uint32_t merge_result(uint32_t data, uint32_t new, unsigned int size, > > uint32_t vpci_read(pci_sbdf_t sbdf, unsigned int reg, unsigned int size) > { > - const struct domain *d = current->domain; > + struct domain *d = current->domain; > const struct pci_dev *pdev; > const struct vpci_register *r; > unsigned int data_offset = 0; > @@ -333,10 +345,18 @@ uint32_t vpci_read(pci_sbdf_t sbdf, unsigned int reg, unsigned int size) > } > > /* Find the PCI dev matching the address. */ > + pcidevs_lock(); > pdev = pci_get_pdev(d, sbdf); > - if ( !pdev || !pdev->vpci ) > + pcidevs_unlock(); I think it's worth looking into expanding the per-domain vpci-lock to a pdevs lock or similar in order to protect the pdev_list also if possible. So that we can avoid taking the pcidevs lock here. Thanks, Roger. From xen-devel-bounces@lists.xenproject.org Fri Jun 16 17:00:31 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 16 Jun 2023 17:00:31 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550324.859324 (Exim 4.92) (envelope-from ) id 1qACo1-000560-8V; Fri, 16 Jun 2023 17:00:13 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550324.859324; Fri, 16 Jun 2023 17:00:13 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qACo1-00055t-5c; Fri, 16 Jun 2023 17:00:13 +0000 Received: by outflank-mailman (input) for mailman id 550324; Fri, 16 Jun 2023 17:00:11 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qACnz-00055n-8B for xen-devel@lists.xenproject.org; Fri, 16 Jun 2023 17:00:11 +0000 Received: from alpha.anastas.io (alpha.anastas.io [104.248.188.109]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 3dd2ba64-0c67-11ee-8611-37d641c3527e; Fri, 16 Jun 2023 19:00:06 +0200 (CEST) Received: from authenticated-user (alpha.anastas.io [104.248.188.109]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by alpha.anastas.io (Postfix) with ESMTPSA id A5B383F08F; Fri, 16 Jun 2023 10:00:01 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 3dd2ba64-0c67-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=anastas.io; s=mail; t=1686934802; bh=LJ7TkF4paZu1zK/75CCOJysOK+Vbd3Lkw6/uJNFf+NM=; h=Date:Cc:Subject:From:To:References:In-Reply-To:From; b=G4k8m5lVV4oyjgs6MpMqCgK3YQ4QL/rxMQ/dowYxuToUzP898xXaAXO/7C3dLTQMh rK6/K34EvGDVjH2nxXYcamQiZJmCWcIeOL6wsG3rBBWuEW35LYp+OpUib979k1tUDA htCoR8kcBd6nCOkhPMwdGydQdTSPt6y0g5baqyWc6aF/DE5Vj5p+wBnalRskEGSkRB XcCWOMXC0sHTvo1oh1KxNO8JqAQFzYtGerU9GGJW02EQgF0IbHXCy2D87Gh325M6sZ beaZD+65IxOtNUEdEkw+RdDB74SiD+UJ+MrCeFzyAXkuPCeBEM50wCRqztuhDq73xP qq7tR0XIRC9zQ== Mime-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=UTF-8 Date: Fri, 16 Jun 2023 12:00:00 -0500 Message-Id: Cc: , "Andrew Cooper" , "George Dunlap" , "Julien Grall" , "Stefano Stabellini" , "Wei Liu" , "Shawn Anastasio" , Subject: Re: [PATCH v3 2/4] xen: Add files needed for minimal ppc64le build From: "Shawn Anastasio" To: "Jan Beulich" References: In-Reply-To: On Thu Jun 15, 2023 at 1:47 AM CDT, Jan Beulich wrote: > On 14.06.2023 18:36, Shawn Anastasio wrote: > > On Wed Jun 14, 2023 at 10:51 AM CDT, Jan Beulich wrote: > >> On 13.06.2023 16:50, Shawn Anastasio wrote: > >>> + DECL_SECTION(.bss) { /* BSS */ > >>> + __bss_start =3D .; > >>> + *(.bss.stack_aligned) > >>> + . =3D ALIGN(PAGE_SIZE); > >>> + *(.bss.page_aligned) > >> > >> ... the one between the two .bss parts looks unmotivated. Within > >> a section definition ALIGN() typically only makes sense when followed > >> by a label definition, like ... > >=20 > > Correct me if I'm wrong, but wouldn't the ALIGN here serve to ensure > > that the subsequent '.bss.page_aligned' section has the correct alignme= nt > > that its name implies? > > Yes and no. Thing is that every contribution to .bss.page_aligned already > needs to specify page alignment itself, or else it may break if any earli= er > contribution was page-aligned, but not a full page in size (which I think > the compiler wouldn't allow to happen, but assembly code can result in > such). Note how this very ALIGN() was recently dropped from RISC-V code, > and my respective Arm side patch is also about to go in. That makes sense, thanks. I'll get rid of the ALIGN here in v4. > Jan Thanks, Shawn From xen-devel-bounces@lists.xenproject.org Fri Jun 16 17:02:55 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 16 Jun 2023 17:02:55 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550330.859335 (Exim 4.92) (envelope-from ) id 1qACqc-0005fG-Pw; Fri, 16 Jun 2023 17:02:54 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550330.859335; Fri, 16 Jun 2023 17:02:54 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qACqc-0005f9-Ju; Fri, 16 Jun 2023 17:02:54 +0000 Received: by outflank-mailman (input) for mailman id 550330; Fri, 16 Jun 2023 17:02:53 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qACqb-0005ez-N6; Fri, 16 Jun 2023 17:02:53 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qACqb-0002AE-LD; Fri, 16 Jun 2023 17:02:53 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qACqb-0003Gj-A7; Fri, 16 Jun 2023 17:02:53 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qACqb-0003DI-9f; Fri, 16 Jun 2023 17:02:53 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=xv9sVtvi2t5cL9hUnlR5lXlWIylDrFT/LQnbDxHq22Q=; b=cxbAyog0c1mxw499ZkNBodj3i1 7AHn5sApk1Mbe2uf/GnajDAC2dBsry9oO37j+u0R+87SaYZaQY5+TSA+++KNd8E8nXnmK7U2i+hht OCXWyB2oRMjfmXH6Oy8k4U52N5ipKQZxqM7J4M/Jb9QRbj/jXUskXob33YhR94onl89s=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable-smoke test] 181466: tolerable all pass - PUSHED X-Osstest-Failures: xen-unstable-smoke:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking xen-unstable-smoke:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking xen-unstable-smoke:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking xen-unstable-smoke:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking xen-unstable-smoke:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: xen=e0586a4ff514590eec50185e2440b97f9a31cb7f X-Osstest-Versions-That: xen=c4e492a1399b763400daf3ca35fcef3028c7a7da From: osstest service owner Date: Fri, 16 Jun 2023 17:02:53 +0000 flight 181466 xen-unstable-smoke real [real] http://logs.test-lab.xenproject.org/osstest/logs/181466/ Failures :-/ but no regressions. Tests which did not succeed, but are not blocking: test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-armhf-armhf-xl 15 migrate-support-check fail never pass test-armhf-armhf-xl 16 saverestore-support-check fail never pass version targeted for testing: xen e0586a4ff514590eec50185e2440b97f9a31cb7f baseline version: xen c4e492a1399b763400daf3ca35fcef3028c7a7da Last test of basis 181457 2023-06-15 21:00:25 Z 0 days Testing same since 181466 2023-06-16 14:01:56 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Andrew Cooper Jan Beulich jobs: build-arm64-xsm pass build-amd64 pass build-armhf pass build-amd64-libvirt pass test-armhf-armhf-xl pass test-arm64-arm64-xl-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-libvirt pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Pushing revision : To xenbits.xen.org:/home/xen/git/xen.git c4e492a139..e0586a4ff5 e0586a4ff514590eec50185e2440b97f9a31cb7f -> smoke From xen-devel-bounces@lists.xenproject.org Fri Jun 16 17:48:30 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 16 Jun 2023 17:48:30 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550338.859350 (Exim 4.92) (envelope-from ) id 1qADYd-0001mA-CO; Fri, 16 Jun 2023 17:48:23 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550338.859350; Fri, 16 Jun 2023 17:48:23 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qADYd-0001lk-70; Fri, 16 Jun 2023 17:48:23 +0000 Received: by outflank-mailman (input) for mailman id 550338; Fri, 16 Jun 2023 17:48:22 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qADYb-0001iV-Vo for xen-devel@lists.xenproject.org; Fri, 16 Jun 2023 17:48:21 +0000 Received: from raptorengineering.com (mail.raptorengineering.com [23.155.224.40]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id faf4300d-0c6d-11ee-b232-6b7b168915f2; Fri, 16 Jun 2023 19:48:20 +0200 (CEST) Received: from localhost (localhost [127.0.0.1]) by mail.rptsys.com (Postfix) with ESMTP id 610BA82857D3; Fri, 16 Jun 2023 12:48:19 -0500 (CDT) Received: from mail.rptsys.com ([127.0.0.1]) by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032) with ESMTP id KyTCUD6tTjYk; Fri, 16 Jun 2023 12:48:18 -0500 (CDT) Received: from localhost (localhost [127.0.0.1]) by mail.rptsys.com (Postfix) with ESMTP id 80A828285AD7; Fri, 16 Jun 2023 12:48:18 -0500 (CDT) Received: from mail.rptsys.com ([127.0.0.1]) by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id PfT1xBtayfK7; Fri, 16 Jun 2023 12:48:18 -0500 (CDT) Received: from raptor-ewks-026.lan (5.edge.rptsys.com [23.155.224.38]) by mail.rptsys.com (Postfix) with ESMTPSA id 234F08285717; Fri, 16 Jun 2023 12:48:18 -0500 (CDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: faf4300d-0c6d-11ee-b232-6b7b168915f2 DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com 80A828285AD7 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD; t=1686937698; bh=q+rmhawpP7Wzq2WnGrOzz4f9y6ngrhvev0WPdaxoaGY=; h=From:To:Date:Message-Id:MIME-Version; b=P31QQK+RNPJVA6AiV4UMviBqyWiBsCaI8UQXnz/ouJNCI4es3KlL+9E0fweBq15oD m85sOaScxPGGo7wtsIad7cnMCPt6iVdRKZ0VnNFJagTdFvaHWh7sWoP0Uc4w8nPMHR i9FgBygMVYhDUbIRpb/GzNzQif1/Qwaj3vAyp37E= X-Virus-Scanned: amavisd-new at rptsys.com From: Shawn Anastasio To: xen-devel@lists.xenproject.org Cc: tpearson@raptorengineering.com, Shawn Anastasio , Doug Goldstein , Stefano Stabellini Subject: [PATCH v4 3/4] automation: Add ppc64le cross-build jobs Date: Fri, 16 Jun 2023 12:48:02 -0500 Message-Id: <1a09823b03b5054c97efcf7008f9626d8ee83f49.1686936278.git.sanastasio@raptorengineering.com> X-Mailer: git-send-email 2.30.2 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Add build jobs to cross-compile Xen for ppc64le. Signed-off-by: Shawn Anastasio --- automation/gitlab-ci/build.yaml | 60 +++++++++++++++++++++++++++++++++ 1 file changed, 60 insertions(+) diff --git a/automation/gitlab-ci/build.yaml b/automation/gitlab-ci/build= .yaml index 420ffa5acb..bd8c7332db 100644 --- a/automation/gitlab-ci/build.yaml +++ b/automation/gitlab-ci/build.yaml @@ -183,6 +183,33 @@ variables: <<: *gcc =20 +.ppc64le-cross-build-tmpl: + <<: *build + variables: + XEN_TARGET_ARCH: ppc64 + tags: + - x86_64 + +.ppc64le-cross-build: + extends: .ppc64le-cross-build-tmpl + variables: + debug: n + +.ppc64le-cross-build-debug: + extends: .ppc64le-cross-build-tmpl + variables: + debug: y + +.gcc-ppc64le-cross-build: + extends: .ppc64le-cross-build + variables: + <<: *gcc + +.gcc-ppc64le-cross-build-debug: + extends: .ppc64le-cross-build-debug + variables: + <<: *gcc + .yocto-test: stage: build image: registry.gitlab.com/xen-project/xen/${CONTAINER} @@ -516,6 +543,39 @@ archlinux-current-gcc-riscv64-debug-randconfig: EXTRA_FIXED_RANDCONFIG: CONFIG_COVERAGE=3Dn =20 +# Power cross-build +debian-bullseye-gcc-ppc64le: + extends: .gcc-ppc64le-cross-build + variables: + CONTAINER: debian:bullseye-ppc64le + KBUILD_DEFCONFIG: openpower_defconfig + HYPERVISOR_ONLY: y + +debian-bullseye-gcc-ppc64le-debug: + extends: .gcc-ppc64le-cross-build-debug + variables: + CONTAINER: debian:bullseye-ppc64le + KBUILD_DEFCONFIG: openpower_defconfig + HYPERVISOR_ONLY: y + +debian-bullseye-gcc-ppc64le-randconfig: + extends: .gcc-ppc64le-cross-build + variables: + CONTAINER: debian:bullseye-ppc64le + KBUILD_DEFCONFIG: openpower_defconfig + RANDCONFIG: y + EXTRA_FIXED_RANDCONFIG: + CONFIG_COVERAGE=3Dn + +debian-bullseye-gcc-ppc64le-debug-randconfig: + extends: .gcc-ppc64le-cross-build-debug + variables: + CONTAINER: debian:bullseye-ppc64le + KBUILD_DEFCONFIG: openpower_defconfig + RANDCONFIG: y + EXTRA_FIXED_RANDCONFIG: + CONFIG_COVERAGE=3Dn + # Yocto test jobs yocto-qemuarm64: extends: .yocto-test-arm64 --=20 2.30.2 From xen-devel-bounces@lists.xenproject.org Fri Jun 16 17:48:30 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 16 Jun 2023 17:48:30 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550341.859376 (Exim 4.92) (envelope-from ) id 1qADYh-0002Ne-AZ; Fri, 16 Jun 2023 17:48:27 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550341.859376; Fri, 16 Jun 2023 17:48:27 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qADYh-0002MQ-3n; Fri, 16 Jun 2023 17:48:27 +0000 Received: by outflank-mailman (input) for mailman id 550341; Fri, 16 Jun 2023 17:48:25 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qADYf-0001uA-HR for xen-devel@lists.xenproject.org; Fri, 16 Jun 2023 17:48:25 +0000 Received: from raptorengineering.com (mail.raptorengineering.com [23.155.224.40]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id fb43707e-0c6d-11ee-8611-37d641c3527e; Fri, 16 Jun 2023 19:48:20 +0200 (CEST) Received: from localhost (localhost [127.0.0.1]) by mail.rptsys.com (Postfix) with ESMTP id D78848285717; Fri, 16 Jun 2023 12:48:19 -0500 (CDT) Received: from mail.rptsys.com ([127.0.0.1]) by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032) with ESMTP id 0w1ve9nhRscX; Fri, 16 Jun 2023 12:48:18 -0500 (CDT) Received: from localhost (localhost [127.0.0.1]) by mail.rptsys.com (Postfix) with ESMTP id 27F5782857DB; Fri, 16 Jun 2023 12:48:18 -0500 (CDT) Received: from mail.rptsys.com ([127.0.0.1]) by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id 7hFt79XTV3Or; Fri, 16 Jun 2023 12:48:18 -0500 (CDT) Received: from raptor-ewks-026.lan (5.edge.rptsys.com [23.155.224.38]) by mail.rptsys.com (Postfix) with ESMTPSA id 8EB7882853A9; Fri, 16 Jun 2023 12:48:17 -0500 (CDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: fb43707e-0c6d-11ee-8611-37d641c3527e DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com 27F5782857DB DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD; t=1686937698; bh=GTxjz5UoUPTN2yLPoNZ9Wr15ZFdFlghzQaPS0Lptszw=; h=From:To:Date:Message-Id:MIME-Version; b=gw5N4T9l+dacodkSnQFVtSxhpoLOTTZvxT38fn1qFarGM482VTx63XjJkhhcwb3f8 Ri+DPo8rYFfAzX3tsaFQmkybscNvNq2YtFQqzJ+YXgOCLMMBfFlxmYfsh8tbbQ3WUz zDPpnXcEyqBrjcmxmwtHzg1OJl7XXyr3Z+SLGyXs= X-Virus-Scanned: amavisd-new at rptsys.com From: Shawn Anastasio To: xen-devel@lists.xenproject.org Cc: tpearson@raptorengineering.com, Shawn Anastasio , Andrew Cooper , George Dunlap , Jan Beulich , Julien Grall , Stefano Stabellini , Wei Liu Subject: [PATCH v4 2/4] xen: Add files needed for minimal ppc64le build Date: Fri, 16 Jun 2023 12:48:01 -0500 Message-Id: <97a72e26edafb1d7b3a583755f015d04066c1e53.1686936278.git.sanastasio@raptorengineering.com> X-Mailer: git-send-email 2.30.2 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Add the build system changes required to build for ppc64le (POWER8+). As of now the resulting image simply boots to an infinite loop. $ make XEN_TARGET_ARCH=3Dppc64 -C xen openpower_defconfig $ make XEN_TARGET_ARCH=3Dppc64 SUBSYSTEMS=3Dxen -C xen build This port targets POWER8+ CPUs running in Little Endian mode specifically= , and does not boot on older machines. Additionally, this initial skeleton only implements the PaPR/pseries boot protocol which allows it to be booted in a standard QEMU virtual machine: $ qemu-system-ppc64 -M pseries-5.2 -m 256M -kernel xen/xen Signed-off-by: Shawn Anastasio --- config/ppc64.mk | 5 + xen/Makefile | 5 +- xen/arch/ppc/Kconfig | 42 ++++++ xen/arch/ppc/Kconfig.debug | 0 xen/arch/ppc/Makefile | 16 +++ xen/arch/ppc/Rules.mk | 0 xen/arch/ppc/arch.mk | 12 ++ xen/arch/ppc/configs/openpower_defconfig | 13 ++ xen/arch/ppc/include/asm/config.h | 63 +++++++++ xen/arch/ppc/include/asm/page-bits.h | 7 + xen/arch/ppc/ppc64/Makefile | 1 + xen/arch/ppc/ppc64/asm-offsets.c | 0 xen/arch/ppc/ppc64/head.S | 27 ++++ xen/arch/ppc/xen.lds.S | 172 +++++++++++++++++++++++ 14 files changed, 361 insertions(+), 2 deletions(-) create mode 100644 config/ppc64.mk create mode 100644 xen/arch/ppc/Kconfig create mode 100644 xen/arch/ppc/Kconfig.debug create mode 100644 xen/arch/ppc/Makefile create mode 100644 xen/arch/ppc/Rules.mk create mode 100644 xen/arch/ppc/arch.mk create mode 100644 xen/arch/ppc/configs/openpower_defconfig create mode 100644 xen/arch/ppc/include/asm/config.h create mode 100644 xen/arch/ppc/include/asm/page-bits.h create mode 100644 xen/arch/ppc/ppc64/Makefile create mode 100644 xen/arch/ppc/ppc64/asm-offsets.c create mode 100644 xen/arch/ppc/ppc64/head.S create mode 100644 xen/arch/ppc/xen.lds.S diff --git a/config/ppc64.mk b/config/ppc64.mk new file mode 100644 index 0000000000..597f0668c3 --- /dev/null +++ b/config/ppc64.mk @@ -0,0 +1,5 @@ +CONFIG_PPC :=3D y +CONFIG_PPC64 :=3D y +CONFIG_PPC_$(XEN_OS) :=3D y + +CONFIG_XEN_INSTALL_SUFFIX :=3D diff --git a/xen/Makefile b/xen/Makefile index e89fc461fc..db5454fb58 100644 --- a/xen/Makefile +++ b/xen/Makefile @@ -38,7 +38,7 @@ EFI_MOUNTPOINT ?=3D $(BOOT_DIR)/efi ARCH=3D$(XEN_TARGET_ARCH) SRCARCH=3D$(shell echo $(ARCH) | \ sed -e 's/x86.*/x86/' -e s'/arm\(32\|64\)/arm/g' \ - -e s'/riscv.*/riscv/g') + -e s'/riscv.*/riscv/g' -e s'/ppc.*/ppc/g') export ARCH SRCARCH =20 # Allow someone to change their config file @@ -244,7 +244,7 @@ include $(XEN_ROOT)/Config.mk export TARGET_SUBARCH :=3D $(XEN_TARGET_ARCH) export TARGET_ARCH :=3D $(shell echo $(XEN_TARGET_ARCH) | \ sed -e 's/x86.*/x86/' -e s'/arm\(32\|64\)/ar= m/g' \ - -e s'/riscv.*/riscv/g') + -e s'/riscv.*/riscv/g' -e s'/ppc.*/ppc/g= ') =20 export CONFIG_SHELL :=3D $(SHELL) export CC CXX LD NM OBJCOPY OBJDUMP ADDR2LINE @@ -563,6 +563,7 @@ _clean: $(Q)$(MAKE) $(clean)=3Dxsm $(Q)$(MAKE) $(clean)=3Dcrypto $(Q)$(MAKE) $(clean)=3Darch/arm + $(Q)$(MAKE) $(clean)=3Darch/ppc $(Q)$(MAKE) $(clean)=3Darch/riscv $(Q)$(MAKE) $(clean)=3Darch/x86 $(Q)$(MAKE) $(clean)=3Dtest diff --git a/xen/arch/ppc/Kconfig b/xen/arch/ppc/Kconfig new file mode 100644 index 0000000000..a0a70adef4 --- /dev/null +++ b/xen/arch/ppc/Kconfig @@ -0,0 +1,42 @@ +config PPC + def_bool y + +config PPC64 + def_bool y + select 64BIT + +config ARCH_DEFCONFIG + string + default "arch/ppc/configs/openpower_defconfig" + +menu "Architecture Features" + +source "arch/Kconfig" + +endmenu + +menu "ISA Selection" + +choice + prompt "Base ISA" + default POWER_ISA_2_07B if PPC64 + help + This selects the base ISA version that Xen will target. + +config POWER_ISA_2_07B + bool "Power ISA 2.07B" + help + Target version 2.07B of the Power ISA (POWER8) + +config POWER_ISA_3_00 + bool "Power ISA 3.00" + help + Target version 3.00 of the Power ISA (POWER9) + +endchoice + +endmenu + +source "common/Kconfig" + +source "drivers/Kconfig" diff --git a/xen/arch/ppc/Kconfig.debug b/xen/arch/ppc/Kconfig.debug new file mode 100644 index 0000000000..e69de29bb2 diff --git a/xen/arch/ppc/Makefile b/xen/arch/ppc/Makefile new file mode 100644 index 0000000000..98220648af --- /dev/null +++ b/xen/arch/ppc/Makefile @@ -0,0 +1,16 @@ +obj-$(CONFIG_PPC64) +=3D ppc64/ + +$(TARGET): $(TARGET)-syms + cp -f $< $@ + +$(TARGET)-syms: $(objtree)/prelink.o $(obj)/xen.lds + $(LD) $(XEN_LDFLAGS) -T $(obj)/xen.lds -N $< $(build_id_linker) -o $@ + $(NM) -pa --format=3Dsysv $@ \ + | $(objtree)/tools/symbols --all-symbols --xensyms --sysv --sort \ + > $@.map + +$(obj)/xen.lds: $(src)/xen.lds.S FORCE + $(call if_changed_dep,cpp_lds_S) + +.PHONY: include +include: diff --git a/xen/arch/ppc/Rules.mk b/xen/arch/ppc/Rules.mk new file mode 100644 index 0000000000..e69de29bb2 diff --git a/xen/arch/ppc/arch.mk b/xen/arch/ppc/arch.mk new file mode 100644 index 0000000000..36830457c6 --- /dev/null +++ b/xen/arch/ppc/arch.mk @@ -0,0 +1,12 @@ +######################################## +# Power-specific definitions + +ppc-march-$(CONFIG_POWER_ISA_2_07B) :=3D power8 +ppc-march-$(CONFIG_POWER_ISA_3_00) :=3D power9 + +CFLAGS +=3D -m64 -mlittle-endian -mcpu=3D$(ppc-march-y) +CFLAGS +=3D -mstrict-align -mcmodel=3Dlarge -mabi=3Delfv2 -mno-altivec -= mno-vsx + +# TODO: Drop override when more of the build is working +override ALL_OBJS-y =3D arch/$(TARGET_ARCH)/built_in.o +override ALL_LIBS-y =3D diff --git a/xen/arch/ppc/configs/openpower_defconfig b/xen/arch/ppc/conf= igs/openpower_defconfig new file mode 100644 index 0000000000..8783eb3488 --- /dev/null +++ b/xen/arch/ppc/configs/openpower_defconfig @@ -0,0 +1,13 @@ +# CONFIG_SCHED_CREDIT is not set +# CONFIG_SCHED_RTDS is not set +# CONFIG_SCHED_NULL is not set +# CONFIG_SCHED_ARINC653 is not set +# CONFIG_TRACEBUFFER is not set +# CONFIG_HYPFS is not set +# CONFIG_GRANT_TABLE is not set +# CONFIG_SPECULATIVE_HARDEN_ARRAY is not set + +CONFIG_PPC64=3Dy +CONFIG_DEBUG=3Dy +CONFIG_DEBUG_INFO=3Dy +CONFIG_EXPERT=3Dy diff --git a/xen/arch/ppc/include/asm/config.h b/xen/arch/ppc/include/asm= /config.h new file mode 100644 index 0000000000..7a2862ef7a --- /dev/null +++ b/xen/arch/ppc/include/asm/config.h @@ -0,0 +1,63 @@ +#ifndef __PPC_CONFIG_H__ +#define __PPC_CONFIG_H__ + +#include +#include + +#if defined(CONFIG_PPC64) +#define LONG_BYTEORDER 3 +#define ELFSIZE 64 +#define MAX_VIRT_CPUS 1024u +#else +#error "Unsupported PowerPC variant" +#endif + +#define BYTES_PER_LONG (1 << LONG_BYTEORDER) +#define BITS_PER_LONG (BYTES_PER_LONG << 3) +#define POINTER_ALIGN BYTES_PER_LONG + +#define BITS_PER_LLONG 64 + +/* xen_ulong_t is always 64 bits */ +#define BITS_PER_XEN_ULONG 64 + +#define CONFIG_PPC_L1_CACHE_SHIFT 7 +#define CONFIG_PAGEALLOC_MAX_ORDER 18 +#define CONFIG_DOMU_MAX_ORDER 9 +#define CONFIG_HWDOM_MAX_ORDER 10 + +#define OPT_CONSOLE_STR "dtuart" +#define INVALID_VCPU_ID MAX_VIRT_CPUS + +/* Linkage for PPC */ +#ifdef __ASSEMBLY__ +#define ALIGN .align 2 + +#define ENTRY(name) = \ + .globl name; = \ + ALIGN; = \ + name: +#endif + +#define XEN_VIRT_START _AT(UL, 0x400000) + +#define SMP_CACHE_BYTES (1 << 6) + +#define STACK_ORDER 2 +#define STACK_SIZE (PAGE_SIZE << STACK_ORDER) + +/* 288 bytes below the stack pointer must be preserved by interrupt hand= lers */ +#define STACK_VOLATILE_AREA 288 + +/* size of minimum stack frame; C code can write into the caller's stack= */ +#define STACK_FRAME_OVERHEAD 32 + +#endif /* __PPC_CONFIG_H__ */ +/* + * Local variables: + * mode: C + * c-file-style: "BSD" + * c-basic-offset: 4 + * indent-tabs-mode: nil + * End: + */ diff --git a/xen/arch/ppc/include/asm/page-bits.h b/xen/arch/ppc/include/= asm/page-bits.h new file mode 100644 index 0000000000..4c01bf9716 --- /dev/null +++ b/xen/arch/ppc/include/asm/page-bits.h @@ -0,0 +1,7 @@ +#ifndef __PPC_PAGE_BITS_H__ +#define __PPC_PAGE_BITS_H__ + +#define PAGE_SHIFT 16 /* 64 KiB Pages */ +#define PADDR_BITS 48 + +#endif /* __PPC_PAGE_BITS_H__ */ diff --git a/xen/arch/ppc/ppc64/Makefile b/xen/arch/ppc/ppc64/Makefile new file mode 100644 index 0000000000..3340058c08 --- /dev/null +++ b/xen/arch/ppc/ppc64/Makefile @@ -0,0 +1 @@ +obj-y +=3D head.o diff --git a/xen/arch/ppc/ppc64/asm-offsets.c b/xen/arch/ppc/ppc64/asm-of= fsets.c new file mode 100644 index 0000000000..e69de29bb2 diff --git a/xen/arch/ppc/ppc64/head.S b/xen/arch/ppc/ppc64/head.S new file mode 100644 index 0000000000..0b289c713a --- /dev/null +++ b/xen/arch/ppc/ppc64/head.S @@ -0,0 +1,27 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ + +.section .text.header, "ax", %progbits + +ENTRY(start) + /* + * Depending on how we were booted, the CPU could be running in eith= er + * Little Endian or Big Endian mode. The following trampoline from L= inux + * cleverly uses an instruction that encodes to a NOP if the CPU's + * endianness matches the assumption of the assembler (LE, in our ca= se) + * or a branch to code that performs the endian switch in the other = case. + */ + tdi 0, 0, 0x48 /* Reverse endian of b . + 8 */ + b . + 44 /* Skip trampoline if endian is good */ + .long 0xa600607d /* mfmsr r11 */ + .long 0x01006b69 /* xori r11,r11,1 */ + .long 0x00004039 /* li r10,0 */ + .long 0x6401417d /* mtmsrd r10,1 */ + .long 0x05009f42 /* bcl 20,31,$+4 */ + .long 0xa602487d /* mflr r10 */ + .long 0x14004a39 /* addi r10,r10,20 */ + .long 0xa6035a7d /* mtsrr0 r10 */ + .long 0xa6037b7d /* mtsrr1 r11 */ + .long 0x2400004c /* rfid */ + + /* Now that the endianness is confirmed, continue */ +1: b 1b diff --git a/xen/arch/ppc/xen.lds.S b/xen/arch/ppc/xen.lds.S new file mode 100644 index 0000000000..a72e519c6a --- /dev/null +++ b/xen/arch/ppc/xen.lds.S @@ -0,0 +1,172 @@ +#include + +#undef ENTRY +#undef ALIGN + +OUTPUT_ARCH(powerpc:common64) +ENTRY(start) + +PHDRS +{ + text PT_LOAD ; +#if defined(BUILD_ID) + note PT_NOTE ; +#endif +} + +/** + * OF's base load address is 0x400000 (XEN_VIRT_START). + * By defining sections this way, we can keep our virtual address base a= t 0x400000 + * while keeping the physical base at 0x0. + * + * Without this, OF incorrectly loads .text at 0x400000 + 0x400000 =3D 0= x800000. + * Taken from x86/xen.lds.S + */ +#ifdef CONFIG_LD_IS_GNU +# define DECL_SECTION(x) x : AT(ADDR(#x) - XEN_VIRT_START) +#else +# define DECL_SECTION(x) x : AT(ADDR(x) - XEN_VIRT_START) +#endif + +SECTIONS +{ + . =3D XEN_VIRT_START; + + DECL_SECTION(.text) { + _stext =3D .; /* Text section */ + *(.text.header) + + *(.text.cold) + *(.text.unlikely .text.*_unlikely .text.unlikely.*) + + *(.text) +#ifdef CONFIG_CC_SPLIT_SECTIONS + *(.text.*) +#endif + + *(.fixup) + *(.gnu.warning) + . =3D ALIGN(POINTER_ALIGN); + _etext =3D .; /* End of text section */ + } :text + + . =3D ALIGN(PAGE_SIZE); + DECL_SECTION(.rodata) { + _srodata =3D .; /* Read-only data */ + *(.rodata) + *(.rodata.*) + *(.data.rel.ro) + *(.data.rel.ro.*) + + VPCI_ARRAY + + . =3D ALIGN(POINTER_ALIGN); + _erodata =3D .; /* End of read-only data */ + } :text + + #if defined(BUILD_ID) + . =3D ALIGN(4); + DECL_SECTION(.note.gnu.build-id) { + __note_gnu_build_id_start =3D .; + *(.note.gnu.build-id) + __note_gnu_build_id_end =3D .; + } :note :text + #endif + _erodata =3D .; /* End of read-only data */ + + . =3D ALIGN(PAGE_SIZE); + DECL_SECTION(.data.ro_after_init) { + __ro_after_init_start =3D .; + *(.data.ro_after_init) + . =3D ALIGN(PAGE_SIZE); + __ro_after_init_end =3D .; + } : text + + DECL_SECTION(.data.read_mostly) { + *(.data.read_mostly) + } :text + + . =3D ALIGN(PAGE_SIZE); + DECL_SECTION(.data) { /* Data */ + *(.data.page_aligned) + . =3D ALIGN(8); + __start_schedulers_array =3D .; + *(.data.schedulers) + __end_schedulers_array =3D .; + + HYPFS_PARAM + + *(.data .data.*) + CONSTRUCTORS + } :text + + . =3D ALIGN(PAGE_SIZE); /* Init code and data */ + __init_begin =3D .; + DECL_SECTION(.init.text) { + _sinittext =3D .; + *(.init.text) + _einittext =3D .; + . =3D ALIGN(PAGE_SIZE); /* Avoid mapping alt insns execut= able */ + } :text + + . =3D ALIGN(PAGE_SIZE); + DECL_SECTION(.init.data) { + *(.init.rodata) + *(.init.rodata.*) + + . =3D ALIGN(POINTER_ALIGN); + __setup_start =3D .; + *(.init.setup) + __setup_end =3D .; + + __initcall_start =3D .; + *(.initcallpresmp.init) + __presmp_initcall_end =3D .; + *(.initcall1.init) + __initcall_end =3D .; + + LOCK_PROFILE_DATA + + *(.init.data) + *(.init.data.rel) + *(.init.data.rel.*) + + . =3D ALIGN(8); + __ctors_start =3D .; + *(.ctors) + *(.init_array) + *(SORT(.init_array.*)) + __ctors_end =3D .; + } :text + . =3D ALIGN(POINTER_ALIGN); + __init_end =3D .; + + DECL_SECTION(.bss) { /* BSS */ + __bss_start =3D .; + *(.bss.stack_aligned) + *(.bss.page_aligned) + . =3D ALIGN(PAGE_SIZE); + __per_cpu_start =3D .; + *(.bss.percpu.page_aligned) + *(.bss.percpu) + . =3D ALIGN(SMP_CACHE_BYTES); + *(.bss.percpu.read_mostly) + . =3D ALIGN(SMP_CACHE_BYTES); + __per_cpu_data_end =3D .; + *(.bss .bss.*) + . =3D ALIGN(POINTER_ALIGN); + __bss_end =3D .; + } :text + _end =3D . ; + + /* Section for the device tree blob (if any). */ + DECL_SECTION(.dtb) { *(.dtb) } :text + + DWARF2_DEBUG_SECTIONS + + DISCARD_SECTIONS + + STABS_DEBUG_SECTIONS + + ELF_DETAILS_SECTIONS +} --=20 2.30.2 From xen-devel-bounces@lists.xenproject.org Fri Jun 16 17:48:30 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 16 Jun 2023 17:48:30 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550339.859364 (Exim 4.92) (envelope-from ) id 1qADYg-0002Cu-JQ; Fri, 16 Jun 2023 17:48:26 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550339.859364; Fri, 16 Jun 2023 17:48:26 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qADYg-0002Cn-GC; Fri, 16 Jun 2023 17:48:26 +0000 Received: by outflank-mailman (input) for mailman id 550339; Fri, 16 Jun 2023 17:48:25 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qADYf-0001uA-1o for xen-devel@lists.xenproject.org; Fri, 16 Jun 2023 17:48:25 +0000 Received: from raptorengineering.com (mail.raptorengineering.com [23.155.224.40]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id fb0e02b3-0c6d-11ee-8611-37d641c3527e; Fri, 16 Jun 2023 19:48:20 +0200 (CEST) Received: from localhost (localhost [127.0.0.1]) by mail.rptsys.com (Postfix) with ESMTP id 873A48285ACC; Fri, 16 Jun 2023 12:48:19 -0500 (CDT) Received: from mail.rptsys.com ([127.0.0.1]) by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032) with ESMTP id vkaCJmTDLPFp; Fri, 16 Jun 2023 12:48:19 -0500 (CDT) Received: from localhost (localhost [127.0.0.1]) by mail.rptsys.com (Postfix) with ESMTP id 049988285717; Fri, 16 Jun 2023 12:48:19 -0500 (CDT) Received: from mail.rptsys.com ([127.0.0.1]) by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id UWbTFFnjXTEL; Fri, 16 Jun 2023 12:48:18 -0500 (CDT) Received: from raptor-ewks-026.lan (5.edge.rptsys.com [23.155.224.38]) by mail.rptsys.com (Postfix) with ESMTPSA id 7CD2E8285A31; Fri, 16 Jun 2023 12:48:18 -0500 (CDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: fb0e02b3-0c6d-11ee-8611-37d641c3527e DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com 049988285717 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD; t=1686937699; bh=jA1LG42ATJrlkAxSkcwEOBWl2olUCKNn9Ak/VcBw2PI=; h=From:To:Date:Message-Id:MIME-Version; b=lpCxyXxe9bQRo9OOm8PmakAcyC3N+ki6Ebw9EEzBaTElZRcYvvE7S7ZgS9xeqOBEj lctpbvwM0XOi6RoBmQEHf+9L1KbCA3nmzUWBboU17sDoX0FGSHoLTmxpMuW2+WDc8A Jx8xRoNatW/Ofsqv0q4/DXFqeb/paoUbsg4QMgD0= X-Virus-Scanned: amavisd-new at rptsys.com From: Shawn Anastasio To: xen-devel@lists.xenproject.org Cc: tpearson@raptorengineering.com, Shawn Anastasio , Andrew Cooper , George Dunlap , Jan Beulich , Julien Grall , Stefano Stabellini , Wei Liu Subject: [PATCH v4 4/4] maintainers: Add ppc64 maintainer Date: Fri, 16 Jun 2023 12:48:03 -0500 Message-Id: X-Mailer: git-send-email 2.30.2 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Signed-off-by: Shawn Anastasio --- MAINTAINERS | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/MAINTAINERS b/MAINTAINERS index 1bb7a6a839..25139fe4a3 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -460,6 +460,10 @@ X: xen/arch/x86/acpi/lib.c F: xen/drivers/cpufreq/ F: xen/include/acpi/cpufreq/ =20 +PPC64 +M: Shawn Anastasio +F: xen/arch/ppc/ + PUBLIC I/O INTERFACES AND PV DRIVERS DESIGNS M: Juergen Gross S: Supported --=20 2.30.2 From xen-devel-bounces@lists.xenproject.org Fri Jun 16 17:48:31 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 16 Jun 2023 17:48:31 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550340.859369 (Exim 4.92) (envelope-from ) id 1qADYg-0002Gd-UE; Fri, 16 Jun 2023 17:48:26 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550340.859369; Fri, 16 Jun 2023 17:48:26 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qADYg-0002GL-Pa; Fri, 16 Jun 2023 17:48:26 +0000 Received: by outflank-mailman (input) for mailman id 550340; Fri, 16 Jun 2023 17:48:25 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qADYf-0001uA-8h for xen-devel@lists.xenproject.org; Fri, 16 Jun 2023 17:48:25 +0000 Received: from raptorengineering.com (mail.raptorengineering.com [23.155.224.40]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id fa7e2d87-0c6d-11ee-8611-37d641c3527e; Fri, 16 Jun 2023 19:48:20 +0200 (CEST) Received: from localhost (localhost [127.0.0.1]) by mail.rptsys.com (Postfix) with ESMTP id 4F38482853A9; Fri, 16 Jun 2023 12:48:18 -0500 (CDT) Received: from mail.rptsys.com ([127.0.0.1]) by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032) with ESMTP id aQur3ftt4vIW; Fri, 16 Jun 2023 12:48:17 -0500 (CDT) Received: from localhost (localhost [127.0.0.1]) by mail.rptsys.com (Postfix) with ESMTP id 3FC348285513; Fri, 16 Jun 2023 12:48:17 -0500 (CDT) Received: from mail.rptsys.com ([127.0.0.1]) by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id 3aVNxc9v7Oug; Fri, 16 Jun 2023 12:48:17 -0500 (CDT) Received: from raptor-ewks-026.lan (5.edge.rptsys.com [23.155.224.38]) by mail.rptsys.com (Postfix) with ESMTPSA id 5F06D82853A9; Fri, 16 Jun 2023 12:48:16 -0500 (CDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: fa7e2d87-0c6d-11ee-8611-37d641c3527e DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com 3FC348285513 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD; t=1686937697; bh=T01hWp9Kvrb2rPTP6hJvEKLl9O5IcWW35Nb6t3dSRuw=; h=From:To:Date:Message-Id:MIME-Version; b=RI9jF3lNypUoCNwwj+cv6IZalJlzPlNRU1H1mYiVRxN8vLWcuA+T9Wqzi2DCP0oA9 cZgFl3lIQd3dbkiHHatfOQCXdKN9T26dEygYg5qY56um2rGUWYh2E4zevn1Z4ob04w Ofrw7Dt84ji/Wx+ijXmD3+oPIferJRb5Yh4rhxYA= X-Virus-Scanned: amavisd-new at rptsys.com From: Shawn Anastasio To: xen-devel@lists.xenproject.org Cc: tpearson@raptorengineering.com, Shawn Anastasio , Doug Goldstein , Stefano Stabellini , Andrew Cooper , George Dunlap , Jan Beulich , Julien Grall , Wei Liu Subject: [PATCH v4 0/4] Initial support for Power Date: Fri, 16 Jun 2023 12:47:59 -0500 Message-Id: X-Mailer: git-send-email 2.30.2 MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Hello all, This patch series adds support for building a minimal image for Power ISA 2.07B+ (POWER8+) systems. In addition to a patch adding support to the build system and a simple infinite loop at the entrypoint, patches to add ppc64le support to the CI as well as a MAINTAINERS update are included. Since Xen previously had support for a much older version of the ISA in version 3.2.3, we were able to carry over some headers and support routines from that version. Unlike that initial port though, this effort focuses solely on POWER8+ CPUs that are capable of running in Little Endian mode. With an appropriate powerpc64le-linux-gnu cross-toolchain, the minimal image can be built with: $ make XEN_TARGET_ARCH=3Dppc64 -C xen openpower_defconfig $ make XEN_TARGET_ARCH=3Dppc64 SUBSYSTEMS=3Dxen -C xen build The resulting binary can then be booted in a standard QEMU/pseries VM: $ qemu-system-ppc64 -M pseries-5.2 -m 256M -kernel xen/xen \ -vga none -serial mon:stdio -nographic Thanks, Shawn -- Changes from v4: - Change '$(@D)/$(@F)' to '$@' in ppc/Makefile - Add -m64, -mlittle-endian to CFLAGS to allow using ppc{32,64be} toolchains - Change IBM-specific '$' to '.' in head.S - Drop unnecessary ALIGN() in linker script in .bss Changes from v3: - Fix formatting of MAINTAINERS patch Changes from v2: - Add ppc64le cross-build container patch - Add ppc64le cross build CI job patch - Drop serial output patch (will be in future patch series) - Drop setup.c and unneeded headers from minimal build patch - Fixed ordering of MAINTAINERS patch + add F: line - Fix config/ppc64.mk option names - Clarify Kconfig Baseline ISA option help strings Shawn Anastasio (4): automation: Add container for ppc64le builds xen: Add files needed for minimal ppc64le build automation: Add ppc64le cross-build jobs maintainers: Add ppc64 maintainer MAINTAINERS | 4 + .../build/debian/bullseye-ppc64le.dockerfile | 28 +++ automation/gitlab-ci/build.yaml | 60 ++++++ automation/scripts/containerize | 1 + config/ppc64.mk | 5 + xen/Makefile | 5 +- xen/arch/ppc/Kconfig | 42 +++++ xen/arch/ppc/Kconfig.debug | 0 xen/arch/ppc/Makefile | 16 ++ xen/arch/ppc/Rules.mk | 0 xen/arch/ppc/arch.mk | 12 ++ xen/arch/ppc/configs/openpower_defconfig | 13 ++ xen/arch/ppc/include/asm/config.h | 63 +++++++ xen/arch/ppc/include/asm/page-bits.h | 7 + xen/arch/ppc/ppc64/Makefile | 1 + xen/arch/ppc/ppc64/asm-offsets.c | 0 xen/arch/ppc/ppc64/head.S | 27 +++ xen/arch/ppc/xen.lds.S | 172 ++++++++++++++++++ 18 files changed, 454 insertions(+), 2 deletions(-) create mode 100644 automation/build/debian/bullseye-ppc64le.dockerfile create mode 100644 config/ppc64.mk create mode 100644 xen/arch/ppc/Kconfig create mode 100644 xen/arch/ppc/Kconfig.debug create mode 100644 xen/arch/ppc/Makefile create mode 100644 xen/arch/ppc/Rules.mk create mode 100644 xen/arch/ppc/arch.mk create mode 100644 xen/arch/ppc/configs/openpower_defconfig create mode 100644 xen/arch/ppc/include/asm/config.h create mode 100644 xen/arch/ppc/include/asm/page-bits.h create mode 100644 xen/arch/ppc/ppc64/Makefile create mode 100644 xen/arch/ppc/ppc64/asm-offsets.c create mode 100644 xen/arch/ppc/ppc64/head.S create mode 100644 xen/arch/ppc/xen.lds.S -- 2.30.2 From xen-devel-bounces@lists.xenproject.org Fri Jun 16 17:48:32 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 16 Jun 2023 17:48:32 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550337.859344 (Exim 4.92) (envelope-from ) id 1qADYd-0001in-2j; Fri, 16 Jun 2023 17:48:23 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550337.859344; Fri, 16 Jun 2023 17:48:23 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qADYc-0001ig-VS; Fri, 16 Jun 2023 17:48:22 +0000 Received: by outflank-mailman (input) for mailman id 550337; Fri, 16 Jun 2023 17:48:21 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qADYb-0001iV-MI for xen-devel@lists.xenproject.org; Fri, 16 Jun 2023 17:48:21 +0000 Received: from raptorengineering.com (mail.raptorengineering.com [23.155.224.40]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id fa7cea49-0c6d-11ee-b232-6b7b168915f2; Fri, 16 Jun 2023 19:48:19 +0200 (CEST) Received: from localhost (localhost [127.0.0.1]) by mail.rptsys.com (Postfix) with ESMTP id 893518285513; Fri, 16 Jun 2023 12:48:18 -0500 (CDT) Received: from mail.rptsys.com ([127.0.0.1]) by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032) with ESMTP id bTrGxnN3Vp94; Fri, 16 Jun 2023 12:48:17 -0500 (CDT) Received: from localhost (localhost [127.0.0.1]) by mail.rptsys.com (Postfix) with ESMTP id 93ECF82857D3; Fri, 16 Jun 2023 12:48:17 -0500 (CDT) Received: from mail.rptsys.com ([127.0.0.1]) by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id 3XTbkHY92eNK; Fri, 16 Jun 2023 12:48:17 -0500 (CDT) Received: from raptor-ewks-026.lan (5.edge.rptsys.com [23.155.224.38]) by mail.rptsys.com (Postfix) with ESMTPSA id 235DC8285717; Fri, 16 Jun 2023 12:48:17 -0500 (CDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: fa7cea49-0c6d-11ee-b232-6b7b168915f2 DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com 93ECF82857D3 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD; t=1686937697; bh=sLLo5kuznR7Ll5zQ+dKN851VkZneROX7L26Gc4um15c=; h=From:To:Date:Message-Id:MIME-Version; b=KtRfZlmiXnT1Y1Z6FyePEZHcZgxovZ3dxbt8VRuLsp76rgsVg0mCLqQ7r2I2ORMRq hE3ru1ZuvQ217jOuywuSaoCiehx5ZxDy/Ntc/0W1tVF2plfluC1bVlFCsLWn9N0lhL nj/gIwxrqQmAzuieHJ8s/Yxtkh7CrBGrqy12r1s8= X-Virus-Scanned: amavisd-new at rptsys.com From: Shawn Anastasio To: xen-devel@lists.xenproject.org Cc: tpearson@raptorengineering.com, Shawn Anastasio , Doug Goldstein , Stefano Stabellini , Andrew Cooper Subject: [PATCH v4 1/4] automation: Add container for ppc64le builds Date: Fri, 16 Jun 2023 12:48:00 -0500 Message-Id: <0d59b5eb8de2b00839204c36a2a45eebab994369.1686936278.git.sanastasio@raptorengineering.com> X-Mailer: git-send-email 2.30.2 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Add a container for cross-compiling xen for ppc64le. Signed-off-by: Shawn Anastasio Acked-by: Andrew Cooper --- .../build/debian/bullseye-ppc64le.dockerfile | 28 +++++++++++++++++++ automation/scripts/containerize | 1 + 2 files changed, 29 insertions(+) create mode 100644 automation/build/debian/bullseye-ppc64le.dockerfile diff --git a/automation/build/debian/bullseye-ppc64le.dockerfile b/automa= tion/build/debian/bullseye-ppc64le.dockerfile new file mode 100644 index 0000000000..8a87631b52 --- /dev/null +++ b/automation/build/debian/bullseye-ppc64le.dockerfile @@ -0,0 +1,28 @@ +FROM debian:bullseye-slim +LABEL maintainer.name=3D"The Xen Project" \ + maintainer.email=3D"xen-devel@lists.xenproject.org" + +ENV DEBIAN_FRONTEND=3Dnoninteractive +ENV USER root + +# Add compiler path +ENV CROSS_COMPILE powerpc64le-linux-gnu- + +RUN mkdir /build +WORKDIR /build + +# build depends +RUN apt-get update && \ + apt-get --quiet --yes --no-install-recommends install \ + bison \ + build-essential \ + checkpolicy \ + flex \ + gawk \ + gcc-powerpc64le-linux-gnu \ + make \ + python3-minimal \ + && \ + apt-get autoremove -y && \ + apt-get clean && \ + rm -rf /var/lib/apt/lists* /tmp/* /var/tmp/* diff --git a/automation/scripts/containerize b/automation/scripts/contain= erize index 5476ff0ea1..6d46f63665 100755 --- a/automation/scripts/containerize +++ b/automation/scripts/containerize @@ -33,6 +33,7 @@ case "_${CONTAINER}" in _focal) CONTAINER=3D"${BASE}/ubuntu:focal" ;; _jessie) CONTAINER=3D"${BASE}/debian:jessie" ;; _jessie-i386) CONTAINER=3D"${BASE}/debian:jessie-i386" ;; + _bullseye-ppc64le) CONTAINER=3D"${BASE}/debian:bullseye-ppc64le" ;; _stretch|_) CONTAINER=3D"${BASE}/debian:stretch" ;; _stretch-i386) CONTAINER=3D"${BASE}/debian:stretch-i386" ;; _buster-gcc-ibt) CONTAINER=3D"${BASE}/debian:buster-gcc-ibt" ;; --=20 2.30.2 From xen-devel-bounces@lists.xenproject.org Fri Jun 16 18:23:21 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 16 Jun 2023 18:23:21 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550364.859393 (Exim 4.92) (envelope-from ) id 1qAE6N-0008Ms-3C; Fri, 16 Jun 2023 18:23:15 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550364.859393; Fri, 16 Jun 2023 18:23:15 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAE6N-0008Ml-0c; Fri, 16 Jun 2023 18:23:15 +0000 Received: by outflank-mailman (input) for mailman id 550364; Fri, 16 Jun 2023 18:23:13 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAE6L-0008Mf-JY for xen-devel@lists.xenproject.org; Fri, 16 Jun 2023 18:23:13 +0000 Received: from esa2.hc3370-68.iphmx.com (esa2.hc3370-68.iphmx.com [216.71.145.153]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id d7f1a88e-0c72-11ee-8611-37d641c3527e; Fri, 16 Jun 2023 20:23:10 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: d7f1a88e-0c72-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686939790; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=FftawUOo4lgeYeNvfblFloX62u6ugh3iT3j0C8i6E1Q=; b=HL3nRf3ps8+tr8N0c0+hu7qqFcN3hU9b5PAcg2UhrBMJCHxPuUTMduPp B8QF8sVgNrWA0W4sYKioovjg0F0ehdLiiSp4SKVaVhHwMq9D/eT8+26pY UlRXK+JfHkb/Z3qa1RbYTjn8s2nk1/KL+G/DQBjEmYeZ9vKWtCRMj9t7I s=; Authentication-Results: esa2.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none X-SBRS: 4.0 X-MesageID: 112988182 X-Ironport-Server: esa2.hc3370-68.iphmx.com X-Remote-IP: 162.221.156.123 X-Policy: $RELAYED IronPort-Data: A9a23:S2yGTKMxnQ/voPbvrR2ll8FynXyQoLVcMsEvi/4bfWQNrUp23zAPz zEbCjiGP6mJN2byLtknYI6x9BgP7ZPRn9E3Swto+SlhQUwRpJueD7x1DKtS0wC6dZSfER09v 63yTvGacajYm1eF/k/F3oDJ9CU6jufQAOKnUoYoAwgpLSd8UiAtlBl/rOAwh49skLCRDhiE/ Nj/uKUzAnf8s9JPGjxSs/rrRC9H5qyo42tG5wJmPpingXeF/5UrJMNHTU2OByOQrrl8RoaSW +vFxbelyWLVlz9F5gSNy+uTnuUiG9Y+DCDW4pZkc/HKbitq/0Te5p0TJvsEAXq7vh3S9zxHJ HehgrTrIeshFvWkdO3wyHC0GQkmVUFN0OevzXRSLaV/ZqAJGpfh66wGMa04AWEX0s1eX0Jt7 dw1ESsqdRucouadmOzjVuY506zPLOGzVG8eknRpzDWfBvc6W5HTBa7N4Le03h9p2JoIR6yHI ZNEN3w2Nk+ojx5nYz/7DLoXmuuyi2a5WDpfsF+P/oI84nTJzRw327/oWDbQUoXTH5QFzh/I/ Aoq+UzLDE8YH9in7gCHrC2xr+/thjjQZdodQejQGvlC3wTImz175ActfUu2p7y1h1CzX/pbK lcI4Ww+oK4q7kupQ9LhGRqirxasnDQRRt5RGO0S8xyWx+zf5APxLncAZi5MbpohrsBeeNAx/ gbXxZWzX2Up6eDLDyvHrd94sA9eJwA+BDEhRjckYDIexMLov6Q3pUqRFspsRfvdYsLOJd3g/ 9ybhHFg1+tC1pBXh/zTEUPv2Gz1+MWQJuIhzkCOBz/+sFskDGKwT9bwgWU3+8qsO2pworOpm HEf0/aT4+kVZX1mvHzcGb5ddF1FChvsDdE9vbKMN8N7n9hV0yT/Fb28GRknTKuTDu4KeCXyf GjYsh5L6ZlYMROCNPEnPdLsUZhwkvaxSLwJs8w4iPIUOvCdkyfdpklTibO4hTixwCDAb4lhU XtkTSpcJSlDUvk2pNZHb+wczaUq1kgDKZD7HPjGI+Cc+ePGPha9EO5VWGZim8hltMtoVi2Jq YcAXyZLoj0DONDDjt7/q99OfQFWdilhXvgbaaV/L4a+H+avI0l5Y9e5/F/rU9UNc3h9/gsQw kyAZw== IronPort-HdrOrdr: A9a23:BACyIq7Fy+cBoHCeWwPXwPDXdLJyesId70hD6qhwISY6TiX+rb HWoB17726TtN9/YhEdcLy7VJVoBEmskKKdgrNhWotKPjOW21dARbsKheCJrgEIWReOktK1vZ 0QC5SWY+eQMbEVt6nHCXGDYrQd/OU= X-Talos-CUID: 9a23:zyqo3G5WReqtTpch3Nss32dKOeM9UlDk11DLKFCdDU0xFuWJRgrF X-Talos-MUID: 9a23:+bF68QWLDXym1rbq/A3i2jNJMP9P2abwV10kkbcdoOK5bSMlbg== X-IronPort-AV: E=Sophos;i="6.00,248,1681185600"; d="scan'208";a="112988182" From: Andrew Cooper To: Xen-devel CC: Andrew Cooper , Jan Beulich , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Wei Liu , Alejandro Vallejo Subject: [PATCH 0.5/2] x86/boot: Clean up early error asm Date: Fri, 16 Jun 2023 19:23:03 +0100 Message-ID: <20230616182303.3546262-1-andrew.cooper3@citrix.com> X-Mailer: git-send-email 2.30.2 In-Reply-To: <20230615153157.444-1-alejandro.vallejo@cloud.com> References: <20230615153157.444-1-alejandro.vallejo@cloud.com> MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit The asm forming early error handling is a mix of local and non-local symbols, and has some pointless comments. Drop the "# Error message" comments, tweaking the style on modified lines, and make the symbols local. However, leave behind one real symbol so this logic disassembles nicely without merging in to acpi_boot_init(), which is the thing that happens to be immediately prior in my build. No functional change. Signed-off-by: Andrew Cooper --- CC: Jan Beulich CC: Roger Pau Monné CC: Wei Liu CC: Alejandro Vallejo Done in order to simplfy Alejandro's NX series a little. --- xen/arch/x86/boot/head.S | 33 +++++++++++++++++++-------------- 1 file changed, 19 insertions(+), 14 deletions(-) diff --git a/xen/arch/x86/boot/head.S b/xen/arch/x86/boot/head.S index 09bebf8635d0..d52dbc752e29 100644 --- a/xen/arch/x86/boot/head.S +++ b/xen/arch/x86/boot/head.S @@ -142,25 +142,27 @@ efi_platform: .section .init.text, "ax", @progbits -bad_cpu: - add $sym_offs(.Lbad_cpu_msg),%esi # Error message +early_error: + +.Lbad_cpu: + add $sym_offs(.Lbad_cpu_msg), %esi jmp .Lget_vtb -not_multiboot: - add $sym_offs(.Lbad_ldr_msg),%esi # Error message +.Lnot_multiboot: + add $sym_offs(.Lbad_ldr_msg), %esi jmp .Lget_vtb .Lnot_aligned: - add $sym_offs(.Lbag_alg_msg),%esi # Error message + add $sym_offs(.Lbag_alg_msg), %esi jmp .Lget_vtb .Lmb2_no_st: /* * Here we are on EFI platform. vga_text_buffer was zapped earlier * because there is pretty good chance that VGA is unavailable. */ - add $sym_offs(.Lbad_ldr_nst),%esi # Error message + add $sym_offs(.Lbad_ldr_nst), %esi jmp .Lget_vtb .Lmb2_no_ih: /* Ditto. */ - add $sym_offs(.Lbad_ldr_nih),%esi # Error message + add $sym_offs(.Lbad_ldr_nih), %esi jmp .Lget_vtb .Lmb2_no_bs: /* @@ -168,7 +170,7 @@ not_multiboot: * via start label. Then reliable vga_text_buffer zap is impossible * in Multiboot2 scanning loop and we have to zero %edi below. */ - add $sym_offs(.Lbad_ldr_nbs),%esi # Error message + add $sym_offs(.Lbad_ldr_nbs), %esi xor %edi,%edi # No VGA text buffer jmp .Lprint_err .Lmb2_efi_ia_32: @@ -176,11 +178,11 @@ not_multiboot: * Here we are on EFI IA-32 platform. Then reliable vga_text_buffer zap is * impossible in Multiboot2 scanning loop and we have to zero %edi below. */ - add $sym_offs(.Lbad_efi_msg),%esi # Error message + add $sym_offs(.Lbad_efi_msg), %esi xor %edi,%edi # No VGA text buffer jmp .Lprint_err .Lget_vtb: - mov sym_esi(vga_text_buffer),%edi + mov sym_esi(vga_text_buffer), %edi .Lprint_err: lodsb test %al,%al # Terminate on '\0' sentinel @@ -202,6 +204,9 @@ not_multiboot: .Lhalt: hlt jmp .Lhalt + .size early_error, . - early_error + .type early_error, @function + .code64 __efi64_mb2_start: @@ -221,8 +226,8 @@ __efi64_mb2_start: cmp $MULTIBOOT2_BOOTLOADER_MAGIC,%eax je .Lefi_multiboot2_proto - /* Jump to not_multiboot after switching CPU to x86_32 mode. */ - lea not_multiboot(%rip),%r15 + /* Jump to .Lnot_multiboot after switching CPU to x86_32 mode. */ + lea .Lnot_multiboot(%rip), %r15 jmp x86_32_switch .Lefi_multiboot2_proto: @@ -464,7 +469,7 @@ __start: /* Check for Multiboot bootloader. */ cmp $MULTIBOOT_BOOTLOADER_MAGIC,%eax - jne not_multiboot + jne .Lnot_multiboot /* Get mem_lower from Multiboot information. */ testb $MBI_MEMLIMITS,MB_flags(%ebx) @@ -655,7 +660,7 @@ trampoline_setup: /* Check for availability of long mode. */ bt $cpufeat_bit(X86_FEATURE_LM),%edx - jnc bad_cpu + jnc .Lbad_cpu /* Stash TSC to calculate a good approximation of time-since-boot */ rdtsc -- 2.30.2 From xen-devel-bounces@lists.xenproject.org Fri Jun 16 19:38:10 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 16 Jun 2023 19:38:10 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550369.859404 (Exim 4.92) (envelope-from ) id 1qAFGY-0007S2-Ih; Fri, 16 Jun 2023 19:37:50 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550369.859404; Fri, 16 Jun 2023 19:37:50 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAFGY-0007Rv-F4; Fri, 16 Jun 2023 19:37:50 +0000 Received: by outflank-mailman (input) for mailman id 550369; Fri, 16 Jun 2023 19:37:49 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAFGX-0007Rp-H6 for xen-devel@lists.xenproject.org; Fri, 16 Jun 2023 19:37:49 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [2604:1380:4641:c500::1]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 44368dbe-0c7d-11ee-8611-37d641c3527e; Fri, 16 Jun 2023 21:37:46 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 85F4F60B3C; Fri, 16 Jun 2023 19:37:44 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 1E58EC433C8; Fri, 16 Jun 2023 19:37:42 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 44368dbe-0c7d-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1686944263; bh=ihRB8uDucfIijVyIcygOdS4R4YauYeHx+2bhEEsfC78=; h=Date:From:To:cc:Subject:In-Reply-To:References:From; b=bT1NVsdWh2tUBxyGbXIasGWCemwUTrdOP3UcxSLupKhjWf+vXYfRfKGLWHK/AFF97 aJzulTfryJ92qnS6gY4MiMakXNRIj9byIsmFqSedatDTKTedd64uRUXIh54p2fTk6U EP/stKRyKsJV/ebn+9cWjoA/qbrzmMizuvz6Ek1H6IuMluE2C9AZ7zqqw4PiHRIh0K E/C+8coda+h7RoPoD2oeWvK2J4FYLECRLyRoMqwn+L5aKsnaMIXX305yFaI7zyOuIt 7ulfh+bk283YufTCPRT3S018dTZZQOAt+amfzLxfGnP/OnAQXGv9fp9lkcexJJa01R 59nANIyCYysWQ== Date: Fri, 16 Jun 2023 12:37:41 -0700 (PDT) From: Stefano Stabellini X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop To: Shawn Anastasio cc: xen-devel@lists.xenproject.org, tpearson@raptorengineering.com, Doug Goldstein , Stefano Stabellini , Andrew Cooper Subject: Re: [PATCH v4 1/4] automation: Add container for ppc64le builds In-Reply-To: <0d59b5eb8de2b00839204c36a2a45eebab994369.1686936278.git.sanastasio@raptorengineering.com> Message-ID: References: <0d59b5eb8de2b00839204c36a2a45eebab994369.1686936278.git.sanastasio@raptorengineering.com> User-Agent: Alpine 2.22 (DEB 394 2020-01-19) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII On Fri, 16 Jun 2023, Shawn Anastasio wrote: > Add a container for cross-compiling xen for ppc64le. > > Signed-off-by: Shawn Anastasio > Acked-by: Andrew Cooper Acked-by: Stefano Stabellini > --- > .../build/debian/bullseye-ppc64le.dockerfile | 28 +++++++++++++++++++ > automation/scripts/containerize | 1 + > 2 files changed, 29 insertions(+) > create mode 100644 automation/build/debian/bullseye-ppc64le.dockerfile > > diff --git a/automation/build/debian/bullseye-ppc64le.dockerfile b/automation/build/debian/bullseye-ppc64le.dockerfile > new file mode 100644 > index 0000000000..8a87631b52 > --- /dev/null > +++ b/automation/build/debian/bullseye-ppc64le.dockerfile > @@ -0,0 +1,28 @@ > +FROM debian:bullseye-slim > +LABEL maintainer.name="The Xen Project" \ > + maintainer.email="xen-devel@lists.xenproject.org" > + > +ENV DEBIAN_FRONTEND=noninteractive > +ENV USER root > + > +# Add compiler path > +ENV CROSS_COMPILE powerpc64le-linux-gnu- > + > +RUN mkdir /build > +WORKDIR /build > + > +# build depends > +RUN apt-get update && \ > + apt-get --quiet --yes --no-install-recommends install \ > + bison \ > + build-essential \ > + checkpolicy \ > + flex \ > + gawk \ > + gcc-powerpc64le-linux-gnu \ > + make \ > + python3-minimal \ > + && \ > + apt-get autoremove -y && \ > + apt-get clean && \ > + rm -rf /var/lib/apt/lists* /tmp/* /var/tmp/* > diff --git a/automation/scripts/containerize b/automation/scripts/containerize > index 5476ff0ea1..6d46f63665 100755 > --- a/automation/scripts/containerize > +++ b/automation/scripts/containerize > @@ -33,6 +33,7 @@ case "_${CONTAINER}" in > _focal) CONTAINER="${BASE}/ubuntu:focal" ;; > _jessie) CONTAINER="${BASE}/debian:jessie" ;; > _jessie-i386) CONTAINER="${BASE}/debian:jessie-i386" ;; > + _bullseye-ppc64le) CONTAINER="${BASE}/debian:bullseye-ppc64le" ;; > _stretch|_) CONTAINER="${BASE}/debian:stretch" ;; > _stretch-i386) CONTAINER="${BASE}/debian:stretch-i386" ;; > _buster-gcc-ibt) CONTAINER="${BASE}/debian:buster-gcc-ibt" ;; > -- > 2.30.2 > From xen-devel-bounces@lists.xenproject.org Fri Jun 16 19:38:30 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 16 Jun 2023 19:38:30 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550376.859414 (Exim 4.92) (envelope-from ) id 1qAFHB-000808-Td; Fri, 16 Jun 2023 19:38:29 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550376.859414; Fri, 16 Jun 2023 19:38:29 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAFHB-000801-Qf; Fri, 16 Jun 2023 19:38:29 +0000 Received: by outflank-mailman (input) for mailman id 550376; Fri, 16 Jun 2023 19:38:28 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAFHA-0007nJ-PR for xen-devel@lists.xenproject.org; Fri, 16 Jun 2023 19:38:28 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 5ceb35c6-0c7d-11ee-b232-6b7b168915f2; Fri, 16 Jun 2023 21:38:27 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 253E561D0A; Fri, 16 Jun 2023 19:38:26 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id D89C6C433C8; Fri, 16 Jun 2023 19:38:24 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 5ceb35c6-0c7d-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1686944305; bh=WXB/ArnwpjvVIhXCr6VXVgcO588Ecvuq5T24cMabAF8=; h=Date:From:To:cc:Subject:In-Reply-To:References:From; b=aU9tWRREG6KkPw4n1n8G8haM9PzE5rrRS5y8a8lgohz4bz1ee41Itt1Viy5wxOO+B cVHAOZl++uuRG2yuEUxOZLHv9CWqeecx+nKVZTN94Ia+41U6Q4ZEtfE7I07getc2YM BeprDlXXoeozjHuEe+G1fJ6MSCYZm6NPyoHHy4UKFyq4jZW7bXhl1RAcq1XV2vRVY6 CzyExZRWDq+J81kJKW2jj2lrwGA4yCvXN6x2l8PKRbcJbYw0SebmXyYOug0hld4BLP rIh5E1tH708JXfm3sD7iA9JpejCfBGURVgkUxcvXuwpxlRmXKEldYpsivBY1WwlO1m 4tRHqdujIYaog== Date: Fri, 16 Jun 2023 12:38:23 -0700 (PDT) From: Stefano Stabellini X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop To: Shawn Anastasio cc: xen-devel@lists.xenproject.org, tpearson@raptorengineering.com, Doug Goldstein , Stefano Stabellini Subject: Re: [PATCH v4 3/4] automation: Add ppc64le cross-build jobs In-Reply-To: <1a09823b03b5054c97efcf7008f9626d8ee83f49.1686936278.git.sanastasio@raptorengineering.com> Message-ID: References: <1a09823b03b5054c97efcf7008f9626d8ee83f49.1686936278.git.sanastasio@raptorengineering.com> User-Agent: Alpine 2.22 (DEB 394 2020-01-19) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII On Fri, 16 Jun 2023, Shawn Anastasio wrote: > Add build jobs to cross-compile Xen for ppc64le. > > Signed-off-by: Shawn Anastasio Acked-by: Stefano Stabellini > --- > automation/gitlab-ci/build.yaml | 60 +++++++++++++++++++++++++++++++++ > 1 file changed, 60 insertions(+) > > diff --git a/automation/gitlab-ci/build.yaml b/automation/gitlab-ci/build.yaml > index 420ffa5acb..bd8c7332db 100644 > --- a/automation/gitlab-ci/build.yaml > +++ b/automation/gitlab-ci/build.yaml > @@ -183,6 +183,33 @@ > variables: > <<: *gcc > > +.ppc64le-cross-build-tmpl: > + <<: *build > + variables: > + XEN_TARGET_ARCH: ppc64 > + tags: > + - x86_64 > + > +.ppc64le-cross-build: > + extends: .ppc64le-cross-build-tmpl > + variables: > + debug: n > + > +.ppc64le-cross-build-debug: > + extends: .ppc64le-cross-build-tmpl > + variables: > + debug: y > + > +.gcc-ppc64le-cross-build: > + extends: .ppc64le-cross-build > + variables: > + <<: *gcc > + > +.gcc-ppc64le-cross-build-debug: > + extends: .ppc64le-cross-build-debug > + variables: > + <<: *gcc > + > .yocto-test: > stage: build > image: registry.gitlab.com/xen-project/xen/${CONTAINER} > @@ -516,6 +543,39 @@ archlinux-current-gcc-riscv64-debug-randconfig: > EXTRA_FIXED_RANDCONFIG: > CONFIG_COVERAGE=n > > +# Power cross-build > +debian-bullseye-gcc-ppc64le: > + extends: .gcc-ppc64le-cross-build > + variables: > + CONTAINER: debian:bullseye-ppc64le > + KBUILD_DEFCONFIG: openpower_defconfig > + HYPERVISOR_ONLY: y > + > +debian-bullseye-gcc-ppc64le-debug: > + extends: .gcc-ppc64le-cross-build-debug > + variables: > + CONTAINER: debian:bullseye-ppc64le > + KBUILD_DEFCONFIG: openpower_defconfig > + HYPERVISOR_ONLY: y > + > +debian-bullseye-gcc-ppc64le-randconfig: > + extends: .gcc-ppc64le-cross-build > + variables: > + CONTAINER: debian:bullseye-ppc64le > + KBUILD_DEFCONFIG: openpower_defconfig > + RANDCONFIG: y > + EXTRA_FIXED_RANDCONFIG: > + CONFIG_COVERAGE=n > + > +debian-bullseye-gcc-ppc64le-debug-randconfig: > + extends: .gcc-ppc64le-cross-build-debug > + variables: > + CONTAINER: debian:bullseye-ppc64le > + KBUILD_DEFCONFIG: openpower_defconfig > + RANDCONFIG: y > + EXTRA_FIXED_RANDCONFIG: > + CONFIG_COVERAGE=n > + > # Yocto test jobs > yocto-qemuarm64: > extends: .yocto-test-arm64 > -- > 2.30.2 > From xen-devel-bounces@lists.xenproject.org Fri Jun 16 19:43:35 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 16 Jun 2023 19:43:35 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550381.859423 (Exim 4.92) (envelope-from ) id 1qAFM3-00016E-Ee; Fri, 16 Jun 2023 19:43:31 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550381.859423; Fri, 16 Jun 2023 19:43:31 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAFM3-000167-Bp; Fri, 16 Jun 2023 19:43:31 +0000 Received: by outflank-mailman (input) for mailman id 550381; Fri, 16 Jun 2023 19:43:30 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAFM1-00015l-Lp for xen-devel@lists.xenproject.org; Fri, 16 Jun 2023 19:43:29 +0000 Received: from esa1.hc3370-68.iphmx.com (esa1.hc3370-68.iphmx.com [216.71.145.142]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 0e96bee3-0c7e-11ee-8611-37d641c3527e; Fri, 16 Jun 2023 21:43:26 +0200 (CEST) Received: from mail-dm6nam10lp2105.outbound.protection.outlook.com (HELO NAM10-DM6-obe.outbound.protection.outlook.com) ([104.47.58.105]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 16 Jun 2023 15:43:23 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by MN2PR03MB4959.namprd03.prod.outlook.com (2603:10b6:208:1a3::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.29; Fri, 16 Jun 2023 19:43:21 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606%4]) with mapi id 15.20.6500.029; Fri, 16 Jun 2023 19:43:20 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 0e96bee3-0c7e-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686944606; h=message-id:date:from:subject:to:cc:references: in-reply-to:content-transfer-encoding:mime-version; bh=A5NjHm3gt+ChQ3yuJcEaOQ7J6Gtoz1QE7BwOJNDPvT8=; b=K8mv77nMnbUKQI4ox18TRJFC6W3xbur3pyMds44GV+7ppdt3XwxVuQIo mCG8kbhCVNfjEvitoHhKf6oHulzhO9XEvhkrHUUQICpkrxfJyL3DNQogY 0mMKjChh+k9xo2xRf+BbTipNbZ3wFDgBDZ2zqBxPVnHgi/omOpaoLFq5I U=; X-IronPort-RemoteIP: 104.47.58.105 X-IronPort-MID: 113519403 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:GGSD7KBV4DabnBVW/+niw5YqxClBgxIJ4kV8jS/XYbTApD520GZUy 2YXXTjUbPreYGqnKd0gbty08E9S7J+Hm95lQQY4rX1jcSlH+JHPbTi7wuUcHAvJd5GeExg3h yk6QoOdRCzhZiaE/n9BCpC48T8nk/nOHuGmYAL9EngZbRd+Tys8gg5Ulec8g4p56fC0GArIs t7pyyHlEAbNNwVcbCRMs8pvlDs15K6p4G1B4ARlDRx2lAS2e0c9Xcp3yZ6ZdxMUcqEMdsamS uDKyq2O/2+x13/B3fv8z94X2mVTKlLjFVDmZkh+AsBOsTAbzsAG6Y4pNeJ0VKtio27hc+ada jl6ncfYpQ8BZsUgkQmGOvVSO3kW0aZuoNcrLZUj2CA6IoKvn3bEmp1T4E8K0YIw2u17AkVz8 90hIxMjNhucn8WfybaKRbw57igjBJGD0II3nFhFlGmcIdN4BJfJTuPN+MNS2yo2ioZWB/HCa sEFaD1pKhPdfxlIPVRRA5U79AuqriCnL3sE9xTI9exuuzW7IA9ZidABNPL8fNCQSNoTtUGfv m/cpEzyAw0ANczZwj2Amp6prraWxn6iCd5KT9VU8NY3o0KpnlIfAydMUACfoNCoi3SPWeBmf hl8Fi0G6PJaGFaQZtD5Uh+xpnKeuVgCUt5UHu89wAqJzbfYpQ2eAwAsXjNHLdArqsIybTgrz UOS2cPkAyR1t7+YQm7b8a2bxRuwMyUIKW4JZQcfUBAIpdLkpekbkRbnXttlVqmvgbXI9SrYx jmLqG0ygusVhMtSj6Gjpwmf3nSru4TDSRMz6kPPRGW54whlZYmjIYu19Vzc6vUGJ4GcJrWcg EU5dwGlxLhmJfmweOalGY3hwJnBCy65DQDh IronPort-HdrOrdr: A9a23:z3Kd/Kgfe4ebgyqgOkUg90UlvXBQXh4ji2hC6mlwRA09TyX5ra 2TdZUgpHrJYVMqMk3I9uruBEDtex3hHP1OkOss1NWZPDUO0VHARO1fBOPZqAEIcBeOldK1u5 0AT0B/YueAd2STj6zBkXSF+wBL+qj6zEiq792usEuEVWtRGsVdB58SMHfiLqVxLjM2YqYRJd 6nyedsgSGvQngTZtTTPAh/YwCSz+e78q4PeHQ9dmca1DU= X-Talos-CUID: 9a23:l60qxWzr9sbS2Tc25VLdBgU0EcwmVkDb7U7bAGHgAnlxb5ScTW6frfY= X-Talos-MUID: 9a23:PIiWJwkz6XZzJOD4rAx8dno/F9hSu5qiA3pXlM4iuuCVNBZBOQWk2WE= X-IronPort-AV: E=Sophos;i="6.00,248,1681185600"; d="scan'208";a="113519403" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Pg/navPRWRw1A5GYtim9/yIOjQ6VQit7PMaqA8e//3F1e9Yt42mAbXlwJ0YGhk03Zp0bMWHpIb546zKkKiHb3p2CXZNjyvO/AfXl1Fzikn/r+gk7QLmY9E8HkRlDVuJghVhxTQjhbIzXCDhV3h3KR3JMDz9ib7wh+FXsSYTO0p4HVkb5IQO0c5apZCXkUQngYCLlexdtz/Eymzbqu1IWvu0XlEcQz7iO+FV4thmq/aAkPgCopMm6nETPNJdb0W0nv5VH5kltXT9zVaP5a7ShU01dPhaU3usTBOSafaGI0juu4yIyFEWNdThMt5g5eMmWmsu3yXQKDPKa64pRRrU5cQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=tDaYED4IRlGS3YbCLDGiQK3+y0vatorHAbYvkdhSWeM=; b=M7uS2dzkbBdjat5cefhRsTUuUqHrg/Q6xZWj5t+PSewwFmxHVBXGZHRIPlXMN4I3ebZ5tDL8sbosSg/bNU+VDrAquhWWy9NJsRcD6BkCDDCwovyL6yop2Ob7hWWXDULY3gHie8cQ1CgMTcHsvaRoIPKftzROydvv8m4FstxNMGMZJbqkT86YSF188C1JbSTLWk3TrWzGKHRt9qANRgwdhDvTfvs2a3ux+wk9tiNUWlJ6nty7FKwADTgglvWySA2Mi3LL3AiOsu0Y17pq+AM77KWfWn3FXIiKweWGcFE2o28K77iq7VlLq3YKXm4/Zksx/YozsJu9hnQEp8UEExQvJQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=tDaYED4IRlGS3YbCLDGiQK3+y0vatorHAbYvkdhSWeM=; b=A3/ZDurDykD8sfidFNmLsJVfCR4I7a6Gzq8vEXZAfCxa9+5yXjfowVVRC4UvczYY2XAz01pvhWqkF4YNxUFcQV+mYAo1+56Hp1s4nh+m9et5eCc3lUVqNZXd0oKEyQcEuCYBw2/IstPen4BKSmoCcXFpoy+9Q0lZ7SorOCD5rq4= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: Date: Fri, 16 Jun 2023 20:43:14 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 From: Andrew Cooper Subject: Re: [PATCH v2 1/2] x86/boot: Clear XD_DISABLE from the early boot path Content-Language: en-GB To: Alejandro Vallejo , Xen-devel Cc: Jan Beulich , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu References: <20230615153157.444-1-alejandro.vallejo@cloud.com> <20230615153157.444-2-alejandro.vallejo@cloud.com> In-Reply-To: <20230615153157.444-2-alejandro.vallejo@cloud.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO2P265CA0105.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:c::21) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|MN2PR03MB4959:EE_ X-MS-Office365-Filtering-Correlation-Id: 984392ea-5d98-49a0-9d40-08db6ea1f041 X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: nqEI/DWeP2MrUnu0Yr1FeGbR9wMgpb7Dybq6DLZQrS9uQCA/IDy1aN/65k6d6g9MhRDME8wfzu6W64ZCGa/tJSIBZVuaE66RXtAoLWB5Hn6gbsMrGWBRcmM819nIPsd9fUjeMJLnOX0kWeSn8BnJpwoxR/a9CSdTs096COZpe0KoJoO9FCUn+LGhXcomjl1qEhDrRaPcvtvDmjdHsduLTowF7hM2L3h6rS5m6I2VeK5wKnQK5TNnOMzkhZH1/1O8yRp6C00C//qxInjwTMn+SMT6tFqUV8ptpvc8LObFqmDWbtHIX9nmXs9lxyaHT9BzuinbCPhM+nHKJPo3yriPEgg/cH1ysAEHkCsCMdZAwIjJW5jSzopgyUcVcNPlWELh+Fa2y6EjyIYEhMc4CPbQUTAcSq5jI5uvjZ3ihcbKNmiVskjL5ss1MwyF5do8qF061GN9witxoYb0Hjzgdw0p+JO2l3djR0mCg1tGo5ku5nbpf0Md/6ZmjJlLOy0Zq7PjQzG2Nas2v2QBpgy4k9jGn1ytn305t6XA9Y7WJ+sPi3x5HUtUMayjPD5Jr4VZ+LPIHR/VyrAQIk7zUBc7FitmQMQ34tTiQE8sKm1c3oz2orX+RQ0OkK/fQhk98YUNQQhkDmFagZl1i17K3G4Y//mw7g== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(346002)(376002)(39860400002)(396003)(366004)(136003)(451199021)(508600001)(110136005)(54906003)(6666004)(6486002)(8936002)(5660300002)(82960400001)(8676002)(41300700001)(36756003)(2906002)(86362001)(31696002)(38100700002)(66476007)(66556008)(316002)(66946007)(4326008)(26005)(53546011)(6512007)(6506007)(186003)(31686004)(83380400001)(2616005)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?NFJVK2R0U2FSMHFMZzNxaUVzaHRtUXFXQkxsb3I2cWk0MEEyNHV5NCtzQkk3?= =?utf-8?B?eTNhaCtYZG9GU0FualE0Sy9iOEV2NjZhU1VSRkJXeCtNRk1aS2g4Zk1NM2xx?= =?utf-8?B?MjhqVm1rVDZFUjEzSGJJa3h4V24zM1llOEhNRmxscjFBUFlwSWxHOTI1RitE?= =?utf-8?B?amhrUWQvWlc0TkVwVzVzZTNCdU9JRGR3UnZTT2hXY2FYaHpYUkFLVk92VnBD?= =?utf-8?B?ZlJjeFY1eGtiaUYvKy90b2RuWFNwN1hKUGNCN2o5WHBTZUZmVkFPM1BMY09S?= =?utf-8?B?Y05HTjNENGpxcGJKQUxmeWhRNXZIWlh4SWJUZWI1Y3l6UGo0SVJGak9XLyt1?= =?utf-8?B?NFZnM1liNWZ0MFNUWjRVNE5hZWJPNVJ1Z0Z4dmpLcDVwTHdTTkNuNDdXZm5p?= =?utf-8?B?U2JFUG5uM29ndmRBWEJ1d2xscWcyM09oR25kQWRlY2ZuaUFHbnFjM1BHak5i?= =?utf-8?B?STV0WXhNeldZdkxLY0xKenZnVTVVYkRPSDBkczNQanBaS2xhK3g5S0FtSnpm?= =?utf-8?B?U29Zc2hKOFhab256YU1xZEdaSFhONjFkbE9aaXpuYmpvblhUYkwzT1h2YkNH?= =?utf-8?B?em1ReFdnSEZsaU9FdnV4Yy9rbUptWHZLN3IyNVgyOHFlQ3lwa1RRRHAwRDRV?= =?utf-8?B?eGE5VUlUUmt1TGordUFYWE5QaDZrMFR4MkN2L0tmbVMyV2svY0ZpOHpRckhv?= =?utf-8?B?VU1yejVSZjhrOU9iNWtQZ1p0SlM4Qnh3VVNjcE5jM09SOE9hV3BWcVpKUFdq?= =?utf-8?B?bk9xa1VCbmx5N3RUNjhDRll2emtuMG1HNmdoWGxoU1lCOWpjSXgra0RkOXly?= =?utf-8?B?VzVFbnZVc29hYVRSUWlscnJiZDlCVnJuejNXeDFQRzZTdmNnRVl0YXI1ZmJ1?= =?utf-8?B?UnFGa29CUkZPQ1EvTjNjb1l0Q0srVnNWNkN2dnY0SjJOQlR0RC9ESTJueGdu?= =?utf-8?B?VjBWTnh4Qlg0NGdxWk5JVThZMXVBbXZwbmlFOHR1SVlKVXlYMjVRelMyOWhU?= =?utf-8?B?dmlsNDl3Wjhxd0pCcjBGU2NXOExMTmtpYS9nQmFZaGF6cnA3NTdvVWw4R2pR?= =?utf-8?B?S0tCdnlOTDN5K21aNmJZSkg0ZnNqalh1dTBtajZPYjYwYVk1SVdlU2o4MUFY?= =?utf-8?B?YlVDNm1NOUpYMThlM0hITC9BcXBUb2J4OGVOZW5jOWhVVXhQVGJxQk1UR3BG?= =?utf-8?B?RTUxV09sR285RmhYeUNaM2xPbW54Z3o1eHRuQkhOZ3FNR2NuakRxRlhGd2pX?= =?utf-8?B?QWlUWmtoNTkrd1ArdHNQNnhDcEpKTFRRallTZ25KUE4zVXJ6SHZ2Qzg3ZGhD?= =?utf-8?B?NExTRmZNZWY2b1JjNjJCZlp6eGM2UTVJcVo5Zmt0K09Qd1RQb0k4Wm9PT2pn?= =?utf-8?B?UUQxa3dubFhZSXN5ZEw2cnYyQm0vNm5lYXBkZzNzeHV3Wkx2WkM0a3lrVHVN?= =?utf-8?B?Nko2Wmt2Uy9zSHBPZlVkNXdJMG8xcXNqalNPS2xFOUxjZ2x5RWtIVjRCT1VB?= =?utf-8?B?NTNTb0JOZ2JCVC84ejI3QXhSV2s1RUlQT2dMVjl5UlBnempBT1NBdXRLK1lP?= =?utf-8?B?VmZTeUd0K3dOemRWbklaUjNZWldKTjF3azRZWHk5bGdtWFI4bDNLUlUvYnRZ?= =?utf-8?B?MXhDak8zL25uN3hSQXZLNFBYZ2JGUW10b2RSSHJvcHFpZEVlY2Ewa1JPV3lX?= =?utf-8?B?M3loaHROZUFlcFQxVVN3MGZYSUN2Ly9ydElqU0x1U2dTUy8zZVhJWnRjWFNi?= =?utf-8?B?NzZHVEpnU3lOSWtPejJ5bzM5RklZM2p6eUltMzhrNmhicW9NbENkUlR6MHZr?= =?utf-8?B?MHhvOGdUM2t0WjJtcVBpTzZtbi9vamRCbzZwMXk4VVB0d0JIaStKZ3FTbHJ5?= =?utf-8?B?YVBVK0cxeWl0WUJqR2x0MlN0Tm1zSlQ1NHEvdDM3K0czR2llS2lkY2lhaDc0?= =?utf-8?B?MVIxWUNXa0FvVWhsVk1jMDIvcHZySm1UMTJObFVDL1IzZXFFM296clhWcEJv?= =?utf-8?B?UkxHS2FaQm13S1FaU0RtRExPV0JYKzc2ZDJsdEw3MDIvR3hXOTZ4aWdiSm01?= =?utf-8?B?Y2drV2M4MFBKT3o2cFlkSVNsaUhJK05qNnZqcFlBQVFLTmJuTUhrejNRazRE?= =?utf-8?B?aGRsQThDeUhBbCtjTVg0Wkp0L0oyNnNSeTJuZTd3MFJMYVU5UHFjQUtydHEw?= =?utf-8?B?N1E9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: ENk8AXtEBA3GY1+zpjPhjYapyXdsKUCgrCXp1mO468wduJSjeHHxa91bxEe5R9kS0UD203T90dOBx9aVLnf0eQyu3PpwJeSb3ISQerWGq62c873jIFWRTNORubIyPnp29kY2BpMtFqCFkmCm+I0tTXjG47wRfCtzKf1QmLQHUxiTEu14nx09UBp/lsOs+tfor2F83cuADjWnBauyRbXVUFIFrf+/to0DGNWLgRzKcxBVFnDRGPogw+8tr4Lloos3wmeqpufAq/G6CQNjfeGB7V1sD75Yg4KrckAN0PbtZl+rtsGhqOHhUKdg9KrSiOiikO+EDoeQRY64PdUuNiYidT17X647X2ChAYsz1c5JFWeIEM1ANpcbxuUVFgJeZr/2ClirwkOPYv0usQtIyLojoeBLF8UG450d/TtwBNKo4t/zvBor0B+HfxYlpI9M7YeqHIPHuvQEknNvkK+GnfLE8Cd9eaGDPkJd6SDMrjO8RVblA+0Eon+NDSvV/ZsK7NjAO1rXhohNftgf38JK3gAvYin3tbZc/kLlrbplCYyHxCx87pYhWe5XXtzciB8yLQH2THNJiawLR2UcGcODgUd9fNo4gE69HkA0+4NiOfx096ah8F14TiWrrB3nZvsp9ddddUvPnEtRwJh2sJD2zigEHdErplItKovF2MChKm29G23bUZPzsLcxSD6QoEuFhm5byvWFkTHZ2ibzDyWITFYWaG7XNMrfc1bXwu3f9I1F6KcCGgKqI01i8zZVuhceD0MZCuk1bx9/rTE93/YxL8NtfEQR+3WDNu+Wq6Z8LXsev7QjW4rF8ZHokSxOK59yu4IvL93KHSFYx7BOgFrXqJc9+f/zHdIUMKdskzrl9LNBefw= X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 984392ea-5d98-49a0-9d40-08db6ea1f041 X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Jun 2023 19:43:20.6093 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: gEls921Z+8tU31xl3IIX09MooBmQrrNJdiz5l3Z74SlP+vJ4QFlsc4DO0kQDaTDRO5edp7yUz2EGqqomYyklTpn+XUXU9qPq74jQ8lA1fW4= X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN2PR03MB4959 On 15/06/2023 4:31 pm, Alejandro Vallejo wrote: > diff --git a/xen/arch/x86/boot/head.S b/xen/arch/x86/boot/head.S > index 09bebf8635..ce62eae6f3 100644 > --- a/xen/arch/x86/boot/head.S > +++ b/xen/arch/x86/boot/head.S > @@ -142,8 +142,8 @@ efi_platform: > > .section .init.text, "ax", @progbits > > -bad_cpu: > - add $sym_offs(.Lbad_cpu_msg),%esi # Error message > +.Lbad_cpu: > + add $sym_offs(.Lbad_cpu_msg),%esi > jmp .Lget_vtb > not_multiboot: > add $sym_offs(.Lbad_ldr_msg),%esi # Error message > @@ -647,15 +647,59 @@ trampoline_setup: > cpuid > 1: mov %edx, CPUINFO_FEATURE_OFFSET(X86_FEATURE_LM) + sym_esi(boot_cpu_data) > > - /* Check for NX. Adjust EFER setting if available. */ > + /* Check for availability of long mode. */ > + bt $cpufeat_bit(X86_FEATURE_LM),%edx > + jnc .Lbad_cpu > + > + /* Check for NX */ > bt $cpufeat_bit(X86_FEATURE_NX), %edx > + jc .Lhas_nx_bit This part of the diff is far more legible when rebased over the 0.5/2 patch I've just emailed out.  I've got the rebase locally if you want it. Although I'd suggest that this label name be .Lgot_nx. > + > + /* > + * NX appears to be unsupported, but it might be hidden. > + * > + * Intel CPUs (may) implement MSR_IA32_MISC_ENABLE. Among other > + * things this MSR has a bit that artificially hides NX support in > + * CPUID. Xen _really_ wants that feature enabled if present, so we > + * have to determine if (a) the MSR exists and if so (b) clear the > + * bit. > + * > + * For native boots this is perfectly fine because the MSR was > + * introduced before Netburst, which was the first family to > + * provide 64bit support. So we're safe simply accessing it as long > + * as long mode support has already been checked. > + * > + * For the virtualized case the MSR might not be emulated though, > + * so we make sure to do an initial check for NX in order to bypass > + * this MSR read I'd suggest reordering this a bit, and swapping some what for why.  How about: --- NX appears to be unsupported, but it might be hidden. The feature is part of the AMD64 spec, but the very first Intel 64bit CPUs lacked the feature, and thereafter there was a firmware knob to disable the feature.  Undo the disable if possible. All 64bit Intel CPUs support this MSR.  If virtualised, expect the hypervisor to either emulate the MSR or give us NX. --- > + */ > + xor %eax,%eax > + cpuid > + cmpl $X86_VENDOR_INTEL_EBX,%ebx Where possible, spaces after commas and without size suffixes (the l on cmpl here).  While not relevant here > + jnz .Lno_nx_bit The "_bit" is still redundant.  Simply .Lno_nx will do. > + cmpl $X86_VENDOR_INTEL_EDX,%edx > + jnz .Lno_nx_bit > + cmpl $X86_VENDOR_INTEL_ECX,%ecx > + jnz .Lno_nx_bit > + > + /* Clear the XD_DISABLE bit */ > + movl $MSR_IA32_MISC_ENABLE, %ecx > + rdmsr > + btrl $2, %edx It's unfortunate that we don't have an asm-safe ilog2().  Oh well. > jnc 1f > - orb $EFER_NXE >> 8, 1 + sym_esi(trampoline_efer) > -1: > + wrmsr > + orb $MSR_IA32_MISC_ENABLE_XD_DISABLE >> 32, 4 + sym_esi(trampoline_misc_enable_off) > > - /* Check for availability of long mode. */ > - bt $cpufeat_bit(X86_FEATURE_LM),%edx > - jnc bad_cpu > +1: /* Check again for NX */ Failing to clear XD_DISABLE wants to go to .Lno_nx, not to re-scan CPUID having done nothing to the MSR. > + mov $0x80000001,%eax > + cpuid > + bt $cpufeat_bit(X86_FEATURE_NX), %edx > + jnc .Lno_nx_bit > + > +.Lhas_nx_bit: > + /* Adjust EFER is NX is present */ "Adjust EFER, given that NX is present". > diff --git a/xen/arch/x86/cpu/intel.c b/xen/arch/x86/cpu/intel.c > index 168cd58f36..46b0cd8dbb 100644 > --- a/xen/arch/x86/cpu/intel.c > +++ b/xen/arch/x86/cpu/intel.c > @@ -305,23 +305,23 @@ static void cf_check early_init_intel(struct cpuinfo_x86 *c) > c->x86_cache_alignment = 128; > > /* Unmask CPUID levels and NX if masked: */ > - rdmsrl(MSR_IA32_MISC_ENABLE, misc_enable); > - > - disable = misc_enable & (MSR_IA32_MISC_ENABLE_LIMIT_CPUID | > - MSR_IA32_MISC_ENABLE_XD_DISABLE); > - if (disable) { > - wrmsrl(MSR_IA32_MISC_ENABLE, misc_enable & ~disable); > - bootsym(trampoline_misc_enable_off) |= disable; > - bootsym(trampoline_efer) |= EFER_NXE; > - } > + if (rdmsr_safe(MSR_IA32_MISC_ENABLE, misc_enable) == 0) { There's no need to change rdmsrl() to rdmsr_safe(), and not doing so will shrink this diff a lot. The only thing you need to alter the re-enable NX printk(), which probably wants to move ahead of the "if (disable)" and source itself from bootsym(trampoline_misc_enable_off) instead. ~Andrew From xen-devel-bounces@lists.xenproject.org Fri Jun 16 19:48:32 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 16 Jun 2023 19:48:32 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550386.859434 (Exim 4.92) (envelope-from ) id 1qAFQj-0001jP-0q; Fri, 16 Jun 2023 19:48:21 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550386.859434; Fri, 16 Jun 2023 19:48:20 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAFQi-0001jI-Ty; Fri, 16 Jun 2023 19:48:20 +0000 Received: by outflank-mailman (input) for mailman id 550386; Fri, 16 Jun 2023 19:48:19 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAFQh-0001jC-L8 for xen-devel@lists.xenproject.org; Fri, 16 Jun 2023 19:48:19 +0000 Received: from esa1.hc3370-68.iphmx.com (esa1.hc3370-68.iphmx.com [216.71.145.142]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id bc057891-0c7e-11ee-8611-37d641c3527e; Fri, 16 Jun 2023 21:48:16 +0200 (CEST) Received: from mail-bn1nam02lp2046.outbound.protection.outlook.com (HELO NAM02-BN1-obe.outbound.protection.outlook.com) ([104.47.51.46]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 16 Jun 2023 15:48:14 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by BY5PR03MB5330.namprd03.prod.outlook.com (2603:10b6:a03:22b::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.27; Fri, 16 Jun 2023 19:48:08 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606%4]) with mapi id 15.20.6500.029; Fri, 16 Jun 2023 19:48:08 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: bc057891-0c7e-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686944896; h=message-id:date:from:subject:to:cc:references: in-reply-to:content-transfer-encoding:mime-version; bh=HMQvnLdnJHVivvCb+6AgLFRBwMwp8l2sE9/T5WFHXjs=; b=K7IIhrmWYe9tNnfLCACDs1SAR8fM/r23BUSUdT5BA+mft0hioq82FWEJ muSxwr9NwEpXGanEsOiO3OhgUr16hAkHsEjRaoHzbKIuQPIVmSg0swI6N Lch9PwwlhQ/WQHb3V9P3GebyKLL6+egmbcuXI/nMaZbN6lDbhc5my4gZQ I=; X-IronPort-RemoteIP: 104.47.51.46 X-IronPort-MID: 113519860 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:/5rVr6yjVQXzPtVSXUt6t+f2xyrEfRIJ4+MujC+fZmUNrF6WrkVUn 2sWXjyHPqrfM2v2edAjborkoxgP78SAmIc2SVM5ryAxQypGp/SeCIXCJC8cHc8wwu7rFxs7s ppEOrEsCOhuExcwcz/0auCJQUFUjP3OHfykTrafYEidfCc8IA85kxVvhuUltYBhhNm9Emult Mj75sbSIzdJ4RYtWo4vw/zF8EsHUMja4mtC5QRgPK4T5zcyqlFOZH4hDfDpR5fHatE88t6SH 47r0Ly/92XFyBYhYvvNfmHTKxBirhb6ZGBiu1IOM0SQqkEqSh8ai87XAME0e0ZP4whlqvgqo Dl7WT5cfi9yVkHEsLx1vxC1iEiSN4UekFPMCSDXXcB+UyQq2pYjqhljJBheAGEWxgp4KTlR6 MA6EisUUhGSoO2v0OuhTu9Thtt2eaEHPKtH0p1h5RfwKK58BLrlGuDN79Ie2yosjMdTG/qYf 9AedTdkcBXHZVtIJ0sTD5U92uyvgxETcRUB8A7T+fVxvjGVkFIZPLvFabI5fvSjQ8lPk1nej WXB52njWTkRNcCFyCrD+XWp7gPKtXqiA99LRe3mrpaGhnWI+zY4BhYvSWepmtOJsn6ARO9FM 0k9r39GQa8asRbDosPGdxS8rXyNuBIGXJxOGuk+5QOK4qHQ5BuVQGMDS1ZpeNEg8cM7WzEu/ luIhM/yQyxitqWPTnCQ/avSqim9UQAXJ2IfYS4PTSMe/sLu5oo0i3rnUdJLAKOzyNrvFlnNL yuiqSE/g/AZi5cN3qDjp1Tf2Wrw+N7OUxI/4RjRUiS99ARlaYW5Zouur1/G8fJHK4XfRV6E1 JQZp/WjACk1JcnlvESwrC8lRtlFO97t3OXgvGNS IronPort-HdrOrdr: A9a23:SHFltKkeEAOKuEWu+fMX/aLTqLjpDfMxiWdD5ihNYBxZY6Wkfp +V8cjzhCWftN9OYhodcLC7V5Voj0msjKKdkrNhWotKOzOWxVdATbsSl7cKpgeNJ8SQzJ8/6U 4NSdkaNDS0NykAsS+Y2njHLz9D+rm6GcmT7I+xrkuFDzsaE52Ihz0JdTpzeXcGIDWua6BJcq Z0qvA3xQZJLh8sH7iG7zQ+LqD+T5qhruOVXTc2QzocrCWehzKh77D3VzCewxclSjtKhZsy7G TflAT9x6O799W20AXV2WP/54lf3IKJ8KoOOOW8zuwubhn8gAehY4psH5WEoTAOuemqrHo6jd XWpB8kHsJrr1fcZHu8rxfB0xTplBwu93jh41mFhmaLm721eBsKT+56wa5JeBrQ7EQt+Pl6za Jwxmqc875aFwnJkijR78XBE0gCrDv/nVMS1cooy1BPW4oXb7Fc6aQZ4UNuCZ8FWAb38pouHu VCBNzVoNxWbVSZRXbEuXQH+q3mYl0DWjO9BmQSsM2c1DZb2Fh/0ksj3cQa2kwN8ZosIqM0kN jsA+BNrvVjX8UWZaVyCKMqWs2sEFHARhrKLSa7PUnnPLtvAQOMl7fHpJEOoM26cp0By5U/3L 7bVklDiGI0c0XyTeWTwZxw9AzXSmnVZ0Wt9ihn3ek6hlTAfsuvDcXaI2pe1/dI4s9vTPEzYs zDe66/WJTYXCzT8YUg5XyLZ3AdEwhZbCQvgKdJZ7u/mLO7FmTUjJ2qTB/yHsuaLd92YBK3Pl IzGB7OGe5n0meHHlfFvTm5YQKZRqW4x+M+LJTn X-Talos-CUID: 9a23:lnXeGm2TraMvZ/Oon6TYurxfQt84Tl/n127sIl6fBn95EaeRT2CQ5/Yx X-Talos-MUID: 9a23:115k0QuIlmX4eeRWVs2nnww4H8lj2riSGnsnoa02hda5LzR1EmLI X-IronPort-AV: E=Sophos;i="6.00,248,1681185600"; d="scan'208";a="113519860" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=JbarzkuIYentWXTU61sIKCPBMnrQLTyvhgfnEGakTSX/pzyf1mw8Hzpi2EsQbxdNRDVBrJksyJ1Dum3E7b4Y72I+rS7Tu0WNzcDKt7iGlh+CEM95u98W5aPLc7mC+osKURmYwbO2K6hkqt2paruWLV6P9v95k8LNz8lZb9lvFhz6mwFrz0IOwnp2MmeZs8NQae3t1dzxA4JGByzKHwObcMp2EB5j9p7uAM7iLP3IrJClinJl2H6c2uQPrFvQMC185Yr2f6/tz89+8Vm/Awf4n3j7mZEluUzRABzwXbZz1ALG2i6KgH3ZUASIcwJ7Rwvx5RvdIRWKNrQ6GveJ2/zfhA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=Knkz+CuR2h5Nt8wHBfN9Yw57QXJvqyi0hdeSsJZ5oZ4=; b=YrL0Nkx/+FKFlXXHnO0xiiNtzX5xB9NWsn+VB1OxQDSvSWpqUUXnISfo0u6r0G12Uc24N2jgDeMH6o9AyUXFP7D75vYBkuuHTaS9uj4nJA9CFRRkTM0LCPJzd3fiu+L7CdcBKHcst1jPe4lSYNkQUzTmCyxRmbCNDS6V+EWiXs/9r7rTN8/smHl1OkEcnS6FOAU0rbVN1EAn6e2ucvbjWg+n98clmKk1Jwu+KtbALhOu5JWsnKiHnc4r+w5hEKorrXpulgf0xwQOAXi0EHFxYZvoqRn+3KTE2E+RDKgj5v2rEnTFub4+UkhZ1wMM1jidcIMWOKMP36k4lsWvZw5KfQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Knkz+CuR2h5Nt8wHBfN9Yw57QXJvqyi0hdeSsJZ5oZ4=; b=Ar7WnrE8rnQ8McCqcap1bL6JcydwTvAjjHCNsRjkoFR/POfrZL9j2xD1JnFVhP+wBbKCNQ0CjW89H4izWdzs5EK1GMjzJrupX/7Q3qUT8NH+brI7d2cMBKPZZWauS84qDltFicgWwHOzpSOKQomhnTtwpV7gDZ6Y79VEXhBU1QQ= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: Date: Fri, 16 Jun 2023 20:48:02 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 From: Andrew Cooper Subject: Re: [PATCH v2 2/2] x86: Add Kconfig option to require NX bit support Content-Language: en-GB To: Alejandro Vallejo , Xen-devel Cc: Jan Beulich , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu References: <20230615153157.444-1-alejandro.vallejo@cloud.com> <20230615153157.444-3-alejandro.vallejo@cloud.com> In-Reply-To: <20230615153157.444-3-alejandro.vallejo@cloud.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: LO2P265CA0067.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:60::31) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|BY5PR03MB5330:EE_ X-MS-Office365-Filtering-Correlation-Id: 8d609aca-833e-42cf-eb28-08db6ea29bee X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 19Qf2xqPe7q+m930gqkRTOCbtItgQrqKqaEhuE/5ZAZGXpzSCwNwtdhFQzBFek1z3cSJdhF+Tygw/X+vgcjhhl4zhS0ZEQWIMVesUVpOPonxu/e5tIc9lTYE1N1hbQxtbWsj+ExEp4v2Rv+z6QyjKvnfncHR9nlDWw/1Zuj00HMfE3Fsqt14DlqD8zP1bQoWzVpIi8ko0B5Pb+MCxdPhmLhPUX8cfz5hOxtyaAI4qNFMSRC3eW4/laCKEm3Y6PbapDjq/rbxzoJrdkpjotCwrrsoWOUyzui2R5sYlcffXiuduy506gBwxjwdM8dtlmKR1vW4H4PCq6Mi17rZ93uR8GlpqAAkWmpW/z5+VKBMYPVWlI7rb3A6axPyAPq0Ibr/DErU3itoK/3AMmT0+Neox54Z9zQLCT+qrFdPgw5Xr0sUjUgVZayDTbJRb/U57tjGxUyvU6VxrxeSYC4K6BcSawtmql62kFua8G17yQQIKGX9cSuy667SL5C23aE9EBs03MPp3D89jRTUZ5cSADPG0R0PCmFet6kKbQK7IWf+E5/deNmtBYeGpx/GC+fpbrizMSRDFRx6L78A7lH87BC0SfGHzUGe5X8r/GimKqvPV7NlMSkQYyYrW5JBrh21JmZq3Ks/cId4ClwfBQfC59Y34g== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(366004)(136003)(376002)(39860400002)(396003)(346002)(451199021)(83380400001)(2906002)(2616005)(86362001)(36756003)(31696002)(38100700002)(82960400001)(54906003)(8936002)(6486002)(316002)(8676002)(41300700001)(5660300002)(478600001)(31686004)(66476007)(66556008)(66946007)(6666004)(4326008)(26005)(53546011)(6512007)(186003)(110136005)(6506007)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?dzdSQ2JZRldYWHo5RTU3V2RWZHorZmY0dkVsUnlZNFhoaTBRb2tmdWwrTUpL?= =?utf-8?B?bjdsL1RLYXdpdk9mKzZ3VEE0U2pWOFJUQzhLbUFxeTloZ2NubW4rdVE4Qldn?= =?utf-8?B?R0NlR050R0xnQWVUNERwTXQxUDJmZTBKV00rdmswSVYzVDVickVWMFo3M0xL?= =?utf-8?B?TVNVdWlOT25Qc205UW5qSGRqR1A4YTl6TXFKZ3J6ZzlPZE9FazFpYU1VblN3?= =?utf-8?B?dzRyYVBqRDcrd3JZemRITjZnb2JnaHFuTGtMVzMxTHdDaURpSnlrcE9xcDZX?= =?utf-8?B?dlhFUStoS0RrN0dGK3pDZG14a0ZEL2tPeFJ3cVB1NDBuVkZWWU5vMGRRUyt3?= =?utf-8?B?Z0tUR2lBWmFqblNVeGJHZ2hoZk5icG5DVkdUUDlscnAyeUMrUFVHVnBGQ21V?= =?utf-8?B?ak1uWFpadFpadkk0dU1ZK1FUckdzNnNqMnNIZzN0Q3RrU01xWHNTNkthQ010?= =?utf-8?B?eGljOGVwNUJpamJJaUJkSkpMbHQyOU10RFd4L0tiWThTbjQ5SkZzZjVWV1Ur?= =?utf-8?B?T1N5V3B5NUxKeDNsRVhsbFdNa2lVcEFkNThXWnd0aEVnSUdPZVV4OXpJWWtJ?= =?utf-8?B?YmJIZXhyc0xsYzl2ell2UlBUbE9ITExXV1ZkelVMZDJNbEF2VEd2TVhwZWt5?= =?utf-8?B?STR1ZGd0akgzcXBmQWhZd0lPQ1J5a0RiYUpQYlF6d0tud3R1d1lQUDRCOG1L?= =?utf-8?B?QUJsQUszRlpFeDFkVldLbmc0bzFkNHh6cGp2bEN5cHVGVkdHbStEMDRXY2E3?= =?utf-8?B?UzRnOUllbHh5eU52eUlCMnF0b2NnRmdwRTY2bDhCQkowVkJQZDVIdnByYjd4?= =?utf-8?B?M0FzQlcyWHRFalFRR0hlMzBzMkllZlhWRVdZQjA3anlnbUhSclBHNFY5YVRS?= =?utf-8?B?SkZkQXpBa241aHVzbVR5WU5Ua0xiV2JpYkJlNTMzQUdQR3p4OFhhSDdheS9t?= =?utf-8?B?SE5ncll6ZFRFVkdpeFY2UFFDa0pBL1hBVnZqN2QvZ1hCK0tsQVN0aWlnREtN?= =?utf-8?B?NTk0aVVUV0dWd0taSDBVVmwwWVkxQlBTdjYwTzVDV05HK2kxOS8yTlFGMmpU?= =?utf-8?B?MzVyTVprMWpUZEtSdTlPQnc4UWdiMlhZV28xc2FCeVRJMWhlc1RaOWZsQ0kz?= =?utf-8?B?eW1SeXlkZndVTlB5Z0NUOUZxNFpHaDQ0UTVGVDBMWEJmSGY1QVhqMURLSm1Y?= =?utf-8?B?cDZscFo0eHNyMVNwVWRNQzVwN0N0MDA1S3R1N3ZpeHdVbWl3NXRMb3pHbXVG?= =?utf-8?B?RUpEYnh0dUpZc3dkaXVoaGsvYWdaQ0RLWkF5KzFhY3RhK0xSSU04V3RIYmph?= =?utf-8?B?dWN4a2hONzNOTERoTWhCRXd2dmNtMVJxc2liRS9qMTgzWWx2YW9JNk1uNzRz?= =?utf-8?B?YWV4SkhsbnpscHU0TkJFZFErVU5SL01CTTc2Q1lFRG1FbVlrcmY5RG16WXdp?= =?utf-8?B?Z3FPd2lRQzJuSlBnVzdxZkcyeTM4VjhXV25jTTA3bnRrMkM0eXZmMUhOaFQr?= =?utf-8?B?c0tiTVpnVTkvUkFKUm55Zyt0Wi9GZU5IYzBwRjVQK1JCWXkwTVN0V3BBTUZu?= =?utf-8?B?L0d4aHMvSVcvQ1BWcDg5UStqeHUraDRyV1NBL2dPVTYreHRMeG83OHV3a2Rp?= =?utf-8?B?TU8rd0FoNmpKSk9BYkNLUTZxU2NpQms3T2g1NWQzczBJbmlsL0hlT2pjYTVu?= =?utf-8?B?UmpmSVZ6WDk4RW1mNnE0Sk9WOVVrK1ZVRTQwK2c1ajl6MkduYURpU3ptaEZ4?= =?utf-8?B?NVJ1V3hOSjNPdlJrQSt0K1JMeW5rck9MN0R5RmpoMm5YRTk1WHBKSnp3UXFG?= =?utf-8?B?MU5rWnRIakFuV09JYXQvencrUm5jcGYxeEY4ejFKY0p6c01zUDBIRFNpRSsr?= =?utf-8?B?RmRYQitzOGZSSjJtMis4enhWRCtnZVJkQU1sUktMU1dLcTRtQlg4RGpqbnNu?= =?utf-8?B?eWJXWCtzUlI0RThRMWFKdU45RlE2M3RlVThQRVBDYVlaTGFvcUREZkwzNW9C?= =?utf-8?B?clFlWWNuR0lwT29vRGM4REhUeHFiVFZ5aFVITHRJQmpsemxMS1Zwc1VtWmtL?= =?utf-8?B?SU9xc3k4d25rL1JML1RaRVNhODViTE4zNG9sbG96N2dRMEV4Z054R1JoNUJX?= =?utf-8?B?YXo3Mm42UnM4RjUxeGNzUlgyWEtNL0xCSERqYmxYclh0bHBXQjlzWnIrdnRB?= =?utf-8?B?M0E9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: a51XU2EWfRIUaqYPDEMSbTamGgB5Z0OnECriRZMiU9m2acUTIYx3hGVNPB8N21xP65w6DCIoM0fPHFFcMp3nk74dEszZBB1sDE3zUGNx4+3qGdmsgUU0BMRg/OSS/5CBrDrxxbBi0xlMH9bs7L3/4lpPC+IA+jsfDOosKxqq2gJYNsurQk3cO588MEHDoYhefcT/mbjaDWfIj3YHC1pa9EI6iudhRQaGJBarW4cTphxznQrSoLDAzrV71nOnKMZhKeu86B6De/UxIwB9VC7/kjWzKdFtdMqrK6dvotHL5W9D882OedDTGVdG7T67Jf4m2o4W2uweCXLIdr8XTokV9ExdWTRFrZIu8jt2ZoCaBoMyh5eeXrJk7KV+vL1GazxdFB2cL4fPzle/SAILpKH5JgADvO6DP+9SEpYybYBVHKGP01Hk8EXeIauy9m+bDs4KUKEvrwDa3PbbTkG41Y0RyHQ5Z7l/i1Ei+hz0J29OpQ0v9NN2GGxa2BSCZAvVV7esCmiDp9ZZNv4DMwnBdfXapDtbjs4erh4LNpl3bVchaoZbTxTJ7M0BKWAemkZ6CioeQFYqaxJq7G0LcYnZPzHdxtUbMe0SrBgd+ji2bv6SLDEtfsVX88YLt7zuBfn2ltBq75D4eIwbdVRvxWDoHwJu17A62YGfsnHJ7YAqIy4NiT5sXycRn3qaHZsrnhpI4kQNtEkCQ5Vv7Dm76WkMCUQ0EnrZnwiwaJp2u1HDOhoR0+/VTshSqenoqGQaGMEz+ts8Gvo7c8dat63ihzjBwVnpaeN+IYUpCMHNiTHzZattzsagEIKnaXIWsRoNMD8sljEHzoIinEN7dG+nI+j1bwdWzHpu03+ij/iM0CCie1FlUPI= X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 8d609aca-833e-42cf-eb28-08db6ea29bee X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Jun 2023 19:48:08.5638 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: LxGam18y9EYK8cT8UjCYd7MtDRaLngH2uwFgXfeAHDh7PmQiWqSiiE54FTXtOcQOEvx0XKArRfniE+wy8Y+7c8V7ipgreoltlq47bRFvqQs= X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY5PR03MB5330 On 15/06/2023 4:31 pm, Alejandro Vallejo wrote: > diff --git a/xen/arch/x86/Kconfig b/xen/arch/x86/Kconfig > index 406445a358..fa97d4cccc 100644 > --- a/xen/arch/x86/Kconfig > +++ b/xen/arch/x86/Kconfig > @@ -307,6 +307,22 @@ config MEM_SHARING > bool "Xen memory sharing support (UNSUPPORTED)" if UNSUPPORTED > depends on HVM > > +config REQUIRE_NX > + bool "Require NX bit support" "Require NX (No eXecute) support". > + help > + No-eXecute (also called XD "eXecute Disable" and DEP "Data > + Execution Prevention") is a security feature designed originally > + to combat buffer overflow attacks by marking regions of memory > + which the CPU must not interpret as instructions. > + > + The NX feature exists in every 64bit CPU except for some very > + early Pentium 4 Prescott machines. > + > + Enabling this option will improve Xen's security by removing > + cases where Xen could be tricked into thinking that the feature > + was unavailable. However, if enabled, Xen will no longer boot on > + any CPU which is lacking NX support. > + > endmenu > > source "common/Kconfig" > diff --git a/xen/arch/x86/boot/head.S b/xen/arch/x86/boot/head.S > index ce62eae6f3..ec1e80ef68 100644 > --- a/xen/arch/x86/boot/head.S > +++ b/xen/arch/x86/boot/head.S > @@ -123,6 +123,7 @@ multiboot2_header: > .Lbad_ldr_nih: .asciz "ERR: EFI ImageHandle is not provided by bootloader!" > .Lbad_efi_msg: .asciz "ERR: EFI IA-32 platforms are not supported!" > .Lbag_alg_msg: .asciz "ERR: Xen must be loaded at a 2Mb boundary!" > +.Lno_nx_bit_msg: .asciz "ERR: Not an NX-bit capable CPU!" Still two too many "bit"'s in this line. With these two adjusted, Reviewed-by: Andrew Cooper From xen-devel-bounces@lists.xenproject.org Fri Jun 16 19:50:19 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 16 Jun 2023 19:50:19 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550393.859444 (Exim 4.92) (envelope-from ) id 1qAFSP-00030E-HD; Fri, 16 Jun 2023 19:50:05 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550393.859444; Fri, 16 Jun 2023 19:50:05 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAFSP-0002zn-DF; Fri, 16 Jun 2023 19:50:05 +0000 Received: by outflank-mailman (input) for mailman id 550393; Fri, 16 Jun 2023 19:50:05 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAFSP-0002rW-2w for xen-devel@lists.xenproject.org; Fri, 16 Jun 2023 19:50:05 +0000 Received: from esa1.hc3370-68.iphmx.com (esa1.hc3370-68.iphmx.com [216.71.145.142]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id fb1c3449-0c7e-11ee-8611-37d641c3527e; Fri, 16 Jun 2023 21:50:02 +0200 (CEST) Received: from mail-bn7nam10lp2108.outbound.protection.outlook.com (HELO NAM10-BN7-obe.outbound.protection.outlook.com) ([104.47.70.108]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 16 Jun 2023 15:49:59 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by BY5PR03MB5330.namprd03.prod.outlook.com (2603:10b6:a03:22b::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.27; Fri, 16 Jun 2023 19:49:57 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606%4]) with mapi id 15.20.6500.029; Fri, 16 Jun 2023 19:49:57 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: fb1c3449-0c7e-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686945002; h=message-id:date:from:subject:to:cc:references: in-reply-to:content-transfer-encoding:mime-version; bh=VMeB9siuI/9soxWItzzypKL6K+3eEMdra3skuHSX+ws=; b=PoNXNK5kAJdhVI6Lkrd6hM7aF6C8pBR/IKK/12komO6NvxnWGs68/NAl n/mKLMcwTwiHLAm6b+X3RM+PonJj+xPqIVbEAaoS2d2a+uIy3iKTulIdP f3UQUGHxoTcoaGcSh+Bc5piEfz6c70xoR4GS718RsF+ZXgSMGdcnKFwdV U=; X-IronPort-RemoteIP: 104.47.70.108 X-IronPort-MID: 113519986 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:gFEyB6h5rSQF0BO8f4TZmdc+X161kxEKZh0ujC45NGQN5FlHY01je htvC22OPq7eMGb8etx0aYnk8xsHsZHQzII3GlRv/ypkRn8b9cadCdqndUqhZCn6wu8v7q5Ex 55HNoSfdpBcolv0/ErF3m3J9CEkvU2wbuOgTrWCYmYpHlUMpB4J0XpLg/Q+jpNjne+3CgaMv cKai8DEMRqu1iUc3lg8sspvkzsx+qyq0N8klgZmP6sT4gaAzyJ94K83fsldEVOpGuG4IcbiL wrz5OnR1n/U+R4rFuSknt7TGqHdauePVeQmoiM+t5mK2nCulARrukoIHKN0hXNsoyeIh7hMJ OBl7vRcf+uL0prkw4zxWzEAe8130DYvFLXveRBTuuTLp6HKnueFL1yDwyjaMKVBktubD12i+ tRHMxY2YD+T2t6Qxb6+Evlv2eg5CdjCadZ3VnFIlVk1DN4AaLWaG+Dgw4Ad2z09wMdTAfzZe swVLyJ1awjNaAFOPVFRD48imOCvhT/0dDgwRFC9/PJrpTSMilMpluG1YLI5efTTLSlRtm+eq njL4CLSBRYCOcbE4TGE7mitlqnEmiaTtIc6TeTjq6c70Q3NroAVIDswen2J+uWctkrgYoIAB kMu9G0hkpFnoSRHSfG4BXVUukWspRcaUsFMGvY77ymXw7LI5ByUAGcFSDNMct0gu4k9QjlC/ k+EmZblCCJitJWRSGmB7fGEoDWqIy8XIGQeIygeQmMt/8HuqZsoiRTnVN97DKmvg9v6GDf9z iqLqid4jLIW5eYA3r+3+l3viDu2qp/ECAUy423/RXm55wl0YIqkYY2A6lXB6/tEaoGDQTG8U GMsnsGf6KUEC86LnSnUGOEVRujxt7CCLSHWhkNpE9857TOx9nW/fIdWpjZjOENuNcVCcjjsC KPOhT5sCFZoFCPCRcdKj0iZUKzGEYCI+QzZa83p IronPort-HdrOrdr: A9a23:YOacmK5/n2rqg/ZEUAPXwPfXdLJyesId70hD6qm+c20tTiX4rb HXoB1/73XJYVkqKRQdcLy7Scu9qDbnhP1ICOoqXItKPjOW3FdARbsKheDfKn/bexEWndQtsp uIHZIObuEYzmIXsS852mSF+hobr+VvOZrHudvj X-Talos-CUID: =?us-ascii?q?9a23=3A3b/i1GttCgY21oEGS8Tun5JX6It6aVvmwljAfnO?= =?us-ascii?q?eDGpsEK2WFnOK3bJNxp8=3D?= X-Talos-MUID: =?us-ascii?q?9a23=3AeBlQTQ4/etUD3S6bVFWzMMn4xoxOxYuIOhsRtKk?= =?us-ascii?q?C5fDUagF/ATnagwuOF9o=3D?= X-IronPort-AV: E=Sophos;i="6.00,248,1681185600"; d="scan'208";a="113519986" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=b0kfYvniVJiLI/sUTcAFZSeg1mYyor4wDmFAL5KTeeYl00hEYFnh1oJYFXhQ2CDH3oR+Xotr2V4OkzSfrZDziGiJtxLl196UjL63Qkh4fXakNbHeq1imFqNnzL2EEsCMaYjHE8qHdIWZ3U42FfcuxO57FrfHE1hubEFTXRgYBpalFStNIpQQYtsN2FVxgNXsTysH062rrmOhX4HNeZTQqrDlkCpafHtsJn1W6PfOnUO14IZkaBy+7KLRysDuxWbQGOo19XruXXs6924DY9FfcaB8eKiCdoQ4mFM+BGSoDpwou9qa7py2LNm6g1FO0oMWVkmWXbVqpKdfJvX312bNiA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=VMeB9siuI/9soxWItzzypKL6K+3eEMdra3skuHSX+ws=; b=hhEi1g4+YeKX9C3DyMUkgFT35wk9v20a2QZYf5AD949XuS3Ni/+WY27IZ8JR+KAGctUk0v8RDng8Qv8Vvp8mkrkUMeb0dpFd8MDVwe37aUic7nkuXg2UB76l19LwdvKR1AaslJE0IqQapY7VjjViGj0bOhoAXGX9hK7eSIixPaV3aFGC8IS02GbipbFtc953NoeKzQjrhB62qv5Kvkqr07vJT0Gat/q6RSmqDhyShIIvrpGRhcfexFSfhjzaw2VV2iHTz5dHwR26HPKGxkKRAY3KIW54Wp3ucASV2X4YVDny5+SMhiLuv8xXaUHD+q9lO68f4vAv6/GvSjpz+o1Kug== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=VMeB9siuI/9soxWItzzypKL6K+3eEMdra3skuHSX+ws=; b=hRWDm2ZzE/n41WfdopyxG2TJbCB+17k9W0wTYzzauSMogCI1IIDVq3NG5/7zuZavttlf/aq2JFgR+WR11bgBgkE+hKhC3XKuYhbPoYSXaGAlMC7ZHYwz+2E05iw9LAnqW9CJUUNAifN6u4TZFeIkjenXYroRoCWGKITBEWLoN8w= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: <89f3e9fd-9cbb-1263-a8ce-c671b52a8529@citrix.com> Date: Fri, 16 Jun 2023 20:49:52 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 From: Andrew Cooper Subject: Re: [PATCH v4 1/4] automation: Add container for ppc64le builds Content-Language: en-GB To: Shawn Anastasio , xen-devel@lists.xenproject.org Cc: tpearson@raptorengineering.com, Doug Goldstein , Stefano Stabellini References: <0d59b5eb8de2b00839204c36a2a45eebab994369.1686936278.git.sanastasio@raptorengineering.com> In-Reply-To: <0d59b5eb8de2b00839204c36a2a45eebab994369.1686936278.git.sanastasio@raptorengineering.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO2P265CA0060.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:60::24) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|BY5PR03MB5330:EE_ X-MS-Office365-Filtering-Correlation-Id: 05ca3d98-6623-4b6e-465f-08db6ea2dcbd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 5cPj3PBK/wfOIEzasFJgorD7kt/AjgOBKIaRw5/GxuXqk+rnu84ru8yZRga3kQ7lAUW6OEj2mOinKvdVzwKBSN1bjRxJpC/EpKu7Qb3hlKqj3xEPHcPPagk/beP5moRkXY0DVO+AJbHB5KescRt7qcVnOs86ylwnuPzabZiIc/bMeP4h7IMR3cxLHmkbN6ZlVqXpAW3uiPjie9STAfznKQRREuxhwOqMDzmDTAfvn0OROvff640eQPhU5KV5/PM+WwZ4v2vGrNU70X8Ug/6hMA3TKHAy32kJju1FMaBpVLJxEtdMuUkgKAzi3yqjSEkGlMqu8g9rrAMiasFshCGnxoCOFLPKQcOeNYym6YU1XvqcmZMkOodC5P1+wa14lfrJOg08wzLwayKVblGSe0u34O7sB4hjzOUGARchv5Cjhya7V57Q+9OHFcCoIuirmfyakH24hhBfnwnJbG7qH1WP2BQCCbqvDTc4cf17qORtNrAQWVMCt5+x6IOFvMkFeJaOda8yk+INXiKab3sz20pg4IXKkEI/ddchfSLJZvYVQACrpO9uSmhjlbFob7HSYbT2BIifIIXGRNygA5QcWzifqq2yw4GZzfwVCx36i8dHS0Jt994LdYcTAZ9j4PT7x7GrsESzWcdq2zbHOuI0iDx5hg== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(366004)(136003)(376002)(39860400002)(396003)(346002)(451199021)(4744005)(2906002)(2616005)(86362001)(36756003)(31696002)(38100700002)(82960400001)(54906003)(8936002)(6486002)(316002)(8676002)(41300700001)(5660300002)(478600001)(31686004)(66476007)(66556008)(66946007)(6666004)(4326008)(26005)(53546011)(6512007)(186003)(6506007)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?UlVrQzYzbGd4NjlkdlNRRDJIT2dqRW1lVWZCeE1WNkpUVUxIdGZIZFhMemcr?= =?utf-8?B?ZnpRRThtMzh0UHM5dkRJeFo5dUZFaDBIZW5Xb2t0YWZUNncxbkl6bDd2OTJw?= =?utf-8?B?a3Qxd0tWcFFKT0dLT0hYUDVmNWJGeTBNQkZ5K01xM1QyNndLWFhFRUdCRUdq?= =?utf-8?B?L0Y2ZzhHK081YkkwUktXMG9CU0QrTk8vd3BQcmJZdkpDSmRLMXl6Zkc5VG9x?= =?utf-8?B?UkdmL1lubzdZOFlaMzZyR1o0Z1ZBUHZtWmkwbXdzbHpnYXAvek5ZVjZ6L1cz?= =?utf-8?B?bURhOEZGK1pJd2k2czd0ODBhLzc0OEs3RC8rSXZ0SHh3R2dMcU0yU05rbDJ1?= =?utf-8?B?U3oxeUQrQlNaVlJZdm8vdDY3clVrZjNUV0RPYzFXUEZtc3VublROWnRjUDBw?= =?utf-8?B?NTJzNjBFTVdlWk1DNUoybkZ5YjlHeWRlUkdXcGNyVi9mbmdzMFIzSk5TMXlk?= =?utf-8?B?REEzYWp0OGxNejY5TkN6ZTZaajUwTmo4akRva0pGVldQYndLbDRIR3dBWXBl?= =?utf-8?B?NHI0T1JwU2wyem1CTk1UUlJZRDVwK3ZFUCtLWnlrcXRMWGI5QTJmd1dZZkJs?= =?utf-8?B?YzhGR0lGcGhLNVNrblBZLzBuQ2JQYlVlRHJJNTZPenl1RGlPZlFEWmNpTUg4?= =?utf-8?B?YTVDUHltS3o2TlRVSjBJTDN4VkxsZ1I1eHY2V3hIZ3RoWkc4WW12UEpuK0dj?= =?utf-8?B?b2l6Z01VTys1ZXlINEhtT05vSThZZjg0WDZobXkwTmQyYnZiWjhSN2N0VDJn?= =?utf-8?B?amN2Nlp0c2loMUZpU2ZjSnhCV0NPVU0xK2l3SXloeDJmNDBQVG0xSTF1a0Ry?= =?utf-8?B?dy9JR3RkN1hmbGVzc1hBSTZyMk1tL1A4UDNndUt2aURYUFVmQ3h5U2dlRGFB?= =?utf-8?B?cnBKbXI2WVFsQVlTQUhJQWNlVmsyYmQwejl6aEpXSXhzR2ZPWnFCcGVUYU1W?= =?utf-8?B?T0o0Tk81NE9yRUJWOUhBYzcyVm9DQnRPRXNXeUJJR01NZHhtWjkwNXk3NXFn?= =?utf-8?B?NEhITVNvWUJlenB1ZEtTem5icHk4S3hnSFBLMXVFaWc1ZmpQQWhBZjNZS013?= =?utf-8?B?cHUxRnZuWXd5enplWEMwdmZyUVowYkRjaUduZGdVRkRxZFN6RjJtQm9zTHJD?= =?utf-8?B?OFkvdW41UXQrVmg0MUE1R1dBY2RXRjNNYysxU25rbms5Q0VlSzRFUTYwUnVp?= =?utf-8?B?UGxjV3liRGJnUjhNcXZRSE5CL1oyeEJWdTYvbzFQVWxDZER4Qkk4SEgwRjY4?= =?utf-8?B?ejhBWERxd0R4N2Y5R1N5NjMrb0Y1S0tEc2pSWEZVRUJpcWphUWhGNHFqdzdX?= =?utf-8?B?bU1UbHFLaVVRckx2RW1GLzBtY3FvdGJYcldzVTk3NVBnaTRKZ2ZjOGV1UmRv?= =?utf-8?B?ak1HQThUVkgwYUNLQWlCQ0NRaGZ4NStNZ3VnZlFkbTlXY2o0bm1pQmc0ZmNX?= =?utf-8?B?dkNOMWJHRXhkRVY5aUtELzhqS2tveThITzNtckFDR2xOanFHNnZkRytHcFkr?= =?utf-8?B?ZFhBaU5EbUNWZUVpWGpIV1NGVldodzRkT0VYVlhsUnFQeGNSSXhhSjZDNm4v?= =?utf-8?B?ZDIwd2ZBR1ZidzdpOCtER0V2Uldob0dtNFVBbHlvWEdWOXRxTnp1alp3akl4?= =?utf-8?B?MDE2aXV0OGVGYXFzWG00L1ZUNXJhYzljTjA1SDlqV0JScGZNOW1WV3hDZDhU?= =?utf-8?B?SGZZR2JqWXE4cXVzdE10dXAwRUxuVGZyekZMWWR2bWxWbGNzOGRJRCs0bWhi?= =?utf-8?B?NXV1UHV6d0syL0hMc2RGZGNOU3B5MHRVeVVuSEhSUkFvamVuT05zWnFxM2Vy?= =?utf-8?B?YVd2cmJJcVRuSW1xWWw1KzNNNmRtaFJZMEVnb3Q4Y3BDYXZsVFR5L2tYUGwr?= =?utf-8?B?WVBmN282TS9oSTlqWGdpNTV0V0VGMm1RRWpDckVuYktNSWtnZXNpS3JNSUFG?= =?utf-8?B?SGtlNmZEQnhhYVZPK0IyWGYrVFZVNGdveDM2SU03eVhpZUd1OGdzT2lQMXlI?= =?utf-8?B?cDhHS0MzcnY2TE1yczVtUFJ5VDREeWtkZ3ltUkdDeU5ncWF4cUt6K2FyUm96?= =?utf-8?B?Uk1hY215U1hmZm9PNXhmVldacFhtVlNja2NGTGYvZmh1WDJDcHVESVZrdEs0?= =?utf-8?B?amFpL2tSeDgyc0R3NEZBVkR1NHB1MjkxNHJvcStTM3crY0w1T1dSTkZTWVdj?= =?utf-8?B?VGc9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: ti1mcHykdV3f/5mTfC+ykVuGBFQ6KKLJ60mVy21bU54OcbQrPYMHytpqmg1ruxr6kY+NgS+04kchdORv/FXpX+V3+p8pkia69KoqDiMz4CdItYCIR57j3f5AElAYDhBliN37yoGidGiqE99yRdGYcYt44ZOwG5hvNIq8p9QqWhAT4ec0tj8nEwUHvynTL/JMujpbePXksy7AjsyTrc2W4xBfQ6zRfZukPZXLBGg5jZzgHSw9SSnoNqHv7xc1K9A3WBP4xOaG5EH7xdfFCeCc/LNT5oP72i+QlurrUJCx0CLHfwG5NRZqyitqLgUCPPz7XPz02Qlt2jiiLlYYtMpgD1CVcPK1qaT9AcQex3LYbPY/ROruL7J90Nra106HApvA2N2JZztsJHe9RBZoDTZPBrfcxhLzsJA8eCQhd9prDdW/yWKOWPVdmbUfCwBVVE9fqP+h/K6psoVI81jTVXFXzFcLCQGxcgR0rAexBprVIz6SmP95ygLlx1cdHGG9wAYRDxqkqzqrWiBL/UV6oGF1sFtD1OQC8lOp87u83W+G4shE5F33vkkv0p3thoLz6AdYn6PO7Sgpqrv5PrkB/eDLp4/qQ+gkSZIt6cCBix96SgfC1k5krpoNUJ2MaPsmgsUNb5FkL5ky0eTyVrKUI2+6SZdakXo71V7j3Au6Fhke4R9wbvQ1kXBf9wnHRU3C435HF0Bh2KP+ifxnde6aEWrHGG256pG760XXrH4m9//pfHZWfwYRhIHExFT0j/6EWLyTB3v2i8Oi70BKtqKHUXOZrR62pM0G6/Mkxfh7QDJyhWntXn6HOMKRv/pbHwH7ej5FSCbKj2OKO8Sz8WDQXFYnX8AlbK1oUAz8InAhR+Un5ILpPFHlihqPAxE4KugI9AzYTWa88VgKzFw6NIBvlb5Jgw== X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 05ca3d98-6623-4b6e-465f-08db6ea2dcbd X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Jun 2023 19:49:57.3020 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: RnqJ/ZclWoqsdzlUgF64PDfBLNYUbh1zjRPru8xiTWdZDhMb3TeI+q8qdtzTmEbYb6xwhtuje9wu4FyKpbmazg8ET0C5y3vh6IfPXoep1cI= X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY5PR03MB5330 On 16/06/2023 6:48 pm, Shawn Anastasio wrote: > Add a container for cross-compiling xen for ppc64le. > > Signed-off-by: Shawn Anastasio > Acked-by: Andrew Cooper Just to say that I already committed this patch, when rebuilding the container.  We likely raced given the time you posted the series, but you'll want to drop it as part of rebasing onto the staging branch (if another series is needed). ~Andrew From xen-devel-bounces@lists.xenproject.org Fri Jun 16 19:53:36 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 16 Jun 2023 19:53:36 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550398.859454 (Exim 4.92) (envelope-from ) id 1qAFVm-0003nm-VN; Fri, 16 Jun 2023 19:53:34 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550398.859454; Fri, 16 Jun 2023 19:53:34 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAFVm-0003nf-Sh; Fri, 16 Jun 2023 19:53:34 +0000 Received: by outflank-mailman (input) for mailman id 550398; Fri, 16 Jun 2023 19:53:34 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAFVm-0003nZ-92 for xen-devel@lists.xenproject.org; Fri, 16 Jun 2023 19:53:34 +0000 Received: from raptorengineering.com (mail.raptorengineering.com [23.155.224.40]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 78d9798a-0c7f-11ee-b232-6b7b168915f2; Fri, 16 Jun 2023 21:53:33 +0200 (CEST) Received: from localhost (localhost [127.0.0.1]) by mail.rptsys.com (Postfix) with ESMTP id B8E4F82856D4; Fri, 16 Jun 2023 14:53:31 -0500 (CDT) Received: from mail.rptsys.com ([127.0.0.1]) by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032) with ESMTP id Sr49pqWOxKDe; Fri, 16 Jun 2023 14:53:31 -0500 (CDT) Received: from localhost (localhost [127.0.0.1]) by mail.rptsys.com (Postfix) with ESMTP id F24EB8285808; Fri, 16 Jun 2023 14:53:30 -0500 (CDT) Received: from mail.rptsys.com ([127.0.0.1]) by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id RoORfQvYC0Q2; Fri, 16 Jun 2023 14:53:30 -0500 (CDT) Received: from [10.11.0.2] (5.edge.rptsys.com [23.155.224.38]) by mail.rptsys.com (Postfix) with ESMTPSA id 64B3982856D4; Fri, 16 Jun 2023 14:53:30 -0500 (CDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 78d9798a-0c7f-11ee-b232-6b7b168915f2 DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com F24EB8285808 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD; t=1686945211; bh=tQ8vUXLBsOQ50XNg2TxpwjYI32WyqoMDK+L8Lj6bMK0=; h=Message-ID:Date:MIME-Version:To:From; b=M0dSoLDuYMHWc+xsu+gHgnOCH3bD8yuhrynSG2Y0YP7cBjElL1uPyqH1LpvHybiae SeCjmT09rognWvJc1rhZiPUqp9PKCyXAh0JBWAltwb4xjC+hP2LI6Fdo+koKQTscOX OAC7+6tJCkV2SVgV6uQ3Zm6kl+PGeAVq96Z0cBAg= X-Virus-Scanned: amavisd-new at rptsys.com Message-ID: <58c46f7b-033e-0107-90c4-4454d813d381@raptorengineering.com> Date: Fri, 16 Jun 2023 14:53:29 -0500 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux ppc64le; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v4 1/4] automation: Add container for ppc64le builds Content-Language: en-US To: Andrew Cooper , xen-devel@lists.xenproject.org Cc: tpearson@raptorengineering.com, Doug Goldstein , Stefano Stabellini References: <0d59b5eb8de2b00839204c36a2a45eebab994369.1686936278.git.sanastasio@raptorengineering.com> <89f3e9fd-9cbb-1263-a8ce-c671b52a8529@citrix.com> From: Shawn Anastasio In-Reply-To: <89f3e9fd-9cbb-1263-a8ce-c671b52a8529@citrix.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable On 6/16/23 2:49 PM, Andrew Cooper wrote: > On 16/06/2023 6:48 pm, Shawn Anastasio wrote: >> Add a container for cross-compiling xen for ppc64le. >> >> Signed-off-by: Shawn Anastasio >> Acked-by: Andrew Cooper > Just to say that I already committed this patch, when rebuilding the > container.=C2=A0 We likely raced given the time you posted the series, = but > you'll want to drop it as part of rebasing onto the staging branch (if > another series is needed). Apologies. If a v5 is needed I'll definitely exclude this patch then. > ~Andrew Thanks, Shawn From xen-devel-bounces@lists.xenproject.org Fri Jun 16 20:12:01 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 16 Jun 2023 20:12:01 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550403.859464 (Exim 4.92) (envelope-from ) id 1qAFnS-0006Kd-Go; Fri, 16 Jun 2023 20:11:50 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550403.859464; Fri, 16 Jun 2023 20:11:50 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAFnS-0006KW-De; Fri, 16 Jun 2023 20:11:50 +0000 Received: by outflank-mailman (input) for mailman id 550403; Fri, 16 Jun 2023 20:11:49 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAFnQ-0006KQ-W9 for xen-devel@lists.xenproject.org; Fri, 16 Jun 2023 20:11:48 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 04c48139-0c82-11ee-b232-6b7b168915f2; Fri, 16 Jun 2023 22:11:47 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 9BBA06318C; Fri, 16 Jun 2023 20:11:45 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id ED606C4339A; Fri, 16 Jun 2023 20:11:43 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 04c48139-0c82-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1686946305; bh=tsre/4n+NOz6ZRIK1t7itkWxHUrewiTHt7Bue9fDIZw=; h=Date:From:To:cc:Subject:In-Reply-To:References:From; b=tjsyIOM/RcN8WdkCZeJ0ZAaB44snbP6yMh+qP/y5NiiywWVa6MlMXbMMLoASf+rO/ X1VtEezC2rxGcTjin03+QKDp7PPPU92xy48v8a5lvrnoqsZy9uti6IDa/1k5wMr5fH HbbCgLrldMpo2+tYotEVeNcVi+zSObYObTHWOCguT+VO/nzQPTIEvWOe6bMiFEFh1N OFCRM1pw1kf6G//Aux6WsT1kCHhlfilWC89oTahtJ9J0cUuQlrx4dKB3jDNO2s9g/X HzpRLA7bSs8TFR9tTU9qAn+iari/OpKG+Fwnr6hF3cgoca96aTXwGgDbSuXeyDWwts iLqmVzb8dV75A== Date: Fri, 16 Jun 2023 13:11:42 -0700 (PDT) From: Stefano Stabellini X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop To: Luca Fancellu cc: Stefano Stabellini , Xen-devel , Jan Beulich , Julien Grall , "andrew.cooper3@citrix.com" , "roger.pau@citrix.com" , Bertrand Marquis , "roberto.bagnara@bugseng.com" , Stefano Stabellini Subject: Re: [PATCH v2] xen/misra: add rules 1.4 and 2.1 In-Reply-To: Message-ID: References: <20230615212716.1330929-1-sstabellini@kernel.org> User-Agent: Alpine 2.22 (DEB 394 2020-01-19) MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="8323329-1594210747-1686946305=:897208" This message is in MIME format. The first part should be readable text, while the remaining parts are likely unreadable without MIME-aware tools. --8323329-1594210747-1686946305=:897208 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8BIT On Fri, 16 Jun 2023, Luca Fancellu wrote: > > On 15 Jun 2023, at 22:27, Stefano Stabellini wrote: > > > > From: Stefano Stabellini > > > > Also add a comment at the top of the file to say rules.rst could be > > changed. > > > > Signed-off-by: Stefano Stabellini > > Hi Stefano, > > Reviewed-by: Luca Fancellu > > > While I was testing the patch with our script that translates the docs to cppcheck > Inputs, I noticed we might have a small issue there, seems that Directives and Rules > clashes, and from a quick look to cppcheck addon, seems that only the rules are needed. > > I’ll have a look on that soon. Noted, thanks! > > > > --- > > Changes in v2: > > - add link for 1.4 > > - expand 1.4 comment to say it could be revisited > > - add comment at the top > > --- > > docs/misra/rules.rst | 15 +++++++++++++++ > > 1 file changed, 15 insertions(+) > > > > diff --git a/docs/misra/rules.rst b/docs/misra/rules.rst > > index a88c284e7d..11b9c42b70 100644 > > --- a/docs/misra/rules.rst > > +++ b/docs/misra/rules.rst > > @@ -32,6 +32,9 @@ violations are meant to be documented as deviations, while some others > > should be fixed. Both compliance and documenting deviations on the > > existing codebase are work-in-progress. > > > > +The list below might need to be updated over time. Reach out to THE REST > > +maintainers if you want to suggest a change. > > + > > .. list-table:: > > :header-rows: 1 > > > > @@ -90,6 +93,18 @@ existing codebase are work-in-progress. > > behaviour > > - > > > > + * - `Rule 1.4 `_ > > + - Required > > + - Emergent language features shall not be used > > + - Emergent language features, such as C11 features, should not be > > + confused with similar compiler extensions, which we use. When the > > + time comes to adopt C11, this rule will be revisited. > > + > > + * - `Rule 2.1 `_ > > + - Required > > + - A project shall not contain unreachable code > > + - > > + > > * - `Rule 2.6 `_ > > - Advisory > > - A function should not contain unused label declarations > > -- > > 2.25.1 > > > > > > --8323329-1594210747-1686946305=:897208-- From xen-devel-bounces@lists.xenproject.org Fri Jun 16 20:25:01 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 16 Jun 2023 20:25:01 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550408.859474 (Exim 4.92) (envelope-from ) id 1qAG02-0007qh-Me; Fri, 16 Jun 2023 20:24:50 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550408.859474; Fri, 16 Jun 2023 20:24:50 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAG02-0007qa-Iq; Fri, 16 Jun 2023 20:24:50 +0000 Received: by outflank-mailman (input) for mailman id 550408; Fri, 16 Jun 2023 20:24:49 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAG01-0007qU-Fl for xen-devel@lists.xenproject.org; Fri, 16 Jun 2023 20:24:49 +0000 Received: from esa3.hc3370-68.iphmx.com (esa3.hc3370-68.iphmx.com [216.71.145.155]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id d50b6333-0c83-11ee-8611-37d641c3527e; Fri, 16 Jun 2023 22:24:46 +0200 (CEST) Received: from mail-bn7nam10lp2106.outbound.protection.outlook.com (HELO NAM10-BN7-obe.outbound.protection.outlook.com) ([104.47.70.106]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 16 Jun 2023 16:24:42 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by SJ0PR03MB5389.namprd03.prod.outlook.com (2603:10b6:a03:285::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.39; Fri, 16 Jun 2023 20:24:39 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606%4]) with mapi id 15.20.6500.029; Fri, 16 Jun 2023 20:24:39 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: d50b6333-0c83-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686947086; h=message-id:date:from:subject:to:cc:references: in-reply-to:content-transfer-encoding:mime-version; bh=x5yIJvm/w9mJAlTfEGKym6GIIqbVz4farHY65gGYQJY=; b=KSmEhhFv0JSq7ACT7y44WUJyCexO9KEYWEVgSHPjPc1RvKBGZa24/Qy6 umNNCr5hY2noeOfE0GPXZ1fZOI86DjAU8k9dGFL36AqaBVT8ZDIl1g8Pq ObYWOmPjYvOuyMoqAwq9oUUnnXzAYwDGrUJUkRIiU1MWe4eVJKa4voPfw M=; X-IronPort-RemoteIP: 104.47.70.106 X-IronPort-MID: 113132882 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:1OZ/IKLsIvjTH6s/FE+RRpQlxSXFcZb7ZxGr2PjKsXjdYENS0TUDm mUZWmDQMqyKMTSkf9xzb4zn9UJV7ZPRzdQ1GQplqX01Q3x08seUXt7xwmUcnc+xBpaaEB84t ZV2hv3odp1coqr0/0/1WlTZhSAgk/rOHvykU7Ss1hlZHWdMUD0mhQ9oh9k3i4tphcnRKw6Ws Jb5rta31GWNglaYCUpKrfrbwP9TlK6q4mhA4AVgPasjUGL2zBH5MrpOfcldEFOgKmVkNrbSb /rOyri/4lTY838FYj9yuu+mGqGiaue60Tmm0hK6aYD76vRxjnVaPpIAHOgdcS9qZwChxLid/ jnvWauYEm/FNoWU8AgUvoIx/ytWZcWq85efSZSzXFD6I+QrvBIAzt03ZHzaM7H09c5KL29O6 txDFwtcRTOglt6G0IKbTrlj05FLwMnDZOvzu1lG5BSAVbMMZ8+GRK/Ho9hFwD03m8ZCW+7EY NYUYiZuaxKGZABTPlAQC9Q1m+LAanvXKmUE7g7K4/VvpTGLkmSd05C0WDbRUvWMSd9YgQCzo WXe8n6iKhobKMae2XyO9XfEaurnxHqgAdlIRO3inhJsqGGe1m8/Fzo9aVj4+vKIoReCR/B6B 3VBr0LCqoB3riRHVOLVRBS+qWWYtwUdXPJKGvUm7xuAzKXV5QuUHGkCQXhKb9lOnN87Q3km2 0GEm/vtBCdzq/uFRHSF7LCWoDiufy8PIgcqeTcJRBEe5N/LuogrkhXVQ9BsEai4g8f0Hz62y DePxAA8jbgOic8A142g4EvKxTmro/DhTBMx5wjRdnKo6EV+foHNT5ez9VHR4PJELYCYZlqMp n4Jn46Z9u9mJY6JvDyARqMKBr7B2hqeGDjVgFoqFZ9+8T2ooianZdoJuG84I1p1OMEZfzOve FXUpQ5a+J5UOj2tcLNzZIWyTc8tyMAMCOjYaxwdVfIWCrAZSeNN1HgGiZK4t4w1rHURrA== IronPort-HdrOrdr: A9a23:UTF3K67kuWWN3hyFIAPXwOHXdLJyesId70hD6qkmc20sTiX+rb HLoB17726QtN5yMEtLpTnkAsS9qBznmaKdjbN/AV7AZniFhILLFuFfBNDZskTd8kTFn4Y36U 4HScZD4bbLfDtHZKjBgTVRvLwbsaK6GAzDv5a485/NJzsaDZ1d0w== X-Talos-CUID: 9a23:9rAiBm9rrB0CqsVFIlCVv3M6FMA6Uibi9yb7AGypNVZ5eJ2RGVDFrQ== X-Talos-MUID: 9a23:TuYUXQuYXk5Bl0TK6s2nuDxyN+t3xI+SCwNWmqQt4vWYFwlcAmLI X-IronPort-AV: E=Sophos;i="6.00,248,1681185600"; d="scan'208";a="113132882" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=lbR2AdBICnd33jA3SOP6xNGx+tJhZjLDel1X3YKRW/uBo5jPz3tGISn3P3+VdniDq8PMSwVxcD1aB1ftapeoAYhW7vaUnieEuaZ4cSaJUrfvBQrUorehh0sRZd8w5M9tEYe/sFJa5ruiWShEmzl/Fwz9CiW3jN12WkeBisTnEc0huFNXX3TawwgDyqvcOlSg2LIeAlnZzZdR/9+H4yDE8j/61ziVsd/Vg8bahGeePHFvjKZHFRmmN+OpaHSSPOydvzPAmT9CoFDqkoRbdn9Mw5d2lWdWinJ7oe/eoXQZC/JIKNhgWrIgmfnznyW4O3RvNck6ydmQNJWOzE4JFHGujQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=4NnPy2zA3JqW1//ijiOnu0qiPH7hueEtjgVnekXnnfs=; b=m4rTB39yv67w89PRRYgnumGuEZS1WBbMSgHH5N7qIKaFtfAzlOlSRCoYli/zqOf9aV1gEKgT2PCFfqHGph2bcmNYSYdSSVET4jdXMK00NhHeRoaB+7vF9tDZdnbbhxqoHWss7MIm3bXbRdyhDDL/G+FwT/s3F8r7r+oKNv1BNLIbQQC01oZnJsXgr1X/jaXBMvvBaiDuVvZ/ycg30QbHOMmUjiHjCZi24IYOtEpaAt7syShOFrFayi/fBsuZWNiRJmZGcxWpKnowz7KxPtE4ubgPR7Psr7YaI6mO35J1qGfxSZsspzWtAtF5ZjmvkVaoeVRO0gkLW/Af9PlhQnu7JQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=4NnPy2zA3JqW1//ijiOnu0qiPH7hueEtjgVnekXnnfs=; b=lQ8YdqaJNTT7E3BGFl0LjOY/Cvxv0at8AWujahUFs6Yd08Bp+yJkg0e1j+HWcAixjyqVUIRn7OQTkafjvXnch8IRsCegZE32Xj89P1B8rl0S3nYv2fv1uoyafQwoo+wkMEhL+0I3BkC20L7ZuHdv5XnfkghzY+eQKbCcelrXY0M= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: <8383dd1a-064c-17c9-bb7f-4509518b9b42@citrix.com> Date: Fri, 16 Jun 2023 21:24:33 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 From: Andrew Cooper Subject: Re: [PATCH v4 2/4] xen: Add files needed for minimal ppc64le build Content-Language: en-GB To: Shawn Anastasio , xen-devel@lists.xenproject.org Cc: tpearson@raptorengineering.com, George Dunlap , Jan Beulich , Julien Grall , Stefano Stabellini , Wei Liu References: <97a72e26edafb1d7b3a583755f015d04066c1e53.1686936278.git.sanastasio@raptorengineering.com> In-Reply-To: <97a72e26edafb1d7b3a583755f015d04066c1e53.1686936278.git.sanastasio@raptorengineering.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO2P265CA0487.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:13a::12) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|SJ0PR03MB5389:EE_ X-MS-Office365-Filtering-Correlation-Id: 5bf7a295-64cf-465f-b4cf-08db6ea7b5e3 X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 1SELsfqr/9TUPsl+kVpf6bNTDB6yvDvmMr7rpGm64q5PeGcSYjfpWAkV5wRVJzJWijPO+tlEWoaUrAB84ciIKdFoWBG3jnkqVZG3hqGCDt7ATnDsurT1rfREfssZ9LKscG3YM2fl/KkIRVYKczYA3pxjJWLMtoOhaZwwR32kKPnaiHz4VJc7F4c4HNSXUZy/BB9oGTrST4F6TpJJ9Lzp0IFNq+AYGVsUOQhsjtQloAS2ENIFKHMaiM6oD+6mMXvfHWaybzv1A/JWkR0d8twvYWB2b3/m8tWQrgtw2anWVOQI8wvM79P0erHC5AGy8JS5sQznfMAEvt97xaCF2ohQQuaf3X78urfhP0mxZ++tNlMz3nB1B9r9GZmIg6upnp14yRN8rprx1g9iyorulEutsKLSKDy8T/VancsLt2rjpy0JgHHTv03pal8OXyTl/wkrcEDPuEYHaCu4S0qnEfMcCOhi0/482dq/BNVzoSMY3nH9WCqlsDg85aqSjvdJIFkIPoLrtOtpTvrjrXkrUcvSRSjJtwcWpTbmZSMEcvlgQoMIGUUCbgdl4CK43eQQr5hInmfGw77ecefXv6UnhhCKk8wSLbzWLNkn2wUqSOvHynSK7/NoRGOEEscpDr1ynt83Y/6kG4PvnJf2IASYdBtf9Q== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(136003)(346002)(396003)(366004)(376002)(39860400002)(451199021)(186003)(316002)(26005)(6506007)(6486002)(53546011)(2616005)(83380400001)(41300700001)(8936002)(4326008)(8676002)(6512007)(2906002)(5660300002)(6666004)(66476007)(66556008)(66946007)(508600001)(31696002)(86362001)(36756003)(54906003)(38100700002)(82960400001)(31686004)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?dHRoSG40Mk1YWmlwS2EySmVNMzRhbFptSGJUVGs0MlZic0lhTGNvRWxzbEJl?= =?utf-8?B?a1ZHbExaMG4vYTMybHpLNDMwZXdqL3N5cEx6YU1JQVp4bHBDQnpPekdJbEht?= =?utf-8?B?N3MzTVAxeWg3NkRoRTJacXUzSzhzV1h3QjdNOUJZRjd2aFJaZXRpN2dod21Q?= =?utf-8?B?eC9lbWt4VDRJTnpXTW5NSEJVQUEycGtNbWlmVG9sY3FiREViUTBaN2U3S0sw?= =?utf-8?B?Y1JsdGdNem41K3I5NkVnZGp1SXB0cGtGQzBNN1Y1MU1lK2NXZkZMWXJwQ0Zy?= =?utf-8?B?NXpjanNsdXpocGQxbTdxcHgxb1U3UlpobEJaQlFCbjg1bWdPcis4ekVwaHRu?= =?utf-8?B?cDRrN3dBZWZKQkxObkVxMVlBZ1h2ekxXZEtZRGs3VEpJcGsxaVY3VS83WXZP?= =?utf-8?B?RHFxM3hXY1JQdElHd0pqYURXdlUxd3l5TTRhNngxVGdENCtCM05Ya3JYaHRZ?= =?utf-8?B?Sk9HdHp2RDVBM3NjN3Q0eWZLMkFMSDRVYkdQM21GZmp1UnloZHRERWF5R0x1?= =?utf-8?B?MXhVaUt2UDZOZmlTdXprci9ZTTNDLzZnbFBXU01SdmVyMUpoQU1ycHU4L3J4?= =?utf-8?B?MzlEOFhnRldoY1hqVkJ4eUtLeG5RMUNzOENoT0RXa2JxeWNlYmlKaEg3STRD?= =?utf-8?B?TkhnRlpackhHSjRwUUQySkNoeFdFZWc3TzRrNVN0R2ZmaFNtdXIwNU9mTk1V?= =?utf-8?B?RURyK2FraUZ1YUdjK25Eb2RJd05MUTUvY29oWkhDczVMZ1lwRFdFRytFSnFN?= =?utf-8?B?cEwxR3VTZGxFMDNlYm1hSFVHOWtEWC9Qem9MVXZrdDZucVRiZHpBcHFPVk1j?= =?utf-8?B?ckNxWnJnVmZKTnhFd09UQWZocmN1MnB4VWRjN3NwcnhzY283QUVqSWpEQjV6?= =?utf-8?B?L2RkWXVtaGwvazczQXVydmxmMExVenhrUUw2TCtsV2R2RG9VdHlZSVdOWW1L?= =?utf-8?B?Q2VqZGwxZ001RnFiR3pFdFQ2NUxkamI4RHZtekVjdkNINlNwZVp2blNBQkQr?= =?utf-8?B?WTBUS2hMbTlCamFKWGlPQjczVHB1blZqa0pxYlZGQU93TEdUNG13aGdYc002?= =?utf-8?B?OTVLZVlONzZvL2VQN2UwSmtaMkNsWHFiaGp0M0VMT2cyOEh2U3huSUY5Z0Zq?= =?utf-8?B?WkgwMU8rQXZ5UjhzQnUxT3JOY1ZyNkY1QjNGWE4vUTUzRmpWSFEvRUpMUmJE?= =?utf-8?B?MkJYVlhSRjRmb28zQ0luZzViaXlaMTJIM1ZmSzBhVDhEeHlWUGNSWUpwQVpw?= =?utf-8?B?a2d6TnRzOEhJYTdPaTR4bGpuZ3VLYnBBRWhOYnAycGU5Yi80TElVdjVCTDgz?= =?utf-8?B?VjBQWHJkaGcyWGFnckhNVFozVlNKQnE2c0dTaXNPeTVkT0RKWUJlNmFXZnRt?= =?utf-8?B?eVo1amNwZ0lIb1dlb1NvbEUvaTQxQzJWeFR2SmNUc1hxU2I1SGIzOWhtWTZZ?= =?utf-8?B?YWxlNW5WbUtqeDZheUhwT1RRUCtUaG1TQlhUM3M2U0N4U3FjY25rK2I4UHlN?= =?utf-8?B?Vzd2OEpXQXpEVUFOQ215QlUybmpUUHhCVjZabURZbSsyNFQzZC9PL0pWUXNs?= =?utf-8?B?c3ZGd1ZBMjgvVFRTSlQvWGRRTEMxb094Y3BDN3ZQcnUxMk1IaHdsSWxGUGtU?= =?utf-8?B?cmVFMzZuRm5RTlMrRjRBYkVWWEpBY0ZjR0VKdWd3aUFzT2VQSFFVdXl5dnpL?= =?utf-8?B?R3Iyemdlbk0rYUY1VkJQVVVJeUZISlR2bE1yOVRtZDAzNGR2cWdXRHNwNWpl?= =?utf-8?B?dmo5aFZZTk4yclZacCtYLzFiU1BZb3pBc29IUXdWOFFGWTErOHFSdG5zSzdu?= =?utf-8?B?cGxPM1hLN0p2MVlXOGJ1YWtaemlvOGttcm8xc1k1TjNIN1RwaFVJUVgwVXl1?= =?utf-8?B?eTI0a2hpNGpJZUxSakU0dDJBMTVkeUdnbE4vbW0wSlFDUE1rN2xPeWlxNXlG?= =?utf-8?B?dGhQVmVwSGt1VWx6NFlTV2RKRGZTMWgwUzFvM3dIaDhjTkZXcSs4em1VSHpY?= =?utf-8?B?aW90SUZaclFaSWVTWGpuK2k0bFZGbXp3R2FueXVJNkpzMkdGbm96OXJ3ZTRZ?= =?utf-8?B?SkMwNVVDbGJMQ1BZYWc1SjZ1dVRaaEhjWFNzOU9iWHFTU0N5anl6R2R3WUVs?= =?utf-8?B?TGVUd3c0WXA2OEc4V25ZVExrMFJhSmJVRVFQL1hNWklMS2NKc3FoT1p5c20z?= =?utf-8?B?MFE9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: GseX6IJdgenZ6xQCKYI7ir2KTtNDqXMVHt5g9n6f/IbT+vXJ8Wff8K/1R+pD2e1ysIdKzdYy5yy4z/uirJGtvHocYtGwQdBdl9BKfJqomIKObZeKmj3RyMkCUnbEJ9qzBXbTq+uCfe7BJ0fzQ+30HE0HXX6D04G0tZOQZv0NR9wCnl7uSd++7ydMhmptGRKKVMk2VzTgH6u3ZeJSe7talanmBYNup1JGhPVp9Z6Gj+xkiYzbXDDX7VuEzcsQAdUNJ1Na+P8D0ItuC+inprvxcWfqpb5EQyuHniqehDt5pEdJLC35FgS9Nz+NNCk46FrG1bS6OVBGhcbHwEtNwvqrO262vG7ZP6JOi1VzsV/YkqIfDtAOGTwApFMRLzm3HUIPYoZCD2ZEzM2+6yoh8GL0I8qdRZWxD7ZnToJaJ3q9K9J/1fuiqCuNAvfjMP634vBC7AVZvC77zgeVZWXXz0rhrue7gpdVQQb18tRMq30y+38Sbmpb0HLW/RZd1pzGSDZXJvyhRiLnKdM/D9Vp/NQhu2ao+PtPiBnpS2WdDqUEvFnje0Chrtz/wPeOzbjqEPTYA+TeogmJow2GmJtYQ1FVMbTwmZrb75QiQcojxIwLtgm1balXYT4HUmVDZqfrSYHj5Whj44QdT2HuQg10rOi9FaTEBfP1WfcZW1nIRRLlv4jmU8/fyVCEsDqlk77vOFlpxlZehu1s2bG/LNDqHeJV6bw4W1fBD9GloUnkBpxglRah62smgkyzcCdc/OIvqC6SN9HJSw/52PK39t+TfaVOnJuI2ry8+RbXlTjKbvUV09onxt+1u6T88HCY4G6rW2oOp5kX6i5eWUxPfEfTCuXkBYYbQDTItVT/E9TxbN/Jv7yfda5pvLOryZUxSQKP7qFA7SH1cwnhcrjvQ0GRknYD8XvsETnBZppZywpSxDjnEUo= X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 5bf7a295-64cf-465f-b4cf-08db6ea7b5e3 X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Jun 2023 20:24:39.5878 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: JvlhfQ0glflLbTiqTMrbzS2FTo6d5KaX41NGl/ZIVZUwUfwnY/e6KAeXpY+VTKDHe4ekwvO0HzyUPFsuWfqkyPPpxqPpV0IpObXpsYNd9fk= X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR03MB5389 On 16/06/2023 6:48 pm, Shawn Anastasio wrote: > Add the build system changes required to build for ppc64le (POWER8+). > As of now the resulting image simply boots to an infinite loop. > > $ make XEN_TARGET_ARCH=ppc64 -C xen openpower_defconfig > $ make XEN_TARGET_ARCH=ppc64 SUBSYSTEMS=xen -C xen build I think the first of these isn't needed, given the config ARCH_DEFCONFIG default.  I'd suggest dropping it. On the second, what is the SUBSYSTEMS=xen?  It's not needed given the stripped down build system, but I don't see why we'd ever be compiling Xen with some kind of subsystem configuration for something else. > diff --git a/config/ppc64.mk b/config/ppc64.mk > new file mode 100644 > index 0000000000..597f0668c3 > --- /dev/null > +++ b/config/ppc64.mk > @@ -0,0 +1,5 @@ > +CONFIG_PPC := y > +CONFIG_PPC64 := y > +CONFIG_PPC_$(XEN_OS) := y I know you're copying the existing architectures, but I'm pretty certain these $(XEN_OS) expressions are pretty bogus.  The userspace stuff in tools/ may need to know the host OS it's being built for, but Xen really doesn't. I'm pretty sure it will compile with this dropped, so please do.  I'll see about patching it out of the other architectures. > diff --git a/xen/arch/ppc/Kconfig b/xen/arch/ppc/Kconfig > new file mode 100644 > index 0000000000..a0a70adef4 > --- /dev/null > +++ b/xen/arch/ppc/Kconfig > @@ -0,0 +1,42 @@ > +config PPC > + def_bool y > + > +config PPC64 > + def_bool y > + select 64BIT > + > +config ARCH_DEFCONFIG > + string > + default "arch/ppc/configs/openpower_defconfig" > + > +menu "Architecture Features" > + > +source "arch/Kconfig" > + > +endmenu > + > +menu "ISA Selection" > + > +choice > + prompt "Base ISA" > + default POWER_ISA_2_07B if PPC64 > + help > + This selects the base ISA version that Xen will target. > + > +config POWER_ISA_2_07B > + bool "Power ISA 2.07B" > + help > + Target version 2.07B of the Power ISA (POWER8) > + > +config POWER_ISA_3_00 > + bool "Power ISA 3.00" > + help > + Target version 3.00 of the Power ISA (POWER9) For both of these, it will be helpful for anyone who isn't as PPC-knowledgeable if the POWER8/9 was in the title too, seeing as they're the most common name. But as I'm a noob here too, how different are Power8 and 9?  Given they share a head.S, they're presumably not too disjoint in terms of ISA. While being able to target a specific CPU is something we're trying to retrofit to Xen, by default we do expect it to run on as broad a set of systems as possible. If that's not feasible, then fine, but if it is, it ought to be the default.  Which might be as simple as saying "or later" somewhere in this text, or might be a giant can of worms that I shouldn't open...   > diff --git a/xen/arch/ppc/include/asm/page-bits.h b/xen/arch/ppc/include/asm/page-bits.h > new file mode 100644 > index 0000000000..4c01bf9716 > --- /dev/null > +++ b/xen/arch/ppc/include/asm/page-bits.h > @@ -0,0 +1,7 @@ > +#ifndef __PPC_PAGE_BITS_H__ > +#define __PPC_PAGE_BITS_H__ > + > +#define PAGE_SHIFT 16 /* 64 KiB Pages */ > +#define PADDR_BITS 48 Is 64k the minimum granularity?  Or is 4k an option? I ask because Xen has some very short sighted ABIs which we're still working on removing.  There are still quite a few expectations of PAGE_SHIFT being 12. To be clear, we're looking to fix all of these ABIs, but I suspect it will be an easier lift to begin with at 4k.  (Or perhaps the right thing is to double down and just get them fixed.) > + > +#endif /* __PPC_PAGE_BITS_H__ */ > diff --git a/xen/arch/ppc/ppc64/Makefile b/xen/arch/ppc/ppc64/Makefile > new file mode 100644 > index 0000000000..3340058c08 > --- /dev/null > +++ b/xen/arch/ppc/ppc64/Makefile > @@ -0,0 +1 @@ > +obj-y += head.o > diff --git a/xen/arch/ppc/ppc64/asm-offsets.c b/xen/arch/ppc/ppc64/asm-offsets.c > new file mode 100644 > index 0000000000..e69de29bb2 > diff --git a/xen/arch/ppc/ppc64/head.S b/xen/arch/ppc/ppc64/head.S > new file mode 100644 > index 0000000000..0b289c713a > --- /dev/null > +++ b/xen/arch/ppc/ppc64/head.S > @@ -0,0 +1,27 @@ > +/* SPDX-License-Identifier: GPL-2.0-or-later */ > + > +.section .text.header, "ax", %progbits > + > +ENTRY(start) > + /* > + * Depending on how we were booted, the CPU could be running in either > + * Little Endian or Big Endian mode. The following trampoline from Linux > + * cleverly uses an instruction that encodes to a NOP if the CPU's > + * endianness matches the assumption of the assembler (LE, in our case) > + * or a branch to code that performs the endian switch in the other case. > + */ > + tdi 0, 0, 0x48 /* Reverse endian of b . + 8 */ > + b . + 44 /* Skip trampoline if endian is good */ > + .long 0xa600607d /* mfmsr r11 */ > + .long 0x01006b69 /* xori r11,r11,1 */ > + .long 0x00004039 /* li r10,0 */ > + .long 0x6401417d /* mtmsrd r10,1 */ > + .long 0x05009f42 /* bcl 20,31,$+4 */ > + .long 0xa602487d /* mflr r10 */ > + .long 0x14004a39 /* addi r10,r10,20 */ > + .long 0xa6035a7d /* mtsrr0 r10 */ > + .long 0xa6037b7d /* mtsrr1 r11 */ > + .long 0x2400004c /* rfid */ > + > + /* Now that the endianness is confirmed, continue */ > +1: b 1b .size start, . - start .type start, %function Lets get the ELF metadata right from the start. > diff --git a/xen/arch/ppc/xen.lds.S b/xen/arch/ppc/xen.lds.S > new file mode 100644 > index 0000000000..a72e519c6a > --- /dev/null > +++ b/xen/arch/ppc/xen.lds.S > @@ -0,0 +1,172 @@ > > + DISCARD_SECTIONS > + > + STABS_DEBUG_SECTIONS > + > + ELF_DETAILS_SECTIONS > +} In the other architectures, we now assert that sections such as .got are empty, because we've had enough bugs in the past. I'd recommend doing the same from the outset for all the dynamic relocation sections, unless you're expecting to have to support them? ~Andrew From xen-devel-bounces@lists.xenproject.org Fri Jun 16 20:26:26 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 16 Jun 2023 20:26:26 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550415.859484 (Exim 4.92) (envelope-from ) id 1qAG1U-0008TU-3R; Fri, 16 Jun 2023 20:26:20 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550415.859484; Fri, 16 Jun 2023 20:26:20 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAG1U-0008TN-0P; Fri, 16 Jun 2023 20:26:20 +0000 Received: by outflank-mailman (input) for mailman id 550415; Fri, 16 Jun 2023 20:26:18 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAG1S-0008TF-EN for xen-devel@lists.xenproject.org; Fri, 16 Jun 2023 20:26:18 +0000 Received: from esa4.hc3370-68.iphmx.com (esa4.hc3370-68.iphmx.com [216.71.155.144]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 0a43758c-0c84-11ee-8611-37d641c3527e; Fri, 16 Jun 2023 22:26:15 +0200 (CEST) Received: from mail-bn7nam10lp2106.outbound.protection.outlook.com (HELO NAM10-BN7-obe.outbound.protection.outlook.com) ([104.47.70.106]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 16 Jun 2023 16:26:04 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by SJ0PR03MB5389.namprd03.prod.outlook.com (2603:10b6:a03:285::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.39; Fri, 16 Jun 2023 20:26:02 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606%4]) with mapi id 15.20.6500.029; Fri, 16 Jun 2023 20:26:02 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 0a43758c-0c84-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686947175; h=message-id:date:subject:to:cc:references:from: in-reply-to:content-transfer-encoding:mime-version; bh=D68y0Iuth2b8s+b9LkNbHLAaQ6fmtXQNRJM4hkJuQps=; b=X7S3ekO6WCqs0K/ko9XhFLRfW4DjbQem6MGTGcgusz/N3WDh5kKcixhC Wps+6rK8RMuXbXQ53wJ1F24apP7vReGNyKcRiylVJ74atSLhJA2mM7vx6 spjpl7nG7yaVCJmCTJt5d/jYPOwdc6rT8IGo+lIqJSNJSDblzL0dBegZk k=; X-IronPort-RemoteIP: 104.47.70.106 X-IronPort-MID: 115656598 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:2lnCMqzu12VlCw3Sa8J6t+fExyrEfRIJ4+MujC+fZmUNrF6WrkUEz 2EdXGiFPfyOMTT2fN0iYN6+908PvcXdn4MyTFY4pSAxQypGp/SeCIXCJC8cHc8wwu7rFxs7s ppEOrEsCOhuExcwcz/0auCJQUFUjP3OHfykTrafYEidfCc8IA85kxVvhuUltYBhhNm9Emult Mj75sbSIzdJ4RYtWo4vw/zF8EsHUMja4mtC5QRgPK4T5zcyqlFOZH4hDfDpR5fHatE88t6SH 47r0Ly/92XFyBYhYvvNfmHTKxBirhb6ZGBiu1IOM0SQqkEqSh8ai87XAME0e0ZP4whlqvgqo Dl7WT5cfi9yVkHEsLx1vxC1iEiSN4UekFPMCSDXXcB+UyQq2pYjqhljJBheAGEWxgp4KWISz OIieQlKVBKs2eXo4JaEYMMvvv12eaEHPKtH0p1h5RfwKK9+BLrlHODN79Ie2yosjMdTG/qYf 9AedTdkcBXHZVtIJ0sTD5U92uyvgxETcRUB8A7T+fVxvDCVlVQvuFTuGIO9ltiibMNZhEuH4 EnB+Hz0GEoyP92D0zuVtHmrg4cjmAuiAd9MSePlp64CbFu77H5PCENMckGA+Ojmi2G3YJV8A Qszw397xUQ13AnxJjXnZDWjqXiNpQIVQNtXO/cz8B2K0KfS7AefC2UeTzhOLtchsaceVTEsk 1OEgd7tLThuq6GOD2KQ8K+OqjG/MjRTKnUNDQcYVQYM+cLkpqkphwrTScxuFqG0iND4AzD2z HaBqy1Wr74al8IM2o2w9ErLhD/qrZ/MJiYu/RneVG+h6gJ/Zaamapau5Fyd6uxPRLt1VXGEt XkA3sKYs+YHCMjVkDTXGb1TWra0+/yCLTvQx0Z1GIUs/Cis/Hjlep1M5DZ5JwFiNcNslSLVX XI/cDh5vPd7VEZGp4cuC25tI6zGFZTdKOk= IronPort-HdrOrdr: A9a23:8yfaf6BR3nA4yRLlHemF55DYdb4zR+YMi2TDgXoBMSC9Ffbo8/ xG/c5rsCMd6l4qMk3I/OrsBEDuex/hHPJOjrX5Xo3SPjUO2lHJEGg41/qa/9SIIUSXndK1s5 0PT0EUMqySMbEVt6fHCKbTKada/DEqmprY4ts3bh1WPGdXV50= X-Talos-CUID: 9a23:UyKtw256sfudVkHYd9ss9xItBPp0SzrnzliOJBGYLVlDYv6tcArF X-Talos-MUID: 9a23:YVLbWASWKqL2gFaERXTGlm1iap1P+Z/3GR8Mvpw9/OqucgtJbmI= X-IronPort-AV: E=Sophos;i="6.00,248,1681185600"; d="scan'208";a="115656598" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=LuFL4ODsf/fA6r5yoZmJZvhj4lkxAeaDuuFfBZCd3YOXZZHopTl0xHtwZG6x4TRINkCFPu8bX+HIEESjmipDf3P6qYbRzhZo+9pn5EEdyyT2NbqnZ7XP9xANcCWXfYU1M/BXSekAPvygy98RMfdeOa+7Dy/kdDfymqGuepj9gD/rk9vnqKR0zWyI7euOipVrCNzDjuH/ZybDaP4iEKSKhEMRFGYYjIp0cSQMFqWDMPYSaLBNAOMudui6MVc/JMcedn7aVNX2gSLXX3vPooYU4FyRx3gCTUOTLmK1PfeCCWmxJctbeIlC/NjAwE7/pGr6nwycjNdJyu4+jJNq9hl6dw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=D68y0Iuth2b8s+b9LkNbHLAaQ6fmtXQNRJM4hkJuQps=; b=hyjHn1OKwXdMKs8wmWn42hIw3vCnXzrTQLZFcsB6daBnX9DOqPsvCone7j8kWg0hC3CNAXnAFKyh62eJV6iDR0G4E7JNhQr+286AuwUp/84F7/0mZp4tQhaIPkzRrzoqj5mRdeqQCgzJW7afaNhfAt6K5+h0DulN96KgcpkNDp7KOqbkPjuueWNP1dl3H4R6j8E3ifgksG2+pJe6jqXCs/+9q3+7iAWwey/6uiilN/a09salW9hMdnbtWsHecY8dtSPNV2uHf7SzW2ecctl36VksMaqsjXM/XJvPRORh5nDwbCVjehzYFEfJr8kscPXaVoONQaBMJQktu+m3gpH4wQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=D68y0Iuth2b8s+b9LkNbHLAaQ6fmtXQNRJM4hkJuQps=; b=l6ZWKpaGhyOmtTuseMWpacFhO/ccHeFkcxVD2LZeSx9WBfFalTi1JmYjRCXifnakG4qeY6Xs97zQaa6lvFfEnf66gavspZ5uzm2mSQxxiSZIe3bONQL42y9TLojZ61Eggdjew7U7hyRcx0viRR+aMNPBhCAgtdiVUYDoNP4Sp8I= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: <9a5a0ab9-6bd1-6498-43b5-4df782a4cea5@citrix.com> Date: Fri, 16 Jun 2023 21:25:57 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH v4 3/4] automation: Add ppc64le cross-build jobs Content-Language: en-GB To: Shawn Anastasio , xen-devel@lists.xenproject.org Cc: tpearson@raptorengineering.com, Doug Goldstein , Stefano Stabellini References: <1a09823b03b5054c97efcf7008f9626d8ee83f49.1686936278.git.sanastasio@raptorengineering.com> From: Andrew Cooper In-Reply-To: <1a09823b03b5054c97efcf7008f9626d8ee83f49.1686936278.git.sanastasio@raptorengineering.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: LO2P265CA0487.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:13a::12) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|SJ0PR03MB5389:EE_ X-MS-Office365-Filtering-Correlation-Id: 0483a8cb-3d64-4870-9be0-08db6ea7e71d X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: ajkoZjXvuFoiO8JyGdd7ab0j2Cl+wmCSNRttrhDGrjmPaItwWqcBjVsq2zkpk66mj8Bb1rgzUp8b82G6TUHR4ZoMluAd0EsdVhSaBEKC3Ol9sXkNMA7jp6g9/akGnf9HDCzAKQfHhbKnZCJybDkYpwlOy9Il376W/RotfHTzSU0O1k62nQPPkC71qto9Ka6qqtJI0DFcifj0NHHDb3CvQi8L3a8UtSykkLdPn0oprphbf83tMstqT/VycqpQjBV4yaOJUeIk/Wg3DS9PQYxVHVF6W3VwwNs6RH6kCFYK7nNIvYxsbuIMKw1u9DMy3SOjU+qaufvKmZBMyRT+I6uKV2X9E14NfBxFjutBSrFGWBKMpjM6+yG84WpWyW/VkTt9cHuDzqwjG+mOTMi5PXDP36tzjKJcfAySBsvmxixk/qe//SWTPFeGPHHQDS9Zk5yv+177mZHeSKeEdV2w/Qa86gHOvmWRvRvlP5DXivqBMnBDY2x0IhpBkpS9DNXeH6PlW3P67ib9rIoMJoPnUaJ5dWlFazh0mB4NNODs8XQgcAUi7ZXbrxCNV05hbmpN8ruc63UxDpAjhhwHIbhWBt26JEGuYvlP8Hmow8j1l+WZP62A/oEqe03qz0l3b/Z0Wx8tYq1GjojBrIndI+7We4VOxw== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(136003)(346002)(396003)(366004)(376002)(39860400002)(451199021)(186003)(316002)(26005)(6506007)(6486002)(53546011)(2616005)(41300700001)(8936002)(4326008)(8676002)(6512007)(2906002)(5660300002)(6666004)(66476007)(66556008)(66946007)(508600001)(558084003)(31696002)(86362001)(36756003)(54906003)(38100700002)(82960400001)(31686004)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?TkRwNTdKRllNdkhlaHB0KzVSTmdPdC96WlBPTno2MUs4TStHV3ZQVGxwTmN0?= =?utf-8?B?dnlROG9tdzlZWnYrQzFSTE1EWkZJV0JVOURTMGdYTUtCQjhuUE1hZ0tjT1o5?= =?utf-8?B?SG9zUmdJdldIQUlqNGFmWVA0aDJTV1EwLzFla2Mxcmh6VWdLTU1IZmhPY0RK?= =?utf-8?B?YmRQTU1BeGN0S0RCWVNzY3luZ3MxZ1A5a2hKL0RCUUI0a01RMnJTaFBLcEw1?= =?utf-8?B?OXcrWTRaNWtNWnJ5K1R1dUowQk0zcUpmK1MxNjQyYkhXMkExWjUwSlVaYXZo?= =?utf-8?B?SGtMQzZyOGVWQi9UU01RNVAvOWliLzNyVUJRRnBEVWV4UCt2UWJiWldmS2JV?= =?utf-8?B?RG93ajMzekpaQ25ybzFRSlR5UWcxaldPZjRJby9TM0pFcGUvNE1qd0QzV1Rx?= =?utf-8?B?b2s3bkgzN1l1ZWxsMHczOWNUV2UxN2FocTVCR1JBeCtyT2dkRmxUcmN1Yk4r?= =?utf-8?B?MThFdVdVLzlkQitnZWFLcUdSeWdUZ1BCdzlYZldUQUFKZEZHbm9selkvemsw?= =?utf-8?B?VFdZb0ozK2VYZ2lyMHR3amFzaHpIdUprcVJlZnVSY0hucnBPVVd3MXpvaEVX?= =?utf-8?B?UWxsZ3dIVFVYdlJPWE1NYm1mQzBjN0NoeGV1eCtRZ0lTek1YWFRYeXphcFJq?= =?utf-8?B?VzhJaVZTbXMvZ3IyVEl3R3p6RVZBek91VlJYOG83NGg0blF2WFU3UXJNeVlP?= =?utf-8?B?TjluUW51dURqaGxaZXhRUjlxUytSZ1hQNmRRS0tqVlZlV0drNGhHcnVudDRB?= =?utf-8?B?UUpmOGIwdy9lODR3OVNCeEZJeW8yeWJGbWJ1TElDSk1RMmZRcWtGR0xQM3NG?= =?utf-8?B?ZVBKeHUyUm9MN1NkUWZrV2EwWXRyTkpDallYK0RWM25MVW1OR2NqRktDc1A4?= =?utf-8?B?TGZUQnlqVUVnUkFFQXV1ZjEzSVVHVlo5bE10SFgveFAxb296a2t4T2E5c0xY?= =?utf-8?B?cjVvdnNaYlB0MS94S2VpVUNHV1JPNmNwSFZpQitjdllMY0p2Y3hJRmtoNyth?= =?utf-8?B?NGxGM1pPZnNGdzJ0WUxXa3JYTThoTTlOYWtLZzBKanVyMlluNDU0aTUyaDNL?= =?utf-8?B?ZTVHTDlSQ0p0T0JXMlArWmVUWStOSmZiOGt6K05CSzBiQ2YwNkZUS0xBa1Zr?= =?utf-8?B?OXNKd1JKQUJFYVZwekQ2MGtvYVQ5S1o5NkRhRUNEb2tmWmFwV2diK2lud0Vi?= =?utf-8?B?V3J1b2VVVXhlWmFSbkhTMlhWTi9NaEpXRktoL3c3RUt6Q0lTN1pwL2VJQjRr?= =?utf-8?B?OHMxZFdDS29VNEZoaCtOeDM1djVlcW9LWW11cTZLT3BvanFDUzh3ZUd0RFdW?= =?utf-8?B?NG4rNkZKc0U3dE5US0NhbU5ZQXd5OXg1K0oydXp5OWNrUzRZengvU2h0TFBv?= =?utf-8?B?NmpCajVmTDc0cG15QldMaHpjWkFlbjJWWDBxRCtuai9wcjFrMXBBTUlhVXls?= =?utf-8?B?M0NUUUk4RFoybmptSi93azlLWUlaaU9UWVdSMUxsdWhXVFptZGNVSm91ajJx?= =?utf-8?B?U3lncVhxVmdtQmRWSGVldnBVaVVGY2Z3RFFobHV3bWdvN2NqTUNaUDdxZklt?= =?utf-8?B?cU5LNGFNSlRLZStmYTZEUE02b2RxZFB2M2U4RFVwVkF5bXE3M29IS2RWUmlG?= =?utf-8?B?TXkvb2t6aUdWQ2ZVN1VCOGl6aGRsc2RMUG5YK0haaXdKYTRDeklXdm15RVZE?= =?utf-8?B?ZmZGWHFJaHE2WXVCU0g1WktIYkIyajRLTjFjeVhaMzZ6bUVZVFBtOTlVVVlU?= =?utf-8?B?KzZ5elllT09qZkhFK2QwbXdQa1BWNzFuQnNSNkxkRXdPcGk2SzM1SlBHbFZ4?= =?utf-8?B?RHRoR2cyUTVUUm0rV29mVzl2Z2dIU0hhTUh0TzNaU0JscGw3UTREZEtaTnNp?= =?utf-8?B?N3RQNVJkY2pBdU02bjNnSjk1eFQzN2VwWkdLcDBxaXM5REdrOEd3cjgzV0Fj?= =?utf-8?B?Z2lIcEw3c2JzalRLVVp1RHo4NFNidUFlWEsrUjZrTHJqYjd2RTNXdnFDRmJQ?= =?utf-8?B?b3ZabWNYRnlTKzB3K1FhMTRNRTNpRFg5VStsS0x0RkFzYWs0R3lGTGZTZlBP?= =?utf-8?B?bHlNV09EeG9JenN0WlpBL1l1Uy9PVzQyQndueC9Gb25GWHFOTUpYWUR4Nklx?= =?utf-8?B?Sk16Ukg5bnBIRTE1NDZseVpybU15QXV1OWx2OExZalV1NzhRSkE2RUVobVRm?= =?utf-8?B?R0E9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: ALnyBluBaLThheyFvNPUKWl5undSOs0i4nuhrB4lpbWcHRarYbbSHGbuw5OKJKjLY9ni3ltcnpVirhI6DrR7LTaKhijdFK8U3s2iHrz8HwRygeNA8PvBHaG4IPzKSyv2vjsZT5sbpvT/cEFEjaVZFJem9xapvw2M4utLOt9Gd8T0RJDHPW1RB8U4UAw9u0huUG2YUAlWnqF5IF/Ej0W8lC+TBpATgv4pdSfeW/JguIBTYwgXSJPcZXK41jgLbWRfKTAcJlwkPZtsSNtU43NWOyv23LVWJvX5R+7BTWfD7phWeoqGj8w6tVqXRaVwiwcqQ7HHIcpmdScqLo+n8zijFtOJaFUJ5iz9VVSUN6AusJgdwMH26gyIvAXJXRZLOlLx2jJK2Rjtq2u1CweCl1PZsaPwVO1ZNK1wwPcd+3CfKOSTgOyAE0Pw2WM2eOP8/gqIBb00cvxSLp9OiI1vdA3d+1f3TQHpLDgCgTjPSndxaunZrNu2A/7Ab5M6IzLpv8rWAlO+P9mmUH0T5KIVRJ8zK9A1v/R2sb+5p/zUpFVTqk6RC1Hzm+/oczTxXtyEaH5UGxLvgFDFrc44XwDdSoMHuOdVSjK2Jnna2/mIwx7dxEUyzaLELXAEIh3CNYyar4sPHg2jGd30g+3oJOBQq3b9PhhrmnI69whk6g75ONxpsMiTZzBmX8DjPcZhb+eWGVP6RUtLTZgSWzwJTCaBffktWSzJCMEZoS19BvIlYfwS7FyPDL8dv4NYXUfPIEIg5UDAjNRAp6FJYfXk1Gcvw5qCWszaqW8Ci/I7NGM2grbphBwdHcLhE0RIZwcDHKMhy40gJCYMWRBuIWATTwCdY/SCAU3Vu1+5f/O5PV33UjxnsKPPml315wTLqgQc90cwKlxNJxfjFRbzcSqxrqSBvLbHEg== X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 0483a8cb-3d64-4870-9be0-08db6ea7e71d X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Jun 2023 20:26:02.2048 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 13ETCjN1N4YgE6w0M3/AyklMBwyUikg9AmUagyK7hOsOioQRvddxP7ZLv0xXWY+1B0y8cgjjygPfXYVinl8G3CQ8sd+8VFtl/H/zFgq7ntc= X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR03MB5389 On 16/06/2023 6:48 pm, Shawn Anastasio wrote: > Add build jobs to cross-compile Xen for ppc64le. > > Signed-off-by: Shawn Anastasio Acked-by: Andrew Cooper From xen-devel-bounces@lists.xenproject.org Fri Jun 16 20:27:54 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 16 Jun 2023 20:27:54 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550420.859494 (Exim 4.92) (envelope-from ) id 1qAG2t-0000c7-Dl; Fri, 16 Jun 2023 20:27:47 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550420.859494; Fri, 16 Jun 2023 20:27:47 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAG2t-0000c0-Ar; Fri, 16 Jun 2023 20:27:47 +0000 Received: by outflank-mailman (input) for mailman id 550420; Fri, 16 Jun 2023 20:27:46 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAG2s-0000bu-QU for xen-devel@lists.xenproject.org; Fri, 16 Jun 2023 20:27:46 +0000 Received: from esa4.hc3370-68.iphmx.com (esa4.hc3370-68.iphmx.com [216.71.155.144]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 3f5a75ae-0c84-11ee-8611-37d641c3527e; Fri, 16 Jun 2023 22:27:44 +0200 (CEST) Received: from mail-bn7nam10lp2105.outbound.protection.outlook.com (HELO NAM10-BN7-obe.outbound.protection.outlook.com) ([104.47.70.105]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 16 Jun 2023 16:27:41 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by PH0PR03MB5813.namprd03.prod.outlook.com (2603:10b6:510:35::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.29; Fri, 16 Jun 2023 20:27:39 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606%4]) with mapi id 15.20.6500.029; Fri, 16 Jun 2023 20:27:39 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 3f5a75ae-0c84-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1686947264; h=message-id:date:from:subject:to:cc:references: in-reply-to:content-transfer-encoding:mime-version; bh=6g11X0AZslbwtK9CPy/wsZh5Z8TJdEpwq0tHV27YPI0=; b=a66fk2j20vPGL0DkFHW6LDOfYBqwl2YLczKZfqTtefV5d3lWI8aETj41 g3Ehn5KOfyuLvDCoc15z9ZFdiofnuWfvWs0enn4Pjamjh8iKIZPrOUJT6 CbQ4097VNwqHkmVl/5cvo6K1cxIVTjmfRhpWTlkIXaK4xIqSifVXhm7NJ 0=; X-IronPort-RemoteIP: 104.47.70.105 X-IronPort-MID: 115656713 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:SlCcIaNQO0q49L/vrR0ylsFynXyQoLVcMsEvi/4bfWQNrUpw1WQDm zBOCG6Eb/jYMTfzfNx1Pom18R5Q78Xcn4dnGQto+SlhQUwRpJueD7x1DKtS0wC6dZSfER09v 63yTvGacajYm1eF/k/F3oDJ9CU6jufQAOKnUoYoAwgpLSd8UiAtlBl/rOAwh49skLCRDhiE/ Nj/uKUzAnf8s9JPGjxSs/rrRC9H5qyo42tG5wJmPpingXeF/5UrJMNHTU2OByOQrrl8RoaSW +vFxbelyWLVlz9F5gSNy+uTnuUiG9Y+DCDW4pZkc/HKbitq/0Te5p0TJvsEAXq7vh3S9zxHJ HehgrTrIeshFvWkdO3wyHC0GQkmVUFN0OevzXRSLaV/ZqAJGpfh66wGMa04AWEX0r5KI3F/7 qcxEzI2TDCejMe767SAV/Y506zPLOGzVG8ekldJ6GiBSNwAHtXESaiM4sJE1jAtgMwIBezZe 8cSdTtoalLHfgFLPVAUTpk5mY9EhFGmK2Ee9A3T+vJxujCOpOBy+OGF3N79U9qGX8hK2G2fo XrL5T/RCRAGLt2PjzGC9xpAg8eWxH6lBdxNTebQGvhCuXOQ5mEXKRgsdVbhgseLq0/vW4lFE hlBksYphe1onKCxdfHmVhuxu2KNpR8bc8BZC/E98gyLxavS7guDB24LCDVGbbQOpMIwADAny FKNt9foHiB09q2YT2qH8bWZpi/0PjIaRUcefSINVxAC5fH5qZkviQjCSNliFqO4lNzzFnf7x DXihCo0iqgXjMUL/76m5l2BiDWpzrDLUwo06wP/Tm+jqARja+aNfJe04FLW6fJBKoexTVSbu nUA3c+E44gmEpWlhCGLBuIXE9mUC+2tNTTdhRtlGcYn/jH0o3q7J9kIvXd5OVtjNdsCdXnxe kjPtAhN5ZhVeny3catwZIH3AMMvpUT9KenYujnvRoImSvBMmMWvpUmCuWb4M7jRrXUR IronPort-HdrOrdr: A9a23:A+X3+apbvxg148MmaJMfPAgaV5oReYIsimQD101hICG9JPbo8P xG+85rtiMc6QxwZJhOo7u90cW7K080lqQV3WByB9iftVLdyQ+VxehZhOPfKlvbdhEWndQy6U 4PScRD4HKbNykdsS5XijPIcerJYbO8gcWVuds= X-Talos-CUID: =?us-ascii?q?9a23=3A4wK5fWksJhfbKDqaco3kxmn8Z0jXOSXg7mfhOBS?= =?us-ascii?q?RMmRSap2IQnqd06VfjtU7zg=3D=3D?= X-Talos-MUID: =?us-ascii?q?9a23=3ARmfH6w82Dq189iTt4l0QMvGQf/5G4ISjDGEIq7U?= =?us-ascii?q?L4eq6Bw1xajfGlg3iFw=3D=3D?= X-IronPort-AV: E=Sophos;i="6.00,248,1681185600"; d="scan'208";a="115656713" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Q7Z6fqhqmrGyjsbrAwSdoj/NIF+vta73eD2q1WIrg/eUs5O5qxTqX99u9SIGbxf4gLXm4yhyYNmIx9nl4FdFsqyayNWPJPKxxfdHxEwQO3cA2Dfrnj4XniKOJsZ89TR20eegaYL9TLyl/eNs4mtE2seO4EagZSL9MFrV+xkY45RN2HjQNUJbPIUmdH0OPbVQ46f0P77ybOIyPY0WgkpsMWB9Cr+EzpzY65iamYTQEoU6TkQttlfNxjazjbuNXxtU9N+7IEBSBUSjaekSLUsuzxpwyd43QqSLT3Hh9HWJsEz+XSygLQdaD5ubwR00T7+Y2AcEY1DtILij6DPUMLRl4g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=sE+dnkk0SpkOruea8rP1dHOSYF3FZqhXsSLIckzJ6wA=; b=hSe1XoFmGh5qr3iBZX+py+1aqJwzX05meHTPxoGHPir2QRtY4/X6D81rFn/+oR9BrjbDpsPtDqPn407aQn0oQ6bXIGiITI9/1zSVrPnSSHREV7ibHKMNKtNe5b93Lxvki8SQR4PJQRzyaDj8MoW/1KgclUo7LVxz2MFDglvdoRVBXx5bTApxXhJIVU3UQYp+/qscqc6Y37J6a7uHuQ8X44hiOQZAar/2uRahbF98qi++QIdow/kX0GDkX2SBzdfAcNU5dISxofO2Ah45bb7kJNuqEPG0YemSl/Vo2poNiMoE77A6fimAyuKQG2jo99CaQW9vtmLo/jiReJ0CdP4s7g== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=sE+dnkk0SpkOruea8rP1dHOSYF3FZqhXsSLIckzJ6wA=; b=iu/yIOQw87s/FU1GQJGPBArXh9IRMEnrWbNz9O3W6LJv+zMx11q6oQy/dKhO2wLumvvQhGH90xkAkdP9gzanFygJ1uun2Yf1zfeTGv9Pf2d8p968WGpdUY0Pw3z/Lub6tdI63gw8ebm8Q61iHLPE9/t9rj3G+25xq7i84yX9iFU= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: <33c8e11f-c561-3dcf-e08f-0ea19b34f89e@citrix.com> Date: Fri, 16 Jun 2023 21:27:32 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 From: Andrew Cooper Subject: Re: [PATCH v4 2/4] xen: Add files needed for minimal ppc64le build Content-Language: en-GB To: Shawn Anastasio , xen-devel@lists.xenproject.org Cc: tpearson@raptorengineering.com, George Dunlap , Jan Beulich , Julien Grall , Stefano Stabellini , Wei Liu References: <97a72e26edafb1d7b3a583755f015d04066c1e53.1686936278.git.sanastasio@raptorengineering.com> In-Reply-To: <97a72e26edafb1d7b3a583755f015d04066c1e53.1686936278.git.sanastasio@raptorengineering.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO4P123CA0505.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:272::15) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|PH0PR03MB5813:EE_ X-MS-Office365-Filtering-Correlation-Id: dd4066e3-cb8e-4d66-551e-08db6ea82111 X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 4UN7EQvMlYuN4dBf37AMerj1Ms5Kn2K9u7QMGUaSVHTukC7wi5UzvkRINXAeHil91YY3RbYwOWDVDFuvrGfuLme87wdGUHpccanx6swjxcvOcJJ+ljqM3arcu6eezYP/moIgOlvGqwoT3qf1hqdGGcRxRgDYY+x6Yex23Z5IqU/po8rqiNgWaa1jV8PrCPMjYlS+Byv6tCXHeoTfhJbxmezW2tJYapO0mt3BsLUqIHEMJjaCWzcM9MDzb5rZerLV/dtijkt8ebcyMURxkioXbKC4OwZBv94Dcds4+aCgyk9NYis4EFxz+sjRXjozHYSDLyfg+Qcg9R6+E+oeqvns+AoYaEJ1A3iiDkg4W3Jf+Q7E1hhXvmEuoMP3ilNEjqs7Mxm+QSpCduVuhcxQ/ki5t2slm9UJLJb/Z0bJM1ITZr6su4Rz5pjAREEo61S4w0ZX9dLelEp4hmbAKuuh5v+/ICZYUD4dEp7m6PFPaIArSIIh3L+hg5JTGubwtscwKe7BpZkJg3lGUblWQZtWO2RrfvjOsSWRKGYK4uyYq29fSDxTjnBLuzl/KeIy9u6X4/7wrNQklv/0l8mMhSnvouRYBl/wFdVRdJ4cUwINXFMqEdNChcxLSXu0guUrOjX09CQIM9ajthRRLq6uyxYc1sr2qw== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(396003)(376002)(366004)(136003)(346002)(451199021)(4744005)(2616005)(2906002)(82960400001)(38100700002)(36756003)(8936002)(8676002)(86362001)(54906003)(5660300002)(31686004)(41300700001)(4326008)(6666004)(66556008)(66476007)(66946007)(6486002)(316002)(186003)(31696002)(478600001)(26005)(53546011)(6506007)(6512007)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?S1V0dG9EdFBqd0NrcjkvZXpUQ2JpaWFac2dpMjkzaG9sYWtvVTJCY2ZxUVJk?= =?utf-8?B?TktOWFpjWkROTXk4UzF0U2VSNHE1VjFYSnBETDhUMzlhbkhxMHgyVjB4cGJU?= =?utf-8?B?S3RSbjhpdzJOUXVWVmIyckh3WjEzT0lzNVh4WFViWlNRNHdZVFh6cFk4Wjlw?= =?utf-8?B?bUlxVjRoWW93NGp1RnFwcjRTQ1NYamN0Zk5hVERDTGxIMExub1QzL1lnTldt?= =?utf-8?B?K1k4ckMyUXlGV205SzBhem1VeWtvQk9HNWlhc2x2ZlF1eWVveU04SzM4dy8r?= =?utf-8?B?L3hXanZDR2JBVk5hSjVsalZZRmZlUnRSQTBnbWk5S2RaeFNRMk00czZ4WVN3?= =?utf-8?B?eVE0czRNZ0VtdjZtQTkvcjJkVlltRUR1TFhhNUJiRE9MdU5VRUpJY0M1TzMw?= =?utf-8?B?UGxBendUY05ZZE51WGRaZ0FLaTE1ekVXZVBHWC9MZVdGN1hvZHRPbS96Qmpy?= =?utf-8?B?cWNhM0c5aWlZSkExeU9rWDlhbEJiT2dGZ0hFTnE1bTNudVgxamtwS1VWSFd5?= =?utf-8?B?UGV1TWFjUnhCMjUrcjI4QUgzaTZLVWoyQWI2Vnl2U3lEaWdvUEFzYTQ0UjdG?= =?utf-8?B?Q1pvWG4xNmpaYXovc2VXVURCOVhzVlkyU1E2bzA4U0lJNXNaSURkN3RLT3dq?= =?utf-8?B?WGRUdlRocWV3UjhiMlRmMVY2dSszSUJvK1lmMTA2emdHVEx4NWkyWVhMWVhB?= =?utf-8?B?S3VLdzlMcEJBNklDNGhZSmhwMlY4YXdpOU4rMncyaFBDZ0lyOG1QVU9IcHNF?= =?utf-8?B?S3FYVitKRk1sNG9ROFRyY2trZDNlV01iWUxZMEo5MlBJMWY1WG9PV2xhRFFJ?= =?utf-8?B?bFB3RmV0RitGbTBSWkM5Nk1MaHMxNjlPN2lDRFFvckxSZExhR1o1eHJ3MCsr?= =?utf-8?B?SkJwUkRCR3B4NE54LzFwQStlOWtXQ2FRZ2c1U2d2YmFvVko2OElOWUdyYWl5?= =?utf-8?B?NFdMeEc3d3RFamFGZjdIZk1NWWhLMW8xSk55aXUvT1BRWEc4bDJZOWdkNHNG?= =?utf-8?B?QjVOR3d2bEQ3M1FwUEx6eE1aQnhBSHM5eDNScTEyNktaSUg1S3ZITjM5YkZU?= =?utf-8?B?a2szQnRBTEVCZWtWNlgxd3pwbEJBSlEyMnlZZTlHYWNmdUZ3NFY2VlpHRXpo?= =?utf-8?B?Tjl0ZGNSL1R0OGhCSStNVjF6N0g3UXh5R1pqTEFwc3A0ZlZRYkJHaVMxbGh3?= =?utf-8?B?Ny94TGpoc2t3SHBVdnhmcTluWTV3R0V1OTdsNFUwOEFWcjZSSEg5eU90V2g4?= =?utf-8?B?Z0plcHRtdThGZWtocVY0Snp2YnRmd1hIdDVNRldreHFobHFjWHN3cC9jMTFR?= =?utf-8?B?dlRML0JmaHpuMWVVZmpYMFJJaHFTSEZBWlRrRFBvekp3MTB3OW9VaEVXQmMr?= =?utf-8?B?b2ZFb3Z4Q0RUbDlMMnZIaEc5dXVBNFFiQ2F3ZmM5ZXZhTFA2N0gybk1SZlNu?= =?utf-8?B?eHVRYXZPSmtHR2MwcWVwM1l4RFFMNjV3QXc5VThiZjRkcHg2VVVBNmVQTlhY?= =?utf-8?B?ZUg2RnZ2bGZiTE5VMFh3UkZCOGdaRUZlalVRWHBycGdoTXNwa0NBWUFyeWdr?= =?utf-8?B?WHYveUZIMUZZNVFSajdNN1IwbEFXSmVkVnJJN01OZjY5cVE1bHlOeDlDbTRS?= =?utf-8?B?TFNoTVlBdk8xS2w5Y2VPUUlaVTdERVAxdVM4T1ZRZ0Z2RmkrWTJ6bjFyTFNh?= =?utf-8?B?bUNzWUlabU9kK2thMHlsRWd5cHhCNXFuTnFzS25XR2FQZEJ6VHJoeFpMeGNI?= =?utf-8?B?cWwwZngwdUM0WDc5ako3cU44NGphNVhqUlpCL2xoL05yUkNtdkJOM1RQQ0Nw?= =?utf-8?B?bFF4NXM1dkdPcjZxOFlKWkNvUGlzY2ZMOHI5UnF6Q1gvZ2g0VEF1ZS9jTkdp?= =?utf-8?B?eWhLNTdnZXdlcTFrazIrQmtHN3oybml6dkU3KzkzUmhXVTRVUDBiaTAyNTJ3?= =?utf-8?B?Mm1lL2wzNG1ISnJqQ3d5Y21vM3FEYUNPTnkwdU5xeWJLS1dxalZ1eDlsekFT?= =?utf-8?B?M3lKZUJUWWJIbFgrNUFjenJyTUlGNFUzbGdHbUpuNmFRTlRweXVUa05zbGEx?= =?utf-8?B?N1AxajBCNHpOVmhoWGhSdVM0dDA1V1hlTzNPR3pScFJtZnp1bWtMVVBlWUVy?= =?utf-8?B?dWxqZldCRVdDbVpVKzVkOUFPZ0hwbnBDQnBEdGVqdVVLSFVXbHFiRlp1bEZk?= =?utf-8?B?OEE9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: iKSkKR1SKBC7VuW8E7moI57LE8PNSlscal3DS1n799VDho9Q7o+SeDvzXg7BsUKbKXct8PByIFgI2rw3DIZAqzfNqNGAUAIS3FcG1UQF3I3Z6689Li8IW8+OC0KJ9anwcOzmqno92ZX5IQOegnFqJkAPFjk9gpyfywdVty277b6AcModr5ltjPgexSqGlIfa3iY6CK/AjKBe8+wruc5vaBr0Axm5LNU3w+gM98fn/YdPCmLkfcifWpAP3g79hundzImaaArsHnapGGjX8s17C/6Bi7RZqu4KHVOhZhUcN6Hl7asCrTTCFBXwQw7wZ3bjtx34FLN8N6p81WpmzmRMYlMI8q4QktmsEk06yyq0OBjAa8k4avLtchn3J0o9kW38oROZCUU0DcmQiKDu0+c7oG6NjE92pJBA8qy68Buu7VadQzz7MLowCv4YjnSz/W0DY5TFej0wr9Iqdn37zh2PHC1AHvTdWlYAEmUb/kIBpjxdE8M7iXQlfSPW1eDzawp85LVrlgno7YykyW8W3BGwoy8Swxn88cZzHk+R2CQcaYGkoHxP1R4kg+4NsjIPkC5SLhYxEawQnHZ7oWG3hvPqMqpxh/1aIWA9FpQUVWKQdub1cyT4Ol4upat1NJyIBCzH0nCIYdrZUjbk2f8HP41WUWbos87jGOsZ2cShJIYkRl8YFu1E3vE1uQaXqTdKsGrKycaKBzBbBZGv6IwHXOMTkVYnYVAFR1R4IKbCkmVUf1SSGCL1wD+DrQUlu3hZCcw8S8q32IM0CR47GyDoxhfD4kHItn8+NvJUnvnR1lR5Z3bnVWqB27ORJe+ja13dMYBSsBV8BSZF37m6oUwLZlRa6JEg83ydr35NTH2dVcdDW1HgL3a9vDYpj1txQmicVR6hqBAAFOw24N8ZHamdftdwNlTFsU/rWTcfbKj1oFJi7ao= X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: dd4066e3-cb8e-4d66-551e-08db6ea82111 X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Jun 2023 20:27:39.3887 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: aTg7CobHVqb2yckO/MOrMXK2y3F7tSt7GRts4qJUvswd6uxAKuY2bPBBkjeJwINzyYHKrFaLqv2iVGAGznIsGg//stkJMqp0cS6szgsJa4E= X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR03MB5813 On 16/06/2023 6:48 pm, Shawn Anastasio wrote: > diff --git a/xen/arch/ppc/ppc64/head.S b/xen/arch/ppc/ppc64/head.S > new file mode 100644 > index 0000000000..0b289c713a > --- /dev/null > +++ b/xen/arch/ppc/ppc64/head.S > @@ -0,0 +1,27 @@ > +/* SPDX-License-Identifier: GPL-2.0-or-later */ > + > +.section .text.header, "ax", %progbits > + > +ENTRY(start) > + /* > + * Depending on how we were booted, the CPU could be running in either > + * Little Endian or Big Endian mode. The following trampoline from Linux > + * cleverly uses an instruction that encodes to a NOP if the CPU's > + * endianness matches the assumption of the assembler (LE, in our case) > + * or a branch to code that performs the endian switch in the other case. > + */ Sorry, I also meant to ask.  How prevalent is Big Endian in practice in the Power world? It's another area (like 4k pages) where I expect there to be plenty of fun to be had with the codebase. ~Andrew From xen-devel-bounces@lists.xenproject.org Fri Jun 16 20:30:40 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 16 Jun 2023 20:30:40 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550425.859503 (Exim 4.92) (envelope-from ) id 1qAG5X-00024V-QJ; Fri, 16 Jun 2023 20:30:31 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550425.859503; Fri, 16 Jun 2023 20:30:31 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAG5X-00024O-NS; Fri, 16 Jun 2023 20:30:31 +0000 Received: by outflank-mailman (input) for mailman id 550425; Fri, 16 Jun 2023 20:30:31 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAG5X-00024I-3C for xen-devel@lists.xenproject.org; Fri, 16 Jun 2023 20:30:31 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAG5W-00076a-AY; Fri, 16 Jun 2023 20:30:30 +0000 Received: from 54-240-197-239.amazon.com ([54.240.197.239] helo=[192.168.4.107]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qAG5W-0005dI-3e; Fri, 16 Jun 2023 20:30:30 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=I45QOau/oIEzrkz2+wEE6KNVRDwA41PPDd80laVbQgE=; b=Gki7GMDXvhtyi1qPEKQLWlx4Lr DVS+KYp8KBXXWnQ60ZA0d6h+OX7rn8pdZIPrbjjr7zU1bn3w3ZacTzztl2AV4CMPTt5S/+5kZEh6H h9njr5BnAPuAru39/XCmQ5O7deSNbktCzUaG6iusIxeZsOJ1PDYliIP6Tsqfj146J5sc=; Message-ID: <4f00f865-ab41-e1ed-31cd-867b4f5b1623@xen.org> Date: Fri, 16 Jun 2023 21:30:27 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [XEN v8 1/5] xen/arm: p2m: Use the pa_range_info table to support ARM_32 and ARM_64 Content-Language: en-US To: Michal Orzel , Ayan Kumar Halder , xen-devel@lists.xenproject.org Cc: sstabellini@kernel.org, stefano.stabellini@amd.com, Volodymyr_Babchuk@epam.com, bertrand.marquis@arm.com, andrew.cooper3@citrix.com, george.dunlap@citrix.com, jbeulich@suse.com, wl@xen.org, rahul.singh@arm.com References: <20230602120754.23817-1-ayan.kumar.halder@amd.com> <20230602120754.23817-2-ayan.kumar.halder@amd.com> From: Julien Grall In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi, On 15/06/2023 09:05, Michal Orzel wrote: >> /* >> * Restrict "p2m_ipa_bits" if needed. As P2M table is always configured >> * with IPA bits == PA bits, compare against "pabits". >> @@ -2291,6 +2299,7 @@ void __init setup_virt_paging(void) >> */ >> if ( system_cpuinfo.mm64.vmid_bits == MM64_VMID_16_BITS_SUPPORT ) >> max_vmid = MAX_VMID_16_BIT; >> +#endif >> >> /* Choose suitable "pa_range" according to the resulted "p2m_ipa_bits". */ >> for ( i = 0; i < ARRAY_SIZE(pa_range_info); i++ ) >> @@ -2304,26 +2313,41 @@ void __init setup_virt_paging(void) >> >> /* pa_range is 4 bits but we don't support all modes */ > this comment makes sense really only on arm64 as it refers to PARange field of ID_AA64MMFR0_EL1. > >> if ( pa_range >= ARRAY_SIZE(pa_range_info) || !pa_range_info[pa_range].pabits ) >> - panic("Unknown encoding of ID_AA64MMFR0_EL1.PARange %x\n", pa_range); >> + { >> + /* >> + * In case of ARM_64, we do not support this encoding of >> + * ID_AA64MMFR0_EL1.PARange >> + */ >> + panic("Unsupported value for p2m_ipa_bits = 0x%x\n", p2m_ipa_bits); > NIT: Putting variable names in messages visible by users is not a great idea IMO. > "Unsupported IPA size" would read better. Furthermore, I do not think printing IPA size in hex > is beneficial. I would use "%u bits" (i.e. 32 bits reads better than 0x20 bits). I went with the following: - /* pa_range is 4 bits but we don't support all modes */ + /* Check if we found the associated entry in the array */ if ( pa_range >= ARRAY_SIZE(pa_range_info) || !pa_range_info[pa_range].pabits ) - { - /* - * In case of ARM_64, we do not support this encoding of - * ID_AA64MMFR0_EL1.PARange - */ - panic("Unsupported value for p2m_ipa_bits = 0x%x\n", p2m_ipa_bits); - } + panic("%-bit P2M is not supported\n", p2m_ipa_bits); This should be generic enough. -- Julien Grall From xen-devel-bounces@lists.xenproject.org Fri Jun 16 20:37:38 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 16 Jun 2023 20:37:38 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550432.859513 (Exim 4.92) (envelope-from ) id 1qAGCA-0002kb-L6; Fri, 16 Jun 2023 20:37:22 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550432.859513; Fri, 16 Jun 2023 20:37:22 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAGCA-0002kU-IB; Fri, 16 Jun 2023 20:37:22 +0000 Received: by outflank-mailman (input) for mailman id 550432; Fri, 16 Jun 2023 20:37:21 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAGC9-0002kO-E7 for xen-devel@lists.xenproject.org; Fri, 16 Jun 2023 20:37:21 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAGC8-0007Dc-Lt; Fri, 16 Jun 2023 20:37:20 +0000 Received: from 54-240-197-239.amazon.com ([54.240.197.239] helo=[192.168.4.107]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qAGC8-00060Q-Ec; Fri, 16 Jun 2023 20:37:20 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=7C8s/62o3UvdoTvj0hJPC2kHTzXj0zeFFIw30Py3mFk=; b=tsdHnLdXcQjGqcqe92pucSs1+R EWF5ELYaN98558uqgW/Z4KCApGMm8caHkQp9FJ+7KQAQEpabI3fpFOSZebCue4+ShOFH+OiVwMwsA QWfGEkXqDl4a5Kcx4gk8nhpS6fY227/ed2PRoTpak2kbJayhGX7M2fVWEt9W/fyd31mk=; Message-ID: <33bb42a3-6822-2430-5ec4-3a885c9be2eb@xen.org> Date: Fri, 16 Jun 2023 21:37:17 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [XEN v8 1/5] xen/arm: p2m: Use the pa_range_info table to support ARM_32 and ARM_64 Content-Language: en-US To: Michal Orzel , Ayan Kumar Halder , xen-devel@lists.xenproject.org Cc: sstabellini@kernel.org, stefano.stabellini@amd.com, Volodymyr_Babchuk@epam.com, bertrand.marquis@arm.com, andrew.cooper3@citrix.com, george.dunlap@citrix.com, jbeulich@suse.com, wl@xen.org, rahul.singh@arm.com References: <20230602120754.23817-1-ayan.kumar.halder@amd.com> <20230602120754.23817-2-ayan.kumar.halder@amd.com> <9590af0b-e40e-6996-0dc1-00e065d62187@amd.com> From: Julien Grall In-Reply-To: <9590af0b-e40e-6996-0dc1-00e065d62187@amd.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit On 16/06/2023 08:59, Michal Orzel wrote: > Hi Julien, > > On 15/06/2023 22:32, Julien Grall wrote: >> >> >> Hi Michal, >> >> I notice you posted some comments but didn't add a Acked-by/Reviewed-by. >> Can you indicate if you are happy with the patch so long your comments >> are addressed? >> >> If so, are you OK if I deal with them on commit? > I thought I added my tag but clearly not. With the remarks addressed on commit: > Reviewed-by: Michal Orzel Thanks. The series is now committed. Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Fri Jun 16 20:39:00 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 16 Jun 2023 20:39:00 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550437.859523 (Exim 4.92) (envelope-from ) id 1qAGDW-0003IB-Vr; Fri, 16 Jun 2023 20:38:46 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550437.859523; Fri, 16 Jun 2023 20:38:46 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAGDW-0003I4-Sw; Fri, 16 Jun 2023 20:38:46 +0000 Received: by outflank-mailman (input) for mailman id 550437; Fri, 16 Jun 2023 20:38:45 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAGDU-0003Hs-NT for xen-devel@lists.xenproject.org; Fri, 16 Jun 2023 20:38:45 +0000 Received: from casper.infradead.org (casper.infradead.org [2001:8b0:10b:1236::1]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id c8246219-0c85-11ee-b232-6b7b168915f2; Fri, 16 Jun 2023 22:38:43 +0200 (CEST) Received: from willy by casper.infradead.org with local (Exim 4.94.2 #2 (Red Hat Linux)) id 1qAGD7-009Lj7-EI; Fri, 16 Jun 2023 20:38:21 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: c8246219-0c85-11ee-b232-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=casper.20170209; h=In-Reply-To:Content-Type:MIME-Version: References:Message-ID:Subject:Cc:To:From:Date:Sender:Reply-To: Content-Transfer-Encoding:Content-ID:Content-Description; bh=fw74FAZhkocnJnJyLR/WQNNOz26kiObyhL++hGG0nWw=; b=QBNdm8qv6j/A/iWrMKfpB6M7G8 dX02GHdjAg9rPGckqaKAq0nuLHgnEOZOUcT5iS1KFKrWFBJlTrkF2I4g5N2YgCfsexrQECwyFoHPp z6yd+/vIl/PequagU7pGV8UNE2yhdOrdkDT+t3SJSVONZj6Q1cQWhoxiK+7FUVh/Fb17OdOH8kjtt OWIuj2P4ze5K/i70TfCVLOSJSXO+Ry9WEoIoy6BlMNh0EJ1wlu/c8zXDIuEPPIicVlz2AV+6m8LDv lA4vOEDBJYuPKGoF8lu2OSuuFhx10iSF/LiB0UcYpqrALuMFJM02PbH03w+/bd9OLb/nrxdqasmpe J/m6D//w==; Date: Fri, 16 Jun 2023 21:38:21 +0100 From: Matthew Wilcox To: Hugh Dickins Cc: "Vishal Moola (Oracle)" , Andrew Morton , Gerald Schaefer , Vasily Gorbik , Jason Gunthorpe , Heiko Carstens , Christian Borntraeger , Claudio Imbrenda , Alexander Gordeev , linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org Subject: Re: [PATCH v4 04/34] pgtable: Create struct ptdesc Message-ID: References: <20230612210423.18611-1-vishal.moola@gmail.com> <20230612210423.18611-5-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: On Thu, Jun 15, 2023 at 12:57:19AM -0700, Hugh Dickins wrote: > Probably just trivial collisions in most architectures, which either > of us can easily adjust to the other; powerpc likely to be more awkward, > but fairly easily resolved; s390 quite a problem. > > I've so far been unable to post a v2 of my series (and powerpc and s390 > were stupidly wrong in the v1), because a good s390 patch is not yet > decided - Gerald Schaefer and I are currently working on that, on the > s390 list (I took off most Ccs until we are settled and I can post v2). > > As you have no doubt found yourself, s390 has sophisticated handling of > free half-pages already, and I need to add rcu_head usage in there too: > it's tricky to squeeze it all in, and ptdesc does not appear to help us > in any way (though mostly it's just changing some field names, okay). > > If ptdesc were actually allowing a flexible structure which architectures > could add into, that would (in some future) be nice; but of course at > present it's still fitting it all into one struct page, and mandating > new restrictions which just make an architecture's job harder. The intent is to get ptdescs to be dynamically allocated at some point in the ~2-3 years out future when we have finished the folio project ... which is not a terribly helpful thing for me to say. I have three suggestions, probably all dreadful: 1. s390 could change its behaviour to always allocate page tables in pairs. That is, it fills in two pmd_t entries any time it takes a fault in either of them. 2. We could allocate two or four pages at a time for s390 to allocate 2kB pages from. That gives us a lot more space to store RCU heads. 3. We could use s390 as a guinea-pig for dynamic ptdesc allocation. Every time we allocate a struct page, we have a slab cache for an s390-special definition of struct ptdesc, we allocate a ptdesc and store a pointer to that in compound_head. We could sweeten #3 by doing that not just for s390 but also for every configuration which has ALLOC_SPLIT_PTLOCKS today. That would get rid of the ambiguity between "is ptl a pointer or a lock". > But I've no desire to undo powerpc's use of pt_frag_refcount: > just warning that we may want to undo any use of it in s390. I would dearly love ppc & s390 to use the _same_ scheme to solve the same problem. From xen-devel-bounces@lists.xenproject.org Fri Jun 16 20:39:49 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 16 Jun 2023 20:39:49 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550443.859534 (Exim 4.92) (envelope-from ) id 1qAGEX-0003oJ-9Y; Fri, 16 Jun 2023 20:39:49 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550443.859534; Fri, 16 Jun 2023 20:39:49 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAGEX-0003oC-5v; Fri, 16 Jun 2023 20:39:49 +0000 Received: by outflank-mailman (input) for mailman id 550443; Fri, 16 Jun 2023 20:39:48 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAGEW-0003o6-Bp for xen-devel@lists.xenproject.org; Fri, 16 Jun 2023 20:39:48 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAGEW-0007Fs-3t; Fri, 16 Jun 2023 20:39:48 +0000 Received: from 54-240-197-239.amazon.com ([54.240.197.239] helo=[192.168.4.107]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qAGEV-00065F-Ub; Fri, 16 Jun 2023 20:39:48 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=VL+cRYrEmHp8kTUaslrsVojaQapY5xH6BuFlfiSxutw=; b=nQa3lgJq0IF/WrSNKiCSeSszHm U0DdXIQCx05omRXlN51ke3QvZkx4QDpy0hLS5EE8xy9YWrkk1OIso1wEmKRSBn27SrTamRRObvInJ uq61dJoJaRvP9wMpZwtAvRJjjbBAW/Sh94Rw+UCe2EmP3gBD++W7non+vpn+kbg0pDEU=; Message-ID: Date: Fri, 16 Jun 2023 21:39:45 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v4 2/4] xen: Add files needed for minimal ppc64le build Content-Language: en-US To: Andrew Cooper , Shawn Anastasio , xen-devel@lists.xenproject.org Cc: tpearson@raptorengineering.com, George Dunlap , Jan Beulich , Stefano Stabellini , Wei Liu References: <97a72e26edafb1d7b3a583755f015d04066c1e53.1686936278.git.sanastasio@raptorengineering.com> <8383dd1a-064c-17c9-bb7f-4509518b9b42@citrix.com> From: Julien Grall In-Reply-To: <8383dd1a-064c-17c9-bb7f-4509518b9b42@citrix.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi, On 16/06/2023 21:24, Andrew Cooper wrote: >> --- /dev/null >> +++ b/xen/arch/ppc/ppc64/head.S >> @@ -0,0 +1,27 @@ >> +/* SPDX-License-Identifier: GPL-2.0-or-later */ >> + >> +.section .text.header, "ax", %progbits >> + >> +ENTRY(start) >> + /* >> + * Depending on how we were booted, the CPU could be running in either >> + * Little Endian or Big Endian mode. The following trampoline from Linux >> + * cleverly uses an instruction that encodes to a NOP if the CPU's >> + * endianness matches the assumption of the assembler (LE, in our case) >> + * or a branch to code that performs the endian switch in the other case. >> + */ >> + tdi 0, 0, 0x48 /* Reverse endian of b . + 8 */ >> + b . + 44 /* Skip trampoline if endian is good */ >> + .long 0xa600607d /* mfmsr r11 */ >> + .long 0x01006b69 /* xori r11,r11,1 */ >> + .long 0x00004039 /* li r10,0 */ >> + .long 0x6401417d /* mtmsrd r10,1 */ >> + .long 0x05009f42 /* bcl 20,31,$+4 */ >> + .long 0xa602487d /* mflr r10 */ >> + .long 0x14004a39 /* addi r10,r10,20 */ >> + .long 0xa6035a7d /* mtsrr0 r10 */ >> + .long 0xa6037b7d /* mtsrr1 r11 */ >> + .long 0x2400004c /* rfid */ >> + >> + /* Now that the endianness is confirmed, continue */ >> +1: b 1b > > .size start, . - start > .type start, %function Shouldn't we introduce ENDPROC()/END() to avoid open-coding these two lines everywhere? Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Fri Jun 16 20:42:58 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 16 Jun 2023 20:42:58 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550448.859544 (Exim 4.92) (envelope-from ) id 1qAGHU-0005JO-PE; Fri, 16 Jun 2023 20:42:52 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550448.859544; Fri, 16 Jun 2023 20:42:52 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAGHU-0005JH-LS; Fri, 16 Jun 2023 20:42:52 +0000 Received: by outflank-mailman (input) for mailman id 550448; Fri, 16 Jun 2023 20:42:51 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAGHT-0005J7-Pg; Fri, 16 Jun 2023 20:42:51 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAGHT-0007Tc-NP; Fri, 16 Jun 2023 20:42:51 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAGHS-0000HJ-Cf; Fri, 16 Jun 2023 20:42:50 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qAGHP-0007CM-0s; Fri, 16 Jun 2023 20:42:50 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=MRAtYK28hTFcLG/sl6IdTsCOQRFSu7Nlq8ykZCWj3Wg=; b=w5jb/hPfHLcanpl4mBM6zaM3S3 y8LYW9KLR1YEB71EHCZ8jn0i65OTr1TTMppbK30gdWNEmbKU92zbIKIm23GXlGWCJ1CDzBQF1jkEj Zl+qQKRwdPvEvYmQJ7OxxsbC5SduuED6mnQjShNQNlomh9rhSRTo064vS8dqmfKHRygE=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable-smoke test] 181467: tolerable all pass - PUSHED X-Osstest-Failures: xen-unstable-smoke:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking xen-unstable-smoke:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking xen-unstable-smoke:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking xen-unstable-smoke:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking xen-unstable-smoke:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: xen=e533438e3d28158602dce051b032811bdd26377d X-Osstest-Versions-That: xen=e0586a4ff514590eec50185e2440b97f9a31cb7f From: osstest service owner Date: Fri, 16 Jun 2023 20:42:47 +0000 flight 181467 xen-unstable-smoke real [real] http://logs.test-lab.xenproject.org/osstest/logs/181467/ Failures :-/ but no regressions. Tests which did not succeed, but are not blocking: test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-armhf-armhf-xl 15 migrate-support-check fail never pass test-armhf-armhf-xl 16 saverestore-support-check fail never pass version targeted for testing: xen e533438e3d28158602dce051b032811bdd26377d baseline version: xen e0586a4ff514590eec50185e2440b97f9a31cb7f Last test of basis 181466 2023-06-16 14:01:56 Z 0 days Testing same since 181467 2023-06-16 18:00:24 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Andrew Cooper Shawn Anastasio Shawn Anastasio jobs: build-arm64-xsm pass build-amd64 pass build-armhf pass build-amd64-libvirt pass test-armhf-armhf-xl pass test-arm64-arm64-xl-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-libvirt pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Pushing revision : To xenbits.xen.org:/home/xen/git/xen.git e0586a4ff5..e533438e3d e533438e3d28158602dce051b032811bdd26377d -> smoke From xen-devel-bounces@lists.xenproject.org Fri Jun 16 20:43:48 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 16 Jun 2023 20:43:48 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550455.859553 (Exim 4.92) (envelope-from ) id 1qAGIO-0005pP-2K; Fri, 16 Jun 2023 20:43:48 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550455.859553; Fri, 16 Jun 2023 20:43:48 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAGIN-0005pI-W7; Fri, 16 Jun 2023 20:43:47 +0000 Received: by outflank-mailman (input) for mailman id 550455; Fri, 16 Jun 2023 20:43:46 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAGIM-0005lu-LP for xen-devel@lists.xenproject.org; Fri, 16 Jun 2023 20:43:46 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 7b8015bf-0c86-11ee-8611-37d641c3527e; Fri, 16 Jun 2023 22:43:44 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id B846961CCD; Fri, 16 Jun 2023 20:43:42 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id DFF10C433C0; Fri, 16 Jun 2023 20:43:40 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 7b8015bf-0c86-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1686948222; bh=9kl/pDIYlDK/Y03Mr5osv3l1PIO4z3EypG7zDKdMdsM=; h=Date:From:To:cc:Subject:In-Reply-To:References:From; b=n1BNPR+zeqwkcdSedGpX3PmQab1s7YRq5I5azHm9BQhQm3s6rSZ15GNSskQgDPTef TUDHjrbTwwHAWwBm597WNbm4ZOLCuTYuJNbvQXldRPdnMTYthmqQ+Fze8PSlAAm/c2 eWvSZoly7WB5N7fy+A893iMiUcdS0UilEj/GtOJ4awKGImfuk7oOZfasAOwozRJKZs jBBAPsa/0p4V5mlhVBalSm4tGuVL7ekvf0fklZThG7Xc8OI9sWOqthRpnoxa4hM5cP Ld0A9WUeZ7sJFRUw6D5b2OaRBAtXebLZucKX3d1DQo9GW7wrKOfKLFeHkNsHkKX6Hl FMtq+v1tqbVxA== Date: Fri, 16 Jun 2023 13:43:39 -0700 (PDT) From: Stefano Stabellini X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop To: Roberto Bagnara cc: Stefano Stabellini , xen-devel@lists.xenproject.org, consulting@bugseng.com, Andrew Cooper , George Dunlap , Jan Beulich , Julien Grall , Wei Liu Subject: Re: [XEN PATCH] docs/misra: document the C dialect and translation toolchain assumptions. In-Reply-To: <3499c107-ea0d-3a74-4278-86879a9d80e7@bugseng.com> Message-ID: References: <3499c107-ea0d-3a74-4278-86879a9d80e7@bugseng.com> User-Agent: Alpine 2.22 (DEB 394 2020-01-19) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII On Fri, 16 Jun 2023, Roberto Bagnara wrote: > > > + * - Implicit conversion from a pointer to an incompatible pointer > > > + - ARM64, X86_64 > > > + - Non-documented GCC extension. > > > > Is this related to -Wincompatible-pointer-types? > > In my opinion, this does not specify what the result of the > conversion is. Fair enough. However, if -Wincompatible-pointer-types and "Implicit conversion from a pointer to an incompatible pointer" are related, it would add -Wincompatible-pointer-types as extra info about it. See also below. > > > + * - Pointer to a function is converted to a pointer to an object or a > > > pointer to an object is converted to a pointer to a function > > > + - X86_64 > > > + - Non-documented GCC extension. > > > > Is this J.5.7 of n1570? > > https://www.iso-9899.info/n1570.html > > This says that function pointer casts are a common extension. > What we need here is documentation for GCC that assures us > that the extension is implemented and what its semantics is. > > > Or maybe we should link https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83584 > > My opinion is that this might not be accepted by an assessor: > if I was an assessor, I would not accept it. I understand your point and I think it is valid. My observation was that it is better to provide as much information for these undocumented extensions as we can. Not necessarily to help with an assessors, but for a new engineer working on this project, reading this document and understanding what can be done. https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83584 might not be an official documentation of the extension but it is better than no documentation at all. Even better might be a code example. I am not saying we should document ourselves what GCC failed to document. I am only saying we should add enough description to understand what we are talking about. For instance, I read "Pointer to a function is converted to a pointer to an object or a pointer to an object is converted to a pointer to a function" and I have an idea about what this is but I am not really sure. I googled the sentence and found information on Stackoverflow. I think it is better to link https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83584 or a couple of sentences from it, although it might not be official. > > > + * - Ill-formed source detected by the parser > > > > As we are documenting compiler extensions that we are using, I am a bit > > confused by the name of this category of compiler extensions, and the > > reason why they are bundled together. After all, they are all separate > > compiler extensions? Should each of them have their own row? > > Agreed. > > > > + - ARM64, X86_64 > > > + - token pasting of ',' and __VA_ARGS__ is a GNU extension: > > > + see Section "6.21 Macros with a Variable Number of Arguments" > > > of GCC_MANUAL. > > > + must specify at least one argument for '...' parameter of variadic > > > macro: > > > + see Section "6.21 Macros with a Variable Number of Arguments" > > > of GCC_MANUAL. > > > + void function should not return void expression: > > > > I understand that GCC does a poor job at documenting several of these > > extensions. In fact a few of them are not even documented at all. > > However, if they are extensions, they should be described for what they > > do, not for the rule they violate. What do you think? > > The point is that we don't know what they do. We might make observations, > and our observations might substantiate what we believe they do. > But this would not allow us to generalize them. > > > For example, in this case maybe we should say "void function can return > > a void expression" ? > > We can certainly say that, but this might not convince an assessor. > One possibility would be to submit patches to the GCC manual and see > whether they are accepted. I think we have two different target audiences for this document. One target is an assessors, and I understand that extra unofficial information might not help there. However another target is the community. This document should help the Xen community write better code, not just the assessors raise red flags. Right? It should help us have better compiler compatibility, and making sure that we are clear about the C dialect we use. Actually, I think this document could be of great help. Do you agree? >From that point of view "void function should not return void expression" is not understandable. At least I don't understand it. A different approach would be to say: - this is a MISRA C violation or compiler warning/error - it is not C99 compliant - it is not documented behavior by GCC Not try to describe what the extension is at all, and instead focus on what the MISRA C violation or compiler warning is. I think it is OK to go down that route, but in that case we need to reorganize the document so that: - all documented extensions are referred to as extensions - all undocumented extensions are referred to by the warning they trigger I think that we would be OK but honestly I prefer the current approach and we just need to add a few extra words to better explain what the undocumented extensions are. Not to replace the GCC manual but simply because otherwise we are not understanding each other (at least I am not understanding.) > > > + see the documentation for -Wreturn-type in Section "3.8 Options > > > to Request or Suppress Warnings" of GCC_MANUAL. > > > + use of GNU statement expression extension from macro expansion: > > > + see Section "6.1 Statements and Declarations in Expressions" of > > > GCC_MANUAL. > > > + invalid application of sizeof to a void type: > > > + see Section "6.24 Arithmetic on void- and Function-Pointers" of > > > GCC_MANUAL. > > > + redeclaration of already-defined enum is a GNU extension: > > > + see Section "6.49 Incomplete enum Types" of GCC_MANUAL. > > > + static function is used in an inline function with external > > > linkage: > > > + non-documented GCC extension. > > > > I am not sure if I follow about this one. Did you mean "static is used > > in an inline function with external linkage" ? > > An inline function with external linkage can be inlined everywhere. > If that calls a static functions, which is not available everywhere, > the behavior is not defined. Got it. Can we add this sentence you wrote to the doc? > > > + struct may not be nested in a struct due to flexible array member: > > > + see Section "6.18 Arrays of Length Zero" of GCC_MANUAL. > > > + struct may not be used as an array element due to flexible array > > > member: > > > + see Section "6.18 Arrays of Length Zero" of GCC_MANUAL. > > > + ISO C restricts enumerator values to the range of int: > > > + non-documented GCC extension. > > > > Should we call it instead "enumerator values can be larger than int" ? > > Yes, I have rephrased that entry. > > > > + * - Unspecified escape sequence is encountered in a character constant > > > or a string literal token > > > + - X86_64 > > > + - \\m: > > > + non-documented GCC extension. > > > > Are you saying that we are using \m and \m is not allowed by the C > > standard? > > The C standard does not specify that escape sequence, so what is > done with it, in particular by the preprocessor, is not specified. > > > > + * - Non-standard type > > > > Should we call it "128-bit Integers" ? > > I have rephrased this as suggested by Jan. > > Thanks for your review. I will submit a revised patch > on Monday. From xen-devel-bounces@lists.xenproject.org Fri Jun 16 20:50:28 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 16 Jun 2023 20:50:28 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550460.859563 (Exim 4.92) (envelope-from ) id 1qAGOf-0007LO-OX; Fri, 16 Jun 2023 20:50:17 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550460.859563; Fri, 16 Jun 2023 20:50:17 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAGOf-0007LH-Lu; Fri, 16 Jun 2023 20:50:17 +0000 Received: by outflank-mailman (input) for mailman id 550460; Fri, 16 Jun 2023 20:50:16 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAGOe-0007L8-RY for xen-devel@lists.xenproject.org; Fri, 16 Jun 2023 20:50:16 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAGOe-0007fE-07; Fri, 16 Jun 2023 20:50:16 +0000 Received: from 54-240-197-239.amazon.com ([54.240.197.239] helo=[192.168.4.107]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qAGOd-0006QC-Pf; Fri, 16 Jun 2023 20:50:15 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=3M0cGI4K5HwV+7NzHcCMQqj0CIU5AsR63dQkssyFlM8=; b=NYHFZCFTlTJJgkBO00mvf2HIhf ROVrLWWSTfX6InsQz7jwP6gz9bttWFTe2tt+nDx194N7GCJWHfyzGAlSwOpzIysfIi6WZpeWVIqJa AVvqAHFCSekK+lyiuAB2Hk6+iRxQA9RFn+Doi7Xl2f85OatGdb1GcnlKHnJtpHCjLUro=; Message-ID: <2bb60bc6-b405-33ec-53f4-a45c7829b145@xen.org> Date: Fri, 16 Jun 2023 21:50:13 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v3 8/8] SUPPORT.md: write down restriction of 32-bit tool stacks Content-Language: en-US To: Jan Beulich , "xen-devel@lists.xenproject.org" Cc: Anthony Perard , Andrew Cooper , George Dunlap , Stefano Stabellini , Wei Liu References: <6d6144f6-489e-d9b0-b590-f5d65c385116@suse.com> From: Julien Grall In-Reply-To: <6d6144f6-489e-d9b0-b590-f5d65c385116@suse.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi Jan, Sorry for the late reply. On 26/04/2022 11:27, Jan Beulich wrote: > Let's try to avoid giving the impression that 32-bit tool stacks are as > capable as 64-bit ones. > > Signed-off-by: Jan Beulich Acked-by: Julien Grall Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Fri Jun 16 20:55:17 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 16 Jun 2023 20:55:17 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550468.859580 (Exim 4.92) (envelope-from ) id 1qAGTK-00083z-Qr; Fri, 16 Jun 2023 20:55:06 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550468.859580; Fri, 16 Jun 2023 20:55:06 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAGTK-00082q-LU; Fri, 16 Jun 2023 20:55:06 +0000 Received: by outflank-mailman (input) for mailman id 550468; Fri, 16 Jun 2023 20:55:05 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAGTI-0007zF-Tn; Fri, 16 Jun 2023 20:55:04 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAGTI-0007kl-A6; Fri, 16 Jun 2023 20:55:04 +0000 Received: from 54-240-197-239.amazon.com ([54.240.197.239] helo=[192.168.4.107]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qAGTI-0006dl-4l; Fri, 16 Jun 2023 20:55:04 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=5L0WNm+pYd5n/HG5ntEgpIphfBSos7jxxesVwyaIfrw=; b=7BE4D+eC20UQ0UEbsuEjkr87VX QcJoxOy5jGTUkzSMGzQy2vMkWnzM2E+q1mS4rO7p1aCGxnte0bP1N3nRkvIMiQpR0npjqf3vkg2RG pfeXLYL+au2h5tTvcG1fNmh5G4drvoNGULNKqMg/gw77/dt9h5sbVKmj6Sq9m9OiOjOM=; Message-ID: Date: Fri, 16 Jun 2023 21:55:02 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: Asking for help to debug xen efi on Kunpeng machine Content-Language: en-US To: Jiatong Shen Cc: Stefano Stabellini , xen-users@lists.xenproject.org, xen-devel@lists.xenproject.org, bertrand.marquis@arm.com References: <78899eac-9de8-3626-8f40-98f993984f95@xen.org> From: Julien Grall In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi, On 15/06/2023 22:52, Jiatong Shen wrote: > Thank you for your answer! Adding console=hvc0 indeed provides kernel > output serial console. Looking at the log message, > I found dom0 kernel failed to initialize a lot of device drivers (network > cards, raid cards, etc). > > Is it related to iommu? I am afraid I can't tell without seen some logs. >I remember iommu is not enabled during the xen > kernel booting stage. At the moment, the IOMMU is not hidden from dom0. So Linux may try to use it. However, IIRC, it is only becoming a problem when booting a guest. Best regards, --- Julien Grall From xen-devel-bounces@lists.xenproject.org Fri Jun 16 20:56:46 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 16 Jun 2023 20:56:46 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550490.859600 (Exim 4.92) (envelope-from ) id 1qAGUj-0000wO-48; Fri, 16 Jun 2023 20:56:33 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550490.859600; Fri, 16 Jun 2023 20:56:33 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAGUj-0000wH-1N; Fri, 16 Jun 2023 20:56:33 +0000 Received: by outflank-mailman (input) for mailman id 550490; Fri, 16 Jun 2023 20:56:31 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAGUh-0000O6-ID for xen-devel@lists.xenproject.org; Fri, 16 Jun 2023 20:56:31 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [2604:1380:4641:c500::1]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 439bf9c8-0c88-11ee-8611-37d641c3527e; Fri, 16 Jun 2023 22:56:29 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 0ACF561E6C; Fri, 16 Jun 2023 20:56:28 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 468D8C433CA; Fri, 16 Jun 2023 20:56:26 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 439bf9c8-0c88-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1686948987; bh=pNn82ZJ4l459ty5FYwSOj3mE/lmX9lliJjdv+6TfJjM=; h=Date:From:To:cc:Subject:In-Reply-To:References:From; b=tGgf+hVAEKEozBQ1Y/MJHU3tc00F9ohhUoOpEMJg84m6XKgep5M6hds3OKQIeoI+0 fATCKxJyeqbnPF0ZZEJHIFgEt5hrldh8+w8TtUfUcKGR37EZ2VPhFug8VnTXWjEWVZ aApjRbWaAFl5QDwMM8vjOSjKT2Jd4Nss/lr66LM/trHQLefgGgF43IvAbfeFAIfLam neuzg57R2EwdVBCJvGmNmie0k3Dcybo/5AtCmPAJSggC5udjG4mhS1gCTaOPsb7Wr6 EynYtTlcwotvwX06sOfDXqCi+HQhls6b673bnDlYQpGFPtUAavWtXtEbPPqGF8Ja0i XyTtcNTmKEaYA== Date: Fri, 16 Jun 2023 13:56:24 -0700 (PDT) From: Stefano Stabellini X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop To: Nicola Vetrini cc: Jan Beulich , Stefano Stabellini , Andrew Cooper , George Dunlap , Julien Grall , Wei Liu , Xen-devel Subject: Re: Refactoring of a possibly unsafe pattern for variable initialization via function calls In-Reply-To: <4522eead-bcc3-a735-3293-54ec457e83eb@bugseng.com> Message-ID: References: <3fc32674-af28-2a04-4eb8-059364a6a6fb@suse.com> <4522eead-bcc3-a735-3293-54ec457e83eb@bugseng.com> User-Agent: Alpine 2.22 (DEB 394 2020-01-19) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII On Fri, 16 Jun 2023, Nicola Vetrini wrote: > On 16/06/23 09:19, Jan Beulich wrote: > > On 15.06.2023 18:39, nicola wrote: > > > while investigating possible patches regarding Mandatory Rule 9.1, I > > > found the following pattern, that is likely to results in a lot possible > > > positives from many (all) static analysis tools for this rule. > > > > > > This is the current status (taken from `xen/common/device_tree.c:135') > > > > > > > > > const struct dt_property *dt_find_property(const struct dt_device_node > > > *np, > > > const char *name, u32 *lenp) > > > { > > > const struct dt_property *pp; > > > > > > if ( !np ) > > > return NULL; > > > > > > for ( pp = np->properties; pp; pp = pp->next ) > > > { > > > if ( dt_prop_cmp(pp->name, name) == 0 ) > > > { > > > if ( lenp ) > > > *lenp = pp->length; > > > break; > > > } > > > } > > > > > > return pp; > > > } > > > > > > > > > > > > > > > It's very hard to detect that the pointee is always written whenever a > > > non-NULL pointer for `lenp' is supplied, and it can safely be read in > > > the callee, so a sound analysis will err on the cautious side. > > > > I'm having trouble seeing why this is hard to recognize: The loop can > > only be exited two ways: pp == NULL or with *lenp written. > > > > For rule 9.1 I'd rather expect the scanning tool (and often the compiler) > > to get into trouble with the NULL return value case, and *lenp not being > > written yet apparently consumed in the caller. Then, however, ... > > > You're right, I made a mistake, thank you for finding it. > I meant to write on `*lenp' in all execution paths. > Please, take a look at this revised version: > > > const struct dt_property *dt_find_property(const struct dt_device_node *np, > const char *name, u32 *lenp) > { > u32 len = 0; > const struct dt_property *pp = NULL; > > if ( np ) > { > for ( pp = np->properties; pp; pp = pp->next ) > { > if ( dt_prop_cmp(pp->name, name) == 0 ) > { > len = pp->length; > break; > } > } > } > > if ( lenp ) > *lenp = len; > return pp; > } Nesting more will make the code less readable and also cause other code quality metrics to deteriorate (cyclomatic complexity). Would the below work? const struct dt_property *dt_find_property(const struct dt_device_node *np, const char *name, u32 *lenp) { u32 len = 0; const struct dt_property *pp = NULL; if ( !np ) return NULL for ( pp = np->properties; pp; pp = pp->next ) { if ( dt_prop_cmp(pp->name, name) == 0 ) { len = pp->length; break; } } if ( lenp ) *lenp = len; return pp; } From xen-devel-bounces@lists.xenproject.org Fri Jun 16 21:00:15 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 16 Jun 2023 21:00:15 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550503.859611 (Exim 4.92) (envelope-from ) id 1qAGYF-0002cm-JX; Fri, 16 Jun 2023 21:00:11 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550503.859611; Fri, 16 Jun 2023 21:00:11 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAGYF-0002cf-G0; Fri, 16 Jun 2023 21:00:11 +0000 Received: by outflank-mailman (input) for mailman id 550503; Fri, 16 Jun 2023 21:00:10 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAGYE-0002cX-M8 for xen-devel@lists.xenproject.org; Fri, 16 Jun 2023 21:00:10 +0000 Received: from raptorengineering.com (mail.raptorengineering.com [23.155.224.40]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id c701471a-0c88-11ee-b232-6b7b168915f2; Fri, 16 Jun 2023 23:00:09 +0200 (CEST) Received: from localhost (localhost [127.0.0.1]) by mail.rptsys.com (Postfix) with ESMTP id C9B568285C05; Fri, 16 Jun 2023 16:00:07 -0500 (CDT) Received: from mail.rptsys.com ([127.0.0.1]) by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032) with ESMTP id 1utSEkyUjJ_I; Fri, 16 Jun 2023 16:00:07 -0500 (CDT) Received: from localhost (localhost [127.0.0.1]) by mail.rptsys.com (Postfix) with ESMTP id 2C80D8285C06; Fri, 16 Jun 2023 16:00:07 -0500 (CDT) Received: from mail.rptsys.com ([127.0.0.1]) by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id pGhnUdfLgj3o; Fri, 16 Jun 2023 16:00:07 -0500 (CDT) Received: from [10.11.0.2] (5.edge.rptsys.com [23.155.224.38]) by mail.rptsys.com (Postfix) with ESMTPSA id 9F3088285C05; Fri, 16 Jun 2023 16:00:06 -0500 (CDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: c701471a-0c88-11ee-b232-6b7b168915f2 DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com 2C80D8285C06 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD; t=1686949207; bh=WFizKFAV1in+JqdRWVC3E2rzpnR0lUPm3su5qyNdtUc=; h=Message-ID:Date:MIME-Version:To:From; b=d7DxUlP6wBciRwkj/9ZJ+lwfpGJAwviPv29Hdf336bLzcbL8Uyj/0sjNNtZanLrWX y+x3P8A/7gG7gMlb4ThrhTnIifbQzydEgTsqO90s9u0jSXseS8yR4JG6QH2rL1uQZO NU4X413CJlxQvwlwG8mukHRTCol/3avX8kyPRSno= X-Virus-Scanned: amavisd-new at rptsys.com Message-ID: <40546404-5b24-297b-4892-59b7ec731375@raptorengineering.com> Date: Fri, 16 Jun 2023 16:00:05 -0500 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux ppc64le; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v4 2/4] xen: Add files needed for minimal ppc64le build Content-Language: en-US To: Andrew Cooper , xen-devel@lists.xenproject.org Cc: tpearson@raptorengineering.com, George Dunlap , Jan Beulich , Julien Grall , Stefano Stabellini , Wei Liu References: <97a72e26edafb1d7b3a583755f015d04066c1e53.1686936278.git.sanastasio@raptorengineering.com> <33c8e11f-c561-3dcf-e08f-0ea19b34f89e@citrix.com> From: Shawn Anastasio In-Reply-To: <33c8e11f-c561-3dcf-e08f-0ea19b34f89e@citrix.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable On 6/16/23 3:27 PM, Andrew Cooper wrote: > Sorry, I also meant to ask.=C2=A0 How prevalent is Big Endian in practi= ce in > the Power world? Modern systems support operating in either endianness, but historically most operating systems targeted Big Endian-only, and some older systems didn't support Little Endian at all. These days Little Endian is more prevalent (at least in the Open Source world), and many Linux distributions only target LE. Despite this though, most firmware on Power systems still operates in Big Endian mode exclusively, so it's the responsibility of the kernel to handle the switch to LE at its entrypoint. The FW being BE also needs to be considered whenever the kernel calls into firmware, since it's the responsibility of the kernel to switch to B= E before making the call, and also to switch itself back to LE after the FW routine returns. Typically it's just handled by sprinkling this trampolin= e (via a macro) at all of the entry/return points. > It's another area (like 4k pages) where I expect there to be plenty of > fun to be had with the codebase. Hopefully the choice to run in Little Endian mode will reduce the number of pain points encountered. Also it's worth mentioning that both 4k and 64k pages are supported, though 64k is probably the more common choice. > ~Andrew Thanks, Shawn From xen-devel-bounces@lists.xenproject.org Fri Jun 16 21:05:23 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 16 Jun 2023 21:05:23 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550510.859620 (Exim 4.92) (envelope-from ) id 1qAGd9-0003G9-54; Fri, 16 Jun 2023 21:05:15 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550510.859620; Fri, 16 Jun 2023 21:05:15 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAGd9-0003G2-2P; Fri, 16 Jun 2023 21:05:15 +0000 Received: by outflank-mailman (input) for mailman id 550510; Fri, 16 Jun 2023 21:05:13 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAGd7-0003Fs-J0; Fri, 16 Jun 2023 21:05:13 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAGd7-0007xc-GQ; Fri, 16 Jun 2023 21:05:13 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAGd6-0000qb-TF; Fri, 16 Jun 2023 21:05:13 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qAGd6-00066y-Sk; Fri, 16 Jun 2023 21:05:12 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=Nn+jdhmN9OHSeJYn66uEfvaXPCzpAR8PPEqeoCLV4ko=; b=6c6MuTucGW1VRC31AcnfzBAvye v+AK1e1glSAS7pwE7ftgMN0pPbNXUhv+NBxJVOv+HrAVYlet5/KTj9wGQJ8HHZOBDFdv3tSkoRaRE paFt/SndVwPdeNR4Y1tsz1VqChCYtYq41mx2DWlgOlMfQ0LPxwEh6kNP/2ria/vvyFyU=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable test] 181460: trouble: broken/fail/pass X-Osstest-Failures: xen-unstable:test-armhf-armhf-xl-vhd::broken:regression xen-unstable:test-armhf-armhf-xl-vhd:host-install(5):broken:nonblocking xen-unstable:test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm:xen-install:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking X-Osstest-Versions-This: xen=1512a68721620338daf477bf717d23befbb4faf5 X-Osstest-Versions-That: xen=87c621d0ef75e5f95987d66811ed1fd7129208d1 From: osstest service owner Date: Fri, 16 Jun 2023 21:05:12 +0000 flight 181460 xen-unstable real [real] http://logs.test-lab.xenproject.org/osstest/logs/181460/ Failures and problems with tests :-( Tests which did not succeed and are blocking, including tests which could not be run: test-armhf-armhf-xl-vhd broken Tests which did not succeed, but are not blocking: test-armhf-armhf-xl-vhd 5 host-install(5) broken like 181440 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm 7 xen-install fail like 181440 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 181440 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop fail like 181440 test-armhf-armhf-libvirt 16 saverestore-support-check fail like 181440 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 181440 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 181440 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop fail like 181440 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop fail like 181440 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail like 181440 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 181440 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail like 181440 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop fail like 181440 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 181440 test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-i386-xl-pvshim 14 guest-start fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-i386-libvirt 15 migrate-support-check fail never pass test-amd64-i386-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 15 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 16 saverestore-support-check fail never pass test-amd64-i386-libvirt-raw 14 migrate-support-check fail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-armhf-armhf-xl-multivcpu 15 migrate-support-check fail never pass test-armhf-armhf-xl-multivcpu 16 saverestore-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass test-armhf-armhf-libvirt 15 migrate-support-check fail never pass test-armhf-armhf-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 15 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 16 saverestore-support-check fail never pass test-armhf-armhf-xl 15 migrate-support-check fail never pass test-armhf-armhf-xl 16 saverestore-support-check fail never pass test-armhf-armhf-xl-credit1 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 16 saverestore-support-check fail never pass test-armhf-armhf-xl-credit2 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit2 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail never pass version targeted for testing: xen 1512a68721620338daf477bf717d23befbb4faf5 baseline version: xen 87c621d0ef75e5f95987d66811ed1fd7129208d1 Last test of basis 181440 2023-06-15 06:54:36 Z 1 days Testing same since 181460 2023-06-16 00:10:47 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Andrew Cooper Anthony PERARD Jan Beulich Stefano Stabellini jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64-xtf pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-prev pass build-i386-prev pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-xtf-amd64-amd64-1 pass test-xtf-amd64-amd64-2 pass test-xtf-amd64-amd64-3 pass test-xtf-amd64-amd64-4 pass test-xtf-amd64-amd64-5 pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl pass test-amd64-i386-xl pass test-amd64-coresched-i386-xl pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm fail test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-i386-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-i386-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-i386-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-i386-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-i386-qemut-rhel6hvm-amd pass test-amd64-i386-qemuu-rhel6hvm-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-i386-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-freebsd10-amd64 pass test-amd64-amd64-qemuu-freebsd11-amd64 pass test-amd64-amd64-qemuu-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-i386-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-i386-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-i386-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-amd64-i386-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale pass test-amd64-amd64-examine-bios pass test-amd64-i386-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 pass test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 pass test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine pass test-amd64-i386-examine pass test-amd64-i386-freebsd10-i386 pass test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-i386-qemut-rhel6hvm-intel pass test-amd64-i386-qemuu-rhel6hvm-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt pass test-amd64-i386-libvirt pass test-amd64-amd64-livepatch pass test-amd64-i386-livepatch pass test-amd64-amd64-migrupgrade pass test-amd64-i386-migrupgrade pass test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu pass test-amd64-amd64-pair pass test-amd64-i386-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-i386-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-i386-xl-pvshim fail test-amd64-amd64-pygrub pass test-armhf-armhf-libvirt-qcow2 pass test-amd64-amd64-xl-qcow2 pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw pass test-amd64-i386-libvirt-raw pass test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds pass test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-amd64-i386-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-i386-examine-uefi pass test-amd64-amd64-libvirt-vhd pass test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd broken test-amd64-i386-xl-vhd pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary broken-job test-armhf-armhf-xl-vhd broken broken-step test-armhf-armhf-xl-vhd host-install(5) Not pushing. ------------------------------------------------------------ commit 1512a68721620338daf477bf717d23befbb4faf5 Author: Andrew Cooper Date: Tue Jun 13 17:25:42 2023 +0100 xen/grant: Purge PIN_FAIL() The name PIN_FAIL() is poor; it's not used only for pinning failures. More importantly, it interferes with code legibility by hiding control flow. Expand and drop it. * Drop redundant "rc = rc" assignment * Rework gnttab_copy_buf() to be simpler by dropping the rc variable As a side effect, this fixes several violations of MISRA rule 2.1 (dead code - the while() following a goto). No functional change. Signed-off-by: Andrew Cooper Reviewed-by: Julien Grall Reviewed-by: Jan Beulich commit 9c0b20700103d746824687383fd330f5da97b72d Author: Andrew Cooper Date: Mon May 9 11:18:20 2022 +0100 x86/shadow: Don't use signed bitfield in sh_emulate_ctxt 'int' bitfields in particular have implementation defined behaviour under gcc and can change signed-ness with -funsigned-bitfields. There is no need for low_bit_was_clear to be a bitfield in the first place; it is only used as a boolean. Doing so even improves the code generation in sh_emulate_map_dest() to avoid emitting a merge with structure padding. Spotted by Eclair MISRA scanner. Signed-off-by: Andrew Cooper Reviewed-by: Bertrand Marquis Reviewed-by: Roger Pau Monné commit 621625f696f7be958bef8d31419d42886cffb85d Author: Andrew Cooper Date: Mon May 9 11:17:35 2022 +0100 x86/p2m.h: Add include guards Spotted by Eclair MISRA scanner. Signed-off-by: Andrew Cooper Reviewed-by: Roger Pau Monné Reviewed-by: Bertrand Marquis commit a012a4aba1bbe8d01869bb6e4a5c00b032ec34db Author: Jan Beulich Date: Thu Jun 15 11:00:22 2023 +0200 Arm: drop bogus ALIGN() from linker script Having ALIGN() inside a section definition usually makes sense only with a label definition following (an exception case is a few lines out of context, where cache line sharing is intended to be avoided). Constituents of .bss.page_aligned need to specify their own alignment correctly anyway, or else they're susceptible to link order changing. This requirement is already met: Arm-specific code has no such object, while common (EFI) code has another one. That one has suitable alignment specified. Signed-off-by: Jan Beulich Acked-by: Stefano Stabellini commit 9e9aec6141a242c23d28ebf8afeea093c17e4139 Author: Jan Beulich Date: Thu Jun 15 10:59:56 2023 +0200 spinlock: alter inlining of _spin_lock_cb() To comply with Misra rule 8.10 ("An inline function shall be declared with the static storage class"), convert what is presently _spin_lock_cb() to an always-inline (and static) helper, while making the function itself a thin wrapper, just like _spin_lock() is. While there drop the unlikely() from the callback check, and correct indentation in _spin_lock(). Signed-off-by: Jan Beulich Reviewed-by: Stefano Stabellini commit afbfe555440d121077528209d56c8475b92bddc6 Author: Jan Beulich Date: Thu Jun 15 10:59:30 2023 +0200 libxg: shrink variable scope in xc_core_arch_map_p2m_list_rw() This in particular allows to drop a dead assignment to "ptes" from near the end of the function. Coverity ID: 1532314 Fixes: bd7a29c3d0b9 ("tools/libs/ctrl: fix xc_core_arch_map_p2m() to support linear p2m table") Signed-off-by: Jan Beulich Acked-by: Anthony PERARD (qemu changes not included) From xen-devel-bounces@lists.xenproject.org Fri Jun 16 21:19:35 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 16 Jun 2023 21:19:35 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550519.859631 (Exim 4.92) (envelope-from ) id 1qAGqp-0004u2-G5; Fri, 16 Jun 2023 21:19:23 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550519.859631; Fri, 16 Jun 2023 21:19:23 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAGqp-0004tv-DG; Fri, 16 Jun 2023 21:19:23 +0000 Received: by outflank-mailman (input) for mailman id 550519; Fri, 16 Jun 2023 21:19:22 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAGqn-0004tl-VA; Fri, 16 Jun 2023 21:19:21 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAGqn-0008Ls-Ro; Fri, 16 Jun 2023 21:19:21 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAGqn-0001Bo-Bq; Fri, 16 Jun 2023 21:19:21 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qAGqn-0000Rb-BL; Fri, 16 Jun 2023 21:19:21 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=UcfOf9tPfGPYXsHR+vkwmDeL/ztX9MwvgqMwDBXA0Og=; b=SG8A/CIx+XSrU74+Ox1V9u+yb/ iVwPrjz3cmDi9CYN2D3MaiBMlnaGbYucUvr07IJ4hu5+o6O4gnaD2vaOjlecYLHQsG4I049eB/xkD alOoGgqnUHA0dsUba2DsvRS4GOYyPshddsiIiWdZP0AKnG9vFPoAtAiq47ZMd3IgC+0U=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [qemu-mainline test] 181463: regressions - FAIL X-Osstest-Failures: qemu-mainline:build-amd64-xsm:xen-build:fail:regression qemu-mainline:build-arm64:xen-build:fail:regression qemu-mainline:build-arm64-xsm:xen-build:fail:regression qemu-mainline:build-amd64:xen-build:fail:regression qemu-mainline:build-i386:xen-build:fail:regression qemu-mainline:build-i386-xsm:xen-build:fail:regression qemu-mainline:build-armhf:xen-build:fail:regression qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-i386:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:build-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:build-arm64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:build-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:build-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pygrub:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking X-Osstest-Versions-This: qemuu=7efd65423ab22e6f5890ca08ae40c84d6660242f X-Osstest-Versions-That: qemuu=6972ef1440a9d685482d78672620a7482f2bd09a From: osstest service owner Date: Fri, 16 Jun 2023 21:19:21 +0000 flight 181463 qemu-mainline real [real] http://logs.test-lab.xenproject.org/osstest/logs/181463/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-amd64-xsm 6 xen-build fail REGR. vs. 180691 build-arm64 6 xen-build fail REGR. vs. 180691 build-arm64-xsm 6 xen-build fail REGR. vs. 180691 build-amd64 6 xen-build fail REGR. vs. 180691 build-i386 6 xen-build fail REGR. vs. 180691 build-i386-xsm 6 xen-build fail REGR. vs. 180691 build-armhf 6 xen-build fail REGR. vs. 180691 Tests which did not succeed, but are not blocking: test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-xl-xsm 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-raw 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-xsm 1 build-check(1) blocked n/a test-arm64-arm64-xl 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit1 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit2 1 build-check(1) blocked n/a test-arm64-arm64-xl-thunderx 1 build-check(1) blocked n/a test-arm64-arm64-xl-vhd 1 build-check(1) blocked n/a test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a test-armhf-armhf-libvirt 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-qcow2 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-raw 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a test-armhf-armhf-xl-arndale 1 build-check(1) blocked n/a test-armhf-armhf-xl-multivcpu 1 build-check(1) blocked n/a test-armhf-armhf-xl-rtds 1 build-check(1) blocked n/a test-armhf-armhf-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-amd 1 build-check(1) blocked n/a test-amd64-i386-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-raw 1 build-check(1) blocked n/a test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-i386 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-amd64 1 build-check(1) blocked n/a test-amd64-coresched-i386-xl 1 build-check(1) blocked n/a test-amd64-coresched-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-xsm 1 build-check(1) blocked n/a build-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-shadow 1 build-check(1) blocked n/a test-amd64-amd64-xl-rtds 1 build-check(1) blocked n/a build-arm64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a build-armhf-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a build-i386-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-amd 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-pair 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-qcow2 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-vhd 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvshim 1 build-check(1) blocked n/a test-amd64-amd64-pair 1 build-check(1) blocked n/a test-amd64-amd64-pygrub 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-intel 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd11-amd64 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd12-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-multivcpu 1 build-check(1) blocked n/a test-amd64-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit1 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit1 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-intel 1 build-check(1) blocked n/a test-amd64-i386-xl 1 build-check(1) blocked n/a test-amd64-i386-xl-pvshim 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a version targeted for testing: qemuu 7efd65423ab22e6f5890ca08ae40c84d6660242f baseline version: qemuu 6972ef1440a9d685482d78672620a7482f2bd09a Last test of basis 180691 2023-05-17 10:45:22 Z 30 days Failing since 180699 2023-05-18 07:21:24 Z 29 days 107 attempts Testing same since 181419 2023-06-14 05:08:14 Z 2 days 9 attempts ------------------------------------------------------------ People who touched revisions under test: Afonso Bordado Akihiko Odaki Akihiro Suda Alex Bennée Alex Williamson Alexander Bulekov Alexander Graf Alexander Ivanov Alistair Francis Anastasia Belova Andrea Bolognani Andreas Schwab Andrew Jeffery Ani Sinha Ani Sinha Anthony PERARD Anton Johansson Antonio Caggiano BALATON Zoltan Bastian Koppelmann Bernhard Beschow Bin Meng Brian Cain Brice Goglin Camilla Conte Carlos Santos Christian Schoenebeck Chuck Zmudzinski Cindy Lu Clément Chigot Corey Minyard Cornelia Huck Cédric Le Goater Cédric Le Goater Daniel Henrique Barboza Daniel Henrique Barboza Daniel P. Berrangé Daniil Kovalev David Hildenbrand David Woodhouse Emanuele Giuseppe Esposito Enze Li Eric Auger Eric Blake Eric DeVolder Erico Nunes Eugenio Pérez Fabiano Rosas Fan Ni Fiona Ebner Francesco Cagnin Francisco Iglesias Frederic Barrat Gavin Shan Gregory Price Gregory Price Hanna Czenczek Hao Zeng Hawkins Jiawei Himanshu Chauhan Igor Mammedov Ilya Leoshkevich Ira Weiny Ivan Klokov Jagannathan Raman Jason Wang Jean-Louis Dupond Jean-Philippe Brucker Jiaxun Yang Joao Martins John Snow Jonathan Cameron Juan Quintela Junqiang Wang Kevin Wolf Laurent Vivier Lei Yang Leonardo Bras Maksim Davydov Marc-André Lureau Marcin Juszkiewicz Marco Liebel Mark Cave-Ayland Markus Armbruster Matheus Tavares Bernardino Mattias Nissler Mauro Matteo Cascella Max Fritz Mayuresh Chitale Michael S. Tsirkin Michael Tokarev Michal Privoznik Milan Zamazal Mostafa Saleh Nicholas Piggin Nicolas Saenz Julienne Niek Linnenbank Niklas Cassel Palmer Dabbelt Paolo Bonzini Patrick Venture Peter Maydell Peter Xu Philippe Mathieu-Daudé Philippe Mathieu-Daudé qianfan Zhao Raghu H Rene Engel Richard Henderson Richard Purdie Ricky Zhou Ryan Wendland Sebastian Ott Sergio Lopez Sid Manning Song Gao Stefan Hajnoczi Stefano Garzarella Steve Sistare Sunil V L Taylor Simpson Thomas Huth Thomas Weißschuh timothee.cocault@gmail.com Timothée Cocault Tommy Wu Vikram Garhwal Viktor Prutyanov Vitaly Cheptsov Vivek Kasireddy Vladimir Sementsov-Ogievskiy Volker Rümelin Weiwei Li Xiao Wang Xinyu Li Yin Wang Zeng Hao Zhenyu Zhang Zhenzhong Duan Zhuojia Shen jobs: build-amd64-xsm fail build-arm64-xsm fail build-i386-xsm fail build-amd64 fail build-arm64 fail build-armhf fail build-i386 fail build-amd64-libvirt blocked build-arm64-libvirt blocked build-armhf-libvirt blocked build-i386-libvirt blocked build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl blocked test-amd64-coresched-amd64-xl blocked test-arm64-arm64-xl blocked test-armhf-armhf-xl blocked test-amd64-i386-xl blocked test-amd64-coresched-i386-xl blocked test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-i386-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-amd64-libvirt-xsm blocked test-arm64-arm64-libvirt-xsm blocked test-amd64-i386-libvirt-xsm blocked test-amd64-amd64-xl-xsm blocked test-arm64-arm64-xl-xsm blocked test-amd64-i386-xl-xsm blocked test-amd64-amd64-qemuu-nested-amd blocked test-amd64-amd64-xl-pvhv2-amd blocked test-amd64-i386-qemuu-rhel6hvm-amd blocked test-amd64-amd64-dom0pvh-xl-amd blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-freebsd10-amd64 blocked test-amd64-amd64-qemuu-freebsd11-amd64 blocked test-amd64-amd64-qemuu-freebsd12-amd64 blocked test-amd64-amd64-xl-qemuu-ovmf-amd64 blocked test-amd64-i386-xl-qemuu-ovmf-amd64 blocked test-amd64-amd64-xl-qemuu-win7-amd64 blocked test-amd64-i386-xl-qemuu-win7-amd64 blocked test-amd64-amd64-xl-qemuu-ws16-amd64 blocked test-amd64-i386-xl-qemuu-ws16-amd64 blocked test-armhf-armhf-xl-arndale blocked test-amd64-amd64-xl-credit1 blocked test-arm64-arm64-xl-credit1 blocked test-armhf-armhf-xl-credit1 blocked test-amd64-amd64-xl-credit2 blocked test-arm64-arm64-xl-credit2 blocked test-armhf-armhf-xl-credit2 blocked test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-freebsd10-i386 blocked test-amd64-amd64-qemuu-nested-intel blocked test-amd64-amd64-xl-pvhv2-intel blocked test-amd64-i386-qemuu-rhel6hvm-intel blocked test-amd64-amd64-dom0pvh-xl-intel blocked test-amd64-amd64-libvirt blocked test-armhf-armhf-libvirt blocked test-amd64-i386-libvirt blocked test-amd64-amd64-xl-multivcpu blocked test-armhf-armhf-xl-multivcpu blocked test-amd64-amd64-pair blocked test-amd64-i386-pair blocked test-amd64-amd64-libvirt-pair blocked test-amd64-i386-libvirt-pair blocked test-amd64-amd64-xl-pvshim blocked test-amd64-i386-xl-pvshim blocked test-amd64-amd64-pygrub blocked test-armhf-armhf-libvirt-qcow2 blocked test-amd64-amd64-xl-qcow2 blocked test-arm64-arm64-libvirt-raw blocked test-armhf-armhf-libvirt-raw blocked test-amd64-i386-libvirt-raw blocked test-amd64-amd64-xl-rtds blocked test-armhf-armhf-xl-rtds blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-amd64-xl-shadow blocked test-amd64-i386-xl-shadow blocked test-arm64-arm64-xl-thunderx blocked test-amd64-amd64-libvirt-vhd blocked test-arm64-arm64-xl-vhd blocked test-armhf-armhf-xl-vhd blocked test-amd64-i386-xl-vhd blocked ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 18679 lines long.) From xen-devel-bounces@lists.xenproject.org Fri Jun 16 21:29:09 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 16 Jun 2023 21:29:09 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550526.859641 (Exim 4.92) (envelope-from ) id 1qAH08-0006QN-CO; Fri, 16 Jun 2023 21:29:00 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550526.859641; Fri, 16 Jun 2023 21:29:00 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAH08-0006QG-8f; Fri, 16 Jun 2023 21:29:00 +0000 Received: by outflank-mailman (input) for mailman id 550526; Fri, 16 Jun 2023 21:28:59 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAH07-0006QA-1B for xen-devel@lists.xenproject.org; Fri, 16 Jun 2023 21:28:59 +0000 Received: from mail-yw1-x112e.google.com (mail-yw1-x112e.google.com [2607:f8b0:4864:20::112e]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id cc3fc554-0c8c-11ee-8611-37d641c3527e; Fri, 16 Jun 2023 23:28:56 +0200 (CEST) Received: by mail-yw1-x112e.google.com with SMTP id 00721157ae682-570808d8ddeso4712807b3.0 for ; Fri, 16 Jun 2023 14:28:56 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: cc3fc554-0c8c-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686950935; x=1689542935; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=S8f4Qp7cwj4O2kdf7qLqLnrTRkxhB0m+8FmgrZaxSBc=; b=kDqKbU7P9edSk/BgMH9xSstpKqVCZCkotk48bdhsv9CQedo7tgzNx594G7ZL6GQuxg jA1o2JPcz0QDYMp8Gk7IfVIBu/Qb0pO39azZ5F7HLfZC1IgCGAp3b3idtV3rR/BwTQDN x0xETay6eu3ghZcxBbeBHYOXCm+0UdQ18fM+kmxKxAuiYRqF/zWkw4LlfaXk/Ol9POup f5e5C/WGoi8jmqXjJwP7rx3T/q8TLMKNW53qsepy7E0u9eKRuHWvS7CgQ60QFJLvcMrS P+YDUzuxecN+sqBu1rA+X9cuH9CB9q1H/97ksOSagJnc4ZVXc8JgbNn89oLF/7saT6Tn z99g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686950935; x=1689542935; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=S8f4Qp7cwj4O2kdf7qLqLnrTRkxhB0m+8FmgrZaxSBc=; b=UJJoQCtLIjJFIx5N8/VZ5shLV8gkjl7QCLUDcb9RnSyI6Lpq818j1WHg01DCP6F5A/ iEifRhrEjjE/gKcJ9wC/lgiEr/nl0y+mSsiaNDhqQUytBF9LCErEGVVJ0QJYG7foVHdf 4X+whREhlyl/mDHuG1HNWPrvwcOJMitFRTtkfHYFW2CMKxn7Z84Lyv+HkOvNHvXGqe8F xQGIT4pQh2mbRAk6PsO8ZZ/YmgaV+Q1/r2KgV66bl4or7z5d9npYtZ4NartJBwXBJCsw UBzMwOUP04t0EEuXgyEPGSHO5pHr0mmIgDqkazUBCCl7dSatJCKrcIkyN311hYSLrV5H IPpw== X-Gm-Message-State: AC+VfDxY52ieEYZTjZHxHawiy67cvZ+plE076EKLxs5E6yN5xtHYShuR tN4I18laMPyGHSfA4tWjEsOB15zdKEMYfTjqbf0= X-Google-Smtp-Source: ACHHUZ7/iv7DGmrSbI7dWoycmh8dvViREYGBrKV5KnrTS1VkZy/HhcudLLxyAMIf5U1P44XX8eoY39CR0V8jmRNeXMA= X-Received: by 2002:a81:6c02:0:b0:56c:f684:b4f0 with SMTP id h2-20020a816c02000000b0056cf684b4f0mr2990065ywc.27.1686950935072; Fri, 16 Jun 2023 14:28:55 -0700 (PDT) MIME-Version: 1.0 References: <20230612210423.18611-1-vishal.moola@gmail.com> <20230612210423.18611-5-vishal.moola@gmail.com> In-Reply-To: From: Vishal Moola Date: Fri, 16 Jun 2023 14:28:44 -0700 Message-ID: Subject: Re: [PATCH v4 04/34] pgtable: Create struct ptdesc To: Hugh Dickins Cc: Andrew Morton , Matthew Wilcox , Gerald Schaefer , Vasily Gorbik , Jason Gunthorpe , Heiko Carstens , Christian Borntraeger , Claudio Imbrenda , Alexander Gordeev , linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Thu, Jun 15, 2023 at 12:57=E2=80=AFAM Hugh Dickins wr= ote: > > On Mon, 12 Jun 2023, Vishal Moola (Oracle) wrote: > > > Currently, page table information is stored within struct page. As part > > of simplifying struct page, create struct ptdesc for page table > > information. > > > > Signed-off-by: Vishal Moola (Oracle) > > Vishal, as I think you have already guessed, your ptdesc series and > my pte_free_defer() "mm: free retracted page table by RCU" series are > on a collision course. > > Probably just trivial collisions in most architectures, which either > of us can easily adjust to the other; powerpc likely to be more awkward, > but fairly easily resolved; s390 quite a problem. > > I've so far been unable to post a v2 of my series (and powerpc and s390 > were stupidly wrong in the v1), because a good s390 patch is not yet > decided - Gerald Schaefer and I are currently working on that, on the > s390 list (I took off most Ccs until we are settled and I can post v2). > > As you have no doubt found yourself, s390 has sophisticated handling of > free half-pages already, and I need to add rcu_head usage in there too: > it's tricky to squeeze it all in, and ptdesc does not appear to help us > in any way (though mostly it's just changing some field names, okay). > > If ptdesc were actually allowing a flexible structure which architectures > could add into, that would (in some future) be nice; but of course at > present it's still fitting it all into one struct page, and mandating > new restrictions which just make an architecture's job harder. A goal of ptdescs is to make architecture's jobs simpler and standardized. Unfortunately, ptdescs are nowhere near isolated from struct page yet. This version of struct ptdesc contains the exact number of fields architect= ures need right now, just reorganized to be located next to each other. It *prob= ably* shouldn't make an architectures job harder, aside from discouraging their u= se of yet even more members of struct page. > Some notes on problematic fields below FYI. > > > --- > > include/linux/pgtable.h | 51 +++++++++++++++++++++++++++++++++++++++++ > > 1 file changed, 51 insertions(+) > > > > diff --git a/include/linux/pgtable.h b/include/linux/pgtable.h > > index c5a51481bbb9..330de96ebfd6 100644 > > --- a/include/linux/pgtable.h > > +++ b/include/linux/pgtable.h > > @@ -975,6 +975,57 @@ static inline void ptep_modify_prot_commit(struct = vm_area_struct *vma, > > #endif /* __HAVE_ARCH_PTEP_MODIFY_PROT_TRANSACTION */ > > #endif /* CONFIG_MMU */ > > > > + > > +/** > > + * struct ptdesc - Memory descriptor for page tables. > > + * @__page_flags: Same as page flags. Unused for page tables. > > + * @pt_list: List of used page tables. Used for s390 and x86. > > + * @_pt_pad_1: Padding that aliases with page's compound head. > > + * @pmd_huge_pte: Protected by ptdesc->ptl, used for THPs. > > + * @_pt_s390_gaddr: Aliases with page's mapping. Used for s390 gmap on= ly. > > + * @pt_mm: Used for x86 pgds. > > + * @pt_frag_refcount: For fragmented page table tracking. Powerpc and = s390 only. > > + * @ptl: Lock for the page table. > > + * > > + * This struct overlays struct page for now. Do not modify without a g= ood > > + * understanding of the issues. > > + */ > > +struct ptdesc { > > + unsigned long __page_flags; > > + > > + union { > > + struct list_head pt_list; > > I shall be needing struct rcu_head rcu_head (or pt_rcu_head or whatever, > if you prefer) in this union too. Sharing the lru or pt_list with rcu_he= ad > is what's difficult to get right and efficient on s390 - and if ptdesc ga= ve > us an independent rcu_head for each page table, that would be a blessing! > but sadly not, it still has to squeeze into a struct page. I can add a pt_rcu_head along with a comment to deter aliasing issues :) Independent rcu_heads aren't coming any time soon though :( > > + struct { > > + unsigned long _pt_pad_1; > > + pgtable_t pmd_huge_pte; > > + }; > > + }; > > + unsigned long _pt_s390_gaddr; > > + > > + union { > > + struct mm_struct *pt_mm; > > + atomic_t pt_frag_refcount; > > Whether s390 will want pt_mm is not yet decided: I want to use it, > Gerald prefers to go without it; but if we do end up using it, > then pt_frag_refcount is a luxury we would have to give up. I don't like the use of pt_mm for s390 either. s390 uses space equivalent to all five words allocated in the page table struct (albeit in various pla= ces of struct page). Using extra space (especially allocated for unrelated reasons) just because it exists makes things more complicated and confusing, and s390 is already confusing enough as a result of that. If having access to pt_mm is necessary I can drop the pt_frag_refcount patch, but I'd rather avoid it. > s390 does very well already with its _refcount tricks, and I'd expect > powerpc's simpler but more wasteful implementation to work as well > with _refcount too - I know that a few years back, powerpc did misuse > _refcount (it did not allow for speculative accesses, thought it had > sole ownership of that field); but s390 copes well with that, and I > expect powerpc can do so too, without the luxury of pt_frag_refcount. > > But I've no desire to undo powerpc's use of pt_frag_refcount: > just warning that we may want to undo any use of it in s390. > > I thought I had more issues to mention, probably Gerald will > remind me of a whole new unexplored dimension! gmap perhaps. > > Hugh > > > + }; > > + > > +#if ALLOC_SPLIT_PTLOCKS > > + spinlock_t *ptl; > > +#else > > + spinlock_t ptl; > > +#endif > > +}; > > + > > +#define TABLE_MATCH(pg, pt) \ > > + static_assert(offsetof(struct page, pg) =3D=3D offsetof(struct pt= desc, pt)) > > +TABLE_MATCH(flags, __page_flags); > > +TABLE_MATCH(compound_head, pt_list); > > +TABLE_MATCH(compound_head, _pt_pad_1); > > +TABLE_MATCH(pmd_huge_pte, pmd_huge_pte); > > +TABLE_MATCH(mapping, _pt_s390_gaddr); > > +TABLE_MATCH(pt_mm, pt_mm); > > +TABLE_MATCH(ptl, ptl); > > +#undef TABLE_MATCH > > +static_assert(sizeof(struct ptdesc) <=3D sizeof(struct page)); > > + > > /* > > * No-op macros that just return the current protection value. Defined= here > > * because these macros can be used even if CONFIG_MMU is not defined. > > -- > > 2.40.1 From xen-devel-bounces@lists.xenproject.org Fri Jun 16 22:36:31 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 16 Jun 2023 22:36:31 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550557.859651 (Exim 4.92) (envelope-from ) id 1qAI3A-0005Sv-NX; Fri, 16 Jun 2023 22:36:12 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550557.859651; Fri, 16 Jun 2023 22:36:12 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAI3A-0005So-K5; Fri, 16 Jun 2023 22:36:12 +0000 Received: by outflank-mailman (input) for mailman id 550557; Fri, 16 Jun 2023 22:36:11 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAI39-0005Se-DP; Fri, 16 Jun 2023 22:36:11 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAI39-0001V4-Al; Fri, 16 Jun 2023 22:36:11 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAI38-0003yC-QV; Fri, 16 Jun 2023 22:36:10 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qAI38-0004SZ-Pv; Fri, 16 Jun 2023 22:36:10 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=tILvi8ckjifLSWciRl7GxihbNqaKTIQfLHakYmCKF00=; b=APcs4fCtbobGkY5rXiSloFPLOt 1rgh4hSTBy9x7Kdhuhp+5F/EGr/9wRjoxhgsGZJV7mN88il+70AooDOD8ZNQWXw0pLPGuaGIbSmwp IcxgaLW4FwSz17VYO449acEOSAzS0Vv6AVcoMUEfawPC2UO0siN0TufEU2AQVCMFjyN0=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable-smoke test] 181470: regressions - trouble: blocked/broken/pass X-Osstest-Failures: xen-unstable-smoke:build-armhf::broken:regression xen-unstable-smoke:build-armhf:host-build-prep:fail:regression xen-unstable-smoke:test-armhf-armhf-xl:build-check(1):blocked:nonblocking xen-unstable-smoke:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking xen-unstable-smoke:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking xen-unstable-smoke:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: xen=7a25a1501ca941c3e01b0c4e624ace05417f1587 X-Osstest-Versions-That: xen=e533438e3d28158602dce051b032811bdd26377d From: osstest service owner Date: Fri, 16 Jun 2023 22:36:10 +0000 flight 181470 xen-unstable-smoke real [real] http://logs.test-lab.xenproject.org/osstest/logs/181470/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-armhf broken build-armhf 5 host-build-prep fail REGR. vs. 181467 Tests which did not succeed, but are not blocking: test-armhf-armhf-xl 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass version targeted for testing: xen 7a25a1501ca941c3e01b0c4e624ace05417f1587 baseline version: xen e533438e3d28158602dce051b032811bdd26377d Last test of basis 181467 2023-06-16 18:00:24 Z 0 days Testing same since 181470 2023-06-16 21:08:31 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Ayan Kumar Halder Julien Grall Stefano Stabellini jobs: build-arm64-xsm pass build-amd64 pass build-armhf broken build-amd64-libvirt pass test-armhf-armhf-xl blocked test-arm64-arm64-xl-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-libvirt pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary broken-job build-armhf broken Not pushing. ------------------------------------------------------------ commit 7a25a1501ca941c3e01b0c4e624ace05417f1587 Author: Ayan Kumar Halder Date: Fri Jun 2 13:07:54 2023 +0100 xen/arm: p2m: Enable support for 32bit IPA for ARM_32 Refer ARM DDI 0406C.d ID040418, B3-1345, "A stage 2 translation with an input address range of 31-34 bits can start the translation either: - With a first-level lookup, accessing a first-level translation table with 2-16 entries. - With a second-level lookup, accessing a set of concatenated second-level translation tables" Thus, for 32 bit IPA, there will be no concatenated root level tables. So, the root-order is 0. Also, Refer ARM DDI 0406C.d ID040418, B3-1348 "Determining the required first lookup level for stage 2 translations For a stage 2 translation, the output address range from the stage 1 translations determines the required input address range for the stage 2 translation. The permitted values of VTCR.SL0 are: 0b00 Stage 2 translation lookup must start at the second level. 0b01 Stage 2 translation lookup must start at the first level. VTCR.T0SZ must indicate the required input address range. The size of the input address region is 2^(32-T0SZ) bytes." Thus VTCR.SL0 = 1 (maximum value) and VTCR.T0SZ = 0 when the size of input address region is 2^32 bytes. Signed-off-by: Ayan Kumar Halder Reviewed-by: Michal Orzel Acked-by: Julien Grall commit 7c72147baa221cb49da80498bb0360c4d24a759f Author: Ayan Kumar Halder Date: Fri Jun 2 13:07:53 2023 +0100 xen/arm: Restrict zeroeth_table_offset for ARM_64 When 32 bit physical addresses are used (ie PHYS_ADDR_T_32=y), "va >> ZEROETH_SHIFT" causes an overflow. Also, there is no zeroeth level page table on Arm32. Also took the opportunity to clean up dump_pt_walk(). One could use DECLARE_OFFSETS() macro instead of declaring an array of page table offsets. Signed-off-by: Ayan Kumar Halder Reviewed-by: Michal Orzel Acked-by: Julien Grall commit c3aabf7bd20eefa2c0fa297e53e087126ed9a06a Author: Ayan Kumar Halder Date: Fri Jun 2 13:07:52 2023 +0100 xen/arm: guest_walk: LPAE specific bits should be enclosed within "ifndef CONFIG_PHYS_ADDR_T_32" As the previous patch introduces CONFIG_PHYS_ADDR_T_32 to support 32 bit physical addresses, the code specific to "Large Physical Address Extension" (ie LPAE) should be enclosed within "ifndef CONFIG_PHYS_ADDR_T_32". Refer xen/arch/arm/include/asm/short-desc.h, "short_desc_l1_supersec_t" unsigned int extbase1:4; /* Extended base address, PA[35:32] */ unsigned int extbase2:4; /* Extended base address, PA[39:36] */ Thus, extbase1 and extbase2 are not valid when 32 bit physical addresses are supported. Signed-off-by: Ayan Kumar Halder Acked-by: Stefano Stabellini commit b6733ed0cb1d3a8c030cd46c93fce46a65255c35 Author: Ayan Kumar Halder Date: Fri Jun 2 13:07:51 2023 +0100 xen/arm: Introduce choice to enable 64/32 bit physical addressing Some Arm based hardware platforms which does not support LPAE (eg Cortex-R52), uses 32 bit physical addresses. Also, users may choose to use 32 bits to represent physical addresses for optimization. To support the above use cases, we have introduced arch independent config to choose if the physical address can be represented using 32 bits (PHYS_ADDR_T_32) or 64 bits (!PHYS_ADDR_T_32). For now only ARM_32 provides support to enable 32 bit physical addressing. When PHYS_ADDR_T_32 is defined, PADDR_BITS is set to 32. Note that we use "unsigned long" (not "uint32_t") to denote the datatype of physical address. This is done to avoid using a cast each time PAGE_* macros are used on paddr_t. For eg PAGE_SIZE is defined as unsigned long. Thus, each time PAGE_SIZE is used with paddr_t, the result will be "unsigned long". On 32-bit architecture, "unsigned long" is 32-bit wide. Thus, it can be used to denote physical address. When PHYS_ADDR_T_32 is not defined for ARM_32, PADDR_BITS is set to 40. For ARM_64, PADDR_BITS is set to 48. The last two are same as the current configuration used today on Xen. Signed-off-by: Ayan Kumar Halder Reviewed-by: Michal Orzel Acked-by: Julien Grall commit 6d44fb48bd19c140f8601b645ea2a92895ce4ca9 Author: Ayan Kumar Halder Date: Fri Jun 2 13:07:50 2023 +0100 xen/arm: p2m: Use the pa_range_info table to support arm32 and arm64 Restructure the code so that one can use pa_range_info[] table for both arm32 as well as arm64. Also, removed the hardcoding for P2M_ROOT_ORDER and P2M_ROOT_LEVEL as p2m_root_order can be obtained from the pa_range_info[].root_order and p2m_root_level can be obtained from pa_range_info[].sl0. Refer ARM DDI 0406C.d ID040418, B3-1345, "Use of concatenated first-level translation tables ...However, a 40-bit input address range with a translation granularity of 4KB requires a total of 28 bits of address resolution. Therefore, a stage 2 translation that supports a 40-bit input address range requires two concatenated first-level translation tables,..." Thus, root-order is 1 for 40-bit IPA on arm32. Refer ARM DDI 0406C.d ID040418, B3-1348, "Determining the required first lookup level for stage 2 translations For a stage 2 translation, the output address range from the stage 1 translations determines the required input address range for the stage 2 translation. The permitted values of VTCR.SL0 are: 0b00 Stage 2 translation lookup must start at the second level. 0b01 Stage 2 translation lookup must start at the first level. VTCR.T0SZ must indicate the required input address range. The size of the input address region is 2^(32-T0SZ) bytes." Thus VTCR.SL0 = 1 (maximum value) and VTCR.T0SZ = -8 when the size of input address region is 2^40 bytes. Thus, pa_range_info[].t0sz = 1 (VTCR.S) | 8 (VTCR.T0SZ) ie 11000b which is 24. VTCR.T0SZ, is bits [5:0] for arm64. VTCR.T0SZ is bits [3:0] and S(sign extension), bit[4] for arm32. For this, we have used struct bitfields to convert pa_range_info[].t0sz to its arm32 variant. pa_range_info[] is indexed by ID_AA64MMFR0_EL1.PARange which is present in Arm64 only. This is the reason we do not specify the indices for arm32. Also, we duplicated the entry "{ 40, 24/*24*/, 1, 1 }" between arm64 and arm32. This is done to avoid introducing extra #if-defs. Signed-off-by: Ayan Kumar Halder Reviewed-by: Michal Orzel [julien: Tweak some comments and one check] Acked-by: Julien Grall (qemu changes not included) From xen-devel-bounces@lists.xenproject.org Fri Jun 16 23:23:08 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 16 Jun 2023 23:23:08 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550564.859661 (Exim 4.92) (envelope-from ) id 1qAImU-0002Oh-3r; Fri, 16 Jun 2023 23:23:02 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550564.859661; Fri, 16 Jun 2023 23:23:02 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAImU-0002Oa-16; Fri, 16 Jun 2023 23:23:02 +0000 Received: by outflank-mailman (input) for mailman id 550564; Fri, 16 Jun 2023 23:23:00 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAImS-0002OQ-O5; Fri, 16 Jun 2023 23:23:00 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAImS-0002jS-KD; Fri, 16 Jun 2023 23:23:00 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAImS-0006FA-2O; Fri, 16 Jun 2023 23:23:00 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qAImS-00056g-1w; Fri, 16 Jun 2023 23:23:00 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=jkyXdiR6/2gAxvuJRg35Wek85pGZHn6o7L5bY/PcyMY=; b=ZbkkBurwfEqbk7e0UZiHy7nI8c +RwL1VEAXTJdKYjd0b7dGUKZUhAJaqfYRp4icjuBQwcjb3/sp/bsuSL7Ikyxu96aVUWDeU3QOyZD9 yWL2YiT71zp01DCb6e7JYaJRPg1pRaIQ1+YgB9gWBCOnjVV6m3k4q0t32PC/22K+tyqw=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [linux-5.4 test] 181462: regressions - trouble: broken/fail/pass/starved X-Osstest-Failures: linux-5.4:test-armhf-armhf-xl-rtds::broken:regression linux-5.4:test-armhf-armhf-xl::broken:regression linux-5.4:build-amd64-pvops:kernel-build:fail:regression linux-5.4:build-i386-pvops:kernel-build:fail:regression linux-5.4:build-arm64-pvops:kernel-build:fail:regression linux-5.4:test-armhf-armhf-xl:host-install(5):broken:heisenbug linux-5.4:test-armhf-armhf-xl-rtds:host-install(5):broken:heisenbug linux-5.4:test-armhf-armhf-libvirt-raw:guest-start:fail:heisenbug linux-5.4:test-armhf-armhf-libvirt-qcow2:debian-di-install:fail:heisenbug linux-5.4:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking linux-5.4:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking linux-5.4:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-shadow:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking linux-5.4:test-arm64-arm64-examine:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-examine:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-examine-bios:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-pair:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-qemuu-nested-intel:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking linux-5.4:test-arm64-arm64-xl:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-pvshim:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-examine-uefi:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-qemuu-rhel6hvm-amd:build-check(1):blocked:nonblocking linux-5.4:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-pvhv2-intel:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-xsm:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qcow2:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-vhd:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-pygrub:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-examine:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-pvshim:build-check(1):blocked:nonblocking linux-5.4:test-amd64-coresched-i386-xl:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qemut-debianhvm-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-credit2:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-examine-uefi:build-check(1):blocked:nonblocking linux-5.4:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking linux-5.4:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking linux-5.4:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-qemuu-nested-amd:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-qemut-rhel6hvm-amd:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-libvirt-raw:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-qemuu-freebsd12-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-qemut-debianhvm-i386-xsm:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-pair:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-freebsd10-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-qemut-ws16-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-coresched-amd64-xl:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-qemuu-rhel6hvm-intel:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-xsm:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-examine-bios:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qemut-ws16-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-qemut-rhel6hvm-intel:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qemut-win7-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-pvhv2-amd:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-credit1:build-check(1):blocked:nonblocking linux-5.4:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-dom0pvh-xl-intel:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-shadow:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-rtds:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-freebsd10-i386:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-qemut-debianhvm-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-multivcpu:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-qemuu-freebsd11-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-dom0pvh-xl-amd:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-qemut-win7-amd64:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-xl-credit2:guest-start:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-rtds:guest-start/debian.repeat:fail:nonblocking linux-5.4:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-i386-libvirt-raw:xen-install:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking linux-5.4:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking linux-5.4:test-armhf-armhf-xl-credit1:guest-start/debian.repeat:fail:nonblocking linux-5.4:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking linux-5.4:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking linux-5.4:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking linux-5.4:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-libvirt-raw:hosts-allocate:starved:nonblocking linux-5.4:test-arm64-arm64-libvirt-xsm:hosts-allocate:starved:nonblocking linux-5.4:test-arm64-arm64-xl-credit1:hosts-allocate:starved:nonblocking linux-5.4:test-arm64-arm64-xl-credit2:hosts-allocate:starved:nonblocking linux-5.4:test-arm64-arm64-xl-vhd:hosts-allocate:starved:nonblocking linux-5.4:test-arm64-arm64-xl-xsm:hosts-allocate:starved:nonblocking linux-5.4:test-arm64-arm64-xl:hosts-allocate:starved:nonblocking linux-5.4:test-arm64-arm64-xl-thunderx:hosts-allocate:starved:nonblocking X-Osstest-Versions-This: linux=61a2f83e4762ee0c766f86944e612305f5888bcb X-Osstest-Versions-That: linux=f568a20f058fa1e37069cff4aac4187c1650a0e9 From: osstest service owner Date: Fri, 16 Jun 2023 23:23:00 +0000 flight 181462 linux-5.4 real [real] http://logs.test-lab.xenproject.org/osstest/logs/181462/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: test-armhf-armhf-xl-rtds broken test-armhf-armhf-xl broken in 181448 build-amd64-pvops 6 kernel-build fail in 181448 REGR. vs. 181363 build-i386-pvops 6 kernel-build fail in 181448 REGR. vs. 181363 build-arm64-pvops 6 kernel-build fail in 181448 REGR. vs. 181363 Tests which are failing intermittently (not blocking): test-armhf-armhf-xl 5 host-install(5) broken in 181448 pass in 181462 test-armhf-armhf-xl-rtds 5 host-install(5) broken pass in 181448 test-armhf-armhf-libvirt-raw 13 guest-start fail in 181448 pass in 181462 test-armhf-armhf-libvirt-qcow2 12 debian-di-install fail pass in 181448 Tests which did not succeed, but are not blocking: test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked in 181448 n/a test-amd64-amd64-xl-qemuu-ovmf-amd64 1 build-check(1) blocked in 181448 n/a test-arm64-arm64-xl-credit2 1 build-check(1) blocked in 181448 n/a test-arm64-arm64-xl-thunderx 1 build-check(1) blocked in 181448 n/a test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked in 181448 n/a test-amd64-i386-libvirt-xsm 1 build-check(1) blocked in 181448 n/a test-amd64-i386-xl-qemuu-win7-amd64 1 build-check(1) blocked in 181448 n/a test-amd64-i386-xl-shadow 1 build-check(1) blocked in 181448 n/a test-amd64-i386-xl 1 build-check(1) blocked in 181448 n/a test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked in 181448 n/a test-arm64-arm64-examine 1 build-check(1) blocked in 181448 n/a test-amd64-i386-examine 1 build-check(1) blocked in 181448 n/a test-amd64-amd64-examine-bios 1 build-check(1) blocked in 181448 n/a test-amd64-i386-pair 1 build-check(1) blocked in 181448 n/a test-amd64-i386-xl-qemuu-ovmf-amd64 1 build-check(1) blocked in 181448 n/a test-amd64-i386-libvirt 1 build-check(1) blocked in 181448 n/a test-amd64-amd64-xl-qemuu-win7-amd64 1 build-check(1) blocked in 181448 n/a test-amd64-amd64-libvirt-pair 1 build-check(1) blocked in 181448 n/a test-amd64-amd64-qemuu-nested-intel 1 build-check(1) blocked in 181448 n/a test-amd64-amd64-libvirt-xsm 1 build-check(1) blocked in 181448 n/a test-arm64-arm64-xl 1 build-check(1) blocked in 181448 n/a test-amd64-amd64-xl-pvshim 1 build-check(1) blocked in 181448 n/a test-amd64-amd64-examine-uefi 1 build-check(1) blocked in 181448 n/a test-amd64-i386-qemuu-rhel6hvm-amd 1 build-check(1) blocked in 181448 n/a test-arm64-arm64-libvirt-xsm 1 build-check(1) blocked in 181448 n/a test-amd64-amd64-xl-pvhv2-intel 1 build-check(1) blocked in 181448 n/a test-amd64-i386-xl-xsm 1 build-check(1) blocked in 181448 n/a test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked in 181448 n/a test-amd64-amd64-xl-qcow2 1 build-check(1) blocked in 181448 n/a test-amd64-i386-xl-vhd 1 build-check(1) blocked in 181448 n/a test-amd64-amd64-pygrub 1 build-check(1) blocked in 181448 n/a test-amd64-i386-xl-qemuu-ws16-amd64 1 build-check(1) blocked in 181448 n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked in 181448 n/a test-amd64-amd64-examine 1 build-check(1) blocked in 181448 n/a test-amd64-i386-xl-pvshim 1 build-check(1) blocked in 181448 n/a test-amd64-coresched-i386-xl 1 build-check(1) blocked in 181448 n/a test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked in 181448 n/a test-amd64-amd64-xl-qemut-debianhvm-amd64 1 build-check(1) blocked in 181448 n/a test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked in 181448 n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked in 181448 n/a test-amd64-amd64-xl-credit2 1 build-check(1) blocked in 181448 n/a test-amd64-i386-examine-uefi 1 build-check(1) blocked in 181448 n/a test-arm64-arm64-xl-credit1 1 build-check(1) blocked in 181448 n/a test-arm64-arm64-xl-xsm 1 build-check(1) blocked in 181448 n/a test-arm64-arm64-xl-vhd 1 build-check(1) blocked in 181448 n/a test-amd64-i386-libvirt-pair 1 build-check(1) blocked in 181448 n/a test-amd64-amd64-qemuu-nested-amd 1 build-check(1) blocked in 181448 n/a test-amd64-i386-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked in 181448 n/a test-amd64-i386-qemut-rhel6hvm-amd 1 build-check(1) blocked in 181448 n/a test-amd64-amd64-xl 1 build-check(1) blocked in 181448 n/a test-amd64-i386-libvirt-raw 1 build-check(1) blocked in 181448 n/a test-amd64-amd64-qemuu-freebsd12-amd64 1 build-check(1) blocked in 181448 n/a test-amd64-i386-xl-qemut-debianhvm-i386-xsm 1 build-check(1) blocked in 181448 n/a test-amd64-amd64-pair 1 build-check(1) blocked in 181448 n/a test-amd64-i386-freebsd10-amd64 1 build-check(1) blocked in 181448 n/a test-amd64-i386-xl-qemut-ws16-amd64 1 build-check(1) blocked in 181448 n/a test-amd64-coresched-amd64-xl 1 build-check(1) blocked in 181448 n/a test-amd64-i386-qemuu-rhel6hvm-intel 1 build-check(1) blocked in 181448 n/a test-amd64-amd64-xl-xsm 1 build-check(1) blocked in 181448 n/a test-amd64-i386-examine-bios 1 build-check(1) blocked in 181448 n/a test-amd64-amd64-xl-qemut-ws16-amd64 1 build-check(1) blocked in 181448 n/a test-amd64-i386-qemut-rhel6hvm-intel 1 build-check(1) blocked in 181448 n/a test-amd64-amd64-xl-qemut-win7-amd64 1 build-check(1) blocked in 181448 n/a test-amd64-amd64-libvirt 1 build-check(1) blocked in 181448 n/a test-amd64-amd64-xl-pvhv2-amd 1 build-check(1) blocked in 181448 n/a test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm 1 build-check(1) blocked in 181448 n/a test-amd64-amd64-libvirt-vhd 1 build-check(1) blocked in 181448 n/a test-amd64-amd64-xl-credit1 1 build-check(1) blocked in 181448 n/a test-arm64-arm64-libvirt-raw 1 build-check(1) blocked in 181448 n/a test-amd64-amd64-dom0pvh-xl-intel 1 build-check(1) blocked in 181448 n/a test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm 1 build-check(1) blocked in 181448 n/a test-amd64-amd64-xl-shadow 1 build-check(1) blocked in 181448 n/a test-amd64-amd64-xl-qemut-debianhvm-i386-xsm 1 build-check(1) blocked in 181448 n/a test-amd64-amd64-xl-rtds 1 build-check(1) blocked in 181448 n/a test-amd64-i386-freebsd10-i386 1 build-check(1) blocked in 181448 n/a test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked in 181448 n/a test-amd64-i386-xl-qemut-debianhvm-amd64 1 build-check(1) blocked in 181448 n/a test-amd64-amd64-xl-multivcpu 1 build-check(1) blocked in 181448 n/a test-amd64-amd64-xl-qemuu-ws16-amd64 1 build-check(1) blocked in 181448 n/a test-amd64-amd64-qemuu-freebsd11-amd64 1 build-check(1) blocked in 181448 n/a test-amd64-amd64-dom0pvh-xl-amd 1 build-check(1) blocked in 181448 n/a test-amd64-i386-xl-qemut-win7-amd64 1 build-check(1) blocked in 181448 n/a test-armhf-armhf-xl-credit2 14 guest-start fail in 181448 like 181354 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail in 181448 like 181363 test-armhf-armhf-xl-rtds 18 guest-start/debian.repeat fail in 181448 like 181363 test-armhf-armhf-xl-rtds 15 migrate-support-check fail in 181448 never pass test-armhf-armhf-xl-rtds 16 saverestore-support-check fail in 181448 never pass test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail in 181448 never pass test-amd64-i386-libvirt-raw 7 xen-install fail like 181363 test-armhf-armhf-libvirt 16 saverestore-support-check fail like 181363 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 181363 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop fail like 181363 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop fail like 181363 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 181363 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 181363 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 181363 test-armhf-armhf-xl-credit1 18 guest-start/debian.repeat fail like 181363 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop fail like 181363 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail like 181363 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop fail like 181363 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 181363 test-amd64-i386-xl-pvshim 14 guest-start fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-i386-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-i386-libvirt 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-multivcpu 15 migrate-support-check fail never pass test-armhf-armhf-xl-multivcpu 16 saverestore-support-check fail never pass test-armhf-armhf-xl-credit2 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit2 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 16 saverestore-support-check fail never pass test-armhf-armhf-xl 15 migrate-support-check fail never pass test-armhf-armhf-xl 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 15 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 15 saverestore-support-check fail never pass test-arm64-arm64-libvirt-raw 3 hosts-allocate starved n/a test-arm64-arm64-libvirt-xsm 3 hosts-allocate starved n/a test-arm64-arm64-xl-credit1 3 hosts-allocate starved n/a test-arm64-arm64-xl-credit2 3 hosts-allocate starved n/a test-arm64-arm64-xl-vhd 3 hosts-allocate starved n/a test-arm64-arm64-xl-xsm 3 hosts-allocate starved n/a test-arm64-arm64-xl 3 hosts-allocate starved n/a test-arm64-arm64-xl-thunderx 3 hosts-allocate starved n/a version targeted for testing: linux 61a2f83e4762ee0c766f86944e612305f5888bcb baseline version: linux f568a20f058fa1e37069cff4aac4187c1650a0e9 Last test of basis 181363 2023-06-10 15:39:59 Z 6 days Testing same since 181425 2023-06-14 10:50:49 Z 2 days 4 attempts ------------------------------------------------------------ People who touched revisions under test: Ai Chao Alan Stern Alex Deucher Alexander Sverdlin Arnd Bergmann Bartosz Golaszewski Ben Hutchings Chia-I Wu Chris Paterson (CIP) David Jander David S. Miller David Sterba Dmitry Torokhov Eric Dumazet Fedor Pchelkin Florian Westphal Greg Kroah-Hartman Guenter Roeck Gustavo A. R. Silva Hangyu Hua Harshit Mogalapalli Ilya Dryomov Ismael Ferreras Morezuelas JaimeLiao Jakub Kicinski Jamal Hadi Salim Jens Axboe Jiri Slaby (SUSE) Jon Hunter Josef Bacik Jozsef Kadlecsik Kuniyuki Iwashima Linus Walleij Linux Kernel Functional Testing Luiz Augusto von Dentz Marc Kleine-Budde Mark Brown Martin Hundebøll Maxime Ripard Michael Chan Min Li Miquel Raynal Oleksij Rempel Pablo Neira Ayuso Paolo Abeni Paulo Alcantara (SUSE) Paulo Alcantara Qingfang DENG Randy Dunlap RenHai Rishabh Bhatnagar Ruihan Li Sasha Levin Shuah Khan Simon Wunderlich Somnath Kotur Stefan Ghinea Stephan Gerhold Steve French Sudip Mukherjee Sungwoo Kim Sven Eckelmann Takashi Iwai Tejun Heo Theodore Ts'o Tijs Van Buggenhout Uwe Kleine-König Ville Syrjälä Vladislav Efanov Wolfram Sang Xiubo Li Ying Hsu YouChing Lin Zixuan Fu jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl starved test-armhf-armhf-xl pass test-amd64-i386-xl pass test-amd64-coresched-i386-xl pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-i386-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-i386-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm starved test-amd64-i386-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm starved test-amd64-i386-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-i386-qemut-rhel6hvm-amd pass test-amd64-i386-qemuu-rhel6hvm-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-i386-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-freebsd10-amd64 pass test-amd64-amd64-qemuu-freebsd11-amd64 pass test-amd64-amd64-qemuu-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-i386-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-i386-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-i386-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-amd64-i386-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale pass test-amd64-amd64-examine-bios pass test-amd64-i386-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 starved test-armhf-armhf-xl-credit1 fail test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 starved test-armhf-armhf-xl-credit2 pass test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine pass test-amd64-i386-examine pass test-amd64-i386-freebsd10-i386 pass test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-i386-qemut-rhel6hvm-intel pass test-amd64-i386-qemuu-rhel6hvm-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt pass test-amd64-i386-libvirt pass test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu pass test-amd64-amd64-pair pass test-amd64-i386-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-i386-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-i386-xl-pvshim fail test-amd64-amd64-pygrub pass test-armhf-armhf-libvirt-qcow2 fail test-amd64-amd64-xl-qcow2 pass test-arm64-arm64-libvirt-raw starved test-armhf-armhf-libvirt-raw pass test-amd64-i386-libvirt-raw fail test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds broken test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-amd64-i386-xl-shadow pass test-arm64-arm64-xl-thunderx starved test-amd64-amd64-examine-uefi pass test-amd64-i386-examine-uefi pass test-amd64-amd64-libvirt-vhd pass test-arm64-arm64-xl-vhd starved test-armhf-armhf-xl-vhd pass test-amd64-i386-xl-vhd pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary broken-job test-armhf-armhf-xl-rtds broken broken-step test-armhf-armhf-xl-rtds host-install(5) broken-job test-armhf-armhf-xl broken Not pushing. (No revision log; it would be 1380 lines long.) From xen-devel-bounces@lists.xenproject.org Sat Jun 17 03:48:02 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sat, 17 Jun 2023 03:48:02 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550573.859671 (Exim 4.92) (envelope-from ) id 1qAMue-00021g-CA; Sat, 17 Jun 2023 03:47:44 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550573.859671; Sat, 17 Jun 2023 03:47:44 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAMue-00021Y-8B; Sat, 17 Jun 2023 03:47:44 +0000 Received: by outflank-mailman (input) for mailman id 550573; Sat, 17 Jun 2023 03:47:43 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAMuc-00021O-UQ; Sat, 17 Jun 2023 03:47:42 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAMuc-0007oF-Ry; Sat, 17 Jun 2023 03:47:42 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAMuc-00039N-HP; Sat, 17 Jun 2023 03:47:42 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qAMuc-0002Sn-Gk; Sat, 17 Jun 2023 03:47:42 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=WcSgY2bxYLRJ9/qEZD+BFptGKz+6T2LTvrKAno5jbBY=; b=AOclPELj15J1f2/y5Uw/bBJWqK vmOyKA6tc8g8Knq4WXnnn2m3XAzkG9iOtpMkN6XZDUzxQSOy9yWI6X6XZkevKjZAdBQ9mFjuWuyW8 z/Fd3f3Xzp6C/eQRSBFIWVQ4AoquAkAB+eZ5UwDtFV6LavjLECsgO+nlYefHIBMxrRUQ=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable-smoke test] 181473: trouble: broken/pass X-Osstest-Failures: xen-unstable-smoke:test-armhf-armhf-xl::broken:regression xen-unstable-smoke:test-armhf-armhf-xl:host-install(5):broken:regression xen-unstable-smoke:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking xen-unstable-smoke:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking xen-unstable-smoke:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: xen=7a25a1501ca941c3e01b0c4e624ace05417f1587 X-Osstest-Versions-That: xen=e533438e3d28158602dce051b032811bdd26377d From: osstest service owner Date: Sat, 17 Jun 2023 03:47:42 +0000 flight 181473 xen-unstable-smoke real [real] http://logs.test-lab.xenproject.org/osstest/logs/181473/ Failures and problems with tests :-( Tests which did not succeed and are blocking, including tests which could not be run: test-armhf-armhf-xl broken test-armhf-armhf-xl 5 host-install(5) broken REGR. vs. 181467 Tests which did not succeed, but are not blocking: test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass version targeted for testing: xen 7a25a1501ca941c3e01b0c4e624ace05417f1587 baseline version: xen e533438e3d28158602dce051b032811bdd26377d Last test of basis 181467 2023-06-16 18:00:24 Z 0 days Testing same since 181470 2023-06-16 21:08:31 Z 0 days 2 attempts ------------------------------------------------------------ People who touched revisions under test: Ayan Kumar Halder Julien Grall Stefano Stabellini jobs: build-arm64-xsm pass build-amd64 pass build-armhf pass build-amd64-libvirt pass test-armhf-armhf-xl broken test-arm64-arm64-xl-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-libvirt pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary broken-job test-armhf-armhf-xl broken broken-step test-armhf-armhf-xl host-install(5) Not pushing. ------------------------------------------------------------ commit 7a25a1501ca941c3e01b0c4e624ace05417f1587 Author: Ayan Kumar Halder Date: Fri Jun 2 13:07:54 2023 +0100 xen/arm: p2m: Enable support for 32bit IPA for ARM_32 Refer ARM DDI 0406C.d ID040418, B3-1345, "A stage 2 translation with an input address range of 31-34 bits can start the translation either: - With a first-level lookup, accessing a first-level translation table with 2-16 entries. - With a second-level lookup, accessing a set of concatenated second-level translation tables" Thus, for 32 bit IPA, there will be no concatenated root level tables. So, the root-order is 0. Also, Refer ARM DDI 0406C.d ID040418, B3-1348 "Determining the required first lookup level for stage 2 translations For a stage 2 translation, the output address range from the stage 1 translations determines the required input address range for the stage 2 translation. The permitted values of VTCR.SL0 are: 0b00 Stage 2 translation lookup must start at the second level. 0b01 Stage 2 translation lookup must start at the first level. VTCR.T0SZ must indicate the required input address range. The size of the input address region is 2^(32-T0SZ) bytes." Thus VTCR.SL0 = 1 (maximum value) and VTCR.T0SZ = 0 when the size of input address region is 2^32 bytes. Signed-off-by: Ayan Kumar Halder Reviewed-by: Michal Orzel Acked-by: Julien Grall commit 7c72147baa221cb49da80498bb0360c4d24a759f Author: Ayan Kumar Halder Date: Fri Jun 2 13:07:53 2023 +0100 xen/arm: Restrict zeroeth_table_offset for ARM_64 When 32 bit physical addresses are used (ie PHYS_ADDR_T_32=y), "va >> ZEROETH_SHIFT" causes an overflow. Also, there is no zeroeth level page table on Arm32. Also took the opportunity to clean up dump_pt_walk(). One could use DECLARE_OFFSETS() macro instead of declaring an array of page table offsets. Signed-off-by: Ayan Kumar Halder Reviewed-by: Michal Orzel Acked-by: Julien Grall commit c3aabf7bd20eefa2c0fa297e53e087126ed9a06a Author: Ayan Kumar Halder Date: Fri Jun 2 13:07:52 2023 +0100 xen/arm: guest_walk: LPAE specific bits should be enclosed within "ifndef CONFIG_PHYS_ADDR_T_32" As the previous patch introduces CONFIG_PHYS_ADDR_T_32 to support 32 bit physical addresses, the code specific to "Large Physical Address Extension" (ie LPAE) should be enclosed within "ifndef CONFIG_PHYS_ADDR_T_32". Refer xen/arch/arm/include/asm/short-desc.h, "short_desc_l1_supersec_t" unsigned int extbase1:4; /* Extended base address, PA[35:32] */ unsigned int extbase2:4; /* Extended base address, PA[39:36] */ Thus, extbase1 and extbase2 are not valid when 32 bit physical addresses are supported. Signed-off-by: Ayan Kumar Halder Acked-by: Stefano Stabellini commit b6733ed0cb1d3a8c030cd46c93fce46a65255c35 Author: Ayan Kumar Halder Date: Fri Jun 2 13:07:51 2023 +0100 xen/arm: Introduce choice to enable 64/32 bit physical addressing Some Arm based hardware platforms which does not support LPAE (eg Cortex-R52), uses 32 bit physical addresses. Also, users may choose to use 32 bits to represent physical addresses for optimization. To support the above use cases, we have introduced arch independent config to choose if the physical address can be represented using 32 bits (PHYS_ADDR_T_32) or 64 bits (!PHYS_ADDR_T_32). For now only ARM_32 provides support to enable 32 bit physical addressing. When PHYS_ADDR_T_32 is defined, PADDR_BITS is set to 32. Note that we use "unsigned long" (not "uint32_t") to denote the datatype of physical address. This is done to avoid using a cast each time PAGE_* macros are used on paddr_t. For eg PAGE_SIZE is defined as unsigned long. Thus, each time PAGE_SIZE is used with paddr_t, the result will be "unsigned long". On 32-bit architecture, "unsigned long" is 32-bit wide. Thus, it can be used to denote physical address. When PHYS_ADDR_T_32 is not defined for ARM_32, PADDR_BITS is set to 40. For ARM_64, PADDR_BITS is set to 48. The last two are same as the current configuration used today on Xen. Signed-off-by: Ayan Kumar Halder Reviewed-by: Michal Orzel Acked-by: Julien Grall commit 6d44fb48bd19c140f8601b645ea2a92895ce4ca9 Author: Ayan Kumar Halder Date: Fri Jun 2 13:07:50 2023 +0100 xen/arm: p2m: Use the pa_range_info table to support arm32 and arm64 Restructure the code so that one can use pa_range_info[] table for both arm32 as well as arm64. Also, removed the hardcoding for P2M_ROOT_ORDER and P2M_ROOT_LEVEL as p2m_root_order can be obtained from the pa_range_info[].root_order and p2m_root_level can be obtained from pa_range_info[].sl0. Refer ARM DDI 0406C.d ID040418, B3-1345, "Use of concatenated first-level translation tables ...However, a 40-bit input address range with a translation granularity of 4KB requires a total of 28 bits of address resolution. Therefore, a stage 2 translation that supports a 40-bit input address range requires two concatenated first-level translation tables,..." Thus, root-order is 1 for 40-bit IPA on arm32. Refer ARM DDI 0406C.d ID040418, B3-1348, "Determining the required first lookup level for stage 2 translations For a stage 2 translation, the output address range from the stage 1 translations determines the required input address range for the stage 2 translation. The permitted values of VTCR.SL0 are: 0b00 Stage 2 translation lookup must start at the second level. 0b01 Stage 2 translation lookup must start at the first level. VTCR.T0SZ must indicate the required input address range. The size of the input address region is 2^(32-T0SZ) bytes." Thus VTCR.SL0 = 1 (maximum value) and VTCR.T0SZ = -8 when the size of input address region is 2^40 bytes. Thus, pa_range_info[].t0sz = 1 (VTCR.S) | 8 (VTCR.T0SZ) ie 11000b which is 24. VTCR.T0SZ, is bits [5:0] for arm64. VTCR.T0SZ is bits [3:0] and S(sign extension), bit[4] for arm32. For this, we have used struct bitfields to convert pa_range_info[].t0sz to its arm32 variant. pa_range_info[] is indexed by ID_AA64MMFR0_EL1.PARange which is present in Arm64 only. This is the reason we do not specify the indices for arm32. Also, we duplicated the entry "{ 40, 24/*24*/, 1, 1 }" between arm64 and arm32. This is done to avoid introducing extra #if-defs. Signed-off-by: Ayan Kumar Halder Reviewed-by: Michal Orzel [julien: Tweak some comments and one check] Acked-by: Julien Grall (qemu changes not included) From xen-devel-bounces@lists.xenproject.org Sat Jun 17 04:28:11 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sat, 17 Jun 2023 04:28:11 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550580.859680 (Exim 4.92) (envelope-from ) id 1qANXe-0006TE-Dk; Sat, 17 Jun 2023 04:28:02 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550580.859680; Sat, 17 Jun 2023 04:28:02 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qANXe-0006T7-At; Sat, 17 Jun 2023 04:28:02 +0000 Received: by outflank-mailman (input) for mailman id 550580; Sat, 17 Jun 2023 04:28:01 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qANXd-0006Sx-Ju; Sat, 17 Jun 2023 04:28:01 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qANXd-0000Tf-Fg; Sat, 17 Jun 2023 04:28:01 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qANXc-0004XV-U4; Sat, 17 Jun 2023 04:28:01 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qANXc-0001hu-Tc; Sat, 17 Jun 2023 04:28:00 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=fqFZaHs43ZitSqegZyJeS6Kosvgu5jVKgarTS5nVkt0=; b=IXSX1vlPD4+mXd6XN0IWbZGPK+ OZaFEarVJPCxpX93ZhHX+DKX4kGrdjNxi+iXtl11rVZqot5WYwurfDobpytFhHDnv5kVR3OAeXGT5 jyz2mQsMJIywVQbcoeO3/g3PI9LtIqzvuROkNoOwcTEOLBL8ACmA00xzj2+2fdwtwD8A=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [qemu-mainline test] 181472: regressions - FAIL X-Osstest-Failures: qemu-mainline:build-amd64-xsm:xen-build:fail:regression qemu-mainline:build-arm64:xen-build:fail:regression qemu-mainline:build-arm64-xsm:xen-build:fail:regression qemu-mainline:build-amd64:xen-build:fail:regression qemu-mainline:build-i386:xen-build:fail:regression qemu-mainline:build-i386-xsm:xen-build:fail:regression qemu-mainline:build-armhf:xen-build:fail:regression qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-i386:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:build-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:build-arm64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:build-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:build-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pygrub:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking X-Osstest-Versions-This: qemuu=5692a39f329413a00020a61fff95aff6b9884a73 X-Osstest-Versions-That: qemuu=6972ef1440a9d685482d78672620a7482f2bd09a From: osstest service owner Date: Sat, 17 Jun 2023 04:28:00 +0000 flight 181472 qemu-mainline real [real] http://logs.test-lab.xenproject.org/osstest/logs/181472/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-amd64-xsm 6 xen-build fail REGR. vs. 180691 build-arm64 6 xen-build fail REGR. vs. 180691 build-arm64-xsm 6 xen-build fail REGR. vs. 180691 build-amd64 6 xen-build fail REGR. vs. 180691 build-i386 6 xen-build fail REGR. vs. 180691 build-i386-xsm 6 xen-build fail REGR. vs. 180691 build-armhf 6 xen-build fail REGR. vs. 180691 Tests which did not succeed, but are not blocking: test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-xl-xsm 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-raw 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-xsm 1 build-check(1) blocked n/a test-arm64-arm64-xl 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit1 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit2 1 build-check(1) blocked n/a test-arm64-arm64-xl-thunderx 1 build-check(1) blocked n/a test-arm64-arm64-xl-vhd 1 build-check(1) blocked n/a test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a test-armhf-armhf-libvirt 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-qcow2 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-raw 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a test-armhf-armhf-xl-arndale 1 build-check(1) blocked n/a test-armhf-armhf-xl-multivcpu 1 build-check(1) blocked n/a test-armhf-armhf-xl-rtds 1 build-check(1) blocked n/a test-armhf-armhf-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-amd 1 build-check(1) blocked n/a test-amd64-i386-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-raw 1 build-check(1) blocked n/a test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-i386 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-amd64 1 build-check(1) blocked n/a test-amd64-coresched-i386-xl 1 build-check(1) blocked n/a test-amd64-coresched-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-xsm 1 build-check(1) blocked n/a build-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-shadow 1 build-check(1) blocked n/a test-amd64-amd64-xl-rtds 1 build-check(1) blocked n/a build-arm64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a build-armhf-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a build-i386-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-amd 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-pair 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-qcow2 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-vhd 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvshim 1 build-check(1) blocked n/a test-amd64-amd64-pair 1 build-check(1) blocked n/a test-amd64-amd64-pygrub 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-intel 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd11-amd64 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd12-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-multivcpu 1 build-check(1) blocked n/a test-amd64-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit1 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit1 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-intel 1 build-check(1) blocked n/a test-amd64-i386-xl 1 build-check(1) blocked n/a test-amd64-i386-xl-pvshim 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a version targeted for testing: qemuu 5692a39f329413a00020a61fff95aff6b9884a73 baseline version: qemuu 6972ef1440a9d685482d78672620a7482f2bd09a Last test of basis 180691 2023-05-17 10:45:22 Z 30 days Failing since 180699 2023-05-18 07:21:24 Z 29 days 108 attempts Testing same since 181472 2023-06-16 21:40:49 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Afonso Bordado Akihiko Odaki Akihiro Suda Alex Bennée Alex Williamson Alexander Bulekov Alexander Graf Alexander Ivanov Alistair Francis Anastasia Belova Andrea Bolognani Andreas Schwab Andrew Jeffery Ani Sinha Ani Sinha Anthony PERARD Anton Johansson Antonio Caggiano BALATON Zoltan Bastian Koppelmann Bernhard Beschow Bin Meng Brian Cain Brice Goglin Camilla Conte Carlos Santos Christian Schoenebeck Chuck Zmudzinski Cindy Lu Clément Chigot Corey Minyard Cornelia Huck Cédric Le Goater Cédric Le Goater Daniel Henrique Barboza Daniel Henrique Barboza Daniel P. Berrangé Daniil Kovalev David Hildenbrand David Woodhouse Emanuele Giuseppe Esposito Enze Li Eric Auger Eric Blake Eric DeVolder Erico Nunes Eugenio Pérez Fabiano Rosas Fan Ni Fiona Ebner Francesco Cagnin Francisco Iglesias Frederic Barrat Gavin Shan Gregory Price Gregory Price Hanna Czenczek Hao Zeng Hawkins Jiawei Himanshu Chauhan Igor Mammedov Ilya Leoshkevich Ira Weiny Ivan Klokov Jagannathan Raman Jason Wang Jean-Louis Dupond Jean-Philippe Brucker Jiaxun Yang Joao Martins John Snow Jonathan Cameron Juan Quintela Junqiang Wang Kevin Wolf Laurent Vivier Lei Yang Leonardo Bras Maksim Davydov Marc-André Lureau Marcin Juszkiewicz Marco Liebel Mark Cave-Ayland Markus Armbruster Matheus Tavares Bernardino Mattias Nissler Mauro Matteo Cascella Max Fritz Mayuresh Chitale Michael S. Tsirkin Michael Tokarev Michal Privoznik Milan Zamazal Mostafa Saleh Nicholas Piggin Nicolas Saenz Julienne Niek Linnenbank Niklas Cassel Ninad Palsule Palmer Dabbelt Paolo Bonzini Patrick Venture Peter Maydell Peter Xu Philippe Mathieu-Daudé Philippe Mathieu-Daudé qianfan Zhao Raghu H Rene Engel Richard Henderson Richard Purdie Ricky Zhou Ryan Wendland Sebastian Ott Sergio Lopez Sid Manning Song Gao Stefan Hajnoczi Stefano Garzarella Steve Sistare Sunil V L Taylor Simpson Thomas Huth Thomas Weißschuh timothee.cocault@gmail.com Timothée Cocault Tommy Wu Vikram Garhwal Viktor Prutyanov Vitaly Cheptsov Vivek Kasireddy Vladimir Sementsov-Ogievskiy Volker Rümelin Weiwei Li Xiao Wang Xinyu Li Yin Wang Zeng Hao Zhenyu Zhang Zhenzhong Duan Zhuojia Shen jobs: build-amd64-xsm fail build-arm64-xsm fail build-i386-xsm fail build-amd64 fail build-arm64 fail build-armhf fail build-i386 fail build-amd64-libvirt blocked build-arm64-libvirt blocked build-armhf-libvirt blocked build-i386-libvirt blocked build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl blocked test-amd64-coresched-amd64-xl blocked test-arm64-arm64-xl blocked test-armhf-armhf-xl blocked test-amd64-i386-xl blocked test-amd64-coresched-i386-xl blocked test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-i386-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-amd64-libvirt-xsm blocked test-arm64-arm64-libvirt-xsm blocked test-amd64-i386-libvirt-xsm blocked test-amd64-amd64-xl-xsm blocked test-arm64-arm64-xl-xsm blocked test-amd64-i386-xl-xsm blocked test-amd64-amd64-qemuu-nested-amd blocked test-amd64-amd64-xl-pvhv2-amd blocked test-amd64-i386-qemuu-rhel6hvm-amd blocked test-amd64-amd64-dom0pvh-xl-amd blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-freebsd10-amd64 blocked test-amd64-amd64-qemuu-freebsd11-amd64 blocked test-amd64-amd64-qemuu-freebsd12-amd64 blocked test-amd64-amd64-xl-qemuu-ovmf-amd64 blocked test-amd64-i386-xl-qemuu-ovmf-amd64 blocked test-amd64-amd64-xl-qemuu-win7-amd64 blocked test-amd64-i386-xl-qemuu-win7-amd64 blocked test-amd64-amd64-xl-qemuu-ws16-amd64 blocked test-amd64-i386-xl-qemuu-ws16-amd64 blocked test-armhf-armhf-xl-arndale blocked test-amd64-amd64-xl-credit1 blocked test-arm64-arm64-xl-credit1 blocked test-armhf-armhf-xl-credit1 blocked test-amd64-amd64-xl-credit2 blocked test-arm64-arm64-xl-credit2 blocked test-armhf-armhf-xl-credit2 blocked test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-freebsd10-i386 blocked test-amd64-amd64-qemuu-nested-intel blocked test-amd64-amd64-xl-pvhv2-intel blocked test-amd64-i386-qemuu-rhel6hvm-intel blocked test-amd64-amd64-dom0pvh-xl-intel blocked test-amd64-amd64-libvirt blocked test-armhf-armhf-libvirt blocked test-amd64-i386-libvirt blocked test-amd64-amd64-xl-multivcpu blocked test-armhf-armhf-xl-multivcpu blocked test-amd64-amd64-pair blocked test-amd64-i386-pair blocked test-amd64-amd64-libvirt-pair blocked test-amd64-i386-libvirt-pair blocked test-amd64-amd64-xl-pvshim blocked test-amd64-i386-xl-pvshim blocked test-amd64-amd64-pygrub blocked test-armhf-armhf-libvirt-qcow2 blocked test-amd64-amd64-xl-qcow2 blocked test-arm64-arm64-libvirt-raw blocked test-armhf-armhf-libvirt-raw blocked test-amd64-i386-libvirt-raw blocked test-amd64-amd64-xl-rtds blocked test-armhf-armhf-xl-rtds blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-amd64-xl-shadow blocked test-amd64-i386-xl-shadow blocked test-arm64-arm64-xl-thunderx blocked test-amd64-amd64-libvirt-vhd blocked test-arm64-arm64-xl-vhd blocked test-armhf-armhf-xl-vhd blocked test-amd64-i386-xl-vhd blocked ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 18855 lines long.) From xen-devel-bounces@lists.xenproject.org Sat Jun 17 06:56:32 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sat, 17 Jun 2023 06:56:32 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550589.859690 (Exim 4.92) (envelope-from ) id 1qAPr4-00059b-Q6; Sat, 17 Jun 2023 06:56:14 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550589.859690; Sat, 17 Jun 2023 06:56:14 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAPr4-00059U-NQ; Sat, 17 Jun 2023 06:56:14 +0000 Received: by outflank-mailman (input) for mailman id 550589; Sat, 17 Jun 2023 06:56:13 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAPr3-00059J-A5; Sat, 17 Jun 2023 06:56:13 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAPr3-0004C3-4u; Sat, 17 Jun 2023 06:56:13 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAPr2-0000BC-Hv; Sat, 17 Jun 2023 06:56:12 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qAPr2-0002ye-HL; Sat, 17 Jun 2023 06:56:12 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=NWXERz8vpBiQwX0TtCpfo0wHt3WC68zYDIRzeB3vARc=; b=zO9vwsPXqW3c14cv/kDvpaynaV 2CwFGFbmzewFgTqSWg42H4Ba1YlSjqyCk/oijrPnBtNSw9eFGF4Btnxbi7NXxDXAKgjhZqjCrotSU /IA8s3kA2yE3Y3CZNf36hUNVxQpyjl16Zfb5E/VbrXCDOiGIMooh/ik4LozVBJbsjKaU=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [linux-linus test] 181464: regressions - FAIL X-Osstest-Failures: linux-linus:test-armhf-armhf-xl-credit1:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-pvhv2-intel:guest-start/debian.repeat:fail:heisenbug linux-linus:test-arm64-arm64-libvirt-raw:guest-start/debian.repeat:fail:heisenbug linux-linus:test-armhf-armhf-xl-multivcpu:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-credit2:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-raw:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking linux-linus:test-armhf-armhf-libvirt:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-arndale:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-examine:reboot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-qcow2:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-rtds:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-vhd:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-raw:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-qcow2:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: linux=40f71e7cd3c6ac04293556ab0504a372393838ff X-Osstest-Versions-That: linux=6c538e1adbfc696ac4747fb10d63e704344f763d From: osstest service owner Date: Sat, 17 Jun 2023 06:56:12 +0000 flight 181464 linux-linus real [real] flight 181475 linux-linus real-retest [real] http://logs.test-lab.xenproject.org/osstest/logs/181464/ http://logs.test-lab.xenproject.org/osstest/logs/181475/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: test-armhf-armhf-xl-credit1 8 xen-boot fail REGR. vs. 180278 Tests which are failing intermittently (not blocking): test-amd64-amd64-xl-pvhv2-intel 22 guest-start/debian.repeat fail pass in 181475-retest test-arm64-arm64-libvirt-raw 17 guest-start/debian.repeat fail pass in 181475-retest Tests which did not succeed, but are not blocking: test-armhf-armhf-xl-multivcpu 8 xen-boot fail like 180278 test-armhf-armhf-xl 8 xen-boot fail like 180278 test-armhf-armhf-xl-credit2 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 180278 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 180278 test-armhf-armhf-libvirt-raw 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 180278 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 180278 test-armhf-armhf-libvirt 8 xen-boot fail like 180278 test-armhf-armhf-xl-arndale 8 xen-boot fail like 180278 test-armhf-armhf-examine 8 reboot fail like 180278 test-armhf-armhf-libvirt-qcow2 8 xen-boot fail like 180278 test-armhf-armhf-xl-rtds 8 xen-boot fail like 180278 test-armhf-armhf-xl-vhd 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 180278 test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qcow2 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass version targeted for testing: linux 40f71e7cd3c6ac04293556ab0504a372393838ff baseline version: linux 6c538e1adbfc696ac4747fb10d63e704344f763d Last test of basis 180278 2023-04-16 19:41:46 Z 61 days Failing since 180281 2023-04-17 06:24:36 Z 61 days 115 attempts Testing same since 181464 2023-06-16 10:38:42 Z 0 days 1 attempts ------------------------------------------------------------ 2717 people touched revisions under test, not listing them all jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl fail test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-freebsd11-amd64 pass test-amd64-amd64-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale fail test-amd64-amd64-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 fail test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 fail test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine fail test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel fail test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt fail test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu fail test-amd64-amd64-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-amd64-pygrub pass test-amd64-amd64-libvirt-qcow2 pass test-armhf-armhf-libvirt-qcow2 fail test-amd64-amd64-libvirt-raw pass test-arm64-arm64-libvirt-raw fail test-armhf-armhf-libvirt-raw fail test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds fail test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-amd64-xl-vhd pass test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd fail ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 346022 lines long.) From xen-devel-bounces@lists.xenproject.org Sat Jun 17 07:19:59 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sat, 17 Jun 2023 07:19:59 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550596.859702 (Exim 4.92) (envelope-from ) id 1qAQDv-0007pi-Q5; Sat, 17 Jun 2023 07:19:51 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550596.859702; Sat, 17 Jun 2023 07:19:51 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAQDv-0007pb-Ld; Sat, 17 Jun 2023 07:19:51 +0000 Received: by outflank-mailman (input) for mailman id 550596; Sat, 17 Jun 2023 07:19:50 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAQDt-0007pP-Uz; Sat, 17 Jun 2023 07:19:49 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAQDt-0004kA-RZ; Sat, 17 Jun 2023 07:19:49 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAQDs-0000oF-L6; Sat, 17 Jun 2023 07:19:48 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qAQDs-0000Rz-Kd; Sat, 17 Jun 2023 07:19:48 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=iIR7ESnO7FjFB6SpnBAHzbWOy0NvXMQUg7GFjq9d4Zg=; b=B0BrW7ZZfvVVaqZwrPPqFpAoq/ 14AzPYsTCrRA0gNYg1PfAOE4BTEqSUVGbioHH+8U26wv4BsGmrhRdlkTlzoH5E3FWUW11bafEiIcD 22+3TP5BsVhWhJhGEywnZtSr2CRED0AU7Np9eqkAiaEhk0d7pys/z9uj7Q++z9zomZJI=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable-smoke test] 181476: tolerable all pass - PUSHED X-Osstest-Failures: xen-unstable-smoke:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking xen-unstable-smoke:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking xen-unstable-smoke:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking xen-unstable-smoke:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking xen-unstable-smoke:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: xen=7a25a1501ca941c3e01b0c4e624ace05417f1587 X-Osstest-Versions-That: xen=e533438e3d28158602dce051b032811bdd26377d From: osstest service owner Date: Sat, 17 Jun 2023 07:19:48 +0000 flight 181476 xen-unstable-smoke real [real] http://logs.test-lab.xenproject.org/osstest/logs/181476/ Failures :-/ but no regressions. Tests which did not succeed, but are not blocking: test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-armhf-armhf-xl 15 migrate-support-check fail never pass test-armhf-armhf-xl 16 saverestore-support-check fail never pass version targeted for testing: xen 7a25a1501ca941c3e01b0c4e624ace05417f1587 baseline version: xen e533438e3d28158602dce051b032811bdd26377d Last test of basis 181467 2023-06-16 18:00:24 Z 0 days Testing same since 181470 2023-06-16 21:08:31 Z 0 days 3 attempts ------------------------------------------------------------ People who touched revisions under test: Ayan Kumar Halder Julien Grall Stefano Stabellini jobs: build-arm64-xsm pass build-amd64 pass build-armhf pass build-amd64-libvirt pass test-armhf-armhf-xl pass test-arm64-arm64-xl-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-libvirt pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Pushing revision : To xenbits.xen.org:/home/xen/git/xen.git e533438e3d..7a25a1501c 7a25a1501ca941c3e01b0c4e624ace05417f1587 -> smoke From xen-devel-bounces@lists.xenproject.org Sat Jun 17 11:26:56 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sat, 17 Jun 2023 11:26:56 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550633.859771 (Exim 4.92) (envelope-from ) id 1qAU4k-0008Qe-1e; Sat, 17 Jun 2023 11:26:38 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550633.859771; Sat, 17 Jun 2023 11:26:38 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAU4j-0008QX-Uu; Sat, 17 Jun 2023 11:26:37 +0000 Received: by outflank-mailman (input) for mailman id 550633; Sat, 17 Jun 2023 11:26:35 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAU4h-0008QN-S6; Sat, 17 Jun 2023 11:26:35 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAU4h-0002R6-PO; Sat, 17 Jun 2023 11:26:35 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAU4h-0001pb-8Y; Sat, 17 Jun 2023 11:26:35 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qAU4h-0005Rq-7y; Sat, 17 Jun 2023 11:26:35 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=hd74fqjF0cYV2AxhCAvplp24vqORC1uAHBmbfO6J09A=; b=qzJ6R16DraopJw2g5MW4RqSuG/ lxYXSBBhwuOkjdzrvQsYArsfBTZJvOQYAv0eYKZyyFmSvQ7Tyj/N752A2lku2jL1jcvjI9mWlbBC4 IHCuEZMQZ5bI3tw5vJJlm0iYukrtN0PkIpce5tf6c90dcwCX6g8q2LFK16mB72e3JZuQ=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable test] 181471: tolerable FAIL - PUSHED X-Osstest-Failures: xen-unstable:test-amd64-i386-freebsd10-i386:xen-install:fail:heisenbug xen-unstable:test-amd64-i386-freebsd10-amd64:xen-install:fail:heisenbug xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking X-Osstest-Versions-This: xen=e533438e3d28158602dce051b032811bdd26377d X-Osstest-Versions-That: xen=87c621d0ef75e5f95987d66811ed1fd7129208d1 From: osstest service owner Date: Sat, 17 Jun 2023 11:26:35 +0000 flight 181471 xen-unstable real [real] flight 181480 xen-unstable real-retest [real] http://logs.test-lab.xenproject.org/osstest/logs/181471/ http://logs.test-lab.xenproject.org/osstest/logs/181480/ Failures :-/ but no regressions. Tests which are failing intermittently (not blocking): test-amd64-i386-freebsd10-i386 7 xen-install fail pass in 181480-retest test-amd64-i386-freebsd10-amd64 7 xen-install fail pass in 181480-retest Tests which did not succeed, but are not blocking: test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 181440 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop fail like 181440 test-armhf-armhf-libvirt 16 saverestore-support-check fail like 181440 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 181440 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 181440 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop fail like 181440 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop fail like 181440 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail like 181440 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 181440 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail like 181440 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop fail like 181440 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 181440 test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-i386-xl-pvshim 14 guest-start fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-i386-libvirt 15 migrate-support-check fail never pass test-amd64-i386-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-i386-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 15 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass test-armhf-armhf-libvirt 15 migrate-support-check fail never pass test-armhf-armhf-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 15 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 16 saverestore-support-check fail never pass test-armhf-armhf-xl-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 15 saverestore-support-check fail never pass test-armhf-armhf-xl 15 migrate-support-check fail never pass test-armhf-armhf-xl 16 saverestore-support-check fail never pass test-armhf-armhf-xl-multivcpu 15 migrate-support-check fail never pass test-armhf-armhf-xl-multivcpu 16 saverestore-support-check fail never pass test-armhf-armhf-xl-credit1 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 16 saverestore-support-check fail never pass test-armhf-armhf-xl-credit2 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit2 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail never pass version targeted for testing: xen e533438e3d28158602dce051b032811bdd26377d baseline version: xen 87c621d0ef75e5f95987d66811ed1fd7129208d1 Last test of basis 181440 2023-06-15 06:54:36 Z 2 days Failing since 181460 2023-06-16 00:10:47 Z 1 days 2 attempts Testing same since 181471 2023-06-16 21:09:52 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Andrew Cooper Anthony PERARD Federico Serafini Jan Beulich Julien Grall Michal Orzel Shawn Anastasio Shawn Anastasio Stefano Stabellini jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64-xtf pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-prev pass build-i386-prev pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-xtf-amd64-amd64-1 pass test-xtf-amd64-amd64-2 pass test-xtf-amd64-amd64-3 pass test-xtf-amd64-amd64-4 pass test-xtf-amd64-amd64-5 pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl pass test-amd64-i386-xl pass test-amd64-coresched-i386-xl pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-i386-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-i386-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-i386-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-i386-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-i386-qemut-rhel6hvm-amd pass test-amd64-i386-qemuu-rhel6hvm-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-i386-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-freebsd10-amd64 fail test-amd64-amd64-qemuu-freebsd11-amd64 pass test-amd64-amd64-qemuu-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-i386-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-i386-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-i386-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-amd64-i386-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale pass test-amd64-amd64-examine-bios pass test-amd64-i386-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 pass test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 pass test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine pass test-amd64-i386-examine pass test-amd64-i386-freebsd10-i386 fail test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-i386-qemut-rhel6hvm-intel pass test-amd64-i386-qemuu-rhel6hvm-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt pass test-amd64-i386-libvirt pass test-amd64-amd64-livepatch pass test-amd64-i386-livepatch pass test-amd64-amd64-migrupgrade pass test-amd64-i386-migrupgrade pass test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu pass test-amd64-amd64-pair pass test-amd64-i386-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-i386-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-i386-xl-pvshim fail test-amd64-amd64-pygrub pass test-armhf-armhf-libvirt-qcow2 pass test-amd64-amd64-xl-qcow2 pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw pass test-amd64-i386-libvirt-raw pass test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds pass test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-amd64-i386-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-i386-examine-uefi pass test-amd64-amd64-libvirt-vhd pass test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd pass test-amd64-i386-xl-vhd pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Pushing revision : To xenbits.xen.org:/home/xen/git/xen.git 87c621d0ef..e533438e3d e533438e3d28158602dce051b032811bdd26377d -> master From xen-devel-bounces@lists.xenproject.org Sat Jun 17 13:19:35 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sat, 17 Jun 2023 13:19:35 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550651.859781 (Exim 4.92) (envelope-from ) id 1qAVpi-0002um-M4; Sat, 17 Jun 2023 13:19:14 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550651.859781; Sat, 17 Jun 2023 13:19:14 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAVpi-0002uf-Ir; Sat, 17 Jun 2023 13:19:14 +0000 Received: by outflank-mailman (input) for mailman id 550651; Sat, 17 Jun 2023 13:19:13 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAVph-0002uV-OA; Sat, 17 Jun 2023 13:19:13 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAVph-00058G-JF; Sat, 17 Jun 2023 13:19:13 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAVph-0005a0-6F; Sat, 17 Jun 2023 13:19:13 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qAVph-0008Ui-5p; Sat, 17 Jun 2023 13:19:13 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=q7ac15g4kYsNHAtuvXsoXeSOK0jtKT1naH0Ab6OXOcU=; b=YrNUtsY0HzkjE7W5FBzLbROFQt apURWEPEiTb/gWprzKN9M1Fun9LDP7Jk5KIZKMJ+WflmNSOoAX8RdG8IBnQOkF43wIfHtjc7/kZOF 3APoMlDyExDosxQ59H2L0AnUWE8w013Ua3idO5KtZBkAQ8k8Hm4zpJk3W+eAZXTpYyn8=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [linux-5.4 test] 181474: regressions - FAIL X-Osstest-Failures: linux-5.4:test-armhf-armhf-xl::broken:regression linux-5.4:test-armhf-armhf-xl-rtds::broken:regression linux-5.4:build-i386-pvops:kernel-build:fail:regression linux-5.4:build-armhf-pvops:kernel-build:fail:regression linux-5.4:build-amd64-pvops:kernel-build:fail:regression linux-5.4:build-arm64-pvops:kernel-build:fail:regression linux-5.4:test-armhf-armhf-xl:host-install(5):broken:heisenbug linux-5.4:test-armhf-armhf-xl-rtds:host-install(5):broken:heisenbug linux-5.4:test-armhf-armhf-libvirt-raw:guest-start:fail:heisenbug linux-5.4:test-armhf-armhf-libvirt-qcow2:debian-di-install:fail:heisenbug linux-5.4:test-amd64-amd64-xl-rtds:xen-boot:fail:heisenbug linux-5.4:test-amd64-amd64-qemuu-freebsd12-amd64:guest-start/freebsd.repeat:fail:heisenbug linux-5.4:test-amd64-amd64-qemuu-freebsd12-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-credit2:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-qemuu-nested-amd:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-rtds:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking linux-5.4:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking linux-5.4:test-arm64-arm64-xl:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-dom0pvh-xl-intel:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-pvhv2-intel:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-examine:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qemut-debianhvm-amd64:build-check(1):blocked:nonblocking linux-5.4:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-pvhv2-amd:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qemut-win7-amd64:build-check(1):blocked:nonblocking linux-5.4:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-examine-bios:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qemut-ws16-amd64:build-check(1):blocked:nonblocking linux-5.4:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-pvshim:build-check(1):blocked:nonblocking linux-5.4:test-amd64-coresched-amd64-xl:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-examine-uefi:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-credit1:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-multivcpu:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-pygrub:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-qemuu-freebsd11-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-shadow:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-xsm:build-check(1):blocked:nonblocking linux-5.4:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qcow2:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking linux-5.4:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-pair:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-dom0pvh-xl-amd:build-check(1):blocked:nonblocking linux-5.4:test-arm64-arm64-examine:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking linux-5.4:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-qemuu-nested-intel:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-libvirt-raw:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-pair:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-qemut-rhel6hvm-amd:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-qemut-rhel6hvm-intel:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-qemuu-rhel6hvm-amd:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-qemuu-rhel6hvm-intel:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-pvshim:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-qemut-debianhvm-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-qemut-debianhvm-i386-xsm:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-qemut-win7-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-qemut-ws16-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-shadow:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-vhd:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-xsm:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-examine:build-check(1):blocked:nonblocking linux-5.4:test-amd64-coresched-i386-xl:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-examine-bios:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-examine-uefi:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-freebsd10-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-freebsd10-i386:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-examine:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-xl:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-xl-credit2:guest-start:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-rtds:guest-start/debian.repeat:fail:nonblocking linux-5.4:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-i386-libvirt-raw:xen-install:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking linux-5.4:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking linux-5.4:test-armhf-armhf-xl-credit1:guest-start/debian.repeat:fail:nonblocking linux-5.4:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking linux-5.4:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking linux-5.4:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking linux-5.4:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking linux-5.4:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking linux-5.4:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-libvirt-raw:hosts-allocate:starved:nonblocking linux-5.4:test-arm64-arm64-xl-credit1:hosts-allocate:starved:nonblocking linux-5.4:test-arm64-arm64-libvirt-xsm:hosts-allocate:starved:nonblocking linux-5.4:test-arm64-arm64-xl-credit2:hosts-allocate:starved:nonblocking linux-5.4:test-arm64-arm64-xl-xsm:hosts-allocate:starved:nonblocking linux-5.4:test-arm64-arm64-xl-vhd:hosts-allocate:starved:nonblocking linux-5.4:test-arm64-arm64-xl-thunderx:hosts-allocate:starved:nonblocking linux-5.4:test-arm64-arm64-xl:hosts-allocate:starved:nonblocking X-Osstest-Versions-This: linux=61a2f83e4762ee0c766f86944e612305f5888bcb X-Osstest-Versions-That: linux=f568a20f058fa1e37069cff4aac4187c1650a0e9 From: osstest service owner Date: Sat, 17 Jun 2023 13:19:13 +0000 flight 181474 linux-5.4 real [real] http://logs.test-lab.xenproject.org/osstest/logs/181474/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: test-armhf-armhf-xl broken in 181448 test-armhf-armhf-xl-rtds broken in 181462 build-i386-pvops 6 kernel-build fail REGR. vs. 181363 build-armhf-pvops 6 kernel-build fail REGR. vs. 181363 build-amd64-pvops 6 kernel-build fail in 181448 REGR. vs. 181363 build-arm64-pvops 6 kernel-build fail in 181448 REGR. vs. 181363 Tests which are failing intermittently (not blocking): test-armhf-armhf-xl 5 host-install(5) broken in 181448 pass in 181462 test-armhf-armhf-xl-rtds 5 host-install(5) broken in 181462 pass in 181448 test-armhf-armhf-libvirt-raw 13 guest-start fail in 181448 pass in 181462 test-armhf-armhf-libvirt-qcow2 12 debian-di-install fail in 181462 pass in 181448 test-amd64-amd64-xl-rtds 8 xen-boot fail pass in 181462 test-amd64-amd64-qemuu-freebsd12-amd64 21 guest-start/freebsd.repeat fail pass in 181462 Tests which did not succeed, but are not blocking: test-amd64-amd64-qemuu-freebsd12-amd64 1 build-check(1) blocked in 181448 n/a test-amd64-amd64-xl-credit2 1 build-check(1) blocked in 181448 n/a test-amd64-amd64-qemuu-nested-amd 1 build-check(1) blocked in 181448 n/a test-amd64-amd64-xl-rtds 1 build-check(1) blocked in 181448 n/a test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked in 181448 n/a test-arm64-arm64-xl-credit2 1 build-check(1) blocked in 181448 n/a test-arm64-arm64-xl 1 build-check(1) blocked in 181448 n/a test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm 1 build-check(1) blocked in 181448 n/a test-amd64-amd64-dom0pvh-xl-intel 1 build-check(1) blocked in 181448 n/a test-amd64-amd64-xl-pvhv2-intel 1 build-check(1) blocked in 181448 n/a test-amd64-amd64-examine 1 build-check(1) blocked in 181448 n/a test-amd64-amd64-xl-qemut-debianhvm-amd64 1 build-check(1) blocked in 181448 n/a test-arm64-arm64-xl-vhd 1 build-check(1) blocked in 181448 n/a test-amd64-amd64-xl-qemut-debianhvm-i386-xsm 1 build-check(1) blocked in 181448 n/a test-amd64-amd64-xl-pvhv2-amd 1 build-check(1) blocked in 181448 n/a test-amd64-amd64-xl-qemut-win7-amd64 1 build-check(1) blocked in 181448 n/a test-arm64-arm64-libvirt-raw 1 build-check(1) blocked in 181448 n/a test-amd64-amd64-xl-qemuu-win7-amd64 1 build-check(1) blocked in 181448 n/a test-amd64-amd64-examine-bios 1 build-check(1) blocked in 181448 n/a test-amd64-amd64-xl-qemuu-ws16-amd64 1 build-check(1) blocked in 181448 n/a test-amd64-amd64-xl-qemut-ws16-amd64 1 build-check(1) blocked in 181448 n/a test-arm64-arm64-xl-xsm 1 build-check(1) blocked in 181448 n/a test-amd64-amd64-xl-pvshim 1 build-check(1) blocked in 181448 n/a test-amd64-coresched-amd64-xl 1 build-check(1) blocked in 181448 n/a test-amd64-amd64-examine-uefi 1 build-check(1) blocked in 181448 n/a test-amd64-amd64-xl-credit1 1 build-check(1) blocked in 181448 n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked in 181448 n/a test-amd64-amd64-xl-qemuu-ovmf-amd64 1 build-check(1) blocked in 181448 n/a test-amd64-amd64-xl-multivcpu 1 build-check(1) blocked in 181448 n/a test-amd64-amd64-libvirt-pair 1 build-check(1) blocked in 181448 n/a test-amd64-amd64-pygrub 1 build-check(1) blocked in 181448 n/a test-amd64-amd64-xl 1 build-check(1) blocked in 181448 n/a test-amd64-amd64-qemuu-freebsd11-amd64 1 build-check(1) blocked in 181448 n/a test-amd64-amd64-xl-shadow 1 build-check(1) blocked in 181448 n/a test-amd64-amd64-xl-xsm 1 build-check(1) blocked in 181448 n/a test-arm64-arm64-xl-thunderx 1 build-check(1) blocked in 181448 n/a test-amd64-amd64-libvirt 1 build-check(1) blocked in 181448 n/a test-amd64-amd64-xl-qcow2 1 build-check(1) blocked in 181448 n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked in 181448 n/a test-amd64-amd64-libvirt-vhd 1 build-check(1) blocked in 181448 n/a test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked in 181448 n/a test-arm64-arm64-xl-credit1 1 build-check(1) blocked in 181448 n/a test-amd64-amd64-pair 1 build-check(1) blocked in 181448 n/a test-amd64-amd64-dom0pvh-xl-amd 1 build-check(1) blocked in 181448 n/a test-arm64-arm64-examine 1 build-check(1) blocked in 181448 n/a test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked in 181448 n/a test-amd64-amd64-libvirt-xsm 1 build-check(1) blocked in 181448 n/a test-arm64-arm64-libvirt-xsm 1 build-check(1) blocked in 181448 n/a test-amd64-amd64-qemuu-nested-intel 1 build-check(1) blocked in 181448 n/a test-amd64-i386-libvirt 1 build-check(1) blocked n/a test-amd64-i386-libvirt-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-raw 1 build-check(1) blocked n/a test-amd64-i386-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-i386-pair 1 build-check(1) blocked n/a test-amd64-i386-qemut-rhel6hvm-amd 1 build-check(1) blocked n/a test-amd64-i386-qemut-rhel6hvm-intel 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-amd 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-intel 1 build-check(1) blocked n/a test-amd64-i386-xl 1 build-check(1) blocked n/a test-amd64-i386-xl-pvshim 1 build-check(1) blocked n/a test-amd64-i386-xl-qemut-debianhvm-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemut-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-i386-xl-qemut-win7-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemut-ws16-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-xl-xsm 1 build-check(1) blocked n/a test-amd64-i386-examine 1 build-check(1) blocked n/a test-amd64-coresched-i386-xl 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-i386-examine-bios 1 build-check(1) blocked n/a test-amd64-i386-examine-uefi 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-amd64 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-i386 1 build-check(1) blocked n/a test-armhf-armhf-examine 1 build-check(1) blocked n/a test-armhf-armhf-libvirt 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-qcow2 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-raw 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a test-armhf-armhf-xl-arndale 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit1 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-multivcpu 1 build-check(1) blocked n/a test-armhf-armhf-xl-rtds 1 build-check(1) blocked n/a test-armhf-armhf-xl-vhd 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit2 14 guest-start fail in 181448 like 181354 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail in 181448 like 181363 test-armhf-armhf-xl-rtds 18 guest-start/debian.repeat fail in 181448 like 181363 test-armhf-armhf-xl-rtds 15 migrate-support-check fail in 181448 never pass test-armhf-armhf-xl-rtds 16 saverestore-support-check fail in 181448 never pass test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail in 181448 never pass test-amd64-i386-libvirt-raw 7 xen-install fail in 181462 like 181363 test-armhf-armhf-libvirt 16 saverestore-support-check fail in 181462 like 181363 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop fail in 181462 like 181363 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop fail in 181462 like 181363 test-armhf-armhf-xl-credit1 18 guest-start/debian.repeat fail in 181462 like 181363 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop fail in 181462 like 181363 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail in 181462 like 181363 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop fail in 181462 like 181363 test-amd64-i386-xl-pvshim 14 guest-start fail in 181462 never pass test-amd64-i386-libvirt-xsm 15 migrate-support-check fail in 181462 never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail in 181462 never pass test-amd64-i386-libvirt 15 migrate-support-check fail in 181462 never pass test-armhf-armhf-xl-multivcpu 15 migrate-support-check fail in 181462 never pass test-armhf-armhf-xl-multivcpu 16 saverestore-support-check fail in 181462 never pass test-armhf-armhf-xl-credit2 15 migrate-support-check fail in 181462 never pass test-armhf-armhf-xl-credit2 16 saverestore-support-check fail in 181462 never pass test-armhf-armhf-libvirt 15 migrate-support-check fail in 181462 never pass test-armhf-armhf-xl-credit1 15 migrate-support-check fail in 181462 never pass test-armhf-armhf-xl-credit1 16 saverestore-support-check fail in 181462 never pass test-armhf-armhf-xl 15 migrate-support-check fail in 181462 never pass test-armhf-armhf-xl 16 saverestore-support-check fail in 181462 never pass test-armhf-armhf-xl-arndale 15 migrate-support-check fail in 181462 never pass test-armhf-armhf-xl-arndale 16 saverestore-support-check fail in 181462 never pass test-armhf-armhf-libvirt-raw 14 migrate-support-check fail in 181462 never pass test-armhf-armhf-xl-vhd 14 migrate-support-check fail in 181462 never pass test-armhf-armhf-xl-vhd 15 saverestore-support-check fail in 181462 never pass test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 181363 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 181363 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 181363 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 181363 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 181363 test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 3 hosts-allocate starved in 181462 n/a test-arm64-arm64-xl-credit1 3 hosts-allocate starved in 181462 n/a test-arm64-arm64-libvirt-xsm 3 hosts-allocate starved in 181462 n/a test-arm64-arm64-xl-credit2 3 hosts-allocate starved in 181462 n/a test-arm64-arm64-xl-xsm 3 hosts-allocate starved in 181462 n/a test-arm64-arm64-xl-vhd 3 hosts-allocate starved in 181462 n/a test-arm64-arm64-xl-thunderx 3 hosts-allocate starved in 181462 n/a test-arm64-arm64-xl 3 hosts-allocate starved in 181462 n/a version targeted for testing: linux 61a2f83e4762ee0c766f86944e612305f5888bcb baseline version: linux f568a20f058fa1e37069cff4aac4187c1650a0e9 Last test of basis 181363 2023-06-10 15:39:59 Z 6 days Testing same since 181425 2023-06-14 10:50:49 Z 3 days 5 attempts ------------------------------------------------------------ People who touched revisions under test: Ai Chao Alan Stern Alex Deucher Alexander Sverdlin Arnd Bergmann Bartosz Golaszewski Ben Hutchings Chia-I Wu Chris Paterson (CIP) David Jander David S. Miller David Sterba Dmitry Torokhov Eric Dumazet Fedor Pchelkin Florian Westphal Greg Kroah-Hartman Guenter Roeck Gustavo A. R. Silva Hangyu Hua Harshit Mogalapalli Ilya Dryomov Ismael Ferreras Morezuelas JaimeLiao Jakub Kicinski Jamal Hadi Salim Jens Axboe Jiri Slaby (SUSE) Jon Hunter Josef Bacik Jozsef Kadlecsik Kuniyuki Iwashima Linus Walleij Linux Kernel Functional Testing Luiz Augusto von Dentz Marc Kleine-Budde Mark Brown Martin Hundebøll Maxime Ripard Michael Chan Min Li Miquel Raynal Oleksij Rempel Pablo Neira Ayuso Paolo Abeni Paulo Alcantara (SUSE) Paulo Alcantara Qingfang DENG Randy Dunlap RenHai Rishabh Bhatnagar Ruihan Li Sasha Levin Shuah Khan Simon Wunderlich Somnath Kotur Stefan Ghinea Stephan Gerhold Steve French Sudip Mukherjee Sungwoo Kim Sven Eckelmann Takashi Iwai Tejun Heo Theodore Ts'o Tijs Van Buggenhout Uwe Kleine-König Ville Syrjälä Vladislav Efanov Wolfram Sang Xiubo Li Ying Hsu YouChing Lin Zixuan Fu jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops fail build-i386-pvops fail test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl blocked test-amd64-i386-xl blocked test-amd64-coresched-i386-xl blocked test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm blocked test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-i386-xl-qemut-debianhvm-i386-xsm blocked test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-i386-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-i386-libvirt-xsm blocked test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-i386-xl-xsm blocked test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-i386-qemut-rhel6hvm-amd blocked test-amd64-i386-qemuu-rhel6hvm-amd blocked test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-i386-xl-qemut-debianhvm-amd64 blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-freebsd10-amd64 blocked test-amd64-amd64-qemuu-freebsd11-amd64 pass test-amd64-amd64-qemuu-freebsd12-amd64 fail test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 blocked test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-i386-xl-qemut-win7-amd64 blocked test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-i386-xl-qemuu-win7-amd64 blocked test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-i386-xl-qemut-ws16-amd64 blocked test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-amd64-i386-xl-qemuu-ws16-amd64 blocked test-armhf-armhf-xl-arndale blocked test-amd64-amd64-examine-bios pass test-amd64-i386-examine-bios blocked test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 blocked test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 blocked test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine blocked test-amd64-i386-examine blocked test-amd64-i386-freebsd10-i386 blocked test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-i386-qemut-rhel6hvm-intel blocked test-amd64-i386-qemuu-rhel6hvm-intel blocked test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt blocked test-amd64-i386-libvirt blocked test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu blocked test-amd64-amd64-pair pass test-amd64-i386-pair blocked test-amd64-amd64-libvirt-pair pass test-amd64-i386-libvirt-pair blocked test-amd64-amd64-xl-pvshim pass test-amd64-i386-xl-pvshim blocked test-amd64-amd64-pygrub pass test-armhf-armhf-libvirt-qcow2 blocked test-amd64-amd64-xl-qcow2 pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw blocked test-amd64-i386-libvirt-raw blocked test-amd64-amd64-xl-rtds fail test-armhf-armhf-xl-rtds blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-amd64-xl-shadow pass test-amd64-i386-xl-shadow blocked test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-i386-examine-uefi blocked test-amd64-amd64-libvirt-vhd pass test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd blocked test-amd64-i386-xl-vhd blocked ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary broken-job test-armhf-armhf-xl-rtds broken broken-job test-armhf-armhf-xl broken Not pushing. (No revision log; it would be 1380 lines long.) From xen-devel-bounces@lists.xenproject.org Sat Jun 17 14:41:18 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sat, 17 Jun 2023 14:41:18 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550659.859790 (Exim 4.92) (envelope-from ) id 1qAX6o-0003nr-OS; Sat, 17 Jun 2023 14:40:58 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550659.859790; Sat, 17 Jun 2023 14:40:58 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAX6o-0003nk-Lf; Sat, 17 Jun 2023 14:40:58 +0000 Received: by outflank-mailman (input) for mailman id 550659; Sat, 17 Jun 2023 14:40:56 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAX6m-0003na-JF; Sat, 17 Jun 2023 14:40:56 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAX6m-0007AX-Fw; Sat, 17 Jun 2023 14:40:56 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAX6l-0002PU-Sw; Sat, 17 Jun 2023 14:40:56 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qAX6l-0005HD-SU; Sat, 17 Jun 2023 14:40:55 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=TfKTYfDRsYfiEf1gg5rLxD/FZiSIFWYFLs349MzXfSE=; b=MMXWKMsys+zvSlHqRjEp2pqBQO 7HowZNE5GAADtLz8UmvBOCkT3y8CdfNSZN7g352vx9fZf8R+X+ytPfk8j5q1W/DgWz01tZ/TAJiwt G+8TDkM5WYSfsVEB/aXGLjrf6rP4vDpu2/nmZC9E4lKkwtvyjQPCv3Mmrs7bs28mwF08=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [linux-linus test] 181479: regressions - FAIL X-Osstest-Failures: linux-linus:test-armhf-armhf-xl-credit1:xen-boot:fail:regression linux-linus:build-arm64-pvops:kernel-build:fail:regression linux-linus:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking linux-linus:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking linux-linus:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking linux-linus:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking linux-linus:test-arm64-arm64-examine:build-check(1):blocked:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking linux-linus:test-arm64-arm64-xl:build-check(1):blocked:nonblocking linux-linus:test-armhf-armhf-xl-multivcpu:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-credit2:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-raw:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking linux-linus:test-armhf-armhf-libvirt:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-arndale:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-examine:reboot:fail:nonblocking linux-linus:test-armhf-armhf-xl-rtds:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-qcow2:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-vhd:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-raw:migrate-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-qcow2:migrate-support-check:fail:nonblocking X-Osstest-Versions-This: linux=1639fae5132bc8a904af28d97cea0bedb3af802e X-Osstest-Versions-That: linux=6c538e1adbfc696ac4747fb10d63e704344f763d From: osstest service owner Date: Sat, 17 Jun 2023 14:40:55 +0000 flight 181479 linux-linus real [real] http://logs.test-lab.xenproject.org/osstest/logs/181479/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: test-armhf-armhf-xl-credit1 8 xen-boot fail REGR. vs. 180278 build-arm64-pvops 6 kernel-build fail REGR. vs. 180278 Tests which did not succeed, but are not blocking: test-arm64-arm64-xl-credit1 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit2 1 build-check(1) blocked n/a test-arm64-arm64-xl-thunderx 1 build-check(1) blocked n/a test-arm64-arm64-xl-vhd 1 build-check(1) blocked n/a test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a test-arm64-arm64-examine 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-raw 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-xsm 1 build-check(1) blocked n/a test-arm64-arm64-xl 1 build-check(1) blocked n/a test-armhf-armhf-xl-multivcpu 8 xen-boot fail like 180278 test-armhf-armhf-xl 8 xen-boot fail like 180278 test-armhf-armhf-xl-credit2 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 180278 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 180278 test-armhf-armhf-libvirt-raw 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 180278 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 180278 test-armhf-armhf-libvirt 8 xen-boot fail like 180278 test-armhf-armhf-xl-arndale 8 xen-boot fail like 180278 test-armhf-armhf-examine 8 reboot fail like 180278 test-armhf-armhf-xl-rtds 8 xen-boot fail like 180278 test-armhf-armhf-libvirt-qcow2 8 xen-boot fail like 180278 test-armhf-armhf-xl-vhd 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 180278 test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-amd64-libvirt-raw 14 migrate-support-check fail never pass test-amd64-amd64-libvirt-qcow2 14 migrate-support-check fail never pass version targeted for testing: linux 1639fae5132bc8a904af28d97cea0bedb3af802e baseline version: linux 6c538e1adbfc696ac4747fb10d63e704344f763d Last test of basis 180278 2023-04-16 19:41:46 Z 61 days Failing since 180281 2023-04-17 06:24:36 Z 61 days 116 attempts Testing same since 181479 2023-06-17 07:00:47 Z 0 days 1 attempts ------------------------------------------------------------ 2727 people touched revisions under test, not listing them all jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops fail build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl blocked test-armhf-armhf-xl fail test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm blocked test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm blocked test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-freebsd11-amd64 pass test-amd64-amd64-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale fail test-amd64-amd64-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 blocked test-armhf-armhf-xl-credit1 fail test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 blocked test-armhf-armhf-xl-credit2 fail test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine blocked test-armhf-armhf-examine fail test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt fail test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu fail test-amd64-amd64-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-amd64-pygrub pass test-amd64-amd64-libvirt-qcow2 pass test-armhf-armhf-libvirt-qcow2 fail test-amd64-amd64-libvirt-raw pass test-arm64-arm64-libvirt-raw blocked test-armhf-armhf-libvirt-raw fail test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds fail test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-arm64-arm64-xl-thunderx blocked test-amd64-amd64-examine-uefi pass test-amd64-amd64-xl-vhd pass test-arm64-arm64-xl-vhd blocked test-armhf-armhf-xl-vhd fail ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 347202 lines long.) From xen-devel-bounces@lists.xenproject.org Sat Jun 17 14:51:28 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sat, 17 Jun 2023 14:51:28 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550666.859800 (Exim 4.92) (envelope-from ) id 1qAXGs-0005J0-NI; Sat, 17 Jun 2023 14:51:22 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550666.859800; Sat, 17 Jun 2023 14:51:22 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAXGs-0005It-Ki; Sat, 17 Jun 2023 14:51:22 +0000 Received: by outflank-mailman (input) for mailman id 550666; Sat, 17 Jun 2023 14:51:20 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAXGq-0005Ij-PR; Sat, 17 Jun 2023 14:51:20 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAXGq-0007L5-N3; Sat, 17 Jun 2023 14:51:20 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAXGq-0003LI-6c; Sat, 17 Jun 2023 14:51:20 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qAXGq-0002pq-6A; Sat, 17 Jun 2023 14:51:20 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=cxSsbpxJQIds5P6Q5Pq/EUGI0T6kcc8ztvNsPjK1eyk=; b=PC5aFR/ccxQvXcv0kJGDlKNMbM NDrp3pOg8pZJOP5SgqHsi1K1CnsipM9qGcmb1UMEQpK5h4mnRMF1Wke1GCXgJXyYfQbejA4GAgKV/ G1XqmVdMO0mdbwRyH+pmIiKOhGY/9b4QROcy8xC0EovPacMgZvs6D3uOQQEoGBdvboPs=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [qemu-mainline test] 181478: regressions - FAIL X-Osstest-Failures: qemu-mainline:build-amd64:xen-build:fail:regression qemu-mainline:build-amd64-xsm:xen-build:fail:regression qemu-mainline:build-arm64:xen-build:fail:regression qemu-mainline:build-arm64-xsm:xen-build:fail:regression qemu-mainline:build-i386:xen-build:fail:regression qemu-mainline:build-i386-xsm:xen-build:fail:regression qemu-mainline:build-armhf:xen-build:fail:regression qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-i386:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:build-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:build-arm64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:build-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:build-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pygrub:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking X-Osstest-Versions-This: qemuu=5692a39f329413a00020a61fff95aff6b9884a73 X-Osstest-Versions-That: qemuu=6972ef1440a9d685482d78672620a7482f2bd09a From: osstest service owner Date: Sat, 17 Jun 2023 14:51:20 +0000 flight 181478 qemu-mainline real [real] http://logs.test-lab.xenproject.org/osstest/logs/181478/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-amd64 6 xen-build fail REGR. vs. 180691 build-amd64-xsm 6 xen-build fail REGR. vs. 180691 build-arm64 6 xen-build fail REGR. vs. 180691 build-arm64-xsm 6 xen-build fail REGR. vs. 180691 build-i386 6 xen-build fail REGR. vs. 180691 build-i386-xsm 6 xen-build fail REGR. vs. 180691 build-armhf 6 xen-build fail REGR. vs. 180691 Tests which did not succeed, but are not blocking: test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-xl-xsm 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-raw 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-xsm 1 build-check(1) blocked n/a test-arm64-arm64-xl 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit1 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit2 1 build-check(1) blocked n/a test-arm64-arm64-xl-thunderx 1 build-check(1) blocked n/a test-arm64-arm64-xl-vhd 1 build-check(1) blocked n/a test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a test-armhf-armhf-libvirt 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-qcow2 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-raw 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a test-armhf-armhf-xl-arndale 1 build-check(1) blocked n/a test-armhf-armhf-xl-multivcpu 1 build-check(1) blocked n/a test-armhf-armhf-xl-rtds 1 build-check(1) blocked n/a test-armhf-armhf-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-amd 1 build-check(1) blocked n/a test-amd64-i386-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-raw 1 build-check(1) blocked n/a test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-i386 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-amd64 1 build-check(1) blocked n/a test-amd64-coresched-i386-xl 1 build-check(1) blocked n/a test-amd64-coresched-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-xsm 1 build-check(1) blocked n/a build-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-shadow 1 build-check(1) blocked n/a test-amd64-amd64-xl-rtds 1 build-check(1) blocked n/a build-arm64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a build-armhf-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a build-i386-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-amd 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-pair 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-qcow2 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-vhd 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvshim 1 build-check(1) blocked n/a test-amd64-amd64-pair 1 build-check(1) blocked n/a test-amd64-amd64-pygrub 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-intel 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd11-amd64 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd12-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-multivcpu 1 build-check(1) blocked n/a test-amd64-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit1 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit1 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit2 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-intel 1 build-check(1) blocked n/a test-amd64-i386-xl 1 build-check(1) blocked n/a test-amd64-i386-xl-pvshim 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a version targeted for testing: qemuu 5692a39f329413a00020a61fff95aff6b9884a73 baseline version: qemuu 6972ef1440a9d685482d78672620a7482f2bd09a Last test of basis 180691 2023-05-17 10:45:22 Z 31 days Failing since 180699 2023-05-18 07:21:24 Z 30 days 109 attempts Testing same since 181472 2023-06-16 21:40:49 Z 0 days 2 attempts ------------------------------------------------------------ People who touched revisions under test: Afonso Bordado Akihiko Odaki Akihiro Suda Alex Bennée Alex Williamson Alexander Bulekov Alexander Graf Alexander Ivanov Alistair Francis Anastasia Belova Andrea Bolognani Andreas Schwab Andrew Jeffery Ani Sinha Ani Sinha Anthony PERARD Anton Johansson Antonio Caggiano BALATON Zoltan Bastian Koppelmann Bernhard Beschow Bin Meng Brian Cain Brice Goglin Camilla Conte Carlos Santos Christian Schoenebeck Chuck Zmudzinski Cindy Lu Clément Chigot Corey Minyard Cornelia Huck Cédric Le Goater Cédric Le Goater Daniel Henrique Barboza Daniel Henrique Barboza Daniel P. Berrangé Daniil Kovalev David Hildenbrand David Woodhouse Emanuele Giuseppe Esposito Enze Li Eric Auger Eric Blake Eric DeVolder Erico Nunes Eugenio Pérez Fabiano Rosas Fan Ni Fiona Ebner Francesco Cagnin Francisco Iglesias Frederic Barrat Gavin Shan Gregory Price Gregory Price Hanna Czenczek Hao Zeng Hawkins Jiawei Himanshu Chauhan Igor Mammedov Ilya Leoshkevich Ira Weiny Ivan Klokov Jagannathan Raman Jason Wang Jean-Louis Dupond Jean-Philippe Brucker Jiaxun Yang Joao Martins John Snow Jonathan Cameron Juan Quintela Junqiang Wang Kevin Wolf Laurent Vivier Lei Yang Leonardo Bras Maksim Davydov Marc-André Lureau Marcin Juszkiewicz Marco Liebel Mark Cave-Ayland Markus Armbruster Matheus Tavares Bernardino Mattias Nissler Mauro Matteo Cascella Max Fritz Mayuresh Chitale Michael S. Tsirkin Michael Tokarev Michal Privoznik Milan Zamazal Mostafa Saleh Nicholas Piggin Nicolas Saenz Julienne Niek Linnenbank Niklas Cassel Ninad Palsule Palmer Dabbelt Paolo Bonzini Patrick Venture Peter Maydell Peter Xu Philippe Mathieu-Daudé Philippe Mathieu-Daudé qianfan Zhao Raghu H Rene Engel Richard Henderson Richard Purdie Ricky Zhou Ryan Wendland Sebastian Ott Sergio Lopez Sid Manning Song Gao Stefan Hajnoczi Stefano Garzarella Steve Sistare Sunil V L Taylor Simpson Thomas Huth Thomas Weißschuh timothee.cocault@gmail.com Timothée Cocault Tommy Wu Vikram Garhwal Viktor Prutyanov Vitaly Cheptsov Vivek Kasireddy Vladimir Sementsov-Ogievskiy Volker Rümelin Weiwei Li Xiao Wang Xinyu Li Yin Wang Zeng Hao Zhenyu Zhang Zhenzhong Duan Zhuojia Shen jobs: build-amd64-xsm fail build-arm64-xsm fail build-i386-xsm fail build-amd64 fail build-arm64 fail build-armhf fail build-i386 fail build-amd64-libvirt blocked build-arm64-libvirt blocked build-armhf-libvirt blocked build-i386-libvirt blocked build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl blocked test-amd64-coresched-amd64-xl blocked test-arm64-arm64-xl blocked test-armhf-armhf-xl blocked test-amd64-i386-xl blocked test-amd64-coresched-i386-xl blocked test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-i386-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-amd64-libvirt-xsm blocked test-arm64-arm64-libvirt-xsm blocked test-amd64-i386-libvirt-xsm blocked test-amd64-amd64-xl-xsm blocked test-arm64-arm64-xl-xsm blocked test-amd64-i386-xl-xsm blocked test-amd64-amd64-qemuu-nested-amd blocked test-amd64-amd64-xl-pvhv2-amd blocked test-amd64-i386-qemuu-rhel6hvm-amd blocked test-amd64-amd64-dom0pvh-xl-amd blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-freebsd10-amd64 blocked test-amd64-amd64-qemuu-freebsd11-amd64 blocked test-amd64-amd64-qemuu-freebsd12-amd64 blocked test-amd64-amd64-xl-qemuu-ovmf-amd64 blocked test-amd64-i386-xl-qemuu-ovmf-amd64 blocked test-amd64-amd64-xl-qemuu-win7-amd64 blocked test-amd64-i386-xl-qemuu-win7-amd64 blocked test-amd64-amd64-xl-qemuu-ws16-amd64 blocked test-amd64-i386-xl-qemuu-ws16-amd64 blocked test-armhf-armhf-xl-arndale blocked test-amd64-amd64-xl-credit1 blocked test-arm64-arm64-xl-credit1 blocked test-armhf-armhf-xl-credit1 blocked test-amd64-amd64-xl-credit2 blocked test-arm64-arm64-xl-credit2 blocked test-armhf-armhf-xl-credit2 blocked test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-freebsd10-i386 blocked test-amd64-amd64-qemuu-nested-intel blocked test-amd64-amd64-xl-pvhv2-intel blocked test-amd64-i386-qemuu-rhel6hvm-intel blocked test-amd64-amd64-dom0pvh-xl-intel blocked test-amd64-amd64-libvirt blocked test-armhf-armhf-libvirt blocked test-amd64-i386-libvirt blocked test-amd64-amd64-xl-multivcpu blocked test-armhf-armhf-xl-multivcpu blocked test-amd64-amd64-pair blocked test-amd64-i386-pair blocked test-amd64-amd64-libvirt-pair blocked test-amd64-i386-libvirt-pair blocked test-amd64-amd64-xl-pvshim blocked test-amd64-i386-xl-pvshim blocked test-amd64-amd64-pygrub blocked test-armhf-armhf-libvirt-qcow2 blocked test-amd64-amd64-xl-qcow2 blocked test-arm64-arm64-libvirt-raw blocked test-armhf-armhf-libvirt-raw blocked test-amd64-i386-libvirt-raw blocked test-amd64-amd64-xl-rtds blocked test-armhf-armhf-xl-rtds blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-amd64-xl-shadow blocked test-amd64-i386-xl-shadow blocked test-arm64-arm64-xl-thunderx blocked test-amd64-amd64-libvirt-vhd blocked test-arm64-arm64-xl-vhd blocked test-armhf-armhf-xl-vhd blocked test-amd64-i386-xl-vhd blocked ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 18855 lines long.) From xen-devel-bounces@lists.xenproject.org Sat Jun 17 17:45:33 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sat, 17 Jun 2023 17:45:33 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550675.859811 (Exim 4.92) (envelope-from ) id 1qAZz9-00060B-2P; Sat, 17 Jun 2023 17:45:15 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550675.859811; Sat, 17 Jun 2023 17:45:15 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAZz8-000604-Ue; Sat, 17 Jun 2023 17:45:14 +0000 Received: by outflank-mailman (input) for mailman id 550675; Sat, 17 Jun 2023 17:45:13 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAZz7-0005zu-JP; Sat, 17 Jun 2023 17:45:13 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAZz7-0003mo-GE; Sat, 17 Jun 2023 17:45:13 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAZz7-0007mK-2G; Sat, 17 Jun 2023 17:45:13 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qAZz7-0004Qe-1o; Sat, 17 Jun 2023 17:45:13 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=2EWGGzUTzApHLHLy4pkfssGSrJz8RyI9Wfm9JYQ1a/A=; b=3ITLlLWw9AOx4jULIru7eRKiEV Kj217IGplcnjkardc6yPBWDl9vSSuG7mTywaTPB+dtdPnkkxdCUiSthqFsx69ewZBXwtt7SXD39It hMKJFyeTj9QUi5QpdIQOQx3virdSoIN6cxKkvEjmeMu073tDokiEUzbv1MA31gItd5yM=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [libvirt test] 181477: tolerable FAIL - PUSHED X-Osstest-Failures: libvirt:test-amd64-amd64-libvirt-vhd:guest-start/debian.repeat:fail:nonblocking libvirt:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking libvirt:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking libvirt:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking libvirt:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking libvirt:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking libvirt:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking libvirt:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt:saverestore-support-check:fail:nonblocking libvirt:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking libvirt:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking libvirt:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-qcow2:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-qcow2:saverestore-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking libvirt:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking libvirt:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking libvirt:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking libvirt:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking X-Osstest-Versions-This: libvirt=a5bf2c4bf962cfb32f9137be5f0ba61cdd14b0e7 X-Osstest-Versions-That: libvirt=078e645cc3b19458eee4b89b4bfd8e0a32a8b424 From: osstest service owner Date: Sat, 17 Jun 2023 17:45:13 +0000 flight 181477 libvirt real [real] http://logs.test-lab.xenproject.org/osstest/logs/181477/ Failures :-/ but no regressions. Tests which did not succeed, but are not blocking: test-amd64-amd64-libvirt-vhd 19 guest-start/debian.repeat fail like 181437 test-armhf-armhf-libvirt 16 saverestore-support-check fail like 181437 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail like 181437 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail like 181437 test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-i386-libvirt 15 migrate-support-check fail never pass test-amd64-i386-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt 15 migrate-support-check fail never pass test-arm64-arm64-libvirt 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-i386-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-qcow2 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-qcow2 15 saverestore-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-check fail never pass test-armhf-armhf-libvirt 15 migrate-support-check fail never pass test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail never pass test-armhf-armhf-libvirt-raw 14 migrate-support-check fail never pass version targeted for testing: libvirt a5bf2c4bf962cfb32f9137be5f0ba61cdd14b0e7 baseline version: libvirt 078e645cc3b19458eee4b89b4bfd8e0a32a8b424 Last test of basis 181437 2023-06-15 04:20:15 Z 2 days Testing same since 181477 2023-06-17 04:18:54 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Jiri Denemark jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-i386-libvirt-xsm pass test-amd64-amd64-libvirt pass test-arm64-arm64-libvirt pass test-armhf-armhf-libvirt pass test-amd64-i386-libvirt pass test-amd64-amd64-libvirt-pair pass test-amd64-i386-libvirt-pair pass test-arm64-arm64-libvirt-qcow2 pass test-armhf-armhf-libvirt-qcow2 pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw pass test-amd64-i386-libvirt-raw pass test-amd64-amd64-libvirt-vhd fail ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Pushing revision : To xenbits.xen.org:/home/xen/git/libvirt.git 078e645cc3..a5bf2c4bf9 a5bf2c4bf962cfb32f9137be5f0ba61cdd14b0e7 -> xen-tested-master From xen-devel-bounces@lists.xenproject.org Sat Jun 17 21:23:50 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sat, 17 Jun 2023 21:23:50 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550687.859841 (Exim 4.92) (envelope-from ) id 1qAdOP-0002c5-Ft; Sat, 17 Jun 2023 21:23:33 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550687.859841; Sat, 17 Jun 2023 21:23:33 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAdOP-0002by-Cx; Sat, 17 Jun 2023 21:23:33 +0000 Received: by outflank-mailman (input) for mailman id 550687; Sat, 17 Jun 2023 21:23:32 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAdOO-0002bo-7Q; Sat, 17 Jun 2023 21:23:32 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAdOO-0000Dl-52; Sat, 17 Jun 2023 21:23:32 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAdON-0008QU-C8; Sat, 17 Jun 2023 21:23:31 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qAdON-0007Og-Bh; Sat, 17 Jun 2023 21:23:31 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=pxkohcOmyOWZHXPklJjx9w/beoxRLD/CafGzH4QOzoc=; b=Fbed/wukhdKqM+sSul/KPQx8PE wqyQqgFlKOzyOw8UA2fz6RkWvBskFfAJATrWWykoeoopfFB1GQd9KKkjdxKWgPnc/c0AH4tH2W6MY XQZ+3kvR/6cXBatjuX0LlPb1VBUNXcliCj5696qT2A3CFjVuHHbmPzIOlMgOoXhFJ3M0=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable test] 181481: tolerable FAIL - PUSHED X-Osstest-Failures: xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking X-Osstest-Versions-This: xen=7a25a1501ca941c3e01b0c4e624ace05417f1587 X-Osstest-Versions-That: xen=e533438e3d28158602dce051b032811bdd26377d From: osstest service owner Date: Sat, 17 Jun 2023 21:23:31 +0000 flight 181481 xen-unstable real [real] http://logs.test-lab.xenproject.org/osstest/logs/181481/ Failures :-/ but no regressions. Tests which did not succeed, but are not blocking: test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 181471 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop fail like 181471 test-armhf-armhf-libvirt 16 saverestore-support-check fail like 181471 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 181471 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 181471 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop fail like 181471 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop fail like 181471 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail like 181471 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 181471 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail like 181471 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop fail like 181471 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 181471 test-amd64-i386-xl-pvshim 14 guest-start fail never pass test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-i386-libvirt 15 migrate-support-check fail never pass test-amd64-i386-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-i386-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 15 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass test-armhf-armhf-libvirt 15 migrate-support-check fail never pass test-armhf-armhf-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 15 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 16 saverestore-support-check fail never pass test-armhf-armhf-xl-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 15 saverestore-support-check fail never pass test-armhf-armhf-xl 15 migrate-support-check fail never pass test-armhf-armhf-xl 16 saverestore-support-check fail never pass test-armhf-armhf-xl-multivcpu 15 migrate-support-check fail never pass test-armhf-armhf-xl-multivcpu 16 saverestore-support-check fail never pass test-armhf-armhf-xl-credit1 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 16 saverestore-support-check fail never pass test-armhf-armhf-xl-credit2 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit2 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail never pass version targeted for testing: xen 7a25a1501ca941c3e01b0c4e624ace05417f1587 baseline version: xen e533438e3d28158602dce051b032811bdd26377d Last test of basis 181471 2023-06-16 21:09:52 Z 1 days Testing same since 181481 2023-06-17 11:28:56 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Ayan Kumar Halder Julien Grall Stefano Stabellini jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64-xtf pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-prev pass build-i386-prev pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-xtf-amd64-amd64-1 pass test-xtf-amd64-amd64-2 pass test-xtf-amd64-amd64-3 pass test-xtf-amd64-amd64-4 pass test-xtf-amd64-amd64-5 pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl pass test-amd64-i386-xl pass test-amd64-coresched-i386-xl pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-i386-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-i386-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-i386-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-i386-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-i386-qemut-rhel6hvm-amd pass test-amd64-i386-qemuu-rhel6hvm-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-i386-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-freebsd10-amd64 pass test-amd64-amd64-qemuu-freebsd11-amd64 pass test-amd64-amd64-qemuu-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-i386-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-i386-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-i386-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-amd64-i386-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale pass test-amd64-amd64-examine-bios pass test-amd64-i386-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 pass test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 pass test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine pass test-amd64-i386-examine pass test-amd64-i386-freebsd10-i386 pass test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-i386-qemut-rhel6hvm-intel pass test-amd64-i386-qemuu-rhel6hvm-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt pass test-amd64-i386-libvirt pass test-amd64-amd64-livepatch pass test-amd64-i386-livepatch pass test-amd64-amd64-migrupgrade pass test-amd64-i386-migrupgrade pass test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu pass test-amd64-amd64-pair pass test-amd64-i386-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-i386-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-i386-xl-pvshim fail test-amd64-amd64-pygrub pass test-armhf-armhf-libvirt-qcow2 pass test-amd64-amd64-xl-qcow2 pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw pass test-amd64-i386-libvirt-raw pass test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds pass test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-amd64-i386-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-i386-examine-uefi pass test-amd64-amd64-libvirt-vhd pass test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd pass test-amd64-i386-xl-vhd pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Pushing revision : To xenbits.xen.org:/home/xen/git/xen.git e533438e3d..7a25a1501c 7a25a1501ca941c3e01b0c4e624ace05417f1587 -> master From xen-devel-bounces@lists.xenproject.org Sat Jun 17 22:23:24 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sat, 17 Jun 2023 22:23:24 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550696.859851 (Exim 4.92) (envelope-from ) id 1qAeKC-0000Za-0W; Sat, 17 Jun 2023 22:23:16 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550696.859851; Sat, 17 Jun 2023 22:23:15 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAeKB-0000ZT-SZ; Sat, 17 Jun 2023 22:23:15 +0000 Received: by outflank-mailman (input) for mailman id 550696; Sat, 17 Jun 2023 22:23:14 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAeKA-0000ZI-Tf; Sat, 17 Jun 2023 22:23:14 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAeKA-0001W9-Hf; Sat, 17 Jun 2023 22:23:14 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAeK9-0001R7-VV; Sat, 17 Jun 2023 22:23:14 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qAeK9-0006wu-V1; Sat, 17 Jun 2023 22:23:13 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=T7jcw3l0/hgjUs5LhcbSJFJt4Wav8dU6MVE71tkG0r4=; b=evrA0j3g5DatNGlfUAFrD2jikx KifXSGJb6HCnUMWrtVNyKuBJhjDyykh7tNFXs2vyJeFqiWYPDoEhnAyrnvADDZgReUv/TLXhgq87J EsNOM7sxzirBsMoJwnnnkZCInFQqX6xdw91IehAu0DsZycYQtqTU1c6ypcUL5chGVRVw=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [qemu-mainline test] 181483: regressions - FAIL X-Osstest-Failures: qemu-mainline:build-amd64:xen-build:fail:regression qemu-mainline:build-amd64-xsm:xen-build:fail:regression qemu-mainline:build-arm64:xen-build:fail:regression qemu-mainline:build-arm64-xsm:xen-build:fail:regression qemu-mainline:build-i386:xen-build:fail:regression qemu-mainline:build-i386-xsm:xen-build:fail:regression qemu-mainline:build-armhf:xen-build:fail:regression qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-i386:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:build-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:build-arm64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:build-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:build-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pygrub:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking X-Osstest-Versions-This: qemuu=e3660cc1e3cb136af50c0eaaeac27943c2438d1d X-Osstest-Versions-That: qemuu=6972ef1440a9d685482d78672620a7482f2bd09a From: osstest service owner Date: Sat, 17 Jun 2023 22:23:13 +0000 flight 181483 qemu-mainline real [real] http://logs.test-lab.xenproject.org/osstest/logs/181483/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-amd64 6 xen-build fail REGR. vs. 180691 build-amd64-xsm 6 xen-build fail REGR. vs. 180691 build-arm64 6 xen-build fail REGR. vs. 180691 build-arm64-xsm 6 xen-build fail REGR. vs. 180691 build-i386 6 xen-build fail REGR. vs. 180691 build-i386-xsm 6 xen-build fail REGR. vs. 180691 build-armhf 6 xen-build fail REGR. vs. 180691 Tests which did not succeed, but are not blocking: test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-xl-xsm 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-raw 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-xsm 1 build-check(1) blocked n/a test-arm64-arm64-xl 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit1 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit2 1 build-check(1) blocked n/a test-arm64-arm64-xl-thunderx 1 build-check(1) blocked n/a test-arm64-arm64-xl-vhd 1 build-check(1) blocked n/a test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a test-armhf-armhf-libvirt 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-qcow2 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-raw 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a test-armhf-armhf-xl-arndale 1 build-check(1) blocked n/a test-armhf-armhf-xl-multivcpu 1 build-check(1) blocked n/a test-armhf-armhf-xl-rtds 1 build-check(1) blocked n/a test-armhf-armhf-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-amd 1 build-check(1) blocked n/a test-amd64-i386-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-raw 1 build-check(1) blocked n/a test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-i386 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-amd64 1 build-check(1) blocked n/a test-amd64-coresched-i386-xl 1 build-check(1) blocked n/a test-amd64-coresched-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-xsm 1 build-check(1) blocked n/a build-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-shadow 1 build-check(1) blocked n/a test-amd64-amd64-xl-rtds 1 build-check(1) blocked n/a build-arm64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a build-armhf-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a build-i386-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-amd 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-pair 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-qcow2 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-vhd 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvshim 1 build-check(1) blocked n/a test-amd64-amd64-pair 1 build-check(1) blocked n/a test-amd64-amd64-pygrub 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-intel 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd11-amd64 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd12-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-multivcpu 1 build-check(1) blocked n/a test-amd64-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit1 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit1 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-intel 1 build-check(1) blocked n/a test-amd64-i386-xl 1 build-check(1) blocked n/a test-amd64-i386-xl-pvshim 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a version targeted for testing: qemuu e3660cc1e3cb136af50c0eaaeac27943c2438d1d baseline version: qemuu 6972ef1440a9d685482d78672620a7482f2bd09a Last test of basis 180691 2023-05-17 10:45:22 Z 31 days Failing since 180699 2023-05-18 07:21:24 Z 30 days 110 attempts Testing same since 181483 2023-06-17 15:10:36 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Afonso Bordado Akihiko Odaki Akihiro Suda Alex Bennée Alex Williamson Alexander Bulekov Alexander Graf Alexander Ivanov Alistair Francis Anastasia Belova Andrea Bolognani Andreas Schwab Andrew Jeffery Ani Sinha Ani Sinha Anthony PERARD Anton Johansson Antonio Caggiano BALATON Zoltan Bastian Koppelmann Bernhard Beschow Bin Meng Brian Cain Brice Goglin Camilla Conte Carlos Santos Christian Schoenebeck Chuck Zmudzinski Cindy Lu Clément Chigot Corey Minyard Cornelia Huck Cédric Le Goater Cédric Le Goater Daniel Henrique Barboza Daniel Henrique Barboza Daniel P. Berrangé Daniil Kovalev David Hildenbrand David Woodhouse Emanuele Giuseppe Esposito Enze Li Eric Auger Eric Blake Eric DeVolder Erico Nunes Eugenio Pérez Fabiano Rosas Fan Ni Fiona Ebner Francesco Cagnin Francisco Iglesias Frederic Barrat Gavin Shan Gregory Price Gregory Price Hanna Czenczek Hao Zeng Hawkins Jiawei Himanshu Chauhan Igor Mammedov Ilya Leoshkevich Ira Weiny Ivan Klokov Jagannathan Raman Jason Wang Jean-Louis Dupond Jean-Philippe Brucker Jiajie Chen Jiaxun Yang Joao Martins John Snow Jonathan Cameron Juan Quintela Junqiang Wang Kevin Wolf Laurent Vivier Lei Yang Leonardo Bras Maksim Davydov Marc-André Lureau Marcin Juszkiewicz Marco Liebel Mark Cave-Ayland Markus Armbruster Matheus Tavares Bernardino Mattias Nissler Mauro Matteo Cascella Max Fritz Mayuresh Chitale Michael S. Tsirkin Michael Tokarev Michal Privoznik Milan Zamazal Mostafa Saleh Nicholas Piggin Nicolas Saenz Julienne Niek Linnenbank Niklas Cassel Ninad Palsule Palmer Dabbelt Paolo Bonzini Patrick Venture Peter Maydell Peter Xu Philippe Mathieu-Daudé Philippe Mathieu-Daudé qianfan Zhao Raghu H Rene Engel Richard Henderson Richard Purdie Ricky Zhou Ryan Wendland Sebastian Ott Sergio Lopez Sid Manning Song Gao Stefan Hajnoczi Stefano Garzarella Stefano Stabellini Stefano Stabellini Steve Sistare Sunil V L Taylor Simpson Thomas Huth Thomas Weißschuh Tianrui Zhao timothee.cocault@gmail.com Timothée Cocault Tommy Wu Vikram Garhwal Viktor Prutyanov Vitaly Cheptsov Vivek Kasireddy Vladimir Sementsov-Ogievskiy Volker Rümelin Weiwei Li Xiao Wang Xinyu Li Yin Wang Zeng Hao Zhenyu Zhang Zhenzhong Duan Zhuojia Shen jobs: build-amd64-xsm fail build-arm64-xsm fail build-i386-xsm fail build-amd64 fail build-arm64 fail build-armhf fail build-i386 fail build-amd64-libvirt blocked build-arm64-libvirt blocked build-armhf-libvirt blocked build-i386-libvirt blocked build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl blocked test-amd64-coresched-amd64-xl blocked test-arm64-arm64-xl blocked test-armhf-armhf-xl blocked test-amd64-i386-xl blocked test-amd64-coresched-i386-xl blocked test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-i386-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-amd64-libvirt-xsm blocked test-arm64-arm64-libvirt-xsm blocked test-amd64-i386-libvirt-xsm blocked test-amd64-amd64-xl-xsm blocked test-arm64-arm64-xl-xsm blocked test-amd64-i386-xl-xsm blocked test-amd64-amd64-qemuu-nested-amd blocked test-amd64-amd64-xl-pvhv2-amd blocked test-amd64-i386-qemuu-rhel6hvm-amd blocked test-amd64-amd64-dom0pvh-xl-amd blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-freebsd10-amd64 blocked test-amd64-amd64-qemuu-freebsd11-amd64 blocked test-amd64-amd64-qemuu-freebsd12-amd64 blocked test-amd64-amd64-xl-qemuu-ovmf-amd64 blocked test-amd64-i386-xl-qemuu-ovmf-amd64 blocked test-amd64-amd64-xl-qemuu-win7-amd64 blocked test-amd64-i386-xl-qemuu-win7-amd64 blocked test-amd64-amd64-xl-qemuu-ws16-amd64 blocked test-amd64-i386-xl-qemuu-ws16-amd64 blocked test-armhf-armhf-xl-arndale blocked test-amd64-amd64-xl-credit1 blocked test-arm64-arm64-xl-credit1 blocked test-armhf-armhf-xl-credit1 blocked test-amd64-amd64-xl-credit2 blocked test-arm64-arm64-xl-credit2 blocked test-armhf-armhf-xl-credit2 blocked test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-freebsd10-i386 blocked test-amd64-amd64-qemuu-nested-intel blocked test-amd64-amd64-xl-pvhv2-intel blocked test-amd64-i386-qemuu-rhel6hvm-intel blocked test-amd64-amd64-dom0pvh-xl-intel blocked test-amd64-amd64-libvirt blocked test-armhf-armhf-libvirt blocked test-amd64-i386-libvirt blocked test-amd64-amd64-xl-multivcpu blocked test-armhf-armhf-xl-multivcpu blocked test-amd64-amd64-pair blocked test-amd64-i386-pair blocked test-amd64-amd64-libvirt-pair blocked test-amd64-i386-libvirt-pair blocked test-amd64-amd64-xl-pvshim blocked test-amd64-i386-xl-pvshim blocked test-amd64-amd64-pygrub blocked test-armhf-armhf-libvirt-qcow2 blocked test-amd64-amd64-xl-qcow2 blocked test-arm64-arm64-libvirt-raw blocked test-armhf-armhf-libvirt-raw blocked test-amd64-i386-libvirt-raw blocked test-amd64-amd64-xl-rtds blocked test-armhf-armhf-xl-rtds blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-amd64-xl-shadow blocked test-amd64-i386-xl-shadow blocked test-arm64-arm64-xl-thunderx blocked test-amd64-amd64-libvirt-vhd blocked test-arm64-arm64-xl-vhd blocked test-armhf-armhf-xl-vhd blocked test-amd64-i386-xl-vhd blocked ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 19235 lines long.) From xen-devel-bounces@lists.xenproject.org Sun Jun 18 02:48:38 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sun, 18 Jun 2023 02:48:38 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550703.859861 (Exim 4.92) (envelope-from ) id 1qAiSh-0000ab-3C; Sun, 18 Jun 2023 02:48:19 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550703.859861; Sun, 18 Jun 2023 02:48:19 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAiSg-0000aU-Vm; Sun, 18 Jun 2023 02:48:18 +0000 Received: by outflank-mailman (input) for mailman id 550703; Sun, 18 Jun 2023 02:48:18 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAiSg-0000aK-Cu; Sun, 18 Jun 2023 02:48:18 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAiSg-0006c0-4y; Sun, 18 Jun 2023 02:48:18 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAiSf-0007op-F0; Sun, 18 Jun 2023 02:48:17 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qAiSf-0005nX-D6; Sun, 18 Jun 2023 02:48:17 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=vbVlrsDxN0JddnjZeZ5uHOk8dYZnb2teQej+ggdsTu4=; b=pf5Rf9z4mfOKgGLH92OP8X8nLI /rR88xOu4Zq3+mAox1F0R39XgGtmI9rUtu781NarhpNcYf/OFGlRVkqQIRU/7DNi4v+I3+K/KpGeY hw7lWsmd5kUWtbsjAysSA+kFdm9enodR5lM5mBETq7JEMbIFq3K7ZyLGh1cgAik6JaEY=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [linux-5.4 test] 181482: regressions - FAIL X-Osstest-Failures: linux-5.4:build-i386-pvops:kernel-build:fail:regression linux-5.4:build-armhf-pvops:kernel-build:fail:regression linux-5.4:test-amd64-amd64-xl-rtds:xen-boot:fail:heisenbug linux-5.4:test-amd64-amd64-qemuu-freebsd12-amd64:guest-start/freebsd.repeat:fail:heisenbug linux-5.4:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:debian-hvm-install:fail:heisenbug linux-5.4:test-amd64-i386-freebsd10-i386:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-qemuu-rhel6hvm-amd:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-examine:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-pair:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-qemut-win7-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-xsm:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-coresched-i386-xl:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-examine-bios:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-libvirt-raw:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-shadow:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-pvshim:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-qemut-rhel6hvm-intel:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-qemut-ws16-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-vhd:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-freebsd10-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-qemuu-rhel6hvm-intel:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-xl:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-examine:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-qemut-rhel6hvm-amd:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-examine-uefi:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-qemut-debianhvm-amd64:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-qemut-debianhvm-i386-xsm:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-xl-credit2:guest-start:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking linux-5.4:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-rtds:guest-start/debian.repeat:fail:nonblocking linux-5.4:test-amd64-amd64-xl-qcow2:guest-start/debian.repeat:fail:nonblocking linux-5.4:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking linux-5.4:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking linux-5.4:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking linux-5.4:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking linux-5.4:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: linux=61a2f83e4762ee0c766f86944e612305f5888bcb X-Osstest-Versions-That: linux=f568a20f058fa1e37069cff4aac4187c1650a0e9 From: osstest service owner Date: Sun, 18 Jun 2023 02:48:17 +0000 flight 181482 linux-5.4 real [real] http://logs.test-lab.xenproject.org/osstest/logs/181482/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-i386-pvops 6 kernel-build fail in 181474 REGR. vs. 181363 build-armhf-pvops 6 kernel-build fail in 181474 REGR. vs. 181363 Tests which are failing intermittently (not blocking): test-amd64-amd64-xl-rtds 8 xen-boot fail in 181474 pass in 181482 test-amd64-amd64-qemuu-freebsd12-amd64 21 guest-start/freebsd.repeat fail in 181474 pass in 181482 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm 12 debian-hvm-install fail pass in 181474 Tests which did not succeed, but are not blocking: test-amd64-i386-freebsd10-i386 1 build-check(1) blocked in 181474 n/a test-amd64-i386-qemuu-rhel6hvm-amd 1 build-check(1) blocked in 181474 n/a test-armhf-armhf-examine 1 build-check(1) blocked in 181474 n/a test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked in 181474 n/a test-armhf-armhf-xl-credit2 1 build-check(1) blocked in 181474 n/a test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked in 181474 n/a test-armhf-armhf-xl-credit1 1 build-check(1) blocked in 181474 n/a test-amd64-i386-pair 1 build-check(1) blocked in 181474 n/a test-amd64-i386-xl-qemut-win7-amd64 1 build-check(1) blocked in 181474 n/a test-amd64-i386-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked in 181474 n/a test-amd64-i386-xl-xsm 1 build-check(1) blocked in 181474 n/a test-amd64-i386-xl-qemuu-ws16-amd64 1 build-check(1) blocked in 181474 n/a test-amd64-coresched-i386-xl 1 build-check(1) blocked in 181474 n/a test-amd64-i386-examine-bios 1 build-check(1) blocked in 181474 n/a test-amd64-i386-libvirt-pair 1 build-check(1) blocked in 181474 n/a test-armhf-armhf-libvirt-qcow2 1 build-check(1) blocked in 181474 n/a test-amd64-i386-libvirt-raw 1 build-check(1) blocked in 181474 n/a test-armhf-armhf-libvirt-raw 1 build-check(1) blocked in 181474 n/a test-amd64-i386-xl-shadow 1 build-check(1) blocked in 181474 n/a test-amd64-i386-xl-pvshim 1 build-check(1) blocked in 181474 n/a test-amd64-i386-qemut-rhel6hvm-intel 1 build-check(1) blocked in 181474 n/a test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm 1 build-check(1) blocked in 181474 n/a test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked in 181474 n/a test-amd64-i386-xl-qemut-ws16-amd64 1 build-check(1) blocked in 181474 n/a test-amd64-i386-xl-vhd 1 build-check(1) blocked in 181474 n/a test-amd64-i386-libvirt 1 build-check(1) blocked in 181474 n/a test-amd64-i386-freebsd10-amd64 1 build-check(1) blocked in 181474 n/a test-amd64-i386-xl 1 build-check(1) blocked in 181474 n/a test-armhf-armhf-xl-vhd 1 build-check(1) blocked in 181474 n/a test-amd64-i386-qemuu-rhel6hvm-intel 1 build-check(1) blocked in 181474 n/a test-armhf-armhf-xl 1 build-check(1) blocked in 181474 n/a test-amd64-i386-xl-qemuu-win7-amd64 1 build-check(1) blocked in 181474 n/a test-amd64-i386-xl-qemuu-ovmf-amd64 1 build-check(1) blocked in 181474 n/a test-amd64-i386-examine 1 build-check(1) blocked in 181474 n/a test-amd64-i386-qemut-rhel6hvm-amd 1 build-check(1) blocked in 181474 n/a test-armhf-armhf-xl-arndale 1 build-check(1) blocked in 181474 n/a test-armhf-armhf-xl-rtds 1 build-check(1) blocked in 181474 n/a test-armhf-armhf-libvirt 1 build-check(1) blocked in 181474 n/a test-amd64-i386-examine-uefi 1 build-check(1) blocked in 181474 n/a test-amd64-i386-xl-qemut-debianhvm-amd64 1 build-check(1) blocked in 181474 n/a test-armhf-armhf-xl-multivcpu 1 build-check(1) blocked in 181474 n/a test-amd64-i386-xl-qemut-debianhvm-i386-xsm 1 build-check(1) blocked in 181474 n/a test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked in 181474 n/a test-amd64-i386-libvirt-xsm 1 build-check(1) blocked in 181474 n/a test-armhf-armhf-xl-credit2 14 guest-start fail like 181354 test-armhf-armhf-libvirt 16 saverestore-support-check fail like 181363 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 181363 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop fail like 181363 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop fail like 181363 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 181363 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 181363 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 181363 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail like 181363 test-armhf-armhf-xl-rtds 18 guest-start/debian.repeat fail like 181363 test-amd64-amd64-xl-qcow2 21 guest-start/debian.repeat fail like 181363 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop fail like 181363 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail like 181363 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop fail like 181363 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 181363 test-amd64-i386-xl-pvshim 14 guest-start fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-i386-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-i386-libvirt 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-armhf-armhf-xl-multivcpu 15 migrate-support-check fail never pass test-armhf-armhf-xl-multivcpu 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-check fail never pass test-armhf-armhf-libvirt 15 migrate-support-check fail never pass test-amd64-i386-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 15 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-armhf-armhf-xl-credit1 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass test-armhf-armhf-xl 15 migrate-support-check fail never pass test-armhf-armhf-xl 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 15 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 15 saverestore-support-check fail never pass version targeted for testing: linux 61a2f83e4762ee0c766f86944e612305f5888bcb baseline version: linux f568a20f058fa1e37069cff4aac4187c1650a0e9 Last test of basis 181363 2023-06-10 15:39:59 Z 7 days Testing same since 181425 2023-06-14 10:50:49 Z 3 days 6 attempts ------------------------------------------------------------ People who touched revisions under test: Ai Chao Alan Stern Alex Deucher Alexander Sverdlin Arnd Bergmann Bartosz Golaszewski Ben Hutchings Chia-I Wu Chris Paterson (CIP) David Jander David S. Miller David Sterba Dmitry Torokhov Eric Dumazet Fedor Pchelkin Florian Westphal Greg Kroah-Hartman Guenter Roeck Gustavo A. R. Silva Hangyu Hua Harshit Mogalapalli Ilya Dryomov Ismael Ferreras Morezuelas JaimeLiao Jakub Kicinski Jamal Hadi Salim Jens Axboe Jiri Slaby (SUSE) Jon Hunter Josef Bacik Jozsef Kadlecsik Kuniyuki Iwashima Linus Walleij Linux Kernel Functional Testing Luiz Augusto von Dentz Marc Kleine-Budde Mark Brown Martin Hundebøll Maxime Ripard Michael Chan Min Li Miquel Raynal Oleksij Rempel Pablo Neira Ayuso Paolo Abeni Paulo Alcantara (SUSE) Paulo Alcantara Qingfang DENG Randy Dunlap RenHai Rishabh Bhatnagar Ruihan Li Sasha Levin Shuah Khan Simon Wunderlich Somnath Kotur Stefan Ghinea Stephan Gerhold Steve French Sudip Mukherjee Sungwoo Kim Sven Eckelmann Takashi Iwai Tejun Heo Theodore Ts'o Tijs Van Buggenhout Uwe Kleine-König Ville Syrjälä Vladislav Efanov Wolfram Sang Xiubo Li Ying Hsu YouChing Lin Zixuan Fu jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl pass test-amd64-i386-xl pass test-amd64-coresched-i386-xl pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm fail test-amd64-i386-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-i386-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-i386-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-i386-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-i386-qemut-rhel6hvm-amd pass test-amd64-i386-qemuu-rhel6hvm-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-i386-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-freebsd10-amd64 pass test-amd64-amd64-qemuu-freebsd11-amd64 pass test-amd64-amd64-qemuu-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-i386-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-i386-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-i386-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-amd64-i386-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale pass test-amd64-amd64-examine-bios pass test-amd64-i386-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 pass test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 fail test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine pass test-amd64-i386-examine pass test-amd64-i386-freebsd10-i386 pass test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-i386-qemut-rhel6hvm-intel pass test-amd64-i386-qemuu-rhel6hvm-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt pass test-amd64-i386-libvirt pass test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu pass test-amd64-amd64-pair pass test-amd64-i386-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-i386-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-i386-xl-pvshim fail test-amd64-amd64-pygrub pass test-armhf-armhf-libvirt-qcow2 pass test-amd64-amd64-xl-qcow2 fail test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw pass test-amd64-i386-libvirt-raw pass test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds fail test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-amd64-i386-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-i386-examine-uefi pass test-amd64-amd64-libvirt-vhd pass test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd pass test-amd64-i386-xl-vhd pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 1380 lines long.) From xen-devel-bounces@lists.xenproject.org Sun Jun 18 07:01:27 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sun, 18 Jun 2023 07:01:27 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550714.859877 (Exim 4.92) (envelope-from ) id 1qAmPN-0001db-Ot; Sun, 18 Jun 2023 07:01:09 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550714.859877; Sun, 18 Jun 2023 07:01:09 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAmPN-0001dU-Kf; Sun, 18 Jun 2023 07:01:09 +0000 Received: by outflank-mailman (input) for mailman id 550714; Sun, 18 Jun 2023 07:01:08 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAmPM-0001dI-I4; Sun, 18 Jun 2023 07:01:08 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAmPM-0004Bd-8G; Sun, 18 Jun 2023 07:01:08 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAmPL-00089c-Qb; Sun, 18 Jun 2023 07:01:07 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qAmPL-0005Uv-Q7; Sun, 18 Jun 2023 07:01:07 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=26loO3x8QkzLPBagxYbo0F8wjte4aXcpyvM09yv+GUk=; b=p9pLmpsFnKF4uXWS70QVBQp7nC WGUloek+aI83zjliFGBTIUZeObpnzXhzq3Z5pgMiDMxCiSzf2Rxdmej7S0TG86omNtuRGby/ThOmb V2v+YgmMoxSNJEbmEAU/N+X80LRun/L9uKnns7tvaWGygk6wb0+eam+Kpn5uOqVUexng=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [linux-linus test] 181484: regressions - FAIL X-Osstest-Failures: linux-linus:test-armhf-armhf-xl-credit1:xen-boot:fail:regression linux-linus:test-armhf-armhf-xl-multivcpu:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-credit2:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-raw:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking linux-linus:test-armhf-armhf-libvirt:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-arndale:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-examine:reboot:fail:nonblocking linux-linus:test-armhf-armhf-xl-rtds:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-qcow2:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-vhd:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-raw:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-qcow2:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: linux=1639fae5132bc8a904af28d97cea0bedb3af802e X-Osstest-Versions-That: linux=6c538e1adbfc696ac4747fb10d63e704344f763d From: osstest service owner Date: Sun, 18 Jun 2023 07:01:07 +0000 flight 181484 linux-linus real [real] flight 181490 linux-linus real-retest [real] http://logs.test-lab.xenproject.org/osstest/logs/181484/ http://logs.test-lab.xenproject.org/osstest/logs/181490/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: test-armhf-armhf-xl-credit1 8 xen-boot fail REGR. vs. 180278 Tests which did not succeed, but are not blocking: test-armhf-armhf-xl-multivcpu 8 xen-boot fail like 180278 test-armhf-armhf-xl 8 xen-boot fail like 180278 test-armhf-armhf-xl-credit2 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 180278 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 180278 test-armhf-armhf-libvirt-raw 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 180278 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 180278 test-armhf-armhf-libvirt 8 xen-boot fail like 180278 test-armhf-armhf-xl-arndale 8 xen-boot fail like 180278 test-armhf-armhf-examine 8 reboot fail like 180278 test-armhf-armhf-xl-rtds 8 xen-boot fail like 180278 test-armhf-armhf-libvirt-qcow2 8 xen-boot fail like 180278 test-armhf-armhf-xl-vhd 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 180278 test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qcow2 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass version targeted for testing: linux 1639fae5132bc8a904af28d97cea0bedb3af802e baseline version: linux 6c538e1adbfc696ac4747fb10d63e704344f763d Last test of basis 180278 2023-04-16 19:41:46 Z 62 days Failing since 180281 2023-04-17 06:24:36 Z 62 days 117 attempts Testing same since 181479 2023-06-17 07:00:47 Z 0 days 2 attempts ------------------------------------------------------------ 2727 people touched revisions under test, not listing them all jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl fail test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-freebsd11-amd64 pass test-amd64-amd64-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale fail test-amd64-amd64-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 fail test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 fail test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine fail test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt fail test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu fail test-amd64-amd64-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-amd64-pygrub pass test-amd64-amd64-libvirt-qcow2 pass test-armhf-armhf-libvirt-qcow2 fail test-amd64-amd64-libvirt-raw pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw fail test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds fail test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-amd64-xl-vhd pass test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd fail ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 347202 lines long.) From xen-devel-bounces@lists.xenproject.org Sun Jun 18 07:30:04 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sun, 18 Jun 2023 07:30:04 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550722.859886 (Exim 4.92) (envelope-from ) id 1qAmrH-0004F6-0f; Sun, 18 Jun 2023 07:29:59 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550722.859886; Sun, 18 Jun 2023 07:29:58 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAmrG-0004Ez-Tz; Sun, 18 Jun 2023 07:29:58 +0000 Received: by outflank-mailman (input) for mailman id 550722; Sun, 18 Jun 2023 07:29:58 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAmrF-0004Ep-Um; Sun, 18 Jun 2023 07:29:57 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAmrF-0004nO-OJ; Sun, 18 Jun 2023 07:29:57 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAmrF-0000k7-87; Sun, 18 Jun 2023 07:29:57 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qAmrF-0002Tm-7e; Sun, 18 Jun 2023 07:29:57 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=dMoYOPvRK5Uia1K5KKSxfaq5J69uZN5V+ouPeiFfTZ0=; b=1ZI+rGCf8Ctqo8O9T3glBYJp9F 7uPmejbXgGYIf6MInkNvIyjHzj31mkARKDyADQrLgEhpp85vQLIkoD7JIoC8FhzErlsQBm9POskuB cY7vgXnOZyrUyFm+bGWXUUu0kf+UJohtkGxLyxQindLvzx8UQOoLnCTVQtPdUHxKAOZE=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [qemu-mainline test] 181485: regressions - FAIL X-Osstest-Failures: qemu-mainline:build-amd64:xen-build:fail:regression qemu-mainline:build-amd64-xsm:xen-build:fail:regression qemu-mainline:build-arm64:xen-build:fail:regression qemu-mainline:build-arm64-xsm:xen-build:fail:regression qemu-mainline:build-i386:xen-build:fail:regression qemu-mainline:build-i386-xsm:xen-build:fail:regression qemu-mainline:build-armhf:xen-build:fail:regression qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-i386:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:build-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:build-arm64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:build-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:build-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pygrub:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking X-Osstest-Versions-This: qemuu=e3660cc1e3cb136af50c0eaaeac27943c2438d1d X-Osstest-Versions-That: qemuu=6972ef1440a9d685482d78672620a7482f2bd09a From: osstest service owner Date: Sun, 18 Jun 2023 07:29:57 +0000 flight 181485 qemu-mainline real [real] http://logs.test-lab.xenproject.org/osstest/logs/181485/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-amd64 6 xen-build fail REGR. vs. 180691 build-amd64-xsm 6 xen-build fail REGR. vs. 180691 build-arm64 6 xen-build fail REGR. vs. 180691 build-arm64-xsm 6 xen-build fail REGR. vs. 180691 build-i386 6 xen-build fail REGR. vs. 180691 build-i386-xsm 6 xen-build fail REGR. vs. 180691 build-armhf 6 xen-build fail REGR. vs. 180691 Tests which did not succeed, but are not blocking: test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-xl-xsm 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-raw 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-xsm 1 build-check(1) blocked n/a test-arm64-arm64-xl 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit1 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit2 1 build-check(1) blocked n/a test-arm64-arm64-xl-thunderx 1 build-check(1) blocked n/a test-arm64-arm64-xl-vhd 1 build-check(1) blocked n/a test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a test-armhf-armhf-libvirt 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-qcow2 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-raw 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a test-armhf-armhf-xl-arndale 1 build-check(1) blocked n/a test-armhf-armhf-xl-multivcpu 1 build-check(1) blocked n/a test-armhf-armhf-xl-rtds 1 build-check(1) blocked n/a test-armhf-armhf-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-amd 1 build-check(1) blocked n/a test-amd64-i386-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-raw 1 build-check(1) blocked n/a test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-i386 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-amd64 1 build-check(1) blocked n/a test-amd64-coresched-i386-xl 1 build-check(1) blocked n/a test-amd64-coresched-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-xsm 1 build-check(1) blocked n/a build-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-shadow 1 build-check(1) blocked n/a test-amd64-amd64-xl-rtds 1 build-check(1) blocked n/a build-arm64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a build-armhf-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a build-i386-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-amd 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-pair 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-qcow2 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-vhd 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvshim 1 build-check(1) blocked n/a test-amd64-amd64-pair 1 build-check(1) blocked n/a test-amd64-amd64-pygrub 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-intel 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd11-amd64 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd12-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-multivcpu 1 build-check(1) blocked n/a test-amd64-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit1 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit1 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-intel 1 build-check(1) blocked n/a test-amd64-i386-xl 1 build-check(1) blocked n/a test-amd64-i386-xl-pvshim 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a version targeted for testing: qemuu e3660cc1e3cb136af50c0eaaeac27943c2438d1d baseline version: qemuu 6972ef1440a9d685482d78672620a7482f2bd09a Last test of basis 180691 2023-05-17 10:45:22 Z 31 days Failing since 180699 2023-05-18 07:21:24 Z 31 days 111 attempts Testing same since 181483 2023-06-17 15:10:36 Z 0 days 2 attempts ------------------------------------------------------------ People who touched revisions under test: Afonso Bordado Akihiko Odaki Akihiro Suda Alex Bennée Alex Williamson Alexander Bulekov Alexander Graf Alexander Ivanov Alistair Francis Anastasia Belova Andrea Bolognani Andreas Schwab Andrew Jeffery Ani Sinha Ani Sinha Anthony PERARD Anton Johansson Antonio Caggiano BALATON Zoltan Bastian Koppelmann Bernhard Beschow Bin Meng Brian Cain Brice Goglin Camilla Conte Carlos Santos Christian Schoenebeck Chuck Zmudzinski Cindy Lu Clément Chigot Corey Minyard Cornelia Huck Cédric Le Goater Cédric Le Goater Daniel Henrique Barboza Daniel Henrique Barboza Daniel P. Berrangé Daniil Kovalev David Hildenbrand David Woodhouse Emanuele Giuseppe Esposito Enze Li Eric Auger Eric Blake Eric DeVolder Erico Nunes Eugenio Pérez Fabiano Rosas Fan Ni Fiona Ebner Francesco Cagnin Francisco Iglesias Frederic Barrat Gavin Shan Gregory Price Gregory Price Hanna Czenczek Hao Zeng Hawkins Jiawei Himanshu Chauhan Igor Mammedov Ilya Leoshkevich Ira Weiny Ivan Klokov Jagannathan Raman Jason Wang Jean-Louis Dupond Jean-Philippe Brucker Jiajie Chen Jiaxun Yang Joao Martins John Snow Jonathan Cameron Juan Quintela Junqiang Wang Kevin Wolf Laurent Vivier Lei Yang Leonardo Bras Maksim Davydov Marc-André Lureau Marcin Juszkiewicz Marco Liebel Mark Cave-Ayland Markus Armbruster Matheus Tavares Bernardino Mattias Nissler Mauro Matteo Cascella Max Fritz Mayuresh Chitale Michael S. Tsirkin Michael Tokarev Michal Privoznik Milan Zamazal Mostafa Saleh Nicholas Piggin Nicolas Saenz Julienne Niek Linnenbank Niklas Cassel Ninad Palsule Palmer Dabbelt Paolo Bonzini Patrick Venture Peter Maydell Peter Xu Philippe Mathieu-Daudé Philippe Mathieu-Daudé qianfan Zhao Raghu H Rene Engel Richard Henderson Richard Purdie Ricky Zhou Ryan Wendland Sebastian Ott Sergio Lopez Sid Manning Song Gao Stefan Hajnoczi Stefano Garzarella Stefano Stabellini Stefano Stabellini Steve Sistare Sunil V L Taylor Simpson Thomas Huth Thomas Weißschuh Tianrui Zhao timothee.cocault@gmail.com Timothée Cocault Tommy Wu Vikram Garhwal Viktor Prutyanov Vitaly Cheptsov Vivek Kasireddy Vladimir Sementsov-Ogievskiy Volker Rümelin Weiwei Li Xiao Wang Xinyu Li Yin Wang Zeng Hao Zhenyu Zhang Zhenzhong Duan Zhuojia Shen jobs: build-amd64-xsm fail build-arm64-xsm fail build-i386-xsm fail build-amd64 fail build-arm64 fail build-armhf fail build-i386 fail build-amd64-libvirt blocked build-arm64-libvirt blocked build-armhf-libvirt blocked build-i386-libvirt blocked build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl blocked test-amd64-coresched-amd64-xl blocked test-arm64-arm64-xl blocked test-armhf-armhf-xl blocked test-amd64-i386-xl blocked test-amd64-coresched-i386-xl blocked test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-i386-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-amd64-libvirt-xsm blocked test-arm64-arm64-libvirt-xsm blocked test-amd64-i386-libvirt-xsm blocked test-amd64-amd64-xl-xsm blocked test-arm64-arm64-xl-xsm blocked test-amd64-i386-xl-xsm blocked test-amd64-amd64-qemuu-nested-amd blocked test-amd64-amd64-xl-pvhv2-amd blocked test-amd64-i386-qemuu-rhel6hvm-amd blocked test-amd64-amd64-dom0pvh-xl-amd blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-freebsd10-amd64 blocked test-amd64-amd64-qemuu-freebsd11-amd64 blocked test-amd64-amd64-qemuu-freebsd12-amd64 blocked test-amd64-amd64-xl-qemuu-ovmf-amd64 blocked test-amd64-i386-xl-qemuu-ovmf-amd64 blocked test-amd64-amd64-xl-qemuu-win7-amd64 blocked test-amd64-i386-xl-qemuu-win7-amd64 blocked test-amd64-amd64-xl-qemuu-ws16-amd64 blocked test-amd64-i386-xl-qemuu-ws16-amd64 blocked test-armhf-armhf-xl-arndale blocked test-amd64-amd64-xl-credit1 blocked test-arm64-arm64-xl-credit1 blocked test-armhf-armhf-xl-credit1 blocked test-amd64-amd64-xl-credit2 blocked test-arm64-arm64-xl-credit2 blocked test-armhf-armhf-xl-credit2 blocked test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-freebsd10-i386 blocked test-amd64-amd64-qemuu-nested-intel blocked test-amd64-amd64-xl-pvhv2-intel blocked test-amd64-i386-qemuu-rhel6hvm-intel blocked test-amd64-amd64-dom0pvh-xl-intel blocked test-amd64-amd64-libvirt blocked test-armhf-armhf-libvirt blocked test-amd64-i386-libvirt blocked test-amd64-amd64-xl-multivcpu blocked test-armhf-armhf-xl-multivcpu blocked test-amd64-amd64-pair blocked test-amd64-i386-pair blocked test-amd64-amd64-libvirt-pair blocked test-amd64-i386-libvirt-pair blocked test-amd64-amd64-xl-pvshim blocked test-amd64-i386-xl-pvshim blocked test-amd64-amd64-pygrub blocked test-armhf-armhf-libvirt-qcow2 blocked test-amd64-amd64-xl-qcow2 blocked test-arm64-arm64-libvirt-raw blocked test-armhf-armhf-libvirt-raw blocked test-amd64-i386-libvirt-raw blocked test-amd64-amd64-xl-rtds blocked test-armhf-armhf-xl-rtds blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-amd64-xl-shadow blocked test-amd64-i386-xl-shadow blocked test-arm64-arm64-xl-thunderx blocked test-amd64-amd64-libvirt-vhd blocked test-arm64-arm64-xl-vhd blocked test-armhf-armhf-xl-vhd blocked test-amd64-i386-xl-vhd blocked ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 19235 lines long.) From xen-devel-bounces@lists.xenproject.org Sun Jun 18 10:50:25 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sun, 18 Jun 2023 10:50:25 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550741.859896 (Exim 4.92) (envelope-from ) id 1qApz1-00008h-MI; Sun, 18 Jun 2023 10:50:11 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550741.859896; Sun, 18 Jun 2023 10:50:11 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qApz1-00008Z-JY; Sun, 18 Jun 2023 10:50:11 +0000 Received: by outflank-mailman (input) for mailman id 550741; Sun, 18 Jun 2023 10:50:10 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qApz0-00008P-62; Sun, 18 Jun 2023 10:50:10 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qApz0-0001f9-0m; Sun, 18 Jun 2023 10:50:10 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qApyz-0001Xm-Fz; Sun, 18 Jun 2023 10:50:09 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qApyz-00039P-F3; Sun, 18 Jun 2023 10:50:09 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=N26pLtntKayywArcNoj/m4OzCVAunnoNvvxWi/pG8QI=; b=LOd6JXFjRfBva8Fts4XKHwj0ZO C77tVQi337ByPHtv9YxjW2JeQ1xVKZfHKzF3Zr7FY7usKqzz8JgR+ucGRmhJjVH0ORWpkRY1PEz8T jVRDLN9yGZfDfGUQBiQqfuwTA7APfDpV9Dq6IoawDOF1+dPkMBBrzSEPqsvixl2Nabuk=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [qemu-mainline test] 181492: regressions - FAIL X-Osstest-Failures: qemu-mainline:build-amd64:xen-build:fail:regression qemu-mainline:build-amd64-xsm:xen-build:fail:regression qemu-mainline:build-arm64:xen-build:fail:regression qemu-mainline:build-arm64-xsm:xen-build:fail:regression qemu-mainline:build-i386:xen-build:fail:regression qemu-mainline:build-i386-xsm:xen-build:fail:regression qemu-mainline:build-armhf:xen-build:fail:regression qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-i386:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:build-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:build-arm64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:build-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:build-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pygrub:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking X-Osstest-Versions-This: qemuu=e3660cc1e3cb136af50c0eaaeac27943c2438d1d X-Osstest-Versions-That: qemuu=6972ef1440a9d685482d78672620a7482f2bd09a From: osstest service owner Date: Sun, 18 Jun 2023 10:50:09 +0000 flight 181492 qemu-mainline real [real] http://logs.test-lab.xenproject.org/osstest/logs/181492/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-amd64 6 xen-build fail REGR. vs. 180691 build-amd64-xsm 6 xen-build fail REGR. vs. 180691 build-arm64 6 xen-build fail REGR. vs. 180691 build-arm64-xsm 6 xen-build fail REGR. vs. 180691 build-i386 6 xen-build fail REGR. vs. 180691 build-i386-xsm 6 xen-build fail REGR. vs. 180691 build-armhf 6 xen-build fail REGR. vs. 180691 Tests which did not succeed, but are not blocking: test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-xl-xsm 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-raw 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-xsm 1 build-check(1) blocked n/a test-arm64-arm64-xl 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit1 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit2 1 build-check(1) blocked n/a test-arm64-arm64-xl-thunderx 1 build-check(1) blocked n/a test-arm64-arm64-xl-vhd 1 build-check(1) blocked n/a test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a test-armhf-armhf-libvirt 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-qcow2 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-raw 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a test-armhf-armhf-xl-arndale 1 build-check(1) blocked n/a test-armhf-armhf-xl-multivcpu 1 build-check(1) blocked n/a test-armhf-armhf-xl-rtds 1 build-check(1) blocked n/a test-armhf-armhf-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-amd 1 build-check(1) blocked n/a test-amd64-i386-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-raw 1 build-check(1) blocked n/a test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-i386 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-amd64 1 build-check(1) blocked n/a test-amd64-coresched-i386-xl 1 build-check(1) blocked n/a test-amd64-coresched-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-xsm 1 build-check(1) blocked n/a build-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-shadow 1 build-check(1) blocked n/a test-amd64-amd64-xl-rtds 1 build-check(1) blocked n/a build-arm64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a build-armhf-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a build-i386-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-amd 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-pair 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-qcow2 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-vhd 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvshim 1 build-check(1) blocked n/a test-amd64-amd64-pair 1 build-check(1) blocked n/a test-amd64-amd64-pygrub 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-intel 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd11-amd64 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd12-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-multivcpu 1 build-check(1) blocked n/a test-amd64-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit1 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit1 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-intel 1 build-check(1) blocked n/a test-amd64-i386-xl 1 build-check(1) blocked n/a test-amd64-i386-xl-pvshim 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a version targeted for testing: qemuu e3660cc1e3cb136af50c0eaaeac27943c2438d1d baseline version: qemuu 6972ef1440a9d685482d78672620a7482f2bd09a Last test of basis 180691 2023-05-17 10:45:22 Z 32 days Failing since 180699 2023-05-18 07:21:24 Z 31 days 112 attempts Testing same since 181483 2023-06-17 15:10:36 Z 0 days 3 attempts ------------------------------------------------------------ People who touched revisions under test: Afonso Bordado Akihiko Odaki Akihiro Suda Alex Bennée Alex Williamson Alexander Bulekov Alexander Graf Alexander Ivanov Alistair Francis Anastasia Belova Andrea Bolognani Andreas Schwab Andrew Jeffery Ani Sinha Ani Sinha Anthony PERARD Anton Johansson Antonio Caggiano BALATON Zoltan Bastian Koppelmann Bernhard Beschow Bin Meng Brian Cain Brice Goglin Camilla Conte Carlos Santos Christian Schoenebeck Chuck Zmudzinski Cindy Lu Clément Chigot Corey Minyard Cornelia Huck Cédric Le Goater Cédric Le Goater Daniel Henrique Barboza Daniel Henrique Barboza Daniel P. Berrangé Daniil Kovalev David Hildenbrand David Woodhouse Emanuele Giuseppe Esposito Enze Li Eric Auger Eric Blake Eric DeVolder Erico Nunes Eugenio Pérez Fabiano Rosas Fan Ni Fiona Ebner Francesco Cagnin Francisco Iglesias Frederic Barrat Gavin Shan Gregory Price Gregory Price Hanna Czenczek Hao Zeng Hawkins Jiawei Himanshu Chauhan Igor Mammedov Ilya Leoshkevich Ira Weiny Ivan Klokov Jagannathan Raman Jason Wang Jean-Louis Dupond Jean-Philippe Brucker Jiajie Chen Jiaxun Yang Joao Martins John Snow Jonathan Cameron Juan Quintela Junqiang Wang Kevin Wolf Laurent Vivier Lei Yang Leonardo Bras Maksim Davydov Marc-André Lureau Marcin Juszkiewicz Marco Liebel Mark Cave-Ayland Markus Armbruster Matheus Tavares Bernardino Mattias Nissler Mauro Matteo Cascella Max Fritz Mayuresh Chitale Michael S. Tsirkin Michael Tokarev Michal Privoznik Milan Zamazal Mostafa Saleh Nicholas Piggin Nicolas Saenz Julienne Niek Linnenbank Niklas Cassel Ninad Palsule Palmer Dabbelt Paolo Bonzini Patrick Venture Peter Maydell Peter Xu Philippe Mathieu-Daudé Philippe Mathieu-Daudé qianfan Zhao Raghu H Rene Engel Richard Henderson Richard Purdie Ricky Zhou Ryan Wendland Sebastian Ott Sergio Lopez Sid Manning Song Gao Stefan Hajnoczi Stefano Garzarella Stefano Stabellini Stefano Stabellini Steve Sistare Sunil V L Taylor Simpson Thomas Huth Thomas Weißschuh Tianrui Zhao timothee.cocault@gmail.com Timothée Cocault Tommy Wu Vikram Garhwal Viktor Prutyanov Vitaly Cheptsov Vivek Kasireddy Vladimir Sementsov-Ogievskiy Volker Rümelin Weiwei Li Xiao Wang Xinyu Li Yin Wang Zeng Hao Zhenyu Zhang Zhenzhong Duan Zhuojia Shen jobs: build-amd64-xsm fail build-arm64-xsm fail build-i386-xsm fail build-amd64 fail build-arm64 fail build-armhf fail build-i386 fail build-amd64-libvirt blocked build-arm64-libvirt blocked build-armhf-libvirt blocked build-i386-libvirt blocked build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl blocked test-amd64-coresched-amd64-xl blocked test-arm64-arm64-xl blocked test-armhf-armhf-xl blocked test-amd64-i386-xl blocked test-amd64-coresched-i386-xl blocked test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-i386-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-amd64-libvirt-xsm blocked test-arm64-arm64-libvirt-xsm blocked test-amd64-i386-libvirt-xsm blocked test-amd64-amd64-xl-xsm blocked test-arm64-arm64-xl-xsm blocked test-amd64-i386-xl-xsm blocked test-amd64-amd64-qemuu-nested-amd blocked test-amd64-amd64-xl-pvhv2-amd blocked test-amd64-i386-qemuu-rhel6hvm-amd blocked test-amd64-amd64-dom0pvh-xl-amd blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-freebsd10-amd64 blocked test-amd64-amd64-qemuu-freebsd11-amd64 blocked test-amd64-amd64-qemuu-freebsd12-amd64 blocked test-amd64-amd64-xl-qemuu-ovmf-amd64 blocked test-amd64-i386-xl-qemuu-ovmf-amd64 blocked test-amd64-amd64-xl-qemuu-win7-amd64 blocked test-amd64-i386-xl-qemuu-win7-amd64 blocked test-amd64-amd64-xl-qemuu-ws16-amd64 blocked test-amd64-i386-xl-qemuu-ws16-amd64 blocked test-armhf-armhf-xl-arndale blocked test-amd64-amd64-xl-credit1 blocked test-arm64-arm64-xl-credit1 blocked test-armhf-armhf-xl-credit1 blocked test-amd64-amd64-xl-credit2 blocked test-arm64-arm64-xl-credit2 blocked test-armhf-armhf-xl-credit2 blocked test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-freebsd10-i386 blocked test-amd64-amd64-qemuu-nested-intel blocked test-amd64-amd64-xl-pvhv2-intel blocked test-amd64-i386-qemuu-rhel6hvm-intel blocked test-amd64-amd64-dom0pvh-xl-intel blocked test-amd64-amd64-libvirt blocked test-armhf-armhf-libvirt blocked test-amd64-i386-libvirt blocked test-amd64-amd64-xl-multivcpu blocked test-armhf-armhf-xl-multivcpu blocked test-amd64-amd64-pair blocked test-amd64-i386-pair blocked test-amd64-amd64-libvirt-pair blocked test-amd64-i386-libvirt-pair blocked test-amd64-amd64-xl-pvshim blocked test-amd64-i386-xl-pvshim blocked test-amd64-amd64-pygrub blocked test-armhf-armhf-libvirt-qcow2 blocked test-amd64-amd64-xl-qcow2 blocked test-arm64-arm64-libvirt-raw blocked test-armhf-armhf-libvirt-raw blocked test-amd64-i386-libvirt-raw blocked test-amd64-amd64-xl-rtds blocked test-armhf-armhf-xl-rtds blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-amd64-xl-shadow blocked test-amd64-i386-xl-shadow blocked test-arm64-arm64-xl-thunderx blocked test-amd64-amd64-libvirt-vhd blocked test-arm64-arm64-xl-vhd blocked test-armhf-armhf-xl-vhd blocked test-amd64-i386-xl-vhd blocked ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 19235 lines long.) From xen-devel-bounces@lists.xenproject.org Sun Jun 18 13:19:43 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sun, 18 Jun 2023 13:19:43 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550750.859906 (Exim 4.92) (envelope-from ) id 1qAsJL-00069j-Ca; Sun, 18 Jun 2023 13:19:19 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550750.859906; Sun, 18 Jun 2023 13:19:19 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAsJL-00069c-9m; Sun, 18 Jun 2023 13:19:19 +0000 Received: by outflank-mailman (input) for mailman id 550750; Sun, 18 Jun 2023 13:19:18 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAsJK-00069S-7J; Sun, 18 Jun 2023 13:19:18 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAsJK-0004vm-1B; Sun, 18 Jun 2023 13:19:18 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAsJJ-00054P-Kk; Sun, 18 Jun 2023 13:19:17 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qAsJJ-0005AV-KE; Sun, 18 Jun 2023 13:19:17 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=BpEjls6XoZ+VlYkjkTxatqNFEnyL7uILVqdaFk0U/j0=; b=A+TJq15RULwG6OPjQiPPu6yVtT JXYhqbFCuZd1Jy2vgpAL+spIDxaqU+zVD1GEsz890Ww5kfZ/sGv5gNFK3ZS90RrtwIJIkACQNvUFP LtKydG/5mWCCySFNlW0Al6vYQF/HxmBqaZCpCbCejwO5FI2oGYqA41D9IiLWreCfP1Vk=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable test] 181486: regressions - trouble: blocked/broken/fail/pass X-Osstest-Failures: xen-unstable:build-armhf::broken:regression xen-unstable:build-armhf:host-build-prep:fail:regression xen-unstable:test-amd64-i386-qemut-rhel6hvm-amd:xen-install:fail:heisenbug xen-unstable:build-armhf-libvirt:build-check(1):blocked:nonblocking xen-unstable:test-armhf-armhf-examine:build-check(1):blocked:nonblocking xen-unstable:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking xen-unstable:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking xen-unstable:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking xen-unstable:test-armhf-armhf-xl:build-check(1):blocked:nonblocking xen-unstable:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking xen-unstable:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking xen-unstable:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking xen-unstable:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking xen-unstable:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking xen-unstable:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: xen=7a25a1501ca941c3e01b0c4e624ace05417f1587 X-Osstest-Versions-That: xen=7a25a1501ca941c3e01b0c4e624ace05417f1587 From: osstest service owner Date: Sun, 18 Jun 2023 13:19:17 +0000 flight 181486 xen-unstable real [real] http://logs.test-lab.xenproject.org/osstest/logs/181486/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-armhf broken build-armhf 5 host-build-prep fail REGR. vs. 181481 Tests which are failing intermittently (not blocking): test-amd64-i386-qemut-rhel6hvm-amd 7 xen-install fail pass in 181481 Tests which did not succeed, but are not blocking: build-armhf-libvirt 1 build-check(1) blocked n/a test-armhf-armhf-examine 1 build-check(1) blocked n/a test-armhf-armhf-libvirt 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-qcow2 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-raw 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a test-armhf-armhf-xl-arndale 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit1 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-multivcpu 1 build-check(1) blocked n/a test-armhf-armhf-xl-rtds 1 build-check(1) blocked n/a test-armhf-armhf-xl-vhd 1 build-check(1) blocked n/a test-armhf-armhf-libvirt 16 saverestore-support-check fail in 181481 blocked in 181486 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail in 181481 blocked in 181486 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail in 181481 blocked in 181486 test-armhf-armhf-xl-arndale 15 migrate-support-check fail in 181481 never pass test-armhf-armhf-xl-arndale 16 saverestore-support-check fail in 181481 never pass test-armhf-armhf-libvirt 15 migrate-support-check fail in 181481 never pass test-armhf-armhf-libvirt-raw 14 migrate-support-check fail in 181481 never pass test-armhf-armhf-xl-rtds 15 migrate-support-check fail in 181481 never pass test-armhf-armhf-xl-rtds 16 saverestore-support-check fail in 181481 never pass test-armhf-armhf-xl-vhd 14 migrate-support-check fail in 181481 never pass test-armhf-armhf-xl-vhd 15 saverestore-support-check fail in 181481 never pass test-armhf-armhf-xl 15 migrate-support-check fail in 181481 never pass test-armhf-armhf-xl 16 saverestore-support-check fail in 181481 never pass test-armhf-armhf-xl-multivcpu 15 migrate-support-check fail in 181481 never pass test-armhf-armhf-xl-multivcpu 16 saverestore-support-check fail in 181481 never pass test-armhf-armhf-xl-credit1 15 migrate-support-check fail in 181481 never pass test-armhf-armhf-xl-credit1 16 saverestore-support-check fail in 181481 never pass test-armhf-armhf-xl-credit2 15 migrate-support-check fail in 181481 never pass test-armhf-armhf-xl-credit2 16 saverestore-support-check fail in 181481 never pass test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail in 181481 never pass test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 181481 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop fail like 181481 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 181481 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 181481 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop fail like 181481 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop fail like 181481 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 181481 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop fail like 181481 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 181481 test-amd64-i386-xl-pvshim 14 guest-start fail never pass test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-i386-libvirt 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-i386-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-i386-libvirt-raw 14 migrate-support-check fail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass version targeted for testing: xen 7a25a1501ca941c3e01b0c4e624ace05417f1587 baseline version: xen 7a25a1501ca941c3e01b0c4e624ace05417f1587 Last test of basis 181486 2023-06-18 01:53:31 Z 0 days Testing same since (not found) 0 attempts jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64-xtf pass build-amd64 pass build-arm64 pass build-armhf broken build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt blocked build-i386-libvirt pass build-amd64-prev pass build-i386-prev pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-xtf-amd64-amd64-1 pass test-xtf-amd64-amd64-2 pass test-xtf-amd64-amd64-3 pass test-xtf-amd64-amd64-4 pass test-xtf-amd64-amd64-5 pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl blocked test-amd64-i386-xl pass test-amd64-coresched-i386-xl pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-i386-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-i386-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-i386-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-i386-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-i386-qemut-rhel6hvm-amd fail test-amd64-i386-qemuu-rhel6hvm-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-i386-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-freebsd10-amd64 pass test-amd64-amd64-qemuu-freebsd11-amd64 pass test-amd64-amd64-qemuu-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-i386-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-i386-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-i386-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-amd64-i386-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale blocked test-amd64-amd64-examine-bios pass test-amd64-i386-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 blocked test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 blocked test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine blocked test-amd64-i386-examine pass test-amd64-i386-freebsd10-i386 pass test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-i386-qemut-rhel6hvm-intel pass test-amd64-i386-qemuu-rhel6hvm-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt blocked test-amd64-i386-libvirt pass test-amd64-amd64-livepatch pass test-amd64-i386-livepatch pass test-amd64-amd64-migrupgrade pass test-amd64-i386-migrupgrade pass test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu blocked test-amd64-amd64-pair pass test-amd64-i386-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-i386-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-i386-xl-pvshim fail test-amd64-amd64-pygrub pass test-armhf-armhf-libvirt-qcow2 blocked test-amd64-amd64-xl-qcow2 pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw blocked test-amd64-i386-libvirt-raw pass test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-amd64-i386-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-i386-examine-uefi pass test-amd64-amd64-libvirt-vhd pass test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd blocked test-amd64-i386-xl-vhd pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary broken-job build-armhf broken Published tested tree is already up to date. From xen-devel-bounces@lists.xenproject.org Sun Jun 18 16:51:53 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sun, 18 Jun 2023 16:51:53 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550757.859917 (Exim 4.92) (envelope-from ) id 1qAvcq-00031x-5z; Sun, 18 Jun 2023 16:51:40 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550757.859917; Sun, 18 Jun 2023 16:51:40 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAvcq-00031q-3H; Sun, 18 Jun 2023 16:51:40 +0000 Received: by outflank-mailman (input) for mailman id 550757; Sun, 18 Jun 2023 16:51:38 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAvco-00031g-7o; Sun, 18 Jun 2023 16:51:38 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAvcn-0002Av-VL; Sun, 18 Jun 2023 16:51:38 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qAvcn-0001Tb-E0; Sun, 18 Jun 2023 16:51:37 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qAvcn-0008Ad-De; Sun, 18 Jun 2023 16:51:37 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=JTxqyxw0phqsfrrD79DsFFS18rl4lm2hglQ7vchJ+Bo=; b=Ya6Ckc3Dh14MZ3bjljXR8Gdsc/ NLvyFkf2YEvxIJz3gNOwyXUrGMliPA0bziyVe99U+nbmKRZEvdgJ29q55GymnYbb3kXOFLSPMQhAR IXBDNiyMykR3unYyb3AQseII4YWp+1I2pxuj9+0zXYhq4aRWRFOxtVo08m3sHrYJrLIc=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [linux-5.4 test] 181487: regressions - trouble: blocked/broken/fail/pass X-Osstest-Failures: linux-5.4:build-armhf::broken:regression linux-5.4:build-armhf:host-build-prep:fail:regression linux-5.4:build-i386-pvops:kernel-build:fail:regression linux-5.4:build-armhf-pvops:kernel-build:fail:regression linux-5.4:test-amd64-amd64-xl-rtds:xen-boot:fail:heisenbug linux-5.4:test-amd64-amd64-qemuu-freebsd12-amd64:guest-start/freebsd.repeat:fail:heisenbug linux-5.4:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:debian-hvm-install:fail:heisenbug linux-5.4:test-amd64-i386-freebsd10-i386:xen-install:fail:heisenbug linux-5.4:test-amd64-i386-pair:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-examine-uefi:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-qemuu-rhel6hvm-intel:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-qemut-debianhvm-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-qemut-rhel6hvm-intel:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-vhd:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-xsm:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-examine-bios:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-qemut-rhel6hvm-amd:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-freebsd10-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-examine:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-freebsd10-i386:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-qemut-debianhvm-i386-xsm:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-pvshim:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-shadow:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-qemut-win7-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-coresched-i386-xl:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-qemut-ws16-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-qemuu-rhel6hvm-amd:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-libvirt-raw:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking linux-5.4:build-armhf-libvirt:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-examine:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-xl:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-xl-credit2:guest-start:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-rtds:guest-start/debian.repeat:fail:nonblocking linux-5.4:test-amd64-amd64-xl-qcow2:guest-start/debian.repeat:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking linux-5.4:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking linux-5.4:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking linux-5.4:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking linux-5.4:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking linux-5.4:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking X-Osstest-Versions-This: linux=61a2f83e4762ee0c766f86944e612305f5888bcb X-Osstest-Versions-That: linux=f568a20f058fa1e37069cff4aac4187c1650a0e9 From: osstest service owner Date: Sun, 18 Jun 2023 16:51:37 +0000 flight 181487 linux-5.4 real [real] http://logs.test-lab.xenproject.org/osstest/logs/181487/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-armhf broken build-armhf 5 host-build-prep fail REGR. vs. 181363 build-i386-pvops 6 kernel-build fail in 181474 REGR. vs. 181363 build-armhf-pvops 6 kernel-build fail in 181474 REGR. vs. 181363 Tests which are failing intermittently (not blocking): test-amd64-amd64-xl-rtds 8 xen-boot fail in 181474 pass in 181487 test-amd64-amd64-qemuu-freebsd12-amd64 21 guest-start/freebsd.repeat fail in 181474 pass in 181487 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm 12 debian-hvm-install fail pass in 181474 test-amd64-i386-freebsd10-i386 7 xen-install fail pass in 181482 Tests which did not succeed, but are not blocking: test-amd64-i386-pair 1 build-check(1) blocked in 181474 n/a test-amd64-i386-examine-uefi 1 build-check(1) blocked in 181474 n/a test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked in 181474 n/a test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked in 181474 n/a test-amd64-i386-qemuu-rhel6hvm-intel 1 build-check(1) blocked in 181474 n/a test-amd64-i386-xl-qemut-debianhvm-amd64 1 build-check(1) blocked in 181474 n/a test-amd64-i386-qemut-rhel6hvm-intel 1 build-check(1) blocked in 181474 n/a test-amd64-i386-libvirt 1 build-check(1) blocked in 181474 n/a test-amd64-i386-xl-qemuu-ws16-amd64 1 build-check(1) blocked in 181474 n/a test-amd64-i386-xl-vhd 1 build-check(1) blocked in 181474 n/a test-amd64-i386-xl-xsm 1 build-check(1) blocked in 181474 n/a test-amd64-i386-examine-bios 1 build-check(1) blocked in 181474 n/a test-amd64-i386-qemut-rhel6hvm-amd 1 build-check(1) blocked in 181474 n/a test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked in 181474 n/a test-amd64-i386-libvirt-pair 1 build-check(1) blocked in 181474 n/a test-amd64-i386-freebsd10-amd64 1 build-check(1) blocked in 181474 n/a test-amd64-i386-examine 1 build-check(1) blocked in 181474 n/a test-amd64-i386-freebsd10-i386 1 build-check(1) blocked in 181474 n/a test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm 1 build-check(1) blocked in 181474 n/a test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked in 181474 n/a test-amd64-i386-xl-qemut-debianhvm-i386-xsm 1 build-check(1) blocked in 181474 n/a test-amd64-i386-xl-pvshim 1 build-check(1) blocked in 181474 n/a test-amd64-i386-xl-shadow 1 build-check(1) blocked in 181474 n/a test-amd64-i386-xl-qemut-win7-amd64 1 build-check(1) blocked in 181474 n/a test-amd64-coresched-i386-xl 1 build-check(1) blocked in 181474 n/a test-amd64-i386-xl 1 build-check(1) blocked in 181474 n/a test-amd64-i386-xl-qemut-ws16-amd64 1 build-check(1) blocked in 181474 n/a test-amd64-i386-qemuu-rhel6hvm-amd 1 build-check(1) blocked in 181474 n/a test-amd64-i386-libvirt-xsm 1 build-check(1) blocked in 181474 n/a test-amd64-i386-xl-qemuu-win7-amd64 1 build-check(1) blocked in 181474 n/a test-amd64-i386-libvirt-raw 1 build-check(1) blocked in 181474 n/a test-amd64-i386-xl-qemuu-ovmf-amd64 1 build-check(1) blocked in 181474 n/a test-amd64-i386-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked in 181474 n/a build-armhf-libvirt 1 build-check(1) blocked n/a test-armhf-armhf-examine 1 build-check(1) blocked n/a test-armhf-armhf-libvirt 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-qcow2 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-raw 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a test-armhf-armhf-xl-arndale 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit1 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-multivcpu 1 build-check(1) blocked n/a test-armhf-armhf-xl-rtds 1 build-check(1) blocked n/a test-armhf-armhf-xl-vhd 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit2 14 guest-start fail in 181482 like 181354 test-armhf-armhf-libvirt 16 saverestore-support-check fail in 181482 like 181363 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail in 181482 like 181363 test-armhf-armhf-xl-rtds 18 guest-start/debian.repeat fail in 181482 like 181363 test-amd64-amd64-xl-qcow2 21 guest-start/debian.repeat fail in 181482 like 181363 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail in 181482 like 181363 test-armhf-armhf-xl-multivcpu 15 migrate-support-check fail in 181482 never pass test-armhf-armhf-xl-multivcpu 16 saverestore-support-check fail in 181482 never pass test-armhf-armhf-libvirt 15 migrate-support-check fail in 181482 never pass test-armhf-armhf-xl-rtds 15 migrate-support-check fail in 181482 never pass test-armhf-armhf-xl-rtds 16 saverestore-support-check fail in 181482 never pass test-armhf-armhf-xl-credit1 15 migrate-support-check fail in 181482 never pass test-armhf-armhf-xl-credit1 16 saverestore-support-check fail in 181482 never pass test-armhf-armhf-xl 15 migrate-support-check fail in 181482 never pass test-armhf-armhf-xl 16 saverestore-support-check fail in 181482 never pass test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail in 181482 never pass test-armhf-armhf-xl-arndale 15 migrate-support-check fail in 181482 never pass test-armhf-armhf-xl-arndale 16 saverestore-support-check fail in 181482 never pass test-armhf-armhf-libvirt-raw 14 migrate-support-check fail in 181482 never pass test-armhf-armhf-xl-vhd 14 migrate-support-check fail in 181482 never pass test-armhf-armhf-xl-vhd 15 saverestore-support-check fail in 181482 never pass test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 181363 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop fail like 181363 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop fail like 181363 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 181363 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 181363 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 181363 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop fail like 181363 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop fail like 181363 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 181363 test-amd64-i386-xl-pvshim 14 guest-start fail never pass test-amd64-i386-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-i386-libvirt 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-check fail never pass test-amd64-i386-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass version targeted for testing: linux 61a2f83e4762ee0c766f86944e612305f5888bcb baseline version: linux f568a20f058fa1e37069cff4aac4187c1650a0e9 Last test of basis 181363 2023-06-10 15:39:59 Z 8 days Testing same since 181425 2023-06-14 10:50:49 Z 4 days 7 attempts ------------------------------------------------------------ People who touched revisions under test: Ai Chao Alan Stern Alex Deucher Alexander Sverdlin Arnd Bergmann Bartosz Golaszewski Ben Hutchings Chia-I Wu Chris Paterson (CIP) David Jander David S. Miller David Sterba Dmitry Torokhov Eric Dumazet Fedor Pchelkin Florian Westphal Greg Kroah-Hartman Guenter Roeck Gustavo A. R. Silva Hangyu Hua Harshit Mogalapalli Ilya Dryomov Ismael Ferreras Morezuelas JaimeLiao Jakub Kicinski Jamal Hadi Salim Jens Axboe Jiri Slaby (SUSE) Jon Hunter Josef Bacik Jozsef Kadlecsik Kuniyuki Iwashima Linus Walleij Linux Kernel Functional Testing Luiz Augusto von Dentz Marc Kleine-Budde Mark Brown Martin Hundebøll Maxime Ripard Michael Chan Min Li Miquel Raynal Oleksij Rempel Pablo Neira Ayuso Paolo Abeni Paulo Alcantara (SUSE) Paulo Alcantara Qingfang DENG Randy Dunlap RenHai Rishabh Bhatnagar Ruihan Li Sasha Levin Shuah Khan Simon Wunderlich Somnath Kotur Stefan Ghinea Stephan Gerhold Steve French Sudip Mukherjee Sungwoo Kim Sven Eckelmann Takashi Iwai Tejun Heo Theodore Ts'o Tijs Van Buggenhout Uwe Kleine-König Ville Syrjälä Vladislav Efanov Wolfram Sang Xiubo Li Ying Hsu YouChing Lin Zixuan Fu jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf broken build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt blocked build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl blocked test-amd64-i386-xl pass test-amd64-coresched-i386-xl pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm fail test-amd64-i386-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-i386-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-i386-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-i386-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-i386-qemut-rhel6hvm-amd pass test-amd64-i386-qemuu-rhel6hvm-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-i386-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-freebsd10-amd64 pass test-amd64-amd64-qemuu-freebsd11-amd64 pass test-amd64-amd64-qemuu-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-i386-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-i386-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-i386-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-amd64-i386-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale blocked test-amd64-amd64-examine-bios pass test-amd64-i386-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 blocked test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 blocked test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine blocked test-amd64-i386-examine pass test-amd64-i386-freebsd10-i386 fail test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-i386-qemut-rhel6hvm-intel pass test-amd64-i386-qemuu-rhel6hvm-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt blocked test-amd64-i386-libvirt pass test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu blocked test-amd64-amd64-pair pass test-amd64-i386-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-i386-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-i386-xl-pvshim fail test-amd64-amd64-pygrub pass test-armhf-armhf-libvirt-qcow2 blocked test-amd64-amd64-xl-qcow2 pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw blocked test-amd64-i386-libvirt-raw pass test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-amd64-i386-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-i386-examine-uefi pass test-amd64-amd64-libvirt-vhd pass test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd blocked test-amd64-i386-xl-vhd pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary broken-job build-armhf broken Not pushing. (No revision log; it would be 1380 lines long.) From xen-devel-bounces@lists.xenproject.org Sun Jun 18 21:58:35 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sun, 18 Jun 2023 21:58:35 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550768.859926 (Exim 4.92) (envelope-from ) id 1qB0PX-0007jm-Nu; Sun, 18 Jun 2023 21:58:15 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550768.859926; Sun, 18 Jun 2023 21:58:15 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qB0PX-0007jf-LB; Sun, 18 Jun 2023 21:58:15 +0000 Received: by outflank-mailman (input) for mailman id 550768; Sun, 18 Jun 2023 21:58:13 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qB0PV-0007jV-Pj; Sun, 18 Jun 2023 21:58:13 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qB0PV-0000Wu-KK; Sun, 18 Jun 2023 21:58:13 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qB0PV-0006PT-1c; Sun, 18 Jun 2023 21:58:13 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qB0PV-0003RN-19; Sun, 18 Jun 2023 21:58:13 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=uXggtqZIthbgxuoWsPFjLdmAELDOm5LJFaCuGKKIUAY=; b=CVfJwUh6Bn2JGGy6Ac+4PJh5cL BqyYr2xfm3uCWfNsO0KhHyPXq2u/kd6Fn4Wgedkf7UTFRhKOCIcUnayJtJj9BdLvj08cEtsNPtjwf i5fxf9Y0NeSD/uFZfv8sXuTBJtnMSjn14ltD6i3SF3MHcNXlzw3AwhcRLKYfJoI05Ytw=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [linux-linus test] 181491: regressions - FAIL X-Osstest-Failures: linux-linus:test-armhf-armhf-xl-credit1:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-vhd:guest-start/debian.repeat:fail:heisenbug linux-linus:test-armhf-armhf-xl-multivcpu:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-credit2:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-raw:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking linux-linus:test-armhf-armhf-libvirt:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-arndale:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-examine:reboot:fail:nonblocking linux-linus:test-armhf-armhf-xl-rtds:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-qcow2:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-vhd:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-raw:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-qcow2:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: linux=1b29d271614abd97cc39782daa9d6dd70e98609f X-Osstest-Versions-That: linux=6c538e1adbfc696ac4747fb10d63e704344f763d From: osstest service owner Date: Sun, 18 Jun 2023 21:58:13 +0000 flight 181491 linux-linus real [real] flight 181495 linux-linus real-retest [real] http://logs.test-lab.xenproject.org/osstest/logs/181491/ http://logs.test-lab.xenproject.org/osstest/logs/181495/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: test-armhf-armhf-xl-credit1 8 xen-boot fail REGR. vs. 180278 Tests which are failing intermittently (not blocking): test-amd64-amd64-xl-vhd 21 guest-start/debian.repeat fail pass in 181495-retest Tests which did not succeed, but are not blocking: test-armhf-armhf-xl-multivcpu 8 xen-boot fail like 180278 test-armhf-armhf-xl 8 xen-boot fail like 180278 test-armhf-armhf-xl-credit2 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 180278 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 180278 test-armhf-armhf-libvirt-raw 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 180278 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 180278 test-armhf-armhf-libvirt 8 xen-boot fail like 180278 test-armhf-armhf-xl-arndale 8 xen-boot fail like 180278 test-armhf-armhf-examine 8 reboot fail like 180278 test-armhf-armhf-xl-rtds 8 xen-boot fail like 180278 test-armhf-armhf-libvirt-qcow2 8 xen-boot fail like 180278 test-armhf-armhf-xl-vhd 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 180278 test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qcow2 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass version targeted for testing: linux 1b29d271614abd97cc39782daa9d6dd70e98609f baseline version: linux 6c538e1adbfc696ac4747fb10d63e704344f763d Last test of basis 180278 2023-04-16 19:41:46 Z 63 days Failing since 180281 2023-04-17 06:24:36 Z 62 days 118 attempts Testing same since 181491 2023-06-18 07:05:46 Z 0 days 1 attempts ------------------------------------------------------------ 2736 people touched revisions under test, not listing them all jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl fail test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-freebsd11-amd64 pass test-amd64-amd64-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale fail test-amd64-amd64-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 fail test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 fail test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine fail test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt fail test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu fail test-amd64-amd64-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-amd64-pygrub pass test-amd64-amd64-libvirt-qcow2 pass test-armhf-armhf-libvirt-qcow2 fail test-amd64-amd64-libvirt-raw pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw fail test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds fail test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-amd64-xl-vhd fail test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd fail ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 347957 lines long.) From xen-devel-bounces@lists.xenproject.org Sun Jun 18 22:05:40 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sun, 18 Jun 2023 22:05:40 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550775.859936 (Exim 4.92) (envelope-from ) id 1qB0We-0000qF-H3; Sun, 18 Jun 2023 22:05:36 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550775.859936; Sun, 18 Jun 2023 22:05:36 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qB0We-0000q8-Dg; Sun, 18 Jun 2023 22:05:36 +0000 Received: by outflank-mailman (input) for mailman id 550775; Sun, 18 Jun 2023 22:05:34 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qB0Wc-0000py-Nu; Sun, 18 Jun 2023 22:05:34 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qB0Wc-0000iC-HK; Sun, 18 Jun 2023 22:05:34 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qB0Wc-0006ae-3K; Sun, 18 Jun 2023 22:05:34 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qB0Wc-0005wk-2l; Sun, 18 Jun 2023 22:05:34 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=b6YNBp9sp8RU3RtQM8si/zd/enC2AxK4fr/SE0ZUyHY=; b=J1uajmDNL99mQdCgjFibVkoM89 q+XbX3pOcBc7vTBZH10oiz6y1lIPP8sCsLvBN2qvihcuJ+0ELn18OsUO7Z4PHDFX9xQKlZGRUtd4q moLY0zcPs+5hQJe6tSzHr82QeOvucvJQYIbY2E3mQ75HGQ+K1Rr/WRJsv+/mt3X9sncI=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [qemu-mainline test] 181493: regressions - FAIL X-Osstest-Failures: qemu-mainline:build-amd64:xen-build:fail:regression qemu-mainline:build-amd64-xsm:xen-build:fail:regression qemu-mainline:build-i386-xsm:xen-build:fail:regression qemu-mainline:build-arm64:xen-build:fail:regression qemu-mainline:build-arm64-xsm:xen-build:fail:regression qemu-mainline:build-i386:xen-build:fail:regression qemu-mainline:build-armhf:xen-build:fail:regression qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-i386:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:build-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:build-arm64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:build-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:build-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pygrub:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking X-Osstest-Versions-This: qemuu=e3660cc1e3cb136af50c0eaaeac27943c2438d1d X-Osstest-Versions-That: qemuu=6972ef1440a9d685482d78672620a7482f2bd09a From: osstest service owner Date: Sun, 18 Jun 2023 22:05:34 +0000 flight 181493 qemu-mainline real [real] http://logs.test-lab.xenproject.org/osstest/logs/181493/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-amd64 6 xen-build fail REGR. vs. 180691 build-amd64-xsm 6 xen-build fail REGR. vs. 180691 build-i386-xsm 6 xen-build fail REGR. vs. 180691 build-arm64 6 xen-build fail REGR. vs. 180691 build-arm64-xsm 6 xen-build fail REGR. vs. 180691 build-i386 6 xen-build fail REGR. vs. 180691 build-armhf 6 xen-build fail REGR. vs. 180691 Tests which did not succeed, but are not blocking: test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-xl-xsm 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-raw 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-xsm 1 build-check(1) blocked n/a test-arm64-arm64-xl 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit1 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit2 1 build-check(1) blocked n/a test-arm64-arm64-xl-thunderx 1 build-check(1) blocked n/a test-arm64-arm64-xl-vhd 1 build-check(1) blocked n/a test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a test-armhf-armhf-libvirt 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-qcow2 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-raw 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a test-armhf-armhf-xl-arndale 1 build-check(1) blocked n/a test-armhf-armhf-xl-multivcpu 1 build-check(1) blocked n/a test-armhf-armhf-xl-rtds 1 build-check(1) blocked n/a test-armhf-armhf-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-amd 1 build-check(1) blocked n/a test-amd64-i386-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-raw 1 build-check(1) blocked n/a test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-i386 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-amd64 1 build-check(1) blocked n/a test-amd64-coresched-i386-xl 1 build-check(1) blocked n/a test-amd64-coresched-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-xsm 1 build-check(1) blocked n/a build-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-shadow 1 build-check(1) blocked n/a test-amd64-amd64-xl-rtds 1 build-check(1) blocked n/a build-arm64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a build-armhf-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a build-i386-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-amd 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-pair 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-qcow2 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-vhd 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvshim 1 build-check(1) blocked n/a test-amd64-amd64-pair 1 build-check(1) blocked n/a test-amd64-amd64-pygrub 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-intel 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd11-amd64 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd12-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-multivcpu 1 build-check(1) blocked n/a test-amd64-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit1 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit1 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit2 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-intel 1 build-check(1) blocked n/a test-amd64-i386-xl 1 build-check(1) blocked n/a test-amd64-i386-xl-pvshim 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a version targeted for testing: qemuu e3660cc1e3cb136af50c0eaaeac27943c2438d1d baseline version: qemuu 6972ef1440a9d685482d78672620a7482f2bd09a Last test of basis 180691 2023-05-17 10:45:22 Z 32 days Failing since 180699 2023-05-18 07:21:24 Z 31 days 113 attempts Testing same since 181483 2023-06-17 15:10:36 Z 1 days 4 attempts ------------------------------------------------------------ People who touched revisions under test: Afonso Bordado Akihiko Odaki Akihiro Suda Alex Bennée Alex Williamson Alexander Bulekov Alexander Graf Alexander Ivanov Alistair Francis Anastasia Belova Andrea Bolognani Andreas Schwab Andrew Jeffery Ani Sinha Ani Sinha Anthony PERARD Anton Johansson Antonio Caggiano BALATON Zoltan Bastian Koppelmann Bernhard Beschow Bin Meng Brian Cain Brice Goglin Camilla Conte Carlos Santos Christian Schoenebeck Chuck Zmudzinski Cindy Lu Clément Chigot Corey Minyard Cornelia Huck Cédric Le Goater Cédric Le Goater Daniel Henrique Barboza Daniel Henrique Barboza Daniel P. Berrangé Daniil Kovalev David Hildenbrand David Woodhouse Emanuele Giuseppe Esposito Enze Li Eric Auger Eric Blake Eric DeVolder Erico Nunes Eugenio Pérez Fabiano Rosas Fan Ni Fiona Ebner Francesco Cagnin Francisco Iglesias Frederic Barrat Gavin Shan Gregory Price Gregory Price Hanna Czenczek Hao Zeng Hawkins Jiawei Himanshu Chauhan Igor Mammedov Ilya Leoshkevich Ira Weiny Ivan Klokov Jagannathan Raman Jason Wang Jean-Louis Dupond Jean-Philippe Brucker Jiajie Chen Jiaxun Yang Joao Martins John Snow Jonathan Cameron Juan Quintela Junqiang Wang Kevin Wolf Laurent Vivier Lei Yang Leonardo Bras Maksim Davydov Marc-André Lureau Marcin Juszkiewicz Marco Liebel Mark Cave-Ayland Markus Armbruster Matheus Tavares Bernardino Mattias Nissler Mauro Matteo Cascella Max Fritz Mayuresh Chitale Michael S. Tsirkin Michael Tokarev Michal Privoznik Milan Zamazal Mostafa Saleh Nicholas Piggin Nicolas Saenz Julienne Niek Linnenbank Niklas Cassel Ninad Palsule Palmer Dabbelt Paolo Bonzini Patrick Venture Peter Maydell Peter Xu Philippe Mathieu-Daudé Philippe Mathieu-Daudé qianfan Zhao Raghu H Rene Engel Richard Henderson Richard Purdie Ricky Zhou Ryan Wendland Sebastian Ott Sergio Lopez Sid Manning Song Gao Stefan Hajnoczi Stefano Garzarella Stefano Stabellini Stefano Stabellini Steve Sistare Sunil V L Taylor Simpson Thomas Huth Thomas Weißschuh Tianrui Zhao timothee.cocault@gmail.com Timothée Cocault Tommy Wu Vikram Garhwal Viktor Prutyanov Vitaly Cheptsov Vivek Kasireddy Vladimir Sementsov-Ogievskiy Volker Rümelin Weiwei Li Xiao Wang Xinyu Li Yin Wang Zeng Hao Zhenyu Zhang Zhenzhong Duan Zhuojia Shen jobs: build-amd64-xsm fail build-arm64-xsm fail build-i386-xsm fail build-amd64 fail build-arm64 fail build-armhf fail build-i386 fail build-amd64-libvirt blocked build-arm64-libvirt blocked build-armhf-libvirt blocked build-i386-libvirt blocked build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl blocked test-amd64-coresched-amd64-xl blocked test-arm64-arm64-xl blocked test-armhf-armhf-xl blocked test-amd64-i386-xl blocked test-amd64-coresched-i386-xl blocked test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-i386-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-amd64-libvirt-xsm blocked test-arm64-arm64-libvirt-xsm blocked test-amd64-i386-libvirt-xsm blocked test-amd64-amd64-xl-xsm blocked test-arm64-arm64-xl-xsm blocked test-amd64-i386-xl-xsm blocked test-amd64-amd64-qemuu-nested-amd blocked test-amd64-amd64-xl-pvhv2-amd blocked test-amd64-i386-qemuu-rhel6hvm-amd blocked test-amd64-amd64-dom0pvh-xl-amd blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-freebsd10-amd64 blocked test-amd64-amd64-qemuu-freebsd11-amd64 blocked test-amd64-amd64-qemuu-freebsd12-amd64 blocked test-amd64-amd64-xl-qemuu-ovmf-amd64 blocked test-amd64-i386-xl-qemuu-ovmf-amd64 blocked test-amd64-amd64-xl-qemuu-win7-amd64 blocked test-amd64-i386-xl-qemuu-win7-amd64 blocked test-amd64-amd64-xl-qemuu-ws16-amd64 blocked test-amd64-i386-xl-qemuu-ws16-amd64 blocked test-armhf-armhf-xl-arndale blocked test-amd64-amd64-xl-credit1 blocked test-arm64-arm64-xl-credit1 blocked test-armhf-armhf-xl-credit1 blocked test-amd64-amd64-xl-credit2 blocked test-arm64-arm64-xl-credit2 blocked test-armhf-armhf-xl-credit2 blocked test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-freebsd10-i386 blocked test-amd64-amd64-qemuu-nested-intel blocked test-amd64-amd64-xl-pvhv2-intel blocked test-amd64-i386-qemuu-rhel6hvm-intel blocked test-amd64-amd64-dom0pvh-xl-intel blocked test-amd64-amd64-libvirt blocked test-armhf-armhf-libvirt blocked test-amd64-i386-libvirt blocked test-amd64-amd64-xl-multivcpu blocked test-armhf-armhf-xl-multivcpu blocked test-amd64-amd64-pair blocked test-amd64-i386-pair blocked test-amd64-amd64-libvirt-pair blocked test-amd64-i386-libvirt-pair blocked test-amd64-amd64-xl-pvshim blocked test-amd64-i386-xl-pvshim blocked test-amd64-amd64-pygrub blocked test-armhf-armhf-libvirt-qcow2 blocked test-amd64-amd64-xl-qcow2 blocked test-arm64-arm64-libvirt-raw blocked test-armhf-armhf-libvirt-raw blocked test-amd64-i386-libvirt-raw blocked test-amd64-amd64-xl-rtds blocked test-armhf-armhf-xl-rtds blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-amd64-xl-shadow blocked test-amd64-i386-xl-shadow blocked test-arm64-arm64-xl-thunderx blocked test-amd64-amd64-libvirt-vhd blocked test-arm64-arm64-xl-vhd blocked test-armhf-armhf-xl-vhd blocked test-amd64-i386-xl-vhd blocked ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 19235 lines long.) From xen-devel-bounces@lists.xenproject.org Mon Jun 19 02:48:56 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 19 Jun 2023 02:48:56 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550788.859947 (Exim 4.92) (envelope-from ) id 1qB4wY-0002Xm-1J; Mon, 19 Jun 2023 02:48:38 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550788.859947; Mon, 19 Jun 2023 02:48:38 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qB4wX-0002Xe-Sr; Mon, 19 Jun 2023 02:48:37 +0000 Received: by outflank-mailman (input) for mailman id 550788; Mon, 19 Jun 2023 02:48:36 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qB4wW-0002XU-MX; Mon, 19 Jun 2023 02:48:36 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qB4wW-0006H4-Ff; Mon, 19 Jun 2023 02:48:36 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qB4wV-00089w-Uo; Mon, 19 Jun 2023 02:48:36 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qB4wV-0001wz-U0; Mon, 19 Jun 2023 02:48:35 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=uGszMFLsH59DAos2zMIDruXLzoPqMG1fi77UhBB0Y2Y=; b=u2Iieq+poZ7BeRYdgFHTnwrzrO copdMd9YmtN6PmA2K/M+xNTBUc24y46t6vk6k1qeDe4gduRV9RxZc0AQlhVGYrQweCIYy6F1j54J3 6YwNNlPvkCIKv3s6VvoA9zp1Wq9X9CmK7R2SZwjh91+bzX/6nBIHLqBpiSYmYV5RzWpc=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [linux-5.4 test] 181494: regressions - FAIL X-Osstest-Failures: linux-5.4:build-armhf::broken:regression linux-5.4:build-i386-pvops:kernel-build:fail:regression linux-5.4:build-armhf-pvops:kernel-build:fail:regression linux-5.4:build-armhf:host-build-prep:fail:regression linux-5.4:test-amd64-amd64-xl-rtds:xen-boot:fail:heisenbug linux-5.4:test-amd64-amd64-qemuu-freebsd12-amd64:guest-start/freebsd.repeat:fail:heisenbug linux-5.4:test-amd64-i386-freebsd10-i386:xen-install:fail:heisenbug linux-5.4:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:debian-hvm-install:fail:heisenbug linux-5.4:test-armhf-armhf-libvirt-raw:guest-start:fail:heisenbug linux-5.4:test-armhf-armhf-xl-vhd:debian-di-install:fail:heisenbug linux-5.4:test-amd64-i386-xl-qemut-debianhvm-amd64:xen-install:fail:heisenbug linux-5.4:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:xen-install:fail:heisenbug linux-5.4:test-amd64-i386-xl-qemuu-debianhvm-amd64:xen-install:fail:heisenbug linux-5.4:test-amd64-i386-xl-qemut-ws16-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-qemut-debianhvm-i386-xsm:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-vhd:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-qemut-win7-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-examine:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-examine-uefi:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-qemut-rhel6hvm-intel:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-pvshim:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-qemut-rhel6hvm-amd:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-qemuu-rhel6hvm-intel:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-qemuu-rhel6hvm-amd:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-qemut-debianhvm-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-freebsd10-i386:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-pair:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-libvirt-raw:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-shadow:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-freebsd10-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-coresched-i386-xl:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-examine-bios:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-xsm:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-examine:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-xl:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking linux-5.4:build-armhf-libvirt:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qcow2:guest-start/debian.repeat:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-credit2:guest-start:fail:nonblocking linux-5.4:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking linux-5.4:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking linux-5.4:test-armhf-armhf-xl-rtds:guest-start/debian.repeat:fail:nonblocking linux-5.4:test-armhf-armhf-xl-credit1:guest-start/debian.repeat:fail:nonblocking linux-5.4:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking linux-5.4:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking linux-5.4:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking linux-5.4:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking linux-5.4:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking X-Osstest-Versions-This: linux=61a2f83e4762ee0c766f86944e612305f5888bcb X-Osstest-Versions-That: linux=f568a20f058fa1e37069cff4aac4187c1650a0e9 From: osstest service owner Date: Mon, 19 Jun 2023 02:48:35 +0000 flight 181494 linux-5.4 real [real] http://logs.test-lab.xenproject.org/osstest/logs/181494/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-armhf broken in 181487 build-i386-pvops 6 kernel-build fail in 181474 REGR. vs. 181363 build-armhf-pvops 6 kernel-build fail in 181474 REGR. vs. 181363 build-armhf 5 host-build-prep fail in 181487 REGR. vs. 181363 Tests which are failing intermittently (not blocking): test-amd64-amd64-xl-rtds 8 xen-boot fail in 181474 pass in 181494 test-amd64-amd64-qemuu-freebsd12-amd64 21 guest-start/freebsd.repeat fail in 181474 pass in 181494 test-amd64-i386-freebsd10-i386 7 xen-install fail in 181487 pass in 181494 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm 12 debian-hvm-install fail pass in 181474 test-armhf-armhf-libvirt-raw 13 guest-start fail pass in 181482 test-armhf-armhf-xl-vhd 12 debian-di-install fail pass in 181482 test-amd64-i386-xl-qemut-debianhvm-amd64 7 xen-install fail pass in 181487 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 7 xen-install fail pass in 181487 test-amd64-i386-xl-qemuu-debianhvm-amd64 7 xen-install fail pass in 181487 Tests which did not succeed, but are not blocking: test-amd64-i386-xl-qemut-ws16-amd64 1 build-check(1) blocked in 181474 n/a test-amd64-i386-libvirt-xsm 1 build-check(1) blocked in 181474 n/a test-amd64-i386-libvirt-pair 1 build-check(1) blocked in 181474 n/a test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked in 181474 n/a test-amd64-i386-xl-qemut-debianhvm-i386-xsm 1 build-check(1) blocked in 181474 n/a test-amd64-i386-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked in 181474 n/a test-amd64-i386-xl-vhd 1 build-check(1) blocked in 181474 n/a test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked in 181474 n/a test-amd64-i386-xl-qemuu-ws16-amd64 1 build-check(1) blocked in 181474 n/a test-amd64-i386-xl-qemut-win7-amd64 1 build-check(1) blocked in 181474 n/a test-amd64-i386-xl 1 build-check(1) blocked in 181474 n/a test-amd64-i386-examine 1 build-check(1) blocked in 181474 n/a test-amd64-i386-examine-uefi 1 build-check(1) blocked in 181474 n/a test-amd64-i386-qemut-rhel6hvm-intel 1 build-check(1) blocked in 181474 n/a test-amd64-i386-xl-pvshim 1 build-check(1) blocked in 181474 n/a test-amd64-i386-qemut-rhel6hvm-amd 1 build-check(1) blocked in 181474 n/a test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked in 181474 n/a test-amd64-i386-qemuu-rhel6hvm-intel 1 build-check(1) blocked in 181474 n/a test-amd64-i386-xl-qemuu-win7-amd64 1 build-check(1) blocked in 181474 n/a test-amd64-i386-qemuu-rhel6hvm-amd 1 build-check(1) blocked in 181474 n/a test-amd64-i386-xl-qemut-debianhvm-amd64 1 build-check(1) blocked in 181474 n/a test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked in 181474 n/a test-amd64-i386-freebsd10-i386 1 build-check(1) blocked in 181474 n/a test-amd64-i386-pair 1 build-check(1) blocked in 181474 n/a test-amd64-i386-libvirt-raw 1 build-check(1) blocked in 181474 n/a test-amd64-i386-xl-shadow 1 build-check(1) blocked in 181474 n/a test-amd64-i386-freebsd10-amd64 1 build-check(1) blocked in 181474 n/a test-amd64-coresched-i386-xl 1 build-check(1) blocked in 181474 n/a test-amd64-i386-examine-bios 1 build-check(1) blocked in 181474 n/a test-amd64-i386-xl-qemuu-ovmf-amd64 1 build-check(1) blocked in 181474 n/a test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm 1 build-check(1) blocked in 181474 n/a test-amd64-i386-libvirt 1 build-check(1) blocked in 181474 n/a test-amd64-i386-xl-xsm 1 build-check(1) blocked in 181474 n/a test-armhf-armhf-xl-credit2 1 build-check(1) blocked in 181487 n/a test-armhf-armhf-libvirt-qcow2 1 build-check(1) blocked in 181487 n/a test-armhf-armhf-libvirt 1 build-check(1) blocked in 181487 n/a test-armhf-armhf-xl-multivcpu 1 build-check(1) blocked in 181487 n/a test-armhf-armhf-examine 1 build-check(1) blocked in 181487 n/a test-armhf-armhf-xl-vhd 1 build-check(1) blocked in 181487 n/a test-armhf-armhf-xl-rtds 1 build-check(1) blocked in 181487 n/a test-armhf-armhf-xl 1 build-check(1) blocked in 181487 n/a test-armhf-armhf-xl-arndale 1 build-check(1) blocked in 181487 n/a test-armhf-armhf-libvirt-raw 1 build-check(1) blocked in 181487 n/a build-armhf-libvirt 1 build-check(1) blocked in 181487 n/a test-armhf-armhf-xl-credit1 1 build-check(1) blocked in 181487 n/a test-amd64-amd64-xl-qcow2 21 guest-start/debian.repeat fail in 181482 like 181363 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail in 181482 like 181363 test-armhf-armhf-libvirt-raw 14 migrate-support-check fail in 181482 never pass test-armhf-armhf-xl-vhd 14 migrate-support-check fail in 181482 never pass test-armhf-armhf-xl-vhd 15 saverestore-support-check fail in 181482 never pass test-armhf-armhf-xl-credit2 14 guest-start fail like 181354 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 181363 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop fail like 181363 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop fail like 181363 test-armhf-armhf-libvirt 16 saverestore-support-check fail like 181363 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 181363 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 181363 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 181363 test-armhf-armhf-xl-rtds 18 guest-start/debian.repeat fail like 181363 test-armhf-armhf-xl-credit1 18 guest-start/debian.repeat fail like 181363 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop fail like 181363 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail like 181363 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop fail like 181363 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 181363 test-amd64-i386-xl-pvshim 14 guest-start fail never pass test-amd64-i386-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-i386-libvirt 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-check fail never pass test-amd64-i386-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-xl-multivcpu 15 migrate-support-check fail never pass test-armhf-armhf-xl-multivcpu 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-armhf-armhf-xl-credit1 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 16 saverestore-support-check fail never pass test-armhf-armhf-xl-rtds 15 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 16 saverestore-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass test-armhf-armhf-xl 15 migrate-support-check fail never pass test-armhf-armhf-xl 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 15 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail never pass version targeted for testing: linux 61a2f83e4762ee0c766f86944e612305f5888bcb baseline version: linux f568a20f058fa1e37069cff4aac4187c1650a0e9 Last test of basis 181363 2023-06-10 15:39:59 Z 8 days Testing same since 181425 2023-06-14 10:50:49 Z 4 days 8 attempts ------------------------------------------------------------ People who touched revisions under test: Ai Chao Alan Stern Alex Deucher Alexander Sverdlin Arnd Bergmann Bartosz Golaszewski Ben Hutchings Chia-I Wu Chris Paterson (CIP) David Jander David S. Miller David Sterba Dmitry Torokhov Eric Dumazet Fedor Pchelkin Florian Westphal Greg Kroah-Hartman Guenter Roeck Gustavo A. R. Silva Hangyu Hua Harshit Mogalapalli Ilya Dryomov Ismael Ferreras Morezuelas JaimeLiao Jakub Kicinski Jamal Hadi Salim Jens Axboe Jiri Slaby (SUSE) Jon Hunter Josef Bacik Jozsef Kadlecsik Kuniyuki Iwashima Linus Walleij Linux Kernel Functional Testing Luiz Augusto von Dentz Marc Kleine-Budde Mark Brown Martin Hundebøll Maxime Ripard Michael Chan Min Li Miquel Raynal Oleksij Rempel Pablo Neira Ayuso Paolo Abeni Paulo Alcantara (SUSE) Paulo Alcantara Qingfang DENG Randy Dunlap RenHai Rishabh Bhatnagar Ruihan Li Sasha Levin Shuah Khan Simon Wunderlich Somnath Kotur Stefan Ghinea Stephan Gerhold Steve French Sudip Mukherjee Sungwoo Kim Sven Eckelmann Takashi Iwai Tejun Heo Theodore Ts'o Tijs Van Buggenhout Uwe Kleine-König Ville Syrjälä Vladislav Efanov Wolfram Sang Xiubo Li Ying Hsu YouChing Lin Zixuan Fu jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl pass test-amd64-i386-xl pass test-amd64-coresched-i386-xl pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm fail test-amd64-i386-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-i386-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-i386-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-i386-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-i386-qemut-rhel6hvm-amd pass test-amd64-i386-qemuu-rhel6hvm-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-i386-xl-qemut-debianhvm-amd64 fail test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-xl-qemuu-debianhvm-amd64 fail test-amd64-i386-freebsd10-amd64 pass test-amd64-amd64-qemuu-freebsd11-amd64 pass test-amd64-amd64-qemuu-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-i386-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-i386-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-i386-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-amd64-i386-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale pass test-amd64-amd64-examine-bios pass test-amd64-i386-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 fail test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 fail test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine pass test-amd64-i386-examine pass test-amd64-i386-freebsd10-i386 pass test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-i386-qemut-rhel6hvm-intel pass test-amd64-i386-qemuu-rhel6hvm-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt pass test-amd64-i386-libvirt pass test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu pass test-amd64-amd64-pair pass test-amd64-i386-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-i386-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-i386-xl-pvshim fail test-amd64-amd64-pygrub pass test-armhf-armhf-libvirt-qcow2 pass test-amd64-amd64-xl-qcow2 pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw fail test-amd64-i386-libvirt-raw pass test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds fail test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow fail test-amd64-amd64-xl-shadow pass test-amd64-i386-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-i386-examine-uefi pass test-amd64-amd64-libvirt-vhd pass test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd fail test-amd64-i386-xl-vhd pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary broken-job build-armhf broken Not pushing. (No revision log; it would be 1380 lines long.) From xen-devel-bounces@lists.xenproject.org Mon Jun 19 03:10:26 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 19 Jun 2023 03:10:26 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550797.859957 (Exim 4.92) (envelope-from ) id 1qB5HW-0006UT-RS; Mon, 19 Jun 2023 03:10:18 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550797.859957; Mon, 19 Jun 2023 03:10:18 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qB5HW-0006UM-OK; Mon, 19 Jun 2023 03:10:18 +0000 Received: by outflank-mailman (input) for mailman id 550797; Mon, 19 Jun 2023 03:10:17 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qB5HV-0006U9-54; Mon, 19 Jun 2023 03:10:17 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qB5HU-0007Gc-Q2; Mon, 19 Jun 2023 03:10:16 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qB5HU-0000cU-9f; Mon, 19 Jun 2023 03:10:16 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qB5HU-0007ms-9D; Mon, 19 Jun 2023 03:10:16 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=rqscftAbWYTkiqodL0wn+ZhlZSmEHO1G7UIO0Yxlp/M=; b=3ICI9oa+uHkI5rNptzyt86di8h 7Mq3g+g+nX0XJy5ahOtJfkAX6iPRjG9Heyzz6MHYTacrYti/5eTCTjRzv63zIuiJmkFZySTUZMxjK YnSv3zZQttmDMRh9ejngPbvVTGaRL2pM6Ws2ZxUN6SID79uSmBOemR+5KUyfWvfgpKv0=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [qemu-mainline test] 181496: regressions - FAIL X-Osstest-Failures: qemu-mainline:build-amd64:xen-build:fail:regression qemu-mainline:build-amd64-xsm:xen-build:fail:regression qemu-mainline:build-i386-xsm:xen-build:fail:regression qemu-mainline:build-arm64:xen-build:fail:regression qemu-mainline:build-arm64-xsm:xen-build:fail:regression qemu-mainline:build-i386:xen-build:fail:regression qemu-mainline:build-arm64-pvops:kernel-build:fail:regression qemu-mainline:build-armhf:xen-build:fail:regression qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-i386:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:build-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:build-arm64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:build-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:build-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pygrub:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking X-Osstest-Versions-This: qemuu=e3660cc1e3cb136af50c0eaaeac27943c2438d1d X-Osstest-Versions-That: qemuu=6972ef1440a9d685482d78672620a7482f2bd09a From: osstest service owner Date: Mon, 19 Jun 2023 03:10:16 +0000 flight 181496 qemu-mainline real [real] http://logs.test-lab.xenproject.org/osstest/logs/181496/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-amd64 6 xen-build fail REGR. vs. 180691 build-amd64-xsm 6 xen-build fail REGR. vs. 180691 build-i386-xsm 6 xen-build fail REGR. vs. 180691 build-arm64 6 xen-build fail REGR. vs. 180691 build-arm64-xsm 6 xen-build fail REGR. vs. 180691 build-i386 6 xen-build fail REGR. vs. 180691 build-arm64-pvops 6 kernel-build fail REGR. vs. 180691 build-armhf 6 xen-build fail REGR. vs. 180691 Tests which did not succeed, but are not blocking: test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-xl-xsm 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-raw 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-xsm 1 build-check(1) blocked n/a test-arm64-arm64-xl 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit1 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit2 1 build-check(1) blocked n/a test-arm64-arm64-xl-thunderx 1 build-check(1) blocked n/a test-arm64-arm64-xl-vhd 1 build-check(1) blocked n/a test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a test-armhf-armhf-libvirt 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-qcow2 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-raw 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a test-armhf-armhf-xl-arndale 1 build-check(1) blocked n/a test-armhf-armhf-xl-multivcpu 1 build-check(1) blocked n/a test-armhf-armhf-xl-rtds 1 build-check(1) blocked n/a test-armhf-armhf-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-amd 1 build-check(1) blocked n/a test-amd64-i386-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-raw 1 build-check(1) blocked n/a test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-i386 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-amd64 1 build-check(1) blocked n/a test-amd64-coresched-i386-xl 1 build-check(1) blocked n/a test-amd64-coresched-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-xsm 1 build-check(1) blocked n/a build-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-shadow 1 build-check(1) blocked n/a test-amd64-amd64-xl-rtds 1 build-check(1) blocked n/a build-arm64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a build-armhf-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a build-i386-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-amd 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-pair 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-qcow2 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-vhd 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvshim 1 build-check(1) blocked n/a test-amd64-amd64-pair 1 build-check(1) blocked n/a test-amd64-amd64-pygrub 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-intel 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd11-amd64 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd12-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-multivcpu 1 build-check(1) blocked n/a test-amd64-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit1 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit1 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-intel 1 build-check(1) blocked n/a test-amd64-i386-xl 1 build-check(1) blocked n/a test-amd64-i386-xl-pvshim 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a version targeted for testing: qemuu e3660cc1e3cb136af50c0eaaeac27943c2438d1d baseline version: qemuu 6972ef1440a9d685482d78672620a7482f2bd09a Last test of basis 180691 2023-05-17 10:45:22 Z 32 days Failing since 180699 2023-05-18 07:21:24 Z 31 days 114 attempts Testing same since 181483 2023-06-17 15:10:36 Z 1 days 5 attempts ------------------------------------------------------------ People who touched revisions under test: Afonso Bordado Akihiko Odaki Akihiro Suda Alex Bennée Alex Williamson Alexander Bulekov Alexander Graf Alexander Ivanov Alistair Francis Anastasia Belova Andrea Bolognani Andreas Schwab Andrew Jeffery Ani Sinha Ani Sinha Anthony PERARD Anton Johansson Antonio Caggiano BALATON Zoltan Bastian Koppelmann Bernhard Beschow Bin Meng Brian Cain Brice Goglin Camilla Conte Carlos Santos Christian Schoenebeck Chuck Zmudzinski Cindy Lu Clément Chigot Corey Minyard Cornelia Huck Cédric Le Goater Cédric Le Goater Daniel Henrique Barboza Daniel Henrique Barboza Daniel P. Berrangé Daniil Kovalev David Hildenbrand David Woodhouse Emanuele Giuseppe Esposito Enze Li Eric Auger Eric Blake Eric DeVolder Erico Nunes Eugenio Pérez Fabiano Rosas Fan Ni Fiona Ebner Francesco Cagnin Francisco Iglesias Frederic Barrat Gavin Shan Gregory Price Gregory Price Hanna Czenczek Hao Zeng Hawkins Jiawei Himanshu Chauhan Igor Mammedov Ilya Leoshkevich Ira Weiny Ivan Klokov Jagannathan Raman Jason Wang Jean-Louis Dupond Jean-Philippe Brucker Jiajie Chen Jiaxun Yang Joao Martins John Snow Jonathan Cameron Juan Quintela Junqiang Wang Kevin Wolf Laurent Vivier Lei Yang Leonardo Bras Maksim Davydov Marc-André Lureau Marcin Juszkiewicz Marco Liebel Mark Cave-Ayland Markus Armbruster Matheus Tavares Bernardino Mattias Nissler Mauro Matteo Cascella Max Fritz Mayuresh Chitale Michael S. Tsirkin Michael Tokarev Michal Privoznik Milan Zamazal Mostafa Saleh Nicholas Piggin Nicolas Saenz Julienne Niek Linnenbank Niklas Cassel Ninad Palsule Palmer Dabbelt Paolo Bonzini Patrick Venture Peter Maydell Peter Xu Philippe Mathieu-Daudé Philippe Mathieu-Daudé qianfan Zhao Raghu H Rene Engel Richard Henderson Richard Purdie Ricky Zhou Ryan Wendland Sebastian Ott Sergio Lopez Sid Manning Song Gao Stefan Hajnoczi Stefano Garzarella Stefano Stabellini Stefano Stabellini Steve Sistare Sunil V L Taylor Simpson Thomas Huth Thomas Weißschuh Tianrui Zhao timothee.cocault@gmail.com Timothée Cocault Tommy Wu Vikram Garhwal Viktor Prutyanov Vitaly Cheptsov Vivek Kasireddy Vladimir Sementsov-Ogievskiy Volker Rümelin Weiwei Li Xiao Wang Xinyu Li Yin Wang Zeng Hao Zhenyu Zhang Zhenzhong Duan Zhuojia Shen jobs: build-amd64-xsm fail build-arm64-xsm fail build-i386-xsm fail build-amd64 fail build-arm64 fail build-armhf fail build-i386 fail build-amd64-libvirt blocked build-arm64-libvirt blocked build-armhf-libvirt blocked build-i386-libvirt blocked build-amd64-pvops pass build-arm64-pvops fail build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl blocked test-amd64-coresched-amd64-xl blocked test-arm64-arm64-xl blocked test-armhf-armhf-xl blocked test-amd64-i386-xl blocked test-amd64-coresched-i386-xl blocked test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-i386-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-amd64-libvirt-xsm blocked test-arm64-arm64-libvirt-xsm blocked test-amd64-i386-libvirt-xsm blocked test-amd64-amd64-xl-xsm blocked test-arm64-arm64-xl-xsm blocked test-amd64-i386-xl-xsm blocked test-amd64-amd64-qemuu-nested-amd blocked test-amd64-amd64-xl-pvhv2-amd blocked test-amd64-i386-qemuu-rhel6hvm-amd blocked test-amd64-amd64-dom0pvh-xl-amd blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-freebsd10-amd64 blocked test-amd64-amd64-qemuu-freebsd11-amd64 blocked test-amd64-amd64-qemuu-freebsd12-amd64 blocked test-amd64-amd64-xl-qemuu-ovmf-amd64 blocked test-amd64-i386-xl-qemuu-ovmf-amd64 blocked test-amd64-amd64-xl-qemuu-win7-amd64 blocked test-amd64-i386-xl-qemuu-win7-amd64 blocked test-amd64-amd64-xl-qemuu-ws16-amd64 blocked test-amd64-i386-xl-qemuu-ws16-amd64 blocked test-armhf-armhf-xl-arndale blocked test-amd64-amd64-xl-credit1 blocked test-arm64-arm64-xl-credit1 blocked test-armhf-armhf-xl-credit1 blocked test-amd64-amd64-xl-credit2 blocked test-arm64-arm64-xl-credit2 blocked test-armhf-armhf-xl-credit2 blocked test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-freebsd10-i386 blocked test-amd64-amd64-qemuu-nested-intel blocked test-amd64-amd64-xl-pvhv2-intel blocked test-amd64-i386-qemuu-rhel6hvm-intel blocked test-amd64-amd64-dom0pvh-xl-intel blocked test-amd64-amd64-libvirt blocked test-armhf-armhf-libvirt blocked test-amd64-i386-libvirt blocked test-amd64-amd64-xl-multivcpu blocked test-armhf-armhf-xl-multivcpu blocked test-amd64-amd64-pair blocked test-amd64-i386-pair blocked test-amd64-amd64-libvirt-pair blocked test-amd64-i386-libvirt-pair blocked test-amd64-amd64-xl-pvshim blocked test-amd64-i386-xl-pvshim blocked test-amd64-amd64-pygrub blocked test-armhf-armhf-libvirt-qcow2 blocked test-amd64-amd64-xl-qcow2 blocked test-arm64-arm64-libvirt-raw blocked test-armhf-armhf-libvirt-raw blocked test-amd64-i386-libvirt-raw blocked test-amd64-amd64-xl-rtds blocked test-armhf-armhf-xl-rtds blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-amd64-xl-shadow blocked test-amd64-i386-xl-shadow blocked test-arm64-arm64-xl-thunderx blocked test-amd64-amd64-libvirt-vhd blocked test-arm64-arm64-xl-vhd blocked test-armhf-armhf-xl-vhd blocked test-amd64-i386-xl-vhd blocked ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 19235 lines long.) From xen-devel-bounces@lists.xenproject.org Mon Jun 19 04:13:25 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 19 Jun 2023 04:13:25 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550786.859977 (Exim 4.92) (envelope-from ) id 1qB6GR-0004gF-PO; Mon, 19 Jun 2023 04:13:15 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550786.859977; Mon, 19 Jun 2023 04:13:15 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qB6GR-0004ec-HH; Mon, 19 Jun 2023 04:13:15 +0000 Received: by outflank-mailman (input) for mailman id 550786; Sun, 18 Jun 2023 22:23:27 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qB0nu-0003MH-Pv for xen-devel@lists.xenproject.org; Sun, 18 Jun 2023 22:23:27 +0000 Received: from mail-yb1-xb32.google.com (mail-yb1-xb32.google.com [2607:f8b0:4864:20::b32]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id bc789caf-0e26-11ee-8611-37d641c3527e; Mon, 19 Jun 2023 00:23:23 +0200 (CEST) Received: by mail-yb1-xb32.google.com with SMTP id 3f1490d57ef6-bd5f20508f2so3052118276.3 for ; Sun, 18 Jun 2023 15:23:23 -0700 (PDT) Received: from joel-Precision-7920-Tower.. ([24.53.71.1]) by smtp.gmail.com with ESMTPSA id t2-20020a259ac2000000b00bcc0f2e4f05sm3389532ybo.59.2023.06.18.15.23.19 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 18 Jun 2023 15:23:20 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: bc789caf-0e26-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687127002; x=1689719002; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=PMWC22riCBniLySmG0Xv/G68yYJQfYqUsZlijYvxMCg=; b=RuJ9BcI3Oj8XoM4IJumPnP7y2EVSeRz+fc2mIMV3aMOX66gd1RPsCJtiOKQmWvQj4u mRtgGueMUWCt6u+m9OKgm9Pl6CGFW/6v+dlak8qG3+V5fS23dj+KbH6ZHf6CLVL3AyFs 4CWcOtzLGjXENgfQWqpVCBAGwhmr3fzbd2Kgsn9WpMSdT5feYqgrTe1bqJ1wXz5uThdZ lKTVfyzmmKiNZfnzqLpzQMtZ7Gdp5EuRX8Sb7r9UvpdbH/rzEBNWaFAiJdR1RGXn0b/j W/z8af231hfuW7TWYan/U7VJ6PnjSD8+XLeS2ajgAxRnohSmNxDB5h5PG+fumd3oXTrm tlOQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687127002; x=1689719002; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=PMWC22riCBniLySmG0Xv/G68yYJQfYqUsZlijYvxMCg=; b=b60jcxEE9vJku/ycyrnmVzhXp2GOCvmR+sVntzSTXcMhkW16fiklIejn1CeKZ/rl5P aGb680UQxnSI2YqD44EOCJo8fDtMLt4gFGxAbaoxovzXlJTvn+BRJd/0gc5N6euJTODw sOCHUg7G/5NnOFyTXHJZXGyOBGe6GhbfsEhCMkJ1NFqr7maIZkVEg61YX84k0eUwk32w hDNpY/2vzDTmIW4bqEBOTVIVrbOM9smKgbRaQlVQlI2hXhQEM5ipG7AYpNehAOX1Ginb bYh4lrNmWVh34jfSqgVLHIFTPLanAE8CM/yQ2b+p3IwIOe3q5XLIOXj1U/1Nto63uCTn /1PQ== X-Gm-Message-State: AC+VfDynYFSQBdjU9KfI3pS0auVxi+o8MWoifE2fyehPUAOYzrJkrjdu nRIY7LcSfk37wfMg8FfbwxvIpCMKj4NDgQ== X-Google-Smtp-Source: ACHHUZ7ItsKxZ0F7UQ04WQGsv670adJwUs5/CtqIeV7MuFOtuTjS7Mz7puSZKvCOwcOtbqDEtw14SA== X-Received: by 2002:a25:b195:0:b0:b8e:cb88:1b69 with SMTP id h21-20020a25b195000000b00b8ecb881b69mr5268195ybj.34.1687127000471; Sun, 18 Jun 2023 15:23:20 -0700 (PDT) From: Joel Upham To: xen-devel@lists.xenproject.org Cc: Joel Upham , Wei Liu , Anthony PERARD , Jan Beulich , Andrew Cooper , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Juergen Gross Subject: [PATCH v1 1/1] Q35 support Date: Sun, 18 Jun 2023 18:22:02 -0400 Message-Id: <7d691abc536a393e849d4cd90ea00c96e69eeece.1687121835.git.jupham125@gmail.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit --- docs/man/xl.cfg.5.pod.in | 27 ++ tools/firmware/hvmloader/Makefile | 2 +- tools/firmware/hvmloader/config.h | 6 + tools/firmware/hvmloader/hvmloader.c | 13 +- tools/firmware/hvmloader/ovmf.c | 7 +- tools/firmware/hvmloader/pci.c | 285 +++++++++---- tools/firmware/hvmloader/pci_regs.h | 6 + tools/firmware/hvmloader/seabios.c | 5 + tools/firmware/hvmloader/util.c | 130 +++++- tools/firmware/hvmloader/util.h | 10 + tools/libacpi/Makefile | 10 +- tools/libacpi/acpi2_0.h | 21 + tools/libacpi/build.c | 43 ++ tools/libacpi/dsdt_q35.asl | 578 +++++++++++++++++++++++++++ tools/libacpi/libacpi.h | 4 + tools/libs/light/libxl_dm.c | 60 ++- tools/libs/light/libxl_types.idl | 8 + tools/xl/xl_parse.c | 14 + 18 files changed, 1120 insertions(+), 109 deletions(-) create mode 100644 tools/libacpi/dsdt_q35.asl diff --git a/docs/man/xl.cfg.5.pod.in b/docs/man/xl.cfg.5.pod.in index 24ac927182..be61227313 100644 --- a/docs/man/xl.cfg.5.pod.in +++ b/docs/man/xl.cfg.5.pod.in @@ -2838,6 +2838,33 @@ you have existing guests then, depending on the nature of the guest Operating System, you may wish to force them to use the device model which they were installed with. +=item B + +Selects which chipset the device model should emulate for this +guest. + +Valid options are: + +=over 4 + +=item B<"i440"> + +Use i440 emulation (a default setting) + +=item B<"q35"> + +Use Q35/ICH9 emulation. This enables additional features for +PCIe device passthrough + +=back + +Note that omitting device_model_machine parameter means i440 system +by default, so the default behavior doesn't change for old domain +config files. + +It is recommended to install the guest OS from scratch to avoid issues +due to the emulated platform change. + =item B Override the path to the binary to be used as the device-model running in diff --git a/tools/firmware/hvmloader/Makefile b/tools/firmware/hvmloader/Makefile index e5de1ade17..e3c8eb3ca1 100644 --- a/tools/firmware/hvmloader/Makefile +++ b/tools/firmware/hvmloader/Makefile @@ -70,7 +70,7 @@ rombios.o: roms.inc smbios.o: CFLAGS += -D__SMBIOS_DATE__="\"$(SMBIOS_REL_DATE)\"" ACPI_PATH = ../../libacpi -DSDT_FILES = dsdt_anycpu.c dsdt_15cpu.c dsdt_anycpu_qemu_xen.c +DSDT_FILES = dsdt_anycpu.c dsdt_15cpu.c dsdt_anycpu_qemu_xen.c dsdt_q35_anycpu_qemu_xen.c ACPI_OBJS = $(patsubst %.c,%.o,$(DSDT_FILES)) build.o static_tables.o $(ACPI_OBJS): CFLAGS += -iquote . -DLIBACPI_STDUTILS=\"$(CURDIR)/util.h\" CFLAGS += -I$(ACPI_PATH) diff --git a/tools/firmware/hvmloader/config.h b/tools/firmware/hvmloader/config.h index c82adf6dc5..53a3300d6e 100644 --- a/tools/firmware/hvmloader/config.h +++ b/tools/firmware/hvmloader/config.h @@ -54,6 +54,12 @@ extern uint8_t ioapic_version; #define PCI_ISA_DEVFN 0x08 /* dev 1, fn 0 */ #define PCI_ISA_IRQ_MASK 0x0c20U /* ISA IRQs 5,10,11 are PCI connected */ +#define PCI_ICH9_LPC_DEVFN 0xf8 /* dev 31, fn 0 */ +#define PCI_MCH_DEVFN 0 /* bus 0, dev 0, func 0 */ + +/* possible values are: 64, 128, 256 */ +#define PCI_MAX_MCFG_BUSES 64 + #define ACPI_TIS_HDR_ADDRESS 0xFED40F00UL diff --git a/tools/firmware/hvmloader/hvmloader.c b/tools/firmware/hvmloader/hvmloader.c index c58841e5b5..ef0e66b214 100644 --- a/tools/firmware/hvmloader/hvmloader.c +++ b/tools/firmware/hvmloader/hvmloader.c @@ -259,8 +259,17 @@ static const struct bios_config *detect_bios(void) static void acpi_enable_sci(void) { uint8_t pm1a_cnt_val; + uint8_t acpi_enable_val; + +#define SMI_CMD_IOPORT 0xb2 +#define PIIX4_ACPI_ENABLE 0xf1 +#define ICH9_ACPI_ENABLE 0x02 + + if (get_pc_machine_type() == MACHINE_TYPE_Q35) + acpi_enable_val = ICH9_ACPI_ENABLE; + else + acpi_enable_val = PIIX4_ACPI_ENABLE; -#define PIIX4_SMI_CMD_IOPORT 0xb2 #define PIIX4_ACPI_ENABLE 0xf1 /* @@ -269,7 +278,7 @@ static void acpi_enable_sci(void) */ pm1a_cnt_val = inb(ACPI_PM1A_CNT_BLK_ADDRESS_V1); if ( !(pm1a_cnt_val & ACPI_PM1C_SCI_EN) ) - outb(PIIX4_SMI_CMD_IOPORT, PIIX4_ACPI_ENABLE); + outb(SMI_CMD_IOPORT, acpi_enable_val); pm1a_cnt_val = inb(ACPI_PM1A_CNT_BLK_ADDRESS_V1); BUG_ON(!(pm1a_cnt_val & ACPI_PM1C_SCI_EN)); diff --git a/tools/firmware/hvmloader/ovmf.c b/tools/firmware/hvmloader/ovmf.c index 23610a0717..3886b71431 100644 --- a/tools/firmware/hvmloader/ovmf.c +++ b/tools/firmware/hvmloader/ovmf.c @@ -121,10 +121,15 @@ static void ovmf_acpi_build_tables(void) struct acpi_config config = { .dsdt_anycpu = dsdt_anycpu_qemu_xen, .dsdt_anycpu_len = dsdt_anycpu_qemu_xen_len, - .dsdt_15cpu = NULL, + .dsdt_15cpu = NULL, .dsdt_15cpu_len = 0 }; + if (get_pc_machine_type() == MACHINE_TYPE_Q35) { + config.dsdt_anycpu = dsdt_q35_anycpu_qemu_xen; + config.dsdt_anycpu_len = dsdt_q35_anycpu_qemu_xen_len; + } + hvmloader_acpi_build_tables(&config, ACPI_PHYSICAL_ADDRESS); } diff --git a/tools/firmware/hvmloader/pci.c b/tools/firmware/hvmloader/pci.c index 257a6feb61..1137387c43 100644 --- a/tools/firmware/hvmloader/pci.c +++ b/tools/firmware/hvmloader/pci.c @@ -34,6 +34,7 @@ const uint32_t pci_mem_end = RESERVED_MEMBASE; uint64_t pci_hi_mem_start = 0, pci_hi_mem_end = 0; enum virtual_vga virtual_vga = VGA_none; +uint32_t vga_devfn = 256; unsigned long igd_opregion_pgbase = 0; /* Check if the specified range conflicts with any reserved device memory. */ @@ -75,14 +76,94 @@ static int find_next_rmrr(uint32_t base) return next_rmrr; } +#define SCI_EN_IOPORT (ACPI_PM1A_EVT_BLK_ADDRESS_V1 + 0x30) +#define GBL_SMI_EN (1 << 0) +#define APMC_EN (1 << 5) + +static void class_specific_pci_device_setup(uint16_t vendor_id, + uint16_t device_id, + uint8_t bus, uint8_t devfn) +{ + uint16_t class; + + class = pci_readw(devfn, PCI_CLASS_DEVICE); + + switch ( class ) + { + case 0x0300: + /* If emulated VGA is found, preserve it as primary VGA. */ + if ( (vendor_id == 0x1234) && (device_id == 0x1111) ) + { + vga_devfn = devfn; + virtual_vga = VGA_std; + } + else if ( (vendor_id == 0x1013) && (device_id == 0xb8) ) + { + vga_devfn = devfn; + virtual_vga = VGA_cirrus; + } + else if ( virtual_vga == VGA_none ) + { + vga_devfn = devfn; + virtual_vga = VGA_pt; + if ( vendor_id == 0x8086 ) + { + igd_opregion_pgbase = mem_hole_alloc(IGD_OPREGION_PAGES); + /* + * Write the the OpRegion offset to give the opregion + * address to the device model. The device model will trap + * and map the OpRegion at the give address. + */ + pci_writel(vga_devfn, PCI_INTEL_OPREGION, + igd_opregion_pgbase << PAGE_SHIFT); + } + } + break; + + case 0x0680: + /* PIIX4 ACPI PM. Special device with special PCI config space. */ + ASSERT((vendor_id == 0x8086) && (device_id == 0x7113)); + pci_writew(devfn, 0x20, 0x0000); /* No smb bus IO enable */ + pci_writew(devfn, 0xd2, 0x0000); /* No smb bus IO enable */ + pci_writew(devfn, 0x22, 0x0000); + pci_writew(devfn, 0x3c, 0x0009); /* Hardcoded IRQ9 */ + pci_writew(devfn, 0x3d, 0x0001); + pci_writel(devfn, 0x40, ACPI_PM1A_EVT_BLK_ADDRESS_V1 | 1); + pci_writeb(devfn, 0x80, 0x01); /* enable PM io space */ + break; + + case 0x0601: + /* LPC bridge */ + if (vendor_id == 0x8086 && device_id == 0x2918) + { + pci_writeb(devfn, 0x3c, 0x09); /* Hardcoded IRQ9 */ + pci_writeb(devfn, 0x3d, 0x01); + pci_writel(devfn, 0x40, ACPI_PM1A_EVT_BLK_ADDRESS_V1 | 1); + pci_writeb(devfn, 0x44, 0x80); /* enable PM io space */ + outl(SCI_EN_IOPORT, inl(SCI_EN_IOPORT) | GBL_SMI_EN | APMC_EN); + } + break; + + case 0x0101: + if ( vendor_id == 0x8086 ) + { + /* Intel ICHs since PIIX3: enable IDE legacy mode. */ + pci_writew(devfn, 0x40, 0x8000); /* enable IDE0 */ + pci_writew(devfn, 0x42, 0x8000); /* enable IDE1 */ + } + break; + } +} + void pci_setup(void) { - uint8_t is_64bar, using_64bar, bar64_relocate = 0; + uint8_t is_64bar, using_64bar, bar64_relocate = 0, is_mem; uint32_t devfn, bar_reg, cmd, bar_data, bar_data_upper; uint64_t base, bar_sz, bar_sz_upper, mmio_total = 0; - uint32_t vga_devfn = 256; - uint16_t class, vendor_id, device_id; + uint64_t addr_mask; + uint16_t vendor_id, device_id; unsigned int bar, pin, link, isa_irq; + int is_running_on_q35 = 0; uint8_t pci_devfn_decode_type[256] = {}; /* Resources assignable to PCI devices via BARs. */ @@ -92,10 +173,14 @@ void pci_setup(void) /* Create a list of device BARs in descending order of size. */ struct bars { - uint32_t is_64bar; uint32_t devfn; uint32_t bar_reg; uint64_t bar_sz; + uint64_t addr_mask; /* which bits of the base address can be written */ + uint32_t bar_data; /* initial value - BAR flags here */ + uint8_t is_64bar; + uint8_t is_mem; + uint8_t padding[2]; } *bars = (struct bars *)scratch_start; unsigned int i, nr_bars = 0; uint64_t mmio_hole_size = 0; @@ -137,13 +222,28 @@ void pci_setup(void) if ( s ) mmio_hole_size = strtoll(s, NULL, 0); + /* check if we are on Q35 and set the flag if it is the case */ + is_running_on_q35 = get_pc_machine_type() == MACHINE_TYPE_Q35; + /* Program PCI-ISA bridge with appropriate link routes. */ isa_irq = 0; for ( link = 0; link < 4; link++ ) { do { isa_irq = (isa_irq + 1) & 15; } while ( !(PCI_ISA_IRQ_MASK & (1U << isa_irq)) ); - pci_writeb(PCI_ISA_DEVFN, 0x60 + link, isa_irq); + + if (is_running_on_q35) + { + pci_writeb(PCI_ICH9_LPC_DEVFN, 0x60 + link, isa_irq); + + /* PIRQE..PIRQH are unused */ + pci_writeb(PCI_ICH9_LPC_DEVFN, 0x68 + link, 0x80); + } + else + { + pci_writeb(PCI_ISA_DEVFN, 0x60 + link, isa_irq); + } + printf("PCI-ISA link %u routed to IRQ%u\n", link, isa_irq); } @@ -154,66 +254,13 @@ void pci_setup(void) /* Scan the PCI bus and map resources. */ for ( devfn = 0; devfn < 256; devfn++ ) { - class = pci_readw(devfn, PCI_CLASS_DEVICE); vendor_id = pci_readw(devfn, PCI_VENDOR_ID); device_id = pci_readw(devfn, PCI_DEVICE_ID); if ( (vendor_id == 0xffff) && (device_id == 0xffff) ) continue; - ASSERT((devfn != PCI_ISA_DEVFN) || - ((vendor_id == 0x8086) && (device_id == 0x7000))); - - switch ( class ) - { - case 0x0300: - /* If emulated VGA is found, preserve it as primary VGA. */ - if ( (vendor_id == 0x1234) && (device_id == 0x1111) ) - { - vga_devfn = devfn; - virtual_vga = VGA_std; - } - else if ( (vendor_id == 0x1013) && (device_id == 0xb8) ) - { - vga_devfn = devfn; - virtual_vga = VGA_cirrus; - } - else if ( virtual_vga == VGA_none ) - { - vga_devfn = devfn; - virtual_vga = VGA_pt; - if ( vendor_id == 0x8086 ) - { - igd_opregion_pgbase = mem_hole_alloc(IGD_OPREGION_PAGES); - /* - * Write the the OpRegion offset to give the opregion - * address to the device model. The device model will trap - * and map the OpRegion at the give address. - */ - pci_writel(vga_devfn, PCI_INTEL_OPREGION, - igd_opregion_pgbase << PAGE_SHIFT); - } - } - break; - case 0x0680: - /* PIIX4 ACPI PM. Special device with special PCI config space. */ - ASSERT((vendor_id == 0x8086) && (device_id == 0x7113)); - pci_writew(devfn, 0x20, 0x0000); /* No smb bus IO enable */ - pci_writew(devfn, 0xd2, 0x0000); /* No smb bus IO enable */ - pci_writew(devfn, 0x22, 0x0000); - pci_writew(devfn, 0x3c, 0x0009); /* Hardcoded IRQ9 */ - pci_writew(devfn, 0x3d, 0x0001); - pci_writel(devfn, 0x40, ACPI_PM1A_EVT_BLK_ADDRESS_V1 | 1); - pci_writeb(devfn, 0x80, 0x01); /* enable PM io space */ - break; - case 0x0101: - if ( vendor_id == 0x8086 ) - { - /* Intel ICHs since PIIX3: enable IDE legacy mode. */ - pci_writew(devfn, 0x40, 0x8000); /* enable IDE0 */ - pci_writew(devfn, 0x42, 0x8000); /* enable IDE1 */ - } - break; - } + class_specific_pci_device_setup(vendor_id, device_id, + 0 /* virt_bus support TBD */, devfn); /* * It is recommended that BAR programming be done whilst decode @@ -238,13 +285,20 @@ void pci_setup(void) bar_reg = PCI_ROM_ADDRESS; bar_data = pci_readl(devfn, bar_reg); + + is_mem = !!(((bar_data & PCI_BASE_ADDRESS_SPACE) == + PCI_BASE_ADDRESS_SPACE_MEMORY) || + (bar_reg == PCI_ROM_ADDRESS)); + if ( bar_reg != PCI_ROM_ADDRESS ) { - is_64bar = !!((bar_data & (PCI_BASE_ADDRESS_SPACE | - PCI_BASE_ADDRESS_MEM_TYPE_MASK)) == - (PCI_BASE_ADDRESS_SPACE_MEMORY | + is_64bar = !!(is_mem && + ((bar_data & PCI_BASE_ADDRESS_MEM_TYPE_MASK) == PCI_BASE_ADDRESS_MEM_TYPE_64)); pci_writel(devfn, bar_reg, ~0); + + addr_mask = is_mem ? PCI_BASE_ADDRESS_MEM_MASK + : PCI_BASE_ADDRESS_IO_MASK; } else { @@ -252,15 +306,15 @@ void pci_setup(void) pci_writel(devfn, bar_reg, (bar_data | PCI_ROM_ADDRESS_MASK) & ~PCI_ROM_ADDRESS_ENABLE); + + addr_mask = PCI_ROM_ADDRESS_MASK; } bar_sz = pci_readl(devfn, bar_reg); pci_writel(devfn, bar_reg, bar_data); if ( bar_reg != PCI_ROM_ADDRESS ) - bar_sz &= (((bar_data & PCI_BASE_ADDRESS_SPACE) == - PCI_BASE_ADDRESS_SPACE_MEMORY) ? - PCI_BASE_ADDRESS_MEM_MASK : - (PCI_BASE_ADDRESS_IO_MASK & 0xffff)); + bar_sz &= is_mem ? PCI_BASE_ADDRESS_MEM_MASK : + (PCI_BASE_ADDRESS_IO_MASK & 0xffff); else bar_sz &= PCI_ROM_ADDRESS_MASK; if (is_64bar) { @@ -274,6 +328,9 @@ void pci_setup(void) if ( bar_sz == 0 ) continue; + /* leave only memtype/enable bits etc */ + bar_data &= ~addr_mask; + for ( i = 0; i < nr_bars; i++ ) if ( bars[i].bar_sz < bar_sz ) break; @@ -281,14 +338,15 @@ void pci_setup(void) if ( i != nr_bars ) memmove(&bars[i+1], &bars[i], (nr_bars-i) * sizeof(*bars)); - bars[i].is_64bar = is_64bar; - bars[i].devfn = devfn; - bars[i].bar_reg = bar_reg; - bars[i].bar_sz = bar_sz; + bars[i].is_64bar = is_64bar; + bars[i].is_mem = is_mem; + bars[i].devfn = devfn; + bars[i].bar_reg = bar_reg; + bars[i].bar_sz = bar_sz; + bars[i].addr_mask = addr_mask; + bars[i].bar_data = bar_data; - if ( ((bar_data & PCI_BASE_ADDRESS_SPACE) == - PCI_BASE_ADDRESS_SPACE_MEMORY) || - (bar_reg == PCI_ROM_ADDRESS) ) + if ( is_mem ) mmio_total += bar_sz; nr_bars++; @@ -304,7 +362,9 @@ void pci_setup(void) { /* This is the barber's pole mapping used by Xen. */ link = ((pin - 1) + (devfn >> 3)) & 3; - isa_irq = pci_readb(PCI_ISA_DEVFN, 0x60 + link); + isa_irq = pci_readb(is_running_on_q35 ? + PCI_ICH9_LPC_DEVFN : PCI_ISA_DEVFN, + 0x60 + link); pci_writeb(devfn, PCI_INTERRUPT_LINE, isa_irq); printf("pci dev %02x:%x INT%c->IRQ%u\n", devfn>>3, devfn&7, 'A'+pin-1, isa_irq); @@ -314,6 +374,63 @@ void pci_setup(void) pci_devfn_decode_type[devfn] = PCI_COMMAND_MASTER; } + /* + * Calculate MMCONFIG area size and squeeze it into the bars array + * for assigning a slot in the MMIO hole + */ + if (is_running_on_q35) + { + /* disable PCIEXBAR decoding for now */ + pci_writel(PCI_MCH_DEVFN, PCI_MCH_PCIEXBAR, 0); + pci_writel(PCI_MCH_DEVFN, PCI_MCH_PCIEXBAR + 4, 0); + +#define PCIEXBAR_64_BUSES (2 << 1) +#define PCIEXBAR_128_BUSES (1 << 1) +#define PCIEXBAR_256_BUSES (0 << 1) +#define PCIEXBAR_ENABLE (1 << 0) + + switch (PCI_MAX_MCFG_BUSES) + { + case 64: + bar_data = PCIEXBAR_64_BUSES | PCIEXBAR_ENABLE; + bar_sz = MB(64); + break; + + case 128: + bar_data = PCIEXBAR_128_BUSES | PCIEXBAR_ENABLE; + bar_sz = MB(128); + break; + + case 256: + bar_data = PCIEXBAR_256_BUSES | PCIEXBAR_ENABLE; + bar_sz = MB(256); + break; + + default: + /* unsupported number of buses specified */ + BUG(); + } + + addr_mask = ~(bar_sz - 1); + + for ( i = 0; i < nr_bars; i++ ) + if ( bars[i].bar_sz < bar_sz ) + break; + + if ( i != nr_bars ) + memmove(&bars[i+1], &bars[i], (nr_bars-i) * sizeof(*bars)); + + bars[i].is_mem = 1; + bars[i].devfn = PCI_MCH_DEVFN; + bars[i].bar_reg = PCI_MCH_PCIEXBAR; + bars[i].bar_sz = bar_sz; + bars[i].addr_mask = addr_mask; + bars[i].bar_data = bar_data; + + mmio_total += bar_sz; + nr_bars++; + } + if ( mmio_hole_size ) { uint64_t max_ram_below_4g = GB(4) - mmio_hole_size; @@ -448,10 +565,9 @@ void pci_setup(void) */ using_64bar = bars[i].is_64bar && bar64_relocate && (mmio_total > (mem_resource.max - mem_resource.base)); - bar_data = pci_readl(devfn, bar_reg); + bar_data = bars[i].bar_data; - if ( (bar_data & PCI_BASE_ADDRESS_SPACE) == - PCI_BASE_ADDRESS_SPACE_MEMORY ) + if ( bars[i].is_mem ) { /* Mapping high memory if PCI device is 64 bits bar */ if ( using_64bar ) { @@ -461,18 +577,15 @@ void pci_setup(void) if ( !pci_hi_mem_start ) pci_hi_mem_start = high_mem_resource.base; resource = &high_mem_resource; - bar_data &= ~PCI_BASE_ADDRESS_MEM_MASK; - } + } else { resource = &mem_resource; - bar_data &= ~PCI_BASE_ADDRESS_MEM_MASK; } mmio_total -= bar_sz; } else { resource = &io_resource; - bar_data &= ~PCI_BASE_ADDRESS_IO_MASK; } base = (resource->base + bar_sz - 1) & ~(uint64_t)(bar_sz - 1); @@ -494,7 +607,7 @@ void pci_setup(void) } } - bar_data |= (uint32_t)base; + bar_data |= (uint32_t) (base & bars[i].addr_mask); bar_data_upper = (uint32_t)(base >> 32); base += bar_sz; @@ -515,10 +628,8 @@ void pci_setup(void) devfn>>3, devfn&7, bar_reg, PRIllx_arg(bar_sz), bar_data_upper, bar_data); - - if ( (bar_reg == PCI_ROM_ADDRESS) || - ((bar_data & PCI_BASE_ADDRESS_SPACE) == - PCI_BASE_ADDRESS_SPACE_MEMORY) ) + + if ( bars[i].is_mem ) pci_devfn_decode_type[devfn] |= PCI_COMMAND_MEMORY; else pci_devfn_decode_type[devfn] |= PCI_COMMAND_IO; diff --git a/tools/firmware/hvmloader/pci_regs.h b/tools/firmware/hvmloader/pci_regs.h index 7bf2d873ab..b9261ee2af 100644 --- a/tools/firmware/hvmloader/pci_regs.h +++ b/tools/firmware/hvmloader/pci_regs.h @@ -107,6 +107,12 @@ #define PCI_INTEL_OPREGION 0xfc /* 4 bits */ +#define PCI_VENDOR_ID_INTEL 0x8086 +#define PCI_DEVICE_ID_INTEL_82441 0x1237 +#define PCI_DEVICE_ID_INTEL_Q35_MCH 0x29c0 + +#define PCI_MCH_PCIEXBAR 0x60 + #endif /* __HVMLOADER_PCI_REGS_H__ */ /* diff --git a/tools/firmware/hvmloader/seabios.c b/tools/firmware/hvmloader/seabios.c index 444d118ddb..72aabea130 100644 --- a/tools/firmware/hvmloader/seabios.c +++ b/tools/firmware/hvmloader/seabios.c @@ -96,6 +96,11 @@ static void seabios_acpi_build_tables(void) .dsdt_15cpu_len = 0, }; + if (get_pc_machine_type() == MACHINE_TYPE_Q35) { + config.dsdt_anycpu = dsdt_q35_anycpu_qemu_xen; + config.dsdt_anycpu_len = dsdt_q35_anycpu_qemu_xen_len; + } + hvmloader_acpi_build_tables(&config, rsdp); add_table(rsdp); } diff --git a/tools/firmware/hvmloader/util.c b/tools/firmware/hvmloader/util.c index e82047d993..7a75c07467 100644 --- a/tools/firmware/hvmloader/util.c +++ b/tools/firmware/hvmloader/util.c @@ -22,6 +22,7 @@ #include "hypercall.h" #include "ctype.h" #include "vnuma.h" +#include "pci_regs.h" #include #include #include @@ -735,6 +736,115 @@ void __bug(const char *file, int line) crash(); } + +static int machine_type = MACHINE_TYPE_UNDEFINED; + +int get_pc_machine_type(void) +{ + uint16_t vendor_id; + uint16_t device_id; + + if (machine_type != MACHINE_TYPE_UNDEFINED) + return machine_type; + + machine_type = MACHINE_TYPE_UNKNOWN; + + vendor_id = pci_readw(0, PCI_VENDOR_ID); + device_id = pci_readw(0, PCI_DEVICE_ID); + + /* only Intel platforms are emulated currently */ + if (vendor_id == PCI_VENDOR_ID_INTEL) + { + switch (device_id) + { + case PCI_DEVICE_ID_INTEL_82441: + machine_type = MACHINE_TYPE_I440; + printf("Detected i440 chipset\n"); + break; + + case PCI_DEVICE_ID_INTEL_Q35_MCH: + machine_type = MACHINE_TYPE_Q35; + printf("Detected Q35 chipset\n"); + break; + + default: + break; + } + } + + if (machine_type == MACHINE_TYPE_UNKNOWN) + { + printf("Unknown emulated chipset encountered, VID=%04Xh, DID=%04Xh\n", + vendor_id, device_id); + BUG(); + } + + return machine_type; +} + +#define PCIEXBAR_ADDR_MASK_64MB (~((1ULL << 26) - 1)) +#define PCIEXBAR_ADDR_MASK_128MB (~((1ULL << 27) - 1)) +#define PCIEXBAR_ADDR_MASK_256MB (~((1ULL << 28) - 1)) +#define PCIEXBAR_LENGTH_BITS(reg) (((reg) >> 1) & 3) +#define PCIEXBAREN 1 + +static uint64_t mmconfig_get_base(void) +{ + uint64_t base; + uint32_t reg = pci_readl(PCI_MCH_DEVFN, PCI_MCH_PCIEXBAR); + + base = reg | (uint64_t) pci_readl(PCI_MCH_DEVFN, PCI_MCH_PCIEXBAR+4) << 32; + + switch (PCIEXBAR_LENGTH_BITS(reg)) + { + case 0: + base &= PCIEXBAR_ADDR_MASK_256MB; + break; + case 1: + base &= PCIEXBAR_ADDR_MASK_128MB; + break; + case 2: + base &= PCIEXBAR_ADDR_MASK_64MB; + break; + case 3: + BUG(); /* a reserved value encountered */ + } + + return base; +} + +static uint32_t mmconfig_get_size(void) +{ + uint32_t reg = pci_readl(PCI_MCH_DEVFN, PCI_MCH_PCIEXBAR); + + switch (PCIEXBAR_LENGTH_BITS(reg)) + { + case 0: return MB(256); + case 1: return MB(128); + case 2: return MB(64); + case 3: + BUG(); /* a reserved value encountered */ + } + + return 0; +} + +static uint32_t mmconfig_is_enabled(void) +{ + return pci_readl(PCI_MCH_DEVFN, PCI_MCH_PCIEXBAR) & PCIEXBAREN; +} + +static int is_mmconfig_used(void) +{ + if (get_pc_machine_type() == MACHINE_TYPE_Q35) + { + if (mmconfig_is_enabled() && mmconfig_get_base()) + return 1; + } + + return 0; +} + static void validate_hvm_info(struct hvm_info_table *t) { uint8_t *ptr = (uint8_t *)t; @@ -937,8 +1047,17 @@ void hvmloader_acpi_build_tables(struct acpi_config *config, } else if ( !strncmp(s, "qemu_xen", 9) ) { - config->dsdt_anycpu = dsdt_anycpu_qemu_xen; - config->dsdt_anycpu_len = dsdt_anycpu_qemu_xen_len; + if (get_pc_machine_type() == MACHINE_TYPE_Q35) + { + config->dsdt_anycpu = dsdt_q35_anycpu_qemu_xen; + config->dsdt_anycpu_len = dsdt_q35_anycpu_qemu_xen_len; + } + else + { + config->dsdt_anycpu = dsdt_anycpu_qemu_xen; + config->dsdt_anycpu_len = dsdt_anycpu_qemu_xen_len; + } + config->dsdt_15cpu = NULL; config->dsdt_15cpu_len = 0; } @@ -966,6 +1085,13 @@ void hvmloader_acpi_build_tables(struct acpi_config *config, config->pci_hi_len = pci_hi_mem_end - pci_hi_mem_start; } + if ( is_mmconfig_used() ) + { + config->table_flags |= ACPI_HAS_MCFG; + config->mmconfig_addr = mmconfig_get_base(); + config->mmconfig_len = mmconfig_get_size(); + } + s = xenstore_read("platform/generation-id", "0:0"); if ( s ) { diff --git a/tools/firmware/hvmloader/util.h b/tools/firmware/hvmloader/util.h index 87be213dec..c6747c336d 100644 --- a/tools/firmware/hvmloader/util.h +++ b/tools/firmware/hvmloader/util.h @@ -90,6 +90,14 @@ void pci_write(uint32_t devfn, uint32_t reg, uint32_t len, uint32_t val); #define pci_writew(devfn, reg, val) pci_write(devfn, reg, 2, (uint16_t)(val)) #define pci_writel(devfn, reg, val) pci_write(devfn, reg, 4, (uint32_t)(val)) +/* Emulated machine types */ +#define MACHINE_TYPE_UNDEFINED 0 +#define MACHINE_TYPE_I440 1 +#define MACHINE_TYPE_Q35 2 +#define MACHINE_TYPE_UNKNOWN (-1) + +int get_pc_machine_type(void); + /* Get a pointer to the shared-info page */ struct shared_info *get_shared_info(void) __attribute__ ((const)); @@ -270,7 +278,9 @@ bool check_overlap(uint64_t start, uint64_t size, uint64_t reserved_start, uint64_t reserved_size); extern const unsigned char dsdt_anycpu_qemu_xen[], dsdt_anycpu[], dsdt_15cpu[]; +extern const unsigned char dsdt_q35_anycpu_qemu_xen[]; extern const int dsdt_anycpu_qemu_xen_len, dsdt_anycpu_len, dsdt_15cpu_len; +extern const int dsdt_q35_anycpu_qemu_xen_len; unsigned long acpi_pages_allocated(void); diff --git a/tools/libacpi/Makefile b/tools/libacpi/Makefile index b21a64c6b4..d1ad2c6d85 100644 --- a/tools/libacpi/Makefile +++ b/tools/libacpi/Makefile @@ -11,7 +11,7 @@ endif MK_DSDT = $(ACPI_BUILD_DIR)/mk_dsdt -C_SRC-$(CONFIG_X86) = dsdt_anycpu.c dsdt_15cpu.c dsdt_anycpu_qemu_xen.c dsdt_pvh.c +C_SRC-$(CONFIG_X86) = dsdt_anycpu.c dsdt_15cpu.c dsdt_anycpu_qemu_xen.c dsdt_q35_anycpu_qemu_xen.c dsdt_pvh.c C_SRC-$(CONFIG_ARM_64) = dsdt_anycpu_arm.c DSDT_FILES ?= $(C_SRC-y) C_SRC = $(addprefix $(ACPI_BUILD_DIR)/, $(DSDT_FILES)) @@ -54,6 +54,14 @@ $(ACPI_BUILD_DIR)/dsdt_%cpu.asl: dsdt.asl dsdt_acpi_info.asl $(MK_DSDT) $(MK_DSDT) --debug=$(debug) --maxcpu $* >> $@.$(TMP_SUFFIX) mv -f $@.$(TMP_SUFFIX) $@ +$(ACPI_BUILD_DIR)/dsdt_q35_anycpu_qemu_xen.asl: dsdt_q35.asl dsdt_acpi_info.asl $(MK_DSDT) + # Remove last bracket + awk 'NR > 1 {print s} {s=$$0}' $< > $@.$(TMP_SUFFIX) + cat dsdt_acpi_info.asl >> $@.$(TMP_SUFFIX) + $(MK_DSDT) --debug=$(debug) --dm-version qemu-xen >> $@.$(TMP_SUFFIX) + mv -f $@.$(TMP_SUFFIX) $@ + + $(ACPI_BUILD_DIR)/dsdt_pvh.asl: dsdt_acpi_info.asl $(MK_DSDT) printf "DefinitionBlock (\"DSDT.aml\", \"DSDT\", 5, \"Xen\", \"HVM\", 0)\n{" > $@ cat dsdt_acpi_info.asl >> $@ diff --git a/tools/libacpi/acpi2_0.h b/tools/libacpi/acpi2_0.h index 6dfa939a8c..02b0cf1098 100644 --- a/tools/libacpi/acpi2_0.h +++ b/tools/libacpi/acpi2_0.h @@ -442,6 +442,24 @@ struct acpi_20_slit { uint64_t localities; uint8_t entry[0]; }; +/* + * PCI Express Memory Mapped Configuration Description Table + */ +struct mcfg_range_entry { + uint64_t base_address; + uint16_t pci_segment; + uint8_t start_pci_bus_num; + uint8_t end_pci_bus_num; + uint32_t reserved; +}; + +struct acpi_mcfg { + struct acpi_header header; + uint8_t reserved[8]; + struct mcfg_range_entry entries[1]; +}; + +#define MCFG_SIZE_TO_NUM_BUSES(size) ((size) >> 20) /* * Table Signatures. @@ -458,6 +476,8 @@ struct acpi_20_slit { #define ACPI_2_0_WAET_SIGNATURE ASCII32('W','A','E','T') #define ACPI_2_0_SRAT_SIGNATURE ASCII32('S','R','A','T') #define ACPI_2_0_SLIT_SIGNATURE ASCII32('S','L','I','T') +#define ACPI_MCFG_SIGNATURE ASCII32('M','C','F','G') + /* * Table revision numbers. @@ -473,6 +493,7 @@ struct acpi_20_slit { #define ACPI_1_0_FADT_REVISION 0x01 #define ACPI_2_0_SRAT_REVISION 0x01 #define ACPI_2_0_SLIT_REVISION 0x01 +#define ACPI_1_0_MCFG_REVISION 0x01 #pragma pack () diff --git a/tools/libacpi/build.c b/tools/libacpi/build.c index 2f29863db1..fc029d18bf 100644 --- a/tools/libacpi/build.c +++ b/tools/libacpi/build.c @@ -295,6 +295,37 @@ static struct acpi_20_slit *construct_slit(struct acpi_ctxt *ctxt, return slit; } +static struct acpi_mcfg *construct_mcfg(struct acpi_ctxt *ctxt, + const struct acpi_config *config) +{ + struct acpi_mcfg *mcfg; + + /* Warning: this code expects that we have only one PCI segment */ + mcfg = ctxt->mem_ops.alloc(ctxt, sizeof(*mcfg), 16); + if (!mcfg) + return NULL; + + memset(mcfg, 0, sizeof(*mcfg)); + mcfg->header.signature = ACPI_MCFG_SIGNATURE; + mcfg->header.revision = ACPI_1_0_MCFG_REVISION; + fixed_strcpy(mcfg->header.oem_id, ACPI_OEM_ID); + fixed_strcpy(mcfg->header.oem_table_id, ACPI_OEM_TABLE_ID); + mcfg->header.oem_revision = ACPI_OEM_REVISION; + mcfg->header.creator_id = ACPI_CREATOR_ID; + mcfg->header.creator_revision = ACPI_CREATOR_REVISION; + mcfg->header.length = sizeof(*mcfg); + + mcfg->entries[0].base_address = config->mmconfig_addr; + mcfg->entries[0].pci_segment = 0; + mcfg->entries[0].start_pci_bus_num = 0; + mcfg->entries[0].end_pci_bus_num = + MCFG_SIZE_TO_NUM_BUSES(config->mmconfig_len) - 1; + + set_checksum(mcfg, offsetof(struct acpi_header, checksum), sizeof(*mcfg)); + + return mcfg;; +} + static int construct_passthrough_tables(struct acpi_ctxt *ctxt, unsigned long *table_ptrs, int nr_tables, @@ -342,6 +373,7 @@ static int construct_secondary_tables(struct acpi_ctxt *ctxt, struct acpi_20_hpet *hpet; struct acpi_20_waet *waet; struct acpi_20_tcpa *tcpa; + struct acpi_mcfg *mcfg; struct acpi_20_tpm2 *tpm2; unsigned char *ssdt; void *lasa; @@ -402,6 +434,17 @@ static int construct_secondary_tables(struct acpi_ctxt *ctxt, memcpy(ssdt, ssdt_laptop_slate, sizeof(ssdt_laptop_slate)); table_ptrs[nr_tables++] = ctxt->mem_ops.v2p(ctxt, ssdt); } + + /* MCFG */ + if ( config->table_flags & ACPI_HAS_MCFG ) + { + mcfg = construct_mcfg(ctxt, config); + if (!mcfg) + return -1; + + table_ptrs[nr_tables++] = ctxt->mem_ops.v2p(ctxt, mcfg); + } + /* TPM and its SSDT. */ if ( config->table_flags & ACPI_HAS_TPM ) { diff --git a/tools/libacpi/dsdt_q35.asl b/tools/libacpi/dsdt_q35.asl new file mode 100644 index 0000000000..1ec32a8010 --- /dev/null +++ b/tools/libacpi/dsdt_q35.asl @@ -0,0 +1,578 @@ +/****************************************************************************** + * DSDT for Xen with Qemu device model (for Q35 machine) + * + * Copyright (c) 2004, Intel Corporation. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License as published + * by the Free Software Foundation; version 2.1 only. with the special + * exception on linking described in file LICENSE. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License for more details. + */ + +DefinitionBlock ("DSDT.aml", "DSDT", 2, "Xen", "HVM", 0) +{ + Name (\PMBS, 0x0C00) + Name (\PMLN, 0x08) + Name (\IOB1, 0x00) + Name (\IOL1, 0x00) + Name (\APCB, 0xFEC00000) + Name (\APCL, 0x00010000) + Name (\PUID, 0x00) + + + Scope (\_SB) + { + + /* Fix HCT test for 0x400 pci memory: + * - need to report low 640 MB mem as motherboard resource + */ + Device(MEM0) + { + Name(_HID, EISAID("PNP0C02")) + Name(_CRS, ResourceTemplate() { + QWordMemory( + ResourceConsumer, PosDecode, MinFixed, + MaxFixed, Cacheable, ReadWrite, + 0x00000000, + 0x00000000, + 0x0009ffff, + 0x00000000, + 0x000a0000) + }) + } + + Device (PCI0) + { + Name (_HID, EisaId ("PNP0A08")) + Name(_CID, EisaId("PNP0A03")) + Name (_UID, 0x00) + Name (_ADR, 0x00) + Name (_BBN, 0x00) + + /* _OSC, modified from ASL sample in ACPI spec */ + Name(SUPP, 0) /* PCI _OSC Support Field value */ + Name(CTRL, 0) /* PCI _OSC Control Field value */ + Method(_OSC, 4) { + /* Create DWORD-addressable fields from the Capabilities Buffer */ + CreateDWordField(Arg3, 0, CDW1) + + /* Switch by UUID. + * Only PCI Host Bridge Device capabilities UUID used for now + */ + If (LEqual(Arg0, ToUUID("33DB4D5B-1FF7-401C-9657-7441C03DD766"))) { + /* Create DWORD-addressable fields from the Capabilities Buffer */ + CreateDWordField(Arg3, 4, CDW2) + CreateDWordField(Arg3, 8, CDW3) + + /* Save Capabilities DWORD2 & 3 */ + Store(CDW2, SUPP) + Store(CDW3, CTRL) + + /* Validate Revision DWORD */ + If (LNotEqual(Arg1, One)) { + /* Unknown revision */ + /* Support and Control DWORDs will be returned anyway */ + Or(CDW1, 0x08, CDW1) + } + + /* Control field bits are: + * bit 0 PCI Express Native Hot Plug control + * bit 1 SHPC Native Hot Plug control + * bit 2 PCI Express Native Power Management Events control + * bit 3 PCI Express Advanced Error Reporting control + * bit 4 PCI Express Capability Structure control + */ + + /* Always allow native PME, AER (no dependencies) + * Never allow SHPC (no SHPC controller in this system) + * Do not allow PCIe Capability Structure control for now + * Also, ACPI hotplug is used for now instead of PCIe + * Native Hot Plug + */ + And(CTRL, 0x0C, CTRL) + + If (LNotEqual(CDW3, CTRL)) { + /* Some of Capabilities bits were masked */ + Or(CDW1, 0x10, CDW1) + } + /* Update DWORD3 in the buffer */ + Store(CTRL, CDW3) + } Else { + Or(CDW1, 4, CDW1) /* Unrecognized UUID */ + } + Return (Arg3) + } + /* end of _OSC */ + + + /* Make cirrues VGA S3 suspend/resume work in Windows XP/2003 */ + Device (VGA) + { + Name (_ADR, 0x00020000) + + Method (_S1D, 0, NotSerialized) + { + Return (0x00) + } + Method (_S2D, 0, NotSerialized) + { + Return (0x00) + } + Method (_S3D, 0, NotSerialized) + { + Return (0x00) + } + } + + Method (_CRS, 0, NotSerialized) + { + Store (ResourceTemplate () + { + /* bus number is from 0 - 255*/ + WordBusNumber( + ResourceProducer, MinFixed, MaxFixed, SubDecode, + 0x0000, + 0x0000, + 0x00FF, + 0x0000, + 0x0100) + IO (Decode16, 0x0CF8, 0x0CF8, 0x01, 0x08) + WordIO( + ResourceProducer, MinFixed, MaxFixed, PosDecode, + EntireRange, + 0x0000, + 0x0000, + 0x0CF7, + 0x0000, + 0x0CF8) + WordIO( + ResourceProducer, MinFixed, MaxFixed, PosDecode, + EntireRange, + 0x0000, + 0x0D00, + 0xFFFF, + 0x0000, + 0xF300) + + /* reserve memory for pci devices */ + DWordMemory( + ResourceProducer, PosDecode, MinFixed, MaxFixed, + WriteCombining, ReadWrite, + 0x00000000, + 0x000A0000, + 0x000BFFFF, + 0x00000000, + 0x00020000) + + DWordMemory( + ResourceProducer, PosDecode, MinFixed, MaxFixed, + NonCacheable, ReadWrite, + 0x00000000, + 0xF0000000, + 0xF4FFFFFF, + 0x00000000, + 0x05000000, + ,, _Y01) + + QWordMemory ( + ResourceProducer, PosDecode, MinFixed, MaxFixed, + NonCacheable, ReadWrite, + 0x0000000000000000, + 0x0000000FFFFFFFF0, + 0x0000000FFFFFFFFF, + 0x0000000000000000, + 0x0000000000000010, + ,, _Y02) + + }, Local1) + + CreateDWordField(Local1, \_SB.PCI0._CRS._Y01._MIN, MMIN) + CreateDWordField(Local1, \_SB.PCI0._CRS._Y01._MAX, MMAX) + CreateDWordField(Local1, \_SB.PCI0._CRS._Y01._LEN, MLEN) + + Store(\_SB.PMIN, MMIN) + Store(\_SB.PLEN, MLEN) + Add(MMIN, MLEN, MMAX) + Subtract(MMAX, One, MMAX) + + /* + * WinXP / Win2K3 blue-screen for operations on 64-bit values. + * Therefore we need to split the 64-bit calculations needed + * here, but different iasl versions evaluate name references + * to integers differently: + * Year (approximate) 2006 2008 2012 + * \_SB.PCI0._CRS._Y02 zero valid valid + * \_SB.PCI0._CRS._Y02._MIN valid valid huge + */ + If(LEqual(Zero, \_SB.PCI0._CRS._Y02)) { + Subtract(\_SB.PCI0._CRS._Y02._MIN, 14, Local0) + } Else { + Store(\_SB.PCI0._CRS._Y02, Local0) + } + CreateDWordField(Local1, Add(Local0, 14), MINL) + CreateDWordField(Local1, Add(Local0, 18), MINH) + CreateDWordField(Local1, Add(Local0, 22), MAXL) + CreateDWordField(Local1, Add(Local0, 26), MAXH) + CreateDWordField(Local1, Add(Local0, 38), LENL) + CreateDWordField(Local1, Add(Local0, 42), LENH) + + Store(\_SB.LMIN, MINL) + Store(\_SB.HMIN, MINH) + Store(\_SB.LLEN, LENL) + Store(\_SB.HLEN, LENH) + Add(MINL, LENL, MAXL) + Add(MINH, LENH, MAXH) + If(LLess(MAXL, MINL)) { + Add(MAXH, One, MAXH) + } + If(LOr(MINH, LENL)) { + If(LEqual(MAXL, 0)) { + Subtract(MAXH, One, MAXH) + } + Subtract(MAXL, One, MAXL) + } + + Return (Local1) + } + + Device(HPET) { + Name(_HID, EISAID("PNP0103")) + Name(_UID, 0) + Method (_STA, 0, NotSerialized) { + If(LEqual(\_SB.HPET, 0)) { + Return(0x00) + } Else { + Return(0x0F) + } + } + Name(_CRS, ResourceTemplate() { + DWordMemory( + ResourceConsumer, PosDecode, MinFixed, MaxFixed, + NonCacheable, ReadWrite, + 0x00000000, + 0xFED00000, + 0xFED003FF, + 0x00000000, + 0x00000400 /* 1K memory: FED00000 - FED003FF */ + ) + }) + } + + + /**************************************************************** + * LPC ISA bridge + ****************************************************************/ + + Device (ISA) + { + Name (_ADR, 0x001f0000) /* device 31, fn 0 */ + + /* PCI Interrupt Routing Register 1 - PIRQA..PIRQD */ + OperationRegion(PIRQ, PCI_Config, 0x60, 0x4) + Scope(\) { + Field (\_SB.PCI0.ISA.PIRQ, ByteAcc, NoLock, Preserve) { + PIRA, 8, + PIRB, 8, + PIRC, 8, + PIRD, 8 + } + } + /* + PCI Interrupt Routing Register 2 (PIRQE..PIRQH) cannot be + used because of existing Xen IRQ limitations (4 PCI links + only) + */ + + /* LPC_I/O: I/O Decode Ranges Register */ + OperationRegion(LPCD, PCI_Config, 0x80, 0x2) + Field(LPCD, AnyAcc, NoLock, Preserve) { + COMA, 3, + , 1, + COMB, 3, + + Offset(0x01), + LPTD, 2, + , 2, + FDCD, 2 + } + + /* LPC_EN: LPC I/F Enables Register */ + OperationRegion(LPCE, PCI_Config, 0x82, 0x2) + Field(LPCE, AnyAcc, NoLock, Preserve) { + CAEN, 1, + CBEN, 1, + LPEN, 1, + FDEN, 1 + } + + Device (SYSR) + { + Name (_HID, EisaId ("PNP0C02")) + Name (_UID, 0x01) + Name (CRS, ResourceTemplate () + { + /* TODO: list hidden resources */ + IO (Decode16, 0x0010, 0x0010, 0x00, 0x10) + IO (Decode16, 0x0022, 0x0022, 0x00, 0x0C) + IO (Decode16, 0x0030, 0x0030, 0x00, 0x10) + IO (Decode16, 0x0044, 0x0044, 0x00, 0x1C) + IO (Decode16, 0x0062, 0x0062, 0x00, 0x02) + IO (Decode16, 0x0065, 0x0065, 0x00, 0x0B) + IO (Decode16, 0x0072, 0x0072, 0x00, 0x0E) + IO (Decode16, 0x0080, 0x0080, 0x00, 0x01) + IO (Decode16, 0x0084, 0x0084, 0x00, 0x03) + IO (Decode16, 0x0088, 0x0088, 0x00, 0x01) + IO (Decode16, 0x008C, 0x008C, 0x00, 0x03) + IO (Decode16, 0x0090, 0x0090, 0x00, 0x10) + IO (Decode16, 0x00A2, 0x00A2, 0x00, 0x1C) + IO (Decode16, 0x00E0, 0x00E0, 0x00, 0x10) + IO (Decode16, 0x08A0, 0x08A0, 0x00, 0x04) + IO (Decode16, 0x0CC0, 0x0CC0, 0x00, 0x10) + IO (Decode16, 0x04D0, 0x04D0, 0x00, 0x02) + }) + Method (_CRS, 0, NotSerialized) + { + Return (CRS) + } + } + + Device (PIC) + { + Name (_HID, EisaId ("PNP0000")) + Name (_CRS, ResourceTemplate () + { + IO (Decode16, 0x0020, 0x0020, 0x01, 0x02) + IO (Decode16, 0x00A0, 0x00A0, 0x01, 0x02) + IRQNoFlags () {2} + }) + } + + Device (DMA0) + { + Name (_HID, EisaId ("PNP0200")) + Name (_CRS, ResourceTemplate () + { + DMA (Compatibility, BusMaster, Transfer8) {4} + IO (Decode16, 0x0000, 0x0000, 0x00, 0x10) + IO (Decode16, 0x0081, 0x0081, 0x00, 0x03) + IO (Decode16, 0x0087, 0x0087, 0x00, 0x01) + IO (Decode16, 0x0089, 0x0089, 0x00, 0x03) + IO (Decode16, 0x008F, 0x008F, 0x00, 0x01) + IO (Decode16, 0x00C0, 0x00C0, 0x00, 0x20) + IO (Decode16, 0x0480, 0x0480, 0x00, 0x10) + }) + } + + Device (TMR) + { + Name (_HID, EisaId ("PNP0100")) + Name (_CRS, ResourceTemplate () + { + IO (Decode16, 0x0040, 0x0040, 0x00, 0x04) + IRQNoFlags () {0} + }) + } + + Device (RTC) + { + Name (_HID, EisaId ("PNP0B00")) + Name (_CRS, ResourceTemplate () + { + IO (Decode16, 0x0070, 0x0070, 0x00, 0x02) + IRQNoFlags () {8} + }) + } + + Device (SPKR) + { + Name (_HID, EisaId ("PNP0800")) + Name (_CRS, ResourceTemplate () + { + IO (Decode16, 0x0061, 0x0061, 0x00, 0x01) + }) + } + + Device (PS2M) + { + Name (_HID, EisaId ("PNP0F13")) + Name (_CID, 0x130FD041) + Method (_STA, 0, NotSerialized) + { + Return (0x0F) + } + + Name (_CRS, ResourceTemplate () + { + IRQNoFlags () {12} + }) + } + + Device (PS2K) + { + Name (_HID, EisaId ("PNP0303")) + Name (_CID, 0x0B03D041) + Method (_STA, 0, NotSerialized) + { + Return (0x0F) + } + + Name (_CRS, ResourceTemplate () + { + IO (Decode16, 0x0060, 0x0060, 0x00, 0x01) + IO (Decode16, 0x0064, 0x0064, 0x00, 0x01) + IRQNoFlags () {1} + }) + } + + Device(FDC0) + { + Name(_HID, EisaId("PNP0700")) + Method(_STA, 0, NotSerialized) + { + Store(FDEN, Local0) + If (LEqual(Local0, 0)) { + Return (0x00) + } Else { + Return (0x0F) + } + } + + Name(_CRS, ResourceTemplate() + { + IO(Decode16, 0x03F2, 0x03F2, 0x00, 0x04) + IO(Decode16, 0x03F7, 0x03F7, 0x00, 0x01) + IRQNoFlags() { 6 } + DMA(Compatibility, NotBusMaster, Transfer8) { 2 } + }) + } + + Device (UAR1) + { + Name (_HID, EisaId ("PNP0501")) + Name (_UID, 0x01) + Method (_STA, 0, NotSerialized) + { + If(LEqual(\_SB.UAR1, 0)) { + Return(0x00) + } Else { + Return(0x0F) + } + } + + Name (_CRS, ResourceTemplate() + { + IO (Decode16, 0x03F8, 0x03F8, 8, 8) + IRQNoFlags () {4} + }) + } + + Device (UAR2) + { + Name (_HID, EisaId ("PNP0501")) + Name (_UID, 0x02) + Method (_STA, 0, NotSerialized) + { + If(LEqual(\_SB.UAR2, 0)) { + Return(0x00) + } Else { + Return(0x0F) + } + } + + Name (_CRS, ResourceTemplate() + { + IO (Decode16, 0x02F8, 0x02F8, 8, 8) + IRQNoFlags () {3} + }) + } + + Device (LTP1) + { + Name (_HID, EisaId ("PNP0400")) + Name (_UID, 0x02) + Method (_STA, 0, NotSerialized) + { + If(LEqual(\_SB.LTP1, 0)) { + Return(0x00) + } Else { + Return(0x0F) + } + } + + Name (_CRS, ResourceTemplate() + { + IO (Decode16, 0x0378, 0x0378, 0x08, 0x08) + IRQNoFlags () {7} + }) + } + + Device(VGID) { + Name(_HID, EisaId ("XEN0000")) + Name(_UID, 0x00) + Name(_CID, "VM_Gen_Counter") + Name(_DDN, "VM_Gen_Counter") + Method(_STA, 0, NotSerialized) + { + If(LEqual(\_SB.VGIA, 0x00000000)) { + Return(0x00) + } Else { + Return(0x0F) + } + } + Name(PKG, Package () + { + 0x00000000, + 0x00000000 + }) + Method(ADDR, 0, NotSerialized) + { + Store(\_SB.VGIA, Index(PKG, 0)) + Return(PKG) + } + } + + /* EHCI Controller 0:1d.0 */ + + Device (EHC1) + { + Name(_ADR, 0x001d0000) + + /* Power Resources for Wake */ + Name(_PRW, Package() { 13, 4 }) + + /* Highest D state in S3 state */ + Name(_S3D, 2) + + /* Highest D state in S4 state */ + Name(_S4D, 2) + + Device (HUB7) + { + Name(_ADR, 0x00000000) + + Device(PRT1) { Name(_ADR, 1) } /* USB Port 0 */ + Device(PRT2) { Name(_ADR, 2) } /* USB Port 1 */ + Device(PRT3) { Name(_ADR, 3) } /* USB Port 2 */ + Device(PRT4) { Name(_ADR, 4) } /* USB Port 3 */ + } + } + } + } + } + /* _S3 and _S4 are in separate SSDTs */ + Name (\_S5, Package (0x04) { + 0x00, /* PM1a_CNT.SLP_TYP */ + 0x00, /* PM1b_CNT.SLP_TYP */ + 0x00, /* reserved */ + 0x00 /* reserved */ + }) + Name(PICD, 0) + Method(_PIC, 1) { + Store(Arg0, PICD) + } +} diff --git a/tools/libacpi/libacpi.h b/tools/libacpi/libacpi.h index deda39e5db..b4d3116ca5 100644 --- a/tools/libacpi/libacpi.h +++ b/tools/libacpi/libacpi.h @@ -27,6 +27,7 @@ #define ACPI_HAS_8042 (1<<13) #define ACPI_HAS_CMOS_RTC (1<<14) #define ACPI_HAS_SSDT_LAPTOP_SLATE (1<<15) +#define ACPI_HAS_MCFG (1<<16) struct xen_vmemrange; struct acpi_numa { @@ -89,6 +90,9 @@ struct acpi_config { uint32_t ioapic_base_address; uint16_t pci_isa_irq_mask; uint8_t ioapic_id; + + uint64_t mmconfig_addr; + uint32_t mmconfig_len; }; int acpi_build_tables(struct acpi_ctxt *ctxt, struct acpi_config *config); diff --git a/tools/libs/light/libxl_dm.c b/tools/libs/light/libxl_dm.c index fc264a3a13..792dbc4383 100644 --- a/tools/libs/light/libxl_dm.c +++ b/tools/libs/light/libxl_dm.c @@ -1809,13 +1809,21 @@ static int libxl__build_device_model_args_new(libxl__gc *gc, flexarray_append(dm_args, b_info->extra_pv[i]); break; case LIBXL_DOMAIN_TYPE_HVM: - if (!libxl_defbool_val(b_info->u.hvm.xen_platform_pci)) { - /* Switching here to the machine "pc" which does not add - * the xen-platform device instead of the default "xenfv" machine. - */ - machinearg = libxl__strdup(gc, "pc,accel=xen,suppress-vmdesc=on"); + if (b_info->device_model_machine == LIBXL_DEVICE_MODEL_MACHINE_Q35) { + if (!libxl_defbool_val(b_info->u.hvm.xen_platform_pci)) { + machinearg = libxl__sprintf(gc, "q35,accel=xen"); + } else { + machinearg = libxl__sprintf(gc, "q35,accel=xen,xen-platform-dev=on"); + } } else { - machinearg = libxl__strdup(gc, "xenfv,suppress-vmdesc=on"); + if (!libxl_defbool_val(b_info->u.hvm.xen_platform_pci)) { + /* Switching here to the machine "pc" which does not add + * the xen-platform device instead of the default "xenfv" machine. + */ + machinearg = libxl__strdup(gc, "pc,accel=xen,suppress-vmdesc=on"); + } else { + machinearg = libxl__strdup(gc, "xenfv,suppress-vmdesc=on"); + } } if (b_info->u.hvm.mmio_hole_memkb) { uint64_t max_ram_below_4g = (1ULL << 32) - @@ -1929,29 +1937,51 @@ static int libxl__build_device_model_args_new(libxl__gc *gc, if (disks[i].is_cdrom) { const char *drive_id; - if (disk > 4) { + if (disk > 4 && b_info->device_model_machine == LIBXL_DEVICE_MODEL_MACHINE_I440) { LOGD(WARN, guest_domid, "Emulated CDROM can be only one of the first 4 disks.\n" "Disk %s will be available via PV drivers but not as an " "emulated disk.", disks[i].vdev); continue; + } else if (disk > 6 && + b_info->device_model_machine == LIBXL_DEVICE_MODEL_MACHINE_Q35) { + LOGD(WARN, guest_domid, "Emulated CDROM can be only one of the first 6 disks.\n" + "Disk %s will be available via PV drivers but not as an " + "emulated disk.", + disks[i].vdev); + continue; } + if (b_info->device_model_machine == LIBXL_DEVICE_MODEL_MACHINE_I440) { + drive_id = GCSPRINTF("ide-%i", dev_number); + drive = GCSPRINTF("if=none,readonly=on,id=%s", drive_id); - drive_id = GCSPRINTF("ide-%i", dev_number); - drive = GCSPRINTF("if=none,readonly=on,id=%s", drive_id); - - if (target_path) - drive = libxl__sprintf(gc, "%s,file=%s,format=%s", - drive, target_path, format); + if (target_path) + drive = libxl__sprintf(gc, "%s,file=%s,format=%s", + drive, target_path, format); - flexarray_vappend(dm_args, + flexarray_vappend(dm_args, "-drive", drive, "-device", GCSPRINTF("ide-cd,id=%s,drive=%s,bus=ide.%u,unit=%u", drive_id, drive_id, disk / 2, disk % 2), NULL); - continue; + continue; + } else { + drive_id = GCSPRINTF("sata-0-%i", dev_number); + drive = GCSPRINTF("if=none,readonly=on,id=%s", drive_id); + if (target_path) + drive = libxl__sprintf(gc, "%s,file=%s,format=%s", + drive, target_path, format); + + flexarray_vappend(dm_args, + "-drive", drive, + "-device", + GCSPRINTF("ide-cd,id=%s,drive=%s,bus=ide.0", + drive_id, drive_id), + NULL); + continue; + } } else { /* * Explicit sd disks are passed through as is. diff --git a/tools/libs/light/libxl_types.idl b/tools/libs/light/libxl_types.idl index c10292e0d7..b1aadae877 100644 --- a/tools/libs/light/libxl_types.idl +++ b/tools/libs/light/libxl_types.idl @@ -108,6 +108,13 @@ libxl_device_model_version = Enumeration("device_model_version", [ (2, "QEMU_XEN"), # Upstream based qemu-xen device model ]) +libxl_device_model_machine = Enumeration("device_model_machine", [ + (0, "UNKNOWN"), + (1, "I440"), + (2, "Q35"), + ]) + + libxl_console_type = Enumeration("console_type", [ (0, "UNKNOWN"), (1, "SERIAL"), @@ -575,6 +582,7 @@ libxl_domain_build_info = Struct("domain_build_info",[ ("device_model_ssidref", uint32), ("device_model_ssid_label", string), ("device_model_user", string), + ("device_model_machine", libxl_device_model_machine), # extra parameters pass directly to qemu, NULL terminated ("extra", libxl_string_list), diff --git a/tools/xl/xl_parse.c b/tools/xl/xl_parse.c index 1f6f47daf4..e6fb7a409a 100644 --- a/tools/xl/xl_parse.c +++ b/tools/xl/xl_parse.c @@ -2689,6 +2689,20 @@ skip_usbdev: if (!xlu_cfg_get_long (config, "stubdomain_memory", &l, 0)) b_info->stubdomain_memkb = l * 1024; + if (!xlu_cfg_get_string (config, "device_model_machine", &buf, 0)) { + if (!strcmp(buf, "i440")) { + b_info->device_model_machine = LIBXL_DEVICE_MODEL_MACHINE_I440; + } else if (!strcmp(buf, "q35")) { + b_info->device_model_machine = LIBXL_DEVICE_MODEL_MACHINE_Q35; + } else { + fprintf(stderr, + "Unknown device_model_machine \"%s\" specified\n", buf); + exit(1); + } + } else { + b_info->device_model_machine = LIBXL_DEVICE_MODEL_MACHINE_UNKNOWN; + } + #define parse_extra_args(type) \ e = xlu_cfg_get_list_as_string_list(config, "device_model_args"#type, \ &b_info->extra##type, 0); \ -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 19 04:13:25 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 19 Jun 2023 04:13:25 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550784.859970 (Exim 4.92) (envelope-from ) id 1qB6GR-0004cF-E4; Mon, 19 Jun 2023 04:13:15 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550784.859970; Mon, 19 Jun 2023 04:13:15 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qB6GR-0004c8-B2; Mon, 19 Jun 2023 04:13:15 +0000 Received: by outflank-mailman (input) for mailman id 550784; Sun, 18 Jun 2023 22:23:10 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qB0ne-0003MH-PO for xen-devel@lists.xenproject.org; Sun, 18 Jun 2023 22:23:10 +0000 Received: from mail-yb1-xb35.google.com (mail-yb1-xb35.google.com [2607:f8b0:4864:20::b35]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id b1f782c1-0e26-11ee-8611-37d641c3527e; Mon, 19 Jun 2023 00:23:05 +0200 (CEST) Received: by mail-yb1-xb35.google.com with SMTP id 3f1490d57ef6-bd5f20508f2so3051976276.3 for ; Sun, 18 Jun 2023 15:23:05 -0700 (PDT) Received: from joel-Precision-7920-Tower.. ([24.53.71.1]) by smtp.gmail.com with ESMTPSA id t2-20020a259ac2000000b00bcc0f2e4f05sm3389532ybo.59.2023.06.18.15.23.03 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 18 Jun 2023 15:23:03 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: b1f782c1-0e26-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687126984; x=1689718984; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=WA4/ztD/0nKcnp5J0Yr7EQHeA3bsKgodo79kQY3qqUg=; b=OZwWao/ihwENyAIawJfaIQ1mrrz3l55YS94Xpa4drALGGy2vlTqBUyA5KdybhMQ/OO I+FOiRI0BxqUPBILyKiudlCzscUMj9//8Z09pxSlVzUc8iEEflrAgnnJG7/AZJI2RoZ+ uUnVV43CZTOs2fVIhZTxAPlsm4BO7O8rAxFgrnMtJzJ4AzULAWE2Acgj9RmzA+b/mGcv UojUk32RY6SpKYKiKQUnMdLmZI1IixARQVzBMfUNQAiSv36NjTNMcY4cyuUbiz2+RY3r TTK3tpEfSNermfCa7ZR6d7ZXqZIahc8psz8dOwNECbGUeZG/95912ZYKg5MJWrBf6/6w fjCg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687126984; x=1689718984; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=WA4/ztD/0nKcnp5J0Yr7EQHeA3bsKgodo79kQY3qqUg=; b=XaGNjZP9bGDHM9QYbw8bLtbmNV070ITJpn0p4qizznWWFSo8JiTIwALEHQF1sEm+F1 bQqWiMDVm9PqVTEqNDxYfhSFR7XV9u3TT/HEA0Jwf4lSARBbvN1ThCv7XEeiJzHG68rX lgLi1xElwJFsaBoKSukBkI5D7A455XXjWgDcqPrg1acAfmZirGvKt+yy0/y3LaEjPIP7 luY3/KiLGVLwjzkYZ2F1yV5ulMzijNqwMdNtJ6UoT20YwifUAaBLSmq+YTpKUVy9LCQ/ dhCicgPQskMMKp9rzBAbf9q7FsbardtsAtffYZdjBmVhSd7dVvscS/+0u2cc++0yKlwk KYTw== X-Gm-Message-State: AC+VfDxgwjVhCDEWlyT8Rq5/bpPiJRAxgoH2lXXpoI6Be4saieJvd5om 1KG4qFGrtkn6gVa5irDkaDHmhZ5uo/5hkw== X-Google-Smtp-Source: ACHHUZ4aNni+pgtl68ym0H1nEYvq7byMDrr+eqNl8YE9IdlP871NrOwwgYBB2F9NGT28rioFkzDmgQ== X-Received: by 2002:a25:b195:0:b0:b8e:cb88:1b69 with SMTP id h21-20020a25b195000000b00b8ecb881b69mr5267643ybj.34.1687126984249; Sun, 18 Jun 2023 15:23:04 -0700 (PDT) From: Joel Upham To: xen-devel@lists.xenproject.org Cc: Joel Upham , Wei Liu , Anthony PERARD , Jan Beulich , Andrew Cooper , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Juergen Gross Subject: [PATCH v1 0/1] Q35 Support Date: Sun, 18 Jun 2023 18:22:01 -0400 Message-Id: X-Mailer: git-send-email 2.34.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Q35 support using Qemu's device emulation. I based the patches from 2017 found on the mailing list here: https://lists.xenproject.org/archives/html/xen-devel/2018-03/msg01176.html I have been using a version of these patches on Xen 4.16 with Qemu version 4.1 for over 6 months. The guest VMs are very stable, and PCIe PT is working as was designed (all of the PCIe devices are on the root PCIe device). I have successfully passed through GPUs, NICs, etc. I was asked by those in the community to attempt to once again upstream the patches. I have them working with Seabios and OVMF (patches are needed to OVMF which I will be sending to the mailing list). I will be sending my Qemu patches to their mailing list in hopes of getting everything upstreamed. The Qemu patches allow for the xenvbd to properly unplug the AHCI SATA device, and all xen pv windows drivers work as intended. I used the original author of the patches to get a majority of this to work: Alexey Gerasimenko. I fixed the patches to be in line with the upstream Qemu and Xen versions. Any original issues may still exist; however, I am sure in time they can be improved. If the code doesn't exist then they can't be actively looked at by the community. I am not an expert on the Q35 chipset or PCIe technology. This is my first patch to this mailing list. Recap of changes to Qemu, only here for reference: pc/xen: Xen Q35 support: provide IRQ handling for PCI devices pc/q35: Apply PCI bus BSEL property for Xen PCI device hotplug acpi/ich9: Multiple fixes for S3 support acpi/pcihp: Allow for machines to hotplug when using Xen isa/lpc_ich9: Write lpc configuration for xen IRQs q35/acpi/xen: Provide ACPI PCI hotplug interface for Xen on Q35 q35/xen: Add Xen platform device support for Q35 q35: Fix incorrect values for PCIEXBAR masks xen/pt: XenHostPCIDevice: provide functions for PCI Capabilities and PCIe Extended Capabilities enumeration xen/pt: avoid reading PCIe device type and cap version multiple times xen/pt: determine the legacy/PCIe mode for a passed through device xen/pt: Xen PCIe passthrough support for Q35: bypass PCIe topology check xen/pt: add support for PCIe Extended Capabilities and larger config space xen/pt: handle PCIe Extended Capabilities Next register xen/pt: allow to hide PCIe Extended Capabilities xen/pt: add Vendor-specific PCIe Extended Capability descriptor and sizing xen/pt: add fixed-size PCIe Extended Capabilities descriptors xen/pt: add AER PCIe Extended Capability descriptor and sizing xen/pt: add descriptors and size calculation for RCLD/ACS/PMUX/DPA/MCAST/TPH/DPC PCIe Extended Capabilities xen/pt: add Resizable BAR PCIe Extended Capability descriptor and sizing xen/pt: add VC/VC9/MFVC PCIe Extended Capabilities descriptors and sizing Changes that would be going to upstream Qemu: hw/acpi/ich9.c | 22 +- hw/acpi/pcihp.c | 6 +- hw/core/machine.c | 19 + hw/i386/pc_piix.c | 3 +- hw/i386/pc_q35.c | 39 +- hw/i386/xen/xen-hvm.c | 7 +- hw/i386/xen/xen_platform.c | 19 +- hw/ide/ahci.c | 2 +- hw/isa/lpc_ich9.c | 53 +- hw/isa/piix3.c | 2 +- hw/pci-host/q35.c | 28 +- hw/pci/pci.c | 17 + hw/xen/xen-host-pci-device.c | 106 +++- hw/xen/xen-host-pci-device.h | 6 +- hw/xen/xen_pt.c | 49 +- hw/xen/xen_pt.h | 19 +- hw/xen/xen_pt_config_init.c | 1103 ++++++++++++++++++++++++++++++--- include/hw/acpi/ich9.h | 1 + include/hw/acpi/pcihp.h | 2 + include/hw/boards.h | 1 + include/hw/i386/pc.h | 3 + include/hw/pci-host/q35.h | 4 +- include/hw/pci/pci.h | 3 + include/hw/southbridge/ich9.h | 1 + include/hw/xen/xen.h | 4 +- qemu-options.hx | 1 + softmmu/datadir.c | 1 - softmmu/qdev-monitor.c | 3 +- stubs/xen-hw-stub.c | 4 +- 29 files changed, 1396 insertions(+), 132 deletions(-) *** These patches are not found in this series, if they are supposed to be I will send them here as well. *** Recap of changes to Xen: libacpi: new DSDT ACPI table for Q35 Makefile: build and use new DSDT table for Q35 hvmloader: add function to query an emulated machine type (i440/Q35) hvmloader: add ACPI enabling for Q35 hvmloader: add Q35 DSDT table loading hvmloader: add basic Q35 support hvmloader: allocate MMCONFIG area in the MMIO hole + minor code refactoring hvmloader: seabios dsdt set to load correct config hvmloader: ovmf dsdt set to load correct config libxl: Q35 support (new option device_model_machine) libxl: Xen Platform device support for Q35 libacpi: build ACPI MCFG table if requested hvmloader: use libacpi to build MCFG table docs: provide description for device_model_machine option Joel Upham (1): Q35 support docs/man/xl.cfg.5.pod.in | 27 ++ tools/firmware/hvmloader/Makefile | 2 +- tools/firmware/hvmloader/config.h | 6 + tools/firmware/hvmloader/hvmloader.c | 13 +- tools/firmware/hvmloader/ovmf.c | 7 +- tools/firmware/hvmloader/pci.c | 285 +++++++++---- tools/firmware/hvmloader/pci_regs.h | 6 + tools/firmware/hvmloader/seabios.c | 5 + tools/firmware/hvmloader/util.c | 130 +++++- tools/firmware/hvmloader/util.h | 10 + tools/libacpi/Makefile | 10 +- tools/libacpi/acpi2_0.h | 21 + tools/libacpi/build.c | 43 ++ tools/libacpi/dsdt_q35.asl | 578 +++++++++++++++++++++++++++ tools/libacpi/libacpi.h | 4 + tools/libs/light/libxl_dm.c | 60 ++- tools/libs/light/libxl_types.idl | 8 + tools/xl/xl_parse.c | 14 + 18 files changed, 1120 insertions(+), 109 deletions(-) create mode 100644 tools/libacpi/dsdt_q35.asl -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 19 07:29:35 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 19 Jun 2023 07:29:35 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550820.859990 (Exim 4.92) (envelope-from ) id 1qB9KC-0007tT-RU; Mon, 19 Jun 2023 07:29:20 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550820.859990; Mon, 19 Jun 2023 07:29:20 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qB9KC-0007tM-NM; Mon, 19 Jun 2023 07:29:20 +0000 Received: by outflank-mailman (input) for mailman id 550820; Mon, 19 Jun 2023 07:29:19 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qB9KB-0007tD-Hj for xen-devel@lists.xenproject.org; Mon, 19 Jun 2023 07:29:19 +0000 Received: from EUR05-DB8-obe.outbound.protection.outlook.com (mail-db8eur05on20628.outbound.protection.outlook.com [2a01:111:f400:7e1a::628]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id fdbf758a-0e72-11ee-8611-37d641c3527e; Mon, 19 Jun 2023 09:29:14 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by DB9PR04MB8493.eurprd04.prod.outlook.com (2603:10a6:10:2c5::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.35; Mon, 19 Jun 2023 07:29:08 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6500.031; Mon, 19 Jun 2023 07:29:10 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: fdbf758a-0e72-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Xpgv2q1CFBp0b78fts96O2l5rJGWsm4v7yfXFNk2SI2Lw/bvWg8vJmqYBkDi2FUqxjwZMNSEJ7uHHwnZdJthOU8QlmqU8wLIQ/x1nd1vwAOXQbbDrgm8/HcVyN7/lEEmYr/se5+h7r/xDc5WM1d5cv2nDA+goNansjWtdiqr1uI2WElet8YkFuJZvx4eOlg4rZze30+86sSQfLKPW60S04+t29UMoCtYlzD0RJN4y0oS8agucI3uBCLtEqz0NAXPLAu/LM/AS9n/rJvrpCMReGPxTfTQTJQxQ6c2V7gvdKLEVWa/xtmR7ocebgPqE6X9dHYCoF7l1LyTzKBbMrdEow== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=Zko5WeBRYfYVW9OID78TqH9s3S21Xd+vTd8l1GGQfBE=; b=KDoj3s1nsbXPi/uEYeR3omCn2Sav2qNrAEYrc4SNEUwTB9n4VbNWXXKQYTlAEtrnlrCundw1svg83TLU7H7XYaOFplcVLdQyOUP11QCpWRWB11WooCbBp3UKLRL6Rc8Ynw+VbrXIs/HPxmTi5FB/bVAcAJzvRoyozzVwUIqTKetOXZTXksJp9SrwhmPasc+jZk9eztreDx/cQtx31UF4SkGtY/UpwvlHbNjh+u887t6SihR+JH6QgH4OF/uBfqVJ7qNHr/wyQtN2wAQzs1l9L4c78Fu1//W1yL59eRk3Yj026Ehh/HQ1pFh4PGJKL+xRSND4Y9HX6Ojh3oVmUotL5A== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Zko5WeBRYfYVW9OID78TqH9s3S21Xd+vTd8l1GGQfBE=; b=EYi9hxf2bAxIRIQZmuWIyZBaL8I14s7T56h6hOqmwUCH1a+Zm08oyUnZOGCnxGNEq0oGT98ek+egtF80spN4Ul48DSQ28LWoOlsygbM2x4eKkXVOIPQjyXDdbAPAufim7CIMus8Z2swEo7CG3pl7WyzO+StMaV47XnH3A8dDQE78iD8kXEojqj5iQUfGzhPFGTv2jqJaCMc/vIFGqhblFdWPhpuAKVWqY5pChqvOJLkg5R21kdXMhOHTBYiSm2JWFuo2bJWvs+eiyHuu+ITsKWm15ICVvnTEm6T9hiiWRAWeS1WmU790QvD/TbzKlNQr0BXSehj/bbZ7XBwdJJ/Yfw== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <99a95159-57de-ba8b-ea05-71e85dc01bd5@suse.com> Date: Mon, 19 Jun 2023 09:29:12 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v2 2/2] x86/vPIT: account for "counter stopped" time Content-Language: en-US To: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= Cc: "xen-devel@lists.xenproject.org" , Andrew Cooper , Wei Liu References: <7b69e322-bc37-a1bd-444d-b2cbe1d76b39@suse.com> From: Jan Beulich In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: FR0P281CA0090.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:1e::15) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|DB9PR04MB8493:EE_ X-MS-Office365-Filtering-Correlation-Id: a6441abf-420d-4b66-ab8e-08db7096dfc9 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 7x1Uc46DAczve5ioSt1ECocT5D078p5jEANTWvrcxfz36qm1zdUbMAVry7Z912hMyszjsBMjGebW/89bF0i7voEPDn7Dth1z4htKHB2UJdeeD9NqZNIdzA2y4UmxDV6L/Qx8lS9hZu1gM8FxPkna3NtnsWde5VCy3ToNtR4UycShcP2/zM7GE9jVO7CJXYWWwtN5Z/FNGcr0A9+5eb4goMeyyhMmuDfRssU5WPDKYR2L0EcN8MjML+LUeKBz/VX7d8pAoc4yBaNvH5E1I2GEzVdJkF5GRDDhIv5gXevf/xEwFeCAC3KFexl/7ymdZ8790qfQ5Sq2/PAoRzkTab9q7iit8D+rmEDUOTo40s6a7WIy/OOt8O4rPxzbgH2LViauYW9493yIrQFun2N5WWEcQCc6DaPr8ncJ1NsvAk+ohcS1eKL56PauyKXGrxIBKjJyo53j3XljcmB74uOne7YZAtMsxBUDh2xZZ08NfUV8rS3ouQXZdqqbfvvwCYcA0LIWYNMHYUuW6HbZWU59dgXLCoSdBnozZ5ZNjC55aeMNmuEk3KLywD66/oJDi70IXPRlq4IZV91EFqw/qSYqtdwXrJPqANWuK8o39bgx9OmUA8nJYVBC+2K6fKP4HI0x6de1aH1f2GmIpZP0QI1/dtTUwA== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(346002)(396003)(366004)(136003)(376002)(39860400002)(451199021)(4326008)(54906003)(478600001)(6506007)(53546011)(26005)(6512007)(6486002)(186003)(966005)(36756003)(2906002)(8676002)(8936002)(41300700001)(66946007)(6916009)(66556008)(66476007)(316002)(5660300002)(31696002)(83380400001)(38100700002)(86362001)(31686004)(2616005)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?dnJzdFNpbS9IL1JvQzhPdFlVMmhTRmJpc1ROQ1l5ckNVYi85R2FIUWd1VDhJ?= =?utf-8?B?MmIwTlNWZnFPckNKQVpFSXZTTno3SHZSVlIyNnBNVDZCdlZJMEtFeUhOUGN2?= =?utf-8?B?N0c0aVBvWW13TENHMXNrSGdLT3M5OGYwYWdpL0dPRkU2WGZ4M1JvWWEvWEFB?= =?utf-8?B?ODJidmZtVC83Z0ZkRWNvZEorL3JVR1B1YXhteStrQjN5bE9TNnYwNy85SmJ0?= =?utf-8?B?SFp4cE42bW9nRm9ISlhrM0FVait3OXBkaUJTYk0yYi9SL0E5a1JlM0JlVTFR?= =?utf-8?B?ZWk2eDMxMmEwUXhXQjJScTdUMGd1RVh3M3pHK1NvUjVBa3RUUytRdnVxU1VM?= =?utf-8?B?cE5lL09JVXJVR1BjSitzRUJnTmFaWVBIcHpxWnVMaGF6KzNORWlOaEJqQm56?= =?utf-8?B?MkFpaFpnYkk4RThpbG4zUitJMkFESnR0MkxIVndGMytVZEl2UDI4ckY1SUlI?= =?utf-8?B?bWUwUHB4UWJneFdwZzRtVmNFOVNVNFYyd05CZ1lTUTIzRTc5ZExvcThTU2hB?= =?utf-8?B?YW96WG4yV3NuTDMrMDVKVWFFOHA0VXJvTmlpVlZKRmkwN05TOXhHbEw3K0pn?= =?utf-8?B?clNMR3NjRlU1K0xmeWZJOUJIbkY5VVUzK1pxcUJzYzdGU1BsNjEraWoxbmNx?= =?utf-8?B?end0cmoyV3lRRlhLaTBNMDFSSWtoai9RWlBqRUZhMXlpZlZYdGhycndCM3pZ?= =?utf-8?B?elVnMWJIbW9lK0d0MHNwSTlyU3IvMEJmY2NlcWdTcHFoZWlJV1U5bGoveVdt?= =?utf-8?B?azRWOXozMUE3YnRIeFU2b0pHeUoxVXdzLzc4WlFEc29DRXBhekFsNTF4U2ZM?= =?utf-8?B?RW9VUU04NTh4M0JwcXJNYUk0WVBzb2pXMldwdk5UOTRsTFRUdm1BcXlndGgw?= =?utf-8?B?MDU3Z2RiV3Q5Z0pzVzhxS2dhVkdwdTB4WG5ucmVhR20rVVZuT3c4Zk1waWVt?= =?utf-8?B?ZW5PUTZYOWU1WUJCWmQwb3kxNVhMWUpEeStVSmIwRjg3WHhTbnZHbkM1MWRG?= =?utf-8?B?cEt0dmVvc1NkWFVCUnUwbDNyS3BLcnlINE1oT1VQb2V6RUlNdUpGZGNPZnpJ?= =?utf-8?B?LzFGa0pKa1VtWFVuZm8ySGkzQVdFVXIzWlR0bkFKQTkvOUIyRlZuU01KRUkw?= =?utf-8?B?VzhGaHBzSW9nYW1ldzZQdzRMeHNyVmptL3VaRGU2emNySGVjdlpKRG9BYnVQ?= =?utf-8?B?a0F1Qm9haUVjd1J3WW1JamltcncyTm5BTlpDNVhhMDV0SC8rUFBwUW9OaWFW?= =?utf-8?B?UXFYcnJmdVpNWU45STBPZUg4L0w4L0hoSEwwMlUraG1Td0NNc3phUnBGUlpo?= =?utf-8?B?LzRhdE5XNzBOTlRKbjJqaU5CRkNGOWF2ZmJMUWRUVGdOUW9kb0w1WktRSmxq?= =?utf-8?B?SmM0Z1VXSVUrT3QrRFZ2czNmMTU5WWN1cTVIV0hidmVvNHppUnJrV1dFdERK?= =?utf-8?B?ZWFNekZsWTBqWWxUdllXV2ZMZHFyOHJ0QWNQQjJnbWxoQVh0REhHeFRvelBa?= =?utf-8?B?YXZnMWpML21tbDBiUTFKN3RwSytaVmVuem5PT2FRc1V2dnFYUm56OWNSWmpZ?= =?utf-8?B?ZFM5TUg2YzBuL3g3Qit1L2lKQ1NiQlZwQkoyZ09YUHRrMnh4aXlyK3pUTUht?= =?utf-8?B?ODRqMHNXQVlzV2R2cDNaMm0wSjRNRitYZ0pabFVNc1hyNmpLMjlkOUNaVC9H?= =?utf-8?B?TFpHWDJNQ1Y4Q3hsNW1zODB5KzlBd3R2T1cxUmJUNEVweGtHRCsrUFBMQTRk?= =?utf-8?B?bHd1cDhjT29QVTgzSjB0YXNCeHo0SzBTNC9XaTNoRVJmM2U4SnlVV25iQ3U2?= =?utf-8?B?Q2RRQlNzTVNuMUNQK0d0enVsVlp2VHlVZGlqM1JNWTJxUmlvRXloMHJ5TzJH?= =?utf-8?B?T3hKTzkvb3cxL0YzT0czdytCWC80SjN6MTZqa05jRnpoV2R0MWdnUWgrYjFp?= =?utf-8?B?aE44Q0s2d3BUbFhsQ0RHQVdmeFhOd2MzV2tDcW94c095VjdiazVhTXdjMHdt?= =?utf-8?B?ZmcwZi9kQU9qNnF0V2thZnAzVHlmWC9MZThCUUZBZDFJd1N4RytOaHZvdUhm?= =?utf-8?B?cG81MjB1Tk1jY3ptVVorNzhjWXBkVGpOZ0RXVzVaN2FBQkRJZnBuWVZ1eU1Z?= =?utf-8?Q?ZLsqwyoBI9o1eYW+O1FIwXuMh?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: a6441abf-420d-4b66-ab8e-08db7096dfc9 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Jun 2023 07:29:10.6025 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: kLoiDxOY/38tvOh6V6/X/lCXhz83A+IlymUPGj2CIhFOLPe/aZSBPRkBJ4Bt2GU3suCsPTkdp1AmMQWNKilCuw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR04MB8493 On 16.06.2023 16:18, Roger Pau Monné wrote: > On Thu, Jun 15, 2023 at 04:56:22PM +0200, Jan Beulich wrote: >> For an approach like that used in "x86: detect PIT aliasing on ports >> other than 0x4[0-3]" [1] to work, channel 2 may not (appear to) continue >> counting when "gate" is low. Record the time when "gate" goes low, and >> adjust pit_get_{count,out}() accordingly. Additionally for most of the >> modes a rising edge of "gate" doesn't mean just "resume counting", but >> "initiate counting", i.e. specifically the reloading of the counter with >> its init value. >> >> No special handling for state save/load: See the comment near the end of >> pit_load(). >> >> [1] https://lists.xen.org/archives/html/xen-devel/2023-05/msg00898.html >> >> Signed-off-by: Jan Beulich > > Acked-by: Roger Pau Monné Thanks. > Albeit I have one request below I would like you to considerate. > >> --- >> TBD: "gate" can only ever be low for chan2 (with "x86/vPIT: check/bound >> values loaded from state save record" [2] in place), so in >> principle we could get away without a new pair of arrays, but just >> two individual fields. At the expense of more special casing in >> code. > > One bit I'm missing is how is the gate for timers 0 and 1 is accessed. > Is such line simply not accessible? On old 8086 systems I believe there were actual signals, ... > My i8254 spec doesn't mention this, and the (kind of random) copy of > the ICH7 Spec I'm looking at also doesn't mention enable bits for > timers 0 and 1 being available. I assume those are always enabled? ... but from all I could collect the gates are always enabled in even just half-way modern systems. >> --- a/xen/arch/x86/emul-i8254.c >> +++ b/xen/arch/x86/emul-i8254.c >> @@ -65,7 +65,10 @@ static int pit_get_count(PITState *pit, >> >> ASSERT(spin_is_locked(&pit->lock)); >> >> - d = muldiv64(get_guest_time(v) - pit->count_load_time[channel], >> + d = pit->hw.channels[channel].gate || (c->mode & 3) == 1 >> + ? get_guest_time(v) >> + : pit->count_stop_time[channel]; >> + d = muldiv64(d - pit->count_load_time[channel] - pit->stopped_time[channel], >> PIT_FREQ, SYSTEM_TIME_HZ); >> >> switch ( c->mode ) >>[...] >> @@ -148,7 +155,10 @@ static int pit_get_out(PITState *pit, in >> >> ASSERT(spin_is_locked(&pit->lock)); >> >> - d = muldiv64(get_guest_time(v) - pit->count_load_time[channel], >> + d = pit->hw.channels[channel].gate || (s->mode & 3) == 1 >> + ? get_guest_time(v) >> + : pit->count_stop_time[channel]; >> + d = muldiv64(d - pit->count_load_time[channel] - pit->stopped_time[channel], >> PIT_FREQ, SYSTEM_TIME_HZ); > > The above logic is repeated here and in pit_get_count(), maybe could > be abstracted into a common helper to keep both in sync? (get_counter()) I was pondering whether to do so, but decided not to because the earlier code could already have benefited the same, just to a lesser extent. But since you ask for it - sure, can do. Unless told otherwise I'll assume your ack hold with that transformation. (While it'll end up inconsistent with other code, I'm pretty determined to make the necessary "channel" parameter of the helper "unsigned int". That's an aspect I was trying to "escape" by not introducing a helper ...) Jan From xen-devel-bounces@lists.xenproject.org Mon Jun 19 07:54:49 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 19 Jun 2023 07:54:49 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550825.860000 (Exim 4.92) (envelope-from ) id 1qB9il-0002sT-O4; Mon, 19 Jun 2023 07:54:43 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550825.860000; Mon, 19 Jun 2023 07:54:43 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qB9il-0002sM-L1; Mon, 19 Jun 2023 07:54:43 +0000 Received: by outflank-mailman (input) for mailman id 550825; Mon, 19 Jun 2023 07:54:42 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qB9ij-0002sE-Us for xen-devel@lists.xenproject.org; Mon, 19 Jun 2023 07:54:41 +0000 Received: from EUR03-DBA-obe.outbound.protection.outlook.com (mail-dbaeur03on20621.outbound.protection.outlook.com [2a01:111:f400:fe1a::621]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 897d67f7-0e76-11ee-8611-37d641c3527e; Mon, 19 Jun 2023 09:54:39 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by PA4PR04MB8031.eurprd04.prod.outlook.com (2603:10a6:102:bb::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.35; Mon, 19 Jun 2023 07:54:33 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6500.031; Mon, 19 Jun 2023 07:54:33 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 897d67f7-0e76-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=PaQQKWoL1B/PDxzGOHXgYH/F54Fu1EJ04pQpkJBlBKuY2jrRIarlw1jOKpZ+VqYj27tyYSBE29v9ddnLP8IQNmP9YL1trLCBcQzqiST5uBjrn9SetTS7Ae3cOWKPhL5JZcF+9U5oRbE55PYKOnO99+XGDEuUm6meSB6v+jViM83YK3a2fvUqQjmPbnIev36Mb9ct3tiruPUTFnVHbBcXsWsFxL0aS+elHqj8KKYyqL5SOzkyLaMcf5takl5MohRKTQZtO3hwXeytzWH7WfdNvh+UXPN4HZiwUWDOS3hIxcuIvg6/Q2CbL16i9Y4LPunb3PyVgjeUYeKg/+ElFuK9FA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=Nv6eeySf1eJE47qwUYLN0zpNzhCE+Fc+xp/3uSNMKnQ=; b=GOejnxFGYa43IGT2ISKHxif1lnD+397Dj//L5TIqtGE9P+Uo7wPaDrI23LVMTXDZxTtYzplWL/Gz7jJgI0AD6swgnRYVuSzodRErzyPF3Z0XL+Q3Y7s/y/7r9F5VNRCo6tmXT8MNXrm+PlMbeL53hLC1l2UcfWYmWq92xddm3kE8xQv/3ecAYsbVdke3+2gT0U3fQn4RDDpLIr6MLOJdAHTTXIeMBRCsQm2usJim3q1tkcOaV0sduOUT+FDH3uDCTvxTmWB1AzqB1f+Tv9FvwhWG51MAlPCpSXBbB010O2TqeoMh0jzPMQeq7J8DML7cmBjSoPc9Z4rlDAhcPRvNaA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Nv6eeySf1eJE47qwUYLN0zpNzhCE+Fc+xp/3uSNMKnQ=; b=Xy+Kb2XSJclYuOsLvGcUhU6B+kwN7CGZuj/R3z+geP+m+qx+cZaDqqyTqzdvtNiL/RmOkWmJmRu1W5fNdpoGKSC9BG20hk3CtfjwFfmZccnX2r0BlhsNtGCoQrawRRNFh469ChjSlTEgctJpWRudQ1rFNvv6OFMCKoNgddIXxJEeLo/vneq1j+H/HPEE4XE1gCFE1hupJdK+Wo3KuFnG6otH1JM+qOOOEMgf4Uae+O36INoB47S2ILTeAKUcpCajYeAdHmQ8iY1Jb88FDWf3MB2ODyYa+EnaAkRPRsYJC4/xZxBqEK4zVp4L6j7JN9Z9PO9MMDxMm9jlNaa7/hTeQg== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <90eec636-7ae5-8e1b-1561-0de62e0bc799@suse.com> Date: Mon, 19 Jun 2023 09:54:34 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [XEN PATCH] docs/misra: document the C dialect and translation toolchain assumptions. Content-Language: en-US To: Roberto Bagnara Cc: xen-devel@lists.xenproject.org, consulting@bugseng.com, Andrew Cooper , George Dunlap , Julien Grall , Wei Liu , Stefano Stabellini References: <3499c107-ea0d-3a74-4278-86879a9d80e7@bugseng.com> From: Jan Beulich In-Reply-To: <3499c107-ea0d-3a74-4278-86879a9d80e7@bugseng.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR3P281CA0114.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:a3::6) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|PA4PR04MB8031:EE_ X-MS-Office365-Filtering-Correlation-Id: 3a0de4dd-f718-4bf1-95a2-08db709a6b3e X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: AKJDHXdE0VTn8YqDv6uLP0wHYj+kbsyyVmQMDpGxJlFc8dEDHGj3dSJ3JF+Y1CITFHL8Go7OYFVqoFjAhEKobFBP/UYdUeAuSO5/d0j2+5vyslXPmwVB+vYzNKYZDW3EhnXhB1TyoOIgtXrHKTyDdwO3unHzLtH03LgnP3m9aARRlkKtEYrlypvWqKGxa4DXCYWnsgT05sXgxEvmRc1EpYmvwjQRT7KtG+01HbQJKmbKWQ2hCQIV6fCm03RQzvQgElLym/AIEr/Z9k1M0qB4Ty4/0ri5yUjaRxmXrqyVVmNOyNI3dUfyiR/OLBFyMLI/9DExIXrcwzWxWQM+I6VnxDW3qGwjgogAxmdSJSl3cQZHuYSeaYH8tULAa+90DdIsjVQARL8CasoqSH7bnjsg/rMjCLco6ufg2eNgynW5ial3aSOsshtOrd6qa6cRm3NcC4/aU4Q6DgGigsggyiyh4H9TxAgkX1n49ghbTX3LUw0+ev0wo/PUgcNnz3Fk+IRAj1C5ims3Dm2h6vfactlIBnhIPbquWlMk7l6c3hH4ax3qfA6qFi4+JefORl4NK2S41tOQ58tSr4u7eRj+BIi3cEuLXCCtSDzrqVtQMserR8BYjn5EbYqg5dUoGeBZZdTp8vZL0rGKDWA9vIdpt28wsg== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(376002)(366004)(136003)(346002)(39860400002)(396003)(451199021)(2616005)(83380400001)(4326008)(186003)(6512007)(26005)(31686004)(38100700002)(36756003)(6486002)(6506007)(53546011)(86362001)(2906002)(31696002)(478600001)(8936002)(8676002)(41300700001)(5660300002)(54906003)(316002)(66946007)(6916009)(66476007)(66556008)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?N3pNSW93SGdOall5ekV1dlY3ZGMrRlFkRTRaak51UUxIN3FFOXZBbXRjYUhH?= =?utf-8?B?cUF5SzhIc2EzenVCK3hFci9SMy9uTi91K0hHSTczSEM4Q0dCa3l2RXpya2t0?= =?utf-8?B?S013RDBRa2txc1hwbjBzWTdoWHErRkZscWZMOUlpS1RNYTJqTUlqK2tzSDU3?= =?utf-8?B?aUxaTXkxVGpOZUpEMmkzUGlrWWxnZTJsaXhLNGt4Vk92WHRDVENPemNrcXYx?= =?utf-8?B?WTJzRmxLeXUvMk5vOGdDUkt6MytWdnNvbyt4K3pvbC80NnZDZjZKalpibEF5?= =?utf-8?B?dlN4Y3NGMnJjQ3pXenhaeWZnaXh6L1Bzb0txbkdETklzV0FEVUtPbkVFVER4?= =?utf-8?B?UHVEMHVFRXVtMGpPZU9tY1o1anpodjE0ejNpd0hnYkkzdlF4eEVNMHZDdWRZ?= =?utf-8?B?TzVzTGdQQXJyUWtGWEVRNDllSW9ReE5qaXgvdm8vZDhDT0dYMmIxS2RKVGJp?= =?utf-8?B?eVFvekFWdiszVWFLUmJlVzN3V0dYRjhOaWgwZGRkc3VnY1RhTmxhNWFoSVdO?= =?utf-8?B?TXZtQ0F0dzNXOWRTdW8yQ29tS1gwcmk4cng2dXI0N25hQmF3aXBCUjNvWGVL?= =?utf-8?B?L1gvaDBxRDlERDhHb1hSbEZvSjh6d1VYeDdGOVRRclJhQk1CQmI5SGJseXBz?= =?utf-8?B?R2thcnF0ckFicTdjNkpveUc1K1hCaDhXek90VzNYTnBIcEs0RFlsL3Fpbzc4?= =?utf-8?B?RC9zUUZXSG0xQ0lxaERyTzhKQW93ZWE4cjhxdUVBZm1Cc21BRFNBQ2VEU2lx?= =?utf-8?B?MDdZeXdFVTlEVithY2hnMzlvVVROMkpxN252SXhQd3FLOWhnZG9EREhDYVI3?= =?utf-8?B?WXRNUlJNWUJjUDJZckJUbG1vS3VJditsdDd5QUIyZnZjdW55TWtsODl6RWU1?= =?utf-8?B?MVgyNkYyaGtxSkJWZm1UdFFOYlR3dEpCc2ZMVm95ZUNrdk0wc0NjaitGbHVL?= =?utf-8?B?MWMxUE44WFlCdkoxaENSaFRNdjh3RllpNm54UWNTbzFwZURjYTAycndVeXVi?= =?utf-8?B?Ykl2eHJMbTBmVTV2cUZDb3VWa3g3VjZZL2V2T2xxaFlLRXJTVDdXWWRmbUM0?= =?utf-8?B?by9ERlcxaGlvWmdrQWhKYkNrVE5RMGNQc1pYQXpGNzFNZTc5SWF1RUtKZU8r?= =?utf-8?B?UXpVL01WNXlVMndPSm5pcS9JeEtXZnpoTkIwZXBBSDl5Yjg5QlJKdHluNUY1?= =?utf-8?B?RE10UTRIZkhmUDdRbHk0Q3lJRVZyclhTdDNuU1YzZm81aVUxc2h4eUNyM0pQ?= =?utf-8?B?TEM5bnplZG9TcWFhcFBWZ1NMczd1UFZ0azJXelJlaTVTa2pGUXhNVkM1TTFY?= =?utf-8?B?b016WDJVM1g0RjdtWGszb1JNM2IyUkFROVcrekNmVUdCWHordHl4OFdMY3l6?= =?utf-8?B?aHF5NFRhQjU5NjJzb1pFbkRtcDZCVFVLdlB2OGN2RWNER0xjSWxsRCtYaEZP?= =?utf-8?B?ZzBVLzRRSW9vK1hkZDEyTkdwc2VkamMwR2w5eTVGeFRWMUR1UnJWMGc4UWda?= =?utf-8?B?dUR5ZlhGMEhrV1FjQ3Nub25wL09BVGNmc2FzMyttMHUvcHlqVHhqeWFSNDA1?= =?utf-8?B?VGU4MDA2RzdRNEZCRStrVjFnbzJDbTlZZFdEUnpjQm5XZFVxTGJpaC9WWVRl?= =?utf-8?B?aW9jUHYxbnlhNU9HRlpCUEE1dkhMRkhaK0txSVQzZnYxbHRCODh5cWcvUTVO?= =?utf-8?B?b0t4bFM5SlpTd3hwekwwOTVOQ0lQZWJpWVV2cHBhTVNJWGh1SnJRcE9ib1dw?= =?utf-8?B?TFUzSFk2WDhwVFBrTjBkTkJsRXcybEhlN0Y1cjdCME45SVBYa0FGU0R3NWdr?= =?utf-8?B?Vk4vd21BWUhRekk5WEMxWlN6TFJmUUVjOW02T0FKYnVxa1dzcGkzQ3BwajZy?= =?utf-8?B?cDVlS2ZRN1pudk1GNUdqSkg0K3dVYUZ5QWsyMGVuT1R3M0V4VklMMnJGQTg3?= =?utf-8?B?OXY5bE1HbGc0QkpZRFBZS3F1WnJXZWRYT0JUOEJkSGFYb0hhZWZKbE85WTN1?= =?utf-8?B?cTUzdkg1cnV1Q3hkRHl5KzYrcUQvWUd3WnFLTVAvY2xiSnJTTlJvWG1VR0wv?= =?utf-8?B?cU5QeUdNOElOY3JlTyt2MmppbWxBNnBLS0NUSzJJMjBuMmdtY0lJWHFId1pu?= =?utf-8?Q?LoTmCYhu/5MMXU/n0vWMwSsRQ?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 3a0de4dd-f718-4bf1-95a2-08db709a6b3e X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Jun 2023 07:54:33.0947 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: Ig76IPWirpMayK0c/WGZS7abfFNHPBxiQYpoWos7Xuiaxm16ccmwM3GITeYQvG6VS8TSp/1ZQK7O1rWA9XpIag== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR04MB8031 On 16.06.2023 17:54, Roberto Bagnara wrote: > On 16/06/23 01:26, Stefano Stabellini wrote: >> On Thu, 15 Jun 2023, Roberto Bagnara wrote: >>> + see the documentation for -Wreturn-type in Section "3.8 Options to Request or Suppress Warnings" of GCC_MANUAL. >>> + use of GNU statement expression extension from macro expansion: >>> + see Section "6.1 Statements and Declarations in Expressions" of GCC_MANUAL. >>> + invalid application of sizeof to a void type: >>> + see Section "6.24 Arithmetic on void- and Function-Pointers" of GCC_MANUAL. >>> + redeclaration of already-defined enum is a GNU extension: >>> + see Section "6.49 Incomplete enum Types" of GCC_MANUAL. >>> + static function is used in an inline function with external linkage: >>> + non-documented GCC extension. >> >> I am not sure if I follow about this one. Did you mean "static is used >> in an inline function with external linkage" ? > > An inline function with external linkage can be inlined everywhere. > If that calls a static functions, which is not available everywhere, > the behavior is not defined. I guess I could do with an example where this leads to UB. What I'd expect is that it leads to a compilation error. >>> + * - Unspecified escape sequence is encountered in a character constant or a string literal token >>> + - X86_64 >>> + - \\m: >>> + non-documented GCC extension. >> >> Are you saying that we are using \m and \m is not allowed by the C >> standard? > > The C standard does not specify that escape sequence, so what is > done with it, in particular by the preprocessor, is not specified. Isn't it rather that gcc doesn't follow the spec to the word here? As per what preprocessing-token can be, anything that isn't (among other things) a string-literal or a character-constants falls under "each non-white-space character that cannot be one of the above". Hence since "\mode" doesn't form a valid string literal, it would need to become (using '' notation for separation purposes, not to indicate character constants) '"' '\' 'mode'. Which of course would break what subsequently are string literals, as the supposedly closing double-quote would now be an opening one. Which in turn is presumably the reason why gcc (and probably other compilers as well) behaves the way it does. Jan From xen-devel-bounces@lists.xenproject.org Mon Jun 19 08:02:00 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 19 Jun 2023 08:02:00 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550836.860010 (Exim 4.92) (envelope-from ) id 1qB9pa-0004xV-Vg; Mon, 19 Jun 2023 08:01:46 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550836.860010; Mon, 19 Jun 2023 08:01:46 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qB9pa-0004xO-SP; Mon, 19 Jun 2023 08:01:46 +0000 Received: by outflank-mailman (input) for mailman id 550836; Mon, 19 Jun 2023 08:01:45 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qB9pZ-0004xI-K0 for xen-devel@lists.xenproject.org; Mon, 19 Jun 2023 08:01:45 +0000 Received: from EUR05-AM6-obe.outbound.protection.outlook.com (mail-am6eur05on2060c.outbound.protection.outlook.com [2a01:111:f400:7e1b::60c]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 87103a0e-0e77-11ee-8611-37d641c3527e; Mon, 19 Jun 2023 10:01:42 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by DB9PR04MB9425.eurprd04.prod.outlook.com (2603:10a6:10:36b::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.36; Mon, 19 Jun 2023 08:01:39 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6500.031; Mon, 19 Jun 2023 08:01:38 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 87103a0e-0e77-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=B4grtX007nCFEciGawSWslryoNdyoeNwwf8ISqmbaonU7MrsanI4psUFSW+p64jQ8yQGc+W8wXzX6L0/N3NpsUJzVzSEXyO4Qbdl/lmV26FWlq40dhCiEdSLfi8lTXOi+drxDZ8HwFCwLtiR1CK0i1mzuuf6OKPZnlIux10o917NH0B5jW47jf3sHuO0fYtNMXe8ovCwrLYtaufNQykLp8tb2cMnyVSqAfDLMEyeDYffKu1DrfNmBmmChaBTRQ7ZqWFkugATRb/ZwUXAod11HfdUvt1pW0SVqyDAavrfwGJc66aM2OSaN+pm458hZ0OVzI5C4DzwzK/OG2Q7hOrSOQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=LnosluTA5cRZYQhlL4XcCeJvic8miCTBSyAP5luvsFM=; b=FPERfVCRkVUSUFVWfFiWxbjfCIX5ckCaionQCZPAncMNOty4Nf7YpUAZAw2RovHtFtMuz8uX1/q3U1e9SFvUJlyNh7ilPoiFLpGEVYR3iZwUb1VsMW/bCtQF8NmMaUSFumab70t2uGdabZ/BdbX/N47uKaFXYQAepgnjs2lE9+T/Pd0a3nluNIQO3vrsBrbNXbHF9vbuOo0TnhMoK95pgNRp1tryonsl3iaf6XCPeADz6ugfopzxm7PA4tuZALNjytk55f9bHKXZyohAP4jlgOwpcBF2DDqQIzc8iBAkMLzOjIzjL9X+j+sqXJLaxthT0WiHnzqsrtkoz2X8irB6xw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=LnosluTA5cRZYQhlL4XcCeJvic8miCTBSyAP5luvsFM=; b=YxG0tFq8p/+tESRvk/vVsz4oJm/aQlVHQcGuZsh02KZhZ/EzgpoAGTWbM/VlI8ZGhJTS650tVmQ7tKynr6ErY8uK+fpv/13ufDTH68ZSjI+vTNiKyLlNwy5bUR7R8zytUhXT91zWYO2VrgO3HilIrJ/4D2zcxYNAh6YZMb8n/BC4KYFEw/Kaf0R+eyc5hgZDaAK+vwqLQTlrhmI1O7ao+XXGM33o6b+8yNmLDZ1+l0Y+4Myf+0WuOfOicSvGHeLETxBk8kAiFQ4ywWG+MZCGeXocuFHTdWECUqFcQh4WAXqtgkZNX6+Nhi1wk4KK8n9bqP+9kqC0MPHn5j8akiezGA== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <2a60dcb0-d883-4f42-7a0b-a004bec68b40@suse.com> Date: Mon, 19 Jun 2023 10:01:40 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v4 2/4] xen: Add files needed for minimal ppc64le build Content-Language: en-US To: Julien Grall Cc: tpearson@raptorengineering.com, George Dunlap , Stefano Stabellini , Wei Liu , xen-devel@lists.xenproject.org, Andrew Cooper , Shawn Anastasio References: <97a72e26edafb1d7b3a583755f015d04066c1e53.1686936278.git.sanastasio@raptorengineering.com> <8383dd1a-064c-17c9-bb7f-4509518b9b42@citrix.com> From: Jan Beulich In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR2P281CA0087.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:9b::6) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|DB9PR04MB9425:EE_ X-MS-Office365-Filtering-Correlation-Id: 0a7b6483-157c-476c-f95f-08db709b68fb X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: JMeZoQcmEtGNBOCiZdj9nhpVKMQnlz3W7zUxMJyIZA3JUt5YBHMroXbFBHhp0GuGJTznLcbdQrx9zHISD50/ge9zpDQZOS8gBF4PLU9NFlVu7m0TbilpllQAnrq204GAx7Q2g/k8ajlCdurkejtVktMYcEvcZqe82MWTQxg7/mgxBJ6pvLj/kXhKm8CXvt6TAoA4iySkPzoxlOjqSt+JxnJJdbhiHOtX3ffc8C8JnBy8r5YNtfpzbhdAVuf/adr4mlps6q6TQ5+WUr93vTX2RP3jmlt+z+TMkqO/ZMHzCXd9AyZzlK6X32IipVY3l1aEqORvdRqUjvBq4q4X8mgfh7CLfIZRJE47vR/u7XO8zwOkP6SaTng7S4Ukf9rcZkF6P/OhgX9V90Dt9dYlWVJD15HtmCd4m6gOZV8nc7giE0RZr2KcUgttueOj8940APnATtF4mR25V5TDFKFY/gz19Qs5fBXs9fmnZD4bErng2/lJ1XOq40iQNpu3aEhC1gri+9Eon0mKmP5PaiDwiJqYYKP54RZuXkBK0IGyseoh8e579MgoWW1HQFlEPI5tfl86OIJlx1K9znqBLHBIqY1LyMJthNXr5z0yHbYdypW75FAWGYltuzBbGOFyxm5vxa85AYJaC/PHZVBys4PftmzUMQ== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(376002)(346002)(39860400002)(136003)(366004)(396003)(451199021)(478600001)(83380400001)(31696002)(86362001)(6666004)(6486002)(316002)(38100700002)(66946007)(4326008)(66476007)(66556008)(6916009)(26005)(6506007)(6512007)(53546011)(186003)(54906003)(31686004)(2616005)(41300700001)(5660300002)(8676002)(8936002)(2906002)(36756003)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?bS84N21pY3UyK0hTZC92TG4xeDY3QXlEK3hFTWk5eEhPMGduc3BHNGJSQmE0?= =?utf-8?B?d3haZzJydFNiZWdxNDQxSGhHQ0FEanlCOFpGSFV4WVVybFVOME81aHN0NFJa?= =?utf-8?B?Z0szNVNFbXBKRGQ1WGdRYUg0NGswS0QxdGQ3RTBLb2ROOWRTU2hTQlRuaWo3?= =?utf-8?B?SWZ2TGlkdWVuZWtUNXowelQzQllZYkw5NU8zZlFJdkRHa3NLcm1BbENnWERi?= =?utf-8?B?cmhmWDlKbUc3Q2xTVTY2bkRzL0JPWDJnbS9uazVTMTBHdkZyanlDaW1ySGVv?= =?utf-8?B?UHltWkpEZzU4blpZRm5IdTlyVmk2THo3U2VGdDRBM1dDNTJFaHpncGNUUklq?= =?utf-8?B?MEY1b2NadnI5VEZvMnJHT2xWdkpmWVVhNHlWM3FkSlBXMXFhclIwMjRnNHRT?= =?utf-8?B?bzBuWDFrMGVqeGZZM1pVSnpRRVIrOVJvZ0gyYlk0NXoyY0g4QkJHNUphL2FL?= =?utf-8?B?NE4xOVRibHlzSXdONjYzVnpVNlRSenJyYStWWkkweXVMT25ZSlJnSHRzVVEw?= =?utf-8?B?T1pGeTluVmVTR2IzRGJHTXBZdWFrMHZkQjF3QU9tSnhvVFdQSFgweXVxbjJK?= =?utf-8?B?M0dLbjlaTWhIWkpaK3VZNGhoekFZUWt4TFlRLzRwb0dYOFZFSnprUzAwTE5I?= =?utf-8?B?cUE2UnJTOHNJajFsV0ljbnRkSnBpd2pmcTlBZTZ4d3BlUlRTTW11MldtcGw1?= =?utf-8?B?U0JudWlqcGJkbDZhTkozeHEzWEYzb2tZV2diamlXSHpiMlFMREt4dU9yK3VE?= =?utf-8?B?Qk9UUm9tNmlZSmZpYStHT1owZlhmRXJPTURnTy81VUNnSC9CYi91MnY2emkv?= =?utf-8?B?emdZenNLbERnMUZFcGFLL0wxelFVRll2MkV5d0V5NUZQdTdLTGs2Zi92QmRP?= =?utf-8?B?Q3JMSWljM1BFd1VWSHBCaGhwUnJ1YXdPNEZYMmJTUWFTQnFSTDl1aW1XNk9i?= =?utf-8?B?RnNmY2ZJMENtSDJ1UWd6WG9CSFhETEdkTkpKNEpPcUNSS1BieG1NNGlmcHYy?= =?utf-8?B?dHdPM1hkd2IyK201cnowVUxDMU5vcVBGQVROZzdzeEkvVGRtS0pxVHJLbFdO?= =?utf-8?B?ZklrMTZ2bndnQ2VhYlNmRG5Lbnl5RndXdWV2ZUZscjNQTWplZXR4TWNxSThp?= =?utf-8?B?TzM3elhXY0hQN3ovOGVNWnl1dE9oVlRlSjE0Q1VBRW5kTG9HVDBkQnNmUDdi?= =?utf-8?B?YitOZUtXZ21vSFpPM0kxZldjQUkxZHZxaHRxUGtKYWZhU3ZMVU1RT2dKWjFy?= =?utf-8?B?YWhpZ3FmMC9qNVI2OEpxdXB4M1dibDJNRDBkV3BzZEZlcUxzMVFVR1FiRGt6?= =?utf-8?B?aVlyNlcvQlVXVkpxVUsrcVg2OFhDd2pLVmJJT2VjbHpvZ0NrZ2tsSmdrVWhk?= =?utf-8?B?UzQ4OGpZckRzNllBWlhPTkt4WWc1UEFQVkFBa1hWR29ibXhRd0JITVNEZnJN?= =?utf-8?B?R0VxYllIZUxIaGJPQXVqZUMzZVVYdGx3cHVtWjdrUTZNMEVzOGQxcnZ0MGRU?= =?utf-8?B?NnBjMG5WajVXOE5zYUhFcTZvMjF1ZHRrKzArVTlPQnZEcDAyQXc0QUFLSjlO?= =?utf-8?B?N3FKb0diTm05eU9VV0Ruck1xQXNUWE5qZkdkeEgxVmNDRXMvVmh1dWoyMms1?= =?utf-8?B?WCtVY1NZVm4xb05MU25kakZkekZvK0c2OUsydDhFNys1SXkweTZ1a3RxUTBk?= =?utf-8?B?RFRGcmtJOE41RVFMVXBMT2RJS1g4ZjBHcWVzQXdSMUtGSVVaWVl6RXp5RGE5?= =?utf-8?B?cmEzUXVFeXpIRHk2V0VadENwejlRZFNQaTQ0WEpvV1NKUE5rbGcrVStIZzA3?= =?utf-8?B?TVBTTkl4S3U4N3ROUk5mMGU4Zy84WUtZcXl2U0xIL3dJaVprcENiTk5PZzhw?= =?utf-8?B?d3BOcEttenhnRHNMK1FrSEVlV3htdWsvTUZmSXVFWGc2SnN2THUzUjV1VnBI?= =?utf-8?B?U21zVGdLWmtrY2ZGaHlPaEFNOXVXWUZadnRiTWYyR0Z5cVIyNWVzZm9jVk1y?= =?utf-8?B?OG40eHBSc080L21xOXVaZnUxekM2c1MzSTJ5bFBvODlOV1JUaWRjY1JnWmJ5?= =?utf-8?B?c015aGJOUE50WFlsRVlydld1Rm53VmgxcjhRVzdITGV4Ui9sa3I4SGcrVXNh?= =?utf-8?Q?wjW6dmk9cfBAAo5/LIXti0wdO?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 0a7b6483-157c-476c-f95f-08db709b68fb X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Jun 2023 08:01:38.8226 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: TnESPCL4m8SkLj4SYi7SMUQjnzQ26Vpmr2nnEJ6fnWbCtdb2pCi9ATM9mOrG3GN455FInECvFDuBW8gSCLQblA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR04MB9425 On 16.06.2023 22:39, Julien Grall wrote: > On 16/06/2023 21:24, Andrew Cooper wrote: >>> --- /dev/null >>> +++ b/xen/arch/ppc/ppc64/head.S >>> @@ -0,0 +1,27 @@ >>> +/* SPDX-License-Identifier: GPL-2.0-or-later */ >>> + >>> +.section .text.header, "ax", %progbits >>> + >>> +ENTRY(start) >>> + /* >>> + * Depending on how we were booted, the CPU could be running in either >>> + * Little Endian or Big Endian mode. The following trampoline from Linux >>> + * cleverly uses an instruction that encodes to a NOP if the CPU's >>> + * endianness matches the assumption of the assembler (LE, in our case) >>> + * or a branch to code that performs the endian switch in the other case. >>> + */ >>> + tdi 0, 0, 0x48 /* Reverse endian of b . + 8 */ >>> + b . + 44 /* Skip trampoline if endian is good */ >>> + .long 0xa600607d /* mfmsr r11 */ >>> + .long 0x01006b69 /* xori r11,r11,1 */ >>> + .long 0x00004039 /* li r10,0 */ >>> + .long 0x6401417d /* mtmsrd r10,1 */ >>> + .long 0x05009f42 /* bcl 20,31,$+4 */ >>> + .long 0xa602487d /* mflr r10 */ >>> + .long 0x14004a39 /* addi r10,r10,20 */ >>> + .long 0xa6035a7d /* mtsrr0 r10 */ >>> + .long 0xa6037b7d /* mtsrr1 r11 */ >>> + .long 0x2400004c /* rfid */ >>> + >>> + /* Now that the endianness is confirmed, continue */ >>> +1: b 1b >> >> .size start, . - start >> .type start, %function > > Shouldn't we introduce ENDPROC()/END() to avoid open-coding these two > lines everywhere? A proposal for this is pending, see "x86: annotate entry points with type and size". That proposal extends to asking whether to use this scheme uniformly, not just for x86. Jan From xen-devel-bounces@lists.xenproject.org Mon Jun 19 08:02:59 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 19 Jun 2023 08:02:59 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550843.860020 (Exim 4.92) (envelope-from ) id 1qB9ql-0005Xx-CO; Mon, 19 Jun 2023 08:02:59 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550843.860020; Mon, 19 Jun 2023 08:02:59 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qB9ql-0005Xq-9X; Mon, 19 Jun 2023 08:02:59 +0000 Received: by outflank-mailman (input) for mailman id 550843; Mon, 19 Jun 2023 08:02:58 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qB9qk-0005Ru-1O for xen-devel@lists.xenproject.org; Mon, 19 Jun 2023 08:02:58 +0000 Received: from EUR02-AM0-obe.outbound.protection.outlook.com (mail-am0eur02on2062f.outbound.protection.outlook.com [2a01:111:f400:fe13::62f]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id b2d90311-0e77-11ee-8611-37d641c3527e; Mon, 19 Jun 2023 10:02:56 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by DB9PR04MB9425.eurprd04.prod.outlook.com (2603:10a6:10:36b::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.36; Mon, 19 Jun 2023 08:02:53 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6500.031; Mon, 19 Jun 2023 08:02:53 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: b2d90311-0e77-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=LNL2bOaaJDy+6bkDR2GgYizsVwZB02My2SsxsIvnd5J3qusT1J4mOJZlVEooDvf0OSoL/gi8ZW8MiajpN3zgNTGKOJSY1hEV7BlepWnpXa3oEF5yTsnWx2E33Ns+GaVMoef/fyDtedYV84ueR6LIG975AbTs4NCBu0NvYvgkWTFHl4kbvtgXsVsCwyqpE4x4wesUNLtnZ8dEMgtMNSyBFIY7okIsWa3KSUh2mpZhXmdP0za3GFbfBy6rLtySBcuEyRZczD9gmyZHBHm7BmkcI/EcEZceqD96LvAvNA+VAw8CqdGopWaGUdNM5a7IE9I7XRYSadWDeTtauhvPL5PRbw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=bFLs2u+MvIE0Y53QNtOLCyCeJWpX9UpW9vCkROIod50=; b=cz42zEgHlDj0gND76CMvQhNRcTEuXeK/ycJ52VlTE20QEdUbicuI5dWNRzHcs6uLUPe2BmduuI+Kq0dd9+4Xh3wYQWqpVA/bB4mAfs0web9jc0cPWV4oZsSj4jLcWch81OUIRJttCkDfixbIfWgB4utHH7xlNR9rkFOJBCnFCyVhWVGJe1sVIVyYDmMv7yIIijhxA8/HL9KG+7lZ1J4RrX/8Y2f6Q9uNR13z4VQRqyinXja6TqTcSMSIkKBOvIHwKYUoDIVt+/3bX9uKRStCkabzaCaCEp1qx402Xv8NlqI55k/i1rG0X99rmxoc9aRJwfUqUl5+3Tzs7LHWX3wEOQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=bFLs2u+MvIE0Y53QNtOLCyCeJWpX9UpW9vCkROIod50=; b=FGQvu3jLP+Oj1XS64qWKXdG3UOjea4Q4dFrCDkFRXMdy1ocnaQ12RU4uJa+fRjxH5HxT+XHKk9/e0meC1NMx41g4cEpkmhjvqDLRfaju+MIvG7ads4IbHut9g5vq5Fk0VXe58cESedqvX7Hu21osboXOqtfnk92o1U2WgqIfKmAfA527w7Fog3PP17sK9SB0Kdp+shKy0HKo9Lj4+MpkbST/517oyY3dASI9O5Ou7qx252P26UBMawmjtzv27N2sywxki8bJW/PEDt9LNxQ2+lLi9qpd+l4YZ5930a2tBOl0+GqXexMqtWL3G7gzUgAGoJVZTpX8TkYT+DGyYWYwfQ== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: Date: Mon, 19 Jun 2023 10:02:55 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v4 2/4] xen: Add files needed for minimal ppc64le build Content-Language: en-US To: Andrew Cooper Cc: tpearson@raptorengineering.com, George Dunlap , Julien Grall , Stefano Stabellini , Wei Liu , Shawn Anastasio , xen-devel@lists.xenproject.org References: <97a72e26edafb1d7b3a583755f015d04066c1e53.1686936278.git.sanastasio@raptorengineering.com> <33c8e11f-c561-3dcf-e08f-0ea19b34f89e@citrix.com> From: Jan Beulich In-Reply-To: <33c8e11f-c561-3dcf-e08f-0ea19b34f89e@citrix.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: FR3P281CA0119.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:a3::19) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|DB9PR04MB9425:EE_ X-MS-Office365-Filtering-Correlation-Id: 6ddd022a-610b-41c8-31eb-08db709b957d X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 4BYrPj+zje1D6xQ7r3OIL1vC16haDqFc1ICNT/QK2rQwCMjOSU56XqyM+DJpnkshd2/I9lb2O5TtKiYgWhsqG0y/c3KnxZPz/5M8pvP7htZhCug6y7YKkNPiYfbvaHpONRmbyLcdoADH4WzUg6MGT0bG20hy81Zdw4SHAnhzUoMnD5dDu/UlRPQTROOTXmArLLnvPFfRvHOSU5gxlH2B+m/wgm/soc9tZIwFzjPzKPhLgGpMdOV+hbeLk/abra8C2mtAKJySmbbAJuLCoNDSJGrn58qD67Idev/z0Kh9wplbd8L0WJ3K0QRFIJHkmEL26RKkG2BTc5j6Bhh6M0nyXqxVeCpPxzx6wYg/FadqnsXMc1nU+/5MEqgDreV1on9+GsiS7IpiilnITgWXfH2Ne98RYZkSu0ioudH02BPcql2f3m3jjdgA58Dj8gjCYSIzu9u0Wzry/PPI/mBgHJnTplA3koZyJX97rCcqmrfgi4Q4iZpdwPaZ3Gw32tXRU7eiUbduLDz7Hh2+0qsi2x8Ts5MCaHStZmqu60tWLvW94eWPuPi2JPGUb4QyoBjQGlmz4II/RNFiFGo9ZWQDLGjWS3bP97DtAZ7NtEZYNhFT+y/rK2n0Jza2ILrsOnlZ16DlaI/pKWHN9zA7RRNAGo6mIg== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(376002)(346002)(39860400002)(136003)(366004)(396003)(451199021)(478600001)(31696002)(86362001)(6486002)(316002)(38100700002)(66946007)(4326008)(66476007)(66556008)(6916009)(26005)(6506007)(6512007)(53546011)(186003)(54906003)(31686004)(2616005)(41300700001)(5660300002)(8676002)(8936002)(2906002)(36756003)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?YktaZHBzWTNCT2NWdlBFbXpkL01QcGZzRWp5ZVh4Q2JQMFppR1VBZWpLR0tL?= =?utf-8?B?Slp6U2FnUy8zY0JMazR2YkhOYXBOajgwT0FHR2cwZG5VSHJUNWk0K1JPTXZx?= =?utf-8?B?Z2pFMkt6T0ZCemdmVDdtcWZoNE5HMFlYcGNEL3NmMlloV0dxSG9ZTyttcDhS?= =?utf-8?B?MGFmK09XNVhENEZFRUhncFBhVmhrZERZMFMxZExaZ3lRbzUrU21KNzV5a0Uy?= =?utf-8?B?Zk5hTWlLMW9PR3BKRXlLYzJyNSs1dW9xMTJtUzdqM0JrMjFRRGUybGN2RUNP?= =?utf-8?B?UnZrbWdha1Fkc0txRGlka3N5SFFkZFVjT0NBZVNtZ1pZRmNRVkpUbkM4aUNN?= =?utf-8?B?LzZRcUNXUUVhR29CMURGQit3clhUaUxvVjlJVUQyZHFsWDRvVk5RVWxRMXNH?= =?utf-8?B?ZGQyZnk2WUhwaHhNTEF3TWxza2VBZXJoRkRMQVpMSkxsWTd4Y3Jwc0F1R3dx?= =?utf-8?B?aHcvdEorc0QyN3NtVUN3a1diLytXdDI2S2hlVXliUmszT2l4dHU1YjlFbGRs?= =?utf-8?B?enUzVVRub3I4aFc3Nkl2WEJpOWR4MjZsa1hTRHVIdXFGTGlVU0JXenZlcVF1?= =?utf-8?B?a1cvTzgxTmxMcGd4RkdkZ3dhVFl5WTNHckVLNzBkWHJ3a2lvSk5OblJyL2Vh?= =?utf-8?B?TEdWSXZTNzJUMU9QbDZTNlBpbzZDV2UvUXpIUXVSMDBodUtLaVI1Uk1iOTJ5?= =?utf-8?B?anphYU9DS0cvMFkyb1MrTmVHTnh6cmNUcHYzRTBZeGlkNUFFZTQ5dFJ2dDBD?= =?utf-8?B?N1ZmTk9sUGZ6MG1sQSsyUm9ZVUpzYkhKMUNPaG00d1EzYVFLT1MwZDZGUTFX?= =?utf-8?B?ZG1STDIzTDN6bnRLdVJocS9jU3hCelJSQnV1M0lvR1h3aXVUcXczOWdaTmYr?= =?utf-8?B?VzVXamUvaWQ3TE81cnRCWkVXdkZkSktvOFpwTG5CaHdoSGtUeUR6VHJYaTdS?= =?utf-8?B?UUF6V2JDVjExZWtOVkN3UHNaWm9vK1o2di96T0NIVTk5RmtmZG9SSUpIOEtT?= =?utf-8?B?MmJIVTd0eUNyRmhWLzhnYWJMN1FBMHBIbEJlVi9zTmxVZkpBbFdyZTF0Vjgz?= =?utf-8?B?aGV2YWxMb0JyV0xaa1FvWXNXRFZOZzB2ZytjbGt3ZlpJMDJkSDIwVlpwYnpt?= =?utf-8?B?eWZ4a1cxaWhiS3dBL240WWwwU1daT1RIeWNrcXFNMXBpSkFVSE9HVUVMRGtq?= =?utf-8?B?RFNFTWcwa0FuYzhCTUJaWnhCZGNOVEpsWG8rdm9JRG5aM2svNVdUUFlWSTFB?= =?utf-8?B?a2tXc25OYnpZbEpuUTl0K1hmTDNUUzg5b0FWWXhGV2dlUzlZcCtRaHZJUXZq?= =?utf-8?B?dk9rekk1WlBZWmcxU1JZVFVYMTY5NFNIa3RtYng2eEUyUG9mKzBwZmtlUWtR?= =?utf-8?B?VzYyaXlZWnZ2UlplYkoxZ2RUUngxUlpZZ1F0VkZpOUtrYlpJaG4vVk5Pc2hm?= =?utf-8?B?aWVqbEluWGk0Q2xJWEtITkl3eFVSV085RzVkY3BrZWtiY1FMTkpMRldpd2Rj?= =?utf-8?B?VGxUZ0NJdTFoaDY1c0c5ZlFlZFUwRlBRWnlUTFZhMGVGTUliS0VaM2p4cmcz?= =?utf-8?B?eWdlaDB2elgzZ01RRXlCTk5IbGNkeVBacWxieUR4bTFXUU8yeGdnT1JXTkhz?= =?utf-8?B?OHRObTQwT01KZDJjQ0t3cXBvczVlVUY2Q2xUYU9PYnBnalRjQVRpNUNFTjdS?= =?utf-8?B?RTg1SXlmVFM3ZG1mbkVzYUdTWmsvRVlDWFNBbGJtYmlyMUpwcUNKT3lDNmxC?= =?utf-8?B?R0dHUXB6d3FFM25CQmlaNGU1YnVmUjY4SzVKVFNmcm1kWnpmRUdiNGhUZDVp?= =?utf-8?B?MTdxYXl6OHZpYjk2M2kvRXVBU1NyNGJlcVlGMmN4VXdqTUdMQ3ZkbXpZYXNK?= =?utf-8?B?NXI5YmllSm5UK1NUWTluMWVub0R2TFpnOUJYNTdjLzAxR3BBWjFRL05qcHVD?= =?utf-8?B?L0dDbHI2RjBjMjVyZlZwQVFBbGxoNnpiZjlWc2hobzVNY1FaV1puZ3ZkK0Ny?= =?utf-8?B?S2YzUk9iY3FYUEIwKytuaVFyQk1yWjlEK01TcEpBTk5PQ2ZlcUg0QncwRnRt?= =?utf-8?B?VEEwTVZFYm5FaDhzVWF2WGdKd2ZqOXFRMklSR1BXcFh3bk1TMGVCVHZ1M0Ev?= =?utf-8?Q?OFfa1dZbAWxDvtTH3ENWVi+I8?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 6ddd022a-610b-41c8-31eb-08db709b957d X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Jun 2023 08:02:53.4422 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: pOj8otKzq/cghGC076DNbydHmTBpJBJdBpwdSmAFci7BkmO6OULB3bWqR/3iyEmo7PRFPYmg7MOK/ilrjQWa8w== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR04MB9425 On 16.06.2023 22:27, Andrew Cooper wrote: > On 16/06/2023 6:48 pm, Shawn Anastasio wrote: >> diff --git a/xen/arch/ppc/ppc64/head.S b/xen/arch/ppc/ppc64/head.S >> new file mode 100644 >> index 0000000000..0b289c713a >> --- /dev/null >> +++ b/xen/arch/ppc/ppc64/head.S >> @@ -0,0 +1,27 @@ >> +/* SPDX-License-Identifier: GPL-2.0-or-later */ >> + >> +.section .text.header, "ax", %progbits >> + >> +ENTRY(start) >> + /* >> + * Depending on how we were booted, the CPU could be running in either >> + * Little Endian or Big Endian mode. The following trampoline from Linux >> + * cleverly uses an instruction that encodes to a NOP if the CPU's >> + * endianness matches the assumption of the assembler (LE, in our case) >> + * or a branch to code that performs the endian switch in the other case. >> + */ > > Sorry, I also meant to ask.  How prevalent is Big Endian in practice in > the Power world? > > It's another area (like 4k pages) where I expect there to be plenty of > fun to be had with the codebase. Why? I'd expect "fun" if ppc was meaning to run in big-endian mode. Jan From xen-devel-bounces@lists.xenproject.org Mon Jun 19 08:10:30 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 19 Jun 2023 08:10:30 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550849.860029 (Exim 4.92) (envelope-from ) id 1qB9xp-00074y-2P; Mon, 19 Jun 2023 08:10:17 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550849.860029; Mon, 19 Jun 2023 08:10:17 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qB9xo-00074r-Ve; Mon, 19 Jun 2023 08:10:16 +0000 Received: by outflank-mailman (input) for mailman id 550849; Mon, 19 Jun 2023 08:10:15 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qB9xm-00074l-V8 for xen-devel@lists.xenproject.org; Mon, 19 Jun 2023 08:10:14 +0000 Received: from EUR05-AM6-obe.outbound.protection.outlook.com (mail-am6eur05on2060f.outbound.protection.outlook.com [2a01:111:f400:7e1b::60f]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id b78cf599-0e78-11ee-b234-6b7b168915f2; Mon, 19 Jun 2023 10:10:13 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by AM9PR04MB8163.eurprd04.prod.outlook.com (2603:10a6:20b:3e8::24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.36; Mon, 19 Jun 2023 08:10:09 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6500.031; Mon, 19 Jun 2023 08:10:09 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: b78cf599-0e78-11ee-b234-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=msQSZyzr988oAbNq90X3lxDUxRUXLktDIQP9/C3WpRTXdoFxMUk6Qx/kwhQp46nU4L9orXZ5VDrma9msNQh6OnOqjZu9PcHl5KoJaxDFsKx9RPoBKuUyYCkm2whtMPkOf18OFx0jUXmCZsHygri/di1vHxKc+hi9ghZCd9U0m2sMpf0YjKw5MJFGhLEZunFEEyw/EDUSsKtNSXeD83qJEkz+sxdcxGphHuKjAxXqwyvfsXIaRHW0ppJszAZMQy85QS6fu1A5PM1mIh+EZYFTiJXDVELMvlRCaK+PbKpnpbsjRbOghcD3NcQffc6R6c4YabD9TZYa0giJvHqVQrSdsA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=5FUWPbGmB7Bc/TzM5cS7jf1DQiSsN6IzYdX7GZ8v4cc=; b=oS+0khi7KjrdRlOq3gHes0fdtUYqrGw7z5YoA0+Qw9o3fYZRYkT4BWEvIa9BrJ/rkkADAYxupUjibeG/LNAf/dQD+ReZH4KMe8Kr8ndxxb5IppaOjYMVypTNwQqqNrQ9oAdBsLl7dWOIZ8TduIpq6C+BHA2LA8kNUd87q/JaroR0L9SSr8+T+uYwain7BPMF2hiFZ/4Ah9kZkw7rjN7k7mqEBn3CP7rlnJLsvCEzg3W5/OFd9GTSPLV6wNCMrhhNdwCPAqatz7l8T3I86dSoQPL45pPUo0kw4PaqR807ztSsz2C+TZYxp0LhrIBvAKjEQkYglV73CPhinD0nf+i1Ow== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=5FUWPbGmB7Bc/TzM5cS7jf1DQiSsN6IzYdX7GZ8v4cc=; b=PI1N3VK/AHhFFaD9mfFBokAAy1SM0sIf1hAWPQmxgbyItocpiJeuQzrbGOX92fM/6pFztaFIhn7Ovp5WL300z68hioNUURgQCIw1OMy2rTWGs1G1gdV45G/52JY5zcijJvag57Cc+UlqXUX+7yRntl5NP/HTK9Wgd1sVuB4MTrsI7RHpp3BuYfR1N3onocu3eBKxS9s9WYjxeyns8vnkaekTFLJQnfb7AmgAHuP6HcDx0979gQWjK6cZ1+aqYZBq2WlolzdRPTTEov9evik1cUQpgMvb6wrSf23rl0r0NOGyyW8vSCyomIE/vlKDugI0d7Opwt5QdE6xB8/KWbb+7w== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <1ea82266-8b61-f70c-c5e2-a2b4e131d222@suse.com> Date: Mon, 19 Jun 2023 10:10:10 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH 0.5/2] x86/boot: Clean up early error asm Content-Language: en-US To: Andrew Cooper Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , Alejandro Vallejo , Xen-devel References: <20230615153157.444-1-alejandro.vallejo@cloud.com> <20230616182303.3546262-1-andrew.cooper3@citrix.com> From: Jan Beulich In-Reply-To: <20230616182303.3546262-1-andrew.cooper3@citrix.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR0P281CA0084.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:1e::23) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|AM9PR04MB8163:EE_ X-MS-Office365-Filtering-Correlation-Id: 5560c923-2a9d-48ca-0dbb-08db709c9927 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: F9tA8Xcm3DFzWWb1ZGWQZmD5Uk5G6/ehaU0KI6jHvJXYZYtPSksYQibSF4nSFHAJoeNG1vjP31Y74//j+iyPthASnk5XLTp2LngnTcwQZpMhHJwLozzp4xLZhFvmyRRvccc/RaqWA5XMR6vI/DEQODLhptZHSwWYfKgZwDaRtwMhUKqZHvbkLZ1j+2j80Ax+io8rk27B0tIhSP6GULqVyEf/mDtQFeYXnga9WEqlGPH2Q3qz33ZUpqahbVUYn5NF2iTZrGxxhsx7dJfHAzXQ35auAOvuso1dQCvz866QdLz4L0rB9ItxvhNDZ17g/mtiZKSYM1ZCg9ORcNuOWWS+yq4oHbbIxzqUk6jOnqaq0J9V2RtthdGLUEdx2uAQ3rs37e9u3gu6jPK/f8TCDZSefCgFUmks/Zv7LRHoe5H3xttV7RxjUwJUn/Lpm7SwHK07E8MdGqwRNTVizH96SyWL7rvrLFTYV9BAeRhEljYdt/HMHteUEtlS0su2KXNS2bikzgxYBO0S9ILOlnE2lH6JHO9Z0heZGyXe7kvuKLsZWRym1nvDbzK6F5JH6DsubzT1/7Yqrx6jKW2IsCunzH049a8UaWOqG01Vki8PblTzobtrnBgu6psZL79YxXQgYwUcaO57nnZYh/0sB+s5oltnuA== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(396003)(376002)(366004)(346002)(39860400002)(136003)(451199021)(478600001)(31686004)(66946007)(66556008)(66476007)(6916009)(8676002)(36756003)(4326008)(41300700001)(2616005)(83380400001)(38100700002)(31696002)(6486002)(86362001)(2906002)(5660300002)(6666004)(54906003)(316002)(8936002)(6506007)(53546011)(6512007)(26005)(186003)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?UzJZZFF4Yk1ZTVJKbzR2REZTNmc1djM2T0hySG83NjNCeWREdGFpc3ZZSVVi?= =?utf-8?B?T1JLc2lrVS91OUs1Z3JiZUJYUjhYT3E4TWtQLzg0TUpZdm42eXZLQXNGMExy?= =?utf-8?B?dXZOZUFWS3RXWUU3YldKUzRoajRML1Z1SWJaaGtURkI2RDZrdzlhTUkrWHNL?= =?utf-8?B?OGVQNXRUS0IzZzNIUThUb013MzF3RGRneTl4RzN0TjJFK2JWbzhsY3JNT3NX?= =?utf-8?B?bENlUXFkbHI3d28vSnpTOXByRmhUMGhodXA5UWJhU3ZLaTcyOUFNRXNmcHdj?= =?utf-8?B?QkEwQm1JWnAzeTVRWHBRY29oMG11MnZSbzdENzF2eFVGZnZLTm5hcS82VzFn?= =?utf-8?B?VE1uY0R4enZxYVJsb29PWHRVNGVXdHBIbTA0R1A5djU1ejRRcGFGZUdsSmlo?= =?utf-8?B?TUE5Uzdqd0pUMVVoM3VEdE14TVFIR3dhY21GM3ZiOUNWb1MzWW1KUnQrdXJW?= =?utf-8?B?UUpRVzBTUFZVWmw4SWppZzdmVGtNeWh0MWlxdlUxODZKcnRrN2hTL2hjRHBT?= =?utf-8?B?citZU0NTTlRacXh4cFhxWFJwZ21yK1IzWkRhTEVYYi82dTVDcVZEWWk4dmlT?= =?utf-8?B?OUExN3dLRDl1WVRqaDl3MkRQcTR2emVxVGtTUjJVWWNUU0VoNXJnRG9vVXh5?= =?utf-8?B?NElZZ3JMR2hxWm5BYStqdFA1RDErcC9sVTJna1JENk1McWtLa1ZGV09jVi82?= =?utf-8?B?ZWRCZmlvWTZQVUhoTXJsMHQrZytqZkplTUsvcG02ZExRdTY4ZWErMDA5WUwx?= =?utf-8?B?b09zblRTSy9IUnY2dXlIUURXS0t4T3QrcGcvUUhYWTdZWGl2ZS82dm1FSldu?= =?utf-8?B?SGhUa1VpTnVxWkthUUFLRHNZQnY4T1BDelQyRlV0dnpQZ0pSZS81U25EeHpD?= =?utf-8?B?V21QTHlFd01mbDVVZVRkSEpVQ3R6clJvR1NyVUo3SW9pZWIzOUtoc0JsREli?= =?utf-8?B?Q0kvMndMWjMxNFNiaklxaHVCWWNlSW5QVSs0bCtQdDU2dG9ka0JKaHhJaTRs?= =?utf-8?B?RllTUUhtekRFYmxFanZPWHRjM0JLcVNwS3I3RFU0dHc0TEY5cS9odUZmOXBD?= =?utf-8?B?bDh0S0l2ckphc09kb3Bpck9VM0FxdmNEQU5ITlZDTEhxRVdyb0tvV2toQnpX?= =?utf-8?B?S25TQ0JkWnN3UktTRzYrVUpreG9XYnlGd1pGc2Urclh5M0NJRWIzdDZ2L1lu?= =?utf-8?B?L3NnMHJ4RmNNQkcwYmVCUmE3TngxODJab2JReThVUFZQSFJ4bW1VR1lNK1Q5?= =?utf-8?B?WTVTTFNldTY4c1B2aHA2ZFg0UUwwc3FsOTNFeWlNUEx4U1NINGpZM2oyTGln?= =?utf-8?B?eTdDa0Z3MnV4NlMzS0ZqbXdld3YrUmNzZnJXajUvbkdiM1BvOGJoRWZocWpV?= =?utf-8?B?ejFGSGxPNlhocUNFbHduS3RBcmVnbzZtM1NnVlVHWWgveHlBMU1xRFpDd3ZP?= =?utf-8?B?eVpEbXVyYklzYUN5Vzh3ZzZTNGo1di9vNkx4MllvakpGVXZIQUpIVUdhTzA1?= =?utf-8?B?R3JTV0JKZG9hM2l3UFNObU51ZVdmamkxOEcyditUeVVlL1JjU0xTMmN0cEY5?= =?utf-8?B?eXdaTUZOQ1NDM05wSHlDSC9hWWo0MjNEVTl3Q0JwWDdqYU1GcEhNSTJ0anVW?= =?utf-8?B?dkJ0aUtRUitsWkthbWFncHF6ZGNwS3ZCM3o5SEROb2xtbE1mbHg5UlZTcWVT?= =?utf-8?B?SSt4Z1lyQVU0eGpWVDlFR01rTU5IMDB4REdzUHdnYTVtTndjNVpPRTRDTG9K?= =?utf-8?B?WnM0TUFTaU41UEVYTnNJa2N6SHdFaW5DVG1xOFpqNnBCM3U1dkszazZYVUps?= =?utf-8?B?NFVkYXpUT0p0Vnl6d05rTzNOcUJJOUo2c2tRVjRyeXFPTlBpbmVLVkQwaHFL?= =?utf-8?B?N0c3UVBYcDJtVGNOTXVKYTlRUlE4N1luUDVCMHNpdmdRaVR1U2tsMm8zUlc2?= =?utf-8?B?WTBodURpZWVxK3JmK3JOaklNTW8zdktvS0ZwM052OExWSG5MUjBZWHNnQlhU?= =?utf-8?B?MmpZWEdIT1l3OTFocmc3MWlJY2VzYTdVWWQ2Vk9kQWNseGpvTXlyK1Fiamox?= =?utf-8?B?RDBJRnQrY3VyRThzMVFNWjRNSHBCdjYyUEZDQ0RIb2NnNmN5ZThOSjVlQnJP?= =?utf-8?Q?RAyiEtse+LZIkL/FnBSDhlhV0?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 5560c923-2a9d-48ca-0dbb-08db709c9927 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Jun 2023 08:10:09.3746 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: ZmLvxiB1zqgMPpnmTx4NNpje3wudeH4NZcf4Q0aXc8h9mD3hjVmNScFCrO5gJHen+iHmUhyclrlrP/PDcZuPpw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR04MB8163 On 16.06.2023 20:23, Andrew Cooper wrote: > The asm forming early error handling is a mix of local and non-local symbols, > and has some pointless comments. Drop the "# Error message" comments, > tweaking the style on modified lines, and make the symbols local. > > However, leave behind one real symbol so this logic disassembles nicely > without merging in to acpi_boot_init(), which is the thing that happens to be > immediately prior in my build. > > No functional change. > > Signed-off-by: Andrew Cooper Reviewed-by: Jan Beulich with one request: > --- a/xen/arch/x86/boot/head.S > +++ b/xen/arch/x86/boot/head.S > @@ -142,25 +142,27 @@ efi_platform: > > .section .init.text, "ax", @progbits > > -bad_cpu: > - add $sym_offs(.Lbad_cpu_msg),%esi # Error message > +early_error: This symbol, which isn't really used except by .size/.type below, could do with a comment saying that it's intentionally here despite having no real reference. > @@ -202,6 +204,9 @@ not_multiboot: > .Lhalt: hlt > jmp .Lhalt > > + .size early_error, . - early_error > + .type early_error, @function At the 1st and 2nd glance this looks unrelated to this patch. Which isn't to say I'm opposed, but of course once we have settled on an annotation model, it'll need touching again anyway. Jan From xen-devel-bounces@lists.xenproject.org Mon Jun 19 08:16:06 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 19 Jun 2023 08:16:06 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550854.860040 (Exim 4.92) (envelope-from ) id 1qBA3L-0007j8-NA; Mon, 19 Jun 2023 08:15:59 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550854.860040; Mon, 19 Jun 2023 08:15:59 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBA3L-0007j1-Ix; Mon, 19 Jun 2023 08:15:59 +0000 Received: by outflank-mailman (input) for mailman id 550854; Mon, 19 Jun 2023 08:15:57 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBA3J-0007is-Fk for xen-devel@lists.xenproject.org; Mon, 19 Jun 2023 08:15:57 +0000 Received: from EUR02-DB5-obe.outbound.protection.outlook.com (mail-db5eur02on20607.outbound.protection.outlook.com [2a01:111:f400:fe12::607]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 832f1a2e-0e79-11ee-8611-37d641c3527e; Mon, 19 Jun 2023 10:15:55 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by VI1PR04MB6830.eurprd04.prod.outlook.com (2603:10a6:803:132::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.35; Mon, 19 Jun 2023 08:15:46 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6500.031; Mon, 19 Jun 2023 08:15:49 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 832f1a2e-0e79-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=ewhxT6Gs9IvAW0rybB57f+D8NUJKXp8Tn9QiCAhzyeNRifcyuZVKGePPcJsRSp5dm6wFTTVVhjxZNFmRGMN7kbUfmXZdJZG0NB8ANoJqtP2bWLRAWZq6Tkamggo2GI9aBXVl9zmNHBOje6apDvYnhrs8fhJj1OlkuWaibUkKSUMswD2ld4u1OcwDbImUl/eeBVejQ2JJJH3bRrDdYzxx5fTiiLXdwql9KpHzMvg3hvQtljkBWu8yrfT05HqYnWjP6MQPZdfQilfD3zDRxuGSMdH3B5W6BS4jFvQGXVXBreNZcPuvTHp+V2vGz/n/WuN3XG4+RbTkDrwWnR2yCbIvMg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=go0JS0HA4u0Kgnz+KBvafMfe0VuKi2wXRAKEo2ro7dY=; b=i108oflLk+TUHoJKkyP1K7itiqqTPXNJDL/b/BEt91aSyWZHKTgAQlvlKzRj72lrxln3rIr1DQ7PwvHikHmETtTnsA2hV7esKWc7+9a7pyQayRTSKX+4DItmtedCN+rgoL1+BdKq2gFUMrnZBSmX0Tyf5knPVO6AH/OhyV4PFVFTh7xFzXHyFhlHTncNl3S6Kr0xIhKtxb0kAGvwbc7R5Tl+OFDpBkqvsGEkXAdAN5/jCFxy/ZUhY7adZ1oKD9mFL15CNyiR9Cuyprrs0Jk15O2nRW1ISgG+YvNnSqu6qEQkFOiD+cvNBGTQR4w9/pnAyyj00dxbEYbJ8vc4faQb4g== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=go0JS0HA4u0Kgnz+KBvafMfe0VuKi2wXRAKEo2ro7dY=; b=vW/t3I5VCS79SVJOhfNg2X1j3RjjbmPqFN9avzAzF14EVE8bcmBy/T226ODIlkE8ZfQNpDXRvXJg3DZFSkRaY2os9XATrAiDfkATjJaoOPwa52+ipUMZlvt04rntnOybn3ZrzTXkMbkgFnHmvlXxOBK4Pq1I7nx+RbeWuYo4iA0CJ/asP16Wdh/+gAtTcrALok99TNJmlk/KW/isvQYIqnLBq1ASFnNuQyQiBP4U97aKzZXc5OEpeRK1j8bUSbxlbIPbSk+JICpVCGQqEjtLIBOr82HJr5LCYG09MUQTea04VlwgrMQTGMJOBAAZtlq0hugFOh1k0BcMTo8Qnrg8sA== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: Date: Mon, 19 Jun 2023 10:15:51 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v2 2/2] x86: Add Kconfig option to require NX bit support Content-Language: en-US To: Alejandro Vallejo Cc: Andrew Cooper , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , Xen-devel References: <20230615153157.444-1-alejandro.vallejo@cloud.com> <20230615153157.444-3-alejandro.vallejo@cloud.com> From: Jan Beulich In-Reply-To: <20230615153157.444-3-alejandro.vallejo@cloud.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR2P281CA0023.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:14::10) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|VI1PR04MB6830:EE_ X-MS-Office365-Filtering-Correlation-Id: 4d8157a4-0321-430d-cb0b-08db709d63ff X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: qr08gDGMCLrU9Oa518AaNMv4C7MKMKeZqntWquzBBFineRXvl5xtUulv/1wZrv26aSB0b9SryutHG/IvtEfPmbTp54dF5R706Q4BwWBY3znl4cvMD1/UJtsoeyau0TPM26iE5voYmmzlwwdJXGMOoJW+RAxgT8zfCilr5vqv5vlK06E6f7qhJPz04QgIJ24ZtxOc08gVYMPCifHf6Zt9UglbSkkLOgeJjBAtjQF2Ye1vjJiJ5Y/7uQCYKsqS67O3rbl23zVcLleGuvcUUfA5dknpxUC/hhXW2j6xwvXrzOW5zcIqXxSjKDCdYm7ZoY1fmGP0tQFhmiRQrwBJwn2kYDLWOp9UKgo/SQD65nIcAF+MxRyfQTkLao0VaFu7kbcWJ2oTT403rXQUxzXQntA+qSYePKeLLPYZ7qWH97/uZm4sxrD7V0oAZhCwovCwTR5P5IrXIxRslgpD2ieTqzLHKD+IvLYkIGsLHMVBE/KAGICcYr4Rj0vDnctQbNpbSU5ZAM+gYuLrK1Zd0ykgCE7+8jar+MXQsV2LePW4dCIakCPZp7IEmY5X74awtAdgUBySUseJcCB8oHEMlBwixFDD7j/vTjZ4HOkwfocvi065YlGuiz75Uc++kb2SUhtLY+Ni1CH6WjKsI2lFzFNdMfJ1Dg== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(376002)(366004)(346002)(39850400004)(396003)(136003)(451199021)(38100700002)(6486002)(53546011)(6506007)(26005)(186003)(2616005)(6512007)(5660300002)(8936002)(41300700001)(8676002)(36756003)(2906002)(6666004)(478600001)(66946007)(66556008)(4326008)(6916009)(66476007)(316002)(54906003)(31696002)(86362001)(31686004)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?eURUMnBRNXpZb0JWWlJYWk9kdzFoWThrdlU2UlY4VVMybzFQUG5XNEhYUHJi?= =?utf-8?B?YTNlbVQ4a3dNbFp3UVVWMUVYOHBEckErcEQxdG5lNm1ldG9yTEg0NnVPWkxE?= =?utf-8?B?dU9GK2tCVHRSSklyOVg0QkQ3MjMya01RTkhlNnFFWWxNbnVNeWZ6Z1dJeWwy?= =?utf-8?B?M3ZjNVZvV0FHK0V6bHFGenppN1RUemZyR1dHaHI0SWY0cFVkcitScW9MU256?= =?utf-8?B?WWZxQi82UHJVeVFxcDlvQ0JiUVgrdzZTSmZTOUh0cHQ3Q0pzK3dJMVlHMVUx?= =?utf-8?B?R3pKZnMxcnYxbEI2dWFjRXhMZy9hYzVLWU1kdUdzZjNIWUpCSWJ6YVNhK1c1?= =?utf-8?B?VG9zWHZhNzc5dlNMa0VFR1FISEx6bnBuYWx1ckdhQUJLUkc0M3pWRFhMbXUw?= =?utf-8?B?YU9pc3VKbVNIb2VlMzJUZHpUSU5Ybjh3K3Y0SmRoUXdaejV6WiszZjhwK3NQ?= =?utf-8?B?cDJjRXlLUUpEaVNFVGF6T2MxbDVTN3NsQmF0MzFSMk5FTVBvU0NFdk9TUzUy?= =?utf-8?B?bnp6U3BWK1NSYVBTVWFkNTY5d0lCbDF1Mjd0Qk12LzNIUiszSm95dW9LWDlV?= =?utf-8?B?NWJzZWdyMC95UXM2NmxERElqZzVQSTNtRmptcVZ1Q09qdVRzNktpc3R6aXI3?= =?utf-8?B?VFVWQUdpVHNkZ3Y5MnErNUVJdklITmpCaGdqLzJtS0R4QkJBTEgvQ0RmejJy?= =?utf-8?B?RUt0dG9jbHJEbzRzR0E5UkZwSU5nZWNnOXRLcDFIVDNRSHkraG1YOGNSbmpZ?= =?utf-8?B?K0Q2cXJMQUpYSWh2WFNJeTloTmRNZjNTQWcyRURaYnlwbTNWQm5KcC9aNlVl?= =?utf-8?B?TWdhZzJIaS9UMExlTWRVTzNlaEhPcmh5WnN6RFR3ajBzaVVqdy9iR3JUcTNs?= =?utf-8?B?bGhaQWtqTDVBWjJTT210bGZCVmR3VXlHM2NPM05zYzlhOUpvdkQyODVGZmVG?= =?utf-8?B?RE1seHFkYklFeXlHQWxLMXRKM2VCRElrRjV6cldCU1FBdHoyNlB5eUFsU1ZT?= =?utf-8?B?MDVmZURrczRyNGtvQ0hoUjJIUEtpdjFBSzZSMmIzd3N1di9pamNSR0w2c0Iy?= =?utf-8?B?SEpMbzdvRkZGdXJERi8zVVh0TFg2emVyNXVoaCttMms0ek5HRjZ2WU9nTS9u?= =?utf-8?B?bVErZ212Vy9aaGpnYjB5VHRtLzczU3VDRnIwQ1p4N1pzQ2J1ZGovVERaYnZN?= =?utf-8?B?ZmJHbjV4TDkxQUNsUFFPb3FEbTVaVUFYcDgvV1JQVitSNnNkK3I3WG9pUEx2?= =?utf-8?B?Y3lpOTRWRXBSY3VFSk92K0dFVHRTRDFsN2NxN3hqY1Rvd0Z5bG9maHNhd1NG?= =?utf-8?B?bXhuWnZaQU1pdUxZNjYvcHF2WVc1TGpnUzgyRjdaMmFnZXdpOTVkUlA3TUJz?= =?utf-8?B?VkR5TlptR1loWWQvWDZIVEtNWU1OMGE2TnN4WFV2cEJVNC8rc1B4SVV2REVK?= =?utf-8?B?TWN2S09EdlJ3c3ZwQmxBWGlBdkl3S2FWRzN5SU1IbHpBM3VrNEdSQm1aZitP?= =?utf-8?B?V1djOGsrWVhyVjh3K1hpblQzR3RPY0NCTzFmM0NXRWcydURzNjh2QjRmU2JO?= =?utf-8?B?RVNtUytrWTJDS3R6a1NCWExrZXF2ckhYRFNqZVJpa3YwUzYwRnIzWDF3Y0pk?= =?utf-8?B?RVVjWlI4QUVuY05kNDZPTHdRWG03Rml4VnNyYUtIL09CeHp2WmlrcnZybE9v?= =?utf-8?B?d2pGWUVGZVd1YjNVUFo2TVhFd3R4cTJ0djNBRTFQaTR1UHlBZWtIdm82ZUlu?= =?utf-8?B?RXZMVUlxWThJandsempqMmZhSS93dTROSFhSYml5UFVjODBwQ2ZTUVpybElt?= =?utf-8?B?a1czcFVWSlVGZnEyT2VuVXY5UXpDWTkvN1RSaU1kU1hWQnRHOGUvcGJzS3Zk?= =?utf-8?B?cFZaMGxhOVpLRExuYVdtN1M5NFFYTG40QWR4VWdSYmRrQzc5MVAzV0pFakNj?= =?utf-8?B?V0IvdUZ0SW5JTEVkTytzRHNDUEMza0xGSWYxZ2wycCtub25VRElEdmtKbXZC?= =?utf-8?B?R1E0VTFBTEdDYWNuNGJteXpVQnh6Ui9CeEpPQ0o1cXp6TkhxYi94SGxwTkFw?= =?utf-8?B?Q2xCeTZ0aS83clhIQnlaOVppM0tnellOSjdTbEw3bi9ZMXBjRFBQNy9DeFFY?= =?utf-8?Q?sJcIQbwecDhy3r0S+cpxqE1+y?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 4d8157a4-0321-430d-cb0b-08db709d63ff X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Jun 2023 08:15:49.3998 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: SZfC0krWYJDh4pAhI8YyQO2kHOReAmsALJR0YAeJHchsR/GSSRiZemRQLN4SomDq6VNlKn+sICf27f2HJXc+qQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR04MB6830 On 15.06.2023 17:31, Alejandro Vallejo wrote: > This option hardens Xen by forcing it to write secure (NX-enhanced) PTEs > regardless of the runtime NX feature bit in boot_cpu_data. This prevents an > attacker with partial write support from affecting Xen's PTE generation > logic by overriding the NX feature flag. The patch asserts support for the > NX bit in PTEs at boot time and if so short-circuits the cpu_has_nx macro > to 1. > > It has the nice benefit of replacing many instances of runtime checks with > folded constants. This has several knock-on effects that improve codegen, > saving 2.5KiB off the text section. > > The config option defaults to OFF for compatibility with previous > behaviour. > > Signed-off-by: Alejandro Vallejo Just one nit on top of Andrew's comments: > @@ -697,9 +708,11 @@ trampoline_setup: > jnc .Lno_nx_bit > > .Lhas_nx_bit: > +#ifndef CONFIG_REQUIRE_NX > /* Adjust EFER is NX is present */ > orb $EFER_NXE >> 8, 1 + sym_esi(trampoline_efer) > .Lno_nx_bit: > +#endif In the comment the first "is" likely was meant to be "if". Jan From xen-devel-bounces@lists.xenproject.org Mon Jun 19 08:18:26 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 19 Jun 2023 08:18:26 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550861.860049 (Exim 4.92) (envelope-from ) id 1qBA5X-0008M3-64; Mon, 19 Jun 2023 08:18:15 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550861.860049; Mon, 19 Jun 2023 08:18:15 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBA5X-0008Lw-3I; Mon, 19 Jun 2023 08:18:15 +0000 Received: by outflank-mailman (input) for mailman id 550861; Mon, 19 Jun 2023 08:18:14 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBA5W-0008Lq-7i for xen-devel@lists.xenproject.org; Mon, 19 Jun 2023 08:18:14 +0000 Received: from EUR02-DB5-obe.outbound.protection.outlook.com (mail-db5eur02on20630.outbound.protection.outlook.com [2a01:111:f400:fe12::630]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id d555511c-0e79-11ee-b234-6b7b168915f2; Mon, 19 Jun 2023 10:18:13 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by VI1PR04MB6830.eurprd04.prod.outlook.com (2603:10a6:803:132::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.35; Mon, 19 Jun 2023 08:18:07 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6500.031; Mon, 19 Jun 2023 08:18:10 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: d555511c-0e79-11ee-b234-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=ain+BMaT2ua8zSmT0ijwNM++zUaNPduSQ9zQAjjVrBw0WsTo2Uq0CucgSESTAS2E7VVNGUIomjvchQYpMw9IsJFEQ1kMi2QGdHRhtdMkKUeU52hZdd4Ustg9H24UWwjCGhP9QK981Ek4UGY5JLjm76PwiWmHws47v3zRZx6gR513rOIT9dy98K+u99LWlrtt6fK6jU4NeoXGqh7Z9mu8y36lFdFAZefpOg1pT3uTCuKxz5LF54X0DnlcJ1le/WokufEDInZg/h5kse/wWleYkYbnfE+NkYcayy/7IkGr+eE/So5XONf/yFF3RAPizipOW5qrC0NJutcf5VoyRZgbbw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=BvT+tZ0fHR54WGKnWebSqCvCP4gxyCoL07tHTph59i8=; b=Z+3R0OicFs4Q7AbqsY6jVLQnTR2LheEqol/TUavjFC1Sxu3twSTnzGN6HdMOrEdptuPX85lDqXjFjMLUFMVi44n6ia3bKizZVYo8GJYsZol0MZGaI9KUAfYvfyBDDch13mlMRwas5en/tYmiQNnXaJtlwBtN4dC0sYzCdFi/0YKcdXx9VInwka9fr82UzSrEOdCCA4YmCsi3HLW3SSB7Mtoul8iOAqylsFso93fHQPSeKSCiIkke13X1EHA97iKPr0BRT2ZzkRJjmzjS/RpgkZdrd6M0RowCgpVQKXHS8aG0zr46TQGWeBgHrsrExWtWRVq/Kl5dY3tPC7b6vlVStw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=BvT+tZ0fHR54WGKnWebSqCvCP4gxyCoL07tHTph59i8=; b=V80rKsWTfsBLeJ6lPQ+DGFgIcxc/sJZhZhJagFeCMp26VikMyk1k+SEOI3hp5c7mOee0Xfb/Zd2qY9hIBiF+qGo3Mzg93z9PzqxPst7SL1yfjBabHH1fsjwKqiDt/cqLNVtgZT4GcvqTLQprHhDQyO0U9qrD4hKkFvk8Ep+FS7hyH4s9kgeuWimnNZeGLDK2r86MszhJHtc1PVBzQwLGwm9BugjG2qxQwOa3Djnkd+4iEcF5gsPt4yBBUxY3qg1Zuro/sFwYznyD4/sYEtvLAN2a10eRrLkNd1bixFp2nXCcDfXG0qCgJtoby3reNVQZ4V5Nm6jY6rl8KOyh0REiJA== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: Date: Mon, 19 Jun 2023 10:18:11 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: Refactoring of a possibly unsafe pattern for variable initialization via function calls Content-Language: en-US To: Stefano Stabellini , Nicola Vetrini Cc: Andrew Cooper , George Dunlap , Julien Grall , Wei Liu , Xen-devel References: <3fc32674-af28-2a04-4eb8-059364a6a6fb@suse.com> <4522eead-bcc3-a735-3293-54ec457e83eb@bugseng.com> From: Jan Beulich In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR3P281CA0165.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:a2::10) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|VI1PR04MB6830:EE_ X-MS-Office365-Filtering-Correlation-Id: 5bedfcac-607a-497b-535f-08db709db810 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: q+fP7SGF0RHvmLUvQgl7zSy2ciqEdTLlQYwhf3Y3k3ic4sz4uH4QO8PhGFwnP3cWivip95oc7bxaUluBUHHvyBDXEGSl2VJpRQFA5hNn6dsB9yNI/CCnqs0Lk3yqrEK/O8dH31XeQa1BZZUIPmHHqmuVWMZ0FqPGVVN/0IdpxWvG5q05+1WfBo5bfFflSgVVEFZIU+aDXEY77LgRI+DAkpORtWChNG/eup/AgXJgIUgLcdAVWIZuOlOZuuJTeTjGtQxrb1H6Qe45S6ewSLuYmZUjirU6GXOapuaesv7A40slB9PS7dEwdMFgsrxn//s5OPEo1CeAB9vMPqq+6Af8lVG1U1cy2YDuK/y/o+Chsmn0L4WsQ4NMCvGNnSWZ2d9COPk0SzsuB2PBHXVgCy5uv+hgwG/3aGu27/cVX6mxmP045LICDwcY22JJGEAp13wkOQG3LAG9SWUmQmhF8yfQY/Ue032FLmdjQxNvUsOcMCKkzycwLnoN/q2h6boXSzX0m7QtmF532iO9dtkR8r3wzMUfk5uyC/yFodH2QQwrfTNnuw11NasWyx7JF9ZTET8qVTLr2t1H1i1jHjXipJ3/Yw5/5js1VEGQPQKky2IAkl6f7ZEycjq+eq7Ykasu6A79er8qqyd1yH84QT1flaKfcQ== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(136003)(396003)(346002)(366004)(376002)(39850400004)(451199021)(31686004)(478600001)(66556008)(4326008)(66476007)(66946007)(36756003)(2906002)(110136005)(54906003)(316002)(31696002)(86362001)(26005)(53546011)(6506007)(6512007)(186003)(2616005)(6486002)(38100700002)(8936002)(41300700001)(8676002)(5660300002)(83380400001)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?bjZ2dnp0NWhieU85V0EwTitqdVdaK20xN1J5V0hvNDdlSUppTzEySWdlS1Q2?= =?utf-8?B?MkdsZHNrUXIzcnh3Z0JQa2VSakJaand2NFdzMUhwZXZ6d1FBR0FXU29oRUJz?= =?utf-8?B?WjdObnRTanpJb3VYTzVoVEVqU1hWNW1UemVLWnY4VnI4Z0RqNFBiOVRoMDFh?= =?utf-8?B?RkkxSC80Ky9uNTRtZk01aWlZRXNuQ0dQRUhIanU5c0xENDFlRkt1QjZZZFE1?= =?utf-8?B?SXNWOWRXWnlPUFJFYlhRbkVmWW03WTVFdXp1a2RVU2x3NFhPTTcwbjVhNmFj?= =?utf-8?B?WHN6cTI0a3QxS1U2L3lkYTBjOWxwTVNjRFRSNHNLbkp0SEYvOUdmS1p2cWdG?= =?utf-8?B?SnM5MmVHV2U1YTNTQlVrdk43M3dWTXdDZzlwMXllVEljNXpGZjNDMUUva0dB?= =?utf-8?B?SDNDaEUvNFMydjhxNFVNaXNFWXd1Ym5oMEdNTmN0aWNRbFM3UC9hTkFOQVhq?= =?utf-8?B?TUNDSElqTlArNHRZR2RlZGJFa20wWFlTQXl6UkNWQ3dUdVhudXByT1NmdkFk?= =?utf-8?B?L1Y5ay96bkVqZ3VLL0dlRGg4all5WDczZGw5MTFTclIvdnd2TGUyMm9xSS9S?= =?utf-8?B?UHJUS081V2p3cGFMSjhjcW1vVXhMcmpUTnFzdDZRTEhXakpUQlZtbnY3TUVr?= =?utf-8?B?b1Y5bHVuWGx2VUNJeUZUZzVqdHhOVVNmZDZFRUh2cTVqc0RLWWFXN3pvZzdu?= =?utf-8?B?RDBtalZVQTRQMVdZMFhnVmpzL1dHYWJXMzRlQW8wVnY3cjV2Y01FTEdsaGJ2?= =?utf-8?B?VU5sSGlOdGxqOFFlemRwM0J3Mlc5REQ0eXBEMlowQXJxaHc5KzgyTDVLZm1F?= =?utf-8?B?SjA0WHhrOUpBNjJKWEVUNUNIa2RicWxtRU1zNkVvZ0VDWEZIallNd2syMVg5?= =?utf-8?B?a0hnTXViTWJ4SzdYcjY2YXZJMkFuSm4yenRJd1l6UG1INzkvYisxbDZyWGp2?= =?utf-8?B?elEwcTdSd0JOVzFac3QxTnkzcXBwMHNhR3hSVjF5aFBQZmxDMEpIWUlxTDZ2?= =?utf-8?B?WjhkLzQyNFhzUU11UzNDck16alV0blNQaGkxRjJyb0d5Z3MwR0lTWFkyWjJn?= =?utf-8?B?ckd5TTB3VFpaTS8vajdxYkYxMVZzWC9PY3FXTFFlSmNxSDNUMUdNWlIwVzNC?= =?utf-8?B?cGlyUFBsaVNUVVh6TlJFRzhLcVk3Yng3YmI5WndqaUp3M0NOR09wZDI4SGNk?= =?utf-8?B?bmtCSXRydFZxR2VGN2FYVEVrVHc2ajhJZFNMYlNXVFlwRWxjaFhweFR5K1hE?= =?utf-8?B?cVJvaXBFcENVNXZaWXkvakdqQVIrYjdHUnptVmdtNXExOXBCTnRTcDNXMDQ2?= =?utf-8?B?cUxxdXZhaCtzSm0ydDhGd2liVkhCZTgyWmN5YjdHcVVRYkY0ZllHSVU2c1VT?= =?utf-8?B?TGVaenRSa0ZQVUFyNlJBbjhyVTh2TXg3LzFmSFp2L0J6WS8zWUNUOUI3NDRS?= =?utf-8?B?T1JtMUpDMEF0K3E2Qmx1N0EzSHFQb0Z4c3VvMzJVdUtaU1FzK2tkcGM0MGlX?= =?utf-8?B?U1h2eFVwVnBrdmdtZDlzQlJMZG5jakZzcVBsdC9kaDJhb3o1RVlGSTNYSnV3?= =?utf-8?B?ZjZFd2NYK3Ixd0RtdytmS2VCcXFYN29wd1F3UTN1emwvbmRQOEtzbTl3U2V0?= =?utf-8?B?MStUZk9wSFRqMmRCd3BZcDRBSkFTb2pkZHhQVkdFVUZnY1haaUgyTFlNUmkv?= =?utf-8?B?M2NLeCs2QlFIVVZOei9xelJ4UGhsMStKV2JWaDNVUHJ4TUVFaFJScHhsK0hy?= =?utf-8?B?UTZWNnFDeVpHcjZ6ZWRQNDgzUEoxYlJrUndodnRSNHUwaTFNOWtWc1VMNVBW?= =?utf-8?B?dy9zQWpKdWxRZjdCRFF4aXdwdldJRXVEdHFGY0RGdkJ3cXkwSjhFcFBWaldy?= =?utf-8?B?OGljQmpmZXpTYmlacjh1NHN3aTVEM3prdUF4R09uaGI3bVVzZU5qRDhHUE5y?= =?utf-8?B?MzV6Rml6bXZ6TmVvV1pZRkJhRkRCdG5PQ1FnOUhlcjU4OEVDSXdJeWpFWVpS?= =?utf-8?B?NFljMWQ0NDc1eVR2Y004WlJBdnJEcVFPZitkcU5POThReFlOaUhQNDM5RWpx?= =?utf-8?B?S2RqYWpBQ3JFWThOWlJDc3ZZRUYyY1dQTTNOVWVGMFdnVlJUYTJWaERqYVNz?= =?utf-8?Q?xNA2dfFk3urKY38TCad3X3fkQ?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 5bedfcac-607a-497b-535f-08db709db810 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Jun 2023 08:18:10.4578 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 7TjFx2BRAypNCi43APCTA5d64LpeTzqW4alaXJbh+eb2dAJDNla/jCqCXS0obft+VJCyKthd7TZ1FnXCXOxwVg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR04MB6830 On 16.06.2023 22:56, Stefano Stabellini wrote: > On Fri, 16 Jun 2023, Nicola Vetrini wrote: >> On 16/06/23 09:19, Jan Beulich wrote: >>> On 15.06.2023 18:39, nicola wrote: >>>> while investigating possible patches regarding Mandatory Rule 9.1, I >>>> found the following pattern, that is likely to results in a lot possible >>>> positives from many (all) static analysis tools for this rule. >>>> >>>> This is the current status (taken from `xen/common/device_tree.c:135') >>>> >>>> >>>> const struct dt_property *dt_find_property(const struct dt_device_node >>>> *np, >>>> const char *name, u32 *lenp) >>>> { >>>> const struct dt_property *pp; >>>> >>>> if ( !np ) >>>> return NULL; >>>> >>>> for ( pp = np->properties; pp; pp = pp->next ) >>>> { >>>> if ( dt_prop_cmp(pp->name, name) == 0 ) >>>> { >>>> if ( lenp ) >>>> *lenp = pp->length; >>>> break; >>>> } >>>> } >>>> >>>> return pp; >>>> } >>>> >>>> >>>> >>>> >>>> It's very hard to detect that the pointee is always written whenever a >>>> non-NULL pointer for `lenp' is supplied, and it can safely be read in >>>> the callee, so a sound analysis will err on the cautious side. >>> >>> I'm having trouble seeing why this is hard to recognize: The loop can >>> only be exited two ways: pp == NULL or with *lenp written. >>> >>> For rule 9.1 I'd rather expect the scanning tool (and often the compiler) >>> to get into trouble with the NULL return value case, and *lenp not being >>> written yet apparently consumed in the caller. Then, however, ... >> >> >> You're right, I made a mistake, thank you for finding it. >> I meant to write on `*lenp' in all execution paths. >> Please, take a look at this revised version: >> >> >> const struct dt_property *dt_find_property(const struct dt_device_node *np, >> const char *name, u32 *lenp) >> { >> u32 len = 0; >> const struct dt_property *pp = NULL; >> >> if ( np ) >> { >> for ( pp = np->properties; pp; pp = pp->next ) >> { >> if ( dt_prop_cmp(pp->name, name) == 0 ) >> { >> len = pp->length; >> break; >> } >> } >> } >> >> if ( lenp ) >> *lenp = len; >> return pp; >> } > > Nesting more will make the code less readable and also cause other code > quality metrics to deteriorate (cyclomatic complexity). > > Would the below work? > > > const struct dt_property *dt_find_property(const struct dt_device_node *np, > const char *name, u32 *lenp) > { > u32 len = 0; > const struct dt_property *pp = NULL; > > if ( !np ) > return NULL That's what we started from, but leaving *lenp not written to. How about ... > for ( pp = np->properties; pp; pp = pp->next ) for ( pp = np ? np->properties : NULL; pp; pp = pp->next ) ? Jan > { > if ( dt_prop_cmp(pp->name, name) == 0 ) > { > len = pp->length; > break; > } > } > > if ( lenp ) > *lenp = len; > return pp; > } > From xen-devel-bounces@lists.xenproject.org Mon Jun 19 08:23:41 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 19 Jun 2023 08:23:41 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550866.860060 (Exim 4.92) (envelope-from ) id 1qBAAd-0001Nq-PA; Mon, 19 Jun 2023 08:23:31 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550866.860060; Mon, 19 Jun 2023 08:23:31 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBAAd-0001Nj-M8; Mon, 19 Jun 2023 08:23:31 +0000 Received: by outflank-mailman (input) for mailman id 550866; Mon, 19 Jun 2023 08:23:30 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBAAc-0001Nd-1G for xen-devel@lists.xenproject.org; Mon, 19 Jun 2023 08:23:30 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBAAY-0006xX-Dk; Mon, 19 Jun 2023 08:23:26 +0000 Received: from 54-240-197-238.amazon.com ([54.240.197.238] helo=[192.168.19.123]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qBAAY-0003Gd-7f; Mon, 19 Jun 2023 08:23:26 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=ToZK/rRqpeJ3GFiFz5KM6RNwFEnwee3jZ5zIvCrPoUU=; b=jbsK4R+fD2IbXUg80Cdu7cwyM0 483CM9+IALJi2K6NMRKQZH4QnAMIQCpKLfXxQ0Ign7cb6Sqn6gtrQCDNVrpdGkCKpMpZs//gGA7Q9 /ZERR+UHG1FB6FtVm/kBZEE6DfT6JmER0/gxGdUy+hsVMmckiF5N0dCBbIRPnYJ3oZjY=; Message-ID: <1d34618d-2796-e26a-b339-ac8f1fcb8c82@xen.org> Date: Mon, 19 Jun 2023 09:23:24 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: Refactoring of a possibly unsafe pattern for variable initialization via function calls Content-Language: en-US To: Jan Beulich , Stefano Stabellini , Nicola Vetrini Cc: Andrew Cooper , George Dunlap , Wei Liu , Xen-devel References: <3fc32674-af28-2a04-4eb8-059364a6a6fb@suse.com> <4522eead-bcc3-a735-3293-54ec457e83eb@bugseng.com> From: Julien Grall In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit On 19/06/2023 09:18, Jan Beulich wrote: > On 16.06.2023 22:56, Stefano Stabellini wrote: >> On Fri, 16 Jun 2023, Nicola Vetrini wrote: >>> On 16/06/23 09:19, Jan Beulich wrote: >>>> On 15.06.2023 18:39, nicola wrote: >>>>> while investigating possible patches regarding Mandatory Rule 9.1, I >>>>> found the following pattern, that is likely to results in a lot possible >>>>> positives from many (all) static analysis tools for this rule. >>>>> >>>>> This is the current status (taken from `xen/common/device_tree.c:135') >>>>> >>>>> >>>>> const struct dt_property *dt_find_property(const struct dt_device_node >>>>> *np, >>>>> const char *name, u32 *lenp) >>>>> { >>>>> const struct dt_property *pp; >>>>> >>>>> if ( !np ) >>>>> return NULL; >>>>> >>>>> for ( pp = np->properties; pp; pp = pp->next ) >>>>> { >>>>> if ( dt_prop_cmp(pp->name, name) == 0 ) >>>>> { >>>>> if ( lenp ) >>>>> *lenp = pp->length; >>>>> break; >>>>> } >>>>> } >>>>> >>>>> return pp; >>>>> } >>>>> >>>>> >>>>> >>>>> >>>>> It's very hard to detect that the pointee is always written whenever a >>>>> non-NULL pointer for `lenp' is supplied, and it can safely be read in >>>>> the callee, so a sound analysis will err on the cautious side. >>>> >>>> I'm having trouble seeing why this is hard to recognize: The loop can >>>> only be exited two ways: pp == NULL or with *lenp written. >>>> >>>> For rule 9.1 I'd rather expect the scanning tool (and often the compiler) >>>> to get into trouble with the NULL return value case, and *lenp not being >>>> written yet apparently consumed in the caller. Then, however, ... >>> >>> >>> You're right, I made a mistake, thank you for finding it. >>> I meant to write on `*lenp' in all execution paths. >>> Please, take a look at this revised version: >>> >>> >>> const struct dt_property *dt_find_property(const struct dt_device_node *np, >>> const char *name, u32 *lenp) >>> { >>> u32 len = 0; >>> const struct dt_property *pp = NULL; >>> >>> if ( np ) >>> { >>> for ( pp = np->properties; pp; pp = pp->next ) >>> { >>> if ( dt_prop_cmp(pp->name, name) == 0 ) >>> { >>> len = pp->length; >>> break; >>> } >>> } >>> } >>> >>> if ( lenp ) >>> *lenp = len; >>> return pp; >>> } >> >> Nesting more will make the code less readable and also cause other code >> quality metrics to deteriorate (cyclomatic complexity). >> >> Would the below work? >> >> >> const struct dt_property *dt_find_property(const struct dt_device_node *np, >> const char *name, u32 *lenp) >> { >> u32 len = 0; >> const struct dt_property *pp = NULL; >> >> if ( !np ) >> return NULL > > That's what we started from, but leaving *lenp not written to. How > about ... > >> for ( pp = np->properties; pp; pp = pp->next ) > > for ( pp = np ? np->properties : NULL; pp; pp = pp->next ) > > ? I would be OK with that. Maybe with an extra set of parentheses around ' np ? ... : NULL' just to make visually easier to parse. Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Mon Jun 19 08:29:08 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 19 Jun 2023 08:29:08 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550871.860070 (Exim 4.92) (envelope-from ) id 1qBAFs-00020E-Cr; Mon, 19 Jun 2023 08:28:56 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550871.860070; Mon, 19 Jun 2023 08:28:56 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBAFs-000207-9G; Mon, 19 Jun 2023 08:28:56 +0000 Received: by outflank-mailman (input) for mailman id 550871; Mon, 19 Jun 2023 08:28:54 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBAFq-0001zx-Nq; Mon, 19 Jun 2023 08:28:54 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBAFq-00074E-BE; Mon, 19 Jun 2023 08:28:54 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBAFp-0003fg-Tp; Mon, 19 Jun 2023 08:28:54 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qBAFp-0005wu-TF; Mon, 19 Jun 2023 08:28:53 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=ADkwir8yvO1yFnjL7J+mhyHbTX1/SyAajgIb5H0XKrs=; b=yvXGQE0ou0fV7JI31cgIOAzTtk efyWKRBQuPDHIMSVU+f4uNKVWivuRRJi1mkJxGBEE4phu/2H74vG73io8TqES7uyhKHmCf2nJF1pL I4hwN/rXHYovlNC3QCFVBLx9LKHvZBzKgEBuyLtzj7PlLfTrtxX2dFr3IsYqDzhCLKqw=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [linux-linus test] 181497: regressions - trouble: broken/fail/pass X-Osstest-Failures: linux-linus:test-armhf-armhf-libvirt-raw::broken:regression linux-linus:test-armhf-armhf-xl-vhd::broken:regression linux-linus:test-armhf-armhf-libvirt-raw:host-install(5):broken:regression linux-linus:test-armhf-armhf-xl-vhd:host-install(5):broken:regression linux-linus:test-armhf-armhf-xl-credit1:xen-boot:fail:regression linux-linus:test-armhf-armhf-xl:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-credit2:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking linux-linus:test-armhf-armhf-libvirt:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-arndale:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-examine:reboot:fail:nonblocking linux-linus:test-armhf-armhf-xl-rtds:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-qcow2:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-multivcpu:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-raw:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-qcow2:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: linux=45a3e24f65e90a047bef86f927ebdc4c710edaa1 X-Osstest-Versions-That: linux=6c538e1adbfc696ac4747fb10d63e704344f763d From: osstest service owner Date: Mon, 19 Jun 2023 08:28:53 +0000 flight 181497 linux-linus real [real] http://logs.test-lab.xenproject.org/osstest/logs/181497/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: test-armhf-armhf-libvirt-raw broken test-armhf-armhf-xl-vhd broken test-armhf-armhf-libvirt-raw 5 host-install(5) broken REGR. vs. 180278 test-armhf-armhf-xl-vhd 5 host-install(5) broken REGR. vs. 180278 test-armhf-armhf-xl-credit1 8 xen-boot fail REGR. vs. 180278 Tests which did not succeed, but are not blocking: test-armhf-armhf-xl 8 xen-boot fail like 180278 test-armhf-armhf-xl-credit2 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 180278 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 180278 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 180278 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 180278 test-armhf-armhf-libvirt 8 xen-boot fail like 180278 test-armhf-armhf-xl-arndale 8 xen-boot fail like 180278 test-armhf-armhf-examine 8 reboot fail like 180278 test-armhf-armhf-xl-rtds 8 xen-boot fail like 180278 test-armhf-armhf-libvirt-qcow2 8 xen-boot fail like 180278 test-armhf-armhf-xl-multivcpu 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 180278 test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qcow2 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass version targeted for testing: linux 45a3e24f65e90a047bef86f927ebdc4c710edaa1 baseline version: linux 6c538e1adbfc696ac4747fb10d63e704344f763d Last test of basis 180278 2023-04-16 19:41:46 Z 63 days Failing since 180281 2023-04-17 06:24:36 Z 63 days 119 attempts Testing same since 181497 2023-06-18 22:11:44 Z 0 days 1 attempts ------------------------------------------------------------ 2740 people touched revisions under test, not listing them all jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl fail test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-freebsd11-amd64 pass test-amd64-amd64-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale fail test-amd64-amd64-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 fail test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 fail test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine fail test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt fail test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu fail test-amd64-amd64-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-amd64-pygrub pass test-amd64-amd64-libvirt-qcow2 pass test-armhf-armhf-libvirt-qcow2 fail test-amd64-amd64-libvirt-raw pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw broken test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds fail test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-amd64-xl-vhd pass test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd broken ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary broken-job test-armhf-armhf-libvirt-raw broken broken-job test-armhf-armhf-xl-vhd broken broken-step test-armhf-armhf-libvirt-raw host-install(5) broken-step test-armhf-armhf-xl-vhd host-install(5) Not pushing. (No revision log; it would be 348169 lines long.) From xen-devel-bounces@lists.xenproject.org Mon Jun 19 08:31:53 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 19 Jun 2023 08:31:53 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550880.860080 (Exim 4.92) (envelope-from ) id 1qBAIa-0003Ui-VS; Mon, 19 Jun 2023 08:31:44 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550880.860080; Mon, 19 Jun 2023 08:31:44 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBAIa-0003Ub-RX; Mon, 19 Jun 2023 08:31:44 +0000 Received: by outflank-mailman (input) for mailman id 550880; Mon, 19 Jun 2023 08:31:43 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBAIZ-0003UV-2z for xen-devel@lists.xenproject.org; Mon, 19 Jun 2023 08:31:43 +0000 Received: from EUR05-DB8-obe.outbound.protection.outlook.com (mail-db8eur05on20608.outbound.protection.outlook.com [2a01:111:f400:7e1a::608]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id b6b0b710-0e7b-11ee-b234-6b7b168915f2; Mon, 19 Jun 2023 10:31:40 +0200 (CEST) Received: from DB9PR05CA0012.eurprd05.prod.outlook.com (2603:10a6:10:1da::17) by VI1PR08MB5517.eurprd08.prod.outlook.com (2603:10a6:803:139::23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.36; Mon, 19 Jun 2023 08:31:37 +0000 Received: from DBAEUR03FT012.eop-EUR03.prod.protection.outlook.com (2603:10a6:10:1da:cafe::87) by DB9PR05CA0012.outlook.office365.com (2603:10a6:10:1da::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.37 via Frontend Transport; Mon, 19 Jun 2023 08:31:36 +0000 Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by DBAEUR03FT012.mail.protection.outlook.com (100.127.142.126) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.20 via Frontend Transport; Mon, 19 Jun 2023 08:31:36 +0000 Received: ("Tessian outbound 3570909035da:v136"); Mon, 19 Jun 2023 08:31:36 +0000 Received: from 0de62ca4dba8.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 16408CA4-49FB-4FDB-9EB0-337A27576920.1; Mon, 19 Jun 2023 08:31:28 +0000 Received: from EUR03-DBA-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 0de62ca4dba8.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Mon, 19 Jun 2023 08:31:28 +0000 Received: from AM6PR08MB3749.eurprd08.prod.outlook.com (2603:10a6:20b:8f::22) by DB9PR08MB8225.eurprd08.prod.outlook.com (2603:10a6:10:39d::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.36; Mon, 19 Jun 2023 08:31:26 +0000 Received: from AM6PR08MB3749.eurprd08.prod.outlook.com ([fe80::ed0b:5730:a1f9:577b]) by AM6PR08MB3749.eurprd08.prod.outlook.com ([fe80::ed0b:5730:a1f9:577b%5]) with mapi id 15.20.6500.036; Mon, 19 Jun 2023 08:31:25 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: b6b0b710-0e7b-11ee-b234-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=8+MM568G307h7Hdb9YhZKvFBcPqXRGgeXKReaksfkoM=; b=vZFRnEFZl4uxTLHZrZnn6D8IOxVh4Y69ys7ESXzvHCcIEiJgAfW32NEPypzT2PAWhujSTKJf0GyS5rKHCwDLk/bllMH+/2cgzQS4pGZ33VkD6M9JsN41ipP3yNsfAcJy+3ImmuTuKwvFdhKXUf2EFrx5KyGhx9HXIuM8J2UbNTs= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C X-CheckRecipientChecked: true X-CR-MTA-CID: a302b7742668dd31 X-CR-MTA-TID: 64aa7808 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=hravEeVZLMHGWhvA2y7803vuCPuTSWXR6Af1yHYx2BeCU+oIFTcCj2smTCli0mbzXmOKrGn5fAuxSm3RZDpy0UmWIQR631rn0+B9ouuRHz9UEYoF8cnALvdDI7x3AlH6e95t0fXyfvCxZKzl6DrQZNa7NmSbBuiBjbbygWo7YqMrDW1zkV5ZdXNXK6C0tCkAiXNiXUvVZsNlKgpKVkIpJJYVlwD8jaRinyf2h/AOthato4BhxkomeZKCwvnXZS2UIMhHmOfiv+AP3zbwsckq2S2x3EK37ioKQc37RDOQj+RwUwFIuIQvEKgXzSt6ym6sA5MDgtROqw5iF9tMQps+pA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=8+MM568G307h7Hdb9YhZKvFBcPqXRGgeXKReaksfkoM=; b=Wa0bc4XdUPbnCLNmOdEmIuzDwc/mq0KmX23G4eVgXSW7f5KLTl/scu3fLuKnQ7dtHnE1+3ERw4cyJXv8y0jVnqN2Ybo7EZon7d6nxAg/nw34qJb2rn4sirJAqyKRSgfenM9UWAB31/wkXnu7OUs2OFd5owlqD0ebe5PX7b2gHuJ4uUGmZ/pU9ttvvg7cfVKJ/nw7dTC59NY/p6Ix64/7MfxDjnMTFCI9NJZpcsPv4nqBizoJc45EPx06pgZF8PMxCJYLX/TgY52Sbxw16ZhpWQOxOxIjDr/r8GP+ZZhPkDU0HgGz/bYm6xFW3lgRuicvGMFkWqvjY3Dlu0I7sxTN6A== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=8+MM568G307h7Hdb9YhZKvFBcPqXRGgeXKReaksfkoM=; b=vZFRnEFZl4uxTLHZrZnn6D8IOxVh4Y69ys7ESXzvHCcIEiJgAfW32NEPypzT2PAWhujSTKJf0GyS5rKHCwDLk/bllMH+/2cgzQS4pGZ33VkD6M9JsN41ipP3yNsfAcJy+3ImmuTuKwvFdhKXUf2EFrx5KyGhx9HXIuM8J2UbNTs= From: Luca Fancellu To: Julien Grall CC: Jan Beulich , Stefano Stabellini , Nicola Vetrini , Andrew Cooper , George Dunlap , Wei Liu , Xen-devel Subject: Re: Refactoring of a possibly unsafe pattern for variable initialization via function calls Thread-Topic: Refactoring of a possibly unsafe pattern for variable initialization via function calls Thread-Index: AQHZn6gWgGF2ZXPPc02I099nu6PTEa+NBmIAgAAYV4CAAMv8AIAD4yaAgAABdQCAAAIygA== Date: Mon, 19 Jun 2023 08:31:25 +0000 Message-ID: References: <3fc32674-af28-2a04-4eb8-059364a6a6fb@suse.com> <4522eead-bcc3-a735-3293-54ec457e83eb@bugseng.com> <1d34618d-2796-e26a-b339-ac8f1fcb8c82@xen.org> In-Reply-To: <1d34618d-2796-e26a-b339-ac8f1fcb8c82@xen.org> Accept-Language: en-GB, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-mailer: Apple Mail (2.3731.600.7) Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-traffictypediagnostic: AM6PR08MB3749:EE_|DB9PR08MB8225:EE_|DBAEUR03FT012:EE_|VI1PR08MB5517:EE_ X-MS-Office365-Filtering-Correlation-Id: be21498a-9847-4a6c-e081-08db709f9884 x-checkrecipientrouted: true nodisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: UcGXMfCOcAt576xoow42W+77lH1evDh46Z1WCJW5YtqLqL1rfoN3NZRHUh/UjUGK4/+BPeWdtiNsozpABeJfH3Y41dKN+8jZUoXWhcQ4PYD6kGlfDaHbNm87eX3hMgVx74vT9+jT+heFDT68lVbSn6+T8fgprZ1dLn5Ir2mT23AT2xjbAyheOv1XEL3rmA41Vd92rmpdsbxYJIEHxvx4AURCpWRvgXJM+yZoi3TpNkgFDoiQeRX4RgFQsQppEMuDBw1iEwsGSlcH1cT2XguysQ3mYji6Kywunhrqbc0P7707AqotadY7xJ579ZsrOVeJL5Mgzw5Kjhmzi+O2ppQ4VxUXeAKbl3gxiMJuHnK5tFFMfqxfq5KRnCUlPqAM3a35HhjMeIN7zg5qauodYGmw6Ek5wx2hY/n7TWSvj4gCrLtR64j+9H5APnkH1CfRHMrWFrCr+oMUJWUJD8ySUbqPAOpqKXt6pFt/Va0fMCETcsnvOZEMQoCCd7C/vErMdg7TVhj7tUy505AGUkWjz50CrJTqsT4++JvPsRtkquMqwt0Ugusp0OXKvFu/5m5FtR+HYYjkeOPpfGHcRgp2n5qSvIy/D5ewehP/tNrB6Kf6+EiY1seHmiuI8Mui1CS6CsW0HRCnGVmETosfYmjzzaQ4qQ== X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM6PR08MB3749.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(396003)(346002)(136003)(39860400002)(366004)(376002)(451199021)(2906002)(41300700001)(5660300002)(38070700005)(8676002)(8936002)(33656002)(36756003)(86362001)(53546011)(478600001)(26005)(6506007)(6512007)(186003)(54906003)(71200400001)(6486002)(122000001)(76116006)(66946007)(66476007)(64756008)(66446008)(66556008)(91956017)(6916009)(4326008)(316002)(38100700002)(2616005)(83380400001)(45980500001);DIR:OUT;SFP:1101; Content-Type: text/plain; charset="utf-8" Content-ID: Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR08MB8225 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: DBAEUR03FT012.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: fa72b667-aef3-4af9-3d6b-08db709f9236 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: WSN+ysFh3MJ+2q5C+7AISrUjGp1ti9yDSNa6g0g5TBdJWr/xJ79wSf8SnOYcc8rDY6mS1bn/BTb5/+8poT12ry7SBan0tj0jnTqG4G7u5Wh7/+fkQv/yyrWjCefI9+Uhu8tQp8Ln262NfVuxhhm5Nzwt+1bhogRFtbJbuvbzCxxiUiOZXLejgMl6Eq+f8fPhDnoEd0nNc/gmBtDylIUbQMl3+AV8kxfGqI7YmtashOKE6QCKZYuisozTmgj3nwj1Tj8Fvk0FsaryB2LkCHCDd0e69PUE2RRsf6YkJ34ryHPNTq08fGbNB8ld+VpMZcYCQ5/XF26IzPpFOYDP6jghJr9W4kFpc6Fj5LKuKFeo1i4CbawS/sSn22ySA2S140mwFc+jX0CfIzsfHqs9vFjQ7YeQgdpGR6Q2FPmfF4qJJEuaKPkeOuSV8h+slRyR1bX5ekkfgSV97C2w1PpRDbbE+I0KCWTjV2WsoSBEBn+JIYAg5aSiiR0jG7MpRnz2TbqE8+FIcgdan2dK+6mHtZZx1GbFp8U4efRlXhr/imnhjqTYwxpzc41A1dxEGJg400a51gcbZVl2Np65UInLc/nhNDNb0h2oVfUJWaj5ywAERL6hWeUqiPy47BsKE8fiEQzhQCTAtUemX4sxForfODwXday+U+A5ZC9oJeWSxkb31XfxR4k1igH3uYmILtwUbMM1oJ5DAd8BNZ11leiUv4+4UQ== X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230028)(4636009)(136003)(376002)(396003)(346002)(39850400004)(451199021)(46966006)(36840700001)(478600001)(40480700001)(2906002)(54906003)(6486002)(81166007)(2616005)(356005)(47076005)(336012)(86362001)(33656002)(36756003)(26005)(186003)(6506007)(6512007)(82310400005)(53546011)(70586007)(8936002)(8676002)(70206006)(6862004)(5660300002)(36860700001)(316002)(4326008)(82740400003)(83380400001)(41300700001);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Jun 2023 08:31:36.4013 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: be21498a-9847-4a6c-e081-08db709f9884 X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: DBAEUR03FT012.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR08MB5517 DQoNCj4gT24gMTkgSnVuIDIwMjMsIGF0IDA5OjIzLCBKdWxpZW4gR3JhbGwgPGp1bGllbkB4ZW4u b3JnPiB3cm90ZToNCj4gDQo+IA0KPiANCj4gT24gMTkvMDYvMjAyMyAwOToxOCwgSmFuIEJldWxp Y2ggd3JvdGU6DQo+PiBPbiAxNi4wNi4yMDIzIDIyOjU2LCBTdGVmYW5vIFN0YWJlbGxpbmkgd3Jv dGU6DQo+Pj4gT24gRnJpLCAxNiBKdW4gMjAyMywgTmljb2xhIFZldHJpbmkgd3JvdGU6DQo+Pj4+ IE9uIDE2LzA2LzIzIDA5OjE5LCBKYW4gQmV1bGljaCB3cm90ZToNCj4+Pj4+IE9uIDE1LjA2LjIw MjMgMTg6MzksIG5pY29sYSB3cm90ZToNCj4+Pj4+PiB3aGlsZSBpbnZlc3RpZ2F0aW5nIHBvc3Np YmxlIHBhdGNoZXMgcmVnYXJkaW5nIE1hbmRhdG9yeSBSdWxlIDkuMSwgSQ0KPj4+Pj4+IGZvdW5k IHRoZSBmb2xsb3dpbmcgcGF0dGVybiwgdGhhdCBpcyBsaWtlbHkgdG8gcmVzdWx0cyBpbiBhIGxv dCBwb3NzaWJsZQ0KPj4+Pj4+IHBvc2l0aXZlcyBmcm9tIG1hbnkgKGFsbCkgc3RhdGljIGFuYWx5 c2lzIHRvb2xzIGZvciB0aGlzIHJ1bGUuDQo+Pj4+Pj4gDQo+Pj4+Pj4gVGhpcyBpcyB0aGUgY3Vy cmVudCBzdGF0dXMgKHRha2VuIGZyb20gYHhlbi9jb21tb24vZGV2aWNlX3RyZWUuYzoxMzUnKQ0K Pj4+Pj4+IA0KPj4+Pj4+IA0KPj4+Pj4+IGNvbnN0IHN0cnVjdCBkdF9wcm9wZXJ0eSAqZHRfZmlu ZF9wcm9wZXJ0eShjb25zdCBzdHJ1Y3QgZHRfZGV2aWNlX25vZGUNCj4+Pj4+PiAqbnAsDQo+Pj4+ Pj4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hh ciAqbmFtZSwgdTMyICpsZW5wKQ0KPj4+Pj4+IHsNCj4+Pj4+PiAgICAgICBjb25zdCBzdHJ1Y3Qg ZHRfcHJvcGVydHkgKnBwOw0KPj4+Pj4+IA0KPj4+Pj4+ICAgICAgIGlmICggIW5wICkNCj4+Pj4+ PiAgICAgICAgICAgcmV0dXJuIE5VTEw7DQo+Pj4+Pj4gDQo+Pj4+Pj4gICAgICAgZm9yICggcHAg PSBucC0+cHJvcGVydGllczsgcHA7IHBwID0gcHAtPm5leHQgKQ0KPj4+Pj4+ICAgICAgIHsNCj4+ Pj4+PiAgICAgICAgICAgaWYgKCBkdF9wcm9wX2NtcChwcC0+bmFtZSwgbmFtZSkgPT0gMCApDQo+ Pj4+Pj4gICAgICAgICAgIHsNCj4+Pj4+PiAgICAgICAgICAgICAgIGlmICggbGVucCApDQo+Pj4+ Pj4gICAgICAgICAgICAgICAgICAgKmxlbnAgPSBwcC0+bGVuZ3RoOw0KPj4+Pj4+ICAgICAgICAg ICAgICAgYnJlYWs7DQo+Pj4+Pj4gICAgICAgICAgIH0NCj4+Pj4+PiAgICAgICB9DQo+Pj4+Pj4g DQo+Pj4+Pj4gICAgICAgcmV0dXJuIHBwOw0KPj4+Pj4+IH0NCj4+Pj4+PiANCj4+Pj4+PiANCj4+ Pj4+PiANCj4+Pj4+PiANCj4+Pj4+PiBJdCdzIHZlcnkgaGFyZCB0byBkZXRlY3QgdGhhdCB0aGUg cG9pbnRlZSBpcyBhbHdheXMgd3JpdHRlbiB3aGVuZXZlciBhDQo+Pj4+Pj4gbm9uLU5VTEwgcG9p bnRlciBmb3IgYGxlbnAnIGlzIHN1cHBsaWVkLCBhbmQgaXQgY2FuIHNhZmVseSBiZSByZWFkIGlu DQo+Pj4+Pj4gdGhlIGNhbGxlZSwgc28gYSBzb3VuZCBhbmFseXNpcyB3aWxsIGVyciBvbiB0aGUg Y2F1dGlvdXMgc2lkZS4NCj4+Pj4+IA0KPj4+Pj4gSSdtIGhhdmluZyB0cm91YmxlIHNlZWluZyB3 aHkgdGhpcyBpcyBoYXJkIHRvIHJlY29nbml6ZTogVGhlIGxvb3AgY2FuDQo+Pj4+PiBvbmx5IGJl IGV4aXRlZCB0d28gd2F5czogcHAgPT0gTlVMTCBvciB3aXRoICpsZW5wIHdyaXR0ZW4uDQo+Pj4+ PiANCj4+Pj4+IEZvciBydWxlIDkuMSBJJ2QgcmF0aGVyIGV4cGVjdCB0aGUgc2Nhbm5pbmcgdG9v bCAoYW5kIG9mdGVuIHRoZSBjb21waWxlcikNCj4+Pj4+IHRvIGdldCBpbnRvIHRyb3VibGUgd2l0 aCB0aGUgTlVMTCByZXR1cm4gdmFsdWUgY2FzZSwgYW5kICpsZW5wIG5vdCBiZWluZw0KPj4+Pj4g d3JpdHRlbiB5ZXQgYXBwYXJlbnRseSBjb25zdW1lZCBpbiB0aGUgY2FsbGVyLiBUaGVuLCBob3dl dmVyLCAuLi4NCj4+Pj4gDQo+Pj4+IA0KPj4+PiBZb3UncmUgcmlnaHQsIEkgbWFkZSBhIG1pc3Rh a2UsIHRoYW5rIHlvdSBmb3IgZmluZGluZyBpdC4NCj4+Pj4gSSBtZWFudCB0byB3cml0ZSBvbiBg KmxlbnAnIGluIGFsbCBleGVjdXRpb24gcGF0aHMuDQo+Pj4+IFBsZWFzZSwgdGFrZSBhIGxvb2sg YXQgdGhpcyByZXZpc2VkIHZlcnNpb246DQo+Pj4+IA0KPj4+PiANCj4+Pj4gY29uc3Qgc3RydWN0 IGR0X3Byb3BlcnR5ICpkdF9maW5kX3Byb3BlcnR5KGNvbnN0IHN0cnVjdCBkdF9kZXZpY2Vfbm9k ZSAqbnAsDQo+Pj4+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBj b25zdCBjaGFyICpuYW1lLCB1MzIgKmxlbnApDQo+Pj4+IHsNCj4+Pj4gICAgIHUzMiBsZW4gPSAw Ow0KPj4+PiAgICAgY29uc3Qgc3RydWN0IGR0X3Byb3BlcnR5ICpwcCA9IE5VTEw7DQo+Pj4+IA0K Pj4+PiAgICAgaWYgKCBucCApDQo+Pj4+ICAgICB7DQo+Pj4+ICAgICAgICAgZm9yICggcHAgPSBu cC0+cHJvcGVydGllczsgcHA7IHBwID0gcHAtPm5leHQgKQ0KPj4+PiAgICAgICAgIHsNCj4+Pj4g ICAgICAgICAgICAgaWYgKCBkdF9wcm9wX2NtcChwcC0+bmFtZSwgbmFtZSkgPT0gMCApDQo+Pj4+ ICAgICAgICAgICAgIHsNCj4+Pj4gICAgICAgICAgICAgICAgIGxlbiA9IHBwLT5sZW5ndGg7DQo+ Pj4+ICAgICAgICAgICAgICAgICBicmVhazsNCj4+Pj4gICAgICAgICAgICAgfQ0KPj4+PiAgICAg ICAgIH0NCj4+Pj4gICAgIH0NCj4+Pj4gDQo+Pj4+ICAgICBpZiAoIGxlbnAgKQ0KPj4+PiAgICAg ICAgICpsZW5wID0gbGVuOw0KPj4+PiAgICAgcmV0dXJuIHBwOw0KPj4+PiB9DQo+Pj4gDQo+Pj4g TmVzdGluZyBtb3JlIHdpbGwgbWFrZSB0aGUgY29kZSBsZXNzIHJlYWRhYmxlIGFuZCBhbHNvIGNh dXNlIG90aGVyIGNvZGUNCj4+PiBxdWFsaXR5IG1ldHJpY3MgdG8gZGV0ZXJpb3JhdGUgKGN5Y2xv bWF0aWMgY29tcGxleGl0eSkuDQo+Pj4gDQo+Pj4gV291bGQgdGhlIGJlbG93IHdvcms/DQo+Pj4g DQo+Pj4gDQo+Pj4gY29uc3Qgc3RydWN0IGR0X3Byb3BlcnR5ICpkdF9maW5kX3Byb3BlcnR5KGNv bnN0IHN0cnVjdCBkdF9kZXZpY2Vfbm9kZSAqbnAsDQo+Pj4gICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKm5hbWUsIHUzMiAqbGVucCkNCj4+PiB7 DQo+Pj4gICAgIHUzMiBsZW4gPSAwOw0KPj4+ICAgICBjb25zdCBzdHJ1Y3QgZHRfcHJvcGVydHkg KnBwID0gTlVMTDsNCj4+PiANCj4+PiAgICAgaWYgKCAhbnAgKQ0KPj4+ICAgICAgICAgcmV0dXJu IE5VTEwNCj4+IFRoYXQncyB3aGF0IHdlIHN0YXJ0ZWQgZnJvbSwgYnV0IGxlYXZpbmcgKmxlbnAg bm90IHdyaXR0ZW4gdG8uIEhvdw0KPj4gYWJvdXQgLi4uDQo+Pj4gICAgIGZvciAoIHBwID0gbnAt PnByb3BlcnRpZXM7IHBwOyBwcCA9IHBwLT5uZXh0ICkNCj4+ICAgICBmb3IgKCBwcCA9IG5wID8g bnAtPnByb3BlcnRpZXMgOiBOVUxMOyBwcDsgcHAgPSBwcC0+bmV4dCApID4gPiA/DQo+IA0KPiBJ IHdvdWxkIGJlIE9LIHdpdGggdGhhdC4gTWF5YmUgd2l0aCBhbiBleHRyYSBzZXQgb2YgcGFyZW50 aGVzZXMgYXJvdW5kICcgbnAgPyAuLi4gOiBOVUxMJyBqdXN0IHRvIG1ha2UgdmlzdWFsbHkgZWFz aWVyIHRvIHBhcnNlLg0KDQpBZ3JlZSwgYW5kIGZvciBNSVNSQSwgd2Ugc2hvdWxkIHVzZSBhIGJv b2xlYW4gZXhwcmVzc2lvbiBhcyBjb25kaXRpb24sIGV2ZW4gaWYgSSBrbm93IHRoYXQgd2Ugd291 bGQgbGlrZSB0byBkZXZpYXRlIGZyb20gdGhhdCwNCndoaWNoIEkgZGlzbGlrZS4NCg0KQW55d2F5 IEkgYWxzbyB0aGluayB0aGF0IGl04oCZcyBkaWZmaWN1bHQgdG8gaGF2ZSBhIGdlbmVyaWMgcnVs ZSBmb3IgY2FzZXMgbGlrZSB0aGF0LCBhbHNvIGJlY2F1c2UgZm9yIHNvbWUgZnVuY3Rpb24NCm1h eWJlIHRoZSBhdXRob3IgaW50ZW50aW9uIHdhcyB0byBkb27igJl0IHdyaXRlIHRoZSAqbGVucCBp biBjYXNlIHNvbWUgZXJyb3Igb2NjdXIgYmVmb3JlLCBhbnl3YXkgdGhpcyBjYW4NCmJlIGVhc2ls eSBtYWRlIGNsZWFyIGFkZGluZyBkb2N1bWVudGF0aW9uIHRvIHRoZSBmdW5jdGlvbiwgZm9yIHRo ZXNlIGNhc2VzLg0KDQoNCj4gDQo+IENoZWVycywNCj4gDQo+IC0tIA0KPiBKdWxpZW4gR3JhbGwN Cj4gDQoNCg== From xen-devel-bounces@lists.xenproject.org Mon Jun 19 08:50:48 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 19 Jun 2023 08:50:48 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550885.860090 (Exim 4.92) (envelope-from ) id 1qBAaj-0005yG-FV; Mon, 19 Jun 2023 08:50:29 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550885.860090; Mon, 19 Jun 2023 08:50:29 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBAaj-0005y9-CS; Mon, 19 Jun 2023 08:50:29 +0000 Received: by outflank-mailman (input) for mailman id 550885; Mon, 19 Jun 2023 08:50:27 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBAah-0005xz-GI for xen-devel@lists.xenproject.org; Mon, 19 Jun 2023 08:50:27 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBAad-0007en-59; Mon, 19 Jun 2023 08:50:23 +0000 Received: from 54-240-197-230.amazon.com ([54.240.197.230] helo=[192.168.19.123]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qBAac-0004OA-UZ; Mon, 19 Jun 2023 08:50:23 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=/YncY10uCo9jb8MT6mipX/qC5ZT8nNbO9KOL7L3Dmg0=; b=cRtmKrLj9O0A7FUlgTC+NZuJ4T 6udAawO2YKDxlaXPZjNv8oIqT9Al+NJRAGFjbcSfYvuG89IKuf35Lk2l7LZ/dWovZi2Tkbyf7wR4z /dUW28r0w25oWcITKRUgfwI3pR8E66x5RSQ7Ob3Cyff4qLck/GZaRhzPNCAnG9sqTITQ=; Message-ID: Date: Mon, 19 Jun 2023 09:50:20 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: Refactoring of a possibly unsafe pattern for variable initialization via function calls Content-Language: en-US To: Luca Fancellu Cc: Jan Beulich , Stefano Stabellini , Nicola Vetrini , Andrew Cooper , George Dunlap , Wei Liu , Xen-devel References: <3fc32674-af28-2a04-4eb8-059364a6a6fb@suse.com> <4522eead-bcc3-a735-3293-54ec457e83eb@bugseng.com> <1d34618d-2796-e26a-b339-ac8f1fcb8c82@xen.org> From: Julien Grall In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit On 19/06/2023 09:31, Luca Fancellu wrote: > > >> On 19 Jun 2023, at 09:23, Julien Grall wrote: >> >> >> >> On 19/06/2023 09:18, Jan Beulich wrote: >>> On 16.06.2023 22:56, Stefano Stabellini wrote: >>>> On Fri, 16 Jun 2023, Nicola Vetrini wrote: >>>>> On 16/06/23 09:19, Jan Beulich wrote: >>>>>> On 15.06.2023 18:39, nicola wrote: >>>>>>> while investigating possible patches regarding Mandatory Rule 9.1, I >>>>>>> found the following pattern, that is likely to results in a lot possible >>>>>>> positives from many (all) static analysis tools for this rule. >>>>>>> >>>>>>> This is the current status (taken from `xen/common/device_tree.c:135') >>>>>>> >>>>>>> >>>>>>> const struct dt_property *dt_find_property(const struct dt_device_node >>>>>>> *np, >>>>>>> const char *name, u32 *lenp) >>>>>>> { >>>>>>> const struct dt_property *pp; >>>>>>> >>>>>>> if ( !np ) >>>>>>> return NULL; >>>>>>> >>>>>>> for ( pp = np->properties; pp; pp = pp->next ) >>>>>>> { >>>>>>> if ( dt_prop_cmp(pp->name, name) == 0 ) >>>>>>> { >>>>>>> if ( lenp ) >>>>>>> *lenp = pp->length; >>>>>>> break; >>>>>>> } >>>>>>> } >>>>>>> >>>>>>> return pp; >>>>>>> } >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> It's very hard to detect that the pointee is always written whenever a >>>>>>> non-NULL pointer for `lenp' is supplied, and it can safely be read in >>>>>>> the callee, so a sound analysis will err on the cautious side. >>>>>> >>>>>> I'm having trouble seeing why this is hard to recognize: The loop can >>>>>> only be exited two ways: pp == NULL or with *lenp written. >>>>>> >>>>>> For rule 9.1 I'd rather expect the scanning tool (and often the compiler) >>>>>> to get into trouble with the NULL return value case, and *lenp not being >>>>>> written yet apparently consumed in the caller. Then, however, ... >>>>> >>>>> >>>>> You're right, I made a mistake, thank you for finding it. >>>>> I meant to write on `*lenp' in all execution paths. >>>>> Please, take a look at this revised version: >>>>> >>>>> >>>>> const struct dt_property *dt_find_property(const struct dt_device_node *np, >>>>> const char *name, u32 *lenp) >>>>> { >>>>> u32 len = 0; >>>>> const struct dt_property *pp = NULL; >>>>> >>>>> if ( np ) >>>>> { >>>>> for ( pp = np->properties; pp; pp = pp->next ) >>>>> { >>>>> if ( dt_prop_cmp(pp->name, name) == 0 ) >>>>> { >>>>> len = pp->length; >>>>> break; >>>>> } >>>>> } >>>>> } >>>>> >>>>> if ( lenp ) >>>>> *lenp = len; >>>>> return pp; >>>>> } >>>> >>>> Nesting more will make the code less readable and also cause other code >>>> quality metrics to deteriorate (cyclomatic complexity). >>>> >>>> Would the below work? >>>> >>>> >>>> const struct dt_property *dt_find_property(const struct dt_device_node *np, >>>> const char *name, u32 *lenp) >>>> { >>>> u32 len = 0; >>>> const struct dt_property *pp = NULL; >>>> >>>> if ( !np ) >>>> return NULL >>> That's what we started from, but leaving *lenp not written to. How >>> about ... >>>> for ( pp = np->properties; pp; pp = pp->next ) >>> for ( pp = np ? np->properties : NULL; pp; pp = pp->next ) > > ? >> >> I would be OK with that. Maybe with an extra set of parentheses around ' np ? ... : NULL' just to make visually easier to parse. > > Agree, and for MISRA, we should use a boolean expression as condition, even if I know that we would like to deviate from that, The code will even be more difficult to read. So if we plan to deviate, then I don't want us to use MISRA-compliant boolean expression here. > which I dislike. What do you dislike? Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Mon Jun 19 08:54:55 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 19 Jun 2023 08:54:55 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550890.860100 (Exim 4.92) (envelope-from ) id 1qBAez-0006YU-Vj; Mon, 19 Jun 2023 08:54:53 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550890.860100; Mon, 19 Jun 2023 08:54:53 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBAez-0006YN-Ss; Mon, 19 Jun 2023 08:54:53 +0000 Received: by outflank-mailman (input) for mailman id 550890; Mon, 19 Jun 2023 08:54:53 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBAez-0006YH-B6 for xen-devel@lists.xenproject.org; Mon, 19 Jun 2023 08:54:53 +0000 Received: from EUR05-AM6-obe.outbound.protection.outlook.com (mail-am6eur05on20612.outbound.protection.outlook.com [2a01:111:f400:7e1b::612]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id f3e47b86-0e7e-11ee-b234-6b7b168915f2; Mon, 19 Jun 2023 10:54:52 +0200 (CEST) Received: from DB9PR01CA0005.eurprd01.prod.exchangelabs.com (2603:10a6:10:1d8::10) by AM7PR08MB5461.eurprd08.prod.outlook.com (2603:10a6:20b:10e::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.36; Mon, 19 Jun 2023 08:54:45 +0000 Received: from DBAEUR03FT051.eop-EUR03.prod.protection.outlook.com (2603:10a6:10:1d8:cafe::a8) by DB9PR01CA0005.outlook.office365.com (2603:10a6:10:1d8::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.36 via Frontend Transport; Mon, 19 Jun 2023 08:54:45 +0000 Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by DBAEUR03FT051.mail.protection.outlook.com (100.127.142.148) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.20 via Frontend Transport; Mon, 19 Jun 2023 08:54:44 +0000 Received: ("Tessian outbound 3570909035da:v136"); Mon, 19 Jun 2023 08:54:44 +0000 Received: from 0f2b7a6ff6e5.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id EA9C8287-E1D0-42F9-8F03-D825D7D0C22E.1; Mon, 19 Jun 2023 08:54:37 +0000 Received: from EUR04-DB3-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 0f2b7a6ff6e5.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Mon, 19 Jun 2023 08:54:37 +0000 Received: from AM6PR08MB3749.eurprd08.prod.outlook.com (2603:10a6:20b:8f::22) by DU0PR08MB9582.eurprd08.prod.outlook.com (2603:10a6:10:44a::5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.35; Mon, 19 Jun 2023 08:54:35 +0000 Received: from AM6PR08MB3749.eurprd08.prod.outlook.com ([fe80::ed0b:5730:a1f9:577b]) by AM6PR08MB3749.eurprd08.prod.outlook.com ([fe80::ed0b:5730:a1f9:577b%5]) with mapi id 15.20.6500.036; Mon, 19 Jun 2023 08:54:35 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: f3e47b86-0e7e-11ee-b234-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=ydNtWTWcQnbLJb4qM4a7EMG9UytbrrupTAKWTSfKRsQ=; b=b0eWqCsCSyUHUecyjU42XQwj1EyTUaEJxeLQYy0JB+83gyt657phqITWCqndR9QJzr634YKyOKwhEHMyUIyEjpneeKIU8jO52uSwh7HkD2tRvP3hTXzYACBqW7CKJ6ecwM303meSVPRcXFb+7upc1PfL6o8n4MDUnHbcT1rLRXQ= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C X-CheckRecipientChecked: true X-CR-MTA-CID: c29d98ef81dfcbdc X-CR-MTA-TID: 64aa7808 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Wunpun0RXO8b57+mN+F71Sz5aB3Bs5izUbReCucJUBjQJKOhYA3js2m9zDWl7oxTdZp4zzWjoDAgJ+vc6GMvbzIGkq6xdlkbjNAFPfJo96dYGhMEwSxk8gYkYTYcQ8TeaSMWbhAxc4YQJC+gisog94bx2v8KTwvz2WMt5hgSlkEM3mxvBO8ljAwyQdl4xhwucKncaIOxAdyqLY9OSmUhYU6UeVTyS9i7X/xqWPO4A4S8ENvUySJv3KD4Xy5clSykaZbmW5O1O2Ej3rImrPjrvThhlHAFSH08/pxaTqfkqDJN9KKOz+/zUQTwc4VjZT9kmJ5xwigniqTL8y93IB3tnQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=ydNtWTWcQnbLJb4qM4a7EMG9UytbrrupTAKWTSfKRsQ=; b=F2Dz/0U00jqHVrbp8Y7lY68u9w6y7CRRueACxGViJsWeseG7Vyak+TjgzviZA5nCiCF+7Nvnm10L9lb0watweeulpIiKJdBfahUeSbHfjrGik67TWH+xK1YH5sk6KkKwcNMj/xgsEDzJyMQprZME3V7Vv0F/BtF7TgxW3iAhDX8cNlP2TXrRyFTkyZfGzEFb0HpRF0SDueOfaafwU2tGR3IczNHSoj7mP8FtlSW0umEWNU50PngwQdgveUCUvaKKEm7Lf+5S8U6/jRFh3epSMZ+ifDXprGwL4SAQqOWD7gqW3VTbPiie8zfCZFUo9adBZ7lBB4XEG16l26mqMXNqgA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=ydNtWTWcQnbLJb4qM4a7EMG9UytbrrupTAKWTSfKRsQ=; b=b0eWqCsCSyUHUecyjU42XQwj1EyTUaEJxeLQYy0JB+83gyt657phqITWCqndR9QJzr634YKyOKwhEHMyUIyEjpneeKIU8jO52uSwh7HkD2tRvP3hTXzYACBqW7CKJ6ecwM303meSVPRcXFb+7upc1PfL6o8n4MDUnHbcT1rLRXQ= From: Luca Fancellu To: Julien Grall CC: Jan Beulich , Stefano Stabellini , Nicola Vetrini , Andrew Cooper , George Dunlap , Wei Liu , Xen-devel Subject: Re: Refactoring of a possibly unsafe pattern for variable initialization via function calls Thread-Topic: Refactoring of a possibly unsafe pattern for variable initialization via function calls Thread-Index: AQHZn6gWgGF2ZXPPc02I099nu6PTEa+NBmIAgAAYV4CAAMv8AIAD4yaAgAABdQCAAAIygIAABVUAgAABJIA= Date: Mon, 19 Jun 2023 08:54:35 +0000 Message-ID: <407943FC-BEBA-4329-A2E0-D3C4F7AF3AEE@arm.com> References: <3fc32674-af28-2a04-4eb8-059364a6a6fb@suse.com> <4522eead-bcc3-a735-3293-54ec457e83eb@bugseng.com> <1d34618d-2796-e26a-b339-ac8f1fcb8c82@xen.org> In-Reply-To: Accept-Language: en-GB, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-mailer: Apple Mail (2.3731.600.7) Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-traffictypediagnostic: AM6PR08MB3749:EE_|DU0PR08MB9582:EE_|DBAEUR03FT051:EE_|AM7PR08MB5461:EE_ X-MS-Office365-Filtering-Correlation-Id: 0eff4f70-2d6f-49c5-8908-08db70a2d42d x-checkrecipientrouted: true nodisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: /yJFwM9VUy5w1MVcXJDhOHAD7WFsxoUh3HOj8ukFec+V9LSp50mYw/w11epmTI3r0h0pOgl+69jOe212+PCvRQH5HFEU1WKIrH1Z/xpuXML5krRNOkWDAGeByxsP64YxQCGpsgWEtjkFJDaRVChiSqaso/K+nEbslt5ywBziVSOjnptgUxhWaOQFrq2ewy58M2TRHgh2KQ2csnATTEO5wuy8TJ3vYi7mlF8zY9QPuzh9aQ/CWum0hR9m5VPrWJgQyZROQmfdCdhhTMvQJrOao8eH+IC9/IL8QefChtVgpVpZsbLBZotzrlA4URNE+hzkwds3C54Z/F+0zrYAolIlNcHqvd8IC987f6E8ibDLrXQyeEuXbmXTUtVMl77t++O1GG7ZR0KPsqFGWxovmnRoYis+GvaKuftUvIJjmAbaTF22MZCW3Jxvn/IzSkHwMBOyUJK0Fy162LEsb6guu3ErpT5aCbKhLXTmD4L6lX5aYHnlAqZ1ZBb9VDnYfErv/68kSPE3kepPLHGdmXWj9KEO33qomDLXwkT54z2xjMBdKdAciyCxnoDbV3Q0ZZXbzw/vPq0/cUl3MZrL5HtFwmvYOiREwCsqpH5zQe6ks+RrXE82f+WKsFlY6zA37SeCNpUa1wquVPheC6OLBAkphxL5+w== X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM6PR08MB3749.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(396003)(39860400002)(136003)(376002)(366004)(346002)(451199021)(41300700001)(5660300002)(8936002)(8676002)(2906002)(38070700005)(33656002)(36756003)(86362001)(26005)(6506007)(6512007)(53546011)(54906003)(186003)(478600001)(71200400001)(6486002)(122000001)(76116006)(66946007)(66556008)(66446008)(64756008)(66476007)(91956017)(6916009)(4326008)(38100700002)(316002)(2616005)(83380400001)(45980500001);DIR:OUT;SFP:1101; Content-Type: text/plain; charset="utf-8" Content-ID: <7B89402A76B26044A836CD79F16E56B3@eurprd08.prod.outlook.com> Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU0PR08MB9582 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: DBAEUR03FT051.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: b1309724-4ada-4d1b-9f5b-08db70a2ce84 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: Ap13mPhzzKmCHjLDaqUIssGtheaKa55ddrth076F9aXMmKZYnhScrlBYpnxsjqIje0qdSfDYgKZu+7haOT58+EX5m1w4tU45q7aJOicXHaHYo9/pm41Ud252E9Z8vhun0pj9YLOAwYUUc7CLbMQMuicOrIw01UswXJ3YW/Dd07z3+0GUeb44I8NW5OJs2KJfJfY3NuQGKzWjDYHk8Z9lLz9KP2MUCytpjx0NUGuhP5c1/Fd4efwOjb5vPvZo6jCA4OtontiaRPbqfRk7XiTEAMkMk/Tz9iGfgdWoL6V/jNpzmmDpiEamv9bBDVxbe5mdWWGuTKIU5MTuJ5MsJhNBWAz4+xi/9mVe6DJQmso8K+1HpwAVDS0bf2FDg+LF1/jfFAOPPqYeebnUlxP8xVa/7lk+vocxng95/CMYZXNYBOt97AmDlir6Z5k7HzQb3X2LwHVREEsT32pTdS9eXj/byc9lZ2LUSmHRtIIzP5sZlCGuzgNNBVjVudPzfCx05l9CkRDiMoqz8dghBCrZ/cfC4+D48FXnVPUkkkjgaq/h7rRJ7lSpfvZfui2hMIS6ZGch3MqF1WM8FbtCf6xn1MN1OVgqQ9r/9OPweIwM+VP+1q7CUVNBA/a/YTSc3L191C+H1wCw1kYg5n7a6sBn5/tiWqhjUB8OSBs7qxvN2jPPFRnlsem5Y42uEqNZU/iU1GUJbcr6u7nuPzDSAzl49T3nhA== X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230028)(4636009)(396003)(346002)(376002)(39850400004)(136003)(451199021)(46966006)(36840700001)(478600001)(4326008)(54906003)(26005)(6512007)(186003)(36756003)(6506007)(53546011)(6486002)(40480700001)(2906002)(8676002)(8936002)(41300700001)(70206006)(70586007)(316002)(5660300002)(6862004)(82310400005)(86362001)(47076005)(33656002)(356005)(36860700001)(83380400001)(336012)(82740400003)(81166007)(2616005);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Jun 2023 08:54:44.9824 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 0eff4f70-2d6f-49c5-8908-08db70a2d42d X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: DBAEUR03FT051.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM7PR08MB5461 DQoNCj4gT24gMTkgSnVuIDIwMjMsIGF0IDA5OjUwLCBKdWxpZW4gR3JhbGwgPGp1bGllbkB4ZW4u b3JnPiB3cm90ZToNCj4gDQo+IA0KPiANCj4gT24gMTkvMDYvMjAyMyAwOTozMSwgTHVjYSBGYW5j ZWxsdSB3cm90ZToNCj4+PiBPbiAxOSBKdW4gMjAyMywgYXQgMDk6MjMsIEp1bGllbiBHcmFsbCA8 anVsaWVuQHhlbi5vcmc+IHdyb3RlOg0KPj4+IA0KPj4+IA0KPj4+IA0KPj4+IE9uIDE5LzA2LzIw MjMgMDk6MTgsIEphbiBCZXVsaWNoIHdyb3RlOg0KPj4+PiBPbiAxNi4wNi4yMDIzIDIyOjU2LCBT dGVmYW5vIFN0YWJlbGxpbmkgd3JvdGU6DQo+Pj4+PiBPbiBGcmksIDE2IEp1biAyMDIzLCBOaWNv bGEgVmV0cmluaSB3cm90ZToNCj4+Pj4+PiBPbiAxNi8wNi8yMyAwOToxOSwgSmFuIEJldWxpY2gg d3JvdGU6DQo+Pj4+Pj4+IE9uIDE1LjA2LjIwMjMgMTg6MzksIG5pY29sYSB3cm90ZToNCj4+Pj4+ Pj4+IHdoaWxlIGludmVzdGlnYXRpbmcgcG9zc2libGUgcGF0Y2hlcyByZWdhcmRpbmcgTWFuZGF0 b3J5IFJ1bGUgOS4xLCBJDQo+Pj4+Pj4+PiBmb3VuZCB0aGUgZm9sbG93aW5nIHBhdHRlcm4sIHRo YXQgaXMgbGlrZWx5IHRvIHJlc3VsdHMgaW4gYSBsb3QgcG9zc2libGUNCj4+Pj4+Pj4+IHBvc2l0 aXZlcyBmcm9tIG1hbnkgKGFsbCkgc3RhdGljIGFuYWx5c2lzIHRvb2xzIGZvciB0aGlzIHJ1bGUu DQo+Pj4+Pj4+PiANCj4+Pj4+Pj4+IFRoaXMgaXMgdGhlIGN1cnJlbnQgc3RhdHVzICh0YWtlbiBm cm9tIGB4ZW4vY29tbW9uL2RldmljZV90cmVlLmM6MTM1JykNCj4+Pj4+Pj4+IA0KPj4+Pj4+Pj4g DQo+Pj4+Pj4+PiBjb25zdCBzdHJ1Y3QgZHRfcHJvcGVydHkgKmR0X2ZpbmRfcHJvcGVydHkoY29u c3Qgc3RydWN0IGR0X2RldmljZV9ub2RlDQo+Pj4+Pj4+PiAqbnAsDQo+Pj4+Pj4+PiAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICpuYW1lLCB1 MzIgKmxlbnApDQo+Pj4+Pj4+PiB7DQo+Pj4+Pj4+PiAgICAgICBjb25zdCBzdHJ1Y3QgZHRfcHJv cGVydHkgKnBwOw0KPj4+Pj4+Pj4gDQo+Pj4+Pj4+PiAgICAgICBpZiAoICFucCApDQo+Pj4+Pj4+ PiAgICAgICAgICAgcmV0dXJuIE5VTEw7DQo+Pj4+Pj4+PiANCj4+Pj4+Pj4+ICAgICAgIGZvciAo IHBwID0gbnAtPnByb3BlcnRpZXM7IHBwOyBwcCA9IHBwLT5uZXh0ICkNCj4+Pj4+Pj4+ICAgICAg IHsNCj4+Pj4+Pj4+ICAgICAgICAgICBpZiAoIGR0X3Byb3BfY21wKHBwLT5uYW1lLCBuYW1lKSA9 PSAwICkNCj4+Pj4+Pj4+ICAgICAgICAgICB7DQo+Pj4+Pj4+PiAgICAgICAgICAgICAgIGlmICgg bGVucCApDQo+Pj4+Pj4+PiAgICAgICAgICAgICAgICAgICAqbGVucCA9IHBwLT5sZW5ndGg7DQo+ Pj4+Pj4+PiAgICAgICAgICAgICAgIGJyZWFrOw0KPj4+Pj4+Pj4gICAgICAgICAgIH0NCj4+Pj4+ Pj4+ICAgICAgIH0NCj4+Pj4+Pj4+IA0KPj4+Pj4+Pj4gICAgICAgcmV0dXJuIHBwOw0KPj4+Pj4+ Pj4gfQ0KPj4+Pj4+Pj4gDQo+Pj4+Pj4+PiANCj4+Pj4+Pj4+IA0KPj4+Pj4+Pj4gDQo+Pj4+Pj4+ PiBJdCdzIHZlcnkgaGFyZCB0byBkZXRlY3QgdGhhdCB0aGUgcG9pbnRlZSBpcyBhbHdheXMgd3Jp dHRlbiB3aGVuZXZlciBhDQo+Pj4+Pj4+PiBub24tTlVMTCBwb2ludGVyIGZvciBgbGVucCcgaXMg c3VwcGxpZWQsIGFuZCBpdCBjYW4gc2FmZWx5IGJlIHJlYWQgaW4NCj4+Pj4+Pj4+IHRoZSBjYWxs ZWUsIHNvIGEgc291bmQgYW5hbHlzaXMgd2lsbCBlcnIgb24gdGhlIGNhdXRpb3VzIHNpZGUuDQo+ Pj4+Pj4+IA0KPj4+Pj4+PiBJJ20gaGF2aW5nIHRyb3VibGUgc2VlaW5nIHdoeSB0aGlzIGlzIGhh cmQgdG8gcmVjb2duaXplOiBUaGUgbG9vcCBjYW4NCj4+Pj4+Pj4gb25seSBiZSBleGl0ZWQgdHdv IHdheXM6IHBwID09IE5VTEwgb3Igd2l0aCAqbGVucCB3cml0dGVuLg0KPj4+Pj4+PiANCj4+Pj4+ Pj4gRm9yIHJ1bGUgOS4xIEknZCByYXRoZXIgZXhwZWN0IHRoZSBzY2FubmluZyB0b29sIChhbmQg b2Z0ZW4gdGhlIGNvbXBpbGVyKQ0KPj4+Pj4+PiB0byBnZXQgaW50byB0cm91YmxlIHdpdGggdGhl IE5VTEwgcmV0dXJuIHZhbHVlIGNhc2UsIGFuZCAqbGVucCBub3QgYmVpbmcNCj4+Pj4+Pj4gd3Jp dHRlbiB5ZXQgYXBwYXJlbnRseSBjb25zdW1lZCBpbiB0aGUgY2FsbGVyLiBUaGVuLCBob3dldmVy LCAuLi4NCj4+Pj4+PiANCj4+Pj4+PiANCj4+Pj4+PiBZb3UncmUgcmlnaHQsIEkgbWFkZSBhIG1p c3Rha2UsIHRoYW5rIHlvdSBmb3IgZmluZGluZyBpdC4NCj4+Pj4+PiBJIG1lYW50IHRvIHdyaXRl IG9uIGAqbGVucCcgaW4gYWxsIGV4ZWN1dGlvbiBwYXRocy4NCj4+Pj4+PiBQbGVhc2UsIHRha2Ug YSBsb29rIGF0IHRoaXMgcmV2aXNlZCB2ZXJzaW9uOg0KPj4+Pj4+IA0KPj4+Pj4+IA0KPj4+Pj4+ IGNvbnN0IHN0cnVjdCBkdF9wcm9wZXJ0eSAqZHRfZmluZF9wcm9wZXJ0eShjb25zdCBzdHJ1Y3Qg ZHRfZGV2aWNlX25vZGUgKm5wLA0KPj4+Pj4+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBjb25zdCBjaGFyICpuYW1lLCB1MzIgKmxlbnApDQo+Pj4+Pj4gew0KPj4+ Pj4+ICAgICB1MzIgbGVuID0gMDsNCj4+Pj4+PiAgICAgY29uc3Qgc3RydWN0IGR0X3Byb3BlcnR5 ICpwcCA9IE5VTEw7DQo+Pj4+Pj4gDQo+Pj4+Pj4gICAgIGlmICggbnAgKQ0KPj4+Pj4+ICAgICB7 DQo+Pj4+Pj4gICAgICAgICBmb3IgKCBwcCA9IG5wLT5wcm9wZXJ0aWVzOyBwcDsgcHAgPSBwcC0+ bmV4dCApDQo+Pj4+Pj4gICAgICAgICB7DQo+Pj4+Pj4gICAgICAgICAgICAgaWYgKCBkdF9wcm9w X2NtcChwcC0+bmFtZSwgbmFtZSkgPT0gMCApDQo+Pj4+Pj4gICAgICAgICAgICAgew0KPj4+Pj4+ ICAgICAgICAgICAgICAgICBsZW4gPSBwcC0+bGVuZ3RoOw0KPj4+Pj4+ICAgICAgICAgICAgICAg ICBicmVhazsNCj4+Pj4+PiAgICAgICAgICAgICB9DQo+Pj4+Pj4gICAgICAgICB9DQo+Pj4+Pj4g ICAgIH0NCj4+Pj4+PiANCj4+Pj4+PiAgICAgaWYgKCBsZW5wICkNCj4+Pj4+PiAgICAgICAgICps ZW5wID0gbGVuOw0KPj4+Pj4+ICAgICByZXR1cm4gcHA7DQo+Pj4+Pj4gfQ0KPj4+Pj4gDQo+Pj4+ PiBOZXN0aW5nIG1vcmUgd2lsbCBtYWtlIHRoZSBjb2RlIGxlc3MgcmVhZGFibGUgYW5kIGFsc28g Y2F1c2Ugb3RoZXIgY29kZQ0KPj4+Pj4gcXVhbGl0eSBtZXRyaWNzIHRvIGRldGVyaW9yYXRlIChj eWNsb21hdGljIGNvbXBsZXhpdHkpLg0KPj4+Pj4gDQo+Pj4+PiBXb3VsZCB0aGUgYmVsb3cgd29y az8NCj4+Pj4+IA0KPj4+Pj4gDQo+Pj4+PiBjb25zdCBzdHJ1Y3QgZHRfcHJvcGVydHkgKmR0X2Zp bmRfcHJvcGVydHkoY29uc3Qgc3RydWN0IGR0X2RldmljZV9ub2RlICpucCwNCj4+Pj4+ICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICpuYW1lLCB1 MzIgKmxlbnApDQo+Pj4+PiB7DQo+Pj4+PiAgICAgdTMyIGxlbiA9IDA7DQo+Pj4+PiAgICAgY29u c3Qgc3RydWN0IGR0X3Byb3BlcnR5ICpwcCA9IE5VTEw7DQo+Pj4+PiANCj4+Pj4+ICAgICBpZiAo ICFucCApDQo+Pj4+PiAgICAgICAgIHJldHVybiBOVUxMDQo+Pj4+IFRoYXQncyB3aGF0IHdlIHN0 YXJ0ZWQgZnJvbSwgYnV0IGxlYXZpbmcgKmxlbnAgbm90IHdyaXR0ZW4gdG8uIEhvdw0KPj4+PiBh Ym91dCAuLi4NCj4+Pj4+ICAgICBmb3IgKCBwcCA9IG5wLT5wcm9wZXJ0aWVzOyBwcDsgcHAgPSBw cC0+bmV4dCApDQo+Pj4+ICAgICBmb3IgKCBwcCA9IG5wID8gbnAtPnByb3BlcnRpZXMgOiBOVUxM OyBwcDsgcHAgPSBwcC0+bmV4dCApID4gPiA/DQo+Pj4gDQo+Pj4gSSB3b3VsZCBiZSBPSyB3aXRo IHRoYXQuIE1heWJlIHdpdGggYW4gZXh0cmEgc2V0IG9mIHBhcmVudGhlc2VzIGFyb3VuZCAnIG5w ID8gLi4uIDogTlVMTCcganVzdCB0byBtYWtlIHZpc3VhbGx5IGVhc2llciB0byBwYXJzZS4NCj4+ IEFncmVlLCBhbmQgZm9yIE1JU1JBLCB3ZSBzaG91bGQgdXNlIGEgYm9vbGVhbiBleHByZXNzaW9u IGFzIGNvbmRpdGlvbiwgZXZlbiBpZiBJIGtub3cgdGhhdCB3ZSB3b3VsZCBsaWtlIHRvIGRldmlh dGUgZnJvbSB0aGF0LA0KPiBUaGUgY29kZSB3aWxsIGV2ZW4gYmUgbW9yZSBkaWZmaWN1bHQgdG8g cmVhZC4gU28gaWYgd2UgcGxhbiB0byBkZXZpYXRlLCB0aGVuIEkgZG9uJ3Qgd2FudCB1cyB0byB1 c2UgTUlTUkEtY29tcGxpYW50IGJvb2xlYW4gZXhwcmVzc2lvbiBoZXJlLg0KPiANCj4+IHdoaWNo IEkgZGlzbGlrZS4NCj4gDQo+IFdoYXQgZG8geW91IGRpc2xpa2U/DQoNClRoZSBmYWN0IHRoYXQg d2UgZG9u4oCZdCB1c2UgYm9vbGVhbiBleHByZXNzaW9ucyBhcyBjb25kaXRpb25zIChpbiBnZW5l cmFsLCBub3Qgb25seSB0aGlzIGV4YW1wbGUpLCBhbnl3YXkgaXQgd2FzIG9ubHkgbXkgcGVyc29u YWwgb3Bpbmlvbg0KDQo+IA0KPiBDaGVlcnMsDQo+IA0KPiAtLSANCj4gSnVsaWVuIEdyYWxsDQoN Cg== From xen-devel-bounces@lists.xenproject.org Mon Jun 19 09:10:04 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 19 Jun 2023 09:10:04 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550897.860110 (Exim 4.92) (envelope-from ) id 1qBAtQ-0008EO-Ba; Mon, 19 Jun 2023 09:09:48 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550897.860110; Mon, 19 Jun 2023 09:09:48 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBAtQ-0008EH-8E; Mon, 19 Jun 2023 09:09:48 +0000 Received: by outflank-mailman (input) for mailman id 550897; Mon, 19 Jun 2023 09:09:47 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBAtP-0008EB-5F for xen-devel@lists.xenproject.org; Mon, 19 Jun 2023 09:09:47 +0000 Received: from esa2.hc3370-68.iphmx.com (esa2.hc3370-68.iphmx.com [216.71.145.153]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 0630f5db-0e81-11ee-8611-37d641c3527e; Mon, 19 Jun 2023 11:09:43 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 0630f5db-0e81-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1687165784; h=from:to:cc:subject:date:message-id:mime-version: content-transfer-encoding; bh=QRMYHt/3CWBEZ6GpVJ9aX3neuXst+3n1CH30y1LUl0I=; b=SsJj8CvayBqClOqr2yJEJCoiErEVPDQqGHC7BK4DRjOTprRJ5ArjWTOs 9X676ytu1q+xERSkb5mJ5cjSlPr/Nhzu/lYywFA38EqZh0AXBYpP5kbfD O68pws+Z0sRVNrDCY5AeYby+Tsu4HTdicGNt8G0Len6oHPAack6FJMGTU Q=; Authentication-Results: esa2.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none X-SBRS: 4.0 X-MesageID: 113186527 X-Ironport-Server: esa2.hc3370-68.iphmx.com X-Remote-IP: 162.221.156.123 X-Policy: $RELAYED IronPort-Data: A9a23:O+O2bKDu9UR+TxVW/yfjw5YqxClBgxIJ4kV8jS/XYbTApDohg2YPy 2IcXT+BPfyLNGSge9p/aIXnpEsH68KEzNJqQQY4rX1jcSlH+JHPbTi7wuUcHAvJd5GeExg3h yk6QoOdRCzhZiaE/n9BCpC48T8nk/nOHuGmYAL9EngZbRd+Tys8gg5Ulec8g4p56fC0GArIs t7pyyHlEAbNNwVcbCRMs8pvlDs15K6p4G1B7wRnDRx2lAS2e0c9Xcp3yZ6ZdxMUcqEMdsamS uDKyq2O/2+x13/B3fv8z94X2mVTKlLjFVDmZkh+AsBOsTAbzsAG6Y4pNeJ0VKtio27hc+ada jl6ncfYpQ8BZsUgkQmGOvVSO3kW0aZuoNcrLZUj2CA6IoKvn3bEmp1T4E8K0YIwob5aQk1T7 t8kMg9dfkqDhryomqn8Vbw57igjBJGD0II3v3hhyXfSDOo8QICFSKLPjTNa9G5u3IYUR6+YP pdHL2M1N3wsYDUWUrsTIJs4gOevgGi5azBCoUiZjaE2/3LS3Ep6172F3N/9I4XRHJULwxzHz o7A11/QO0oebNme8AKU3UiStu6SpAn+eKtHQdVU8dY12QbOlwT/EiY+RVa95PW0lEO6c9ZeM FAPvDojq7Ao806mRcW7WAe3yFaPtwQQXNd4GOQg5AaAjKHT5m6xHXMYRzRMbNgnss4eRjEw0 FKN2dTzClRSXKa9ECzHsO3O9HXrZHZTdDVZDcMZcecby4K7jcIfkwnscsxcQL7vjtyrB2vrh C/f+UDSmI4vYd43O7STpA6X3Gv098OVEmbZ9S2MADv7s1oRiJqNItXxtAOFtasowJOxFAHpg ZQSpySJAAni57mpnTfFfugCFarBCx2tYGyF2g4H83XMGl2QF5+fkWN4umsWyL9BaJpsRNMQS Ba7VfltzJFSJmC2SqR8fpi8Dc8npYC5S4S6D6mPN4sUOMchHONiwM2JTRTJt10BbWB2yf1vU XtlWZvE4Ykm5VRPk2PtGrZ1PU4DzSEi32LDLa0XPDz+uYdykEW9EO9fWHPXN7BR0U9xiFmNm zqpH5fQmko3vSyXSnW/zLP/2nhTfCRgX8Cs+pEHHgNBSyI/cFwc5zbq6etJU+RYc259z48kI lnVtpdk9WfC IronPort-HdrOrdr: A9a23:/Wy/m68jieudbZmyanxuk+AuI+orL9Y04lQ7vn2ZKSY5TiVXra CTdZUgpHnJYVMqMk3I9uruBEDtex3hHNtOkOss1NSZLW7bUQmTXeJfBOLZqlWNJ8S9zJ856U 4JScND4bbLfDxHZKjBgTVRE7wbsaa6GKLDv5ah85+6JzsaGp2J7G1Ce3am+lUdfng+OXKgfq Dsm/auoVCbCAwqR/X+PFYpdc7ZqebGkZr3CCR2eyLOuGG1/EiVAKeRKWnj4isj X-Talos-CUID: =?us-ascii?q?9a23=3AXySLNGrb/Kyxu75MSsXQ6ZnmUZt9Xz7x0WzzH1W?= =?us-ascii?q?HWXYzSLzLVwWLv7wxxg=3D=3D?= X-Talos-MUID: 9a23:3hj13wZFgYoVs+BTjBbV3zU6McZR27WBMn49kMg/kcykHHkl X-IronPort-AV: E=Sophos;i="6.00,254,1681185600"; d="scan'208";a="113186527" From: Anthony PERARD To: CC: Anthony PERARD , Doug Goldstein , Stefano Stabellini Subject: [XEN PATCH] automation: Disable QEMU build with Clang older than 10.0 Date: Mon, 19 Jun 2023 10:09:32 +0100 Message-ID: <20230619090932.47957-1-anthony.perard@citrix.com> X-Mailer: git-send-email 2.39.2 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain Since QEMU commit 74a1b256d775 ("configure: Bump minimum Clang version to 10.0"), or QEMU v8.0, Clang 10.0 is now the minimum to build QEMU. QEMU 8.0 fails to build on Ubuntu Bionic. Signed-off-by: Anthony PERARD --- Notes: I've tested that change here, with QEMU v8.0.2: https://gitlab.com/xen-project/people/anthonyper/xen/-/pipelines/902576734 automation/scripts/build | 2 ++ 1 file changed, 2 insertions(+) diff --git a/automation/scripts/build b/automation/scripts/build index 38c48ae6d8..b4edcf010e 100755 --- a/automation/scripts/build +++ b/automation/scripts/build @@ -78,7 +78,9 @@ else fi # Qemu requires Python 3.5 or later, and ninja + # and Clang 10 or later if ! type python3 || python3 -c "import sys; res = sys.version_info < (3, 5); exit(not(res))" \ + || [[ "$cc_is_clang" == y && "$cc_ver" -lt 0x0a0000 ]] \ || ! type ninja; then cfgargs+=("--with-system-qemu=/bin/false") fi -- Anthony PERARD From xen-devel-bounces@lists.xenproject.org Mon Jun 19 09:19:59 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 19 Jun 2023 09:19:59 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550903.860119 (Exim 4.92) (envelope-from ) id 1qBB37-0001Lw-9I; Mon, 19 Jun 2023 09:19:49 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550903.860119; Mon, 19 Jun 2023 09:19:49 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBB37-0001Lp-6D; Mon, 19 Jun 2023 09:19:49 +0000 Received: by outflank-mailman (input) for mailman id 550903; Mon, 19 Jun 2023 09:19:47 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBB35-0001Lj-Kx for xen-devel@lists.xenproject.org; Mon, 19 Jun 2023 09:19:47 +0000 Received: from verein.lst.de (verein.lst.de [213.95.11.211]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 6e18ec18-0e82-11ee-8611-37d641c3527e; Mon, 19 Jun 2023 11:19:45 +0200 (CEST) Received: by verein.lst.de (Postfix, from userid 2407) id AFC556732D; Mon, 19 Jun 2023 11:19:41 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 6e18ec18-0e82-11ee-8611-37d641c3527e Date: Mon, 19 Jun 2023 11:19:41 +0200 From: Christoph Hellwig To: Juergen Gross , Stefano Stabellini , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , x86@kernel.org, "H. Peter Anvin" Cc: xen-devel@lists.xenproject.org, iommu@lists.linux.dev, linux-kernel@vger.kernel.org Subject: Re: unexport swiotlb_active v2 Message-ID: <20230619091941.GA17034@lst.de> References: <20230612142542.111581-1-hch@lst.de> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20230612142542.111581-1-hch@lst.de> User-Agent: Mutt/1.5.17 (2007-11-01) Any comments? I'd really like to finish this off this merge window.. From xen-devel-bounces@lists.xenproject.org Mon Jun 19 09:53:34 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 19 Jun 2023 09:53:34 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550910.860130 (Exim 4.92) (envelope-from ) id 1qBBZN-0005pS-Rk; Mon, 19 Jun 2023 09:53:09 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550910.860130; Mon, 19 Jun 2023 09:53:09 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBBZN-0005pL-OW; Mon, 19 Jun 2023 09:53:09 +0000 Received: by outflank-mailman (input) for mailman id 550910; Mon, 19 Jun 2023 09:53:08 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBBZM-0005pB-K5; Mon, 19 Jun 2023 09:53:08 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBBZM-0000mZ-A2; Mon, 19 Jun 2023 09:53:08 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBBZL-0007vs-UW; Mon, 19 Jun 2023 09:53:08 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qBBZL-0008P2-Tz; Mon, 19 Jun 2023 09:53:07 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=YoqZm1GsaJ4C60cVQYnYZCmxKP0q/EuudHU2Ge8In9U=; b=ASPS4FYw9vmaWOEzcUyrlB6iFv kOe7O0Bc11BnJRJyTjxcgBfHOi+mVbqurrPJuC3RQoUwgAp4H/N6rEe0/5Guo3H+EtRX7wmQuSALE tIIDvm2eod7tZhxGUOsOJwC8cA8aIv2pPrxtCKwc1k44knAk9dKc2Vq3Sw/ynnx7+ii8=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [qemu-mainline test] 181500: regressions - trouble: blocked/broken/fail/pass X-Osstest-Failures: qemu-mainline:build-armhf::broken:regression qemu-mainline:build-armhf:host-install(4):broken:regression qemu-mainline:build-amd64:xen-build:fail:regression qemu-mainline:build-amd64-xsm:xen-build:fail:regression qemu-mainline:build-i386:xen-build:fail:regression qemu-mainline:build-i386-xsm:xen-build:fail:regression qemu-mainline:build-arm64:xen-build:fail:regression qemu-mainline:build-arm64-xsm:xen-build:fail:regression qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-i386:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:build-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:build-arm64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:build-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:build-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pygrub:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking X-Osstest-Versions-This: qemuu=e3660cc1e3cb136af50c0eaaeac27943c2438d1d X-Osstest-Versions-That: qemuu=6972ef1440a9d685482d78672620a7482f2bd09a From: osstest service owner Date: Mon, 19 Jun 2023 09:53:07 +0000 flight 181500 qemu-mainline real [real] http://logs.test-lab.xenproject.org/osstest/logs/181500/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-armhf broken build-armhf 4 host-install(4) broken REGR. vs. 180691 build-amd64 6 xen-build fail REGR. vs. 180691 build-amd64-xsm 6 xen-build fail REGR. vs. 180691 build-i386 6 xen-build fail REGR. vs. 180691 build-i386-xsm 6 xen-build fail REGR. vs. 180691 build-arm64 6 xen-build fail REGR. vs. 180691 build-arm64-xsm 6 xen-build fail REGR. vs. 180691 Tests which did not succeed, but are not blocking: test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-xl-xsm 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-raw 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-xsm 1 build-check(1) blocked n/a test-arm64-arm64-xl 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit1 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit2 1 build-check(1) blocked n/a test-arm64-arm64-xl-thunderx 1 build-check(1) blocked n/a test-arm64-arm64-xl-vhd 1 build-check(1) blocked n/a test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a test-armhf-armhf-libvirt 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-qcow2 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-raw 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a test-armhf-armhf-xl-arndale 1 build-check(1) blocked n/a test-armhf-armhf-xl-multivcpu 1 build-check(1) blocked n/a test-armhf-armhf-xl-rtds 1 build-check(1) blocked n/a test-armhf-armhf-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-amd 1 build-check(1) blocked n/a test-amd64-i386-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-raw 1 build-check(1) blocked n/a test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-i386 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-amd64 1 build-check(1) blocked n/a test-amd64-coresched-i386-xl 1 build-check(1) blocked n/a test-amd64-coresched-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-xsm 1 build-check(1) blocked n/a build-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-shadow 1 build-check(1) blocked n/a test-amd64-amd64-xl-rtds 1 build-check(1) blocked n/a build-arm64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a build-armhf-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a build-i386-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-amd 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-pair 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-qcow2 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-vhd 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvshim 1 build-check(1) blocked n/a test-amd64-amd64-pair 1 build-check(1) blocked n/a test-amd64-amd64-pygrub 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-intel 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd11-amd64 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd12-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-multivcpu 1 build-check(1) blocked n/a test-amd64-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit1 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit1 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit2 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-intel 1 build-check(1) blocked n/a test-amd64-i386-xl 1 build-check(1) blocked n/a test-amd64-i386-xl-pvshim 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a version targeted for testing: qemuu e3660cc1e3cb136af50c0eaaeac27943c2438d1d baseline version: qemuu 6972ef1440a9d685482d78672620a7482f2bd09a Last test of basis 180691 2023-05-17 10:45:22 Z 32 days Failing since 180699 2023-05-18 07:21:24 Z 32 days 115 attempts Testing same since 181483 2023-06-17 15:10:36 Z 1 days 6 attempts ------------------------------------------------------------ People who touched revisions under test: Afonso Bordado Akihiko Odaki Akihiro Suda Alex Bennée Alex Williamson Alexander Bulekov Alexander Graf Alexander Ivanov Alistair Francis Anastasia Belova Andrea Bolognani Andreas Schwab Andrew Jeffery Ani Sinha Ani Sinha Anthony PERARD Anton Johansson Antonio Caggiano BALATON Zoltan Bastian Koppelmann Bernhard Beschow Bin Meng Brian Cain Brice Goglin Camilla Conte Carlos Santos Christian Schoenebeck Chuck Zmudzinski Cindy Lu Clément Chigot Corey Minyard Cornelia Huck Cédric Le Goater Cédric Le Goater Daniel Henrique Barboza Daniel Henrique Barboza Daniel P. Berrangé Daniil Kovalev David Hildenbrand David Woodhouse Emanuele Giuseppe Esposito Enze Li Eric Auger Eric Blake Eric DeVolder Erico Nunes Eugenio Pérez Fabiano Rosas Fan Ni Fiona Ebner Francesco Cagnin Francisco Iglesias Frederic Barrat Gavin Shan Gregory Price Gregory Price Hanna Czenczek Hao Zeng Hawkins Jiawei Himanshu Chauhan Igor Mammedov Ilya Leoshkevich Ira Weiny Ivan Klokov Jagannathan Raman Jason Wang Jean-Louis Dupond Jean-Philippe Brucker Jiajie Chen Jiaxun Yang Joao Martins John Snow Jonathan Cameron Juan Quintela Junqiang Wang Kevin Wolf Laurent Vivier Lei Yang Leonardo Bras Maksim Davydov Marc-André Lureau Marcin Juszkiewicz Marco Liebel Mark Cave-Ayland Markus Armbruster Matheus Tavares Bernardino Mattias Nissler Mauro Matteo Cascella Max Fritz Mayuresh Chitale Michael S. Tsirkin Michael Tokarev Michal Privoznik Milan Zamazal Mostafa Saleh Nicholas Piggin Nicolas Saenz Julienne Niek Linnenbank Niklas Cassel Ninad Palsule Palmer Dabbelt Paolo Bonzini Patrick Venture Peter Maydell Peter Xu Philippe Mathieu-Daudé Philippe Mathieu-Daudé qianfan Zhao Raghu H Rene Engel Richard Henderson Richard Purdie Ricky Zhou Ryan Wendland Sebastian Ott Sergio Lopez Sid Manning Song Gao Stefan Hajnoczi Stefano Garzarella Stefano Stabellini Stefano Stabellini Steve Sistare Sunil V L Taylor Simpson Thomas Huth Thomas Weißschuh Tianrui Zhao timothee.cocault@gmail.com Timothée Cocault Tommy Wu Vikram Garhwal Viktor Prutyanov Vitaly Cheptsov Vivek Kasireddy Vladimir Sementsov-Ogievskiy Volker Rümelin Weiwei Li Xiao Wang Xinyu Li Yin Wang Zeng Hao Zhenyu Zhang Zhenzhong Duan Zhuojia Shen jobs: build-amd64-xsm fail build-arm64-xsm fail build-i386-xsm fail build-amd64 fail build-arm64 fail build-armhf broken build-i386 fail build-amd64-libvirt blocked build-arm64-libvirt blocked build-armhf-libvirt blocked build-i386-libvirt blocked build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl blocked test-amd64-coresched-amd64-xl blocked test-arm64-arm64-xl blocked test-armhf-armhf-xl blocked test-amd64-i386-xl blocked test-amd64-coresched-i386-xl blocked test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-i386-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-amd64-libvirt-xsm blocked test-arm64-arm64-libvirt-xsm blocked test-amd64-i386-libvirt-xsm blocked test-amd64-amd64-xl-xsm blocked test-arm64-arm64-xl-xsm blocked test-amd64-i386-xl-xsm blocked test-amd64-amd64-qemuu-nested-amd blocked test-amd64-amd64-xl-pvhv2-amd blocked test-amd64-i386-qemuu-rhel6hvm-amd blocked test-amd64-amd64-dom0pvh-xl-amd blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-freebsd10-amd64 blocked test-amd64-amd64-qemuu-freebsd11-amd64 blocked test-amd64-amd64-qemuu-freebsd12-amd64 blocked test-amd64-amd64-xl-qemuu-ovmf-amd64 blocked test-amd64-i386-xl-qemuu-ovmf-amd64 blocked test-amd64-amd64-xl-qemuu-win7-amd64 blocked test-amd64-i386-xl-qemuu-win7-amd64 blocked test-amd64-amd64-xl-qemuu-ws16-amd64 blocked test-amd64-i386-xl-qemuu-ws16-amd64 blocked test-armhf-armhf-xl-arndale blocked test-amd64-amd64-xl-credit1 blocked test-arm64-arm64-xl-credit1 blocked test-armhf-armhf-xl-credit1 blocked test-amd64-amd64-xl-credit2 blocked test-arm64-arm64-xl-credit2 blocked test-armhf-armhf-xl-credit2 blocked test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-freebsd10-i386 blocked test-amd64-amd64-qemuu-nested-intel blocked test-amd64-amd64-xl-pvhv2-intel blocked test-amd64-i386-qemuu-rhel6hvm-intel blocked test-amd64-amd64-dom0pvh-xl-intel blocked test-amd64-amd64-libvirt blocked test-armhf-armhf-libvirt blocked test-amd64-i386-libvirt blocked test-amd64-amd64-xl-multivcpu blocked test-armhf-armhf-xl-multivcpu blocked test-amd64-amd64-pair blocked test-amd64-i386-pair blocked test-amd64-amd64-libvirt-pair blocked test-amd64-i386-libvirt-pair blocked test-amd64-amd64-xl-pvshim blocked test-amd64-i386-xl-pvshim blocked test-amd64-amd64-pygrub blocked test-armhf-armhf-libvirt-qcow2 blocked test-amd64-amd64-xl-qcow2 blocked test-arm64-arm64-libvirt-raw blocked test-armhf-armhf-libvirt-raw blocked test-amd64-i386-libvirt-raw blocked test-amd64-amd64-xl-rtds blocked test-armhf-armhf-xl-rtds blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-amd64-xl-shadow blocked test-amd64-i386-xl-shadow blocked test-arm64-arm64-xl-thunderx blocked test-amd64-amd64-libvirt-vhd blocked test-arm64-arm64-xl-vhd blocked test-armhf-armhf-xl-vhd blocked test-amd64-i386-xl-vhd blocked ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary broken-job build-armhf broken broken-step build-armhf host-install(4) Not pushing. (No revision log; it would be 19235 lines long.) From xen-devel-bounces@lists.xenproject.org Mon Jun 19 09:56:35 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 19 Jun 2023 09:56:35 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550919.860140 (Exim 4.92) (envelope-from ) id 1qBBcf-0006Ui-GQ; Mon, 19 Jun 2023 09:56:33 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550919.860140; Mon, 19 Jun 2023 09:56:33 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBBcf-0006Ub-Dn; Mon, 19 Jun 2023 09:56:33 +0000 Received: by outflank-mailman (input) for mailman id 550919; Mon, 19 Jun 2023 09:56:32 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBBce-0006UR-6d for xen-devel@lists.xenproject.org; Mon, 19 Jun 2023 09:56:32 +0000 Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 90673fba-0e87-11ee-b234-6b7b168915f2; Mon, 19 Jun 2023 11:56:30 +0200 (CEST) Received: from nico.bugseng.com (unknown [151.44.138.43]) by support.bugseng.com (Postfix) with ESMTPSA id 9AC0C4EE0741; Mon, 19 Jun 2023 11:56:26 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 90673fba-0e87-11ee-b234-6b7b168915f2 From: Nicola Vetrini To: xen-devel@lists.xenproject.org Cc: michal.orzel@amd.com, xenia.ragiadakou@amd.com, ayan.kumar.halder@amd.com, consulting@bugseng.com, Nicola Vetrini , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk , Rahul Singh , Andrew Cooper , George Dunlap , Jan Beulich , Wei Liu Subject: [XEN PATCH v2 0/3] fix violations of MISRA C:2012 Rule 3.1 Date: Mon, 19 Jun 2023 11:56:10 +0200 Message-Id: X-Mailer: git-send-email 2.34.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Hi all, This patch series is about the violations present in the Xen sources of Rule 3.1 from MISRA C:2012, whose headline states: "The character sequences '/*' and '//' shall not be used within a comment". In the context of the effort to bring xen into compliance w.r.t. MISRA C:2012, and Rule 3.1 being already approved for the project (as evidenced by `docs/misra/rules.rst'), these violations need to be fixed. Most of the violations are due to the presence of links to webpages within C-style comment blocks, such as: xen/arch/arm/include/asm/smccc.h:37.1-41.3 /* * This file provides common defines for ARM SMC Calling Convention as * specified in * http://infocenter.arm.com/help/topic/com.arm.doc.den0028a/index.html */ In this case, I propose to deviate all of these occurrences with a project deviation to be captured by a tool configuration (not included in any patch from this series). There are, however, a few other violations that do not fall under this category, which are the focus of the following set of patches. They either: 1. remove the nested '//' character sequence within a block comment; 2. remove the surrounding comment. Thanks, Nicola Nicola Vetrini (3): xen/arch/arm: fix violations of MISRA C:2012 Rule 3.1 xen/drivers/passthrough/arm/smmu-v3.c: fix violations of MISRA C:2012 Rule 3.1 xen: fix violations of MISRA C:2012 Rule 3.1 xen/arch/arm/include/asm/arm32/flushtlb.h | 8 ++++---- xen/arch/arm/include/asm/arm64/flushtlb.h | 8 ++++---- xen/common/xmalloc_tlsf.c | 3 --- xen/drivers/passthrough/arm/smmu-v3.c | 4 ++-- xen/include/xen/atomic.h | 2 +- 5 files changed, 11 insertions(+), 14 deletions(-) -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 19 09:56:40 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 19 Jun 2023 09:56:40 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550921.860149 (Exim 4.92) (envelope-from ) id 1qBBcm-0006m1-O0; Mon, 19 Jun 2023 09:56:40 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550921.860149; Mon, 19 Jun 2023 09:56:40 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBBcm-0006lu-L2; Mon, 19 Jun 2023 09:56:40 +0000 Received: by outflank-mailman (input) for mailman id 550921; Mon, 19 Jun 2023 09:56:40 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBBcm-0006ke-6J for xen-devel@lists.xenproject.org; Mon, 19 Jun 2023 09:56:40 +0000 Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 9514e56d-0e87-11ee-8611-37d641c3527e; Mon, 19 Jun 2023 11:56:38 +0200 (CEST) Received: from nico.bugseng.com (unknown [151.44.138.43]) by support.bugseng.com (Postfix) with ESMTPSA id A2DAF4EE0C8D; Mon, 19 Jun 2023 11:56:36 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 9514e56d-0e87-11ee-8611-37d641c3527e From: Nicola Vetrini To: xen-devel@lists.xenproject.org Cc: michal.orzel@amd.com, xenia.ragiadakou@amd.com, ayan.kumar.halder@amd.com, consulting@bugseng.com, Nicola Vetrini , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk Subject: [XEN PATCH v2 1/3] xen/arch/arm: fix violations of MISRA C:2012 Rule 3.1 Date: Mon, 19 Jun 2023 11:56:11 +0200 Message-Id: X-Mailer: git-send-email 2.34.1 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit In the files `xen/arch/arm/include/asm/arm(32|64)/flushtlb.h' there are a few occurrences of nested '//' character sequences inside C-style comment blocks, which violate Rule 3.1. The patch aims to resolve those by removing the nested comments. Signed-off-by: Nicola Vetrini --- xen/arch/arm/include/asm/arm32/flushtlb.h | 8 ++++---- xen/arch/arm/include/asm/arm64/flushtlb.h | 8 ++++---- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/xen/arch/arm/include/asm/arm32/flushtlb.h b/xen/arch/arm/include/asm/arm32/flushtlb.h index 22ee3b317b..bcbeac590b 100644 --- a/xen/arch/arm/include/asm/arm32/flushtlb.h +++ b/xen/arch/arm/include/asm/arm32/flushtlb.h @@ -4,10 +4,10 @@ /* * Every invalidation operation use the following patterns: * - * DSB ISHST // Ensure prior page-tables updates have completed - * TLBI... // Invalidate the TLB - * DSB ISH // Ensure the TLB invalidation has completed - * ISB // See explanation below + * DSB ISHST Ensure prior page-tables updates have completed + * TLBI... Invalidate the TLB + * DSB ISH Ensure the TLB invalidation has completed + * ISB See explanation below * * For Xen page-tables the ISB will discard any instructions fetched * from the old mappings. diff --git a/xen/arch/arm/include/asm/arm64/flushtlb.h b/xen/arch/arm/include/asm/arm64/flushtlb.h index 56c6fc763b..6066a2d703 100644 --- a/xen/arch/arm/include/asm/arm64/flushtlb.h +++ b/xen/arch/arm/include/asm/arm64/flushtlb.h @@ -4,10 +4,10 @@ /* * Every invalidation operation use the following patterns: * - * DSB ISHST // Ensure prior page-tables updates have completed - * TLBI... // Invalidate the TLB - * DSB ISH // Ensure the TLB invalidation has completed - * ISB // See explanation below + * DSB ISHST Ensure prior page-tables updates have completed + * TLBI... Invalidate the TLB + * DSB ISH Ensure the TLB invalidation has completed + * ISB See explanation below * * ARM64_WORKAROUND_REPEAT_TLBI: * Modification of the translation table for a virtual address might lead to -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 19 09:56:47 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 19 Jun 2023 09:56:47 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550923.860160 (Exim 4.92) (envelope-from ) id 1qBBct-00075L-0C; Mon, 19 Jun 2023 09:56:47 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550923.860160; Mon, 19 Jun 2023 09:56:46 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBBcs-00075C-SD; Mon, 19 Jun 2023 09:56:46 +0000 Received: by outflank-mailman (input) for mailman id 550923; Mon, 19 Jun 2023 09:56:45 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBBcr-0006ke-Hp for xen-devel@lists.xenproject.org; Mon, 19 Jun 2023 09:56:45 +0000 Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 98516d38-0e87-11ee-8611-37d641c3527e; Mon, 19 Jun 2023 11:56:43 +0200 (CEST) Received: from nico.bugseng.com (unknown [151.44.138.43]) by support.bugseng.com (Postfix) with ESMTPSA id 8CE034EE0741; Mon, 19 Jun 2023 11:56:41 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 98516d38-0e87-11ee-8611-37d641c3527e From: Nicola Vetrini To: xen-devel@lists.xenproject.org Cc: michal.orzel@amd.com, xenia.ragiadakou@amd.com, ayan.kumar.halder@amd.com, consulting@bugseng.com, Nicola Vetrini , Bertrand Marquis , Rahul Singh , Stefano Stabellini , Julien Grall , Volodymyr Babchuk Subject: [XEN PATCH v2 2/3] xen/drivers/passthrough/arm/smmu-v3.c: fix violations of MISRA C:2012 Rule 3.1 Date: Mon, 19 Jun 2023 11:56:12 +0200 Message-Id: <3f8d720c09d603edcc608b1b73423c35ea8f6e3f.1687167502.git.nicola.vetrini@bugseng.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit In the file `xen/drivers/passthrough/arm/smmu-v3.c' there are a few occurrences of nested '//' character sequences inside C-style comment blocks, which violate Rule 3.1. The patch aims to resolve those by removing the nested comments. Signed-off-by: Nicola Vetrini --- xen/drivers/passthrough/arm/smmu-v3.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/xen/drivers/passthrough/arm/smmu-v3.c b/xen/drivers/passthrough/arm/smmu-v3.c index 720aa69ff2..f410863e10 100644 --- a/xen/drivers/passthrough/arm/smmu-v3.c +++ b/xen/drivers/passthrough/arm/smmu-v3.c @@ -1047,10 +1047,10 @@ static int arm_smmu_atc_inv_domain(struct arm_smmu_domain *smmu_domain, * before we read 'nr_ats_masters' in case of a concurrent call to * arm_smmu_enable_ats(): * - * // unmap() // arm_smmu_enable_ats() + * unmap() arm_smmu_enable_ats() * TLBI+SYNC atomic_inc(&nr_ats_masters); * smp_mb(); [...] - * atomic_read(&nr_ats_masters); pci_enable_ats() // writel() + * atomic_read(&nr_ats_masters); pci_enable_ats() (i.e. writel()) * * Ensures that we always see the incremented 'nr_ats_masters' count if * ATS was enabled at the PCI device before completion of the TLBI. -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 19 09:56:50 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 19 Jun 2023 09:56:50 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550924.860170 (Exim 4.92) (envelope-from ) id 1qBBcw-0007OG-9H; Mon, 19 Jun 2023 09:56:50 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550924.860170; Mon, 19 Jun 2023 09:56:50 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBBcw-0007O4-3g; Mon, 19 Jun 2023 09:56:50 +0000 Received: by outflank-mailman (input) for mailman id 550924; Mon, 19 Jun 2023 09:56:49 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBBcv-0006UR-2H for xen-devel@lists.xenproject.org; Mon, 19 Jun 2023 09:56:49 +0000 Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 9b3da1dc-0e87-11ee-b234-6b7b168915f2; Mon, 19 Jun 2023 11:56:48 +0200 (CEST) Received: from nico.bugseng.com (unknown [151.44.138.43]) by support.bugseng.com (Postfix) with ESMTPSA id D895A4EE0C8C; Mon, 19 Jun 2023 11:56:45 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 9b3da1dc-0e87-11ee-b234-6b7b168915f2 From: Nicola Vetrini To: xen-devel@lists.xenproject.org Cc: michal.orzel@amd.com, xenia.ragiadakou@amd.com, ayan.kumar.halder@amd.com, consulting@bugseng.com, Nicola Vetrini , Andrew Cooper , George Dunlap , Jan Beulich , Julien Grall , Stefano Stabellini , Wei Liu Subject: [XEN PATCH v2 3/3] xen: fix violations of MISRA C:2012 Rule 3.1 Date: Mon, 19 Jun 2023 11:56:13 +0200 Message-Id: <9c3c83c17cb3a4ee9cc1241cefc15840d23d107e.1687167502.git.nicola.vetrini@bugseng.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit In the files modified by this patch there are a few occurrences of nested '//' character sequences inside C-style comment blocks, which violate Rule 3.1. The patch aims to resolve those by removing the nested comments. In the file `xen/common/xmalloc_tlsf.c' the comment has been deleted, following the suggestion of a review comment. In the file `xen/include/xen/atomic.h' the nested comment has been removed, since the code sample is already explained by the preceding comment. Signed-off-by: Nicola Vetrini --- xen/common/xmalloc_tlsf.c | 3 --- xen/include/xen/atomic.h | 2 +- 2 files changed, 1 insertion(+), 4 deletions(-) diff --git a/xen/common/xmalloc_tlsf.c b/xen/common/xmalloc_tlsf.c index 75bdf18c4e..4f9f60a39d 100644 --- a/xen/common/xmalloc_tlsf.c +++ b/xen/common/xmalloc_tlsf.c @@ -140,9 +140,6 @@ static inline void MAPPING_SEARCH(unsigned long *r, int *fl, int *sl) *fl = flsl(*r) - 1; *sl = (*r >> (*fl - MAX_LOG2_SLI)) - MAX_SLI; *fl -= FLI_OFFSET; - /*if ((*fl -= FLI_OFFSET) < 0) // FL will be always >0! - *fl = *sl = 0; - */ *r &= ~t; } } diff --git a/xen/include/xen/atomic.h b/xen/include/xen/atomic.h index 529213ebbb..fa750a18ae 100644 --- a/xen/include/xen/atomic.h +++ b/xen/include/xen/atomic.h @@ -78,7 +78,7 @@ static inline void _atomic_set(atomic_t *v, int i); * int old = atomic_read(&v); * int new = old + 1; * if ( likely(old == atomic_cmpxchg(&v, old, new)) ) - * break; // success! + * break; * } */ static inline int atomic_cmpxchg(atomic_t *v, int old, int new); -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 19 10:01:38 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 19 Jun 2023 10:01:38 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550947.860179 (Exim 4.92) (envelope-from ) id 1qBBhR-0001HI-Q4; Mon, 19 Jun 2023 10:01:29 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550947.860179; Mon, 19 Jun 2023 10:01:29 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBBhR-0001HB-NJ; Mon, 19 Jun 2023 10:01:29 +0000 Received: by outflank-mailman (input) for mailman id 550947; Mon, 19 Jun 2023 10:01:28 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBBhP-0001H5-UI for xen-devel@lists.xenproject.org; Mon, 19 Jun 2023 10:01:27 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBBhP-000132-2R; Mon, 19 Jun 2023 10:01:27 +0000 Received: from 54-240-197-238.amazon.com ([54.240.197.238] helo=[192.168.19.123]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qBBhO-0007jW-Sm; Mon, 19 Jun 2023 10:01:27 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=bvIXkD7jOr5izIafa/FlJWd8O9xrJs73AJhW30q3tL8=; b=aS4L3nl6YDJtf71hA31JqDV8vi S3H+55UJ9iHECqV1GVaarK8fT9aU4n53xX4O+H07tDR3YIxExc0hg9paYWKrhSf1pyr2qNWzmi0AW V50vwVVwMBvkjdVEikLrcz3HfyDx+5aExBeYQr5uFNBHuibOLMhUth4DwveXtnEvzWt0=; Message-ID: <51501199-80e6-e33f-e70a-7a36d26c1894@xen.org> Date: Mon, 19 Jun 2023 11:01:24 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [XEN PATCH v2 1/3] xen/arch/arm: fix violations of MISRA C:2012 Rule 3.1 Content-Language: en-US To: Nicola Vetrini , xen-devel@lists.xenproject.org Cc: michal.orzel@amd.com, xenia.ragiadakou@amd.com, ayan.kumar.halder@amd.com, consulting@bugseng.com, Stefano Stabellini , Bertrand Marquis , Volodymyr Babchuk References: From: Julien Grall In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi, On 19/06/2023 10:56, Nicola Vetrini wrote: > In the files `xen/arch/arm/include/asm/arm(32|64)/flushtlb.h' there are a > few occurrences of nested '//' character sequences inside C-style comment > blocks, which violate Rule 3.1. The patch aims to resolve those by removing > the nested comments. As I wrote in https://lore.kernel.org/xen-devel/f3fc1848-68ca-37a1-add2-e100b4773190@xen.org/, I am against replacing '//' with nothing. I have proposed to use ';' because this is also a valid way to comment in assembly. > > Signed-off-by: Nicola Vetrini ' at the end of the list. > --- > Changes: > - Resending the patch with the right maintainers in CC. > Changes in V2: > - Split the patch into a series and reworked the fix. > - Apply the fix to the arm32 `flushtlb.h' file, for consistency > Signed-off-by: Nicola Vetrini > --- > xen/arch/arm/include/asm/arm32/flushtlb.h | 8 ++++---- > xen/arch/arm/include/asm/arm64/flushtlb.h | 8 ++++---- > 2 files changed, 8 insertions(+), 8 deletions(-) > > diff --git a/xen/arch/arm/include/asm/arm32/flushtlb.h b/xen/arch/arm/include/asm/arm32/flushtlb.h > index 22ee3b317b..bcbeac590b 100644 > --- a/xen/arch/arm/include/asm/arm32/flushtlb.h > +++ b/xen/arch/arm/include/asm/arm32/flushtlb.h > @@ -4,10 +4,10 @@ > /* > * Every invalidation operation use the following patterns: > * > - * DSB ISHST // Ensure prior page-tables updates have completed > - * TLBI... // Invalidate the TLB > - * DSB ISH // Ensure the TLB invalidation has completed > - * ISB // See explanation below > + * DSB ISHST Ensure prior page-tables updates have completed > + * TLBI... Invalidate the TLB > + * DSB ISH Ensure the TLB invalidation has completed > + * ISB See explanation below > * > * For Xen page-tables the ISB will discard any instructions fetched > * from the old mappings. > diff --git a/xen/arch/arm/include/asm/arm64/flushtlb.h b/xen/arch/arm/include/asm/arm64/flushtlb.h > index 56c6fc763b..6066a2d703 100644 > --- a/xen/arch/arm/include/asm/arm64/flushtlb.h > +++ b/xen/arch/arm/include/asm/arm64/flushtlb.h > @@ -4,10 +4,10 @@ > /* > * Every invalidation operation use the following patterns: > * > - * DSB ISHST // Ensure prior page-tables updates have completed > - * TLBI... // Invalidate the TLB > - * DSB ISH // Ensure the TLB invalidation has completed > - * ISB // See explanation below > + * DSB ISHST Ensure prior page-tables updates have completed > + * TLBI... Invalidate the TLB > + * DSB ISH Ensure the TLB invalidation has completed > + * ISB See explanation below > * > * ARM64_WORKAROUND_REPEAT_TLBI: > * Modification of the translation table for a virtual address might lead to Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Mon Jun 19 10:10:38 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 19 Jun 2023 10:10:38 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550952.860190 (Exim 4.92) (envelope-from ) id 1qBBq3-0002mO-Jv; Mon, 19 Jun 2023 10:10:23 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550952.860190; Mon, 19 Jun 2023 10:10:23 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBBq3-0002mH-HG; Mon, 19 Jun 2023 10:10:23 +0000 Received: by outflank-mailman (input) for mailman id 550952; Mon, 19 Jun 2023 10:10:21 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBBq1-0002mB-LC for xen-devel@lists.xenproject.org; Mon, 19 Jun 2023 10:10:21 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBBq0-0001KS-SC; Mon, 19 Jun 2023 10:10:20 +0000 Received: from 54-240-197-238.amazon.com ([54.240.197.238] helo=[192.168.19.123]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qBBq0-00084H-Lu; Mon, 19 Jun 2023 10:10:20 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=8YRet5waHLQJcjUaj6iIOEDy7Nta8WPeHCIRmHX8RO8=; b=DMAONFnigzGGScWNZAGtKj6LAg EtLK33MKwEWHqJKKgAOIGjCfMZXLAUXxxXcdwp/HAYCHm0Xn5xunllBeKwspIALvl4YDIRe+cEe2Z 28a+Zo6RohmXY+m8KGClwO9eOIwdFDNm51POUdABcxvHaDDZAW1unqrv4u2lKiwpZfgc=; Message-ID: <637d2a61-2c30-76a4-60b0-cf4d979c59be@xen.org> Date: Mon, 19 Jun 2023 11:10:18 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [XEN PATCH v2 2/3] xen/drivers/passthrough/arm/smmu-v3.c: fix violations of MISRA C:2012 Rule 3.1 Content-Language: en-US To: Nicola Vetrini , xen-devel@lists.xenproject.org Cc: michal.orzel@amd.com, xenia.ragiadakou@amd.com, ayan.kumar.halder@amd.com, consulting@bugseng.com, Bertrand Marquis , Rahul Singh , Stefano Stabellini , Volodymyr Babchuk References: <3f8d720c09d603edcc608b1b73423c35ea8f6e3f.1687167502.git.nicola.vetrini@bugseng.com> From: Julien Grall In-Reply-To: <3f8d720c09d603edcc608b1b73423c35ea8f6e3f.1687167502.git.nicola.vetrini@bugseng.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi, On 19/06/2023 10:56, Nicola Vetrini wrote: > In the file `xen/drivers/passthrough/arm/smmu-v3.c' there are a few occurrences > of nested '//' character sequences inside C-style comment blocks, which violate > Rule 3.1. The patch aims to resolve those by removing the nested comments. I think it is important to understand/explain what was the intention of the // before removing them because, IMHO, the new approach doesn't convey the same information. Before... > > Signed-off-by: Nicola Vetrini Changes: > - Resending the patch with the right maintainers in CC. > Changes in V2: > - Split the patch into a series and reworked the fix. > - Apply the fix to the arm32 `flushtlb.h' file, for consistency > Signed-off-by: Nicola Vetrini > --- > xen/drivers/passthrough/arm/smmu-v3.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/xen/drivers/passthrough/arm/smmu-v3.c b/xen/drivers/passthrough/arm/smmu-v3.c > index 720aa69ff2..f410863e10 100644 > --- a/xen/drivers/passthrough/arm/smmu-v3.c > +++ b/xen/drivers/passthrough/arm/smmu-v3.c > @@ -1047,10 +1047,10 @@ static int arm_smmu_atc_inv_domain(struct arm_smmu_domain *smmu_domain, > * before we read 'nr_ats_masters' in case of a concurrent call to > * arm_smmu_enable_ats(): > * > - * // unmap() // arm_smmu_enable_ats() > + * unmap() arm_smmu_enable_ats() ... with the // it would be clearer that the code below belongs to each function. But now, it leads to think there are a call to 'unmap' which it then followed by TLBI+SYNC. In this case, I would propose to use --- --- > * TLBI+SYNC atomic_inc(&nr_ats_masters); > * smp_mb(); [...] > - * atomic_read(&nr_ats_masters); pci_enable_ats() // writel() > + * atomic_read(&nr_ats_masters); pci_enable_ats() (i.e. writel()) NIT: I think 'see' would be better than 'i.e.' because I read it as pci_enable_ats() is a simple writel(). > * > * Ensures that we always see the incremented 'nr_ats_masters' count if > * ATS was enabled at the PCI device before completion of the TLBI. Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Mon Jun 19 10:14:14 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 19 Jun 2023 10:14:14 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550957.860199 (Exim 4.92) (envelope-from ) id 1qBBtg-0003Lv-3q; Mon, 19 Jun 2023 10:14:08 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550957.860199; Mon, 19 Jun 2023 10:14:08 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBBtg-0003Lo-1D; Mon, 19 Jun 2023 10:14:08 +0000 Received: by outflank-mailman (input) for mailman id 550957; Mon, 19 Jun 2023 10:14:07 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBBtf-0003Li-8V for xen-devel@lists.xenproject.org; Mon, 19 Jun 2023 10:14:07 +0000 Received: from mo4-p00-ob.smtp.rzone.de (mo4-p00-ob.smtp.rzone.de [85.215.255.20]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 048e8d42-0e8a-11ee-b234-6b7b168915f2; Mon, 19 Jun 2023 12:14:04 +0200 (CEST) Received: from sender by smtp.strato.de (RZmta 49.6.0 AUTH) with ESMTPSA id y5401az5JADuG4a (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256 bits)) (Client did not present a certificate); Mon, 19 Jun 2023 12:13:56 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 048e8d42-0e8a-11ee-b234-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; t=1687169636; cv=none; d=strato.com; s=strato-dkim-0002; b=P02EYdu7j6DvSaHjFMcd6+7gUasutufVpAUCzW0G9n78PmEv1RVR/pQ4cyQXhN8H3b YkGo0ZQF8H/p5RAkb+eiGDRyC69hcxAheguy5r3OVDlQQWzlmvx7WZhOPCxgLQhZW+Vd xwyCvmTgok9TPCHYruyz0L+6KlIrIZe0W/p95P+uSLcUNysxiU5tF0Bb7DLMB2+ZVu2N ikyTgePKzJQ00f+iQwY+FcufjsOpNX+60X4RhORt2DWCkO/OeN9xyLaN704rcmRi1ff0 ofgCZpFcEacYDM++6D56YKSR8Jmc5s2gItj/FTXQK0kg9tQQFmrPFkrZb0f6tVmxKGkR oGcw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; t=1687169636; s=strato-dkim-0002; d=strato.com; h=References:In-Reply-To:Message-ID:Subject:Cc:To:From:Date:Cc:Date: From:Subject:Sender; bh=VNcHvctWuhvVLIU2ZeYNxzVLo/+gbcCAb0hM5X+2FWQ=; b=iPjenJDJFnOB+azVdyiF4epJdge7sqQ1YOJBAOv7vD+gbeFH/Kq/pGI+YtoxPmawRX ehrbpfZRR4WcjbYF0LCqSBZA0pgy9pSJmVS6+xHsOH1YzmOeQOhxhLaBFHbd4ED9AMMk diAv0QaSL4QymtBFm5Edol7rLBUpkdiXkmELk/hDhHfMuRZ0H1U8ISgMUumnV/HkEjY8 SnBvxmgQtlxrE+Ynj6e3PiJMFn3k7Mp3E/C/vB2yAaFcGiVamFdOJKiPxpElOKt7xyxJ Yui8D1KrCdCcvhFKyXdoGD0l0pJee36kF23lUEL90SA0lnacFBqurxiioGTyHz4L89t+ xVig== ARC-Authentication-Results: i=1; strato.com; arc=none; dkim=none X-RZG-CLASS-ID: mo00 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; t=1687169636; s=strato-dkim-0002; d=aepfle.de; h=References:In-Reply-To:Message-ID:Subject:Cc:To:From:Date:Cc:Date: From:Subject:Sender; bh=VNcHvctWuhvVLIU2ZeYNxzVLo/+gbcCAb0hM5X+2FWQ=; b=coVLWIF+H9QzgZ3Je5yAce9jCGSG5j34A2frMr7xAEJ+1/zyWunpVBqbmaT9kanEK2 N6cpfa5/pej72iD0BOUhhbMBtD7kkbywfEYymqKrdsHmBkj87siYSqbY7erzZZEArWjr wcw4I56xsuz67bpQ9vXQddhzuTDR7zJRyp9WghHr4wS0uM6pDdqSst7DsArVcTg3n9MU GVXDdc18WOsPi3lP3kSzaDD9txyOV1rLxuwyleNMjN1232OTGBmCFjUaYRbq2P1n2qpx VcYSOHKwAeWEolyeEjpQLChGduNnFyjmBrB4cxCleRCmSLLBZZ0ShmknV6onViVVwZFr AjGA== DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; t=1687169636; s=strato-dkim-0003; d=aepfle.de; h=References:In-Reply-To:Message-ID:Subject:Cc:To:From:Date:Cc:Date: From:Subject:Sender; bh=VNcHvctWuhvVLIU2ZeYNxzVLo/+gbcCAb0hM5X+2FWQ=; b=hioHoJ/lg9LgZt+bWtHm6mbGN/cJvWAq35MgcL10k8FvBckwujWEGYk1jSX2ybEHsK 5T5d6/P7EFi8vDGntfAw== X-RZG-AUTH: ":P2EQZWCpfu+qG7CngxMFH1J+3q8wa/QLpd5ylWvMDX3y/OuD5rXVisR5AB2Ibh3sRFQAfajHZ8Hr2i7N1ImBUHmXWy0PQg==" Date: Mon, 19 Jun 2023 12:13:49 +0200 From: Olaf Hering To: George Dunlap Cc: Jan Beulich , xen-devel@lists.xenproject.org, Juergen Gross , George Dunlap Subject: Re: xentrace buffer size, maxcpus and online cpus Message-ID: <20230619121349.2327bcff.olaf@aepfle.de> In-Reply-To: References: <20230530095859.60a3e4ea.olaf@aepfle.de> <578d341d-0c54-de64-73e7-1dfc7e5d7584@suse.com> <20230530220613.4c4da5cc.olaf@aepfle.de> <1b99e58d-338c-02af-eeab-00d691337d00@suse.com> <20230616134708.6b3c6964.olaf@aepfle.de> X-Mailer: Claws Mail 20230601T090920.68bc28c0 hat ein Softwareproblem, kann man nichts machen. MIME-Version: 1.0 Content-Type: multipart/signed; boundary="Sig_/OBMPjOKCTrdJ8z8p0pJWsR3"; protocol="application/pgp-signature"; micalg=pgp-sha256 Content-Transfer-Encoding: 7bit --Sig_/OBMPjOKCTrdJ8z8p0pJWsR3 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: quoted-printable Fri, 16 Jun 2023 15:22:24 +0100 George Dunlap : > I agree; the clear implication is that with smt=3D0, you might have > num_online_cpus() return 4, but cpuids that look like {1, 3, 5, 7}; so you > need the trace buffer array to be of size 8. I have tested the patch below with this cmdline: conring_size=3D32M loglvl=3Dall guest_loglvl=3Dall crashkernel=3D264M,below= =3D4G console=3Dcom1 com1=3D115200 dom0_mem=3D16G dom0_max_vcpus=3D8 dom0_vcpus_p= in maxcpus=3D10 console_timestamps=3Ddatems tbuf_size=3D-1 smt=3D0 It appears to work as expected. One downside is that xenalyze reports each cpu it finds based on index, instead of the real smp_processor_id. That is apparently a limitation of the interface. In the end this detail may not matter. I think this change should go on top of a revert of commit 74584a367051bc0d6f4b96fd360fa7bc6538fc39. Regarding coding style: can this_cpu and per_cpu be used as array index, or is a temporary variable required? This would affect the number of lines changed in next_record. Olaf --- a/xen/common/trace.c +++ b/xen/common/trace.c @@ -53,6 +53,7 @@ integer_param("tevt_mask", opt_tevt_mask); static struct t_info *t_info; static unsigned int t_info_pages; =20 +static DEFINE_PER_CPU_READ_MOSTLY(uint16_t, t_info_mfn_offset); static DEFINE_PER_CPU_READ_MOSTLY(struct t_buf *, t_bufs); static DEFINE_PER_CPU_READ_MOSTLY(spinlock_t, t_lock); static u32 data_size __read_mostly; @@ -110,7 +111,8 @@ static int calculate_tbuf_size(unsigned int pages, uint= 16_t t_info_first_offset) struct t_info dummy_pages; typeof(dummy_pages.tbuf_size) max_pages; typeof(dummy_pages.mfn_offset[0]) max_mfn_offset; - unsigned int max_cpus =3D nr_cpu_ids; + unsigned int nr_cpus =3D num_online_cpus(); + unsigned int max_cpus =3D nr_cpus; unsigned int t_info_words; =20 /* force maximum value for an unsigned type */ @@ -148,11 +150,11 @@ static int calculate_tbuf_size(unsigned int pages, ui= nt16_t t_info_first_offset) * NB this calculation is correct, because t_info_first_offset is * in words, not bytes */ - t_info_words =3D nr_cpu_ids * pages + t_info_first_offset; + t_info_words =3D nr_cpus * pages + t_info_first_offset; t_info_pages =3D PFN_UP(t_info_words * sizeof(uint32_t)); printk(XENLOG_INFO "xentrace: requesting %u t_info pages " "for %u trace pages on %u cpus\n", - t_info_pages, pages, nr_cpu_ids); + t_info_pages, pages, nr_cpus); return pages; } =20 @@ -173,6 +175,7 @@ static int alloc_trace_bufs(unsigned int pages) uint32_t *t_info_mfn_list; uint16_t t_info_first_offset; uint16_t offset; + uint16_t index =3D 0; =20 if ( t_info ) return -EBUSY; @@ -201,8 +204,9 @@ static int alloc_trace_bufs(unsigned int pages) */ for_each_online_cpu(cpu) { - offset =3D t_info_first_offset + (cpu * pages); - t_info->mfn_offset[cpu] =3D offset; + per_cpu(t_info_mfn_offset, cpu) =3D index; + offset =3D t_info_first_offset + (index * pages); + t_info->mfn_offset[index] =3D offset; =20 for ( i =3D 0; i < pages; i++ ) { @@ -216,6 +220,7 @@ static int alloc_trace_bufs(unsigned int pages) } t_info_mfn_list[offset + i] =3D virt_to_mfn(p); } + index++; } =20 /* @@ -227,7 +232,8 @@ static int alloc_trace_bufs(unsigned int pages) =20 spin_lock_init(&per_cpu(t_lock, cpu)); =20 - offset =3D t_info->mfn_offset[cpu]; + index =3D per_cpu(t_info_mfn_offset, cpu); + offset =3D t_info->mfn_offset[index]; =20 /* Initialize the buffer metadata */ per_cpu(t_bufs, cpu) =3D buf =3D mfn_to_virt(t_info_mfn_list[offse= t]); @@ -260,7 +266,8 @@ static int alloc_trace_bufs(unsigned int pages) out_dealloc: for_each_online_cpu(cpu) { - offset =3D t_info->mfn_offset[cpu]; + index =3D per_cpu(t_info_mfn_offset, cpu); + offset =3D t_info->mfn_offset[index]; if ( !offset ) continue; for ( i =3D 0; i < pages; i++ ) @@ -509,6 +516,7 @@ static unsigned char *next_record(const struct t_buf *b= uf, uint32_t *next, uint32_t per_cpu_mfn_nr; uint32_t *mfn_list; uint32_t mfn; + uint16_t index; unsigned char *this_page; =20 barrier(); /* must read buf->prod and buf->cons only once */ @@ -527,7 +535,8 @@ static unsigned char *next_record(const struct t_buf *b= uf, uint32_t *next, =20 /* offset into array of mfns */ per_cpu_mfn_nr =3D x >> PAGE_SHIFT; - per_cpu_mfn_offset =3D t_info->mfn_offset[smp_processor_id()]; + index =3D this_cpu(t_info_mfn_offset); + per_cpu_mfn_offset =3D t_info->mfn_offset[index]; mfn_list =3D (uint32_t *)t_info; mfn =3D mfn_list[per_cpu_mfn_offset + per_cpu_mfn_nr]; this_page =3D mfn_to_virt(mfn); --Sig_/OBMPjOKCTrdJ8z8p0pJWsR3 Content-Type: application/pgp-signature Content-Description: Digitale Signatur von OpenPGP -----BEGIN PGP SIGNATURE----- iQIzBAEBCAAdFiEE97o7Um30LT3B+5b/86SN7mm1DoAFAmSQKl0ACgkQ86SN7mm1 DoCHUw//avv+34mjKw6ltkeitL9cgZNCsdf8a3ct5TSweSVZ4/+7jl8ueBu4RMIB Yqw7XrLImBYE4QdlAvz6gATQ9nHxLylq+nP+4Ckq2NuG1NvkMsAEOA6MtxTzdlSX /8wnQsrXWEUkrZInwrsBGi1PU9zyVpjy/jzkfsQ470SvSKLx6SP+t6eI0FlhLdge jB9VDh/fDDFNgnofP4tzhwJ2mTi83a/bSmTuJB3Y/7jJ4fbngY1D2ICsdnlgNaY3 DE++H7zFus9xWFnlBb8gyOdaW2pgZcfl80e2o1A92HNfFV6KFmmmvJPlwIg+WTIQ JrpTtB3VnlZUx72P5FsKYEWP+ZlSDssYgoN9uDpfyDJXQX1NVcagiz90juLNmKIT 4x4a+FNYGUrifATUxSnPYfBffwH9HSAEmhKt1wNo7r/6xnzXQqy+WUXxLvhunoQH qxCCtF2TUlxO1+JxGOQ2FgLCKWAY3EjwhNxUafhx9fEPo+EoE76Se1Ka0gZZPpaw IHMz2h+M7UeFFZNoRuQPn7XH0/WH4o11N5iFoncB+gpcn+ghLQHba7N2tjJN5v3U L0G4qMXGxUxahFedvxaLQKu7oaE6BrOSl4H0+Hmt7RZPSU0i3uEC8uhji8OqTz8b hfYZfGHok2GKLyTg1Dtntmn/38vchY5YZQ0/zCwrBbvizSGCXbM= =nP4D -----END PGP SIGNATURE----- --Sig_/OBMPjOKCTrdJ8z8p0pJWsR3-- From xen-devel-bounces@lists.xenproject.org Mon Jun 19 10:16:52 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 19 Jun 2023 10:16:52 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550966.860210 (Exim 4.92) (envelope-from ) id 1qBBwA-00040t-NH; Mon, 19 Jun 2023 10:16:42 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550966.860210; Mon, 19 Jun 2023 10:16:42 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBBwA-00040m-Jy; Mon, 19 Jun 2023 10:16:42 +0000 Received: by outflank-mailman (input) for mailman id 550966; Mon, 19 Jun 2023 10:16:41 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBBw9-00040g-Al for xen-devel@lists.xenproject.org; Mon, 19 Jun 2023 10:16:41 +0000 Received: from mo4-p01-ob.smtp.rzone.de (mo4-p01-ob.smtp.rzone.de [85.215.255.53]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 61a1eedd-0e8a-11ee-b234-6b7b168915f2; Mon, 19 Jun 2023 12:16:40 +0200 (CEST) Received: from sender by smtp.strato.de (RZmta 49.6.0 AUTH) with ESMTPSA id y5401az5JAGdG6x (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256 bits)) (Client did not present a certificate); Mon, 19 Jun 2023 12:16:39 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 61a1eedd-0e8a-11ee-b234-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; t=1687169799; cv=none; d=strato.com; s=strato-dkim-0002; b=Ur7HbKjwuUQ2ytcuBd8XgTOsMyJFR9Em1oGD4fTwCTdd8OCyH/j2SH5xz1XFD4O6kF VSPqo2W9ZIGT9EHjUmTuB0rEB7JFRcKMAChGbC+S7JnIzieNRlS7LKmhyFtRAuH2BeVb DL5MbQaCEKb8eNpbdjdriV9gIGmjXxxumDFVnApx0juoD7MDd2izrzaIFzqGKf/njWTs t+VBhJokbMqVNLBVt40GadAwJ2WzHIKMWft8Bfkd8QxAP/tpTpZ7phROUkEt/Q3317ey y9GhgustIM6qbdtCiW56iPYna4pUroQ85vLluEfZE+0/CbxXwkgSl3GXlZQ93YSeVYRH gxDg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; t=1687169799; s=strato-dkim-0002; d=strato.com; h=References:In-Reply-To:Message-ID:Subject:Cc:To:From:Date:Cc:Date: From:Subject:Sender; bh=jobFpGhdV47ByKxj0J+rEBbMdDWwbgoitVOAgGSKQhg=; b=Pc9KfySQdYT9mfLDqqaeScdSc1Jzaaq0qJsVmm06A6ycmfRb+QMDL/wYHSHtoKHFyS Z9NmHbAfhO6OFTH+OxrlTS9ujVfkfIiwnDZS3/LAd6efLi9sWaT25YAizh+ApdPEVrHe 7xDFS9MwsKVJ8SJelmz83FUQup5KYT4dd+QpUZKyxV5LyKbqZciZULZUrikwA0XajOhN Jr+Y/QzNwVgjs6bnM17zmOWn9j0cGga3ShFxXAC1kEBmSUzfury/qzkI7dIIx8lzCCaf 6WXTXXcF9YgIBphAZxB122Y5+HI7HpYjmbK1jXIUYwIKUJ7WEN7yxJFjp+YtHSr/imlp N++Q== ARC-Authentication-Results: i=1; strato.com; arc=none; dkim=none X-RZG-CLASS-ID: mo01 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; t=1687169799; s=strato-dkim-0002; d=aepfle.de; h=References:In-Reply-To:Message-ID:Subject:Cc:To:From:Date:Cc:Date: From:Subject:Sender; bh=jobFpGhdV47ByKxj0J+rEBbMdDWwbgoitVOAgGSKQhg=; b=KvqVF/l+mO/AL2ulmZ53OhH3vW3IeJJ9J4y+8Yjing0TCxIl75Q8UezqeRTi6c9I7d 62js6UZQrfHaM2aBA0as8fVjOTFQqfFOVPhiJCQTL1P701ofJmxTgIEJrremq3sBVmu6 +zofoIGV2vVsNcbJBOISkfsvNLJdA62kcU/pF4KmfwexGI/xIKWay/zaMrSdqSlxCRD9 Gbut/nIzY4e25BbAvagI9ntOioFm3+yFfkXpvGFJzQMsuustNtBqdcc9qXiEgG5nbZgN Y6m3S30aF4O1LwtHW8ZT+I4iLl7QmXDQlfv2neQU5XakrhYFjEJPmSnqapHuVZ55r/86 ggpg== DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; t=1687169799; s=strato-dkim-0003; d=aepfle.de; h=References:In-Reply-To:Message-ID:Subject:Cc:To:From:Date:Cc:Date: From:Subject:Sender; bh=jobFpGhdV47ByKxj0J+rEBbMdDWwbgoitVOAgGSKQhg=; b=5YbaWutEAqEbpzgw8BhnrUBkprKK22Od2tkwkHD1gT8MQ90rUWZG58WTYpHMbJw3uU lkI7JHUz2adEG21iRHCg== X-RZG-AUTH: ":P2EQZWCpfu+qG7CngxMFH1J+3q8wa/QLpd5ylWvMDX3y/OuD5rXVisR5AB2Ibh3sRFQAfajHZ8Hr2i7N1ImBUHmXWy0PQg==" Date: Mon, 19 Jun 2023 12:16:36 +0200 From: Olaf Hering To: Andrew Cooper Cc: George Dunlap , Jan Beulich , xen-devel@lists.xenproject.org, Juergen Gross , George Dunlap Subject: Re: xentrace buffer size, maxcpus and online cpus Message-ID: <20230619121636.672c8cdd.olaf@aepfle.de> In-Reply-To: References: <20230530095859.60a3e4ea.olaf@aepfle.de> <578d341d-0c54-de64-73e7-1dfc7e5d7584@suse.com> <20230530220613.4c4da5cc.olaf@aepfle.de> <1b99e58d-338c-02af-eeab-00d691337d00@suse.com> <20230616134708.6b3c6964.olaf@aepfle.de> <20230616173717.3f264151.olaf@aepfle.de> X-Mailer: Claws Mail 20230601T090920.68bc28c0 hat ein Softwareproblem, kann man nichts machen. MIME-Version: 1.0 Content-Type: multipart/signed; boundary="Sig_/KLXv2W_IabjEd5Jp=KE+oFh"; protocol="application/pgp-signature"; micalg=pgp-sha256 Content-Transfer-Encoding: 7bit --Sig_/KLXv2W_IabjEd5Jp=KE+oFh Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: quoted-printable Fri, 16 Jun 2023 17:08:25 +0100 Andrew Cooper : > XENMEM_acquire_resource is a new mapping interface with far more sane > semantics which, amongst other things, will work in PVH guests too. Does that indicate xentrace will not work in a PVH dom0? I will have a look how XENMEM_acquire_resource is used in other places. The resulting change will likely be too intrusive for 4.18. Olaf --Sig_/KLXv2W_IabjEd5Jp=KE+oFh Content-Type: application/pgp-signature Content-Description: Digitale Signatur von OpenPGP -----BEGIN PGP SIGNATURE----- iQIzBAEBCAAdFiEE97o7Um30LT3B+5b/86SN7mm1DoAFAmSQKwUACgkQ86SN7mm1 DoBcvw//VagZ1+K6o62s63PUx2AVtBOj4PLPjdvuxa8CAqVG02Y9Pb0uFcsehV96 nj0NubhComkD2icvh+u3Q/hW6nLySZwtWGU7gCVxOhxinIpvkS104ol0gMsEcfpN A/L1Ev7ybtmIfu+cOZFJU9uRwG53thRN+wjbgSESJ8xl40oOJmRncn+fZ+Sr9Yzn MeDf1D2ERI/l+UKdNEqwO4DIccZrX6vnZr+4FnOW9fTUm9rk2sQ5CCzztCxjsbUS J+kX022XZwYKjwM+rPbH/9/RMjd+Nm61/cBk+gV9GgkC4xA6yi0BIOj9JDh/Z/DM rbr1qY4pR3QrdEA5UJNZnYXcebaz/VSaBHvTMvvY9P2pOS1WhzaJhlrYM45j5T6z 2SU4ujHDBQzW59QySsEVpIOZBDOtKIRxUq04UcX6kFm/BUgcZeHDo7BQFCYlFWv/ n/OS6gydjUsRq5vQSkENeFKqZyARoCfzKw/GtjdexsQMGKTIG8TpgkPKZjYiOfv2 vESTyZKt4F4rsnH2dKgt/NIJ89qTZBY67vVTSwAKe6yMgvuHA04wmJmGh2t4lcJR 5MstG46xtV94iwPUgXJeWSBcWzmoLv8DeDOF1kwK+uXTiLErUwWNBw0SrCxJ8M2M TICszNnbHMvxcE7CqqoFqzgWYu/5NsfQwDXaHcSoBfDNXDfcKgo= =ORIo -----END PGP SIGNATURE----- --Sig_/KLXv2W_IabjEd5Jp=KE+oFh-- From xen-devel-bounces@lists.xenproject.org Mon Jun 19 10:22:37 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 19 Jun 2023 10:22:37 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550973.860220 (Exim 4.92) (envelope-from ) id 1qBC1j-0005U0-9r; Mon, 19 Jun 2023 10:22:27 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550973.860220; Mon, 19 Jun 2023 10:22:27 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBC1j-0005Tt-6Z; Mon, 19 Jun 2023 10:22:27 +0000 Received: by outflank-mailman (input) for mailman id 550973; Mon, 19 Jun 2023 10:22:26 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBC1i-0005Tn-0M for xen-devel@lists.xenproject.org; Mon, 19 Jun 2023 10:22:26 +0000 Received: from EUR04-VI1-obe.outbound.protection.outlook.com (mail-vi1eur04on0614.outbound.protection.outlook.com [2a01:111:f400:fe0e::614]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 2eccba53-0e8b-11ee-b234-6b7b168915f2; Mon, 19 Jun 2023 12:22:24 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by PAWPR04MB9839.eurprd04.prod.outlook.com (2603:10a6:102:38b::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.35; Mon, 19 Jun 2023 10:22:20 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6500.031; Mon, 19 Jun 2023 10:22:19 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 2eccba53-0e8b-11ee-b234-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=bnNkhtfQT6W7yaqI8874eKlVh+1Fs3iCT/s2nzuu/mjKfX2m6A6NdY5J/HZjgKq17VNLXJi5KON3OxrwPfOtvkdrO6fN8bZY4toItNN+VSHTW9qL/WUV3u53KjYbzIGXj02buxEjG1TrEow9IcUsrJBJNek3A+HAKcwe6osFKA4NaC5bCrL3YH+jq4A+zl9SlnLkJsEp755IoFo/9iwYF1txeygbpZT6zIqqgvgxYkAnDjaoGAfv4FJOfd2Z7DEDUc4KZYXO6EYpy3bxZqJgk5mnQHjSwXJYxH7tZTSAn5/ZU3+fReoJWnfwDKziBdXTh2HrNh1XbrxMnIbDfsifDw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=E5lcn+2XTbgHXexqj2IoBWoQ5eQ6w3EWi3tf2dAej1c=; b=Xj7Gkgk4k+nRDZPWnRL65EMFWnrkHThRH36rE+CxFOTO8xsHqf/FIKunYAjADhj72upiAlWOyHhIthwnwtLxKmttqyiQfr63ZHfkcLxZYeX5RbeiFFDD9COlQ36BgfKmpfEJg38JuxMTriTcEukQ/CFYmOpOSGV8CUUKMFAt6w1G/0c81oIwpY4652BCMdWRfp8LqFJfTGPa4Vdr6Z6nShc54qweAWlmZmS1o5Uia79F9oCcG+EriIB3tWNg1zdWbLIAEhI8EkLnTQE/ruFXfjmWC1UZhN9EYhcBQLgdDmRxUd2YCzUHbox0qphxhEzpLlxQ6TXpv2+3hN5ZVdVk6w== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=E5lcn+2XTbgHXexqj2IoBWoQ5eQ6w3EWi3tf2dAej1c=; b=M05KHaaHeYbbhPV8egJJF5lUgqKJKHdosWCokt2y374dJ2Wqr8qZWrAb3UzpY0W68dgPmctsCBEqSek6AX/MBmnyRl9rhes+BZsB4RdSUuZwOXuCrHo1Bp6gz55ZVi7V7TV5kJPYjSlh7Jy/F7MPmxJ0LQNRiyN24vvhQ0E2shysFTDUGoI/4P3SrxjAp6VDYnV7/eOf4nvD4AVLCrStTnz18+//1ZJyVxcUcyYy4cz9gD/urX//u/1ZlpbLtukpk9PqxlUFOLp6wyaOIGjGTIfQ0fA/jzzn7zRis950UwnOgsfoZ4NeF6zB9szaK1aGadd3McPd86l1THBWzjPkyQ== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: Date: Mon, 19 Jun 2023 12:22:21 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: xentrace buffer size, maxcpus and online cpus Content-Language: en-US To: Olaf Hering Cc: xen-devel@lists.xenproject.org, Juergen Gross , George Dunlap , George Dunlap References: <20230530095859.60a3e4ea.olaf@aepfle.de> <578d341d-0c54-de64-73e7-1dfc7e5d7584@suse.com> <20230530220613.4c4da5cc.olaf@aepfle.de> <1b99e58d-338c-02af-eeab-00d691337d00@suse.com> <20230616134708.6b3c6964.olaf@aepfle.de> <20230619121349.2327bcff.olaf@aepfle.de> From: Jan Beulich In-Reply-To: <20230619121349.2327bcff.olaf@aepfle.de> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR0P281CA0004.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:15::9) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|PAWPR04MB9839:EE_ X-MS-Office365-Filtering-Correlation-Id: 5ec0c739-2e66-4614-2c39-08db70af0fe1 X-LD-Processed: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: qlqtsxOnoHXlmKWygKT6Eo4lx9C2b/HVzbntIkDojUuN/f26+pn0H6BFXdPsbCfqqVr86RqJ+EpegBCy+/zVdIUPqP//OmVp8QHjj/jXQVe69HTtly53rjlf7b+Mp1G3hAFMI0ggG1yddpJOFTZz0EorW8CwhgweYesxYfk9fqvtmmK536yeghHY97F/YDfMewRYBfehN4zcOcJOGjSNJ8jsK1gH1Mn3QO2lKYWLk8+sPw/OsK/jU8ej7yLzdU/54FvHCWTeR3o0IPWR7ARvHJeT4Z6/yEE0Rma+8s5pti+bwIIL5BlO4Bspr9/Gvp/W0RY750D9HyxR5VQw4bAApaq+dD0m8ZJuLPwuX5HeXF7VhOYlta+FCRA+r3V7Jly0VBQtNDIiVt/NGmpWy/Gahc7VTlhsX4/mHkv/FywbNpXY+qlmFcoID3lhfNLmVjWt2AMtlUKPfs/jRUjnTfXwZCtnKDP/q2nbRaaHlgH+3ZSlQq6Yqqy1BmjzjNYih86dg+wyORm/v+BBotxBZo5hWdxuwLCv9/2rWi/5nWj8IsWNMBibJzHoaaYeA0MgHose5D7vrUMk7+qzEkKYCOACWrYmdrwJCwUFMjxE0/U81bbR3x7qY0TQbTl6sX4HSwnm/luG+Of/P4g5+aOPnB6yOw== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(366004)(376002)(136003)(39860400002)(396003)(346002)(451199021)(4326008)(54906003)(478600001)(6506007)(53546011)(6512007)(26005)(6486002)(186003)(6666004)(36756003)(4744005)(2906002)(8676002)(41300700001)(8936002)(66946007)(6916009)(66556008)(66476007)(316002)(5660300002)(31696002)(38100700002)(86362001)(31686004)(2616005)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?T01UZ3FDdHB5V2x2NEw3VlBmWko4YWtWTkVxVERYRG1JZnJvRHlZRnR2Q2l5?= =?utf-8?B?dXZXT0c0ZnFMQ2NjSlNiUE1Ib2JadUV2Y0xweTByYXJRN0pDTEFWRGlobklM?= =?utf-8?B?NE4xRzQyRzhFeGkyS2kzYVJhbVptT2REaFhaN1Jzanc4QjM1VWdtN3VkYWhy?= =?utf-8?B?K3hqU0pJdGhlRGZaR1VLSjRlWGNjRTdyOUI2TFNJbGFGbWJUVVZxREp1Yll2?= =?utf-8?B?Z3hDdExraXBNMW1ORGw2OW1TQTFTcDV2K2xZRFpWeldqNFhtUm1aUW9sUGk5?= =?utf-8?B?eU0zMkVYL3QxM0J3cy8xVVdyVkNIZlRialc0N3JmSXdzcW1JME55ZzFWVWlW?= =?utf-8?B?ajY5Q2tsVEd3U2pqdUZNUTloa3dnQnhyaExlMDNZTFpCUGMzaW5JVTFKVnhl?= =?utf-8?B?aVNneWViUmlFSFhsUjdEOENhUVpGZmtnVEZDQ3ZRcTNCRHZhcVlEM3FDNzYv?= =?utf-8?B?WWhuYmZkdzhjSkwwb1FicG1jY09pZ1dhdVVMNTRkTUxxTno0UlJvcVE2b2pu?= =?utf-8?B?NUhnN29iejUyTE1wcVBCYXMvd1NVSWxvSXg0RVd2RUhheWhtdWJkQ0tQb0pJ?= =?utf-8?B?WlJoQ2FkYU5vZzNldXlIL1pVK2YwbTMwQXkxWkVlQ0pXdkhPODMrVXpJaEd6?= =?utf-8?B?Y083ZFI1ZnlDeWRpaFBPUkdNa2hHTHNGcWFLTkowZ0U0UlBxUnZDZkRSOFF3?= =?utf-8?B?bnpHQnJIUFk0QmsrbzV6T0F5clF6dEFpVGY3YjFzU1VLS2ZKVCt6d1lUNWNW?= =?utf-8?B?aG4xcXJUbUhDclZ2OElxR2V5S21CbDc0bjhUWWRtY29nUm1GWDhPR0k3OUZ5?= =?utf-8?B?elVBbElIaHhPZnRiUU9XMzdMdGdlL3hUL0xrT2R5MTM3M3ljcTkwbW5pK1hK?= =?utf-8?B?U2ZjVTd1WGdDVXJsdTBWQWRyL2F4cGttZ0lhWFF6c0YxOGVZYVpDakFuRGRS?= =?utf-8?B?ZXl1WCtDUG92N0lVTDRXcFZVWGhWSUkrVTIvN2trM1ZWQStMYmFoaHFMQlZ3?= =?utf-8?B?NUJSV29UMVdieFRJMnFGRmx2MWNKbzlhczRKdFhOSUlUOXQ2M3B0LzBWa0F0?= =?utf-8?B?QmFDODBXSjMza0FQRzFYYzdrVVdNb1QrRWxqNzViUG1UZGorTjlYcFpMd2tt?= =?utf-8?B?RzRJb01HZlgzQWdxZDJDZlVRSTV3NVlqT1dtbWpCZ3dhaUJmSS9QYXUzYzV1?= =?utf-8?B?cjNoTTZuRE9EYWpMZW5wdVNqMkljWWdyTEJFRS84Zm9xTFlxakFwdUhSU1Zy?= =?utf-8?B?QjJxaGRiUElaZGNrZGYxeStHREtlcHBpaWNTQW5SRDJETjlEZUR4WUgwbTh5?= =?utf-8?B?SkJ5MEhDRkdab3A2eWxKTjk4U21HN0xsTDZpUFZ5eWEwZXVlMjc4eXBjdy9v?= =?utf-8?B?RzR5TVNLVjA1Y3dsakI5TmIrdTF4MG5meWxNcWtnK1d0QS82SndrWFg3SDAr?= =?utf-8?B?cUZMT05xMEpxQnh2ejM3MitST3RzTlVid2VBek81TFluS1lUTWF0L0UvRnF3?= =?utf-8?B?N21oRHR0U1BFYjRYS0tRVEQ4Y0NJWkVsNk1jMnIwR05pU2pqU3A2bkVYRHI3?= =?utf-8?B?MGh0RjZ3bENKdG9FWUZLd3FZZ1F0aEpFQit4OWF0Q24xbWJzdytpQ1pSWmxx?= =?utf-8?B?aHhxd0h5a3ErS3NTOTJPWGJwSHZzN2RHQ3VWSTNqMmpXREl6TjB3Y0ZSejIw?= =?utf-8?B?T0dicXM4QjJjRWd5VGM2UnJHdXk2d0FpeXJYQkgwc0E3VUo0cy9OUkgxekto?= =?utf-8?B?M1FtdlFCazM0ZmtTdEJzVDdxS2FKZFFybmYwbkYxNzVPWjBIZzBucFN6NytZ?= =?utf-8?B?NXhnYStkSXBJVlFWRnhYS091bW5sbU5scmdQK1NJQm5CUmFzL1dTVUZDdm96?= =?utf-8?B?Rzd3dE8zRTFxRTJ6cW9xa3FaV1p4TnprZEtUaHlEazcrZTR4YlljWHp1V2x1?= =?utf-8?B?UEo2TmRBalFPZ0V6eWtuYUNxaUVwMWlxM3pRZC9OVnhRVUw1amJvbXFzR1p0?= =?utf-8?B?UlRPM0tTMHpEcVVKRVE4QzZyS1ZLSWRPcGxtTmIwM1Z3S0lLUlhYVUx1UTB0?= =?utf-8?B?UlhISzdqNmNrR0RHNVlKUXQvazE0dUxqdnNzRlY1Ulg5YlZ4MVZNaW1MUUFB?= =?utf-8?Q?jnQcmJHokk1wU0AP3RBnZq9Sd?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 5ec0c739-2e66-4614-2c39-08db70af0fe1 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Jun 2023 10:22:19.6500 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: nCi4EUIN233YRb3+P2sSWWyNeaPEI3Dk32OC7w8wMsAJW8nQplMwJiiq8+4Xn1gKXr1u8JsvTqme1yOb2eSarw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAWPR04MB9839 On 19.06.2023 12:13, Olaf Hering wrote: > Regarding coding style: can this_cpu and per_cpu be used as array index, > or is a temporary variable required? This would affect the number of > lines changed in next_record. I see no reason why it shouldn't be possible to be used. At least as long as overall line length doesn't make the result unwieldy. (It's no different from a function call, in the end.) Jan From xen-devel-bounces@lists.xenproject.org Mon Jun 19 10:25:45 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 19 Jun 2023 10:25:45 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550978.860230 (Exim 4.92) (envelope-from ) id 1qBC4j-00063z-MM; Mon, 19 Jun 2023 10:25:33 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550978.860230; Mon, 19 Jun 2023 10:25:33 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBC4j-00063s-Jk; Mon, 19 Jun 2023 10:25:33 +0000 Received: by outflank-mailman (input) for mailman id 550978; Mon, 19 Jun 2023 10:25:32 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBC4i-00063j-7u for xen-devel@lists.xenproject.org; Mon, 19 Jun 2023 10:25:32 +0000 Received: from EUR03-AM7-obe.outbound.protection.outlook.com (mail-am7eur03on20614.outbound.protection.outlook.com [2a01:111:f400:7eaf::614]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 9e240df8-0e8b-11ee-b234-6b7b168915f2; Mon, 19 Jun 2023 12:25:31 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by DB8PR04MB7179.eurprd04.prod.outlook.com (2603:10a6:10:124::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.36; Mon, 19 Jun 2023 10:25:28 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6500.031; Mon, 19 Jun 2023 10:25:28 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 9e240df8-0e8b-11ee-b234-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=DyiZ+pXtZHqUChCNqxPtpkks2p7+H/djIzeAAlNEnqGxIzCQ2siJfC8dkgutzpGAOvYwFzRLsYTnarA6sDXg9qeqtCEQQb7cU44jww277qIzYxq0pmVTFJt9DxGmB1XFWtX2+WszxpckT+mnvfD2CpdVFhPSmGnvjArdiliBYx0kZh8bLqJRCKskpp3ekCApCpyUVU3AOxvlwKosIVN+ZjSbborVZWZSgp9rWndhDw0xdhHgqTNOQkskQ4NAj9cv42ruqoSnj4RkoXrh5LZ+Z1zBTiA66LgRZ8AWpIDxfalKj3iSfUZjWyhw2ShZNDoCqQnPGHMXVAsf7OqZmW3lLQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=1RZiue4tyCz/IuwJ3bezgBtWcpA0yXae1luhd1RcdwU=; b=DHyFeCiN/OFJ8XdNHxb0Ke4Ive3sZgj3Ea4fs+evB6ROoze23CLLxCp45pMlestt9UENqlRj4DRV6CdwCsmMhe3ev188MUJZbbGPizdBJ5bQ+fjy7HMKvVs7pNGfBzKMQDs09o3jFyXRNyqjqfhQku+68FAsQyk+Hk9hS5yTMEutNenBbS23ek6KbSZ4MXUX3VlMpVYxxXsqkz8W3YOPKdOSshFdC5xI8TJ0KcheXH3ln83kMPVX494WuFxIaQjQnPjjuh64JjOkcF2hZpozi8QEeZr9waHmnAQTwiHYrnwRTqQkspgPrcKuT8m/S5bmAax4tDWan7OQLRRwJw05aw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=1RZiue4tyCz/IuwJ3bezgBtWcpA0yXae1luhd1RcdwU=; b=4xev8gEivYN2NC0l9/TcRjm2f9Thg/qgHJKCFCbLYkUQzchAktX8ZveDXRlDGIOS79sdPetOpwcPLk69uiiJxzSMeyFUw9CgPstotLB4v6lS1AGUXWpxBwoXfGjxz3vZWqO0eFoPF15fK7If8ZIH3VSaGnK8Q4OCCQo0NCZaAyODbbo/0u24gtx0UlnD5lUzbmuqZ9o7fXqi7S4sPcfxa+JFgvICqpx6/12/XCQcNTaAla9kgEuAI+dB7agEMVrqa6n3j7I9US2NcwtRoG/RpbUzofp+zNy4HOMAtyRmcq13QEr+cytUK5MkTjxOgFwgXn5rPfRh/TK9dJJfZvhUoA== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: Date: Mon, 19 Jun 2023 12:25:30 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [XEN PATCH v2 1/3] xen/arch/arm: fix violations of MISRA C:2012 Rule 3.1 Content-Language: en-US To: Julien Grall Cc: michal.orzel@amd.com, xenia.ragiadakou@amd.com, ayan.kumar.halder@amd.com, consulting@bugseng.com, Stefano Stabellini , Bertrand Marquis , Volodymyr Babchuk , Nicola Vetrini , xen-devel@lists.xenproject.org References: <51501199-80e6-e33f-e70a-7a36d26c1894@xen.org> From: Jan Beulich In-Reply-To: <51501199-80e6-e33f-e70a-7a36d26c1894@xen.org> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR2P281CA0138.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:9e::7) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|DB8PR04MB7179:EE_ X-MS-Office365-Filtering-Correlation-Id: f1e2bbdf-1e4f-4be7-f90b-08db70af80ae X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: Lv/3BO9lgJmJUckxUzwLu4FM+yR+Lb532IuuQ9V/DLE5T0xMltbuG+dCV6BedtP5S6jjml1edWZcSqocIhcsA7KFuw9uRQbR/Lu9nFLqnAGrirbfiFfWChK0nLBuH3cHAKnBp9i7IR8a8dqI+SUbq1m/J9XWhNbmfx1FYoN34RBUxg2YFd2dwp94zLTkSbv5mvvA/U39cYCShhsfxrWCf8HOnt5TSqUF8TkdQ25YsixRl+amXY8+u8777JHwMx0Xwky5M3ogmOQsTK5enRc0gvuBBlmASyYat5gopik8C1EtE1uDoBBTnO6u6DBztf/JVNtTjWFTvm/JenJ0zhA1ruOwbyT5PPluMpKQAUVgrpceKRkBtEWi/KJZTOdqg4Y/bmtPiSqQ3K+49Bp8n8dXB9rTlDYvJkZaCM9LQTwk3F9SIskwdtCCkgqEnlgiTYOC1sFTA/DeHQLUY9HDsghgH06qO4O6uOVd3UCqLPqJc21vi5/3cEptMt9i10SS3zWYVtb/3cVa3fa2STRk90h9VQBZVoaMLUojAHHUk7QiaCEp8ssTTWQKLuvO8gCfeuJReBazGs4f6RWufMMSNPPq2qKT8lQdKfAIzRHlQyuFqq9qhLFj2/k4HXCSQc6XdzWTAtCQyAZocjC5BMXaqPSncA== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(39860400002)(376002)(136003)(396003)(366004)(346002)(451199021)(31696002)(7416002)(31686004)(83380400001)(38100700002)(86362001)(8936002)(41300700001)(8676002)(5660300002)(6916009)(66556008)(66476007)(66946007)(316002)(2616005)(6506007)(53546011)(6512007)(26005)(966005)(6666004)(186003)(6486002)(478600001)(4326008)(54906003)(2906002)(36756003)(4744005)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?OHZacjVOd3FONTRRdDVlMlhSRVhxSjd5VzFTa2VsZEtmdFM3N2ZDcG9yRkhG?= =?utf-8?B?YlRYLy9JYTJGd3BiS0pVZFY1d0xSS2d1TEY4VjY3L1FtTjc4UHdPMytMMXl3?= =?utf-8?B?eFNtZE1nV0pJRGpyeVZRaG11Z2hWY256ZkNvaGUzOXVKSStHYkgwZDluWHlR?= =?utf-8?B?Z3Bka2UxRy8zdVhyZklHdWo3ZDBMQWJXeFB0R3c4Y1BiU1JzR1JXRDdtRjN0?= =?utf-8?B?M3IrVGE0SWpnZUo4NXpwSDRVQjUzQWorMGRub3RnRTJ0NHQvUlVwQ0dEVXJp?= =?utf-8?B?bjN4aTVNL1FXUEVESVZIMUE3VXd6T1ZtdnJ3VjZrRGNVeG5DN1VpWHBtUlIv?= =?utf-8?B?WE9kdVBINTlmVVRta21KaXl2Tkd3NHhFS2VNS1dRcWQvT0VmL3JhZ25OS2Fl?= =?utf-8?B?TEJha3JYbEhaOW1aSTFyaGtwVnlFU25NUVQzc3huKzFEVFpJMEU3bVRLaWRq?= =?utf-8?B?b2pmMWtISWtnMFZrREJlU2FmUzloS2I3RTB1ZWl5aE1BN3VtampTSDRPMVp6?= =?utf-8?B?R014WXRQSmRWaGU4V0I4YWp0b0ZkWWsza2ZmeWtHR0plYTVjNEppN3dXSUcy?= =?utf-8?B?MTljSTh4WVRLKzdZR1E4TE5Ibm41bk9zVmRSL2V3dW9qL0orMjRqTW1VN1ZB?= =?utf-8?B?UWY4cUdFQ1ZVWENmcGdlS2FNYzFicU9Za2YrNUZlWmMwWkx1S2tvbUxzNHhj?= =?utf-8?B?cEdnOFc3OFBHMkVkcTNpN3JDU2RzMndXUGt4OTdMWFVNcWN1aU44TnJVY1E4?= =?utf-8?B?UC9PSDlieEk1WE9tZXUxcld6a3poZHR0bjAvaXBRU2g4SDlaOWZxOUpSTmkx?= =?utf-8?B?TkhNSG9QSGY3MHdWNWhGeWtFV0dLYURRRi81a3AzRk1CMU9FNkYrTml4aEJn?= =?utf-8?B?NFVLT1BXTmZ5RVVBVVkwc04rRTExcEVGa2EzTzIvU2NVVFE1N3ZzamJxcmtM?= =?utf-8?B?cWIzNVdxUnFkOFhZMllIS1B1VDB1TndmS2k5bGpmQXRaaFkyRFh5b0VJVHBF?= =?utf-8?B?N1lTeXllWGV6Z3lMTkZtY3oxMjNtdS9uSUFLcUQ0RzFYenduOXIvT2xEV0Mx?= =?utf-8?B?eDgxWXgwY1V3TGpPSUsxbXc5LzMzVDJMZGdSTlhCWmNpcE9hc2lqQ21EK2po?= =?utf-8?B?VGs0ZENTOUdlQzV2ZzdxQ0RobVJ4cC9qNVVLd2oxemJQWXEzQm5vcjhYQk1O?= =?utf-8?B?UG1CbHNid3FJRitraW9QZlVTcnZJcXQwRUdHczl4ejlFWjVVZXZhNUdLYTVS?= =?utf-8?B?T3dQQmZhcExGZVNsQStlYTI0bUZwdXQ2eHZjWXNNVVVqWEdUOFc4V0dWZU0y?= =?utf-8?B?WXEybit5aDdCSGFSODRMWjZWZG9Ya1VxclBUYUluV0RSSmI4K0FTSFlBdEhx?= =?utf-8?B?UlFjcFA2R0lCckVrQzNodnpRblN2cE5tZWJNUzJlVkJXQjVPY00zbThCWG5l?= =?utf-8?B?WnhaZ1Q0bDRlT1J0TU56WmZpOWZ4TzFCREZMTkVVWk1xMlB5YVlrTCtjU2dk?= =?utf-8?B?QnY2aHhNUUVOZFo2cXVSdjFXMVRHZmlCd3BHclRZNE52eVp4UVdwVUtBU0Ji?= =?utf-8?B?UHlwaXN5dVRPSHB6eW5LRXJrNzEzV1VNRFFFWDBjdVNVY0lJdmJ2aTFFNFR2?= =?utf-8?B?eTdMa0IzY3pDOUNqOUtwZW9TZVNyc1BHLzMxMDRyenErc01Wd01mQ0x5UVdl?= =?utf-8?B?YTNrYUd0ZzViT1dtNzFLUWNxaGxUQTFmZlRZUkNNUHVjSk15a0w5ajhUeWQr?= =?utf-8?B?S3dKVllmbkFvazBoT0h4L09ScmpGYXZFcWFHQ1lydVJIQ2dzZ2E1K1ZXWDVW?= =?utf-8?B?SGU4Smo3c1pLSU82bi9kZ1NaSnhJK2g4YUFEcjZvSWo1MDdxOGdQMmpQaUFh?= =?utf-8?B?TXk1bThHdGVVOEhXRTlaK2pra1Bxc2RUdTJWTUhTRlA2clY3R2V6N01mRFVD?= =?utf-8?B?RGVaUERSRlJJNk1EcE50UHAwamZOdVRrZnowMXRJZE1TQ3V2MnVXbFphNHl5?= =?utf-8?B?cTNPd2MwbkVRVGRjSng4YUFvcUpxMm90c2VSYjcvcUpXQTIxay94SGZpRXdF?= =?utf-8?B?TzFobU9iNjRXLzlBblE2WndaS2JrL2Nud3RWbGUzeUdtc0xwWE8xODdLMkx3?= =?utf-8?Q?7YvzOFszPqTdgO24y1qJriUPe?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: f1e2bbdf-1e4f-4be7-f90b-08db70af80ae X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Jun 2023 10:25:28.4743 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: rz6u4h38vaKCWHgZE+vJBSuxOiPeRGVKTdfRvnlugaN9S6LoUqE5UXdV7iv82CX9nGgrQosFIIHxQ09d9sPreg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB8PR04MB7179 On 19.06.2023 12:01, Julien Grall wrote: > On 19/06/2023 10:56, Nicola Vetrini wrote: >> In the files `xen/arch/arm/include/asm/arm(32|64)/flushtlb.h' there are a >> few occurrences of nested '//' character sequences inside C-style comment >> blocks, which violate Rule 3.1. The patch aims to resolve those by removing >> the nested comments. > > As I wrote in > https://lore.kernel.org/xen-devel/f3fc1848-68ca-37a1-add2-e100b4773190@xen.org/, > I am against replacing '//' with nothing. I have proposed to use ';' > because this is also a valid way to comment in assembly. Are you sure about this? For gas most targets use ; as a statement separator, not as a comment character. Afaics arm-* and aarch64-* are no exception there. Jan From xen-devel-bounces@lists.xenproject.org Mon Jun 19 10:29:26 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 19 Jun 2023 10:29:26 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550984.860247 (Exim 4.92) (envelope-from ) id 1qBC8M-0006lH-Js; Mon, 19 Jun 2023 10:29:18 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550984.860247; Mon, 19 Jun 2023 10:29:18 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBC8M-0006km-GO; Mon, 19 Jun 2023 10:29:18 +0000 Received: by outflank-mailman (input) for mailman id 550984; Mon, 19 Jun 2023 10:29:17 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBC8L-0006eF-2z for xen-devel@lists.xenproject.org; Mon, 19 Jun 2023 10:29:17 +0000 Received: from EUR03-AM7-obe.outbound.protection.outlook.com (mail-am7eur03on20618.outbound.protection.outlook.com [2a01:111:f400:7eaf::618]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 22fc6c39-0e8c-11ee-8611-37d641c3527e; Mon, 19 Jun 2023 12:29:14 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by DB8PR04MB7179.eurprd04.prod.outlook.com (2603:10a6:10:124::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.36; Mon, 19 Jun 2023 10:29:12 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6500.031; Mon, 19 Jun 2023 10:29:11 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 22fc6c39-0e8c-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Y6LSNOMJqI3tEMaue9Udd9oOwMGncZWUnFyHQon8R5AZVv9vwwF9Ar4H8Rm/sZ/TYyimsBnPFNgjy74IzKza2GLdTFi/5fNf5kFLiaOYbVkwq06mZCAlZxEe7y7cwpqchs3QaSsMzRPq04T/PF/jHibfqCGwxKMoo+YA0C95gjoSFWHzc4gphANlAh4jMsbCwjIvxDWqCa5PhWFjEXp3JLvkwheHRkw1FsYRY6AIltwjZw0Z6bHD8+2nRnRnBXcYEvbOYzuW5IfQx/XcH5BxmUUfbL7xuV1bBbp/OvET/ekY0AAQvgr1cxH7/81sT4JdODckrv93cMc4Ga5c9fVLfg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=BOxnPM11Kr+uQ/ZTLcD8VI2cjsEOcTsTfR98ZlNN/60=; b=hp7/7a3U+poRk/3YoSXch+R5dLMZgTCLx4SdlroyYTjXhFMCYLPDdcGooiO0wCkizO9WGp5MzoQ5yOIP7Y3YT1b4X06OwLB8ZIwFkw8PYs5iwyDWPUZO4cxfDpDk71TEzPcn7K7Sh5KF/nQ5O5xpVJLNza2Q2pg2pMPAN3sRduGvcmR5PHfQimY93pjiLNnvx0hYCCWWdzaOMBdI/VgzS83GsYutylrYFLPkcYUryIfu3PpWWWmO7vFs7H11Kllj1HpPRd85dkv8qk1uGm+cXDgTrlEjjS9FLu/EQJoSmfT5fMpyEYE/OULZNhkQoRhCJhl0ZFKjT9cH7y7uJiDkVA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=BOxnPM11Kr+uQ/ZTLcD8VI2cjsEOcTsTfR98ZlNN/60=; b=PoUqEZFpU9BTLteCe8iHlbqbSsQcMJFlTiISjCaLKbqJnmhCVX5JsTPlpnhGpJdmy01n+yeP/QOuXyg2I/Mb9vCgl9EA8XtDhi1LdkuiNB0EBryZJ+UkeTgvpPETnCwBCnlbLaJY7xTTNaTsp/lItfGBSGF8FcdpFY81bLLN1+L4vkMBpnSJWgDxkPjF5bIe7CUHxY8VlMS3CuqBNQnUhR/87BObAgQchXArzA1IRV4Ad78D4kTbkL8S/aF3r1307LWp8K6Dgn3z7fRoNY0zFMDWEb+9IEsQo8erj+oYUOppVcJJQdMjJTLU3/dndcVjLSzGfRDKXOl7PAC2n90G1w== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: Date: Mon, 19 Jun 2023 12:29:11 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [XEN PATCH v2 3/3] xen: fix violations of MISRA C:2012 Rule 3.1 Content-Language: en-US To: Nicola Vetrini Cc: michal.orzel@amd.com, xenia.ragiadakou@amd.com, ayan.kumar.halder@amd.com, consulting@bugseng.com, Andrew Cooper , George Dunlap , Julien Grall , Stefano Stabellini , Wei Liu , xen-devel@lists.xenproject.org References: <9c3c83c17cb3a4ee9cc1241cefc15840d23d107e.1687167502.git.nicola.vetrini@bugseng.com> From: Jan Beulich In-Reply-To: <9c3c83c17cb3a4ee9cc1241cefc15840d23d107e.1687167502.git.nicola.vetrini@bugseng.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR3P281CA0005.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:1d::19) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|DB8PR04MB7179:EE_ X-MS-Office365-Filtering-Correlation-Id: 2f412cea-5d6c-4ba7-fe40-08db70b005d0 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: J7ZFIA5exGVnwDaw8UUGN/NExvkelEn1kDoIBvuOWHNK+4reMGrggC9ttfwCzXHbPvrSzUoTMThg6wcGGCvrWwW5X5R8b5adKd4bmC3YGVLhbFYE9kMYtw6ZsYM6019u2Q6QaOu/LM8n4cLN9LDaL9sz7/qihVJ3S8UjX9o0PXRhH7fw8OCkK+Hv+npp/DW/HP3wXGY/o9j21zjBE2zGFvzMXXSOOFS0iQhHuEUYYAcD17FozvNaNeJLRq7rcXiSTfs8KBTNhXZDI5I/DSqe/5qMJweF/FlV8iz35xhpKy4gDvCTmcmFfV6p3CViWoogmtpx9ytuyQScTSJq92y2b874Iv0XHoMolrw3hYWPlX6CFjFnPQQZm8m+YqNnYFqCAMAkDVZCKLp1bhH0ud7uosrpP9L2wrAW3UiW9OPa4aXDK4LYgKQsV/qnHjv/v3asoWlQP6kAlo+5RhWlRHxDGVB5Cz2ifW46gujO6tz6AGdZHByK4MqPTorfwR9tZ4xbj9Z7nkeMdisfBY3WU1NxJOIdF8bUV5ihqxK8zPYo+j7rGklnQDXbUqPJo0igSNNfl0e+q2lmCIkvZiw4id7I93SfeFzqoBb/icLTd20zNQVoy/Y49TBdoRPn4CKwpVkXEml954cW8lCFRizuFXRJZg== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(39860400002)(376002)(136003)(396003)(366004)(346002)(451199021)(31696002)(7416002)(31686004)(38100700002)(86362001)(8936002)(41300700001)(8676002)(5660300002)(6916009)(66556008)(66476007)(66946007)(316002)(2616005)(6506007)(53546011)(6512007)(26005)(186003)(6486002)(478600001)(4326008)(54906003)(2906002)(36756003)(4744005)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?MkVjOTROeGdNYk15TlFhL21QajhFeUJwZHBRYThZNjU1aUJQcDQydU5lUXhw?= =?utf-8?B?VVFMODNxQzRvZ2JzM2xCanFiV3NyTVZnWW9XTW5yK20xdFRKU2F0aGlBWHpG?= =?utf-8?B?RGU2YTNqb1RVTjZ4ZDRIdXpJSjhybGN4WHdOZmp6OVdLck1pVGNXWDVqSndm?= =?utf-8?B?VEtCTEs4SnV4OFVtRGY4M3czYVhZNnFTelQ4Y3N2YTRmWkR1cllCUktZczlR?= =?utf-8?B?QnpDT3AxdzltQ1cwMkNPdzRpYng5bzB5TWFFZlZSUVRzVnBlRllJRDB0OUFV?= =?utf-8?B?a1FsMUMxdHBuMVFmTG91UW8wVnVvOGVVVjhyaGViNllCbFFLT1FIRFVnbStR?= =?utf-8?B?SXoxWDY2MmFYcUlkTkxTOC9yM0hPaWJiZEZxVmExU3p6ZFFrcWZIL3RYcE1H?= =?utf-8?B?cjQySHc5L2xuYm4yamcxNGZVRmhkUTdDR1RoVTVQWjZWWnFuUjU4enhxSWlm?= =?utf-8?B?M3h1MndBeExCMi9FOEtUQjc3M0twellDT3NWUFFwM0VtS1ByWGU0Zlh3cVBX?= =?utf-8?B?R2ZWNXFEUjlDSFpRZHlaa0RmZS8zcmxYZDk1cHFzdXZqTkRXaUxySjlMVzA3?= =?utf-8?B?THkvVWROYU5SVXZJUkowcG5xSEFyWVhHMjBlZFlUQVRBdTh4b3d1b3Zkdm95?= =?utf-8?B?WmF5bzQyM2tDMDA3UnpabDI4MC9HZHZReng3NUx5dllTdG9Cb0xnY3ZiSHlU?= =?utf-8?B?c0wxNmZMR0E0clJvSzRGUTlTY3czZTc1bHRMUmN2VmhpanhicHBhUy9GcmpK?= =?utf-8?B?RS9DSXdkTGkxR3hMc0V0d3laR3RDek1vNTBpZGNmNDRCVjZtK1RGa2tzRExC?= =?utf-8?B?d0JhR0JhUHlRK2NjZVo1NlFBVUt4SzMrcEluMFlrMFN6aStSREZzWjdTV0lU?= =?utf-8?B?VlJ6WEF3VEk3SWsxeU9Sa1lFeVg1RnMxVDBoTmt2QjdkWXkweUMzc3hxaEow?= =?utf-8?B?d25pdlZRcnI2U05xRkZ2eUtaM1JtbWlBdnhmS2Z1cE0veUJRNFl2bDZlTHJ2?= =?utf-8?B?Rk1GajRrVm85VVplYTdlSzF5RTVpT2M1RWpRWWlOMmlLWlNsaVhIMG8rMmho?= =?utf-8?B?emI5OEdjNjJSRVFoa2QzUTYzWjhIUGs0QTVkSEJxL3JIdnI1RWxpNE9Hb1NP?= =?utf-8?B?dEp6eGlBMnZFVnpxK2dDUnpLVXpNWmttTVAxVWl3eFNqMytqRVhTYk9WT3VC?= =?utf-8?B?VnVmdXJJeEVHcjBhRmlKWlpwaFpnRTdMZjZEYm5rbkZSUVVMY0FhOVBoSEto?= =?utf-8?B?T2dVKy9KNURsRHlsR3B3ejJZRDJITldPYXlFenQ5TGFQTFI0dHdoUVpmeHJJ?= =?utf-8?B?S2JhMGlJcmhHTDRIV0twQitnM1NnN3VoOG93TzNQcWhpTlZoemxvTmRwNjd1?= =?utf-8?B?S0k1ajVTbG1CcW1VNUw5ekVHdFVDNGdqTGxHK001U1g0aVJHNnFtc2k4U09m?= =?utf-8?B?djBOSkNzQVBZY2ZzUTUwRTA3Uml0UHdiRUphNVdTbWlxTkx1VTZNcHBEejg4?= =?utf-8?B?UTRmUlU3ME8vbS9telBjbzE4YUl3bFR6UDNKaGl3cWd2Rm15bmJUcFI2R2Zp?= =?utf-8?B?UUxCUjhYaUpKa3hsc1NOR2x6eU5ydVlRTTROb3ZIZlpNS0h1cUZFalV6ZnlC?= =?utf-8?B?Z1ZBcTZZaER1Mm1JeEc1aTVpVXVOcU1RV2Z5TmFFNmpjRXUwYU96dUxjdE9i?= =?utf-8?B?dWdpREU2c2VhY2lWWU5ZRWEzYlVZVXJlL0dEVU14UWJwRlBzZnBQMForSi9x?= =?utf-8?B?RWV1em9pczM4NVZua2hSTDNJNU93SXlLSkVzc0pRUXpOTmRoOVlQK3JiOGY0?= =?utf-8?B?NWVrM2lGV2FDNTFySDNRdVVrcS9DUEpjeUMvN0FHdkxvU1RSMFgrK3Voelox?= =?utf-8?B?Um5HZCtuSldHb25mQ2VGQUpUT2UreFRoaW8vU1hwbDUzYmRVNjhzOXJlajFk?= =?utf-8?B?V254OWQ3UEh4UUNpRkpiekpYM1BPNFN3YlZsMjNiTDBJdHJUN3M5eDY1VGpo?= =?utf-8?B?SzBWeDVrWDdiVCsxOXFXSEVraWNpZ0pJUU5RaDQzeGxmL2VydFIzSitTdmV2?= =?utf-8?B?bUZpd2NoaGI1OE42NnMvazAvZ2RKaHBxSzhRaFU2ekNlZmpGYUNkcDR5cCts?= =?utf-8?Q?FvRwyF2TLyLhuvQ8G2d1VnZ3X?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 2f412cea-5d6c-4ba7-fe40-08db70b005d0 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Jun 2023 10:29:11.8838 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: bf6LA1yi8KMYj3O4eI0Rrww0ObYqFhwg3zSWRNxJv7gmwkS+hRof8/vNWt73Dj0VdDqRakvzEUGUWHyxMBBuGg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB8PR04MB7179 On 19.06.2023 11:56, Nicola Vetrini wrote: > --- a/xen/common/xmalloc_tlsf.c > +++ b/xen/common/xmalloc_tlsf.c > @@ -140,9 +140,6 @@ static inline void MAPPING_SEARCH(unsigned long *r, int *fl, int *sl) > *fl = flsl(*r) - 1; > *sl = (*r >> (*fl - MAX_LOG2_SLI)) - MAX_SLI; > *fl -= FLI_OFFSET; > - /*if ((*fl -= FLI_OFFSET) < 0) // FL will be always >0! > - *fl = *sl = 0; > - */ > *r &= ~t; > } > } As indicated before, I don't think simply dropping the commented out code is appropriate here. Personally I'd prefer if it was kept (using #if/#else), but I'd also be okay with replacing it by a respective assertion. That said, if other maintainers think this is the way to go, then I don't mean to stand in the way. Jan From xen-devel-bounces@lists.xenproject.org Mon Jun 19 10:29:26 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 19 Jun 2023 10:29:26 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550983.860240 (Exim 4.92) (envelope-from ) id 1qBC8M-0006eW-7b; Mon, 19 Jun 2023 10:29:18 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550983.860240; Mon, 19 Jun 2023 10:29:18 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBC8M-0006eP-4T; Mon, 19 Jun 2023 10:29:18 +0000 Received: by outflank-mailman (input) for mailman id 550983; Mon, 19 Jun 2023 10:29:16 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBC8K-0006e9-Cd for xen-devel@lists.xenproject.org; Mon, 19 Jun 2023 10:29:16 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBC8F-0001eQ-JZ; Mon, 19 Jun 2023 10:29:11 +0000 Received: from 54-240-197-230.amazon.com ([54.240.197.230] helo=[192.168.19.123]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qBC8F-0000JR-Ax; Mon, 19 Jun 2023 10:29:11 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=UUW1bGuTn6aw1zfnEJ3G99WgUqvU4b5mr12cMg90wF4=; b=Ub873q7PGnCqwAWejRBGcLt5LR j2v0847uZDpfgWfenOle2dmdXZHcSq0BfqsK0c+UtheORkEtJqMUs8wZCZPjqaz7H+j1oJjDx4nMs Xu7zP4ruU4+tM3AG2GUtnw4MqKdv8iEywl9WBMm5+2ByHQiIBFnZWaIHS5699HO3Xmh0=; Message-ID: Date: Mon, 19 Jun 2023 11:29:08 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [XEN PATCH v2 1/3] xen/arch/arm: fix violations of MISRA C:2012 Rule 3.1 Content-Language: en-US To: Jan Beulich Cc: michal.orzel@amd.com, xenia.ragiadakou@amd.com, ayan.kumar.halder@amd.com, consulting@bugseng.com, Stefano Stabellini , Bertrand Marquis , Volodymyr Babchuk , Nicola Vetrini , xen-devel@lists.xenproject.org References: <51501199-80e6-e33f-e70a-7a36d26c1894@xen.org> From: Julien Grall In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi, On 19/06/2023 11:25, Jan Beulich wrote: > On 19.06.2023 12:01, Julien Grall wrote: >> On 19/06/2023 10:56, Nicola Vetrini wrote: >>> In the files `xen/arch/arm/include/asm/arm(32|64)/flushtlb.h' there are a >>> few occurrences of nested '//' character sequences inside C-style comment >>> blocks, which violate Rule 3.1. The patch aims to resolve those by removing >>> the nested comments. >> >> As I wrote in >> https://lore.kernel.org/xen-devel/f3fc1848-68ca-37a1-add2-e100b4773190@xen.org/, >> I am against replacing '//' with nothing. I have proposed to use ';' >> because this is also a valid way to comment in assembly. > > Are you sure about this? For gas most targets use ; as a statement separator, > not as a comment character. Afaics arm-* and aarch64-* are no exception there. GAS will not accept it. But the Arm compiler will [1]. This is good enough for me because I want to have a separator between the instruction and the comment. Cheers, [1] https://developer.arm.com/documentation/dui0473/m/structure-of-assembly-language-modules/syntax-of-source-lines-in-assembly-language -- Julien Grall From xen-devel-bounces@lists.xenproject.org Mon Jun 19 10:53:15 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 19 Jun 2023 10:53:15 +0000 Received: from list by lists.xenproject.org with outflank-mailman.550995.860259 (Exim 4.92) (envelope-from ) id 1qBCVQ-0002AQ-GB; Mon, 19 Jun 2023 10:53:08 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 550995.860259; Mon, 19 Jun 2023 10:53:08 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBCVQ-0002AJ-DZ; Mon, 19 Jun 2023 10:53:08 +0000 Received: by outflank-mailman (input) for mailman id 550995; Mon, 19 Jun 2023 10:53:06 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBCVO-0002AD-MI for xen-devel@lists.xenproject.org; Mon, 19 Jun 2023 10:53:06 +0000 Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 77f3f9d5-0e8f-11ee-b234-6b7b168915f2; Mon, 19 Jun 2023 12:53:05 +0200 (CEST) Received: from [192.168.1.143] (unknown [151.44.138.43]) by support.bugseng.com (Postfix) with ESMTPSA id 170EB4EE073E; Mon, 19 Jun 2023 12:53:02 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 77f3f9d5-0e8f-11ee-b234-6b7b168915f2 Message-ID: <5b166e61-1f28-ecb2-7b14-9972cf12aac7@bugseng.com> Date: Mon, 19 Jun 2023 12:53:00 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.12) Gecko/20050929 Thunderbird/1.0.7 Fedora/1.0.7-1.1.fc4 Mnenhy/0.7.3.0 Subject: Re: [XEN PATCH] docs/misra: document the C dialect and translation toolchain assumptions. Content-Language: en-US To: Jan Beulich Cc: xen-devel@lists.xenproject.org, consulting@bugseng.com, Andrew Cooper , George Dunlap , Julien Grall , Wei Liu , Stefano Stabellini References: <3499c107-ea0d-3a74-4278-86879a9d80e7@bugseng.com> <90eec636-7ae5-8e1b-1561-0de62e0bc799@suse.com> From: Roberto Bagnara In-Reply-To: <90eec636-7ae5-8e1b-1561-0de62e0bc799@suse.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit On 19/06/23 09:54, Jan Beulich wrote: > On 16.06.2023 17:54, Roberto Bagnara wrote: >> On 16/06/23 01:26, Stefano Stabellini wrote: >>> On Thu, 15 Jun 2023, Roberto Bagnara wrote: >>>> + static function is used in an inline function with external linkage: >>>> + non-documented GCC extension. >>> >>> I am not sure if I follow about this one. Did you mean "static is used >>> in an inline function with external linkage" ? >> >> An inline function with external linkage can be inlined everywhere. >> If that calls a static functions, which is not available everywhere, >> the behavior is not defined. > > I guess I could do with an example where this leads to UB. What I'd expect > is that it leads to a compilation error. Here are the two occurrences we have in ARM64 code: violation for rule MC3R1.R1.1: (required) The program shall contain no violations of the standard C syntax and constraints, and shall not exceed the implementation's translation limits. xen/common/spinlock.c:316.29-316.40: Loc #1 [culprit: static function `observe_head(spinlock_tickets_t*)' is used in an inline function with external linkage (ill-formed for the C99 standard, ISO/IEC 9899:1999: "An ill-formed source detected by the parser." xen/common/spinlock.c:301.26-301.37: Loc #2 [evidence: `observe_head(spinlock_tickets_t*)' declared here] xen/include/xen/spinlock.h:180.1-180.4: Loc #3 [evidence: use 'static' to give inline function `_spin_lock_cb(spinlock_t*, void(*)(void*), void*)' internal linkage] violation for rule MC3R1.R1.1: (required) The program shall contain no violations of the standard C syntax and constraints, and shall not exceed the implementation's translation limits. xen/common/spinlock.c:324.5-324.12: Loc #1 [culprit: static function `got_lock(union lock_debug*)' is used in an inline function with external linkage (ill-formed for the C99 standard, ISO/IEC 9899:1999: "An ill-formed source detected by the parser." xen/common/spinlock.c:227.13-227.20: Loc #2 [evidence: `got_lock(union lock_debug*)' declared here] xen/include/xen/spinlock.h:180.1-180.4: Loc #3 [evidence: use 'static' to give inline function `_spin_lock_cb(spinlock_t*, void(*)(void*), void*)' internal linkage] From xen-devel-bounces@lists.xenproject.org Mon Jun 19 10:56:36 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 19 Jun 2023 10:56:36 +0000 Received: from list by lists.xenproject.org with outflank-mailman.551002.860270 (Exim 4.92) (envelope-from ) id 1qBCYe-0002lj-VH; Mon, 19 Jun 2023 10:56:28 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 551002.860270; Mon, 19 Jun 2023 10:56:28 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBCYe-0002lc-S7; Mon, 19 Jun 2023 10:56:28 +0000 Received: by outflank-mailman (input) for mailman id 551002; Mon, 19 Jun 2023 10:56:27 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBCYd-0002lW-Eu for xen-devel@lists.xenproject.org; Mon, 19 Jun 2023 10:56:27 +0000 Received: from esa6.hc3370-68.iphmx.com (esa6.hc3370-68.iphmx.com [216.71.155.175]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id ed71a257-0e8f-11ee-8611-37d641c3527e; Mon, 19 Jun 2023 12:56:23 +0200 (CEST) Received: from mail-bn8nam12lp2171.outbound.protection.outlook.com (HELO NAM12-BN8-obe.outbound.protection.outlook.com) ([104.47.55.171]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 19 Jun 2023 06:56:18 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by DS7PR03MB5639.namprd03.prod.outlook.com (2603:10b6:5:2c6::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.36; Mon, 19 Jun 2023 10:56:14 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606%4]) with mapi id 15.20.6500.036; Mon, 19 Jun 2023 10:56:14 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: ed71a257-0e8f-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1687172183; h=message-id:date:subject:to:cc:references:from: in-reply-to:content-transfer-encoding:mime-version; bh=g04rSargJUeLsEGWzHqavvbAGo7qxRFObe3WdUX9kpk=; b=JJe/mdffF2JX61N15zAEjjrqC0S8jbNXHBlj0QTxAOQtSdWequfPo8M3 kS3uhKvfCc9RUI2gwAb4l5MEUW4JHzDp0nlnnkLwMFq0Khb78Jk/HS4NC jUXD7X6xft3bYB5DPDSPiuZjol6rWR7gyAziEEqrt+eZQ09FsGtQmR/QF w=; X-IronPort-RemoteIP: 104.47.55.171 X-IronPort-MID: 112636575 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:eS8HLKOTHg/VjtPvrR2UlsFynXyQoLVcMsEvi/4bfWQNrUpw3jcCm mIWUGiPOPaKYzH9c993YY2y8EoHv5WBz981TAto+SlhQUwRpJueD7x1DKtS0wC6dZSfER09v 63yTvGacajYm1eF/k/F3oDJ9CU6jufQAOKnUoYoAwgpLSd8UiAtlBl/rOAwh49skLCRDhiE/ Nj/uKUzAnf8s9JPGjxSs/rrRC9H5qyo42tG5w1mPJingXeF/5UrJMNHTU2OByOQrrl8RoaSW +vFxbelyWLVlz9F5gSNy+uTnuUiG9Y+DCDW4pZkc/HKbitq/0Te5p0TJvsEAXq7vh3S9zxHJ HehgrTrIeshFvWkdO3wyHC0GQkmVUFN0OevzXRSLaV/ZqAJGpfh66wGMa04AWEX0uMwEDhfr +YqFGkcN0Hf38C36b6AcPY506zPLOGzVG8ekldJ6GiDSNwAEdXESaiM4sJE1jAtgMwIBezZe 8cSdTtoalLHfgFLPVAUTpk5mY9EhFGmK2Ee9A3T+PdxujeKpOBy+OGF3N79U9qGX8hK2G2fo XrL5T/RCRAGLt2PjzGC9xpAg8eWxHmlA9xPS+DQGvhCu2GZmWAWCC0qVAWivuSCrB+VdtBNJ BlBksYphe1onKCxdfHtUhv9rHOasxo0X9tLD/Z8+AyL0rDT4QuSGi4DVDEpQNcvrsMxSBQh3 0WFmN6vDjtq2JWOUm6U/LqQqTK0OAAWIHUEaCtCShEKi+QPu6k2hxPLC9xlQKi8i4SvHSmqm m/T6i8jm78UkMgHkb2h+kzKiC6toZ6PSRMp4gLQXSSu6QYRiJOZWrFEIGPztZ5oRLt1hHHY1 JTYs6ByNNwzMKw= IronPort-HdrOrdr: A9a23:7QgcXaBJJWLdh/XlHeg4sceALOsnbusQ8zAXPh9KJCC9I/bzqy nxpp8mPEfP+UYssbQb6KS90KnpewKlyXcH2/hjAV7CZniFhILMFu1fBOTZskHd8kHFh4hgPO JbAtlD4b7LfBRHZKTBkXaF+r8bqbHpntHK9IKuqwYLcexzUcFdBkVCe3im+yVNNUl77PECZe GhD7981kedkAMsH76G7xc+LpH+juyOvpTqbSMZAVoC5BOVhT2lyJOSKWnX4j4uFxlIzLse72 79iAry6r+4v/zT8G6c64bm1eUUpDKt8KobOCRC4vJlZwnEu0KNXsBMSreCtDc6rKWG70srqs DFp1MaM8F6+xrqDymISU+G4Wjd+Qdrz0Wn5U6TgHPlr8C8bik9EdB9iYVQdQacw1Y8vflnuZ g7gV6xht5yN1ftjS7979/HW1VBjUyvu0cvluYVkjh2TZYeUrlMtoYSlXklT6voJBiKubzPLd MeUf00pcwmK29yVkqp5VWHFebcAkjaHX+9MwE/U4KuoncmzEyQCSMjtY4idzw7heAAoqJ/lp L52n4BrsALciYnV9M5OA5Ie7rDNoXse2OKDIvAGyWgKEnwU0i94aIeF90OlaqXkdozvcMPcb z6ISRliVI= X-Talos-CUID: 9a23:TpckhmNIlXi0CO5DXW52rV9OAPIZK2yEnSuIAU6RBV1TV+jA X-Talos-MUID: 9a23:5nHjdAZ8CbyZyeBTjAPm2z1nNPdU4vq3F102t8QtlsuWOnkl X-IronPort-AV: E=Sophos;i="6.00,254,1681185600"; d="scan'208";a="112636575" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=E/iX1SrsfyQw9o9RR6HdxBsieshtWg3RHFnEZQew8qj1g82N77+99q5PKcqJtpSaK9AMxybJVAY1LYntf2JzSAFgTsvcAw4jlBu5oFpVycbwCWJv0CpHxIdTFMyq/1pkyoUDsz3ZGShqDlgeY9yLcDB/BGpdgGCfi+Q2pqm9LbbN/BAf3OCL/rJPCRPyyQtspi3xMyyvi5AGH+gExYZ6htYavTF6PgWUjzCtSFJTrB9C4L9ymTxfNs886b1Qy2H/+Q7l8BWrLBkewknIUD2BvLVWxd+0abEjBM5C8B2QZqhTJDFqloJyXAVyu+PW/w7qjwMs4SiwkGTuy1+epuEDVg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=g04rSargJUeLsEGWzHqavvbAGo7qxRFObe3WdUX9kpk=; b=FwYFEFA7Cs0W1jHZauEw0opIGW9kPu16OfocAFAkrOu8ioC1aUx7uWzwmHgUBLPhlBYkdtmxzK7HdEeXKEWZRAUP7m+QY6eWHU5Ex6dq2v+y4t05w7EPBNtDiNA3Ue4OBveJLJRf2PGQd3i2mf77+Afvea0Vs5gDd9XK6xEguXwHItL/GJLAzJS5x2fJfkAFtZLPAX7vWfDu8LscXIafuqYs4xlA6GMX6mUaAuLO9B24OIyDcT13fK4nYophhzfNzX1kuDipehmyN36cJ+wQbFS21VgqFx9IwG+pkm3Te2qIYc/CC7U7ZaQAZdfxNdojP3e08p+hrRM0r3Gvs6VSVw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=g04rSargJUeLsEGWzHqavvbAGo7qxRFObe3WdUX9kpk=; b=iZgLUaKgyW/83oAwdX1QB4KC+jXa9PKWMkJ/JlGikJShvkCi2j/E/vIS2uVpjy6IRk0GycD0OS6n1zhq+5zVJROxlx5WBk03/LJA6VGADop9oZrLyRfVhz5pwLKJVZCvztEcfQwMdjz5O1xavKotRV2gAGCQEL+jgFJnUduENe8= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: <3b9a51ce-40e5-4895-4eb3-781429ad5072@citrix.com> Date: Mon, 19 Jun 2023 11:56:09 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [XEN PATCH] automation: Disable QEMU build with Clang older than 10.0 Content-Language: en-GB To: Anthony PERARD , xen-devel@lists.xenproject.org Cc: Doug Goldstein , Stefano Stabellini References: <20230619090932.47957-1-anthony.perard@citrix.com> From: Andrew Cooper In-Reply-To: <20230619090932.47957-1-anthony.perard@citrix.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: LO2P123CA0052.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:1::16) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|DS7PR03MB5639:EE_ X-MS-Office365-Filtering-Correlation-Id: 2415f903-f6a4-43cd-c1e2-08db70b3ccb0 X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: sMUkboeAmukinI7ReXMUWMwAyim1S4DMwUiMXtdRjWNXRHsE2beCyw1bDbIBzLocgiNPWeaomixr0bY2OVuZLNCTP9kH8JaTCIE/j+ilSVihI5FyDlg3K6wwaRcjL4sHrOLtRg1CiFG9bkjaen+cv0L8Sw8clvz4c+uY2U5GSSl37AebeuQIz1n+Xg4PNkMAH5VWYbAkIewlOo1mNlvvsvIDzi23JmhLzss2TveSWZjEKm3/UOi1EoKTEKGHslImCM/zJsuiWjGHD7kDnYPRc9fcIYNoMFoogwtYgIDtZOQhWFr5Bdhn2qpAfltu8CkvqVKqVATGTFUx6P3wOIcG1nQ7iPnQYta2egm4XoUuj4d790whv93fei4WJ6vWlzO+ehOU8TOnb4HPOoaQ82oMKHFId5uMr30rm+DpnHN9Ymp/9QcOEcCws57wKfIKLy72zRWmFP+0STZ1upWpHfCyIkTzlgRTrGMjepJV2kJ6cz7y1eFpmkvnPp/WV5L+wZEamg/Kpi40WJ+swAwAQg5ARib4oH89zQCb/H8vIHxmCwmzPwcdTTaatL0DaszQKJ1BeJ4kwhm7D4qXII2CVJ5lD+GXh5PMAF9niuIhvC3/Lmk41NMKEtabnm3FbobYc4y3C3uWNIRhspmIwTfpHpeu2A== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(396003)(39860400002)(136003)(346002)(376002)(366004)(451199021)(31696002)(31686004)(82960400001)(38100700002)(86362001)(41300700001)(8936002)(8676002)(5660300002)(66556008)(66476007)(66946007)(316002)(2616005)(6506007)(53546011)(6512007)(26005)(6666004)(186003)(6486002)(478600001)(54906003)(4326008)(2906002)(4744005)(36756003)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?QUk3VU85ZDNDaGhNTm9BdXBicTg2M3ZTajNpalQzWUtsQW9teGJSZ1oxN01p?= =?utf-8?B?UEVmRi92cnppS3o0d2RrUFRpT212cDJBaFRrRUI3N3Z0MEZ4aUhpL1RsV0d1?= =?utf-8?B?Z2xESGZGVzRHTk5IQ3BHTWRpVFo4M1JSdi9YdUp2VzYrdEdtWE1rVkhWWStr?= =?utf-8?B?Nm9sWTdKRkpYYnBQQkhJY1pWdDVVejl3R0wzUmdMSERtUmcyZDVPWUdlc0Jv?= =?utf-8?B?MWNJek9UNHJFUzNiK3QzWVNpZTN6ZkVYWGxqK1NnejFpZFplM1p5eWEvWUZq?= =?utf-8?B?VEV3Q01PSlZ5WWJJSm5jSDd1YWh1NTdMN3NyOVU4V1htL0dtdWY0ajM3eEZJ?= =?utf-8?B?YmNvTGxRekpPejlTL3hkczJkN0cvRmJQQ3pWRFRRZTFZZUVhVlRYemc0RmQ0?= =?utf-8?B?NzBkb3RaOXNvMVlsVDM5N09QRDByUXZJRmRiSnBnUFBLN2VPZXhsdHdwdkp4?= =?utf-8?B?ZzhvakxlYmd2bk9SRVk4bks0a0FxQi93OWxKYThOczMwTWQxRHNpNjl1QkFH?= =?utf-8?B?MkVGUXZ6VFgwNzJhVW1UWjFGNUNTNE5OL1VTYnZiYnJaaWMrV3N3Z2lydEFI?= =?utf-8?B?M2xSbUE1ZVhJdGozWHJBV2REdEwwQ1kyeW1wQ25nbC9tbHByNjkxZ25nelBq?= =?utf-8?B?K1ZrRWVOd3hZNDhHd0xoYzNnSFF5TndjMUIza3dxK2NZZERDekZrcm1Ic2M5?= =?utf-8?B?NUM2MW9remgvN3lWSWtuQWd2MFJzVmNvK2dEODcyOHlNWVR6THExRzlpU0Qw?= =?utf-8?B?Y0YwWTVpNHQwNkxMdHoxR2VXMWJ2U1FhWmJWM2t6dkZjaU92cTQ2aHByUm5t?= =?utf-8?B?ZHlZS3NZaFFEL2dBdTB1VC95S2tyTE9CZWxZOUxOM0NDTllzMXBwZnNvWTVx?= =?utf-8?B?ellDTWFpNE4raWRuY0pFWHJ4YlM0cCtIQUJPMk9QTyt1RHJMTTV2VFM5aHVk?= =?utf-8?B?d2p4ZGloMXplMW1WSWhKZGN5Zmg2YTBEVXAvc1oyQ0crTVYvTndsM0pjWFhR?= =?utf-8?B?QlZjWVFHaUlDQ1k2OGc4OHNEQ1ZnSFFBUGJIdkdDV0hlTmRhNXVKUGRHbkpP?= =?utf-8?B?VVJnSTNlQ3M5Zk00eHNTMUlJZnQ1bG1rcXZNUFRxamc2R2FrOVhyckhhUDdn?= =?utf-8?B?czZCbVhQWDg0ZmFMeTAxajhrYXRUMmRlSVBtdjdRbGF4QmZIWURMYUtObFJV?= =?utf-8?B?NnpZelVJbVlwZlYyMGxVRTZ1M1lId3oyU204c3ZKOHBiTFpEWE9BZ09obDdL?= =?utf-8?B?UWtZVHhVbms1L2xadnlFTFQ3eVBoSVhoR1BOZFB1N2xrcWJWVDlJUzFCMk1o?= =?utf-8?B?V0ZhbytXbzIzYUxsd1FEY3hEV2NTMENkVWZJNWlld0RPZHlPOFpVZDd4Vm1u?= =?utf-8?B?aXlTWG90eWlzeHpxYVZrZ0FGSzJpVm9SZFFqRHYraXFrakxoWGtRUUQyRFBR?= =?utf-8?B?ZmhHTlhZdk5ndHRaV2dSWFJTLzcvMzRrNVBYUzVORmJwak9xSXpLZFkvZlRa?= =?utf-8?B?aGswMEVqTFRTRkFidGRiTGM5QUxuQldKR3VhTnhDYmpQd0RxN2FlM1VITXph?= =?utf-8?B?WlpoTCtpOHFFTTRhSnVRaWMrVjdIUkVVZUFjVXIzQmt5bS95TWRZcUNDUXFO?= =?utf-8?B?TnE0K0Z6K2Q2djJudk02MGhwTWIyRlUyd2c3SGFpTmplTlUvbGpUZ3Ewem4z?= =?utf-8?B?emc1VXd5bGc0VTBTUCtGdEJsYm90WFVYREcyWkpLUmlEdUgrTzVaaW1WSkk4?= =?utf-8?B?amRibzJlVTNhYmg3VVFvU0daZGowTDdjTE1GSHg3MlQ0cVdaTDA5eW5QV0Qv?= =?utf-8?B?QkErSThJdDNoRVJHZ3ZJd1BobERMSFR1V3JxNjhqeVQ2LzhSTGNhVVZsN0RH?= =?utf-8?B?dmdtQzZ5MDYxU2pyMFFVVjViYW4wb2dMalRsV3V5Nit4ejVCTHFjaUpuN01I?= =?utf-8?B?aEJ0WitHb05ERU5UY2VjbHhwNS96YlhVQkNQZUxKM0g5bzBkN2hWZ1N6WEJ4?= =?utf-8?B?QWNDVFcyUzdTcFNsVTN3eFF0M0lUSFZsRk10aVV2cmYyV0Jva2R5eHpQTk1O?= =?utf-8?B?VUVvQmpRdm9iNW5iZ2xMSFdYbFZLU1oybmU0dkdHbFl4U3F3cjNRdXVheXBD?= =?utf-8?B?L3NCZ3pyMVI4SU1zbkhITUJTcEJYRUV4QXhHT0d1OTlwc3BXTGFZVUlwbDBY?= =?utf-8?B?RVE9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: ClRzRU8JUGGQWgjIP4JZLkhxePdtknSR3Q08owDjTNW2NGetC6HWA9tGK0vMlpkmUX/Dyj8DMHjErFeKkJs7aS5Iz263ilLqjPNh5+Wj0YJaTUnjkY/tGRC+flYV8OOfDCYhMwP+5zhQ1nEMzEy/LH+Yfq8/PxLkJvSjfdyYdl0mZV2qdJ3GRI/PdUF4CcfpZ1gQ4UVTyfG/E85jhrobCU9NYhPfhAEFRS1ryNSanPjx++Gpc8j6srN3/+cciGHLer3HNJQtxx0u6eEIlSQLJWnMD1nXsalBjn//gv6xEw6yYb4zXOS2AglMh+2G4TKZ7cWeIiY9fGK52k9yw7EI4YQCG8EzYt38/9WKhYE0mToHFEqiyPwi+E9oMTnjXGBS0YXe2Yiwl7OhCApEa+jJQ8VIh8VH9ffLJgCMJX2bFi25OxiZE4B4voMw8OYvTrDLBrkvxft/vcCnc/7UA4Lo3UyMLFGBF/eZmyHWWwps1wc0L6xktLwZP/Fpmc6YYmdBZODAqQHrbk4yglZ4m8YSx45NqKXH/pNQj04N2rfF9kgIBarU7Cxf2ApOyCzwWk4Jgyqc4sN9lawkdPybUcnYvVjPWQ1hRgnB8mcC9juW3qkES8HttTwvKmWxD0hTncUgl3uVzvS50WVTTtjh9FwU/sgTDPK5qur7G8XeMcul3/I9myQ1oWXCdeBwk9cQtPkF/RZxxz3xjgHqZ4QeDWz/Afp21+DsPKyQI8drLELrL1cqsgpVyMBxQRXCbs1wpfYjKSSejM4RkX92Kl3r5CUDp3mwe2zhjSBGDwjgF54QxGSeJnAbRTuwNlrgk0EqaD3WFky5H1cA51fMT6fP9AADeA== X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 2415f903-f6a4-43cd-c1e2-08db70b3ccb0 X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Jun 2023 10:56:14.3551 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 6BJpKPORHhZzaEWnj4WXt28QSynK9rbi3kNWnTmcKLvpljKJBJ0cCoxkySYnAo6XjqfSZqQEPG1djHGQpP3vOWtV+i/6P0gtnS46J889VvA= X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR03MB5639 On 19/06/2023 10:09 am, Anthony PERARD wrote: > Since QEMU commit 74a1b256d775 ("configure: Bump minimum Clang version > to 10.0"), or QEMU v8.0, Clang 10.0 is now the minimum to build QEMU. > > QEMU 8.0 fails to build on Ubuntu Bionic. > > Signed-off-by: Anthony PERARD Lovely... Acked-by: Andrew Cooper From xen-devel-bounces@lists.xenproject.org Mon Jun 19 11:14:56 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 19 Jun 2023 11:14:56 +0000 Received: from list by lists.xenproject.org with outflank-mailman.551008.860279 (Exim 4.92) (envelope-from ) id 1qBCqG-0005Fm-GE; Mon, 19 Jun 2023 11:14:40 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 551008.860279; Mon, 19 Jun 2023 11:14:40 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBCqG-0005Ff-DN; Mon, 19 Jun 2023 11:14:40 +0000 Received: by outflank-mailman (input) for mailman id 551008; Mon, 19 Jun 2023 11:14:38 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBCqE-0005FZ-IE for xen-devel@lists.xenproject.org; Mon, 19 Jun 2023 11:14:38 +0000 Received: from esa1.hc3370-68.iphmx.com (esa1.hc3370-68.iphmx.com [216.71.145.142]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 7828d8c2-0e92-11ee-8611-37d641c3527e; Mon, 19 Jun 2023 13:14:35 +0200 (CEST) Received: from mail-bn8nam12lp2173.outbound.protection.outlook.com (HELO NAM12-BN8-obe.outbound.protection.outlook.com) ([104.47.55.173]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 19 Jun 2023 07:14:32 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by PH7PR03MB7003.namprd03.prod.outlook.com (2603:10b6:510:12e::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.29; Mon, 19 Jun 2023 11:14:27 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606%4]) with mapi id 15.20.6500.036; Mon, 19 Jun 2023 11:14:27 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 7828d8c2-0e92-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1687173275; h=message-id:date:from:subject:to:cc:references: in-reply-to:content-transfer-encoding:mime-version; bh=NC3+4ERoCeGeZFeRZRsHuufbfSn5sgel0X9jz/QabYM=; b=LdlLj8fsCTHYjc50nac/1NT6xO4TVuLD4JwSqcks7tsq8QocSlUy7mja 7/Y3xcSAQIVBhcWelw+Mq+Vkno4pnbZ9vR0fWeW6wUzqOWKlj1bqlZvZp /YTjpcVISaZfcX+YTJryRmpJ451seCLZnZNXS14UZanfzU+UvVibDRddd s=; X-IronPort-RemoteIP: 104.47.55.173 X-IronPort-MID: 113722317 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:/8UYkKNT8fiX3TrvrR12lsFynXyQoLVcMsEvi/4bfWQNrUon1zYGy 2UfX2iDOf/bNjDxe95wa46x8UkDvcTcyYVmTQto+SlhQUwRpJueD7x1DKtS0wC6dZSfER09v 63yTvGacajYm1eF/k/F3oDJ9CU6jufQAOKnUoYoAwgpLSd8UiAtlBl/rOAwh49skLCRDhiE/ Nj/uKUzAnf8s9JPGjxSs/rrRC9H5qyo42tG5w1mPJingXeF/5UrJMNHTU2OByOQrrl8RoaSW +vFxbelyWLVlz9F5gSNy+uTnuUiG9Y+DCDW4pZkc/HKbitq/0Te5p0TJvsEAXq7vh3S9zxHJ HehgrTrIeshFvWkdO3wyHC0GQkmVUFN0OevzXRSLaV/ZqAJGpfh66wGMa04AWEX0vhUXDxys vYXEw02ZDSzn7i68uyyU/Y506zPLOGzVG8ekldJ6GiDSNwAEdXESaiM4sJE1jAtgMwIBezZe 8cSdTtoalLHfgFLPVAUTpk5mY9EhFGmK2Ee9A3T+PdxujeIpOBy+OGF3N79U9qGX8hK2G2fo XrL5T/RCRAGLt2PjzGC9xpAg8eWxHikAthJTeLQGvhC333D2Tw9BzovSgWF/Ke1yVSbS4x9N BlBksYphe1onKCxdfH6WxS2iHeJphAYVpxcHoUS5wyK0KXZpQqEAGwNVhZKbNs7uIk9QjlC/ l2Dks7tBDdvmKaIUn/b/bCRxRuiNC5QIWIcaCssSQoe/8KlsIw1lgjITNtoDOiylNKdMTP/2 TeRtwAlmq4ey8UM0s2GEUvvhjutot3DSF4z7wCOBGa9tFomP8iiepCi7kXd4bBYNoGFQ1Kdv X8C3c+D8OQJCpLLnyuIKAkQIIyUCz++GGW0qTZS81MJrlxBJ1bLkVhs3QxD IronPort-HdrOrdr: A9a23:zOBiQq/OG7aneWR67FNuk+AcI+orL9Y04lQ7vn2ZKSY5TiX4rb HKoB1/73XJYVkqN03I9ervBEDiewK/yXcW2+ks1N6ZNWGLhILBFupfBODZsl7d8kPFl9K01c 1bAtJD4N+bNykGsS4tijPIb+rJw7O8gd+Vbf+19QYIcenzAZsQlzuQDGygYypLbTgDP7UVPr yG6PFKojKxEE5nFfhSVhE+Lo7+T8SgruOeXSI7 X-Talos-CUID: =?us-ascii?q?9a23=3Az+5EY2vt9Z3kNOVG1fZzDa4p6Is7USCA8DDaLHS?= =?us-ascii?q?FMmxNeKXPRW3O8bp7xp8=3D?= X-Talos-MUID: 9a23:MHmpHwtv9ZYUMB2lGc2n2xEyK5dG7IOXFx4zzMsK+NOhJXJSJGLI X-IronPort-AV: E=Sophos;i="6.00,254,1681185600"; d="scan'208";a="113722317" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=HIcyUx9vOVqgxMzdUCx9CuCCueXqCaYAk+hgIIWPs5Pw+oCLG+XWcCgZhBheeWTIMmJxbFjxu7ZVKvZJcnQOKxziAvl+J6HsTjIU/PMqiEt5QAByzeDUVuVCTd+9tRZmPC5FRZlw6OKmbKMc1Kum7fBOXSjDorZZnlxeT54TR2nXjN1g81LmyFQSrU0fMT4ZV5ggbMOfEcH3rmoaChCzZuHthx6ijM3SXT3HQCY9WIL6aPYGWEi/B+M3hDq8rJCrF6qRRYgeX6yVK5gxoRVsbTht6M5jWsEYkFrJAEFcv8o9muBP5uIMU4RHA43PfR126tAx0RxDnSLAIz9hPGZ4Ow== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=NC3+4ERoCeGeZFeRZRsHuufbfSn5sgel0X9jz/QabYM=; b=MogKuRQFNumHypap1Mucfv1sbbI75QNagetOP0/zsuWB+jmCiUVwZlVLsTeA0iNZSVE0/dBVK3rIY4f3RDLRIfmlCTYuSLz1VTTAGdeBONbrzbibSvWgCr6/D4cP/lBpH4uR9aGEjigU26rJ/HdZTcweI3Yh3jG6tomndFXPasIrh7OvKEM4HIFKRNhHM3BRH+C1kxKuJ8NeTnde3AMjNpDBA+EkFfGn47hWaD+HnGNBybnWUb8vxZoqiiMzbfo0u7PLiczXjr3z6yOxQH65W9ihniF7AXUj3s+gkGsZHjBdqqu35ZUybNINnYyIGvXTZ9CdMzFFzojwq8bmjZGT9Q== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=NC3+4ERoCeGeZFeRZRsHuufbfSn5sgel0X9jz/QabYM=; b=OTol5aZXwgku+AZB8fxNfLTmKPNZ5cpidHlqMliwj7Js/FeWe2L8Mr1y975sWirQ29BsGfTuUDLCxxPD/0TMEvZzHBzb/uOB1xwb7/4tflPbGqaGwAcUA2ibtMVAkjmMCHnMO5ELXp7vRgxUuZEIr+sRUTfAq2hbiFG4zy7b6Aw= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: <945c096b-05b2-d891-9888-5053f75a319d@citrix.com> Date: Mon, 19 Jun 2023 12:14:21 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 From: Andrew Cooper Subject: Re: xentrace buffer size, maxcpus and online cpus Content-Language: en-GB To: Olaf Hering Cc: George Dunlap , Jan Beulich , xen-devel@lists.xenproject.org, Juergen Gross , George Dunlap References: <20230530095859.60a3e4ea.olaf@aepfle.de> <578d341d-0c54-de64-73e7-1dfc7e5d7584@suse.com> <20230530220613.4c4da5cc.olaf@aepfle.de> <1b99e58d-338c-02af-eeab-00d691337d00@suse.com> <20230616134708.6b3c6964.olaf@aepfle.de> <20230616173717.3f264151.olaf@aepfle.de> <20230619121636.672c8cdd.olaf@aepfle.de> In-Reply-To: <20230619121636.672c8cdd.olaf@aepfle.de> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: LO4P123CA0537.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:2c5::17) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|PH7PR03MB7003:EE_ X-MS-Office365-Filtering-Correlation-Id: 65b48746-424f-428b-1125-08db70b65824 X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: zykL2dDS2rwFVA1Yn3r9EdR6HfExnfAYdHUNw1HEubrvQu99tzE9uCFlAenIVTVFz0XZmXJQRlOFqorVi4wCMuhAkvOYVA9udnRXfwZrkHVd1I8y3gStEINCltU8mUjIfRuHR6cazPgrujgCsh7OszQYWJ5umCRYpjUk+pnZCJZY2wymqDbLhTPDJrcyhcSjkqKaH2ijJ8Q/SHLy5WHD7nS6NNUmPg3TVSiTCY5aca0CR2K8psGM3gVDQBei6ycPQgkVjt2ounHTsa9B1UxC00ZOd+aBg2VA440UHTzKH7KDMhSUTz+2VBTda0FBmrCxmmHX9tLChxdZLlPJymWishL1aDeppmc8PRekVjJuLoVj5bFYLihFJlTHTyKo2btnsNHgq/I9IX/UlIgQYYiIYexkCplsRN9kwkYCysLrukvro2xM/RfvYx4KXGHMBEfU1oGvdcbdZUTEXROHBBCxQGg4wW5t9NCFebhHkrr4MJi5V6op+w3DDZ34X+LcS8iKLWZFTD+yH6nkEoCJ2uBY0DjLYd5IC4ZD2fW74RZ9ifYW4zO8zE2HKtPLVbJdnPhAo+dUZeaHP1DiN0tyIhAtHd0Tn7xkhXIvo20FRXJCvBrxgrhG5bIeBJJMBCAQcom3o9Z8aZWqaNaPl4cCo13tVw== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(346002)(39860400002)(366004)(376002)(396003)(136003)(451199021)(8676002)(66476007)(66946007)(54906003)(4326008)(478600001)(8936002)(5660300002)(36756003)(6666004)(66556008)(6916009)(31686004)(316002)(41300700001)(6486002)(38100700002)(82960400001)(6506007)(53546011)(86362001)(186003)(26005)(4744005)(2906002)(31696002)(107886003)(6512007)(2616005)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?SjNBK0p2VnBDZnM1MmVqbHYrWW1mcXZBUU11K3RiZGlOTThhVlVic1M3SC8y?= =?utf-8?B?OGV6UkF6NXg0MEJKUGtybTBUSVkwaDhoZFFPZ1hiMGgvNWVKQ3VxZ3ZPa1RL?= =?utf-8?B?M2NsUG5pOExXM1RqQmdkV2dNQ2FvSDlIcWplMHZDdWNCZ3J0d3ZzdXpHTCtp?= =?utf-8?B?WS9hZFNVNEoyQW5BN2pGc29TckIvcmpBckNkNm9yM0RtMnhVNmlBeVA3UlNJ?= =?utf-8?B?dGRQUENJenl5Umo4ZWFxQy9vaU1uQ25qWGJ6a1VMZHhmSDY1S0ZFd0l5VnJn?= =?utf-8?B?aWRrYkVRMTY2S0RxRXl5Slh0eHRBaHNIeWxxZWFwYzNHamNFRFQyRXJJN2w4?= =?utf-8?B?RExZMXFYTEJvMzZmOXhEcmRieFdpK3V3bS9qZCtZa0xIQXVEYXVKblF2TVc3?= =?utf-8?B?YmhTMDBwOFRmekhuaHFPT2JyQWtMSXBqUS84MCs4WUU3UHl5OUV5R0hBV3pz?= =?utf-8?B?dHZaZ2ZtV0FxZTdXZ3QyZlVQNFVLQnl3WkZvWTk1NEVLYTZRd1RaS3U2ekQr?= =?utf-8?B?QU9qVHUveDF4TTMwcEU4WWRKbEE4QlVYOGxqSDRvYW5FMTdqOHlPYVI5Tkxs?= =?utf-8?B?bmVacHU5VnNxYmIvUHRHVWVoekExUm1JbGpxWG9ZbVlLQWxBVzEzTjBtTFBS?= =?utf-8?B?alNzb29pZ05salUrTkZoU2JBVTZLUHpQRU93Sm5RU0IxdkJrWk4rUy9RWlp0?= =?utf-8?B?b054dUN3b1RXa2NzVEhldEpRcE1nL2JCdFd3SmpIT0Q5WG5Oc1VHWE53VUlL?= =?utf-8?B?VWwvSVFlT0xZNC9JUkZDYkVTZktFNmZvN29OL2JWd2w4ZEwvelZ0UVZSZlhI?= =?utf-8?B?alZBWCtJRlhxbnN6eEVvZys1MGthYllJejg0UXhobUxzMHJjRlI4SUJkcm1B?= =?utf-8?B?ME5LZ3B3S0paWkgyMVU2aWpxanRTbUlURnBROXI2bzU3c0cwMjRNcUgxZXZZ?= =?utf-8?B?eExwZ3d3bldRRy9NUTRyQnBtQ0VEeU9UT01mem9GVy9CRFUzNGp1QWtsOHpI?= =?utf-8?B?dW15U2pnUXQ2Yk9sVnlZcDFJOVkrWGlkV2p3clNMU0hTUy9zNC9Pb1JBZm84?= =?utf-8?B?QUxjYnhrK3BVYitQRDVPcGhCYjZ2UDVXQWx1VTJidDBqc2VKbjVTbHY1cjdx?= =?utf-8?B?aU0rMzN5UHdVUUJOaFpyQkR2UWtUQkZkaUViODA3dWcvK2lFL2Q0V3FwQ281?= =?utf-8?B?UzNiTk5RMVJxeXhQcXJvQTkxTVYzRnZNSHV2eWhMbngyU2kySHNobC9IYUgy?= =?utf-8?B?STVZMkpOdWZRd2pPbXltNEVuUUpIaC9Na24xZU9aMytmT0NhRCtacFAyb3pq?= =?utf-8?B?aFkzN3FFYVBOR29ZYjNRMWJZTmxOVWxQTnpXS2dzK0lhOE1vbldZWnBrNTQy?= =?utf-8?B?aXlJeWZzZ3orNHNjRHRVZ2tIcUZTMklOTVVVZlZxeVFjOWwvT3owNTJBS1Br?= =?utf-8?B?dWlweW9DZ3JVUmhmU0FDT0V2Q3pJa2VjRWlZRlJ5S0xhbVV4a1VTaElXWVQ4?= =?utf-8?B?ejRtNXJJSUNCVEVrTnQwM0x6QXY5MFJlM2lRcHM3dmk0Z2Z2b0FtUEFWWjJL?= =?utf-8?B?YUFJQVArUlRTQXR4VE5HemRyTTBMT0RlMzgzQnJ6Wm5FdzZZYXM4MkF3Mm5a?= =?utf-8?B?QUVwOUpFRXRCM24wdk14ZDFIQTdSN3JQeEFvV0w1WnFpUHpBN0R6YnAyQzkw?= =?utf-8?B?ZklDSFJsa3VuREhLU2NmUWw3TEhzOXlVdXdHZXB3QlVoRkl4YkI2eGpBVGZq?= =?utf-8?B?MUNjV1ViZG9PUVNyckVET2NWdGFzTHNVU1lwNHJaMzNLS1JlOG42V0FtelAy?= =?utf-8?B?eFdyOFZrUXN5bUNZOVoyOXliQVVsaVpFbkNKMkl2cUpUWERkeis5bUJmbXlP?= =?utf-8?B?b3I2M0xKdll6ZFVHLy9yN1Zjd0gxZzN3QUJ0SElKRm83aXdwTlZTa2V1R1Rq?= =?utf-8?B?YVZvREorSDV4Ri9NckpNcUZsTW8wbmh3dFFkWGszaHBXdkdKQlVpSzFaSlpz?= =?utf-8?B?dFJ3WVUxeXVjMG9NVk5MVUZhWmd4QWRBcUVydkZaVFlaSldTeHh3bVB0ejJD?= =?utf-8?B?SlRIcklrRmpINzNYcGZGVFArNmhab3pGNkFUVkVDeXl1NmhEbW0yNHNSMThD?= =?utf-8?B?R0lSVVVVdTJSNXFWUlhwa0d3Ykc3N1U1cVY0RDcvQWcreFVuR0I2MU5iQUEy?= =?utf-8?B?Ync9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: 3T+hU1bi+IM/sjjtLjPqhSBAIb4TSmfQMeuhh3p4I3SHDX/HZGY0psjyQMwxW6D9MXDwZ9sHXeHQZi2gAkIaN9E9UBITfuDgEZh2oR2lrbuynos9SWEzhgrplLk40lkq+7GhVQeNer1T0QKdzLuVkRzH41bHGavG5PysZ4DJIiJp97UnQ57CdSZFEO/WffJ4DgdxnPyVq7UsclI4eK086UgyfWA/7hrYgGKTgA9nkvtfA4zgXLeIoQ+k5vyg4/uU9fW+GjjV6rAzg0SGTEO3s7r8kV2ukAZIFwDPHlRiPTaqNVUcq/SZPV62lFBPzzPJXfHCT9WZenzJ91vsD+FaHjRmQ/HoWOE06YPw9/W5wj2rjQWvEpo0N4f17MNDTTRlMkvwBhyP7qWIAaEx9gAWX9BtVU0dTXXk4ZqSxQ0Wpahd1USCs8E4td13dGzfP7j1X9XIK7aaDQ5CzwhXz3G6CJUvwTxEpF+yW8unuoq0//vQckGf8vCDbqhQtFhzSjvJQs15g36GnTQthSO07uVG1cX6glrzqN1byh1HgQ0ocBKesLoybaktQRX9nZFerD7f8CZAIBIFlg2WqfKTQfTnBlSBd7hvrdHPJySfKvb8VMwWHjoM/DIqt8KtKEMn16z/V/0N7HEdnU9Qa6qAri1o0X8Pj4Rk2dEnCNu95Tbc/jehvUCbXdSUYpEpGts3dDw1k7L6gPt9BPg1ivGboheHU4FrVxoQol/LaF/ZVlLe0xMxiGK7hkMsWni7CPBx9eoVmaz0WM76e+O3HbTSt7UqvnAFSpiDVhI+pOr5ErJdKZa15hMywtiPdBkD+jbQ2864tcE0FFFarorgHcMdTb4k4xpCEcOxoJJ3mr8LhZE59Pk= X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 65b48746-424f-428b-1125-08db70b65824 X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Jun 2023 11:14:27.0823 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: rW9KU9eF1W0SONbtt2Cox1dLqlUJx22nyVB9t/DES4jIzjy1GM7PKH4nUVXV1rmpMZbc/JEGizdTxme079wINDuF2cxYYJOsS7SGjJHT0x4= X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH7PR03MB7003 On 19/06/2023 11:16 am, Olaf Hering wrote: > Fri, 16 Jun 2023 17:08:25 +0100 Andrew Cooper : > >> XENMEM_acquire_resource is a new mapping interface with far more sane >> semantics which, amongst other things, will work in PVH guests too. > Does that indicate xentrace will not work in a PVH dom0? To the best of my knowledge, it does not right now. I seem to recall that ARM did some bodge to make it work for them, as all guests are effectively PVH, but I don't recall exactly what that was. > I will have a look how XENMEM_acquire_resource is used in other places. > The resulting change will likely be too intrusive for 4.18. It shouldn't be too bad IMO, but it's not the end of the world if it falls into 4.19. ~Andrew From xen-devel-bounces@lists.xenproject.org Mon Jun 19 11:20:27 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 19 Jun 2023 11:20:27 +0000 Received: from list by lists.xenproject.org with outflank-mailman.551015.860290 (Exim 4.92) (envelope-from ) id 1qBCvi-0006oh-7U; Mon, 19 Jun 2023 11:20:18 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 551015.860290; Mon, 19 Jun 2023 11:20:18 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBCvi-0006oa-4d; Mon, 19 Jun 2023 11:20:18 +0000 Received: by outflank-mailman (input) for mailman id 551015; Mon, 19 Jun 2023 11:20:17 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBCvh-0006oR-4S for xen-devel@lists.xenproject.org; Mon, 19 Jun 2023 11:20:17 +0000 Received: from esa6.hc3370-68.iphmx.com (esa6.hc3370-68.iphmx.com [216.71.155.175]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 429c5419-0e93-11ee-8611-37d641c3527e; Mon, 19 Jun 2023 13:20:14 +0200 (CEST) Received: from mail-co1nam11lp2177.outbound.protection.outlook.com (HELO NAM11-CO1-obe.outbound.protection.outlook.com) ([104.47.56.177]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 19 Jun 2023 07:20:11 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by BLAPR03MB5443.namprd03.prod.outlook.com (2603:10b6:208:297::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.36; Mon, 19 Jun 2023 11:20:09 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606%4]) with mapi id 15.20.6500.036; Mon, 19 Jun 2023 11:20:09 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 429c5419-0e93-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1687173614; h=message-id:date:from:subject:to:cc:references: in-reply-to:content-transfer-encoding:mime-version; bh=woP4ezfLy9+JJTumWNA1WhRBfFVbGqm9vnf4z+S4/2s=; b=a7GdlyL7BqLM2EbYrApWiuKlU+1jtqgg3NrkjJc1jHSxAYBJceUGLZCt msDTEAFlTRdEzPpSZ7SodfnBshZt74j/N7H5NO8Cioib3UEQ18Ciom3eL Bg2kvM9ad5IPjwlfsZiS5t7fop61cJN9/B29day4TWVRXnehwxzTX7wdI 8=; X-IronPort-RemoteIP: 104.47.56.177 X-IronPort-MID: 112638887 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:0MkSm6tQG0AjiSHhbxqZyBsASOfnVJZfMUV32f8akzHdYApBsoF/q tZmKW3VbK6KYGamLohzbYmx/E4F6pLXx9dlGlM9pS89Ri9A+JbJXdiXEBz9bniYRiHhoOCLz O1FM4Wdc5pkJpP4jk3wWlQ0hSAkjclkfpKlVKiffHg3HVQ+IMsYoUoLs/YjhYJ1isSODQqIu Nfjy+XSI1bg0DNvWo4uw/vrRChH4rKq4Fv0gnRkPaoQ5AGHxiFMZH4iDfrZw0XQE9E88tGSH 44v/JnhlkvF8hEkDM+Sk7qTWiXmlZaLYGBiIlIPM0STqkAqSh4ai87XB9JFAatjsB2bnsgZ9 Tl4ncfYpTHFnEH7sL91vxFwS0mSNEDdkVPNCSDXXce7lyUqf5ZwqhnH4Y5f0YAwo45K7W9yG fMwdxVTQlOo38uM5J26ddBGn/sELeL7FdZK0p1g5Wmx4fcOZ7nmGvyPzvgBmTA6i4ZJAOrUY NcfZXx3dhPcbhZTO1ARTpUjgOOvgXq5eDpdwL6XjfNvvy6Pk0osjv60b4W9lt+iHK25mm6xo G7c8nu/KRYdLNGFkhKO8262h/+JliT+MG4XPOThrKAx0A3DmQT/DjVVElCno6SJu3WGBcBdE A9I2y1wtKMtoRnDot7VGkfQTGS/lhwWVsdUEuY6wBqQ0aeS6AGcbkAbShZRZdpgs9U5LRQj0 lKLltXlHzsprrSRTX+f8Z+fqTSvNW4eKmpqTT8JS04J7sfupKk3jwnTVZBzHaitlNr3FDrsh TeQo0ADa647iMcK0+Cw+gnBijf1/5zRFFdquUPQQ36v6R5/aMi9fYu05FPH7PFGaoGEUl2Gu 3tCkM+bhAwTMayweOW2aL1lNNmUCzytalUwXXYH80EdygmQ IronPort-HdrOrdr: A9a23:geah26omuX+k9pB7GBZZyKMaV5pIeYIsimQD101hICG9E/b5qy nKpp8mPHDP5Qr5NEtLpTniAsi9qA3nmqKdiLN5VYtKNzOLhILHFu9f0bc= X-Talos-CUID: =?us-ascii?q?9a23=3AXOXzfGgcObheUjhqQ3Frin7FxjJuLViD4DT7e2a?= =?us-ascii?q?CLUlod4S/UGC3+Yh0up87?= X-Talos-MUID: =?us-ascii?q?9a23=3AfZZhsg+OL+greIqMiXddPJiQf4Qv6LisVXA8qq1?= =?us-ascii?q?Yqcu/dnBRPGmEhyviFw=3D=3D?= X-IronPort-AV: E=Sophos;i="6.00,254,1681185600"; d="scan'208";a="112638887" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=jTxJEtcMDOzw8w4pMSmzN/hkeeypJYVEHoecGiu3MrHj+QaY7CgVr2AVc9vGqRco8W0yN3xvuAFao7euu1E1J/TZNY8ubiCmxW/rEOaZjGD7g3WfzsCq93hU7+ehpsmEj1DMwsqub77klwSLpNMp46a075mH0uLkV8CXfjf9B1cLwzUvN1354oR8uC3c/jwpYiLsU81PRt0Bs8RFfp3dBWKhy3M3e8OSLq50ekRsCz6Qmpet8WfV10Fkp7mMf2p4cydl2QSsuxiXz5qykKwedBocZ5DYlnNOXfY3+V+DXb+Lchn23B/qgEtiE+E+b8Pyq491kaod0OaQi1+50fh9eg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=EBldFb2h85UZpSgEFUhgy2KcvqJfpmyjslBP/tMBoXg=; b=AOzuE2bZPAvWs+21OG1K3RqxNTqhWgdMn9iXSwqlIHoL6qs4o4wtu1XWCJxIl5TKzE1yZ+3K1q+o/syjiqBKlSFEw1SKpufAgP5NT4EdnzGIEra3enO2B4wDyrGq0ijEL1fvcHnswRYhJMt9jug3kP2viLhORbIW+Bf7CvPqUNZjcpM28AGKjnyym46PqJczkWR1xy8RLxSMxGiL2jK8cAUlvIhMO0bT/oyb/lsOoM3It5iGiC94ifXNlhrWYeSSNcZJALK/qWTPGSsNWMQt2nZaKlRpCctCqsNUyyhjCFSU2UqTd0t7yyIttwlQHcI6wg8vgrpOOilyeDzg/3XpWA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=EBldFb2h85UZpSgEFUhgy2KcvqJfpmyjslBP/tMBoXg=; b=u4gjVgE3NeC38RRB/Z/+rfNNrS7KVyk3Uxr/FgDPGvZN2hletVwDlScCLRIlwWXMmAgBpt12pnjtQwuGKRzliDZiaRFOMB3vM+VppNUQy3ih1v/9hGfh45G5Z4POHvSEw9aqE0Sf5Oci0VN1ZUgKQpgCdGF3ta7vZeNdmTHsweU= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: <569941c3-a909-c4ab-aab2-c256caccdda9@citrix.com> Date: Mon, 19 Jun 2023 12:20:03 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 From: Andrew Cooper Subject: Re: [PATCH 0.5/2] x86/boot: Clean up early error asm Content-Language: en-GB To: Jan Beulich Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , Alejandro Vallejo , Xen-devel References: <20230615153157.444-1-alejandro.vallejo@cloud.com> <20230616182303.3546262-1-andrew.cooper3@citrix.com> <1ea82266-8b61-f70c-c5e2-a2b4e131d222@suse.com> In-Reply-To: <1ea82266-8b61-f70c-c5e2-a2b4e131d222@suse.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO4P123CA0411.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:189::20) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|BLAPR03MB5443:EE_ X-MS-Office365-Filtering-Correlation-Id: 9f125b42-6953-42a3-c1dc-08db70b723dc X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: rluLhdd+2b5S4BlQpxY4V9zVK4/gG1TjGrehc8iSOn5t6ogDvnGg2oFdcWtqK1KpuCXFiDUNT3z2kg9N3/arI+b6hU4ROWffueq0FH9Wy6WRZjNo/EZCvAzWPpuzPVAR3FJE4Q6SbBv832hPLTowV3A2u1ppeXauCla8Sd6+U7enbf22RQxEJUt/zUetlqERh6BCtbiNEv/J67D9LMG+11q+STF8SNTZ2/2kV1Zw7/ZT9wzrj+N2lnLbNbaGfgFlfZjh9RWgSZYjEDFd0phHA1gUxYOBO2ZYT/aVb8h+2Pn8Xg9Dq2Fa9DNybvjehP1RcSN3j+YoXq0e7gjsw0C+jKEkFaQ5BurI9ZKWvY8EMoNCGDwU2m7zO+2udxWoyoKEeXLxHO8pMvmv/uGVhTA/l+7UR0hE4e1Q7YIKazntbZPZ7bC7OtkrFsQvI5R36ZQ4xEkIb8d5zg9EK+ky/l3XHKJLfyCipNs3ngbW7b00TyRNtKf6LMo27WStz461EjzmUvGZr5+UrVqZ96aGXFVNTEzBZqoyGwJAYHMH4eckcVxtvElaVpCUpgMZXO8lKDNGJ6MpfuDqmjWNs7Eq/GbcaGXRFj3CzmCdQV9XWBVAXE80RdgWYcnq5eQah8vjnJxeEkDepeig5xq/peizy51NvQ== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(396003)(366004)(346002)(376002)(136003)(451199021)(31696002)(83380400001)(31686004)(6486002)(54906003)(6666004)(38100700002)(316002)(8676002)(8936002)(2616005)(36756003)(6512007)(86362001)(26005)(4326008)(186003)(6506007)(41300700001)(5660300002)(6916009)(53546011)(66946007)(66476007)(66556008)(82960400001)(478600001)(2906002)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?MmFOL01hVzJQSVNpcFNxNmZIZkRtMytBY0dDUXozckhnY1Buczl3OUMyZjRQ?= =?utf-8?B?YUJqZ1ZzMEI2VTB1WmpuUG8yL2x4OEErVmhBM0FsLzlDOEs0bE9sMGJzNXc1?= =?utf-8?B?d2NHdEx1MkdHd0E2QUtIVTVIUkRMa05QRjd3Y284cGhTOUlEQ1hZVFVBVzhk?= =?utf-8?B?NUozb3dUWEppVVJWc2NUVXB2ZW1YUUNrZXJjem05Wk1Bdlc0UDZ6amhpRWNo?= =?utf-8?B?UXNOekFqcUdlcmt3bkQySjJHYjN0T3hab1lVcDZKc1diYVRZUHBpa091eXFZ?= =?utf-8?B?d0NZbm1seEFyVm1TeU94NUdQVThBaGQ1QXFUUkFLc243L0QrdW5XZDhsU3Nm?= =?utf-8?B?NW5NYXMrZm00cStqbHE4RHR6REk3dkxsL2hkTEFXVUNsM3dlUzBPRjJZQjl6?= =?utf-8?B?YnlxaENnNU5zYzZmVm9USFYwSkI1RTFxVHZNcFpxN3VLd3lvc0F4SlU3cWhK?= =?utf-8?B?S2ZlVkI3azc1NW5LU3pmVFNmTUQwNmJOa0FOcTRwRmF4S0JJNjM0K01oMFFP?= =?utf-8?B?U2NTVS8wUDFhcDk3M0pocE05OS9yd0Nwa1JqNkd0dUNjb1pDWTJ3Mm5qZ0Jj?= =?utf-8?B?alFzSXBZeXplbzl2ZTBoTnMxNlh4WStBVHEyN0E5R1l2U3dtOW5rcFRvN09k?= =?utf-8?B?TFc0eXF0ZlhXS2hBc2pBK1kzUHNGQ0RGNHJvWUdYczFFSHRyWnQ1VzZLaHVk?= =?utf-8?B?YUtkSjNKNDJMY0ZFejJ5MmFrT1NOa0IyUDVyWDI2Y01TQ0lmY3ExbmlPLyty?= =?utf-8?B?VGVGbnErUWJaMU05ekhoY1ZLbUs0TzduOW80VVJjVUxFNk1BSjBBWElWeXFH?= =?utf-8?B?NnNHOTBuZTBocFVxMEFKVHZLTCtpdG5rT0hLbVAzb1B5SlFlaTVMN2RlMXV2?= =?utf-8?B?anptUTRiUmRSWjc4QlB3QnF2eWdyOTFTU0pFYUV0N3NRaVJLMzFxSzJqS0kz?= =?utf-8?B?d3BCYUQ5eEUwdHRJSFdJaWh2TXpNMVdESWprMzREZk1QVGZxL3cxY0F0ekJu?= =?utf-8?B?WEdMYjdKekx3cWJTQURkb2hnaVpVaXFYYjlicnFWWWZuT3o2UmZna2ZjZ1Y2?= =?utf-8?B?UDJsbUtWVm9USFF6UEg3ME5WYnVoT0RQOFh3bnlRVzAxZ09KaWV6SGdabW5m?= =?utf-8?B?S0R5SDBVUFhUYTkzRGVZZHhHQzhvZTJtYUpweXI2V3hPRU4rdEFiOHNMNXVy?= =?utf-8?B?N0Rxd3Y5N3pVWnJBYUtKOGxSWTdEUUdQb2pZWnh6VGJ5dXNIRDJYOGpURlho?= =?utf-8?B?MlFuem5IUjVCWWIvNnlFRFEzSE9JeWQvaW5RT29uYXp6TGJMazA3ODB2K01q?= =?utf-8?B?MVRROWEwTElLaUltQWVsYVpBekFoQmNXY1ZBRGxzdzNQeEhHUDJ0NXBYbDBu?= =?utf-8?B?UnNMSXlUWU0veDBqS0xjNWtscmFqWkNpcDFwRk5IRzZmcld3eHRuWitHTUpr?= =?utf-8?B?S3FnbElWUnJJSHlmcjY1cnVhU0d0UTRHQ3VsQ09PUFZrUkhDV2E0MWZZU1Yy?= =?utf-8?B?NnBCYXhCdHhvTThpWldGeHR3cUZub1A0N2pRei85NitQQXNrdGZ2U1hqbTVZ?= =?utf-8?B?aC96SjlzZkY0U2tlSjlKL2FZcXY4MHVSWThvc0Vrak8zZG41R3NhNEVNSW8x?= =?utf-8?B?S2NUdnRnK1dHeUxaZStMYWhnb1daL0pFcXhOTFgweE1MUmtYaXg2cm03bDVm?= =?utf-8?B?WFF4THN2aUppVFVuYzVTUEhFdWpsNTlxYkJTRzdBR0ZaUXZlVUlUZmJWT0Rw?= =?utf-8?B?NzNST2pGMTNETHN4bTJKb0ZyTS83OVVCOGhHbDhKWWpJalRieElTekY1VXhC?= =?utf-8?B?UW9HYkVHODE1bHR3Z1BMaDdBRkN5SEhBODRTVm1pZDkrQjVPcGlYLzhhbzVP?= =?utf-8?B?d2tBYjRIZG1uN0ZaVCtGOStzRjBrekFnQWgyRDUzcmpMQjhjS0twVm9lUGlV?= =?utf-8?B?dUdnOElmbXlQUjNaNmxLQkdFcmU3MnQzNjF6TU5iYWl1Q1Z4bFo3TUZEak5w?= =?utf-8?B?cFV6UWM4ZUd0OElpQXB4bFVLN1FnWjEvYTBXZ3Y3RVNrYlg5cXRWVEhaZVFs?= =?utf-8?B?OGRoV21ITys1b21NdDl6OHJyVUxjaXF5WjAzVms2akM4NGwrUkUvRVBVMVVN?= =?utf-8?B?KzQ4cTB4Y2R6R3lqNFUyT0F5elJDMkJGRThZalRCYmFyc2VzaytJU1BrbFBj?= =?utf-8?B?RXc9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: wwrn9edWq00WfCBZrfynHCiNgTjiHN1hFNI5LYXVP5e94Fvyt4kj5mgC9p+JnbvRiyK0s7k1Aokf4OotxFX5j3z8sdcAGSvmQSJVeP+tXjnHKs1egn6EEbckNmhS98VCsT3Bjl/056AMGzg75xe8s3mxOMqwINdOqxqRM3R+PqEsSOvbQjdo3M+5ilEP3xiPcsH+V7aZ9NSeQfBM/dp7/NfRTuAT+QOiaCuyYVz2ykQpJUeXpVcg5XmLLYAlmfGJZVVkGdagtlUl2JVEghv9N8BX1ULDauJ+pbzr0hCXwbazD/icL+sINk61LSXDdZv8dXEu5v+bGjZNDNO8VuxRATH9wX6Kme7odEzoMAH0kw8i5Ptfvojod0zdxPmCnZmRWCIq6T78TyTGfRN0u+x0/wcJYP2hPvo7K3ULDBu4A0xuvBA0ycfi3U9pa83+3EHHDaQi5RkgUCUnagixpe4Zo/6wZ8asscCKBpTuQhp8ly6pFm+bELaYldnMi5FguxWz5GJ9ti4eXAxzFie9+rr+iV5mKSQf4tJ8ARDN+qHl/Yu9dx0/fUisRTR+rp5xcLjF+lBArmqDHqwfY6OMUkRes26FtkoCJ9cg54hHSMmKfSxdNchNX82VEWqMI9dZzWOeTZhTudS2bHJdzmDDPo5AtTlUDvaHR9TBjEshGw/qPfemW3acmkHlUpHWyFHnzbd1sEA92RiP+ESyuW3q7TNSWTUgU1LXRXmAzE8C+RJ0aYeGIBb2jP27YJvaqMkNqshNlNNoFr8yFFRK22Ds+f73/Ro+aRZRdVeXSKtK8n97xy4POcMQ2l+MznCKekefTCRwlaIHccgkfh35asnDywAgHbdV1GAKmbEnmT0xyzoO++M= X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 9f125b42-6953-42a3-c1dc-08db70b723dc X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Jun 2023 11:20:08.8667 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: jDA9/SEZVJECFC/WKPyus5g7jqThDuHEWDgtJUXg0ZF3yOOY0x/RdOtZOqaTz/MJWCuqjPXAO9Tj01TSfUeOpa35VSe8PQs6Rwu/F3j4h8o= X-MS-Exchange-Transport-CrossTenantHeadersStamped: BLAPR03MB5443 On 19/06/2023 9:10 am, Jan Beulich wrote: > On 16.06.2023 20:23, Andrew Cooper wrote: >> The asm forming early error handling is a mix of local and non-local symbols, >> and has some pointless comments. Drop the "# Error message" comments, >> tweaking the style on modified lines, and make the symbols local. >> >> However, leave behind one real symbol so this logic disassembles nicely >> without merging in to acpi_boot_init(), which is the thing that happens to be >> immediately prior in my build. >> >> No functional change. >> >> Signed-off-by: Andrew Cooper > Reviewed-by: Jan Beulich Thanks. > with one request: > >> --- a/xen/arch/x86/boot/head.S >> +++ b/xen/arch/x86/boot/head.S >> @@ -142,25 +142,27 @@ efi_platform: >> >> .section .init.text, "ax", @progbits >> >> -bad_cpu: >> - add $sym_offs(.Lbad_cpu_msg),%esi # Error message >> +early_error: > This symbol, which isn't really used except by .size/.type below, > could do with a comment saying that it's intentionally here despite > having no real reference. Ok.  /* Here to make the disassembly better. */ ? The .Lbad_cpu jmp will end up disassembling to early_error+0, so it is technically referenced, but I see your point. >> @@ -202,6 +204,9 @@ not_multiboot: >> .Lhalt: hlt >> jmp .Lhalt >> >> + .size early_error, . - early_error >> + .type early_error, @function > At the 1st and 2nd glance this looks unrelated to this patch. Which > isn't to say I'm opposed, but of course once we have settled on an > annotation model, it'll need touching again anyway. I know it's going to need changing, but in the short term I'm at least making sure the metadata is correct on new additions to asm code. ~Andrew From xen-devel-bounces@lists.xenproject.org Mon Jun 19 11:22:52 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 19 Jun 2023 11:22:52 +0000 Received: from list by lists.xenproject.org with outflank-mailman.551020.860300 (Exim 4.92) (envelope-from ) id 1qBCy6-0007OF-Jv; Mon, 19 Jun 2023 11:22:46 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 551020.860300; Mon, 19 Jun 2023 11:22:46 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBCy6-0007O8-H4; Mon, 19 Jun 2023 11:22:46 +0000 Received: by outflank-mailman (input) for mailman id 551020; Mon, 19 Jun 2023 11:22:45 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBCy5-0007O2-Fo for xen-devel@lists.xenproject.org; Mon, 19 Jun 2023 11:22:45 +0000 Received: from esa1.hc3370-68.iphmx.com (esa1.hc3370-68.iphmx.com [216.71.145.142]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 9ad65625-0e93-11ee-b234-6b7b168915f2; Mon, 19 Jun 2023 13:22:43 +0200 (CEST) Received: from mail-bn1nam02lp2045.outbound.protection.outlook.com (HELO NAM02-BN1-obe.outbound.protection.outlook.com) ([104.47.51.45]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 19 Jun 2023 07:22:21 -0400 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) by LV8PR03MB7470.namprd03.prod.outlook.com (2603:10b6:408:192::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.36; Mon, 19 Jun 2023 11:22:19 +0000 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::ab2a:a298:bacb:db47]) by SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::ab2a:a298:bacb:db47%2]) with mapi id 15.20.6500.031; Mon, 19 Jun 2023 11:22:18 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 9ad65625-0e93-11ee-b234-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1687173763; h=date:from:to:cc:subject:message-id:references: in-reply-to:mime-version; bh=YqPfMsvTFJDvOA9NkEElmZO1j0rqDWIgpItp1djNYqI=; b=eZJf5+eWCAGTSKKtUs3uEKqIAP6rmWNYYIWsC/Jq5Ah58w1uTErBL7Oj 9Twaz6S+ZAYFkmAhDU7crk6zjXWZ+uJIvFaCp2eQxm5BjhaHf1Cd6Sdoe G8EDBACOX/FUF2FuOrmknaR38fUws+Ebw4eUxBKXO6v7/vtNDNumLtK6H E=; X-IronPort-RemoteIP: 104.47.51.45 X-IronPort-MID: 113722971 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:2oioH6wVgqicDGiaTD16t+f6xyrEfRIJ4+MujC+fZmUNrF6WrkVUz 2ZNWmyFOaqCZTDwLdx+PoywoBhV65TWzdVqTlY4/yAxQypGp/SeCIXCJC8cHc8wwu7rFxs7s ppEOrEsCOhuExcwcz/0auCJQUFUjP3OHfykTrafYEidfCc8IA85kxVvhuUltYBhhNm9Emult Mj75sbSIzdJ4RYtWo4vw/zF8EsHUMja4mtC5QRgPKET5TcyqlFOZH4hDfDpR5fHatE88t6SH 47r0Ly/92XFyBYhYvvNfmHTKxBirhb6ZGBiu1IOM0SQqkEqSh8ai87XAME0e0ZP4whlqvgqo Dl7WT5cfi9yVkHEsLx1vxC1iEiSN4UekFPMCSDXXcB+UyQq2pYjqhljJBheAGEWxgp4KWp3r vshCxpTVR+KpaW757aJUNVOue12eaEHPKtH0p1h5RfwKK58BLrlGuDN79Ie2yosjMdTG/qYf 9AedTdkcBXHZVtIJ0sTD5U92uyvgxETcRUB8A7T+fVxvjGVkFEZPLvFabI5fvSQQspYhACAr 3/u9GXlGBAKcteYzFJp91r137SQx3mqB9t6+LuQteBMv22wgXQqWV5JeWGgrNznh2+uRIcKQ 6AT0m90xUQoz2SpU8H9Vhjh+iOssRsVWt4WGOo/gCmdx6yR7wuHC2wsSj9adMdgpMIwXSYt1 FKCg5XuHzMHmKKRYWKQ8PGTtzzaESofIHIGZCQEZRAY+NSlq4Y25jrNQcxkC7WdlcDuFHf7x DXikcQlr7AajMpO3aPi+1nC22iovsKRElNz4RjLVGW46A8/fJSie4Gj9Vnc67BHMZqdSV6C+ nMDnqBy8dwzMH1ErwTVKM1lIV1jz6ft3OH06bK3I6Qcyg== IronPort-HdrOrdr: A9a23:U7j+GKCwFPs556vlHelo55DYdb4zR+YMi2TDt3oddfU1SL38qy nKpp4mPHDP5wr5NEtPpTniAtjjfZq/z/5ICOAqVN/PYOCPggCVxepZnOjfKlPbehEX9oRmpN 1dm6oVMqyMMbCt5/yKnDVRELwbsaa6GLjDv5a785/0JzsaE52J6W1Ce2GmO3wzfiZqL7wjGq GR48JWzgDQAkj+PqyAdx84t/GonayzqK7b X-Talos-CUID: =?us-ascii?q?9a23=3AUrqzrWl1OLg33ZkJUwvJwsy7xYTXOXbkl3DpAGX?= =?us-ascii?q?mMmlgavqYblui4p9GrOM7zg=3D=3D?= X-Talos-MUID: 9a23:as4ImAih5JAFLiSQdV7Y08Mpd9lO3JSNT1g0wNZZl/OfOAkuNhaNk2Hi X-IronPort-AV: E=Sophos;i="6.00,254,1681185600"; d="scan'208";a="113722971" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=C9XJuYq2lMJDLoLgqC3fY4bwUtgPbZCpYQGXSUihbBWDiMzezFhCuYBn3vYUo15Y5UJX+T4maR+eiyB7ym988HDzzAuciz7DlpjOPKY2o/A82OBgADOURxWA5usQ3IJUHK+Ula403CyyCNTF5P4BdDvEd3OUdFYSHgxJDLR0ziniwqIPhOtMqN76arqVM0pDMzzy6HW481NJNoHq5YfpqNoDxn735nfsrkb8lbn0kAzinfmza4m9yfgNF6WnT2IamLz2AsWNtQbD9fwHeWGogyJE6jzqtQo5mrv9WsgitRbnLQCB0TR30kxNDcyMnGmaAWcvM8SF4T/UBhcctUvZaw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=PAD+krmLdS4uUTUyM6ETM0wmungCk7wqOGUk/sKZjls=; b=eHIja/1yT6VVQLPCY9s5/1nahd5dCSJzmlKuBM/GLBSifMtbRwSWE3A652x23aGoveI2q6dmpnYPynsnRxZKvhXfDIEwTWiAMQzsw55InNkav/KLZ6bPImphOS0Fva8XKfj2GM09p+uiAdForzPfYiKdJ9IsuTuGVfRBpDlpiP/kxqRToSjbPWSxi2gG9ADQ/oFoVvxhSNL6Cy9dlqzf4mGPXVVpf3+Gl6O3bw0+ET4IUAAVcapgcDia1grRkhsd55Ydz8LyTzdOz2mJFZW5HBNpZSeYpxYYuw/3zYcCO4EE+GpkEpgcr9wb0oZ5zTfKL0Z3iww2m85+ple2JKrOvw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=PAD+krmLdS4uUTUyM6ETM0wmungCk7wqOGUk/sKZjls=; b=sXgNCSh1JI1ORyXzu19qCmNPU2HQPgCOAbk51gaZmq0QYoyKRVivm0mkxepS8N78Vr5QSivazJ9vVjtGNWIOx62XXxUp/oJ0ymJtcTgkQbebutnxou6MhkUgBx10j8hM+jrxuH7tlgu2CiVBhAr784rQJ4aoHYh3xK3CjqI52c4= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Date: Mon, 19 Jun 2023 13:22:12 +0200 From: Roger Pau =?utf-8?B?TW9ubsOp?= To: Joel Upham Cc: xen-devel@lists.xenproject.org, Wei Liu , Anthony PERARD , Jan Beulich , Andrew Cooper , Juergen Gross Subject: Re: [PATCH v1 0/1] Q35 Support Message-ID: References: Content-Type: text/plain; charset=utf-8 Content-Disposition: inline In-Reply-To: X-ClientProxiedBy: LO2P265CA0020.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:62::32) To SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|LV8PR03MB7470:EE_ X-MS-Office365-Filtering-Correlation-Id: ce70934d-fece-4dbd-4cc3-08db70b77133 X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 4cbbMegli5NQhTi469qibVHuBVF6mcwiz5Fxs/KVm9KrjBhjxd+Wv3/KQYtqBUHwmrV1dy2VL1ZRx5YqPARbHbP5Bp4WcGSuZa2gmnxA0c7E0USa0TMOEo4J4OBaPGh1stJhCed5NDINaYE5dwJnVK9pywNw5t28HEMCZj7WnJ659AtvV4w6hD15jZz6/SgyhAkIGvbLfg8pU2NDaqJOB8icazdy685TFCro4t60FZdBd95SKYns1B6gTQC84Wpdctnib+WoNEF8uWvTF83vGngVAtpFynxdVhqSoNPJpGP7mBYSopBvprliDBm/mNRWD8R8VNSAG/v+FyYuwBd6/uVP56n1/GEX6unaxQWxinKEQwbnkJCOR0So1KXnwBUtFaA4vYXOXUEDnj8x6bM/4/cuXNoNKjdt9uMRd58uCldNVm5neQ2nigp4FLomyiA+DAET3yFVcSKL6MU4qOHeswptjv3XpBgPbWFA8HtUBiAY7v1xHeWbkXCmaloSTnPypVMoJvs76zl64KYpQuxdQdVFgYiJnmk0CK1JD9CXdtA= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(396003)(39860400002)(136003)(346002)(376002)(366004)(451199021)(82960400001)(83380400001)(38100700002)(86362001)(41300700001)(8936002)(8676002)(5660300002)(6916009)(66556008)(66476007)(66946007)(316002)(6506007)(6512007)(9686003)(26005)(966005)(6666004)(186003)(6486002)(478600001)(54906003)(4326008)(2906002)(85182001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?YjI0dmh4VnRwd0JCMjB6YW9ueStDWjNYZkpLbktiRGZQNEJjWGt3bU0vcGpX?= =?utf-8?B?bzFyYkduR1dkaU5UU0xGSVR6Ykh5RnR0Zi9qNzIrOUlMc0ZyQ1EvdWdURzIv?= =?utf-8?B?UHM4Wk43cytCY3d0bHF2eWZxTUd1dEpHUUdBTnFINUdTUWpYdFhlaTFmdmtX?= =?utf-8?B?cGRzN0JKM21kRzZBRDQ2cndLbXJXaCt6YkswOEJxa0pxbndrbHRuak5WVzhG?= =?utf-8?B?YWJNTFFSOUVhQU5pOEhqR2pyajNpUUlWdERRU3JGZitiMzBaNEJIVTlVc1Z6?= =?utf-8?B?Q0YxL0E0UDQvWGVpY3lqWXE3VURrQ3R5RFFEWjJiT3hOblZGMkJoMHNqVXQz?= =?utf-8?B?c2kzVTZZeXczaThNdXh4QmpOVGRleHVRS0g4dWg2K3d2Qk5mMGVTVlMvUFRC?= =?utf-8?B?ZFhRTkk3NjVTc3lZM2tIYUExODNZS21PZzV4cTMvTHB1SEJ2UE1jVEQwS1JK?= =?utf-8?B?dm9WM0Y3ZDBhbWl4ditiT0JpRUxhQjQxc0taVXNvL2VYQmU2ZUdFL0lZa1V5?= =?utf-8?B?clhjWXIxclY5NDFqcTloVHB2MTk2bXNRV2txRmh5ZFZ5ekNPMUdZWkgxWndi?= =?utf-8?B?ZHd1RWxrK0U4L1BIUWJtSHJ5YzVJSlA5SG9EYkQ4TFd4N3I4MlBQMFhJZ2hR?= =?utf-8?B?UlpYakxlMXloT3hzTFFPTVRKd2svb0tyckcva3pqNlpxb2ZDMXc5T2VRd1Ax?= =?utf-8?B?MHk2aTgrR2JSRTRaemI4MWNBOTdycklCM25hcHArWmh3ak41MW5rLzc4N0Mr?= =?utf-8?B?K3JJSDFFSmdZUmZCM05US0FwWVJFczZidGh0RVJZb0hLZDlYV1hKK0JKOFc1?= =?utf-8?B?emR2M1hza3d3b2VkWHBxc25uc3M2TWQ1c085U2d4Sk93anBITHRnS1dyN21J?= =?utf-8?B?a0VnM3Q2SXdoaU11aDZnU3Fhb29tQ2QrZm5ONnBGcFFoRUlDcXBkOXoxajMv?= =?utf-8?B?OUIyaUhES0ZiMVNrdlBhUTVKNGFrSTIyblo3cW9VQU10cWdod3VVS2dzSWcw?= =?utf-8?B?QWVBZ3lJbUtqRGp0aFk5YXJGL29NM2hFQ1JmcmxabHprTER0dUVia1hrTG1T?= =?utf-8?B?UXk0bnV2QjRMM3MvQXEwRXhvckdES0NhZ3RUK2F5Sk85QlVCREEyVWVML1VD?= =?utf-8?B?MWRIcEpFbTE3TCs1Tko1TE1vYUQwaENUVlVLWlgvZEFhd21raXdEQmRXVktC?= =?utf-8?B?TmRYQWIzYlBrMmxUeVpUQjByU0NkM2N4cWYyaWIxOUNYSXA0REZFOEVscERZ?= =?utf-8?B?WlBTWW9XNVRKM1FLQWt6aExUM0VXRHBpTG1CK1lyWG51dzVDZ3RNSmhzN2Zy?= =?utf-8?B?OHZMTUI5ZDZqTWxYNGhmQ2loVWFiWkpGb1RSdlNxRDdoM2paNFAxRkxCaE5x?= =?utf-8?B?cTNpSjBzWlZROEJ2bDUyK3JoVEVCb2tuTmlJY1VKdkRxRDAyS3E1VDMxeldr?= =?utf-8?B?YzNVZEFNT3VieUZBRmlQN1F4Q3phdk9Nd0Uyb3ZzRHZIUVloUFFTK0JuNTB2?= =?utf-8?B?bFArQ1A5TXNGeERpVVMxeDNqMk9Nb2xvVE9kVVBiMEN2WTB0V3BlOXl2NkRB?= =?utf-8?B?TUx5S1FqWHpsSENTSkJxNTc4VisyTDlDWDl1OWQ2YVFLM3hZclZUV1VnWHBZ?= =?utf-8?B?eWxwazNhNndhQ0dJcytRaFFjOTZGZFN1bml5RkVtS3ZnV2VFRkIxZ1M2TmY5?= =?utf-8?B?VHc0S2pReitDcEgvRWtTTjZtbFZyR1J4UmQrTHI0YVh4cStYeWxVY2RsTVZX?= =?utf-8?B?TXBHMUF1andnYnpMdEhqSVBpOXdDa0lzSTArcW1uTnI2SUhqaEN1aWVKTEc5?= =?utf-8?B?dUtsbHRuTWx1SDZNSHl6bzJVb2x1dkRHbE9FVktYUHFLRHZYZllkVlRtRllr?= =?utf-8?B?VklWdjUvODA0VlYxVWN6UjNCRWZmbHJHSFQ3aEREejRGV3lHb3MxajB1TTBJ?= =?utf-8?B?c2N5amhMNGw1bDJXWklINktIa3BRajZTc3ZOYUp3cWVzRjNMaTF0TFMybSs3?= =?utf-8?B?QmJqeFc3bHB6cVVSdlMyVC9BbVhlbXJuTERvT21FRFNnS3czOVZibEtPNGxF?= =?utf-8?B?OTg0a2lRb1l6YktZOVEvbldadXMrOWlYYWx2VWtjZkdrUW53SmtkajVzYnZi?= =?utf-8?Q?9wxglM/lYrbXuY4+HUmgBloUK?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: y0KNkiLE9GPoPyVcU+3oC+g4D74w8jic7Mvm0yqHn6tF+jiURKjQn4NVfHLxvSYcmvQf57bfyH/ojoeBL3IJa3ekpKQlV10sxqdnbmXGGYrz8UwEQR+8niaig99JVZP9rvPMeXSP4BF+2l5A1ZMObmFbSJq3LtV8C6LZ1UXcs5yz7jHRn90qwP/ITzuAXW+RVWSih1M/o7s1yA9Y8zyqIN2LoXXF5u9g30Wcvny+EuiZpCSyeZezIXSTzRpDMvaFcvJAfoi7hfrzpWc9UoT6b6aRu07QjHID0lFBJ+9nZbFHofFwtGaOD+G6FrSUOA4sYZj6vtAVsepuMwZaajQ5gzjG89q9CpRZl80LvGzUuvrAvQI5EFjByu+/B3f89KRTKWp43/9tIS3ay9HqgwbRrV5LY5r7cCqwAmE5ogWTXz0M+3ENzRMhpPMbuOxX7Fg2BbH14M+vRK8NRyAfYq82Dxp7hJ8O0WNVEbgV66kmPBEdeiNe4qhTZOJfYo8Sy1Ufikfc0xgcfOqg5WNW5PE0S1biNVRmhVn028hcHpfF1fmIzDgN2U0PBMDpGek2ZE9Tj3Q3/v8srcHLGj79E4Yra6RCFblPokTIQJsh0rxqZLrBbCuPfwVbPU8Pil2wjphvpm2oPcvBNtWgg/MQZjqWHF9jpgI7aBTmwN//RK8sai6BOiNAwyRvRruxpP48OfnPqPkYHRBE53vWU0EXCIRSmJ2aH6kXBQZ/Kyio/gGH/SKGhwxTO4Aw7JBjg1X7fjCkRhgkoTUFAvl+HLeju9k5kwmZB41QpsjcSb9TKQqkREtLWcc0sBAs5kCOPWH0wZpZjtRRxY4ep65bCFPGJjJ0XcWmCKNzdsyk5dCV8fUC8zk= X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: ce70934d-fece-4dbd-4cc3-08db70b77133 X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Jun 2023 11:22:18.6688 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: x1uPaxkbXKCbcGkZaqXXGAmaKmwE3VlDy+YXU729zAiPNezqOwA3Tcwtp7UrmJRI+FLHULrq5eaqWXKWoFyrfQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: LV8PR03MB7470 On Sun, Jun 18, 2023 at 06:22:01PM -0400, Joel Upham wrote: > Q35 support using Qemu's device emulation. I based the patches from 2017 > found on the mailing list here: > https://lists.xenproject.org/archives/html/xen-devel/2018-03/msg01176.html > > I have been using a version of these patches on Xen 4.16 with Qemu > version 4.1 for over 6 months. The guest VMs are very stable, and PCIe > PT is working as was designed (all of the PCIe devices are on the root > PCIe device). I have successfully passed through GPUs, NICs, etc. I was > asked by those in the community to attempt to once again upstream the > patches. I have them working with Seabios and OVMF (patches are needed > to OVMF which I will be sending to the mailing list). I will be sending > my Qemu patches to their mailing list in hopes of getting everything > upstreamed. The Qemu patches allow for the xenvbd to properly unplug the > AHCI SATA device, and all xen pv windows drivers work as intended. > > I used the original author of the patches to get a majority of this to work: > Alexey Gerasimenko. I fixed the patches to be in line with the upstream > Qemu and Xen versions. Any original issues may still exist; however, I > am sure in time they can be improved. If the code doesn't exist then they > can't be actively looked at by the community. > > I am not an expert on the Q35 chipset or PCIe technology. This is my > first patch to this mailing list. > > Recap of changes to Qemu, only here for reference: > pc/xen: Xen Q35 support: provide IRQ handling for PCI devices > pc/q35: Apply PCI bus BSEL property for Xen PCI device hotplug > acpi/ich9: Multiple fixes for S3 support > acpi/pcihp: Allow for machines to hotplug when using Xen > isa/lpc_ich9: Write lpc configuration for xen IRQs > q35/acpi/xen: Provide ACPI PCI hotplug interface for Xen on Q35 > q35/xen: Add Xen platform device support for Q35 > q35: Fix incorrect values for PCIEXBAR masks > xen/pt: XenHostPCIDevice: provide functions for PCI Capabilities and > PCIe Extended Capabilities enumeration > xen/pt: avoid reading PCIe device type and cap version multiple times > xen/pt: determine the legacy/PCIe mode for a passed through device > xen/pt: Xen PCIe passthrough support for Q35: bypass PCIe topology > check > xen/pt: add support for PCIe Extended Capabilities and larger config > space > xen/pt: handle PCIe Extended Capabilities Next register > xen/pt: allow to hide PCIe Extended Capabilities > xen/pt: add Vendor-specific PCIe Extended Capability descriptor and > sizing > xen/pt: add fixed-size PCIe Extended Capabilities descriptors > xen/pt: add AER PCIe Extended Capability descriptor and sizing > xen/pt: add descriptors and size calculation for > RCLD/ACS/PMUX/DPA/MCAST/TPH/DPC PCIe Extended Capabilities > xen/pt: add Resizable BAR PCIe Extended Capability descriptor and > sizing > xen/pt: add VC/VC9/MFVC PCIe Extended Capabilities descriptors and > sizing > > Changes that would be going to upstream Qemu: > hw/acpi/ich9.c | 22 +- > hw/acpi/pcihp.c | 6 +- > hw/core/machine.c | 19 + > hw/i386/pc_piix.c | 3 +- > hw/i386/pc_q35.c | 39 +- > hw/i386/xen/xen-hvm.c | 7 +- > hw/i386/xen/xen_platform.c | 19 +- > hw/ide/ahci.c | 2 +- > hw/isa/lpc_ich9.c | 53 +- > hw/isa/piix3.c | 2 +- > hw/pci-host/q35.c | 28 +- > hw/pci/pci.c | 17 + > hw/xen/xen-host-pci-device.c | 106 +++- > hw/xen/xen-host-pci-device.h | 6 +- > hw/xen/xen_pt.c | 49 +- > hw/xen/xen_pt.h | 19 +- > hw/xen/xen_pt_config_init.c | 1103 ++++++++++++++++++++++++++++++--- > include/hw/acpi/ich9.h | 1 + > include/hw/acpi/pcihp.h | 2 + > include/hw/boards.h | 1 + > include/hw/i386/pc.h | 3 + > include/hw/pci-host/q35.h | 4 +- > include/hw/pci/pci.h | 3 + > include/hw/southbridge/ich9.h | 1 + > include/hw/xen/xen.h | 4 +- > qemu-options.hx | 1 + > softmmu/datadir.c | 1 - > softmmu/qdev-monitor.c | 3 +- > stubs/xen-hw-stub.c | 4 +- > 29 files changed, 1396 insertions(+), 132 deletions(-) > *** These patches are not found in this series, if they are supposed to > be I will send them here as well. *** It's unclear, do the QEMU patches depend on the Xen side? I have a suspicion you likely want to post them mostly at the same time, but using two different patch series (one for Xen and one for QEMU). > Recap of changes to Xen: > libacpi: new DSDT ACPI table for Q35 > Makefile: build and use new DSDT table for Q35 > hvmloader: add function to query an emulated machine type (i440/Q35) > hvmloader: add ACPI enabling for Q35 > hvmloader: add Q35 DSDT table loading > hvmloader: add basic Q35 support > hvmloader: allocate MMCONFIG area in the MMIO hole + minor code > refactoring > hvmloader: seabios dsdt set to load correct config > hvmloader: ovmf dsdt set to load correct config > libxl: Q35 support (new option device_model_machine) > libxl: Xen Platform device support for Q35 > libacpi: build ACPI MCFG table if requested > hvmloader: use libacpi to build MCFG table > docs: provide description for device_model_machine option > > Joel Upham (1): > Q35 support I'm afraid this needs to be split into a patch series, with proper commit messages in order to be considered for review. The current huge patch is impossible to review at all. Also you need to keep the Signed-off-by of the original author in the patches. Thanks, Roger. From xen-devel-bounces@lists.xenproject.org Mon Jun 19 11:38:42 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 19 Jun 2023 11:38:42 +0000 Received: from list by lists.xenproject.org with outflank-mailman.551027.860310 (Exim 4.92) (envelope-from ) id 1qBDDG-0000eW-0C; Mon, 19 Jun 2023 11:38:26 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 551027.860310; Mon, 19 Jun 2023 11:38:25 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBDDF-0000eP-TI; Mon, 19 Jun 2023 11:38:25 +0000 Received: by outflank-mailman (input) for mailman id 551027; Mon, 19 Jun 2023 11:38:24 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBDDD-0000eF-QO for xen-devel@lists.xenproject.org; Mon, 19 Jun 2023 11:38:24 +0000 Received: from EUR01-DB5-obe.outbound.protection.outlook.com (mail-db5eur01on0610.outbound.protection.outlook.com [2a01:111:f400:fe02::610]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id ca7c927b-0e95-11ee-8611-37d641c3527e; Mon, 19 Jun 2023 13:38:21 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by PAXPR04MB8685.eurprd04.prod.outlook.com (2603:10a6:102:21c::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.36; Mon, 19 Jun 2023 11:38:14 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6500.031; Mon, 19 Jun 2023 11:38:14 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: ca7c927b-0e95-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Ux5AOVhDnvb4w2AtLm+yQx6WyHaO5jaoJKES+3O+6o9Dn4r2tb+JppqBYF3rNKnKXYhL5GgRLroBZGQiy+jP0VJvsMp5NyXeLkrUbHD3lHnyzbfJCxstyvQqpZf65WDPlBcL3UXmiyxgikNMT5haGjke7i48f3z4DGIZrud3Dt2vQvIDt+zy62bplda/s52Vnf82UTvDcLcTYQabEyjfSD38KlSFs8CKISPrrCpokC6C2sEwvpZ9eynXHo62JaxA6XE0z4RUJp5j4lOlYYtGAOPKu62PGTIMMZRVwLayV68THxJpdsIw7vdGP+r19hXV0ry92sfuSL9353jr4rb3kg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=it3TDO5izUEHHb8E1V/IHsGVPvCmT2gLH0Ow3qA/DkA=; b=k7zh3UKkshZCSu6o6o+btPhtIVRyJb1xGwPNHiTPrP67NhtC8H+n8jkWUksbByP1qWn0DNFs9rntzKJ2Iov2dCb628lTueAqxauxIKeYeBNcYp8PEUw6p/kwGB4S5eqRFISyecWy0eNqnOhN6wNA0N547p5uYQxtzWRABBpHU1KLV3eKdc6iHI638cGaWaTD6o5RgWB138oP17z4k3vMPcuDN1A/+Xs8hH446HxM1HMaHL1iuWzTMo5MJ7iGB8IwYA0IqGL08fEZK8gwagwRSNmR0Sb/sMGL6Q+Tc3R+8VL8sJtx9rPDRqwspcjlGhOU4+6jEBC52jmivIuvSB8Qcw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=it3TDO5izUEHHb8E1V/IHsGVPvCmT2gLH0Ow3qA/DkA=; b=n74hiBLgzTJdgr0Gh5a8arDPoGAW7zvFhFCnSQ09sSSgwxWIYC0rfU7lid3Is90VVNIQLAeZtTvLM6+/OqfqqytJcW0EgZhiMCHBT7tfO6VjL6gDr3Bi6qlP71VfhsnlIUIzZxM2B6EcfIdqCDoPXMC83Nk1EfCWdx9mWVsRqNrV30dMYeKjc/Msv0POMEDnqaTWHuEGVeWxg0Az/l7UTZJcXfdMb6+nbvpGorM97JrbNw+9QZriNjyXBllWLPymDAeFDn4i0ifCSwGrB24kri+wo0QZvy2OiQysBbiL/o3KR5Wia3IFQ6M9eK2h7aT2HpI+c34On2GW/Sd23Gtb1g== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <66771ebb-7d56-ca84-89bc-14f69fe62bd6@suse.com> Date: Mon, 19 Jun 2023 13:38:16 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v4 06/15] cpufreq: Add Hardware P-State (HWP) driver Content-Language: en-US To: Jason Andryuk Cc: Andrew Cooper , George Dunlap , Julien Grall , Stefano Stabellini , Wei Liu , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , xen-devel@lists.xenproject.org References: <20230614180253.89958-1-jandryuk@gmail.com> <20230614180253.89958-7-jandryuk@gmail.com> From: Jan Beulich In-Reply-To: <20230614180253.89958-7-jandryuk@gmail.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR0P281CA0175.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:b4::9) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|PAXPR04MB8685:EE_ X-MS-Office365-Filtering-Correlation-Id: 9f1799e2-0414-41af-7fbe-08db70b9ab11 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: KHybwR+hfm5DY+njqhjK5tPUdofUopiHsQ5fXhCQMNBXkLf1OMV+4eu4vcNWtfXGf5uN8yq5DI+LTT3W2phwSMPIaVrjkk9hPz58mzgKhvpSdLBBRN7M90FK5QuFgouwT+EJZpmr2Rj00axFnQxrz0vw99GEOUgRz+AvNPL5mw64z+6JjwxXvxgC2xjg8NaaYXAmZ1Pkb0pjLnADOV6nnTGmPWrvUZosyT/sBK6IkFIjnLOxwMS7aV4Rdp/hAIYwSzoUChSo4mzEtalFDPY3RTM3DhLMBd0Hzgr2GKWBz2C5AOGyjDFTp6qgHVktlamEP2NhYKs+iLYDBhPbUU0hczAgnIMy3O5KaDpWPzNHXBoKdS19ZBtdRMVHoLrHHf1eTbov1VeEpKYUL2MIx0UTicplDzJCDSsCiQgtOKkZsXGVeYAkeswkVqaavWMYfJ5v2q+y6if7+GnQH+ETU7kNHdDTBV7k7wP8mc9PuFO6HrgD6NDPqnpI7avqC9ffrXIk+7m0PM/GW+hKdVdVm1+ycKF7dcRpa6MxPZmFrQ18jrVlmULYz77lRJpzl3/U0wPz+yfZQ5ob3xjiQ+kc7ox70Gjye/rK7jltxZ31lYsesSlW1/EHlxzIBJeFlWWqmOGuNxRCKzh3+gvcMmbgwNchZqIuhAIRH6Gx+8e2j1401kYNLvyZiN306/jVhoKW/zXg X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(376002)(346002)(366004)(39860400002)(136003)(396003)(451199021)(478600001)(2906002)(30864003)(6486002)(54906003)(38100700002)(316002)(31696002)(83380400001)(31686004)(5660300002)(41300700001)(66946007)(66476007)(66556008)(6916009)(53546011)(6512007)(6506007)(36756003)(26005)(86362001)(8676002)(8936002)(186003)(2616005)(4326008)(45980500001)(43740500002)(309714004);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?YUNsdXc2SURXU1p0OXd5RWtUYUpGdHh1dGRLL3VWaTg3aDNCdmlLeWVLNmRr?= =?utf-8?B?M0F0Tkg1L0YyRkttTWtaUDNtWGRpdzFHNVQ1N2Y4Z3FhZU9oNVJ6aWpBck01?= =?utf-8?B?TkJmNnFZVVM5T1d2ajlidWxsaXFhTGRSS09FLzZiRnptZ2hmYlUrblgzeVRo?= =?utf-8?B?WTEyNFVkRU9KdWpnWFJKdVBzcFBlUEVVVTFqa2dsL2JFVXFPc1lXYy9ySFMw?= =?utf-8?B?K0lvTGR0eWZCVk9JRXZkSUhzb013OGdqVUJ0YWt0bTRnK1YwcGtzbDdyVjZV?= =?utf-8?B?bUZ4eHIrdnFzRWF0ZnBwUkZWelJSUndoUU5Jbk1sUEZxaTJGMmdXQmllc1Bj?= =?utf-8?B?aVlheEpmRHk3OTE3MFN0bGVobUxDWEpaQWlMSkt5UDJkUEV3QjhZejRMckQ0?= =?utf-8?B?bEgweWdVY0ZVQ0lVSDFmS3VTbjRWU0puNFVyemJESjY1TFcwYW1abE9hRVZU?= =?utf-8?B?aUR1ODhZUkMvYnR4VHN3NWhNampzNlJOanUrcVRPWldDQmlCQWZiMjV2NmtI?= =?utf-8?B?VVJ3R0p3N1plTnFHbXFxZ29YcUNPK2ZNZStvczdnSkVkby9rRmRldUNmR3BV?= =?utf-8?B?NENBWHdISjcrUGJWWlRZek5LZ0FyWWFUSkdQaFBVY3ZUTVpVS3RRckI3YUpp?= =?utf-8?B?YmFkbmpwSXVsVGdLQnNpdVJhbTgxM2JSYlNWd2dYVkJqSHl2Y1NkU1RIR0hx?= =?utf-8?B?MFNuUE85Y3IvRSs2Yy8wVnIyRkpDY1ozc2ZncnN4bFd5QkJJQzZlRVV0c2di?= =?utf-8?B?dmQyR25adjJYdTlnYkp6WWQ3L2QyNFJaMUlSZlZSVkhUb0FQcUEzNXRXek4r?= =?utf-8?B?R0Izdlk2K0I2TXdzUXR0eEM0Y1lZZWZUdUVrRkZSdGxnSktyaHRDcm5oeEcz?= =?utf-8?B?eCtEM2k5VTVXc2I4RXF2WVFuVEtsUnRtVjJKVmx3TldtL0JNdEtnaUd5ZHFm?= =?utf-8?B?MS9mZ1RmWnk5bWh5M1NrT2d3MERiWkF5Sng5VFF4Sm5hWkNmOHRZMGpXbWs2?= =?utf-8?B?WTc2c05Ec0NCQmt0OVU4WDFGS1hvdFFzWlZoLzJBRHE4MEpTYkpvWlNxMnda?= =?utf-8?B?aFozbVJUVFVlTkl1b1hKVzl2WXlxb0pRUndnM1JRYmJ6THJ6M2piTHpOV0NW?= =?utf-8?B?cEJNNjFtQldlNmI1a3VrSlNNdlRKUHRCdG5RM2M2KzRxVSt3bFVGcjMrcWp6?= =?utf-8?B?b0Z0ZnZPTnRxL21WQytSMmJ1ei9FV2MyN1M0eTRVYmlkcytjeEFxY3YvUXNz?= =?utf-8?B?Wm1rQnFRR1o4MWI5aFQ1MlVHRnF1UmdIRzgxbTlsQTlXSHNqWWZZVHQvT0xz?= =?utf-8?B?U2xuOFpoZGFOdTI2ZjM1bThCTTdJa0pqVCs2RjB4Y0VienIyRC9veHpOQ2dv?= =?utf-8?B?a3NKeHRCSVROMEcxaWJKNTZPT0pmU3VtV1JOTVExRWQyaS9wSEhkY2NPa2hP?= =?utf-8?B?L0drbUZWc2dKKzc4Y0RpNjVrVFdyTnk5NlVQQ1ZJRzNMRFdoek9iYTZHOTQ2?= =?utf-8?B?MkxIMytkdWRCelRUTFhVQWtwR095L2JwSFF3MXZkU1RhaVg5RFFKaUJZQ0pQ?= =?utf-8?B?dlFvRm9UVzlsOGlDamxvOVZmK0NNNlMwUFAzVmhPUjM3VExwTnNXaS9jWDJt?= =?utf-8?B?cjFndkxzaWU2K25qWk1pOFJrWEY1MCt5QmxQbVpTZ3FOMWhYL0VsZ3V4WTdN?= =?utf-8?B?bWpOd1RrY0NOVmN6TGd1T05YUTFYUnVwN0h4K3Judy9weDZwSDlmSDM3TWJ6?= =?utf-8?B?SUJwSlJqNTJRUE1ZemlZWnZucWY4Z0RLSHNJc1pJenVaTEJSR1o0b1Bvby9v?= =?utf-8?B?YmluWVFTMTFaMmFlMjUyQXN3TTFqaHBnMnZOQXlCRVhSWGxxNVl4aGw4eHNU?= =?utf-8?B?SnJvNG5vcVdRM0lwY0NXOW1FcjRnY2N2aDhiVlpBcm9UQXNiekxHTzVXTVBS?= =?utf-8?B?b2FSSlZoWWg2OHZ4KzhtWHo1bXhpbjZoVFZQWG9QaVp3eWRUelI2K2ptU3ZH?= =?utf-8?B?T2lhYW01Y1NCdVZiMXgxVWdmZDhsMUQ1UkFUd3pqOUZKelN1RGd6UW1sK3FF?= =?utf-8?B?bUdsRWhEM0dTbGtsREllSmMwdUs4Z2JNZkRzVGwzVHZsMDBoTWZyRjhza2RB?= =?utf-8?Q?3dBkgCGfghYSMnAOnXSoJGOfF?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 9f1799e2-0414-41af-7fbe-08db70b9ab11 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Jun 2023 11:38:14.5678 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: L79W/i3ZFTel1Hgr/qio5TD2e7p3WpHJeAsJqPnFT5Ab9C2DBp8I4GjQhgDU7UOgBYHe8uVMuSyK3uK3Yn8bvQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB8685 On 14.06.2023 20:02, Jason Andryuk wrote: > Falling back from cpufreq=hwp to cpufreq=xen is a more user-friendly > choice than disabling cpufreq when HWP is not available. Specifying > cpufreq=hwp indicates the user wants cpufreq, so, if HWP isn't > available, it makes sense to give them the cpufreq that can be > supported. i.e. I can't see a user only wanting cpufreq=hwp or > cpufreq=none, but not cpufreq=xen. I continue to disagree with this, and I'd like to ask for another maintainer's opinion. To me the described behavior is like getting pears when having asked for apples. I nevertheless agree that having said fallback as an option, but I'd see that done by giving meaning to something like "cpufreq=hwp,xen" (without having checked whether that doesn't have meaning already, i.e. just to give you an idea). > We can't use parse_boolean() since it requires a single name=val string > and cpufreq_handle_common_option is provided two strings. Use > parse_bool() and manual handle no-hwp. > > Write to disable the interrupt - the linux pstate driver does this. We > don't use the interrupts, so we can just turn them off. We aren't ready > to handle them, so we don't want any. Unclear if this is necessary. > SDM says it's default disabled. Part of this may want to move to the description? > --- /dev/null > +++ b/xen/arch/x86/acpi/cpufreq/hwp.c > @@ -0,0 +1,537 @@ > +/* SPDX-License-Identifier: GPL-2.0-only */ > +/* > + * hwp.c cpufreq driver to run Intel Hardware P-States (HWP) > + * > + * Copyright (C) 2021 Jason Andryuk > + */ > + > +#include > +#include > +#include > +#include > +#include What do you need this one for? > +#include > +#include > + > +static bool __ro_after_init feature_hwp; > +static bool __ro_after_init feature_hwp_notification; > +static bool __ro_after_init feature_hwp_activity_window; > + > +static bool __ro_after_init feature_hdc; > + > +bool __initdata opt_cpufreq_hwp; > +static bool __ro_after_init opt_cpufreq_hdc = true; > + > +union hwp_request > +{ > + struct > + { > + unsigned int min_perf:8; > + unsigned int max_perf:8; > + unsigned int desired:8; > + unsigned int energy_perf:8; > + unsigned int activity_window:10; > + bool package_control:1; > + unsigned int reserved:16; Better leave this and ... > + bool activity_window_valid:1; > + bool energy_perf_valid:1; > + bool desired_valid:1; > + bool max_perf_valid:1; > + bool min_perf_valid:1; > + }; > + uint64_t raw; > +}; > + > +struct hwp_drv_data > +{ > + union > + { > + uint64_t hwp_caps; > + struct > + { > + unsigned int highest:8; > + unsigned int guaranteed:8; > + unsigned int most_efficient:8; > + unsigned int lowest:8; > + unsigned int reserved:32; ... this without a name? Hardware interfaces like this one are, in my understanding, one of the main applications of unnamed bitfields. > + } hw; > + }; > + union hwp_request curr_req; > + int ret; > + uint16_t activity_window; > + uint8_t minimum; > + uint8_t maximum; > + uint8_t desired; > + uint8_t energy_perf; > +}; > +DEFINE_PER_CPU_READ_MOSTLY(struct hwp_drv_data *, hwp_drv_data); static? > +static bool hwp_handle_option(const char *s, const char *end) > +{ > + int ret; > + > + if ( strncmp(s, "verbose", 7) == 0 ) > + { > + s += 7; > + if ( *s == '=' ) > + { > + s++; > + cpufreq_verbose = !!simple_strtoul(s, NULL, 0); > + > + return true; > + } > + > + if ( end == NULL || > + (end == s && (*end == '\0' || *end == ',')) ) > + { > + cpufreq_verbose = true; > + > + return true; > + } > + > + return false; > + } Would be nice if the handling of "verbose" didn't need duplicating here. However, if that's unavoidable, did you consider handling this as a proper boolean instead of the custom way cpufreq_handle_common_option() also uses? > +bool __init hwp_available(void) > +{ > + unsigned int eax; > + > + if ( !opt_cpufreq_hwp ) > + return false; > + > + if ( boot_cpu_data.cpuid_level < CPUID_PM_LEAF ) > + { > + hwp_verbose("cpuid_level (%#x) lacks HWP support\n", > + boot_cpu_data.cpuid_level); > + > + return false; > + } > + > + if ( boot_cpu_data.cpuid_level < 0x16 ) > + { > + hwp_info("HWP disabled: cpuid_level %#x < 0x16 lacks CPU freq info\n", > + boot_cpu_data.cpuid_level); > + > + return false; > + } > + > + eax = cpuid_eax(CPUID_PM_LEAF); > + > + hwp_verbose("%d notify: %d act-window: %d energy-perf: %d pkg-level: %d peci: %d\n", > + !!(eax & CPUID6_EAX_HWP), > + !!(eax & CPUID6_EAX_HWP_NOTIFICATION), > + !!(eax & CPUID6_EAX_HWP_ACTIVITY_WINDOW), > + !!(eax & CPUID6_EAX_HWP_ENERGY_PERFORMANCE_PREFERENCE), > + !!(eax & CPUID6_EAX_HWP_PACKAGE_LEVEL_REQUEST), > + !!(eax & CPUID6_EAX_HWP_PECI)); > + > + if ( !(eax & CPUID6_EAX_HWP) ) > + return false; > + > + if ( !(eax & CPUID6_EAX_HWP_ENERGY_PERFORMANCE_PREFERENCE) ) > + { > + hwp_verbose("disabled: No energy/performance preference available"); > + > + return false; > + } > + > + feature_hwp = eax & CPUID6_EAX_HWP; > + feature_hwp_notification = eax & CPUID6_EAX_HWP_NOTIFICATION; > + feature_hwp_activity_window = eax & CPUID6_EAX_HWP_ACTIVITY_WINDOW; > + feature_hdc = eax & CPUID6_EAX_HDC; Would you mind matching this line with the earlier three, padding-wise? > + hwp_verbose("Hardware Duty Cycling (HDC) %ssupported%s\n", > + feature_hdc ? "" : "not ", > + feature_hdc ? opt_cpufreq_hdc ? ", enabled" : ", disabled" > + : ""); > + > + hwp_verbose("HW_FEEDBACK %ssupported\n", > + (eax & CPUID6_EAX_HW_FEEDBACK) ? "" : "not "); > + > + cpufreq_governor_internal = feature_hwp; What use is feature_hwp? Already its setting is a little odd (you could use true there as much as you could here and for the return value below, because of the earlier CPUID6_EAX_HWP check), and then I haven't been able to find any further use of the variable. > + if ( feature_hwp ) > + hwp_info("Using HWP for cpufreq\n"); > + > + return feature_hwp; > +} > + > +static int hdc_set_pkg_hdc_ctl(unsigned int cpu, bool val) > +{ > + uint64_t msr; > + > + if ( rdmsr_safe(MSR_PKG_HDC_CTL, msr) ) > + { > + hwp_err("rdmsr_safe(MSR_PKG_HDC_CTL)\n", cpu); > + > + return -1; Nit: While blank lines often help, and we even demand them ahead of a function's main return statement, here and ... > + } > + > + if ( val ) > + msr |= PKG_HDC_CTL_HDC_PKG_ENABLE; > + else > + msr &= ~PKG_HDC_CTL_HDC_PKG_ENABLE; > + > + if ( wrmsr_safe(MSR_PKG_HDC_CTL, msr) ) > + { > + hwp_err("wrmsr_safe(MSR_PKG_HDC_CTL): %016lx\n", cpu, msr); > + > + return -1; ... here (and then again below) I think they do more harm than good. > +static void hwp_get_cpu_speeds(struct cpufreq_policy *policy) > +{ > + uint32_t base_khz, max_khz, bus_khz, edx; > + > + cpuid(0x16, &base_khz, &max_khz, &bus_khz, &edx); > + > + policy->cpuinfo.perf_freq = base_khz * 1000; > + policy->cpuinfo.min_freq = base_khz * 1000; > + policy->cpuinfo.max_freq = max_khz * 1000; > + policy->min = base_khz * 1000; > + policy->max = max_khz * 1000; What are the consequences (for the driver) when any of the values read is zero? While I haven't checked in combination with HWP, I know that CPUs may populate only some of the fields. > +static void cf_check hwp_init_msrs(void *info) > +{ > + struct cpufreq_policy *policy = info; > + struct hwp_drv_data *data = this_cpu(hwp_drv_data); > + uint64_t val; > + > + /* > + * Package level MSR, but we don't have a good idea of packages here, so > + * just do it everytime. > + */ > + if ( rdmsr_safe(MSR_PM_ENABLE, val) ) > + { > + hwp_err("rdmsr_safe(MSR_PM_ENABLE)\n", policy->cpu); > + data->curr_req.raw = -1; > + return; > + } > + > + /* Ensure we don't generate interrupts */ > + if ( feature_hwp_notification ) > + wrmsr_safe(MSR_HWP_INTERRUPT, 0); > + > + hwp_verbose("CPU%u: MSR_PM_ENABLE: %016lx\n", policy->cpu, val); > + if ( !(val & PM_ENABLE_HWP_ENABLE) ) > + { > + val |= PM_ENABLE_HWP_ENABLE; > + if ( wrmsr_safe(MSR_PM_ENABLE, val) ) > + { > + hwp_err("wrmsr_safe(MSR_PM_ENABLE, %lx)\n", policy->cpu, val); > + data->curr_req.raw = -1; > + return; > + } > + } > + > + if ( rdmsr_safe(MSR_HWP_CAPABILITIES, data->hwp_caps) ) > + { > + hwp_err("rdmsr_safe(MSR_HWP_CAPABILITIES)\n", policy->cpu); > + goto error; > + } > + > + if ( rdmsr_safe(MSR_HWP_REQUEST, data->curr_req.raw) ) > + { > + hwp_err("rdmsr_safe(MSR_HWP_REQUEST)\n", policy->cpu); Having seen a number of hwp_err() by now, I think these are confusing: The format string as seen at call sites doesn't match the number of arguments. I see two possible solutions to this: Either you demand that calling functions maintain a "cpu" local variable, and you simply use that from the macro without passing it as argument. Or you flip parameters / arguments: hwp_err(policy->cpu, "rdmsr_safe(MSR_HWP_REQUEST)\n"); > + goto error; > + } > + > + /* > + * Check for APERF/MPERF support in hardware > + * also check for boost/turbo support > + */ > + intel_feature_detect(policy); > + > + if ( feature_hdc ) > + { > + if ( hdc_set_pkg_hdc_ctl(policy->cpu, opt_cpufreq_hdc) ) > + goto error; > + if ( hdc_set_pm_ctl1(policy->cpu, opt_cpufreq_hdc) ) > + goto error; If either of these fails the very first time through (presumably for the BSP), wouldn't a better course of action be to clear feature_hdc? > + } > + > + hwp_get_cpu_speeds(policy); > + > + return; > + > + error: > + data->curr_req.raw = -1; > + val &= ~PM_ENABLE_HWP_ENABLE; > + if ( wrmsr_safe(MSR_PM_ENABLE, val) ) > + hwp_err("wrmsr_safe(MSR_PM_ENABLE, %lx)\n", policy->cpu, val); > + > + return; > +} I think in general we avoid "return" with no value at the end of functions. > +static void cf_check hwp_write_request(void *info) > +{ > + const struct cpufreq_policy *policy = info; > + struct hwp_drv_data *data = this_cpu(hwp_drv_data); > + union hwp_request hwp_req = data->curr_req; > + > + data->ret = 0; > + > + BUILD_BUG_ON(sizeof(union hwp_request) != sizeof(uint64_t)); Why uint64_t? Generally we try to avoid using types in sizeof() and alike, and instead refer to applicable variables. I.e. here: BUILD_BUG_ON(sizeof(hwp_req) != sizeof(hwp_req.raw)); > +static int cf_check hwp_cpufreq_target(struct cpufreq_policy *policy, > + unsigned int target_freq, > + unsigned int relation) > +{ > + unsigned int cpu = policy->cpu; > + struct hwp_drv_data *data = per_cpu(hwp_drv_data, cpu); > + /* Zero everything to ensure reserved bits are zero... */ > + union hwp_request hwp_req = { .raw = 0 }; > + > + /* .. and update from there */ > + hwp_req.min_perf = data->minimum; > + hwp_req.max_perf = data->maximum; > + hwp_req.desired = data->desired; > + hwp_req.energy_perf = data->energy_perf; > + if ( feature_hwp_activity_window ) > + hwp_req.activity_window = data->activity_window; > + > + if ( hwp_req.raw == data->curr_req.raw ) > + return 0; > + > + data->curr_req = hwp_req; > + > + hwp_verbose("CPU%u: wrmsr HWP_REQUEST %016lx\n", cpu, hwp_req.raw); > + on_selected_cpus(cpumask_of(cpu), hwp_write_request, policy, 1); Is this at risk of being too verbose when the verbose option as given? > + return data->ret; > +} > + > +static int cf_check hwp_cpufreq_cpu_init(struct cpufreq_policy *policy) > +{ > + unsigned int cpu = policy->cpu; > + struct hwp_drv_data *data; > + > + data = xzalloc(struct hwp_drv_data); > + if ( !data ) > + return -ENOMEM; > + > + if ( cpufreq_opt_governor && strcmp(cpufreq_opt_governor->name, > + cpufreq_gov_hwp.name) ) Nit: I think this would better be if ( cpufreq_opt_governor && strcmp(cpufreq_opt_governor->name, cpufreq_gov_hwp.name) ) > + printk(XENLOG_WARNING > + "HWP: governor \"%s\" is incompatible with hwp. Using default \"%s\"\n", > + cpufreq_opt_governor->name, cpufreq_gov_hwp.name); > + policy->governor = &cpufreq_gov_hwp; > + > + per_cpu(hwp_drv_data, cpu) = data; > + > + on_selected_cpus(cpumask_of(cpu), hwp_init_msrs, policy, 1); > + > + if ( data->curr_req.raw == -1 ) > + { > + hwp_err("Could not initialize HWP properly\n", cpu); > + XFREE(per_cpu(hwp_drv_data, cpu)); Is this completely safe even in the CPU online/hotplug case? It would seem better to me to go this way: per_cpu(hwp_drv_data, cpu) = NULL; xfree(data); Or even defer publishing "data" ... > + return -ENODEV; > + } > + > + data->minimum = data->curr_req.min_perf; > + data->maximum = data->curr_req.max_perf; > + data->desired = data->curr_req.desired; > + data->energy_perf = data->curr_req.energy_perf; > + data->activity_window = data->curr_req.activity_window; ... until after it was fully populated. (But I seem to vaguely recall that you need to use the field somewhere in the init process.) > + hwp_verbose("CPU%u: HWP_CAPABILITIES: %016lx\n", cpu, data->hwp_caps); Isn't this expected (or even required) to be the same on all CPUs? If so, no need to log every time. > +static int cf_check hwp_cpufreq_cpu_exit(struct cpufreq_policy *policy) > +{ > + XFREE(per_cpu(hwp_drv_data, policy->cpu)); Same remark as above, primarily because this is also used on an error path. > +/* > + * The SDM reads like turbo should be disabled with MSR_IA32_PERF_CTL and > + * PERF_CTL_TURBO_DISENGAGE, but that does not seem to actually work, at least > + * with my HWP testing. MSR_MISC_ENABLE and MISC_ENABLE_TURBO_DISENGAGE > + * is what Linux uses and seems to work. > + */ "my testing" imo wants replacing here by saying what hardware was tested (not who did the testing). > +static int cf_check hwp_cpufreq_update(int cpuid, struct cpufreq_policy *policy) > +{ > + struct hwp_drv_data *data = per_cpu(hwp_drv_data, cpuid); > + on_selected_cpus(cpumask_of(cpuid), hwp_set_misc_turbo, policy, 1); Nit: Blank line please between declaration(s) and statement(s). Or alternatively drop the local variable ltogether, as it's used ... > + return data->ret; ... just once here. > +} > + > +static const struct cpufreq_driver __initconstrel hwp_cpufreq_driver = Seeing __initconstrel here, just as a remark (not a request for you to do anything): I think we want to finish conversion to altcall, such that these can all become __initconst_cf_clobber. > --- a/xen/drivers/cpufreq/cpufreq.c > +++ b/xen/drivers/cpufreq/cpufreq.c > @@ -97,6 +97,15 @@ static int __init cf_check setup_cpufreq_option(const char *str) > return cpufreq_cmdline_parse(arg + 1); > } > > + if ( choice < 0 && !cmdline_strcmp(str, "hwp") ) > + { > + xen_processor_pmbits |= XEN_PROCESSOR_PM_PX; > + cpufreq_controller = FREQCTL_xen; > + opt_cpufreq_hwp = true; > + if ( *arg && *(arg + 1) ) A pretty unusual way of writing arg[1]. > --- a/xen/include/acpi/cpufreq/cpufreq.h > +++ b/xen/include/acpi/cpufreq/cpufreq.h > @@ -246,4 +246,7 @@ void cpufreq_dbs_timer_resume(void); > > void intel_feature_detect(struct cpufreq_policy *policy); > > +extern bool __initdata opt_cpufreq_hwp; No __initdata or alike on declarations please. Section placement attributes (among others) only belong on the definition. > --- a/xen/include/acpi/cpufreq/processor_perf.h > +++ b/xen/include/acpi/cpufreq/processor_perf.h > @@ -7,6 +7,9 @@ > > #define XEN_PX_INIT 0x80000000 > > +bool hwp_available(void); > +int hwp_register_driver(void); > + > int powernow_cpufreq_init(void); > unsigned int powernow_register_driver(void); > unsigned int get_measured_perf(unsigned int cpu, unsigned int flag); The existing split between what lives in which header is pretty arbitrary from all I can tell. Is there a particular reason you can't keep together the four declarations you add? > --- a/xen/include/public/sysctl.h > +++ b/xen/include/public/sysctl.h > @@ -296,6 +296,7 @@ struct xen_ondemand { > uint32_t up_threshold; > }; > > +#define XEN_HWP_DRIVER "hwp" I think this wants some addition to the identifier which makes it expected that the expansion is a string literal. Perhaps XEN_HWP_DRIVER_NAME? > /* Nit: There also wants to be a blank line between #define and comment. Jan From xen-devel-bounces@lists.xenproject.org Mon Jun 19 11:44:08 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 19 Jun 2023 11:44:08 +0000 Received: from list by lists.xenproject.org with outflank-mailman.551033.860320 (Exim 4.92) (envelope-from ) id 1qBDId-00026V-Kn; Mon, 19 Jun 2023 11:43:59 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 551033.860320; Mon, 19 Jun 2023 11:43:59 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBDId-00026O-Hc; Mon, 19 Jun 2023 11:43:59 +0000 Received: by outflank-mailman (input) for mailman id 551033; Mon, 19 Jun 2023 11:43:57 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBDIb-00026I-EA for xen-devel@lists.xenproject.org; Mon, 19 Jun 2023 11:43:57 +0000 Received: from EUR01-HE1-obe.outbound.protection.outlook.com (mail-he1eur01on2087.outbound.protection.outlook.com [40.107.13.87]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 91f38e45-0e96-11ee-8611-37d641c3527e; Mon, 19 Jun 2023 13:43:55 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by AS1PR04MB9360.eurprd04.prod.outlook.com (2603:10a6:20b:4da::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.35; Mon, 19 Jun 2023 11:43:24 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6500.031; Mon, 19 Jun 2023 11:43:24 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 91f38e45-0e96-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=WRrPYqvRuKNneBtcfmQMmlLnrznhv9dqfuJraOBiA+jmqRZP3FX8/67b0tIvu1GD2Ce9BUYTp7RVsJtxVAuF35tYeInH4k+vFVFTC9TetVCigFGEIZcT1gM42dz/I1kYPzUDwYrKGi/dyu3x/4z7NqU5Jj50bgBF70w66gCuJuvmtojhlMUnZqeRYc5rIVjJWeAfKWNd98mH87XlU/72uaPSh0FgCwyGHjJNGyef0dPQqY8ad0fGjS9bCcgRRa6U0c4fUqrpkJJYryIqCFRkUH/o8io28CMrr7fTzBLhj2I5YHkk3pP4aWjdy8Uy5tNVZz1GQ+t0aMA7kDZ/VIvW5w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=RLg8KbR3kowrxvsOGbOqXn/Dc6gQZtQTySoi1YJNEWQ=; b=b71S8/UTDlQePcDUtJ8hc2fh+jiRne4Y/WYEhbcbh/Ha6BYdkFrWWiqgi3n9w1QcnoCQhLSFkNoT4jiKdLDOWVkLQvho3PdMRvUU+CPWhqtqIyW3xi2GaVikoBU0qQ6Q7IxFafiQFdubw8oOB0MclV5TePUypsCoPv0IgRgQ5utGufSDIJ+WN2myQH24BfTl4mGjPBJGFS5lBqCMrcmxDxCcG4jcbBWQyIomC86dbDzDhRlfOOspJIlG8lFYwR3DVWdwnIT0tiFB/6gL+P5DSSwYqALYPvwStc6yNf+7sQnZ6wS3IUeC9NBycgffKwNqxNjGX6Mr7ekKVk2Vy9uSsA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=RLg8KbR3kowrxvsOGbOqXn/Dc6gQZtQTySoi1YJNEWQ=; b=z4vIzCeHwN4YfpeRJayS8o15EmId33c12B+WaReP8op3YDHH9r8MeWyFDX7lCUeEmRw+6+emU20dnu2zX1bWVh6pPOuEKFyko5MUcIqq5ZQ4gHkfF799+zF6jGvV8VQnbLTBulzTwO6tRj5BIhDwxc5VTsVYTqS/1CjmUqIZVGtFhJX+kckVZBYOP/WeTP47hBoqZCIBh5GeYbkDob0FpwoVhQEqaO9PRErJKbk5hzsGlJQvhWH3fQEPUl0zjMPyCky/w6f2Q7iGM1K6YqxMD15Wq7D1rBCN3HtNqUvpx7pSD+Nm8Xe+G9i/WOCiIaIu2ctt/t4ocavLf0S6irMnxg== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <7a301891-ee61-9874-8236-c52a649f610b@suse.com> Date: Mon, 19 Jun 2023 13:43:26 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH 0.5/2] x86/boot: Clean up early error asm Content-Language: en-US To: Andrew Cooper Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , Alejandro Vallejo , Xen-devel References: <20230615153157.444-1-alejandro.vallejo@cloud.com> <20230616182303.3546262-1-andrew.cooper3@citrix.com> <1ea82266-8b61-f70c-c5e2-a2b4e131d222@suse.com> <569941c3-a909-c4ab-aab2-c256caccdda9@citrix.com> From: Jan Beulich In-Reply-To: <569941c3-a909-c4ab-aab2-c256caccdda9@citrix.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: FR3P281CA0185.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:a4::18) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|AS1PR04MB9360:EE_ X-MS-Office365-Filtering-Correlation-Id: 95eb2545-067c-45c0-708b-08db70ba63f3 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: FQAKIBXcBJ5m2E7yUlXgcUob/M929Y4sZAdG5/RwMAtNuCJ84xh4Neno1HVFlvSca/hnzCqaC9Bhmgcwh9K3ZNvWMVPkr7Zu+sp++4K98m4YCh6ZJeoQlLo+ZQy3lcNtVLMXekT7kJuJ63p+3Xzu4fiAO/GK0KWdloBL+gm01rnYcZMEYEl7Hg4v0l11FElHJh7MV7CdbuWR/jTlwSJ9W2TQ6atED4VzqMQv3DhWhaSvy+fmOC35ZvFCTnkIz0El4Fct09KGLZ05D1iOtSeIx5hh8zlyqwd83ROeNS61aPOtfrIaLNiW6kj33NMYroVt9YF/mV8/GYKNr/ZOy7i2Oyjy4oNSQwMH1FZPDKj0EReq79744NzC28p6C2TtBMLaNUknyz51vWxFrpCiASZCUVtLcp5k4ffaVnZH45px53m/+inEwTl5i6NRpW0FQrcFumZwAny3byUXzCYev/lmwYV0RjfHRJekx4Lp1hOaMGr2lm9wUmEsK/bk2VIDpdh2Vhg+gB5ZajmLHrM+eW6RrV8ot9Xysx/B/61v4LmLKKNNhGpzq+QYwlG/jjnLF51+Y2B51fh9dOg/F1vSnzOir+qlRyEOVyD/2dZSOATup2Z6dyPTCitUa4rRn84+l9flBHX6+Qzqrmf9RUgsMXC0tw== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(346002)(376002)(39860400002)(396003)(136003)(366004)(451199021)(2616005)(86362001)(83380400001)(2906002)(31696002)(31686004)(5660300002)(4326008)(54906003)(66946007)(66556008)(186003)(8676002)(8936002)(66476007)(26005)(478600001)(38100700002)(36756003)(41300700001)(6916009)(6506007)(53546011)(6512007)(6486002)(316002)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?VlJkMVpwTEI4YlJkS3I0R2RNRTFMRmFISVQybDk1dXZVb2N0N0NzUWloNy9J?= =?utf-8?B?SWRtZ1RWM1AzM05PZEhZaWlJbjJGdThYM3NXd3pIbGlIbXZCNHBiemJlellX?= =?utf-8?B?dmJObEM3K3hKNThMZFdZeTVEck53V0IrSWRmRmZsaVVLRTM4eVhVVXh4Mi9r?= =?utf-8?B?Y0h1QitDRWpzaEpibVovQXJkM0VWZ1pDbjBaRjFDLzc3TDZ3NlBta2JrbUlS?= =?utf-8?B?cXYxWmtzN1dLWVkxNjVNd1NFd0I5LzNhWHRGSGozakgvRm5aZ3hDQSs0eWlI?= =?utf-8?B?RXVWam95bXErY3JodEVSMks4WWJLdjRtY3NhREwvS3RVTk1lUkluSSs3L0FX?= =?utf-8?B?cnRxREFwZFhqOEdleGU1L0RycU9LWGRQbU9Ha0lwalFqQnFwY3ZlUThUZ0Qv?= =?utf-8?B?L1l6R2VCS2JJZlZBWDU0eGgvK1BRZmhHQjhEdEg4eVRHK1lqdUhjYlplaHZN?= =?utf-8?B?Tk9tZm00Q0lFOGlLd1NKQzJrbWE1dGlEaFVWRDc3YmdzNEdDUWM4MVBSVjdI?= =?utf-8?B?Z0Z0QnBXdEJsZkJ6cjgxZVVxencwY09hclE1ZG5SVGJ0Mmg5RXhrUE1SOVk4?= =?utf-8?B?Qm93V2lzUEdUZlBxMEoyUERKMG41SGNmN1F2WlMxU0IxMlRJTEZpOE5mQUdC?= =?utf-8?B?NXNESEx4d1lteGc2Qm95RGVPeWZVK202MDBTSURSZTNXbVQ2U0N4UFhOVFVD?= =?utf-8?B?eWRQZzc2NW4xSFVFMHVVZXFHeE9tcWVqWVlDOHRlWVBTYm9WeityRmFQZkRU?= =?utf-8?B?dTMvLzBuTVFzNStiRFE0elVucEtTSzVMS241SEl5Q0NOQ3JqZ0ZqRndyc0hY?= =?utf-8?B?Y3BpZG5lY2RFc1I2R0NlU1JEWjJWT1lBK3JNK0h5TmJiTDhydmRxK1BmRUkr?= =?utf-8?B?VWxpR2ZiYUwvUXNvd3YxSUdraXNrZ1I3d3ZuSVhMR21EVDBLdUtRVVU5US9Y?= =?utf-8?B?UFpCNUFyQU5sRkdMS0JTeHNxQlQyRGFwUVNkY1oyUTcwWDJQM1JrRkdXT2Jo?= =?utf-8?B?citIL3dIQW1xN1lCUGNiZFg0TzBMRWo1dzZUbjVTSTU4WTFmdjJJMEZaVno1?= =?utf-8?B?Z2hJdnpQQTZTZm5oeHJnTkp1amQwY3VqMFF5MGhiR2dzOTBEdDBzWVkxTGU3?= =?utf-8?B?U3pvVHYwalJjKzhiYTJmYUp4RjJIZU9jWmFZc0JsaVd1bmZXUk5yTm11K2ZN?= =?utf-8?B?ZjR0YXZVN1F5MFo1UnI4ME5aenVOYWRqOE9MVXdXQW9RYWhYNkZBWFJabGJW?= =?utf-8?B?OHZqOWVCVnpjWVNkR0g5ZDlSbnE5akMzK0NOd0NBVHlUN2o2QnZpajJSeStT?= =?utf-8?B?ZndpZlhPQnZJdmREYXhVNTkrTkg5LzVVZFBFS3haRHNHSmdoR0FiN2h3dnJM?= =?utf-8?B?UEJjWnZ6aFB1dXdVTEZhazZSbWVxNHpSRWxtdkxyTDk5dG5BQ2VpZmZwK2Jz?= =?utf-8?B?V1ZSWjVzQUdLTHllNWhPam9LbWdsU3hqeVkrc3NoVTMvQVJaMVJ6V0xVZ2pi?= =?utf-8?B?MjdOWnFkUnovZkNUc1UzYUROSkE2Qzh5aUwzNmpwSUVxRzl4ME5URGc1Mndi?= =?utf-8?B?eitrOHhwdnF3UHJTUGh0WFc1d2Z1TnBTV2RCQVR6eVROTXdSajlObGpJbEFu?= =?utf-8?B?ejh0azZ2QTRNZC9pb0pjTjJLMFlUZlBRb0JzSGp3azNBSG1vT09BWjNiVml2?= =?utf-8?B?a1lZQldzT3NhQkszUDRGT2Irakp1RXBKNjZKYjBnVHU0d29FblliUTdzVGNW?= =?utf-8?B?SjRMblBEbUtlNU51ZmlHcTNabi9NbElXTXQ0b1JLNU92dC85WW1sZ2UrKzBW?= =?utf-8?B?cGtRM3Q2VGFoSC8rbXBITEV0b2o5dmdJbW9zaXIvMk9wazdSUTV2MzM5UDFP?= =?utf-8?B?cDNXSUY3ckhXQVNoYytqbmFEUjhxWmdVelFHMzJPL1lUREY0eFVoWXRRNlNy?= =?utf-8?B?Qmtxa3B1cTJpakN0MUNWYzdCMWJEV0Zsek05dWtkcVA1aWdGZGg3dG50V3o2?= =?utf-8?B?aElocTRiWU1HcTE5UTFRSnFHT2RoNDB2U0ZJRit1YVBaQWR5WHRUM3k0TkNz?= =?utf-8?B?bm5BT3hUQ0NRd2xTVmNJbENLeEtWVGM4Tjlvbml4YTgyc0l2NTJUYmxyV2d4?= =?utf-8?Q?kUk23V4L0F0slrPd4u+Y+W7gD?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 95eb2545-067c-45c0-708b-08db70ba63f3 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Jun 2023 11:43:24.8302 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: xrJdBYyGvfQ68vRMKfAdD/SZ+iNQSQCL6j0+Qn+8tW4pRJlJFcCAPtKK+69o7iYAvHTIML5H8NyJwcUyd6jOAw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS1PR04MB9360 On 19.06.2023 13:20, Andrew Cooper wrote: > On 19/06/2023 9:10 am, Jan Beulich wrote: >> On 16.06.2023 20:23, Andrew Cooper wrote: >>> The asm forming early error handling is a mix of local and non-local symbols, >>> and has some pointless comments. Drop the "# Error message" comments, >>> tweaking the style on modified lines, and make the symbols local. >>> >>> However, leave behind one real symbol so this logic disassembles nicely >>> without merging in to acpi_boot_init(), which is the thing that happens to be >>> immediately prior in my build. >>> >>> No functional change. >>> >>> Signed-off-by: Andrew Cooper >> Reviewed-by: Jan Beulich > > Thanks. > >> with one request: >> >>> --- a/xen/arch/x86/boot/head.S >>> +++ b/xen/arch/x86/boot/head.S >>> @@ -142,25 +142,27 @@ efi_platform: >>> >>> .section .init.text, "ax", @progbits >>> >>> -bad_cpu: >>> - add $sym_offs(.Lbad_cpu_msg),%esi # Error message >>> +early_error: >> This symbol, which isn't really used except by .size/.type below, >> could do with a comment saying that it's intentionally here despite >> having no real reference. > > Ok.  /* Here to make the disassembly better. */ ? Yes please. Jan From xen-devel-bounces@lists.xenproject.org Mon Jun 19 11:47:28 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 19 Jun 2023 11:47:28 +0000 Received: from list by lists.xenproject.org with outflank-mailman.551040.860329 (Exim 4.92) (envelope-from ) id 1qBDLt-0002m2-7N; Mon, 19 Jun 2023 11:47:21 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 551040.860329; Mon, 19 Jun 2023 11:47:21 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBDLt-0002lv-4J; Mon, 19 Jun 2023 11:47:21 +0000 Received: by outflank-mailman (input) for mailman id 551040; Mon, 19 Jun 2023 11:47:19 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBDLr-0002lp-R4 for xen-devel@lists.xenproject.org; Mon, 19 Jun 2023 11:47:19 +0000 Received: from EUR01-DB5-obe.outbound.protection.outlook.com (mail-db5eur01on062c.outbound.protection.outlook.com [2a01:111:f400:fe02::62c]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 0a6fcf5b-0e97-11ee-8611-37d641c3527e; Mon, 19 Jun 2023 13:47:17 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by AS1PR04MB9360.eurprd04.prod.outlook.com (2603:10a6:20b:4da::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.35; Mon, 19 Jun 2023 11:47:15 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6500.031; Mon, 19 Jun 2023 11:47:15 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 0a6fcf5b-0e97-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=i8tonfcrtq/u1VKd28I/9LExJsvqWmnB7phIKSWGKP/s3olnwIUnrACprpqopx60mMCR7tO7zq40m0mnutD4p9cSJ15iBQc8E+hmDwXxyf8IXFhtq+FziF1tJrJtQA8IuuB8rPogTvJ0UejDEeCBNGBJKwrFu3kR3jKQcYC6tMLDqtiLDfP2T1/fsfkqhuIyvu6GDlK4MnULZ+oPtlyHBio6fGUCG0/nrCHNMrdeCd682YhMvghO+Tlxey4aJVrXzxm/nVPisKK075mWw47y/GGlJnS5XED4qU9Vj9r0iOuo5GKyQJS2l+1A4cd7y3dVZMFgdV9jewbzTFKYM3jqAQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=o2fofnB+rICKpanQR6oRLBZEmRSm48bomD9i5pl6gEs=; b=K1II05NmtFyLyNi8hXQd2Sb7Ap3kBUdQ0lQ3796IfH0QFe0U1GDJg50ntJEFDpNdWzmbhrnZKicdekMGdNa0N9WCNjo0i67Y/VerMKADHL5F8KF1nG2KnXP/DL3/mlescW4dI+WtVEJHL4LoC/MONUsWIIgRpfr+90CeqqN9Qpk8wCoURCKSqYMfkRY2rUmdfngc7tFERVwOF2kmqP0q1IGHcYfNQXZNlizJtlbdd0EGpFjUrY9r9J0ilqWf1qobmE2ItvtQpycVUtwcFL1bsD8nPrBydIrruYoZg2jAeujojrRGAJFjiSNfL7caTp4eer4vA9E3sYs/0rr2UGVSnQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=o2fofnB+rICKpanQR6oRLBZEmRSm48bomD9i5pl6gEs=; b=ix5Clg3esEcoxlefRx6ViYFDNYygr6rwayxac139Vo7kHUNCJitnPkdCqNvsNdtd8rBchKhTU0kAbWaIXsR2dxPCnRv3EMb3jWmdAbBm0zOP5agMTRQmQF3Q6WyomPN9EFWUCnh89Gmky19AUxkeln3+k6pe1AL6w8sPSAUgkUzqJ5q+GYx/0fOgVt8Fr44fulWePmUckH2PQLcp09mjqniPm9njH67nhnPv7AVCI6cpSuDPfC0n/P89TQQyaGzJX6rIha2551AuPOasMa7AlIRP1ZTAgXu8+04GBQQw+JNhvn+5LwqyyVlN1SYlYYmjjNclyIKcZauLixg/I+MQXQ== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <978fc5da-bad3-c028-d95c-652ed1bcb3f4@suse.com> Date: Mon, 19 Jun 2023 13:47:16 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [XEN PATCH] docs/misra: document the C dialect and translation toolchain assumptions. Content-Language: en-US To: Roberto Bagnara Cc: xen-devel@lists.xenproject.org, consulting@bugseng.com, Andrew Cooper , George Dunlap , Julien Grall , Wei Liu , Stefano Stabellini References: <3499c107-ea0d-3a74-4278-86879a9d80e7@bugseng.com> <90eec636-7ae5-8e1b-1561-0de62e0bc799@suse.com> <5b166e61-1f28-ecb2-7b14-9972cf12aac7@bugseng.com> From: Jan Beulich In-Reply-To: <5b166e61-1f28-ecb2-7b14-9972cf12aac7@bugseng.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR0P281CA0180.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:b4::10) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|AS1PR04MB9360:EE_ X-MS-Office365-Filtering-Correlation-Id: 2ee0cb57-652a-4093-a218-08db70baed29 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: Q50BYueFJxlSGEKrZwmeor8iD5B9XxRdt6QyoC+J2DHTkxbm+YGrY93TZ98pNr2KPLWmCDAn7/EG8rwa1XLNLsinwd83UylOA9jVuEKi1AVl/Ym5xjW2d2Gw8jw9RW0R4gRcNZds4eE46cNpPz6dLRRJhcQqAflbv/JqETDjIDR9zH1xZWr+3Pm5pPQRocg2j41EoC7wqR8fqkgtgXG+sYJUyGRkZFyt56U0uwxVboZIDr+3a7ra2AwVmBp5MIIJO8erQJ/rt6abmox/f8gRvkxZnI7SC+NJHvlvZv/Gm32f1OUuFmtlWFxjs3lv+XZUa17btHKMA0bxOPc0R70qKp71qmhond9tx75LKHJXefgU9OXuwcDWzNw2VKMOUMoVGjAxXUmL+Fr3OENbA3vaod//A58EUo9tZ1cjYn6JrrYPT+H3EVdEZxlEdGbrDGvzWKpbygNTE5IzeKONp0jK4OgPm1xeo5x2IdUb96eKffKxXSM0fqu8I/1g3XGj7pXmznUT4fNsIywAB/plHx30Ak9GeecL0l7aor2u1iOQ9R4JQAcur8TReMU8etZ7vX4BpA8ujorG/1S3oyXgREpPfd/BnajpvgIZYWqlnpca8TT7xlfW136IikVuh9ULmLnZQREHM5UE4DZguO3R7JmKIA== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(346002)(376002)(39860400002)(396003)(136003)(366004)(451199021)(2616005)(86362001)(83380400001)(2906002)(31696002)(31686004)(5660300002)(4326008)(54906003)(66946007)(66556008)(186003)(8676002)(8936002)(66476007)(26005)(478600001)(38100700002)(36756003)(41300700001)(6916009)(6506007)(53546011)(6512007)(6486002)(316002)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?MHZyYlVoVEkzQlQ4WllyNEJoVnVRM1lZdC9JSVQ5cTEzRTU2RkdNRmVCK3NK?= =?utf-8?B?MWplUm8rd2JuOWJjYmUwZjBtTWkrSUZUY2JadjZBak1MaVFucWRTRGhlT1ZG?= =?utf-8?B?N1B2NWV5RXQ5K2RZMTF1VU5hSUR3WU1uTVNSRmhHSmhGakJncU04QlZkTmZw?= =?utf-8?B?TEM0a2hoZXhEaGJzd0p0RmtkVmNSM1d4dXhvNlBxVnd5dGozWEZQN0plclJO?= =?utf-8?B?eEtWTDBFQStURUJvYVh4bEZpalpwRkl3N2RPc0RJbnJLUGVBVllGOVVSQmN6?= =?utf-8?B?cG00Z0hJcER0d3hQSDVmUk5ycWFrWkRiaXhnM1g2c1FwTWxUaFA3eTdJQTFq?= =?utf-8?B?eC9ncXdFWi9CZGdPZFRFRXhEaWcyeHpRS3pscnQrTlNBNlRYNFFLS1dZRUg2?= =?utf-8?B?TTFxMTB6cjRLS2U1R1ZXZ3F1bnREdHYrNUxoNjJBRVJVNDE4U3l3em5RQmNm?= =?utf-8?B?VzdLOUhiNTRjeWlxQlRrandjS1MzbnNJWkVPUmxGMmZreGc4bXZSZHlNU2p4?= =?utf-8?B?eDQwZ25XVm9jZk1TYWN2Wmc5QkR4aDJZWHhZWmt2VXJmNEJkcXhHeHpnUEF2?= =?utf-8?B?cEZCd0R0NndJbTlSRy9Ub0tJZ0RpSGtCeU5sN1Z6OUFadUUreHpNUitPVlcx?= =?utf-8?B?NXdXZ1BEOUoveXg2cFU2Y3h5YzRRN1JZdHd2dWJYc2gyVHI3NVB1NUtRS1gw?= =?utf-8?B?U1dSYkN3UHdhTXh5OTNDcVQyZ3c1VDdHSkF0Mlk4Y21VeXQvbzZheWVXdkxE?= =?utf-8?B?VGYyTHh1aXR3am1hcWhSWUhrNGthQ1hTZGxwYll0cTFvVW1oVW1xd0NsbkJr?= =?utf-8?B?S1RGL1kxQ1hpT2VOMG9ybDdWMDNlWGNETXM5emJpZGdibWp2elIxUkFuWjZB?= =?utf-8?B?VEdpQU81b1ZmdWtMZGJCMmV4emN1aVkxbm84RVZZenBDM2lOd0VScCt4RmpG?= =?utf-8?B?OW8zLysrZjVIK004WUxwYng0c2w1RUp5c3BWTGxtcnBiZDJ2R05SOU5nL0lY?= =?utf-8?B?NDRkWVk3STZIVzF5cXZpUndRMWdhRjBjckI1S3I3Y1lTVzRCTTZ2ZnRGK1o3?= =?utf-8?B?Qnd6Z2dyNGtTakQxalZENEgvOWtRRFFrVVhqRmhjMlU0VW5aR1lpSXVKSWRZ?= =?utf-8?B?ZnZIemp5RVIwZTNOZjI1VzNJalBnRWRTcWFTUDJXQzRmQ2R5RmdDOFVpdnVG?= =?utf-8?B?ZDFBMDZoVWZHUUk1VGcrVnNkS3AwMXEvclltWWNyM3hyM2hSMHB2cWdIc1M5?= =?utf-8?B?R25wYXVsM3drNjdwY2drbVNvSjgyeVZUVVF6RVBXbmd0OVpMS1Qxcldwd1Jx?= =?utf-8?B?dDY4QUNNOXRMVjhJUURHSEV5QkE5L0Q1UG4zSmVHNHFuMU44ZVAzWkRMWGFq?= =?utf-8?B?U2ZXNWZMNXp2b0x2L3Qyb3UzUzNIVE5MS01yUkdWZHBQTUJGY24zTmp6Vmpp?= =?utf-8?B?Q2V0cFk0QnFtYkZFUnNMZmJwVVU1ZHZGTTN6Wm1QaVFvQlJkUzlHZW5EdTlT?= =?utf-8?B?d3hxUW5IQ3Radnc4bUVDRFI4TkErcWZQODUwMFpSSDRLOXU2WHJBcVFtV2Vu?= =?utf-8?B?L05obHZWRlRvc0taVGI5MzBkQURlVnkwcEI3S3gxQWFpbXA2eFhNcTJkM2Qz?= =?utf-8?B?L0wwaUV6Nmh2dEx0NFErTjd2VjJmRUJZYXA0R0djVW1XUmZndG1uNVhhTHVJ?= =?utf-8?B?MVlTZHNsdzNVSGdhUXN4WE5NZ2cwd1hxSXZLbmlHcG9XK0szZFhMRFY0R2tX?= =?utf-8?B?aGpBaVkranF3dmltb0ZoZy9UL2kxOTlDT0tRcmtIWVZBZWJ1WTNQbDB4b09w?= =?utf-8?B?OUJLcGpvUU9UT0c5YTZJUHJGS2RSZGJWWHF5NVR0K1REUjdrNkFXd3pxNys1?= =?utf-8?B?ZjJJWk0yajZBRUgxK3BPWU54QlR2bHdWSENhTnFGKzBobUlnL290aDhHMW54?= =?utf-8?B?Y2hGWlovZW5aRjV4U2MwbzlDRE5oTGx3b0J1emxZU0ZxYk01VXhVQmEvVkFi?= =?utf-8?B?WGVuSkh1S2tpWmlGT3JUMEtGWVNxaGZyY1Q5eXh3WHdpWCtmcEhPczZ5ck4y?= =?utf-8?B?M284Q2hkNS9tYkhRQzRJN1FrRHZiV2ZDdVY3M1ErY0hMcktLQXExR1RDVkp4?= =?utf-8?Q?M+dxtUpPAtnWlNky7Oo/awmro?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 2ee0cb57-652a-4093-a218-08db70baed29 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Jun 2023 11:47:14.9983 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: YuADzXUVW2f87RmVWpd/whqw52cpkrT3yonRmikSTTdAgSdAnatdSvAjzsxRQRiQvNEw1+c1AABY1GekBnOp5g== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS1PR04MB9360 On 19.06.2023 12:53, Roberto Bagnara wrote: > On 19/06/23 09:54, Jan Beulich wrote: >> On 16.06.2023 17:54, Roberto Bagnara wrote: >>> On 16/06/23 01:26, Stefano Stabellini wrote: >>>> On Thu, 15 Jun 2023, Roberto Bagnara wrote: >>>>> + static function is used in an inline function with external linkage: >>>>> + non-documented GCC extension. >>>> >>>> I am not sure if I follow about this one. Did you mean "static is used >>>> in an inline function with external linkage" ? >>> >>> An inline function with external linkage can be inlined everywhere. >>> If that calls a static functions, which is not available everywhere, >>> the behavior is not defined. >> >> I guess I could do with an example where this leads to UB. What I'd expect >> is that it leads to a compilation error. > > Here are the two occurrences we have in ARM64 code: > > violation for rule MC3R1.R1.1: (required) The program shall contain no violations of the standard C syntax and constraints, and shall not exceed the implementation's translation limits. > xen/common/spinlock.c:316.29-316.40: Loc #1 [culprit: static function `observe_head(spinlock_tickets_t*)' is used in an inline function with external linkage (ill-formed for the C99 standard, ISO/IEC 9899:1999: "An ill-formed source detected by the parser." > xen/common/spinlock.c:301.26-301.37: Loc #2 [evidence: `observe_head(spinlock_tickets_t*)' declared here] > xen/include/xen/spinlock.h:180.1-180.4: Loc #3 [evidence: use 'static' to give inline function `_spin_lock_cb(spinlock_t*, void(*)(void*), void*)' internal linkage] > > violation for rule MC3R1.R1.1: (required) The program shall contain no violations of the standard C syntax and constraints, and shall not exceed the implementation's translation limits. > xen/common/spinlock.c:324.5-324.12: Loc #1 [culprit: static function `got_lock(union lock_debug*)' is used in an inline function with external linkage (ill-formed for the C99 standard, ISO/IEC 9899:1999: "An ill-formed source detected by the parser." > xen/common/spinlock.c:227.13-227.20: Loc #2 [evidence: `got_lock(union lock_debug*)' declared here] > xen/include/xen/spinlock.h:180.1-180.4: Loc #3 [evidence: use 'static' to give inline function `_spin_lock_cb(spinlock_t*, void(*)(void*), void*)' internal linkage] I know _spin_lock_cb() was an example of a violation (it isn't anymore), but this does not serve as an example for the UB you claim may occur. The "inline" there was in a .c file, and hence the function could only be inlined with its (static) helper also in scope. Jan From xen-devel-bounces@lists.xenproject.org Mon Jun 19 11:50:50 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 19 Jun 2023 11:50:50 +0000 Received: from list by lists.xenproject.org with outflank-mailman.551045.860339 (Exim 4.92) (envelope-from ) id 1qBDP6-0004D9-KN; Mon, 19 Jun 2023 11:50:40 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 551045.860339; Mon, 19 Jun 2023 11:50:40 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBDP6-0004D2-H2; Mon, 19 Jun 2023 11:50:40 +0000 Received: by outflank-mailman (input) for mailman id 551045; Mon, 19 Jun 2023 11:50:39 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBDP5-0004Cv-9w for xen-devel@lists.xenproject.org; Mon, 19 Jun 2023 11:50:39 +0000 Received: from EUR02-DB5-obe.outbound.protection.outlook.com (mail-db5eur02on20631.outbound.protection.outlook.com [2a01:111:f400:fe12::631]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 81ed86a7-0e97-11ee-b234-6b7b168915f2; Mon, 19 Jun 2023 13:50:38 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by AM8PR04MB7410.eurprd04.prod.outlook.com (2603:10a6:20b:1d5::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.36; Mon, 19 Jun 2023 11:50:35 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6500.031; Mon, 19 Jun 2023 11:50:35 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 81ed86a7-0e97-11ee-b234-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Jwb5D3OWSFSLnryyZF/hQzVMl8H/kN7VVzNUiSvJOOKz9xxYlcXsFWHoQA7zIJzVwK3tCs13LtCeyx/NSPWlCFQsTqaE8zBbw9RaLTKEWZyHKnIHG6tnlM+JlVJ8zUDEdU+sRxcuYjacIUgBCC2Pq/AWODPmssxsm+toAvOk3+cuNC3PGkgOno7plBAHnPC+jhClZCooGIe2A1RUU97BuyvyUimfjDsI3yq+Tm7ased1m/64/iDghJkdw27fpYw1wYqo3SFXNmfYNxFkhoQEvDPwUi4Th8to6K1hCuHXMv1Jhl+9J18nJPKHFTCgpRYv4WROfDIrtH03TlgtflwqXw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=cZEz6gcVfK2oD2tJiSnN8RjtGRQIENSV259Ixze9tOI=; b=aS2LmDSZ7h8BhFLiOoKzJ9POnMC6T3IVFuEO7k5SX6G8feGFi64mdEHV4sJWxrxhI/bZN6Tyi4uYPZdQyC6YShjggSmGLermxRaiykeONu734WoBuHjFLGjtBrLpZEQMSGlolDdPUNYXPr/Ng0okj6oYzL+wFqGsMfHcfBU6WktBOj18K56700zxspoEq82qoyB6JobgbiV77qZpbjBZEhw1RPMt2U+bznbs1c3XynFU6hmIZmTMr+6fZ2KqY1UUCbndft4Pcqf3ZpcAaAN68mwmPu8FfmSAXAoQTY44i6i4YJcyRyPEdGqU2rWsHUYO3BRWPl8KZvvubgB1l9kXBg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=cZEz6gcVfK2oD2tJiSnN8RjtGRQIENSV259Ixze9tOI=; b=p76PkXppWZU42E10FuIRwE8UiJK2Ynk/gkIs1kEbsDb2yodRleRh5+DjVVivMPqvuuaj/sX77a0bxghjSy32jZcgkKfqTq8vUybQ1n+1MJ2RRORmvb4UYhTt6gHZ0jLdORmlX0UJ9S2/okctL7QSX6Z/mfeR8paCSijfVM2yJSu8iLcIBJsrwExYIbHODBNBEtgdeY/FEA1cNMbvgZRg5XOd+Yn++ZqMlgkG2o/5YYZ8xf3ST/4ljz0qrpoKzbdLV/3sOdBtVHxLFJbTJU3ZMnuTR+/jFqGwVvhnKD9zvGrDf9176K3oGGH/N8CBBG6KPikSczwTX27Hg8tycCrrCQ== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <44399046-c9b7-2020-a896-b01efbf42c28@suse.com> Date: Mon, 19 Jun 2023 13:50:36 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v4 08/15] xenpm: Change get-cpufreq-para output for hwp Content-Language: en-US To: Jason Andryuk Cc: Wei Liu , Anthony PERARD , xen-devel@lists.xenproject.org References: <20230614180253.89958-1-jandryuk@gmail.com> <20230614180253.89958-9-jandryuk@gmail.com> From: Jan Beulich In-Reply-To: <20230614180253.89958-9-jandryuk@gmail.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR0P281CA0252.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:af::14) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|AM8PR04MB7410:EE_ X-MS-Office365-Filtering-Correlation-Id: 31024157-5611-4190-9991-08db70bb649d X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 4Kwpg3e3VViMrHHjupQ293CEZC4rTPltaaoN/dW+J/nt1VL9yIAviChoYFGrCv5gT9YlSh/xxPRqLcBTjLhhiOJZqElaX4yCKzI+2y/XBw3dx0PgOzbx+TUDtJHDUmGT0Wi3sy3/ukIjwMRkh4rJPuD1rIh99OMUkRF1xB5WOqHEsziiaiBmhjpGeZow/UufruqgWf8OVmI+5IUHWU6RJlUNI1wXoXG6vCdFZBRQwLS+UUL7jZrlfAy9v0O8LG2m8lbIFIbBEl9P36vsA53TIktPn+M7uaN4t5jU9uiNgl4puOyYn9M76QSVCM8uu1BHu7tN2gFVBQxTZRtZMPXJyFAoI/TS643JTvcoKriFmJfWW+O4aTXfuWicfzzKkKQh8RNVxn97vXGEM67uoabriXpeYUJCRiK/T8GmC+ceGI2TDu7Mq6OV5c90NGi1BICpx8fUiD7akO22DQg8MiWcu+BjegPzwek3zEj1f9bK4zLAGMu0ZaCAZ3nUQw/Nu1+BeRq/vhpyx4bICyPx3IBmhxfK+GhSn6YsinS3aIQG40Fw32etI+uDQ6gcm4uzQsvgQqOZlNzaSQzjq84DPVQwLNsVnawJbvd9lifQ3VMtW2ybqnasjraZe79Tqber91/8clIRo5G9qq0fA3dOkM0lMg== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(136003)(396003)(39860400002)(366004)(346002)(376002)(451199021)(41300700001)(5660300002)(8936002)(8676002)(4744005)(2906002)(36756003)(86362001)(31696002)(26005)(6506007)(6512007)(53546011)(54906003)(186003)(478600001)(6486002)(66946007)(66556008)(6916009)(66476007)(4326008)(38100700002)(316002)(31686004)(2616005)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?QS9EdkNMMVVjQW1DMmpwK0dmREh5djYxVlluZTFOS2lZWkdNdHFWV3lSeTNh?= =?utf-8?B?N1pmejFVWGhNbEJwVjBuNmgvRzEyU2hjc1Z4N0JWdlhNVEVTK0tyY1lsRkR3?= =?utf-8?B?cldkais5OVh4MG5KT3YvU0N0c1RlcjJFeGxValhqdk9ETmlqcnMyTmRwbUxu?= =?utf-8?B?endtYWtlVEZHd2RBcmRXbjY1VkZzWS9LZ1NwRjcwNHA3NzRLZ014ajhpWUha?= =?utf-8?B?MnlBZHJzWjhzVG5BWkRCNnlZU2pYeWpKc1kzc2FtV293eWE4Y3B6STRrc1Vk?= =?utf-8?B?ZzdrODRieXNjc1hjS083QndvQjV4dG9IRUo1WWJJbVM1UkEvTzBqYzFQU1dm?= =?utf-8?B?Z2k1dFRkczZQeXBsc0tQQnl5cStRaHoxbDIzTDNvckRna0grdGRPSU9mVDdv?= =?utf-8?B?eE5hRTh4N3N5ZEtTWHFIb0JWUDhkSy9lL2VwYS9hNEpFT1lReVoxbmtaRFZy?= =?utf-8?B?Zmd1RlAzaFBnQldhT1VYZTB4eU5YTFZJdVZZZ0JPbnBWZzAxV0RaMVpqUUlF?= =?utf-8?B?KzkrdDRmOTFwK2pRZm82SGx3azk2ZnBLMExYNWRKem9lVjdhelRqVlZBNEZE?= =?utf-8?B?K0pnL0s5RzNOb2pKQlNTNnVQZFFtSkx3R3R3bjF1YTN6UWYzaHJqL1oyMEZI?= =?utf-8?B?MnlXOFArQkpobHFCd3pWRktQdDlxMlk2WjRQMFZham5DSG1lcnRSVUE1UG1h?= =?utf-8?B?aGJzbDlMbXE0M042R3JhNFY1ZTZ3QWZyY093NUdHUUt2QjRwTlRXb3JyNk1U?= =?utf-8?B?NzZMNVoxaGV6dUJkbjJTSk5HZ1dCU1dDczIrTkJQdDRlNFZuek5FQkpoSGpQ?= =?utf-8?B?ejB4WkhOb0s0M2VTNWFnOEFmdGFxdEc4cStFOU54Y2p3TkppeUV4RGJpTGJY?= =?utf-8?B?SnZIV2JIa1NPa0xlYjVnYXdISGhWVG9mNTU4V2JHVmtaRTlWZjBzM0NRcGJC?= =?utf-8?B?WTVwaVR3b2E0cVdzQ2U0bFFwWjlDb3B0dnFaSXU4R1JoOWZRdUdvUXFMREdW?= =?utf-8?B?RlVGYWFSM3BBVkZpNU5DMVd1TFZqTHBoY2p6U0VpaDNBYWYwNDdwVFJiMy8y?= =?utf-8?B?cVI1dFBZUHQ0eEJVL0ZFSko4aE5XN21lUlRDVDc0NDFIdGlreC9ubFdtc3lT?= =?utf-8?B?Rk5mZHlic215R1hoL2ZSalFiOUZ4V2pzeEFQcTl2Rm9yQlRuUnFsc3lGUXh4?= =?utf-8?B?U0ErU29raFZYbGQvaTZEVkVlVXVGR1o0eEF0aDlWNEQ3eHdzRytZK0c4K2t5?= =?utf-8?B?ZXVaWXNPbzFSS1BaZVlSZHhXLyt1VTRMdE56MFFYWUdENVV4TkJHT0xpcGpq?= =?utf-8?B?RFRGU0pUN0IySTZ1UW9ac0NtQ004SWcxelpIZ0wzVnkrMW1tNmMyeWpxODlO?= =?utf-8?B?bnFkZk1nQmRCYlhPUXVEQlF4SUtHUlluRVhxQkVacS9MRGpLS1lWdDZMRGRk?= =?utf-8?B?TlRaQ0dWLzNRazZwekVVVjRoTm8rSCtJNVBWdWxLSUFSaFM0eEtSTDE1SXNk?= =?utf-8?B?V0diUXUrVCtkNkpkeVF1K1M0cmxzK1gwMG5qcXZYc2tSOGY4YVFNOWloVXZD?= =?utf-8?B?c3BiZ1FwZkN4TmdEZ2Vjc0hWTzFjaVVRUnhmMmVIS3FXRHBEaWFwNjlTSG51?= =?utf-8?B?aXJSYXdFc0FDdk5LVnZ0NEtQSGtsc1hvWWtibDk0eEQ2Uytvd3ZKV1F3cFJJ?= =?utf-8?B?Yzk2L0c5T1NUa3F2Y2MzRFRLTFNwL1ZiQVkwU3ZjZFFObHRNekVnaXhUc2pH?= =?utf-8?B?TjhQV2w1d0hxOTBIVFE3M0txNzRMaTB0bTN3Z1FrbG0rNG1tSytPNE11ejV3?= =?utf-8?B?M0pOcko2RFN5dlY2bmN6TUp2dnVWQnF2ekNPTjUyVWdOWGdEeHV2aFVsVHNu?= =?utf-8?B?eVJIeTYvYThmNXZTWk9kR2hPN2lNd1VHc1k5MlQxK21lUVB2NWp6ODRYVUx5?= =?utf-8?B?MEV0VERjWkxUNjVMWTRubTkwZG55UzU4cUQxOU96bWoxMXl0K2pONitDMC9E?= =?utf-8?B?WU4yeG4wTEhuVjNKbWVoQUlIcXpyZGJzU1k1djhlenQxK0Z2TXg5Q2VKNG1x?= =?utf-8?B?S3daRlI2N0MzdW9NaVl0YjgyV0U5VEZwZnZGWEFhOFlvaGM1d2phdklWdTVy?= =?utf-8?Q?8ayRpxL8gRoqiJJsXIAbjL2X0?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 31024157-5611-4190-9991-08db70bb649d X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Jun 2023 11:50:35.3937 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 3KqzLIYczlCNeYJ6LcZhapmHsAYt5nPQYVVUq6UsRWghNDzbfx2BDOU9wH2sINdUVoyF0rUTYazdJyFjKKP18Q== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM8PR04MB7410 On 14.06.2023 20:02, Jason Andryuk wrote: > When using HWP, some of the returned data is not applicable. In that > case, we should just omit it to avoid confusing the user. So switch to > printing the base and max frequencies since those are relevant to HWP. > Similarly, stop printing the CPU frequencies since those do not apply. > The scaling fields are also no longer printed. > > Signed-off-by: Jason Andryuk Acked-by: Jan Beulich From xen-devel-bounces@lists.xenproject.org Mon Jun 19 12:19:04 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 19 Jun 2023 12:19:04 +0000 Received: from list by lists.xenproject.org with outflank-mailman.551052.860350 (Exim 4.92) (envelope-from ) id 1qBDqI-0006qP-SY; Mon, 19 Jun 2023 12:18:46 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 551052.860350; Mon, 19 Jun 2023 12:18:46 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBDqI-0006qI-Pc; Mon, 19 Jun 2023 12:18:46 +0000 Received: by outflank-mailman (input) for mailman id 551052; Mon, 19 Jun 2023 12:18:45 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBDqH-0006qC-0D for xen-devel@lists.xenproject.org; Mon, 19 Jun 2023 12:18:45 +0000 Received: from mo4-p01-ob.smtp.rzone.de (mo4-p01-ob.smtp.rzone.de [85.215.255.51]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 6e096612-0e9b-11ee-8611-37d641c3527e; Mon, 19 Jun 2023 14:18:42 +0200 (CEST) Received: from sender by smtp.strato.de (RZmta 49.6.0 AUTH) with ESMTPSA id y5401az5JCIMGp6 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256 bits)) (Client did not present a certificate); Mon, 19 Jun 2023 14:18:22 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 6e096612-0e9b-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; t=1687177102; cv=none; d=strato.com; s=strato-dkim-0002; b=GEvz2mpLLnHR6omjJAtqvkteo3y2s2MoAxDETwoBDzZXuNyW3+R+YYw0s/hcLOF5Lh kqUatZA+7NcRwWvZk5+0xFHH6KgQhNP6F0VTBLkA0NW2bWRxAvdkxqaAlPVUu+CA/QRL L6CtCuVyVw6JWbtOXvdFWZWDw/RuKHWE4DEHiIjsi93jrKI5jL16MycZcewIuzvRaZWG 3izzaPBnuyjRncJKrLDGA6R8RUVD3xweH4c3gZq7uP1Xh5ANR85O3MRuNi0zIQtH1gnj ALAavAbpBwJ7hVh33ehBHY7nL7CHWODcLRLZOXrwKo68MwuQtLEAhswbPSLvtommHr/i ktKw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; t=1687177102; s=strato-dkim-0002; d=strato.com; h=Message-Id:Date:Subject:Cc:To:From:Cc:Date:From:Subject:Sender; bh=x9mJuvJNsXsFr6EcOYezPM8ioU1HxGzJYO7MRAPHFMY=; b=qyKFZZZD7x84hNj4IFMrmZcfw+gP8IqmcDa3XSQJ+xFIEAY/uLxsAWED8ZM4Bs+WF+ qjoLPyj6xBDl6tsGbzkTGBxOW8wREau/1+c+T8B7SGvU4rkCrUYpNBksdvbAj//zopIV +zfQYBsvOIj2oqVuRnI1Ivu5UqIzQ21CtdmNix660HOLtpiiJ3Qn7dxD/TkoBiXGLKMd bF99bDDOwLhlIC2RZ6v3wxwUTv8N7u5GVIgChZKCBInoQrCXNlw0aGXhDSoPGs3KEVl7 btpGxqLdca/0ERD7FEAVC5VB8yMBHea+gVyZwCmMl/amOmJ72rwgq/RAs7B7dANbgJ/r 26pQ== ARC-Authentication-Results: i=1; strato.com; arc=none; dkim=none X-RZG-CLASS-ID: mo01 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; t=1687177102; s=strato-dkim-0002; d=aepfle.de; h=Message-Id:Date:Subject:Cc:To:From:Cc:Date:From:Subject:Sender; bh=x9mJuvJNsXsFr6EcOYezPM8ioU1HxGzJYO7MRAPHFMY=; b=WmHMOQZq4uNy+I6Q6V1Aw8fQOfGWn9IY6T69Km/FLH+C3gkOnQd7CIH3FQWq/EBzJY DzdrIhdXbTI2fHMcXOJGKX1MpyYjWRAElJDHP6EScvZPQ7xn8NJC9Sh+7Gyeh4ZmYoWo in0RHgcFC9UhJvWcQ9EDP7sdkybJyBOGxxWDKgFq/DN2ScVZN43tMIpg5BI6xNxr2Sqb p8dNgoeVNNpkVWuQjwJ2OeH3Uw2Jw/EuvEtvcGsY+FsiM8dcWcTFwmk4iuSubp9FrHbV uvPbsw/cJ3rgtsUCuUMNBVWlHdmi2Id8UIl3gPazVkaqSv7KDbT10pu2QdnUZAbMPPbo pLEg== DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; t=1687177102; s=strato-dkim-0003; d=aepfle.de; h=Message-Id:Date:Subject:Cc:To:From:Cc:Date:From:Subject:Sender; bh=x9mJuvJNsXsFr6EcOYezPM8ioU1HxGzJYO7MRAPHFMY=; b=7dwYzmguRWrlsxn4r7lMuavAAyX86eVLjl5C0l5iL6mEH9JDnWZOlcHKaOF+X/2nNl KYDMn2VGPoQFdhBlL3Aw== X-RZG-AUTH: ":P2EQZWCpfu+qG7CngxMFH1J+3q8wa/QXkBR9MXjAuzpIG0mv9coXAg4wrlX7F5stp0W7RR6sn4IXX0XAi33PEsP+tJs+yA==" From: Olaf Hering To: xen-devel@lists.xenproject.org Cc: Jan Beulich , Andrew Cooper , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Wei Liu , Jun Nakajima , Kevin Tian , George Dunlap Subject: [PATCH v1] xen/trace: remove trace_will_trace_event Date: Mon, 19 Jun 2023 14:18:17 +0200 Message-Id: <20230619121817.21969-1-olaf@aepfle.de> X-Mailer: git-send-email 2.35.3 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain; charset="us-ascii" There are just two callers of this function. It is identical to the checks done in __trace_var. The commit message of 9a86ac1aa3d2ebe1be05dc7fe78dd6759aa3241d ("xentrace 5/7: Additional tracing for the shadow code.") gives no indication what the benefit of this function is. Signed-off-by: Olaf Hering --- xen/arch/x86/hvm/svm/svm.c | 2 -- xen/arch/x86/hvm/vmx/vmx.c | 2 -- xen/common/trace.c | 26 -------------------------- xen/include/xen/trace.h | 2 -- 4 files changed, 32 deletions(-) diff --git a/xen/arch/x86/hvm/svm/svm.c b/xen/arch/x86/hvm/svm/svm.c index 59a6e88dff..c10d0015e8 100644 --- a/xen/arch/x86/hvm/svm/svm.c +++ b/xen/arch/x86/hvm/svm/svm.c @@ -2812,8 +2812,6 @@ void svm_vmexit_handler(void) if ( rc ) { - if ( trace_will_trace_event(TRC_SHADOW) ) - break; if ( hvm_long_mode_active(v) ) HVMTRACE_LONG_2D(PF_XEN, regs->error_code, TRC_PAR_LONG(va)); else diff --git a/xen/arch/x86/hvm/vmx/vmx.c b/xen/arch/x86/hvm/vmx/vmx.c index 40767b94c3..08dd297cae 100644 --- a/xen/arch/x86/hvm/vmx/vmx.c +++ b/xen/arch/x86/hvm/vmx/vmx.c @@ -4352,8 +4352,6 @@ void vmx_vmexit_handler(struct cpu_user_regs *regs) if ( paging_fault(exit_qualification, regs) ) { - if ( trace_will_trace_event(TRC_SHADOW) ) - break; if ( hvm_long_mode_active(v) ) HVMTRACE_LONG_2D(PF_XEN, regs->error_code, TRC_PAR_LONG(exit_qualification) ); diff --git a/xen/common/trace.c b/xen/common/trace.c index 77f8ce0ce5..60db45104e 100644 --- a/xen/common/trace.c +++ b/xen/common/trace.c @@ -308,32 +308,6 @@ static int tb_set_size(unsigned int pages) return alloc_trace_bufs(pages); } -int trace_will_trace_event(u32 event) -{ - if ( !tb_init_done ) - return 0; - - /* - * Copied from __trace_var() - */ - if ( (tb_event_mask & event) == 0 ) - return 0; - - /* match class */ - if ( ((tb_event_mask >> TRC_CLS_SHIFT) & (event >> TRC_CLS_SHIFT)) == 0 ) - return 0; - - /* then match subclass */ - if ( (((tb_event_mask >> TRC_SUBCLS_SHIFT) & 0xf ) - & ((event >> TRC_SUBCLS_SHIFT) & 0xf )) == 0 ) - return 0; - - if ( !cpumask_test_cpu(smp_processor_id(), &tb_cpu_mask) ) - return 0; - - return 1; -} - /** * init_trace_bufs - performs initialization of the per-cpu trace buffers. * diff --git a/xen/include/xen/trace.h b/xen/include/xen/trace.h index 055883287e..6e9f80dd94 100644 --- a/xen/include/xen/trace.h +++ b/xen/include/xen/trace.h @@ -35,8 +35,6 @@ void init_trace_bufs(void); /* used to retrieve the physical address of the trace buffers */ int tb_control(struct xen_sysctl_tbuf_op *tbc); -int trace_will_trace_event(u32 event); - void __trace_var(uint32_t event, bool cycles, unsigned int extra, const void *); static inline void trace_var(uint32_t event, bool cycles, unsigned int extra, From xen-devel-bounces@lists.xenproject.org Mon Jun 19 12:45:16 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 19 Jun 2023 12:45:16 +0000 Received: from list by lists.xenproject.org with outflank-mailman.551059.860359 (Exim 4.92) (envelope-from ) id 1qBEFp-0001n6-SC; Mon, 19 Jun 2023 12:45:09 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 551059.860359; Mon, 19 Jun 2023 12:45:09 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBEFp-0001mz-Pb; Mon, 19 Jun 2023 12:45:09 +0000 Received: by outflank-mailman (input) for mailman id 551059; Mon, 19 Jun 2023 12:45:08 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBEFn-0001m7-TK for xen-devel@lists.xenproject.org; Mon, 19 Jun 2023 12:45:07 +0000 Received: from EUR05-DB8-obe.outbound.protection.outlook.com (mail-db8eur05on20619.outbound.protection.outlook.com [2a01:111:f400:7e1a::619]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 1d5dc612-0e9f-11ee-8611-37d641c3527e; Mon, 19 Jun 2023 14:45:05 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by GVXPR04MB10022.eurprd04.prod.outlook.com (2603:10a6:150:11a::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.35; Mon, 19 Jun 2023 12:45:02 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6500.031; Mon, 19 Jun 2023 12:45:02 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 1d5dc612-0e9f-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=NViPQjfKItfodKlB1cSw31LXjMYwqYzY7NZNIHW/EaPelyJuNhn+nRwTZRHBEZ8tjTHkFD3JGeKLumLDQ7HIaWl6xoSg1PFwnYwpXOLZKXGsGQXeb2ssO0Hyq4JcIR1dyhDM3lmz+6AVfnZGM2jEUJbCfZMI8hquEcy0hw3i/DMlrKVZaZt9xrwKCMHRhfVmeXXv4q5Q10mxc6/atVMT1gJlo7H7HH7lVwvMmgg6MK3ASv700XZgwzdG6Y61PyR3kSnIlmvpL6D88pD6fCSiGt67VbMBKO3w8uNz9cSD+H2g6mcec/GbXHpnCrM01AcHfPDTzbbbdbHpP0DN/bSWEA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=/YBdnd0lsiqXYrrMs5g6OE/u4YNc6fy+QrzJl2Zmp34=; b=ko44cFBvd5EWgzAoujkxX71ZmV71LINSx/jCFL/sfC6NtmRj23OOS/CcxQ36P0ohF3g++BT0GC6f3DmgqvEHXYXv5Wf2cgj04wWfApoTS9jlS1XGk6kog6ggKFusOA4wGqcyYP79HCg2vLb99mGlW/CrfKquGySuW3XlLu6T3rgE2qRpcbMrb1uVOubiUDpvbw/TXhwH0m7rFxD4zC5aIulTGFpvpZxDP8IXb/Gfrq76culCkhWWpFh2qdKJ0MAFvpuefBUBbz+pFkByTBtaEha+Y8USpc11SoN3ZVaubRsz7XReKF5KDxERgaLhN0iRyDwZq4suBOmlrWcSQ7/HZQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=/YBdnd0lsiqXYrrMs5g6OE/u4YNc6fy+QrzJl2Zmp34=; b=WgAk2SB2yz0VF2ttGEDxp1blyBFqT1A8qu6m2HiHFAfaJhLEp1CKCl3o3mVYjCLUc69ZSyHO3qIk1KsyzMcBG8iER4JLpl9M5Dy7QrPf2UYZED7zi8f3JnEbJeIcMPqOiYUdBohL9FBC8+KNqX3fmPFtBifQxKWEcsJkAyW8sBveZd1vi+onOG+tG/SlybbaUHNOzkc1CoYPIahz3TYNMlg4K/wuYBc4wF4amDafYnpG9TDdtbCsDOxz1WY7lCsZ3HE41XjGJvXUXQ7fV0mkqp3VL+JUS5Ni3j2XXRzC3jr2wH9VJCW5xXVLveUcWuuUmDIGkSYJdrxtGzXF6DRniw== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: Date: Mon, 19 Jun 2023 14:45:03 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v2 0/3] hvm: add hvm_funcs hooks for msr intercept handling Content-Language: en-US To: Xenia Ragiadakou Cc: Andrew Cooper , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , Jun Nakajima , Kevin Tian , xen-devel@lists.xenproject.org References: <20230424082038.541122-1-xenia.ragiadakou@amd.com> From: Jan Beulich In-Reply-To: <20230424082038.541122-1-xenia.ragiadakou@amd.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR2P281CA0052.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:93::15) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|GVXPR04MB10022:EE_ X-MS-Office365-Filtering-Correlation-Id: c6c79946-88db-4ec8-c41c-08db70c2ff4a X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: kY8jGglS+yMRYT869pRdxwInuBTeOmAmAgQO0z0C7FT6ZW0I39PQPjikfg41nAYjHe9ihfRvqzS2KCgqEk4ro8/5xjm6ZvUrRXaLX4AyJa1dt7KkquUv3rFsMMKa9N/8GnE5rnKXS8IpL/Gs6DuwKNPcyMyqGOQH8l6zPWkFmrxHcJ7w3UZD1+dbm1rO+laa1E05hNFmBhh5bvy1MRLeK8+Va45rTDN51zUZkPgceiI31AQE8VHcsDv24LPH35khY/v3tLhEzKl9tMpFWtUCifXTAzzK4rDI0BnLAhwm0pnp7W7d7QXSCt0IKIQwOZ6NJMQkFzkpfvvCCXKzNN2kKNAQcLrNa3E9Y5lcZOfEysegdP+WNVa9hK+2XsMNKfsUduLjFa/1J3S84OFFcv8N8Q/KRahlAnVFZxb94lbr52+nSKQNw01KVeqTYoRuqkXXwaM6kZfF5VcgfSDfo3xhNJV/v5ySHojZU56aH9Wn6F4awM6bqp01zwnbp1LOQlRiU+yXNusiUyoiA7l7g37vs/QOKP3oq+7wQ2D03w4XvodmUT39vQPe2brQAgXgkFKLSy6IwQevNuyhC5KZQWLKYssZesbE/dbLuayUjoxvS80WV0r69s1Pljp3hkLJSYg7cwZ6GizGCYCFPt2GW/dHIA== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(376002)(366004)(39860400002)(396003)(346002)(136003)(451199021)(4326008)(54906003)(478600001)(6506007)(53546011)(6512007)(26005)(6486002)(186003)(36756003)(2906002)(8676002)(41300700001)(8936002)(66946007)(6916009)(66556008)(66476007)(316002)(5660300002)(31696002)(83380400001)(38100700002)(86362001)(31686004)(2616005)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?TW9kZDNtVXFjbThIQXowUTJLZk1IdU1XSGROV1gyWU9BR2ovV2U2d2JNbStm?= =?utf-8?B?U1phcmZHS29QY0o2VlZibUt3RjNjcnZzSGdBTytIWVA0WnhMTkJzYXVTcWVt?= =?utf-8?B?NlFoWmtaUVVKUklxbUVlaHduT091Vlgzdk5nSVlkWlZpZUJFdmdkZnFxSmtI?= =?utf-8?B?ZlhFSitkZERjTC9sNmNxRFJSVm9Dak5MYVJVbWs3cmt2cHphajhrQjQ3ZU1Z?= =?utf-8?B?U0pweGZVTlAyUHkzU0RzRFpNTVhKSmV6aE1pVUdpbGlyOW11THJMWHFabjAv?= =?utf-8?B?M2UwQTBtK0EvZndUcTUrKzFyUU9WUVloVjdnNTZWR2s3Q1lpVWJHZ2o3VDdP?= =?utf-8?B?ZUhIVjR3REp0b0NwVC9JSUhhK045NGpwQjFVOGtjd3VIVVJzWEZSRG5abWZ2?= =?utf-8?B?S25JZEl4S0ZwOHVVY1lleDZMMXhZejdUc0ZKek44Y29MQWdNeHhhdVBsYXVl?= =?utf-8?B?MytsOUJGTHF4S2JUYjRveVNxZklnMnovK2xEcjMray9YVmE3WGNKQXErQU9n?= =?utf-8?B?cmFjOXkvalMwdGpCZGV0NzljV2NpVXUwcWFuQXVCNkZ3TVpqU2hXQjE2THAz?= =?utf-8?B?eUNFVG1ZTWY0L1FUOW5PaDduM25SSjdyTGZYTFB1SlhtMkRwb3VQSXdRZldk?= =?utf-8?B?cVpzUTFycnNKRTA3QnY3Vk9TSlFDY2c1VDlrTFcyZXlKNDU0Nm4vYkFrdnI4?= =?utf-8?B?WTNYcXF0QjA4QjJPS25MTi9xZVU1TllteUh5MlRaN0lqZVZZT3l0WmRTa1B0?= =?utf-8?B?ancwcnFWdGJ1L1hzckZFNUZReHdsSmM3QlNFRjhsMG1YbGFkQk9ERTFWRjgy?= =?utf-8?B?Vk1MSWxLZnJtNi9vNVdPMkY3RE9lQ0NKRSsvSEZwOU9KeVRmaVhsSHlWd3ZH?= =?utf-8?B?T1NqR2w5R2dJWDk5QndtelhoeUlSTVVGWlJHT1lVbENxN3FJVDNBQ005Ny84?= =?utf-8?B?U0ZKWkpBeWhuS3J2ZlliUzhSM2pjY0JuSFR2SXNnTVJTOGpsQnhnQThHNjBM?= =?utf-8?B?M0U5cmNLTlNBZTQ3bDluSE8rQ3phcHllbUZQc1UzUG5ySUZOZDR6KzBHeUdC?= =?utf-8?B?dVhUa1B1dTJMWXhOOTNPbVFmTSszNnZnK1FhcjRXWURmeVlTckRoSmRQeE84?= =?utf-8?B?MGNvYnU5aThLRkliOWdteXFDcW1WNUVFNyt2ZlllN2x2M0VUdDZNWk56d29u?= =?utf-8?B?WDNkUlE5cndoSTVnMUorWUVqWUUxeFBTVDRPbm9HZ09WRWpvOGhwdVhEcCtO?= =?utf-8?B?V0JpbUJQdGp4V1Y1Rjk2RTNOSWxTN296QUVnaUVRNGdab2JNZi80K3RjeWZx?= =?utf-8?B?TUowUE5Zd3Z5b2dLc291MFh6cytVTHR4SDZSQXYyUytjQ0FEVGFGQjlhd3JD?= =?utf-8?B?MUJXeE5MRlJIWXA5L1FuTVBqa21EOXhNWUwvQ2wxcytWUVBQOS9CODdjMngr?= =?utf-8?B?K2t6Yi9IVHRxYnBQMFMraUczTHUxTUFvMXNHN0xEM041ZmR4d0RGMnAxbWdq?= =?utf-8?B?dVdOY0xERzRRYWJUZ3c1Mk1BNUliVGRtZEpZRWJadEpCRjRMZUZiSFZSY1ZE?= =?utf-8?B?REFNZGkzVThkSUdIWlhlTGVFZzkvSWZmWUlJM3YzZW9CQzViYWt5ZXBYbzQw?= =?utf-8?B?K3dES25JUlY1SFREc2ZNcnp3ZGtiUkI2LzFzRTFHRFVFNy96U0kzVEZobzJa?= =?utf-8?B?OW5PVTdWV3FwaVE5d1hrYUFzaWpWZExQVDJRTWIwV2NYMHNrb1pEanhoZ1RV?= =?utf-8?B?M0pGdGdpRXdvVDR5dHRoRTY0eUxINlA1V0J6YmtQR0laaHJBQlNBY012N21p?= =?utf-8?B?Wk03L2ZuYjNvQXVXT21HanFTc0g0YTRvNjh3Zzd0QW1HWHFlOWRFOVVPdXR4?= =?utf-8?B?K2JxWHhyN2phbTBCenpRRlNqVHNEK1lKdWphd1MzczVNVTR5UU10UXV5MlJL?= =?utf-8?B?NWUySS9TSFR2TENrVERlY0tDdXJsTS9OV1dPQlYwQmRKZmk2c1ZRWWN5QWZT?= =?utf-8?B?WlFrcXIweW9veVRyb2U4SnF6Q24rNkptdnUwTTRBRDdLTmRaR1pqRytES1I2?= =?utf-8?B?UjNQRHp3SlUwekJaSW5SZ2ZZV1p0TlNJdi9pQ2Y1OGJPR3cwdzdJN1lpdmVy?= =?utf-8?Q?nVlAthKGN9d0B/jBrjdBHu7br?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: c6c79946-88db-4ec8-c41c-08db70c2ff4a X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Jun 2023 12:45:02.0954 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 45XTdE01yUzT/ql9urid5Vb7PLe1ANV7JlQShYDlqgKrZpMMePnjkqGuWCPEIt4pz28rTlaW8MLkyBRGxzmuMw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: GVXPR04MB10022 On 24.04.2023 10:20, Xenia Ragiadakou wrote: > This patch series aims to make the msr intercept handling, performed in > vpmu code, virtualization technology agnostic. > It creates a common interface for setting/clearing the msr intercepts and > then add hooks to the corresponding hvm_funcs table to be able to call the > svm/vmx specific handlers through a generic hvm wrapper function. > > Version 2 addresses the comments made on version 1 to ease further review. > > Still there is a pending question made by Jan, whether there could be other, > than the vpmu one, use cases that would require msr intercept handling to be > performed outside of virtualization techonology-specific code, and whether > this abstraction is actually usefull to have. > > Xenia Ragiadakou (3): > x86/svm: split svm_intercept_msr() into > svm_{set,clear}_msr_intercept() > x86/vmx: replace enum vmx_msr_intercept_type with the msr access flags > x86/hvm: create hvm_funcs for {svm,vmx}_{set,clear}_msr_intercept() Coming back to this after discussing among the maintainers; I'm sorry that it has taken a while. For what the 1st patch does we think we might be more open to a conversion of VMX code in the direction of how SVM presently does things. Andrew points out, however, that he's suspecting there may be a wrinkle with introspection, which likely we'd need to work out collectively. As far as the introduction of new hooks (or maybe then only one new hook) goes, are you having further plans of using those hooks, beyond (iirc) possibly using them in vPMU code (where I continue to think hooks aren't really suitable, as per-vendor code is already separated)? According to what you wrote above it doesn't sound like you do. Jan From xen-devel-bounces@lists.xenproject.org Mon Jun 19 12:53:26 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 19 Jun 2023 12:53:26 +0000 Received: from list by lists.xenproject.org with outflank-mailman.551064.860369 (Exim 4.92) (envelope-from ) id 1qBENc-0003FT-Kw; Mon, 19 Jun 2023 12:53:12 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 551064.860369; Mon, 19 Jun 2023 12:53:12 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBENc-0003FM-IP; Mon, 19 Jun 2023 12:53:12 +0000 Received: by outflank-mailman (input) for mailman id 551064; Mon, 19 Jun 2023 12:53:12 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBENc-0003Ex-1q for xen-devel@lists.xenproject.org; Mon, 19 Jun 2023 12:53:12 +0000 Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.129.124]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 3d4ec410-0ea0-11ee-8611-37d641c3527e; Mon, 19 Jun 2023 14:53:09 +0200 (CEST) Received: from mimecast-mx02.redhat.com (mimecast-mx02.redhat.com [66.187.233.88]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id us-mta-448-eMbUOAW0MCuDPYrn0jiopg-1; Mon, 19 Jun 2023 08:51:27 -0400 Received: from smtp.corp.redhat.com (int-mx02.intmail.prod.int.rdu2.redhat.com [10.11.54.2]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 3085685A58C; Mon, 19 Jun 2023 12:51:26 +0000 (UTC) Received: from sirius.home.kraxel.org (unknown [10.39.194.241]) by smtp.corp.redhat.com (Postfix) with ESMTPS id D6D9440C6E8E; Mon, 19 Jun 2023 12:51:25 +0000 (UTC) Received: by sirius.home.kraxel.org (Postfix, from userid 1000) id 936C518003AB; Mon, 19 Jun 2023 14:51:24 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 3d4ec410-0ea0-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1687179187; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=5ORtopzT9s1qYWn/4SUYyTcc3sJhCuS5dk+3R+10YLU=; b=FGVFQ+8c85j1Be0eBLrQ7CQb6S5G092T+/7SpbBPGCCs8vkSAGncppa3UnQ6/lATqK2fZL XDuhrmFg/bsHyj6Z9mSKDIXXLMa1zoZDfanmwGaZcVJPPoIMLal96xwnkB67vYld3TlEhY ece/PlSye+GHLSLZAYnkqVyJp0MhLwk= X-MC-Unique: eMbUOAW0MCuDPYrn0jiopg-1 Date: Mon, 19 Jun 2023 14:51:24 +0200 From: Gerd Hoffmann To: =?utf-8?Q?Marc-Andr=C3=A9?= Lureau Cc: Jiqian Chen , Damien Hedde , "Michael S . Tsirkin" , Stefano Stabellini , Anthony PERARD , Roger Pau =?utf-8?B?TW9ubsOp?= , Jan Beulich , Antonio Caggiano , "Dr . David Alan Gilbert" , Robert Beckett , qemu-devel@nongnu.org, xen-devel@lists.xenproject.org, Alex Deucher , Christian Koenig , Stewart Hildebrand , Xenia Ragiadakou , Honglei Huang , Julia Zhang , Huang Rui Subject: Re: [QEMU PATCH 1/1] virtgpu: do not destroy resources when guest suspend Message-ID: References: <20230608025655.1674357-1-Jiqian.Chen@amd.com> <20230608025655.1674357-2-Jiqian.Chen@amd.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: X-Scanned-By: MIMEDefang 3.1 on 10.11.54.2 Hi, > Adding a new command requires new feature flag (and maybe it should be in > the <0x1000 range instead) > > But I am not sure we need a new message at the virtio-gpu level. Gerd, wdyt? > > Maybe it's not a good place to reset all GPU resources during QEMU reset() > after all, if it's called during s3 and there is no mechanism to restore > it. Damien? The guest driver should be able to restore resources after resume. take care, Gerd From xen-devel-bounces@lists.xenproject.org Mon Jun 19 12:55:07 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 19 Jun 2023 12:55:07 +0000 Received: from list by lists.xenproject.org with outflank-mailman.551069.860380 (Exim 4.92) (envelope-from ) id 1qBEPJ-0003nd-0e; Mon, 19 Jun 2023 12:54:57 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 551069.860380; Mon, 19 Jun 2023 12:54:56 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBEPI-0003nW-TC; Mon, 19 Jun 2023 12:54:56 +0000 Received: by outflank-mailman (input) for mailman id 551069; Mon, 19 Jun 2023 12:54:56 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBEPI-0003nO-0W for xen-devel@lists.xenproject.org; Mon, 19 Jun 2023 12:54:56 +0000 Received: from EUR01-VE1-obe.outbound.protection.outlook.com (mail-ve1eur01on0613.outbound.protection.outlook.com [2a01:111:f400:fe1f::613]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 7c23b19e-0ea0-11ee-8611-37d641c3527e; Mon, 19 Jun 2023 14:54:54 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by GVXPR04MB9996.eurprd04.prod.outlook.com (2603:10a6:150:117::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.36; Mon, 19 Jun 2023 12:54:48 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6500.031; Mon, 19 Jun 2023 12:54:48 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 7c23b19e-0ea0-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=THHkCYYqN9tI6wnBkJBPQWVe5gezbsb0DyIHFx8oFx4ceCaWOYadiRSuSm+7hfNDEUgAmnqMROFWyFG6VmvCsoTt0VHVRRTe96hodM/z5NNl8uRF9/uXrrT4NxOXseMCMS3VQTfGm9APcUsakEWIAWSKzmUkngfj18du6NdC+RCc+5n50neuMeKJHEjwgQlpHxLwucDOrasmVv+krB4WDWk/g8yxfTtsAguKZLC/aphOivAfvOW4JY83ki9q3KNcN7kBWbo6Nmwvs3AWYKLJ3wSr7NwSLQkEtLTexcQkgt9G9xceQuQabIOxRdboUxskiH4XZkCPd2xuZsgksAUmpA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=ZFawNDIY5POqWBGLOlzpdsXinNZKlA9OPYPE3hCCqWo=; b=WhlCPaPOkknhjpixEB2At3RcMbu6adXfxWlH5ZU8xrpGGTefdHEhXbVvOvOCRXg1hbRHFnUKDeLwWdVRqEbWV93XCu/xJczH3qS+KhN/cuCVDvYifsWsK9EiyqdCPQuBsRETFp0Wl+DgkcGLyrhf2ejT/N9rk9AdIjZpXGGvDigrvfB8g3KZox3l7AsFhb0ktwqM8WbIzqEi3Ajbo52FKbQ+sBqHT2FvBPVqnMWd04HZ9lF+IoNWHsrJGxwvyQE7mUzemRqgXvKtgE8T4ZR85beXU62TDoEk1KoEiz6Z8ASuylzHd58kD82YWfqhdKb1dNwLbevbzJjIeoa16Akafw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=ZFawNDIY5POqWBGLOlzpdsXinNZKlA9OPYPE3hCCqWo=; b=4qeJM/5K5yL7VxdGz4ru4VoRPOw4rT3iTe9nc9POZXWQV2dn0ZgG7MGGl3M5E9alPdMzWS9zOCaPJYmdkMGHdErO7OthujJryzBfgJKPrGQ+liCUVFjIkRk1f8idM4BV+dk1hM+285YEO2kb1vzG8ZtB2KTCQPBHNMH/9LIEjpVeTO4VbSxg2KFaAVNbf7/sOOHxbKQNhuma89X2HB6urIkDgwuFwupVG8INE0sCY/1XymAeDnmCYvL8MxxL69ET2FYr4U21QdF9jw+0FzdR5GXk7BhqNaFl5XItgFnXr7ia2S+FRfS+ebuYwZNvxl9jOHNCcqWesRtbih+fE3pcrg== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <3b174185-c625-f1f5-5567-f7d083709f79@suse.com> Date: Mon, 19 Jun 2023 14:54:49 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v1] xen/trace: remove trace_will_trace_event Content-Language: en-US To: Olaf Hering Cc: Andrew Cooper , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , Jun Nakajima , Kevin Tian , George Dunlap , xen-devel@lists.xenproject.org References: <20230619121817.21969-1-olaf@aepfle.de> From: Jan Beulich In-Reply-To: <20230619121817.21969-1-olaf@aepfle.de> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR0P281CA0209.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:ad::6) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|GVXPR04MB9996:EE_ X-MS-Office365-Filtering-Correlation-Id: 159072dc-520e-4d43-1e9f-08db70c45cde X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 97SCPotXIjwbt20wDqlP/AoVE+ktgaXkALZVkimJ8RP2jZ4qwSpzHqmXrnnFzXnkWOlWK9eymsfmHSZWqeLyiDX7tvREsXS142JdMIAw4U1Mqk34dnS2ng9PeEh08wAzn97VOf6jEq5oWD0IAZt/EOm0RL8wvzV0qgYQUgGWUSAH07DqMgMBVrjdIgYMkigVIM/wDeaUhY6apSTboSe87BEEWUi9k4v8aC5LzDiCBmTj9X/Z9kIgB9O0mmvkTkSQFIFQE3CbYaMniJ8ZhZFS4FsExro2aIf5HwNW/qPN+sdpw9u2n+rABCMQ4PAhmeqMCt7QRs2FDcGE37mxzgGvUw/2edvjt4O2d4iRK6pevTX3AlqRxk5fthVGHAdTdD0eE5tlbBdYfkRe8+FCE/GbJcCAxPu/CmER5Px0RpIw1fdGx51E7v+Yl/5VoIdkdqI14i0lvw4968HvVi0YbphjoLRBAJWqBJODfg3ln2joAb9l8gbb2LgsKV8Z6fGBQXn1xJhoY7s2XyQJG2B3q+SoS9GpirwncRq5dK2J4YOgVYdSlutVdTYMCRipD6FURokT5wEDJ7dFadCufAKMttctFCO1BfkXZbBjZzWETniNoKl1qStRquLC2rB/7o/3T3jXHXUupwwRYz0aagPk1msymQ== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(376002)(136003)(39860400002)(366004)(346002)(396003)(451199021)(31696002)(478600001)(2906002)(4744005)(54906003)(6486002)(2616005)(86362001)(36756003)(26005)(186003)(6506007)(6512007)(53546011)(8936002)(8676002)(66476007)(66556008)(66946007)(5660300002)(38100700002)(316002)(6916009)(4326008)(83380400001)(31686004)(41300700001)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?OGNHa1c0OHpzdnQvc0Ryb09LVHcvZ0RjRVdJWU14Q3lTL21MOFhpRy8yWXQy?= =?utf-8?B?MGsvZkNIMW4rL1JDa1pKczgrUWtiZHZ6NWtVYllWTFZhN1k1Nm92T0x6VDFK?= =?utf-8?B?ZjJTYjR5d3JvTlh0N1pWNjd4ODl3Ykp3c2hXdG9KbEhOeVJjUGpyUmwyajdU?= =?utf-8?B?UWh4ajVpQ1dJWTg2MUdkK1NRVTNjTnE1VjBKUjNUMkIzUWtVRXhsRXA0SFZY?= =?utf-8?B?SUxXMHpiTXlkdmRUZVFHcW1Xb0Y5SjJ2NHpSS0s3azNKdXFDQmlhclBsc01q?= =?utf-8?B?REhYcjJnNjJmbnlXZTZjenI1Q3k5N05EbTcrdlNPbHBiNGZTdHJ5clFZanNR?= =?utf-8?B?bmViNmlIUUZqL0UrZ0tWbnFETjhQTXB4MUxUem85QWNjUERKZlY2UzJEZm1z?= =?utf-8?B?aUJrNnpoVmNYZkNxYTBlaEdmdVdzMTlZQjlLTURHR0F5RkdreGdIOUx2bTZq?= =?utf-8?B?c3RGQjloQ28yQ0c4RzBBMzNjVGZzQ1d2RHlMNXZEazRVZUtTVXVzUWk1eDhJ?= =?utf-8?B?cFdTRmJKZG1VZnZtY0paOVZxZWVqM1NkeTZaZHh5S1VNMzhiZEt4cS81N1RC?= =?utf-8?B?bEhId1dzN1huRks3SUhyVVdZVFA5RmQwOHdTYkZCazA3NHlJMENIMU9yKzlv?= =?utf-8?B?MERHZStZdW90V0ZxZWgrL2QvVmZWUEJsR1BIRFZsVTZSM0tsdmlyQjRYTll5?= =?utf-8?B?MFNXSkpiQTFDVWZUd1NFMVNKMVNjTWdTcHo5ZXFPMlVVc1J2ZTRLU2FwMktI?= =?utf-8?B?cWtHNXkzVU11SFV5c2M0QkgxUVp1dTNFaTVNRWxhaEMvR1BMN0pqTGhYSHBV?= =?utf-8?B?Ync2LzF5T1B3T0lXb1JHbm5FUFBDY2hQUklZNElYNjl6dEZZWHJGVGZFMW9M?= =?utf-8?B?UnUvaDZTUS8xSXJ3R3BYdDlJRm1Ya3c3U1gvdGxLNmhDbFA0MHQ1YStFdEl1?= =?utf-8?B?djVDaE9FMExMRmdGUlFjRGp3MzdkcWxPR0c4ZCtNMEtGQUIxUHY3U0VkdktM?= =?utf-8?B?OGFmUXhiMlVTSVJ0MjJFVlhHN2ZhNUN3MldOajIrOTZTWVZObEY0bEtsdzRW?= =?utf-8?B?TkZmMkFUYzZWZmlINUk4bm5wYVgwbS91aXVXUElEdlF5YUlnb1ZIcDAxZXRq?= =?utf-8?B?N2poU20vNkZoVUMzci84WGtQakFqZzQyWVpmbHVxNU9IZ2xqWmczeENrWGJp?= =?utf-8?B?TFVlanpZOVo1d25QYys4Nkk4YkVmMXdGSE1nOGNaS3BJK0JPS3RpSE03Rk1J?= =?utf-8?B?elNTWEdsNlBmVVJ5bDVPUWhJRGJhc012d054c2JDNVFZdWpvY0JJUmJkWU03?= =?utf-8?B?Q1ptdmVOb0ViS3lScnJqR2FEUjJLRTBna2JBdDlNUGt4L1p2eEFYZ2x0aVBs?= =?utf-8?B?Tzl0aFFxMFFzaHRqRnMxMWh3ZUVxclhJWkEwNG5aZ21YS2pOaE80SHpwRkhH?= =?utf-8?B?TE04Y2UvcFFMTnd5Tlo0bjZ2Z2laNjVpVTlnRzUrV2I5RVFQeXg5T291Vmxy?= =?utf-8?B?eW81dnNoRVNCUjNid2xYZERoY0hqa3FxWk04aXZMbzdkSU5vYnZ5NHQ2MGVX?= =?utf-8?B?Uk83NW9aczIyajV1cjgwVXlOYW9Zei82cERIaHRTaloyOTBNUEZpM1NrMklF?= =?utf-8?B?bGJYYkpyTGlqbk9qYlRweXpHRXovUWxWR214OHlxSHlCc0pQSjVBRXVETnYw?= =?utf-8?B?bkl4dys5YkNoNUZWbHoyZENULzNkY3haVHRBOTI0MFp1VldRemVFaVFNeHRn?= =?utf-8?B?MlFVdEdxOEE5WFgySlpTZE04WFJKQS83MkNWdzA4Ry9NZXo4bW9UZDRRS3NO?= =?utf-8?B?OW5LdXd6NjMzVG9WaUhMZVpRTi91QXE1RlhFdGEyZjJjSUpNYXBkcEtTUUJ4?= =?utf-8?B?NWVWczJqK204MUpUVUd6QTNRbFFQeFNta0FkeGlIait4YUZyMG9mcnVsd0ky?= =?utf-8?B?NjdpTEY2M1pCZWZQV1dZdVowdnNtVm5LS09tc2NzRXBiSGE2UUtnRXNDMGkx?= =?utf-8?B?QUFrKzBCMW8xSzlscHc1blAvT28xamduQ3ZzdUJXeGcwL2ZpYWJiUFRBWmxx?= =?utf-8?B?T0YxSzk1S2d0OEl4THMrK21UVmVDQU8xa1VZOHNuanpxRHhqVGlIS2FXengw?= =?utf-8?Q?AAq/r+d9cBfGHySmJwiz6MTYN?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 159072dc-520e-4d43-1e9f-08db70c45cde X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Jun 2023 12:54:47.9649 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 1ZciGGvd9k1/+ZrZjadbrGI/HqHolnLM8FOLCMzN+nozxYpZ2SkCDN5X2QJcBrkWlbEF1eMKCRYwEd6TE12MqA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: GVXPR04MB9996 On 19.06.2023 14:18, Olaf Hering wrote: > There are just two callers of this function. It is identical to the > checks done in __trace_var. But it's used differently. > The commit message of 9a86ac1aa3d2ebe1be05dc7fe78dd6759aa3241d > ("xentrace 5/7: Additional tracing for the shadow code.") gives no > indication what the benefit of this function is. My understanding is that its purpose is to avoid excess tracing, i.e. when shadow code already traces the event (in greater detail), that the more general tracing isn't needed / wanted. Note specifically how ... > --- a/xen/arch/x86/hvm/svm/svm.c > +++ b/xen/arch/x86/hvm/svm/svm.c > @@ -2812,8 +2812,6 @@ void svm_vmexit_handler(void) > > if ( rc ) > { > - if ( trace_will_trace_event(TRC_SHADOW) ) > - break; ... this is _not_ "if ( !trace_will_trace_event(...) )" (and the same on the VMX side. Jan > if ( hvm_long_mode_active(v) ) > HVMTRACE_LONG_2D(PF_XEN, regs->error_code, TRC_PAR_LONG(va)); > else From xen-devel-bounces@lists.xenproject.org Mon Jun 19 13:04:00 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 19 Jun 2023 13:04:00 +0000 Received: from list by lists.xenproject.org with outflank-mailman.551076.860390 (Exim 4.92) (envelope-from ) id 1qBEXv-0005PE-V3; Mon, 19 Jun 2023 13:03:51 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 551076.860390; Mon, 19 Jun 2023 13:03:51 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBEXv-0005P7-Ql; Mon, 19 Jun 2023 13:03:51 +0000 Received: by outflank-mailman (input) for mailman id 551076; Mon, 19 Jun 2023 13:03:50 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBEXt-0005P1-Py for xen-devel@lists.xenproject.org; Mon, 19 Jun 2023 13:03:50 +0000 Received: from esa5.hc3370-68.iphmx.com (esa5.hc3370-68.iphmx.com [216.71.155.168]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id b9259cdb-0ea1-11ee-b234-6b7b168915f2; Mon, 19 Jun 2023 15:03:47 +0200 (CEST) Received: from mail-mw2nam12lp2048.outbound.protection.outlook.com (HELO NAM12-MW2-obe.outbound.protection.outlook.com) ([104.47.66.48]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 19 Jun 2023 09:03:40 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by SA2PR03MB5930.namprd03.prod.outlook.com (2603:10b6:806:111::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.36; Mon, 19 Jun 2023 13:03:38 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606%4]) with mapi id 15.20.6500.036; Mon, 19 Jun 2023 13:03:38 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: b9259cdb-0ea1-11ee-b234-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1687179827; h=message-id:date:from:subject:to:cc:references: in-reply-to:content-transfer-encoding:mime-version; bh=d8BPQxGBWr0IctFJzC/8mc1E/TFhGV3kEYrVVCZ2bVY=; b=hzgGjLbseZCCGM4i9BnRmABx0Ye2p11YXO+GqH/2k7YRJ5gQ8wbY1m+Z P6zIvWmpiHHl0ZoPzhzFz5aAHGpmJuJlU8qAy//rz90W2AGywPzXsV4M0 uGiuKAiTURsaSlrEEu6C6pJE3i+fPpSUAEGHBEfR2N67K0IBAWCGpY8D6 I=; X-IronPort-RemoteIP: 104.47.66.48 X-IronPort-MID: 112070723 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:Z/twh60zQ5cwlNY7DfbD5TNwkn2cJEfYwER7XKvMYLTBsI5bpzVUn zFKXmDTM66MNjHyLot0a4XgoEsGu5fQyoAyGVY/pC1hF35El5HIVI+TRqvS04F+DeWYFR46s J9OAjXkBJppJpMJjk71atANlVEliefTAOK6ULWeUsxIbVcMYD87jh5+kPIOjIdtgNyoayuAo tq3qMDEULOf82cc3lk8teTb8HuDgNyo4GlD5gJnNKgS1LPjvyJ94Kw3dPnZw0TQGuG4LsbiL 87fwbew+H/u/htFIrtJRZ6iLyXm6paLVeS/oiI+t5qK23CulQRrukoPD9IOaF8/ttm8t4sZJ OOhF3CHYVxB0qXkwIzxWvTDes10FfUuFLTveRBTvSEPpqFvnrSFL/hGVSkL0YMkFulfE25I1 tMzNDY3YT+7p8jvnb/ka6ozv5F2RCXrFNt3VnBI6xj8VKxjZK+ZBqLA6JlfwSs6gd1IEbDGf c0FZDFzbRPGJRpSJlMQD5F4l+Ct7pX9W2QA9BTJ+uxpvS6PnGSd05C0WDbRUvWMSd9YgQCzo WXe8n6iKhobKMae2XyO9XfEaurnxHqhAN1KS+fjnhJsqF2B72oTJSYUbGKmnMaGulC9APxPE nVBr0LCqoB3riRHVOLVWBmxrlaNswYSX9cWH+BSwBGAzO/Y7hiUAkAATyVdc5o2uckuXzso2 1SV2dTzClRHsreYVHac/be8ti6pNG4eKmpqTTAAZRsI5Z/kuo5bphDSSJBlGa28jNzwEBnxx SyHqG41gLB7pc0GyaS9u0zGijSEp57VQwpz7QLSNl9J9St8bY+hIom3s17S6K8aKJ7DFgXR+ n8Zh8KZ8eYCS4mXkzCAS/kMG7fv4OuZNDrbghhkGJxJGymRxkNPtLt4uFlWTHqF+O5dEdM1S Cc/YT9s2aI= IronPort-HdrOrdr: A9a23:EKMftqy9coYBIti2Dyj0KrPwAL1zdoMgy1knxilNoEpuA6ulfq eV8MjztCWatN91YhodcL+7VpVoLUm8yXcW2/hzAV7SZmnbUQKTRekJgLcKpQeQfhEWndQtt5 uIHZIOcOEYJGIK6frS0U2VFMsh3cnC0I3Av5ak8561d3ANV0i31XYBNjqm X-Talos-CUID: =?us-ascii?q?9a23=3AKhh0YWjngO6cLHlMTp6ADWkVKTJuYHLb71j7P0m?= =?us-ascii?q?CBklRaJfMFFLP2eA7qp87?= X-Talos-MUID: 9a23:39X0sQhoppYkFkbaHLK078MpNNVB5aSDM0I0qIg7hPa0Ky8rFSektWHi X-IronPort-AV: E=Sophos;i="6.00,254,1681185600"; d="scan'208";a="112070723" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Khp2ZgQoPkwTwp4oiXj1UkQqtxI0ThF5imKyjk+bgXWgVOyaRGghvRjYTih89eMWv8JQPp5u/8/VrFjVPa+ylBtoohk3qvAeo9IZUxfNa0ArXPq6YpuW+z47eOUPr2CzsFGfLKXpbaDlKIvHJWXGPkm6l+940S58xdQcuLNJuBGt8qGwXNYJwPs9sgW/wxB4JRXYBg84wHNTWqQOPRsikm/pCMlyWUHgGwVEyKpVugfZaJRBM2GBJheV1u2Ln3JHlY1Gi8X8bP3hU9DQnOjTbnIVWANPrLB18wKV4ceF4x+ocMq1yrORsXmkwV5L2jiV6U22cRnVTQ1egzOPr+or6w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=d8BPQxGBWr0IctFJzC/8mc1E/TFhGV3kEYrVVCZ2bVY=; b=TgnDLMa7SbI4cE186RaZkTJSNi22tqNIeNt/vj0NPpCR+xyRyxkc+G+WTRatthOb37nzdXpXiY7ch+sywMaYxKfNveJmM6svBg0l6f5sEPmGdBFjhObeUun94Bl86vbBI6jP1bcruQHScXV8simR+vUivwO1/DOxlkLtCIUKWZ4gAoGEmb3nN3g+of/dUrFeCOGJHavOnL1obdls6H3p5Ip9QkTGa+uAx3mFgW2BiAeKQBVFotsuZ7Xw2mgHIDgOY7S7h3W5kC/sNUxrk4njTmAiIMa+Gs8wPg+SR8p1zwz5oBvbrYp4EWyWrpEdkYdMMZCJUczIteMm/kjbPAw9fQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=d8BPQxGBWr0IctFJzC/8mc1E/TFhGV3kEYrVVCZ2bVY=; b=XygJ+5lucnIXHWgxFfErtoPhXIO3WfdnyHnOp1LEhbN3Q7XyxixkY3kRB02Kgp4hSXmQFcY/z5Vvs2UugQ1BIGu5Z30iYDPgY6HXVr6hpdHdwCx/cLATrrvUinIsx5I2Q4sT9bCN5/aEV7lmIvRmSc2QpG12/BTiXr54V4NS/2A= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: Date: Mon, 19 Jun 2023 14:03:31 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 From: Andrew Cooper Subject: Re: [PATCH v1] xen/trace: remove trace_will_trace_event Content-Language: en-GB To: Olaf Hering , xen-devel@lists.xenproject.org Cc: Jan Beulich , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , Jun Nakajima , Kevin Tian , George Dunlap References: <20230619121817.21969-1-olaf@aepfle.de> In-Reply-To: <20230619121817.21969-1-olaf@aepfle.de> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: LO4P123CA0138.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:193::17) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|SA2PR03MB5930:EE_ X-MS-Office365-Filtering-Correlation-Id: fded8048-ee0b-4c04-10dc-08db70c5989f X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: BWTsPfZ1+hgV6h2Dk+PjwxpjeR45VObX9VGhGHK+0L5CAgj8ZGGZLvr42yDOPS43n0jmmgMipecMvloWAPE50w4qBxEZIRpXjMFsoFRFZcD9DBOmcAeKieq50ZGOGX9bzJUJhQu3UrfTGh3vS5v5tgEw9RYTWP5ttKtl4tDzApHEHEAm2wk4JWxcKlkQ+hisNTkec51tT3aTtmvnknzaUp/G/BPCOQODcy7helcF3fgzFROpzVP0Aqd3v+v5Sem5FprzqpY7nb27/VrB8U76LhRV9CEy1EKAzgP+EO/MyQBM3FKoqPg6FMU1nTWYG9RXSyMUrZLXq5jTSf9eaH356/PzTZ5lm94LQsbeMMWywVBfy96vb2rwXkLNtnCpIlxJVCMu3hPTzN6oi9OE0RbAzElSECXFiHCv3Bw3p8mT/AgcxmbxzMQa5jxNV5f4eMqsxEe+aBzXsFCwWxn7W5fnOq7R6XlRc6zwnc2Mxq+ejJZPdKX8IpWW8eefn4qs9a/SIvKS34Cs4yWyPkBCodd4EUSc8qCJ2Y4+VD4LIR4qaaXVWQcbQisffPC6uuge7b8xeshJhAqzI8HQKGfnyTHdlukAxs+TGHAMgSmpOyB90P+BcNp+ybr1SlPaNPoSUG8JdXSR6mqM3uX3GuORr3O2bA== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(396003)(39860400002)(136003)(346002)(376002)(366004)(451199021)(31696002)(31686004)(82960400001)(83380400001)(38100700002)(86362001)(41300700001)(8936002)(8676002)(5660300002)(66556008)(66476007)(66946007)(316002)(2616005)(107886003)(6506007)(53546011)(6512007)(26005)(6666004)(186003)(6486002)(478600001)(4326008)(54906003)(2906002)(36756003)(4744005)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?cjYyaXh5Q3lleDNLb3REenlFNFVMWHZpWXU2R2k1ays1ZW1ycUhMc01WUlJX?= =?utf-8?B?L2s2SUh0ZDZnemFhRWxvTkJCNUhXd2pLem15anlPb2E0QzZJTWg0RlgvNXBS?= =?utf-8?B?TDM2OXhWKzV1Z3RQV05CeU1PY01KT0RJaENwaFJNdVVOa2dzbkF3UWVSS3JQ?= =?utf-8?B?ZWlNdC9iSTlFTnk1eHUrVmFIOUF1Z1dEa1VBYk9HYXdFTlJNTVplY3JDMnBj?= =?utf-8?B?dmN4aEI3SmZRYTQwS01YeFlDRU40WXVoQ1ZuNG15OUJRSFFzTmo0bHFQTzND?= =?utf-8?B?c1FqYklpWklkU0d6Ri80VWtQOU9CN2hwSkY4STlVeUhNMzhCVTBRRGdRUzFD?= =?utf-8?B?NFBBcVd6b0RxUlY0Wk5mdGdQcko3dDROUDhZdStYYmlnek9NS3hodGJnaHJR?= =?utf-8?B?QXd6MFBPQWlNeXg5QkprdVhpamNkL1VRWHc2MFhacXZZYlp3Zk5pQ2N0bkJ0?= =?utf-8?B?SHVOTWxQaDIraUdkcHR4NEROT2ZyTkw0ekVCUC9Qbk5ZQ3NuWVIwVkNVeW43?= =?utf-8?B?ZTdZc3RESXhpeG1rS1gzWk54bEtML01pejBYTzIvaW9aZDAvNk9XMWxzTjNy?= =?utf-8?B?THMvZTR0Wm51c0VIQ1FkU3IyQnR4TFh0aFU3ZE1XN2xrdktOdUF1TncxUUlP?= =?utf-8?B?ZXg4SGcyVTV1azcxMUlRNmZvdUNvWlpmZDRnWjJkTmFyV1R5SFF3NFNJeHNo?= =?utf-8?B?TnRPZ2tDTTZZcXFRdmZUaUdHR1JEZHdJQ3JYdjNQZDhrNGc5TnRzYUJUNk1l?= =?utf-8?B?NXVZQVhzWk5wVWNhckJGODJzMHRpOWx2M2pKNXV2MW1XL3I5LzR3TUkveE9x?= =?utf-8?B?d0lpZmVEaWdkdmRudms3T3phaFZWUWRjK1FYZlFkeDExbDg4RjIyeWEzckdm?= =?utf-8?B?dCtQS1k2aVBxUEdJNElkbzRNbmxDMjErbDJYRVQrOGkxQ295cWZYbnowdzVp?= =?utf-8?B?UXhFb1VVaG5xNlVXR2l6ZS8wTHd1bWk1ZG1DSVNaVTZGVVEyNW5XV0Z3TXIy?= =?utf-8?B?SmtTYytjU3ptMk9RMi9GM2d4a1JtR1BCMUVFN2t4a3g4S0s4blJxNENtNjgv?= =?utf-8?B?YzVKZkZmcVU2L1pUTmozRDlDZ0hJODZRS1VjNlpmWnNOWUZqdmpuUlk0alAz?= =?utf-8?B?LzU3TkQxc0ZqK1hCVHhIUG40WUVNV0FlQ2dqcGtxUmw2ZGZjd09vbjNoT25Z?= =?utf-8?B?YTNjL0o2WW4yYklJL0RrN0VNZkY0bUkxR2JENCtERGpMbytqQmkyaEVWT0Za?= =?utf-8?B?Y1BmQ1czYkZMOHVNQmNJcTJxeTVrVyt3KzFHTi9zSTRVRVMxU1NEc0xHeEw3?= =?utf-8?B?d3N2eGpPT2cyaTMxcE1wcGRqREdkT0RjQ3BjZGJiYnFtR1Nra1NPSEZtdnBV?= =?utf-8?B?ZmFISEZlRHJ1OVlvYmtTaVNLa0U1OTVNeC9OZ0NadlYwWmdvejNtTm91eFFC?= =?utf-8?B?aERab3d6RlVBZkRyN2Q3MkdabHdIRmw5anFJSk5pdTJId0tqVm1lYk9udFVx?= =?utf-8?B?dFJQN1ZIdnIyUVp4YndtSFBCRVhSVW93QytYdFpXUFRESGxUbmtjdWZOaENH?= =?utf-8?B?MitSVC9iNC9XM2ZrUi9takVGcWpIaXQ2NHBKNUJkZXBUUXZnL0tWWWdhR0xE?= =?utf-8?B?Q2ZBcnppVmtvWUd6Q3p3ZFUyN2JKajRjVUtFQldXVlhQVEtOaUxGUlNreGlw?= =?utf-8?B?S0FCMTM3WVZ2UXF3WS9XUmJNbkVsR3VJMWJaeXpqVWp5R01ISVBidmp2TUMx?= =?utf-8?B?MVBubkY2SDE1SVgwNldHVGtyTDluZjRqVzZCazR6R0E4SXBReWhEcWk0K2xj?= =?utf-8?B?d2VzRFAzd0cyVFRVdXZHRVVxZFdRdEFRTVk4RFZ2QkhGMFZyUWF4cGYzNFE0?= =?utf-8?B?aXZHaC8rUzhEZnBBbE1EUHRVMFo1b2xaV3YrbEQwMTFCazZEaHhPVWovWHB1?= =?utf-8?B?OTZBakY5Z1hiMHdXdjY1Q3dLNk9PNFlOU1hkU1dWUURETFRReTZHaVQ3NzRS?= =?utf-8?B?bW5FejVWVXNHclZzVkRXVFdPd20zS0tNdXpGYTk1dnJtQWc5V01yUFlpakZ6?= =?utf-8?B?dzgydW9raXhXQ3g3YUIvS2hvem1NL1l6TjZLSnA3bktmSnBFZjZSaDVxZ2k5?= =?utf-8?B?TU1hdzBzTFVLM09wMEVPN0owNlhoemh5WkMyL1dpY21HdmIzL3NSWnZEWUsv?= =?utf-8?B?ZFE9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: tOuocpU46pZ1CTFKMROJ4QiHppYvosLduRdhDMOVsHuXeGVA6qsfWcTHGw010FkKRGjlq6w6BPQbXvpZAWx4Gj9QTIuukzw3kLBw5T7DGL3tsbxESopDip9O61/MKsbgaVJJ5I5X7gHcsX4kzyui2XR0WhHj4ifwc9TZ1SrEQ95thB0dcc032aCFuo2kJdoK78fh5XaINlyIom12eFgGCjNrQgVHf9ntBErNtVMZd7No4eZvWx7OqEeUh/5KvayJqLyzLnblXhMffr7deW0I6l0nXOgsGtOHY/m8rJtrv5j8k8DLMbjeZZouhA6dh6chxmkbsRLzLippeK+b+cgARawW+hoSBn7fPa4AW3Y0xDrx46c4rpgC/vnDRKyf2vYyL+UPRfvchkcveReode6xmGiqIow0N+qlPwxB1qYukpOzgps4awaa2ZmqqRw2knzpel7ngRH3TIQ8N6UTMBuotGzQjR2Od7+FXZSjLO0Gj1rMqMjIF4fKHAVa0Czr8l6GOmUt+FjqjBEgRRJxPxeRgJeVnLlC5Ki8Ko/lnRwJtvtVDWAxQ6zEkUM4Q3Q4tRUKonRO+ZBFftre8YkGpPnnFPhFmTaDXMo27GCWA917Lp3a33B5thywFGEQjQxnzQrmPl42gyvIs+Sh1DofxVEdU1qvp8ztAjhWJqGMIGpdBHbIyeymfNGLM76DHUc0gh8YKhJzX7I+Lae75dWeEuVxLoZTLCo9qDizRbGnUpZgBeeV59POc8UmFIt1JIqlE797S+EuBEiOfi+rvHpXvJ4zDuOKuFdzyyP68ejyI8QlTKwxu25b+RjW/UgovQ9p7NUCyI1K4/+C+HsA6E3+4JnFd35F6pzXva/hncXtwj+FPrk7Z8fZG0Z7c+BOuGuCogMS X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: fded8048-ee0b-4c04-10dc-08db70c5989f X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Jun 2023 13:03:37.8164 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: Ls90AyVRlziEs8Roc0f6JzJvpgGlTiDYlbHh/ZBQWCjn0teaKvSD4Mvqu1ZFPgKKbsBcGUkhAJAT+bvN1y61XdWfAcr7grtgXQfvNFcryKk= X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA2PR03MB5930 On 19/06/2023 1:18 pm, Olaf Hering wrote: > There are just two callers of this function. It is identical to the > checks done in __trace_var. > The commit message of 9a86ac1aa3d2ebe1be05dc7fe78dd6759aa3241d > ("xentrace 5/7: Additional tracing for the shadow code.") gives no > indication what the benefit of this function is. > > Signed-off-by: Olaf Hering This looks like it is meant to avoid double-tracing the #PF if TRC_SHADOW is active. ~Andrew From xen-devel-bounces@lists.xenproject.org Mon Jun 19 13:23:49 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 19 Jun 2023 13:23:49 +0000 Received: from list by lists.xenproject.org with outflank-mailman.551082.860400 (Exim 4.92) (envelope-from ) id 1qBEqo-0007qy-HJ; Mon, 19 Jun 2023 13:23:22 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 551082.860400; Mon, 19 Jun 2023 13:23:22 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBEqo-0007qr-DH; Mon, 19 Jun 2023 13:23:22 +0000 Received: by outflank-mailman (input) for mailman id 551082; Mon, 19 Jun 2023 13:23:21 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBEqm-0007ql-Vg for xen-devel@lists.xenproject.org; Mon, 19 Jun 2023 13:23:21 +0000 Received: from out1-smtp.messagingengine.com (out1-smtp.messagingengine.com [66.111.4.25]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 726e9545-0ea4-11ee-b234-6b7b168915f2; Mon, 19 Jun 2023 15:23:18 +0200 (CEST) Received: from compute1.internal (compute1.nyi.internal [10.202.2.41]) by mailout.nyi.internal (Postfix) with ESMTP id C23375C0223; Mon, 19 Jun 2023 09:23:14 -0400 (EDT) Received: from mailfrontend1 ([10.202.2.162]) by compute1.internal (MEProxy); Mon, 19 Jun 2023 09:23:14 -0400 Received: by mail.messagingengine.com (Postfix) with ESMTPA; Mon, 19 Jun 2023 09:23:12 -0400 (EDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 726e9545-0ea4-11ee-b234-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= invisiblethingslab.com; h=cc:cc:content-type:content-type:date :date:from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:sender:subject:subject:to:to; s=fm2; t= 1687180994; x=1687267394; bh=ASPRc812BqeG3IP2gOvPXV96skEUS/n5Qf0 rjro4vAs=; b=cIXuO0NivKdu3dZltGFduow/h3a1BhzFNX9L8BToqBYSW09jkc4 VjCG4/YgXSjK0ll6hWzk97FmO8HJfIUh5uV2B1xg6/DQzIpQggPx4iQ7aaRMYKnY UZ6GAuNMOv0nVGNDrGpIVgOV827zFH0uHBPq8Mgmyr8T4Bid6/l+QuBuInnOvqnX cx1Rx9Pfx8SJI+679YakyBXX+hc2yIe+ctl8oUoYlEn6aqnPSNwcvkF1niJo3scs xjz3iVCGzo44bC1CbGtJrrrNBwsH7KlOmZUkCX0v/uUH0Z81HNl5zKl48M7/iQEd 8gpx/mVneG5+dot4dpW4xi69l7Np51H8bNw== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-type:content-type:date:date :feedback-id:feedback-id:from:from:in-reply-to:in-reply-to :message-id:mime-version:references:reply-to:sender:subject :subject:to:to:x-me-proxy:x-me-proxy:x-me-sender:x-me-sender :x-sasl-enc; s=fm2; t=1687180994; x=1687267394; bh=ASPRc812BqeG3 IP2gOvPXV96skEUS/n5Qf0rjro4vAs=; b=feWosbWJs2yEObUFFmxbxCkEmBlLR 8w+YwJJUg3vIRs96ut6UsOVXEBicuo13LjcGFUePYcRfkYBZhFqLVvK0LAe2oAh0 Q57ODyt1xwNHjtt4t9B3iWDx6YEBZ98vooMq5J7/cXxuJamJ7bsn3L4weJ+r7fXy VzyifQPw3XPjGqv5ExTvwMwrikjnFH4UV2XWvL+VS8ikJVFG92Xrkqs04ql9zHJB KyICrrLu49oMyrMXuD/Z9MEbihVRmbDH6ioK0i3TZ56yjIAZ0ZDLtSDNBd0NuBnV 7KflO0CiK3tYeYgIUjY4wd9M6/Ur6LlEDQK0/4dmaBJukZal6W7RnxRtQ== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvhedrgeefvddgiedvucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne cujfgurhepfffhvfevuffkfhggtggujgesghdtreertddtjeenucfhrhhomhepofgrrhgv khcuofgrrhgtiiihkhhofihskhhiqdfikphrvggtkhhiuceomhgrrhhmrghrvghksehinh hvihhsihgslhgvthhhihhnghhslhgrsgdrtghomheqnecuggftrfgrthhtvghrnhepgfdu leetfeevhfefheeiteeliefhjefhleduveetteekveettddvgeeuteefjedunecuvehluh hsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhfrhhomhepmhgrrhhmrghrvghk sehinhhvihhsihgslhgvthhhihhnghhslhgrsgdrtghomh X-ME-Proxy: Feedback-ID: i1568416f:Fastmail Date: Mon, 19 Jun 2023 15:23:10 +0200 From: Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= To: Juergen Gross Cc: Demi Marie Obenour , Stefano Stabellini , Oleksandr Tyshchenko , Jan Beulich , Konrad Rzeszutek Wilk , Xen developer discussion , Linux Kernel Mailing List , stable@vger.kernel.org Subject: Re: [PATCH] xen: speed up grant-table reclaim Message-ID: References: <20230610153232.1859-1-demi@invisiblethingslab.com> <85275900-6b6a-5391-a2a0-16704df3f00f@suse.com> <1150fd9c-25c8-c91c-4ca2-2c587e3fbb43@suse.com> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="oN+TsMtwsmB08J9P" Content-Disposition: inline In-Reply-To: <1150fd9c-25c8-c91c-4ca2-2c587e3fbb43@suse.com> --oN+TsMtwsmB08J9P Content-Type: text/plain; protected-headers=v1; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Date: Mon, 19 Jun 2023 15:23:10 +0200 From: Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= To: Juergen Gross Cc: Demi Marie Obenour , Stefano Stabellini , Oleksandr Tyshchenko , Jan Beulich , Konrad Rzeszutek Wilk , Xen developer discussion , Linux Kernel Mailing List , stable@vger.kernel.org Subject: Re: [PATCH] xen: speed up grant-table reclaim On Tue, Jun 13, 2023 at 08:45:31AM +0200, Juergen Gross wrote: > On 12.06.23 22:09, Demi Marie Obenour wrote: > > On Mon, Jun 12, 2023 at 08:27:59AM +0200, Juergen Gross wrote: > > > On 10.06.23 17:32, Demi Marie Obenour wrote: > > > > When a grant entry is still in use by the remote domain, Linux must= put > > > > it on a deferred list. > > >=20 > > > This lacks quite some context. > > >=20 > > > The main problem is related to the grant not having been unmapped aft= er > > > the end of a request, but the side granting the access is assuming th= is > > > should be the case. > >=20 > > The GUI agent has relied on deferred grant reclaim for as long as it has > > existed. One could argue that doing so means that the agent is misusing > > gntalloc, but this is not documented anywhere. A better fix would be to > > use IOCTL_GNTDEV_SET_UNMAP_NOTIFY in the GUI daemon. >=20 > I don't think this is a gntalloc specific problem. You could create the s= ame > problem with a kernel implementation. >=20 > And yes, using IOCTL_GNTDEV_SET_UNMAP_NOTIFY might be a good idea. Just a comment to this one: while in practice it might work most of the time, in theory there could be hundreds or even thousands of mappings at the same time and event channels seems to be too scarce resource to get unmap notification for all of those (even if you'd use an event channel per grant area, not individual page). As said to Demi elsewhere, our GUI protocol might have a way to signal when unmapping happened, but the backend (the side mapping the grants) would need to know when they actually were unmapped by another process (in some configurations, like Wayland mentioned below, the process itself doesn't give us this info). Ideally, for this we'd need something similar to IOCTL_GNTDEV_SET_UNMAP_NOTIFY that notifies the mapping side, not the other domain. I have no idea how such API should look (just poll()/read() on the gntdev FD used for that IOCTL?) or whether it's really worth adding such API. Or maybe something like this already exists? In worst case, even polling for this info (so - a way to check if process P has grant G from domain D still mapped) would do, although that wouldn't be ideal. > > > In general this means that the two sides implementing the protocol do= n't > > > agree how it should work, or that the protocol itself has a flaw. > >=20 > > What would a better solution be? This is going to be particularly > > tricky with Wayland, as the wl_shm protocol makes absolutely no > > guarantees that compositors will promptly release the mapping and > > provides no way whatsoever for Wayland clients to know when this has > > happened. Relying on an LD_PRELOAD hack is not sustainable. Anyway, besides trying to fix our usage of grant tables, I think it's still worthwhile to improve deferred reclaim, either by making the limit per iteration configurable (sysfs node / writable module parameter is fine) or by making the limit not needed by using workqueue. The former sounds like a smaller code change. --=20 Best Regards, Marek Marczykowski-G=C3=B3recki Invisible Things Lab --oN+TsMtwsmB08J9P Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQEzBAEBCAAdFiEEhrpukzGPukRmQqkK24/THMrX1ywFAmSQVr4ACgkQ24/THMrX 1yyh2gf+NouvKQSmSXw0WMD1FLa4ZACvsVdcsJy7Prup6EjdKYT/5hicLhNOM7Os 0ctvuvVYt1gEUrJu/BsWgCd2u55yYEe4VH2oeqiDJF3kqhUFOTRCzpWzr3+3COzf e4gzlHfhwc82S9VrvhwGsCOiWRv+BduUa3x/AlWufrDjloIOYZ4tWuaCptYh/vnP 9khLdrg7gWDFXbslRW21rrPkuQDKqLe9E4q4bgBlgjKMQd9Qyw6KxyF+gd5I0WDl BPWJnIqX7ps4bnxNQw7r6VvIjkd9UhMG9pryM4mYSC5/+oO86TOwuboBqWw+SvHJ OXhGeB0gN1QZxMuvnp9ipUIci3NIcw== =7szl -----END PGP SIGNATURE----- --oN+TsMtwsmB08J9P-- From xen-devel-bounces@lists.xenproject.org Mon Jun 19 13:35:01 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 19 Jun 2023 13:35:01 +0000 Received: from list by lists.xenproject.org with outflank-mailman.551089.860410 (Exim 4.92) (envelope-from ) id 1qBF1x-0000wY-H2; Mon, 19 Jun 2023 13:34:53 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 551089.860410; Mon, 19 Jun 2023 13:34:53 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBF1x-0000wR-E4; Mon, 19 Jun 2023 13:34:53 +0000 Received: by outflank-mailman (input) for mailman id 551089; Mon, 19 Jun 2023 13:34:52 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBF1w-0000wG-DY for xen-devel@lists.xenproject.org; Mon, 19 Jun 2023 13:34:52 +0000 Received: from mail-lf1-x12b.google.com (mail-lf1-x12b.google.com [2a00:1450:4864:20::12b]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 1152fa1f-0ea6-11ee-b234-6b7b168915f2; Mon, 19 Jun 2023 15:34:51 +0200 (CEST) Received: by mail-lf1-x12b.google.com with SMTP id 2adb3069b0e04-4f86e6e4038so1415838e87.0 for ; Mon, 19 Jun 2023 06:34:51 -0700 (PDT) Received: from fedora.. ([94.75.70.14]) by smtp.gmail.com with ESMTPSA id f26-20020a2e9e9a000000b002adb0164258sm5222236ljk.112.2023.06.19.06.34.49 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 19 Jun 2023 06:34:49 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 1152fa1f-0ea6-11ee-b234-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687181690; x=1689773690; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=Eu7fO1ZtUkyuZKkIlVGX4BqB+SbgpnWwL0oPy3HvOJ8=; b=BBhxKxmFj7+/dNMThwgIPQRUQMStVa6T9t14QMQa8S3fEd/0VBKShcoiYDIWOUvs25 KKwPBS8CvFIqs4vMLHIaUS2bFZlGlPN5tfRqLf3h6TjjbdPp0Hf+M+nbockLqC93nc1v WS4Ghdvrja/79d4cNxyKc4Pt4WwbP2SHTdH+X2VrPWxjMWjaWrBrHFLyB5tp9zLwP9io ZabgztGuwI1UqwZYCLrZNNmtmCPm6C9B4XM2ZqeXo/GKtvchM/FJGGoailErj/IIC1nF cagvuEE2z7Jk0QLhH9LjUw0HLVWCOoWIkXpbdDHyyU096ThyYofmD6FhNKzpWWl/CLGL vRXQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687181690; x=1689773690; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=Eu7fO1ZtUkyuZKkIlVGX4BqB+SbgpnWwL0oPy3HvOJ8=; b=cL7fu9FhVFMshvM+8Mz144wad/6oaSG/DluKHmUYZ3w/SaREx5TEhQvKUNMvynCKtA WZ/nxcaeZGwS5dPQcKZAzmZNQGzU8W72DJRT+Gwj2Rp9zRjU615thfMM2JqJJRAdiIUh 9fPoAOWnU7oI3+6+KyYLYHmLJwu+/Bv2K590zmHmBZzPdMeLBBIgYeUj4ZoZwjl91t/t BCHPq0mGhWvlDQI+TshpdK48HVIAiPUVubeSlX3ZFAk/RtB2uf5JLv7VXXRMK30TaMQa xYFJp9Os733YUXUzEicyg3a79V6DO2XmpE3rvxulvoYuXjUQltBSjeyNi6Qvzw3PEqZL MPtw== X-Gm-Message-State: AC+VfDzOtAvhBnaVABozoi2QPUt6J2DYC+shzM5PDnQZKzp6sG+SCjSA LGSC6qPxz5u//8nNID/AQCBNbqvqTmA= X-Google-Smtp-Source: ACHHUZ5Xzd4NAKdGmb/+KnbZkBkIY4xf2wPnLW/slaGUuoI2okbCFqQF6E/wzR2FKjjl2VK+fFVzjQ== X-Received: by 2002:a05:6512:1308:b0:4eb:4258:bf62 with SMTP id x8-20020a056512130800b004eb4258bf62mr5704548lfu.8.1687181690275; Mon, 19 Jun 2023 06:34:50 -0700 (PDT) From: Oleksii Kurochko To: xen-devel@lists.xenproject.org Cc: Jan Beulich , Andrew Cooper , Julien Grall , Oleksii Kurochko , Bob Eshleman , Alistair Francis , Connor Davis Subject: [PATCH v2 0/6] xen/riscv: introduce identity mapping Date: Mon, 19 Jun 2023 16:34:41 +0300 Message-Id: X-Mailer: git-send-email 2.40.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit The patch series introduces things necessary to implement identity mapping: 1. Make identity mapping for the entire Xen. 2. Enable MMU. 3. Jump to the virtual address world 4. Remove identity mapping. Also current patch series introduces the calculation of physical offset before MMU is enabled as access to physical offset will be calculated wrong after MMU will be enabled because access to phys_off variable is PC-relative and in the case when linker address != load address, it will cause MMU fault. One more thing that was done is: * Added SPDX tags. * move extern of cpu0_boot_stack to a header. The reason for this patch series can be found here: https://lore.kernel.org/xen-devel/4e336121-fc0c-b007-bf7b-430352563d55@citrix.com/ --- Changes in V2: - update the patch series message. - drop patches from the previous version of the patch series: * xen/riscv: add __ASSEMBLY__ guards". ( merged ) * xen/riscv: make sure that identity mapping isn't bigger then page size ( entire Xen is 1:1 mapped so there is no need for the checks from the patch ) - add .sbss.* and put it befor .bss* . - move out reset_stack() to .text section. - add '__ro_after_init' for phys_offset variable. - add '__init' for calc_phys_offset(). - declaring variable phys_off as non static as it will be used in head.S. - update definition of PGTBL_INITIAL_COUNT and the comment above. - code style fixes. - remove id_addrs array becase entire Xen is mapped. - reverse condition for cycle inside remove_identity_mapping(). - fix page table walk in remove_identity_mapping(). - save hart_id and dtb_addr before call MMU related C functions - use phys_offset variable instead of doing calcultations to get phys offset in head.S file. ( it can be easily done as entire Xen is 1:1 mapped now ) - declare enable_muu() as __init. - Update SPDX tags. - Add Review-By/Suggested-By for some patches. - code style fixes. Oleksii Kurochko (6): xen/riscv: add .sbss section to .bss xen/riscv: introduce reset_stack() function xen/riscv: introduce function for physical offset calculation xen/riscv: introduce identity mapping xen/riscv: add SPDX tags xen/riscv: move extern of cpu0_boot_stack to header xen/arch/riscv/include/asm/config.h | 2 + xen/arch/riscv/include/asm/current.h | 2 + xen/arch/riscv/include/asm/early_printk.h | 2 + xen/arch/riscv/include/asm/mm.h | 9 +- xen/arch/riscv/include/asm/page-bits.h | 2 + xen/arch/riscv/include/asm/page.h | 2 + xen/arch/riscv/include/asm/traps.h | 2 + xen/arch/riscv/include/asm/types.h | 2 + xen/arch/riscv/mm.c | 104 +++++++++++++--------- xen/arch/riscv/riscv64/head.S | 46 +++++++++- xen/arch/riscv/setup.c | 16 +--- xen/arch/riscv/xen.lds.S | 2 +- 12 files changed, 136 insertions(+), 55 deletions(-) -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 19 13:35:01 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 19 Jun 2023 13:35:01 +0000 Received: from list by lists.xenproject.org with outflank-mailman.551094.860455 (Exim 4.92) (envelope-from ) id 1qBF22-000214-14; Mon, 19 Jun 2023 13:34:58 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 551094.860455; Mon, 19 Jun 2023 13:34:57 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBF21-00020g-Sb; Mon, 19 Jun 2023 13:34:57 +0000 Received: by outflank-mailman (input) for mailman id 551094; Mon, 19 Jun 2023 13:34:57 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBF21-0000wG-2P for xen-devel@lists.xenproject.org; Mon, 19 Jun 2023 13:34:57 +0000 Received: from mail-lj1-x231.google.com (mail-lj1-x231.google.com [2a00:1450:4864:20::231]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 135742c1-0ea6-11ee-b234-6b7b168915f2; Mon, 19 Jun 2023 15:34:54 +0200 (CEST) Received: by mail-lj1-x231.google.com with SMTP id 38308e7fff4ca-2b466066950so33046481fa.2 for ; Mon, 19 Jun 2023 06:34:54 -0700 (PDT) Received: from fedora.. ([94.75.70.14]) by smtp.gmail.com with ESMTPSA id f26-20020a2e9e9a000000b002adb0164258sm5222236ljk.112.2023.06.19.06.34.53 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 19 Jun 2023 06:34:53 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 135742c1-0ea6-11ee-b234-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687181694; x=1689773694; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=g5CVjF/hqhtai/8e3vIC1wUJzJlWbPdW3j0oBx5KVr8=; b=j6YcsFJs1tQo7uxgUdoGnDmykVVLTJzX1VQ93j6Te3N4W5L0Kir/FqkQPdQbCLZIUQ 3NagYGigQKSR+DF0iSW75CnMxhLnMOZwBVhoLkoaRn1I/b5AZOBCg4aK3J3eXYCy4wVX u7IPRmFQ8BhFmpvio9BE0IdRag/ZhYz9A7Es9FR/rXKTuJX24v2TANYO248aD2FbypQO VNwkFMescN01bUZkMFjQT92FmTd984ml20I4umjcZU1GWPDOAaXjmY5hWFfuSM+mefJE kTw9IvEBephDuwt+vRE9pT54gYXEXkD3iY9Y0lwsMiJaR93sWT9TJogSprBrOSzIrqZV UmCg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687181694; x=1689773694; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=g5CVjF/hqhtai/8e3vIC1wUJzJlWbPdW3j0oBx5KVr8=; b=iVk2QdDLjBeRY/wRA1F9IcxpNgmv8T6tfQ/+pOhjtBR5R0nlM1B7qoFFhKXQw8EFw8 LRKI4KCu1M0lqzcB1bAHkwrUO8HyaGURr5wHEaQovy+jh9njX7KnVK9F3uMz2CUpsxej oUgCJR1Xdeu7zBPSWaXhR+MHKnyqo6vnsHsA0uQGVyNDhLW2WDeZ9s+/fsqFyc8C4pHw JGRS7c6inev7aBHGG8OQSZFg6yMEeqAMUv4+eTMp0OuTOwv1Dw/l+eeleUBzMcBo28Om yrNXnrZ6cMr7Dp1w8UrKAPRC+EMCzLlZ0SsvDjMG8aYnBpiWcavTk83oiJEdbdbXS88a pf1w== X-Gm-Message-State: AC+VfDxX5kr2342xhsP1OgJyJrK/DY8bKob2BXf/Ua+sG2ZPcnwTTSAB E7bSoAnZ0yPqDOOxiTZwc0N4iejY+uw= X-Google-Smtp-Source: ACHHUZ6Jm/ZgYJwHq2MaQVAp6h+Ozy6XKDvbFPp0kkAXh/HL30m7RY6IVvCmgU3VQj8w0bau+tbKBg== X-Received: by 2002:a2e:94c1:0:b0:2af:1817:26e1 with SMTP id r1-20020a2e94c1000000b002af181726e1mr6013828ljh.30.1687181693813; Mon, 19 Jun 2023 06:34:53 -0700 (PDT) From: Oleksii Kurochko To: xen-devel@lists.xenproject.org Cc: Jan Beulich , Andrew Cooper , Julien Grall , Oleksii Kurochko , Bob Eshleman , Alistair Francis , Connor Davis Subject: [PATCH v2 5/6] xen/riscv: add SPDX tags Date: Mon, 19 Jun 2023 16:34:46 +0300 Message-Id: <19dfd66d1a446bf1f5cdccd74b7a64f56baa8f5c.1687178053.git.oleksii.kurochko@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Signed-off-by: Oleksii Kurochko Suggested-by: Andrew Cooper --- Changes in V2: - change SPDX tags from GPL-2.0-or-later to GPL-2.0-only. - add Suggested-by: Andrew Cooper . --- xen/arch/riscv/include/asm/current.h | 2 ++ xen/arch/riscv/include/asm/early_printk.h | 2 ++ xen/arch/riscv/include/asm/mm.h | 2 ++ xen/arch/riscv/include/asm/page-bits.h | 2 ++ xen/arch/riscv/include/asm/page.h | 2 ++ xen/arch/riscv/include/asm/traps.h | 2 ++ xen/arch/riscv/include/asm/types.h | 2 ++ xen/arch/riscv/mm.c | 2 ++ xen/arch/riscv/setup.c | 2 ++ 9 files changed, 18 insertions(+) diff --git a/xen/arch/riscv/include/asm/current.h b/xen/arch/riscv/include/asm/current.h index d87e6717e0..d84f15dc50 100644 --- a/xen/arch/riscv/include/asm/current.h +++ b/xen/arch/riscv/include/asm/current.h @@ -1,3 +1,5 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ + #ifndef __ASM_CURRENT_H #define __ASM_CURRENT_H diff --git a/xen/arch/riscv/include/asm/early_printk.h b/xen/arch/riscv/include/asm/early_printk.h index 05106e160d..85e60df33a 100644 --- a/xen/arch/riscv/include/asm/early_printk.h +++ b/xen/arch/riscv/include/asm/early_printk.h @@ -1,3 +1,5 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ + #ifndef __EARLY_PRINTK_H__ #define __EARLY_PRINTK_H__ diff --git a/xen/arch/riscv/include/asm/mm.h b/xen/arch/riscv/include/asm/mm.h index 500fdc9c5a..3f694a43ef 100644 --- a/xen/arch/riscv/include/asm/mm.h +++ b/xen/arch/riscv/include/asm/mm.h @@ -1,3 +1,5 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ + #ifndef _ASM_RISCV_MM_H #define _ASM_RISCV_MM_H diff --git a/xen/arch/riscv/include/asm/page-bits.h b/xen/arch/riscv/include/asm/page-bits.h index 4a3e33589a..8f1f474371 100644 --- a/xen/arch/riscv/include/asm/page-bits.h +++ b/xen/arch/riscv/include/asm/page-bits.h @@ -1,3 +1,5 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ + #ifndef __RISCV_PAGE_BITS_H__ #define __RISCV_PAGE_BITS_H__ diff --git a/xen/arch/riscv/include/asm/page.h b/xen/arch/riscv/include/asm/page.h index 22b36e03a4..95074e29b3 100644 --- a/xen/arch/riscv/include/asm/page.h +++ b/xen/arch/riscv/include/asm/page.h @@ -1,3 +1,5 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ + #ifndef _ASM_RISCV_PAGE_H #define _ASM_RISCV_PAGE_H diff --git a/xen/arch/riscv/include/asm/traps.h b/xen/arch/riscv/include/asm/traps.h index f3fb6b25d1..3fef318478 100644 --- a/xen/arch/riscv/include/asm/traps.h +++ b/xen/arch/riscv/include/asm/traps.h @@ -1,3 +1,5 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ + #ifndef __ASM_TRAPS_H__ #define __ASM_TRAPS_H__ diff --git a/xen/arch/riscv/include/asm/types.h b/xen/arch/riscv/include/asm/types.h index 0c0ce78c8f..c2cdfd9caa 100644 --- a/xen/arch/riscv/include/asm/types.h +++ b/xen/arch/riscv/include/asm/types.h @@ -1,3 +1,5 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ + #ifndef __RISCV_TYPES_H__ #define __RISCV_TYPES_H__ diff --git a/xen/arch/riscv/mm.c b/xen/arch/riscv/mm.c index 2693b817c5..663048c783 100644 --- a/xen/arch/riscv/mm.c +++ b/xen/arch/riscv/mm.c @@ -1,3 +1,5 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ + #include #include #include diff --git a/xen/arch/riscv/setup.c b/xen/arch/riscv/setup.c index c4ef0b3165..6593f601c1 100644 --- a/xen/arch/riscv/setup.c +++ b/xen/arch/riscv/setup.c @@ -1,3 +1,5 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ + #include #include -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 19 13:35:01 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 19 Jun 2023 13:35:01 +0000 Received: from list by lists.xenproject.org with outflank-mailman.551092.860440 (Exim 4.92) (envelope-from ) id 1qBF20-0001gd-Ch; Mon, 19 Jun 2023 13:34:56 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 551092.860440; Mon, 19 Jun 2023 13:34:56 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBF20-0001gR-9K; Mon, 19 Jun 2023 13:34:56 +0000 Received: by outflank-mailman (input) for mailman id 551092; Mon, 19 Jun 2023 13:34:55 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBF1z-0000wG-2K for xen-devel@lists.xenproject.org; Mon, 19 Jun 2023 13:34:55 +0000 Received: from mail-lj1-x231.google.com (mail-lj1-x231.google.com [2a00:1450:4864:20::231]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 1249333c-0ea6-11ee-b234-6b7b168915f2; Mon, 19 Jun 2023 15:34:52 +0200 (CEST) Received: by mail-lj1-x231.google.com with SMTP id 38308e7fff4ca-2b475b54253so18176251fa.2 for ; Mon, 19 Jun 2023 06:34:52 -0700 (PDT) Received: from fedora.. ([94.75.70.14]) by smtp.gmail.com with ESMTPSA id f26-20020a2e9e9a000000b002adb0164258sm5222236ljk.112.2023.06.19.06.34.51 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 19 Jun 2023 06:34:52 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 1249333c-0ea6-11ee-b234-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687181692; x=1689773692; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=sORtZXgE060MfqgzUMWkg8dUi4XV3lqZfHNe2K/q7sI=; b=OR0omCmUNaVSa+ABBOx/mOMTZqtSrg6iAJ0Abk/76R1iFgfm8Frq9meARruSN+bmG0 NHlQS33KVXMqdgY1V0vJxMgQ71srBSCBbX6JhzlwUhbIURabBcuCK3QcKg69GQKQA2qQ 2LiusC94Q8PFXAycaXF2gXuujHRoZO0GzijoyHLgdpWbsf0uZONS1QqeRpJ6pDhXhRta 8D5V83oHK62h5iZ7mxS/TG1D7/B1vrjcXWwbx/JEI8WutdZlCbE6RqgXmIaQ+7r3bJ/I jt8519iFNXlj+XAD+OndzCKjxpQQl44lgAyQPzMEXV+27YHmuuJMmLplQ4ctqg250ZsT jZDA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687181692; x=1689773692; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=sORtZXgE060MfqgzUMWkg8dUi4XV3lqZfHNe2K/q7sI=; b=Dm31vlox2de0hWddux2YxDjuoe5gv7Z7HLuImeLxZhPfGq7WV8oW1U3LO+L/bar5+P HS9Xg5o/VRs1swil0sFi1iCFimaDIdxDv8SUVkF3J7aXjVX0idbsCKdR05GcHrqTYvkV Wj8+HNTvMDgmQ+XAtf9BRKbpPGIA4l54NWVXBwBrFPZvXTBThQ0wlNJ4vGDvQ4l50X05 mIeFlnjcWafoRgQJgYIPq1SOMkYCIXi9rT4o41npbz3Ent6sryCSQl1uSYU1SoByom2d 3LYEXMlcLwm5vZDEZnY+Hzi0HdFypSyt6gWSdWWBQKVhKdfs+Fc5Bfc1vuPFqHselLsb /e4g== X-Gm-Message-State: AC+VfDyL56HKCbFsG1jH1/gqJHBPgDm4lnVGf3b46rzNwydfQc4sBlXX 50BtVxu57D9eu6A0S15661ree7RYRd4= X-Google-Smtp-Source: ACHHUZ7RsJ0m8hdhaMr1HpFujvB18TcExNhz338pGRj9J7mC5H49DOpM8HXn7sen6S+9NG4lwYxjIA== X-Received: by 2002:a2e:b603:0:b0:2b4:6d7e:4b08 with SMTP id r3-20020a2eb603000000b002b46d7e4b08mr2968830ljn.35.1687181692290; Mon, 19 Jun 2023 06:34:52 -0700 (PDT) From: Oleksii Kurochko To: xen-devel@lists.xenproject.org Cc: Jan Beulich , Andrew Cooper , Julien Grall , Oleksii Kurochko , Bob Eshleman , Alistair Francis , Connor Davis Subject: [PATCH v2 3/6] xen/riscv: introduce function for physical offset calculation Date: Mon, 19 Jun 2023 16:34:44 +0300 Message-Id: X-Mailer: git-send-email 2.40.1 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit The function was introduced to calculate and save physical offset before MMU is enabled because access to start() is PC-relative and in case of linker_addr != load_addr it will result in incorrect value in phys_offset. Signed-off-by: Oleksii Kurochko --- Changes in V2: - add __ro_after_init for phys_offset variable. - remove double blank lines. - add __init for calc_phys_offset(). - update the commit message. - declaring variable phys_off as non static as it will be used in head.S. --- xen/arch/riscv/include/asm/mm.h | 2 ++ xen/arch/riscv/mm.c | 18 +++++++++++++++--- xen/arch/riscv/riscv64/head.S | 2 ++ 3 files changed, 19 insertions(+), 3 deletions(-) diff --git a/xen/arch/riscv/include/asm/mm.h b/xen/arch/riscv/include/asm/mm.h index 64293eacee..996041ce81 100644 --- a/xen/arch/riscv/include/asm/mm.h +++ b/xen/arch/riscv/include/asm/mm.h @@ -11,4 +11,6 @@ void setup_initial_pagetables(void); void enable_mmu(void); void cont_after_mmu_is_enabled(void); +void calc_phys_offset(void); + #endif /* _ASM_RISCV_MM_H */ diff --git a/xen/arch/riscv/mm.c b/xen/arch/riscv/mm.c index 8ceed445cf..570033f17f 100644 --- a/xen/arch/riscv/mm.c +++ b/xen/arch/riscv/mm.c @@ -1,3 +1,4 @@ +#include #include #include #include @@ -19,9 +20,10 @@ struct mmu_desc { extern unsigned char cpu0_boot_stack[STACK_SIZE]; -#define PHYS_OFFSET ((unsigned long)_start - XEN_VIRT_START) -#define LOAD_TO_LINK(addr) ((addr) - PHYS_OFFSET) -#define LINK_TO_LOAD(addr) ((addr) + PHYS_OFFSET) +unsigned long __ro_after_init phys_offset; + +#define LOAD_TO_LINK(addr) ((unsigned long)(addr) - phys_offset) +#define LINK_TO_LOAD(addr) ((unsigned long)(addr) + phys_offset) /* * It is expected that Xen won't be more then 2 MB. @@ -273,3 +275,13 @@ void __init noreturn noinline enable_mmu() switch_stack_and_jump((unsigned long)cpu0_boot_stack + STACK_SIZE, cont_after_mmu_is_enabled); } + +/* + * calc_phys_offset() should be used before MMU is enabled because access to + * start() is PC-relative and in case when load_addr != linker_addr phys_offset + * will have an incorrect value + */ +void __init calc_phys_offset(void) +{ + phys_offset = (unsigned long)start - XEN_VIRT_START; +} diff --git a/xen/arch/riscv/riscv64/head.S b/xen/arch/riscv/riscv64/head.S index 2c0304646a..850fbb58a7 100644 --- a/xen/arch/riscv/riscv64/head.S +++ b/xen/arch/riscv/riscv64/head.S @@ -29,6 +29,8 @@ ENTRY(start) jal reset_stack + jal calc_phys_offset + tail start_xen .section .text, "ax", %progbits -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 19 13:35:01 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 19 Jun 2023 13:35:01 +0000 Received: from list by lists.xenproject.org with outflank-mailman.551093.860450 (Exim 4.92) (envelope-from ) id 1qBF21-0001wz-MU; Mon, 19 Jun 2023 13:34:57 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 551093.860450; Mon, 19 Jun 2023 13:34:57 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBF21-0001wq-Hu; Mon, 19 Jun 2023 13:34:57 +0000 Received: by outflank-mailman (input) for mailman id 551093; Mon, 19 Jun 2023 13:34:56 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBF20-0000wG-2K for xen-devel@lists.xenproject.org; Mon, 19 Jun 2023 13:34:56 +0000 Received: from mail-lj1-x233.google.com (mail-lj1-x233.google.com [2a00:1450:4864:20::233]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 12f430c3-0ea6-11ee-b234-6b7b168915f2; Mon, 19 Jun 2023 15:34:54 +0200 (CEST) Received: by mail-lj1-x233.google.com with SMTP id 38308e7fff4ca-2b477e9d396so16229591fa.3 for ; Mon, 19 Jun 2023 06:34:54 -0700 (PDT) Received: from fedora.. ([94.75.70.14]) by smtp.gmail.com with ESMTPSA id f26-20020a2e9e9a000000b002adb0164258sm5222236ljk.112.2023.06.19.06.34.52 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 19 Jun 2023 06:34:52 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 12f430c3-0ea6-11ee-b234-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687181693; x=1689773693; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=oc9XrpqHGKjN07zKvhZfUAZGEobGlBzlNsUquN7G9EQ=; b=ZkZAUi+4SMhxBZDcxPlPFvUJlTNYtvBiVxqlIc74NR78N8cmRU6dwx4bOQcPTrD//v /lSa61v742q9QyrhK+Coo2pZtVmyjqd/0m7lw0dgS6wa4HluZzy0qY1EhZ9Enew+xY1f hn22DngA8bKj7Lk8zWoCycHnI3I9qoc2hK2FKOcUjgvPgpWubzK0oc+ryyiqgklecjOg FsqDKb06vJbkzFtQ1b8AqUUZ5h0LNedBSLIiONCNy8d5tsx19bUMIt+PN1VRHMA6zWot c0k+B/BZ/qSKuQBB5ab3eg9GLetLmuXfWUuuC2+OdsWXYYK8KjOZFV0GUc38yl68CY0N RJ5A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687181693; x=1689773693; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=oc9XrpqHGKjN07zKvhZfUAZGEobGlBzlNsUquN7G9EQ=; b=iKAWh2VxyLULOnF4p8lVkZQ1i43AEKv/vDzgAL4oUwn1RNDNULGjDmi7b1bPxNAMH2 /rIQ0UR3I1IRISVuQUNYIhLu9C1Y7x1qG13Z4DVLBcjTMEGxPDVRJ9oru2ZveRlN4xKT ONrfGSu/AQbH8aLNCuzM+5t5r++ELonU+Htq5l1BQyqDVRPx1YMVFAkZIJQ/bH1e5X56 63WPGUA9RiAr9hWoIcOdoTjt3jPpmuye5AfBrnIZzCSYkbWDLneS3ppX8Wdfwv+QOviF lo6PGiQsmgFaNnTqW3WexLE/rLMKaje1OD/SSPUdtS5n4TlZ6BzftpeGBI1gyDVtpi2Z uNZA== X-Gm-Message-State: AC+VfDzrRzIAfsgNKOCYIKn9OCwaI3fWEAfiDSyt+sA5ZsUufHG4mTkF YEFQqQu9zCcea/Gq9fRXiENmsnGGbvY= X-Google-Smtp-Source: ACHHUZ6ObWB2MlCYIatUomne6yHJ3k7kGHyiExiyOkvCU5MNLQp59z2Af3xvzIxoDbYY5EVusAiLfw== X-Received: by 2002:a2e:a0ca:0:b0:2b4:6f17:31f7 with SMTP id f10-20020a2ea0ca000000b002b46f1731f7mr2824729ljm.27.1687181693093; Mon, 19 Jun 2023 06:34:53 -0700 (PDT) From: Oleksii Kurochko To: xen-devel@lists.xenproject.org Cc: Jan Beulich , Andrew Cooper , Julien Grall , Oleksii Kurochko , Bob Eshleman , Alistair Francis , Connor Davis Subject: [PATCH v2 4/6] xen/riscv: introduce identity mapping Date: Mon, 19 Jun 2023 16:34:45 +0300 Message-Id: <21d8ce65f718bc10c2213688f79cf5f978bcaf16.1687178053.git.oleksii.kurochko@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit The way how switch to virtual address was implemented in the commit e66003e7be ("xen/riscv: introduce setup_initial_pages") isn't safe enough as: * enable_mmu() depends on hooking all exceptions and pagefault. * Any exception other than pagefault, or not taking a pagefault causes it to malfunction, which means you will fail to boot depending on where Xen was loaded into memory. Instead of the proposed way of switching to virtual addresses was decided to use identity mapping of the entrire Xen and after switching to virtual addresses identity mapping is removed from page-tables. Since it is not easy to keep track where the identity map was mapped, so we will look for the top-level entry exclusive to the identity map and remove it. Fixes: e66003e7be ("xen/riscv: introduce setup_initial_pages") Signed-off-by: Oleksii Kurochko Suggested-by: Andrew Cooper --- Changes in V2: - update definition of PGTBL_INITIAL_COUNT and the comment above. - code style fixes. - 1:1 mapping for entire Xen. - remove id_addrs array becase entire Xen is mapped. - reverse condition for cycle inside remove_identity_mapping(). - fix page table walk in remove_identity_mapping(). - update the commit message. - add Suggested-by: Andrew Cooper - save hart_id and dtb_addr before call MMU related C functions. - use phys_offset variable instead of doing calcultations to get phys offset in head.S file. ( it can be easily done as entire Xen is 1:1 mapped ) - declare enable_muu() as __init. --- xen/arch/riscv/include/asm/config.h | 2 + xen/arch/riscv/include/asm/mm.h | 3 +- xen/arch/riscv/mm.c | 84 ++++++++++++++++------------- xen/arch/riscv/riscv64/head.S | 34 ++++++++++++ xen/arch/riscv/setup.c | 14 +---- 5 files changed, 88 insertions(+), 49 deletions(-) diff --git a/xen/arch/riscv/include/asm/config.h b/xen/arch/riscv/include/asm/config.h index 38862df0b8..fa90ae0898 100644 --- a/xen/arch/riscv/include/asm/config.h +++ b/xen/arch/riscv/include/asm/config.h @@ -1,3 +1,5 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ + #ifndef __RISCV_CONFIG_H__ #define __RISCV_CONFIG_H__ diff --git a/xen/arch/riscv/include/asm/mm.h b/xen/arch/riscv/include/asm/mm.h index 996041ce81..500fdc9c5a 100644 --- a/xen/arch/riscv/include/asm/mm.h +++ b/xen/arch/riscv/include/asm/mm.h @@ -9,7 +9,8 @@ void setup_initial_pagetables(void); void enable_mmu(void); -void cont_after_mmu_is_enabled(void); + +void remove_identity_mapping(void); void calc_phys_offset(void); diff --git a/xen/arch/riscv/mm.c b/xen/arch/riscv/mm.c index 570033f17f..2693b817c5 100644 --- a/xen/arch/riscv/mm.c +++ b/xen/arch/riscv/mm.c @@ -25,6 +25,12 @@ unsigned long __ro_after_init phys_offset; #define LOAD_TO_LINK(addr) ((unsigned long)(addr) - phys_offset) #define LINK_TO_LOAD(addr) ((unsigned long)(addr) + phys_offset) +/* + * Should be removed as soon as enough headers will be merged for inclusion of + * . + */ +#define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0])) + /* * It is expected that Xen won't be more then 2 MB. * The check in xen.lds.S guarantees that. @@ -35,8 +41,10 @@ unsigned long __ro_after_init phys_offset; * * It might be needed one more page table in case when Xen load address * isn't 2 MB aligned. + * + * (CONFIG_PAGING_LEVELS - 1) page tables are needed for identity mapping. */ -#define PGTBL_INITIAL_COUNT ((CONFIG_PAGING_LEVELS - 1) + 1) +#define PGTBL_INITIAL_COUNT ((CONFIG_PAGING_LEVELS - 1) * 2 + 1) pte_t __section(".bss.page_aligned") __aligned(PAGE_SIZE) stage1_pgtbl_root[PAGETABLE_ENTRIES]; @@ -75,6 +83,7 @@ static void __init setup_initial_mapping(struct mmu_desc *mmu_desc, unsigned int index; pte_t *pgtbl; unsigned long page_addr; + bool is_identity_mapping = map_start == pa_start; if ( (unsigned long)_start % XEN_PT_LEVEL_SIZE(0) ) { @@ -108,16 +117,18 @@ static void __init setup_initial_mapping(struct mmu_desc *mmu_desc, { unsigned long paddr = (page_addr - map_start) + pa_start; unsigned int permissions = PTE_LEAF_DEFAULT; + unsigned long addr = is_identity_mapping + ? page_addr : LINK_TO_LOAD(page_addr); pte_t pte_to_be_written; index = pt_index(0, page_addr); - if ( is_kernel_text(LINK_TO_LOAD(page_addr)) || - is_kernel_inittext(LINK_TO_LOAD(page_addr)) ) - permissions = - PTE_EXECUTABLE | PTE_READABLE | PTE_VALID; + if ( is_kernel_text(addr) || + is_kernel_inittext(addr) ) + permissions = + PTE_EXECUTABLE | PTE_READABLE | PTE_VALID; - if ( is_kernel_rodata(LINK_TO_LOAD(page_addr)) ) + if ( is_kernel_rodata(addr) ) permissions = PTE_READABLE | PTE_VALID; pte_to_be_written = paddr_to_pte(paddr, permissions); @@ -232,22 +243,18 @@ void __init setup_initial_pagetables(void) linker_start, linker_end, load_start); + + if ( linker_start == load_start ) + return; + + setup_initial_mapping(&mmu_desc, + load_start, + load_end, + load_start); } -void __init noreturn noinline enable_mmu() +void __init enable_mmu(void) { - /* - * Calculate a linker time address of the mmu_is_enabled - * label and update CSR_STVEC with it. - * MMU is configured in a way where linker addresses are mapped - * on load addresses so in a case when linker addresses are not equal - * to load addresses, after MMU is enabled, it will cause - * an exception and jump to linker time addresses. - * Otherwise if load addresses are equal to linker addresses the code - * after mmu_is_enabled label will be executed without exception. - */ - csr_write(CSR_STVEC, LOAD_TO_LINK((unsigned long)&&mmu_is_enabled)); - /* Ensure page table writes precede loading the SATP */ sfence_vma(); @@ -255,25 +262,30 @@ void __init noreturn noinline enable_mmu() csr_write(CSR_SATP, PFN_DOWN((unsigned long)stage1_pgtbl_root) | RV_STAGE1_MODE << SATP_MODE_SHIFT); +} - asm volatile ( ".p2align 2" ); - mmu_is_enabled: - /* - * Stack should be re-inited as: - * 1. Right now an address of the stack is relative to load time - * addresses what will cause an issue in case of load start address - * isn't equal to linker start address. - * 2. Addresses in stack are all load time relative which can be an - * issue in case when load start address isn't equal to linker - * start address. - * - * We can't return to the caller because the stack was reseted - * and it may have stash some variable on the stack. - * Jump to a brand new function as the stack was reseted - */ +void __init remove_identity_mapping(void) +{ + unsigned int i; + pte_t *pgtbl; + unsigned int index, xen_index; + unsigned long load_addr = LINK_TO_LOAD(_start); - switch_stack_and_jump((unsigned long)cpu0_boot_stack + STACK_SIZE, - cont_after_mmu_is_enabled); + for ( pgtbl = stage1_pgtbl_root, i = 0; + i <= (CONFIG_PAGING_LEVELS - 1); + i++ ) + { + index = pt_index(CONFIG_PAGING_LEVELS - 1 - i, load_addr); + xen_index = pt_index(CONFIG_PAGING_LEVELS - 1 - i, XEN_VIRT_START); + + if ( index != xen_index ) + { + pgtbl[index].pte = 0; + break; + } + + pgtbl = (pte_t *)pte_to_paddr(pgtbl[index]); + } } /* diff --git a/xen/arch/riscv/riscv64/head.S b/xen/arch/riscv/riscv64/head.S index 850fbb58a7..41983ffe63 100644 --- a/xen/arch/riscv/riscv64/head.S +++ b/xen/arch/riscv/riscv64/head.S @@ -29,8 +29,42 @@ ENTRY(start) jal reset_stack + /* + * save hart_id and dtb_base as a0 and a1 register can be used + * by C code ( f.e. setup_initial_pagetables will update a0 and + * a1 ) + */ + mv s0, a0 + mv s1, a1 + jal calc_phys_offset + jal setup_initial_pagetables + + jal enable_mmu + + la t1, phys_offset + REG_L t1, (t1) + + /* Calculate proper VA after jump from 1:1 mapping */ + la t0, .L_primary_switched + sub t0, t0, t1 + + /* Jump from 1:1 mapping world */ + jr t0 + +.L_primary_switched: + /* + * cpu0_boot_stack address is 1:1 mapping related so it should be + * recalculated after jump from 1:1 mapping world as 1:1 mapping + * will be removed soon in start_xen(). + */ + jal reset_stack + + /* restore bootcpu_id and dtb address */ + mv a0, s0 + mv a1, s1 + tail start_xen .section .text, "ax", %progbits diff --git a/xen/arch/riscv/setup.c b/xen/arch/riscv/setup.c index 845d18d86f..c4ef0b3165 100644 --- a/xen/arch/riscv/setup.c +++ b/xen/arch/riscv/setup.c @@ -11,20 +11,10 @@ unsigned char __initdata cpu0_boot_stack[STACK_SIZE] void __init noreturn start_xen(unsigned long bootcpu_id, paddr_t dtb_addr) { - early_printk("Hello from C env\n"); - - setup_initial_pagetables(); - - enable_mmu(); - - for ( ;; ) - asm volatile ("wfi"); + remove_identity_mapping(); - unreachable(); -} + early_printk("Hello from C env\n"); -void __init noreturn cont_after_mmu_is_enabled(void) -{ early_printk("All set up\n"); for ( ;; ) -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 19 13:35:02 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 19 Jun 2023 13:35:02 +0000 Received: from list by lists.xenproject.org with outflank-mailman.551095.860469 (Exim 4.92) (envelope-from ) id 1qBF23-0002RO-F0; Mon, 19 Jun 2023 13:34:59 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 551095.860469; Mon, 19 Jun 2023 13:34:59 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBF23-0002Qc-A6; Mon, 19 Jun 2023 13:34:59 +0000 Received: by outflank-mailman (input) for mailman id 551095; Mon, 19 Jun 2023 13:34:58 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBF22-0000wG-2d for xen-devel@lists.xenproject.org; Mon, 19 Jun 2023 13:34:58 +0000 Received: from mail-lj1-x231.google.com (mail-lj1-x231.google.com [2a00:1450:4864:20::231]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 13931462-0ea6-11ee-b234-6b7b168915f2; Mon, 19 Jun 2023 15:34:55 +0200 (CEST) Received: by mail-lj1-x231.google.com with SMTP id 38308e7fff4ca-2b45e6e1b73so39972241fa.0 for ; Mon, 19 Jun 2023 06:34:55 -0700 (PDT) Received: from fedora.. ([94.75.70.14]) by smtp.gmail.com with ESMTPSA id f26-20020a2e9e9a000000b002adb0164258sm5222236ljk.112.2023.06.19.06.34.53 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 19 Jun 2023 06:34:54 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 13931462-0ea6-11ee-b234-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687181694; x=1689773694; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=A+nQRuKJN5u5llfZLQokcA1AqsaluOe8xrZ2dOYYFlU=; b=IcjnYKnNhrFHWPDVKzhjiky1im4j8NA7VDhZVTZMDDywDb2b7PIBuZnmWwZAkYFZub XKa29BMrVjFyxuTtBW4yMDhYO3S9gDrnU4uD+2ya0VmH4ub5inzmSbrr/EAanncUl3zx Z35vq510+ztCwLilxyEQiOxCDDcIB6iKCLdtqn92wbqmWXzr7A8dtah+4sYBEPKoiXz+ bhrRR3TH4vAixbxwjYSyy5ZtD6kGTCCSN5YUvdBnhQLMr4sY/cPBaNGoe3SLbIFiSfNV EWTD2yN0VrJgLRLleZXaadIq09oxDiX5pqECfh018w0Hfg/s0uOz5TD/S+peJUHqXnFr AbOQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687181694; x=1689773694; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=A+nQRuKJN5u5llfZLQokcA1AqsaluOe8xrZ2dOYYFlU=; b=Qv5X1gz/yJTHomHs3gUA9YW3OwVpYVJjWjizDKCGVkDWzsXuLnHS3ZEEKlAxnt6Ipq e2qhhBBGEStQm34cQMAS5469OHqBzvA+X1DDy4oNt55RXeV2iEXBJVtoO17BudiQKW97 /t1VPLNRtxVofcBm+DNlR2fG1vbAuoFDcqlaE/NOhc6OPui1R/QRrnZnHMxcWmMwkKug mhyekQ9/1q4zRggBcZPBZbAlEmidmuvCWOWeWlRsZZ3qQzsO50xpX/EoSgmimdjEa57/ 0L8OksXhMFms8y5u2hw9m4dBwqo5Uhpg6iwqQbb9CAThj6rNNrudWIDTPkqTVcPB1mxt XCXA== X-Gm-Message-State: AC+VfDwEiFxo8WQOSNaZcxL8L3gb2k7oprG9MazPiAXCHBqtCV4fOZKl kCxY4KzxZTgMzkvTYc2cBGCDTmiAEoU= X-Google-Smtp-Source: ACHHUZ4N4kcSEsgLuUYkpuO9tCKdB4apKqEk2SMLIh9nX6/fbfCsIDWTSakOgrEa9ycVLGBiYBG9Gg== X-Received: by 2002:a2e:7003:0:b0:2b4:70b1:af01 with SMTP id l3-20020a2e7003000000b002b470b1af01mr2575846ljc.20.1687181694484; Mon, 19 Jun 2023 06:34:54 -0700 (PDT) From: Oleksii Kurochko To: xen-devel@lists.xenproject.org Cc: Jan Beulich , Andrew Cooper , Julien Grall , Oleksii Kurochko , Bob Eshleman , Alistair Francis , Connor Davis Subject: [PATCH v2 6/6] xen/riscv: move extern of cpu0_boot_stack to header Date: Mon, 19 Jun 2023 16:34:47 +0300 Message-Id: X-Mailer: git-send-email 2.40.1 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Signed-off-by: Oleksii Kurochko Suggested-by: Andrew Cooper --- Changes in V2: - add Suggested-by: Andrew Cooper . --- xen/arch/riscv/include/asm/mm.h | 2 ++ xen/arch/riscv/mm.c | 2 -- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/xen/arch/riscv/include/asm/mm.h b/xen/arch/riscv/include/asm/mm.h index 3f694a43ef..085eaab7fb 100644 --- a/xen/arch/riscv/include/asm/mm.h +++ b/xen/arch/riscv/include/asm/mm.h @@ -8,6 +8,8 @@ #define pfn_to_paddr(pfn) ((paddr_t)(pfn) << PAGE_SHIFT) #define paddr_to_pfn(pa) ((unsigned long)((pa) >> PAGE_SHIFT)) +extern unsigned char cpu0_boot_stack[]; + void setup_initial_pagetables(void); void enable_mmu(void); diff --git a/xen/arch/riscv/mm.c b/xen/arch/riscv/mm.c index 663048c783..602b89aeed 100644 --- a/xen/arch/riscv/mm.c +++ b/xen/arch/riscv/mm.c @@ -20,8 +20,6 @@ struct mmu_desc { pte_t *pgtbl_base; }; -extern unsigned char cpu0_boot_stack[STACK_SIZE]; - unsigned long __ro_after_init phys_offset; #define LOAD_TO_LINK(addr) ((unsigned long)(addr) - phys_offset) -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 19 13:35:02 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 19 Jun 2023 13:35:02 +0000 Received: from list by lists.xenproject.org with outflank-mailman.551090.860413 (Exim 4.92) (envelope-from ) id 1qBF1x-0000zZ-Nm; Mon, 19 Jun 2023 13:34:53 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 551090.860413; Mon, 19 Jun 2023 13:34:53 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBF1x-0000yo-Ku; Mon, 19 Jun 2023 13:34:53 +0000 Received: by outflank-mailman (input) for mailman id 551090; Mon, 19 Jun 2023 13:34:53 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBF1x-0000wG-1x for xen-devel@lists.xenproject.org; Mon, 19 Jun 2023 13:34:53 +0000 Received: from mail-lj1-x234.google.com (mail-lj1-x234.google.com [2a00:1450:4864:20::234]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 11b0e6fa-0ea6-11ee-b234-6b7b168915f2; Mon, 19 Jun 2023 15:34:51 +0200 (CEST) Received: by mail-lj1-x234.google.com with SMTP id 38308e7fff4ca-2b45d7ec066so34793361fa.0 for ; Mon, 19 Jun 2023 06:34:51 -0700 (PDT) Received: from fedora.. ([94.75.70.14]) by smtp.gmail.com with ESMTPSA id f26-20020a2e9e9a000000b002adb0164258sm5222236ljk.112.2023.06.19.06.34.50 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 19 Jun 2023 06:34:50 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 11b0e6fa-0ea6-11ee-b234-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687181691; x=1689773691; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=3lTrFI+N+q0Z5lbRmcu+HhnZnUn+lm1yJaD6BC834Oo=; b=V73menrMYIejLyOrY48lNf15BBv6m0sFtGu05lv7xJUI9BovrZW3KBh3AXwwgYyp7m LF2/ABbl+gVyRBfa03FG8X2pqxrKdc3XV/rtrrlbHAxnjyNPfFqv8IF8k1d22U/UMXRX OH4NnH6aaQ3/OFH39xPWN/UFjWiHcpu5Q6OS18kryhEb9HX4HAKw3biGZFUaiLZHuJED mOn0/2UUXAyvMOKfDsx8iIux8/MKWw1MDQAtDRufwTS3l2fOTX0hlcGx4tu2RBBDU2KG Q+xw6LlSnJ7NrNWAA4hvHPwqpauBrBFcfqYA5hEHxgH/PbfyB54xxqW9uRrEJfxYhoYc 27QA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687181691; x=1689773691; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=3lTrFI+N+q0Z5lbRmcu+HhnZnUn+lm1yJaD6BC834Oo=; b=Q6xfkO2C7F1cmzgqwOsy3jYQBGLUBsbf302E5sy/2Qef/FoEdloQS6n8oYBdv9hN8C oP/9TJA2AdmlyRUhzAXeLeLOpSHob8CB9wcjeINRprSNTqG6WXjuHMthqqSsWHKVA4Fq 9wvoCDhgiWcSZtqeF7YqDLeA7SfUy7W5SkPC4FgEJYh8llraiTUvFBF2MOT8W7/IqjFc iuKvmLjwMubO+3xLn+bS8JO3BJ2HGhRKZp+R1hSXue2qkEgnpUy1wO3c7ImraTLvC02S /8v3wZccO7cBJlC3bD/vBM2fXUpWA0HyEo/PcLfiqYhYU2rm2pnk/s3jgpqSv8tx4Sdy Uyrw== X-Gm-Message-State: AC+VfDxaQCaqieBI4rSU4V7mha5ojQTWKLDRVT2kA+jiDEhdHz4X11qk ChKL+/Bqefw+6imfNz0RHgxqgdgfJn0= X-Google-Smtp-Source: ACHHUZ4saqFSwNocDKLrVOYoNs2j5ihKl8gUgN/mzpc2AX/eZeCOxZXiZser47imprkK9HrWIZfi1Q== X-Received: by 2002:a2e:9d1a:0:b0:2b4:7d45:7654 with SMTP id t26-20020a2e9d1a000000b002b47d457654mr671204lji.21.1687181690991; Mon, 19 Jun 2023 06:34:50 -0700 (PDT) From: Oleksii Kurochko To: xen-devel@lists.xenproject.org Cc: Jan Beulich , Andrew Cooper , Julien Grall , Oleksii Kurochko , Bob Eshleman , Alistair Francis , Connor Davis Subject: [PATCH v2 1/6] xen/riscv: add .sbss section to .bss Date: Mon, 19 Jun 2023 16:34:42 +0300 Message-Id: <47f3fbdb6b808a4cad8491a607cf035491093655.1687178053.git.oleksii.kurochko@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Sometimes variables are located in .sbss section but it won't be mapped after MMU will be enabled. To avoid MMU failures .sbss should be mapped Signed-off-by: Oleksii Kurochko Acked-by: Alistair Francis --- Changes in V2: - add .sbss.*. - move .sbss* ahead of .bss*. - add Acked-by: Alistair Francis --- xen/arch/riscv/xen.lds.S | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/xen/arch/riscv/xen.lds.S b/xen/arch/riscv/xen.lds.S index 878130f313..9064852173 100644 --- a/xen/arch/riscv/xen.lds.S +++ b/xen/arch/riscv/xen.lds.S @@ -149,7 +149,7 @@ SECTIONS *(.bss.percpu.read_mostly) . = ALIGN(SMP_CACHE_BYTES); __per_cpu_data_end = .; - *(.bss .bss.*) + *(.sbss .sbss.* .bss .bss.*) . = ALIGN(POINTER_ALIGN); __bss_end = .; } :text -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 19 13:35:02 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 19 Jun 2023 13:35:02 +0000 Received: from list by lists.xenproject.org with outflank-mailman.551091.860429 (Exim 4.92) (envelope-from ) id 1qBF1z-0001QY-4B; Mon, 19 Jun 2023 13:34:55 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 551091.860429; Mon, 19 Jun 2023 13:34:55 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBF1z-0001QQ-0a; Mon, 19 Jun 2023 13:34:55 +0000 Received: by outflank-mailman (input) for mailman id 551091; Mon, 19 Jun 2023 13:34:54 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBF1y-0000wG-2C for xen-devel@lists.xenproject.org; Mon, 19 Jun 2023 13:34:54 +0000 Received: from mail-lj1-x231.google.com (mail-lj1-x231.google.com [2a00:1450:4864:20::231]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 1202d6e3-0ea6-11ee-b234-6b7b168915f2; Mon, 19 Jun 2023 15:34:52 +0200 (CEST) Received: by mail-lj1-x231.google.com with SMTP id 38308e7fff4ca-2b46b11051aso26899771fa.3 for ; Mon, 19 Jun 2023 06:34:52 -0700 (PDT) Received: from fedora.. ([94.75.70.14]) by smtp.gmail.com with ESMTPSA id f26-20020a2e9e9a000000b002adb0164258sm5222236ljk.112.2023.06.19.06.34.51 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 19 Jun 2023 06:34:51 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 1202d6e3-0ea6-11ee-b234-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687181692; x=1689773692; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=D79BErD46lr9bA2msM28xOF0IDn3VryLu7dildSZSiQ=; b=CiU8FgdpglJH1B2wDzox9elNXnPOGHvSmx8ag4Iu0woaTXZ9X/ui3yu0i8QrlR0mPw o3/0Bd8Uw5YS43cMK1jGN0Wx5m9lQWPaw/yhNlBWTFCbn/F040pn7WW+IiC/mfRIdtNM M9NDGNV2gVysWaXytZyMewSd0IFSmNNbTOZu2QjMxJci68N8Ssisnz8LHxKU4sxRO4jH GOJmUf0fA9m0cbr94B43Lo/TmTjStbg2Mpxelv7FXUoSnXs6TdaXLERWSpz9nV3eVdMh uH2Ut5vF6en9pVMsKRVK/x8L6OMs8XZXQYLYw28mqG5yan1FNs4hzjFUJy4YtLPThz1F F4UA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687181692; x=1689773692; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=D79BErD46lr9bA2msM28xOF0IDn3VryLu7dildSZSiQ=; b=A925MmXB+bWA5sTrHvNlPcx3A/Iyss0VcU5FQDuHYsOtBlkKCfCCM3Wd/wp02p6NzQ JZ96u/I1YolHoywCB+VnCudYtY3Fw3NlvkZ2Y03WfXN2RNJF1iFWuyFPBuud/DyqQW7M qCRRXGb+1o1KIVxUW0rH+EpEEmkKMaBZdItHRbdYBzMmoupsOfkvvy3DHrBWxiozB6HE pXIuakInLUB+8NL+YNT5YqYhNomQzICB3VR19yJhxRrrr1a5tqDsPwqX1vJTuLjRL/vE WIro+sqwUzjmjXAGxcMqCFDN1v17ppqODn9VrfT+6ZmZtvI/lICx62TqiN6+vN2OjxOE 9qMQ== X-Gm-Message-State: AC+VfDzWLJWfMRW2//6HnMBv6AvJlaByoCw3z2MjP2f1BZjg1W1c0suD qkyARpcgIFvhNwQ8gzid6CqUU6K3PY8= X-Google-Smtp-Source: ACHHUZ5KWo1WLQnAxG/Ix18faBmCWyG6Ft5VzG7rhfuLO4ZVwOJ/WBt520ZwTZj7Kv88Gh3hr40WjQ== X-Received: by 2002:a2e:9e07:0:b0:2b4:5fdd:f588 with SMTP id e7-20020a2e9e07000000b002b45fddf588mr4174106ljk.43.1687181691633; Mon, 19 Jun 2023 06:34:51 -0700 (PDT) From: Oleksii Kurochko To: xen-devel@lists.xenproject.org Cc: Jan Beulich , Andrew Cooper , Julien Grall , Oleksii Kurochko , Bob Eshleman , Alistair Francis , Connor Davis Subject: [PATCH v2 2/6] xen/riscv: introduce reset_stack() function Date: Mon, 19 Jun 2023 16:34:43 +0300 Message-Id: <6024617719467cd2da8ae03b81ddc899f2ba4311.1687178053.git.oleksii.kurochko@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit The reason for reset_stack() introduction is that stack should be reset twice: 1. Before jumping to C world at the start of _start() function. 2. After jumping from 1:1 mapping world. Signed-off-by: Oleksii Kurochko Reviewed-by: Alistair Francis --- Changes in V2: - update the commit message. - move out reset_stack() from .text.header to .text. - add Reviewed-by: Alistair Francis . --- xen/arch/riscv/riscv64/head.S | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/xen/arch/riscv/riscv64/head.S b/xen/arch/riscv/riscv64/head.S index 8887f0cbd4..2c0304646a 100644 --- a/xen/arch/riscv/riscv64/head.S +++ b/xen/arch/riscv/riscv64/head.S @@ -27,8 +27,16 @@ ENTRY(start) add t3, t3, __SIZEOF_POINTER__ bltu t3, t4, .L_clear_bss + jal reset_stack + + tail start_xen + + .section .text, "ax", %progbits + +ENTRY(reset_stack) la sp, cpu0_boot_stack li t0, STACK_SIZE add sp, sp, t0 - tail start_xen + ret + -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 19 13:44:55 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 19 Jun 2023 13:44:55 +0000 Received: from list by lists.xenproject.org with outflank-mailman.551128.860480 (Exim 4.92) (envelope-from ) id 1qBFBQ-0005ti-CW; Mon, 19 Jun 2023 13:44:40 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 551128.860480; Mon, 19 Jun 2023 13:44:40 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBFBQ-0005tb-8R; Mon, 19 Jun 2023 13:44:40 +0000 Received: by outflank-mailman (input) for mailman id 551128; Mon, 19 Jun 2023 13:44:38 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBFBO-0005tV-Cl for xen-devel@lists.xenproject.org; Mon, 19 Jun 2023 13:44:38 +0000 Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 6de153c6-0ea7-11ee-8611-37d641c3527e; Mon, 19 Jun 2023 15:44:36 +0200 (CEST) Received: from [192.168.1.143] (unknown [151.37.186.123]) by support.bugseng.com (Postfix) with ESMTPSA id 53CB14EE074F; Mon, 19 Jun 2023 15:44:34 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 6de153c6-0ea7-11ee-8611-37d641c3527e Message-ID: <8f8545c1-02f8-6dfc-8320-8cc0175d5b37@bugseng.com> Date: Mon, 19 Jun 2023 15:44:32 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.12) Gecko/20050929 Thunderbird/1.0.7 Fedora/1.0.7-1.1.fc4 Mnenhy/0.7.3.0 Subject: Re: [XEN PATCH] docs/misra: document the C dialect and translation toolchain assumptions. Content-Language: en-US To: Jan Beulich Cc: xen-devel@lists.xenproject.org, consulting@bugseng.com, Andrew Cooper , George Dunlap , Julien Grall , Wei Liu , Stefano Stabellini References: <3499c107-ea0d-3a74-4278-86879a9d80e7@bugseng.com> <90eec636-7ae5-8e1b-1561-0de62e0bc799@suse.com> From: Roberto Bagnara In-Reply-To: <90eec636-7ae5-8e1b-1561-0de62e0bc799@suse.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit On 19/06/23 09:54, Jan Beulich wrote: > On 16.06.2023 17:54, Roberto Bagnara wrote: >> On 16/06/23 01:26, Stefano Stabellini wrote: >>> On Thu, 15 Jun 2023, Roberto Bagnara wrote: >>>> + * - Unspecified escape sequence is encountered in a character constant or a string literal token >>>> + - X86_64 >>>> + - \\m: >>>> + non-documented GCC extension. >>> >>> Are you saying that we are using \m and \m is not allowed by the C >>> standard? >> >> The C standard does not specify that escape sequence, so what is >> done with it, in particular by the preprocessor, is not specified. > > Isn't it rather that gcc doesn't follow the spec to the word here? > As per what preprocessing-token can be, anything that isn't (among > other things) a string-literal or a character-constants falls under > "each non-white-space character that cannot be one of the above". > Hence since "\mode" doesn't form a valid string literal, it would > need to become (using '' notation for separation purposes, not to > indicate character constants) '"' '\' 'mode'. Which of course would > break what subsequently are string literals, as the supposedly > closing double-quote would now be an opening one. Which in turn is > presumably the reason why gcc (and probably other compilers as well) > behaves the way it does. After a significant amount of work on the matter, we came to the following conclusions: 1) In this matter, the C Standard is not at all clear regarding the conditions upon which it is legitimate placing undefined escape sequences in the sources. 2) The GNU C preprocessor manual says nothing in this regard. 3) Experimenting with a lot of compilers, it seems all implementers have filled the dots in the same way, that is: during translation phase 3, escape sequences are considered for the sole purpose of getting preprocessing tokens right; escape sequences, whether defined or undefined, are left untouched and passed over to translation phase 4. Summarizing, we are now convinced that what we are facing is one of the cases (there are many of them), where the C Standard is not being clear, and not a case of undefined behavior. Xen use of \m guarded by __ASSEMBLY__ is thus correct and not problematic. Indeed, the check for undefined escape sequences can only be done after preprocessing. I have asked that ECLAIR is suitably amended. Thank you all, and particularly to Jan, for the perseverance. Kind regards, Roberto From xen-devel-bounces@lists.xenproject.org Mon Jun 19 14:24:27 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 19 Jun 2023 14:24:27 +0000 Received: from list by lists.xenproject.org with outflank-mailman.551135.860490 (Exim 4.92) (envelope-from ) id 1qBFnj-0001x1-9x; Mon, 19 Jun 2023 14:24:15 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 551135.860490; Mon, 19 Jun 2023 14:24:15 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBFnj-0001wu-7H; Mon, 19 Jun 2023 14:24:15 +0000 Received: by outflank-mailman (input) for mailman id 551135; Mon, 19 Jun 2023 14:24:13 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBFnh-0001wY-7Q for xen-devel@lists.xenproject.org; Mon, 19 Jun 2023 14:24:13 +0000 Received: from EUR05-AM6-obe.outbound.protection.outlook.com (mail-am6eur05on2061f.outbound.protection.outlook.com [2a01:111:f400:7e1b::61f]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id f5830b97-0eac-11ee-b234-6b7b168915f2; Mon, 19 Jun 2023 16:24:11 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by AM8PR04MB7858.eurprd04.prod.outlook.com (2603:10a6:20b:237::23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.36; Mon, 19 Jun 2023 14:24:08 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6500.031; Mon, 19 Jun 2023 14:24:08 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: f5830b97-0eac-11ee-b234-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=RrmrC4d3K3jqkYazA5EnTP7urMStpngsaJYWVMfsAvGxP5tp8Iy6tgitZInVMG44tepAXMoL5ONySbPefp6XOpL/9QJhPWTbDgz21huRnDZBF49UJoG1jzQgm1NXBUr9HwBUwDjycXYR8yjmP0dFsh6LJMq03H0KcXLQRvoSkiSZrcwFPN5T3DZcdM1M6wk33JhlZ2W4WtcuxLBLe5rZHHTW78FAnBEVXaRDxnSx9/m0iNbhx83ShAwTlnntAqcPEDDkmzCCs5XSNrN3/IA/JvzhWcSZvCWh6SmgMnON+MuIgxGsgJa0v2cyuGiphnnNS3a6zBib8uAm6y6lE/71vw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=qT40wJLYp3ezauBE8MN5z89mZSNmTTiea66kSv/E8tg=; b=OjZdVXAIW/QTfdWJkMK+seyCe5MHEwFp2O0fH2UAkLZn7dRl8VP3AWA6Io2GTCFe2otnjCWv1zSBqD3OlVLaCx+ONMU77eCmUemj0te1Udm/YfbdNPiyEgTtOiDwYUGBn68k/KBduxvQKGbleRUDpqaaLsViLyIG5rq9gS4ij2X6zmwk76XYxQxjHcc9EGyJijYjXOsGyhrFkB8loWATIHnJxoP+idd2PfwmQJLb/L4OegZUHNlTjCrAllVkzwZq9V1k0V6rAKNhFdUoOAIpTq2yJXv0ThTXR3KBXTX/PeY+a/j72gRz8SbgALRJn/2Mpf7c8D7LZ7/ojgHUU8NOJg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=qT40wJLYp3ezauBE8MN5z89mZSNmTTiea66kSv/E8tg=; b=YsEOGhSPrUPw5eLaS2MsP6grI1IEQ2svzXf3TBs2T/jR5pRX+UX/2qFPEoFPnaYFpdyXmMjjFanNV1hboct9BRr7jZ3TN7+ZyhaanQ183tfqo06p2i/Y2LQI13bwX+4LKHpEsvaEoQIExW9gMoINFFjxQxiw+C5Hd0++fETmIIOCm+8kxKHgKmYUlWgXm2oFhVcwVe+9uWAOl6EsQR0v4QO4z50ycLiM4SG+K/UZ/Ur994Q30OiVhdHoHXNtBG1rQ0+k/HRT/piWmXPGnFlQ2NeNZIWUnV7kIaRsVt5QLnZ84JQbmibkE0uWUMXOx8cBNAGsaEtRQ7mG2auo9TuDBA== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <791bf505-7335-d16d-617d-ec19dc637ea6@suse.com> Date: Mon, 19 Jun 2023 16:24:09 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v4 09/15] cpufreq: Export HWP parameters to userspace as CPPC Content-Language: en-US To: Jason Andryuk Cc: Andrew Cooper , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , George Dunlap , Julien Grall , Stefano Stabellini , xen-devel@lists.xenproject.org References: <20230614180253.89958-1-jandryuk@gmail.com> <20230614180253.89958-10-jandryuk@gmail.com> From: Jan Beulich In-Reply-To: <20230614180253.89958-10-jandryuk@gmail.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR3P281CA0153.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:a2::11) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|AM8PR04MB7858:EE_ X-MS-Office365-Filtering-Correlation-Id: 5aa92702-befe-4616-23ab-08db70d0d7aa X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: WG8hGkMfUpNlHlE4wBZyA8z2CUCjxJQW6NKDNxeHXGE+GvrB0lCOJmWbKiTnN3DlErnFrg7gKY6kVDvIIU8kwYr1Y/A69ARhGaOncMGVeK67Eir7kYPVgqAqXaHehzDh4aMvjQV4xmvjc/8FVngTBx9mSLY0rA/tXRPOmhfCqW+QupIl4cOhOeeL5+D6lirQZhv0u9F2X66X6aDa6X3rvVXof2pD/1zIuKHJJXq1fx7ooNvXpPFPUUkPrwOvu2zJ9T5VE0TH9dDnEFj+HS0QkuF4rV6L/nZTRRUyKzT5RnPYLZh0l2EHqGYHiIROmoS3I2kH0TuUyyfbl0AKnW0DSpAqkMCDr0SOFOSSabsMlZJQcx7MCh6qJ1HXFBvkoJ+Bzaz4xlz/Sid1zLPy67szXQFS1yxIomEnf66hLsI4hCbo4TpUoMyvOO37wSGCKH6TPAlbCy/7X+XWikqy7y1Zpu+a0T+Cq7WbMAiP0mlompns6gLSVvpXrc1ZKRuuPv4xmwbVM3OD84C+QaLIUnNtQlej1dj4JT6x5v8Ss9emOkHvEZmhcvzpUytoDauC+CnKcNIPFm4q0JdPnMh0J+n0DYZm1+d6PAcsyaL2p6zasn+IRI4F5EozVqQNQu8U09X6GPfmwrK42fBQmwMYRv3GJA== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(396003)(376002)(346002)(366004)(39860400002)(136003)(451199021)(86362001)(31696002)(41300700001)(8676002)(8936002)(5660300002)(66556008)(66476007)(66946007)(316002)(6916009)(31686004)(2616005)(38100700002)(83380400001)(186003)(36756003)(26005)(6512007)(6486002)(6506007)(53546011)(478600001)(4326008)(54906003)(2906002)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?bmc0Si9hZmd2VlZCNmViMHh1Q3pYK0N5bjBGTEV0ZnN2bUNHUDJVR3oxNjA5?= =?utf-8?B?NlRXQS9WVUtnQUZVSzBrZ0tZTWwyVVk5cjZpWDVBRmZsaGprYU96V1Jqc1Fw?= =?utf-8?B?RFZ6WTM1MEtWdzU3RzV3MFlCbGcwM3ZLVFlSekdiYWFGTWpiVHkzbjVva0NR?= =?utf-8?B?dFgvRURBR05jYW5TYWk3WmRGVjd1c1hHdU4yYjBhcVhrRXFzOTNndW5XMjQr?= =?utf-8?B?U0Y1VHFuSm41aTBBTThPQXFEZUxWMTNJYVpQUTNGRkxEdmt0cnNRV09ibmlH?= =?utf-8?B?N2RjSTBkc0NBTmRjZ0F5MzA5cFpBdFdtRXNvMzRMS0xxbU52QUVXT3VaeS9F?= =?utf-8?B?aWxtN2k1MzlSZGgvTGxnSjluY3l1RGRFeXBMUFU3Rkw3TW81Sndub1kySlV3?= =?utf-8?B?TmRZd3daUWxMendBbFFjM3hCeWk4L0xhL0Q3alhEWFpuTEVMaTVzai9JMG5P?= =?utf-8?B?RFNTa2Z3SlczYVBIWWRSZFVWUm9ZdkN2eGE1ajBoRXg3dW53aHloalJJQ0wv?= =?utf-8?B?cWlZcUg3a0U1dzIydjhLUUl3NHptTEZlTnQvMndLdmJiVlBzcFlzSDhJSkh3?= =?utf-8?B?MVlRcmFEa2FibWpvT3BjWTQxdU0xbER4N0ZMY3VnMXU4Y3o1WXIxU1pxVFpl?= =?utf-8?B?QjRZaVRlZEljZkxkUEh2SHRBMGRZdUN3UFE5SWliYlZrSldyWlc4bnNieUNQ?= =?utf-8?B?ZWNkU0R2RUZiVWg0WmVQdE13RzE5YVl5L0ZIcGtYQ0pFNnhIYVYySDhIc29a?= =?utf-8?B?ZHNjc0FPVnVMVk5XMncveTBGOUV6MFFZMTkvRllXeCtlamZXTnk4UU4rQ29q?= =?utf-8?B?eW03VFZYVnBJU2NGSHRZWFNYZWs3K0d0eFR5dGdQMERPaGRoMy92cWhHd3dj?= =?utf-8?B?SkMvRUJCckJCcTZQV2hENm4zSWlwVHorKzN1OWM1MTZIeGhtTFNqUC9DdVR2?= =?utf-8?B?ak1mMzgrN3hPSS8zeTQ5L3FnbXNOSjRpa0FsSlIyamROSllRZG9FbmZ6bmli?= =?utf-8?B?QnJUZmw0UG1OVUlIMDRzZ2VRTUxRdkdsQ29UQ1NDVldMb1g3T2MrYUlFNzBk?= =?utf-8?B?aTdGbTNYcHRzblh5WThtTCt5WUtYOVVmc0VoeEREUnA2TzFGRVpVa1pxK2xz?= =?utf-8?B?TnlaSGxEZURvMEJsVzJVTXI5MWFNbVBEUXhOK0tBaUNGQ0FIdDNvemxoWUVN?= =?utf-8?B?bzBGYzdMelZ0V1hDYlhXT3lNdEMyNWJwaTErQjRYUGpXOUFCOTUyOThML1lu?= =?utf-8?B?bzNzVGVqVC9zSmVFQzdrQ20yQmEvR2crclk3KzgvUmZDaHMzQVRzWFIwVmZz?= =?utf-8?B?RFU0QW9NLzJ4WEJiaENGQ0hiNGJQTmNQRzNpTm12SXFDUi9QU3VDdjhHMjU5?= =?utf-8?B?RzRaK21uMDdIeFBKRmpaUWR3MisyeG96T1JPSGxwNUJyY0NPaFQzZWVHTlcy?= =?utf-8?B?NE1rekRTb2tHSWFqT2lrNlJkVHdsN1UvSCt1ajFpYUthaEpKTDNmYkZWc0ZR?= =?utf-8?B?TzIvbjZ3bXRuS015V2loSTRKQ0RJai9GMWtvUTUzR3lrYW5CeVRKMjY5SzlL?= =?utf-8?B?N05qSkNnbTREeUc3K2hpNmNPdzMwTkhaOVVqenNxalVINVRkREg3eEZaNm5h?= =?utf-8?B?VlhYU0dQQmRJUHpNMUgrNnBpWlRlZWJtWXNpVGJreFp0eHh1Y2lHR2p6azFN?= =?utf-8?B?S21XbU5lRTZITm9kWVhORmdVUEt5SGV0NitUaVFJZ1EwOVdFdnRia1VZVjNE?= =?utf-8?B?RHBhVWllemI3NGZZSG5wN3VZeUkycWNxQ0kybWxLTWxQcWM0bVJNNTB3RlJn?= =?utf-8?B?MGlBbFMwS1NJdlcxemQ4eSt1N2FLUHIrNHl0N2hQVVptVndnekNxdG5xYmZm?= =?utf-8?B?TDdNTEFpVjI5OGlQU0VqYmc1Z3BOMWdlejdVTncxR3JGZDZ6MHcxWlJtMCtY?= =?utf-8?B?SnZQVzNFeXdXcXRERlFTTHEwMTJ4TE82c095bE1MNXRJYWpyK25ZdkRtbnJM?= =?utf-8?B?THRsQks5UUhYaThYalBZdXN5azR1STBabjg5V2hEbyt2a1RIUXVHendqcUNj?= =?utf-8?B?YmpSaW1CVTRVR212NGZtcTFIQUJ4NHVXQjN0SGRBRjcwRnZXYlAwS2k0eTVT?= =?utf-8?Q?nWcMzSbOxwP12RW7fUoUujTZB?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 5aa92702-befe-4616-23ab-08db70d0d7aa X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Jun 2023 14:24:07.7867 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: SIoEoPpMmc0mfulgXQwzCRJHlnzI9qzU3oRb+ECYoACCRy88+CyUb6jw69NtfMHBqXr7lGQiiTeYq31o5bgotw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM8PR04MB7858 On 14.06.2023 20:02, Jason Andryuk wrote: > --- a/xen/arch/x86/acpi/cpufreq/hwp.c > +++ b/xen/arch/x86/acpi/cpufreq/hwp.c > @@ -537,6 +537,29 @@ static const struct cpufreq_driver __initconstrel hwp_cpufreq_driver = > .update = hwp_cpufreq_update, > }; > > +int get_hwp_para(const unsigned int cpu, > + struct xen_cppc_para *cppc_para) > +{ > + const struct hwp_drv_data *data = per_cpu(hwp_drv_data, cpu); > + > + if ( data == NULL ) > + return -EINVAL; Maybe better -ENODATA in this case? > --- a/xen/drivers/acpi/pmstat.c > +++ b/xen/drivers/acpi/pmstat.c > @@ -251,48 +251,54 @@ static int get_cpufreq_para(struct xen_sysctl_pm_op *op) > else > strlcpy(op->u.get_para.scaling_driver, "Unknown", CPUFREQ_NAME_LEN); > > - if ( !(scaling_available_governors = > - xzalloc_array(char, gov_num * CPUFREQ_NAME_LEN)) ) > - return -ENOMEM; > - if ( (ret = read_scaling_available_governors( > - scaling_available_governors, > - gov_num * CPUFREQ_NAME_LEN * sizeof(char))) ) > + if ( !strncasecmp(op->u.get_para.scaling_driver, XEN_HWP_DRIVER, > + CPUFREQ_NAME_LEN) ) Mind me asking why you think case-insensitive compare is appropriate here? > + ret = get_hwp_para(policy->cpu, &op->u.get_para.u.cppc_para); > + else > { > + if ( !(scaling_available_governors = > + xzalloc_array(char, gov_num * CPUFREQ_NAME_LEN)) ) > + return -ENOMEM; > + if ( (ret = read_scaling_available_governors( > + scaling_available_governors, > + gov_num * CPUFREQ_NAME_LEN * sizeof(char))) ) I realize you only re-indent this, but since you need to touch it anyway, may I suggest to also switch to siezof(*scaling_available_governors)? > + { > + xfree(scaling_available_governors); > + return ret; > + } > + ret = copy_to_guest(op->u.get_para.scaling_available_governors, > + scaling_available_governors, gov_num * CPUFREQ_NAME_LEN); Similarly here: Please adjust indentation while you touch this code. > xfree(scaling_available_governors); > - return ret; > - } > - ret = copy_to_guest(op->u.get_para.scaling_available_governors, > - scaling_available_governors, gov_num * CPUFREQ_NAME_LEN); > - xfree(scaling_available_governors); > - if ( ret ) > - return ret; > + if ( ret ) > + return ret; > > - op->u.get_para.u.s.scaling_cur_freq = policy->cur; > - op->u.get_para.u.s.scaling_max_freq = policy->max; > - op->u.get_para.u.s.scaling_min_freq = policy->min; > + op->u.get_para.u.s.scaling_cur_freq = policy->cur; > + op->u.get_para.u.s.scaling_max_freq = policy->max; > + op->u.get_para.u.s.scaling_min_freq = policy->min; > > - if ( policy->governor->name[0] ) > - strlcpy(op->u.get_para.u.s.scaling_governor, > - policy->governor->name, CPUFREQ_NAME_LEN); > - else > - strlcpy(op->u.get_para.u.s.scaling_governor, "Unknown", > - CPUFREQ_NAME_LEN); > + if ( policy->governor->name[0] ) > + strlcpy(op->u.get_para.u.s.scaling_governor, > + policy->governor->name, CPUFREQ_NAME_LEN); > + else > + strlcpy(op->u.get_para.u.s.scaling_governor, "Unknown", > + CPUFREQ_NAME_LEN); > > - /* governor specific para */ > - if ( !strncasecmp(op->u.get_para.u.s.scaling_governor, > - "userspace", CPUFREQ_NAME_LEN) ) > - { > - op->u.get_para.u.s.u.userspace.scaling_setspeed = policy->cur; > - } > + /* governor specific para */ > + if ( !strncasecmp(op->u.get_para.u.s.scaling_governor, > + "userspace", CPUFREQ_NAME_LEN) ) > + { > + op->u.get_para.u.s.u.userspace.scaling_setspeed = policy->cur; > + } Would also be nice if you could get rid of the unnecessary braces here at this occasion. > --- a/xen/include/acpi/cpufreq/cpufreq.h > +++ b/xen/include/acpi/cpufreq/cpufreq.h > @@ -248,5 +248,7 @@ void intel_feature_detect(struct cpufreq_policy *policy); > > extern bool __initdata opt_cpufreq_hwp; > int hwp_cmdline_parse(const char *s); > +int get_hwp_para(const unsigned int cpu, I think we generally avoid const when it's not a pointed-to type. It's not useful at all in a declaration. > --- a/xen/include/public/sysctl.h > +++ b/xen/include/public/sysctl.h > @@ -296,6 +296,61 @@ struct xen_ondemand { > uint32_t up_threshold; > }; > > +struct xen_cppc_para { > + /* OUT */ > + /* activity_window supported if 1 */ > +#define XEN_SYSCTL_CPPC_FEAT_ACT_WINDOW (1 << 0) I think 1 isn't very helpful, looking forward. Perhaps better "set" or "flag set"? > + uint32_t features; /* bit flags for features */ > + /* > + * See Intel SDM: HWP Performance Range and Dynamic Capabilities > + * > + * These four are 0-255 hardware-provided values. They "continuous, > + * abstract unit-less, performance" values. smaller numbers are slower > + * and larger ones are faster. > + */ > + uint32_t lowest; > + uint32_t lowest_nonlinear; /* most_efficient */ Why non_linear in the external interface when internally you use most_efficient (merely put in the comment here)? > + uint32_t nominal; /* guaranteed */ Similar question for the name choice here. > + uint32_t highest; > + /* > + * See Intel SDM: IA32_HWP_REQUEST MSR (Address: 774H Logical Processor > + * Scope) > + * > + * These are all hints, and the processor may deviate outside of them. > + * Values below are 0-255. > + * > + * minimum and maximum can be set to the above hardware values to constrain > + * operation. The full range 0-255 is accepted and will be clipped by > + * hardware. > + */ > + uint32_t minimum; > + uint32_t maximum; > + /* > + * Set an explicit performance hint, disabling hardware selection. > + * 0 lets the hardware decide. > + */ > + uint32_t desired; "Set" kind of conflicts with all fields being marked as OUT above. I think the word can simply be dropped? Jan From xen-devel-bounces@lists.xenproject.org Mon Jun 19 14:26:51 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 19 Jun 2023 14:26:51 +0000 Received: from list by lists.xenproject.org with outflank-mailman.551140.860501 (Exim 4.92) (envelope-from ) id 1qBFq4-0002Wm-PF; Mon, 19 Jun 2023 14:26:40 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 551140.860501; Mon, 19 Jun 2023 14:26:40 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBFq4-0002Wf-KH; Mon, 19 Jun 2023 14:26:40 +0000 Received: by outflank-mailman (input) for mailman id 551140; Mon, 19 Jun 2023 14:26:39 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBFq3-0002WV-GG; Mon, 19 Jun 2023 14:26:39 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBFq3-00077e-5Q; Mon, 19 Jun 2023 14:26:39 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBFq2-00083G-IS; Mon, 19 Jun 2023 14:26:38 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qBFq2-0000Gx-Hw; Mon, 19 Jun 2023 14:26:38 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=n5NbXt8oUtfSn6el6hzvkklSLj//PHnx8G5CYKBZCkk=; b=Q+cwikzjJUxVVspADwJRUcdpAO JUHUMoGWZof3t2+y0j/fOx3M1NLY+HbS2bvwYf3d9+xIOGONhF6/1imAPcxOVHsXq4U8EWPh/8pUR xuRgq2fQlxaZdBecip/AltOviL45NQ8X2NxMV2+hMR8AbgzqGE/QVXqfS0ifJX0ZJVy8=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable test] 181498: regressions - trouble: blocked/broken/fail/pass X-Osstest-Failures: xen-unstable:build-armhf-libvirt::broken:regression xen-unstable:test-armhf-armhf-xl::broken:regression xen-unstable:test-armhf-armhf-xl-arndale::broken:regression xen-unstable:test-armhf-armhf-xl-credit1::broken:regression xen-unstable:test-armhf-armhf-xl-credit2::broken:regression xen-unstable:test-armhf-armhf-xl-multivcpu::broken:regression xen-unstable:test-armhf-armhf-xl-rtds::broken:regression xen-unstable:test-armhf-armhf-xl-vhd::broken:regression xen-unstable:build-armhf-libvirt:host-install(4):broken:regression xen-unstable:build-armhf::broken:regression xen-unstable:build-armhf:host-build-prep:fail:regression xen-unstable:test-armhf-armhf-xl-arndale:host-install(5):broken:heisenbug xen-unstable:test-armhf-armhf-xl-rtds:host-install(5):broken:heisenbug xen-unstable:test-armhf-armhf-xl-credit1:host-install(5):broken:heisenbug xen-unstable:test-armhf-armhf-xl-vhd:host-install(5):broken:heisenbug xen-unstable:test-armhf-armhf-xl-multivcpu:host-install(5):broken:heisenbug xen-unstable:test-armhf-armhf-xl:host-install(5):broken:heisenbug xen-unstable:test-armhf-armhf-xl-credit2:host-install(5):broken:heisenbug xen-unstable:test-amd64-i386-qemut-rhel6hvm-amd:xen-install:fail:heisenbug xen-unstable:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:xen-install:fail:heisenbug xen-unstable:test-amd64-i386-xl-qemuu-ovmf-amd64:xen-install:fail:heisenbug xen-unstable:test-amd64-amd64-libvirt-vhd:guest-start/debian.repeat:fail:heisenbug xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:windows-install:fail:heisenbug xen-unstable:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking xen-unstable:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking xen-unstable:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking xen-unstable:test-armhf-armhf-xl:build-check(1):blocked:nonblocking xen-unstable:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking xen-unstable:test-armhf-armhf-examine:build-check(1):blocked:nonblocking xen-unstable:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking xen-unstable:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking xen-unstable:build-armhf-libvirt:build-check(1):blocked:nonblocking xen-unstable:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking xen-unstable:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking xen-unstable:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: xen=7a25a1501ca941c3e01b0c4e624ace05417f1587 X-Osstest-Versions-That: xen=7a25a1501ca941c3e01b0c4e624ace05417f1587 From: osstest service owner Date: Mon, 19 Jun 2023 14:26:38 +0000 flight 181498 xen-unstable real [real] http://logs.test-lab.xenproject.org/osstest/logs/181498/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-armhf-libvirt broken test-armhf-armhf-xl broken test-armhf-armhf-xl-arndale broken test-armhf-armhf-xl-credit1 broken test-armhf-armhf-xl-credit2 broken test-armhf-armhf-xl-multivcpu broken test-armhf-armhf-xl-rtds broken test-armhf-armhf-xl-vhd broken build-armhf-libvirt 4 host-install(4) broken REGR. vs. 181481 build-armhf broken in 181486 build-armhf 5 host-build-prep fail in 181486 REGR. vs. 181498 Tests which are failing intermittently (not blocking): test-armhf-armhf-xl-arndale 5 host-install(5) broken pass in 181481 test-armhf-armhf-xl-rtds 5 host-install(5) broken pass in 181481 test-armhf-armhf-xl-credit1 5 host-install(5) broken pass in 181481 test-armhf-armhf-xl-vhd 5 host-install(5) broken pass in 181481 test-armhf-armhf-xl-multivcpu 5 host-install(5) broken pass in 181481 test-armhf-armhf-xl 5 host-install(5) broken pass in 181481 test-armhf-armhf-xl-credit2 5 host-install(5) broken pass in 181481 test-amd64-i386-qemut-rhel6hvm-amd 7 xen-install fail in 181486 pass in 181498 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 7 xen-install fail pass in 181486 test-amd64-i386-xl-qemuu-ovmf-amd64 7 xen-install fail pass in 181486 test-amd64-amd64-libvirt-vhd 19 guest-start/debian.repeat fail pass in 181486 test-amd64-amd64-xl-qemuu-win7-amd64 12 windows-install fail pass in 181486 Tests which did not succeed, but are not blocking: test-armhf-armhf-xl-multivcpu 1 build-check(1) blocked in 181486 n/a test-armhf-armhf-xl-vhd 1 build-check(1) blocked in 181486 n/a test-armhf-armhf-xl-arndale 1 build-check(1) blocked in 181486 n/a test-armhf-armhf-xl 1 build-check(1) blocked in 181486 n/a test-armhf-armhf-xl-credit1 1 build-check(1) blocked in 181486 n/a test-armhf-armhf-examine 1 build-check(1) blocked in 181486 n/a test-armhf-armhf-xl-credit2 1 build-check(1) blocked in 181486 n/a test-armhf-armhf-xl-rtds 1 build-check(1) blocked in 181486 n/a build-armhf-libvirt 1 build-check(1) blocked in 181486 n/a test-armhf-armhf-libvirt 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-qcow2 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-raw 1 build-check(1) blocked n/a test-armhf-armhf-libvirt 16 saverestore-support-check fail in 181481 blocked in 181498 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail in 181481 blocked in 181498 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail in 181481 blocked in 181498 test-armhf-armhf-xl-arndale 15 migrate-support-check fail in 181481 never pass test-armhf-armhf-xl-arndale 16 saverestore-support-check fail in 181481 never pass test-armhf-armhf-libvirt 15 migrate-support-check fail in 181481 never pass test-armhf-armhf-libvirt-raw 14 migrate-support-check fail in 181481 never pass test-armhf-armhf-xl-rtds 15 migrate-support-check fail in 181481 never pass test-armhf-armhf-xl-rtds 16 saverestore-support-check fail in 181481 never pass test-armhf-armhf-xl-vhd 14 migrate-support-check fail in 181481 never pass test-armhf-armhf-xl-vhd 15 saverestore-support-check fail in 181481 never pass test-armhf-armhf-xl 15 migrate-support-check fail in 181481 never pass test-armhf-armhf-xl 16 saverestore-support-check fail in 181481 never pass test-armhf-armhf-xl-multivcpu 15 migrate-support-check fail in 181481 never pass test-armhf-armhf-xl-multivcpu 16 saverestore-support-check fail in 181481 never pass test-armhf-armhf-xl-credit1 15 migrate-support-check fail in 181481 never pass test-armhf-armhf-xl-credit1 16 saverestore-support-check fail in 181481 never pass test-armhf-armhf-xl-credit2 15 migrate-support-check fail in 181481 never pass test-armhf-armhf-xl-credit2 16 saverestore-support-check fail in 181481 never pass test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail in 181481 never pass test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail in 181486 like 181481 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 181486 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop fail like 181486 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 181486 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 181486 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop fail like 181486 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop fail like 181486 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 181486 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop fail like 181486 test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-i386-xl-pvshim 14 guest-start fail never pass test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-i386-libvirt 15 migrate-support-check fail never pass test-amd64-i386-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-i386-libvirt-raw 14 migrate-support-check fail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass version targeted for testing: xen 7a25a1501ca941c3e01b0c4e624ace05417f1587 baseline version: xen 7a25a1501ca941c3e01b0c4e624ace05417f1587 Last test of basis 181498 2023-06-19 01:53:31 Z 0 days Testing same since (not found) 0 attempts jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64-xtf pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt broken build-i386-libvirt pass build-amd64-prev pass build-i386-prev pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-xtf-amd64-amd64-1 pass test-xtf-amd64-amd64-2 pass test-xtf-amd64-amd64-3 pass test-xtf-amd64-amd64-4 pass test-xtf-amd64-amd64-5 pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl broken test-amd64-i386-xl pass test-amd64-coresched-i386-xl pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-i386-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-i386-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-i386-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-i386-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-i386-qemut-rhel6hvm-amd pass test-amd64-i386-qemuu-rhel6hvm-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-i386-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-freebsd10-amd64 pass test-amd64-amd64-qemuu-freebsd11-amd64 pass test-amd64-amd64-qemuu-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 fail test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-i386-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-i386-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-i386-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-amd64-i386-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale broken test-amd64-amd64-examine-bios pass test-amd64-i386-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 broken test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 broken test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine pass test-amd64-i386-examine pass test-amd64-i386-freebsd10-i386 pass test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-i386-qemut-rhel6hvm-intel pass test-amd64-i386-qemuu-rhel6hvm-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt blocked test-amd64-i386-libvirt pass test-amd64-amd64-livepatch pass test-amd64-i386-livepatch pass test-amd64-amd64-migrupgrade pass test-amd64-i386-migrupgrade pass test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu broken test-amd64-amd64-pair pass test-amd64-i386-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-i386-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-i386-xl-pvshim fail test-amd64-amd64-pygrub pass test-armhf-armhf-libvirt-qcow2 blocked test-amd64-amd64-xl-qcow2 pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw blocked test-amd64-i386-libvirt-raw pass test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds broken test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow fail test-amd64-amd64-xl-shadow pass test-amd64-i386-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-i386-examine-uefi pass test-amd64-amd64-libvirt-vhd fail test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd broken test-amd64-i386-xl-vhd pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary broken-job build-armhf-libvirt broken broken-job test-armhf-armhf-xl broken broken-job test-armhf-armhf-xl-arndale broken broken-job test-armhf-armhf-xl-credit1 broken broken-job test-armhf-armhf-xl-credit2 broken broken-job test-armhf-armhf-xl-multivcpu broken broken-job test-armhf-armhf-xl-rtds broken broken-job test-armhf-armhf-xl-vhd broken broken-step test-armhf-armhf-xl-arndale host-install(5) broken-step test-armhf-armhf-xl-rtds host-install(5) broken-step test-armhf-armhf-xl-credit1 host-install(5) broken-step test-armhf-armhf-xl-vhd host-install(5) broken-step test-armhf-armhf-xl-multivcpu host-install(5) broken-step test-armhf-armhf-xl host-install(5) broken-step test-armhf-armhf-xl-credit2 host-install(5) broken-step build-armhf-libvirt host-install(4) broken-job build-armhf broken Published tested tree is already up to date. From xen-devel-bounces@lists.xenproject.org Mon Jun 19 14:30:03 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 19 Jun 2023 14:30:03 +0000 Received: from list by lists.xenproject.org with outflank-mailman.551149.860510 (Exim 4.92) (envelope-from ) id 1qBFtG-0003CX-Ae; Mon, 19 Jun 2023 14:29:58 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 551149.860510; Mon, 19 Jun 2023 14:29:58 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBFtG-0003CQ-7q; Mon, 19 Jun 2023 14:29:58 +0000 Received: by outflank-mailman (input) for mailman id 551149; Mon, 19 Jun 2023 14:29:57 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBFtF-0003CK-J4 for xen-devel@lists.xenproject.org; Mon, 19 Jun 2023 14:29:57 +0000 Received: from EUR05-DB8-obe.outbound.protection.outlook.com (mail-db8eur05on20628.outbound.protection.outlook.com [2a01:111:f400:7e1a::628]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id c331c6ea-0ead-11ee-b234-6b7b168915f2; Mon, 19 Jun 2023 16:29:56 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by GVXPR04MB9758.eurprd04.prod.outlook.com (2603:10a6:150:110::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.35; Mon, 19 Jun 2023 14:29:52 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6500.031; Mon, 19 Jun 2023 14:29:52 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: c331c6ea-0ead-11ee-b234-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=lYMIZHAvp04sD9GoYS9F0kGIa4GMJeUNBho7zF5vFVtDOAxhkzbjnas8HbKK4YqBjYfg5aTovI8F5+/JJW66LD3sgHHrC61Rr7iPJSRLCSWBdr5IKCbCeU4CMnXwoIFZeL8bqGDja40OwUHF9syrn9e1QLx/IWaFuZD1kPd4hn3R7mx8rP7u8GQrUxiK59X+8Dxf/cexeytbPPT6r0S3Hv0KObCiNndi/FiR23EK/PdicLMKYQ7ReC/fAYhG89eNMUHDh5aKKYRZmVFjIeutqKrhNPjN555rrpHinNnTa+WWay47pGk3gw6aPHPv1JwSEsHdd950rjDCuCe3XYBiSg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=3P2jq27n9mgTwscI3FBHn8HGohnbYSV6BCHigbLG9kI=; b=SG7sFtDKPQI1mT3wNM3F8CPgFQh/3IZNTNmsXcuJRvEqESzDfQ7hc6rS7M3JPZ+bRIE/0JYagnbPF4Zn7ICvysV2gfebAaRI3Awe2ZIEwbYiTsvaC4/eFI1Trj81cigaEOLXjhdcI4OuID9I8bo5F7dksm32jhkpWPlL9qt3OPrMjx5ABi8MHDSK0qHguTXPW32/Q+rm8o2Q8QpMnGmYMnIHfjknzWBVJsoKfNlfsVCyTIEOUMTCdoymEWPFk8M0Dhwcl2RC9J7ODYWzbT1bV9se9liBe2tvL3mWkYsL7ayR/qGlL/rrOWLvnPPbnxQIpqXbw56xS5Myq3Ba7vsj1Q== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=3P2jq27n9mgTwscI3FBHn8HGohnbYSV6BCHigbLG9kI=; b=vVXTRZH5EGxF/xbcDIM75ISW+h59O2jDKJDLoIqTXVZ64JqMuyQvgbKqfPfsDWnYlxFxAdqPdx9iXOK8UZtjJ9pxwfZTTa3UxMFhcPMBqnFcD4KZbKqaD7gYUERq5ZiRwnjZ/cfzrPuzP2GiNQa9/a1olOd+j6nd+lfXbsMTHFAkqEh7vZBJdKtuACbh+nSs+uOzD4iV2rqg7FbLbIouJtMstKh1zUo1LU/V3qEn7Wddt8YrQZ+8Po8HIrqnwYkL6LpHsQJY0TkRPkBEv7jaWNJYWpAJ4BGDmpD2J3+uKEdNDb4LJI7YSA9ZjU2Cu0cpXpGGU9bhH/FO4JGNC+M32w== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <27a328a0-a68c-93ea-25fe-41a97c3163f6@suse.com> Date: Mon, 19 Jun 2023 16:29:53 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v4 11/15] xenpm: Print HWP/CPPC parameters Content-Language: en-US To: Jason Andryuk Cc: Wei Liu , Anthony PERARD , xen-devel@lists.xenproject.org References: <20230614180253.89958-1-jandryuk@gmail.com> <20230614180253.89958-12-jandryuk@gmail.com> From: Jan Beulich In-Reply-To: <20230614180253.89958-12-jandryuk@gmail.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR0P281CA0199.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:ad::7) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|GVXPR04MB9758:EE_ X-MS-Office365-Filtering-Correlation-Id: 5de49ad4-fd9a-40eb-c283-08db70d1a4ee X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: XKKsh5n6T+LJPJ0S6VddEYA71SJvjwigZLS6sZBOtZBLIE1zFeJnSWHJvpvcSBEf6/cHARxjsXxYoUYaykZ0vv8iUoGZjEPmJYXbKpCF4fUBIbBiRptWLVLcvzfHQIRbP19IQPQYHYpNVqjC5GKDrFG9nwM6dcdM6TP52DTre/0z2E3kHmLU+Vnjhix6jEJt4GY/6AFaSqPl4otJ/YDqVOcYjgUJ9hsAGtVJDcHKmJjMDOnXfAZoiCKASyc7/3qH+CYFLVhBqnP6RS7O730TDNaNbGeF9gUlObLVWGe0FybBDCxlbvwZtZDf+9pBHDVVNpTVxPOTVZ/gUpiYH2ppgOlupDvE/WkKrldTerecoCd5U/I6HSv/vbgRL+BmJh5/BA66wmcpD8/VdakQndkNSeodF5WrY1gxPv9TKmd9BJ6GDxuWlqiiylmlLFj3vc3pWQhg5qTjgMnRRh8UeZaIv5zobqsYJKpynna/LeIuIL+nLD2BDnp+RqiOFHnWdvlPKd0W00Q7jgL3rrb1+Vu1T20byVSJFb5fbRn+4g5EaaA2uiHmJqh8F7TVq5XFWSGG/PQ/xsnZLfy8U+OTELlN+SD7KwZSlST0oDbqfTQto6Vz0dmRx9p0SedoOvukbF55DAU9ZHz35YQfXMGLWhjvQg== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(346002)(39850400004)(136003)(376002)(396003)(366004)(451199021)(478600001)(5660300002)(4326008)(6916009)(66946007)(66556008)(66476007)(2906002)(54906003)(31686004)(41300700001)(316002)(53546011)(6486002)(8936002)(8676002)(6512007)(6506007)(186003)(26005)(2616005)(38100700002)(31696002)(558084003)(36756003)(86362001)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?U0JMaXpjeEg3ZnJ6MmF5TEZWY2pCRmlMU2tvazVMNUFSRDl1VE53M2pSLzg5?= =?utf-8?B?VnlxNEx5RStleGZlQmplMkwzUytPN1RBMEhqQ0M5bmtBMWh5cHo3L1RaYVBD?= =?utf-8?B?NDNlOUF3c1RzNThiU29UQWN2VGlMd2hTcXVpdXVMcFNmV08vUk0yVE93STZH?= =?utf-8?B?aW41L1lkbXpaN0hJa3RNRkMzejUxSXFHR2FEdGNxeEl3bGkzdW9ueWh4Rjkr?= =?utf-8?B?aUE0MHN6cGRhNjl3ZmFLNzVwSytMS0VrZi9LVmZNYWxQRzhvT1BWN2hQZU1Q?= =?utf-8?B?OVhCbVUrWEF2dzJRaDdUTHQxS0N5REdZd1ZwU3RJVHVjckZFYm11MGFuZzhP?= =?utf-8?B?cTQvNHRyUURRS2tBYzBMZTFMRG5ORW9sWmY4QTNnVndubjdxZk5SOEFwRGlN?= =?utf-8?B?UlBJQWlZS1czWEJWenl3QmVPUEt3Q1g0WHBtR0IzRlY0NHQxVDIydUFWb1Vj?= =?utf-8?B?U1E0VnoyQTJNVTlFRjVWTzN0OWZweHJORE1vV2dHN3ZjbUlPOUxjVU5GQWE1?= =?utf-8?B?NDlTTm5XVmZQM3VNcHRkeWlob3IvNWtuS0d1bDg1VWIwMXFiSjhrc0xVcDMx?= =?utf-8?B?N2pTTW5scVh5OERGMWRqbmNhZ2RjbkpCbkhLSitHVzFLL25WcGF0NTZ3YUY4?= =?utf-8?B?amVXcDlMSE84ZjBwUEgzODBVNnB6dHh0Q1pKWG5nVzdPTW5rQU5XeHFwNzZL?= =?utf-8?B?SHdwRGlvYi8xZGFiRUtnWEhZWDlpVk1hNGcxeW9VMVJIS0U5Tjd1YTlKTXRC?= =?utf-8?B?akU1V3ZNSGwxSGxYUGxuT3ZBTHZ3Mk1qWXRyVnlDM0R2MzRFTmNnUWRVeXZp?= =?utf-8?B?TVl5WnlkY1Y0MkREQTJMUWFlMHYyR1BJbkhmWW05SWZsaUJMY0FUSnpydU4z?= =?utf-8?B?Z3UrY1Vob0xOQW5hbHRvdlJtblIvVUxDcFBaL0phbHZGNTQ4dXlRM1J2K3F3?= =?utf-8?B?SWl1L0hEZmFFallFeG5raWtvbnFveTArQ01OWHZMYldyUUZKQU9oc291di9j?= =?utf-8?B?cUk1MFBPZzVmenpPOXZCVk1FTm5YTEdrYWNMRzJvVnRkQ2xHL2cvcmVWVGU5?= =?utf-8?B?RmZmdm9JelNJS3dIUjM4WXE1N0FvZlB6RVJ0Y0tuNUlrcTVhKzJNb0RsMXlD?= =?utf-8?B?U21GMHgyNTNVbTEvRVZBRUFlUkxIaHFYekUyRDFmcmZZRmJHVEdRRFUwL20y?= =?utf-8?B?UkhsS3hyOW5EcUd5U3FhTHJhaVQyQVVxR3Vrd1RoUmdsS25qemZMWW9KT1RD?= =?utf-8?B?a2lYTzhCbk9PT1dJeG0wWDJvRlRkY3pCQk56MFpZRmVBSkg4L0xpVS8zTUNL?= =?utf-8?B?Qm45OEdCME03MUdseUVJMGlNdXc5U2dWZHhvNCt4enY4REtZY0tPR0tJTHpi?= =?utf-8?B?VEVqN0N1N2p3ZXc1NVR6bG5HZTZEMS93ZldyWHJrcEt3M0dwc2pTandramJp?= =?utf-8?B?U3VueDI0VXpLSWF3ZU1oanQzTlVzT3h5NjFPd1lLZHZreHZlMGFyK1RjV0FQ?= =?utf-8?B?UW01amVZQ2RQdE52KzdDR21ZQkdHUUVyLy9jY3MyZDVncHhUckxSSUhUNXh0?= =?utf-8?B?czk4MmtvVUlwYkpzeHRNWEJJMElzYlA1b0YvaXlxZnF6Q3FMTWFPYXFVcDdz?= =?utf-8?B?cWZkRnhDbVM1aVNIbUd0eTZuMGk2ejVpQmhQaXR3Z25OcnZVSEdIZGJ5eTBE?= =?utf-8?B?dUpnRkNyZFA2V2g1SHVqeHNRNnZiVjBwMTRXcDArNzUvSGtuUHRyMmlQK2JM?= =?utf-8?B?ZU1EbjlLSlEyekg1b1FKZmpXK0V6WERBU0xFOEpvbW81eVRZU2xOK0tlTnNr?= =?utf-8?B?ZWtYbXh1SnlRampsSWJDeVB1V1N3eklvbFRieVJsZ1dzNFkwQTJSYUQxRCtw?= =?utf-8?B?YXhkWGJLalhvdC8vaW5mdzdFODFsazZVN0h6UHY3NWpPVVRzYi9QUkhJaStW?= =?utf-8?B?eFR2WWRwTFI4bytWSFFubUk5YVpEZHZ0OTNDTXR3MytybEVrWTlYdkV0WFdi?= =?utf-8?B?c21yMXJhSFd6dlZ2S2NyZWxoK0tnTVU0Mys1bDV0TlZqb2ZtK21XUlovRUsr?= =?utf-8?B?V3lneDU2YXBhT0hZN0NYcUo1U3dqV1BteVRDYmZ2OUdjdWROcE0xaDBzWDF0?= =?utf-8?Q?CN6BwnIRnoubh2W3eFBfQ/NJN?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 5de49ad4-fd9a-40eb-c283-08db70d1a4ee X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Jun 2023 14:29:52.3589 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 2SKUs1QwWi9N2ZgwZkqKZzcjGWVjtfzT3usDW7wN81mXMwtagEN+aCZmpRlpXel9eh6an9FZKCOzGeWzxS584Q== X-MS-Exchange-Transport-CrossTenantHeadersStamped: GVXPR04MB9758 On 14.06.2023 20:02, Jason Andryuk wrote: > Print HWP-specific parameters. Some are always present, but others > depend on hardware support. > > Signed-off-by: Jason Andryuk Reviewed-by: Jan Beulich From xen-devel-bounces@lists.xenproject.org Mon Jun 19 14:54:37 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 19 Jun 2023 14:54:37 +0000 Received: from list by lists.xenproject.org with outflank-mailman.551154.860520 (Exim 4.92) (envelope-from ) id 1qBGGx-0006iS-7s; Mon, 19 Jun 2023 14:54:27 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 551154.860520; Mon, 19 Jun 2023 14:54:27 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBGGx-0006iL-4W; Mon, 19 Jun 2023 14:54:27 +0000 Received: by outflank-mailman (input) for mailman id 551154; Mon, 19 Jun 2023 14:54:26 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBGGw-0006iB-42 for xen-devel@lists.xenproject.org; Mon, 19 Jun 2023 14:54:26 +0000 Received: from EUR05-AM6-obe.outbound.protection.outlook.com (mail-am6eur05on20629.outbound.protection.outlook.com [2a01:111:f400:7e1b::629]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 2df91863-0eb1-11ee-8611-37d641c3527e; Mon, 19 Jun 2023 16:54:24 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by PR3PR04MB7467.eurprd04.prod.outlook.com (2603:10a6:102:80::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.36; Mon, 19 Jun 2023 14:54:21 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6500.031; Mon, 19 Jun 2023 14:54:21 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 2df91863-0eb1-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=cpF3ZPRGJ8DeBYv6haY8X4aBwtE0g7CiicIqTFuN9fU+fjlcvDD5EI5a8XeorH/liOinXQUn5bTE8t3ai6zsCTIheIJl4acfpvLZVmrLO1tfHqmtl+ikF1Hki7FxR9EpHKBhSmLR21r86czX2jyYSUSdhSpJvFyfKiR47GYXZ3OBLNmnA7symz+IeK+PBVmhrSYgwAzD/UYVDlH4RNA748ius/yJfSuXvG2SDtkJEubWS5PkHATJ7D4/0MrI6MWsJgqS04OetfL7vPCJjb2HUNN2DBAEI6pQ0Gg01jgKEtTwbaQIGZZjsxgbQSx/FhaOWY3gV+GlvjHtSWTtHRHXjg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=SFGjCNmT98+Oxv79gkK71c/wS1nDauxB+D+JaV3HcjA=; b=cSE8eypah2/G/BcLkWXx84Cc3Na4hD7XAdh1fvrt/PfB+4O/jjoAssJ34VyGhWE0QTRcmzqTBIWG7o8hzLn1uS2Lw5jWXfbXeKHnlPSiYApD1zLncU8y99egBILoGmQnJ6Ik73Ahyb+J9sWtUYdrEsUmLmZPINPXKgiRgtmK+K44RmNA0lHhGb1E0SItTCR3mV71WtJVYNxoDV1wHUbuiQ6Oel6vJADcuEKLE28SexcmsXw/7Z/tKvDyQjOrdu5PAwVipmFcjf073QR2c9AIMgUWobmf3ecBujbzTIJFleNZ+3ugiHRgHPxDBIGVBK2ZKI+vlN78FI7xkGcdBN4jLA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=SFGjCNmT98+Oxv79gkK71c/wS1nDauxB+D+JaV3HcjA=; b=Zlg2YxMQhC9ERsKqnfuYer6/4DBRQVqEvEnnGucMqgItjBMAi69twSuPZ6QxCIxBxVRRumpG5AcGmMbHPgaZpoPPBfS1ZZUB1dKW/rR0B47n2r5PjiGGu29VfHzRJ3jFEHb+zYSmZCtkkzkcYaCY0JiP971nbLt3/M4ccjZVOLAcQ4lzl1XEOZrUHXc0ksMZqqB3r+hWACL4po+CYF/TsZtSMaYOB2F4EgIEnQMuwGxDce4Kou2tE2LerdEJnFnJOeF9QOcwJ4fbVvuQiKMGkiUX3zLv2Bc/4Sl6YPYjcEtd441kReh6pzLcu0kthAovoxfVArZ+QOEk6tuhiO+NtA== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: Date: Mon, 19 Jun 2023 16:54:23 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v4 14/15] xenpm: Add set-cpufreq-cppc subcommand Content-Language: en-US To: Jason Andryuk Cc: Wei Liu , Anthony PERARD , xen-devel@lists.xenproject.org References: <20230614180253.89958-1-jandryuk@gmail.com> <20230614180253.89958-15-jandryuk@gmail.com> From: Jan Beulich In-Reply-To: <20230614180253.89958-15-jandryuk@gmail.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR3P281CA0120.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:a3::18) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|PR3PR04MB7467:EE_ X-MS-Office365-Filtering-Correlation-Id: a76fa6b1-4b87-4c96-f61f-08db70d51063 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: TATGUxxM9WqWPcUtwlaw1mMplYEQWVgobwan/w0BUzhwwp7uvdZ/Hkm+LbXvy2di6Z7ocZXP9KJl4iSj89ry97eS16rOWQKMRT9M0qZ/CyrAHuICAPzdE1MELsn5s8WGFx/eoGo9dVEd/DOTWG10+1DfLw1VP26vhvWB0zZH3IMbxjCQKStqjq8zqdMCOeK+P/PWcWs7a5X5yyCzeYrDMoe6/P+OHl8Neb5ZASVOskLzFJ6ocTpVYX33V+6ZE6Bj/w5LsB64f7Cl3SvHtgrDxF7wh5mY2hb0naj1dANsTDczBaxmHV0G0mZEPxdgcRftl5Vtt1Or17CGgWVY3s4IATL9p/x5RZOxQR0q6vHipODiGljqkwJjhDNe+6sN0fk2cHddMSaG3h53IIb6rHUt4XDbpWZDp+FHPPVClS5NBvpsWH7DYv7TMIqOXwI+Vb9Mqrgvn3ODmwQzX+XzdoAdaZnPGKYe/facbD9oizSdFLqCXecMCGpoJUCUCxKtK/kFS/mWsawmo77SIo07ZATSroU1Et+aTXIAo52MoeT4u1ZoGUC0tGeQm620Ydk9xp1b5qFxcgHOiztzpRpbjBnb+G/bTTauAL0z1HPKhfQYLaJDsqhf+rsTXDd9s5xn0ZVUydz9rcxUbMjOynrWVdjJyA== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(346002)(376002)(366004)(396003)(39860400002)(136003)(451199021)(478600001)(31696002)(86362001)(6486002)(316002)(38100700002)(66946007)(66476007)(66556008)(4326008)(6916009)(6506007)(6512007)(53546011)(186003)(2616005)(26005)(54906003)(31686004)(41300700001)(5660300002)(8676002)(8936002)(2906002)(4744005)(36756003)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?NEJPaS9aOWZnSCtsc0NTRi9sTEM3d1NRNHZpdnNhN0IzQ2crS01Tb1Y0ckJT?= =?utf-8?B?Z1BZK1h1S1U1aXZ4cGVKU3pLZU9PYkNMRVIra2ZWMzYvOEU3Rm9UVStPek5C?= =?utf-8?B?RTFBYVhibktReE1RSUFlUFdiLzRTMFdNSkhsREhZZkZISzdvYUpMVFRya3Z5?= =?utf-8?B?YUhhZUpxS2tCWENqVTZjMStWYmZhWUdrYjlyQlNnS0RQa2ZGT09ET2pMZ1ZR?= =?utf-8?B?ZFBjTTdTU0xrT2ZVd2hJTWdLN1B1Wmd0MTB5anlEZWtXNXdBUjBLYythWWRi?= =?utf-8?B?b0Y1dlMzWTE4SXdacDVnQ0s0Sk9oM0lYd3VQTVU1U3FiS3hWY1IzOU83RGhC?= =?utf-8?B?bGZpTUNTZWtEK1lhaFU0YjBkTDhHbS9uNVlBR2RMMVloSzFXNWMrS1QrYXc3?= =?utf-8?B?ZFhHMzRhVFNMWEo4SUs2aGpzVmQ2VCswMEpvTUJtWXF4L2RpYmczd2VaNGRq?= =?utf-8?B?UkZRWFJ0QWxDY0luVHJibWF0TnJUajZpd0dxbDM3MktHYmNYU09Vbitlelhm?= =?utf-8?B?U0NHcEg5VnJFaTdTYTV0a2xXZGhxbWdKUkZIT2dOVlVhU2M0cGpaTHk1Ymhp?= =?utf-8?B?VC9zWjlVdVhBMmNyelFMVWd6WkZwcFdhL1U0S25XOHp0dnFlb0p6N2R6RURF?= =?utf-8?B?eWhxdSs2dVE4enRFajZ6TytabEloQVMrZGl0U3BtNElDbUM1a1Z1M0pFR01L?= =?utf-8?B?Sm5kT1BHOTJyYUxHOHQ0QkVoSUI4OS9QdndFNG96NVBmSEl3UnM4YWVGQ0xn?= =?utf-8?B?YmF2aExZSDdsRng0endXdGNkNnlRWk1nY1pQVE1qRjRiNWw2cFRReUJnTXhB?= =?utf-8?B?RitlQjQ1YmpJejB6VTJESzU0RHU5WUduQ1N6N0ZicmtwR2hGSFo4cUVpRWZq?= =?utf-8?B?TGRQaEJIMmhrZ3h4cDFMaktvbXIvUUJER3loTTZ6UmxVQkg4MWlJSTRGekFM?= =?utf-8?B?TVBIcE42R0pDWTRkYzZYc0FPY1VPZkFKVTJPSW8xN1gvb2d1MDZsWmpXNHIw?= =?utf-8?B?bzJ1Njc3Q3BrUjU0WnBEMW5qWW52bHBoaDdEamRjaHhVcWVhMndGdm9jTEp4?= =?utf-8?B?U2E4T1hNZ1B1UkJyb2pUWWZVQjNPaUxDQXh3MCtXSlZ4d2JldEw5SzE3MU81?= =?utf-8?B?TjdmOEphM0cwUlVjMFh2V3pNVzJ2Q2FWL01TaEVmemVFZ3NNNEVBN01uRE1L?= =?utf-8?B?RFRURWorUW0rNXdkS2dJSWJXdTMyRWxyNU1qRXYwNXZxUDB1UE1pVm8xQ3Ni?= =?utf-8?B?WFJKZXdpZXNIU1hPWHlPVzRhUEJSTWZ0eStuMHNVcHRsQnhidzlUZ3B4TWpX?= =?utf-8?B?RXFkQWhNZWVTUnJCOUx0R0N3b3dqZVFBQWVMQ1VrcmZCTUlXbWN3ZHhNc0dy?= =?utf-8?B?SVk3M2FlRVJOM2JxODEyaG1GMG5RcGFrSjNucVo5RzF1eU1oY1BmZHVyL2cw?= =?utf-8?B?L3JMTld6bURlV0M0MmhaUUxPcjdaeW1NM1ZZOW8rZ0gyaWozZzBqOXBRM2Fm?= =?utf-8?B?N0NmQlJLWkFYYnBhVlNnZERkREU4NUI0NU5iYnB1WXRDakJVdTF3WklPaWdi?= =?utf-8?B?dmd0aHE3NDBZZ0RUZk9EdURuS3BMSW10c1VhUncxT1QxeUxMRkp3dzZBMGJB?= =?utf-8?B?RkVKR2plTlZ1THhvazFTUi9JbnNkMURYWkFEdU1JdWpiSHI5L3hlT2pWallq?= =?utf-8?B?UUEwSld4VlU1R3BIZFN1dGRjbmliM0VpaUNrVkJBd2pzL05NbUluRVhORWVk?= =?utf-8?B?djUvdWpIOURwY2xBQWUrTU9CdmUzcWd1UXEzSVJqT3kydEdZR2VGdVQ5d215?= =?utf-8?B?aGZOVDBET0FxVUwrNEllTStwaFVCR29xNFlFdWRTUnN0Q3JZV3pJVkVMZE1j?= =?utf-8?B?Ynl0VHFvUzlSNUErV1hyRGYyY21yYVZ1bGpydEJna3lUTngzOXVPSkNBV1hQ?= =?utf-8?B?MWRvQXpWcUhQTFgydWJ2dGc4TWVZZUZmdUlDb1h1Ym5Za04rSXZFaTJudlZ0?= =?utf-8?B?WGZPbUk5OG1Ga3lnRGRXVkpEWXJTTnRTSGFtQ28wL2p3K1pkandMbGVsUXR1?= =?utf-8?B?YWs1cTFoTmkvQ3BaYmRLQkFaNy9oTmhlWlZFUUk2ZGdTN3VDRmZtZ0VVSTVu?= =?utf-8?Q?BQMEebnhmOGm4QSWLgLR5nYHV?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: a76fa6b1-4b87-4c96-f61f-08db70d51063 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Jun 2023 14:54:20.9626 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: o11b2xMaRmPHJ87Ltjmoo+Cmi1QHXiU0FND3WYN4HdhbNHYbWN97otwouOuNodEH2R/a/X4BJI0z5Epc9Ir0MQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PR3PR04MB7467 On 14.06.2023 20:02, Jason Andryuk wrote: > +static void cppc_set_func(int argc, char *argv[]) > +{ > + xc_set_cppc_para_t set_cppc = {}; > + int cpuid = -1; > + int i = 0; While cpuid needs to remain of signed type, i wants to be unsigned int. > + if ( parse_cppc_opts(&set_cppc, &cpuid, argc, argv) ) > + exit(EINVAL); > + > + if ( cpuid != -1 ) > + { > + i = cpuid; > + max_cpu_nr = i + 1; While it looks like (ab)using the global variable this way is okay for now, I'd prefer if you added a local variable instead, such that the global can retain its meaning. Then Acked-by: Jan Beulich Jan From xen-devel-bounces@lists.xenproject.org Mon Jun 19 15:30:43 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 19 Jun 2023 15:30:43 +0000 Received: from list by lists.xenproject.org with outflank-mailman.551159.860530 (Exim 4.92) (envelope-from ) id 1qBGpn-0002hE-0M; Mon, 19 Jun 2023 15:30:27 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 551159.860530; Mon, 19 Jun 2023 15:30:26 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBGpm-0002h7-T3; Mon, 19 Jun 2023 15:30:26 +0000 Received: by outflank-mailman (input) for mailman id 551159; Mon, 19 Jun 2023 15:30:25 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBGpl-0002h1-Ij for xen-devel@lists.xenproject.org; Mon, 19 Jun 2023 15:30:25 +0000 Received: from EUR05-DB8-obe.outbound.protection.outlook.com (mail-db8eur05on20609.outbound.protection.outlook.com [2a01:111:f400:7e1a::609]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 34935c15-0eb6-11ee-b234-6b7b168915f2; Mon, 19 Jun 2023 17:30:23 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by DBBPR04MB7513.eurprd04.prod.outlook.com (2603:10a6:10:20a::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.36; Mon, 19 Jun 2023 15:30:19 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6500.031; Mon, 19 Jun 2023 15:30:18 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 34935c15-0eb6-11ee-b234-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=GDY0+stxNt+Hj9ieu9w4IS4dafkFuFMbrkoqqRBn+DU6i3cgzjKvvuX6lYfC4kwwVlUHiZ+FQ3QbmwM6X61nsex62HtyQdKprxyLZpUbAuEl49/hTekDeJ1zMrSM4UYvHl4E+z/bKzzwyleQL7Fhwtso/wgiDcG3U4iq9cPxgoDW1VxtJ4eOyKnyIiP3gnNUGkUtX9Qy7VM5e50I6nq9r+QMFCJNYKtW6IAYKcLm9p/GYmmjI1Yfhl+eojHVK0rLyWrhNUJgxGbjn4UsRVDwGYPRkUDbIPZ8nOroAbhUtqzFdaacgZapdq1Jn9aTVyCnyzB4fXc44sSh80pLsRXLhA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=lvHfrrnoyVSjGKh7R1x9wFrGs2e6/bnWsglZs5o6XjU=; b=DW03wr7tbgMHk9/K4MszwytFu5Xk06z/7tasmjRIUUjweH42bnyrhUy4eqno9kbt3vZkF8vul/rK8sMfdOLPbqfbe78tkNfZNxFOF7t8noUzpume6ICgfd/tQuClJWf9mpqMXVK1WgDhX+cPauFBLFlWYIAs/BEkK9rr9t/tc0F2fHamUcEDxDhBwyy/GgIN/xiUWb1oFckn058IKDktkxKlOuYn7PGuQIrR8nKBHJrGBLbADmWLWf9e/lsILUQY7+iXSyaKTQjCgJpNE2o0FxQmSeFfq5/5/4A0I+tkckSSsG5an5DEif0quDSfPB8ZQY3MJ2NfYusTMzkACU+8yg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=lvHfrrnoyVSjGKh7R1x9wFrGs2e6/bnWsglZs5o6XjU=; b=3ZdIhCXuMlJBHIsHD8GtIQpHKrwbonQjzlGc7cPC4mb4MdypsDKizwn48ymxpznFJ3l5tFvlbGM0O+hnEo6hAhOJZ9DVMh7QhoaVUyVJa386wCqLTHuLxMVlx8b/zfHYFRxWHVlUu128HiM7lspWT+0kCBCANQMCYDnlQKADZgomc0WzSX4uBU1FEsvAVGoD8tfOukZ6FYKK5QwhVXNUoJMHwf8XL4S3tmR9uTRQYZak6J1jkevWBGnvOJPAKUlAx7p6pT6SexMMXnxXXVJlJuVFmndAAkRKmzmuKijg1XKtRjAicfetdwtdhOI7E+opoyE04gZk65nHsxfI8EXN8g== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <984e13ef-a73e-126c-0bf8-58bee9beb7b2@suse.com> Date: Mon, 19 Jun 2023 17:30:20 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH] mm/pdx: Add comments throughout the codebase for pdx Content-Language: en-US To: Alejandro Vallejo Cc: Andrew Cooper , George Dunlap , Julien Grall , Stefano Stabellini , Wei Liu , Xen-devel References: <20230615162741.2008-1-alejandro.vallejo@cloud.com> From: Jan Beulich In-Reply-To: <20230615162741.2008-1-alejandro.vallejo@cloud.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR2P281CA0149.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:98::10) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|DBBPR04MB7513:EE_ X-MS-Office365-Filtering-Correlation-Id: c99c232d-3b16-4b8e-6fc3-08db70da1667 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: oTHrn2BFPuqSUzGBvXJfiS0qtUR8X9Lhu+ZWfQEHZCZEjFypYitXDUwBIqn9bWnHU+3jyMb8EcGzTMVzPHRuZII1UZ1Fp3Zy/9MXYtkUVMY4fv9jMz5T4P4c/QEj2+xQzT37/dsNvu8OS8GJb30c0h9Jg/JSeu+YARj0ON1cKEReBLZiOBQEO31A34lzHs/uZDoTUrwS8pFZg2BbyeMsjUY58bZVR6gj6LPAfDMZg0zXsfdKB1vkvykT2kWtKt+pob8POkqx7XB1PIm0WkNf9OpL9zV8juHerNyU62qf5wSN840KkYSZlqHIHE92QBPr4uiK4uBcgbX9bLQr7hrg26EiWC3UEABVz1SFxZ9ji92I449D+q7kiKYwzpBtj621/FfHI31o5n0wLRm262eDXNm9R4FY0qW+X/mAflnR1LGs0zA6sB9LpIHpEGhMo5MRC5w447PUZv5Dl0U7hl2WjQwDqJeSQa9rJdQ5uDIYS1iCiBBXfDi6oEx0+4lDUEEpUdhCdtqH3UDvDBjaNo6Pt09Y/EnXdq5ZGCWrqrW3qIuA2XbEUAhj2TJlWhsgzN051413KmXtQkPwaCdppLd8jNwZGoMcMRbq6qKDcbFFj1PhYf2plCFON/yYY9EjntUMeGOwm6O2G3DloxuDNOv3zA== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(376002)(366004)(346002)(396003)(39860400002)(136003)(451199021)(478600001)(31696002)(2906002)(66899021)(54906003)(6666004)(6486002)(2616005)(86362001)(36756003)(26005)(186003)(6506007)(6512007)(53546011)(8936002)(8676002)(66476007)(66556008)(66946007)(5660300002)(38100700002)(316002)(6916009)(4326008)(83380400001)(31686004)(41300700001)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?RnJBbWRzZVhnSE5JNkFuVTFZNDNzYmJoS2JmUTNIS3prZ01wbUFFbHRuUkRP?= =?utf-8?B?d28vdk9peGR5VjhPS2ttaklyREhCSUphOTZHcXovb1Z1cFc1SmJyWDRmNzZp?= =?utf-8?B?WWU4QlBvNnZYbDRtcmt6elpKaGg5OTdITUxwTGd4S3JJcUNBZy9PeWlORkh3?= =?utf-8?B?Z3VGK2o4QmhqM1Fuc0luRWE0R0Z0NlJiNFV6Ri9Qc0pCRDFiTy9hdHVhb0RV?= =?utf-8?B?c1UzL1FoeEV5R3Z0UnVNYlVjbEtxZDZYMWFJNzZLN2U2di92K24rc1kwMnI2?= =?utf-8?B?VU05S3diaWpaRVBxaHlLWkNJcmRYOCt4NUlKZTBCUFFmaURoSmtNWENjWkdQ?= =?utf-8?B?VW9WZ09KZHZWYmJjKytEL2JEYjh0bE1vMU5NWmxhRDZTZFFyM3ZScnBJakhn?= =?utf-8?B?S3NIeWZJRmpFSFN0Vm9VU2FLZDBXVjJFV1EyTVJyTU9aUVlud0hhbWpIQnNU?= =?utf-8?B?Rk5GYTdXb3BSY3BiYnJRVnh5TmZvZ05TKzlSSWJCclVnMzZBdkJmSzFQMTlJ?= =?utf-8?B?dTdLd2dySTVqbTNnR0QweUluZ1NJVTFzTHRsa2tGT0hzWWtNMlZ5ekxWdTA5?= =?utf-8?B?anFWOFBTV2RZWlEvRmlFSUN3NU85V2Vha0lGQ0drSU1GSHQwL0d1VlRDdjVV?= =?utf-8?B?MVRvNGc4Sks0VjlOMHNpN2llMWthZ3BrVFZjRlV0TXJFY202WWJ3OE9TVEJw?= =?utf-8?B?dHB3bU9DQ3lROXhtRmJ5Qk5XRElobWs4MnJGZUc3Q0YwY0N3NFFxSmx2QmMw?= =?utf-8?B?by9GWVNFMTN0WGQzdUo0Y1BKaWdHcU9nTkRCZHFTTG5CUXNHTVpPK0Y2MTBR?= =?utf-8?B?dWwxMjRad1lvSFlQQm1rQjZUTW8wci9ld3RsSWJ4QUxKVUNuVFRhSHVZY2Nv?= =?utf-8?B?Ui9zS1MzY1Qzb0hTTEhqMVo4Y0VTY0U2NEZDNkxSM24xZTdnU0pZOWxvY3lk?= =?utf-8?B?VzJKa3hxUERLV0ZBb1lkUXpSbmdvN1loeTYwK0phR29oWEx2YmU5OVNPMTR4?= =?utf-8?B?RWhPYTVFM09MQnl5Q3MzZWpZb0pyc3pBMnBKVnhiN3BUN2d5M3N4MTF4MnAy?= =?utf-8?B?RnBuU1VVcS92c1R1VFkrQldweE9MQ0xGd3FCeWtRNVFYeTJRa2s0R1N5NXA3?= =?utf-8?B?b2lMaVM1YytLL1lvamNnNjYrLzdpdnlPUVlxU0FpbTVzYzl3dFR4L05ub2hL?= =?utf-8?B?d1NleExTQXhueHp0YVhPcWRHKzIvZUtQZHNuV3NMczA0U0NUcGFUbDF2d1Vw?= =?utf-8?B?VndrSldwU1NaYzFhS05IN3V2a0ZNV2kyZzNjelRraGs0VitucmpCaHZqOXJJ?= =?utf-8?B?YVFBYnkrRzU0V2VBWnJRaUxITVBRV0huR0hjZFdGQlRJM1RLd0V6dUcrY09v?= =?utf-8?B?Z09KY3E3Yk5vV01SZW1pdDRwV1dYNGhMc3NVWklJb3dJQUZXTi9uaTZ1TGk4?= =?utf-8?B?aUI5QStoWG1JbUtUWDU2SXJuSUtEaWhxRGJjQjJjbWNKMWJaQzlYQlJSYnYv?= =?utf-8?B?WUZnSkhFTFlPbXZzanlCM0dlOGc2aWI3NVp6QmFMa01hQzdhNXRCeVBabHhH?= =?utf-8?B?dUNQWGF3WE9vU0VnVWZjdFVVL0h1TlhsMjFvR0lTSTBZOXlmd0sxa1daVWhk?= =?utf-8?B?dGpHMDdHVjAzUy9GU3o0RmhqUTlIMWFwNVc2dVRKaGgxQmdZY2lvK2oySnVX?= =?utf-8?B?UHBGOEJKV2Z4M3RQQ3BDcFpNWnNySTkxekR3b1hBU1N1OFAzVm9nKzJtY3ln?= =?utf-8?B?a3dVendFVkY4MGtDemNwUmRLdVJVRGpha3puY0xvYUdBN0pDdDUyWjF3ekpp?= =?utf-8?B?UXlJb0I4aFhHVlYrandxdVRkWDYyWGU2U2kvRUlaY2czbGxLcCtDTG5IaG42?= =?utf-8?B?SzV5M25qdUFZMGhLdVdHY0g2TFBacDFXbVpZMTcwaXVuNXMwLzdpbEduMmox?= =?utf-8?B?azd1VFFDSGhqMG56bytNVEhnazg4WHJPWEltQ0psM1RpUEZRVmtsM0dzVHNE?= =?utf-8?B?dHA4RWlrY1R3bGxFb0ZWVlBVMzEyUElXWUQ3TVhsbm1lV1ZYS3MxV2hRSTZ3?= =?utf-8?B?RS9MY3NCQjhsMVNOTDNuc2s3NTg3UkxINWpkK1g5N0VXaUtKdWJESEwwK05S?= =?utf-8?Q?eKO6DrM9tD7dUZ2T7+fYPP0v7?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: c99c232d-3b16-4b8e-6fc3-08db70da1667 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Jun 2023 15:30:18.5839 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: OpMuPPWgkFN9ZjCcP4YKxLSc27DU3CI5ohJtzPkIhy/kIjTXOJ3U06J4u+/OjwsipMT4NUln+fnGqPEUh2Akdw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBBPR04MB7513 On 15.06.2023 18:27, Alejandro Vallejo wrote: > --- a/xen/common/pdx.c > +++ b/xen/common/pdx.c > @@ -20,13 +20,55 @@ > #include > #include > > -/* Parameters for PFN/MADDR compression. */ > +/* > + * Diagram to make sense of the following variables. The masks and shifts > + * are done on mfn values in order to convert to/from pdx: > + * > + * pfn_hole_mask > + * pfn_pdx_hole_shift (mask bitsize) > + * | > + * |---------| > + * | | > + * V V > + * -------------------------- > + * |HHHHHHH|000000000|LLLLLL| <--- mfn > + * -------------------------- > + * ^ ^ ^ ^ > + * | | |------| > + * | | | > + * | | pfn_pdx_bottom_mask > + * | | > + * |-------| > + * | > + * pfn_top_mask > + * > + * ma_{top,bottom}_mask is simply a shifted pfn_{top,pdx_bottom}_mask where the > + * bottom one shifts in 1s rather than 0s. > + */ Nit: That 2nd bottom variable is ma_va_bottom_mask. > @@ -57,9 +99,25 @@ uint64_t __init pdx_init_mask(uint64_t base_addr) > (uint64_t)1 << (MAX_ORDER + PAGE_SHIFT)) - 1); > } > > -u64 __init pdx_region_mask(u64 base, u64 len) > +uint64_t __init pdx_region_mask(uint64_t base, uint64_t len) > { > - return fill_mask(base ^ (base + len - 1)); > + uint64_t last = base + len - 1; > + /* > + * The only bit that matters in base^last is the MSB. There are 2 cases. > + * > + * case msb(base) < msb(last): > + * then fill_mask(base^last) == fill_mask(last). This is non > + * compressible. > + * case msb(base) == msb(last): > + * This means that there _may_ be a sequence of compressible zeroes > + * for all addresses between `base` and `last` iff `base` has enough > + * trailing zeroes. That is, it's compressible when > + * fill_mask(base^last) < fill_mask(last) > + * > + * The resulting mask is effectively the moving bits between `base` and > + * `last` > + */ > + return fill_mask(base ^ last); > } I don't see a need for you to actually change the code here. You can as well introduce "last" as shorthand just for the comment. What I dislike in your way of putting it is the use of fill_mask(last) when such a call never occurs in code. Starting from the first sentence, can't you explain things just in terms of said MSB (where the two cases are "set" and "clear")? > --- a/xen/include/xen/mm.h > +++ b/xen/include/xen/mm.h > @@ -31,6 +31,22 @@ > * (i.e. all devices assigned to) a guest share a single DMA address space > * and, by default, Xen will ensure dfn == pfn. > * > + * pdx: Page InDeX > + * Indices into the frame table holding the per-page's book-keeping > + * metadata. A compression scheme is used and there's a non-identity > + * mapping between valid(mfn) <-> valid(pdx) See the comments in pdx.c > + * for an in-depth explanation of that mapping. The mapping may very well be (and on x86 typically is) an identity one. IOW you want to describe not only the compression case, but also the "no compression possible" one. PDXes also aren't just indexes to the frame table, but also to the direct mapping. > + * maddr: Machine Address > + * The physical address that corresponds to an mfn > + * > + * vaddr: Xen Virtual Address > + * A virtual address of memory accesible to Xen. It is typically either > + * an address into the direct map or to Xen's own code/data. The direct > + * map implements several compression tricks to save memory, so an offset > + * into it does _not_ necessarily correspond to an maddr due to pdx > + * compression. We need to be careful here: If I'm not mistaken at least Arm uses vaddr also for guest addresses. In fact I'm not sure vaddr (and perhaps even maddr) need explaining here, the more that nothing in this header uses either term. > --- a/xen/include/xen/pdx.h > +++ b/xen/include/xen/pdx.h > @@ -1,6 +1,62 @@ > #ifndef __XEN_PDX_H__ > #define __XEN_PDX_H__ > > +/* > + * PDX (Page inDeX) > + * > + * This file deals with optimisations pertaining frame table indexing, > + * A pdx is an index into the frame table. However, having an identity > + * relationship between mfn and pdx could waste copious amounts of memory > + * in empty frame table entries. There are some techniques to bring memory > + * wastage down. > + * > + * ## PDX grouping > + * > + * The frame table may have some sparsity even on systems where the memory > + * banks are tightly packed. This is due to system quirks (like the PCI > + * hole) which might introduce several GiB of unused page frame numbers > + * that uselessly waste memory in the frame table. PDX grouping addresses > + * this by keeping a bitmap of the ranges in the frame table containing > + * invalid entries and not allocating backing memory for them. > + * > + * ## PDX compression > + * > + * This is a technique to avoid wasting memory on machines known to have > + * split their machine address space in two big discontinuous and highly > + * disjoint chunks. Why two? There can be any number, and in fact on the system I originally had data from for reference (when first writing this code) iirc there were 8 nodes, each with a chunk of memory far away from the other chunks. The compression scheme used merely requires that some "inner" bits are unused (always zero) in all of those ranges. > + * In its uncompressed form the frame table must have book-keeping metadata > + * structures for every page between [0, max_mfn) (whether they exist or s/they exist/there is RAM/ ? > + * not), and a similar condition exists for the direct map. We know some > + * architectures, however, that have some sparsity in their address space, > + * leading to a lot of wastage in the form of unused frame table entries. Hmm, "architectures" suggests e.g. Arm might have such, but x86 won't. Perhaps "systems", "designs", or "system designs"? > @@ -13,22 +69,77 @@ extern unsigned long pfn_top_mask, ma_top_mask; > (sizeof(*frame_table) & -sizeof(*frame_table))) > extern unsigned long pdx_group_valid[]; > > -extern uint64_t pdx_init_mask(u64 base_addr); > -extern u64 pdx_region_mask(u64 base, u64 len); > +/** > + * Calculates a mask covering "moving" bits of all addresses of a region > + * > + * e.g: > + * base=0x1B00000000 > + * len+base=0x1B0008200; > + * > + * ought to return 0x00000FFFFF; > + * > + * @param base Base address of the region > + * @param len Size in octets of the region > + * @return Mask of moving bits at the bottom of all the region addresses > + */ This looks to be a copy-and-paste of pdx_region_mask()'s comment, when the function has neither a "base" parameter, nor a and one at all. > +uint64_t pdx_init_mask(u64 base_addr); No u64 -> uint64_t here? > -extern void set_pdx_range(unsigned long smfn, unsigned long emfn); > +/** > + * Calculates a mask covering "moving" bits of all addresses of a region > + * > + * e.g: > + * base=0x1B00000000 > + * len+base=0x1B0008200; > + * > + * ought to return 0x00000FFFFF; I think it would help if you actually said how the return value actually derives. The term "moving" may be understood differently be different people, and hence such an explanation actually would also clarify what "moving" means. I also thing there's a 0 missing in the len+base value, without which the result would be quite a bit different. > + * @param base Base address of the region > + * @param len Size in octets of the region > + * @return Mask of moving bits at the bottom of all the region addresses > + */ > +uint64_t pdx_region_mask(uint64_t base, uint64_t len); > + > +/** > + * Mark range between smfn and emfn is allocatable in the frame table > + * > + * @param smfn Start mfn > + * @param emfn End mfn > + */ > +void set_pdx_range(unsigned long smfn, unsigned long emfn); This could do with mathematically expressing the range in the comment, such that (in|ex)clusiveness of, in particular, emfn is clarified. > #define page_to_pdx(pg) ((pg) - frame_table) > #define pdx_to_page(pdx) gcc11_wrap(frame_table + (pdx)) > > +/** > + * Invoked to determine if an mfn maps to a legal pdx I wouldn't use "pdx" here, but refer to frame_table[] instead. > + * In order for it to be legal it must pass bounds, grouping and > + * compression sanity checks. > + * > + * @param smfn Start mfn > + * @param emfn End mfn > + * @return True iff all checks pass > + */ > bool __mfn_valid(unsigned long mfn); Comment again mentions inapplicable parameters. > @@ -38,7 +149,16 @@ static inline unsigned long pdx_to_pfn(unsigned long pdx) > #define mfn_to_pdx(mfn) pfn_to_pdx(mfn_x(mfn)) > #define pdx_to_mfn(pdx) _mfn(pdx_to_pfn(pdx)) > > -extern void pfn_pdx_hole_setup(unsigned long); > +/** > + * Initializes global variables with information about the compressible > + * range of the current memory regions. > + * > + * @param mask This mask is the biggest pdx_mask of every region in the > + * system ORed with all base addresses of every region in the > + * system. The result is a mask where every sequence of zeroes > + * surrounded by ones is compressible. > + */ > +void pfn_pdx_hole_setup(unsigned long mask); With the function returning void, I find "The result" problematic. How about "This results in ..."? Btw, "surrounded by ones" isn't really necessary. We could compress shorter sequences of zeros, so this may want re-wording a little to be as precise as possible. Jan From xen-devel-bounces@lists.xenproject.org Mon Jun 19 15:38:24 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 19 Jun 2023 15:38:24 +0000 Received: from list by lists.xenproject.org with outflank-mailman.551168.860540 (Exim 4.92) (envelope-from ) id 1qBGxG-0003PY-0U; Mon, 19 Jun 2023 15:38:10 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 551168.860540; Mon, 19 Jun 2023 15:38:09 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBGxF-0003PR-TC; Mon, 19 Jun 2023 15:38:09 +0000 Received: by outflank-mailman (input) for mailman id 551168; Mon, 19 Jun 2023 15:38:09 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBGxF-0003PJ-3w for xen-devel@lists.xenproject.org; Mon, 19 Jun 2023 15:38:09 +0000 Received: from EUR04-HE1-obe.outbound.protection.outlook.com (mail-he1eur04on2045.outbound.protection.outlook.com [40.107.7.45]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 49d04995-0eb7-11ee-b234-6b7b168915f2; Mon, 19 Jun 2023 17:38:07 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by DB9PR04MB8363.eurprd04.prod.outlook.com (2603:10a6:10:24b::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.36; Mon, 19 Jun 2023 15:37:37 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6500.031; Mon, 19 Jun 2023 15:37:37 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 49d04995-0eb7-11ee-b234-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=mA1VAfwjm8j4CbRjdEhgDJ9lrF+Jjlllx3FYE7B1lZqMHQpBIwGjFw6CFerOr3B8T3mAzjXZkLOQqS2BP95uDMN49F2tOWEQNn0DX58XriH0I74FAqHLLM8KJtuNixXxQ+33hh53kpBsCNsYLAe65il/svkL7ZpODzS+oEi2HA1D3gSCJ9rSv5lNBsr2ZUQfqWxqvvFepQazKp2vwKZS5iZw645vkW2SzOtyUDQtEbEUB5INbeRnSYA0JYSDhuBsLUceoh7E0QFGCKjd6qgGXAZjLBmXCeiWsnyvo+alHf78TMf3Wt/gPM7soJ9dZB9BHJloCOTZ2rMxGgRvVzRASw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=+KI/0PFhYowJvlwxrMq486Fy4QKm+MUlfP82GyNq+IU=; b=mGICaRxgWwkNgmEGzv467yEUKYmOUvPlzTfxhfch/+puVp8VgqZvTl/lDBRNwjuzPR3q3tvsnhTvL7tt0PJYWG/0+Fqbc71HhgJRS6mOOx6X3sSskR+M66yDRr1Z81xLv004pYK0HGESXEkevwgYF3ZVRtkylp8B2ujBVnTp2kOrqhNOapyPJfDM/UUA0m2ilVXbLhxLSIs1AEnd5/1GxddWAmxpuYHajJBgULqhRHeZGGOBETnlBCPB+eMPVD4btwnmGtRTMm8WyiPWcMXncYTpMZ0igO6Sy4y7/9Y7Ga+N12jTo84ox7FoLwJsoFCwb0k/QzP1H7+Ujm61IOrPGA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=+KI/0PFhYowJvlwxrMq486Fy4QKm+MUlfP82GyNq+IU=; b=WkOe7XXoIXc0bpguszg0SH3HfGPcTIgUXFNUaGpxmJ3Uy/c1xB4893oewd4qvS72Y2VwLDYV5gk1CwwlGhw5r1kmWUYmEZIR/zQW8d00o5qKqDSOR4VAjxOmZ/Vc66CqRm4+e4x2u34ndV5sPNv/qjYD4PNDpKISetAtk91lqgDliXUhr/PZyaBlYmDDHXbH9+x35xdAywdEgkLfv8vjgYGq9CUHyiOlLi1lXE087MqNqi7XdT+FgrVCPAr6Q8/LOPS9WV+0exySaQB60yoRiSqxEcdAO2S76Ih3R3wOe47CWcQr9hRXVzBN1KYlrzrfOFpWYPLEWCQm7t6Hbekk9A== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <233d3838-6d27-608e-6ef1-2a8036620650@suse.com> Date: Mon, 19 Jun 2023 17:37:38 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v3 1/5] x86/microcode: Allow reading microcode revision even if it can't be updated Content-Language: en-US To: Alejandro Vallejo Cc: Andrew Cooper , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , Xen-devel References: <20230615154834.959-1-alejandro.vallejo@cloud.com> <20230615154834.959-2-alejandro.vallejo@cloud.com> From: Jan Beulich In-Reply-To: <20230615154834.959-2-alejandro.vallejo@cloud.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR0P281CA0173.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:b4::20) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|DB9PR04MB8363:EE_ X-MS-Office365-Filtering-Correlation-Id: 1d629051-5e56-45d2-0117-08db70db1bee X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: cTu6vnB0NyJsx4eD/qqr50ZJLxzycNJa4RQrbc37g0Z9cb3TFXkHwazmh2im1g7BLKI3xfZ6wjgM6O7vRgO3HQ+zW4aVJNUTPm2MUjToKL7ta5JJv+Nm8Eq8p1yGat48MEgW31aalw8QVvVlD4F9hCu5GnqHzXwK8jB4RFVSEhnvdiGakicQcUQV1a5MuU55jHY4MVbvYSoGMHnf8d7o32RzeAuXBcwDup5e7Mtg4ySLfRM5FswSgvhLZhWlJPX0Acmj3EDVZTU2JfTYaKtonb75PMbHTafpOqPt6heQnQkTlyonakfYUsbstPh7NjavMDN5yJbBWixL/+ApajjG+dvTgUYtMFg68XuTOgA4sSio43+YUkVR7oFpDkJy9PeEwbFVpxPd+cX7ZNWcWVg5ZMBulp3VROumFdpLjw+Tmp5z9WcEjnTeHCJf+dS94oaOy3yZkz70mI4Gx3Pdac26VGMGjcfJgaDB6AZT+z/Ui5/EM4pSpvjuHFny1izgWh2chxFa7HriV87z+X4RH53AAwtbl7Fo+MkLqmq5YEvh16KXAVIYUzHeohH56dF8ZwODga72K38pHMjy3a0+cq11cwJaO10hlszBhUCYyWvbmpfA4Iu1gRlcIiKgKQCIsB+IstRkjSle+ylj7eGJutJ+tw== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(376002)(366004)(346002)(396003)(39860400002)(136003)(451199021)(478600001)(31696002)(2906002)(4744005)(54906003)(6486002)(2616005)(86362001)(36756003)(26005)(186003)(6506007)(6512007)(53546011)(8936002)(8676002)(66476007)(66556008)(66946007)(5660300002)(38100700002)(316002)(6916009)(4326008)(31686004)(41300700001)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?ZE9Gb3VQTjNCWUZoaVRGSVV0RUtwdjlOTy9qaG9INm4xQnZSUUJ0LzBhdzI1?= =?utf-8?B?eXExdDhpZnhFYm1QUm41TkU5bW5ia0kvYTZUV0hoak44bTArL1dvV3NFa0Fj?= =?utf-8?B?SC9NdEZFa0Y4WnZoVC9ZWE9waDZTeWNOYldHakFDVElhbU9HcFdzVndVNnFX?= =?utf-8?B?elAvenN1RExmQnFkUHA5UkxXS05WM2pnTHk0dEc3dWIycFlNK3QvdEJad09Y?= =?utf-8?B?QW42VldISlV4ZEttaUxOdDdqTk0vaEZybVp2MUZxZnl3aWFZa0ROZ0FCbk1l?= =?utf-8?B?TmpoREFoZjkzR1d1Y0dLZ05aVXdhWkNRZmYwU2gyQmk0VFNwRkM2eG1PbGV0?= =?utf-8?B?WVJodjVabUdBanRWNmNDZHRkN2RPWCtVRm84L3QrUXV2YThzd0drb2wxejAx?= =?utf-8?B?RXBPOEdIeVBSV1NCYkxvelp3S0ZTL0kxcEsrVDkrdGp1MFJ1aEJlWmphcEZQ?= =?utf-8?B?cnpaclltVCtxeDRlaW9tRmhSM2VvWjZiVkNCak1BZ2l4YWxpUU1NYlR0Umt2?= =?utf-8?B?SmFwZHlHZVY0RTloZ1kwem9vT0hhVy9WbEsxOVpnVGYrNVZTVGF2bzZGV0Ru?= =?utf-8?B?TWxMWHpkUnBlc2Z5RGVKbUdYWk1DWDJmTlBtVWR3R011bkM3UDM2SEJjNVh4?= =?utf-8?B?RFBUelZMa1lHOEFBYXlvVXl3cXRyZUU5UDBmSnpPU3RPME95MVVWcXN0ZkM0?= =?utf-8?B?NmYwd2RWaWZlSjNEUXN6S2l4MWtFbi9VNHVXTTAxdmlaa1JXK1lTaGp2WllE?= =?utf-8?B?QW1CT3VEOWw3Q0ErUmNYSHdRMDVoSkwzM1VHUWhITytBdlN6S3lNVTBkSXBn?= =?utf-8?B?eUk2UmJIeFN2bVNZRStqbE5GR2daNmVTNXcza01sQ2pJUEs1OEVQTzgwdUpp?= =?utf-8?B?SlQyNFVoVlRjc1hDNG9XNEV4a29kRDdhZDA0VHdlbzZseU9CMmhpbTA1ZTYv?= =?utf-8?B?Z1JONEhYUG53LzkxbHFCYzVwdVB5NG1JQkpBaEF0eWphTWRrNkpGNC9jMkxW?= =?utf-8?B?QVIwWnREYm4yeFlVY29PTG9LY2F1eWZpR3UwWjcvOFpCeHVvS1RIczFObnJY?= =?utf-8?B?T25HOEJodkdQb0JaTGk0b3d5QWRhbHdBN3BjRWJSMXZnVXFod1NvRVQ0VkhT?= =?utf-8?B?ajVwRjlzVjl6UmxyVUZNT2owcUc4anNRUmhwTUNaeFh5cjV3QXNtaUlqQTQ3?= =?utf-8?B?bXpXSk5rUm5RNyt0UFZyYXU5bER5YUd0V05PdHlWZ3Vqd3ovMWtXVTZXM1JF?= =?utf-8?B?R051RGJMZXZuYzcwYnNaT3JHZHNNVkVad1lOTXRNWUx4MlZBMjBJZU5UN2lp?= =?utf-8?B?N1JEK1JDbFF3U3JSN3BDemQ4TVl0c1g4a2VVNXdNd21saTZpTWYxaGd4VnZD?= =?utf-8?B?d1ZScXpFWm1ud1d0Y1JZVk5oM0FCcTZhZERUQ0hjdHY0ZzJDdkhaRTRhaFFM?= =?utf-8?B?QXphNGVUbHM0Sk1VTkwyR2ViQ2lNeXBLcE52M3hmaEhKOW1oSXdUaEEwd2Nx?= =?utf-8?B?TjE1WnZ4QXUxc2xUZzR5ckYwSjZybDE4MCtNQk1BNFVCN0haSkp2T1QvK3BK?= =?utf-8?B?Um1SaW1iZmNqU29Pa1Y2UTUzWDZlY0NmaUJ1dDhHR0J3RnErT3ZUenBuYjVj?= =?utf-8?B?UWpSZmVLSGU5N1hrTHFQekx3d0ZLYUJvQUMxdlQ1eEpCQzVGcUd4c2Y1SHVt?= =?utf-8?B?UlZ1RW9ZU3E4dDRjYk1WaytBdlpZaitsdEVkK0x1MzR2cHp2Z0hYYWdmaTBr?= =?utf-8?B?RG9hcWZGdS9xNE5zNGVRUExvem1QQmxqWTh2NHJrRGxqWkt0d3VHYXVqb2ZZ?= =?utf-8?B?d0hDcGpKOGtHbFlud0o2UVhQaHVINlpacXphR0xKQi9PdjRqbFlnQ1BVMUp2?= =?utf-8?B?ODNrT1k2M29qN2hrTlpXRGIrMk9yK3pLZjAwa3lXcHBKZTlkaERXeGZ2R2dU?= =?utf-8?B?ZEVjMVhrTk9LWWI2WkIxM0g4OEF2d1hCc3c0WkxPRjhVL2pvTGdCTG8vZnBj?= =?utf-8?B?WEo4Z09LamYyZHdYUXZJSlhvdldlUVF1V3hXRWlwWjdUUjhKYkZ6ZFRzakpJ?= =?utf-8?B?TVFOc0oxTjIrbzByKzIyQTlUanpPZDdWcXUyVmZlTldTNXlnOSs3azRnYUhE?= =?utf-8?Q?kAgIZh9ZBuUAwQYgk7NfG9y+c?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 1d629051-5e56-45d2-0117-08db70db1bee X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Jun 2023 15:37:37.3359 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: E3korK6u1eTBq2p4t0plT1vgekQNsyKM9zqhpiqttZxXZbrNzRyS+KR9p24RoOAa8WRC09t3gKfZf6bK9rM4Gg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR04MB8363 On 15.06.2023 17:48, Alejandro Vallejo wrote: > The code currently assumes all microcode handlers are set or none are. That > won't be the case in a future patch, as apply_microcode() may not be set > while the others are. Hence, this patch allows reading the microcode > revision even if updating it is unavailable. > > Signed-off-by: Alejandro Vallejo Reviewed-by: Jan Beulich From xen-devel-bounces@lists.xenproject.org Mon Jun 19 15:45:24 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 19 Jun 2023 15:45:24 +0000 Received: from list by lists.xenproject.org with outflank-mailman.551173.860549 (Exim 4.92) (envelope-from ) id 1qBH4A-0004vg-MW; Mon, 19 Jun 2023 15:45:18 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 551173.860549; Mon, 19 Jun 2023 15:45:18 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBH4A-0004vZ-Jr; Mon, 19 Jun 2023 15:45:18 +0000 Received: by outflank-mailman (input) for mailman id 551173; Mon, 19 Jun 2023 15:45:17 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBH49-0004vQ-RY for xen-devel@lists.xenproject.org; Mon, 19 Jun 2023 15:45:17 +0000 Received: from EUR02-DB5-obe.outbound.protection.outlook.com (mail-db5eur02on20631.outbound.protection.outlook.com [2a01:111:f400:fe12::631]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 49323fcd-0eb8-11ee-b234-6b7b168915f2; Mon, 19 Jun 2023 17:45:16 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by AS1PR04MB9264.eurprd04.prod.outlook.com (2603:10a6:20b:4c4::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.35; Mon, 19 Jun 2023 15:45:12 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6500.031; Mon, 19 Jun 2023 15:45:12 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 49323fcd-0eb8-11ee-b234-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=I79SduadvLItub2hJ+BdN+h5/mYWvDN61WfyUINQCgLRf0t7FSZbgNGmiAfi42Wum4gl6oy6wtMcy48ZfOD1TXGBsqTEX94BF/GTjqsrTd1o9KWTyDqfTv9Gu5TPDN5oDW4Z0VzcSjpGb0U/3+F5Sh0PhVeSOEVdJTDsOuFaf5iGwEcjSfR/SJQ/XzFItd4IuNx5sLvb/iTEumfQHo9V8AE9UdV4OED39hbLSm99OZ2hZLtw/9+g9GGyYuJAtiWEUEHyZpkvpIruTViKYcwpKrGv5b09HNZ0Bxje7iBHt4y3bAlwJhxEsTEPZ0yFjaQ4O445N5oeUXhRCVwDxS5h3Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=aBIQVeXYGkUiwTtpLUC3WdPaoUvfBUWTnS+eF7jDy/8=; b=UMbiokDo5DPDomWKmqv9XSxPPk/0YOo2+NoidkqLkG5fADVET60hijz8uJFZWruhCJHSl1R5qQo4Cpn78g1Bz3sH4GM3kAqP0WDH/vF00Ur3edflVclPuS5Z+0sa7bK+fDBhk6kcmsweZy4MPoL0zFeDApKH8koj3MRqZyji8BlLT1qrqloI0aM6O6LGlRaiIv+6j9McpbTxwqrHsoCYO9Hh2KEV7Onq3O+sk+qgMgX2RxlvedKDCST95LIxetnVDZFUZVBjaTe9+XCbXpmwWkrfmSJ0x15S3XmMswqhim560bCZ+SHYbmvsu2qNi5EHt6f/OQ4mUNwdKPIFGu+axQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=aBIQVeXYGkUiwTtpLUC3WdPaoUvfBUWTnS+eF7jDy/8=; b=dutK5BwHqKcMN1EHBeHP+T9VIlynJ7EAUZAyNCRXP+N6wI42yQE5wbyycK7G8w5ejmKM8tB7DZ7KbwjI3SgjDCJBXDrm/N41F/pfOo2bzl33rKq4KJ8Up9AAb+g+pO4ypHEZ6N5pPHH9oik3FZmqUd5CIf6D7tPCbbGZYG8JIJSHSnOC4RJ7sKHoLcvmnXM6/V99oKchZnA5oMntpEFnZnScJxXs0NrZg1PcOJEeuluMsFpuAihjhNPD6vLRL9l1RPqTmGg9bN+pNngkO/x1KIDkubbzwY1zDm4MQ4vX6APwwXy6DCv9c7QPfs/PBYQBHJOVv1EwEehumeTHy96Wxw== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: Date: Mon, 19 Jun 2023 17:45:14 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v3 2/5] x86/microcode: Create per-vendor microcode_ops builders Content-Language: en-US To: Alejandro Vallejo Cc: Andrew Cooper , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , Xen-devel References: <20230615154834.959-1-alejandro.vallejo@cloud.com> <20230615154834.959-3-alejandro.vallejo@cloud.com> From: Jan Beulich In-Reply-To: <20230615154834.959-3-alejandro.vallejo@cloud.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR3P281CA0048.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:4a::20) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|AS1PR04MB9264:EE_ X-MS-Office365-Filtering-Correlation-Id: a698e0c1-93b4-40cf-d059-08db70dc2b42 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: RcT6jjOAQh8ciWNVPEqFmfpm58Y1MtxGm+GWhWz8dIC4BTND5uueN2VNjFbJlPjISQB4unH1ZJTYXyxmznGhZxXzzo51D1+q7v0kAKlx6qJ6yGytLadxZIleAPWlaQiOzcax4GZAxl0yr+qBZHHALrq0pgPIl6IzhWFdxlKJyt/A+uq2JfqZ6o4puvFH08zK2dpcrjNlm78Vju7L4Zf9Q4O083pp88E12NPhduA5J5zvHwcYPaDa8ndgp6wX0sE6U2bnDYxATrqe+Kk6Z8qbkdEBrcDas4t7pzMMqZN+2M+FIya8/cWes6KYjJaUryPAYuQR+7Gyqtk4d8deiKIe9UcoYan0mu2kTbroYgpGpYTvx+nH35hcQWO37kZnji0sYBr6ivbGXW5ls1hBjFvwtUIjbUO7D34D4lVw+p23FmwaA/qUmUNeWfh2ARhFR8r/LQqo8dn//fzT4BwfSxfpAzW/tyHBduxjRTJUotc02jSv7DY69zcQHpHr+Fzy2/dVE6L4SvJxSdqBCTEWtG3yR2RjXWknqi0qPb8rwB8HTxsHyW4jRxqge2VrAoqe1N3Y4XzUt1FmuQvmFgCeU6PuwSnVIBjFPCnr6MlRdnjficGojuuJG73yn+SWbt/LEMgaiBc7KVjFRyFfr9+eu5Wcjw== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(346002)(366004)(376002)(39860400002)(396003)(136003)(451199021)(186003)(6512007)(26005)(53546011)(6506007)(2616005)(83380400001)(38100700002)(478600001)(4326008)(41300700001)(66556008)(66476007)(6916009)(31686004)(66946007)(36756003)(8676002)(316002)(54906003)(8936002)(4744005)(6486002)(31696002)(86362001)(2906002)(5660300002)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?TUtHZndHZXZCa24xR1JPSjJSQ0VCVlRrNGNQblIxYmJTdzJTNUtxZHhmYkFN?= =?utf-8?B?WFpGU2k4K3NKaGRpSmdxN3VjWm9JVjZ4RTVkOXMwaDRVYWNUQnZhZGhDeDdN?= =?utf-8?B?SWIxd3J3UlV2d0g1UEFCa3FUMW5kVi9QM3BTUDNCMXhsOTdSdUZBWUxMT21t?= =?utf-8?B?TXBBNXJGODMxbjFIR00vcTExTVVjczR2TWcxMkZrWnNBb0ZjZS8vUjRxNmhG?= =?utf-8?B?V0x0OGsrMkJsU1UrQmF6eU9SNEFJTEdLeERDaHJNZEJWQ0IrbUZsOFovdTZk?= =?utf-8?B?N2xVUXJTaHltUUtmRE9va0kxcWJzVks5MkJwVDBQOGpqTEt0Vzhua0ppRGMr?= =?utf-8?B?R244ZVZHRXFwQ0dnUUpmaDFyenJCUnVCU2xLUCtVdWxtRTRSRlZnZEt6WWxj?= =?utf-8?B?SWVDczdLcXQwbFdTSko0VDVrc0VENmxHZlZkOGxmZjh3aU13YlpuQitPQnNM?= =?utf-8?B?M0FaYkNrYllLeVc1T2haYXhES0N0QTI4cXY5STBwNUcxUVJiSDY1VCtOczIr?= =?utf-8?B?ZFNWd1NMSkhSQVd4aGFubGthWjB2bDJvZDZXellVK3AzSGNPTXJXWkd0SVJC?= =?utf-8?B?WnFCdFVVNENPOU5NSE8rZ1VGd3c2NytIOVQrQXQ2S29NdmxWbUU5akFHeVAx?= =?utf-8?B?a09TMHBhTVhxOWs5WG00Yys4czZ1Qk1ZTDU5bW5RVWpiZzNkeFQwMW5KNnRI?= =?utf-8?B?V0tYM2NpbFNHaGh1eEozekpmSXpqU2ZQZ0Y4ZXJtYUZOV2lJQXRqYklHQmtZ?= =?utf-8?B?TUFURmpEcWliU0c0NjFtY3Q5bzlLSFJQMGdXdHcreVdVZjNtc1MzZnNTQ1Uz?= =?utf-8?B?ZUVxeTlUKzFISGVJK0pyL25tVVRZdWcrSFBpQ0lhRjF3eVB4N0crWFZCbllF?= =?utf-8?B?MFBDRG8vcnJ6Q2ZVYllmQ3FwMmJFTFRyKzhkNC9SbHF1YjliWnFMZGxmV1FG?= =?utf-8?B?d1pxb1JKUlduR0tEdXhOeXkzaGZGUjduZkZYS3RlVnRhdlh6S0pRN09oaCtM?= =?utf-8?B?cnM5VS85TGRZbFJQV013R2tKSEVPMkNjMDU3cW0wd3RSd3JSMkcvM0FMUWU3?= =?utf-8?B?Q3phVFIwNlc5WEEydHA0Q3RkQ3Mvci95K1hDSUpGMWVvUGR2YXp5Umd2dEMv?= =?utf-8?B?Z0o4UFZqemdob0FYSGtudENBSTROdVNhdUt5RGc0RnNXdlczZWExR014SzJ0?= =?utf-8?B?S09NRmlUQmNsWVBZVmUxWG5rWkVZMGZEaHRrd1BZREFjR0xtRWFDdzYzY20y?= =?utf-8?B?TE83aG1SenVnY09FSlQxS1MzbERXdjZlU2hmZU0yNndPdi9GN21PZ05sZVpx?= =?utf-8?B?OFp1cFY2aXlRVy9DQnRWU24vZXZVRFdOSUJjNXRhb282ZDZoSVdCL1hSOHM4?= =?utf-8?B?bkxyOXB2dmp2S0RPdStSNVlXbXJsSjNzK2JhbVRFK29XaFhVcTdqeWlLWjM4?= =?utf-8?B?M0dCQmd3STR5Y0R2UldGRFl2TlBIaXA5em5wc0l0R3pmYUhDbFloSlZjQkkx?= =?utf-8?B?cHRmcEZxY2g1b2lISlg4OVFPQXBSZ0tML0o3bUU5UDBLb1Bld2w1Z0tHaTdB?= =?utf-8?B?UmdYMUpueSt1VllrdjR2M3VRYllSbXNtT2pqM20zcWQwNlpRTXptRmtmMnJW?= =?utf-8?B?anpNaWdGUUNMcWU4YlRUQTM4MHUwb1ZaZ2JSK21ZMmNlRjlxaElQdk5oZ3Ju?= =?utf-8?B?UTJVcitMUzJJK1JOZ1dBV0hWek1qeXdQVE9YVG43UnF3a3MrTWhuV3dEWWov?= =?utf-8?B?cGZDTW16M0djYmNDdTJkU2JQaHY4d3kxcFR0Q2IwNlE2ZVA1dU15QVdHOTVl?= =?utf-8?B?WnN6NWJRbEhCYmNOcTZNQ1JUbXd3NFc4MWxZV0h1TjU5SStFenRBS0tUYzdq?= =?utf-8?B?L3pzU2xUSGhhUUFCR2crSHh3emRhTHlNV3orUG9Zd1RWS1NoOFBwN1Vhc0Y5?= =?utf-8?B?cmhaRklBbXpsb1hLYkxYV3FnZGk1N1VFRC9Fa0k2WXp6MnRpQktjcVVWRWJP?= =?utf-8?B?VHVSQVpTbGJVQ09vZjJNMEZEWVp2WXJLVlB3QW5pY0xqUHNmQXZqVXBrUGlS?= =?utf-8?B?OWxlK2JwanZIbGVrdjlMVHRPN3NXRktCeGlCdWZWTlNqTERzUHcxcHFlNWRU?= =?utf-8?Q?WwH2evpew0SyEP5h1dNYvlibp?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: a698e0c1-93b4-40cf-d059-08db70dc2b42 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Jun 2023 15:45:12.5082 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: fc0rZw4F7OxYWaub4pcq7pQW85XTW96KzX5FJR8zR9EgoQnfsG06wbJvkmOgkOSJJ6SagMRqFz1e/YkBXti3Rg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS1PR04MB9264 On 15.06.2023 17:48, Alejandro Vallejo wrote: > --- a/xen/arch/x86/cpu/microcode/amd.c > +++ b/xen/arch/x86/cpu/microcode/amd.c > @@ -432,9 +432,13 @@ static struct microcode_patch *cf_check cpu_request_microcode( > return patch; > } > > -const struct microcode_ops __initconst_cf_clobber amd_ucode_ops = { Something will want to be done to retain the cf_clobber aspect, i.e. to be able to get rid of no longer necessary ENDBR64 after alternatives patching is finished. I guess I first need to see what further patches do in order to maybe come up with a suggestion. Jan From xen-devel-bounces@lists.xenproject.org Mon Jun 19 15:47:37 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 19 Jun 2023 15:47:37 +0000 Received: from list by lists.xenproject.org with outflank-mailman.551178.860560 (Exim 4.92) (envelope-from ) id 1qBH6J-0005UI-4N; Mon, 19 Jun 2023 15:47:31 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 551178.860560; Mon, 19 Jun 2023 15:47:31 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBH6J-0005UA-0C; Mon, 19 Jun 2023 15:47:31 +0000 Received: by outflank-mailman (input) for mailman id 551178; Mon, 19 Jun 2023 15:47:29 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBH6H-0005U2-Mz for xen-devel@lists.xenproject.org; Mon, 19 Jun 2023 15:47:29 +0000 Received: from EUR02-DB5-obe.outbound.protection.outlook.com (mail-db5eur02on20620.outbound.protection.outlook.com [2a01:111:f400:fe12::620]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 982b6789-0eb8-11ee-b234-6b7b168915f2; Mon, 19 Jun 2023 17:47:28 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by AS1PR04MB9264.eurprd04.prod.outlook.com (2603:10a6:20b:4c4::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.35; Mon, 19 Jun 2023 15:47:26 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6500.031; Mon, 19 Jun 2023 15:47:25 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 982b6789-0eb8-11ee-b234-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=YSXvLla6adPwU4x+1CFswYLSukOqMy7XwOtLOnwzXyfoHuQ5vRFrAEDlevUT64mxlfYToMClJI4+BpOrUZ2WeFxDQq01H7t0Xd/MkhKiK3BFX91Pa7ieAvrL65PMljf+45OG6QlRjSlhK0Tqjo7kQWwzAQtKXo/crZJQlb1pTFzOw1IjVyT0g3/rhklq+ZgevOKmdS9vU/N4j3y2sLBy3Sbkah5urJ55ohNiZkYWXezF9Ir0E9nS7ecN5ThCi0ZC9Mzk+8otin1Qb5GtCHf3i4J2enTkJy3aCL6aa/7x3TwDtCoXqXNgNA4PQOegX2YqfX0U44c2u43iE7gTiI/YJA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=pdv3rfclFxehgQtWUtu6Fa6CdghijGOiRQobN0fprjQ=; b=WtL17/AhoOtoTlCMX9ArcGNrSoTKV/XIDSH31KQNqKvbUxGYfEVyjc8X9oYi8vUbOJLqPgpmuPMyXPLjGxU9E8R5STl+qEEYa4mGaxiUfLY0fxTdSF57i0LICkzWVndoKdqL044IgT5q/RO1erAZf4fYEI69OM7PsueH0NfRlp+U7DmFaBLlt9GAwkmYSWTva7gzFS+FgGRwKgmLJXJ4xK24Qx11SKcqr4UD66DyTZej2JXQORILNdHYBS2OmVlkj31aNzoLxqsy2tt08XKgPksU8+WxVG6Jbp8JdBI4iZjZ2lCb+vknu7320BnjQLrC8kq4lZ2rBDuWzk4lYLk2+g== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=pdv3rfclFxehgQtWUtu6Fa6CdghijGOiRQobN0fprjQ=; b=LOvChPrTSCeCpffvN1GBFFpMe4Q5OKwo0yWHkoVw/Mt0rvVtbYzySMU189eSgFquSvrE4pNxwl/RBTpn29M9KqhTfBpENs0/U8vspGhZKnMEFeAmSX98E2Y7PG4qk3Mh/ebd14wMNAt+xQ8XGwdgI0EvIhXrz2g6iFFNuTtqxj+g1kXYHjWRb2Dw58WMpkQL2PuGlsbolKYabMbvb/JodFglff+YhD0R9imW443DSpzJJCenrQeuklWhpuy4cXROq91REvbHt5t2CTpkH0WLkhhLz91+letWR1N/RAPaY7VuNYk4zM86D7WJnPla/8N25PPyLQGuWFvUSgNVWRVwSA== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: Date: Mon, 19 Jun 2023 17:47:27 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v3 3/5] x86/microcode: Ignore microcode loading interface for revision = -1 Content-Language: en-US To: Alejandro Vallejo Cc: Andrew Cooper , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , Xen-devel References: <20230615154834.959-1-alejandro.vallejo@cloud.com> <20230615154834.959-4-alejandro.vallejo@cloud.com> From: Jan Beulich In-Reply-To: <20230615154834.959-4-alejandro.vallejo@cloud.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR2P281CA0116.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:9d::9) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|AS1PR04MB9264:EE_ X-MS-Office365-Filtering-Correlation-Id: 1a933c9a-53ce-4f3d-609c-08db70dc7ab7 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: wFKlUNM86HOlbj6sNa/laTdcdUL6PK3rYo76TOmjJQZSOsaop59B5oT+YCVcAhRgHpIdUKhewK372veOc63K7OOIy7Ri5k+ywnFaMh06sEC92DFpfz6T4daxCC2mq70FFWuZYwXD+eqG/CSrfzqummtBX+gqGktLVv0Fh5kwYveX967eW4GG/NWX6ESf9Bquw8SFm6oOjSEJeZ+EmjZ2WGTnoIT44ljUHdCDlC1cMhRav/BNcPkFfqQuNZOuu4NiS9//6F0NT05nvUFaw6LjmqCwOpI9+ZROyPQ9k/IikDVVGRkWKDiy7Awevdw0BC5Q64JEZevPOmwiAgLaEZrHbcyuHdWhFc7etzmlRldUpOCAC2k7uE51XIRelaCY5xGa1gTNIdF54LxV4nkeCXFuTrh4sl2L8Rfr2+faaB7sCzs6IaqIj3V394Xmj9TyO3rmBGj3jPXJAjQb4TizGrZU29B3noPJKJIvqnCoHQLpTMhTHM/XFWePAp3R77vH4N3NnsximGED+x0L2g+KN0flf8YoNxXZv5qmfIeIbAoS67nud+/tOk+CG/aY/E8r2QWILpudnIWRlhI5QSulwaupMliaNm/X9LH2Z8cfeMTYYyDaBkuCysxQN4FkwqAlWEkWdMpQZyyRLiIe9lC9J8bCuQ== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(346002)(366004)(376002)(39860400002)(396003)(136003)(451199021)(186003)(6512007)(26005)(53546011)(6506007)(2616005)(83380400001)(38100700002)(478600001)(4326008)(41300700001)(66556008)(66476007)(6916009)(31686004)(66946007)(36756003)(8676002)(316002)(54906003)(8936002)(4744005)(6486002)(31696002)(86362001)(2906002)(5660300002)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?WmozaitlNDd1S085MlRQWGt1UjdKWlBsU2dTbU9TWXBSR3VkRWRTRmhxLzFm?= =?utf-8?B?WCt4OUFHcE9aL2d1WUphTzFjNzR6cGUwS092Ky81OTJWU25xTjRCQVY1S3pM?= =?utf-8?B?VkJXSng0Z1MvQ0xhalMycW0wcnkyeTVaRlY4Uk9rQzFCNEY3VlV2THRIQ1VW?= =?utf-8?B?c3o4djVFeGt3bGw1SDFWdEJ6cm45NENWdkxEc05lT01tNEcwZEY5QktJekZh?= =?utf-8?B?b0l2NElSQ3hOUndLNFpDRVlSZVlnNlNWVGdXK0xPOXJ6eUg4OGo1YXJyUXFL?= =?utf-8?B?TmhsVGlHRXFZelVlRVpGM3BTZEk5UVNGckxZQng3N0RkOWJUNWRJVjFDeldR?= =?utf-8?B?dGNiTytkN1VNUklyOVNmYnZQZnM4VXdGQjU1MFoyaEo3RDR3OTUrUFI1SHNI?= =?utf-8?B?T3VRSUdEazF2L1Q2Y1o1b0Y1YXJOLzZKRmwrczd4TjN0M1hDTjlodmxrSnNU?= =?utf-8?B?MzB1NWkwMHNIZzQ5VVBOcU8wZE1JMnY2MktoeGZ4K2JreDN5NEw0YkZKdzFi?= =?utf-8?B?VVMxVU9VZVRIbFc2dVJTdEMyV0NtU0tjKzZIVXFiZ2NiU2xVeEgzOXNiMWI3?= =?utf-8?B?VDJjUkJyaDMyR1RHYy90aGFDVGFuRHlxVzh3UGI2d3lhVlB6b05DTjN3NDV2?= =?utf-8?B?TERiNWdnYlhFLzN2ZW9UckhIeXEwa0Ewazh2aWJKWHhQUzB3M0NVNHd6WWdm?= =?utf-8?B?dWhVMTJuUzM1RFFROS9NdkVWc0Znajh4NmRURWJibUVQWmEwOS8vRzgzeVdZ?= =?utf-8?B?STNHMjhIWXhhaVVnUzhCUExiL3JXRDcrdjMrTS8ycXhUMnhGRVNIU04xS2FH?= =?utf-8?B?NW1Tc09leWoyblhxMENCNmlRbXpjNVVXMDVkMlFtK1prUW9iZmJNVE9wL3Bu?= =?utf-8?B?aXBsR0pSdkxhRGNNbGkyZlkxT2UyNHNYTzJveVlYZHBPNVE5OGVuS05RS0dF?= =?utf-8?B?MHFrV2c4NFNWSzJZQmc3TlY5Vng0N21NZFpFQWlFZGtIUjRHZ3J3Nlh6QWxR?= =?utf-8?B?ZGZXVzh1bEhOVnlMdlpsZzF3ZHQ2T05WdENYMXgxTG9QS0Vic3FDK3Q2TDZr?= =?utf-8?B?cVdHdmRBRXovYnNPRnVjYmlGTUxZQWhVdVd1aW9JRkRnckd4NmNRSmh4Sy9Y?= =?utf-8?B?bWlQQTYrVWF6L2J6TUhPZ1hTZmg5L2NnQWZMVy8vTmhlaTZlTTJOMkpVaFAy?= =?utf-8?B?ZlNXaE1BU3llYUtSNnBoNDdDMTBhQ3dCb1FKZ0tHeFZWZDhkakw5NzJFaWZZ?= =?utf-8?B?N2hsYjhGUDkzcVh3ZERnR0FMQ2NrelpTeG9TdWk0NCtBa1lDRWhIU2xkaG55?= =?utf-8?B?Y09USDRhOGJvZjh4WkExeUFGSGZqdHNHckhITVU5Ukw2RUhWQnN4TUFocDNM?= =?utf-8?B?VU9FNzJ2bGdrTEIxWWpmNG5GZEpDZmFRMStrSnRDRjdVQ1B3bDBaTVk3dFZO?= =?utf-8?B?SFZaVWF2ZzFaeHYyU1NVWUM3MnRWZVJITEluZi9rV3pkbDl2UWVYbi92azEv?= =?utf-8?B?TDV6OUpqaFQ4QkszQ3JHdW9xdWdXQ2dkTGpKVU9XRTNZZGVvdmNhakRPaXli?= =?utf-8?B?VzBvTDBpUHBpaVZJZzRBSTNkdFpnK1lBV3hpS1V5OTVzd0M5WmxRZHlDdnA5?= =?utf-8?B?aGxlbDcwZnpYK1IycDFXNjZxdk9vV2R0MmdiOElpelNvK3hMeGtDdnhyTDll?= =?utf-8?B?R2kwd1lpTmFpd1pRUGV2WWFTNTJXblIwcXdSSUZ5ekJiQUIwZmNPZEE5d1dX?= =?utf-8?B?QVBadzZWZ01SRFNrNUJrNnJoSzE3NmRBcUpqdHd3NGNlNTViMFVwYlFwNExq?= =?utf-8?B?ZHBEQmxuTTkwR2V3ZG4rZEVsNHBINmJsZ2tqNGJZMU5FT0lmQVJ1L1pFcGZu?= =?utf-8?B?elZROEVTQy9pYkQ3M2VuZnoxSkdSNS9MTnJTMU92MkVsUGIwY2VSUlJtZGdT?= =?utf-8?B?OHdmNll6SlB5ajBNcU5KTlFReUlTUGlSdmVSR1hnZW9KUkhwYmM4L0dWQXVu?= =?utf-8?B?TjBkZWEwMmt5OTlhcnZLSEVBb2p4bzBmVHV1Tk5YSmEyMkYvLzJTbFRpdG9L?= =?utf-8?B?ZnAzL1c3RlVjUk1yN1pnQTBTV2VKem84cjg0Z3A1azRCK3ZQRWFmM2NGdEFm?= =?utf-8?Q?D5EuBMVgHSqJ6SF5uFfS7MgAA?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 1a933c9a-53ce-4f3d-609c-08db70dc7ab7 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Jun 2023 15:47:25.8838 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: hNvtBL18zWh4cQH9ZjTdnpkVJff4Enzf9bhQJCD/9ALsSkqZYWjdQIkSS+4VaafOBefCMi5lbVRzHted9ihxeg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS1PR04MB9264 On 15.06.2023 17:48, Alejandro Vallejo wrote: > Some hypervisors report ~0 as the microcode revision to mean "don't issue > microcode updates". Ignore the microcode loading interface in that case. > > Signed-off-by: Alejandro Vallejo Reviewed-by: Jan Beulich Aiui this is independent of patch 2, and hence could go in ahead of it? Jan From xen-devel-bounces@lists.xenproject.org Mon Jun 19 15:49:32 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 19 Jun 2023 15:49:32 +0000 Received: from list by lists.xenproject.org with outflank-mailman.551183.860570 (Exim 4.92) (envelope-from ) id 1qBH8F-00063k-Gz; Mon, 19 Jun 2023 15:49:31 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 551183.860570; Mon, 19 Jun 2023 15:49:31 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBH8F-00063d-DF; Mon, 19 Jun 2023 15:49:31 +0000 Received: by outflank-mailman (input) for mailman id 551183; Mon, 19 Jun 2023 15:49:29 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBH8D-00063X-MV for xen-devel@lists.xenproject.org; Mon, 19 Jun 2023 15:49:29 +0000 Received: from esa5.hc3370-68.iphmx.com (esa5.hc3370-68.iphmx.com [216.71.155.168]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id de60ca8f-0eb8-11ee-b234-6b7b168915f2; Mon, 19 Jun 2023 17:49:28 +0200 (CEST) Received: from mail-dm6nam12lp2174.outbound.protection.outlook.com (HELO NAM12-DM6-obe.outbound.protection.outlook.com) ([104.47.59.174]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 19 Jun 2023 11:49:22 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by SJ0PR03MB6875.namprd03.prod.outlook.com (2603:10b6:a03:43a::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.35; Mon, 19 Jun 2023 15:49:19 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606%4]) with mapi id 15.20.6500.036; Mon, 19 Jun 2023 15:49:18 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: de60ca8f-0eb8-11ee-b234-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1687189767; h=message-id:date:from:subject:to:cc:references: in-reply-to:content-transfer-encoding:mime-version; bh=vaUsiIPpBTuUERNVDR3RTu4VMJaKQmmz5xIP2EGeXeA=; b=WDL1eR+v+4Y5C+Z1fEkWA2h10rxYSp0wgCnPiS0DnQbOiOtZpkP//QQU EjY47huGRppuIVCMXQ6YlLKo/aAKBhocJLcmSslMLyHYCdoPCTFXgL3NL sCQ45Q26e1dLPAWWltWATxkwRbaZzf9R7LZD0ecIWRazlXO0upSFkb9gb U=; X-IronPort-RemoteIP: 104.47.59.174 X-IronPort-MID: 112092400 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:ttypxKh+nI2n3IBvnQZmSPP0X161oBEKZh0ujC45NGQN5FlHY01je htvXGuAP67ZZGr1co1/b47j8hxX75/dyN5iGVFu+SxjHnkb9cadCdqndUqhZCn6wu8v7q5Ex 55HNoSfdpBcolv0/ErF3m3J9CEkvU2wbuOgTrWCYmYpHlUMpB4J0XpLg/Q+jpNjne+3CgaMv cKai8DEMRqu1iUc3lg8sspvkzsx+qyq0N8klgZmP6sT4gaPzyN94K83fsldEVOpGuG4IcbiL wrz5OnR1n/U+R4rFuSknt7TGqHdauePVeQmoiM+t5mK2nCulARrukoIHKN0hXNsoyeIh7hMJ OBl7vRcf+uL0prkw4zxWzEAe8130DYvFLXveRBTuuTLp6HKnueFL1yDwyjaMKVBktubD12i+ tQ9JAE8cTLdptmL662+Rs83hcQxBuD0adZ3VnFIlVk1DN4AaLWaGeDmwIEd2z09wMdTAfzZe swVLyJ1awjNaAFOPVFRD48imOCvhT/0dDgwRFC9/PJrpTSMilEgluGybLI5efTTLSlRtm+eq njL4CLSBRYCOcbE4TGE7mitlqnEmiaTtIc6TeTirq8w3AXLroAVIABITxydqui7tn/9d8BAd WkL3SsF7pFnoSRHSfG4BXVUukWstxoRWdNWH/c9rh+Ezq7Z4QGxDWwDUzIHY9sj3OcmSDpv2 lKXktfBAT10rKbTWX+b7q2Trz65JW4SN2BqTS0OQBYB4tLjiJoulR+JRdFmeIaqivXlFDe2x CqFxBXSnJ0WhM8Pkqm+o1bOhmv2ooCTF1FpoALKQmii8wV1Ipa/YJCl4kTa6vAGK5uFSl6Gv z4PnM32AP0yMKxhXRelGI0ldIxFLd7eWNEAqTaDx6Ucygk= IronPort-HdrOrdr: A9a23:VjlRGKCTKjK3E/blHelc55DYdb4zR+YMi2TDt3oddfU1SL39qy nKpp4mPHDP5wr5NEtPpTniAtjkfZq/z+8X3WB5B97LMDUO3lHIEGgL1+DfKlbbak/DH4BmtZ uICJIOb+EZDTJB/LrHCAvTKade/DFQmprY+9s3zB1WPHBXg7kL1XYeNu4CeHcGPjWvA/ACZe Ohz/sCnRWMU1INYP+2A3EUNtKz2uEixPrdEGY77wdM0nj0sQ+V X-Talos-CUID: =?us-ascii?q?9a23=3ANTC2DWgr4CDLBbtUYoKaxlND3TJuV3Hs/WjyfW6?= =?us-ascii?q?DNE12TbGzElyQ6olNjJ87?= X-Talos-MUID: =?us-ascii?q?9a23=3AjJ2KmgwWoNx8QF28FSeJQutFWXeaqLnwEgcrmoQ?= =?us-ascii?q?Eh/jHGT5vZRKCqzWcAbZyfw=3D=3D?= X-IronPort-AV: E=Sophos;i="6.00,255,1681185600"; d="scan'208";a="112092400" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=KOSYUDduUOwqn5og6xDEa0wr1Rv0DGkWw6sEfRroWRzd0pGBVng3r6huW+65PXlc2y2P3JOniqBxr66juz8OUtcDEhvt07k/Ss1WicMy3v3ICI+Tsne24KQcPTl5T85D0qmpN7W4X/iAU+zjwKEhwrhHU/QEYcQupE14AwtBkFNofGznmTsF47LG8zhmQYbiKYGV1vqaQpSJjzlftcQpdm6Cl8mjQg1US2EljCHr5u6rdRGkVUjgM5NQAVq1aseAjxBHiqMjg50XOM88+tacvQBdo56RgSTr1vqJjjuBxFuGWw1JTC+s5eEJ52A3Q30tnM0TFoyMivsyE4yX0K9IcQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=vqtCDYgTW/xJh+ikwyl+SdsfE/UoAGzAUd3m/7Zw1BQ=; b=VsTNQCdrSH0xqbymdN+9/PURqSyfGenv2mvwM+msaieLlU7MlSChR3EYHBBc/EmVGzQ/rKDSyCISic9zgUHQe4XnRB6IU/8KPoErmhz9wcgQmwN6t+jMv0eMcLtViqpU1MyCu1yQyB3rKpMnNKsr5PPbETVnos9WItgsZgfQgMGkrsR9S8TJKj6aZPJaXfssVsFN0QBtVr28ye8VWKTWvAT9g6YPZidc5UDzIv4mOICcHUiNsvXiQN9yAxhBlWLx8Oy/ZyswepHQ3wXTwCwUtAzn+vHyHKSlNJWf3Zbp6xQKvddnO+52QxAc+jkZ1rnFykROziZXOV4Pg5wBsrZXWw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=vqtCDYgTW/xJh+ikwyl+SdsfE/UoAGzAUd3m/7Zw1BQ=; b=MPihYEwwlCVzmn1xAxW2Iw5PV/CPCR4iGt08Bxi4D87sPAcYyw6PRL9EnV35cVp4BB/tXcZ24XK5vEC7ebn6Pxhs4KEeMbpzhRhfpSzHClOYPuEEXAqv0MPdJHVbuxvVX10m9kv62ilcbYJ9pyBBI1HLv7jZTw/ve3xZZCcKwqA= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: Date: Mon, 19 Jun 2023 16:49:12 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 From: Andrew Cooper Subject: Re: [PATCH v3 1/5] x86/microcode: Allow reading microcode revision even if it can't be updated Content-Language: en-GB To: Alejandro Vallejo , Xen-devel Cc: Jan Beulich , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu References: <20230615154834.959-1-alejandro.vallejo@cloud.com> <20230615154834.959-2-alejandro.vallejo@cloud.com> In-Reply-To: <20230615154834.959-2-alejandro.vallejo@cloud.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: LO4P265CA0252.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:350::18) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|SJ0PR03MB6875:EE_ X-MS-Office365-Filtering-Correlation-Id: 3ac3ecd3-e57b-42cd-a505-08db70dcbdc0 X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 22t9rbN62UCyhInrRDpbHSUY8Rb037TEQ1Prk4TaH7/+bKk1LjAcpzjtQF4g5YxeRjYxc9xDmFFB5q4FnDVfE44KJmbForpOcbwRuzQ1yGCPNDSrKqTUuSouHlZ+EZRElHzBb5ZV5DjsKQGx1KvdMzwW3jN2YYRz85184Ishsgt6cjhP7CASzAqsMuXYW4aWfH6NEWtzshoNMazvt6ahUK/hyoAFhPXCPEJ4elwx0kWA3j6Gj5tcJZFB4v4FudX3EaYDigfxqvJYsAHH7ZGoXxHeWEU3wJtDdPxfGzGxGqnoNPQRp2Z7Y3Q3udZNpSERYi/ncXVLFHRBbsahRJWf79Wb1yGJM9G6DVAzj8npKlKZV25ayNPp6h6g2J7kFyBgvAXRLsLrOMkUa+BDy7M1Dp5imXjjfkJuT1AyQ2de0WDpzbRozlobmGSv65o4AurILtRoJycSeUmqTp+K+GEFzid7NIsquoBCH2tWxAPmox8mbFQl+HtZiFJCt74p6TO24LVnAxC5Nkq35MNOK5lubzV/8/697ZF9chvFmPBhaIlTrjhF5B6FAVMvuUUI6IE5OfdcBh+TL7Tv7FSC7yA+mW3UjekdvyI7hJH6/iLKoR/BkydTo+yl0vB4uDg1ESZK/4y7a+HbMG3lJFT+NI0ErQ== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(376002)(396003)(346002)(39860400002)(136003)(366004)(451199021)(31696002)(478600001)(2906002)(4744005)(54906003)(6666004)(6486002)(2616005)(110136005)(86362001)(36756003)(26005)(186003)(6506007)(6512007)(53546011)(8676002)(66476007)(66556008)(8936002)(66946007)(5660300002)(38100700002)(316002)(4326008)(83380400001)(31686004)(82960400001)(41300700001)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?VnNhOGFnTURmRGZSZVpjTnFPQkxyaGFuRTcxTnVROWxucGJYKzRsSHljRGdG?= =?utf-8?B?WlUxRlYxVjFXUkFxRCs3VzZrL2lQNno4dzNSVmxXckZtUkFhOWxCN2FOMGJj?= =?utf-8?B?MGVIRlYycEdzeDNuZ0xlTC9tTVpwbUNOTUZmVk81blRWNkx6endYa3B6ZElh?= =?utf-8?B?L0JTWmt5SG5xb1VZV3hWV2JvYXU0NlowdEFhWTNxbHZFd1liUU1RZzNiSW5J?= =?utf-8?B?a3lqOVoybEZ6dnJrdEV5K3NGNCtPdkdjdEkzTzJWbmVOVXVNYXNUSnpnemFV?= =?utf-8?B?RG1XOFQ4dGhVS0xCVWdnRjNxcjVCQTJ2eUthellzcUduVThtL0RmUEtnMDk1?= =?utf-8?B?ZWVidjk2b1A4bXNXVEcwU3FoUmh6WHFFSE5JcWVxM3k2azArUjhzZ2VJQmNX?= =?utf-8?B?b2I2WmNoVytsTHZCMzRTcVVENmVnbDNtWVNuRlpYNHNkOU9KN0JKTUZCUmxk?= =?utf-8?B?SW95blkxa3JveFREZSswTk9oUzNPUGxma2JWVTluc1l3am9xTytyQ2dPajFG?= =?utf-8?B?WUp2QUtReVVhUFB4Vk13N1luYWluS1dJbG9kMElCRE9YSUUvL2UxSXZ2di9N?= =?utf-8?B?YnQ5RlBuUnEzNTV6ZFh6Vmh6ZXNFYitwYi9naDBqeDZycm1JRVJSc3ErSE9y?= =?utf-8?B?WUp2SDgvbEEvWStHaXVFY2YvRkpoaGVZUDdrenBLbURjNTR3T2V5Y3pXQncz?= =?utf-8?B?Q2ltcGR5MzhpZ29Va0JGRzJzRkF4YTVjN2g5WFY2djRWL2hFRlR1Nmp0Vito?= =?utf-8?B?STVvbW1BdW03SlR3bFZhMHllY3hydy8ySTRLbk1KeU41TldadThackNFa0s0?= =?utf-8?B?L3plYVptMTE1aHlQUGI1V1JYUFhkKzFJb0xyQ05RUi9rUi82SUs5VnZXeWxr?= =?utf-8?B?V2lnaTlCL2ZVaW1HZncyNitjUTJpUW9La0tjemhtbjFHdUVjQnFLM3RibjA4?= =?utf-8?B?YWxpYkoxd3dUcERCZkwxS25UWXpZT3RFTmdha1RLUzgwME04LzlUeENwVE9E?= =?utf-8?B?K0JGTXFwRzkzRXhKSkQ5YlBuNHB5MVNkSDB3NHpNS1hZaFhtQ3RZRTRXN3J5?= =?utf-8?B?V3d3NTd1WmY5cEVoTzUwOFFGMlF2TE5HcFY2SlpCN0RXNGhyM2k1aUhCM3pT?= =?utf-8?B?QjBLTWc1U090Z2FlbGY4ckpIN3JHZWJWVHVvQjBXR25KWjR3cW5rOGtJUERo?= =?utf-8?B?L09BdjlRY3F6VStIUXNjWmhWczhEOUhxSjJKTWY0WDV5cUs5SkZzOGNNdC9y?= =?utf-8?B?dVQ1MlhQUzMxd2kwd0tmcml3NFdXSDJSS0MwSFpxN2d4UWx0K3hPY2wvK1pq?= =?utf-8?B?Smp6QmVEVndiT2pBamhIaVhtbkhQWnJxd3A1aWNCVGg0TFVtZXlsRGVsa25K?= =?utf-8?B?bWl5K2pCQ1hWa2JTL29HekxHSU8zTVVkMTZCTVBtdW5nKzYvb1lvUWxRbldx?= =?utf-8?B?SVpPRGpHUWtScFBFK0cwRjhEVnRYSktZMHNjYjNFYURRNHBXdXRKdnVjczhH?= =?utf-8?B?Q1M4OVVXZ3VmUThRaXd1ZUNsSk9DYXRDL3hNSUlBSVVqUk55N0hFMTdyaGhQ?= =?utf-8?B?ZTJwcVFpRU5QS3l1OS9tc2xpSjR0WDNuYlp1Qkk3b3FNYXdlbjdUUVBsSEgr?= =?utf-8?B?a3FGV2hSaUtSYms4a3I0QXFucUUwalJRZEl6RGZ2b2Z4Qi9laDdnU3VvRFJG?= =?utf-8?B?SmhINGZpM2YzeDVqQjlLNjFEM0M0VEZaeFJmVVJxOC9aSyswTncxMzhDT1gx?= =?utf-8?B?Snk3MFRhK0RrVysrR1VlaFA5bHVvZXpXeDk0RXY5QWUzUFFMRzV0ZVFEVXhr?= =?utf-8?B?dmtvL3JkWVZQVnRydGhKclFBMjNyVTlhdEp5NXdYUXBBeHYwd0dhWHQ0a2s0?= =?utf-8?B?ZTFvNThBYmtOMklrOVkyMEI2cWtFSUxON1lJTXRNM3RFS0p4N245ZjNCK3da?= =?utf-8?B?NHFtb3J1YkxWM0lib2hmdG5mVm11czNUbEpyT3RqQXhBL3JCTUxLVElmREQx?= =?utf-8?B?MnVpNDZIYWNSMGpYNGplZ05lUG4vS1NqdCtTU3JiQnovMmt1em1YS0xDWlVK?= =?utf-8?B?Z1RZdmF5TzNDSk9PSzhRL1hMYTVKcHZrK1NJNTN4Zm9ENXN3TFNqYTh4UjJ6?= =?utf-8?B?L3ROVnlHQ1haSnZkaGNqTFpKakx6RC95TUY4RHRIejJNK1F6UmFWK1FsRWM2?= =?utf-8?B?QlE9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: wiT4UeLuCzafk57CQPdvINliuj9BDju9tOiDXTy+DqPJmXXI/TfgPEN9OCAdYg2j6KPonfwOmx6ZfzTKtYdMRaw6mzwH5DEpwg29xhBZj+2hKYzW3+KPSWa53lwR9oma6s3y9pTmUUBITMcmkkkg35Pbwtv78z68nIR4TDISiOT980ACZA3WFTtb7rNW1JkwJ76yFn+adr3qaIYAYDPHIWeTvJUn+BA/rP4cb29i8nwHE55H3jkcJGLTwYw3RUUpg9jL6dP2ULv3CkKocwpJMGN1WJFr2pl1Ub6NNwOwaqAR4U6ZKeTeLDAMcNeauShjXIjLLzFBdgnE75jnTBvvsVfAEN6LOUPYlI+7CCIf41mGJCtxkTFJp4XiAMhbIv4DGiBmAhIHiwZRms/HDnPYGelily1dVREBzQfbQKb8Wrp/ITUSDs/58vv5+jQ07SXTQlnRNF8foLUMTp/Q6fhxxmkJeuW6SiYnnWKhuiN85gYm0VXFPrQNVhZS/GtiswOuv7U9XOQVo+BcjeW6oFX7kxGMeL4l+MaqWMiOHrXAtoTTVO2otOvlA2KrK7oMDsNoiZSrEuO6lMvKPWqCUsampT0H3lk6dUaInkS22DWgvkGb3tJ3Y819ShqhrX3BYt7OaBs+V2p5PJ1ifOhegEx0uOS14MrZs2XDXmSR4UanB/DhgCT3fWaAFHeH7fE1YTYvTYXYHRGaFI5JnLAHNz4Bo+sCqovTPT71EtyXZsUbMTqXKhwR4lQPXBajrQ2BCNVHJmtWrHGpxLAZ46W7HuhSJFwCfSrnt+70r6M4LszpvdP1vIsoJCJAqdoObkjPf2l8W2OJh1W2PjCmhFN5JLMLuZt+a9LV70BQ4qZ2XOVYYcI= X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 3ac3ecd3-e57b-42cd-a505-08db70dcbdc0 X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Jun 2023 15:49:18.4883 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: FDkIeoS8yHYFKY/6EBm0jBufjWYPkQSHvfWnLDgQgp8viXR+Ztde33BNtSaZiSVzWIh+hyybQeFnm65jslGYL1dNCwftA+nqKQq98OpIyiw= X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR03MB6875 On 15/06/2023 4:48 pm, Alejandro Vallejo wrote: > diff --git a/xen/arch/x86/cpu/microcode/core.c b/xen/arch/x86/cpu/microcode/core.c > index e65af4b82e..df7e1df870 100644 > --- a/xen/arch/x86/cpu/microcode/core.c > +++ b/xen/arch/x86/cpu/microcode/core.c > @@ -750,11 +750,12 @@ __initcall(microcode_init); > @@ -860,6 +861,9 @@ int __init early_microcode_init(unsigned long *module_map, > break; > } > > + if ( ucode_ops.collect_cpu_info ) > + ucode_ops.collect_cpu_info(); > + I still think this wants to be the other side of "ucode loading fully unavailable", just below. I'm confident it will result in easier-to-follow logic. ~Andrew > if ( !ucode_ops.apply_microcode ) > { > printk(XENLOG_WARNING "Microcode loading not available\n"); > From xen-devel-bounces@lists.xenproject.org Mon Jun 19 15:50:06 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 19 Jun 2023 15:50:06 +0000 Received: from list by lists.xenproject.org with outflank-mailman.551190.860580 (Exim 4.92) (envelope-from ) id 1qBH8n-0007ID-WC; Mon, 19 Jun 2023 15:50:06 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 551190.860580; Mon, 19 Jun 2023 15:50:05 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBH8n-0007HO-Sz; Mon, 19 Jun 2023 15:50:05 +0000 Received: by outflank-mailman (input) for mailman id 551190; Mon, 19 Jun 2023 15:50:04 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBH8m-00063X-Mz for xen-devel@lists.xenproject.org; Mon, 19 Jun 2023 15:50:04 +0000 Received: from raptorengineering.com (mail.raptorengineering.com [23.155.224.40]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id f32072b2-0eb8-11ee-b234-6b7b168915f2; Mon, 19 Jun 2023 17:50:02 +0200 (CEST) Received: from localhost (localhost [127.0.0.1]) by mail.rptsys.com (Postfix) with ESMTP id 7FEB08285453; Mon, 19 Jun 2023 10:50:00 -0500 (CDT) Received: from mail.rptsys.com ([127.0.0.1]) by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032) with ESMTP id ObautJSbPPCA; Mon, 19 Jun 2023 10:49:59 -0500 (CDT) Received: from localhost (localhost [127.0.0.1]) by mail.rptsys.com (Postfix) with ESMTP id 1A0698285493; Mon, 19 Jun 2023 10:49:59 -0500 (CDT) Received: from mail.rptsys.com ([127.0.0.1]) by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id ox8DoC9g7tUs; Mon, 19 Jun 2023 10:49:58 -0500 (CDT) Received: from [10.11.0.2] (5.edge.rptsys.com [23.155.224.38]) by mail.rptsys.com (Postfix) with ESMTPSA id 7B8C78285453; Mon, 19 Jun 2023 10:49:58 -0500 (CDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: f32072b2-0eb8-11ee-b234-6b7b168915f2 DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com 1A0698285493 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD; t=1687189799; bh=M8DSWQuc3DFCtwdfwz7/fLkKlEOedphds4EbsLPPV6c=; h=Message-ID:Date:MIME-Version:To:From; b=FcnNGAh+XWu0aIECIC1cB7Dh1HoOLax77qkIvjQpgq7oPGh3bVDiTLjLQ79zGjVo+ 3SUyisZTmp1vahs5bu6mEh9d3/DH2X1hZ6OkpptV6DthcrLPFbr/LUXpFkgQrEkdcF MinkDzyaLrqzP3FIgvGyTQ3/+mWc2piy8KyZDAHM= X-Virus-Scanned: amavisd-new at rptsys.com Message-ID: <85e5d7ca-e6e1-3802-22ac-5728a03fd86d@raptorengineering.com> Date: Mon, 19 Jun 2023 10:49:57 -0500 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux ppc64le; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v4 2/4] xen: Add files needed for minimal ppc64le build Content-Language: en-US To: Andrew Cooper , xen-devel@lists.xenproject.org Cc: tpearson@raptorengineering.com, George Dunlap , Jan Beulich , Julien Grall , Stefano Stabellini , Wei Liu References: <97a72e26edafb1d7b3a583755f015d04066c1e53.1686936278.git.sanastasio@raptorengineering.com> <8383dd1a-064c-17c9-bb7f-4509518b9b42@citrix.com> From: Shawn Anastasio In-Reply-To: <8383dd1a-064c-17c9-bb7f-4509518b9b42@citrix.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit On 6/16/23 3:24 PM, Andrew Cooper wrote: > On 16/06/2023 6:48 pm, Shawn Anastasio wrote: >> Add the build system changes required to build for ppc64le (POWER8+). >> As of now the resulting image simply boots to an infinite loop. >> >> $ make XEN_TARGET_ARCH=ppc64 -C xen openpower_defconfig >> $ make XEN_TARGET_ARCH=ppc64 SUBSYSTEMS=xen -C xen build > > I think the first of these isn't needed, given the config ARCH_DEFCONFIG > default. I'd suggest dropping it. It seems like the build system expects an `$(ARCH)_defconfig` present if you don't manually specify a defconfig target. I see riscv64 has a tiny64_defconfig and a riscv64_defconfig that are idential, probably for this same reason. Would you like me to take the same approach of duplicating openpower_defconfig to ppc64_defconfig? > On the second, what is the SUBSYSTEMS=xen? It's not needed given the > stripped down build system, but I don't see why we'd ever be compiling > Xen with some kind of subsystem configuration for something else. This was a remnant of the old head.o-only TARGET build command that I got from the initial riscv commit. You're correct that it's unnecessary now and I'll drop it from the commit message. >> diff --git a/config/ppc64.mk b/config/ppc64.mk >> new file mode 100644 >> index 0000000000..597f0668c3 >> --- /dev/null >> +++ b/config/ppc64.mk >> @@ -0,0 +1,5 @@ >> +CONFIG_PPC := y >> +CONFIG_PPC64 := y >> +CONFIG_PPC_$(XEN_OS) := y > > I know you're copying the existing architectures, but I'm pretty certain > these $(XEN_OS) expressions are pretty bogus. The userspace stuff in > tools/ may need to know the host OS it's being built for, but Xen really > doesn't. > > I'm pretty sure it will compile with this dropped, so please do. I'll > see about patching it out of the other architectures. Sure, I'll drop this in v5. >> diff --git a/xen/arch/ppc/Kconfig b/xen/arch/ppc/Kconfig >> new file mode 100644 >> index 0000000000..a0a70adef4 >> --- /dev/null >> +++ b/xen/arch/ppc/Kconfig >> @@ -0,0 +1,42 @@ >> +config PPC >> + def_bool y >> + >> +config PPC64 >> + def_bool y >> + select 64BIT >> + >> +config ARCH_DEFCONFIG >> + string >> + default "arch/ppc/configs/openpower_defconfig" >> + >> +menu "Architecture Features" >> + >> +source "arch/Kconfig" >> + >> +endmenu >> + >> +menu "ISA Selection" >> + >> +choice >> + prompt "Base ISA" >> + default POWER_ISA_2_07B if PPC64 >> + help >> + This selects the base ISA version that Xen will target. >> + >> +config POWER_ISA_2_07B >> + bool "Power ISA 2.07B" >> + help >> + Target version 2.07B of the Power ISA (POWER8) >> + >> +config POWER_ISA_3_00 >> + bool "Power ISA 3.00" >> + help >> + Target version 3.00 of the Power ISA (POWER9) > > For both of these, it will be helpful for anyone who isn't as > PPC-knowledgeable if the POWER8/9 was in the title too, seeing as > they're the most common name. > > But as I'm a noob here too, how different are Power8 and 9? Given they > share a head.S, they're presumably not too disjoint in terms of ISA. > > While being able to target a specific CPU is something we're trying to > retrofit to Xen, by default we do expect it to run on as broad a set of > systems as possible. They're not that different, and a kernel built for POWER8 should just work on POWER9. The intent was to specify a baseline feature set that guards whether, i.e., POWER9/ISA3.0-only features should be built. > If that's not feasible, then fine, but if it is, it ought to be the > default. Which might be as simple as saying "or later" somewhere in > this text, or might be a giant can of worms that I shouldn't open... Originally the help text for the two ISA config options ended in a "+" but that was deemed ambiguous. Would adding "or later" to the help text for the two options clarify it sufficiently? >> diff --git a/xen/arch/ppc/include/asm/page-bits.h b/xen/arch/ppc/include/asm/page-bits.h >> new file mode 100644 >> index 0000000000..4c01bf9716 >> --- /dev/null >> +++ b/xen/arch/ppc/include/asm/page-bits.h >> @@ -0,0 +1,7 @@ >> +#ifndef __PPC_PAGE_BITS_H__ >> +#define __PPC_PAGE_BITS_H__ >> + >> +#define PAGE_SHIFT 16 /* 64 KiB Pages */ >> +#define PADDR_BITS 48 > > Is 64k the minimum granularity? Or is 4k an option? Both 4K and 64K are supported by the hardware. > I ask because Xen has some very short sighted ABIs which we're still > working on removing. There are still quite a few expectations of > PAGE_SHIFT being 12. > > To be clear, we're looking to fix all of these ABIs, but I suspect it > will be an easier lift to begin with at 4k. (Or perhaps the right thing > is to double down and just get them fixed.) Interesting. Given this I'm inclined to go with 4k just to reduce pain points during initial bring up, though supporting 64k would definitely be desirable going forward. >> + >> +#endif /* __PPC_PAGE_BITS_H__ */ >> diff --git a/xen/arch/ppc/ppc64/Makefile b/xen/arch/ppc/ppc64/Makefile >> new file mode 100644 >> index 0000000000..3340058c08 >> --- /dev/null >> +++ b/xen/arch/ppc/ppc64/Makefile >> @@ -0,0 +1 @@ >> +obj-y += head.o >> diff --git a/xen/arch/ppc/ppc64/asm-offsets.c b/xen/arch/ppc/ppc64/asm-offsets.c >> new file mode 100644 >> index 0000000000..e69de29bb2 >> diff --git a/xen/arch/ppc/ppc64/head.S b/xen/arch/ppc/ppc64/head.S >> new file mode 100644 >> index 0000000000..0b289c713a >> --- /dev/null >> +++ b/xen/arch/ppc/ppc64/head.S >> @@ -0,0 +1,27 @@ >> +/* SPDX-License-Identifier: GPL-2.0-or-later */ >> + >> +.section .text.header, "ax", %progbits >> + >> +ENTRY(start) >> + /* >> + * Depending on how we were booted, the CPU could be running in either >> + * Little Endian or Big Endian mode. The following trampoline from Linux >> + * cleverly uses an instruction that encodes to a NOP if the CPU's >> + * endianness matches the assumption of the assembler (LE, in our case) >> + * or a branch to code that performs the endian switch in the other case. >> + */ >> + tdi 0, 0, 0x48 /* Reverse endian of b . + 8 */ >> + b . + 44 /* Skip trampoline if endian is good */ >> + .long 0xa600607d /* mfmsr r11 */ >> + .long 0x01006b69 /* xori r11,r11,1 */ >> + .long 0x00004039 /* li r10,0 */ >> + .long 0x6401417d /* mtmsrd r10,1 */ >> + .long 0x05009f42 /* bcl 20,31,$+4 */ >> + .long 0xa602487d /* mflr r10 */ >> + .long 0x14004a39 /* addi r10,r10,20 */ >> + .long 0xa6035a7d /* mtsrr0 r10 */ >> + .long 0xa6037b7d /* mtsrr1 r11 */ >> + .long 0x2400004c /* rfid */ >> + >> + /* Now that the endianness is confirmed, continue */ >> +1: b 1b > > .size start, . - start > .type start, %function > > Lets get the ELF metadata right from the start. Good point. Following the example in the Power ELFv2 ABI specification [1] for function type annotation, I'll place .type start, @function in the ENTRY macro. It's not clear what the difference between %function and @function are in this context (my toolchain seems to accept both and produce the same ELF metadata), but the latter is more idiomatic in Power assembly. The same goes for its placement before the entrypoint vs. after the last instruction. As for the size annotation, I'll follow Julien's suggestion and introduce an END macro. >> diff --git a/xen/arch/ppc/xen.lds.S b/xen/arch/ppc/xen.lds.S >> new file mode 100644 >> index 0000000000..a72e519c6a >> --- /dev/null >> +++ b/xen/arch/ppc/xen.lds.S >> @@ -0,0 +1,172 @@ >> >> + DISCARD_SECTIONS >> + >> + STABS_DEBUG_SECTIONS >> + >> + ELF_DETAILS_SECTIONS >> +} > > In the other architectures, we now assert that sections such as .got are > empty, because we've had enough bugs in the past. > > I'd recommend doing the same from the outset for all the dynamic > relocation sections, unless you're expecting to have to support them? No plans on supporting dynamic relocation (for now), so I can go ahead and add these assertions. > ~Andrew Thanks, Shawn [1] Page 77 https://wiki.raptorcs.com/w/images/7/70/Leabi-20170510.pdf From xen-devel-bounces@lists.xenproject.org Mon Jun 19 15:57:29 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 19 Jun 2023 15:57:29 +0000 Received: from list by lists.xenproject.org with outflank-mailman.551195.860589 (Exim 4.92) (envelope-from ) id 1qBHFn-0008Bj-MU; Mon, 19 Jun 2023 15:57:19 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 551195.860589; Mon, 19 Jun 2023 15:57:19 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBHFn-0008Bc-Ju; Mon, 19 Jun 2023 15:57:19 +0000 Received: by outflank-mailman (input) for mailman id 551195; Mon, 19 Jun 2023 15:57:18 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBHFm-0008BW-2e for xen-devel@lists.xenproject.org; Mon, 19 Jun 2023 15:57:18 +0000 Received: from EUR01-VE1-obe.outbound.protection.outlook.com (mail-ve1eur01on061b.outbound.protection.outlook.com [2a01:111:f400:fe1f::61b]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id f618c256-0eb9-11ee-8611-37d641c3527e; Mon, 19 Jun 2023 17:57:16 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by AM7PR04MB7000.eurprd04.prod.outlook.com (2603:10a6:20b:104::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.36; Mon, 19 Jun 2023 15:57:13 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6500.031; Mon, 19 Jun 2023 15:57:12 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: f618c256-0eb9-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=HQ8kirtkpkRffypcitRX468fdXyJR61S4IsH03H686UUG1nHndvL54+CScOGa8XsweBvyEwF1RwRYkav31TIsB/z1QDfT6vD9VyIRcUYYmx9dL7SvMpmba+YDmRN4E/O8IW3yYXo6cA9qh9U5BT7Wmxufcp6bvAqf4YF4YvVY/yyfaNO5dwJaveP+jQCu7SNounQZzlSe99anw9qBOeZy9GWbCa6bQu2128JvuObsc9v/sd0OBwhQW+oysgtHjodEdr9bW0BV+abjYv6KcUN85IVitt9niyU5DEUXL8VWtsXMZH8AAiSK5KZMTtv2kJiD2h9YtyRc9TsiEvPZGHTLw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=9A/PKVULEm1DS5aR7DiEHFj4m/K2MiLPWgyED5JqJP0=; b=NQ7y2zh6dTveDqhfJlGMYI4rDQXsbcglGHG3XE0HGHh6jFyJydmiN8WOCmz6f1jRCTnT+9lAjifDDRlEiJ0waA55N+945950co01rg8mNwRKn0bL8P+drf4T8K4hF+amrWeAnALR1ZeKXJJBt7Bu47wr/oKYm5xNUqVgeVaCdVVsgYtmaJMzjzzV0FgFb2bn/a4utfU98cI9auZEz1Mc3jwEmI5ADER7XJXGACjubOy5w8t2VnIAdTemrKnQRuG1mIPyT7eZEzp2bo0qo/jilHiZua5vP+sjKYnNjzibbtNOfD1kWdwMZagEuUINUvFGAWq3LptzcDPayHJEMek+pw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=9A/PKVULEm1DS5aR7DiEHFj4m/K2MiLPWgyED5JqJP0=; b=lwLeWYBZem5xmkO/3u+C/VGCb1JXZ7MIcyqPsyjpDbw+QvN7zDViTN1pGCq0v6gYJVxvnmA3hAIWY9AMFXnqM5Z7qTI8njw5XXbrvtLwWWmiw2KRmns4kO6j6s/ap0BaOQ+eoT6p39aeOsW2bxk0dl9sM2Jd6oFq48XlGQTiBYwYcuprAo64rRlhhn/2y9w80e9vRIRquFLdmI/SipU17ed4P32R/ierbXzwv7nvp6aghYSwkw5sZ/NFijes/P7J7mB4I/pTgR6q8C6MfpPanVqk1VIiYXkqqpTP3AB0ruN5bCqH3QSOq2DBgXNlOlMUvl9bXEk7gLDcipaI6QcRrA== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: Date: Mon, 19 Jun 2023 17:57:14 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v3 4/5] x86: Read MSR_ARCH_CAPS immediately after early_microcode_init() Content-Language: en-US To: Alejandro Vallejo Cc: Andrew Cooper , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , Xen-devel References: <20230615154834.959-1-alejandro.vallejo@cloud.com> <20230615154834.959-5-alejandro.vallejo@cloud.com> From: Jan Beulich In-Reply-To: <20230615154834.959-5-alejandro.vallejo@cloud.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR3P281CA0048.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:4a::20) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|AM7PR04MB7000:EE_ X-MS-Office365-Filtering-Correlation-Id: cf448f39-04af-49cb-4c84-08db70ddd87f X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 5kepzg+1BH21QY8NBj2jtFD7BNXxncpV6vn4Yxqr8a65U/rBm3hNhVhjUZ3keT8zBvKgadyu53XzKVFibU2xqzEv6pqYn89bm5YswvL4eTw2SYqqui7EoIxTaPTwBfo8OQ4gYMJR8Q/PdG8WPzg3b3LlfNVnfBpGvmV55tDeNNxn+c/LvRLHItxG4ckj+4CILH8xnHpRJMoe/qz6aoQibwUD38Kj0/IfZrtZDmlVzUG9gesl+iFKvdplRyf64wMnp/iI3dxnduev+ZNWzOBs4nTOqt+EQNPK1NAfjSqZ9I6W+aX2GCr7Zr9elZNY99Hlus41H9yx5gHTwb306uNHDoRBfDyflV3YLPn4vugomJVUbnm+D2c6sJ/RxpFfJApIM0ssoThQ67PuV11uj+5i1f+nl/CcVvffuTDN57RXTiApWWyQwuSgVp11lLPgSemx9L0vred0Cs6xr/XDW3kmWg4tU+ERG6QzfWb0Onn9W1nLmuFPBN5EmTo4km/6xak2obE14iGpSugQTfblaBUghePKunbwWDRvIDT95OfyUbRJV7QrVsaxgPdV8XvIw+JxiQ0o9aLzNPjkxGTSoxhoUwm0wdvQw/YnYTteYjXhM1+sQeQjKQFA/2HgpqnEm7FUYXJW8dqYa2krNVHru2/LnTQqsYP8s1G0djw0pxoH1P4= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(376002)(366004)(39860400002)(396003)(346002)(136003)(451199021)(4326008)(54906003)(478600001)(6506007)(53546011)(6512007)(26005)(6486002)(186003)(36756003)(2906002)(8676002)(41300700001)(8936002)(66946007)(66556008)(66476007)(6916009)(316002)(5660300002)(31696002)(83380400001)(38100700002)(86362001)(31686004)(2616005)(14773001)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?eFZlb3kyVjlHRkdZMktrMDZlTHhtQkcyekVWK0ZCWGJiNEl6cXYrRjRUSE9F?= =?utf-8?B?NDVTMUI2c0s2VUp5UVY5UTJndVdWc1JBa25CVFA5bmIxdjBscmdOdytBZ2dr?= =?utf-8?B?Sk5vZHMxMlZjRFpQVFQwdUxSWCtuRGpjcXRWTVpJS3BMVlV6Mis3NklPTU0v?= =?utf-8?B?eW1NZFU5cE9rZ0JtL3BxTGdHWjBOeXZIYmdVc3RiTzR2dTd1VVZwMHdYeERO?= =?utf-8?B?V1lHdXVsRElSMWFmYXBZQnBwSDRrczh2dG5jUXNXSlFWc3JqVnU0OTRUbDFG?= =?utf-8?B?SUVUbG5yelVHQUk4OE5NL3pmVEg1L05nT2pkWDJUeUMyTDVQbVpIYXQ3cDBo?= =?utf-8?B?aWs3ZU1zbnFZQStxbExxR21ISlBEN29kNVZYd0tjSXpsYnpoLzhmbkg3WXVz?= =?utf-8?B?Y0YvemZKYzJmenVQdGRVYlBUcW04Z0ZvRlhDZEZvV0hsZnVKSi9VVTgzdU55?= =?utf-8?B?NlhUQUlGMEd3bzRRS2lQeGx4Q2RoMlhBVHBrQlZzclFYM09tYzdtS09Jd1VT?= =?utf-8?B?VFk1WnN2V3NydVVid3FIY01sQUNSWG00K0ZZeDF4MjZMYTZYRTVNZ3hjdytH?= =?utf-8?B?bjZWZkJCZkZDTnlxRE80ZkViYVBJSVl3T2VTOURDNzE0aE1nZzdHd0Q4cU5W?= =?utf-8?B?bDYrZkxESEU1djNOUEZiaUx2Wmo5dUIwZDdJZWY4V0lvUm4yWTJHWlZxbU0z?= =?utf-8?B?MnZ3UWRKMWVVRXRuMDAzS2JzbVBrNmUyUUhIdlJEcUFML1UzS0tnK0x4OGFU?= =?utf-8?B?YmJsTSsxcm1HYjB1Qk01eWVqQjRHK1Y3a0ZraDRyRWI2Z3VuU04zcFB2SUhI?= =?utf-8?B?ZXRzc1d3N2JrT3BUR3FZUi81dTNPMnE0dFlNMDAyNlZLbXg3cGVOajZuUml1?= =?utf-8?B?MXVYWXkxb2pYM0RySzV4L3VBLzBiU29CMEJsVytFN2c3b3YreFBic3RtM1cy?= =?utf-8?B?MHNVcmxCaU9qRm9vTTN1STNaT0lRSy9PYVI5WUNvV2hUUythODVGTml1K21r?= =?utf-8?B?aWZmaVQ1OE4yWEhtZGZoaFI3SlV1bDdCd20vbFlkRkltb082ek5KMENRTng4?= =?utf-8?B?TE1zM2pnZVhwL2ZBSEZ3SkJhTjZxRUw5eFNsRzRGbjR2bytnS2J3YVo4SzZI?= =?utf-8?B?a0Fxc2FFa0tabWV0NHJtQlc1MXg5R1NHRHF0M1pOU205cGFaWUJxaEJQTDRB?= =?utf-8?B?WFdWNWE5Y0syQ1Ewa3RwMDBxazlTTVZnZTY4MGRkRi9iWW1FV08rTUdQQW5J?= =?utf-8?B?bkYxZy9ENE8vSDQySFFmN1BMTzMrTzg5anZkUWE5WmxNaUFoVCtacngyNk9K?= =?utf-8?B?czNvZFZTbkExcUdCVWdHNm1FUk0za1hqb2gzV0VrV216a1FxZk5iZ0lVS2dp?= =?utf-8?B?Qm01M3lWWHhidnlTaWNTOVVlZUFSUnNibXp4VHhlUnVIQ3Rkd1pWZ0JRazdt?= =?utf-8?B?UmFtcE92Zno2eE1uNDc3VFNVc201MjdMVjJ0bloxOHZOcjFWZW9hdFB6Unpj?= =?utf-8?B?R0FyeHZLZ0lmcEh3dC9KTlMwNkpROUMyelNEMHVtNFVLandNb2RTQ2VXd05a?= =?utf-8?B?OVFsQ2VHUlNkbGxxRjBJbWpva2VvZmJlUlByL3NMT05Sa1d4K1J1eEdRbXdi?= =?utf-8?B?dEZHalMvYVM1aXQzMCt2VTVWWWtJbmFkWWpFa3VOdVg5SzZkZksycWdLU0tD?= =?utf-8?B?bi9GSStwRWJNS0dMcGY1aEgyYU5EZXE1WjRZS093NUtVS0pNeUZGSFVRMkxM?= =?utf-8?B?K0pCRFVYS2ZGY3N1Y1BhdGdwK2NCV3dJbjVDc01FVUdnbkp1SHpUQ2RWNWNL?= =?utf-8?B?bFdZa01oakduWGhER3NBMmRFaUlNbUNKUlVJVm0yZDJLNEo4NzBaWnNJdzdi?= =?utf-8?B?bWcyNlYxdjJrWERsNkVYUDl3Q1F1eG9iNktENklYVmdNVEJldTVZSko1V0lF?= =?utf-8?B?Ukh1SjlwQk93OFpkS0lWRmZzaGordU5PWnhPMjFYZ2dvOVJsVjVmWmVuQitl?= =?utf-8?B?bEVGd2w3blNsaU9OQ3ZrUk5rZGpOS1F6WHpiaFRXY2VlK1NVSXg5TjZBcWdQ?= =?utf-8?B?OUNYcE5vWEdhdmw4eW1FdHlVdzdMb0p0M1lxaFU4VmxPQVJ6dUs4Q296aFA4?= =?utf-8?Q?aGQxQBRidSrm+m1ZkRImAWWt2?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: cf448f39-04af-49cb-4c84-08db70ddd87f X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Jun 2023 15:57:12.7334 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: bq6R9qz0TbWz4wHLIS9sbXHU8apKyhNbNHavY2gcrS7W6tFkDYWvVW2ROPK9YoW+4PgscKNSah+78QBZMbfOeg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM7PR04MB7000 On 15.06.2023 17:48, Alejandro Vallejo wrote: > --- a/xen/arch/x86/cpu/microcode/core.c > +++ b/xen/arch/x86/cpu/microcode/core.c > @@ -879,5 +879,18 @@ int __init early_microcode_init(unsigned long *module_map, > if ( ucode_mod.mod_end || ucode_blob.size ) > rc = early_microcode_update_cpu(); > > + /* > + * We might have exposed MSR_ARCH_CAPS after the microcode update. I'm struggling a little with this sentence, but not being a native speaker it may be me, not the sentence. I would perhaps have said "MSR_ARCH_CAPS may have appeared with the microcode update." > + * Reload relevant fields in boot_cpu_data if so because they are > + * needed in tsx_init() Nit: Missing full stop. I also wonder whether you wouldn't want to insert "e.g.", since iirc with the next patch tsx_init() isn't going to be the only user anymore. > + */ > + if ( boot_cpu_data.cpuid_level >= 7 ) > + boot_cpu_data.x86_capability[FEATURESET_7d0] > + = cpuid_count_edx(7, 0); I take it we assume the maximum CPUID level won't go from below 7 to 7 or higher with the ucode update? > --- a/xen/arch/x86/tsx.c > +++ b/xen/arch/x86/tsx.c > @@ -39,9 +39,9 @@ void tsx_init(void) > static bool __read_mostly once; > > /* > - * This function is first called between microcode being loaded, and CPUID > - * being scanned generally. Read into boot_cpu_data.x86_capability[] for > - * the cpu_has_* bits we care about using here. > + * This function is first called between microcode being loaded, and > + * CPUID being scanned generally. early_microcode_init() has already > + * prepared the feature bits needed here after the microcode update. Is this true in all cases? early_microcode_init() may have bailed early, so I think you need to further transform early_microcode_init() (and as a personal request of mine preferably without goto). Jan From xen-devel-bounces@lists.xenproject.org Mon Jun 19 15:58:44 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 19 Jun 2023 15:58:44 +0000 Received: from list by lists.xenproject.org with outflank-mailman.551200.860599 (Exim 4.92) (envelope-from ) id 1qBHH9-0000IP-1A; Mon, 19 Jun 2023 15:58:43 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 551200.860599; Mon, 19 Jun 2023 15:58:43 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBHH8-0000IH-Ur; Mon, 19 Jun 2023 15:58:42 +0000 Received: by outflank-mailman (input) for mailman id 551200; Mon, 19 Jun 2023 15:58:41 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBHH7-0000I9-Rt for xen-devel@lists.xenproject.org; Mon, 19 Jun 2023 15:58:41 +0000 Received: from EUR05-DB8-obe.outbound.protection.outlook.com (mail-db8eur05on20623.outbound.protection.outlook.com [2a01:111:f400:7e1a::623]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 2837ce1e-0eba-11ee-8611-37d641c3527e; Mon, 19 Jun 2023 17:58:40 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by DBBPR04MB7626.eurprd04.prod.outlook.com (2603:10a6:10:201::23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.36; Mon, 19 Jun 2023 15:58:35 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6500.031; Mon, 19 Jun 2023 15:58:35 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 2837ce1e-0eba-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=AEZBQzWixEKGEjaJ4pisvRDSkC1cInYm5mYQcThml8LEGvfnflMWyQ0NUEOcEeovcc1HP6Cb+TAaTE1B/P/lvYhXACBgztLG9kluvQwjlz4HjosNLPW7I6kdV+/d8LooQA3O4AHP2Ys/flAfxm7x6sTPl/tgyJW/LghWSBYooJtZpbm4SF0iAd1u8jj5eEICNLK3zpb9tzdv8JBrEl/fSBS7VbUYm0jfw61b/qEhbAfd6Z5HhFVF2gw9o7MJf4FsY89SSfvnxUTWy+Myve7L0nhTHBP0YaRE5G4jH+6OUrYixg8tPeiSD1wQkp/kGsx9XOHAEnXkJx6Rj3Ht/EXzrA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=5GJTUy6y0lKA47rLwMqekatsJW9f1GoysPulKoKRLcI=; b=BtpIAsyRUQDBYIdtn1vWN3xNv8bwCjq7fWMjtwRwGn+96jLKjXpYwKgeSw7e4V338sdU+w2GhNoMm+qlw8GwgqUepRbpg3J1XLBe/UJgs091Dr8kjSYGLrcxjrQN9Ez4dSA41Yp8Giw7SniPRpwUHsbGw9gqKk5rCPyTtyBN8Ydj9hAkFB7gJW7I3JslSn1bwC82cYZ5QHp7n7ku0Codsy4vkIST+2sMBGdPavpMNO1TzkV/TIw1yTVyvALWA6h2U3mAc7nXRDZRGqE8p/S1pQGsMYvrIzKU7bxcIV47NHWQS1/HVYDlAnQAvVVKHiUlMh4zCijwq3cQ15igA72/aA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=5GJTUy6y0lKA47rLwMqekatsJW9f1GoysPulKoKRLcI=; b=FgoOLekBCqK6xTH2yx9ivtId2AwBql4p/rVXR9u4s1VF7eMwE3nnd/c7uT19DzuknTO2qQd/estJawIX3IFh9d6jC/ekcp49OLieVFT2ZOrK3DMCQ7z1oOTYCPN3lUabiIq0uD1vgzePkhckGnT19AvwFIGIbTaQkxuf6T4+1eNSZtMVhBqRQ2752fe4ZFsoPJNhgkp8z8HV0K92CPTPK5JVjGWits5KDd3YlRPGE7vn9RjRJi5fRq3iiklBtfwx6nGR9gHbk1zAliKdwS9X7ZgYMg2LWZYwDWj0MlyJJ6GTK1+nPkEkYsUTt7Xal0m+2v/zk+Md+bp+eSH19Drw6g== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <3a92fbe8-a9b4-f671-7895-c4d8065b61ed@suse.com> Date: Mon, 19 Jun 2023 17:58:37 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v3 1/5] x86/microcode: Allow reading microcode revision even if it can't be updated Content-Language: en-US To: Andrew Cooper , Alejandro Vallejo , Xen-devel Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu References: <20230615154834.959-1-alejandro.vallejo@cloud.com> <20230615154834.959-2-alejandro.vallejo@cloud.com> From: Jan Beulich In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR2P281CA0029.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:14::16) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|DBBPR04MB7626:EE_ X-MS-Office365-Filtering-Correlation-Id: 9259f0d7-bc87-4921-9afa-08db70de09da X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: YBh9Nl0KOvLf1rjJBSH93VefC9VO7lbDUN5qjr9hCcaRw3GDmSHvS6oQzlKGeYor7cA165jxU11ldy45lRYQcdBt6YpsEDGxEswfSsl7p9TP7AOFRiyh3NKqhkR+UQ4r0cSo4aUx6IwBerD9SrXWrTafNw9n+7bBf5NpA8AQePvlRZaDr+cpjzKOOW8s7+XAuthkOmptqE5yL2Z25gtbQ7grVxI7x/ECc+YW7ZOIkeAq34eEyE1wCxrMFsN27gyG7RQTBo/mHIwBS6hkaVHCJ9dr/kqlg0tJ7Jtrg1KOg6x5OABfY+o430ijea2wT2vBP0l2W7ewLuh2Rql3Iecvi1ZYwuxJQmzVLngsd1BtrLO9B5W7P01RGZKwTC2fhkTjb3bT2QQf2JuOklxPvRpAJUr08h9gM3uMUYO0GqqEmlDiQXActr3m+OBtzHdsVSMH0WP9nGoc8VQuT1pa0G+qOLQ3Si9kbbGOC2M6342ckmNpCqVDXkOL4UeKh+b++PH2uq4bX45aEX2+ShpS2tSdT0hxV+mFPYIG3CQuNRdD7SerYiJhvjv4g5rtcpysdWgyOSE+dMLyjKb/xOG8jyherVUUvbSlf3q9LwzJ7AR0DKzskc7YgVvMTgopk3LoN5ezpCGc7+X9yU+hR3G1ib/34g== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(376002)(366004)(39860400002)(396003)(346002)(136003)(451199021)(4326008)(54906003)(478600001)(110136005)(6506007)(53546011)(6512007)(26005)(6486002)(186003)(36756003)(4744005)(2906002)(8676002)(41300700001)(8936002)(66946007)(66556008)(66476007)(316002)(5660300002)(31696002)(38100700002)(86362001)(31686004)(2616005)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?RkRvaDJwcXNoM0lLOXZMVVo5ZWcyY2w3SlVUSzkwdlNFUUYzZ3JmSG5ES3RL?= =?utf-8?B?cTJHTXdpRnVQdHd5RkN1cEx3Nlk4RGEwNWdxWmlUQzhDVUZpQXFGNkJieTdz?= =?utf-8?B?bmU4V2Z1L1F6QUl5TGdyaDI3MG9VWnozeStsSWpBcjBzSmxhYkdEWFVuZEdi?= =?utf-8?B?NlBBa0YvYWI5S1BpMjM2dGZuSFlIQTVPdjE4cHN4SllIUEJVeDVjZ3MydUky?= =?utf-8?B?Y2k0eU5pV2RlWGxsdnNBWUt3S3Z5N1hmY2VGWm5IeWxaK3RJaHBzOGlQZXRw?= =?utf-8?B?MTdxWWtvb1czazh5N01VV1JpMDc1Uzc0MGh1Y1pkV011R1phd1pqUFhwcDRV?= =?utf-8?B?NUVvYkpTWU5ZK1ZyNkhPUUE4ZXRmZmZPTUhJWnNFU3BBTENpWE0yNk9JU0xT?= =?utf-8?B?RmtIU1BRNVJvNlQ0UVBKZWdSNFMyamJkQ21HWWQvcnVxbk1VL3hVYlIxMnY2?= =?utf-8?B?ZG42UktGY2JLNGUzanFzMGRRbVBHa2lnSTE4Wk5mUUN6WUdSbHJPUlE3OXBS?= =?utf-8?B?V3JEbytlZnF4ZEFNcTd3MGdROWs3aldlNk9DZndidVVZTktSamJoZktQNGtX?= =?utf-8?B?MG9KVDE0OFROTE1XTStGTzVZMU5GVG5JUERCclU4cUgzNXZYQ1pMaGxEYkxw?= =?utf-8?B?ZnZjaWpDdzNuYlJUbFF1NzFYTUttdW9NRkwyVS8yeExGd1AzTm80cnB1QWRo?= =?utf-8?B?Q2hrc3UrRVdxdWZFWmNjNjVycitwSUhud0Fmb09XZSt4SlBHTFpUOHBjaURw?= =?utf-8?B?T3dvTUcxRmZZOU9mWnB3QU9kYjV3c2lFNnYyRE5NeDNWV3pIRlJERTZTdlNw?= =?utf-8?B?QVQ2bFhmUlZXSnRZRkd2QlJwWDNMK01ESmlRb2hpalJtdjd1cXJYbXFNOWE3?= =?utf-8?B?SUhYYXExSmt0dFVpZ1htcXV4UENwY2hLdGNXSFVQNjhxZWc4WGw0UVYva0E5?= =?utf-8?B?Y2VtMEs0aldIZXl0TTBmM0QvN1p2cVB3MURmWUR1aEpvSVFsZTNSSE5hcnJq?= =?utf-8?B?YmkzNTVFdThyRThGVG51RGdSQk15VDB4Wmp6K0VlWVQ5bXlGWjNFL2xiSURx?= =?utf-8?B?TnRvUnRubHc1a012UkU1Y3c4ZHRVYndHa1Z6eE9FSlg5eHZoOUs5TE03NGti?= =?utf-8?B?YVo2WWcyYnNvV1lsRzNiUFNEMGRCR0h4WTY1ZmlCeUF0aXhhVUxiL2VCOG1z?= =?utf-8?B?eU1jdjRQaGdtZjdYQ2NuSWVMdFFFb1pvZjRLSFJidWRCY1J1bU5CQ3AyYkVP?= =?utf-8?B?OUpBK0p2QVZtWHEzRmNrenpKYXdVRElnOXZVOG9vMGUvZCtrd3AvU3YwcEQ0?= =?utf-8?B?a2R2RW5LQ3dNbDBEQXRLT1NISVExOGNnQzBNTnU1c25ha05uZmNFZGFvb2dC?= =?utf-8?B?K3pVK0hiZ3lkN1BoYjhzSWdvbElTNHAwYW5lUi9kcnpId3BtVGt3SE9RdExF?= =?utf-8?B?Q1ZRMEp4OExrQXNveHNQWklZcEE0OGUzbnNpdDcwS2dZbW5CQWNPa0FyekRk?= =?utf-8?B?YW5BajZ1QlNVcjNtbzhIUEZtd2dpOVpJVkx2RC9BdVZ4cjVqc3lzeTFROUdP?= =?utf-8?B?Nk9hVnhkTVVaZXgwV2NsRTNtVkZoSENYcWZsQzVqczlDalJ1L3MwYlc5WHp2?= =?utf-8?B?dlFzelRsRGJYQW45Y083VTZLSy9Wd1hmM0V1cVR6ci9RNFF3akViRlFrZmNS?= =?utf-8?B?YU1YeGo0aGt4RVNrcXdSQW9OT1dqOEZjN29sMVozelBtTFhLMVdxLzI4YUtW?= =?utf-8?B?aHhwaEtycUpZbksvTG13OGhLOSt2L1lFVi9GTWJTd0QwTHVJcUdYMFRKMTQ4?= =?utf-8?B?U2hvS25RUzZTKzhMV0dLTWdjaDZFb21vZ1FmQTJrM1BFZnNDWkU1UTIzVVor?= =?utf-8?B?WldMdEFmWldvUnpvemRQVWRna0R3TENmVm1HaTMyUHM3dWJRd2d2enBVZFBV?= =?utf-8?B?alN3WUtJUk81WVRKbDc3NHk4ZXd1M1g1OVRFejg5cUFhNzlyRGtFY1BUV3lF?= =?utf-8?B?MXFsKzRlZFhDQm9BRS8zOU1kRWo3TlVzdXRBaE1BS2pBYWNpWVlSNDNJSGFL?= =?utf-8?B?dEp1aHp3VTNyY2p3QVBhYjV5QmxsdzhZYWd1OVVOZ2plRHBDMVJVKzBzbWNt?= =?utf-8?Q?8y85b2pPzDgNy+EUvo0S+4A53?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 9259f0d7-bc87-4921-9afa-08db70de09da X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Jun 2023 15:58:35.4414 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: dOs0ZiOdXTWPLcnOJkXgy7IY/ACmCyvWhaJxlqmoZ0K4N9QW9QeWfS9Fx2taAHmhgfBEmcsDWoPv1y2IXpDP7Q== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBBPR04MB7626 On 19.06.2023 17:49, Andrew Cooper wrote: > On 15/06/2023 4:48 pm, Alejandro Vallejo wrote: >> diff --git a/xen/arch/x86/cpu/microcode/core.c b/xen/arch/x86/cpu/microcode/core.c >> index e65af4b82e..df7e1df870 100644 >> --- a/xen/arch/x86/cpu/microcode/core.c >> +++ b/xen/arch/x86/cpu/microcode/core.c >> @@ -750,11 +750,12 @@ __initcall(microcode_init); >> @@ -860,6 +861,9 @@ int __init early_microcode_init(unsigned long *module_map, >> break; >> } >> >> + if ( ucode_ops.collect_cpu_info ) >> + ucode_ops.collect_cpu_info(); >> + > > I still think this wants to be the other side of "ucode loading fully > unavailable", just below. > > I'm confident it will result in easier-to-follow logic. Yet wouldn't that be against the purpose of obtaining the ucode revision even if loading isn't possible? Jan From xen-devel-bounces@lists.xenproject.org Mon Jun 19 16:07:19 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 19 Jun 2023 16:07:19 +0000 Received: from list by lists.xenproject.org with outflank-mailman.551207.860609 (Exim 4.92) (envelope-from ) id 1qBHPL-0002Pq-Ud; Mon, 19 Jun 2023 16:07:11 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 551207.860609; Mon, 19 Jun 2023 16:07:11 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBHPL-0002Pj-Rt; Mon, 19 Jun 2023 16:07:11 +0000 Received: by outflank-mailman (input) for mailman id 551207; Mon, 19 Jun 2023 16:07:10 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBHPK-0002Pd-59 for xen-devel@lists.xenproject.org; Mon, 19 Jun 2023 16:07:10 +0000 Received: from EUR05-DB8-obe.outbound.protection.outlook.com (mail-db8eur05on20629.outbound.protection.outlook.com [2a01:111:f400:7e1a::629]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 56b86fa6-0ebb-11ee-8611-37d641c3527e; Mon, 19 Jun 2023 18:07:07 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by AM0PR04MB6803.eurprd04.prod.outlook.com (2603:10a6:208:187::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.36; Mon, 19 Jun 2023 16:07:04 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6500.031; Mon, 19 Jun 2023 16:07:03 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 56b86fa6-0ebb-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=NSqHAnAiqmyBGaDL59G8j706RtwAXDuO2Z/gTCMbj/SYAc2xmV5qrEY+6ZIEoMXcLmI+focs87v4okJZkLHuC9Z25s+re6bYqhfftE/S3UaJ9RdrvA2JIchDfsqBw2t5maVde/wmdeZGk3rSVDoaj1Ioxwdncrb87XElsLwQUy5mmkc6kqFJ14hOreTBteXhPlJzVxakcajtsPZdx9lF/Lc2RXbsebnmJ830sqc1Su7FOSV2mfjD703w1tRy46NmcDUb10vptNjplw+5L+LoBk8h8Qrsk5fJRIZktqlEWHOGodNI977Za6m0emKLWRHOdYruJ/0UrbEDTbRynOwVQQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=iWVPNI276AW5Y9CQnJpNvGGChiPC94mJ6wDIhckKrV0=; b=dIf20e3k+vTCcFKJbtDz94y5UkAs2fqgXmA6eHm4iuG6xR0oWSMgk22WEu1gsmwhWw2Qu91p55wKXgcoVL1Tv385f49H7U6vvTpJsJuQZENxvalDIZxPZzg+vU3V7jdwwdDdpTLiBmTvrxaxCaCB8aA+4sl8YTDtdCGzcxLiPuq/Z+8QGh115qhQRE7s2SydG45u5cMzSa7m2mJM/88KFByKzSFYaUDp2CsqeDA5+XIuh19xj2WaL/gdOYWrK6/+ReOP2vXJZKC3iWIgw7dBN+pgxhMq8EJAEKSVPYYgGQ2XV93L4UFsG2IWKHnDAbNPwJCZHJ1wkGIyo+tvrPxn9w== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=iWVPNI276AW5Y9CQnJpNvGGChiPC94mJ6wDIhckKrV0=; b=5tVx7OtKyvGCZOB007b6jFLJJtTREHlIHBAaMM7kH6O+eRYUmTC9F6vZiyabOdq+mrzmYU3DG7bN/caomuAcTJedzd43dWrGZF4sNOVJO7U4R/wJ+6NAsEvJIhV0Z65iRJqWHvNUu945d0NaIyX8UtCR9701iuzVlkb0v2JjA0+8zX6zFZxZKDYzfu9ngaADYu43IKb0HDZ4+zJX1XnD8xWQYYkQuEgtq9e7Ffn3MOUFEbQcnWSVaMJASAE8bsEYPsq9dKDbGaKhzp1B+rT5rhg/0s9tEsLOLsc5B4fyma6UsM0wQVRx5NwcVqEry/8TdYyUokpkvNzM0WkPyMVzIQ== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <07901266-4536-bcd5-70a4-5b5675a1ced4@suse.com> Date: Mon, 19 Jun 2023 18:07:05 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v4 2/4] xen: Add files needed for minimal ppc64le build Content-Language: en-US To: Shawn Anastasio Cc: tpearson@raptorengineering.com, George Dunlap , Julien Grall , Stefano Stabellini , Wei Liu , Andrew Cooper , xen-devel@lists.xenproject.org References: <97a72e26edafb1d7b3a583755f015d04066c1e53.1686936278.git.sanastasio@raptorengineering.com> <8383dd1a-064c-17c9-bb7f-4509518b9b42@citrix.com> <85e5d7ca-e6e1-3802-22ac-5728a03fd86d@raptorengineering.com> From: Jan Beulich In-Reply-To: <85e5d7ca-e6e1-3802-22ac-5728a03fd86d@raptorengineering.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR0P281CA0193.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:ab::19) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|AM0PR04MB6803:EE_ X-MS-Office365-Filtering-Correlation-Id: b8491c64-00c2-4d6f-ee45-08db70df38ca X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: l1VLBP9hGp2kGYgdRzzZZHBce4crYvT+IPlMO+7qRAB9wYtzxtiq0AnmB0HavmRis3HZt3cHoO+LL2EKj1kRHfi2f3kp53zG0K6rd/F1jJKOfPyx50/xkxBvCr3y9hSRh4/r1YiBhYlJ+M4m1lkVQu8/tud4WZ0x7aqpC/diaLQ02dgEq8+p2l9uIxfUAL21WfhpL9SH4jWWuowgrd28DEtYPqRymy7nNOUwjgHI0a1jBZWr3Z+SyorzbQKthpSGtEypCGUlwVj3cnYwzlVj5clujYut5XRTvTHMDz5pXKTh535vc618novf3w2h4250Jv24oNp8y7E4dMtITHfs9Dr7ZulAnC5ID+7LeXOmd4SUifTHtAZn2+zmA4XOL5WVIM/cwY5HlAuGiLJZX82aAOH6t5R3ae8nxkJGe0rkUk1O9NDTQECfeJSfKL69EzdP8u07fRplfJ5moLBoTWoTn0NCSvvv1jeH8Eh/WIpI/XbkJGvAgJj0Eid1fU9taOizLde20t69oFjiKXc5xLCa6+NI2m9ag4FBmMeAJTir4mxYHpfKpalsIG0SFmvosuD5hF+kpsMgKtK2cCylQAPJ/hr0atbRIY/a9mxWof6qtxvWjPsVj3JB0828dW/H16Bi9EKbZUN5KM8UctKvQjizAg== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(136003)(376002)(39860400002)(366004)(396003)(346002)(451199021)(66899021)(478600001)(2906002)(6486002)(54906003)(38100700002)(316002)(31696002)(83380400001)(31686004)(5660300002)(41300700001)(66946007)(66476007)(66556008)(6916009)(53546011)(6512007)(36756003)(26005)(86362001)(2616005)(8676002)(8936002)(186003)(6506007)(4326008)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?UGVjR1JwbFFWai8rcldLblZEcFdWNjJNNStUWTVrTmNDekdUdTVLS2FjVytC?= =?utf-8?B?dC9JY2xXZ3prSUNXMjhQUEVPdFFTeWZGazA2QmhIOUFvN3BoUXljVHlGaGV5?= =?utf-8?B?TjZzOEo0M2dPRWJyTjZkYlUxUWtLUUxyaXFrT1lEamdZM08zNG9hdGFFUFIz?= =?utf-8?B?VVIrSVZ0NVl2blNBUDZsRkxScll5Y2xLdEthdGhGK0F6SVlTYzAxSjFtR20z?= =?utf-8?B?Z0RqL3VmUlhwYkZxbk9UU0o1NEp5QUZtRDV5T09TNW9EYW1iQVBITE1zQ1Q0?= =?utf-8?B?WngyRTlWbFB5NlRFQTRHeHZUL2JLeGFJL0huc3JqMlh6ZjV2clBxVVpxS1VH?= =?utf-8?B?OXNvL21idVlyeHVYTG9DR0hmWGF0bnJYOEQwYnh4Q2ExeW9WWVZpd3FuTSt1?= =?utf-8?B?L1NCSmRiZU05cXVhaXN0emtDeTQ2RlpPVkJWNlZMMlBCc0hWL1lML0w3KzE4?= =?utf-8?B?QjRCRGtGTWtyTnFLTU1jSFV3VnFEYmZTc0F1ZjB1Wld3UzhsUmcydE1WTzFV?= =?utf-8?B?TTVvWlVvcDkrREsva1dtUmZOU1h6OVNyU2o4S2NQWGJDSmw5bUtNNkUyeFB3?= =?utf-8?B?d3VLN2RBRlBBa1NGakZIVGtsSUlZNFViTGlPcFIzN0ZscDhXUXkzMjJVYkVI?= =?utf-8?B?VzJCNE1EK1U0blNtYVpWUEdXSldPNWVERGxYdnVPUEVhY3V1RlFYWUZhTzgy?= =?utf-8?B?blMwclRqQmFkNWt6MHU4WFhERXVDejlPQ0oybUNpeitwODNVQUxvN1VhMU1p?= =?utf-8?B?UHptYWVnOTNNQ1dxNVZ0VnhXN2FmWWxEaCsyUnFsOEVVdSt3dmtRUlp3WTQw?= =?utf-8?B?RlVPMnBmeUtHVVR1alArcFhGSFd3SEo4Um5kMXNSUTlaNVBoY3FYTGZ2YWMz?= =?utf-8?B?QkpoMWhUVGJiNDhTR2I2VXFxYlNUdVcreFU2WUc2aGN1N3ZnWnp1Vlh6alFH?= =?utf-8?B?Q2NRTXBkcFU3YUVWNm5kNHRjb2c0SDJ5dXN2aFlyMzJ2dkxhMktNVlU3ei9r?= =?utf-8?B?a0dhSVBYZmZkcmFXeTg4VE1xQXV0ZG01S3hWT1RWelJoYWYvWnArZWQ2MHQ5?= =?utf-8?B?TkhZK0FxR28wTThuUm5vMmZucFhiWkZPcFVrcXR0ZjFWcWdTVnhVeEx4MW9z?= =?utf-8?B?dkdxUFI0R3BZQU1IWVdqcEcyb0d0azl4dWtjQ3dBeW5XQlhhbmVTSlpTWDU2?= =?utf-8?B?ZkR0ckh4Y1VkcGUyVDRSVENINU03T09yODU4YlA5U3FWOGJZUzBjQnppT01z?= =?utf-8?B?Nm9lTEFkeEFNdk5VNEJ0OVMxNy9BK3FQSnFnNHVHY1Ivc3Z3V043RURwUE11?= =?utf-8?B?T2pibmVOK0E5cTZUOUY2em5KNGpwbGppaytRTE4rSWhHakZSMXo5NUkwUkF1?= =?utf-8?B?Qm93L0NqSXhzcDVjcjZab1piSWNmRjJhQlU2MC9Ubi9jUDNFdk4rTGNSUk95?= =?utf-8?B?dUtOL3AxRW5RL3BISDI5OWFodUpaL3J3YTNKbTFSMUQrYzNZWDZLMCtLVEEx?= =?utf-8?B?b0RvWmtWZjNLU0owdDlkSEo2WlMvWG9NTVFVdHVrUjF3V1F2OVBSSHNZTjd6?= =?utf-8?B?eGo3NlR1alY5ZmRKRU1TUFZVWFhSY25FRkdxR3dleG52UnNCR1JudGYybERK?= =?utf-8?B?V2RqYTRjUkxDTEtnVy9HZVQrWnp4NzhXbDJLRlFZS1d5Y3IyR1k0NDMxcjNZ?= =?utf-8?B?WDJpaWtBMTZiR1dKZEd1cm0zcmxpS0NRUHFNU1FtOEtSdm5mSDBnbWJMRUdk?= =?utf-8?B?RGRsODFzbGluVGNGUm9DRyswMENQRE5kNGh6SWFNVFNzSWVDVGJ1cldudXR3?= =?utf-8?B?SDJaMUEzN2c0cnF3MCtrOFZTREJ3RkhSNCtNNXpjZzRYZHYxTHdkWkszMkZ0?= =?utf-8?B?YjJ1RHgyR0ZiVTAzM1ZVMVRiNlR5dG5BeTNaOXRjdjdaSVk3Q1JRMWk0VFpi?= =?utf-8?B?M25QM0F4cDNjaEVkS3pNZ0xYa2NLdUp1c1hYcmpBNGtFUk9jbzV6UXFXNWpM?= =?utf-8?B?REk4VjJKdGVIUTRWeHdmTmVtRjBOcGU5VDl1dER6YUdlWEpTTXhWTnFZQkZM?= =?utf-8?B?TGF4OG9Kc2FwbFJEQmF5U2tHZnQ3aCtldXNkVy9XZXNOZnB1Rml5czhHMGY3?= =?utf-8?Q?HqrJLuiSIRStyCFpEu6uCDrbO?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: b8491c64-00c2-4d6f-ee45-08db70df38ca X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Jun 2023 16:07:03.7206 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: rhjbQZ4VjGsx3DibuVcjIJNxVmXGsUSVbtThFxWmNRs3p1fQpF6ub1icYAq2VA7JZcWApQyHlt6XeeVFmhHORQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0PR04MB6803 On 19.06.2023 17:49, Shawn Anastasio wrote: > On 6/16/23 3:24 PM, Andrew Cooper wrote: >> On 16/06/2023 6:48 pm, Shawn Anastasio wrote: >>> Add the build system changes required to build for ppc64le (POWER8+). >>> As of now the resulting image simply boots to an infinite loop. >>> >>> $ make XEN_TARGET_ARCH=ppc64 -C xen openpower_defconfig >>> $ make XEN_TARGET_ARCH=ppc64 SUBSYSTEMS=xen -C xen build >> >> I think the first of these isn't needed, given the config ARCH_DEFCONFIG >> default. I'd suggest dropping it. > > It seems like the build system expects an `$(ARCH)_defconfig` present if > you don't manually specify a defconfig target. I see riscv64 has a > tiny64_defconfig and a riscv64_defconfig that are idential, probably for > this same reason. Would you like me to take the same approach of > duplicating openpower_defconfig to ppc64_defconfig? It's a symlink for RISC-V iirc, so wants to be that same way for PPC then (for the time being, again like there). >>> --- /dev/null >>> +++ b/xen/arch/ppc/ppc64/head.S >>> @@ -0,0 +1,27 @@ >>> +/* SPDX-License-Identifier: GPL-2.0-or-later */ >>> + >>> +.section .text.header, "ax", %progbits >>> + >>> +ENTRY(start) >>> + /* >>> + * Depending on how we were booted, the CPU could be running in either >>> + * Little Endian or Big Endian mode. The following trampoline from Linux >>> + * cleverly uses an instruction that encodes to a NOP if the CPU's >>> + * endianness matches the assumption of the assembler (LE, in our case) >>> + * or a branch to code that performs the endian switch in the other case. >>> + */ >>> + tdi 0, 0, 0x48 /* Reverse endian of b . + 8 */ >>> + b . + 44 /* Skip trampoline if endian is good */ >>> + .long 0xa600607d /* mfmsr r11 */ >>> + .long 0x01006b69 /* xori r11,r11,1 */ >>> + .long 0x00004039 /* li r10,0 */ >>> + .long 0x6401417d /* mtmsrd r10,1 */ >>> + .long 0x05009f42 /* bcl 20,31,$+4 */ >>> + .long 0xa602487d /* mflr r10 */ >>> + .long 0x14004a39 /* addi r10,r10,20 */ >>> + .long 0xa6035a7d /* mtsrr0 r10 */ >>> + .long 0xa6037b7d /* mtsrr1 r11 */ >>> + .long 0x2400004c /* rfid */ >>> + >>> + /* Now that the endianness is confirmed, continue */ >>> +1: b 1b >> >> .size start, . - start >> .type start, %function >> >> Lets get the ELF metadata right from the start. > > Good point. Following the example in the Power ELFv2 ABI > specification [1] for function type annotation, I'll place > > .type start, @function > > in the ENTRY macro. It's not clear what the difference between %function > and @function are in this context (my toolchain seems to accept both and > produce the same ELF metadata), but the latter is more idiomatic in > Power assembly. The same goes for its placement before the entrypoint > vs. after the last instruction. % and @ are entirely the same here, except for targets like arm-*, where @ starts a comment. >>> --- /dev/null >>> +++ b/xen/arch/ppc/xen.lds.S >>> @@ -0,0 +1,172 @@ >>> >>> + DISCARD_SECTIONS >>> + >>> + STABS_DEBUG_SECTIONS >>> + >>> + ELF_DETAILS_SECTIONS >>> +} >> >> In the other architectures, we now assert that sections such as .got are >> empty, because we've had enough bugs in the past. >> >> I'd recommend doing the same from the outset for all the dynamic >> relocation sections, unless you're expecting to have to support them? > > No plans on supporting dynamic relocation (for now), so I can go ahead > and add these assertions. How would you ever use dynamic relocations? You have no loader to process them for you. (Yes, there can of course be relocation free head.S code which deals with relocations, but doing such in assembly is likely not the best idea. Yet as soon as you enter C code you're at risk of hitting a place requiring such a relocation, perhaps simply because of a "careless" function call on some infrequently used code path.) Jan From xen-devel-bounces@lists.xenproject.org Mon Jun 19 16:07:20 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 19 Jun 2023 16:07:20 +0000 Received: from list by lists.xenproject.org with outflank-mailman.551208.860620 (Exim 4.92) (envelope-from ) id 1qBHPR-0002fs-5k; Mon, 19 Jun 2023 16:07:17 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 551208.860620; Mon, 19 Jun 2023 16:07:17 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBHPR-0002fl-2h; Mon, 19 Jun 2023 16:07:17 +0000 Received: by outflank-mailman (input) for mailman id 551208; Mon, 19 Jun 2023 16:07:15 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBHPP-0002fH-Sl for xen-devel@lists.xenproject.org; Mon, 19 Jun 2023 16:07:15 +0000 Received: from esa6.hc3370-68.iphmx.com (esa6.hc3370-68.iphmx.com [216.71.155.175]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 5a1d81d6-0ebb-11ee-b234-6b7b168915f2; Mon, 19 Jun 2023 18:07:14 +0200 (CEST) Received: from mail-bn8nam11lp2169.outbound.protection.outlook.com (HELO NAM11-BN8-obe.outbound.protection.outlook.com) ([104.47.58.169]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 19 Jun 2023 12:07:05 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by BN8PR03MB4961.namprd03.prod.outlook.com (2603:10b6:408:d7::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.37; Mon, 19 Jun 2023 16:07:02 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606%4]) with mapi id 15.20.6500.036; Mon, 19 Jun 2023 16:07:02 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 5a1d81d6-0ebb-11ee-b234-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1687190834; h=message-id:date:from:subject:to:cc:references: in-reply-to:content-transfer-encoding:mime-version; bh=ajcwVnQ5lgcwkLNc400P1s/UYyHVvXVzXtg7OuScuCc=; b=WG8Ov5EUDgygLc/qrJScH9ANii9do/Ds2lof9A/PK5gWLv+u3EjaJUV3 jXnzsuCfm18LHye3PbE8OcAXgH8OK3CBPGukKulbVhnpieup5G/+yW5w0 Z1ddFoxJv2qbA2v34ouNrXBsBxE/6/cQ5bUw1HGe4GBfEUz5P3EzE9TYU A=; X-IronPort-RemoteIP: 104.47.58.169 X-IronPort-MID: 112676262 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:EKnKsqpQUvulci/Ue7XSmScPkRNeBmLYZBIvgKrLsJaIsI4StFCzt garIBmDa62KZWujfNB3OdyzoUMFvZ7Wz9BmQQBrrSxmQikWo5uZCYyVIHmrMnLJJKUvbq7FA +Y2MYCccZ9uHhcwgj/3b9ANeFEljfngqoLUUbKCYWYpA1c/Ek/NsDo788YhmIlknNOlNA2Ev NL2sqX3NUSsnjV5KQr40YrawP9UlKq04GtwUmAWP6gR5weAzihNVvrzGInqR5fGatgMdgKFb 76rIIGRpgvx4xorA9W5pbf3GmVirmn6ZFXmZtJ+AsBOszAazsAA+v9T2Mk0MC+7vw6hjdFpo OihgLTrIesf0g8gr8xGO/VQO3kW0aSrY9YrK1Dn2SCY5xWun3cBX5yCpaz5VGEV0r8fPI1Ay RAXABUGVS+61u+4/L74cOZhgeAda9vNOIxK7xmMzRmBZRonabbqZvyToPV+jHI3jM0IGuvCb c0EbzYpdA7HfxBEJlYQDtQ5gfusgX78NTZfrTp5p4JuuzSVkFM3jeiraYSEEjCJbZw9ckKwj 2TK5WnmRDodM8SS02Gt+XOwnO7f2yj8Xer+EZXhr6Q03wPJmDZ75Bs+DEeduPOilQ2CWs96N EMfyHcnlbMf+xn+JjX6d1jiyJKehTYeUddNF+wx6CmW17HZpQ2eAwAsRzpMatUguNUxAyIj0 luEndTBDjhorbHTQnWYnp+EoDX3NSULIGsqYS4fURBD89TluJs0jB/EUpBkCqHdpsLxMSH9x XaNtidWulkIpcsC1qH+91aXhTup/8HNVlRsuFSRWX+55ARkYoLjf5av9VXQ8fdHKsCeU0WFu 38H3cOZ6YjiEK2wqcBEe81VdJnB2hpPGGa0bYJHd3X5ywmQxg== IronPort-HdrOrdr: A9a23:huupeqCW804ZkxTlHelw55DYdb4zR+YMi2TDtnoBMiC9F/byqy nAppomPHPP5Qr5G0tQ/OxoQZPgfZqEz/5ICOoqTNWftWvdyROVxehZhOOJ/9SHIVyGygc378 hdmsZFZOEYQmIK6foSTTPIdOoI0Z2syojtr+Hb1nJsRQZhZ+Vb6RtjAArzKDwUeOADP+teKK ah X-Talos-CUID: 9a23:bPgnR24vHMr9+pMfQdss0UUvJfl0f3PhwDTqLEK/LVguWpuRRgrF X-Talos-MUID: =?us-ascii?q?9a23=3A/ePcSQ2xEMebneCAPNa8qixF2zUjuriIEUoWjtY?= =?us-ascii?q?6utShKiN7CWqUtC+aTdpy?= X-IronPort-AV: E=Sophos;i="6.00,255,1681185600"; d="scan'208";a="112676262" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=ShGRoy6VOifmP27l3VCHoteAvHXP9biN1zoTz4Zpq0noV9I32qlB+qKw7l7caBPnEwVT8OUBTieqr+VW+1VUj8otN/ysimrzdDvD1njnZ/OItDWneqn6njcP9ddmiL8I3BDZMbmluu+71Vcnd6FDLG5Xgc1deV7UQ/hmtGE0Cm5zM09i+GmedRlzFKeg1GSXkvl9LVxWie9wtatfsG31yW//uuMW+srZkrc0lIVG8wcTQkCWLP+F1aFTqDijeyHsJRdJvRjXhYBc+QLcsd56BdKKf27NI5xiADAX5vxE8YUmco5ccmZ04wskPV2a+CsliGRkM9Dx0XrX7CtK2phwRw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=IuzXPe97cw2GP+PCxb967iqM4Ypf4zMFKP084H8mjPA=; b=f8AC6AkLvVpcPtDCQjYfRUe6mq9yuIKVuxsoxzENOVlpwI5A9Dswddds4g+lTF8eaqso5odoB86inrw7aLVGF4emKRZRbJw2M2+vC7+3iRVe2IgNBkzgMTtyDFeV/Vw5B3fTi0M/CplKhfXWz7SkACm5jTzLAdMIJHmLPgkUfvYdUFocA3XFuP47cUoPHEPRMKY0kP3zmJ9H9B8BXGDVy7sDDCfrCh3iNw7GimXjmFei6CbdQwp6aIP5xD+6i7WZhl6OnlFg5kl7HjUt5l4cfj6gx2s5CjULmdhFYRG4Ql44rWykdoQlr9vAWSKvbDpOR+qqEYuDxf70V2m/hTLxjA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=IuzXPe97cw2GP+PCxb967iqM4Ypf4zMFKP084H8mjPA=; b=fJ4EktFR+wu/hOHslnGqnfsQQ+cUwmOJ1FXnBHTlzvEvMPNlV9a7KIrSHRwJZKQIpEbeGkaHXm0ZQTtVoDUiqYzjo8yqRd6hmJIoq6tPtAJIdciQ1p4VcLCfJ9UJp7H52wKseN0TRFK0tUQNtUyKpvJCT7+OniAl6/PEP5XW0rI= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: <867ebb90-2bd4-7500-d6db-0af08efff88c@citrix.com> Date: Mon, 19 Jun 2023 17:06:57 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 From: Andrew Cooper Subject: Re: [PATCH v3 1/5] x86/microcode: Allow reading microcode revision even if it can't be updated Content-Language: en-GB To: Jan Beulich , Alejandro Vallejo , Xen-devel Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu References: <20230615154834.959-1-alejandro.vallejo@cloud.com> <20230615154834.959-2-alejandro.vallejo@cloud.com> <3a92fbe8-a9b4-f671-7895-c4d8065b61ed@suse.com> In-Reply-To: <3a92fbe8-a9b4-f671-7895-c4d8065b61ed@suse.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO4P123CA0052.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:152::21) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|BN8PR03MB4961:EE_ X-MS-Office365-Filtering-Correlation-Id: 1f45431b-e1f8-460a-7958-08db70df3805 X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: j7/JIN/8x3djFVE5Th/RlmFJ9qw3Hn/2MVd7WxsOhG4mwK94cDJNat16BYf9512xo8pydVf/9Z68L23YOxvG1k360d7Gs9O3nkZ7YkCJ+opVK9o0plnl/a3pjgxjNNtRLhKk7bG56MSUSE35z4DBMhr2kaYScJ2bS4go2QFCmfaKZqIT94QECljRTh5UXzKv8WgK8lrIkpQHU4rIcACC+9CjcPVVEnNoVmJeP8XkXJaYiG8pjiD6ojyBy5/I4eKG9BKs8dy7Vopd1rXhlx21VlSC0Rrf+Ou/rOc/ei0VOWLzM6dQMkdQrDIlzv/L4oMWa5F0T8cDzfXW9Pfo5AWKRnxRbgiP5qmp1QaGzS8k+lfn7GtoHLkswK068hJdTVPkzNq+Dv0b+WMU+B5xEa3OkZZrhf4rGqYmDr1xq6j86FPShIOooVJiBRwG51Yq9kX+Yp5dgEL2KbqZiK2m2Aq9Jvkw8J8qC0Sjj7wbUPFNjnXRL6hvlZ4ha8q4e0UMn1OFm54gpyWvneUAJR4xesJOgdrwAFM/LCWoQY7tIg0IOLeVxEmcuedBJCmh13KKnjtJedYIJirDyWqbZR9DA3+5gi16eqT3DxWmd3XP2aXfuenvHCMkBod6BP2KYGDVDznujf6bUSRc40qFMG3tOzJCIg== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(366004)(346002)(39860400002)(396003)(136003)(376002)(451199021)(478600001)(4326008)(54906003)(110136005)(6512007)(26005)(186003)(36756003)(6506007)(53546011)(6486002)(6666004)(2906002)(8676002)(8936002)(41300700001)(66946007)(66556008)(66476007)(316002)(5660300002)(31696002)(86362001)(83380400001)(38100700002)(31686004)(82960400001)(2616005)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?bklqd3V0N0l4a1p4QnhuRGJFK09uYzRoZSszeDI3YWl2ZXpOeUFyL3liQ2xE?= =?utf-8?B?YytwOXRZU2xweFBvWC9Ed3B4OHl2b2VuNWZtMzc5QnBKMVRWdm1IQXcySGdF?= =?utf-8?B?R0VzcWV0L1VHcE1Sd0lXWU9hQ3EwZmlUR0xvMFFUMmJNSElrMHQ1NUFUL2tG?= =?utf-8?B?RXVwNDdzTmg5RnFHaWhjdTlQcVk2bzNtUzEzcStPc1QzMkFTUm01bThSVmtT?= =?utf-8?B?aTJOcVowZHN6Y0wvZWl2cHRXbzRPRDJVYjBreTU0N3pRVm5yZTZrMlRZTytu?= =?utf-8?B?Wm1sNitTZGpuWEQzaVZuZFpsc0lkaVZnWFZtMkJGWlpkMURmZTZnM0dBS3lJ?= =?utf-8?B?RVJrVU02U3FVNWJxczZMYk1XZlZ1dVFRWUJaTGN5a0M2OE03Tzl5eTlNKzBo?= =?utf-8?B?M0k2a2krdHJyM21HTVBFSUxmb3IvbUw1ZlNVNjhJSGpaWlNaaHF1VTdYMC82?= =?utf-8?B?N2dBNGRWQjQvb3RTckwvMW9mR21FMW5JcEZqMWJXNVZPdXB4c3JXakRnNko2?= =?utf-8?B?MHR3dXd6TmlWeXF4Tmxzb24xd3pFcnZINHh6aFl1ZnUvdDZSY3NHcjZ1Y1RV?= =?utf-8?B?YmRXNjhKZlNEeWZqbHlTTUMyTE9zZFlpWUplS3o4dkduNk5VMTBDVDJkeDJt?= =?utf-8?B?Rit5Zm5qcm9ta092elJxYkNyRlNrQXp6aGxjNmZWalF6ZHhNaXIzcmNoM0c0?= =?utf-8?B?SUxOUjZLS3luZG1QaWFMT3E4WVQ1bkY4NXl2eEhpWTAwSnNudVNEV21STEZ3?= =?utf-8?B?NGxwU3ZZeXZ4bExSYzFGdWcrY1VQUXIvQzB5OElKQitBRGFWL3hqTnVlcTJi?= =?utf-8?B?OFZ2OFdLZ2Y0R290ZGZHYm1lanNUWFhmYVFlUUhvRHFmWXVDclVPejlZcEwx?= =?utf-8?B?MGlyK01xWWFOUDE3eWZuNG9ocitTdU15WVZVdmYyQ1B3L1JMMnBlekg3WjlF?= =?utf-8?B?Q2dCOXFVUzFFU2ZXWjVuQkJvMkVEWkNNaVBqMnhaWWZZUy8zYnl3UVJ1SHE2?= =?utf-8?B?N3N6QkdkS3RDeVBPSGYvcUNCbm5Iam9zaUZocEovNXp4dzhEbHVBbnNwRXIz?= =?utf-8?B?Q1FDbUV3Slc3cVBGT0RyM0VqRjZaOElxTlFQdFFPSE1MZVJ0ZWpLTUkrSlF5?= =?utf-8?B?QlV6RWVOR3pQdy9pOHRZcUROdDl5b0dKRk9NZXZqd0Y0M3Z4ZW9oSkgvUVRy?= =?utf-8?B?T01kbjZXcVhxRjhacU9wNUNFaXZnY0RhYTBjUzRHWXFPYTNVSjgvc1RHVlBP?= =?utf-8?B?ekdVelk0MHhXUFJENHVGQTcvdWttMjkyUjhDNVY4SWpVV09UaXBoQ3RPWW91?= =?utf-8?B?Rmh6VmtnbVBqSlBtTmJFRDloZFdXWUtLeFErQkdRUnY4YUxGSU13ZjRTMjRv?= =?utf-8?B?OUhBUWFqOEpoa1hHRFZqY0tjaFpGMnNiSERjN1plQi8wRW9qeFV0TGp0amY5?= =?utf-8?B?bHlJaHFlc1NrMXd1Rk40WnRZMTl5dTliODRtWGxFV2k4a2VJZ1NNa2VFSTZY?= =?utf-8?B?Yi9ySms4aGVwZzUwdHQ3ZGVOSGhYSkJqM0daRWhiUDhZeXVHbS9VYVgzTkcz?= =?utf-8?B?aE1lYWdnellrSDBtdWdSdCtQdkduR21oajczWm1TYXB3RXRWTllnRnYrU0Rr?= =?utf-8?B?WmNXZUVnQVNIOWY4eTIzM2lLQ09YeExyYnQ3KzJibTN3SFEvaFBHQUVnNW1V?= =?utf-8?B?aWxmaFJZMnhhVlhsajBRT0Q0VzlqMHR2T09Dd25ubXdibjhGeHUxTWJnRllF?= =?utf-8?B?VUNzZDhybmlGbDhEL0dQSk1GMWYzMGp0aEFiN0gxRDE4SGdoVlZKbjRMVmY5?= =?utf-8?B?WUxkQStCZnVOMHZYS2pUVVFrSUtKZmhqTEU5OWd2cjAyZ090MXZGd1JIT1V6?= =?utf-8?B?dDdCcnk1OTNCWGtpbHlpKzBHRmptMmtjdCs4cURLVVRYZjlpN3NVZGRBRFph?= =?utf-8?B?YkxsZzkwTHFiOWt5WDRWTS9qc2g2bk1WUmVuMmRuYm1MZ25HRFZyd1RQUXpY?= =?utf-8?B?S1ZMTnVzNkc0SWdpaVFVdmp1MUZURjJHL0hPVENmRWh1azgxbnlzZzcwalFO?= =?utf-8?B?YkpwQXFaUDhhTXRseGc0RGFGZGlaRUhjdUJaUktPNzJZVldGdjRydHQvSk9i?= =?utf-8?B?dUk0bjJvbUZWS1B6RkNCZEtXS1FtV2pibUtyR3A0MnNHQ1FnbWJ5SFEwdW8r?= =?utf-8?B?bkE9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: gflUXx+BptCM+013NWbhsUecAsw7lO+YfGF9ps/KdN8E3LHqhKA0GqmFuXng6UhIS3tXy0HCnml7dfYq+daBiIvlvFog5viVsjF7f3og/1x2Uh3ibY8E16TV9vIlh/LYgRz3XgFUKoFOCgLk1w2hHpXBhKAVSyLPX052NqBD51p9grwUMX0a9blWyIl94aR6xUgNAS0wfhTfDFUako7Nv8BtMID3IUknqUwGTAfvxNnb93JhsUPq0nBeSuFlfe8VAnI7XodTYjvXJRiUhcaN486VavvNtsLoBoxXUXI1DNXO++4msBHHCIvk3gX7lkpyrsQurhPkI1GZ5kApY/NeI6GA3w8/zRBSeKcNaPebD0MOUNOgKVMDK7cA/OKgLV9ML9Mb3T1YKVTJxmwKBPG8ceE8G8VhtBk5lh5yMLM9+CDEQNsGSCRk7/x3068YtV0pSAKfThmp87PyVfnhR8VBUPm4n0TtwLXUS/XrWxu+rLFacDYHqF/Ew2qCD++VwRoME3ONiVeI7EB8MMeO14UgpmweEJtnRvl3uso5ThUrkcaFLKTCb/YSNuQobF90wntmngSs27hzEZ5RQpbowF6fcoKlDIEakx6O6MH4hj3xfO+PaAff75Qxb+Y4lPALIlHiEbzsJ6K+b+f3m7SPlkB5AENQIBgV6//xmePA4e8YWajqqI7kpUtdjrnm0htIR3oKv8NphUSWZmtx9nLbLCRaf7gUy4WqnR2KxZ9Cdnfpi2Y6N5nxAxf85qj9AC5IJ/wuqf0XG8JmkbK2MZauBb8Qd44C1FwjM0i+jvNV5aMbPgrLQ+YJBidR7R0bLyAVygSOaVXWkRGjreiIVwQdhVG+aOp4ee2hOSekuXxYl7VdzNA= X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 1f45431b-e1f8-460a-7958-08db70df3805 X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Jun 2023 16:07:02.5805 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: lk4DOiu5xcgfHVXMPNLTNDuS6q16UkhcBZiGUCwCmN7iT2XIcaX46v81Vc1waY035EMudAyEWi1i8uV8QrOFdvKZvxFi/hU0IUb224WhkMg= X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN8PR03MB4961 On 19/06/2023 4:58 pm, Jan Beulich wrote: > On 19.06.2023 17:49, Andrew Cooper wrote: >> On 15/06/2023 4:48 pm, Alejandro Vallejo wrote: >>> diff --git a/xen/arch/x86/cpu/microcode/core.c b/xen/arch/x86/cpu/microcode/core.c >>> index e65af4b82e..df7e1df870 100644 >>> --- a/xen/arch/x86/cpu/microcode/core.c >>> +++ b/xen/arch/x86/cpu/microcode/core.c >>> @@ -750,11 +750,12 @@ __initcall(microcode_init); >>> @@ -860,6 +861,9 @@ int __init early_microcode_init(unsigned long *module_map, >>> break; >>> } >>> >>> + if ( ucode_ops.collect_cpu_info ) >>> + ucode_ops.collect_cpu_info(); >>> + >> I still think this wants to be the other side of "ucode loading fully >> unavailable", just below. >> >> I'm confident it will result in easier-to-follow logic. > Yet wouldn't that be against the purpose of obtaining the ucode > revision even if loading isn't possible? No.  The logical order of checks is: if ( !ops.apply )     return; // Fully unavailable collect_cpu_info(); if ( rev == ~0 || !can_load )     return; // Loading unavailable // search for blob to load This form has fewer misleading NULL checks, and doesn't get printk(XENLOG_WARNING "Microcode loading not available\n"); after successful microcode actions. ~Andrew From xen-devel-bounces@lists.xenproject.org Mon Jun 19 16:10:52 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 19 Jun 2023 16:10:52 +0000 Received: from list by lists.xenproject.org with outflank-mailman.551217.860630 (Exim 4.92) (envelope-from ) id 1qBHSn-0004Ob-Ka; Mon, 19 Jun 2023 16:10:45 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 551217.860630; Mon, 19 Jun 2023 16:10:45 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBHSn-0004OU-H9; Mon, 19 Jun 2023 16:10:45 +0000 Received: by outflank-mailman (input) for mailman id 551217; Mon, 19 Jun 2023 16:10:44 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBHSm-0004OO-Gt for xen-devel@lists.xenproject.org; Mon, 19 Jun 2023 16:10:44 +0000 Received: from EUR05-DB8-obe.outbound.protection.outlook.com (mail-db8eur05on20608.outbound.protection.outlook.com [2a01:111:f400:7e1a::608]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id d6a6bc5d-0ebb-11ee-8611-37d641c3527e; Mon, 19 Jun 2023 18:10:42 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by AM8PR04MB7764.eurprd04.prod.outlook.com (2603:10a6:20b:244::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.36; Mon, 19 Jun 2023 16:10:37 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6500.031; Mon, 19 Jun 2023 16:10:37 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: d6a6bc5d-0ebb-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=i+B6vlinyKn/o5yBkzajp1bm+x/rixNA34QXPzAZNI1H13nJl5xG7CWuWmlDVuTM5Y+BCm7um4hOLmeo5ZGEgZh6fLUXDJRwlJcsbqovA/FM+sl9rDA2KLsuaEPvqOOnpxSkgmaoglAMeDXku1N3X4KJmdwJRK+QhRCsVjgIJOyQZrL6/SycOr72K+TIkuNZjTIfzBbafPmV6dLVRdTEsZxO3SaFoN4T/bFRdIiLl5K1s4WOvcpmwzmab6W2xPenVjEFY0Zo0cQmiRZLz76VsX+O5xks/vq72sTCOZ9IAwd1aEyAO0l9GpUJ0eLOAJ6XXr1GMU8jOYNZO35WdM7V+Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=bJ3ZPC+S6x+yP1dQlKuoBWeryTM70zr0VRu6ptJED5A=; b=nP+jVR874CETSDRdNvGy0K6vqalKq0iSPSptxNgQV7Vd5NrP9uLpzPlnc1QV/YHNxhizwULCo24RKO+FsZDq1dWiijdK0i2s7Z0V0g83u/ByhZ8DUQlzSM0IKoC75D3LSdx0SBDnt0NFKSZ1cRi8YPz3F4AvyYx6VrG4ROLpT60D3Xm2r87ayXZ38esnxvnTkUUKpWdtEWBeqHeXrx9JJB+t3SVjT7LDz3NXi+E01mwBc0HDbj/8bB1AydyJd/izwNV4007wh/HZWhH+t2sT5y4mAc9JFAimJ+oDnuxhJNv+sgmfjbGSyCs3y7n+DoR6TsxzC+NxRUAkZpcL+aNnug== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=bJ3ZPC+S6x+yP1dQlKuoBWeryTM70zr0VRu6ptJED5A=; b=Ugpkr8oCrVpfht8zax5oCEJgmaxPv1yZBGrmePNyb0LLdvUoPZPrqge5m8KqurVVlH6rm88eVu7j+ijeAaM1CoMjmmyMDefXEQMLbAKSz9dGNd8qFKj42xULJUacww0irmafBoPQZWezVlX/6rA+R5AJEUU1roIE28v1lgcHlT/5ul8gI97tnlOwp+Mp5lNLCNFOUxDp+zWHzPQhK+Rsl1XoTppV2QdOfhOemwlymw+skOT8RAoXNEzf7qUZ2m+jHC/ukIncsXZitxoeLMdcjsyFrNKcxXVg2D/eV4eUKib0ujJh7snSyT8VDrGUahqO5gW6jXqfXHgR8i6WQVYJsw== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: Date: Mon, 19 Jun 2023 18:10:38 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v3 1/5] x86/microcode: Allow reading microcode revision even if it can't be updated Content-Language: en-US To: Andrew Cooper Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , Alejandro Vallejo , Xen-devel References: <20230615154834.959-1-alejandro.vallejo@cloud.com> <20230615154834.959-2-alejandro.vallejo@cloud.com> <3a92fbe8-a9b4-f671-7895-c4d8065b61ed@suse.com> <867ebb90-2bd4-7500-d6db-0af08efff88c@citrix.com> From: Jan Beulich In-Reply-To: <867ebb90-2bd4-7500-d6db-0af08efff88c@citrix.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: FR2P281CA0018.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:a::28) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|AM8PR04MB7764:EE_ X-MS-Office365-Filtering-Correlation-Id: 6c8d0d1c-d92f-4737-494d-08db70dfb83c X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 5WwP6DWzD0mN5yFbnhIjN/QHQooKZPhvAlAUnjXCHuefCT4l63RvSTfKIU0GoiwcNQ9kBb4KlyLJydc4bhFkXd/Wz9ymhqa7qr1YoDCW5SzikRcz6p8hziyLEn4zvS+CumPULTgI4uBca8ZjmxHhy51rGWIo+fLdh0xOLykvSIOWfxGKw1VlkikmAclFxVXbysTWf1CnM/fu4gXgEyD2jS88QpcFh7+rES66CfXx75lH2Gx+Zj+/vvlKQaCYZMxAH0HvL4A9kTtgN8vT3E9GeskAOaqxTGt4yjiPs/JoG185msPwHJ8aLclP/8ZhhKTJH4aF0VV4inTHamgpZ1aw/kKY0pvUyls0+ajp9FFzA3uFmloAuDPm8msVAroJmclHZVY8o4fWksXYfhknrvxCvTME5wpY2SapKmEURtCmwyAESyh90hv1oLshv3l0k3V+eZv1dew4tMRf/UazIwcEwme+KMtKOxOX8lKhkEMWYTWWM3LuQdzEZURsmw+uRCP334ft0IgSKQnajVqepAWQWwAy+UkK0SlckWZcowJG49dYxasZIAU/RI+SnW8VdI/aydAEG55q+76eWdQNYmw1+mSQlS/+sbMLvDXbRZitar6236R/WdGUTL72F7TjYa6n+uS+F1F8d3A5NA/TXFoBYw== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(39860400002)(376002)(366004)(396003)(346002)(136003)(451199021)(4326008)(54906003)(478600001)(53546011)(6506007)(6512007)(26005)(6486002)(186003)(36756003)(2906002)(8676002)(41300700001)(8936002)(66946007)(6916009)(66556008)(66476007)(316002)(5660300002)(31696002)(83380400001)(38100700002)(86362001)(31686004)(2616005)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?LzlKaVFDNXo1QkdoS2REY1pacnV2NWdFNU5Cb05ZZjlnS2dGd2U3NjFJWURB?= =?utf-8?B?dytSeHUzMVdtcGhRaXpsUlMvQXM1ZDRYWFNXK3I0YjErZWFOR0R1K0pIUlF6?= =?utf-8?B?ZXU1amthUTNvWVR3Y2MwK25TblJXNUZWKzRraDYwVjhaeEJvQllXdmw0bU1K?= =?utf-8?B?S0R5cG5HbGpCMlc3YUJPaXNvR0tJQ3FhNWU5K0ZjUHpCRGFLTjc1ZGNkVG1F?= =?utf-8?B?ay8vYmgwenBxeGZrWkp3a09QN2R5RzEzbHdRRGkwOFV5d2dueXJFbzVrcENS?= =?utf-8?B?OGV2d2ZKT01JeDgvZW5kLzJkZDB6a1BaWEp2Zm1DYjhXci9PWklNbDM0U08w?= =?utf-8?B?czdwblNHZWdjZC9RYWxpRmpSRlR0bDN5d2RseGFqVDFFa1dWTnJjS01mbXJG?= =?utf-8?B?OXdBY25CbU5rOXIvOHBOS3NSb2R4VCszQ2FqOGxHd2t5SFVFYldWWC9GWVpQ?= =?utf-8?B?clF5WitpeVNoZGZLSjNIOWpoSm00U0I0ZzUveGtKVk9DamVxVHl4NkVENVcv?= =?utf-8?B?QzNQZlkrb1BwczkwT1NJVGZTR0Y4YzE1aU9kTzg4NVdUa1NGdGVBTE1icWpK?= =?utf-8?B?UmFaSVdBMUlEc3NOR3VUd0tuZEhFaHMvTkpVZHE0QzdmaXFLQmVEaHlxNlVr?= =?utf-8?B?WGFna1Q5dlJyT1p2R3FiWXhKR2dQUUVnVkQ2QVA3RUg0eVFDbElIczBiYmN5?= =?utf-8?B?YkFOOFdYbld1ZjdneDM5N29RMkxwemFlSmVlbGducEVkMm1HdFM2V2oyL2th?= =?utf-8?B?NGlGdkRncVBZdWJneDRwWmZsVVJIVDhWNEd5bUdwZWNoRVJyM0R4d2JPb1RV?= =?utf-8?B?VmpCS3lXcys4WFlaN1RVdnpkV1NkVEZVcTVKUW9aS1dGVWhGZzBEckVIZW1G?= =?utf-8?B?QlE4SFBVRG8xNFlqTmhkSVA2cEJWV0U1Ym9FVTBLVmJpdXhtTmlFVTVkczlh?= =?utf-8?B?dk1ENTJtcFlpNjlaMU92WjVjNE1uUW16UTFXUHdJZzg5WlVnTWRPbnJKLzFp?= =?utf-8?B?d3oyYmUzTEJIaWNLNmdjVjkwWEFlUHZsb3crNTJvQ0N0Rmc5cXJ6NWxYZjRI?= =?utf-8?B?OHBidjNVZHZMNmt6YzRueHlHY3NYbkQvOHpROFFPSTZKVmNQWVdWNm8rMzNC?= =?utf-8?B?cERLRVVlTGRoQTdmMFhVajEvREllM2p6angzSTRnaHp4dlR6a1N0OS9sOUEw?= =?utf-8?B?TExrTHZUN2NJanNWVlBrR2hOakVLUXQvUXZWdFZ2cndRV1BZMGc0SkNDaWo0?= =?utf-8?B?UkZySUhHTGVWWmZGQ2hYMHNZK2NNeUFqV2l6d0VzNG1aMTBsVmNtZFFka0Q1?= =?utf-8?B?ZW9ONnZJZ09XSnJJeFlISnZFc1BCbHN2Q2tJZTN2TWV2R2xkaWpWT3Q3ckdX?= =?utf-8?B?WTFvN2JKTGdYcmc2eGVYaVNuakszYnIyNjF6U1I3NUJzbEE3Q1Faclo1ZTBT?= =?utf-8?B?b09xeVVOS01CWDgvZ1N4NWVvZ3JxeEdsUE4rY2k3dzNkc1ZWc1JPODBVQWdB?= =?utf-8?B?djAvVS9XbHlMMzJOQ1NWVnRhcVZ4eVdNaHJPRS9iWFpiS3BDNFNHb3B6Vm5K?= =?utf-8?B?WTFmeGd6K2dUUno4REoydFJjR1dDMXFUb01hNUpML2VwTFJFRGJoVW9MTW10?= =?utf-8?B?cWF6d0lldVdtTzJnazgwUjV2c3djT3BkTVdYVjAxZ0p0aWFnWDZtZlc3aWxI?= =?utf-8?B?Q2cwek5aSGFEVlh2bVNoKzlqSkZvMC82bzBUSnVQWk1OL1ZxWmZjZndOY01H?= =?utf-8?B?cGNDMmlBSnRwQTNFbmwwMTBwcWhsSjZab3Jyem1jYjNIMVFEOWswM0s4bXdW?= =?utf-8?B?dUlSR0tKZ28xMDRDeklHejZodGJMMm5BanhsUlkwNDV6OXpjU3YrZk14aFRu?= =?utf-8?B?Z0RmQlBYN0tIbU9sOUU3NEJiOEgxeWNOZVNOMVo4d2VoUVFLTTRlQXhacHBG?= =?utf-8?B?NVRzYk14VEpFYWFabmNaQVVBK3dWbUxPSklvQzlhTjZKNXRPbWIvZlMzZGp2?= =?utf-8?B?aW9NNmFXTHpuZllWeDBFUkZDTEpLSTd4RWFrY0ZVSG1kTXIxeTRydWJRWGNy?= =?utf-8?B?L3dVL2VyYldtZXVSZzFmc25FSkYwNWZrdEtyTUFKYnc5cmIwbFVRbVpsUFZ1?= =?utf-8?Q?wSmvkYZbKdnHdY4kDVnF9g3Pg?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 6c8d0d1c-d92f-4737-494d-08db70dfb83c X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Jun 2023 16:10:37.5891 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: upB08VbtulKKtxEDSkBmoVj5Rz9CpkLT4yb2wvPoHMFJ1lpWnPlS8tKP6UPDsp805XK1ez6ZscnANY56YypCyg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM8PR04MB7764 On 19.06.2023 18:06, Andrew Cooper wrote: > On 19/06/2023 4:58 pm, Jan Beulich wrote: >> On 19.06.2023 17:49, Andrew Cooper wrote: >>> On 15/06/2023 4:48 pm, Alejandro Vallejo wrote: >>>> diff --git a/xen/arch/x86/cpu/microcode/core.c b/xen/arch/x86/cpu/microcode/core.c >>>> index e65af4b82e..df7e1df870 100644 >>>> --- a/xen/arch/x86/cpu/microcode/core.c >>>> +++ b/xen/arch/x86/cpu/microcode/core.c >>>> @@ -750,11 +750,12 @@ __initcall(microcode_init); >>>> @@ -860,6 +861,9 @@ int __init early_microcode_init(unsigned long *module_map, >>>> break; >>>> } >>>> >>>> + if ( ucode_ops.collect_cpu_info ) >>>> + ucode_ops.collect_cpu_info(); >>>> + >>> I still think this wants to be the other side of "ucode loading fully >>> unavailable", just below. >>> >>> I'm confident it will result in easier-to-follow logic. >> Yet wouldn't that be against the purpose of obtaining the ucode >> revision even if loading isn't possible? > > No.  The logical order of checks is: > > if ( !ops.apply ) >     return; // Fully unavailable > > collect_cpu_info(); > > if ( rev == ~0 || !can_load ) >     return; // Loading unavailable > > // search for blob to load > > > This form has fewer misleading NULL checks, and doesn't get > printk(XENLOG_WARNING "Microcode loading not available\n"); after > successful microcode actions. But from the earlier version and from what I've seen in patches 1-4 so far, I expect patch 5 will introduce a case with ops.apply being NULL but ops.collect being non-NULL. Otherwise I don't see why patch 2 does what it does (sacrificing cf_clobber, albeit likely not really intentionally). Jan From xen-devel-bounces@lists.xenproject.org Mon Jun 19 16:26:17 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 19 Jun 2023 16:26:17 +0000 Received: from list by lists.xenproject.org with outflank-mailman.551224.860640 (Exim 4.92) (envelope-from ) id 1qBHhZ-00061q-2n; Mon, 19 Jun 2023 16:26:01 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 551224.860640; Mon, 19 Jun 2023 16:26:01 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBHhY-00061j-Uu; Mon, 19 Jun 2023 16:26:00 +0000 Received: by outflank-mailman (input) for mailman id 551224; Mon, 19 Jun 2023 16:25:59 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBHhX-00061a-0z for xen-devel@lists.xenproject.org; Mon, 19 Jun 2023 16:25:59 +0000 Received: from esa3.hc3370-68.iphmx.com (esa3.hc3370-68.iphmx.com [216.71.145.155]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id f673cecd-0ebd-11ee-8611-37d641c3527e; Mon, 19 Jun 2023 18:25:56 +0200 (CEST) Received: from mail-mw2nam10lp2101.outbound.protection.outlook.com (HELO NAM10-MW2-obe.outbound.protection.outlook.com) ([104.47.55.101]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 19 Jun 2023 12:25:53 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by MW4PR03MB6380.namprd03.prod.outlook.com (2603:10b6:303:11f::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.36; Mon, 19 Jun 2023 16:25:51 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606%4]) with mapi id 15.20.6500.036; Mon, 19 Jun 2023 16:25:50 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: f673cecd-0ebd-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1687191955; h=message-id:date:from:subject:to:cc:references: in-reply-to:content-transfer-encoding:mime-version; bh=EiemhYoKQ0xWVX2gpF1mFvdi4n+Se24VDaR25nGUHnY=; b=KHlFBqMV+nmot6CLoM/8jV7P94SYRawItcZSkEPIaQwOY0yQB1Hlq3XV FqwplwpdDP5DpW4UKkdYioheUlHUJHzOjRyeTq0UDiaIFzu5Wkey4A7bW 0WhRShNeHY0t2odvOmE4FG2hO3sy9v4iWZKClJCgyU2h7E6qwo7tLjC6d g=; X-IronPort-RemoteIP: 104.47.55.101 X-IronPort-MID: 113371475 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:YMvoUqtSVDEz/GSbmKrdsXzSu+fnVMFfMUV32f8akzHdYApBsoF/q tZmKWiDaarZZDD0et1xb9+x/UJXv5CAnIdiTwE//igwES8X+JbJXdiXEBz9bniYRiHhoOCLz O1FM4Wdc5pkJpP4jk3wWlQ0hSAkjclkfpKlVKiffHg3HVQ+IMsYoUoLs/YjhYJ1isSODQqIu Nfjy+XSI1bg0DNvWo4uw/vrRChH4rKq4Fv0gnRkPaoQ5AGHxiFPZH4iDfrZw0XQE9E88tGSH 44v/JnhlkvF8hEkDM+Sk7qTWiXmlZaLYGBiIlIPM0STqkAqSh4ai87XB9JFAatjsB2bnsgZ9 Tl4ncfYpTHFnEH7sL91vxFwS0mSNEDdkVPNCSDXXce7lyUqf5ZwqhnH4Y5f0YAwo45K7W9yG fMwBQAIQjzEotmN7rOcUOldmv8nFvnaI9ZK0p1g5Wmx4fcOZ7nmGv2PwOACmTA6i4ZJAOrUY NcfZXx3dhPcbhZTO1ARTpUjgOOvgXq5eDpdwL6XjfNvvy6Pk0osjf60aIO9lt+iHK25mm6xo G7c8nu/KRYdLNGFkhKO8262h/+JliT+MG4XPOThraU12QHMmwT/DjUwa2C3uaHkknW4Bc5lE F4L+wkrtIgLoRnDot7VGkfQTGS/lgUVXdNLD+Qh6Qal0KPM/wGDC24LTzhMZcYnssBwTjsvv neZktWsCTFxvbm9TXOG6qzSvT60ITISL2IJeWkDVwRty8X7rYgplRXJZsxqCLKylNDzFjD2z j2QrS4xwb4UiKYj1a+24FTGiDKEvYXSQ0g+4QC/dmC46gJ0Yqa1aoru7kLUhd5bN5qQRFSFu HkCmuCd4foIAJXLkzaCKM0SGJm56vDDNyfT6WODBLEk/jWpvnu8J4ZZ5WgmIF8za55dPzj0f EXUpAVdoodJO2enZrN2ZIT3DNk2ya/nFpLuUfW8gsdyX6WdvTSvpElGDXN8FUi3+KTwucnT4 aumTPs= IronPort-HdrOrdr: A9a23:8Sk5j6nVeIXLKOYA8z52D17Y9dnpDfMxiWdD5ihNYBxZY6Wkfp +V8cjzhCWftN9OYhodcLC7V5Voj0msjKKdkrNhWotKOzOWxVdATbsSl7cKpgeNJ8SQzJ8/6U 4NSdkaNDS0NykAsS+Y2njHLz9D+rm6GcmT7I+xrkuFDzsaE52Ihz0JdTpzeXcGIDWua6BJcq Z0qvA3xQZJLh8sH7iG7zQ+LqD+T5qhruOVXTc2QzocrCWehzKh77D3VzCewxclSjtKhZsy7G TflAT9x6O799W20AXV2WP/54lf3IKJ8KoOOOW8zuwubhn8gAehY4psH5WEoTAOuemqrHo6jd XWpB8kHsJrr1fcZHu8rxfB0xTplBwu93jh41mFhmaLm721eBsKT+56wa5JeBrQ7EQt+Pl6za Jwxmqc875aFwnJkijR78XBE0gCrDv/nVMS1cooy1BPW4oXb7Fc6aQZ4UNuCZ8FWAb38pouHu VCBNzVoNxWbVSZRXbEuXQH+q3mYl0DWjO9BmQSsM2c1DZb2Fh/0ksj3cQa2kwN8ZosIqM0kN jsA+BNrvVjX8UWZaVyCKMqWs2sEFHARhrKLSa7PUnnPLtvAQOMl7fHpJEOoM26cp0By5U/3L 7bVklDiGI0c0XyTeWTwZxw9AzXSmnVZ0Wt9ihn3ek6hlTAfsuvDcXaI2pe1/dI4s9vTPEzYs zDe66/WJTYXCzT8YUg5XyLZ3AdEwhZbCQvgKdJZ7u/mLO7FmTUjJ2qTB/yHsuaLd92YBK3Pl IzGB7OGe5n0meHHlfFvTm5YQKZRqW4x+M+LJTn X-Talos-CUID: 9a23:BJRbCmMGs0hZ0+5DdRli2GJTP/seXHz61nfhP3S8M1ZYV+jA X-Talos-MUID: =?us-ascii?q?9a23=3AfKDULAzYio45QheOUNrHd1l4nhGaqIKQM0wVycg?= =?us-ascii?q?egM/aKRZLKSicrzGuYrZyfw=3D=3D?= X-IronPort-AV: E=Sophos;i="6.00,255,1681185600"; d="scan'208";a="113371475" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=HMqNgQe7fOapJAr2jcvA3yB4+CwszqLWWuGE625xaUj/1y8nMvOP+0Q+T9gWtAGAxHxDltQ8rQB0a8Jl7zJQu15JpTRgFNLLHFLDluyJO82F1+AZ0PQmDEthcIXE/6hUezoOK96DlFqAHnBn8S0XE1Yew8uhP2aGwvH1Sr7yjL2sQK8i8kqvlNoJmLYJ5Z/0xBjmHPOtaLcIHLhU1I0kNhiTz3RlRVpjqGg5o3CPNX6LgTqIQ62R/kddy6QxD/9tztDu+ZU0CmMRrcb3g71Du5xqhLQ96zNXVNoQp2UWQBEyXJrgZyN9rTk2ELcaDR8OjeMM9WUYcvX2AcxsY2T+Ow== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=egKced1f2NuQf0bgJFS3VB67VW9MLqwjW6JrKLQLihM=; b=Os9qVJCjAPNloHHhJBOQHsHhomv379C4/fHSLsEZBGjC8WFu/J8j2OAA4QEs7cvGmOCtE9HUtUo+y39ANtQFotuAM/4A68/mHzRYbPGtiZW867be/7Xt962uVTXmsnXUyk4OpDiMg7xMDqUYJg1bl/2UzDBrHGAUSAKv01Lwzq/xQMoD/FmX4BF2LseZjPy3i1nykI83pc0u75nzYCfxsRpJPb0SQqohklMKmopZFc84GCDQ0icJ2RhYNHyQ/NpOaUO3JhVMyL7s59j0Jn1MZqDl+bLz2UvY9NDCBkljDd0yMPukjBzSDk6fFh/l9oP+g8WnDvkKIUIm2XksH5ijOw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=egKced1f2NuQf0bgJFS3VB67VW9MLqwjW6JrKLQLihM=; b=AIVQ2ONRU2TUCFzX7BZLWLDkrSdhDXi+xSeoMWh0xZbM0LUmjufPPB45l2cqbX0r/6Eo2A4p1TOIlGPU4LTljATOoD47ezzNxpaYo0CrIrR5CBubKprWxfHAgRz2FK0f3zzguVBvAEuXhBeIr38SSZqMqtDX/RM3JS+mMk3uR2s= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: <9258a65b-c980-9b0f-e704-c51d83db4ce8@citrix.com> Date: Mon, 19 Jun 2023 17:25:44 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 From: Andrew Cooper Subject: Re: [PATCH v4 2/4] xen: Add files needed for minimal ppc64le build Content-Language: en-GB To: Shawn Anastasio , xen-devel@lists.xenproject.org Cc: tpearson@raptorengineering.com, George Dunlap , Jan Beulich , Julien Grall , Stefano Stabellini , Wei Liu References: <97a72e26edafb1d7b3a583755f015d04066c1e53.1686936278.git.sanastasio@raptorengineering.com> <8383dd1a-064c-17c9-bb7f-4509518b9b42@citrix.com> <85e5d7ca-e6e1-3802-22ac-5728a03fd86d@raptorengineering.com> In-Reply-To: <85e5d7ca-e6e1-3802-22ac-5728a03fd86d@raptorengineering.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: LO4P123CA0107.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:191::22) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|MW4PR03MB6380:EE_ X-MS-Office365-Filtering-Correlation-Id: 8f9df8b6-2d51-4f62-477f-08db70e1d86a X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: kzyUH36Gx7/msMJmGAeUy66mLozuMxo6SGNFTzWxSK4AR1Bt8xRzQKr9nvVZdRJccPwMMe2ZvV0ecsaDKKOdsMNRp+TBp63ecPfs6C7S1kwb4m2OfugpY9hOYTTdYkFYOvz+EHg92GfmIyrBHvJ1GguU83BPD+lNT+s3z+uxfNJHdCVucr+rglll7fO66S6LESd8S31/DmT1yfxGiaEKvrtoZTscXTcF5rVOaeZ0XiRuMHb3PxLArRGnyxIOMVUF87be/zOreObbZ4OO05CQ2B2LM52FXgSZ21mJNlYt84pW1vaq19GsxIYIm4br56Yn3QELUORkM1xNU1ucQJXyE8VY9S0J6tfloslHVtfQBu8g6Mtle93lLOY+/s6Z/PQd4dBPjvnkUtT0xGJ+jE8qsARNZg4MK9wddHVCmBmPaaUtd7X3274vGKUy9o98d/X6L4xc0FsMKZqmHA5/Z6NkQlC5GCL2JezamuuGVlHTr4vi06v256pQf/8stQeaXO6XDXHDpUeF/2LtJpP5SPmuFNSPbORVnNZCDjNdTf9U9IUrY/7Q8nCf0ZalQpBcF+VSysCxbq0QA2/TY26uEJT1Nhf+nr8aQKhc+N/sUQfbrpFjt30LdZvkpOd5mE8Ln10U9Wd5p1n3PPVYP3jlAyIhvw== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(376002)(366004)(396003)(346002)(136003)(451199021)(4326008)(54906003)(478600001)(53546011)(6506007)(6512007)(26005)(6486002)(186003)(6666004)(36756003)(2906002)(8676002)(41300700001)(8936002)(66946007)(66556008)(66476007)(316002)(5660300002)(31696002)(83380400001)(38100700002)(86362001)(31686004)(82960400001)(2616005)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?V0w0UkQyQXBWTm91MURMaE9lL1V4TlozUUl5aU0zKzZ1cHd5dlVBS0lXR3NB?= =?utf-8?B?ZHliRkJYS3lwR21SdUF2NkpuRFNZZnZ6eXlFUUJEb1BnTGNEWVhlNHhqbHFN?= =?utf-8?B?V1p1VzRtTVpXSVBFQUd4clF2c245ZDlJSHdMMmkwT0VJVnA0ekxIdnIwMkUx?= =?utf-8?B?S2hpTGNGWmFqdHdIQlI1UXh2c25ZRk1kY1p4TkVmZmY0UWMyMExTeG53blgw?= =?utf-8?B?bzAzeHRpWThMYjhYN1UzVVllOE5zQ1hnN0Z0Y1FYZVBsbE12bTdFdExkM2dU?= =?utf-8?B?c0pmRmdBNjRlU1pTeXRpT1N3RnFzZEcwQUdsTmYzbTNXZjh4a0g1OW5ub3ZR?= =?utf-8?B?blNoTnREMHJBNG5Nd1ZtWXBEYmhlUVBEMTZVcm1uMEhINlZZOUFqM2E2UlN1?= =?utf-8?B?ZUZpOXN5UXFnd0JRWlkxa0daSzI2SWhXclBCM2pMay9URTdpNWQxZ1lWcjRi?= =?utf-8?B?WUV0NUkxNmY1d2x2UzRpVjRjZlpQTUcwM0p1NFFINlQ5Y2U4L2xZUU5ZMnZB?= =?utf-8?B?OUV2eW5xTERISmQ0S1VhelIxeVlvaC9uT3F5UkY0REdtUWhtb3FkdzF1aXl0?= =?utf-8?B?MXZJZ0ljUFBQSGpJVnhyRnJkQjJ1WHdveWpLQmFXeWNZaWUyQWdhTW1rMllX?= =?utf-8?B?RVRjN1hzWkI4TTBBay9qVXJKdUIzeU5jM3pmQ0RpSmRCbGRYczArNlN1Z0hM?= =?utf-8?B?N2RpTzg1RGRpNEZ3UzdxWnhMSXBPTktGK1ZVYnlkbTF4amRKSEhydkpVbktK?= =?utf-8?B?cTNINWtIU2Z0dlJ4ZUlhakpIUjd2QTVOcXlkc05pU2JwZ3Y4bmh0LytRbXFG?= =?utf-8?B?YmxONWRzTTlmOS9JMXEvTTM0dVNoSHJJejdOVjVTQ29wYkZocExaOTdmWVgz?= =?utf-8?B?cGF5Nm4xMXFmS3pUN1B2RGpYZmVObHR0SVFQLytNZHNmZ0llM1ZKVFpwMnpv?= =?utf-8?B?MXo3cVJmV2ZXeXVtNi9NSG9UOVJSWUt1cnlqWHp0eWNLMThINnZCelZ6KzNO?= =?utf-8?B?cGR4TzErcDlRU2RjRFdPVDUrUjlkOUExSWFqZVMzeWxkZ1hiSXpkSzNaN2Y0?= =?utf-8?B?bjNWc3ZUMkdFSnJiUWRjZWZGZENPcGZyTWNBOEhvd09sYVpWRE02L1BPWlVY?= =?utf-8?B?QzMvVDRvNGFCbDlMbHNKdWIxbStXS0ZkUGk5cmg2bXVZYXBmRE5LS0RXb3J0?= =?utf-8?B?cTEvWlYxTnpEWmhEeGhsYUV4cjBiclBmOHJ2T1lJRlduTW01aERoUTNCSVcx?= =?utf-8?B?LytYTSthc2dLS2s0OVRFQVNtUGdLTjdvWUNoRUdwRFFsSmFyVWNCREdZWWs3?= =?utf-8?B?elNkZytWMUp6QXdUbit4MzAwK251bGpRQjB0aVJVbllvSHhMM2kxOElkMG9l?= =?utf-8?B?bjFMdkZyblBjV3JtbHZBeHZaSGo3cHl0N0pZT3FZS0hLMGFFM2JNUmxibDdu?= =?utf-8?B?MlcrRHF0U1hlRTdXc2lUUTRHZGhBLzE2TEhQdUNhSnZPUk00dXUxempaM1pq?= =?utf-8?B?blBhenZpTHRWRi9oNzdiOFZaYm5ydmNaNlVHSDJwRE5Galljek9menNNbnUr?= =?utf-8?B?NWNNSWM4UWpIQ0Zpbm9WZ281M25aVjJiNUx5WnRqdGlrclJnWU1ScDFTTUk4?= =?utf-8?B?Ty9veklZYmdaSWQraUkyOTNscHlWL1ViN1VmSFFMSWpydXRUNFhsc05xbDgw?= =?utf-8?B?c3g4RktUYU0xdzNkcWh0NFdwdWJ3aitIQjNVbDIzZjdjYVhmVGtmY1NzK3Er?= =?utf-8?B?RHF5NkpPUXl5b2dCaXZnd2pYdWJrd1duMmFJZTM0eFQ3TStLZitJclRINnFm?= =?utf-8?B?eWUwRUljSStLN1U4bEw4YjBoVjVYd3VhZ0grYU54bTRJTU9BVzFSS3VYQmFa?= =?utf-8?B?RFh1a01VUWpXWlpvSU5RdVBTQlpYNnJvRnF4NTNSZXBlaXZZYXlrUlRGSkFI?= =?utf-8?B?MENIZk5RWGZZNnhBY0N0dG0wU3FqaWkveGpPVVhyQkdxS1NGTVFFNlNWeGlq?= =?utf-8?B?dmFsT2tFejl0VHg0bnZ5eFFLRmFVOXlBMlBZeWNoSFFyS0JldmRuT1hMWTJz?= =?utf-8?B?WnFweHFlRXpTVUhPK3JVMi90b1N3K0lsd2JWQjhNY1lRY0JlS0JRam1yM3o2?= =?utf-8?B?U3U2ZEtvTTZhN1p5STlxcXBkK0RQOHJKUWdEYUdiODk2aE1Ed2VKV0ZJVHI5?= =?utf-8?B?RHc9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: pZ69/AYmTZXAgiwEIzTiSQ/U43r4QY0l+zyC3qCvY6njGpYRYqIWRdOXvdd9rLdDqkjuG5zr+Hwu2C4ouUQs48v6ds8T8Rs7sWDb7KHvFED6/p2YTktyzO17aIdm+JcnfbzGR253KXqy888t0uG68gtC9/rGAwsA2F9Y4IL3sDzPpmPvSQQf71BPB/VSF0TnNaY5G0XWxGs0Dm3B/AmBCDPRx8DBeJxAEgm+8q32Qkj35XLIMX1Jp7MS5w+5RipnD8JXLpXee2rB/j5scXmBM91gxzDt6TOqjsnTqtIh78RXWtg9jKSK6sRjVhxJalBLeBgUqb1pm5SnvTocAIY8U2l6R0dbzgH2MYhujXCsVZ6ZVcv9zugKHDKbEj82suHDD+mur1ahi7lqTScXnLjRfhPN2IUQa280Bfeoe3aoizkOuCIKG1eE2rlL403JAY12+Wdjr61Chw9nVh2xPag3aCBYkknvKVmJjQ5fydA2lFp1gNnWHEes6BWIJ2kFjfveOymSb20eyQq/Osoy5GPoeDY6DLOu4cyePrL8lZ/KORoFLk5125mynRbu6gBs+sDTMex0Fv/OYNcQ2eY0JblSHbkeO/VK/6koa3t3WSqUcJ9ver4V7IfXTt8Z0Q3Zso0rN1U4ZYu9L+6Iba7MaDFyVCHKMuwn3BLSVK/yuf+r7apGcvKq2PlGOOtHehmaErjY/sfDhVh1Vo/DDInz9WUfS+iXyGH9WV7IpxSZNi7hH/B1hKXbBc0/PMvWLVVLyM7iiV3Hacxcz6nKBhMMqYrAN6Wuum34eRpR/LaLp1OBW6vJ1FCa07bY567BHzkU+0FuzYnbzgkK2wHC8UgiqgnYURFmzOPBv2VN+d4x3lMFMbSlE8ohwMS7BYeW7++VRuIm2ncKbyVM1AqAB7jX775RGVkfS4xhEN+H4pASToVFhTs= X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 8f9df8b6-2d51-4f62-477f-08db70e1d86a X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Jun 2023 16:25:50.6870 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: oZw2yMA2sNhRDMBl4BXqRvXCoylYTjo6oNsWuxQKOI1lHzZKtY00toI27XkWbkJLoUv8TF/4d1tCbtwnuALO4/OxTivqtVrcUiBNleYp5jI= X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW4PR03MB6380 On 19/06/2023 4:49 pm, Shawn Anastasio wrote: > On 6/16/23 3:24 PM, Andrew Cooper wrote: >> On 16/06/2023 6:48 pm, Shawn Anastasio wrote: >>> Add the build system changes required to build for ppc64le (POWER8+). >>> As of now the resulting image simply boots to an infinite loop. >>> >>> $ make XEN_TARGET_ARCH=ppc64 -C xen openpower_defconfig >>> $ make XEN_TARGET_ARCH=ppc64 SUBSYSTEMS=xen -C xen build >> I think the first of these isn't needed, given the config ARCH_DEFCONFIG >> default. I'd suggest dropping it. > It seems like the build system expects an `$(ARCH)_defconfig` present if > you don't manually specify a defconfig target. I see riscv64 has a > tiny64_defconfig and a riscv64_defconfig that are idential, probably for > this same reason. Would you like me to take the same approach of > duplicating openpower_defconfig to ppc64_defconfig? Or just rename openpower_defconfig to ppc64_defconfig ? Is there any reason to keep openpower differently? >> If that's not feasible, then fine, but if it is, it ought to be the >> default. Which might be as simple as saying "or later" somewhere in >> this text, or might be a giant can of worms that I shouldn't open... > Originally the help text for the two ISA config options ended in a "+" > but that was deemed ambiguous. Would adding "or later" to the help text > for the two options clarify it sufficiently? Yeah, that would definitely help. >>> diff --git a/xen/arch/ppc/include/asm/page-bits.h b/xen/arch/ppc/include/asm/page-bits.h >>> new file mode 100644 >>> index 0000000000..4c01bf9716 >>> --- /dev/null >>> +++ b/xen/arch/ppc/include/asm/page-bits.h >>> @@ -0,0 +1,7 @@ >>> +#ifndef __PPC_PAGE_BITS_H__ >>> +#define __PPC_PAGE_BITS_H__ >>> + >>> +#define PAGE_SHIFT 16 /* 64 KiB Pages */ >>> +#define PADDR_BITS 48 >> Is 64k the minimum granularity? Or is 4k an option? > Both 4K and 64K are supported by the hardware. > >> I ask because Xen has some very short sighted ABIs which we're still >> working on removing. There are still quite a few expectations of >> PAGE_SHIFT being 12. >> >> To be clear, we're looking to fix all of these ABIs, but I suspect it >> will be an easier lift to begin with at 4k. (Or perhaps the right thing >> is to double down and just get them fixed.) > Interesting. Given this I'm inclined to go with 4k just to reduce pain > points during initial bring up, though supporting 64k would definitely > be desirable going forward. Maybe keep as 64k for now, with 4k as a backup if major problems are encountered? I honestly don't know how much of Xen's common code is non-4k-clean, and this is the best opportunity to find out. >>> + >>> +#endif /* __PPC_PAGE_BITS_H__ */ >>> diff --git a/xen/arch/ppc/ppc64/Makefile b/xen/arch/ppc/ppc64/Makefile >>> new file mode 100644 >>> index 0000000000..3340058c08 >>> --- /dev/null >>> +++ b/xen/arch/ppc/ppc64/Makefile >>> @@ -0,0 +1 @@ >>> +obj-y += head.o >>> diff --git a/xen/arch/ppc/ppc64/asm-offsets.c b/xen/arch/ppc/ppc64/asm-offsets.c >>> new file mode 100644 >>> index 0000000000..e69de29bb2 >>> diff --git a/xen/arch/ppc/ppc64/head.S b/xen/arch/ppc/ppc64/head.S >>> new file mode 100644 >>> index 0000000000..0b289c713a >>> --- /dev/null >>> +++ b/xen/arch/ppc/ppc64/head.S >>> @@ -0,0 +1,27 @@ >>> +/* SPDX-License-Identifier: GPL-2.0-or-later */ >>> + >>> +.section .text.header, "ax", %progbits >>> + >>> +ENTRY(start) >>> + /* >>> + * Depending on how we were booted, the CPU could be running in either >>> + * Little Endian or Big Endian mode. The following trampoline from Linux >>> + * cleverly uses an instruction that encodes to a NOP if the CPU's >>> + * endianness matches the assumption of the assembler (LE, in our case) >>> + * or a branch to code that performs the endian switch in the other case. >>> + */ >>> + tdi 0, 0, 0x48 /* Reverse endian of b . + 8 */ >>> + b . + 44 /* Skip trampoline if endian is good */ >>> + .long 0xa600607d /* mfmsr r11 */ >>> + .long 0x01006b69 /* xori r11,r11,1 */ >>> + .long 0x00004039 /* li r10,0 */ >>> + .long 0x6401417d /* mtmsrd r10,1 */ >>> + .long 0x05009f42 /* bcl 20,31,$+4 */ >>> + .long 0xa602487d /* mflr r10 */ >>> + .long 0x14004a39 /* addi r10,r10,20 */ >>> + .long 0xa6035a7d /* mtsrr0 r10 */ >>> + .long 0xa6037b7d /* mtsrr1 r11 */ >>> + .long 0x2400004c /* rfid */ >>> + >>> + /* Now that the endianness is confirmed, continue */ >>> +1: b 1b >> .size start, . - start >> .type start, %function >> >> Lets get the ELF metadata right from the start. > Good point. Following the example in the Power ELFv2 ABI > specification [1] for function type annotation, I'll place > > .type start, @function > > in the ENTRY macro. It's not clear what the difference between %function > and @function are in this context (my toolchain seems to accept both and > produce the same ELF metadata), but the latter is more idiomatic in > Power assembly. The same goes for its placement before the entrypoint > vs. after the last instruction. > > As for the size annotation, I'll follow Julien's suggestion and > introduce an END macro. There are reasons why this doesn't exist/work yet, and that's a swamp you swamp you absolutely don't want to wade into at this point. Just leave the raw annotations for now, and they'll be cleaned up when the bugs with the various proposed options have been fixed. ~Andrew From xen-devel-bounces@lists.xenproject.org Mon Jun 19 16:29:22 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 19 Jun 2023 16:29:22 +0000 Received: from list by lists.xenproject.org with outflank-mailman.551229.860650 (Exim 4.92) (envelope-from ) id 1qBHki-0006bP-GD; Mon, 19 Jun 2023 16:29:16 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 551229.860650; Mon, 19 Jun 2023 16:29:16 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBHki-0006bI-D5; Mon, 19 Jun 2023 16:29:16 +0000 Received: by outflank-mailman (input) for mailman id 551229; Mon, 19 Jun 2023 16:29:15 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBHkg-0006ar-Vq for xen-devel@lists.xenproject.org; Mon, 19 Jun 2023 16:29:14 +0000 Received: from raptorengineering.com (mail.raptorengineering.com [23.155.224.40]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 6c5e15be-0ebe-11ee-8611-37d641c3527e; Mon, 19 Jun 2023 18:29:12 +0200 (CEST) Received: from localhost (localhost [127.0.0.1]) by mail.rptsys.com (Postfix) with ESMTP id 721D882855B4; Mon, 19 Jun 2023 11:29:11 -0500 (CDT) Received: from mail.rptsys.com ([127.0.0.1]) by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032) with ESMTP id p8-IH9h3-sgS; Mon, 19 Jun 2023 11:29:10 -0500 (CDT) Received: from localhost (localhost [127.0.0.1]) by mail.rptsys.com (Postfix) with ESMTP id 7717E82855C2; Mon, 19 Jun 2023 11:29:10 -0500 (CDT) Received: from mail.rptsys.com ([127.0.0.1]) by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id 0Vy12L1RsrKV; Mon, 19 Jun 2023 11:29:10 -0500 (CDT) Received: from [10.11.0.2] (5.edge.rptsys.com [23.155.224.38]) by mail.rptsys.com (Postfix) with ESMTPSA id D168182855B4; Mon, 19 Jun 2023 11:29:09 -0500 (CDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 6c5e15be-0ebe-11ee-8611-37d641c3527e DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com 7717E82855C2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD; t=1687192150; bh=IiFpyawJr6BDAn444Zd8fGRoKl+ePasSRhwBYIr22cc=; h=Message-ID:Date:MIME-Version:To:From; b=FgWaxq8aZEL9sx3DkdqcOIYz3Hbquumzr8kGYGzxjuFLnKfFbwitaa6YDQszCoHVy u29AQhrZKveG6BTpaj/El/zdZ/A1q+faa4vJkGdjkrIVxfBazOxXqQl1tV6YNnI/yr KhbmI0GX0EX6Lm3sgFNtqEqIG2zfiMZnHcFEGsuk= X-Virus-Scanned: amavisd-new at rptsys.com Message-ID: Date: Mon, 19 Jun 2023 11:29:09 -0500 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux ppc64le; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v4 2/4] xen: Add files needed for minimal ppc64le build Content-Language: en-US To: Jan Beulich Cc: tpearson@raptorengineering.com, George Dunlap , Julien Grall , Stefano Stabellini , Wei Liu , Andrew Cooper , xen-devel@lists.xenproject.org References: <97a72e26edafb1d7b3a583755f015d04066c1e53.1686936278.git.sanastasio@raptorengineering.com> <8383dd1a-064c-17c9-bb7f-4509518b9b42@citrix.com> <85e5d7ca-e6e1-3802-22ac-5728a03fd86d@raptorengineering.com> <07901266-4536-bcd5-70a4-5b5675a1ced4@suse.com> From: Shawn Anastasio In-Reply-To: <07901266-4536-bcd5-70a4-5b5675a1ced4@suse.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit On 6/19/23 11:07 AM, Jan Beulich wrote: >> It seems like the build system expects an `$(ARCH)_defconfig` present if >> you don't manually specify a defconfig target. I see riscv64 has a >> tiny64_defconfig and a riscv64_defconfig that are idential, probably for >> this same reason. Would you like me to take the same approach of >> duplicating openpower_defconfig to ppc64_defconfig? > > It's a symlink for RISC-V iirc, so wants to be that same way for PPC > then (for the time being, again like there). Ah, you're right, riscv uses a symlink. I'll use that approach here as well then. >> Good point. Following the example in the Power ELFv2 ABI >> specification [1] for function type annotation, I'll place >> >> .type start, @function >> >> in the ENTRY macro. It's not clear what the difference between %function >> and @function are in this context (my toolchain seems to accept both and >> produce the same ELF metadata), but the latter is more idiomatic in >> Power assembly. The same goes for its placement before the entrypoint >> vs. after the last instruction. > > % and @ are entirely the same here, except for targets like arm-*, > where @ starts a comment. Okay, thanks for the confirmation. Is there a preference for which one is used? I'd lean towards @ just for the sake of remaining idiomatic, but since they're equivalent it doesn't really matter from my perspective. >> No plans on supporting dynamic relocation (for now), so I can go ahead >> and add these assertions. > > How would you ever use dynamic relocations? You have no loader to > process them for you. (Yes, there can of course be relocation free > head.S code which deals with relocations, but doing such in assembly > is likely not the best idea. Yet as soon as you enter C code you're > at risk of hitting a place requiring such a relocation, perhaps > simply because of a "careless" function call on some infrequently > used code path.) Right, those concerns are definitely something we'd have to deal with if we ever wanted to add support for relocations (and a large part of the reason why I said I don't have plans to support it right now). As an aside, I'll note that Linux uses the approach of doing the relocation fixups entirely in assembly before the C entrypoint, but that's obviously not a super desirable approach from a correctness or maintainability standpoint. > Jan Thanks, Shawn From xen-devel-bounces@lists.xenproject.org Mon Jun 19 16:45:04 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 19 Jun 2023 16:45:04 +0000 Received: from list by lists.xenproject.org with outflank-mailman.551234.860660 (Exim 4.92) (envelope-from ) id 1qBHzn-0000bO-QO; Mon, 19 Jun 2023 16:44:51 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 551234.860660; Mon, 19 Jun 2023 16:44:51 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBHzn-0000bH-NH; Mon, 19 Jun 2023 16:44:51 +0000 Received: by outflank-mailman (input) for mailman id 551234; Mon, 19 Jun 2023 16:44:51 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBHzn-0000bB-2h for xen-devel@lists.xenproject.org; Mon, 19 Jun 2023 16:44:51 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBHzm-0002KE-DU; Mon, 19 Jun 2023 16:44:50 +0000 Received: from 54-240-197-230.amazon.com ([54.240.197.230] helo=[192.168.19.123]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qBHzm-0001BH-6q; Mon, 19 Jun 2023 16:44:50 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=umW3q2seHvBIDkps6QnqeWIitqomkKclRhKgyNkuEqQ=; b=G/H/zAiwJyoBY/g4YsMxbHmsgs jPUVj0ltZJTA8QuXwPxVzkpqWC7zgn0bEEUJWzaCVq6FHpkmSmTN4sg6+laBsMGS73RqTs1K88Xz0 Ii9MStDS5CJXrtkjcvcTEQb6FdUjN7t79Ird9XWPZ+G++Yk/kGX9yrWfLdmexZTGYDyc=; Message-ID: <059e5cd2-ed7c-769f-5418-e4224e18881c@xen.org> Date: Mon, 19 Jun 2023 17:44:48 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v4 2/4] xen: Add files needed for minimal ppc64le build Content-Language: en-US To: Andrew Cooper , Shawn Anastasio , xen-devel@lists.xenproject.org Cc: tpearson@raptorengineering.com, George Dunlap , Jan Beulich , Stefano Stabellini , Wei Liu References: <97a72e26edafb1d7b3a583755f015d04066c1e53.1686936278.git.sanastasio@raptorengineering.com> <8383dd1a-064c-17c9-bb7f-4509518b9b42@citrix.com> <85e5d7ca-e6e1-3802-22ac-5728a03fd86d@raptorengineering.com> <9258a65b-c980-9b0f-e704-c51d83db4ce8@citrix.com> From: Julien Grall In-Reply-To: <9258a65b-c980-9b0f-e704-c51d83db4ce8@citrix.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi, On 19/06/2023 17:25, Andrew Cooper wrote: > On 19/06/2023 4:49 pm, Shawn Anastasio wrote: >> On 6/16/23 3:24 PM, Andrew Cooper wrote: >>> On 16/06/2023 6:48 pm, Shawn Anastasio wrote: >>>> Add the build system changes required to build for ppc64le (POWER8+). >>>> As of now the resulting image simply boots to an infinite loop. >>>> >>>> $ make XEN_TARGET_ARCH=ppc64 -C xen openpower_defconfig >>>> $ make XEN_TARGET_ARCH=ppc64 SUBSYSTEMS=xen -C xen build >>> I think the first of these isn't needed, given the config ARCH_DEFCONFIG >>> default. I'd suggest dropping it. >> It seems like the build system expects an `$(ARCH)_defconfig` present if >> you don't manually specify a defconfig target. I see riscv64 has a >> tiny64_defconfig and a riscv64_defconfig that are idential, probably for >> this same reason. Would you like me to take the same approach of >> duplicating openpower_defconfig to ppc64_defconfig? > > Or just rename openpower_defconfig to ppc64_defconfig ? > > Is there any reason to keep openpower differently? > >>> If that's not feasible, then fine, but if it is, it ought to be the >>> default. Which might be as simple as saying "or later" somewhere in >>> this text, or might be a giant can of worms that I shouldn't open... >> Originally the help text for the two ISA config options ended in a "+" >> but that was deemed ambiguous. Would adding "or later" to the help text >> for the two options clarify it sufficiently? > > Yeah, that would definitely help. > >>>> diff --git a/xen/arch/ppc/include/asm/page-bits.h b/xen/arch/ppc/include/asm/page-bits.h >>>> new file mode 100644 >>>> index 0000000000..4c01bf9716 >>>> --- /dev/null >>>> +++ b/xen/arch/ppc/include/asm/page-bits.h >>>> @@ -0,0 +1,7 @@ >>>> +#ifndef __PPC_PAGE_BITS_H__ >>>> +#define __PPC_PAGE_BITS_H__ >>>> + >>>> +#define PAGE_SHIFT 16 /* 64 KiB Pages */ >>>> +#define PADDR_BITS 48 >>> Is 64k the minimum granularity? Or is 4k an option? >> Both 4K and 64K are supported by the hardware. >> >>> I ask because Xen has some very short sighted ABIs which we're still >>> working on removing. There are still quite a few expectations of >>> PAGE_SHIFT being 12. >>> >>> To be clear, we're looking to fix all of these ABIs, but I suspect it >>> will be an easier lift to begin with at 4k. (Or perhaps the right thing >>> is to double down and just get them fixed.) >> Interesting. Given this I'm inclined to go with 4k just to reduce pain >> points during initial bring up, though supporting 64k would definitely >> be desirable going forward. > > Maybe keep as 64k for now, with 4k as a backup if major problems are > encountered? > > I honestly don't know how much of Xen's common code is non-4k-clean, and > this is the best opportunity to find out. The hypervisor itself is probably alright. For the tools and the kernel, we did some work a few years ago so the code don't assume the kernel and the hypervisor are using the same page size. The tools and kernel have hardcoded expectation for the tools. Have a look at XC_PAGE_SIZE (tools) and XEN_PAGE_SHIFT (linux). There was an attempt from Costin Lupu a couple of years ago to clean-up the definition (see [1]) but this was never merged. I can't remember why... Now regarding the default page-size for PPC. At the moment, the page-size of the ABI is tie to the hypervisor. For the ABI, it is best to use the bigger size (i.e. 64KB) because with just some rework in the hypervisor, you could run the same guest image on both a 4KB and 64KB. Therefore, I think the 64KB size for the hypervisor is probably the better choice for the initial port. This will avoid some external ABI issue in the future if you want to support more page-size (we have the problem on Arm as we started with 4KB). You would also not rely on a newer ABI. Cheers, [1] https://lore.kernel.org/xen-devel/cover.1628519855.git.costin.lupu@cs.pub.ro/ -- Julien Grall From xen-devel-bounces@lists.xenproject.org Mon Jun 19 17:01:25 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 19 Jun 2023 17:01:25 +0000 Received: from list by lists.xenproject.org with outflank-mailman.551241.860670 (Exim 4.92) (envelope-from ) id 1qBIFk-0003AW-8I; Mon, 19 Jun 2023 17:01:20 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 551241.860670; Mon, 19 Jun 2023 17:01:20 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBIFk-0003AP-5F; Mon, 19 Jun 2023 17:01:20 +0000 Received: by outflank-mailman (input) for mailman id 551241; Mon, 19 Jun 2023 17:01:19 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBIFj-0003AJ-HJ for xen-devel@lists.xenproject.org; Mon, 19 Jun 2023 17:01:19 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBIFj-0002du-2J; Mon, 19 Jun 2023 17:01:19 +0000 Received: from 54-240-197-232.amazon.com ([54.240.197.232] helo=dev-dsk-jgrall-1b-035652ec.eu-west-1.amazon.com) by xenbits.xenproject.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qBIFi-00079R-PQ; Mon, 19 Jun 2023 17:01:18 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:MIME-Version:Message-Id:Date: Subject:Cc:To:From; bh=WPhdZd1f4X1KRfyL6B2cOBUC2KUCMrhBVaJE39hZ52I=; b=mQMdKl P5sFdHiS3WNceA6YJ4rBR+apZN56qIYrQrfsP4UVzVrQucVWEkbAPL+q9JlgABH1l0aXbiF/vAT7E 2Ghii5hhzlW/9dg4FK5DwgHSVpM13Km1mmQs8WEng4LM7D4XQlGaVHFETFQRcNKL7NodyU7MW5HcY 7hkTojyX/EQ=; From: Julien Grall To: xen-devel@lists.xenproject.org Cc: Luca.Fancellu@arm.com, michal.orzel@amd.com, Henry.Wang@arm.com, Julien Grall , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk Subject: [PATCH 0/7] xen/arm: Add some missing ISBs after updating the PTEs Date: Mon, 19 Jun 2023 18:01:08 +0100 Message-Id: <20230619170115.81398-1-julien@xen.org> X-Mailer: git-send-email 2.40.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit From: Julien Grall Hi all, The main goal of this series is to add some missing ISBs after update the PTEs. The last patch is re-ingesting a patch that was reverted due to a boot failure on the Arndale. This has now been fixed by patch #2. Cheers, Julien Grall (7): xen/arm32: head: Add missing isb in setup_fixmap() xen/arm32: head: Add mising isb in switch_to_runtime_mapping() xen/arm64: head: Add missing isb in setup_fixmap() xen/arm: page: Consolidate write_pte() and clarify the documentation xen/arm: pmap: Add missing ISB in arch_pmap_map() xen/arm: mm: Add missing ISB in xen_pt_update() xen/arm32: head: Widen the use of the temporary mapping xen/arch/arm/arm32/head.S | 96 ++++++++------------------- xen/arch/arm/arm64/head.S | 5 ++ xen/arch/arm/include/asm/arm32/page.h | 16 ----- xen/arch/arm/include/asm/arm64/page.h | 11 --- xen/arch/arm/include/asm/page.h | 17 +++++ xen/arch/arm/include/asm/pmap.h | 5 ++ xen/arch/arm/mm.c | 14 ++++ 7 files changed, 67 insertions(+), 97 deletions(-) -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 19 17:01:25 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 19 Jun 2023 17:01:25 +0000 Received: from list by lists.xenproject.org with outflank-mailman.551244.860700 (Exim 4.92) (envelope-from ) id 1qBIFo-0003vI-UP; Mon, 19 Jun 2023 17:01:24 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 551244.860700; Mon, 19 Jun 2023 17:01:24 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBIFo-0003v5-RT; Mon, 19 Jun 2023 17:01:24 +0000 Received: by outflank-mailman (input) for mailman id 551244; Mon, 19 Jun 2023 17:01:23 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBIFn-0003a0-1I for xen-devel@lists.xenproject.org; Mon, 19 Jun 2023 17:01:23 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBIFm-0002eQ-Qi; Mon, 19 Jun 2023 17:01:22 +0000 Received: from 54-240-197-232.amazon.com ([54.240.197.232] helo=dev-dsk-jgrall-1b-035652ec.eu-west-1.amazon.com) by xenbits.xenproject.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qBIFm-00079R-J2; Mon, 19 Jun 2023 17:01:22 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:MIME-Version:References: In-Reply-To:Message-Id:Date:Subject:Cc:To:From; bh=AZgk+a7RNDOh2A2w6FC7dZLd0kw2EJlcWOaKZ6/xmw4=; b=oWFRU/Nui2FPz+c6D8HfjYv9kE 7UJr+ZMGk3FwaAhChv7+Jq/tFDBMGBl2OcdiB8lxzE9UJCT6/oUAksDrG7MNcwjJH6+ln8uRXwIjt i6zkzSAJOyqElzd0VyznmD9T3w5n3F2zG3yIUDgh2XSR7nj0cbOitDGgT4u8bXa5WEqI=; From: Julien Grall To: xen-devel@lists.xenproject.org Cc: Luca.Fancellu@arm.com, michal.orzel@amd.com, Henry.Wang@arm.com, Julien Grall , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk Subject: [PATCH 3/7] xen/arm64: head: Add missing isb in setup_fixmap() Date: Mon, 19 Jun 2023 18:01:11 +0100 Message-Id: <20230619170115.81398-4-julien@xen.org> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230619170115.81398-1-julien@xen.org> References: <20230619170115.81398-1-julien@xen.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit From: Julien Grall On older version of the Arm Arm (ARM DDI 0487E.a, B2-125) there were the following paragraph: "DMB and DSB instructions affect reads and writes to the memory system generated by Load/Store instructions and data or unified cache maintenance instructions being executed by the PE. Instruction fetches or accesses caused by a hardware translation table access are not explicit accesses." Newer revision (e.g. ARM DDI 0487J.a) doesn't have the second sentence (it might be somewhere else in the Arm Arm). But the interpretation is not much different. In setup_fixmap(), we write the fixmap area and may be used soon after, for instance, to write to the UART. IOW, there could be hardware translation table access. So we need to ensure the 'dsb' has completed before continuing. Therefore add an 'isb'. Fixes: 2b11c3646105 ("xen/arm64: head: Remove 1:1 mapping as soon as it is not used") Signed-off-by: Julien Grall --- xen/arch/arm/arm64/head.S | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/xen/arch/arm/arm64/head.S b/xen/arch/arm/arm64/head.S index f37133cf7ccd..4ea64e70997b 100644 --- a/xen/arch/arm/arm64/head.S +++ b/xen/arch/arm/arm64/head.S @@ -769,6 +769,11 @@ setup_fixmap: create_table_entry boot_second, xen_fixmap, x0, 2, x1, x2, x3 /* Ensure any page table updates made above have occurred. */ dsb nshst + /* + * The fixmap area will be used soon after. So ensure no hardware + * translation happens before the dsb completes. + */ + isb ret ENDPROC(setup_fixmap) -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 19 17:01:25 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 19 Jun 2023 17:01:25 +0000 Received: from list by lists.xenproject.org with outflank-mailman.551242.860680 (Exim 4.92) (envelope-from ) id 1qBIFm-0003PW-GU; Mon, 19 Jun 2023 17:01:22 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 551242.860680; Mon, 19 Jun 2023 17:01:22 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBIFm-0003PP-CK; Mon, 19 Jun 2023 17:01:22 +0000 Received: by outflank-mailman (input) for mailman id 551242; Mon, 19 Jun 2023 17:01:20 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBIFk-0003Kd-Ox for xen-devel@lists.xenproject.org; Mon, 19 Jun 2023 17:01:20 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBIFk-0002e2-Am; Mon, 19 Jun 2023 17:01:20 +0000 Received: from 54-240-197-232.amazon.com ([54.240.197.232] helo=dev-dsk-jgrall-1b-035652ec.eu-west-1.amazon.com) by xenbits.xenproject.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qBIFk-00079R-1n; Mon, 19 Jun 2023 17:01:20 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:MIME-Version:References: In-Reply-To:Message-Id:Date:Subject:Cc:To:From; bh=f0Msc+xsVYLFDQx2YMgcMthu7/P+yNsRuDofE8DHCTI=; b=2hI+1r6bez1izKN5mYzfSlrs/9 m1HXM0JjawBY4PuhMeUvfOEFjgIIFJuYB1O57140gBQ0NU3z58+ibu68aAopE3zL7Jx2Uid1hxPBw h9N824YNpqhoNfnbNMN3dKj29TSlSGl0PxoJKS6dg0rIBgtM00UPuDwdtvxcW1VpFalk=; From: Julien Grall To: xen-devel@lists.xenproject.org Cc: Luca.Fancellu@arm.com, michal.orzel@amd.com, Henry.Wang@arm.com, Julien Grall , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk Subject: [PATCH 1/7] xen/arm32: head: Add missing isb in setup_fixmap() Date: Mon, 19 Jun 2023 18:01:09 +0100 Message-Id: <20230619170115.81398-2-julien@xen.org> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230619170115.81398-1-julien@xen.org> References: <20230619170115.81398-1-julien@xen.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit From: Julien Grall Per the Arm Arm (ARM DDI 0406C.d A3.8.3): "The DMB and DSB memory barriers affect reads and writes to the memory system generated by load/store instructions and data or unified cache maintenance operations being executed by the processor. Instruction fetches or accesses caused by a hardware translation table access are not explicit accesses." In setup_fixmap(), we write the fixmap area and may be used soon after, for instance, to write to the UART. IOW, there could be hardware translation table access. So we need to ensure the 'dsb' has completed before continuing. Therefore add an 'isb'. Fixes: e79999e587d7 ("xen/arm32: head: Remove 1:1 mapping as soon as it is not used") Signed-off-by: Julien Grall --- xen/arch/arm/arm32/head.S | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/xen/arch/arm/arm32/head.S b/xen/arch/arm/arm32/head.S index f9f7be9588b1..6ca3329138e3 100644 --- a/xen/arch/arm/arm32/head.S +++ b/xen/arch/arm/arm32/head.S @@ -751,6 +751,11 @@ setup_fixmap: create_table_entry boot_second, xen_fixmap, r0, 2 /* Ensure any page table updates made above have occurred. */ dsb nshst + /* + * The fixmap area will be used soon after. So ensure no hardware + * translation happens before the dsb completes. + */ + isb mov pc, lr ENDPROC(setup_fixmap) -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 19 17:01:25 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 19 Jun 2023 17:01:25 +0000 Received: from list by lists.xenproject.org with outflank-mailman.551245.860705 (Exim 4.92) (envelope-from ) id 1qBIFp-0003yw-A1; Mon, 19 Jun 2023 17:01:25 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 551245.860705; Mon, 19 Jun 2023 17:01:25 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBIFp-0003yR-3b; Mon, 19 Jun 2023 17:01:25 +0000 Received: by outflank-mailman (input) for mailman id 551245; Mon, 19 Jun 2023 17:01:24 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBIFo-0003qc-Bf for xen-devel@lists.xenproject.org; Mon, 19 Jun 2023 17:01:24 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBIFo-0002eo-42; Mon, 19 Jun 2023 17:01:24 +0000 Received: from 54-240-197-232.amazon.com ([54.240.197.232] helo=dev-dsk-jgrall-1b-035652ec.eu-west-1.amazon.com) by xenbits.xenproject.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qBIFn-00079R-Rf; Mon, 19 Jun 2023 17:01:24 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:MIME-Version:References: In-Reply-To:Message-Id:Date:Subject:Cc:To:From; bh=SH8S9cGEeNkU74yrhDG+H2R2qeyKdQ/sIjdnJLK2qzg=; b=o3jppnO3+Xh0lCKXkbanOMK5CC 0nCAYBYCBY5nm9HJj9yP4/yILVsRX56mIwBZAgRM36foyDYC7ZvjLIevSsbXWtmcGf8Q3xRF1tJfP /ihkAa+LZFlsUK9jFAC3ikARzweed4ExmVKuiqhgJNysd6dRmPS8Un3WVyxxX6jaTHLU=; From: Julien Grall To: xen-devel@lists.xenproject.org Cc: Luca.Fancellu@arm.com, michal.orzel@amd.com, Henry.Wang@arm.com, Julien Grall , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk Subject: [PATCH 4/7] xen/arm: page: Consolidate write_pte() and clarify the documentation Date: Mon, 19 Jun 2023 18:01:12 +0100 Message-Id: <20230619170115.81398-5-julien@xen.org> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230619170115.81398-1-julien@xen.org> References: <20230619170115.81398-1-julien@xen.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit From: Julien Grall The implementation of write_pte() is pretty much the same on arm32 and arm64. So it would be good to consolidate it as this would help to clarify the requirements when using the helper. Take the opportunity to switch from assembly to call macros. Note there is a difference on arm32 because the option was not specified. But this meant 'sy' (system wide). Futhermore, the requirements for the ISB is incomplete. Per the Arm Arm, (Armv7 DDI406C.d A3.8.3 and Armv8 DDI 0487J.a B2.3.12), DSB will only affect explicit accesses. So an ISB is necessary after DSB to ensure the completion. Having an ISB after each update to the page-tables is probably too much, so let the caller add the instruction when it is convenient. Lastly, the barrier in write_pte() may be too restrictive but I haven't yet find the proper section(s) in the Arm Arm. Signed-off-by: Julien Grall ---- I am a bit split on whether we should add an ISB in write_pte(). It would make easier for the developper, but would likely force a pipeline flush too often. It might also be possible to drop the ISB (and even DSB) when updating stage-2 PTE (Linux already does it, see 120798d2e7d1). But I am not sure this is worth it in Xen. --- xen/arch/arm/include/asm/arm32/page.h | 16 ---------------- xen/arch/arm/include/asm/arm64/page.h | 11 ----------- xen/arch/arm/include/asm/page.h | 17 +++++++++++++++++ 3 files changed, 17 insertions(+), 27 deletions(-) diff --git a/xen/arch/arm/include/asm/arm32/page.h b/xen/arch/arm/include/asm/arm32/page.h index 715a9e4fef48..6d1ff0636ce3 100644 --- a/xen/arch/arm/include/asm/arm32/page.h +++ b/xen/arch/arm/include/asm/arm32/page.h @@ -3,22 +3,6 @@ #ifndef __ASSEMBLY__ -/* Write a pagetable entry. - * - * If the table entry is changing a text mapping, it is responsibility - * of the caller to issue an ISB after write_pte. - */ -static inline void write_pte(lpae_t *p, lpae_t pte) -{ - asm volatile ( - /* Ensure any writes have completed with the old mappings. */ - "dsb;" - /* Safely write the entry (STRD is atomic on CPUs that support LPAE) */ - "strd %0, %H0, [%1];" - "dsb;" - : : "r" (pte.bits), "r" (p) : "memory"); -} - /* Inline ASM to invalidate dcache on register R (may be an inline asm operand) */ #define __invalidate_dcache_one(R) STORE_CP32(R, DCIMVAC) diff --git a/xen/arch/arm/include/asm/arm64/page.h b/xen/arch/arm/include/asm/arm64/page.h index 0cba2663733b..4f58c0382adc 100644 --- a/xen/arch/arm/include/asm/arm64/page.h +++ b/xen/arch/arm/include/asm/arm64/page.h @@ -5,17 +5,6 @@ #include -/* Write a pagetable entry */ -static inline void write_pte(lpae_t *p, lpae_t pte) -{ - asm volatile ( - /* Ensure any writes have completed with the old mappings. */ - "dsb sy;" - "str %0, [%1];" /* Write the entry */ - "dsb sy;" - : : "r" (pte.bits), "r" (p) : "memory"); -} - /* Inline ASM to invalidate dcache on register R (may be an inline asm operand) */ #define __invalidate_dcache_one(R) "dc ivac, %" #R ";" diff --git a/xen/arch/arm/include/asm/page.h b/xen/arch/arm/include/asm/page.h index e7cd62190c7f..ea96983ab976 100644 --- a/xen/arch/arm/include/asm/page.h +++ b/xen/arch/arm/include/asm/page.h @@ -126,6 +126,7 @@ #include #include #include +#include #include #if defined(CONFIG_ARM_32) @@ -237,6 +238,22 @@ static inline int clean_and_invalidate_dcache_va_range : : "r" (_p), "m" (*_p)); \ } while (0) +/* + * Write a pagetable entry. + * + * It is the responsibility of the caller to issue an ISB (if a new entry) + * or a TLB flush (if modified or removed) after write_pte(). + */ +static inline void write_pte(lpae_t *p, lpae_t pte) +{ + /* Ensure any writes have completed with the old mappings. */ + dsb(sy); + /* Safely write the entry. This should always be an atomic write. */ + write_atomic(p, pte); + dsb(sy); +} + + /* Flush the dcache for an entire page. */ void flush_page_to_ram(unsigned long mfn, bool sync_icache); -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 19 17:01:25 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 19 Jun 2023 17:01:25 +0000 Received: from list by lists.xenproject.org with outflank-mailman.551243.860690 (Exim 4.92) (envelope-from ) id 1qBIFn-0003fM-N4; Mon, 19 Jun 2023 17:01:23 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 551243.860690; Mon, 19 Jun 2023 17:01:23 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBIFn-0003fD-Jy; Mon, 19 Jun 2023 17:01:23 +0000 Received: by outflank-mailman (input) for mailman id 551243; Mon, 19 Jun 2023 17:01:21 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBIFl-0003PJ-SG for xen-devel@lists.xenproject.org; Mon, 19 Jun 2023 17:01:21 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBIFl-0002e8-I0; Mon, 19 Jun 2023 17:01:21 +0000 Received: from 54-240-197-232.amazon.com ([54.240.197.232] helo=dev-dsk-jgrall-1b-035652ec.eu-west-1.amazon.com) by xenbits.xenproject.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qBIFl-00079R-AP; Mon, 19 Jun 2023 17:01:21 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:MIME-Version:References: In-Reply-To:Message-Id:Date:Subject:Cc:To:From; bh=XCDJIqgFhmZ0JxJIz/CX3QdAY7V9+R7dcjMnAbPAVAE=; b=b7G86f2/m0YHDlxFFdfMktxZJS FuYmVBB/wK3s2CWthe5OwcpPFpnf6QsPtkDVNK5eW7hAjBWdSCsMq6Tpt/6tLCKvbGYW8eKB2rB1D 2ivqbwODXI6tEjaLVcaRFhYXb//cySMhPkad7kRm3RFV8TX2sUd+U0GrOHqYw8bJKg/o=; From: Julien Grall To: xen-devel@lists.xenproject.org Cc: Luca.Fancellu@arm.com, michal.orzel@amd.com, Henry.Wang@arm.com, Julien Grall , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk Subject: [PATCH 2/7] xen/arm32: head: Add mising isb in switch_to_runtime_mapping() Date: Mon, 19 Jun 2023 18:01:10 +0100 Message-Id: <20230619170115.81398-3-julien@xen.org> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230619170115.81398-1-julien@xen.org> References: <20230619170115.81398-1-julien@xen.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit From: Julien Grall Per the Arm Arm (ARM DDI 0406C.d A3.8.3): "The DMB and DSB memory barriers affect reads and writes to the memory system generated by load/store instructions and data or unified cache maintenance operations being executed by the processor. Instruction fetches or accesses caused by a hardware translation table access are not explicit accesses." The function switch_to_runtime_mapping() is responsible to map the Xen at its runtime address if we were using the temporary area before jumping returning using a runtime address. So we need to ensure the 'dsb' has completed before continuing. Therefore add an 'isb'. Fixes: fbd9b5fb4c26 ("xen/arm32: head: Remove restriction where to load Xen") Signed-off-by: Julien Grall --- xen/arch/arm/arm32/head.S | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/xen/arch/arm/arm32/head.S b/xen/arch/arm/arm32/head.S index 6ca3329138e3..b942e7e54d08 100644 --- a/xen/arch/arm/arm32/head.S +++ b/xen/arch/arm/arm32/head.S @@ -656,6 +656,11 @@ switch_to_runtime_mapping: /* Ensure any page table updates are visible before continuing */ dsb nsh + /* + * The function will return on the runtime mapping. So we want + * to prevent instruction fetch before the dsb completes. + */ + isb ready_to_switch: mov pc, lr -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 19 17:01:26 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 19 Jun 2023 17:01:26 +0000 Received: from list by lists.xenproject.org with outflank-mailman.551246.860720 (Exim 4.92) (envelope-from ) id 1qBIFq-0004Od-JX; Mon, 19 Jun 2023 17:01:26 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 551246.860720; Mon, 19 Jun 2023 17:01:26 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBIFq-0004OP-Dk; Mon, 19 Jun 2023 17:01:26 +0000 Received: by outflank-mailman (input) for mailman id 551246; Mon, 19 Jun 2023 17:01:25 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBIFp-0004BY-MQ for xen-devel@lists.xenproject.org; Mon, 19 Jun 2023 17:01:25 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBIFp-0002f7-BR; Mon, 19 Jun 2023 17:01:25 +0000 Received: from 54-240-197-232.amazon.com ([54.240.197.232] helo=dev-dsk-jgrall-1b-035652ec.eu-west-1.amazon.com) by xenbits.xenproject.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qBIFp-00079R-43; Mon, 19 Jun 2023 17:01:25 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:MIME-Version:References: In-Reply-To:Message-Id:Date:Subject:Cc:To:From; bh=o/7iDTA3VqOW8+2Qi5rctGMLXOWeKouoykuCMLKWUGo=; b=M7jvehIVVy5FSRF3uLpCQZAzMO jQXxwm8KyBvQYsD/lands5Nz8cBJSki4dsg+nVmUrSnArcRS7I7K+YAu5ylo+ONaewS57xD/6v+/R zSISTdQCHGljRm5pfUXH9LYgteEjrMCoXo+nuxB5Q6L8fJZk2mHj6rf0xmdqwUGyouVE=; From: Julien Grall To: xen-devel@lists.xenproject.org Cc: Luca.Fancellu@arm.com, michal.orzel@amd.com, Henry.Wang@arm.com, Julien Grall , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk Subject: [PATCH 5/7] xen/arm: pmap: Add missing ISB in arch_pmap_map() Date: Mon, 19 Jun 2023 18:01:13 +0100 Message-Id: <20230619170115.81398-6-julien@xen.org> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230619170115.81398-1-julien@xen.org> References: <20230619170115.81398-1-julien@xen.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit From: Julien Grall Per the Arm Arm, (Armv7 DDI406C.d A3.8.3 and Armv8 DDI 0487J.a B2.3.12): "The DMB and DSB memory barriers affect reads and writes to the memory system generated by load/store instructions and data or unified cache maintenance operations being executed by the processor. Instruction fetches or accesses caused by a hardware translation table access are not explicit accesses." Note that second sentence is not part of the newer Armv8 spec. But the interpretation is not much different. As the entry created by arch_pmap_map() will be used soon after pmap_map() returns, we want to ensure the DSB in write_pte() has completed. So add an ISB. Fixes: 4f17357b52f6 ("xen/arm: add Persistent Map (PMAP) infrastructure") Signed-off-by: Julien Grall --- xen/arch/arm/include/asm/pmap.h | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/xen/arch/arm/include/asm/pmap.h b/xen/arch/arm/include/asm/pmap.h index e094d13dd282..bca3381796f3 100644 --- a/xen/arch/arm/include/asm/pmap.h +++ b/xen/arch/arm/include/asm/pmap.h @@ -15,6 +15,11 @@ static inline void arch_pmap_map(unsigned int slot, mfn_t mfn) pte = mfn_to_xen_entry(mfn, PAGE_HYPERVISOR_RW); pte.pt.table = 1; write_pte(entry, pte); + /* + * The new entry will be used very soon after arch_pmap_map() returns. + * So ensure the DSB in write_pte() has completed before continuing. + */ + isb(); } static inline void arch_pmap_unmap(unsigned int slot) -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 19 17:01:28 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 19 Jun 2023 17:01:28 +0000 Received: from list by lists.xenproject.org with outflank-mailman.551247.860730 (Exim 4.92) (envelope-from ) id 1qBIFs-0004mZ-Rn; Mon, 19 Jun 2023 17:01:28 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 551247.860730; Mon, 19 Jun 2023 17:01:28 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBIFs-0004mO-OS; Mon, 19 Jun 2023 17:01:28 +0000 Received: by outflank-mailman (input) for mailman id 551247; Mon, 19 Jun 2023 17:01:27 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBIFq-0004Y6-U7 for xen-devel@lists.xenproject.org; Mon, 19 Jun 2023 17:01:26 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBIFq-0002fP-K2; Mon, 19 Jun 2023 17:01:26 +0000 Received: from 54-240-197-232.amazon.com ([54.240.197.232] helo=dev-dsk-jgrall-1b-035652ec.eu-west-1.amazon.com) by xenbits.xenproject.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qBIFq-00079R-Ci; Mon, 19 Jun 2023 17:01:26 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:MIME-Version:References: In-Reply-To:Message-Id:Date:Subject:Cc:To:From; bh=Z5DRZNZmlBW9wLWM72auv5rCsE+gqkJPzk13KavQHZY=; b=hQHBgzPEL0IUqiiOdL9ZuROF+w e7n3xPToVnbSWxPv6sFGuKZ+s2VRKe6FV4sUneSINgB41LKNdnLdvMCDEHUOklzonZfgp6qYRsD4W yaVwyHS/OLAxjTd0Rf8OEUzA+GKkLFfZ55t3wbdENLRKVh2Fu6pPsCfElVwHCWyghOdo=; From: Julien Grall To: xen-devel@lists.xenproject.org Cc: Luca.Fancellu@arm.com, michal.orzel@amd.com, Henry.Wang@arm.com, Julien Grall , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk Subject: [PATCH 6/7] xen/arm: mm: Add missing ISB in xen_pt_update() Date: Mon, 19 Jun 2023 18:01:14 +0100 Message-Id: <20230619170115.81398-7-julien@xen.org> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230619170115.81398-1-julien@xen.org> References: <20230619170115.81398-1-julien@xen.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit From: Julien Grall Per the Arm Arm, (Armv7 DDI406C.d A3.8.3 and Armv8 DDI 0487J.a B2.3.12): "The DMB and DSB memory barriers affect reads and writes to the memory system generated by load/store instructions and data or unified cache maintenance operations being executed by the processor. Instruction fetches or accesses caused by a hardware translation table access are not explicit accesses." Note that second sentence is not part of the newer Armv8 spec. But the interpretation is not much different. The updated entry will not be used until xen_pt_update() completes. So rather than adding the ISB after write_pte() in create_xen_table() and xen_pt-update_entry(), add it in xen_pt_update(). Also document the reasoning of the deferral after each write_pte() calls. Fixes: 07d11f63d03e ("xen/arm: mm: Avoid flushing the TLBs when mapping are inserted") Signed-off-by: Julien Grall --- xen/arch/arm/mm.c | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/xen/arch/arm/mm.c b/xen/arch/arm/mm.c index e460249736c3..84e652799dd2 100644 --- a/xen/arch/arm/mm.c +++ b/xen/arch/arm/mm.c @@ -779,6 +779,11 @@ static int create_xen_table(lpae_t *entry) pte = mfn_to_xen_entry(mfn, MT_NORMAL); pte.pt.table = 1; write_pte(entry, pte); + /* + * No ISB here. It is deferred to xen_pt_update() as the new table + * will not be used for hardware translation table access as part of + * the mapping update. + */ return 0; } @@ -1017,6 +1022,10 @@ static int xen_pt_update_entry(mfn_t root, unsigned long virt, } write_pte(entry, pte); + /* + * No ISB or TLB flush here. They are deferred to xen_pt_update() + * as the entry will not be used as part of the mapping update. + */ rc = 0; @@ -1196,6 +1205,9 @@ static int xen_pt_update(unsigned long virt, /* * The TLBs flush can be safely skipped when a mapping is inserted * as we don't allow mapping replacement (see xen_pt_check_entry()). + * Although we still need an ISB to ensure any DSB in + * write_pte() will complete because the mapping may be used soon + * after. * * For all the other cases, the TLBs will be flushed unconditionally * even if the mapping has failed. This is because we may have @@ -1204,6 +1216,8 @@ static int xen_pt_update(unsigned long virt, */ if ( !((flags & _PAGE_PRESENT) && !mfn_eq(mfn, INVALID_MFN)) ) flush_xen_tlb_range_va(virt, PAGE_SIZE * nr_mfns); + else + isb(); spin_unlock(&xen_pt_lock); -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 19 17:01:29 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 19 Jun 2023 17:01:29 +0000 Received: from list by lists.xenproject.org with outflank-mailman.551248.860736 (Exim 4.92) (envelope-from ) id 1qBIFt-0004uF-Fw; Mon, 19 Jun 2023 17:01:29 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 551248.860736; Mon, 19 Jun 2023 17:01:29 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBIFt-0004rI-9K; Mon, 19 Jun 2023 17:01:29 +0000 Received: by outflank-mailman (input) for mailman id 551248; Mon, 19 Jun 2023 17:01:28 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBIFs-0004l9-3o for xen-devel@lists.xenproject.org; Mon, 19 Jun 2023 17:01:28 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBIFr-0002fd-Sj; Mon, 19 Jun 2023 17:01:27 +0000 Received: from 54-240-197-232.amazon.com ([54.240.197.232] helo=dev-dsk-jgrall-1b-035652ec.eu-west-1.amazon.com) by xenbits.xenproject.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qBIFr-00079R-LM; Mon, 19 Jun 2023 17:01:27 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:MIME-Version:References: In-Reply-To:Message-Id:Date:Subject:Cc:To:From; bh=kb0w434WqcCO6B2fvVViD2fzwzZIeQ5lguZBKStXu+g=; b=VA76lUbCPBM1ZD3fyiyCAAzR6x skIaKc9psvsiUMVqfbXfeup2ya+mrvIvlBSgtWTgq45muJruisir4eP51MLSeq5neKLkuNdAsxWAg rKj2HQErZCoPdkRJq0BHzI5xwuqxS2rSMzVZ2b2uUzFzlIhUe3RurhounxKXjpUI27hU=; From: Julien Grall To: xen-devel@lists.xenproject.org Cc: Luca.Fancellu@arm.com, michal.orzel@amd.com, Henry.Wang@arm.com, Julien Grall , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk Subject: [PATCH 7/7] xen/arm32: head: Widen the use of the temporary mapping Date: Mon, 19 Jun 2023 18:01:15 +0100 Message-Id: <20230619170115.81398-8-julien@xen.org> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230619170115.81398-1-julien@xen.org> References: <20230619170115.81398-1-julien@xen.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit From: Julien Grall At the moment, the temporary mapping is only used when the virtual runtime region of Xen is clashing with the physical region. In follow-up patches, we will rework how secondary CPU bring-up works and it will be convenient to use the fixmap area for accessing the root page-table (it is per-cpu). Rework the code to use temporary mapping when the Xen physical address is not overlapping with the temporary mapping. This also has the advantage to simplify the logic to identity map Xen. Signed-off-by: Julien Grall Reviewed-by: Henry Wang Reviewed-by: Michal Orzel ---- This patch was originally part of [1] but it was reverted due to Xen not booting on the Arndale. The first patch of this series is fixing it (confirmed by booting on the Arndale). So I am including this patch. Also all the tags but the tested-by have been kept because the code has not changed. Happy to drop any if there are any concerns. [1] https://lore.kernel.org/xen-devel/20230416143211.72227-1-julien@xen.org/ Changelog from the previous series: Changes in v6: - Add Henry's reviewed-by and tested-by tag - Add Michal's reviewed-by - Add newline in remove_identity_mapping for clarity Changes in v5: - Fix typo in a comment - No need to link boot_{second, third}_id again if we need to create a temporary area. Changes in v3: - Resolve conflicts after switching from "ldr rX,
--00000000000001d92105fe901067-- From xen-devel-bounces@lists.xenproject.org Tue Jun 20 14:29:23 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 20 Jun 2023 14:29:23 +0000 Received: from list by lists.xenproject.org with outflank-mailman.551901.861662 (Exim 4.92) (envelope-from ) id 1qBcLx-0006tH-QN; Tue, 20 Jun 2023 14:29:05 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 551901.861662; Tue, 20 Jun 2023 14:29:05 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBcLx-0006tA-NR; Tue, 20 Jun 2023 14:29:05 +0000 Received: by outflank-mailman (input) for mailman id 551901; Tue, 20 Jun 2023 14:29:05 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBcLw-0006t4-Th for xen-devel@lists.xenproject.org; Tue, 20 Jun 2023 14:29:05 +0000 Received: from EUR05-DB8-obe.outbound.protection.outlook.com (mail-db8eur05on20620.outbound.protection.outlook.com [2a01:111:f400:7e1a::620]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id cd2654fc-0f76-11ee-8611-37d641c3527e; Tue, 20 Jun 2023 16:29:02 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by AS8PR04MB9047.eurprd04.prod.outlook.com (2603:10a6:20b:442::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.37; Tue, 20 Jun 2023 14:28:59 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6500.036; Tue, 20 Jun 2023 14:28:59 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: cd2654fc-0f76-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=lI3Jyr3+/U49njRPEYOWpkIRZh5nbMpOOnenJ488UnsCxHzoH1cgNbWIICATHnrcvx73cPDnCiyEJh+xp6cJyECU1CpsfOe7OJ70Uxv8lDd5UzNH3Zte/qWH0GIiBJ6R1vsGYaHEqno4XexjZzSPz2vlbsVWyZSIJryUaCAnLFK943+oOjxX5aiFRjQIjLVe9nm9vMNvdIxaBwoW2tj5lDHSwnyaiXEcZTSYXnxtWHl8tpU5ZI1n6WZfw69uoFsAHuuWD6v81Hx/UFbDvo9tl1IHr52BICcyDZF+APcSKnvvE1sF+rbW9jgkiML4Zwrt8kl51BtMbK93AT6ZPy5Mkg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=nY56vCJtK6HYMPRlBFCMKcdJnc89l1zcE3IbZpM7mvY=; b=PXvLpVGpEeUXBa5uni8OrQB1ldz45lVtZ3pviDDm0EIDnhjohi/avcu9h2u4aIvP8tfiLKVmOt5SbNchTfyWXKUe3I4BOththxteA9TK0sNnT2KFtNJefGdJb6HyZ1Wlr7ntG0QbWyZoMptgXwp6oBdDs0npyGMOT+KdyfEPqvxZbuA+xKaFvMc4C6vVCc5x5uFdh1t+Qp87dPav4I0tXeRfRWn0GmtVcMP26lD5tx0v1jVrjxkAEY6IBLWXRrvo2uTw8hNjtAz3V56ZiXoAVUpzPTIeuI9rt+07sxzMDAkZA6wjHxI3XtkLk9+N2UuUK8IBiQWl36EqYqH4SESXAw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=nY56vCJtK6HYMPRlBFCMKcdJnc89l1zcE3IbZpM7mvY=; b=SfwzvzQIzG5Cgl8j1fywOMaHTlxlj5esM3bk2WWW0p1myDUDn/wUKVSnIksQYSV6PHIupOr4I7ecMntdIyN4m+d4a044gdwhjo5B2/9wVxHJ39SITwCu0U0hJkXgaQp+hLi1HLgn3R2ndbvG4Gm7vB6LEoX60ErhvBcBl+00Z4aVVx2BKjlowDaSFwFxE0rXNqCMLSIIbKyabn7xLKPhUicejk0MK/bPipSvzgBcyACWU0SlXLgnIIt5ztGKBJWJHSZqkf52AemeLlTGT/hvpK+o+5rzSw4uQXw8CoJ9BfvPWWc2a1z54dTi+793RzabJSpX5ewzzsytyMtE/hhz6g== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: Date: Tue, 20 Jun 2023 16:28:56 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH 04/13] libx86: introduce helper to fetch msr entry Content-Language: en-US To: Roger Pau Monne Cc: Andrew Cooper , Wei Liu , Anthony PERARD , xen-devel@lists.xenproject.org References: <20230616131019.11476-1-roger.pau@citrix.com> <20230616131019.11476-5-roger.pau@citrix.com> From: Jan Beulich In-Reply-To: <20230616131019.11476-5-roger.pau@citrix.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR2P281CA0099.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:9c::9) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|AS8PR04MB9047:EE_ X-MS-Office365-Filtering-Correlation-Id: 0cfa0db8-8cf3-44b6-9dc4-08db719aaf8f X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: CLnU1aGTlhe/bD6nRSuJFn+RI7WAsDSdBmuV0XJ2RJjM6BogUvblN2+fie3/tq0L+vqAuY/X3+F/Vu3gzOaWA2JumHeQ3pdCbSmootaGx4nqWFXs2bwPVTUDDSxO2rQBflZB/fLxOTJdoK/Tm2jBkfUhM868YPq/MXvTExt7UYDt5P4AQmfqLFIWDeNbov4MhRokqfxKFxm+Kt/n1EZWhQldUM0jYZn/sZbzDQrHXMGmL+L8F20tnbu0MUS7wR6an6niLgMtr3yZenUWIwLwW4rb0LLnIL+kH9muQ5JXXFs3Gi6HMx8IiEkZD5tJs42qbLmfyyO5h0Mj61yfcCkd0nEIyvKvkVS1dIu5+TDM4Im+cfCPCdEndcEX40wN6VoHWAzDbQbAwka6ibJgfMLG5MLdkEOEMTALD7cwDCHs4DyEi4bmBe2eOQeA5yvzGyib3O1BCuJj31xC6h/M2TLkYuliCdH1gts3EgfOhMdUAYfJmi1tVOaT9l0K8WfDFLzQtQMYw3ihI1oSuhAHgx8wKebtJiFFquyo+84I4wSSB9uK67fVugLqtHlsZVEwKHrZPbUTm6UMUTdblXgEIRDS99541Mol9X2GDdZexuodQSQBXdUFchMNiEfqucG6rkXEL2YtSqEw9BRDWmji5+VDeg== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(396003)(136003)(346002)(376002)(366004)(39860400002)(451199021)(6512007)(53546011)(6506007)(38100700002)(6486002)(26005)(83380400001)(2616005)(36756003)(186003)(31696002)(86362001)(54906003)(5660300002)(2906002)(4744005)(8936002)(316002)(8676002)(41300700001)(31686004)(4326008)(66556008)(6916009)(66476007)(66946007)(478600001)(6666004)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?UXMvYUtuaDMveXhMUmJjOFFBSE9QbE0xd3dvYWRWbHVDTWE2RHMrcnNkSzNt?= =?utf-8?B?QVZnRURjWjRJOVl5Z2tPUFd6bzlJYUova1RHTkhJTkVCcjNaM1AvaXR2Ni9J?= =?utf-8?B?YUlLdHkrVlc3N1pDZGpVcFFTdWt0NnFGQTZGbmo5ZHMyeS80RlM1em9OOHJX?= =?utf-8?B?QjRXZ2pwd1pwM1VTZDNyUzkrYzhmVElxT2d4UzZpTGJmSExvK2xrRTVib25a?= =?utf-8?B?TGFZdEcxYlVmMDcvSFgwK2ROK3JIc0FrUmtMUmprMzJUbi9LRmgxSUROVXdT?= =?utf-8?B?WWY1dGZYZnZFQmpzYUNsK1VPQUJIMEprSmdlSlM5enhTNmRMZlRHbzgrYU1N?= =?utf-8?B?TTRCZzFLeWlYTDhldnZ0Vk8xOWlXS3BXMjVqNUl0Q1NidmgvMFpVdjVZeVo4?= =?utf-8?B?amZWMDFoNlR4YzZHVU1PWDIwSWs0UnpuOWJxYmxEWVlTUEVBNHRyQkk2THo5?= =?utf-8?B?OWhocENBeE1VYTV6eHB1anRITFZ5aHFmVUhIcEtoeUorTmpOV05OM3JYVXpB?= =?utf-8?B?R0tOQVdUaTZwYTJoeXVEdjhuTkYyeldJREVDSEJhczhxRGU3MkNEQ1VaQTBE?= =?utf-8?B?YUhjTCthbVZBZ3Aybzk0dHR2bDI4dWV0dTczNEFpWXA5T0Y4UVlSZHhSNVJM?= =?utf-8?B?THFNYm9pYXduUlFhZmV1elpicG5nV2dGdFIxTEVrVFQ4YTNXTDlDOTlXZG5z?= =?utf-8?B?SktaUzloejVzUVdHSk5odUlxSnRCZ0hrbmJzK1VNYktEMkliN3Y3VEtlQmh4?= =?utf-8?B?U1h6QnlXZmQ0Q09WakRxc1FvTHpRS2JjemM3L0hJSDg5aG1RNlVzaUlqYlFG?= =?utf-8?B?eXQrVVNXVlBEU0pZZy92UGN2M2dwTGRvQ1dRK2JuMVRtY0gxQnBId0xnNXdz?= =?utf-8?B?Mlo3WGV4ZEhRRThRUWVHT21PbndqYlJabWFwbkhtL1ZoVzk2d0ZBUEd4QWxl?= =?utf-8?B?VThHV2ZNTktsY3VzdWUrUUhvd2NDTjdHRk9ld0ZLUVdlOWlUMk5Eeklva3c1?= =?utf-8?B?ZjlzNlBzY3h0NERnK3UxWG0vNUppWkFrSEJiWk1TVlZ1b2NURVBKUU9DOXNF?= =?utf-8?B?OEZOTmo5aERmRldLZFM3Si95RG1kbFFqcFRuN1h0a05pNnRTTk1hU1FJTk9D?= =?utf-8?B?dExpQWw2Um02MWdjUHJCVURpUW9QbjB3bXc2ZVhVWDh0RW9XOE91WUJoZVlZ?= =?utf-8?B?YjByczNNYVVnaVNreXEvc2hjWEVncElSbUNsdm9ZdGxqaXdMOXdOU3dnTXdo?= =?utf-8?B?R1JWaXYrWm5CZ1Zjdm9RdEg1dWg2dHRWYnpvM2xDVmFHS3VyNVVUdXcxNXY1?= =?utf-8?B?c3d1enQvVTBTMmtVMFU4M0kyaDRsTHhXOGVZa2YxSHhXaU02cDBFeFIwWTRP?= =?utf-8?B?ZDJIVXJ2cmtPbGtjWU5tb1IwR1ZsaU5NcitnbEhwQzgwaVFWeFpzZTFkYjd6?= =?utf-8?B?NXNCQUp0c3Y0SVZ0M3luS0cvZm8zdXhuYTRBbVNIRWNibXRkT1pwYjlaQnZm?= =?utf-8?B?YmxYY01BbWhSRnVFdzN6Z2VQZy8ybjBBL3gweU4ybFpvUXppbGVDckltditE?= =?utf-8?B?QzdEeDFVb09GajVrWk9UbjRQQ0o3ckNWakpXZHo3Q1RjZ3k5ZWtLK2RFRFpt?= =?utf-8?B?dERMR1VkMUtmNUJnRlpZMkxNVmZZTW55Tmx2eGlrTVZ5ZjBzZjEySlUzRTN0?= =?utf-8?B?S3l3WWd3WDhxeWRXemNGQ0hSdEZtNy9LYjhkbk85c29vVko2eDJwQ2w5ZVRx?= =?utf-8?B?SWV6eGgzM1pRcGY2Zmpvd1NPUkxkSXJ4ZkI5ZEFPNUJpUUhLeWxYMDcyclpU?= =?utf-8?B?ZUdHclZVZWhOakdnRlhEL3hqRUEzTW14ankzbFp6RXYzUGZJOTZIRGZhSU9V?= =?utf-8?B?L3JFTEpzTVk0RU45UmlDUmJ6ZDVJN0pxSldLU0Q5Q0dsbm5zOVkvcGRtTE02?= =?utf-8?B?N3E0R2M2UWYrRGpxeWZGM2JKOTlzWXBwOGE3enJuQkRtZEFDWFhFUFBRVXFP?= =?utf-8?B?R2tFcTBOR1dHMVd5UU85eHhodUJrS09nQWNmVW5CTTJ2eDRvSWdET3B3Wll5?= =?utf-8?B?akhrdWxRemtjOUM4bDNjRFB0REhwQ1A5S3I5ODdkVExvVk9GbG10R29yRVpF?= =?utf-8?Q?jZcDX54rUw5fFRfDqyi93xUFj?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 0cfa0db8-8cf3-44b6-9dc4-08db719aaf8f X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Jun 2023 14:28:58.9671 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: c5H56NDYlwFIu27Z4gUI3hdlp+sijiHSF/F2BYweKDywk5y/WiswsQkkLjfc1zEKan09JgvSXjiAWgq3zcZvEg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB9047 On 16.06.2023 15:10, Roger Pau Monne wrote: > @@ -119,6 +103,21 @@ int x86_msr_copy_from_buffer(struct cpu_policy *p, > return rc; > } > > +const uint64_t *x86_msr_get_entry_const(const struct cpu_policy *p, > + uint32_t idx) I don't think idx needs to be of a fixed width type; unsigned int ought to be quite fine. > +{ > + switch ( idx ) > + { > + case MSR_INTEL_PLATFORM_INFO: > + return &p->platform_info.raw; > + > + case MSR_ARCH_CAPABILITIES: > + return &p->arch_caps.raw; Earlier on (also for the CPUID counterpart) a risky aspect of this didn't occur to me: The validity of the returned pointer is tied to the scope of the object the address of which was passed in. I'm afraid this is an aspect which is easy to miss, and hence wants calling out in the comments in cpu-policy.h (provided we're okay to accept this risk in the first place). Jan From xen-devel-bounces@lists.xenproject.org Tue Jun 20 14:52:36 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 20 Jun 2023 14:52:36 +0000 Received: from list by lists.xenproject.org with outflank-mailman.551914.861677 (Exim 4.92) (envelope-from ) id 1qBcib-0001qH-Nu; Tue, 20 Jun 2023 14:52:29 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 551914.861677; Tue, 20 Jun 2023 14:52:29 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBcib-0001qA-K7; Tue, 20 Jun 2023 14:52:29 +0000 Received: by outflank-mailman (input) for mailman id 551914; Tue, 20 Jun 2023 14:52:28 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBcia-0001po-Hi for xen-devel@lists.xenproject.org; Tue, 20 Jun 2023 14:52:28 +0000 Received: from EUR04-VI1-obe.outbound.protection.outlook.com (mail-vi1eur04on0607.outbound.protection.outlook.com [2a01:111:f400:fe0e::607]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 11fbe7ff-0f7a-11ee-8611-37d641c3527e; Tue, 20 Jun 2023 16:52:26 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by GV1PR04MB9086.eurprd04.prod.outlook.com (2603:10a6:150:21::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.37; Tue, 20 Jun 2023 14:52:23 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6500.036; Tue, 20 Jun 2023 14:52:23 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 11fbe7ff-0f7a-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=f9ZddI0qbFA/DkSD2LtiK5WEaFs6VUhO2xW5f51Syrg8tuYG0hkGCf2yxh0tGiGEi/7OyHxEvzOrhrgPFkeUF3isXsWAYWTRF30IIW2nfEfH6tyAU3jRRO94En2q3REY/sV8l6ooGsdP2x0AQrMv21e0Vj0+Hfi9I3S0bojWIMFgqwLhj+30AR9P7mP7JsloOVZxMeQWosqhuS10LiDr7r6BmJ9LAQt0hEJCgOpZFCxHnfEWspdFRahLdrjBog6XnfbjLo8Z4lYmnF6tm7kYSGteJG2aXgvTcCT4DTZwUVv1d5+Dvv5cBNhQ88JWcqmF5u3k/piZTWkvsJM/Lz210Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=oxz8OWuCwNF2lB/M8a6RHiRB3d1gs6NFo+p4pvbr/jQ=; b=hqcdjmVqxyr5SX9qg3veSUigk5PhQB9yEVEWeaWnOVaodU0TB5anhzQYGi6yG21qcEsz5nNNGEnLi9ii9dBWi1rCwwCPCBJUcqWpwqhAbEcqt5QlhDs74VF2ohg76r8U+Ubjmkj5DakdadD6pMKbM9Llln27bSGAQvFytJlRarYEmo2pGTKdfkiMPmQEALke1by2tWxgq36Mg9bHpwjPdMn16P9WaNwCL/ZvdlGFZ83asrqNpHABKFr04kfd4ivQE6EHhulR3LQN/FaP22SO91WlgYqSeZMrsgp84p3hWSLk7k1IjvUvwPyZ1W6yBLUQYBCUuMFswKRL9NUV5oI6Uw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=oxz8OWuCwNF2lB/M8a6RHiRB3d1gs6NFo+p4pvbr/jQ=; b=PoKbS4Lg5RFQtQ5Q4StxLcOCrKWlEp/2USq87Q8MRPlcjXssc+JedVmHbDWeGnin4Oe8/J6ZZNOJ2fZtGmm0h5FiA8nk1nZ58J5MXJBENXaXYMUZlQgXPIY6cJc208Kewu1P5v9V1+EksGwFzTTMtWC5w6wlFfZCf7CBmPybzgCg9BY9u4wlqCX+sw2JyRPu30c2hWPdydWrczAp1p0Nqg3FbfFb+dWPNiJlsoDVjxe/7TE1GITSHRtj7tRGCbsiUSft39vlEY80EGsjJHS6qums3ohPrpUxfQw48IvNScfpPB4fHtlEzhj25vqexLGfW+a2rg88xeevgZpxT99nHg== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <807743af-c1fe-45d0-1919-a7eb4d244a21@suse.com> Date: Tue, 20 Jun 2023 16:52:21 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [XEN PATCH v2] docs/misra: document the C dialect and translation toolchain assumptions. Content-Language: en-US To: Roberto Bagnara Cc: roger.pau@citrix.com, bertrand.marquis@arm.com, michal.orzel@amd.com, xenia.ragiadakou@amd.com, ayan.kumar.halder@amd.com, consulting@bugseng.com, Andrew Cooper , George Dunlap , Julien Grall , Stefano Stabellini , Wei Liu , xen-devel@lists.xenproject.org References: From: Jan Beulich In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR2P281CA0088.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:9b::13) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|GV1PR04MB9086:EE_ X-MS-Office365-Filtering-Correlation-Id: 219a5c33-2340-4c75-47f5-08db719df4b5 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: QZTI1P+zZn+oZEhBwWGcRejmsvLfOMr5OJ2V2UwvvLdWNkAIFVy0qvqMWI3LUjXM2xg9n1s/GAHI0j7lKGUMoIfUhP56cirgSQ3W1aU8BrWLhWqdxHN9N/1A7i1+InDOok9jALV0lM6MKgBPNQ22m/oCecOEnM8koeRYhM+QtSiyK9jrf/CsWhwunDuYziuMoLLNu9/j2IbnTqhoAsgp8eEYE+pT3urJCpk1mDz/4kXPk9SZpg9XF9sWlfbuAWoHD2tON1RMw6/TEfjAdImdfOpB0mDxRFWVG3v39hs+bWby8aaA9vxUpfvZCL7mgawISeSq9di+cpFRhmsSswVUCO5DV5acSG7rC8jbWqWGr+ntPyL3G/u3ck/BLuaFIklwfwbxzf9O/enB4mVpUmlJhW3ENy2kpuhiXIY5MkEtl6vMLQCK2SCzJbYZ0CWJwemWXM38yqQ7t91nVUy47PFhlI6N5UaapcrbIGTogRl/zTI6JK1Z/TLa+glJxvP7keUscHzKGZdZwaBAJDdX79ajk8IYDaOAgXTrpjR4HeA5OMirjvQA76ZkfAI4DXcGE8pF/vrCK54nZobn/z2NlcQi8KvRkbhNcQys+H8HmPI5N51PYghJUWPTrk78AimeAt5fUXvPZyJ3Lyvdm3OrdBsmMA== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(136003)(396003)(39860400002)(366004)(346002)(376002)(451199021)(31686004)(36756003)(5660300002)(7416002)(66476007)(6916009)(86362001)(8936002)(8676002)(41300700001)(66556008)(316002)(4326008)(38100700002)(31696002)(66946007)(6486002)(966005)(6512007)(26005)(53546011)(2616005)(6506007)(186003)(2906002)(478600001)(54906003)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?R1d4OWM0ZW41MmczYmRzVTJpdkI3K2h5WWdKT2REaWlNdEg3aU05QVF2ZVlL?= =?utf-8?B?cEJXc3lDeGY3dzNZVExtK2NOOE1HVmdiQnFaNktIOUJCQ2dEaGU2NkZrdFcz?= =?utf-8?B?WWNWanRqVTR3UURmNFRtRkpsRlpmSSs2eStlNmZzdmRpMzQyRmRRTlNDd29E?= =?utf-8?B?alk4NmlCbXRaYWlRRzkxK0dLc0FON3hqZmZjeC9YQWxPbWp2dysxQ2JmZkE3?= =?utf-8?B?b1BMdWY0RlRtK0FrZTZUNnV2N1NXYlNLRnhhZnlxWVA0djFPWEErN041Uk4x?= =?utf-8?B?ME1mSUFJNGhFMDM3cU9uc3dGbU14S2lIK1hlZ0ljb1FDajJxcXZKN1lKYzJs?= =?utf-8?B?Mm5uWHJhaFF1U1h4eDhXR2ZBUitkK2VtTWlaMkZzTUdhT0ppT2xyT3YwYVhR?= =?utf-8?B?RUtkMVdWdFVkWmlHRTEvc1plbHlCbms5eWhvbTJRMzRTeWRjZUc1Qm5WRDBK?= =?utf-8?B?K2hqbDZLb3NkZG9lN0x4djRRYnRPZ1dCZFV5bnAvUmk4Skc1aTdJaFg0aTNG?= =?utf-8?B?MERKeWdZaWwrbVJ6M0s4aHQvVGIrZGJrTjVTa2pRUlNQZHZXNlJraDF6bjB1?= =?utf-8?B?S2QrTlIrc1hyT1c5d2NZNGwyeVJ4TDg3RUZSbi9PQ2FJYkFvZmltNnlkbHdu?= =?utf-8?B?Tld4R3lzWEFLUVFKTmQyNzFvT1pVTGp4bnhaeFFzTVhaT3JyRVh3WlZrczZv?= =?utf-8?B?NGd0a01BMWczNGh6aVQwSjRjbDErQkZ6S3BDWVU5Q0M0WklINkc5QTk0RjdF?= =?utf-8?B?MHdMSU9LMUxkY0hNUXEyL2V1eVljVVhwbTdaanoyVllZR0VOZUJrK3B5MWgz?= =?utf-8?B?Uy9RejlrR1FET3dIYnZsbGNBMUVGd1h4cFFDeWxnUWRneDNJZjF0SG1qQW43?= =?utf-8?B?blhCRzk5NHdqcElTMEpYK1NUdkpwMTVKek1tUUxPN0puR2FCVnVNTVU3K09X?= =?utf-8?B?NSs1aVN6WjRITGw4RXFuNGZ1cnVoR1UvcVQ3czBTakg3SGljTUFBL2RESTNW?= =?utf-8?B?anlGemIzTSsyKzdMc1RFbjZpUFhYaFZpTUloVjFMenliYndheHJtajU0YkVC?= =?utf-8?B?RHhRVjJON0pyQjBwWGlORi9UY1RVY2tic2RiNFF2WGV6YXF5WnBtZkhGQU1I?= =?utf-8?B?TXhhRzdZSHpXNm1mcnNUangrWXZyRmJ0VlRGM00rWlhldkF6YkVnWjZyYzJK?= =?utf-8?B?cU1RRkRrV2lYOXhZWkVsQ2pLbjNuK1lzNEdMRUc0L1VYRUErVDZFMnNlTENW?= =?utf-8?B?UFc1cTB6VHlpTU9nZGRrbWk0UDc0a2pnOGFQTUVSY3RyclliRHFxNTFzSjJC?= =?utf-8?B?My92Vjk0TG1jTi9KRDByUVR4SjVZSXZOUkxNdmVPdEl1ZFNrMjFVNGtwdTRM?= =?utf-8?B?bnR6Q0hRRE5GR243ZGZ0a0hmTk5tQnZsdG1BNnoxOG1YSmZpbG1ublFlM00w?= =?utf-8?B?ZWQ1djRWVVVFME4yZThrNU9jVGY1bi9ITTU2bmE3blpIS2prR2d6Q3Z3SDJD?= =?utf-8?B?bWNNSW8rV0JsV0twcEM1emNRZ29yeUVjQk95b2Z0VkZBblh5MjZrSTFUREZL?= =?utf-8?B?UmYzS2VGeXVoU1U1Y3JwZUZzdDE1cFVlYnk4UkpKQ3o1ZFFoOXdROGR0MHY5?= =?utf-8?B?OG9JeXFpNW1uSU5qZDFIRFcyTEdSQUxWSzVuL1FiTk5uSkxzSVgvc2l0d0w2?= =?utf-8?B?RWh3RUIvd0p5cDZYZ1hsNStHdmo0aTBraG1ST283N2szeXRhZVBuSllTNmE4?= =?utf-8?B?Ukh1cEtnRUg1eUtaanltTGhzTk5CRW1CRjhWYXF2ZnIwWUFsdzN5U0pFMnFq?= =?utf-8?B?OG03NStzbm5SYjkzQy9pZFVKWDBvNkNQVmtnSThSSzl2dEtTRlZPMmZBdGt3?= =?utf-8?B?dHpQcUs3ZDRQbndGWUhLeDRMTGQ3Zm9CcG9Na2FSUlJsa043OUFobjZVRjRz?= =?utf-8?B?Mmt3aW1FZ293STFOL0VMTUl3RUM5OTRINmxJdGxNblNzY0Zjdkc1V0J0WHQz?= =?utf-8?B?Si9pQmpMbE1ZM2IybWN6eHkxUkc3Y1dBbm1iSm8xQmtFN0hEeXlDWWtlTmU3?= =?utf-8?B?MG5SWWEyY0VmS0VZdFJCMjFYdkprb3FmNUtORUlZMm5xb0VSdkc0N1pqcVhL?= =?utf-8?Q?nN9CgsgvJ0pbpAxjDgVn4OC+m?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 219a5c33-2340-4c75-47f5-08db719df4b5 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Jun 2023 14:52:23.4367 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: N7bh1UwykfHzlJsdkjy/Samzc0kncvHEBCs7LP5ouVCCyQK2l2EEEhznIoTXOC9fshp8Kv6aJDikJFKsWMsgzw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: GV1PR04MB9086 On 20.06.2023 14:10, Roberto Bagnara wrote: > + * - Non-standard tokens > + - ARM64, X86_64 > + - _Static_assert: > + see Section "2.1 C Language" of GCC_MANUAL. > + asm, __asm__: > + see Sections "6.48 Alternate Keywords" and "6.47 How to Use Inline Assembly Language in C Code" of GCC_MANUAL. > + __volatile__: > + see Sections "6.48 Alternate Keywords" and "6.47.2.1 Volatile" of GCC_MANUAL. > + __const__, __inline__, __inline: > + see Section "6.48 Alternate Keywords" of GCC_MANUAL. > + typeof, __typeof__: > + see Section "6.7 Referring to a Type with typeof" of GCC_MANUAL. > + __alignof__, __alignof: > + see Sections "6.48 Alternate Keywords" and "6.44 Determining the Alignment of Functions, Types or Variables" of GCC_MANUAL. > + __attribute__: > + see Section "6.39 Attribute Syntax" of GCC_MANUAL. > + __builtin_types_compatible_p: > + see Section "6.59 Other Built-in Functions Provided by GCC" of GCC_MANUAL. > + __builtin_va_arg: > + non-documented GCC extension. > + __builtin_offsetof: > + see Section "6.53 Support for offsetof" of GCC_MANUAL. > + __signed__: > + non-documented GCC extension. I'd like to note that there is a patch [1] pending which removes all uses of this extension. Hopefully in Prague we can settle on how to progress this ... Jan [1] https://lists.xen.org/archives/html/xen-devel/2023-02/msg00445.html From xen-devel-bounces@lists.xenproject.org Tue Jun 20 14:57:17 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 20 Jun 2023 14:57:17 +0000 Received: from list by lists.xenproject.org with outflank-mailman.551921.861687 (Exim 4.92) (envelope-from ) id 1qBcn4-0002VX-Do; Tue, 20 Jun 2023 14:57:06 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 551921.861687; Tue, 20 Jun 2023 14:57:06 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBcn4-0002VQ-9o; Tue, 20 Jun 2023 14:57:06 +0000 Received: by outflank-mailman (input) for mailman id 551921; Tue, 20 Jun 2023 14:57:04 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBcn2-0002VK-Q1 for xen-devel@lists.xenproject.org; Tue, 20 Jun 2023 14:57:04 +0000 Received: from EUR04-VI1-obe.outbound.protection.outlook.com (mail-vi1eur04on0601.outbound.protection.outlook.com [2a01:111:f400:fe0e::601]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id b6edc7bb-0f7a-11ee-8611-37d641c3527e; Tue, 20 Jun 2023 16:57:02 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by DB8PR04MB6971.eurprd04.prod.outlook.com (2603:10a6:10:113::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.36; Tue, 20 Jun 2023 14:57:00 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6500.036; Tue, 20 Jun 2023 14:56:59 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: b6edc7bb-0f7a-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=PH14Pd1x+o1XV4+7kmhzYAarSMX+ZyJcRLAsCXzI1YDOL96sX/x+F1e96mSI49cRuZjd3gdTgP1VYj81Ni/Uaz2cYrESvtxH1nRJugEy5y0DtrDvYDhwF85t2Hg5bmcX9odsCylGPlEVIyC5ONz/7EYT4GrcgPUB8DtbBz92Z1fzMwPimmJIErCKZpP8C89K4BdX+nHaYS6NRYJpuJIhJXP08SAK7E3IJug76daliS1WtCk8TkesmekQW5gIEB1YtGnwtwRAeI6hLjpieDzq7ZC/TdqjFTraOy+F5Lfboat+KkImArueE/ppUUZOShmmq5I8Q8WS6dkI1H78EZxMMw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=GtwGcDaT4uptrnIqedM7IZ/ggPW/BtfbCwDGmmOwScg=; b=AM3+jrLA0b+T9MXhdfB9uCgLVCq/A743QZNq3DKNBxUtZmweyYXdAhjwxmlXykn/pzgZrPt6E/CfQZy7W9hh0Qa9nApUDmL7a07tsTxIJKDhvESRIenHlo+bUSjsEaIHXBmXmroWDDzOYLLCKvvXv9OtfW8LZ/8zaLbDZGUaeLKGwUOrDMX1kmej8CVWkMrMwnaeDWpB/9OwCR/bllaQHAZlatwp4znm9HsbOGFd/mD4SzqTCkNH8dqXOrL6jlEHfJjJcy6nR4qJQk6H7UTcgQvm3q2QaV67tkiC1Xq15YO2tqyTFkZwwc+1IGImQBq89W5E91SgJSeG3TaKWVnFGw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=GtwGcDaT4uptrnIqedM7IZ/ggPW/BtfbCwDGmmOwScg=; b=yLlYtKPslKC0ZTXFqmIABHAcDqqlABEU+rmFTLgbCtVWx3v5eZqzwCzN43QZboVzMomaifCb8d5apBN/TjMpHXtT968NfUaN6JgnPYR63+XmiGTcSza8OyxBMhCRCnYpS3cYwDYKqH+Evz89waPhAQEy44U+nPL3ztVBuKjURjdiQcoLgsIUlMAveHNDAPaNLDd31S4YzVQisFBaPFsqOHvwGNcrnfdckVrkDYAHRMd6yqdoqyugZKtsz2yppvgPJB46bGM+nSCpD6TJ59TtbjAWmAGXYbayCI2ajBupKitog3D7cF+cQrRTghxJwwBbjX18bnNlRKnBQchUjr+AWQ== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <4a06234a-d9ee-4359-3260-eaf18dc83f86@suse.com> Date: Tue, 20 Jun 2023 16:56:56 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [XEN PATCH v2] docs/misra: document the C dialect and translation toolchain assumptions. Content-Language: en-US To: Roberto Bagnara Cc: roger.pau@citrix.com, bertrand.marquis@arm.com, michal.orzel@amd.com, xenia.ragiadakou@amd.com, ayan.kumar.halder@amd.com, consulting@bugseng.com, Andrew Cooper , George Dunlap , Julien Grall , Stefano Stabellini , Wei Liu , xen-devel@lists.xenproject.org References: From: Jan Beulich In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR2P281CA0135.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:9e::19) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|DB8PR04MB6971:EE_ X-MS-Office365-Filtering-Correlation-Id: 76db9ecb-c3c5-4f19-1c45-08db719e9929 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: h4qI178pu2T/ko7DBycLkepjhkZoyYvZ0IWAJDmzZDTlM8RX6dL9PUu+kIgQVm/+4BQMDsO5eHlg0QGhzxVGaV61GztGx8oqXeM0ugLmzxzZJalDDC8hmIaONY/I4VaXJMKMuBc3J7gp2kuwrK090Ytvjt7bjUPTOVpMgXS9Xgy8PftXLA1hOJ2VarxYf3mw8d7+2GMquyeYUT24kSGNerPY+/OopG/0h1/gTtWqQ2jeXS/CwbYPmCPTf+CJcRp/SfTgNs72IORQcDU7qr4O8U/Fn+d2EvpWgA6c7JjLqaRxfgqC+5fnK3yd0/u8UkGewprvE8NQvl4b8BVu9HJMsjWwXrG/bn9J3yBz+29mgBCNXex+NRiCrqKiv/1P+yJAa8mUFvQ95sB/g9FaDtpFDxlP/l0ciqyExLN5SMZmezmnNo6RpcgzFXfBx2JaWeTLcec/kNp1hI9ypYUwdZqJsO6BR9FX3bLZlXklWQ+9RgE5DEvE+17nkRA1zgQwMJJpGA0y5nRdJkl94AWsgDlH9pN2yEX2ipAVZhwsx5Q45VS6qQlLuXrHAmMHX5KhkQhjQUuPluxNZg57k9UXZ9tj0z4hGMeKJEnBeJfX8yj8+Bi6cwWSfy+/v58a2GX9KgK48qCcHZfPAm+9I+Tsft1gVA== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(396003)(39860400002)(136003)(376002)(366004)(346002)(451199021)(66946007)(66556008)(66476007)(6916009)(4326008)(2616005)(38100700002)(31696002)(86362001)(53546011)(6512007)(6506007)(26005)(186003)(478600001)(36756003)(6486002)(6666004)(54906003)(2906002)(4744005)(41300700001)(31686004)(5660300002)(8936002)(8676002)(7416002)(316002)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?RzJTQVZqWGl5ZUIxTVdLcUtQdXB2TDdvU2I5aElTc1VTOVpwQnRyZlRqZFZT?= =?utf-8?B?engzQ21OYzNtTnM5WG9PYUhMbzd1YzJuRFpmYmdEY0JPMVJnaTVXd0x0QWdn?= =?utf-8?B?Q2IwNXVkc1JMbUo3YStNSEpFMjduWGR3ckloSit1dXJKRHFhbnVzb3VtUUVN?= =?utf-8?B?TkZybDJ2RlJndytheVRIbVFVVUpUTEEyYTUzTWRvYmovZ2tOWUlncW53WFdx?= =?utf-8?B?OXFrcVVmRVNMMGlYWUVva01DM2xVOVFRRHFpY1JQbExUMFRyM3lmU01qeFFM?= =?utf-8?B?VkFLL3p6SGxrcUo0STh5Zm12U0VEaTEwWUJsdjZQR3N5TDUrU3B2dlpTMzNy?= =?utf-8?B?dnVRVmk5SmZMVm1iUFBGaTB2c041VjJNaTFLTXlIMzlQcXNYVkxKSkVuOUVs?= =?utf-8?B?Mm05Qm5EdDBObzJvQ0ZGNW5QRk9vTyt0NlZpNG52MFhEZEk5Vms1VHFiNm5i?= =?utf-8?B?SlhHb3lHYXFaNVF6bzVvL0F0Y0NUd2M2MlJBbytSRkxyblhTL2JOUkF6dW1y?= =?utf-8?B?NXhKWlBHS0pTQXNNRVlmWkhwSk1vWjJlQ3hoYVl1VlpkQ1QzZlJrRVc3V1Qv?= =?utf-8?B?dWdMSWZ5cFNHemY1TkFFNlFaUDZXcDlZVjYzZE9JalRWV3dMdWFvSUpkdlhT?= =?utf-8?B?UUFsN3NWOXlhQ0JpRlp5SXBjNDg2WFZPWHE4bTNocG4zT2NKRXkrVjBaMWJV?= =?utf-8?B?YUE3aSthZUc0N09BMDdRSmlIbFhBQXo0aFRlcjNYU05HNWVFbGdneVB6eU1U?= =?utf-8?B?bjdDcldpemVPZ2FrdjVTV0RlZGVZeUtqRXdIZTFtZXQ2NHkyaDUxWHNEY2hr?= =?utf-8?B?bEhncDk0UWNKRU9lbDlQakY3d2cwTVJnSWlrYlpXQnJFR0tZdkNBcU84ZGpk?= =?utf-8?B?L3NCRk54Z29tSHRIYW9kaGtRZVRBQXg4Uk1mREVlUHE2QWpaMXppOWVaSnJO?= =?utf-8?B?SExvMDlyczhPdmlWb3RYUmlQdmxFSjVUQ1FacnBqTXpid1F3dmM3aXNxWm9F?= =?utf-8?B?c0Z3RlMzMlNUMnpMWjdPZ1F6WnZLTG9pWnFubnQ2dktORUU4eWlTQWtYeGlY?= =?utf-8?B?a1V4Y2tuNmNPdHpJYzAyU29scFdKYi9TbVdJL0hxbVRiRERnVkZiOTJudHJh?= =?utf-8?B?VDNMbjBLZlZrRFVMa0lRcXlSUHphY3pDM3dtZG1CVHQrUVdmdnk3bHdnTUJP?= =?utf-8?B?dlEvaVhPZEJXaFQrNWhSdUVFM2x1YlhZOGFBTENSMzhmbThSbGtBeTF6ZXA4?= =?utf-8?B?T1UrQkxHSlNQczI5aUtEc050R3o5NWxSOVM4MmM0NFd0TzVlODIzaUVXTFNv?= =?utf-8?B?WE5YZk8wcDk3djh6eTB0RU1QcE5FbHFNTVByd0E1VFRSWi9iRXNmTDlia3Zk?= =?utf-8?B?Qld4ejc5U2VwajVOdGxqMjlIWTB0bko3YjRRR2QwcFkxZXNFVDJCcUIrZmZa?= =?utf-8?B?OFVHN2IrYWx4TC9VY0VuTGdqUlViQ0FabE5pS2VnWC9HNE9ocU12aDl6MExC?= =?utf-8?B?WVFlTko4VncxOVlSNXgwbFRNZGRnZXVLSjYrdEI2Y3JEZnRKY0JqNklQNEox?= =?utf-8?B?ZW84V21tRWlSWU9idEUza1JBK0wrcTBxT0h0bm12cDYrckRvWlJvTEtHUmxn?= =?utf-8?B?UFIvY0FYMENpeHhCSGVaY2FuMjNNTzRaTkJqaEdDZFNlNmNXZFFSWkM5S1Jq?= =?utf-8?B?RVVUNmVJanNGK2JYVkF3NUxmUHNmM1pnN1pra1NyclFsZXF6dkJZVldESEtz?= =?utf-8?B?V1R4SXJsS0dWMTlkaDJHOUMwdzBYOEdTN0hKU3J1ZXNZQXhXRFZweUM5Nk5L?= =?utf-8?B?Szc0MTYyU2J3VU9YdmsyVGJRKzdBOVEyUHFiWHNTTG1BRUdiYkFTb1VlcjU2?= =?utf-8?B?ZHhDeFZNNDg1bi9yQ1Y2NkVJUEV2VlpSa1RyMWpHK0JkVTNMSUs4R0t2cVpj?= =?utf-8?B?clZUOVAxNytmcDAwZGNGSXBSMWtEY3NFSnNkTDM2RDBkdzJPR1AxanVyb3ZN?= =?utf-8?B?YTRObVpRNWQzQnF2czdkaDZGSlNrZ0lXVUVpUk0xUzNiTnNRcUdnbnA0bm1Q?= =?utf-8?B?ZzZZQUYzbThFZy9RUTM4TTBwa2xncHFXdGwyM1ZBUlV1UStCa3IrK0p2cjBs?= =?utf-8?Q?mps4Virsv2X0WSkmB6XRXp35y?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 76db9ecb-c3c5-4f19-1c45-08db719e9929 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Jun 2023 14:56:59.3536 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 1RAy0B5SHmF4hH81WeyI20QKNmmPacXH7StBhnh9ng7JQrMgdlHvZBJs3gLTYe+eb0fmyrW7OSESnDVd3aPAdA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB8PR04MB6971 On 20.06.2023 14:10, Roberto Bagnara wrote: > + * - Arithmetic operator on void type > + - ARM64, X86_64 > + - See Section "6.24 Arithmetic on void- and Function-Pointers" of GCC_MANUAL." The first line is misleading - we don't (and can't) do arithmetic on void. What we do is arithmetic on pointers to void (like the gcc section title properly says). Jan From xen-devel-bounces@lists.xenproject.org Tue Jun 20 15:05:37 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 20 Jun 2023 15:05:37 +0000 Received: from list by lists.xenproject.org with outflank-mailman.551926.861697 (Exim 4.92) (envelope-from ) id 1qBcv8-0004DY-7Y; Tue, 20 Jun 2023 15:05:26 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 551926.861697; Tue, 20 Jun 2023 15:05:26 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBcv8-0004DR-48; Tue, 20 Jun 2023 15:05:26 +0000 Received: by outflank-mailman (input) for mailman id 551926; Tue, 20 Jun 2023 15:05:25 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBcv7-0004DL-9W for xen-devel@lists.xenproject.org; Tue, 20 Jun 2023 15:05:25 +0000 Received: from EUR05-AM6-obe.outbound.protection.outlook.com (mail-am6eur05on20611.outbound.protection.outlook.com [2a01:111:f400:7e1b::611]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id e1c5d76c-0f7b-11ee-b234-6b7b168915f2; Tue, 20 Jun 2023 17:05:24 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by AS8PR04MB8279.eurprd04.prod.outlook.com (2603:10a6:20b:3f8::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.37; Tue, 20 Jun 2023 15:05:22 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6500.036; Tue, 20 Jun 2023 15:05:22 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: e1c5d76c-0f7b-11ee-b234-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=l05JMuIUc2lShQpA1hMqkFwsPt97/1zC9MF49Lu/nKrZkSBd3lJb0HNQzCHn2y0y2LjvPZa1yY2DKXT4SIEdqIAKb2TLLAuN3+8Cg75kpp+EP9b5w/Oou6hjLvXqaY4dEBrMwnHZTv2nCEGfgT4gSKt5d56qOLsvJVHRfxdhcY7TS9iUYQZBdffwAD4S39OC/Cwch58JXL9KdVtCHexPhiPwLPAV1auIPJCmwazkWCjNtfu7F55hARPw3GJKjJWS+4sYibpPjxoJ6SVFT/n8RbWaVlAPX/kG56KNHciuZKs0zqZy9Vhxb+wCz0mSNniB+zkLywCt89efX800gZWWag== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=e0x3cZa8AKpBxjsOfbol4jW1yg3KsgFe2cghrzIORQc=; b=hSNXA0dLPtl/eNRXczKLuGusX0jM4l/D605Kp3zHQGyMCHfpV2KDSQ+s4eQpOgv+KW04kaqAmB6vGJd20FLwh+nOsv/+AiOCWsfw05o8iwpA20hzCGyHDhzYC9l63LjVwvHyTc56uVBV/8exq1i6HWnh+XtBejrE8BHNshyvIN7B6fe+nbp85bKv6YmFpi2klS38Mzpt3BetpeXxiVxOYcJkd6ypU03gj2UeOLlDx1mvaOi5h7+ML25mv1T2OhOiWs5JNgtlhlfCQD7EB65/MM7RKghIHLpRLKEJQ6VEPYrEx+13tOxqNqMu/NL9FsDbedcfJwfoooOv9g1Bm4Flhw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=e0x3cZa8AKpBxjsOfbol4jW1yg3KsgFe2cghrzIORQc=; b=jtaUS4MZnyS5eZMM5oZphNGcX0/l2CLXcfXhWt573yQ+No0DLBZ/l54hBgghJPOrmv6oG+26FrjWzY3eaV/VnmX3tytUmBLvRkotpj/nKe+UHz/nypj6ci5oqRKVwkcf9DHNz0iVh8pW3McdpQky5mRm9wZ1tZLTmjtnDO9kpUmS95YhPfXzthsaNotlrOwgpWmunQZ+/IgJg9D6N90O5Z0i1h6jyRYvy+MfOVmwwfORNv/dcRdD8kn+tUm+dpMfmTenN2cehmedmTSE+UDJamyvFrDPZFvQtVGLvIIXSOi6tVYATTXmqwHBjT1Nu7ptyLxrSulpJhcuEIra/XZKXQ== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <9a03d5d3-71d5-e3ed-235c-554931fa485a@suse.com> Date: Tue, 20 Jun 2023 17:05:20 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [XEN PATCH v2] docs/misra: document the C dialect and translation toolchain assumptions. Content-Language: en-US To: Roberto Bagnara Cc: roger.pau@citrix.com, bertrand.marquis@arm.com, michal.orzel@amd.com, xenia.ragiadakou@amd.com, ayan.kumar.halder@amd.com, consulting@bugseng.com, Andrew Cooper , George Dunlap , Julien Grall , Stefano Stabellini , Wei Liu , xen-devel@lists.xenproject.org References: From: Jan Beulich In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR0P281CA0146.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:96::20) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|AS8PR04MB8279:EE_ X-MS-Office365-Filtering-Correlation-Id: 95eceab7-4957-46cd-b1b8-08db719fc513 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: IIPTKxuwvVQXR4vVq8NMh+kDatFn9UqDaME7yK+Tzswfa48qrJ2UzyGTpDfarYxDt+BrdGwKoxEf8Mu6x2bCaRtWMRHe+lej4SO6H/XSf2PbavKPlyAzYtC+UI/tcm9aZ+mXxglbL3U6kIwdu2DPRZWL4HtN1ZihcIOuAIMVtJe4VXgpoZCs44rTEO5pXl9QGhJrjN2fVfXh4UVQfwFiFkP6F4YM+Fj3cdF9JbmwauW/5d0haSZfeF7sh9tTV0akM/32IYfD+PM4Fz5ysfrF21nxaiy7kwXvOFTLYfuPTGNSUq108R0hf8B9xWNq0jzcCvhPADHxJdID+g/Fpm+0EKIxBn75zw0CwIxsrS7eoaAYJoyN9entria70UJvjccHu0hiXLRv5gpf6zYoUwjINdM7+CfBFF5z1zM1SlozSfR6j3/sp6ub4fe4HGcZbqRYm0WI8lXyMlf4tbmBAV9KRagfmUlCgnXdKQkyqc6nn1reNWEbbuo0Zdd5uXw/t3Qq+bMkQNbAQiBAVpqdhb6d01fIkk/yI1r2Dw7GmY4CyzIJp1RfQpAwyLtXw6Z0ZVKa0l+3PC2EuAl5lGQzEZNcjXFwvxZBfXy7xxiaf4z9/ZeDWt8IqPzCpzeTUSZmDBK4qL/ca5nzMv3msvBF8VBe9g== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(39860400002)(376002)(366004)(346002)(396003)(136003)(451199021)(2906002)(4744005)(6486002)(38100700002)(2616005)(53546011)(6506007)(6512007)(41300700001)(26005)(31696002)(86362001)(54906003)(186003)(5660300002)(478600001)(316002)(66946007)(66556008)(66476007)(36756003)(8676002)(6916009)(8936002)(4326008)(31686004)(7416002)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?ZzlWNlVhRFpSTjZWRVhaVjdybitKN3FsaFBRU3dwcDBwNkZIVS9VNndGTThV?= =?utf-8?B?b1Z4Ylo3M0NZeWFFWTlUWG85QkdKTDB5VTlPZkVtcnhOeGhPdlFjS0NmT1F5?= =?utf-8?B?VkwvVGpHcEc1Vnk3bmFXbXpEQzZNaDNzTXUyYzdPSlFYZDcrTCsrMEhzbk5Q?= =?utf-8?B?eVB0MHdMSzNtY0lqWmwyb25aZy9GY2dpR2xRLzF2ZWNrUzFDSW0zVkNIT1BE?= =?utf-8?B?cFdPMVRGcUVwbzJ0RG94VEhMNUNPNmtkQ0JRMWRyTm12TFdXRXhDd3dhQm92?= =?utf-8?B?Q0VpV1Z6RitNdWFqL3NrREExY2FVdlo2Q2s2QXlCVW81NHB0VmZTdFdpT2ZV?= =?utf-8?B?THAySVMwM1pxdXFzc3dqUDZnakdmWkV0Y1h3Vjd3MkNhd1ZQOXJIVEpScWo2?= =?utf-8?B?WWk3L01QeThoYnh0UVpRd1FCMHdmNW5YZ3Q1NE41NFBoWEFVTG1vMEdaZlQ2?= =?utf-8?B?cXNnM3krejRBdytKT2Jkdmlrd0dFWmlZTzBWeDh0Rk0vdHZ2aXFidGcxb1BR?= =?utf-8?B?Q3hrWk1yRzgwVnR3QTVYNjJPV2Nqb0VmYVg2c2FZdGt6K1grczdNaStVUk1m?= =?utf-8?B?QUVMZjFCS1hUbVQzSk80MDB4TjFTbTgzdGNDSDh3ZDcyUlN4U0ViK3FtSVpC?= =?utf-8?B?b3ZMVUFacFRLTWJYY1lMTm1BVUNzSEk5d0pSblFRV2lvMEJHWWQwS2VPc0xO?= =?utf-8?B?UXBGVmtDU3RhNDVhMHNtdGV5SEN1M1U4VzRTWWZ3S1RlNEUwbklQekVWN0g1?= =?utf-8?B?eEY4S25qbFZJUmRUNXJXUEVwU3hzVHY1SXdwaDhNMDZyZGtVcmVMdjZlQXhw?= =?utf-8?B?OURIbTQ3YVhCS2JDSHovVjNTWWNvL0ZSNWpPcWRnbXR6a3ZnYVp2TThrTno4?= =?utf-8?B?TXk0L2pxR2RWTHlQeUVrRDFWTzBxc2NyODRkZEhDenpDcVlweWtEQ3pvakpB?= =?utf-8?B?cURzZjIxelZ3RE9VTnhra2dERVhSNXhaeE1lbmdVMkY3eDBXSG4rOVlld21x?= =?utf-8?B?ZkYvMVBwdTdsTnZna2RLUmxGM2p5VjM5WWo4Z0lWdkhOZ3F6Z0pBTkhycGlJ?= =?utf-8?B?blFURWxMb1grSTVrSmlJb1FHcis4R1VIK04zaWZQNHNCcVZJWHdSaE1RaXlp?= =?utf-8?B?QU1JNmh3NXIwdjVpcFVOY3RLMHM2UEd1NU5uSm82bmZLWDNjN0ZSdkpoVG1G?= =?utf-8?B?Y3FvdzRSNjlMbTJIUFJSWE9aSk4zakFrOUx6QzVVazAveUJ5UlB6dis0d29p?= =?utf-8?B?VUJLRXRIREE3bmk1VWI3bTRKNTRaRTlIank2aGI2ZThNalFSakcyV2xRdkN2?= =?utf-8?B?VENZKyt0dTV5R21Td2RDOXpST1VoUEIrcmpCOGdmVGxBNGY5cWxMUEc3clZW?= =?utf-8?B?L2lvZi9CUElBemtiY0sxS0VpQTRkdFVYRlhZbzk2M0dubWlZZTU2blpPeEJ6?= =?utf-8?B?RVdIbDFhajEvYXMwcnEvSkJHVGtNMWc4aVVjMnMzd3FsUnk5UjBVQXVVRG5j?= =?utf-8?B?bGNzWWhxS3pkMnZKUzNSYnAwcFJiMzNpd0ZSaThwV2JmeWs2dFBzRmlNSTN5?= =?utf-8?B?YlRLaThXazNyRFFOaVRKUFhidU9XNktyc2FyL0h5NXF3TDVDK051WURJMFlY?= =?utf-8?B?UXF6L2VUcEg2QmZBZDcrVlBoTGVzQk45MngzUW80eEJMYUhaNUNPNUhvQjRX?= =?utf-8?B?U2xuRzNYZGJlbzc4TklDOEswNXhnYkxQcFltZzVOSlRaUlRSMzM0UEdwSzNy?= =?utf-8?B?NlpodksvOW02aVlwK2N5TENTemtNaEJhR1dSOWRnT1VmQ2ZWamN5Ymp4c2VO?= =?utf-8?B?dnNkcXA3dlRvV0FodHFKTmFWTnZhcE5nVmpZU2lUT01TTThNNldoNUpZdkxo?= =?utf-8?B?RFZIai93cXc5TWorc1QvazlUcE9sQ3IxSTA5Q0l4bnQ1eFhuUlJDak83dm9I?= =?utf-8?B?RG5hNHVWbnBKME1rWnRTaEhyejBKUk55cFZPcktlNTFhMW96R1FpT21hbEND?= =?utf-8?B?a3ZrVVI0Zm9NNG9ldWtPVTIzVnVmU2gyank2NDQ4TmFkM2U1NGswYUN5Wlo3?= =?utf-8?B?dy9LSXFrN3hjMFhpeks3amVLUVEwcmFvWXQzaWZzQnVCZTZjV1hVa2VUMlR6?= =?utf-8?Q?qJiYNIsmjgrD0DsWO+wejIwit?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 95eceab7-4957-46cd-b1b8-08db719fc513 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Jun 2023 15:05:22.4536 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: x9IQr1q2sURuUkzhxxUQZV1FAZ8YJnB0EbvqlrKHjj7YNfpMhgVzEvt6s27UIGM7ELO1k5qJGKrxSmC7gSBfXg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB8279 On 20.06.2023 14:10, Roberto Bagnara wrote: > + * - Token pasting of ',' and __VA_ARGS__ > + - ARM64, X86_64 > + - See Section "6.21 Macros with a Variable Number of Arguments" of GCC_MANUAL. > + > + * - No arguments for '...' parameter of variadic macro > + - ARM64, X86_64 > + - See Section "6.21 Macros with a Variable Number of Arguments" of GCC_MANUAL. Seeing these I think you want to also mention our extensive use of the pre-C99 way of variadic macros, which also includes pasting of ',' with something. Jan From xen-devel-bounces@lists.xenproject.org Tue Jun 20 15:18:08 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 20 Jun 2023 15:18:08 +0000 Received: from list by lists.xenproject.org with outflank-mailman.551931.861706 (Exim 4.92) (envelope-from ) id 1qBd7F-0005l6-9n; Tue, 20 Jun 2023 15:17:57 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 551931.861706; Tue, 20 Jun 2023 15:17:57 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBd7F-0005kz-6v; Tue, 20 Jun 2023 15:17:57 +0000 Received: by outflank-mailman (input) for mailman id 551931; Tue, 20 Jun 2023 15:17:56 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBd7E-0005kr-AY for xen-devel@lists.xenproject.org; Tue, 20 Jun 2023 15:17:56 +0000 Received: from NAM11-DM6-obe.outbound.protection.outlook.com (mail-dm6nam11on20631.outbound.protection.outlook.com [2a01:111:f400:7eaa::631]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id a06d05d6-0f7d-11ee-b234-6b7b168915f2; Tue, 20 Jun 2023 17:17:54 +0200 (CEST) Received: from SA1P222CA0080.NAMP222.PROD.OUTLOOK.COM (2603:10b6:806:35e::17) by CY8PR12MB8412.namprd12.prod.outlook.com (2603:10b6:930:6f::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.35; Tue, 20 Jun 2023 15:17:50 +0000 Received: from SA2PEPF00001507.namprd04.prod.outlook.com (2603:10b6:806:35e:cafe::cd) by SA1P222CA0080.outlook.office365.com (2603:10b6:806:35e::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.21 via Frontend Transport; Tue, 20 Jun 2023 15:17:50 +0000 Received: from SATLEXMB03.amd.com (165.204.84.17) by SA2PEPF00001507.mail.protection.outlook.com (10.167.242.39) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6521.17 via Frontend Transport; Tue, 20 Jun 2023 15:17:50 +0000 Received: from SATLEXMB04.amd.com (10.181.40.145) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Tue, 20 Jun 2023 10:17:49 -0500 Received: from xcbayankuma40.xilinx.com (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server id 15.1.2507.23 via Frontend Transport; Tue, 20 Jun 2023 10:17:48 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: a06d05d6-0f7d-11ee-b234-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=iU1q72wmyEOjz0m5lfk8wkJO0EtyiDzvWXkQqQGPHjnuiXf46996+Lgti7cLhFPqnqLYrCunXfopUq9XlljTMc0Mg+mz9PySKT/FOW6bCeQKgrfjXfR3FGfWQDeJAIbRTqkVYpOi4/l6XS3sIJym5pC2tLlue+OYZgUKyfUe9JmU/bmD7QwP5ctD7FXxMHbIIRZEM5DnfD1+WaoOD8Gk22yDdeFX6Rn2xNkOcr2+TWKHm+GlIrlWZL/ZVjw9r/u9mY0UkyMjjtvtCFrakRtr9WxGXvomc5TeLZXrqBU/JG+XH9IGE5Bce2aXBoIy7FYahxqO7cax+BFFUeTn9uxxzw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=Bo2uUjOS32YTL54q1Rj6J7cbgK8GERafP9GY+0vZaNw=; b=EoLMhNdZOU2X18xiESYuvSVm6aW/0w7mJe3uPNB4VB18O1V8GWDRqli5a/PGFlkR8yBUqMgfHI1ZxEqMQRzbR778YSRvegXusOcAEmMX7K8viZMs/IKuhYTQJYhn0o5vEGiHigV+9q6qutCT+xp0q0kNIkIT/XCBjuFTgxGtuDcx+7gK56q1y+534DvXG2Y/pp+1NbfGpTAHRgyR2KkBUfMO+4oolhvyPUpje7sXE/CpaaQiRvctImm21/PX9sSWwsOI/LcKO3rAtYucTwL05uHAgN3Sh96VB9LUbRhBd5xwst4+vEFZUs1SNCQShZK21BwWq9QyaJ59JwqA3rYqNg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Bo2uUjOS32YTL54q1Rj6J7cbgK8GERafP9GY+0vZaNw=; b=c94ECAX+A5faWQ0yNup8BgN0zKw/Wp8cLfTagtb1D44e4lSlW6gluCwi3yAW4QGIB/pf/i87qUiavMcPhe+3SL3V9teXXccB7R/psXpx/FHsiJudnoDout7HapjAAQ1q7R1teg5psFgvkIlaajxpC2FBfQIkzff/WKhJz8nQtP0= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C From: Ayan Kumar Halder To: CC: , , , , , Ayan Kumar Halder Subject: [PATCH v1] xen/arm: arm32: Add support to identify the Cortex-R52 processor Date: Tue, 20 Jun 2023 16:17:36 +0100 Message-ID: <20230620151736.3720850-1-ayan.kumar.halder@amd.com> X-Mailer: git-send-email 2.25.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SA2PEPF00001507:EE_|CY8PR12MB8412:EE_ X-MS-Office365-Filtering-Correlation-Id: 3b298864-e065-4a50-2218-08db71a182c5 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: zMlt3Sfva4MlT8IB4LFZJnhHdANjbEqcsSIPELX8CvZfdhJYBexN9/kvFW6ksBOKxFq2xHGoLonji5fxq4xhoe7h+SOxHMCm4OQN1z/t0fBst0QaCrxxdB4KG6W/NSlXa8tOjC1QQM0lWUzsqHNb3OIy5CVcmKdOdUoZQT4ItgJdwb6rqcl7uWhdvVlr+/s/KrxDFyQZofRe7XYNKTCC1DTCPL+pTkjqIooKekh7gAGJSR51roliWuQXWPacZjj/79a4uTGEWPjMuxAxnVVAZ5G8J6jbc77fqHd/SrlRkcj0aUF9hrCDqaGnlxvKQRxJnWYpzOFETO3QBmPO2VHRL/lu8V/AgVBvMnwCm3c7bUCLMkSqp+NvIp5yLEhg4TdElzsvI+WNplMxNhu6ckW9cMc6/wl1PoqYY77P4MXR1q/NPj0UXaKC707NhMXm71f71AyB03Bhgy74uFNyXbsL1aEnjeqn9XWt4P5caHMWhzOgMNAzTwCzxGxX2bRewusRKhNrQCUP4Kx5mGh0pOZ7Sf3IH8rc8g7z3JYPhcSzs6xCkETnpUliAQZ0j0YQLYzJylL9e4iGWKNotQ+KVyqBNmKs6ne4JTsFu+8v3YZQlWv529kAxc6vz86Z0GeF3tfBVOCRH9M7vXUwbNQ0KrucnoVDCqrsWfI6JteD0ag0RR1nBi9sfqgKIWdnfAl6OC6BV4T0XKHPN+3vcSwhRG3F1sWS+B8zC9MFULC2m3uMokw1i3OQ1axad5Ajd+cWUSF19TS3cI4+SHnlj66Mr+3OMw== X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(346002)(136003)(39860400002)(396003)(376002)(451199021)(46966006)(36840700001)(40470700004)(1076003)(478600001)(5660300002)(6916009)(70586007)(70206006)(4326008)(2906002)(54906003)(41300700001)(316002)(6666004)(8676002)(8936002)(186003)(26005)(426003)(2616005)(336012)(36860700001)(47076005)(82740400003)(81166007)(356005)(82310400005)(36756003)(103116003)(40460700003)(86362001)(40480700001)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Jun 2023 15:17:50.0062 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 3b298864-e065-4a50-2218-08db71a182c5 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com] X-MS-Exchange-CrossTenant-AuthSource: SA2PEPF00001507.namprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY8PR12MB8412 Add a special configuration (CONFIG_AARCH32_V8R) to setup the Cortex-R52 specifics. Cortex-R52 is an Arm-V8R AArch32 processor. Refer ARM DDI 0487I.a ID081822, G8-9647, G8.2.112 MIDR, bits[31:24] = 0x41 , Arm Ltd bits[23:20] = Implementation defined bits[19:16] = 0xf , Arch features are individually identified bits[15:4] = Implementation defined bits[3:0] = Implementation defined Thus, the processor id is 0x410f0000 and the processor id mask is 0xff0f0000 Also, there is no special initialization required for R52. Signed-off-by: Ayan Kumar Halder --- xen/arch/arm/Kconfig | 7 +++++++ xen/arch/arm/arm32/Makefile | 1 + xen/arch/arm/arm32/proc-v8.S | 32 ++++++++++++++++++++++++++++++++ 3 files changed, 40 insertions(+) create mode 100644 xen/arch/arm/arm32/proc-v8.S diff --git a/xen/arch/arm/Kconfig b/xen/arch/arm/Kconfig index 61e581b8c2..c45753a2dd 100644 --- a/xen/arch/arm/Kconfig +++ b/xen/arch/arm/Kconfig @@ -3,6 +3,13 @@ config ARM_32 depends on "$(ARCH)" = "arm32" select ARCH_MAP_DOMAIN_PAGE +config AARCH32_V8R + bool "AArch32 Arm V8R Support (UNSUPPORTED)" if UNSUPPORTED + def_bool n + depends on ARM_32 + help + This option enables Armv8-R profile for AArch32. + config ARM_64 def_bool y depends on !ARM_32 diff --git a/xen/arch/arm/arm32/Makefile b/xen/arch/arm/arm32/Makefile index 520fb42054..2ab808a7a8 100644 --- a/xen/arch/arm/arm32/Makefile +++ b/xen/arch/arm/arm32/Makefile @@ -8,6 +8,7 @@ obj-y += head.o obj-y += insn.o obj-$(CONFIG_LIVEPATCH) += livepatch.o obj-y += proc-v7.o proc-caxx.o +obj-$(CONFIG_AARCH32_V8R) += proc-v8.o obj-y += smpboot.o obj-y += traps.o obj-y += vfp.o diff --git a/xen/arch/arm/arm32/proc-v8.S b/xen/arch/arm/arm32/proc-v8.S new file mode 100644 index 0000000000..c5a566b165 --- /dev/null +++ b/xen/arch/arm/arm32/proc-v8.S @@ -0,0 +1,32 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ +/* + * xen/arch/arm/arm32/proc-v8.S + * + * AArch32 V8R specific initialization + * + * Copyright (C) 2023, Advanced Micro Devices, Inc. All Rights Reserved. + */ + +#include +#include + +cr52_init: + mov pc, lr + + .section ".proc.info", #alloc + .type __v8_cr52_proc_info, #object +__v8_cr52_proc_info: + .long 0x410F0000 /* Cortex-R52 */ + .long 0xFF0F0000 /* Mask */ + .long cr52_init + .size __v8_cr52_proc_info, . - __v8_cr52_proc_info + + .section ".proc.info", #alloc + .type __v8_cr52_proc_info, #object + +/* + * Local variables: + * mode: ASM + * indent-tabs-mode: nil + * End: + */ -- 2.25.1 From xen-devel-bounces@lists.xenproject.org Tue Jun 20 15:28:34 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 20 Jun 2023 15:28:34 +0000 Received: from list by lists.xenproject.org with outflank-mailman.551939.861716 (Exim 4.92) (envelope-from ) id 1qBdHH-0007Ld-Cz; Tue, 20 Jun 2023 15:28:19 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 551939.861716; Tue, 20 Jun 2023 15:28:19 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBdHH-0007LW-9p; Tue, 20 Jun 2023 15:28:19 +0000 Received: by outflank-mailman (input) for mailman id 551939; Tue, 20 Jun 2023 15:28:18 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBdHG-0007LI-9a for xen-devel@lists.xenproject.org; Tue, 20 Jun 2023 15:28:18 +0000 Received: from raptorengineering.com (mail.raptorengineering.com [23.155.224.40]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 12fffbba-0f7f-11ee-b234-6b7b168915f2; Tue, 20 Jun 2023 17:28:16 +0200 (CEST) Received: from localhost (localhost [127.0.0.1]) by mail.rptsys.com (Postfix) with ESMTP id 5A9AE8284F41; Tue, 20 Jun 2023 10:28:14 -0500 (CDT) Received: from mail.rptsys.com ([127.0.0.1]) by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032) with ESMTP id T0eUghUAq61c; Tue, 20 Jun 2023 10:28:13 -0500 (CDT) Received: from localhost (localhost [127.0.0.1]) by mail.rptsys.com (Postfix) with ESMTP id 467B08285596; Tue, 20 Jun 2023 10:28:13 -0500 (CDT) Received: from mail.rptsys.com ([127.0.0.1]) by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id PyPLzdND__xm; Tue, 20 Jun 2023 10:28:13 -0500 (CDT) Received: from [10.11.0.2] (5.edge.rptsys.com [23.155.224.38]) by mail.rptsys.com (Postfix) with ESMTPSA id A6F378284F41; Tue, 20 Jun 2023 10:28:12 -0500 (CDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 12fffbba-0f7f-11ee-b234-6b7b168915f2 DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com 467B08285596 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD; t=1687274893; bh=GQnd/bnn/jngKatbSBOa0Rs/viCXfhFksKNkCLSdvFk=; h=Message-ID:Date:MIME-Version:To:From; b=T6Pawpaf7fqx9csuy7aXYoqoFGcUPmh2964KkcZPlSxRHuTDcH5Z1+e60g1G+HhmM vxKn6UH768o90nxf8fGkAckjKnrDBzvfBlc2aumGKaPKsSeFUoPSlCLbAksKAC1EIm +jKMfzaNQ9wuPMPIZaQjiv+e1Xm8tlAyPnxzt53g= X-Virus-Scanned: amavisd-new at rptsys.com Message-ID: <57bd1c94-7371-2d63-1f2e-ffadc9568664@raptorengineering.com> Date: Tue, 20 Jun 2023 10:28:11 -0500 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux ppc64le; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v4 2/4] xen: Add files needed for minimal ppc64le build Content-Language: en-US To: Jan Beulich Cc: tpearson@raptorengineering.com, Andrew Cooper , George Dunlap , Julien Grall , Stefano Stabellini , Wei Liu , xen-devel@lists.xenproject.org References: <97a72e26edafb1d7b3a583755f015d04066c1e53.1686936278.git.sanastasio@raptorengineering.com> <5dc1965c-6d7d-16bd-09e5-85bc950ffea8@suse.com> From: Shawn Anastasio In-Reply-To: <5dc1965c-6d7d-16bd-09e5-85bc950ffea8@suse.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit On 6/20/23 5:15 AM, Jan Beulich wrote: > On 16.06.2023 19:48, Shawn Anastasio wrote: >> --- /dev/null >> +++ b/xen/arch/ppc/Kconfig >> @@ -0,0 +1,42 @@ >> +config PPC >> + def_bool y >> + >> +config PPC64 >> + def_bool y >> + select 64BIT >> + >> +config ARCH_DEFCONFIG >> + string >> + default "arch/ppc/configs/openpower_defconfig" >> + >> +menu "Architecture Features" >> + >> +source "arch/Kconfig" >> + >> +endmenu >> + >> +menu "ISA Selection" >> + >> +choice >> + prompt "Base ISA" >> + default POWER_ISA_2_07B if PPC64 > > I think the "if" here is at best confusing. If / when ppc32 support > is added, a potentially different default here would make necessary > adjustments, yet imo would not be very likely to introduce this very > "if". Fair enough, I'll drop the if. >> --- /dev/null >> +++ b/xen/arch/ppc/arch.mk >> @@ -0,0 +1,12 @@ >> +######################################## >> +# Power-specific definitions >> + >> +ppc-march-$(CONFIG_POWER_ISA_2_07B) := power8 >> +ppc-march-$(CONFIG_POWER_ISA_3_00) := power9 >> + >> +CFLAGS += -m64 -mlittle-endian -mcpu=$(ppc-march-y) >> +CFLAGS += -mstrict-align -mcmodel=large -mabi=elfv2 -mno-altivec -mno-vsx > > Just for my own education: Besides the expected effect, -mstrict-align > also appears to imply -mbit-align, which I'm not sure is intended here. > Could you clarify the intentions for me? If I'm reading the GCC documentation right, -mbit-align is the default behavior regardless of -mstrict-align. The intention was simply to avoid the generation of unaligned memory accesses in the kernel, since they are only handled in hardware up to a certain width. > As to -mabi=elfv2, it looks as if this limits us to gcc12 and newer. > That's fine, but I think it wants pointing out in ./README (which has > a section for this kind of information). This is not the case. The ELFv2 ABI was released in 2014 and has been the de facto standard on ppc64le since its inception. I know that ELFv2 support in GCC dates back to at least version 6 (the earliest I can remember using), but I believe it goes back even further than that. >> --- /dev/null >> +++ b/xen/arch/ppc/include/asm/config.h >> @@ -0,0 +1,63 @@ >> +#ifndef __PPC_CONFIG_H__ >> +#define __PPC_CONFIG_H__ >> + >> +#include >> +#include >> + >> +#if defined(CONFIG_PPC64) >> +#define LONG_BYTEORDER 3 >> +#define ELFSIZE 64 >> +#define MAX_VIRT_CPUS 1024u >> +#else >> +#error "Unsupported PowerPC variant" >> +#endif >> + >> +#define BYTES_PER_LONG (1 << LONG_BYTEORDER) >> +#define BITS_PER_LONG (BYTES_PER_LONG << 3) >> +#define POINTER_ALIGN BYTES_PER_LONG >> + >> +#define BITS_PER_LLONG 64 >> + >> +/* xen_ulong_t is always 64 bits */ >> +#define BITS_PER_XEN_ULONG 64 >> + >> +#define CONFIG_PPC_L1_CACHE_SHIFT 7 >> +#define CONFIG_PAGEALLOC_MAX_ORDER 18 >> +#define CONFIG_DOMU_MAX_ORDER 9 >> +#define CONFIG_HWDOM_MAX_ORDER 10 >> + >> +#define OPT_CONSOLE_STR "dtuart" >> +#define INVALID_VCPU_ID MAX_VIRT_CPUS >> + >> +/* Linkage for PPC */ >> +#ifdef __ASSEMBLY__ >> +#define ALIGN .align 2 > > I think I did ask for the same on RISC-V (yet sadly it's still .align > there): .align is notoriously ambiguous. May I ask that you use .p2align > (which I think is what is meant here, else .balign)? Sure, will do. > Jan Thanks, Shawn From xen-devel-bounces@lists.xenproject.org Tue Jun 20 15:30:54 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 20 Jun 2023 15:30:54 +0000 Received: from list by lists.xenproject.org with outflank-mailman.551944.861726 (Exim 4.92) (envelope-from ) id 1qBdJd-0000Kg-P4; Tue, 20 Jun 2023 15:30:45 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 551944.861726; Tue, 20 Jun 2023 15:30:45 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBdJd-0000KZ-M6; Tue, 20 Jun 2023 15:30:45 +0000 Received: by outflank-mailman (input) for mailman id 551944; Tue, 20 Jun 2023 15:30:44 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBdJc-0000KR-Er for xen-devel@lists.xenproject.org; Tue, 20 Jun 2023 15:30:44 +0000 Received: from NAM12-BN8-obe.outbound.protection.outlook.com (mail-bn8nam12on2061b.outbound.protection.outlook.com [2a01:111:f400:fe5b::61b]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 6acbbd05-0f7f-11ee-b234-6b7b168915f2; Tue, 20 Jun 2023 17:30:43 +0200 (CEST) Received: from BYAPR01CA0069.prod.exchangelabs.com (2603:10b6:a03:94::46) by IA1PR12MB8309.namprd12.prod.outlook.com (2603:10b6:208:3fe::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.37; Tue, 20 Jun 2023 15:30:39 +0000 Received: from DM6NAM11FT069.eop-nam11.prod.protection.outlook.com (2603:10b6:a03:94:cafe::3d) by BYAPR01CA0069.outlook.office365.com (2603:10b6:a03:94::46) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.37 via Frontend Transport; Tue, 20 Jun 2023 15:30:38 +0000 Received: from SATLEXMB04.amd.com (165.204.84.17) by DM6NAM11FT069.mail.protection.outlook.com (10.13.173.202) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6500.37 via Frontend Transport; Tue, 20 Jun 2023 15:30:37 +0000 Received: from SATLEXMB05.amd.com (10.181.40.146) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Tue, 20 Jun 2023 10:30:37 -0500 Received: from SATLEXMB04.amd.com (10.181.40.145) by SATLEXMB05.amd.com (10.181.40.146) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Tue, 20 Jun 2023 10:30:36 -0500 Received: from ubuntu.mshome.net (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server id 15.1.2507.23 via Frontend Transport; Tue, 20 Jun 2023 10:30:35 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 6acbbd05-0f7f-11ee-b234-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=HoRUYfhxmkYI1i5Bnkj/aM/soI3D7V2APNX1xiiq0HZIhmsGjzx/+jPNr9BZL3TR6IKSy/NbzQqBMBk3Sg/OGQz2trJ1RqWFfF6ORceXsHYJTZvYS4CD8P9neJE8o55ZQ7qTep+klFwfDh5jMm+u2OypjNaypguAZlxROMf7DKnEw9oGkX79elqjvFH7GjWvR/n+HGHj+Ex95RelbLeH1iIwRz90BZpTVLx5mkN/DkqwiNpEKOV9QbP+uEqS5Sc642A6rzkrchkt36gIWjbPXd0EC0GvVrmTfnEp5qpRniMfsk9hiU4DFh8oIWk7RVzKdfAQv1tUvYCY2glwK63PYQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=PW8XXwxR3mhUCuU75aK6Miub4PizW0qiJ7ZMU8vXgGU=; b=UmWTtG7mKHA2oclHT/T0VpULlHadQdMll1vR1qG09g/I+Sh4B3uRMIPJlvMGOOHumLuMOExmmw12IQUe+thf45mihppT0PyjZpX+HVeaPxiMazNqsZzM5rW39jwDvHoyRDJNmWA6FV1ufH52WjM4FTYNT+JKA5pUX2SdSqpw/2QvpHGxxqFHlzqZO8/abR47oQxFUXA042pDqTDGgdqfhB2FKQi0Md5HZA0JvrJfZ5tMOs9787WWvXLb4AwzsWGOacT2cu3VzS42U70ydBFn9y42363ykQLWIu4L0qCIxp6jlykoenFMqeQL1qXfJE4UeDgljZjq7BF6bU+Ndrcp9Q== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=PW8XXwxR3mhUCuU75aK6Miub4PizW0qiJ7ZMU8vXgGU=; b=idtju5wtfHrMeK8Cs7mxDacNpgYL0/dbxB6cSDqj1rha6XYwS9wxCGSwwkBr4vwftS/IdPO1P5HC5zK9aQ1reIso4CZ0j3V5UcaGDUtGE++1kQBlnbgspQNhAXlzFM1BnPCVH0ry0LrWO2Ozj2ED2DUIkCiXfOnBqPIG3L/2MIY= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C From: Stewart Hildebrand To: CC: Rahul Singh , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , "Oleksandr Tyshchenko" , Artem Mygaiev , Stewart Hildebrand , Stefano Stabellini Subject: [PATCH v1 1/2] xen/arm: pci: introduce PCI_PASSTHROUGH Kconfig option Date: Tue, 20 Jun 2023 11:29:20 -0400 Message-ID: <20230620152924.23622-1-stewart.hildebrand@amd.com> X-Mailer: git-send-email 2.41.0 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DM6NAM11FT069:EE_|IA1PR12MB8309:EE_ X-MS-Office365-Filtering-Correlation-Id: c8a0f858-f251-4168-2ba3-08db71a34c3b X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: a9ZLolILG/e8ssLp3McrLGM/BfpLnrgkwtg0FZC2qTxpewGGaF9uEH1iCzfqZZb8fMAvwL80fCbJy/XYxgYsNx8sgI6dWrQhTuqjRJzvQrNqIlt9FpSXBr3Af7JzVLHwpynbzNtD9jEmKLTDGFoTTNLoIDrqN4MU2cO5b74F7HCJbwjC8ciCaT5T0ARxmT+DDleRxLOdeRLGOfk/jrjvlILlVzK0vBK2zLeDVktWZszRiE5ODIhrxwcFzec3wyqg6GTY3FI4ftIp/f6h1EHQgodnmPysn3fJrYvi11+CN3OBoyaM7IyH42NIpKVA58bhDsciJ41lMTFOhHkOficIQhR9V6LJe1yDgmvdco21kD9LDNqwodE6nlSFgy42rpxO0uGbUYgfeQqPBSiUzL0O/V108rAXJFXu8oimRRAliJW3Tk8eF8ghLdEsyrmgYOBx67hY9XteGt9cU3kk2AttHsFZIDu3KqS+gY4BL6ISVI2y5qJCQabym8711Dvc9swLB7tFXuoQktHPKmvAhBDgsuK+DmfRaUQeR2yH1E07XVNS0ti0nDcxDaDW83GHkpUgysI0aAuYl1VBB5O9+QjLkbjlNYlcxpTXdq0ZqEapsyut9iJTVyAVe4AfPmaGIAOwA/wOvMsVcK/ST72zX80jcWK6iC8U2Iu2MgLFvKA8r2/nfvOrsFPL4ddoz1szFrDPQDXIh4Y/H88+kDv+CBGvik93sJ8EyE8WIYbxsgAvXs8vO3+VCZnpygeGEbjqvscRJLYSI+AGJuA7DhIRhc4glafRNs4GLXXPS5/r77fdpzU= X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(346002)(376002)(39860400002)(396003)(136003)(451199021)(36840700001)(40470700004)(46966006)(36860700001)(82310400005)(47076005)(966005)(478600001)(6666004)(336012)(54906003)(2616005)(1076003)(426003)(26005)(186003)(2906002)(5660300002)(44832011)(40460700003)(36756003)(70206006)(356005)(81166007)(70586007)(82740400003)(40480700001)(4326008)(316002)(8936002)(8676002)(41300700001)(86362001)(6916009)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Jun 2023 15:30:37.4673 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: c8a0f858-f251-4168-2ba3-08db71a34c3b X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com] X-MS-Exchange-CrossTenant-AuthSource: DM6NAM11FT069.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: IA1PR12MB8309 From: Rahul Singh Setting CONFIG_PCI_PASSTHROUGH=y will enable PCI passthrough on ARM, even though the feature is not yet complete in the current upstream codebase. The purpose of this is to make it easier to enable the necessary configs (HAS_PCI, HAS_VPCI) for testing and development of PCI passthrough on ARM. Since PCI passthrough on ARM is still work in progress at this time, make it depend on UNSUPPORTED. Signed-off-by: Rahul Singh Signed-off-by: Stewart Hildebrand Signed-off-by: Stefano Stabellini --- (cherry picked from commit 9a08f1f7ce28ec619640ba9ce11018bf443e9a0e from the downstream branch [1]) Changes from downstream to v1: * depends on ARM_64 (Stefano) * Don't select HAS_VPCI_GUEST_SUPPORT since this config option is not currently used in the upstream codebase. This will want to be re-added here once the vpci series [2] is merged. * Don't select ARM_SMMU_V3 since this option can already be selected independently. While PCI passthrough on ARM depends on an SMMU, it does not depend on a particular version or variant of an SMMU. * Don't select HAS_ITS since this option can already be selected independently. HAS_ITS may want to be added here once the MSI series [1] is merged. * Don't select LATE_HWDOM since this option is unrelated to PCI passthrough. [1] https://gitlab.com/xen-project/people/bmarquis/xen-arm-poc/-/commits/poc/pci-passthrough [2] https://lists.xenproject.org/archives/html/xen-devel/2023-06/msg00863.html --- xen/arch/arm/Kconfig | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/xen/arch/arm/Kconfig b/xen/arch/arm/Kconfig index 61e581b8c2b0..3d22cd26a68c 100644 --- a/xen/arch/arm/Kconfig +++ b/xen/arch/arm/Kconfig @@ -184,6 +184,15 @@ config STATIC_SHM help This option enables statically shared memory on a dom0less system. +config PCI_PASSTHROUGH + bool "PCI passthrough on ARM (UNSUPPORTED)" if UNSUPPORTED + depends on ARM_64 + select HAS_PCI + select HAS_VPCI + default n + help + PCI device passthrough on ARM (UNSUPPORTED) + endmenu menu "ARM errata workaround via the alternative framework" -- 2.41.0 From xen-devel-bounces@lists.xenproject.org Tue Jun 20 15:30:57 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 20 Jun 2023 15:30:57 +0000 Received: from list by lists.xenproject.org with outflank-mailman.551946.861737 (Exim 4.92) (envelope-from ) id 1qBdJp-0000cb-0x; Tue, 20 Jun 2023 15:30:57 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 551946.861737; Tue, 20 Jun 2023 15:30:57 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBdJo-0000cS-Ub; Tue, 20 Jun 2023 15:30:56 +0000 Received: by outflank-mailman (input) for mailman id 551946; Tue, 20 Jun 2023 15:30:56 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBdJo-0000bo-Ew for xen-devel@lists.xenproject.org; Tue, 20 Jun 2023 15:30:56 +0000 Received: from NAM11-CO1-obe.outbound.protection.outlook.com (mail-co1nam11on2061c.outbound.protection.outlook.com [2a01:111:f400:7eab::61c]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 70906b89-0f7f-11ee-8611-37d641c3527e; Tue, 20 Jun 2023 17:30:53 +0200 (CEST) Received: from PH8PR15CA0018.namprd15.prod.outlook.com (2603:10b6:510:2d2::11) by MN0PR12MB6001.namprd12.prod.outlook.com (2603:10b6:208:37d::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.21; Tue, 20 Jun 2023 15:30:48 +0000 Received: from SN1PEPF0002529E.namprd05.prod.outlook.com (2603:10b6:510:2d2:cafe::a8) by PH8PR15CA0018.outlook.office365.com (2603:10b6:510:2d2::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.21 via Frontend Transport; Tue, 20 Jun 2023 15:30:48 +0000 Received: from SATLEXMB03.amd.com (165.204.84.17) by SN1PEPF0002529E.mail.protection.outlook.com (10.167.242.5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6500.27 via Frontend Transport; Tue, 20 Jun 2023 15:30:48 +0000 Received: from SATLEXMB04.amd.com (10.181.40.145) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Tue, 20 Jun 2023 10:30:47 -0500 Received: from ubuntu.mshome.net (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server id 15.1.2507.23 via Frontend Transport; Tue, 20 Jun 2023 10:30:46 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 70906b89-0f7f-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=jrOe7Zu8Mz4y8cpDQq1xBIjsdFy9YrZcJuCKUcX5/nAjn8jUS5z62NlyCsmSwHssgZd8JiJf7FU+KLo79ZmfpghHq4iMLPRCmGLSHrLkwd/vWJhEzzCn+HYBygU8fBMICZph60sjTnwz4MZ7yTH78+rUmojFl9sh8BIRdw+efEmJ14XUQpxKZyH1sEskdW7DabC6XGG0R08Mv75yx9UA8oYgJzgRpLlErceHNZncTXGVhvnwMiRP7WjB5QAdug6GwNCXUspy8ArCQ008+Vl+f/w4BC2K6jEuDTgypLrVWw/GUebEHoNBKydAUuF8lteRmBVQ2VzOkGj1u0+6FBOSCQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=eG/NAeIcLSXOojnAynZKH1cfX+YLxTjSKfYEa0GZua8=; b=DQiL3LL8zYJW1nUo26nBaxCa3DaOK7a58wJr/uUoRWNX6Xb37QxlI2iooTo4FRFHXwxxdov2YaJtxWVJGuZXjAmQYYwmomo6Pcxkpl9HKK1mqGjCT1EaEvrE0dNTKBtuGtuuSDWT/jAMQt81HGr5egU4BxhBmURSDC5wTmzvFsYhwjOOgUADYy8eyor9A88UYIBlEOqxqq8wm8AG3AQANWjvmi2U1NK7zKACkeTt2SwUVGxUMah8dtMJmG4EsdXYadRU3P5lK+ti8IVnwau6lgx1uuUAlOH8n4SsSShbDrqq/ruwOJbHBQDaeTdshGruR+BeQXlfqibJp+cSdNwGdg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=eG/NAeIcLSXOojnAynZKH1cfX+YLxTjSKfYEa0GZua8=; b=Rc1/RDHvriBFs19jSZ9efUSN1NIqkZCRTAM3gnuh9+opZkBOW1a7iIzDz1lgkMQGuuH1mhhEd2PoficF/7TTftrGIkmygMrEHCnJ6U4HySEZFOm3XL+acQ0jjj+SUGH3MoNRuf+zoGlOyrdG+3lBqwP8mvWbgKQfVQTIbkw74tY= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C From: Stewart Hildebrand To: CC: Oleksandr Andrushchenko , "Stefano Stabellini" , Julien Grall , "Bertrand Marquis" , Volodymyr Babchuk , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Oleksandr Tyshchenko , Artem Mygaiev , Rahul Singh , Stewart Hildebrand Subject: [PATCH v1 2/2] xen/arm: Make has_vpci depend on CONFIG_HAS_VPCI Date: Tue, 20 Jun 2023 11:29:21 -0400 Message-ID: <20230620152924.23622-2-stewart.hildebrand@amd.com> X-Mailer: git-send-email 2.41.0 In-Reply-To: <20230620152924.23622-1-stewart.hildebrand@amd.com> References: <20230620152924.23622-1-stewart.hildebrand@amd.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SN1PEPF0002529E:EE_|MN0PR12MB6001:EE_ X-MS-Office365-Filtering-Correlation-Id: 951a647b-3210-4ca4-ece3-08db71a35297 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: dL69yDk0wJF33IAe2G/PrAsR7Y3g7JF9kZG8r6eUuEiZGSQ8hE/bzQ4+huWQyeIIxEOCEqCMZPKhVY5MrZXsGZ+Ty/KRjCMcg61p9Qo1gUurBcJJ0BFCSNx/O9Jmn2HZ8iLqQWtTCaQetjCYG6G3O4ZqDSbkcLe5BJrxBDD8mmYdv7fHgyKZLNrP/M13JdvYMVZ/Kt6UM1lBpfqgwxwSKijmWc4ZdWvCuV7NNwWnQdSR+XRVh1pnnEzXSddVJ2L0mzBb/M8dHMwhqEFDDejMVs1gp4h5lkqdDVdaUsDgOwuHp3qbX99KV92ZRPLsxOxClLsweyjk40FETbP1cRbbEVqRwqHfQVfFvEDWpI1xP0XmzjQhkyAd2eCsquK+dWg2x+EsNuaw6ncXuNK1qEafMRmo/IAnHmX7w1ENCOdpaNbA4J0LYsPeI0YskUMOtyWVmYi4RZMjjrF8tGyj7pVkoYtilknVvKQd5Zi4QDaaT1lpwjknd3+mbg32W/vuSVdAo7gymG/yXHtxEA3BM+/6ujGGGM37sy+0D1AFBJIeYATKacCqkojF8fHvaiaM1s55nclgHKI8i5ubGAZCd4RjxOdehQrSfi1z/NgSBiFtazI+9lipUWah4nmsLIkd4CjDMw0/67x7zXq/vFj8b9dwRzOxM6Uh9PzWCtd3ZM5aEp+ju5r5fNz7Tkw34EgmMspGLHT+LcwDCYLErQyPU8gSF1u9l0qiAWCTqaMBnpr//06MneK5kYk53G/7uXMoDVBdHpm6yQzsEI0NbYG6oFLoDZltrOy9iDqynhhBHWpA9qQ= X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(346002)(376002)(39860400002)(396003)(136003)(451199021)(36840700001)(40470700004)(46966006)(36860700001)(82310400005)(47076005)(966005)(478600001)(6666004)(83380400001)(336012)(54906003)(2616005)(1076003)(426003)(26005)(186003)(2906002)(5660300002)(7416002)(44832011)(40460700003)(36756003)(70206006)(356005)(81166007)(70586007)(82740400003)(40480700001)(4326008)(316002)(8936002)(8676002)(41300700001)(86362001)(6916009)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Jun 2023 15:30:48.1728 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 951a647b-3210-4ca4-ece3-08db71a35297 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com] X-MS-Exchange-CrossTenant-AuthSource: SN1PEPF0002529E.namprd05.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN0PR12MB6001 From: Oleksandr Andrushchenko VPCI is disabled on ARM. Make it depend on CONFIG_HAS_VPCI to test the PCI passthrough support. While here, remove the comment on the preceding line. Signed-off-by: Oleksandr Andrushchenko Signed-off-by: Rahul Singh Signed-off-by: Stewart Hildebrand --- There are two downstreams [1] [2] that have independently made a version this change, each with different Signed-off-by's. I simply picked one at random for the Author: field, and added both Signed-off-by lines. Please let me know if there are any objections. downstream->v1: * change to IS_ENABLED(CONFIG_HAS_VPCI) instead of hardcoded to true * remove the comment on the preceding line [1] https://gitlab.com/xen-project/people/bmarquis/xen-arm-poc/-/commit/27be1729ce8128dbe37275ce7946b2fbd2e5a382 [2] https://github.com/xen-troops/xen/commit/bf12185e6fb2e31db0d8e6ea9ccd8a02abadec17 --- xen/arch/arm/include/asm/domain.h | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/xen/arch/arm/include/asm/domain.h b/xen/arch/arm/include/asm/domain.h index 99e798ffff68..6e016b00bae1 100644 --- a/xen/arch/arm/include/asm/domain.h +++ b/xen/arch/arm/include/asm/domain.h @@ -298,8 +298,7 @@ static inline void arch_vcpu_block(struct vcpu *v) {} #define arch_vm_assist_valid_mask(d) (1UL << VMASST_TYPE_runstate_update_flag) -/* vPCI is not available on Arm */ -#define has_vpci(d) ({ (void)(d); false; }) +#define has_vpci(d) ({ (void)(d); IS_ENABLED(CONFIG_HAS_VPCI); }) struct arch_vcpu_io { struct instr_details dabt_instr; /* when the instruction is decoded */ -- 2.41.0 From xen-devel-bounces@lists.xenproject.org Tue Jun 20 15:37:49 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 20 Jun 2023 15:37:49 +0000 Received: from list by lists.xenproject.org with outflank-mailman.551956.861747 (Exim 4.92) (envelope-from ) id 1qBdQJ-0001XK-Pr; Tue, 20 Jun 2023 15:37:39 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 551956.861747; Tue, 20 Jun 2023 15:37:39 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBdQJ-0001XD-M1; Tue, 20 Jun 2023 15:37:39 +0000 Received: by outflank-mailman (input) for mailman id 551956; Tue, 20 Jun 2023 15:37:38 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBdQI-0001X3-OS; Tue, 20 Jun 2023 15:37:38 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBdQI-0001O6-Bw; Tue, 20 Jun 2023 15:37:38 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBdQH-00024B-S2; Tue, 20 Jun 2023 15:37:37 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qBdQH-0004Wo-RU; Tue, 20 Jun 2023 15:37:37 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=8RaEKD+kUJxwYxoHJZYA28TKdbHidl7Dj7uqms1xYlQ=; b=ab4P8kSDFmEaI+dQ38inxUBX+n FPg+nFOsItF8W3J1gf3S/IRVw6voxqkNFDy4hwEiGm+JghC0onqcs0Jk+o/1Vb0CjgoLxx8MkUA8+ nr+tnFM7PZHK5JkWmly9nmasm2sz9TNENlPrQKdLgLR3LIi4BOteOL7mV2VhcL35+CXk=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable test] 181513: trouble: blocked/broken/fail/pass X-Osstest-Failures: xen-unstable:build-armhf::broken:regression xen-unstable:build-armhf:host-install(4):broken:regression xen-unstable:test-armhf-armhf-xl-vhd::broken:regression xen-unstable:test-armhf-armhf-xl-arndale::broken:regression xen-unstable:test-armhf-armhf-xl-credit2::broken:regression xen-unstable:test-armhf-armhf-xl-rtds::broken:regression xen-unstable:test-armhf-armhf-xl::broken:regression xen-unstable:test-armhf-armhf-xl-credit1::broken:regression xen-unstable:test-armhf-armhf-xl-multivcpu::broken:regression xen-unstable:build-armhf-libvirt::broken:regression xen-unstable:build-armhf-libvirt:host-install(4):broken:regression xen-unstable:test-armhf-armhf-xl-arndale:host-install(5):broken:heisenbug xen-unstable:test-armhf-armhf-xl-rtds:host-install(5):broken:heisenbug xen-unstable:test-armhf-armhf-xl-credit1:host-install(5):broken:heisenbug xen-unstable:test-armhf-armhf-xl-vhd:host-install(5):broken:heisenbug xen-unstable:test-armhf-armhf-xl-multivcpu:host-install(5):broken:heisenbug xen-unstable:test-armhf-armhf-xl:host-install(5):broken:heisenbug xen-unstable:test-armhf-armhf-xl-credit2:host-install(5):broken:heisenbug xen-unstable:test-amd64-i386-xl-qemuu-ovmf-amd64:xen-install:fail:heisenbug xen-unstable:test-amd64-amd64-libvirt-vhd:guest-start/debian.repeat:fail:heisenbug xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:windows-install:fail:heisenbug xen-unstable:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:xen-install:fail:heisenbug xen-unstable:build-armhf-libvirt:build-check(1):blocked:nonblocking xen-unstable:test-armhf-armhf-examine:build-check(1):blocked:nonblocking xen-unstable:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking xen-unstable:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking xen-unstable:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking xen-unstable:test-armhf-armhf-xl:build-check(1):blocked:nonblocking xen-unstable:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking xen-unstable:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking xen-unstable:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking xen-unstable:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking xen-unstable:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking xen-unstable:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:xen-install:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: xen=7a25a1501ca941c3e01b0c4e624ace05417f1587 X-Osstest-Versions-That: xen=7a25a1501ca941c3e01b0c4e624ace05417f1587 From: osstest service owner Date: Tue, 20 Jun 2023 15:37:37 +0000 flight 181513 xen-unstable real [real] http://logs.test-lab.xenproject.org/osstest/logs/181513/ Failures and problems with tests :-( Tests which did not succeed and are blocking, including tests which could not be run: build-armhf broken build-armhf 4 host-install(4) broken REGR. vs. 181498 test-armhf-armhf-xl-vhd broken in 181498 test-armhf-armhf-xl-arndale broken in 181498 test-armhf-armhf-xl-credit2 broken in 181498 test-armhf-armhf-xl-rtds broken in 181498 test-armhf-armhf-xl broken in 181498 test-armhf-armhf-xl-credit1 broken in 181498 test-armhf-armhf-xl-multivcpu broken in 181498 build-armhf-libvirt broken in 181498 build-armhf-libvirt 4 host-install(4) broken in 181498 REGR. vs. 181481 Tests which are failing intermittently (not blocking): test-armhf-armhf-xl-arndale 5 host-install(5) broken in 181498 pass in 181481 test-armhf-armhf-xl-rtds 5 host-install(5) broken in 181498 pass in 181481 test-armhf-armhf-xl-credit1 5 host-install(5) broken in 181498 pass in 181481 test-armhf-armhf-xl-vhd 5 host-install(5) broken in 181498 pass in 181481 test-armhf-armhf-xl-multivcpu 5 host-install(5) broken in 181498 pass in 181481 test-armhf-armhf-xl 5 host-install(5) broken in 181498 pass in 181481 test-armhf-armhf-xl-credit2 5 host-install(5) broken in 181498 pass in 181481 test-amd64-i386-xl-qemuu-ovmf-amd64 7 xen-install fail in 181498 pass in 181513 test-amd64-amd64-libvirt-vhd 19 guest-start/debian.repeat fail in 181498 pass in 181513 test-amd64-amd64-xl-qemuu-win7-amd64 12 windows-install fail in 181498 pass in 181513 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 7 xen-install fail pass in 181498 Tests which did not succeed, but are not blocking: build-armhf-libvirt 1 build-check(1) blocked n/a test-armhf-armhf-examine 1 build-check(1) blocked n/a test-armhf-armhf-libvirt 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-qcow2 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-raw 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a test-armhf-armhf-xl-arndale 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit1 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-multivcpu 1 build-check(1) blocked n/a test-armhf-armhf-xl-rtds 1 build-check(1) blocked n/a test-armhf-armhf-xl-vhd 1 build-check(1) blocked n/a test-armhf-armhf-libvirt 16 saverestore-support-check fail in 181481 blocked in 181513 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail in 181481 blocked in 181513 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail in 181481 blocked in 181513 test-armhf-armhf-xl-arndale 15 migrate-support-check fail in 181481 never pass test-armhf-armhf-xl-arndale 16 saverestore-support-check fail in 181481 never pass test-armhf-armhf-libvirt 15 migrate-support-check fail in 181481 never pass test-armhf-armhf-libvirt-raw 14 migrate-support-check fail in 181481 never pass test-armhf-armhf-xl-rtds 15 migrate-support-check fail in 181481 never pass test-armhf-armhf-xl-rtds 16 saverestore-support-check fail in 181481 never pass test-armhf-armhf-xl-vhd 14 migrate-support-check fail in 181481 never pass test-armhf-armhf-xl-vhd 15 saverestore-support-check fail in 181481 never pass test-armhf-armhf-xl 15 migrate-support-check fail in 181481 never pass test-armhf-armhf-xl 16 saverestore-support-check fail in 181481 never pass test-armhf-armhf-xl-multivcpu 15 migrate-support-check fail in 181481 never pass test-armhf-armhf-xl-multivcpu 16 saverestore-support-check fail in 181481 never pass test-armhf-armhf-xl-credit1 15 migrate-support-check fail in 181481 never pass test-armhf-armhf-xl-credit1 16 saverestore-support-check fail in 181481 never pass test-armhf-armhf-xl-credit2 15 migrate-support-check fail in 181481 never pass test-armhf-armhf-xl-credit2 16 saverestore-support-check fail in 181481 never pass test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail in 181481 never pass test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 181486 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 7 xen-install fail like 181498 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 181498 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop fail like 181498 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 181498 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 181498 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop fail like 181498 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop fail like 181498 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 181498 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop fail like 181498 test-amd64-i386-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-i386-xl-pvshim 14 guest-start fail never pass test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-i386-libvirt 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-i386-libvirt-raw 14 migrate-support-check fail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass version targeted for testing: xen 7a25a1501ca941c3e01b0c4e624ace05417f1587 baseline version: xen 7a25a1501ca941c3e01b0c4e624ace05417f1587 Last test of basis 181513 2023-06-20 01:52:05 Z 0 days Testing same since (not found) 0 attempts jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64-xtf pass build-amd64 pass build-arm64 pass build-armhf broken build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt blocked build-i386-libvirt pass build-amd64-prev pass build-i386-prev pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-xtf-amd64-amd64-1 pass test-xtf-amd64-amd64-2 pass test-xtf-amd64-amd64-3 pass test-xtf-amd64-amd64-4 pass test-xtf-amd64-amd64-5 pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl blocked test-amd64-i386-xl pass test-amd64-coresched-i386-xl pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-i386-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-i386-xl-qemuu-debianhvm-i386-xsm fail test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-i386-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-i386-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-i386-qemut-rhel6hvm-amd pass test-amd64-i386-qemuu-rhel6hvm-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-i386-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-freebsd10-amd64 pass test-amd64-amd64-qemuu-freebsd11-amd64 pass test-amd64-amd64-qemuu-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-i386-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-i386-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-i386-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-amd64-i386-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale blocked test-amd64-amd64-examine-bios pass test-amd64-i386-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 blocked test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 blocked test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine blocked test-amd64-i386-examine pass test-amd64-i386-freebsd10-i386 pass test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-i386-qemut-rhel6hvm-intel pass test-amd64-i386-qemuu-rhel6hvm-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt blocked test-amd64-i386-libvirt pass test-amd64-amd64-livepatch pass test-amd64-i386-livepatch pass test-amd64-amd64-migrupgrade pass test-amd64-i386-migrupgrade pass test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu blocked test-amd64-amd64-pair pass test-amd64-i386-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-i386-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-i386-xl-pvshim fail test-amd64-amd64-pygrub pass test-armhf-armhf-libvirt-qcow2 blocked test-amd64-amd64-xl-qcow2 pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw blocked test-amd64-i386-libvirt-raw pass test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow fail test-amd64-amd64-xl-shadow pass test-amd64-i386-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-i386-examine-uefi pass test-amd64-amd64-libvirt-vhd pass test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd blocked test-amd64-i386-xl-vhd pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary broken-job build-armhf broken broken-step build-armhf host-install(4) broken-job test-armhf-armhf-xl-vhd broken broken-job test-armhf-armhf-xl-arndale broken broken-job test-armhf-armhf-xl-credit2 broken broken-job test-armhf-armhf-xl-rtds broken broken-job test-armhf-armhf-xl broken broken-job test-armhf-armhf-xl-credit1 broken broken-job test-armhf-armhf-xl-multivcpu broken broken-job build-armhf-libvirt broken Published tested tree is already up to date. From xen-devel-bounces@lists.xenproject.org Tue Jun 20 16:00:03 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 20 Jun 2023 16:00:03 +0000 Received: from list by lists.xenproject.org with outflank-mailman.551965.861756 (Exim 4.92) (envelope-from ) id 1qBdls-000457-Om; Tue, 20 Jun 2023 15:59:56 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 551965.861756; Tue, 20 Jun 2023 15:59:56 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBdls-000450-Lw; Tue, 20 Jun 2023 15:59:56 +0000 Received: by outflank-mailman (input) for mailman id 551965; Tue, 20 Jun 2023 15:59:55 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBdlr-00044s-3K for xen-devel@lists.xenproject.org; Tue, 20 Jun 2023 15:59:55 +0000 Received: from esa4.hc3370-68.iphmx.com (esa4.hc3370-68.iphmx.com [216.71.155.144]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 7cef9af7-0f83-11ee-8611-37d641c3527e; Tue, 20 Jun 2023 17:59:52 +0200 (CEST) Received: from mail-bn7nam10lp2106.outbound.protection.outlook.com (HELO NAM10-BN7-obe.outbound.protection.outlook.com) ([104.47.70.106]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 20 Jun 2023 11:59:42 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by MW4PR03MB6538.namprd03.prod.outlook.com (2603:10b6:303:125::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.21; Tue, 20 Jun 2023 15:59:39 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606%4]) with mapi id 15.20.6500.036; Tue, 20 Jun 2023 15:59:39 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 7cef9af7-0f83-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1687276792; h=message-id:date:from:subject:to:cc:references: in-reply-to:content-transfer-encoding:mime-version; bh=ssWV2g1UtckrOS1dluVqDASrECfTTl6+39O4Y8+cmfY=; b=UIAl24IvhqWnOoWmc+TRYzcQyTKQ9FcWsUzwe/iG7hkmnwaWmUoO9RRA IQWyGkACm8ViMwqRN77NNAI6V9GD3omGSrhhiw4Kygg2VrP8d5eyWmzD5 xrOH13Yx9pFKs+RIolKht3/4BQJdcA/KGaR8YJgI/g/XqWPdpfSwXzjc1 4=; X-IronPort-RemoteIP: 104.47.70.106 X-IronPort-MID: 116042651 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:JEdYo6AZAZbN7hVW/xXiw5YqxClBgxIJ4kV8jS/XYbTApG5z0TwFz zQbWj/UP/+KZTf1LtknboS0oUhXv5GDm9BiQQY4rX1jcSlH+JHPbTi7wuUcHAvJd5GeExg3h yk6QoOdRCzhZiaE/n9BCpC48T8nk/nOHuGmYAL9EngZbRd+Tys8gg5Ulec8g4p56fC0GArIs t7pyyHlEAbNNwVcbCRMs8pvlDs15K6p4G1C5gRkDRx2lAS2e0c9Xcp3yZ6ZdxMUcqEMdsamS uDKyq2O/2+x13/B3fv8z94X2mVTKlLjFVDmZkh+AsBOsTAbzsAG6Y4pNeJ0VKtio27hc+ada jl6ncfYpQ8BZsUgkQmGOvVSO3kW0aZuoNcrLZUj2CA6IoKvn3bEmp1T4E8K0YIwor1uE31Oy OMjcC0EVC3awN3smb+9Rbw57igjBJGD0II3nFhFlGmcJ9B5BJfJTuPN+MNS2yo2ioZWB/HCa sEFaD1pKhPdfxlIPVRRA5U79AuqriCnL3sE9xTK/exuuza7IA9ZidABNPL8fNCQSNoTtUGfv m/cpEzyAw0ANczZwj2Amp6prraWw3unAtxPTdVU8NZ62FTD1FU6NSFLal++q9i+gw2/fct2f hl8Fi0G6PJaGFaQZsnwWVi0rWCJujYYWsFMCKsq5QeV0K3W7g2FQG8eQVZpd9gOpMIwAzsw2 TehndzzAid0mKaIUn/b/bCRxRuwMyUIKW4JZQcfUBAIpdLkpekOYgnnS99iFOu/iILzEDSpm zSS9nFm2fMUkNIB0Li98RbfmTWwq5PVTwkzoALKQmai6QA/b4mgD2C11WXmAT97BN7xZjG8U LIswaByMMhm4UmxqRGw IronPort-HdrOrdr: A9a23:0SpOo6qu71PzpBTkzYvAGncaV5rveYIsimQD101hICG9Evb0qy nOpoV/6faQslwssR4b9uxoVJPvfZq+z+8W3WByB9eftWDd0QPFEGgL1+DfKlbbak7DH4BmtJ uJc8JFeafN5VoRt7eG3OFveexQvOVu88qT9JjjJ28Gd3APV0n5hT0JcjpyFCdNNW57LKt8Lr WwzOxdqQGtfHwGB/7LfUXsD4D41rv2fIuNW29+OyIa X-Talos-CUID: 9a23:sfgnnGyQMC2IGgTwK9RGBgVMQdk3bn3g00yIPkaCND8ud+fMRFmfrfY= X-Talos-MUID: =?us-ascii?q?9a23=3AK7mzTQ9kYa3nnMLQlk9Hb/eQf9cw6vS8MWkwrcg?= =?us-ascii?q?5v8yOFCt5eDa7lR3iFw=3D=3D?= X-IronPort-AV: E=Sophos;i="6.00,257,1681185600"; d="scan'208";a="116042651" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=SpcuEoFEO6XVYw3irgb+inmJa8a8aRNKwoj/WW3uJBh04EeQUkdRN+gvF4LiynFuGDYAhQcb37JHFceuo4+xG+ICE6UDhz7UrkKX5R+mXIiOsYQ1cpGv+BLxCdgD8+eVmrnxhenr+5qJ7Hxvg/yXqhrstyiMJCfeOAjRc3l9zX7HvutIwJcMhZN2QktAHdLNYdeBND38iyzc3ir4bB/ziu/lDxR5IFHhtxt/y+gmGRChjDWJ0wG5Djw4tvkVO0MmN5R05/CjgAsTvQSwk3VrHG232zWf5STptKxiAmLNy+XC3Ejv9Z9lbV9/Wn7MMPLAFrRtmc6MBSOKVVXDWao9yA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=0CtP1u3G07vwMYdW7dZwpdgYgQLlrGQbIBAy2xA8514=; b=O4aHQcWyu2/85kVGC3MUUEyy/gULa7Um9SAnuKSqPeZzpZZvNEwTYB5rUWTBUHDknz4eUjiQFw68ITNIIISxSoQzRyGnDZzlWqnp4JRrfQkh7qOSK1aJ68z5qIZGBYMQnDIqT2Xn4q4iAlA3Y6K3L6HK1Wg3BgMlVXkUXMxiED6iL4tRvdOVS8vWZ2Z8YWyXcpc9ASxGA2EeggC8Kwn9uqTC4BHC+tqj6Bt1PvOXuS8guDamO5WVGu+SkMKnbb6r/bxWEbe9ApzPwoYieME2HWeG1XWTsevKnoViExVsL0evUFbFz+BwXIZoufL4ChnH+H32iFNis3CMX5kZCUZwAw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=0CtP1u3G07vwMYdW7dZwpdgYgQLlrGQbIBAy2xA8514=; b=EG4bDhx1R7vTm1Vv5Sk2eb5dL4EJosX6hMxS3BLzl3f+pIyedzxM3Doi8h9eAamoBfk3+SlAyZRB5P6iul7z1z+37+FafShXIExPLmYe0/Q7nrQEkEXgFRFClXqCmM2cVAS0IEcTqwhNIIC/+6qQADdolgX4QSfWtevThMV7KO8= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: <18453ac3-b225-b73f-116a-18622ed178a1@citrix.com> Date: Tue, 20 Jun 2023 16:59:32 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 From: Andrew Cooper Subject: Re: [PATCH 00/13] lib{xc,xl}: support for guest MSR features Content-Language: en-GB To: Roger Pau Monne , xen-devel@lists.xenproject.org Cc: Wei Liu , Anthony PERARD , Juergen Gross , Jan Beulich References: <20230616131019.11476-1-roger.pau@citrix.com> In-Reply-To: <20230616131019.11476-1-roger.pau@citrix.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO3P123CA0031.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:388::10) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|MW4PR03MB6538:EE_ X-MS-Office365-Filtering-Correlation-Id: d2e83b83-c25a-45e7-ccf3-08db71a759e9 X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: uWS3PC6RmKGzmNsAnyJSqlvgcv+LjtXdYyiVlv0SINALkFjt3/OX1viZAdLN/Wef9lTxat/ZzzAsNw2EjHOMlU63RFsLjW0B9/0M8qf+HYWxSMVGbBsEtvY+HYtoVltuadGnNH+WIyU6xgWETSobILuVeWNGgjjUX6qErMXFFucREU6ME4zxd8bOgIaCA26egwOwRtdnO1NZm2sHKLQpXuA1xOFO9mNakplglMtCNKN3FBDMPf5sZRVgi7bov2LUCGG05bacXN4L7BZpiAUpq6De+SW/JbEs68TJcp/WYEb+hqH81AN/wTOAC6+WDWzpbVa+A3X5k/x0ocYcvv7OWIytWDjZTAiO7MPkUWxVgm826ioLdF3MQOxczT4ZiWd6UNsUG2m4CVCWAGp52FkVcxqnKxxXJSvCb8kF5m/025Ic9QdKkJU1fNUfWfg34QXsDQykknegW6RAc8V1UkhL+zlGNJRoMhlGqyHYU+Bmsh5CksF/eK4Vc4OlRnevswb9KY8KD5KAUXAQEPBn4VCtCJV/gOCy9U7KjM0HjAef/vgmyXGBTr7RM14aueUJYAluJaccTtbxiFqcshXK8PQSaNq5HEqCFf3njoaZ2D6md40/k1EiaOT3CYCcXhb4P5DrcF7A76h9z9jVBT5QvLVfcg== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(346002)(376002)(366004)(396003)(39860400002)(136003)(451199021)(6486002)(478600001)(2616005)(6666004)(83380400001)(54906003)(6512007)(53546011)(26005)(6506007)(186003)(2906002)(5660300002)(36756003)(38100700002)(4326008)(66946007)(31696002)(316002)(86362001)(82960400001)(8936002)(8676002)(41300700001)(66476007)(66556008)(31686004)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?RURPMWRPSkNaYlRuVFFQK0NDWjNXeTRlb2ZMdGJSMjRHdnFuMmtWTHAwRTFS?= =?utf-8?B?OWgvK0tCKzdoWnY0MFpKYXdqRjNYUFo4Ui9KeU5WUW5CTk1INUhNb1M2cGJT?= =?utf-8?B?bWZPb2p4aUNNaldJNGNHazFDTGUrc0NqWjVqcGhVVXNpM0xBQVUrNEdXYmRJ?= =?utf-8?B?Ni94UGdaK2hwQUZXMitqdzBtNkpRNC9PZ0lzSjQxdHpqQzRRcGVzaDNaRDFO?= =?utf-8?B?MDBlQ0l0L1NVK3hNZmxVZ0IzTVJvSWNReDBacTNQT090cVFqQkUwbWRKanE1?= =?utf-8?B?MWVPQm1FcHZ2TnNxYXhxdkFDYU9lUVFPSXBVRXBUTC9IWE4zSWxpd09CWHJp?= =?utf-8?B?Uno0UENLOGZ5ZmQzSUZnNHlhVjNZeFAyTGZ3VlRyZEt5Y1RnNnJGcW1UcnN0?= =?utf-8?B?TWJYQlgzMGRDMmpmQXFFVHhwSjQrc2VSQ0doSFZFYTd4WTdvOHhKQUdJOTQv?= =?utf-8?B?VCt2d0pEbHIxUzRGN2N3bzNNdHVWRmcvZGI3VE9BOVF0OHczdzFrUkhtQkRl?= =?utf-8?B?cDBuVXIvcVhGM2Qwa1BxemVvVHVBVXlLeEZsZUEyK0dCbGE2MFN4cFJyalNF?= =?utf-8?B?bW9GYXFsOS9nbmxxNlZiNDNET0ZRLzROQkJjeUJLd1VYNUhvWGZqbXVKYldv?= =?utf-8?B?bm1peE1xcGNscFZsVnBpbEMvWTlhcHFYMk9walBvMllUcnlqQXBRQzZ5VDZM?= =?utf-8?B?bm5ZTXpUcko3M1M3ZEsxVEw0ai9QYUJLUlZkR3FLWnZvOFNwYjdYSUtHSndG?= =?utf-8?B?a1dScGdwcUpTR3RIeFRFWGhPVHljeCtuVUtNM2hjVU9tQjRkVmgyejlXampM?= =?utf-8?B?NDJYUml4NldCc3R2UzltWHZzaXlVZ3VoWGR4U0NWQURjZUxRWWRsVXh3c0F0?= =?utf-8?B?UWxyaUMzWnVqbG04blRMdXpyNlJ5OUlmQkJOSXlYQ2kwelptYjVuZmhzbFZy?= =?utf-8?B?MWo4dm5wcFc5ZXhEaFVoZzNWRFltdTZsa05PelQwMFFYSWR1UTRhN2pobGZJ?= =?utf-8?B?bEtad1ZtZXdzSndhcmFuTTQwK3J3aWx6M2dTMmtTWDJEbWVoMXZVZ05PNmxy?= =?utf-8?B?ckdMZlRkeXdLOWlPclFibFBaSktJcG5sb0VRNHdrM2ovMGhZOGp3NUdBTWN2?= =?utf-8?B?cWFnSzV2amFSU1hIc1p0V3VjM01vVFNHa3JFOVlmbHRWa0hWOFNtZk5LdWt3?= =?utf-8?B?N1VHd01iM2EyVEJteFp6RE0wemZSYTVEMWxiL1NFUjErR1VuOWE2YjhjYVFO?= =?utf-8?B?K253b3ZEUkRZbzlZL0NuTE0vVTNoVDJJcDhndnJpQVNkdzlnakJLRzFmR0s2?= =?utf-8?B?VUp6U1hPMk1yTlNBSE9kRmg3amVUclFRZVdQS25OcDlWbUhPU0JTMTRBRzFx?= =?utf-8?B?MENrdC9KWmFVUnozRkVKNlhDOUlYZnhlZlVqbWtFYzcyMXZYWDM2VmlDUThQ?= =?utf-8?B?WTAzNWxjVWRBL3daQldYU2dBQ0RnTE43ZEw4MUtHMkhVdUhnT1ZTbktreGNT?= =?utf-8?B?WHpTOXdMOHVpVmx1VzltYnJiYVE0SytQVkxQZzRBTW43dTBMWS9FUnplNkVx?= =?utf-8?B?YWR4ZlVuTS85bUF6ZGtvNVZnM0NrUTV5MU4xMER4Ri92ZUFIQWRsbmVIWmZZ?= =?utf-8?B?clJyNVdCaWk2K0IvVkc3alFvWVgvYytvaVpGL3N0TzdPM1VQV1Y1MkloRTdv?= =?utf-8?B?N2hZbkdlRk16SXhOOTF5UEs3a0IwMU5BbXpGN1lFbE80bzJVNUZuSlpTTTAx?= =?utf-8?B?MGRTZHRBNTV0dXY4dDljazEwbjM2eFVTcDBrOFpIaEpBZlFoY2Q4QStMb1ZW?= =?utf-8?B?T1NURmtadUphdGg2YjBoTlk1MmthOG40MWNNRndZS3NURG5xUjBZTEhDemNZ?= =?utf-8?B?akh2dGF1REE4OTdaKzlFbHBHbVpQV1IxRnMvbGxGQVBvWTN2WmdzVmlZN2JO?= =?utf-8?B?T0t1WWVHREJZUy9wVHFLU2FJMnp5eUhUYm5VTC9WN3gzMkdrUlhMUDdqZEpo?= =?utf-8?B?VUw4SUJLT0FCZ2w5Tk9ianZJYXRyUE9YMDB0YzBFNFhVK2w1TjFMNWVTQ2x5?= =?utf-8?B?R24rZE83SGR6Wmt2TGpHWDZwQU4yb3RKNktOZEtDd0h6QmY5RDB0djJIY0xo?= =?utf-8?B?RWNvYi9rblgzWS9aZmRJRU9mblNEeHhGUkd2NnE2YmtxL09oRzZXZnRuVURT?= =?utf-8?B?SGc9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: iwJiS+gM6/fSNTGiWe5y9Negpk6Y/OrTRXuMhvv7lzroNj7k+IscD/F5Jh3OHJ+TG+9tDx9jvEpXYKXfI6QvAvWd7aCaoj9dKkaX0nSxHCzh3Y5TAlcNXiTe5X/yzZrgEsajWgZMIAsg271w436Hp7TTS5jb8ngLvXvErPmgJyK0Lb8hSIqNyyarViByvyYZk/Ha95IFLCaFwcocdLpPqO/eSWxiSzhrWcqEmfJ1Hy9T7++FVaozsJB8mEdKFQz8qlbEd/k0YVP9KdxwTw+S/oIJETeTWYHp3cWphv1S5MSaWexvkcIj0r3/r+tclT9ZzDR0yi9biX2+QMSk9GhrxJRZ3vlMsEUpwPgsFmP3mqm8G92vrG0755mNUWxPfUfFQSZKqiHYEeLqCOJw22m74YGh9zL10dmBZ0wVgOFV/Z48+n5HRuONIegKeo/KStW+zWv/rVo8K8fv02No5V+oLKq/WochIfwYJQC2fkg1np+56zQA6gDkCCLSkKACaDbUR1zO+aTHr2jz9DFiJGhDPK4FsWrTa+1aV0K+6cFr5HhjmvFbQblK8PyqLlYioTJccP/bQTLqW0qaffaKjpEdFG4EyeXd0Pu0d0alS2gyI7WyQE83AUyXe8dihNa9zQQvK2m/19C2SWaaFqhPxG0DriBhsBEuARZmBnaegEhemUMMXjMsHbqu+6qn5/8dYDmHaEA5nzNTh7Eq1mC2ejTxYFBDSzqdn5yV2zZsIZIt+rsSJs9IWl46GehAIiDG0dZ1hw6yiEPQA5TrREjNPKwUkSrTXV8dCohmAJwd38US+aka5oIeOoxe0PdPdNTxcp+F X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: d2e83b83-c25a-45e7-ccf3-08db71a759e9 X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Jun 2023 15:59:38.8880 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: mw7DjCJi7zd57AxrUEEjONVRhYV2CiCnvheB/5yWowdgcntTZZ2MqNilv3Zfz91Z9e+AFuwmUomto4KFJ3hHAunPNYJJdSUAvlh8K6CaVRU= X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW4PR03MB6538 On 16/06/2023 2:10 pm, Roger Pau Monne wrote: > Hello, > > The following series adds support for handling guest MSR features as > defined in arch-x86/cpufeatureset.h. > > The end result is the user being able to use such features with the > xl.cfg(5) cpuid option. This also involves adding support to all the > underlying layers, so both libxl and libxc also get new functionality in > order to properly parse those. > > In order for such support to be as transparent as possible for existing > users of libxl, both libxl_cpuid_policy_list and libxl_cpuid_policy are > modified, so that the libxl_cpuid_policy_list type is no longer an array > anymore, and libxl_cpuid_policy is converted into a structure with > two fields to hold both a CPUID and MSR arrays. It's my thinking that > current users of libxl had no business in poking at > libxl_cpuid_policy_list, since the underlying type (struct > xc_xend_cpuid) is opaque in that context. Also the format of the array > (with a terminating empty element) is not documented in the public > headers. > > Some of the patches had been salvaged from a previous series of mine to > introduce better cpu_policy management support in libxc and libxl, and > hence contain some version notes about changes, or are already reviewed. > > Thanks, Roger. > > Roger Pau Monne (13): > libs/guest: simplify xc_cpuid_apply_policy() > libx86: introduce helper to fetch cpuid leaf > libs/guest: allow fetching a specific CPUID leaf from a cpu policy > libx86: introduce helper to fetch msr entry > libs/guest: allow fetching a specific MSR entry from a cpu policy I'm somewhat loath to introduce wrappers like this to structures which intentionally have O(1) lookup by index. These only exist (AFAICT) to let libxl poke inside an opaque object, but I don't see them used.  Furthermore, I'm not sure that extending test-cpu-policy is much use - the existing {,de}serialise tests already exercise the logic, as you factored it out of said logic. > libs/guest: replace usage of host featureset in xc_cpuid_apply_policy() This looks fine, but it's fairly dependent on patch 1 which needs a rearrangement. > libs/guest: rework xc_cpuid_xend_policy Here, the xend is about the format of the argument, so is important to stay as part of the name. Furthermore, this helper is deliberately not exported from xg_cpuid_x86.c such that xc_cpuid_apply_policy() is the single interface to use, and AFAICT that's still the case after the series too. > libs/guest: introduce support for setting guest MSRs > libxl: change the type of libxl_cpuid_policy_list > libxl: introduce MSR data in libxl_cpuid_policy > libxl: split logic to parse user provided CPUID features > libxl: use the cpuid feature names from cpufeatureset.h > libxl: add support for parsing MSR features So by the end here, we're still using the cpuid="host:..." format, using enumerations from cpufeatureset.h, with a brand new MSR type, and a hand-coded mapping between a featureset number and a register? I think this would be far more simple it it just used the featureset bitmap which already exists in xc_cpuid_apply_policy(), rather than borrowing the featureset names and coding around an interface that already exists. I'm wary about the names themselves.  I already dislike that cpufeatureset is in public/ but this is exposing it more than previously.  We have previously elected to tweak naming in cpufeatureset, and there's currently a mess with feature naming where Intel and AMD have the same named bit in different positions.  IMO we need to retain this flexibility - perhaps we can do that by just extending libxl's alias lists if we decide we need to change the names in Xen. ~Andrew From xen-devel-bounces@lists.xenproject.org Tue Jun 20 16:41:22 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 20 Jun 2023 16:41:22 +0000 Received: from list by lists.xenproject.org with outflank-mailman.551971.861767 (Exim 4.92) (envelope-from ) id 1qBePl-0001NS-QP; Tue, 20 Jun 2023 16:41:09 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 551971.861767; Tue, 20 Jun 2023 16:41:09 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBePl-0001NL-MA; Tue, 20 Jun 2023 16:41:09 +0000 Received: by outflank-mailman (input) for mailman id 551971; Tue, 20 Jun 2023 16:41:08 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBePk-0001NF-Ld for xen-devel@lists.xenproject.org; Tue, 20 Jun 2023 16:41:08 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBePk-0003TZ-7A; Tue, 20 Jun 2023 16:41:08 +0000 Received: from 54-240-197-239.amazon.com ([54.240.197.239] helo=[192.168.9.99]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qBePk-0000LI-0v; Tue, 20 Jun 2023 16:41:08 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=48AOlFeyJSvA8GLZo29vA09KSXtSrIqBIW/0s0IDOCc=; b=zhYl1lqsLVhLZ3Bwkb1J8OMRFc M52rdgPcbnZO8IGnjf8vpEy/JQrGDcYOaDN51lNuilO8XICVJenjaFMeqCci6xZXn5KtQP2GjhlLA 9U/ERZiLqyjBJ+TRV8iZ62eQF1hOTySBjm62ukcF18UjdMdFuNt6e+nRjzrCSdB9gen0=; Message-ID: Date: Tue, 20 Jun 2023 17:41:06 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v1] xen/arm: arm32: Add support to identify the Cortex-R52 processor Content-Language: en-US To: Ayan Kumar Halder , xen-devel@lists.xenproject.org Cc: sstabellini@kernel.org, stefano.stabellini@amd.com, Volodymyr_Babchuk@epam.com, bertrand.marquis@arm.com References: <20230620151736.3720850-1-ayan.kumar.halder@amd.com> From: Julien Grall In-Reply-To: <20230620151736.3720850-1-ayan.kumar.halder@amd.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi, On 20/06/2023 16:17, Ayan Kumar Halder wrote: > Add a special configuration (CONFIG_AARCH32_V8R) to setup the Cortex-R52 > specifics. > > Cortex-R52 is an Arm-V8R AArch32 processor. > > Refer ARM DDI 0487I.a ID081822, G8-9647, G8.2.112 MIDR, > bits[31:24] = 0x41 , Arm Ltd > bits[23:20] = Implementation defined > bits[19:16] = 0xf , Arch features are individually identified > bits[15:4] = Implementation defined > bits[3:0] = Implementation defined > > Thus, the processor id is 0x410f0000 and the processor id mask is > 0xff0f0000 > > Also, there is no special initialization required for R52. Are you saying that Xen upstream + this patch will boot on Cortex-R52? > > Signed-off-by: Ayan Kumar Halder > --- > xen/arch/arm/Kconfig | 7 +++++++ > xen/arch/arm/arm32/Makefile | 1 + > xen/arch/arm/arm32/proc-v8.S | 32 ++++++++++++++++++++++++++++++++ > 3 files changed, 40 insertions(+) > create mode 100644 xen/arch/arm/arm32/proc-v8.S > > diff --git a/xen/arch/arm/Kconfig b/xen/arch/arm/Kconfig > index 61e581b8c2..c45753a2dd 100644 > --- a/xen/arch/arm/Kconfig > +++ b/xen/arch/arm/Kconfig > @@ -3,6 +3,13 @@ config ARM_32 > depends on "$(ARCH)" = "arm32" > select ARCH_MAP_DOMAIN_PAGE > > +config AARCH32_V8R > + bool "AArch32 Arm V8R Support (UNSUPPORTED)" if UNSUPPORTED > + def_bool n > + depends on ARM_32 > + help > + This option enables Armv8-R profile for AArch32. > + > config ARM_64 > def_bool y > depends on !ARM_32 > diff --git a/xen/arch/arm/arm32/Makefile b/xen/arch/arm/arm32/Makefile > index 520fb42054..2ab808a7a8 100644 > --- a/xen/arch/arm/arm32/Makefile > +++ b/xen/arch/arm/arm32/Makefile > @@ -8,6 +8,7 @@ obj-y += head.o > obj-y += insn.o > obj-$(CONFIG_LIVEPATCH) += livepatch.o > obj-y += proc-v7.o proc-caxx.o > +obj-$(CONFIG_AARCH32_V8R) += proc-v8.o > obj-y += smpboot.o > obj-y += traps.o > obj-y += vfp.o > diff --git a/xen/arch/arm/arm32/proc-v8.S b/xen/arch/arm/arm32/proc-v8.S > new file mode 100644 > index 0000000000..c5a566b165 > --- /dev/null > +++ b/xen/arch/arm/arm32/proc-v8.S Below you say the file will contain v8r specific initialization. So please rename it to proc-v8r.S. Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Tue Jun 20 17:16:12 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 20 Jun 2023 17:16:12 +0000 Received: from list by lists.xenproject.org with outflank-mailman.551977.861777 (Exim 4.92) (envelope-from ) id 1qBexZ-0004qh-CP; Tue, 20 Jun 2023 17:16:05 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 551977.861777; Tue, 20 Jun 2023 17:16:05 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBexZ-0004qa-8v; Tue, 20 Jun 2023 17:16:05 +0000 Received: by outflank-mailman (input) for mailman id 551977; Tue, 20 Jun 2023 17:16:04 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBexY-0004qU-52 for xen-devel@lists.xenproject.org; Tue, 20 Jun 2023 17:16:04 +0000 Received: from mail-vs1-xe32.google.com (mail-vs1-xe32.google.com [2607:f8b0:4864:20::e32]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 213a4d11-0f8e-11ee-8611-37d641c3527e; Tue, 20 Jun 2023 19:16:01 +0200 (CEST) Received: by mail-vs1-xe32.google.com with SMTP id ada2fe7eead31-44096f01658so1710473137.0 for ; Tue, 20 Jun 2023 10:16:01 -0700 (PDT) Received: from joel-Precision-7920-Tower.. ([24.53.71.1]) by smtp.gmail.com with ESMTPSA id f81-20020a25cf54000000b00bcc0f2e4f05sm461938ybg.59.2023.06.20.10.15.59 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 20 Jun 2023 10:15:59 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 213a4d11-0f8e-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687281360; x=1689873360; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=H9e69r/0hBb1Pz3HX6FalfGvqxFEmextEqSYdmN4rrc=; b=opB/iZoLem7H+PnWqBq9b24YYfHf8TdHx4A7YYNBeH8BAX+AyBdC+diJqSkYVlYWCM L8UESBpinQJbo2x6cB/aKyEWk/77fT46nkf2LT6YDJGyfg9PTbZYS+GWYWRzz1fGreX2 ETmQU2Wl1PZRcLwrHMrgtVTTgcbaXJ+pTwlvcknUeOB56rr9cc6byBfs7USxnm7/ZM8p VdsYjZjhvb48aIvBoK718J5RHrtrTH7G717W4pg7voGH0z7/IBBjeie4FgviVsV380XW fqGEk4rhKzI90wVKBJvY9j0okHqsBWhk9mnpECgF/YcpehCVpPw4iIeXFid2Qr1Bog7T Dr1A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687281360; x=1689873360; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=H9e69r/0hBb1Pz3HX6FalfGvqxFEmextEqSYdmN4rrc=; b=ePgXgb7Lan4Ey4sDLGtbfnqEYKmIzshLEfo34/qr4XeCSABGdupngtTWWneXGkI4Gp MF5iN4jjkKO6P/28Yjhfql3siF+BEm175a96m6JupEO8hyKVB/KrBjHnfo66Lk5fXAut tz4iAtgy+MkwMdVNcOjZl0kD6sA8L6kJm/oRz1en7kf57LlwfvJ1BLEqyTGHpOxeLoMZ 7kS6m2JR5awdndJKR/4FNwldQOjutMHWQSobt8v6GAy33IA14k60JEKczWlYem2qkW4D NPxvwnWicvhQ2UnIEn9zZHYt3vDHMHfRkzlDDpECZI0GHfoSTwWBfMa4gPKH3ZE5hLj6 2DFQ== X-Gm-Message-State: AC+VfDy6tBqtJx1jOhs2++BrSIIG/OT5oaQdyBEJUPa0FMghiPY63VDM /yJl4ZuKgoZSih/dNt8M1bt3BTLpWKUDsQ== X-Google-Smtp-Source: ACHHUZ7k+DApySytYCVci6XOU4BEoW3Jyn/QKZ38Dvl8xeVkMr0zudjtZCM/keeVEaA8jpTr9z8uKw== X-Received: by 2002:a67:e282:0:b0:43f:5781:59c with SMTP id g2-20020a67e282000000b0043f5781059cmr5595232vsf.9.1687281360268; Tue, 20 Jun 2023 10:16:00 -0700 (PDT) From: Joel Upham To: xen-devel@lists.xenproject.org Cc: Joel Upham , Jan Beulich , Wei Liu , Anthony PERARD , Andrew Cooper , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Juergen Gross Subject: [PATCH v2 00/12] Q35 Support Date: Tue, 20 Jun 2023 13:15:40 -0400 Message-Id: X-Mailer: git-send-email 2.34.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Q35 support using Qemu's device emulation. I based the patches from 2017 found on the mailing list here: https://lists.xenproject.org/archives/html/xen-devel/2018-03/msg01176.html I have been using a version of these patches on Xen 4.16 with Qemu version 4.1 for over 6 months. The guest VMs are very stable, and PCIe PT is working as was designed (all of the PCIe devices are on the root PCIe device). I have successfully passed through GPUs, NICs, etc. I was asked by those in the community to attempt to once again upstream the patches. I have them working with Seabios and OVMF (patches are needed to OVMF which I will be sending to the mailing list). I will be sending my Qemu patches to their mailing list in hopes of getting everything upstreamed. The Qemu patches allow for the xenvbd to properly unplug the AHCI SATA device, and all xen pv windows drivers work as intended. I used the original author of the patches to get a majority of this to work: Alexey Gerasimenko. I fixed the patches to be in line with the upstream Qemu and Xen versions. Any original issues may still exist; however, I am sure in time they can be improved. If the code doesn't exist then they can't be actively looked at by the community. I am not an expert on the Q35 chipset or PCIe technology. This is my first patch to this mailing list. I realized that my first patch was not properly formatted into a series, so this is the full series version. Signed-off-by: Joel Upham Joel Upham (12): libacpi: new DSDT ACPI table for Q35 Makefile: build and use new DSDT table for Q35 hvmloader: add function to query an emulated machine type (i440/Q35) hvmloader: add ACPI enabling for Q35 hvmloader: add Q35 DSDT table loading hvmloader: add basic Q35 support hvmloader: allocate MMCONFIG area in the MMIO hole + minor code refactoring libxl: Q35 support (new option device_model_machine) libacpi: build ACPI MCFG table if requested hvmloader: use libacpi to build MCFG table docs: provide description for device_model_machine option libxl_dm: handle the new 6 port ahci controller docs/man/xl.cfg.5.pod.in | 27 ++ tools/firmware/hvmloader/Makefile | 2 +- tools/firmware/hvmloader/config.h | 6 + tools/firmware/hvmloader/hvmloader.c | 13 +- tools/firmware/hvmloader/ovmf.c | 5 + tools/firmware/hvmloader/pci.c | 285 +++++++++---- tools/firmware/hvmloader/pci_regs.h | 6 + tools/firmware/hvmloader/seabios.c | 5 + tools/firmware/hvmloader/util.c | 130 +++++- tools/firmware/hvmloader/util.h | 10 + tools/libacpi/Makefile | 10 +- tools/libacpi/acpi2_0.h | 21 + tools/libacpi/build.c | 43 ++ tools/libacpi/dsdt_q35.asl | 578 +++++++++++++++++++++++++++ tools/libacpi/libacpi.h | 4 + tools/libs/light/libxl_dm.c | 60 ++- tools/libs/light/libxl_types.idl | 8 + tools/xl/xl_parse.c | 14 + 18 files changed, 1119 insertions(+), 108 deletions(-) create mode 100644 tools/libacpi/dsdt_q35.asl Qemu changes in bound to their mailing list: pc/xen: Xen Q35 support: provide IRQ handling for PCI devices pc/q35: Apply PCI bus BSEL property for Xen PCI device hotplug q35/acpi/xen: Provide ACPI PCI hotplug interface for Xen on Q35 q35/xen: Add Xen platform device support for Q35 q35: Fix incorrect values for PCIEXBAR masks xen/pt: XenHostPCIDevice: provide functions for PCI Capabilities and PCIe Extended Capabilities enumeration xen/pt: avoid reading PCIe device type and cap version multiple times xen/pt: determine the legacy/PCIe mode for a passed through device xen/pt: Xen PCIe passthrough support for Q35: bypass PCIe topology check xen/pt: add support for PCIe Extended Capabilities and larger config space xen/pt: handle PCIe Extended Capabilities Next register xen/pt: allow to hide PCIe Extended Capabilities xen/pt: add Vendor-specific PCIe Extended Capability descriptor and sizing xen/pt: add fixed-size PCIe Extended Capabilities descriptors xen/pt: add AER PCIe Extended Capability descriptor and sizing xen/pt: add descriptors and size calculation for RCLD/ACS/PMUX/DPA/MCAST/TPH/DPC PCIe Extended Capabilities xen/pt: add Resizable BAR PCIe Extended Capability descriptor and sizing xen/pt: add VC/VC9/MFVC PCIe Extended Capabilities descriptors and sizing xen/pt: Fake capability id xen platform: unplug ahci object pc/q35: setup q35 for xen qdev-monitor/pt: bypass root device check s3 support: enabling s3 with q35 hw/acpi/ich9.c | 22 +- hw/acpi/pcihp.c | 6 +- hw/core/machine.c | 19 + hw/i386/pc_piix.c | 3 +- hw/i386/pc_q35.c | 39 +- hw/i386/xen/xen-hvm.c | 7 +- hw/i386/xen/xen_platform.c | 19 +- hw/isa/lpc_ich9.c | 53 +- hw/isa/piix3.c | 2 +- hw/pci-host/q35.c | 28 +- hw/pci/pci.c | 17 + hw/xen/xen-host-pci-device.c | 106 +++- hw/xen/xen-host-pci-device.h | 6 +- hw/xen/xen_pt.c | 49 +- hw/xen/xen_pt.h | 18 +- hw/xen/xen_pt_config_init.c | 1103 ++++++++++++++++++++++++++++++--- include/hw/acpi/pcihp.h | 2 + include/hw/boards.h | 1 + include/hw/i386/pc.h | 3 + include/hw/pci-host/q35.h | 4 +- include/hw/pci/pci.h | 3 + include/hw/southbridge/ich9.h | 1 + include/hw/xen/xen.h | 4 +- qemu-options.hx | 1 + softmmu/qdev-monitor.c | 4 +- stubs/xen-hw-stub.c | 4 +- 26 files changed, 1394 insertions(+), 130 deletions(-) -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Tue Jun 20 17:17:27 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 20 Jun 2023 17:17:27 +0000 Received: from list by lists.xenproject.org with outflank-mailman.551985.861787 (Exim 4.92) (envelope-from ) id 1qBeyi-0005Qd-QB; Tue, 20 Jun 2023 17:17:16 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 551985.861787; Tue, 20 Jun 2023 17:17:16 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBeyi-0005QW-N3; Tue, 20 Jun 2023 17:17:16 +0000 Received: by outflank-mailman (input) for mailman id 551985; Tue, 20 Jun 2023 17:17:16 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBeyi-0005QM-4b for xen-devel@lists.xenproject.org; Tue, 20 Jun 2023 17:17:16 +0000 Received: from mail-yb1-xb2f.google.com (mail-yb1-xb2f.google.com [2607:f8b0:4864:20::b2f]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 4c120d33-0f8e-11ee-8611-37d641c3527e; Tue, 20 Jun 2023 19:17:13 +0200 (CEST) Received: by mail-yb1-xb2f.google.com with SMTP id 3f1490d57ef6-bd5f20508f2so4829318276.3 for ; Tue, 20 Jun 2023 10:17:13 -0700 (PDT) Received: from joel-Precision-7920-Tower.. ([24.53.71.1]) by smtp.gmail.com with ESMTPSA id f81-20020a25cf54000000b00bcc0f2e4f05sm461938ybg.59.2023.06.20.10.17.11 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 20 Jun 2023 10:17:11 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 4c120d33-0f8e-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687281432; x=1689873432; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=ukzGpEENG0RlgItA22pHLWRfkG/TIG2MuZvDy/EWEFU=; b=Ui3x4e2d1x7msUonmnEtV2oZD/YnB5TKiukjofsjZMyaIwsa94EELiqp60Boh7w1Pd liSVUEjzvbLj7tNmPLSnwXvkE984RpJyNnkXgYJZxhasBdPPGttj7ZGEV4y39soxZp9c N4ZfA42vod69hfNmN9IJ1UuqF00rTRL9LirV/KUu30KsvxUra2WpOikuQNaTy6FXa0jV nKpdECVzHl/hIa3mN1mFGSpHgP0PQFsMh30tOsQBMSO9WejSZNk1cKAFk3FzuDiNVIOd AaJ0V/WtfyIMRW0c+vwlTxx3oFUinCAo0Uwq+c2hlryeCvv7la++wJp5beXgaNJc1scy Jopw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687281432; x=1689873432; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=ukzGpEENG0RlgItA22pHLWRfkG/TIG2MuZvDy/EWEFU=; b=KQiCI/HFAq1BTHOH2Jb157hnKkgSjfLMRpVl8Hludy2nCWRLkBxYdG8wQX4Enmc4kZ sJaWgionB+iqfo8hBR1OcYh9V95j0ushUrJz2sKD3sf3yTmV0/UW4M+nnHHSuXfFVZ7l jl6mqFtAHrdN+XmB3ysQ6LJbbiEtPxCqlSrXHsE0uRPhDSEyLygTkdDElRwD9hv3rUuT R11ajEFJsgdd5clerzerlIDfzIzyKtpBM4A6DeFhBRsLMjlPFqvgvKkoXOszNapkgRYb V4++5REnIorYVj38+HcvFEBJALNbmKh29VgfJb1caIoS4Enenditz0KqLKIBlK8q3RR3 jEDA== X-Gm-Message-State: AC+VfDwwPsMGEhj7GwmB2uNYvazuOucxwyqLyNmV8TWj75tsjzEukYS/ 7Q9//S7Klqg7rYkJIiQnoC+WMKlePjRr+g== X-Google-Smtp-Source: ACHHUZ7sEKIwUdOwq8v0ZiXEvcWcwlhyvF7IGBk2nsbUQnRGQM9cgKjioeDKihYNY1gaGXgxfzYrGQ== X-Received: by 2002:a25:b195:0:b0:b8e:cb88:1b69 with SMTP id h21-20020a25b195000000b00b8ecb881b69mr10005548ybj.34.1687281431908; Tue, 20 Jun 2023 10:17:11 -0700 (PDT) From: Joel Upham To: xen-devel@lists.xenproject.org Cc: Joel Upham , Jan Beulich , Wei Liu , Anthony PERARD Subject: [PATCH v2 01/12] libacpi: new DSDT ACPI table for Q35 Date: Tue, 20 Jun 2023 13:15:41 -0400 Message-Id: X-Mailer: git-send-email 2.34.1 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit This patch adds the DSDT table for Q35 (new tools/libacpi/dsdt_q35.asl file). There are not many differences with dsdt.asl (for i440) at the moment, namely: - BDF location of LPC Controller - Minor changes related to FDC detection - Addition of _OSC method to inform OSPM about PCIe features supported As we are still using 4 PCI router links and their corresponding device/register addresses are same (offset 0x60), no need to change PCI routing descriptions. Also, ACPI hotplug is still used to control passed through device hot (un)plug (as it was for i440). Signed-off-by: Alexey Gerasimenko Signed-off-by: Joel Upham --- tools/libacpi/dsdt_q35.asl | 578 +++++++++++++++++++++++++++++++++++++ 1 file changed, 578 insertions(+) create mode 100644 tools/libacpi/dsdt_q35.asl diff --git a/tools/libacpi/dsdt_q35.asl b/tools/libacpi/dsdt_q35.asl new file mode 100644 index 0000000000..1ec32a8010 --- /dev/null +++ b/tools/libacpi/dsdt_q35.asl @@ -0,0 +1,578 @@ +/****************************************************************************** + * DSDT for Xen with Qemu device model (for Q35 machine) + * + * Copyright (c) 2004, Intel Corporation. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License as published + * by the Free Software Foundation; version 2.1 only. with the special + * exception on linking described in file LICENSE. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License for more details. + */ + +DefinitionBlock ("DSDT.aml", "DSDT", 2, "Xen", "HVM", 0) +{ + Name (\PMBS, 0x0C00) + Name (\PMLN, 0x08) + Name (\IOB1, 0x00) + Name (\IOL1, 0x00) + Name (\APCB, 0xFEC00000) + Name (\APCL, 0x00010000) + Name (\PUID, 0x00) + + + Scope (\_SB) + { + + /* Fix HCT test for 0x400 pci memory: + * - need to report low 640 MB mem as motherboard resource + */ + Device(MEM0) + { + Name(_HID, EISAID("PNP0C02")) + Name(_CRS, ResourceTemplate() { + QWordMemory( + ResourceConsumer, PosDecode, MinFixed, + MaxFixed, Cacheable, ReadWrite, + 0x00000000, + 0x00000000, + 0x0009ffff, + 0x00000000, + 0x000a0000) + }) + } + + Device (PCI0) + { + Name (_HID, EisaId ("PNP0A08")) + Name(_CID, EisaId("PNP0A03")) + Name (_UID, 0x00) + Name (_ADR, 0x00) + Name (_BBN, 0x00) + + /* _OSC, modified from ASL sample in ACPI spec */ + Name(SUPP, 0) /* PCI _OSC Support Field value */ + Name(CTRL, 0) /* PCI _OSC Control Field value */ + Method(_OSC, 4) { + /* Create DWORD-addressable fields from the Capabilities Buffer */ + CreateDWordField(Arg3, 0, CDW1) + + /* Switch by UUID. + * Only PCI Host Bridge Device capabilities UUID used for now + */ + If (LEqual(Arg0, ToUUID("33DB4D5B-1FF7-401C-9657-7441C03DD766"))) { + /* Create DWORD-addressable fields from the Capabilities Buffer */ + CreateDWordField(Arg3, 4, CDW2) + CreateDWordField(Arg3, 8, CDW3) + + /* Save Capabilities DWORD2 & 3 */ + Store(CDW2, SUPP) + Store(CDW3, CTRL) + + /* Validate Revision DWORD */ + If (LNotEqual(Arg1, One)) { + /* Unknown revision */ + /* Support and Control DWORDs will be returned anyway */ + Or(CDW1, 0x08, CDW1) + } + + /* Control field bits are: + * bit 0 PCI Express Native Hot Plug control + * bit 1 SHPC Native Hot Plug control + * bit 2 PCI Express Native Power Management Events control + * bit 3 PCI Express Advanced Error Reporting control + * bit 4 PCI Express Capability Structure control + */ + + /* Always allow native PME, AER (no dependencies) + * Never allow SHPC (no SHPC controller in this system) + * Do not allow PCIe Capability Structure control for now + * Also, ACPI hotplug is used for now instead of PCIe + * Native Hot Plug + */ + And(CTRL, 0x0C, CTRL) + + If (LNotEqual(CDW3, CTRL)) { + /* Some of Capabilities bits were masked */ + Or(CDW1, 0x10, CDW1) + } + /* Update DWORD3 in the buffer */ + Store(CTRL, CDW3) + } Else { + Or(CDW1, 4, CDW1) /* Unrecognized UUID */ + } + Return (Arg3) + } + /* end of _OSC */ + + + /* Make cirrues VGA S3 suspend/resume work in Windows XP/2003 */ + Device (VGA) + { + Name (_ADR, 0x00020000) + + Method (_S1D, 0, NotSerialized) + { + Return (0x00) + } + Method (_S2D, 0, NotSerialized) + { + Return (0x00) + } + Method (_S3D, 0, NotSerialized) + { + Return (0x00) + } + } + + Method (_CRS, 0, NotSerialized) + { + Store (ResourceTemplate () + { + /* bus number is from 0 - 255*/ + WordBusNumber( + ResourceProducer, MinFixed, MaxFixed, SubDecode, + 0x0000, + 0x0000, + 0x00FF, + 0x0000, + 0x0100) + IO (Decode16, 0x0CF8, 0x0CF8, 0x01, 0x08) + WordIO( + ResourceProducer, MinFixed, MaxFixed, PosDecode, + EntireRange, + 0x0000, + 0x0000, + 0x0CF7, + 0x0000, + 0x0CF8) + WordIO( + ResourceProducer, MinFixed, MaxFixed, PosDecode, + EntireRange, + 0x0000, + 0x0D00, + 0xFFFF, + 0x0000, + 0xF300) + + /* reserve memory for pci devices */ + DWordMemory( + ResourceProducer, PosDecode, MinFixed, MaxFixed, + WriteCombining, ReadWrite, + 0x00000000, + 0x000A0000, + 0x000BFFFF, + 0x00000000, + 0x00020000) + + DWordMemory( + ResourceProducer, PosDecode, MinFixed, MaxFixed, + NonCacheable, ReadWrite, + 0x00000000, + 0xF0000000, + 0xF4FFFFFF, + 0x00000000, + 0x05000000, + ,, _Y01) + + QWordMemory ( + ResourceProducer, PosDecode, MinFixed, MaxFixed, + NonCacheable, ReadWrite, + 0x0000000000000000, + 0x0000000FFFFFFFF0, + 0x0000000FFFFFFFFF, + 0x0000000000000000, + 0x0000000000000010, + ,, _Y02) + + }, Local1) + + CreateDWordField(Local1, \_SB.PCI0._CRS._Y01._MIN, MMIN) + CreateDWordField(Local1, \_SB.PCI0._CRS._Y01._MAX, MMAX) + CreateDWordField(Local1, \_SB.PCI0._CRS._Y01._LEN, MLEN) + + Store(\_SB.PMIN, MMIN) + Store(\_SB.PLEN, MLEN) + Add(MMIN, MLEN, MMAX) + Subtract(MMAX, One, MMAX) + + /* + * WinXP / Win2K3 blue-screen for operations on 64-bit values. + * Therefore we need to split the 64-bit calculations needed + * here, but different iasl versions evaluate name references + * to integers differently: + * Year (approximate) 2006 2008 2012 + * \_SB.PCI0._CRS._Y02 zero valid valid + * \_SB.PCI0._CRS._Y02._MIN valid valid huge + */ + If(LEqual(Zero, \_SB.PCI0._CRS._Y02)) { + Subtract(\_SB.PCI0._CRS._Y02._MIN, 14, Local0) + } Else { + Store(\_SB.PCI0._CRS._Y02, Local0) + } + CreateDWordField(Local1, Add(Local0, 14), MINL) + CreateDWordField(Local1, Add(Local0, 18), MINH) + CreateDWordField(Local1, Add(Local0, 22), MAXL) + CreateDWordField(Local1, Add(Local0, 26), MAXH) + CreateDWordField(Local1, Add(Local0, 38), LENL) + CreateDWordField(Local1, Add(Local0, 42), LENH) + + Store(\_SB.LMIN, MINL) + Store(\_SB.HMIN, MINH) + Store(\_SB.LLEN, LENL) + Store(\_SB.HLEN, LENH) + Add(MINL, LENL, MAXL) + Add(MINH, LENH, MAXH) + If(LLess(MAXL, MINL)) { + Add(MAXH, One, MAXH) + } + If(LOr(MINH, LENL)) { + If(LEqual(MAXL, 0)) { + Subtract(MAXH, One, MAXH) + } + Subtract(MAXL, One, MAXL) + } + + Return (Local1) + } + + Device(HPET) { + Name(_HID, EISAID("PNP0103")) + Name(_UID, 0) + Method (_STA, 0, NotSerialized) { + If(LEqual(\_SB.HPET, 0)) { + Return(0x00) + } Else { + Return(0x0F) + } + } + Name(_CRS, ResourceTemplate() { + DWordMemory( + ResourceConsumer, PosDecode, MinFixed, MaxFixed, + NonCacheable, ReadWrite, + 0x00000000, + 0xFED00000, + 0xFED003FF, + 0x00000000, + 0x00000400 /* 1K memory: FED00000 - FED003FF */ + ) + }) + } + + + /**************************************************************** + * LPC ISA bridge + ****************************************************************/ + + Device (ISA) + { + Name (_ADR, 0x001f0000) /* device 31, fn 0 */ + + /* PCI Interrupt Routing Register 1 - PIRQA..PIRQD */ + OperationRegion(PIRQ, PCI_Config, 0x60, 0x4) + Scope(\) { + Field (\_SB.PCI0.ISA.PIRQ, ByteAcc, NoLock, Preserve) { + PIRA, 8, + PIRB, 8, + PIRC, 8, + PIRD, 8 + } + } + /* + PCI Interrupt Routing Register 2 (PIRQE..PIRQH) cannot be + used because of existing Xen IRQ limitations (4 PCI links + only) + */ + + /* LPC_I/O: I/O Decode Ranges Register */ + OperationRegion(LPCD, PCI_Config, 0x80, 0x2) + Field(LPCD, AnyAcc, NoLock, Preserve) { + COMA, 3, + , 1, + COMB, 3, + + Offset(0x01), + LPTD, 2, + , 2, + FDCD, 2 + } + + /* LPC_EN: LPC I/F Enables Register */ + OperationRegion(LPCE, PCI_Config, 0x82, 0x2) + Field(LPCE, AnyAcc, NoLock, Preserve) { + CAEN, 1, + CBEN, 1, + LPEN, 1, + FDEN, 1 + } + + Device (SYSR) + { + Name (_HID, EisaId ("PNP0C02")) + Name (_UID, 0x01) + Name (CRS, ResourceTemplate () + { + /* TODO: list hidden resources */ + IO (Decode16, 0x0010, 0x0010, 0x00, 0x10) + IO (Decode16, 0x0022, 0x0022, 0x00, 0x0C) + IO (Decode16, 0x0030, 0x0030, 0x00, 0x10) + IO (Decode16, 0x0044, 0x0044, 0x00, 0x1C) + IO (Decode16, 0x0062, 0x0062, 0x00, 0x02) + IO (Decode16, 0x0065, 0x0065, 0x00, 0x0B) + IO (Decode16, 0x0072, 0x0072, 0x00, 0x0E) + IO (Decode16, 0x0080, 0x0080, 0x00, 0x01) + IO (Decode16, 0x0084, 0x0084, 0x00, 0x03) + IO (Decode16, 0x0088, 0x0088, 0x00, 0x01) + IO (Decode16, 0x008C, 0x008C, 0x00, 0x03) + IO (Decode16, 0x0090, 0x0090, 0x00, 0x10) + IO (Decode16, 0x00A2, 0x00A2, 0x00, 0x1C) + IO (Decode16, 0x00E0, 0x00E0, 0x00, 0x10) + IO (Decode16, 0x08A0, 0x08A0, 0x00, 0x04) + IO (Decode16, 0x0CC0, 0x0CC0, 0x00, 0x10) + IO (Decode16, 0x04D0, 0x04D0, 0x00, 0x02) + }) + Method (_CRS, 0, NotSerialized) + { + Return (CRS) + } + } + + Device (PIC) + { + Name (_HID, EisaId ("PNP0000")) + Name (_CRS, ResourceTemplate () + { + IO (Decode16, 0x0020, 0x0020, 0x01, 0x02) + IO (Decode16, 0x00A0, 0x00A0, 0x01, 0x02) + IRQNoFlags () {2} + }) + } + + Device (DMA0) + { + Name (_HID, EisaId ("PNP0200")) + Name (_CRS, ResourceTemplate () + { + DMA (Compatibility, BusMaster, Transfer8) {4} + IO (Decode16, 0x0000, 0x0000, 0x00, 0x10) + IO (Decode16, 0x0081, 0x0081, 0x00, 0x03) + IO (Decode16, 0x0087, 0x0087, 0x00, 0x01) + IO (Decode16, 0x0089, 0x0089, 0x00, 0x03) + IO (Decode16, 0x008F, 0x008F, 0x00, 0x01) + IO (Decode16, 0x00C0, 0x00C0, 0x00, 0x20) + IO (Decode16, 0x0480, 0x0480, 0x00, 0x10) + }) + } + + Device (TMR) + { + Name (_HID, EisaId ("PNP0100")) + Name (_CRS, ResourceTemplate () + { + IO (Decode16, 0x0040, 0x0040, 0x00, 0x04) + IRQNoFlags () {0} + }) + } + + Device (RTC) + { + Name (_HID, EisaId ("PNP0B00")) + Name (_CRS, ResourceTemplate () + { + IO (Decode16, 0x0070, 0x0070, 0x00, 0x02) + IRQNoFlags () {8} + }) + } + + Device (SPKR) + { + Name (_HID, EisaId ("PNP0800")) + Name (_CRS, ResourceTemplate () + { + IO (Decode16, 0x0061, 0x0061, 0x00, 0x01) + }) + } + + Device (PS2M) + { + Name (_HID, EisaId ("PNP0F13")) + Name (_CID, 0x130FD041) + Method (_STA, 0, NotSerialized) + { + Return (0x0F) + } + + Name (_CRS, ResourceTemplate () + { + IRQNoFlags () {12} + }) + } + + Device (PS2K) + { + Name (_HID, EisaId ("PNP0303")) + Name (_CID, 0x0B03D041) + Method (_STA, 0, NotSerialized) + { + Return (0x0F) + } + + Name (_CRS, ResourceTemplate () + { + IO (Decode16, 0x0060, 0x0060, 0x00, 0x01) + IO (Decode16, 0x0064, 0x0064, 0x00, 0x01) + IRQNoFlags () {1} + }) + } + + Device(FDC0) + { + Name(_HID, EisaId("PNP0700")) + Method(_STA, 0, NotSerialized) + { + Store(FDEN, Local0) + If (LEqual(Local0, 0)) { + Return (0x00) + } Else { + Return (0x0F) + } + } + + Name(_CRS, ResourceTemplate() + { + IO(Decode16, 0x03F2, 0x03F2, 0x00, 0x04) + IO(Decode16, 0x03F7, 0x03F7, 0x00, 0x01) + IRQNoFlags() { 6 } + DMA(Compatibility, NotBusMaster, Transfer8) { 2 } + }) + } + + Device (UAR1) + { + Name (_HID, EisaId ("PNP0501")) + Name (_UID, 0x01) + Method (_STA, 0, NotSerialized) + { + If(LEqual(\_SB.UAR1, 0)) { + Return(0x00) + } Else { + Return(0x0F) + } + } + + Name (_CRS, ResourceTemplate() + { + IO (Decode16, 0x03F8, 0x03F8, 8, 8) + IRQNoFlags () {4} + }) + } + + Device (UAR2) + { + Name (_HID, EisaId ("PNP0501")) + Name (_UID, 0x02) + Method (_STA, 0, NotSerialized) + { + If(LEqual(\_SB.UAR2, 0)) { + Return(0x00) + } Else { + Return(0x0F) + } + } + + Name (_CRS, ResourceTemplate() + { + IO (Decode16, 0x02F8, 0x02F8, 8, 8) + IRQNoFlags () {3} + }) + } + + Device (LTP1) + { + Name (_HID, EisaId ("PNP0400")) + Name (_UID, 0x02) + Method (_STA, 0, NotSerialized) + { + If(LEqual(\_SB.LTP1, 0)) { + Return(0x00) + } Else { + Return(0x0F) + } + } + + Name (_CRS, ResourceTemplate() + { + IO (Decode16, 0x0378, 0x0378, 0x08, 0x08) + IRQNoFlags () {7} + }) + } + + Device(VGID) { + Name(_HID, EisaId ("XEN0000")) + Name(_UID, 0x00) + Name(_CID, "VM_Gen_Counter") + Name(_DDN, "VM_Gen_Counter") + Method(_STA, 0, NotSerialized) + { + If(LEqual(\_SB.VGIA, 0x00000000)) { + Return(0x00) + } Else { + Return(0x0F) + } + } + Name(PKG, Package () + { + 0x00000000, + 0x00000000 + }) + Method(ADDR, 0, NotSerialized) + { + Store(\_SB.VGIA, Index(PKG, 0)) + Return(PKG) + } + } + + /* EHCI Controller 0:1d.0 */ + + Device (EHC1) + { + Name(_ADR, 0x001d0000) + + /* Power Resources for Wake */ + Name(_PRW, Package() { 13, 4 }) + + /* Highest D state in S3 state */ + Name(_S3D, 2) + + /* Highest D state in S4 state */ + Name(_S4D, 2) + + Device (HUB7) + { + Name(_ADR, 0x00000000) + + Device(PRT1) { Name(_ADR, 1) } /* USB Port 0 */ + Device(PRT2) { Name(_ADR, 2) } /* USB Port 1 */ + Device(PRT3) { Name(_ADR, 3) } /* USB Port 2 */ + Device(PRT4) { Name(_ADR, 4) } /* USB Port 3 */ + } + } + } + } + } + /* _S3 and _S4 are in separate SSDTs */ + Name (\_S5, Package (0x04) { + 0x00, /* PM1a_CNT.SLP_TYP */ + 0x00, /* PM1b_CNT.SLP_TYP */ + 0x00, /* reserved */ + 0x00 /* reserved */ + }) + Name(PICD, 0) + Method(_PIC, 1) { + Store(Arg0, PICD) + } +} -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Tue Jun 20 17:17:30 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 20 Jun 2023 17:17:30 +0000 Received: from list by lists.xenproject.org with outflank-mailman.551986.861797 (Exim 4.92) (envelope-from ) id 1qBeym-0005gc-12; Tue, 20 Jun 2023 17:17:20 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 551986.861797; Tue, 20 Jun 2023 17:17:19 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBeyl-0005gV-UN; Tue, 20 Jun 2023 17:17:19 +0000 Received: by outflank-mailman (input) for mailman id 551986; Tue, 20 Jun 2023 17:17:19 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBeyl-0005QM-9a for xen-devel@lists.xenproject.org; Tue, 20 Jun 2023 17:17:19 +0000 Received: from mail-yb1-xb35.google.com (mail-yb1-xb35.google.com [2607:f8b0:4864:20::b35]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 4e6826f3-0f8e-11ee-8611-37d641c3527e; Tue, 20 Jun 2023 19:17:17 +0200 (CEST) Received: by mail-yb1-xb35.google.com with SMTP id 3f1490d57ef6-bd5f59fb71dso5220706276.3 for ; Tue, 20 Jun 2023 10:17:17 -0700 (PDT) Received: from joel-Precision-7920-Tower.. ([24.53.71.1]) by smtp.gmail.com with ESMTPSA id f81-20020a25cf54000000b00bcc0f2e4f05sm461938ybg.59.2023.06.20.10.17.15 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 20 Jun 2023 10:17:15 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 4e6826f3-0f8e-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687281436; x=1689873436; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=rmjMX94/CnuZ+DKqQNwFS/gJapQsRaGCdFJ+ixf1jU8=; b=nEXO+tw/MG+WTEDv60cExTVrsHhY517hsBKXVfVqM6MvGnYFb8LU9YYZvjI2W9g1cK TLQxCR2B815QgXYKBrDkId7DekHBQ5ps/asJznNk1vJVBZad57bdHSKAPPCcglUnW5qG gRgE0Ws+r17fOJYv+lVpX2XmhbFcR4AcESeqrxlGSfFo9X9KcgWtyrqT+Ohz4IvnuKJT U3dkQBmezB4TO9iTTIXo1T46OuePEIzs0fqW5h/YSrqJvIs/9bI85684LYDYPbGS0zMo /xtPSNEoA4AutkSwGIwWEgP18lfb5NP6eOLUbWx1yUzK4uv+PPb7C35gGdihBuQ08A/9 RCcQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687281436; x=1689873436; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=rmjMX94/CnuZ+DKqQNwFS/gJapQsRaGCdFJ+ixf1jU8=; b=fH712lG4fqYi0x8dP024TgjQfCOHnOQRBRbpDS1sPjs+WP3EsNbwVhrm5K198zIxtN n0AUXcAoR013S9vmgXAEO6irImbulVGcqI0WkqOSOgywVq0Ku4T1rD8vVFcKKrjIj4DX VlPhTj+vU8EvIQb2mYSvfsoGogiMSGtE0mAAXNQgJaI8b14WUMAxlnFuXlqDK0z+WM5i E/K2OG5dUEhiHrqwj9Tevsckv1VDovMPNjD6TrGrnrYRaQAHzfX6HuMNzQWCwMu/5TUf /uPG8A58hkdFNKj15xixQSiIe3P8NMcKPG5YIMFrb/4niiZZMBF89WWieNJkSDUzB98Z LKYA== X-Gm-Message-State: AC+VfDxipHzj31BAeSXRNSBOJSevWlqV/v88rqtVZtJuIk1l50SBKI6D gax8PHR8FlrcVepS+8N6oQUtfEaNvI2LHw== X-Google-Smtp-Source: ACHHUZ5IYdtGjOJynA9TpDdq64wxYLUQAEz6ka8t3dG2aTivhnlshW2hypqfbNz5NkT/xVvlAf4LZQ== X-Received: by 2002:a25:b188:0:b0:be4:684e:1971 with SMTP id h8-20020a25b188000000b00be4684e1971mr11353800ybj.63.1687281436189; Tue, 20 Jun 2023 10:17:16 -0700 (PDT) From: Joel Upham To: xen-devel@lists.xenproject.org Cc: Joel Upham , Jan Beulich , Andrew Cooper , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Wei Liu , Anthony PERARD Subject: [PATCH v2 02/12] Makefile: build and use new DSDT table for Q35 Date: Tue, 20 Jun 2023 13:15:42 -0400 Message-Id: <1579bbf01f01ff92496260866f87b263a95cd8fe.1687215890.git.jupham125@gmail.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Provide building for newly added dsdt_q35.asl file, in a way similar to dsdt.asl. Note that '15cpu' ACPI tables are only applicable to qemu-traditional (which have no support for Q35), so we need to use 'anycpu' version only. Signed-off-by: Alexey Gerasimenko Signed-off-by: Joel Upham --- tools/firmware/hvmloader/Makefile | 2 +- tools/libacpi/Makefile | 10 +++++++++- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/tools/firmware/hvmloader/Makefile b/tools/firmware/hvmloader/Makefile index e5de1ade17..e3c8eb3ca1 100644 --- a/tools/firmware/hvmloader/Makefile +++ b/tools/firmware/hvmloader/Makefile @@ -70,7 +70,7 @@ rombios.o: roms.inc smbios.o: CFLAGS += -D__SMBIOS_DATE__="\"$(SMBIOS_REL_DATE)\"" ACPI_PATH = ../../libacpi -DSDT_FILES = dsdt_anycpu.c dsdt_15cpu.c dsdt_anycpu_qemu_xen.c +DSDT_FILES = dsdt_anycpu.c dsdt_15cpu.c dsdt_anycpu_qemu_xen.c dsdt_q35_anycpu_qemu_xen.c ACPI_OBJS = $(patsubst %.c,%.o,$(DSDT_FILES)) build.o static_tables.o $(ACPI_OBJS): CFLAGS += -iquote . -DLIBACPI_STDUTILS=\"$(CURDIR)/util.h\" CFLAGS += -I$(ACPI_PATH) diff --git a/tools/libacpi/Makefile b/tools/libacpi/Makefile index b21a64c6b4..d1ad2c6d85 100644 --- a/tools/libacpi/Makefile +++ b/tools/libacpi/Makefile @@ -11,7 +11,7 @@ endif MK_DSDT = $(ACPI_BUILD_DIR)/mk_dsdt -C_SRC-$(CONFIG_X86) = dsdt_anycpu.c dsdt_15cpu.c dsdt_anycpu_qemu_xen.c dsdt_pvh.c +C_SRC-$(CONFIG_X86) = dsdt_anycpu.c dsdt_15cpu.c dsdt_anycpu_qemu_xen.c dsdt_q35_anycpu_qemu_xen.c dsdt_pvh.c C_SRC-$(CONFIG_ARM_64) = dsdt_anycpu_arm.c DSDT_FILES ?= $(C_SRC-y) C_SRC = $(addprefix $(ACPI_BUILD_DIR)/, $(DSDT_FILES)) @@ -54,6 +54,14 @@ $(ACPI_BUILD_DIR)/dsdt_%cpu.asl: dsdt.asl dsdt_acpi_info.asl $(MK_DSDT) $(MK_DSDT) --debug=$(debug) --maxcpu $* >> $@.$(TMP_SUFFIX) mv -f $@.$(TMP_SUFFIX) $@ +$(ACPI_BUILD_DIR)/dsdt_q35_anycpu_qemu_xen.asl: dsdt_q35.asl dsdt_acpi_info.asl $(MK_DSDT) + # Remove last bracket + awk 'NR > 1 {print s} {s=$$0}' $< > $@.$(TMP_SUFFIX) + cat dsdt_acpi_info.asl >> $@.$(TMP_SUFFIX) + $(MK_DSDT) --debug=$(debug) --dm-version qemu-xen >> $@.$(TMP_SUFFIX) + mv -f $@.$(TMP_SUFFIX) $@ + + $(ACPI_BUILD_DIR)/dsdt_pvh.asl: dsdt_acpi_info.asl $(MK_DSDT) printf "DefinitionBlock (\"DSDT.aml\", \"DSDT\", 5, \"Xen\", \"HVM\", 0)\n{" > $@ cat dsdt_acpi_info.asl >> $@ -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Tue Jun 20 17:17:31 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 20 Jun 2023 17:17:31 +0000 Received: from list by lists.xenproject.org with outflank-mailman.551987.861807 (Exim 4.92) (envelope-from ) id 1qBeyn-0005x7-Bh; Tue, 20 Jun 2023 17:17:21 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 551987.861807; Tue, 20 Jun 2023 17:17:21 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBeyn-0005ww-8J; Tue, 20 Jun 2023 17:17:21 +0000 Received: by outflank-mailman (input) for mailman id 551987; Tue, 20 Jun 2023 17:17:20 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBeym-0005iB-E0 for xen-devel@lists.xenproject.org; Tue, 20 Jun 2023 17:17:20 +0000 Received: from mail-yb1-xb29.google.com (mail-yb1-xb29.google.com [2607:f8b0:4864:20::b29]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 4f6b5504-0f8e-11ee-b234-6b7b168915f2; Tue, 20 Jun 2023 19:17:19 +0200 (CEST) Received: by mail-yb1-xb29.google.com with SMTP id 3f1490d57ef6-bd20beffda6so5024182276.1 for ; Tue, 20 Jun 2023 10:17:19 -0700 (PDT) Received: from joel-Precision-7920-Tower.. ([24.53.71.1]) by smtp.gmail.com with ESMTPSA id f81-20020a25cf54000000b00bcc0f2e4f05sm461938ybg.59.2023.06.20.10.17.17 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 20 Jun 2023 10:17:17 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 4f6b5504-0f8e-11ee-b234-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687281438; x=1689873438; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=71wJeWz39VGTUAbQYnJ9ZhVkru2e1DXrr/8wkpMAFSE=; b=Y4gEQTo99sIEQ8rxDDG725536/rWjZR54ENbe76sUGh+PGbAjliL1qCqiWOe6Qzgh9 GXciLFxNuaHB5OqQ0X6Px2hxfUAkPqtR/lfHqnComRd/oQA3PtQlKt3kOspdv7LvgeYj f1Teoygg0ojiVTm8ukxqqjNSYuxvYnP+rIkgw5HNzzcY5NzyQZtoZgdyhq/jYFymFOvw 6Z94JqzQ+yEZJSWuFjmj4g7TPpv3dvXn4wNI6almEBepcIw0mtxJtq7frt+HTS87SjrN hQ0pAz4Ql0zB4YYNcQ/lKdQUTU9gqv38Q52rh5k+sa1GJ1nTdLK/OJAZvjVBHdYVh9lv 1yNA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687281438; x=1689873438; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=71wJeWz39VGTUAbQYnJ9ZhVkru2e1DXrr/8wkpMAFSE=; b=BzHXokCvCKHukpSgK0PBqX3Dwgp+G3LhefH6MJQHjB0oZnHO1yEsLjpTZhtPNj5G7j YRCuE07anSI8Fw2mPinUyG5SOL6mkEvl5s4N52lxH0rgtbYsmoOAqJj2jI+33EzL84iP B/dkkjTwg5FgvnefX0LTjtalwW/f/rJz1n08M+yx3y4U44A/T6Ac+S22h2aahLVJOGfx KDGj0qDMO2ErRbUTruwl9NZoCE1ozemjJGuHVr9ACJZ6ZjwX2D2rkkS/U9mqwv5Oti+e M1GD5vQCuSVHjtrV0bAYMULIF9P2MM3sNWxqAzks4wMZDfag3il+qV6sjYmhwvUhBZeu qFBg== X-Gm-Message-State: AC+VfDxL5feFoiWA9Mor9pzx4oe/IGS5mvOVgyPV0qkaVsuzPUtkXel1 G7ebZmsf+NzlFC/9R0NRSQANUYanyGJRRg== X-Google-Smtp-Source: ACHHUZ714SARpqWWDQ1jBaXWwkZB5255LtKrzZ/wi+Iij9hYFPgy3Dz/ylSoqvYbEYcHUTqMcDEy0g== X-Received: by 2002:a25:6b4d:0:b0:bcb:3094:6aec with SMTP id o13-20020a256b4d000000b00bcb30946aecmr9363032ybm.15.1687281437834; Tue, 20 Jun 2023 10:17:17 -0700 (PDT) From: Joel Upham To: xen-devel@lists.xenproject.org Cc: Joel Upham , Jan Beulich , Andrew Cooper , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Wei Liu , Anthony PERARD Subject: [PATCH v2 03/12] hvmloader: add function to query an emulated machine type (i440/Q35) Date: Tue, 20 Jun 2023 13:15:43 -0400 Message-Id: X-Mailer: git-send-email 2.34.1 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit This adds a new function get_pc_machine_type() which allows to determine the emulated chipset type. Supported return values: - MACHINE_TYPE_I440 - MACHINE_TYPE_Q35 - MACHINE_TYPE_UNKNOWN, results in the error message being printed followed by calling BUG() in hvmloader. Signed-off-by: Alexey Gerasimenko Signed-off-by: Joel Upham --- tools/firmware/hvmloader/pci_regs.h | 4 +++ tools/firmware/hvmloader/util.c | 47 +++++++++++++++++++++++++++++ tools/firmware/hvmloader/util.h | 8 +++++ 3 files changed, 59 insertions(+) diff --git a/tools/firmware/hvmloader/pci_regs.h b/tools/firmware/hvmloader/pci_regs.h index 7bf2d873ab..4d4dc0cd01 100644 --- a/tools/firmware/hvmloader/pci_regs.h +++ b/tools/firmware/hvmloader/pci_regs.h @@ -107,6 +107,10 @@ #define PCI_INTEL_OPREGION 0xfc /* 4 bits */ +#define PCI_VENDOR_ID_INTEL 0x8086 +#define PCI_DEVICE_ID_INTEL_82441 0x1237 +#define PCI_DEVICE_ID_INTEL_Q35_MCH 0x29c0 + #endif /* __HVMLOADER_PCI_REGS_H__ */ /* diff --git a/tools/firmware/hvmloader/util.c b/tools/firmware/hvmloader/util.c index e82047d993..a8685ee23a 100644 --- a/tools/firmware/hvmloader/util.c +++ b/tools/firmware/hvmloader/util.c @@ -22,6 +22,7 @@ #include "hypercall.h" #include "ctype.h" #include "vnuma.h" +#include "pci_regs.h" #include #include #include @@ -735,6 +736,52 @@ void __bug(const char *file, int line) crash(); } + +static int machine_type = MACHINE_TYPE_UNDEFINED; + +int get_pc_machine_type(void) +{ + uint16_t vendor_id; + uint16_t device_id; + + if (machine_type != MACHINE_TYPE_UNDEFINED) + return machine_type; + + machine_type = MACHINE_TYPE_UNKNOWN; + + vendor_id = pci_readw(0, PCI_VENDOR_ID); + device_id = pci_readw(0, PCI_DEVICE_ID); + + /* only Intel platforms are emulated currently */ + if (vendor_id == PCI_VENDOR_ID_INTEL) + { + switch (device_id) + { + case PCI_DEVICE_ID_INTEL_82441: + machine_type = MACHINE_TYPE_I440; + printf("Detected i440 chipset\n"); + break; + + case PCI_DEVICE_ID_INTEL_Q35_MCH: + machine_type = MACHINE_TYPE_Q35; + printf("Detected Q35 chipset\n"); + break; + + default: + break; + } + } + + if (machine_type == MACHINE_TYPE_UNKNOWN) + { + printf("Unknown emulated chipset encountered, VID=%04Xh, DID=%04Xh\n", + vendor_id, device_id); + BUG(); + } + + return machine_type; +} + static void validate_hvm_info(struct hvm_info_table *t) { uint8_t *ptr = (uint8_t *)t; diff --git a/tools/firmware/hvmloader/util.h b/tools/firmware/hvmloader/util.h index 87be213dec..f6a6cc3421 100644 --- a/tools/firmware/hvmloader/util.h +++ b/tools/firmware/hvmloader/util.h @@ -90,6 +90,14 @@ void pci_write(uint32_t devfn, uint32_t reg, uint32_t len, uint32_t val); #define pci_writew(devfn, reg, val) pci_write(devfn, reg, 2, (uint16_t)(val)) #define pci_writel(devfn, reg, val) pci_write(devfn, reg, 4, (uint32_t)(val)) +/* Emulated machine types */ +#define MACHINE_TYPE_UNDEFINED 0 +#define MACHINE_TYPE_I440 1 +#define MACHINE_TYPE_Q35 2 +#define MACHINE_TYPE_UNKNOWN (-1) + +int get_pc_machine_type(void); + /* Get a pointer to the shared-info page */ struct shared_info *get_shared_info(void) __attribute__ ((const)); -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Tue Jun 20 17:17:33 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 20 Jun 2023 17:17:33 +0000 Received: from list by lists.xenproject.org with outflank-mailman.551988.861817 (Exim 4.92) (envelope-from ) id 1qBeyp-0006Ew-No; Tue, 20 Jun 2023 17:17:23 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 551988.861817; Tue, 20 Jun 2023 17:17:23 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBeyp-0006Em-Jn; Tue, 20 Jun 2023 17:17:23 +0000 Received: by outflank-mailman (input) for mailman id 551988; Tue, 20 Jun 2023 17:17:21 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBeyn-0005iB-Ky for xen-devel@lists.xenproject.org; Tue, 20 Jun 2023 17:17:21 +0000 Received: from mail-yb1-xb2a.google.com (mail-yb1-xb2a.google.com [2607:f8b0:4864:20::b2a]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 5074ba68-0f8e-11ee-b234-6b7b168915f2; Tue, 20 Jun 2023 19:17:21 +0200 (CEST) Received: by mail-yb1-xb2a.google.com with SMTP id 3f1490d57ef6-bd61dd9a346so5007021276.2 for ; Tue, 20 Jun 2023 10:17:21 -0700 (PDT) Received: from joel-Precision-7920-Tower.. ([24.53.71.1]) by smtp.gmail.com with ESMTPSA id f81-20020a25cf54000000b00bcc0f2e4f05sm461938ybg.59.2023.06.20.10.17.18 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 20 Jun 2023 10:17:19 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 5074ba68-0f8e-11ee-b234-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687281439; x=1689873439; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=hrsL9N7k7kk6HzmUebq9GcrGzTo0jj1csEdzXuASa80=; b=r458G9N//EmRZupWk7DFyj1OcVfX+K2vo0GSHriPM9JysWQHtkfXbvRj2A57h3lOjf fyFoq+3f0BVPNnuB1GeEmj/6CcCBiMO/W8RJ/TBs3DSbf4xFu1qKxMJjmkdM3NaRZl4j 4HXeHSEI/PQxaehhqkYli3zoDMt2BuSwvx5PMO53c/ovICZvLlin/rnODXN8m3GV12ab JXNy2GdcDcW895FJ4HzQE/51Ykts4VqZbOr00AoJm2cq5Yrl3WRFZonHLAcU69svswLb baaI2MY0TvafazzJkZNgZbxLlWQT8Rj90jRCnnpZmT8VHR9g0X7I8IpMFPmfiNuu6XPI HPEw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687281439; x=1689873439; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=hrsL9N7k7kk6HzmUebq9GcrGzTo0jj1csEdzXuASa80=; b=Gpa/lRkANV2QKrWNEYqYMEr1ohfsTKUg9Ax2B7NZxqE9Eb8lwHrheY1zVSNsM6lI1+ HYBPSPWa61CFbY5VG1XVXxY3uBJMss92+um6on1jUT+5MwPwakly/Hq7HxufOkOcUcgv zMHE/1xPOuKW28q5DWC+yR4k3uXccTW3P9ItjUuq0Bwk7CvNNAVGu3eFjhj5lxoI/vDZ q/oviWRYa+eG7KxIebbO7v40fXt2oPukokVdRokqqOLQFizczETD/EKLEePLqNC/hDTz iHiY5HDk0cuY2ThUmu0CxwKHTbYh2DJEP4v36O5SpyoatxQ+jAZO7X4y0x5XlkHggSa1 iALQ== X-Gm-Message-State: AC+VfDyALFAw0aOumqhsufb5KjyxmX2VQ9LJd0axds2Dj1RiiW448KH1 d9NBer+ZAiAvY3Hv2KdEz7yZaUWwQla23g== X-Google-Smtp-Source: ACHHUZ4hfo79N+MtJ+Ae9j/hgIrf2qXfKtJUxQu6OxiIhiXFuIgZUxkSS/4hU8G5OWESk5KBKcsNbA== X-Received: by 2002:a25:ae48:0:b0:bcf:ef73:1431 with SMTP id g8-20020a25ae48000000b00bcfef731431mr9113565ybe.26.1687281439615; Tue, 20 Jun 2023 10:17:19 -0700 (PDT) From: Joel Upham To: xen-devel@lists.xenproject.org Cc: Joel Upham , Jan Beulich , Andrew Cooper , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Wei Liu , Anthony PERARD Subject: [PATCH v2 04/12] hvmloader: add ACPI enabling for Q35 Date: Tue, 20 Jun 2023 13:15:44 -0400 Message-Id: <0aad12501165eaba2a3b987b37779ff7ced6ce82.1687215890.git.jupham125@gmail.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit In order to turn on ACPI for OS, we need to write a chipset-specific value to SMI_CMD register (sort of imitation of the APM->ACPI switch on real systems). Modify acpi_enable_sci() function to support both i440 and Q35 emulation. Signed-off-by: Alexey Gerasimenko Signed-off-by: Joel Upham --- tools/firmware/hvmloader/hvmloader.c | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/tools/firmware/hvmloader/hvmloader.c b/tools/firmware/hvmloader/hvmloader.c index c58841e5b5..ef0e66b214 100644 --- a/tools/firmware/hvmloader/hvmloader.c +++ b/tools/firmware/hvmloader/hvmloader.c @@ -259,8 +259,17 @@ static const struct bios_config *detect_bios(void) static void acpi_enable_sci(void) { uint8_t pm1a_cnt_val; + uint8_t acpi_enable_val; + +#define SMI_CMD_IOPORT 0xb2 +#define PIIX4_ACPI_ENABLE 0xf1 +#define ICH9_ACPI_ENABLE 0x02 + + if (get_pc_machine_type() == MACHINE_TYPE_Q35) + acpi_enable_val = ICH9_ACPI_ENABLE; + else + acpi_enable_val = PIIX4_ACPI_ENABLE; -#define PIIX4_SMI_CMD_IOPORT 0xb2 #define PIIX4_ACPI_ENABLE 0xf1 /* @@ -269,7 +278,7 @@ static void acpi_enable_sci(void) */ pm1a_cnt_val = inb(ACPI_PM1A_CNT_BLK_ADDRESS_V1); if ( !(pm1a_cnt_val & ACPI_PM1C_SCI_EN) ) - outb(PIIX4_SMI_CMD_IOPORT, PIIX4_ACPI_ENABLE); + outb(SMI_CMD_IOPORT, acpi_enable_val); pm1a_cnt_val = inb(ACPI_PM1A_CNT_BLK_ADDRESS_V1); BUG_ON(!(pm1a_cnt_val & ACPI_PM1C_SCI_EN)); -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Tue Jun 20 17:17:34 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 20 Jun 2023 17:17:34 +0000 Received: from list by lists.xenproject.org with outflank-mailman.551989.861823 (Exim 4.92) (envelope-from ) id 1qBeyq-0006JL-3P; Tue, 20 Jun 2023 17:17:24 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 551989.861823; Tue, 20 Jun 2023 17:17:24 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBeyp-0006I8-Tn; Tue, 20 Jun 2023 17:17:23 +0000 Received: by outflank-mailman (input) for mailman id 551989; Tue, 20 Jun 2023 17:17:23 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBeyp-0005iB-A7 for xen-devel@lists.xenproject.org; Tue, 20 Jun 2023 17:17:23 +0000 Received: from mail-yb1-xb34.google.com (mail-yb1-xb34.google.com [2607:f8b0:4864:20::b34]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 516987df-0f8e-11ee-b234-6b7b168915f2; Tue, 20 Jun 2023 19:17:22 +0200 (CEST) Received: by mail-yb1-xb34.google.com with SMTP id 3f1490d57ef6-bd6d9d7da35so5098134276.0 for ; Tue, 20 Jun 2023 10:17:22 -0700 (PDT) Received: from joel-Precision-7920-Tower.. ([24.53.71.1]) by smtp.gmail.com with ESMTPSA id f81-20020a25cf54000000b00bcc0f2e4f05sm461938ybg.59.2023.06.20.10.17.20 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 20 Jun 2023 10:17:20 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 516987df-0f8e-11ee-b234-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687281441; x=1689873441; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=YD449Sev2tYSUJnmMC+HzxBJLT1Su39PvBIo4ApXUGY=; b=adRdWFSbOakGYazV9dcYXomiWWj7+4rJ6o1sZx3SvR8hyPBj+FsOCRxipT6ZXCv51h 57kB2SqdQvNHyE+E9TzTG/a7nsz3ll0LHU67ZHKSvSgkOqsR7rAgf1AN4M7UF828ddHL QlOw1k32tsp/vY9FOVcuWgx5b+RHgeZ7r3WNSnU+0c3SIWg9W87cXrXjoM9BRLUH1lvk ot2GiNtfkbvvPAhDYD64MY57bSWNQMGMFiHZ92iLKRWA0O+QIbdZfKenCbdghHnqLMAB U+QjDjVGr7jSAXjutlQTdFe6WfZIxtLiMmb9pWtJs3PxU7sk5AwrTKe1jBZcnrDIz81x FQUA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687281441; x=1689873441; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=YD449Sev2tYSUJnmMC+HzxBJLT1Su39PvBIo4ApXUGY=; b=KMs3fTXZlw0/OxoYkCVyC4ze72osOUgLvm18aNR8GWIjrctQtk8rmJRaPjsHU8o7F1 fji1AoZ4eeS7IWMoEbotHc2JpqbYKp7dfxtGlTNP76DzVe7OFxQYVUHRLszeuGSPRXDL 39wuQUSL6ezYy0coWJUH0cSNv/iEHAFcDmMwrasXAzQTc/PSpbQDAwHkufipbWVImqbT vxzPldyPAOFKgs8g787bbW3N/03CxAbDUVHqztD0o32pG2QTRESVf9oiQzX8IWl/10O2 rDFukEycWLVDnF36tyODuTbTLLLrlGedAooc0Lo7N6DjNvgC7fF6H4H+d+sS/eusARIe lApg== X-Gm-Message-State: AC+VfDzM06HrDI6gMcCU3iA/EPKjqr/ojmI7+tl/wVefy2v0UKF3NVt0 cfY8dU7DdC0MAk5/ytPT39H3JSHQR5i3Kg== X-Google-Smtp-Source: ACHHUZ5RtF84snsglSfujdJdWSxsr7g0T2grHUJCkp1rzv3jieejRbWNytcQ3zIPz/2IHBQfkHq10A== X-Received: by 2002:a25:b09:0:b0:bfe:8a76:18da with SMTP id 9-20020a250b09000000b00bfe8a7618damr15543ybl.49.1687281441220; Tue, 20 Jun 2023 10:17:21 -0700 (PDT) From: Joel Upham To: xen-devel@lists.xenproject.org Cc: Joel Upham , Jan Beulich , Andrew Cooper , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Wei Liu , Anthony PERARD Subject: [PATCH v2 05/12] hvmloader: add Q35 DSDT table loading Date: Tue, 20 Jun 2023 13:15:45 -0400 Message-Id: <6eae751cfad220a62f23bc551b78416c66213f38.1687215890.git.jupham125@gmail.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Allows to select Q35 DSDT table in hvmloader_acpi_build_tables(). Function get_pc_machine_type() is used to select a proper table (i440/q35). As we are bound to the qemu-xen device model for Q35, no need to initialize config->dsdt_15cpu/config->dsdt_15cpu_len fields. Added the seabios/ovmf loading here as well. Signed-off-by: Alexey Gerasimenko Signed-off-by: Joel Upham --- tools/firmware/hvmloader/ovmf.c | 5 +++++ tools/firmware/hvmloader/seabios.c | 5 +++++ tools/firmware/hvmloader/util.c | 13 +++++++++++-- tools/firmware/hvmloader/util.h | 2 ++ 4 files changed, 23 insertions(+), 2 deletions(-) diff --git a/tools/firmware/hvmloader/ovmf.c b/tools/firmware/hvmloader/ovmf.c index 23610a0717..2945c8a516 100644 --- a/tools/firmware/hvmloader/ovmf.c +++ b/tools/firmware/hvmloader/ovmf.c @@ -125,6 +125,11 @@ static void ovmf_acpi_build_tables(void) .dsdt_15cpu_len = 0 }; + if (get_pc_machine_type() == MACHINE_TYPE_Q35) { + config.dsdt_anycpu = dsdt_q35_anycpu_qemu_xen; + config.dsdt_anycpu_len = dsdt_q35_anycpu_qemu_xen_len; + } + hvmloader_acpi_build_tables(&config, ACPI_PHYSICAL_ADDRESS); } diff --git a/tools/firmware/hvmloader/seabios.c b/tools/firmware/hvmloader/seabios.c index 444d118ddb..72aabea130 100644 --- a/tools/firmware/hvmloader/seabios.c +++ b/tools/firmware/hvmloader/seabios.c @@ -96,6 +96,11 @@ static void seabios_acpi_build_tables(void) .dsdt_15cpu_len = 0, }; + if (get_pc_machine_type() == MACHINE_TYPE_Q35) { + config.dsdt_anycpu = dsdt_q35_anycpu_qemu_xen; + config.dsdt_anycpu_len = dsdt_q35_anycpu_qemu_xen_len; + } + hvmloader_acpi_build_tables(&config, rsdp); add_table(rsdp); } diff --git a/tools/firmware/hvmloader/util.c b/tools/firmware/hvmloader/util.c index a8685ee23a..ea416ebe10 100644 --- a/tools/firmware/hvmloader/util.c +++ b/tools/firmware/hvmloader/util.c @@ -984,8 +984,17 @@ void hvmloader_acpi_build_tables(struct acpi_config *config, } else if ( !strncmp(s, "qemu_xen", 9) ) { - config->dsdt_anycpu = dsdt_anycpu_qemu_xen; - config->dsdt_anycpu_len = dsdt_anycpu_qemu_xen_len; + if (get_pc_machine_type() == MACHINE_TYPE_Q35) + { + config->dsdt_anycpu = dsdt_q35_anycpu_qemu_xen; + config->dsdt_anycpu_len = dsdt_q35_anycpu_qemu_xen_len; + } + else + { + config->dsdt_anycpu = dsdt_anycpu_qemu_xen; + config->dsdt_anycpu_len = dsdt_anycpu_qemu_xen_len; + } + config->dsdt_15cpu = NULL; config->dsdt_15cpu_len = 0; } diff --git a/tools/firmware/hvmloader/util.h b/tools/firmware/hvmloader/util.h index f6a6cc3421..c6747c336d 100644 --- a/tools/firmware/hvmloader/util.h +++ b/tools/firmware/hvmloader/util.h @@ -278,7 +278,9 @@ bool check_overlap(uint64_t start, uint64_t size, uint64_t reserved_start, uint64_t reserved_size); extern const unsigned char dsdt_anycpu_qemu_xen[], dsdt_anycpu[], dsdt_15cpu[]; +extern const unsigned char dsdt_q35_anycpu_qemu_xen[]; extern const int dsdt_anycpu_qemu_xen_len, dsdt_anycpu_len, dsdt_15cpu_len; +extern const int dsdt_q35_anycpu_qemu_xen_len; unsigned long acpi_pages_allocated(void); -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Tue Jun 20 17:17:37 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 20 Jun 2023 17:17:37 +0000 Received: from list by lists.xenproject.org with outflank-mailman.551991.861837 (Exim 4.92) (envelope-from ) id 1qBeyt-0006p2-8K; Tue, 20 Jun 2023 17:17:27 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 551991.861837; Tue, 20 Jun 2023 17:17:27 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBeyt-0006on-5I; Tue, 20 Jun 2023 17:17:27 +0000 Received: by outflank-mailman (input) for mailman id 551991; Tue, 20 Jun 2023 17:17:26 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBeys-0005QM-6i for xen-devel@lists.xenproject.org; Tue, 20 Jun 2023 17:17:26 +0000 Received: from mail-yw1-x1134.google.com (mail-yw1-x1134.google.com [2607:f8b0:4864:20::1134]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 5264411f-0f8e-11ee-8611-37d641c3527e; Tue, 20 Jun 2023 19:17:24 +0200 (CEST) Received: by mail-yw1-x1134.google.com with SMTP id 00721157ae682-56fff21c2ebso53685627b3.3 for ; Tue, 20 Jun 2023 10:17:24 -0700 (PDT) Received: from joel-Precision-7920-Tower.. ([24.53.71.1]) by smtp.gmail.com with ESMTPSA id f81-20020a25cf54000000b00bcc0f2e4f05sm461938ybg.59.2023.06.20.10.17.21 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 20 Jun 2023 10:17:22 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 5264411f-0f8e-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687281443; x=1689873443; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=K2J1bNKwymcLCcica7VZKf11hCWokpfQzX8mE5sXyNo=; b=LZXZlej+K+2mi+QtRPDeuSiUGjLupvYCx2+7xRf6ywldCJs6yisa+0DNOPO1ZHPFOO IHtbs1VQYBms9Gp7kgBBCqadOl2zuuF5YlymFFcY0OOULvJCiLn8i7ATSf0fzUVJBeRa XrAJyjYmh4Ftxicni6gJMPY9D+4QTwDnbwgUB+Q9cj4Zta9ZY/yJDix+ZEbR++N8DYiw jJ9SjbwmVH7dLHcLv/b/OvnTetsSWDSnFufAwNri67evQigTGYiqw9zmF1gGDCdbrCiK qb2bWgmR/q+DTIr7aTiPvwRnaKbqRgnR8tBBiQpCnoegydkoDCYQyoYTU5A8J381KjgG DSqA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687281443; x=1689873443; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=K2J1bNKwymcLCcica7VZKf11hCWokpfQzX8mE5sXyNo=; b=USFYdw6moSxB36JapTZRTUQz7jMP4Nv6Lcs8JOt2FVq+ufR0qNz04HQYpFXiTSv5Ki o/1/KNFVve2jwAGfPjiR7j0uESp8PYicsRMhdgw1ALH8+z9x2acX+lglkLeFGSAPwBAP W7YpvLGHOX0yT633gBpH2qr8mfghghhh4/MuFpjqHCTQQ43ddMuK/aJJDVe3rfuW3HhY LauP2Lle+eENopukMi5SbVyro36+xZJrT/YNZsFosRbWt7P1BQ2EqXapbaoY6vtO+LTT qhJbMjrmwkW5jAGya9t1rT3GbBGLmN2+RateTdolDlmQT1FKIQ3OQ07ePV3ycXAlYdOW KRdQ== X-Gm-Message-State: AC+VfDzKGFfVnaYD7aVDKRa3OTTzRIJiew9z5CVA/aQuyI2AWzM4E84p HQKjT1WVqfllR/FV+aiJGWhYa5f2EIEtxQ== X-Google-Smtp-Source: ACHHUZ4XHmDRoy3fVyRInCf5TN0utBd/CpKeJ1xE1JOORcBMmo0GGOD5iOo+u5GQosrgQoRbYL56yg== X-Received: by 2002:a05:6902:cd:b0:bd5:9d1e:7182 with SMTP id i13-20020a05690200cd00b00bd59d1e7182mr9697443ybs.8.1687281442753; Tue, 20 Jun 2023 10:17:22 -0700 (PDT) From: Joel Upham To: xen-devel@lists.xenproject.org Cc: Joel Upham , Jan Beulich , Andrew Cooper , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Wei Liu , Anthony PERARD Subject: [PATCH v2 06/12] hvmloader: add basic Q35 support Date: Tue, 20 Jun 2023 13:15:46 -0400 Message-Id: X-Mailer: git-send-email 2.34.1 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit This patch does following: 1. Move PCI-device specific initialization out of pci_setup function to the newly created class_specific_pci_device_setup function to simplify code. 2. PCI-device specific initialization extended with LPC controller initialization 3. Initialize PIRQA...{PIRQD, PIRQH} routing accordingly to the emulated south bridge (either located on PCI_ISA_DEVFN or PCI_ICH9_LPC_DEVFN). Signed-off-by: Alexey Gerasimenko Signed-off-by: Joel Upham --- tools/firmware/hvmloader/config.h | 1 + tools/firmware/hvmloader/pci.c | 162 +++++++++++++++++++----------- 2 files changed, 104 insertions(+), 59 deletions(-) diff --git a/tools/firmware/hvmloader/config.h b/tools/firmware/hvmloader/config.h index c82adf6dc5..de3bbed609 100644 --- a/tools/firmware/hvmloader/config.h +++ b/tools/firmware/hvmloader/config.h @@ -54,6 +54,7 @@ extern uint8_t ioapic_version; #define PCI_ISA_DEVFN 0x08 /* dev 1, fn 0 */ #define PCI_ISA_IRQ_MASK 0x0c20U /* ISA IRQs 5,10,11 are PCI connected */ +#define PCI_ICH9_LPC_DEVFN 0xf8 /* dev 31, fn 0 */ #define ACPI_TIS_HDR_ADDRESS 0xFED40F00UL diff --git a/tools/firmware/hvmloader/pci.c b/tools/firmware/hvmloader/pci.c index 257a6feb61..8249f70806 100644 --- a/tools/firmware/hvmloader/pci.c +++ b/tools/firmware/hvmloader/pci.c @@ -34,6 +34,7 @@ const uint32_t pci_mem_end = RESERVED_MEMBASE; uint64_t pci_hi_mem_start = 0, pci_hi_mem_end = 0; enum virtual_vga virtual_vga = VGA_none; +uint32_t vga_devfn = 256; unsigned long igd_opregion_pgbase = 0; /* Check if the specified range conflicts with any reserved device memory. */ @@ -75,14 +76,93 @@ static int find_next_rmrr(uint32_t base) return next_rmrr; } +#define SCI_EN_IOPORT (ACPI_PM1A_EVT_BLK_ADDRESS_V1 + 0x30) +#define GBL_SMI_EN (1 << 0) +#define APMC_EN (1 << 5) + +static void class_specific_pci_device_setup(uint16_t vendor_id, + uint16_t device_id, + uint8_t bus, uint8_t devfn) +{ + uint16_t class; + + class = pci_readw(devfn, PCI_CLASS_DEVICE); + + switch ( class ) + { + case 0x0300: + /* If emulated VGA is found, preserve it as primary VGA. */ + if ( (vendor_id == 0x1234) && (device_id == 0x1111) ) + { + vga_devfn = devfn; + virtual_vga = VGA_std; + } + else if ( (vendor_id == 0x1013) && (device_id == 0xb8) ) + { + vga_devfn = devfn; + virtual_vga = VGA_cirrus; + } + else if ( virtual_vga == VGA_none ) + { + vga_devfn = devfn; + virtual_vga = VGA_pt; + if ( vendor_id == 0x8086 ) + { + igd_opregion_pgbase = mem_hole_alloc(IGD_OPREGION_PAGES); + /* + * Write the the OpRegion offset to give the opregion + * address to the device model. The device model will trap + * and map the OpRegion at the give address. + */ + pci_writel(vga_devfn, PCI_INTEL_OPREGION, + igd_opregion_pgbase << PAGE_SHIFT); + } + } + break; + + case 0x0680: + /* PIIX4 ACPI PM. Special device with special PCI config space. */ + ASSERT((vendor_id == 0x8086) && (device_id == 0x7113)); + pci_writew(devfn, 0x20, 0x0000); /* No smb bus IO enable */ + pci_writew(devfn, 0xd2, 0x0000); /* No smb bus IO enable */ + pci_writew(devfn, 0x22, 0x0000); + pci_writew(devfn, 0x3c, 0x0009); /* Hardcoded IRQ9 */ + pci_writew(devfn, 0x3d, 0x0001); + pci_writel(devfn, 0x40, ACPI_PM1A_EVT_BLK_ADDRESS_V1 | 1); + pci_writeb(devfn, 0x80, 0x01); /* enable PM io space */ + break; + + case 0x0601: + /* LPC bridge */ + if (vendor_id == 0x8086 && device_id == 0x2918) + { + pci_writeb(devfn, 0x3c, 0x09); /* Hardcoded IRQ9 */ + pci_writeb(devfn, 0x3d, 0x01); + pci_writel(devfn, 0x40, ACPI_PM1A_EVT_BLK_ADDRESS_V1 | 1); + pci_writeb(devfn, 0x44, 0x80); /* enable PM io space */ + outl(SCI_EN_IOPORT, inl(SCI_EN_IOPORT) | GBL_SMI_EN | APMC_EN); + } + break; + + case 0x0101: + if ( vendor_id == 0x8086 ) + { + /* Intel ICHs since PIIX3: enable IDE legacy mode. */ + pci_writew(devfn, 0x40, 0x8000); /* enable IDE0 */ + pci_writew(devfn, 0x42, 0x8000); /* enable IDE1 */ + } + break; + } +} + void pci_setup(void) { uint8_t is_64bar, using_64bar, bar64_relocate = 0; uint32_t devfn, bar_reg, cmd, bar_data, bar_data_upper; uint64_t base, bar_sz, bar_sz_upper, mmio_total = 0; - uint32_t vga_devfn = 256; - uint16_t class, vendor_id, device_id; + uint16_t vendor_id, device_id; unsigned int bar, pin, link, isa_irq; + int is_running_on_q35 = 0; uint8_t pci_devfn_decode_type[256] = {}; /* Resources assignable to PCI devices via BARs. */ @@ -137,13 +217,28 @@ void pci_setup(void) if ( s ) mmio_hole_size = strtoll(s, NULL, 0); + /* check if we are on Q35 and set the flag if it is the case */ + is_running_on_q35 = get_pc_machine_type() == MACHINE_TYPE_Q35; + /* Program PCI-ISA bridge with appropriate link routes. */ isa_irq = 0; for ( link = 0; link < 4; link++ ) { do { isa_irq = (isa_irq + 1) & 15; } while ( !(PCI_ISA_IRQ_MASK & (1U << isa_irq)) ); - pci_writeb(PCI_ISA_DEVFN, 0x60 + link, isa_irq); + + if (is_running_on_q35) + { + pci_writeb(PCI_ICH9_LPC_DEVFN, 0x60 + link, isa_irq); + + /* PIRQE..PIRQH are unused */ + pci_writeb(PCI_ICH9_LPC_DEVFN, 0x68 + link, 0x80); + } + else + { + pci_writeb(PCI_ISA_DEVFN, 0x60 + link, isa_irq); + } + printf("PCI-ISA link %u routed to IRQ%u\n", link, isa_irq); } @@ -154,66 +249,13 @@ void pci_setup(void) /* Scan the PCI bus and map resources. */ for ( devfn = 0; devfn < 256; devfn++ ) { - class = pci_readw(devfn, PCI_CLASS_DEVICE); vendor_id = pci_readw(devfn, PCI_VENDOR_ID); device_id = pci_readw(devfn, PCI_DEVICE_ID); if ( (vendor_id == 0xffff) && (device_id == 0xffff) ) continue; - ASSERT((devfn != PCI_ISA_DEVFN) || - ((vendor_id == 0x8086) && (device_id == 0x7000))); - - switch ( class ) - { - case 0x0300: - /* If emulated VGA is found, preserve it as primary VGA. */ - if ( (vendor_id == 0x1234) && (device_id == 0x1111) ) - { - vga_devfn = devfn; - virtual_vga = VGA_std; - } - else if ( (vendor_id == 0x1013) && (device_id == 0xb8) ) - { - vga_devfn = devfn; - virtual_vga = VGA_cirrus; - } - else if ( virtual_vga == VGA_none ) - { - vga_devfn = devfn; - virtual_vga = VGA_pt; - if ( vendor_id == 0x8086 ) - { - igd_opregion_pgbase = mem_hole_alloc(IGD_OPREGION_PAGES); - /* - * Write the the OpRegion offset to give the opregion - * address to the device model. The device model will trap - * and map the OpRegion at the give address. - */ - pci_writel(vga_devfn, PCI_INTEL_OPREGION, - igd_opregion_pgbase << PAGE_SHIFT); - } - } - break; - case 0x0680: - /* PIIX4 ACPI PM. Special device with special PCI config space. */ - ASSERT((vendor_id == 0x8086) && (device_id == 0x7113)); - pci_writew(devfn, 0x20, 0x0000); /* No smb bus IO enable */ - pci_writew(devfn, 0xd2, 0x0000); /* No smb bus IO enable */ - pci_writew(devfn, 0x22, 0x0000); - pci_writew(devfn, 0x3c, 0x0009); /* Hardcoded IRQ9 */ - pci_writew(devfn, 0x3d, 0x0001); - pci_writel(devfn, 0x40, ACPI_PM1A_EVT_BLK_ADDRESS_V1 | 1); - pci_writeb(devfn, 0x80, 0x01); /* enable PM io space */ - break; - case 0x0101: - if ( vendor_id == 0x8086 ) - { - /* Intel ICHs since PIIX3: enable IDE legacy mode. */ - pci_writew(devfn, 0x40, 0x8000); /* enable IDE0 */ - pci_writew(devfn, 0x42, 0x8000); /* enable IDE1 */ - } - break; - } + class_specific_pci_device_setup(vendor_id, device_id, + 0 /* virt_bus support TBD */, devfn); /* * It is recommended that BAR programming be done whilst decode @@ -304,7 +346,9 @@ void pci_setup(void) { /* This is the barber's pole mapping used by Xen. */ link = ((pin - 1) + (devfn >> 3)) & 3; - isa_irq = pci_readb(PCI_ISA_DEVFN, 0x60 + link); + isa_irq = pci_readb(is_running_on_q35 ? + PCI_ICH9_LPC_DEVFN : PCI_ISA_DEVFN, + 0x60 + link); pci_writeb(devfn, PCI_INTERRUPT_LINE, isa_irq); printf("pci dev %02x:%x INT%c->IRQ%u\n", devfn>>3, devfn&7, 'A'+pin-1, isa_irq); -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Tue Jun 20 17:17:38 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 20 Jun 2023 17:17:38 +0000 Received: from list by lists.xenproject.org with outflank-mailman.551992.861846 (Exim 4.92) (envelope-from ) id 1qBeyu-00077S-MN; Tue, 20 Jun 2023 17:17:28 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 551992.861846; Tue, 20 Jun 2023 17:17:28 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBeyu-00077E-J1; Tue, 20 Jun 2023 17:17:28 +0000 Received: by outflank-mailman (input) for mailman id 551992; Tue, 20 Jun 2023 17:17:26 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBeys-0005iB-Kx for xen-devel@lists.xenproject.org; Tue, 20 Jun 2023 17:17:26 +0000 Received: from mail-yb1-xb32.google.com (mail-yb1-xb32.google.com [2607:f8b0:4864:20::b32]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 534de959-0f8e-11ee-b234-6b7b168915f2; Tue, 20 Jun 2023 19:17:25 +0200 (CEST) Received: by mail-yb1-xb32.google.com with SMTP id 3f1490d57ef6-bf5f41a87ceso1815317276.1 for ; Tue, 20 Jun 2023 10:17:25 -0700 (PDT) Received: from joel-Precision-7920-Tower.. ([24.53.71.1]) by smtp.gmail.com with ESMTPSA id f81-20020a25cf54000000b00bcc0f2e4f05sm461938ybg.59.2023.06.20.10.17.23 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 20 Jun 2023 10:17:23 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 534de959-0f8e-11ee-b234-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687281444; x=1689873444; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=RM7XI3GANtEN3rKi5JobU5SJg3vOxg/6WaWdszBvqtQ=; b=RBZgYaRAHUdyrJqdHgfRRDvmbr/Pt4oWavppwOuem+MSRJw9IVQCa3XeKX6Tatn8UM cxn28siWSpZQYIrrxL6NJ5vBG2J6GZMJETQO6RuHpZJ7/9WNrbiokjq5EM8976YrVbwX FJK5M0sclB3l1CEwnIiEGFAmlw45h+kkxGaOlDiNQeKYwTf9zGJ+4CAHy+cnRgIHe0YI c2FTRIvKIRz6UBp1V7XQ4nb9kOHNWy7+eZboNej53/IOpy7LeOoT0WXH0XLBkB0XGKtP 8fr7SJegSvgz/ST+nUWAEqSjzL4agdCLaPYCLVaGsPeMykBwdrzZHbIINZkUtN9s4cq1 VXEQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687281444; x=1689873444; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=RM7XI3GANtEN3rKi5JobU5SJg3vOxg/6WaWdszBvqtQ=; b=AkOb6EXyqNTdEQTqeuOeKNsv51ddhWKdhxqd/3Ny2GxaohB0p9CK++xbL6I2Ogffpc XIj+kjTg2Tg8Eobmuv0DEScuFIcsFuNM0obRjmreKR2zErQP3mVBB6H2dVI3m3eLi3rx mwxuWycUNIOEPNvcvTnRkTvwJlefWWMClDIaUFkd9/Ui7NGEM26j59S9FPvJKPhLP1we F6aAOXHHCb2pyhxmAiQ3D5Tt9nIYS4E3wIQimeARyw30if/69M/DY0Nzsz2/7QDzWX1I sMZmymcqi69PJm+eAsAAFQwnmitDcajEyHEanTNcOF0a8L3SvyI+Z/JlhxE2P6vu8TNU /IvA== X-Gm-Message-State: AC+VfDwdrZSAdxDzjRa9EDKo4IFdPHo73X4JD3zZSdF9KHL1Pb0HYY2+ 6oc55EjH6GTb56Utif/EfOqBc+VffcvdFw== X-Google-Smtp-Source: ACHHUZ6BePx58VbyOSs7xi34QCqm4HRe1+CoYMXNRqAbD0+Tvtsm02zuBAtOpUE/HsTRFpQCs2tC7A== X-Received: by 2002:a25:9191:0:b0:b9e:7ec8:5d45 with SMTP id w17-20020a259191000000b00b9e7ec85d45mr9006708ybl.55.1687281444253; Tue, 20 Jun 2023 10:17:24 -0700 (PDT) From: Joel Upham To: xen-devel@lists.xenproject.org Cc: Joel Upham , Jan Beulich , Andrew Cooper , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Wei Liu , Anthony PERARD Subject: [PATCH v2 07/12] hvmloader: allocate MMCONFIG area in the MMIO hole + minor code refactoring Date: Tue, 20 Jun 2023 13:15:47 -0400 Message-Id: <389d2cd465f27a32f7370e976cecd2eefdf827db.1687215890.git.jupham125@gmail.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Much like normal PCI BARs or other chipset-specific memory-mapped resources, MMCONFIG area needs space in MMIO hole, so we must allocate it manually. The actual MMCONFIG size depends on a number of PCI buses available which should be covered by ECAM. Possible options are 64MB, 128MB and 256MB. As we are limited to the bus 0 currently, thus using lowest possible setting (64MB), #defined via PCI_MAX_MCFG_BUSES in hvmloader/config.h. When multiple PCI buses support for Xen will be implemented, PCI_MAX_MCFG_BUSES may be changed to calculation of the number of buses according to results of the PCI devices enumeration. The way to allocate MMCONFIG range in MMIO hole is similar to how other PCI BARs are allocated. The patch extends 'bars' structure to make it universal for any arbitrary BAR type -- either IO, MMIO, ROM or a chipset-specific resource. One important new field is addr_mask, which tells which bits of the base address can (should) be written. Different address types (ROM, MMIO BAR, PCIEXBAR) will have different addr_mask values. For every assignable BAR range we store its size, PCI device BDF (devfn actually) to which it belongs, BAR type (mem/io/mem64) and corresponding register offset in device PCI conf space. This way we can insert MMCONFIG entry into bars array in the same manner like for any other BARs. In this case, the devfn field will point to MCH PCI device and bar_reg will contain PCIEXBAR register offset. It will be assigned a slot in MMIO hole later in a very same way like for plain PCI BARs, with respect to its size alignment. Also, to reduce code complexity, all long mem/mem64 BAR flags checks are replaced by simple bars[i] field probing, eg.: - if ( (bar_reg == PCI_ROM_ADDRESS) || - ((bar_data & PCI_BASE_ADDRESS_SPACE) == - PCI_BASE_ADDRESS_SPACE_MEMORY) ) + if ( bars[i].is_mem ) Signed-off-by: Alexey Gerasimenko Signed-off-by: Joel Upham --- tools/firmware/hvmloader/config.h | 5 ++ tools/firmware/hvmloader/pci.c | 123 +++++++++++++++++++++------- tools/firmware/hvmloader/pci_regs.h | 2 + 3 files changed, 102 insertions(+), 28 deletions(-) diff --git a/tools/firmware/hvmloader/config.h b/tools/firmware/hvmloader/config.h index de3bbed609..53a3300d6e 100644 --- a/tools/firmware/hvmloader/config.h +++ b/tools/firmware/hvmloader/config.h @@ -55,6 +55,11 @@ extern uint8_t ioapic_version; #define PCI_ISA_DEVFN 0x08 /* dev 1, fn 0 */ #define PCI_ISA_IRQ_MASK 0x0c20U /* ISA IRQs 5,10,11 are PCI connected */ #define PCI_ICH9_LPC_DEVFN 0xf8 /* dev 31, fn 0 */ +#define PCI_MCH_DEVFN 0 /* bus 0, dev 0, func 0 */ + +/* possible values are: 64, 128, 256 */ +#define PCI_MAX_MCFG_BUSES 64 + #define ACPI_TIS_HDR_ADDRESS 0xFED40F00UL diff --git a/tools/firmware/hvmloader/pci.c b/tools/firmware/hvmloader/pci.c index 8249f70806..1137387c43 100644 --- a/tools/firmware/hvmloader/pci.c +++ b/tools/firmware/hvmloader/pci.c @@ -157,9 +157,10 @@ static void class_specific_pci_device_setup(uint16_t vendor_id, void pci_setup(void) { - uint8_t is_64bar, using_64bar, bar64_relocate = 0; + uint8_t is_64bar, using_64bar, bar64_relocate = 0, is_mem; uint32_t devfn, bar_reg, cmd, bar_data, bar_data_upper; uint64_t base, bar_sz, bar_sz_upper, mmio_total = 0; + uint64_t addr_mask; uint16_t vendor_id, device_id; unsigned int bar, pin, link, isa_irq; int is_running_on_q35 = 0; @@ -172,10 +173,14 @@ void pci_setup(void) /* Create a list of device BARs in descending order of size. */ struct bars { - uint32_t is_64bar; uint32_t devfn; uint32_t bar_reg; uint64_t bar_sz; + uint64_t addr_mask; /* which bits of the base address can be written */ + uint32_t bar_data; /* initial value - BAR flags here */ + uint8_t is_64bar; + uint8_t is_mem; + uint8_t padding[2]; } *bars = (struct bars *)scratch_start; unsigned int i, nr_bars = 0; uint64_t mmio_hole_size = 0; @@ -280,13 +285,20 @@ void pci_setup(void) bar_reg = PCI_ROM_ADDRESS; bar_data = pci_readl(devfn, bar_reg); + + is_mem = !!(((bar_data & PCI_BASE_ADDRESS_SPACE) == + PCI_BASE_ADDRESS_SPACE_MEMORY) || + (bar_reg == PCI_ROM_ADDRESS)); + if ( bar_reg != PCI_ROM_ADDRESS ) { - is_64bar = !!((bar_data & (PCI_BASE_ADDRESS_SPACE | - PCI_BASE_ADDRESS_MEM_TYPE_MASK)) == - (PCI_BASE_ADDRESS_SPACE_MEMORY | + is_64bar = !!(is_mem && + ((bar_data & PCI_BASE_ADDRESS_MEM_TYPE_MASK) == PCI_BASE_ADDRESS_MEM_TYPE_64)); pci_writel(devfn, bar_reg, ~0); + + addr_mask = is_mem ? PCI_BASE_ADDRESS_MEM_MASK + : PCI_BASE_ADDRESS_IO_MASK; } else { @@ -294,15 +306,15 @@ void pci_setup(void) pci_writel(devfn, bar_reg, (bar_data | PCI_ROM_ADDRESS_MASK) & ~PCI_ROM_ADDRESS_ENABLE); + + addr_mask = PCI_ROM_ADDRESS_MASK; } bar_sz = pci_readl(devfn, bar_reg); pci_writel(devfn, bar_reg, bar_data); if ( bar_reg != PCI_ROM_ADDRESS ) - bar_sz &= (((bar_data & PCI_BASE_ADDRESS_SPACE) == - PCI_BASE_ADDRESS_SPACE_MEMORY) ? - PCI_BASE_ADDRESS_MEM_MASK : - (PCI_BASE_ADDRESS_IO_MASK & 0xffff)); + bar_sz &= is_mem ? PCI_BASE_ADDRESS_MEM_MASK : + (PCI_BASE_ADDRESS_IO_MASK & 0xffff); else bar_sz &= PCI_ROM_ADDRESS_MASK; if (is_64bar) { @@ -316,6 +328,9 @@ void pci_setup(void) if ( bar_sz == 0 ) continue; + /* leave only memtype/enable bits etc */ + bar_data &= ~addr_mask; + for ( i = 0; i < nr_bars; i++ ) if ( bars[i].bar_sz < bar_sz ) break; @@ -323,14 +338,15 @@ void pci_setup(void) if ( i != nr_bars ) memmove(&bars[i+1], &bars[i], (nr_bars-i) * sizeof(*bars)); - bars[i].is_64bar = is_64bar; - bars[i].devfn = devfn; - bars[i].bar_reg = bar_reg; - bars[i].bar_sz = bar_sz; + bars[i].is_64bar = is_64bar; + bars[i].is_mem = is_mem; + bars[i].devfn = devfn; + bars[i].bar_reg = bar_reg; + bars[i].bar_sz = bar_sz; + bars[i].addr_mask = addr_mask; + bars[i].bar_data = bar_data; - if ( ((bar_data & PCI_BASE_ADDRESS_SPACE) == - PCI_BASE_ADDRESS_SPACE_MEMORY) || - (bar_reg == PCI_ROM_ADDRESS) ) + if ( is_mem ) mmio_total += bar_sz; nr_bars++; @@ -358,6 +374,63 @@ void pci_setup(void) pci_devfn_decode_type[devfn] = PCI_COMMAND_MASTER; } + /* + * Calculate MMCONFIG area size and squeeze it into the bars array + * for assigning a slot in the MMIO hole + */ + if (is_running_on_q35) + { + /* disable PCIEXBAR decoding for now */ + pci_writel(PCI_MCH_DEVFN, PCI_MCH_PCIEXBAR, 0); + pci_writel(PCI_MCH_DEVFN, PCI_MCH_PCIEXBAR + 4, 0); + +#define PCIEXBAR_64_BUSES (2 << 1) +#define PCIEXBAR_128_BUSES (1 << 1) +#define PCIEXBAR_256_BUSES (0 << 1) +#define PCIEXBAR_ENABLE (1 << 0) + + switch (PCI_MAX_MCFG_BUSES) + { + case 64: + bar_data = PCIEXBAR_64_BUSES | PCIEXBAR_ENABLE; + bar_sz = MB(64); + break; + + case 128: + bar_data = PCIEXBAR_128_BUSES | PCIEXBAR_ENABLE; + bar_sz = MB(128); + break; + + case 256: + bar_data = PCIEXBAR_256_BUSES | PCIEXBAR_ENABLE; + bar_sz = MB(256); + break; + + default: + /* unsupported number of buses specified */ + BUG(); + } + + addr_mask = ~(bar_sz - 1); + + for ( i = 0; i < nr_bars; i++ ) + if ( bars[i].bar_sz < bar_sz ) + break; + + if ( i != nr_bars ) + memmove(&bars[i+1], &bars[i], (nr_bars-i) * sizeof(*bars)); + + bars[i].is_mem = 1; + bars[i].devfn = PCI_MCH_DEVFN; + bars[i].bar_reg = PCI_MCH_PCIEXBAR; + bars[i].bar_sz = bar_sz; + bars[i].addr_mask = addr_mask; + bars[i].bar_data = bar_data; + + mmio_total += bar_sz; + nr_bars++; + } + if ( mmio_hole_size ) { uint64_t max_ram_below_4g = GB(4) - mmio_hole_size; @@ -492,10 +565,9 @@ void pci_setup(void) */ using_64bar = bars[i].is_64bar && bar64_relocate && (mmio_total > (mem_resource.max - mem_resource.base)); - bar_data = pci_readl(devfn, bar_reg); + bar_data = bars[i].bar_data; - if ( (bar_data & PCI_BASE_ADDRESS_SPACE) == - PCI_BASE_ADDRESS_SPACE_MEMORY ) + if ( bars[i].is_mem ) { /* Mapping high memory if PCI device is 64 bits bar */ if ( using_64bar ) { @@ -505,18 +577,15 @@ void pci_setup(void) if ( !pci_hi_mem_start ) pci_hi_mem_start = high_mem_resource.base; resource = &high_mem_resource; - bar_data &= ~PCI_BASE_ADDRESS_MEM_MASK; - } + } else { resource = &mem_resource; - bar_data &= ~PCI_BASE_ADDRESS_MEM_MASK; } mmio_total -= bar_sz; } else { resource = &io_resource; - bar_data &= ~PCI_BASE_ADDRESS_IO_MASK; } base = (resource->base + bar_sz - 1) & ~(uint64_t)(bar_sz - 1); @@ -538,7 +607,7 @@ void pci_setup(void) } } - bar_data |= (uint32_t)base; + bar_data |= (uint32_t) (base & bars[i].addr_mask); bar_data_upper = (uint32_t)(base >> 32); base += bar_sz; @@ -559,10 +628,8 @@ void pci_setup(void) devfn>>3, devfn&7, bar_reg, PRIllx_arg(bar_sz), bar_data_upper, bar_data); - - if ( (bar_reg == PCI_ROM_ADDRESS) || - ((bar_data & PCI_BASE_ADDRESS_SPACE) == - PCI_BASE_ADDRESS_SPACE_MEMORY) ) + + if ( bars[i].is_mem ) pci_devfn_decode_type[devfn] |= PCI_COMMAND_MEMORY; else pci_devfn_decode_type[devfn] |= PCI_COMMAND_IO; diff --git a/tools/firmware/hvmloader/pci_regs.h b/tools/firmware/hvmloader/pci_regs.h index 4d4dc0cd01..b9261ee2af 100644 --- a/tools/firmware/hvmloader/pci_regs.h +++ b/tools/firmware/hvmloader/pci_regs.h @@ -111,6 +111,8 @@ #define PCI_DEVICE_ID_INTEL_82441 0x1237 #define PCI_DEVICE_ID_INTEL_Q35_MCH 0x29c0 +#define PCI_MCH_PCIEXBAR 0x60 + #endif /* __HVMLOADER_PCI_REGS_H__ */ /* -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Tue Jun 20 17:17:40 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 20 Jun 2023 17:17:40 +0000 Received: from list by lists.xenproject.org with outflank-mailman.551993.861857 (Exim 4.92) (envelope-from ) id 1qBeyw-0007Oy-4Z; Tue, 20 Jun 2023 17:17:30 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 551993.861857; Tue, 20 Jun 2023 17:17:30 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBeyv-0007O5-VV; Tue, 20 Jun 2023 17:17:29 +0000 Received: by outflank-mailman (input) for mailman id 551993; Tue, 20 Jun 2023 17:17:28 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBeyt-0005iB-UQ for xen-devel@lists.xenproject.org; Tue, 20 Jun 2023 17:17:27 +0000 Received: from mail-yw1-x1129.google.com (mail-yw1-x1129.google.com [2607:f8b0:4864:20::1129]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 542214f4-0f8e-11ee-b234-6b7b168915f2; Tue, 20 Jun 2023 19:17:27 +0200 (CEST) Received: by mail-yw1-x1129.google.com with SMTP id 00721157ae682-570114e1feaso57381267b3.3 for ; Tue, 20 Jun 2023 10:17:27 -0700 (PDT) Received: from joel-Precision-7920-Tower.. ([24.53.71.1]) by smtp.gmail.com with ESMTPSA id f81-20020a25cf54000000b00bcc0f2e4f05sm461938ybg.59.2023.06.20.10.17.25 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 20 Jun 2023 10:17:25 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 542214f4-0f8e-11ee-b234-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687281446; x=1689873446; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=W6n7UkNFBYZK+AuffqP9HBzXa1ya+3d/QBUvXRQbFCI=; b=r5JhHlD7JEcSljp6bqBMH7Os3GLHWYE2c3zb4auizeHvepM/3G3Xlf2oKW2nlVEHYH 5e81JK507vpiQX0d/WdDxIwV0mceFriEJJCP0c+pQwfk3Ca0k1fbw5/oMTtIWn5mm6R5 UVcaXE+9VELaWqgVPFwXixRbepznblrbBprO1OZxluVWBzdbJN8UKFt1osvLmy4Qa6aG 4IU2jUes4S9CGjo2fz+GfpVkBkqQAdCHon0kRXn7XgpEBdIU+BLMUUfgT1jR/XmZpzt4 uDyyL1Y872Qxw9Kb7n3/T9u1TIfjbZpfeA88V5yxoQMQA2A6cE5BGa8Cn6YYd6/gRYEH WnhA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687281446; x=1689873446; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=W6n7UkNFBYZK+AuffqP9HBzXa1ya+3d/QBUvXRQbFCI=; b=bagvDyyiCK0gmC2JSgoPvy3P0JSrwRGS6Q8xmepqw5m/J4h/edeCqfoWYd9N9sYZei zVkgC4FmQ73wbzaer0nx/k75GiqpKL75xZLcaZixQjbyPFGFHMIU043bnV6eKrJxU7DG yVHWVvUJmaiSJkzGURYj4/On4r6enDmxt3G8V6o4kVJ74Ny5CX2oGr9j506SwD29LEZE i87xPtZg5jY1k4A9j3xgLEt0jEVX7QoOFxYtv1vLr2Z38VCHdbKz7bvsRktBc0Gf20rY /Z7INp2iAFQJf9vIvuP1ngX5OEFs/WEXhsAarrcG0c2AqeVDjvOS5B7mJxSN7VvJ/HBr tK8Q== X-Gm-Message-State: AC+VfDyKS/cVb2KTb1fFWSO4wq1S4LSkJgVUKLQCQEjdBgPOEDfZLgA0 Ixv6Jk4h/R4C+2HBobewxOiW8MO+isGCrQ== X-Google-Smtp-Source: ACHHUZ68QC9oB49thILBTGeZaENYOVn48+DUMt+IbjZtfNSwljGZxv+Qb3iD0g2PT+etPmH1FI2Wow== X-Received: by 2002:a25:8046:0:b0:bc4:5a65:1a4f with SMTP id a6-20020a258046000000b00bc45a651a4fmr10790263ybn.5.1687281445775; Tue, 20 Jun 2023 10:17:25 -0700 (PDT) From: Joel Upham To: xen-devel@lists.xenproject.org Cc: Joel Upham , Wei Liu , Anthony PERARD , Juergen Gross Subject: [PATCH v2 08/12] libxl: Q35 support (new option device_model_machine) Date: Tue, 20 Jun 2023 13:15:48 -0400 Message-Id: <2aaf3c01bb1e43384fa5e5e0c4583d586f0a1bfe.1687215890.git.jupham125@gmail.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Provide a new domain config option to select the emulated machine type, device_model_machine. It has following possible values: - "i440" - i440 emulation (default) - "q35" - emulate a Q35 machine. By default, the storage interface is AHCI. Note that omitting device_model_machine parameter means i440 system by default, so the default behavior doesn't change for existing domain config files. Setting device_model_machine to "q35" sends '-machine q35,accel=xen' argument to QEMU. Unlike i440, there no separate machine type to enable/disable Xen platform device, it is controlled via a machine property only. See 'libxl: Xen Platform device support for Q35' patch for a detailed description. Signed-off-by: Alexey Gerasimenko Signed-off-by: Joel Upham --- tools/libs/light/libxl_dm.c | 20 ++++++++++++++------ tools/libs/light/libxl_types.idl | 8 ++++++++ tools/xl/xl_parse.c | 14 ++++++++++++++ 3 files changed, 36 insertions(+), 6 deletions(-) diff --git a/tools/libs/light/libxl_dm.c b/tools/libs/light/libxl_dm.c index fc264a3a13..17bc2113e1 100644 --- a/tools/libs/light/libxl_dm.c +++ b/tools/libs/light/libxl_dm.c @@ -1809,13 +1809,21 @@ static int libxl__build_device_model_args_new(libxl__gc *gc, flexarray_append(dm_args, b_info->extra_pv[i]); break; case LIBXL_DOMAIN_TYPE_HVM: - if (!libxl_defbool_val(b_info->u.hvm.xen_platform_pci)) { - /* Switching here to the machine "pc" which does not add - * the xen-platform device instead of the default "xenfv" machine. - */ - machinearg = libxl__strdup(gc, "pc,accel=xen,suppress-vmdesc=on"); + if (b_info->device_model_machine == LIBXL_DEVICE_MODEL_MACHINE_Q35) { + if (!libxl_defbool_val(b_info->u.hvm.xen_platform_pci)) { + machinearg = libxl__sprintf(gc, "q35,accel=xen"); + } else { + machinearg = libxl__sprintf(gc, "q35,accel=xen,xen-platform-dev=on"); + } } else { - machinearg = libxl__strdup(gc, "xenfv,suppress-vmdesc=on"); + if (!libxl_defbool_val(b_info->u.hvm.xen_platform_pci)) { + /* Switching here to the machine "pc" which does not add + * the xen-platform device instead of the default "xenfv" machine. + */ + machinearg = libxl__strdup(gc, "pc,accel=xen,suppress-vmdesc=on"); + } else { + machinearg = libxl__strdup(gc, "xenfv,suppress-vmdesc=on"); + } } if (b_info->u.hvm.mmio_hole_memkb) { uint64_t max_ram_below_4g = (1ULL << 32) - diff --git a/tools/libs/light/libxl_types.idl b/tools/libs/light/libxl_types.idl index c10292e0d7..b1aadae877 100644 --- a/tools/libs/light/libxl_types.idl +++ b/tools/libs/light/libxl_types.idl @@ -108,6 +108,13 @@ libxl_device_model_version = Enumeration("device_model_version", [ (2, "QEMU_XEN"), # Upstream based qemu-xen device model ]) +libxl_device_model_machine = Enumeration("device_model_machine", [ + (0, "UNKNOWN"), + (1, "I440"), + (2, "Q35"), + ]) + + libxl_console_type = Enumeration("console_type", [ (0, "UNKNOWN"), (1, "SERIAL"), @@ -575,6 +582,7 @@ libxl_domain_build_info = Struct("domain_build_info",[ ("device_model_ssidref", uint32), ("device_model_ssid_label", string), ("device_model_user", string), + ("device_model_machine", libxl_device_model_machine), # extra parameters pass directly to qemu, NULL terminated ("extra", libxl_string_list), diff --git a/tools/xl/xl_parse.c b/tools/xl/xl_parse.c index 1f6f47daf4..e6fb7a409a 100644 --- a/tools/xl/xl_parse.c +++ b/tools/xl/xl_parse.c @@ -2689,6 +2689,20 @@ skip_usbdev: if (!xlu_cfg_get_long (config, "stubdomain_memory", &l, 0)) b_info->stubdomain_memkb = l * 1024; + if (!xlu_cfg_get_string (config, "device_model_machine", &buf, 0)) { + if (!strcmp(buf, "i440")) { + b_info->device_model_machine = LIBXL_DEVICE_MODEL_MACHINE_I440; + } else if (!strcmp(buf, "q35")) { + b_info->device_model_machine = LIBXL_DEVICE_MODEL_MACHINE_Q35; + } else { + fprintf(stderr, + "Unknown device_model_machine \"%s\" specified\n", buf); + exit(1); + } + } else { + b_info->device_model_machine = LIBXL_DEVICE_MODEL_MACHINE_UNKNOWN; + } + #define parse_extra_args(type) \ e = xlu_cfg_get_list_as_string_list(config, "device_model_args"#type, \ &b_info->extra##type, 0); \ -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Tue Jun 20 17:17:40 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 20 Jun 2023 17:17:40 +0000 Received: from list by lists.xenproject.org with outflank-mailman.551995.861862 (Exim 4.92) (envelope-from ) id 1qBeyw-0007VO-Kz; Tue, 20 Jun 2023 17:17:30 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 551995.861862; Tue, 20 Jun 2023 17:17:30 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBeyw-0007Td-DC; Tue, 20 Jun 2023 17:17:30 +0000 Received: by outflank-mailman (input) for mailman id 551995; Tue, 20 Jun 2023 17:17:29 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBeyv-0005iB-98 for xen-devel@lists.xenproject.org; Tue, 20 Jun 2023 17:17:29 +0000 Received: from mail-yb1-xb2b.google.com (mail-yb1-xb2b.google.com [2607:f8b0:4864:20::b2b]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 5507f960-0f8e-11ee-b234-6b7b168915f2; Tue, 20 Jun 2023 19:17:28 +0200 (CEST) Received: by mail-yb1-xb2b.google.com with SMTP id 3f1490d57ef6-be49e41a3d6so3677356276.1 for ; Tue, 20 Jun 2023 10:17:28 -0700 (PDT) Received: from joel-Precision-7920-Tower.. ([24.53.71.1]) by smtp.gmail.com with ESMTPSA id f81-20020a25cf54000000b00bcc0f2e4f05sm461938ybg.59.2023.06.20.10.17.26 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 20 Jun 2023 10:17:26 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 5507f960-0f8e-11ee-b234-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687281447; x=1689873447; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=euxQjj1nka42h3IgnfVDkR/WuQVbd1+OBbuouObQPZw=; b=ULINpF4cSUf3E0vswpH5QAioshxNpdrmsaQInoUb8RunfkwL889I8OvlIM6qjWZCk4 uxiDLykMuYl0naI1OGQNjyxFVfeQp0u9H1iPwZtbnWD2pX3538vZsErT3Dk3Tp9pH+7L FAjy9doJWjWE9uzJVcS9FI5byrLrI0tVlqwr8Li+iM8t4S7aHz925xtqyz7Jx9ECpwtw FexVqL6CDjTeADqsEE2H4t00aYSyDfWyahSmsy+rbU939psvTHIqO1x4AZ3jM5nXfIPE uCq2I+i8KDo503efp04bp6AiiRaVXs7cvdJwZ5FBO3aTg3y77vtQfke+tj6WIhSUwOyi 1ujw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687281447; x=1689873447; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=euxQjj1nka42h3IgnfVDkR/WuQVbd1+OBbuouObQPZw=; b=lma+31c3vFuN7Hzuo5WA6bloFNnQRh8U41SjonSPx98vLoW2bgRlP1Kg7K3dbU2DSV h5cTIvVecn2eZsP/DS9AVVxcJ6XbamWZ6R7dDJP0dzAjfTR7R4cAGC0L5aLHo9cxS04T aqRkEU6LhdahCzn5clOqqFB1IjBPUHgziHn1gcg+92lBeUjdQJqA4bZ2e2n7U/BVPMz/ UYaHaOihQuYOQPpuH9Zbwk+4Fri4Jsz45dQnLtjocjjNIaeWnOLzcbdMsXztsqGJhAUK 3RLtWGT4ttskH5Fm0OIUS6U5j7df3ZPxxALYyITlqBII8yhSuGti6jEUjrJjJnufcRz7 aZUA== X-Gm-Message-State: AC+VfDwiTfdZ/x25PNRQQAKSEfrenjLgyM37uDcdaOy6u27RrVbBaYZr 6WRuoD5wo3pEMvvuT0puuG2gzQ0508xrqg== X-Google-Smtp-Source: ACHHUZ5EB8KP3P9ZxnevN/zJy70NatbVfjPaFOUdV6sEz7ptY4/9L8nrO3fKDKVEOiFJsfGBavnyxg== X-Received: by 2002:a25:3620:0:b0:bc9:716d:19bf with SMTP id d32-20020a253620000000b00bc9716d19bfmr7782477yba.14.1687281447274; Tue, 20 Jun 2023 10:17:27 -0700 (PDT) From: Joel Upham To: xen-devel@lists.xenproject.org Cc: Joel Upham , Jan Beulich , Wei Liu , Anthony PERARD Subject: [PATCH v2 09/12] libacpi: build ACPI MCFG table if requested Date: Tue, 20 Jun 2023 13:15:49 -0400 Message-Id: <906595ebdc789e88715289ce48d306ae72e69fe1.1687215890.git.jupham125@gmail.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit This adds construct_mcfg() function to libacpi which allows to build MCFG table for a given mmconfig_addr/mmconfig_len pair if the ACPI_HAS_MCFG flag was specified in acpi_config struct. The maximum bus number is calculated from mmconfig_len using MCFG_SIZE_TO_NUM_BUSES macro (1MByte of MMIO space per bus). Signed-off-by: Alexey Gerasimenko Signed-off-by: Joel Upham --- tools/libacpi/acpi2_0.h | 21 ++++++++++++++++++++ tools/libacpi/build.c | 43 +++++++++++++++++++++++++++++++++++++++++ tools/libacpi/libacpi.h | 4 ++++ 3 files changed, 68 insertions(+) diff --git a/tools/libacpi/acpi2_0.h b/tools/libacpi/acpi2_0.h index 6dfa939a8c..02b0cf1098 100644 --- a/tools/libacpi/acpi2_0.h +++ b/tools/libacpi/acpi2_0.h @@ -442,6 +442,24 @@ struct acpi_20_slit { uint64_t localities; uint8_t entry[0]; }; +/* + * PCI Express Memory Mapped Configuration Description Table + */ +struct mcfg_range_entry { + uint64_t base_address; + uint16_t pci_segment; + uint8_t start_pci_bus_num; + uint8_t end_pci_bus_num; + uint32_t reserved; +}; + +struct acpi_mcfg { + struct acpi_header header; + uint8_t reserved[8]; + struct mcfg_range_entry entries[1]; +}; + +#define MCFG_SIZE_TO_NUM_BUSES(size) ((size) >> 20) /* * Table Signatures. @@ -458,6 +476,8 @@ struct acpi_20_slit { #define ACPI_2_0_WAET_SIGNATURE ASCII32('W','A','E','T') #define ACPI_2_0_SRAT_SIGNATURE ASCII32('S','R','A','T') #define ACPI_2_0_SLIT_SIGNATURE ASCII32('S','L','I','T') +#define ACPI_MCFG_SIGNATURE ASCII32('M','C','F','G') + /* * Table revision numbers. @@ -473,6 +493,7 @@ struct acpi_20_slit { #define ACPI_1_0_FADT_REVISION 0x01 #define ACPI_2_0_SRAT_REVISION 0x01 #define ACPI_2_0_SLIT_REVISION 0x01 +#define ACPI_1_0_MCFG_REVISION 0x01 #pragma pack () diff --git a/tools/libacpi/build.c b/tools/libacpi/build.c index 2f29863db1..fc029d18bf 100644 --- a/tools/libacpi/build.c +++ b/tools/libacpi/build.c @@ -295,6 +295,37 @@ static struct acpi_20_slit *construct_slit(struct acpi_ctxt *ctxt, return slit; } +static struct acpi_mcfg *construct_mcfg(struct acpi_ctxt *ctxt, + const struct acpi_config *config) +{ + struct acpi_mcfg *mcfg; + + /* Warning: this code expects that we have only one PCI segment */ + mcfg = ctxt->mem_ops.alloc(ctxt, sizeof(*mcfg), 16); + if (!mcfg) + return NULL; + + memset(mcfg, 0, sizeof(*mcfg)); + mcfg->header.signature = ACPI_MCFG_SIGNATURE; + mcfg->header.revision = ACPI_1_0_MCFG_REVISION; + fixed_strcpy(mcfg->header.oem_id, ACPI_OEM_ID); + fixed_strcpy(mcfg->header.oem_table_id, ACPI_OEM_TABLE_ID); + mcfg->header.oem_revision = ACPI_OEM_REVISION; + mcfg->header.creator_id = ACPI_CREATOR_ID; + mcfg->header.creator_revision = ACPI_CREATOR_REVISION; + mcfg->header.length = sizeof(*mcfg); + + mcfg->entries[0].base_address = config->mmconfig_addr; + mcfg->entries[0].pci_segment = 0; + mcfg->entries[0].start_pci_bus_num = 0; + mcfg->entries[0].end_pci_bus_num = + MCFG_SIZE_TO_NUM_BUSES(config->mmconfig_len) - 1; + + set_checksum(mcfg, offsetof(struct acpi_header, checksum), sizeof(*mcfg)); + + return mcfg;; +} + static int construct_passthrough_tables(struct acpi_ctxt *ctxt, unsigned long *table_ptrs, int nr_tables, @@ -342,6 +373,7 @@ static int construct_secondary_tables(struct acpi_ctxt *ctxt, struct acpi_20_hpet *hpet; struct acpi_20_waet *waet; struct acpi_20_tcpa *tcpa; + struct acpi_mcfg *mcfg; struct acpi_20_tpm2 *tpm2; unsigned char *ssdt; void *lasa; @@ -402,6 +434,17 @@ static int construct_secondary_tables(struct acpi_ctxt *ctxt, memcpy(ssdt, ssdt_laptop_slate, sizeof(ssdt_laptop_slate)); table_ptrs[nr_tables++] = ctxt->mem_ops.v2p(ctxt, ssdt); } + + /* MCFG */ + if ( config->table_flags & ACPI_HAS_MCFG ) + { + mcfg = construct_mcfg(ctxt, config); + if (!mcfg) + return -1; + + table_ptrs[nr_tables++] = ctxt->mem_ops.v2p(ctxt, mcfg); + } + /* TPM and its SSDT. */ if ( config->table_flags & ACPI_HAS_TPM ) { diff --git a/tools/libacpi/libacpi.h b/tools/libacpi/libacpi.h index deda39e5db..b4d3116ca5 100644 --- a/tools/libacpi/libacpi.h +++ b/tools/libacpi/libacpi.h @@ -27,6 +27,7 @@ #define ACPI_HAS_8042 (1<<13) #define ACPI_HAS_CMOS_RTC (1<<14) #define ACPI_HAS_SSDT_LAPTOP_SLATE (1<<15) +#define ACPI_HAS_MCFG (1<<16) struct xen_vmemrange; struct acpi_numa { @@ -89,6 +90,9 @@ struct acpi_config { uint32_t ioapic_base_address; uint16_t pci_isa_irq_mask; uint8_t ioapic_id; + + uint64_t mmconfig_addr; + uint32_t mmconfig_len; }; int acpi_build_tables(struct acpi_ctxt *ctxt, struct acpi_config *config); -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Tue Jun 20 17:17:43 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 20 Jun 2023 17:17:43 +0000 Received: from list by lists.xenproject.org with outflank-mailman.551997.861877 (Exim 4.92) (envelope-from ) id 1qBeyz-00087q-5U; Tue, 20 Jun 2023 17:17:33 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 551997.861877; Tue, 20 Jun 2023 17:17:33 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBeyz-00086u-0I; Tue, 20 Jun 2023 17:17:33 +0000 Received: by outflank-mailman (input) for mailman id 551997; Tue, 20 Jun 2023 17:17:30 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBeyw-0005iB-OT for xen-devel@lists.xenproject.org; Tue, 20 Jun 2023 17:17:30 +0000 Received: from mail-vs1-xe2e.google.com (mail-vs1-xe2e.google.com [2607:f8b0:4864:20::e2e]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 55e2d089-0f8e-11ee-b234-6b7b168915f2; Tue, 20 Jun 2023 19:17:30 +0200 (CEST) Received: by mail-vs1-xe2e.google.com with SMTP id ada2fe7eead31-440b66adc81so854514137.1 for ; Tue, 20 Jun 2023 10:17:30 -0700 (PDT) Received: from joel-Precision-7920-Tower.. ([24.53.71.1]) by smtp.gmail.com with ESMTPSA id f81-20020a25cf54000000b00bcc0f2e4f05sm461938ybg.59.2023.06.20.10.17.27 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 20 Jun 2023 10:17:28 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 55e2d089-0f8e-11ee-b234-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687281448; x=1689873448; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=3fjtno19HlqIKZlbtqkAAG6ggnFUVfYA4lZq6D4RFmU=; b=iIdMeU4y0VdO4JnA0H+pJgryhUUU5Hs0JZa7LVogJRMtTMQ3KmFElVEGGxaUU7IOOL Si11cySxP2h8+a7v7oOnB0qStxH1lyRyRm5JQEhHovVwbdGRRMrOM/mJ7uV9bBf1I0nv VFKFCLu1wCnO2l1Z0KfX5sKKkUyLZrfWCgn9Bcy0/CrrU8JJuJRL+jbHQSQNTk6+lvPe 28jKgvTsAO2VtaMVdH7CvUOyIyEE7g4fmVDYufhk5C3Kzi/j9sra83o5gMMUORNnwkm/ MW7GaMu/SDakwBIkSiwPwe8gOdLijkkxo0jf8L9tlsa57XPzBiILu53p56LiJNijm88i qdgA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687281448; x=1689873448; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=3fjtno19HlqIKZlbtqkAAG6ggnFUVfYA4lZq6D4RFmU=; b=ZFkdBLoeaqOgnCAE+W39Hs+pTl5G9V+JhJo00X5Ce2YmY+MA8jJFnnLUqTcy+sxd32 pXU++1UzRq7KiF//7iBqZc2uK7GoXvSKAysnTwUBvInMLrzZNuyomfqCz9JjOAgxR4OD jYjXPKHd5fCSkE7poD+d9HzxjbJmdpZS0VVjqPO7Sjk8C2Phs4c8ZPNxWv4uuCMfrrO2 q5Y9hbYTuATGe/WgNGr9lAAMuVXwymZ4rItoOsmYjYShjC55gBUrHq8QZpcaP/6cCS1A lCvDu1c8HjPmg2avRnl70xPVUUBqcc4hf1kOTDOLmadhPBQeW61klZsT3imMVInOkLO4 6h4g== X-Gm-Message-State: AC+VfDwyE22d1YtTn2ON9pOigDfsQguvN7J2Di88ffrKA/L/naKDxks/ 3bJlbmlyrZCkQqe2ZSfQTmtmobhz4D+KMA== X-Google-Smtp-Source: ACHHUZ7dPxqtN7XNpJ+cQlQ2aT5wsLr5A17J5Y7tAF+5tcvPlSCLK2UFAuZAbT0eu3bkNE00SJhJCQ== X-Received: by 2002:a67:d087:0:b0:438:d4bd:f1f2 with SMTP id s7-20020a67d087000000b00438d4bdf1f2mr4795848vsi.22.1687281448728; Tue, 20 Jun 2023 10:17:28 -0700 (PDT) From: Joel Upham To: xen-devel@lists.xenproject.org Cc: Joel Upham , Jan Beulich , Andrew Cooper , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Wei Liu , Anthony PERARD Subject: [PATCH v2 10/12] hvmloader: use libacpi to build MCFG table Date: Tue, 20 Jun 2023 13:15:50 -0400 Message-Id: X-Mailer: git-send-email 2.34.1 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit This patch extends hvmloader_acpi_build_tables() with code which detects if MMCONFIG is available -- i.e. initialized and enabled (+we're running on Q35), obtains its base address and size and asks libacpi to build MCFG table for it via setting the flag ACPI_HAS_MCFG in a manner similar to other optional ACPI tables building. Signed-off-by: Alexey Gerasimenko Signed-off-by: Joel Upham --- tools/firmware/hvmloader/util.c | 70 +++++++++++++++++++++++++++++++++ 1 file changed, 70 insertions(+) diff --git a/tools/firmware/hvmloader/util.c b/tools/firmware/hvmloader/util.c index ea416ebe10..7a75c07467 100644 --- a/tools/firmware/hvmloader/util.c +++ b/tools/firmware/hvmloader/util.c @@ -782,6 +782,69 @@ int get_pc_machine_type(void) return machine_type; } +#define PCIEXBAR_ADDR_MASK_64MB (~((1ULL << 26) - 1)) +#define PCIEXBAR_ADDR_MASK_128MB (~((1ULL << 27) - 1)) +#define PCIEXBAR_ADDR_MASK_256MB (~((1ULL << 28) - 1)) +#define PCIEXBAR_LENGTH_BITS(reg) (((reg) >> 1) & 3) +#define PCIEXBAREN 1 + +static uint64_t mmconfig_get_base(void) +{ + uint64_t base; + uint32_t reg = pci_readl(PCI_MCH_DEVFN, PCI_MCH_PCIEXBAR); + + base = reg | (uint64_t) pci_readl(PCI_MCH_DEVFN, PCI_MCH_PCIEXBAR+4) << 32; + + switch (PCIEXBAR_LENGTH_BITS(reg)) + { + case 0: + base &= PCIEXBAR_ADDR_MASK_256MB; + break; + case 1: + base &= PCIEXBAR_ADDR_MASK_128MB; + break; + case 2: + base &= PCIEXBAR_ADDR_MASK_64MB; + break; + case 3: + BUG(); /* a reserved value encountered */ + } + + return base; +} + +static uint32_t mmconfig_get_size(void) +{ + uint32_t reg = pci_readl(PCI_MCH_DEVFN, PCI_MCH_PCIEXBAR); + + switch (PCIEXBAR_LENGTH_BITS(reg)) + { + case 0: return MB(256); + case 1: return MB(128); + case 2: return MB(64); + case 3: + BUG(); /* a reserved value encountered */ + } + + return 0; +} + +static uint32_t mmconfig_is_enabled(void) +{ + return pci_readl(PCI_MCH_DEVFN, PCI_MCH_PCIEXBAR) & PCIEXBAREN; +} + +static int is_mmconfig_used(void) +{ + if (get_pc_machine_type() == MACHINE_TYPE_Q35) + { + if (mmconfig_is_enabled() && mmconfig_get_base()) + return 1; + } + + return 0; +} + static void validate_hvm_info(struct hvm_info_table *t) { uint8_t *ptr = (uint8_t *)t; @@ -1022,6 +1085,13 @@ void hvmloader_acpi_build_tables(struct acpi_config *config, config->pci_hi_len = pci_hi_mem_end - pci_hi_mem_start; } + if ( is_mmconfig_used() ) + { + config->table_flags |= ACPI_HAS_MCFG; + config->mmconfig_addr = mmconfig_get_base(); + config->mmconfig_len = mmconfig_get_size(); + } + s = xenstore_read("platform/generation-id", "0:0"); if ( s ) { -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Tue Jun 20 17:17:44 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 20 Jun 2023 17:17:44 +0000 Received: from list by lists.xenproject.org with outflank-mailman.551998.861886 (Exim 4.92) (envelope-from ) id 1qBez0-0008Rd-JC; Tue, 20 Jun 2023 17:17:34 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 551998.861886; Tue, 20 Jun 2023 17:17:34 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBez0-0008R5-BS; Tue, 20 Jun 2023 17:17:34 +0000 Received: by outflank-mailman (input) for mailman id 551998; Tue, 20 Jun 2023 17:17:33 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBeyz-0005QM-3r for xen-devel@lists.xenproject.org; Tue, 20 Jun 2023 17:17:33 +0000 Received: from mail-yb1-xb29.google.com (mail-yb1-xb29.google.com [2607:f8b0:4864:20::b29]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 56b00e4c-0f8e-11ee-8611-37d641c3527e; Tue, 20 Jun 2023 19:17:31 +0200 (CEST) Received: by mail-yb1-xb29.google.com with SMTP id 3f1490d57ef6-bad0c4f6f50so7245312276.1 for ; Tue, 20 Jun 2023 10:17:31 -0700 (PDT) Received: from joel-Precision-7920-Tower.. ([24.53.71.1]) by smtp.gmail.com with ESMTPSA id f81-20020a25cf54000000b00bcc0f2e4f05sm461938ybg.59.2023.06.20.10.17.29 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 20 Jun 2023 10:17:29 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 56b00e4c-0f8e-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687281450; x=1689873450; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=PKLROIhWgv3+xi3Vs6x4ocWCkHBA1opf2j9dZHATYxs=; b=TP1s5+8iR+cBMvwk90dAA1lgL5Z6puW4qrWgOa6gtmymrkBsZssZpuEHyEfhnOfBOh FFUeJavix8yHy0hAkvYbx/ed0n+dsE7+b3vkD8T2xSSXGeSjGPFApdYHSLLlB6OUaBBI Mxf45Ebsi6ykAEzObjnKd9tCY944d4cLVbMzsfUhSK9XPYJb6X8jWWDHygVXvOhU+iNc AgAFA/PkaxlIFyUDOsnCEmMzqicDuVFa+sD/wSRJOcc+uYILiUfiyuJzvkQKVFwUJDUx i7uZvslX1yxUda9+ZhsnwvR3NTff40UZxFxl5flAy6v7RNHSqc0wE4fgbc8HD8Z8sXzc QeNg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687281450; x=1689873450; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=PKLROIhWgv3+xi3Vs6x4ocWCkHBA1opf2j9dZHATYxs=; b=Xgnf3ThNpVWdZ/gK7+04AZSRGutnUid56KJwaNvvCIcOKEFx6DUZPfMvJlgmO68T5u 47At0KotxLFCR2/9A1EhJSDIaeN+T9ijBc8paVdFb43BXudQvU/R0pbT3l4JXgGqyscH gZ3zgdflw0QcMI1ll4FZ13rwnKt5cbcFSSD74DgL8cW72j1xywUDa1qy5KpFheSqMQyI cuE/kGZv1YyaWEet/jZy/6Ubl3QWRxLj5gQkyFCfF/LK/uN9BfpN8AHBd/03601s3aYc vvWDHohrqll3EOXn7fvYfve7k97tD+3ZOMkutXkSrpkqp/Pz2LrcON169vAFbZ7n/c/a FFWQ== X-Gm-Message-State: AC+VfDxkDjcWcSFnaYzKauruVFguyb/eG/UxLliSCgEjb5YOsttP3U3X +PZFsvQ3zgO8Y0eDSu7UrJtaJMbKmmSOew== X-Google-Smtp-Source: ACHHUZ4VO5sA/MEoNT//Z7AzINadcpFUb7ygHV16VD68wDGOlNiSzZRmpM6RKADkZboMddtweLYbgQ== X-Received: by 2002:a25:5ca:0:b0:bd6:a97e:3597 with SMTP id 193-20020a2505ca000000b00bd6a97e3597mr11233027ybf.30.1687281450004; Tue, 20 Jun 2023 10:17:30 -0700 (PDT) From: Joel Upham To: xen-devel@lists.xenproject.org Cc: Joel Upham , Wei Liu , Anthony PERARD Subject: [PATCH v2 11/12] docs: provide description for device_model_machine option Date: Tue, 20 Jun 2023 13:15:51 -0400 Message-Id: X-Mailer: git-send-email 2.34.1 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit This patch adds description for 'device_model_machine' option which allows to control which chipset will be emulated by device model. Signed-off-by: Alexey Gerasimenko Signed-off-by: Joel Upham --- docs/man/xl.cfg.5.pod.in | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/docs/man/xl.cfg.5.pod.in b/docs/man/xl.cfg.5.pod.in index 24ac927182..be61227313 100644 --- a/docs/man/xl.cfg.5.pod.in +++ b/docs/man/xl.cfg.5.pod.in @@ -2838,6 +2838,33 @@ you have existing guests then, depending on the nature of the guest Operating System, you may wish to force them to use the device model which they were installed with. +=item B + +Selects which chipset the device model should emulate for this +guest. + +Valid options are: + +=over 4 + +=item B<"i440"> + +Use i440 emulation (a default setting) + +=item B<"q35"> + +Use Q35/ICH9 emulation. This enables additional features for +PCIe device passthrough + +=back + +Note that omitting device_model_machine parameter means i440 system +by default, so the default behavior doesn't change for old domain +config files. + +It is recommended to install the guest OS from scratch to avoid issues +due to the emulated platform change. + =item B Override the path to the binary to be used as the device-model running in -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Tue Jun 20 17:17:47 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 20 Jun 2023 17:17:47 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552002.861897 (Exim 4.92) (envelope-from ) id 1qBez3-0000Ye-2l; Tue, 20 Jun 2023 17:17:37 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552002.861897; Tue, 20 Jun 2023 17:17:37 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBez2-0000Y9-TX; Tue, 20 Jun 2023 17:17:36 +0000 Received: by outflank-mailman (input) for mailman id 552002; Tue, 20 Jun 2023 17:17:35 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBez1-0005QM-47 for xen-devel@lists.xenproject.org; Tue, 20 Jun 2023 17:17:35 +0000 Received: from mail-yb1-xb2b.google.com (mail-yb1-xb2b.google.com [2607:f8b0:4864:20::b2b]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 5758b775-0f8e-11ee-8611-37d641c3527e; Tue, 20 Jun 2023 19:17:32 +0200 (CEST) Received: by mail-yb1-xb2b.google.com with SMTP id 3f1490d57ef6-bacf685150cso4920969276.3 for ; Tue, 20 Jun 2023 10:17:32 -0700 (PDT) Received: from joel-Precision-7920-Tower.. ([24.53.71.1]) by smtp.gmail.com with ESMTPSA id f81-20020a25cf54000000b00bcc0f2e4f05sm461938ybg.59.2023.06.20.10.17.30 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 20 Jun 2023 10:17:30 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 5758b775-0f8e-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687281451; x=1689873451; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=p0+IH6WutOOhss8a6x2jgwcV2LXw+L6iCti+oajsAV0=; b=R12VZbvVmViVHNuFRP0d8ysgoYTijNG9Dm9PqMQpio4eNeBCvyuInefSHdIn+uUFhP Tu6svVi9RoLuhymnDHSTc5owwsIbgdM+oBmFZBD0S2UtEXX/vT3pPy0z31Zq6XoNWBlZ ohwyrSfng1ANBezTIJWtHbBWKXuO4RYqso5JnwdSdETgBSNpz/5rSgsJsAe36slFowgf xWuP1xJZDCIfkUzYHZm6zJ9wwsrfYiV5gOaYMGFUCKOvFEhBjK35WX9ICqDJ0X6Px8za sqZXT+QfOoIpTfoI451s3puwqycegEbJgKk7JfiiH1aA45BZy1KXJrgX6GxCnSfA/+H7 G/4A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687281451; x=1689873451; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=p0+IH6WutOOhss8a6x2jgwcV2LXw+L6iCti+oajsAV0=; b=StmgAjKkx6BJGyWY3Tg+9UN1f7bfVQpAqX13NJtUwnD7/oNgWfrWMSu3dHjEXUizrL n9eVManrMphtF90U9V73k0mzKlxTHLsDYA42RgNdXwP0tQoffbAuPjioqCVLHrDaHNg1 TZyRQsH4+BwGUMlkasSxSbOFbnXY1sZYKZgvgkNlPAdrx90UXqD9q/MK4aV6pvqtYi+/ HtH423i4IXDG00nFjiZXNyS5b4YHEGNrlZKuVjjmjSYW0HQwf36oR81TxkuMDFseMLxd t+Dh12Lg1/Brwqdy8BVFtknYk6LFTANK0GMqVtJWs6CGhBEFKT1OUMwX4XUZu8Mqhbwu cawA== X-Gm-Message-State: AC+VfDy6ojnJIUIrC27kkGvGRI6tRMdAW5w3zBiQrZPxVUujlOxdGd8b DsXGCd2C92Zcv6xwoKL16P0mCEOan/YGqA== X-Google-Smtp-Source: ACHHUZ4OcSi/v7pNBl5g5dWsqt/1R98rs9PycPxVdap3h+BGz0V8h3JwT18jdLRU6sUQkmVbTLNoXQ== X-Received: by 2002:a5b:88e:0:b0:bc9:e58c:bfea with SMTP id e14-20020a5b088e000000b00bc9e58cbfeamr10556234ybq.16.1687281451157; Tue, 20 Jun 2023 10:17:31 -0700 (PDT) From: Joel Upham To: xen-devel@lists.xenproject.org Cc: Joel Upham , Wei Liu , Anthony PERARD , Juergen Gross Subject: [PATCH v2 12/12] libxl_dm: handle the new 6 port ahci controller Date: Tue, 20 Jun 2023 13:15:52 -0400 Message-Id: <7556e5b5ae930a7f331293f1a87c1e7f68e8a214.1687215890.git.jupham125@gmail.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit This patch adds support to allow for 6 emulated devices on a controller, and handling cdrom drives properly. This is not from the original patch series. Signed-off-by: Joel Upham --- tools/libs/light/libxl_dm.c | 40 ++++++++++++++++++++++++++++--------- 1 file changed, 31 insertions(+), 9 deletions(-) diff --git a/tools/libs/light/libxl_dm.c b/tools/libs/light/libxl_dm.c index 17bc2113e1..792dbc4383 100644 --- a/tools/libs/light/libxl_dm.c +++ b/tools/libs/light/libxl_dm.c @@ -1937,29 +1937,51 @@ static int libxl__build_device_model_args_new(libxl__gc *gc, if (disks[i].is_cdrom) { const char *drive_id; - if (disk > 4) { + if (disk > 4 && b_info->device_model_machine == LIBXL_DEVICE_MODEL_MACHINE_I440) { LOGD(WARN, guest_domid, "Emulated CDROM can be only one of the first 4 disks.\n" "Disk %s will be available via PV drivers but not as an " "emulated disk.", disks[i].vdev); continue; + } else if (disk > 6 && + b_info->device_model_machine == LIBXL_DEVICE_MODEL_MACHINE_Q35) { + LOGD(WARN, guest_domid, "Emulated CDROM can be only one of the first 6 disks.\n" + "Disk %s will be available via PV drivers but not as an " + "emulated disk.", + disks[i].vdev); + continue; } + if (b_info->device_model_machine == LIBXL_DEVICE_MODEL_MACHINE_I440) { + drive_id = GCSPRINTF("ide-%i", dev_number); + drive = GCSPRINTF("if=none,readonly=on,id=%s", drive_id); - drive_id = GCSPRINTF("ide-%i", dev_number); - drive = GCSPRINTF("if=none,readonly=on,id=%s", drive_id); - - if (target_path) - drive = libxl__sprintf(gc, "%s,file=%s,format=%s", - drive, target_path, format); + if (target_path) + drive = libxl__sprintf(gc, "%s,file=%s,format=%s", + drive, target_path, format); - flexarray_vappend(dm_args, + flexarray_vappend(dm_args, "-drive", drive, "-device", GCSPRINTF("ide-cd,id=%s,drive=%s,bus=ide.%u,unit=%u", drive_id, drive_id, disk / 2, disk % 2), NULL); - continue; + continue; + } else { + drive_id = GCSPRINTF("sata-0-%i", dev_number); + drive = GCSPRINTF("if=none,readonly=on,id=%s", drive_id); + if (target_path) + drive = libxl__sprintf(gc, "%s,file=%s,format=%s", + drive, target_path, format); + + flexarray_vappend(dm_args, + "-drive", drive, + "-device", + GCSPRINTF("ide-cd,id=%s,drive=%s,bus=ide.0", + drive_id, drive_id), + NULL); + continue; + } } else { /* * Explicit sd disks are passed through as is. -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Tue Jun 20 17:25:54 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 20 Jun 2023 17:25:54 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552057.861907 (Exim 4.92) (envelope-from ) id 1qBf6z-0004qF-3E; Tue, 20 Jun 2023 17:25:49 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552057.861907; Tue, 20 Jun 2023 17:25:49 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBf6z-0004q8-0G; Tue, 20 Jun 2023 17:25:49 +0000 Received: by outflank-mailman (input) for mailman id 552057; Tue, 20 Jun 2023 17:25:48 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBf6y-0004q1-Hx for xen-devel@lists.xenproject.org; Tue, 20 Jun 2023 17:25:48 +0000 Received: from mail-qk1-x736.google.com (mail-qk1-x736.google.com [2607:f8b0:4864:20::736]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 7d88d7d6-0f8f-11ee-8611-37d641c3527e; Tue, 20 Jun 2023 19:25:46 +0200 (CEST) Received: by mail-qk1-x736.google.com with SMTP id af79cd13be357-7624e8ceef7so372280285a.2 for ; Tue, 20 Jun 2023 10:25:46 -0700 (PDT) Received: from joel-Precision-7920-Tower.. ([24.53.71.1]) by smtp.gmail.com with ESMTPSA id e65-20020a0dc244000000b0056cffe97a11sm604604ywd.13.2023.06.20.10.25.44 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 20 Jun 2023 10:25:44 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 7d88d7d6-0f8f-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687281945; x=1689873945; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=SzWA4Xdu5chmj9W8/SSvQqa9W/rPnPlBar7MYCHNXR4=; b=nkl7c5jtmMqYWfcMCRh68XOL/ki9yoAqUWOOUdZYbHgQNtTW4Muko67OQmS60sOvg+ ggRq408cyY7W+oRbCFRd76IoQNOKl3V2vHKQHkvFccUNpu87dQ4GpH4aMYwPfdI5J+x7 fcVLBDtSLZCDXn3bXtIhHZ8ck7SFK/Mb/3LxBDBj76WswWRaSgSnrP3N3tDB9v9vant9 qq7YVX5+7iRJOD80LEHirfoFLBmQhRuBppzU5bTVbMqOeOcCNyiVGTUMQeYNW6keD053 wCMSFBO6mI5oqXjKQb80eh8jC0vmXZevKVW2FVEz8ctN2t8vOjb7GxNcXPRc2f+uwre3 xplw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687281945; x=1689873945; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=SzWA4Xdu5chmj9W8/SSvQqa9W/rPnPlBar7MYCHNXR4=; b=DfC5BfLNPRUpaPmqBB3HMpwNy1L87jI5IGJ0lJVeqMTLWdH2GZH2vhw5Jf0TrWczXH tq0iX+MbiUTqCG+b/KpYy/yfdbgii0zuDkRlF/QGhZAxZ0BViHycigu4arWBKUFghU9n Or0P+Ew6nX+gT/fnmI6plCZ/pA5eqf31ynIOebJHbN9ZnZYRfD/f1EGvcZs0JCQewxOd IwjpyXg1gcQiz6hsGI1EDtE6snNEhNz0JKi1ZsJbhDgsCitNITkZdmljhxQAqZsc2Y74 dWKrncpUAw8Rba8tWZzqjbeWjimkW2a6ImkEN3354FRN4p2pyPx4Z23PbVLUBV4Hq148 r/jg== X-Gm-Message-State: AC+VfDx/tPikEUJRxROL5InAOo5Lbyi/cMUHJ0wQ88kRnjJCXnSji53f 2gauWSKbHbqI67LG1pJ3PN4= X-Google-Smtp-Source: ACHHUZ6JBmTkFy7A8F5kZ4X/2RW/8CZZjXWkzqR1U6M/mNyG75yHCAfIog0YjAv0K3OGN+9EpieONQ== X-Received: by 2002:a05:620a:3d0d:b0:75f:403:77a8 with SMTP id tq13-20020a05620a3d0d00b0075f040377a8mr4458855qkn.31.1687281945053; Tue, 20 Jun 2023 10:25:45 -0700 (PDT) From: Joel Upham To: qemu-devel@nongnu.org Cc: Joel Upham , Paolo Bonzini , Richard Henderson , Eduardo Habkost , "Michael S. Tsirkin" , Marcel Apfelbaum , Stefano Stabellini , Anthony Perard , Paul Durrant , xen-devel@lists.xenproject.org (open list:X86 Xen CPUs) Subject: [PATCH v1 01/23] pc/xen: Xen Q35 support: provide IRQ handling for PCI devices Date: Tue, 20 Jun 2023 13:24:34 -0400 Message-Id: <1c547c5581ce6192b70c68f39de108cdb2c73f7e.1687278381.git.jupham125@gmail.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit The primary difference in PCI device IRQ management between Xen HVM and QEMU is that Xen PCI IRQs are "device-centric" while QEMU PCI IRQs are "chipset-centric". Namely, Xen uses PCI device BDF and INTx as coordinates to assert IRQ while QEMU finds out to which chipset PIRQ the IRQ is routed through the hierarchy of PCI buses and manages IRQ assertion on chipset side (as PIRQ inputs). Two callback functions are used for this purpose: .map_irq and .set_irq (named after corresponding structure fields). Corresponding Xen-specific callback functions are piix3_set_irq() and pci_slot_get_pirq(). In Xen case these functions do not operate on pirq pin numbers. Instead, they use a specific value to pass BDF/INTx information between .map_irq and .set_irq -- PCI device devfn and INTx pin number are combined into pseudo-PIRQ in pci_slot_get_pirq, which piix3_set_irq later decodes back into devfn and INTx number for passing to *set_pci_intx_level() call. For Xen on Q35 this scheme is still applicable, with the exception that function names are non-descriptive now and need to be renamed to show their common i440/Q35 nature. Proposed new names are: xen_pci_slot_get_pirq --> xen_cmn_pci_slot_get_pirq xen_piix3_set_irq --> xen_cmn_set_irq Another IRQ-related difference between i440 and Q35 is the number of PIRQ inputs and PIRQ routers (PCI IRQ links in terms of ACPI) available. i440 has 4 PCI interrupt links, while Q35 has 8 (PIRQA...PIRQH). Currently Xen have support for only 4 PCI links, so we describe only 4 of 8 PCI links in ACPI tables. Also, hvmloader disables PIRQ routing for PIRQE..PIRQH by writing 80h into corresponding PIRQ[n]_ROUT registers. All this PCI interrupt routing stuff is largely an ancient legacy from PIC era. It's hardly worth to extend number of PCI links supported as we normally deal with APIC mode and/or MSI interrupts. The only useful thing to do with PIRQE..PIRQH routing currently is to check if guest actually attempts to use it for some reason (despite ACPI PCI routing information provided). In this case, a warning is logged. Things have changed a bit in modern Qemu, and more changes to the IRQ mapping had to be done inside the lpc_ich9 to write the irqs and setup the mappings. Signed-off-by: Alexey Gerasimenko Signed-off-by: Joel Upham --- hw/i386/pc_piix.c | 3 +- hw/i386/xen/xen-hvm.c | 7 +++-- hw/isa/lpc_ich9.c | 53 ++++++++++++++++++++++++++++++++--- hw/isa/piix3.c | 2 +- include/hw/southbridge/ich9.h | 1 + include/hw/xen/xen.h | 4 +-- stubs/xen-hw-stub.c | 4 +-- 7 files changed, 61 insertions(+), 13 deletions(-) diff --git a/hw/i386/pc_piix.c b/hw/i386/pc_piix.c index d5b0dcd1fe..8c1b20f3bc 100644 --- a/hw/i386/pc_piix.c +++ b/hw/i386/pc_piix.c @@ -62,6 +62,7 @@ #endif #include "hw/xen/xen-x86.h" #include "hw/xen/xen.h" +#include "sysemu/xen.h" #include "migration/global_state.h" #include "migration/misc.h" #include "sysemu/numa.h" @@ -233,7 +234,7 @@ static void pc_init1(MachineState *machine, x86ms->above_4g_mem_size, pci_memory, ram_memory); pci_bus_map_irqs(pci_bus, - xen_enabled() ? xen_pci_slot_get_pirq + xen_enabled() ? xen_cmn_pci_slot_get_pirq : pc_pci_slot_get_pirq); pcms->bus = pci_bus; diff --git a/hw/i386/xen/xen-hvm.c b/hw/i386/xen/xen-hvm.c index 56641a550e..540ac46639 100644 --- a/hw/i386/xen/xen-hvm.c +++ b/hw/i386/xen/xen-hvm.c @@ -15,6 +15,7 @@ #include "hw/pci/pci.h" #include "hw/pci/pci_host.h" #include "hw/i386/pc.h" +#include "hw/southbridge/ich9.h" #include "hw/irq.h" #include "hw/hw.h" #include "hw/i386/apic-msidef.h" @@ -136,14 +137,14 @@ typedef struct XenIOState { Notifier wakeup; } XenIOState; -/* Xen specific function for piix pci */ +/* Xen-specific functions for pci dev IRQ handling */ -int xen_pci_slot_get_pirq(PCIDevice *pci_dev, int irq_num) +int xen_cmn_pci_slot_get_pirq(PCIDevice *pci_dev, int irq_num) { return irq_num + (PCI_SLOT(pci_dev->devfn) << 2); } -void xen_piix3_set_irq(void *opaque, int irq_num, int level) +void xen_cmn_set_irq(void *opaque, int irq_num, int level) { xen_set_pci_intx_level(xen_domid, 0, 0, irq_num >> 2, irq_num & 3, level); diff --git a/hw/isa/lpc_ich9.c b/hw/isa/lpc_ich9.c index 9c47a2f6c7..733a99d443 100644 --- a/hw/isa/lpc_ich9.c +++ b/hw/isa/lpc_ich9.c @@ -51,6 +51,9 @@ #include "hw/core/cpu.h" #include "hw/nvram/fw_cfg.h" #include "qemu/cutils.h" +#include "hw/xen/xen.h" +#include "sysemu/xen.h" +#include "hw/southbridge/piix.h" #include "hw/acpi/acpi_aml_interface.h" #include "trace.h" @@ -535,11 +538,49 @@ static int ich9_lpc_post_load(void *opaque, int version_id) return 0; } +static void ich9_lpc_config_write_xen(PCIDevice *d, + uint32_t addr, uint32_t val, int len) +{ + static bool pirqe_f_warned = false; + if (ranges_overlap(addr, len, ICH9_LPC_PIRQA_ROUT, 4)) { + /* handle PIRQA..PIRQD routing */ + /* Scan for updates to PCI link routes (0x60-0x63). */ + int i; + for (i = 0; i < len; i++) { + uint8_t v = (val >> (8 * i)) & 0xff; + if (v & 0x80) { + v = 0; + } + v &= 0xf; + if (((addr + i) >= PIIX_PIRQCA) && ((addr + i) <= PIIX_PIRQCD)) { + xen_set_pci_link_route(addr + i - PIIX_PIRQCA, v); + } + } + } else if (ranges_overlap(addr, len, ICH9_LPC_PIRQE_ROUT, 4)) { + while (len--) { + if (range_covers_byte(ICH9_LPC_PIRQE_ROUT, 4, addr) && + (val & 0x80) == 0) { + /* print warning only once */ + if (!pirqe_f_warned) { + pirqe_f_warned = true; + fprintf(stderr, "WARNING: guest domain attempted to use PIRQ%c " + "routing which is not supported for Xen/Q35 currently\n", + (char)(addr - ICH9_LPC_PIRQE_ROUT + 'E')); + break; + } + } + addr++, val >>= 8; + } + } +} + static void ich9_lpc_config_write(PCIDevice *d, uint32_t addr, uint32_t val, int len) { ICH9LPCState *lpc = ICH9_LPC_DEVICE(d); uint32_t rcba_old = pci_get_long(d->config + ICH9_LPC_RCBA); + if (xen_enabled()) + ich9_lpc_config_write_xen(d, addr, val, len); pci_default_write_config(d, addr, val, len); if (ranges_overlap(addr, len, ICH9_LPC_PMBASE, 4) || @@ -731,10 +772,14 @@ static void ich9_lpc_realize(PCIDevice *d, Error **errp) return; } - pci_bus_irqs(pci_bus, ich9_lpc_set_irq, d, ICH9_LPC_NB_PIRQS); - pci_bus_map_irqs(pci_bus, ich9_lpc_map_irq); - pci_bus_set_route_irq_fn(pci_bus, ich9_route_intx_pin_to_irq); - + if (xen_enabled()) { + pci_bus_irqs(pci_bus, xen_cmn_set_irq, d, ICH9_XEN_NUM_IRQ_SOURCES); + pci_bus_map_irqs(pci_bus, xen_cmn_pci_slot_get_pirq); + } else { + pci_bus_irqs(pci_bus, ich9_lpc_set_irq, d, ICH9_LPC_NB_PIRQS); + pci_bus_map_irqs(pci_bus, ich9_lpc_map_irq); + pci_bus_set_route_irq_fn(pci_bus, ich9_route_intx_pin_to_irq); + } ich9_lpc_pm_init(lpc); } diff --git a/hw/isa/piix3.c b/hw/isa/piix3.c index f9103ea45a..3d0545eb0e 100644 --- a/hw/isa/piix3.c +++ b/hw/isa/piix3.c @@ -420,7 +420,7 @@ static void piix3_xen_realize(PCIDevice *dev, Error **errp) * connected to the IOAPIC directly. * These additional routes can be discovered through ACPI. */ - pci_bus_irqs(pci_bus, xen_piix3_set_irq, piix3, XEN_PIIX_NUM_PIRQS); + pci_bus_irqs(pci_bus, xen_cmn_set_irq, piix3, XEN_PIIX_NUM_PIRQS); } static void piix3_xen_class_init(ObjectClass *klass, void *data) diff --git a/include/hw/southbridge/ich9.h b/include/hw/southbridge/ich9.h index fd01649d04..07b84d5227 100644 --- a/include/hw/southbridge/ich9.h +++ b/include/hw/southbridge/ich9.h @@ -130,6 +130,7 @@ struct ICH9LPCState { #define ICH9_A2_LPC_REVISION 0x2 #define ICH9_LPC_NB_PIRQS 8 /* PCI A-H */ +#define ICH9_XEN_NUM_IRQ_SOURCES 128 #define ICH9_LPC_PMBASE 0x40 #define ICH9_LPC_PMBASE_BASE_ADDRESS_MASK ICH9_MASK(32, 15, 7) diff --git a/include/hw/xen/xen.h b/include/hw/xen/xen.h index 2bd8ec742d..a2c3d98eaa 100644 --- a/include/hw/xen/xen.h +++ b/include/hw/xen/xen.h @@ -37,9 +37,9 @@ extern uint32_t xen_domid; extern enum xen_mode xen_mode; extern bool xen_domid_restrict; -int xen_pci_slot_get_pirq(PCIDevice *pci_dev, int irq_num); +int xen_cmn_pci_slot_get_pirq(PCIDevice *pci_dev, int irq_num); int xen_set_pci_link_route(uint8_t link, uint8_t irq); -void xen_piix3_set_irq(void *opaque, int irq_num, int level); +void xen_cmn_set_irq(void *opaque, int irq_num, int level); void xen_hvm_inject_msi(uint64_t addr, uint32_t data); int xen_is_pirq_msi(uint32_t msi_data); diff --git a/stubs/xen-hw-stub.c b/stubs/xen-hw-stub.c index 34a22f2ad7..f06fbf48c8 100644 --- a/stubs/xen-hw-stub.c +++ b/stubs/xen-hw-stub.c @@ -10,12 +10,12 @@ #include "hw/xen/xen.h" #include "hw/xen/xen-x86.h" -int xen_pci_slot_get_pirq(PCIDevice *pci_dev, int irq_num) +int xen_cmn_pci_slot_get_pirq(PCIDevice *pci_dev, int irq_num) { return -1; } -void xen_piix3_set_irq(void *opaque, int irq_num, int level) +void xen_cmn_set_irq(void *opaque, int irq_num, int level) { } -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Tue Jun 20 17:25:54 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 20 Jun 2023 17:25:54 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552059.861917 (Exim 4.92) (envelope-from ) id 1qBf74-00057K-GI; Tue, 20 Jun 2023 17:25:54 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552059.861917; Tue, 20 Jun 2023 17:25:54 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBf74-00057D-Bs; Tue, 20 Jun 2023 17:25:54 +0000 Received: by outflank-mailman (input) for mailman id 552059; Tue, 20 Jun 2023 17:25:53 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBf72-0004q1-LE for xen-devel@lists.xenproject.org; Tue, 20 Jun 2023 17:25:52 +0000 Received: from mail-vk1-xa34.google.com (mail-vk1-xa34.google.com [2607:f8b0:4864:20::a34]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 7f4a723c-0f8f-11ee-8611-37d641c3527e; Tue, 20 Jun 2023 19:25:49 +0200 (CEST) Received: by mail-vk1-xa34.google.com with SMTP id 71dfb90a1353d-460eb67244eso1697612e0c.1 for ; Tue, 20 Jun 2023 10:25:49 -0700 (PDT) Received: from joel-Precision-7920-Tower.. ([24.53.71.1]) by smtp.gmail.com with ESMTPSA id e65-20020a0dc244000000b0056cffe97a11sm604604ywd.13.2023.06.20.10.25.46 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 20 Jun 2023 10:25:47 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 7f4a723c-0f8f-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687281948; x=1689873948; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=+hrk0wDBbf6/161Oz/dROIywUu4Lt8nMEGmJFRn8F00=; b=Obywgck3AURMMYDbVBVdtSBtT/SqGqBSDRZg9h25ziU0SsbIlgpTLssByVvDpTHpI2 g1qtsIQ+94NG9dlgMNBtZfbt0uxoviGz++2OG+1/+lbczh0iCfDkz1jvJul38Inzgo4G FB9g1NNzNq2a33g5beQ2FJYyHnYM+ilX44age48drsme/gT+tJUcG+NGGEzQDCeAC4os OZ5zMnrANTxSmxgaMISNonIKBHsWAHsdgNJHBRNH1UnJ9GIAgd9f+lK457z/Tx+v0GFe 5ekAVzVuxTgSGpUeiAzr9Z21JTswMqiOEIPc22lQDVc5GQpCzoV8OB0qxxLNnjSdz3z6 869g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687281948; x=1689873948; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=+hrk0wDBbf6/161Oz/dROIywUu4Lt8nMEGmJFRn8F00=; b=G/MgUJymh9ZB/vnJL+T/HzAuqDoyRUMbHN5C2fCzSgLwISd+oLEYvFMzOOkulMBkRj gee7MEiYZSKcYvcCznXYagMi5cM55C5lo1uPbk2D+3yn/zVepZIu3HJT/AlHV4A6b+iX TshzBKrg41BjCu5nCdEKad++QSvifTXQZW6qxjbE9/g7cFu2uMsn0Vgw7oFiGNpxgj5D 268NdBPh2mtGlMPrEdM+fbGw/lESDJQvKt52FPwySqiZNbxoeqAUFk9JXmRvYPpoyGLN j5cz3YdapNWbHH+cY3NWpL3dL1aQY9Fd2zJx9pH21MMKwyyDo4BUroedpnCgyrtaX0E4 ph1g== X-Gm-Message-State: AC+VfDyvRuRVT6YOUMQkn55CHuHZmf38LnpRmgNFLj0HUJL0zKAma3Q2 H/gyE7rvWdgaxM1o/wugYTQ= X-Google-Smtp-Source: ACHHUZ5n89RQ7Sbe1aNDnGGyqW0nP1Eb7/Rpjyat3GzAshcU2+942N9ZPVTFchUI1ZE7Z7Tx8gRb9g== X-Received: by 2002:a1f:3d11:0:b0:465:fa30:d633 with SMTP id k17-20020a1f3d11000000b00465fa30d633mr4464272vka.0.1687281947492; Tue, 20 Jun 2023 10:25:47 -0700 (PDT) From: Joel Upham To: qemu-devel@nongnu.org Cc: Joel Upham , "Michael S. Tsirkin" , Marcel Apfelbaum , Igor Mammedov , Ani Sinha , Eduardo Habkost , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Yanan Wang , Paolo Bonzini , Richard Henderson , Stefano Stabellini , Anthony Perard , Paul Durrant , =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= , xen-devel@lists.xenproject.org (open list:X86 Xen CPUs) Subject: [PATCH v1 1/1] Q35 Support Date: Tue, 20 Jun 2023 13:24:35 -0400 Message-Id: <272947b9494f00bb4ad3e27c050e99f8b61905b3.1687127946.git.jupham125@gmail.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit --- hw/acpi/ich9.c | 22 +- hw/acpi/pcihp.c | 6 +- hw/core/machine.c | 19 + hw/i386/pc_piix.c | 3 +- hw/i386/pc_q35.c | 39 +- hw/i386/xen/xen-hvm.c | 7 +- hw/i386/xen/xen_platform.c | 19 +- hw/isa/lpc_ich9.c | 53 +- hw/isa/piix3.c | 2 +- hw/pci-host/q35.c | 28 +- hw/pci/pci.c | 17 + hw/xen/xen-host-pci-device.c | 106 +++- hw/xen/xen-host-pci-device.h | 6 +- hw/xen/xen_pt.c | 49 +- hw/xen/xen_pt.h | 19 +- hw/xen/xen_pt_config_init.c | 1103 ++++++++++++++++++++++++++++++--- include/hw/acpi/ich9.h | 1 + include/hw/acpi/pcihp.h | 2 + include/hw/boards.h | 1 + include/hw/i386/pc.h | 3 + include/hw/pci-host/q35.h | 4 +- include/hw/pci/pci.h | 3 + include/hw/southbridge/ich9.h | 1 + include/hw/xen/xen.h | 4 +- qemu-options.hx | 1 + softmmu/datadir.c | 1 - softmmu/qdev-monitor.c | 3 +- stubs/xen-hw-stub.c | 4 +- 28 files changed, 1395 insertions(+), 131 deletions(-) diff --git a/hw/acpi/ich9.c b/hw/acpi/ich9.c index 25e2c7243e..234706a191 100644 --- a/hw/acpi/ich9.c +++ b/hw/acpi/ich9.c @@ -39,6 +39,8 @@ #include "hw/southbridge/ich9.h" #include "hw/mem/pc-dimm.h" #include "hw/mem/nvdimm.h" +#include "hw/xen/xen.h" +#include "sysemu/xen.h" //#define DEBUG @@ -67,6 +69,10 @@ static void ich9_gpe_writeb(void *opaque, hwaddr addr, uint64_t val, ICH9LPCPMRegs *pm = opaque; acpi_gpe_ioport_writeb(&pm->acpi_regs, addr, val); acpi_update_sci(&pm->acpi_regs, pm->irq); + + if (xen_enabled()) { + acpi_pcihp_reset(&pm->acpi_pci_hotplug); + } } static const MemoryRegionOps ich9_gpe_ops = { @@ -137,7 +143,8 @@ static int ich9_pm_post_load(void *opaque, int version_id) { ICH9LPCPMRegs *pm = opaque; uint32_t pm_io_base = pm->pm_io_base; - pm->pm_io_base = 0; + if (!xen_enabled()) + pm->pm_io_base = 0; ich9_pm_iospace_update(pm, pm_io_base); return 0; } @@ -268,7 +275,10 @@ static void pm_reset(void *opaque) acpi_pm1_evt_reset(&pm->acpi_regs); acpi_pm1_cnt_reset(&pm->acpi_regs); acpi_pm_tmr_reset(&pm->acpi_regs); - acpi_gpe_reset(&pm->acpi_regs); + /* Noticed guest freezing in xen when this was reset after S3. */ + if (!xen_enabled()) { + acpi_gpe_reset(&pm->acpi_regs); + } pm->smi_en = 0; if (!pm->smm_enabled) { @@ -316,7 +326,7 @@ void ich9_pm_init(PCIDevice *lpc_pci, ICH9LPCPMRegs *pm, qemu_irq sci_irq) acpi_pm_tco_init(&pm->tco_regs, &pm->io); } - if (pm->acpi_pci_hotplug.use_acpi_hotplug_bridge) { + if (pm->acpi_pci_hotplug.use_acpi_hotplug_bridge || xen_enabled()) { acpi_pcihp_init(OBJECT(lpc_pci), &pm->acpi_pci_hotplug, pci_get_bus(lpc_pci), @@ -332,10 +342,14 @@ void ich9_pm_init(PCIDevice *lpc_pci, ICH9LPCPMRegs *pm, qemu_irq sci_irq) pm->powerdown_notifier.notify = pm_powerdown_req; qemu_register_powerdown_notifier(&pm->powerdown_notifier); + if (xen_enabled()) { + acpi_set_pci_info(true); + } + legacy_acpi_cpu_hotplug_init(pci_address_space_io(lpc_pci), OBJECT(lpc_pci), &pm->gpe_cpu, ICH9_CPU_HOTPLUG_IO_BASE); - if (pm->acpi_memory_hotplug.is_enabled) { + if (pm->acpi_memory_hotplug.is_enabled || xen_enabled()) { acpi_memory_hotplug_init(pci_address_space_io(lpc_pci), OBJECT(lpc_pci), &pm->acpi_memory_hotplug, ACPI_MEMORY_HOTPLUG_BASE); diff --git a/hw/acpi/pcihp.c b/hw/acpi/pcihp.c index cdd6f775a1..5b065d670c 100644 --- a/hw/acpi/pcihp.c +++ b/hw/acpi/pcihp.c @@ -40,6 +40,7 @@ #include "qapi/error.h" #include "qom/qom-qobject.h" #include "trace.h" +#include "sysemu/xen.h" #define ACPI_PCIHP_SIZE 0x0018 #define PCI_UP_BASE 0x0000 @@ -84,7 +85,8 @@ static void *acpi_set_bsel(PCIBus *bus, void *opaque) bool is_bridge = IS_PCI_BRIDGE(br); /* hotplugged bridges can't be described in ACPI ignore them */ - if (qbus_is_hotpluggable(BUS(bus))) { + /* Xen requires hotplugging to the root device, even on the Q35 chipset */ + if (qbus_is_hotpluggable(BUS(bus)) || xen_enabled()) { if (!is_bridge || (!br->hotplugged && info->has_bridge_hotplug)) { bus_bsel = g_malloc(sizeof *bus_bsel); @@ -97,7 +99,7 @@ static void *acpi_set_bsel(PCIBus *bus, void *opaque) return info; } -static void acpi_set_pci_info(bool has_bridge_hotplug) +void acpi_set_pci_info(bool has_bridge_hotplug) { static bool bsel_is_set; Object *host = acpi_get_i386_pci_host(); diff --git a/hw/core/machine.c b/hw/core/machine.c index 1000406211..703138d2ec 100644 --- a/hw/core/machine.c +++ b/hw/core/machine.c @@ -455,6 +455,20 @@ static void machine_set_graphics(Object *obj, bool value, Error **errp) ms->enable_graphics = value; } +static bool machine_get_xen_platform_dev(Object *obj, Error **errp) +{ + MachineState *ms = MACHINE(obj); + + return ms->xen_platform_dev; +} + +static void machine_set_xen_platform_dev(Object *obj, bool value, Error **errp) +{ + MachineState *ms = MACHINE(obj); + + ms->xen_platform_dev = value; +} + static char *machine_get_firmware(Object *obj, Error **errp) { MachineState *ms = MACHINE(obj); @@ -1004,6 +1018,11 @@ static void machine_class_init(ObjectClass *oc, void *data) object_class_property_set_description(oc, "graphics", "Set on/off to enable/disable graphics emulation"); + object_class_property_add_bool(oc, "xen-platform-dev", + machine_get_xen_platform_dev, machine_set_xen_platform_dev); + object_class_property_set_description(oc, "xen-platform-dev", + "Set on/off to enable/disable Xen Platform device"); + object_class_property_add_str(oc, "firmware", machine_get_firmware, machine_set_firmware); object_class_property_set_description(oc, "firmware", diff --git a/hw/i386/pc_piix.c b/hw/i386/pc_piix.c index d5b0dcd1fe..8c1b20f3bc 100644 --- a/hw/i386/pc_piix.c +++ b/hw/i386/pc_piix.c @@ -62,6 +62,7 @@ #endif #include "hw/xen/xen-x86.h" #include "hw/xen/xen.h" +#include "sysemu/xen.h" #include "migration/global_state.h" #include "migration/misc.h" #include "sysemu/numa.h" @@ -233,7 +234,7 @@ static void pc_init1(MachineState *machine, x86ms->above_4g_mem_size, pci_memory, ram_memory); pci_bus_map_irqs(pci_bus, - xen_enabled() ? xen_pci_slot_get_pirq + xen_enabled() ? xen_cmn_pci_slot_get_pirq : pc_pci_slot_get_pirq); pcms->bus = pci_bus; diff --git a/hw/i386/pc_q35.c b/hw/i386/pc_q35.c index 6155427e48..81aa9e04f0 100644 --- a/hw/i386/pc_q35.c +++ b/hw/i386/pc_q35.c @@ -57,10 +57,24 @@ #include "hw/hyperv/vmbus-bridge.h" #include "hw/mem/nvdimm.h" #include "hw/i386/acpi-build.h" +#include "hw/xen/xen-x86.h" +#include "sysemu/xen.h" /* ICH9 AHCI has 6 ports */ #define MAX_SATA_PORTS 6 +static void q35_xen_hvm_init(MachineState *machine) +{ + PCMachineState *pcms = PC_MACHINE(machine); + + if (xen_enabled()) { + /* check if Xen Platform device is enabled */ + if (machine->xen_platform_dev) { + pci_create_simple(pcms->bus, -1, "xen-platform"); + } + } +} + struct ehci_companions { const char *name; int func; @@ -131,6 +145,7 @@ static void pc_q35_init(MachineState *machine) MemoryRegion *system_io = get_system_io(); MemoryRegion *pci_memory; MemoryRegion *rom_memory; + MemoryRegion *ram_memory; GSIState *gsi_state; ISABus *isa_bus; int i; @@ -182,8 +197,12 @@ static void pc_q35_init(MachineState *machine) } pc_machine_init_sgx_epc(pcms); - x86_cpus_init(x86ms, pcmc->default_cpu_version); + x86_cpus_init(x86ms, pcmc->default_cpu_version); + if (xen_enabled()) { + xen_hvm_init_pc(pcms, &ram_memory); + machine->ram = ram_memory; + } kvmclock_create(pcmc->kvmclock_create_always); /* pci enabled */ @@ -216,7 +235,15 @@ static void pc_q35_init(MachineState *machine) } /* allocate ram and load rom/bios */ - pc_memory_init(pcms, system_memory, rom_memory, pci_hole64_size); + if (!xen_enabled()) + pc_memory_init(pcms, system_memory, rom_memory, pci_hole64_size); + else { + pc_system_flash_cleanup_unused(pcms); + if (machine->kernel_filename != NULL) { + /* For xen HVM direct kernel boot, load linux here */ + xen_load_linux(pcms); + } + } object_property_add_child(OBJECT(machine), "q35", OBJECT(q35_host)); object_property_set_link(OBJECT(q35_host), MCH_HOST_PROP_RAM_MEM, @@ -273,8 +300,12 @@ static void pc_q35_init(MachineState *machine) for (i = 0; i < IOAPIC_NUM_PINS; i++) { qdev_connect_gpio_out_named(lpc_dev, ICH9_GPIO_GSI, i, x86ms->gsi[i]); } - isa_bus = ISA_BUS(qdev_get_child_bus(lpc_dev, "isa.0")); + if (xen_enabled()) { + q35_xen_hvm_init(machine); + } + + isa_bus = ISA_BUS(qdev_get_child_bus(lpc_dev, "isa.0")); if (x86ms->pic == ON_OFF_AUTO_ON || x86ms->pic == ON_OFF_AUTO_AUTO) { pc_i8259_create(isa_bus, gsi_state->i8259_irq); } @@ -289,7 +320,7 @@ static void pc_q35_init(MachineState *machine) assert(pcms->vmport != ON_OFF_AUTO__MAX); if (pcms->vmport == ON_OFF_AUTO_AUTO) { - pcms->vmport = ON_OFF_AUTO_ON; + pcms->vmport = xen_enabled() ? ON_OFF_AUTO_OFF : ON_OFF_AUTO_ON; } /* init basic PC hardware */ diff --git a/hw/i386/xen/xen-hvm.c b/hw/i386/xen/xen-hvm.c index 56641a550e..540ac46639 100644 --- a/hw/i386/xen/xen-hvm.c +++ b/hw/i386/xen/xen-hvm.c @@ -15,6 +15,7 @@ #include "hw/pci/pci.h" #include "hw/pci/pci_host.h" #include "hw/i386/pc.h" +#include "hw/southbridge/ich9.h" #include "hw/irq.h" #include "hw/hw.h" #include "hw/i386/apic-msidef.h" @@ -136,14 +137,14 @@ typedef struct XenIOState { Notifier wakeup; } XenIOState; -/* Xen specific function for piix pci */ +/* Xen-specific functions for pci dev IRQ handling */ -int xen_pci_slot_get_pirq(PCIDevice *pci_dev, int irq_num) +int xen_cmn_pci_slot_get_pirq(PCIDevice *pci_dev, int irq_num) { return irq_num + (PCI_SLOT(pci_dev->devfn) << 2); } -void xen_piix3_set_irq(void *opaque, int irq_num, int level) +void xen_cmn_set_irq(void *opaque, int irq_num, int level) { xen_set_pci_intx_level(xen_domid, 0, 0, irq_num >> 2, irq_num & 3, level); diff --git a/hw/i386/xen/xen_platform.c b/hw/i386/xen/xen_platform.c index 57f1d742c1..0375337222 100644 --- a/hw/i386/xen/xen_platform.c +++ b/hw/i386/xen/xen_platform.c @@ -34,6 +34,7 @@ #include "sysemu/block-backend.h" #include "qemu/error-report.h" #include "qemu/module.h" +#include "include/hw/i386/pc.h" #include "qom/object.h" #ifdef CONFIG_XEN @@ -223,6 +224,12 @@ static void unplug_disks(PCIBus *b, PCIDevice *d, void *opaque) if (flags & UNPLUG_NVME_DISKS) { object_unparent(OBJECT(d)); } + break; + + case PCI_CLASS_STORAGE_SATA: + if (!aux) { + object_unparent(OBJECT(d)); + } default: break; @@ -231,7 +238,17 @@ static void unplug_disks(PCIBus *b, PCIDevice *d, void *opaque) static void pci_unplug_disks(PCIBus *bus, uint32_t flags) { - pci_for_each_device(bus, 0, unplug_disks, &flags); + PCIBus *q35 = find_q35(); + if (q35) { + /* When q35 is detected, we will remove the ahci controller + * with the hard disks. In the libxl config, cdrom devices + * are put on a seperate ahci controller. This allows for 6 cdrom + * devices to be added, and 6 qemu hard disks. + */ + pci_function_for_one_bus(bus, unplug_disks, &flags); + } else { + pci_for_each_device(bus, 0, unplug_disks, &flags); + } } static void platform_fixed_ioport_writew(void *opaque, uint32_t addr, uint32_t val) diff --git a/hw/isa/lpc_ich9.c b/hw/isa/lpc_ich9.c index 9c47a2f6c7..fbda6085d0 100644 --- a/hw/isa/lpc_ich9.c +++ b/hw/isa/lpc_ich9.c @@ -51,6 +51,9 @@ #include "hw/core/cpu.h" #include "hw/nvram/fw_cfg.h" #include "qemu/cutils.h" +#include "hw/xen/xen.h" +#include "sysemu/xen.h" +#include "hw/southbridge/piix.h" #include "hw/acpi/acpi_aml_interface.h" #include "trace.h" @@ -535,11 +538,49 @@ static int ich9_lpc_post_load(void *opaque, int version_id) return 0; } +static void ich9_lpc_config_write_xen(PCIDevice *d, + uint32_t addr, uint32_t val, int len) +{ + static bool pirqe_f_warned = false; + if (ranges_overlap(addr, len, ICH9_LPC_PIRQA_ROUT, 4)) { + /* handle PIRQA..PIRQD routing */ + /* Scan for updates to PCI link routes (0x60-0x63). */ + int i; + for (i = 0; i < len; i++) { + uint8_t v = (val >> (8 * i)) & 0xff; + if (v & 0x80) { + v = 0; + } + v &= 0xf; + if (((addr + i) >= PIIX_PIRQCA) && ((addr + i) <= PIIX_PIRQCD)) { + xen_set_pci_link_route(addr + i - PIIX_PIRQCA, v); + } + } + } else if (ranges_overlap(addr, len, ICH9_LPC_PIRQE_ROUT, 4)) { + while (len--) { + if (range_covers_byte(ICH9_LPC_PIRQE_ROUT, 4, addr) && + (val & 0x80) == 0) { + /* print warning only once */ + if (!pirqe_f_warned) { + pirqe_f_warned = true; + fprintf(stderr, "WARNING: guest domain attempted to use PIRQ%c " + "routing which is not supported for Xen/Q35 currently\n", + (char)(addr - ICH9_LPC_PIRQE_ROUT + 'E')); + break; + } + } + addr++, val >>= 8; + } + } +} + static void ich9_lpc_config_write(PCIDevice *d, uint32_t addr, uint32_t val, int len) { ICH9LPCState *lpc = ICH9_LPC_DEVICE(d); uint32_t rcba_old = pci_get_long(d->config + ICH9_LPC_RCBA); + if (xen_enabled()) + ich9_lpc_config_write_xen(d, addr, val, len); pci_default_write_config(d, addr, val, len); if (ranges_overlap(addr, len, ICH9_LPC_PMBASE, 4) || @@ -731,10 +772,14 @@ static void ich9_lpc_realize(PCIDevice *d, Error **errp) return; } - pci_bus_irqs(pci_bus, ich9_lpc_set_irq, d, ICH9_LPC_NB_PIRQS); - pci_bus_map_irqs(pci_bus, ich9_lpc_map_irq); - pci_bus_set_route_irq_fn(pci_bus, ich9_route_intx_pin_to_irq); - + if (xen_enabled()) { + pci_bus_irqs(pci_bus, xen_cmn_set_irq, d, ICH9_XEN_NUM_IRQ_SOURCES); + pci_bus_map_irqs(pci_bus, xen_cmn_pci_slot_get_pirq); + } else { + pci_bus_irqs(pci_bus, ich9_lpc_set_irq, d, ICH9_LPC_NB_PIRQS); + pci_bus_map_irqs(pci_bus, ich9_lpc_map_irq); + pci_bus_set_route_irq_fn(pci_bus, ich9_route_intx_pin_to_irq); + } ich9_lpc_pm_init(lpc); } diff --git a/hw/isa/piix3.c b/hw/isa/piix3.c index f9103ea45a..3d0545eb0e 100644 --- a/hw/isa/piix3.c +++ b/hw/isa/piix3.c @@ -420,7 +420,7 @@ static void piix3_xen_realize(PCIDevice *dev, Error **errp) * connected to the IOAPIC directly. * These additional routes can be discovered through ACPI. */ - pci_bus_irqs(pci_bus, xen_piix3_set_irq, piix3, XEN_PIIX_NUM_PIRQS); + pci_bus_irqs(pci_bus, xen_cmn_set_irq, piix3, XEN_PIIX_NUM_PIRQS); } static void piix3_xen_class_init(ObjectClass *klass, void *data) diff --git a/hw/pci-host/q35.c b/hw/pci-host/q35.c index fd18920e7f..3bb6325fb3 100644 --- a/hw/pci-host/q35.c +++ b/hw/pci-host/q35.c @@ -37,6 +37,7 @@ #include "qapi/error.h" #include "qapi/visitor.h" #include "qemu/module.h" +#include "sysemu/xen.h" /**************************************************************************** * Q35 host @@ -259,6 +260,15 @@ static void q35_host_initfn(Object *obj) qdev_prop_allow_set_link_before_realize, 0); } +PCIBus *find_q35(void) +{ + PCIHostState *s = OBJECT_CHECK(PCIHostState, + object_resolve_path("/machine/q35", NULL), + TYPE_PCI_HOST_BRIDGE); + return s ? s->bus : NULL; +} + + static const TypeInfo q35_host_info = { .name = TYPE_Q35_HOST_DEVICE, .parent = TYPE_PCIE_HOST_BRIDGE, @@ -315,12 +325,21 @@ static void mch_update_pciexbar(MCHPCIState *mch) break; case MCH_HOST_BRIDGE_PCIEXBAR_LENGTH_128M: length = 128 * 1024 * 1024; - addr_mask |= MCH_HOST_BRIDGE_PCIEXBAR_128ADMSK | - MCH_HOST_BRIDGE_PCIEXBAR_64ADMSK; + if (!xen_enabled()) { + addr_mask |= MCH_HOST_BRIDGE_PCIEXBAR_128ADMSK | + MCH_HOST_BRIDGE_PCIEXBAR_64ADMSK; + } else { + addr_mask |= MCH_HOST_BRIDGE_PCIEXBAR_128ADMSK; + } break; case MCH_HOST_BRIDGE_PCIEXBAR_LENGTH_64M: length = 64 * 1024 * 1024; - addr_mask |= MCH_HOST_BRIDGE_PCIEXBAR_64ADMSK; + if (!xen_enabled()) { + addr_mask |= MCH_HOST_BRIDGE_PCIEXBAR_64ADMSK; + } else { + addr_mask |= MCH_HOST_BRIDGE_PCIEXBAR_64ADMSK | + MCH_HOST_BRIDGE_PCIEXBAR_128ADMSK; + } break; case MCH_HOST_BRIDGE_PCIEXBAR_LENGTH_RVD: qemu_log_mask(LOG_GUEST_ERROR, "Q35: Reserved PCIEXBAR LENGTH\n"); @@ -561,7 +580,8 @@ static void mch_reset(DeviceState *qdev) d->config[MCH_HOST_BRIDGE_F_SMBASE] = 0; d->wmask[MCH_HOST_BRIDGE_F_SMBASE] = 0xff; - mch_update(mch); + if (!xen_enabled()) + mch_update(mch); } static void mch_realize(PCIDevice *d, Error **errp) diff --git a/hw/pci/pci.c b/hw/pci/pci.c index 1cc7c89036..8eac3d751a 100644 --- a/hw/pci/pci.c +++ b/hw/pci/pci.c @@ -1815,6 +1815,23 @@ void pci_for_each_device_reverse(PCIBus *bus, int bus_num, } } +void pci_function_for_one_bus(PCIBus *bus, + void (*fn)(PCIBus *b, PCIDevice *d, void *opaque), + void *opaque) +{ + bus = pci_find_bus_nr(bus, 0); + + if (bus) { + PCIDevice *d; + + d = bus->devices[PCI_DEVFN(4,0)]; + if (d) { + fn(bus, d, opaque); + return; + } + } +} + void pci_for_each_device_under_bus(PCIBus *bus, pci_bus_dev_fn fn, void *opaque) { diff --git a/hw/xen/xen-host-pci-device.c b/hw/xen/xen-host-pci-device.c index 8c6e9a1716..63481a859e 100644 --- a/hw/xen/xen-host-pci-device.c +++ b/hw/xen/xen-host-pci-device.c @@ -32,6 +32,7 @@ #define IORESOURCE_PREFETCH 0x00001000 /* No side effects */ #define IORESOURCE_MEM_64 0x00100000 +#define XEN_HOST_PCI_CAP_MAX 48 static void xen_host_pci_sysfs_path(const XenHostPCIDevice *d, const char *name, char *buf, ssize_t size) @@ -198,6 +199,19 @@ static bool xen_host_pci_dev_is_virtfn(XenHostPCIDevice *d) return !stat(path, &buf); } +static bool xen_host_pci_dev_has_pcie_ext_caps(XenHostPCIDevice *d) +{ + uint32_t header; + + if (xen_host_pci_get_long(d, PCI_CONFIG_SPACE_SIZE, &header)) + return false; + + if (header == 0 || header == ~0U) + return false; + + return true; +} + static void xen_host_pci_config_open(XenHostPCIDevice *d, Error **errp) { char path[PATH_MAX]; @@ -296,37 +310,93 @@ int xen_host_pci_set_block(XenHostPCIDevice *d, int pos, uint8_t *buf, int len) return xen_host_pci_config_write(d, pos, buf, len); } -int xen_host_pci_find_ext_cap_offset(XenHostPCIDevice *d, uint32_t cap) +int xen_host_pci_find_next_ext_cap(XenHostPCIDevice *d, int pos, uint32_t cap) { uint32_t header = 0; int max_cap = XEN_HOST_PCI_MAX_EXT_CAP; - int pos = PCI_CONFIG_SPACE_SIZE; + + if (!d->has_pcie_ext_caps) + return 0; + + if (!pos) { + pos = PCI_CONFIG_SPACE_SIZE; + } else { + if (xen_host_pci_get_long(d, pos, &header)) + return 0; + + pos = PCI_EXT_CAP_NEXT(header); + } do { + if (!pos || pos < PCI_CONFIG_SPACE_SIZE) { + break; + } + if (xen_host_pci_get_long(d, pos, &header)) { break; } /* * If we have no capabilities, this is indicated by cap ID, * cap version and next pointer all being 0. + * Also check for all F's returned (which means PCIe ext conf space + * is unreadable for some reason) */ - if (header == 0) { + if (header == 0 || header == ~0U) { break; } - if (PCI_EXT_CAP_ID(header) == cap) { + if (cap == CAP_ID_ANY) { + return pos; + } else if (PCI_EXT_CAP_ID(header) == cap) { return pos; } pos = PCI_EXT_CAP_NEXT(header); - if (pos < PCI_CONFIG_SPACE_SIZE) { + } while (--max_cap); + + return 0; +} + +int xen_host_pci_find_next_cap(XenHostPCIDevice *d, int pos, uint32_t cap) +{ + uint8_t id; + unsigned max_cap = XEN_HOST_PCI_CAP_MAX; + uint8_t status = 0; + uint8_t curpos; + + if (xen_host_pci_get_byte(d, PCI_STATUS, &status)) + return 0; + + if ((status & PCI_STATUS_CAP_LIST) == 0) + return 0; + + if (pos < PCI_CAPABILITY_LIST) { + curpos = PCI_CAPABILITY_LIST; + } else { + curpos = (uint8_t) pos; + } + + while (max_cap--) { + if (xen_host_pci_get_byte(d, curpos, &curpos)) + break; + if (!curpos) + break; + + if (cap == CAP_ID_ANY) + return curpos; + + if (xen_host_pci_get_byte(d, curpos + PCI_CAP_LIST_ID, &id)) break; - } - max_cap--; - } while (max_cap > 0); + if (id == 0xff) + break; + else if (id == cap) + return curpos; + + curpos += PCI_CAP_LIST_NEXT; + } - return -1; + return 0; } void xen_host_pci_device_get(XenHostPCIDevice *d, uint16_t domain, @@ -335,6 +405,7 @@ void xen_host_pci_device_get(XenHostPCIDevice *d, uint16_t domain, { ERRP_GUARD(); unsigned int v; + int pcie_cap_pos; d->config_fd = -1; d->domain = domain; @@ -376,7 +447,22 @@ void xen_host_pci_device_get(XenHostPCIDevice *d, uint16_t domain, } d->class_code = v; - d->is_virtfn = xen_host_pci_dev_is_virtfn(d); + d->is_virtfn = xen_host_pci_dev_is_virtfn(d); + d->has_pcie_ext_caps = xen_host_pci_dev_has_pcie_ext_caps(d); + + /* read and store PCIe Capabilities field for later use */ + pcie_cap_pos = xen_host_pci_find_next_cap(d, 0, PCI_CAP_ID_EXP); + + if (pcie_cap_pos) { + if (xen_host_pci_get_word(d, pcie_cap_pos + PCI_EXP_FLAGS, + &d->pcie_flags)) { + error_setg(errp, "Unable to read from PCI Express capability " + "structure at 0x%x", pcie_cap_pos); + goto error; + } + } else { + d->pcie_flags = 0xFFFF; + } return; diff --git a/hw/xen/xen-host-pci-device.h b/hw/xen/xen-host-pci-device.h index 4d8d34ecb0..2884c4b4b9 100644 --- a/hw/xen/xen-host-pci-device.h +++ b/hw/xen/xen-host-pci-device.h @@ -27,11 +27,13 @@ typedef struct XenHostPCIDevice { uint16_t device_id; uint32_t class_code; int irq; + uint16_t pcie_flags; XenHostPCIIORegion io_regions[PCI_NUM_REGIONS - 1]; XenHostPCIIORegion rom; bool is_virtfn; + bool has_pcie_ext_caps; int config_fd; } XenHostPCIDevice; @@ -53,6 +55,8 @@ int xen_host_pci_set_long(XenHostPCIDevice *d, int pos, uint32_t data); int xen_host_pci_set_block(XenHostPCIDevice *d, int pos, uint8_t *buf, int len); -int xen_host_pci_find_ext_cap_offset(XenHostPCIDevice *s, uint32_t cap); +#define CAP_ID_ANY (~0U) +int xen_host_pci_find_next_cap(XenHostPCIDevice *s, int pos, uint32_t cap); +int xen_host_pci_find_next_ext_cap(XenHostPCIDevice *d, int pos, uint32_t cap); #endif /* XEN_HOST_PCI_DEVICE_H */ diff --git a/hw/xen/xen_pt.c b/hw/xen/xen_pt.c index a540149639..2399fabb2b 100644 --- a/hw/xen/xen_pt.c +++ b/hw/xen/xen_pt.c @@ -96,8 +96,16 @@ void xen_pt_log(const PCIDevice *d, const char *f, ...) static int xen_pt_pci_config_access_check(PCIDevice *d, uint32_t addr, int len) { + XenPCIPassthroughState *s = XEN_PT_DEVICE(d); /* check offset range */ - if (addr > 0xFF) { + if (s->pcie_enabled_dev) { + if (addr >= PCIE_CONFIG_SPACE_SIZE) { + XEN_PT_ERR(d, "Failed to access register with offset " + "exceeding 0xFFF. (addr: 0x%02x, len: %d)\n", + addr, len); + return -1; + } + } else if (addr >= PCI_CONFIG_SPACE_SIZE) { XEN_PT_ERR(d, "Failed to access register with offset exceeding 0xFF. " "(addr: 0x%02x, len: %d)\n", addr, len); return -1; @@ -156,7 +164,16 @@ static uint32_t xen_pt_pci_read_config(PCIDevice *d, uint32_t addr, int len) reg_grp_entry = xen_pt_find_reg_grp(s, addr); if (reg_grp_entry) { /* check 0-Hardwired register group */ - if (reg_grp_entry->reg_grp->grp_type == XEN_PT_GRP_TYPE_HARDWIRED) { + if (reg_grp_entry->reg_grp->grp_type == XEN_PT_GRP_TYPE_HARDWIRED && + /* + * For PCIe Extended Capabilities we need to emulate + * CapabilityID and NextCapability/Version registers for a + * hardwired reg group located at the offset 0x100 in PCIe + * config space. This allows us to hide the first extended + * capability as well. + */ + !(reg_grp_entry->base_offset == PCI_CONFIG_SPACE_SIZE && + ranges_overlap(addr, len, 0x100, 4))) { /* no need to emulate, just return 0 */ val = 0; goto exit; @@ -701,6 +718,21 @@ static const MemoryListener xen_pt_io_listener = { .priority = 10, }; +static inline bool xen_pt_dev_is_pcie_mode(PCIDevice *d) +{ + XenPCIPassthroughState *s = XEN_PT_DEVICE(d); + PCIBus *bus = pci_get_bus(d); + + if (bus != NULL) { + if (pci_is_express(d) && pci_bus_is_express(bus) && + xen_host_pci_find_next_cap(&s->real_device, 0, PCI_CAP_ID_EXP)) { + return true; + } + } + + return false; +} + /* destroy. */ static void xen_pt_destroy(PCIDevice *d) { @@ -787,8 +819,17 @@ static void xen_pt_realize(PCIDevice *d, Error **errp) s->real_device.dev, s->real_device.func); } - /* Initialize virtualized PCI configuration (Extended 256 Bytes) */ - memset(d->config, 0, PCI_CONFIG_SPACE_SIZE); + s->pcie_enabled_dev = xen_pt_dev_is_pcie_mode(d); + if (s->pcie_enabled_dev) { + XEN_PT_LOG(d, "Host device %04x:%02x:%02x.%d passed thru " + "in PCIe mode\n", s->real_device.domain, + s->real_device.bus, s->real_device.dev, + s->real_device.func); + } + + /* Initialize virtualized PCI configuration space (256/4K bytes) */ + memset(d->config, 0, pci_is_express(d) ? PCIE_CONFIG_SPACE_SIZE + : PCI_CONFIG_SPACE_SIZE); s->memory_listener = xen_pt_memory_listener; s->io_listener = xen_pt_io_listener; diff --git a/hw/xen/xen_pt.h b/hw/xen/xen_pt.h index b20744f7c7..0ed6e77e76 100644 --- a/hw/xen/xen_pt.h +++ b/hw/xen/xen_pt.h @@ -33,6 +33,11 @@ void xen_pt_log(const PCIDevice *d, const char *f, ...) G_GNUC_PRINTF(2, 3); /* Helper */ #define XEN_PFN(x) ((x) >> XC_PAGE_SHIFT) +/* Macro's for PCIe Extended Capabilities */ +#define PCIE_EXT_CAP_ID(cap_id) ((cap_id) | (1U << 16)) +#define IS_PCIE_EXT_CAP_ID(grp_id) ((grp_id) & (1U << 16)) +#define GET_PCIE_EXT_CAP_ID(grp_id) ((grp_id) & 0xFFFF) + typedef const struct XenPTRegInfo XenPTRegInfo; typedef struct XenPTReg XenPTReg; @@ -88,6 +93,11 @@ typedef int (*xen_pt_conf_byte_read) #define XEN_PCI_INTEL_OPREGION 0xfc +#define XEN_PCIE_CAP_ID 0 +#define XEN_PCIE_CAP_LIST_NEXT 2 +#define XEN_PCIE_FAKE_CAP_ID_BASE 0xFE00 + + #define XEN_PCI_IGD_DOMAIN 0 #define XEN_PCI_IGD_BUS 0 #define XEN_PCI_IGD_DEV 2 @@ -174,13 +184,13 @@ typedef const struct XenPTRegGroupInfo XenPTRegGroupInfo; /* emul reg group size initialize method */ typedef int (*xen_pt_reg_size_init_fn) (XenPCIPassthroughState *, XenPTRegGroupInfo *, - uint32_t base_offset, uint8_t *size); + uint32_t base_offset, uint32_t *size); /* emulated register group information */ struct XenPTRegGroupInfo { - uint8_t grp_id; + uint32_t grp_id; XenPTRegisterGroupType grp_type; - uint8_t grp_size; + uint32_t grp_size; xen_pt_reg_size_init_fn size_init; XenPTRegInfo *emu_regs; }; @@ -190,7 +200,7 @@ typedef struct XenPTRegGroup { QLIST_ENTRY(XenPTRegGroup) entries; XenPTRegGroupInfo *reg_grp; uint32_t base_offset; - uint8_t size; + uint32_t size; QLIST_HEAD(, XenPTReg) reg_tbl_list; } XenPTRegGroup; @@ -234,6 +244,7 @@ struct XenPCIPassthroughState { PCIHostDeviceAddress hostaddr; bool is_virtfn; + bool pcie_enabled_dev; bool permissive; bool permissive_warned; XenHostPCIDevice real_device; diff --git a/hw/xen/xen_pt_config_init.c b/hw/xen/xen_pt_config_init.c index 2b8680b112..cc583f9cc1 100644 --- a/hw/xen/xen_pt_config_init.c +++ b/hw/xen/xen_pt_config_init.c @@ -16,6 +16,7 @@ #include "qapi/error.h" #include "qemu/timer.h" #include "xen_pt.h" +#include "xen-host-pci-device.h" #include "hw/xen/xen-legacy-backend.h" #define XEN_PT_MERGE_VALUE(value, data, val_mask) \ @@ -27,33 +28,52 @@ static int xen_pt_ptr_reg_init(XenPCIPassthroughState *s, XenPTRegInfo *reg, uint32_t real_offset, uint32_t *data); - +static int xen_pt_ext_cap_ptr_reg_init(XenPCIPassthroughState *s, + XenPTRegInfo *reg, + uint32_t real_offset, + uint32_t *data); +static int xen_pt_ext_cap_capid_reg_init(XenPCIPassthroughState *s, + XenPTRegInfo *reg, + uint32_t real_offset, + uint32_t *data); /* helper */ /* A return value of 1 means the capability should NOT be exposed to guest. */ -static int xen_pt_hide_dev_cap(const XenHostPCIDevice *d, uint8_t grp_id) -{ - switch (grp_id) { - case PCI_CAP_ID_EXP: - /* The PCI Express Capability Structure of the VF of Intel 82599 10GbE - * Controller looks trivial, e.g., the PCI Express Capabilities - * Register is 0. We should not try to expose it to guest. - * - * The datasheet is available at - * http://download.intel.com/design/network/datashts/82599_datasheet.pdf - * - * See 'Table 9.7. VF PCIe Configuration Space' of the datasheet, the - * PCI Express Capability Structure of the VF of Intel 82599 10GbE - * Controller looks trivial, e.g., the PCI Express Capabilities - * Register is 0, so the Capability Version is 0 and - * xen_pt_pcie_size_init() would fail. - */ - if (d->vendor_id == PCI_VENDOR_ID_INTEL && - d->device_id == PCI_DEVICE_ID_INTEL_82599_SFP_VF) { - return 1; +static int xen_pt_hide_dev_cap(const XenHostPCIDevice *d, uint32_t grp_id) +{ + if (IS_PCIE_EXT_CAP_ID(grp_id)) { + switch (GET_PCIE_EXT_CAP_ID(grp_id)) { + /* Here can be added device-specific filtering + * for PCIe Extended capabilities (those with offset >= 0x100). + * This is simply a placeholder as no filtering needed for now. + */ + default: + break; + } + } else { + /* basic PCI capability */ + switch (grp_id) { + case PCI_CAP_ID_EXP: + /* The PCI Express Capability Structure of the VF of Intel 82599 10GbE + * Controller looks trivial, e.g., the PCI Express Capabilities + * Register is 0. We should not try to expose it to guest. + * + * The datasheet is available at + * http://download.intel.com/design/network/datashts/82599_datasheet.pdf + * + * See 'Table 9.7. VF PCIe Configuration Space' of the datasheet, the + * PCI Express Capability Structure of the VF of Intel 82599 10GbE + * Controller looks trivial, e.g., the PCI Express Capabilities + * Register is 0, so the Capability Version is 0 and + * xen_pt_pcie_size_init() would fail. + */ + if (d->vendor_id == PCI_VENDOR_ID_INTEL && + d->device_id == PCI_DEVICE_ID_INTEL_82599_SFP_VF) { + return 1; + } + break; } - break; } return 0; } @@ -109,6 +129,17 @@ static uint32_t get_throughable_mask(const XenPCIPassthroughState *s, return throughable_mask & valid_mask; } +static void log_pcie_extended_cap(XenPCIPassthroughState *s, + const char *cap_name, + uint32_t base_offset, uint32_t size) +{ + if (size) { + XEN_PT_LOG(&s->dev, "Found PCIe Extended Capability: %s at 0x%04x, " + "size 0x%x bytes\n", cap_name, + (uint16_t) base_offset, size); + } +} + /**************** * general register functions */ @@ -832,24 +863,18 @@ static XenPTRegInfo xen_pt_emu_reg_vendor[] = { * PCI Express Capability */ -static inline uint8_t get_capability_version(XenPCIPassthroughState *s, - uint32_t offset) +static inline uint8_t get_pcie_capability_version(XenPCIPassthroughState *s) { - uint8_t flag; - if (xen_host_pci_get_byte(&s->real_device, offset + PCI_EXP_FLAGS, &flag)) { - return 0; - } - return flag & PCI_EXP_FLAGS_VERS; + assert(s->real_device.pcie_flags != 0xFFFF); + + return (uint8_t) (s->real_device.pcie_flags & PCI_EXP_FLAGS_VERS); } -static inline uint8_t get_device_type(XenPCIPassthroughState *s, - uint32_t offset) +static inline uint8_t get_pcie_device_type(XenPCIPassthroughState *s) { - uint8_t flag; - if (xen_host_pci_get_byte(&s->real_device, offset + PCI_EXP_FLAGS, &flag)) { - return 0; - } - return (flag & PCI_EXP_FLAGS_TYPE) >> 4; + assert(s->real_device.pcie_flags != 0xFFFF); + + return (uint8_t) ((s->real_device.pcie_flags & PCI_EXP_FLAGS_TYPE) >> 4); } /* initialize Link Control register */ @@ -857,8 +882,8 @@ static int xen_pt_linkctrl_reg_init(XenPCIPassthroughState *s, XenPTRegInfo *reg, uint32_t real_offset, uint32_t *data) { - uint8_t cap_ver = get_capability_version(s, real_offset - reg->offset); - uint8_t dev_type = get_device_type(s, real_offset - reg->offset); + uint8_t cap_ver = get_pcie_capability_version(s); + uint8_t dev_type = get_pcie_device_type(s); /* no need to initialize in case of Root Complex Integrated Endpoint * with cap_ver 1.x @@ -875,7 +900,7 @@ static int xen_pt_devctrl2_reg_init(XenPCIPassthroughState *s, XenPTRegInfo *reg, uint32_t real_offset, uint32_t *data) { - uint8_t cap_ver = get_capability_version(s, real_offset - reg->offset); + uint8_t cap_ver = get_pcie_capability_version(s); /* no need to initialize in case of cap_ver 1.x */ if (cap_ver == 1) { @@ -890,7 +915,7 @@ static int xen_pt_linkctrl2_reg_init(XenPCIPassthroughState *s, XenPTRegInfo *reg, uint32_t real_offset, uint32_t *data) { - uint8_t cap_ver = get_capability_version(s, real_offset - reg->offset); + uint8_t cap_ver = get_pcie_capability_version(s); uint32_t reg_field = 0; /* no need to initialize in case of cap_ver 1.x */ @@ -913,6 +938,55 @@ static int xen_pt_linkctrl2_reg_init(XenPCIPassthroughState *s, return 0; } +/* initialize PCI Express Capabilities register */ +static int xen_pt_pcie_capabilities_reg_init(XenPCIPassthroughState *s, + XenPTRegInfo *reg, + uint32_t real_offset, + uint32_t *data) +{ + uint8_t dev_type = get_pcie_device_type(s); + uint16_t reg_field; + + if (xen_host_pci_get_word(&s->real_device, + real_offset - reg->offset + PCI_EXP_FLAGS, + ®_field)) { + XEN_PT_ERR(&s->dev, "Error reading PCIe Capabilities reg\n"); + *data = 0; + return 0; + } + /* + * Q35 workaround for Win7+ pci.sys PCIe topology check. + * As our PT device currently located on a bus 0, fake the + * device/port type field to the "Root Complex integrated device" + * value to bypass the check + */ + switch (dev_type) { + case PCI_EXP_TYPE_ENDPOINT: + case PCI_EXP_TYPE_LEG_END: + XEN_PT_LOG(&s->dev, "Original PCIe Capabilities reg is 0x%04X\n", + reg_field); + reg_field &= ~PCI_EXP_FLAGS_TYPE; + reg_field |= ((PCI_EXP_TYPE_RC_END /*9*/ << 4) & PCI_EXP_FLAGS_TYPE); + XEN_PT_LOG(&s->dev, "Q35 PCIe topology check workaround: " + "faking Capabilities reg to 0x%04X\n", reg_field); + break; + + case PCI_EXP_TYPE_ROOT_PORT: + case PCI_EXP_TYPE_UPSTREAM: + case PCI_EXP_TYPE_DOWNSTREAM: + case PCI_EXP_TYPE_PCI_BRIDGE: + case PCI_EXP_TYPE_PCIE_BRIDGE: + case PCI_EXP_TYPE_RC_END: + case PCI_EXP_TYPE_RC_EC: + default: + /* do nothing, return as is */ + break; + } + + *data = reg_field; + return 0; +} + /* PCI Express Capability Structure reg static information table */ static XenPTRegInfo xen_pt_emu_reg_pcie[] = { /* Next Pointer reg */ @@ -926,6 +1000,17 @@ static XenPTRegInfo xen_pt_emu_reg_pcie[] = { .u.b.read = xen_pt_byte_reg_read, .u.b.write = xen_pt_byte_reg_write, }, + /* PCI Express Capabilities Register */ + { + .offset = PCI_EXP_FLAGS, + .size = 2, + .init_val = 0x0000, + .ro_mask = 0xFFFF, + .emu_mask = 0xFFFF, + .init = xen_pt_pcie_capabilities_reg_init, + .u.w.read = xen_pt_word_reg_read, + .u.w.write = xen_pt_word_reg_write, + }, /* Device Capabilities reg */ { .offset = PCI_EXP_DEVCAP, @@ -1564,6 +1649,121 @@ static XenPTRegInfo xen_pt_emu_reg_igd_opregion[] = { }, }; +/**************************** + * Emulated registers for + * PCIe Extended Capabilities + */ + +static uint16_t fake_cap_id = XEN_PCIE_FAKE_CAP_ID_BASE; + +/* PCIe Extended Capability ID reg */ +static int xen_pt_ext_cap_capid_reg_init(XenPCIPassthroughState *s, + XenPTRegInfo *reg, + uint32_t real_offset, + uint32_t *data) +{ + uint16_t reg_field; + int rc; + XenPTRegGroup *reg_grp_entry = NULL; + + /* use real device register's value as initial value */ + rc = xen_host_pci_get_word(&s->real_device, real_offset, ®_field); + if (rc) { + return rc; + } + + reg_grp_entry = xen_pt_find_reg_grp(s, real_offset); + + if (reg_grp_entry) { + if (reg_grp_entry->reg_grp->grp_type == XEN_PT_GRP_TYPE_HARDWIRED && + reg_grp_entry->base_offset == PCI_CONFIG_SPACE_SIZE) { + /* + * This is the situation when we were asked to hide (aka + * "hardwire to 0") some PCIe ext capability, but it was located + * at offset 0x100 in PCIe config space. In this case we can't + * simply exclude it from the linked list of capabilities + * (as it is the first entry in the list), so we must fake its + * Capability ID in PCIe Extended Capability header, leaving + * the Next Ptr field intact while returning zeroes on attempts + * to read capability body (writes are ignored). + */ + reg_field = fake_cap_id; + /* increment the value in order to have unique Capability IDs */ + fake_cap_id++; + } + } + + *data = reg_field; + return 0; +} + +/* Vendor-specific Ext Capability Structure reg static information table */ +static XenPTRegInfo xen_pt_ext_cap_emu_reg_vendor[] = { + { + .offset = XEN_PCIE_CAP_ID, + .size = 2, + .init_val = 0x0000, + .ro_mask = 0xFFFF, + .emu_mask = 0xFFFF, + .init = xen_pt_ext_cap_capid_reg_init, + .u.w.read = xen_pt_word_reg_read, + .u.w.write = xen_pt_word_reg_write, + }, + { + .offset = XEN_PCIE_CAP_LIST_NEXT, + .size = 2, + .init_val = 0x0000, + .ro_mask = 0xFFFF, + .emu_mask = 0xFFFF, + .init = xen_pt_ext_cap_ptr_reg_init, + .u.w.read = xen_pt_word_reg_read, + .u.w.write = xen_pt_word_reg_write, + }, + { + .offset = PCI_VNDR_HEADER, + .size = 4, + .init_val = 0x00000000, + .ro_mask = 0xFFFFFFFF, + .emu_mask = 0x00000000, + .init = xen_pt_common_reg_init, + .u.dw.read = xen_pt_long_reg_read, + .u.dw.write = xen_pt_long_reg_write, + }, + { + .size = 0, + }, +}; + +/* Common reg static information table for all passthru-type + * PCIe Extended Capabilities. Only Extended Cap ID and + * Next pointer are handled (to support capability hiding). + */ +static XenPTRegInfo xen_pt_ext_cap_emu_reg_dummy[] = { + { + .offset = XEN_PCIE_CAP_ID, + .size = 2, + .init_val = 0x0000, + .ro_mask = 0xFFFF, + .emu_mask = 0xFFFF, + .init = xen_pt_ext_cap_capid_reg_init, + .u.w.read = xen_pt_word_reg_read, + .u.w.write = xen_pt_word_reg_write, + }, + { + .offset = XEN_PCIE_CAP_LIST_NEXT, + .size = 2, + .init_val = 0x0000, + .ro_mask = 0xFFFF, + .emu_mask = 0xFFFF, + .init = xen_pt_ext_cap_ptr_reg_init, + .u.w.read = xen_pt_word_reg_read, + .u.w.write = xen_pt_word_reg_write, + }, + { + .size = 0, + }, +}; + /**************************** * Capabilities */ @@ -1572,7 +1772,7 @@ static XenPTRegInfo xen_pt_emu_reg_igd_opregion[] = { static int xen_pt_reg_grp_size_init(XenPCIPassthroughState *s, const XenPTRegGroupInfo *grp_reg, - uint32_t base_offset, uint8_t *size) + uint32_t base_offset, uint32_t *size) { *size = grp_reg->grp_size; return 0; @@ -1580,18 +1780,40 @@ static int xen_pt_reg_grp_size_init(XenPCIPassthroughState *s, /* get Vendor Specific Capability Structure register group size */ static int xen_pt_vendor_size_init(XenPCIPassthroughState *s, const XenPTRegGroupInfo *grp_reg, - uint32_t base_offset, uint8_t *size) + uint32_t base_offset, uint32_t *size) { - return xen_host_pci_get_byte(&s->real_device, base_offset + 0x02, size); + uint8_t sz = 0; + int ret = xen_host_pci_get_byte(&s->real_device, base_offset + 0x02, &sz); + + *size = sz; + return ret; +} + +static int xen_pt_ext_cap_vendor_size_init(XenPCIPassthroughState *s, + const XenPTRegGroupInfo *grp_reg, + uint32_t base_offset, + uint32_t *size) +{ + uint32_t vsec_hdr = 0; + int ret = xen_host_pci_get_long(&s->real_device, + base_offset + PCI_VNDR_HEADER, + &vsec_hdr); + + *size = PCI_VNDR_HEADER_LEN(vsec_hdr); + + log_pcie_extended_cap(s, "Vendor-specific", base_offset, *size); + + return ret; } + /* get PCI Express Capability Structure register group size */ static int xen_pt_pcie_size_init(XenPCIPassthroughState *s, const XenPTRegGroupInfo *grp_reg, - uint32_t base_offset, uint8_t *size) + uint32_t base_offset, uint32_t *size) { PCIDevice *d = PCI_DEVICE(s); - uint8_t version = get_capability_version(s, base_offset); - uint8_t type = get_device_type(s, base_offset); + uint8_t version = get_pcie_capability_version(s); + uint8_t type = get_pcie_device_type(s); uint8_t pcie_size = 0; @@ -1659,7 +1881,7 @@ static int xen_pt_pcie_size_init(XenPCIPassthroughState *s, /* get MSI Capability Structure register group size */ static int xen_pt_msi_size_init(XenPCIPassthroughState *s, const XenPTRegGroupInfo *grp_reg, - uint32_t base_offset, uint8_t *size) + uint32_t base_offset, uint32_t *size) { uint16_t msg_ctrl = 0; uint8_t msi_size = 0xa; @@ -1687,7 +1909,7 @@ static int xen_pt_msi_size_init(XenPCIPassthroughState *s, /* get MSI-X Capability Structure register group size */ static int xen_pt_msix_size_init(XenPCIPassthroughState *s, const XenPTRegGroupInfo *grp_reg, - uint32_t base_offset, uint8_t *size) + uint32_t base_offset, uint32_t *size) { int rc = 0; @@ -1703,6 +1925,426 @@ static int xen_pt_msix_size_init(XenPCIPassthroughState *s, } +/* get Advanced Error Reporting Extended Capability register group size */ +#define PCI_ERR_CAP_TLP_PREFIX_LOG (1U << 11) +#define PCI_DEVCAP2_END_END_TLP_PREFIX (1U << 21) +static int xen_pt_ext_cap_aer_size_init(XenPCIPassthroughState *s, + const XenPTRegGroupInfo *grp_reg, + uint32_t base_offset, + uint32_t *size) +{ + uint8_t dev_type = get_pcie_device_type(s); + uint32_t aer_caps = 0; + uint32_t sz = 0; + int pcie_cap_pos; + uint32_t devcaps2; + int ret = 0; + + pcie_cap_pos = xen_host_pci_find_next_cap(&s->real_device, 0, + PCI_CAP_ID_EXP); + if (!pcie_cap_pos) { + XEN_PT_ERR(&s->dev, + "Cannot find a required PCI Express Capability\n"); + return -1; + } + + if (get_pcie_capability_version(s) > 1) { + ret = xen_host_pci_get_long(&s->real_device, + pcie_cap_pos + PCI_EXP_DEVCAP2, + &devcaps2); + if (ret) { + XEN_PT_ERR(&s->dev, "Error while reading Device " + "Capabilities 2 Register \n"); + return -1; + } + } + + if (devcaps2 & PCI_DEVCAP2_END_END_TLP_PREFIX) { + ret = xen_host_pci_get_long(&s->real_device, + base_offset + PCI_ERR_CAP, + &aer_caps); + if (ret) { + XEN_PT_ERR(&s->dev, + "Error while reading AER Extended Capability\n"); + return -1; + } + + if (aer_caps & PCI_ERR_CAP_TLP_PREFIX_LOG) { + sz = 0x48; + } + } + + if (!sz) { + if (dev_type == PCI_EXP_TYPE_ROOT_PORT || + dev_type == PCI_EXP_TYPE_RC_EC) { + sz = 0x38; + } else { + sz = 0x2C; + } + } + + *size = sz; + + log_pcie_extended_cap(s, "AER", base_offset, *size); + return ret; +} + +/* get Root Complex Link Declaration Extended Capability register group size */ +#define RCLD_GET_NUM_ENTRIES(x) (((x) >> 8) & 0xFF) +static int xen_pt_ext_cap_rcld_size_init(XenPCIPassthroughState *s, + const XenPTRegGroupInfo *grp_reg, + uint32_t base_offset, + uint32_t *size) +{ + uint32_t elem_self_descr = 0; + + int ret = xen_host_pci_get_long(&s->real_device, + base_offset + 4, + &elem_self_descr); + + *size = 0x10 + RCLD_GET_NUM_ENTRIES(elem_self_descr) * 0x10; + + log_pcie_extended_cap(s, "Root Complex Link Declaration", + base_offset, *size); + return ret; +} + +/* get Access Control Services Extended Capability register group size */ +#define ACS_VECTOR_SIZE_BITS(x) ((((x) >> 8) & 0xFF) ?: 256) +static int xen_pt_ext_cap_acs_size_init(XenPCIPassthroughState *s, + const XenPTRegGroupInfo *grp_reg, + uint32_t base_offset, + uint32_t *size) +{ + uint16_t acs_caps = 0; + + int ret = xen_host_pci_get_word(&s->real_device, + base_offset + PCI_ACS_CAP, + &acs_caps); + + if (acs_caps & PCI_ACS_EC) { + uint32_t vector_sz = ACS_VECTOR_SIZE_BITS(acs_caps); + + *size = PCI_ACS_EGRESS_CTL_V + ((vector_sz + 7) & ~7) / 8; + } else { + *size = PCI_ACS_EGRESS_CTL_V; + } + + log_pcie_extended_cap(s, "ACS", base_offset, *size); + return ret; +} + +/* get Multicast Extended Capability register group size */ +static int xen_pt_ext_cap_multicast_size_init(XenPCIPassthroughState *s, + const XenPTRegGroupInfo *grp_reg, + uint32_t base_offset, + uint32_t *size) +{ + uint8_t dev_type = get_pcie_device_type(s); + + switch (dev_type) { + case PCI_EXP_TYPE_ENDPOINT: + case PCI_EXP_TYPE_LEG_END: + case PCI_EXP_TYPE_RC_END: + case PCI_EXP_TYPE_RC_EC: + default: + *size = PCI_EXT_CAP_MCAST_ENDPOINT_SIZEOF; + break; + + case PCI_EXP_TYPE_ROOT_PORT: + case PCI_EXP_TYPE_UPSTREAM: + case PCI_EXP_TYPE_DOWNSTREAM: + *size = 0x30; + break; + } + + log_pcie_extended_cap(s, "Multicast", base_offset, *size); + return 0; +} + +/* get Dynamic Power Allocation Extended Capability register group size */ +static int xen_pt_ext_cap_dpa_size_init(XenPCIPassthroughState *s, + const XenPTRegGroupInfo *grp_reg, + uint32_t base_offset, + uint32_t *size) +{ + uint32_t dpa_caps = 0; + uint32_t num_entries; + + int ret = xen_host_pci_get_long(&s->real_device, + base_offset + PCI_DPA_CAP, + &dpa_caps); + + num_entries = (dpa_caps & PCI_DPA_CAP_SUBSTATE_MASK) + 1; + + *size = PCI_DPA_BASE_SIZEOF + num_entries /*byte-size registers*/; + + log_pcie_extended_cap(s, "Dynamic Power Allocation", base_offset, *size); + return ret; +} + +/* get TPH Requester Extended Capability register group size */ +static int xen_pt_ext_cap_tph_size_init(XenPCIPassthroughState *s, + const XenPTRegGroupInfo *grp_reg, + uint32_t base_offset, + uint32_t *size) +{ + uint32_t tph_caps = 0; + uint32_t num_entries; + + int ret = xen_host_pci_get_long(&s->real_device, + base_offset + PCI_TPH_CAP, + &tph_caps); + + switch(tph_caps & PCI_TPH_CAP_LOC_MASK) { + case PCI_TPH_LOC_CAP: + num_entries = (tph_caps & PCI_TPH_CAP_ST_MASK) >> PCI_TPH_CAP_ST_SHIFT; + num_entries++; + break; + + case PCI_TPH_LOC_NONE: + case PCI_TPH_LOC_MSIX: + default: + /* not in the capability */ + num_entries = 0; + } + + *size = PCI_TPH_BASE_SIZEOF + num_entries * 2; + + log_pcie_extended_cap(s, "TPH Requester", base_offset, *size); + return ret; +} + +/* get Downstream Port Containment Extended Capability register group size */ +static int xen_pt_ext_cap_dpc_size_init(XenPCIPassthroughState *s, + const XenPTRegGroupInfo *grp_reg, + uint32_t base_offset, + uint32_t *size) +{ + uint16_t dpc_caps = 0; + + int ret = xen_host_pci_get_word(&s->real_device, + base_offset + PCI_EXP_DPC_CAP, + &dpc_caps); + + if (dpc_caps & PCI_EXP_DPC_CAP_RP_EXT) { + *size = 0x20 + ((dpc_caps & PCI_EXP_DPC_RP_PIO_LOG_SIZE) >> 8) * 4; + } else { + *size = 0xC; + } + + log_pcie_extended_cap(s, "Downstream Port Containment", + base_offset, *size); + return ret; +} + +/* get Protocol Multiplexing Extended Capability register group size */ +#define PMUX_GET_NUM_ENTRIES(x) ((x) & 0x3F) +static int xen_pt_ext_cap_pmux_size_init(XenPCIPassthroughState *s, + const XenPTRegGroupInfo *grp_reg, + uint32_t base_offset, + uint32_t *size) +{ + uint32_t pmux_caps = 0; + + int ret = xen_host_pci_get_long(&s->real_device, + base_offset + 4, + &pmux_caps); + + *size = 0x10 + PMUX_GET_NUM_ENTRIES(pmux_caps) * 4; + + log_pcie_extended_cap(s, "PMUX", base_offset, *size); + return ret; +} + +/* get Resizable BAR Extended Capability register group size */ +static int xen_pt_ext_cap_rebar_size_init(XenPCIPassthroughState *s, + const XenPTRegGroupInfo *grp_reg, + uint32_t base_offset, + uint32_t *size) +{ + uint32_t rebar_ctl = 0; + uint32_t num_entries; + + int ret = xen_host_pci_get_long(&s->real_device, + base_offset + PCI_REBAR_CTRL, + &rebar_ctl); + num_entries = + (rebar_ctl & PCI_REBAR_CTRL_NBAR_MASK) >> PCI_REBAR_CTRL_NBAR_SHIFT; + + *size = num_entries*8 + 4; + + log_pcie_extended_cap(s, "Resizable BAR", base_offset, *size); + return ret; +} + +/* get VC/VC9/MFVC Extended Capability register group size */ +static uint32_t get_arb_table_len_max(XenPCIPassthroughState *s, + uint32_t max_bit_supported, + uint32_t arb_cap) +{ + int n_bit; + uint32_t table_max_size = 0; + + if (!arb_cap) { + return 0; + } + + for (n_bit = 7; n_bit >= 0 && !(arb_cap & (1 << n_bit)); n_bit--); + + if (n_bit > max_bit_supported) { + XEN_PT_ERR(&s->dev, "Warning: encountered unknown VC arbitration " + "capability supported: 0x%02x\n", (uint8_t) arb_cap); + } + + switch (n_bit) { + case 0: break; + case 1: return 32; + case 2: return 64; + case 3: /*128 too*/ + case 4: return 128; + default: + table_max_size = 8 << n_bit; + } + + return table_max_size; +} + +#define GET_ARB_TABLE_OFFSET(x) (((x) >> 24) * 0x10) +#define GET_VC_ARB_CAPABILITY(x) ((x) & 0xFF) +#define ARB_TABLE_ENTRY_SIZE_BITS(x) (1 << (((x) & PCI_VC_CAP1_ARB_SIZE)\ + >> 10)) +static int xen_pt_ext_cap_vchan_size_init(XenPCIPassthroughState *s, + const XenPTRegGroupInfo *grp_reg, + uint32_t base_offset, + uint32_t *size) +{ + uint32_t header; + uint32_t vc_cap_max_size = PCIE_CONFIG_SPACE_SIZE - base_offset; + uint32_t next_ptr; + uint32_t arb_table_start_max = 0, arb_table_end_max = 0; + uint32_t port_vc_cap1, port_vc_cap2, vc_rsrc_cap; + uint32_t ext_vc_count = 0; + uint32_t arb_table_entry_size; /* in bits */ + const char *cap_name; + int ret; + int i; + + ret = xen_host_pci_get_long(&s->real_device, base_offset, &header); + if (ret) { + goto err_read; + } + + next_ptr = PCI_EXT_CAP_NEXT(header); + + switch (PCI_EXT_CAP_ID(header)) { + case PCI_EXT_CAP_ID_VC: + case PCI_EXT_CAP_ID_VC9: + cap_name = "Virtual Channel"; + break; + case PCI_EXT_CAP_ID_MFVC: + cap_name = "Multi-Function VC"; + break; + default: + XEN_PT_ERR(&s->dev, "Unknown VC Extended Capability ID " + "encountered: 0x%04x\n", PCI_EXT_CAP_ID(header)); + return -1; + } + + if (next_ptr && next_ptr > base_offset) { + vc_cap_max_size = next_ptr - base_offset; + } + + ret = xen_host_pci_get_long(&s->real_device, + base_offset + PCI_VC_PORT_CAP1, + &port_vc_cap1); + if (ret) { + goto err_read; + } + + ret = xen_host_pci_get_long(&s->real_device, + base_offset + PCI_VC_PORT_CAP2, + &port_vc_cap2); + if (ret) { + goto err_read; + } + + ext_vc_count = port_vc_cap1 & PCI_VC_CAP1_EVCC; + + arb_table_start_max = GET_ARB_TABLE_OFFSET(port_vc_cap2); + + /* check arbitration table offset for validity */ + if (arb_table_start_max >= vc_cap_max_size) { + XEN_PT_ERR(&s->dev, "Warning: VC arbitration table offset points " + "outside the expected range: %#04x\n", + (uint16_t) arb_table_start_max); + /* skip this arbitration table */ + arb_table_start_max = 0; + } + + if (arb_table_start_max) { + uint32_t vc_arb_cap = GET_VC_ARB_CAPABILITY(port_vc_cap2); + uint32_t num_phases = get_arb_table_len_max(s, 3, vc_arb_cap); + uint32_t arb_tbl_sz = QEMU_ALIGN_UP(num_phases * 4, 32) / 8; + + arb_table_end_max = base_offset + arb_table_start_max + arb_tbl_sz; + } + + /* get Function/Port Arbitration Table Entry size */ + arb_table_entry_size = ARB_TABLE_ENTRY_SIZE_BITS(port_vc_cap1); + + /* process all VC Resource entries */ + for (i = 0; i < ext_vc_count; i++) { + uint32_t arb_table_offset; + + /* read VC Resource Capability */ + ret = xen_host_pci_get_long(&s->real_device, + base_offset + PCI_VC_RES_CAP + i * PCI_CAP_VC_PER_VC_SIZEOF, + &vc_rsrc_cap); + if (ret) { + goto err_read; + } + + arb_table_offset = GET_ARB_TABLE_OFFSET(vc_rsrc_cap); + + if (arb_table_offset > arb_table_start_max) { + /* check arbitration table offset for validity */ + if (arb_table_offset >= vc_cap_max_size) { + XEN_PT_ERR(&s->dev, "Warning: Port/Function arbitration table " + "offset points outside the expected range: %#04x\n", + (uint16_t) arb_table_offset); + /* skip this arbitration table */ + arb_table_offset = 0; + } else { + arb_table_start_max = arb_table_offset; + } + + if (arb_table_offset) { + uint32_t vc_arb_cap = GET_VC_ARB_CAPABILITY(vc_rsrc_cap); + uint32_t num_phases = get_arb_table_len_max(s, 5, vc_arb_cap); + uint32_t arb_tbl_sz = + QEMU_ALIGN_UP(num_phases * arb_table_entry_size, 32) / 8; + + arb_table_end_max = base_offset + arb_table_offset + arb_tbl_sz; + } + } + } + + if (arb_table_end_max) { + *size = arb_table_end_max - base_offset; + } else { + *size = PCI_CAP_VC_BASE_SIZEOF + + ext_vc_count * PCI_CAP_VC_PER_VC_SIZEOF; + } + + log_pcie_extended_cap(s, cap_name, base_offset, *size); + return 0; + +err_read: + XEN_PT_ERR(&s->dev, "Error while reading VC Extended Capability\n"); + return ret; +} + static const XenPTRegGroupInfo xen_pt_emu_reg_grps[] = { /* Header Type0 reg group */ { @@ -1810,6 +2452,261 @@ static const XenPTRegGroupInfo xen_pt_emu_reg_grps[] = { .size_init = xen_pt_reg_grp_size_init, .emu_regs = xen_pt_emu_reg_igd_opregion, }, + /* Vendor-specific Extended Capability reg group */ + { + .grp_id = PCIE_EXT_CAP_ID(PCI_EXT_CAP_ID_VNDR), + .grp_type = XEN_PT_GRP_TYPE_EMU, + .grp_size = 0xFF, + .size_init = xen_pt_ext_cap_vendor_size_init, + .emu_regs = xen_pt_ext_cap_emu_reg_vendor, + }, + /* Device Serial Number Extended Capability reg group */ + { + .grp_id = PCIE_EXT_CAP_ID(PCI_EXT_CAP_ID_DSN), + .grp_type = XEN_PT_GRP_TYPE_EMU, + .grp_size = PCI_EXT_CAP_DSN_SIZEOF, /*0x0C*/ + .size_init = xen_pt_reg_grp_size_init, + .emu_regs = xen_pt_ext_cap_emu_reg_dummy, + }, + /* Power Budgeting Extended Capability reg group */ + { + .grp_id = PCIE_EXT_CAP_ID(PCI_EXT_CAP_ID_PWR), + .grp_type = XEN_PT_GRP_TYPE_EMU, + .grp_size = PCI_EXT_CAP_PWR_SIZEOF, /*0x10*/ + .size_init = xen_pt_reg_grp_size_init, + .emu_regs = xen_pt_ext_cap_emu_reg_dummy, + }, + /* Root Complex Internal Link Control Extended Capability reg group */ + { + .grp_id = PCIE_EXT_CAP_ID(PCI_EXT_CAP_ID_RCILC), + .grp_type = XEN_PT_GRP_TYPE_EMU, + .grp_size = 0x0C, + .size_init = xen_pt_reg_grp_size_init, + .emu_regs = xen_pt_ext_cap_emu_reg_dummy, + }, + /* Root Complex Event Collector Extended Capability reg group */ + { + .grp_id = PCIE_EXT_CAP_ID(PCI_EXT_CAP_ID_RCEC), + .grp_type = XEN_PT_GRP_TYPE_EMU, + .grp_size = 0x08, + .size_init = xen_pt_reg_grp_size_init, + .emu_regs = xen_pt_ext_cap_emu_reg_dummy, + }, + /* Root Complex Register Block Extended Capability reg group */ + { + .grp_id = PCIE_EXT_CAP_ID(PCI_EXT_CAP_ID_RCRB), + .grp_type = XEN_PT_GRP_TYPE_EMU, + .grp_size = 0x14, + .size_init = xen_pt_reg_grp_size_init, + .emu_regs = xen_pt_ext_cap_emu_reg_dummy, + }, + /* Configuration Access Correlation Extended Capability reg group */ + { + .grp_id = PCIE_EXT_CAP_ID(PCI_EXT_CAP_ID_CAC), + .grp_type = XEN_PT_GRP_TYPE_EMU, + .grp_size = 0x08, + .size_init = xen_pt_reg_grp_size_init, + .emu_regs = xen_pt_ext_cap_emu_reg_dummy, + }, + /* Alternate Routing ID Extended Capability reg group */ + { + .grp_id = PCIE_EXT_CAP_ID(PCI_EXT_CAP_ID_ARI), + .grp_type = XEN_PT_GRP_TYPE_EMU, + .grp_size = PCI_EXT_CAP_ARI_SIZEOF, + .size_init = xen_pt_reg_grp_size_init, + .emu_regs = xen_pt_ext_cap_emu_reg_dummy, + }, + /* Address Translation Services Extended Capability reg group */ + { + .grp_id = PCIE_EXT_CAP_ID(PCI_EXT_CAP_ID_ATS), + .grp_type = XEN_PT_GRP_TYPE_EMU, + .grp_size = PCI_EXT_CAP_ATS_SIZEOF, + .size_init = xen_pt_reg_grp_size_init, + .emu_regs = xen_pt_ext_cap_emu_reg_dummy, + }, + /* Single Root I/O Virtualization Extended Capability reg group */ + { + .grp_id = PCIE_EXT_CAP_ID(PCI_EXT_CAP_ID_SRIOV), + .grp_type = XEN_PT_GRP_TYPE_EMU, + .grp_size = PCI_EXT_CAP_SRIOV_SIZEOF, + .size_init = xen_pt_reg_grp_size_init, + .emu_regs = xen_pt_ext_cap_emu_reg_dummy, + }, + /* Page Request Interface Extended Capability reg group */ + { + .grp_id = PCIE_EXT_CAP_ID(PCI_EXT_CAP_ID_PRI), + .grp_type = XEN_PT_GRP_TYPE_EMU, + .grp_size = PCI_EXT_CAP_PRI_SIZEOF, + .size_init = xen_pt_reg_grp_size_init, + .emu_regs = xen_pt_ext_cap_emu_reg_dummy, + }, + /* Latency Tolerance Reporting Extended Capability reg group */ + { + .grp_id = PCIE_EXT_CAP_ID(PCI_EXT_CAP_ID_LTR), + .grp_type = XEN_PT_GRP_TYPE_EMU, + .grp_size = PCI_EXT_CAP_LTR_SIZEOF, + .size_init = xen_pt_reg_grp_size_init, + .emu_regs = xen_pt_ext_cap_emu_reg_dummy, + }, + /* Secondary PCIe Capability Extended Capability reg group */ + { + .grp_id = PCIE_EXT_CAP_ID(PCI_EXT_CAP_ID_SECPCI), + .grp_type = XEN_PT_GRP_TYPE_EMU, + .grp_size = 0x10, + .size_init = xen_pt_reg_grp_size_init, + .emu_regs = xen_pt_ext_cap_emu_reg_dummy, + }, + /* Process Address Space ID Extended Capability reg group */ + { + .grp_id = PCIE_EXT_CAP_ID(PCI_EXT_CAP_ID_PASID), + .grp_type = XEN_PT_GRP_TYPE_EMU, + .grp_size = PCI_EXT_CAP_PASID_SIZEOF, + .size_init = xen_pt_reg_grp_size_init, + .emu_regs = xen_pt_ext_cap_emu_reg_dummy, + }, + /* L1 PM Substates Extended Capability reg group */ + { + .grp_id = PCIE_EXT_CAP_ID(PCI_EXT_CAP_ID_L1SS), + .grp_type = XEN_PT_GRP_TYPE_EMU, + .grp_size = 0x10, + .size_init = xen_pt_reg_grp_size_init, + .emu_regs = xen_pt_ext_cap_emu_reg_dummy, + }, + /* Precision Time Measurement Extended Capability reg group */ + { + .grp_id = PCIE_EXT_CAP_ID(PCI_EXT_CAP_ID_PTM), + .grp_type = XEN_PT_GRP_TYPE_EMU, + .grp_size = 0x0C, + .size_init = xen_pt_reg_grp_size_init, + .emu_regs = xen_pt_ext_cap_emu_reg_dummy, + }, + /* M-PCIe Extended Capability reg group */ + { + .grp_id = PCIE_EXT_CAP_ID(0x20), + .grp_type = XEN_PT_GRP_TYPE_EMU, + .grp_size = 0x1C, + .size_init = xen_pt_reg_grp_size_init, + .emu_regs = xen_pt_ext_cap_emu_reg_dummy, + }, + /* LN Requester (LNR) Extended Capability reg group */ + { + .grp_id = PCIE_EXT_CAP_ID(0x1C), + .grp_type = XEN_PT_GRP_TYPE_EMU, + .grp_size = 0x08, + .size_init = xen_pt_reg_grp_size_init, + .emu_regs = xen_pt_ext_cap_emu_reg_dummy, + }, + /* Function Readiness Status (FRS) Extended Capability reg group */ + { + .grp_id = PCIE_EXT_CAP_ID(0x21), + .grp_type = XEN_PT_GRP_TYPE_EMU, + .grp_size = 0x10, + .size_init = xen_pt_reg_grp_size_init, + .emu_regs = xen_pt_ext_cap_emu_reg_dummy, + }, + /* Readiness Time Extended Capability reg group */ + { + .grp_id = PCIE_EXT_CAP_ID(0x22), + .grp_type = XEN_PT_GRP_TYPE_EMU, + .grp_size = 0x0C, + .size_init = xen_pt_reg_grp_size_init, + .emu_regs = xen_pt_ext_cap_emu_reg_dummy, + }, + /* Advanced Error Reporting Extended Capability reg group */ + { + .grp_id = PCIE_EXT_CAP_ID(PCI_EXT_CAP_ID_ERR), + .grp_type = XEN_PT_GRP_TYPE_EMU, + .grp_size = 0xFF, + .size_init = xen_pt_ext_cap_aer_size_init, + .emu_regs = xen_pt_ext_cap_emu_reg_dummy, + }, + /* Root Complex Link Declaration Extended Capability reg group */ + { + .grp_id = PCIE_EXT_CAP_ID(PCI_EXT_CAP_ID_RCLD), + .grp_type = XEN_PT_GRP_TYPE_EMU, + .grp_size = 0xFF, + .size_init = xen_pt_ext_cap_rcld_size_init, + .emu_regs = xen_pt_ext_cap_emu_reg_dummy, + }, + /* Access Control Services Extended Capability reg group */ + { + .grp_id = PCIE_EXT_CAP_ID(PCI_EXT_CAP_ID_ACS), + .grp_type = XEN_PT_GRP_TYPE_EMU, + .grp_size = 0xFF, + .size_init = xen_pt_ext_cap_acs_size_init, + .emu_regs = xen_pt_ext_cap_emu_reg_dummy, + }, + /* Multicast Extended Capability reg group */ + { + .grp_id = PCIE_EXT_CAP_ID(PCI_EXT_CAP_ID_MCAST), + .grp_type = XEN_PT_GRP_TYPE_EMU, + .grp_size = 0xFF, + .size_init = xen_pt_ext_cap_multicast_size_init, + .emu_regs = xen_pt_ext_cap_emu_reg_dummy, + }, + /* Dynamic Power Allocation Extended Capability reg group */ + { + .grp_id = PCIE_EXT_CAP_ID(PCI_EXT_CAP_ID_DPA), + .grp_type = XEN_PT_GRP_TYPE_EMU, + .grp_size = 0xFF, + .size_init = xen_pt_ext_cap_dpa_size_init, + .emu_regs = xen_pt_ext_cap_emu_reg_dummy, + }, + /* TPH Requester Extended Capability reg group */ + { + .grp_id = PCIE_EXT_CAP_ID(PCI_EXT_CAP_ID_TPH), + .grp_type = XEN_PT_GRP_TYPE_EMU, + .grp_size = 0xFF, + .size_init = xen_pt_ext_cap_tph_size_init, + .emu_regs = xen_pt_ext_cap_emu_reg_dummy, + }, + /* Protocol Multiplexing Extended Capability reg group */ + { + .grp_id = PCIE_EXT_CAP_ID(PCI_EXT_CAP_ID_PMUX), + .grp_type = XEN_PT_GRP_TYPE_EMU, + .grp_size = 0xFF, + .size_init = xen_pt_ext_cap_pmux_size_init, + .emu_regs = xen_pt_ext_cap_emu_reg_dummy, + }, + /* Downstream Port Containment Extended Capability reg group */ + { + .grp_id = PCIE_EXT_CAP_ID(PCI_EXT_CAP_ID_DPC), + .grp_type = XEN_PT_GRP_TYPE_EMU, + .grp_size = 0xFF, + .size_init = xen_pt_ext_cap_dpc_size_init, + .emu_regs = xen_pt_ext_cap_emu_reg_dummy, + }, + /* Resizable BAR Extended Capability reg group */ + { + .grp_id = PCIE_EXT_CAP_ID(PCI_EXT_CAP_ID_REBAR), + .grp_type = XEN_PT_GRP_TYPE_HARDWIRED, + .grp_size = 0xFF, + .size_init = xen_pt_ext_cap_rebar_size_init, + }, + /* Virtual Channel Extended Capability reg group (2) */ + { + .grp_id = PCIE_EXT_CAP_ID(PCI_EXT_CAP_ID_VC), + .grp_type = XEN_PT_GRP_TYPE_EMU, + .grp_size = 0xFF, + .size_init = xen_pt_ext_cap_vchan_size_init, + .emu_regs = xen_pt_ext_cap_emu_reg_dummy, + }, + /* Virtual Channel Extended Capability reg group (9) */ + { + .grp_id = PCIE_EXT_CAP_ID(PCI_EXT_CAP_ID_VC9), + .grp_type = XEN_PT_GRP_TYPE_EMU, + .grp_size = 0xFF, + .size_init = xen_pt_ext_cap_vchan_size_init, + .emu_regs = xen_pt_ext_cap_emu_reg_dummy, + }, + /* Multi-Function Virtual Channel Extended Capability reg group */ + { + .grp_id = PCIE_EXT_CAP_ID(PCI_EXT_CAP_ID_MFVC), + .grp_type = XEN_PT_GRP_TYPE_EMU, + .grp_size = 0xFF, + .size_init = xen_pt_ext_cap_vchan_size_init, + .emu_regs = xen_pt_ext_cap_emu_reg_dummy, + }, { .grp_size = 0, }, @@ -1865,51 +2762,91 @@ out: return 0; } +#define PCIE_EXT_CAP_NEXT_SHIFT 4 +#define PCIE_EXT_CAP_VER_MASK 0xF -/************* - * Main - */ - -static uint8_t find_cap_offset(XenPCIPassthroughState *s, uint8_t cap) +static int xen_pt_ext_cap_ptr_reg_init(XenPCIPassthroughState *s, + XenPTRegInfo *reg, + uint32_t real_offset, + uint32_t *data) { - uint8_t id; - unsigned max_cap = XEN_PCI_CAP_MAX; - uint8_t pos = PCI_CAPABILITY_LIST; - uint8_t status = 0; + int i, rc; + XenHostPCIDevice *d = &s->real_device; + uint16_t reg_field; + uint16_t cur_offset, version, cap_id; + uint32_t header; - if (xen_host_pci_get_byte(&s->real_device, PCI_STATUS, &status)) { - return 0; - } - if ((status & PCI_STATUS_CAP_LIST) == 0) { - return 0; + if (real_offset < 0x0010) { + XEN_PT_ERR(&s->dev, "Incorrect PCIe extended capability offset " + "encountered: 0x%04x\n", real_offset); + return -EINVAL; } - while (max_cap--) { - if (xen_host_pci_get_byte(&s->real_device, pos, &pos)) { - break; - } - if (pos < PCI_CONFIG_HEADER_SIZE) { - break; - } + rc = xen_host_pci_get_word(d, real_offset, ®_field); + if (rc) + return rc; - pos &= ~3; - if (xen_host_pci_get_byte(&s->real_device, - pos + PCI_CAP_LIST_ID, &id)) { - break; - } + /* preserve version field */ + version = reg_field & PCIE_EXT_CAP_VER_MASK; + cur_offset = reg_field >> PCIE_EXT_CAP_NEXT_SHIFT; - if (id == 0xff) { - break; + while (cur_offset && cur_offset != 0xFFF) { + rc = xen_host_pci_get_long(d, cur_offset, &header); + if (rc) { + XEN_PT_ERR(&s->dev, "Failed to read PCIe extended capability " + "@0x%x (rc:%d)\n", cur_offset, rc); + return rc; } - if (id == cap) { - return pos; + + cap_id = PCI_EXT_CAP_ID(header); + + for (i = 0; xen_pt_emu_reg_grps[i].grp_size != 0; i++) { + uint32_t cur_grp_id = xen_pt_emu_reg_grps[i].grp_id; + + if (!IS_PCIE_EXT_CAP_ID(cur_grp_id)) + continue; + + if (xen_pt_hide_dev_cap(d, cur_grp_id)) + continue; + + if (GET_PCIE_EXT_CAP_ID(cur_grp_id) == cap_id) { + if (xen_pt_emu_reg_grps[i].grp_type == XEN_PT_GRP_TYPE_EMU) + goto out; + + /* skip TYPE_HARDWIRED capability, move the ptr to next one */ + break; + } } - pos += PCI_CAP_LIST_NEXT; + /* next capability */ + cur_offset = PCI_EXT_CAP_NEXT(header); } + +out: + *data = (cur_offset << PCIE_EXT_CAP_NEXT_SHIFT) | version; return 0; } +/************* + * Main + */ + +static uint8_t find_cap_offset(XenPCIPassthroughState *s, uint32_t cap) +{ + uint32_t retval = 0; + + if (IS_PCIE_EXT_CAP_ID(cap)) { + if (s->pcie_enabled_dev) { + retval = xen_host_pci_find_next_ext_cap(&s->real_device, 0, + GET_PCIE_EXT_CAP_ID(cap)); + } + + } else { + retval = xen_host_pci_find_next_cap(&s->real_device, 0, cap); + } + return retval; +} + static void xen_pt_config_reg_init(XenPCIPassthroughState *s, XenPTRegGroup *reg_grp, XenPTRegInfo *reg, Error **errp) @@ -2065,7 +3002,13 @@ void xen_pt_config_init(XenPCIPassthroughState *s, Error **errp) } } - if (xen_pt_emu_reg_grps[i].grp_type == XEN_PT_GRP_TYPE_EMU) { + if (xen_pt_emu_reg_grps[i].grp_type == XEN_PT_GRP_TYPE_EMU || + /* + * We need to always emulate the PCIe Extended Capability + * header for a hidden capability which starts at offset 0x100 + */ + (xen_pt_emu_reg_grps[i].grp_type == XEN_PT_GRP_TYPE_HARDWIRED && + reg_grp_offset == 0x100)) { if (xen_pt_emu_reg_grps[i].emu_regs) { int j = 0; XenPTRegInfo *regs = xen_pt_emu_reg_grps[i].emu_regs; diff --git a/include/hw/acpi/ich9.h b/include/hw/acpi/ich9.h index 2faf7f0cae..903560f72c 100644 --- a/include/hw/acpi/ich9.h +++ b/include/hw/acpi/ich9.h @@ -27,6 +27,7 @@ #include "hw/acpi/pcihp.h" #include "hw/acpi/memory_hotplug.h" #include "hw/acpi/acpi_dev_interface.h" +#include "hw/acpi/pcihp.h" #include "hw/acpi/ich9_tco.h" #define ACPI_PCIHP_ADDR_ICH9 0x0cc0 diff --git a/include/hw/acpi/pcihp.h b/include/hw/acpi/pcihp.h index ef59810c17..d35a517c9e 100644 --- a/include/hw/acpi/pcihp.h +++ b/include/hw/acpi/pcihp.h @@ -72,6 +72,8 @@ void acpi_pcihp_device_unplug_request_cb(HotplugHandler *hotplug_dev, /* Called on reset */ void acpi_pcihp_reset(AcpiPciHpState *s); +void acpi_set_pci_info(bool has_bridge_hotplug); + void build_append_pcihp_slots(Aml *parent_scope, PCIBus *bus); extern const VMStateDescription vmstate_acpi_pcihp_pci_status; diff --git a/include/hw/boards.h b/include/hw/boards.h index a385010909..0b021f0764 100644 --- a/include/hw/boards.h +++ b/include/hw/boards.h @@ -339,6 +339,7 @@ struct MachineState { bool mem_merge; bool usb; bool usb_disabled; + bool xen_platform_dev; char *firmware; bool iommu; bool suppress_vmdesc; diff --git a/include/hw/i386/pc.h b/include/hw/i386/pc.h index c661e9cc80..550f8fa221 100644 --- a/include/hw/i386/pc.h +++ b/include/hw/i386/pc.h @@ -196,6 +196,9 @@ void pc_madt_cpu_entry(int uid, const CPUArchIdList *apic_ids, /* sgx.c */ void pc_machine_init_sgx_epc(PCMachineState *pcms); +/* q35.c */ +PCIBus *find_q35(void); + extern GlobalProperty pc_compat_8_0[]; extern const size_t pc_compat_8_0_len; diff --git a/include/hw/pci-host/q35.h b/include/hw/pci-host/q35.h index e89329c51e..441cce6ccd 100644 --- a/include/hw/pci-host/q35.h +++ b/include/hw/pci-host/q35.h @@ -105,8 +105,8 @@ struct Q35PCIHost { #define MCH_HOST_BRIDGE_PCIEXBAR_DEFAULT 0xb0000000 #define MCH_HOST_BRIDGE_PCIEXBAR_MAX (0x10000000) /* 256M */ #define MCH_HOST_BRIDGE_PCIEXBAR_ADMSK Q35_MASK(64, 35, 28) -#define MCH_HOST_BRIDGE_PCIEXBAR_128ADMSK ((uint64_t)(1 << 26)) -#define MCH_HOST_BRIDGE_PCIEXBAR_64ADMSK ((uint64_t)(1 << 25)) +#define MCH_HOST_BRIDGE_PCIEXBAR_128ADMSK ((uint64_t)(1 << 27)) +#define MCH_HOST_BRIDGE_PCIEXBAR_64ADMSK ((uint64_t)(1 << 26)) #define MCH_HOST_BRIDGE_PCIEXBAR_LENGTH_MASK ((uint64_t)(0x3 << 1)) #define MCH_HOST_BRIDGE_PCIEXBAR_LENGTH_256M ((uint64_t)(0x0 << 1)) #define MCH_HOST_BRIDGE_PCIEXBAR_LENGTH_128M ((uint64_t)(0x1 << 1)) diff --git a/include/hw/pci/pci.h b/include/hw/pci/pci.h index e6d0574a29..c53e21082a 100644 --- a/include/hw/pci/pci.h +++ b/include/hw/pci/pci.h @@ -343,6 +343,9 @@ void pci_for_each_device_under_bus(PCIBus *bus, void pci_for_each_device_under_bus_reverse(PCIBus *bus, pci_bus_dev_fn fn, void *opaque); +void pci_function_for_one_bus(PCIBus *bus, + void (*fn)(PCIBus *bus, PCIDevice *d, void *opaque), + void *opaque); void pci_for_each_bus_depth_first(PCIBus *bus, pci_bus_ret_fn begin, pci_bus_fn end, void *parent_state); PCIDevice *pci_get_function_0(PCIDevice *pci_dev); diff --git a/include/hw/southbridge/ich9.h b/include/hw/southbridge/ich9.h index fd01649d04..07b84d5227 100644 --- a/include/hw/southbridge/ich9.h +++ b/include/hw/southbridge/ich9.h @@ -130,6 +130,7 @@ struct ICH9LPCState { #define ICH9_A2_LPC_REVISION 0x2 #define ICH9_LPC_NB_PIRQS 8 /* PCI A-H */ +#define ICH9_XEN_NUM_IRQ_SOURCES 128 #define ICH9_LPC_PMBASE 0x40 #define ICH9_LPC_PMBASE_BASE_ADDRESS_MASK ICH9_MASK(32, 15, 7) diff --git a/include/hw/xen/xen.h b/include/hw/xen/xen.h index 2bd8ec742d..a2c3d98eaa 100644 --- a/include/hw/xen/xen.h +++ b/include/hw/xen/xen.h @@ -37,9 +37,9 @@ extern uint32_t xen_domid; extern enum xen_mode xen_mode; extern bool xen_domid_restrict; -int xen_pci_slot_get_pirq(PCIDevice *pci_dev, int irq_num); +int xen_cmn_pci_slot_get_pirq(PCIDevice *pci_dev, int irq_num); int xen_set_pci_link_route(uint8_t link, uint8_t irq); -void xen_piix3_set_irq(void *opaque, int irq_num, int level); +void xen_cmn_set_irq(void *opaque, int irq_num, int level); void xen_hvm_inject_msi(uint64_t addr, uint32_t data); int xen_is_pirq_msi(uint32_t msi_data); diff --git a/qemu-options.hx b/qemu-options.hx index b37eb9662b..ea018257da 100644 --- a/qemu-options.hx +++ b/qemu-options.hx @@ -30,6 +30,7 @@ DEF("machine", HAS_ARG, QEMU_OPTION_machine, \ " vmport=on|off|auto controls emulation of vmport (default: auto)\n" " dump-guest-core=on|off include guest memory in a core dump (default=on)\n" " mem-merge=on|off controls memory merge support (default: on)\n" + " xen-platform-dev=on|off controls Xen Platform device (default=off)\n" " aes-key-wrap=on|off controls support for AES key wrapping (default=on)\n" " dea-key-wrap=on|off controls support for DEA key wrapping (default=on)\n" " suppress-vmdesc=on|off disables self-describing migration (default=off)\n" diff --git a/softmmu/datadir.c b/softmmu/datadir.c index c9237cb5d4..943e7db0dd 100644 --- a/softmmu/datadir.c +++ b/softmmu/datadir.c @@ -26,7 +26,6 @@ #include "qemu/datadir.h" #include "qemu/cutils.h" #include "trace.h" - static const char *data_dir[16]; static int data_dir_idx; diff --git a/softmmu/qdev-monitor.c b/softmmu/qdev-monitor.c index b8d2c4dadd..c458a03cd0 100644 --- a/softmmu/qdev-monitor.c +++ b/softmmu/qdev-monitor.c @@ -43,6 +43,7 @@ #include "hw/qdev-properties.h" #include "hw/clock.h" #include "hw/boards.h" +#include "sysemu/xen.h" /* * Aliases were a bad idea from the start. Let's keep them @@ -663,7 +664,7 @@ DeviceState *qdev_device_add_from_qdict(const QDict *opts, return NULL; } - if (phase_check(PHASE_MACHINE_READY) && bus && !qbus_is_hotpluggable(bus)) { + if (phase_check(PHASE_MACHINE_READY) && bus && !qbus_is_hotpluggable(bus) && !xen_enabled()) { error_setg(errp, QERR_BUS_NO_HOTPLUG, bus->name); return NULL; } diff --git a/stubs/xen-hw-stub.c b/stubs/xen-hw-stub.c index 34a22f2ad7..f06fbf48c8 100644 --- a/stubs/xen-hw-stub.c +++ b/stubs/xen-hw-stub.c @@ -10,12 +10,12 @@ #include "hw/xen/xen.h" #include "hw/xen/xen-x86.h" -int xen_pci_slot_get_pirq(PCIDevice *pci_dev, int irq_num) +int xen_cmn_pci_slot_get_pirq(PCIDevice *pci_dev, int irq_num) { return -1; } -void xen_piix3_set_irq(void *opaque, int irq_num, int level) +void xen_cmn_set_irq(void *opaque, int irq_num, int level) { } -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Tue Jun 20 17:26:14 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 20 Jun 2023 17:26:14 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552066.861937 (Exim 4.92) (envelope-from ) id 1qBf7O-0005zv-5M; Tue, 20 Jun 2023 17:26:14 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552066.861937; Tue, 20 Jun 2023 17:26:14 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBf7O-0005zo-21; Tue, 20 Jun 2023 17:26:14 +0000 Received: by outflank-mailman (input) for mailman id 552066; Tue, 20 Jun 2023 17:26:12 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBf7M-0004q1-OZ for xen-devel@lists.xenproject.org; Tue, 20 Jun 2023 17:26:12 +0000 Received: from mail-qk1-x72a.google.com (mail-qk1-x72a.google.com [2607:f8b0:4864:20::72a]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 8bddd98e-0f8f-11ee-8611-37d641c3527e; Tue, 20 Jun 2023 19:26:10 +0200 (CEST) Received: by mail-qk1-x72a.google.com with SMTP id af79cd13be357-763a8918cbeso155210185a.3 for ; Tue, 20 Jun 2023 10:26:10 -0700 (PDT) Received: from joel-Precision-7920-Tower.. ([24.53.71.1]) by smtp.gmail.com with ESMTPSA id e65-20020a0dc244000000b0056cffe97a11sm604604ywd.13.2023.06.20.10.26.08 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 20 Jun 2023 10:26:08 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 8bddd98e-0f8f-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687281969; x=1689873969; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=nxaTb/29l3CebuyhwApqyR6VcKjgYqFWVhZRRk7NUds=; b=UFwApTqEw15ynGiEMn4zGI1aRFSQUGsmKdhJK7bY8DvDybKXYs/QI0p/LA5BZIs0eo r4K3I7UnCrrl4ZIipvzffx4/tipAi6+P7+pjmEQi23LTYqE8nBmFG/9rdPuiN9zFzt9M UnDbRDx4B509g2OsHTMYvs6QnAcLHZ6xyNsN1ZmQDHcNDbOvIGQdiI2rRNmFwXzbmaEJ 4ma5FkfJ73AyHagCUq4UUuGWnk4Skt3LBSLD2io6CYEmHhdm9lXfxTwNLXs3mxlSuArE FJXjdyn8A7I1jaWErgjnbUBY9TRfRhVuuT4ZpQkxrVzKFWtmmgF8E4VkQHjeVaNSpUNK eTjA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687281969; x=1689873969; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=nxaTb/29l3CebuyhwApqyR6VcKjgYqFWVhZRRk7NUds=; b=bZxfuHC/9MOMf+BdXVDIXWYd05uabOZFRdDtGb6/aMj1z2JljG9mRagne2gUqxIAS7 Wfzi0I2P3qKLh5GPUdbD5XFbntgTTT/dpiVZduFXo9T0yneDA8e8AInMDo6QxCuKLKiP KvQi5yBxpauI/aRYgBltWsIwm6BogNobpj47ikE8MM7OvZKiCb/yLg4cvxF3oKE6yUaS kLqEOF4qmfIGSqcaLeeOkxV195StqmQRL8Ufw8DITk6Q0KFZ2dFNJ4U0Aj+P9hrikEHv CzineQOGsq6FDcG74R//0w1LetPYPHu7zpfKtPBIxSuAU25PQccp91AadxDVgGu+dbn4 hfnQ== X-Gm-Message-State: AC+VfDzrrcHv50i1gw1YF5qMWlJPkBgThfsUZskRDKr+c2in8X5kGqnZ yERjAXg7u8gWM3M4Exntte8= X-Google-Smtp-Source: ACHHUZ7qEQizJx1HhPJarTNwVXdhkGcdKmod3Rc2GPN945a78/sJmry1z4uw6lP6dXJOmmKm7jBB9w== X-Received: by 2002:a05:620a:25c8:b0:763:b475:90ef with SMTP id y8-20020a05620a25c800b00763b47590efmr1998867qko.69.1687281969191; Tue, 20 Jun 2023 10:26:09 -0700 (PDT) From: Joel Upham To: qemu-devel@nongnu.org Cc: Joel Upham , Stefano Stabellini , Anthony Perard , Paul Durrant , xen-devel@lists.xenproject.org (open list:X86 Xen CPUs) Subject: [PATCH v1 07/23] xen/pt: avoid reading PCIe device type and cap version multiple times Date: Tue, 20 Jun 2023 13:24:41 -0400 Message-Id: X-Mailer: git-send-email 2.34.1 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit xen_pt_config_init.c reads Device/Port Type and Capability version fields in many places. Two functions are used for this purpose: get_capability_version and get_device_type. These functions perform PCI conf space reading every time they're called. Another bad thing is that these functions know nothing about where PCI Expess Capability is located, so its offset must be provided explicitly in function arguments. Their typical usage is like this: uint8_t cap_ver = get_capability_version(s, real_offset - reg->offset); uint8_t dev_type = get_device_type(s, real_offset - reg->offset); To avoid this, the PCI Express Capability register now being read only once and stored in XenHostPCIDevice structure (pcie_flags field). The capabiliy offset parameter is no longer needed, simplifying functions usage. Also, get_device_type and get_capability_version were renamed to more descriptive get_pcie_device_type and get_pcie_capability_version. Signed-off-by: Alexey Gerasimenko Signed-off-by: Joel Upham --- hw/xen/xen-host-pci-device.c | 15 +++++++++++++++ hw/xen/xen-host-pci-device.h | 1 + hw/xen/xen_pt_config_init.c | 34 ++++++++++++++-------------------- 3 files changed, 30 insertions(+), 20 deletions(-) diff --git a/hw/xen/xen-host-pci-device.c b/hw/xen/xen-host-pci-device.c index a7021a5d56..63481a859e 100644 --- a/hw/xen/xen-host-pci-device.c +++ b/hw/xen/xen-host-pci-device.c @@ -405,6 +405,7 @@ void xen_host_pci_device_get(XenHostPCIDevice *d, uint16_t domain, { ERRP_GUARD(); unsigned int v; + int pcie_cap_pos; d->config_fd = -1; d->domain = domain; @@ -449,6 +450,20 @@ void xen_host_pci_device_get(XenHostPCIDevice *d, uint16_t domain, d->is_virtfn = xen_host_pci_dev_is_virtfn(d); d->has_pcie_ext_caps = xen_host_pci_dev_has_pcie_ext_caps(d); + /* read and store PCIe Capabilities field for later use */ + pcie_cap_pos = xen_host_pci_find_next_cap(d, 0, PCI_CAP_ID_EXP); + + if (pcie_cap_pos) { + if (xen_host_pci_get_word(d, pcie_cap_pos + PCI_EXP_FLAGS, + &d->pcie_flags)) { + error_setg(errp, "Unable to read from PCI Express capability " + "structure at 0x%x", pcie_cap_pos); + goto error; + } + } else { + d->pcie_flags = 0xFFFF; + } + return; error: diff --git a/hw/xen/xen-host-pci-device.h b/hw/xen/xen-host-pci-device.h index 37c5614a24..2884c4b4b9 100644 --- a/hw/xen/xen-host-pci-device.h +++ b/hw/xen/xen-host-pci-device.h @@ -27,6 +27,7 @@ typedef struct XenHostPCIDevice { uint16_t device_id; uint32_t class_code; int irq; + uint16_t pcie_flags; XenHostPCIIORegion io_regions[PCI_NUM_REGIONS - 1]; XenHostPCIIORegion rom; diff --git a/hw/xen/xen_pt_config_init.c b/hw/xen/xen_pt_config_init.c index 2b8680b112..47c8482f32 100644 --- a/hw/xen/xen_pt_config_init.c +++ b/hw/xen/xen_pt_config_init.c @@ -832,24 +832,18 @@ static XenPTRegInfo xen_pt_emu_reg_vendor[] = { * PCI Express Capability */ -static inline uint8_t get_capability_version(XenPCIPassthroughState *s, - uint32_t offset) +static inline uint8_t get_pcie_capability_version(XenPCIPassthroughState *s) { - uint8_t flag; - if (xen_host_pci_get_byte(&s->real_device, offset + PCI_EXP_FLAGS, &flag)) { - return 0; - } - return flag & PCI_EXP_FLAGS_VERS; + assert(s->real_device.pcie_flags != 0xFFFF); + + return (uint8_t) (s->real_device.pcie_flags & PCI_EXP_FLAGS_VERS); } -static inline uint8_t get_device_type(XenPCIPassthroughState *s, - uint32_t offset) +static inline uint8_t get_pcie_device_type(XenPCIPassthroughState *s) { - uint8_t flag; - if (xen_host_pci_get_byte(&s->real_device, offset + PCI_EXP_FLAGS, &flag)) { - return 0; - } - return (flag & PCI_EXP_FLAGS_TYPE) >> 4; + assert(s->real_device.pcie_flags != 0xFFFF); + + return (uint8_t) ((s->real_device.pcie_flags & PCI_EXP_FLAGS_TYPE) >> 4); } /* initialize Link Control register */ @@ -857,8 +851,8 @@ static int xen_pt_linkctrl_reg_init(XenPCIPassthroughState *s, XenPTRegInfo *reg, uint32_t real_offset, uint32_t *data) { - uint8_t cap_ver = get_capability_version(s, real_offset - reg->offset); - uint8_t dev_type = get_device_type(s, real_offset - reg->offset); + uint8_t cap_ver = get_pcie_capability_version(s); + uint8_t dev_type = get_pcie_device_type(s); /* no need to initialize in case of Root Complex Integrated Endpoint * with cap_ver 1.x @@ -875,7 +869,7 @@ static int xen_pt_devctrl2_reg_init(XenPCIPassthroughState *s, XenPTRegInfo *reg, uint32_t real_offset, uint32_t *data) { - uint8_t cap_ver = get_capability_version(s, real_offset - reg->offset); + uint8_t cap_ver = get_pcie_capability_version(s); /* no need to initialize in case of cap_ver 1.x */ if (cap_ver == 1) { @@ -890,7 +884,7 @@ static int xen_pt_linkctrl2_reg_init(XenPCIPassthroughState *s, XenPTRegInfo *reg, uint32_t real_offset, uint32_t *data) { - uint8_t cap_ver = get_capability_version(s, real_offset - reg->offset); + uint8_t cap_ver = get_pcie_capability_version(s); uint32_t reg_field = 0; /* no need to initialize in case of cap_ver 1.x */ @@ -1590,8 +1584,8 @@ static int xen_pt_pcie_size_init(XenPCIPassthroughState *s, uint32_t base_offset, uint8_t *size) { PCIDevice *d = PCI_DEVICE(s); - uint8_t version = get_capability_version(s, base_offset); - uint8_t type = get_device_type(s, base_offset); + uint8_t version = get_pcie_capability_version(s); + uint8_t type = get_pcie_device_type(s); uint8_t pcie_size = 0; -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Tue Jun 20 17:26:15 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 20 Jun 2023 17:26:15 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552067.861947 (Exim 4.92) (envelope-from ) id 1qBf7P-0006GD-Eu; Tue, 20 Jun 2023 17:26:15 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552067.861947; Tue, 20 Jun 2023 17:26:15 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBf7P-0006G4-Aj; Tue, 20 Jun 2023 17:26:15 +0000 Received: by outflank-mailman (input) for mailman id 552067; Tue, 20 Jun 2023 17:26:14 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBf7O-0004q1-DZ for xen-devel@lists.xenproject.org; Tue, 20 Jun 2023 17:26:14 +0000 Received: from mail-yw1-x112c.google.com (mail-yw1-x112c.google.com [2607:f8b0:4864:20::112c]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 8d435b48-0f8f-11ee-8611-37d641c3527e; Tue, 20 Jun 2023 19:26:12 +0200 (CEST) Received: by mail-yw1-x112c.google.com with SMTP id 00721157ae682-56fff21c2ebso53778057b3.3 for ; Tue, 20 Jun 2023 10:26:12 -0700 (PDT) Received: from joel-Precision-7920-Tower.. ([24.53.71.1]) by smtp.gmail.com with ESMTPSA id e65-20020a0dc244000000b0056cffe97a11sm604604ywd.13.2023.06.20.10.26.10 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 20 Jun 2023 10:26:10 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 8d435b48-0f8f-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687281971; x=1689873971; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=re4sewoUiAJAV4/kgcnlDrxKrE2Fa0zI8YeYhG23N0Y=; b=DfdES6JEvCQWTQ1WFDll4cGS97nAixB6PRsd09O5iFOLxZco6PKhbfyAEFkZAWyakT gCJzPrYhpd7a1DMuixAnPGnTmdPOTVwMM5rMfcTE2WmPXGz7o5UvRBvEZ0GteR42PRC2 lVCvO5GXFsYJItGC1Q2scC7ydoOZ9VTsDqbOD9BN/OuN69tnXeoy0DIkIAtRXjuaqzjN 013Eyyc3Oa4qordF985hTPAqy6uANH1i3Y6hPcC3nXertqQVA1BtmbjxNxMz81vSwaRD mIGdmNWqNoB5viq56p08Y7WwZY97IlnzgnqgCVOHaYsed6TmrP6sl/ttsrXBy3RlJ9hZ 116w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687281971; x=1689873971; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=re4sewoUiAJAV4/kgcnlDrxKrE2Fa0zI8YeYhG23N0Y=; b=cCJuS6cyNVXVAQEyPO3EFys1Gn59wOiduatSx6PaRrPOWtAqkb+JznZURK4ouj10Bn DgyJFOi8q1HTt1DmKncEJ55A/FS1W4atrpiDfek0IMm+aoHZj7bvtrySzhAuS8UP2dG2 miAFOpKmfxcYpsuZkHgDIhNfZFSNtgOim9pv/8Q3SkGOOykAFnMTcmrqnp3MchNIqnuA YSlYi+LRrvv5NSllUD/N7DY5ilPDH+LWlDAP8A5rhYleKi9YuhC4/WmPfzgFnFojJBq1 BFkfONE5/cm/VEzjtpwSBwFknIp2VM2Oyah4JZiTp3/4FBduZVJIvLpdLWqYTqgfUO9r K2xw== X-Gm-Message-State: AC+VfDwD48ND9gfINhSqwJEiKX+JP00obi2xy3pq7acty8rBuNyFeF3p tEfvkkDonf8lBKG8/C068e4= X-Google-Smtp-Source: ACHHUZ7xi/MCe/ilteffhPiFjo95RMXHLzj+R6XW+7HT26RsjzlIhW2AGxlvpmO2zHaQ7cawV/D/bg== X-Received: by 2002:a81:c213:0:b0:56c:ea52:a9fc with SMTP id z19-20020a81c213000000b0056cea52a9fcmr13911538ywc.12.1687281971388; Tue, 20 Jun 2023 10:26:11 -0700 (PDT) From: Joel Upham To: qemu-devel@nongnu.org Cc: Joel Upham , Stefano Stabellini , Anthony Perard , Paul Durrant , xen-devel@lists.xenproject.org (open list:X86 Xen CPUs) Subject: [PATCH v1 08/23] xen/pt: determine the legacy/PCIe mode for a passed through device Date: Tue, 20 Jun 2023 13:24:42 -0400 Message-Id: X-Mailer: git-send-email 2.34.1 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Even if we have some real PCIe device being passed through to a guest, there are situations when we cannot use its PCIe features, primarily allowing to access extended (>256) config space. Basically, we can allow reading PCIe extended config space only if both the device and emulated system are PCIe-capable. So it's a combination of checks: - PCI Express capability presence - pci_is_express(device) - pci_bus_is_express(device bus) The AND-product of these checks is stored to pcie_enabled_dev flag in XenPCIPassthroughState for later use in functions like xen_pt_pci_config_access_check. This way we get consistent behavior when the same PCIe device being passed through to either i440 domain or Q35 one. Signed-off-by: Alexey Gerasimenko Signed-off-by: Joel Upham --- hw/xen/xen_pt.c | 28 ++++++++++++++++++++++++++-- hw/xen/xen_pt.h | 1 + 2 files changed, 27 insertions(+), 2 deletions(-) diff --git a/hw/xen/xen_pt.c b/hw/xen/xen_pt.c index a540149639..65c5516ef4 100644 --- a/hw/xen/xen_pt.c +++ b/hw/xen/xen_pt.c @@ -701,6 +701,21 @@ static const MemoryListener xen_pt_io_listener = { .priority = 10, }; +static inline bool xen_pt_dev_is_pcie_mode(PCIDevice *d) +{ + XenPCIPassthroughState *s = XEN_PT_DEVICE(d); + PCIBus *bus = pci_get_bus(d); + + if (bus != NULL) { + if (pci_is_express(d) && pci_bus_is_express(bus) && + xen_host_pci_find_next_cap(&s->real_device, 0, PCI_CAP_ID_EXP)) { + return true; + } + } + + return false; +} + /* destroy. */ static void xen_pt_destroy(PCIDevice *d) { @@ -787,8 +802,17 @@ static void xen_pt_realize(PCIDevice *d, Error **errp) s->real_device.dev, s->real_device.func); } - /* Initialize virtualized PCI configuration (Extended 256 Bytes) */ - memset(d->config, 0, PCI_CONFIG_SPACE_SIZE); + s->pcie_enabled_dev = xen_pt_dev_is_pcie_mode(d); + if (s->pcie_enabled_dev) { + XEN_PT_LOG(d, "Host device %04x:%02x:%02x.%d passed thru " + "in PCIe mode\n", s->real_device.domain, + s->real_device.bus, s->real_device.dev, + s->real_device.func); + } + + /* Initialize virtualized PCI configuration space (256/4K bytes) */ + memset(d->config, 0, pci_is_express(d) ? PCIE_CONFIG_SPACE_SIZE + : PCI_CONFIG_SPACE_SIZE); s->memory_listener = xen_pt_memory_listener; s->io_listener = xen_pt_io_listener; diff --git a/hw/xen/xen_pt.h b/hw/xen/xen_pt.h index b20744f7c7..1c9cd6b615 100644 --- a/hw/xen/xen_pt.h +++ b/hw/xen/xen_pt.h @@ -234,6 +234,7 @@ struct XenPCIPassthroughState { PCIHostDeviceAddress hostaddr; bool is_virtfn; + bool pcie_enabled_dev; bool permissive; bool permissive_warned; XenHostPCIDevice real_device; -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Tue Jun 20 17:26:15 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 20 Jun 2023 17:26:15 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552064.861927 (Exim 4.92) (envelope-from ) id 1qBf7M-0005iw-Ve; Tue, 20 Jun 2023 17:26:12 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552064.861927; Tue, 20 Jun 2023 17:26:12 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBf7M-0005ip-Q9; Tue, 20 Jun 2023 17:26:12 +0000 Received: by outflank-mailman (input) for mailman id 552064; Tue, 20 Jun 2023 17:26:10 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBf7K-0004q1-OA for xen-devel@lists.xenproject.org; Tue, 20 Jun 2023 17:26:10 +0000 Received: from mail-yw1-x1133.google.com (mail-yw1-x1133.google.com [2607:f8b0:4864:20::1133]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 8ab5614f-0f8f-11ee-8611-37d641c3527e; Tue, 20 Jun 2023 19:26:08 +0200 (CEST) Received: by mail-yw1-x1133.google.com with SMTP id 00721157ae682-56fff21c2ebso53777097b3.3 for ; Tue, 20 Jun 2023 10:26:08 -0700 (PDT) Received: from joel-Precision-7920-Tower.. ([24.53.71.1]) by smtp.gmail.com with ESMTPSA id e65-20020a0dc244000000b0056cffe97a11sm604604ywd.13.2023.06.20.10.26.06 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 20 Jun 2023 10:26:06 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 8ab5614f-0f8f-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687281967; x=1689873967; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=pVhDjOa7FHuFiuCBrjeemQ/YptYJoZezJ1j93NWRipk=; b=bPEXGnB2OtY8PYvTjaUk45NIyGfaJM2vd0nUPIwq0dz+1vjogQHKnLJSGWeMF3FZiR BJQr02kmNxHweWckj3n4AC4pYWAIm3gXebmre0XVSa+MyCSfP7KmzjksZfpzuEP6yi2c HKrdqxIW3oi5jIN+o1+rFb7mcBEbqWQ+WLjCyNu2Le6YTLfO5bsApD3TyYLGfcWzXEpw MgywIHHn/Ex9ORIPODfah/nut/515nEu59JmlDBKfJz3jeZl5XAIcDawiSkUvxQm8mCn zahZTbbwNHQb4LnWfVlixwaX4ifBQy6qHwzgwKkO2Saqoz8hCtPT/HCRi58uaA1nlKxf A7Ig== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687281967; x=1689873967; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=pVhDjOa7FHuFiuCBrjeemQ/YptYJoZezJ1j93NWRipk=; b=c9fkDGSLh+JJjLeuqNTuZmw0lC0GFrJz53sMRNbxDJ0wGc+bYeowpwK21kZywn7wp7 3rvbLZhoNyr4kg9fn7cnNnLe9WWmH/lrw3SCiN22VWOkXG9mVw9/SgfF/8RJw57/3bij TtsBl3cX25eGKiMmj0WAs5o7M6H3MdaBs4WV+taEqHRHXatmmi+lNIF7jt25YnSc1Qqk uX9OrddZL/BDAe0Zl2ejrJe5HuVIf/G3y73rGAl05euzCpjXUJwlngMbtCvXK7EdSWTu 2KXV/B4knay20tpoWdSL9t8jXhi7Gu/G1b9Ujs7fvMEHhrJhPZhY49dBWzws/vYKKtse xo/w== X-Gm-Message-State: AC+VfDwTRJtds/sRBpHNP1rgAySGY0nt7JoYE9pYjrESFFZ3iKxrVQye GJxG1Ho9IrEbm6fDyELv0cA= X-Google-Smtp-Source: ACHHUZ6SdCuyO2ywOemJ8HmOK80tXYlK5MSf18GBMCkKWxXCffCWY1KnaRNAYZ9J1meknqeU888PzQ== X-Received: by 2002:a0d:f384:0:b0:56d:1528:c56f with SMTP id c126-20020a0df384000000b0056d1528c56fmr12677100ywf.16.1687281967212; Tue, 20 Jun 2023 10:26:07 -0700 (PDT) From: Joel Upham To: qemu-devel@nongnu.org Cc: Joel Upham , Stefano Stabellini , Anthony Perard , Paul Durrant , xen-devel@lists.xenproject.org (open list:X86 Xen CPUs) Subject: [PATCH v1 06/23] xen/pt: XenHostPCIDevice: provide functions for PCI Capabilities and PCIe Extended Capabilities enumeration Date: Tue, 20 Jun 2023 13:24:40 -0400 Message-Id: <8a5ed3bf4f1abca1e7e3a2c6011b7f81620aedca.1687278381.git.jupham125@gmail.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit This patch introduces 2 new functions, - xen_host_pci_find_next_ext_cap (actually a reworked xen_host_pci_find_ext_cap_offset function which is unused) - xen_host_pci_find_next_cap These functions allow to search for PCI/PCIe capabilities in a uniform way. Both functions allow to search either a specific capability or any encountered next (by specifying CAP_ID_ANY as a capability ID) -- this may be useful when we merely need to traverse the capability list one-by-one. In both functions the 'pos' argument allows to continue searching from last position (0 means to start from beginning). In order not to probe PCIe Extended Capabilities existence every time, xen_host_pci_find_next_ext_cap makes use of the new 'has_pcie_ext_caps' field in XenHostPCIDevice structure which is filled only once (in xen_host_pci_device_get). Signed-off-by: Alexey Gerasimenko Signed-off-by: Joel Upham --- hw/xen/xen-host-pci-device.c | 91 ++++++++++++++++++++++++++++++++---- hw/xen/xen-host-pci-device.h | 5 +- 2 files changed, 85 insertions(+), 11 deletions(-) diff --git a/hw/xen/xen-host-pci-device.c b/hw/xen/xen-host-pci-device.c index 8c6e9a1716..a7021a5d56 100644 --- a/hw/xen/xen-host-pci-device.c +++ b/hw/xen/xen-host-pci-device.c @@ -32,6 +32,7 @@ #define IORESOURCE_PREFETCH 0x00001000 /* No side effects */ #define IORESOURCE_MEM_64 0x00100000 +#define XEN_HOST_PCI_CAP_MAX 48 static void xen_host_pci_sysfs_path(const XenHostPCIDevice *d, const char *name, char *buf, ssize_t size) @@ -198,6 +199,19 @@ static bool xen_host_pci_dev_is_virtfn(XenHostPCIDevice *d) return !stat(path, &buf); } +static bool xen_host_pci_dev_has_pcie_ext_caps(XenHostPCIDevice *d) +{ + uint32_t header; + + if (xen_host_pci_get_long(d, PCI_CONFIG_SPACE_SIZE, &header)) + return false; + + if (header == 0 || header == ~0U) + return false; + + return true; +} + static void xen_host_pci_config_open(XenHostPCIDevice *d, Error **errp) { char path[PATH_MAX]; @@ -296,37 +310,93 @@ int xen_host_pci_set_block(XenHostPCIDevice *d, int pos, uint8_t *buf, int len) return xen_host_pci_config_write(d, pos, buf, len); } -int xen_host_pci_find_ext_cap_offset(XenHostPCIDevice *d, uint32_t cap) +int xen_host_pci_find_next_ext_cap(XenHostPCIDevice *d, int pos, uint32_t cap) { uint32_t header = 0; int max_cap = XEN_HOST_PCI_MAX_EXT_CAP; - int pos = PCI_CONFIG_SPACE_SIZE; + + if (!d->has_pcie_ext_caps) + return 0; + + if (!pos) { + pos = PCI_CONFIG_SPACE_SIZE; + } else { + if (xen_host_pci_get_long(d, pos, &header)) + return 0; + + pos = PCI_EXT_CAP_NEXT(header); + } do { + if (!pos || pos < PCI_CONFIG_SPACE_SIZE) { + break; + } + if (xen_host_pci_get_long(d, pos, &header)) { break; } /* * If we have no capabilities, this is indicated by cap ID, * cap version and next pointer all being 0. + * Also check for all F's returned (which means PCIe ext conf space + * is unreadable for some reason) */ - if (header == 0) { + if (header == 0 || header == ~0U) { break; } - if (PCI_EXT_CAP_ID(header) == cap) { + if (cap == CAP_ID_ANY) { + return pos; + } else if (PCI_EXT_CAP_ID(header) == cap) { return pos; } pos = PCI_EXT_CAP_NEXT(header); - if (pos < PCI_CONFIG_SPACE_SIZE) { + } while (--max_cap); + + return 0; +} + +int xen_host_pci_find_next_cap(XenHostPCIDevice *d, int pos, uint32_t cap) +{ + uint8_t id; + unsigned max_cap = XEN_HOST_PCI_CAP_MAX; + uint8_t status = 0; + uint8_t curpos; + + if (xen_host_pci_get_byte(d, PCI_STATUS, &status)) + return 0; + + if ((status & PCI_STATUS_CAP_LIST) == 0) + return 0; + + if (pos < PCI_CAPABILITY_LIST) { + curpos = PCI_CAPABILITY_LIST; + } else { + curpos = (uint8_t) pos; + } + + while (max_cap--) { + if (xen_host_pci_get_byte(d, curpos, &curpos)) + break; + if (!curpos) + break; + + if (cap == CAP_ID_ANY) + return curpos; + + if (xen_host_pci_get_byte(d, curpos + PCI_CAP_LIST_ID, &id)) break; - } - max_cap--; - } while (max_cap > 0); + if (id == 0xff) + break; + else if (id == cap) + return curpos; + + curpos += PCI_CAP_LIST_NEXT; + } - return -1; + return 0; } void xen_host_pci_device_get(XenHostPCIDevice *d, uint16_t domain, @@ -376,7 +446,8 @@ void xen_host_pci_device_get(XenHostPCIDevice *d, uint16_t domain, } d->class_code = v; - d->is_virtfn = xen_host_pci_dev_is_virtfn(d); + d->is_virtfn = xen_host_pci_dev_is_virtfn(d); + d->has_pcie_ext_caps = xen_host_pci_dev_has_pcie_ext_caps(d); return; diff --git a/hw/xen/xen-host-pci-device.h b/hw/xen/xen-host-pci-device.h index 4d8d34ecb0..37c5614a24 100644 --- a/hw/xen/xen-host-pci-device.h +++ b/hw/xen/xen-host-pci-device.h @@ -32,6 +32,7 @@ typedef struct XenHostPCIDevice { XenHostPCIIORegion rom; bool is_virtfn; + bool has_pcie_ext_caps; int config_fd; } XenHostPCIDevice; @@ -53,6 +54,8 @@ int xen_host_pci_set_long(XenHostPCIDevice *d, int pos, uint32_t data); int xen_host_pci_set_block(XenHostPCIDevice *d, int pos, uint8_t *buf, int len); -int xen_host_pci_find_ext_cap_offset(XenHostPCIDevice *s, uint32_t cap); +#define CAP_ID_ANY (~0U) +int xen_host_pci_find_next_cap(XenHostPCIDevice *s, int pos, uint32_t cap); +int xen_host_pci_find_next_ext_cap(XenHostPCIDevice *d, int pos, uint32_t cap); #endif /* XEN_HOST_PCI_DEVICE_H */ -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Tue Jun 20 17:26:17 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 20 Jun 2023 17:26:17 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552069.861958 (Exim 4.92) (envelope-from ) id 1qBf7R-0006di-Qj; Tue, 20 Jun 2023 17:26:17 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552069.861958; Tue, 20 Jun 2023 17:26:17 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBf7R-0006dT-LG; Tue, 20 Jun 2023 17:26:17 +0000 Received: by outflank-mailman (input) for mailman id 552069; Tue, 20 Jun 2023 17:26:16 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBf7Q-0004q1-NY for xen-devel@lists.xenproject.org; Tue, 20 Jun 2023 17:26:16 +0000 Received: from mail-yw1-x1135.google.com (mail-yw1-x1135.google.com [2607:f8b0:4864:20::1135]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 8e86d7eb-0f8f-11ee-8611-37d641c3527e; Tue, 20 Jun 2023 19:26:14 +0200 (CEST) Received: by mail-yw1-x1135.google.com with SMTP id 00721157ae682-57083a06b71so41788197b3.1 for ; Tue, 20 Jun 2023 10:26:14 -0700 (PDT) Received: from joel-Precision-7920-Tower.. ([24.53.71.1]) by smtp.gmail.com with ESMTPSA id e65-20020a0dc244000000b0056cffe97a11sm604604ywd.13.2023.06.20.10.26.12 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 20 Jun 2023 10:26:13 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 8e86d7eb-0f8f-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687281973; x=1689873973; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=LEqoX2AjLX1PvGaIbFaWG2CMKLGJZqfTIlTMaOcN4vw=; b=syngMxkIZTeaQp9EqDCXblsZMbin0jsNke7dSjaot9xphnUmSuAruqjdyZe2WoweR3 eH3f1NX9hHczy6+4cCHq6/IvVWjiWN90p0y8rp4ZLL6+B6jbVkJDavnPNLdcDi0Dvsy0 GE88YUqM8DFZxDlftNsQp3Gcd2G3Q7VTV+HkrymeuvD2SjJpuHSV7W6isdnwiNQAnpbM l1sFy6VCqaTSSUiaqaeqTHMNKZC3TX3/pKRDESIrsX6VUJCPqDB0rGSJutFzEW+1FDYO mX2KmAlrMDsAn96lm/5k8KIKcHRj61qU1g/swUa5rHHKp57FAUtvjaBQ0q+0JXrryVWZ I9PA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687281973; x=1689873973; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=LEqoX2AjLX1PvGaIbFaWG2CMKLGJZqfTIlTMaOcN4vw=; b=d2JLtfhy7C5IuyehNJOHUeeQuoKPS9JMqg2aujEFA6na9jvQBdN+h098SMvLnxmOI1 xDZi1JJoo3ckaqsiKADw97uKg6g75xKxjumf0+GIbfV0orB4CHjgNEfPr2pJOAFDD8vd QGf72wZ6dUnP9EBFJ7DdltaVZGuQoNOAmc2grXNtAKmhIU7Y/74/kv8DzkMZTEx1qTkt MidqAregkNKCzwxrIX0tmKc9tcoPVIRpog5j2Yd5bBT2IHk1FO1j40qzkWgNAaUXMRkO JLMh0FrtS3lE1JeKanmjrt3qIat0E+DFMd/oBOBWwyU44Gj+ap2NUZUqgHNB1hUM2Q5K IVEA== X-Gm-Message-State: AC+VfDxViylTsMaamSl0l7RswJGXD0bqwCFDsEk9mXLOQ9W0jtUHfBLc 1UebMYirpo3HJ46cGVOnmL0KsVNOAp7ZPA== X-Google-Smtp-Source: ACHHUZ7kcV+4jXM1nvoQ+9LnCTBkDnjZwwW17Mts+DPH57RjuKWgSyke9VCfEcmOzSYeFt76ut4FPg== X-Received: by 2002:a81:7dd5:0:b0:56f:fa56:4c32 with SMTP id y204-20020a817dd5000000b0056ffa564c32mr9995963ywc.52.1687281973507; Tue, 20 Jun 2023 10:26:13 -0700 (PDT) From: Joel Upham To: qemu-devel@nongnu.org Cc: Joel Upham , Stefano Stabellini , Anthony Perard , Paul Durrant , xen-devel@lists.xenproject.org (open list:X86 Xen CPUs) Subject: [PATCH v1 09/23] xen/pt: Xen PCIe passthrough support for Q35: bypass PCIe topology check Date: Tue, 20 Jun 2023 13:24:43 -0400 Message-Id: X-Mailer: git-send-email 2.34.1 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Compared to legacy i440 system, there are certain difficulties while passing through PCIe devices to guest OSes like Windows 7 and above on platforms with native support of PCIe bus (in our case Q35). This problem is not applicable to older OSes like Windows XP -- PCIe passthrough on such OSes can be used normally as these OSes have no support for PCIe-specific features and treat all PCIe devices as legacy PCI ones. The problem manifests itself as "Code 10" error for a passed thru PCIe device in Windows Device Manager (along with exclamation mark on it). The device with such error do not function no matter the fact that Windows successfully booted while actually using this device, ex. as a primary VGA card with VBE features, LFB, etc. working properly during boot time. It doesn't matter which PCI class the device have -- the problem is common to GPUs, NIC cards, USB controllers, etc. In the same time, all these devices can be passed thru successfully using i440 emulation on same Windows 7+ OSes. The actual root cause of the problem lies in the fact that Windows kernel (PnP manager particularly) while processing StartDevice IRP refuses to continue to start the device and control flow actually doesn't even reach the IRP handler in the device driver at all. The real reason for this typically does not appear at the time PnP manager tries to start the device, but happens much earlier -- during the Windows boot stage, while enumerating devices on a PCI/PCIe bus in the Windows pci.sys driver. There is a set of checks for every discovered device on the PCIe bus. Failing some of them leads to marking the discovered PCIe device as 'invalid' by setting the flag. Later on, StartDevice attempt will fail due to this flag, finally resulting in Code 10 error. The actual check in pci.sys which results in the PCIe device being marked as 'invalid' in our case is a validation of upstream PCIe bus hierarchy to which passed through device belongs. Basically, pci.sys checks if the PCIe device has parent devices, such as PCIe Root Port or upstream PCIe switch. In our case the PCIe device has no parents and resides on bus 0 without eg. corresponding Root Port. Therefore, in order to resolve this problem in a architecturally correct way, we need to introduce to Xen some support of at least trivial non-flat PCI bus hierarchy. In very simplest case - just one virtual Root Port, on secondary bus of which all physical functions of the real passed thru device will reside, eg. GPU and its HDAudio function. This solution is not hard to implement technically, but there are multiple affecting limitations present in Xen (many related to each other) currently: - in many places the code is limited to use bus 0 only. This applicable to both hypervisor and supplemental modules like hvmloader. This limitation is enforced on API level -- many functions and interfaces allow to specify only devfn argument while bus 0 being implied. - lot of code assumes Type0 PCI config space layout only, while we need to handle Type1 PCI devices as well - currently there no way to assign to a guest domain even a simplest linked hierarchy of passed thru PCI devices. In some cases we might need to passthrough a real PCIe Switch/Root Port with his downstream child devices. - in a similar way Xen/hvmloader lacks the concept of IO/MMIO space nesting. Both code which does MMIO hole sizing and code which allocates BARs to MMIO hole have no idea of MMIO ranges nesting and their relations. In case of virtual Root Port we have basically an emulated PCI-PCI bridge with some parts of its MMIO range used for real MMIO ranges of passed through device(s). So, adding to Xen multiple PCI buses support will require a bit of effort and discussions regarding the actual design of the feature. Nevertheless, this task is crucial for PCI/GPU passthrough features of Xen to work properly. To summarize, we need to implement following things in the future: 1) Get rid of PCI bus 0 limitation everywhere. This could've been a simplest of subtasks but in reality this will require to change interfaces as well - AFAIR even adding a PCI device via QMP only allows to specify a device slot while we need to have some way to place the device on an arbitrary bus. 2) Fully or partially emulated PCI-PCI bridge which will provide a secondary bus for PCIe device placement - there might be a possibility to reuse some existing emulation QEMU provides. This also includes Type1 devices support. The task will become more complicated if there arise necessity, for example, to control the PCIe link for a passed through PCIe device. As PT device reset is mandatory in most cases, there might be a chance to encounter a situation when we need to retrain the PCIe link to restore PCIe link speed after the reset. In this case there will be a need to selectively translate accesses to certain registers of emulated PCIe Switch/Root Port to the corresponding physical upstream PCIe Switch/RootPort. This will require some interaction with Dom0, hopefully extending xen-pciback will be enough. 3) The concept of I/O and MMIO ranges nesting, for tasks like sizing MMIO hole or PCI BAR allocation. This one should be pretty simple. The actual implementation still is a matter to discuss of course. In the meantime there can be used a very simple workaround which allows to bypass pci.sys limitation for PCIe topology check - there exist one good exception to "must have upstream PCIe parent" rule of pci.sys. It's chipset-integrated devices. How pci.sys can tell if it deals with a chipset built-in device? It checks one of PCI Express Capability fields in the device PCI conf space. For chipset built-in devices this field will state "root complex integrated device" while in our case for a normal passed thru PCIe device there will be a "PCIe endpoint" type. So that's what the workaround does - it intercepts reading of this particular field for passed through devices and returns the "root complex integrated device" value for PCIe endpoints. This makes pci.sys happy and allows Windows 7 and above to use PT device on PCIe-capable system normally. So far no negative side effects were encountered while using this approach, so it's a good temporary solution until multiple PCI bus support will be added to Xen. Signed-off-by: Alexey Gerasimenko Signed-off-by: Joel Upham --- hw/xen/xen_pt_config_init.c | 49 +++++++++++++++++++++++++++++++++++++ 1 file changed, 49 insertions(+) diff --git a/hw/xen/xen_pt_config_init.c b/hw/xen/xen_pt_config_init.c index 47c8482f32..757a035aad 100644 --- a/hw/xen/xen_pt_config_init.c +++ b/hw/xen/xen_pt_config_init.c @@ -907,6 +907,55 @@ static int xen_pt_linkctrl2_reg_init(XenPCIPassthroughState *s, return 0; } +/* initialize PCI Express Capabilities register */ +static int xen_pt_pcie_capabilities_reg_init(XenPCIPassthroughState *s, + XenPTRegInfo *reg, + uint32_t real_offset, + uint32_t *data) +{ + uint8_t dev_type = get_pcie_device_type(s); + uint16_t reg_field; + + if (xen_host_pci_get_word(&s->real_device, + real_offset - reg->offset + PCI_EXP_FLAGS, + ®_field)) { + XEN_PT_ERR(&s->dev, "Error reading PCIe Capabilities reg\n"); + *data = 0; + return 0; + } + /* + * Q35 workaround for Win7+ pci.sys PCIe topology check. + * As our PT device currently located on a bus 0, fake the + * device/port type field to the "Root Complex integrated device" + * value to bypass the check + */ + switch (dev_type) { + case PCI_EXP_TYPE_ENDPOINT: + case PCI_EXP_TYPE_LEG_END: + XEN_PT_LOG(&s->dev, "Original PCIe Capabilities reg is 0x%04X\n", + reg_field); + reg_field &= ~PCI_EXP_FLAGS_TYPE; + reg_field |= ((PCI_EXP_TYPE_RC_END /*9*/ << 4) & PCI_EXP_FLAGS_TYPE); + XEN_PT_LOG(&s->dev, "Q35 PCIe topology check workaround: " + "faking Capabilities reg to 0x%04X\n", reg_field); + break; + + case PCI_EXP_TYPE_ROOT_PORT: + case PCI_EXP_TYPE_UPSTREAM: + case PCI_EXP_TYPE_DOWNSTREAM: + case PCI_EXP_TYPE_PCI_BRIDGE: + case PCI_EXP_TYPE_PCIE_BRIDGE: + case PCI_EXP_TYPE_RC_END: + case PCI_EXP_TYPE_RC_EC: + default: + /* do nothing, return as is */ + break; + } + + *data = reg_field; + return 0; +} + /* PCI Express Capability Structure reg static information table */ static XenPTRegInfo xen_pt_emu_reg_pcie[] = { /* Next Pointer reg */ -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Tue Jun 20 17:26:20 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 20 Jun 2023 17:26:20 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552070.861967 (Exim 4.92) (envelope-from ) id 1qBf7U-00071T-7b; Tue, 20 Jun 2023 17:26:20 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552070.861967; Tue, 20 Jun 2023 17:26:20 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBf7U-00071D-4N; Tue, 20 Jun 2023 17:26:20 +0000 Received: by outflank-mailman (input) for mailman id 552070; Tue, 20 Jun 2023 17:26:19 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBf7T-0004q1-9l for xen-devel@lists.xenproject.org; Tue, 20 Jun 2023 17:26:19 +0000 Received: from mail-yw1-x1136.google.com (mail-yw1-x1136.google.com [2607:f8b0:4864:20::1136]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 8f95edf0-0f8f-11ee-8611-37d641c3527e; Tue, 20 Jun 2023 19:26:16 +0200 (CEST) Received: by mail-yw1-x1136.google.com with SMTP id 00721157ae682-56ff9cc91b4so56501427b3.0 for ; Tue, 20 Jun 2023 10:26:16 -0700 (PDT) Received: from joel-Precision-7920-Tower.. ([24.53.71.1]) by smtp.gmail.com with ESMTPSA id e65-20020a0dc244000000b0056cffe97a11sm604604ywd.13.2023.06.20.10.26.14 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 20 Jun 2023 10:26:15 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 8f95edf0-0f8f-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687281975; x=1689873975; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=5oficzjs5xcBYSHcpYrMTcfh+AwyMWQx/k5j2kJ4DGo=; b=O2gmxwgPbbW0ycNLE6VtVZ2j4XzYDPo99Wh8EBMogWPXV+Kpoo9l2hXiGgJTL+3UWy AV3HvB2nSQNIdHMZ3w/fcuOS3koy85JWsyMEA7Yff+X+tkkHnwQAUrI+P7vHfcJew7Ug Xm/I3seDw2cBPzJ85DqXi1QSKXudjAHLntTZvTgkwyQs8QodwBBGFOhFsBa9wdc+0HRV HC+t05bwvGK34OqN7tNbN9nZ4fHb12xARVgPdXFx+ua4ql/xGu5zg7kk2qyn2rHk3n0l 9IaX5IlOAWeqfzqzljQHBqfCYEO5CzgHpqTA/ZiuAQed4J4/mx+PjRPgfZHTOe0RL5mE DujQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687281975; x=1689873975; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=5oficzjs5xcBYSHcpYrMTcfh+AwyMWQx/k5j2kJ4DGo=; b=EJVJY8eWd9JJWyqHFcMDyvdMQ27K5DuILLi9pNmXp6Nv/Xk+tZ3sHOm1YX+vxI1sBD MjlFGRvSlGKepiySkziYNPPNtzJa6C9b/Cb/G9fWvXFGYmj6M9ayiVd+Nz3e/+tVq9Vd 8xX24D1ZzEIH5Ev5hWMKZdzloEPmxJxlCK9U7p/0jc1nGAE/KVNqCEuXZy64L178NV2U mrG2g4hPE9xQP9SE1hMZmmAVnP0P1vlC87yyZk6ZAECGlhkL5bFIPfXyeqFB1zN/ajVJ OGz4S4kcQJj+T1a5JgrFeTkqJzcJMtNUX43wq7ql2OpFiiED3WhkqWKldTm29KuLRZOw vzEw== X-Gm-Message-State: AC+VfDzT0r3S5e5xRfrKBF/niXqsb0F0BexwlCVmXzEEfirU5SJejhxx 1xjCk6e4QbOpVJrSJHBFhMA= X-Google-Smtp-Source: ACHHUZ6XnSFKFEmZ4JRuuQ8RG5O/zfoeupAWUrMFLcGCPcnHuHkd+hGqCOhfxRag80J/Ukwvt5V6wQ== X-Received: by 2002:a81:6ac6:0:b0:56d:ccf:19a9 with SMTP id f189-20020a816ac6000000b0056d0ccf19a9mr16316679ywc.34.1687281975343; Tue, 20 Jun 2023 10:26:15 -0700 (PDT) From: Joel Upham To: qemu-devel@nongnu.org Cc: Joel Upham , Stefano Stabellini , Anthony Perard , Paul Durrant , xen-devel@lists.xenproject.org (open list:X86 Xen CPUs) Subject: [PATCH v1 10/23] xen/pt: add support for PCIe Extended Capabilities and larger config space Date: Tue, 20 Jun 2023 13:24:44 -0400 Message-Id: <775c2acb6ac819990e28d881167fcdfcd58b9886.1687278381.git.jupham125@gmail.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit This patch provides basic facilities for PCIe Extended Capabilities and support for controlled (via s->pcie_enabled_dev flag) access to PCIe config space (>256). PCIe Extended Capabilities make use of 16-bit capability ID. Also, a capability size might exceed 8-bit width. So as the very first step we need to increase type size for grp_id, grp_size, etc -- they were limited to 8-bit. The only troublesome issue with PCIe Extended Capability IDs is that their value range is actually same as for basic PCI capabilities. Eg. capability ID 3 means VPD Capability for PCI and at the same time Device Serial Number Capability for PCIe Extended caps. This adds a bit of inconvenience. In order to distinguish between two sets of same capability IDs, the patch introduces a set of macros to mark a capability ID as PCIe Extended one (or check if it is basic/extended + get a raw ID value): - PCIE_EXT_CAP_ID(cap_id) - IS_PCIE_EXT_CAP_ID(grp_id) - GET_PCIE_EXT_CAP_ID(grp_id) Here is how it's used: /* Intel IGD Opregion group */ { .grp_id = XEN_PCI_INTEL_OPREGION, /* no change */ .grp_type = XEN_PT_GRP_TYPE_EMU, .grp_size = 0x4, .size_init = xen_pt_reg_grp_size_init, .emu_regs = xen_pt_emu_reg_igd_opregion, }, /* Vendor-specific Extended Capability reg group */ { .grp_id = PCIE_EXT_CAP_ID(PCI_EXT_CAP_ID_VNDR), .grp_type = XEN_PT_GRP_TYPE_EMU, .grp_size = 0xFF, .size_init = xen_pt_ext_cap_vendor_size_init, .emu_regs = xen_pt_ext_cap_emu_reg_vendor, }, By using the PCIE_EXT_CAP_ID() macro it is possible to reuse existing header files with already defined PCIe Extended Capability ID values. find_cap_offset() receive capabily ID and checks if it's an Extended one by using IS_PCIE_EXT_CAP_ID(cap) macro, passing the real capabiliy ID value to either xen_host_pci_find_next_ext_cap or xen_host_pci_find_next_cap. Signed-off-by: Alexey Gerasimenko Signed-off-by: Joel Upham --- hw/xen/xen_pt.c | 10 ++++- hw/xen/xen_pt.h | 13 ++++-- hw/xen/xen_pt_config_init.c | 90 ++++++++++++++++++++++++++----------- 3 files changed, 83 insertions(+), 30 deletions(-) diff --git a/hw/xen/xen_pt.c b/hw/xen/xen_pt.c index 65c5516ef4..f757978800 100644 --- a/hw/xen/xen_pt.c +++ b/hw/xen/xen_pt.c @@ -96,8 +96,16 @@ void xen_pt_log(const PCIDevice *d, const char *f, ...) static int xen_pt_pci_config_access_check(PCIDevice *d, uint32_t addr, int len) { + XenPCIPassthroughState *s = XEN_PT_DEVICE(d); /* check offset range */ - if (addr > 0xFF) { + if (s->pcie_enabled_dev) { + if (addr >= PCIE_CONFIG_SPACE_SIZE) { + XEN_PT_ERR(d, "Failed to access register with offset " + "exceeding 0xFFF. (addr: 0x%02x, len: %d)\n", + addr, len); + return -1; + } + } else if (addr >= PCI_CONFIG_SPACE_SIZE) { XEN_PT_ERR(d, "Failed to access register with offset exceeding 0xFF. " "(addr: 0x%02x, len: %d)\n", addr, len); return -1; diff --git a/hw/xen/xen_pt.h b/hw/xen/xen_pt.h index 1c9cd6b615..eb062be3f4 100644 --- a/hw/xen/xen_pt.h +++ b/hw/xen/xen_pt.h @@ -33,6 +33,11 @@ void xen_pt_log(const PCIDevice *d, const char *f, ...) G_GNUC_PRINTF(2, 3); /* Helper */ #define XEN_PFN(x) ((x) >> XC_PAGE_SHIFT) +/* Macro's for PCIe Extended Capabilities */ +#define PCIE_EXT_CAP_ID(cap_id) ((cap_id) | (1U << 16)) +#define IS_PCIE_EXT_CAP_ID(grp_id) ((grp_id) & (1U << 16)) +#define GET_PCIE_EXT_CAP_ID(grp_id) ((grp_id) & 0xFFFF) + typedef const struct XenPTRegInfo XenPTRegInfo; typedef struct XenPTReg XenPTReg; @@ -174,13 +179,13 @@ typedef const struct XenPTRegGroupInfo XenPTRegGroupInfo; /* emul reg group size initialize method */ typedef int (*xen_pt_reg_size_init_fn) (XenPCIPassthroughState *, XenPTRegGroupInfo *, - uint32_t base_offset, uint8_t *size); + uint32_t base_offset, uint32_t *size); /* emulated register group information */ struct XenPTRegGroupInfo { - uint8_t grp_id; + uint32_t grp_id; XenPTRegisterGroupType grp_type; - uint8_t grp_size; + uint32_t grp_size; xen_pt_reg_size_init_fn size_init; XenPTRegInfo *emu_regs; }; @@ -190,7 +195,7 @@ typedef struct XenPTRegGroup { QLIST_ENTRY(XenPTRegGroup) entries; XenPTRegGroupInfo *reg_grp; uint32_t base_offset; - uint8_t size; + uint32_t size; QLIST_HEAD(, XenPTReg) reg_tbl_list; } XenPTRegGroup; diff --git a/hw/xen/xen_pt_config_init.c b/hw/xen/xen_pt_config_init.c index 757a035aad..34ed9c25c5 100644 --- a/hw/xen/xen_pt_config_init.c +++ b/hw/xen/xen_pt_config_init.c @@ -32,28 +32,40 @@ static int xen_pt_ptr_reg_init(XenPCIPassthroughState *s, XenPTRegInfo *reg, /* helper */ /* A return value of 1 means the capability should NOT be exposed to guest. */ -static int xen_pt_hide_dev_cap(const XenHostPCIDevice *d, uint8_t grp_id) +static int xen_pt_hide_dev_cap(const XenHostPCIDevice *d, uint32_t grp_id) { - switch (grp_id) { - case PCI_CAP_ID_EXP: - /* The PCI Express Capability Structure of the VF of Intel 82599 10GbE - * Controller looks trivial, e.g., the PCI Express Capabilities - * Register is 0. We should not try to expose it to guest. - * - * The datasheet is available at - * http://download.intel.com/design/network/datashts/82599_datasheet.pdf - * - * See 'Table 9.7. VF PCIe Configuration Space' of the datasheet, the - * PCI Express Capability Structure of the VF of Intel 82599 10GbE - * Controller looks trivial, e.g., the PCI Express Capabilities - * Register is 0, so the Capability Version is 0 and - * xen_pt_pcie_size_init() would fail. - */ - if (d->vendor_id == PCI_VENDOR_ID_INTEL && - d->device_id == PCI_DEVICE_ID_INTEL_82599_SFP_VF) { - return 1; + if (IS_PCIE_EXT_CAP_ID(grp_id)) { + switch (GET_PCIE_EXT_CAP_ID(grp_id)) { + /* Here can be added device-specific filtering + * for PCIe Extended capabilities (those with offset >= 0x100). + * This is simply a placeholder as no filtering needed for now. + */ + default: + break; + } + } else { + /* basic PCI capability */ + switch (grp_id) { + case PCI_CAP_ID_EXP: + /* The PCI Express Capability Structure of the VF of Intel 82599 10GbE + * Controller looks trivial, e.g., the PCI Express Capabilities + * Register is 0. We should not try to expose it to guest. + * + * The datasheet is available at + * http://download.intel.com/design/network/datashts/82599_datasheet.pdf + * + * See 'Table 9.7. VF PCIe Configuration Space' of the datasheet, the + * PCI Express Capability Structure of the VF of Intel 82599 10GbE + * Controller looks trivial, e.g., the PCI Express Capabilities + * Register is 0, so the Capability Version is 0 and + * xen_pt_pcie_size_init() would fail. + */ + if (d->vendor_id == PCI_VENDOR_ID_INTEL && + d->device_id == PCI_DEVICE_ID_INTEL_82599_SFP_VF) { + return 1; + } + break; } - break; } return 0; } @@ -1615,7 +1627,7 @@ static XenPTRegInfo xen_pt_emu_reg_igd_opregion[] = { static int xen_pt_reg_grp_size_init(XenPCIPassthroughState *s, const XenPTRegGroupInfo *grp_reg, - uint32_t base_offset, uint8_t *size) + uint32_t base_offset, uint32_t *size) { *size = grp_reg->grp_size; return 0; @@ -1623,14 +1635,22 @@ static int xen_pt_reg_grp_size_init(XenPCIPassthroughState *s, /* get Vendor Specific Capability Structure register group size */ static int xen_pt_vendor_size_init(XenPCIPassthroughState *s, const XenPTRegGroupInfo *grp_reg, - uint32_t base_offset, uint8_t *size) + uint32_t base_offset, uint32_t *size) +{ + uint8_t sz = 0; + int ret = xen_host_pci_get_byte(&s->real_device, base_offset + 0x02, &sz); + + *size = sz; + return ret; +} + { return xen_host_pci_get_byte(&s->real_device, base_offset + 0x02, size); } /* get PCI Express Capability Structure register group size */ static int xen_pt_pcie_size_init(XenPCIPassthroughState *s, const XenPTRegGroupInfo *grp_reg, - uint32_t base_offset, uint8_t *size) + uint32_t base_offset, uint32_t *size) { PCIDevice *d = PCI_DEVICE(s); uint8_t version = get_pcie_capability_version(s); @@ -1702,7 +1722,7 @@ static int xen_pt_pcie_size_init(XenPCIPassthroughState *s, /* get MSI Capability Structure register group size */ static int xen_pt_msi_size_init(XenPCIPassthroughState *s, const XenPTRegGroupInfo *grp_reg, - uint32_t base_offset, uint8_t *size) + uint32_t base_offset, uint32_t *size) { uint16_t msg_ctrl = 0; uint8_t msi_size = 0xa; @@ -1730,7 +1750,7 @@ static int xen_pt_msi_size_init(XenPCIPassthroughState *s, /* get MSI-X Capability Structure register group size */ static int xen_pt_msix_size_init(XenPCIPassthroughState *s, const XenPTRegGroupInfo *grp_reg, - uint32_t base_offset, uint8_t *size) + uint32_t base_offset, uint32_t *size) { int rc = 0; @@ -1953,6 +1973,26 @@ static uint8_t find_cap_offset(XenPCIPassthroughState *s, uint8_t cap) return 0; } +/************* + * Main + */ + +static uint32_t find_cap_offset(XenPCIPassthroughState *s, uint32_t cap) +{ + uint32_t retval = 0; + + if (IS_PCIE_EXT_CAP_ID(cap)) { + if (s->pcie_enabled_dev) { + retval = xen_host_pci_find_next_ext_cap(&s->real_device, 0, + GET_PCIE_EXT_CAP_ID(cap)); + } + + } else { + retval = xen_host_pci_find_next_cap(&s->real_device, 0, cap); + } + return retval; +} + static void xen_pt_config_reg_init(XenPCIPassthroughState *s, XenPTRegGroup *reg_grp, XenPTRegInfo *reg, Error **errp) -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Tue Jun 20 17:26:21 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 20 Jun 2023 17:26:21 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552075.861977 (Exim 4.92) (envelope-from ) id 1qBf7V-0007Ho-Ir; Tue, 20 Jun 2023 17:26:21 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552075.861977; Tue, 20 Jun 2023 17:26:21 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBf7V-0007HO-DT; Tue, 20 Jun 2023 17:26:21 +0000 Received: by outflank-mailman (input) for mailman id 552075; Tue, 20 Jun 2023 17:26:20 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBf7U-0004q1-Gr for xen-devel@lists.xenproject.org; Tue, 20 Jun 2023 17:26:20 +0000 Received: from mail-ot1-x32d.google.com (mail-ot1-x32d.google.com [2607:f8b0:4864:20::32d]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 90d758ef-0f8f-11ee-8611-37d641c3527e; Tue, 20 Jun 2023 19:26:18 +0200 (CEST) Received: by mail-ot1-x32d.google.com with SMTP id 46e09a7af769-6b5853a140cso1750519a34.2 for ; Tue, 20 Jun 2023 10:26:18 -0700 (PDT) Received: from joel-Precision-7920-Tower.. ([24.53.71.1]) by smtp.gmail.com with ESMTPSA id e65-20020a0dc244000000b0056cffe97a11sm604604ywd.13.2023.06.20.10.26.16 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 20 Jun 2023 10:26:17 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 90d758ef-0f8f-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687281977; x=1689873977; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=6HvrCL8rOJsuiwOG3muIoVRllaEm248y0LD47Kgrft0=; b=nmgU4y9Ln0rtIz80PAR3vTp7t61K68cxtW9WeRAqn7eaE3uMj1tya6GoffQApOwPAD kwbpLr9u2Y90w7sOrUMa+ArGM8Ep49feEFdPQONaGxHoMfoLK1N63oRqHGJpxj4lCw2C eIX4N0M/EYtGsqpl9NfqIMVk+rbdMPaJbFUp8SNYa5mPbJB2q99z+qXsrJQXNFsxMyB1 NP+HYGwDfrCjlZ9JQZC6nHfjzf++zIthNMA0BoriKULZyJhp7bWZlO2SJbBUy/CXTPpV urJ/7Hw4lJxU78QQ1byX2mi/JGovBTW7NtftPygrxBG8yIV8IPUBkt4HtpgLWeu9wQdm 3Oyg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687281977; x=1689873977; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=6HvrCL8rOJsuiwOG3muIoVRllaEm248y0LD47Kgrft0=; b=Oi5FKrVTmpSxxFKlfA40ZibIQfGHAEhD/SuXb1CjYi7LLpiK/491SH47q14BlCsFmR 9wJor+u64ezeY8D+LrPabUuMszeFlrhqyBbugCVWUiZohMRQwwwbkHWLJ2hDjvzrFaY2 eydNvNMrp+F6dUNYFWK0onDmPQbonkpwKUwTHqG6R5Gbty1mv91iCka473rzE2ZJi+ob LkNHFnQ7OA9tvqqNjaHU3rIcpcEx0zZRO+sSymCH6hc7mJKW4xVCI8pgVKBQ56lYTfbm us96r7L9E9gwlIKHY03YJpKSxi4QulUvsRW+3ZSKTJRKnAZ+GT0B7K3eJ501Bvcy497Z Ex2A== X-Gm-Message-State: AC+VfDzoSWnV5T1xyenCqEJ4OCUOlRPj4VCxI379SmfWlYqKEzfAdFIE VLn2o6/h5IRqIGubxqL4WX0= X-Google-Smtp-Source: ACHHUZ6Qt7O71pC+krywoR4rbBwRp9dAu+gyJXT+ubbJS5lT0aUS37r2zV6kUeMl6FXGYYhiuV77iQ== X-Received: by 2002:a05:6358:455:b0:12b:e9fd:4b53 with SMTP id 21-20020a056358045500b0012be9fd4b53mr8661292rwe.22.1687281977366; Tue, 20 Jun 2023 10:26:17 -0700 (PDT) From: Joel Upham To: qemu-devel@nongnu.org Cc: Joel Upham , Stefano Stabellini , Anthony Perard , Paul Durrant , xen-devel@lists.xenproject.org (open list:X86 Xen CPUs) Subject: [PATCH v1 11/23] xen/pt: handle PCIe Extended Capabilities Next register Date: Tue, 20 Jun 2023 13:24:45 -0400 Message-Id: <8687512cd728cd0ad00d9a7d35cd3ce5c3a2c2ca.1687278381.git.jupham125@gmail.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit The patch adds new xen_pt_ext_cap_ptr_reg_init function which is used to initialize the emulated next pcie extended capability pointer. Primary mission of this function is to have a method to selectively hide some extended capabilities from the capability linked list, skipping them by altering the Next capability pointer value. Signed-off-by: Alexey Gerasimenko Signed-off-by: Joel Upham --- hw/xen/xen_pt_config_init.c | 87 +++++++++++++++++++++++-------------- 1 file changed, 55 insertions(+), 32 deletions(-) diff --git a/hw/xen/xen_pt_config_init.c b/hw/xen/xen_pt_config_init.c index 34ed9c25c5..ed36edbc4a 100644 --- a/hw/xen/xen_pt_config_init.c +++ b/hw/xen/xen_pt_config_init.c @@ -27,7 +27,10 @@ static int xen_pt_ptr_reg_init(XenPCIPassthroughState *s, XenPTRegInfo *reg, uint32_t real_offset, uint32_t *data); - +static int xen_pt_ext_cap_ptr_reg_init(XenPCIPassthroughState *s, + XenPTRegInfo *reg, + uint32_t real_offset, + uint32_t *data); /* helper */ @@ -1928,48 +1931,68 @@ out: return 0; } +#define PCIE_EXT_CAP_NEXT_SHIFT 4 +#define PCIE_EXT_CAP_VER_MASK 0xF -/************* - * Main - */ - -static uint8_t find_cap_offset(XenPCIPassthroughState *s, uint8_t cap) +static int xen_pt_ext_cap_ptr_reg_init(XenPCIPassthroughState *s, + XenPTRegInfo *reg, + uint32_t real_offset, + uint32_t *data) { - uint8_t id; - unsigned max_cap = XEN_PCI_CAP_MAX; - uint8_t pos = PCI_CAPABILITY_LIST; - uint8_t status = 0; + int i, rc; + XenHostPCIDevice *d = &s->real_device; + uint16_t reg_field; + uint16_t cur_offset, version, cap_id; + uint32_t header; - if (xen_host_pci_get_byte(&s->real_device, PCI_STATUS, &status)) { - return 0; - } - if ((status & PCI_STATUS_CAP_LIST) == 0) { - return 0; + if (real_offset < 0x0010) { + XEN_PT_ERR(&s->dev, "Incorrect PCIe extended capability offset " + "encountered: 0x%04x\n", real_offset); + return -EINVAL; } - while (max_cap--) { - if (xen_host_pci_get_byte(&s->real_device, pos, &pos)) { - break; - } - if (pos < PCI_CONFIG_HEADER_SIZE) { - break; - } + rc = xen_host_pci_get_word(d, real_offset, ®_field); + if (rc) + return rc; - pos &= ~3; - if (xen_host_pci_get_byte(&s->real_device, - pos + PCI_CAP_LIST_ID, &id)) { - break; - } + /* preserve version field */ + version = reg_field & PCIE_EXT_CAP_VER_MASK; + cur_offset = reg_field >> PCIE_EXT_CAP_NEXT_SHIFT; - if (id == 0xff) { - break; + while (cur_offset && cur_offset != 0xFFF) { + rc = xen_host_pci_get_long(d, cur_offset, &header); + if (rc) { + XEN_PT_ERR(&s->dev, "Failed to read PCIe extended capability " + "@0x%x (rc:%d)\n", cur_offset, rc); + return rc; } - if (id == cap) { - return pos; + + cap_id = PCI_EXT_CAP_ID(header); + + for (i = 0; xen_pt_emu_reg_grps[i].grp_size != 0; i++) { + uint32_t cur_grp_id = xen_pt_emu_reg_grps[i].grp_id; + + if (!IS_PCIE_EXT_CAP_ID(cur_grp_id)) + continue; + + if (xen_pt_hide_dev_cap(d, cur_grp_id)) + continue; + + if (GET_PCIE_EXT_CAP_ID(cur_grp_id) == cap_id) { + if (xen_pt_emu_reg_grps[i].grp_type == XEN_PT_GRP_TYPE_EMU) + goto out; + + /* skip TYPE_HARDWIRED capability, move the ptr to next one */ + break; + } } - pos += PCI_CAP_LIST_NEXT; + /* next capability */ + cur_offset = PCI_EXT_CAP_NEXT(header); } + +out: + *data = (cur_offset << PCIE_EXT_CAP_NEXT_SHIFT) | version; return 0; } -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Tue Jun 20 17:26:23 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 20 Jun 2023 17:26:23 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552076.861986 (Exim 4.92) (envelope-from ) id 1qBf7W-0007ag-SE; Tue, 20 Jun 2023 17:26:22 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552076.861986; Tue, 20 Jun 2023 17:26:22 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBf7W-0007Zz-O3; Tue, 20 Jun 2023 17:26:22 +0000 Received: by outflank-mailman (input) for mailman id 552076; Tue, 20 Jun 2023 17:26:21 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBf7V-0005Q4-C5 for xen-devel@lists.xenproject.org; Tue, 20 Jun 2023 17:26:21 +0000 Received: from mail-yw1-x112a.google.com (mail-yw1-x112a.google.com [2607:f8b0:4864:20::112a]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 91e49442-0f8f-11ee-b234-6b7b168915f2; Tue, 20 Jun 2023 19:26:20 +0200 (CEST) Received: by mail-yw1-x112a.google.com with SMTP id 00721157ae682-5700401acbeso54070667b3.0 for ; Tue, 20 Jun 2023 10:26:20 -0700 (PDT) Received: from joel-Precision-7920-Tower.. ([24.53.71.1]) by smtp.gmail.com with ESMTPSA id e65-20020a0dc244000000b0056cffe97a11sm604604ywd.13.2023.06.20.10.26.18 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 20 Jun 2023 10:26:18 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 91e49442-0f8f-11ee-b234-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687281979; x=1689873979; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=9ketisDiBHbRbLfAtb4owX6CirSCgZ560hstWukEHPU=; b=JV7mVW9o+DEfW49UhY6Ry0LlDSYnubxQvhH/85RSPJPv5iznjafVvKwT0WTw80NIHH ZzVJZ4uxnp6Hy9ouHIKN/+dUXz8k7PgDunBleGVEfPS4AGMqIIn0cN0bzuYyHyjXJt9S c4qjaIg4M+xIfnZlwwTV4j2h2oPsNsgCab9w5IYYB7RNikhwoAkZ7HPMhFE+Y/J6GhHn vL5uSRHMD7mxu/Qe0WvnyIcUII9xycI5IylaW7/BSTgK9RIqaXATKHTUBh9mjIBw2MUY jqGFkFdOXhXlpkyJu+qAZTjJsClrW1bOrRSiDbVFLiEPjs4JJdZo6525f4dH3VxIWXDR yNSA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687281979; x=1689873979; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=9ketisDiBHbRbLfAtb4owX6CirSCgZ560hstWukEHPU=; b=BoOvfSqPVu6KDIrMOKYsQYtZL4zf5Lu+PCJ03BKA5SiiXGqGDEcK7z4lOk7FNCh7i6 c1JPwYdScUexfvxfI+ooB+86dEN6zAoGyemXlBjCCThPe5aH5FZ8pJBqZgLG/YDhjWnP ax4mXA/xYJsEbmCPDvN3XbOj3TLGv/nk5LSuxz8rVERJOb2h93fIqwwOkn/O15ERf/fl laNiWDs2pAWHyMUT9f5veAVlbo9lQvnciZDzDw+SCa/TX1R//tH9q9wjlteP18JVXkFW JuIk3NUahpbNPApB8kT6O2vwhKqNQsMP5uv5AswdoTsanYW/mm/5FxSBo9rfI+wiraYa r8kQ== X-Gm-Message-State: AC+VfDx1ySQZOAEbUp1reIjHOX1r5qJ28VdmsIf8I1/rwLzf6cT4FVTD GM0tztKXNFHkBsmggXYuS5Y= X-Google-Smtp-Source: ACHHUZ7Sy8MslonVrUjxUdWKSpd6ukF5+zxv5os2k+6NK3tmmIpKUWxcbVfweJ393p1b0WLmoKTnJw== X-Received: by 2002:a0d:e447:0:b0:565:99c0:a690 with SMTP id n68-20020a0de447000000b0056599c0a690mr12747083ywe.36.1687281979267; Tue, 20 Jun 2023 10:26:19 -0700 (PDT) From: Joel Upham To: qemu-devel@nongnu.org Cc: Joel Upham , Stefano Stabellini , Anthony Perard , Paul Durrant , xen-devel@lists.xenproject.org (open list:X86 Xen CPUs) Subject: [PATCH v1 12/23] xen/pt: allow to hide PCIe Extended Capabilities Date: Tue, 20 Jun 2023 13:24:46 -0400 Message-Id: X-Mailer: git-send-email 2.34.1 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit We need to hide some unwanted PCI/PCIe capabilities for passed through devices. Normally we do this by marking the capability register group as XEN_PT_GRP_TYPE_HARDWIRED which exclude this capability from the capability list and returns zeroes on attempts to read capability body. Skipping the capability in the linked list of capabilities can be done by changing Next Capability register to skip one or many unwanted capabilities. One difference between PCI and PCIe Extended capabilities is that we don't have the list head field anymore. PCIe Extended capabilities always start at offset 0x100 if they're present. Unfortunately, there are typically only few PCIe extended capabilities present which means there is a chance that some capability we want to hide will reside at offset 0x100 in PCIe config space. The simplest way to hide such capabilities from guest OS or drivers is faking their capability ID value. This patch adds the Capability ID register handler which checks - if the capability to which this register belong starts at offset 0x100 in PCIe config space - if this capability is marked as XEN_PT_GRP_TYPE_HARDWIRED If it is the case, then a fake Capability ID value is returned. Signed-off-by: Alexey Gerasimenko Signed-off-by: Joel Upham --- hw/xen/xen_pt.c | 11 ++++++++++- hw/xen/xen_pt.h | 4 ++++ 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/hw/xen/xen_pt.c b/hw/xen/xen_pt.c index f757978800..2399fabb2b 100644 --- a/hw/xen/xen_pt.c +++ b/hw/xen/xen_pt.c @@ -164,7 +164,16 @@ static uint32_t xen_pt_pci_read_config(PCIDevice *d, uint32_t addr, int len) reg_grp_entry = xen_pt_find_reg_grp(s, addr); if (reg_grp_entry) { /* check 0-Hardwired register group */ - if (reg_grp_entry->reg_grp->grp_type == XEN_PT_GRP_TYPE_HARDWIRED) { + if (reg_grp_entry->reg_grp->grp_type == XEN_PT_GRP_TYPE_HARDWIRED && + /* + * For PCIe Extended Capabilities we need to emulate + * CapabilityID and NextCapability/Version registers for a + * hardwired reg group located at the offset 0x100 in PCIe + * config space. This allows us to hide the first extended + * capability as well. + */ + !(reg_grp_entry->base_offset == PCI_CONFIG_SPACE_SIZE && + ranges_overlap(addr, len, 0x100, 4))) { /* no need to emulate, just return 0 */ val = 0; goto exit; diff --git a/hw/xen/xen_pt.h b/hw/xen/xen_pt.h index eb062be3f4..9a191cbc8f 100644 --- a/hw/xen/xen_pt.h +++ b/hw/xen/xen_pt.h @@ -93,6 +93,10 @@ typedef int (*xen_pt_conf_byte_read) #define XEN_PCI_INTEL_OPREGION 0xfc +#define XEN_PCIE_CAP_ID 0 +#define XEN_PCIE_CAP_LIST_NEXT 2 +#define XEN_PCIE_FAKE_CAP_ID_BASE 0xFE00 + #define XEN_PCI_IGD_DOMAIN 0 #define XEN_PCI_IGD_BUS 0 #define XEN_PCI_IGD_DEV 2 -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Tue Jun 20 17:26:27 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 20 Jun 2023 17:26:27 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552079.861997 (Exim 4.92) (envelope-from ) id 1qBf7b-00088y-7I; Tue, 20 Jun 2023 17:26:27 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552079.861997; Tue, 20 Jun 2023 17:26:27 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBf7b-00088i-2h; Tue, 20 Jun 2023 17:26:27 +0000 Received: by outflank-mailman (input) for mailman id 552079; Tue, 20 Jun 2023 17:26:25 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBf7Z-0005Q4-G5 for xen-devel@lists.xenproject.org; Tue, 20 Jun 2023 17:26:25 +0000 Received: from mail-yw1-x1136.google.com (mail-yw1-x1136.google.com [2607:f8b0:4864:20::1136]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 947a6d3e-0f8f-11ee-b234-6b7b168915f2; Tue, 20 Jun 2023 19:26:24 +0200 (CEST) Received: by mail-yw1-x1136.google.com with SMTP id 00721157ae682-5728df0a7d9so39840357b3.1 for ; Tue, 20 Jun 2023 10:26:24 -0700 (PDT) Received: from joel-Precision-7920-Tower.. ([24.53.71.1]) by smtp.gmail.com with ESMTPSA id e65-20020a0dc244000000b0056cffe97a11sm604604ywd.13.2023.06.20.10.26.22 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 20 Jun 2023 10:26:23 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 947a6d3e-0f8f-11ee-b234-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687281983; x=1689873983; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=aUH0LrDNCluOY2g7IZF9uazabmu57c7aIkRqhWuUoW4=; b=iwRwRTaFQJfYCfdFgHs5hBrVVJyyLJCQKXLzDjc2uw1+9/aIo5cnUv+/xiPHbxjuh2 XFwA15wc+YNcwlq8WwcGhVyB1lz9VsRgzw4+XvIpPjE8ExRcuEvjNOBNE0RQ57VEEDNJ 64EPpQNaQEYzxkQ3c/wV95dN8zfhpngMP2nU9OZ/liVkq+4MPfn3nPH+QPU4ginQEKvn U8V7lDKGEZ9gP08J4zgUGhm2JE9iozhSVNTDMielRBCFN0rxFigIZOc94CQIhyYeuQPR hxGZm6uHroeQ+mGmjc3xBa9l0n2oo9PXJfgI65Ux8poxJl/JDEtJvcHnMCpECNXdCZx2 LiXA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687281983; x=1689873983; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=aUH0LrDNCluOY2g7IZF9uazabmu57c7aIkRqhWuUoW4=; b=Pz6i8/RVg5DWZMZ4Phw45JRcjHkY74lq+SWcK4tOKSd4ozeYDuMda6AcDw+uptmlVF o+cR9hjN3vVEVDbNjKWVSdYkhxtziOTXHuljWpl9ss01HhRdXWfsBv8MItBvYeDpXg9+ 8bvKuveMEIAkA4LAePzI0GKOmwxDJvWBnKFRswJZtfab2RMLtnG8ARflGOF6nmxIPQH1 jIMlbc1Z8FlXfMraWN6Oxps8BW3U/FbFxUr+4sO3CwlsCGOPTIV5pvJW54P7EiCNFyAi LhsCeFMDSOgdIyDcv024eSgluuMUVnzJq4No+iiuPZSOx0HZwgsHsiAQWe4DqnWZgxfg odYQ== X-Gm-Message-State: AC+VfDz/kHTzUOEL8X6mVf1/jXWpbbskZGAoCkOVyJNZCjrsETqDFlo9 xr7GhYoSWMz1Wf04F0DqfRs= X-Google-Smtp-Source: ACHHUZ7H14tCE3HKsTlD/gtaiOjoMH3zAfVEsd3ThHpqpefM/jk8OkdgqNWhx9f/7UfbiTzox58o8A== X-Received: by 2002:a81:5215:0:b0:56c:e2c1:6695 with SMTP id g21-20020a815215000000b0056ce2c16695mr12352572ywb.50.1687281983595; Tue, 20 Jun 2023 10:26:23 -0700 (PDT) From: Joel Upham To: qemu-devel@nongnu.org Cc: Joel Upham , Stefano Stabellini , Anthony Perard , Paul Durrant , xen-devel@lists.xenproject.org (open list:X86 Xen CPUs) Subject: [PATCH v1 14/23] xen/pt: add fixed-size PCIe Extended Capabilities descriptors Date: Tue, 20 Jun 2023 13:24:48 -0400 Message-Id: X-Mailer: git-send-email 2.34.1 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit This adds description structures for all fixed-size PCIe Extended Capabilities. For every capability register group, only 2 registers are emulated currently: Capability ID (16 bit) and Next Capability Offset/Version (16 bit). Both needed to implement selective capability hiding. All other registers are passed through at the moment (unless they belong to a "hardwired" capability which is hidden) Signed-off-by: Alexey Gerasimenko Signed-off-by: Joel Upham --- hw/xen/xen_pt_config_init.c | 183 ++++++++++++++++++++++++++++++++++++ 1 file changed, 183 insertions(+) diff --git a/hw/xen/xen_pt_config_init.c b/hw/xen/xen_pt_config_init.c index 20b5561d25..69d8857c66 100644 --- a/hw/xen/xen_pt_config_init.c +++ b/hw/xen/xen_pt_config_init.c @@ -1669,6 +1669,37 @@ static XenPTRegInfo xen_pt_ext_cap_emu_reg_vendor[] = { .size = 0, }, }; + +/* Common reg static information table for all passthru-type + * PCIe Extended Capabilities. Only Extended Cap ID and + * Next pointer are handled (to support capability hiding). + */ +static XenPTRegInfo xen_pt_ext_cap_emu_reg_dummy[] = { + { + .offset = XEN_PCIE_CAP_ID, + .size = 2, + .init_val = 0x0000, + .ro_mask = 0xFFFF, + .emu_mask = 0xFFFF, + .init = xen_pt_ext_cap_capid_reg_init, + .u.w.read = xen_pt_word_reg_read, + .u.w.write = xen_pt_word_reg_write, + }, + { + .offset = XEN_PCIE_CAP_LIST_NEXT, + .size = 2, + .init_val = 0x0000, + .ro_mask = 0xFFFF, + .emu_mask = 0xFFFF, + .init = xen_pt_ext_cap_ptr_reg_init, + .u.w.read = xen_pt_word_reg_read, + .u.w.write = xen_pt_word_reg_write, + }, + { + .size = 0, + }, +}; + /**************************** * Capabilities */ @@ -1945,6 +1976,158 @@ static const XenPTRegGroupInfo xen_pt_emu_reg_grps[] = { .size_init = xen_pt_ext_cap_vendor_size_init, .emu_regs = xen_pt_ext_cap_emu_reg_vendor, }, + /* Device Serial Number Extended Capability reg group */ + { + .grp_id = PCIE_EXT_CAP_ID(PCI_EXT_CAP_ID_DSN), + .grp_type = XEN_PT_GRP_TYPE_EMU, + .grp_size = PCI_EXT_CAP_DSN_SIZEOF, /*0x0C*/ + .size_init = xen_pt_reg_grp_size_init, + .emu_regs = xen_pt_ext_cap_emu_reg_dummy, + }, + /* Power Budgeting Extended Capability reg group */ + { + .grp_id = PCIE_EXT_CAP_ID(PCI_EXT_CAP_ID_PWR), + .grp_type = XEN_PT_GRP_TYPE_EMU, + .grp_size = PCI_EXT_CAP_PWR_SIZEOF, /*0x10*/ + .size_init = xen_pt_reg_grp_size_init, + .emu_regs = xen_pt_ext_cap_emu_reg_dummy, + }, + /* Root Complex Internal Link Control Extended Capability reg group */ + { + .grp_id = PCIE_EXT_CAP_ID(PCI_EXT_CAP_ID_RCILC), + .grp_type = XEN_PT_GRP_TYPE_EMU, + .grp_size = 0x0C, + .size_init = xen_pt_reg_grp_size_init, + .emu_regs = xen_pt_ext_cap_emu_reg_dummy, + }, + /* Root Complex Event Collector Extended Capability reg group */ + { + .grp_id = PCIE_EXT_CAP_ID(PCI_EXT_CAP_ID_RCEC), + .grp_type = XEN_PT_GRP_TYPE_EMU, + .grp_size = 0x08, + .size_init = xen_pt_reg_grp_size_init, + .emu_regs = xen_pt_ext_cap_emu_reg_dummy, + }, + /* Root Complex Register Block Extended Capability reg group */ + { + .grp_id = PCIE_EXT_CAP_ID(PCI_EXT_CAP_ID_RCRB), + .grp_type = XEN_PT_GRP_TYPE_EMU, + .grp_size = 0x14, + .size_init = xen_pt_reg_grp_size_init, + .emu_regs = xen_pt_ext_cap_emu_reg_dummy, + }, + /* Configuration Access Correlation Extended Capability reg group */ + { + .grp_id = PCIE_EXT_CAP_ID(PCI_EXT_CAP_ID_CAC), + .grp_type = XEN_PT_GRP_TYPE_EMU, + .grp_size = 0x08, + .size_init = xen_pt_reg_grp_size_init, + .emu_regs = xen_pt_ext_cap_emu_reg_dummy, + }, + /* Alternate Routing ID Extended Capability reg group */ + { + .grp_id = PCIE_EXT_CAP_ID(PCI_EXT_CAP_ID_ARI), + .grp_type = XEN_PT_GRP_TYPE_EMU, + .grp_size = PCI_EXT_CAP_ARI_SIZEOF, + .size_init = xen_pt_reg_grp_size_init, + .emu_regs = xen_pt_ext_cap_emu_reg_dummy, + }, + /* Address Translation Services Extended Capability reg group */ + { + .grp_id = PCIE_EXT_CAP_ID(PCI_EXT_CAP_ID_ATS), + .grp_type = XEN_PT_GRP_TYPE_EMU, + .grp_size = PCI_EXT_CAP_ATS_SIZEOF, + .size_init = xen_pt_reg_grp_size_init, + .emu_regs = xen_pt_ext_cap_emu_reg_dummy, + }, + /* Single Root I/O Virtualization Extended Capability reg group */ + { + .grp_id = PCIE_EXT_CAP_ID(PCI_EXT_CAP_ID_SRIOV), + .grp_type = XEN_PT_GRP_TYPE_EMU, + .grp_size = PCI_EXT_CAP_SRIOV_SIZEOF, + .size_init = xen_pt_reg_grp_size_init, + .emu_regs = xen_pt_ext_cap_emu_reg_dummy, + }, + /* Page Request Interface Extended Capability reg group */ + { + .grp_id = PCIE_EXT_CAP_ID(PCI_EXT_CAP_ID_PRI), + .grp_type = XEN_PT_GRP_TYPE_EMU, + .grp_size = PCI_EXT_CAP_PRI_SIZEOF, + .size_init = xen_pt_reg_grp_size_init, + .emu_regs = xen_pt_ext_cap_emu_reg_dummy, + }, + /* Latency Tolerance Reporting Extended Capability reg group */ + { + .grp_id = PCIE_EXT_CAP_ID(PCI_EXT_CAP_ID_LTR), + .grp_type = XEN_PT_GRP_TYPE_EMU, + .grp_size = PCI_EXT_CAP_LTR_SIZEOF, + .size_init = xen_pt_reg_grp_size_init, + .emu_regs = xen_pt_ext_cap_emu_reg_dummy, + }, + /* Secondary PCIe Capability Extended Capability reg group */ + { + .grp_id = PCIE_EXT_CAP_ID(PCI_EXT_CAP_ID_SECPCI), + .grp_type = XEN_PT_GRP_TYPE_EMU, + .grp_size = 0x10, + .size_init = xen_pt_reg_grp_size_init, + .emu_regs = xen_pt_ext_cap_emu_reg_dummy, + }, + /* Process Address Space ID Extended Capability reg group */ + { + .grp_id = PCIE_EXT_CAP_ID(PCI_EXT_CAP_ID_PASID), + .grp_type = XEN_PT_GRP_TYPE_EMU, + .grp_size = PCI_EXT_CAP_PASID_SIZEOF, + .size_init = xen_pt_reg_grp_size_init, + .emu_regs = xen_pt_ext_cap_emu_reg_dummy, + }, + /* L1 PM Substates Extended Capability reg group */ + { + .grp_id = PCIE_EXT_CAP_ID(PCI_EXT_CAP_ID_L1SS), + .grp_type = XEN_PT_GRP_TYPE_EMU, + .grp_size = 0x10, + .size_init = xen_pt_reg_grp_size_init, + .emu_regs = xen_pt_ext_cap_emu_reg_dummy, + }, + /* Precision Time Measurement Extended Capability reg group */ + { + .grp_id = PCIE_EXT_CAP_ID(PCI_EXT_CAP_ID_PTM), + .grp_type = XEN_PT_GRP_TYPE_EMU, + .grp_size = 0x0C, + .size_init = xen_pt_reg_grp_size_init, + .emu_regs = xen_pt_ext_cap_emu_reg_dummy, + }, + /* M-PCIe Extended Capability reg group */ + { + .grp_id = PCIE_EXT_CAP_ID(0x20), + .grp_type = XEN_PT_GRP_TYPE_EMU, + .grp_size = 0x1C, + .size_init = xen_pt_reg_grp_size_init, + .emu_regs = xen_pt_ext_cap_emu_reg_dummy, + }, + /* LN Requester (LNR) Extended Capability reg group */ + { + .grp_id = PCIE_EXT_CAP_ID(0x1C), + .grp_type = XEN_PT_GRP_TYPE_EMU, + .grp_size = 0x08, + .size_init = xen_pt_reg_grp_size_init, + .emu_regs = xen_pt_ext_cap_emu_reg_dummy, + }, + /* Function Readiness Status (FRS) Extended Capability reg group */ + { + .grp_id = PCIE_EXT_CAP_ID(0x21), + .grp_type = XEN_PT_GRP_TYPE_EMU, + .grp_size = 0x10, + .size_init = xen_pt_reg_grp_size_init, + .emu_regs = xen_pt_ext_cap_emu_reg_dummy, + }, + /* Readiness Time Extended Capability reg group */ + { + .grp_id = PCIE_EXT_CAP_ID(0x22), + .grp_type = XEN_PT_GRP_TYPE_EMU, + .grp_size = 0x0C, + .size_init = xen_pt_reg_grp_size_init, + .emu_regs = xen_pt_ext_cap_emu_reg_dummy, + }, { .grp_size = 0, }, -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Tue Jun 20 17:29:25 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 20 Jun 2023 17:29:25 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552103.862013 (Exim 4.92) (envelope-from ) id 1qBfAT-0002Gu-6p; Tue, 20 Jun 2023 17:29:25 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552103.862013; Tue, 20 Jun 2023 17:29:25 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBfAT-0002Fu-1N; Tue, 20 Jun 2023 17:29:25 +0000 Received: by outflank-mailman (input) for mailman id 552103; Tue, 20 Jun 2023 17:29:24 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBf7k-0004q1-9f for xen-devel@lists.xenproject.org; Tue, 20 Jun 2023 17:26:36 +0000 Received: from mail-vk1-xa36.google.com (mail-vk1-xa36.google.com [2607:f8b0:4864:20::a36]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 9a4881d5-0f8f-11ee-8611-37d641c3527e; Tue, 20 Jun 2023 19:26:34 +0200 (CEST) Received: by mail-vk1-xa36.google.com with SMTP id 71dfb90a1353d-4715758343aso1420761e0c.1 for ; Tue, 20 Jun 2023 10:26:34 -0700 (PDT) Received: from joel-Precision-7920-Tower.. ([24.53.71.1]) by smtp.gmail.com with ESMTPSA id e65-20020a0dc244000000b0056cffe97a11sm604604ywd.13.2023.06.20.10.26.32 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 20 Jun 2023 10:26:32 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 9a4881d5-0f8f-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687281993; x=1689873993; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=OHujXKoC6+pvKbdfEDtYmXpzoxjEyy+YGxjQhJLOU0Y=; b=GM+CG3fWRPKOG4chiQRmboIRPep8REP/M8D+0GeYUmtTHRWf/d2klrmsavq5Cp+SFY mXAFc+c517Cql+9sL95wm3ozozHbV5djHykxm4q5KD0NDvXGtC1ci5gDMQklVHI43Hgx t+oy7zCw3J2vA2BJ3qzL6GWWzcGm2cLxOLwt/v1wZy1LBC7ya0d8jYzgjvAluAc/XA02 apVxuVVCddQCVq++rywBUAd7/un/VWrrvZUlvF7NqPObTXgXUSwO+3yOHWRyjSzYNT7Q 7TdzzijFwWvqNgZMM2RnbbVcIe3wCN87Fx5KMzW6GW2mXeAIuTNl0fB/g5pBSAYVpVj1 /TBg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687281993; x=1689873993; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=OHujXKoC6+pvKbdfEDtYmXpzoxjEyy+YGxjQhJLOU0Y=; b=QcStLAMYwZnx7kmRBXauEH2NtL2pSbqN86nZTCM3OdH/UIpxPZEe2MikbvxGGWOEfo SUHByn6FzEea+jRZ4tlug6+cDW5h5MCnXoL7Sz2zTxB3pDHxhRbXdtWVeGmR84TKwS2M ycFK8SU0pQBHbWGDJo6smXZ4kgrpXCFaP8pvO87W1YQqivMD1QkFMYmzABsJMzcoZq5c wPN/1X5Y6WCOlxdE0dngAOixUxEDtBbaehrxfwYxlUvqhL9/9W7XOtu6eoLxSDQaLz5W 7CardVHvWz9CdWYl9d2J8/1EQRwu3s6GwcvgQ01PMTTMYqhsOMgCeRX+p/KtHbtelILb bzMQ== X-Gm-Message-State: AC+VfDyRfPvbvhleWetcjyqsCQk8jn5zFlnsGMs4KbjgiecUxTZ8Xyqh l//aE0A1k6Lb4D7zGygNxdE= X-Google-Smtp-Source: ACHHUZ5QiJc1oXfSp4p9cZik4NYdz6sPHMrvS71pbTKO/RMTg1uRBBt5TM62D7CH5DnCPiKqY10dDg== X-Received: by 2002:a1f:5c93:0:b0:464:7682:3506 with SMTP id q141-20020a1f5c93000000b0046476823506mr4435739vkb.12.1687281993305; Tue, 20 Jun 2023 10:26:33 -0700 (PDT) From: Joel Upham To: qemu-devel@nongnu.org Cc: Joel Upham , Stefano Stabellini , Anthony Perard , Paul Durrant , xen-devel@lists.xenproject.org (open list:X86 Xen CPUs) Subject: [PATCH v1 19/23] xen/pt: Fake capability id Date: Tue, 20 Jun 2023 13:24:53 -0400 Message-Id: <65b91216c1337b560548f39978d41c988b498517.1687278381.git.jupham125@gmail.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Some PCIe capabilities needed to be faked for the xen implementation to work. This is the situation when we were asked to hide (aka "hardwire to 0") some PCIe ext capability, but it was located at offset 0x100 in PCIe config space. In this case we can't simply exclude it from the linked list of capabilities (as it is the first entry in the list), so we must fake its Capability ID in PCIe Extended Capability header, leaving the Next Ptr field intact while returning zeroes on attempts to read capability body (writes are ignored). Signed-off-by: Alexey Gerasimenko Signed-off-by: Joel Upham --- hw/xen/xen_pt_config_init.c | 72 ++++++++++++++++++++++++++++++++++++- 1 file changed, 71 insertions(+), 1 deletion(-) diff --git a/hw/xen/xen_pt_config_init.c b/hw/xen/xen_pt_config_init.c index 4e14adf2b2..41b43b9445 100644 --- a/hw/xen/xen_pt_config_init.c +++ b/hw/xen/xen_pt_config_init.c @@ -16,6 +16,7 @@ #include "qapi/error.h" #include "qemu/timer.h" #include "xen_pt.h" +#include "xen-host-pci-device.h" #include "hw/xen/xen-legacy-backend.h" #define XEN_PT_MERGE_VALUE(value, data, val_mask) \ @@ -31,6 +32,10 @@ static int xen_pt_ext_cap_ptr_reg_init(XenPCIPassthroughState *s, XenPTRegInfo *reg, uint32_t real_offset, uint32_t *data); +static int xen_pt_ext_cap_capid_reg_init(XenPCIPassthroughState *s, + XenPTRegInfo *reg, + uint32_t real_offset, + uint32_t *data); /* helper */ @@ -995,6 +1000,17 @@ static XenPTRegInfo xen_pt_emu_reg_pcie[] = { .u.b.read = xen_pt_byte_reg_read, .u.b.write = xen_pt_byte_reg_write, }, + /* PCI Express Capabilities Register */ + { + .offset = PCI_EXP_FLAGS, + .size = 2, + .init_val = 0x0000, + .ro_mask = 0xFFFF, + .emu_mask = 0xFFFF, + .init = xen_pt_pcie_capabilities_reg_init, + .u.w.read = xen_pt_word_reg_read, + .u.w.write = xen_pt_word_reg_write, + }, /* Device Capabilities reg */ { .offset = PCI_EXP_DEVCAP, @@ -1633,6 +1649,54 @@ static XenPTRegInfo xen_pt_emu_reg_igd_opregion[] = { }, }; +/**************************** + * Emulated registers for + * PCIe Extended Capabilities + */ + +static uint16_t fake_cap_id = XEN_PCIE_FAKE_CAP_ID_BASE; + +/* PCIe Extended Capability ID reg */ +static int xen_pt_ext_cap_capid_reg_init(XenPCIPassthroughState *s, + XenPTRegInfo *reg, + uint32_t real_offset, + uint32_t *data) +{ + uint16_t reg_field; + int rc; + XenPTRegGroup *reg_grp_entry = NULL; + + /* use real device register's value as initial value */ + rc = xen_host_pci_get_word(&s->real_device, real_offset, ®_field); + if (rc) { + return rc; + } + + reg_grp_entry = xen_pt_find_reg_grp(s, real_offset); + + if (reg_grp_entry) { + if (reg_grp_entry->reg_grp->grp_type == XEN_PT_GRP_TYPE_HARDWIRED && + reg_grp_entry->base_offset == PCI_CONFIG_SPACE_SIZE) { + /* + * This is the situation when we were asked to hide (aka + * "hardwire to 0") some PCIe ext capability, but it was located + * at offset 0x100 in PCIe config space. In this case we can't + * simply exclude it from the linked list of capabilities + * (as it is the first entry in the list), so we must fake its + * Capability ID in PCIe Extended Capability header, leaving + * the Next Ptr field intact while returning zeroes on attempts + * to read capability body (writes are ignored). + */ + reg_field = fake_cap_id; + /* increment the value in order to have unique Capability IDs */ + fake_cap_id++; + } + } + + *data = reg_field; + return 0; +} + /* Vendor-specific Ext Capability Structure reg static information table */ static XenPTRegInfo xen_pt_ext_cap_emu_reg_vendor[] = { { @@ -2938,7 +3002,13 @@ void xen_pt_config_init(XenPCIPassthroughState *s, Error **errp) } } - if (xen_pt_emu_reg_grps[i].grp_type == XEN_PT_GRP_TYPE_EMU) { + if (xen_pt_emu_reg_grps[i].grp_type == XEN_PT_GRP_TYPE_EMU || + /* + * We need to always emulate the PCIe Extended Capability + * header for a hidden capability which starts at offset 0x100 + */ + (xen_pt_emu_reg_grps[i].grp_type == XEN_PT_GRP_TYPE_HARDWIRED && + reg_grp_offset == 0x100)) { if (xen_pt_emu_reg_grps[i].emu_regs) { int j = 0; XenPTRegInfo *regs = xen_pt_emu_reg_grps[i].emu_regs; -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Tue Jun 20 17:29:26 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 20 Jun 2023 17:29:26 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552101.862006 (Exim 4.92) (envelope-from ) id 1qBfAS-0002DX-Sv; Tue, 20 Jun 2023 17:29:24 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552101.862006; Tue, 20 Jun 2023 17:29:24 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBfAS-0002DQ-QM; Tue, 20 Jun 2023 17:29:24 +0000 Received: by outflank-mailman (input) for mailman id 552101; Tue, 20 Jun 2023 17:29:24 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBf7Y-0004q1-MX for xen-devel@lists.xenproject.org; Tue, 20 Jun 2023 17:26:24 +0000 Received: from mail-ot1-x32b.google.com (mail-ot1-x32b.google.com [2607:f8b0:4864:20::32b]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 9329ca32-0f8f-11ee-8611-37d641c3527e; Tue, 20 Jun 2023 19:26:22 +0200 (CEST) Received: by mail-ot1-x32b.google.com with SMTP id 46e09a7af769-6b57d9043e4so1892872a34.2 for ; Tue, 20 Jun 2023 10:26:22 -0700 (PDT) Received: from joel-Precision-7920-Tower.. ([24.53.71.1]) by smtp.gmail.com with ESMTPSA id e65-20020a0dc244000000b0056cffe97a11sm604604ywd.13.2023.06.20.10.26.20 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 20 Jun 2023 10:26:20 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 9329ca32-0f8f-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687281981; x=1689873981; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=K61wLAMvxduhXajLJmXKkCD2KgQmA24lyEh8ZOauW3g=; b=IX6OWGyMDuquswGxYoFJvDL0Ts6f749+YDHQGq/VK7v6MzucLGn3mJLNRgyBXD73nh I/uap9v+a/tpM5eiSkd2OkS0iQARyHW6tg8ULcTLPED98ouQUyuWH2UQR8ZlORK0Cr6B BDgLegkcEOk635hmIGl+Bwtfz5e1hT96JE/JDmGP0Bqw0e7cIkLr/RU266DuT5tbGceb zRUNYzhZb93MyWsSOjfGJeeGl5aBmP4hUNJ3PbRSOE6eRw3nAOQED29dYWIme6OHtNXm 5ulmEwaOXRsnulp5JjUk1Y9/q/G60rjQqvx5duoVQR4CjtOtUdcENi3WHS3YKVj8zhvS WFwg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687281981; x=1689873981; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=K61wLAMvxduhXajLJmXKkCD2KgQmA24lyEh8ZOauW3g=; b=djD44MFWJm0v3nw6RQEDi/69ILS2qwgrWYKx6HZRor/NOJHXsut8FtzKC4xP1Dldv4 cBqk4kHLZZuxhh8BJKN9mQx77OS5KD2gZ5cAKSXocXYyNsq+rmgxetLxAbYOICshjATd VYT6MntJQILChifhpusoF9Z1mACNLltcrH2yIuOQh3R4UUWWbEulZFihuFzIvWbQJAJz IAyqOz4JyPJkni9h1pTIl9WrlCM6adGfsH2IogsSUwxjmCvCs6+i/PNOJ7xQotnOAKmV iLfQP0f8HluwbV30cXvRD8eRGZVJMMM0GvpjrHJJMpJnuwrgLqkSJGVtnh8XFnn7XCTo wqiQ== X-Gm-Message-State: AC+VfDyudPLOCvEykoZ3moXIQSeG+S/r7CXY1p+FdN3W5gOkru4qlfcd FLLHsC6ZHW89fveF+jNS4oo= X-Google-Smtp-Source: ACHHUZ5spqw7iFHqYn8GRj32Nl0UI37k62ovrhkdOFMHxlCYXYMjF7pxPN/co2hG4xEewZ4G5pFXTg== X-Received: by 2002:a05:6358:1a84:b0:130:e675:3e8c with SMTP id gm4-20020a0563581a8400b00130e6753e8cmr4571923rwb.28.1687281981240; Tue, 20 Jun 2023 10:26:21 -0700 (PDT) From: Joel Upham To: qemu-devel@nongnu.org Cc: Joel Upham , Stefano Stabellini , Anthony Perard , Paul Durrant , xen-devel@lists.xenproject.org (open list:X86 Xen CPUs) Subject: [PATCH v1 13/23] xen/pt: add Vendor-specific PCIe Extended Capability descriptor and sizing Date: Tue, 20 Jun 2023 13:24:47 -0400 Message-Id: X-Mailer: git-send-email 2.34.1 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit The patch provides Vendor-specific PCIe Extended Capability description structure and corresponding sizing function. In this particular case the size of the Vendor capability is available in the VSEC Length field. Signed-off-by: Alexey Gerasimenko Signed-off-by: Joel Upham --- hw/xen/xen_pt_config_init.c | 71 ++++++++++++++++++++++++++++++++++++- 1 file changed, 70 insertions(+), 1 deletion(-) diff --git a/hw/xen/xen_pt_config_init.c b/hw/xen/xen_pt_config_init.c index ed36edbc4a..20b5561d25 100644 --- a/hw/xen/xen_pt_config_init.c +++ b/hw/xen/xen_pt_config_init.c @@ -124,6 +124,17 @@ static uint32_t get_throughable_mask(const XenPCIPassthroughState *s, return throughable_mask & valid_mask; } +static void log_pcie_extended_cap(XenPCIPassthroughState *s, + const char *cap_name, + uint32_t base_offset, uint32_t size) +{ + if (size) { + XEN_PT_LOG(&s->dev, "Found PCIe Extended Capability: %s at 0x%04x, " + "size 0x%x bytes\n", cap_name, + (uint16_t) base_offset, size); + } +} + /**************** * general register functions */ @@ -1622,6 +1633,42 @@ static XenPTRegInfo xen_pt_emu_reg_igd_opregion[] = { }, }; +/* Vendor-specific Ext Capability Structure reg static information table */ +static XenPTRegInfo xen_pt_ext_cap_emu_reg_vendor[] = { + { + .offset = XEN_PCIE_CAP_ID, + .size = 2, + .init_val = 0x0000, + .ro_mask = 0xFFFF, + .emu_mask = 0xFFFF, + .init = xen_pt_ext_cap_capid_reg_init, + .u.w.read = xen_pt_word_reg_read, + .u.w.write = xen_pt_word_reg_write, + }, + { + .offset = XEN_PCIE_CAP_LIST_NEXT, + .size = 2, + .init_val = 0x0000, + .ro_mask = 0xFFFF, + .emu_mask = 0xFFFF, + .init = xen_pt_ext_cap_ptr_reg_init, + .u.w.read = xen_pt_word_reg_read, + .u.w.write = xen_pt_word_reg_write, + }, + { + .offset = PCI_VNDR_HEADER, + .size = 4, + .init_val = 0x00000000, + .ro_mask = 0xFFFFFFFF, + .emu_mask = 0x00000000, + .init = xen_pt_common_reg_init, + .u.dw.read = xen_pt_long_reg_read, + .u.dw.write = xen_pt_long_reg_write, + }, + { + .size = 0, + }, +}; /**************************** * Capabilities */ @@ -1647,9 +1694,23 @@ static int xen_pt_vendor_size_init(XenPCIPassthroughState *s, return ret; } +static int xen_pt_ext_cap_vendor_size_init(XenPCIPassthroughState *s, + const XenPTRegGroupInfo *grp_reg, + uint32_t base_offset, + uint32_t *size) { - return xen_host_pci_get_byte(&s->real_device, base_offset + 0x02, size); + uint32_t vsec_hdr = 0; + int ret = xen_host_pci_get_long(&s->real_device, + base_offset + PCI_VNDR_HEADER, + &vsec_hdr); + + *size = PCI_VNDR_HEADER_LEN(vsec_hdr); + + log_pcie_extended_cap(s, "Vendor-specific", base_offset, *size); + + return ret; } + /* get PCI Express Capability Structure register group size */ static int xen_pt_pcie_size_init(XenPCIPassthroughState *s, const XenPTRegGroupInfo *grp_reg, @@ -1876,6 +1937,14 @@ static const XenPTRegGroupInfo xen_pt_emu_reg_grps[] = { .size_init = xen_pt_reg_grp_size_init, .emu_regs = xen_pt_emu_reg_igd_opregion, }, + /* Vendor-specific Extended Capability reg group */ + { + .grp_id = PCIE_EXT_CAP_ID(PCI_EXT_CAP_ID_VNDR), + .grp_type = XEN_PT_GRP_TYPE_EMU, + .grp_size = 0xFF, + .size_init = xen_pt_ext_cap_vendor_size_init, + .emu_regs = xen_pt_ext_cap_emu_reg_vendor, + }, { .grp_size = 0, }, -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Tue Jun 20 17:29:28 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 20 Jun 2023 17:29:28 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552105.862027 (Exim 4.92) (envelope-from ) id 1qBfAW-0002kY-Cs; Tue, 20 Jun 2023 17:29:28 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552105.862027; Tue, 20 Jun 2023 17:29:28 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBfAW-0002kN-8r; Tue, 20 Jun 2023 17:29:28 +0000 Received: by outflank-mailman (input) for mailman id 552105; Tue, 20 Jun 2023 17:29:27 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBf7c-0004q1-Nw for xen-devel@lists.xenproject.org; Tue, 20 Jun 2023 17:26:28 +0000 Received: from mail-yw1-x1133.google.com (mail-yw1-x1133.google.com [2607:f8b0:4864:20::1133]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 95a531e3-0f8f-11ee-8611-37d641c3527e; Tue, 20 Jun 2023 19:26:26 +0200 (CEST) Received: by mail-yw1-x1133.google.com with SMTP id 00721157ae682-5707b429540so62318627b3.1 for ; Tue, 20 Jun 2023 10:26:26 -0700 (PDT) Received: from joel-Precision-7920-Tower.. ([24.53.71.1]) by smtp.gmail.com with ESMTPSA id e65-20020a0dc244000000b0056cffe97a11sm604604ywd.13.2023.06.20.10.26.24 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 20 Jun 2023 10:26:25 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 95a531e3-0f8f-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687281985; x=1689873985; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=/ZtR49Wj+BsujqlKtwlIvLXrUvLyGZ/7NrGzguEb9A0=; b=rxOo0tXcKfS1IYKEXuRJnHwkAChp/cBkhBvjJfVCWGOzcsHGlCZ6l3tNOl0XO8izkf 9Ua5For1WY8+nDPZPjKubfsBDBU/BzDNa6nmgGSAIshSBmPHoYrQPtjQl0y1Xheg+pE8 mM18gyjsk2UTfcWTS2tbtC/0QL/fxAXqEYd0vMsCcXesrSzdEw4xpnL1uHCir3pVNz7k fO0iYsRcdwiWniF2hmpqKPZiwJcE4Ct8XbLtn4XH9Vidk+E4PIB7BHmUoGSLo1GRK+Pl BVW1BZbGXKhPuDybfQm9FQoZV3aTssCTg85XrL/1IVvdxnV3aGq8D/bcziQJXFRksMgz 9cxg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687281985; x=1689873985; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=/ZtR49Wj+BsujqlKtwlIvLXrUvLyGZ/7NrGzguEb9A0=; b=b939cd+6hQl2RJcO0q6JzHnlMJ9rVoZTCy2OGWkNqdtBzXu1hPNAp83n+PpB8SoMcG QXLxbONHWFuCxeFPgxKJmHcd8mCSvuoc2zqsKnZ0Nq0etd25AmNtQQAcCp53KerMlIdx Tg8TlDlfxTkJLFFxchoqLlyK9o3rWqqJdRWEMyRzzH4OQqHremepAHWaC8Wirm808lAL GF7qguPHZeo7TkFI/N5fS+fMM3ljiUTyNswcSxdYJrQiF7SE6kvq74t8SBfFWPbwSkSr V3JrEN17dyExF+tyUS9O57uAm9CgXWAQRhvMLv1PPNwQExYzKPLGJvtqrJ96+dy41MRk 56cA== X-Gm-Message-State: AC+VfDzdQArY9IWEOrPNvQUTf3DIEKYKn293NjY2Rr4Bbj/hM2yFTsqZ Wagx4jYzz0f4wDszkUT2iO0= X-Google-Smtp-Source: ACHHUZ7vnof2FXuOFDNyhaBtlcGPG7xrWzUFudElGDOK5WYidGkK2Dmf/59suWaFDE/d1Yxi9aEXng== X-Received: by 2002:a0d:cbcb:0:b0:56c:e5a3:3e09 with SMTP id n194-20020a0dcbcb000000b0056ce5a33e09mr21057302ywd.15.1687281985609; Tue, 20 Jun 2023 10:26:25 -0700 (PDT) From: Joel Upham To: qemu-devel@nongnu.org Cc: Joel Upham , Stefano Stabellini , Anthony Perard , Paul Durrant , xen-devel@lists.xenproject.org (open list:X86 Xen CPUs) Subject: [PATCH v1 15/23] xen/pt: add AER PCIe Extended Capability descriptor and sizing Date: Tue, 20 Jun 2023 13:24:49 -0400 Message-Id: X-Mailer: git-send-email 2.34.1 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit The patch provides Advanced Error Reporting PCIe Extended Capability description structure and corresponding capability sizing function. Signed-off-by: Alexey Gerasimenko Signed-off-by: Joel Upham --- hw/xen/xen_pt_config_init.c | 72 +++++++++++++++++++++++++++++++++++++ 1 file changed, 72 insertions(+) diff --git a/hw/xen/xen_pt_config_init.c b/hw/xen/xen_pt_config_init.c index 69d8857c66..9fd0531bc4 100644 --- a/hw/xen/xen_pt_config_init.c +++ b/hw/xen/xen_pt_config_init.c @@ -1861,6 +1861,70 @@ static int xen_pt_msix_size_init(XenPCIPassthroughState *s, } +/* get Advanced Error Reporting Extended Capability register group size */ +#define PCI_ERR_CAP_TLP_PREFIX_LOG (1U << 11) +#define PCI_DEVCAP2_END_END_TLP_PREFIX (1U << 21) +static int xen_pt_ext_cap_aer_size_init(XenPCIPassthroughState *s, + const XenPTRegGroupInfo *grp_reg, + uint32_t base_offset, + uint32_t *size) +{ + uint8_t dev_type = get_pcie_device_type(s); + uint32_t aer_caps = 0; + uint32_t sz = 0; + int pcie_cap_pos; + uint32_t devcaps2; + int ret = 0; + + pcie_cap_pos = xen_host_pci_find_next_cap(&s->real_device, 0, + PCI_CAP_ID_EXP); + if (!pcie_cap_pos) { + XEN_PT_ERR(&s->dev, + "Cannot find a required PCI Express Capability\n"); + return -1; + } + + if (get_pcie_capability_version(s) > 1) { + ret = xen_host_pci_get_long(&s->real_device, + pcie_cap_pos + PCI_EXP_DEVCAP2, + &devcaps2); + if (ret) { + XEN_PT_ERR(&s->dev, "Error while reading Device " + "Capabilities 2 Register \n"); + return -1; + } + } + + if (devcaps2 & PCI_DEVCAP2_END_END_TLP_PREFIX) { + ret = xen_host_pci_get_long(&s->real_device, + base_offset + PCI_ERR_CAP, + &aer_caps); + if (ret) { + XEN_PT_ERR(&s->dev, + "Error while reading AER Extended Capability\n"); + return -1; + } + + if (aer_caps & PCI_ERR_CAP_TLP_PREFIX_LOG) { + sz = 0x48; + } + } + + if (!sz) { + if (dev_type == PCI_EXP_TYPE_ROOT_PORT || + dev_type == PCI_EXP_TYPE_RC_EC) { + sz = 0x38; + } else { + sz = 0x2C; + } + } + + *size = sz; + + log_pcie_extended_cap(s, "AER", base_offset, *size); + return ret; +} + static const XenPTRegGroupInfo xen_pt_emu_reg_grps[] = { /* Header Type0 reg group */ { @@ -2128,6 +2192,14 @@ static const XenPTRegGroupInfo xen_pt_emu_reg_grps[] = { .size_init = xen_pt_reg_grp_size_init, .emu_regs = xen_pt_ext_cap_emu_reg_dummy, }, + /* Advanced Error Reporting Extended Capability reg group */ + { + .grp_id = PCIE_EXT_CAP_ID(PCI_EXT_CAP_ID_ERR), + .grp_type = XEN_PT_GRP_TYPE_EMU, + .grp_size = 0xFF, + .size_init = xen_pt_ext_cap_aer_size_init, + .emu_regs = xen_pt_ext_cap_emu_reg_dummy, + }, { .grp_size = 0, }, -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Tue Jun 20 17:29:32 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 20 Jun 2023 17:29:32 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552108.862037 (Exim 4.92) (envelope-from ) id 1qBfAa-00036L-Mq; Tue, 20 Jun 2023 17:29:32 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552108.862037; Tue, 20 Jun 2023 17:29:32 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBfAa-00036A-Iz; Tue, 20 Jun 2023 17:29:32 +0000 Received: by outflank-mailman (input) for mailman id 552108; Tue, 20 Jun 2023 17:29:30 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBf7k-0005Q4-62 for xen-devel@lists.xenproject.org; Tue, 20 Jun 2023 17:26:36 +0000 Received: from mail-yw1-x112a.google.com (mail-yw1-x112a.google.com [2607:f8b0:4864:20::112a]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 9aff712f-0f8f-11ee-b234-6b7b168915f2; Tue, 20 Jun 2023 19:26:35 +0200 (CEST) Received: by mail-yw1-x112a.google.com with SMTP id 00721157ae682-5702415be17so42877067b3.2 for ; Tue, 20 Jun 2023 10:26:35 -0700 (PDT) Received: from joel-Precision-7920-Tower.. ([24.53.71.1]) by smtp.gmail.com with ESMTPSA id e65-20020a0dc244000000b0056cffe97a11sm604604ywd.13.2023.06.20.10.26.33 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 20 Jun 2023 10:26:34 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 9aff712f-0f8f-11ee-b234-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687281994; x=1689873994; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=UQQT2DevBFB3oDkqTww+bCq8Z+NcubvcMEbZ9kPn1/I=; b=fstv2AOOVoUWAQIuOJ3m6gjiU4cTxA4w47YkcRP1Rz7FBW/kBHuRMpLSFwMaTEe5b1 BlytFKX3BaEwTZKAkeW11PgTa8oze9Czt/+yknEl/OEBfvwDwXn7SW3PG/2w8PqeoPvm av8TBcXKkS0ciL2D5leUNWfuF+rTprm3u/HkWbPk/mwfGv0uVvN2t3ZSUpWiiVE5OWrW icnEMAZo2HF7BoErM6qix14wzc9gUbIHbkcx4ZwzBkJIr1KsPb4CDkdR5gy+OyiVn6w8 Gh4q7qXxcQBsSJwTex+JKFslShnCOfxKn4FB052N1hJQvrzjk8BGqRy3FVkARemL4CKt I4yw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687281994; x=1689873994; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=UQQT2DevBFB3oDkqTww+bCq8Z+NcubvcMEbZ9kPn1/I=; b=CaaQBfduo8Mdv4SF19E/xLVyqjOukwcQd7Hl5riK1Hy/O8obsn81d2MrfGi+owudN1 bWcOJ/GBSF5N4st0kGUaRKOI6tfa5ZJOov5o4SIC/bMWhxmlb7Jm/E9oyBfNAA08UMJL O5951wN/1592u2ZGVefm0Er52Wkg8IMxO/9ezKtc+Qit7jvAysl2EaiCWyKyVy3NyHoq fd0H/Su8x+cRbPAPP5NPFLXOhdEkjD6doezhfntu/gHuO3cGNmdyTPPYhNCSX15f2Tfv 3oIEBZDe08DDhzzNIm8dXsamOyNBNC7ix0qpKpvw5pVm+VcArl6qv8vYiw8wbH9YC+qe Ri2A== X-Gm-Message-State: AC+VfDyFPjIlbW20NCdBJoMUKLr3eguiPLS3aYHE1UoqnCoykIt/OD8k /BdnJwpMposu53SJnXu2Me0= X-Google-Smtp-Source: ACHHUZ5TvogazAaiBwei1eL5eky/5rmlzL7gOMXYPR2q+pv034XN8iCHLrs6IQjYOJgREMAVTq8NZw== X-Received: by 2002:a0d:ea01:0:b0:56c:e5a3:3e1b with SMTP id t1-20020a0dea01000000b0056ce5a33e1bmr12551422ywe.22.1687281994508; Tue, 20 Jun 2023 10:26:34 -0700 (PDT) From: Joel Upham To: qemu-devel@nongnu.org Cc: Joel Upham , Stefano Stabellini , Anthony Perard , Paul Durrant , "Michael S. Tsirkin" , Marcel Apfelbaum , Paolo Bonzini , Richard Henderson , Eduardo Habkost , xen-devel@lists.xenproject.org (open list:X86 Xen CPUs) Subject: [PATCH v1 20/23] xen platform: unplug ahci object Date: Tue, 20 Jun 2023 13:24:54 -0400 Message-Id: <9b8183903cbf20db4e2f0dafda9e0ed271a86a8e.1687278381.git.jupham125@gmail.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit This will unplug the ahci device when the Xen driver calls for an unplug. This has been tested to work in linux and Windows guests. When q35 is detected, we will remove the ahci controller with the hard disks. In the libxl config, cdrom devices are put on a seperate ahci controller. This allows for 6 cdrom devices to be added, and 6 qemu hard disks. Signed-off-by: Joel Upham --- hw/i386/xen/xen_platform.c | 19 ++++++++++++++++++- hw/pci/pci.c | 17 +++++++++++++++++ include/hw/pci/pci.h | 3 +++ 3 files changed, 38 insertions(+), 1 deletion(-) diff --git a/hw/i386/xen/xen_platform.c b/hw/i386/xen/xen_platform.c index 57f1d742c1..0375337222 100644 --- a/hw/i386/xen/xen_platform.c +++ b/hw/i386/xen/xen_platform.c @@ -34,6 +34,7 @@ #include "sysemu/block-backend.h" #include "qemu/error-report.h" #include "qemu/module.h" +#include "include/hw/i386/pc.h" #include "qom/object.h" #ifdef CONFIG_XEN @@ -223,6 +224,12 @@ static void unplug_disks(PCIBus *b, PCIDevice *d, void *opaque) if (flags & UNPLUG_NVME_DISKS) { object_unparent(OBJECT(d)); } + break; + + case PCI_CLASS_STORAGE_SATA: + if (!aux) { + object_unparent(OBJECT(d)); + } default: break; @@ -231,7 +238,17 @@ static void unplug_disks(PCIBus *b, PCIDevice *d, void *opaque) static void pci_unplug_disks(PCIBus *bus, uint32_t flags) { - pci_for_each_device(bus, 0, unplug_disks, &flags); + PCIBus *q35 = find_q35(); + if (q35) { + /* When q35 is detected, we will remove the ahci controller + * with the hard disks. In the libxl config, cdrom devices + * are put on a seperate ahci controller. This allows for 6 cdrom + * devices to be added, and 6 qemu hard disks. + */ + pci_function_for_one_bus(bus, unplug_disks, &flags); + } else { + pci_for_each_device(bus, 0, unplug_disks, &flags); + } } static void platform_fixed_ioport_writew(void *opaque, uint32_t addr, uint32_t val) diff --git a/hw/pci/pci.c b/hw/pci/pci.c index 1cc7c89036..8eac3d751a 100644 --- a/hw/pci/pci.c +++ b/hw/pci/pci.c @@ -1815,6 +1815,23 @@ void pci_for_each_device_reverse(PCIBus *bus, int bus_num, } } +void pci_function_for_one_bus(PCIBus *bus, + void (*fn)(PCIBus *b, PCIDevice *d, void *opaque), + void *opaque) +{ + bus = pci_find_bus_nr(bus, 0); + + if (bus) { + PCIDevice *d; + + d = bus->devices[PCI_DEVFN(4,0)]; + if (d) { + fn(bus, d, opaque); + return; + } + } +} + void pci_for_each_device_under_bus(PCIBus *bus, pci_bus_dev_fn fn, void *opaque) { diff --git a/include/hw/pci/pci.h b/include/hw/pci/pci.h index e6d0574a29..c53e21082a 100644 --- a/include/hw/pci/pci.h +++ b/include/hw/pci/pci.h @@ -343,6 +343,9 @@ void pci_for_each_device_under_bus(PCIBus *bus, void pci_for_each_device_under_bus_reverse(PCIBus *bus, pci_bus_dev_fn fn, void *opaque); +void pci_function_for_one_bus(PCIBus *bus, + void (*fn)(PCIBus *bus, PCIDevice *d, void *opaque), + void *opaque); void pci_for_each_bus_depth_first(PCIBus *bus, pci_bus_ret_fn begin, pci_bus_fn end, void *parent_state); PCIDevice *pci_get_function_0(PCIDevice *pci_dev); -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Tue Jun 20 17:29:35 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 20 Jun 2023 17:29:35 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552118.862047 (Exim 4.92) (envelope-from ) id 1qBfAd-0003Qo-5w; Tue, 20 Jun 2023 17:29:35 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552118.862047; Tue, 20 Jun 2023 17:29:35 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBfAd-0003QZ-1v; Tue, 20 Jun 2023 17:29:35 +0000 Received: by outflank-mailman (input) for mailman id 552118; Tue, 20 Jun 2023 17:29:33 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBf7g-0004q1-L1 for xen-devel@lists.xenproject.org; Tue, 20 Jun 2023 17:26:32 +0000 Received: from mail-yw1-x1129.google.com (mail-yw1-x1129.google.com [2607:f8b0:4864:20::1129]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 980c656c-0f8f-11ee-8611-37d641c3527e; Tue, 20 Jun 2023 19:26:30 +0200 (CEST) Received: by mail-yw1-x1129.google.com with SMTP id 00721157ae682-5701eaf0d04so52045437b3.2 for ; Tue, 20 Jun 2023 10:26:30 -0700 (PDT) Received: from joel-Precision-7920-Tower.. ([24.53.71.1]) by smtp.gmail.com with ESMTPSA id e65-20020a0dc244000000b0056cffe97a11sm604604ywd.13.2023.06.20.10.26.28 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 20 Jun 2023 10:26:28 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 980c656c-0f8f-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687281989; x=1689873989; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=A524XPsKBXV8yIUUkONAn98uAFCiKVTYyMvCRnHwi2c=; b=iQ/RkOUENSnolhvtv9AkWVvC4+UoqgOn8Qysgb9xM3IofX21Tzz6Tk0oEZuJOA/e/3 4b4tNVmMbG7HVhgB2DPb/TeYAHtGMylmnD3PJGacsE6/UpjcGwS+jXQ9UYlvdfzS+y8W +Vu4tu3igfZ700VaRbou+aFFluHvMdiysHJurJ1+8YlyD5mkRIgzLOMNBKfFmqyq/QtV e4/X4zvaJw2dDt7kr+97WsS0/n2+F2Co2wdODsrDd0BtitsYUXbJ6XJ4MLgdQtK4MhsU JFdQFOyU4xBA1kNZjcfwHK2JxiV8LkG0adb9oUxGBPDx1/yQrCCu2Mhlu2/Rgp5Tt9wY uRIg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687281989; x=1689873989; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=A524XPsKBXV8yIUUkONAn98uAFCiKVTYyMvCRnHwi2c=; b=JDWdEL5p0O4RX9n3yG9K6mNndOj+47mLRXuqEAD1eyAVvylFJCFAu5kfO/q5XMojq+ xKfyonHOwQoAy2+KDyV+jhBkZE8U4uPIeX1Ky3nbdnutaROf0tG6MeEEQdTK2ik5bzNF qr8YQqFZdEDmxjEEXdQLtza4lu6tFizzeWNtib445GBKCC2eNfvC/HpUz64o9KMu7hBZ hog9kjRPx0ErL3BjRoKxINXJksbSik6YkLKDKW6j1mQN93BEbLIUWHdLrFEwkCPjDU1z wVLtdhW7FsMakWabdOi3GH6vsEjkIuSfaQcmFcy6Bu81hIRbcYJzTXKiHbYIgi/MfCJh gCjA== X-Gm-Message-State: AC+VfDzEpb+kOp5Ji1nNFiL5kLmYB+1FWl+lyZLHaOgNeuU/wEyDoAMQ 6EBi7+VId4OllOuNkCHdEck= X-Google-Smtp-Source: ACHHUZ6S4m8fu+H0OgrlYLgV+H0vy/atkpSHK7ZVonYsWljbCF1QmDliwrTxL0EO6NGWYcflU0wPUw== X-Received: by 2002:a81:6684:0:b0:568:f2c:ee40 with SMTP id a126-20020a816684000000b005680f2cee40mr12259954ywc.3.1687281989562; Tue, 20 Jun 2023 10:26:29 -0700 (PDT) From: Joel Upham To: qemu-devel@nongnu.org Cc: Joel Upham , Stefano Stabellini , Anthony Perard , Paul Durrant , xen-devel@lists.xenproject.org (open list:X86 Xen CPUs) Subject: [PATCH v1 17/23] xen/pt: add Resizable BAR PCIe Extended Capability descriptor and sizing Date: Tue, 20 Jun 2023 13:24:51 -0400 Message-Id: <30ddc5858c9a309ed4ab812ab93b3e930b7bfd68.1687278381.git.jupham125@gmail.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Unlike other PCIe Extended Capabilities, we currently cannot allow attempts to use Resizable BAR Capability. Without specifically handling BAR resizing we're likely end up with corrupted MMIO hole layout if guest OS will attempt to use this feature. Actually, recent Windows versions started to understand and use the Resizable BAR Capability (see [1]). For now, we need to hide the Resizable BAR Capability from guest OS until BAR resizing emulation support will be implemented in Xen. This support is a pretty much mandatory todo-feature as the effect of writing to Resizable BAR control registers can be considered similar to reprogramming normal BAR registers -- i.e. this needs to be handled explicitly, resulting in corresponding MMIO BAR range(s) remapping. Until then, we mark the Resizable BAR Capability as XEN_PT_GRP_TYPE_HARDWIRED. Signed-off-by: Alexey Gerasimenko Signed-off-by: Joel Upham --- hw/xen/xen_pt_config_init.c | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/hw/xen/xen_pt_config_init.c b/hw/xen/xen_pt_config_init.c index 1fba0b9d6c..c5157ee3ee 100644 --- a/hw/xen/xen_pt_config_init.c +++ b/hw/xen/xen_pt_config_init.c @@ -2093,6 +2093,27 @@ static int xen_pt_ext_cap_pmux_size_init(XenPCIPassthroughState *s, return ret; } +/* get Resizable BAR Extended Capability register group size */ +static int xen_pt_ext_cap_rebar_size_init(XenPCIPassthroughState *s, + const XenPTRegGroupInfo *grp_reg, + uint32_t base_offset, + uint32_t *size) +{ + uint32_t rebar_ctl = 0; + uint32_t num_entries; + + int ret = xen_host_pci_get_long(&s->real_device, + base_offset + PCI_REBAR_CTRL, + &rebar_ctl); + num_entries = + (rebar_ctl & PCI_REBAR_CTRL_NBAR_MASK) >> PCI_REBAR_CTRL_NBAR_SHIFT; + + *size = num_entries*8 + 4; + + log_pcie_extended_cap(s, "Resizable BAR", base_offset, *size); + return ret; +} + static const XenPTRegGroupInfo xen_pt_emu_reg_grps[] = { /* Header Type0 reg group */ { @@ -2424,6 +2445,13 @@ static const XenPTRegGroupInfo xen_pt_emu_reg_grps[] = { .size_init = xen_pt_ext_cap_dpc_size_init, .emu_regs = xen_pt_ext_cap_emu_reg_dummy, }, + /* Resizable BAR Extended Capability reg group */ + { + .grp_id = PCIE_EXT_CAP_ID(PCI_EXT_CAP_ID_REBAR), + .grp_type = XEN_PT_GRP_TYPE_HARDWIRED, + .grp_size = 0xFF, + .size_init = xen_pt_ext_cap_rebar_size_init, + }, { .grp_size = 0, }, -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Tue Jun 20 17:29:35 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 20 Jun 2023 17:29:35 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552119.862051 (Exim 4.92) (envelope-from ) id 1qBfAd-0003Ut-JG; Tue, 20 Jun 2023 17:29:35 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552119.862051; Tue, 20 Jun 2023 17:29:35 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBfAd-0003UM-CN; Tue, 20 Jun 2023 17:29:35 +0000 Received: by outflank-mailman (input) for mailman id 552119; Tue, 20 Jun 2023 17:29:33 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBf7e-0004q1-Nr for xen-devel@lists.xenproject.org; Tue, 20 Jun 2023 17:26:30 +0000 Received: from mail-ot1-x336.google.com (mail-ot1-x336.google.com [2607:f8b0:4864:20::336]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 96d93a47-0f8f-11ee-8611-37d641c3527e; Tue, 20 Jun 2023 19:26:28 +0200 (CEST) Received: by mail-ot1-x336.google.com with SMTP id 46e09a7af769-6b2a875b1bfso4234793a34.0 for ; Tue, 20 Jun 2023 10:26:28 -0700 (PDT) Received: from joel-Precision-7920-Tower.. ([24.53.71.1]) by smtp.gmail.com with ESMTPSA id e65-20020a0dc244000000b0056cffe97a11sm604604ywd.13.2023.06.20.10.26.26 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 20 Jun 2023 10:26:27 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 96d93a47-0f8f-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687281987; x=1689873987; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=wmwAG6Md0CC+XJeE9pl5kl+Q1W6gqDq1BcbgL+QyAho=; b=ojdkKj4dQV1QyhCxug8WoquBpw815OckKFl3hwP7HkoAoa2X4qJP17fjliqnsFTNMW ewK+iOGLtIsH/DmfNZ2Nmgz1yNLZvSJRxPH1raGXnZtXltujtz6NOZh2IAbOvEoUB5RU Gef26ixeDHQUyCt+MdLqn/Y8AtSbViaFTJQ+edeid3dtdVzA1HOG9Xu+ji71nnMHxcOs NiXNBpeYmlhi00nJEXWyOi5N165VFfwgDpzGJ1QRZ21tEhmepre01i/XdLlnPAs+F/T6 ZPlOPJHormUgTF3gvYnZ4CIoouBD37NlVFXoNd9ezrTSxY1KxlZnNCwo8EeL7E2dz4fK ciWg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687281987; x=1689873987; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=wmwAG6Md0CC+XJeE9pl5kl+Q1W6gqDq1BcbgL+QyAho=; b=PlnmObrfxuhFshFD+YHfXf2NlELwRlzzbkobzUaWoNJLWRKOe90irOeYsVFtQOXvQJ qZN0TfiPXBgp0apGFdVQ/GQntHJGikW+37vRCeqXy29s0dT2l8BJ56l2GmrhXri6HUa6 7m7KAYaDQ5uNlsuszUXRKvg7+bLVgBuasGq1JblYhZgJONGm0Dd/S9NtkJC2AgDltrnA UwQQ2lu1P4bJzHA8hdf1HmjPsMXYHdOqsdHbzlbLh2UKlnF55zxAeaRZTJMSaLWda61G /91pb4XreEyIEW2dZ0kno9+0EVSM4iYKX6FUMcHOhjKGft1Vi4hYuPJk01S92Fhfa13F 9eWw== X-Gm-Message-State: AC+VfDxRc48slUsYH9YF8Yu8meSfZxcNNidPu/vUDiPVDYZ3Amo+j2r/ KF+XyRqJrlq/8fpVnTdyCYJtyKcd1db3ow== X-Google-Smtp-Source: ACHHUZ7OZCfrEKRiy1peK/z+7dOVkohj0K6JF3B4EUqAq6V/RhqJ229VE/MynC5WaUeVXsnaYNyELQ== X-Received: by 2002:a05:6359:a12:b0:130:5951:b268 with SMTP id el18-20020a0563590a1200b001305951b268mr5880443rwb.31.1687281987530; Tue, 20 Jun 2023 10:26:27 -0700 (PDT) From: Joel Upham To: qemu-devel@nongnu.org Cc: Joel Upham , Stefano Stabellini , Anthony Perard , Paul Durrant , xen-devel@lists.xenproject.org (open list:X86 Xen CPUs) Subject: [PATCH v1 16/23] xen/pt: add descriptors and size calculation for RCLD/ACS/PMUX/DPA/MCAST/TPH/DPC PCIe Extended Capabilities Date: Tue, 20 Jun 2023 13:24:50 -0400 Message-Id: X-Mailer: git-send-email 2.34.1 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Add few more PCIe Extended Capabilities entries to the xen_pt_emu_reg_grps[] array along with their corresponding *_size_init() functions. All these capabilities have non-fixed size but their size calculation is very simple, hence adding them in a single batch. For every capability register group, only 2 registers are emulated currently: Capability ID (16 bit) and Next Capability Offset/Version (16 bit). Both needed to implement the selective capability hiding. All other registers are passed through at the moment (unless they belong to a capability marked as "hardwired" which is hidden) Signed-off-by: Alexey Gerasimenko Signed-off-by: Joel Upham --- hw/xen/xen_pt_config_init.c | 224 ++++++++++++++++++++++++++++++++++++ 1 file changed, 224 insertions(+) diff --git a/hw/xen/xen_pt_config_init.c b/hw/xen/xen_pt_config_init.c index 9fd0531bc4..1fba0b9d6c 100644 --- a/hw/xen/xen_pt_config_init.c +++ b/hw/xen/xen_pt_config_init.c @@ -1925,6 +1925,174 @@ static int xen_pt_ext_cap_aer_size_init(XenPCIPassthroughState *s, return ret; } +/* get Root Complex Link Declaration Extended Capability register group size */ +#define RCLD_GET_NUM_ENTRIES(x) (((x) >> 8) & 0xFF) +static int xen_pt_ext_cap_rcld_size_init(XenPCIPassthroughState *s, + const XenPTRegGroupInfo *grp_reg, + uint32_t base_offset, + uint32_t *size) +{ + uint32_t elem_self_descr = 0; + + int ret = xen_host_pci_get_long(&s->real_device, + base_offset + 4, + &elem_self_descr); + + *size = 0x10 + RCLD_GET_NUM_ENTRIES(elem_self_descr) * 0x10; + + log_pcie_extended_cap(s, "Root Complex Link Declaration", + base_offset, *size); + return ret; +} + +/* get Access Control Services Extended Capability register group size */ +#define ACS_VECTOR_SIZE_BITS(x) ((((x) >> 8) & 0xFF) ?: 256) +static int xen_pt_ext_cap_acs_size_init(XenPCIPassthroughState *s, + const XenPTRegGroupInfo *grp_reg, + uint32_t base_offset, + uint32_t *size) +{ + uint16_t acs_caps = 0; + + int ret = xen_host_pci_get_word(&s->real_device, + base_offset + PCI_ACS_CAP, + &acs_caps); + + if (acs_caps & PCI_ACS_EC) { + uint32_t vector_sz = ACS_VECTOR_SIZE_BITS(acs_caps); + + *size = PCI_ACS_EGRESS_CTL_V + ((vector_sz + 7) & ~7) / 8; + } else { + *size = PCI_ACS_EGRESS_CTL_V; + } + + log_pcie_extended_cap(s, "ACS", base_offset, *size); + return ret; +} + +/* get Multicast Extended Capability register group size */ +static int xen_pt_ext_cap_multicast_size_init(XenPCIPassthroughState *s, + const XenPTRegGroupInfo *grp_reg, + uint32_t base_offset, + uint32_t *size) +{ + uint8_t dev_type = get_pcie_device_type(s); + + switch (dev_type) { + case PCI_EXP_TYPE_ENDPOINT: + case PCI_EXP_TYPE_LEG_END: + case PCI_EXP_TYPE_RC_END: + case PCI_EXP_TYPE_RC_EC: + default: + *size = PCI_EXT_CAP_MCAST_ENDPOINT_SIZEOF; + break; + + case PCI_EXP_TYPE_ROOT_PORT: + case PCI_EXP_TYPE_UPSTREAM: + case PCI_EXP_TYPE_DOWNSTREAM: + *size = 0x30; + break; + } + + log_pcie_extended_cap(s, "Multicast", base_offset, *size); + return 0; +} + +/* get Dynamic Power Allocation Extended Capability register group size */ +static int xen_pt_ext_cap_dpa_size_init(XenPCIPassthroughState *s, + const XenPTRegGroupInfo *grp_reg, + uint32_t base_offset, + uint32_t *size) +{ + uint32_t dpa_caps = 0; + uint32_t num_entries; + + int ret = xen_host_pci_get_long(&s->real_device, + base_offset + PCI_DPA_CAP, + &dpa_caps); + + num_entries = (dpa_caps & PCI_DPA_CAP_SUBSTATE_MASK) + 1; + + *size = PCI_DPA_BASE_SIZEOF + num_entries /*byte-size registers*/; + + log_pcie_extended_cap(s, "Dynamic Power Allocation", base_offset, *size); + return ret; +} + +/* get TPH Requester Extended Capability register group size */ +static int xen_pt_ext_cap_tph_size_init(XenPCIPassthroughState *s, + const XenPTRegGroupInfo *grp_reg, + uint32_t base_offset, + uint32_t *size) +{ + uint32_t tph_caps = 0; + uint32_t num_entries; + + int ret = xen_host_pci_get_long(&s->real_device, + base_offset + PCI_TPH_CAP, + &tph_caps); + + switch(tph_caps & PCI_TPH_CAP_LOC_MASK) { + case PCI_TPH_LOC_CAP: + num_entries = (tph_caps & PCI_TPH_CAP_ST_MASK) >> PCI_TPH_CAP_ST_SHIFT; + num_entries++; + break; + + case PCI_TPH_LOC_NONE: + case PCI_TPH_LOC_MSIX: + default: + /* not in the capability */ + num_entries = 0; + } + + *size = PCI_TPH_BASE_SIZEOF + num_entries * 2; + + log_pcie_extended_cap(s, "TPH Requester", base_offset, *size); + return ret; +} + +/* get Downstream Port Containment Extended Capability register group size */ +static int xen_pt_ext_cap_dpc_size_init(XenPCIPassthroughState *s, + const XenPTRegGroupInfo *grp_reg, + uint32_t base_offset, + uint32_t *size) +{ + uint16_t dpc_caps = 0; + + int ret = xen_host_pci_get_word(&s->real_device, + base_offset + PCI_EXP_DPC_CAP, + &dpc_caps); + + if (dpc_caps & PCI_EXP_DPC_CAP_RP_EXT) { + *size = 0x20 + ((dpc_caps & PCI_EXP_DPC_RP_PIO_LOG_SIZE) >> 8) * 4; + } else { + *size = 0xC; + } + + log_pcie_extended_cap(s, "Downstream Port Containment", + base_offset, *size); + return ret; +} + +/* get Protocol Multiplexing Extended Capability register group size */ +#define PMUX_GET_NUM_ENTRIES(x) ((x) & 0x3F) +static int xen_pt_ext_cap_pmux_size_init(XenPCIPassthroughState *s, + const XenPTRegGroupInfo *grp_reg, + uint32_t base_offset, + uint32_t *size) +{ + uint32_t pmux_caps = 0; + + int ret = xen_host_pci_get_long(&s->real_device, + base_offset + 4, + &pmux_caps); + + *size = 0x10 + PMUX_GET_NUM_ENTRIES(pmux_caps) * 4; + + log_pcie_extended_cap(s, "PMUX", base_offset, *size); + return ret; +} + static const XenPTRegGroupInfo xen_pt_emu_reg_grps[] = { /* Header Type0 reg group */ { @@ -2200,6 +2368,62 @@ static const XenPTRegGroupInfo xen_pt_emu_reg_grps[] = { .size_init = xen_pt_ext_cap_aer_size_init, .emu_regs = xen_pt_ext_cap_emu_reg_dummy, }, + /* Root Complex Link Declaration Extended Capability reg group */ + { + .grp_id = PCIE_EXT_CAP_ID(PCI_EXT_CAP_ID_RCLD), + .grp_type = XEN_PT_GRP_TYPE_EMU, + .grp_size = 0xFF, + .size_init = xen_pt_ext_cap_rcld_size_init, + .emu_regs = xen_pt_ext_cap_emu_reg_dummy, + }, + /* Access Control Services Extended Capability reg group */ + { + .grp_id = PCIE_EXT_CAP_ID(PCI_EXT_CAP_ID_ACS), + .grp_type = XEN_PT_GRP_TYPE_EMU, + .grp_size = 0xFF, + .size_init = xen_pt_ext_cap_acs_size_init, + .emu_regs = xen_pt_ext_cap_emu_reg_dummy, + }, + /* Multicast Extended Capability reg group */ + { + .grp_id = PCIE_EXT_CAP_ID(PCI_EXT_CAP_ID_MCAST), + .grp_type = XEN_PT_GRP_TYPE_EMU, + .grp_size = 0xFF, + .size_init = xen_pt_ext_cap_multicast_size_init, + .emu_regs = xen_pt_ext_cap_emu_reg_dummy, + }, + /* Dynamic Power Allocation Extended Capability reg group */ + { + .grp_id = PCIE_EXT_CAP_ID(PCI_EXT_CAP_ID_DPA), + .grp_type = XEN_PT_GRP_TYPE_EMU, + .grp_size = 0xFF, + .size_init = xen_pt_ext_cap_dpa_size_init, + .emu_regs = xen_pt_ext_cap_emu_reg_dummy, + }, + /* TPH Requester Extended Capability reg group */ + { + .grp_id = PCIE_EXT_CAP_ID(PCI_EXT_CAP_ID_TPH), + .grp_type = XEN_PT_GRP_TYPE_EMU, + .grp_size = 0xFF, + .size_init = xen_pt_ext_cap_tph_size_init, + .emu_regs = xen_pt_ext_cap_emu_reg_dummy, + }, + /* Protocol Multiplexing Extended Capability reg group */ + { + .grp_id = PCIE_EXT_CAP_ID(PCI_EXT_CAP_ID_PMUX), + .grp_type = XEN_PT_GRP_TYPE_EMU, + .grp_size = 0xFF, + .size_init = xen_pt_ext_cap_pmux_size_init, + .emu_regs = xen_pt_ext_cap_emu_reg_dummy, + }, + /* Downstream Port Containment Extended Capability reg group */ + { + .grp_id = PCIE_EXT_CAP_ID(PCI_EXT_CAP_ID_DPC), + .grp_type = XEN_PT_GRP_TYPE_EMU, + .grp_size = 0xFF, + .size_init = xen_pt_ext_cap_dpc_size_init, + .emu_regs = xen_pt_ext_cap_emu_reg_dummy, + }, { .grp_size = 0, }, -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Tue Jun 20 17:29:38 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 20 Jun 2023 17:29:38 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552121.862067 (Exim 4.92) (envelope-from ) id 1qBfAf-00045n-Rq; Tue, 20 Jun 2023 17:29:37 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552121.862067; Tue, 20 Jun 2023 17:29:37 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBfAf-00044W-OE; Tue, 20 Jun 2023 17:29:37 +0000 Received: by outflank-mailman (input) for mailman id 552121; Tue, 20 Jun 2023 17:29:35 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBf7j-0004q1-5N for xen-devel@lists.xenproject.org; Tue, 20 Jun 2023 17:26:35 +0000 Received: from mail-yw1-x112d.google.com (mail-yw1-x112d.google.com [2607:f8b0:4864:20::112d]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 9927badf-0f8f-11ee-8611-37d641c3527e; Tue, 20 Jun 2023 19:26:32 +0200 (CEST) Received: by mail-yw1-x112d.google.com with SMTP id 00721157ae682-561b7729a12so88482187b3.1 for ; Tue, 20 Jun 2023 10:26:32 -0700 (PDT) Received: from joel-Precision-7920-Tower.. ([24.53.71.1]) by smtp.gmail.com with ESMTPSA id e65-20020a0dc244000000b0056cffe97a11sm604604ywd.13.2023.06.20.10.26.30 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 20 Jun 2023 10:26:31 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 9927badf-0f8f-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687281991; x=1689873991; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=dtxBS4t7Cp6zwlgH6yFPLtcHEBS+l3bJvetWgivlgAc=; b=DXr1jJKf7Pnlc0opub8mlP8txDB++zKhqESKRyN5fEU/XmhzGk0Ki4Pgl0faNoVtIp 9MVCQzOaaYq9Hafn00UmZw0xdLJv/Y+B/4KkvWPiSqIWM0G6n20EJX52qbK2hpf6aX8m VDfU8rjLroEhv8iPcEaV3/cfwx+epSNs1PBG8UUWPukiReaCYRd3fhbHAr++IpPrRHEx 7XjvEz+gRa4OveWFoJTqEg3KncaTM1bX0Za+tf05gn17TvkPoZ9JxORSmhvGEn2O+VCL v7HKZOb9XKZJVXJoLLIOF1wZH8LH4n4ZvvfDWHj/tMJ9JW/g1OCOcEbQMQTxeS5XPML7 TsUg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687281991; x=1689873991; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=dtxBS4t7Cp6zwlgH6yFPLtcHEBS+l3bJvetWgivlgAc=; b=P7Ou51Q+Yt6yN+xL2X9AIV+UlG9JxxI86fAexHH7N4ZdM/fdgzHjfkDRLPOlS4U5sC a3t/nACXbj+CDaQgPVynp6uuJEgT//FA09ehIERR0MgVJfvzKhbNP96DBd7b3wJ9UdAj cgy1BNg/4ju8UhoXVvw3WmcF0puQiORsZkLmoPUNo+ke2kwatupt1J3qt5LJom+VnW2b YX8wjxxUjkbIPuaP3dNfnOz8h1jadsdAUsbl3fRi5DNFKRv/4iBIGadMMCDAHe/lXpN0 TDENpV9M2PKFh5AicjBZCAqQ/a9DcSKxvYjZHTiR2JLiMZj57reyqyf9LTglIuedRp+3 7llw== X-Gm-Message-State: AC+VfDy3FZ3wVSfgO9CYJHoR+0QFOmLKNYyNTqyWZo7JbCiS1rmXWXF9 3qrux4gFnHMIZX+RY2E1M7A= X-Google-Smtp-Source: ACHHUZ5bilXSKSkByz0RaH7wiwsEk1kQjzttcfCjKeTvwtAuolFbt15zpQmnjABm1+bdn7RNwdCaMQ== X-Received: by 2002:a0d:ccc3:0:b0:56c:e480:2b2b with SMTP id o186-20020a0dccc3000000b0056ce4802b2bmr21843674ywd.12.1687281991477; Tue, 20 Jun 2023 10:26:31 -0700 (PDT) From: Joel Upham To: qemu-devel@nongnu.org Cc: Joel Upham , Stefano Stabellini , Anthony Perard , Paul Durrant , xen-devel@lists.xenproject.org (open list:X86 Xen CPUs) Subject: [PATCH v1 18/23] xen/pt: add VC/VC9/MFVC PCIe Extended Capabilities descriptors and sizing Date: Tue, 20 Jun 2023 13:24:52 -0400 Message-Id: <3cc4807a182443d70c560090828f780719a531cf.1687278381.git.jupham125@gmail.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Virtual Channel/MFVC capabilities are relatively useless for emulation (passing through accesses to them should be enough in most cases) yet they have hardest format of all PCIe Extended Capabilities, mostly because VC capability format allows the sparse config space layout with gaps between the parts which make up the VC capability. We have the main capability body followed by variable number of entries where each entry may additionally reference the arbitration table outside main capability body. There are no constrains on these arbitration table offsets -- in theory, they may reside outside the VC capability range anywhere in PCIe extended config space. Also, every arbitration table size is not fixed - it depends on current VC/Port Arbitration Select field value. To simplify things, this patch assume that changing VC/Port Arbitration Select value (i.e. resizing arbitration tables) do not cause arbitration table offsets to change. Normally the device must place arbitration tables considering their maximum size, not current one. Maximum arbitration table size depends on VC/Port Arbitration Capability bitmask -- this is what actually used to calculate the arbitration table size. Signed-off-by: Alexey Gerasimenko Signed-off-by: Joel Upham --- hw/xen/xen_pt_config_init.c | 191 ++++++++++++++++++++++++++++++++++++ 1 file changed, 191 insertions(+) diff --git a/hw/xen/xen_pt_config_init.c b/hw/xen/xen_pt_config_init.c index c5157ee3ee..4e14adf2b2 100644 --- a/hw/xen/xen_pt_config_init.c +++ b/hw/xen/xen_pt_config_init.c @@ -2114,6 +2114,173 @@ static int xen_pt_ext_cap_rebar_size_init(XenPCIPassthroughState *s, return ret; } +/* get VC/VC9/MFVC Extended Capability register group size */ +static uint32_t get_arb_table_len_max(XenPCIPassthroughState *s, + uint32_t max_bit_supported, + uint32_t arb_cap) +{ + int n_bit; + uint32_t table_max_size = 0; + + if (!arb_cap) { + return 0; + } + + for (n_bit = 7; n_bit >= 0 && !(arb_cap & (1 << n_bit)); n_bit--); + + if (n_bit > max_bit_supported) { + XEN_PT_ERR(&s->dev, "Warning: encountered unknown VC arbitration " + "capability supported: 0x%02x\n", (uint8_t) arb_cap); + } + + switch (n_bit) { + case 0: break; + case 1: return 32; + case 2: return 64; + case 3: /*128 too*/ + case 4: return 128; + default: + table_max_size = 8 << n_bit; + } + + return table_max_size; +} + +#define GET_ARB_TABLE_OFFSET(x) (((x) >> 24) * 0x10) +#define GET_VC_ARB_CAPABILITY(x) ((x) & 0xFF) +#define ARB_TABLE_ENTRY_SIZE_BITS(x) (1 << (((x) & PCI_VC_CAP1_ARB_SIZE)\ + >> 10)) +static int xen_pt_ext_cap_vchan_size_init(XenPCIPassthroughState *s, + const XenPTRegGroupInfo *grp_reg, + uint32_t base_offset, + uint32_t *size) +{ + uint32_t header; + uint32_t vc_cap_max_size = PCIE_CONFIG_SPACE_SIZE - base_offset; + uint32_t next_ptr; + uint32_t arb_table_start_max = 0, arb_table_end_max = 0; + uint32_t port_vc_cap1, port_vc_cap2, vc_rsrc_cap; + uint32_t ext_vc_count = 0; + uint32_t arb_table_entry_size; /* in bits */ + const char *cap_name; + int ret; + int i; + + ret = xen_host_pci_get_long(&s->real_device, base_offset, &header); + if (ret) { + goto err_read; + } + + next_ptr = PCI_EXT_CAP_NEXT(header); + + switch (PCI_EXT_CAP_ID(header)) { + case PCI_EXT_CAP_ID_VC: + case PCI_EXT_CAP_ID_VC9: + cap_name = "Virtual Channel"; + break; + case PCI_EXT_CAP_ID_MFVC: + cap_name = "Multi-Function VC"; + break; + default: + XEN_PT_ERR(&s->dev, "Unknown VC Extended Capability ID " + "encountered: 0x%04x\n", PCI_EXT_CAP_ID(header)); + return -1; + } + + if (next_ptr && next_ptr > base_offset) { + vc_cap_max_size = next_ptr - base_offset; + } + + ret = xen_host_pci_get_long(&s->real_device, + base_offset + PCI_VC_PORT_CAP1, + &port_vc_cap1); + if (ret) { + goto err_read; + } + + ret = xen_host_pci_get_long(&s->real_device, + base_offset + PCI_VC_PORT_CAP2, + &port_vc_cap2); + if (ret) { + goto err_read; + } + + ext_vc_count = port_vc_cap1 & PCI_VC_CAP1_EVCC; + + arb_table_start_max = GET_ARB_TABLE_OFFSET(port_vc_cap2); + + /* check arbitration table offset for validity */ + if (arb_table_start_max >= vc_cap_max_size) { + XEN_PT_ERR(&s->dev, "Warning: VC arbitration table offset points " + "outside the expected range: %#04x\n", + (uint16_t) arb_table_start_max); + /* skip this arbitration table */ + arb_table_start_max = 0; + } + + if (arb_table_start_max) { + uint32_t vc_arb_cap = GET_VC_ARB_CAPABILITY(port_vc_cap2); + uint32_t num_phases = get_arb_table_len_max(s, 3, vc_arb_cap); + uint32_t arb_tbl_sz = QEMU_ALIGN_UP(num_phases * 4, 32) / 8; + + arb_table_end_max = base_offset + arb_table_start_max + arb_tbl_sz; + } + + /* get Function/Port Arbitration Table Entry size */ + arb_table_entry_size = ARB_TABLE_ENTRY_SIZE_BITS(port_vc_cap1); + + /* process all VC Resource entries */ + for (i = 0; i < ext_vc_count; i++) { + uint32_t arb_table_offset; + + /* read VC Resource Capability */ + ret = xen_host_pci_get_long(&s->real_device, + base_offset + PCI_VC_RES_CAP + i * PCI_CAP_VC_PER_VC_SIZEOF, + &vc_rsrc_cap); + if (ret) { + goto err_read; + } + + arb_table_offset = GET_ARB_TABLE_OFFSET(vc_rsrc_cap); + + if (arb_table_offset > arb_table_start_max) { + /* check arbitration table offset for validity */ + if (arb_table_offset >= vc_cap_max_size) { + XEN_PT_ERR(&s->dev, "Warning: Port/Function arbitration table " + "offset points outside the expected range: %#04x\n", + (uint16_t) arb_table_offset); + /* skip this arbitration table */ + arb_table_offset = 0; + } else { + arb_table_start_max = arb_table_offset; + } + + if (arb_table_offset) { + uint32_t vc_arb_cap = GET_VC_ARB_CAPABILITY(vc_rsrc_cap); + uint32_t num_phases = get_arb_table_len_max(s, 5, vc_arb_cap); + uint32_t arb_tbl_sz = + QEMU_ALIGN_UP(num_phases * arb_table_entry_size, 32) / 8; + + arb_table_end_max = base_offset + arb_table_offset + arb_tbl_sz; + } + } + } + + if (arb_table_end_max) { + *size = arb_table_end_max - base_offset; + } else { + *size = PCI_CAP_VC_BASE_SIZEOF + + ext_vc_count * PCI_CAP_VC_PER_VC_SIZEOF; + } + + log_pcie_extended_cap(s, cap_name, base_offset, *size); + return 0; + +err_read: + XEN_PT_ERR(&s->dev, "Error while reading VC Extended Capability\n"); + return ret; +} + static const XenPTRegGroupInfo xen_pt_emu_reg_grps[] = { /* Header Type0 reg group */ { @@ -2452,6 +2619,30 @@ static const XenPTRegGroupInfo xen_pt_emu_reg_grps[] = { .grp_size = 0xFF, .size_init = xen_pt_ext_cap_rebar_size_init, }, + /* Virtual Channel Extended Capability reg group (2) */ + { + .grp_id = PCIE_EXT_CAP_ID(PCI_EXT_CAP_ID_VC), + .grp_type = XEN_PT_GRP_TYPE_EMU, + .grp_size = 0xFF, + .size_init = xen_pt_ext_cap_vchan_size_init, + .emu_regs = xen_pt_ext_cap_emu_reg_dummy, + }, + /* Virtual Channel Extended Capability reg group (9) */ + { + .grp_id = PCIE_EXT_CAP_ID(PCI_EXT_CAP_ID_VC9), + .grp_type = XEN_PT_GRP_TYPE_EMU, + .grp_size = 0xFF, + .size_init = xen_pt_ext_cap_vchan_size_init, + .emu_regs = xen_pt_ext_cap_emu_reg_dummy, + }, + /* Multi-Function Virtual Channel Extended Capability reg group */ + { + .grp_id = PCIE_EXT_CAP_ID(PCI_EXT_CAP_ID_MFVC), + .grp_type = XEN_PT_GRP_TYPE_EMU, + .grp_size = 0xFF, + .size_init = xen_pt_ext_cap_vchan_size_init, + .emu_regs = xen_pt_ext_cap_emu_reg_dummy, + }, { .grp_size = 0, }, -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Tue Jun 20 17:46:29 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 20 Jun 2023 17:46:29 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552161.862077 (Exim 4.92) (envelope-from ) id 1qBfQi-0008Fx-G2; Tue, 20 Jun 2023 17:46:12 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552161.862077; Tue, 20 Jun 2023 17:46:12 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBfQi-0008Fq-Cj; Tue, 20 Jun 2023 17:46:12 +0000 Received: by outflank-mailman (input) for mailman id 552161; Tue, 20 Jun 2023 17:46:11 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBfQg-0008Fk-UV for xen-devel@lists.xenproject.org; Tue, 20 Jun 2023 17:46:11 +0000 Received: from esa6.hc3370-68.iphmx.com (esa6.hc3370-68.iphmx.com [216.71.155.175]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 5537f468-0f92-11ee-b234-6b7b168915f2; Tue, 20 Jun 2023 19:46:08 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 5537f468-0f92-11ee-b234-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1687283167; h=from:to:cc:subject:date:message-id:mime-version: content-transfer-encoding; bh=rGnvM14ixfWPA7glURMM/F1hOUiXveqgD8w1TAFs4DI=; b=AyJk/65X4gV99IxoYa+pnLBDbvcEq1ljq+fkwzH9HD3PmE/DWZ4eKw9v SuuJLUu/55SnkQrD8ZXuZdSZqh2n8+o6wmwxMjhGi9tRtXAXlf8u2mGUV spP1DcG8wi/QRq+6iRrO6y3K0t/0LwJJOLrU/YpkNxObVNBKbkgm0hJJu Y=; Authentication-Results: esa6.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none X-SBRS: 4.0 X-MesageID: 112833466 X-Ironport-Server: esa6.hc3370-68.iphmx.com X-Remote-IP: 162.221.156.123 X-Policy: $RELAYED IronPort-Data: A9a23:O2A/Z6wc0iIfSE8Z5ol6t+c2xirEfRIJ4+MujC+fZmUNrF6WrkVSy mVJDW2ObPnZa2X9c9h3PYmw8UoDusCExoVgGVQ4rSAxQypGp/SeCIXCJC8cHc8wwu7rFxs7s ppEOrEsCOhuExcwcz/0auCJQUFUjP3OHfykTrafYEidfCc8IA85kxVvhuUltYBhhNm9Emult Mj75sbSIzdJ4RYtWo4vw/zF8EsHUMja4mtC5QRgP6gT5jcyqlFOZH4hDfDpR5fHatE88t6SH 47r0Ly/92XFyBYhYvvNfmHTKxBirhb6ZGBiu1IOM0SQqkEqSh8ai87XAME0e0ZP4whlqvgqo Dl7WT5cfi9yVkHEsLx1vxC1iEiSN4UekFPMCSDXXcB+UyQq2pYjqhljJBheAGEWxgp4KWpx9 tggFQ1QUiiGosuzzIP8du9lutt2eaEHPKtH0p1h5TTQDPJgSpHfWaTao9Rf2V/chOgXQ6yYP ZBAL2MyMlKZOUYn1lQ/UfrSmM+BgHXlfiIeg1WSvactuEDYzRBr0airO93QEjCPbZwMxBbD/ T6YoQwVBDlHG4Gx6GqV2Uj1odbMoRr7WKQwFZ2Ro6sCbFq7mTVIVUx+uUGAiem0jAuyVsxSL 2QQ+zEytu4i+UqzVN7/Uhak5nmesXY0efBdDuk74wGl0bfP7kCSAW1sZiFFQMwrsokxXzNC6 7OSt4q3X3o16uTTEC/DsO7O9lteJBT5M0cJWiwgdTY4vuXbpaQaix7+CeplGZKq24id9S7L/ 9yakMQvr+xN3ZFRh//hpAuvbyGE/caQEFNsjunDdif8t14iOtb4D2C9wQKDhcusOrp1WbVoU JIsv8GFpN4DApiW/MBmaLVcRer5jxpp3dC1vLKOI3XC3273k5JbVdoMiAyS3W8wWir+RRfnY VXIpSRa74JJMX2hYMdfOtzhVJ17nPWwRYm5CJg4i+aihLArKWdrGwk0PyatM53FyhBwwcnTx 7/GGSpTMZrqIfs+l2fnLwvs+bQq2jo/1QvuqWPTlnyaPU6lTCfNE98taQLeBt3VGYvY+G05B f4DbZrVo/ieOcWiChTqHXk7dwFWdyRrW86nwyGVH8baSjdb9KgaI6e56dscl0ZNxsy5Ss+gE qmBZ3Jl IronPort-HdrOrdr: A9a23:ZhdMOqAVWYwBO5/lHemW55DYdb4zR+YMi2TDgXoBLiC9Ffbo9P xG/c566faasl0ssR0b8+xoW5PgfZq/z/FICNIqTNOftWDd0QOVxedZgLcKqAePJ8SRzIJgPQ gLSdkZNDVdZ2IK7/oTQWODYrMd/OU= X-Talos-CUID: 9a23:MdlciG8J0+skREz0Qh+Vv0UrGeQdT0CA8E/VBma9BVcudLucdUDFrQ== X-Talos-MUID: 9a23:DcpC+wYyG+cUfeBT6hCxqhAyJOxSuoOXC3w0kZUgmcikHHkl X-IronPort-AV: E=Sophos;i="6.00,257,1681185600"; d="scan'208";a="112833466" From: Andrew Cooper To: Xen-devel CC: Andrew Cooper , Jan Beulich , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Wei Liu Subject: [PATCH] x86/vpmu: Simplify is_pmc_quirk Date: Tue, 20 Jun 2023 18:45:56 +0100 Message-ID: <20230620174556.3898824-1-andrew.cooper3@citrix.com> X-Mailer: git-send-email 2.30.2 MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit This should be static, and there's no need for a separate (non-init, even) function to perform a simple equality test. Drop the is_ prefix which is gramatically questionable, and make it __ro_after_init. Leave a TODO, because the behaviour is definitely wrong to be applied to ~all modern Intel CPUs, and has been raised on xen-devel previously without conclusion. No functional change. Signed-off-by: Andrew Cooper --- CC: Jan Beulich CC: Roger Pau Monné CC: Wei Liu --- xen/arch/x86/cpu/vpmu_intel.c | 18 ++++++------------ 1 file changed, 6 insertions(+), 12 deletions(-) diff --git a/xen/arch/x86/cpu/vpmu_intel.c b/xen/arch/x86/cpu/vpmu_intel.c index 35e350578b84..0291481da22e 100644 --- a/xen/arch/x86/cpu/vpmu_intel.c +++ b/xen/arch/x86/cpu/vpmu_intel.c @@ -91,22 +91,14 @@ static const unsigned int regs_off = * 1 (or another value != 0) into it. * There exist no errata and the real cause of this behaviour is unknown. */ -bool_t __read_mostly is_pmc_quirk; - -static void check_pmc_quirk(void) -{ - if ( current_cpu_data.x86 == 6 ) - is_pmc_quirk = 1; - else - is_pmc_quirk = 0; -} +static bool __ro_after_init pmc_quirk; static void handle_pmc_quirk(u64 msr_content) { int i; u64 val; - if ( !is_pmc_quirk ) + if ( !pmc_quirk ) return; val = msr_content; @@ -791,8 +783,9 @@ static int cf_check core2_vpmu_do_interrupt(struct cpu_user_regs *regs) rdmsrl(MSR_CORE_PERF_GLOBAL_STATUS, msr_content); if ( msr_content ) { - if ( is_pmc_quirk ) + if ( pmc_quirk ) handle_pmc_quirk(msr_content); + core2_vpmu_cxt->global_status |= msr_content; msr_content &= ~global_ovf_ctrl_mask; wrmsrl(MSR_CORE_PERF_GLOBAL_OVF_CTRL, msr_content); @@ -967,7 +960,8 @@ const struct arch_vpmu_ops *__init core2_vpmu_init(void) sizeof(uint64_t) * fixed_pmc_cnt + sizeof(struct xen_pmu_cntr_pair) * arch_pmc_cnt; - check_pmc_quirk(); + /* TODO: This is surely wrong. */ + pmc_quirk = current_cpu_data.x86 == 6; if ( sizeof(struct xen_pmu_data) + sizeof(uint64_t) * fixed_pmc_cnt + sizeof(struct xen_pmu_cntr_pair) * arch_pmc_cnt > PAGE_SIZE ) -- 2.30.2 From xen-devel-bounces@lists.xenproject.org Tue Jun 20 17:47:38 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 20 Jun 2023 17:47:38 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552167.862086 (Exim 4.92) (envelope-from ) id 1qBfRv-0000LG-On; Tue, 20 Jun 2023 17:47:27 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552167.862086; Tue, 20 Jun 2023 17:47:27 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBfRv-0000L9-MI; Tue, 20 Jun 2023 17:47:27 +0000 Received: by outflank-mailman (input) for mailman id 552167; Tue, 20 Jun 2023 17:47:26 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBfRu-0000Ki-OH for xen-devel@lists.xenproject.org; Tue, 20 Jun 2023 17:47:26 +0000 Received: from esa5.hc3370-68.iphmx.com (esa5.hc3370-68.iphmx.com [216.71.155.168]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 81a9881c-0f92-11ee-8611-37d641c3527e; Tue, 20 Jun 2023 19:47:22 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 81a9881c-0f92-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1687283242; h=from:to:cc:subject:date:message-id:mime-version: content-transfer-encoding; bh=S9OCrltF7kAE9VaLowAPv00GEEs/amWFwY5c9PbQ2OY=; b=IkE7noqPtBn9Rr54BYCJjIex29DwrnBTL4mZKo3wB6lkUwI+94qWZGEg vetbJ40Y17eiG7Nm83orzq2ZEBSJEPSyMyko8xivslGAlKLGWwh1G7eOZ GgGlkrlN6Y7U9Z4AFZy2N+vUN0DCAsIvd0lCjoDPT4gWsrWIBtcIp2ad2 c=; Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none X-SBRS: 4.0 X-MesageID: 112250688 X-Ironport-Server: esa5.hc3370-68.iphmx.com X-Remote-IP: 162.221.156.123 X-Policy: $RELAYED IronPort-Data: A9a23:LfxGjKu2T/XwUQgJ8mwHdYM4PefnVEpeMUV32f8akzHdYApBsoF/q tZmKW6PO6ncNzb0c9gjaIS/9ENSupHUmIQ1TlduqXs9FXgS+JbJXdiXEBz9bniYRiHhoOCLz O1FM4Wdc5pkJpP4jk3wWlQ0hSAkjclkfpKlVKiffHg3HVQ+IMsYoUoLs/YjhYJ1isSODQqIu Nfjy+XSI1bg0DNvWo4uw/vrRChH4rKq4Fv0gnRkPaoQ5AGEzyFPZH4iDfrZw0XQE9E88tGSH 44v/JnhlkvF8hEkDM+Sk7qTWiXmlZaLYGBiIlIPM0STqkAqSh4ai87XB9JFAatjsB2bnsgZ9 Tl4ncfYpTHFnEH7sL91vxFwS0mSNEDdkVPNCSDXXce7lyUqf5ZwqhnH4Y5f0YAwo45K7W9yG fMwGhofNE6GvfiMmPG2bdRVxZkKCfTqBdZK0p1g5Wmx4fcORJnCR+PB5MNC3Sd2jcdLdRrcT 5NHM3w1Nk2GOkARfA5NU/rSn8/x7pX7WxRepEiYuuwc5G/LwRYq+LPsLMDUapqBQsA9ckOw/ zucpTmhXEFKXDCZ4SjdyCiL3tXyoS/YB9lVKP7jr/VP21LGkwT/DzVJDADm8JFVkHWWS99Zb kAZ5Ccqhawz71CwCMnwWQWip3yJtQJaXMBfe8UYwgyQzqvf4y6CG3MJCDVGbbQOq8seVTEsk FiTkLvBJTFpqqzTdnub+Z+dtzb0Mi8QRVLufgddE1FDuYO65thu0FSWFI0L/LOJYsPdKxvim W6PljIE3/YeqvMylPiS2G3Gumf5znTWdTLZ9jk7T0r8sFMmPt7/PdXzgbTIxa0eddjEFzFtq FBBwpHDt75WUPlhgQTXGI0w8KeVC+Fp2dE2qXpmBNEf+juk4BZPlqgAsWgldC+F3ivpEAIFg XM/WisLvve/xFPwMcdKj3uZUqzGN5TIG9X/TezzZdFTeJV3fwLv1HgwNRHJjjGwwBhxzf9X1 XKnnSCEVyty5UNPlmDeegvg+eVzmnBWKZ37GPgXMChLIZLBPSXIGN/pwXOFb/wj7bPsnekm2 483Cid+8D0GCLeWSnCOoeYuwaUicSBT6Wbe95YGKYZu42NORAkcNhMm6elwJ9Y5z/oLx48lP BiVAydl9bY2vlWfQS3iV5ypQOm1NXqjhRrX5RARAGs= IronPort-HdrOrdr: A9a23:Kwy3A6hlVOPL3u6FwZ7IjBYlh3BQXuAji2hC6mlwRA09TyX4ra yTdZEgviMc5wx/ZJhNo7690dC7MBXhHPxOgbX5TI3CYOCOggLBRuxfBODZsl7d8kPFh4pg/J YlX69iCMDhSXhW5PyKhzVQyuxQouVvJprY4Nvj8w== X-Talos-CUID: =?us-ascii?q?9a23=3AfxIhp2jFjrie1hqonVJsEJFj3zJuQFfPlinVGVW?= =?us-ascii?q?CUSVkb4CsCgK53Z5lqp87?= X-Talos-MUID: 9a23:NSgBYgblz+O6M+BTpWfW3hY6DvpU74fxUwcx0s5fsOzfOnkl X-IronPort-AV: E=Sophos;i="6.00,257,1681185600"; d="scan'208";a="112250688" From: Andrew Cooper To: Xen-devel CC: Andrew Cooper , Jan Beulich , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Wei Liu , Henry Wang Subject: [PATCH] x86: Drop opt_pku entirely Date: Tue, 20 Jun 2023 18:47:04 +0100 Message-ID: <20230620174704.3907275-1-andrew.cooper3@citrix.com> X-Mailer: git-send-email 2.30.2 MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit This option is particularly dubious as Xen does not use Protection Keys, owing to the sharing of pagetables with PV guests. All this option does is hide PKU by default from HVM guests, and is therefore redundant with the more generic cpuid=no-pku. The variable ought to be in __initdata given it's single user, but deleting it entirely looks to be a better course of action. Signed-off-by: Andrew Cooper --- CC: Jan Beulich CC: Roger Pau Monné CC: Wei Liu CC: Henry Wang --- CHANGELOG.md | 3 +++ docs/misc/xen-command-line.pandoc | 10 ---------- xen/arch/x86/cpu/common.c | 7 ------- 3 files changed, 3 insertions(+), 17 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 7d7e0590f8c6..43f15dc34cbf 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -25,6 +25,9 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) - Add support for AVX512-FP16 on x86. - On Arm, Xen supports guests running SVE/SVE2 instructions. (Tech Preview) +### Removed + - On x86, the "pku" command line option has been removed. It has never + behaved precisely as described, and redundant with "cpuid=no-pku". ## [4.17.0](https://xenbits.xen.org/gitweb/?p=xen.git;a=shortlog;h=RELEASE-4.17.0) - 2022-12-12 diff --git a/docs/misc/xen-command-line.pandoc b/docs/misc/xen-command-line.pandoc index 4060ebdc5d76..9d66688bd1ff 100644 --- a/docs/misc/xen-command-line.pandoc +++ b/docs/misc/xen-command-line.pandoc @@ -1950,16 +1950,6 @@ for all of them (`true`), only for those subject to XPTI (`xpti`) or for those not subject to XPTI (`no-xpti`). The feature is used only in case INVPCID is supported and not disabled via `invpcid=false`. -### pku (x86) -> `= ` - -> Default: `true` - -Flag to enable Memory Protection Keys. - -The protection-key feature provides an additional mechanism by which IA-32e -paging controls access to usermode addresses. - ### ple_gap > `= ` diff --git a/xen/arch/x86/cpu/common.c b/xen/arch/x86/cpu/common.c index cfcdaace125b..14021ffc66d8 100644 --- a/xen/arch/x86/cpu/common.c +++ b/xen/arch/x86/cpu/common.c @@ -29,10 +29,6 @@ bool __read_mostly opt_dom0_cpuid_faulting = true; bool_t opt_arat = 1; boolean_param("arat", opt_arat); -/* pku: Flag to enable Memory Protection Keys (default on). */ -static bool_t opt_pku = 1; -boolean_param("pku", opt_pku); - unsigned int opt_cpuid_mask_ecx = ~0u; integer_param("cpuid_mask_ecx", opt_cpuid_mask_ecx); unsigned int opt_cpuid_mask_edx = ~0u; @@ -522,9 +518,6 @@ void identify_cpu(struct cpuinfo_x86 *c) this_cpu->c_init(c); - if (c == &boot_cpu_data && !opt_pku) - setup_clear_cpu_cap(X86_FEATURE_PKU); - /* * The vendor-specific functions might have changed features. Now * we do "generic changes." -- 2.30.2 From xen-devel-bounces@lists.xenproject.org Tue Jun 20 17:57:36 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 20 Jun 2023 17:57:36 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552175.862097 (Exim 4.92) (envelope-from ) id 1qBfbZ-0001tS-MP; Tue, 20 Jun 2023 17:57:25 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552175.862097; Tue, 20 Jun 2023 17:57:25 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBfbZ-0001tL-Jq; Tue, 20 Jun 2023 17:57:25 +0000 Received: by outflank-mailman (input) for mailman id 552175; Tue, 20 Jun 2023 17:57:23 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBfbX-0001tF-5D for xen-devel@lists.xenproject.org; Tue, 20 Jun 2023 17:57:23 +0000 Received: from casper.infradead.org (casper.infradead.org [2001:8b0:10b:1236::1]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id e7139862-0f93-11ee-b234-6b7b168915f2; Tue, 20 Jun 2023 19:57:21 +0200 (CEST) Received: from [2001:8b0:10b:5:f26b:798c:7de3:5106] (helo=u3832b3a9db3152.ant.amazon.com) by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux)) id 1qBfbJ-00DNAh-Os; Tue, 20 Jun 2023 17:57:09 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: e7139862-0f93-11ee-b234-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=casper.20170209; h=MIME-Version:Content-Type:References: In-Reply-To:Date:Cc:To:From:Subject:Message-ID:Sender:Reply-To: Content-Transfer-Encoding:Content-ID:Content-Description; bh=ZIf/kn62SbD7bBJ9sI9BnJLzEfeRRd+h8nmCNfunRZU=; b=ppUIXezNx7Hp2gK/4fhyVQAom+ xYNdMXQp0WEIHH6bwiqvJrCy+pRd9E6y8x1orgZNzx+rLxULHBLie9Yu+cQGIzaFruPMPailApDa2 3bpBxz/8la66uVKYmKjY5BY34AxMeuqeTgVzZMku8aApY3kgwg1/etVACjpeS77plretZA0v4/IuU b75Xnp6GFrLIo2t2TIlilNj0VDEIYf7dIJWgByfOP/WRYbdqg3uhrm2dQs29otDVyEcV63TpxAzsA 52jJFHHX1T1Lw83CNmLAbM/d0xaHXRpSND+bFhCgyOYL5LFRGBbNunjtH+J35POhQH4j67j0TJhj5 Oi8JiK7g==; Message-ID: <127e6a05df803a560b97814f46501df8ce200ba4.camel@infradead.org> Subject: Re: [PULL 05/27] hw/xen: Watches on XenStore transactions From: David Woodhouse To: Peter Maydell Cc: qemu-devel@nongnu.org, Paolo Bonzini , Paul Durrant , Joao Martins , Ankur Arora , Stefano Stabellini , vikram.garhwal@amd.com, Anthony Perard , xen-devel@lists.xenproject.org, Juan Quintela , "Dr . David Alan Gilbert" Date: Tue, 20 Jun 2023 18:57:08 +0100 In-Reply-To: References: <20230307182707.2298618-1-dwmw2@infradead.org> <20230307182707.2298618-6-dwmw2@infradead.org> Content-Type: multipart/signed; micalg="sha-256"; protocol="application/pkcs7-signature"; boundary="=-i3NJaGKa1v0mTNXRTTxN" User-Agent: Evolution 3.44.4-0ubuntu1 MIME-Version: 1.0 X-SRS-Rewrite: SMTP reverse-path rewritten from by casper.infradead.org. See http://www.infradead.org/rpr.html --=-i3NJaGKa1v0mTNXRTTxN Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Tue, 2023-06-20 at 13:19 +0100, Peter Maydell wrote: > On Fri, 2 Jun 2023 at 18:06, Peter Maydell > wrote: > >=20 > > On Tue, 2 May 2023 at 18:08, Peter Maydell > > wrote: > > >=20 > > > On Tue, 7 Mar 2023 at 18:27, David Woodhouse > > > wrote: > > > >=20 > > > > From: David Woodhouse >=20 > > > Hi; Coverity's "is there missing error handling?" > > > heuristic fired for a change in this code (CID 1508359): > > >=20 > > > > =C2=A0static int transaction_commit(XenstoreImplState *s, > > > > XsTransaction *tx) > > > > =C2=A0{ > > > > +=C2=A0=C2=A0=C2=A0 struct walk_op op; > > > > +=C2=A0=C2=A0=C2=A0 XsNode **n; > > > > + > > > > =C2=A0=C2=A0=C2=A0=C2=A0 if (s->root_tx !=3D tx->base_tx) { > > > > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 return EAGAIN; > > > > =C2=A0=C2=A0=C2=A0=C2=A0 } > > > > @@ -720,10 +861,18 @@ static int > > > > transaction_commit(XenstoreImplState *s, XsTransaction *tx) > > > > =C2=A0=C2=A0=C2=A0=C2=A0 s->root_tx =3D tx->tx_id; > > > > =C2=A0=C2=A0=C2=A0=C2=A0 s->nr_nodes =3D tx->nr_nodes; > > > >=20 > > > > +=C2=A0=C2=A0=C2=A0 init_walk_op(s, &op, XBT_NULL, tx->dom_id, "/",= &n); > > >=20 > > > This is the only call to init_walk_op() which ignores its > > > return value. Intentional, or missing error handling? > >=20 > > Hi -- I was going through the unclassified Coverity issues > > again today, and this one's still on the list. Is this a > > bug, or intentional? >=20 > Ping^3 -- is this a false positive, or something to be fixed? > It would be nice to be able to classify the coverity issue > appropriately. Oops, sorry for the delay.=20 It is arguably a false positive. There are two cases where init_walk_op() can fail: =E2=80=A2 It's given a transaction ID which doesn't exist. But in this cas= e it's actually given XBT_NULL because the transaction is *already* committed and all we're doing is setting up a tree walk to fire watches on the newly-committed changed nodes. or, =E2=80=A2 The given path is invalid. Which it isn't here because we pass = a hard-coded "/". I was about to stick in the standard if(ret){return ret;} but the semantics of that would be a bit bizarre. As noted, by this point the transaction *was* committed already. So all that gets aborted is the *watches* that were supposed to fire on changed nodes. Returning an error in that case would be a bit weird. So I'll go for a g_assert(!ret) with a comment about why. Patch follows. I shall also have another go at frowning at the soft-reset locking vs. the timer and other code, and seeing if I win this time... --=-i3NJaGKa1v0mTNXRTTxN Content-Type: application/pkcs7-signature; name="smime.p7s" Content-Disposition: attachment; filename="smime.p7s" Content-Transfer-Encoding: base64 MIAGCSqGSIb3DQEHAqCAMIACAQExDzANBglghkgBZQMEAgEFADCABgkqhkiG9w0BBwEAAKCCEkQw ggYQMIID+KADAgECAhBNlCwQ1DvglAnFgS06KwZPMA0GCSqGSIb3DQEBDAUAMIGIMQswCQYDVQQG EwJVUzETMBEGA1UECBMKTmV3IEplcnNleTEUMBIGA1UEBxMLSmVyc2V5IENpdHkxHjAcBgNVBAoT FVRoZSBVU0VSVFJVU1QgTmV0d29yazEuMCwGA1UEAxMlVVNFUlRydXN0IFJTQSBDZXJ0aWZpY2F0 aW9uIEF1dGhvcml0eTAeFw0xODExMDIwMDAwMDBaFw0zMDEyMzEyMzU5NTlaMIGWMQswCQYDVQQG EwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYD VQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50 aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC AQEAyjztlApB/975Rrno1jvm2pK/KxBOqhq8gr2+JhwpKirSzZxQgT9tlC7zl6hn1fXjSo5MqXUf ItMltrMaXqcESJuK8dtK56NCSrq4iDKaKq9NxOXFmqXX2zN8HHGjQ2b2Xv0v1L5Nk1MQPKA19xeW QcpGEGFUUd0kN+oHox+L9aV1rjfNiCj3bJk6kJaOPabPi2503nn/ITX5e8WfPnGw4VuZ79Khj1YB rf24k5Ee1sLTHsLtpiK9OjG4iQRBdq6Z/TlVx/hGAez5h36bBJMxqdHLpdwIUkTqT8se3ed0PewD ch/8kHPo5fZl5u1B0ecpq/sDN/5sCG52Ds+QU5O5EwIDAQABo4IBZDCCAWAwHwYDVR0jBBgwFoAU U3m/WqorSs9UgOHYm8Cd8rIDZsswHQYDVR0OBBYEFAnA8vwL2pTbX/4r36iZQs/J4K0AMA4GA1Ud DwEB/wQEAwIBhjASBgNVHRMBAf8ECDAGAQH/AgEAMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEF BQcDBDARBgNVHSAECjAIMAYGBFUdIAAwUAYDVR0fBEkwRzBFoEOgQYY/aHR0cDovL2NybC51c2Vy dHJ1c3QuY29tL1VTRVJUcnVzdFJTQUNlcnRpZmljYXRpb25BdXRob3JpdHkuY3JsMHYGCCsGAQUF BwEBBGowaDA/BggrBgEFBQcwAoYzaHR0cDovL2NydC51c2VydHJ1c3QuY29tL1VTRVJUcnVzdFJT QUFkZFRydXN0Q0EuY3J0MCUGCCsGAQUFBzABhhlodHRwOi8vb2NzcC51c2VydHJ1c3QuY29tMA0G CSqGSIb3DQEBDAUAA4ICAQBBRHUAqznCFfXejpVtMnFojADdF9d6HBA4kMjjsb0XMZHztuOCtKF+ xswhh2GqkW5JQrM8zVlU+A2VP72Ky2nlRA1GwmIPgou74TZ/XTarHG8zdMSgaDrkVYzz1g3nIVO9 IHk96VwsacIvBF8JfqIs+8aWH2PfSUrNxP6Ys7U0sZYx4rXD6+cqFq/ZW5BUfClN/rhk2ddQXyn7 kkmka2RQb9d90nmNHdgKrwfQ49mQ2hWQNDkJJIXwKjYA6VUR/fZUFeCUisdDe/0ABLTI+jheXUV1 eoYV7lNwNBKpeHdNuO6Aacb533JlfeUHxvBz9OfYWUiXu09sMAviM11Q0DuMZ5760CdO2VnpsXP4 KxaYIhvqPqUMWqRdWyn7crItNkZeroXaecG03i3mM7dkiPaCkgocBg0EBYsbZDZ8bsG3a08LwEsL 1Ygz3SBsyECa0waq4hOf/Z85F2w2ZpXfP+w8q4ifwO90SGZZV+HR/Jh6rEaVPDRF/CEGVqR1hiuQ OZ1YL5ezMTX0ZSLwrymUE0pwi/KDaiYB15uswgeIAcA6JzPFf9pLkAFFWs1QNyN++niFhsM47qod x/PL+5jR87myx5uYdBEQkkDc+lKB1Wct6ucXqm2EmsaQ0M95QjTmy+rDWjkDYdw3Ms6mSWE3Bn7i 5ZgtwCLXgAIe5W8mybM2JzCCBhQwggT8oAMCAQICEQDGvhmWZ0DEAx0oURL6O6l+MA0GCSqGSIb3 DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYD VQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28g UlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMB4XDTIyMDEwNzAw MDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJARYTZHdtdzJAaW5mcmFkZWFkLm9y ZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3GpC2bomUqk+91wLYBzDMcCj5C9m6 oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZHh7htyAkWYVoFsFPrwHounto8xTsy SSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT9YgcBqKCo65pTFmOnR/VVbjJk4K2 xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNjP+qDrh0db7PAjO1D4d5ftfrsf+kd RR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy2U+eITZ5LLE5s45mX2oPFknWqxBo bQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3BgBEmfsYWlBXO8rVXfvPgLs32VdV NZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/7auNVRmPB3v5SWEsH8xi4Bez2V9U KxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmdlFYhAflWKQ03Ufiu8t3iBE3VJbc2 5oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9aelIl6vtbhMA+l0nfrsORMa4kobqQ5 C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMBAAGjggHMMIIByDAfBgNVHSMEGDAW gBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeDMcimo0oz8o1R1Nver3ZVpSkwDgYD VR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYwFAYIKwYBBQUHAwQGCCsGAQUFBwMC MEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYBBQUHAgEWF2h0dHBzOi8vc2VjdGln by5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9jcmwuc2VjdGlnby5jb20vU2VjdGln b1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1haWxDQS5jcmwwgYoGCCsGAQUFBwEB BH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdvLmNvbS9TZWN0aWdvUlNBQ2xpZW50 QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAjBggrBgEFBQcwAYYXaHR0cDovL29j c3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5mcmFkZWFkLm9yZzANBgkqhkiG9w0B AQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQvQ/fzPXmtR9t54rpmI2TfyvcKgOXp qa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvIlSPrzIB4Z2wyIGQpaPLlYflrrVFK v9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9ChWFfgSXvrWDZspnU3Gjw/rMHrGnql Htlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0whpBtXdyDjzBtQTaZJ7zTT/vlehc/ tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9IzCCBhQwggT8oAMCAQICEQDGvhmW Z0DEAx0oURL6O6l+MA0GCSqGSIb3DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3Jl YXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0 ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJl IEVtYWlsIENBMB4XDTIyMDEwNzAwMDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJ ARYTZHdtdzJAaW5mcmFkZWFkLm9yZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3 GpC2bomUqk+91wLYBzDMcCj5C9m6oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZH h7htyAkWYVoFsFPrwHounto8xTsySSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT 9YgcBqKCo65pTFmOnR/VVbjJk4K2xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNj P+qDrh0db7PAjO1D4d5ftfrsf+kdRR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy 2U+eITZ5LLE5s45mX2oPFknWqxBobQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3 BgBEmfsYWlBXO8rVXfvPgLs32VdVNZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/ 7auNVRmPB3v5SWEsH8xi4Bez2V9UKxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmd lFYhAflWKQ03Ufiu8t3iBE3VJbc25oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9ae lIl6vtbhMA+l0nfrsORMa4kobqQ5C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMB AAGjggHMMIIByDAfBgNVHSMEGDAWgBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeD Mcimo0oz8o1R1Nver3ZVpSkwDgYDVR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYw FAYIKwYBBQUHAwQGCCsGAQUFBwMCMEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYB BQUHAgEWF2h0dHBzOi8vc2VjdGlnby5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9j cmwuc2VjdGlnby5jb20vU2VjdGlnb1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1h aWxDQS5jcmwwgYoGCCsGAQUFBwEBBH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdv LmNvbS9TZWN0aWdvUlNBQ2xpZW50QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAj BggrBgEFBQcwAYYXaHR0cDovL29jc3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5m cmFkZWFkLm9yZzANBgkqhkiG9w0BAQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQv Q/fzPXmtR9t54rpmI2TfyvcKgOXpqa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvI lSPrzIB4Z2wyIGQpaPLlYflrrVFKv9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9Ch WFfgSXvrWDZspnU3Gjw/rMHrGnqlHtlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0w hpBtXdyDjzBtQTaZJ7zTT/vlehc/tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9 IzGCBMcwggTDAgEBMIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVz dGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMT NVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEA xr4ZlmdAxAMdKFES+jupfjANBglghkgBZQMEAgEFAKCCAeswGAYJKoZIhvcNAQkDMQsGCSqGSIb3 DQEHATAcBgkqhkiG9w0BCQUxDxcNMjMwNjIwMTc1NzA4WjAvBgkqhkiG9w0BCQQxIgQgaekByI4W t/8fb2uO5EJUkkZBCx157U6gR60WK/JWQkcwgb0GCSsGAQQBgjcQBDGBrzCBrDCBljELMAkGA1UE BhMCR0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UEBxMHU2FsZm9yZDEYMBYG A1UEChMPU2VjdGlnbyBMaW1pdGVkMT4wPAYDVQQDEzVTZWN0aWdvIFJTQSBDbGllbnQgQXV0aGVu dGljYXRpb24gYW5kIFNlY3VyZSBFbWFpbCBDQQIRAMa+GZZnQMQDHShREvo7qX4wgb8GCyqGSIb3 DQEJEAILMYGvoIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVy MRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNl Y3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEAxr4Z lmdAxAMdKFES+jupfjANBgkqhkiG9w0BAQEFAASCAgBVrBRtn7z+td6ygvj/hDkYWadafOH9fFrq ODlAnNz2LzusgpIYfyQtDb7muhgyy0/6L1fw0mgrY7GSP9OHDPHLUfd5vbQgqbQbs+ngK5TIZUdu BIZHxmmNFjgjb/7kEWpXaankCn7Fl82IDVIpMFIjmCOQuK3A/klsj4F20ikSRW3jt+CSi/9Kya0J i2+Jh9H2SRvgVzoL9Xgn0eiMWTa4nULYjqzCb/Lq6u5JAsAicryt4Aj6UkNtYKb6HV8TwNc3soZt 7dSZZVh8zV7kHM8tSugcFPRIE1GDeFVPkRLgkK0cd6WmCLeR3QjLW+bJKetBim0fxVKOBKkctO5x ThkG876daMsetXW/Sj3yy8x2fNAvX27nFink7uLXw+8xf5pkqvyto44B8c0gQhQcL8igqrw8AR5d PrIDZyOk3h9qWPKahe37o0ZV8ov5xm3gUu6xSVRzSxlms5a6C4oZTQehzeTeO3LeElT1DPzwV7Gx JmEqIOnQFlXaXmaLNSS1qSHISaf0PR05GhrLr9eVvtp2xfew8Qdn2LXHy+GBMV6jk5Lz2bu6Zue0 lxg/CnCqYqzh6Mg5u16NTMy4Uy1NT5Qrl1vLLVJSVQtu9XMGQMnIf+3rA06uJhsuUQ2+H+UV3MQP Wmxf+FAS3tMSipFN3PbxBbADTI5qUo7MrGytEXcCIAAAAAAAAA== --=-i3NJaGKa1v0mTNXRTTxN-- From xen-devel-bounces@lists.xenproject.org Tue Jun 20 17:57:48 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 20 Jun 2023 17:57:48 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552177.862107 (Exim 4.92) (envelope-from ) id 1qBfbv-0002HN-V7; Tue, 20 Jun 2023 17:57:47 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552177.862107; Tue, 20 Jun 2023 17:57:47 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBfbv-0002HG-SD; Tue, 20 Jun 2023 17:57:47 +0000 Received: by outflank-mailman (input) for mailman id 552177; Tue, 20 Jun 2023 17:57:46 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBfbt-0001tF-OI for xen-devel@lists.xenproject.org; Tue, 20 Jun 2023 17:57:46 +0000 Received: from mga11.intel.com (mga11.intel.com [192.55.52.93]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id f325bdc9-0f93-11ee-b234-6b7b168915f2; Tue, 20 Jun 2023 19:57:42 +0200 (CEST) Received: from fmsmga004.fm.intel.com ([10.253.24.48]) by fmsmga102.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 20 Jun 2023 10:57:40 -0700 Received: from fmsmsx603.amr.corp.intel.com ([10.18.126.83]) by fmsmga004.fm.intel.com with ESMTP; 20 Jun 2023 10:57:40 -0700 Received: from fmsmsx611.amr.corp.intel.com (10.18.126.91) by fmsmsx603.amr.corp.intel.com (10.18.126.83) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Tue, 20 Jun 2023 10:57:39 -0700 Received: from fmsmsx610.amr.corp.intel.com (10.18.126.90) by fmsmsx611.amr.corp.intel.com (10.18.126.91) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Tue, 20 Jun 2023 10:57:39 -0700 Received: from fmsedg602.ED.cps.intel.com (10.1.192.136) by fmsmsx610.amr.corp.intel.com (10.18.126.90) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23 via Frontend Transport; Tue, 20 Jun 2023 10:57:39 -0700 Received: from NAM12-MW2-obe.outbound.protection.outlook.com (104.47.66.47) by edgegateway.intel.com (192.55.55.71) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2507.23; Tue, 20 Jun 2023 10:57:39 -0700 Received: from PH8PR11MB6879.namprd11.prod.outlook.com (2603:10b6:510:229::22) by DM6PR11MB4609.namprd11.prod.outlook.com (2603:10b6:5:28f::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.21; Tue, 20 Jun 2023 17:57:36 +0000 Received: from PH8PR11MB6879.namprd11.prod.outlook.com ([fe80::b33c:de68:eacf:e9c4]) by PH8PR11MB6879.namprd11.prod.outlook.com ([fe80::b33c:de68:eacf:e9c4%3]) with mapi id 15.20.6500.036; Tue, 20 Jun 2023 17:57:36 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: f325bdc9-0f93-11ee-b234-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1687283862; x=1718819862; h=message-id:date:subject:to:cc:references:from: in-reply-to:content-transfer-encoding:mime-version; bh=zfhxFR+u9DXtsylv8N1rbQmLpUbuDP/eX/s4PpmdRrY=; b=PBMJRBILezagtbRilkL3UbSpBmNDhARkSPkx0QncGW6KI+JdbjHlEZyu i+rbzCRk1PxvIX4a0rZPj9hiJukkdWOO0/ppa5Ikyhn1RcIIySYRgq4x0 FnC4WEGcwssrUNTbXwrtRLud31+PgM+8s7NirmdYNmC7vbtspmvsOr+bJ yEe7jbEC/tBst8X3YaddCj0EAE2WogsZb51Qb10rDVQiELBca6dL6i234 CAhqB6AZLYkDANnAspdXAWmCSvOBDmHP/hB1M4LI9ANAC3p2wzv2ZsnQY WtfnCz6YRrpPobXnFE0HNYY5FDkZfVyvMTyXhXNYerf+/astYJI0hxtvQ w==; X-IronPort-AV: E=McAfee;i="6600,9927,10747"; a="357433891" X-IronPort-AV: E=Sophos;i="6.00,257,1681196400"; d="scan'208";a="357433891" X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10747"; a="784175624" X-IronPort-AV: E=Sophos;i="6.00,257,1681196400"; d="scan'208";a="784175624" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=obvy90PGtClivngwXVZNUS1TIF40NhnkGbwTmgsKsl14K8jgMe4cRqJiZkYTGXaeToX2fKNxJu0oF2EGW7B1sO2grJHWWWxtr+qVQ+fxV8icgx55pQ9tenjhVcm+S5XRd9a076AFcocgUHstdQYC7QkFQkdelybpymJCh7WfiaiKfxxSSN6K9FaRn8erpR5q8YyzmcovcYAeFbyiR1imL9IU4pFA0rbFuDzb6JTl0o14rxw5HKc2njf29tchbdrfdNRM5oF3ShB9DRuGEMycyYt4JPCcUtn925BQrXAMY8elDBPdhnI10HQvWRadb4/5kc7JrMCrJ1IBPS3c5exMtA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=OlA7FfOuzu0kwMR4LXeLlfNWat6nZWOtwSG4jxrJlwE=; b=lBEYe0rPwp5VC/C6Psw9+ScalE9/EM/+gJAFogS39l7Vn0mX0GV4uswrqBRHQxf+6KYCeYESrMoYFZ80b+1Vkv5+12nwLcyDzCJJiZHZP8p1uUCLul2NDhBSP9DKp9Ph6SF2PCS2t8WKbjoNoqqtNKGDHuu65wAou7hMBBNvV9H25SaN5DXTJKKX9xZ4S7CIhhq0ijXwU0+Nd7tLCeWb/WQH5O17EvLUocEi6j4vGVy7TEnaW0UPVRvVYBYiKL0JDmxJ6UPg0X+UgMGOFns9t3+mlNhYFmeu5c6H+FzquMYTl/Dr+zz25BEOVndNInXTEcfEV80nch5R7zkzdwulMw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com; dkim=pass header.d=intel.com; arc=none Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=intel.com; Message-ID: <3aa645b0-ca8d-f292-fb60-46d3e35ace14@intel.com> Date: Tue, 20 Jun 2023 10:57:33 -0700 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.10.0 Subject: Re: [QEMU PATCH 1/1] virtgpu: do not destroy resources when guest suspend Content-Language: en-US To: Robert Beckett , Gerd Hoffmann , "Chen, Jiqian" CC: =?UTF-8?Q?Marc-Andr=c3=a9_Lureau?= , "Damien Hedde" , "Michael S . Tsirkin" , Stefano Stabellini , Anthony PERARD , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Jan Beulich , "Dr . David Alan Gilbert" , "qemu-devel@nongnu.org" , "xen-devel@lists.xenproject.org" , "Deucher, Alexander" , "Koenig, Christian" , "Hildebrand, Stewart" , Xenia Ragiadakou , "Huang, Honglei1" , "Zhang, Julia" , "Huang, Ray" References: <20230608025655.1674357-1-Jiqian.Chen@amd.com> <20230608025655.1674357-2-Jiqian.Chen@amd.com> <2164ff79-aa09-d959-cc61-c7a2a21db5e3@collabora.com> From: "Kim, Dongwon" In-Reply-To: <2164ff79-aa09-d959-cc61-c7a2a21db5e3@collabora.com> Content-Type: text/plain; charset="UTF-8"; format=flowed Content-Transfer-Encoding: 8bit X-ClientProxiedBy: SJ0PR13CA0092.namprd13.prod.outlook.com (2603:10b6:a03:2c5::7) To PH8PR11MB6879.namprd11.prod.outlook.com (2603:10b6:510:229::22) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: PH8PR11MB6879:EE_|DM6PR11MB4609:EE_ X-MS-Office365-Filtering-Correlation-Id: bfdf4b58-790b-4a10-051c-08db71b7d465 X-LD-Processed: 46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: YEL0wTHAHmaET/pjqboXbYlOcYvAPzd/bT3LvDl2OupFnHiq1l5A39Wd49DyUsOUtjWS1SViN5Hp9hb9YUoLRC80t5CZMxwKAdkTth0awgdhTxY0civ2F+M1sCS+lwOr4Lg2AuSPHdrwmxqoY8usCSQUNobgtHdNT3ec6hjSZ2ml9S0GQoIpHUpJbeH+suEeMIxALm6Bk6TxUQ2UuK1+ONQAt2X+5tMGdzzWi6Z8P3JT9L1bUvEcEs89AR83L4fWaNtsogp1b5Z3zEqexRJtlVYgm1+z7NDrr6EMvgaAc5MDW/HOCKdC6Lt3UToubUaF+cZXws3uOKl/RTXi/dvrw75I0VOU8Co+iAYfv5j/2fcx1s/iZK+RpPj2Ys0/BcTKnFAW7VPFDiN6koVNyHxCSbjgyBdA90dNubxFeahfIxWcHt8QxWCBoR/tliT8pD5XMjawdAH58eWU+7EGIm3gLsbdeqZ8alDXDUozqFWE4qLRny5XwTsDNroN1kZgSSsNkRH85nMGJmXkAHFljP3MnSA3pNMHLkpnV97se1Z2kMXTJYQTdPwDfpSZLa1V1tz+IcPP5mGKAYgspcxaahU65scZc1mu1WnkntUHQPbR4FWUKHhhnCqFw8X1WLvB6Naxza1cnM8qfRrUrdVyBCWh8A== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:PH8PR11MB6879.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(396003)(136003)(376002)(346002)(366004)(39860400002)(451199021)(31686004)(53546011)(36756003)(5660300002)(7416002)(66476007)(8936002)(8676002)(41300700001)(86362001)(66556008)(38100700002)(316002)(31696002)(82960400001)(4326008)(66946007)(6486002)(6512007)(26005)(6506007)(186003)(2616005)(15650500001)(2906002)(478600001)(110136005)(54906003)(83380400001)(6666004)(43740500002)(45980500001);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?UzVxZmkzbG85QURiTGFpemUwTXByUjZ4M1lOd0hycVZuQ25pZ2NYVUtMd0JX?= =?utf-8?B?bjc4UGxYNzlYaWx3anVBMFh4TWxUODF6ajAybk5COXIyanN5S2FUM0tpOG9G?= =?utf-8?B?QnlDSlgvYlAyQ1haWHdPRUw5QUxQTVBvR1lMWUFYRnJqUk1xMGxHUlQ1UW1q?= =?utf-8?B?R2pWcmdJYUhLTTBYYVZFVDhaRi9Ob0VlaExsc0lmYU56TVNnVEg5dG1FSkRK?= =?utf-8?B?eTdYcmtJaFlScSswWFVpN1Z5cURCNFMxWm9ZRHIvendxTlVHSU1WQVlkeXlO?= =?utf-8?B?S28ySGJ3aXFjRXVjVVpOTG5uK0VlZ1hmL0hoUk9DNzFvQk56bWVwaDJBUFNE?= =?utf-8?B?M0lPQ3F4bUxRYVNNeEhqVUtvQ2x6Y04wK09CMVY3OHEvczQ5clljNjl2UzV2?= =?utf-8?B?bmRIcFQ5ajEzT0R4OEdLSU4rdjQ1cVVHTVVUWlJBaWxIU1pKeG1tWDRMMW1G?= =?utf-8?B?WHB2MjhDemRNU2p6bGpML1VoUGVRcEFZMlJOV0pEdklmb0I5eVhRWlRveTFy?= =?utf-8?B?WFYzTE9aTHBDdEVHdHhGdFJQRnRYenUxRkdMbHhMSXpJMHV3SDZHM0cwSC9l?= =?utf-8?B?N05TR1ZTZVpFaDBlYmVleVNsOVNqSGs2V093Y3RRcHhFb3ExK28yY0RhU2hz?= =?utf-8?B?NEkzUGdaSk9hdE9EU05vWnkzaFQ5eDl5RzdFZ2lTSHRVTGVSUDZVQS9rL0ZK?= =?utf-8?B?YU94MkNKL2lzMlZzWG1qTmFhTmlMTWdIRTFPSmlWdzgxRnQ0ek9lS09NNUs2?= =?utf-8?B?NGc1clkzcitMSmM3RG9yWWN0dExHWlUvVFYrcUpnb1pFOFRJL0tLSWxTSVNU?= =?utf-8?B?cXNJeVltcFZsMDYrb0lXdTR4WkUvRkxWUU1mRGpMbXlsbWdaczJ3cG1XREVK?= =?utf-8?B?MHM3RTNXcDdJRHdTSUlnUEVOK1hGMGpqT1g0ZC9QbnZTd1FMcFJqQmQ0anNC?= =?utf-8?B?aUpaSUJoSVExbUNlTmREZytWeHdyVWpabHhyQk0rNisxcFBIY1hpSWIzWTBV?= =?utf-8?B?VG81U0FRSTZ4dkVMUm1VTncrWkFMVXBZYkN0MmZtU0VjVkhLSFdQcEhRd2pK?= =?utf-8?B?NzIzeDRDcGRjQzl2bUJ4WlVILzBvNEJ3MExRc01xSExYYWhzcU1OT3JHamRn?= =?utf-8?B?TzgwZHkrMzJJaDFlMDVGd0dVcVhKem9WK3pNT0JtOG4rZS9DR1NIV1pEWHY0?= =?utf-8?B?YXMxaXRMSHJLVDBOZGZEY1BFaFZyNVpSZkxXRlFmcGZYb0xHZzFmeHE4SzAv?= =?utf-8?B?U0dwdTJ4cXBpeDBVOGpvdjRzUFBPdlhwWGNCRlNETHpJd1YrbFkxZnpwaG1N?= =?utf-8?B?QWF0UDR0cU4vZ1FET2RQMDkwQVl1K1g2enBBbEJ4Myt4L2dXN0d5WHFkVmpF?= =?utf-8?B?RjdsbjhJLzhuVWloWHhNNGgxV0RKQkJKclZYVjdZMHhsR3ZoY0ZLVHFaNFJ3?= =?utf-8?B?U0RreXh3Y3dpa05taFF6WnZIemlYbFU3SUpINmh1UTJNdGJQcjZsK1FUVUIy?= =?utf-8?B?bTJabmxwUEZ0YjRlSEJlcUthbVpUbzByU3d2Y0pkUjB1L25nMW9ZQ2ZYY0JM?= =?utf-8?B?U1krNERCOXJRWGhkYkVEZFhNOXdKQlBPcWtwaGlHZ2UxbW1IT3czM2VXVXlp?= =?utf-8?B?MnB6eENlbzFqYk56M2p0MlZXR3VZSEoyTnVvcjZHZ2ZDYmFwM09BRFB0VGpz?= =?utf-8?B?VjRNNStCZHJWbkpIOTU1bmtkQUhqWVJuMHVzd1hjSnlTVWplZWVFU2l6ZkVE?= =?utf-8?B?dDRqYWNrUVJ0VG5obXhqNUVwdW15UDMxSUxRNXVYNjV6dlpYdTQzYUtQRTJx?= =?utf-8?B?MTdxRmpjZVRKanBEYXFWS3VZakpWeDBzK1p2eEFYQ0N5MURlNkVVeXdsOUZp?= =?utf-8?B?S2JXMlNuVWVtMEp6MU9QWG5QT2ZUVnBVQTdzbTlRbEZFRVdia2RKVlk1NkV4?= =?utf-8?B?U2s5QmRaZ3ZQOGlBT3ZOd1ZweTlTclF5SjhpU0FmZkViYnl3TG9JN0VIOXhh?= =?utf-8?B?Z3JvTVVycG5TM1FwZkk1dit1dDhaQVdTYTVvNnJhcCsvZFRHbkp3c24vLzZD?= =?utf-8?B?dVFSVVpRWW82Z1c1eXd6dDQ1bC9yUjlqSVVhaHJ0YklJRUNGYm9ja21aQlRi?= =?utf-8?Q?C+CZjGw9kVqjJSTa2ecO0IFVO?= X-MS-Exchange-CrossTenant-Network-Message-Id: bfdf4b58-790b-4a10-051c-08db71b7d465 X-MS-Exchange-CrossTenant-AuthSource: PH8PR11MB6879.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Jun 2023 17:57:36.0958 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 46c98d88-e344-4ed4-8496-4ed7712e255d X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: LjRti/PPa4tk5iWuRYtpUbLwlQQIDtVPlgkMYYAgAdlg5YYNMoc61PrqfDB1FMQ+9pEoA5QuBxt+Ej99TMeiPg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR11MB4609 X-OriginatorOrg: intel.com Hello, I just came across this discussion regarding s3/s4 support in virtio-gpu driver and QEMU. We saw similar problem a while ago (QEMU deletes all objects upon suspension) and came up with an experimental solution that is basically making virtio-gpu driver to do object creation for all existing resources once VM is resumed so that he QEMU recreate them. This method has worked pretty well on our case. I submitted patches for this to dri-devel a while ago. [RFC PATCH 0/2] drm/virtio:virtio-gpu driver freeze-and-restore implementation (lists.freedesktop.org) This is kernel driver only solution. Nothing has to be changed in QEMU. Jiqian and other reviewers, can you check this old solution we suggested as well? On 6/20/2023 5:26 AM, Robert Beckett wrote: > > On 20/06/2023 10:41, Gerd Hoffmann wrote: >>    Hi, >> >>>> The guest driver should be able to restore resources after resume. >>> Thank you for your suggestion! >>> As far as I know, resources are created on host side and guest has >>> no backup, if resources are destroyed, guest can't restore them. >>> Or do you mean guest driver need to send commands to re-create >>> resources after resume? >> The later.  The guest driver knows which resources it has created, >> it can restore them after suspend. > > > Are you sure that this is viable? > > How would you propose that a guest kernel could reproduce a resource, > including pixel data upload during a resume? > > The kernel would not have any of the pixel data to transfer to host. > This is normally achieved by guest apps calling GL calls and mesa > asking the kernel to create the textures with the given data (often > read from a file). > If your suggestion is to get the userland application to do it, that > would entirely break how suspend/resume is meant to happen. It should > be transparent to userland applications for the most part. > > Could you explain how you anticipate the guest being able to reproduce > the resources please? > > >> >>> If so, I have some questions. Can guest re-create resources by using >>> object(virtio_vpu_object) or others? Can the new resources replace the >>> destroyed resources to continue the suspended display tasks after >>> resume? >> Any display scanout information will be gone too, the guest driver needs >> re-create this too (after re-creating the resources). >> >> take care, >>    Gerd >> > From xen-devel-bounces@lists.xenproject.org Tue Jun 20 17:58:51 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 20 Jun 2023 17:58:51 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552190.862116 (Exim 4.92) (envelope-from ) id 1qBfcr-00031G-Cg; Tue, 20 Jun 2023 17:58:45 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552190.862116; Tue, 20 Jun 2023 17:58:45 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBfcr-000319-AA; Tue, 20 Jun 2023 17:58:45 +0000 Received: by outflank-mailman (input) for mailman id 552190; Tue, 20 Jun 2023 17:58:44 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBfcq-00030v-2g for xen-devel@lists.xenproject.org; Tue, 20 Jun 2023 17:58:44 +0000 Received: from esa3.hc3370-68.iphmx.com (esa3.hc3370-68.iphmx.com [216.71.145.155]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 16048270-0f94-11ee-8611-37d641c3527e; Tue, 20 Jun 2023 19:58:41 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 16048270-0f94-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1687283921; h=from:to:cc:subject:date:message-id:mime-version: content-transfer-encoding; bh=R1S3QB8hL1l2bG8BaIFgqjepsm8Ot1LOvm8engXmJtI=; b=YKyIQog78DjjPuU4w2Hbp838UCDPPZ50Hn9wPonCIU1dJkrvedKfoUm1 3ji5oJcSuuyApTRrWNibaitlDarMvGM0OcEMcYs8owXskU81GepRhYRGb Y85CYJqKS9lPVNF2t+/hyxJSizdMhRUwigXhOYp1hS2/2asO4kCl/6nml M=; Authentication-Results: esa3.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none X-SBRS: 4.0 X-MesageID: 113529525 X-Ironport-Server: esa3.hc3370-68.iphmx.com X-Remote-IP: 162.221.156.123 X-Policy: $RELAYED IronPort-Data: A9a23:VfaQh6KSWgjf0KyQFE+RNpUlxSXFcZb7ZxGr2PjKsXjdYENS3mMFm zMdCmmAOf/bamamKdBzPozipBwEu5/QzN5qSFFlqX01Q3x08seUXt7xwmUcnc+xBpaaEB84t ZV2hv3odp1coqr0/0/1WlTZhSAgk/rOHvykU7Ss1hlZHWdMUD0mhQ9oh9k3i4tphcnRKw6Ws Jb5rta31GWNglaYCUpKrfrbwP9TlK6q4mhA4AZmPaojUGL2zBH5MrpOfcldEFOgKmVkNrbSb /rOyri/4lTY838FYj9yuu+mGqGiaue60Tmm0hK6aYD76vRxjnVaPpIAHOgdcS9qZwChxLid/ jnvWauYEm/FNoWU8AgUvoIx/ytWZcWq85efSZSzXFD6I+QrvBIAzt03ZHzaM7H09c5YUGUSy NxHLgktf0ymp+aQmLO1btRV05FLwMnDZOvzu1llxDDdS/0nXYrCU+PB4towMDUY354UW6yEP oxANGQpNU6bC/FMEg5/5JYWteGknHTgNRZfr0qYv/Ef6GnP1g1hlrPqNbI5f/TTHJ4IxBfF/ D+uE2LRHC0iEY2E0ji+4F3z29ThgwHUSZIDG+jtnhJtqALKnTFCYPEMbnOrrP/8hkOgVtZ3L 00P5jFovaU07FasTNT2Q1u/unHsljw2VsdUEuY6wBqQ0aeS6AGcbkAfVSJIYtEisM4wRBQp2 0WPktevAiZg2JWKTVqN+7HSqim9UQAXMGsDaCksXQYDpd75r+kbsBXLSdpyFb+vuff8Ezrw3 jOioTA3gvMYistj/6+250zdijSg4J3AVBco5x7/V3igqAh+YeaYi5eAsAaBq6wadcDAEwfH5 SJf8ySD0AwQJb7ckHCwYLoLJZG4u9OlNBuEgFBLIqB0olxB5EWfkZBsDCBWfRk5bZxUI2WwO yc/qisKusYNYSLCgbtfJtvoVp90lfWI+cHNDKi8UzZYXnRmmOZrFglKbFXY4W3imVNEfUoXa cbCKpbE4Zr35M1aINuKqwQ1i+VDKtgWnz+7eHwC503PPUCiTHCUU6wZF1CFc/o06qiJyC2Mr YYAbprblkUPDbGgCsUyzWL1BQpXRZTcLcqsw/G7i8bZelY2cI3fI6K5LUwdl3xNwP0Oy7agE oCVUU5E0lvv7UAr2i3TAk2PnIjHBM4lxVpiZHxEALpd8yR7CWpZxPtFJsRfkHhO3LAL8MOYu NFfKpnaXqQRFGWvFvZ0RcCVkbGOvS+D3WqmVxdJqhBkF3K8b2QlIuPZQzY= IronPort-HdrOrdr: A9a23:oQB9KqkfZy5GXlpuc99rRQ36SdbpDfIf3DAbv31ZSRFFG/Fwwf re5cjztCWE7Qr4Ohkb8+xoXZPsfZqyz/JICOUqUotKPzOW2ldATrsD0WK4+UyHJ8SWzIc0vp uIFZIRNDSaNykYsS+V2miF+3lL+qj+zEgF792uq0uE7GtRGsZd0zs= X-Talos-CUID: 9a23:r6iqpWH2TjIaw+ljqmJIpUpIJ+B6dET93Sv1A0ueUWdnbICsHAo= X-Talos-MUID: 9a23:18jn6Asr1MwpS6lPMc2nmg1aEZZz+KaVGm9SzK4opeurJDxhNGLI X-IronPort-AV: E=Sophos;i="6.00,257,1681185600"; d="scan'208";a="113529525" From: Andrew Cooper To: Xen-devel CC: Andrew Cooper , Jan Beulich , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Wei Liu , Stefano Stabellini , Julien Grall , Volodymyr Babchuk , Bertrand Marquis Subject: [PATCH] xen/decompress: Drop bool_t and use bool instead Date: Tue, 20 Jun 2023 18:58:35 +0100 Message-ID: <20230620175835.3908246-1-andrew.cooper3@citrix.com> X-Mailer: git-send-email 2.30.2 MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit In particular, the libxg wrapper for unxz.c uses char for bool_t which is a major antipattern. Luckily the code doesn't suffer from truncated values. No functional change. Signed-off-by: Andrew Cooper --- CC: Jan Beulich CC: Roger Pau Monné CC: Wei Liu CC: Stefano Stabellini CC: Julien Grall CC: Volodymyr Babchuk CC: Bertrand Marquis --- .../libs/guest/xg_dom_decompress_unsafe_xz.c | 1 - xen/common/unxz.c | 2 +- xen/common/xz/dec_bcj.c | 6 +++--- xen/common/xz/dec_lzma2.c | 20 +++++++++---------- xen/common/xz/dec_stream.c | 8 ++++---- xen/common/xz/lzma2.h | 2 +- xen/common/xz/private.h | 2 +- 7 files changed, 20 insertions(+), 21 deletions(-) diff --git a/tools/libs/guest/xg_dom_decompress_unsafe_xz.c b/tools/libs/guest/xg_dom_decompress_unsafe_xz.c index fc4819874111..80eed912dd68 100644 --- a/tools/libs/guest/xg_dom_decompress_unsafe_xz.c +++ b/tools/libs/guest/xg_dom_decompress_unsafe_xz.c @@ -11,7 +11,6 @@ // TODO #define XZ_DEC_X86 -typedef char bool_t; typedef uint8_t u8; typedef uint16_t u16; typedef uint32_t u32; diff --git a/xen/common/unxz.c b/xen/common/unxz.c index 17aead0adfe6..9586a4e5c94f 100644 --- a/xen/common/unxz.c +++ b/xen/common/unxz.c @@ -166,7 +166,7 @@ int __init unxz(unsigned char *in, unsigned int in_size, struct xz_buf b; struct xz_dec *s; enum xz_ret ret; - bool_t must_free_in = false; + bool must_free_in = false; xz_crc32_init(); diff --git a/xen/common/xz/dec_bcj.c b/xen/common/xz/dec_bcj.c index bfa498587ab8..bdc59770f8a6 100644 --- a/xen/common/xz/dec_bcj.c +++ b/xen/common/xz/dec_bcj.c @@ -35,7 +35,7 @@ struct xz_dec_bcj { enum xz_ret ret; /* True if we are operating in single-call mode. */ - bool_t single_call; + bool single_call; /* * Absolute position relative to the beginning of the uncompressed @@ -87,7 +87,7 @@ static inline int __init bcj_x86_test_msbyte(uint8_t b) static size_t __init bcj_x86(struct xz_dec_bcj *s, uint8_t *buf, size_t size) { - static const bool_t mask_to_allowed_status[8] + static const bool mask_to_allowed_status[8] = { true, true, true, false, true, false, false, false }; static const uint8_t mask_to_bit_num[8] = { 0, 1, 2, 2, 3, 3, 3, 3 }; @@ -524,7 +524,7 @@ XZ_EXTERN enum xz_ret __init xz_dec_bcj_run(struct xz_dec_bcj *s, return s->ret; } -XZ_EXTERN struct xz_dec_bcj *__init xz_dec_bcj_create(bool_t single_call) +XZ_EXTERN struct xz_dec_bcj *__init xz_dec_bcj_create(bool single_call) { struct xz_dec_bcj *s = malloc(sizeof(*s)); if (s != NULL) diff --git a/xen/common/xz/dec_lzma2.c b/xen/common/xz/dec_lzma2.c index f80d8309f4c3..71359fab9f60 100644 --- a/xen/common/xz/dec_lzma2.c +++ b/xen/common/xz/dec_lzma2.c @@ -241,13 +241,13 @@ struct lzma2_dec { * True if dictionary reset is needed. This is false before * the first chunk (LZMA or uncompressed). */ - bool_t need_dict_reset; + bool need_dict_reset; /* * True if new LZMA properties are needed. This is false * before the first LZMA chunk. */ - bool_t need_props; + bool need_props; }; struct xz_dec_lzma2 { @@ -306,7 +306,7 @@ static void __init dict_limit(struct dictionary *dict, size_t out_max) } /* Return true if at least one byte can be written into the dictionary. */ -static inline bool_t __init dict_has_space(const struct dictionary *dict) +static inline bool __init dict_has_space(const struct dictionary *dict) { return dict->pos < dict->limit; } @@ -343,7 +343,7 @@ static inline void __init dict_put(struct dictionary *dict, uint8_t byte) * invalid, false is returned. On success, true is returned and *len is * updated to indicate how many bytes were left to be repeated. */ -static bool_t __init dict_repeat(struct dictionary *dict, uint32_t *len, uint32_t dist) +static bool __init dict_repeat(struct dictionary *dict, uint32_t *len, uint32_t dist) { size_t back; uint32_t left; @@ -463,7 +463,7 @@ static void __init rc_reset(struct rc_dec *rc) * Read the first five initial bytes into rc->code if they haven't been * read already. (Yes, the first byte gets completely ignored.) */ -static bool_t __init rc_read_init(struct rc_dec *rc, struct xz_buf *b) +static bool __init rc_read_init(struct rc_dec *rc, struct xz_buf *b) { while (rc->init_bytes_left > 0) { if (b->in_pos == b->in_size) @@ -477,7 +477,7 @@ static bool_t __init rc_read_init(struct rc_dec *rc, struct xz_buf *b) } /* Return true if there may not be enough input for the next decoding loop. */ -static inline bool_t __init rc_limit_exceeded(const struct rc_dec *rc) +static inline bool __init rc_limit_exceeded(const struct rc_dec *rc) { return rc->in_pos > rc->in_limit; } @@ -486,7 +486,7 @@ static inline bool_t __init rc_limit_exceeded(const struct rc_dec *rc) * Return true if it is possible (from point of view of range decoder) that * we have reached the end of the LZMA chunk. */ -static inline bool_t __init rc_is_finished(const struct rc_dec *rc) +static inline bool __init rc_is_finished(const struct rc_dec *rc) { return rc->code == 0; } @@ -736,7 +736,7 @@ static void __init lzma_rep_match(struct xz_dec_lzma2 *s, uint32_t pos_state) } /* LZMA decoder core */ -static bool_t __init lzma_main(struct xz_dec_lzma2 *s) +static bool __init lzma_main(struct xz_dec_lzma2 *s) { uint32_t pos_state; @@ -814,7 +814,7 @@ static void __init lzma_reset(struct xz_dec_lzma2 *s) * from the decoded lp and pb values. On success, the LZMA decoder state is * reset and true is returned. */ -static bool_t __init lzma_props(struct xz_dec_lzma2 *s, uint8_t props) +static bool __init lzma_props(struct xz_dec_lzma2 *s, uint8_t props) { if (props > (4 * 5 + 4) * 9 + 8) return false; @@ -861,7 +861,7 @@ static bool_t __init lzma_props(struct xz_dec_lzma2 *s, uint8_t props) * function. We decode a few bytes from the temporary buffer so that we can * continue decoding from the caller-supplied input buffer again. */ -static bool_t __init lzma2_lzma(struct xz_dec_lzma2 *s, struct xz_buf *b) +static bool __init lzma2_lzma(struct xz_dec_lzma2 *s, struct xz_buf *b) { size_t in_avail; uint32_t tmp; diff --git a/xen/common/xz/dec_stream.c b/xen/common/xz/dec_stream.c index b91d8362c19c..caea4f2596a1 100644 --- a/xen/common/xz/dec_stream.c +++ b/xen/common/xz/dec_stream.c @@ -55,7 +55,7 @@ struct xz_dec { * True if the next call to xz_dec_run() is allowed to return * XZ_BUF_ERROR. */ - bool_t allow_buf_error; + bool allow_buf_error; /* Information stored in Block Header */ struct { @@ -132,7 +132,7 @@ struct xz_dec { #ifdef XZ_DEC_BCJ struct xz_dec_bcj *bcj; - bool_t bcj_active; + bool bcj_active; #endif }; @@ -154,7 +154,7 @@ static const uint8_t check_sizes[16] = { * to copy into s->temp.buf. Return true once s->temp.pos has reached * s->temp.size. */ -static bool_t __init fill_temp(struct xz_dec *s, struct xz_buf *b) +static bool __init fill_temp(struct xz_dec *s, struct xz_buf *b) { size_t copy_size = min_t(size_t, b->in_size - b->in_pos, s->temp.size - s->temp.pos); @@ -367,7 +367,7 @@ static enum xz_ret __init crc32_validate(struct xz_dec *s, struct xz_buf *b) * Skip over the Check field when the Check ID is not supported. * Returns true once the whole Check field has been skipped over. */ -static bool_t __init check_skip(struct xz_dec *s, struct xz_buf *b) +static bool __init check_skip(struct xz_dec *s, struct xz_buf *b) { while (s->pos < check_sizes[s->check_type]) { if (b->in_pos == b->in_size) diff --git a/xen/common/xz/lzma2.h b/xen/common/xz/lzma2.h index e0ef42e880a0..06a7edb4d720 100644 --- a/xen/common/xz/lzma2.h +++ b/xen/common/xz/lzma2.h @@ -90,7 +90,7 @@ static inline void __init lzma_state_short_rep(enum lzma_state *state) } /* Test if the previous symbol was a literal. */ -static inline bool_t __init lzma_state_is_literal(enum lzma_state state) +static inline bool __init lzma_state_is_literal(enum lzma_state state) { return state < LIT_STATES; } diff --git a/xen/common/xz/private.h b/xen/common/xz/private.h index 511343fcc234..e6814250e84f 100644 --- a/xen/common/xz/private.h +++ b/xen/common/xz/private.h @@ -237,7 +237,7 @@ XZ_EXTERN void xz_dec_lzma2_end(struct xz_dec_lzma2 *s); * Allocate memory for BCJ decoders. xz_dec_bcj_reset() must be used before * calling xz_dec_bcj_run(). */ -XZ_EXTERN struct xz_dec_bcj *xz_dec_bcj_create(bool_t single_call); +XZ_EXTERN struct xz_dec_bcj *xz_dec_bcj_create(bool single_call); /* * Decode the Filter ID of a BCJ filter. This implementation doesn't -- 2.30.2 From xen-devel-bounces@lists.xenproject.org Tue Jun 20 17:59:08 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 20 Jun 2023 17:59:08 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552192.862127 (Exim 4.92) (envelope-from ) id 1qBfdE-0003V3-Lf; Tue, 20 Jun 2023 17:59:08 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552192.862127; Tue, 20 Jun 2023 17:59:08 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBfdE-0003Uw-Id; Tue, 20 Jun 2023 17:59:08 +0000 Received: by outflank-mailman (input) for mailman id 552192; Tue, 20 Jun 2023 17:59:07 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBfdD-00030v-Ee for xen-devel@lists.xenproject.org; Tue, 20 Jun 2023 17:59:07 +0000 Received: from casper.infradead.org (casper.infradead.org [2001:8b0:10b:1236::1]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 22d269ce-0f94-11ee-8611-37d641c3527e; Tue, 20 Jun 2023 19:59:04 +0200 (CEST) Received: from [2001:8b0:10b:5:f26b:798c:7de3:5106] (helo=u3832b3a9db3152.ant.amazon.com) by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux)) id 1qBfd2-00DNGy-1q; Tue, 20 Jun 2023 17:58:56 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 22d269ce-0f94-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=casper.20170209; h=MIME-Version:Content-Type:References: In-Reply-To:Date:Cc:To:From:Subject:Message-ID:Sender:Reply-To: Content-Transfer-Encoding:Content-ID:Content-Description; bh=P0rw6j/526CasCXlDjY88i1DcnH89PB7+0min8yStY8=; b=ZpLlOTsOcbygS6lck1zF0UH1KD 7SjmlMugZb9keYTZLWbAHAqdyc2E862zUAcmk3+QRKEnmpQeVatOJ8mhnaG5Gt2x2Yn0M02uue5Th eIHFDzbUgdBN8bZy+AlB5tNskU5tWsvKjVrcqflIRVmYovUwlOYGVk8iWCDVZdI6x6nKfuPcy8ep3 rrM8p+0rswr4dpkm2UyLJegesLxB1x/us6NAXpNBKo8LF71YJ2L0tGViZHEM0p/Vu/04l11PjnKmE 1WU0SlNUj2AQ1/iIqNm/l/GYS8+eGQNUScPm+d8vW1rsc2DPjhPDkpIUXhHTG+KbkhsVX2cqNlVdY TspDN2Tw==; Message-ID: <20076888f6bdf06a65aafc5cf954260965d45b97.camel@infradead.org> Subject: [PATCH] hw/xen: Clarify (lack of) error handling in transaction_commit() From: David Woodhouse To: Peter Maydell Cc: qemu-devel@nongnu.org, Paolo Bonzini , Paul Durrant , Joao Martins , Ankur Arora , Stefano Stabellini , vikram.garhwal@amd.com, Anthony Perard , xen-devel@lists.xenproject.org, Juan Quintela , "Dr . David Alan Gilbert" Date: Tue, 20 Jun 2023 18:58:55 +0100 In-Reply-To: References: <20230307182707.2298618-1-dwmw2@infradead.org> <20230307182707.2298618-6-dwmw2@infradead.org> Content-Type: multipart/signed; micalg="sha-256"; protocol="application/pkcs7-signature"; boundary="=-WKeoCu8f39FjIHVazDdn" User-Agent: Evolution 3.44.4-0ubuntu1 MIME-Version: 1.0 X-SRS-Rewrite: SMTP reverse-path rewritten from by casper.infradead.org. See http://www.infradead.org/rpr.html --=-WKeoCu8f39FjIHVazDdn Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable From: David Woodhouse Coverity was unhappy (CID 1508359) because we didn't check the return of init_walk_op() in transaction_commit(), despite doing so at every other call site. Strictly speaking, this is a false positive since it can never fail. It only fails for invalid user input (transaction ID or path), and both of those are hard-coded to known sane values in this invocation. But Coverity doesn't know that, and neither does the casual reader of the code. Returning an error here would be weird, since the transaction *is* committed by this point; all the walk_op is doing is firing watches on the newly-committed changed nodes. So make it a g_assert(!ret), since it really should never happen. Signed-off-by: David Woodhouse --- hw/i386/kvm/xenstore_impl.c | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/hw/i386/kvm/xenstore_impl.c b/hw/i386/kvm/xenstore_impl.c index 305fe75519..d9732b567e 100644 --- a/hw/i386/kvm/xenstore_impl.c +++ b/hw/i386/kvm/xenstore_impl.c @@ -1022,6 +1022,7 @@ static int transaction_commit(XenstoreImplState *s, X= sTransaction *tx) { struct walk_op op; XsNode **n; + int ret; =20 if (s->root_tx !=3D tx->base_tx) { return EAGAIN; @@ -1032,7 +1033,16 @@ static int transaction_commit(XenstoreImplState *s, = XsTransaction *tx) s->root_tx =3D tx->tx_id; s->nr_nodes =3D tx->nr_nodes; =20 - init_walk_op(s, &op, XBT_NULL, tx->dom_id, "/", &n); + ret =3D init_walk_op(s, &op, XBT_NULL, tx->dom_id, "/", &n); + /* + * There are two reasons why init_walk_op() may fail: an invalid tx_id= , + * or an invalid path. We pass XBT_NULL and "/", and it cannot fail. + * If it does, the world is broken. And returning 'ret' would be weird + * because the transaction *was* committed, and all this tree walk is + * trying to do is fire the resulting watches on newly-committed nodes= . + */ + g_assert(!ret); + op.deleted_in_tx =3D false; op.mutating =3D true; =20 --=20 2.34.1 --=-WKeoCu8f39FjIHVazDdn Content-Type: application/pkcs7-signature; name="smime.p7s" Content-Disposition: attachment; filename="smime.p7s" Content-Transfer-Encoding: base64 MIAGCSqGSIb3DQEHAqCAMIACAQExDzANBglghkgBZQMEAgEFADCABgkqhkiG9w0BBwEAAKCCEkQw ggYQMIID+KADAgECAhBNlCwQ1DvglAnFgS06KwZPMA0GCSqGSIb3DQEBDAUAMIGIMQswCQYDVQQG EwJVUzETMBEGA1UECBMKTmV3IEplcnNleTEUMBIGA1UEBxMLSmVyc2V5IENpdHkxHjAcBgNVBAoT FVRoZSBVU0VSVFJVU1QgTmV0d29yazEuMCwGA1UEAxMlVVNFUlRydXN0IFJTQSBDZXJ0aWZpY2F0 aW9uIEF1dGhvcml0eTAeFw0xODExMDIwMDAwMDBaFw0zMDEyMzEyMzU5NTlaMIGWMQswCQYDVQQG EwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYD VQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50 aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC AQEAyjztlApB/975Rrno1jvm2pK/KxBOqhq8gr2+JhwpKirSzZxQgT9tlC7zl6hn1fXjSo5MqXUf ItMltrMaXqcESJuK8dtK56NCSrq4iDKaKq9NxOXFmqXX2zN8HHGjQ2b2Xv0v1L5Nk1MQPKA19xeW QcpGEGFUUd0kN+oHox+L9aV1rjfNiCj3bJk6kJaOPabPi2503nn/ITX5e8WfPnGw4VuZ79Khj1YB rf24k5Ee1sLTHsLtpiK9OjG4iQRBdq6Z/TlVx/hGAez5h36bBJMxqdHLpdwIUkTqT8se3ed0PewD ch/8kHPo5fZl5u1B0ecpq/sDN/5sCG52Ds+QU5O5EwIDAQABo4IBZDCCAWAwHwYDVR0jBBgwFoAU U3m/WqorSs9UgOHYm8Cd8rIDZsswHQYDVR0OBBYEFAnA8vwL2pTbX/4r36iZQs/J4K0AMA4GA1Ud DwEB/wQEAwIBhjASBgNVHRMBAf8ECDAGAQH/AgEAMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEF BQcDBDARBgNVHSAECjAIMAYGBFUdIAAwUAYDVR0fBEkwRzBFoEOgQYY/aHR0cDovL2NybC51c2Vy dHJ1c3QuY29tL1VTRVJUcnVzdFJTQUNlcnRpZmljYXRpb25BdXRob3JpdHkuY3JsMHYGCCsGAQUF BwEBBGowaDA/BggrBgEFBQcwAoYzaHR0cDovL2NydC51c2VydHJ1c3QuY29tL1VTRVJUcnVzdFJT QUFkZFRydXN0Q0EuY3J0MCUGCCsGAQUFBzABhhlodHRwOi8vb2NzcC51c2VydHJ1c3QuY29tMA0G CSqGSIb3DQEBDAUAA4ICAQBBRHUAqznCFfXejpVtMnFojADdF9d6HBA4kMjjsb0XMZHztuOCtKF+ xswhh2GqkW5JQrM8zVlU+A2VP72Ky2nlRA1GwmIPgou74TZ/XTarHG8zdMSgaDrkVYzz1g3nIVO9 IHk96VwsacIvBF8JfqIs+8aWH2PfSUrNxP6Ys7U0sZYx4rXD6+cqFq/ZW5BUfClN/rhk2ddQXyn7 kkmka2RQb9d90nmNHdgKrwfQ49mQ2hWQNDkJJIXwKjYA6VUR/fZUFeCUisdDe/0ABLTI+jheXUV1 eoYV7lNwNBKpeHdNuO6Aacb533JlfeUHxvBz9OfYWUiXu09sMAviM11Q0DuMZ5760CdO2VnpsXP4 KxaYIhvqPqUMWqRdWyn7crItNkZeroXaecG03i3mM7dkiPaCkgocBg0EBYsbZDZ8bsG3a08LwEsL 1Ygz3SBsyECa0waq4hOf/Z85F2w2ZpXfP+w8q4ifwO90SGZZV+HR/Jh6rEaVPDRF/CEGVqR1hiuQ OZ1YL5ezMTX0ZSLwrymUE0pwi/KDaiYB15uswgeIAcA6JzPFf9pLkAFFWs1QNyN++niFhsM47qod x/PL+5jR87myx5uYdBEQkkDc+lKB1Wct6ucXqm2EmsaQ0M95QjTmy+rDWjkDYdw3Ms6mSWE3Bn7i 5ZgtwCLXgAIe5W8mybM2JzCCBhQwggT8oAMCAQICEQDGvhmWZ0DEAx0oURL6O6l+MA0GCSqGSIb3 DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYD VQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28g UlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMB4XDTIyMDEwNzAw MDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJARYTZHdtdzJAaW5mcmFkZWFkLm9y ZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3GpC2bomUqk+91wLYBzDMcCj5C9m6 oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZHh7htyAkWYVoFsFPrwHounto8xTsy SSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT9YgcBqKCo65pTFmOnR/VVbjJk4K2 xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNjP+qDrh0db7PAjO1D4d5ftfrsf+kd RR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy2U+eITZ5LLE5s45mX2oPFknWqxBo bQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3BgBEmfsYWlBXO8rVXfvPgLs32VdV NZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/7auNVRmPB3v5SWEsH8xi4Bez2V9U KxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmdlFYhAflWKQ03Ufiu8t3iBE3VJbc2 5oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9aelIl6vtbhMA+l0nfrsORMa4kobqQ5 C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMBAAGjggHMMIIByDAfBgNVHSMEGDAW gBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeDMcimo0oz8o1R1Nver3ZVpSkwDgYD VR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYwFAYIKwYBBQUHAwQGCCsGAQUFBwMC MEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYBBQUHAgEWF2h0dHBzOi8vc2VjdGln by5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9jcmwuc2VjdGlnby5jb20vU2VjdGln b1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1haWxDQS5jcmwwgYoGCCsGAQUFBwEB BH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdvLmNvbS9TZWN0aWdvUlNBQ2xpZW50 QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAjBggrBgEFBQcwAYYXaHR0cDovL29j c3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5mcmFkZWFkLm9yZzANBgkqhkiG9w0B AQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQvQ/fzPXmtR9t54rpmI2TfyvcKgOXp qa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvIlSPrzIB4Z2wyIGQpaPLlYflrrVFK v9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9ChWFfgSXvrWDZspnU3Gjw/rMHrGnql Htlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0whpBtXdyDjzBtQTaZJ7zTT/vlehc/ tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9IzCCBhQwggT8oAMCAQICEQDGvhmW Z0DEAx0oURL6O6l+MA0GCSqGSIb3DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3Jl YXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0 ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJl IEVtYWlsIENBMB4XDTIyMDEwNzAwMDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJ ARYTZHdtdzJAaW5mcmFkZWFkLm9yZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3 GpC2bomUqk+91wLYBzDMcCj5C9m6oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZH h7htyAkWYVoFsFPrwHounto8xTsySSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT 9YgcBqKCo65pTFmOnR/VVbjJk4K2xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNj P+qDrh0db7PAjO1D4d5ftfrsf+kdRR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy 2U+eITZ5LLE5s45mX2oPFknWqxBobQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3 BgBEmfsYWlBXO8rVXfvPgLs32VdVNZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/ 7auNVRmPB3v5SWEsH8xi4Bez2V9UKxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmd lFYhAflWKQ03Ufiu8t3iBE3VJbc25oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9ae lIl6vtbhMA+l0nfrsORMa4kobqQ5C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMB AAGjggHMMIIByDAfBgNVHSMEGDAWgBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeD Mcimo0oz8o1R1Nver3ZVpSkwDgYDVR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYw FAYIKwYBBQUHAwQGCCsGAQUFBwMCMEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYB BQUHAgEWF2h0dHBzOi8vc2VjdGlnby5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9j cmwuc2VjdGlnby5jb20vU2VjdGlnb1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1h aWxDQS5jcmwwgYoGCCsGAQUFBwEBBH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdv LmNvbS9TZWN0aWdvUlNBQ2xpZW50QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAj BggrBgEFBQcwAYYXaHR0cDovL29jc3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5m cmFkZWFkLm9yZzANBgkqhkiG9w0BAQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQv Q/fzPXmtR9t54rpmI2TfyvcKgOXpqa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvI lSPrzIB4Z2wyIGQpaPLlYflrrVFKv9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9Ch WFfgSXvrWDZspnU3Gjw/rMHrGnqlHtlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0w hpBtXdyDjzBtQTaZJ7zTT/vlehc/tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9 IzGCBMcwggTDAgEBMIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVz dGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMT NVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEA xr4ZlmdAxAMdKFES+jupfjANBglghkgBZQMEAgEFAKCCAeswGAYJKoZIhvcNAQkDMQsGCSqGSIb3 DQEHATAcBgkqhkiG9w0BCQUxDxcNMjMwNjIwMTc1ODU1WjAvBgkqhkiG9w0BCQQxIgQgUT3s50st D218f4UKFIcbdotqYYTun5QfCaqnDlvhwmQwgb0GCSsGAQQBgjcQBDGBrzCBrDCBljELMAkGA1UE BhMCR0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UEBxMHU2FsZm9yZDEYMBYG A1UEChMPU2VjdGlnbyBMaW1pdGVkMT4wPAYDVQQDEzVTZWN0aWdvIFJTQSBDbGllbnQgQXV0aGVu dGljYXRpb24gYW5kIFNlY3VyZSBFbWFpbCBDQQIRAMa+GZZnQMQDHShREvo7qX4wgb8GCyqGSIb3 DQEJEAILMYGvoIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVy MRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNl Y3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEAxr4Z lmdAxAMdKFES+jupfjANBgkqhkiG9w0BAQEFAASCAgCN/iWAXvf4QDoAPjP4HyoJ4mqdkXUBep7V ZfpDyACLs9LArJmnJyRQw8YD5PXsbv7pmOvMaoLCopnU1+TyKN+14JZ/D9dVHG1eG2PrSLy1Xa5n BsxDTV7PaLF1nCwYGQBqtLEGw0f3K1ah1ufenaCdBjyG8zhAR8YP+OoLgKbu+NzDd1uNvNeD/i8b BiYARWvJWAvSeE74PBr6EfXulReDUw+prmvFqi7nMkv6r6mp5+Yfu4QhxID88mn8VNiOuwkQHopG Sb3Y8Q1KJOGHVIFeAAx6t1B08WPL8M0BoAMYlX4yFdpc9LfzG4Dj0jJb33KqlyR3sF5l9T0akhbn TLAp+Dt7PcI0jD4EJ28nccvJV/QXEjC2jRhah9VWaQv85UYhoG1SAEKYY5p8Pl9vhj7/8h2Mmndu Kb2/G1rE1yk8piJz58SftSY02R6VrtboGk0Hzo/sQcEVto11Hweax7ubJsZojmqWDE5MuYESZgNy b+l+gAHHPIsANCZLMBfsN3GorBYwuwoM8w+4ODaJwFjgV3LMW6KCNEeYPfOsj1ECzVT/SJLl37nS AEbH7p2HxyMJL7OI757AFQ1Z+xWmh8B5aDDBZ1xtyQTq0Ph+jUaz7AqVwewbM1C6uyTNa0DBtBf8 UjOM2Ek2x8XGEmBPs710+dWfnTTka3m2nqtlJrAFNAAAAAAAAA== --=-WKeoCu8f39FjIHVazDdn-- From xen-devel-bounces@lists.xenproject.org Tue Jun 20 18:13:30 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 20 Jun 2023 18:13:30 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552205.862152 (Exim 4.92) (envelope-from ) id 1qBfqv-0006Pi-DU; Tue, 20 Jun 2023 18:13:17 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552205.862152; Tue, 20 Jun 2023 18:13:17 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBfqv-0006Oq-9u; Tue, 20 Jun 2023 18:13:17 +0000 Received: by outflank-mailman (input) for mailman id 552205; Tue, 20 Jun 2023 18:13:16 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBfqu-00067X-Fm for xen-devel@lists.xenproject.org; Tue, 20 Jun 2023 18:13:16 +0000 Received: from raptorengineering.com (mail.raptorengineering.com [23.155.224.40]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 1dee4ccf-0f96-11ee-8611-37d641c3527e; Tue, 20 Jun 2023 20:13:12 +0200 (CEST) Received: from localhost (localhost [127.0.0.1]) by mail.rptsys.com (Postfix) with ESMTP id 6EA9D82859E7; Tue, 20 Jun 2023 13:13:11 -0500 (CDT) Received: from mail.rptsys.com ([127.0.0.1]) by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032) with ESMTP id 38AnmEvMLNfY; Tue, 20 Jun 2023 13:13:10 -0500 (CDT) Received: from localhost (localhost [127.0.0.1]) by mail.rptsys.com (Postfix) with ESMTP id E4D7982858A5; Tue, 20 Jun 2023 13:13:09 -0500 (CDT) Received: from mail.rptsys.com ([127.0.0.1]) by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id mu5uMGs8Cf1g; Tue, 20 Jun 2023 13:13:09 -0500 (CDT) Received: from raptor-ewks-026.lan (5.edge.rptsys.com [23.155.224.38]) by mail.rptsys.com (Postfix) with ESMTPSA id 6F94D8285961; Tue, 20 Jun 2023 13:13:09 -0500 (CDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 1dee4ccf-0f96-11ee-8611-37d641c3527e DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com E4D7982858A5 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD; t=1687284789; bh=rVt9yBHkvSuTJqNy14y8pMgN4FxatTVDACL6loAkQJw=; h=From:To:Date:Message-Id:MIME-Version; b=ZSg6R2+36jor4eGAGoaaz+SvWz6ktLoXIafOyavEwzRAlefrWrhRQUJdW7+8dVgkB carn8cyC54WZ+GixGAKi9wgkRE1rMSjQ3DmFi8WLfX4UE2GXNqYSnP7CLQDU04/glp aN+tj9OR/CJVySLrJwAqVlEieQdj4du7kTFm4bwg= X-Virus-Scanned: amavisd-new at rptsys.com From: Shawn Anastasio To: xen-devel@lists.xenproject.org Cc: tpearson@raptorengineering.com, Shawn Anastasio , Andrew Cooper , George Dunlap , Jan Beulich , Julien Grall , Stefano Stabellini , Wei Liu Subject: [PATCH v5 3/3] maintainers: Add ppc64 maintainer Date: Tue, 20 Jun 2023 13:12:49 -0500 Message-Id: <29f8ad82955a08a5a76a3edd641efd52e302074e.1687283294.git.sanastasio@raptorengineering.com> X-Mailer: git-send-email 2.30.2 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Signed-off-by: Shawn Anastasio --- MAINTAINERS | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/MAINTAINERS b/MAINTAINERS index 7a07949e1d..64c9cc89ed 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -458,6 +458,10 @@ X: xen/arch/x86/acpi/lib.c F: xen/drivers/cpufreq/ F: xen/include/acpi/cpufreq/ =20 +PPC64 +M: Shawn Anastasio +F: xen/arch/ppc/ + PUBLIC I/O INTERFACES AND PV DRIVERS DESIGNS M: Juergen Gross S: Supported --=20 2.30.2 From xen-devel-bounces@lists.xenproject.org Tue Jun 20 18:13:30 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 20 Jun 2023 18:13:30 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552204.862147 (Exim 4.92) (envelope-from ) id 1qBfqv-0006N3-6c; Tue, 20 Jun 2023 18:13:17 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552204.862147; Tue, 20 Jun 2023 18:13:17 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBfqv-0006Mw-2h; Tue, 20 Jun 2023 18:13:17 +0000 Received: by outflank-mailman (input) for mailman id 552204; Tue, 20 Jun 2023 18:13:15 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBfqt-00067X-Fh for xen-devel@lists.xenproject.org; Tue, 20 Jun 2023 18:13:15 +0000 Received: from raptorengineering.com (mail.raptorengineering.com [23.155.224.40]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 1d891862-0f96-11ee-8611-37d641c3527e; Tue, 20 Jun 2023 20:13:11 +0200 (CEST) Received: from localhost (localhost [127.0.0.1]) by mail.rptsys.com (Postfix) with ESMTP id B64F68285961; Tue, 20 Jun 2023 13:13:10 -0500 (CDT) Received: from mail.rptsys.com ([127.0.0.1]) by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032) with ESMTP id aKB1Pqco1J6z; Tue, 20 Jun 2023 13:13:09 -0500 (CDT) Received: from localhost (localhost [127.0.0.1]) by mail.rptsys.com (Postfix) with ESMTP id 5CF71828574D; Tue, 20 Jun 2023 13:13:09 -0500 (CDT) Received: from mail.rptsys.com ([127.0.0.1]) by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id O7LALMQIX8yK; Tue, 20 Jun 2023 13:13:09 -0500 (CDT) Received: from raptor-ewks-026.lan (5.edge.rptsys.com [23.155.224.38]) by mail.rptsys.com (Postfix) with ESMTPSA id E657B8285935; Tue, 20 Jun 2023 13:13:08 -0500 (CDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 1d891862-0f96-11ee-8611-37d641c3527e DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com 5CF71828574D DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD; t=1687284789; bh=+wgNL3Cvv+qmmR8NScpG5xML8HpLuiHvrktZaaL4g5I=; h=From:To:Date:Message-Id:MIME-Version; b=XIKZPn0CTfQ03U0Zpkbrp33bk/1up7MRj0OIyRz4Qv5wiFs1KaW1EQkxjlgdFHtgV D+mff8gaMMmiVQj7PMJTQLFWycYArh//piK9F3ybgZ296rTf6XgHmqwNJAAbxUSq3h ZqexmP7+kL5z/58o01GKFuf1fOQGe8X9HExy0x2Y= X-Virus-Scanned: amavisd-new at rptsys.com From: Shawn Anastasio To: xen-devel@lists.xenproject.org Cc: tpearson@raptorengineering.com, Shawn Anastasio , Doug Goldstein , Stefano Stabellini , Andrew Cooper Subject: [PATCH v5 2/3] automation: Add ppc64le cross-build jobs Date: Tue, 20 Jun 2023 13:12:48 -0500 Message-Id: <10e4a94316b62aafddf43c67f33f558e59eaa721.1687283294.git.sanastasio@raptorengineering.com> X-Mailer: git-send-email 2.30.2 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Add build jobs to cross-compile Xen for ppc64le. Signed-off-by: Shawn Anastasio Acked-by: Stefano Stabellini Acked-by: Andrew Cooper --- automation/gitlab-ci/build.yaml | 60 +++++++++++++++++++++++++++++++++ 1 file changed, 60 insertions(+) diff --git a/automation/gitlab-ci/build.yaml b/automation/gitlab-ci/build= .yaml index 420ffa5acb..bd8c7332db 100644 --- a/automation/gitlab-ci/build.yaml +++ b/automation/gitlab-ci/build.yaml @@ -183,6 +183,33 @@ variables: <<: *gcc =20 +.ppc64le-cross-build-tmpl: + <<: *build + variables: + XEN_TARGET_ARCH: ppc64 + tags: + - x86_64 + +.ppc64le-cross-build: + extends: .ppc64le-cross-build-tmpl + variables: + debug: n + +.ppc64le-cross-build-debug: + extends: .ppc64le-cross-build-tmpl + variables: + debug: y + +.gcc-ppc64le-cross-build: + extends: .ppc64le-cross-build + variables: + <<: *gcc + +.gcc-ppc64le-cross-build-debug: + extends: .ppc64le-cross-build-debug + variables: + <<: *gcc + .yocto-test: stage: build image: registry.gitlab.com/xen-project/xen/${CONTAINER} @@ -516,6 +543,39 @@ archlinux-current-gcc-riscv64-debug-randconfig: EXTRA_FIXED_RANDCONFIG: CONFIG_COVERAGE=3Dn =20 +# Power cross-build +debian-bullseye-gcc-ppc64le: + extends: .gcc-ppc64le-cross-build + variables: + CONTAINER: debian:bullseye-ppc64le + KBUILD_DEFCONFIG: openpower_defconfig + HYPERVISOR_ONLY: y + +debian-bullseye-gcc-ppc64le-debug: + extends: .gcc-ppc64le-cross-build-debug + variables: + CONTAINER: debian:bullseye-ppc64le + KBUILD_DEFCONFIG: openpower_defconfig + HYPERVISOR_ONLY: y + +debian-bullseye-gcc-ppc64le-randconfig: + extends: .gcc-ppc64le-cross-build + variables: + CONTAINER: debian:bullseye-ppc64le + KBUILD_DEFCONFIG: openpower_defconfig + RANDCONFIG: y + EXTRA_FIXED_RANDCONFIG: + CONFIG_COVERAGE=3Dn + +debian-bullseye-gcc-ppc64le-debug-randconfig: + extends: .gcc-ppc64le-cross-build-debug + variables: + CONTAINER: debian:bullseye-ppc64le + KBUILD_DEFCONFIG: openpower_defconfig + RANDCONFIG: y + EXTRA_FIXED_RANDCONFIG: + CONFIG_COVERAGE=3Dn + # Yocto test jobs yocto-qemuarm64: extends: .yocto-test-arm64 --=20 2.30.2 From xen-devel-bounces@lists.xenproject.org Tue Jun 20 18:13:30 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 20 Jun 2023 18:13:30 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552203.862137 (Exim 4.92) (envelope-from ) id 1qBfqt-00067p-SZ; Tue, 20 Jun 2023 18:13:15 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552203.862137; Tue, 20 Jun 2023 18:13:15 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBfqt-00067i-Or; Tue, 20 Jun 2023 18:13:15 +0000 Received: by outflank-mailman (input) for mailman id 552203; Tue, 20 Jun 2023 18:13:14 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBfqs-00067X-Qa for xen-devel@lists.xenproject.org; Tue, 20 Jun 2023 18:13:14 +0000 Received: from raptorengineering.com (mail.raptorengineering.com [23.155.224.40]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 1d1c8f7d-0f96-11ee-8611-37d641c3527e; Tue, 20 Jun 2023 20:13:11 +0200 (CEST) Received: from localhost (localhost [127.0.0.1]) by mail.rptsys.com (Postfix) with ESMTP id BA10C8285935; Tue, 20 Jun 2023 13:13:09 -0500 (CDT) Received: from mail.rptsys.com ([127.0.0.1]) by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032) with ESMTP id wWYkHwc7ggid; Tue, 20 Jun 2023 13:13:08 -0500 (CDT) Received: from localhost (localhost [127.0.0.1]) by mail.rptsys.com (Postfix) with ESMTP id 4D1AE82858A5; Tue, 20 Jun 2023 13:13:08 -0500 (CDT) Received: from mail.rptsys.com ([127.0.0.1]) by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id AC5vHRWOqcMQ; Tue, 20 Jun 2023 13:13:08 -0500 (CDT) Received: from raptor-ewks-026.lan (5.edge.rptsys.com [23.155.224.38]) by mail.rptsys.com (Postfix) with ESMTPSA id AA0E18285738; Tue, 20 Jun 2023 13:13:07 -0500 (CDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 1d1c8f7d-0f96-11ee-8611-37d641c3527e DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com 4D1AE82858A5 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD; t=1687284788; bh=yQ2jwAEuJk+JybKeQL7/geyz2pfCWamg3VHhHEztqDA=; h=From:To:Date:Message-Id:MIME-Version; b=RR6jmtWoCYpYxjPioWz0xWSO1AjMWJD71+tXJ0Y3Ne9bSk4QsThaCcbF+G+Qy38xs aZho8OzdfJxXVxLrkZSKMdy1BV6lR1fVNrRFCkpWKQb27Ut6zNMWmC3skYor2orvds H6R1HSjxsvv9DAxeHo2dOgsIdaVF34S4OzQ2HBhQ= X-Virus-Scanned: amavisd-new at rptsys.com From: Shawn Anastasio To: xen-devel@lists.xenproject.org Cc: tpearson@raptorengineering.com, Shawn Anastasio , Andrew Cooper , George Dunlap , Jan Beulich , Julien Grall , Stefano Stabellini , Wei Liu , Doug Goldstein Subject: [PATCH v5 0/3] Initial support for Power Date: Tue, 20 Jun 2023 13:12:46 -0500 Message-Id: X-Mailer: git-send-email 2.30.2 MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Hello all, This patch series adds support for building a minimal image for Power ISA 2.07B+ (POWER8+) systems. In addition to a patch adding support to the build system and a simple infinite loop at the entrypoint, patches to add ppc64le support to the CI as well as a MAINTAINERS update are included. Since Xen previously had support for a much older version of the ISA in version 3.2.3, we were able to carry over some headers and support routines from that version. Unlike that initial port though, this effort focuses solely on POWER8+ CPUs that are capable of running in Little Endian mode. With an appropriate powerpc64le-linux-gnu cross-toolchain, the minimal image can be built with: $ make XEN_TARGET_ARCH=3Dppc64 -C xen build The resulting binary can then be booted in a standard QEMU/pseries VM: $ qemu-system-ppc64 -M pseries-5.2 -m 256M -kernel xen/xen \ -vga none -serial mon:stdio -nographic Thanks, Shawn -- Changes from v5: - Rename openpower_defconfig to ppc64_defconfig - Clarify Kconfig ISA baseline help strings - Add ELF metadata annotations to head.S - Add dummy .got/.got.plt sections plus assertions to ld script - Change .align to .p2align in config.h/ENTRY() Changes from v4: - Change '$(@D)/$(@F)' to '$@' in ppc/Makefile - Add -m64, -mlittle-endian to CFLAGS to allow using ppc{32,64be} toolchains - Change IBM-specific '$' to '.' in head.S - Drop unnecessary ALIGN() in linker script in .bss Changes from v3: - Fix formatting of MAINTAINERS patch Changes from v2: - Add ppc64le cross-build container patch - Add ppc64le cross build CI job patch - Drop serial output patch (will be in future patch series) - Drop setup.c and unneeded headers from minimal build patch - Fixed ordering of MAINTAINERS patch + add F: line - Fix config/ppc64.mk option names - Clarify Kconfig Baseline ISA option help strings Shawn Anastasio (3): xen: Add files needed for minimal ppc64le build automation: Add ppc64le cross-build jobs maintainers: Add ppc64 maintainer MAINTAINERS | 4 + automation/gitlab-ci/build.yaml | 60 +++++++++ config/ppc64.mk | 4 + xen/Makefile | 5 +- xen/arch/ppc/Kconfig | 42 ++++++ xen/arch/ppc/Kconfig.debug | 0 xen/arch/ppc/Makefile | 16 +++ xen/arch/ppc/Rules.mk | 0 xen/arch/ppc/arch.mk | 12 ++ xen/arch/ppc/configs/ppc64_defconfig | 13 ++ xen/arch/ppc/include/asm/config.h | 63 +++++++++ xen/arch/ppc/include/asm/page-bits.h | 7 + xen/arch/ppc/ppc64/Makefile | 1 + xen/arch/ppc/ppc64/asm-offsets.c | 0 xen/arch/ppc/ppc64/head.S | 30 +++++ xen/arch/ppc/xen.lds.S | 188 +++++++++++++++++++++++++++ 16 files changed, 443 insertions(+), 2 deletions(-) create mode 100644 config/ppc64.mk create mode 100644 xen/arch/ppc/Kconfig create mode 100644 xen/arch/ppc/Kconfig.debug create mode 100644 xen/arch/ppc/Makefile create mode 100644 xen/arch/ppc/Rules.mk create mode 100644 xen/arch/ppc/arch.mk create mode 100644 xen/arch/ppc/configs/ppc64_defconfig create mode 100644 xen/arch/ppc/include/asm/config.h create mode 100644 xen/arch/ppc/include/asm/page-bits.h create mode 100644 xen/arch/ppc/ppc64/Makefile create mode 100644 xen/arch/ppc/ppc64/asm-offsets.c create mode 100644 xen/arch/ppc/ppc64/head.S create mode 100644 xen/arch/ppc/xen.lds.S -- 2.30.2 From xen-devel-bounces@lists.xenproject.org Tue Jun 20 18:13:31 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 20 Jun 2023 18:13:31 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552206.862167 (Exim 4.92) (envelope-from ) id 1qBfqw-0006rU-Nt; Tue, 20 Jun 2023 18:13:18 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552206.862167; Tue, 20 Jun 2023 18:13:18 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBfqw-0006rC-Ji; Tue, 20 Jun 2023 18:13:18 +0000 Received: by outflank-mailman (input) for mailman id 552206; Tue, 20 Jun 2023 18:13:17 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBfqv-00067X-Fo for xen-devel@lists.xenproject.org; Tue, 20 Jun 2023 18:13:17 +0000 Received: from raptorengineering.com (mail.raptorengineering.com [23.155.224.40]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 1dcb5366-0f96-11ee-8611-37d641c3527e; Tue, 20 Jun 2023 20:13:12 +0200 (CEST) Received: from localhost (localhost [127.0.0.1]) by mail.rptsys.com (Postfix) with ESMTP id 2FFBF828596A; Tue, 20 Jun 2023 13:13:11 -0500 (CDT) Received: from mail.rptsys.com ([127.0.0.1]) by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032) with ESMTP id N7OnqtmCWD28; Tue, 20 Jun 2023 13:13:08 -0500 (CDT) Received: from localhost (localhost [127.0.0.1]) by mail.rptsys.com (Postfix) with ESMTP id C94348285738; Tue, 20 Jun 2023 13:13:08 -0500 (CDT) Received: from mail.rptsys.com ([127.0.0.1]) by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id ozJe76S0Uz8Y; Tue, 20 Jun 2023 13:13:08 -0500 (CDT) Received: from raptor-ewks-026.lan (5.edge.rptsys.com [23.155.224.38]) by mail.rptsys.com (Postfix) with ESMTPSA id 489C4828574D; Tue, 20 Jun 2023 13:13:08 -0500 (CDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 1dcb5366-0f96-11ee-8611-37d641c3527e DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com C94348285738 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD; t=1687284788; bh=tfPF+N64+NrI6DBox/KEUunaTcVRr83dAAGSwNYIHVE=; h=From:To:Date:Message-Id:MIME-Version; b=q2IxOTeMRUQ839rd/5X+BPlb11OYBiAEhq/20AjFrsA43ne345rlfmxdT4pz0gwbI KkoFolE3Yf18xGrgB/Zrn+3U9wX+Niprpb8I69Zho8O+vGYA81U02oGJWaLvBFX7C5 WSf4DqWXn1a51rxCIyQmHQU2apCPIKGAvVPKqQAM= X-Virus-Scanned: amavisd-new at rptsys.com From: Shawn Anastasio To: xen-devel@lists.xenproject.org Cc: tpearson@raptorengineering.com, Shawn Anastasio , Andrew Cooper , George Dunlap , Jan Beulich , Julien Grall , Stefano Stabellini , Wei Liu Subject: [PATCH v5 1/3] xen: Add files needed for minimal ppc64le build Date: Tue, 20 Jun 2023 13:12:47 -0500 Message-Id: X-Mailer: git-send-email 2.30.2 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Add the build system changes required to build for ppc64le (POWER8+). As of now the resulting image simply boots to an infinite loop. $ make XEN_TARGET_ARCH=3Dppc64 -C xen build This port targets POWER8+ CPUs running in Little Endian mode specifically= , and does not boot on older machines. Additionally, this initial skeleton only implements the PaPR/pseries boot protocol which allows it to be booted in a standard QEMU virtual machine: $ qemu-system-ppc64 -M pseries-5.2 -m 256M -kernel xen/xen Signed-off-by: Shawn Anastasio --- config/ppc64.mk | 4 + xen/Makefile | 5 +- xen/arch/ppc/Kconfig | 42 ++++++ xen/arch/ppc/Kconfig.debug | 0 xen/arch/ppc/Makefile | 16 +++ xen/arch/ppc/Rules.mk | 0 xen/arch/ppc/arch.mk | 12 ++ xen/arch/ppc/configs/ppc64_defconfig | 13 ++ xen/arch/ppc/include/asm/config.h | 63 +++++++++ xen/arch/ppc/include/asm/page-bits.h | 7 + xen/arch/ppc/ppc64/Makefile | 1 + xen/arch/ppc/ppc64/asm-offsets.c | 0 xen/arch/ppc/ppc64/head.S | 30 +++++ xen/arch/ppc/xen.lds.S | 188 +++++++++++++++++++++++++++ 14 files changed, 379 insertions(+), 2 deletions(-) create mode 100644 config/ppc64.mk create mode 100644 xen/arch/ppc/Kconfig create mode 100644 xen/arch/ppc/Kconfig.debug create mode 100644 xen/arch/ppc/Makefile create mode 100644 xen/arch/ppc/Rules.mk create mode 100644 xen/arch/ppc/arch.mk create mode 100644 xen/arch/ppc/configs/ppc64_defconfig create mode 100644 xen/arch/ppc/include/asm/config.h create mode 100644 xen/arch/ppc/include/asm/page-bits.h create mode 100644 xen/arch/ppc/ppc64/Makefile create mode 100644 xen/arch/ppc/ppc64/asm-offsets.c create mode 100644 xen/arch/ppc/ppc64/head.S create mode 100644 xen/arch/ppc/xen.lds.S diff --git a/config/ppc64.mk b/config/ppc64.mk new file mode 100644 index 0000000000..05f74bb306 --- /dev/null +++ b/config/ppc64.mk @@ -0,0 +1,4 @@ +CONFIG_PPC :=3D y +CONFIG_PPC64 :=3D y + +CONFIG_XEN_INSTALL_SUFFIX :=3D diff --git a/xen/Makefile b/xen/Makefile index e89fc461fc..db5454fb58 100644 --- a/xen/Makefile +++ b/xen/Makefile @@ -38,7 +38,7 @@ EFI_MOUNTPOINT ?=3D $(BOOT_DIR)/efi ARCH=3D$(XEN_TARGET_ARCH) SRCARCH=3D$(shell echo $(ARCH) | \ sed -e 's/x86.*/x86/' -e s'/arm\(32\|64\)/arm/g' \ - -e s'/riscv.*/riscv/g') + -e s'/riscv.*/riscv/g' -e s'/ppc.*/ppc/g') export ARCH SRCARCH =20 # Allow someone to change their config file @@ -244,7 +244,7 @@ include $(XEN_ROOT)/Config.mk export TARGET_SUBARCH :=3D $(XEN_TARGET_ARCH) export TARGET_ARCH :=3D $(shell echo $(XEN_TARGET_ARCH) | \ sed -e 's/x86.*/x86/' -e s'/arm\(32\|64\)/ar= m/g' \ - -e s'/riscv.*/riscv/g') + -e s'/riscv.*/riscv/g' -e s'/ppc.*/ppc/g= ') =20 export CONFIG_SHELL :=3D $(SHELL) export CC CXX LD NM OBJCOPY OBJDUMP ADDR2LINE @@ -563,6 +563,7 @@ _clean: $(Q)$(MAKE) $(clean)=3Dxsm $(Q)$(MAKE) $(clean)=3Dcrypto $(Q)$(MAKE) $(clean)=3Darch/arm + $(Q)$(MAKE) $(clean)=3Darch/ppc $(Q)$(MAKE) $(clean)=3Darch/riscv $(Q)$(MAKE) $(clean)=3Darch/x86 $(Q)$(MAKE) $(clean)=3Dtest diff --git a/xen/arch/ppc/Kconfig b/xen/arch/ppc/Kconfig new file mode 100644 index 0000000000..a2ade2ecf4 --- /dev/null +++ b/xen/arch/ppc/Kconfig @@ -0,0 +1,42 @@ +config PPC + def_bool y + +config PPC64 + def_bool y + select 64BIT + +config ARCH_DEFCONFIG + string + default "arch/ppc/configs/ppc64_defconfig" + +menu "Architecture Features" + +source "arch/Kconfig" + +endmenu + +menu "ISA Selection" + +choice + prompt "Base ISA" + default POWER_ISA_2_07B + help + This selects the base ISA version that Xen will target. + +config POWER_ISA_2_07B + bool "Power ISA 2.07B (POWER8)" + help + Target version 2.07B of the Power ISA (POWER8) or later + +config POWER_ISA_3_00 + bool "Power ISA 3.00 (POWER9)" + help + Target version 3.00 of the Power ISA (POWER9) or later + +endchoice + +endmenu + +source "common/Kconfig" + +source "drivers/Kconfig" diff --git a/xen/arch/ppc/Kconfig.debug b/xen/arch/ppc/Kconfig.debug new file mode 100644 index 0000000000..e69de29bb2 diff --git a/xen/arch/ppc/Makefile b/xen/arch/ppc/Makefile new file mode 100644 index 0000000000..98220648af --- /dev/null +++ b/xen/arch/ppc/Makefile @@ -0,0 +1,16 @@ +obj-$(CONFIG_PPC64) +=3D ppc64/ + +$(TARGET): $(TARGET)-syms + cp -f $< $@ + +$(TARGET)-syms: $(objtree)/prelink.o $(obj)/xen.lds + $(LD) $(XEN_LDFLAGS) -T $(obj)/xen.lds -N $< $(build_id_linker) -o $@ + $(NM) -pa --format=3Dsysv $@ \ + | $(objtree)/tools/symbols --all-symbols --xensyms --sysv --sort \ + > $@.map + +$(obj)/xen.lds: $(src)/xen.lds.S FORCE + $(call if_changed_dep,cpp_lds_S) + +.PHONY: include +include: diff --git a/xen/arch/ppc/Rules.mk b/xen/arch/ppc/Rules.mk new file mode 100644 index 0000000000..e69de29bb2 diff --git a/xen/arch/ppc/arch.mk b/xen/arch/ppc/arch.mk new file mode 100644 index 0000000000..36830457c6 --- /dev/null +++ b/xen/arch/ppc/arch.mk @@ -0,0 +1,12 @@ +######################################## +# Power-specific definitions + +ppc-march-$(CONFIG_POWER_ISA_2_07B) :=3D power8 +ppc-march-$(CONFIG_POWER_ISA_3_00) :=3D power9 + +CFLAGS +=3D -m64 -mlittle-endian -mcpu=3D$(ppc-march-y) +CFLAGS +=3D -mstrict-align -mcmodel=3Dlarge -mabi=3Delfv2 -mno-altivec -= mno-vsx + +# TODO: Drop override when more of the build is working +override ALL_OBJS-y =3D arch/$(TARGET_ARCH)/built_in.o +override ALL_LIBS-y =3D diff --git a/xen/arch/ppc/configs/ppc64_defconfig b/xen/arch/ppc/configs/= ppc64_defconfig new file mode 100644 index 0000000000..8783eb3488 --- /dev/null +++ b/xen/arch/ppc/configs/ppc64_defconfig @@ -0,0 +1,13 @@ +# CONFIG_SCHED_CREDIT is not set +# CONFIG_SCHED_RTDS is not set +# CONFIG_SCHED_NULL is not set +# CONFIG_SCHED_ARINC653 is not set +# CONFIG_TRACEBUFFER is not set +# CONFIG_HYPFS is not set +# CONFIG_GRANT_TABLE is not set +# CONFIG_SPECULATIVE_HARDEN_ARRAY is not set + +CONFIG_PPC64=3Dy +CONFIG_DEBUG=3Dy +CONFIG_DEBUG_INFO=3Dy +CONFIG_EXPERT=3Dy diff --git a/xen/arch/ppc/include/asm/config.h b/xen/arch/ppc/include/asm= /config.h new file mode 100644 index 0000000000..b9a6814f00 --- /dev/null +++ b/xen/arch/ppc/include/asm/config.h @@ -0,0 +1,63 @@ +#ifndef __PPC_CONFIG_H__ +#define __PPC_CONFIG_H__ + +#include +#include + +#if defined(CONFIG_PPC64) +#define LONG_BYTEORDER 3 +#define ELFSIZE 64 +#define MAX_VIRT_CPUS 1024u +#else +#error "Unsupported PowerPC variant" +#endif + +#define BYTES_PER_LONG (1 << LONG_BYTEORDER) +#define BITS_PER_LONG (BYTES_PER_LONG << 3) +#define POINTER_ALIGN BYTES_PER_LONG + +#define BITS_PER_LLONG 64 + +/* xen_ulong_t is always 64 bits */ +#define BITS_PER_XEN_ULONG 64 + +#define CONFIG_PPC_L1_CACHE_SHIFT 7 +#define CONFIG_PAGEALLOC_MAX_ORDER 18 +#define CONFIG_DOMU_MAX_ORDER 9 +#define CONFIG_HWDOM_MAX_ORDER 10 + +#define OPT_CONSOLE_STR "dtuart" +#define INVALID_VCPU_ID MAX_VIRT_CPUS + +/* Linkage for PPC */ +#ifdef __ASSEMBLY__ +#define ALIGN .p2align 2 + +#define ENTRY(name) = \ + .globl name; = \ + ALIGN; = \ + name: +#endif + +#define XEN_VIRT_START _AT(UL, 0x400000) + +#define SMP_CACHE_BYTES (1 << 6) + +#define STACK_ORDER 2 +#define STACK_SIZE (PAGE_SIZE << STACK_ORDER) + +/* 288 bytes below the stack pointer must be preserved by interrupt hand= lers */ +#define STACK_VOLATILE_AREA 288 + +/* size of minimum stack frame; C code can write into the caller's stack= */ +#define STACK_FRAME_OVERHEAD 32 + +#endif /* __PPC_CONFIG_H__ */ +/* + * Local variables: + * mode: C + * c-file-style: "BSD" + * c-basic-offset: 4 + * indent-tabs-mode: nil + * End: + */ diff --git a/xen/arch/ppc/include/asm/page-bits.h b/xen/arch/ppc/include/= asm/page-bits.h new file mode 100644 index 0000000000..4c01bf9716 --- /dev/null +++ b/xen/arch/ppc/include/asm/page-bits.h @@ -0,0 +1,7 @@ +#ifndef __PPC_PAGE_BITS_H__ +#define __PPC_PAGE_BITS_H__ + +#define PAGE_SHIFT 16 /* 64 KiB Pages */ +#define PADDR_BITS 48 + +#endif /* __PPC_PAGE_BITS_H__ */ diff --git a/xen/arch/ppc/ppc64/Makefile b/xen/arch/ppc/ppc64/Makefile new file mode 100644 index 0000000000..3340058c08 --- /dev/null +++ b/xen/arch/ppc/ppc64/Makefile @@ -0,0 +1 @@ +obj-y +=3D head.o diff --git a/xen/arch/ppc/ppc64/asm-offsets.c b/xen/arch/ppc/ppc64/asm-of= fsets.c new file mode 100644 index 0000000000..e69de29bb2 diff --git a/xen/arch/ppc/ppc64/head.S b/xen/arch/ppc/ppc64/head.S new file mode 100644 index 0000000000..7be949aa57 --- /dev/null +++ b/xen/arch/ppc/ppc64/head.S @@ -0,0 +1,30 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ + +.section .text.header, "ax", %progbits + +ENTRY(start) + /* + * Depending on how we were booted, the CPU could be running in eith= er + * Little Endian or Big Endian mode. The following trampoline from L= inux + * cleverly uses an instruction that encodes to a NOP if the CPU's + * endianness matches the assumption of the assembler (LE, in our ca= se) + * or a branch to code that performs the endian switch in the other = case. + */ + tdi 0, 0, 0x48 /* Reverse endian of b . + 8 */ + b . + 44 /* Skip trampoline if endian is good */ + .long 0xa600607d /* mfmsr r11 */ + .long 0x01006b69 /* xori r11,r11,1 */ + .long 0x00004039 /* li r10,0 */ + .long 0x6401417d /* mtmsrd r10,1 */ + .long 0x05009f42 /* bcl 20,31,$+4 */ + .long 0xa602487d /* mflr r10 */ + .long 0x14004a39 /* addi r10,r10,20 */ + .long 0xa6035a7d /* mtsrr0 r10 */ + .long 0xa6037b7d /* mtsrr1 r11 */ + .long 0x2400004c /* rfid */ + + /* Now that the endianness is confirmed, continue */ +1: b 1b + +.size start, . - start +.type start, %function diff --git a/xen/arch/ppc/xen.lds.S b/xen/arch/ppc/xen.lds.S new file mode 100644 index 0000000000..f75d9be4ed --- /dev/null +++ b/xen/arch/ppc/xen.lds.S @@ -0,0 +1,188 @@ +#include +#include + +#undef ENTRY +#undef ALIGN + +OUTPUT_ARCH(powerpc:common64) +ENTRY(start) + +PHDRS +{ + text PT_LOAD ; +#if defined(BUILD_ID) + note PT_NOTE ; +#endif +} + +/** + * OF's base load address is 0x400000 (XEN_VIRT_START). + * By defining sections this way, we can keep our virtual address base a= t 0x400000 + * while keeping the physical base at 0x0. + * + * Without this, OF incorrectly loads .text at 0x400000 + 0x400000 =3D 0= x800000. + * Taken from x86/xen.lds.S + */ +#ifdef CONFIG_LD_IS_GNU +# define DECL_SECTION(x) x : AT(ADDR(#x) - XEN_VIRT_START) +#else +# define DECL_SECTION(x) x : AT(ADDR(x) - XEN_VIRT_START) +#endif + +SECTIONS +{ + . =3D XEN_VIRT_START; + + DECL_SECTION(.text) { + _stext =3D .; /* Text section */ + *(.text.header) + + *(.text.cold) + *(.text.unlikely .text.*_unlikely .text.unlikely.*) + + *(.text) +#ifdef CONFIG_CC_SPLIT_SECTIONS + *(.text.*) +#endif + + *(.fixup) + *(.gnu.warning) + . =3D ALIGN(POINTER_ALIGN); + _etext =3D .; /* End of text section */ + } :text + + . =3D ALIGN(PAGE_SIZE); + DECL_SECTION(.rodata) { + _srodata =3D .; /* Read-only data */ + *(.rodata) + *(.rodata.*) + *(.data.rel.ro) + *(.data.rel.ro.*) + + VPCI_ARRAY + + . =3D ALIGN(POINTER_ALIGN); + _erodata =3D .; /* End of read-only data */ + } :text + + #if defined(BUILD_ID) + . =3D ALIGN(4); + DECL_SECTION(.note.gnu.build-id) { + __note_gnu_build_id_start =3D .; + *(.note.gnu.build-id) + __note_gnu_build_id_end =3D .; + } :note :text + #endif + _erodata =3D .; /* End of read-only data */ + + . =3D ALIGN(PAGE_SIZE); + DECL_SECTION(.data.ro_after_init) { + __ro_after_init_start =3D .; + *(.data.ro_after_init) + . =3D ALIGN(PAGE_SIZE); + __ro_after_init_end =3D .; + } : text + + DECL_SECTION(.data.read_mostly) { + *(.data.read_mostly) + } :text + + . =3D ALIGN(PAGE_SIZE); + DECL_SECTION(.data) { /* Data */ + *(.data.page_aligned) + . =3D ALIGN(8); + __start_schedulers_array =3D .; + *(.data.schedulers) + __end_schedulers_array =3D .; + + HYPFS_PARAM + + *(.data .data.*) + CONSTRUCTORS + } :text + + . =3D ALIGN(PAGE_SIZE); /* Init code and data */ + __init_begin =3D .; + DECL_SECTION(.init.text) { + _sinittext =3D .; + *(.init.text) + _einittext =3D .; + . =3D ALIGN(PAGE_SIZE); /* Avoid mapping alt insns execut= able */ + } :text + + . =3D ALIGN(PAGE_SIZE); + DECL_SECTION(.init.data) { + *(.init.rodata) + *(.init.rodata.*) + + . =3D ALIGN(POINTER_ALIGN); + __setup_start =3D .; + *(.init.setup) + __setup_end =3D .; + + __initcall_start =3D .; + *(.initcallpresmp.init) + __presmp_initcall_end =3D .; + *(.initcall1.init) + __initcall_end =3D .; + + LOCK_PROFILE_DATA + + *(.init.data) + *(.init.data.rel) + *(.init.data.rel.*) + + . =3D ALIGN(8); + __ctors_start =3D .; + *(.ctors) + *(.init_array) + *(SORT(.init_array.*)) + __ctors_end =3D .; + } :text + + DECL_SECTION(.got) { + *(.got) + } :text + + DECL_SECTION(.got.plt) { + *(.got.plt) + } :text + + . =3D ALIGN(POINTER_ALIGN); + __init_end =3D .; + + DECL_SECTION(.bss) { /* BSS */ + __bss_start =3D .; + *(.bss.stack_aligned) + *(.bss.page_aligned) + . =3D ALIGN(PAGE_SIZE); + __per_cpu_start =3D .; + *(.bss.percpu.page_aligned) + *(.bss.percpu) + . =3D ALIGN(SMP_CACHE_BYTES); + *(.bss.percpu.read_mostly) + . =3D ALIGN(SMP_CACHE_BYTES); + __per_cpu_data_end =3D .; + *(.bss .bss.*) + . =3D ALIGN(POINTER_ALIGN); + __bss_end =3D .; + } :text + _end =3D . ; + + /* Section for the device tree blob (if any). */ + DECL_SECTION(.dtb) { *(.dtb) } :text + + DWARF2_DEBUG_SECTIONS + + DISCARD_SECTIONS + + STABS_DEBUG_SECTIONS + + ELF_DETAILS_SECTIONS +} + +ASSERT(IS_ALIGNED(__bss_start, POINTER_ALIGN), "__bss_start is misa= ligned") +ASSERT(IS_ALIGNED(__bss_end, POINTER_ALIGN), "__bss_end is misali= gned") + +ASSERT(!SIZEOF(.got), ".got non-empty") +ASSERT(!SIZEOF(.got.plt), ".got.plt non-empty") --=20 2.30.2 From xen-devel-bounces@lists.xenproject.org Tue Jun 20 18:14:57 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 20 Jun 2023 18:14:57 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552225.862177 (Exim 4.92) (envelope-from ) id 1qBfsN-0008KH-27; Tue, 20 Jun 2023 18:14:47 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552225.862177; Tue, 20 Jun 2023 18:14:47 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBfsM-0008K8-Ug; Tue, 20 Jun 2023 18:14:46 +0000 Received: by outflank-mailman (input) for mailman id 552225; Tue, 20 Jun 2023 18:14:45 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBfsL-0008Jq-KG for xen-devel@lists.xenproject.org; Tue, 20 Jun 2023 18:14:45 +0000 Received: from mail-lf1-x133.google.com (mail-lf1-x133.google.com [2a00:1450:4864:20::133]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 550d51af-0f96-11ee-b234-6b7b168915f2; Tue, 20 Jun 2023 20:14:44 +0200 (CEST) Received: by mail-lf1-x133.google.com with SMTP id 2adb3069b0e04-4f86d8a8fd4so4067510e87.3 for ; Tue, 20 Jun 2023 11:14:44 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 550d51af-0f96-11ee-b234-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687284884; x=1689876884; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=NKgXF8KP+Km6qFUOMbaL+UkPhpTQv+o+AYH7OHKXVcw=; b=dCVIRmsqvCtOUjvqa3WkSzRI4zLxjSea8aKBtHtUai8umvuTiduKgpc2rCFnRgqhZg QBsJnWoLNHawVWj0JEbyI455lIBZvUXbCIPTztSsgTLhhkqH/ofCyYqATKEMT3RzRtjH 2Xs52e1OD91RFztyWD3ijxGhWsXBtIoGRdRtib4xMi7w4RtjGcJcVn5Ium/OAxbS4MFK DyBSsAc6v8bMi4HdYkqA5JAARZd/W/pStf71VHv151lhVh5QQptFxUohCZ9cHCKIvUDD z4WH3AVm0aPY+O7BRSWgtkUrXTt46JRUVu9JNkUyKavbMbgwm0tNLV6s3fQMISrMaEDf xc/w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687284884; x=1689876884; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=NKgXF8KP+Km6qFUOMbaL+UkPhpTQv+o+AYH7OHKXVcw=; b=eIFjGPODSlx6wbLNM5KM+9en/+Dx7971XDkgHtt8WSez79rsjnqQnDtW/cyZlb2Jtd nxMRWfiJ4cjZk1iceAAqi1uw3PVw+a1ojNubByCVs2+OGTZCq91T2Ag4JCWTNGO1hBEu l6CWIoewwLt3hGMAXoFxP6Sl4dIJRlEe/t4N8XezCjQlLt9CnBqXcpYtM8Y688kf9eu7 JsEGxQ//TsdY7ATSs8mZWzMSOSJXJoNxxpHqd6FJUqSLFhTd63K6a3zk2EvstKf2KLqh ++U0WxguGhJCTiR3mbgxGkqfMiDf6+wmHuihQaV/kzFN0D6MHvZ5qkEyS/HxDuDIa3Ky AVtA== X-Gm-Message-State: AC+VfDz3BdEHG20JPP9CKEFH0nU4SzBVQdpMqqCEdnzgGEPFxUNjHyaS Fbot6Cj5GKwOkOiXXp4LQWiX4Bu2cmueEn8CMAc= X-Google-Smtp-Source: ACHHUZ7Z4Jm4iUruPPbaD4u2ZuUUmPE52UJuznk0yHi7jGjJq3ARacDUg2ff6AkXmtr7zeiK4vdVUCxRHJoLBRARQkY= X-Received: by 2002:a05:6512:118d:b0:4f8:5e11:2cbc with SMTP id g13-20020a056512118d00b004f85e112cbcmr8181329lfr.36.1687284883126; Tue, 20 Jun 2023 11:14:43 -0700 (PDT) MIME-Version: 1.0 References: <20230614180253.89958-1-jandryuk@gmail.com> <20230614180253.89958-7-jandryuk@gmail.com> <66771ebb-7d56-ca84-89bc-14f69fe62bd6@suse.com> In-Reply-To: <66771ebb-7d56-ca84-89bc-14f69fe62bd6@suse.com> From: Jason Andryuk Date: Tue, 20 Jun 2023 14:14:30 -0400 Message-ID: Subject: Re: [PATCH v4 06/15] cpufreq: Add Hardware P-State (HWP) driver To: Jan Beulich Cc: Andrew Cooper , George Dunlap , Julien Grall , Stefano Stabellini , Wei Liu , =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= , xen-devel@lists.xenproject.org Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Mon, Jun 19, 2023 at 7:38=E2=80=AFAM Jan Beulich wro= te: > > On 14.06.2023 20:02, Jason Andryuk wrote: > > Falling back from cpufreq=3Dhwp to cpufreq=3Dxen is a more user-friendl= y > > choice than disabling cpufreq when HWP is not available. Specifying > > cpufreq=3Dhwp indicates the user wants cpufreq, so, if HWP isn't > > available, it makes sense to give them the cpufreq that can be > > supported. i.e. I can't see a user only wanting cpufreq=3Dhwp or > > cpufreq=3Dnone, but not cpufreq=3Dxen. > > I continue to disagree with this, and I'd like to ask for another > maintainer's opinion. To me the described behavior is like getting > pears when having asked for apples. I nevertheless agree that > having said fallback as an option, but I'd see that done by giving > meaning to something like "cpufreq=3Dhwp,xen" (without having checked > whether that doesn't have meaning already, i.e. just to give you an > idea). I know you disagree with the approach. I implemented what would be useful to me and Marek. It felt counterproductive to implement a hard failure mode that is unsuitable for my use case. Also there was the possibility you wouldn't mind when you saw how it was implemented. Yeah, asking for an apple and getting a pear can be the wrong thing if your recipe calls for apples. But getting *some* fruit can be better than no fruit if you are hungry. As implemented here, with HWP default disabled, no command line -> default cpufreq=3Dxen cpufreq=3Dxen -> only cpufreq=3Dxen cpufreq=3Dhwp -> try hwp and fallback to cpufreq=3Dxen If/when HWP is default enabled: no command line -> try hwp and fallback to cpufreq=3Dxen cpufreq=3Dhwp -> try hwp and fallback to cpufreq=3Dxen cpufreq=3Dxen -> cpufreq=3Dxen Unless some other idea comes to me, I guess I'll look at implementing "cpufreq=3Dhwp,xen". > > We can't use parse_boolean() since it requires a single name=3Dval stri= ng > > and cpufreq_handle_common_option is provided two strings. Use > > parse_bool() and manual handle no-hwp. > > > > Write to disable the interrupt - the linux pstate driver does this. We > > don't use the interrupts, so we can just turn them off. We aren't read= y > > to handle them, so we don't want any. Unclear if this is necessary. > > SDM says it's default disabled. > > Part of this may want to move to the description? Sure. > > --- /dev/null > > +++ b/xen/arch/x86/acpi/cpufreq/hwp.c > > @@ -0,0 +1,537 @@ > > +/* SPDX-License-Identifier: GPL-2.0-only */ > > +/* > > + * hwp.c cpufreq driver to run Intel Hardware P-States (HWP) > > + * > > + * Copyright (C) 2021 Jason Andryuk > > + */ > > + > > +#include > > +#include > > +#include > > +#include > > +#include > > What do you need this one for? It seems to be unneeded. > > +#include > > +#include > > + > > +static bool __ro_after_init feature_hwp; > > +static bool __ro_after_init feature_hwp_notification; > > +static bool __ro_after_init feature_hwp_activity_window; > > + > > +static bool __ro_after_init feature_hdc; > > + > > +bool __initdata opt_cpufreq_hwp; > > +static bool __ro_after_init opt_cpufreq_hdc =3D true; > > + > > +union hwp_request > > +{ > > + struct > > + { > > + unsigned int min_perf:8; > > + unsigned int max_perf:8; > > + unsigned int desired:8; > > + unsigned int energy_perf:8; > > + unsigned int activity_window:10; > > + bool package_control:1; > > + unsigned int reserved:16; > > Better leave this and ... > > > + bool activity_window_valid:1; > > + bool energy_perf_valid:1; > > + bool desired_valid:1; > > + bool max_perf_valid:1; > > + bool min_perf_valid:1; > > + }; > > + uint64_t raw; > > +}; > > + > > +struct hwp_drv_data > > +{ > > + union > > + { > > + uint64_t hwp_caps; > > + struct > > + { > > + unsigned int highest:8; > > + unsigned int guaranteed:8; > > + unsigned int most_efficient:8; > > + unsigned int lowest:8; > > + unsigned int reserved:32; > > ... this without a name? Hardware interfaces like this one are, in my > understanding, one of the main applications of unnamed bitfields. Thanks - I didn't know you could have unnamed bitfields. > > + } hw; > > + }; > > + union hwp_request curr_req; > > + int ret; > > + uint16_t activity_window; > > + uint8_t minimum; > > + uint8_t maximum; > > + uint8_t desired; > > + uint8_t energy_perf; > > +}; > > +DEFINE_PER_CPU_READ_MOSTLY(struct hwp_drv_data *, hwp_drv_data); > > static? Sure > > +static bool hwp_handle_option(const char *s, const char *end) > > +{ > > + int ret; > > + > > + if ( strncmp(s, "verbose", 7) =3D=3D 0 ) > > + { > > + s +=3D 7; > > + if ( *s =3D=3D '=3D' ) > > + { > > + s++; > > + cpufreq_verbose =3D !!simple_strtoul(s, NULL, 0); > > + > > + return true; > > + } > > + > > + if ( end =3D=3D NULL || > > + (end =3D=3D s && (*end =3D=3D '\0' || *end =3D=3D ',')) ) > > + { > > + cpufreq_verbose =3D true; > > + > > + return true; > > + } > > + > > + return false; > > + } > > Would be nice if the handling of "verbose" didn't need duplicating here. > However, if that's unavoidable, did you consider handling this as a > proper boolean instead of the custom way cpufreq_handle_common_option() > also uses? It seemed more complicated to try to re-use the "verbose" handling from cpufreq_handle_common_option(), especially since minfreq and maxfreq are also in there. I didn't use proper boolean parsing to remain consistent with cpufreq_handle_common_option() and the command line option documentation. I'm fine with switching it to a proper boolean if that's what you want. > > +bool __init hwp_available(void) > > +{ > > + unsigned int eax; > > + > > + if ( !opt_cpufreq_hwp ) > > + return false; > > + > > + if ( boot_cpu_data.cpuid_level < CPUID_PM_LEAF ) > > + { > > + hwp_verbose("cpuid_level (%#x) lacks HWP support\n", > > + boot_cpu_data.cpuid_level); > > + > > + return false; > > + } > > + > > + if ( boot_cpu_data.cpuid_level < 0x16 ) > > + { > > + hwp_info("HWP disabled: cpuid_level %#x < 0x16 lacks CPU freq = info\n", > > + boot_cpu_data.cpuid_level); > > + > > + return false; > > + } > > + > > + eax =3D cpuid_eax(CPUID_PM_LEAF); > > + > > + hwp_verbose("%d notify: %d act-window: %d energy-perf: %d pkg-leve= l: %d peci: %d\n", > > + !!(eax & CPUID6_EAX_HWP), > > + !!(eax & CPUID6_EAX_HWP_NOTIFICATION), > > + !!(eax & CPUID6_EAX_HWP_ACTIVITY_WINDOW), > > + !!(eax & CPUID6_EAX_HWP_ENERGY_PERFORMANCE_PREFERENCE)= , > > + !!(eax & CPUID6_EAX_HWP_PACKAGE_LEVEL_REQUEST), > > + !!(eax & CPUID6_EAX_HWP_PECI)); > > + > > + if ( !(eax & CPUID6_EAX_HWP) ) > > + return false; > > + > > + if ( !(eax & CPUID6_EAX_HWP_ENERGY_PERFORMANCE_PREFERENCE) ) > > + { > > + hwp_verbose("disabled: No energy/performance preference availa= ble"); > > + > > + return false; > > + } > > + > > + feature_hwp =3D eax & CPUID6_EAX_HWP; > > + feature_hwp_notification =3D eax & CPUID6_EAX_HWP_NOTIFICATION; > > + feature_hwp_activity_window =3D eax & CPUID6_EAX_HWP_ACTIVITY_WIND= OW; > > + feature_hdc =3D eax & CPUID6_EAX_HDC; > > Would you mind matching this line with the earlier three, padding-wise? Sure. > > + hwp_verbose("Hardware Duty Cycling (HDC) %ssupported%s\n", > > + feature_hdc ? "" : "not ", > > + feature_hdc ? opt_cpufreq_hdc ? ", enabled" : ", disab= led" > > + : ""); > > + > > + hwp_verbose("HW_FEEDBACK %ssupported\n", > > + (eax & CPUID6_EAX_HW_FEEDBACK) ? "" : "not "); > > + > > + cpufreq_governor_internal =3D feature_hwp; > > What use is feature_hwp? Already its setting is a little odd (you could > use true there as much as you could here and for the return value below, > because of the earlier CPUID6_EAX_HWP check), and then I haven't been > able to find any further use of the variable. Yes, feature_hwp is no longer useful and can be removed. It actually gets removed in the next patch, but this can be simplified. > > + if ( feature_hwp ) > > + hwp_info("Using HWP for cpufreq\n"); > > + > > + return feature_hwp; > > +} > > + > > +static int hdc_set_pkg_hdc_ctl(unsigned int cpu, bool val) > > +{ > > + uint64_t msr; > > + > > + if ( rdmsr_safe(MSR_PKG_HDC_CTL, msr) ) > > + { > > + hwp_err("rdmsr_safe(MSR_PKG_HDC_CTL)\n", cpu); > > + > > + return -1; > > Nit: While blank lines often help, and we even demand them ahead of a > function's main return statement, here and ... > > > + } > > + > > + if ( val ) > > + msr |=3D PKG_HDC_CTL_HDC_PKG_ENABLE; > > + else > > + msr &=3D ~PKG_HDC_CTL_HDC_PKG_ENABLE; > > + > > + if ( wrmsr_safe(MSR_PKG_HDC_CTL, msr) ) > > + { > > + hwp_err("wrmsr_safe(MSR_PKG_HDC_CTL): %016lx\n", cpu, msr); > > + > > + return -1; > > ... here (and then again below) I think they do more harm than good. Ok, I'll remove them. > > +static void hwp_get_cpu_speeds(struct cpufreq_policy *policy) > > +{ > > + uint32_t base_khz, max_khz, bus_khz, edx; > > + > > + cpuid(0x16, &base_khz, &max_khz, &bus_khz, &edx); > > + > > + policy->cpuinfo.perf_freq =3D base_khz * 1000; > > + policy->cpuinfo.min_freq =3D base_khz * 1000; > > + policy->cpuinfo.max_freq =3D max_khz * 1000; > > + policy->min =3D base_khz * 1000; > > + policy->max =3D max_khz * 1000; > > What are the consequences (for the driver) when any of the values read > is zero? While I haven't checked in combination with HWP, I know that > CPUs may populate only some of the fields. Interesting - I didn't know CPUs may populate only some of the fields. These values are not used by the hwp driver itself. They are populated mainly to provide back to userspace. The one exception is perf_freq - that is used by get_measured_perf() to calculate aperf/mperf. If base_khz and therefore perf_freq were 0, then get_measured_perf() would just return 0 for aperf/mperf. > > +static void cf_check hwp_init_msrs(void *info) > > +{ > > + struct cpufreq_policy *policy =3D info; > > + struct hwp_drv_data *data =3D this_cpu(hwp_drv_data); > > + uint64_t val; > > + > > + /* > > + * Package level MSR, but we don't have a good idea of packages he= re, so > > + * just do it everytime. > > + */ > > + if ( rdmsr_safe(MSR_PM_ENABLE, val) ) > > + { > > + hwp_err("rdmsr_safe(MSR_PM_ENABLE)\n", policy->cpu); > > + data->curr_req.raw =3D -1; > > + return; > > + } > > + > > + /* Ensure we don't generate interrupts */ > > + if ( feature_hwp_notification ) > > + wrmsr_safe(MSR_HWP_INTERRUPT, 0); > > + > > + hwp_verbose("CPU%u: MSR_PM_ENABLE: %016lx\n", policy->cpu, val); > > + if ( !(val & PM_ENABLE_HWP_ENABLE) ) > > + { > > + val |=3D PM_ENABLE_HWP_ENABLE; > > + if ( wrmsr_safe(MSR_PM_ENABLE, val) ) > > + { > > + hwp_err("wrmsr_safe(MSR_PM_ENABLE, %lx)\n", policy->cpu, v= al); > > + data->curr_req.raw =3D -1; > > + return; > > + } > > + } > > + > > + if ( rdmsr_safe(MSR_HWP_CAPABILITIES, data->hwp_caps) ) > > + { > > + hwp_err("rdmsr_safe(MSR_HWP_CAPABILITIES)\n", policy->cpu); > > + goto error; > > + } > > + > > + if ( rdmsr_safe(MSR_HWP_REQUEST, data->curr_req.raw) ) > > + { > > + hwp_err("rdmsr_safe(MSR_HWP_REQUEST)\n", policy->cpu); > > Having seen a number of hwp_err() by now, I think these are confusing: > The format string as seen at call sites doesn't match the number of > arguments. I see two possible solutions to this: Either you demand > that calling functions maintain a "cpu" local variable, and you simply > use that from the macro without passing it as argument. Or you flip > parameters / arguments: > > hwp_err(policy->cpu, "rdmsr_safe(MSR_HWP_REQUEST)\n"); I think your flipped parameter idea is good and will use that. > > + goto error; > > + } > > + > > + /* > > + * Check for APERF/MPERF support in hardware > > + * also check for boost/turbo support > > + */ > > + intel_feature_detect(policy); > > + > > + if ( feature_hdc ) > > + { > > + if ( hdc_set_pkg_hdc_ctl(policy->cpu, opt_cpufreq_hdc) ) > > + goto error; > > + if ( hdc_set_pm_ctl1(policy->cpu, opt_cpufreq_hdc) ) > > + goto error; > > If either of these fails the very first time through (presumably for the > BSP), wouldn't a better course of action be to clear feature_hdc? So if HWP is working, but the HDC part fails, just clear feature_hdc but keep using HWP? I don't know how likely that is to happen, but that seems reasonable. > > + } > > + > > + hwp_get_cpu_speeds(policy); > > + > > + return; > > + > > + error: > > + data->curr_req.raw =3D -1; > > + val &=3D ~PM_ENABLE_HWP_ENABLE; > > + if ( wrmsr_safe(MSR_PM_ENABLE, val) ) > > + hwp_err("wrmsr_safe(MSR_PM_ENABLE, %lx)\n", policy->cpu, val); > > + > > + return; > > +} > > I think in general we avoid "return" with no value at the end of function= s. Ok, I'll remove it. > > +static void cf_check hwp_write_request(void *info) > > +{ > > + const struct cpufreq_policy *policy =3D info; > > + struct hwp_drv_data *data =3D this_cpu(hwp_drv_data); > > + union hwp_request hwp_req =3D data->curr_req; > > + > > + data->ret =3D 0; > > + > > + BUILD_BUG_ON(sizeof(union hwp_request) !=3D sizeof(uint64_t)); > > Why uint64_t? Generally we try to avoid using types in sizeof() and > alike, and instead refer to applicable variables. I.e. here: > > BUILD_BUG_ON(sizeof(hwp_req) !=3D sizeof(hwp_req.raw)); I used uint64_t because I thought that more clearly stated that the union is supposed to be 64bits in size - the size of the MSR. I'll change as you show above. > > +static int cf_check hwp_cpufreq_target(struct cpufreq_policy *policy, > > + unsigned int target_freq, > > + unsigned int relation) > > +{ > > + unsigned int cpu =3D policy->cpu; > > + struct hwp_drv_data *data =3D per_cpu(hwp_drv_data, cpu); > > + /* Zero everything to ensure reserved bits are zero... */ > > + union hwp_request hwp_req =3D { .raw =3D 0 }; > > + > > + /* .. and update from there */ > > + hwp_req.min_perf =3D data->minimum; > > + hwp_req.max_perf =3D data->maximum; > > + hwp_req.desired =3D data->desired; > > + hwp_req.energy_perf =3D data->energy_perf; > > + if ( feature_hwp_activity_window ) > > + hwp_req.activity_window =3D data->activity_window; > > + > > + if ( hwp_req.raw =3D=3D data->curr_req.raw ) > > + return 0; > > + > > + data->curr_req =3D hwp_req; > > + > > + hwp_verbose("CPU%u: wrmsr HWP_REQUEST %016lx\n", cpu, hwp_req.raw)= ; > > + on_selected_cpus(cpumask_of(cpu), hwp_write_request, policy, 1); > > Is this at risk of being too verbose when the verbose option as given? For my client use case, it seems fine since there aren't too many CPUs. But I think you are correct that for a server use case it would be too much. Hmmm. Do you think I should drop it or make it ratelimited? > > + return data->ret; > > +} > > + > > +static int cf_check hwp_cpufreq_cpu_init(struct cpufreq_policy *policy= ) > > +{ > > + unsigned int cpu =3D policy->cpu; > > + struct hwp_drv_data *data; > > + > > + data =3D xzalloc(struct hwp_drv_data); > > + if ( !data ) > > + return -ENOMEM; > > + > > + if ( cpufreq_opt_governor && strcmp(cpufreq_opt_governor->name, > > + cpufreq_gov_hwp.name) ) > > Nit: I think this would better be > > if ( cpufreq_opt_governor && > strcmp(cpufreq_opt_governor->name, cpufreq_gov_hwp.name) ) Sounds good. Actually, with the top level cpufreq=3Dhwp, cpufreq_opt_governor shouldn't be set anymore. I left it since it would point out something being unexpected. policy->governor is set unilaterally, so maybe this check and message should just be dropped. Thoughts? > > + printk(XENLOG_WARNING > > + "HWP: governor \"%s\" is incompatible with hwp. Using d= efault \"%s\"\n", > > + cpufreq_opt_governor->name, cpufreq_gov_hwp.name); > > + policy->governor =3D &cpufreq_gov_hwp; > > + > > + per_cpu(hwp_drv_data, cpu) =3D data; > > + > > + on_selected_cpus(cpumask_of(cpu), hwp_init_msrs, policy, 1); > > + > > + if ( data->curr_req.raw =3D=3D -1 ) > > + { > > + hwp_err("Could not initialize HWP properly\n", cpu); > > + XFREE(per_cpu(hwp_drv_data, cpu)); > > Is this completely safe even in the CPU online/hotplug case? It would > seem better to me to go this way: > > per_cpu(hwp_drv_data, cpu) =3D NULL; > xfree(data); I'll do this because... > Or even defer publishing "data" ... > > > + return -ENODEV; > > + } > > + > > + data->minimum =3D data->curr_req.min_perf; > > + data->maximum =3D data->curr_req.max_perf; > > + data->desired =3D data->curr_req.desired; > > + data->energy_perf =3D data->curr_req.energy_perf; > > + data->activity_window =3D data->curr_req.activity_window; > > ... until after it was fully populated. (But I seem to vaguely recall > that you need to use the field somewhere in the init process.) ... hwp_init_msrs() uses the per-cpu entry to save data->curr_req, so it can't be totally deferred. > > + hwp_verbose("CPU%u: HWP_CAPABILITIES: %016lx\n", cpu, data->hwp_ca= ps); > > Isn't this expected (or even required) to be the same on all CPUs? If > so, no need to log every time. I'll print only for CPU 0. > > +static int cf_check hwp_cpufreq_cpu_exit(struct cpufreq_policy *policy= ) > > +{ > > + XFREE(per_cpu(hwp_drv_data, policy->cpu)); > > Same remark as above, primarily because this is also used on an error > path. > > > +/* > > + * The SDM reads like turbo should be disabled with MSR_IA32_PERF_CTL = and > > + * PERF_CTL_TURBO_DISENGAGE, but that does not seem to actually work, = at least > > + * with my HWP testing. MSR_MISC_ENABLE and MISC_ENABLE_TURBO_DISENGA= GE > > + * is what Linux uses and seems to work. > > + */ > > "my testing" imo wants replacing here by saying what hardware was tested > (not who did the testing). Good idea. > > +static int cf_check hwp_cpufreq_update(int cpuid, struct cpufreq_polic= y *policy) > > +{ > > + struct hwp_drv_data *data =3D per_cpu(hwp_drv_data, cpuid); > > + on_selected_cpus(cpumask_of(cpuid), hwp_set_misc_turbo, policy, 1)= ; > > Nit: Blank line please between declaration(s) and statement(s). Or > alternatively drop the local variable ltogether, as it's used ... > > > + return data->ret; > > ... just once here. I'll drop the local variable. > > +} > > + > > +static const struct cpufreq_driver __initconstrel hwp_cpufreq_driver = =3D > > Seeing __initconstrel here, just as a remark (not a request for you > to do anything): I think we want to finish conversion to altcall, such > that these can all become __initconst_cf_clobber. > > > --- a/xen/drivers/cpufreq/cpufreq.c > > +++ b/xen/drivers/cpufreq/cpufreq.c > > @@ -97,6 +97,15 @@ static int __init cf_check setup_cpufreq_option(cons= t char *str) > > return cpufreq_cmdline_parse(arg + 1); > > } > > > > + if ( choice < 0 && !cmdline_strcmp(str, "hwp") ) > > + { > > + xen_processor_pmbits |=3D XEN_PROCESSOR_PM_PX; > > + cpufreq_controller =3D FREQCTL_xen; > > + opt_cpufreq_hwp =3D true; > > + if ( *arg && *(arg + 1) ) > > A pretty unusual way of writing arg[1]. I just copied code above and out of context. I'll change it to arg[1]. > > --- a/xen/include/acpi/cpufreq/cpufreq.h > > +++ b/xen/include/acpi/cpufreq/cpufreq.h > > @@ -246,4 +246,7 @@ void cpufreq_dbs_timer_resume(void); > > > > void intel_feature_detect(struct cpufreq_policy *policy); > > > > +extern bool __initdata opt_cpufreq_hwp; > > No __initdata or alike on declarations please. Section placement > attributes (among others) only belong on the definition. Ok. > > --- a/xen/include/acpi/cpufreq/processor_perf.h > > +++ b/xen/include/acpi/cpufreq/processor_perf.h > > @@ -7,6 +7,9 @@ > > > > #define XEN_PX_INIT 0x80000000 > > > > +bool hwp_available(void); > > +int hwp_register_driver(void); > > + > > int powernow_cpufreq_init(void); > > unsigned int powernow_register_driver(void); > > unsigned int get_measured_perf(unsigned int cpu, unsigned int flag); > > The existing split between what lives in which header is pretty > arbitrary from all I can tell. Is there a particular reason you can't > keep together the four declarations you add? No reason. I'll move them all to cpufreq.h. I was going to move them to processor_perf.h, but later get/set_hwp_para() definitions need struct cpufreq_policy. cpufreq.h includes processor_perf.h before it defines struct cpufreq_policy, so it's easier to just move the declarations to cpufreq.h. > > --- a/xen/include/public/sysctl.h > > +++ b/xen/include/public/sysctl.h > > @@ -296,6 +296,7 @@ struct xen_ondemand { > > uint32_t up_threshold; > > }; > > > > +#define XEN_HWP_DRIVER "hwp" > > I think this wants some addition to the identifier which makes it expecte= d > that the expansion is a string literal. Perhaps XEN_HWP_DRIVER_NAME? XEN_HWP_DRIVER_NAME sounds good. > > /* > > Nit: There also wants to be a blank line between #define and comment. Ok. Thanks, Jan. Regards, Jason From xen-devel-bounces@lists.xenproject.org Tue Jun 20 18:29:16 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 20 Jun 2023 18:29:16 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552232.862186 (Exim 4.92) (envelope-from ) id 1qBg6F-0001aV-CV; Tue, 20 Jun 2023 18:29:07 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552232.862186; Tue, 20 Jun 2023 18:29:07 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBg6F-0001aO-9v; Tue, 20 Jun 2023 18:29:07 +0000 Received: by outflank-mailman (input) for mailman id 552232; Tue, 20 Jun 2023 18:29:06 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBg6D-0001aI-RS for xen-devel@lists.xenproject.org; Tue, 20 Jun 2023 18:29:06 +0000 Received: from NAM11-BN8-obe.outbound.protection.outlook.com (mail-bn8nam11on20600.outbound.protection.outlook.com [2a01:111:f400:7eae::600]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 55538cc6-0f98-11ee-b234-6b7b168915f2; Tue, 20 Jun 2023 20:29:04 +0200 (CEST) Received: from SN6PR12MB2621.namprd12.prod.outlook.com (2603:10b6:805:73::15) by SA1PR12MB7037.namprd12.prod.outlook.com (2603:10b6:806:24c::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.25; Tue, 20 Jun 2023 18:29:00 +0000 Received: from SN6PR12MB2621.namprd12.prod.outlook.com ([fe80::8018:78f7:1b08:7a54]) by SN6PR12MB2621.namprd12.prod.outlook.com ([fe80::8018:78f7:1b08:7a54%2]) with mapi id 15.20.6500.036; Tue, 20 Jun 2023 18:29:00 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 55538cc6-0f98-11ee-b234-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=IjL8m6FAhVhybR9MP2n/maU9RhTAtTKr04Lkqj/hV18d4RBxwjpRHva6BP0m+tQeJy+q4ZdOzQVO2Mlnsspw2Qiy+MgQjL1e9Y6t1IMNEHkt5KcEtkxY0tseZ61guPhgtO7vmC8c81n4nap+W8ueAQ12AqVF9KLgP75u0Rs4zXrGHozLyJ3xj5JnLJ8vOeyqD9W/AKwqU+uBSHqYdE5SOtAl+aA+66iBMwgpjump9CT8vAUf9G/+EAfEEBLwpG7MF2v0heFhRtrw8dYWp3zWiduxLhQTQQ/gKFRhjSfmiSwqWUgLmr0V5a4LNt0E0EscEw5qLXXHrxzofFRZVFWaVQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=Um1Q1Vanm/D1QbI7wp0XIu2hJX7VGk0raR4T4yWZFsI=; b=ZhlOcL8d0+DysBiTikokFYFzzbs0zlT/N2qU4s3b+JUEPMwasv/moOESx9mfw+GYj72CvI+gfBpKk6e5tyF+OmrAEWThpK3uJc1xyQXYPgSzqt5A9ZHWxno1WM8iqwZoBZy1fF2QeiGO3o8hghn55y1bjTqTX0eyR97uZTCDJ2hEtLf9D7u5DoWgHPiqpbAOAOeRPTUabY+rrpk3Fkcavj4oTbndqdeDpMAh4DJgKzmYvgBu9KfqAe9vfE3krWELtpPKQ+Y8wSr9L7/X4yElhMoEFKlg1/Gf08vXLhX0J0Fum05xbHR/MMnWU1P/SA0xuTP7yJjs+w+Jmbl9N9kcPQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass header.d=amd.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Um1Q1Vanm/D1QbI7wp0XIu2hJX7VGk0raR4T4yWZFsI=; b=aj6Q83OmPGoacTPRbNrwwB9ZzlpVdv6ytv5pQZOUaxad1HRj6ATEgbmxKxsxE5UDd9/RzlT4IoNtYS6sWJ3VW3zOMp9GbUGl3w/NCZgjddc2/XqxS2zNauRTmmX8vbBY9E4Ft4Zz+Y2Qbda2OMHj8tA7C9E5Xy2no5NXw7mAZzk= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=amd.com; Message-ID: Date: Tue, 20 Jun 2023 19:28:54 +0100 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH v1] xen/arm: arm32: Add support to identify the Cortex-R52 processor To: Julien Grall , Ayan Kumar Halder , xen-devel@lists.xenproject.org Cc: sstabellini@kernel.org, stefano.stabellini@amd.com, Volodymyr_Babchuk@epam.com, bertrand.marquis@arm.com References: <20230620151736.3720850-1-ayan.kumar.halder@amd.com> From: Ayan Kumar Halder In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO4P123CA0390.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:18f::17) To SN6PR12MB2621.namprd12.prod.outlook.com (2603:10b6:805:73::15) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SN6PR12MB2621:EE_|SA1PR12MB7037:EE_ X-MS-Office365-Filtering-Correlation-Id: e82f65a8-fcd9-4566-d84c-08db71bc3745 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: l2elAZ6WVdqn0/lZh5u78nMfeWwYT3UKVxzmRbQYMisy4mgZj8Z7xMOw0jErwWnytIm7imcnarQnetR24x2IU9BRX+m+RkvcuauzHBwHZHLUFT4g2WgO+Cbz1SGjnAGRbU0AEQLoot+ya3j5r3EpzmZhNY9Aeuqvi5UWKMYk2ts5x9CTo+NCpBi9V4gPN/++u+sMTxBLqqy5x6Jrb4pq5EcL6zTVtDdDIYnPvyls41IOqXyxzcVahJ6ibYFSO7rkt0Xb4tmTtVHo0cLFjl3GCCePDdl7k/avQBMyBHdG8yLGsqpvc2BWECf26wDwAmz82CeQqFu3bhhX2+2cgs9roUGxEepw4MjtgqOUHLc5z88wPf0zR0BcJ7NChWGUsJQ5w3o34qbrXthQ9kSZg+CKnuChxneQBh7jALxipCJt0HM1y2juwHGnTzn5vj6/VfzdT54VbEbEwhshmn2QaS4/Y8Oe562aqZAHZLG7tm9Y9Z1FB2HCkaE5jjLr+/Dug8RxzEo2dTcMEbx7cAvvN2ptEZHIaViscl7Kyzk0lg0OT+HwPfffIsZp/dKEwqlhmAcnT+A/EZxk/YM0/X3SYNBJegFj20OaWvcIIt2Yq8EwEEN1gS7aY9wT5KzUAKoCCcqnZZjGKT10Vkuv02MQmSXHsw== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SN6PR12MB2621.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(396003)(366004)(39860400002)(346002)(136003)(376002)(451199021)(38100700002)(110136005)(31686004)(41300700001)(31696002)(6666004)(66556008)(66946007)(8676002)(316002)(6486002)(8936002)(66476007)(4326008)(36756003)(2906002)(53546011)(478600001)(6512007)(26005)(5660300002)(6506007)(186003)(2616005)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?dGRzYUZINy9pMkhoSXZQdUVrRlpOTWtaZ2tWR3NrS0RQSjFGaDRXZ0hSQVU1?= =?utf-8?B?SVV4UVViZi9wYmNFQ0o3eVNyOE52S0xsc3AwYjU1Q3R5YTlBTzduTnRwT3p2?= =?utf-8?B?WUk4dnVhK0dxNFIzWE1Gckw5dC9nUUZLektLTUticVRJZlVLUm9aK2Z0cFhz?= =?utf-8?B?c1lLbW8rSms0SVVUN01wNFo2dmVjNldCbEZQTElheDJpUHdMRFZIU00vRERI?= =?utf-8?B?L2RxY25vcFQ2S0orcThOcVRLaHdrMnBuNkJVZzBTUTJTL3NOdXhvLzNXWGFM?= =?utf-8?B?eWNpazk0bU1mN0JuNWFWSkZvVEo2S2RMaG5mK1JQdlR4YWp0VjNJc2hjN0F1?= =?utf-8?B?N0dkRTVTWnlFaXB1YmlDSVpDYVp5ZDFIb3R4cTNYQ1BLLzFCZlN1MGFCRmRp?= =?utf-8?B?Y0E1QzhlTXVjbVJrcmdvVTdFbk52c2R6dG53TDJvMjVCN2hBdGtqWjhleE41?= =?utf-8?B?cjY2SDRqVy9LV0I1anJzb0JtYTlFemcwVldYWm5Hb2pDZmF1Rzc1R1BDT2dV?= =?utf-8?B?ZkxySnlLUGJtTVp4dFRzaThjeHB2WEVTTXB3QU4zYU5kVFUxV0J2aEJ3WXA3?= =?utf-8?B?d3VJWVRZUVZUTkFueWxqcmw0SXRkb2dVNjEwWGhrUFBjc1krSG50N3JmclFl?= =?utf-8?B?U0FUeUFQK2k5WloxdUpCOEoxZmFsVVBIOEh0ZHBIbTRvbzh3aXBoSTkrNEpH?= =?utf-8?B?OHJYamlYR1BVeG5LL0tJRVl4VUFocHcwemlkZUs2Ykh6a2FTV0Y1T3dUTHE4?= =?utf-8?B?bnkvRmdQQzNEa3g3cENUZm9ENzcvNjBuVFBLWEs1OUJCUHZZZjJBSmxNLzhG?= =?utf-8?B?YWtyMUhGYkNxSmExaXNWcy9lczg1aE5hSFBkMzY2czBFaEZjdmpsTlNtWTMy?= =?utf-8?B?Z3JMelZFbjdZeC94R0o0MVpUYk9lUk9jL1hQTkNzQ1FIbmVqMUpoeXNyTEhq?= =?utf-8?B?OVlNL2gzYldkTlBzYmhEYmRvbUIxRFNoOWxoUXNwcE5oWmZWYVNzTHNoUTBm?= =?utf-8?B?STNrQXlHMStnWGhNT1NwWDNSblBuMkhrRXh1c0JQNktEU3p1dXl4L3RjaVAw?= =?utf-8?B?SnRRbUlKWTFTRUVrWXdXWmJ4RTFFTERSMnd5MHlaUXBDUDBKNXF3bEFZeVNv?= =?utf-8?B?NUh1KzYvNUQ2d2xQVk5DekJUcVNoaGFuaGtCMmYrMllFQW1WZ1ErVFdSMVdo?= =?utf-8?B?ZGNGWDF2enJlSHR2NEM3S3ROK3pDc2NwSDlndGZIUmxQN28wdTYwSEQyTlYx?= =?utf-8?B?THZZOHNLQVFFWXhHMjh1ZlNZWEplMmlRRmdkU1JSMFUyeWZOMWtjSG4rWTBL?= =?utf-8?B?SXhkUHdIbW0yZS9YUzhkUnduRjJXek8wL1R2Sm9vVDVCOFVpQ3BWcStpdEVs?= =?utf-8?B?RFJUYjM3TzZOL2J6czd0S3pDeHMxNnlaSnZkdHZlS3dGd1BDRmlUYjJRWDRW?= =?utf-8?B?VUFXakNnSy9SbldWMlhVbllKei9RQU1CMEY4WlE2Q3gwblQ4RUtaS0lGakRL?= =?utf-8?B?YTE2QTFvU05iRmxWdVJJaUY3Vlg5T1Q1ckZkM042cTUwYjA5U2FLV3ZSZUFB?= =?utf-8?B?a1NwSmYyenZpczRuQjE0TmtIZFpXYVhaYWk4VlhTTGVKczBNeWJtaG1sWFJy?= =?utf-8?B?UUFFZzJ0eGUyWDNZTk1DbFlYRmlrRjV6bUlDN2RjVTRSMFdoREhveG1QTUpp?= =?utf-8?B?QUFMZEIzaGhKVW5RNlRjS3ovN052cnBCUTR0d1ExZlZHcTkzRjZBN2dlRWcv?= =?utf-8?B?c0JDZHJ4cG1hMGNwNUlnc2hVZEUvSS9ZYVNLdUk3bktVdFN4VnFNMCtBUmxi?= =?utf-8?B?bGdZeFZqWXpnZnN3dkxGbjBiYnFPbnF1WHlxNit3QXJQQVpqdC9jRkFMUWFr?= =?utf-8?B?MnVJY3EwZ09VdUplN1AzamtHVnhic3RoQXB2aExxa1dxQUlncUJ2MUh1THAr?= =?utf-8?B?NnZ2WENLNnVzNExCLy83RjZ6elRySzhTT0FmQnRZd1hqVzI5dmx6dXpRRkVr?= =?utf-8?B?dW1qRGtFK0lleHFBT0dXRUgzaUNMNHpGUEhWcGczNi9UdzU2dEM3TnZ1SjNU?= =?utf-8?B?OVhSMGY5djh5K3UwODF2WGh6SGJzcCt6MDRVN2svMEJaVFl3UlpyOTBmWGx3?= =?utf-8?Q?ET9MuVRbPkaX9Moa4tGBqzaM3?= X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-Network-Message-Id: e82f65a8-fcd9-4566-d84c-08db71bc3745 X-MS-Exchange-CrossTenant-AuthSource: SN6PR12MB2621.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Jun 2023 18:28:59.9822 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: fRQf84j61TGy8vyfUV59RR74kooamRG01jSL1QAQ0l1lAGydjEiOnT0ttNPABVCpnGJNcQIlxQolKISVtzZNcg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA1PR12MB7037 On 20/06/2023 17:41, Julien Grall wrote: > Hi, Hi Julien, > > On 20/06/2023 16:17, Ayan Kumar Halder wrote: >> Add a special configuration (CONFIG_AARCH32_V8R) to setup the Cortex-R52 >> specifics. >> >> Cortex-R52 is an Arm-V8R AArch32 processor. >> >> Refer ARM DDI 0487I.a ID081822, G8-9647, G8.2.112 MIDR, >> bits[31:24] = 0x41 , Arm Ltd >> bits[23:20] = Implementation defined >> bits[19:16] = 0xf , Arch features are individually identified >> bits[15:4] = Implementation defined >> bits[3:0] = Implementation defined >> >> Thus, the processor id is 0x410f0000 and the processor id mask is >> 0xff0f0000 >> >> Also, there is no special initialization required for R52. > > Are you saying that Xen upstream + this patch will boot on Cortex-R52? This patch will help for earlyboot of Xen. With this patch, cpu_init() will work on Cortex-R52. There will be changes required for the MPU configuration, but that will be sent after Penny's patch serie "[PATCH v2 00/41] xen/arm: Add Armv8-R64 MPU support to Xen - Part#1" is upstreamed. My aim is to extract the non-dependent changes and send them for review. > >> >> Signed-off-by: Ayan Kumar Halder >> --- >>   xen/arch/arm/Kconfig         |  7 +++++++ >>   xen/arch/arm/arm32/Makefile  |  1 + >>   xen/arch/arm/arm32/proc-v8.S | 32 ++++++++++++++++++++++++++++++++ >>   3 files changed, 40 insertions(+) >>   create mode 100644 xen/arch/arm/arm32/proc-v8.S >> >> diff --git a/xen/arch/arm/Kconfig b/xen/arch/arm/Kconfig >> index 61e581b8c2..c45753a2dd 100644 >> --- a/xen/arch/arm/Kconfig >> +++ b/xen/arch/arm/Kconfig >> @@ -3,6 +3,13 @@ config ARM_32 >>       depends on "$(ARCH)" = "arm32" >>       select ARCH_MAP_DOMAIN_PAGE >>   +config AARCH32_V8R >> +    bool "AArch32 Arm V8R Support (UNSUPPORTED)" if UNSUPPORTED >> +    def_bool n >> +    depends on ARM_32 >> +    help >> +      This option enables Armv8-R profile for AArch32. >> + >>   config ARM_64 >>       def_bool y >>       depends on !ARM_32 >> diff --git a/xen/arch/arm/arm32/Makefile b/xen/arch/arm/arm32/Makefile >> index 520fb42054..2ab808a7a8 100644 >> --- a/xen/arch/arm/arm32/Makefile >> +++ b/xen/arch/arm/arm32/Makefile >> @@ -8,6 +8,7 @@ obj-y += head.o >>   obj-y += insn.o >>   obj-$(CONFIG_LIVEPATCH) += livepatch.o >>   obj-y += proc-v7.o proc-caxx.o >> +obj-$(CONFIG_AARCH32_V8R) += proc-v8.o >>   obj-y += smpboot.o >>   obj-y += traps.o >>   obj-y += vfp.o >> diff --git a/xen/arch/arm/arm32/proc-v8.S b/xen/arch/arm/arm32/proc-v8.S >> new file mode 100644 >> index 0000000000..c5a566b165 >> --- /dev/null >> +++ b/xen/arch/arm/arm32/proc-v8.S > > Below you say the file will contain v8r specific initialization. So > please rename it to proc-v8r.S. Ack. - Ayan > > Cheers, > From xen-devel-bounces@lists.xenproject.org Tue Jun 20 18:42:06 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 20 Jun 2023 18:42:06 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552237.862197 (Exim 4.92) (envelope-from ) id 1qBgIZ-00040K-GK; Tue, 20 Jun 2023 18:41:51 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552237.862197; Tue, 20 Jun 2023 18:41:51 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBgIZ-00040D-DV; Tue, 20 Jun 2023 18:41:51 +0000 Received: by outflank-mailman (input) for mailman id 552237; Tue, 20 Jun 2023 18:41:50 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBgIY-000407-Cj for xen-devel@lists.xenproject.org; Tue, 20 Jun 2023 18:41:50 +0000 Received: from mail-ed1-x52e.google.com (mail-ed1-x52e.google.com [2a00:1450:4864:20::52e]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 1cd75a11-0f9a-11ee-8611-37d641c3527e; Tue, 20 Jun 2023 20:41:48 +0200 (CEST) Received: by mail-ed1-x52e.google.com with SMTP id 4fb4d7f45d1cf-5147e40bbbbso5315232a12.3 for ; Tue, 20 Jun 2023 11:41:48 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 1cd75a11-0f9a-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687286507; x=1689878507; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=5XcJUV/tZVqUo1gtYZWsvIKi4zb6TKYlHQGAMgLV6Fw=; b=naOIwvgVKO7lFsQdokp8kwk69MuTWfU9BxNn4h8Aoq6JYAmZudb3TDyAnwKUap4hQA idMynxYHI2VOd7CaWbBz56bLxDE86mMvKo8XTJKzH6uRObl0y8aFFdTmS27Drz6Mj+tU pTdpvl6HEkjzKl58oQvHroQmNH0wicNoEjbhjZJYgedJBcasjPIeZ50/T6E0g8y5sxdD 35au0TnPeVuM7iCTaMWAaaxv7p4aw3wOMfcCm2y0j7aNBKNUBwqIPC5nZ6u2aA9cgDqC ZG0UAVreMbiKsRkb6okh/yA4EN1HFBBuVkPmW7o0QW6V3+xtLPtsTc97cnwsL0BvMEy+ x5zA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687286507; x=1689878507; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=5XcJUV/tZVqUo1gtYZWsvIKi4zb6TKYlHQGAMgLV6Fw=; b=TrEphAEmn3lh11rLZ2dwW3r+i8PBylbOMuDl+1lFRML/G8GP0X4X1tlTJeP6hnMRMJ cO+JcWOi/9fMuYwyj2iBVzpDTHewAmdBhKboHFBf1KMLR4aIIpHV03XW7KmTCJ6t7cHf dcGcjMZX3WXOBXPUn8mT4seGE4Ixlzy5ANRtO8td51qzpRNHaDuEJappRa/m2uakOr0P 3ggY/zZeRZzpA5iySVM0c5uoaN9ute8VLue7CZCRKbAytJxDcxyzIM+T1kOIN4RdFj6V HSaqlwS9p04yy2fX3KHWb7gTazi78OYH/T+Enf7T6Uww6TQds7lQhFJ15o9n7VGElZIr fjLg== X-Gm-Message-State: AC+VfDxnoEQQ34WU/SDDngbr6Uh5/rWvo80LlAZ+AbzylH7N9rhHV2kB 59WANEb7IW4wUTOMTyQckVn5q75AYsskaPyoP4U= X-Google-Smtp-Source: ACHHUZ4+Biab0J9STP9Kj4Y6sBS5jk9YT2wDBfib/F8LG9a14Z504l3MrMl3+lsTkUi0K9WkaF73ZivxrLJVOrQYIbs= X-Received: by 2002:aa7:d78d:0:b0:51a:4557:2caf with SMTP id s13-20020aa7d78d000000b0051a45572cafmr5561008edq.34.1687286507195; Tue, 20 Jun 2023 11:41:47 -0700 (PDT) MIME-Version: 1.0 References: <20230614180253.89958-1-jandryuk@gmail.com> <20230614180253.89958-10-jandryuk@gmail.com> <791bf505-7335-d16d-617d-ec19dc637ea6@suse.com> In-Reply-To: <791bf505-7335-d16d-617d-ec19dc637ea6@suse.com> From: Jason Andryuk Date: Tue, 20 Jun 2023 14:41:35 -0400 Message-ID: Subject: Re: [PATCH v4 09/15] cpufreq: Export HWP parameters to userspace as CPPC To: Jan Beulich Cc: Andrew Cooper , =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= , Wei Liu , George Dunlap , Julien Grall , Stefano Stabellini , xen-devel@lists.xenproject.org Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Mon, Jun 19, 2023 at 10:24=E2=80=AFAM Jan Beulich wr= ote: > > On 14.06.2023 20:02, Jason Andryuk wrote: > > --- a/xen/arch/x86/acpi/cpufreq/hwp.c > > +++ b/xen/arch/x86/acpi/cpufreq/hwp.c > > @@ -537,6 +537,29 @@ static const struct cpufreq_driver __initconstrel = hwp_cpufreq_driver =3D > > .update =3D hwp_cpufreq_update, > > }; > > > > +int get_hwp_para(const unsigned int cpu, > > + struct xen_cppc_para *cppc_para) > > +{ > > + const struct hwp_drv_data *data =3D per_cpu(hwp_drv_data, cpu); > > + > > + if ( data =3D=3D NULL ) > > + return -EINVAL; > > Maybe better -ENODATA in this case? Sounds good. > > --- a/xen/drivers/acpi/pmstat.c > > +++ b/xen/drivers/acpi/pmstat.c > > @@ -251,48 +251,54 @@ static int get_cpufreq_para(struct xen_sysctl_pm_= op *op) > > else > > strlcpy(op->u.get_para.scaling_driver, "Unknown", CPUFREQ_NAME= _LEN); > > > > - if ( !(scaling_available_governors =3D > > - xzalloc_array(char, gov_num * CPUFREQ_NAME_LEN)) ) > > - return -ENOMEM; > > - if ( (ret =3D read_scaling_available_governors( > > - scaling_available_governors, > > - gov_num * CPUFREQ_NAME_LEN * sizeof(char))) ) > > + if ( !strncasecmp(op->u.get_para.scaling_driver, XEN_HWP_DRIVER, > > + CPUFREQ_NAME_LEN) ) > > Mind me asking why you think case-insensitive compare is appropriate here= ? I'll change to strncmp(). All the other string comparisons on pmstat.c are strncasecmp, so I followed that pattern. > > + ret =3D get_hwp_para(policy->cpu, &op->u.get_para.u.cppc_para)= ; > > + else > > { > > + if ( !(scaling_available_governors =3D > > + xzalloc_array(char, gov_num * CPUFREQ_NAME_LEN)) ) > > + return -ENOMEM; > > + if ( (ret =3D read_scaling_available_governors( > > + scaling_available_governors, > > + gov_num * CPUFREQ_NAME_LEN * sizeof(char))) ) > > I realize you only re-indent this, but since you need to touch it anyway, > may I suggest to also switch to siezof(*scaling_available_governors)? How about dropping sizeof(*scaling_available_governors)? This length ... > > + { > > + xfree(scaling_available_governors); > > + return ret; > > + } > > + ret =3D copy_to_guest(op->u.get_para.scaling_available_governo= rs, > > + scaling_available_governors, gov_num * CPUFREQ_NAM= E_LEN); > > Similarly here: Please adjust indentation while you touch this code. ... should match here, but this second one lacks the "* sizeof($foo)". They are strings, so multiplying by sizeof() is unusual. FTAOD, you want the indenting as: ret =3D copy_to_guest(op->u.get_para.scaling_available_governors, scaling_available_governors, gov_num * CPUFREQ_NAME_LEN); ? > > xfree(scaling_available_governors); > > - return ret; > > - } > > - ret =3D copy_to_guest(op->u.get_para.scaling_available_governors, > > - scaling_available_governors, gov_num * CPUFREQ_NAME_LE= N); > > - xfree(scaling_available_governors); > > - if ( ret ) > > - return ret; > > + if ( ret ) > > + return ret; > > > > - op->u.get_para.u.s.scaling_cur_freq =3D policy->cur; > > - op->u.get_para.u.s.scaling_max_freq =3D policy->max; > > - op->u.get_para.u.s.scaling_min_freq =3D policy->min; > > + op->u.get_para.u.s.scaling_cur_freq =3D policy->cur; > > + op->u.get_para.u.s.scaling_max_freq =3D policy->max; > > + op->u.get_para.u.s.scaling_min_freq =3D policy->min; > > > > - if ( policy->governor->name[0] ) > > - strlcpy(op->u.get_para.u.s.scaling_governor, > > - policy->governor->name, CPUFREQ_NAME_LEN); > > - else > > - strlcpy(op->u.get_para.u.s.scaling_governor, "Unknown", > > - CPUFREQ_NAME_LEN); > > + if ( policy->governor->name[0] ) > > + strlcpy(op->u.get_para.u.s.scaling_governor, > > + policy->governor->name, CPUFREQ_NAME_LEN); > > + else > > + strlcpy(op->u.get_para.u.s.scaling_governor, "Unknown", > > + CPUFREQ_NAME_LEN); > > > > - /* governor specific para */ > > - if ( !strncasecmp(op->u.get_para.u.s.scaling_governor, > > - "userspace", CPUFREQ_NAME_LEN) ) > > - { > > - op->u.get_para.u.s.u.userspace.scaling_setspeed =3D policy->cu= r; > > - } > > + /* governor specific para */ > > + if ( !strncasecmp(op->u.get_para.u.s.scaling_governor, > > + "userspace", CPUFREQ_NAME_LEN) ) > > + { > > + op->u.get_para.u.s.u.userspace.scaling_setspeed =3D policy= ->cur; > > + } > > Would also be nice if you could get rid of the unnecessary braces here > at this occasion. Sure > > --- a/xen/include/acpi/cpufreq/cpufreq.h > > +++ b/xen/include/acpi/cpufreq/cpufreq.h > > @@ -248,5 +248,7 @@ void intel_feature_detect(struct cpufreq_policy *po= licy); > > > > extern bool __initdata opt_cpufreq_hwp; > > int hwp_cmdline_parse(const char *s); > > +int get_hwp_para(const unsigned int cpu, > > I think we generally avoid const when it's not a pointed-to type. It's > not useful at all in a declaration. Ok > > --- a/xen/include/public/sysctl.h > > +++ b/xen/include/public/sysctl.h > > @@ -296,6 +296,61 @@ struct xen_ondemand { > > uint32_t up_threshold; > > }; > > > > +struct xen_cppc_para { > > + /* OUT */ > > + /* activity_window supported if 1 */ > > +#define XEN_SYSCTL_CPPC_FEAT_ACT_WINDOW (1 << 0) > > I think 1 isn't very helpful, looking forward. Perhaps better "set" or > "flag set"? "set" works for me. > > + uint32_t features; /* bit flags for features */ > > + /* > > + * See Intel SDM: HWP Performance Range and Dynamic Capabilities > > + * > > + * These four are 0-255 hardware-provided values. They "continuou= s, > > + * abstract unit-less, performance" values. smaller numbers are s= lower > > + * and larger ones are faster. > > + */ > > + uint32_t lowest; > > + uint32_t lowest_nonlinear; /* most_efficient */ > > Why non_linear in the external interface when internally you use > most_efficient (merely put in the comment here)? > > > + uint32_t nominal; /* guaranteed */ > > Similar question for the name choice here. There is a naming mismatch between the HWP fields and the CPPC fields. The commit message includes: The HWP most_efficient is mapped to CPPC lowest_nonlinear, and guaranteed i= s mapped to nominal. CPPC has a guaranteed that is optional while nominal is required. ACPI spec says "If this register is not implemented, OSPM assumes guaranteed performance is always equal to nominal performance." So the comments were to help with the mapping. Should I prefix the comments like "HWP: most_efficient"? > > + uint32_t highest; > > + /* > > + * See Intel SDM: IA32_HWP_REQUEST MSR (Address: 774H Logical Proc= essor > > + * Scope) > > + * > > + * These are all hints, and the processor may deviate outside of t= hem. > > + * Values below are 0-255. > > + * > > + * minimum and maximum can be set to the above hardware values to = constrain > > + * operation. The full range 0-255 is accepted and will be clippe= d by > > + * hardware. > > + */ > > + uint32_t minimum; > > + uint32_t maximum; > > + /* > > + * Set an explicit performance hint, disabling hardware selection. > > + * 0 lets the hardware decide. > > + */ > > + uint32_t desired; > > "Set" kind of conflicts with all fields being marked as OUT above. I thin= k > the word can simply be dropped? Sounds good. Thanks, Jason From xen-devel-bounces@lists.xenproject.org Tue Jun 20 19:24:53 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 20 Jun 2023 19:24:53 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552245.862207 (Exim 4.92) (envelope-from ) id 1qBgxz-0008SJ-OC; Tue, 20 Jun 2023 19:24:39 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552245.862207; Tue, 20 Jun 2023 19:24:39 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBgxz-0008SC-Iq; Tue, 20 Jun 2023 19:24:39 +0000 Received: by outflank-mailman (input) for mailman id 552245; Tue, 20 Jun 2023 19:24:39 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBgxy-0008S2-Ur; Tue, 20 Jun 2023 19:24:38 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBgxy-0007jy-MK; Tue, 20 Jun 2023 19:24:38 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBgxy-0007W9-9v; Tue, 20 Jun 2023 19:24:38 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qBgxy-0000qt-9U; Tue, 20 Jun 2023 19:24:38 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=IoRKzQ9Qw2gDiUI86pQmzCmil21orC75hdW8Ayrbn28=; b=qea1SbtT8l6zVVxCbCdi8zOqFL Z/ZGn3tjhc62mFDU5xaoUNxpYzarAQqKLUuUiOUZTacSlatvagNvRZXL3BnQP3nitR+/0bJCeN/1y J1hIzvywvraQ3XCkbZhXanPvY1wEWqjbsUAdRptqqbPKFOAq1eLZr5ToVblSLcLZQICg=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [linux-5.4 test] 181515: trouble: blocked/broken/fail/pass X-Osstest-Failures: linux-5.4:build-armhf::broken:regression linux-5.4:build-armhf:host-install(4):broken:regression linux-5.4:test-amd64-i386-qemuu-rhel6hvm-amd:xen-install:fail:heisenbug linux-5.4:test-amd64-i386-pair:xen-install/src_host:fail:heisenbug linux-5.4:test-amd64-i386-pair:xen-install/dst_host:fail:heisenbug linux-5.4:test-amd64-i386-freebsd10-amd64:xen-install:fail:heisenbug linux-5.4:build-armhf-libvirt:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-examine:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-xl:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking linux-5.4:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking linux-5.4:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking linux-5.4:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-vhd:hosts-allocate:starved:nonblocking X-Osstest-Versions-This: linux=61a2f83e4762ee0c766f86944e612305f5888bcb X-Osstest-Versions-That: linux=f568a20f058fa1e37069cff4aac4187c1650a0e9 From: osstest service owner Date: Tue, 20 Jun 2023 19:24:38 +0000 flight 181515 linux-5.4 real [real] http://logs.test-lab.xenproject.org/osstest/logs/181515/ Failures and problems with tests :-( Tests which did not succeed and are blocking, including tests which could not be run: build-armhf broken build-armhf 4 host-install(4) broken REGR. vs. 181363 Tests which are failing intermittently (not blocking): test-amd64-i386-qemuu-rhel6hvm-amd 7 xen-install fail in 181508 pass in 181515 test-amd64-i386-pair 10 xen-install/src_host fail pass in 181508 test-amd64-i386-pair 11 xen-install/dst_host fail pass in 181508 test-amd64-i386-freebsd10-amd64 7 xen-install fail pass in 181508 Tests which did not succeed, but are not blocking: build-armhf-libvirt 1 build-check(1) blocked n/a test-armhf-armhf-examine 1 build-check(1) blocked n/a test-armhf-armhf-libvirt 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-qcow2 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-raw 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a test-armhf-armhf-xl-arndale 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit1 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-multivcpu 1 build-check(1) blocked n/a test-armhf-armhf-xl-rtds 1 build-check(1) blocked n/a test-armhf-armhf-xl-vhd 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 181363 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop fail like 181363 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop fail like 181363 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 181363 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 181363 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 181363 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop fail like 181363 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop fail like 181363 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 181363 test-amd64-i386-xl-pvshim 14 guest-start fail never pass test-amd64-i386-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-i386-libvirt 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-amd64-i386-libvirt-raw 14 migrate-support-check fail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass test-arm64-arm64-xl-vhd 3 hosts-allocate starved in 181508 n/a version targeted for testing: linux 61a2f83e4762ee0c766f86944e612305f5888bcb baseline version: linux f568a20f058fa1e37069cff4aac4187c1650a0e9 Last test of basis 181363 2023-06-10 15:39:59 Z 10 days Testing same since 181425 2023-06-14 10:50:49 Z 6 days 11 attempts ------------------------------------------------------------ People who touched revisions under test: Ai Chao Alan Stern Alex Deucher Alexander Sverdlin Arnd Bergmann Bartosz Golaszewski Ben Hutchings Chia-I Wu Chris Paterson (CIP) David Jander David S. Miller David Sterba Dmitry Torokhov Eric Dumazet Fedor Pchelkin Florian Westphal Greg Kroah-Hartman Guenter Roeck Gustavo A. R. Silva Hangyu Hua Harshit Mogalapalli Ilya Dryomov Ismael Ferreras Morezuelas JaimeLiao Jakub Kicinski Jamal Hadi Salim Jens Axboe Jiri Slaby (SUSE) Jon Hunter Josef Bacik Jozsef Kadlecsik Kuniyuki Iwashima Linus Walleij Linux Kernel Functional Testing Luiz Augusto von Dentz Marc Kleine-Budde Mark Brown Martin Hundebøll Maxime Ripard Michael Chan Min Li Miquel Raynal Oleksij Rempel Pablo Neira Ayuso Paolo Abeni Paulo Alcantara (SUSE) Paulo Alcantara Qingfang DENG Randy Dunlap RenHai Rishabh Bhatnagar Ruihan Li Sasha Levin Shuah Khan Simon Wunderlich Somnath Kotur Stefan Ghinea Stephan Gerhold Steve French Sudip Mukherjee Sungwoo Kim Sven Eckelmann Takashi Iwai Tejun Heo Theodore Ts'o Tijs Van Buggenhout Uwe Kleine-König Ville Syrjälä Vladislav Efanov Wolfram Sang Xiubo Li Ying Hsu YouChing Lin Zixuan Fu jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf broken build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt blocked build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl blocked test-amd64-i386-xl pass test-amd64-coresched-i386-xl pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-i386-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-i386-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-i386-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-i386-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-i386-qemut-rhel6hvm-amd pass test-amd64-i386-qemuu-rhel6hvm-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-i386-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-freebsd10-amd64 fail test-amd64-amd64-qemuu-freebsd11-amd64 pass test-amd64-amd64-qemuu-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-i386-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-i386-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-i386-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-amd64-i386-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale blocked test-amd64-amd64-examine-bios pass test-amd64-i386-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 blocked test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 blocked test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine blocked test-amd64-i386-examine pass test-amd64-i386-freebsd10-i386 pass test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-i386-qemut-rhel6hvm-intel pass test-amd64-i386-qemuu-rhel6hvm-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt blocked test-amd64-i386-libvirt pass test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu blocked test-amd64-amd64-pair pass test-amd64-i386-pair fail test-amd64-amd64-libvirt-pair pass test-amd64-i386-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-i386-xl-pvshim fail test-amd64-amd64-pygrub pass test-armhf-armhf-libvirt-qcow2 blocked test-amd64-amd64-xl-qcow2 pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw blocked test-amd64-i386-libvirt-raw pass test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-amd64-i386-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-i386-examine-uefi pass test-amd64-amd64-libvirt-vhd pass test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd blocked test-amd64-i386-xl-vhd pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary broken-job build-armhf broken broken-step build-armhf host-install(4) broken-job build-armhf broken Not pushing. (No revision log; it would be 1380 lines long.) From xen-devel-bounces@lists.xenproject.org Tue Jun 20 19:56:07 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 20 Jun 2023 19:56:07 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552254.862217 (Exim 4.92) (envelope-from ) id 1qBhSB-0003Ua-AS; Tue, 20 Jun 2023 19:55:51 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552254.862217; Tue, 20 Jun 2023 19:55:51 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBhSB-0003UT-6M; Tue, 20 Jun 2023 19:55:51 +0000 Received: by outflank-mailman (input) for mailman id 552254; Tue, 20 Jun 2023 19:55:50 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBhSA-0003UN-DZ for xen-devel@lists.xenproject.org; Tue, 20 Jun 2023 19:55:50 +0000 Received: from EUR04-HE1-obe.outbound.protection.outlook.com (mail-he1eur04on2048.outbound.protection.outlook.com [40.107.7.48]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 733831e6-0fa4-11ee-8611-37d641c3527e; Tue, 20 Jun 2023 21:55:48 +0200 (CEST) Received: from AS9PR06CA0203.eurprd06.prod.outlook.com (2603:10a6:20b:45d::27) by GV2PR08MB9277.eurprd08.prod.outlook.com (2603:10a6:150:d5::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.37; Tue, 20 Jun 2023 19:55:06 +0000 Received: from AM7EUR03FT006.eop-EUR03.prod.protection.outlook.com (2603:10a6:20b:45d:cafe::21) by AS9PR06CA0203.outlook.office365.com (2603:10a6:20b:45d::27) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.23 via Frontend Transport; Tue, 20 Jun 2023 19:55:05 +0000 Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by AM7EUR03FT006.mail.protection.outlook.com (100.127.141.21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.23 via Frontend Transport; Tue, 20 Jun 2023 19:55:05 +0000 Received: ("Tessian outbound 3a01b65b5aad:v136"); Tue, 20 Jun 2023 19:55:05 +0000 Received: from d885df5e577f.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 63FD0EDA-0FE3-434F-962D-CCEEC6E48398.1; Tue, 20 Jun 2023 19:54:57 +0000 Received: from EUR05-DB8-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id d885df5e577f.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Tue, 20 Jun 2023 19:54:57 +0000 Received: from AM6PR08MB3749.eurprd08.prod.outlook.com (2603:10a6:20b:8f::22) by AS1PR08MB7401.eurprd08.prod.outlook.com (2603:10a6:20b:4c7::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.37; Tue, 20 Jun 2023 19:54:55 +0000 Received: from AM6PR08MB3749.eurprd08.prod.outlook.com ([fe80::ed0b:5730:a1f9:577b]) by AM6PR08MB3749.eurprd08.prod.outlook.com ([fe80::ed0b:5730:a1f9:577b%5]) with mapi id 15.20.6521.023; Tue, 20 Jun 2023 19:54:55 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 733831e6-0fa4-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=9circiMDxEmemgz5d54tTuPK2WrlvY/vCTY4DFFw1Ac=; b=6ZhDwmEGOeMoA3Eut7UK5SHhNbPWXWgiLcrTRrmXuiUWAcjSIzbq1xAWt5nTFtbPTEIfiqJ7oXoJjlsOz8XKecTsmNXrPESsN5fupb0WkavunTJRRtXrVEOVS8Bf+u8dWGMFkpBMJTVrkzXCC9gQ5dHUuJB0iVtrfWFOI1nPuq8= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C X-CheckRecipientChecked: true X-CR-MTA-CID: f27eeefb9f1dc146 X-CR-MTA-TID: 64aa7808 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=kTiNF7aWca5AV8r4NzrLtmuO93N088TxqZl+ibA4jeOe/ogrSNoVJnEtXya8b9/LJsVWnBGR0rXgrF7DfZFhIkZJVA1BxRScXKX4+8UnYDyfH2CPStF1cXyVKsc7m+D5tRcCswUGw10pRsQR4fOYnAHUj4NkNVuTSlXQBpzeiAVuOELmmYjyuDizb3ff2BBlVHS+7SSrc+gf/iATZH533HtSVzuPT1Wze6m/5WR5io+edcuoKwLIPF9aGo1tDVTzTNMfCeyLXPPf3r5Pc0ETf6U/nc3/MYkGb2bEZ8DMlfUAJxYeyZJ8UWgF29XemgfpUHTvAXpV8dJApwmoOE26tA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=9circiMDxEmemgz5d54tTuPK2WrlvY/vCTY4DFFw1Ac=; b=RI4soxr28P8MgAzZsoiQqN9bYRVCR+w7IC8i+mFQg5PbCWoY9jioPNeE+OMLM9OxqgNDDvJURVouPVWAOCb6kefCLhKdwY2gIYhIr1RNXNJpsFFNjBkCXj6/Zy89JFYrTMSZP1yI8A52oFn7Q812CbrNu21chwnKeHa97KgOfLVl5tVMcM8s4ZC2bid+QJHxAt4UVBmdzmr+TRV0c88miSk7gzEWhKwpOkawM06RQ7c4VbFR165BVowMkalZIZs9r7cuTXtHb75VWKSu018FXpdq5SJWKAvPdgX8KfDC72ShsaViAwDadwLsrW8uQaqsXmisN3eiYtEk2uI/6ZnWVA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=9circiMDxEmemgz5d54tTuPK2WrlvY/vCTY4DFFw1Ac=; b=6ZhDwmEGOeMoA3Eut7UK5SHhNbPWXWgiLcrTRrmXuiUWAcjSIzbq1xAWt5nTFtbPTEIfiqJ7oXoJjlsOz8XKecTsmNXrPESsN5fupb0WkavunTJRRtXrVEOVS8Bf+u8dWGMFkpBMJTVrkzXCC9gQ5dHUuJB0iVtrfWFOI1nPuq8= From: Luca Fancellu To: Simone Ballarin CC: Jan Beulich , "consulting@bugseng.com" , Gianluca Luparini , Andrew Cooper , George Dunlap , Julien Grall , Stefano Stabellini , Wei Liu , Michal Orzel , Xenia Ragiadakou , Ayan Kumar , "xen-devel@lists.xenproject.org" Subject: Re: [XEN PATCH 13/13] xen: fixed violations of MISRA C:2012 Rule 7.2 Thread-Topic: [XEN PATCH 13/13] xen: fixed violations of MISRA C:2012 Rule 7.2 Thread-Index: AQHZo2ahcQOuFpmGz0i0RQTxkmFbqK+TrUGAgAAKzQCAAGNCAA== Date: Tue, 20 Jun 2023 19:54:54 +0000 Message-ID: <8B3907CA-0253-4A74-8095-1923943A422B@arm.com> References: <3560de5fd05a67cc10c9426ffd55639ebe24d98d.1687250177.git.gianluca.luparini@bugseng.com> <7837d4f0-ebb2-b420-7af6-d8b3c6b2daa3@suse.com> In-Reply-To: Accept-Language: en-GB, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-mailer: Apple Mail (2.3731.600.7) Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-traffictypediagnostic: AM6PR08MB3749:EE_|AS1PR08MB7401:EE_|AM7EUR03FT006:EE_|GV2PR08MB9277:EE_ X-MS-Office365-Filtering-Correlation-Id: 8a82cbcf-6280-411c-b9db-08db71c83e2a x-checkrecipientrouted: true nodisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: oFdmR9+0aoJxvO7XDiV4sSz0nlDHPH71nUL0Dh5OPqsJITgb9lkLztbUqLNY9lt1ZviFj7pSetbfzP4QnZovjWWTdK2Ny9xWf2cPJ9AeEUsbBLBThwusVgWcp1PL2957Ck+o+shbiSSWFFCIiN9rBVZOntUEdPPXhZLBg9kocOpWaLy68rIw5XjkKAmaokRqwn9+yMGjU6IOg6vTKMqAdFbJPH3ChMUiWpPQ952FAN1ZwJi+hwxACIRZ9j6trX/UJmM7qZH3Dxreyvy7H5Cq9RjOvPQME3bMdw84a3aZ8vzjiUSxxcFHqoxEXHXBzETTe7uKtxqN4+DTCGmCvripL7oYBrOBMmqPIh+1a1oJIsjZh7UcGU0+ThO991eGZYIdhTR5VS8BzEf3lnoM2WHnRCpv/xzW2R0feCZvX77cKkfdhAXJYobJA5zrnO7/X9MJzWrHeZXjNqvb1GJtyJAEDLZGfbYomH7BgGz1goJDIhQKq4oCYioa4a3fOCT1GW592cZo53VB7Z1U/p//xdl9St0XC/lBVn0YO3nazSyqNQrVUaw9Aj8/AYHr4fZsdS9+JVRaSZnduiCZP3YbGUveVS43u8Q2OsCaVc8zPafgzN/RxYbLPhpZqxTqxJhOz5dd X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM6PR08MB3749.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(376002)(396003)(136003)(366004)(39860400002)(346002)(451199021)(8936002)(26005)(6512007)(186003)(6506007)(91956017)(38070700005)(53546011)(41300700001)(316002)(4326008)(76116006)(66946007)(66556008)(6916009)(66446008)(64756008)(66476007)(122000001)(6486002)(38100700002)(71200400001)(54906003)(36756003)(478600001)(2906002)(86362001)(2616005)(33656002)(5660300002)(7416002)(8676002)(45980500001);DIR:OUT;SFP:1101; Content-Type: text/plain; charset="us-ascii" Content-ID: Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS1PR08MB7401 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: AM7EUR03FT006.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: d5d45ddd-c4b1-471a-97cf-08db71c837e4 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: gdWOJDYlBPXsC46XLruoVpxjz0KW3Lace/iEkglUKQS6HwW5fh9x1FXV4t6lgpuQfOz9PNZ//evRswWFYEiizIt6de6D9n3SzZQuqcRB8EmKMeGZBA+ZUo8NtwxCgLnW/TrEWhXzN7Za3fLEHoO6ZgLFz3Fj/VLy3LGd7P8aPhrTjDJ6tFPwypYPBDI7529ih6oV8xJYzDEYroeBVG7i/o68rsdYYybvQaYthcBhsaGw1hriD3tl8jnJJVM42oaIgw8yw0M8t07xPJk0E3y0NXjK8RgQjLvy9T8Q+qsRWEwsMR4oTR5wZfidOSox1CkjdrmtBfH3pxC6xrpdhVW8gC7lauVFndnxnDMmMmXVqmWO/I2kuyu1nDMuz5alXxJkS3krYFgjgEKnIpEn8rgnYaErNqFy9tiG4HfCe/jvJYwQu/9iz8Kbxugyu3ZjRcupsjHHwY029J4D2eCaIdbgWChGVuuNUHhoeV0kl0FhsthUqgReM7iH8zMzNlFXAVSQg6yqjXmKG37VGbcYKNVUd+ToDuUpZqY+R3Nkb9NsJ04DVoa927155IiaxPsyZKxtLNUxB17ndoQr6ueOpEbKaZQdi6vo9GLzspFC5eCrALcjxWGT4/ElPcRm6ervoqH9MQD40Bc+9WPPqD1bqWAAeNUHLPRgEJPIhNU2im+0CyGic4zUCxqj2qf5n80RCWtDl+kFqzOeGjp2rMFqw2x596+vAdMUgrWa+ZmFy/adtP4= X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230028)(4636009)(396003)(376002)(39860400002)(346002)(136003)(451199021)(40470700004)(36840700001)(46966006)(6506007)(6512007)(26005)(2906002)(36860700001)(33656002)(40460700003)(86362001)(40480700001)(6862004)(70586007)(70206006)(4326008)(41300700001)(316002)(336012)(47076005)(2616005)(53546011)(6486002)(186003)(82740400003)(82310400005)(36756003)(8676002)(8936002)(356005)(81166007)(478600001)(54906003)(5660300002);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Jun 2023 19:55:05.2817 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 8a82cbcf-6280-411c-b9db-08db71c83e2a X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: AM7EUR03FT006.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: GV2PR08MB9277 > On 20 Jun 2023, at 14:59, Simone Ballarin w= rote: >=20 > Hi, >=20 > Il giorno mar 20 giu 2023 alle ore 15:20 Jan Beulich = ha scritto: > On 20.06.2023 12:35, Simone Ballarin wrote: > > --- a/xen/common/gunzip.c > > +++ b/xen/common/gunzip.c > > @@ -11,7 +11,7 @@ static unsigned char *__initdata window; > > static memptr __initdata free_mem_ptr; > > static memptr __initdata free_mem_end_ptr; > > =20 > > -#define WSIZE 0x80000000 > > +#define WSIZE 0x80000000U >=20 > This again is an imported file, which I'm not sure we want to touch like > this. (Then again it's only a single line change.) >=20 > This file is not present in exclude-list.json, in any case, I can remove = the change. Hi, I think you can touch this file, yes for sure it was imported from somewher= e, but from what I can see it was adopted by Xen and its code style is the Xen cod= estyle. Furthermore a previous commit, 21a41a6164305bbc66ff1e42ffc11301712f6d65, had already fixed a MISRA violation. > =20 > > --- a/xen/lib/muldiv64.c > > +++ b/xen/lib/muldiv64.c > > @@ -27,7 +27,7 @@ uint64_t muldiv64(uint64_t a, uint32_t b, uint32_t c) > > rh =3D (uint64_t)u.l.high * (uint64_t)b; > > rh +=3D (rl >> 32); > > res.l.high =3D rh / c; > > - res.l.low =3D (((rh % c) << 32) + (rl & 0xffffffff)) / c; > > + res.l.low =3D (((rh % c) << 32) + (rl & 0xffffffffU)) / c; >=20 > This might be neater and more consistent with surrounding code if > switched to (uint32_t)rl. >=20 > Jan >=20 > Ok. >=20 > --=20 > Simone Ballarin, M.Sc. >=20 > Field Application Engineer, BUGSENG (https://bugseng.com) From xen-devel-bounces@lists.xenproject.org Tue Jun 20 20:01:58 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 20 Jun 2023 20:01:58 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552259.862227 (Exim 4.92) (envelope-from ) id 1qBhY0-00051X-VN; Tue, 20 Jun 2023 20:01:52 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552259.862227; Tue, 20 Jun 2023 20:01:52 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBhY0-00051Q-Qz; Tue, 20 Jun 2023 20:01:52 +0000 Received: by outflank-mailman (input) for mailman id 552259; Tue, 20 Jun 2023 20:01:51 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBhXz-00051J-Lu for xen-devel@lists.xenproject.org; Tue, 20 Jun 2023 20:01:51 +0000 Received: from mail-ot1-x330.google.com (mail-ot1-x330.google.com [2607:f8b0:4864:20::330]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 4b0f2bf9-0fa5-11ee-b234-6b7b168915f2; Tue, 20 Jun 2023 22:01:50 +0200 (CEST) Received: by mail-ot1-x330.google.com with SMTP id 46e09a7af769-6b44b5adfd3so3803696a34.3 for ; Tue, 20 Jun 2023 13:01:50 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 4b0f2bf9-0fa5-11ee-b234-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687291309; x=1689883309; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=Q4F3qXm8x1AVi+0TrKGx40m/sFxYrt6Lj9IeE/BrpeU=; b=g8Wha6YZBIQ4F35wQ8P6Y0c98+3LfOEjAen8YviDIN/VpMlvLwu/TwEQtEhwi2wLbk 4/b97qENpIhbKycIE1G3aUVCeb+vz/rCN/gI0l10ch7iG8C6c3ywB5bQ5tQe6ryGYXul 5XkEWnvnLWIaJ1vsJQRh6tPgKWpuL7AyPHBFZQZGhCATWoDKR1D2YRUNFvvEx6dCnM6X zMyQcs2OOhmWkXYBbd2Z3eHBKxjZIMZIeFLBGw0YYdvfY15fMS5Ra2rC/awJj+k/fir6 OMXeho7/p64d1/Gcc6dtEtZlx65PVhnR78rxvmM8tH1fn8015FZgY0Ml6WWkfDm6BXzA dR7g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687291309; x=1689883309; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=Q4F3qXm8x1AVi+0TrKGx40m/sFxYrt6Lj9IeE/BrpeU=; b=UwvH+Uh1pUao8tCQRao1Xs7NkBJp7yqk0kQsyDWRzl5MqXdKxkuRygAJiCjogwwlzs yvgovL80p2ycGzphLtxDkcGFUsP1nrhHjKGzbHqz4Z+VlPxnytz9ySAtMO94m5fbkMXh fpBHsQFSzAC30+JLfDZ0PL6FX3Vo5dgrmVTUDmiXMKmeJVVQgRMh3PjQrmqaYH5zMEpq ThKkg/Agy8Rsy4dSTA5sLKcwIPn0gdq5DP69JZkR+rg7MWgwDHSxBKSlJ8YgnC7pkKeW w46do1zmlCGIuebTWmIl1oUozZa+Kz+MnQcTpwwStqWbKFg5C/aUCgHvmE6zTGyQwKIP OWaQ== X-Gm-Message-State: AC+VfDxaukHYjwsHGiDndK8Dagm5Bj1mdvO4G0dE9WD4c5+Jfq3j4KXk svIE2acDk8O453XXn1z6uc++macY+pxTCt1p5Y8= X-Google-Smtp-Source: ACHHUZ4Hj3uSYs4sk8lvmBdlBVPXrs6qDttIob0+AqgPuiIWdgPfm9A1hihEUgTK87y6a2gHhIBkt791vtKGzbzprm8= X-Received: by 2002:a05:6358:f0e:b0:12b:ed05:18bb with SMTP id b14-20020a0563580f0e00b0012bed0518bbmr8612256rwj.27.1687291309110; Tue, 20 Jun 2023 13:01:49 -0700 (PDT) MIME-Version: 1.0 References: <20230612210423.18611-1-vishal.moola@gmail.com> <20230612210423.18611-5-vishal.moola@gmail.com> In-Reply-To: From: Vishal Moola Date: Tue, 20 Jun 2023 13:01:39 -0700 Message-ID: Subject: Re: [PATCH v4 04/34] pgtable: Create struct ptdesc To: Jason Gunthorpe Cc: Andrew Morton , Matthew Wilcox , linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Fri, Jun 16, 2023 at 5:38=E2=80=AFAM Jason Gunthorpe wr= ote: > > On Mon, Jun 12, 2023 at 02:03:53PM -0700, Vishal Moola (Oracle) wrote: > > Currently, page table information is stored within struct page. As part > > of simplifying struct page, create struct ptdesc for page table > > information. > > > > Signed-off-by: Vishal Moola (Oracle) > > --- > > include/linux/pgtable.h | 51 +++++++++++++++++++++++++++++++++++++++++ > > 1 file changed, 51 insertions(+) > > > > diff --git a/include/linux/pgtable.h b/include/linux/pgtable.h > > index c5a51481bbb9..330de96ebfd6 100644 > > --- a/include/linux/pgtable.h > > +++ b/include/linux/pgtable.h > > @@ -975,6 +975,57 @@ static inline void ptep_modify_prot_commit(struct = vm_area_struct *vma, > > #endif /* __HAVE_ARCH_PTEP_MODIFY_PROT_TRANSACTION */ > > #endif /* CONFIG_MMU */ > > > > + > > +/** > > + * struct ptdesc - Memory descriptor for page tables. > > + * @__page_flags: Same as page flags. Unused for page tables. > > + * @pt_list: List of used page tables. Used for s390 and x86. > > + * @_pt_pad_1: Padding that aliases with page's compound head. > > + * @pmd_huge_pte: Protected by ptdesc->ptl, used for THPs. > > + * @_pt_s390_gaddr: Aliases with page's mapping. Used for s390 gmap on= ly. > > + * @pt_mm: Used for x86 pgds. > > + * @pt_frag_refcount: For fragmented page table tracking. Powerpc and = s390 only. > > + * @ptl: Lock for the page table. > > + * > > + * This struct overlays struct page for now. Do not modify without a g= ood > > + * understanding of the issues. > > + */ > > +struct ptdesc { > > + unsigned long __page_flags; > > + > > + union { > > + struct list_head pt_list; > > + struct { > > + unsigned long _pt_pad_1; > > + pgtable_t pmd_huge_pte; > > + }; > > + }; > > + unsigned long _pt_s390_gaddr; > > + > > + union { > > + struct mm_struct *pt_mm; > > + atomic_t pt_frag_refcount; > > + }; > > + > > +#if ALLOC_SPLIT_PTLOCKS > > + spinlock_t *ptl; > > +#else > > + spinlock_t ptl; > > +#endif > > +}; > > I think you should include the memcg here too? It needs to be valid > for a ptdesc, even if we don't currently deref it through the ptdesc > type. Yes, thanks for catching that! I'll add it to v5. > Also, do you see a way to someday put a 'struct rcu_head' into here? Eventually, when they're being dynamically allocated independent of struct page. Although at that point I'm not sure if we'll need one. > Thanks, > Jason From xen-devel-bounces@lists.xenproject.org Tue Jun 20 20:06:46 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 20 Jun 2023 20:06:46 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552264.862237 (Exim 4.92) (envelope-from ) id 1qBhch-0005dU-G6; Tue, 20 Jun 2023 20:06:43 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552264.862237; Tue, 20 Jun 2023 20:06:43 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBhch-0005dN-Ck; Tue, 20 Jun 2023 20:06:43 +0000 Received: by outflank-mailman (input) for mailman id 552264; Tue, 20 Jun 2023 20:06:41 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBhcf-0005dD-SM; Tue, 20 Jun 2023 20:06:41 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBhcf-0000Hu-GR; Tue, 20 Jun 2023 20:06:41 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBhcf-0008Pe-2z; Tue, 20 Jun 2023 20:06:41 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qBhcf-0005zJ-2X; Tue, 20 Jun 2023 20:06:41 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=5Ji0lY1DjiKwVstIKCbrqWgDAD3FnrI2NJ16dKD+aQg=; b=xcMMctzsO6fNdjWyjKUBYhbCQk FMt2+ii7rJwfvfeimCaWLP80upoadGYNrNmjVDlPSrDJlcm6gNJNznanT0/mKV9/CUPSM3ErUzMqU 3aTkdzZugFju7gFb1geb417j4CMYF9gIMwVeNf/086BMDrQhHfeSAEbL9VW+YJlV/MZo=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [qemu-mainline test] 181516: regressions - trouble: blocked/broken/fail/pass X-Osstest-Failures: qemu-mainline:build-armhf::broken:regression qemu-mainline:build-armhf:host-install(4):broken:regression qemu-mainline:build-amd64:xen-build:fail:regression qemu-mainline:build-amd64-xsm:xen-build:fail:regression qemu-mainline:build-i386:xen-build:fail:regression qemu-mainline:build-i386-xsm:xen-build:fail:regression qemu-mainline:build-arm64:xen-build:fail:regression qemu-mainline:build-arm64-xsm:xen-build:fail:regression qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-i386:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:build-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:build-arm64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:build-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:build-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pygrub:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking X-Osstest-Versions-This: qemuu=48ab886d3da4f3ab94f79f6c0f8b4535b446bbfd X-Osstest-Versions-That: qemuu=6972ef1440a9d685482d78672620a7482f2bd09a From: osstest service owner Date: Tue, 20 Jun 2023 20:06:41 +0000 flight 181516 qemu-mainline real [real] http://logs.test-lab.xenproject.org/osstest/logs/181516/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-armhf broken build-armhf 4 host-install(4) broken REGR. vs. 180691 build-amd64 6 xen-build fail REGR. vs. 180691 build-amd64-xsm 6 xen-build fail REGR. vs. 180691 build-i386 6 xen-build fail REGR. vs. 180691 build-i386-xsm 6 xen-build fail REGR. vs. 180691 build-arm64 6 xen-build fail REGR. vs. 180691 build-arm64-xsm 6 xen-build fail REGR. vs. 180691 Tests which did not succeed, but are not blocking: test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-xl-xsm 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-raw 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-xsm 1 build-check(1) blocked n/a test-arm64-arm64-xl 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit1 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit2 1 build-check(1) blocked n/a test-arm64-arm64-xl-thunderx 1 build-check(1) blocked n/a test-arm64-arm64-xl-vhd 1 build-check(1) blocked n/a test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a test-armhf-armhf-libvirt 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-qcow2 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-raw 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a test-armhf-armhf-xl-arndale 1 build-check(1) blocked n/a test-armhf-armhf-xl-multivcpu 1 build-check(1) blocked n/a test-armhf-armhf-xl-rtds 1 build-check(1) blocked n/a test-armhf-armhf-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-amd 1 build-check(1) blocked n/a test-amd64-i386-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-raw 1 build-check(1) blocked n/a test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-i386 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-amd64 1 build-check(1) blocked n/a test-amd64-coresched-i386-xl 1 build-check(1) blocked n/a test-amd64-coresched-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-xsm 1 build-check(1) blocked n/a build-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-shadow 1 build-check(1) blocked n/a test-amd64-amd64-xl-rtds 1 build-check(1) blocked n/a build-arm64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a build-armhf-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a build-i386-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-amd 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-pair 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-qcow2 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-vhd 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvshim 1 build-check(1) blocked n/a test-amd64-amd64-pair 1 build-check(1) blocked n/a test-amd64-amd64-pygrub 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-intel 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd11-amd64 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd12-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-multivcpu 1 build-check(1) blocked n/a test-amd64-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit1 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit1 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit2 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-intel 1 build-check(1) blocked n/a test-amd64-i386-xl 1 build-check(1) blocked n/a test-amd64-i386-xl-pvshim 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a version targeted for testing: qemuu 48ab886d3da4f3ab94f79f6c0f8b4535b446bbfd baseline version: qemuu 6972ef1440a9d685482d78672620a7482f2bd09a Last test of basis 180691 2023-05-17 10:45:22 Z 34 days Failing since 180699 2023-05-18 07:21:24 Z 33 days 119 attempts Testing same since 181510 2023-06-19 19:09:09 Z 1 days 3 attempts ------------------------------------------------------------ People who touched revisions under test: Afonso Bordado Akihiko Odaki Akihiro Suda Alex Bennée Alex Williamson Alexander Bulekov Alexander Graf Alexander Ivanov Alistair Francis Anastasia Belova Andrea Bolognani Andreas Schwab Andrew Jeffery Ani Sinha Ani Sinha Anthony PERARD Anton Johansson Antonio Caggiano BALATON Zoltan Bastian Koppelmann Bernhard Beschow Bin Meng Brian Cain Brice Goglin Camilla Conte Carlos Santos Christian Schoenebeck Chuck Zmudzinski Cindy Lu Clément Chigot Corey Minyard Cornelia Huck Cédric Le Goater Cédric Le Goater Daniel Henrique Barboza Daniel Henrique Barboza Daniel P. Berrangé Daniil Kovalev David Hildenbrand David Woodhouse Emanuele Giuseppe Esposito Enze Li Eric Auger Eric Blake Eric DeVolder Erico Nunes Eugenio Pérez Fabiano Rosas Fan Ni Fiona Ebner Francesco Cagnin Francisco Iglesias Frederic Barrat Gavin Shan Gregory Price Gregory Price Guenter Roeck Hanna Czenczek Hao Zeng Hawkins Jiawei Himanshu Chauhan Igor Mammedov Ilya Leoshkevich Ira Weiny Ivan Klokov Jagannathan Raman Jason Wang Jean-Louis Dupond Jean-Philippe Brucker Jiajie Chen Jiaxun Yang Joao Martins John Snow Jonathan Cameron Juan Quintela Junqiang Wang Kevin Wolf Laurent Vivier Lei Yang Leonardo Bras Maksim Davydov Marc-André Lureau Marcin Juszkiewicz Marco Liebel Mark Cave-Ayland Markus Armbruster Martin Kaiser Matheus Tavares Bernardino Mattias Nissler Mauro Matteo Cascella Max Fritz Mayuresh Chitale Michael S. Tsirkin Michael Tokarev Michal Privoznik Milan Zamazal Mostafa Saleh Nicholas Piggin Nicolas Saenz Julienne Niek Linnenbank Niklas Cassel Ninad Palsule Palmer Dabbelt Paolo Bonzini Patrick Venture Peter Maydell Peter Xu Philippe Mathieu-Daudé Philippe Mathieu-Daudé qianfan Zhao Raghu H Rene Engel Richard Henderson Richard Purdie Ricky Zhou Ryan Wendland Sebastian Ott Sergey Kambalin Sergio Lopez Sid Manning Song Gao Stefan Hajnoczi Stefano Garzarella Stefano Stabellini Stefano Stabellini Steve Sistare Sunil V L Taylor Simpson Thomas Huth Thomas Weißschuh Tianrui Zhao timothee.cocault@gmail.com Timothée Cocault Tommy Wu Vikram Garhwal Viktor Prutyanov Vitaly Cheptsov Vivek Kasireddy Vladimir Sementsov-Ogievskiy Volker Rümelin Weiwei Li Xiao Wang Xinyu Li Yin Wang Zeng Hao Zhenyu Zhang Zhenzhong Duan Zhuojia Shen jobs: build-amd64-xsm fail build-arm64-xsm fail build-i386-xsm fail build-amd64 fail build-arm64 fail build-armhf broken build-i386 fail build-amd64-libvirt blocked build-arm64-libvirt blocked build-armhf-libvirt blocked build-i386-libvirt blocked build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl blocked test-amd64-coresched-amd64-xl blocked test-arm64-arm64-xl blocked test-armhf-armhf-xl blocked test-amd64-i386-xl blocked test-amd64-coresched-i386-xl blocked test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-i386-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-amd64-libvirt-xsm blocked test-arm64-arm64-libvirt-xsm blocked test-amd64-i386-libvirt-xsm blocked test-amd64-amd64-xl-xsm blocked test-arm64-arm64-xl-xsm blocked test-amd64-i386-xl-xsm blocked test-amd64-amd64-qemuu-nested-amd blocked test-amd64-amd64-xl-pvhv2-amd blocked test-amd64-i386-qemuu-rhel6hvm-amd blocked test-amd64-amd64-dom0pvh-xl-amd blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-freebsd10-amd64 blocked test-amd64-amd64-qemuu-freebsd11-amd64 blocked test-amd64-amd64-qemuu-freebsd12-amd64 blocked test-amd64-amd64-xl-qemuu-ovmf-amd64 blocked test-amd64-i386-xl-qemuu-ovmf-amd64 blocked test-amd64-amd64-xl-qemuu-win7-amd64 blocked test-amd64-i386-xl-qemuu-win7-amd64 blocked test-amd64-amd64-xl-qemuu-ws16-amd64 blocked test-amd64-i386-xl-qemuu-ws16-amd64 blocked test-armhf-armhf-xl-arndale blocked test-amd64-amd64-xl-credit1 blocked test-arm64-arm64-xl-credit1 blocked test-armhf-armhf-xl-credit1 blocked test-amd64-amd64-xl-credit2 blocked test-arm64-arm64-xl-credit2 blocked test-armhf-armhf-xl-credit2 blocked test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-freebsd10-i386 blocked test-amd64-amd64-qemuu-nested-intel blocked test-amd64-amd64-xl-pvhv2-intel blocked test-amd64-i386-qemuu-rhel6hvm-intel blocked test-amd64-amd64-dom0pvh-xl-intel blocked test-amd64-amd64-libvirt blocked test-armhf-armhf-libvirt blocked test-amd64-i386-libvirt blocked test-amd64-amd64-xl-multivcpu blocked test-armhf-armhf-xl-multivcpu blocked test-amd64-amd64-pair blocked test-amd64-i386-pair blocked test-amd64-amd64-libvirt-pair blocked test-amd64-i386-libvirt-pair blocked test-amd64-amd64-xl-pvshim blocked test-amd64-i386-xl-pvshim blocked test-amd64-amd64-pygrub blocked test-armhf-armhf-libvirt-qcow2 blocked test-amd64-amd64-xl-qcow2 blocked test-arm64-arm64-libvirt-raw blocked test-armhf-armhf-libvirt-raw blocked test-amd64-i386-libvirt-raw blocked test-amd64-amd64-xl-rtds blocked test-armhf-armhf-xl-rtds blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-amd64-xl-shadow blocked test-amd64-i386-xl-shadow blocked test-arm64-arm64-xl-thunderx blocked test-amd64-amd64-libvirt-vhd blocked test-arm64-arm64-xl-vhd blocked test-armhf-armhf-xl-vhd blocked test-amd64-i386-xl-vhd blocked ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary broken-job build-armhf broken broken-step build-armhf host-install(4) Not pushing. (No revision log; it would be 19849 lines long.) From xen-devel-bounces@lists.xenproject.org Tue Jun 20 20:08:36 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 20 Jun 2023 20:08:36 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552272.862248 (Exim 4.92) (envelope-from ) id 1qBheS-0006FL-3H; Tue, 20 Jun 2023 20:08:32 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552272.862248; Tue, 20 Jun 2023 20:08:32 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBheR-0006FE-Tn; Tue, 20 Jun 2023 20:08:31 +0000 Received: by outflank-mailman (input) for mailman id 552272; Tue, 20 Jun 2023 20:08:30 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBheQ-0006F8-Qt for xen-devel@lists.xenproject.org; Tue, 20 Jun 2023 20:08:30 +0000 Received: from EUR03-DBA-obe.outbound.protection.outlook.com (mail-dbaeur03on20604.outbound.protection.outlook.com [2a01:111:f400:fe1a::604]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 384e3f4a-0fa6-11ee-8611-37d641c3527e; Tue, 20 Jun 2023 22:08:28 +0200 (CEST) Received: from DU2PR04CA0083.eurprd04.prod.outlook.com (2603:10a6:10:232::28) by PAXPR08MB7490.eurprd08.prod.outlook.com (2603:10a6:102:2b7::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.37; Tue, 20 Jun 2023 20:08:25 +0000 Received: from DBAEUR03FT017.eop-EUR03.prod.protection.outlook.com (2603:10a6:10:232:cafe::a) by DU2PR04CA0083.outlook.office365.com (2603:10a6:10:232::28) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.37 via Frontend Transport; Tue, 20 Jun 2023 20:08:25 +0000 Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by DBAEUR03FT017.mail.protection.outlook.com (100.127.142.243) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.21 via Frontend Transport; Tue, 20 Jun 2023 20:08:25 +0000 Received: ("Tessian outbound e13c2446394c:v136"); Tue, 20 Jun 2023 20:08:25 +0000 Received: from 7f82db77059e.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 1139284F-16F9-499E-8EED-5CDE8158E5EB.1; Tue, 20 Jun 2023 20:08:18 +0000 Received: from EUR02-DB5-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 7f82db77059e.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Tue, 20 Jun 2023 20:08:18 +0000 Received: from AM6PR08MB3749.eurprd08.prod.outlook.com (2603:10a6:20b:8f::22) by AS8PR08MB8657.eurprd08.prod.outlook.com (2603:10a6:20b:565::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.23; Tue, 20 Jun 2023 20:08:16 +0000 Received: from AM6PR08MB3749.eurprd08.prod.outlook.com ([fe80::ed0b:5730:a1f9:577b]) by AM6PR08MB3749.eurprd08.prod.outlook.com ([fe80::ed0b:5730:a1f9:577b%5]) with mapi id 15.20.6521.023; Tue, 20 Jun 2023 20:08:16 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 384e3f4a-0fa6-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Dw99xWogjdWBedewA/C/J9H/djM3wdn7pVa0v5ebsBQ=; b=395CCCr235uJ7K4UeKBXySIU5q+ibAU/csQsoiJHmoICl9eeOqy8zrFBvSC9NwN+FgUACkeGuLImW1qdPiW4P6aRVv80g3CED8wyjcyLRTIZwRkRKLtr3issJsupdXgiV7KQh9DPtKyMGgcTO1/WxKYWoQafLiMCBVHcryCNMXY= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C X-CheckRecipientChecked: true X-CR-MTA-CID: 185425556636f6fd X-CR-MTA-TID: 64aa7808 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=LPoNHG6SVAFv3A+ULji3/WRZHxQ5fHT0qYW31ed8PfSzhmdJnaPjy7m9DvctU4d8i9d8yO2l4t3VHrqSstd9sy7+1j/iAdBWTlrLF9bXmncq/TJxgpRWw0Wm8tDHQ9oBiwQA8xNtgwC9kTql6Am3dnoworFAOka44DkC7Bc7V9F538feYN5YEX+kFcrny5Pe+PMuqKK+XWux1nMkMX8oxc6SPKHMQUt6Mr1PZWB+d/He7i4vHgpHDBh2OCIDCED6P6AIEi21zN43rhtUIaK2QN57CNjodrIjvIAyFCG5qx3KR8P5hWEE/ZD/z9P7u+9LTtQheCJzJ9ndVCct40B4Qg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=Dw99xWogjdWBedewA/C/J9H/djM3wdn7pVa0v5ebsBQ=; b=Y0YdcOhbqfDy87Axl8EacapuJCEQcF6KRX3h58UDikyGO3GLSUkpygAcl0Q/DvNsMV+pyorVVep8DNNiBLvtpYbgvorQy8Ds3RTtBxYT8OhE7UP02HBZzeYSyqA/5BosZ2dslbBktgCX0NKv/uoxjDOc0qnMNPWFWZFozhCHuHO3KZ+Y8TQAOz4kUIZt38NsSz56EDW8e/tHKfw80GjbO8wccJxcTRsG669KVusNO49HKElfip00tEM96wEXF48/D98X2ZJ16oLoAK5EPh+Gjyvl1G+uKer7gON/onRJrtXllKDpBxXvyoxyec3BPtmvLzkyKu0Uy4LmUZHzP6s5mw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Dw99xWogjdWBedewA/C/J9H/djM3wdn7pVa0v5ebsBQ=; b=395CCCr235uJ7K4UeKBXySIU5q+ibAU/csQsoiJHmoICl9eeOqy8zrFBvSC9NwN+FgUACkeGuLImW1qdPiW4P6aRVv80g3CED8wyjcyLRTIZwRkRKLtr3issJsupdXgiV7KQh9DPtKyMGgcTO1/WxKYWoQafLiMCBVHcryCNMXY= From: Luca Fancellu To: Jan Beulich CC: Simone Ballarin , Andrew Cooper , George Dunlap , Julien Grall , Stefano Stabellini , Wei Liu , "consulting@bugseng.com" , Gianluca Luparini , Michal Orzel , Xenia Ragiadakou , Ayan Kumar , "xen-devel@lists.xenproject.org" Subject: Re: [XEN PATCH 02/13] AMD/IOMMU: fixed violations of MISRA C:2012 Rule 7.2 Thread-Topic: [XEN PATCH 02/13] AMD/IOMMU: fixed violations of MISRA C:2012 Rule 7.2 Thread-Index: AQHZo2afksvNjPDPpkuuVAXSvearq6+TodUAgAB9NwA= Date: Tue, 20 Jun 2023 20:08:16 +0000 Message-ID: <37C5BC47-E735-4731-A6C6-F30189FA6B9D@arm.com> References: <21337a20c5c8d66dff552c2f09054ea82b253dd6.1687250177.git.gianluca.luparini@bugseng.com> <7cdd53c7-4d57-39f2-10fa-2fa2ddc98389@suse.com> In-Reply-To: <7cdd53c7-4d57-39f2-10fa-2fa2ddc98389@suse.com> Accept-Language: en-GB, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-mailer: Apple Mail (2.3731.600.7) Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-traffictypediagnostic: AM6PR08MB3749:EE_|AS8PR08MB8657:EE_|DBAEUR03FT017:EE_|PAXPR08MB7490:EE_ X-MS-Office365-Filtering-Correlation-Id: 28ec17c1-9ee0-4735-7112-08db71ca1adf x-checkrecipientrouted: true nodisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: +rN+F5CiJALqKqG1L1cStV20wijTTdjpL6abfMgvsqjZiC60Wj5M+XH7qfhrA2q5Iau52INfqe00nKOKDETe5OElEX+GmqUyEs5ReLwVU7my45L5RlBwYfpZSK1yohHD/zuHRmEZMVas+7zrc71AA1HnNJM039c1Y8nYWcf8e8UWzc1WvDrdmKAkUv/kQ68xcTsB3/aMSHgLitH4QCRCIq0LFZj2/eobHV8di7b/9UJw9lt7gJUcDVRmBDln1OQXNlfZBU3A6/TWWbPniQLFQ2MSSk/6u29dKs2W3JOjrR6WgplQ6oA3k9IyuLOiWdoXmtckDyj0PtWFT4JfhOFcI7FDJNBnSUJeM0pvCXkMK053Ci4Zm0Se7uAVgFz4q5+Y2TrPaK6J2DhRavuL6fGCGjAKwFL2eYk5orLt6T4pGqe1Z+OJD6aKicnp68Lg4Gdts5hagUwto/bkPQDnXcmspZ9cXGxHAQWy+aHGAVd8qXJ0bgn/YUbpqxL7imvI9art2CoNrknc6R9ezdNe8c6Eb/lgpRTfyikcQDN2Jr2g5XTU60pYh42TFd82xwLZwj36dBBCthA0QgQHFCASAJRX0Mmzty62XyPvfqp2QaP4FRJPI3I714pwHlcRn1MHm7jaeqTkFFtW5kyAU/7lnwjeFA== X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM6PR08MB3749.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(136003)(376002)(396003)(366004)(346002)(39860400002)(451199021)(7416002)(8676002)(8936002)(54906003)(36756003)(41300700001)(5660300002)(2906002)(316002)(71200400001)(6916009)(4326008)(76116006)(66446008)(91956017)(64756008)(66946007)(66476007)(66556008)(33656002)(6486002)(478600001)(38100700002)(86362001)(2616005)(122000001)(186003)(53546011)(38070700005)(6512007)(6506007)(26005)(45980500001);DIR:OUT;SFP:1101; Content-Type: text/plain; charset="utf-8" Content-ID: Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR08MB8657 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: DBAEUR03FT017.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: 3bf8ccc7-408c-444d-b04d-08db71ca15de X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: WRepRdNzEEs3tE7Wt27osfaSntqdT3guw9pDGzzQEc5cKebkEJgROHdX/xM1Jy33BqPrbo3tyKwayo/dG34QHEmsRnyOv8HLsH2jhmG3SR4Zkchuqy98gUor1STe5Zfe9Vj7bixCrT0kG9x4ahccPihNLizDS2p1gNgqz8hmF7v39JYghRBWw5Nbm3d0WvVX6iT/EyytnWu3ur001hIrBBGFheij9bH+owBdcEnedfxsQkRhjdCo4ehcZtodymU/eMLbTPWTyCA+WXBG7oW7PS0J4s01EZfsFQrvSJ4VUXTbEKzfIt73RHe+JlMqiRXvZIkd+Ookp11M5G4+Pg9uA1IHmE2n9zbJIRpMP8z2fov8JNhwKOoHOOfO9DR47VrRIa0+/+htiZY9nvlYJ+kUJu9s9qrMRvXo/zVIuR+rDTS/rWVCCBL+GUIa9LyHSni5Samkz6pHiSkn8YMDnOjPPwwaXqNoHqGcSqKA4I23RS0i0CnsSMXZ1FXLugtWbxr7bxSdWLm0aDaKRCXCnGxeLXYduOA9xfyfwFlacYCbblOlb4bdIPDJbydxN9Z9k2TARjU06emcEAm3KCUFL6FPvrGXDJhb4BM6XnY1DXDpbRHZEcpJmungKh3z0eCKPGRR3ZLWJgH9f98cm4Qtf1JXwnRNGy14yywvSjb7tyBAwr/w0KcsEDuqA29kiQneU8aDlIP6wRv9DWRN0RLa3LlRHjvZ5MtHlajBTgLSDNlbgs1NEKS/jI/C13d6ISmDyBmE X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230028)(4636009)(136003)(39860400002)(376002)(396003)(346002)(451199021)(46966006)(40470700004)(36840700001)(82740400003)(53546011)(81166007)(356005)(6506007)(6512007)(26005)(2616005)(336012)(47076005)(186003)(36860700001)(40480700001)(2906002)(33656002)(5660300002)(6862004)(8676002)(8936002)(36756003)(41300700001)(316002)(478600001)(70586007)(40460700003)(4326008)(54906003)(86362001)(70206006)(6486002)(82310400005);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Jun 2023 20:08:25.1240 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 28ec17c1-9ee0-4735-7112-08db71ca1adf X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: DBAEUR03FT017.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR08MB7490 DQoNCj4gT24gMjAgSnVuIDIwMjMsIGF0IDEzOjM5LCBKYW4gQmV1bGljaCA8amJldWxpY2hAc3Vz ZS5jb20+IHdyb3RlOg0KPiANCj4gT24gMjAuMDYuMjAyMyAxMjozNCwgU2ltb25lIEJhbGxhcmlu IHdyb3RlOg0KPj4gLS0tIGEveGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvYW1kL2lvbW11LWRlZnMu aA0KPj4gKysrIGIveGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvYW1kL2lvbW11LWRlZnMuaA0KPj4g QEAgLTM4LDQ5ICszOCw0OSBAQA0KPj4gICAgICAgICAoKHVpbnQ2NF90KShvZmZzZXQpIDw8ICgx MiArIChQVEVfUEVSX1RBQkxFX1NISUZUICogKChsZXZlbCkgLSAxKSkpKQ0KPj4gDQo+PiAvKiBJ T01NVSBDYXBhYmlsaXR5ICovDQo+PiAtI2RlZmluZSBQQ0lfQ0FQX0lEX01BU0sgMHgwMDAwMDBG Rg0KPj4gKyNkZWZpbmUgUENJX0NBUF9JRF9NQVNLIDB4MDAwMDAwRkZVDQo+IA0KPiBTZWVpbmcg dGhpcyBhbmQgc2ltaWxhciB1c2VzIGZ1cnRoZXIgZG93biwgSSB0aGluayB0aGVyZSdzIGEgcHVy ZWx5DQo+IHN0eWxpc3RpYyBxdWVzdGlvbiB0byBiZSByZXNvbHZlZCBmaXJzdCAoYW5kIGhlbmNl IEknbSB3aWRlbmluZyB0aGUgVG86DQo+IGxpc3QgaGVyZSk6IERvIHdlIHdhbnQgdG8gYWxsb3cg ZWl0aGVyIGNhc2Ugb2YgVSB0byBiZSB1c2VkDQo+IGludGVyY2hhbmdlYWJseSwgbGVhdmluZyB0 aGUgY2hvaWNlIHVwIHRvIHRoZSBwYXRjaCBhdXRob3I/DQoNCkJlY2F1c2UgeW91IGFzayB0byB0 aGUgbGlzdCwgbXkgcGVyc29uYWwgb3BpbmlvbiBpcyB0aGF0IHdlIG1pZ2h0IHdhbnQgdG8NCmhh dmUgb25seSBjYXBpdGFsIFUsIHNvIHRoYXQgaXTigJlzIGNvbnNpc3RlbnQgYWNyb3NzIHRoZSBj b2RlYmFzZSBhbmQgd2UgZG9u4oCZdA0KbmVlZCB0byBjcmVhdGUgdG9vIG1hbnkgcnVsZXMgZm9y IHRoZSBkZXZlbG9wZXIsIGl0IHN0YW5kcyBvdXQgYW55d2F5IGFzIGl0IGNhbuKAmXQNCmJlIGFu IGhleCBkaWdpdCwgYWxzbyBtYXliZSBldmVyeSBoZXggY29uc3RhbnQgaXMgbmljZXIgdG8gaGF2 ZSB3aXRoIGFsbCBjYXBpdGFsLA0KYnV0IHRoaXMgaXMgYW5vdGhlciBzdWJqZWN0Lg0KDQpTYWlk IHRoYXQsIGNsZWFybHkgaXTigJlzIHVwIHRvIHRoZSBtYWludGFpbmVycyB0byBjaG9vc2UuDQoN Cj4gDQo+IFBlcnNvbmFsbHkgYXQgbGVhc3QgZm9yIGhleCBudW1iZXJzIEknZCBwcmVmZXIgdGhl IHN1ZmZpeCB0byBzdGFuZCBvdXQ6IElmDQo+IHRoZSBkaWdpdHMgdXNlIHVwcGVyIGNhc2UsIGhh dmUgdGhlIHN1ZmZpeCBiZSBsb3dlciBjYXNlIGFuZCB2aWNlIHZlcnNhLg0KPiAoSWYgdGhlcmUg YXJlIG9ubHkgbnVtYmVycywgdGhlbiBzdXJyb3VuZGluZyBjb250ZXh0IHdvdWxkIG5lZWQNCj4g Y29uc3VsdGluZy4pIEkgcmVhbGl6ZSB0aG91Z2ggdGhhdCB0aGlzIHdpbGwgbm90IGZpdCB3ZWxs IHdpdGggdGhlIGRlc2lyZQ0KPiBvZiBhdm9pZGluZyBsb3dlci1jYXNlIGwgaW4gbnVtYmVyIHN1 ZmZpeGVzOyBpdCB3b3VsZCBiZSBmaW5lIGZvciBlLmcuDQo+IDB4RkZ1bC4gTm90IHN1cmUgaW4g aG93IG1hbnkgY2FzZXMgdGhpcyB3b3VsZCBtYXR0ZXIgdGhvdWdoLCBhcyBJIGV4cGVjdA0KPiBt b3N0IGNvbnN0YW50cyB3YW50IHRvIGJlIHVuc2lnbmVkLg0KPiANCj4gSmFuDQo+IA0KDQo= From xen-devel-bounces@lists.xenproject.org Tue Jun 20 20:18:04 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 20 Jun 2023 20:18:04 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552277.862257 (Exim 4.92) (envelope-from ) id 1qBhnM-0007lG-St; Tue, 20 Jun 2023 20:17:44 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552277.862257; Tue, 20 Jun 2023 20:17:44 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBhnM-0007l9-QL; Tue, 20 Jun 2023 20:17:44 +0000 Received: by outflank-mailman (input) for mailman id 552277; Tue, 20 Jun 2023 20:17:42 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBhnK-0007l3-OW for xen-devel@lists.xenproject.org; Tue, 20 Jun 2023 20:17:42 +0000 Received: from NAM10-BN7-obe.outbound.protection.outlook.com (mail-bn7nam10on2061c.outbound.protection.outlook.com [2a01:111:f400:7e8a::61c]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 811a7110-0fa7-11ee-b234-6b7b168915f2; Tue, 20 Jun 2023 22:17:40 +0200 (CEST) Received: from SA9PR10CA0009.namprd10.prod.outlook.com (2603:10b6:806:a7::14) by MW6PR12MB8952.namprd12.prod.outlook.com (2603:10b6:303:246::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.35; Tue, 20 Jun 2023 20:17:37 +0000 Received: from SN1PEPF000252A2.namprd05.prod.outlook.com (2603:10b6:806:a7:cafe::49) by SA9PR10CA0009.outlook.office365.com (2603:10b6:806:a7::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.37 via Frontend Transport; Tue, 20 Jun 2023 20:17:36 +0000 Received: from SATLEXMB03.amd.com (165.204.84.17) by SN1PEPF000252A2.mail.protection.outlook.com (10.167.242.9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6500.27 via Frontend Transport; Tue, 20 Jun 2023 20:17:36 +0000 Received: from SATLEXMB06.amd.com (10.181.40.147) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Tue, 20 Jun 2023 15:17:35 -0500 Received: from SATLEXMB04.amd.com (10.181.40.145) by SATLEXMB06.amd.com (10.181.40.147) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Tue, 20 Jun 2023 15:17:35 -0500 Received: from [192.168.137.15] (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server id 15.1.2507.23 via Frontend Transport; Tue, 20 Jun 2023 15:17:34 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 811a7110-0fa7-11ee-b234-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=KY2suoiTEWEfS4+3IwEU0Au1axJMhxwOjotXBsrwnXdJlmtQOtCC6Q+IFdgqhLwjOE0yrDVADgyp2hJV/5Ifu9Eu2XVZrbaHt6/LCxj1nCvBLojR5SUNbZiX2nYui1WVokKb9zg8cpjK4+oqMzJPOe6vwrlgyWJSWkFpSt8am5IFfaqQCW02mYIDP42ZoQFyBCq5WpRmGBFQcBjQLw5c9Afmkaw3IH5ElY28gPybq2hNoN9i7sOf3PSYVn3su3YhrgFmbV/6QSXA9On3POJz0wmbUwDgQ+jjLshI3ytmscKj7FHnqu1GjmQwy1nFFbaIhVPjL4NSgJfyj5rDKYEeWQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=zx181DDKOS+YXOh++MInpvRp7CSA8JPETz6niB+9IjU=; b=XgPPwF6VAFE646d8FBV3O/V0uyUzF+ROowyPu//kjVojhRp/gv6UuQNaxTzKwpudVq+iSy1k2IhZNA0pOnhm4HtX8WLkgyYygq0imJCJH5JISYUUaw9k2Gij5EUdtuxnTY7glMPkb2A6eBBEAEXVILVkNF0B6aLDUAGj0YNC6et/d52T1US0Kq7dp/9fBdsdrsYuGCWxwkaTGIb56czCo31ESQe+6a5jh4JjBKoJFYeofFdHRhUowIAL7+S4gKu+YnZBdtFn3/2YdnyUCzYEAZLmdst+F0DwlVy+lBPUkO89hrqEAtgR8EzIJBGuiPrTUwrm9pIN+7OmvwApRwzFSw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=epam.com smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=zx181DDKOS+YXOh++MInpvRp7CSA8JPETz6niB+9IjU=; b=4CuraYkzsU1ZL47pyHBOgDSM6NVu8464jPgPoGSdzC19U97BBNwO36o+GM8I4Y/EiQPFLdQHIuaxXVuJUXSZ5HhcOKy/Jb0fAYRUW5RAe7ancA9zPZiSX3Te60bbjfPiAYQsoesiAWTMc6UYj4HOsGTQPX0SPyXPEkskc3QO7NI= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C Message-ID: <6418b3bf-5b7e-3c12-52d6-534bf791617a@amd.com> Date: Tue, 20 Jun 2023 16:17:28 -0400 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 From: Stewart Hildebrand Subject: Re: [PATCH v7 01/12] vpci: introduce per-domain lock to protect vpci structure To: Volodymyr Babchuk , "xen-devel@lists.xenproject.org" CC: Oleksandr Andrushchenko , Jan Beulich , Andrew Cooper , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , George Dunlap , Julien Grall , Stefano Stabellini , Paul Durrant References: <20230613103159.524763-1-volodymyr_babchuk@epam.com> <20230613103159.524763-2-volodymyr_babchuk@epam.com> Content-Language: en-US In-Reply-To: <20230613103159.524763-2-volodymyr_babchuk@epam.com> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SN1PEPF000252A2:EE_|MW6PR12MB8952:EE_ X-MS-Office365-Filtering-Correlation-Id: a1a3a1a5-98e1-4ce6-7fb8-08db71cb635f X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: eP6mnERuWTDmUOOZq3grwOXB3hfc1Spg+lHXClIEDBCbqt/c7hxtflfzUuSaUxjfNGAYVaNIvLy+84Jt7N7mnY/4av2n7jM+TcZAB/CExhrAo3D6gWmL22loKZfKEdVsGXN9s29lXy9A/7hIrdlFe051RywzYcNqDbITfS2UfXBdsYtI2WQGYff5RI9Pg8R0TzuoL6CqVMt4jmviz/hjuydy78h3cEZQK7p75RSOrRkTm5WdbiOT/8RBHPMM99PMTHm2a2CkCuE3RgKEanxcY/YI8fyXxngIxxutiqsbykUU025aUoVI4JhoQG/hFZDZ0/Zmc9TmM6DK3Eyizkb1Na9lKcKMDT3VzaB8J/DGhMFZdKU911XLPlWPIlfKkNtWCiJRia1Ib54+u73qMJh6KYICzcq9A4j6GaOjiXOexq8luoEjK/O5yIOPBrsneK1/o6SpnfRFk4WKOisfweG4RUX1AIK1NPICcihcLimT8qTGeNebHySyGf2lTLEgGYFmsE51pS0Ba16/vMwzrUmZoYNwXeuylnRgkpxj0HaZdjc8HfD5KK+Fr/CR4AMtEDF5aCsUjcyhqVDF1whEFPac4F08bEUNjj9YbjUyUVVQ7lUmU10WOh6kSXa8i+ZP3XVxRN3iElQikr8zzQElk1jNE6mqxXzcoZUblpVIeCXuYr6jccB0ls5WZhASa2wxIJWqS/TfC4LikGpJGG3rSDXA4Wb3B4NiAdX0lY2fwNQJYD37gEHv1jz2R7IKrFYtIXQRkzhI01jseqLQEOv1xitk2PZaSgDPWXgLfc8khVPFm3a1x9VMueqdXS+zHSeJYix6 X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(376002)(346002)(136003)(396003)(451199021)(46966006)(40470700004)(36840700001)(40480700001)(44832011)(36756003)(2906002)(40460700003)(2616005)(186003)(53546011)(26005)(4326008)(70206006)(70586007)(8676002)(8936002)(41300700001)(82310400005)(6666004)(316002)(5660300002)(7416002)(478600001)(110136005)(54906003)(31696002)(16576012)(47076005)(82740400003)(356005)(36860700001)(86362001)(83380400001)(426003)(336012)(31686004)(81166007)(36900700001)(43740500002);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Jun 2023 20:17:36.1934 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: a1a3a1a5-98e1-4ce6-7fb8-08db71cb635f X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com] X-MS-Exchange-CrossTenant-AuthSource: SN1PEPF000252A2.namprd05.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW6PR12MB8952 On 6/13/23 06:32, Volodymyr Babchuk wrote: ... > diff --git a/xen/drivers/vpci/vpci.c b/xen/drivers/vpci/vpci.c > index 652807a4a4..1270174e78 100644 > --- a/xen/drivers/vpci/vpci.c > +++ b/xen/drivers/vpci/vpci.c > @@ -38,20 +38,32 @@ extern vpci_register_init_t *const __end_vpci_array[]; > > void vpci_remove_device(struct pci_dev *pdev) > { > - if ( !has_vpci(pdev->domain) || !pdev->vpci ) > + struct vpci *vpci; > + > + if ( !has_vpci(pdev->domain) ) > return; > > - spin_lock(&pdev->vpci->lock); > + write_lock(&pdev->domain->vpci_rwlock); > + if ( !pdev->vpci ) > + { > + write_unlock(&pdev->domain->vpci_rwlock); > + return; > + } > + > + vpci = pdev->vpci; > + pdev->vpci = NULL; Here we set pdev->vpci to NULL, yet there are still a few uses remaining after this in vpci_remove_device. I suspect they were missed during a s/pdev->vpci/vpci/ search and replace. > + write_unlock(&pdev->domain->vpci_rwlock); > + > while ( !list_empty(&pdev->vpci->handlers) ) pdev->vpci dereferenced here > { > - struct vpci_register *r = list_first_entry(&pdev->vpci->handlers, > + struct vpci_register *r = list_first_entry(&vpci->handlers, > struct vpci_register, > node); > > list_del(&r->node); > xfree(r); > } > - spin_unlock(&pdev->vpci->lock); > + > if ( pdev->vpci->msix ) pdev->vpci dereferenced here > { > unsigned int i; > @@ -61,29 +73,33 @@ void vpci_remove_device(struct pci_dev *pdev) > if ( pdev->vpci->msix->table[i] ) pdev->vpci dereferenced here, and two more above not shown in the diff context > iounmap(pdev->vpci->msix->table[i]); pdev->vpci dereferenced here > } > - xfree(pdev->vpci->msix); > - xfree(pdev->vpci->msi); > - xfree(pdev->vpci); > - pdev->vpci = NULL; > + xfree(vpci->msix); > + xfree(vpci->msi); > + xfree(vpci); > } From xen-devel-bounces@lists.xenproject.org Tue Jun 20 20:32:21 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 20 Jun 2023 20:32:21 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552283.862266 (Exim 4.92) (envelope-from ) id 1qBi1K-0001lb-5H; Tue, 20 Jun 2023 20:32:10 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552283.862266; Tue, 20 Jun 2023 20:32:10 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBi1K-0001lU-2b; Tue, 20 Jun 2023 20:32:10 +0000 Received: by outflank-mailman (input) for mailman id 552283; Tue, 20 Jun 2023 20:32:08 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBi1I-0001lO-GU for xen-devel@lists.xenproject.org; Tue, 20 Jun 2023 20:32:08 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [2604:1380:4641:c500::1]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 8272ce35-0fa9-11ee-8611-37d641c3527e; Tue, 20 Jun 2023 22:32:02 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 0AB3F611B8; Tue, 20 Jun 2023 20:32:00 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 51E28C433C8; Tue, 20 Jun 2023 20:31:57 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 8272ce35-0fa9-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1687293119; bh=FIklh6h1lqFF+JVFKb1nSybkVYYmMpQcmpEeDqZngOU=; h=Date:From:To:cc:Subject:In-Reply-To:References:From; b=PUtfPYGvR2VW7UGqvws00WeBtUR43VHbW2Rk74LbQVVTTMDTqtqwR6B79Z5MhUeIN rbZ02spxi8JFKINvVQiSOMRe/QVWxxcArEcsd2EccZJOSt/UjaC4vLbypJdt9Scva2 1GSqdiv0DLkK7GuSbSwNtKklzweFVYthH0a5biT/5doUbyARJUTJXDq6m/T/QWmuLT WINtoUoxMMS42QmgI8pHeG3KA7l+CQSWdn8OaWouiOfq23y9e1YYDzv2VkWFh4cY5g pCH1pdPlqww1KxpwctSPBzLCkOUDhhBIMlje03h/whfUoqaa4EhdY9datag8fozKy0 iReJPVfIezEqw== Date: Tue, 20 Jun 2023 13:31:55 -0700 (PDT) From: Stefano Stabellini X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop To: Roberto Bagnara cc: xen-devel@lists.xenproject.org, roger.pau@citrix.com, bertrand.marquis@arm.com, michal.orzel@amd.com, xenia.ragiadakou@amd.com, ayan.kumar.halder@amd.com, consulting@bugseng.com, Andrew Cooper , George Dunlap , Jan Beulich , Julien Grall , Stefano Stabellini , Wei Liu Subject: Re: [XEN PATCH v2] docs/misra: document the C dialect and translation toolchain assumptions. In-Reply-To: Message-ID: References: User-Agent: Alpine 2.22 (DEB 394 2020-01-19) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII On Tue, 20 Jun 2023, Roberto Bagnara wrote: > This document specifies the C language dialect used by Xen and > the assumptions Xen makes on the translation toolchain. > > Signed-off-by: Roberto Bagnara Hi Roberto, This version of the document is a lot better! I don't have any further comments beyond what Jan pointed out in his replies (with those addressed I would give my acked-by). Thanks! > --- > docs/misra/C-language-toolchain.rst | 478 ++++++++++++++++++++++++++++ > 1 file changed, 478 insertions(+) > create mode 100644 docs/misra/C-language-toolchain.rst > > diff --git a/docs/misra/C-language-toolchain.rst b/docs/misra/C-language-toolchain.rst > new file mode 100644 > index 0000000000..0fccccfb14 > --- /dev/null > +++ b/docs/misra/C-language-toolchain.rst > @@ -0,0 +1,478 @@ > +============================================= > +C Dialect and Translation Assumptions for Xen > +============================================= > + > +This document specifies the C language dialect used by Xen and > +the assumptions Xen makes on the translation toolchain. > +It covers, in particular: > + > +1. the used language extensions; > +2. the translation limits that the translation toolchains must be able > + to accommodate; > +3. the implementation-defined behaviors upon which Xen may depend. > + > +All points are of course relevant for portability. In addition, > +programming in C is impossible without a detailed knowledge of the > +implementation-defined behaviors. For this reason, it is recommended > +that Xen developers have familiarity with this document and the > +documentation referenced therein. > + > +This document needs maintenance and adaptation in the following > +circumstances: > + > +- whenever the compiler is changed or updated; > +- whenever the use of a certain language extension is added or removed; > +- whenever code modifications cause exceeding the stated translation limits. > + > + > +Applicable C Language Standard > +______________________________ > + > +Xen is written in C99 with extensions. The relevant ISO standard is > + > + *ISO/IEC 9899:1999/Cor 3:2007*: Programming Languages - C, > + Technical Corrigendum 3. > + ISO/IEC, Geneva, Switzerland, 2007. > + > + > +Reference Documentation > +_______________________ > + > +The following documents are referred to in the sequel: > + > +GCC_MANUAL: > + https://gcc.gnu.org/onlinedocs/gcc-12.1.0/gcc.pdf > +CPP_MANUAL: > + https://gcc.gnu.org/onlinedocs/gcc-12.1.0/cpp.pdf > +ARM64_ABI_MANUAL: > + https://github.com/ARM-software/abi-aa/blob/60a8eb8c55e999d74dac5e368fc9d7e36e38dda4/aapcs64/aapcs64.rst > +X86_64_ABI_MANUAL: > + https://gitlab.com/x86-psABIs/x86-64-ABI/-/jobs/artifacts/master/raw/x86-64-ABI/abi.pdf?job=build > + > + > +C Language Extensions > +_____________________ > + > + > +The following table lists the extensions currently used in Xen. > +The table columns are as follows: > + > + Extension > + a terse description of the extension; > + Architectures > + a set of Xen architectures making use of the extension; > + References > + when available, references to the documentation explaining > + the syntax and semantics of (each instance of) the extension. > + > + > +.. list-table:: > + :widths: 30 15 55 > + :header-rows: 1 > + > + * - Extension > + - Architectures > + - References > + > + * - Non-standard tokens > + - ARM64, X86_64 > + - _Static_assert: > + see Section "2.1 C Language" of GCC_MANUAL. > + asm, __asm__: > + see Sections "6.48 Alternate Keywords" and "6.47 How to Use Inline Assembly Language in C Code" of GCC_MANUAL. > + __volatile__: > + see Sections "6.48 Alternate Keywords" and "6.47.2.1 Volatile" of GCC_MANUAL. > + __const__, __inline__, __inline: > + see Section "6.48 Alternate Keywords" of GCC_MANUAL. > + typeof, __typeof__: > + see Section "6.7 Referring to a Type with typeof" of GCC_MANUAL. > + __alignof__, __alignof: > + see Sections "6.48 Alternate Keywords" and "6.44 Determining the Alignment of Functions, Types or Variables" of GCC_MANUAL. > + __attribute__: > + see Section "6.39 Attribute Syntax" of GCC_MANUAL. > + __builtin_types_compatible_p: > + see Section "6.59 Other Built-in Functions Provided by GCC" of GCC_MANUAL. > + __builtin_va_arg: > + non-documented GCC extension. > + __builtin_offsetof: > + see Section "6.53 Support for offsetof" of GCC_MANUAL. > + __signed__: > + non-documented GCC extension. > + > + * - Empty initialization list > + - ARM64, X86_64 > + - Non-documented GCC extension. > + > + * - Arithmetic operator on void type > + - ARM64, X86_64 > + - See Section "6.24 Arithmetic on void- and Function-Pointers" of GCC_MANUAL." > + > + * - Statements and declarations in expressions > + - ARM64, X86_64 > + - See Section "6.1 Statements and Declarations in Expressions" of GCC_MANUAL. > + > + * - Structure or union definition with no members > + - ARM64, X86_64 > + - See Section "6.19 Structures with No Members" of GCC_MANUAL. > + > + * - Zero size array type > + - ARM64, X86_64 > + - See Section "6.18 Arrays of Length Zero" of GCC_MANUAL. > + > + * - Binary conditional expression > + - ARM64, X86_64 > + - See Section "6.8 Conditionals with Omitted Operands" of GCC_MANUAL. > + > + * - 'Case' label with upper/lower values > + - ARM64, X86_64 > + - See Section "6.30 Case Ranges" of GCC_MANUAL. > + > + * - Unnamed field that is not a bit-field > + - ARM64, X86_64 > + - See Section "6.63 Unnamed Structure and Union Fields" of GCC_MANUAL. > + > + * - Empty declaration > + - ARM64, X86_64 > + - Non-documented GCC extension. > + Note: an empty declaration is caused by a semicolon at file scope > + with nothing before it (not to be confused with an empty statement). > + > + * - Incomplete enum declaration > + - ARM64 > + - See Section "6.49 Incomplete enum Types" of GCC_MANUAL. > + > + * - Implicit conversion from a pointer to an incompatible pointer > + - ARM64, X86_64 > + - Non-documented GCC extension. The documentation for option > + -Wincompatible-pointer-types in Section > + "3.8 Options to Request or Suppress Warnings" of GCC_MANUAL > + is possibly relevant. > + > + * - Pointer to a function is converted to a pointer to an object or a pointer to an object is converted to a pointer to a function > + - X86_64 > + - Non-documented GCC extension. The information provided in > + https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83584 > + is possibly relevant. > + > + * - Token pasting of ',' and __VA_ARGS__ > + - ARM64, X86_64 > + - See Section "6.21 Macros with a Variable Number of Arguments" of GCC_MANUAL. > + > + * - No arguments for '...' parameter of variadic macro > + - ARM64, X86_64 > + - See Section "6.21 Macros with a Variable Number of Arguments" of GCC_MANUAL. > + > + * - void function returning void expression > + - ARM64, X86_64 > + - See the documentation for -Wreturn-type in Section "3.8 Options to Request or Suppress Warnings" of GCC_MANUAL. > + > + * - GNU statement expressions from macro expansion > + - ARM64, X86_64 > + - See Section "6.1 Statements and Declarations in Expressions" of GCC_MANUAL. > + > + * - Invalid application of sizeof to a void type > + - ARM64, X86_64 > + - See Section "6.24 Arithmetic on void- and Function-Pointers" of GCC_MANUAL. > + > + * - Redeclaration of already-defined enum > + - ARM64, X86_64 > + - See Section "6.49 Incomplete enum Types" of GCC_MANUAL. > + > + * - static function is used in an inline function with external linkage > + - ARM64, X86_64 > + - Non-documented GCC extension. An inline function with external linkage > + can be inlined everywhere. If that calls a static functions, which is > + not available everywhere, it is a constraint violation according to > + C99 6.7.4p3: "An inline definition of a function with external linkage > + shall not contain a definition of a modifiable object with static > + storage duration, and shall not contain a reference to an identifier > + with internal linkage." A standard-compliant C compiler ought > + to diagnose all constraint violations: when it does not, as is the > + case for GCC, the behavior is implicitly undefined. > + > + * - struct with flexible array member nested in a struct > + - ARM64, X86_64 > + - See Section "6.18 Arrays of Length Zero" of GCC_MANUAL. > + > + * - struct with flexible array member used as an array element > + - ARM64, X86_64 > + - See Section "6.18 Arrays of Length Zero" of GCC_MANUAL. > + > + * - enumerator value outside the range of int > + - ARM64, X86_64 > + - Non-documented GCC extension. > + > + * - Extended integer types > + - X86_64 > + - See Section "6.9 128-bit Integers" of GCC_MANUAL. > + > + > +Translation Limits > +__________________ > + > +The following table lists the translation limits that a toolchain has > +to satisfy in order to translate Xen. The numbers given are a > +compromise: on the one hand, many modern compilers have very generous > +limits (in several cases, the only limitation is the amount of > +available memory); on the other hand we prefer setting limits that are > +not too high, because compilers do not have any obligation of > +diagnosing when a limit has been exceeded, and not too low, so as to > +avoid frequently updating this document. In the table, only the > +limits that go beyond the minima specified by the relevant C Standard > +are listed. > + > +The table columns are as follows: > + > + Limit > + a terse description of the translation limit; > + Architectures > + a set relevant of Xen architectures; > + Threshold > + a value that the Xen project does not wish to exceed for that limit > + (this is typically below, often much below what the translation > + toolchain supports); > + References > + when available, references to the documentation providing evidence > + that the translation toolchain honors the threshold (and more). > + > +.. list-table:: > + :widths: 30 15 10 45 > + :header-rows: 1 > + > + * - Limit > + - Architectures > + - Threshold > + - References > + > + * - Size of an object > + - ARM64, X86_64 > + - 8388608 > + - The maximum size of an object is defined in the MAX_SIZE macro, and for a 32 bit architecture is 8MB. > + The maximum size for an array is defined in the PTRDIFF_MAX and in a 32 bit architecture is 2^30-1. > + See occurrences of these macros in GCC_MANUAL. > + > + * - Characters in one logical source line > + - ARM64 > + - 5000 > + - See Section "11.2 Implementation limits" of CPP_MANUAL. > + > + * - Characters in one logical source line > + - X86_64 > + - 12000 > + - See Section "11.2 Implementation limits" of CPP_MANUAL. > + > + * - Nesting levels for #include files > + - ARM64 > + - 24 > + - See Section "11.2 Implementation limits" of CPP_MANUAL. > + > + * - Nesting levels for #include files > + - X86_64 > + - 32 > + - See Section "11.2 Implementation limits" of CPP_MANUAL. > + > + * - case labels for a switch statement (excluding those for any nested switch statements) > + - X86_64 > + - 1500 > + - See Section "4.12 Statements" of GCC_MANUAL. > + > + * - Number of significant initial characters in an external identifier > + - ARM64, X86_64 > + - 63 > + - See Section "4.3 Identifiers" of GCC_MANUAL. > + > + > +Implementation-Defined Behaviors > +________________________________ > + > +The following table lists the C language implementation-defined behaviors > +relevant for MISRA C:2012 Dir 1.1 upon which Xen may possibly depend. > + > +The table columns are as follows: > + > + I.-D.B. > + a terse description of the implementation-defined behavior; > + Architectures > + a set relevant of Xen architectures; > + Value(s) > + for i.-d.b.'s with values, the values allowed; > + References > + when available, references to the documentation providing details > + about how the i.-d.b. is resolved by the translation toolchain. > + > +.. list-table:: > + :widths: 30 15 10 45 > + :header-rows: 1 > + > + * - I.-D.B. > + - Architectures > + - Value(s) > + - References > + > + * - Allowable bit-field types other than _Bool, signed int, and unsigned int > + - ARM64, X86_64 > + - All explicitly signed integer types, all unsigned integer types, > + and enumerations. > + - See Section "4.9 Structures, Unions, Enumerations, and Bit-Fields". > + > + * - #pragma preprocessing directive that is documented as causing translation failure or some other form of undefined behavior is encountered > + - ARM64, X86_64 > + - pack, GCC visibility > + - #pragma pack: > + see Section "6.62.11 Structure-Layout Pragmas" of GCC_MANUAL. > + #pragma GCC visibility: > + see Section "6.62.14 Visibility Pragmas" of GCC_MANUAL. > + > + * - The number of bits in a byte > + - ARM64 > + - 8 > + - See Section "4.4 Characters" of GCC_MANUAL and Section "8.1 Data types" of ARM64_ABI_MANUAL. > + > + * - The number of bits in a byte > + - X86_64 > + - 8 > + - See Section "4.4 Characters" of GCC_MANUAL and Section "3.1.2 Data Representation" of X86_64_ABI_MANUAL. > + > + * - Whether signed integer types are represented using sign and magnitude, two's complement, or one's complement, and whether the extraordinary value is a trap representation or an ordinary value > + - ARM64, X86_64 > + - Two's complement > + - See Section "4.5 Integers" of GCC_MANUAL. > + > + * - Any extended integer types that exist in the implementation > + - X86_64 > + - __uint128_t > + - See Section "6.9 128-bit Integers" of GCC_MANUAL. > + > + * - The number, order, and encoding of bytes in any object > + - ARM64 > + - > + - See Section "4.15 Architecture" of GCC_MANUAL and Chapter 5 "Data types and alignment" of ARM64_ABI_MANUAL. > + > + * - The number, order, and encoding of bytes in any object > + - X86_64 > + - > + - See Section "4.15 Architecture" of GCC_MANUAL and Section "3.1.2 Data Representation" of X86_64_ABI_MANUAL. > + > + * - Whether a bit-field can straddle a storage-unit boundary > + - ARM64 > + - > + - See Section "4.9 Structures, Unions, Enumerations, and Bit-Fields of GCC_MANUAL and Section "8.1.8 Bit-fields" of ARM64_ABI_MANUAL. > + > + * - Whether a bit-field can straddle a storage-unit boundary > + - X86_64 > + - > + - See Section "4.9 Structures, Unions, Enumerations, and Bit-Fields" of GCC_MANUAL and Section "3.1.2 Data Representation" of X86_64_ABI_MANUAL. > + > + * - The order of allocation of bit-fields within a unit > + - ARM64 > + - > + - See Section "4.9 Structures, Unions, Enumerations, and Bit-Fields of GCC_MANUAL and Section "8.1.8 Bit-fields" of ARM64_ABI_MANUAL. > + > + * - The order of allocation of bit-fields within a unit > + - X86_64 > + - > + - See Section "4.9 Structures, Unions, Enumerations, and Bit-Fields" of GCC_MANUAL and Section "3.1.2 Data Representation" of X86_64_ABI_MANUAL. > + > + * - What constitutes an access to an object that has volatile-qualified type > + - ARM64, X86_64 > + - > + - See Section "4.10 Qualifiers" of GCC_MANUAL. > + > + * - The values or expressions assigned to the macros specified in the headers , , and > + - ARM64 > + - > + - See Section "4.15 Architecture" of GCC_MANUAL and Chapter 5 "Data types and alignment" of ARM64_ABI_MANUAL. > + > + * - The values or expressions assigned to the macros specified in the headers , , and > + - X86_64 > + - > + - See Section "4.15 Architecture" of GCC_MANUAL and Section "3.1.2 Data Representation" of X86_64_ABI_MANUAL. > + > + * - Character not in the basic source character set is encountered in a source file, except in an identifier, a character constant, a string literal, a header name, a comment, or a preprocessing token that is never converted to a token > + - ARM64 > + - UTF-8 > + - See Section "1.1 Character sets" of CPP_MANUAL. > + We assume the locale is not restricting any UTF-8 characters being part of the source character set. > + > + * - The value of a char object into which has been stored any character other than a member of the basic execution character set > + - ARM64 > + - > + - See Section "4.4 Characters" of GCC_MANUAL and Section "8.1 Data types" of ARM64_ABI_MANUAL. > + > + * - The value of a char object into which has been stored any character other than a member of the basic execution character set > + - X86_64 > + - > + - See Section "4.4 Characters" of GCC_MANUAL and Section "3.1.2 Data Representation" of X86_64_ABI_MANUAL. > + > + * - The value of an integer character constant containing more than one character or containing a character or escape sequence that does not map to a single-byte execution character > + - ARM64 > + - > + - See Section "4.4 Characters" of GCC_MANUAL and Section "8.1 Data types" of ARM64_ABI_MANUAL. > + > + * - The value of an integer character constant containing more than one character or containing a character or escape sequence that does not map to a single-byte execution character > + - X86_64 > + - > + - See Section "4.4 Characters" of GCC_MANUAL and Section "3.1.2 Data Representation" of X86_64_ABI_MANUAL. > + > + * - The mapping of members of the source character set > + - ARM64, X86_64 > + - > + - See Section "4.4 Characters" of GCC_MANUAL and the documentation for -finput-charset=charset in the same manual. > + > + * - The members of the source and execution character sets, except as explicitly specified in the Standard > + - ARM64, X86_64 > + - UTF-8 > + - See Section "4.4 Characters" of GCC_MANUAL > + > + * - The values of the members of the execution character set > + - ARM64, X86_64 > + - > + - See Section "4.4 Characters" of GCC_MANUAL and the documentation for -fexec-charset=charset in the same manual. > + > + * - How a diagnostic is identified > + - ARM64, X86_64 > + - > + - See Section "4.1 Translation" of GCC_MANUAL. > + > + * - The places that are searched for an included < > delimited header, and how the places are specified or the header is identified > + - ARM64, X86_64 > + - > + - See Chapter "2 Header Files" of CPP_MANUAL. > + > + * - How the named source file is searched for in an included " " delimited header > + - ARM64, X86_64 > + - > + - See Chapter "2 Header Files" of CPP_MANUAL. > + > + * - How sequences in both forms of header names are mapped to headers or external source file names > + - ARM64, X86_64 > + - > + - See Chapter "2 Header Files" of CPP_MANUAL. > + > + * - Whether the # operator inserts a \ character before the \ character that begins a universal character name in a character constant or string literal > + - ARM64, X86_64 > + - > + - See Section "3.4 Stringizing" of CPP_MANUAL. > + > + * - The current locale used to convert a wide string literal into corresponding wide character codes > + - ARM64, X86_64 > + - > + - See Section "4.4 Characters" of GCC_MANUAL and Section "11.1 Implementation-defined behavior" of CPP_MANUAL. > + > + * - The value of a string literal containing a multibyte character or escape sequence not represented in the execution character set > + - X86_64 > + - > + - See Section "4.4 Characters" of GCC_MANUAL and Section "11.1 Implementation-defined behavior" of CPP_MANUAL. > + > + * - The behavior on each recognized #pragma directive > + - ARM64, X86_64 > + - pack, GCC visibility > + - See Section "4.13 Preprocessing Directives" of GCC_MANUAL and Section "7 Pragmas" of CPP_MANUAL. > + > + * - The method by which preprocessing tokens (possibly resulting from macro expansion) in a #include directive are combined into a header name > + - X86_64 > + - > + - See Section "4.13 Preprocessing Directives" of GCC_MANUAL and Section "11.1 Implementation-defined behavior" of CPP_MANUAL. > + > + > +END OF DOCUMENT. > -- > 2.34.1 > From xen-devel-bounces@lists.xenproject.org Tue Jun 20 20:33:04 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 20 Jun 2023 20:33:04 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552288.862277 (Exim 4.92) (envelope-from ) id 1qBi2B-0002KS-K4; Tue, 20 Jun 2023 20:33:03 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552288.862277; Tue, 20 Jun 2023 20:33:03 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBi2B-0002KL-F9; Tue, 20 Jun 2023 20:33:03 +0000 Received: by outflank-mailman (input) for mailman id 552288; Tue, 20 Jun 2023 20:33:02 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBi29-0002Ix-Vy for xen-devel@lists.xenproject.org; Tue, 20 Jun 2023 20:33:01 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [2604:1380:4641:c500::1]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id a59ae416-0fa9-11ee-b234-6b7b168915f2; Tue, 20 Jun 2023 22:33:01 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 57BD3611B2; Tue, 20 Jun 2023 20:32:59 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id F3583C433C0; Tue, 20 Jun 2023 20:32:56 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: a59ae416-0fa9-11ee-b234-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1687293178; bh=fKEN0zP0l28bTF0vofHECl8YGwBBSG/g2hqAXbl9yGQ=; h=Date:From:To:cc:Subject:In-Reply-To:References:From; b=GVIkMEAYBhZYlsfxU7/OtZMAnNCGOovbrsqDSj5MV8/R5nOZBll1D7mPhM1yiJEUX Lnd54EhoqixsiTR9bzvHgiADA1XgfVqalVJz8Mxktg4rovmiP09wSBZnfaUaL7UZrY x3IerklWzRshITs5imFuWxGUULTfdqJnPue6gr+Y3tu6A0vjwgoQ702XR9P1iTH+JO Q2viDROWJhdcz43v2hzFwqtpA/1Qc1F8zsRMWAbyA9TF1pYqHUVo4FzBHcT97UclY0 G5mHBQ/yvZkxsaP7jOBSt6Xc2PfaArR8XfgLJzJmeh+l1R8XHq5tVdDY6U/5aKydsr kDvBTndjyL9cw== Date: Tue, 20 Jun 2023 13:32:55 -0700 (PDT) From: Stefano Stabellini X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop To: Jan Beulich cc: Roberto Bagnara , roger.pau@citrix.com, bertrand.marquis@arm.com, michal.orzel@amd.com, xenia.ragiadakou@amd.com, ayan.kumar.halder@amd.com, consulting@bugseng.com, Andrew Cooper , George Dunlap , Julien Grall , Stefano Stabellini , Wei Liu , xen-devel@lists.xenproject.org Subject: Re: [XEN PATCH v2] docs/misra: document the C dialect and translation toolchain assumptions. In-Reply-To: <807743af-c1fe-45d0-1919-a7eb4d244a21@suse.com> Message-ID: References: <807743af-c1fe-45d0-1919-a7eb4d244a21@suse.com> User-Agent: Alpine 2.22 (DEB 394 2020-01-19) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII On Tue, 20 Jun 2023, Jan Beulich wrote: > On 20.06.2023 14:10, Roberto Bagnara wrote: > > + * - Non-standard tokens > > + - ARM64, X86_64 > > + - _Static_assert: > > + see Section "2.1 C Language" of GCC_MANUAL. > > + asm, __asm__: > > + see Sections "6.48 Alternate Keywords" and "6.47 How to Use Inline Assembly Language in C Code" of GCC_MANUAL. > > + __volatile__: > > + see Sections "6.48 Alternate Keywords" and "6.47.2.1 Volatile" of GCC_MANUAL. > > + __const__, __inline__, __inline: > > + see Section "6.48 Alternate Keywords" of GCC_MANUAL. > > + typeof, __typeof__: > > + see Section "6.7 Referring to a Type with typeof" of GCC_MANUAL. > > + __alignof__, __alignof: > > + see Sections "6.48 Alternate Keywords" and "6.44 Determining the Alignment of Functions, Types or Variables" of GCC_MANUAL. > > + __attribute__: > > + see Section "6.39 Attribute Syntax" of GCC_MANUAL. > > + __builtin_types_compatible_p: > > + see Section "6.59 Other Built-in Functions Provided by GCC" of GCC_MANUAL. > > + __builtin_va_arg: > > + non-documented GCC extension. > > + __builtin_offsetof: > > + see Section "6.53 Support for offsetof" of GCC_MANUAL. > > + __signed__: > > + non-documented GCC extension. > > I'd like to note that there is a patch [1] pending which removes all uses > of this extension. Hopefully in Prague we can settle on how to progress > this ... > > [1] https://lists.xen.org/archives/html/xen-devel/2023-02/msg00445.html I would keep __signed__ in this document for now and remove __signed__ on commit if [1] gets committed first From xen-devel-bounces@lists.xenproject.org Tue Jun 20 20:41:56 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 20 Jun 2023 20:41:56 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552295.862287 (Exim 4.92) (envelope-from ) id 1qBiAi-0003ub-DC; Tue, 20 Jun 2023 20:41:52 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552295.862287; Tue, 20 Jun 2023 20:41:52 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBiAi-0003uU-AN; Tue, 20 Jun 2023 20:41:52 +0000 Received: by outflank-mailman (input) for mailman id 552295; Tue, 20 Jun 2023 20:41:50 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBiAg-0003uO-QC for xen-devel@lists.xenproject.org; Tue, 20 Jun 2023 20:41:50 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id e04dc4ca-0faa-11ee-8611-37d641c3527e; Tue, 20 Jun 2023 22:41:48 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 1B491611B2; Tue, 20 Jun 2023 20:41:47 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id BDDC8C433C8; Tue, 20 Jun 2023 20:41:44 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: e04dc4ca-0faa-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1687293706; bh=UB48tZ0X3YIWnUjWk2tYaXWF0eBZmOKX9snefcNeLcw=; h=Date:From:To:cc:Subject:In-Reply-To:References:From; b=VZoCHMWUNmRlMA9vstF75q+oq0xPgd7DbTPSN5WXwnW8ziEhBFsM0wd3y4FKJYpde Lz14vHvtnR8hVNAQtNHH/9RFXH5F/V2+bX6cVb2vQ/xPb1gXJB4+f6lGcWaPK0hnU+ qbqsbR+EkFEPCqelVgR9j0bZRPfH4ogr67/Unh2zjAzP5/c54UmWlt1h3B/w0gsO8+ SMJ3rr/EBfvqxuhEp0X27y2gaD997zjpH2DXdjH+pF4571uyrVkeVSFGwdtk0rDlu6 aeJJQpA5hXQ19YP+oRsVi8xKLcGqWKpv6k/xTyJYSf5tZCIzR3wJexCRXj8OycsT47 qtGwMDYCD6dyQ== Date: Tue, 20 Jun 2023 13:41:43 -0700 (PDT) From: Stefano Stabellini X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop To: Luca Fancellu cc: Jan Beulich , Simone Ballarin , Andrew Cooper , George Dunlap , Julien Grall , Stefano Stabellini , Wei Liu , "consulting@bugseng.com" , Gianluca Luparini , Michal Orzel , Xenia Ragiadakou , Ayan Kumar , "xen-devel@lists.xenproject.org" Subject: Re: [XEN PATCH 02/13] AMD/IOMMU: fixed violations of MISRA C:2012 Rule 7.2 In-Reply-To: <37C5BC47-E735-4731-A6C6-F30189FA6B9D@arm.com> Message-ID: References: <21337a20c5c8d66dff552c2f09054ea82b253dd6.1687250177.git.gianluca.luparini@bugseng.com> <7cdd53c7-4d57-39f2-10fa-2fa2ddc98389@suse.com> <37C5BC47-E735-4731-A6C6-F30189FA6B9D@arm.com> User-Agent: Alpine 2.22 (DEB 394 2020-01-19) MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="8323329-2003924817-1687293706=:897208" This message is in MIME format. The first part should be readable text, while the remaining parts are likely unreadable without MIME-aware tools. --8323329-2003924817-1687293706=:897208 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8BIT On Tue, 20 Jun 2023, Luca Fancellu wrote: > > On 20 Jun 2023, at 13:39, Jan Beulich wrote: > > > > On 20.06.2023 12:34, Simone Ballarin wrote: > >> --- a/xen/drivers/passthrough/amd/iommu-defs.h > >> +++ b/xen/drivers/passthrough/amd/iommu-defs.h > >> @@ -38,49 +38,49 @@ > >> ((uint64_t)(offset) << (12 + (PTE_PER_TABLE_SHIFT * ((level) - 1)))) > >> > >> /* IOMMU Capability */ > >> -#define PCI_CAP_ID_MASK 0x000000FF > >> +#define PCI_CAP_ID_MASK 0x000000FFU > > > > Seeing this and similar uses further down, I think there's a purely > > stylistic question to be resolved first (and hence I'm widening the To: > > list here): Do we want to allow either case of U to be used > > interchangeably, leaving the choice up to the patch author? > > Because you ask to the list, my personal opinion is that we might want to > have only capital U, so that it’s consistent across the codebase and we don’t > need to create too many rules for the developer, it stands out anyway as it can’t > be an hex digit I agree with Luca --8323329-2003924817-1687293706=:897208-- From xen-devel-bounces@lists.xenproject.org Tue Jun 20 20:43:17 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 20 Jun 2023 20:43:17 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552300.862297 (Exim 4.92) (envelope-from ) id 1qBiBx-0004SD-NE; Tue, 20 Jun 2023 20:43:09 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552300.862297; Tue, 20 Jun 2023 20:43:09 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBiBx-0004S6-J2; Tue, 20 Jun 2023 20:43:09 +0000 Received: by outflank-mailman (input) for mailman id 552300; Tue, 20 Jun 2023 20:43:08 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBiBw-0004Ry-0z for xen-devel@lists.xenproject.org; Tue, 20 Jun 2023 20:43:08 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBiBv-0001E5-M3; Tue, 20 Jun 2023 20:43:07 +0000 Received: from gw1.octic.net ([88.97.20.152] helo=[10.0.1.102]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qBiBv-0000Uy-GR; Tue, 20 Jun 2023 20:43:07 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=2Op3H5WbMMTM5OAklT3iX2adeeCirnVUYb/WDfuyTNU=; b=wIfu8MDUTyRudspIY6LJGw3I43 lQAxDnRhmNg+EnnIOkphnXIQw8q6BzmyaZHCyEAxCqhagHcnmaPgW5Mb4TIrrA05Eeo9MWv5bwtdm QHbAJdL4BTaKx/oLlkE24BOgp7Pe6Z0nqtEMoCkJj3cMiHgvTnr2WKbfB12Gk2ZdQfHY=; Message-ID: <3b7f584e-700e-4598-f36e-51a96140323e@xen.org> Date: Tue, 20 Jun 2023 21:43:05 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.10.1 Subject: Re: [PATCH v1] xen/arm: arm32: Add support to identify the Cortex-R52 processor To: Ayan Kumar Halder , Ayan Kumar Halder , xen-devel@lists.xenproject.org Cc: sstabellini@kernel.org, stefano.stabellini@amd.com, Volodymyr_Babchuk@epam.com, bertrand.marquis@arm.com References: <20230620151736.3720850-1-ayan.kumar.halder@amd.com> From: Julien Grall In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi Ayan, On 20/06/2023 19:28, Ayan Kumar Halder wrote: > > On 20/06/2023 17:41, Julien Grall wrote: >> Hi, > Hi Julien, >> >> On 20/06/2023 16:17, Ayan Kumar Halder wrote: >>> Add a special configuration (CONFIG_AARCH32_V8R) to setup the Cortex-R52 >>> specifics. >>> >>> Cortex-R52 is an Arm-V8R AArch32 processor. >>> >>> Refer ARM DDI 0487I.a ID081822, G8-9647, G8.2.112 MIDR, >>> bits[31:24] = 0x41 , Arm Ltd >>> bits[23:20] = Implementation defined >>> bits[19:16] = 0xf , Arch features are individually identified >>> bits[15:4] = Implementation defined >>> bits[3:0] = Implementation defined >>> >>> Thus, the processor id is 0x410f0000 and the processor id mask is >>> 0xff0f0000 >>> >>> Also, there is no special initialization required for R52. >> >> Are you saying that Xen upstream + this patch will boot on Cortex-R52? > > This patch will help for earlyboot of Xen. With this patch, cpu_init() > will work on Cortex-R52. > > There will be changes required for the MPU configuration, but that will > be sent after Penny's patch serie "[PATCH v2 00/41] xen/arm: Add > Armv8-R64 MPU support to Xen - Part#1" is upstreamed. > > My aim is to extract the non-dependent changes and send them for review. I can review the patch. But I am not willing to merge it as it gives the false impression that Xen would boot on Cortex-R52. In fact, I think this patch should only be merged once we have all the MPU merged. IMHO, patches are independent are rework (e.g. code split...) that would help the MPU. Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Tue Jun 20 20:43:43 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 20 Jun 2023 20:43:43 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552302.862307 (Exim 4.92) (envelope-from ) id 1qBiCU-0004xi-Uz; Tue, 20 Jun 2023 20:43:42 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552302.862307; Tue, 20 Jun 2023 20:43:42 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBiCU-0004xb-Rm; Tue, 20 Jun 2023 20:43:42 +0000 Received: by outflank-mailman (input) for mailman id 552302; Tue, 20 Jun 2023 20:43:41 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBiCT-0004vz-K3; Tue, 20 Jun 2023 20:43:41 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBiCT-0001Ei-IR; Tue, 20 Jun 2023 20:43:41 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBiCT-0001QE-4w; Tue, 20 Jun 2023 20:43:41 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qBiCT-0003zz-4V; Tue, 20 Jun 2023 20:43:41 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=PEv1n9ABL14QKryT12mWyH4IOut29TxlNW0u0IT+2+8=; b=vJN2jYu+/MqCmlA/CBcew8cqqQ xWIWG+Ey0iprUw6L44qEyvNb5KtHfQ5VCotElilgbtkueC2wp/sC99+Cp2d6X0VT0SScmWKIvw7bR R39F7PFw9DdLxGaEsVApGpMzug7rIysPoNpKsk9sgCrfYRq7Tousc3XCYgdSRJD0JTvo=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable-smoke test] 181523: trouble: blocked/broken/pass X-Osstest-Failures: xen-unstable-smoke:build-armhf::broken:regression xen-unstable-smoke:build-armhf:host-install(4):broken:regression xen-unstable-smoke:test-armhf-armhf-xl:build-check(1):blocked:nonblocking xen-unstable-smoke:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking xen-unstable-smoke:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking xen-unstable-smoke:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: xen=42473bae2394b6602372ab8b83a9ca294b1e40f4 X-Osstest-Versions-That: xen=7a25a1501ca941c3e01b0c4e624ace05417f1587 From: osstest service owner Date: Tue, 20 Jun 2023 20:43:41 +0000 flight 181523 xen-unstable-smoke real [real] http://logs.test-lab.xenproject.org/osstest/logs/181523/ Failures and problems with tests :-( Tests which did not succeed and are blocking, including tests which could not be run: build-armhf broken build-armhf 4 host-install(4) broken REGR. vs. 181476 Tests which did not succeed, but are not blocking: test-armhf-armhf-xl 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass version targeted for testing: xen 42473bae2394b6602372ab8b83a9ca294b1e40f4 baseline version: xen 7a25a1501ca941c3e01b0c4e624ace05417f1587 Last test of basis 181476 2023-06-17 04:00:28 Z 3 days Failing since 181504 2023-06-19 11:00:26 Z 1 days 4 attempts Testing same since 181514 2023-06-20 03:03:46 Z 0 days 2 attempts ------------------------------------------------------------ People who touched revisions under test: Alistair Francis Andrew Cooper Anthony PERARD Henry Wang Jan Beulich Julien Grall Michal Orzel Oleksii Kurochko Roger Pau Monné Stefano Stabellini jobs: build-arm64-xsm pass build-amd64 pass build-armhf broken build-amd64-libvirt pass test-armhf-armhf-xl blocked test-arm64-arm64-xl-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-libvirt pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary broken-job build-armhf broken broken-step build-armhf host-install(4) Not pushing. ------------------------------------------------------------ commit 42473bae2394b6602372ab8b83a9ca294b1e40f4 Author: Michal Orzel Date: Wed Jun 7 11:27:27 2023 +0200 xen/arm: pl011: Add SBSA UART device-tree support We already have all the bits necessary in PL011 driver to support SBSA UART thanks to commit 032ea8c736d10f02672863c6e369338f948f7ed8 that enabled it for ACPI. Plumb in the remaining part for device-tree boot: - add arm,sbsa-uart compatible to pl011_dt_match (no need for a separate struct and DT_DEVICE_START as SBSA is a subset of PL011), - from pl011_dt_uart_init(), check for SBSA UART compatible to determine the UART type in use. Signed-off-by: Michal Orzel Reviewed-by: Henry Wang Reviewed-by: Stefano Stabellini Tested-by: Henry Wang commit 47e3941d2eee347e9c41b311d19048c41e1b33e3 Author: Michal Orzel Date: Wed Jun 7 11:27:26 2023 +0200 xen/arm: pl011: Use correct accessors At the moment, we use 32-bit only accessors (i.e. readl/writel) to match the SBSA v2.x requirement. This should not be the default case for normal PL011 where accesses shall be 8/16-bit (max register size is 16-bit). There are however implementations of this UART that can only handle 32-bit MMIO. This is advertised by dt property "reg-io-width" set to 4. Introduce new struct pl011 member mmio32 and replace pl011_{read/write} macros with static inline helpers that use 32-bit or 16-bit accessors (largest-common not to end up using different ones depending on the actual register size) according to mmio32 value. By default this property is set to false, unless: - reg-io-width is specified with value 4, - SBSA UART is in use. For now, no changes done for ACPI due to lack of testing possibilities (i.e. current behavior maintained resulting in 32-bit accesses). Signed-off-by: Michal Orzel Tested-by: Henry Wang Reviewed-by: Stefano Stabellini commit 4fa2272458114b5e4872f835b803909333d5ccd4 Author: Michal Orzel Date: Wed Jun 7 11:27:25 2023 +0200 xen/arm: debug-pl011: Add support for 32-bit only MMIO There are implementations of PL011 that can only handle 32-bit accesses as oppose to the normal behavior where accesses are 8/16-bit wide. This is usually advertised by setting a dt property 'reg-io-width' to 4. Introduce CONFIG_EARLY_UART_PL011_MMIO32 Kconfig option to be able to enable the use of 32-bit only accessors in PL011 early printk code. Define macros PL011_{STRH,STRB,LDRH} to distinguish accessors for normal case from 32-bit MMIO one and use them in arm32/arm64 pl011 early printk code. Update documentation accordingly. Signed-off-by: Michal Orzel Tested-by: Henry Wang Reviewed-by: Stefano Stabellini commit 655d0798d29b7ac490444b2daf9bffa16d41e822 Author: Michal Orzel Date: Wed Jun 7 11:27:24 2023 +0200 xen/arm: debug-pl011: Use correct accessors Although most PL011 UARTs can cope with 32-bit accesses, some of the old legacy ones might not. PL011 registers are 8/16-bit wide and this shall be perceived as the normal behavior. Modify early printk pl011 code for arm32/arm64 to use the correct accessors depending on the register size (refer ARM DDI 0183G, Table 3.1). Signed-off-by: Michal Orzel Tested-by: Henry Wang Reviewed-by: Stefano Stabellini commit 314a54c1c2805883f50582c40308554a102fdb8a Author: Stefano Stabellini Date: Thu Jun 15 14:27:16 2023 -0700 xen/misra: add rules 1.4 and 2.1 Also add a comment at the top of the file to say rules.rst could be changed. Signed-off-by: Stefano Stabellini Reviewed-by: Bertrand Marquis Reviewed-by: Luca Fancellu commit d95f436c7dc6ccee68e1b77a3b01476ef41add55 Author: Stefano Stabellini Date: Thu Jun 15 14:19:22 2023 -0700 docs/misra: new rules addition For Dir 1.1, a document describing all implementation-defined behaviour (i.e. gcc-specific behavior) will be added to docs/misra, also including implementation-specific (gcc-specific) appropriate types for bit-field relevant to Rule 6.1. Rule 21.21 is lacking an example on gitlab but the rule is straightforward: we don't use stdlib at all in Xen. Signed-off-by: Stefano Stabellini Reviewed-by: Michal Orzel Reviewed-by: Bertrand Marquis commit 43e863a02d81f5fff32763b23d2a39f041f7e62b Author: Andrew Cooper Date: Fri Jun 16 17:28:21 2023 +0100 x86/boot: Clean up early error asm The asm forming early error handling is a mix of local and non-local symbols, and has some pointless comments. Drop the "# Error message" comments, tweaking the style on modified lines, and make the symbols local. However, leave behind one real symbol so this logic disassembles nicely without merging in to acpi_boot_init(), which is the thing that happens to be immediately prior in my build. No functional change. Signed-off-by: Andrew Cooper Reviewed-by: Jan Beulich commit 3a07da55e63d110851c36b0dae32a5dcf00c54b9 Author: Oleksii Kurochko Date: Mon Jun 19 15:47:37 2023 +0200 xen/riscv: introduce reset_stack() function The reason for reset_stack() introduction is that stack should be reset twice: 1. Before jumping to C world at the start of _start() function. 2. After jumping from 1:1 mapping world. Signed-off-by: Oleksii Kurochko Reviewed-by: Alistair Francis commit 652ccd1f4afa56b15cb4863d545deac7d1effb30 Author: Oleksii Kurochko Date: Mon Jun 19 15:47:23 2023 +0200 xen/riscv: add .sbss section to .bss Sometimes variables are located in .sbss section but it won't be mapped after MMU will be enabled. To avoid MMU failures .sbss should be mapped Signed-off-by: Oleksii Kurochko Acked-by: Alistair Francis commit c6df21062beb9a9bc29a3a2ffb652e0bfa185c3a Author: Anthony PERARD Date: Mon Jun 19 15:47:05 2023 +0200 Config.mk: update OVMF to edk2-stable202305 Update to OVMF's latest stable tag. This is been prompt by trying to build Xen on Debian Bookworm, where edk2-stable202108 doesn't build. Also, it's been too long since the last update. Signed-off-by: Anthony PERARD Acked-by: Jan Beulich commit 82b28deb25f37e8422b14493a2efa2852638206d Author: Roger Pau Monné Date: Mon Jun 19 15:46:03 2023 +0200 iommu/vtd: fix address translation for leaf entries Fix two issues related to leaf address lookups in VT-d: * When translating an address that falls inside of a superpage in the IOMMU page tables the fetching of the PTE value wasn't masking of the contiguous related data, which caused the returned data to be corrupt as it would contain bits that the caller would interpret as part of the address. * When the requested leaf address wasn't mapped by a superpage the returned value wouldn't have any of the low 12 bits set, thus missing the permission bits expected by the caller. Take the opportunity to also adjust the function comment to note that when returning the full PTE the bits above PADDR_BITS are removed. Fixes: c71e55501a61 ('VT-d: have callers specify the target level for page table walks') Signed-off-by: Roger Pau Monné Reviewed-by: Jan Beulich Reviewed-by: Kevin Tian commit ea613d2367ac9dca3875997034e8f4aff74ab635 Author: Jan Beulich Date: Mon Jun 19 15:45:07 2023 +0200 SUPPORT.md: write down restriction of 32-bit tool stacks Let's try to avoid giving the impression that 32-bit tool stacks are as capable as 64-bit ones. Signed-off-by: Jan Beulich Acked-by: Julien Grall commit a17fd0feb6b6bbe82550f43d70654d894ed377ec Author: Anthony PERARD Date: Mon Jun 19 10:09:32 2023 +0100 automation: Disable QEMU build with Clang older than 10.0 Since QEMU commit 74a1b256d775 ("configure: Bump minimum Clang version to 10.0"), or QEMU v8.0, Clang 10.0 is now the minimum to build QEMU. QEMU 8.0 fails to build on Ubuntu Bionic. Signed-off-by: Anthony PERARD Acked-by: Andrew Cooper (qemu changes not included) From xen-devel-bounces@lists.xenproject.org Tue Jun 20 20:44:50 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 20 Jun 2023 20:44:50 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552312.862316 (Exim 4.92) (envelope-from ) id 1qBiDU-0005Yf-7w; Tue, 20 Jun 2023 20:44:44 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552312.862316; Tue, 20 Jun 2023 20:44:44 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBiDU-0005YY-5D; Tue, 20 Jun 2023 20:44:44 +0000 Received: by outflank-mailman (input) for mailman id 552312; Tue, 20 Jun 2023 20:44:42 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBiDS-0005YQ-5u for xen-devel@lists.xenproject.org; Tue, 20 Jun 2023 20:44:42 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 46eea82c-0fab-11ee-b234-6b7b168915f2; Tue, 20 Jun 2023 22:44:40 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 98503611BF; Tue, 20 Jun 2023 20:44:39 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 75DE0C433C8; Tue, 20 Jun 2023 20:44:37 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 46eea82c-0fab-11ee-b234-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1687293879; bh=/AthUgBrpdYZOdtlXuvt0N4TJYl3rpdDAqJA/wXBoCA=; h=Date:From:To:cc:Subject:In-Reply-To:References:From; b=liaMxfEjLIyF5O5pwxnjbRfi7NRAFEoAloixQuTRMNMR2cZ8rsC95usBq0pnSmnaG RJPE8w5Xj8yd9gZ5EMLZn6c8yXVCubaBuawjJt/aSk+yRBlTa84yw6W4nwOihZrvdg CdHtfhFdex4yZIFWSwjqzYJd1gl73bKaPXNVByXqHFg0co1fW+RJgSQdDEvhzkjPbV ykNtLJcDoxNC2qacxf7Vrin431v6JVgrsSxZ4NGCX2RxtWpL4Ff5Uo+ebpPz09vnmT aXcl1ElWtIy+5kIVi0rcxWIm3zuJQzVjnCUoNTqjG3RFTx8bxpdIcQGNKqEpvE4CF3 E6Vxkv5OeR+UA== Date: Tue, 20 Jun 2023 13:44:35 -0700 (PDT) From: Stefano Stabellini X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop To: Jan Beulich cc: Simone Ballarin , consulting@bugseng.com, Gianluca Luparini , Andrew Cooper , =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= , Wei Liu , Stefano Stabellini , Michal Orzel , Xenia Ragiadakou , Ayan Kumar , xen-devel@lists.xenproject.org Subject: Re: [XEN PATCH 01/13] xen/x86: fixed violations of MISRA C:2012 Rule 7.2 In-Reply-To: Message-ID: References: <5aa3a54af456b8faee681a1d737c361abe89296f.1687250177.git.gianluca.luparini@bugseng.com> User-Agent: Alpine 2.22 (DEB 394 2020-01-19) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII On Tue, 20 Jun 2023, Jan Beulich wrote: > On 20.06.2023 12:34, Simone Ballarin wrote: > > From: Gianluca Luparini > > > > The xen sources contains violations of MISRA C:2012 Rule 7.2 whose headline states: > > "A "u" or "U" suffix shall be applied to all integer constants that are represented in an unsigned type". > > > > I propose to use "U" as a suffix to explicitly state when an integer constant is represented in an unsigned type. > > The code adjustments here are certainly fine, but I'd like to ask that > patch descriptions be written as such. "I propose ..." in particular > may be okay in an upfront discussion, but for a patch you want to > describe what the patch does, and why (the latter part you're dealing > with already). > > Furthermore I continue to have trouble with the wording "is represented > in an unsigned type": As previously pointed out, what type a constant > is going to be represented in depends on the ABI and eventual variables > (specifically their types) that the value might then be assigned to, or > expressions that the value might be used in. A possible future > architecture with "int" wider than 32 bits would represent all the > constants touched here in a signed type. I think what is meant instead > (despite Misra's imo unhelpful wording) is that you add suffixes for > constants which are meant to have unsigned values (no matter what type > variable they would be stored in, or what expression they would appear > in, and hence independent of their eventual representation). > > Furthermore the U suffix (as an example) doesn't help at all when the > value then is assigned to a variable of type long, and long is wider > than int. The value would then _still_ be represented in a signed type. > > Taken together, how about 'Use "U" as a suffix to explicitly state when > an integer constant is intended to be an unsigned one'? > > I expect both remarks will apply throughout the series, so I'm not > going to repeat them for later patches. Hi Jan, I agree with you. To further help Gianluca undestand better your suggestion, I think the commit message wants to be: xen/x86/acpi/cpufreq: fixed violations of MISRA C:2012 Rule 7.2 The xen sources contains violations of MISRA C:2012 Rule 7.2 whose headline states: "A "u" or "U" suffix shall be applied to all integer constants that are represented in an unsigned type". Use "U" as a suffix to explicitly state when an integer constant is intended to be an unsigned one For homogeneity, also add the "U" suffix in other cases that the tool didn't report as violations. I also took the opportunity to make the title unique. Jan, if you are happy with this wording it could be applied to all patches in this series (with the titles being made unique). From xen-devel-bounces@lists.xenproject.org Tue Jun 20 20:48:21 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 20 Jun 2023 20:48:21 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552319.862327 (Exim 4.92) (envelope-from ) id 1qBiGp-0006Gh-QY; Tue, 20 Jun 2023 20:48:11 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552319.862327; Tue, 20 Jun 2023 20:48:11 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBiGp-0006Ga-NR; Tue, 20 Jun 2023 20:48:11 +0000 Received: by outflank-mailman (input) for mailman id 552319; Tue, 20 Jun 2023 20:48:11 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBiGp-0006GS-2W for xen-devel@lists.xenproject.org; Tue, 20 Jun 2023 20:48:11 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [2604:1380:4641:c500::1]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id c3538708-0fab-11ee-b234-6b7b168915f2; Tue, 20 Jun 2023 22:48:09 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id E884F60F1D; Tue, 20 Jun 2023 20:48:07 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 042C8C433C0; Tue, 20 Jun 2023 20:48:05 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: c3538708-0fab-11ee-b234-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1687294087; bh=4IIyCfXgBSffHSDbQdQNo+fjD3qLoRSq3quWomp5HHE=; h=Date:From:To:cc:Subject:In-Reply-To:References:From; b=ZCT1HAXL5i0J/XCVjCa2N6fpSvJJy7yVaNtgG4DueUJ6fMcUnmeo5PJfUuhd8HNFT kbfGQG+hsOcb8n+wyQWwDI9X0cwGUiM7jpVr9dmkUkdszi+MwyLeYsgA9YegjMMeeS LUZSCGysIV062J0vrBArG03yM09qzpSD03UsF1+STRoMiGCQM410adeOLkT6T6O6hX q+2kcZBcIf7a0Sv0La2mr3BGL7UuwctjcSI7WElaHuCI4sCRy9HVhxwLaoLJoUwG+c y8Tlft4T1ZeOma11ysIdaOrid0Vyrf5r5rBXZHnRQwA75H6JwPXpA6DEIgU1nn3BGg Dyhfoz0QDPQSQ== Date: Tue, 20 Jun 2023 13:48:04 -0700 (PDT) From: Stefano Stabellini X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop To: Simone Ballarin cc: xen-devel@lists.xenproject.org, consulting@bugseng.com, Gianluca Luparini , Jan Beulich , Andrew Cooper , Stefano Stabellini , Michal Orzel , Xenia Ragiadakou , Ayan Kumar Subject: Re: [XEN PATCH 02/13] AMD/IOMMU: fixed violations of MISRA C:2012 Rule 7.2 In-Reply-To: <21337a20c5c8d66dff552c2f09054ea82b253dd6.1687250177.git.gianluca.luparini@bugseng.com> Message-ID: References: <21337a20c5c8d66dff552c2f09054ea82b253dd6.1687250177.git.gianluca.luparini@bugseng.com> User-Agent: Alpine 2.22 (DEB 394 2020-01-19) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII On Tue, 20 Jun 2023, Simone Ballarin wrote: > From: Gianluca Luparini > > The xen sources contains violations of MISRA C:2012 Rule 7.2 whose headline states: > "A "u" or "U" suffix shall be applied to all integer constants that are represented in an unsigned type". > > I propose to use "U" as a suffix to explicitly state when an integer constant is represented in an unsigned type. > For homogeneity, I also added the "U" suffix in some cases that the tool didn't report as violations. > > Signed-off-by: Simone Ballarin The changes look good to me, so aside from the wording of the commit message that needs an update: Acked-by: Stefano Stabellini > --- > xen/drivers/passthrough/amd/iommu-defs.h | 122 +++++++++++------------ > 1 file changed, 61 insertions(+), 61 deletions(-) > > diff --git a/xen/drivers/passthrough/amd/iommu-defs.h b/xen/drivers/passthrough/amd/iommu-defs.h > index 35de548e3a..c145248f9a 100644 > --- a/xen/drivers/passthrough/amd/iommu-defs.h > +++ b/xen/drivers/passthrough/amd/iommu-defs.h > @@ -38,49 +38,49 @@ > ((uint64_t)(offset) << (12 + (PTE_PER_TABLE_SHIFT * ((level) - 1)))) > > /* IOMMU Capability */ > -#define PCI_CAP_ID_MASK 0x000000FF > +#define PCI_CAP_ID_MASK 0x000000FFU > #define PCI_CAP_ID_SHIFT 0 > -#define PCI_CAP_NEXT_PTR_MASK 0x0000FF00 > +#define PCI_CAP_NEXT_PTR_MASK 0x0000FF00U > #define PCI_CAP_NEXT_PTR_SHIFT 8 > -#define PCI_CAP_TYPE_MASK 0x00070000 > +#define PCI_CAP_TYPE_MASK 0x00070000U > #define PCI_CAP_TYPE_SHIFT 16 > -#define PCI_CAP_REV_MASK 0x00F80000 > +#define PCI_CAP_REV_MASK 0x00F80000U > #define PCI_CAP_REV_SHIFT 19 > -#define PCI_CAP_IOTLB_MASK 0x01000000 > +#define PCI_CAP_IOTLB_MASK 0x01000000U > #define PCI_CAP_IOTLB_SHIFT 24 > -#define PCI_CAP_HT_TUNNEL_MASK 0x02000000 > +#define PCI_CAP_HT_TUNNEL_MASK 0x02000000U > #define PCI_CAP_HT_TUNNEL_SHIFT 25 > -#define PCI_CAP_NP_CACHE_MASK 0x04000000 > +#define PCI_CAP_NP_CACHE_MASK 0x04000000U > #define PCI_CAP_NP_CACHE_SHIFT 26 > #define PCI_CAP_EFRSUP_SHIFT 27 > -#define PCI_CAP_RESET_MASK 0x80000000 > +#define PCI_CAP_RESET_MASK 0x80000000U > #define PCI_CAP_RESET_SHIFT 31 > > #define PCI_CAP_TYPE_IOMMU 0x3 > > #define PCI_CAP_MMIO_BAR_LOW_OFFSET 0x04 > #define PCI_CAP_MMIO_BAR_HIGH_OFFSET 0x08 > -#define PCI_CAP_MMIO_BAR_LOW_MASK 0xFFFFC000 > +#define PCI_CAP_MMIO_BAR_LOW_MASK 0xFFFFC000U > #define IOMMU_MMIO_REGION_LENGTH 0x4000 > > #define PCI_CAP_RANGE_OFFSET 0x0C > -#define PCI_CAP_BUS_NUMBER_MASK 0x0000FF00 > +#define PCI_CAP_BUS_NUMBER_MASK 0x0000FF00U > #define PCI_CAP_BUS_NUMBER_SHIFT 8 > -#define PCI_CAP_FIRST_DEVICE_MASK 0x00FF0000 > +#define PCI_CAP_FIRST_DEVICE_MASK 0x00FF0000U > #define PCI_CAP_FIRST_DEVICE_SHIFT 16 > -#define PCI_CAP_LAST_DEVICE_MASK 0xFF000000 > +#define PCI_CAP_LAST_DEVICE_MASK 0xFF000000U > #define PCI_CAP_LAST_DEVICE_SHIFT 24 > > -#define PCI_CAP_UNIT_ID_MASK 0x0000001F > +#define PCI_CAP_UNIT_ID_MASK 0x0000001FU > #define PCI_CAP_UNIT_ID_SHIFT 0 > #define PCI_CAP_MISC_INFO_OFFSET 0x10 > -#define PCI_CAP_MSI_NUMBER_MASK 0x0000001F > +#define PCI_CAP_MSI_NUMBER_MASK 0x0000001FU > #define PCI_CAP_MSI_NUMBER_SHIFT 0 > > /* Device Table */ > #define IOMMU_DEV_TABLE_BASE_LOW_OFFSET 0x00 > #define IOMMU_DEV_TABLE_BASE_HIGH_OFFSET 0x04 > -#define IOMMU_DEV_TABLE_SIZE_MASK 0x000001FF > +#define IOMMU_DEV_TABLE_SIZE_MASK 0x000001FFU > #define IOMMU_DEV_TABLE_SIZE_SHIFT 0 > > #define IOMMU_DEV_TABLE_ENTRIES_PER_BUS 256 > @@ -159,13 +159,13 @@ struct amd_iommu_dte { > #define IOMMU_CMD_BUFFER_BASE_HIGH_OFFSET 0x0C > #define IOMMU_CMD_BUFFER_HEAD_OFFSET 0x2000 > #define IOMMU_CMD_BUFFER_TAIL_OFFSET 0x2008 > -#define IOMMU_CMD_BUFFER_LENGTH_MASK 0x0F000000 > +#define IOMMU_CMD_BUFFER_LENGTH_MASK 0x0F000000U > #define IOMMU_CMD_BUFFER_LENGTH_SHIFT 24 > > #define IOMMU_CMD_BUFFER_ENTRY_ORDER 4 > #define IOMMU_CMD_BUFFER_MAX_ENTRIES (1u << 15) > > -#define IOMMU_CMD_OPCODE_MASK 0xF0000000 > +#define IOMMU_CMD_OPCODE_MASK 0xF0000000U > #define IOMMU_CMD_OPCODE_SHIFT 28 > #define IOMMU_CMD_COMPLETION_WAIT 0x1 > #define IOMMU_CMD_INVALIDATE_DEVTAB_ENTRY 0x2 > @@ -178,50 +178,50 @@ struct amd_iommu_dte { > /* COMPLETION_WAIT command */ > #define IOMMU_COMP_WAIT_DATA_BUFFER_SIZE 8 > #define IOMMU_COMP_WAIT_DATA_BUFFER_ALIGNMENT 8 > -#define IOMMU_COMP_WAIT_S_FLAG_MASK 0x00000001 > -#define IOMMU_COMP_WAIT_I_FLAG_MASK 0x00000002 > -#define IOMMU_COMP_WAIT_F_FLAG_MASK 0x00000004 > -#define IOMMU_COMP_WAIT_ADDR_LOW_MASK 0xFFFFFFF8 > +#define IOMMU_COMP_WAIT_S_FLAG_MASK 0x00000001U > +#define IOMMU_COMP_WAIT_I_FLAG_MASK 0x00000002U > +#define IOMMU_COMP_WAIT_F_FLAG_MASK 0x00000004U > +#define IOMMU_COMP_WAIT_ADDR_LOW_MASK 0xFFFFFFF8U > #define IOMMU_COMP_WAIT_ADDR_LOW_SHIFT 3 > -#define IOMMU_COMP_WAIT_ADDR_HIGH_MASK 0x000FFFFF > +#define IOMMU_COMP_WAIT_ADDR_HIGH_MASK 0x000FFFFFU > #define IOMMU_COMP_WAIT_ADDR_HIGH_SHIFT 0 > > /* INVALIDATE_IOMMU_PAGES command */ > -#define IOMMU_INV_IOMMU_PAGES_DOMAIN_ID_MASK 0x0000FFFF > +#define IOMMU_INV_IOMMU_PAGES_DOMAIN_ID_MASK 0x0000FFFFU > #define IOMMU_INV_IOMMU_PAGES_DOMAIN_ID_SHIFT 0 > -#define IOMMU_INV_IOMMU_PAGES_S_FLAG_MASK 0x00000001 > +#define IOMMU_INV_IOMMU_PAGES_S_FLAG_MASK 0x00000001U > #define IOMMU_INV_IOMMU_PAGES_S_FLAG_SHIFT 0 > -#define IOMMU_INV_IOMMU_PAGES_PDE_FLAG_MASK 0x00000002 > +#define IOMMU_INV_IOMMU_PAGES_PDE_FLAG_MASK 0x00000002U > #define IOMMU_INV_IOMMU_PAGES_PDE_FLAG_SHIFT 1 > -#define IOMMU_INV_IOMMU_PAGES_ADDR_LOW_MASK 0xFFFFF000 > +#define IOMMU_INV_IOMMU_PAGES_ADDR_LOW_MASK 0xFFFFF000U > #define IOMMU_INV_IOMMU_PAGES_ADDR_LOW_SHIFT 12 > -#define IOMMU_INV_IOMMU_PAGES_ADDR_HIGH_MASK 0xFFFFFFFF > +#define IOMMU_INV_IOMMU_PAGES_ADDR_HIGH_MASK 0xFFFFFFFFU > #define IOMMU_INV_IOMMU_PAGES_ADDR_HIGH_SHIFT 0 > > /* INVALIDATE_DEVTAB_ENTRY command */ > -#define IOMMU_INV_DEVTAB_ENTRY_DEVICE_ID_MASK 0x0000FFFF > +#define IOMMU_INV_DEVTAB_ENTRY_DEVICE_ID_MASK 0x0000FFFFU > #define IOMMU_INV_DEVTAB_ENTRY_DEVICE_ID_SHIFT 0 > > /* INVALIDATE_INTERRUPT_TABLE command */ > -#define IOMMU_INV_INT_TABLE_DEVICE_ID_MASK 0x0000FFFF > +#define IOMMU_INV_INT_TABLE_DEVICE_ID_MASK 0x0000FFFFU > #define IOMMU_INV_INT_TABLE_DEVICE_ID_SHIFT 0 > > /* INVALIDATE_IOTLB_PAGES command */ > -#define IOMMU_INV_IOTLB_PAGES_MAXPEND_MASK 0xff000000 > +#define IOMMU_INV_IOTLB_PAGES_MAXPEND_MASK 0xff000000U > #define IOMMU_INV_IOTLB_PAGES_MAXPEND_SHIFT 24 > -#define IOMMU_INV_IOTLB_PAGES_PASID1_MASK 0x00ff0000 > +#define IOMMU_INV_IOTLB_PAGES_PASID1_MASK 0x00ff0000U > #define IOMMU_INV_IOTLB_PAGES_PASID1_SHIFT 16 > -#define IOMMU_INV_IOTLB_PAGES_PASID2_MASK 0x0fff0000 > +#define IOMMU_INV_IOTLB_PAGES_PASID2_MASK 0x0fff0000U > #define IOMMU_INV_IOTLB_PAGES_PASID2_SHIFT 16 > -#define IOMMU_INV_IOTLB_PAGES_QUEUEID_MASK 0x0000ffff > +#define IOMMU_INV_IOTLB_PAGES_QUEUEID_MASK 0x0000ffffU > #define IOMMU_INV_IOTLB_PAGES_QUEUEID_SHIFT 0 > -#define IOMMU_INV_IOTLB_PAGES_DEVICE_ID_MASK 0x0000FFFF > +#define IOMMU_INV_IOTLB_PAGES_DEVICE_ID_MASK 0x0000FFFFU > #define IOMMU_INV_IOTLB_PAGES_DEVICE_ID_SHIFT 0 > -#define IOMMU_INV_IOTLB_PAGES_ADDR_LOW_MASK 0xFFFFF000 > +#define IOMMU_INV_IOTLB_PAGES_ADDR_LOW_MASK 0xFFFFF000U > #define IOMMU_INV_IOTLB_PAGES_ADDR_LOW_SHIFT 12 > -#define IOMMU_INV_IOTLB_PAGES_ADDR_HIGH_MASK 0xFFFFFFFF > +#define IOMMU_INV_IOTLB_PAGES_ADDR_HIGH_MASK 0xFFFFFFFFU > #define IOMMU_INV_IOTLB_PAGES_ADDR_HIGH_SHIFT 0 > -#define IOMMU_INV_IOTLB_PAGES_S_FLAG_MASK 0x00000001 > +#define IOMMU_INV_IOTLB_PAGES_S_FLAG_MASK 0x00000001U > #define IOMMU_INV_IOTLB_PAGES_S_FLAG_SHIFT 0 > > /* Event Log */ > @@ -229,18 +229,18 @@ struct amd_iommu_dte { > #define IOMMU_EVENT_LOG_BASE_HIGH_OFFSET 0x14 > #define IOMMU_EVENT_LOG_HEAD_OFFSET 0x2010 > #define IOMMU_EVENT_LOG_TAIL_OFFSET 0x2018 > -#define IOMMU_EVENT_LOG_LENGTH_MASK 0x0F000000 > +#define IOMMU_EVENT_LOG_LENGTH_MASK 0x0F000000U > #define IOMMU_EVENT_LOG_LENGTH_SHIFT 24 > -#define IOMMU_EVENT_LOG_HEAD_MASK 0x0007FFF0 > +#define IOMMU_EVENT_LOG_HEAD_MASK 0x0007FFF0U > #define IOMMU_EVENT_LOG_HEAD_SHIFT 4 > -#define IOMMU_EVENT_LOG_TAIL_MASK 0x0007FFF0 > +#define IOMMU_EVENT_LOG_TAIL_MASK 0x0007FFF0U > #define IOMMU_EVENT_LOG_TAIL_SHIFT 4 > > #define IOMMU_EVENT_LOG_ENTRY_SIZE 16 > #define IOMMU_EVENT_LOG_POWER_OF2_ENTRIES_PER_PAGE 8 > #define IOMMU_EVENT_LOG_U32_PER_ENTRY (IOMMU_EVENT_LOG_ENTRY_SIZE / 4) > > -#define IOMMU_EVENT_CODE_MASK 0xF0000000 > +#define IOMMU_EVENT_CODE_MASK 0xF0000000U > #define IOMMU_EVENT_CODE_SHIFT 28 > #define IOMMU_EVENT_ILLEGAL_DEV_TABLE_ENTRY 0x1 > #define IOMMU_EVENT_IO_PAGE_FAULT 0x2 > @@ -251,12 +251,12 @@ struct amd_iommu_dte { > #define IOMMU_EVENT_IOTLB_INV_TIMEOUT 0x7 > #define IOMMU_EVENT_INVALID_DEV_REQUEST 0x8 > > -#define IOMMU_EVENT_DOMAIN_ID_MASK 0x0000FFFF > +#define IOMMU_EVENT_DOMAIN_ID_MASK 0x0000FFFFU > #define IOMMU_EVENT_DOMAIN_ID_SHIFT 0 > -#define IOMMU_EVENT_DEVICE_ID_MASK 0x0000FFFF > +#define IOMMU_EVENT_DEVICE_ID_MASK 0x0000FFFFU > #define IOMMU_EVENT_DEVICE_ID_SHIFT 0 > #define IOMMU_EVENT_FLAGS_SHIFT 16 > -#define IOMMU_EVENT_FLAGS_MASK 0x0FFF0000 > +#define IOMMU_EVENT_FLAGS_MASK 0x0FFF0000U > > /* PPR Log */ > #define IOMMU_PPR_LOG_ENTRY_SIZE 16 > @@ -265,21 +265,21 @@ struct amd_iommu_dte { > > #define IOMMU_PPR_LOG_BASE_LOW_OFFSET 0x0038 > #define IOMMU_PPR_LOG_BASE_HIGH_OFFSET 0x003C > -#define IOMMU_PPR_LOG_BASE_LOW_MASK 0xFFFFF000 > +#define IOMMU_PPR_LOG_BASE_LOW_MASK 0xFFFFF000U > #define IOMMU_PPR_LOG_BASE_LOW_SHIFT 12 > -#define IOMMU_PPR_LOG_BASE_HIGH_MASK 0x000FFFFF > +#define IOMMU_PPR_LOG_BASE_HIGH_MASK 0x000FFFFFU > #define IOMMU_PPR_LOG_BASE_HIGH_SHIFT 0 > -#define IOMMU_PPR_LOG_LENGTH_MASK 0x0F000000 > +#define IOMMU_PPR_LOG_LENGTH_MASK 0x0F000000U > #define IOMMU_PPR_LOG_LENGTH_SHIFT 24 > -#define IOMMU_PPR_LOG_HEAD_MASK 0x0007FFF0 > +#define IOMMU_PPR_LOG_HEAD_MASK 0x0007FFF0U > #define IOMMU_PPR_LOG_HEAD_SHIFT 4 > -#define IOMMU_PPR_LOG_TAIL_MASK 0x0007FFF0 > +#define IOMMU_PPR_LOG_TAIL_MASK 0x0007FFF0U > #define IOMMU_PPR_LOG_TAIL_SHIFT 4 > #define IOMMU_PPR_LOG_HEAD_OFFSET 0x2030 > #define IOMMU_PPR_LOG_TAIL_OFFSET 0x2038 > -#define IOMMU_PPR_LOG_DEVICE_ID_MASK 0x0000FFFF > +#define IOMMU_PPR_LOG_DEVICE_ID_MASK 0x0000FFFFU > #define IOMMU_PPR_LOG_DEVICE_ID_SHIFT 0 > -#define IOMMU_PPR_LOG_CODE_MASK 0xF0000000 > +#define IOMMU_PPR_LOG_CODE_MASK 0xF0000000U > #define IOMMU_PPR_LOG_CODE_SHIFT 28 > > #define IOMMU_LOG_ENTRY_TIMEOUT 1000 > @@ -342,17 +342,17 @@ union amd_iommu_control { > #define IOMMU_EXCLUSION_BASE_HIGH_OFFSET 0x24 > #define IOMMU_EXCLUSION_LIMIT_LOW_OFFSET 0x28 > #define IOMMU_EXCLUSION_LIMIT_HIGH_OFFSET 0x2C > -#define IOMMU_EXCLUSION_BASE_LOW_MASK 0xFFFFF000 > +#define IOMMU_EXCLUSION_BASE_LOW_MASK 0xFFFFF000U > #define IOMMU_EXCLUSION_BASE_LOW_SHIFT 12 > -#define IOMMU_EXCLUSION_BASE_HIGH_MASK 0xFFFFFFFF > +#define IOMMU_EXCLUSION_BASE_HIGH_MASK 0xFFFFFFFFU > #define IOMMU_EXCLUSION_BASE_HIGH_SHIFT 0 > -#define IOMMU_EXCLUSION_RANGE_ENABLE_MASK 0x00000001 > +#define IOMMU_EXCLUSION_RANGE_ENABLE_MASK 0x00000001U > #define IOMMU_EXCLUSION_RANGE_ENABLE_SHIFT 0 > -#define IOMMU_EXCLUSION_ALLOW_ALL_MASK 0x00000002 > +#define IOMMU_EXCLUSION_ALLOW_ALL_MASK 0x00000002U > #define IOMMU_EXCLUSION_ALLOW_ALL_SHIFT 1 > -#define IOMMU_EXCLUSION_LIMIT_LOW_MASK 0xFFFFF000 > +#define IOMMU_EXCLUSION_LIMIT_LOW_MASK 0xFFFFF000U > #define IOMMU_EXCLUSION_LIMIT_LOW_SHIFT 12 > -#define IOMMU_EXCLUSION_LIMIT_HIGH_MASK 0xFFFFFFFF > +#define IOMMU_EXCLUSION_LIMIT_HIGH_MASK 0xFFFFFFFFU > #define IOMMU_EXCLUSION_LIMIT_HIGH_SHIFT 0 > > /* Extended Feature Register */ > @@ -476,14 +476,14 @@ union amd_iommu_pte { > > #define INV_IOMMU_ALL_PAGES_ADDRESS ((1ULL << 63) - 1) > > -#define IOMMU_RING_BUFFER_PTR_MASK 0x0007FFF0 > +#define IOMMU_RING_BUFFER_PTR_MASK 0x0007FFF0U > > -#define IOMMU_CMD_DEVICE_ID_MASK 0x0000FFFF > +#define IOMMU_CMD_DEVICE_ID_MASK 0x0000FFFFU > #define IOMMU_CMD_DEVICE_ID_SHIFT 0 > > -#define IOMMU_REG_BASE_ADDR_LOW_MASK 0xFFFFF000 > +#define IOMMU_REG_BASE_ADDR_LOW_MASK 0xFFFFF000U > #define IOMMU_REG_BASE_ADDR_LOW_SHIFT 12 > -#define IOMMU_REG_BASE_ADDR_HIGH_MASK 0x000FFFFF > +#define IOMMU_REG_BASE_ADDR_HIGH_MASK 0x000FFFFFU > #define IOMMU_REG_BASE_ADDR_HIGH_SHIFT 0 > > #endif /* AMD_IOMMU_DEFS_H */ > -- > 2.41.0 > From xen-devel-bounces@lists.xenproject.org Tue Jun 20 20:50:01 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 20 Jun 2023 20:50:01 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552324.862337 (Exim 4.92) (envelope-from ) id 1qBiIa-0006pc-5t; Tue, 20 Jun 2023 20:50:00 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552324.862337; Tue, 20 Jun 2023 20:50:00 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBiIa-0006pV-2Z; Tue, 20 Jun 2023 20:50:00 +0000 Received: by outflank-mailman (input) for mailman id 552324; Tue, 20 Jun 2023 20:49:58 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBiIY-0006pL-Ma for xen-devel@lists.xenproject.org; Tue, 20 Jun 2023 20:49:58 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [2604:1380:4641:c500::1]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 02d08862-0fac-11ee-8611-37d641c3527e; Tue, 20 Jun 2023 22:49:56 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id C5C1660EB7; Tue, 20 Jun 2023 20:49:54 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id A616BC433C0; Tue, 20 Jun 2023 20:49:52 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 02d08862-0fac-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1687294194; bh=N9ipIT1HIT0LYQ3Et6OB57/9wrFskPnakAW6QIBWx+c=; h=Date:From:To:cc:Subject:In-Reply-To:References:From; b=ojUgM3PAl1Gi9+0eS5Zg9OuONQ+pB3cy3OwkIGu2RDHUJD6Kk3x2xwvRyjSKPGV38 8uGAkqG7VouAsS2RQaQ8HhmYZhLFdSXL+N+iiEEjsyvFxHjpElp8wgEla2Ly+YKEqL GTQghbHC8URQlPdkmTceERz5PsICztjKuXopDq3kd5TG4BGvox8Jhk+5yBJ9tyZEe0 VwURc11dN+TTHOjfXKeMQM7DgRyxY+v2uoVetwL73KtccurW3+QUFJ35B3HsGh5gtK OC+8gNI6r/UEfkNgGKOvxJNLGrexTcX1oE9Jhua2WJ8Cl+et+xjWfk/GIY96fZMZ9I ABaRBUYX0BNsw== Date: Tue, 20 Jun 2023 13:49:51 -0700 (PDT) From: Stefano Stabellini X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop To: Simone Ballarin cc: xen-devel@lists.xenproject.org, consulting@bugseng.com, Gianluca Luparini , Jan Beulich , Andrew Cooper , =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= , Wei Liu , Stefano Stabellini , Michal Orzel , Xenia Ragiadakou , Ayan Kumar Subject: Re: [XEN PATCH 03/13] xen/x86: fixed violations of MISRA C:2012 Rule 7.2 In-Reply-To: <397206cfac500d171be31dcd3503d9f61e531a97.1687250177.git.gianluca.luparini@bugseng.com> Message-ID: References: <397206cfac500d171be31dcd3503d9f61e531a97.1687250177.git.gianluca.luparini@bugseng.com> User-Agent: Alpine 2.22 (DEB 394 2020-01-19) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII On Tue, 20 Jun 2023, Simone Ballarin wrote: > From: Gianluca Luparini > > The xen sources contains violations of MISRA C:2012 Rule 7.2 whose headline states: > "A "u" or "U" suffix shall be applied to all integer constants that are represented in an unsigned type". > > I propose to use "U" as a suffix to explicitly state when an integer constant is represented in an unsigned type. > > Signed-off-by: Simone Ballarin Commit message aside: Reviewed-by: Stefano Stabellini FYI I would use the following as commit message title to make it unique: xen/x86/hvm/svm: fixed violations of MISRA C:2012 Rule 7.2 > --- > xen/arch/x86/hvm/svm/asid.c | 2 +- > xen/arch/x86/hvm/svm/svm.c | 8 ++++---- > 2 files changed, 5 insertions(+), 5 deletions(-) > > diff --git a/xen/arch/x86/hvm/svm/asid.c b/xen/arch/x86/hvm/svm/asid.c > index 09f8c23fd9..56306d1a16 100644 > --- a/xen/arch/x86/hvm/svm/asid.c > +++ b/xen/arch/x86/hvm/svm/asid.c > @@ -16,7 +16,7 @@ void svm_asid_init(const struct cpuinfo_x86 *c) > > /* Check for erratum #170, and leave ASIDs disabled if it's present. */ > if ( !cpu_has_amd_erratum(c, AMD_ERRATUM_170) ) > - nasids = cpuid_ebx(0x8000000A); > + nasids = cpuid_ebx(0x8000000AU); > > hvm_asid_init(nasids); > } > diff --git a/xen/arch/x86/hvm/svm/svm.c b/xen/arch/x86/hvm/svm/svm.c > index 59a6e88dff..56cb2f61bb 100644 > --- a/xen/arch/x86/hvm/svm/svm.c > +++ b/xen/arch/x86/hvm/svm/svm.c > @@ -269,9 +269,9 @@ svm_msrbit(unsigned long *msr_bitmap, uint32_t msr) > */ > if ( msr <= 0x1fff ) > msr_bit = msr_bitmap + 0x0000 / BYTES_PER_LONG; > - else if ( (msr >= 0xc0000000) && (msr <= 0xc0001fff) ) > + else if ( (msr >= 0xc0000000U) && (msr <= 0xc0001fffU) ) > msr_bit = msr_bitmap + 0x0800 / BYTES_PER_LONG; > - else if ( (msr >= 0xc0010000) && (msr <= 0xc0011fff) ) > + else if ( (msr >= 0xc0010000U) && (msr <= 0xc0011fffU) ) > msr_bit = msr_bitmap + 0x1000 / BYTES_PER_LONG; > > return msr_bit; > @@ -2539,8 +2539,8 @@ const struct hvm_function_table * __init start_svm(void) > > setup_vmcb_dump(); > > - if ( boot_cpu_data.extended_cpuid_level >= 0x8000000a ) > - svm_feature_flags = cpuid_edx(0x8000000a); > + if ( boot_cpu_data.extended_cpuid_level >= 0x8000000aU ) > + svm_feature_flags = cpuid_edx(0x8000000aU); > > printk("SVM: Supported advanced features:\n"); > > -- > 2.41.0 > From xen-devel-bounces@lists.xenproject.org Tue Jun 20 20:57:23 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 20 Jun 2023 20:57:23 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552329.862346 (Exim 4.92) (envelope-from ) id 1qBiPT-0008LA-Sr; Tue, 20 Jun 2023 20:57:07 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552329.862346; Tue, 20 Jun 2023 20:57:07 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBiPT-0008L3-Po; Tue, 20 Jun 2023 20:57:07 +0000 Received: by outflank-mailman (input) for mailman id 552329; Tue, 20 Jun 2023 20:57:06 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBiPS-0008Kx-A7 for xen-devel@lists.xenproject.org; Tue, 20 Jun 2023 20:57:06 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 029532af-0fad-11ee-b234-6b7b168915f2; Tue, 20 Jun 2023 22:57:05 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id C8C19611C5; Tue, 20 Jun 2023 20:57:03 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id A0D90C433C0; Tue, 20 Jun 2023 20:57:01 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 029532af-0fad-11ee-b234-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1687294623; bh=n0nok6yhIDeyXx7RVeJ2kDBAAEjH/jQoKNQerE55KPk=; h=Date:From:To:cc:Subject:In-Reply-To:References:From; b=D+HgA5Odr6oP1L1O9MM6+Jt/b4g/55xGBX2xpHZi5gvgWEX58jDdHmcf2hwVFT3AA GUbQBuTPVRSD86kMCRo26+SCxEvIMDOG37Glk3EU/lXcEEuL6f0KlqlJRKv1dSVfq7 H2YWVjxryKMMVtJP1cIKfxuuTD8AccV13AK59AWSrxOmHJ3bfoqsFN+SnYRhJSm5EJ /tp3V2pkRoYWIFpCM8TGmaOQg49Eo8MB4n8QL98NinqKzve9vODeUXbYXKYoOZGPhD do2BLjwYOxQP23TJOnZ6sj9Nw3PsOCK9U47zRsixKXIXV/6nuqeAoWC6nIBrzSVkB2 MzNIK4Rp+Jkfg== Date: Tue, 20 Jun 2023 13:56:59 -0700 (PDT) From: Stefano Stabellini X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop To: Jan Beulich cc: Simone Ballarin , consulting@bugseng.com, Gianluca Luparini , Andrew Cooper , =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= , Wei Liu , Stefano Stabellini , Michal Orzel , Xenia Ragiadakou , Ayan Kumar , xen-devel@lists.xenproject.org Subject: Re: [XEN PATCH 06/13] xen/efi: fixed violations of MISRA C:2012 Rule 7.2 In-Reply-To: <6d6708de-7afb-963c-65ae-3656fc755ad6@suse.com> Message-ID: References: <019b934cb1e96affd7429c1632fbfe3faacc663e.1687250177.git.gianluca.luparini@bugseng.com> <6d6708de-7afb-963c-65ae-3656fc755ad6@suse.com> User-Agent: Alpine 2.22 (DEB 394 2020-01-19) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII On Tue, 20 Jun 2023, Jan Beulich wrote: > On 20.06.2023 12:34, Simone Ballarin wrote: > > From: Gianluca Luparini > > > > The xen sources contains violations of MISRA C:2012 Rule 7.2 whose headline states: > > "A "u" or "U" suffix shall be applied to all integer constants that are represented in an unsigned type". > > > > I propose to use "U" as a suffix to explicitly state when an integer constant is represented in an unsigned type. > > For homogeneity, I also added the "U" suffix in some cases that the tool didn't report as violations. > > > > Signed-off-by: Simone Ballarin > > --- > > xen/arch/x86/include/asm/x86_64/efibind.h | 10 +++++----- > > This file as well as ... > > > xen/common/efi/boot.c | 8 ++++---- > > xen/common/efi/runtime.c | 2 +- > > xen/include/efi/efiapi.h | 10 +++++----- > > xen/include/efi/efidef.h | 2 +- > > xen/include/efi/efiprot.h | 22 +++++++++++----------- > > ... the last three here are imported from the gnu-efi package. I'm wary > of touching them, and thus getting them more out of sync with their > original than strictly necessary. To allow the other changes to go in > no matter what, I'd like to suggest splitting the patch. Should we add either those files individually or the directory xen/include/efi (plus xen/arch/x86/include/asm/x86_64/efibind.h) to docs/misra/exclude-list.json ? From xen-devel-bounces@lists.xenproject.org Tue Jun 20 20:59:46 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 20 Jun 2023 20:59:46 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552336.862356 (Exim 4.92) (envelope-from ) id 1qBiS1-0000U4-9U; Tue, 20 Jun 2023 20:59:45 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552336.862356; Tue, 20 Jun 2023 20:59:45 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBiS1-0000Tx-6v; Tue, 20 Jun 2023 20:59:45 +0000 Received: by outflank-mailman (input) for mailman id 552336; Tue, 20 Jun 2023 20:59:43 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBiRz-0000Tr-ET for xen-devel@lists.xenproject.org; Tue, 20 Jun 2023 20:59:43 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 5f57bf06-0fad-11ee-8611-37d641c3527e; Tue, 20 Jun 2023 22:59:40 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 8CEC560F1D; Tue, 20 Jun 2023 20:59:39 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 5E548C433C0; Tue, 20 Jun 2023 20:59:37 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 5f57bf06-0fad-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1687294779; bh=onHTV6o5xCP8GwTIKTJiRzhAXEXmKAxnDB9lhtG1dYQ=; h=Date:From:To:cc:Subject:In-Reply-To:References:From; b=QcErpQeOmhD/bzVeLAFsNhPvKjkGBlImVP1DBtbe8u+bm/HnN/ZQDSIq6Ch4sDiO2 MqxETQ4mWaAwvCwGel5gorEDMVwRQ13UeEBDkziZoStOXWLu4TUl36zYjuTrL4Cl7i fAIMxkNAmSlkcLB95jeunaYPpwIKlB2U2gIkhlZIRqBBw8UDqHLKsW120B8oXJZS0O rIWYugcz3ieEnBYpFMOBTAvOdzAIfkVAubKNr+JroUwHCwUsHPoKXfkvWB9V08z2AH +fZQr8sekr3d/zNUUQ68pj5o3JUxq7jzUQMRX13hFm519GKzqO4n4NG4yPw1WaTjAC XwZO9bb8+qhZg== Date: Tue, 20 Jun 2023 13:59:36 -0700 (PDT) From: Stefano Stabellini X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop To: Simone Ballarin cc: xen-devel@lists.xenproject.org, consulting@bugseng.com, Gianluca Luparini , Jan Beulich , Andrew Cooper , =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= , Wei Liu , Stefano Stabellini , Michal Orzel , Xenia Ragiadakou , Ayan Kumar Subject: Re: [XEN PATCH 06/13] xen/efi: fixed violations of MISRA C:2012 Rule 7.2 In-Reply-To: <019b934cb1e96affd7429c1632fbfe3faacc663e.1687250177.git.gianluca.luparini@bugseng.com> Message-ID: References: <019b934cb1e96affd7429c1632fbfe3faacc663e.1687250177.git.gianluca.luparini@bugseng.com> User-Agent: Alpine 2.22 (DEB 394 2020-01-19) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII On Tue, 20 Jun 2023, Simone Ballarin wrote: > From: Gianluca Luparini > > The xen sources contains violations of MISRA C:2012 Rule 7.2 whose headline states: > "A "u" or "U" suffix shall be applied to all integer constants that are represented in an unsigned type". > > I propose to use "U" as a suffix to explicitly state when an integer constant is represented in an unsigned type. > For homogeneity, I also added the "U" suffix in some cases that the tool didn't report as violations. > > Signed-off-by: Simone Ballarin > --- > xen/arch/x86/include/asm/x86_64/efibind.h | 10 +++++----- > xen/common/efi/boot.c | 8 ++++---- > xen/common/efi/runtime.c | 2 +- > xen/include/efi/efiapi.h | 10 +++++----- > xen/include/efi/efidef.h | 2 +- > xen/include/efi/efiprot.h | 22 +++++++++++----------- > 6 files changed, 27 insertions(+), 27 deletions(-) > > diff --git a/xen/arch/x86/include/asm/x86_64/efibind.h b/xen/arch/x86/include/asm/x86_64/efibind.h > index e23cd16cb6..773ef9b063 100644 > --- a/xen/arch/x86/include/asm/x86_64/efibind.h > +++ b/xen/arch/x86/include/asm/x86_64/efibind.h > @@ -117,13 +117,13 @@ typedef uint64_t UINTN; > #endif > #endif > > -#define EFIERR(a) (0x8000000000000000 | a) > -#define EFI_ERROR_MASK 0x8000000000000000 > -#define EFIERR_OEM(a) (0xc000000000000000 | a) > +#define EFIERR(a) (0x8000000000000000U | a) > +#define EFI_ERROR_MASK 0x8000000000000000U > +#define EFIERR_OEM(a) (0xc000000000000000U | a) I know that Jan asked not to change this file, but I wanted to point out that this should have been ULL because U is not enough to hold a 64-bit value on some architectures. > -#define BAD_POINTER 0xFBFBFBFBFBFBFBFB > -#define MAX_ADDRESS 0xFFFFFFFFFFFFFFFF > +#define BAD_POINTER 0xFBFBFBFBFBFBFBFBU > +#define MAX_ADDRESS 0xFFFFFFFFFFFFFFFFU > > #ifdef EFI_NT_EMULATOR > #define BREAKPOINT() __asm { int 3 } > diff --git a/xen/common/efi/boot.c b/xen/common/efi/boot.c > index c5850c26af..28a57fe434 100644 > --- a/xen/common/efi/boot.c > +++ b/xen/common/efi/boot.c > @@ -34,13 +34,13 @@ > #define EFI_REVISION(major, minor) (((major) << 16) | (minor)) > > #define SMBIOS3_TABLE_GUID \ > - { 0xf2fd1544, 0x9794, 0x4a2c, {0x99, 0x2e, 0xe5, 0xbb, 0xcf, 0x20, 0xe3, 0x94} } > + { 0xf2fd1544U, 0x9794U, 0x4a2cU, {0x99U, 0x2eU, 0xe5U, 0xbbU, 0xcfU, 0x20U, 0xe3U, 0x94U} } > #define SHIM_LOCK_PROTOCOL_GUID \ > - { 0x605dab50, 0xe046, 0x4300, {0xab, 0xb6, 0x3d, 0xd8, 0x10, 0xdd, 0x8b, 0x23} } > + { 0x605dab50U, 0xe046U, 0x4300U, {0xabU, 0xb6U, 0x3dU, 0xd8U, 0x10U, 0xddU, 0x8bU, 0x23U} } > #define APPLE_PROPERTIES_PROTOCOL_GUID \ > - { 0x91bd12fe, 0xf6c3, 0x44fb, { 0xa5, 0xb7, 0x51, 0x22, 0xab, 0x30, 0x3a, 0xe0} } > + { 0x91bd12feU, 0xf6c3U, 0x44fbU, { 0xa5U, 0xb7U, 0x51U, 0x22U, 0xabU, 0x30U, 0x3aU, 0xe0U} } > #define EFI_SYSTEM_RESOURCE_TABLE_GUID \ > - { 0xb122a263, 0x3661, 0x4f68, {0x99, 0x29, 0x78, 0xf8, 0xb0, 0xd6, 0x21, 0x80} } > + { 0xb122a263U, 0x3661U, 0x4f68U, {0x99U, 0x29U, 0x78U, 0xf8U, 0xb0U, 0xd6U, 0x21U, 0x80U} } > #define EFI_SYSTEM_RESOURCE_TABLE_FIRMWARE_RESOURCE_VERSION 1 > > typedef struct { > diff --git a/xen/common/efi/runtime.c b/xen/common/efi/runtime.c > index 13b0975866..5cb7504c96 100644 > --- a/xen/common/efi/runtime.c > +++ b/xen/common/efi/runtime.c > @@ -698,7 +698,7 @@ int efi_runtime_call(struct xenpf_efi_runtime_call *op) > #ifndef COMPAT > op->status = status; > #else > - op->status = (status & 0x3fffffff) | ((status >> 32) & 0xc0000000); > + op->status = (status & 0x3fffffffU) | ((status >> 32) & 0xc0000000U); > #endif > > return rc; > diff --git a/xen/include/efi/efiapi.h b/xen/include/efi/efiapi.h > index a616d1238a..8481e176ae 100644 > --- a/xen/include/efi/efiapi.h > +++ b/xen/include/efi/efiapi.h > @@ -868,19 +868,19 @@ typedef struct _EFI_BOOT_SERVICES { > // > > #define MPS_TABLE_GUID \ > - { 0xeb9d2d2f, 0x2d88, 0x11d3, {0x9a, 0x16, 0x0, 0x90, 0x27, 0x3f, 0xc1, 0x4d} } > + { 0xeb9d2d2fU, 0x2d88U, 0x11d3U, {0x9aU, 0x16U, 0x0U, 0x90U, 0x27U, 0x3fU, 0xc1U, 0x4dU} } > > #define ACPI_TABLE_GUID \ > - { 0xeb9d2d30, 0x2d88, 0x11d3, {0x9a, 0x16, 0x0, 0x90, 0x27, 0x3f, 0xc1, 0x4d} } > + { 0xeb9d2d30U, 0x2d88U, 0x11d3U, {0x9aU, 0x16U, 0x0U, 0x90U, 0x27U, 0x3fU, 0xc1U, 0x4dU} } > > #define ACPI_20_TABLE_GUID \ > - { 0x8868e871, 0xe4f1, 0x11d3, {0xbc, 0x22, 0x0, 0x80, 0xc7, 0x3c, 0x88, 0x81} } > + { 0x8868e871U, 0xe4f1U, 0x11d3U, {0xbcU, 0x22U, 0x0U, 0x80U, 0xc7U, 0x3cU, 0x88U, 0x81U} } > > #define SMBIOS_TABLE_GUID \ > - { 0xeb9d2d31, 0x2d88, 0x11d3, {0x9a, 0x16, 0x0, 0x90, 0x27, 0x3f, 0xc1, 0x4d} } > + { 0xeb9d2d31U, 0x2d88U, 0x11d3U, {0x9aU, 0x16U, 0x0U, 0x90U, 0x27U, 0x3fU, 0xc1U, 0x4dU} } > > #define SAL_SYSTEM_TABLE_GUID \ > - { 0xeb9d2d32, 0x2d88, 0x11d3, {0x9a, 0x16, 0x0, 0x90, 0x27, 0x3f, 0xc1, 0x4d} } > + { 0xeb9d2d32U, 0x2d88U, 0x11d3U, {0x9aU, 0x16U, 0x0U, 0x90U, 0x27U, 0x3fU, 0xc1U, 0x4dU} } > > > typedef struct _EFI_CONFIGURATION_TABLE { > diff --git a/xen/include/efi/efidef.h b/xen/include/efi/efidef.h > index 86a7e111bf..dab60882d2 100644 > --- a/xen/include/efi/efidef.h > +++ b/xen/include/efi/efidef.h > @@ -167,7 +167,7 @@ typedef enum { > #define EFI_MEMORY_MORE_RELIABLE 0x0000000000010000 > > // range requires a runtime mapping > -#define EFI_MEMORY_RUNTIME 0x8000000000000000 > +#define EFI_MEMORY_RUNTIME 0x8000000000000000U > > #define EFI_MEMORY_DESCRIPTOR_VERSION 1 > typedef struct { > diff --git a/xen/include/efi/efiprot.h b/xen/include/efi/efiprot.h > index 56d7636b2b..d1a8063bde 100644 > --- a/xen/include/efi/efiprot.h > +++ b/xen/include/efi/efiprot.h > @@ -38,7 +38,7 @@ Revision History > // > > #define BLOCK_IO_PROTOCOL \ > - { 0x964e5b21, 0x6459, 0x11d2, {0x8e, 0x39, 0x0, 0xa0, 0xc9, 0x69, 0x72, 0x3b} } > + { 0x964e5b21U, 0x6459U, 0x11d2U, {0x8eU, 0x39U, 0x0U, 0xa0U, 0xc9U, 0x69U, 0x72U, 0x3bU} } > #define EFI_BLOCK_IO_INTERFACE_REVISION 0x00010000 > > INTERFACE_DECL(_EFI_BLOCK_IO); > @@ -114,7 +114,7 @@ typedef struct _EFI_BLOCK_IO { > // > > #define DISK_IO_PROTOCOL \ > - { 0xce345171, 0xba0b, 0x11d2, {0x8e, 0x4f, 0x0, 0xa0, 0xc9, 0x69, 0x72, 0x3b} } > + { 0xce345171U, 0xba0bU, 0x11d2U, {0x8eU, 0x4fU, 0x0U, 0xa0U, 0xc9U, 0x69U, 0x72U, 0x3bU} } > #define EFI_DISK_IO_INTERFACE_REVISION 0x00010000 > > INTERFACE_DECL(_EFI_DISK_IO); > @@ -153,7 +153,7 @@ typedef struct _EFI_DISK_IO { > // > > #define SIMPLE_FILE_SYSTEM_PROTOCOL \ > - { 0x964e5b22, 0x6459, 0x11d2, {0x8e, 0x39, 0x0, 0xa0, 0xc9, 0x69, 0x72, 0x3b} } > + { 0x964e5b22U, 0x6459U, 0x11d2U, {0x8eU, 0x39U, 0x0U, 0xa0U, 0xc9U, 0x69U, 0x72U, 0x3bU} } > > INTERFACE_DECL(_EFI_FILE_IO_INTERFACE); > INTERFACE_DECL(_EFI_FILE_HANDLE); > @@ -335,7 +335,7 @@ typedef struct { > #define SIZE_OF_EFI_FILE_SYSTEM_INFO EFI_FIELD_OFFSET(EFI_FILE_SYSTEM_INFO,VolumeLabel) > > #define EFI_FILE_SYSTEM_VOLUME_LABEL_INFO_ID \ > - { 0xDB47D7D3,0xFE81, 0x11d3, {0x9A, 0x35, 0x00, 0x90, 0x27, 0x3F, 0xC1, 0x4D} } > + { 0xDB47D7D3U,0xFE81U, 0x11d3U, {0x9AU, 0x35U, 0x00U, 0x90U, 0x27U, 0x3FU, 0xC1U, 0x4DU} } > > typedef struct { > CHAR16 VolumeLabel[1]; > @@ -349,7 +349,7 @@ typedef struct { > > > #define LOAD_FILE_PROTOCOL \ > - { 0x56EC3091, 0x954C, 0x11d2, {0x8E, 0x3F, 0x00, 0xA0, 0xC9, 0x69, 0x72, 0x3B} } > + { 0x56EC3091U, 0x954CU, 0x11d2U, {0x8EU, 0x3FU, 0x00U, 0xA0U, 0xC9U, 0x69U, 0x72U, 0x3BU} } > > INTERFACE_DECL(_EFI_LOAD_FILE_INTERFACE); > > @@ -373,7 +373,7 @@ typedef struct _EFI_LOAD_FILE_INTERFACE { > // > > #define DEVICE_IO_PROTOCOL \ > - { 0xaf6ac311, 0x84c3, 0x11d2, {0x8e, 0x3c, 0x00, 0xa0, 0xc9, 0x69, 0x72, 0x3b} } > + { 0xaf6ac311U, 0x84c3U, 0x11d2U, {0x8eU, 0x3cU, 0x00U, 0xa0U, 0xc9U, 0x69U, 0x72U, 0x3bU} } > > INTERFACE_DECL(_EFI_DEVICE_IO_INTERFACE); > > @@ -484,7 +484,7 @@ typedef struct _EFI_DEVICE_IO_INTERFACE { > // > > #define UNICODE_COLLATION_PROTOCOL \ > - { 0x1d85cd7f, 0xf43d, 0x11d2, {0x9a, 0xc, 0x0, 0x90, 0x27, 0x3f, 0xc1, 0x4d} } > + { 0x1d85cd7fU, 0xf43dU, 0x11d2U, {0x9aU, 0xcU, 0x0U, 0x90U, 0x27U, 0x3fU, 0xc1U, 0x4dU} } > > #define UNICODE_BYTE_ORDER_MARK (CHAR16)(0xfeff) > > @@ -557,7 +557,7 @@ typedef struct _EFI_UNICODE_COLLATION_INTERFACE { > /* Graphics output protocol */ > #define EFI_GRAPHICS_OUTPUT_PROTOCOL_GUID \ > { \ > - 0x9042a9de, 0x23dc, 0x4a38, {0x96, 0xfb, 0x7a, 0xde, 0xd0, 0x80, 0x51, 0x6a } \ > + 0x9042a9deU, 0x23dcU, 0x4a38U, {0x96U, 0xfbU, 0x7aU, 0xdeU, 0xd0U, 0x80U, 0x51U, 0x6aU } \ > } > > typedef struct _EFI_GRAPHICS_OUTPUT_PROTOCOL EFI_GRAPHICS_OUTPUT_PROTOCOL; > @@ -730,7 +730,7 @@ struct _EFI_GRAPHICS_OUTPUT_PROTOCOL { > * UEFI Specification Version 2.5 Section 11.9 > */ > #define EFI_EDID_DISCOVERED_PROTOCOL_GUID \ > - { 0x1C0C34F6, 0xD380, 0x41FA, { 0xA0, 0x49, 0x8a, 0xD0, 0x6C, 0x1A, 0x66, 0xAA} } > + { 0x1C0C34F6U, 0xD380U, 0x41FAU, { 0xA0U, 0x49U, 0x8aU, 0xD0U, 0x6CU, 0x1AU, 0x66U, 0xAAU} } > > typedef struct _EFI_EDID_DISCOVERED_PROTOCOL { > UINT32 SizeOfEdid; > @@ -742,7 +742,7 @@ typedef struct _EFI_EDID_DISCOVERED_PROTOCOL { > * UEFI Specification Version 2.5 Section 11.9 > */ > #define EFI_EDID_ACTIVE_PROTOCOL_GUID \ > - { 0xBD8C1056, 0x9F36, 0x44EC, { 0x92, 0xA8, 0xA6, 0x33, 0x7F, 0x81, 0x79, 0x86} } > + { 0xBD8C1056U, 0x9F36U, 0x44ECU, { 0x92U, 0xA8U, 0xA6U, 0x33U, 0x7FU, 0x81U, 0x79U, 0x86U} } > > typedef struct _EFI_EDID_ACTIVE_PROTOCOL { > UINT32 SizeOfEdid; > @@ -754,7 +754,7 @@ typedef struct _EFI_EDID_ACTIVE_PROTOCOL { > * UEFI Specification Version 2.5 Section 11.9 > */ > #define EFI_EDID_OVERRIDE_PROTOCOL_GUID \ > - { 0x48ECB431, 0xFB72, 0x45C0, { 0xA9, 0x22, 0xF4, 0x58, 0xFE, 0x04, 0x0B, 0xD5} } > + { 0x48ECB431U, 0xFB72U, 0x45C0U, { 0xA9U, 0x22U, 0xF4U, 0x58U, 0xFEU, 0x04U, 0x0BU, 0xD5U} } > > INTERFACE_DECL(_EFI_EDID_OVERRIDE_PROTOCOL); > > -- > 2.41.0 > From xen-devel-bounces@lists.xenproject.org Tue Jun 20 21:01:45 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 20 Jun 2023 21:01:45 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552343.862366 (Exim 4.92) (envelope-from ) id 1qBiTr-0001yq-PA; Tue, 20 Jun 2023 21:01:39 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552343.862366; Tue, 20 Jun 2023 21:01:39 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBiTr-0001yj-Md; Tue, 20 Jun 2023 21:01:39 +0000 Received: by outflank-mailman (input) for mailman id 552343; Tue, 20 Jun 2023 21:01:38 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBiTq-0001yd-UR for xen-devel@lists.xenproject.org; Tue, 20 Jun 2023 21:01:38 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id a4a53aa5-0fad-11ee-8611-37d641c3527e; Tue, 20 Jun 2023 23:01:37 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id CC8C3611C1; Tue, 20 Jun 2023 21:01:35 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id CDEFCC433C8; Tue, 20 Jun 2023 21:01:33 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: a4a53aa5-0fad-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1687294895; bh=dA49CC+Wfw1l8En3pXPyoSWDdjpG+ms5wfa72NIfuRM=; h=Date:From:To:cc:Subject:In-Reply-To:References:From; b=V+Q4mhEgiqQXqZXKtO2ieWMgM+BwELhfkDrjhNANjp9+wbqwvaSeuLBCo0UBn1AlT ZxFj2LxkTzV6fqLo+8CVKjS2OW1QXSjJ5hIeB0evyQ+lsSq9T8KuLd3wlSBrNNMohK tcl2wez90jgTupz7QUzOtcV9ONLdS6c5zp2hs8ix29mnirGxoe/rutc/OXClOP8IT4 tQQ9dkYWMDviWatG8oeQ0TZJddwp+mAetW/xT9vhMzc5mBqsFCAFatX1rJ6aD/damU yJK+SUWh5g9RQ7DSVuAdBHWXU9wnQLJzYLmTPL7T5xHNqLwAovRH3NIClkSrAl5HJJ Xq0NUygBXHPzA== Date: Tue, 20 Jun 2023 14:01:32 -0700 (PDT) From: Stefano Stabellini X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop To: Simone Ballarin cc: xen-devel@lists.xenproject.org, consulting@bugseng.com, Gianluca Luparini , Jan Beulich , Paul Durrant , =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= , Stefano Stabellini , Michal Orzel , Xenia Ragiadakou , Ayan Kumar Subject: Re: [XEN PATCH 08/13] xen/pci: fixed violations of MISRA C:2012 Rule 7.2 In-Reply-To: <3d1a98c8070d4e502402356dd65153dcc813edef.1687250177.git.gianluca.luparini@bugseng.com> Message-ID: References: <3d1a98c8070d4e502402356dd65153dcc813edef.1687250177.git.gianluca.luparini@bugseng.com> User-Agent: Alpine 2.22 (DEB 394 2020-01-19) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII On Tue, 20 Jun 2023, Simone Ballarin wrote: > From: Gianluca Luparini > > The xen sources contains violations of MISRA C:2012 Rule 7.2 whose headline states: > "A "u" or "U" suffix shall be applied to all integer constants that are represented in an unsigned type". > > I propose to use "U" as a suffix to explicitly state when an integer constant is represented in an unsigned type. > For homogeneity, I also added the "U" suffix in some cases that the tool didn't report as violations. > > Signed-off-by: Simone Ballarin Aside from the commit message that needs an update: Reviewed-by: Stefano Stabellini > --- > xen/drivers/passthrough/pci.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/xen/drivers/passthrough/pci.c b/xen/drivers/passthrough/pci.c > index 07d1986d33..95846e84f2 100644 > --- a/xen/drivers/passthrough/pci.c > +++ b/xen/drivers/passthrough/pci.c > @@ -990,8 +990,8 @@ bool_t __init pci_device_detect(u16 seg, u8 bus, u8 dev, u8 func) > > vendor = pci_conf_read32(PCI_SBDF(seg, bus, dev, func), PCI_VENDOR_ID); > /* some broken boards return 0 or ~0 if a slot is empty: */ > - if ( (vendor == 0xffffffff) || (vendor == 0x00000000) || > - (vendor == 0x0000ffff) || (vendor == 0xffff0000) ) > + if ( (vendor == 0xffffffffU) || (vendor == 0x00000000U) || > + (vendor == 0x0000ffffU) || (vendor == 0xffff0000U) ) > return 0; > return 1; > } > -- > 2.41.0 > From xen-devel-bounces@lists.xenproject.org Tue Jun 20 21:11:57 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 20 Jun 2023 21:11:57 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552348.862376 (Exim 4.92) (envelope-from ) id 1qBidc-0003U4-NG; Tue, 20 Jun 2023 21:11:44 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552348.862376; Tue, 20 Jun 2023 21:11:44 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBidc-0003Tx-KS; Tue, 20 Jun 2023 21:11:44 +0000 Received: by outflank-mailman (input) for mailman id 552348; Tue, 20 Jun 2023 21:11:43 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBidb-0003Tr-C6 for xen-devel@lists.xenproject.org; Tue, 20 Jun 2023 21:11:43 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 0cfbd0dd-0faf-11ee-b234-6b7b168915f2; Tue, 20 Jun 2023 23:11:41 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 34291611C1; Tue, 20 Jun 2023 21:11:40 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 4C088C433C8; Tue, 20 Jun 2023 21:11:38 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 0cfbd0dd-0faf-11ee-b234-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1687295499; bh=wWe4D6zWLnxGrZULW8iFrQdJxQFzwxlWnkQwIsuz9XE=; h=Date:From:To:cc:Subject:In-Reply-To:References:From; b=YRiVJpXQaG5fj0EHZiv6qkh+FMY/5yuwwwlTk7V+6HjporLeesvevWt/lc8odEACA /OAIVMvV0P4sfgBHByp54vn/FPsE9pc4dj5JmXwNjYI42UWVN5Xw8RK9HZ/vRceLH7 u4ZUaOqno21e+eYXkneUiazI0RQWdGJ1TN+0Sq4yyGILhueTZ65qrKli3MbbijDD3v yi95k1KQI6lrIQgQI1A1LmChFMI13YqWT9EF3cRfeoosAICEh1qU6uuOG1VKDAXZld vl2moUG3oMH+Euze2yjKV0H4ziusbWPDaKYp0li5WURISvqbw3XtQpuVrWr144P7rU qbaj1MIdWM7cw== Date: Tue, 20 Jun 2023 14:11:36 -0700 (PDT) From: Stefano Stabellini X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop To: Jan Beulich cc: Simone Ballarin , consulting@bugseng.com, Gianluca Luparini , Juergen Gross , Stefano Stabellini , Michal Orzel , Xenia Ragiadakou , Ayan Kumar , xen-devel@lists.xenproject.org Subject: Re: [XEN PATCH 09/13] xen/public: fixed violations of MISRA C:2012 Rule 7.2 In-Reply-To: <97d41c7e-94d1-928c-6619-adc25ffba106@suse.com> Message-ID: References: <2214598125081ccfb324555288bee0340f8b1024.1687250177.git.gianluca.luparini@bugseng.com> <97d41c7e-94d1-928c-6619-adc25ffba106@suse.com> User-Agent: Alpine 2.22 (DEB 394 2020-01-19) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII On Tue, 20 Jun 2023, Jan Beulich wrote: > On 20.06.2023 12:35, Simone Ballarin wrote: > > --- a/xen/include/public/io/ring.h > > +++ b/xen/include/public/io/ring.h > > @@ -36,11 +36,11 @@ > > typedef unsigned int RING_IDX; > > > > /* Round a 32-bit unsigned constant down to the nearest power of two. */ > > -#define __RD2(_x) (((_x) & 0x00000002) ? 0x2 : ((_x) & 0x1)) > > -#define __RD4(_x) (((_x) & 0x0000000c) ? __RD2((_x)>>2)<<2 : __RD2(_x)) > > -#define __RD8(_x) (((_x) & 0x000000f0) ? __RD4((_x)>>4)<<4 : __RD4(_x)) > > -#define __RD16(_x) (((_x) & 0x0000ff00) ? __RD8((_x)>>8)<<8 : __RD8(_x)) > > -#define __RD32(_x) (((_x) & 0xffff0000) ? __RD16((_x)>>16)<<16 : __RD16(_x)) > > +#define __RD2(_x) (((_x) & 0x00000002U) ? 0x2 : ((_x) & 0x1)) > > +#define __RD4(_x) (((_x) & 0x0000000cU) ? __RD2((_x)>>2)<<2 : __RD2(_x)) > > +#define __RD8(_x) (((_x) & 0x000000f0U) ? __RD4((_x)>>4)<<4 : __RD4(_x)) > > +#define __RD16(_x) (((_x) & 0x0000ff00U) ? __RD8((_x)>>8)<<8 : __RD8(_x)) > > +#define __RD32(_x) (((_x) & 0xffff0000U) ? __RD16((_x)>>16)<<16 : __RD16(_x)) > > While I don't mind the suffixes being added, I'm wondering how > the tool would have spotted the single violation here. Iirc we > don't use this header anywhere in the hypervisor. > > If this block is to be touched, I think it wants correcting for > style at the same time: There are numerous blanks missing, and > especially in a public header we shouldn't use underscore- > prefixed names outside of their spec permitted purpose. (This is > about _x; I'm not convinced we can change the various __RD.) > > Furthermore, if I recall correctly Misra also mandates single > evaluation of macro arguments. While I don't immediately see how > to address that without resorting to compiler extensions, I don't > think it makes sense to address one violation here but not he > other (the more when the code in question doesn't affect the > hypervisor build). I am not sure about this one because it is nice to have simple mechanical changes to review where as a reviewer you are basically only checking for one thing only. I think it would be far less effort for reviewers to review additional MISRA fixes separately. I could understand code style fixes, those could go either way in my opinion (although I would probably prefer even those to be done in separate patches if they are non-trivial like the ones here). To help Simone, given that our code style is not super-well-documented, this would be the code style: #define __RD4(x) (((x) & 0x0000000cU) ? __RD2((x) >> 2) << 2 : __RD2(x)) From xen-devel-bounces@lists.xenproject.org Tue Jun 20 21:13:36 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 20 Jun 2023 21:13:36 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552353.862386 (Exim 4.92) (envelope-from ) id 1qBifG-00042I-1w; Tue, 20 Jun 2023 21:13:26 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552353.862386; Tue, 20 Jun 2023 21:13:26 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBifF-00042B-Vg; Tue, 20 Jun 2023 21:13:25 +0000 Received: by outflank-mailman (input) for mailman id 552353; Tue, 20 Jun 2023 21:13:24 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBifE-000422-CS for xen-devel@lists.xenproject.org; Tue, 20 Jun 2023 21:13:24 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 485bc785-0faf-11ee-8611-37d641c3527e; Tue, 20 Jun 2023 23:13:21 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 024D3611C1; Tue, 20 Jun 2023 21:13:20 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 76521C433C8; Tue, 20 Jun 2023 21:13:17 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 485bc785-0faf-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1687295599; bh=ww6/GOgeTVK34sxaFIKmuaW+SVhDjESunh+kJMr21wU=; h=Date:From:To:cc:Subject:In-Reply-To:References:From; b=FBat+Mnux00K4VvHB0wfJkbXIzOH6XLZko3C6eZQa4bWan1XtvdhdM1BE2FedsA8S fln0UrwVXF4S//oG4RjnzhtYVd6F5TDFIB6cWRhpqITL0DT9mctY5cfgpjMzabldgH eiLmZXpbPDUEkbGmnNPMqLVfYF66K/BP2OWTC3T6+VCQiednSZ3rOy3qRlHwhSwlun T2kF8FbgrpuVN78FEJbOqcBeZ2TBi21wYKUv/qYqYhKxHJZH2T2q2OEQ4pTbH2vd4a GBmRNSj9uUius00cc9AmUv+OFQvFP4mvZkkhx446BT1tYorPCxyeHqnqbFS7qs4EcE Ui4VTm4Yf5GEw== Date: Tue, 20 Jun 2023 14:13:16 -0700 (PDT) From: Stefano Stabellini X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop To: Simone Ballarin cc: xen-devel@lists.xenproject.org, consulting@bugseng.com, Gianluca Luparini , Tamas K Lengyel , Alexandru Isaila , Petre Pircalabu , Jan Beulich , Andrew Cooper , =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= , Wei Liu , Stefano Stabellini , Michal Orzel , Xenia Ragiadakou , Ayan Kumar Subject: Re: [XEN PATCH 10/13] xen/x86: fixed violations of MISRA C:2012 Rule 7.2 In-Reply-To: Message-ID: References: User-Agent: Alpine 2.22 (DEB 394 2020-01-19) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII On Tue, 20 Jun 2023, Simone Ballarin wrote: > From: Gianluca Luparini > > The xen sources contains violations of MISRA C:2012 Rule 7.2 whose headline states: > "A "u" or "U" suffix shall be applied to all integer constants that are represented in an unsigned type". > > I propose to use "U" as a suffix to explicitly state when an integer constant is represented in an unsigned type. > For homogeneity, I also added the "U" suffix in some cases that the tool didn't report as violations. > > Signed-off-by: Simone Ballarin Commit message aside: Reviewed-by: Stefano Stabellini You might want also to change the commit title to: xen/x86/monitor: fixed violations of MISRA C:2012 Rule 7.2 to make it unique > --- > xen/arch/x86/monitor.c | 6 +++--- > 1 file changed, 3 insertions(+), 3 deletions(-) > > diff --git a/xen/arch/x86/monitor.c b/xen/arch/x86/monitor.c > index d4857faf8a..dc336c239a 100644 > --- a/xen/arch/x86/monitor.c > +++ b/xen/arch/x86/monitor.c > @@ -48,17 +48,17 @@ static unsigned long *monitor_bitmap_for_msr(const struct domain *d, u32 *msr) > > switch ( *msr ) > { > - case 0 ... 0x1fff: > + case 0 ... 0x1fffU: > BUILD_BUG_ON(sizeof(d->arch.monitor.msr_bitmap->low) * 8 <= 0x1fff); > return d->arch.monitor.msr_bitmap->low; > > - case 0x40000000 ... 0x40001fff: > + case 0x40000000U ... 0x40001fffU: > BUILD_BUG_ON( > sizeof(d->arch.monitor.msr_bitmap->hypervisor) * 8 <= 0x1fff); > *msr &= 0x1fff; > return d->arch.monitor.msr_bitmap->hypervisor; > > - case 0xc0000000 ... 0xc0001fff: > + case 0xc0000000U ... 0xc0001fffU: > BUILD_BUG_ON(sizeof(d->arch.monitor.msr_bitmap->high) * 8 <= 0x1fff); > *msr &= 0x1fff; > return d->arch.monitor.msr_bitmap->high; > -- > 2.41.0 > From xen-devel-bounces@lists.xenproject.org Tue Jun 20 21:14:40 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 20 Jun 2023 21:14:40 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552358.862398 (Exim 4.92) (envelope-from ) id 1qBigH-0004aN-D8; Tue, 20 Jun 2023 21:14:29 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552358.862398; Tue, 20 Jun 2023 21:14:29 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBigH-0004aG-8x; Tue, 20 Jun 2023 21:14:29 +0000 Received: by outflank-mailman (input) for mailman id 552358; Tue, 20 Jun 2023 21:14:28 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBigG-0004a8-9O for xen-devel@lists.xenproject.org; Tue, 20 Jun 2023 21:14:28 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [2604:1380:4641:c500::1]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 6f9e06a3-0faf-11ee-b234-6b7b168915f2; Tue, 20 Jun 2023 23:14:27 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id C80B7611C1; Tue, 20 Jun 2023 21:14:25 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 09344C433C0; Tue, 20 Jun 2023 21:14:23 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 6f9e06a3-0faf-11ee-b234-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1687295665; bh=fz8Nh+wI04kpNjcUhGzFktEpp4DB8Pah3KPosjZ0urc=; h=Date:From:To:cc:Subject:In-Reply-To:References:From; b=XVYvXKlaLSZvvDmprz1Ps/K/G6gIN+hFbxcALQVr8T0D5aXDtFCR2+CFDWWUKAEK3 u7uS50jIwdJ9xyKvB/yo19pky/XA8vsHCtwtndMUIazeRBaNyG8cUHlP1cWT3nyfWR JxDymjJxvIlS6gvIutK+WaOArdlQVgyjqqXannj/ERo2pBIe9FHd5DlkQdrECQREcX 5G3vuqkxOC82vgH1MjzrJefhFgX+LUiCWrXVaDVonRa75omD+dFEaPsT39z+Xl2Qlc 5zR043gCDWtHOS4mXSL6mwEGlWORv+nD0WmtIzcMj9yEkfLC1QaIShssqXUErfTM9k 7yAHOyyouITow== Date: Tue, 20 Jun 2023 14:14:22 -0700 (PDT) From: Stefano Stabellini X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop To: Simone Ballarin cc: xen-devel@lists.xenproject.org, consulting@bugseng.com, Gianluca Luparini , =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= , Stefano Stabellini , Michal Orzel , Xenia Ragiadakou , Ayan Kumar Subject: Re: [XEN PATCH 11/13] xen/vpci: fixed violations of MISRA C:2012 Rule 7.2 In-Reply-To: Message-ID: References: User-Agent: Alpine 2.22 (DEB 394 2020-01-19) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII On Tue, 20 Jun 2023, Simone Ballarin wrote: > From: Gianluca Luparini > > The xen sources contains violations of MISRA C:2012 Rule 7.2 whose headline states: > "A "u" or "U" suffix shall be applied to all integer constants that are represented in an unsigned type". > > I propose to use "U" as a suffix to explicitly state when an integer constant is represented in an unsigned type. > > Signed-off-by: Simone Ballarin commit message aside: Reviewed-by: Stefano Stabellini > --- > xen/drivers/vpci/msi.c | 2 +- > xen/drivers/vpci/msix.c | 2 +- > xen/drivers/vpci/vpci.c | 6 +++--- > 3 files changed, 5 insertions(+), 5 deletions(-) > > diff --git a/xen/drivers/vpci/msi.c b/xen/drivers/vpci/msi.c > index 8f2b59e61a..7908a5dac6 100644 > --- a/xen/drivers/vpci/msi.c > +++ b/xen/drivers/vpci/msi.c > @@ -124,7 +124,7 @@ static void cf_check address_hi_write( > struct vpci_msi *msi = data; > > /* Clear and update high part. */ > - msi->address &= 0xffffffff; > + msi->address &= 0xffffffffU; > msi->address |= (uint64_t)val << 32; > > update_msi(pdev, msi); > diff --git a/xen/drivers/vpci/msix.c b/xen/drivers/vpci/msix.c > index 25bde77586..d440ffcd81 100644 > --- a/xen/drivers/vpci/msix.c > +++ b/xen/drivers/vpci/msix.c > @@ -531,7 +531,7 @@ static int cf_check msix_write( > > case PCI_MSIX_ENTRY_UPPER_ADDR_OFFSET: > entry->updated = true; > - entry->addr &= 0xffffffff; > + entry->addr &= 0xffffffffU; > entry->addr |= (uint64_t)data << 32; > break; > > diff --git a/xen/drivers/vpci/vpci.c b/xen/drivers/vpci/vpci.c > index d73fa76302..3bec9a4153 100644 > --- a/xen/drivers/vpci/vpci.c > +++ b/xen/drivers/vpci/vpci.c > @@ -319,7 +319,7 @@ static void vpci_write_hw(pci_sbdf_t sbdf, unsigned int reg, unsigned int size, > static uint32_t merge_result(uint32_t data, uint32_t new, unsigned int size, > unsigned int offset) > { > - uint32_t mask = 0xffffffff >> (32 - 8 * size); > + uint32_t mask = 0xffffffffU >> (32 - 8 * size); > > return (data & ~(mask << (offset * 8))) | ((new & mask) << (offset * 8)); > } > @@ -402,7 +402,7 @@ uint32_t vpci_read(pci_sbdf_t sbdf, unsigned int reg, unsigned int size) > data = merge_result(data, tmp_data, size - data_offset, data_offset); > } > > - return data & (0xffffffff >> (32 - 8 * size)); > + return data & (0xffffffffU >> (32 - 8 * size)); > } > > /* > @@ -427,7 +427,7 @@ static void vpci_write_helper(const struct pci_dev *pdev, > data = merge_result(val, data, size, offset); > } > > - r->write(pdev, r->offset, data & (0xffffffff >> (32 - 8 * r->size)), > + r->write(pdev, r->offset, data & (0xffffffffU >> (32 - 8 * r->size)), > r->private); > } > > -- > 2.41.0 > From xen-devel-bounces@lists.xenproject.org Tue Jun 20 21:22:00 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 20 Jun 2023 21:22:00 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552363.862407 (Exim 4.92) (envelope-from ) id 1qBinJ-00065v-3f; Tue, 20 Jun 2023 21:21:45 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552363.862407; Tue, 20 Jun 2023 21:21:45 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBinJ-00065n-0w; Tue, 20 Jun 2023 21:21:45 +0000 Received: by outflank-mailman (input) for mailman id 552363; Tue, 20 Jun 2023 21:21:44 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBinI-00065h-7O for xen-devel@lists.xenproject.org; Tue, 20 Jun 2023 21:21:44 +0000 Received: from esa5.hc3370-68.iphmx.com (esa5.hc3370-68.iphmx.com [216.71.155.168]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 72646f65-0fb0-11ee-b234-6b7b168915f2; Tue, 20 Jun 2023 23:21:42 +0200 (CEST) Received: from mail-co1nam11lp2170.outbound.protection.outlook.com (HELO NAM11-CO1-obe.outbound.protection.outlook.com) ([104.47.56.170]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 20 Jun 2023 17:21:33 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by SA2PR03MB5706.namprd03.prod.outlook.com (2603:10b6:806:114::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.37; Tue, 20 Jun 2023 21:21:30 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606%4]) with mapi id 15.20.6500.036; Tue, 20 Jun 2023 21:21:29 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 72646f65-0fb0-11ee-b234-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1687296101; h=message-id:date:from:subject:to:cc:references: in-reply-to:content-transfer-encoding:mime-version; bh=LQOt/QIO85G8PVLtYt4HXIs3NuGOlElyV+fUVinaV8I=; b=fYjdKyPlh7DOEhlW1NhjQBcrszBJudDj9JdoPc9DCfSojCJ6dLTGEJFT cRFfqyhW57KcGh6EL2Qr58kO+7jNrzVAj0prGGSlQxQT07m/HJ5ApK+fI vCAFqFmsXRwNduY4w+DZKGUQI1Qq8gPReq5mk2MZ1f3rXGb6WHBPn2JcL 4=; X-IronPort-RemoteIP: 104.47.56.170 X-IronPort-MID: 112275599 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:wQI5Qaxt9TS4/DeZmxV6t+egxyrEfRIJ4+MujC+fZmUNrF6WrkVTm moYCjiOP6nZYGT1eY8nbNu3/UpUuZeHx4JrGQc4+CAxQypGp/SeCIXCJC8cHc8wwu7rFxs7s ppEOrEsCOhuExcwcz/0auCJQUFUjP3OHfykTrafYEidfCc8IA85kxVvhuUltYBhhNm9Emult Mj75sbSIzdJ4RYtWo4vw/zF8EsHUMja4mtC5QRgP6gT5zcyqlFOZH4hDfDpR5fHatE88t6SH 47r0Ly/92XFyBYhYvvNfmHTKxBirhb6ZGBiu1IOM0SQqkEqSh8ai87XAME0e0ZP4whlqvgqo Dl7WT5cfi9yVkHEsLx1vxC1iEiSN4UekFPMCSDXXcB+UyQq2pYjqhljJBheAGEWxgp4KV1Op MNGchcyV0qCi+Wf7/GXbM81vP12eaEHPKtH0p1h5RfwKK9/BLvkGuDN79Ie2yosjMdTG/qYf 9AedTdkcBXHZVtIJ0sTD5U92uyvgxETcRUB8A7T+fVxvjaVlVMpuFTuGIO9ltiibMNZhEuH4 EnB+Hz0GEoyP92D0zuVtHmrg4cjmAuiAdhIS+Dlp68CbFu7yTIyWThLEleHrqertBaBfv9fL 1JNw397xUQ13AnxJjXnZDWjqXiNpQIVQNtXO/cz8B2K0KfS7AefC2UeTzhOLtchsaceVTEsk 1OEgd7tLThuq6GOD2KQ8K+OqjG/MjRTKnUNDQcYVQYM+cLkpqkphwrTScxuFqG0iND4AzD2z HaBqy1Wr7cZgNMP1q671UvamD/qrZ/MJiY3+wHWU2SN/g5/Iom/aOSA8kPH5PxNKIKYSFipv 3UencWaqucUAvmliyilUOgLWraz6J643Cb0hFduG9wq8G2r8nv6JIRIumghfAFuL9oOfiLvb AnLowRN6ZRPPXysK6hqf4a2DMdsxq/lfTj4as3pghN1SsAZXGe6EOtGOiZ8A0iFfJAQrJwC IronPort-HdrOrdr: A9a23:K4HRgKtUKo5f1h/CUS+AZs1u7skDTtV00zEX/kB9WHVpm5qj5q STdZMgtSMc6QxxZJhOo7i90cW7Kk80lqQa3WByB9uftVLdyQ6VxehZhLcKpQeLJ8SUzIFgPM lbHpSXp7fLfD9HZWqR2njaLz6AquP3kpyVuQ== X-Talos-CUID: =?us-ascii?q?9a23=3AxuRfomlFvJPev3TmKaLJQ3M/NDvXOUHdnUiOeWi?= =?us-ascii?q?HMDxoRLq8Zhy83oU9qfM7zg=3D=3D?= X-Talos-MUID: =?us-ascii?q?9a23=3A4FOqyAxyo0zV33ZX6B5Z410Va6iaqKvwKREozNI?= =?us-ascii?q?Kh8baJxIoBBKwjDCpG7Zyfw=3D=3D?= X-IronPort-AV: E=Sophos;i="6.00,258,1681185600"; d="scan'208";a="112275599" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=AP1yhr3GUzCZ4ZjFIdUhpOSvyrE1jeLgSkc7/JAXpJ9hluDzBvoLJ2jyJBBcE6wQjClif5G9wKEtl9RNb8dWavbBWZjUjGGBZLMVCzG8WBUHtoIMxz/zg2P2QEzVqW64rd4hY0PMPmGqo/ROOvN355ZWXfsDDISzNN2qama1l7SePr8khr00vpLTgLK8+wDJhhqzCMPSKOMH1LgD9OODX1Ah/vFITUkH04WlsEfemOKmERVdHxDpCq3ww+Lvgz5OR5POgHX01UJf8zZJEYwrIBhlgdP/+EJ2cWkY8mjOh/rAWQ87JaOUeujROjOvtKgGgm/gilB81fB07y3VutVNOQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=LQOt/QIO85G8PVLtYt4HXIs3NuGOlElyV+fUVinaV8I=; b=FyO7km8RoVn9yh18dM7ArSHYqbn+PiFaw9fNIpWyCJp3FmBZDNMDVHzeneZxQHRjw4K8Twi0BzIr5vtZh1SqjOLC0/q9Z+2GBWib6IhKDQnwGf/eJEyu5alV2ZmhaJ08vDqo4I36UN8dtlxCT6P7lk0N/1ppeVTboFd1ZOqwYLRTQ7QUEiGOnAQAauCDrTWiaGR56grwPE+yEILWkrQp9xJDZ6T9IllXgDpFA01WPE7tupDNn3kB6CY2AbMN1PdPpynmbNPxAmJ5SGaRlUY0xQ7PuQ19qQq0HfUhecKWW0kqwxSNiAlw/XfdUcthVzTGIsC6EsqxqGmvEoitRyd+Nw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=LQOt/QIO85G8PVLtYt4HXIs3NuGOlElyV+fUVinaV8I=; b=Tdm9nj5yx2ahCzfB2v3a7JZOiqPngn2eui8BsIVYNsGKsSUZneAhWwI7NorH23w6vVOL40kyP9qPXYF6Bs7kx2unmvh+zQdvdUhoOyETs9YRxo0IlFe7H6xMmBp5P6SW0eM9k+3HbJBLHvX6xNwaIn3eIBBr/nuva5amdqLeH5Y= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: <8505b097-3191-ec7f-57f9-59cd49367981@citrix.com> Date: Tue, 20 Jun 2023 22:21:22 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 From: Andrew Cooper Subject: Re: [PATCH v5 1/3] xen: Add files needed for minimal ppc64le build Content-Language: en-GB To: Shawn Anastasio , xen-devel@lists.xenproject.org Cc: tpearson@raptorengineering.com, George Dunlap , Jan Beulich , Julien Grall , Stefano Stabellini , Wei Liu References: In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO2P265CA0440.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:e::20) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|SA2PR03MB5706:EE_ X-MS-Office365-Filtering-Correlation-Id: 848f7986-f8e9-4ae4-c71f-08db71d44fc2 X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: qeeZ4MsxCrwh724vhpr2A+Qbixahn0Mr1bwpgPsXnXAvdkMBLZrGh5mPdkwEMjixT3FqBpz93dVH/ewnttu7qprah5Rr2/I1iGJOMMixtmsGXT2xOVSyuJ4eeVW7We95T4Fikt9bHd7gbj1cdSuHktDSfUBjJg9hdX6sUITizNpKuyYnzsKALkdjzG3DqmBfeGJ7usRr2L3J5xyH0uJGNuizambMbH5v+UVlEUPQRh5Ob8nkW3XYSQMv0+kf7d/Cu7YL8ZhY7TQZY5bRXwNTU/MoLdWi2dyffBpuxvp14igfIHaVw/MT6gdcGpC/f/HEqTX4vW4rTxjQZMMXD26Hxmk4UAOwdBJ4BwylBqOXAKHLH84p6LXar0Mf6rrfyOdksZJ3x2ebYPZwWjwx9JCvTWrb9xl2j94S1ygD9jHSqkRgZlxgtIAS8IIn1fIfKo8RMVx5frAmOmLrK9Di1ETt7+Kn9SwF4voXLbrqfPcFdlk3k39Dj4ZfQSY/IJhkGnIZ7GyENe6vSv5nTvXOY4r4MaBBZ604NLrDAGQluvs69xOvjDM5RI95pkSJW74hgzFUKD6ibNRKdxAQEd7Aa6q1HUWXd2SYmKbmwFy6v+AgtGkocCrSjp2iZGL03jZy7sK8jOqdiFuBjM9MG+Aq2NYWcw== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(376002)(396003)(366004)(136003)(346002)(39860400002)(451199021)(2906002)(316002)(4744005)(8936002)(5660300002)(4326008)(41300700001)(31686004)(8676002)(54906003)(66476007)(66556008)(66946007)(478600001)(6666004)(6486002)(82960400001)(6512007)(6506007)(36756003)(186003)(26005)(53546011)(2616005)(38100700002)(31696002)(86362001)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?VVZIRUpoTEVFR0hDNWh3Wm05aVV5K2JTNDhtakZuUzE4a0kydXdqdUtMbGxx?= =?utf-8?B?RllISEQ1dFpLTzFxR0dGNHF3YlBKL1N6NzJkNWVoMFFpQWhEYThuaGNXRk1Z?= =?utf-8?B?cWNtU0tVN044MUJ6NkVoOWxXZFlyNzA5NE8xQlR5Y1JrNnlFd25pclE2Z3Ey?= =?utf-8?B?azlsRit6UzJ6dGl0YWx6YzRNS0ptQW1ZZkEwQThMMXQ5akFiNk84cWgrMk9Y?= =?utf-8?B?bWJOWUkzNVQzb3Q0c2RWUDY5VXo5WmRaZm52c3RGVStUNVFnaGVtdkcvU3h5?= =?utf-8?B?cVJiYXVlZVo5bjRxRDVqNW1xZGJxUGQ4aE9wRjFQTGc3b0ZNR2ZRMklCR3po?= =?utf-8?B?UHpocjFLc1I5NlBwdjhKWWo2Z2lHbDM1eGlMYVlGdm1WVUxFbGhBdjR4R0Zr?= =?utf-8?B?TCtKVkx1akFvY2wzblpSWFhnNTFpY1ozVUt0U2FibldicDNiM2I2ZnhYTFRX?= =?utf-8?B?Vk9BVjdNRmlWaDRxU3NUQ1o3TjJUTjcxVUtQVWFVZ0VaZFlzT09LQ2YyRGRH?= =?utf-8?B?Szh6Y1NWQ0FScXFWL2tkMXZyQ2U0QUlKQjc3UkRhck52RjcwZ1VHaEtheUpJ?= =?utf-8?B?MG9ueDNBR0creHRnWTVuMy84eWc1V3ZPaUtxZTMwcklxT1FCSVEwTDFnWFFh?= =?utf-8?B?WHZ2RXg1eVA5U1RwRitoazJEZTROL0FyaXlTQzg5K3FnM2Q4cWR1VVFMZXFw?= =?utf-8?B?NE1XeTExeStMWGttWUVXd0JqWURSejhFVXBIWm4zVTdLcGZwaGhIMzFSQS9O?= =?utf-8?B?UEJUWEdGUytQM1NlVG9DdkwxQmIwcVdoRTh6YjlxZDB1QjhSV0FGUUxMV2ZP?= =?utf-8?B?ZzIxbjJ2Z0gxSkFQYytld2ZSdVA3RVhKQ00wMmZDdGtvdTJBcDhuN1IvU05N?= =?utf-8?B?SDEzUDBYREZ4WGRQNFlINWR3TTJLMno3TXdFb21zSmpGSjQ4UEhPMDBHcGVR?= =?utf-8?B?cEdXa3VrNlFhQmt4SWkxaHc0LzRhZjZ5YU5nNy9JcG5HZlNPUEdaOHhJTi9T?= =?utf-8?B?Q2xwdmFIMDN1RE5ubHdraHNNVG52SzUyZVd5WUIxV3cvK2lpbjdaa3AvYTJp?= =?utf-8?B?Y3h6SWN4M241L2pidm5OSCttNVM1QklBeElkdmRxU0VCWWVJcU9jaVRJU08x?= =?utf-8?B?S3pQYmROWEczc0JVNTBEdmljUS9WVmNjTlg3NlA1enpvMWNTV3VnK1U2alVq?= =?utf-8?B?MXU1bkkwV3h0d2RNQTZCMTI3UjNBZXlmc285dno4RjBVQlZ3Qkltdm5zOFF4?= =?utf-8?B?YXIyS1VQWllEaENCa2J5Mlhud2hxMzBWZXpOSmZZUm4yV3hEci82ZUdLbGNB?= =?utf-8?B?blNGNUhsOVROYkFVc2wwOW5ZSWNwMDUwYkk1alYyZkdGY1oxSnFzODdsdVJa?= =?utf-8?B?N0laSHgwdDhJRDFiMlpwTC9LRkNZZHBkRkZhVkUwSktMa2sxdXVESjZyYitD?= =?utf-8?B?bmorZ0pUSkRPcEwyK2hRLzZmV1Ixa0lXa1hFTlZEWENMQWZVcVQ5WU96YjF6?= =?utf-8?B?cmZDNU5nS3BFb1QzbFNzVE9MYUVRNFYrSTFnaDQ2b3B5Wi9XR2lGUmdSSFpL?= =?utf-8?B?VkZzOVNyWkRFK1FGWTJmeCtPRnltMG95QUVQWUtOWVRHUUtQWlA5aVQ2ZWpn?= =?utf-8?B?TXd4QnpFUDRFSWRFc2xVRmZGS1RQYUpDK2syZkx1czNiL0svUFBCSVZxamRK?= =?utf-8?B?WFpmMk50VUV5WWcyNE0xOUlrYWVEb1FoNENXenVNTjQxaW9MV05rVXNndUQ2?= =?utf-8?B?eXMxQm9wd28rVkhHbzZEYzJEU1kzVXpJZVE0M1NXck9HdXBnUDNTUVBsN3Zl?= =?utf-8?B?bjZJcEVSUnQxR3kxak8xVVQ1SlV5VmVZWTN4UHdFTk04bnVRU2xaTUZTYUxF?= =?utf-8?B?YS96VDBZb1VBblFlNFZnRlVIZlpuWERVL2UzbGFxczY5UmRiVDBjaXFnRWh1?= =?utf-8?B?MEtzTGd2NytWN3BSNlhzMnVxY1VnYlpGc245b2FNVG5yNStCdys3RjZLZ0tv?= =?utf-8?B?UUcxYysxRkxWcVpXRWxTcVpPYVpRTjlxNTJ0YmhYVTFSbEZmODZFK0lFWGlC?= =?utf-8?B?cFdVTk5BOWhoZDZPZnd2RThBaFZHWkMvWGtvMHZ6dXhQcHNaSEdCeUZ3S01r?= =?utf-8?B?MVFVdHA3OU5YVjVtcUttOUVGNnAwOVltZ2VnOHRsTlFFaXMxSlo3TU12d1BL?= =?utf-8?B?anc9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: kBFLwR2dSJ0mGhDttSfT/rB5kDtl9/l5lO+uP4gkWSo+XOyoYQt1ibLr1PdY+cOgtiTp1VAdzSxjRXP/3c0hVkSNEymTKItqcK47625Yd4siksPSWyzIW9TAemYqaz98V2SWwF7jDNpCU7EzxB6JmWwvE4aIgCsCP4I8Ed8j8S/QFQTYLGBFCwVuu/JzoMsHxRQZmUGunRVbsgkfgnRIRJDfdy5Hkj57XTcqzlzwCqM8s6fHHEH4sjhfCZmmMm26xbRO8Y3vddLDviS99ukjo/9QB8ee3OwDa4H3lG232AALXxzOOR9YRjFRz8gvJ7pu1FRzIJYOIKsPicMJqD4Ku5qKkVtf1W6FeZBCxXFyfHCoJai+ZmaYp05+eEzehvBV58VLcA8ZL4trxw7oYgGoUbBRwvGplyq1ZztufxXamH4mLuWp/NTtcdU8nOvwEj43Q482Da95IqLg9GORDOC6s9ANtIdy4aQAILZoUToSDt6Bi3xKKD1Tz4f2p/jOGuW776pcWKaufC1nTzO1lO5OuUsOr+JicjiQe1ftT68nhw7BU1yU/mbK5R5Ad8CP1Xm+F9tziIj+hqQmO8Z4H3SSx9jnN9bH2xCFDMY83tP9jZRpH83C3Az7SrJs6ccPqnxqutOM/q2QMPpx2Hm2kl5g7ylFrM94SmdYbbbTQuS3veiKxTO24py0+dPoc0VQlSYaWFkotucT9poU+0/VdC8D+oqSd5jfZh/9AnBGBGFFCz7p+xdtQYOskkns8bVPQU13HIao5N3Mz8ikZ0iAXCd/4UCxTZIEF/TkTm8zOdZyOaxHCzYrnzdLCcAzWzUFWDJifXFxUWtC+v9XFAYYKfYfWwtGPxEP9dN13HO2WY64ovqo+hRkUlZ+lSFl3Sz9B98Gy9LDBLO7k5drGwHYMGruEA3ZNYRwsv6TN5JJYQpW6uM= X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 848f7986-f8e9-4ae4-c71f-08db71d44fc2 X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Jun 2023 21:21:29.4068 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: Ozm+Mjeit1804KpilTHvMG/v9JVDChg0NxsukKL1bDgFuOS+26H/OwyRu4dTP0E33HlBbOSud65pfiaGI0BQpdesAMXyCFRjV1SIhLMpxSs= X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA2PR03MB5706 On 20/06/2023 7:12 pm, Shawn Anastasio wrote: > diff --git a/xen/arch/ppc/xen.lds.S b/xen/arch/ppc/xen.lds.S > new file mode 100644 > index 0000000000..f75d9be4ed > --- /dev/null > +++ b/xen/arch/ppc/xen.lds.S > > +/** > + * OF's base load address is 0x400000 (XEN_VIRT_START). > + * By defining sections this way, we can keep our virtual address base at 0x400000 > + * while keeping the physical base at 0x0. > + * > + * Without this, OF incorrectly loads .text at 0x400000 + 0x400000 = 0x800000. > + * Taken from x86/xen.lds.S > + */ Sorry, one last thing. What's OF?  Searching around suggests it might be OpenFirmware, but I'm not certain if that's applicable in this context either? ~Andrew From xen-devel-bounces@lists.xenproject.org Tue Jun 20 21:23:41 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 20 Jun 2023 21:23:41 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552370.862417 (Exim 4.92) (envelope-from ) id 1qBip9-0006hZ-Js; Tue, 20 Jun 2023 21:23:39 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552370.862417; Tue, 20 Jun 2023 21:23:39 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBip9-0006hS-Fy; Tue, 20 Jun 2023 21:23:39 +0000 Received: by outflank-mailman (input) for mailman id 552370; Tue, 20 Jun 2023 21:23:38 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBip8-0006hK-71 for xen-devel@lists.xenproject.org; Tue, 20 Jun 2023 21:23:38 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id b68e748c-0fb0-11ee-b234-6b7b168915f2; Tue, 20 Jun 2023 23:23:35 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 0E5DD6118E; Tue, 20 Jun 2023 21:23:34 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 9BF25C433C0; Tue, 20 Jun 2023 21:23:31 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: b68e748c-0fb0-11ee-b234-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1687296213; bh=wlM/fi6RbsqYuhYiyNjhBO39wI/S8oaBEF4dwzZ1TEQ=; h=Date:From:To:cc:Subject:In-Reply-To:References:From; b=YYpUb8l/OfZtegsn6v9CZudVxfvoY2QigSFMNvI3q3qOZ9gtopPhgU7iwelHYZgfu VjX8cfFT+vbvW0KfYnxj+YYv7/xM/4yh6n6O4hieWOJeN8A4zQ9b9rFcxa3ofyrKni a3KWa/r/VhomPqZzR8RqXC3btdNeCO5doOLLV3xDTi8w9CaJZoBW/in8yrGoLny3/S FABLrz9LhZgcNkBL/Df3kPCNTLnRa5OzuE/+EJTfsuewVzB8fwDH7a5biKHUhrXdis +SPjLrz5T0CFC7ZBadfS/XqMwIuUl/VjcroPKNlbUEn6QO+CpCg9UMOu81sZEYXGoG xv/GLi3ZoBGiQ== Date: Tue, 20 Jun 2023 14:23:30 -0700 (PDT) From: Stefano Stabellini X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop To: Simone Ballarin cc: xen-devel@lists.xenproject.org, consulting@bugseng.com, Gianluca Luparini , Jan Beulich , Andrew Cooper , =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= , Wei Liu , Paul Durrant , Stefano Stabellini , Michal Orzel , Xenia Ragiadakou , Ayan Kumar Subject: Re: [XEN PATCH 12/13] xen/x86: fixed violations of MISRA C:2012 Rule 7.2 In-Reply-To: <27690fdf9658339f12061f1bd171ebe5f969eb1b.1687250177.git.gianluca.luparini@bugseng.com> Message-ID: References: <27690fdf9658339f12061f1bd171ebe5f969eb1b.1687250177.git.gianluca.luparini@bugseng.com> User-Agent: Alpine 2.22 (DEB 394 2020-01-19) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII On Tue, 20 Jun 2023, Simone Ballarin wrote: > From: Gianluca Luparini > > The xen sources contains violations of MISRA C:2012 Rule 7.2 whose headline states: > "A "u" or "U" suffix shall be applied to all integer constants that are represented in an unsigned type". > > I propose to use "U" as a suffix to explicitly state when an integer constant is represented in an unsigned type. > For homogeneity, I also added the "U" suffix in some cases that the tool didn't report as violations. > > Signed-off-by: Simone Ballarin > --- > xen/arch/x86/apic.c | 2 +- > xen/arch/x86/cpu-policy.c | 8 +- > xen/arch/x86/cpu/mcheck/mce-apei.c | 8 +- > xen/arch/x86/cpuid.c | 8 +- > xen/arch/x86/efi/efi-boot.h | 6 +- > xen/arch/x86/hvm/hypercall.c | 2 +- > xen/arch/x86/hvm/irq.c | 2 +- > xen/arch/x86/hvm/pmtimer.c | 4 +- > xen/arch/x86/hvm/stdvga.c | 66 +++--- > xen/arch/x86/hvm/viridian/viridian.c | 2 +- > xen/arch/x86/hvm/vlapic.c | 6 +- > xen/arch/x86/include/asm/apicdef.h | 2 +- > xen/arch/x86/include/asm/config.h | 2 +- > xen/arch/x86/include/asm/guest/hyperv-tlfs.h | 28 +-- > xen/arch/x86/include/asm/hpet.h | 2 +- > xen/arch/x86/include/asm/hvm/trace.h | 4 +- > xen/arch/x86/include/asm/hvm/vioapic.h | 2 +- > xen/arch/x86/include/asm/msi.h | 2 +- > xen/arch/x86/include/asm/msr-index.h | 204 +++++++++---------- > xen/arch/x86/include/asm/pci.h | 8 +- > xen/arch/x86/include/asm/x86-defns.h | 24 +-- > xen/arch/x86/percpu.c | 2 +- > xen/arch/x86/psr.c | 2 +- > xen/arch/x86/spec_ctrl.c | 8 +- > xen/arch/x86/x86_64/acpi_mmcfg.c | 2 +- > xen/arch/x86/x86_64/pci.c | 2 +- > xen/arch/x86/x86_emulate/x86_emulate.h | 2 +- > xen/include/public/arch-x86/xen-x86_64.h | 8 +- > xen/lib/x86/cpuid.c | 8 +- > xen/lib/x86/policy.c | 2 +- > 30 files changed, 214 insertions(+), 214 deletions(-) > > diff --git a/xen/arch/x86/apic.c b/xen/arch/x86/apic.c > index f71474d47d..03c5c0f2ee 100644 > --- a/xen/arch/x86/apic.c > +++ b/xen/arch/x86/apic.c > @@ -1211,7 +1211,7 @@ static void __init calibrate_APIC_clock(void) > * Setup the APIC counter to maximum. There is no way the lapic > * can underflow in the 100ms detection time frame. > */ > - __setup_APIC_LVTT(0xffffffff); > + __setup_APIC_LVTT(0xffffffffU); > > bus_freq = calibrate_apic_timer(); > if ( !bus_freq ) > diff --git a/xen/arch/x86/cpu-policy.c b/xen/arch/x86/cpu-policy.c > index f40eeb8be8..5516249cb6 100644 > --- a/xen/arch/x86/cpu-policy.c > +++ b/xen/arch/x86/cpu-policy.c > @@ -321,7 +321,7 @@ static void recalculate_misc(struct cpu_policy *p) > p->extd.vendor_edx = p->basic.vendor_edx; > > p->extd.raw_fms = p->basic.raw_fms; > - p->extd.raw[0x1].b &= 0xff00ffff; > + p->extd.raw[0x1].b &= 0xff00ffffU; > p->extd.e1d |= p->basic._1d & CPUID_COMMON_1D_FEATURES; > > p->extd.raw[0x8].a &= 0x0000ffff; /* GuestMaxPhysAddr hidden. */ > @@ -378,9 +378,9 @@ static void __init calculate_host_policy(void) > * this information. > */ > if ( cpu_has_lfence_dispatch ) > - max_extd_leaf = max(max_extd_leaf, 0x80000021); > + max_extd_leaf = max(max_extd_leaf, 0x80000021U); > > - p->extd.max_leaf = 0x80000000 | min_t(uint32_t, max_extd_leaf & 0xffff, > + p->extd.max_leaf = 0x80000000U | min_t(uint32_t, max_extd_leaf & 0xffffU, > ARRAY_SIZE(p->extd.raw) - 1); > > x86_cpu_featureset_to_policy(boot_cpu_data.x86_capability, p); > @@ -768,7 +768,7 @@ void recalculate_cpuid_policy(struct domain *d) > > p->basic.max_leaf = min(p->basic.max_leaf, max->basic.max_leaf); > p->feat.max_subleaf = min(p->feat.max_subleaf, max->feat.max_subleaf); > - p->extd.max_leaf = 0x80000000 | min(p->extd.max_leaf & 0xffff, > + p->extd.max_leaf = 0x80000000U | min(p->extd.max_leaf & 0xffff, > ((p->x86_vendor & (X86_VENDOR_AMD | > X86_VENDOR_HYGON)) > ? CPUID_GUEST_NR_EXTD_AMD > diff --git a/xen/arch/x86/cpu/mcheck/mce-apei.c b/xen/arch/x86/cpu/mcheck/mce-apei.c > index 53b6735896..1aa213b321 100644 > --- a/xen/arch/x86/cpu/mcheck/mce-apei.c > +++ b/xen/arch/x86/cpu/mcheck/mce-apei.c > @@ -37,11 +37,11 @@ > #include "mce.h" > > #define CPER_CREATOR_MCE \ > - UUID_LE(0x75a574e3, 0x5052, 0x4b29, 0x8a, 0x8e, 0xbe, 0x2c, \ > - 0x64, 0x90, 0xb8, 0x9d) > + UUID_LE(0x75a574e3U, 0x5052U, 0x4b29U, 0x8aU, 0x8eU, 0xbeU, 0x2cU, \ > + 0x64U, 0x90U, 0xb8U, 0x9dU) > #define CPER_SECTION_TYPE_MCE \ > - UUID_LE(0xfe08ffbe, 0x95e4, 0x4be7, 0xbc, 0x73, 0x40, 0x96, \ > - 0x04, 0x4a, 0x38, 0xfc) > + UUID_LE(0xfe08ffbeU, 0x95e4U, 0x4be7U, 0xbcU, 0x73U, 0x40U, 0x96U, \ > + 0x04U, 0x4aU, 0x38U, 0xfcU) > > /* > * CPER specification (in UEFI specification 2.3 appendix N) requires > diff --git a/xen/arch/x86/cpuid.c b/xen/arch/x86/cpuid.c > index 455a09b2dd..7290a979c6 100644 > --- a/xen/arch/x86/cpuid.c > +++ b/xen/arch/x86/cpuid.c > @@ -93,7 +93,7 @@ void guest_cpuid(const struct vcpu *v, uint32_t leaf, > } > break; > > - case 0x40000000 ... 0x400000ff: > + case 0x40000000U ... 0x400000ffU: > if ( is_viridian_domain(d) ) > return cpuid_viridian_leaves(v, leaf, subleaf, res); > > @@ -103,10 +103,10 @@ void guest_cpuid(const struct vcpu *v, uint32_t leaf, > * Intel reserve up until 0x4fffffff for hypervisor use. AMD reserve > * only until 0x400000ff, but we already use double that. > */ > - case 0x40000100 ... 0x400001ff: > + case 0x40000100U ... 0x400001ffU: > return cpuid_hypervisor_leaves(v, leaf, subleaf, res); > > - case 0x80000000 ... 0x80000000 + CPUID_GUEST_NR_EXTD - 1: > + case 0x80000000U ... 0x80000000U + CPUID_GUEST_NR_EXTD - 1: > ASSERT((p->extd.max_leaf & 0xffff) < ARRAY_SIZE(p->extd.raw)); > if ( (leaf & 0xffff) > min_t(uint32_t, p->extd.max_leaf & 0xffff, > ARRAY_SIZE(p->extd.raw) - 1) ) > @@ -352,7 +352,7 @@ void guest_cpuid(const struct vcpu *v, uint32_t leaf, > } > break; > > - case 0x80000001: > + case 0x80000001U: > /* SYSCALL is hidden outside of long mode on Intel. */ > if ( p->x86_vendor == X86_VENDOR_INTEL && > is_hvm_domain(d) && !hvm_long_mode_active(v) ) > diff --git a/xen/arch/x86/efi/efi-boot.h b/xen/arch/x86/efi/efi-boot.h > index c94e53d139..9fe7b06082 100644 > --- a/xen/arch/x86/efi/efi-boot.h > +++ b/xen/arch/x86/efi/efi-boot.h > @@ -740,16 +740,16 @@ static void __init efi_arch_handle_module(const struct file *file, > > static void __init efi_arch_cpu(void) > { > - uint32_t eax = cpuid_eax(0x80000000); > + uint32_t eax = cpuid_eax(0x80000000U); > uint32_t *caps = boot_cpu_data.x86_capability; > > boot_tsc_stamp = rdtsc(); > > caps[FEATURESET_1c] = cpuid_ecx(1); > > - if ( (eax >> 16) == 0x8000 && eax > 0x80000000 ) > + if ( (eax >> 16) == 0x8000 && eax > 0x80000000U ) > { > - caps[FEATURESET_e1d] = cpuid_edx(0x80000001); > + caps[FEATURESET_e1d] = cpuid_edx(0x80000001U); > > if ( cpu_has_nx ) > trampoline_efer |= EFER_NXE; > diff --git a/xen/arch/x86/hvm/hypercall.c b/xen/arch/x86/hvm/hypercall.c > index 20d266ffd5..eeb73e1aa5 100644 > --- a/xen/arch/x86/hvm/hypercall.c > +++ b/xen/arch/x86/hvm/hypercall.c > @@ -129,7 +129,7 @@ int hvm_hypercall(struct cpu_user_regs *regs) > break; > } > > - if ( (eax & 0x80000000) && is_viridian_domain(currd) ) > + if ( (eax & 0x80000000U) && is_viridian_domain(currd) ) > { > int ret; > > diff --git a/xen/arch/x86/hvm/irq.c b/xen/arch/x86/hvm/irq.c > index 1258371eb0..5c00127cfc 100644 > --- a/xen/arch/x86/hvm/irq.c > +++ b/xen/arch/x86/hvm/irq.c > @@ -383,7 +383,7 @@ int hvm_inject_msi(struct domain *d, uint64_t addr, uint32_t data) > > if ( !vector ) > { > - int pirq = ((addr >> 32) & 0xffffff00) | dest; > + int pirq = ((addr >> 32) & 0xffffff00U) | dest; > > if ( pirq > 0 ) > { > diff --git a/xen/arch/x86/hvm/pmtimer.c b/xen/arch/x86/hvm/pmtimer.c > index 2145c531b6..eb4a455763 100644 > --- a/xen/arch/x86/hvm/pmtimer.c > +++ b/xen/arch/x86/hvm/pmtimer.c > @@ -40,8 +40,8 @@ > #define SCI_IRQ 9 > > /* We provide a 32-bit counter (must match the TMR_VAL_EXT bit in the FADT) */ > -#define TMR_VAL_MASK (0xffffffff) > -#define TMR_VAL_MSB (0x80000000) > +#define TMR_VAL_MASK (0xffffffffU) > +#define TMR_VAL_MSB (0x80000000U) > > /* Dispatch SCIs based on the PM1a_STS and PM1a_EN registers */ > static void pmt_update_sci(PMTState *s) > diff --git a/xen/arch/x86/hvm/stdvga.c b/xen/arch/x86/hvm/stdvga.c > index 798a9a0549..52efa8348a 100644 > --- a/xen/arch/x86/hvm/stdvga.c > +++ b/xen/arch/x86/hvm/stdvga.c > @@ -39,46 +39,46 @@ > > #define PAT(x) (x) > static const uint32_t mask16[16] = { > - PAT(0x00000000), > - PAT(0x000000ff), > - PAT(0x0000ff00), > - PAT(0x0000ffff), > - PAT(0x00ff0000), > - PAT(0x00ff00ff), > - PAT(0x00ffff00), > - PAT(0x00ffffff), > - PAT(0xff000000), > - PAT(0xff0000ff), > - PAT(0xff00ff00), > - PAT(0xff00ffff), > - PAT(0xffff0000), > - PAT(0xffff00ff), > - PAT(0xffffff00), > - PAT(0xffffffff), > + PAT(0x00000000U), > + PAT(0x000000ffU), > + PAT(0x0000ff00U), > + PAT(0x0000ffffU), > + PAT(0x00ff0000U), > + PAT(0x00ff00ffU), > + PAT(0x00ffff00U), > + PAT(0x00ffffffU), > + PAT(0xff000000U), > + PAT(0xff0000ffU), > + PAT(0xff00ff00U), > + PAT(0xff00ffffU), > + PAT(0xffff0000U), > + PAT(0xffff00ffU), > + PAT(0xffffff00U), > + PAT(0xffffffffU), > }; > > /* force some bits to zero */ > static const uint8_t sr_mask[8] = { > - (uint8_t)~0xfc, > - (uint8_t)~0xc2, > - (uint8_t)~0xf0, > - (uint8_t)~0xc0, > - (uint8_t)~0xf1, > - (uint8_t)~0xff, > - (uint8_t)~0xff, > - (uint8_t)~0x00, > + (uint8_t)~0xfcU, > + (uint8_t)~0xc2U, > + (uint8_t)~0xf0U, > + (uint8_t)~0xc0U, > + (uint8_t)~0xf1U, > + (uint8_t)~0xffU, > + (uint8_t)~0xffU, > + (uint8_t)~0x00U, > }; > > static const uint8_t gr_mask[9] = { > - (uint8_t)~0xf0, /* 0x00 */ > - (uint8_t)~0xf0, /* 0x01 */ > - (uint8_t)~0xf0, /* 0x02 */ > - (uint8_t)~0xe0, /* 0x03 */ > - (uint8_t)~0xfc, /* 0x04 */ > - (uint8_t)~0x84, /* 0x05 */ > - (uint8_t)~0xf0, /* 0x06 */ > - (uint8_t)~0xf0, /* 0x07 */ > - (uint8_t)~0x00, /* 0x08 */ > + (uint8_t)~0xf0U, /* 0x00 */ > + (uint8_t)~0xf0U, /* 0x01 */ > + (uint8_t)~0xf0U, /* 0x02 */ > + (uint8_t)~0xe0U, /* 0x03 */ > + (uint8_t)~0xfcU, /* 0x04 */ > + (uint8_t)~0x84U, /* 0x05 */ > + (uint8_t)~0xf0U, /* 0x06 */ > + (uint8_t)~0xf0U, /* 0x07 */ > + (uint8_t)~0x00U, /* 0x08 */ > }; > > static uint8_t *vram_getb(struct hvm_hw_stdvga *s, unsigned int a) > diff --git a/xen/arch/x86/hvm/viridian/viridian.c b/xen/arch/x86/hvm/viridian/viridian.c > index 7405c117bc..61171e3363 100644 > --- a/xen/arch/x86/hvm/viridian/viridian.c > +++ b/xen/arch/x86/hvm/viridian/viridian.c > @@ -291,7 +291,7 @@ static void enable_hypercall_page(struct domain *d) > * calling convention) to differentiate Xen and Viridian hypercalls. > */ > *(u8 *)(p + 0) = 0x0d; /* orl $0x80000000, %eax */ > - *(u32 *)(p + 1) = 0x80000000; > + *(u32 *)(p + 1) = 0x80000000U; > *(u8 *)(p + 5) = 0x0f; /* vmcall/vmmcall */ > *(u8 *)(p + 6) = 0x01; > *(u8 *)(p + 7) = (cpu_has_vmx ? 0xc1 : 0xd9); > diff --git a/xen/arch/x86/hvm/vlapic.c b/xen/arch/x86/hvm/vlapic.c > index 785d5d88d9..04009007dd 100644 > --- a/xen/arch/x86/hvm/vlapic.c > +++ b/xen/arch/x86/hvm/vlapic.c > @@ -237,7 +237,7 @@ bool_t vlapic_match_dest( > case APIC_DEST_NOSHORT: > if ( dest_mode ) > return vlapic_match_logical_addr(target, dest); > - return (dest == _VLAPIC_ID(target, 0xffffffff)) || > + return (dest == _VLAPIC_ID(target, 0xffffffffU)) || > (dest == VLAPIC_ID(target)); > > case APIC_DEST_SELF: > @@ -467,7 +467,7 @@ static bool_t is_multicast_dest(struct vlapic *vlapic, unsigned int short_hand, > return short_hand != APIC_DEST_SELF; > > if ( vlapic_x2apic_mode(vlapic) ) > - return dest_mode ? hweight16(dest) > 1 : dest == 0xffffffff; > + return dest_mode ? hweight16(dest) > 1 : dest == 0xffffffffU; > > if ( dest_mode ) > return hweight8(dest & > @@ -831,7 +831,7 @@ void vlapic_reg_write(struct vcpu *v, unsigned int reg, uint32_t val) > break; > > case APIC_ICR2: > - vlapic_set_reg(vlapic, APIC_ICR2, val & 0xff000000); > + vlapic_set_reg(vlapic, APIC_ICR2, val & 0xff000000U); > break; > > case APIC_LVTT: /* LVT Timer Reg */ > diff --git a/xen/arch/x86/include/asm/apicdef.h b/xen/arch/x86/include/asm/apicdef.h > index 2440d83c8d..7f21d3f49c 100644 > --- a/xen/arch/x86/include/asm/apicdef.h > +++ b/xen/arch/x86/include/asm/apicdef.h > @@ -8,7 +8,7 @@ > * Ingo Molnar , 1999, 2000 > */ > > -#define APIC_DEFAULT_PHYS_BASE 0xfee00000 > +#define APIC_DEFAULT_PHYS_BASE 0xfee00000U > > #define APIC_ID 0x20 > #define APIC_ID_MASK (0xFFu<<24) > diff --git a/xen/arch/x86/include/asm/config.h b/xen/arch/x86/include/asm/config.h > index fbc4bb3416..bbced338be 100644 > --- a/xen/arch/x86/include/asm/config.h > +++ b/xen/arch/x86/include/asm/config.h > @@ -257,7 +257,7 @@ extern unsigned char boot_edid_info[128]; > #endif /* CONFIG_PV32 */ > > #define MACH2PHYS_COMPAT_VIRT_START HYPERVISOR_COMPAT_VIRT_START > -#define MACH2PHYS_COMPAT_VIRT_END 0xFFE00000 > +#define MACH2PHYS_COMPAT_VIRT_END 0xFFE00000U > #define MACH2PHYS_COMPAT_NR_ENTRIES(d) \ > ((MACH2PHYS_COMPAT_VIRT_END-MACH2PHYS_COMPAT_VIRT_START(d))>>2) > > diff --git a/xen/arch/x86/include/asm/guest/hyperv-tlfs.h b/xen/arch/x86/include/asm/guest/hyperv-tlfs.h > index 38f997a0c8..a6915ad731 100644 > --- a/xen/arch/x86/include/asm/guest/hyperv-tlfs.h > +++ b/xen/arch/x86/include/asm/guest/hyperv-tlfs.h > @@ -471,30 +471,30 @@ typedef struct _HV_REFERENCE_TSC_PAGE { > > /* Define hypervisor message types. */ > enum hv_message_type { > - HVMSG_NONE = 0x00000000, > + HVMSG_NONE = 0x00000000U, > > /* Memory access messages. */ > - HVMSG_UNMAPPED_GPA = 0x80000000, > - HVMSG_GPA_INTERCEPT = 0x80000001, > + HVMSG_UNMAPPED_GPA = 0x80000000U, > + HVMSG_GPA_INTERCEPT = 0x80000001U, > > /* Timer notification messages. */ > - HVMSG_TIMER_EXPIRED = 0x80000010, > + HVMSG_TIMER_EXPIRED = 0x80000010U, > > /* Error messages. */ > - HVMSG_INVALID_VP_REGISTER_VALUE = 0x80000020, > - HVMSG_UNRECOVERABLE_EXCEPTION = 0x80000021, > - HVMSG_UNSUPPORTED_FEATURE = 0x80000022, > + HVMSG_INVALID_VP_REGISTER_VALUE = 0x80000020U, > + HVMSG_UNRECOVERABLE_EXCEPTION = 0x80000021U, > + HVMSG_UNSUPPORTED_FEATURE = 0x80000022U, > > /* Trace buffer complete messages. */ > - HVMSG_EVENTLOG_BUFFERCOMPLETE = 0x80000040, > + HVMSG_EVENTLOG_BUFFERCOMPLETE = 0x80000040U, > > /* Platform-specific processor intercept messages. */ > - HVMSG_X64_IOPORT_INTERCEPT = 0x80010000, > - HVMSG_X64_MSR_INTERCEPT = 0x80010001, > - HVMSG_X64_CPUID_INTERCEPT = 0x80010002, > - HVMSG_X64_EXCEPTION_INTERCEPT = 0x80010003, > - HVMSG_X64_APIC_EOI = 0x80010004, > - HVMSG_X64_LEGACY_FP_ERROR = 0x80010005 > + HVMSG_X64_IOPORT_INTERCEPT = 0x80010000U, > + HVMSG_X64_MSR_INTERCEPT = 0x80010001U, > + HVMSG_X64_CPUID_INTERCEPT = 0x80010002U, > + HVMSG_X64_EXCEPTION_INTERCEPT = 0x80010003U, > + HVMSG_X64_APIC_EOI = 0x80010004U, > + HVMSG_X64_LEGACY_FP_ERROR = 0x80010005U > }; > > /* Define synthetic interrupt controller message flags. */ > diff --git a/xen/arch/x86/include/asm/hpet.h b/xen/arch/x86/include/asm/hpet.h > index 9919f74730..c5e8e9c8db 100644 > --- a/xen/arch/x86/include/asm/hpet.h > +++ b/xen/arch/x86/include/asm/hpet.h > @@ -41,7 +41,7 @@ > #define HPET_TN_ROUTE 0x3e00 > #define HPET_TN_FSB 0x4000 > #define HPET_TN_FSB_CAP 0x8000 > -#define HPET_TN_RESERVED 0xffff0081 > +#define HPET_TN_RESERVED 0xffff0081U > #define HPET_TN_INT_ROUTE_CAP (0xffffffffULL << 32) > > > diff --git a/xen/arch/x86/include/asm/hvm/trace.h b/xen/arch/x86/include/asm/hvm/trace.h > index 696e42eb94..60b88b9c1f 100644 > --- a/xen/arch/x86/include/asm/hvm/trace.h > +++ b/xen/arch/x86/include/asm/hvm/trace.h > @@ -58,7 +58,7 @@ > #define DO_TRC_HVM_VLAPIC DEFAULT_HVM_MISC > > > -#define TRC_PAR_LONG(par) ((par)&0xFFFFFFFF),((par)>>32) > +#define TRC_PAR_LONG(par) ((par)&0xFFFFFFFFU),((par)>>32) > > #define TRACE_2_LONG_2D(_e, d1, d2, ...) \ > TRACE_4D(_e, d1, d2) > @@ -93,7 +93,7 @@ > HVMTRACE_ND(evt, 0, 0) > > #define HVMTRACE_LONG_1D(evt, d1) \ > - HVMTRACE_2D(evt ## 64, (d1) & 0xFFFFFFFF, (d1) >> 32) > + HVMTRACE_2D(evt ## 64, (d1) & 0xFFFFFFFFU, (d1) >> 32) > #define HVMTRACE_LONG_2D(evt, d1, d2, ...) \ > HVMTRACE_3D(evt ## 64, d1, d2) > #define HVMTRACE_LONG_3D(evt, d1, d2, d3, ...) \ > diff --git a/xen/arch/x86/include/asm/hvm/vioapic.h b/xen/arch/x86/include/asm/hvm/vioapic.h > index 2944ec20dd..68af6dce79 100644 > --- a/xen/arch/x86/include/asm/hvm/vioapic.h > +++ b/xen/arch/x86/include/asm/hvm/vioapic.h > @@ -32,7 +32,7 @@ > #define VIOAPIC_EDGE_TRIG 0 > #define VIOAPIC_LEVEL_TRIG 1 > > -#define VIOAPIC_DEFAULT_BASE_ADDRESS 0xfec00000 > +#define VIOAPIC_DEFAULT_BASE_ADDRESS 0xfec00000U > #define VIOAPIC_MEM_LENGTH 0x100 > > /* Direct registers. */ > diff --git a/xen/arch/x86/include/asm/msi.h b/xen/arch/x86/include/asm/msi.h > index a53ade95c9..d89723d009 100644 > --- a/xen/arch/x86/include/asm/msi.h > +++ b/xen/arch/x86/include/asm/msi.h > @@ -37,7 +37,7 @@ > */ > > #define MSI_ADDR_BASE_HI 0 > -#define MSI_ADDR_BASE_LO 0xfee00000 > +#define MSI_ADDR_BASE_LO 0xfee00000U > #define MSI_ADDR_BASE_MASK (~0xfffff) > #define MSI_ADDR_HEADER MSI_ADDR_BASE_LO > > diff --git a/xen/arch/x86/include/asm/msr-index.h b/xen/arch/x86/include/asm/msr-index.h > index 2749e433d2..7ed48d23cd 100644 > --- a/xen/arch/x86/include/asm/msr-index.h > +++ b/xen/arch/x86/include/asm/msr-index.h > @@ -30,7 +30,7 @@ > > #define MSR_INTEL_CORE_THREAD_COUNT 0x00000035 > #define MSR_CTC_THREAD_MASK 0x0000ffff > -#define MSR_CTC_CORE_MASK 0xffff0000 > +#define MSR_CTC_CORE_MASK 0xffff0000U > > #define MSR_SPEC_CTRL 0x00000048 > #define SPEC_CTRL_IBRS (_AC(1, ULL) << 0) > @@ -168,7 +168,7 @@ > #define MSR_UARCH_MISC_CTRL 0x00001b01 > #define UARCH_CTRL_DOITM (_AC(1, ULL) << 0) > > -#define MSR_EFER 0xc0000080 /* Extended Feature Enable Register */ > +#define MSR_EFER 0xc0000080U /* Extended Feature Enable Register */ > #define EFER_SCE (_AC(1, ULL) << 0) /* SYSCALL Enable */ > #define EFER_LME (_AC(1, ULL) << 8) /* Long Mode Enable */ > #define EFER_LMA (_AC(1, ULL) << 10) /* Long Mode Active */ > @@ -181,35 +181,35 @@ > (EFER_SCE | EFER_LME | EFER_LMA | EFER_NXE | EFER_SVME | EFER_FFXSE | \ > EFER_AIBRSE) > > -#define MSR_STAR 0xc0000081 /* legacy mode SYSCALL target */ > -#define MSR_LSTAR 0xc0000082 /* long mode SYSCALL target */ > -#define MSR_CSTAR 0xc0000083 /* compat mode SYSCALL target */ > -#define MSR_SYSCALL_MASK 0xc0000084 /* EFLAGS mask for syscall */ > -#define MSR_FS_BASE 0xc0000100 /* 64bit FS base */ > -#define MSR_GS_BASE 0xc0000101 /* 64bit GS base */ > -#define MSR_SHADOW_GS_BASE 0xc0000102 /* SwapGS GS shadow */ > -#define MSR_TSC_AUX 0xc0000103 /* Auxiliary TSC */ > +#define MSR_STAR 0xc0000081U /* legacy mode SYSCALL target */ > +#define MSR_LSTAR 0xc0000082U /* long mode SYSCALL target */ > +#define MSR_CSTAR 0xc0000083U /* compat mode SYSCALL target */ > +#define MSR_SYSCALL_MASK 0xc0000084U /* EFLAGS mask for syscall */ > +#define MSR_FS_BASE 0xc0000100U /* 64bit FS base */ > +#define MSR_GS_BASE 0xc0000101U /* 64bit GS base */ > +#define MSR_SHADOW_GS_BASE 0xc0000102U /* SwapGS GS shadow */ > +#define MSR_TSC_AUX 0xc0000103U /* Auxiliary TSC */ > > -#define MSR_K8_SYSCFG 0xc0010010 > +#define MSR_K8_SYSCFG 0xc0010010U > #define SYSCFG_MTRR_FIX_DRAM_EN (_AC(1, ULL) << 18) > #define SYSCFG_MTRR_FIX_DRAM_MOD_EN (_AC(1, ULL) << 19) > #define SYSCFG_MTRR_VAR_DRAM_EN (_AC(1, ULL) << 20) > #define SYSCFG_MTRR_TOM2_EN (_AC(1, ULL) << 21) > #define SYSCFG_TOM2_FORCE_WB (_AC(1, ULL) << 22) > > -#define MSR_K8_IORR_BASE0 0xc0010016 > -#define MSR_K8_IORR_MASK0 0xc0010017 > -#define MSR_K8_IORR_BASE1 0xc0010018 > -#define MSR_K8_IORR_MASK1 0xc0010019 > +#define MSR_K8_IORR_BASE0 0xc0010016U > +#define MSR_K8_IORR_MASK0 0xc0010017U > +#define MSR_K8_IORR_BASE1 0xc0010018U > +#define MSR_K8_IORR_MASK1 0xc0010019U > > -#define MSR_K8_TSEG_BASE 0xc0010112 /* AMD doc: SMMAddr */ > -#define MSR_K8_TSEG_MASK 0xc0010113 /* AMD doc: SMMMask */ > +#define MSR_K8_TSEG_BASE 0xc0010112U /* AMD doc: SMMAddr */ > +#define MSR_K8_TSEG_MASK 0xc0010113U /* AMD doc: SMMMask */ > > -#define MSR_K8_VM_CR 0xc0010114 > +#define MSR_K8_VM_CR 0xc0010114U > #define VM_CR_INIT_REDIRECTION (_AC(1, ULL) << 1) > #define VM_CR_SVM_DISABLE (_AC(1, ULL) << 4) > > -#define MSR_VIRT_SPEC_CTRL 0xc001011f /* Layout matches MSR_SPEC_CTRL */ > +#define MSR_VIRT_SPEC_CTRL 0xc001011fU /* Layout matches MSR_SPEC_CTRL */ > > /* > * Legacy MSR constants in need of cleanup. No new MSRs below this comment. > @@ -293,7 +293,7 @@ > #define CMCI_EN (1UL<<30) > #define CMCI_THRESHOLD_MASK 0x7FFF > > -#define MSR_AMD64_MC0_MASK 0xc0010044 > +#define MSR_AMD64_MC0_MASK 0xc0010044U > > #define MSR_IA32_MCx_CTL(x) (MSR_IA32_MC0_CTL + 4*(x)) > #define MSR_IA32_MCx_STATUS(x) (MSR_IA32_MC0_STATUS + 4*(x)) > @@ -325,83 +325,83 @@ > > /* K7/K8 MSRs. Not complete. See the architecture manual for a more > complete list. */ > -#define MSR_K7_EVNTSEL0 0xc0010000 > -#define MSR_K7_PERFCTR0 0xc0010004 > -#define MSR_K7_EVNTSEL1 0xc0010001 > -#define MSR_K7_PERFCTR1 0xc0010005 > -#define MSR_K7_EVNTSEL2 0xc0010002 > -#define MSR_K7_PERFCTR2 0xc0010006 > -#define MSR_K7_EVNTSEL3 0xc0010003 > -#define MSR_K7_PERFCTR3 0xc0010007 > -#define MSR_K8_TOP_MEM1 0xc001001a > -#define MSR_K7_CLK_CTL 0xc001001b > -#define MSR_K8_TOP_MEM2 0xc001001d > - > -#define MSR_K8_HWCR 0xc0010015 > +#define MSR_K7_EVNTSEL0 0xc0010000U > +#define MSR_K7_PERFCTR0 0xc0010004U > +#define MSR_K7_EVNTSEL1 0xc0010001U > +#define MSR_K7_PERFCTR1 0xc0010005U > +#define MSR_K7_EVNTSEL2 0xc0010002U > +#define MSR_K7_PERFCTR2 0xc0010006U > +#define MSR_K7_EVNTSEL3 0xc0010003U > +#define MSR_K7_PERFCTR3 0xc0010007U > +#define MSR_K8_TOP_MEM1 0xc001001aU > +#define MSR_K7_CLK_CTL 0xc001001bU > +#define MSR_K8_TOP_MEM2 0xc001001dU > + > +#define MSR_K8_HWCR 0xc0010015U > #define K8_HWCR_TSC_FREQ_SEL (1ULL << 24) > #define K8_HWCR_CPUID_USER_DIS (1ULL << 35) > > -#define MSR_K7_FID_VID_CTL 0xc0010041 > -#define MSR_K7_FID_VID_STATUS 0xc0010042 > -#define MSR_K8_PSTATE_LIMIT 0xc0010061 > -#define MSR_K8_PSTATE_CTRL 0xc0010062 > -#define MSR_K8_PSTATE_STATUS 0xc0010063 > -#define MSR_K8_PSTATE0 0xc0010064 > -#define MSR_K8_PSTATE1 0xc0010065 > -#define MSR_K8_PSTATE2 0xc0010066 > -#define MSR_K8_PSTATE3 0xc0010067 > -#define MSR_K8_PSTATE4 0xc0010068 > -#define MSR_K8_PSTATE5 0xc0010069 > -#define MSR_K8_PSTATE6 0xc001006A > -#define MSR_K8_PSTATE7 0xc001006B > -#define MSR_K8_ENABLE_C1E 0xc0010055 > -#define MSR_K8_VM_HSAVE_PA 0xc0010117 > - > -#define MSR_AMD_FAM15H_EVNTSEL0 0xc0010200 > -#define MSR_AMD_FAM15H_PERFCTR0 0xc0010201 > -#define MSR_AMD_FAM15H_EVNTSEL1 0xc0010202 > -#define MSR_AMD_FAM15H_PERFCTR1 0xc0010203 > -#define MSR_AMD_FAM15H_EVNTSEL2 0xc0010204 > -#define MSR_AMD_FAM15H_PERFCTR2 0xc0010205 > -#define MSR_AMD_FAM15H_EVNTSEL3 0xc0010206 > -#define MSR_AMD_FAM15H_PERFCTR3 0xc0010207 > -#define MSR_AMD_FAM15H_EVNTSEL4 0xc0010208 > -#define MSR_AMD_FAM15H_PERFCTR4 0xc0010209 > -#define MSR_AMD_FAM15H_EVNTSEL5 0xc001020a > -#define MSR_AMD_FAM15H_PERFCTR5 0xc001020b > - > -#define MSR_AMD_L7S0_FEATURE_MASK 0xc0011002 > -#define MSR_AMD_THRM_FEATURE_MASK 0xc0011003 > -#define MSR_K8_FEATURE_MASK 0xc0011004 > -#define MSR_K8_EXT_FEATURE_MASK 0xc0011005 > +#define MSR_K7_FID_VID_CTL 0xc0010041U > +#define MSR_K7_FID_VID_STATUS 0xc0010042U > +#define MSR_K8_PSTATE_LIMIT 0xc0010061U > +#define MSR_K8_PSTATE_CTRL 0xc0010062U > +#define MSR_K8_PSTATE_STATUS 0xc0010063U > +#define MSR_K8_PSTATE0 0xc0010064U > +#define MSR_K8_PSTATE1 0xc0010065U > +#define MSR_K8_PSTATE2 0xc0010066U > +#define MSR_K8_PSTATE3 0xc0010067U > +#define MSR_K8_PSTATE4 0xc0010068U > +#define MSR_K8_PSTATE5 0xc0010069U > +#define MSR_K8_PSTATE6 0xc001006AU > +#define MSR_K8_PSTATE7 0xc001006BU > +#define MSR_K8_ENABLE_C1E 0xc0010055U > +#define MSR_K8_VM_HSAVE_PA 0xc0010117U > + > +#define MSR_AMD_FAM15H_EVNTSEL0 0xc0010200U > +#define MSR_AMD_FAM15H_PERFCTR0 0xc0010201U > +#define MSR_AMD_FAM15H_EVNTSEL1 0xc0010202U > +#define MSR_AMD_FAM15H_PERFCTR1 0xc0010203U > +#define MSR_AMD_FAM15H_EVNTSEL2 0xc0010204U > +#define MSR_AMD_FAM15H_PERFCTR2 0xc0010205U > +#define MSR_AMD_FAM15H_EVNTSEL3 0xc0010206U > +#define MSR_AMD_FAM15H_PERFCTR3 0xc0010207U > +#define MSR_AMD_FAM15H_EVNTSEL4 0xc0010208U > +#define MSR_AMD_FAM15H_PERFCTR4 0xc0010209U > +#define MSR_AMD_FAM15H_EVNTSEL5 0xc001020aU > +#define MSR_AMD_FAM15H_PERFCTR5 0xc001020bU > + > +#define MSR_AMD_L7S0_FEATURE_MASK 0xc0011002U > +#define MSR_AMD_THRM_FEATURE_MASK 0xc0011003U > +#define MSR_K8_FEATURE_MASK 0xc0011004U > +#define MSR_K8_EXT_FEATURE_MASK 0xc0011005U > > /* AMD64 MSRs */ > -#define MSR_AMD64_NB_CFG 0xc001001f > +#define MSR_AMD64_NB_CFG 0xc001001fU > #define AMD64_NB_CFG_CF8_EXT_ENABLE_BIT 46 > -#define MSR_AMD64_LS_CFG 0xc0011020 > -#define MSR_AMD64_IC_CFG 0xc0011021 > -#define MSR_AMD64_DC_CFG 0xc0011022 > -#define MSR_AMD64_DE_CFG 0xc0011029 > +#define MSR_AMD64_LS_CFG 0xc0011020U > +#define MSR_AMD64_IC_CFG 0xc0011021U > +#define MSR_AMD64_DC_CFG 0xc0011022U > +#define MSR_AMD64_DE_CFG 0xc0011029U > #define AMD64_DE_CFG_LFENCE_SERIALISE (_AC(1, ULL) << 1) > -#define MSR_AMD64_EX_CFG 0xc001102c > -#define MSR_AMD64_DE_CFG2 0xc00110e3 > +#define MSR_AMD64_EX_CFG 0xc001102cU > +#define MSR_AMD64_DE_CFG2 0xc00110e3U > > -#define MSR_AMD64_DR0_ADDRESS_MASK 0xc0011027 > -#define MSR_AMD64_DR1_ADDRESS_MASK 0xc0011019 > -#define MSR_AMD64_DR2_ADDRESS_MASK 0xc001101a > -#define MSR_AMD64_DR3_ADDRESS_MASK 0xc001101b > +#define MSR_AMD64_DR0_ADDRESS_MASK 0xc0011027U > +#define MSR_AMD64_DR1_ADDRESS_MASK 0xc0011019U > +#define MSR_AMD64_DR2_ADDRESS_MASK 0xc001101aU > +#define MSR_AMD64_DR3_ADDRESS_MASK 0xc001101bU > > /* AMD Family10h machine check MSRs */ > -#define MSR_F10_MC4_MISC1 0xc0000408 > -#define MSR_F10_MC4_MISC2 0xc0000409 > -#define MSR_F10_MC4_MISC3 0xc000040A > +#define MSR_F10_MC4_MISC1 0xc0000408U > +#define MSR_F10_MC4_MISC2 0xc0000409U > +#define MSR_F10_MC4_MISC3 0xc000040AU > > /* AMD Family10h Bus Unit MSRs */ > -#define MSR_F10_BU_CFG 0xc0011023 > -#define MSR_F10_BU_CFG2 0xc001102a > +#define MSR_F10_BU_CFG 0xc0011023U > +#define MSR_F10_BU_CFG2 0xc001102aU > > /* Other AMD Fam10h MSRs */ > -#define MSR_FAM10H_MMIO_CONF_BASE 0xc0010058 > +#define MSR_FAM10H_MMIO_CONF_BASE 0xc0010058U > #define FAM10H_MMIO_CONF_ENABLE (1<<0) > #define FAM10H_MMIO_CONF_BUSRANGE_MASK 0xf > #define FAM10H_MMIO_CONF_BUSRANGE_SHIFT 2 > @@ -410,31 +410,31 @@ > > /* AMD Microcode MSRs */ > #define MSR_AMD_PATCHLEVEL 0x0000008b > -#define MSR_AMD_PATCHLOADER 0xc0010020 > +#define MSR_AMD_PATCHLOADER 0xc0010020U > > /* AMD TSC RATE MSR */ > -#define MSR_AMD64_TSC_RATIO 0xc0000104 > +#define MSR_AMD64_TSC_RATIO 0xc0000104U > > /* AMD Lightweight Profiling MSRs */ > -#define MSR_AMD64_LWP_CFG 0xc0000105 > -#define MSR_AMD64_LWP_CBADDR 0xc0000106 > +#define MSR_AMD64_LWP_CFG 0xc0000105U > +#define MSR_AMD64_LWP_CBADDR 0xc0000106U > > /* AMD OS Visible Workaround MSRs */ > -#define MSR_AMD_OSVW_ID_LENGTH 0xc0010140 > -#define MSR_AMD_OSVW_STATUS 0xc0010141 > +#define MSR_AMD_OSVW_ID_LENGTH 0xc0010140U > +#define MSR_AMD_OSVW_STATUS 0xc0010141U > > /* AMD Protected Processor Inventory Number */ > -#define MSR_AMD_PPIN_CTL 0xc00102f0 > -#define MSR_AMD_PPIN 0xc00102f1 > +#define MSR_AMD_PPIN_CTL 0xc00102f0U > +#define MSR_AMD_PPIN 0xc00102f1U > > /* K6 MSRs */ > -#define MSR_K6_EFER 0xc0000080 > -#define MSR_K6_STAR 0xc0000081 > -#define MSR_K6_WHCR 0xc0000082 > -#define MSR_K6_UWCCR 0xc0000085 > -#define MSR_K6_EPMR 0xc0000086 > -#define MSR_K6_PSOR 0xc0000087 > -#define MSR_K6_PFIR 0xc0000088 > +#define MSR_K6_EFER 0xc0000080U > +#define MSR_K6_STAR 0xc0000081U > +#define MSR_K6_WHCR 0xc0000082U > +#define MSR_K6_UWCCR 0xc0000085U > +#define MSR_K6_EPMR 0xc0000086U > +#define MSR_K6_PSOR 0xc0000087U > +#define MSR_K6_PFIR 0xc0000088U > > /* Centaur-Hauls/IDT defined MSRs. */ > #define MSR_IDT_FCR1 0x00000107 > @@ -459,10 +459,10 @@ > #define MSR_VIA_BCR2 0x00001147 > > /* Transmeta defined MSRs */ > -#define MSR_TMTA_LONGRUN_CTRL 0x80868010 > -#define MSR_TMTA_LONGRUN_FLAGS 0x80868011 > -#define MSR_TMTA_LRTI_READOUT 0x80868018 > -#define MSR_TMTA_LRTI_VOLT_MHZ 0x8086801a > +#define MSR_TMTA_LONGRUN_CTRL 0x80868010U > +#define MSR_TMTA_LONGRUN_FLAGS 0x80868011U > +#define MSR_TMTA_LRTI_READOUT 0x80868018U > +#define MSR_TMTA_LRTI_VOLT_MHZ 0x8086801aU > > /* Intel defined MSRs. */ > #define MSR_IA32_P5_MC_ADDR 0x00000000 > diff --git a/xen/arch/x86/include/asm/pci.h b/xen/arch/x86/include/asm/pci.h > index f4a58c8acf..e1dd12eb19 100644 > --- a/xen/arch/x86/include/asm/pci.h > +++ b/xen/arch/x86/include/asm/pci.h > @@ -3,10 +3,10 @@ > > #include > > -#define CF8_BDF(cf8) ( ((cf8) & 0x00ffff00) >> 8) > -#define CF8_ADDR_LO(cf8) ( (cf8) & 0x000000fc) > -#define CF8_ADDR_HI(cf8) ( ((cf8) & 0x0f000000) >> 16) > -#define CF8_ENABLED(cf8) (!!((cf8) & 0x80000000)) > +#define CF8_BDF(cf8) ( ((cf8) & 0x00ffff00U) >> 8) > +#define CF8_ADDR_LO(cf8) ( (cf8) & 0x000000fcU) > +#define CF8_ADDR_HI(cf8) ( ((cf8) & 0x0f000000U) >> 16) > +#define CF8_ENABLED(cf8) (!!((cf8) & 0x80000000U)) > > #define IS_SNB_GFX(id) (id == 0x01068086 || id == 0x01168086 \ > || id == 0x01268086 || id == 0x01028086 \ > diff --git a/xen/arch/x86/include/asm/x86-defns.h b/xen/arch/x86/include/asm/x86-defns.h > index e350227e57..87173abc70 100644 > --- a/xen/arch/x86/include/asm/x86-defns.h > +++ b/xen/arch/x86/include/asm/x86-defns.h > @@ -30,17 +30,17 @@ > /* > * Intel CPU flags in CR0 > */ > -#define X86_CR0_PE 0x00000001 /* Enable Protected Mode (RW) */ > -#define X86_CR0_MP 0x00000002 /* Monitor Coprocessor (RW) */ > -#define X86_CR0_EM 0x00000004 /* Require FPU Emulation (RO) */ > -#define X86_CR0_TS 0x00000008 /* Task Switched (RW) */ > -#define X86_CR0_ET 0x00000010 /* Extension type (RO) */ > -#define X86_CR0_NE 0x00000020 /* Numeric Error Reporting (RW) */ > -#define X86_CR0_WP 0x00010000 /* Supervisor Write Protect (RW) */ > -#define X86_CR0_AM 0x00040000 /* Alignment Checking (RW) */ > -#define X86_CR0_NW 0x20000000 /* Not Write-Through (RW) */ > -#define X86_CR0_CD 0x40000000 /* Cache Disable (RW) */ > -#define X86_CR0_PG 0x80000000 /* Paging (RW) */ > +#define X86_CR0_PE 0x00000001U /* Enable Protected Mode (RW) */ > +#define X86_CR0_MP 0x00000002U /* Monitor Coprocessor (RW) */ > +#define X86_CR0_EM 0x00000004U /* Require FPU Emulation (RO) */ > +#define X86_CR0_TS 0x00000008U /* Task Switched (RW) */ > +#define X86_CR0_ET 0x00000010U /* Extension type (RO) */ > +#define X86_CR0_NE 0x00000020U /* Numeric Error Reporting (RW) */ > +#define X86_CR0_WP 0x00010000U /* Supervisor Write Protect (RW) */ > +#define X86_CR0_AM 0x00040000U /* Alignment Checking (RW) */ > +#define X86_CR0_NW 0x20000000U /* Not Write-Through (RW) */ > +#define X86_CR0_CD 0x40000000U /* Cache Disable (RW) */ > +#define X86_CR0_PG 0x80000000U /* Paging (RW) */ > > /* > * Intel CPU flags in CR3 > @@ -103,7 +103,7 @@ > /* > * Debug status flags in DR6. > */ > -#define X86_DR6_DEFAULT 0xffff0ff0 /* Default %dr6 value. */ > +#define X86_DR6_DEFAULT 0xffff0ff0U /* Default %dr6 value. */ > > /* > * Debug control flags in DR7. > diff --git a/xen/arch/x86/percpu.c b/xen/arch/x86/percpu.c > index 288050cdba..1ebeb65ad6 100644 > --- a/xen/arch/x86/percpu.c > +++ b/xen/arch/x86/percpu.c > @@ -12,7 +12,7 @@ unsigned long __per_cpu_offset[NR_CPUS]; > * possible #PF at (NULL + a little) which has security implications in the > * context of PV guests. > */ > -#define INVALID_PERCPU_AREA (0x8000000000000000L - (long)__per_cpu_start) > +#define INVALID_PERCPU_AREA (0x8000000000000000UL - (long)__per_cpu_start) > #define PERCPU_ORDER get_order_from_bytes(__per_cpu_data_end - __per_cpu_start) Hi Jan, should this be ULL? > void __init percpu_init_areas(void) > diff --git a/xen/arch/x86/psr.c b/xen/arch/x86/psr.c > index a1e0af27c5..5581b4717a 100644 > --- a/xen/arch/x86/psr.c > +++ b/xen/arch/x86/psr.c > @@ -191,7 +191,7 @@ static struct feat_node *feat_l2_cat; > static struct feat_node *feat_mba; > > /* Common functions */ > -#define cat_default_val(len) (0xffffffff >> (32 - (len))) > +#define cat_default_val(len) (0xffffffffU >> (32 - (len))) > > /* > * get_cdp_data - get DATA COS register value from input COS ID. > diff --git a/xen/arch/x86/spec_ctrl.c b/xen/arch/x86/spec_ctrl.c > index 4081cef200..b030ad8a5b 100644 > --- a/xen/arch/x86/spec_ctrl.c > +++ b/xen/arch/x86/spec_ctrl.c > @@ -398,8 +398,8 @@ static void __init print_details(enum ind_thunk thunk) > cpuid_count(7, 0, &max, &tmp, &tmp, &_7d0); > if ( max >= 2 ) > cpuid_count(7, 2, &tmp, &tmp, &tmp, &_7d2); > - if ( boot_cpu_data.extended_cpuid_level >= 0x80000008 ) > - cpuid(0x80000008, &tmp, &e8b, &tmp, &tmp); > + if ( boot_cpu_data.extended_cpuid_level >= 0x80000008U ) > + cpuid(0x80000008U, &tmp, &e8b, &tmp, &tmp); > if ( cpu_has_arch_caps ) > rdmsrl(MSR_ARCH_CAPABILITIES, caps); > > @@ -1337,8 +1337,8 @@ void __init init_speculation_mitigations(void) > * TODO: Adjust cpu_has_svm_spec_ctrl to be usable earlier on boot. > */ > if ( opt_msr_sc_hvm && > - (boot_cpu_data.extended_cpuid_level >= 0x8000000a) && > - (cpuid_edx(0x8000000a) & (1u << SVM_FEATURE_SPEC_CTRL)) ) > + (boot_cpu_data.extended_cpuid_level >= 0x8000000aU) && > + (cpuid_edx(0x8000000aU) & (1u << SVM_FEATURE_SPEC_CTRL)) ) > setup_force_cpu_cap(X86_FEATURE_SC_MSR_HVM); > } > > diff --git a/xen/arch/x86/x86_64/acpi_mmcfg.c b/xen/arch/x86/x86_64/acpi_mmcfg.c > index 2159c68189..cdde7e453c 100644 > --- a/xen/arch/x86/x86_64/acpi_mmcfg.c > +++ b/xen/arch/x86/x86_64/acpi_mmcfg.c > @@ -50,7 +50,7 @@ static int __init acpi_mcfg_check_entry(struct acpi_table_mcfg *mcfg, > { > int year; > > - if (cfg->address < 0xFFFFFFFF) > + if (cfg->address < 0xFFFFFFFFU) > return 0; > > if (!strncmp(mcfg->header.oem_id, "SGI", 3)) > diff --git a/xen/arch/x86/x86_64/pci.c b/xen/arch/x86/x86_64/pci.c > index aad1c3f7cf..8d33429103 100644 > --- a/xen/arch/x86/x86_64/pci.c > +++ b/xen/arch/x86/x86_64/pci.c > @@ -9,7 +9,7 @@ > #include > > #define PCI_CONF_ADDRESS(sbdf, reg) \ > - (0x80000000 | ((sbdf).bdf << 8) | ((reg) & ~3)) > + (0x80000000U | ((sbdf).bdf << 8) | ((reg) & ~3)) > > uint8_t pci_conf_read8(pci_sbdf_t sbdf, unsigned int reg) > { > diff --git a/xen/arch/x86/x86_emulate/x86_emulate.h b/xen/arch/x86/x86_emulate/x86_emulate.h > index 40d5054fb7..ec6d93fb2f 100644 > --- a/xen/arch/x86/x86_emulate/x86_emulate.h > +++ b/xen/arch/x86/x86_emulate/x86_emulate.h > @@ -620,7 +620,7 @@ struct x86_emulate_ctxt > * below). > * Hence no separate #define-s get added. > */ > -#define X86EMUL_OPC_EXT_MASK 0xffff0000 > +#define X86EMUL_OPC_EXT_MASK 0xffff0000U > #define X86EMUL_OPC(ext, byte) ((uint8_t)(byte) | \ > MASK_INSR((ext), X86EMUL_OPC_EXT_MASK)) > /* > diff --git a/xen/include/public/arch-x86/xen-x86_64.h b/xen/include/public/arch-x86/xen-x86_64.h > index 5d9035ed22..7ea579e5fb 100644 > --- a/xen/include/public/arch-x86/xen-x86_64.h > +++ b/xen/include/public/arch-x86/xen-x86_64.h > @@ -53,10 +53,10 @@ > #define FLAT_USER_SS32 FLAT_RING3_SS32 > #define FLAT_USER_SS FLAT_USER_SS64 > > -#define __HYPERVISOR_VIRT_START 0xFFFF800000000000 > -#define __HYPERVISOR_VIRT_END 0xFFFF880000000000 > -#define __MACH2PHYS_VIRT_START 0xFFFF800000000000 > -#define __MACH2PHYS_VIRT_END 0xFFFF804000000000 > +#define __HYPERVISOR_VIRT_START 0xFFFF800000000000U > +#define __HYPERVISOR_VIRT_END 0xFFFF880000000000U > +#define __MACH2PHYS_VIRT_START 0xFFFF800000000000U > +#define __MACH2PHYS_VIRT_END 0xFFFF804000000000U Also here ULL? > #ifndef HYPERVISOR_VIRT_START > #define HYPERVISOR_VIRT_START xen_mk_ulong(__HYPERVISOR_VIRT_START) > diff --git a/xen/lib/x86/cpuid.c b/xen/lib/x86/cpuid.c > index 07e5501914..a4ea579ebe 100644 > --- a/xen/lib/x86/cpuid.c > +++ b/xen/lib/x86/cpuid.c > @@ -217,10 +217,10 @@ void x86_cpu_policy_fill_native(struct cpu_policy *p) > } > > /* Extended leaves. */ > - cpuid_leaf(0x80000000, &p->extd.raw[0]); > + cpuid_leaf(0x80000000U, &p->extd.raw[0]); > for ( i = 1; i <= MIN(p->extd.max_leaf & 0xffffU, > ARRAY_SIZE(p->extd.raw) - 1); ++i ) > - cpuid_leaf(0x80000000 + i, &p->extd.raw[i]); > + cpuid_leaf(0x80000000U + i, &p->extd.raw[i]); > > /* Don't report leaves from possible lower level hypervisor, for now. */ > p->hv_limit = 0; > @@ -421,7 +421,7 @@ int x86_cpuid_copy_to_buffer(const struct cpu_policy *p, > /* Extended leaves. */ > for ( leaf = 0; leaf <= MIN(p->extd.max_leaf & 0xfffful, > ARRAY_SIZE(p->extd.raw) - 1); ++leaf ) > - COPY_LEAF(0x80000000 | leaf, XEN_CPUID_NO_SUBLEAF, &p->extd.raw[leaf]); > + COPY_LEAF(0x80000000U | leaf, XEN_CPUID_NO_SUBLEAF, &p->extd.raw[leaf]); > > #undef COPY_LEAF > > @@ -521,7 +521,7 @@ int x86_cpuid_copy_from_buffer(struct cpu_policy *p, > p->hv2_limit = l.a; > break; > > - case 0x80000000 ... 0x80000000 + ARRAY_SIZE(p->extd.raw) - 1: > + case 0x80000000U ... 0x80000000U + ARRAY_SIZE(p->extd.raw) - 1: > if ( data.subleaf != XEN_CPUID_NO_SUBLEAF ) > goto out_of_range; > > diff --git a/xen/lib/x86/policy.c b/xen/lib/x86/policy.c > index a9c60000af..f033d22785 100644 > --- a/xen/lib/x86/policy.c > +++ b/xen/lib/x86/policy.c > @@ -22,7 +22,7 @@ int x86_cpu_policies_are_compatible(const struct cpu_policy *host, > FAIL_CPUID(7, 0); > > if ( guest->extd.max_leaf > host->extd.max_leaf ) > - FAIL_CPUID(0x80000000, NA); > + FAIL_CPUID(0x80000000U, NA); > > /* TODO: Audit more CPUID data. */ > > -- > 2.41.0 > From xen-devel-bounces@lists.xenproject.org Tue Jun 20 21:25:30 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 20 Jun 2023 21:25:30 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552378.862427 (Exim 4.92) (envelope-from ) id 1qBiqn-0007Lr-2V; Tue, 20 Jun 2023 21:25:21 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552378.862427; Tue, 20 Jun 2023 21:25:21 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBiqm-0007Lk-Vp; Tue, 20 Jun 2023 21:25:20 +0000 Received: by outflank-mailman (input) for mailman id 552378; Tue, 20 Jun 2023 21:25:19 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBiql-0007Lc-Ho for xen-devel@lists.xenproject.org; Tue, 20 Jun 2023 21:25:19 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id f3067a06-0fb0-11ee-8611-37d641c3527e; Tue, 20 Jun 2023 23:25:17 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id CC3F5611DF; Tue, 20 Jun 2023 21:25:15 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 6DF50C433C0; Tue, 20 Jun 2023 21:25:13 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: f3067a06-0fb0-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1687296315; bh=k5Wns646Hblfxr+U05jE1yhaaxS+CsQxVfMrNPpdUqo=; h=Date:From:To:cc:Subject:In-Reply-To:References:From; b=lJ52d0HLc6Wy1Lf5Foky4IkPA8AHnOku4t5yoIfPYlkIjpqtc9bB4ZAe/a24wVCS3 d63Hz8dAGy7CMC0zYjsKKPxB+BVuODiQP6Bx+HiJ1fYk1byEzn9mldqn8cgvBgY/Yk lTbZnH2SBk4Qnaij1aijLxPj5kUbxZbhxCUwCgEefRxDMsEvo3590acXATZq1vKgP+ rwT9TgR/nhUJh886jjpTxOBBiawaJzAb5qXa7qmKJqqYrRoDqk3IubouWAiQ43Horf OJXv0VmLvJjHYXgwqJgjngtp5/GFXuNEHgFImq3ZHkHmu6EH9cNjbthX2Fj8qsEewS EQxiXgkZx7k6w== Date: Tue, 20 Jun 2023 14:25:12 -0700 (PDT) From: Stefano Stabellini X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop To: Andrew Cooper cc: Xen-devel , Jan Beulich , =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= , Wei Liu , Stefano Stabellini , Julien Grall , Volodymyr Babchuk , Bertrand Marquis , Bob Eshleman , Alistair Francis , Connor Davis , Oleksii Kurochko , Shawn Anastasio Subject: Re: [PATCH] build: Drop CONFIG_$ARCH_$(XEN_OS) definitions In-Reply-To: <20230619180614.3610284-1-andrew.cooper3@citrix.com> Message-ID: References: <20230619180614.3610284-1-andrew.cooper3@citrix.com> User-Agent: Alpine 2.22 (DEB 394 2020-01-19) MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="8323329-1372300645-1687296315=:897208" This message is in MIME format. The first part should be readable text, while the remaining parts are likely unreadable without MIME-aware tools. --8323329-1372300645-1687296315=:897208 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8BIT On Mon, 19 Jun 2023, Andrew Cooper wrote: > These aren't used, and are not obvious useful either. > > tools/ does have some logic which works on $(XEN_OS) directly, and some on > CONFIG_$(XEN_OS) too, but this isn't how we typically refer to things. > > The only user ever of this scheme was introduced in c0fd920e987 (2006) and > deleted in fa2244104b4 (2010). > > No functional change. > > Signed-off-by: Andrew Cooper Acked-by: Stefano Stabellini > --- > CC: Jan Beulich > CC: Roger Pau Monné > CC: Wei Liu > CC: Stefano Stabellini > CC: Julien Grall > CC: Volodymyr Babchuk > CC: Bertrand Marquis > CC: Bob Eshleman > CC: Alistair Francis > CC: Connor Davis > CC: Oleksii Kurochko > CC: Shawn Anastasio > > The necessary rune is: > > git grep -E "CONFIG_(X86|ARM|RISCV)_(FreeBSD|Linux|MiniOS|NetBSD|OpenBSD|SunOS)" > --- > config/arm32.mk | 1 - > config/arm64.mk | 1 - > config/riscv64.mk | 1 - > config/x86_32.mk | 1 - > config/x86_64.mk | 1 - > 5 files changed, 5 deletions(-) > > diff --git a/config/arm32.mk b/config/arm32.mk > index f95228e3c079..c38d89cb30fc 100644 > --- a/config/arm32.mk > +++ b/config/arm32.mk > @@ -1,6 +1,5 @@ > CONFIG_ARM := y > CONFIG_ARM_32 := y > -CONFIG_ARM_$(XEN_OS) := y > > CONFIG_XEN_INSTALL_SUFFIX := > > diff --git a/config/arm64.mk b/config/arm64.mk > index aa45772b6173..c4662f67d044 100644 > --- a/config/arm64.mk > +++ b/config/arm64.mk > @@ -1,6 +1,5 @@ > CONFIG_ARM := y > CONFIG_ARM_64 := y > -CONFIG_ARM_$(XEN_OS) := y > > CONFIG_XEN_INSTALL_SUFFIX := > > diff --git a/config/riscv64.mk b/config/riscv64.mk > index a5a21e5fa220..91c6e53da6f8 100644 > --- a/config/riscv64.mk > +++ b/config/riscv64.mk > @@ -1,5 +1,4 @@ > CONFIG_RISCV := y > CONFIG_RISCV_64 := y > -CONFIG_RISCV_$(XEN_OS) := y > > CONFIG_XEN_INSTALL_SUFFIX := > diff --git a/config/x86_32.mk b/config/x86_32.mk > index bc96ff013d74..3cc046d9bcf3 100644 > --- a/config/x86_32.mk > +++ b/config/x86_32.mk > @@ -1,6 +1,5 @@ > CONFIG_X86 := y > CONFIG_X86_32 := y > -CONFIG_X86_$(XEN_OS) := y > > CONFIG_MIGRATE := y > CONFIG_XCUTILS := y > diff --git a/config/x86_64.mk b/config/x86_64.mk > index 4afef4414129..8614457b03d0 100644 > --- a/config/x86_64.mk > +++ b/config/x86_64.mk > @@ -1,6 +1,5 @@ > CONFIG_X86 := y > CONFIG_X86_64 := y > -CONFIG_X86_$(XEN_OS) := y > > CONFIG_MIGRATE := y > CONFIG_XCUTILS := y > > base-commit: 43e863a02d81f5fff32763b23d2a39f041f7e62b > -- > 2.30.2 > --8323329-1372300645-1687296315=:897208-- From xen-devel-bounces@lists.xenproject.org Tue Jun 20 21:29:32 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 20 Jun 2023 21:29:32 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552383.862436 (Exim 4.92) (envelope-from ) id 1qBiub-0007xA-JA; Tue, 20 Jun 2023 21:29:17 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552383.862436; Tue, 20 Jun 2023 21:29:17 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBiub-0007x3-GB; Tue, 20 Jun 2023 21:29:17 +0000 Received: by outflank-mailman (input) for mailman id 552383; Tue, 20 Jun 2023 21:27:34 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBisw-0007va-8Y for xen-devel@lists.xenproject.org; Tue, 20 Jun 2023 21:27:34 +0000 Received: from raptorengineering.com (mail.raptorengineering.com [23.155.224.40]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 4437ebd4-0fb1-11ee-b234-6b7b168915f2; Tue, 20 Jun 2023 23:27:32 +0200 (CEST) Received: from localhost (localhost [127.0.0.1]) by mail.rptsys.com (Postfix) with ESMTP id BAC5F82858BC; Tue, 20 Jun 2023 16:27:31 -0500 (CDT) Received: from mail.rptsys.com ([127.0.0.1]) by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032) with ESMTP id jbWyyhWlvesr; Tue, 20 Jun 2023 16:27:30 -0500 (CDT) Received: from localhost (localhost [127.0.0.1]) by mail.rptsys.com (Postfix) with ESMTP id C8CC1828686B; Tue, 20 Jun 2023 16:27:30 -0500 (CDT) Received: from mail.rptsys.com ([127.0.0.1]) by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id PVP57mJJlp0z; Tue, 20 Jun 2023 16:27:30 -0500 (CDT) Received: from vali.starlink.edu (localhost [127.0.0.1]) by mail.rptsys.com (Postfix) with ESMTP id 9D0F682858BC; Tue, 20 Jun 2023 16:27:30 -0500 (CDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 4437ebd4-0fb1-11ee-b234-6b7b168915f2 DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com C8CC1828686B DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD; t=1687296450; bh=/3L4UVdpXvtlyeovjl59oqUwbrqbMtnAKQFimjF1UG8=; h=Date:From:To:Message-ID:MIME-Version; b=D9VUrLmxMyT9EkcY+VeavrRqxdGAQxWcITXZ6ytztm/LqQI2XAuywmo7XDVI7e9dc wSpg0S0B7uOOfP2/TiIpPld+s4ZvCx5TZpFCFthId8vsVwWzNfKLbndvz9gfvP3mNg 3hCY8tyANTg5XORl28SblgBgODBeN0vFF+/zPqcU= X-Virus-Scanned: amavisd-new at rptsys.com Date: Tue, 20 Jun 2023 16:27:28 -0500 (CDT) From: Timothy Pearson To: Andrew Cooper Cc: Shawn Anastasio , xen-devel@lists.xenproject.org, Timothy Pearson , George Dunlap , Jan Beulich , Julien Grall , Stefano Stabellini , Wei Liu Message-ID: <321410422.7928643.1687296448794.JavaMail.zimbra@raptorengineeringinc.com> In-Reply-To: <8505b097-3191-ec7f-57f9-59cd49367981@citrix.com> References: <8505b097-3191-ec7f-57f9-59cd49367981@citrix.com> Subject: Re: [PATCH v5 1/3] xen: Add files needed for minimal ppc64le build MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Mailer: Zimbra 8.5.0_GA_3042 (ZimbraWebClient - GC114 (Linux)/8.5.0_GA_3042) Thread-Topic: Add files needed for minimal ppc64le build Thread-Index: OaknFPGOluVM7+W5VtgjDtanV7cE2g== ----- Original Message ----- > From: "Andrew Cooper" > To: "Shawn Anastasio" , xen-devel@lists= .xenproject.org > Cc: "Timothy Pearson" , "George Dunlap" <= george.dunlap@citrix.com>, "Jan Beulich" > , "Julien Grall" , "Stefano Stabellini= " , "Wei Liu" > > Sent: Tuesday, June 20, 2023 4:21:22 PM > Subject: Re: [PATCH v5 1/3] xen: Add files needed for minimal ppc64le bui= ld > On 20/06/2023 7:12 pm, Shawn Anastasio wrote: >> diff --git a/xen/arch/ppc/xen.lds.S b/xen/arch/ppc/xen.lds.S >> new file mode 100644 >> index 0000000000..f75d9be4ed >> --- /dev/null >> +++ b/xen/arch/ppc/xen.lds.S >> >> +/** >> + * OF's base load address is 0x400000 (XEN_VIRT_START). >> + * By defining sections this way, we can keep our virtual address base = at >> 0x400000 >> + * while keeping the physical base at 0x0. >> + * >> + * Without this, OF incorrectly loads .text at 0x400000 + 0x400000 =3D = 0x800000. >> + * Taken from x86/xen.lds.S >> + */ >=20 > Sorry, one last thing. >=20 > What's OF?=C2=A0 Searching around suggests it might be OpenFirmware, but = I'm > not certain if that's applicable in this context either? >=20 > ~Andrew OF is indeed Open Firmware. It was mainly used on old Apple machines, but = its legacy lives on in SLOF (SlimLine Open Firmware) which is the QEMU boot= loader for the pSeries machine type. From xen-devel-bounces@lists.xenproject.org Tue Jun 20 21:32:24 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 20 Jun 2023 21:32:24 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552389.862447 (Exim 4.92) (envelope-from ) id 1qBixW-0000wZ-1J; Tue, 20 Jun 2023 21:32:18 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552389.862447; Tue, 20 Jun 2023 21:32:18 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBixV-0000wS-U5; Tue, 20 Jun 2023 21:32:17 +0000 Received: by outflank-mailman (input) for mailman id 552389; Tue, 20 Jun 2023 21:32:17 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBixV-0000wK-7D for xen-devel@lists.xenproject.org; Tue, 20 Jun 2023 21:32:17 +0000 Received: from esa3.hc3370-68.iphmx.com (esa3.hc3370-68.iphmx.com [216.71.145.155]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id ec2d0586-0fb1-11ee-b234-6b7b168915f2; Tue, 20 Jun 2023 23:32:15 +0200 (CEST) Received: from mail-co1nam11lp2171.outbound.protection.outlook.com (HELO NAM11-CO1-obe.outbound.protection.outlook.com) ([104.47.56.171]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 20 Jun 2023 17:32:13 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by PH8PR03MB7269.namprd03.prod.outlook.com (2603:10b6:510:252::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.35; Tue, 20 Jun 2023 21:32:07 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606%4]) with mapi id 15.20.6500.036; Tue, 20 Jun 2023 21:32:07 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: ec2d0586-0fb1-11ee-b234-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1687296735; h=message-id:date:from:subject:to:cc:references: in-reply-to:content-transfer-encoding:mime-version; bh=rO3UCCmaGidt9E1Ab3n8Vy3rMFV8ej6+lMRZXe7GUmQ=; b=BVj+OGG0wwk1xEh6lBLrbt9JFwx+tc7jyBbshdunsy/nFrkMbj9LZPK/ veK5rTedKg7gtichu1chyPFIvu2KeZjGdO4u5ueiPxnocX6tYFYQQFP7T eFEH8ZwZ56R2HcFdhCeyMWkhrTd2QeMvAWy/Zd7Ny39DJdpnsjsnI9dyb 8=; X-IronPort-RemoteIP: 104.47.56.171 X-IronPort-MID: 113554270 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:gXi8e6jQjX525c9vU9FJp9l3X1619xEKZh0ujC45NGQN5FlHY01je htvWGqOPa6PNmqjLop+bNuzp0oHvJaGy4BkTwppqSlgF3sb9cadCdqndUqhZCn6wu8v7q5Ex 55HNoSfdpBcolv0/ErF3m3J9CEkvU2wbuOgTrWCYmYpHlUMpB4J0XpLg/Q+jpNjne+3CgaMv cKai8DEMRqu1iUc3lg8sspvkzsx+qyq0N8klgZmP6sT4gWGzyJ94K83fsldEVOpGuG4IcbiL wrz5OnR1n/U+R4rFuSknt7TGqHdauePVeQmoiM+t5mK2nCulARrukoIHKN0hXNsoyeIh7hMJ OBl7vRcf+uL0prkw4zxWzEAe8130DYvFLXveRBTuuTLp6HKnueFL1yDwyjaMKVBktubD12i+ tQUEhZVMx6R2dmGmvWVQNls2ZR7FpfkadZ3VnFIlVk1DN4AaLWaGuDhwoYd2z09wMdTAfzZe swVLyJ1awjNaAFOPVFRD48imOCvhT/0dDgwRFC9/PJrpTSMilEvluGyabI5efTTLSlRtm+eq njL4CLSBRYCOcbE4TGE7mitlqnEmiaTtIc6TeTjq6M22gLLroAVID0LXlbkmf6ns3aRAvJ7d 2NOxyQE9LdnoSRHSfG4BXVUukWsogYRUsBLFOsS8giV1q3O7gCWB24JQyRAbtNgv8gzLRQx3 1mAhM/gHj1omKecUW6a7LqSojK0NCUPLGkNIyQDSGMt89Tl5Y0+kB/LZtJiC7KuyM34Hynqx DKHpzR4gK8c5eYJ3aim+VHMgxq3u4PECAUy423/XH+h7w5/TJ6oYcqv81ezxe1bMI+TQ12Fv X4Fs8uT9uYDCdeKjiPlaPoJNKGk4bCCKjK0vLJ0N5wo9jDo8Hn6e4lVuWh6PB0wbZ9CfiL1a kjOvw8X/IVUIHahca5wZcS2Ftguyq/jU9/iU5g4c+ZzX3S4TyfflAkGWKJa9zmFfJQE+U3nB aqmTA== IronPort-HdrOrdr: A9a23:acK78a4MkYa+j+wB5QPXwHvXdLJyesId70hD6qm+c20jTiX+rb HjoB177264tN5yMEtQ6OxoXZPwMU80mqQFk7X5A43SITUO1FHYWb2KqLGSigEJNUXFh5VgPI 1bAs5D4OSZNykDsS4RiDPIaerIueP3iZxA5t2uhUuFLzsaHZ2ItD0Jdjpze3ceLGIqafVWdf rshbsk1l/QHUj/LP7LTkXtcNKz2OEj/6iWKiLuciRXqTVm+gnYpoISfSLoqiv3klt0sNAf2F mAswvk4q6k99GXoyWsqVM7l64m1+fJ+59kGNGCj8ATKHHJggasYIxnMofpgNnrmpDd1GoX X-Talos-CUID: 9a23:UgAdpG8cOE2g5ELHCGWVv0IuPJh4fG+D90eKZGGyOWY2GOWvF1DFrQ== X-Talos-MUID: 9a23:BTeNuwQZVbCJwsXhRXTMmTpva/9v/Z2WJxkttckp4fSKH3VvbmI= X-IronPort-AV: E=Sophos;i="6.00,258,1681185600"; d="scan'208";a="113554270" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=f8HUDXyLxI+C/O6A2AooW9kdzn5lf7ekFMrZOnBdhulkxgBbKVmkKKHBeGrSR1KDtTne+Nqw5T8HCpBknXotec0w0MrOHH11GxM7HOw/TJTEDj4KJDIGcwTzSdZZpMfUQbiqaoHRl+y+j4G6mEfQqyCm6Kg2RF2Zdwyt40bJ74xLtmBQfshCWmjUUxTObDK4rodPjshAI6bLFuY2x6JiBszQ0m8ooGfKogvXTWENXcPYFDk5EZO26RBSuF502h/uanwWgQxQd0prySBZf0aCVkx0p/3/PJgOspEEeFrlFKth24vMUAAQBRaC3v4UmT79o2w1LwN4ieEwZ8b5fz0s7A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=vPXW5OU7etxJMwU0slMW1UP1X34n9rktThlZtghZnpw=; b=bb/5b9i8BlVaNBimSBGWo0kZFw4uMbYG/WRpjBgeBCK4CHdbkxYe8evBvW83Crst0qVCsz1tQBoWrqulX/5qtzYDrXHdIBTs4fK0bJ3qpuXrfa+Uy68so0+rXdxbf9JsqumUxpXBlWlVmroSqSzPsohGzXc1CTNC6n8OHw17+tFbB5ewEwTCfIyZArnSAGnFXqn1d4ag6H5ndUEBdHq8OY9U0tq8EEcXEe4ALTM0jQBNNBAzuJ4Zm3Wh2sinYRIkhTFnLZzXvTLphB6KMlitUYUOOPHspGPpuHFkxWG9xHpBc0bw7lvgYLbLYurjuqTeGTOL24R6l6J85ndlvhHVkw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=vPXW5OU7etxJMwU0slMW1UP1X34n9rktThlZtghZnpw=; b=CL8n6DUCRKqtZSXL1j5ZP6xLYO0zxiauWucVo+7PRGlbWTIOmgbbx50afZ3kCMAhnWKnSybzJwmTZmv4coLn2dmTKyd1w7XepeGyaubZAdG4AIf5B2WDaoNS7Qt6Z4cPnRIWk4qGqgI7Foo7yGL+cqPPq5TjskmKuVEtmsu2vm0= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: <7d0d6045-eda8-91eb-b58b-015ebe64c7b5@citrix.com> Date: Tue, 20 Jun 2023 22:31:59 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 From: Andrew Cooper Subject: Re: [PATCH v5 1/3] xen: Add files needed for minimal ppc64le build Content-Language: en-GB To: Timothy Pearson Cc: Shawn Anastasio , xen-devel@lists.xenproject.org, George Dunlap , Jan Beulich , Julien Grall , Stefano Stabellini , Wei Liu References: <8505b097-3191-ec7f-57f9-59cd49367981@citrix.com> <321410422.7928643.1687296448794.JavaMail.zimbra@raptorengineeringinc.com> In-Reply-To: <321410422.7928643.1687296448794.JavaMail.zimbra@raptorengineeringinc.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO2P265CA0084.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:8::24) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|PH8PR03MB7269:EE_ X-MS-Office365-Filtering-Correlation-Id: 1327ed09-7bed-47c1-08d2-08db71d5cc0a X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: f82Zc8xSIp8arJcbCFHaiGvowuPObVQkSlqfanswE4IGXFAvLtahgVjlXrUVfbKnoJvi3rFk9oa6cRv4JajxWXWq7uG3TYHHE9jTjemouWUT6VewdstOLRT16hEWiiFmjKlQbQ3jCwTOVrT7W1f/zhptbkPp6npgV0L56sjZ0fsabRgTHQngvgwB7I3ZyvIw8njHzjqPKXdDqCRU589imLZ0RwLm3Z2OmA6TzSFV4QB7j96TWd8XS5eIzg6wIiq/cnTUil+LWJxB5ZoZ2CDKwzxTfUxCtORkskqUinmE19OpoEWNd+vhz/xeRH2g9daBXQxX6QXQRPOlXb/5/f8HusVvXXWmN5mnR04OwZSN8AUe/KtDVlt0b86NNdTD8UspFNuTgo2ZpZ2hD8i94j5XfX6DU6BKU3HXMBOa2G33Ptxu4TSy3XatDcusPvfSAHAgPPpJv3duwbEJAYx6rmIDXamkM0cc/VH1va13Zsx49+PRyKptht6RSBx7lDKh6XVtm9rirFYttLgOPjEq+2YLey6mXaHQMAzS3M9ZejlrAxbwsrqDgLZNqLMeRVBZfJBbRHYCksQH3Cws+n57xAdyir55ofxFWjBBzVGIrKrOvUE/wLHQgJ6hwVp4ITGLX0hKNMW+F87ao9I/KYjH/YU1gA== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(346002)(39860400002)(136003)(366004)(376002)(396003)(451199021)(478600001)(5660300002)(66476007)(4326008)(6916009)(2906002)(66556008)(54906003)(31686004)(66946007)(41300700001)(316002)(53546011)(6666004)(6486002)(8676002)(8936002)(6506007)(6512007)(186003)(26005)(83380400001)(2616005)(38100700002)(82960400001)(31696002)(36756003)(86362001)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?Vlk1NnNxYmNZK2JGeTFLTlZUeGRiZnV0bUNrYmJHaU1GRjAyOEcyYnMyNy9Z?= =?utf-8?B?SDhrZ1d0cUlJSHBic1lqVXZpVHRSSkVJa3p5WVVCQnZVdDZUcmlTbXZ6ckhJ?= =?utf-8?B?aEx1TkFQN2xVYjJ2N0FhWGZMRXRFRlpvTC93WTBLVC9qZ0dCZFU4UjY1Q1ov?= =?utf-8?B?VGRRUGtpbUxXWGxJSXBnWEVzbXNRL0NzZ1BSaGZueFI5dnU4elAvN1FlS2Rl?= =?utf-8?B?WGhrWU4wNUNCUkRmUlBwbzB6Qk8zUGxzYzRyMjAwQno5NzVlZkdlWEFSWWh2?= =?utf-8?B?R3dKMDVRWmROOFY5MHljTnJscWV2UkMybGtOMHZFNUhTeHZ3M2lueU5oYjdr?= =?utf-8?B?TVV3cFRuZ0RmZW5PYXl2WlRySjBEekRMN0dCdlJDRGdpbzAxMjk2NkgyWFNa?= =?utf-8?B?M3h0NnJNY1Uyei9yZys0L3Jhak1MeGJSaDlpVFl4RDUyemRFYVdaZ3NEYWdL?= =?utf-8?B?TS9SRjdEZS9qV2d2N3VvWVRMYmppYkJaaTYzSGkwSEZBVVVvVE1DMXBlbTdB?= =?utf-8?B?WFBkSmJJZWxhaDdQU2Q1OFRMeXRQUGtRSHJzQ29NUzVoWDd1MG4vWHN6YWpp?= =?utf-8?B?dmVudXEyMmpEczJyVXFrVkw5ZzAzVzhmTU1ZUkhOZWZkQkxtUktqbHhGb2Rz?= =?utf-8?B?QUNNRW9MV29kOWZlUlNFMW45WGhlT0dwRElYb3cyeHh2STJtOHhmdmJYclNz?= =?utf-8?B?TkRVL3ZXcEVDdk14VGpWL1JISkttQXpoZW9EaHJMZHBhOTg2S3dlM2JWS3lN?= =?utf-8?B?RFg0MmtkajVkQ2ZVcXI0RXVBN2tpOHpLb1NGUkpoblJHbW5Yd203NDBpbGNI?= =?utf-8?B?SVJQQkhINzNoNWlIcFdpQ2RUSWFIM2cyVkRwYWZZMVgwSXJjWGxEc0krMmk0?= =?utf-8?B?cjVjMHlWbDZGdjZ5UmYvY0IrUm40WE5ycWJNYnVNbExLUVJjd3pQa3FQWHFP?= =?utf-8?B?SnhFUEQrRm8rbzFKMGRlMjNCWDBOM2I0NTUyMldyWHNoeStwaFd3V3ZsMUpV?= =?utf-8?B?VzlURXBpcmlPT25UZy83T1FycnRicDg5RlFMSUJ3cjY2YUtFNXkyM1FZQ284?= =?utf-8?B?dnJwUVR2Yy9rV0ZFMVB3THVtNlRLOTJUcjNBN3ZTVjROZEVINXlhalJCc0Y4?= =?utf-8?B?TWVSUkdNYk5oS1pyUm1iQTFtWTY2SnFtU0NTendTcDB2MTdNSTNaYXJDNHJo?= =?utf-8?B?NkpzR2duY2ZoNUcrY3U4ZHJsMEdjd0l6U1NuYjFwZTNzWG1NSVZCZjRzZlY4?= =?utf-8?B?ajQvOUEyNVZmMFF3eUdMYkxmenpqVzVSQlVPS2QvY1RpNlhKd0FlZFBmNWFk?= =?utf-8?B?Ri8xVUk0ckJtRW5pN2UxUHNBdE53V1RVeFNYVXZLUFNEMXlpRmRlV1VBa1RO?= =?utf-8?B?ckNqeVNZRjdPdS95dnVYdURWbzQwRE1tK2EzcC9HSWFsMW9xL3BnVGROSDJI?= =?utf-8?B?RGhCWWsvMFc3VnRRTThDaXBSZ2hYN3cwUUVMWDhmUlJrZHg2UVNZcFhCVllP?= =?utf-8?B?SXJma2NUUDV2ai84eERtL1VzcHArc0RuOTFPbkQ4eGpuLzFxdUFodkplbEd0?= =?utf-8?B?QnNjY1Z5bnpwQVA1MWh3aUlzUFEwNFZQK2tRZTNzN1BkNDRBeGFCOWlCSVF4?= =?utf-8?B?aW95ejJkUGY5UFZ5OXJnVjJHNnNiK3h2eC90L3N4UUx3NDh2bGdmOGdrbFVs?= =?utf-8?B?SXlhaVk2RFo1Rmwreko0TFhnNWFsRDJHY1FWNEg4bkU2d3dzakpNa012eVlr?= =?utf-8?B?WStZYmlhVTErTUV5aHZLbDlSeGhNK2VheEcwL0dyYmtyQjdidnBUQXlud2pV?= =?utf-8?B?a1NHWlgrYS9tUDZZekkvREtMNzd6OXJESnlncWFZOWpRSlhPNG81L25wTFdH?= =?utf-8?B?cTREWWh3ZEtSbkVPZis0djFUVUVSa0lXTFZ0bjNxQkh0aXFrbzVhYnJWNzZz?= =?utf-8?B?b1Radmhib2lwTFFIMHFwSmhBQ1E1b1lLOUVORnB6ZGF2S1h0RTJISW1vOEIw?= =?utf-8?B?eHVzeTAzbDZoanhZTUsyZmtsckxvSUpPUFpjWHdvRXgrYklmWVZ5UGFIWTVz?= =?utf-8?B?R0ZTUEszRExNRDJpMGJLTlh2N3ZCOGt1YkZsUk9zd2pITVJOdzNKVUZnYzZU?= =?utf-8?B?czdzTkV5UktISXloOUlFakI4dWVjRnJWRVRoWnhLL1hjSmRRVXRZalpaSmVJ?= =?utf-8?B?MWc9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: sh3RI8Y5/LrY+riqJCLy1PHIpzqzXGkQsL+gtEWBa/g6fg2AiRRQ3LaHfynCwG46PmZnxlt8sBU1MPsK4q5CKulGxr/HOJpMSMLBw76YL7qr56Ud/ozGRql6AP4F1YV/NrwiHApVLpOGkPluikl41qpUQzF5GXvVNKNN5SZro93X/xTIr1sxgCM0ERt41jS3pluV2hiebzoRauHgeKU69l5g4/dePtaZGZAxeGuLceG/g96m8BAzrnKPMFMwbgIDTJzcgW6BOQLpNJ3YUQX2aQpRAlRehBiPvGevweb81idMa8Ln3/TjE/AlaDwAGqwNDGN/vdA4+5z8Pz2ZkqLwiT7m7tV6mqn3eDJdwJDTkcePRwIwOrjuiZTGfKfnkVT2mHtjBGNjrdBAz6+agfGmGGibI2vMLmrghIAkEIe/qrYeOCyKx1K7zjDN6wwVwJgyinPjxsL7oWOIWtvO4PV/cs+h31ITy4tJ8e4xLPe9iz4KWVnPr4UprrHrrgs/7cwp9EqJ2juTJaJhDP98bBBLfXTzGDl2VLCZLcqDgrNMTKmYeCoOYIdrrMqmmWjSwNSadjujdkdgjwL0WSKckaj5tFpUjG/4KtnJgQ7UXSFWM1gBsB3lt5MMMX1GOetGkEmJYqElpFyXy9lvCmAFtPXCWhMZFOCQEr6kEegQ8yveQ4Ro3g/8+sl/2LIYYwvN10YT23ln9Tqx2ib+xM1oHOVQJJNWIKsGsMgubew5yDcaGCN/GgwxvX5VZURMzJK1hAAOT5N/aTiliPN5BPQ9zN7bjk0+IylaT5DuvfT8eFFTvpAB6W48Fk6O9yL7clCFTAAHmJE9Nu2y86tRy44OdreITg399dWm0H9NP0z4P+BCGZpggWqiSSoPB4g/1R5ArnlYRGBvF+F7BxWBOaRnL7rE0qAMaDKKM99uR4Y7L7rhLeQ= X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 1327ed09-7bed-47c1-08d2-08db71d5cc0a X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Jun 2023 21:32:07.1264 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: aSqRG+9DLb1Lvmz3Id0lyrZcF8bBsMympDDS3TsO/qd1/tWesT8wv1l7FUvHbzZs735bbHs46HIGOkpfZyIOgQHQI+5DKGh/3L3aqemSopQ= X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH8PR03MB7269 On 20/06/2023 10:27 pm, Timothy Pearson wrote: >> On 20/06/2023 7:12 pm, Shawn Anastasio wrote: >>> diff --git a/xen/arch/ppc/xen.lds.S b/xen/arch/ppc/xen.lds.S >>> new file mode 100644 >>> index 0000000000..f75d9be4ed >>> --- /dev/null >>> +++ b/xen/arch/ppc/xen.lds.S >>> >>> +/** >>> + * OF's base load address is 0x400000 (XEN_VIRT_START). >>> + * By defining sections this way, we can keep our virtual address base at >>> 0x400000 >>> + * while keeping the physical base at 0x0. >>> + * >>> + * Without this, OF incorrectly loads .text at 0x400000 + 0x400000 = 0x800000. >>> + * Taken from x86/xen.lds.S >>> + */ >> Sorry, one last thing. >> >> What's OF?  Searching around suggests it might be OpenFirmware, but I'm >> not certain if that's applicable in this context either? >> >> ~Andrew > OF is indeed Open Firmware. It was mainly used on old Apple machines, but its legacy lives on in SLOF (SlimLine Open Firmware) which is the QEMU bootloader for the pSeries machine type. Ok.  Seeing as everything else appears to be in order, I'll expand this abbreviation on commit for the benefit of others reading the comment. ~Andrew From xen-devel-bounces@lists.xenproject.org Tue Jun 20 23:05:40 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 20 Jun 2023 23:05:40 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552396.862457 (Exim 4.92) (envelope-from ) id 1qBkPZ-0001fO-4B; Tue, 20 Jun 2023 23:05:21 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552396.862457; Tue, 20 Jun 2023 23:05:21 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBkPZ-0001fH-10; Tue, 20 Jun 2023 23:05:21 +0000 Received: by outflank-mailman (input) for mailman id 552396; Tue, 20 Jun 2023 23:05:19 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBkPX-0001fB-BF for xen-devel@lists.xenproject.org; Tue, 20 Jun 2023 23:05:19 +0000 Received: from NAM11-BN8-obe.outbound.protection.outlook.com (mail-bn8nam11on20601.outbound.protection.outlook.com [2a01:111:f400:7eae::601]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id e9a17748-0fbe-11ee-8611-37d641c3527e; Wed, 21 Jun 2023 01:05:16 +0200 (CEST) Received: from LV2PR12MB5869.namprd12.prod.outlook.com (2603:10b6:408:176::16) by SA0PR12MB7002.namprd12.prod.outlook.com (2603:10b6:806:2c0::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.37; Tue, 20 Jun 2023 23:05:10 +0000 Received: from LV2PR12MB5869.namprd12.prod.outlook.com ([fe80::f7a7:a561:87e9:5fab]) by LV2PR12MB5869.namprd12.prod.outlook.com ([fe80::f7a7:a561:87e9:5fab%7]) with mapi id 15.20.6500.031; Tue, 20 Jun 2023 23:05:10 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: e9a17748-0fbe-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=cAsqsJZKEBx38D1P5a7N1Jr3Rbd4OczRiaO89yYo9WPjer3aJHQG/2F2lA5FjQKCisiK4oPu8LHQuEnEVill/d8/Yo1NsGh3+YisL+t55VevPgvMiW933XI46Wp32QWAVUKk/ZHTQQVdb+ltWYn7ypHG2qfeJaD9djIUUqP0QY0QkJXf8t7GyawAJGdGqSBTHHz1ASQ0dg4XjUcmuwFCDBN6Uro8+k9f5bJ8TbZHZNutcWMUDSta1wffvwH6yPeRw+yOpY74HVjbZSKm9k+LI7OHRLw1hnvARfRhvLQ9NorPel8k3uXbHTtXwy7xY3rT4mR3NDunydAczqZdP1LYlw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=ltTIiBtZe5keN/2eRCeT5n726rQ4ogdJ3lncN2+uErk=; b=fcShjhjxkC7z2voYps6ZEdhCmACMsHBTr7lVigip++2wFKMK4WRmTBsEuPswBqiBpHGnXkIo4dv5ZN+1ZViXzqmrt+s40TWOmWp5kpBt5nQf2ake9dgABmCWWslWK34Yu1arNIaL/elBy9l22iyeT2We8aAeR9/xQuYiOc5xPz9uhoo6icyFy/nhl+v55xB5Ic8e2eChQu+Nzeo/SJlw1BhrX5r5gussacUU1Xo/gWFyj74ntecvf5sPdszA+Y+1Gz0xlJigLO6oqwR3NavBMForHMKXB+rP46h42KCk76sz5bTs2JCxN1vfqq8/11uFUyssSlV7cbqcosPz3ucBgw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nvidia.com; dmarc=pass action=none header.from=nvidia.com; dkim=pass header.d=nvidia.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Nvidia.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=ltTIiBtZe5keN/2eRCeT5n726rQ4ogdJ3lncN2+uErk=; b=QlGuaa3Qx7T1/sBNlW/z3ccnCwjn/R1SShPsOeCqw4kB5ojYj5pPLBiAkHc0PKwg209K+9Fxl6ilpmMV18URVAeC5u9+Os/y1rDR2dcxrej0URZf0CtriqhjJI7vGFWn0vFCjCBS1k3a/16ldDjXUJvcQ2x3EzFgz/MSiU0DiEmwGq2FemrFz74ERGE0l3qZNL6eyQPSU2eTCraX7zcfbwGCkCJUAqt0CLVrEko/134SAirS55HhAEoeREwIN/pe3w/PA0sGx26Y4OvpPUjZxfBoQojIo1hQ5ZgiQ5aZnrQftdnMcwnBU1hl0vibL0jSfKtZ3JjEwzP4yejLH5os6g== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nvidia.com; Date: Tue, 20 Jun 2023 20:05:08 -0300 From: Jason Gunthorpe To: Vishal Moola Cc: Andrew Morton , Matthew Wilcox , linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins Subject: Re: [PATCH v4 04/34] pgtable: Create struct ptdesc Message-ID: References: <20230612210423.18611-1-vishal.moola@gmail.com> <20230612210423.18611-5-vishal.moola@gmail.com> Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: X-ClientProxiedBy: YT4PR01CA0117.CANPRD01.PROD.OUTLOOK.COM (2603:10b6:b01:d7::23) To LV2PR12MB5869.namprd12.prod.outlook.com (2603:10b6:408:176::16) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: LV2PR12MB5869:EE_|SA0PR12MB7002:EE_ X-MS-Office365-Filtering-Correlation-Id: af9c6ca0-8ecf-460c-f580-08db71e2cc0f X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: oo9DFPA5oeloN7xGzm07ngwHI/ma6YfGkq+TcV/QsCbfwAqOIODlMtDRpQMrh9zEQGtQ+2oQjjkwlnQQXb62Omc/6I0UdBVTBTu4yVDlxRDExk5c7ph1JGMXJ6FivilmsF3weqmwT35SXe88V+T9l3YeJOLlj1iD4jz9FKaWiw81SokUYq8CyJc3EcFLZWJ+817+fFWNAZKDZbMeB0MbbPN01Fa2jQdMcozgtJnFDAzGODsS/4Xq5NvRmbmDEeqL0prbZBATb+eHL1tq6OyrHKD5mjkzk/PLCnudynSetLxSv7fh42hsTTAn8xRomjD3I+IHbBg40gYrkVwiLBNxIATmy1rOtcKuM7IYdc3g7Dsj8/1S8SMpEpz/KzRGvcJxLN9NlSwhtRNMb2iz5Bnm5culwdwSeNnQMIZEaYi/WIbdbl6bvJTbKs0aM+6IxYPhMrHAKKJSe2N1U8PawFmLWg8TeXGDZWqZ880mbBnQyC+kSHnKZqjicg5mgZMLA9JHln0s/h7EsX7oOtKe8QzimYF4prgC4F2eLGnsvche018B1Q5yuJ9cUdiAkZkUFxA8 X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:LV2PR12MB5869.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(346002)(136003)(376002)(366004)(39860400002)(396003)(451199021)(6486002)(478600001)(83380400001)(186003)(6512007)(6506007)(53546011)(2616005)(36756003)(26005)(86362001)(38100700002)(8676002)(5660300002)(8936002)(316002)(2906002)(41300700001)(4326008)(6916009)(66476007)(66556008)(66946007)(7416002)(54906003);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?azBzSlhoQzNXeWJjSzROZjl0OWxseUdGajZVK3Y5RjZWWUE1b1dLRjNzeThw?= =?utf-8?B?MG1pZ3Q1NDFLU0RNVnFCeDdHWEdkUVl6UVZqVUIrUmpXY0E3SndpQ2tPNHBC?= =?utf-8?B?NUhzdDRua2dUd3FMVGsybEx1eUs1TmMrY1o0MFUwcVptQ0xRTEdTdmRMRm01?= =?utf-8?B?K1IxRXdwQmxUTno0QlMvejF4MGRWM2xHdGhSN3U3WDZrQXFpdEY5Rk5TQWpy?= =?utf-8?B?aHZTSHNrdnlJRVczWXZ3a0F5TGFrSGV3L1o0ZURpRDlnSXdJWDhUMTk5YlRa?= =?utf-8?B?WjNRa3U1eWlWSU1lNmpRSDEvYmVOTU1kdXFCQ0t0cDk4am9SemxEMU0xTllm?= =?utf-8?B?RUxnVzRJellGRXFoSFVlQzJPR0xVSEdCc3UrRmZvL2RwUWVwd2xhNlhxTFg3?= =?utf-8?B?R0ZNRFV5bjBhbXRldXFXUks4Q1JYQUJuQms1WHBFT29sOFkwbUVtbktNbkpU?= =?utf-8?B?cEVRU2xBaHlHSnExcEd3VWNQNmZRU2diSEs4OGRJaFJhdmw5dVh3ZlRCRlJD?= =?utf-8?B?eXNtZDdOQzJOTXdrZHJWeVNGWkJPVStNU0x0NGFMTDVGZlJ4QUhWaXVsSjMr?= =?utf-8?B?dFZIMVNrMEtYOSthOEl3QTZsVEE4U0lTdVI4T0FhNXVFbjc5MXZaQ3p2WTg1?= =?utf-8?B?UG5EcWdIRHIxWDdXOVBTQkdoUVhuaEluZnRMVDJmOHZ6a1lrbFAxYWkyN0k4?= =?utf-8?B?V1VCSVRIV29rVTBISjdrSnY2WmNRZ2x2Y2N6cHpBdlo3SWJxbVZpd2pEVXl6?= =?utf-8?B?U2ZtTWFkU3RGSU1MUTBMU3FWeEVJbVVuLzhFLzBzZ3NxZzBITXFhNDUvdGNY?= =?utf-8?B?OUg3RkMvL2xQSEt2Z1lIcVVVd0F1UnFaNmFtdVplR2dEdTFiS3lWbVdMQU13?= =?utf-8?B?eDFCaHhhNFkvajVRUGp1MnRYY0JYVDVyc1VabVBwWmVld3R6UWQ3bXpIRUU2?= =?utf-8?B?Ti9qQ005c3Q4YWVhZnRhZ2F6S1ZZK0hYUDcvUkltRlFPcVZNanVXZDdFTHcr?= =?utf-8?B?aFA0ZGczT2wvbUJFUW1QRFhjWnhkeVlEN3dwVWVsUG91eHVRZ1dEenN4WEdi?= =?utf-8?B?VHhhMmJMbXJCelMzMkN5TTM2ZTRaU21aWUE3YzFRR2gwa21ocUpManlKc1JJ?= =?utf-8?B?RzVZc1Fpb3QwN3lWMCs3c2d6cll3ODM1RFBLWmZ1Q1dXckhnc3FFdCtVVWhu?= =?utf-8?B?THZlM0xHYzU1KzNOZ2pBNlpjd0JudmZYV2RXYkY0R2RvN0lYTUczL2hyaWtR?= =?utf-8?B?UElsQWFoMTJEbHZ1aVJFQmdKNW45cW9VcklKME5XMEVCWHJoZWhGSURXU0ND?= =?utf-8?B?Qy95OXlabjhMSW4zSi9WbXFjWkRSWlJ2ZjVxT05GQkhlOW9IV0ZZNHppM3Z5?= =?utf-8?B?MDJ6WlovU3BxcnFwZU03TXNKNHcrVzErQTNKZFY4UnB2c2UzWE80bWJxZDMr?= =?utf-8?B?V21Ocjd4YTVrbDJQeTh4a2hDdzA3cVdQMWRFamF4TUsrLy95M3dQSDZmVlBa?= =?utf-8?B?VEo2RHhwaWZreDRBdkJ6Ryt3WExIbzZXOTB6MHhLcXMweFY5UkwxcGdQcGt5?= =?utf-8?B?SzRVUUF4eDdrcUVvRWNNVjZsRllEK3dqaUlTL0lNRW5hd2pHcFRCUHdITGJG?= =?utf-8?B?WEkvSHVXdEpjNVYyMHo3WVhCbWloUlJCRjUrdllmeExOTkJNSGpTaWc4RE1S?= =?utf-8?B?RGZ1aGlCY1I3RlZhT1JpNFlNM0x5bU0rMHNZa0pzS3NBZThSQUs4bW80cFc4?= =?utf-8?B?VzFkaXNmS2VGaVhaTFV4WWZqcWk5RHhoV0JEcFJ4MUdnQTZLQ2I0T29vWkhZ?= =?utf-8?B?Ym9GdFdQZFZpanJpSlA5c21Ra1lBVnl6SXRRdFgvQk94NENwaERTcWo5aDJZ?= =?utf-8?B?cUhMVmFJUkZmRUpWNUdFWHUxaXhobXRMbHVWbVFLL2pQazRuaXRvcUM4Nmlm?= =?utf-8?B?N2ZCTE9OSjBhbjJmb24zT09qQzNjTzFVM05xbU42S3NLWlJxTmorU1BHSXh6?= =?utf-8?B?SnNJY2Q0WjVucEQ5bTZlTGw4WERsdHlXZEJkRGwvbEx5K0VEeG0xdUJCcXBS?= =?utf-8?B?WFgxSTRneE4xWlhQc0hwbmpuMktPclkzYkViYm0zQVU2VXQxZk43VUI1c28r?= =?utf-8?Q?9vgoPf+W0tynJua4GrNJ45e8y?= X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-Network-Message-Id: af9c6ca0-8ecf-460c-f580-08db71e2cc0f X-MS-Exchange-CrossTenant-AuthSource: LV2PR12MB5869.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Jun 2023 23:05:10.4928 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: R+LKfZovjZy61f+HGv7RJ64nxAoBBBqUKUgPMSNcpJkcIbEmsgeezoq6nuoAuxkm X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA0PR12MB7002 On Tue, Jun 20, 2023 at 01:01:39PM -0700, Vishal Moola wrote: > On Fri, Jun 16, 2023 at 5:38 AM Jason Gunthorpe wrote: > > > > On Mon, Jun 12, 2023 at 02:03:53PM -0700, Vishal Moola (Oracle) wrote: > > > Currently, page table information is stored within struct page. As part > > > of simplifying struct page, create struct ptdesc for page table > > > information. > > > > > > Signed-off-by: Vishal Moola (Oracle) > > > --- > > > include/linux/pgtable.h | 51 +++++++++++++++++++++++++++++++++++++++++ > > > 1 file changed, 51 insertions(+) > > > > > > diff --git a/include/linux/pgtable.h b/include/linux/pgtable.h > > > index c5a51481bbb9..330de96ebfd6 100644 > > > --- a/include/linux/pgtable.h > > > +++ b/include/linux/pgtable.h > > > @@ -975,6 +975,57 @@ static inline void ptep_modify_prot_commit(struct vm_area_struct *vma, > > > #endif /* __HAVE_ARCH_PTEP_MODIFY_PROT_TRANSACTION */ > > > #endif /* CONFIG_MMU */ > > > > > > + > > > +/** > > > + * struct ptdesc - Memory descriptor for page tables. > > > + * @__page_flags: Same as page flags. Unused for page tables. > > > + * @pt_list: List of used page tables. Used for s390 and x86. > > > + * @_pt_pad_1: Padding that aliases with page's compound head. > > > + * @pmd_huge_pte: Protected by ptdesc->ptl, used for THPs. > > > + * @_pt_s390_gaddr: Aliases with page's mapping. Used for s390 gmap only. > > > + * @pt_mm: Used for x86 pgds. > > > + * @pt_frag_refcount: For fragmented page table tracking. Powerpc and s390 only. > > > + * @ptl: Lock for the page table. > > > + * > > > + * This struct overlays struct page for now. Do not modify without a good > > > + * understanding of the issues. > > > + */ > > > +struct ptdesc { > > > + unsigned long __page_flags; > > > + > > > + union { > > > + struct list_head pt_list; > > > + struct { > > > + unsigned long _pt_pad_1; > > > + pgtable_t pmd_huge_pte; > > > + }; > > > + }; > > > + unsigned long _pt_s390_gaddr; > > > + > > > + union { > > > + struct mm_struct *pt_mm; > > > + atomic_t pt_frag_refcount; > > > + }; > > > + > > > +#if ALLOC_SPLIT_PTLOCKS > > > + spinlock_t *ptl; > > > +#else > > > + spinlock_t ptl; > > > +#endif > > > +}; > > > > I think you should include the memcg here too? It needs to be valid > > for a ptdesc, even if we don't currently deref it through the ptdesc > > type. > > Yes, thanks for catching that! I'll add it to v5. > > > Also, do you see a way to someday put a 'struct rcu_head' into here? > > Eventually, when they're being dynamically allocated independent of > struct page. Although at that point I'm not sure if we'll need one. Sooner than dynamic struct page? Probably it can overlap pt_list in alot of arches? Jason From xen-devel-bounces@lists.xenproject.org Tue Jun 20 23:10:39 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 20 Jun 2023 23:10:39 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552403.862467 (Exim 4.92) (envelope-from ) id 1qBkUd-0003A8-Rw; Tue, 20 Jun 2023 23:10:35 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552403.862467; Tue, 20 Jun 2023 23:10:35 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBkUd-0003A1-P8; Tue, 20 Jun 2023 23:10:35 +0000 Received: by outflank-mailman (input) for mailman id 552403; Tue, 20 Jun 2023 23:10:35 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBkUd-00039f-1U for xen-devel@lists.xenproject.org; Tue, 20 Jun 2023 23:10:35 +0000 Received: from mail-yw1-x112a.google.com (mail-yw1-x112a.google.com [2607:f8b0:4864:20::112a]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id a7fc69cb-0fbf-11ee-b234-6b7b168915f2; Wed, 21 Jun 2023 01:10:33 +0200 (CEST) Received: by mail-yw1-x112a.google.com with SMTP id 00721157ae682-57023c9be80so54758647b3.3 for ; Tue, 20 Jun 2023 16:10:33 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: a7fc69cb-0fbf-11ee-b234-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687302633; x=1689894633; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=nozU+u202dwuRZdJGKz18i7nEQxa/ZPqnuIXPcARxTk=; b=Srt/QiH6vSlV6ltPf9H8KdAeCpbz7L591o99Craxfn8w/jM66I5hACYYF7kGTNoYRf 37MNDI/F8R1g44q3mAPdvv0ch2USGp6Xr2QpXeRs4zwys088B20V4rigZMbQAUtCAcnv ujlqxNx2s65vbfsZd3k+2DjIHKhHJIWAfpgn7QYgmI+NGmP+FiWPPp675PKwGH44ORfj zOUT1l13zV/ZQbeHYvFRsincMrSLLgcM09n9imSEGZWNpBzKYFGwq1+DONOYFih8u36L jrVhBZXiCnjwgLIXcNbQ+C7KfkKQcJy9rAKazTyykVFlz02AVb/RzeIKJrXQdve86D2m bp4A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687302633; x=1689894633; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=nozU+u202dwuRZdJGKz18i7nEQxa/ZPqnuIXPcARxTk=; b=FLVCW5V09+EvrIsn+0+smrRMH/F3JOTWE//ZwDgFeXRnW0CDHHoAzlBaM+17O23FPh s1U4eXkGKADlCsCFhZptT0a/2PIHLent3OsiHYHrBa7u8EFhdVaMCz6cV/f3gayMWm+g ie9T8YZdV0nvegLJoN37xKLHciU6gUr2L+JG9xo9s2O+QffK374TZvEJ4NYjijSeUufj 7UYQeoddv3p5O8fSpGUckHLgqQHabJw/NETHrPI5/2tJu1MSjl7rton7xXHY+JHSf7cY Zrp2QidPSYvRFTVkZyTCoFAQtGZdjoKrRRAUoAYCBUvcaCPzRmWRDE01/ikU7p1gzUkC WQYg== X-Gm-Message-State: AC+VfDwyOBQG8zEr8BZgrB1Tg7oxm4pYtrkIhhANQlIKLYjRX81GM8UY Kmwo5MxPqFHUl9g/wU2wOOna2j6n+CnwhlmWYHk= X-Google-Smtp-Source: ACHHUZ7+vWx7il1X3ew5mkzUq07+yx6XfH7tiB7mbTeTUr9bW7PRwJQYCTYOe/jG083Yaru2U6b3dhZd45Wu7Dtq2+o= X-Received: by 2002:a0d:dfcb:0:b0:570:89bf:6f10 with SMTP id i194-20020a0ddfcb000000b0057089bf6f10mr9653803ywe.25.1687302632746; Tue, 20 Jun 2023 16:10:32 -0700 (PDT) MIME-Version: 1.0 References: <20230612210423.18611-1-vishal.moola@gmail.com> <20230612210423.18611-5-vishal.moola@gmail.com> In-Reply-To: From: Vishal Moola Date: Tue, 20 Jun 2023 16:10:22 -0700 Message-ID: Subject: Re: [PATCH v4 04/34] pgtable: Create struct ptdesc To: Jason Gunthorpe Cc: Andrew Morton , Matthew Wilcox , linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Tue, Jun 20, 2023 at 4:05=E2=80=AFPM Jason Gunthorpe wr= ote: > > On Tue, Jun 20, 2023 at 01:01:39PM -0700, Vishal Moola wrote: > > On Fri, Jun 16, 2023 at 5:38=E2=80=AFAM Jason Gunthorpe wrote: > > > > > > On Mon, Jun 12, 2023 at 02:03:53PM -0700, Vishal Moola (Oracle) wrote= : > > > > Currently, page table information is stored within struct page. As = part > > > > of simplifying struct page, create struct ptdesc for page table > > > > information. > > > > > > > > Signed-off-by: Vishal Moola (Oracle) > > > > --- > > > > include/linux/pgtable.h | 51 +++++++++++++++++++++++++++++++++++++= ++++ > > > > 1 file changed, 51 insertions(+) > > > > > > > > diff --git a/include/linux/pgtable.h b/include/linux/pgtable.h > > > > index c5a51481bbb9..330de96ebfd6 100644 > > > > --- a/include/linux/pgtable.h > > > > +++ b/include/linux/pgtable.h > > > > @@ -975,6 +975,57 @@ static inline void ptep_modify_prot_commit(str= uct vm_area_struct *vma, > > > > #endif /* __HAVE_ARCH_PTEP_MODIFY_PROT_TRANSACTION */ > > > > #endif /* CONFIG_MMU */ > > > > > > > > + > > > > +/** > > > > + * struct ptdesc - Memory descriptor for page tables. > > > > + * @__page_flags: Same as page flags. Unused for page tables. > > > > + * @pt_list: List of used page tables. Used for s390 and x86. > > > > + * @_pt_pad_1: Padding that aliases with page's compound head. > > > > + * @pmd_huge_pte: Protected by ptdesc->ptl, used for THPs. > > > > + * @_pt_s390_gaddr: Aliases with page's mapping. Used for s390 gma= p only. > > > > + * @pt_mm: Used for x86 pgds. > > > > + * @pt_frag_refcount: For fragmented page table tracking. Powerpc = and s390 only. > > > > + * @ptl: Lock for the page table. > > > > + * > > > > + * This struct overlays struct page for now. Do not modify without= a good > > > > + * understanding of the issues. > > > > + */ > > > > +struct ptdesc { > > > > + unsigned long __page_flags; > > > > + > > > > + union { > > > > + struct list_head pt_list; > > > > + struct { > > > > + unsigned long _pt_pad_1; > > > > + pgtable_t pmd_huge_pte; > > > > + }; > > > > + }; > > > > + unsigned long _pt_s390_gaddr; > > > > + > > > > + union { > > > > + struct mm_struct *pt_mm; > > > > + atomic_t pt_frag_refcount; > > > > + }; > > > > + > > > > +#if ALLOC_SPLIT_PTLOCKS > > > > + spinlock_t *ptl; > > > > +#else > > > > + spinlock_t ptl; > > > > +#endif > > > > +}; > > > > > > I think you should include the memcg here too? It needs to be valid > > > for a ptdesc, even if we don't currently deref it through the ptdesc > > > type. > > > > Yes, thanks for catching that! I'll add it to v5. > > > > > Also, do you see a way to someday put a 'struct rcu_head' into here? > > > > Eventually, when they're being dynamically allocated independent of > > struct page. Although at that point I'm not sure if we'll need one. > > Sooner than dynamic struct page? > > Probably it can overlap pt_list in alot of arches? Ah yes, there will be one if v5 overlapping with pt_list (it already does in struct page anyways). From xen-devel-bounces@lists.xenproject.org Wed Jun 21 00:24:11 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 00:24:11 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552408.862477 (Exim 4.92) (envelope-from ) id 1qBldW-0002oX-Hg; Wed, 21 Jun 2023 00:23:50 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552408.862477; Wed, 21 Jun 2023 00:23:50 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBldW-0002oQ-Ef; Wed, 21 Jun 2023 00:23:50 +0000 Received: by outflank-mailman (input) for mailman id 552408; Wed, 21 Jun 2023 00:23:49 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBldU-0002oK-VD for xen-devel@lists.xenproject.org; Wed, 21 Jun 2023 00:23:49 +0000 Received: from mail-vs1-xe36.google.com (mail-vs1-xe36.google.com [2607:f8b0:4864:20::e36]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id e2e08891-0fc9-11ee-b234-6b7b168915f2; Wed, 21 Jun 2023 02:23:47 +0200 (CEST) Received: by mail-vs1-xe36.google.com with SMTP id ada2fe7eead31-43dd7791396so1607821137.0 for ; Tue, 20 Jun 2023 17:23:47 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: e2e08891-0fc9-11ee-b234-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687307026; x=1689899026; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=WiX1gCrrdbmMdY9MbQ4DmiMp/CnEAXeloA4vSiw0EUw=; b=ZdDep5yXy2smIAWyCayIcgVmwEFCIXHNp5o5/nfCL4q88yh9KiiraiLjJLrUis4tHt y3S6cwXZOcqBXNMYqmE0dgk4YPWxyT7y4rm49kNGzmjXA3qMxdORAe/ldfthODf5cVUS F0t7HzKS3/85hew6GAEcHFkrZQwRbyOQkTQ623rg0Ei7QqiqkafLVerVtHp5/J2fLgd7 iisOSBvhovENniUonlqVOge/TMOGkG1H/UdsFRdGXm74grz/K4+sq7ba2V6Pd+iiQl5g vwJKhwGdjn91wpqRlVNInEZUXPoZ/wkAvNCZ/MkwWBYeOZFwf43wE9OmffZNsmSo4fCf 3k9Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687307026; x=1689899026; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=WiX1gCrrdbmMdY9MbQ4DmiMp/CnEAXeloA4vSiw0EUw=; b=EKeq05aP1x5RHO8tLYjWyChqpEQN3433IX2mBDJnuzrc80BRRMw9aIGIPfttz7lM71 4yHhKZLujMP24LJhHFtxI33ZkRw9omfPa/DxIANU3TlvflGaVFzvw3AJ14gqwNI1YLJ/ /3zJKO3vSAKy4HeO2k6k8VQHgQxNNmTtFvXlHzGrwJzdNHGFAc7ObkUeAfjBB1Tvu5dq e3IjWPkG6Gd3n4OuFvvwmezcwcUVmZAsiygQ4aYsKpvWUw/t1O39R+xLdSElRrO1bfd2 zk6cRUrXNeP9/3q9H5AI+3UN7OjIy8zuZfAAczF3vkH7AJ3OYv8c9nbl0Q4aB69OPmIl PehA== X-Gm-Message-State: AC+VfDxWjKsufx2Pemq1mvz56kaouST5DkIQva0k4CzRZ1ysaMXsU9ro McZJfrZW8fj8LkhMqGPbCHFGhypNeYHEYZG9MOY= X-Google-Smtp-Source: ACHHUZ7eDhRGLsoYvFdcbsnps8qrg4kCot14zm/ruin/ZtBC8uOan041amlx89xgrR4RLJZRrGqEIA2nNdidRiOdsiQ= X-Received: by 2002:a67:f99a:0:b0:440:339f:b1d3 with SMTP id b26-20020a67f99a000000b00440339fb1d3mr5261774vsq.31.1687307025841; Tue, 20 Jun 2023 17:23:45 -0700 (PDT) MIME-Version: 1.0 References: <20230619180614.3610284-1-andrew.cooper3@citrix.com> In-Reply-To: <20230619180614.3610284-1-andrew.cooper3@citrix.com> From: Alistair Francis Date: Wed, 21 Jun 2023 10:23:19 +1000 Message-ID: Subject: Re: [PATCH] build: Drop CONFIG_$ARCH_$(XEN_OS) definitions To: Andrew Cooper Cc: Xen-devel , Jan Beulich , =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= , Wei Liu , Stefano Stabellini , Julien Grall , Volodymyr Babchuk , Bertrand Marquis , Bob Eshleman , Alistair Francis , Connor Davis , Oleksii Kurochko , Shawn Anastasio Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Tue, Jun 20, 2023 at 4:07=E2=80=AFAM Andrew Cooper wrote: > > These aren't used, and are not obvious useful either. > > tools/ does have some logic which works on $(XEN_OS) directly, and some o= n > CONFIG_$(XEN_OS) too, but this isn't how we typically refer to things. > > The only user ever of this scheme was introduced in c0fd920e987 (2006) an= d > deleted in fa2244104b4 (2010). > > No functional change. > > Signed-off-by: Andrew Cooper Reviewed-by: Alistair Francis Alistair > --- > CC: Jan Beulich > CC: Roger Pau Monn=C3=A9 > CC: Wei Liu > CC: Stefano Stabellini > CC: Julien Grall > CC: Volodymyr Babchuk > CC: Bertrand Marquis > CC: Bob Eshleman > CC: Alistair Francis > CC: Connor Davis > CC: Oleksii Kurochko > CC: Shawn Anastasio > > The necessary rune is: > > git grep -E "CONFIG_(X86|ARM|RISCV)_(FreeBSD|Linux|MiniOS|NetBSD|OpenBS= D|SunOS)" > --- > config/arm32.mk | 1 - > config/arm64.mk | 1 - > config/riscv64.mk | 1 - > config/x86_32.mk | 1 - > config/x86_64.mk | 1 - > 5 files changed, 5 deletions(-) > > diff --git a/config/arm32.mk b/config/arm32.mk > index f95228e3c079..c38d89cb30fc 100644 > --- a/config/arm32.mk > +++ b/config/arm32.mk > @@ -1,6 +1,5 @@ > CONFIG_ARM :=3D y > CONFIG_ARM_32 :=3D y > -CONFIG_ARM_$(XEN_OS) :=3D y > > CONFIG_XEN_INSTALL_SUFFIX :=3D > > diff --git a/config/arm64.mk b/config/arm64.mk > index aa45772b6173..c4662f67d044 100644 > --- a/config/arm64.mk > +++ b/config/arm64.mk > @@ -1,6 +1,5 @@ > CONFIG_ARM :=3D y > CONFIG_ARM_64 :=3D y > -CONFIG_ARM_$(XEN_OS) :=3D y > > CONFIG_XEN_INSTALL_SUFFIX :=3D > > diff --git a/config/riscv64.mk b/config/riscv64.mk > index a5a21e5fa220..91c6e53da6f8 100644 > --- a/config/riscv64.mk > +++ b/config/riscv64.mk > @@ -1,5 +1,4 @@ > CONFIG_RISCV :=3D y > CONFIG_RISCV_64 :=3D y > -CONFIG_RISCV_$(XEN_OS) :=3D y > > CONFIG_XEN_INSTALL_SUFFIX :=3D > diff --git a/config/x86_32.mk b/config/x86_32.mk > index bc96ff013d74..3cc046d9bcf3 100644 > --- a/config/x86_32.mk > +++ b/config/x86_32.mk > @@ -1,6 +1,5 @@ > CONFIG_X86 :=3D y > CONFIG_X86_32 :=3D y > -CONFIG_X86_$(XEN_OS) :=3D y > > CONFIG_MIGRATE :=3D y > CONFIG_XCUTILS :=3D y > diff --git a/config/x86_64.mk b/config/x86_64.mk > index 4afef4414129..8614457b03d0 100644 > --- a/config/x86_64.mk > +++ b/config/x86_64.mk > @@ -1,6 +1,5 @@ > CONFIG_X86 :=3D y > CONFIG_X86_64 :=3D y > -CONFIG_X86_$(XEN_OS) :=3D y > > CONFIG_MIGRATE :=3D y > CONFIG_XCUTILS :=3D y > > base-commit: 43e863a02d81f5fff32763b23d2a39f041f7e62b > -- > 2.30.2 > > From xen-devel-bounces@lists.xenproject.org Wed Jun 21 01:14:43 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 01:14:43 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552414.862487 (Exim 4.92) (envelope-from ) id 1qBmQf-0006Rk-5f; Wed, 21 Jun 2023 01:14:37 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552414.862487; Wed, 21 Jun 2023 01:14:37 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBmQf-0006Rd-2R; Wed, 21 Jun 2023 01:14:37 +0000 Received: by outflank-mailman (input) for mailman id 552414; Wed, 21 Jun 2023 01:14:35 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBmQd-0006RH-K8 for xen-devel@lists.xenproject.org; Wed, 21 Jun 2023 01:14:35 +0000 Received: from out4-smtp.messagingengine.com (out4-smtp.messagingengine.com [66.111.4.28]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id f9583648-0fd0-11ee-8611-37d641c3527e; Wed, 21 Jun 2023 03:14:32 +0200 (CEST) Received: from compute6.internal (compute6.nyi.internal [10.202.2.47]) by mailout.nyi.internal (Postfix) with ESMTP id 2F6485C01D6; Tue, 20 Jun 2023 21:14:30 -0400 (EDT) Received: from mailfrontend2 ([10.202.2.163]) by compute6.internal (MEProxy); Tue, 20 Jun 2023 21:14:30 -0400 Received: by mail.messagingengine.com (Postfix) with ESMTPA; Tue, 20 Jun 2023 21:14:29 -0400 (EDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: f9583648-0fd0-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= invisiblethingslab.com; h=cc:cc:content-type:content-type:date :date:from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:sender:subject:subject:to:to; s=fm2; t= 1687310070; x=1687396470; bh=dPRbCORYEFTE+ch7t5Frfs0gTZw5KkU2Q52 rHQ69CxE=; b=oBgdoIBx8xuWQHDp4VfPXBn9ugYH4T7kItmONRxGNwWMf+LX3rt pOVRob5mcAgf1ofrNP3977yO+/VausExD6ZSqrAyFpJFS8/7zWfORXHU6efApbro HTGr2yGE+ZDIsN+D3UbSnmpi3kETm9kFA2utntJp49dgxgNI9iGx7unZdCu3269G fophTM3D05qi2PbZCWg/d7DdQrn6DTv7S+sHHDRN6N2mYIYHITdbvHR3zR/4Q3fM ovgkRt4KuVIo94Jghz31Qm1y4EvthTCIl1g2x5erCHoaA9HHLUKnLPbxa3HqTogM u6quDpw/I4rEbRqOTqHPs9Fq0EJag5FJK0g== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-type:content-type:date:date :feedback-id:feedback-id:from:from:in-reply-to:in-reply-to :message-id:mime-version:references:reply-to:sender:subject :subject:to:to:x-me-proxy:x-me-proxy:x-me-sender:x-me-sender :x-sasl-enc; s=fm2; t=1687310070; x=1687396470; bh=dPRbCORYEFTE+ ch7t5Frfs0gTZw5KkU2Q52rHQ69CxE=; b=Nwalsytq7cEIDGE5W9gQd/QS/5G+B 7VlxvquaHO17AsUiKjSDKy1tvgoxRscuy5Bk/XEs6t17i3OTa1gCted+ZNsnOP2N o+Q9qProSVVvCtdv9ONJ5DGqHozqBbu3CG5vTbZyS1xpWjxM0oTojWprwAN8DxEu HSnchKM9cjPpKCCSyS/Cih8Z+y1xBli/eOQWrL1OlR8Jh7uHF3dThURme3LElVeP YiDmByF+fSwsex0NvB4AWiEKOTRsxzT2MOviR8YO55iC4cT9fY0oA50n8tPPdb4i u54xs+ZyU6ncxjxiDFYLRicAsXQqMmPsP9msnhoMmkwnqoCKOEfGrNHdQ== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvhedrgeefiedggeehucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne cujfgurhepfffhvfevuffkfhggtggujgesghdtreertddtjeenucfhrhhomhepffgvmhhi ucforghrihgvucfqsggvnhhouhhruceouggvmhhisehinhhvihhsihgslhgvthhhihhngh hslhgrsgdrtghomheqnecuggftrfgrthhtvghrnhepvdejteegkefhteduhffgteffgeff gfduvdfghfffieefieekkedtheegteehffelnecuvehluhhsthgvrhfuihiivgeptdenuc frrghrrghmpehmrghilhhfrhhomhepuggvmhhisehinhhvihhsihgslhgvthhhihhnghhs lhgrsgdrtghomh X-ME-Proxy: Feedback-ID: iac594737:Fastmail Date: Tue, 20 Jun 2023 21:14:25 -0400 From: Demi Marie Obenour To: Roger Pau =?utf-8?B?TW9ubsOp?= Cc: Jens Axboe , Alasdair Kergon , Mike Snitzer , dm-devel@redhat.com, Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= , linux-block@vger.kernel.org, linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org Subject: Re: [PATCH v2 13/16] xen-blkback: Implement diskseq checks Message-ID: References: <20230530203116.2008-14-demi@invisiblethingslab.com> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha512; protocol="application/pgp-signature"; boundary="f7JHV1ieZVTEUWoW" Content-Disposition: inline In-Reply-To: --f7JHV1ieZVTEUWoW Content-Type: text/plain; protected-headers=v1; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Date: Tue, 20 Jun 2023 21:14:25 -0400 From: Demi Marie Obenour To: Roger Pau =?utf-8?B?TW9ubsOp?= Cc: Jens Axboe , Alasdair Kergon , Mike Snitzer , dm-devel@redhat.com, Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= , linux-block@vger.kernel.org, linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org Subject: Re: [PATCH v2 13/16] xen-blkback: Implement diskseq checks On Mon, Jun 12, 2023 at 10:09:39AM +0200, Roger Pau Monn=C3=A9 wrote: > On Fri, Jun 09, 2023 at 12:55:39PM -0400, Demi Marie Obenour wrote: > > On Fri, Jun 09, 2023 at 05:13:45PM +0200, Roger Pau Monn=C3=A9 wrote: > > > On Thu, Jun 08, 2023 at 11:33:26AM -0400, Demi Marie Obenour wrote: > > > > On Thu, Jun 08, 2023 at 10:29:18AM +0200, Roger Pau Monn=C3=A9 wrot= e: > > > > > On Wed, Jun 07, 2023 at 12:14:46PM -0400, Demi Marie Obenour wrot= e: > > > > > > On Wed, Jun 07, 2023 at 10:20:08AM +0200, Roger Pau Monn=C3=A9 = wrote: > > > > > > > Can you fetch a disk using a diskseq identifier? > > > > > >=20 > > > > > > Not yet, although I have considered adding this ability. It wo= uld be > > > > > > one step towards a =E2=80=9Cdiskseqfs=E2=80=9D that userspace c= ould use to open a device > > > > > > by diskseq. > > > > > >=20 > > > > > > > Why I understand that this is an extra safety check in order = to assert > > > > > > > blkback is opening the intended device, is this attempting to= fix some > > > > > > > existing issue? > > > > > >=20 > > > > > > Yes, it is. I have a block script (written in C) that validate= s the > > > > > > device it has opened before passing the information to blkback.= It uses > > > > > > the diskseq to do this, but for that protection to be complete,= blkback > > > > > > must also be aware of it. > > > > >=20 > > > > > But if your block script opens the device, and keeps it open until > > > > > blkback has also taken a reference to it, there's no way such dev= ice > > > > > could be removed and recreated in the window you point out above,= as > > > > > there's always a reference on it taken? > > > >=20 > > > > This assumes that the block script is not killed in the meantime, > > > > which is not a safe assumption due to timeouts and the OOM killer. > > >=20 > > > Doesn't seem very reliable to use with delete-on-close either then. > >=20 > > That=E2=80=99s actually the purpose of delete-on-close! It ensures tha= t if the > > block script gets killed, the device is automatically cleaned up. >=20 > Block script attach getting killed shouldn't prevent the toolstack > from performing domain destruction, and thus removing the stale block > device. >=20 > OTOH if your toolstack gets killed then there's not much that can be > done, and the system will need intervention in order to get back into > a sane state. >=20 > Hitting OOM in your control domain however is unlikely to be handled > gracefully, even with delete-on-close. I agree, _but_ we should not make it any harder than necessary. > > > > > Then the block script will open the device by diskseq and pass the > > > > > major:minor numbers to blkback. > > > >=20 > > > > Alternatively, the toolstack could write both the diskseq and > > > > major:minor numbers and be confident that it is referring to the > > > > correct device, no matter how long ago it got that information. > > > > This could be quite useful for e.g. one VM exporting a device to > > > > another VM by calling losetup(8) and expecting a human to make a > > > > decision based on various properties about the device. In this > > > > case there is no upper bound on the race window. > > >=20 > > > Instead of playing with xenstore nodes, it might be better to simply > > > have blkback export on sysfs the diskseq of the opened device, and let > > > the block script check whether that's correct or not. That implies > > > less code in the kernel side, and doesn't pollute xenstore. > >=20 > > This would require that blkback delay exposing the device to the > > frontend until the block script has checked that the diskseq is correct. >=20 > This depends on your toolstack implementation. libxl won't start the > domain until block scripts have finished execution, and hence the > block script waiting for the sysfs node to appear and check it against > the expected value would be enough. True, but we cannot assume that everyone is using libxl. > > Much simpler for the block script to provide the diskseq in xenstore. > > If you want to avoid an extra xenstore node, I can make the diskseq part > > of the physical-device node. >=20 > I'm thinking that we might want to introduce a "physical-device-uuid" > node and use that to provide the diskseq to the backened. Toolstacks > (or block scripts) would need to be sure the "physical-device-uuid" > node is populated before setting "physical-device", as writes to > that node would still trigger blkback watch. I think using two > distinct watches would just make the logic in blkback too > complicated. >=20 > My preference would be for the kernel to have a function for opening a > device identified by a diskseq (as fetched from > "physical-device-uuid"), so that we don't have to open using > major:minor and then check the diskseq. In theory I agree, but in practice it would be a significantly more complex patch and given that it does not impact the uAPI I would prefer the less-invasive option. Is there anything more that needs to be done here, other than replacing the "diskseq" name? I prefer "physical-device-luid" because the ID is only valid in one particular VM. --=20 Sincerely, Demi Marie Obenour (she/her/hers) Invisible Things Lab --f7JHV1ieZVTEUWoW Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQIzBAEBCgAdFiEEdodNnxM2uiJZBxxxsoi1X/+cIsEFAmSSTvMACgkQsoi1X/+c IsG1jg//X0K5T/56coLUBbOrGxUQ3U0P0C4lX+QfQYyfRFk8ADIg9VQmbCK2f8xA spUPvMYuy7ysKkFKRjl7A3xzCudfUOQcUXNSWNcDUFAKR3bNajNHkg9tBA1UcLHu vnjI6hUF2DyWRAf3dfVPljl9B32XhRoLg18sirIulLFV3Uo0cUSxqiJw7KzDPzaj lgi99ljjbZwxRmjg2mkCqhM0Nlfix7n3a3GDNOfsBAPnQkddiO2MBNvuf0pBDf5g 8mWXzq4hYQrL2N3M85BE7MRETGfCpSK/Rwu6Yt1fc2gAZCE6DzPaVBa+YYhJZUML DpviuehprwPCWnT5tgjUZScHsuxAhHMRFTlzZkdLWutEsJgiSh5odM7ApMwRxpSi lBX2sxLlehyipONgHSWscDpC0RmV2v/YLG3erzttCGeJ2UvhORN2lNK4s8xpI6Ud TPc3/u02cu7Bs6X4BQrJtIm/MCmmlyjftn7G7RuRIW6hl8k4RP4hurQluKGvS3To 4JnleIjEGMQTRnh1cJzWfKfJ+gjGqCOIGjIcO7Ix/v/mSNu88ZsKMdQXMag1akj5 MnJa16unxL6tsMxXs047rM/TDQXSiUaTWMO1DvGAd8HiN6+8FtgEGi0jF2Q/NXxT CIDR3AT4cy4sSd2Hv5/uQFllJk4qkF0GlFbAlNWfTcimHWatOeM= =brAf -----END PGP SIGNATURE----- --f7JHV1ieZVTEUWoW-- From xen-devel-bounces@lists.xenproject.org Wed Jun 21 01:20:28 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 01:20:28 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552421.862496 (Exim 4.92) (envelope-from ) id 1qBmW5-0007uP-PC; Wed, 21 Jun 2023 01:20:13 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552421.862496; Wed, 21 Jun 2023 01:20:13 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBmW5-0007uG-MX; Wed, 21 Jun 2023 01:20:13 +0000 Received: by outflank-mailman (input) for mailman id 552421; Wed, 21 Jun 2023 01:20:12 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBmW4-0007uA-Dc for xen-devel@lists.xenproject.org; Wed, 21 Jun 2023 01:20:12 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id c364aa51-0fd1-11ee-b235-6b7b168915f2; Wed, 21 Jun 2023 03:20:10 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 1EBDE61236; Wed, 21 Jun 2023 01:20:09 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 42EE4C433C0; Wed, 21 Jun 2023 01:20:07 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: c364aa51-0fd1-11ee-b235-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1687310408; bh=omAn/XIjfD2yZiE+z+2Omnm2gibY6bG3uDeQkChYvVo=; h=Date:From:To:cc:Subject:In-Reply-To:References:From; b=Uizqr80e+hUa+LKZ7hGl0obHBpHYjKFDfHDEs17+mtORd7wh96OnCzbEbSN4T2iH9 TBDUD7HjRxjzKuG6jUUWqGoupsJD8lo1Arp23ZVdNcYPLf6bOuI6EVrKoi85tGaCb3 J8IsQndid4DE7ENoFaaWZwwsN9A+oYfHHaucUwmwCL3HG71sBLvhEtSW4EkzwQ4kjb RKGgNkYJ3qW67pxEj9pW4FmIbO+kKuaU98POrvnEqimbyd3wwl+ljVlODcrQ+1zC5f ckTot5bhY+jCkT1peya5MTo6DWLzVxtTvt+lA6mYkR7mpFDmdzriIY3DvKZEc/vnCg QwkHooAsVsqqA== Date: Tue, 20 Jun 2023 18:20:05 -0700 (PDT) From: Stefano Stabellini X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop To: Andrew Cooper cc: Xen-devel , Jan Beulich , =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= , Wei Liu , Stefano Stabellini , Julien Grall , Volodymyr Babchuk , Bertrand Marquis Subject: Re: [PATCH] xen/decompress: Drop bool_t and use bool instead In-Reply-To: <20230620175835.3908246-1-andrew.cooper3@citrix.com> Message-ID: References: <20230620175835.3908246-1-andrew.cooper3@citrix.com> User-Agent: Alpine 2.22 (DEB 394 2020-01-19) MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="8323329-1067518987-1687310408=:897208" This message is in MIME format. The first part should be readable text, while the remaining parts are likely unreadable without MIME-aware tools. --8323329-1067518987-1687310408=:897208 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8BIT On Tue, 20 Jun 2023, Andrew Cooper wrote: > In particular, the libxg wrapper for unxz.c uses char for bool_t which is a > major antipattern. Luckily the code doesn't suffer from truncated values. > > No functional change. > > Signed-off-by: Andrew Cooper FYI I checked patchew and it took the patch off of xen-devel, applied it to a branch, triggered a gitlab-ci pipeline, and it was successful: https://gitlab.com/xen-project/patchew/xen/-/pipelines/906050463 All of this without me having to do anything! We live in the future. Reviewed-by: Stefano Stabellini > --- > CC: Jan Beulich > CC: Roger Pau Monné > CC: Wei Liu > CC: Stefano Stabellini > CC: Julien Grall > CC: Volodymyr Babchuk > CC: Bertrand Marquis > --- > .../libs/guest/xg_dom_decompress_unsafe_xz.c | 1 - > xen/common/unxz.c | 2 +- > xen/common/xz/dec_bcj.c | 6 +++--- > xen/common/xz/dec_lzma2.c | 20 +++++++++---------- > xen/common/xz/dec_stream.c | 8 ++++---- > xen/common/xz/lzma2.h | 2 +- > xen/common/xz/private.h | 2 +- > 7 files changed, 20 insertions(+), 21 deletions(-) > > diff --git a/tools/libs/guest/xg_dom_decompress_unsafe_xz.c b/tools/libs/guest/xg_dom_decompress_unsafe_xz.c > index fc4819874111..80eed912dd68 100644 > --- a/tools/libs/guest/xg_dom_decompress_unsafe_xz.c > +++ b/tools/libs/guest/xg_dom_decompress_unsafe_xz.c > @@ -11,7 +11,6 @@ > // TODO > #define XZ_DEC_X86 > > -typedef char bool_t; > typedef uint8_t u8; > typedef uint16_t u16; > typedef uint32_t u32; > diff --git a/xen/common/unxz.c b/xen/common/unxz.c > index 17aead0adfe6..9586a4e5c94f 100644 > --- a/xen/common/unxz.c > +++ b/xen/common/unxz.c > @@ -166,7 +166,7 @@ int __init unxz(unsigned char *in, unsigned int in_size, > struct xz_buf b; > struct xz_dec *s; > enum xz_ret ret; > - bool_t must_free_in = false; > + bool must_free_in = false; > > xz_crc32_init(); > > diff --git a/xen/common/xz/dec_bcj.c b/xen/common/xz/dec_bcj.c > index bfa498587ab8..bdc59770f8a6 100644 > --- a/xen/common/xz/dec_bcj.c > +++ b/xen/common/xz/dec_bcj.c > @@ -35,7 +35,7 @@ struct xz_dec_bcj { > enum xz_ret ret; > > /* True if we are operating in single-call mode. */ > - bool_t single_call; > + bool single_call; > > /* > * Absolute position relative to the beginning of the uncompressed > @@ -87,7 +87,7 @@ static inline int __init bcj_x86_test_msbyte(uint8_t b) > > static size_t __init bcj_x86(struct xz_dec_bcj *s, uint8_t *buf, size_t size) > { > - static const bool_t mask_to_allowed_status[8] > + static const bool mask_to_allowed_status[8] > = { true, true, true, false, true, false, false, false }; > > static const uint8_t mask_to_bit_num[8] = { 0, 1, 2, 2, 3, 3, 3, 3 }; > @@ -524,7 +524,7 @@ XZ_EXTERN enum xz_ret __init xz_dec_bcj_run(struct xz_dec_bcj *s, > return s->ret; > } > > -XZ_EXTERN struct xz_dec_bcj *__init xz_dec_bcj_create(bool_t single_call) > +XZ_EXTERN struct xz_dec_bcj *__init xz_dec_bcj_create(bool single_call) > { > struct xz_dec_bcj *s = malloc(sizeof(*s)); > if (s != NULL) > diff --git a/xen/common/xz/dec_lzma2.c b/xen/common/xz/dec_lzma2.c > index f80d8309f4c3..71359fab9f60 100644 > --- a/xen/common/xz/dec_lzma2.c > +++ b/xen/common/xz/dec_lzma2.c > @@ -241,13 +241,13 @@ struct lzma2_dec { > * True if dictionary reset is needed. This is false before > * the first chunk (LZMA or uncompressed). > */ > - bool_t need_dict_reset; > + bool need_dict_reset; > > /* > * True if new LZMA properties are needed. This is false > * before the first LZMA chunk. > */ > - bool_t need_props; > + bool need_props; > }; > > struct xz_dec_lzma2 { > @@ -306,7 +306,7 @@ static void __init dict_limit(struct dictionary *dict, size_t out_max) > } > > /* Return true if at least one byte can be written into the dictionary. */ > -static inline bool_t __init dict_has_space(const struct dictionary *dict) > +static inline bool __init dict_has_space(const struct dictionary *dict) > { > return dict->pos < dict->limit; > } > @@ -343,7 +343,7 @@ static inline void __init dict_put(struct dictionary *dict, uint8_t byte) > * invalid, false is returned. On success, true is returned and *len is > * updated to indicate how many bytes were left to be repeated. > */ > -static bool_t __init dict_repeat(struct dictionary *dict, uint32_t *len, uint32_t dist) > +static bool __init dict_repeat(struct dictionary *dict, uint32_t *len, uint32_t dist) > { > size_t back; > uint32_t left; > @@ -463,7 +463,7 @@ static void __init rc_reset(struct rc_dec *rc) > * Read the first five initial bytes into rc->code if they haven't been > * read already. (Yes, the first byte gets completely ignored.) > */ > -static bool_t __init rc_read_init(struct rc_dec *rc, struct xz_buf *b) > +static bool __init rc_read_init(struct rc_dec *rc, struct xz_buf *b) > { > while (rc->init_bytes_left > 0) { > if (b->in_pos == b->in_size) > @@ -477,7 +477,7 @@ static bool_t __init rc_read_init(struct rc_dec *rc, struct xz_buf *b) > } > > /* Return true if there may not be enough input for the next decoding loop. */ > -static inline bool_t __init rc_limit_exceeded(const struct rc_dec *rc) > +static inline bool __init rc_limit_exceeded(const struct rc_dec *rc) > { > return rc->in_pos > rc->in_limit; > } > @@ -486,7 +486,7 @@ static inline bool_t __init rc_limit_exceeded(const struct rc_dec *rc) > * Return true if it is possible (from point of view of range decoder) that > * we have reached the end of the LZMA chunk. > */ > -static inline bool_t __init rc_is_finished(const struct rc_dec *rc) > +static inline bool __init rc_is_finished(const struct rc_dec *rc) > { > return rc->code == 0; > } > @@ -736,7 +736,7 @@ static void __init lzma_rep_match(struct xz_dec_lzma2 *s, uint32_t pos_state) > } > > /* LZMA decoder core */ > -static bool_t __init lzma_main(struct xz_dec_lzma2 *s) > +static bool __init lzma_main(struct xz_dec_lzma2 *s) > { > uint32_t pos_state; > > @@ -814,7 +814,7 @@ static void __init lzma_reset(struct xz_dec_lzma2 *s) > * from the decoded lp and pb values. On success, the LZMA decoder state is > * reset and true is returned. > */ > -static bool_t __init lzma_props(struct xz_dec_lzma2 *s, uint8_t props) > +static bool __init lzma_props(struct xz_dec_lzma2 *s, uint8_t props) > { > if (props > (4 * 5 + 4) * 9 + 8) > return false; > @@ -861,7 +861,7 @@ static bool_t __init lzma_props(struct xz_dec_lzma2 *s, uint8_t props) > * function. We decode a few bytes from the temporary buffer so that we can > * continue decoding from the caller-supplied input buffer again. > */ > -static bool_t __init lzma2_lzma(struct xz_dec_lzma2 *s, struct xz_buf *b) > +static bool __init lzma2_lzma(struct xz_dec_lzma2 *s, struct xz_buf *b) > { > size_t in_avail; > uint32_t tmp; > diff --git a/xen/common/xz/dec_stream.c b/xen/common/xz/dec_stream.c > index b91d8362c19c..caea4f2596a1 100644 > --- a/xen/common/xz/dec_stream.c > +++ b/xen/common/xz/dec_stream.c > @@ -55,7 +55,7 @@ struct xz_dec { > * True if the next call to xz_dec_run() is allowed to return > * XZ_BUF_ERROR. > */ > - bool_t allow_buf_error; > + bool allow_buf_error; > > /* Information stored in Block Header */ > struct { > @@ -132,7 +132,7 @@ struct xz_dec { > > #ifdef XZ_DEC_BCJ > struct xz_dec_bcj *bcj; > - bool_t bcj_active; > + bool bcj_active; > #endif > }; > > @@ -154,7 +154,7 @@ static const uint8_t check_sizes[16] = { > * to copy into s->temp.buf. Return true once s->temp.pos has reached > * s->temp.size. > */ > -static bool_t __init fill_temp(struct xz_dec *s, struct xz_buf *b) > +static bool __init fill_temp(struct xz_dec *s, struct xz_buf *b) > { > size_t copy_size = min_t(size_t, > b->in_size - b->in_pos, s->temp.size - s->temp.pos); > @@ -367,7 +367,7 @@ static enum xz_ret __init crc32_validate(struct xz_dec *s, struct xz_buf *b) > * Skip over the Check field when the Check ID is not supported. > * Returns true once the whole Check field has been skipped over. > */ > -static bool_t __init check_skip(struct xz_dec *s, struct xz_buf *b) > +static bool __init check_skip(struct xz_dec *s, struct xz_buf *b) > { > while (s->pos < check_sizes[s->check_type]) { > if (b->in_pos == b->in_size) > diff --git a/xen/common/xz/lzma2.h b/xen/common/xz/lzma2.h > index e0ef42e880a0..06a7edb4d720 100644 > --- a/xen/common/xz/lzma2.h > +++ b/xen/common/xz/lzma2.h > @@ -90,7 +90,7 @@ static inline void __init lzma_state_short_rep(enum lzma_state *state) > } > > /* Test if the previous symbol was a literal. */ > -static inline bool_t __init lzma_state_is_literal(enum lzma_state state) > +static inline bool __init lzma_state_is_literal(enum lzma_state state) > { > return state < LIT_STATES; > } > diff --git a/xen/common/xz/private.h b/xen/common/xz/private.h > index 511343fcc234..e6814250e84f 100644 > --- a/xen/common/xz/private.h > +++ b/xen/common/xz/private.h > @@ -237,7 +237,7 @@ XZ_EXTERN void xz_dec_lzma2_end(struct xz_dec_lzma2 *s); > * Allocate memory for BCJ decoders. xz_dec_bcj_reset() must be used before > * calling xz_dec_bcj_run(). > */ > -XZ_EXTERN struct xz_dec_bcj *xz_dec_bcj_create(bool_t single_call); > +XZ_EXTERN struct xz_dec_bcj *xz_dec_bcj_create(bool single_call); > > /* > * Decode the Filter ID of a BCJ filter. This implementation doesn't > -- > 2.30.2 > --8323329-1067518987-1687310408=:897208-- From xen-devel-bounces@lists.xenproject.org Wed Jun 21 01:26:46 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 01:26:46 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552428.862506 (Exim 4.92) (envelope-from ) id 1qBmc9-00009K-Iw; Wed, 21 Jun 2023 01:26:29 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552428.862506; Wed, 21 Jun 2023 01:26:29 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBmc9-00009D-G7; Wed, 21 Jun 2023 01:26:29 +0000 Received: by outflank-mailman (input) for mailman id 552428; Wed, 21 Jun 2023 01:26:27 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBmc7-000097-Lq for xen-devel@lists.xenproject.org; Wed, 21 Jun 2023 01:26:27 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id a2244ed6-0fd2-11ee-8611-37d641c3527e; Wed, 21 Jun 2023 03:26:24 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id C942961236; Wed, 21 Jun 2023 01:26:22 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 02AB1C433C0; Wed, 21 Jun 2023 01:26:20 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: a2244ed6-0fd2-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1687310782; bh=8gOIcCikqQLJ+3hXgXoSfZfuzAku+1OSc/K2C4b3ovA=; h=From:To:Cc:Subject:Date:From; b=cfRtoYRUsUWFUhPitkvkP16MCpbkfrH4r7+8DJLuQlqcpYs3y5hwj7wWcGmcstNlE ghN5PA0e0iEFZ3vPZQRX3gUW3h/2wyNTrSd1l6KqCMpJP+pqfXM1gRDmkdhNgYbayl GrLFdRB23cQo/Kan4aj/fzV8pGbWIvsx/mimTWLQNInyA3cZ2118wtFH6uKLs6uQTf CNyiZ6w3R/+kK3gLh1p/pHtGPnYgqXHoRD14X1bUtwMUy6iRp/bm9IADaQGMCaUQYJ meG8xxKJG7Q1H47sWYu4T3uvkVangQAkBuGPj4y3j6ijJo/AypfWDXGSPr2f46Bcz4 QRYSlaoRr1tuw== From: Stefano Stabellini To: xen-devel@lists.xenproject.org Cc: sstabellini@kernel.org, jbeulich@suse.com, julien@xen.org, andrew.cooper3@citrix.com, roger.pau@citrix.com, bertrand.marquis@arm.com, roberto.bagnara@bugseng.com, Stefano Stabellini Subject: [PATCH] docs/misra: add Rules 8.2, 8.3, 8.14 Date: Tue, 20 Jun 2023 18:26:18 -0700 Message-Id: <20230621012618.2661337-1-sstabellini@kernel.org> X-Mailer: git-send-email 2.25.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit From: Stefano Stabellini Signed-off-by: Stefano Stabellini --- docs/misra/rules.rst | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/docs/misra/rules.rst b/docs/misra/rules.rst index 11b9c42b70..9caf43968c 100644 --- a/docs/misra/rules.rst +++ b/docs/misra/rules.rst @@ -213,6 +213,17 @@ maintainers if you want to suggest a change. - Types shall be explicitly specified - + * - `Rule 8.2 `_ + - Required + - Function types shall be in prototype form with named parameters + - + + * - `Rule 8.3 `_ + - Required + - All declarations of an object or function shall use the same + names and type qualifiers + - + * - `Rule 8.4 `_ - Required - A compatible declaration shall be visible when an object or @@ -248,6 +259,11 @@ maintainers if you want to suggest a change. enumeration constant shall be unique - + * - `Rule 8.14 `_ + - Required + - The restrict type qualifier shall not be used + - + * - `Rule 9.1 `_ - Mandatory - The value of an object with automatic storage duration shall not -- 2.25.1 From xen-devel-bounces@lists.xenproject.org Wed Jun 21 02:24:20 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 02:24:20 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552433.862517 (Exim 4.92) (envelope-from ) id 1qBnVw-0006h2-Qy; Wed, 21 Jun 2023 02:24:08 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552433.862517; Wed, 21 Jun 2023 02:24:08 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBnVw-0006gv-LE; Wed, 21 Jun 2023 02:24:08 +0000 Received: by outflank-mailman (input) for mailman id 552433; Wed, 21 Jun 2023 02:24:07 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBnVv-0006gl-RB; Wed, 21 Jun 2023 02:24:07 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBnVv-0008VD-KN; Wed, 21 Jun 2023 02:24:07 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBnVv-0006Od-84; Wed, 21 Jun 2023 02:24:07 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qBnVv-0007iA-6d; Wed, 21 Jun 2023 02:24:07 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=kajT8b6gRohpljGKdKtuOa1ruZ+hbliRwKNg7TurW78=; b=YMmuglUsc89mPSEdyV4ODgft1O 04lA0i1LfGCB7jWCmUSCWxsiTGK0kz1iQEla5vXWdpJYcwjHvpngaJUsvW0dlx1PARPnyc3N0ya+S PvuE/c5n2BRLoJJJ/Q2wvP69afn34Hq79nMXfUb2FMLU8YECxE5k+j/3FjuUZzXORIx4=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [linux-linus test] 181520: trouble: blocked/broken/fail/pass X-Osstest-Failures: linux-linus:build-armhf::broken:regression linux-linus:build-armhf:host-install(4):broken:regression linux-linus:test-amd64-amd64-libvirt-qcow2:guest-start/debian.repeat:fail:heisenbug linux-linus:test-amd64-amd64-xl-vhd:guest-start.2:fail:heisenbug linux-linus:test-armhf-armhf-examine:build-check(1):blocked:nonblocking linux-linus:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking linux-linus:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking linux-linus:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking linux-linus:test-armhf-armhf-xl:build-check(1):blocked:nonblocking linux-linus:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking linux-linus:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking linux-linus:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking linux-linus:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking linux-linus:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking linux-linus:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking linux-linus:build-armhf-libvirt:build-check(1):blocked:nonblocking linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-raw:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-qcow2:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: linux=692b7dc87ca6d55ab254f8259e6f970171dc9d01 X-Osstest-Versions-That: linux=6c538e1adbfc696ac4747fb10d63e704344f763d From: osstest service owner Date: Wed, 21 Jun 2023 02:24:07 +0000 flight 181520 linux-linus real [real] http://logs.test-lab.xenproject.org/osstest/logs/181520/ Failures and problems with tests :-( Tests which did not succeed and are blocking, including tests which could not be run: build-armhf broken build-armhf 4 host-install(4) broken REGR. vs. 180278 Tests which are failing intermittently (not blocking): test-amd64-amd64-libvirt-qcow2 19 guest-start/debian.repeat fail pass in 181511 test-amd64-amd64-xl-vhd 22 guest-start.2 fail pass in 181511 Tests which did not succeed, but are not blocking: test-armhf-armhf-examine 1 build-check(1) blocked n/a test-armhf-armhf-libvirt 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-qcow2 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-raw 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a test-armhf-armhf-xl-arndale 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit1 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-multivcpu 1 build-check(1) blocked n/a test-armhf-armhf-xl-rtds 1 build-check(1) blocked n/a test-armhf-armhf-xl-vhd 1 build-check(1) blocked n/a build-armhf-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 180278 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 180278 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 180278 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 180278 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 180278 test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qcow2 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass version targeted for testing: linux 692b7dc87ca6d55ab254f8259e6f970171dc9d01 baseline version: linux 6c538e1adbfc696ac4747fb10d63e704344f763d Last test of basis 180278 2023-04-16 19:41:46 Z 65 days Failing since 180281 2023-04-17 06:24:36 Z 64 days 122 attempts Testing same since 181511 2023-06-20 00:43:20 Z 1 days 2 attempts ------------------------------------------------------------ 2742 people touched revisions under test, not listing them all jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf broken build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt blocked build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl blocked test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-freebsd11-amd64 pass test-amd64-amd64-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale blocked test-amd64-amd64-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 blocked test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 blocked test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine blocked test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt blocked test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu blocked test-amd64-amd64-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-amd64-pygrub pass test-amd64-amd64-libvirt-qcow2 fail test-armhf-armhf-libvirt-qcow2 blocked test-amd64-amd64-libvirt-raw pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw blocked test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-amd64-xl-vhd fail test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd blocked ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary broken-job build-armhf broken broken-step build-armhf host-install(4) broken-job build-armhf broken Not pushing. (No revision log; it would be 348536 lines long.) From xen-devel-bounces@lists.xenproject.org Wed Jun 21 03:03:45 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 03:03:45 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552440.862527 (Exim 4.92) (envelope-from ) id 1qBo83-0002cG-P4; Wed, 21 Jun 2023 03:03:31 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552440.862527; Wed, 21 Jun 2023 03:03:31 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBo83-0002c9-KB; Wed, 21 Jun 2023 03:03:31 +0000 Received: by outflank-mailman (input) for mailman id 552440; Wed, 21 Jun 2023 03:03:30 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBo82-0002bz-QD; Wed, 21 Jun 2023 03:03:30 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBo82-0000st-Gw; Wed, 21 Jun 2023 03:03:30 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBo82-0007MQ-1p; Wed, 21 Jun 2023 03:03:30 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qBo82-0005aU-1N; Wed, 21 Jun 2023 03:03:30 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=Hi21CVvgA02r3r9upF8NRbOMXcNOYQzBBrym7AHQQic=; b=wZBS+HixOu13zay/5JcWM2nHE0 thNPKttMSzLAsTPZ3Rfk2Jh7T8J/E1ex0LxLqnpybmCnQHaFTivLruqjOrV9uigDflpOPQnH7+suc DmnKoJ/aushdZV7LE15Onn7LMk0fTiqzLmndjsWQVQi1ZICs7WrBzBSfyaaKDNelFxC4=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [qemu-mainline test] 181526: regressions - trouble: blocked/broken/fail/pass X-Osstest-Failures: qemu-mainline:build-armhf::broken:regression qemu-mainline:build-armhf:host-install(4):broken:regression qemu-mainline:build-amd64:xen-build:fail:regression qemu-mainline:build-amd64-xsm:xen-build:fail:regression qemu-mainline:build-i386:xen-build:fail:regression qemu-mainline:build-i386-xsm:xen-build:fail:regression qemu-mainline:build-arm64:xen-build:fail:regression qemu-mainline:build-arm64-xsm:xen-build:fail:regression qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-i386:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:build-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:build-arm64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:build-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:build-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pygrub:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking X-Osstest-Versions-This: qemuu=cab35c73be9d579db105ef73fa8a60728a890098 X-Osstest-Versions-That: qemuu=6972ef1440a9d685482d78672620a7482f2bd09a From: osstest service owner Date: Wed, 21 Jun 2023 03:03:30 +0000 flight 181526 qemu-mainline real [real] http://logs.test-lab.xenproject.org/osstest/logs/181526/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-armhf broken build-armhf 4 host-install(4) broken REGR. vs. 180691 build-amd64 6 xen-build fail REGR. vs. 180691 build-amd64-xsm 6 xen-build fail REGR. vs. 180691 build-i386 6 xen-build fail REGR. vs. 180691 build-i386-xsm 6 xen-build fail REGR. vs. 180691 build-arm64 6 xen-build fail REGR. vs. 180691 build-arm64-xsm 6 xen-build fail REGR. vs. 180691 Tests which did not succeed, but are not blocking: test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-xl-xsm 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-raw 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-xsm 1 build-check(1) blocked n/a test-arm64-arm64-xl 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit1 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit2 1 build-check(1) blocked n/a test-arm64-arm64-xl-thunderx 1 build-check(1) blocked n/a test-arm64-arm64-xl-vhd 1 build-check(1) blocked n/a test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a test-armhf-armhf-libvirt 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-qcow2 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-raw 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a test-armhf-armhf-xl-arndale 1 build-check(1) blocked n/a test-armhf-armhf-xl-multivcpu 1 build-check(1) blocked n/a test-armhf-armhf-xl-rtds 1 build-check(1) blocked n/a test-armhf-armhf-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-amd 1 build-check(1) blocked n/a test-amd64-i386-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-raw 1 build-check(1) blocked n/a test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-i386 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-amd64 1 build-check(1) blocked n/a test-amd64-coresched-i386-xl 1 build-check(1) blocked n/a test-amd64-coresched-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-xsm 1 build-check(1) blocked n/a build-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-shadow 1 build-check(1) blocked n/a test-amd64-amd64-xl-rtds 1 build-check(1) blocked n/a build-arm64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a build-armhf-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a build-i386-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-amd 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-pair 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-qcow2 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-vhd 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvshim 1 build-check(1) blocked n/a test-amd64-amd64-pair 1 build-check(1) blocked n/a test-amd64-amd64-pygrub 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-intel 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd11-amd64 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd12-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-multivcpu 1 build-check(1) blocked n/a test-amd64-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit1 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit1 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-intel 1 build-check(1) blocked n/a test-amd64-i386-xl 1 build-check(1) blocked n/a test-amd64-i386-xl-pvshim 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a version targeted for testing: qemuu cab35c73be9d579db105ef73fa8a60728a890098 baseline version: qemuu 6972ef1440a9d685482d78672620a7482f2bd09a Last test of basis 180691 2023-05-17 10:45:22 Z 34 days Failing since 180699 2023-05-18 07:21:24 Z 33 days 120 attempts Testing same since 181526 2023-06-20 20:42:14 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Afonso Bordado Akihiko Odaki Akihiro Suda Alex Bennée Alex Williamson Alexander Bulekov Alexander Graf Alexander Ivanov Alistair Francis Anastasia Belova Andrea Bolognani Andreas Schwab Andrew Jeffery Ani Sinha Ani Sinha Anthony PERARD Anton Johansson Antonio Caggiano BALATON Zoltan Bastian Koppelmann Bernhard Beschow Bin Meng Brian Cain Brice Goglin Camilla Conte Carlos Santos Christian Schoenebeck Chuck Zmudzinski Cindy Lu Clément Chigot Corey Minyard Cornelia Huck Cédric Le Goater Cédric Le Goater Daniel Henrique Barboza Daniel Henrique Barboza Daniel P. Berrangé Daniil Kovalev David Hildenbrand David Woodhouse Emanuele Giuseppe Esposito Enze Li Eric Auger Eric Blake Eric DeVolder Erico Nunes Eugenio Pérez Fabiano Rosas Fan Ni Fiona Ebner Francesco Cagnin Francisco Iglesias Frederic Barrat Gavin Shan Gregory Price Gregory Price Guenter Roeck Hanna Czenczek Hao Zeng Hawkins Jiawei Himanshu Chauhan Igor Mammedov Ilya Leoshkevich Ira Weiny Ivan Klokov Jagannathan Raman Jason Wang Jean-Louis Dupond Jean-Philippe Brucker Jiajie Chen Jiaxun Yang Joao Martins John Snow Jonathan Cameron Juan Quintela Junqiang Wang Kevin Wolf Laurent Vivier Lei Yang Leonardo Bras Maksim Davydov Marc-André Lureau Marcin Juszkiewicz Marco Liebel Mark Cave-Ayland Markus Armbruster Martin Kaiser Matheus Tavares Bernardino Mattias Nissler Mauro Matteo Cascella Max Fritz Mayuresh Chitale Michael S. Tsirkin Michael Tokarev Michal Privoznik Milan Zamazal Mostafa Saleh Nicholas Piggin Nicolas Saenz Julienne Niek Linnenbank Niklas Cassel Ninad Palsule Palmer Dabbelt Paolo Bonzini Patrick Venture Peter Maydell Peter Xu Philippe Mathieu-Daudé Philippe Mathieu-Daudé qianfan Zhao Raghu H Rene Engel Richard Henderson Richard Purdie Ricky Zhou Ryan Wendland Sebastian Ott Sergey Kambalin Sergio Lopez Sid Manning Song Gao Stefan Hajnoczi Stefano Garzarella Stefano Stabellini Stefano Stabellini Steve Sistare Sunil V L Taylor Simpson Thomas Huth Thomas Weißschuh Tianrui Zhao timothee.cocault@gmail.com Timothée Cocault Tommy Wu Vikram Garhwal Viktor Prutyanov Vitaly Cheptsov Vivek Kasireddy Vladimir Sementsov-Ogievskiy Volker Rümelin Weiwei Li Xiao Wang Xinyu Li Yin Wang Zeng Hao Zhenyu Zhang Zhenzhong Duan Zhuojia Shen jobs: build-amd64-xsm fail build-arm64-xsm fail build-i386-xsm fail build-amd64 fail build-arm64 fail build-armhf broken build-i386 fail build-amd64-libvirt blocked build-arm64-libvirt blocked build-armhf-libvirt blocked build-i386-libvirt blocked build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl blocked test-amd64-coresched-amd64-xl blocked test-arm64-arm64-xl blocked test-armhf-armhf-xl blocked test-amd64-i386-xl blocked test-amd64-coresched-i386-xl blocked test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-i386-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-amd64-libvirt-xsm blocked test-arm64-arm64-libvirt-xsm blocked test-amd64-i386-libvirt-xsm blocked test-amd64-amd64-xl-xsm blocked test-arm64-arm64-xl-xsm blocked test-amd64-i386-xl-xsm blocked test-amd64-amd64-qemuu-nested-amd blocked test-amd64-amd64-xl-pvhv2-amd blocked test-amd64-i386-qemuu-rhel6hvm-amd blocked test-amd64-amd64-dom0pvh-xl-amd blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-freebsd10-amd64 blocked test-amd64-amd64-qemuu-freebsd11-amd64 blocked test-amd64-amd64-qemuu-freebsd12-amd64 blocked test-amd64-amd64-xl-qemuu-ovmf-amd64 blocked test-amd64-i386-xl-qemuu-ovmf-amd64 blocked test-amd64-amd64-xl-qemuu-win7-amd64 blocked test-amd64-i386-xl-qemuu-win7-amd64 blocked test-amd64-amd64-xl-qemuu-ws16-amd64 blocked test-amd64-i386-xl-qemuu-ws16-amd64 blocked test-armhf-armhf-xl-arndale blocked test-amd64-amd64-xl-credit1 blocked test-arm64-arm64-xl-credit1 blocked test-armhf-armhf-xl-credit1 blocked test-amd64-amd64-xl-credit2 blocked test-arm64-arm64-xl-credit2 blocked test-armhf-armhf-xl-credit2 blocked test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-freebsd10-i386 blocked test-amd64-amd64-qemuu-nested-intel blocked test-amd64-amd64-xl-pvhv2-intel blocked test-amd64-i386-qemuu-rhel6hvm-intel blocked test-amd64-amd64-dom0pvh-xl-intel blocked test-amd64-amd64-libvirt blocked test-armhf-armhf-libvirt blocked test-amd64-i386-libvirt blocked test-amd64-amd64-xl-multivcpu blocked test-armhf-armhf-xl-multivcpu blocked test-amd64-amd64-pair blocked test-amd64-i386-pair blocked test-amd64-amd64-libvirt-pair blocked test-amd64-i386-libvirt-pair blocked test-amd64-amd64-xl-pvshim blocked test-amd64-i386-xl-pvshim blocked test-amd64-amd64-pygrub blocked test-armhf-armhf-libvirt-qcow2 blocked test-amd64-amd64-xl-qcow2 blocked test-arm64-arm64-libvirt-raw blocked test-armhf-armhf-libvirt-raw blocked test-amd64-i386-libvirt-raw blocked test-amd64-amd64-xl-rtds blocked test-armhf-armhf-xl-rtds blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-amd64-xl-shadow blocked test-amd64-i386-xl-shadow blocked test-arm64-arm64-xl-thunderx blocked test-amd64-amd64-libvirt-vhd blocked test-arm64-arm64-xl-vhd blocked test-armhf-armhf-xl-vhd blocked test-amd64-i386-xl-vhd blocked ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary broken-job build-armhf broken broken-step build-armhf host-install(4) Not pushing. (No revision log; it would be 20139 lines long.) From xen-devel-bounces@lists.xenproject.org Wed Jun 21 04:21:29 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 04:21:29 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552449.862536 (Exim 4.92) (envelope-from ) id 1qBpL9-0002VU-EE; Wed, 21 Jun 2023 04:21:07 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552449.862536; Wed, 21 Jun 2023 04:21:07 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBpL9-0002VN-BE; Wed, 21 Jun 2023 04:21:07 +0000 Received: by outflank-mailman (input) for mailman id 552449; Wed, 21 Jun 2023 04:21:06 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBpL8-0002VD-Qe; Wed, 21 Jun 2023 04:21:06 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBpL8-0002oq-Kg; Wed, 21 Jun 2023 04:21:06 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBpL8-0003ZL-BO; Wed, 21 Jun 2023 04:21:06 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qBpL8-0000sf-Ap; Wed, 21 Jun 2023 04:21:06 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=x3td42QOuj8dnZ0rDXHff7BvvBIYFZ5vrux+/XG69Bo=; b=xcYxOs6ea2JSjI/AiT9iBBDoGf EiIzsktMdnoUAqUkmaBgjzp709gg6eCJCr3RJHe/NqFXEYBAXfBhELBYmu1zZH1hWQigkgQYPzPxg H6oSnd9hH6UmfkmmnRjef1nhdFgLCMldqc17FL8mF6/S/sLkU5b7kR/uKZAz72puAJkY=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable-smoke test] 181527: trouble: blocked/broken/pass X-Osstest-Failures: xen-unstable-smoke:build-armhf::broken:regression xen-unstable-smoke:build-armhf:host-install(4):broken:regression xen-unstable-smoke:test-armhf-armhf-xl:build-check(1):blocked:nonblocking xen-unstable-smoke:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking xen-unstable-smoke:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking xen-unstable-smoke:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: xen=a6120e3fc8fd90f3ed638c6f7a573bfb534af154 X-Osstest-Versions-That: xen=7a25a1501ca941c3e01b0c4e624ace05417f1587 From: osstest service owner Date: Wed, 21 Jun 2023 04:21:06 +0000 flight 181527 xen-unstable-smoke real [real] http://logs.test-lab.xenproject.org/osstest/logs/181527/ Failures and problems with tests :-( Tests which did not succeed and are blocking, including tests which could not be run: build-armhf broken build-armhf 4 host-install(4) broken REGR. vs. 181476 Tests which did not succeed, but are not blocking: test-armhf-armhf-xl 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass version targeted for testing: xen a6120e3fc8fd90f3ed638c6f7a573bfb534af154 baseline version: xen 7a25a1501ca941c3e01b0c4e624ace05417f1587 Last test of basis 181476 2023-06-17 04:00:28 Z 4 days Failing since 181504 2023-06-19 11:00:26 Z 1 days 5 attempts Testing same since 181527 2023-06-20 21:00:31 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Alistair Francis Andrew Cooper Anthony PERARD Henry Wang Jan Beulich Julien Grall Michal Orzel Oleksii Kurochko Roger Pau Monné Stefano Stabellini jobs: build-arm64-xsm pass build-amd64 pass build-armhf broken build-amd64-libvirt pass test-armhf-armhf-xl blocked test-arm64-arm64-xl-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-libvirt pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary broken-job build-armhf broken broken-step build-armhf host-install(4) Not pushing. ------------------------------------------------------------ commit a6120e3fc8fd90f3ed638c6f7a573bfb534af154 Author: Andrew Cooper Date: Wed May 10 20:21:12 2023 +0100 x86: Use printk_once() instead of opencoding it Technically our helper post-dates all of these examples, but it's good cleanup nevertheless. None of these examples should be using fully locked test_and_set_bool() in the first place. No functional change. Signed-off-by: Andrew Cooper Reviewed-by: Jan Beulich Reviewed-by: Kevin Tian commit e5ba5165cae654f4bb5023b74008f57b5649979d Author: Andrew Cooper Date: Tue Jun 13 17:06:47 2023 +0100 xen/evtchn: Purge ERROR_EXIT{,_DOM}() These interfere with code legibility by hiding control flow. Expand and drop them. * Rearrange the order of actions to write into rc, then render rc in the gdprintk(). * Drop redundant "rc = rc" assignments * Switch to using %pd for rendering domains As a side effect, this fixes several violations of MISRA rule 2.1 (dead code - the while() following a goto). No functional change. Signed-off-by: Andrew Cooper Reviewed-by: Julien Grall commit 42473bae2394b6602372ab8b83a9ca294b1e40f4 Author: Michal Orzel Date: Wed Jun 7 11:27:27 2023 +0200 xen/arm: pl011: Add SBSA UART device-tree support We already have all the bits necessary in PL011 driver to support SBSA UART thanks to commit 032ea8c736d10f02672863c6e369338f948f7ed8 that enabled it for ACPI. Plumb in the remaining part for device-tree boot: - add arm,sbsa-uart compatible to pl011_dt_match (no need for a separate struct and DT_DEVICE_START as SBSA is a subset of PL011), - from pl011_dt_uart_init(), check for SBSA UART compatible to determine the UART type in use. Signed-off-by: Michal Orzel Reviewed-by: Henry Wang Reviewed-by: Stefano Stabellini Tested-by: Henry Wang commit 47e3941d2eee347e9c41b311d19048c41e1b33e3 Author: Michal Orzel Date: Wed Jun 7 11:27:26 2023 +0200 xen/arm: pl011: Use correct accessors At the moment, we use 32-bit only accessors (i.e. readl/writel) to match the SBSA v2.x requirement. This should not be the default case for normal PL011 where accesses shall be 8/16-bit (max register size is 16-bit). There are however implementations of this UART that can only handle 32-bit MMIO. This is advertised by dt property "reg-io-width" set to 4. Introduce new struct pl011 member mmio32 and replace pl011_{read/write} macros with static inline helpers that use 32-bit or 16-bit accessors (largest-common not to end up using different ones depending on the actual register size) according to mmio32 value. By default this property is set to false, unless: - reg-io-width is specified with value 4, - SBSA UART is in use. For now, no changes done for ACPI due to lack of testing possibilities (i.e. current behavior maintained resulting in 32-bit accesses). Signed-off-by: Michal Orzel Tested-by: Henry Wang Reviewed-by: Stefano Stabellini commit 4fa2272458114b5e4872f835b803909333d5ccd4 Author: Michal Orzel Date: Wed Jun 7 11:27:25 2023 +0200 xen/arm: debug-pl011: Add support for 32-bit only MMIO There are implementations of PL011 that can only handle 32-bit accesses as oppose to the normal behavior where accesses are 8/16-bit wide. This is usually advertised by setting a dt property 'reg-io-width' to 4. Introduce CONFIG_EARLY_UART_PL011_MMIO32 Kconfig option to be able to enable the use of 32-bit only accessors in PL011 early printk code. Define macros PL011_{STRH,STRB,LDRH} to distinguish accessors for normal case from 32-bit MMIO one and use them in arm32/arm64 pl011 early printk code. Update documentation accordingly. Signed-off-by: Michal Orzel Tested-by: Henry Wang Reviewed-by: Stefano Stabellini commit 655d0798d29b7ac490444b2daf9bffa16d41e822 Author: Michal Orzel Date: Wed Jun 7 11:27:24 2023 +0200 xen/arm: debug-pl011: Use correct accessors Although most PL011 UARTs can cope with 32-bit accesses, some of the old legacy ones might not. PL011 registers are 8/16-bit wide and this shall be perceived as the normal behavior. Modify early printk pl011 code for arm32/arm64 to use the correct accessors depending on the register size (refer ARM DDI 0183G, Table 3.1). Signed-off-by: Michal Orzel Tested-by: Henry Wang Reviewed-by: Stefano Stabellini commit 314a54c1c2805883f50582c40308554a102fdb8a Author: Stefano Stabellini Date: Thu Jun 15 14:27:16 2023 -0700 xen/misra: add rules 1.4 and 2.1 Also add a comment at the top of the file to say rules.rst could be changed. Signed-off-by: Stefano Stabellini Reviewed-by: Bertrand Marquis Reviewed-by: Luca Fancellu commit d95f436c7dc6ccee68e1b77a3b01476ef41add55 Author: Stefano Stabellini Date: Thu Jun 15 14:19:22 2023 -0700 docs/misra: new rules addition For Dir 1.1, a document describing all implementation-defined behaviour (i.e. gcc-specific behavior) will be added to docs/misra, also including implementation-specific (gcc-specific) appropriate types for bit-field relevant to Rule 6.1. Rule 21.21 is lacking an example on gitlab but the rule is straightforward: we don't use stdlib at all in Xen. Signed-off-by: Stefano Stabellini Reviewed-by: Michal Orzel Reviewed-by: Bertrand Marquis commit 43e863a02d81f5fff32763b23d2a39f041f7e62b Author: Andrew Cooper Date: Fri Jun 16 17:28:21 2023 +0100 x86/boot: Clean up early error asm The asm forming early error handling is a mix of local and non-local symbols, and has some pointless comments. Drop the "# Error message" comments, tweaking the style on modified lines, and make the symbols local. However, leave behind one real symbol so this logic disassembles nicely without merging in to acpi_boot_init(), which is the thing that happens to be immediately prior in my build. No functional change. Signed-off-by: Andrew Cooper Reviewed-by: Jan Beulich commit 3a07da55e63d110851c36b0dae32a5dcf00c54b9 Author: Oleksii Kurochko Date: Mon Jun 19 15:47:37 2023 +0200 xen/riscv: introduce reset_stack() function The reason for reset_stack() introduction is that stack should be reset twice: 1. Before jumping to C world at the start of _start() function. 2. After jumping from 1:1 mapping world. Signed-off-by: Oleksii Kurochko Reviewed-by: Alistair Francis commit 652ccd1f4afa56b15cb4863d545deac7d1effb30 Author: Oleksii Kurochko Date: Mon Jun 19 15:47:23 2023 +0200 xen/riscv: add .sbss section to .bss Sometimes variables are located in .sbss section but it won't be mapped after MMU will be enabled. To avoid MMU failures .sbss should be mapped Signed-off-by: Oleksii Kurochko Acked-by: Alistair Francis commit c6df21062beb9a9bc29a3a2ffb652e0bfa185c3a Author: Anthony PERARD Date: Mon Jun 19 15:47:05 2023 +0200 Config.mk: update OVMF to edk2-stable202305 Update to OVMF's latest stable tag. This is been prompt by trying to build Xen on Debian Bookworm, where edk2-stable202108 doesn't build. Also, it's been too long since the last update. Signed-off-by: Anthony PERARD Acked-by: Jan Beulich commit 82b28deb25f37e8422b14493a2efa2852638206d Author: Roger Pau Monné Date: Mon Jun 19 15:46:03 2023 +0200 iommu/vtd: fix address translation for leaf entries Fix two issues related to leaf address lookups in VT-d: * When translating an address that falls inside of a superpage in the IOMMU page tables the fetching of the PTE value wasn't masking of the contiguous related data, which caused the returned data to be corrupt as it would contain bits that the caller would interpret as part of the address. * When the requested leaf address wasn't mapped by a superpage the returned value wouldn't have any of the low 12 bits set, thus missing the permission bits expected by the caller. Take the opportunity to also adjust the function comment to note that when returning the full PTE the bits above PADDR_BITS are removed. Fixes: c71e55501a61 ('VT-d: have callers specify the target level for page table walks') Signed-off-by: Roger Pau Monné Reviewed-by: Jan Beulich Reviewed-by: Kevin Tian commit ea613d2367ac9dca3875997034e8f4aff74ab635 Author: Jan Beulich Date: Mon Jun 19 15:45:07 2023 +0200 SUPPORT.md: write down restriction of 32-bit tool stacks Let's try to avoid giving the impression that 32-bit tool stacks are as capable as 64-bit ones. Signed-off-by: Jan Beulich Acked-by: Julien Grall commit a17fd0feb6b6bbe82550f43d70654d894ed377ec Author: Anthony PERARD Date: Mon Jun 19 10:09:32 2023 +0100 automation: Disable QEMU build with Clang older than 10.0 Since QEMU commit 74a1b256d775 ("configure: Bump minimum Clang version to 10.0"), or QEMU v8.0, Clang 10.0 is now the minimum to build QEMU. QEMU 8.0 fails to build on Ubuntu Bionic. Signed-off-by: Anthony PERARD Acked-by: Andrew Cooper (qemu changes not included) From xen-devel-bounces@lists.xenproject.org Wed Jun 21 06:57:22 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 06:57:22 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552456.862547 (Exim 4.92) (envelope-from ) id 1qBrm5-00016Q-6q; Wed, 21 Jun 2023 06:57:05 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552456.862547; Wed, 21 Jun 2023 06:57:05 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBrm5-00016J-3n; Wed, 21 Jun 2023 06:57:05 +0000 Received: by outflank-mailman (input) for mailman id 552456; Wed, 21 Jun 2023 06:57:04 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBrm3-00016D-Pn for xen-devel@lists.xenproject.org; Wed, 21 Jun 2023 06:57:03 +0000 Received: from EUR01-VE1-obe.outbound.protection.outlook.com (mail-ve1eur01on060c.outbound.protection.outlook.com [2a01:111:f400:fe1f::60c]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id d09916f9-1000-11ee-8611-37d641c3527e; Wed, 21 Jun 2023 08:56:58 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by DU2PR04MB8536.eurprd04.prod.outlook.com (2603:10a6:10:2d7::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.23; Wed, 21 Jun 2023 06:56:56 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6500.036; Wed, 21 Jun 2023 06:56:56 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: d09916f9-1000-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=gQ4Tzp7/HkhxUouTNk8m91r1vMLYQXB32+BhgfXcHgwC8+9SJmiVSw5TCQJZVm/DRPsJroJmbiSaOKf8vqoR1QJZg/uH6XtS6J+mWrbpetzAZWKqAn/BCX0gwY3MtAZDv5WnS+YJucBEcNKzpXXCqfoFVgCkIjQrmKVrLQ8L19hNVjwwbNzN3TgwreLfXusCPrczUtkMY3mhwtDCmWozJYAVX9KWN+hUD4Xx/bgpx7Qds3DO8Anq2w49GpF2jOQolrLmHIGL+rfMRywPiwYOWknxDqqyHne4BbxhVKkxetE/FIu+vkARVMmSxtuTPKXTA4FygHzmOQdcoTefZtErAA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=5ioBhKkfk5U4uCJZc2OqCp1mbVbF/nrPLy4/unNVhCs=; b=oYNdA2B4NHUWn1WeIveG5vPKNe9/bqBhVWfWh9+uZ8YjVul2svt0ZBmWrGD88yj+JkRJSPfPL8zDpg1d37LK2Cm4UWMxa1P/oMT9d4SBeO0JbfBuNt+v6VypyMtQdAsr/d/wYB4pA6u7ATQylVftDl1HukR2IWZGrbK5YpVnXpHQAS2DVZnusbSo4C/ryDrbe1MKV0f4K404Ck5epKtouff8/Jtn7dddKpBAy/0pcrRnxgJ/MY5uzhFQhS3XQ8jZ0GJcgbN0rEtYlFcVHvHecr88s+Qp4ykbRv0X4OvmFLVhMQZWxyYgzEtjFfrxiTRiIjirz2CZzbK3EWA5ISkO9g== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=5ioBhKkfk5U4uCJZc2OqCp1mbVbF/nrPLy4/unNVhCs=; b=1WdBODuwWd/9xFUOidQF7VfHG+hLXv7to+UJsodNNdti0+pbF81mpD5L8ls0AHhwNWT/6xjpk+pIt9F+0/IaPTJUKdp8bIt7rJU2L2cV5ESaHz6wkqK2xeYrCfLrGx7cORDEyL/RYUzpWfRWzQxPdEaFrl3+5zOETlobU28oWnuiAn7dFyEs2K7dgFLVxg4t4k7tz9Evd3dlvw+a8st65DJrCDTTLMcKaNGUPIXO5Y8vmSX4tN/DidwAdYZlPSybholiAzynDo/H8UISBTPwetFsim3zJBuvMjnpJ5KClbW1oDoDRRHP6gLvfyqheVC9skZfXVvxe68/vHauvueG2A== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: Date: Wed, 21 Jun 2023 08:56:53 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [XEN PATCH 01/13] xen/x86: fixed violations of MISRA C:2012 Rule 7.2 Content-Language: en-US To: Stefano Stabellini Cc: Simone Ballarin , consulting@bugseng.com, Gianluca Luparini , Andrew Cooper , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , Michal Orzel , Xenia Ragiadakou , Ayan Kumar , xen-devel@lists.xenproject.org References: <5aa3a54af456b8faee681a1d737c361abe89296f.1687250177.git.gianluca.luparini@bugseng.com> From: Jan Beulich In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR3P281CA0161.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:a2::20) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|DU2PR04MB8536:EE_ X-MS-Office365-Filtering-Correlation-Id: c2f8d713-6b4f-40d5-bac6-08db7224b3a9 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: PykteVAV3PXo+86Y+nDIxDXwjjqaS6o8syfVSQJyFDe+w0V8ojdQZKdz3AKS/xTEVjviK1uf/dCmoNIjn2qoTeEvW/qZ+5G95WioDYA5NCn+kEv2sguGFY7DW1OEXsTlvbmaLL4+yEDQz4QqiJUHlnn1m/F8JARHahmDMr0IbVgClxqOi3t+nLwW3IR+rVT44vF8TpSnMCb8PuUxDJl4vZEHawQWOp05j9iXpdjrdAQDCxYNimlqypGJKrFSMKFCaDh2g67e7kHNqbdydsWJ6rR3Vm26MJtUlw6bD1y9Ui7Y5GYwWg5sCVq8HJ0Ky2N8s6+a0WAB4uP0fZ3WXNZKhHUyIrlsK8oqEBEStV1Dyq/NK5LiuGVx+w7FW6G3/JF08aTSloqzrSGNkgi4LaSr4sGFHIcbB3Jgoq160y07z5ETwbi7JYWgHC/GJ4P1U1bc3tnk1TlKDknhTnWPGyTN2sg80G+OvkvqsMuzgSKPjY1sG2bL8X4fdeYXJAEDSkAgF3+DAccPE5NE53wUNMZ2q6GnvJZniz5mO0fMCJPFYg1A50OePgSde4DSP6lN2oMKAPZgl2aqtJfiUyHqNgOXPjBodwfBo3nq4s7DhZpOKblSi8j3CtbL2SrRjHYsKGl2b4qFhv/PSLNWebIcGlhJZg== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(376002)(136003)(366004)(346002)(396003)(39860400002)(451199021)(38100700002)(7416002)(2906002)(83380400001)(31696002)(36756003)(31686004)(86362001)(2616005)(6506007)(53546011)(6512007)(26005)(186003)(6486002)(6666004)(54906003)(478600001)(66556008)(66476007)(6916009)(66946007)(316002)(8936002)(8676002)(5660300002)(41300700001)(4326008)(66899021)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?SjlOWEVDWk9EelRiN3lqTTBTcUlxdGZWcjVYVlJuTnpoRFRCSXRLKy8xVHRD?= =?utf-8?B?TlowU05xNjlsaE9wUzQvUENFZGJ6bExIZVNWZ2NXM1A5VEs4YURKbnVjVHg1?= =?utf-8?B?eTdjNGFzSHAzaHZFMUNVc3RlZHljUi9Xb3JLZ2ZJaCt5WXZuWkJjTTJXdWt4?= =?utf-8?B?MWRSR1E3RVV0TGpVVVNkK1lqN2VpSy9MY1hpR1NaM2l6TG5zbUhlRWNqK0Rr?= =?utf-8?B?dVNVOVNQNzhPVWlqWHAya0YrUDRqbEVRMnNpb0VveXJpK3VlS3A2b1JybGFY?= =?utf-8?B?MzYyczQxR3hWUUY3QnV2R25lMi9OWURMeE9paTJ0UUYzZ0x0eXZ5K1Z2VDN4?= =?utf-8?B?aEtiR2Q2a0IyT1F1TnFzakIvNDhIaHdBWElWMnpIUE1WVnZzQlhBell5YUk3?= =?utf-8?B?TlFmNnRWblo4YkF5azM4cjNFTEFVeStGZFBKWkNIeTJyZFoxeGcvbHFXdExI?= =?utf-8?B?WXl0cS81NUg1N2lWazBYRGZIbFJaWHc5UGhLMGQ3bEFNUXNZWk1iRjEycGp5?= =?utf-8?B?ek9QRjJ6bVBPRVZCbVFSWDc4YUFURkxOVUZhTlNJV1RIWFNCNkhlSVNDUzhQ?= =?utf-8?B?Vm50OXV0K0RlTFFOMndNZ0gyeCs2NFRDT3FzTUgxSGFmQWpncWNISWVJSkM5?= =?utf-8?B?TGMyRi9MYVNnckFkQ3BWK3p5MFRST1B6eW5NaW1XZG9lbWFmRzQrT3A1Zjlk?= =?utf-8?B?SDZWMWJXcjBiZUVOR0FEZ1lJVThBY01aNThQYlpqMWtiUElibmhuUzdLOGZp?= =?utf-8?B?SEcvTXcrU2tDVjN4ZDdRWm93bVgzVFpzeDN6c1NURmtXQzk5L2p4RHJBZ2NE?= =?utf-8?B?VWFYR2hrY04wdWx5OGpDWXZhak1zK2toMXkzNElyMzcxcjlTVnFrOHduQ1dD?= =?utf-8?B?N2FSWit1L1pTc0V4T3VYVkhCQjJXTUZpemE2S1dMQ2JWZWlTZi9YVjMvZHVC?= =?utf-8?B?TE5lSDVRcTREdnVRL3RPTzJYRGoybnl0VkU4bTR1WUZrYWR5VEZhZ2Z1K052?= =?utf-8?B?eHh4Qmx4Y0ZVMGI2KzVmUVhaVDRCZXlvcm5vWUNucE9neXRrbzVDbDhEN3kx?= =?utf-8?B?NXJUVVdEdkpkd1lrK0UwSGJOYVNOR092YURDU0p4SGtxSk1OcFNMUVhOdVE3?= =?utf-8?B?aHpUa0tuM0dWN3JCMXl0SGd2QnY5eFFKMGljTTYxZm5rVC9EbnlpUlRrV3Nl?= =?utf-8?B?Sk9KaDJsZ01Mb25QQWtnUnZrME1Jd0VDS05CQXZBRWZTSkgwL2luYUg1WDR1?= =?utf-8?B?L1JUWGFPb21DaXhUdFhPTEVMdlYxQlk4N2lLQlZSb3JrMWVaUVUrQndnS3VF?= =?utf-8?B?eE1UNVNMNDhqY0xJa3pJekpFdytTWS9CRmFrQ1JKOERIRVgvb3Fadmd6VFVY?= =?utf-8?B?TVBhcjJQWVV2N3Y0ZWZ0VGoyZUNPWG5CTFMyTGdqU1ZESmdoMkVobWRkT0tk?= =?utf-8?B?NW42N1UzMDZJNGVGN3Q1M2g0R29MTTduRzdIaW5qbmRZanQyN0ErVXRrcFJU?= =?utf-8?B?R0dYS0ppQkE2QUZ1RExzVVl0dFhlbzl1YWFBRDBFbzZzQlBoajRkeXRlWWZN?= =?utf-8?B?NlFFR0lrLzFsbXl0cG1wb3BGV0w2SUFrSXRsbE1mQXNyc3IralVOSHFYVlJ0?= =?utf-8?B?eHlvMXIwYVNKZmZhaGowbXZvN05pYUZYVEVYUDFUOGZ3NHhXeGkzenZSaHhH?= =?utf-8?B?TlZvb3lzckhSOUtwOFpJUndnYVFyaWYwcnl3dmM2RGN5WVNUaU9sLzVUUzli?= =?utf-8?B?ekxyMXQvUURZOTkzVnFYRzVTTTY5UWVvY09JS1FZNEJ4eDZrRDBaMExkVnZt?= =?utf-8?B?UkM1RURWQWY0bjJJOFFmZmRRZWlpQ0pRbGJIWnZTd1NtTUpPdExTVUNub0Nx?= =?utf-8?B?M1dQVVF0ZDNuTWV0R3lVSWpTaHNaSkM3OWQ5ZVVIdVUzNXRnbHZtenVyOFc2?= =?utf-8?B?SnE2OTNrSU04a09jSTFydGJDejFDb2YxcEVDMXIvcjNJVWorclB1OTdwVHZK?= =?utf-8?B?b1hQOFRlV29Oa0hWQURuUXBMcFBwOTdZYTFQemlQenk1TXhFaFNIeGNrVFgy?= =?utf-8?B?RmNmd29lMTlEaWpRRjJGZjJUMFFoRWxhc3VEMmNKYmNMQ2VDNy9RUmw2TGFv?= =?utf-8?Q?m3GnVE+/TntbwbkKI3EuOsFDF?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: c2f8d713-6b4f-40d5-bac6-08db7224b3a9 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Jun 2023 06:56:56.3008 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 449GbAXqFHlF1wlNKxFAH45genfnS9ZLIYhoBtvWp5lrmWb0RitGJN9vOO0u6cFZWOLnmHU6cfEs/Z39L05uHA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU2PR04MB8536 On 20.06.2023 22:44, Stefano Stabellini wrote: > On Tue, 20 Jun 2023, Jan Beulich wrote: >> On 20.06.2023 12:34, Simone Ballarin wrote: >>> From: Gianluca Luparini >>> >>> The xen sources contains violations of MISRA C:2012 Rule 7.2 whose headline states: >>> "A "u" or "U" suffix shall be applied to all integer constants that are represented in an unsigned type". >>> >>> I propose to use "U" as a suffix to explicitly state when an integer constant is represented in an unsigned type. >> >> The code adjustments here are certainly fine, but I'd like to ask that >> patch descriptions be written as such. "I propose ..." in particular >> may be okay in an upfront discussion, but for a patch you want to >> describe what the patch does, and why (the latter part you're dealing >> with already). >> >> Furthermore I continue to have trouble with the wording "is represented >> in an unsigned type": As previously pointed out, what type a constant >> is going to be represented in depends on the ABI and eventual variables >> (specifically their types) that the value might then be assigned to, or >> expressions that the value might be used in. A possible future >> architecture with "int" wider than 32 bits would represent all the >> constants touched here in a signed type. I think what is meant instead >> (despite Misra's imo unhelpful wording) is that you add suffixes for >> constants which are meant to have unsigned values (no matter what type >> variable they would be stored in, or what expression they would appear >> in, and hence independent of their eventual representation). >> >> Furthermore the U suffix (as an example) doesn't help at all when the >> value then is assigned to a variable of type long, and long is wider >> than int. The value would then _still_ be represented in a signed type. >> >> Taken together, how about 'Use "U" as a suffix to explicitly state when >> an integer constant is intended to be an unsigned one'? >> >> I expect both remarks will apply throughout the series, so I'm not >> going to repeat them for later patches. > > > Hi Jan, I agree with you. To further help Gianluca undestand better your > suggestion, I think the commit message wants to be: > > > xen/x86/acpi/cpufreq: fixed violations of MISRA C:2012 Rule 7.2 > > The xen sources contains violations of MISRA C:2012 Rule 7.2 whose > headline states: "A "u" or "U" suffix shall be applied to all > integer constants that are represented in an unsigned type". > > Use "U" as a suffix to explicitly state when an integer constant is > intended to be an unsigned one > > For homogeneity, also add the "U" suffix in other cases that the > tool didn't report as violations. > > > I also took the opportunity to make the title unique. Jan, if you are > happy with this wording it could be applied to all patches in this > series (with the titles being made unique). Almost. In the case here perhaps: "x86/cpufreq: fix violations of MISRA C:2012 Rule 7.2". IOW I think subject prefixes shouldn't get too long, and past tense shouldn't be used unless describing an event in the past. As a minor further remark, the nested use of double quotes isn't very nice. When what is to be quoted contains double quotes, I would typically use single quotes around the construct. Jan From xen-devel-bounces@lists.xenproject.org Wed Jun 21 07:04:01 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 07:04:01 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552461.862557 (Exim 4.92) (envelope-from ) id 1qBrsh-0002bQ-TD; Wed, 21 Jun 2023 07:03:55 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552461.862557; Wed, 21 Jun 2023 07:03:55 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBrsh-0002bJ-PL; Wed, 21 Jun 2023 07:03:55 +0000 Received: by outflank-mailman (input) for mailman id 552461; Wed, 21 Jun 2023 07:03:54 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBrsg-0002b9-JE; Wed, 21 Jun 2023 07:03:54 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBrsg-00073O-EP; Wed, 21 Jun 2023 07:03:54 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBrsf-00069l-VQ; Wed, 21 Jun 2023 07:03:54 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qBrsf-00011y-Uw; Wed, 21 Jun 2023 07:03:53 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=qrsd6tjuQYcbGehFk6GX+QUc8Lcw6jX8QwbgOefVUjM=; b=SQLEi5sHElpw4tQMWHRxK1OpTJ ZJLWU2jqmTcgn8xVD08kwk83U6TsSOrr2q0W6tudVknM5mzBkqhsNFnNFcLqbZz9fcS47U921j9jN +YxbAPaKzygRmYt6k5KifNf5nhzxMRbRdcdMuRyJoOkJfV8k5Hwr4cZ2Zrm44qAw+Jv8=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [linux-5.4 test] 181525: trouble: blocked/broken/fail/pass X-Osstest-Failures: linux-5.4:build-armhf::broken:regression linux-5.4:build-armhf:host-install(4):broken:regression linux-5.4:test-amd64-i386-qemuu-rhel6hvm-amd:xen-install:fail:heisenbug linux-5.4:test-amd64-i386-freebsd10-amd64:xen-install:fail:heisenbug linux-5.4:test-amd64-i386-pair:xen-install/src_host:fail:heisenbug linux-5.4:build-armhf-libvirt:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-examine:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-xl:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-amd64-xl-qcow2:guest-start/debian.repeat:fail:nonblocking linux-5.4:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking linux-5.4:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking linux-5.4:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking linux-5.4:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-vhd:hosts-allocate:starved:nonblocking X-Osstest-Versions-This: linux=61a2f83e4762ee0c766f86944e612305f5888bcb X-Osstest-Versions-That: linux=f568a20f058fa1e37069cff4aac4187c1650a0e9 From: osstest service owner Date: Wed, 21 Jun 2023 07:03:53 +0000 flight 181525 linux-5.4 real [real] http://logs.test-lab.xenproject.org/osstest/logs/181525/ Failures and problems with tests :-( Tests which did not succeed and are blocking, including tests which could not be run: build-armhf broken build-armhf 4 host-install(4) broken REGR. vs. 181363 Tests which are failing intermittently (not blocking): test-amd64-i386-qemuu-rhel6hvm-amd 7 xen-install fail in 181508 pass in 181525 test-amd64-i386-freebsd10-amd64 7 xen-install fail pass in 181508 test-amd64-i386-pair 10 xen-install/src_host fail pass in 181508 Tests which did not succeed, but are not blocking: build-armhf-libvirt 1 build-check(1) blocked n/a test-armhf-armhf-examine 1 build-check(1) blocked n/a test-armhf-armhf-libvirt 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-qcow2 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-raw 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a test-armhf-armhf-xl-arndale 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit1 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-multivcpu 1 build-check(1) blocked n/a test-armhf-armhf-xl-rtds 1 build-check(1) blocked n/a test-armhf-armhf-xl-vhd 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 181363 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop fail like 181363 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop fail like 181363 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 181363 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 181363 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 181363 test-amd64-amd64-xl-qcow2 21 guest-start/debian.repeat fail like 181363 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop fail like 181363 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop fail like 181363 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 181363 test-amd64-i386-xl-pvshim 14 guest-start fail never pass test-amd64-i386-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-i386-libvirt 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-amd64-i386-libvirt-raw 14 migrate-support-check fail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass test-arm64-arm64-xl-vhd 3 hosts-allocate starved in 181508 n/a version targeted for testing: linux 61a2f83e4762ee0c766f86944e612305f5888bcb baseline version: linux f568a20f058fa1e37069cff4aac4187c1650a0e9 Last test of basis 181363 2023-06-10 15:39:59 Z 10 days Testing same since 181425 2023-06-14 10:50:49 Z 6 days 12 attempts ------------------------------------------------------------ People who touched revisions under test: Ai Chao Alan Stern Alex Deucher Alexander Sverdlin Arnd Bergmann Bartosz Golaszewski Ben Hutchings Chia-I Wu Chris Paterson (CIP) David Jander David S. Miller David Sterba Dmitry Torokhov Eric Dumazet Fedor Pchelkin Florian Westphal Greg Kroah-Hartman Guenter Roeck Gustavo A. R. Silva Hangyu Hua Harshit Mogalapalli Ilya Dryomov Ismael Ferreras Morezuelas JaimeLiao Jakub Kicinski Jamal Hadi Salim Jens Axboe Jiri Slaby (SUSE) Jon Hunter Josef Bacik Jozsef Kadlecsik Kuniyuki Iwashima Linus Walleij Linux Kernel Functional Testing Luiz Augusto von Dentz Marc Kleine-Budde Mark Brown Martin Hundebøll Maxime Ripard Michael Chan Min Li Miquel Raynal Oleksij Rempel Pablo Neira Ayuso Paolo Abeni Paulo Alcantara (SUSE) Paulo Alcantara Qingfang DENG Randy Dunlap RenHai Rishabh Bhatnagar Ruihan Li Sasha Levin Shuah Khan Simon Wunderlich Somnath Kotur Stefan Ghinea Stephan Gerhold Steve French Sudip Mukherjee Sungwoo Kim Sven Eckelmann Takashi Iwai Tejun Heo Theodore Ts'o Tijs Van Buggenhout Uwe Kleine-König Ville Syrjälä Vladislav Efanov Wolfram Sang Xiubo Li Ying Hsu YouChing Lin Zixuan Fu jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf broken build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt blocked build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl blocked test-amd64-i386-xl pass test-amd64-coresched-i386-xl pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-i386-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-i386-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-i386-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-i386-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-i386-qemut-rhel6hvm-amd pass test-amd64-i386-qemuu-rhel6hvm-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-i386-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-freebsd10-amd64 fail test-amd64-amd64-qemuu-freebsd11-amd64 pass test-amd64-amd64-qemuu-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-i386-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-i386-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-i386-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-amd64-i386-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale blocked test-amd64-amd64-examine-bios pass test-amd64-i386-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 blocked test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 blocked test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine blocked test-amd64-i386-examine pass test-amd64-i386-freebsd10-i386 pass test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-i386-qemut-rhel6hvm-intel pass test-amd64-i386-qemuu-rhel6hvm-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt blocked test-amd64-i386-libvirt pass test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu blocked test-amd64-amd64-pair pass test-amd64-i386-pair fail test-amd64-amd64-libvirt-pair pass test-amd64-i386-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-i386-xl-pvshim fail test-amd64-amd64-pygrub pass test-armhf-armhf-libvirt-qcow2 blocked test-amd64-amd64-xl-qcow2 fail test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw blocked test-amd64-i386-libvirt-raw pass test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-amd64-i386-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-i386-examine-uefi pass test-amd64-amd64-libvirt-vhd pass test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd blocked test-amd64-i386-xl-vhd pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary broken-job build-armhf broken broken-step build-armhf host-install(4) broken-job build-armhf broken Not pushing. (No revision log; it would be 1380 lines long.) From xen-devel-bounces@lists.xenproject.org Wed Jun 21 07:04:40 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 07:04:40 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552470.862567 (Exim 4.92) (envelope-from ) id 1qBrtQ-00039j-AO; Wed, 21 Jun 2023 07:04:40 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552470.862567; Wed, 21 Jun 2023 07:04:40 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBrtQ-00039c-74; Wed, 21 Jun 2023 07:04:40 +0000 Received: by outflank-mailman (input) for mailman id 552470; Wed, 21 Jun 2023 07:04:39 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBrtP-00038t-Gn for xen-devel@lists.xenproject.org; Wed, 21 Jun 2023 07:04:39 +0000 Received: from EUR04-DB3-obe.outbound.protection.outlook.com (mail-db3eur04on0621.outbound.protection.outlook.com [2a01:111:f400:fe0c::621]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id e22f0b2f-1001-11ee-b236-6b7b168915f2; Wed, 21 Jun 2023 09:04:38 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by DUZPR04MB9782.eurprd04.prod.outlook.com (2603:10a6:10:4b1::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.37; Wed, 21 Jun 2023 07:04:34 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6500.036; Wed, 21 Jun 2023 07:04:27 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: e22f0b2f-1001-11ee-b236-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=mvys7w9Ob88jsYKBSARbKJ1+//MLZwiPTBo+tgB16xnFp224od7XIKhoYvfmcD35PcPLk62z6f8hQXbIOK4mi47sVF27PxqyRLA28TwKQf3tW0IkCrjZcTrdqqwZDDgGhMfEMdM8sztA6ae+ByECBDA61sUGmJadXh7HANzOn+CuokR3Xz3EEq6DL1NO/9iHeZm4ElmoX56vLbwmTK4Mfdx5sCfW0Vwp4P4XG8s+3/07z0Efz9+8IXgGT3TT8dsdMKqdA5KZpEyiyHRBV55kXSV3QmSYmITSm859PBD0/i5nAbxVTBWwaZJk4W5Vuu5MX9vxYhS6DD0f3vC4Ulcdtw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=8k10gsySPbGGUaRx/m7J7snpHY5TgDta6KZKrQEfU64=; b=J2g/v5dC87FaS0Ygx7BjcpUbX4VbBTGQNvG2bReB/ilLbUOXf+4i5Nqxi9cZtgRFLf0m5ANTm/nkV/7bfwIgA+mf1g2gNjz9vIov1vfuZy8KUYs9T7Ph8xmzp8oLIGXiG8gY1EC8eFoCra60s41G0SM74yoHsubhaz2QjrmGTshJvhXmIsu/qiT0hbcKRfGvo+doHU4Rb3gIvs+d0doe0CH+2CPChbvNg2tV3wvU15RuTWZasdZ+xGtdKUS/pS+LqNzEEkMWhNdUhOmqiNnQY05nt+fnuRzNlNbVkADR4pIKpcV77RACfOLzbTFVWg1+GYsvjopsnlSTWS6VDE/LTg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=8k10gsySPbGGUaRx/m7J7snpHY5TgDta6KZKrQEfU64=; b=ACiQoI3+dDIje/qsLh8Pxg11yNyuQggFNlY1nddE34m/fqvtrI1DlxCRe0P9L8zd+5NWk6rJmztZEhQTo3sInR3Sg6cMUOJvcns8KjKu+V79L11y+a776SOGPlP78s0N8LmvEVDAsz/BdFYiP/Fs73tsQC8Y6yzBQ9ClZyacJnt1J1aU00stxCVYGGACHDXYtjOR1V+MDlMV36j0yje4/ZNjF+qcEyMXN6mXrddWP6K/lbgYJDZZFtRiMACWruqmTxMfG39xr7gZpFMSB/dV9XqqNFUAgoxF39K756eLlUA+n1+XOPNJEGEkgEpQJkqSkVtLaKGinIruWYh+9PEyNQ== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: Date: Wed, 21 Jun 2023 09:04:25 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [XEN PATCH 03/13] xen/x86: fixed violations of MISRA C:2012 Rule 7.2 Content-Language: en-US To: Stefano Stabellini , Simone Ballarin Cc: xen-devel@lists.xenproject.org, consulting@bugseng.com, Gianluca Luparini , Andrew Cooper , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , Michal Orzel , Xenia Ragiadakou , Ayan Kumar References: <397206cfac500d171be31dcd3503d9f61e531a97.1687250177.git.gianluca.luparini@bugseng.com> From: Jan Beulich In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR2P281CA0037.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:92::6) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|DUZPR04MB9782:EE_ X-MS-Office365-Filtering-Correlation-Id: 0c5ea193-89f6-476e-ed4d-08db7225c0c4 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: h6ogy1eJzfOnbOe9zRb4KRMOAXJkhzeCaQyff3ZDw/OZmfAxdbfHCd+5o+7gFJAN7FQz4VBNtR6or2nqQE5twPv4HDUrYLXSvhdMnOs8AEsdsXWl6UUPbrC25u3tDrccXMrACAVkcHoSjvDYYDRw8ZS6jhV+BFtRq38Gh1gbfZ2Fhs4Hs9nFXWORxrlh70z6jOwZVwBqDs3QjilZpYUh5JD6LP9oXWO+XNzgrf5ukCiQzvB84QEj+/HSuIRUdfiRyRue2hHNl/3c4rfcCuxA8R6PFVX2sNSvDS4f6/abnfBUhBjI2aejAwJLKhcnoFn8EALxWojMzSyzHa/HG6SdIRTrgF6Uymyk/gchO1/Fj2NZkBsMxmY0uUESTE858K9FOIwsktEXKqHz8sPe3Yqwpkezo6II/M/B9laRKSXVGELgiDS843MTyL1GHN7sUmTip1OKxzU7lr5j2+vOx0LU63ixRPsNiMf7VIs2ODRZsQY+AFnJKPqYToptRfDh8ntpuQOh7tKEGzN3Uf93JKs+k9XaypbpFx7WABt1Niumk1FXfQe1RQlleKHJIpJFFOSXZJpYgXnUiTHQMtBNiuiRL0pTNDeRse1q0C/iFsY664K44+10a5Y9PHSpf7lIHA3DzNlhGJLCrLK9h9AXOTjErA== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(346002)(39860400002)(136003)(396003)(366004)(376002)(451199021)(31686004)(7416002)(38100700002)(6506007)(6512007)(53546011)(26005)(5660300002)(8676002)(8936002)(186003)(316002)(110136005)(54906003)(478600001)(4326008)(36756003)(66476007)(66946007)(66556008)(2906002)(41300700001)(4744005)(2616005)(6486002)(31696002)(86362001)(83380400001)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?U1JUTkdXa3hXUWFuRStIYktXTENTSGc0Z2dxcjRubjRIRi8yY3lCSEIwTFlk?= =?utf-8?B?bGxUNGpIQk9nNW5XVlc5cjZtTDliUWxac2xPbEdmZVA2TS9jcnlrdC8zNEMr?= =?utf-8?B?MjRiWmpSY1pGdzhoaW5vY2dvb0xic1RVc3J0alliRVoraVRYMWl4dytrOGVi?= =?utf-8?B?dEJQUk9HU3JySlNFVi9hUjFoMGNRbytVZVVGZGZuZE50cmhVb0hBa0UvREdw?= =?utf-8?B?Vmp6dlhPMUcwb2YzSWtBVno3MVFwVUVKaitjc3diRW5OSkE3VzM4V1BKMzFI?= =?utf-8?B?cUtoTzdpUElxQVNhYkk0WVBra0hVTGN3SFdUbTRDazV6Q2xOcC90R3VsNldX?= =?utf-8?B?SEJkdWdTODBrcDdWUnMyK2lKRUh6UHd6ZTBxblM0c0RQQ0pzVE5aQWFhZkl0?= =?utf-8?B?NWp4V1dCbkNlOE4wTHBkVWN1bCtiY2hIVEtkb1RCRytpNGxKakpLUUVGWnh6?= =?utf-8?B?MUVzN2FwUEdtRWR2RFQrbXBRQ0dtMVJjWVE3UmVaTG9rdXRCKzVkaGxzVXFJ?= =?utf-8?B?ckc0RE0vQkFjM2ROWGErQ3BPNjk3TVpWQXhJb1RLK0VXNTJPV0tIZ1plVlZw?= =?utf-8?B?OXp3SEFUOHB3bU1FZ3RxQ1IwYlI0cmFBbzV0VjRRdWFaNTdTeWcycjI1REtw?= =?utf-8?B?dkVsU0RDZW5IS0k1bGt1dDNDRWdtcy8wdDJ4aWlxRExMa0J2b1d5SWw4RGM4?= =?utf-8?B?bFFjbFdjeFJLVGJhazlMRGNiamJ5enRlcEMwYVFwS2M5cDVwVHFHbU90cUQ0?= =?utf-8?B?Tk5zeVQrMnFlRm9UUGZGQWF0SVNGUXRucEF6SUpna0d6eW5icUE5SGRxdHlm?= =?utf-8?B?d0VxS1BsZW15bG82eFBmL3J4N3NQVEFxTW9zbnJWNFNIQ3hJZmU4YlBuOEgz?= =?utf-8?B?cklraTRkNGNCaTl5cWt6SEE4dmdZRmVWdmZlMzlRYWVZQTJQbEhyTlNxYURV?= =?utf-8?B?cTl2NlFvaVhYQjJGQWE4d3IrMVdDZmJuL1ZsTzdhTGV1K1BjQmp2RkNhVm9S?= =?utf-8?B?NUhiWG1xNkdZK0NJdFpZbnk1TmFYY0N4aXU0MXNvS1FQR1BLMFNYSGZhVHIy?= =?utf-8?B?WVJIZjJ0cjFsSi9IWUtDK2VtNnF0QytqdWZZZkx4ZmE2SCtVdzNIYnNsOEZK?= =?utf-8?B?Wnc5V2dnUUhuU0plT1lJbW1TV3gxZWJHUVhBR0xCaU5JUnlvQmlpZG1taUhW?= =?utf-8?B?MThwNnJYQkxmVkE4bDFyM2pEVmxUdDRLZFNQSDBiWUNpVmE2MHU0eStRSktn?= =?utf-8?B?YWo3QjRGK24vamMvVXhHMUxkN2c1Y2FCK2p0VGlpNFpFRUQyQURLQXplK29T?= =?utf-8?B?QlpqVDVseXRCVkNLR0tsN2gxRjFMSFcyQnlLeUYybzEyLyt0S1FFTGpiNS9n?= =?utf-8?B?M29TZ21USVh2OTU4WHppS1laTW9ONWw0eVovWjBUaVlhRnJnR25pTi9adjlY?= =?utf-8?B?SmxNSlczQWVwTlFBcFRzZWFWZ1pyRnhOUng4cVFQcWh6ZDlIcHVRUitacEJ5?= =?utf-8?B?ZWpnQW1TdG1COE1kck1qbS9aZ0RhK3V4WHhyY2VkbEEva2ovNHBrMVRnd2JN?= =?utf-8?B?dE5iYWVSK2k5WjZibjlCME92ZXd3OTBvWVI5V0RBWFUxVkUwUDdsV2tubmNJ?= =?utf-8?B?Vk1zYUQ3OEpHS2hkeTFGRU1kQVVaZXVDNHA4OHhKVXFGb0ZTdllrYTlxOE1R?= =?utf-8?B?UzlJOGJVRkFqV0hmN2FNaHF6ekxpOUYvaVFabFlxbVdnaEhQQUZyVy9lb1RF?= =?utf-8?B?b1JXQWNRTUg5K3lVMW5tRnVjZUtBbTRncDFQVEVLZmROelJuMHNZb0lyY2cx?= =?utf-8?B?cW9FOHhnRmlpNVhWYmZHVE9DTy9QRnJ3TFE1WVpuR3U3TXdRM3VYY1ROb003?= =?utf-8?B?bGc4RStoUjhrM0V5TEpNQW5vSk8wUUFXVmFLVGw0QVlEN1hsLzNTYU5YVjdB?= =?utf-8?B?WEkwSTNJUk1WcmFxRm1zR001VzRsdWdkL1VCS2lMSnkwa3FJU1h0OHZXQTho?= =?utf-8?B?Qi9WZ2pEVWs0MGR1VWtIM0NqcUp0L2pOTEE3WDFwMW1zZ05EY1gxTUpjNGdI?= =?utf-8?B?M3NSeTRiL1p5M2wvOUpxRy9mSW9haHA4L3owTkR2cTZhT3NESFNTditqbExV?= =?utf-8?Q?9wmlx0zzfKJwqgvIZZD566UfT?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 0c5ea193-89f6-476e-ed4d-08db7225c0c4 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Jun 2023 07:04:27.7702 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: pPP+GnztM8scWTBN1fYN/yCaes+9ZnP15iGRmvT0VaXpS7snNOdwaXubGDP0pY0/P3q2fd6PIKlIJbNtbwK1OA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DUZPR04MB9782 On 20.06.2023 22:49, Stefano Stabellini wrote: > On Tue, 20 Jun 2023, Simone Ballarin wrote: >> From: Gianluca Luparini >> >> The xen sources contains violations of MISRA C:2012 Rule 7.2 whose headline states: >> "A "u" or "U" suffix shall be applied to all integer constants that are represented in an unsigned type". >> >> I propose to use "U" as a suffix to explicitly state when an integer constant is represented in an unsigned type. >> >> Signed-off-by: Simone Ballarin > > Commit message aside: > > Reviewed-by: Stefano Stabellini > > FYI I would use the following as commit message title to make it unique: > > xen/x86/hvm/svm: fixed violations of MISRA C:2012 Rule 7.2 Along the lines of my earlier comment: x86/svm: fix violations of MISRA C:2012 Rule 7.2 or (imo less desirable) xen/svm: fix violations of MISRA C:2012 Rule 7.2 At the very least the hvm/ infix is fully redundant. Jan From xen-devel-bounces@lists.xenproject.org Wed Jun 21 07:06:19 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 07:06:19 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552475.862577 (Exim 4.92) (envelope-from ) id 1qBruq-0003mC-M1; Wed, 21 Jun 2023 07:06:08 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552475.862577; Wed, 21 Jun 2023 07:06:08 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBruq-0003m5-I7; Wed, 21 Jun 2023 07:06:08 +0000 Received: by outflank-mailman (input) for mailman id 552475; Wed, 21 Jun 2023 07:06:07 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBrup-0003lx-Iv for xen-devel@lists.xenproject.org; Wed, 21 Jun 2023 07:06:07 +0000 Received: from EUR05-DB8-obe.outbound.protection.outlook.com (mail-db8eur05on2061b.outbound.protection.outlook.com [2a01:111:f400:7e1a::61b]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 1746a2b9-1002-11ee-b236-6b7b168915f2; Wed, 21 Jun 2023 09:06:06 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by AS8PR04MB8484.eurprd04.prod.outlook.com (2603:10a6:20b:34c::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.23; Wed, 21 Jun 2023 07:06:04 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6500.036; Wed, 21 Jun 2023 07:06:04 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 1746a2b9-1002-11ee-b236-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=jny5iMPQYa3KuIR6b9qgtcod+FftPR3ts89urDdsPSlkXrA7Oxy02yFf/Jkk8soKOsLuJJtHTqsG0kKvypCqYQUAOcadim65HISuXkeCHGGzN0bjihK3Enw+IPE9cgUvERJrm4AlimMvECV614lOeHuvcvV6DJQjrQyvKzqwHTeBVYnm6+wut9E09orL88u7nBN6llnTI7CXbpKNuCqXUm9i85Csgu/oSloR+Jiwqyb4Iq8hesLKSf759Y7nMS8xPiARhAnPsqfJ0jm2WLMkJTF48lBgxV9JA2WxofRtY7U0BsDYICNXa25PM/yUUwpkc925TCrYCLnj3UC8p9Tbpg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=+IqZgYnm2a7/wwnhZzWE/gplCz+zZ7qf+x+faUfejNQ=; b=jO5p96pL8+OkRqjwpC1EL9fE35PV3j05lvUUBxM6O5i9fiO1ab/mRVIXHjaU/xJFcxjTuNcA9A601VYy8fbyINLEFdjDt5mIS4gOfuMhjcIuw2NzlZpd1vG29vxJq/nl6ZcX8TgU4raKaXhADy2qQQ9lm08K3WxnPjjamhDapIQAdkSZ6tdiabs0pWE4uBRZE1ecMYwoL8MStacqYJaq/2zakPUPksBInitlgdabqk603bUvW93udBzzlwDVjrRT5nafGuKxFhoZ6vOhJVrySHuaEIEkHeKuMgQlugcSypkP2Pq+a5mifubfUXJjkEnehdn3JAmvSwvYUeLXJXXZXw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=+IqZgYnm2a7/wwnhZzWE/gplCz+zZ7qf+x+faUfejNQ=; b=UF/kvQjE5vWkZOU2kbozepiPZLxHzw1V6dZMsGQWt7F8gAx77PxvmC28TblIQryNt3UhIKmxowvbDK9R7zbAztmBurEo/RKX0i38j0HZeajBT1JXUR0giGz09NdS+rifDVnpTcsP81T3tX6rYMZ2ZZFjGSto2pdUbvg6s+28D7M56x5ccEgSCQZVwLr0B2SH68cVwps3BC07aR8c36ErC78RSp2cR/qjMvN2QIc+sdgesuamHWGX6gzbkm6TYP5i03hveJGGqwObEc8nf6IQg1P3W6GFReCLZ1o25n2CdrNlvBTalqT6Cpxgj6pXM0l4gucvBVXnvbgWxIKtuzk0rQ== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <23a79e33-ac20-6b76-335f-102479a4db91@suse.com> Date: Wed, 21 Jun 2023 09:06:02 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [XEN PATCH 06/13] xen/efi: fixed violations of MISRA C:2012 Rule 7.2 Content-Language: en-US To: Stefano Stabellini Cc: Simone Ballarin , consulting@bugseng.com, Gianluca Luparini , Andrew Cooper , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , Michal Orzel , Xenia Ragiadakou , Ayan Kumar , xen-devel@lists.xenproject.org References: <019b934cb1e96affd7429c1632fbfe3faacc663e.1687250177.git.gianluca.luparini@bugseng.com> <6d6708de-7afb-963c-65ae-3656fc755ad6@suse.com> From: Jan Beulich In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR3P281CA0092.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:a1::12) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|AS8PR04MB8484:EE_ X-MS-Office365-Filtering-Correlation-Id: 76986f20-c4ac-4ae1-203f-08db7225fa7d X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: fwu64zJAOLy6jqDYd7vxKfgApAfZOjSGBfkR18PTx68biJeUOCCG8phhFo43PY8U++P8ISUYyTNEe4e6dD+b76dE2FiPfPM4VvJ5uENyzIG6dW1N+4CDQDmynxmiBK/JYNN8/++BXnM8dKtDLCa1zoEnyFoWV/py9vQFRhEY4W4Y2H/uuCAI+pnNQKqOQwfp5WzMRdbV744KY25CTld44v41i8mayvBXkpI18lwDkW7aGWQQwP5p9Wutl5cTBPrmWeycfYU5CVRSmjeA9+RGEWE1WwWQ3+y15pTydSxfylDgNZL1BsYoUJW4L5iEWA35q7iKoih3BUifNNHCdryDbiJIV8aqfEYhU4k+I+5Y93OkeHIcM5TjBTaiidXA4IupcMQntM6Vp1cU3k0vIbC8Ct8UZroeIozDQDOw3CnwGLCFVhUXAdGULqJDH0BLBih0UO6GcA0gTcyqv4tAEZR6r0GTg4VcKHwEaqpsNFmjAyqGrW62Fjygv2i9fnn39IReP0547LufFjBG3PlCJWLahU/NcxFlRQ2iibcwJ6IXpkjPiL/p6ps+FcSGIydlIG6YSfrjiXrU+X+QPWJEd1kKAyAlYzisNyUjmamc5jLoDECQx91ZeiPvgX7eNhLz8nqpkMm/Ro40yvyVB4PJiQWUbw== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(39860400002)(136003)(346002)(366004)(396003)(376002)(451199021)(8936002)(41300700001)(8676002)(478600001)(38100700002)(53546011)(2616005)(6512007)(26005)(186003)(6506007)(6486002)(54906003)(31696002)(86362001)(316002)(36756003)(4326008)(66946007)(66556008)(66476007)(6916009)(7416002)(5660300002)(31686004)(2906002)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?MTBuK2ZUYURranJjaVNwMVJRaWFpOVlPdzNmK1VIbEdrMVdHa1hvb1FJRy8w?= =?utf-8?B?U2VMYVl2Nkp4YWIydVhaRExQNzkxMFZ5WmxKazhKY3IyUmNtNUtoZnhKcmNh?= =?utf-8?B?bFlRYjVNaStKcmVlakdNTEVvYUczSXJ2dmQyVStWYkxTa1hPNG91TzYySndL?= =?utf-8?B?RS9va3Vra3RTNFlacUhONUpCN0IvalM5dkZyWXRXTUNIREhOWUoxNlJMUTB1?= =?utf-8?B?cXF6NDRLcVJNSUVQYzAzZlFTNXhvRHI5TGZJTUhJaXZLZ29VTEMwZlh5eG5D?= =?utf-8?B?ek1aWXRmM3FoQkVPRGdrMU1oWjBOZEJqQTVaYzN2SE12ZjBBWWlreFFwMFBX?= =?utf-8?B?V0lIU1B6U09SNE4zQmN5QUwyeWJCMWpyaXk1T0U5V3RHRVRhMSsrWFo1am01?= =?utf-8?B?aWFGcUJ1dnFqQVE3eURhby9SNXRFd3NZY0NhUi9ERTdKN1kvTjErdWlqd3RP?= =?utf-8?B?YnhreW9xZkl1VjlVYjhqd0RlWlQ1RDdvQmhFTGlZczZPZWtaVTZNc1ZPRDJi?= =?utf-8?B?RmNMNTRzTGtqdUtXK2JSNXYrMzJYMzY4M2FDd0JFQTNZSXdFUW9mSVhXamlI?= =?utf-8?B?bzVuNExRQm4vSnBUNWZMNlRrK2tKTjNLd0xkbWZUeFJ0S0dJWnZaQmRhNith?= =?utf-8?B?NFcwOExUZklocVg0TG5oZjBYZzc4SXBVZFpjN0VqelZyYmJhTXB6c3dWUnI0?= =?utf-8?B?VDUwOCtLM3ZGQzZubzRSemlKSGQ3NUpYb2ZQMk1KU0RUbDIxRGRhT3lmNTln?= =?utf-8?B?ckZSRnBMR0VJbG12NGZPRGlCcndlQ0FMbXpnVEJKRkpXd0xiNStwYnljdDVM?= =?utf-8?B?bEdsNXEyeEZSeHVKYUNObkx6eUtId2tMMXlBejlUbjRpczFBRFhQdDUxRWRM?= =?utf-8?B?V2pRMlgvUGZoS3JFTURkemNMRWIwKzM1U2dIWXcweUExS3NOOFY5ODRpRU12?= =?utf-8?B?SGdndEZEOTFoSlNjUy9YL0tOeUpCZ0pwbndXOFFzZDM0UktXZkxBalJFZG0v?= =?utf-8?B?ZTRRNFZhMGlKN0ZUeFFmSjh3WUFHYW14eFVRbGU2d0xERXRwaTMrampNbm5Z?= =?utf-8?B?VHVvcllvMlZiMVFvVjQwSGJ2VDVON2k1MFlhUkpYWGd3K3NCc2JBRE5HQ2hz?= =?utf-8?B?T0JYYW1KemZpd2FwSE1uVjkzZDlPelhBVkg4U0MzUmg1THBoTGtickh0U2hz?= =?utf-8?B?alFEdDgzU2hmMXdRbHBXSW1rR2UrbFkzRkZRaFc3QnJuL2tvZ0JXSmJoWGZV?= =?utf-8?B?ckhrVExDM1BtUjFrcHF2Y1o1aVlZVy9JMWxOQnAzeWRyM2tSR1JpcHFQNyta?= =?utf-8?B?ZXJYT1RHdmpxQnVKaU9pcDVUaHkvdzV5MnJIT0lHdm0vd0ZjYnRQOC9IMU1h?= =?utf-8?B?ZElrYUcvelVhNVF6NkVFRm5OYmlLZk4zcEZBL3VmWm5LekEzRDNYVHVjbXpI?= =?utf-8?B?WElaUHNncEU5Q0Z1cWlXSVJWTW1xelRSY3NFS1dzdTVaeEpRdU0rWW1UUit3?= =?utf-8?B?blAwM0EycFN5WGMwQjNOYWNrengwM2lsZVBUUjg4U3N5aEYxTU5JWnRFQkEx?= =?utf-8?B?Q21NRG1QVVBvUXU0UEJwN2gvOGsyYjhkWWJMQnMwR05QTUF5UG5ZaytkR1hL?= =?utf-8?B?WmlwYy9odkpEWDNnS0VWKzZCdk1sUVNrWk5Vc3VIam5CN2lva1pzallhbVk5?= =?utf-8?B?SU1TNTQvZC9kQWZicTlNVGlXN3drZ0FtbDFubysxb21NSXhueDNWQWcvRG9K?= =?utf-8?B?aUlSV2NLOElGVWxIaGRjMk00MlVmbTdwd3JoVlRBbmpodHRJU215VGxEeDJv?= =?utf-8?B?TWUvbDNYMnFlWHJHNlhtdm0vcG5kMEkrQll3UGthbGZuZHFqOGJRM1Q1TGtr?= =?utf-8?B?Ym9tV3p6ZU9TTURQamFmMFBBbkduei9uNFgyVVdzSG15NE40cG54VU1vOWVh?= =?utf-8?B?ZUZqM1pTNVFsZGErK1N4VjdvU0NveldtUnpqT1FHWkM3emlhZkhkTVg0SW9B?= =?utf-8?B?RncyWCtNNnBGb2haZjlIN0Q4cWd2Rzh2N0U5ekxLcmFWc0VLcHV2NHJoSFJG?= =?utf-8?B?dWJ5czV6c2w3YWhUOUd6WmlZL0dMaFZ5amNvRVdGNmwwQkV1ZTJEWTViN2Jp?= =?utf-8?Q?mse0D66Mp83OkBpDNcVAVMj7D?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 76986f20-c4ac-4ae1-203f-08db7225fa7d X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Jun 2023 07:06:04.5949 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: FsTZNN8r5pK7lLcmGvumNGvpTK7v65ik9eq0Asq+UezU4/ZxCwBxlDojYu7FaCBHea+S5d0dqJt8Wo6R9XyMig== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB8484 On 20.06.2023 22:56, Stefano Stabellini wrote: > On Tue, 20 Jun 2023, Jan Beulich wrote: >> On 20.06.2023 12:34, Simone Ballarin wrote: >>> From: Gianluca Luparini >>> >>> The xen sources contains violations of MISRA C:2012 Rule 7.2 whose headline states: >>> "A "u" or "U" suffix shall be applied to all integer constants that are represented in an unsigned type". >>> >>> I propose to use "U" as a suffix to explicitly state when an integer constant is represented in an unsigned type. >>> For homogeneity, I also added the "U" suffix in some cases that the tool didn't report as violations. >>> >>> Signed-off-by: Simone Ballarin >>> --- >>> xen/arch/x86/include/asm/x86_64/efibind.h | 10 +++++----- >> >> This file as well as ... >> >>> xen/common/efi/boot.c | 8 ++++---- >>> xen/common/efi/runtime.c | 2 +- >>> xen/include/efi/efiapi.h | 10 +++++----- >>> xen/include/efi/efidef.h | 2 +- >>> xen/include/efi/efiprot.h | 22 +++++++++++----------- >> >> ... the last three here are imported from the gnu-efi package. I'm wary >> of touching them, and thus getting them more out of sync with their >> original than strictly necessary. To allow the other changes to go in >> no matter what, I'd like to suggest splitting the patch. > > Should we add either those files individually or the directory > xen/include/efi (plus xen/arch/x86/include/asm/x86_64/efibind.h) to > docs/misra/exclude-list.json ? Probably, and in the former case imo the entire directory. Jan From xen-devel-bounces@lists.xenproject.org Wed Jun 21 07:17:35 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 07:17:35 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552480.862586 (Exim 4.92) (envelope-from ) id 1qBs5i-0005Jb-Kj; Wed, 21 Jun 2023 07:17:22 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552480.862586; Wed, 21 Jun 2023 07:17:22 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBs5i-0005JU-IA; Wed, 21 Jun 2023 07:17:22 +0000 Received: by outflank-mailman (input) for mailman id 552480; Wed, 21 Jun 2023 07:17:21 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBs5h-0005JO-LE for xen-devel@lists.xenproject.org; Wed, 21 Jun 2023 07:17:21 +0000 Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.133.124]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id a8acdfa8-1003-11ee-b236-6b7b168915f2; Wed, 21 Jun 2023 09:17:20 +0200 (CEST) Received: from mimecast-mx02.redhat.com (mimecast-mx02.redhat.com [66.187.233.88]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id us-mta-400-DL2PhZoIOjGyK3ktCPn9Fw-1; Wed, 21 Jun 2023 03:17:13 -0400 Received: from smtp.corp.redhat.com (int-mx03.intmail.prod.int.rdu2.redhat.com [10.11.54.3]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 2D252104458B; Wed, 21 Jun 2023 07:17:13 +0000 (UTC) Received: from redhat.com (unknown [10.42.28.44]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 869EC112132C; Wed, 21 Jun 2023 07:17:11 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: a8acdfa8-1003-11ee-b236-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1687331839; h=from:from:reply-to:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type:in-reply-to:in-reply-to: references:references; bh=hjH+NNI2d1enNQ9JMwMXztNaTsFcJ6lMuYS8EU2qC5U=; b=QS3XWT18bi/4FvjeumM1zGFIw+jxz2W+FYxbOlben8NGmlKLnkcNAVTA792Uf/Hj67VqRT FBJOihoIpLeCgDEPJgV/KIn8Cyug2lPEybYBqNMHMpPr6dCYLQJJBQq+ZVCByj3/WxfSh3 I8KMEpV1oya1EADtMx1QK5b0rND1FHo= X-MC-Unique: DL2PhZoIOjGyK3ktCPn9Fw-1 Date: Wed, 21 Jun 2023 08:17:09 +0100 From: Daniel =?utf-8?B?UC4gQmVycmFuZ8Op?= To: Joel Upham Cc: qemu-devel@nongnu.org, Paolo Bonzini , Richard Henderson , Eduardo Habkost , "Michael S. Tsirkin" , Marcel Apfelbaum , Stefano Stabellini , Anthony Perard , Paul Durrant , "open list:X86 Xen CPUs" Subject: Re: [PATCH v1 01/23] pc/xen: Xen Q35 support: provide IRQ handling for PCI devices Message-ID: Reply-To: Daniel =?utf-8?B?UC4gQmVycmFuZ8Op?= References: <1c547c5581ce6192b70c68f39de108cdb2c73f7e.1687278381.git.jupham125@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline In-Reply-To: <1c547c5581ce6192b70c68f39de108cdb2c73f7e.1687278381.git.jupham125@gmail.com> User-Agent: Mutt/2.2.9 (2022-11-12) X-Scanned-By: MIMEDefang 3.1 on 10.11.54.3 On Tue, Jun 20, 2023 at 01:24:34PM -0400, Joel Upham wrote: > > Signed-off-by: Alexey Gerasimenko This isn't a valid email address for Alexey - I presume you grabbed these patches from the xen-devel mail archives, which have mangled the addresses for anti-spam reasons. Fortunately there are alternative archives which don't mangle the patches: https://lore.kernel.org/xen-devel/6067bc3c91c9ee629a35723dfb474ef168ff4ebf.1520867955.git.x1917x@gmail.com/ Signed-off-by: Alexey Gerasimenko This affects all patches in the series, but I won't repeat my comment on each one. > Signed-off-by: Joel Upham > --- > hw/i386/pc_piix.c | 3 +- > hw/i386/xen/xen-hvm.c | 7 +++-- > hw/isa/lpc_ich9.c | 53 ++++++++++++++++++++++++++++++++--- > hw/isa/piix3.c | 2 +- > include/hw/southbridge/ich9.h | 1 + > include/hw/xen/xen.h | 4 +-- > stubs/xen-hw-stub.c | 4 +-- > 7 files changed, 61 insertions(+), 13 deletions(-) > > diff --git a/hw/i386/pc_piix.c b/hw/i386/pc_piix.c > index d5b0dcd1fe..8c1b20f3bc 100644 > --- a/hw/i386/pc_piix.c > +++ b/hw/i386/pc_piix.c > @@ -62,6 +62,7 @@ > #endif > #include "hw/xen/xen-x86.h" > #include "hw/xen/xen.h" > +#include "sysemu/xen.h" > #include "migration/global_state.h" > #include "migration/misc.h" > #include "sysemu/numa.h" > @@ -233,7 +234,7 @@ static void pc_init1(MachineState *machine, > x86ms->above_4g_mem_size, > pci_memory, ram_memory); > pci_bus_map_irqs(pci_bus, > - xen_enabled() ? xen_pci_slot_get_pirq > + xen_enabled() ? xen_cmn_pci_slot_get_pirq > : pc_pci_slot_get_pirq); > pcms->bus = pci_bus; > > diff --git a/hw/i386/xen/xen-hvm.c b/hw/i386/xen/xen-hvm.c > index 56641a550e..540ac46639 100644 > --- a/hw/i386/xen/xen-hvm.c > +++ b/hw/i386/xen/xen-hvm.c > @@ -15,6 +15,7 @@ > #include "hw/pci/pci.h" > #include "hw/pci/pci_host.h" > #include "hw/i386/pc.h" > +#include "hw/southbridge/ich9.h" > #include "hw/irq.h" > #include "hw/hw.h" > #include "hw/i386/apic-msidef.h" > @@ -136,14 +137,14 @@ typedef struct XenIOState { > Notifier wakeup; > } XenIOState; > > -/* Xen specific function for piix pci */ > +/* Xen-specific functions for pci dev IRQ handling */ > > -int xen_pci_slot_get_pirq(PCIDevice *pci_dev, int irq_num) > +int xen_cmn_pci_slot_get_pirq(PCIDevice *pci_dev, int irq_num) > { > return irq_num + (PCI_SLOT(pci_dev->devfn) << 2); > } > > -void xen_piix3_set_irq(void *opaque, int irq_num, int level) > +void xen_cmn_set_irq(void *opaque, int irq_num, int level) > { > xen_set_pci_intx_level(xen_domid, 0, 0, irq_num >> 2, > irq_num & 3, level); > diff --git a/hw/isa/lpc_ich9.c b/hw/isa/lpc_ich9.c > index 9c47a2f6c7..733a99d443 100644 > --- a/hw/isa/lpc_ich9.c > +++ b/hw/isa/lpc_ich9.c > @@ -51,6 +51,9 @@ > #include "hw/core/cpu.h" > #include "hw/nvram/fw_cfg.h" > #include "qemu/cutils.h" > +#include "hw/xen/xen.h" > +#include "sysemu/xen.h" > +#include "hw/southbridge/piix.h" > #include "hw/acpi/acpi_aml_interface.h" > #include "trace.h" > > @@ -535,11 +538,49 @@ static int ich9_lpc_post_load(void *opaque, int version_id) > return 0; > } > > +static void ich9_lpc_config_write_xen(PCIDevice *d, > + uint32_t addr, uint32_t val, int len) > +{ > + static bool pirqe_f_warned = false; > + if (ranges_overlap(addr, len, ICH9_LPC_PIRQA_ROUT, 4)) { > + /* handle PIRQA..PIRQD routing */ > + /* Scan for updates to PCI link routes (0x60-0x63). */ > + int i; > + for (i = 0; i < len; i++) { > + uint8_t v = (val >> (8 * i)) & 0xff; > + if (v & 0x80) { > + v = 0; > + } > + v &= 0xf; > + if (((addr + i) >= PIIX_PIRQCA) && ((addr + i) <= PIIX_PIRQCD)) { > + xen_set_pci_link_route(addr + i - PIIX_PIRQCA, v); > + } > + } > + } else if (ranges_overlap(addr, len, ICH9_LPC_PIRQE_ROUT, 4)) { > + while (len--) { > + if (range_covers_byte(ICH9_LPC_PIRQE_ROUT, 4, addr) && > + (val & 0x80) == 0) { > + /* print warning only once */ > + if (!pirqe_f_warned) { > + pirqe_f_warned = true; > + fprintf(stderr, "WARNING: guest domain attempted to use PIRQ%c " > + "routing which is not supported for Xen/Q35 currently\n", > + (char)(addr - ICH9_LPC_PIRQE_ROUT + 'E')); > + break; > + } > + } > + addr++, val >>= 8; > + } > + } > +} > + > static void ich9_lpc_config_write(PCIDevice *d, > uint32_t addr, uint32_t val, int len) > { > ICH9LPCState *lpc = ICH9_LPC_DEVICE(d); > uint32_t rcba_old = pci_get_long(d->config + ICH9_LPC_RCBA); > + if (xen_enabled()) > + ich9_lpc_config_write_xen(d, addr, val, len); > > pci_default_write_config(d, addr, val, len); > if (ranges_overlap(addr, len, ICH9_LPC_PMBASE, 4) || > @@ -731,10 +772,14 @@ static void ich9_lpc_realize(PCIDevice *d, Error **errp) > return; > } > > - pci_bus_irqs(pci_bus, ich9_lpc_set_irq, d, ICH9_LPC_NB_PIRQS); > - pci_bus_map_irqs(pci_bus, ich9_lpc_map_irq); > - pci_bus_set_route_irq_fn(pci_bus, ich9_route_intx_pin_to_irq); > - > + if (xen_enabled()) { > + pci_bus_irqs(pci_bus, xen_cmn_set_irq, d, ICH9_XEN_NUM_IRQ_SOURCES); > + pci_bus_map_irqs(pci_bus, xen_cmn_pci_slot_get_pirq); > + } else { > + pci_bus_irqs(pci_bus, ich9_lpc_set_irq, d, ICH9_LPC_NB_PIRQS); > + pci_bus_map_irqs(pci_bus, ich9_lpc_map_irq); > + pci_bus_set_route_irq_fn(pci_bus, ich9_route_intx_pin_to_irq); > + } > ich9_lpc_pm_init(lpc); > } > > diff --git a/hw/isa/piix3.c b/hw/isa/piix3.c > index f9103ea45a..3d0545eb0e 100644 > --- a/hw/isa/piix3.c > +++ b/hw/isa/piix3.c > @@ -420,7 +420,7 @@ static void piix3_xen_realize(PCIDevice *dev, Error **errp) > * connected to the IOAPIC directly. > * These additional routes can be discovered through ACPI. > */ > - pci_bus_irqs(pci_bus, xen_piix3_set_irq, piix3, XEN_PIIX_NUM_PIRQS); > + pci_bus_irqs(pci_bus, xen_cmn_set_irq, piix3, XEN_PIIX_NUM_PIRQS); > } > > static void piix3_xen_class_init(ObjectClass *klass, void *data) > diff --git a/include/hw/southbridge/ich9.h b/include/hw/southbridge/ich9.h > index fd01649d04..07b84d5227 100644 > --- a/include/hw/southbridge/ich9.h > +++ b/include/hw/southbridge/ich9.h > @@ -130,6 +130,7 @@ struct ICH9LPCState { > > #define ICH9_A2_LPC_REVISION 0x2 > #define ICH9_LPC_NB_PIRQS 8 /* PCI A-H */ > +#define ICH9_XEN_NUM_IRQ_SOURCES 128 > > #define ICH9_LPC_PMBASE 0x40 > #define ICH9_LPC_PMBASE_BASE_ADDRESS_MASK ICH9_MASK(32, 15, 7) > diff --git a/include/hw/xen/xen.h b/include/hw/xen/xen.h > index 2bd8ec742d..a2c3d98eaa 100644 > --- a/include/hw/xen/xen.h > +++ b/include/hw/xen/xen.h > @@ -37,9 +37,9 @@ extern uint32_t xen_domid; > extern enum xen_mode xen_mode; > extern bool xen_domid_restrict; > > -int xen_pci_slot_get_pirq(PCIDevice *pci_dev, int irq_num); > +int xen_cmn_pci_slot_get_pirq(PCIDevice *pci_dev, int irq_num); > int xen_set_pci_link_route(uint8_t link, uint8_t irq); > -void xen_piix3_set_irq(void *opaque, int irq_num, int level); > +void xen_cmn_set_irq(void *opaque, int irq_num, int level); > void xen_hvm_inject_msi(uint64_t addr, uint32_t data); > int xen_is_pirq_msi(uint32_t msi_data); > > diff --git a/stubs/xen-hw-stub.c b/stubs/xen-hw-stub.c > index 34a22f2ad7..f06fbf48c8 100644 > --- a/stubs/xen-hw-stub.c > +++ b/stubs/xen-hw-stub.c > @@ -10,12 +10,12 @@ > #include "hw/xen/xen.h" > #include "hw/xen/xen-x86.h" > > -int xen_pci_slot_get_pirq(PCIDevice *pci_dev, int irq_num) > +int xen_cmn_pci_slot_get_pirq(PCIDevice *pci_dev, int irq_num) > { > return -1; > } > > -void xen_piix3_set_irq(void *opaque, int irq_num, int level) > +void xen_cmn_set_irq(void *opaque, int irq_num, int level) > { > } > > -- > 2.34.1 > > With regards, Daniel -- |: https://berrange.com -o- https://www.flickr.com/photos/dberrange :| |: https://libvirt.org -o- https://fstop138.berrange.com :| |: https://entangle-photo.org -o- https://www.instagram.com/dberrange :| From xen-devel-bounces@lists.xenproject.org Wed Jun 21 07:18:03 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 07:18:03 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552486.862597 (Exim 4.92) (envelope-from ) id 1qBs6N-0005qo-3i; Wed, 21 Jun 2023 07:18:03 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552486.862597; Wed, 21 Jun 2023 07:18:03 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBs6M-0005qh-W9; Wed, 21 Jun 2023 07:18:02 +0000 Received: by outflank-mailman (input) for mailman id 552486; Wed, 21 Jun 2023 07:18:01 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBs6L-0005qR-4k for xen-devel@lists.xenproject.org; Wed, 21 Jun 2023 07:18:01 +0000 Received: from EUR01-DB5-obe.outbound.protection.outlook.com (mail-db5eur01on062d.outbound.protection.outlook.com [2a01:111:f400:fe02::62d]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id c08d0446-1003-11ee-b236-6b7b168915f2; Wed, 21 Jun 2023 09:18:00 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by AS8PR04MB8385.eurprd04.prod.outlook.com (2603:10a6:20b:3f3::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.23; Wed, 21 Jun 2023 07:17:58 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6500.036; Wed, 21 Jun 2023 07:17:58 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: c08d0446-1003-11ee-b236-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=QpyxFcUsHLmzgXgedxw7irf7JmkUXikwMuYAIjqNw3SXWmHIN39C0cXp/tqmPfROQdFu18I5Mu25eA28U1sudXTnEefLPKSHHXrBwZBcV1WjjxU599cwaV4gm4xotJeGOok4msOIm7JQMiuo4aES5+mEQ/4nHqXuVhBOWmdiyBunWxmg39fI5GEbuHvXYRRX8ec3nUiAls+e8LFk7UY/Y4WPQlZ9Ih49FnDlK/vBUJKWNTRhyVaJl9kX+MhRN/spCvRybCEZfDnY6T5VHJSal41xi2ZyRrrYCw/ZV0NP42Wjly8CskazLQ3s/9ulznAVYOupWFqLYNnGxBEM6gXEgw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=4lmfqkE7JwZA88CjxHCFIroKkc6gZDlIKTmkKWfd4JI=; b=IhihtXxpXzlaA1KsURVFFpsWNu2YFdpGP4GhVoEyaMpxegLrLqxFiZVbfg4oIuXLpH6h8lMjW9ocZHy1sVaXHXxzTFffkw9gf8uMYiaWlKvtUZUiqES46UoUX/fRhsxI+qCqm0e0yo8ZcjCNGKiqDjwUziymSC3ME2N3GhKVGac93B8HYj3DG6zBxbjoAk3RV0CD9eBVNcI404sJVFTINTU6NO8ui9xPh6fxAmerHadihjE1AtJo0AbnCWs01DpcbLQwmji7uTGuq4jAYdeHC4m/sxKOt9hcYBWc4leZPQlJnbBxQNzZAoZnwWd0MoBbKW+mec50BRjHx84RwL2TZQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=4lmfqkE7JwZA88CjxHCFIroKkc6gZDlIKTmkKWfd4JI=; b=2KzL9nlIOJvPNpMKzfF+uXhIYfmxybuv2+mZ42JXdF8PTTVUG+tA8lPZGT30SrWzMfi4GzKejPZ69ida03dUrqiJeMZ2P9f2N4I3zLvQrD0dlY/theZfIIefbg16EOmD1qcs4rsClqsNCjVDPKibGpmw/thc7I0tKW2q+OlIbpHOYXuvqPF78o0r+wgn5Mfd+RSDTtc5ikoOXxprkQdQ64WKSa/D11ntf1z4fa87sps9pjGfoI5drV5hzCrwOPX8QRpxuSCbHILhTvokhIkOjYtTIoPFiHHGQOlgx/SPSbiICFNVbdIPxshIkadEemDHJNxdA2pr/WeLzKD3uF9shA== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: Date: Wed, 21 Jun 2023 09:17:56 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [XEN PATCH 12/13] xen/x86: fixed violations of MISRA C:2012 Rule 7.2 Content-Language: en-US To: Stefano Stabellini Cc: xen-devel@lists.xenproject.org, consulting@bugseng.com, Gianluca Luparini , Andrew Cooper , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , Paul Durrant , Michal Orzel , Xenia Ragiadakou , Ayan Kumar , Simone Ballarin References: <27690fdf9658339f12061f1bd171ebe5f969eb1b.1687250177.git.gianluca.luparini@bugseng.com> From: Jan Beulich In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR3P281CA0140.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:95::12) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|AS8PR04MB8385:EE_ X-MS-Office365-Filtering-Correlation-Id: ee685691-f048-461e-7ded-08db7227a3cc X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 19uao1nQ8Bz6J9PS08jOTmHK64wYkTv4ArnXd+bvJJ4lgEfbWxYizBs0ZCbePhVaY7PFx+XQUQ4OhLJ3fvw0yPCpq52aY54Cdh0u7TVvvW04oNPFxzooItLVWLY53qsL15KZOeb635BShTjCZFW4MlKwXWeFvOBVwCXAhXN7xJbGXyHskCsJpCIAJcjwdU0iwY/3OhxTdrJ8aZP+jnokKnt/xKJCEEsmpijRd0Xh9Pfheb/5RKhgbHc2R8aK++8H8sQu9aOrrP+t5N3Idu5H0wlTTAvKMFO8ZM6AbT4dWshuiuvZaoDF/dVvff58a91LhOov+SYpQQhz/7yiwk4lqrI4x/gvYQCCEBcqZLdxayV8WrnGDw6PDbE9Bnc2SOT64yB+2JW5UFABqF1lQM4yIO/f3Yz/B+tTJ2+BCppUevyjng5j6p8T27MWlnYlai0ytyy7APdGj1ttw4zbgq7ix4nc1kjweQ3rcbT74MTwV+IPVeTYqi/KwywJ5rznkJ7UkLqtAGAJINTAIEcnBIq95A/TEg4Kcj99J/pjhYRxtcZF2+DUpwfzqqailp1FU0/TT/Q4pXiImWLVkDy9jya+9HYmQ+08Fn7xhjIb/JVqnpbUvx6DmdzSiPfO88hipEW5A99yoTjez8VUNiGag2DwGw== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(366004)(376002)(396003)(346002)(136003)(39860400002)(451199021)(7416002)(5660300002)(66556008)(4326008)(66946007)(66476007)(6916009)(316002)(36756003)(2906002)(31686004)(8936002)(41300700001)(8676002)(54906003)(6486002)(86362001)(31696002)(478600001)(38100700002)(6506007)(6512007)(26005)(186003)(53546011)(2616005)(83380400001)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?TnRuTmw2QWh2eEw4MUZWUUg3TDliQ1N3aExlRnRkZ085ZFhDVFVnN1VBVHFy?= =?utf-8?B?NFFMZ1VsWWFxbVR3ZG1IZmxVVFhUczFUS2QvSFRMTW83US9XTW5Pb3plMkJM?= =?utf-8?B?MFlhQkhVRWxSRTU1c2dlM1BhMDk1Q1lKSmYwejV1bkJXTDgxeGNoYVk2WTV4?= =?utf-8?B?VDdWQ1hLcmYydE05b1ZHWHlXT2R5N0htWXkxV3ZxeVI5MmRWZjZ2dEg4VmU0?= =?utf-8?B?d3FoMFBxRGhVSlRhZVVhSFhkMWxFZVVtVmJ4bEZqQU8yR0U5d2pTSlZ6OXd3?= =?utf-8?B?RSt2dmZJZllkR0E0Q2c0SlkxUUlxZVVlMXpkWTVhdnZUQjhvT1dvR1A1RDR5?= =?utf-8?B?L0ZGN3REMGxzdURnMkNtQ211NFk4YlVQc0QvaXlIZ09WaUtOanVqUjJCSWsw?= =?utf-8?B?c2IrT1dSMU5pbThMaW1DQzlMYklHZWF0RDJHaDRzd3h0ZzJ0bnVCYk5yWndk?= =?utf-8?B?Ykp2TWZMdmxBZklLc253NFcyUVlUL2F1eXZ3aEpwbkNGNDY3cnJnN2p4NzYr?= =?utf-8?B?K3ZYU2wwVnc4d2NFUDEwNWEwdTFJT3paYlZ0c2pwNUtuQXo3WC96WEdtamx3?= =?utf-8?B?Y1ZQRkdTdjlEV0o3SHA5Y1hCU1NpZmtMbXRyNnIzNEF3RGlGcWxXOFZJbFda?= =?utf-8?B?MW41bXU1d1FTamx4OGg3d2RWTnF1bmlUcFBHWElTQlVmcHFYWFN1Ri9iN3pa?= =?utf-8?B?QUtxMlJPRzhQMlRXbTNSSzB4TC9ucStHcExoa2pPem5uNUorRzQrSVY4bk03?= =?utf-8?B?T0J2eU5Kb0c4MDROaGRzLzYxRnRVOVpDMUJkeTZwZjZVdmFuWUlJdFdoZjlz?= =?utf-8?B?UlhtNWVYVUVManlNcWhwTkhxb2tNbUVXNzk5dWsvZm4vMjJuME11ZGhkbm14?= =?utf-8?B?SHlGUHVQRGE2eFFGU2NubVM2a1Q3dGRCZDVWemdGUnJWd0o3cU1odjhqWUts?= =?utf-8?B?OEplMTFUMU5RMWlKUCt1a3VydUFDNlZrVnNEL2I4S2RRRXZQem15b0ExTFdI?= =?utf-8?B?dXI5bmZseHlBN1M1VEd6aFpTYlp3dlRvaGdiQ0FKeVpDVGwwd2Y1SFozd3J1?= =?utf-8?B?aUhwem1wTU1NenNtVFA3djMrQU9vbFFQaWdMUEJhSyt5UFpFWW5qVjU2N1Nq?= =?utf-8?B?ZnpFbW1Pd0E5blhMWGhmUmNkbGFvYmFTbXhkUk1iZ2cvdnM5MGdRekt0SjUz?= =?utf-8?B?Y1FKTlBaTFBiRE5iRURMR2M0OHA1bEdyWllYdTZSK0tSU0JqMERabHd6OE1m?= =?utf-8?B?VkpWSE1YREZLMHFmMUlPYTZSWHJ1cy94MmlYVUxxZ0FIVDR0azMxQ3ZNWVVx?= =?utf-8?B?Y1FGN01aRkk3T2NjZ0JiU1lDKzdRaXVSVHN5SjNDdnhvY1dsRFJhd3picFpr?= =?utf-8?B?bVdPTmkxS1MvZSt2ajZONnZtR0tzSUZEMW42OGJzVUIrS1JWR0tIdVI3Q0R1?= =?utf-8?B?U3NpMURyS2JDWjY2NXlTMU9WdlE1a1FBVnBEQ01SaWlrVzRORHZid09ZQm9V?= =?utf-8?B?VmFQYmRuSFZqQWVTZVRkWFBTWHZNaExOVmhrbXpLcjkzbTVRN2JBbkhsUkV4?= =?utf-8?B?OFpuZlN3VGZyUnA5bTFXRXcxc2UyV0tFVFNIK0dRYm5pdVlLc0lJcVN2S1pZ?= =?utf-8?B?cjNmU2RzemtMbXJONGdIaUY4WSs5eFhQSWE4VGoxemtsNnZ2SzlIUWdONDcr?= =?utf-8?B?aUxpT1NQQ0tuMDJ0ZXFMTGl2aUNWNlJnN0p6UkljREkrL3NlN1A5OVQvMHlz?= =?utf-8?B?MDFhVER0T3JobCtFZW5qb0dHV3pjYnNWcEFDVS9uZDNHU2FwNUI1ZExHNmJR?= =?utf-8?B?cUpwMllFVk4yY3lEL3liTFhwKzc5MlU0a2FEVFJWM0wzVW1uekZzNWFmTVA3?= =?utf-8?B?RjYweWh6NDF4V3JXazNZZ29obTd1alR2aHZHWnpqMllTK1UxalJNSTRZRk83?= =?utf-8?B?aEJ5MUFWMDJqbUsyZlN1WVFLS1BlREE4TEdJY1JUVXhtZENCb3FQSnk1QzI0?= =?utf-8?B?VTQ3cnYveVAyZE41Z0xrNlAzNkpvdXhLc29YdUdSOGFKUGZmSmtRNlpUb1Zl?= =?utf-8?B?RTU3aWdONVJiTzhYRGVYYXkzK2RyZ3BaOU9lQzVORnBURkZnZGZPdDdQREZ3?= =?utf-8?Q?SOD9uP0vneZZFB0c37u8rcb5G?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: ee685691-f048-461e-7ded-08db7227a3cc X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Jun 2023 07:17:58.1693 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: MP8fmFqSfucjwKsZozF0wfYEIv4YcIz2XGk2o/Pg8fC9B4du2X0qimfqZY4hpfrsNqHlMianNIUX6Yb/63YjIQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB8385 First of all - please trim replies. On 20.06.2023 23:23, Stefano Stabellini wrote: > On Tue, 20 Jun 2023, Simone Ballarin wrote: >> --- a/xen/arch/x86/percpu.c >> +++ b/xen/arch/x86/percpu.c >> @@ -12,7 +12,7 @@ unsigned long __per_cpu_offset[NR_CPUS]; >> * possible #PF at (NULL + a little) which has security implications in the >> * context of PV guests. >> */ >> -#define INVALID_PERCPU_AREA (0x8000000000000000L - (long)__per_cpu_start) >> +#define INVALID_PERCPU_AREA (0x8000000000000000UL - (long)__per_cpu_start) >> #define PERCPU_ORDER get_order_from_bytes(__per_cpu_data_end - __per_cpu_start) > > Hi Jan, should this be ULL? Not really, no - we're 64-bit only. Furthermore the expression is about addresses, which correspond to "unsigned long" in our world. >> --- a/xen/include/public/arch-x86/xen-x86_64.h >> +++ b/xen/include/public/arch-x86/xen-x86_64.h >> @@ -53,10 +53,10 @@ >> #define FLAT_USER_SS32 FLAT_RING3_SS32 >> #define FLAT_USER_SS FLAT_USER_SS64 >> >> -#define __HYPERVISOR_VIRT_START 0xFFFF800000000000 >> -#define __HYPERVISOR_VIRT_END 0xFFFF880000000000 >> -#define __MACH2PHYS_VIRT_START 0xFFFF800000000000 >> -#define __MACH2PHYS_VIRT_END 0xFFFF804000000000 >> +#define __HYPERVISOR_VIRT_START 0xFFFF800000000000U >> +#define __HYPERVISOR_VIRT_END 0xFFFF880000000000U >> +#define __MACH2PHYS_VIRT_START 0xFFFF800000000000U >> +#define __MACH2PHYS_VIRT_END 0xFFFF804000000000U > > Also here ULL? UL yes, but as above I don't think ULL is good to use for addresses. That said, things are a little less clear in the public headers: In principle it could be a goal for them to be usable on foreign architectures (say e.g. a 32-bit tool stack, or an analysis tool which can be run without being on the original host architecture) as well. Furthermore, open-coded use of ULL would make this no-longer-C89. If anything, it would then need to be UINT64_C(), yet even that would grow our public header dependencies on C99-like infrastructure being available (right now we only require certain stdint.h-like types; Arm alone, interestingly, also uses PRIx64 and PRIu64, which may be kind of unavoidable there). Jan From xen-devel-bounces@lists.xenproject.org Wed Jun 21 07:28:16 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 07:28:16 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552492.862607 (Exim 4.92) (envelope-from ) id 1qBsG1-0007QR-1B; Wed, 21 Jun 2023 07:28:01 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552492.862607; Wed, 21 Jun 2023 07:28:01 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBsG0-0007QK-U5; Wed, 21 Jun 2023 07:28:00 +0000 Received: by outflank-mailman (input) for mailman id 552492; Wed, 21 Jun 2023 07:27:59 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBsFz-0007QE-ML for xen-devel@lists.xenproject.org; Wed, 21 Jun 2023 07:27:59 +0000 Received: from EUR04-VI1-obe.outbound.protection.outlook.com (mail-vi1eur04on060a.outbound.protection.outlook.com [2a01:111:f400:fe0e::60a]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 241dcce7-1005-11ee-8611-37d641c3527e; Wed, 21 Jun 2023 09:27:56 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by DU2PR04MB8984.eurprd04.prod.outlook.com (2603:10a6:10:2e3::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.37; Wed, 21 Jun 2023 07:27:55 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6500.036; Wed, 21 Jun 2023 07:27:54 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 241dcce7-1005-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=hi7wm8rwqf2RC/B+wEq4QmY17kagfsske03Rxlox3mSrycNBW4PEyzvb8QLvIv6RmjlbUqfd5wc4WvXpcK2ILzOBtToLh+dO0lYArxHlwgGEw/Yrs7OEmjFg0Weyc0OF6I2RMA+3y1MoS1muZQlYhLA4rY/ldIde8hLuNpeijnrq2RIxO4b+5iEehjSbLRhHytyRNXLRdaFRRs0ZMkPTlK60nrGqQsg4VWVYE0gvhvD4hHY2gDIapLthnfznGO40D7OgkUF6ISaj4UrMVianLWtj5hDqVpUdJpmjNLS577/23pJI6MRXg2zpCPPdoPweSHjEm8vrmzqDDcv4atjJyg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=OYeZO+PfpbyGcZM/QTnmiajuf3q3Xwky0uctM6/Eox8=; b=kZFosY4aILAFfpdItGCHbhw8yzwElt9aVxYz8I0vZFFQvtbs0/fr6TKwrSlNejyUzXLbopkJkerleltOqdsJTWGquhnQ6znzcWC/SzQ/kwUitJ1TF2QxdG48o64pPcAqt8eBl6Vfji+IbupBigOgFLdfEHmI+m5dFY6Pe4odTOoHAAVpylLRsz2ROLRbYWsFQyf13zRedmYwfwlDVrZY5AiEW0PUaXSGE9N733Lbr4NfwqwopKNopZ2nIVBLOxHyJlDgIwUM3GBma6LxtFiaDnvhMWnlqmwPp45Aloyt//ZGUPkIs8qWp3N5LyQrvftGISt1FNYQa9l6zIdMN5OVpw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=OYeZO+PfpbyGcZM/QTnmiajuf3q3Xwky0uctM6/Eox8=; b=rLTSspTENQZvqZQlIxc5EusOSXxzLa1s7VxHk+JkmPjSruwlB0AgCVV4i6fKIP+ewFPodG9DxFgiOQt6VS3w6QyswBZ+ZqStXQA2OcQ5cQnuyYLB6obHN5Rrrrqbhwi5B4lASiZSWHhKWX27IvVOegSnqBsGF/0DOkqO9OjLTNlsMDBKCq2Cd2C9oiIKudFWgj3sYpq4bZyvqphQSRDvHD85ef3n92d5b21GdKtQOGZUZXsRSYnDQ3JSZ/+zAeKJQ5Pj+oCfZLTaBQ6CVMqGUWm/vT39hzFX+G0Fk4Exp4AK8/kNKM+h/tOlGHTyD9cTOoNhLIvv1AwPABbWvolW2w== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <98a2acc7-956e-d97a-ac2f-5d7368f2cdc3@suse.com> Date: Wed, 21 Jun 2023 09:27:52 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH] docs/misra: add Rules 8.2, 8.3, 8.14 Content-Language: en-US To: Stefano Stabellini Cc: julien@xen.org, andrew.cooper3@citrix.com, roger.pau@citrix.com, bertrand.marquis@arm.com, roberto.bagnara@bugseng.com, Stefano Stabellini , xen-devel@lists.xenproject.org References: <20230621012618.2661337-1-sstabellini@kernel.org> From: Jan Beulich In-Reply-To: <20230621012618.2661337-1-sstabellini@kernel.org> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR0P281CA0094.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:a9::14) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|DU2PR04MB8984:EE_ X-MS-Office365-Filtering-Correlation-Id: 1cba5cae-0e7f-4a7d-c92c-08db7229074e X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: fJkFMzOk1ZuIk24iV4B2zGzW8TkEVJMMOw2bdKZ4vG7GttIQZI4hHG3T1IK8kSuv8tciaoD29P0EdZcT+sOixY7hpSfzafEswlU+qduwd1yjTwuZIDUFfPiYqatayf+WgcFI00D8N7cBLyxKHKqV73t4L/q2OU8SxTbYWTMCBGBNqwCYssE9W1SJ0QRebqDt2D+qgu4i7q9JcqvlGoVqpEiCKbzVh+Xfw87/7Yo8totUNkFHox7f3CN8NFpD65/ysLBioqwZGyLIgV/S8u2HtsH10TQrAOP6Yia/e6b06fNHBSexRH12LkZRZ9xhg7tG63miBHoJs9svKiB++procGfYre2zbNnpJJSGeZdhL+rEM7C+bWbY1ogRO+6xUFpwXSuvzXxy8g7RphixBLbTPqyHqbDKSrg+Czqgnl2VS5k5gzi4qb9bnYD/IFiwGYjpbX8nsLYPWD+GY2SxaxRNmS7+4LRKCvRhzgZoP0TTXbtMgNyNtaxL+GhGg4NLd+jB5eCUJEdr7JeeS+pCvDljqc/96urUcSTp9utg7xQFhESwGO5tAo5suSSP0Ki22bVJBw476Lv5kZPEnx0Y2ayXR3fnVvg9S571u1rZUjRyh8MBK5LxQQ3idM8qzGRx4rwSiXFMDWaRTVLLXAHum8fJiLV9n/iJTi89vuP5sF8SLD//WD+g5o/h8TkYui74Ndae X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(346002)(39860400002)(136003)(396003)(366004)(376002)(451199021)(31686004)(66899021)(38100700002)(6506007)(6512007)(53546011)(26005)(5660300002)(8676002)(8936002)(186003)(316002)(478600001)(4326008)(36756003)(66476007)(66946007)(66556008)(6916009)(2906002)(41300700001)(2616005)(6486002)(31696002)(86362001)(83380400001)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?c0RyWWdTbnZ5M21NaWhzTlNQWWlLeVFKeGtHV3ZnWTcrQXhyUHVHbDFLb1pp?= =?utf-8?B?WjNjUkQ5K09zalNkdU9RRy9yZkxmVlBLRzBtNmJxWjVOZ3V0enIxSHRXSzFJ?= =?utf-8?B?TG9mNU9HY3NlL3o4REJTVEczQUV6aGVmUlBnYjFhQm9neDdzclhjeStjUEZz?= =?utf-8?B?V3hxVE1NT0kySXdUOVZHZDUza2JCazlSVVRaQzhSR0pTaThCc0tlWm5obGlk?= =?utf-8?B?SXlIblhXNHlPNktLSTlPeUFvY296NkdjN1BFSkcxck0xMWxjb0NhTWg3RHNq?= =?utf-8?B?Q05wcm5LS1E4OW5LS2pGcW9Ud3h3UHBPNS82SWxwemZQSUcxT01JaXJkK0tu?= =?utf-8?B?Um5WN2tSQ0FIWDk4dHNpUjZlOUFWKzNhdFhERGtzREFKdGZGZjl0VTJsWkVM?= =?utf-8?B?WWREWXRtV0JMSnFTREZUZ3dpUjNreGlaaGFXSVNNUXNWNERvUlU1dWVLQWdu?= =?utf-8?B?Y2FweWttTXNhd2hoVXIwTDFPbExESDJzNlNFMDNoUzdMYlF6VThRbm5DMnZW?= =?utf-8?B?WGFKL2g5Z2xJNnROYUoyZXp6a1l4a0tLQWlIdmUzQytQYVBaQ0drOS9yL2FK?= =?utf-8?B?blh4ZXY3c0lVVlpUVHhtaUtxZ3hJU2Y1MjlLa3JhYXN1SnlBN0pKTHFaSzVt?= =?utf-8?B?eUZyV05Rd1AwQTFmSVhUN0ViOVUxTUdUU3NxbHlyeDZmV0RybEhja2hwN0d6?= =?utf-8?B?aUpna3dpV014NUhpZUtzZWY2cTVXQlZFOWhaK2Z6OTJJQ2dCN2Z2L29zcVJi?= =?utf-8?B?SEN0eWdUNEpWLzJVeFJkWTVmQ09tSlpFODN5eGhnZEhwNTNBSzZNMHBuVko4?= =?utf-8?B?NXh5cUt2Nm8vSWFRL0tCbENGWGViaUdwNlhVcUNONnJYVDd1VkNWQUZra2VW?= =?utf-8?B?MTl1bmlyVXUxMFlLTEtJUUpSRWQxWDVqbXRZUHYzeWQxRmpUMHgrcmxvb0Mx?= =?utf-8?B?Qm1GblloTlovQUNFbzVjOG9xVnQzcnBFcGJiMDFuN3ovNFUvdmNlWXdwMVdy?= =?utf-8?B?N1RGQW96cXJFVWVLcHJobEhWdEc4RnpNcUxIRWNtSXlQU3Y4aXNPaVJiRlRB?= =?utf-8?B?MFAxckhGV3JmOXd5b2JNTXhMRGVpZ2daaThodFQzcE9qY3FiY1pzMjk2eVFh?= =?utf-8?B?a0lPb2dab2NPSTg5NlNsdVZDY042MWJ0blB2djY1NDhRZFZxb3NRYmNQUnQy?= =?utf-8?B?di9XUWtwdnl1ZS9BTG43anA5L1ROaGdiL2M0SWVsTFZjRzh2Wi9RekpiQ1lR?= =?utf-8?B?alptL2FYblpERlNJRG53ZmNlMWFrUkJRbG9WMWJFL2l4SDZSL1BDaTBxQXlm?= =?utf-8?B?dlBKb2ljNU5VaG1yelN1cHpCNE1CMFJTbFpFQ1ZTdTRhM01Nb3l5TjdUNHRu?= =?utf-8?B?VEIycnJ5b2VsMUdWT05Rd0l3T3pHeGtyNXpVNFJMU25BUlJBUTZQQWhRSzNV?= =?utf-8?B?Wk5LU0FUc2lrVlhxc1EyMTNNY3NFYW9DSFpENkNVUWh0Y2kyM1lJc2tQOXhS?= =?utf-8?B?ZFlqcVVJcHRsMTFITVZvZVJJUjFyWWEraXprS0dmKzRoNk5ZczNPZXhXbzVD?= =?utf-8?B?T1RhZjdhM2dBRVNZUXZDZE5pdnpyMkxyVjhEbUlDRlU3c010aVMzSFQrT2Vv?= =?utf-8?B?VzYreWQ3SUZuUUNOa2hQNGpJaWREOTB6YkwwUXpSNm5zczlKMHB5UEZBU2Np?= =?utf-8?B?QmVKT0MwNnZLbGdUMjBvTVF0OGdMWEcrb3JTY0JDeXBPeWt0d2VaVllscVRG?= =?utf-8?B?L1dZL1JTUjRSS2hxWUd4cytnbkQ2NHZFS3JZem9FU055YkIzL2xVem5XTHJN?= =?utf-8?B?VVRCeC9HdHk4c3Y0SWVGQXRpZ2RsM2RnZjlwUlNzcVdvN21zRTBncS8wMjE5?= =?utf-8?B?WWdOTjFWdndwMGMwTVhrUUNzQUNUcTVNMzZiVjdLc0hULzlTQTZ2bmFldWho?= =?utf-8?B?TG95UzVxRm9OaUM4WWdrRG5tUGdqcThuTEZyRVEwY003S0ZvT1NCOVJiRC9W?= =?utf-8?B?YUNqVVZib2lKaHZ1QzRqSk53U3VTSFg0OUtxQVJJREpwa2pPNHZTMnk1VXcz?= =?utf-8?B?WHAvOUVMK1JSQzYvdnRqYS9OM1NLejczd242aHZBQkRBUElCSFRBMTNwSDE3?= =?utf-8?Q?W/bfl5fNIgzrJT0WL5QVlz4L5?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 1cba5cae-0e7f-4a7d-c92c-08db7229074e X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Jun 2023 07:27:54.7252 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: NDFPmLL/hmopn/a8WfWk6KqNXtbzRf3stN+DX/R7EVxXkqRZXtObOjAauZUPU/cC4TLtVd/1UY27mu6pbEVAzA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU2PR04MB8984 On 21.06.2023 03:26, Stefano Stabellini wrote: > --- a/docs/misra/rules.rst > +++ b/docs/misra/rules.rst > @@ -213,6 +213,17 @@ maintainers if you want to suggest a change. > - Types shall be explicitly specified > - > > + * - `Rule 8.2 `_ > + - Required > + - Function types shall be in prototype form with named parameters > + - > + > + * - `Rule 8.3 `_ > + - Required > + - All declarations of an object or function shall use the same > + names and type qualifiers > + - I think we want to deal with uses of const when not qualifying a pointed-to type: One approach is to simply say we don't use const like this (and the few uses there are should then go away). The other, if we deem this a valuable feature, would be to make a project-wide exception for this case, as having such const in declarations is meaningless and hence at the risk of being confusing or hampering readability. Jan From xen-devel-bounces@lists.xenproject.org Wed Jun 21 07:37:57 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 07:37:57 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552497.862617 (Exim 4.92) (envelope-from ) id 1qBsPT-0000Uq-VY; Wed, 21 Jun 2023 07:37:47 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552497.862617; Wed, 21 Jun 2023 07:37:47 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBsPT-0000Uj-Ri; Wed, 21 Jun 2023 07:37:47 +0000 Received: by outflank-mailman (input) for mailman id 552497; Wed, 21 Jun 2023 07:37:46 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBsPS-0000Ud-Ax for xen-devel@lists.xenproject.org; Wed, 21 Jun 2023 07:37:46 +0000 Received: from EUR01-VE1-obe.outbound.protection.outlook.com (mail-ve1eur01on0628.outbound.protection.outlook.com [2a01:111:f400:fe1f::628]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 8277aed0-1006-11ee-8611-37d641c3527e; Wed, 21 Jun 2023 09:37:44 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by PAXPR04MB8688.eurprd04.prod.outlook.com (2603:10a6:102:21f::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.37; Wed, 21 Jun 2023 07:37:40 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6500.036; Wed, 21 Jun 2023 07:37:40 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 8277aed0-1006-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=MbdCG2AldNJY3vGUEcmUDiKB9vsQO1iQHUkyycDkWZFKYbP7vOwWY9JxTZkhz3gVNAfwoskPR26omo13HMlh0K0Vrq9ZLqxI82EcaiNEZpd4nEtYZ6VTGzYdsly4/B30LSBY/kr6/UmAcOIr7vIEXFV98ncKXOVlEVEYSERJ5qC7qw7SHnVg5YYy69OIww5S1UYOVnpI/bo/tgLRGFMFJKsBjyiYf9ZsjwovyDvx5XyHx1yqx4L1xfnfi9oFdYN80lOTidA0FY9Rbk3I6J33AvYLDWnIJInK3GpyQngJazyPvJCkgrY+bnYXQoo6zfaEgn0tFa5D+qgMWin2Z5B/NA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=EvIT58V+xKK+dwMjcJKjNZS1UgUeGFEnreN1wDt/KGQ=; b=VAA9yoagcfCxpqwgUhrlfMVbCLUPbYxk4Lis9Z06yXqI4Sb4lO/7UAlFJbcFtD0fK/4Hf4geitunh5Rws/eoB+z1mF2VlHhAs/4mCyktV6Ldt7+y4gZFHXLaJU+m1nzdWZ+oBw+qZQcrpNTfYHg/hGJ7k1oDA4wni46U/r8edj7G5AxZkLbmXpEO4IjFkUiSR1GnxQxSi+9aEDazdfTmcQDfcW7T/8x27NxsVKGdVnyt8T0YT+w3TKPyFzRfnqArjOGMK0MecLftJNnj2vzVUfyJKtV7B3Bq5qR3Sq9rC7GKFtX5cOutVkXzq3bOWAM2Rcq37gryXk9IfZ3X2Z6Njg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=EvIT58V+xKK+dwMjcJKjNZS1UgUeGFEnreN1wDt/KGQ=; b=GjAeV2CIYV8hXa4GB/YQbFyOT9PRJLzl1lkchwT/hYu8bUnvX1Vpdv52YzCXoU1i1B46ad2XuKlFoexWH+sTDctQ6O2tWa65KFB7h1XIJ6SDkauBou+0tU9FftJrmFt9563QB0SNYecWEA16Q/7v9Dope4foSdDV62XoebSBfCHIJqHKRPfi+tbNsH53Jwg1d0bE00pfJuFFNRtFRKKpQ2kHJBnCQv/5W4ORGdkMVWsTY3VMHiBCggtCFZPyv95smkkdNxgqCluS4ytCK9z98HDuLFCMLqP9ZTQxPEkWbobsT/99PDSBHeey3lWfbk4rVuDMtLG+x6F8RhQt6dYkiQ== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <3daf5b51-cf5f-b9c7-b02e-0db5b48aa03f@suse.com> Date: Wed, 21 Jun 2023 09:37:37 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH] x86: Drop opt_pku entirely Content-Language: en-US To: Andrew Cooper Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , Henry Wang , Xen-devel References: <20230620174704.3907275-1-andrew.cooper3@citrix.com> From: Jan Beulich In-Reply-To: <20230620174704.3907275-1-andrew.cooper3@citrix.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR2P281CA0035.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:14::22) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|PAXPR04MB8688:EE_ X-MS-Office365-Filtering-Correlation-Id: 97c193e8-979c-48f7-8ebe-08db722a642d X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 6FyQDnjlPC9NsO8Y7RsHiTfz0pdzpVjac6trnFrzT2FnFyb/7HJXC9jXSVcihInwHqZA54I19UJqZBrfYL6gscpM3+bfRe1gbNOqCARBO6dbH3pxMktXmeMBj4pshoSEafnGQtlIHHkl1u7+D3KFNIVzgeGLpRxW8m+zzcZ08GTkRjwIiIJICj1NWtn/ljsrtMZ3MF3qhAT0Lhu8aZQKtTpc2hA8IpZLGbFsNDPQEIlRQyv2GMZuT8vsJ6yl7FaJk2/qNiP0hs1KiQG7AhsAfqBLd1/5NO+IyJqJQFUNO4qt1u50nCTIF+KJbr8WnhjfjCIaN8ebtaWcB6OV/mmc40A/CqbH1Y4cC1MbuyRzUxHoGkIravo7fQrdjyyMIfndGeS4MQtr34F4FddAVdaAaZRpZ2CgnbCIU54SmZ+hffQHcQCqyY28XLFyNz78BfhzHxRCQSgoP9bbgAjkxZnGP9E44VSJr7nJkQNnhbLrHfm3/4gYQqDjoCkIWh6eEGiXsMYegrM5kIbO0sMP8gVQQ+sBP9yK4fpI8NSCgSH+0W84IEmSHUD+TWeq4DQYKnT1y2zyLeXUFDMNbIDSZ5ZRJZsoOOxHSe6bLz8HKoA6A9LZrI87s5Mbkg6QPSVmObgYwcnajGVokVY5XeTujLc2LA== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(346002)(39860400002)(366004)(396003)(136003)(376002)(451199021)(6506007)(26005)(6512007)(53546011)(186003)(6486002)(36756003)(86362001)(83380400001)(38100700002)(31696002)(2616005)(54906003)(2906002)(8936002)(316002)(8676002)(31686004)(41300700001)(5660300002)(66476007)(66556008)(6916009)(66946007)(4326008)(478600001)(6666004)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?bTkwOWFLTDZjaU16T0dCN2Y2SHhHbnVpVENVZzR2RnhPSjZkYjJJQlV6aGNW?= =?utf-8?B?T0djMGV6TERENEtNNHpZeW1RbTg4SDBkVlJRcWVJdDN2NUZhVmxQd082RXU3?= =?utf-8?B?Q3JPTGh4Z3lYVitDbmhMWWEvSG93enBkNGIwL1F1K0ZHYy95QkZ4RFJjWHF2?= =?utf-8?B?VFd5TWlvT1dnOXhyNnNGcGpsQnFhcHU5YSsvR0VnQ1Z5M1U4TCtNcURlU1NR?= =?utf-8?B?NTZKVEp6eXh1REpuVkxieU9ESnAvZW9uR2ZlUFdvWTdlVVMxeVR2azFWV3Mr?= =?utf-8?B?UVB6ckVSQnVJTXV1ZGp6b2dNWDh3Y1NwTTV4QjlkSnh5NlhsNytDTWlSR053?= =?utf-8?B?bUNPN21XVFFJblJRemthTGZSNG5CNkJhcXhXUy8ybmRsNlBxaUZWZnRqNjhE?= =?utf-8?B?ZXBLVXQ0VmhFVUlKb1BncTJ2R3pNV0ZQTGthMnRKdDYwNXZwUHU1QWFualJk?= =?utf-8?B?M1RVWTk0Rk0rRzQ5RHpVWmMySXE4TUNOS3ZIVjlpcVB6d0N3amp4N3NqbWEy?= =?utf-8?B?NkNTZEJnZURrRjB5Q2crNkV5Tk4yM2psSUxtc2RnM1hUYjFrdjVacXYzQUE0?= =?utf-8?B?M2tFZ3JLQ1NlS0UvbEhtaEc5NUtVZWxoYXIrNWNFbkNyMkYzL0hta1pMVVE0?= =?utf-8?B?L3U1SHV5TVAzU3RPU1NsODM5UjFadFpSbjJSUkZRdkxxcDF2bEdvZTNWck40?= =?utf-8?B?REFpWFhxZk5hRlRoNytYbzRFOHhCcy9IU0U1bDNwQ3ZLbjBERDV1ODJRMEI3?= =?utf-8?B?WkxIVDdvczZPdVpPREVPU3FoYllzbGlvUFF2RzU2KzlIemhpQllDdDJQWVps?= =?utf-8?B?VFgzTEtBSWVrRkk1anR4eDA1cDQ2eTZWekdzS25rK1dwZ2NpSjVvUUk0Nnc3?= =?utf-8?B?Mk41VVoyZHJLdXZhd0lCeEs3aDllRUdLTW03Wk03c056bE5VdU5EbkE1N1FC?= =?utf-8?B?Zk8xMmxMV3pCVlpla1BuS29CY3hWdUNaV0hHc09HZlIyZHB3TU5QTGRHTXZF?= =?utf-8?B?alJjWWs4eGdFd3RtOEM1QXN1M0pRVThNYVpuZUcwMWo0anJWR3J3YkJlbXJa?= =?utf-8?B?TUE0YUgyM05yMThtbDZXU0FVcm5aamFVNXVzNFRpZ2M4WXNVbUJSTVBrL3Z3?= =?utf-8?B?MTVrVzRuZG04dXpUVjZpSjRYa1FkUUMzdGQ5RGk5VStGZWpWNFVXN1krRHZ2?= =?utf-8?B?Z05wYlBSVDluZjliUFFBWktZNm0vVWhRd2lNVTdIM3dET0tMQkxVQk40MzlQ?= =?utf-8?B?d0ZCU1cvTDJkZnAzR3RaRWh6dEM5WWNYZ1ZiaG4yRE1KNEdDQzlVOVJhdE9s?= =?utf-8?B?bXRBYXNqbUV2NEJSaWNHMGs3c09OdjBwNG9xN1g1Y2t1L29ycXF4VW9oSXVk?= =?utf-8?B?aUd2TU01a0ExemdHK0kyQW5HQmUrWVhEaERWNVh1WENuR1NyQmdiNWtXazdv?= =?utf-8?B?OXRMdmlJL1IyRm9jNjlxMVl6K2IzNWFFRlJSU0NJTWFWTmR5NlhTYUVRZ0c4?= =?utf-8?B?YVA2aVZLSExpcm9rdGhPTVFGbTZ3UWpYZTg1MlJrL0JBWVBMWllQSElHMzVj?= =?utf-8?B?eGpvMDhEbEZwSjQvQ2VpMVNwQXdHc011eHBSZnRrVzdtSjNMaFVhbHBQcDdK?= =?utf-8?B?TXh3NnFLVytINVdJZ1lZcUhWYmRXaTRrYW5VaGZ4RjQyVWdNRHpEbWFDVUFD?= =?utf-8?B?WUswK2xodVpiN04rUjR1UStFeXMvOUZKQldaZ252Vm9GNm1mRWZHVGV0L0k4?= =?utf-8?B?UEc1Nm9abFVjNjIwNmY2NHNWR3daUktoY1dvZVJ4RUtlbmp5M1U0cThxUkIy?= =?utf-8?B?cElvNzByMWYrR0RHV2JHcVA5N2FnNEdwbFdkTDhoQm15UlJ0K0ZLVHdWUFBi?= =?utf-8?B?OHQ5ZkRMYXdTV216QlZYVWtwVzFORE9UdDd1QVFoc3F4TitlUU1ObWZUbzgz?= =?utf-8?B?dlVnNVI2dTRIZE1GM2s1NVlTenVURUR3WDhremRlNmJVNTg3MEFSLzJET3RS?= =?utf-8?B?ZWY0d3NPUUF6RVo3bWJlcWFQcGFGbURHdWd5aWE5Vm5LRjRxYXA4Sk55TVJv?= =?utf-8?B?SlppYi9SRUhPZ0VNak1MZkt0b1lBNTAyY0hvSGxhTFdmUjJ2WkRKekh5cWVU?= =?utf-8?Q?EWN6KEM0XpzlZXbcMexx31kVy?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 97c193e8-979c-48f7-8ebe-08db722a642d X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Jun 2023 07:37:39.9562 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: nv0CBA3afNlft0005O3IzADrh02MBkwVm4H74b0MWKxI/CMX56g1+z6YtXn6cRxTtDd8TKVH8MA4ZC0XKYLjYA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB8688 On 20.06.2023 19:47, Andrew Cooper wrote: > --- a/CHANGELOG.md > +++ b/CHANGELOG.md > @@ -25,6 +25,9 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) > - Add support for AVX512-FP16 on x86. > - On Arm, Xen supports guests running SVE/SVE2 instructions. (Tech Preview) > > +### Removed > + - On x86, the "pku" command line option has been removed. It has never > + behaved precisely as described, and redundant with "cpuid=no-pku". Nit: Missing "was"? > --- a/docs/misc/xen-command-line.pandoc > +++ b/docs/misc/xen-command-line.pandoc > @@ -1950,16 +1950,6 @@ for all of them (`true`), only for those subject to XPTI (`xpti`) or for > those not subject to XPTI (`no-xpti`). The feature is used only in case > INVPCID is supported and not disabled via `invpcid=false`. > > -### pku (x86) > -> `= ` > - > -> Default: `true` > - > -Flag to enable Memory Protection Keys. > - > -The protection-key feature provides an additional mechanism by which IA-32e > -paging controls access to usermode addresses. > - > ### ple_gap > > `= ` Elsewhere you said that we kind of imply that only the explicitly named sub-options of cpuid= are supported. If that's the case (which could do with saying more explicitly), you will want to add "pku" there in order to not regress what is (deemed) supported. It also looks as if the speculation control related enumeration there has gone stale / is now incomplete. Jan From xen-devel-bounces@lists.xenproject.org Wed Jun 21 07:59:09 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 07:59:09 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552504.862627 (Exim 4.92) (envelope-from ) id 1qBsjr-0002zI-P7; Wed, 21 Jun 2023 07:58:51 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552504.862627; Wed, 21 Jun 2023 07:58:51 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBsjr-0002zB-LZ; Wed, 21 Jun 2023 07:58:51 +0000 Received: by outflank-mailman (input) for mailman id 552504; Wed, 21 Jun 2023 07:58:49 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBsjp-0002z5-KJ for xen-devel@lists.xenproject.org; Wed, 21 Jun 2023 07:58:49 +0000 Received: from EUR01-DB5-obe.outbound.protection.outlook.com (mail-db5eur01on0602.outbound.protection.outlook.com [2a01:111:f400:fe02::602]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 71a9a25e-1009-11ee-8611-37d641c3527e; Wed, 21 Jun 2023 09:58:44 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by DB9PR04MB9749.eurprd04.prod.outlook.com (2603:10a6:10:4ed::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.23; Wed, 21 Jun 2023 07:58:41 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6500.036; Wed, 21 Jun 2023 07:58:41 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 71a9a25e-1009-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Q1bNX1X6YgGGLMS19Dbm83EdrEd/IKGUdns+7WRSX1DOyyHQ8xIKQ6cqYKhZ/EqUWWa6qbUn9ZlNu9j/Oxp4AtLFNN4EFlSKZqcaHoQlAYHBXISyXB2p0TPDmUkkq/TRitXJvWCcuhy9a55fuiIMGNEs9fWLu9hrZ4l21c+ZI3CK4Jc06aDJ32fw4QnSLBFVRMJ5ngcOgi+0HV95iPXyjXTmay4kfUyuggt0lN2jWLpxsVH16HjxgDTLtNJqg6dtPqVLa+HqXsx5X8MmswWwJgvVR2AZOLOYGG4hBHCeFkerT7EDxAlrsgXSPnrGHRXpoO/0QzzOu06Gj2qUk+6x5Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=DAfFwxHXDSjBDLqPWIAXU5ZPqOr60cP91v0ziC8JE8A=; b=Wd7hO93skmqVZ3iS6oNJ5DFz7j95rZj/8kKYmm2Qhb7OPq2OP4JxD//XOpJX9b8KnoK7RzLN0ZsLgTuaWvi8WhBb6ow53pFnzH1nfuDx0gmWx89i1BunODK8G4zoW7MXIyGBpuBGMUeurMqy/fvMW+nYOCRi4zlXbAQAS/+wZ6GGVpcXgUhbrLgu/wBCzPuxDUqpaHoqkH8nmByq9Jwjy35BR/0lpTp3lunjHFSUIaCTF/UGZ2lOlh6dCm9aBsx4Cec9+3VaHhQqXayzR+EB6/hJ5AwZA61xNs+f1TanvyPOpPQIjSWI663/pa3ffQiQ2jwySZXIAI5+9IOAQxI4XQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=DAfFwxHXDSjBDLqPWIAXU5ZPqOr60cP91v0ziC8JE8A=; b=X6iW/bD3yWoKPv2UwGuAMN0phBe2LH9LcImLBcrFdzMnQbAVa5OALgch6OcGrN1AlbQtPF1x/Tuhi3mtxcYE6Hy6/FqWYndqCjll3aKovfxwSiwVKz3DMzNMRsggmfjQV/iPCtOTwEVGMRBMeecmdFF//7yTjopwDlncCMzOag+qCjyN0HgJn4kQP4Usa9jEnrVk3zL3l5q3T3ZTwVUnwBISCLA3jyrURFmlQpOM6oFvA2W+og/Dpk5k1eJILDvTEq9EA6Vw37Jx2uUORjsxOwFCAUSxxfwMKc04+um7bWFzatPITUSxS/g6oHP5aC5ekSEjd8tCTqg2+P0ZiVyc/A== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <05678680-e96b-3ab7-7955-2a4f99c971b0@suse.com> Date: Wed, 21 Jun 2023 09:58:39 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v4 06/15] cpufreq: Add Hardware P-State (HWP) driver Content-Language: en-US To: Jason Andryuk Cc: Andrew Cooper , George Dunlap , Julien Grall , Stefano Stabellini , Wei Liu , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , xen-devel@lists.xenproject.org References: <20230614180253.89958-1-jandryuk@gmail.com> <20230614180253.89958-7-jandryuk@gmail.com> <66771ebb-7d56-ca84-89bc-14f69fe62bd6@suse.com> From: Jan Beulich In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: FR0P281CA0119.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:a8::17) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|DB9PR04MB9749:EE_ X-MS-Office365-Filtering-Correlation-Id: 7db83d52-a987-4c22-5c23-08db722d542c X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: Jtz3k5cf4JBr9Nmv/e6gJ+svHeDoSoESHIBXla080KWdF/13dSMsZ+sYaYekFjXM+x/wSM7RMNkrmM8or/zFGMKKd1XXW4vVpx1pcJwjqkK6d3uhGc7axAz28fXA56l+CNpfM9nYptT50ZKo6qJRg4cZfLV28MkYOacvxm/WkpogpOn8qW/6Vtes01LK5Tm4I2HAi7WzzvbPsRTcZqSjiIjVSLPQx4mbGQG5c5W0tE9smsvpfx5ULN9v95QozkAIn9Dn9Waph7R0XBu+0C6CShasE9TB16hc4umiQdFPjQWtsSqAmQrqVKKbgZm37pYro6W1JSzVdglpFvMZF3MddHsWl4wVyzzg/eWDeWN7XxmSt1fzBt5PEsBiVgZEpxTDo+SdV6V/b68c9P1X23VTjZn6g7F7WGK1MC1KBnZ5USKLK1korMxBYGosJoz6iA9am3lOvVFlznKBOwV+wx54UZLW5h9KL3OJtMBN/6KggLxpYP23gPFo5pyhoyvsAGeWuVUQWoFTDPmT0vWrvC8UQZF3gPquoMKRi1xub0gJRl1RXb/NNofXii3YU4MABdVjLEGfz+AQ4Ugr7DNgPV8R5yPF5rZPeSpteulC3NOGQmISM90BpfDjVdNu0Od49Zv9hvOF5oExWVBI1hAKRAUJnz95CpN64M5YrILtqdtCvyQk9u6Xyq0DSFB0kyj/E/DR X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(346002)(366004)(136003)(396003)(376002)(39860400002)(451199021)(31686004)(6506007)(66946007)(54906003)(66556008)(478600001)(66476007)(36756003)(2616005)(31696002)(38100700002)(83380400001)(86362001)(41300700001)(8676002)(6916009)(8936002)(2906002)(6486002)(6512007)(186003)(26005)(53546011)(4326008)(316002)(5660300002)(45980500001)(43740500002)(309714004);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?S0hGUUU2UDNhUU85THFhdUQwOXpiZXkwY0tqRHFwOVRwaWNwMmhhd0tEZ3Ra?= =?utf-8?B?OFYwUjZSMUxMejRnQ3MxRDZ3M0pFaDRUNTJNejlkNWdaRk5wNXg0ZVhtNkNa?= =?utf-8?B?ajBtcDcxMmtraFphenh1VllzR3plT01RcXlDOVRMVWcxTlJkVFVIVUZpbDkx?= =?utf-8?B?Qno4KytFR3Z6bFJaVFFyNXpxTElBL2hDVEgxc0hXUGtzUDN5Ky9FZC9wbVhH?= =?utf-8?B?bkpaVk1NT1RPK3NQRm5CdzNaTEtBWjlMaDYxRjNLVUV6NlBGcXpJbnZQSGVj?= =?utf-8?B?akUrN1Zsay9JQmFHbk5JaUlmMGl0dlJUSXEvUEcxU1c3M1FaTGlaRDJzZ3BH?= =?utf-8?B?NEpXMi92Y3h0ZDlKeEZFZFlxcy9Zb09kRkZscm1ja2R6RnNCcElhbk0zbk5O?= =?utf-8?B?aTZBTmJ2anpKTnE0Z2xSa0h6Vm9MckNCWGxoNVdqRXdCU2MyZFIxd25zQlZq?= =?utf-8?B?Y3o3azM0blNOQVNsdnhlMFJqZy83R2cyZnFvQ3c5MGV3N1FUN3FhZzhOUWNj?= =?utf-8?B?OGNzd2dEaTZqOE5sZ1NsdmNnL3pWc3dZSno3ZHlnM3hoOE1ISGtOUzFlTDZz?= =?utf-8?B?TWJXTU1POFFKV2M5MnFKYk9QV1lDQ3hJbnpUWDBWNUppenk0dG9lUUFNSlhU?= =?utf-8?B?QzhSOE15bUl6c1FGYXUyOXdVQ1B1dHR6dEI5cXNuZGFqeFNkUDVhVVhFVmRl?= =?utf-8?B?RURRYTFSTnVidy9vSFk0QmdSYlcyNXl6S3IyV1NFblBCY1g4MGJFNUZwZlpB?= =?utf-8?B?R3FUQWl6Rm9RVWJ3TnhNQkFjSWdVSEpTay96WlFLSFhyWXRiNitwSXJJN3N2?= =?utf-8?B?ZmZEanVIM21oRzAwT3pCLzk0RVE1cUFZUXF1MDVoRUVtN0lFU2JoNlBQTlVj?= =?utf-8?B?RXRKcmdaTU44SFg1TVFsY0xzWHZpdU9UU3VTbVJ0dGxEZGR6bGM5WTBiS1hO?= =?utf-8?B?ZHBXVUpoYnMxdzRFV0c2ZXdjdDBGcHg5WU5ZcmI2TmRpdGExNzNCWmtKdTRz?= =?utf-8?B?MDdSaWJOb0N4TmluUTZRQldxa1k5dUtNaVpLVzdoUVdscjFIZWc2Y09VM3g1?= =?utf-8?B?RkNtVGZhcXpycUlIRDErWEFsZkRNOWxwRVIwamVjUExIR2FNaFNrNXIraTJP?= =?utf-8?B?M0tPOGJEVGtwaEVON0lFcmdDTnpLK3lKa1pTN0N1SXJ2NVg1NTQyaU13VXIz?= =?utf-8?B?Ui9KMTM2QTRrR2RFdm5aa0lCYmFXemp1a2psQnQ5TGthWEVBeGNQbG1Qd0lR?= =?utf-8?B?RDRNYUZKWFdwcExRMndURnBIZVBKMGpiUEx4MWZCT21Fb0kwUnRKUWd5VEhG?= =?utf-8?B?Ym1VUUxsUXJKdzBJdzZvb0R2eTFSc1RYL1pPaXlkTXBPWDR2Nks0UWtUOU5s?= =?utf-8?B?Y2FxREhsT1Znbm0xOGFQU1F3bzJCOUhtTHM4VWNxbXdYVHJjQ0VSMVpjWVZr?= =?utf-8?B?RytNTExLTm5TbjZxbEVtb0ZIRmFIQ0ZzNTU4R2o3QWoxVGxTdVFFdHBMeDRZ?= =?utf-8?B?WTJiQ3Z3UXRGVmMwM2V2M21STnF0Vjg5aXlLcjFVSElmQ09XZU1aVG0xZVNa?= =?utf-8?B?S2prWG9idHRvV0wyS2tDTFpmRFVPSTd5MlNVSkdGbENFUjV3aVBXU2xMbHhO?= =?utf-8?B?MjNIVVhZNExDWm1TWTNzd1BxNGRvRkY0RjY3TEhBMG9MYmVtMlRJOGVpbVlL?= =?utf-8?B?QlV0T3U4NnEzTmNvWnVpWDE2N1JId29maTRKU0x2UW9Sa3JYVS9EdFNnU0xI?= =?utf-8?B?M2FXei9DNm9nOFZnVy9BMWdTTnozWGV3Z0ppSHhRTW0vQjdST3VJN3dQa3pM?= =?utf-8?B?NUpSRlhHOEZCUTE0YmFpU0t3QjY2K3hibDVMTTNOZGw3R0tjWnRBQUU3OG8w?= =?utf-8?B?TmxmMHNFRmdNRlFZUVcvNDRjYXR5OWtQTndQNUZYZHZaWUYyUVRoL0I5Z1Qr?= =?utf-8?B?dlBlSEM3T3lXU2J0WndXVHZSajRSNS9SUnF5N1lyaVQvVURnY3dObFBTZksv?= =?utf-8?B?dlB1OVdEOENrOEwva3ZpSWphd2NTVjI4VEpFcW5QeFpsa0ErRlAwUElKeHps?= =?utf-8?B?Q2JIMk9OcVVUMUgvN1IrTWxZZXRwR3BpNWxsZHpFK2g3dXNrdit3dUtDRmZw?= =?utf-8?Q?a6jJAmmb3oassOnRwu7Gzjkv/?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 7db83d52-a987-4c22-5c23-08db722d542c X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Jun 2023 07:58:41.5473 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: VWWROOIpM6Y99+Te/mZKiT3jF81hwD1OrVQBpa/T7sJEX3VhmfoKQbaBbZUeZhauWN8Ac9CbFbxz2UFA1LF8Vg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR04MB9749 On 20.06.2023 20:14, Jason Andryuk wrote: > On Mon, Jun 19, 2023 at 7:38 AM Jan Beulich wrote: >> On 14.06.2023 20:02, Jason Andryuk wrote: >>> Falling back from cpufreq=hwp to cpufreq=xen is a more user-friendly >>> choice than disabling cpufreq when HWP is not available. Specifying >>> cpufreq=hwp indicates the user wants cpufreq, so, if HWP isn't >>> available, it makes sense to give them the cpufreq that can be >>> supported. i.e. I can't see a user only wanting cpufreq=hwp or >>> cpufreq=none, but not cpufreq=xen. >> >> I continue to disagree with this, and I'd like to ask for another >> maintainer's opinion. To me the described behavior is like getting >> pears when having asked for apples. I nevertheless agree that >> having said fallback as an option, but I'd see that done by giving >> meaning to something like "cpufreq=hwp,xen" (without having checked >> whether that doesn't have meaning already, i.e. just to give you an >> idea). > > I know you disagree with the approach. I implemented what would be > useful to me and Marek. It felt counterproductive to implement a hard > failure mode that is unsuitable for my use case. Also there was the > possibility you wouldn't mind when you saw how it was implemented. > > Yeah, asking for an apple and getting a pear can be the wrong thing if > your recipe calls for apples. But getting *some* fruit can be better > than no fruit if you are hungry. ;-) > As implemented here, with HWP default disabled, > no command line -> default cpufreq=xen > cpufreq=xen -> only cpufreq=xen > cpufreq=hwp -> try hwp and fallback to cpufreq=xen > > If/when HWP is default enabled: > no command line -> try hwp and fallback to cpufreq=xen > cpufreq=hwp -> try hwp and fallback to cpufreq=xen > cpufreq=xen -> cpufreq=xen At which point the question would be why to have such an option in the first place. Plus how to specify that fallback to "xen" is not wanted. > Unless some other idea comes to me, I guess I'll look at implementing > "cpufreq=hwp,xen". Thanks. >>> +static bool hwp_handle_option(const char *s, const char *end) >>> +{ >>> + int ret; >>> + >>> + if ( strncmp(s, "verbose", 7) == 0 ) >>> + { >>> + s += 7; >>> + if ( *s == '=' ) >>> + { >>> + s++; >>> + cpufreq_verbose = !!simple_strtoul(s, NULL, 0); >>> + >>> + return true; >>> + } >>> + >>> + if ( end == NULL || >>> + (end == s && (*end == '\0' || *end == ',')) ) >>> + { >>> + cpufreq_verbose = true; >>> + >>> + return true; >>> + } >>> + >>> + return false; >>> + } >> >> Would be nice if the handling of "verbose" didn't need duplicating here. >> However, if that's unavoidable, did you consider handling this as a >> proper boolean instead of the custom way cpufreq_handle_common_option() >> also uses? > > It seemed more complicated to try to re-use the "verbose" handling > from cpufreq_handle_common_option(), especially since minfreq and > maxfreq are also in there. > > I didn't use proper boolean parsing to remain consistent with > cpufreq_handle_common_option() and the command line option > documentation. I'm fine with switching it to a proper boolean if > that's what you want. It would be nice if you could do that here, but I won't insist. >>> + goto error; >>> + } >>> + >>> + /* >>> + * Check for APERF/MPERF support in hardware >>> + * also check for boost/turbo support >>> + */ >>> + intel_feature_detect(policy); >>> + >>> + if ( feature_hdc ) >>> + { >>> + if ( hdc_set_pkg_hdc_ctl(policy->cpu, opt_cpufreq_hdc) ) >>> + goto error; >>> + if ( hdc_set_pm_ctl1(policy->cpu, opt_cpufreq_hdc) ) >>> + goto error; >> >> If either of these fails the very first time through (presumably for the >> BSP), wouldn't a better course of action be to clear feature_hdc? > > So if HWP is working, but the HDC part fails, just clear feature_hdc > but keep using HWP? I don't know how likely that is to happen, but > that seems reasonable. Just to answer the question - yes, that's what I was thinking of. Maybe accompanied by a log message. >>> +static int cf_check hwp_cpufreq_target(struct cpufreq_policy *policy, >>> + unsigned int target_freq, >>> + unsigned int relation) >>> +{ >>> + unsigned int cpu = policy->cpu; >>> + struct hwp_drv_data *data = per_cpu(hwp_drv_data, cpu); >>> + /* Zero everything to ensure reserved bits are zero... */ >>> + union hwp_request hwp_req = { .raw = 0 }; >>> + >>> + /* .. and update from there */ >>> + hwp_req.min_perf = data->minimum; >>> + hwp_req.max_perf = data->maximum; >>> + hwp_req.desired = data->desired; >>> + hwp_req.energy_perf = data->energy_perf; >>> + if ( feature_hwp_activity_window ) >>> + hwp_req.activity_window = data->activity_window; >>> + >>> + if ( hwp_req.raw == data->curr_req.raw ) >>> + return 0; >>> + >>> + data->curr_req = hwp_req; >>> + >>> + hwp_verbose("CPU%u: wrmsr HWP_REQUEST %016lx\n", cpu, hwp_req.raw); >>> + on_selected_cpus(cpumask_of(cpu), hwp_write_request, policy, 1); >> >> Is this at risk of being too verbose when the verbose option as given? > > For my client use case, it seems fine since there aren't too many > CPUs. But I think you are correct that for a server use case it would > be too much. Hmmm. Do you think I should drop it or make it > ratelimited? I think it may have been useful for you during development, but I'd rather see it dropped. Anyone needing to really fiddle with the driver can add back whatever logging they deem necessary for what they do. >>> + return data->ret; >>> +} >>> + >>> +static int cf_check hwp_cpufreq_cpu_init(struct cpufreq_policy *policy) >>> +{ >>> + unsigned int cpu = policy->cpu; >>> + struct hwp_drv_data *data; >>> + >>> + data = xzalloc(struct hwp_drv_data); >>> + if ( !data ) >>> + return -ENOMEM; >>> + >>> + if ( cpufreq_opt_governor && strcmp(cpufreq_opt_governor->name, >>> + cpufreq_gov_hwp.name) ) >> >> Nit: I think this would better be >> >> if ( cpufreq_opt_governor && >> strcmp(cpufreq_opt_governor->name, cpufreq_gov_hwp.name) ) > > Sounds good. Actually, with the top level cpufreq=hwp, > cpufreq_opt_governor shouldn't be set anymore. I left it since it > would point out something being unexpected. policy->governor is set > unilaterally, so maybe this check and message should just be dropped. > Thoughts? I didn't realize this could be dropped. If it can be, please do. Jan From xen-devel-bounces@lists.xenproject.org Wed Jun 21 08:00:43 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 08:00:43 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552515.862636 (Exim 4.92) (envelope-from ) id 1qBslU-0004vg-Kf; Wed, 21 Jun 2023 08:00:32 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552515.862636; Wed, 21 Jun 2023 08:00:32 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBslU-0004vZ-Hy; Wed, 21 Jun 2023 08:00:32 +0000 Received: by outflank-mailman (input) for mailman id 552515; Wed, 21 Jun 2023 08:00:31 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBslT-0004vT-Rq for xen-devel@lists.xenproject.org; Wed, 21 Jun 2023 08:00:31 +0000 Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id b046c6fb-1009-11ee-b236-6b7b168915f2; Wed, 21 Jun 2023 10:00:30 +0200 (CEST) Received: from nico.bugseng.com (unknown [151.47.226.168]) by support.bugseng.com (Postfix) with ESMTPSA id 549BD4EE0737; Wed, 21 Jun 2023 10:00:16 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: b046c6fb-1009-11ee-b236-6b7b168915f2 From: Nicola Vetrini To: xen-devel@lists.xenproject.org Cc: sstabellini@kernel.org, michal.orzel@amd.com, xenia.ragiadakou@amd.com, ayan.kumar.halder@amd.com, consulting@bugseng.com, jbeulich@suse.com, andrew.cooper3@citrix.com, roger.pau@citrix.com, bertrand.marquis@arm.com, julien@xen.org, Nicola Vetrini , George Dunlap , Wei Liu Subject: [XEN PATCH v2] xen/include: avoid undefined behavior. Date: Wed, 21 Jun 2023 09:58:15 +0200 Message-Id: <9d222cc83013aaa67b45638b27f5975b60aecb37.1687332385.git.nicola.vetrini@bugseng.com> X-Mailer: git-send-email 2.34.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Redefine BUILD_BUG_ON_ZERO to fully comply with C99 avoiding undefined behavior 58 ("A structure or union is defined as containing no named members (6.7.2.1)." The chosen ill-formed construct is a negative bitwidth in a bitfield within a struct containing at least one named member, which prevents the UB while keeping the semantics of the construct for any memory layout of the struct (this motivates the "sizeof(unsigned) * 8" in the definition of the macro). Signed-off-by: Nicola Vetrini --- Changes in V2: - Avoid using a VLA as the compile-time assertion - Do not drop _Static_assert --- xen/include/xen/lib.h | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/xen/include/xen/lib.h b/xen/include/xen/lib.h index 67fc7c1d7e..e57d272772 100644 --- a/xen/include/xen/lib.h +++ b/xen/include/xen/lib.h @@ -51,9 +51,10 @@ e.g. in a structure initializer (or where-ever else comma expressions aren't permitted). */ #define BUILD_BUG_ON_ZERO(cond) \ - sizeof(struct { _Static_assert(!(cond), "!(" #cond ")"); }) + (sizeof(struct { char c; _Static_assert(!(cond), "!(" #cond ")"); }) - 1U) #else -#define BUILD_BUG_ON_ZERO(cond) sizeof(struct { int:-!!(cond); }) +#define BUILD_BUG_ON_ZERO(cond) \ + (sizeof(struct { unsigned u : (cond) ? -1 : sizeof(unsigned) * 8; }) - sizeof(unsigned)) #define BUILD_BUG_ON(cond) ((void)BUILD_BUG_ON_ZERO(cond)) #endif -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Wed Jun 21 08:12:34 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 08:12:34 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552523.862646 (Exim 4.92) (envelope-from ) id 1qBsx3-0006Vp-MG; Wed, 21 Jun 2023 08:12:29 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552523.862646; Wed, 21 Jun 2023 08:12:29 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBsx3-0006Vi-JR; Wed, 21 Jun 2023 08:12:29 +0000 Received: by outflank-mailman (input) for mailman id 552523; Wed, 21 Jun 2023 08:12:28 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBsx2-0006Va-8C for xen-devel@lists.xenproject.org; Wed, 21 Jun 2023 08:12:28 +0000 Received: from EUR04-DB3-obe.outbound.protection.outlook.com (mail-db3eur04on0621.outbound.protection.outlook.com [2a01:111:f400:fe0c::621]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 5b1a3b85-100b-11ee-8611-37d641c3527e; Wed, 21 Jun 2023 10:12:25 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by AM9PR04MB7668.eurprd04.prod.outlook.com (2603:10a6:20b:2dd::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.23; Wed, 21 Jun 2023 08:12:24 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6500.036; Wed, 21 Jun 2023 08:12:23 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 5b1a3b85-100b-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=auZxOgiMUjnIjQgzusKTPK5RTZdYJD4iEYIiL3jRX/cZw2Fvy/4Jmn30zgoec5paPddUseuBycbZEGb/r71n8appKLjjoXSxu5SIgPXvuZJLTCfyn04XTCvEYI075dolfdPI+a9vdrr4E9aC+893girDjzCFNAwvM6mBW37vDxpP1hfP3PTlcKw4XdOn6FuNktz3ncMXClH1YUHxywGSwkhuNQIkDYbm5a2cCru3ih/AFk9etkzdnxQPFJz/zRarcHmeoEitf6B+5sn1gx9+Rtdt3lbg0p3W/LOCaE2k5i95awC3qjHCLI/Xb1/nTqWgR2fMIq0DZsZl/umghKpveQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=8TSEB+/Pdv0sTyLyox8UPTqTzTJf4VZ/f6ToSxlPBXU=; b=Z73xezowDKQjgDJoYWiiJ/NG4/mZVa4avZkQbKRFU+gjZNIk2aZnBmTYoW+NWve6DqhTadMmrGL74Ge6z9pIiJyYaKd8C0zM1lfU8Dy1hMIXsTRqUynOF6uEvbOJzdjQdG8ZDJkPt9VZ/xL7JtxsENmPdwy+pxKOYjnSHoTonBBh7yEWu5NC+9oCpJw2WzbF3sOcpY/DsMfw69zaBQMUwibaHVLFBVA4QFmqxkyO+pU+uCdvQvb+cuAiuU0fy58MllLheaYgTS14QIzX+BJ0fGYXuMo1Vln0JxWbX8LM/Jb2llQyb57E+sYegPATzyWw4wAkfOxOHVmlh4DO6EYN8w== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=8TSEB+/Pdv0sTyLyox8UPTqTzTJf4VZ/f6ToSxlPBXU=; b=Isa1gbrPwZJW+WDxhC7oWaBw6YN0H04yOzyt/U9Cq+KNYTsaD+lv91idczyq0T4PJf+DPe3D8RL82W+rxM4SVB4Fva+8N3oQJZ0mc5XMuDkBfEKeXLC6yqEVdWvr2Kkwq0Fc1gNSZvORLRsbeuM9g80hANQjsU1Wdka9m9ScGJNzavpR6F4zPIW1gUNlaME10G/aTB9NgkEJAX44/xHjaPaGo5Udpx4swL+W8X70ZQlUKRGb4sEvpK/9r+xQmChE1e1ZJ5CScQsprVVVfEM8m+DQTEEBSThKyn1R+l6ki3kC+Ly0wlJRP3ixIH258F1bYvGlDOXPU/MM6pTRuMAesg== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: Date: Wed, 21 Jun 2023 10:12:21 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v4 09/15] cpufreq: Export HWP parameters to userspace as CPPC Content-Language: en-US To: Jason Andryuk Cc: Andrew Cooper , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , George Dunlap , Julien Grall , Stefano Stabellini , xen-devel@lists.xenproject.org References: <20230614180253.89958-1-jandryuk@gmail.com> <20230614180253.89958-10-jandryuk@gmail.com> <791bf505-7335-d16d-617d-ec19dc637ea6@suse.com> From: Jan Beulich In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: FR0P281CA0143.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:96::17) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|AM9PR04MB7668:EE_ X-MS-Office365-Filtering-Correlation-Id: d035409f-d06e-44ee-b1c0-08db722f3e2f X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 6pyM2Mn8O/R8RaWs6vM5Gk92w/HoQnDZf4fuOK7tISdeR/tGT+6fvHXRKkNmQBKHpbS1Q4k3MKT0NibU2C3LXrdDHq9RFsMXPbWPtmbaQtUPlJ/EaI5GOnndklsJmYYdgd/MdqFAd5r9QrZhxsDDgm2S+2vSp4V1W1/8ZwyoKh4L4Uf9vUasJvRkRCo1ktWPH46EHDIgr3MkskPlUq5edht2/NApMsVRYAvc9KezhiPsWH0c9o0CQaORmC8qwHyzFjuVyFP5OdvbRG2yajdP1tjIGKMNWjZOS+fEjV5399TyZRiHhzooICaKtYVMxii062G+le5FDqXh4rTBd9YXLbKxzco2jqCHV1KBtzzWk1EPSDDahGT5VoPDMhvdbV3XU4jgqswg96/YiMHYtO6qZ50jMBLrwJo3argI2lP3etNVe9tEhWzkwD7pOXdLS8GUydvY3lUsVotTcks4+eWi9KL8N5myx67omA7rJdtya2JdCDOAcB+cHQiHKYU9+kHBqdwx7o3d1P0sC/qDW+KAuxfAF/KGI4GjhiJ3sT+redN5m0twa1STXS5JRnLfClwdGAZynWdic1fsnHnmtVrprvDdgZn2yl07mzWIwmHOnneS6TamBojnq8XjmpbcSUhXj74grADgSJ4T5Hz6qyBiUw== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(396003)(39860400002)(136003)(366004)(376002)(346002)(451199021)(31686004)(2906002)(41300700001)(8936002)(8676002)(5660300002)(316002)(66476007)(66556008)(66946007)(478600001)(54906003)(36756003)(6486002)(86362001)(31696002)(38100700002)(53546011)(6916009)(2616005)(186003)(6512007)(83380400001)(4326008)(26005)(6506007)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?em1kZk1ZdjRmSHBZb2cyTWtSTVBGbVJvU05IdjI3ZHNCSSs1NytQRmFqbmtJ?= =?utf-8?B?K2ZkUzN5QkRKSGJWQjlLbytNajYwcHZ3THNKWTNnOTd3a09SWTdsdmEyZlM2?= =?utf-8?B?NlZqSnBidmRvTG4rRmpKTFNFR3htcWR6U250L3NOTlp0bFhyUnlIbEh1N2pG?= =?utf-8?B?cEVvYXZsSmJBcEU3RmVxQ3Iyc29ZMGtTZDVqYkF5bFhTRUlLVUdjZVpxUjBy?= =?utf-8?B?TEh5MjNOWXhPYVV6dW5aRHhZZW5vb2ZlKzQrWUsvZkhjUENmZy9NdjVPbUJJ?= =?utf-8?B?aEFaTlQ2Wjk4cktsQ1JXWDRXKzFub3NEOWU5WGkvSDNWdDhzeHl4aTRpNE1V?= =?utf-8?B?OTZ1WnJ5bHd1YkxDczdEamE2eE5QWXZnYXErbGg5Nk9tY3A0N3l4VDlNeFlD?= =?utf-8?B?U1lFWUQ2T3h6RUFPTzJ1Wkx5ZTAxQU5lZG81SnZGekQ1VjFUNXovRENUODN5?= =?utf-8?B?dktTMkJYWFZVUml6cElMRlJDdXk3bGVJLy8ybThlWjRJczhWUDNTQkVob0hl?= =?utf-8?B?UVlIeWVycmdBdWo1dE1DSEtIdHBNdzlPK2ZSZ0NyVnk4UUhvWU1qTFpWaHJZ?= =?utf-8?B?VzJjeVdJL3NzbEJjVTZLcWJWMXlwRXpEZHY3VWJVN2pQWTdLeGhxZ3Qzamkx?= =?utf-8?B?WW5oalFNNEpwZFI1ZU85MGFYTmhQTm52Rk5DdWQ2TEF2OUhuMGNtajRreUVU?= =?utf-8?B?T0ZTcWFucGhUd1luY2dPeXFMQ2VYZXdBS09tTC9SNUNzaVRidzYzclVZbmkr?= =?utf-8?B?K0lDS1VkYjhHYnplSzRFcjB3Tm5BRGhLTWRDbXZOcjlUc1M1VWRkdFNrM2VD?= =?utf-8?B?S1lWSjBmb3BqeFhxWGNpRVNZRTRXYSt1cklQTUJJSnMyd0ZsbUZRRFY4bVFy?= =?utf-8?B?MHIwdFZ4bU03U1huY2crb2RhNk1DaGxUMmRkVGZjOEI5OUVoak1KN2dkczZZ?= =?utf-8?B?b3lUMkRSTTdYZ2M4cDhSTlBXZ1oybCt4UHR6QjYxVUowTXFJV2tRNUoraTYx?= =?utf-8?B?YU02WENycVlXb3I5anY2Um9aVkoyNnhzNC9hTWNVWlA4WXg1aXJPNEZXU0Rz?= =?utf-8?B?ZUp1K3BvdFYzb0hkQ2hDNlNQajMvTjc2cmJ6c2QySC9uZ1FZUWE5TkNrK094?= =?utf-8?B?a1VqUENtR21ZNWJOSzlOem9qQ2VBbW5XNWYrcXlybVVuQi9DWjFkelc5RDlk?= =?utf-8?B?c3VVS3ZhbHI1T1AxeFZtTjlzejVDQXoya3Y0TWY4bFFTelBBRS9MT0p2dmc4?= =?utf-8?B?eEViZXdmT1RJQTlxclNadVJTanBJQ3RsWndVd0xaTzJpaGVMY2RoTGRiYmsz?= =?utf-8?B?ZWtaRkRrVUZoc09wS0Fhd3lyY085MXVSeXdtZ3JjMVRReEdQcnRjNUlBSVBv?= =?utf-8?B?d1VrSFA0ekF3US9yUDR3T3VmcUoraDJjRXVzQlNBTDBOUGl0bEJBWEVsT0Rx?= =?utf-8?B?empmaG9oNG5sWG5sM29FRzB3NUw1T09SaUxvTUI4MGlSdTlDajRRRVNGcnNw?= =?utf-8?B?NkRHUnpZc2o0NCtUNExGN3VqMjVMcDFLb1k5OWVXK29TL29wajN6bUlWeVdK?= =?utf-8?B?MDc4b0t0T1BYRCtBWC96TEkxS2tJZ1U4NzBjcStyaGJyWnVsSGViN0JBM29K?= =?utf-8?B?aWhLNTJncThNaUczU255Y2gzV2pUWGZKMHQwZ2wySEd4VFk4UkllVjVCLzdy?= =?utf-8?B?Z05HbHhnaWJ4eGpnZk5tNGpJNVpIdmtmSVRWbkxwZXpRb1krWkZ5YmxncWc1?= =?utf-8?B?K05GR0xSS29OenBocW1GR3dScmFWWU4yWnptMmdnbjJYTTgrU1lFTXhEaFZO?= =?utf-8?B?NHIvc05BZmc4aHRJdjRlNGU2UHZtTjdJSVVsWWN6ZVFZTjJtYmxscFVmR0c4?= =?utf-8?B?RTJkc3p3YXNmQmhDcWlqMXdSa3Y2VkVxdlA4amkySVhTSXhFSjhTNENmWStl?= =?utf-8?B?dUdIdk5tQmQ1eEQ2aUJEY3FBVEtpN24zWkxCMWxEYm9ibnBnWjUxK2g2NEpV?= =?utf-8?B?TTJ5Zmt4TEZRWlhHZ29rWVRYazB2REY5ckZ2Zi9GQktvUVBRQ2ZmQ3ZLOVRB?= =?utf-8?B?Sk1IdUpvTmJFWEs0MlJMeFRURmVCYnBxVUc5OHhQUG9Vbk91eDVEOTJXMmxt?= =?utf-8?Q?ImGS4xIta3ftblvzRJBjuBlyl?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: d035409f-d06e-44ee-b1c0-08db722f3e2f X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Jun 2023 08:12:23.7181 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: wq9URjQgNDTCt6TiFTcVgzjgk3f6Q64lXDcAkHiUVxUNCKcNjIAuuOV1U6482Vp4bNNlLGd1Ewzn/U1z2QySgQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR04MB7668 On 20.06.2023 20:41, Jason Andryuk wrote: > On Mon, Jun 19, 2023 at 10:24 AM Jan Beulich wrote: >> On 14.06.2023 20:02, Jason Andryuk wrote: >>> + else >>> { >>> + if ( !(scaling_available_governors = >>> + xzalloc_array(char, gov_num * CPUFREQ_NAME_LEN)) ) >>> + return -ENOMEM; >>> + if ( (ret = read_scaling_available_governors( >>> + scaling_available_governors, >>> + gov_num * CPUFREQ_NAME_LEN * sizeof(char))) ) >> >> I realize you only re-indent this, but since you need to touch it anyway, >> may I suggest to also switch to siezof(*scaling_available_governors)? > > How about dropping sizeof(*scaling_available_governors)? This length ... > >>> + { >>> + xfree(scaling_available_governors); >>> + return ret; >>> + } >>> + ret = copy_to_guest(op->u.get_para.scaling_available_governors, >>> + scaling_available_governors, gov_num * CPUFREQ_NAME_LEN); >> >> Similarly here: Please adjust indentation while you touch this code. > > ... should match here, but this second one lacks the "* sizeof($foo)". Indeed it does, because that multiplication happens inside copy_to_guest() (really copy_to_guest_offset()). > They are strings, so multiplying by sizeof() is unusual. Kind of, but in code which may want switching to Unicode (and not just UTF-8,but e.g. UCS2 or UCS4) at some point it's a good idea to have such right away. We don't mean to do any such switch, but I think it's good practice to not assume that strings / string literals only ever consist of plain char elements. > FTAOD, you want the indenting as: > ret = copy_to_guest(op->u.get_para.scaling_available_governors, > scaling_available_governors, > gov_num * CPUFREQ_NAME_LEN); > ? That's one conforming way, yes. Another would be ret = copy_to_guest( op->u.get_para.scaling_available_governors, scaling_available_governors, gov_num * CPUFREQ_NAME_LEN); >>> --- a/xen/include/public/sysctl.h >>> +++ b/xen/include/public/sysctl.h >>> @@ -296,6 +296,61 @@ struct xen_ondemand { >>> uint32_t up_threshold; >>> }; >>> >>> +struct xen_cppc_para { >>> + /* OUT */ >>> + /* activity_window supported if 1 */ >>> +#define XEN_SYSCTL_CPPC_FEAT_ACT_WINDOW (1 << 0) >> >> I think 1 isn't very helpful, looking forward. Perhaps better "set" or >> "flag set"? > > "set" works for me. > >>> + uint32_t features; /* bit flags for features */ >>> + /* >>> + * See Intel SDM: HWP Performance Range and Dynamic Capabilities >>> + * >>> + * These four are 0-255 hardware-provided values. They "continuous, >>> + * abstract unit-less, performance" values. smaller numbers are slower >>> + * and larger ones are faster. >>> + */ >>> + uint32_t lowest; >>> + uint32_t lowest_nonlinear; /* most_efficient */ >> >> Why non_linear in the external interface when internally you use >> most_efficient (merely put in the comment here)? >> >>> + uint32_t nominal; /* guaranteed */ >> >> Similar question for the name choice here. > > There is a naming mismatch between the HWP fields and the CPPC fields. > The commit message includes: > The HWP most_efficient is mapped to CPPC lowest_nonlinear, and guaranteed is > mapped to nominal. CPPC has a guaranteed that is optional while nominal > is required. ACPI spec says "If this register is not implemented, OSPM > assumes guaranteed performance is always equal to nominal performance." > > So the comments were to help with the mapping. Should I prefix the > comments like "HWP: most_efficient"? Yes please. (I was going to suggest exactly that when I hadn't read this question, yet.) Jan From xen-devel-bounces@lists.xenproject.org Wed Jun 21 08:17:51 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 08:17:51 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552530.862657 (Exim 4.92) (envelope-from ) id 1qBt1z-0007Cn-Cn; Wed, 21 Jun 2023 08:17:35 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552530.862657; Wed, 21 Jun 2023 08:17:35 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBt1z-0007Cg-9Q; Wed, 21 Jun 2023 08:17:35 +0000 Received: by outflank-mailman (input) for mailman id 552530; Wed, 21 Jun 2023 08:17:33 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBt1x-0007Ca-IL for xen-devel@lists.xenproject.org; Wed, 21 Jun 2023 08:17:33 +0000 Received: from EUR04-HE1-obe.outbound.protection.outlook.com (mail-he1eur04on2081.outbound.protection.outlook.com [40.107.7.81]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 1134b8c5-100c-11ee-8611-37d641c3527e; Wed, 21 Jun 2023 10:17:31 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by DB8PR04MB6777.eurprd04.prod.outlook.com (2603:10a6:10:11f::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.23; Wed, 21 Jun 2023 08:17:01 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6500.036; Wed, 21 Jun 2023 08:17:01 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 1134b8c5-100c-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=ciy/qG3g2HBLdfu3J2tZqhN7b/+V4Ju6+C+DULrJ+ZOPLwxpFHYTNQ67HFmiKyNyRU7GEK9MxQx1GHoc3sw2lmfzfY50RLs+DH1ObXkATqDoSNfQ5dPUcI01TRAkwUbvm46Sn4kHShyUWWSpA81ocrfoiPbKtwL4timnJwWF1I9P69YZXpNWVBg5ReSX3eGAIPqMUH4XKxEoKCm09iEh/C8DI+RFMHRWcpU6l4JqxHFNTiBikPOXlJe+LIJEqjJHKuBq35csneF+2MgTMTpEpCKYy+SHepVW8+4PsH53Dk0CZFBONpbzO2LWJAGSStwc5GsLLqzSMIZsWNrbc++giQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=UIzyyTURzen0PkVEXGjSLwPKXMg3Z2ai+0daJky0H2k=; b=Y7QBY7FDo626nKCwSh3AexM1WfEqwyOAXRLNxG5mn9RmrIN1d3EstRSIPKyHmnXBIulr2HHEl4HkTsFpGYTAH79Uis9BTs5xNnhoLKTRv5ezicAlCY72ZkMcgBJfbr7R20wGGGe3tdzjj2wpPeyiw9zfjwM98weEn4FrkBPAPw+3LPygtEZioguRuwOQKFauTkCVDpv+JILqjpzVQZ6OJGTVSovLYtGLm5rBPtKwaukL1hlNWsQ+DYV6grEjSqZ5rWk1P1xXQgoJxXL4tdz5zKBc628lxxtzbJXP+d7Q02OzzSE6uSR9oczS8EsMnnPVY6gOrOdU1pPdinbVm5cOtA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=UIzyyTURzen0PkVEXGjSLwPKXMg3Z2ai+0daJky0H2k=; b=JyWppJHhpprvTkP8DOC2Mc4eQmBzVbo3KU7pEFrZcUw8S0gTN8T+SBwOJdvyboAxWVzJl+uk0sbMi9drxur6iXvjyKjLXSSHkoaLNEdW0NGQcdSWaNkKk4CyoVtuLmaCLTHOnFb/qAIDT0XjFM5/PiPpu7gBbeMIVsW6cLrsXVadY9QKZJVcB68HHe8pofs+7/ZObMsim5mpgAZOcbHhk8WeHc6AAG2mnVprte8KJnFA8vN02vt5mR37DRZ6sEHTJ0AbGlnqdSlUPTgQRg1ftF1LuZyCPNyt6/7OC43NwTHjcTSzEsPg8YKhoH64o2qnEkfV7MInGvh0yMPsuu8WwA== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <8c76c3c3-f839-ef03-4011-e223ff6fc938@suse.com> Date: Wed, 21 Jun 2023 10:16:59 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH] x86/vpmu: Simplify is_pmc_quirk Content-Language: en-US To: Andrew Cooper Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , Xen-devel References: <20230620174556.3898824-1-andrew.cooper3@citrix.com> From: Jan Beulich In-Reply-To: <20230620174556.3898824-1-andrew.cooper3@citrix.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR3P281CA0109.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:a3::9) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|DB8PR04MB6777:EE_ X-MS-Office365-Filtering-Correlation-Id: d33cc900-4711-4b67-f52c-08db722fe3d6 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: SGgJoFr95gwTvx8xI0SA+914iVJKvpO1Uj/U6y8fBn2MsBtFBBE+6Ij/EO61KHhER4/syu2ezKCV+HUvP9CS1K022T1qo7PCj8DtffikLOcttgVpjp9t48Kgz79ra6Juj0U5YkTNUhWsQBc4OmbeKrmN0pzOojjWql7JZtg3INyu1xnbtOIwJx3OoraFd40IjVzSd5s1GDgw+fhdiwxvrKxOWZByUTr35mVgGDs8xcIGVSDvDpvtCm7OC6waworPMbTH3L3R8irG9qXDmwnqRG1YLzFCTiBlhxRohDjC44Uc4GGaAdAUaRYZwwE+PGVSuf+lnDRsNDZ44c0Rupm5BneSgdcOLX/MEDlvktmMZy/LS2BVmMXqVswjMBZJ65UPayrIXyj3RyXu6raT+1+Ose6+8AyaBWoB3fV9YRG2qb3ArRM5Czqt5zx65c3uwOfXi3+oOnKfEQPSvrZbeqnIIrTu6Ei/imHMwIXDmX19HE00ydM9NB3M/ur2Pmu9TGzDcPjTRIjVM95wlCx4XhbqupMdTQq202PbZ3PnyGB39PJElxWoWXTWRahU/FHiO8VBf1AjJM3X88f2Z0J4O/adc3qFNyY0JA9isvVAoHm2I4kFXEfkdR+0soEFSaFJMz3qDc1qjZzwIW2WZg2XVckNbg== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(366004)(39860400002)(396003)(346002)(376002)(136003)(451199021)(66946007)(66476007)(66556008)(4326008)(6916009)(2616005)(186003)(38100700002)(86362001)(31696002)(53546011)(6512007)(26005)(6506007)(6486002)(83380400001)(36756003)(478600001)(54906003)(31686004)(5660300002)(41300700001)(8936002)(8676002)(2906002)(316002)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?dGU0cXZaelE4aDcxV2l4TmVpYTVGTHB2R3dyT2hJKzFCM0F3dUkxa2JGNzBD?= =?utf-8?B?dUgrY0V0R2tLejVaWUtwUjhpN09XbkxoSmUvWTBOQlFHRDdqa0FQVVJLbWtn?= =?utf-8?B?WmV2OHE0a2pzZ1AzU25LK1VZbzBPazZoZXd1aW8xRUlCSWhrckQrcXVBL1NT?= =?utf-8?B?cGF2SHQzbUdYOVN2Q2JXdnBwR3dtWTRkeVpzeFcwSXpkRmZLdDlxOWNNVUlw?= =?utf-8?B?eER0Uk1RWGcrLzAveXNOc1FUZFZPLy9zN1VPUG8xWFVQRzQwVnpmendWNHJ5?= =?utf-8?B?WlhtNEJDZHFUOWh3cFJrNk1CbU9IQkY1aTBVejBDY1lnYjczdmJ2eWlYV1JI?= =?utf-8?B?dUY1b1o5NEFKbTluVjV5MzlQN1FkdGcwMmdERXZvTTFBc1R5bXZpcUk3eUlU?= =?utf-8?B?OG9tOGV5K0tuazNvcHJ0aGFqV2VtNml5b1ZXQkkrYU1DM21JN0hadEplTnJG?= =?utf-8?B?TmRDUGs4ZnE5MSsvR2dKZC9wbzk4OHlJWXVMekk3ZDJZcW04eUZaUW1rRUZ5?= =?utf-8?B?TkhZaDk5bVZoV1IyeDFESkcwcWVjcVR1QjZ2SGo1ZG5haG1IS3BraXIraUxN?= =?utf-8?B?dU1uVXpmQlhnVmxXUWFOZXlEZkFUOVNiRjRMa0FBbzJ5aS9HM1FydW5OclVO?= =?utf-8?B?MVJtMFhuWCtod2xXUlZocFNaY1A4aURCZ1h1SmprWWlrZ3RQSURhd2YyczZh?= =?utf-8?B?RVNnZVJRMDM4Y2p2enppMlZqNVQ3UzM1SGhBSFdlWTZHVjZqa2dDKzZnMVVl?= =?utf-8?B?OExiSisyNzFqSmhPeGcwbS9SdVQwMHZSU1diRlpHd2ZLYklWTWF4S3V2bzFH?= =?utf-8?B?TnhWamdpc0dlUFM0UnhJR1dQWWpnNjY0SHVJTGlmRWlpdVVNSDZQV3BqbDdD?= =?utf-8?B?MEl6L3pVTCszdno1cEZWQ0ZiRHJSZzlEZk5vczR0cGUwN0xpSnB4SXRuTW5H?= =?utf-8?B?TmpBRVBpYThQZ203bGNnNnRYT1Jpa0EvckJuQ1ZkZ3c3L3VxZW9hM0xMUDJS?= =?utf-8?B?aWN6VjE4cVlzQ2NHZURTTGxBWVloc254cVphaU40NitOUUJhTUhLYXlmWWI3?= =?utf-8?B?UDBOdmZ2TStXNjBzYm5GRENYUGtIcVIxRXRJODZhclBOb1NpbnNBaGNYR3BW?= =?utf-8?B?YmlPTlo2dklkNDBUZmphRzB6QkR1dDNxSEdYOEJrMXVkMDZkUS9DWXhxSjV4?= =?utf-8?B?MlNJSGs4ckZENGRIQzF0Y1BRZ2x6S3lIajJUSUQ5cVFPR0RROHdQL1BuUHIx?= =?utf-8?B?Y0NGTjRLNXBySlNWMXlmeTBKbkh6Rk5OWmUwY0NkRlBMcndHNzExTkE2c251?= =?utf-8?B?OFQ0OVNzdkZCSG81TXFNMkFDT2d6eWZTbUx0MytCTEFtSitnOWxBbHdiOFpt?= =?utf-8?B?Yzd0R1RIb1gwN1RnUzVocjcxRi93K3hBY1BDaVdzNmRBeTJKZ0hFSUE0ei9n?= =?utf-8?B?dThSTjVqbDZVRzF6S3pzRXVWVXFKYXpXSmtHaGp3N28ycnBHYTlyYkhrTGh2?= =?utf-8?B?VlNYekJrN3hVUUgzbzJHaEkyVnFhbWR1cVRJMkVmQkd3Z0ZSa0NSQm56QzBW?= =?utf-8?B?REdhNjJnd2FLc3d4RktuLzRZZ1dhWXM5bUNhMlFES0x4K0xOUU1EOWp0VGVa?= =?utf-8?B?M0J5ejViRTEwZG4zMzEyWjR0bmhHQmlFRTY1ekdHbUgybHNnQmtJZFdVVnlm?= =?utf-8?B?ZzRiMU01VEhhNG5JdG5VVmY0ZUxqMXRSK3RzNjRTdThKaTVYSlRFOTFRZDBn?= =?utf-8?B?S3dVNjlRd3JTWTM2MXBhQzRCWTQ1Y0xWd1h2SWZPK2p0cEZ3anhPNlRNWm9z?= =?utf-8?B?QkF0WHVOaXcrd1R5WnBENFZhNnA1bFJ1Qk13cWdSZFEzcDRMb1pzVDZpL2I5?= =?utf-8?B?dG54ZFEraHRIeVhEbkJ0MnBoNFZGY05KcnhVY0xEUitDM3pzTVZza3NYYXdh?= =?utf-8?B?OFJDMnlZbCtyUGp1V2labVVEbTh5T3lsMFdKYWQ4K2dzcWlVWk9MbGRoNVgw?= =?utf-8?B?citlSzNSejFxaFBabTJRc3BJZHJrUjBYaXIrWStlMXJuYkpjNkhpalI1WmNp?= =?utf-8?B?bzV5UjE5dTZiWWVOMzZCUHVBejlVWDgvRGZkMFlxSXJuc2dkdW1JejI1dEM5?= =?utf-8?Q?c3ERoQDOu1gud8TBWnRWkDixK?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: d33cc900-4711-4b67-f52c-08db722fe3d6 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Jun 2023 08:17:01.6140 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: Y03gauWt3PNNOMksp2MYFSt9B23A6gaVugJt1V/7gr496K5a1+NE9ntI/XoHo+4jnoJOsZTW/46lobajEllhjg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB8PR04MB6777 On 20.06.2023 19:45, Andrew Cooper wrote: > This should be static, and there's no need for a separate (non-init, even) > function to perform a simple equality test. Drop the is_ prefix which is > gramatically questionable, and make it __ro_after_init. > > Leave a TODO, because the behaviour is definitely wrong to be applied to ~all > modern Intel CPUs, and has been raised on xen-devel previously without > conclusion. > > No functional change. > > Signed-off-by: Andrew Cooper Reviewed-by: Jan Beulich with one request: > @@ -967,7 +960,8 @@ const struct arch_vpmu_ops *__init core2_vpmu_init(void) > sizeof(uint64_t) * fixed_pmc_cnt + > sizeof(struct xen_pmu_cntr_pair) * arch_pmc_cnt; > > - check_pmc_quirk(); > + /* TODO: This is surely wrong. */ > + pmc_quirk = current_cpu_data.x86 == 6; In the description you say "~all modern Intel CPUs", which suggests it might be correct for old enough ones. Would you mind weakening the comment to "This surely isn't universally correct" or some such? Jan From xen-devel-bounces@lists.xenproject.org Wed Jun 21 08:23:56 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 08:23:56 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552535.862667 (Exim 4.92) (envelope-from ) id 1qBt81-0000Fn-2y; Wed, 21 Jun 2023 08:23:49 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552535.862667; Wed, 21 Jun 2023 08:23:49 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBt80-0000Fg-Vg; Wed, 21 Jun 2023 08:23:48 +0000 Received: by outflank-mailman (input) for mailman id 552535; Wed, 21 Jun 2023 08:23:46 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBt7y-0000Fa-QT for xen-devel@lists.xenproject.org; Wed, 21 Jun 2023 08:23:46 +0000 Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id ef75bded-100c-11ee-8611-37d641c3527e; Wed, 21 Jun 2023 10:23:44 +0200 (CEST) Received: from mail-vs1-f46.google.com (mail-vs1-f46.google.com [209.85.217.46]) by support.bugseng.com (Postfix) with ESMTPSA id 03B954EE0741 for ; Wed, 21 Jun 2023 10:23:44 +0200 (CEST) Received: by mail-vs1-f46.google.com with SMTP id ada2fe7eead31-440ad8ea514so1146450137.2 for ; Wed, 21 Jun 2023 01:23:43 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: ef75bded-100c-11ee-8611-37d641c3527e X-Gm-Message-State: AC+VfDxcUIUthqr/VnQHEKeadtWLQVyDM4WljfQX1215KEpa+a4a45wv jW+hQeWkuSBPJOee6Iu6Fursxnvwub5ZGWsSeR0= X-Google-Smtp-Source: ACHHUZ4Qdos8w0VtMhZVyXu1zOF/k3b+oTGSXOgBqM5/UGFphu5EE/CbShaPQIBlDNTG6ShP116nJVNWQlM9gw3LVzM= X-Received: by 2002:a67:db87:0:b0:440:c0dd:e7f7 with SMTP id f7-20020a67db87000000b00440c0dde7f7mr3169988vsk.4.1687335822711; Wed, 21 Jun 2023 01:23:42 -0700 (PDT) MIME-Version: 1.0 References: <8aff4bc56b29372345e828462766d803b8c9b710.1687250177.git.gianluca.luparini@bugseng.com> In-Reply-To: From: Simone Ballarin Date: Wed, 21 Jun 2023 10:23:31 +0200 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: [XEN PATCH 05/13] xen/common: fixed violations of MISRA C:2012 Rule 7.2 To: Jan Beulich Cc: consulting@bugseng.com, Gianluca Luparini , Andrew Cooper , =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= , Stefano Stabellini , Bertrand Marquis , Julien Grall , Michal Orzel , Xenia Ragiadakou , Ayan Kumar , xen-devel@lists.xenproject.org Content-Type: multipart/alternative; boundary="00000000000054623505fe9f7c33" --00000000000054623505fe9f7c33 Content-Type: text/plain; charset="UTF-8" Il giorno mar 20 giu 2023 alle ore 14:43 Jan Beulich ha scritto: > On 20.06.2023 12:34, Simone Ballarin wrote: > > From: Gianluca Luparini > > > > The xen sources contains violations of MISRA C:2012 Rule 7.2 whose > headline states: > > "A "u" or "U" suffix shall be applied to all integer constants that are > represented in an unsigned type". > > > > I propose to use "U" as a suffix to explicitly state when an integer > constant is represented in an unsigned type. > > > > Signed-off-by: Simone Ballarin > > --- > > xen/common/device_tree.c | 4 ++-- > > xen/include/xen/libfdt/fdt.h | 2 +- > > xen/include/xen/libfdt/libfdt.h | 2 +- > > 3 files changed, 4 insertions(+), 4 deletions(-) > > I think me and a few other people being on Cc here is attributed to the > (misleading) title. The set of touched files fully maps to "DEVICE TREE" > in ./MAINTAINERS afaict, which the prefix in the title would then also > be nice to express. > Yes, my bad. I will fix the commit name. > That said I'm not sure whether libfdt code actually wants touching this > way. > Yes, you are right. libfdt is out of scope. I will remove the changes in it. > > Jan > -- Simone Ballarin, M.Sc. Field Application Engineer, BUGSENG (https://bugseng.com ) --00000000000054623505fe9f7c33 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable

Il giorno mar 20 giu 2023 alle ore 14:43 = Jan Beulich <jbeu= lich@suse.com> ha scritto:
On 20.06.2023 12:34, Simone Ballarin wrote:
> From: Gianluca Luparini <gianluca.luparini@bugseng.com>
>
> The xen sources contains violations of MISRA C:2012 Rule 7.2 whose hea= dline states:
> "A "u" or "U" suffix shall be applied to all = integer constants that are represented in an unsigned type".
>
> I propose to use "U" as a suffix to explicitly state when an= integer constant is represented in an unsigned type.
>
> Signed-off-by: Simone Ballarin <simone.ballarin@bugseng.com>
> ---
>=C2=A0 xen/common/device_tree.c=C2=A0 =C2=A0 =C2=A0 =C2=A0 | 4 ++--
>=C2=A0 xen/include/xen/libfdt/fdt.h=C2=A0 =C2=A0 | 2 +-
>=C2=A0 xen/include/xen/libfdt/libfdt.h | 2 +-
>=C2=A0 3 files changed, 4 insertions(+), 4 deletions(-)

I think me and a few other people being on Cc here is attributed to the
(misleading) title. The set of touched files fully maps to "DEVICE TRE= E"
in ./MAINTAINERS afaict, which the prefix in the title would then also
be nice to express.
=C2=A0
Yes, my bad. I wi= ll fix the commit name.


That said I'm not sure whether libfdt code actually wants touching this=
way.
Yes, you are right. libfdt is out of scope. I wil= l remove the changes in it.

Jan


--
Simone Ballarin, M.Sc.

Field Application Engineer, BUGSENG = (https://bugseng.com)<= /div>
--00000000000054623505fe9f7c33-- From xen-devel-bounces@lists.xenproject.org Wed Jun 21 08:40:08 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 08:40:08 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552542.862677 (Exim 4.92) (envelope-from ) id 1qBtNZ-0001sH-Cn; Wed, 21 Jun 2023 08:39:53 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552542.862677; Wed, 21 Jun 2023 08:39:53 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBtNZ-0001sA-A7; Wed, 21 Jun 2023 08:39:53 +0000 Received: by outflank-mailman (input) for mailman id 552542; Wed, 21 Jun 2023 08:39:52 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBtNY-0001s2-3B for xen-devel@lists.xenproject.org; Wed, 21 Jun 2023 08:39:52 +0000 Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.129.124]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 2f09f1ac-100f-11ee-b236-6b7b168915f2; Wed, 21 Jun 2023 10:39:50 +0200 (CEST) Received: from mimecast-mx02.redhat.com (mx3-rdu2.redhat.com [66.187.233.73]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id us-mta-643-nOT0jC-nMhCavQXxm-kAig-1; Wed, 21 Jun 2023 04:39:43 -0400 Received: from smtp.corp.redhat.com (int-mx02.intmail.prod.int.rdu2.redhat.com [10.11.54.2]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id DCD4C280BC88; Wed, 21 Jun 2023 08:39:42 +0000 (UTC) Received: from sirius.home.kraxel.org (unknown [10.39.192.126]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 5C9DD4087C6D; Wed, 21 Jun 2023 08:39:42 +0000 (UTC) Received: by sirius.home.kraxel.org (Postfix, from userid 1000) id 1AF931800381; Wed, 21 Jun 2023 10:39:41 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 2f09f1ac-100f-11ee-b236-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1687336789; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=OinvM39eNcyuqTY4ayH3U9HRb8PC8b84eJfHXMZWEzo=; b=JFC/cGq8K8QSYa8ZXU8JfLtbyt0HS3Qwixl0/YMRXneD/E3JoA69A05icozCOSoTUmXac6 hz4SS+aUueJAqvR4vWQ1sNA7Xud2rF0saaDH6Sh7Sn4M+3TGmYyEJ24ptmP5XD0+dSd1sw 2c/7BES4zLqkYDBh6m5fH59DOPa13iU= X-MC-Unique: nOT0jC-nMhCavQXxm-kAig-1 Date: Wed, 21 Jun 2023 10:39:41 +0200 From: Gerd Hoffmann To: Robert Beckett Cc: "Chen, Jiqian" , =?utf-8?Q?Marc-Andr=C3=A9?= Lureau , Damien Hedde , "Michael S . Tsirkin" , Stefano Stabellini , Anthony PERARD , Roger Pau =?utf-8?B?TW9ubsOp?= , Jan Beulich , "Dr . David Alan Gilbert" , "qemu-devel@nongnu.org" , "xen-devel@lists.xenproject.org" , "Deucher, Alexander" , "Koenig, Christian" , "Hildebrand, Stewart" , Xenia Ragiadakou , "Huang, Honglei1" , "Zhang, Julia" , "Huang, Ray" Subject: Re: [QEMU PATCH 1/1] virtgpu: do not destroy resources when guest suspend Message-ID: <2s33vb2tfogntkyk5laxzcmgexf42mhkpwr2gh3gjvpitav6ez@h5zbmuklzmv5> References: <20230608025655.1674357-1-Jiqian.Chen@amd.com> <20230608025655.1674357-2-Jiqian.Chen@amd.com> <2164ff79-aa09-d959-cc61-c7a2a21db5e3@collabora.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <2164ff79-aa09-d959-cc61-c7a2a21db5e3@collabora.com> X-Scanned-By: MIMEDefang 3.1 on 10.11.54.2 On Tue, Jun 20, 2023 at 01:26:15PM +0100, Robert Beckett wrote: > > On 20/06/2023 10:41, Gerd Hoffmann wrote: > > Hi, > > > > > > The guest driver should be able to restore resources after resume. > > > Thank you for your suggestion! > > > As far as I know, resources are created on host side and guest has no backup, if resources are destroyed, guest can't restore them. > > > Or do you mean guest driver need to send commands to re-create resources after resume? > > The later. The guest driver knows which resources it has created, > > it can restore them after suspend. > > Are you sure that this is viable? > > How would you propose that a guest kernel could reproduce a resource, > including pixel data upload during a resume? > > The kernel would not have any of the pixel data to transfer to host. Depends on the of resource type. For resources which are created by uploading pixel data (using VIRTIO_GPU_CMD_TRANSFER_TO_HOST_*) a guest mirror exists which can be used for re-upload. For resources filled by gl rendering ops this is indeed not the case. > Could you explain how you anticipate the guest being able to reproduce the > resources please? Same you do on physical hardware? Suspend can poweroff your PCI devices, so there must be some standard way to handle that situation for resources stored in gpu device memory, which is very similar to the problem we have here. take care, Gerd From xen-devel-bounces@lists.xenproject.org Wed Jun 21 08:46:41 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 08:46:41 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552547.862687 (Exim 4.92) (envelope-from ) id 1qBtU0-0003LX-30; Wed, 21 Jun 2023 08:46:32 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552547.862687; Wed, 21 Jun 2023 08:46:32 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBtTz-0003LQ-W2; Wed, 21 Jun 2023 08:46:31 +0000 Received: by outflank-mailman (input) for mailman id 552547; Wed, 21 Jun 2023 08:46:30 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBtTy-0003LK-On for xen-devel@lists.xenproject.org; Wed, 21 Jun 2023 08:46:30 +0000 Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 1d4d31ef-1010-11ee-b236-6b7b168915f2; Wed, 21 Jun 2023 10:46:29 +0200 (CEST) Received: from mail-ua1-f54.google.com (mail-ua1-f54.google.com [209.85.222.54]) by support.bugseng.com (Postfix) with ESMTPSA id 00D594EE0740 for ; Wed, 21 Jun 2023 10:46:29 +0200 (CEST) Received: by mail-ua1-f54.google.com with SMTP id a1e0cc1a2514c-78a3e1ed1deso1827466241.1 for ; Wed, 21 Jun 2023 01:46:28 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 1d4d31ef-1010-11ee-b236-6b7b168915f2 X-Gm-Message-State: AC+VfDzc1gjjiqvPX9x3xe6cL6q4S/vkm1wwaAZyhTUzYnUykVvrA/UQ ghwPkDhKLNY7OdjXpxCXDVioOAwgKpv//yWvFB4= X-Google-Smtp-Source: ACHHUZ7fOw11r9v1q3bMKiVmTJd7NDrEBAssnOLi3Wyu7JKAD5Eumg74uvlwpMRp4FJMn0gndW4B/Q9HNIptEIC+K9U= X-Received: by 2002:a67:efc6:0:b0:440:ccd4:bd7e with SMTP id s6-20020a67efc6000000b00440ccd4bd7emr2627868vsp.0.1687337187817; Wed, 21 Jun 2023 01:46:27 -0700 (PDT) MIME-Version: 1.0 References: <6c440188b0bdb58dc3e925788956b3d301d5a18b.1687250177.git.gianluca.luparini@bugseng.com> <19bdb894-fdaa-088e-4139-c5fc09189cce@suse.com> In-Reply-To: <19bdb894-fdaa-088e-4139-c5fc09189cce@suse.com> From: Simone Ballarin Date: Wed, 21 Jun 2023 10:46:16 +0200 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: [XEN PATCH 07/13] xen/x86: fixed violations of MISRA C:2012 Rule 7.2 To: Jan Beulich Cc: consulting@bugseng.com, Gianluca Luparini , Jun Nakajima , Kevin Tian , Andrew Cooper , =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= , Wei Liu , Stefano Stabellini , Michal Orzel , Xenia Ragiadakou , Ayan Kumar , xen-devel@lists.xenproject.org Content-Type: multipart/alternative; boundary="000000000000b2400105fe9fcd1d" --000000000000b2400105fe9fcd1d Content-Type: text/plain; charset="UTF-8" Il giorno mar 20 giu 2023 alle ore 14:51 Jan Beulich ha scritto: > On 20.06.2023 12:34, Simone Ballarin wrote: > > --- a/xen/arch/x86/cpu/vpmu_intel.c > > +++ b/xen/arch/x86/cpu/vpmu_intel.c > > @@ -950,10 +950,10 @@ const struct arch_vpmu_ops *__init > core2_vpmu_init(void) > > fixed_ctrl_mask |= > > (FIXED_CTR_CTRL_ANYTHREAD_MASK << (FIXED_CTR_CTRL_BITS * i)); > > > > - fixed_counters_mask = ~((1ull << core2_get_bitwidth_fix_count()) - > 1); > > + fixed_counters_mask = ~((1Ull << core2_get_bitwidth_fix_count()) - > 1); > > What's the point of this adjustment? And if at all, why keep the l-s > lowercase? > In the patch for Rule 7.3 I will propose to change all 'l' with 'L'. I will move this type of change to the new patch for 7.3. > > global_ctrl_mask = ~((((1ULL << fixed_pmc_cnt) - 1) << 32) | > > ((1ULL << arch_pmc_cnt) - 1)); > > - global_ovf_ctrl_mask = ~(0xC000000000000000 | > > + global_ovf_ctrl_mask = ~(0xC000000000000000U | > > If such constants gain a suffix, I think that ought to be UL or ULL. > Yes, I agree with using 'ULL'. > > -#define INTR_INFO_VECTOR_MASK 0xff /* 7:0 */ > > -#define INTR_INFO_INTR_TYPE_MASK 0x700 /* 10:8 */ > > -#define INTR_INFO_DELIVER_CODE_MASK 0x800 /* 11 */ > > -#define INTR_INFO_NMI_UNBLOCKED_BY_IRET 0x1000 /* 12 */ > > -#define INTR_INFO_VALID_MASK 0x80000000 /* 31 */ > > -#define INTR_INFO_RESVD_BITS_MASK 0x7ffff000 > > +#define INTR_INFO_VECTOR_MASK 0xffU /* 7:0 */ > > +#define INTR_INFO_INTR_TYPE_MASK 0x700U /* 10:8 */ > > +#define INTR_INFO_DELIVER_CODE_MASK 0x800U /* 11 */ > > +#define INTR_INFO_NMI_UNBLOCKED_BY_IRET 0x1000 /* 12 */ > > +#define INTR_INFO_VALID_MASK 0x80000000U /* 31 */ > > +#define INTR_INFO_RESVD_BITS_MASK 0x7ffff000U > > I think it would be nice if you took the opportunity and added > zero-padding to these constants. > Ok, I can do that. > > #define X86_SEG_AR_SEG_TYPE 0xf /* 3:0, segment type */ > > -#define X86_SEG_AR_DESC_TYPE (1u << 4) /* 4, descriptor type */ > > +#define X86_SEG_AR_DESC_TYPE (1U << 4) /* 4, descriptor type */ > > #define X86_SEG_AR_DPL 0x60 /* 6:5, descriptor privilege > level */ > > -#define X86_SEG_AR_SEG_PRESENT (1u << 7) /* 7, segment present */ > > -#define X86_SEG_AR_AVL (1u << 12) /* 12, available for system > software */ > > -#define X86_SEG_AR_CS_LM_ACTIVE (1u << 13) /* 13, long mode active (CS > only) */ > > -#define X86_SEG_AR_DEF_OP_SIZE (1u << 14) /* 14, default operation > size */ > > -#define X86_SEG_AR_GRANULARITY (1u << 15) /* 15, granularity */ > > -#define X86_SEG_AR_SEG_UNUSABLE (1u << 16) /* 16, segment unusable */ > > +#define X86_SEG_AR_SEG_PRESENT (1U << 7) /* 7, segment present */ > > +#define X86_SEG_AR_AVL (1U << 12) /* 12, available for system > software */ > > +#define X86_SEG_AR_CS_LM_ACTIVE (1U << 13) /* 13, long mode active (CS > only) */ > > +#define X86_SEG_AR_DEF_OP_SIZE (1U << 14) /* 14, default operation > size */ > > +#define X86_SEG_AR_GRANULARITY (1U << 15) /* 15, granularity */ > > +#define X86_SEG_AR_SEG_UNUSABLE (1U << 16) /* 16, segment unusable */ > > And all of these, when it's exactly the two numbers you don't touch > which might want to gain a U (or u) suffix? > Ok. > Jan > -- Simone Ballarin, M.Sc. Field Application Engineer, BUGSENG (https://bugseng.com ) --000000000000b2400105fe9fcd1d Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable


Il giorno mar 20 giu 2023 alle ore 14:51 Jan Beulich <jbeulich@suse.com&= gt; ha scritto:
= On 20.06.2023 12:34, Simone Ballarin wrote:
> --- a/xen/arch/x86/cpu/vpmu_intel.c
> +++ b/xen/arch/x86/cpu/vpmu_intel.c
> @@ -950,10 +950,10 @@ const struct arch_vpmu_ops *__init core2_vpmu_in= it(void)
>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0fixed_ctrl_mask |=3D
>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0(FIXED_CTR_CTRL_ANYTHRE= AD_MASK << (FIXED_CTR_CTRL_BITS * i));
>=C2=A0
> -=C2=A0 =C2=A0 fixed_counters_mask =3D ~((1ull << core2_get_bitw= idth_fix_count()) - 1);
> +=C2=A0 =C2=A0 fixed_counters_mask =3D ~((1Ull << core2_get_bitw= idth_fix_count()) - 1);

What's the point of this adjustment? And if at all, why keep the l-s lowercase?

In the patch for Rule 7.3 I = will propose to change all 'l' with 'L'.
I will m= ove this type of change to the new patch for 7.3.
=C2=A0
>=C2=A0 =C2=A0 =C2=A0 global_ctrl_mask =3D ~((((1ULL << fixed_pmc_= cnt) - 1) << 32) |
>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0((1ULL << arch_pmc_cnt) - 1));
> -=C2=A0 =C2=A0 global_ovf_ctrl_mask =3D ~(0xC000000000000000 |
> +=C2=A0 =C2=A0 global_ovf_ctrl_mask =3D ~(0xC000000000000000U |

If such constants gain a suffix, I think that ought to be UL or ULL.

Yes, I agree with using 'ULL'.
=C2=A0
> -#define INTR_INFO_VECTOR_MASK=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A00xff=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 /* 7:0 */
> -#define INTR_INFO_INTR_TYPE_MASK=C2=A0 =C2=A0 =C2=A0 =C2=A0 0x700=C2= =A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0/* 10:8 */
> -#define INTR_INFO_DELIVER_CODE_MASK=C2=A0 =C2=A0 =C2=A00x800=C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0/* 11 */
> -#define INTR_INFO_NMI_UNBLOCKED_BY_IRET 0x1000=C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 /* 12 */
> -#define INTR_INFO_VALID_MASK=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0= 0x80000000=C2=A0 =C2=A0 =C2=A0 /* 31 */
> -#define INTR_INFO_RESVD_BITS_MASK=C2=A0 =C2=A0 =C2=A0 =C2=A00x7ffff00= 0
> +#define INTR_INFO_VECTOR_MASK=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A00xffU=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 /* 7:0 */
> +#define INTR_INFO_INTR_TYPE_MASK=C2=A0 =C2=A0 =C2=A0 =C2=A0 0x700U=C2= =A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0/* 10:8 */
> +#define INTR_INFO_DELIVER_CODE_MASK=C2=A0 =C2=A0 =C2=A00x800U=C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0/* 11 */
> +#define INTR_INFO_NMI_UNBLOCKED_BY_IRET 0x1000=C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 =C2=A0/* 12 */
> +#define INTR_INFO_VALID_MASK=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0= 0x80000000U=C2=A0 =C2=A0 =C2=A0 /* 31 */
> +#define INTR_INFO_RESVD_BITS_MASK=C2=A0 =C2=A0 =C2=A0 =C2=A00x7ffff00= 0U

I think it would be nice if you took the opportunity and added
zero-padding to these constants.

Ok, I = can do that.
=C2=A0
>=C2=A0 #define X86_SEG_AR_SEG_TYPE=C2=A0 =C2=A0 =C2=A00xf=C2=A0 =C2=A0 = =C2=A0 =C2=A0 /* 3:0, segment type */
> -#define X86_SEG_AR_DESC_TYPE=C2=A0 =C2=A0 (1u << 4)=C2=A0 /* 4,= descriptor type */
> +#define X86_SEG_AR_DESC_TYPE=C2=A0 =C2=A0 (1U << 4)=C2=A0 /* 4,= descriptor type */
>=C2=A0 #define X86_SEG_AR_DPL=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 0x60=C2= =A0 =C2=A0 =C2=A0 =C2=A0/* 6:5, descriptor privilege level */
> -#define X86_SEG_AR_SEG_PRESENT=C2=A0 (1u << 7)=C2=A0 /* 7, segm= ent present */
> -#define X86_SEG_AR_AVL=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 (1u <<= 12) /* 12, available for system software */
> -#define X86_SEG_AR_CS_LM_ACTIVE (1u << 13) /* 13, long mode act= ive (CS only) */
> -#define X86_SEG_AR_DEF_OP_SIZE=C2=A0 (1u << 14) /* 14, default = operation size */
> -#define X86_SEG_AR_GRANULARITY=C2=A0 (1u << 15) /* 15, granular= ity */
> -#define X86_SEG_AR_SEG_UNUSABLE (1u << 16) /* 16, segment unusa= ble */
> +#define X86_SEG_AR_SEG_PRESENT=C2=A0 (1U << 7)=C2=A0 /* 7, segm= ent present */
> +#define X86_SEG_AR_AVL=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 (1U <<= 12) /* 12, available for system software */
> +#define X86_SEG_AR_CS_LM_ACTIVE (1U << 13) /* 13, long mode act= ive (CS only) */
> +#define X86_SEG_AR_DEF_OP_SIZE=C2=A0 (1U << 14) /* 14, default = operation size */
> +#define X86_SEG_AR_GRANULARITY=C2=A0 (1U << 15) /* 15, granular= ity */
> +#define X86_SEG_AR_SEG_UNUSABLE (1U << 16) /* 16, segment unusa= ble */

And all of these, when it's exactly the two numbers you don't touch=
which might want to gain a U (or u) suffix?

=
Ok.


Jan


--
Simone Ballarin, M.Sc.

Field Application Engineer, BUGSENG = (https://bugseng.com)<= /div>
--000000000000b2400105fe9fcd1d-- From xen-devel-bounces@lists.xenproject.org Wed Jun 21 08:49:21 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 08:49:21 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552556.862697 (Exim 4.92) (envelope-from ) id 1qBtWd-0003ya-JR; Wed, 21 Jun 2023 08:49:15 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552556.862697; Wed, 21 Jun 2023 08:49:15 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBtWd-0003yT-GA; Wed, 21 Jun 2023 08:49:15 +0000 Received: by outflank-mailman (input) for mailman id 552556; Wed, 21 Jun 2023 08:49:14 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBtWc-0003yN-2W for xen-devel@lists.xenproject.org; Wed, 21 Jun 2023 08:49:14 +0000 Received: from EUR04-HE1-obe.outbound.protection.outlook.com (mail-he1eur04on2087.outbound.protection.outlook.com [40.107.7.87]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 7ed10db0-1010-11ee-b236-6b7b168915f2; Wed, 21 Jun 2023 10:49:13 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by DU0PR04MB9659.eurprd04.prod.outlook.com (2603:10a6:10:320::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.23; Wed, 21 Jun 2023 08:48:42 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6500.036; Wed, 21 Jun 2023 08:48:42 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 7ed10db0-1010-11ee-b236-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=JHbcDqrRP31/rPXHpM4xrTy7P9A2dGWn2EMPGGRNUE3vdITChSq5gxfXvc8L3i8qEjVEVdn+Kqs2CFSlU/egtOky00SG7Fu+XgW8eaAs/Gtw+UvhI+7fs81rur0PeBeZoQzHDeUbmwqZVpeQrQxGxjfSaVJA1SmjTmv6pZIVheSiemO95DYXY3b9MLoTVTv8McL4pGYDUlhNBk+SzJRbRPlUJfPygwGVqTc3QyAEklASS3uDWgUT4ItuQGoBTMaMzJeQX1zOLFJKXjcUW60P5qHfc6hzk9MucvyZUJn6rl7oMAvWtiDr29scGjVruRVm36xWTWTrUQQQe3v6bA1X9g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=6cAMGeDsrb9bQblAXcAKJAqLCzbkEboAE1EDV4YvyD4=; b=aYl2JnJ6ucF63ZetHsH571sh6pi3VbM5U1M+FP/fYT7C8ZRFC7v4EV+xCP7Qx7rw+TZwQAoC2spyCF2SQYmROm1NydavbzkRGgVDfaoIYOnvSgq8TWhcLVO8DiPGllUdHMh4JHdDUCHmyVRB+Iht59xE/cjEUwH5C3vXYQMXhqiVVtEd2FKgoQQ6/AjkZbHyHjO9Fb2wuunsGEnUcdbLE7B1ydBX3IgbEmgZiUgIgabYjy7lYmMiZ/qBIyrz20Xu2r1ZNydjXEhHd4LiToLHB9g/On7EKYZ4vKb6Wd4SdD50ohBz0iFCouSolkDNkFrSqcWTi36Uf1grzNuyzHTQ3w== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=6cAMGeDsrb9bQblAXcAKJAqLCzbkEboAE1EDV4YvyD4=; b=MlO2qHXNpcfAQbreqenVVkVeEJnVd7HhwGD0ltRA5YtPjO0kjRkDJzP8/6rGrEAK0KbSovyu6/S1xab9WTQXwN6/qUy/V7a3ACuKMJVDVfmUUwMk5xl5j8SjcZnYKDFGlnI+kzJGtJHIa7aq69P2g7uwdb7akEE07eM6EYimjDJXCEX5nJgjl4jiBQ+A997SkMbE3f0//YuaCq/OafAmq/JZ9KzAPBu40oOLu2oWGGDofNLBB7fscgpk4sQJM4hJtfgUDAtnyI7HM1PQ32K3Aoyxmz3Bjw1woQpJlUrVgb0ZcbkLQhGvFep+jE2uq58XQWqRijseAb6Mk+USeH82PA== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <0fcc228c-548f-9051-b8ce-4d79a3d8293f@suse.com> Date: Wed, 21 Jun 2023 10:48:39 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [XEN PATCH v2] xen/include: avoid undefined behavior. Content-Language: en-US To: Nicola Vetrini Cc: sstabellini@kernel.org, michal.orzel@amd.com, xenia.ragiadakou@amd.com, ayan.kumar.halder@amd.com, consulting@bugseng.com, andrew.cooper3@citrix.com, roger.pau@citrix.com, bertrand.marquis@arm.com, julien@xen.org, George Dunlap , Wei Liu , xen-devel@lists.xenproject.org References: <9d222cc83013aaa67b45638b27f5975b60aecb37.1687332385.git.nicola.vetrini@bugseng.com> From: Jan Beulich In-Reply-To: <9d222cc83013aaa67b45638b27f5975b60aecb37.1687332385.git.nicola.vetrini@bugseng.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR0P281CA0175.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:b4::9) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|DU0PR04MB9659:EE_ X-MS-Office365-Filtering-Correlation-Id: cad562c6-220a-4c8b-8868-08db723450f4 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: XGj32PP7PP5foM+XzW/oRwTKQRQWlbpIbBLbu0NvSl6Hvuq0++Q0wS0oR4eyztwWGsfQLU77qFsEB4zIIhds6TKacjQY0HWIP9af9Z6SoiFlYFUasGODUp/na19PnZnmiqy2TqbRxuadvbzcZyklrGQb9vhqgqMjOJuRcs/tZJcrBesf6U0tbKmiOW/rDtPv5r17W+owbWdJdijZ+4biWNV0TJwzA5ew+pyF8IH+JOYDR9kpGc6XgaGbjwYP1P18/j/1SlqAm2Fa0So2znm5qsC1aZFua1LUntrA8mk9Fd9OUNUNbHjOR8xtVQUYZ7fYfTcxCENWcsHwbSOcPFMCCk0acQC9tL4MysLtgpwqkPRkYRs0JbcYuP8JP+5JDEoW1e8BPLrrtXr1e/2LIcsKw9ZD1maqHcZ1L8CdibHqAgo32o9xHp/9aMg0JgNaVKYl/re71RRPy1dkUiI85zYGlbB/w1zqXchAjR7raNcrSU9KbTAbnYxkR4ZfxmMBOr8oWtygOCn4fSwi/O1lARgoIarAuJSkNUHOKfPDEXIyDaM4ywR7dgHvX+Ikcdg/O0jGBXBnP1E/2doAMMjp9arVICrw4jLReZ7P22J1YdGbXomzibLQqjD4sBDJiCNge6DfqbFG4E4GJ0Dm7lPpmcNhoA== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(346002)(366004)(136003)(396003)(39860400002)(376002)(451199021)(2906002)(186003)(6512007)(6916009)(66476007)(66556008)(4326008)(66946007)(6666004)(316002)(2616005)(54906003)(26005)(7416002)(5660300002)(478600001)(53546011)(6506007)(8936002)(6486002)(41300700001)(8676002)(38100700002)(36756003)(86362001)(31696002)(31686004)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?bnlHcVo5SktJbDRRS3hvZWtUeFQxdExoNE9aU2hXRHZPOE1WV2RFeW0vR1pu?= =?utf-8?B?VkNrY2ZmZGZJY2w3QkVlUUhpVnMvOTZ2OTlOcVQ3bFNFbmowUHR6YnFzMlpT?= =?utf-8?B?R3ZCVnE3SElrdDFoZnpPb3Z2ZzlBYkdKTkdMZHliUEw1QzBoUTVsZHo3cmx4?= =?utf-8?B?czFVODJkMnV1NHBSQjZDSHQwVDFxSkV5cVdqeEljVENjYTUyQjRQZ0NWSmgw?= =?utf-8?B?OWxaRVZsd0xMTmQ5c3FWSUVmVEEvdDZFR1ltb2VCZXllQ1FOQmNqRTJQamJs?= =?utf-8?B?YjZEZVFMUUcxNVU1SnlVYWN0ZUlNUi9EMlBwTEk0RE9CdGViK01xK25rRFVY?= =?utf-8?B?bGxiMFNRc1JGbUkrZExhK1lSelZrYlQ5YmFZTmlDcDBFMjhEWFk3MTdERWxH?= =?utf-8?B?S281STJrbkZEc3dPVGt2NWExUXdXZW9ZVVc3YStuVmNvQzFJOUU0Q21UWG8z?= =?utf-8?B?RkpwbzU3RWRLbHBpdWNHUGdkM3cvRlljYkl6WGFZOFE5RXNuc0FpajBHMXls?= =?utf-8?B?d0hkdHRZVFpmczVEd05xc2RsbmpOSlFHVU1DTzBESU1XRUpKY25LejZqN2FB?= =?utf-8?B?eUZibW5PZWhYVFRzZTQzUVNTakxIRlNnYzFoZzZ0OFkvVHJHbDBiczRkV2o0?= =?utf-8?B?V0hyQVBLZTQxQXpESGxvWU5ST3lGcVhUQzhQK1dsQ0xRaEZhMVd1enZBNEVq?= =?utf-8?B?dWlhQ0JIbEJSbmgwdVVwZU1vb2tJcVI5L2xsMG9EZnFjOVcvRVhmMy9ZYlVB?= =?utf-8?B?OWQ1RHFQRTYrSVFEbnp5UmxudHhFdkxJYlZQNlhBYTcrSGtGcExRdXp5eXVk?= =?utf-8?B?R20yRGJyZERVN0pDZHZleThwQ3lZemVGRWlUQ0pNOUtSZGtxV2VMdWRVTUgy?= =?utf-8?B?WnFqTk5VTVdOMGpickR0akRHcVdUSVFadEJoczhVVHpEWUVscmZET3ZyZWpo?= =?utf-8?B?OUwvWjRnUEl0ckZtUWNNc1V5Mmt0cDVYNG51enB2eG9CVmMrR08rTlhMNUZ1?= =?utf-8?B?c2htZWtDUkpWRFQ3YVFKMzZ3cmFxLzR3a1p6ZlNyWnU0dXlSRmN0MkYvbU9n?= =?utf-8?B?ZG1DajAzVTlpNFFBbTVWdDZqeE91NEprRjIyZWt5WGJSRU5TL2Z4TEdiRVh3?= =?utf-8?B?c2Y5QjJMYWZMMkJxTmJ4M2VxK1pBNllJVkowWWxubGMrcFBmU0E4dHpoUGZK?= =?utf-8?B?SmgyMGljUTlXeEhUMFpTTytiYWRBanJONXpCRG9reWVObFJvczFjRm5wNlhG?= =?utf-8?B?bzdWZ3Jhb3dHSWtiRXVtWHBZa0tyVFoyK2Y1c3hnSWtLbWlYTU0raksxMDZ6?= =?utf-8?B?WWE3TUg3aEhCSmJxYU83d2RrNjhVaEE5MUV0OEVIWXFTNXRIWGtJRzFTQWMr?= =?utf-8?B?WkJpL2ZhcS9Ydm9hRGl2amF3TXpvd0pYeUcyU2Z5bkM0NjRCL3BLZDZjMjRz?= =?utf-8?B?eFFEN0lBRSt1aXZsV0l2b3JqeE9WUUFvbitHVG50ZnBteGhCYUlpa3ZadkpF?= =?utf-8?B?WEY5TDFaVmRWWUhSbWZPbFJsV1k0UjZFcnhNVEhndytpbi90VWszZ2FiS0d0?= =?utf-8?B?VDBUQXU5bWJmUFhBMTYwaUw4amIrZ0V6U1hVZkhDRlZBeGhBTFBzMS9SZURR?= =?utf-8?B?QjFJNEpYUEc1eUF2dHg4V21tTitpMDljNFJraFRoSVVqUjgxWTJhNXJEa0cy?= =?utf-8?B?YnViZmJXQVpPV3ZKU09nR1U2aFNkdTN3ODVOVzFCdWVoZ3NsNVdxd2dmTUJZ?= =?utf-8?B?TlFRRDZMbWMzamdnWk1YeHA4NDFTb0VBLzVWSW1yb0h5U21sbXRnc0R1Qmxv?= =?utf-8?B?a2Q5bkFIdFowNmVmbnZBZG9kQWRXWGFlcS9VQzdwSEE5ZDc1c0dJS2M0U1FZ?= =?utf-8?B?RFU4UnRvL1kyQm1xOVRPbU83aUFETjJabnpxNHA1NWhIak1xbzhBa2s1NVlI?= =?utf-8?B?SGt3Y0N3Nis5czhtejBGcEhKWGJ0c3pwZHFZcTJ2L3p0SWI4RlR2RG8zYnc2?= =?utf-8?B?OHdYNGN1dnZGKzBDdVl2bXdtRFJ0ZHl0NnVWczRYQ1BDNjc4REltVnhxMCtI?= =?utf-8?B?akRvVGRIWEhvMlNQNjN4V2RqREc1bzVQTEMrT0kvMlRqZmpoUTNoYUN0SHdS?= =?utf-8?Q?w1Dc5Jw5yhPVscmHPkuRliX9T?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: cad562c6-220a-4c8b-8868-08db723450f4 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Jun 2023 08:48:42.6923 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: z9i9CPLt6H03iaf7YnsAI9zxjgOFzczhKlKUKuAZvHbGu0KdQMbrqLpJPvWUtGSl0jyUJ0cBHeOCsEoZnBIdPQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU0PR04MB9659 On 21.06.2023 09:58, Nicola Vetrini wrote: > Redefine BUILD_BUG_ON_ZERO to fully comply with C99 avoiding > undefined behavior 58 ("A structure or union is defined as > containing no named members (6.7.2.1)." Here and in the title I'm not happy about you referencing undefined behavior. What we do here is use a well-known compiler extension (and I'm sure you're aware we do so elsewhere, where it's actually going to remain as is from all I can tell right now). > --- a/xen/include/xen/lib.h > +++ b/xen/include/xen/lib.h > @@ -51,9 +51,10 @@ > e.g. in a structure initializer (or where-ever else comma expressions > aren't permitted). */ > #define BUILD_BUG_ON_ZERO(cond) \ > - sizeof(struct { _Static_assert(!(cond), "!(" #cond ")"); }) > + (sizeof(struct { char c; _Static_assert(!(cond), "!(" #cond ")"); }) - 1U) To be compatible with whatever odd ABIs new ports may have, maybe better to AND or multiply with 0? (I also don't think a U suffix is warranted here.) > #else > -#define BUILD_BUG_ON_ZERO(cond) sizeof(struct { int:-!!(cond); }) > +#define BUILD_BUG_ON_ZERO(cond) \ > + (sizeof(struct { unsigned u : (cond) ? -1 : sizeof(unsigned) * 8; }) - sizeof(unsigned)) What's wrong with just giving the bitfield a name: #define BUILD_BUG_ON_ZERO(cond) sizeof(struct { int _:-!!(cond); }) Jan From xen-devel-bounces@lists.xenproject.org Wed Jun 21 08:58:14 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 08:58:14 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552561.862707 (Exim 4.92) (envelope-from ) id 1qBtf2-0005Ty-F4; Wed, 21 Jun 2023 08:57:56 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552561.862707; Wed, 21 Jun 2023 08:57:56 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBtf2-0005Tr-BR; Wed, 21 Jun 2023 08:57:56 +0000 Received: by outflank-mailman (input) for mailman id 552561; Wed, 21 Jun 2023 08:57:55 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBtf1-0005Th-9i; Wed, 21 Jun 2023 08:57:55 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBtf1-0001pT-04; Wed, 21 Jun 2023 08:57:55 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBtf0-0002tH-3A; Wed, 21 Jun 2023 08:57:54 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qBtf0-0003eM-2g; Wed, 21 Jun 2023 08:57:54 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=kMsoRlWT0TpDrP9rMcpxTedk39TrbtviVayJh4JzzL8=; b=ZrUK8+AA8zhc1eWWNkOLuvOBRa PojJd34+Vpn/XPl2WlL9u4EAc96QRQ+50vpkCI2sGsptoJA23yB533G9+Sk17p8Nx1uWOKK6xYgya 2mCzlUV9aBfjt+dzso7gAhGJWNtUNUlecQEAZZj/SvMw016Q0qBLnnMkKBRp1jJhw3zc=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [qemu-mainline test] 181530: regressions - trouble: blocked/broken/fail/pass X-Osstest-Failures: qemu-mainline:build-armhf::broken:regression qemu-mainline:build-armhf:host-install(4):broken:regression qemu-mainline:build-amd64:xen-build:fail:regression qemu-mainline:build-amd64-xsm:xen-build:fail:regression qemu-mainline:build-i386:xen-build:fail:regression qemu-mainline:build-i386-xsm:xen-build:fail:regression qemu-mainline:build-arm64:xen-build:fail:regression qemu-mainline:build-arm64-xsm:xen-build:fail:regression qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-i386:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:build-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:build-arm64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:build-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:build-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pygrub:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking X-Osstest-Versions-This: qemuu=cab35c73be9d579db105ef73fa8a60728a890098 X-Osstest-Versions-That: qemuu=6972ef1440a9d685482d78672620a7482f2bd09a From: osstest service owner Date: Wed, 21 Jun 2023 08:57:54 +0000 flight 181530 qemu-mainline real [real] http://logs.test-lab.xenproject.org/osstest/logs/181530/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-armhf broken build-armhf 4 host-install(4) broken REGR. vs. 180691 build-amd64 6 xen-build fail REGR. vs. 180691 build-amd64-xsm 6 xen-build fail REGR. vs. 180691 build-i386 6 xen-build fail REGR. vs. 180691 build-i386-xsm 6 xen-build fail REGR. vs. 180691 build-arm64 6 xen-build fail REGR. vs. 180691 build-arm64-xsm 6 xen-build fail REGR. vs. 180691 Tests which did not succeed, but are not blocking: test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-xl-xsm 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-raw 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-xsm 1 build-check(1) blocked n/a test-arm64-arm64-xl 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit1 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit2 1 build-check(1) blocked n/a test-arm64-arm64-xl-thunderx 1 build-check(1) blocked n/a test-arm64-arm64-xl-vhd 1 build-check(1) blocked n/a test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a test-armhf-armhf-libvirt 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-qcow2 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-raw 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a test-armhf-armhf-xl-arndale 1 build-check(1) blocked n/a test-armhf-armhf-xl-multivcpu 1 build-check(1) blocked n/a test-armhf-armhf-xl-rtds 1 build-check(1) blocked n/a test-armhf-armhf-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-amd 1 build-check(1) blocked n/a test-amd64-i386-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-raw 1 build-check(1) blocked n/a test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-i386 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-amd64 1 build-check(1) blocked n/a test-amd64-coresched-i386-xl 1 build-check(1) blocked n/a test-amd64-coresched-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-xsm 1 build-check(1) blocked n/a build-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-shadow 1 build-check(1) blocked n/a test-amd64-amd64-xl-rtds 1 build-check(1) blocked n/a build-arm64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a build-armhf-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a build-i386-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-amd 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-pair 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-qcow2 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-vhd 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvshim 1 build-check(1) blocked n/a test-amd64-amd64-pair 1 build-check(1) blocked n/a test-amd64-amd64-pygrub 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-intel 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd11-amd64 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd12-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-multivcpu 1 build-check(1) blocked n/a test-amd64-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit1 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit1 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-intel 1 build-check(1) blocked n/a test-amd64-i386-xl 1 build-check(1) blocked n/a test-amd64-i386-xl-pvshim 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a version targeted for testing: qemuu cab35c73be9d579db105ef73fa8a60728a890098 baseline version: qemuu 6972ef1440a9d685482d78672620a7482f2bd09a Last test of basis 180691 2023-05-17 10:45:22 Z 34 days Failing since 180699 2023-05-18 07:21:24 Z 34 days 121 attempts Testing same since 181526 2023-06-20 20:42:14 Z 0 days 2 attempts ------------------------------------------------------------ People who touched revisions under test: Afonso Bordado Akihiko Odaki Akihiro Suda Alex Bennée Alex Williamson Alexander Bulekov Alexander Graf Alexander Ivanov Alistair Francis Anastasia Belova Andrea Bolognani Andreas Schwab Andrew Jeffery Ani Sinha Ani Sinha Anthony PERARD Anton Johansson Antonio Caggiano BALATON Zoltan Bastian Koppelmann Bernhard Beschow Bin Meng Brian Cain Brice Goglin Camilla Conte Carlos Santos Christian Schoenebeck Chuck Zmudzinski Cindy Lu Clément Chigot Corey Minyard Cornelia Huck Cédric Le Goater Cédric Le Goater Daniel Henrique Barboza Daniel Henrique Barboza Daniel P. Berrangé Daniil Kovalev David Hildenbrand David Woodhouse Emanuele Giuseppe Esposito Enze Li Eric Auger Eric Blake Eric DeVolder Erico Nunes Eugenio Pérez Fabiano Rosas Fan Ni Fiona Ebner Francesco Cagnin Francisco Iglesias Frederic Barrat Gavin Shan Gregory Price Gregory Price Guenter Roeck Hanna Czenczek Hao Zeng Hawkins Jiawei Himanshu Chauhan Igor Mammedov Ilya Leoshkevich Ira Weiny Ivan Klokov Jagannathan Raman Jason Wang Jean-Louis Dupond Jean-Philippe Brucker Jiajie Chen Jiaxun Yang Joao Martins John Snow Jonathan Cameron Juan Quintela Junqiang Wang Kevin Wolf Laurent Vivier Lei Yang Leonardo Bras Maksim Davydov Marc-André Lureau Marcin Juszkiewicz Marco Liebel Mark Cave-Ayland Markus Armbruster Martin Kaiser Matheus Tavares Bernardino Mattias Nissler Mauro Matteo Cascella Max Fritz Mayuresh Chitale Michael S. Tsirkin Michael Tokarev Michal Privoznik Milan Zamazal Mostafa Saleh Nicholas Piggin Nicolas Saenz Julienne Niek Linnenbank Niklas Cassel Ninad Palsule Palmer Dabbelt Paolo Bonzini Patrick Venture Peter Maydell Peter Xu Philippe Mathieu-Daudé Philippe Mathieu-Daudé qianfan Zhao Raghu H Rene Engel Richard Henderson Richard Purdie Ricky Zhou Ryan Wendland Sebastian Ott Sergey Kambalin Sergio Lopez Sid Manning Song Gao Stefan Hajnoczi Stefano Garzarella Stefano Stabellini Stefano Stabellini Steve Sistare Sunil V L Taylor Simpson Thomas Huth Thomas Weißschuh Tianrui Zhao timothee.cocault@gmail.com Timothée Cocault Tommy Wu Vikram Garhwal Viktor Prutyanov Vitaly Cheptsov Vivek Kasireddy Vladimir Sementsov-Ogievskiy Volker Rümelin Weiwei Li Xiao Wang Xinyu Li Yin Wang Zeng Hao Zhenyu Zhang Zhenzhong Duan Zhuojia Shen jobs: build-amd64-xsm fail build-arm64-xsm fail build-i386-xsm fail build-amd64 fail build-arm64 fail build-armhf broken build-i386 fail build-amd64-libvirt blocked build-arm64-libvirt blocked build-armhf-libvirt blocked build-i386-libvirt blocked build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl blocked test-amd64-coresched-amd64-xl blocked test-arm64-arm64-xl blocked test-armhf-armhf-xl blocked test-amd64-i386-xl blocked test-amd64-coresched-i386-xl blocked test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-i386-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-amd64-libvirt-xsm blocked test-arm64-arm64-libvirt-xsm blocked test-amd64-i386-libvirt-xsm blocked test-amd64-amd64-xl-xsm blocked test-arm64-arm64-xl-xsm blocked test-amd64-i386-xl-xsm blocked test-amd64-amd64-qemuu-nested-amd blocked test-amd64-amd64-xl-pvhv2-amd blocked test-amd64-i386-qemuu-rhel6hvm-amd blocked test-amd64-amd64-dom0pvh-xl-amd blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-freebsd10-amd64 blocked test-amd64-amd64-qemuu-freebsd11-amd64 blocked test-amd64-amd64-qemuu-freebsd12-amd64 blocked test-amd64-amd64-xl-qemuu-ovmf-amd64 blocked test-amd64-i386-xl-qemuu-ovmf-amd64 blocked test-amd64-amd64-xl-qemuu-win7-amd64 blocked test-amd64-i386-xl-qemuu-win7-amd64 blocked test-amd64-amd64-xl-qemuu-ws16-amd64 blocked test-amd64-i386-xl-qemuu-ws16-amd64 blocked test-armhf-armhf-xl-arndale blocked test-amd64-amd64-xl-credit1 blocked test-arm64-arm64-xl-credit1 blocked test-armhf-armhf-xl-credit1 blocked test-amd64-amd64-xl-credit2 blocked test-arm64-arm64-xl-credit2 blocked test-armhf-armhf-xl-credit2 blocked test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-freebsd10-i386 blocked test-amd64-amd64-qemuu-nested-intel blocked test-amd64-amd64-xl-pvhv2-intel blocked test-amd64-i386-qemuu-rhel6hvm-intel blocked test-amd64-amd64-dom0pvh-xl-intel blocked test-amd64-amd64-libvirt blocked test-armhf-armhf-libvirt blocked test-amd64-i386-libvirt blocked test-amd64-amd64-xl-multivcpu blocked test-armhf-armhf-xl-multivcpu blocked test-amd64-amd64-pair blocked test-amd64-i386-pair blocked test-amd64-amd64-libvirt-pair blocked test-amd64-i386-libvirt-pair blocked test-amd64-amd64-xl-pvshim blocked test-amd64-i386-xl-pvshim blocked test-amd64-amd64-pygrub blocked test-armhf-armhf-libvirt-qcow2 blocked test-amd64-amd64-xl-qcow2 blocked test-arm64-arm64-libvirt-raw blocked test-armhf-armhf-libvirt-raw blocked test-amd64-i386-libvirt-raw blocked test-amd64-amd64-xl-rtds blocked test-armhf-armhf-xl-rtds blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-amd64-xl-shadow blocked test-amd64-i386-xl-shadow blocked test-arm64-arm64-xl-thunderx blocked test-amd64-amd64-libvirt-vhd blocked test-arm64-arm64-xl-vhd blocked test-armhf-armhf-xl-vhd blocked test-amd64-i386-xl-vhd blocked ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary broken-job build-armhf broken broken-step build-armhf host-install(4) Not pushing. (No revision log; it would be 20139 lines long.) From xen-devel-bounces@lists.xenproject.org Wed Jun 21 09:18:46 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 09:18:46 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552572.862716 (Exim 4.92) (envelope-from ) id 1qBtyw-000810-9U; Wed, 21 Jun 2023 09:18:30 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552572.862716; Wed, 21 Jun 2023 09:18:30 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBtyw-00080t-6r; Wed, 21 Jun 2023 09:18:30 +0000 Received: by outflank-mailman (input) for mailman id 552572; Wed, 21 Jun 2023 09:18:28 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBtyu-00080n-TS for xen-devel@lists.xenproject.org; Wed, 21 Jun 2023 09:18:28 +0000 Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 935933ec-1014-11ee-8611-37d641c3527e; Wed, 21 Jun 2023 11:18:25 +0200 (CEST) Received: from mail-vs1-f48.google.com (mail-vs1-f48.google.com [209.85.217.48]) by support.bugseng.com (Postfix) with ESMTPSA id 2AE984EE073D for ; Wed, 21 Jun 2023 11:18:25 +0200 (CEST) Received: by mail-vs1-f48.google.com with SMTP id ada2fe7eead31-440afc96271so1275261137.3 for ; Wed, 21 Jun 2023 02:18:25 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 935933ec-1014-11ee-8611-37d641c3527e X-Gm-Message-State: AC+VfDxIgCfSbkVwI7Y7A1h3vvq3e2h2WPLr8duL0bYr7ac2n+3Zy3LK lRPyyGVEMoyBXjtleis0U9K3MLQrvFXG/JA5BPM= X-Google-Smtp-Source: ACHHUZ46eYBl4TMMf6pnGAEqJs5h1qN7IWV0yIXvAwrd1utSh/5XkKxc3o1U0yuEMTtWMourHfOHJv576tXGglwEjWI= X-Received: by 2002:a67:f348:0:b0:440:b0ed:649 with SMTP id p8-20020a67f348000000b00440b0ed0649mr4671703vsm.24.1687339103999; Wed, 21 Jun 2023 02:18:23 -0700 (PDT) MIME-Version: 1.0 References: <2214598125081ccfb324555288bee0340f8b1024.1687250177.git.gianluca.luparini@bugseng.com> <97d41c7e-94d1-928c-6619-adc25ffba106@suse.com> In-Reply-To: <97d41c7e-94d1-928c-6619-adc25ffba106@suse.com> From: Simone Ballarin Date: Wed, 21 Jun 2023 11:18:13 +0200 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: [XEN PATCH 09/13] xen/public: fixed violations of MISRA C:2012 Rule 7.2 To: Jan Beulich Cc: consulting@bugseng.com, Gianluca Luparini , Juergen Gross , Stefano Stabellini , Michal Orzel , Xenia Ragiadakou , Ayan Kumar , xen-devel@lists.xenproject.org Content-Type: multipart/alternative; boundary="000000000000e8ddc805fea03f8a" --000000000000e8ddc805fea03f8a Content-Type: text/plain; charset="UTF-8" Hi, Il giorno mar 20 giu 2023 alle ore 15:00 Jan Beulich ha scritto: > On 20.06.2023 12:35, Simone Ballarin wrote: > > --- a/xen/include/public/io/ring.h > > +++ b/xen/include/public/io/ring.h > > @@ -36,11 +36,11 @@ > > typedef unsigned int RING_IDX; > > > > /* Round a 32-bit unsigned constant down to the nearest power of two. */ > > -#define __RD2(_x) (((_x) & 0x00000002) ? 0x2 : ((_x) > & 0x1)) > > -#define __RD4(_x) (((_x) & 0x0000000c) ? __RD2((_x)>>2)<<2 : > __RD2(_x)) > > -#define __RD8(_x) (((_x) & 0x000000f0) ? __RD4((_x)>>4)<<4 : > __RD4(_x)) > > -#define __RD16(_x) (((_x) & 0x0000ff00) ? __RD8((_x)>>8)<<8 : > __RD8(_x)) > > -#define __RD32(_x) (((_x) & 0xffff0000) ? __RD16((_x)>>16)<<16 : > __RD16(_x)) > > +#define __RD2(_x) (((_x) & 0x00000002U) ? 0x2 : ((_x) > & 0x1)) > > +#define __RD4(_x) (((_x) & 0x0000000cU) ? __RD2((_x)>>2)<<2 : > __RD2(_x)) > > +#define __RD8(_x) (((_x) & 0x000000f0U) ? __RD4((_x)>>4)<<4 : > __RD4(_x)) > > +#define __RD16(_x) (((_x) & 0x0000ff00U) ? __RD8((_x)>>8)<<8 : > __RD8(_x)) > > +#define __RD32(_x) (((_x) & 0xffff0000U) ? __RD16((_x)>>16)<<16 : > __RD16(_x)) > > While I don't mind the suffixes being added, I'm wondering how > the tool would have spotted the single violation here. Iirc we > don't use this header anywhere in the hypervisor. > In the analyzed build it is used: aarch64-linux-gnu-gcc-12 -MMD -MP -MF common/.vm_event.o.d -DBUILD_ID -fno-strict-aliasing -std=gnu99 -Wall -Wstrict-prototypes -Wdeclaration-after-statement -Wno-unused-but-set-variable -Wno-unused-local-typedefs -O1 -fno-omit-frame-pointer -nostdinc -fno-builtin -fno-common -Werror -Wredundant-decls -Wno-pointer-arith -Wvla -pipe -D__XEN__ -include ./include/xen/config.h "-Wa,--strip-local-absolute" -g -mcpu=generic -mgeneral-regs-only -mno-outline-atomics -I./include -I./arch/arm/include -fno-pie -fno-stack-protector -fno-exceptions -fno-asynchronous-unwind-tables -Wnested-externs -fprofile-arcs -ftest-coverage -c common/vm_event.c -o common/vm_event.o xen/common/vm_event.c: 85 FRONT_RING_INIT(&ved->front_ring, 86 (vm_event_sring_t *)ved->ring_page, 87 PAGE_SIZE); The expansions that lead to __RD32 are: FRONT_RING_INIT -> FRONT_RING_ATTACH -> __RING_SIZE -> __RD32 > > Furthermore, if I recall correctly Misra also mandates single > evaluation of macro arguments. While I don't immediately see how > to address that without resorting to compiler extensions, I don't > think it makes sense to address one violation here but not he > other (the more when the code in question doesn't affect the > hypervisor build). > If not clearly connected I suggest discussing one rule at a time. > > Jan > -- Simone Ballarin, M.Sc. Field Application Engineer, BUGSENG (https://bugseng.com ) --000000000000e8ddc805fea03f8a Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable

FRONT_RING_INIT -> FRONT_RING_ATTACH ->= ; __RING_SIZE -> __RD32

Furthermore, if I recall correctly Misra also mandates single
evaluation of macro arguments. While I don't immediately see how
to address that without resorting to compiler extensions, I don't
think it makes sense to address one violation here but not he
other (the more when the code in question doesn't affect the
hypervisor build).

If not clearly conne= cted I suggest discussing one rule at a time.

Jan


--
--000000000000e8ddc805fea03f8a-- From xen-devel-bounces@lists.xenproject.org Wed Jun 21 09:28:19 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 09:28:19 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552579.862727 (Exim 4.92) (envelope-from ) id 1qBu8M-00015c-5N; Wed, 21 Jun 2023 09:28:14 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552579.862727; Wed, 21 Jun 2023 09:28:14 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBu8M-00015V-1f; Wed, 21 Jun 2023 09:28:14 +0000 Received: by outflank-mailman (input) for mailman id 552579; Wed, 21 Jun 2023 09:28:12 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBu8K-00015O-4U for xen-devel@lists.xenproject.org; Wed, 21 Jun 2023 09:28:12 +0000 Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id efb3319a-1015-11ee-8611-37d641c3527e; Wed, 21 Jun 2023 11:28:09 +0200 (CEST) Received: from mail-vk1-f173.google.com (mail-vk1-f173.google.com [209.85.221.173]) by support.bugseng.com (Postfix) with ESMTPSA id 9A3BC4EE0743 for ; Wed, 21 Jun 2023 11:28:09 +0200 (CEST) Received: by mail-vk1-f173.google.com with SMTP id 71dfb90a1353d-4714e9f070bso1781648e0c.0 for ; Wed, 21 Jun 2023 02:28:09 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: efb3319a-1015-11ee-8611-37d641c3527e X-Gm-Message-State: AC+VfDyyuE4hp6quSUgs+5+p4eYZ/2xeylaApHk0kVKUpL0FyKKMpV0P e6yeazvnijUmbBHQp9gKR30KEvrAdnFJB12uNM4= X-Google-Smtp-Source: ACHHUZ4kliDfAvsM8ueGz91gI7mIFjQG0yEdJKlux3xhFeoS6+hAT4BqWb3bifcRgXQ3rHIRPthyMD9aTVyaxpNE5QE= X-Received: by 2002:a1f:db42:0:b0:46e:7558:a45c with SMTP id s63-20020a1fdb42000000b0046e7558a45cmr4866734vkg.8.1687339688358; Wed, 21 Jun 2023 02:28:08 -0700 (PDT) MIME-Version: 1.0 References: <019b934cb1e96affd7429c1632fbfe3faacc663e.1687250177.git.gianluca.luparini@bugseng.com> <6d6708de-7afb-963c-65ae-3656fc755ad6@suse.com> <23a79e33-ac20-6b76-335f-102479a4db91@suse.com> In-Reply-To: <23a79e33-ac20-6b76-335f-102479a4db91@suse.com> From: Simone Ballarin Date: Wed, 21 Jun 2023 11:27:57 +0200 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: [XEN PATCH 06/13] xen/efi: fixed violations of MISRA C:2012 Rule 7.2 To: Jan Beulich Cc: Stefano Stabellini , consulting@bugseng.com, Gianluca Luparini , Andrew Cooper , =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= , Wei Liu , Michal Orzel , Xenia Ragiadakou , Ayan Kumar , xen-devel@lists.xenproject.org Content-Type: multipart/alternative; boundary="000000000000bd7be605fea0626d" --000000000000bd7be605fea0626d Content-Type: text/plain; charset="UTF-8" Il giorno mer 21 giu 2023 alle ore 09:06 Jan Beulich ha scritto: > On 20.06.2023 22:56, Stefano Stabellini wrote: > > On Tue, 20 Jun 2023, Jan Beulich wrote: > >> On 20.06.2023 12:34, Simone Ballarin wrote: > >>> From: Gianluca Luparini > >>> > >>> The xen sources contains violations of MISRA C:2012 Rule 7.2 whose > headline states: > >>> "A "u" or "U" suffix shall be applied to all integer constants that > are represented in an unsigned type". > >>> > >>> I propose to use "U" as a suffix to explicitly state when an integer > constant is represented in an unsigned type. > >>> For homogeneity, I also added the "U" suffix in some cases that the > tool didn't report as violations. > >>> > >>> Signed-off-by: Simone Ballarin > >>> --- > >>> xen/arch/x86/include/asm/x86_64/efibind.h | 10 +++++----- > >> > >> This file as well as ... > >> > >>> xen/common/efi/boot.c | 8 ++++---- > >>> xen/common/efi/runtime.c | 2 +- > >>> xen/include/efi/efiapi.h | 10 +++++----- > >>> xen/include/efi/efidef.h | 2 +- > >>> xen/include/efi/efiprot.h | 22 +++++++++++----------- > >> > >> ... the last three here are imported from the gnu-efi package. I'm wary > >> of touching them, and thus getting them more out of sync with their > >> original than strictly necessary. To allow the other changes to go in > >> no matter what, I'd like to suggest splitting the patch. > > > > Should we add either those files individually or the directory > > xen/include/efi (plus xen/arch/x86/include/asm/x86_64/efibind.h) to > > docs/misra/exclude-list.json ? > > Probably, and in the former case imo the entire directory. > > Jan > Ok, I will remove all the changes in the "xen/include/efi" directory and "xen/arch/x86/include/asm/x86_64/efibind.h". -- Simone Ballarin, M.Sc. Field Application Engineer, BUGSENG (https://bugseng.com ) --000000000000bd7be605fea0626d Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable


=
Il giorno mer 21 giu 2023 alle ore 09= :06 Jan Beulich <jbeulich@suse.com<= /a>> ha scritto:
On 20.06.2023 22:56, Stefano Stabellini wrote:
> On Tue, 20 Jun 2023, Jan Beulich wrote:
>> On 20.06.2023 12:34, Simone Ballarin wrote:
>>> From: Gianluca Luparini <
gianluca.luparini@bugseng.com>
>>>
>>> The xen sources contains violations of MISRA C:2012 Rule 7.2 w= hose headline states:
>>> "A "u" or "U" suffix shall be applied= to all integer constants that are represented in an unsigned type". >>>
>>> I propose to use "U" as a suffix to explicitly state= when an integer constant is represented in an unsigned type.
>>> For homogeneity, I also added the "U" suffix in some= cases that the tool didn't report as violations.
>>>
>>> Signed-off-by: Simone Ballarin <simone.ballarin@bugseng.com> >>> ---
>>>=C2=A0 xen/arch/x86/include/asm/x86_64/efibind.h | 10 +++++----= -
>>
>> This file as well as ...
>>
>>>=C2=A0 xen/common/efi/boot.c=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0|=C2=A0 8 ++++----
>>>=C2=A0 xen/common/efi/runtime.c=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 |=C2=A0 2 +-
>>>=C2=A0 xen/include/efi/efiapi.h=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 | 10 +++++-----
>>>=C2=A0 xen/include/efi/efidef.h=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 |=C2=A0 2 +-
>>>=C2=A0 xen/include/efi/efiprot.h=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0| 22 +++++++++++-----------
>>
>> ... the last three here are imported from the gnu-efi package. I&#= 39;m wary
>> of touching them, and thus getting them more out of sync with thei= r
>> original than strictly necessary. To allow the other changes to go= in
>> no matter what, I'd like to suggest splitting the patch.
>
> Should we add either those files individually or the directory
> xen/include/efi (plus xen/arch/x86/include/asm/x86_64/efibind.h) to > docs/misra/exclude-list.json ?

Probably, and in the former case imo the entire directory.

Jan

Ok, I will remove all the changes in t= he "xen/include/efi" directory and "xen/arch/x86/include/asm= /x86_64/efibind.h".
--
Simone Ba= llarin, M.Sc.

Field Application Engineer, BUGSENG (https://bugseng.com)
--000000000000bd7be605fea0626d-- From xen-devel-bounces@lists.xenproject.org Wed Jun 21 09:31:15 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 09:31:15 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552586.862737 (Exim 4.92) (envelope-from ) id 1qBuB9-0002Vc-Ic; Wed, 21 Jun 2023 09:31:07 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552586.862737; Wed, 21 Jun 2023 09:31:07 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBuB9-0002VV-FJ; Wed, 21 Jun 2023 09:31:07 +0000 Received: by outflank-mailman (input) for mailman id 552586; Wed, 21 Jun 2023 09:31:06 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBuB8-0002VN-9e for xen-devel@lists.xenproject.org; Wed, 21 Jun 2023 09:31:06 +0000 Received: from esa6.hc3370-68.iphmx.com (esa6.hc3370-68.iphmx.com [216.71.155.175]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 56312351-1016-11ee-b236-6b7b168915f2; Wed, 21 Jun 2023 11:31:03 +0200 (CEST) Received: from mail-bn8nam04lp2048.outbound.protection.outlook.com (HELO NAM04-BN8-obe.outbound.protection.outlook.com) ([104.47.74.48]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 21 Jun 2023 05:30:58 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by BY1PR03MB7309.namprd03.prod.outlook.com (2603:10b6:a03:52e::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.21; Wed, 21 Jun 2023 09:30:56 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606%4]) with mapi id 15.20.6521.023; Wed, 21 Jun 2023 09:30:55 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 56312351-1016-11ee-b236-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1687339863; h=message-id:date:from:subject:to:cc:references: in-reply-to:content-transfer-encoding:mime-version; bh=qs09iu0eZPY+kFyTYl+b1uB0Xh6kqRIp4Uth3Ircq0w=; b=GcjbSjhgy1WsBCcH0/7C2sU715kaDSt4iC9eQPUh7m9KAjtHe/3d1E0f saQcGd0ObjAOJrZ28U0YA+4wwF0U9n/D16BoSfbc7Pzinkksy5gGvy+XZ i/0fuzEUskETlagRe81n2ANY7dqBPt+imN67LCZAfSTsDcoUTF88UAyNL U=; X-IronPort-RemoteIP: 104.47.74.48 X-IronPort-MID: 112922269 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:1va+r6Ou8HatxMPvrR2HlsFynXyQoLVcMsEvi/4bfWQNrUorgTcGx 2BLXmyBb/eJNGP8KN91a4+3/U9V6sWGz9M3TAto+SlhQUwRpJueD7x1DKtS0wC6dZSfER09v 63yTvGacajYm1eF/k/F3oDJ9CU6jufQAOKnUoYoAwgpLSd8UiAtlBl/rOAwh49skLCRDhiE/ Nj/uKUzAnf8s9JPGjxSs/rrRC9H5qyo42tG5AVmP5ingXeF/5UrJMNHTU2OByOQrrl8RoaSW +vFxbelyWLVlz9F5gSNy+uTnuUiG9Y+DCDW4pZkc/HKbitq/0Te5p0TJvsEAXq7vh3S9zxHJ HehgrTrIeshFvWkdO3wyHC0GQkmVUFN0OevzXRSLaV/ZqAJGpfh66wGMa04AWEX0uRZWllW/ vMAEjIuYy2Zv+657K+jUNA506zPLOGzVG8ekldJ6GmFSNwAEdXESaiM4sJE1jAtgMwIBezZe 8cSdTtoalLHfgFLPVAUTpk5mY9EhFGmK2Ee9A3T+vZxvzi7IA9ZidABNPL8fNCQSNoTtUGfv m/cpEzyAw0ANczZwj2Amp6prraWx3KhAthMRdVU8NZVmXyIxWhICyQpSFuXmfWQsBaEXt9Qf hl8Fi0G6PJaGFaQZtv3UgC8oXWElgUBQNcWGOo/gCmSzoLE7gDfAXILJhZRZdpjuMIoSDgC0 l6Sg8ivFTFpqKeSS3+W6vGTtzzaBMQOBWoLZCtBRw1V5dDm+N03lkiXEoYlF7OphNroHz222 yqNsCU1m7QUi4gMyrm/+lfExTmro/AlUzII2+keZUr9hisRWWJvT9XABYTzhRqYELukcw== IronPort-HdrOrdr: A9a23:PhqWyKx2M6nzb+rqXPHXKrPwl71zdoMgy1knxilNoNJuE/Bw8P re+sjztCWE7wr5PUtLpTnuAsS9qB/nmaKdpLNhXotLsmHdyReVxcJZnPbfKwSJIVyAygcl79 YfT0EdMr3N5ClB/KLHCVKDYq8dKbC8mcjCuQ6d9QYOcegNUc5dBmxCe2Om+yNNKjWuLKBJZa a0145opyeAZX9SVciyHH8DNtKz3eHjpdbJYQMmGxVi0wWFjSqp5LnmeiLopSs2YndgwaoC7W OAqADy5ryiv/anjjfQ2nTe9Y4+oqqQ9vJzQOKNl+kIIXHXhgGkaJ8JYcz7gAwI X-Talos-CUID: =?us-ascii?q?9a23=3ACxqkCmuP2x9myLlpEVkIxxDb6IsnXCbl1HzfO3W?= =?us-ascii?q?6KmtUUoWZRnON4Lldxp8=3D?= X-Talos-MUID: =?us-ascii?q?9a23=3AbB32mw3h6kYu/2AgXK7tqUwjfTUj3L2PE0MJypY?= =?us-ascii?q?/hNSEGRR8Eg3FtjG6Tdpy?= X-IronPort-AV: E=Sophos;i="6.00,260,1681185600"; d="scan'208";a="112922269" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=HlgVZTQCwAznmXsSsuUS8kY5Nimt78g4lBTO6HI2lMxrad7mDG7bkkrtnEBpgS1p2s8TEEDzlA6BSt0qGw0t2pHdfRH0ZIqh79f0wq3lK+aySs3YgKrlaQdKuqyHQmtTTHIydrY5fiUdDDHwfpO7kpTCAyKDHz7qFToNOn1mjM2fRV1P3dWSO2GkyplcKz91R1+0x2qSdudJXw+aCTphZTEb2FJKjFslDEYU0gjj1vQN1Eq5+Y4yxYmMLuZ5jNzp+aDI3I0R4ILkLvbUwBNWN7pb6Rd8KTmwo1YPjUI5PXI83ZbhHfZL9VqMuqZLyIW/AerLWcYWhDOEfmddnxv9gQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=tM61P+aXKVH9l6UMGrKDJb2ovIju9mC8czrBkVlSHIA=; b=gjN6mBWMVnWGh5zKahLPVDs+v7PcATG1FNxMh7s50wbDbNoqIYzxF1Pfp4+8ldNGn9gt4D7D4TCaeXA3CMkWhLZZRazRY40ATSmfo8g11wi33i6mRDnGWh1bvjsR0EG5aw+5usI633xCIJuvlWGaH/LEGCt3MIZyK4NXK4HdaberxL0ahLmeRryEcjFLm0C9Baz1Hjd7uheqVMELUizyDSdSGgEVbUTm48BfHnGLWaT76Km5C672gC5iwINCOVZlK5X3wLGPwDdjKkJW9dt9AyGuTGSs08hCnABotY/i6vOt+Gnlmrjb3DX+sRCYNFvy3RzYay1Y0yGakwcOdjJPgw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=tM61P+aXKVH9l6UMGrKDJb2ovIju9mC8czrBkVlSHIA=; b=Pucfx1FGt77+GP6wwWwfhDY9Ft5iPxKp3jjIU3mgiNzo/z5Ru04RpPF+lqTJNGShbsJfyeFh5nj8MoweTLp99ko6MwfwHXMvArfPZnSd2ezoXWCyR0Hjmnax2uCUFilY9wVBL/tuW2h7v3yqk55VbX0VOH8Dmv1yJzvlzsWIc6A= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: Date: Wed, 21 Jun 2023 10:30:49 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 From: Andrew Cooper Subject: Re: [PATCH] x86/vpmu: Simplify is_pmc_quirk Content-Language: en-GB To: Jan Beulich Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , Xen-devel References: <20230620174556.3898824-1-andrew.cooper3@citrix.com> <8c76c3c3-f839-ef03-4011-e223ff6fc938@suse.com> In-Reply-To: <8c76c3c3-f839-ef03-4011-e223ff6fc938@suse.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO4P123CA0077.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:190::10) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|BY1PR03MB7309:EE_ X-MS-Office365-Filtering-Correlation-Id: e499d838-0282-49d7-a787-08db723a3683 X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: osIki7T66aNQ442Ofu5PgZwaRQXM1t9JYJlH3ei62wTfYfehBp7dVQhNGu+jQM0Ebq9afhY8/aXZ2S7aCK3Q56EXRgMfrOVrVG4zC18hWirsxzA1Q2U8KxOwdvcBvx+HRpJWYEhardvh2C9n0BXoozmHcJQRSmNJgrxH+XFMgW5XZMgdNOxGVKHReklapqwDVjRwOAbXq9PXKkU1Y3z2YJkRcX6xLqd41CMRkb2XeQEq24BWKxYb3sgI3mcJr9aXKnmGkpShV9adQbqYjf1RGjgISEJwImh6/jlWwJuJQqj09P58pQV+XYD+zdp+BJbmYHzQdlmMGZw9rj4CHMeYXVbsyUKtoGH6AzR3xUrr6tinFtCXqqtlOPfmRq4uGV9jCAIfii8PF/DibmOAv2Eh4DA623ZHb9IpJ4s1LyJFqfLN46lyvjWL5AOTd7Q2367DmPu+Jn90bA8DF6BJA3Opwe5LgxaoMyqLj9UXmbixUTnesnoeGWkUWIJDEMZiTMARbwbmdRLe1hN9T94oF2S7VThQ4i/WJsi1HWww4fnODG5xwvaBbzs1Nf44WbASJvzX6CjpymfrCwNSEA+Fkj8XANcU/8Pn/BJduOnFEuAPH0PFS/vglOjQ6i6hYKEzajuqwmB0EW6MzaGUaEy0LysXUA== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(346002)(366004)(376002)(136003)(396003)(451199021)(2906002)(6512007)(6486002)(2616005)(6666004)(478600001)(54906003)(83380400001)(53546011)(6506007)(186003)(26005)(5660300002)(36756003)(66476007)(38100700002)(31696002)(4326008)(316002)(66946007)(82960400001)(8676002)(86362001)(8936002)(6916009)(41300700001)(66556008)(31686004)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?RjlNbWF0aXBsWkVRSXg3V0tpb1hueU1JMnhFaTliUE5yZjdhSWRYay9RVnM5?= =?utf-8?B?aEc4RVVuMkhZbWV5NTU3SlhkSE05VnBHVnFhVVNjTXlsb0JoMG8xckt0QU9k?= =?utf-8?B?Z1Z3M2poNVR0WXdrSHRDckJaQmhJMXM0azJrd0F1b3B6WEE4UWdPZDV3SzBU?= =?utf-8?B?TnhyQWtRTnNlZVpQa0dqRy9nTTRPZ1c4MS82VDNGVXFkSjFqY3VHTG9GRVli?= =?utf-8?B?dGNUWkhJQlFLdGVHVWh4TXJoQkNqMmZqajhQcW9xNUlkWTJFQXhMN05mMUx1?= =?utf-8?B?RDBrbmw5U29DZjBMZUxDdjlOU1NxbUlab080WGdMc0dtYTRDQ2NZQTNHcjk2?= =?utf-8?B?V3RJeWtLZkNpdE5qL2MwVzNENmJ1ZkljNWJHakJqblEzemExRmNjV0ErOG40?= =?utf-8?B?RHZpZDNaWUdqczhoMlBxZVVFa2N0dDNqd1hOUTl2R3dCa1IvUjVuM1VBMHR0?= =?utf-8?B?dXV0NjNaekZlbEpFSUw3RngwVHZCaHdqVE9GdXhlVjNpZngxcHYxVmYwdjBX?= =?utf-8?B?Rk5ZczZoK3NPaStnMVd0aDNkamMvbU1Wc2Nwek9jUzlkaE5kNG5QNDlMVW9P?= =?utf-8?B?VUFlTHlIM3RNVnNGVnp4ZVUxMFhGRk9zeERRZXNoam9aMk1tNVFPWDlqbktG?= =?utf-8?B?NmltcGdjdTV0aXdQbG5pRVVLM1lZalFDZytZb3h6YlJSVnVvQXRUMVB1MTcz?= =?utf-8?B?VGRuTDVMYzZpdVh3UTM4V1B1WE1lSlIwb2dVcVY3ME50UW1USE0vdEtjajFN?= =?utf-8?B?WHZXeFJ0TnFrcnQ3RGpBQXRoSGVSM25MNWFKVk5NZlc2dTRVclh0djFYZXFH?= =?utf-8?B?VUZMaUljWnNkUTJTSFFEckkxbVQ5T0pjd0hvcFJRajlJdlJWejBpVTIwR1pz?= =?utf-8?B?RHlORkMvZnpYZXhlQy9yNVM1NmxiU1ZWRVRvTWRucDJUMDZxOG1iaWJkM0p3?= =?utf-8?B?cUU2Z1NmOCs1dklSRTJraGxMMlRxblowbHZLOTQ3RGxEdW5jcitIczF5NlJC?= =?utf-8?B?cDNLTkQ4OHV4Q2Z2YTNUNXo3Uk9jdk11TWlwT2J5V253V2JzbmNkeDZucHp5?= =?utf-8?B?SUduZGlFcFUzdTNlUVB5WEN5WTZQdDR4b0k5R0dvRm5hNmh0dDJMS0dBQnpI?= =?utf-8?B?S0FRMVRnbEFPM20vLzhDUWdna1IyNUlHWk1YRVhLMEoxL1RLMXRCbWdUdGFG?= =?utf-8?B?MTRQR3owdmdwNGQrUTFnQ1U1SFZ1VlpzZGdUM0MrTnZSOW94bkVpNCt3c2Jh?= =?utf-8?B?bVVodmMrS3I1MVZnWGtORkp3NS9heERCNlpqb0ttU2taRnZPbWt6NVdUa1Zn?= =?utf-8?B?T0p0VzNzUFRLRldLNitLd1VBd3crbytncWNtZURzU2J4MWp3ellLS1Nwa3Vv?= =?utf-8?B?eUJRODlnV2NsTnB4d2dPVTlHd3JLSkY4VEY0b3VsZ0pySUFuMkMvOWU3dk9l?= =?utf-8?B?Q0RrbGFaQWc0eG1pLysrK1ByWE1HZGtuM1B1OGQ0aGFLWUhDOHV1ak94YmVC?= =?utf-8?B?NTBsUmp4YVIvclJPVVdQQmF2Y21TaURqQkU0WDY5SndNM3JDNWxWRVVkaFlD?= =?utf-8?B?RlhhTUloU01pUjVwOUJiVlEzbmZySzI2eXZIYnprWW5ReEZPbUV2Qjg5Tmdj?= =?utf-8?B?K3gzRmc0ZEdDMXdZaHFRNFZ1aHZGQWxtVHBBZTI3TTlMUFhGUE1kSjZ6UWIx?= =?utf-8?B?WlUydjF6ZVBIWVl0ZzBHOXNXS3NCYnBKQWVJcExVRTJDeEUzWkhNMzl5aUVB?= =?utf-8?B?d0R4TzZNcHI3aEVzY2FlQTBMV3hBQUNxZnZiMm9MaDlDQUFZT3ZFR1dtMmJq?= =?utf-8?B?QklManFjWDZrR1IzWU5qWnlld3pFRVhqeUNrYkJwY0ErNEdxMzNmMkxJejl2?= =?utf-8?B?VzRiQnBZRk5NZzdBcXZKdXRtTlhlSWR2ZjRmbXZWZHJsWXNlcEdhK21WaHpW?= =?utf-8?B?NnpYYWlvZGlUMnBKSG9JV1VRZ213dm83dmVJNHh6TGx2eUdhQi93NHo4NERO?= =?utf-8?B?SVEwTjdLaDJvRTh4NDM5RU5WdFpkVW5rdHI0bDBMczc3Y2JJcXNsRURyZXNt?= =?utf-8?B?ZFY1aHZkZTdJNXpLdmZSMDBDZkZtNFdRcml5aTlDRzU2VERUUVZFSUw0cUtX?= =?utf-8?B?Vi9tMEo5bFlTaEg2Vm0vYm1zNEFzbk5hZFpxbUczQkVIRTAvZ0RNSk8xa0Iw?= =?utf-8?B?Rmc9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: 3TbqvFWXUlttWlNXZE4k1DTaPbeOHa4eQdjORm5TrySWVRZ+/ZQrki7KEQ11yoXrzuSid9cqZ5s0P1SGNw9/5LyiYDdP7V6RBnk0xnHezdTAHwp3q4D4rgdtFmO7qgk10Orb/JyE0giITqRk9BSUy6eq3Jops3u0UoeI+zEt9XEiubgPigpwEjKW6/TWys9FPuiLwYzVLAtMnsVz6XPTx8nm2qeNyIenW/P7QSYWOsXLZTh+1cF1Jg1OVjCy7g+6ITVixjUJSlvG8a71toqbzr7+giaHxJ9oD5faRZPlyUrks9l5CW+jxKYx5WE30MbuMQIT6P4AChwqTC7vkhyQMNbMS/YooAaSDHPDYNqZ0v27PkmKVU2Ecsz1n/0/3qFGAAtxxGbYXgH9EntNQL2VmqqnRvrDb2O8qMrGZcoQUL/jxuP4kd9bh4mb9eHGAo9srEVTgjUHI/ku1yZMjvGh6qjVQCI9mtUPFCflw4EhtgA7eW4TLApW7U7P+GQdOwlhDRnl4aeQi8cYE8G30OJDH6HfYAv/tCQcdnblusOrtkiSdvHYDErg10kNB4Bqa1ljKYhRp+x9XlCdvKNCoNRCoQDjyy8XdQJCMhjRmUBKMFutSclnK/vFx6LhK3mLy93LmJveQttbolEzDHf/zKntLseVPS3weFJGAT0zopvEZKrty6nfkV9C9X8T7j0hWuNLFJfYD/GK2Yn/j+tMiF6TpUq6sEs+mzrPz8UUPW+z9IyYtyRDNTk0fO0dSrAPRtAgpu21AZ7qXzTOFf/JuzVMaNvs1kRY3UbJr1tx3AG2vQBl1BXYewxQRfVqQ4OSa5nL X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: e499d838-0282-49d7-a787-08db723a3683 X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Jun 2023 09:30:55.4662 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: DN5JiLsHidCgfHZtkz+K4CTIu7ycQHlqvIB1D45rGzecZR3KmeQCy0hNK0Y8mXbxZZNX8R1G5ErL0w2UJyoKUrnf2CnZ2JGyG3ddDQXpg+k= X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY1PR03MB7309 On 21/06/2023 9:16 am, Jan Beulich wrote: > On 20.06.2023 19:45, Andrew Cooper wrote: >> This should be static, and there's no need for a separate (non-init, even) >> function to perform a simple equality test. Drop the is_ prefix which is >> gramatically questionable, and make it __ro_after_init. >> >> Leave a TODO, because the behaviour is definitely wrong to be applied to ~all >> modern Intel CPUs, and has been raised on xen-devel previously without >> conclusion. >> >> No functional change. >> >> Signed-off-by: Andrew Cooper > Reviewed-by: Jan Beulich Thanks. > with one request: > >> @@ -967,7 +960,8 @@ const struct arch_vpmu_ops *__init core2_vpmu_init(void) >> sizeof(uint64_t) * fixed_pmc_cnt + >> sizeof(struct xen_pmu_cntr_pair) * arch_pmc_cnt; >> >> - check_pmc_quirk(); >> + /* TODO: This is surely wrong. */ >> + pmc_quirk = current_cpu_data.x86 == 6; > In the description you say "~all modern Intel CPUs", which suggests it might > be correct for old enough ones. Would you mind weakening the comment to > "This surely isn't universally correct" or some such? I'm happy to tweak the wording as appropriate, but Kyle (who is a regular contributor to perf in Linux) questioned that there was an issue. There's insufficient information to figure out why it was introduced in the first place, and IIRC he wasn't aware of any errata that manifested in this way. It's possible it's entirely bogus, or it may be a misunderstood errata.  It needs looking into by someone with some copious free time. ~Andrew From xen-devel-bounces@lists.xenproject.org Wed Jun 21 09:33:59 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 09:33:59 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552594.862747 (Exim 4.92) (envelope-from ) id 1qBuDm-00038M-6q; Wed, 21 Jun 2023 09:33:50 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552594.862747; Wed, 21 Jun 2023 09:33:50 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBuDm-00038F-3N; Wed, 21 Jun 2023 09:33:50 +0000 Received: by outflank-mailman (input) for mailman id 552594; Wed, 21 Jun 2023 09:33:48 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBuDk-00037j-4S for xen-devel@lists.xenproject.org; Wed, 21 Jun 2023 09:33:48 +0000 Received: from NAM11-BN8-obe.outbound.protection.outlook.com (mail-bn8nam11on20600.outbound.protection.outlook.com [2a01:111:f400:7eae::600]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id b7025c26-1016-11ee-8611-37d641c3527e; Wed, 21 Jun 2023 11:33:45 +0200 (CEST) Received: from CYXPR02CA0075.namprd02.prod.outlook.com (2603:10b6:930:ce::28) by PH8PR12MB7205.namprd12.prod.outlook.com (2603:10b6:510:227::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.21; Wed, 21 Jun 2023 09:33:41 +0000 Received: from CY4PEPF0000EE36.namprd05.prod.outlook.com (2603:10b6:930:ce:cafe::b0) by CYXPR02CA0075.outlook.office365.com (2603:10b6:930:ce::28) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.23 via Frontend Transport; Wed, 21 Jun 2023 09:33:41 +0000 Received: from SATLEXMB03.amd.com (165.204.84.17) by CY4PEPF0000EE36.mail.protection.outlook.com (10.167.242.42) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6521.17 via Frontend Transport; Wed, 21 Jun 2023 09:33:40 +0000 Received: from SATLEXMB07.amd.com (10.181.41.45) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Wed, 21 Jun 2023 04:33:40 -0500 Received: from SATLEXMB04.amd.com (10.181.40.145) by SATLEXMB07.amd.com (10.181.41.45) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.6; Wed, 21 Jun 2023 02:33:39 -0700 Received: from [10.71.193.39] (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server id 15.1.2507.23 via Frontend Transport; Wed, 21 Jun 2023 04:33:38 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: b7025c26-1016-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=kSLfdA8YYREg4AnChIYJrYXhk2Dc6dfbO+8rb5rBzBSUd+qucA3/uJRwT8TXO9BTzYb9IxPgu2iLM/FwbOGH4xG/r/wBQrigP4UuVwf/S/eBoaX+LKeYEEoopnZf1d8rrQi7nraIaKMef4lM+rJMyHIfA+CrshLULDhF33Vf873anvS4KTEfCQj4jeKHl+w95eF3cdDWYcQkSDtykhXSe6CEtjQKlxf4/csUsS1Kcpi7ZeCEjFTPxNB8tlFMw2Ypo7NTIPTgcCnbgWxeltxPrOwgF11gFvZQ5kSXSadyT2xLJNT+SvfwLOxm/gh5zSlkO3fC1WBJ9KgGMTr458gv7Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=56I0PA7VI7FRacKs1yQchkEW05z+Fh8rfKJevwzbOs8=; b=SO1gyIgA9WITTx2pIceOmEAqvPn60pp4L2LzpoDWPO2NrFOp4vwD2DP22ncX4XLj87eeq3IzcdP1EG+r6xmBlvnrn9K1DrlqjkGmspe+oM72Dl7vRqR311QJ2V3VPUxiUhesgXzANuvGX2rIO+ai+3qdL+qrxZOda09+Wfkfj+ep2j4Vz9A1xNfzevGMOSOurcq4UmfAEV0CPsY5UaIVuKbTQKAmn77C2sauWg+9xoihBwnY9XPIiQFDPMB05XlZPqpdfzzbjICqtJiG/HSSsmsnB0tbN3424VvnaGKdjrk3Bbn/Uq+SA9fayflGKzaV2Uvn7BTBySluOXCduIQ8JA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=xen.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=56I0PA7VI7FRacKs1yQchkEW05z+Fh8rfKJevwzbOs8=; b=MKt8KJLyRK/qjRssOx/dQQ02iK9BTFCMsGHjpFmovimZNROjWNAfQu3DyrzwTajtjuQ3givsYIIiXYZan8vhV0GdBqXL8FFxgqI5UCRC1WKuUod4V+LKGHKbFOaDTnTw/AqNcRR/HvqkKSKEk03Yp5RiDstwVNhwGhRlEDsiexM= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C Message-ID: Date: Wed, 21 Jun 2023 11:33:32 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH 3/7] xen/arm64: head: Add missing isb in setup_fixmap() Content-Language: en-US To: Julien Grall , CC: , , Julien Grall , Stefano Stabellini , "Bertrand Marquis" , Volodymyr Babchuk References: <20230619170115.81398-1-julien@xen.org> <20230619170115.81398-4-julien@xen.org> From: Michal Orzel In-Reply-To: <20230619170115.81398-4-julien@xen.org> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CY4PEPF0000EE36:EE_|PH8PR12MB7205:EE_ X-MS-Office365-Filtering-Correlation-Id: 62c3eb65-5b08-403d-9598-08db723a9949 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: LbW9VxKHhz64xgSngpr+nFbOdZsOPcbDuVjT0vTMQfXM5jSelPjKsxVhUfwh8oRTpbPjSQTr51drhZ/SqDW1QtpNFbxzjUYPkqnUCT2EccdquQDHhMx240WuMQtp4tuCzPzXFSmiJf3MvCB03ubVAdJ1fuUGDeTTU+RXfZi8dHbRC3bTMbJC0lGFhHB2rKtcfsRnjD0r9NZ0ok6RZeDTxXZooV1fkphF0Wh++rt3Mg5wuiVVz2gwudK0Mich0ox9IIz/6Xlgu1irm4wnB/I8UdmkVXZHEl6m56EwAI83OuKyGPa+GKTkry3nYbX5Hff+UaJYQqPhALaApFvL7Fv5KDeiCcuxWrtGwxfKbTK6o6E6uFZGgSwLSgMS+dYqKrSztSCA8n/Y79OtkVvWpNSETSdQYKYObuRq4vGgxHNxwrgb3mOxLO6XlGMCkaGSmJoDXhJA0BHbBdDR0dYYa2ZrFbRc/HZNryB57KRBKFrbq1D7POrAnar9W1dJNJsriB8J/kRyNY2xDXP2/eW1NOyGz68nPMMbS8lRUPN5hpK2Hqll0a0TYs27Mnq2opSSRHpB0ghIAi5E9uRVQSkUdyaYUV3zJzUn5LU8ixkvc2EDqwao3JFyS0KpZ++NNMkyuQBSkHk9P+Qth2+TdKdh+w81junetHOuVMY1mlVk6V7B1ecFjjo7b3KrpWlYtS54OpOjdXyoj0C/lTWk4zvAWIOPxM9XIEIi+aMRlRdttRJQCNlpGZuH0e6qx1CdS8jC+HQDFUPTkHCAisTuY099w29QWtgIu+uYvKdOtnZtLkSS1F5pWZ7w0Ii9XbhaSrfrQEdu X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(396003)(136003)(346002)(39860400002)(376002)(451199021)(36840700001)(46966006)(40470700004)(82310400005)(336012)(426003)(83380400001)(41300700001)(8936002)(8676002)(4326008)(5660300002)(316002)(70206006)(70586007)(2616005)(31696002)(40460700003)(36756003)(86362001)(26005)(53546011)(186003)(31686004)(82740400003)(47076005)(36860700001)(478600001)(6666004)(2906002)(44832011)(81166007)(40480700001)(16576012)(110136005)(54906003)(356005)(43740500002)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Jun 2023 09:33:40.7369 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 62c3eb65-5b08-403d-9598-08db723a9949 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com] X-MS-Exchange-CrossTenant-AuthSource: CY4PEPF0000EE36.namprd05.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH8PR12MB7205 On 19/06/2023 19:01, Julien Grall wrote: > > > From: Julien Grall > > On older version of the Arm Arm (ARM DDI 0487E.a, B2-125) there were > the following paragraph: > > "DMB and DSB instructions affect reads and writes to the memory system > generated by Load/Store instructions and data or unified cache > maintenance instructions being executed by the PE. Instruction fetches > or accesses caused by a hardware translation table access are not > explicit accesses." > > Newer revision (e.g. ARM DDI 0487J.a) doesn't have the second sentence > (it might be somewhere else in the Arm Arm). But the interpretation is > not much different. > > In setup_fixmap(), we write the fixmap area and may be used soon after, > for instance, to write to the UART. IOW, there could be hardware > translation table access. So we need to ensure the 'dsb' has completed > before continuing. Therefore add an 'isb'. > > Fixes: 2b11c3646105 ("xen/arm64: head: Remove 1:1 mapping as soon as it is not used") > Signed-off-by: Julien Grall Reviewed-by: Michal Orzel I'm happy with the whole series but I do not see a point in flooding each patch with my tag since you already got two (from Henry and Luca). When it comes to essential isb() after dsb() in arm64 head.S, I can see that we are missing one in enable_mmu() after TLB invalidation. On HW without FEAT_ETS the TLB is "guaranteed to be complete after the execution of DSB by that PE, followed by a Context synchronization event", so I view isb as necessary there. We could also introduce (just like for arm32) flush_xen_tlb_local macro and use it there + remove opencoding it. ~Michal From xen-devel-bounces@lists.xenproject.org Wed Jun 21 09:39:18 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 09:39:18 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552599.862756 (Exim 4.92) (envelope-from ) id 1qBuIu-0003kX-PG; Wed, 21 Jun 2023 09:39:08 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552599.862756; Wed, 21 Jun 2023 09:39:08 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBuIu-0003kQ-MX; Wed, 21 Jun 2023 09:39:08 +0000 Received: by outflank-mailman (input) for mailman id 552599; Wed, 21 Jun 2023 09:39:06 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBuIs-0003kJ-Qr for xen-devel@lists.xenproject.org; Wed, 21 Jun 2023 09:39:06 +0000 Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 75fc8578-1017-11ee-8611-37d641c3527e; Wed, 21 Jun 2023 11:39:04 +0200 (CEST) Received: from mail-vs1-f41.google.com (mail-vs1-f41.google.com [209.85.217.41]) by support.bugseng.com (Postfix) with ESMTPSA id 70AD94EE0741 for ; Wed, 21 Jun 2023 11:39:04 +0200 (CEST) Received: by mail-vs1-f41.google.com with SMTP id ada2fe7eead31-440b66adc81so1145316137.1 for ; Wed, 21 Jun 2023 02:39:04 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 75fc8578-1017-11ee-8611-37d641c3527e X-Gm-Message-State: AC+VfDzhdV9Qqc1xe2Sbv8PmBYSGEqpFDxTNkNLbPcLpfIlHwVWHm8xc 7p2Xzm8yKdnyUh3gZk4+6mIqYOWPLi7LmvrNQFY= X-Google-Smtp-Source: ACHHUZ4EkVFWHwnmtDb7TW4ddyoFGnD6ANjrKueQLXuKBHRaT9zxkiB3fkpwv8GoB4ez0x52SNWa5eA6cX7segIs9zA= X-Received: by 2002:a67:fc08:0:b0:440:af3c:4c18 with SMTP id o8-20020a67fc08000000b00440af3c4c18mr4661036vsq.5.1687340343292; Wed, 21 Jun 2023 02:39:03 -0700 (PDT) MIME-Version: 1.0 References: <21337a20c5c8d66dff552c2f09054ea82b253dd6.1687250177.git.gianluca.luparini@bugseng.com> <7cdd53c7-4d57-39f2-10fa-2fa2ddc98389@suse.com> <37C5BC47-E735-4731-A6C6-F30189FA6B9D@arm.com> In-Reply-To: From: Simone Ballarin Date: Wed, 21 Jun 2023 11:38:51 +0200 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: [XEN PATCH 02/13] AMD/IOMMU: fixed violations of MISRA C:2012 Rule 7.2 To: Stefano Stabellini Cc: Luca Fancellu , Jan Beulich , Andrew Cooper , George Dunlap , Julien Grall , Wei Liu , "consulting@bugseng.com" , Gianluca Luparini , Michal Orzel , Xenia Ragiadakou , Ayan Kumar , "xen-devel@lists.xenproject.org" Content-Type: multipart/alternative; boundary="000000000000c7004205fea089fd" --000000000000c7004205fea089fd Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Il giorno mar 20 giu 2023 alle ore 22:41 Stefano Stabellini < sstabellini@kernel.org> ha scritto: > On Tue, 20 Jun 2023, Luca Fancellu wrote: > > > On 20 Jun 2023, at 13:39, Jan Beulich wrote: > > > > > > On 20.06.2023 12:34, Simone Ballarin wrote: > > >> --- a/xen/drivers/passthrough/amd/iommu-defs.h > > >> +++ b/xen/drivers/passthrough/amd/iommu-defs.h > > >> @@ -38,49 +38,49 @@ > > >> ((uint64_t)(offset) << (12 + (PTE_PER_TABLE_SHIFT * ((level) > - 1)))) > > >> > > >> /* IOMMU Capability */ > > >> -#define PCI_CAP_ID_MASK 0x000000FF > > >> +#define PCI_CAP_ID_MASK 0x000000FFU > > > > > > Seeing this and similar uses further down, I think there's a purely > > > stylistic question to be resolved first (and hence I'm widening the T= o: > > > list here): Do we want to allow either case of U to be used > > > interchangeably, leaving the choice up to the patch author? > > > > Because you ask to the list, my personal opinion is that we might want = to > > have only capital U, so that it=E2=80=99s consistent across the codebas= e and we > don=E2=80=99t > > need to create too many rules for the developer, it stands out anyway a= s > it can=E2=80=99t > > be an hex digit > > I agree with Luca I also agree with Luca. --=20 Simone Ballarin, M.Sc. Field Application Engineer, BUGSENG (https://bugseng.com ) --000000000000c7004205fea089fd Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable


=
Il giorno mar 20 giu 2023 alle ore 22= :41 Stefano Stabellini <sstabe= llini@kernel.org> ha scritto:
On Tue, 20 Jun 2023, Luca Fancellu wrote:
> > On 20 Jun 2023, at 13:39, Jan Beulich <jbeulich@suse.com> wrote:
> >
> > On 20.06.2023 12:34, Simone Ballarin wrote:
> >> --- a/xen/drivers/passthrough/amd/iommu-defs.h
> >> +++ b/xen/drivers/passthrough/amd/iommu-defs.h
> >> @@ -38,49 +38,49 @@
> >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0((uint64_t)(offset) <<= (12 + (PTE_PER_TABLE_SHIFT * ((level) - 1))))
> >>
> >> /* IOMMU Capability */
> >> -#define PCI_CAP_ID_MASK 0x000000FF
> >> +#define PCI_CAP_ID_MASK 0x000000FFU
> >
> > Seeing this and similar uses further down, I think there's a = purely
> > stylistic question to be resolved first (and hence I'm wideni= ng the To:
> > list here): Do we want to allow either case of U to be used
> > interchangeably, leaving the choice up to the patch author?
>
> Because you ask to the list, my personal opinion is that we might want= to
> have only capital U, so that it=E2=80=99s consistent across the codeba= se and we don=E2=80=99t
> need to create too many rules for the developer, it stands out anyway = as it can=E2=80=99t
> be an hex digit

I agree with Luca

I also agree with L= uca.
--
Simone Ballarin, M.Sc.
<= br>
Field Application Engineer, BUGSENG (https://bugseng.com)
--000000000000c7004205fea089fd-- From xen-devel-bounces@lists.xenproject.org Wed Jun 21 09:56:27 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 09:56:27 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552608.862767 (Exim 4.92) (envelope-from ) id 1qBuZO-0006BI-7R; Wed, 21 Jun 2023 09:56:10 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552608.862767; Wed, 21 Jun 2023 09:56:10 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBuZO-0006BB-3a; Wed, 21 Jun 2023 09:56:10 +0000 Received: by outflank-mailman (input) for mailman id 552608; Wed, 21 Jun 2023 09:56:08 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBuZM-0006B5-UU for xen-devel@lists.xenproject.org; Wed, 21 Jun 2023 09:56:08 +0000 Received: from mail-lj1-f182.google.com (mail-lj1-f182.google.com [209.85.208.182]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id d7cef4a4-1019-11ee-b236-6b7b168915f2; Wed, 21 Jun 2023 11:56:07 +0200 (CEST) Received: by mail-lj1-f182.google.com with SMTP id 38308e7fff4ca-2b477e9d396so47609621fa.3 for ; Wed, 21 Jun 2023 02:56:07 -0700 (PDT) Received: from ?IPV6:2a0b:e7c0:0:107::aaaa:59? ([2a0b:e7c0:0:107::aaaa:59]) by smtp.gmail.com with ESMTPSA id m20-20020a7bca54000000b003f80e81705asm4477120wml.45.2023.06.21.02.56.03 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Wed, 21 Jun 2023 02:56:06 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: d7cef4a4-1019-11ee-b236-6b7b168915f2 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687341367; x=1689933367; h=content-transfer-encoding:in-reply-to:from:content-language :references:cc:to:subject:user-agent:mime-version:date:message-id :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=7QfqFAs+LUbqWKQg3CDgDFj/Ai/EFvoPAUEVH6zEuh0=; b=CkBK4s6qchP1vTzHLkwJZkjL9onKR+YN5Ltz0qUVfYPVJO4/ufe5hNOOq4KZmEAx0h eGjNliaNqsfbJ35IvVdqUEkIogOgx8RX3FX7BKjJYDIrqSRlfPumyVIpdMWnFC6HTuFf EWXLdISD8IAVUvmEBcBtPdw7wRWdO0p9Z7U6s1VuZowANemnPnGRpUtcYjbxJjpliimu AXUx1TzcORLSM/2+GcuZgHQ7LiSM4VKUDTrV6AREI8JMjDHCSyFQyO5SqRREFmV8dRaB VKyKZr/eKxyOuo9Nv0ssE7aCoMSG6319X0BdPThk6kRY1PS8e2seet/Gx0MxFswZt31k IjCw== X-Gm-Message-State: AC+VfDw/olTHy/JOKATu5xEVYGACse5GhLVwciACxzOOgWfh1cKw09sR +Rk/+zffvJeC4XjDDtCxy0c= X-Google-Smtp-Source: ACHHUZ4GQBsPStePkHDKNlzEaMWr+Bp+ebV1Ur4N9HjkC8j8Qd1kDy/CWY6Orh1D9sVCHniBDQ4DcQ== X-Received: by 2002:a2e:9846:0:b0:2b4:737c:e316 with SMTP id e6-20020a2e9846000000b002b4737ce316mr7027828ljj.14.1687341366842; Wed, 21 Jun 2023 02:56:06 -0700 (PDT) Message-ID: <36fae2b0-4cd2-58b5-cc12-9abdd5ce235b@kernel.org> Date: Wed, 21 Jun 2023 11:56:03 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH 08/11] sysctl: Add size to register_sysctl_init To: Joel Granados , mcgrof@kernel.org, Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , x86@kernel.org, Theodore Ts'o , "Jason A. Donenfeld" , Greg Kroah-Hartman , Juergen Gross , Stefano Stabellini , Benjamin LaHaise , Alexander Viro , Christian Brauner , Jeff Layton , Chuck Lever , Jan Kara , Kees Cook , Iurii Zaikin , Alexei Starovoitov , Daniel Borkmann , Andrii Nakryiko , Balbir Singh , Eric Biederman , "Naveen N. Rao" , Anil S Keshavamurthy , "David S. Miller" , Masami Hiramatsu , Peter Zijlstra , Will Deacon , Petr Mladek , Sergey Senozhatsky , Juri Lelli , Vincent Guittot , Steven Rostedt , Andrew Morton , Mike Kravetz , Muchun Song , Naoya Horiguchi , "Matthew Wilcox (Oracle)" , David Howells , Jarkko Sakkinen , Paul Moore , James Morris , "Serge E. Hallyn" Cc: "H. Peter Anvin" , Oleksandr Tyshchenko , Amir Goldstein , John Fastabend , Martin KaFai Lau , Song Liu , Yonghong Song , KP Singh , Stanislav Fomichev , Hao Luo , Jiri Olsa , Waiman Long , Boqun Feng , John Ogness , Dietmar Eggemann , Ben Segall , Mel Gorman , Daniel Bristot de Oliveira , Valentin Schneider , Andy Lutomirski , Will Drewry , Mark Rutland , Miaohe Lin , linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org, linux-aio@kvack.org, linux-fsdevel@vger.kernel.org, linux-mm@kvack.org, bpf@vger.kernel.org, kexec@lists.infradead.org, linux-trace-kernel@vger.kernel.org, keyrings@vger.kernel.org, linux-security-module@vger.kernel.org References: <20230621091000.424843-1-j.granados@samsung.com> <20230621091000.424843-9-j.granados@samsung.com> Content-Language: en-US From: Jiri Slaby In-Reply-To: <20230621091000.424843-9-j.granados@samsung.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit On 21. 06. 23, 11:09, Joel Granados wrote: > In order to remove the end element from the ctl_table struct arrays, we > explicitly define the size when registering the targes. We add a size > argument to the register_sysctl_init call and pass an ARRAY_SIZE for all > the callers. Hi, I am missing here (or in 00/00) _why_ you are doing that. Is it by a chance those saved 9k? I hope not. thanks, -- js suse labs From xen-devel-bounces@lists.xenproject.org Wed Jun 21 10:02:44 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 10:02:44 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552614.862777 (Exim 4.92) (envelope-from ) id 1qBufe-0007hN-TB; Wed, 21 Jun 2023 10:02:38 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552614.862777; Wed, 21 Jun 2023 10:02:38 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBufe-0007hG-QP; Wed, 21 Jun 2023 10:02:38 +0000 Received: by outflank-mailman (input) for mailman id 552614; Wed, 21 Jun 2023 10:02:37 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBufd-0007hA-RD for xen-devel@lists.xenproject.org; Wed, 21 Jun 2023 10:02:37 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBufd-0003M7-8n; Wed, 21 Jun 2023 10:02:37 +0000 Received: from [15.248.2.250] (helo=[10.24.67.30]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qBufd-00019m-2E; Wed, 21 Jun 2023 10:02:37 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=rJ0mO+FQmGM10bI1qPA1TOLb8nnu2lW6SYc+eNn/dV0=; b=nR8FabBEosx7EjT6xJ26vOpZ8q CdQ2xTJ5Bjb2Ik1fH755Y1GULocqm1Fbxsj4GYiCgo20dmo9mRuFQim9qZm51nVq6qwvNmIt4bgEE x7fyw1nmxLr38QYLlmLkUfX/7KGNzEQ1G43538KFTSUi8qo9ebbVybKuMCmu0KrrUSHE=; Message-ID: <3fa4faa1-f8be-5b8a-f8ba-3c7cc7c80968@xen.org> Date: Wed, 21 Jun 2023 11:02:34 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH 3/7] xen/arm64: head: Add missing isb in setup_fixmap() Content-Language: en-US To: Michal Orzel , xen-devel@lists.xenproject.org Cc: Luca.Fancellu@arm.com, Henry.Wang@arm.com, Julien Grall , Stefano Stabellini , Bertrand Marquis , Volodymyr Babchuk References: <20230619170115.81398-1-julien@xen.org> <20230619170115.81398-4-julien@xen.org> From: Julien Grall In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi, On 21/06/2023 10:33, Michal Orzel wrote: > > > On 19/06/2023 19:01, Julien Grall wrote: >> >> >> From: Julien Grall >> >> On older version of the Arm Arm (ARM DDI 0487E.a, B2-125) there were >> the following paragraph: >> >> "DMB and DSB instructions affect reads and writes to the memory system >> generated by Load/Store instructions and data or unified cache >> maintenance instructions being executed by the PE. Instruction fetches >> or accesses caused by a hardware translation table access are not >> explicit accesses." >> >> Newer revision (e.g. ARM DDI 0487J.a) doesn't have the second sentence >> (it might be somewhere else in the Arm Arm). But the interpretation is >> not much different. >> >> In setup_fixmap(), we write the fixmap area and may be used soon after, >> for instance, to write to the UART. IOW, there could be hardware >> translation table access. So we need to ensure the 'dsb' has completed >> before continuing. Therefore add an 'isb'. >> >> Fixes: 2b11c3646105 ("xen/arm64: head: Remove 1:1 mapping as soon as it is not used") >> Signed-off-by: Julien Grall > Reviewed-by: Michal Orzel > > I'm happy with the whole series but I do not see a point in flooding each patch with my tag > since you already got two (from Henry and Luca). Thanks. To clarify, shall I add it in each patch or only this one? > > When it comes to essential isb() after dsb() in arm64 head.S, I can see that we are missing one in enable_mmu() > after TLB invalidation. On HW without FEAT_ETS the TLB is "guaranteed to be complete after the execution of > DSB by that PE, followed by a Context synchronization event", so I view isb as necessary there. While there is no ISB directly after DSB NSH, there are one right after MSR. I don't think we need one before because nothing will use the TLBs between before the ISB. /* * The state of the TLBs is unknown before turning on the MMU. * Flush them to avoid stale one. */ tlbi alle2 /* Flush hypervisor TLBs */ dsb nsh /* Write Xen's PT's paddr into TTBR0_EL2 */ load_paddr x0, boot_pgtable msr TTBR0_EL2, x0 isb > We could also > introduce (just like for arm32) flush_xen_tlb_local macro and use it there + remove opencoding it. That would be good. But I don't think this is necessary here (see above). Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Wed Jun 21 10:07:29 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 10:07:29 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552619.862788 (Exim 4.92) (envelope-from ) id 1qBukI-0008J9-HB; Wed, 21 Jun 2023 10:07:26 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552619.862788; Wed, 21 Jun 2023 10:07:26 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBukI-0008J2-CV; Wed, 21 Jun 2023 10:07:26 +0000 Received: by outflank-mailman (input) for mailman id 552619; Wed, 21 Jun 2023 10:07:25 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBukH-0008Iv-30 for xen-devel@lists.xenproject.org; Wed, 21 Jun 2023 10:07:25 +0000 Received: from esa4.hc3370-68.iphmx.com (esa4.hc3370-68.iphmx.com [216.71.155.144]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 6994ab15-101b-11ee-b236-6b7b168915f2; Wed, 21 Jun 2023 12:07:23 +0200 (CEST) Received: from mail-mw2nam10lp2105.outbound.protection.outlook.com (HELO NAM10-MW2-obe.outbound.protection.outlook.com) ([104.47.55.105]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 21 Jun 2023 06:07:14 -0400 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) by SJ0PR03MB5662.namprd03.prod.outlook.com (2603:10b6:a03:285::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.23; Wed, 21 Jun 2023 10:07:13 +0000 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::1c83:1877:a68b:8902]) by SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::1c83:1877:a68b:8902%6]) with mapi id 15.20.6521.020; Wed, 21 Jun 2023 10:07:12 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 6994ab15-101b-11ee-b236-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1687342043; h=date:from:to:cc:subject:message-id:references: content-transfer-encoding:in-reply-to:mime-version; bh=EAc0q8FOvJgGqZN0p1c8AEES6bphAGij6ylWipMW9CU=; b=AEsBnSy54uMHcS91jzFs95CUswpv6iJPfWTXscWijbQr0+QO9M99I+F1 c8NKn3BKSLmVtrZM0TNf9kdHZWy8K2eSfoh/Ce/S/hO3o5r3+l8pBTXW4 arBpeFbR3VUAvL1ihWOp2v7eCE1iSNPzYT02z/IVwRgylnSKIB3MVtz4t M=; X-IronPort-RemoteIP: 104.47.55.105 X-IronPort-MID: 116155715 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:njymha5VbyXT3IgsTX8J2AxRtHrHchMFZxGqfqrLsTDasY5as4F+v mMdC2HVb/+MYGqkLopxaNizoUtUvMfVn9dhHQRo+SA8Hi5G8cbLO4+Ufxz6V8+wwm8vb2o8t plDNYOQRCwQZiWBzvt4GuG59RGQ7YnRGvynTraCYnsrLeNdYH9JoQp5nOIkiZJfj9G8Agec0 fv/uMSaM1K+s9JOGjt8B5mr9lU35JwehBtC5gZlPa4R5QeE/5UoJMl3yZ+ZfiOQrrZ8RoZWd 86bpJml82XQ+QsaC9/Nut4XpWVTH9Y+lSDX4pZnc/DKbipq/0Te4Y5iXBYoUm9Fii3hojxE4 I4lWapc6+seFvakdOw1C3G0GszlVEFM0OevzXOX6aR/w6BaGpdFLjoH4EweZOUlFuhL7W5mp eIicxtQZDq/t++15ZfgeslKl8cNFZy+VG8fkikIITDxK98DGMiGZpqQoNhS0XE3m9xEGuvYa 4wBcz1zYR/cYhpJfFAKFJY5m+TujX76G9FagAvN+exrvC6OkUooiOWF3Nn9I7RmQe1PmUmVv CTe9nnRCRAGLt2PjzGC9xpAg8eWxH2iBd9NTeDQGvhCq0HU/E88WSQqChinuaaczRS7XI9bN BlBksYphe1onKCxdfHxUhi5iH+CoB8HWtBUHvE66QeC0a7d6UCSAW1sZjdRYtsrnMw7Xzon0 hmFnLvBDDNsmKeYRXKU6vGfqjbaETMTLHMQaDUsTgYf5dTn5oYpgXrnQtMmHKOrg9ndAzz8w zmW6iM5gt07iMcR0qyh8FPvgjSyp4PIRAo4+gXWWG2+6gpzIoWiYuSA7Vnd8OYFJoKeRVqpo ncJgY6d4foIAJXLkzaCKM0JHbe097OGPSfajFpHAZYs7XKu9mSlcIQW5ytxTG95P8BBdTL3b Uv7vQJK+IQVLHasdbVwYY+6F4It16eIKDj+fvXdb94LZ4crcgaCpXlqfRTJhz2rl1Uwm6YiP 5vdadyrEXsRFaVgynyxWvsZ1rgogCs5wAs/WKzG8vhu6pLGDFb9dFvPGALmgjwRhE9cnDjoz g== IronPort-HdrOrdr: A9a23:RcWz/avXxl96dOci9RaCUapw7skDstV00zEX/kB9WHVpm6yj+v xG/c5rsCMc7Qx6ZJhOo7+90cW7L080lqQFg7X5X43DYOCOggLBQL2KhbGI/9SKIVycygcy78 Zdm6gVMqyLMbB55/yKnTVRxbwbsaW6GKPDv5ag8590JzsaD52Jd21Ce36m+ksdfnggObMJUK Cyy+BgvDSadXEefq2AdwI4t7iqnaysqHr+CyR2fiIa1A== X-Talos-CUID: 9a23:PayOz24xSRS5i5rzkNsspFAuQet4eFfh/HrTBmrjOUZPWb67cArF X-Talos-MUID: 9a23:c1HS8gRPFNuQepTwRXTHmHZYF+g52pjxS1wVzrBB4cyDaChvbmI= X-IronPort-AV: E=Sophos;i="6.00,260,1681185600"; d="scan'208";a="116155715" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=SM59qhdzng0cl4rm1c8o3VqPQrJnDRblnoQbo+Ahe1gwTXq+syP1nI97RqNSxAIuhn/qPkeARU46CYC8lj0MtHMcAkvj4Z0Xk2sZVI2sP7h5ZXk+mu/PdDV09J6e/wW6xcmRCupxdUo1q9dT+a1UAioXftYjOzzd9tNAejrVIiVxJhLpZXxlbfwKXU1wSz6J0ua3aH+UvmRwJgNgE1zKed5T7cnbo2MdszjTxw19gztlvgo80RMayg/1WwseDP7Gv9Zzb8oqtQuNhI1JW2nahXMkGznTQFFjOix3veBA1vOjuMY5ippAQ1vgvwsqmcJA856doeV8GPyFj3swYe01uw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=VgorcOhVAWPKSD25OVlXAg1i+IhLQ79OGbg8fRxYPLM=; b=O81kNAK9f1JgUur1IqZXZ83OGGd4lUILjcYYIygnLgi9WslCDxD/xdTkjGlH7DUAZMgshOqcPEW0aNOzLxrzLVmK0oKk13iDvXnN6HpXYadrzU4evkb1850x1KAI+295cJFioCPjUAc5X530PlgsUsU/jqbA8SpqTksF2zHGcjRIxqJZ0+VOZOBiFOgF4UcMaxsqWAMmCrkffyTTSec5vlhCuCMDuu8Z8c8wHCzINpQTIgnJhmxBhf+5GxIsgWHXnjanmb+mwhIj/aflROPsFItL71uK3/KrgE7UuM8AH/D+dp81CbzotNt+mFaF/T+l/n4kbiYYOGYzutBUP/XfJw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=VgorcOhVAWPKSD25OVlXAg1i+IhLQ79OGbg8fRxYPLM=; b=MyOsw+HYH2L9Tm0Wr/+8kvIt6dvBOJ4hXNi37LvqBGzXC3W1+CJnkzQgKvXu/ZRyw23wk/Ba8lhyUFLqEbqb9ibo7g/A8lP+HBcGYcuELntnuuTOUaZT50BU3Xmj1ytjZgdTSS2BgntPxdFhvdELhgRvneE8Mmmtb5br7sAa2GQ= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Date: Wed, 21 Jun 2023 12:07:05 +0200 From: Roger Pau =?utf-8?B?TW9ubsOp?= To: Demi Marie Obenour Cc: Jens Axboe , Alasdair Kergon , Mike Snitzer , dm-devel@redhat.com, Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= , linux-block@vger.kernel.org, linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org Subject: Re: [PATCH v2 13/16] xen-blkback: Implement diskseq checks Message-ID: References: Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: X-ClientProxiedBy: LO3P123CA0002.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:ba::7) To SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|SJ0PR03MB5662:EE_ X-MS-Office365-Filtering-Correlation-Id: 54ca49a4-bbcc-4bdf-9a93-08db723f484a X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: rQKkm+MI7DrL/X5YXJhCIKlPRS7ba+BirSnguTln6HEQjOhRIocqZqZ4n0rGFa6GXV6hQ16JGM4jE4S+5yEv7DjvYYid1QQhHmqmDGOkl82ld5hfe/9qWXlWkQMZ+BtP9u5ZPMEOmqT6qRqIXWSZh5v8B/1/EYvHgQxTFMdworPpipah23tNMNgSZGFndFyiKNkzR9IJVzikNYbqy73HgUMHO+20SKdSyrziZunbPV1C0gl8RPtcrzsH9Bt62eXYtqrpDf9lHMmub5015EzDaPsRO/4/CxoIw5b+jRjvmvMIODIKQ+FPQ6cUlB6YDJoFtDQKmP3x3o9I7zHfQxRSW4IL1e1TKLTAM4NXzmgGWz7/bX7QUwbo6Dukb+jnXSTSguXKxyz19dffHbTq5SLRcJTcS6rcSGYJpxAIP0Y4DEzNu1vg+TkYTVpj68R4vl6zvYj+PgqGgJOOZLJmhGCNn9f4sFJM/CzHLvpjVXCWyH6gjc/7wUiDzSIqWOt5MR6YQzTlPKgEDwOSf+8dWPlD1pZwBc4mI4+yBVmOiC5MqifamkzAQQubAUvUQg6yRQxh X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(346002)(39860400002)(376002)(396003)(136003)(366004)(451199021)(2906002)(8936002)(8676002)(86362001)(316002)(4326008)(6916009)(85182001)(66946007)(66556008)(66476007)(478600001)(82960400001)(41300700001)(54906003)(5660300002)(83380400001)(6666004)(38100700002)(6486002)(186003)(26005)(9686003)(6506007)(6512007);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?SnVRMmNET2lFQS9oN1B3L3J4TEgyWWtEOXFXUVQwLyt1YzdIcnF3YThjaDNy?= =?utf-8?B?NCtqTXhjQUZrVnp2RUxCRC9neHA2SG1yb3RUbzF1alplVFQwM2l5QTB5aExZ?= =?utf-8?B?Q1NNa3hxRlhHck5rdmRxL1J2RVlBUEh2T1l0QjN3Rmszd01uOXc2UHJiUzVQ?= =?utf-8?B?amhaUDBydnhZWlpPQUozYXBSVktYMDlHYm00YnZqNHM2OUVOTy9vZ2Z4dWZZ?= =?utf-8?B?b0FVRnNOMDNUdld3T2VUc0wyNlhhVGlBdit0cExFbndpTE1PMnc4TDExRU1x?= =?utf-8?B?NldlNkhiOGNCbHUza01DTXJiZkNsSkZEQlVhcGFXSlVob1EyNk1mRTYzeXBa?= =?utf-8?B?S1hJemIyV2Z0QjFvZzJpb0czTWREWGI2WjRENURySGs5Z2czYUVZQ1RPdHRI?= =?utf-8?B?YnZ3YnplS0RBYWw0ZTYwQlBFWW56YW9Uakg2Y2V6MGdvN1RlUW1UMFU3VXVw?= =?utf-8?B?VFZzakNJNlNRQ1cxNG9uQjFlNytJRUYrM3lvZkZoZFh0dHhQaUw1NzJoS1Y5?= =?utf-8?B?SHVJMFFjVXkzNEkyeWs2eTY3QXlTdU5nSXZjU1pDWnlhQXRzK3AxVzdiQldF?= =?utf-8?B?WEFOaE43V0R0WVg4YjZEK0JIbFlvOW1HaTdvUWN2WkZ4UFg0djdGUTVXaTIr?= =?utf-8?B?YklGL2NEcVB4a210QTFMdm5wNTFmblY1SkF4RElVVlh4SDJzTGNmbFBBYlVJ?= =?utf-8?B?R1J4Y3h1WDNVbEpZL1h6VDJsa1RJSm1XcVVYYURXTjJ3Ukh0T21abDNLQmJo?= =?utf-8?B?NGJ3N0lVa01XN0p5TmtzTkY0ZEUvK0tRVlh0Q3YwTmNyN1A5Yjd3ZjNxWWM4?= =?utf-8?B?OTZINXVxaU5INjk3QjhHa1JqRHd4a2ZtZkR5L1hhcUVNZTR3VWVmd25tZVpL?= =?utf-8?B?N0d0VE41VXFGcW1PMkE2K3VUdGpmWXppbWQzRVUvdmlFY0tZSWgvVmZhVngz?= =?utf-8?B?OHROeUUwdkwzWGlWSk41R2ZVVGY1QnlMTm5IMUYyaGppcUloOWxuazMwbVEy?= =?utf-8?B?K1AyS0k2MWtNUDV5OFk5STNCelIwamF4K2RQK0szRkIySzNFZEZHd1dhb0xk?= =?utf-8?B?ejU5ZTE3eGVhZU0rTWpzVloxVWRhZEprcDdJem1Zc2l2NktDd2tHUnlwTFNm?= =?utf-8?B?Mm9DNW14Rlo3UFU3K2JOTmxhbmFHUWEyQUJNMGNaa1BKR0hibjBobkltZ2ZS?= =?utf-8?B?OHcyWEZIbXFRUkMreUhXSGYwRlhlcFlMc3hOVkl4UUdybVpiTENNbXZPcDMx?= =?utf-8?B?WjlnamgvRGY5MjJkM2tuTVovYXRIZlp0QWx6VG1mK2RldGxBaCtTaklpTFBG?= =?utf-8?B?eWtPc2JYbDh5d29BVE9jYU1KT08wNXFLZkZCcTA2N21rblFjVm5wSU5ZK0Uw?= =?utf-8?B?Ymx5eWx2cXNmWmh5eDl3R04zZE1HeTZWaWR6Um1TVkIwZjVwVkFxYkNkenVX?= =?utf-8?B?OGFUSHlPT2J1VEtMTTZIYkxNTkdqN0JhRE9CK2w5RVlsMW5wYjhtYzZGa0Rp?= =?utf-8?B?SHVUdUwwc0ZTTUlZelJ5bitRaXFjaElUQ09yQVdQODl4ZVErUTdQSjV5VXY0?= =?utf-8?B?Y240YWNWbVUzZERqMmEyeWllR2VRUTJoL1BOcEdlbmxYVzYyclQ0eERLWGN5?= =?utf-8?B?RUIzdTNEU1FZVXhXeGdIYTJDVUJaU3FMYVJZbm9ockpXVU5JR1orVFNZeHEv?= =?utf-8?B?WjZnaGtWSWw2VWt1TEs3NjFEems1UTVKN1NNUGltTFIxRmkxSjRKVXR5ZUFZ?= =?utf-8?B?SnM5aWlieU9obGN2aVJhejNyK2l4enF1dkRFYUhUUjEzd2JHUUh2VmFIZkRs?= =?utf-8?B?NWMzWWEzSit2SDFtNWovNHJranZnU3hiU2lXWXFWNGRWdG9BRGdSOUNPWFRq?= =?utf-8?B?ai9vVGwreExtR0FQNFhXZzh6N29yZ2tZb0U2MjJRRzE1ZllPa2tmZGlucldU?= =?utf-8?B?a0lPYXZ0SkllbWNacGt5M1pSRTZpY25RZWMzcVJvcjV4eDI4U3BJMlFSR0J5?= =?utf-8?B?aHpHK1RpYlhyUmR1bjdhc3ZZSEQ3TkNHYzVMRTM2ZmQzeXFEQS9BZlNXSWFs?= =?utf-8?B?eXlpWWhrZmNhRVR4MlVKM0FKWExJRy9QN1A5RTR2bzR4dlBDMUxuNzQvTm5k?= =?utf-8?Q?1WXVvA0WKPGUMynIXI1x7xkOl?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: =?utf-8?B?ZDhjUUZHMnRjcmxFY1oxYkJGMmZ1WWNydEpta0RYbmRCVzFOYzd2ODdYR3NP?= =?utf-8?B?KzFGdXd1L21LUkxWUjJ3ajJNRFltWFVMOXk0eHdsSmI1bTQ3ZnZnaUgxTVIr?= =?utf-8?B?K3RrRWZqNEc0bTRXKzNnTkE5azRpaWd0UEFSZDA2NEZyREJSSVNqc1JBNGE3?= =?utf-8?B?eFJST08rSEVHTmc3aVJGSHZBMGFCVEZ2aWRoeXFMVlNHSERTdWtPZ1FucHdF?= =?utf-8?B?Wlp4dFFNQytrck0raFRqaS9PYWtQVE1ZSktTaWoyR001cVR3MzQ4QXdwam9L?= =?utf-8?B?SUFEMEh6bkREVWxSSGJkeC9sNDN0N1BjZUcxaUx4VXd5NkpQSCtFM3FWamF4?= =?utf-8?B?UW1mY0xVbkhEOHJzOVYvQjYzVU5OSm9VMHdES0VsWGN5Qy9BZGt0WnoyTVF0?= =?utf-8?B?Q25iZnFVL1l6WDhsRTFuTGZVcjJVenpsNXlVYVNmUFYyd3dMVmdLbk1mMXJH?= =?utf-8?B?eVFRZUhueFVWcmJhdlEwUmdDTnJYbkxieFFDRlRQTHJ0dTFvZ3hGTU5FbUdq?= =?utf-8?B?M0JSUmZKcEdDWUhDZVE0OFgwVVFYQjNua3A2VGN0VEZuNWRNSXhIME9mbWZ6?= =?utf-8?B?cjB4V0tiZW40OERnOGkzdzVtVUZ4OXBlVjdJS08ySHJqcHVSQzcyVHpLM3Bo?= =?utf-8?B?bEFUY2hiRDVic2x5R2FzOXZsVEhhYUN6WmNqckllZVR0NzV2MTlRaUYvUEdi?= =?utf-8?B?Z1dzSVRSR2t6Z0JZblNhN3lLU1UrdDBodGdLS041a1ZBMXQ1Z0YzOGV0bFhI?= =?utf-8?B?S2RNU0FBZzR0NDNodWUrS2c5b2xVWnF0SVdQaGNHQUszTW14WHcvWXJPZG5K?= =?utf-8?B?US9lWTFPS2FqUldYNDdKRjgvd0hIYnk5c0ZUSk53OEV4a0RMRjdxLzNrZnpE?= =?utf-8?B?SUNnbDh2Y2p5YmZpSmQwSnkyeWxaSnY1UUp2ZEd2TG1td0NHbi9ZMHdlQit5?= =?utf-8?B?ZDhzQTBycDRYSi9LdEtOdWFrVWx6cFpCUm1yc2ZibmdkbEtiVUVNczhhTnU2?= =?utf-8?B?YTA5WW5kQ0UyTGhuV1lxeHg0NnQvc3NxbDU3c3RYcEdTWm9LQk1sU0RNZ20y?= =?utf-8?B?MTlKa2NoME9aR25VSjRBS05lM2JrNVorQnNseC9nNUVvUmNzUzhENG96S29u?= =?utf-8?B?aUEzZjB2Qm9SRTJZL2d4Unc3UnNwSHo4OEFCM0dQdm5NK1owa3BlSVR3dmJx?= =?utf-8?B?ZzFaV05oNE1CcmlsVVdyNVhGWTFjallZb0hlKzFvR2NOUDB0SElON0Vwb1po?= =?utf-8?B?clhmSlZZOFU1RnBacnRrRVpQMkY2ZXJTWGc2MzRuSCtldjFSUT09?= X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 54ca49a4-bbcc-4bdf-9a93-08db723f484a X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Jun 2023 10:07:12.7439 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: ofCEiguSbBas1Pdunm3JZhuGqnRmG8ilmdrf8zT6CrSPPNYZkWTqarwNMD/EjqlDi6rXpVqufAKraYtYMIS9Hw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR03MB5662 On Tue, Jun 20, 2023 at 09:14:25PM -0400, Demi Marie Obenour wrote: > On Mon, Jun 12, 2023 at 10:09:39AM +0200, Roger Pau Monné wrote: > > On Fri, Jun 09, 2023 at 12:55:39PM -0400, Demi Marie Obenour wrote: > > > On Fri, Jun 09, 2023 at 05:13:45PM +0200, Roger Pau Monné wrote: > > > > On Thu, Jun 08, 2023 at 11:33:26AM -0400, Demi Marie Obenour wrote: > > > > > On Thu, Jun 08, 2023 at 10:29:18AM +0200, Roger Pau Monné wrote: > > > > > > On Wed, Jun 07, 2023 at 12:14:46PM -0400, Demi Marie Obenour wrote: > > > > > > > On Wed, Jun 07, 2023 at 10:20:08AM +0200, Roger Pau Monné wrote: > > > > > > Then the block script will open the device by diskseq and pass the > > > > > > major:minor numbers to blkback. > > > > > > > > > > Alternatively, the toolstack could write both the diskseq and > > > > > major:minor numbers and be confident that it is referring to the > > > > > correct device, no matter how long ago it got that information. > > > > > This could be quite useful for e.g. one VM exporting a device to > > > > > another VM by calling losetup(8) and expecting a human to make a > > > > > decision based on various properties about the device. In this > > > > > case there is no upper bound on the race window. > > > > > > > > Instead of playing with xenstore nodes, it might be better to simply > > > > have blkback export on sysfs the diskseq of the opened device, and let > > > > the block script check whether that's correct or not. That implies > > > > less code in the kernel side, and doesn't pollute xenstore. > > > > > > This would require that blkback delay exposing the device to the > > > frontend until the block script has checked that the diskseq is correct. > > > > This depends on your toolstack implementation. libxl won't start the > > domain until block scripts have finished execution, and hence the > > block script waiting for the sysfs node to appear and check it against > > the expected value would be enough. > > True, but we cannot assume that everyone is using libxl. Right, for the udev case this won't be good, since the domain could be already running, and hence could potentially attach to the backend before the hotplug script realized the opened device is wrong. Likewise for hot add disks. > > > Much simpler for the block script to provide the diskseq in xenstore. > > > If you want to avoid an extra xenstore node, I can make the diskseq part > > > of the physical-device node. > > > > I'm thinking that we might want to introduce a "physical-device-uuid" > > node and use that to provide the diskseq to the backened. Toolstacks > > (or block scripts) would need to be sure the "physical-device-uuid" > > node is populated before setting "physical-device", as writes to > > that node would still trigger blkback watch. I think using two > > distinct watches would just make the logic in blkback too > > complicated. > > > > My preference would be for the kernel to have a function for opening a > > device identified by a diskseq (as fetched from > > "physical-device-uuid"), so that we don't have to open using > > major:minor and then check the diskseq. > > In theory I agree, but in practice it would be a significantly more > complex patch and given that it does not impact the uAPI I would prefer > the less-invasive option. >From a blkback point of view I don't see that option as more invasive, it's actually the other way around IMO. On blkback we would use blkdev_get_by_diskseq() (or equivalent) instead of blkdev_get_by_dev(), so it would result in an overall simpler change (because the check against diskseq won't be needed anymore). > Is there anything more that needs to be done > here, other than replacing the "diskseq" name? I think we also spoke about using sscanf to parse the option. The patch to Xen blkif.h needs to be accepted before the Linux side can progress. > I prefer > "physical-device-luid" because the ID is only valid in one particular > VM. "physical-device-uid" then maybe? Thanks, Roger. From xen-devel-bounces@lists.xenproject.org Wed Jun 21 10:13:47 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 10:13:47 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552627.862797 (Exim 4.92) (envelope-from ) id 1qBuqD-0001Oi-7m; Wed, 21 Jun 2023 10:13:33 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552627.862797; Wed, 21 Jun 2023 10:13:33 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBuqD-0001Ob-4l; Wed, 21 Jun 2023 10:13:33 +0000 Received: by outflank-mailman (input) for mailman id 552627; Wed, 21 Jun 2023 10:13:31 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBuqB-0001OV-Pj for xen-devel@lists.xenproject.org; Wed, 21 Jun 2023 10:13:31 +0000 Received: from NAM02-SN1-obe.outbound.protection.outlook.com (mail-sn1nam02on2062e.outbound.protection.outlook.com [2a01:111:f400:7ea9::62e]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 4494192c-101c-11ee-b236-6b7b168915f2; Wed, 21 Jun 2023 12:13:30 +0200 (CEST) Received: from CYXPR02CA0006.namprd02.prod.outlook.com (2603:10b6:930:cf::10) by LV3PR12MB9216.namprd12.prod.outlook.com (2603:10b6:408:1a5::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.23; Wed, 21 Jun 2023 10:13:25 +0000 Received: from CY4PEPF0000EDD3.namprd03.prod.outlook.com (2603:10b6:930:cf:cafe::7c) by CYXPR02CA0006.outlook.office365.com (2603:10b6:930:cf::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.24 via Frontend Transport; Wed, 21 Jun 2023 10:13:25 +0000 Received: from SATLEXMB04.amd.com (165.204.84.17) by CY4PEPF0000EDD3.mail.protection.outlook.com (10.167.241.207) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6521.20 via Frontend Transport; Wed, 21 Jun 2023 10:13:25 +0000 Received: from SATLEXMB06.amd.com (10.181.40.147) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Wed, 21 Jun 2023 05:13:24 -0500 Received: from SATLEXMB04.amd.com (10.181.40.145) by SATLEXMB06.amd.com (10.181.40.147) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Wed, 21 Jun 2023 05:13:24 -0500 Received: from [10.71.193.39] (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server id 15.1.2507.23 via Frontend Transport; Wed, 21 Jun 2023 05:13:22 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 4494192c-101c-11ee-b236-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=jz4cVQYQsc0JrZWx6ggy6r97lwnTmTALmLfooEAfRHq6JaOTo1McIIwSpdIGn/UnC/9ncAlfu4INlwPkc5RUgnLUzjpEpyMoH0+8s42E773xT6bMkU5cSnpXrGGz+0EiD6N3ueLfceM+fcHzuV3Vh0L8+ajae1LfcJj94RdJzcb2jn5oY3bEp6EB8zK7Ld2NEBtqzKf7ok50mCM4+B3CQTsVamPkznvAJGAlXc/K91ii2rLD7mLO/W6xRtNJ3PiALRjWpQ+7AGwfKIhUfRg4Ko37rBPWohg0Ay1NlJE2pPRBkS3WR0w3wMzZCPSoFm6APi+IGQflNmPwONyIg1Ik+w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=/e4c+oejmR7Hfh62Ug3MuVdOq7eSsu+gA6zYXnV8JJ8=; b=ghqiDbhd0CH/6IG+Otge7EIxhMTjCRWMXfWP3GCoKy1Y0R+G+bah5g+Cd0wHvZMmcuISTON7igVv5WR1apGynxrb/v+FMSkPEVD/9eD9YBGTWZd7fFLSpnjk7ATARbKD5hs4Ghp0fB7awSEP9WA9bCofSHacXd6/B3hG9F7f6zFGoSjxR6BI519Tc3c82MHosMMWnsbh6ctYr4FiVrcEzR5pK16vf9+ng5ACz2HMteW6Yg+vN7NMWKWABJoStUA91/9pGI74cq2DLef7Yev2zO0dbOIE8ECR5VU37Of+8b6SZ1MI3H6bChbXscKHzFv/K5ddXMDFaXxj9EFzjyZ4Bg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=xen.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=/e4c+oejmR7Hfh62Ug3MuVdOq7eSsu+gA6zYXnV8JJ8=; b=5Ejy88FDafJavK0AmbR0ur22Ni1mUJ64ROCxQEbjtBUBhFVY0WXflk5chnpikNn0t5Uw/NFKOitKOb7jLWalc22THJHvyOsH+l6KxNROsdUwgxBYdfO0jH1EX206eeIHJ1dE4FhA4brhgBCC3qHXDWNYXe2ZkaUFLv6Tq+t0xw4= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C Message-ID: Date: Wed, 21 Jun 2023 12:13:17 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH 3/7] xen/arm64: head: Add missing isb in setup_fixmap() Content-Language: en-US To: Julien Grall , CC: , , Julien Grall , Stefano Stabellini , "Bertrand Marquis" , Volodymyr Babchuk References: <20230619170115.81398-1-julien@xen.org> <20230619170115.81398-4-julien@xen.org> <3fa4faa1-f8be-5b8a-f8ba-3c7cc7c80968@xen.org> From: Michal Orzel In-Reply-To: <3fa4faa1-f8be-5b8a-f8ba-3c7cc7c80968@xen.org> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CY4PEPF0000EDD3:EE_|LV3PR12MB9216:EE_ X-MS-Office365-Filtering-Correlation-Id: 41a0c968-ffd6-45a9-c519-08db72402680 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: DYFbw2IIr3cOVahNiyUS3YEqnSjazRdGwMDO2TAGwBE4xWMvxIIDkzh167ikaxuXRofZ3Rn88SfuygnqDyvA8lrruUZrSOffinTgjlaftm0PikSAw5W7DJRDD18xNS1Je1p7FNtjj/Vb3jDXBslsZGAH1GZScIDPTuoY3e9KQqnwi68SRbkuNhqXQZkkRV8NRRgoBWBJLDx973EyBiG1TIentzETX3EvxgI0fJ6lbO7g6evpkQJvdVCl5wYNxIroodYG5/lEIcY6hv6SzkDeN4BTL3bWXqdWBKE1B8ErNV+nBEMJEP7vH7CP15MgFrGx5qo7TuVMCuRwUUHsltc3ebmnVaVDlb4Th4QEMet5woLHVIbBF55rTMRCuBTT7kSFMxSfvS6LMqPPl0q0Vvu+JHt/8WuV0N63gCY8ThQK67fhazZLPnQ7SK2AT5FhfGfMiQO0xU35KWGCp1zP6gsJgVC48bJefNgMKBaUZzbHrJj4HB0Syz+I5YiaifxoMejnWN10bE+lZ5TX4V0pwFVEKFxPT//qoUpwu7QWRGJv8+pDhoZ+UWmj23xf17Qky9VFI84i2oSbAk6qLKm/iK0uOSDMua2WfdBRNjwn8ea1fjMGFI8n2gHIGXiyU3ooUISTF0ygLeM3DYM5V3E4Bi1ATxVkxjNEA72brmNF24w2tc/IXKFy2Io/c/lWl9WnsxfFyfnCWQ3trwNAxJVaaueeBytOF08GtA/eBhWJsMb3/JClwZmxcoSRvLWnzuzODGbA0JUgMtQ2M49BHIGT9mD9KEC8/kkB+2SQkSwq3BJQFmmYVHcOaRQar5idIoboVkA8 X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(376002)(396003)(136003)(346002)(451199021)(36840700001)(46966006)(40470700004)(53546011)(83380400001)(426003)(336012)(26005)(2616005)(186003)(16576012)(110136005)(54906003)(478600001)(70206006)(6666004)(70586007)(316002)(31696002)(86362001)(4326008)(82740400003)(356005)(81166007)(36756003)(47076005)(36860700001)(40480700001)(5660300002)(44832011)(8676002)(41300700001)(40460700003)(8936002)(2906002)(31686004)(82310400005)(43740500002)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Jun 2023 10:13:25.1566 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 41a0c968-ffd6-45a9-c519-08db72402680 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com] X-MS-Exchange-CrossTenant-AuthSource: CY4PEPF0000EDD3.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: LV3PR12MB9216 On 21/06/2023 12:02, Julien Grall wrote: > > > Hi, > > On 21/06/2023 10:33, Michal Orzel wrote: >> >> >> On 19/06/2023 19:01, Julien Grall wrote: >>> >>> >>> From: Julien Grall >>> >>> On older version of the Arm Arm (ARM DDI 0487E.a, B2-125) there were >>> the following paragraph: >>> >>> "DMB and DSB instructions affect reads and writes to the memory system >>> generated by Load/Store instructions and data or unified cache >>> maintenance instructions being executed by the PE. Instruction fetches >>> or accesses caused by a hardware translation table access are not >>> explicit accesses." >>> >>> Newer revision (e.g. ARM DDI 0487J.a) doesn't have the second sentence >>> (it might be somewhere else in the Arm Arm). But the interpretation is >>> not much different. >>> >>> In setup_fixmap(), we write the fixmap area and may be used soon after, >>> for instance, to write to the UART. IOW, there could be hardware >>> translation table access. So we need to ensure the 'dsb' has completed >>> before continuing. Therefore add an 'isb'. >>> >>> Fixes: 2b11c3646105 ("xen/arm64: head: Remove 1:1 mapping as soon as it is not used") >>> Signed-off-by: Julien Grall >> Reviewed-by: Michal Orzel >> >> I'm happy with the whole series but I do not see a point in flooding each patch with my tag >> since you already got two (from Henry and Luca). > > Thanks. To clarify, shall I add it in each patch or only this one? Whatever you prefer. If you care about my tag and want to have more than two, feel free to add it to all the patches. > >> >> When it comes to essential isb() after dsb() in arm64 head.S, I can see that we are missing one in enable_mmu() >> after TLB invalidation. On HW without FEAT_ETS the TLB is "guaranteed to be complete after the execution of >> DSB by that PE, followed by a Context synchronization event", so I view isb as necessary there. > > While there is no ISB directly after DSB NSH, there are one right after > MSR. I don't think we need one before because nothing will use the TLBs > between before the ISB. > > /* > * The state of the TLBs is unknown before turning on the MMU. > * Flush them to avoid stale one. > */ > tlbi alle2 /* Flush hypervisor TLBs */ > dsb nsh > > /* Write Xen's PT's paddr into TTBR0_EL2 */ > load_paddr x0, boot_pgtable > msr TTBR0_EL2, x0 > isb > Although having isb after dsb would be clearer to the user and consistent with other TBL invalidations, the one after msr can do the job for now, I agree. ~Michal From xen-devel-bounces@lists.xenproject.org Wed Jun 21 10:25:07 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 10:25:07 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552632.862806 (Exim 4.92) (envelope-from ) id 1qBv1E-0002uN-7s; Wed, 21 Jun 2023 10:24:56 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552632.862806; Wed, 21 Jun 2023 10:24:56 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBv1E-0002uG-53; Wed, 21 Jun 2023 10:24:56 +0000 Received: by outflank-mailman (input) for mailman id 552632; Wed, 21 Jun 2023 10:24:54 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBv1C-0002u4-Rq for xen-devel@lists.xenproject.org; Wed, 21 Jun 2023 10:24:54 +0000 Received: from esa2.hc3370-68.iphmx.com (esa2.hc3370-68.iphmx.com [216.71.145.153]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id d8e88d74-101d-11ee-8611-37d641c3527e; Wed, 21 Jun 2023 12:24:49 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: d8e88d74-101d-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1687343089; h=from:to:cc:subject:date:message-id:mime-version: content-transfer-encoding; bh=haGiUgHRHqD5BrAJs/jmezqb+r3ELNJ5UIOJ2LCUy44=; b=Ihncm2OcW6RneaDpsbfQEF0ADs3jq/idW7RuvWghF6mdu/ODuu/FWVDw FwJISA01NW3pnwOEFBI6+f0QvuEw9TXcMmvrG/8k6w7ZhMnRkdbN+QVQq VicLiENR1ZsRK5/ulgd+3WGRbkFAfQij3o26Aice81lym2emOeLMiam+a s=; Authentication-Results: esa2.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none X-SBRS: 4.0 X-MesageID: 113489353 X-Ironport-Server: esa2.hc3370-68.iphmx.com X-Remote-IP: 162.221.156.123 X-Policy: $RELAYED IronPort-Data: A9a23:XYroUq1taYS2oXAfYvbD5bZxkn2cJEfYwER7XKvMYLTBsI5bpzJUz jEeUGuCbPmLMTP1eIx3Ydy1oEsGuZPdztJgQQprpC1hF35El5HIVI+TRqvS04F+DeWYFR46s J9OAjXkBJppJpMJjk71atANlVEliefTAOK6ULWeUsxIbVcMYD87jh5+kPIOjIdtgNyoayuAo tq3qMDEULOf82cc3lk8teTb8HuDgNyo4GlD5gJkPKgR1LPjvyJ94Kw3dPnZw0TQGuG4LsbiL 87fwbew+H/u/htFIrtJRZ6iLyXm6paLVeS/oiI+t5qK23CulQRrukoPD9IOaF8/ttm8t4sZJ OOhF3CHYVxB0qXkwIzxWvTDes10FfUuFLTveRBTvSEPpqFvnrSFL/hGVSkL0YMkFulfRn5A0 qA8NDE0USu9lfCI2vG/QdJ8iZF2RCXrFNt3VnBIyDjYCbAtQIzZQrWM7thdtNsyrpkQR7CEP ZNfMGcxKk2aOHWjOX9OYH46tO6umnn4dSwesF+PrLA7y2PS0BZwwP7mN9+9ltmiHJwOwhbJ/ T+dl4j/KjY1EczGkiOlyG+tj92Tgj2jR7wQKKLto5aGh3XMnzdOWXX6T2CTsfS/z0KzRd9bA 0gV4TY167g/8lSxSdvwVAH+p2SL1iPwQPIJTbd8slvUjPOJvUDAXDNsoiN9hMIO89A4YmAOy l6woOjXFy5Rqv6RQkmN+eLBxd+tAhT5PVPudAddE1tauYm8+dFp5v7cZo09SfDo17UZDRm1m mnX93Zm2t3/mOZRj82GEUb7byVAT3QjZio8/U3pU22s9WuVj6b1NtXzuTA3ARutRbt1r2VtX 1BewaByFMhUUfmweNWlGY3h5o2B6fefKyH7ilVyBZQn/DnF0yf9Ld8KsG8meRczYpxsldrVj Kj741k52XOuFCHyMf8fj3yZVqzGMpQM5fy6D6uJP7Kik7B6dROd/TEGWKJj9zmFraTYqolmY c3zWZ/1XR4n5VFPkGLeqxE1jeV6mUjTBAr7GfjG8vhQ+ePFOC/FF+9UYAHmgyJQxPrsnTg5O u13b6OioyizmsWnCsUL2eb/9Ww3EEU= IronPort-HdrOrdr: A9a23:jHULdqD1kqVR3u/lHeilsseALOsnbusQ8zAXPh9KJCC9I/bzqy nxpp8mPHjP+UMssRAb6KK90cy7IU80mqQFkbX5UY3SIDUO/VHYT72KjrGSsAEIeReOi9K1vJ 0IG8QQaeEYT2IK7/oShjPIbOrIqOP3hJxA7t2uvkuFODsaDp2IgT0JdDpzX3cGCDVuNN4cLt 6x98BHrz2vdTA+adm6PGAMW6zmq8fQnJzrTBYaD1p/gTP+ww+A2frfKVy1zx0eWzRAzfML9n XEqRXw4uGGv+ugwhHR+mfP59B9mcfnyPFEGMuQ4/JlZQnEu0KNXsBMSreCtDc6rKWG70srqs DFp1MaM8F6+xrqDyqISU+G4Wfd+Qdrz0Wn5U6TgHPlr8C8bik9EdB9iYVQdQacw1Y8vflnuZ g7m16xht5yN1ftjS7979/HW1VBjUyvu0cvluYVkjh2TZYeUrlMtoYSlXklV6voJBiKrrzPLd MeTv00pcwmMm9yVkqp/lWHFebcG0jaHX+9MwA/U4KuomFrtUE863Fd5NcehDMl+I80ZpFY74 3/Q95VfYp1P4YrhJJGdZE8qPSMexvwqDL3QSivyAfcZew60jT22t/KyYRw29uRPLAWwJwu3L THUE5ZvXM1YCvVeLSz9awOzSr2BEmjUTPxjuFY54V4sqD7X/7CKyeCSDkV4rOdisRaPffgH9 qtNJVKR8L5LWXhFZ0h5XyEZ7BibUYlaok4pdo9RhaystvGQ7ea0dDzQbLtHoCoKzwjQ2+XOA pmYBHDYPp71ASQRnTjigPQQm7sfEu63b8YKtm9w9Qu X-Talos-CUID: 9a23:qh3Dqmy5AXB3aKBj/hPzBgVTBc4CLlnBzU7vGHGqG1hzC7meck+frfY= X-Talos-MUID: 9a23:D3euCwiQQYXh5nG1XFYdCcMpE+hN8/31EWA3jJQPiZWbK3RvBTWhk2Hi X-IronPort-AV: E=Sophos;i="6.00,260,1681185600"; d="scan'208";a="113489353" From: Anthony PERARD To: CC: Roger Pau Monne , Anthony PERARD Subject: [OSSTEST PATCH] Use updated mirror for buster armhf, and update debian-installer Date: Wed, 21 Jun 2023 11:24:26 +0100 Message-ID: <20230621102426.19955-1-anthony.perard@citrix.com> X-Mailer: git-send-email 2.39.2 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain This reverts commit b838a9daeb3b ("production-config: Use a snapshot for buster armhf") Installation now fails with "Invalid Release signature", while downloading the "Release" file of a repo. But, using the main mirror for armhf boxes seems to work fine now. To use the live mirror, we need to update the debian-installer as there's a newer version of the kernel. Otherwise, installation fails with the installer not able to find the disk. Signed-off-by: Anthony PERARD --- Notes: I've tested this with just the *armhf* jobs, which works. So I'm going to push that to osstest right away and let it do a full flight test. production-config | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/production-config b/production-config index 78ad768e..2c44805c 100644 --- a/production-config +++ b/production-config @@ -91,9 +91,7 @@ TftpNetbootGroup osstest TftpDiVersion_wheezy 2016-06-08 TftpDiVersion_jessie 2018-06-26 TftpDiVersion_stretch 2020-09-24 -TftpDiVersion_buster 2022-03-28 - -DebianMirror_buster_armhf http://snapshot.debian.org/archive/debian/20210124T203726Z/ +TftpDiVersion_buster 2023-06-20 DebianSnapshotBackports_jessie http://snapshot.debian.org/archive/debian/20190206T211314Z/ -- Anthony PERARD From xen-devel-bounces@lists.xenproject.org Wed Jun 21 10:27:31 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 10:27:31 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552637.862817 (Exim 4.92) (envelope-from ) id 1qBv3c-0003UN-Kr; Wed, 21 Jun 2023 10:27:24 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552637.862817; Wed, 21 Jun 2023 10:27:24 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBv3c-0003UG-HR; Wed, 21 Jun 2023 10:27:24 +0000 Received: by outflank-mailman (input) for mailman id 552637; Wed, 21 Jun 2023 10:27:22 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBv3a-0003UA-Bh for xen-devel@lists.xenproject.org; Wed, 21 Jun 2023 10:27:22 +0000 Received: from EUR04-DB3-obe.outbound.protection.outlook.com (mail-db3eur04on0609.outbound.protection.outlook.com [2a01:111:f400:fe0c::609]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 3431f326-101e-11ee-b236-6b7b168915f2; Wed, 21 Jun 2023 12:27:21 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by AM9PR04MB7554.eurprd04.prod.outlook.com (2603:10a6:20b:2da::23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.23; Wed, 21 Jun 2023 10:27:17 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6500.036; Wed, 21 Jun 2023 10:27:17 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 3431f326-101e-11ee-b236-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=SVdu6LNPbteYd/JHDGFC8qzCh76eGFm7fYsuqi5EM+/nQNsEsDZIlkhhmqZC2ulJVMAe84AEW+PbzKfVTNCoKHUwzcZefimZwOSZ/FeLj69HO7NVQm4DEfZmy6o/DzQx4sA39l228tn+mWqUyoB9NHHiSvTytNV7jM1zR4zMnQ5QmnIaglmfXxFsVJ4mACil6ea08kkCUVNO+Lizq3mqPHzWbpBHcJirZI9QPwGydx5a1zOcNqoAzMHcBKnX0RJ1A95LsBRjmRa9wnYKrwufhgVRpXRVPtXqeYNs27S6i7DscaResiycUrvrsb3EiFkhQF5mp+SzR9Ax4hNa0TDG+Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=E9b566oxwptVCUtRBZ3IJydX6QQjKXMYzCi7wsM2nhM=; b=KL+lm+LHNigmY2HTOtk0Su0WmvwmfOj0xgG799Ym+2AM4jSb/FFxIiPhM0uiuvp0+5OlQHVLkiV/HXO1QicCFr6D15VvQZuE4aGRx/eQ5rvBC6apDu0i+D2fkDAbAqcztCS8b7nABKjUju1IINZCtMIhzgrMAUosIt94QDNm0+hhS2nee8ZSlaJdcwGvaDJ14eGiiUNVYxnsj3Dcc797dLBeqj6Q4vNSCMTebqOYNWFNQwLfUhJsTh4id3MiCIXrRqC3xM5QctbLK0gSeJ4zktzjq2J0ldcQU9D5dDP6Fqkv6A+R3UzdzAlaUP+U/Y+95KaZvDMqsQ8zupQOcMa6Dw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=E9b566oxwptVCUtRBZ3IJydX6QQjKXMYzCi7wsM2nhM=; b=kGngCoA8mZXoHikZwlldCoqHVImp9bb0BGCxJpn5XTVIOCmWSZ3g8hNDWfQul02eP3+wsLbL6idXisFEcrCkMsHrSAAkgZ6qrAVdSeULShB+m2t6cZiwmFjrt125yZuK/DsCuCu0FMA4UnqtN2+4uzWbrbRkX0V5Jx7Be8B+yhIVff6+ZDSZ//NzEG3dG2xLdBUZNJTDN2mGzK6hf3WF1MSmV0tBAM+ZJJNDJj1/RaJjHN7ZHQdJYROn/dyrOIHHiShb/KXa5GuRS4JBJAZ/2w4E4H11AbHoU8eWm8LNpt0R2iDk7N3AuKTgGRXysi0amn+Ytov9fO9RIleR6PfTNg== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <0ba16220-64a6-63bf-a1b8-77dcc847d2ed@suse.com> Date: Wed, 21 Jun 2023 12:27:14 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [XEN PATCH v2] docs/misra: document the C dialect and translation toolchain assumptions. Content-Language: en-US To: Roberto Bagnara Cc: roger.pau@citrix.com, bertrand.marquis@arm.com, michal.orzel@amd.com, xenia.ragiadakou@amd.com, ayan.kumar.halder@amd.com, consulting@bugseng.com, Andrew Cooper , George Dunlap , Julien Grall , Stefano Stabellini , Wei Liu , xen-devel@lists.xenproject.org References: From: Jan Beulich In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR3P281CA0015.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:1d::13) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|AM9PR04MB7554:EE_ X-MS-Office365-Filtering-Correlation-Id: 4c71848d-6afd-44b9-8c04-08db72421641 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 4Ap2ZvT3bPuS3/TUj8gAbCrs1YuopIt5SsW5vB5JghY+0PBWojtn1MsxnMPHX0nmm13uo6itHq/lVXEhdq67MQdjUa0xiKHgsjaS9thaOvRR9NvgC5Edr9rhnj36zvWAwXwdgt78KOysKUJgP2HT6VXwsSHn4/K7v/6JxUovG/FkA/h9/jmSjmeXTtwLzGDOHiAQECu+VlgwKEsCmGtD1GD+ryBvJ2ZqcBr28SiJhXiKk3ZQS31x6DSUWXRBNFA3PYuvQnn24iBZM6Ic1EUTjPCmvdD34ruFeKBLaAsKnHUVK6hyuAiojjEH4n7rUBz2OYhQiGDU4FqcqTAhoKbyfKwJTO2473rfFsdgW1rCmKCUiUlfzI+tCrDwGiAd4TspC00fYlscTcKUiFSE/N0SUZoW6O+CN4wStJoX2PTD6jL8Pf+OTVplcTDaKuc98ck5zg0tCPyc3D8cSS9RgbucLPUE2Ray4DugHcVwdaJlkuRxQJ+vo19RTeHo0UYH8UIeQaIoy7pg17hnpdbIHbezZ5HfZCUZU0ttkJejqzwqGeJ3UtPczFgUJ7gciajL4rrzaUcmENcSkkHOiQWoJPwQmb7z3I0HMdU3XBMpckQUcrq5maTo76P0HaXB0xH7P8ijA6JGZK+dtzg9w534iUp8CA== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(396003)(366004)(346002)(39860400002)(376002)(136003)(451199021)(31686004)(5660300002)(7416002)(66946007)(6916009)(66476007)(8936002)(316002)(36756003)(86362001)(4326008)(41300700001)(8676002)(66556008)(38100700002)(31696002)(6486002)(6506007)(26005)(53546011)(6512007)(2906002)(186003)(2616005)(4744005)(478600001)(54906003)(83380400001)(6666004)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?emI0MEhORS9lMjhOMnB2RzROUG1xbFJKejB4VVA1eGhTaVRSNXVHNm9sVlpl?= =?utf-8?B?QlFjRUdVTnZyZkVOTzljbThRRTAwb2U2eXV6Um9XUFk3VDZ4VVZIbnhQLzY5?= =?utf-8?B?SVl5L0h4dVlwNVpCQTJhRE1QZmlqRkdBMFlXUnhrSVoyalRacUY5ZUJDWmJ2?= =?utf-8?B?Q2U1YUQzRFVDTXV3a2U4SmQrU202L1RSMnlXRGdTcW9GUWZ1UjI0UlBJdUha?= =?utf-8?B?bkFwMW5TdWM0VitSWWpEM1MxckZjTnU4Vm5lWi9UVXJ5Tnk3MkpWaEpIMFlo?= =?utf-8?B?SEpvSjgxOTA2ak5IUE4vSnBCbVpKRDdrbXJoUUVraktKNVZGR0NxNU55WlFJ?= =?utf-8?B?QU1qUWZ4dFNUdTFCMW1IU1lJSlNrQUgxNWc3RFBDWWQraUhlOExrMzczVXlH?= =?utf-8?B?aGF5amU5ZWdNQjhwMFF2RjIvRCtJeTNBbXlzeUdmOXNtUHRDZytRczlEclp1?= =?utf-8?B?bjZHYnlpajZYNzRkTm5tUE5vQmdhSnB5dDJEdWdEKzFIMHFtMTltWU1qMWlr?= =?utf-8?B?YWt6WmRwU295R0huRlZyeDhuZ1dSNEZFQUFQZW04ektNL25CbDRQeDFzbllz?= =?utf-8?B?K3NobkV6dEFPejhlYVRuRlkvNVZvNzQ0YzJOSzNBMCs1TkpUZllLVGNPbFBJ?= =?utf-8?B?aDhSLytQcVd3TlgzMDhacGVUemRaM0JpaTJWUjZ1S25QMHJRRVFiZys0bVRO?= =?utf-8?B?ajV0anhWSXRtWXJOR1lKMHF1cFZCY1RQNHVpR3lKK3B1b1NqK0dzeURZSWg1?= =?utf-8?B?QldUWGIwcVJGQnhEL3BIN3E0VUNsTXZ6WDE5WDQ4dkRJYkdEZ0hVRmNWZ0FY?= =?utf-8?B?Si9aeXc4Sk9qb1M5ZytXY3BZQWNlWmlQcEpldUlod2hKenlPaTFUamtmWmZm?= =?utf-8?B?TUFpN0k2UkVWV3hlNkpPRVpLdVIvcmN6dDhXVjYybWNXbnR1MEljN3g5NURn?= =?utf-8?B?TVk3Y3FOMmF1TlZTQ3dIVnh0NndaZEQ2UUhpdy9yR2ZTSTZEWnY5RXhlUzRY?= =?utf-8?B?SGJqc0pUUWgvNC81UDZSaExjQ1FrallpYkFtbnBaSzFxTE44OGZSZFd4b3l6?= =?utf-8?B?VWNFdjczS0V2dWROWXozZGx4Wjk1bVVkQkpiM1JjSXBVRXVHdE0xUTBVK0dC?= =?utf-8?B?NWhSYW9Kcnc1Qkx2YVlIelRWMW1wZm5wczhxL1ZNbVBETENUZjdPMU5KS0Yy?= =?utf-8?B?ZDhMMmtLZ0Yra0xnVThZSitWeXRTOGg5OG5kajZWWWJPOFBIWnFtSHNwb09Y?= =?utf-8?B?TEJ5SkczUHRGRi9qYStESndxL1RSdDl5aTV1VEpQNkJ5ckdhR1BNdDBVSTdm?= =?utf-8?B?b2dtMlVKbTU0V0RqUEJvWlNmRk9xdWNHYUNDVEgzTE5FN1VCUjBrZjZ5RWZw?= =?utf-8?B?ckZqOXl3eGVqcVN6azMrOFlTaE0rT2J6RjE0QWtZbVJHZC8xUEJMc3FTQ3VN?= =?utf-8?B?UiszeE50VDFMa1VnREtRWmZ0bFl4UjVTM0xXOXZzZkdNRFZ6ZjNKOXFrM3N5?= =?utf-8?B?Yzk4cU9ydGdCa3BjYkx4Y0ZIb1pDakZuVC8xVGJjb09qT08yTHRHVlVaUHdJ?= =?utf-8?B?TGdkSnBCenExazM1SERpaXJKT0Nmdkg4WU84ajd4Nlg5SEovYlcxdW0yZzlk?= =?utf-8?B?aVNpeWlFOWdMUnJmbjluOXl2U0tGNHN0UVF2bytqdDVmMUF1a1RoZ2dLNWVD?= =?utf-8?B?Vi94dEF5eFhHNWl5TWpRWi9raEIxVmxYVlZuYVVHeTdHSEN1d1htMEw3OThU?= =?utf-8?B?MHdWc29pZGIzTUpKeUZPOHJENjNkZVU3QVZnbXR1cEsvdkZ2QXJUOW5KUlE4?= =?utf-8?B?aXBISTN6ZVlKUnROd2VMUXJRQ0tFenRpR3FTdXE3dm5LOENVTnQ4SG01aHZO?= =?utf-8?B?TWplVGYrL2dxeDZqNnhvTEY0VndTWDh2ZnhjcWlZSkNNY3RHRmR2UWFxRnVs?= =?utf-8?B?ZTNsUTZ5TSsvWit5aEdXcGVPRWZyVS9Icngzd2p6NFliMWJCWGRZY1M0OFhK?= =?utf-8?B?dTY5OU9TRVBvZU1XbnB4cUhtTGh0cjNxK3MwRlMyeGozdTZYbS9yNkxpb2JN?= =?utf-8?B?ZnB0S1VQMHZRbkN3b0c5R3BmejFjN0xpV1hxU3Q4bzRFZGFHNS9yWXNzT3Bv?= =?utf-8?Q?3+BKCrhgoUwfBloh+j/xFu51f?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 4c71848d-6afd-44b9-8c04-08db72421641 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Jun 2023 10:27:17.1610 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: /lBgqdWAClNXH2MofC45TGysjeEXEeOj2nZ3PtF0m0rhf2duuDzIxLTGZ7nRRZRaNioNqkLk51Dn1wG1rYgPjg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR04MB7554 On 20.06.2023 14:10, Roberto Bagnara wrote: > + * - static function is used in an inline function with external linkage > + - ARM64, X86_64 > + - Non-documented GCC extension. An inline function with external linkage > + can be inlined everywhere. If that calls a static functions, which is > + not available everywhere, it is a constraint violation according to > + C99 6.7.4p3: "An inline definition of a function with external linkage > + shall not contain a definition of a modifiable object with static > + storage duration, and shall not contain a reference to an identifier > + with internal linkage." A standard-compliant C compiler ought > + to diagnose all constraint violations: when it does not, as is the > + case for GCC, the behavior is implicitly undefined. With _spin_lock_cb() taken care of, do we have any left? Or else can this be dropped? Jan From xen-devel-bounces@lists.xenproject.org Wed Jun 21 10:48:24 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 10:48:24 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552643.862828 (Exim 4.92) (envelope-from ) id 1qBvNi-0005zz-Ba; Wed, 21 Jun 2023 10:48:10 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552643.862828; Wed, 21 Jun 2023 10:48:10 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBvNi-0005zs-7C; Wed, 21 Jun 2023 10:48:10 +0000 Received: by outflank-mailman (input) for mailman id 552643; Wed, 21 Jun 2023 10:48:09 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBvNh-0005zm-92 for xen-devel@lists.xenproject.org; Wed, 21 Jun 2023 10:48:09 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 1af7cb27-1021-11ee-b236-6b7b168915f2; Wed, 21 Jun 2023 12:48:07 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id DADB161501; Wed, 21 Jun 2023 10:48:05 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 6D79BC433C8; Wed, 21 Jun 2023 10:48:04 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 1af7cb27-1021-11ee-b236-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org; s=korg; t=1687344485; bh=vQW8SpknqhfYsLd//ycoQUF1XEoKmVOh7WQXK7qiNdI=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=T3axtBl09Uj+gGhVy84WdPlv59/aPeu632cEchdYe8a/k5iJl0+IXsbF+vopEWDYq NwenFITRTKDLMCVF8CzPXY6p9Hti1Q2TT7eK4GXO8pT0fRmZYBTPxe1ckDw7AxLZe2 wT9Wmou6gxTC0sVGsza4KPz7hQ7x6JjyXWzC0NK4= Date: Wed, 21 Jun 2023 12:47:58 +0200 From: Greg Kroah-Hartman To: Joel Granados Cc: mcgrof@kernel.org, Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , x86@kernel.org, Theodore Ts'o , "Jason A. Donenfeld" , Jiri Slaby , Juergen Gross , Stefano Stabellini , Benjamin LaHaise , Alexander Viro , Christian Brauner , Jeff Layton , Chuck Lever , Jan Kara , Kees Cook , Iurii Zaikin , Alexei Starovoitov , Daniel Borkmann , Andrii Nakryiko , Balbir Singh , Eric Biederman , "Naveen N. Rao" , Anil S Keshavamurthy , "David S. Miller" , Masami Hiramatsu , Peter Zijlstra , Will Deacon , Petr Mladek , Sergey Senozhatsky , Juri Lelli , Vincent Guittot , Steven Rostedt , Andrew Morton , Mike Kravetz , Muchun Song , Naoya Horiguchi , "Matthew Wilcox (Oracle)" , David Howells , Jarkko Sakkinen , Paul Moore , James Morris , "Serge E. Hallyn" , "H. Peter Anvin" , Oleksandr Tyshchenko , Amir Goldstein , John Fastabend , Martin KaFai Lau , Song Liu , Yonghong Song , KP Singh , Stanislav Fomichev , Hao Luo , Jiri Olsa , Waiman Long , Boqun Feng , John Ogness , Dietmar Eggemann , Ben Segall , Mel Gorman , Daniel Bristot de Oliveira , Valentin Schneider , Andy Lutomirski , Will Drewry , Mark Rutland , Miaohe Lin , linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org, linux-aio@kvack.org, linux-fsdevel@vger.kernel.org, linux-mm@kvack.org, bpf@vger.kernel.org, kexec@lists.infradead.org, linux-trace-kernel@vger.kernel.org, keyrings@vger.kernel.org, linux-security-module@vger.kernel.org Subject: Re: [PATCH 08/11] sysctl: Add size to register_sysctl_init Message-ID: <2023062150-outbound-quiet-2609@gregkh> References: <20230621091000.424843-1-j.granados@samsung.com> <20230621091000.424843-9-j.granados@samsung.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20230621091000.424843-9-j.granados@samsung.com> On Wed, Jun 21, 2023 at 11:09:57AM +0200, Joel Granados wrote: > static int __init random_sysctls_init(void) > { > - register_sysctl_init("kernel/random", random_table); > + register_sysctl_init("kernel/random", random_table, > + ARRAY_SIZE(random_table)); As mentioned before, why not just do: #define register_sysctl_init(string, table) \ __register_sysctl_init(string, table, ARRAY_SIZE(table); or something like that? That way no callers need to change AND you prevent the size from ever being incorrect? thanks, greg k-h From xen-devel-bounces@lists.xenproject.org Wed Jun 21 10:52:07 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 10:52:07 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552650.862836 (Exim 4.92) (envelope-from ) id 1qBvRR-0007Ux-V7; Wed, 21 Jun 2023 10:52:01 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552650.862836; Wed, 21 Jun 2023 10:52:01 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBvRR-0007Uq-S6; Wed, 21 Jun 2023 10:52:01 +0000 Received: by outflank-mailman (input) for mailman id 552650; Wed, 21 Jun 2023 10:52:00 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBvRQ-0007Ug-Jw; Wed, 21 Jun 2023 10:52:00 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBvRQ-0004Sg-7P; Wed, 21 Jun 2023 10:52:00 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBvRP-0000KZ-V2; Wed, 21 Jun 2023 10:52:00 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qBvRP-0002ue-UX; Wed, 21 Jun 2023 10:51:59 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=Qw0euqqTlxNp3MvGlIS4vC08bJ1g7jBHK8CxnAdF+WE=; b=ZqR4OTvE5668KlohninVNMwDxY 0lr3aP5y5o9xLcyYG7OKYvYXDluLNsjfMaatFPO2nN4fVe9/Fj9vw9J2kssDAooxdxQYgZVXeS8qR bFhA9KCsRfNOtl/UJy1qSqbRCjP9ENyfAKv8Z/0W3Qo10bvz3ip35N/BXqiX61zO1ux4=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [ovmf test] 181531: all pass - PUSHED X-Osstest-Versions-This: ovmf=4a0642ad27bfb566835ae86aedae0e18f9735cc2 X-Osstest-Versions-That: ovmf=ea55bd8f66eeca5f4e80c3679bcf1b1007286b8a From: osstest service owner Date: Wed, 21 Jun 2023 10:51:59 +0000 flight 181531 ovmf real [real] http://logs.test-lab.xenproject.org/osstest/logs/181531/ Perfect :-) All tests in this flight passed as required version targeted for testing: ovmf 4a0642ad27bfb566835ae86aedae0e18f9735cc2 baseline version: ovmf ea55bd8f66eeca5f4e80c3679bcf1b1007286b8a Last test of basis 181438 2023-06-15 05:42:42 Z 6 days Testing same since 181531 2023-06-21 03:42:36 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Jian J Wang jobs: build-amd64-xsm pass build-i386-xsm pass build-amd64 pass build-i386 pass build-amd64-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-i386-pvops pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Pushing revision : To xenbits.xen.org:/home/xen/git/osstest/ovmf.git ea55bd8f66..4a0642ad27 4a0642ad27bfb566835ae86aedae0e18f9735cc2 -> xen-tested-master From xen-devel-bounces@lists.xenproject.org Wed Jun 21 11:10:46 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 11:10:46 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552657.862847 (Exim 4.92) (envelope-from ) id 1qBvjK-0001YX-FF; Wed, 21 Jun 2023 11:10:30 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552657.862847; Wed, 21 Jun 2023 11:10:30 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBvjK-0001YQ-CV; Wed, 21 Jun 2023 11:10:30 +0000 Received: by outflank-mailman (input) for mailman id 552657; Wed, 21 Jun 2023 11:10:28 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBvjI-0001YG-Sw for xen-devel@lists.xenproject.org; Wed, 21 Jun 2023 11:10:28 +0000 Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.133.124]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 38f49c7a-1024-11ee-8611-37d641c3527e; Wed, 21 Jun 2023 13:10:26 +0200 (CEST) Received: from mail-lf1-f70.google.com (mail-lf1-f70.google.com [209.85.167.70]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-482-CM-Qw2czOY2GbQXem0Q4kQ-1; Wed, 21 Jun 2023 07:10:20 -0400 Received: by mail-lf1-f70.google.com with SMTP id 2adb3069b0e04-4f652022d30so3925748e87.1 for ; Wed, 21 Jun 2023 04:10:20 -0700 (PDT) Received: from ?IPV6:2003:cb:c70b:9c00:7978:3030:9d9a:1aef? (p200300cbc70b9c00797830309d9a1aef.dip0.t-ipconnect.de. [2003:cb:c70b:9c00:7978:3030:9d9a:1aef]) by smtp.gmail.com with ESMTPSA id n6-20020a05600c294600b003f7e4639aabsm15838957wmd.10.2023.06.21.04.10.17 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Wed, 21 Jun 2023 04:10:18 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 38f49c7a-1024-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1687345825; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=+PPJcZwVybRKqB+oePB3oQpC+QICYQE72Fmc4NGzUQ0=; b=T225pGR/G1Iumb14+o/P1zomU0Si0cKsxksHviD/zR+oDeBZ2IISO4NAXa+JrN/fh8GFoR ZrVl5Vbj21PxvlsbS5ZLKEyWpddksGlCLG0UHyDv1r1Q0MlfAQg3SeHYszAUCHd4+3zS7E zWJns8yDWPJxN3BhXLYEG5xeLQ5x9tI= X-MC-Unique: CM-Qw2czOY2GbQXem0Q4kQ-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687345819; x=1689937819; h=content-transfer-encoding:in-reply-to:organization:from:references :cc:to:content-language:subject:user-agent:mime-version:date :message-id:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=+PPJcZwVybRKqB+oePB3oQpC+QICYQE72Fmc4NGzUQ0=; b=fJ8YRqKye74aZb4r6BRk5Xfr652QYpJ/PXBcGTzgiKbFFYFQZijTTAKCmbCC34ihna RRlH8JvkJf+oIr1pw09Y/AsI7Nd8gzj4xk4uMQMKmdgTcJyQaZ1hiDKijq87UlZiIYOo /28+Sl0p8mZn6bz9jM4U6WWA/EF0W9PhsultcmnpxOj0DgPER7Jpc7C9Ap8y8eE7NWWV infcCCjy9188/mCLPza6wBJ8xqnhvlXQK7nSm0vd3iYpapROVb1bJCT3gKzMoCSeuTfZ g/mXHG9jpgFB7nInZUcMkHfvFlmb854GnCG/CBArX/zm3i9Zruvs9jxu73iwX5oMNzKK WfcQ== X-Gm-Message-State: AC+VfDwmI0NQdhv01pm9AhWlOS5MbWzPnf86EJKyViJqEdnT3t7pibw1 rpI06T8V8w8InV9McFaeuX4HffxR6OLaOs3LYVhVO+pPv5l+EXl8uykDgUpcMZNS09Em5l+xdpz jTCDxLkri0CdQsx9Hj6tEXD1fLKU= X-Received: by 2002:a19:5f5e:0:b0:4f8:554f:36aa with SMTP id a30-20020a195f5e000000b004f8554f36aamr8695672lfj.29.1687345819126; Wed, 21 Jun 2023 04:10:19 -0700 (PDT) X-Google-Smtp-Source: ACHHUZ6dPOiwWjMrFeux8c7Yxb3pQd32Zv1F1r4CL1oEYE69e28hwJuZI9LmzmivR8K/k43R01PkHg== X-Received: by 2002:a19:5f5e:0:b0:4f8:554f:36aa with SMTP id a30-20020a195f5e000000b004f8554f36aamr8695649lfj.29.1687345818759; Wed, 21 Jun 2023 04:10:18 -0700 (PDT) Message-ID: <02b6a8a8-2da7-2864-0c0e-5ed81a560355@redhat.com> Date: Wed, 21 Jun 2023 13:10:16 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v1 1/1] Q35 Support To: Joel Upham , qemu-devel@nongnu.org Cc: "Michael S. Tsirkin" , Marcel Apfelbaum , Igor Mammedov , Ani Sinha , Eduardo Habkost , =?UTF-8?Q?Philippe_Mathieu-Daud=c3=a9?= , Yanan Wang , Paolo Bonzini , Richard Henderson , Stefano Stabellini , Anthony Perard , Paul Durrant , =?UTF-8?Q?Daniel_P=2e_Berrang=c3=a9?= , "open list:X86 Xen CPUs" References: <272947b9494f00bb4ad3e27c050e99f8b61905b3.1687127946.git.jupham125@gmail.com> From: David Hildenbrand Organization: Red Hat In-Reply-To: <272947b9494f00bb4ad3e27c050e99f8b61905b3.1687127946.git.jupham125@gmail.com> X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Language: en-US Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit On 20.06.23 19:24, Joel Upham wrote: Inexpressive patch subject and non-existant patch desciption. I have no clue what this is supposed to do, except that it involes q35 and xen ()I guess ?. > --- > hw/acpi/ich9.c | 22 +- > hw/acpi/pcihp.c | 6 +- > hw/core/machine.c | 19 + > hw/i386/pc_piix.c | 3 +- > hw/i386/pc_q35.c | 39 +- > hw/i386/xen/xen-hvm.c | 7 +- > hw/i386/xen/xen_platform.c | 19 +- > hw/isa/lpc_ich9.c | 53 +- > hw/isa/piix3.c | 2 +- > hw/pci-host/q35.c | 28 +- > hw/pci/pci.c | 17 + > hw/xen/xen-host-pci-device.c | 106 +++- > hw/xen/xen-host-pci-device.h | 6 +- > hw/xen/xen_pt.c | 49 +- > hw/xen/xen_pt.h | 19 +- > hw/xen/xen_pt_config_init.c | 1103 ++++++++++++++++++++++++++++++--- > include/hw/acpi/ich9.h | 1 + > include/hw/acpi/pcihp.h | 2 + > include/hw/boards.h | 1 + > include/hw/i386/pc.h | 3 + > include/hw/pci-host/q35.h | 4 +- > include/hw/pci/pci.h | 3 + > include/hw/southbridge/ich9.h | 1 + > include/hw/xen/xen.h | 4 +- > qemu-options.hx | 1 + > softmmu/datadir.c | 1 - > softmmu/qdev-monitor.c | 3 +- > stubs/xen-hw-stub.c | 4 +- > 28 files changed, 1395 insertions(+), 131 deletions(-) > Usually people refrain from reviewing such massive patches. Most probably this can be broken up into reviewable pieces. Was this supposed to be an RFC? -- Cheers, David / dhildenb From xen-devel-bounces@lists.xenproject.org Wed Jun 21 11:14:26 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 11:14:26 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552662.862856 (Exim 4.92) (envelope-from ) id 1qBvn1-00028d-Tk; Wed, 21 Jun 2023 11:14:19 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552662.862856; Wed, 21 Jun 2023 11:14:19 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBvn1-00028W-RD; Wed, 21 Jun 2023 11:14:19 +0000 Received: by outflank-mailman (input) for mailman id 552662; Wed, 21 Jun 2023 11:14:18 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBvn0-00028Q-Ht for xen-devel@lists.xenproject.org; Wed, 21 Jun 2023 11:14:18 +0000 Received: from madras.collabora.co.uk (madras.collabora.co.uk [2a00:1098:0:82:1000:25:2eeb:e5ab]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id c21a2d75-1024-11ee-8611-37d641c3527e; Wed, 21 Jun 2023 13:14:16 +0200 (CEST) Received: from [192.168.178.53] (82-71-8-225.dsl.in-addr.zen.co.uk [82.71.8.225]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) (Authenticated sender: bbeckett) by madras.collabora.co.uk (Postfix) with ESMTPSA id E5D586606F8B; Wed, 21 Jun 2023 12:14:14 +0100 (BST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: c21a2d75-1024-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=collabora.com; s=mail; t=1687346055; bh=MJIa8GnFWfms/olooPp651/+u8wmfzSy1yn/q7OMU28=; h=Date:Subject:To:Cc:References:From:In-Reply-To:From; b=TlctRtqxSe2Xfa93NmrfOZsDe3qO+n5QormbBFMXTqpdUajdSHjL7aC6Oxlxd1bDK 2nYpU77KYpXJkWmEViBea8NjmWeM+Wnd4K38CSYLVt7HzIZFMTZ0JCf9s3UVwZqBmH gxhUEZb2cfbKeE5cm69nLVrjTt77BOXHu06WoDST4zUNqAL6M42gdsevvM1sY9SceH 8FVltG6sbbgf61AIwFkoqJKA4+LXTyPjhMegrOokmeXhLtoc9GErYo18Le5WSCAfd1 yFVm7p4XY/v5CT1u9dn1Exw4RHic1pLUcUJR/w9UvRYoMMtPNF7WJlY8XPd8UM+wPA zknwi14bIv5Qg== Message-ID: Date: Wed, 21 Jun 2023 12:14:12 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [QEMU PATCH 1/1] virtgpu: do not destroy resources when guest suspend To: Gerd Hoffmann Cc: "Chen, Jiqian" , =?UTF-8?Q?Marc-Andr=c3=a9_Lureau?= , Damien Hedde , "Michael S . Tsirkin" , Stefano Stabellini , Anthony PERARD , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Jan Beulich , "Dr . David Alan Gilbert" , "qemu-devel@nongnu.org" , "xen-devel@lists.xenproject.org" , "Deucher, Alexander" , "Koenig, Christian" , "Hildebrand, Stewart" , Xenia Ragiadakou , "Huang, Honglei1" , "Zhang, Julia" , "Huang, Ray" References: <20230608025655.1674357-1-Jiqian.Chen@amd.com> <20230608025655.1674357-2-Jiqian.Chen@amd.com> <2164ff79-aa09-d959-cc61-c7a2a21db5e3@collabora.com> <2s33vb2tfogntkyk5laxzcmgexf42mhkpwr2gh3gjvpitav6ez@h5zbmuklzmv5> Content-Language: en-US From: Robert Beckett In-Reply-To: <2s33vb2tfogntkyk5laxzcmgexf42mhkpwr2gh3gjvpitav6ez@h5zbmuklzmv5> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit On 21/06/2023 09:39, Gerd Hoffmann wrote: > On Tue, Jun 20, 2023 at 01:26:15PM +0100, Robert Beckett wrote: >> On 20/06/2023 10:41, Gerd Hoffmann wrote: >>> Hi, >>> >>>>> The guest driver should be able to restore resources after resume. >>>> Thank you for your suggestion! >>>> As far as I know, resources are created on host side and guest has no backup, if resources are destroyed, guest can't restore them. >>>> Or do you mean guest driver need to send commands to re-create resources after resume? >>> The later. The guest driver knows which resources it has created, >>> it can restore them after suspend. >> Are you sure that this is viable? >> >> How would you propose that a guest kernel could reproduce a resource, >> including pixel data upload during a resume? >> >> The kernel would not have any of the pixel data to transfer to host. > Depends on the of resource type. For resources which are created by > uploading pixel data (using VIRTIO_GPU_CMD_TRANSFER_TO_HOST_*) a guest > mirror exists which can be used for re-upload. unfortunately this is not always the case. https://gitlab.freedesktop.org/mesa/mesa/-/blob/main/src/gallium/drivers/virgl/virgl_resource.c#L668 Often mesa will decide that it won't need to access a resource again after initial upload (textures etc). In this case, if it is able to copy back from host if needed, it will not maintain the guest shadow copy. Instead it will create a single page proxy object. The transfer to host will then over fill it to the correct size. I think this was a fairly huge optimization for them. > > For resources filled by gl rendering ops this is indeed not the case. > >> Could you explain how you anticipate the guest being able to reproduce the >> resources please? > Same you do on physical hardware? Suspend can poweroff your PCI > devices, so there must be some standard way to handle that situation > for resources stored in gpu device memory, which is very similar to > the problem we have here. In traditional PCI gfx card setups, TTM is used as the memory manager in the kernel. This is used to migrate the buffers back from VRAM to system pages during a suspend. This would be suitable for use to track host blob buffers that get mapped to guest via the PCI BAR, though would be a significant re-architecting of virtio gpu driver. It would not help with the previously mentioned proxied resources. Though in theory the driver could read the resources back from host to guest pages during suspend, this would then be potentially complicated by suspend time alloc failures etc. As virtio drivers are by design paravirt drivers ,I think it is reasonable to accept some knowledge with and cooperation with the host to manage suspend/resume. It seems to me like a lot of effort and long term maintenance to add support for transparent suspend/resume that would otherwise be unneeded. Perhaps others have alternative designs for this? > > take care, > Gerd > From xen-devel-bounces@lists.xenproject.org Wed Jun 21 11:37:11 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 11:37:11 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552669.862867 (Exim 4.92) (envelope-from ) id 1qBw8t-0004dQ-KQ; Wed, 21 Jun 2023 11:36:55 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552669.862867; Wed, 21 Jun 2023 11:36:55 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBw8t-0004dJ-HR; Wed, 21 Jun 2023 11:36:55 +0000 Received: by outflank-mailman (input) for mailman id 552669; Wed, 21 Jun 2023 11:36:53 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBw8r-0004dD-No for xen-devel@lists.xenproject.org; Wed, 21 Jun 2023 11:36:53 +0000 Received: from smtp-out2.suse.de (smtp-out2.suse.de [195.135.220.29]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id eab4d02c-1027-11ee-b236-6b7b168915f2; Wed, 21 Jun 2023 13:36:52 +0200 (CEST) Received: from relay2.suse.de (relay2.suse.de [149.44.160.134]) by smtp-out2.suse.de (Postfix) with ESMTP id C87691FDE8; Wed, 21 Jun 2023 11:36:51 +0000 (UTC) Received: from suse.cz (unknown [10.100.201.202]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by relay2.suse.de (Postfix) with ESMTPS id 144972C141; Wed, 21 Jun 2023 11:36:46 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: eab4d02c-1027-11ee-b236-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1; t=1687347411; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=/FQApQPgb/S6VB9crvo39szrL+RZ0B9Iq9K2WpGCiTo=; b=iwyLnEK1VeUWv/tmm/Nm6Cx5NbYxgFmj0mH+P5/gDg9l9WiFHQ1aqfL3EEa87DHfpr/aUI PhCVJRawNs68LlACkkSmFEImXna0QGgLP5xUaED+wkuZFJn4wrg4DCWfOxgJw3/ea1pY1O C9tLa1Flx054EBbIvKK/ApG8ncbzfFo= Date: Wed, 21 Jun 2023 13:36:46 +0200 From: Petr Mladek To: Joel Granados Cc: mcgrof@kernel.org, Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , x86@kernel.org, Theodore Ts'o , "Jason A. Donenfeld" , Greg Kroah-Hartman , Jiri Slaby , Juergen Gross , Stefano Stabellini , Benjamin LaHaise , Alexander Viro , Christian Brauner , Jeff Layton , Chuck Lever , Jan Kara , Kees Cook , Iurii Zaikin , Alexei Starovoitov , Daniel Borkmann , Andrii Nakryiko , Balbir Singh , Eric Biederman , "Naveen N. Rao" , Anil S Keshavamurthy , "David S. Miller" , Masami Hiramatsu , Peter Zijlstra , Will Deacon , Sergey Senozhatsky , Juri Lelli , Vincent Guittot , Steven Rostedt , Andrew Morton , Mike Kravetz , Muchun Song , Naoya Horiguchi , "Matthew Wilcox (Oracle)" , David Howells , Jarkko Sakkinen , Paul Moore , James Morris , "Serge E. Hallyn" , "H. Peter Anvin" , Oleksandr Tyshchenko , Amir Goldstein , John Fastabend , Martin KaFai Lau , Song Liu , Yonghong Song , KP Singh , Stanislav Fomichev , Hao Luo , Jiri Olsa , Waiman Long , Boqun Feng , John Ogness , Dietmar Eggemann , Ben Segall , Mel Gorman , Daniel Bristot de Oliveira , Valentin Schneider , Andy Lutomirski , Will Drewry , Mark Rutland , Miaohe Lin , linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org, linux-aio@kvack.org, linux-fsdevel@vger.kernel.org, linux-mm@kvack.org, bpf@vger.kernel.org, kexec@lists.infradead.org, linux-trace-kernel@vger.kernel.org, keyrings@vger.kernel.org, linux-security-module@vger.kernel.org Subject: Re: [PATCH 08/11] sysctl: Add size to register_sysctl_init Message-ID: References: <20230621091000.424843-1-j.granados@samsung.com> <20230621091000.424843-9-j.granados@samsung.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20230621091000.424843-9-j.granados@samsung.com> On Wed 2023-06-21 11:09:57, Joel Granados wrote: > In order to remove the end element from the ctl_table struct arrays, we > explicitly define the size when registering the targes. We add a size > argument to the register_sysctl_init call and pass an ARRAY_SIZE for all > the callers. This does not explain the motivatin why the end element is removed. I agree with Jiri that saving 9k is a questionable gain. According to the cover letter it saved 0,00%. It is because it saved 9k with allyes config which produces huge kernel. IMHO, the 9k might be interesting only for a tiny kernel. But I guess that it would safe much less bytes there. And the code with the added ARRAY_SIZE() parameter looks worse than before. > diff --git a/kernel/printk/sysctl.c b/kernel/printk/sysctl.c > index c228343eeb97..28f37b86414e 100644 > --- a/kernel/printk/sysctl.c > +++ b/kernel/printk/sysctl.c > @@ -81,5 +81,6 @@ static struct ctl_table printk_sysctls[] = { > > void __init printk_sysctl_init(void) > { > - register_sysctl_init("kernel", printk_sysctls); > + register_sysctl_init("kernel", printk_sysctls, > + ARRAY_SIZE(printk_sysctls)); > } Is register_sysctl_init() still ready to handle the last empty element, please? I am not in Cc on the related patches. Best Regards, Petr From xen-devel-bounces@lists.xenproject.org Wed Jun 21 11:38:18 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 11:38:18 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552674.862877 (Exim 4.92) (envelope-from ) id 1qBwAC-00059g-TL; Wed, 21 Jun 2023 11:38:16 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552674.862877; Wed, 21 Jun 2023 11:38:16 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBwAC-00059Z-Qm; Wed, 21 Jun 2023 11:38:16 +0000 Received: by outflank-mailman (input) for mailman id 552674; Wed, 21 Jun 2023 11:38:14 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBwAA-00059I-Rh; Wed, 21 Jun 2023 11:38:14 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBwAA-0005Vr-Kw; Wed, 21 Jun 2023 11:38:14 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBwAA-0002ud-BA; Wed, 21 Jun 2023 11:38:14 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qBwAA-00077n-AR; Wed, 21 Jun 2023 11:38:14 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=Kn3G7jNmSSnGiqyiLE+Hr9J4GbfOnagq+2HJMYHtwFg=; b=X2uVxBdrOg6oGmMdV3xx/8jb0D tKlBAaLO5OlvjVttiUWMfBFIxXP9dWM0acCiZBVa9vmXT8ExbGiObKS2UCk1vSSSQVtv3Ou5wHD2L kqHKMkFWnB+Tt/6Jabz0BidFjqLf3WdgLD3EZx9RsebindvRBLuCeuWZcqbwOGgoJjWM=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable-smoke test] 181532: trouble: blocked/broken/pass X-Osstest-Failures: xen-unstable-smoke:build-armhf::broken:regression xen-unstable-smoke:build-armhf:host-install(4):broken:regression xen-unstable-smoke:test-armhf-armhf-xl:build-check(1):blocked:nonblocking xen-unstable-smoke:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking xen-unstable-smoke:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking xen-unstable-smoke:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: xen=a6120e3fc8fd90f3ed638c6f7a573bfb534af154 X-Osstest-Versions-That: xen=7a25a1501ca941c3e01b0c4e624ace05417f1587 From: osstest service owner Date: Wed, 21 Jun 2023 11:38:14 +0000 flight 181532 xen-unstable-smoke real [real] http://logs.test-lab.xenproject.org/osstest/logs/181532/ Failures and problems with tests :-( Tests which did not succeed and are blocking, including tests which could not be run: build-armhf broken build-armhf 4 host-install(4) broken REGR. vs. 181476 Tests which did not succeed, but are not blocking: test-armhf-armhf-xl 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass version targeted for testing: xen a6120e3fc8fd90f3ed638c6f7a573bfb534af154 baseline version: xen 7a25a1501ca941c3e01b0c4e624ace05417f1587 Last test of basis 181476 2023-06-17 04:00:28 Z 4 days Failing since 181504 2023-06-19 11:00:26 Z 2 days 6 attempts Testing same since 181527 2023-06-20 21:00:31 Z 0 days 2 attempts ------------------------------------------------------------ People who touched revisions under test: Alistair Francis Andrew Cooper Anthony PERARD Henry Wang Jan Beulich Julien Grall Michal Orzel Oleksii Kurochko Roger Pau Monné Stefano Stabellini jobs: build-arm64-xsm pass build-amd64 pass build-armhf broken build-amd64-libvirt pass test-armhf-armhf-xl blocked test-arm64-arm64-xl-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-libvirt pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary broken-job build-armhf broken broken-step build-armhf host-install(4) Not pushing. ------------------------------------------------------------ commit a6120e3fc8fd90f3ed638c6f7a573bfb534af154 Author: Andrew Cooper Date: Wed May 10 20:21:12 2023 +0100 x86: Use printk_once() instead of opencoding it Technically our helper post-dates all of these examples, but it's good cleanup nevertheless. None of these examples should be using fully locked test_and_set_bool() in the first place. No functional change. Signed-off-by: Andrew Cooper Reviewed-by: Jan Beulich Reviewed-by: Kevin Tian commit e5ba5165cae654f4bb5023b74008f57b5649979d Author: Andrew Cooper Date: Tue Jun 13 17:06:47 2023 +0100 xen/evtchn: Purge ERROR_EXIT{,_DOM}() These interfere with code legibility by hiding control flow. Expand and drop them. * Rearrange the order of actions to write into rc, then render rc in the gdprintk(). * Drop redundant "rc = rc" assignments * Switch to using %pd for rendering domains As a side effect, this fixes several violations of MISRA rule 2.1 (dead code - the while() following a goto). No functional change. Signed-off-by: Andrew Cooper Reviewed-by: Julien Grall commit 42473bae2394b6602372ab8b83a9ca294b1e40f4 Author: Michal Orzel Date: Wed Jun 7 11:27:27 2023 +0200 xen/arm: pl011: Add SBSA UART device-tree support We already have all the bits necessary in PL011 driver to support SBSA UART thanks to commit 032ea8c736d10f02672863c6e369338f948f7ed8 that enabled it for ACPI. Plumb in the remaining part for device-tree boot: - add arm,sbsa-uart compatible to pl011_dt_match (no need for a separate struct and DT_DEVICE_START as SBSA is a subset of PL011), - from pl011_dt_uart_init(), check for SBSA UART compatible to determine the UART type in use. Signed-off-by: Michal Orzel Reviewed-by: Henry Wang Reviewed-by: Stefano Stabellini Tested-by: Henry Wang commit 47e3941d2eee347e9c41b311d19048c41e1b33e3 Author: Michal Orzel Date: Wed Jun 7 11:27:26 2023 +0200 xen/arm: pl011: Use correct accessors At the moment, we use 32-bit only accessors (i.e. readl/writel) to match the SBSA v2.x requirement. This should not be the default case for normal PL011 where accesses shall be 8/16-bit (max register size is 16-bit). There are however implementations of this UART that can only handle 32-bit MMIO. This is advertised by dt property "reg-io-width" set to 4. Introduce new struct pl011 member mmio32 and replace pl011_{read/write} macros with static inline helpers that use 32-bit or 16-bit accessors (largest-common not to end up using different ones depending on the actual register size) according to mmio32 value. By default this property is set to false, unless: - reg-io-width is specified with value 4, - SBSA UART is in use. For now, no changes done for ACPI due to lack of testing possibilities (i.e. current behavior maintained resulting in 32-bit accesses). Signed-off-by: Michal Orzel Tested-by: Henry Wang Reviewed-by: Stefano Stabellini commit 4fa2272458114b5e4872f835b803909333d5ccd4 Author: Michal Orzel Date: Wed Jun 7 11:27:25 2023 +0200 xen/arm: debug-pl011: Add support for 32-bit only MMIO There are implementations of PL011 that can only handle 32-bit accesses as oppose to the normal behavior where accesses are 8/16-bit wide. This is usually advertised by setting a dt property 'reg-io-width' to 4. Introduce CONFIG_EARLY_UART_PL011_MMIO32 Kconfig option to be able to enable the use of 32-bit only accessors in PL011 early printk code. Define macros PL011_{STRH,STRB,LDRH} to distinguish accessors for normal case from 32-bit MMIO one and use them in arm32/arm64 pl011 early printk code. Update documentation accordingly. Signed-off-by: Michal Orzel Tested-by: Henry Wang Reviewed-by: Stefano Stabellini commit 655d0798d29b7ac490444b2daf9bffa16d41e822 Author: Michal Orzel Date: Wed Jun 7 11:27:24 2023 +0200 xen/arm: debug-pl011: Use correct accessors Although most PL011 UARTs can cope with 32-bit accesses, some of the old legacy ones might not. PL011 registers are 8/16-bit wide and this shall be perceived as the normal behavior. Modify early printk pl011 code for arm32/arm64 to use the correct accessors depending on the register size (refer ARM DDI 0183G, Table 3.1). Signed-off-by: Michal Orzel Tested-by: Henry Wang Reviewed-by: Stefano Stabellini commit 314a54c1c2805883f50582c40308554a102fdb8a Author: Stefano Stabellini Date: Thu Jun 15 14:27:16 2023 -0700 xen/misra: add rules 1.4 and 2.1 Also add a comment at the top of the file to say rules.rst could be changed. Signed-off-by: Stefano Stabellini Reviewed-by: Bertrand Marquis Reviewed-by: Luca Fancellu commit d95f436c7dc6ccee68e1b77a3b01476ef41add55 Author: Stefano Stabellini Date: Thu Jun 15 14:19:22 2023 -0700 docs/misra: new rules addition For Dir 1.1, a document describing all implementation-defined behaviour (i.e. gcc-specific behavior) will be added to docs/misra, also including implementation-specific (gcc-specific) appropriate types for bit-field relevant to Rule 6.1. Rule 21.21 is lacking an example on gitlab but the rule is straightforward: we don't use stdlib at all in Xen. Signed-off-by: Stefano Stabellini Reviewed-by: Michal Orzel Reviewed-by: Bertrand Marquis commit 43e863a02d81f5fff32763b23d2a39f041f7e62b Author: Andrew Cooper Date: Fri Jun 16 17:28:21 2023 +0100 x86/boot: Clean up early error asm The asm forming early error handling is a mix of local and non-local symbols, and has some pointless comments. Drop the "# Error message" comments, tweaking the style on modified lines, and make the symbols local. However, leave behind one real symbol so this logic disassembles nicely without merging in to acpi_boot_init(), which is the thing that happens to be immediately prior in my build. No functional change. Signed-off-by: Andrew Cooper Reviewed-by: Jan Beulich commit 3a07da55e63d110851c36b0dae32a5dcf00c54b9 Author: Oleksii Kurochko Date: Mon Jun 19 15:47:37 2023 +0200 xen/riscv: introduce reset_stack() function The reason for reset_stack() introduction is that stack should be reset twice: 1. Before jumping to C world at the start of _start() function. 2. After jumping from 1:1 mapping world. Signed-off-by: Oleksii Kurochko Reviewed-by: Alistair Francis commit 652ccd1f4afa56b15cb4863d545deac7d1effb30 Author: Oleksii Kurochko Date: Mon Jun 19 15:47:23 2023 +0200 xen/riscv: add .sbss section to .bss Sometimes variables are located in .sbss section but it won't be mapped after MMU will be enabled. To avoid MMU failures .sbss should be mapped Signed-off-by: Oleksii Kurochko Acked-by: Alistair Francis commit c6df21062beb9a9bc29a3a2ffb652e0bfa185c3a Author: Anthony PERARD Date: Mon Jun 19 15:47:05 2023 +0200 Config.mk: update OVMF to edk2-stable202305 Update to OVMF's latest stable tag. This is been prompt by trying to build Xen on Debian Bookworm, where edk2-stable202108 doesn't build. Also, it's been too long since the last update. Signed-off-by: Anthony PERARD Acked-by: Jan Beulich commit 82b28deb25f37e8422b14493a2efa2852638206d Author: Roger Pau Monné Date: Mon Jun 19 15:46:03 2023 +0200 iommu/vtd: fix address translation for leaf entries Fix two issues related to leaf address lookups in VT-d: * When translating an address that falls inside of a superpage in the IOMMU page tables the fetching of the PTE value wasn't masking of the contiguous related data, which caused the returned data to be corrupt as it would contain bits that the caller would interpret as part of the address. * When the requested leaf address wasn't mapped by a superpage the returned value wouldn't have any of the low 12 bits set, thus missing the permission bits expected by the caller. Take the opportunity to also adjust the function comment to note that when returning the full PTE the bits above PADDR_BITS are removed. Fixes: c71e55501a61 ('VT-d: have callers specify the target level for page table walks') Signed-off-by: Roger Pau Monné Reviewed-by: Jan Beulich Reviewed-by: Kevin Tian commit ea613d2367ac9dca3875997034e8f4aff74ab635 Author: Jan Beulich Date: Mon Jun 19 15:45:07 2023 +0200 SUPPORT.md: write down restriction of 32-bit tool stacks Let's try to avoid giving the impression that 32-bit tool stacks are as capable as 64-bit ones. Signed-off-by: Jan Beulich Acked-by: Julien Grall commit a17fd0feb6b6bbe82550f43d70654d894ed377ec Author: Anthony PERARD Date: Mon Jun 19 10:09:32 2023 +0100 automation: Disable QEMU build with Clang older than 10.0 Since QEMU commit 74a1b256d775 ("configure: Bump minimum Clang version to 10.0"), or QEMU v8.0, Clang 10.0 is now the minimum to build QEMU. QEMU 8.0 fails to build on Ubuntu Bionic. Signed-off-by: Anthony PERARD Acked-by: Andrew Cooper (qemu changes not included) From xen-devel-bounces@lists.xenproject.org Wed Jun 21 11:52:37 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 11:52:37 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552683.862887 (Exim 4.92) (envelope-from ) id 1qBwNu-0007cZ-8n; Wed, 21 Jun 2023 11:52:26 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552683.862887; Wed, 21 Jun 2023 11:52:26 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBwNu-0007cS-5Y; Wed, 21 Jun 2023 11:52:26 +0000 Received: by outflank-mailman (input) for mailman id 552683; Wed, 21 Jun 2023 11:52:24 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBwNs-0007cM-Nq for xen-devel@lists.xenproject.org; Wed, 21 Jun 2023 11:52:24 +0000 Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.129.124]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 14823907-102a-11ee-8611-37d641c3527e; Wed, 21 Jun 2023 13:52:22 +0200 (CEST) Received: from mimecast-mx02.redhat.com (mimecast-mx02.redhat.com [66.187.233.88]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id us-mta-119-gpQihIOlOSOYiHCzefAYzg-1; Wed, 21 Jun 2023 07:52:17 -0400 Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.rdu2.redhat.com [10.11.54.6]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 76AA9104458B; Wed, 21 Jun 2023 11:52:16 +0000 (UTC) Received: from sirius.home.kraxel.org (unknown [10.39.192.126]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 237362166B32; Wed, 21 Jun 2023 11:52:16 +0000 (UTC) Received: by sirius.home.kraxel.org (Postfix, from userid 1000) id C42DC1800381; Wed, 21 Jun 2023 13:52:14 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 14823907-102a-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1687348341; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=xuxGBrFySUpFdaMZyf6lD57o+cjaU24aCglqgfIFZhE=; b=RXJOlxT/5YOCp9g7BvLV7pCX60V1lKzJG8kLj2qK07yTBkDgcV0LS+lOCyxv8qGevIwAsK nDuZSrwHv3KN/wsaZoQF5k0F6Gwk25BE2OgDvVfUfOCqydw9cNRQNUyGQwCHELExJtGFXK /3MV4b6tkzr1od6s3VqtlcspeVYgfUc= X-MC-Unique: gpQihIOlOSOYiHCzefAYzg-1 Date: Wed, 21 Jun 2023 13:52:14 +0200 From: Gerd Hoffmann To: Robert Beckett Cc: "Chen, Jiqian" , =?utf-8?Q?Marc-Andr=C3=A9?= Lureau , Damien Hedde , "Michael S . Tsirkin" , Stefano Stabellini , Anthony PERARD , Roger Pau =?utf-8?B?TW9ubsOp?= , Jan Beulich , "Dr . David Alan Gilbert" , "qemu-devel@nongnu.org" , "xen-devel@lists.xenproject.org" , "Deucher, Alexander" , "Koenig, Christian" , "Hildebrand, Stewart" , Xenia Ragiadakou , "Huang, Honglei1" , "Zhang, Julia" , "Huang, Ray" Subject: Re: [QEMU PATCH 1/1] virtgpu: do not destroy resources when guest suspend Message-ID: References: <20230608025655.1674357-1-Jiqian.Chen@amd.com> <20230608025655.1674357-2-Jiqian.Chen@amd.com> <2164ff79-aa09-d959-cc61-c7a2a21db5e3@collabora.com> <2s33vb2tfogntkyk5laxzcmgexf42mhkpwr2gh3gjvpitav6ez@h5zbmuklzmv5> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: X-Scanned-By: MIMEDefang 3.1 on 10.11.54.6 Hi, > As virtio drivers are by design paravirt drivers ,I think it is reasonable > to accept some knowledge with and cooperation with the host to manage > suspend/resume. Fair point. In any case this needs a feature flag, so guest and host can negotiate whenever this is supported or not. virtio spec needs an update for that, describing the exact behavior. take care, Gerd From xen-devel-bounces@lists.xenproject.org Wed Jun 21 12:01:39 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 12:01:39 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552692.862896 (Exim 4.92) (envelope-from ) id 1qBwWb-0000mW-87; Wed, 21 Jun 2023 12:01:25 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552692.862896; Wed, 21 Jun 2023 12:01:25 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBwWb-0000mP-5B; Wed, 21 Jun 2023 12:01:25 +0000 Received: by outflank-mailman (input) for mailman id 552692; Wed, 21 Jun 2023 12:01:23 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBwWZ-0000mJ-OB for xen-devel@lists.xenproject.org; Wed, 21 Jun 2023 12:01:23 +0000 Received: from EUR01-VE1-obe.outbound.protection.outlook.com (mail-ve1eur01on0613.outbound.protection.outlook.com [2a01:111:f400:fe1f::613]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 561b1d91-102b-11ee-8611-37d641c3527e; Wed, 21 Jun 2023 14:01:21 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by DU0PR04MB9695.eurprd04.prod.outlook.com (2603:10a6:10:321::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.37; Wed, 21 Jun 2023 12:01:19 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6500.036; Wed, 21 Jun 2023 12:01:18 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 561b1d91-102b-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=QbNWdWGHeT7Orn6uoB8M6zVOJ3Qvm+ALJciuP5T2jn2CO6vkYXKbA5gGL5WHyevquRmNUCdc4zo7KfjFdoYqQwL4QrzHokow83N+zI9onPpcJpIjqtuoyVpVceDeV6v6s4OMuVtPkBCdKwj5EQNPurIqD6VDg3RsRPJtAESMPXWt1GsSKk0gX3hxkex8FHR+f/xlwohyhzIarSR1lX2RV8VLCSUuKAHr9pfsjdsIKTQ1OUjyB0TedNzOww0cxSqrw53G8Y/PR87RAYpRrzoj1uqkW05rk70gB9Nsn53VgQczGnOKvCwMafSTBY6ix9jb1oov0srktMIrCFOsRcFizw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=2qc27JLJOW39TUJfs/mU/xG1kL3Dz735MZYTZHw6s5c=; b=FXSyFCKjQ5xn/rmxmkMC56mduFhADe0CgYMXzTkeYntKitAr9SF0cK5HIiGtIZTct1xwq3AhofL0UVjF23Y3AlOldRoLQJZO72fQ+5NhGQp8RFgxPC874rWwQYjGjyhGTshmAgxS4QxnK4//O4snmfq/O/KGHuJQ5iTSJ7UvSW1soHujTRGzidIjgH9orDsL1WlV23b47gfa6FmZarkXIGj2hWDZMEoH3l/xImBy9x+onPJjaEdfV/gsXslGbB0ShV+91T3Ml+vgJfGnRqJzyafoWUIB66BW0NL4IDzfNs05vX4lUD+TeQ26nmToHEMHlY9MPn4Vz/mnmmEdadmRWg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=2qc27JLJOW39TUJfs/mU/xG1kL3Dz735MZYTZHw6s5c=; b=OdeTh7KJ/1NK3F2hKDDLFz5S37CbZmSmdZ48RUjXIbwMY4nXJqA4Ben0gIURf+td7Pm5Mmf1X8A8eoe6JD9QCi8XvFggJWS3QeZTwlJ1B4qQEW3J87eoZU+FUYTw2kPnHEuXtAW52SMYpUxu6sKx8Z8Bv1N2gW1WGvmuOF/V2M1eXTKsc3JB0rTAQJNzkqH4eW+z2Ixu7UDNNJDpRevu9D6Va+nOT+BqqNgfY+7U4lvDeg29uvWt7miRIvB/WKeayq38Dm7zXvrSCDjhKEYIKWQNE9+huwiSFBWP7lRFoaloexoWgSF5XCxv6FtlyKlZ6tHoN6UDj6N9vE/MFKJyFQ== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <955e9e77-ccf3-e18d-50e3-7bfc1c43cf9e@suse.com> Date: Wed, 21 Jun 2023 14:01:16 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v7 11/12] xen/arm: translate virtual PCI bus topology for guests Content-Language: en-US To: Volodymyr Babchuk Cc: Oleksandr Andrushchenko , Stefano Stabellini , Julien Grall , Bertrand Marquis , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , "xen-devel@lists.xenproject.org" References: <20230613103159.524763-1-volodymyr_babchuk@epam.com> <20230613103159.524763-12-volodymyr_babchuk@epam.com> From: Jan Beulich In-Reply-To: <20230613103159.524763-12-volodymyr_babchuk@epam.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR0P281CA0218.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:ac::14) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|DU0PR04MB9695:EE_ X-MS-Office365-Filtering-Correlation-Id: 5b19d8bc-8180-4f09-f7a7-08db724f38ef X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: lqb+HZ2aTehb8sJeGkFV8KVlh+ShbLX/DO9fiiSc/rSjcTyio+t086TE/eSeUMV1NvMK0ffFHIoOAM/fLzYr3KoH8JQfsj6V1Ri46NR+2FdRhjxJHddbTmtjrfMnTFACCSFAlUHA8SEOMRozxZaN4jRTlwN+UKaO/iG9jDnYafn8am6OA82dwhAtGQ5Mc4geFVV+ccjjP2jUCEEw5LCH0nYFi7cI3IKDgo0yCX2oq3DkfiPl1MUqNfPcAPZqohAWMWLYwBwbnIvr80nV8ed/XeCj5sJVQoN714LiqvR3W6WT1W7HJn/PMZ88rPv73kqMd8vXDXsDeVhtIpWsxunu52KwR4+XJPBqtiilRN48INKTcjShCtCFFNShScVRMTe7nrhqoFCAk0jRIUInFDI8jsgoPfHmJ2LRERMHhpz50slbovsn7cEMB2kIQm0qvssg8DNmLOFdc5exYFF1Edel1QzQfjWIVnddwrqpTJOpNJah/mnroQcZwoeCaFxnQSOCE2ui/cFwETHj+QYm4vWAjasjQythvEvKimkQ4J/Gg/69tYzcu7ycdB6Beve11UWrIMB1ptugBHkQlfUygvL2qIzwHEdhbvtTIMRu1Mk2sCFSi/rT0sN1g5MuC4Oz9KW/GvJGaNU4l8LkbTDoJ52X2g== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(346002)(366004)(396003)(376002)(136003)(39860400002)(451199021)(5660300002)(31686004)(8936002)(8676002)(6916009)(4326008)(66946007)(66476007)(66556008)(316002)(2906002)(54906003)(41300700001)(6486002)(478600001)(26005)(53546011)(186003)(36756003)(83380400001)(2616005)(6512007)(6506007)(38100700002)(86362001)(31696002)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?WkJwMG9LaStyeWFLK2xtUDZ0T2IvVkVLMm5CbDl6azBLTDVTQ0dXV203ZGRq?= =?utf-8?B?S3EwSEt4U1FvMnNjcms0eTB4WDZEMzZ0RVZZWHZ1YVRTaUduVTdRUm15dXlY?= =?utf-8?B?Y2lqZm5XVVgwMjZxTVNobktvMTlVQk1ZSmJ4QXcrdVNrU3hDNk9Vd1QwNUdl?= =?utf-8?B?VVp3VXdjT1pwMTZjV3NhdWN2VWRrWE9PNFRjQkNYc3VkN0VmTytkY2NOck52?= =?utf-8?B?N2o5WmNlaHRuTU5FdEQrRkhBRWlickxBQmNqSkIvQTZ4ci9lYlh3WStNQm9S?= =?utf-8?B?SjJHdHFnZDdsditKV3A3UDZhQ1lEekprK0FyaWFmdDZSRy8rYjhTVHN5SVBV?= =?utf-8?B?SDE4UmlTK3Vady9pWm5aZXMwK0dVajl1a29Hd0d5eE1DNEVEcjErdFYwNjJK?= =?utf-8?B?MVI2UXJGbWtKenA0bmNnUW53cnpDdTVGcHN0ZFJLU2dydmFrTk82WllGQWkx?= =?utf-8?B?aHFHN2hlVEdyclFDdk1GN2JrbDhHK3hpOVZzQkJuc1JQWnM4Q2cxZ3NEcndv?= =?utf-8?B?SFpRMm44MjdNb0xEcGRGcG5rQmIxN2NOSGRLYXUvS2lGVTRJMzhQaE1uSnNz?= =?utf-8?B?T3Z3TnBJTDVQL0ljMTl1aTBtcjg4OTVGRHpoRERTdTFubG1maEJyY2lEcWNG?= =?utf-8?B?Z3JLUGhlWDY5UEVzNUd6U2FDWGhIMnpFYVdLR3NFZDl0Y2ZEMGJnTWtvc2Fp?= =?utf-8?B?cytFL3dkRWh6T3JlWG5rSTFVUXFidno2K3Y2VzdVaFpWOE9BUjJtd01YbzZn?= =?utf-8?B?NGlNQUw3WXR1aUtRK1U3MVNHbW1qNlVzNXlPREtGVC96aXJvelBtNUpJYSs2?= =?utf-8?B?bGIwcWhQcWhCY0Jzb3dSUllnQlo2Zkl6MHVJYTVDYVovZEV2RFkxenRJeXpT?= =?utf-8?B?UThPS3JDaXh4UC9wUFpzUmg3SWF0bFBRdnZvRlQvN29JRXNLWHdJdlNZbi9J?= =?utf-8?B?RXNTeEd5OGQ4VTNqcHV0S2VtaExjU0tTcEQyTXdNTVY1b21VbXk5K3FrR2pH?= =?utf-8?B?aVNWc2ZwZE1PMG9DRm5NZmhLZGkrZUNvZXdsSHFIR2pTaURtMFMzTm1oRDRX?= =?utf-8?B?RFk1ZkVwU2ZZNzk3QWszeHVnN3dibys4ekIyYjQ4TW44RHhFNDBvWnZtelJB?= =?utf-8?B?NGVsbkMvaEM2ODNhWE83MGZOMUNiTWE1WmJ3Q0lzS1hEN0xtR1E2T2RGUEl2?= =?utf-8?B?MjJObU4xamw0eGFQOTMyWUVGSm9ubXVmMG5kZ2R2MEJKY015U0NHYnhjTURF?= =?utf-8?B?R2lTRzJMN0Nvd09JSVpTblpXYWZUU3QzOXpTdkIzdk1hUkdiQm1HZGxrRlpr?= =?utf-8?B?R0wrS0dML2diNUxkelFMVDJwbFRwd3JPeHk2ZitReDd5bFlRc0l5ajR6NnFG?= =?utf-8?B?UlhvT0p0ZnVXdG92Z3YwSUU1bTNBSFNkZGlDODVPS0oranFkVnArNDR0ejFG?= =?utf-8?B?UTlseGY1NlpPUFJyb2pucjAvbFZvWXgvd2lhVnhIbFRSWUhIYjUvajBtTmFK?= =?utf-8?B?UDNuQVNIVS8wNDNvTEJnNHNsSjN5OGkzenB3ekVqNno2UDlhMUNPSEk5bWhZ?= =?utf-8?B?djYwZ0lwc1gzNG40TXlVai9DQ3JCaWhCT0lnUWd6eFJEYUszZVpJWkFrNlJM?= =?utf-8?B?QUMycGx0UGdQS2dZUDNkcDJFNWlEbUNmajFOVlhobVdDUFZVeDh5UGxyK2s0?= =?utf-8?B?MUpDS2krZ05Eb1pDd0FkTDI2SXZCRytNYTNmUTVvY2dRT3Ntang2aXZJeDl5?= =?utf-8?B?ZWxnOEpqV3cvNVZkR1VuZFBXQjFjM25QZktnQkJ2ekVSTm1CempERzVHTVN0?= =?utf-8?B?bHRzV0k0Vlh1Ykd1YTdTSTJzaXJJdVl3ZzBDNGhTd3BSKzljcGNUd0g5UTUx?= =?utf-8?B?MG5lUjhTejFQMjUveEd1SnF4bGIrbFdRSWF4N0tJR3lZNGZaUmVqeEF5R2Vr?= =?utf-8?B?TjNNSVdnQ1BjVHRRbEN6U1IxV3pWNXlGNmU4bHFSa3lJUWp5aGRiaGdsOTBI?= =?utf-8?B?cldIUy9IS3dpc3RQb0RvYXpURzhhWWhMRkpCQnRoM2NobGIyamJXbjcrVlQ4?= =?utf-8?B?eVVuUEdkSEVPUFJEN0czMWJqeFcxYk1qNVQ5b2FEd0w1SlRrY2ZWVERTZjZt?= =?utf-8?Q?0bDmmTtjEi4XHdQ98OAJp11So?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 5b19d8bc-8180-4f09-f7a7-08db724f38ef X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Jun 2023 12:01:18.8368 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: cVqB2z2JeLRtlHG7nQanac/qL5q/3rnUFQbAKkZJRBCHpxRtYH7RdNXij9ZtYWGJ4EP0tQ6d4rpZVFucnSauzQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU0PR04MB9695 On 13.06.2023 12:32, Volodymyr Babchuk wrote: > --- a/xen/drivers/vpci/vpci.c > +++ b/xen/drivers/vpci/vpci.c > @@ -180,6 +180,44 @@ static void vpci_remove_virtual_device(const struct pci_dev *pdev) > write_unlock(&pdev->domain->vpci_rwlock); > } > > +/* > + * Find the physical device which is mapped to the virtual device > + * and translate virtual SBDF to the physical one. > + */ > +bool vpci_translate_virtual_device(struct domain *d, pci_sbdf_t *sbdf) > +{ > + struct pci_dev *pdev; > + > + ASSERT(!is_hardware_domain(d)); > + > + read_lock(&d->vpci_rwlock); > + pcidevs_lock(); > + for_each_pdev( d, pdev ) > + { > + bool found; > + > + if ( !pdev->vpci ) > + continue; > + > + spin_lock(&pdev->vpci->lock); Following the description of patch 1, why does this lock need acquiring here? The r/w lock acquired above should already guard against modification. > + found = pdev->vpci && (pdev->vpci->guest_sbdf.sbdf == sbdf->sbdf); The LHS of the && is pointless here - when acquiring the lock you have already de-referenced pdev->vpci. > + spin_unlock(&pdev->vpci->lock); > + > + if ( found ) > + { > + /* Replace guest SBDF with the physical one. */ > + *sbdf = pdev->sbdf; > + pcidevs_unlock(); > + read_unlock(&d->vpci_rwlock); > + return true; What use is the result to the caller with all locks dropped, and hence state possibly having changed before the caller gets a chance to look at the result? If there are reason why this is okay, you want to (a) spell out those reasons in the description and (b) document this restriction in a comment, to warn people who may want to (re)use this function. But really I think the caller needs to hold a suitable lock until after the result from here was consumed. Jan From xen-devel-bounces@lists.xenproject.org Wed Jun 21 12:06:29 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 12:06:29 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552697.862906 (Exim 4.92) (envelope-from ) id 1qBwbN-0001OG-R4; Wed, 21 Jun 2023 12:06:21 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552697.862906; Wed, 21 Jun 2023 12:06:21 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBwbN-0001O9-OE; Wed, 21 Jun 2023 12:06:21 +0000 Received: by outflank-mailman (input) for mailman id 552697; Wed, 21 Jun 2023 12:06:20 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBwbM-0001O3-DW for xen-devel@lists.xenproject.org; Wed, 21 Jun 2023 12:06:20 +0000 Received: from EUR05-AM6-obe.outbound.protection.outlook.com (mail-am6eur05on2062c.outbound.protection.outlook.com [2a01:111:f400:7e1b::62c]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 07ad3a1d-102c-11ee-b236-6b7b168915f2; Wed, 21 Jun 2023 14:06:19 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by DU0PR04MB9695.eurprd04.prod.outlook.com (2603:10a6:10:321::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.37; Wed, 21 Jun 2023 12:06:17 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6500.036; Wed, 21 Jun 2023 12:06:17 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 07ad3a1d-102c-11ee-b236-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=eEZb47cg5Mn5wkYIUpKrHUs5Ydvz3MHOxF2/RKZmoT0XsMC/OR3gkPI7a0x8HY2xj1vhW769et7N1vEuSapCtiIA89Qtuy1INKUFexjRw2bpICPCKWeaG135xiL2GaO1FUt2NjddNv/Dw6olF6otMIDSxMEBGYujRlOBX20lJSicMXW9OnXkCbpsm3wQeG2hlcNIEsF8CjG9b4D37dO2M8MS+RzGydgp0XaFxNAdKYZynBYfNBDh4U25tCsBOOVgGUtlhWhyrfYDVd2F7vn4YSSenHPkm/4AVOBgOEgCdPdvuUBTmHA+LzQGf5JCo9+HSZO/j485OZJjFzxgk6GDfg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=HzDCKPXt3E150ts+tNMv5iwq+ySNu/Tkpv8Q+i81QZ0=; b=Duo/o7anLYllYXK9JsyCOOMnafY7pkU2flIw5BrxWiFpgBYEd4Np+qjVxn+ITb2qSC7dselXdiHaMZPlXtm9tXFZXdPbhUM7kVh9xE/LDHXd105qlRCe/Jtj+yao2tBFq7DCktMWjoJqhXmwZ7yjSKOG3NQP6OIroLlY3/XoXLtMeWfGWqMRgEt60YWDbV0a3kGqYxaPwP63jCfWaZZSp46tzfu9njOXQhwDqiNsipceKfi9ksZQzjgTRlk3nK+Ti/q+gv3+g7NUOPu65RfX2dFRtbz/Rv1vvLvu/6UMmjtU8YopjO4GQb3N2DbOOeo32Isfmyn8QR+ArlLiGakSdg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=HzDCKPXt3E150ts+tNMv5iwq+ySNu/Tkpv8Q+i81QZ0=; b=I5wW4xT6AhMP7KqNVlbVVxUO95tLGyU1icZoP3dBiJAa6zg0bcOXhdC/m/dirvSqPn3jZZgMXLGd6+2ol2nwLrMwUrmhYQUg/qCVkdjqLhtsSbfAQ356bfbCCsQfX2U76wMg8Zl3e+KOV92NGR0iL7AnFPWix8S6inULRvI4jCS6ak4DdF4yWkcMRzf4CgNjK/MC3qg2CZfz1qpzlzM/ceblLpjOOm5Uc7mfaDaQQUkWQHg123fFYmIX7VMkgQYpbvOOnEYTXNkUzkxZ8X/A4ac92qdiQkVnERiQ+c1Gag1P/Q1lZtdVVNRa0EWA6OMFf900G9GWNd22UyhoCKTQIQ== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: Date: Wed, 21 Jun 2023 14:06:14 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v7 10/12] vpci: add initial support for virtual PCI bus topology Content-Language: en-US To: Volodymyr Babchuk Cc: Oleksandr Andrushchenko , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Andrew Cooper , George Dunlap , Julien Grall , Stefano Stabellini , Wei Liu , "xen-devel@lists.xenproject.org" References: <20230613103159.524763-1-volodymyr_babchuk@epam.com> <20230613103159.524763-11-volodymyr_babchuk@epam.com> From: Jan Beulich In-Reply-To: <20230613103159.524763-11-volodymyr_babchuk@epam.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR0P281CA0159.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:b3::15) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|DU0PR04MB9695:EE_ X-MS-Office365-Filtering-Correlation-Id: f4de9c5d-f30e-443e-d609-08db724feaad X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: cpD7pd4cbNb9F/s7BugitajmdrSUWmgKgvxJAw2xyDFUWye+/TO00S/lSr9kmqbAhJIQ9mpmfoiW2ddoMUMBn8F1+/Kgc4Vcm80glozgngyvUlv5UmY5NIqPUhkQ2gkW9hzZaUNYyTcr0QDxppKoHAvV8Ae0IjnE+JPdB1eZ5u/pAc78bVo5Q8bFGnjhRXJtZJk2uYR0lv+iF3V5dNqvQIodaiYPpjH3h7Aa964Zj4U6+9mBomjkG4ZUjC2dXsN7xMxKny3PHAqDvgsS+28jEuKugOQCYMggxU38o5rxMGzU3ZYukU0K7sbhnLqbFWjsAtQhWhCCD0mqD1B3wtxPmikRZ2XJitp8nMukoYAdf1s/DMum1IHzl+ehUw69ry3JneFXnpga5b3CI1u/Aht3Dqn3ZGeeDMlz+i5qhp+GT9jcY42ujmb2Q86XG5zLnmS2gCwgcHNN0BWm/6UztZ/wnKNA9nfMkVezI1KKTOMmeAWbuG4ulwHd+f3HIgs8Ly11pIh02+YYV6OeGJWBCJz9d//NPuJ5HRL2wv8gPK4InSuUumHA+hLqpcNNMae9DdsS4b6YFadnd46AtTmv4W/crDbo4QUopa9DTdQxi25r+4LN2Lc1Ku8Mbgg2dVuk0LTRa8utPxr5a+JkKyasmygqyA== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(346002)(366004)(396003)(376002)(136003)(39860400002)(451199021)(5660300002)(31686004)(8936002)(8676002)(6916009)(4326008)(66946007)(66476007)(66556008)(316002)(2906002)(54906003)(41300700001)(6486002)(478600001)(6666004)(26005)(53546011)(186003)(36756003)(83380400001)(2616005)(6512007)(6506007)(38100700002)(86362001)(31696002)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?dG15TVZ5cXBrSHFYcGk5a0Rqa1lyR1M0OVVYUmY3UVVUTnhNUGxmMytlTkRL?= =?utf-8?B?WDJiREhGZ1hqRkJPUnE1OVlnMFk3WmRCbVZrQS9XVXdxRHpKNHNMLzd2TWJw?= =?utf-8?B?MTdUendHSW9NNXNZdEJaczdzUE10S2ZLTlVlSldhdFBFdFVEZ2RPTVNVUkxj?= =?utf-8?B?UFpXQnBPSXRDeTBWcXExbG9pMWt3eGVQa2NxYXJ4U1lYb1YveEdkTkpUZTR5?= =?utf-8?B?cWNGN1ZFamZENUJpSFBjQ0lUL3NZV2p4Z01GeGdtVkdkTU83TU1CVVAzS1VR?= =?utf-8?B?dDBQUCtLMmdkdDJ0WHJzTmhPb2d3SlYwQWZHbGMvTHluTGpibDJPU2wwSzZl?= =?utf-8?B?b3d2cElZbWt2Tjd3bnZtVnpvMFpjL056b1daZXo2N0xIWnNwVytsSW1mcjM2?= =?utf-8?B?TXJJV0NuT3QyTEtEaEdJdjh2enJSaHlGVUhvSkFQVkZ0RVYrb2cwVDlPditx?= =?utf-8?B?WUhDMGpvc0dFVGhBYXl1L2ZWTGZ4TldkM0JMdTZGUzR0UUs1R2IzTTVFd3pB?= =?utf-8?B?MThNaTMyK01CQkxWRndxM005bHppUk0ybDlyVXhKWk1KOS9wOFFPMFZhY3Fr?= =?utf-8?B?QXVnOGl5dU5iUWQ0MFpaQkJ5Zm5lZHM4VSsrZk5NS3laR1BOQTN6WTBpTjJh?= =?utf-8?B?ZmFrK2xCT01qaFZDdjNHUWJFZ2Z4V0tVUkJUdDY0RUp4TXRtV1dSUU1GZUJT?= =?utf-8?B?N2k2QjY3cElhRmpRaHMyQW9FMkk2NWc1RWNyUHJwd0V2cHZ4RmVSYXdCM3Nv?= =?utf-8?B?amkxcnowdVZVMytJR1pxNmlOdGQreXNocnJPVkRRcE5mZlF5WjVUL0NCM2Nv?= =?utf-8?B?eGtvNk5KNDZPKzhRbWhtUy8zVnNVSEhSSXdoeVBTdmpidG1YVWErcVUrdGNC?= =?utf-8?B?MTZXOUxNaHJUWEVyeXJTd1k2Zk1MczdkMTNPTzdGRjhTR0x6aDV6ZzRmVERT?= =?utf-8?B?OFlESjJxbU9sS0VtcFhRcUs3SmlxdmhwZ2xFWkR1a1QwNzBydDJwU0phYmZW?= =?utf-8?B?T0ptOWkwRnJET1ZFU3huMWVxTk1FUXdWVzZIQXAxakZKOFZDa1FJQTgvUmN1?= =?utf-8?B?MldjMkl2TFFMMVRjQzZPWXpZZ3VqdW1MUlUzTEwyejdzUUZFUVZRYWNHZkdC?= =?utf-8?B?L05EVTREY01TV3ZxdHVYbHR0QmlGSnk0QXgzU2Npamt6bGgyTnY0bGkzS2tC?= =?utf-8?B?dFdUQWcvYnc4eU1rcUxrZmM2NVZ1TThrWERHdGtzRWhCa3kyYXkvaHg1eEpZ?= =?utf-8?B?STU3VFVtTkRhRzNqdlU5RnYzMDJtRlU1V25FQ0lIaWdmU01MV3M1UHNOS2ZP?= =?utf-8?B?SEkrL3h4QUlRSlhIMDgyNmF2ZmFSYWlyWStWTEpJa1lLR0xYRlZuSERoOWNQ?= =?utf-8?B?VlN1RmhSRjVIL2cxNkxQeFZ2cE5abk1YcjY2VW1KKzhuQXZIVUF4akF4djE0?= =?utf-8?B?amlZLzl6aFgwOVBEMmxzNW1LU3E3YkxXMlViV2liWXN1bmE0YnlETjlpMnVD?= =?utf-8?B?OWgvMjlrVVE5YktQalArMDhzRTFRZW95SFpkanJNTEg0b2JRdkRJZm10Z0NQ?= =?utf-8?B?NnBoZ2RhYTBjZXNmTWtCTHIwd3NUKzBEVXhYU0pQK2czREIwZW4wVGhDQVN5?= =?utf-8?B?NEROYnh2NlczcVZ4VnpseSt4ejQwV0ljS2ZRajRDMWc2NjZvRWpqZThuVU5t?= =?utf-8?B?bTNGSWdqM29KRnJJRjdYSjlBUllqM2JaTkdUT08rWWd1a0wrN2t3bnRrQXM5?= =?utf-8?B?SG1FeUJpVDhnaWFWaC9Neitia1pDT2pXU2lpTDFsSnBTSE1tL0QvcnZhb0hD?= =?utf-8?B?Wm1nNGcxanBsaUEreTNzdmxjZ0ZmUGNQSzhGS0d0UjdYT2tQMzJaV2hBMS9S?= =?utf-8?B?Kzg3T2ZSVVJqTTZLVm1Tanh5dERVU2tWSmxJeWJRZ0V0eC9VQmt6RXdodUxu?= =?utf-8?B?Vk5CNWdaSFRvVytXRUlXUkpTdllaaE8yTk9uYyt1S28wTGR5N3BOdTZNVjhP?= =?utf-8?B?dGtNVnVLZW0reWtXelBWVEVWQW80Q0FBaXRNN0hLZ3daRVNFUi9VTU50R1d5?= =?utf-8?B?ZnIwd1FnN0pjd3J6UTI2TDlkSWtvTHZyRy9rZ01wV2cvK2tYUGpSazNlTllO?= =?utf-8?Q?v4XItrp/JCiJ7dIfzc4xhzL/B?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: f4de9c5d-f30e-443e-d609-08db724feaad X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Jun 2023 12:06:17.0069 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: oDHARe2s5+mErQvfObvxFlMkTVKpcLr4XQLMoEnMyTbLXs8/suuPreV07Cnz2X7u33aT5ZEq92tBx7eL2mXg/w== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU0PR04MB9695 On 13.06.2023 12:32, Volodymyr Babchuk wrote: > @@ -121,6 +124,62 @@ int vpci_add_handlers(struct pci_dev *pdev) > } > > #ifdef CONFIG_HAS_VPCI_GUEST_SUPPORT > +static int add_virtual_device(struct pci_dev *pdev) > +{ > + struct domain *d = pdev->domain; > + pci_sbdf_t sbdf = { 0 }; > + unsigned long new_dev_number; > + > + if ( is_hardware_domain(d) ) > + return 0; > + > + ASSERT(pcidevs_locked()); > + > + /* > + * Each PCI bus supports 32 devices/slots at max or up to 256 when > + * there are multi-function ones which are not yet supported. > + */ > + if ( pdev->info.is_extfn ) > + { > + gdprintk(XENLOG_ERR, "%pp: only function 0 passthrough supported\n", > + &pdev->sbdf); > + return -EOPNOTSUPP; > + } > + > + new_dev_number = find_first_zero_bit(d->vpci_dev_assigned_map, > + VPCI_MAX_VIRT_DEV); > + if ( new_dev_number >= VPCI_MAX_VIRT_DEV ) > + return -ENOSPC; > + > + __set_bit(new_dev_number, &d->vpci_dev_assigned_map); Since the find-and-set can't easily be atomic, the lock used here ( asserted to be held above) needs to be the same as ... > + /* > + * Both segment and bus number are 0: > + * - we emulate a single host bridge for the guest, e.g. segment 0 > + * - with bus 0 the virtual devices are seen as embedded > + * endpoints behind the root complex > + * > + * TODO: add support for multi-function devices. > + */ > + sbdf.devfn = PCI_DEVFN(new_dev_number, 0); > + pdev->vpci->guest_sbdf = sbdf; > + > + return 0; > + > +} > + > +static void vpci_remove_virtual_device(const struct pci_dev *pdev) > +{ > + write_lock(&pdev->domain->vpci_rwlock); > + if ( pdev->vpci ) > + { > + __clear_bit(pdev->vpci->guest_sbdf.dev, > + &pdev->domain->vpci_dev_assigned_map); > + pdev->vpci->guest_sbdf.sbdf = ~0; > + } > + write_unlock(&pdev->domain->vpci_rwlock); ... the one used here. Jan From xen-devel-bounces@lists.xenproject.org Wed Jun 21 12:20:46 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 12:20:46 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552702.862917 (Exim 4.92) (envelope-from ) id 1qBwp5-0003lY-3f; Wed, 21 Jun 2023 12:20:31 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552702.862917; Wed, 21 Jun 2023 12:20:31 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBwp5-0003lR-0y; Wed, 21 Jun 2023 12:20:31 +0000 Received: by outflank-mailman (input) for mailman id 552702; Wed, 21 Jun 2023 12:20:29 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBwp3-0003lH-5l; Wed, 21 Jun 2023 12:20:29 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBwp2-0006Yv-V4; Wed, 21 Jun 2023 12:20:28 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBwp2-0005Tx-Ej; Wed, 21 Jun 2023 12:20:28 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qBwp2-0000se-E9; Wed, 21 Jun 2023 12:20:28 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=1XWC883W7pYSWDYALqIN2c/sNTYjBAw9FOQu8JLzZZc=; b=vAPOzY26xWstJ/kHiKjMn0khv9 3Hd8US4tZNOoqlr3I44aVcdorK6AHOmKZxPpT3ycp9OiNtsWHuvxNJnX0o3EcGFjnhCmpAb0f974k PYiM2oNQmyfWJ2IYn2eB5mpM+KF55ToAkMIn7AYqQXL+EsUOHa6mkR0D++62Bp6cmTZA=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable test] 181528: trouble: blocked/broken/fail/pass X-Osstest-Failures: xen-unstable:build-armhf::broken:regression xen-unstable:build-armhf:host-install(4):broken:regression xen-unstable:build-armhf-libvirt:build-check(1):blocked:nonblocking xen-unstable:test-armhf-armhf-examine:build-check(1):blocked:nonblocking xen-unstable:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking xen-unstable:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking xen-unstable:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking xen-unstable:test-armhf-armhf-xl:build-check(1):blocked:nonblocking xen-unstable:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking xen-unstable:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking xen-unstable:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking xen-unstable:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking xen-unstable:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking xen-unstable:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking xen-unstable:test-amd64-amd64-libvirt-vhd:guest-start/debian.repeat:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:windows-install:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: xen=7a25a1501ca941c3e01b0c4e624ace05417f1587 X-Osstest-Versions-That: xen=7a25a1501ca941c3e01b0c4e624ace05417f1587 From: osstest service owner Date: Wed, 21 Jun 2023 12:20:28 +0000 flight 181528 xen-unstable real [real] http://logs.test-lab.xenproject.org/osstest/logs/181528/ Failures and problems with tests :-( Tests which did not succeed and are blocking, including tests which could not be run: build-armhf broken build-armhf 4 host-install(4) broken REGR. vs. 181498 Tests which did not succeed, but are not blocking: build-armhf-libvirt 1 build-check(1) blocked n/a test-armhf-armhf-examine 1 build-check(1) blocked n/a test-armhf-armhf-libvirt 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-qcow2 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-raw 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a test-armhf-armhf-xl-arndale 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit1 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-multivcpu 1 build-check(1) blocked n/a test-armhf-armhf-xl-rtds 1 build-check(1) blocked n/a test-armhf-armhf-xl-vhd 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-vhd 19 guest-start/debian.repeat fail like 181498 test-amd64-amd64-xl-qemuu-win7-amd64 12 windows-install fail like 181498 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 181513 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop fail like 181513 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 181513 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 181513 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop fail like 181513 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop fail like 181513 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 181513 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop fail like 181513 test-amd64-i386-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-i386-xl-pvshim 14 guest-start fail never pass test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-i386-libvirt 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-i386-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass version targeted for testing: xen 7a25a1501ca941c3e01b0c4e624ace05417f1587 baseline version: xen 7a25a1501ca941c3e01b0c4e624ace05417f1587 Last test of basis 181528 2023-06-21 01:53:38 Z 0 days Testing same since (not found) 0 attempts jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64-xtf pass build-amd64 pass build-arm64 pass build-armhf broken build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt blocked build-i386-libvirt pass build-amd64-prev pass build-i386-prev pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-xtf-amd64-amd64-1 pass test-xtf-amd64-amd64-2 pass test-xtf-amd64-amd64-3 pass test-xtf-amd64-amd64-4 pass test-xtf-amd64-amd64-5 pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl blocked test-amd64-i386-xl pass test-amd64-coresched-i386-xl pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-i386-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-i386-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-i386-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-i386-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-i386-qemut-rhel6hvm-amd pass test-amd64-i386-qemuu-rhel6hvm-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-i386-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-freebsd10-amd64 pass test-amd64-amd64-qemuu-freebsd11-amd64 pass test-amd64-amd64-qemuu-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-i386-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-i386-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-i386-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-amd64-i386-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale blocked test-amd64-amd64-examine-bios pass test-amd64-i386-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 blocked test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 blocked test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine blocked test-amd64-i386-examine pass test-amd64-i386-freebsd10-i386 pass test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-i386-qemut-rhel6hvm-intel pass test-amd64-i386-qemuu-rhel6hvm-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt blocked test-amd64-i386-libvirt pass test-amd64-amd64-livepatch pass test-amd64-i386-livepatch pass test-amd64-amd64-migrupgrade pass test-amd64-i386-migrupgrade pass test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu blocked test-amd64-amd64-pair pass test-amd64-i386-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-i386-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-i386-xl-pvshim fail test-amd64-amd64-pygrub pass test-armhf-armhf-libvirt-qcow2 blocked test-amd64-amd64-xl-qcow2 pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw blocked test-amd64-i386-libvirt-raw pass test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-amd64-i386-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-i386-examine-uefi pass test-amd64-amd64-libvirt-vhd fail test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd blocked test-amd64-i386-xl-vhd pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary broken-job build-armhf broken broken-step build-armhf host-install(4) Published tested tree is already up to date. From xen-devel-bounces@lists.xenproject.org Wed Jun 21 13:12:25 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 13:12:25 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552715.862926 (Exim 4.92) (envelope-from ) id 1qBxd4-0000i8-1w; Wed, 21 Jun 2023 13:12:10 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552715.862926; Wed, 21 Jun 2023 13:12:10 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBxd3-0000i1-Vf; Wed, 21 Jun 2023 13:12:09 +0000 Received: by outflank-mailman (input) for mailman id 552715; Wed, 21 Jun 2023 13:12:08 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBxd2-0000hv-Ej for xen-devel@lists.xenproject.org; Wed, 21 Jun 2023 13:12:08 +0000 Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 384813a0-1035-11ee-b236-6b7b168915f2; Wed, 21 Jun 2023 15:12:06 +0200 (CEST) Received: from [192.168.1.143] (unknown [151.44.212.241]) by support.bugseng.com (Postfix) with ESMTPSA id 9A60C4EE0737; Wed, 21 Jun 2023 15:12:02 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 384813a0-1035-11ee-b236-6b7b168915f2 Message-ID: Date: Wed, 21 Jun 2023 15:11:58 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.12) Gecko/20050929 Thunderbird/1.0.7 Fedora/1.0.7-1.1.fc4 Mnenhy/0.7.3.0 Subject: Re: [XEN PATCH v2] docs/misra: document the C dialect and translation toolchain assumptions. Content-Language: en-US To: Jan Beulich Cc: roger.pau@citrix.com, bertrand.marquis@arm.com, michal.orzel@amd.com, xenia.ragiadakou@amd.com, ayan.kumar.halder@amd.com, consulting@bugseng.com, Andrew Cooper , George Dunlap , Julien Grall , Stefano Stabellini , Wei Liu , xen-devel@lists.xenproject.org References: <807743af-c1fe-45d0-1919-a7eb4d244a21@suse.com> From: Roberto Bagnara In-Reply-To: <807743af-c1fe-45d0-1919-a7eb4d244a21@suse.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit On 20/06/23 16:52, Jan Beulich wrote: > On 20.06.2023 14:10, Roberto Bagnara wrote: >> + * - Non-standard tokens >> + - ARM64, X86_64 >> + - _Static_assert: >> + see Section "2.1 C Language" of GCC_MANUAL. >> + asm, __asm__: >> + see Sections "6.48 Alternate Keywords" and "6.47 How to Use Inline Assembly Language in C Code" of GCC_MANUAL. >> + __volatile__: >> + see Sections "6.48 Alternate Keywords" and "6.47.2.1 Volatile" of GCC_MANUAL. >> + __const__, __inline__, __inline: >> + see Section "6.48 Alternate Keywords" of GCC_MANUAL. >> + typeof, __typeof__: >> + see Section "6.7 Referring to a Type with typeof" of GCC_MANUAL. >> + __alignof__, __alignof: >> + see Sections "6.48 Alternate Keywords" and "6.44 Determining the Alignment of Functions, Types or Variables" of GCC_MANUAL. >> + __attribute__: >> + see Section "6.39 Attribute Syntax" of GCC_MANUAL. >> + __builtin_types_compatible_p: >> + see Section "6.59 Other Built-in Functions Provided by GCC" of GCC_MANUAL. >> + __builtin_va_arg: >> + non-documented GCC extension. >> + __builtin_offsetof: >> + see Section "6.53 Support for offsetof" of GCC_MANUAL. >> + __signed__: >> + non-documented GCC extension. > > I'd like to note that there is a patch [1] pending which removes all uses > of this extension. Hopefully in Prague we can settle on how to progress > this ... > > Jan > > [1] https://lists.xen.org/archives/html/xen-devel/2023-02/msg00445.html Ok, removed from the document and from the tool configuration. From xen-devel-bounces@lists.xenproject.org Wed Jun 21 13:12:53 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 13:12:53 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552720.862936 (Exim 4.92) (envelope-from ) id 1qBxdl-0001CR-CC; Wed, 21 Jun 2023 13:12:53 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552720.862936; Wed, 21 Jun 2023 13:12:53 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBxdl-0001CK-9H; Wed, 21 Jun 2023 13:12:53 +0000 Received: by outflank-mailman (input) for mailman id 552720; Wed, 21 Jun 2023 13:12:52 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBxdk-0000hv-En for xen-devel@lists.xenproject.org; Wed, 21 Jun 2023 13:12:52 +0000 Received: from smtp-out2.suse.de (smtp-out2.suse.de [2001:67c:2178:6::1d]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 535f8259-1035-11ee-b236-6b7b168915f2; Wed, 21 Jun 2023 15:12:51 +0200 (CEST) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by smtp-out2.suse.de (Postfix) with ESMTPS id 01D411FE58; Wed, 21 Jun 2023 13:12:51 +0000 (UTC) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id C2B45134B1; Wed, 21 Jun 2023 13:12:50 +0000 (UTC) Received: from dovecot-director2.suse.de ([192.168.254.65]) by imap2.suse-dmz.suse.de with ESMTPSA id NxZ0LlL3kmQKYQAAMHmgww (envelope-from ); Wed, 21 Jun 2023 13:12:50 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 535f8259-1035-11ee-b236-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1; t=1687353171; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version: content-transfer-encoding:content-transfer-encoding; bh=dSMeF9skFmtCn8hLggDS/2RupwvwvzyY4wh88cjmpM4=; b=AEBk+VKsouIEGMeIlFU05Rw/AfKxlJeP1JCeS/fyO3wICryTAb6Qc+ubGBrmnQMTpr3EUG IBjQZ2XuvxJtNeDkxrCOVtYX3TzJZW//o6S/5VDNxKmmwULOf7dDRaKXoV0e/MaH1ZPu2L cboQc8Xya1NJoEfTVHQR87RGo+ysnQo= From: Petr Pavlu To: jgross@suse.com, sstabellini@kernel.org, oleksandr_tyshchenko@epam.com Cc: xen-devel@lists.xenproject.org, linux-kernel@vger.kernel.org, Petr Pavlu Subject: [PATCH 0/2] Fix Linux dom0 boot on a QEMU/KVM virtual machine Date: Wed, 21 Jun 2023 15:12:12 +0200 Message-Id: <20230621131214.9398-1-petr.pavlu@suse.com> X-Mailer: git-send-email 2.35.3 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Fix two problems that prevent booting Linux dom0 on a QEMU/KVM virtual machine, which is sometimes useful for testing purposes. Petr Pavlu (2): xen/virtio: Fix NULL deref when a bridge of PCI root bus has no parent xen/virtio: Avoid use of the dom0 backend in dom0 drivers/xen/grant-dma-ops.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) -- 2.35.3 From xen-devel-bounces@lists.xenproject.org Wed Jun 21 13:12:55 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 13:12:55 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552721.862947 (Exim 4.92) (envelope-from ) id 1qBxdn-0001SF-Jj; Wed, 21 Jun 2023 13:12:55 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552721.862947; Wed, 21 Jun 2023 13:12:55 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBxdn-0001S8-GM; Wed, 21 Jun 2023 13:12:55 +0000 Received: by outflank-mailman (input) for mailman id 552721; Wed, 21 Jun 2023 13:12:54 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBxdm-0000hv-EO for xen-devel@lists.xenproject.org; Wed, 21 Jun 2023 13:12:54 +0000 Received: from smtp-out2.suse.de (smtp-out2.suse.de [2001:67c:2178:6::1d]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 54d28229-1035-11ee-b236-6b7b168915f2; Wed, 21 Jun 2023 15:12:53 +0200 (CEST) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by smtp-out2.suse.de (Postfix) with ESMTPS id A60E31FE59; Wed, 21 Jun 2023 13:12:53 +0000 (UTC) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id 85CD4134B1; Wed, 21 Jun 2023 13:12:53 +0000 (UTC) Received: from dovecot-director2.suse.de ([192.168.254.65]) by imap2.suse-dmz.suse.de with ESMTPSA id EJfUH1X3kmQKYQAAMHmgww (envelope-from ); Wed, 21 Jun 2023 13:12:53 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 54d28229-1035-11ee-b236-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1; t=1687353173; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=OH3D5BL2oDz82o2JgztoWpCZ3H7tiujkv+/UGcR2f4o=; b=h02yh0HWqzeK9gNj1xtBPEjcJvvwrqcyOr8xi/AVYIcPP7VVzj426Zq8yjXQYSvoDStDRh uGkQ5WNDPbel1Arfy3Dec2k2C4xcfJiK5f9uI+PVLqanTSdeSCWuttexj5IaeWRvhkGVmf B+sPB9jq9GU+tX1YKGf1ae5vGJtOHvQ= From: Petr Pavlu To: jgross@suse.com, sstabellini@kernel.org, oleksandr_tyshchenko@epam.com Cc: xen-devel@lists.xenproject.org, linux-kernel@vger.kernel.org, Petr Pavlu Subject: [PATCH 1/2] xen/virtio: Fix NULL deref when a bridge of PCI root bus has no parent Date: Wed, 21 Jun 2023 15:12:13 +0200 Message-Id: <20230621131214.9398-2-petr.pavlu@suse.com> X-Mailer: git-send-email 2.35.3 In-Reply-To: <20230621131214.9398-1-petr.pavlu@suse.com> References: <20230621131214.9398-1-petr.pavlu@suse.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit When attempting to run Xen on a QEMU/KVM virtual machine with virtio devices (all x86_64), function xen_dt_get_node() crashes on accessing bus->bridge->parent->of_node because a bridge of the PCI root bus has no parent set: [ 1.694192][ T1] BUG: kernel NULL pointer dereference, address: 0000000000000288 [ 1.695688][ T1] #PF: supervisor read access in kernel mode [ 1.696297][ T1] #PF: error_code(0x0000) - not-present page [ 1.696297][ T1] PGD 0 P4D 0 [ 1.696297][ T1] Oops: 0000 [#1] PREEMPT SMP NOPTI [ 1.696297][ T1] CPU: 0 PID: 1 Comm: swapper/0 Not tainted 6.3.7-1-default #1 openSUSE Tumbleweed a577eae57964bb7e83477b5a5645a1781df990f0 [ 1.696297][ T1] Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS rel-1.15.0-0-g2dd4b9b-rebuilt.opensuse.org 04/01/2014 [ 1.696297][ T1] RIP: e030:xen_virtio_restricted_mem_acc+0xd9/0x1c0 [ 1.696297][ T1] Code: 45 0c 83 e8 c9 a3 ea ff 31 c0 eb d7 48 8b 87 40 ff ff ff 48 89 c2 48 8b 40 10 48 85 c0 75 f4 48 8b 82 10 01 00 00 48 8b 40 40 <48> 83 b8 88 02 00 00 00 0f 84 45 ff ff ff 66 90 31 c0 eb a5 48 89 [ 1.696297][ T1] RSP: e02b:ffffc90040013cc8 EFLAGS: 00010246 [ 1.696297][ T1] RAX: 0000000000000000 RBX: ffff888006c75000 RCX: 0000000000000029 [ 1.696297][ T1] RDX: ffff888005ed1000 RSI: ffffc900400f100c RDI: ffff888005ee30d0 [ 1.696297][ T1] RBP: ffff888006c75010 R08: 0000000000000001 R09: 0000000330000006 [ 1.696297][ T1] R10: ffff888005850028 R11: 0000000000000002 R12: ffffffff830439a0 [ 1.696297][ T1] R13: 0000000000000000 R14: ffff888005657900 R15: ffff888006e3e1e8 [ 1.696297][ T1] FS: 0000000000000000(0000) GS:ffff88804a000000(0000) knlGS:0000000000000000 [ 1.696297][ T1] CS: e030 DS: 0000 ES: 0000 CR0: 0000000080050033 [ 1.696297][ T1] CR2: 0000000000000288 CR3: 0000000002e36000 CR4: 0000000000050660 [ 1.696297][ T1] Call Trace: [ 1.696297][ T1] [ 1.696297][ T1] virtio_features_ok+0x1b/0xd0 [ 1.696297][ T1] virtio_dev_probe+0x19c/0x270 [ 1.696297][ T1] really_probe+0x19b/0x3e0 [ 1.696297][ T1] __driver_probe_device+0x78/0x160 [ 1.696297][ T1] driver_probe_device+0x1f/0x90 [ 1.696297][ T1] __driver_attach+0xd2/0x1c0 [ 1.696297][ T1] bus_for_each_dev+0x74/0xc0 [ 1.696297][ T1] bus_add_driver+0x116/0x220 [ 1.696297][ T1] driver_register+0x59/0x100 [ 1.696297][ T1] virtio_console_init+0x7f/0x110 [ 1.696297][ T1] do_one_initcall+0x47/0x220 [ 1.696297][ T1] kernel_init_freeable+0x328/0x480 [ 1.696297][ T1] kernel_init+0x1a/0x1c0 [ 1.696297][ T1] ret_from_fork+0x29/0x50 [ 1.696297][ T1] [ 1.696297][ T1] Modules linked in: [ 1.696297][ T1] CR2: 0000000000000288 [ 1.696297][ T1] ---[ end trace 0000000000000000 ]--- The PCI root bus is in this case created from ACPI description via acpi_pci_root_add() -> pci_acpi_scan_root() -> acpi_pci_root_create() -> pci_create_root_bus() where the last function is called with parent=NULL. It indicates that no parent is present and then bus->bridge->parent is NULL too. Fix the problem by checking bus->bridge->parent in xen_dt_get_node() for NULL first. Fixes: ef8ae384b4c9 ("xen/virtio: Handle PCI devices which Host controller is described in DT") Signed-off-by: Petr Pavlu --- drivers/xen/grant-dma-ops.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/drivers/xen/grant-dma-ops.c b/drivers/xen/grant-dma-ops.c index 9784a77fa3c9..76f6f26265a3 100644 --- a/drivers/xen/grant-dma-ops.c +++ b/drivers/xen/grant-dma-ops.c @@ -303,6 +303,8 @@ static struct device_node *xen_dt_get_node(struct device *dev) while (!pci_is_root_bus(bus)) bus = bus->parent; + if (!bus->bridge->parent) + return NULL; return of_node_get(bus->bridge->parent->of_node); } -- 2.35.3 From xen-devel-bounces@lists.xenproject.org Wed Jun 21 13:12:57 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 13:12:57 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552722.862956 (Exim 4.92) (envelope-from ) id 1qBxdp-0001j7-RA; Wed, 21 Jun 2023 13:12:57 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552722.862956; Wed, 21 Jun 2023 13:12:57 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBxdp-0001iy-OE; Wed, 21 Jun 2023 13:12:57 +0000 Received: by outflank-mailman (input) for mailman id 552722; Wed, 21 Jun 2023 13:12:56 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBxdo-0000hv-BO for xen-devel@lists.xenproject.org; Wed, 21 Jun 2023 13:12:56 +0000 Received: from smtp-out1.suse.de (smtp-out1.suse.de [195.135.220.28]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 55d4e730-1035-11ee-b236-6b7b168915f2; Wed, 21 Jun 2023 15:12:55 +0200 (CEST) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by smtp-out1.suse.de (Postfix) with ESMTPS id 5964221D0A; Wed, 21 Jun 2023 13:12:55 +0000 (UTC) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id 3ADDA134B1; Wed, 21 Jun 2023 13:12:55 +0000 (UTC) Received: from dovecot-director2.suse.de ([192.168.254.65]) by imap2.suse-dmz.suse.de with ESMTPSA id kMubDVf3kmQKYQAAMHmgww (envelope-from ); Wed, 21 Jun 2023 13:12:55 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 55d4e730-1035-11ee-b236-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1; t=1687353175; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=VXZNBzf99S/Re0auqUhITwZGbKoAylMdpUpWJfqNnEs=; b=YxAXnBaeIC1QLya4c71Dnd7MWnN52zRwCYzAtlWAE1NHH/N5NDQTX4/Tu+fwhotb14VGCG URAvGQ6eet0QlZYOf2jJtyU9IHTDmMRbNEO7uwZOqD1L1estEo4vZi/CpAF1XL14d0hTFy hBOb1LXDca9g4Jek6AAjAjXHtcKL6j0= From: Petr Pavlu To: jgross@suse.com, sstabellini@kernel.org, oleksandr_tyshchenko@epam.com Cc: xen-devel@lists.xenproject.org, linux-kernel@vger.kernel.org, Petr Pavlu Subject: [PATCH 2/2] xen/virtio: Avoid use of the dom0 backend in dom0 Date: Wed, 21 Jun 2023 15:12:14 +0200 Message-Id: <20230621131214.9398-3-petr.pavlu@suse.com> X-Mailer: git-send-email 2.35.3 In-Reply-To: <20230621131214.9398-1-petr.pavlu@suse.com> References: <20230621131214.9398-1-petr.pavlu@suse.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit When attempting to run Xen on a QEMU/KVM virtual machine with virtio devices (all x86_64), dom0 tries to establish a grant for itself which eventually results in a hang during the boot. The backtrace looks as follows, the while loop in __send_control_msg() makes no progress: #0 virtqueue_get_buf_ctx (_vq=_vq@entry=0xffff8880074a8400, len=len@entry=0xffffc90000413c94, ctx=ctx@entry=0x0 ) at ../drivers/virtio/virtio_ring.c:2326 #1 0xffffffff817086b7 in virtqueue_get_buf (_vq=_vq@entry=0xffff8880074a8400, len=len@entry=0xffffc90000413c94) at ../drivers/virtio/virtio_ring.c:2333 #2 0xffffffff8175f6b2 in __send_control_msg (portdev=, port_id=0xffffffff, event=0x0, value=0x1) at ../drivers/char/virtio_console.c:562 #3 0xffffffff8175f6ee in __send_control_msg (portdev=, port_id=, event=, value=) at ../drivers/char/virtio_console.c:569 #4 0xffffffff817618b1 in virtcons_probe (vdev=0xffff88800585e800) at ../drivers/char/virtio_console.c:2098 #5 0xffffffff81707117 in virtio_dev_probe (_d=0xffff88800585e810) at ../drivers/virtio/virtio.c:305 #6 0xffffffff8198e348 in call_driver_probe (drv=0xffffffff82be40c0 , drv=0xffffffff82be40c0 , dev=0xffff88800585e810) at ../drivers/base/dd.c:579 #7 really_probe (dev=dev@entry=0xffff88800585e810, drv=drv@entry=0xffffffff82be40c0 ) at ../drivers/base/dd.c:658 #8 0xffffffff8198e58f in __driver_probe_device (drv=drv@entry=0xffffffff82be40c0 , dev=dev@entry=0xffff88800585e810) at ../drivers/base/dd.c:800 #9 0xffffffff8198e65a in driver_probe_device (drv=drv@entry=0xffffffff82be40c0 , dev=dev@entry=0xffff88800585e810) at ../drivers/base/dd.c:830 #10 0xffffffff8198e832 in __driver_attach (dev=0xffff88800585e810, data=0xffffffff82be40c0 ) at ../drivers/base/dd.c:1216 #11 0xffffffff8198bfb2 in bus_for_each_dev (bus=, start=start@entry=0x0 , data=data@entry=0xffffffff82be40c0 , fn=fn@entry=0xffffffff8198e7b0 <__driver_attach>) at ../drivers/base/bus.c:368 #12 0xffffffff8198db65 in driver_attach (drv=drv@entry=0xffffffff82be40c0 ) at ../drivers/base/dd.c:1233 #13 0xffffffff8198d207 in bus_add_driver (drv=drv@entry=0xffffffff82be40c0 ) at ../drivers/base/bus.c:673 #14 0xffffffff8198f550 in driver_register (drv=drv@entry=0xffffffff82be40c0 ) at ../drivers/base/driver.c:246 #15 0xffffffff81706b47 in register_virtio_driver (driver=driver@entry=0xffffffff82be40c0 ) at ../drivers/virtio/virtio.c:357 #16 0xffffffff832cd34b in virtio_console_init () at ../drivers/char/virtio_console.c:2258 #17 0xffffffff8100105c in do_one_initcall (fn=0xffffffff832cd2e0 ) at ../init/main.c:1246 #18 0xffffffff83277293 in do_initcall_level (command_line=0xffff888003e2f900 "root", level=0x6) at ../init/main.c:1319 #19 do_initcalls () at ../init/main.c:1335 #20 do_basic_setup () at ../init/main.c:1354 #21 kernel_init_freeable () at ../init/main.c:1571 #22 0xffffffff81f64be1 in kernel_init (unused=) at ../init/main.c:1462 #23 0xffffffff81001f49 in ret_from_fork () at ../arch/x86/entry/entry_64.S:308 #24 0x0000000000000000 in ?? () Fix the problem by preventing xen_grant_init_backend_domid() from setting dom0 as a backend when running in dom0. Fixes: 035e3a4321f7 ("xen/virtio: Optimize the setup of "xen-grant-dma" devices") Signed-off-by: Petr Pavlu --- drivers/xen/grant-dma-ops.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/drivers/xen/grant-dma-ops.c b/drivers/xen/grant-dma-ops.c index 76f6f26265a3..29ed27ac450e 100644 --- a/drivers/xen/grant-dma-ops.c +++ b/drivers/xen/grant-dma-ops.c @@ -362,7 +362,9 @@ static int xen_grant_init_backend_domid(struct device *dev, if (np) { ret = xen_dt_grant_init_backend_domid(dev, np, backend_domid); of_node_put(np); - } else if (IS_ENABLED(CONFIG_XEN_VIRTIO_FORCE_GRANT) || xen_pv_domain()) { + } else if ((IS_ENABLED(CONFIG_XEN_VIRTIO_FORCE_GRANT) || + xen_pv_domain()) && + !xen_initial_domain()) { dev_info(dev, "Using dom0 as backend\n"); *backend_domid = 0; ret = 0; -- 2.35.3 From xen-devel-bounces@lists.xenproject.org Wed Jun 21 13:18:33 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 13:18:33 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552711.862985 (Exim 4.92) (envelope-from ) id 1qBxj3-0003Ks-Kg; Wed, 21 Jun 2023 13:18:21 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552711.862985; Wed, 21 Jun 2023 13:18:21 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBxj3-0003Ij-Ds; Wed, 21 Jun 2023 13:18:21 +0000 Received: by outflank-mailman (input) for mailman id 552711; Wed, 21 Jun 2023 13:06:28 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBxXY-0008E5-0h for xen-devel@lists.xenproject.org; Wed, 21 Jun 2023 13:06:28 +0000 Received: from mailout2.w1.samsung.com (mailout2.w1.samsung.com [210.118.77.12]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 6b1abc50-1034-11ee-8611-37d641c3527e; Wed, 21 Jun 2023 15:06:22 +0200 (CEST) Received: from eucas1p1.samsung.com (unknown [182.198.249.206]) by mailout2.w1.samsung.com (KnoxPortal) with ESMTP id 20230621130618euoutp029064a17d1e909129860c2967cf88b763~qrmmZm0i81313413134euoutp02z; Wed, 21 Jun 2023 13:06:18 +0000 (GMT) Received: from eusmges1new.samsung.com (unknown [203.254.199.242]) by eucas1p2.samsung.com (KnoxPortal) with ESMTP id 20230621130618eucas1p26bebad0290381b6c6cb4bc9b27d122f5~qrml9OciK0200302003eucas1p2H; Wed, 21 Jun 2023 13:06:18 +0000 (GMT) Received: from eucas1p1.samsung.com ( [182.198.249.206]) by eusmges1new.samsung.com (EUCPMTA) with SMTP id 94.F5.42423.AC5F2946; Wed, 21 Jun 2023 14:06:18 +0100 (BST) Received: from eusmtrp1.samsung.com (unknown [182.198.249.138]) by eucas1p2.samsung.com (KnoxPortal) with ESMTPA id 20230621130617eucas1p2d418f189352fca58d3547c0b3c4e2078~qrmlH_Wmx0598905989eucas1p2M; Wed, 21 Jun 2023 13:06:17 +0000 (GMT) Received: from eusmgms2.samsung.com (unknown [182.198.249.180]) by eusmtrp1.samsung.com (KnoxPortal) with ESMTP id 20230621130617eusmtrp1deec7a7753b1b8a355f9dfe83f8704bb~qrmlF-M1k0740407404eusmtrp1I; Wed, 21 Jun 2023 13:06:17 +0000 (GMT) Received: from eusmtip1.samsung.com ( [203.254.199.221]) by eusmgms2.samsung.com (EUCPMTA) with SMTP id F1.B8.14344.9C5F2946; Wed, 21 Jun 2023 14:06:17 +0100 (BST) Received: from CAMSVWEXC02.scsc.local (unknown [106.1.227.72]) by eusmtip1.samsung.com (KnoxPortal) with ESMTPA id 20230621130616eusmtip17e21dd5f7eca1289642f50e5db94443d~qrmkf0BdK0234302343eusmtip1d; Wed, 21 Jun 2023 13:06:16 +0000 (GMT) Received: from localhost (106.210.248.248) by CAMSVWEXC02.scsc.local (2002:6a01:e348::6a01:e348) with Microsoft SMTP Server (TLS) id 15.0.1497.2; Wed, 21 Jun 2023 14:06:15 +0100 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 6b1abc50-1034-11ee-8611-37d641c3527e DKIM-Filter: OpenDKIM Filter v2.11.0 mailout2.w1.samsung.com 20230621130618euoutp029064a17d1e909129860c2967cf88b763~qrmmZm0i81313413134euoutp02z DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=samsung.com; s=mail20170921; t=1687352779; bh=tF4riIzozstFHcZHBtz5SQAzztgzSEi85C6+BMxI57A=; h=Date:From:To:CC:Subject:In-Reply-To:References:From; b=KizIn4h/+VubKpimOPqcdjHWTOSNrdxhq52NIdlcN6uvcXLAB6nFiyBh7t4SmSiCP td604+vg7J45oRN7XVDY0MruktIM6Tfp+rbOoX3PpG3N0t8hckrvJWga2W8NV3jyeY H1l5Lg0B87tZSR6VD/1dW5vkoQMqYyIu+p+NXDVs= X-AuditID: cbfec7f2-a3bff7000002a5b7-83-6492f5ca7091 Date: Wed, 21 Jun 2023 15:06:14 +0200 From: Joel Granados To: Jani Nikula CC: , Russell King , Catalin Marinas , Will Deacon , Michael Ellerman , Heiko Carstens , Vasily Gorbik , Alexander Gordeev , Gerald Schaefer , Andy Lutomirski , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , , Herbert Xu , "David S. Miller" , Russ Weight , Greg Kroah-Hartman , Phillip Potter , Clemens Ladisch , Arnd Bergmann , Corey Minyard , Theodore Ts'o , "Jason A. Donenfeld" , Joonas Lahtinen , Rodrigo Vivi , Tvrtko Ursulin , David Airlie , Daniel Vetter , "K. Y. Srinivasan" , Haiyang Zhang , Wei Liu , Dexuan Cui , Jason Gunthorpe , Leon Romanovsky , Benjamin Herrenschmidt , Song Liu , Robin Holt , Steve Wahl , David Ahern , Eric Dumazet , Jakub Kicinski , Paolo Abeni , Sudip Mukherjee , Mark Rutland , "James E.J. Bottomley" , "Martin K. Petersen" , Doug Gilbert , Jiri Slaby , Juergen Gross , Stefano Stabellini , Alexander Viro , Christian Brauner , Benjamin LaHaise , David Howells , Jan Harkes , , Trond Myklebust , Anna Schumaker , Chuck Lever , Jeff Layton , Jan Kara , Anton Altaparmakov , Mark Fasheh , Joel Becker , Joseph Qi , Kees Cook , Iurii Zaikin , Eric Biggers , "Darrick J. Wong" , Alexei Starovoitov , Daniel Borkmann , Andrii Nakryiko , Balbir Singh , Eric Biederman , "Naveen N. Rao" , Anil S Keshavamurthy , Masami Hiramatsu , Peter Zijlstra , Petr Mladek , Sergey Senozhatsky , Juri Lelli , Vincent Guittot , John Stultz , Steven Rostedt , Andrew Morton , Mike Kravetz , Muchun Song , Naoya Horiguchi , "Matthew Wilcox (Oracle)" , Joerg Reuter , Ralf Baechle , Pablo Neira Ayuso , Jozsef Kadlecsik , Florian Westphal , Roopa Prabhu , Nikolay Aleksandrov , Alexander Aring , Stefan Schmidt , Miquel Raynal , Steffen Klassert , Matthieu Baerts , Mat Martineau , Simon Horman , Julian Anastasov , Remi Denis-Courmont , Santosh Shilimkar , Marc Dionne , Neil Horman , Marcelo Ricardo Leitner , Xin Long , Karsten Graul , Wenjia Zhang , Jan Karcher , Jon Maloy , Ying Xue , Martin Schiller , John Johansen , Paul Moore , James Morris , "Serge E. Hallyn" , Jarkko Sakkinen , Nicholas Piggin , Christophe Leroy , Christian Borntraeger , Sven Schnelle , "H. Peter Anvin" , "Rafael J. Wysocki" , Mike Travis , Oleksandr Tyshchenko , Amir Goldstein , Matthew Bobrowski , John Fastabend , Martin KaFai Lau , Yonghong Song , KP Singh , Stanislav Fomichev , Hao Luo , Jiri Olsa , Waiman Long , Boqun Feng , John Ogness , Dietmar Eggemann , Ben Segall , Mel Gorman , Daniel Bristot de Oliveira , Valentin Schneider , Andy Lutomirski , Will Drewry , Stephen Boyd , Miaohe Lin , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , Subject: Re: [PATCH 09/11] sysctl: Remove the end element in sysctl table arrays Message-ID: <20230621130614.s36w4u7dzmb5d5p3@localhost> MIME-Version: 1.0 Content-Type: multipart/signed; micalg="pgp-sha512"; protocol="application/pgp-signature"; boundary="avrt2cz7yepdubk6" Content-Disposition: inline In-Reply-To: <87o7l92hg8.fsf@intel.com> X-Originating-IP: [106.210.248.248] X-ClientProxiedBy: CAMSVWEXC01.scsc.local (2002:6a01:e347::6a01:e347) To CAMSVWEXC02.scsc.local (2002:6a01:e348::6a01:e348) X-Brightmail-Tracker: H4sIAAAAAAAAA2WTe0wUVxTGc2dmZxYsmxGJXhFCimJbQeqjjUeRpk20mTaNscRgrIl1A6No EcyutEhr5CmUgsjykkfl6WJ57ALlvUArwsqCtSKUAorAgkEEedWlvLcLg61J/7n5ne+c797v /HHFpGWq2Fp8xucCL/ORetvT5lS5dvb+9maDwnNH8721UNwyTEOauoCGsCojBUHaDBEsKrQM vJx9xEDkUikFA4v1NDwc+IOGpOEgCsaVUQgeK4YYMPYMEZDT1E+ARjVGwGJVOAnG8lgSsjOn SXhWFI6gLrTEdFwvpGEseJ6CtkEJqKrDCCisWSDhe72RhvGQExCSraaho4KDkRt5CELKDAgS izdAu3KChqzOcgLSunbBrDKPAd39aQp6DXoKVOpsAoIrbxHQEJ9Cwk/KGQZ6YhIoSI4MMQVq MRBQ9jiYhqG6aAIelF8VwWB+GQPxczdJuNa8E0oGOkQwmdPMQO+TWQJqanWUKUIPAQmxplfD I9IQPM0YEcGvtekIqhcqGahPqEUw//eSCPTqceJDT653dJHiCm4UIK6to5Xk5ucUiOvWG0gu NbCV4gxd9wlubnYb97TVjYsNGWO42ukMiqtK6WG4jBI/rkNzjFuoL2a46uog5vDuL8z3e/Le Z77mZe9+cNLcK1V9hTzfZO+vbdMQgajYJhKZiTH7Hp54qqQjkbnYkr2FsC6rkBGKlwjfDu4j heIvhOeNV9ErS7E+VyQ0chHuL60j/p1qnKlZtZQhrG+JW7FQrAOeiUkQLTPNOuHfRx+Ty2zF bseFnYMrV5Hsw704vKRhxbCOdcOhWRHMMluwe/DNqWAk8FqsSx6klplk/bGq/zfTjNjEm3Du knhZNmPfwlVDi5QQdTP+sy6bFvgSbi7tXkmK2a43cGSlYrVxAOeP9TMCr8PP75ausg1uiYui BEMcwr8sTTBCkY+wMshACFMuOLR9cNXxEW7KaqSXE2FWgjtfrBWCSrCiPIkUZAscccVSmN6K 85+MUtfQ5pTXVkt5bbWU/1YTZCecoZmi/yc7YmXmCCmwK1apxqkMxOShDbyf/NxpXr7Th//G WS49J/fzOe3s4XuuBJn+bMvS3alK9OPzSed6RIhRPdpiMuuL8h8ga8rH14e3t7KwLVF4Wlp4 Si8G8DLfL2V+3ry8Hm0SU/YbLBxddR6W7GnpBf4rnj/Py151CbGZdSCxw6M6nzLqTk5PFfzw IMH9M8O3Cwed1vnGi467N2okI0XGGLuRng4uxx/bWe7f6uwq6hq2s753OX14fVFc8ttdz/eE 3kk9dej8M2NH3O0+Zbrv2aiKg1WxbvtkDVYvjnd/jEivn4ef6V2MeTh6fVSQZ6V3MrYlT7RP v5hs2Gsd/WhNaOGmpLzuT6aptGtndUfVcv/rY66Sd2IcuS1RsjDpkUvvBzSWLiR4gLo97fLG xIu5FVoXDWnm0Lxxt5Z0P6vplBxQJUmcv0uttg090hW5L/7zOw44Zs2puU/DKgIiWrcePmbN 28xrsvrueEV5SMqOpu/KfHPqUKlrk3a4KjHcrq3XnpJ7SXduI2Vy6T9p9zyTLgUAAA== X-Brightmail-Tracker: H4sIAAAAAAAAA2WTfUxTZxTG9957e1s0aAcS7hB16eZgqIWilYMB5zI0Fzc30bklbgKd3KEb tKQFMnGaIjC1+AF1KgNC/CoIlEJZqzL8CkIpgwEq8m02oA75GBWhOMTCbm2WmeyfN7/3Oed5 ct43OTzc7SrXi7dXmsjIpZI4ATmPaJytf7iqwaaOCRjt5YO+cYgEc8cFDPLLtSTUKIOgVVeK 4NlMHg7Vj3sIyKiaI6Cq0sCBVNM5DtjVJi5MTvdwQTVrIODJoQwctIZUDAbsNSRMVMyyR209 CSN3niIwa9m+ewMPSDg7lEpA/lATF6yFxxD0qge5MPdwEINL5j4MprSdGFTrxjCwVx3GYaJv kANzV7JxuHh+CofHFYcR5LekE2DvyCThZnolgps5ZSSMHZoh4FGWEYf7lgXQZrOSoPslA2Ot 6Vwou/4Ch0emfi4c7Z8j4cpx9lXWtEhozZ3iQNrFchLar9JQU3+LCyMFJQgyh70hzWhDcEbv CXlZP2NgOdnPgbyzaRhoeo5yoK3wCQlF98sRqKez0IY6RN9v+5B+lnGCoH8ftRO0tkDLSu13 cXrmuRrR3f02nB5rbkB0gXY/nas8TtJ5yrsEfa72I9rW1YzRz6f9aENxF0Zn1g7jW3fsFIbI ZUmJzJt7ZIrEUMEXIggUioJBGLgmWChaHbRrXaBY4L8+JIaJ25vMyP3XRwv3nO68jCWYBN91 T5/nKFG5twq58Cj+GkrfX8RxsBtfg6gJa6hT96b0kw84TnanXrSrSBWax/aMI6qoqRZ3XoyI OlGS/7KL4C+n/j55+iWT/JVUy2gv7uBF/FVUWaeF4zDg/OZgKv2vNtJRcOdvo9IvHOE62JUf RGmeHkLO1D8QZb3QQjgLr1MNP1leMs5PpjJum1kDj+XFVNEszyG78H2oqkE74Rz1Larj5kXS yQeoCfufKAu5576SlPtKUu5/SU7Zj+qcHcL+J6+gCs+P4E4OpXQ6K3EOcUvQIiZJER8brwgU KiTxiiRprHC3LL4SsVtzxTRtuIaKh8eFNQjjoRr0NuvsryhtRV6EVCZlBItcl1SqY9xcYyT7 Uhi5LEqeFMcoapCY/cZs3Mtjt4xdQWlilGhtgFi0Zm1wgDh47WqBp2t4whGJGz9Wksh8yzAJ jPxfH8Zz8VJiZ2NX1RkPLqyOXNKOKbsT7kUdOJwaOhM9aXEJ8857tkw8lSneeKbn1MSNhI/D l3oOPaxuCesMMPXuPO5htjARme8ZePuCLlvMn260Dezvur1yV6NldPhSdruvWr8dK530/PHX z0QnIlWGkXe//+COPmWpz5YNIz7vNH0dqqnWbt6eY/d/v2/plorxH5BdMb+A52lYn+aLfOoC Dm5+7vs4hZzu8NKE6D9ZybW+SNXcuEYujvLDVcc8Dp65Zp/8MqkgYr7RNNAcrZPOdhm/Kba8 tqwvWpAT3lq+YPGKTEtYRFiZ56n8dePLF5Ra3riu3NbB2Vq/adOOhbyJ5N/EOU2f33pQvuWr KAGh2CMR+eFyheQfqa/esMoEAAA= X-CMS-MailID: 20230621130617eucas1p2d418f189352fca58d3547c0b3c4e2078 X-Msg-Generator: CA X-RootMTR: 20230621094824eucas1p2b6adfbd3f15ff3665674917f419b25d3 X-EPHeader: CA CMS-TYPE: 201P X-CMS-RootMailID: 20230621094824eucas1p2b6adfbd3f15ff3665674917f419b25d3 References: <20230621091000.424843-1-j.granados@samsung.com> <20230621094817.433842-1-j.granados@samsung.com> <87o7l92hg8.fsf@intel.com> --avrt2cz7yepdubk6 Content-Type: text/plain; charset="us-ascii" Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Wed, Jun 21, 2023 at 02:16:55PM +0300, Jani Nikula wrote: > On Wed, 21 Jun 2023, Joel Granados wrote: > > Remove the empty end element from all the arrays that are passed to the > > register sysctl calls. In some files this means reducing the explicit > > array size by one. Also make sure that we are using the size in > > ctl_table_header instead of evaluating the .procname element. >=20 > Where's the harm in removing the end elements driver by driver? This is > an unwieldy patch to handle. I totally agree. Its a big one!!! but I'm concerned of breaking bisectibili= ty: * I could for example separate all the removes into separate commits and then have a final commit that removes the check for the empty element. But this will leave the tree in a state where the for loop will have undefined behavior when it looks for the empty end element. It might or might not work (probably not :) until the final commit where I fix that. * I could also change the logic that looks for the final element, commit that first and then remove the empty element one commit per driver after that. But then for all the arrays that still have an empty element, there would again be undefined behavior as it would think that the last element is valid (when it is really the sentinel). Any ideas on how to get around these? >=20 > > diff --git a/drivers/gpu/drm/i915/i915_perf.c b/drivers/gpu/drm/i915/i9= 15_perf.c > > index f43950219ffc..e4d7372afb10 100644 > > --- a/drivers/gpu/drm/i915/i915_perf.c > > +++ b/drivers/gpu/drm/i915/i915_perf.c > > @@ -4884,24 +4884,23 @@ int i915_perf_remove_config_ioctl(struct drm_de= vice *dev, void *data, > > =20 > > static struct ctl_table oa_table[] =3D { > > { > > - .procname =3D "perf_stream_paranoid", > > - .data =3D &i915_perf_stream_paranoid, > > - .maxlen =3D sizeof(i915_perf_stream_paranoid), > > - .mode =3D 0644, > > - .proc_handler =3D proc_dointvec_minmax, > > - .extra1 =3D SYSCTL_ZERO, > > - .extra2 =3D SYSCTL_ONE, > > - }, > > + .procname =3D "perf_stream_paranoid", > > + .data =3D &i915_perf_stream_paranoid, > > + .maxlen =3D sizeof(i915_perf_stream_paranoid), > > + .mode =3D 0644, > > + .proc_handler =3D proc_dointvec_minmax, > > + .extra1 =3D SYSCTL_ZERO, > > + .extra2 =3D SYSCTL_ONE, > > + }, > > { > > - .procname =3D "oa_max_sample_rate", > > - .data =3D &i915_oa_max_sample_rate, > > - .maxlen =3D sizeof(i915_oa_max_sample_rate), > > - .mode =3D 0644, > > - .proc_handler =3D proc_dointvec_minmax, > > - .extra1 =3D SYSCTL_ZERO, > > - .extra2 =3D &oa_sample_rate_hard_limit, > > - }, > > - {} > > + .procname =3D "oa_max_sample_rate", > > + .data =3D &i915_oa_max_sample_rate, > > + .maxlen =3D sizeof(i915_oa_max_sample_rate), > > + .mode =3D 0644, > > + .proc_handler =3D proc_dointvec_minmax, > > + .extra1 =3D SYSCTL_ZERO, > > + .extra2 =3D &oa_sample_rate_hard_limit, > > + } > > }; >=20 > The existing indentation is off, but fixing it doesn't really belong in > this patch. Agreed. But I actually was trying to fix something that checkpatch flagged. I'll change these back (which will cause this patch to be flagged). An alternative solution would be to fix the indentation as part of the preparation patches. Tell me what you think. Thx >=20 > BR, > Jani. >=20 >=20 > --=20 > Jani Nikula, Intel Open Source Graphics Center --=20 Joel Granados --avrt2cz7yepdubk6 Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQGzBAABCgAdFiEErkcJVyXmMSXOyyeQupfNUreWQU8FAmSS9cQACgkQupfNUreW QU/tWQv+LHqhRfLnActmTK06NicBnR3PUYRIMank4jSVG6jtvqu/VBMNmvKyRaeA 68kGzzIEbayPbBOL1M2GmrBgIaWp9OIWt4jKQeY4ARm9DcL2FWqUqLufGoPlwjX/ 0GFjsIlBykddf6c3149Hf7D2Xz+hZyF8GgqMaIuty4hcNbIoeYs5zmwPaQmn+/q0 eoe07uBOs32ocQPIMJuRPMw6KSxHYOiWbNHxgQlIl7stObKOuvQXO2GLDgqHc13y NKMTC6XNh4VAc7JHtrsEVEBiVro3IGh7cS5U5DK0jhlSLsRfJUkXmSO4H9EwGLBq mWAl5Qr+YGnCrfE6jGc7uTM0etzscRGIlKIJ+7qcLgSfVgkqYeb5AmkZ8bvailD8 h66rr3XzwBKiQRaXpk6V7/IliqJcG7+N2yGsGJ3UXpvoF/1ieeb39kcSOFZ75BU5 USV/t5Fj0VqHetwv6dC5A8RLktlHNQZcTAXJkLL0QZ5xrmWC9kiIJ/EzJnCgJlSu AwkfgT+P =LLXc -----END PGP SIGNATURE----- --avrt2cz7yepdubk6-- From xen-devel-bounces@lists.xenproject.org Wed Jun 21 13:18:33 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 13:18:33 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552739.863008 (Exim 4.92) (envelope-from ) id 1qBxj4-0003kh-SK; Wed, 21 Jun 2023 13:18:22 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552739.863008; Wed, 21 Jun 2023 13:18:22 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBxj4-0003jO-Km; Wed, 21 Jun 2023 13:18:22 +0000 Received: by outflank-mailman (input) for mailman id 552739; Wed, 21 Jun 2023 13:17:32 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBxiF-0002zg-Oy for xen-devel@lists.xenproject.org; Wed, 21 Jun 2023 13:17:32 +0000 Received: from mga05.intel.com (mga05.intel.com [192.55.52.43]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id f6dd6812-1035-11ee-8611-37d641c3527e; Wed, 21 Jun 2023 15:17:27 +0200 (CEST) Received: from orsmga003.jf.intel.com ([10.7.209.27]) by fmsmga105.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 21 Jun 2023 06:16:46 -0700 Received: from unknown (HELO localhost) ([10.237.66.162]) by orsmga003-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 21 Jun 2023 06:15:49 -0700 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: f6dd6812-1035-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1687353448; x=1718889448; h=from:to:cc:subject:in-reply-to:references:date: message-id:mime-version; bh=9eMWiG7JI6/9oPvFtdl/3iOGYIkGUexXwjKhm4v9hgQ=; b=E3x3zWSViHXTq31hieRAmxmd0qnE/6FAUkYCsRv3qvCmW1rMj/sLMUhl dCneY4JN3t8027LPp2buMW4cLh3Cq9FNwdoAKFV3QebAF//r7ALTshBN2 hZmOAE1WMXi9pZRepyCB+IrrH5SEQ6GJbVshw6K332PnZN0thfQCQNIAx fm3nt2z7YsVWXLAntigf9bqkuh/y7FNSIqTbMTLiyUhBiCHgUPu46AF5I 5GW1Wkr/XOvULVcBMeEjj5ymNyr+wm99y2hBFewenALA5PQxk0vXA0uX0 2z2wdY//8Ni0OQ8l9zOo4cnJKktSbaRxknJ+Wo0H4MW6UxiYVY7IVnRu3 w==; X-IronPort-AV: E=McAfee;i="6600,9927,10747"; a="446546934" X-IronPort-AV: E=Sophos;i="6.00,260,1681196400"; d="scan'208";a="446546934" X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10747"; a="664658294" X-IronPort-AV: E=Sophos;i="6.00,260,1681196400"; d="scan'208";a="664658294" From: Jani Nikula To: Joel Granados Cc: mcgrof@kernel.org, Russell King , Catalin Marinas , Will Deacon , Michael Ellerman , Heiko Carstens , Vasily Gorbik , Alexander Gordeev , Gerald Schaefer , Andy Lutomirski , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , x86@kernel.org, Herbert Xu , "David S. Miller" , Russ Weight , Greg Kroah-Hartman , Phillip Potter , Clemens Ladisch , Arnd Bergmann , Corey Minyard , Theodore Ts'o , "Jason A. Donenfeld" , Joonas Lahtinen , Rodrigo Vivi , Tvrtko Ursulin , David Airlie , Daniel Vetter , "K. Y. Srinivasan" , Haiyang Zhang , Wei Liu , Dexuan Cui , Jason Gunthorpe , Leon Romanovsky , Benjamin Herrenschmidt , Song Liu , Robin Holt , Steve Wahl , David Ahern , Eric Dumazet , Jakub Kicinski , Paolo Abeni , Sudip Mukherjee , Mark Rutland , "James E.J. Bottomley" , "Martin K. Petersen" , Doug Gilbert , Jiri Slaby , Juergen Gross , Stefano Stabellini , Alexander Viro , Christian Brauner , Benjamin LaHaise , David Howells , Jan Harkes , coda@cs.cmu.edu, Trond Myklebust , Anna Schumaker , Chuck Lever , Jeff Layton , Jan Kara , Anton Altaparmakov , Mark Fasheh , Joel Becker , Joseph Qi , Kees Cook , Iurii Zaikin , Eric Biggers , "Darrick J. Wong" , Alexei Starovoitov , Daniel Borkmann , Andrii Nakryiko , Balbir Singh , Eric Biederman , "Naveen N. Rao" , Anil S Keshavamurthy , Masami Hiramatsu , Peter Zijlstra , Petr Mladek , Sergey Senozhatsky , Juri Lelli , Vincent Guittot , John Stultz , Steven Rostedt , Andrew Morton , Mike Kravetz , Muchun Song , Naoya Horiguchi , "Matthew Wilcox (Oracle)" , Joerg Reuter , Ralf Baechle , Pablo Neira Ayuso , Jozsef Kadlecsik , Florian Westphal , Roopa Prabhu , Nikolay Aleksandrov , Alexander Aring , Stefan Schmidt , Miquel Raynal , Steffen Klassert , Matthieu Baerts , Mat Martineau , Simon Horman , Julian Anastasov , Remi Denis-Courmont , Santosh Shilimkar , Marc Dionne , Neil Horman , Marcelo Ricardo Leitner , Xin Long , Karsten Graul , Wenjia Zhang , Jan Karcher , Jon Maloy , Ying Xue , Martin Schiller , John Johansen , Paul Moore , James Morris , "Serge E. Hallyn" , Jarkko Sakkinen , Nicholas Piggin , Christophe Leroy , Christian Borntraeger , Sven Schnelle , "H. Peter Anvin" , "Rafael J. Wysocki" , Mike Travis , Oleksandr Tyshchenko , Amir Goldstein , Matthew Bobrowski , John Fastabend , Martin KaFai Lau , Yonghong Song , KP Singh , Stanislav Fomichev , Hao Luo , Jiri Olsa , Waiman Long , Boqun Feng , John Ogness , Dietmar Eggemann , Ben Segall , Mel Gorman , Daniel Bristot de Oliveira , Valentin Schneider , Andy Lutomirski , Will Drewry , Stephen Boyd , Miaohe Lin , linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, linux-ia64@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-s390@vger.kernel.org, linux-crypto@vger.kernel.org, openipmi-developer@lists.sourceforge.net, intel-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org, linux-hyperv@vger.kernel.org, linux-rdma@vger.kernel.org, linux-raid@vger.kernel.org, netdev@vger.kernel.org, linux-scsi@vger.kernel.org, xen-devel@lists.xenproject.org, linux-fsdevel@vger.kernel.org, linux-aio@kvack.org, linux-cachefs@redhat.com, codalist@telemann.coda.cs.cmu.edu, linux-mm@kvack.org, linux-nfs@vger.kernel.org, linux-ntfs-dev@lists.sourceforge.net, ocfs2-devel@oss.oracle.com, fsverity@lists.linux.dev, linux-xfs@vger.kernel.org, bpf@vger.kernel.org, kexec@lists.infradead.org, linux-trace-kernel@vger.kernel.org, linux-hams@vger.kernel.org, netfilter-devel@vger.kernel.org, coreteam@netfilter.org, bridge@lists.linux-foundation.org, dccp@vger.kernel.org, linux-wpan@vger.kernel.org, mptcp@lists.linux.dev, lvs-devel@vger.kernel.org, rds-devel@oss.oracle.com, linux-afs@lists.infradead.org, linux-sctp@vger.kernel.org, tipc-discussion@lists.sourceforge.net, linux-x25@vger.kernel.org, apparmor@lists.ubuntu.com, linux-security-module@vger.kernel.org, keyrings@vger.kernel.org Subject: Re: [PATCH 09/11] sysctl: Remove the end element in sysctl table arrays In-Reply-To: <20230621130614.s36w4u7dzmb5d5p3@localhost> Organization: Intel Finland Oy - BIC 0357606-4 - Westendinkatu 7, 02160 Espoo References: <20230621091000.424843-1-j.granados@samsung.com> <20230621094817.433842-1-j.granados@samsung.com> <87o7l92hg8.fsf@intel.com> <20230621130614.s36w4u7dzmb5d5p3@localhost> Date: Wed, 21 Jun 2023 16:15:46 +0300 Message-ID: <878rcd2by5.fsf@intel.com> MIME-Version: 1.0 Content-Type: text/plain On Wed, 21 Jun 2023, Joel Granados wrote: > On Wed, Jun 21, 2023 at 02:16:55PM +0300, Jani Nikula wrote: >> On Wed, 21 Jun 2023, Joel Granados wrote: >> > Remove the empty end element from all the arrays that are passed to the >> > register sysctl calls. In some files this means reducing the explicit >> > array size by one. Also make sure that we are using the size in >> > ctl_table_header instead of evaluating the .procname element. >> >> Where's the harm in removing the end elements driver by driver? This is >> an unwieldy patch to handle. > > I totally agree. Its a big one!!! but I'm concerned of breaking bisectibility: > * I could for example separate all the removes into separate commits and > then have a final commit that removes the check for the empty element. > But this will leave the tree in a state where the for loop will have > undefined behavior when it looks for the empty end element. It might > or might not work (probably not :) until the final commit where I fix > that. > > * I could also change the logic that looks for the final element, > commit that first and then remove the empty element one commit per > driver after that. But then for all the arrays that still have an > empty element, there would again be undefined behavior as it would > think that the last element is valid (when it is really the sentinel). > > Any ideas on how to get around these? First add size to the register calls, and allow the last one to be sentinel but do not require the sentinel. Start removing sentinels, adjusting the size passed in. Once enough sentinels have been removed, add warning if the final entry is a sentinel. Never really remove the check? (But surely you can rework the logic to not count the number of elements up front, only while iterating.) BR, Jani. >> >> > diff --git a/drivers/gpu/drm/i915/i915_perf.c b/drivers/gpu/drm/i915/i915_perf.c >> > index f43950219ffc..e4d7372afb10 100644 >> > --- a/drivers/gpu/drm/i915/i915_perf.c >> > +++ b/drivers/gpu/drm/i915/i915_perf.c >> > @@ -4884,24 +4884,23 @@ int i915_perf_remove_config_ioctl(struct drm_device *dev, void *data, >> > >> > static struct ctl_table oa_table[] = { >> > { >> > - .procname = "perf_stream_paranoid", >> > - .data = &i915_perf_stream_paranoid, >> > - .maxlen = sizeof(i915_perf_stream_paranoid), >> > - .mode = 0644, >> > - .proc_handler = proc_dointvec_minmax, >> > - .extra1 = SYSCTL_ZERO, >> > - .extra2 = SYSCTL_ONE, >> > - }, >> > + .procname = "perf_stream_paranoid", >> > + .data = &i915_perf_stream_paranoid, >> > + .maxlen = sizeof(i915_perf_stream_paranoid), >> > + .mode = 0644, >> > + .proc_handler = proc_dointvec_minmax, >> > + .extra1 = SYSCTL_ZERO, >> > + .extra2 = SYSCTL_ONE, >> > + }, >> > { >> > - .procname = "oa_max_sample_rate", >> > - .data = &i915_oa_max_sample_rate, >> > - .maxlen = sizeof(i915_oa_max_sample_rate), >> > - .mode = 0644, >> > - .proc_handler = proc_dointvec_minmax, >> > - .extra1 = SYSCTL_ZERO, >> > - .extra2 = &oa_sample_rate_hard_limit, >> > - }, >> > - {} >> > + .procname = "oa_max_sample_rate", >> > + .data = &i915_oa_max_sample_rate, >> > + .maxlen = sizeof(i915_oa_max_sample_rate), >> > + .mode = 0644, >> > + .proc_handler = proc_dointvec_minmax, >> > + .extra1 = SYSCTL_ZERO, >> > + .extra2 = &oa_sample_rate_hard_limit, >> > + } >> > }; >> >> The existing indentation is off, but fixing it doesn't really belong in >> this patch. > > Agreed. But I actually was trying to fix something that checkpatch > flagged. I'll change these back (which will cause this patch to be > flagged). > > An alternative solution would be to fix the indentation as part of the > preparation patches. Tell me what you think. > > Thx > >> >> BR, >> Jani. >> >> >> -- >> Jani Nikula, Intel Open Source Graphics Center -- Jani Nikula, Intel Open Source Graphics Center From xen-devel-bounces@lists.xenproject.org Wed Jun 21 13:18:33 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 13:18:33 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552570.862967 (Exim 4.92) (envelope-from ) id 1qBxj2-00030q-Hy; Wed, 21 Jun 2023 13:18:20 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552570.862967; Wed, 21 Jun 2023 13:18:20 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBxj2-00030j-Eq; Wed, 21 Jun 2023 13:18:20 +0000 Received: by outflank-mailman (input) for mailman id 552570; Wed, 21 Jun 2023 09:10:44 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBtrP-0007vj-QS for xen-devel@lists.xenproject.org; Wed, 21 Jun 2023 09:10:44 +0000 Received: from mailout1.w1.samsung.com (mailout1.w1.samsung.com [210.118.77.11]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 7d23fb02-1013-11ee-b236-6b7b168915f2; Wed, 21 Jun 2023 11:10:40 +0200 (CEST) Received: from eucas1p1.samsung.com (unknown [182.198.249.206]) by mailout1.w1.samsung.com (KnoxPortal) with ESMTP id 20230621091038euoutp01e123bf7eae2cf2239ff74cab5dc393bb~qoY0vfCZa1411914119euoutp01Y; Wed, 21 Jun 2023 09:10:38 +0000 (GMT) Received: from eusmges2new.samsung.com (unknown [203.254.199.244]) by eucas1p1.samsung.com (KnoxPortal) with ESMTP id 20230621091037eucas1p17e649ac102168b47064feeb1a5d9d0d7~qoY0XqSpU2864928649eucas1p1t; Wed, 21 Jun 2023 09:10:37 +0000 (GMT) Received: from eucas1p2.samsung.com ( [182.198.249.207]) by eusmges2new.samsung.com (EUCPMTA) with SMTP id B0.AE.11320.D8EB2946; Wed, 21 Jun 2023 10:10:37 +0100 (BST) Received: from eusmtrp2.samsung.com (unknown [182.198.249.139]) by eucas1p1.samsung.com (KnoxPortal) with ESMTPA id 20230621091037eucas1p188e11d8064526a5a0549217d5a419647~qoYzsEdLT3017130171eucas1p10; Wed, 21 Jun 2023 09:10:37 +0000 (GMT) Received: from eusmgms1.samsung.com (unknown [182.198.249.179]) by eusmtrp2.samsung.com (KnoxPortal) with ESMTP id 20230621091036eusmtrp23053e0e91e9e88b462059cc6e116b0c7~qoYzpFHdu2207922079eusmtrp2g; Wed, 21 Jun 2023 09:10:36 +0000 (GMT) Received: from eusmtip1.samsung.com ( [203.254.199.221]) by eusmgms1.samsung.com (EUCPMTA) with SMTP id 7D.1F.10549.C8EB2946; Wed, 21 Jun 2023 10:10:36 +0100 (BST) Received: from CAMSVWEXC02.scsc.local (unknown [106.1.227.72]) by eusmtip1.samsung.com (KnoxPortal) with ESMTPA id 20230621091036eusmtip1064192b2f7098b941992ae887d268647~qoYzRi0Su1210112101eusmtip1N; Wed, 21 Jun 2023 09:10:36 +0000 (GMT) Received: from localhost (106.210.248.248) by CAMSVWEXC02.scsc.local (2002:6a01:e348::6a01:e348) with Microsoft SMTP Server (TLS) id 15.0.1497.2; Wed, 21 Jun 2023 10:10:35 +0100 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 7d23fb02-1013-11ee-b236-6b7b168915f2 DKIM-Filter: OpenDKIM Filter v2.11.0 mailout1.w1.samsung.com 20230621091038euoutp01e123bf7eae2cf2239ff74cab5dc393bb~qoY0vfCZa1411914119euoutp01Y DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=samsung.com; s=mail20170921; t=1687338638; bh=QatUAmwjfSE5CpygwEgoo8d+plIGyvB6WfjKfmq8pF4=; h=From:To:CC:Subject:Date:In-Reply-To:References:From; b=WBbh3ysmBwasQEKtTmaoGsleQTqlgmC4R8U/+mJGvSWtNFexng/wooaURelQr0+Ix 8bW/6HMQT73Ttuk4jBTTZ0Ql7yFJyGuRmdDguixw0HvwHLYcsOK8JUwaCs1YNo80PM 2YVN8Dq1QLsiAczxi+aWjbg8pywEOsXt/1a01AMI= X-AuditID: cbfec7f4-97dff70000022c38-fb-6492be8d52ed From: Joel Granados To: , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , , Theodore Ts'o , "Jason A. Donenfeld" , Greg Kroah-Hartman , Jiri Slaby , Juergen Gross , Stefano Stabellini , Benjamin LaHaise , Alexander Viro , Christian Brauner , Jeff Layton , Chuck Lever , Jan Kara , Kees Cook , Iurii Zaikin , Alexei Starovoitov , Daniel Borkmann , Andrii Nakryiko , Balbir Singh , Eric Biederman , "Naveen N. Rao" , Anil S Keshavamurthy , "David S. Miller" , Masami Hiramatsu , Peter Zijlstra , Will Deacon , Petr Mladek , Sergey Senozhatsky , Juri Lelli , Vincent Guittot , Steven Rostedt , Andrew Morton , Mike Kravetz , Muchun Song , Naoya Horiguchi , "Matthew Wilcox (Oracle)" , David Howells , Jarkko Sakkinen , Paul Moore , James Morris , "Serge E. Hallyn" CC: Joel Granados , "H. Peter Anvin" , Oleksandr Tyshchenko , Amir Goldstein , John Fastabend , Martin KaFai Lau , Song Liu , Yonghong Song , KP Singh , Stanislav Fomichev , Hao Luo , Jiri Olsa , Waiman Long , Boqun Feng , John Ogness , Dietmar Eggemann , Ben Segall , Mel Gorman , Daniel Bristot de Oliveira , Valentin Schneider , Andy Lutomirski , Will Drewry , Mark Rutland , Miaohe Lin , , , , , , , , , , Subject: [PATCH 08/11] sysctl: Add size to register_sysctl_init Date: Wed, 21 Jun 2023 11:09:57 +0200 Message-ID: <20230621091000.424843-9-j.granados@samsung.com> X-Mailer: git-send-email 2.30.2 In-Reply-To: <20230621091000.424843-1-j.granados@samsung.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain X-Originating-IP: [106.210.248.248] X-ClientProxiedBy: CAMSVWEXC01.scsc.local (2002:6a01:e347::6a01:e347) To CAMSVWEXC02.scsc.local (2002:6a01:e348::6a01:e348) X-Brightmail-Tracker: H4sIAAAAAAAAA01Ta0xTZxj2O+frOYUNUxDDF2Vh6TbH2NBpXPKqKC7Z5nFxUed0N5PJ5YQa BLQFNs3MoKDIVahIt4KjQigIKIiFwLgVZFYshtHJqHIHGSCIcrcDYcBhC/+e932e53uf58cn ph162HXi44HBvDzQ64SUscUld6yN7vFVKt/3TTEukFaQz8AfN/IQTM+k0lA+0IphwtrKQsyc HkO+PpyC8cI5BsbrjAwM3R5DYO5tZkA9GI4hbbCBhfn2fgoyr07RMFAYhSCtMRLDiHIGQ19i MQ3zJZEsRGQWMFBrrGYh5aYTpKojKFBZExF0Na+DtIdbYOSKM1h1uSzcKMikQFmaQ0HJg3QE dckaGtovXsbQEBsA5aZJCorblAz0V8VTED2dhSE5RYmgorIew5+/pTHQkT8vgudxPQzUFdzH YLpzF0Pe9TARZLU0UZAffU0ElsQ+BJdG/kaQmb0BRqsPgdmgpUBX1o2hKdyAIC/5JQsvZmZE 0KpSYzDGGyiY750UQdWFLgrML4YwlN/MYHbv56bPJWCuc/gl5vJ/zUdcalgT5vTXHlJcW1YZ 4pIiRliuTNPOcpFVj1hOWxTC/VX+NRdZ91TE3cpx4zIrBikuxmKmuaLcaOaA6ze2Hr78ieOh vHzTrmO2ssrcBnyydAD98Lt+FoUhswHFIBsxkWwl2p8Ll7CDJAeRMbM4Btku4IkFPGVghWEc EdWj3v8dk2VdWCCyEam6n0IL9gXVPaufQBQj0pkSiRcJRvIeaRxuoxcJR8msHTFZjUvv0hKj DTGrm5lF1RqJJ+nIK15wiMVY8hbJuX58cW0n8SDDqhosnHYh51vUSzFsJDtJY+8zLGjsSf0v j5cwvaCJKE6lBUxIzcAALXjfIC1VmYyAz5J7+kfUYgYi0b1KGq3Jy8RHJEHds3xsDXli1LMC dibzZenLhkuIVM89Z4UhDxFd+CQlqHaQyAePlx0fkhylCi22IZLVxPLUXki0mqhK1LSwtiMX zjskojc1KzpoVnTQrOigRXQucuJDFAF+vGJLIP/9RoVXgCIk0G+jT1BAEVr4hqY540Qpyn4y urEWUWJUi4iYljravVak8nWw8/U6fYaXB30nDznBK2rRejGWOtm9u7Pex0Hi5xXM+/P8SV7+ H0uJbdaFUbn6n5QbZPZ3FY4TZ9xGj1ZezDBK92x6vV85VZkV7Z6UsX0+fQc+5hKuYS0qM3/E r8lj/IDsq+xPawy0q+9n3T2uctPYkPezVTJ3W84nblPs5Je3CkM6dqdIv7AapHv2BhSf3Bx6 UPNBbPvattjDQxb1425NVu+5l9sOZkjNE24lI1crpp27Pg/q99zWMnGqK9F/X+gnSeGzb0ed vSF758p4c4xIg001HrvW6rz99yccLuK0h6Ks5R9/q9++XhdITk1VcLt9ivindY2jR/Yx/6zq 3Xo4uLPccts7fhR7Vj+Ilb/C6zKaK93qtdd9f2z174vjhjosWs+G05dTmw1BpweOyqRYIfPa 7EbLFV7/AndzzmT1BAAA X-Brightmail-Tracker: H4sIAAAAAAAAA02TezBcdxTH53fv3buLmm5E5dZQHR0dI7WsVw8VTf+oXmlm0qnMtNHppDts kbIru0RipINdDSqpCBFsRO2seKyIxxqveMX7UW+SICXeod7vZ7HtjP8+c873e77n/HFYuE4E U5/lLfDniwQ8H2NSk2jZaxgyj66I9bDcnrMAWa6ShI4n2QjWt5NxKJsaIGBlc4AJUXuFBCgL QzFYfrpHwnJtAwkzz5cQdI32kpAwHUqAbLqVCftDkxjI/1zDYerpLQSydikBc2HbBIzHqHDY L5IyQSLPJaGmoZIJ9/NOQXKCBIPYzRgEw736IHtpBXMPDWAzPYsJT3LlGIQVZ2BQ1PMIQW1c Eg5Df8QT0Pq7L5S1rGKgGgwjYbLiNgaR6woC4u6HISh/1kRAd6mMhNfKfQYsRL8hoTa3jYCW +kYCsnNCGKDo78RAGZnJgBcx4wjuzU0gkD/+GBYrXaGrKhWD9JIRAjpDqxBkx+0yYWN7mwED sQkENNyuwmB/dJUBFRHDGHRtzBBQlpdGnr1Ar4ffIei/Z3cJWpmiRHRySCdBF2a+xOhBRQmi 70rmmHRJ0hCTlla8YtKp+QF0X9klWlr7D4MuyDCj5eXTGB31ogun87MiyW9M3TiOImGAP/9D L6HY/4zxD1yw4nDtgWNlY8/hWn/6o4OVrbGFk6MH38f7Gl9k4fQTx+tZVivhVzyFrtcV7qAQ 1FWFopAGi2LbUKslw8Qh67AViFpaNFTXDai8lV6Gmk9SO31RpFqziKiZTosopHnAKkTNZo4e iUj2J1T77CB+2NBlb2lTOw/qjhJwdp0GVR9hecgn2Z9Tr7NVB2ksFsE2oTJyvA/L2mxHaja2 mlCHGVG/9SccWTXYZ6j20fn/lnOkHi10I7X+BNWUOEaoxxtRElUyrmaKqp6awtVzPqL6K+Sk mm9Sy7sTKAbpJh2zJx2zJx2zpyI8C+nyA8S+nr5iLkfM8xUHCDw57kLffHTwEkX1mwXFKOXt IqcGYSxUgygWbqyrbZgf66Gj7cG7EcQXCS+LAnz44hpke3DmXVz/PXfhwU8J/C9z7SxtuTZ2 9pa29nbWxqe0XfwieDpsT54//xc+348v+t+HsTT0QzDijXdB86ur31qcXq7tq68/Z63VF9j7 VaukxzTeuslGuzbRRXrV69Z3oQXRk2560pCd/I79d8vmWTzJnZhKVVqbWXCv8wm/HHP9xPWc augbYwRn1T13ZK1VXbym6ftzH+/XuP63zela79iUCtyvTCC9v67Eht/UdVgsOSsvxYtce0iz DknQ0meuN9rSFRYmjzn3LgwYyBSB7l/EOz9UqJSyrY3z80aBzReVI+wPNLRM19JWBKEOZqYj kq3x71FRRWklVzqMOS1/3V3ODpb1LrQFXRfYCPnFC4aXzmeuMNJOW+vNN4Zvtntnj4+ZtLg5 h5l/6SIcrBqs639gq0p5n3uu0ZgQe/G4ZrhIzPsXGRMQfZsEAAA= X-CMS-MailID: 20230621091037eucas1p188e11d8064526a5a0549217d5a419647 X-Msg-Generator: CA X-RootMTR: 20230621091037eucas1p188e11d8064526a5a0549217d5a419647 X-EPHeader: CA CMS-TYPE: 201P X-CMS-RootMailID: 20230621091037eucas1p188e11d8064526a5a0549217d5a419647 References: <20230621091000.424843-1-j.granados@samsung.com> In order to remove the end element from the ctl_table struct arrays, we explicitly define the size when registering the targes. We add a size argument to the register_sysctl_init call and pass an ARRAY_SIZE for all the callers. Signed-off-by: Joel Granados --- arch/x86/kernel/cpu/intel.c | 2 +- drivers/char/random.c | 3 ++- drivers/tty/tty_io.c | 2 +- drivers/xen/balloon.c | 3 ++- fs/aio.c | 2 +- fs/coredump.c | 3 ++- fs/dcache.c | 3 ++- fs/exec.c | 3 ++- fs/file_table.c | 3 ++- fs/inode.c | 2 +- fs/locks.c | 2 +- fs/namei.c | 2 +- fs/namespace.c | 3 ++- fs/notify/dnotify/dnotify.c | 3 ++- fs/pipe.c | 3 ++- fs/proc/proc_sysctl.c | 11 ++--------- fs/quota/dquot.c | 3 ++- fs/sysctls.c | 3 ++- fs/userfaultfd.c | 3 ++- include/linux/sysctl.h | 8 +++++--- init/do_mounts_initrd.c | 3 ++- kernel/acct.c | 3 ++- kernel/bpf/syscall.c | 3 ++- kernel/delayacct.c | 3 ++- kernel/exit.c | 3 ++- kernel/hung_task.c | 3 ++- kernel/kexec_core.c | 3 ++- kernel/kprobes.c | 3 ++- kernel/latencytop.c | 3 ++- kernel/locking/lockdep.c | 3 ++- kernel/panic.c | 3 ++- kernel/pid_namespace.c | 3 ++- kernel/printk/sysctl.c | 3 ++- kernel/reboot.c | 3 ++- kernel/sched/autogroup.c | 3 ++- kernel/sched/core.c | 3 ++- kernel/sched/deadline.c | 3 ++- kernel/sched/fair.c | 3 ++- kernel/sched/rt.c | 3 ++- kernel/sched/topology.c | 3 ++- kernel/seccomp.c | 3 ++- kernel/signal.c | 3 ++- kernel/stackleak.c | 3 ++- kernel/sysctl.c | 4 ++-- kernel/trace/ftrace.c | 3 ++- kernel/trace/trace_events_user.c | 3 ++- kernel/umh.c | 3 ++- kernel/watchdog.c | 3 ++- mm/compaction.c | 2 +- mm/hugetlb.c | 2 +- mm/hugetlb_vmemmap.c | 3 ++- mm/memory-failure.c | 3 ++- mm/oom_kill.c | 3 ++- mm/page-writeback.c | 3 ++- security/keys/sysctl.c | 2 +- 55 files changed, 104 insertions(+), 66 deletions(-) diff --git a/arch/x86/kernel/cpu/intel.c b/arch/x86/kernel/cpu/intel.c index 1c4639588ff9..c77a3961443d 100644 --- a/arch/x86/kernel/cpu/intel.c +++ b/arch/x86/kernel/cpu/intel.c @@ -1195,7 +1195,7 @@ static struct ctl_table sld_sysctls[] = { static int __init sld_mitigate_sysctl_init(void) { - register_sysctl_init("kernel", sld_sysctls); + register_sysctl_init("kernel", sld_sysctls, ARRAY_SIZE(sld_sysctls)); return 0; } diff --git a/drivers/char/random.c b/drivers/char/random.c index 253f2ddb8913..8db2ea9e3d66 100644 --- a/drivers/char/random.c +++ b/drivers/char/random.c @@ -1692,7 +1692,8 @@ static struct ctl_table random_table[] = { */ static int __init random_sysctls_init(void) { - register_sysctl_init("kernel/random", random_table); + register_sysctl_init("kernel/random", random_table, + ARRAY_SIZE(random_table)); return 0; } device_initcall(random_sysctls_init); diff --git a/drivers/tty/tty_io.c b/drivers/tty/tty_io.c index c84be40fb8df..63fb3c543b94 100644 --- a/drivers/tty/tty_io.c +++ b/drivers/tty/tty_io.c @@ -3618,7 +3618,7 @@ static struct ctl_table tty_table[] = { */ int __init tty_init(void) { - register_sysctl_init("dev/tty", tty_table); + register_sysctl_init("dev/tty", tty_table, ARRAY_SIZE(tty_table)); cdev_init(&tty_cdev, &tty_fops); if (cdev_add(&tty_cdev, MKDEV(TTYAUX_MAJOR, 0), 1) || register_chrdev_region(MKDEV(TTYAUX_MAJOR, 0), 1, "/dev/tty") < 0) diff --git a/drivers/xen/balloon.c b/drivers/xen/balloon.c index 586a1673459e..e4544262a429 100644 --- a/drivers/xen/balloon.c +++ b/drivers/xen/balloon.c @@ -729,7 +729,8 @@ static int __init balloon_init(void) #ifdef CONFIG_XEN_BALLOON_MEMORY_HOTPLUG set_online_page_callback(&xen_online_page); register_memory_notifier(&xen_memory_nb); - register_sysctl_init("xen/balloon", balloon_table); + register_sysctl_init("xen/balloon", balloon_table, + ARRAY_SIZE(balloon_table)); #endif balloon_add_regions(); diff --git a/fs/aio.c b/fs/aio.c index b0b17bd098bb..b09abe7a14d3 100644 --- a/fs/aio.c +++ b/fs/aio.c @@ -244,7 +244,7 @@ static struct ctl_table aio_sysctls[] = { static void __init aio_sysctl_init(void) { - register_sysctl_init("fs", aio_sysctls); + register_sysctl_init("fs", aio_sysctls, ARRAY_SIZE(aio_sysctls)); } #else #define aio_sysctl_init() do { } while (0) diff --git a/fs/coredump.c b/fs/coredump.c index ece7badf701b..7e55428dce13 100644 --- a/fs/coredump.c +++ b/fs/coredump.c @@ -984,7 +984,8 @@ static struct ctl_table coredump_sysctls[] = { static int __init init_fs_coredump_sysctls(void) { - register_sysctl_init("kernel", coredump_sysctls); + register_sysctl_init("kernel", coredump_sysctls, + ARRAY_SIZE(coredump_sysctls)); return 0; } fs_initcall(init_fs_coredump_sysctls); diff --git a/fs/dcache.c b/fs/dcache.c index 52e6d5fdab6b..f02bfd383e66 100644 --- a/fs/dcache.c +++ b/fs/dcache.c @@ -196,7 +196,8 @@ static struct ctl_table fs_dcache_sysctls[] = { static int __init init_fs_dcache_sysctls(void) { - register_sysctl_init("fs", fs_dcache_sysctls); + register_sysctl_init("fs", fs_dcache_sysctls, + ARRAY_SIZE(fs_dcache_sysctls)); return 0; } fs_initcall(init_fs_dcache_sysctls); diff --git a/fs/exec.c b/fs/exec.c index a466e797c8e2..5572d148738b 100644 --- a/fs/exec.c +++ b/fs/exec.c @@ -2170,7 +2170,8 @@ static struct ctl_table fs_exec_sysctls[] = { static int __init init_fs_exec_sysctls(void) { - register_sysctl_init("fs", fs_exec_sysctls); + register_sysctl_init("fs", fs_exec_sysctls, + ARRAY_SIZE(fs_exec_sysctls)); return 0; } diff --git a/fs/file_table.c b/fs/file_table.c index 372653b92617..23a645521960 100644 --- a/fs/file_table.c +++ b/fs/file_table.c @@ -120,7 +120,8 @@ static struct ctl_table fs_stat_sysctls[] = { static int __init init_fs_stat_sysctls(void) { - register_sysctl_init("fs", fs_stat_sysctls); + register_sysctl_init("fs", fs_stat_sysctls, + ARRAY_SIZE(fs_stat_sysctls)); if (IS_ENABLED(CONFIG_BINFMT_MISC)) { struct ctl_table_header *hdr; hdr = register_sysctl_mount_point("fs/binfmt_misc"); diff --git a/fs/inode.c b/fs/inode.c index 577799b7855f..0a0ad1a2a5d2 100644 --- a/fs/inode.c +++ b/fs/inode.c @@ -135,7 +135,7 @@ static struct ctl_table inodes_sysctls[] = { static int __init init_fs_inode_sysctls(void) { - register_sysctl_init("fs", inodes_sysctls); + register_sysctl_init("fs", inodes_sysctls, ARRAY_SIZE(inodes_sysctls)); return 0; } early_initcall(init_fs_inode_sysctls); diff --git a/fs/locks.c b/fs/locks.c index df8b26a42524..ce5733480aa6 100644 --- a/fs/locks.c +++ b/fs/locks.c @@ -116,7 +116,7 @@ static struct ctl_table locks_sysctls[] = { static int __init init_fs_locks_sysctls(void) { - register_sysctl_init("fs", locks_sysctls); + register_sysctl_init("fs", locks_sysctls, ARRAY_SIZE(locks_sysctls)); return 0; } early_initcall(init_fs_locks_sysctls); diff --git a/fs/namei.c b/fs/namei.c index e4fe0879ae55..9b567af081af 100644 --- a/fs/namei.c +++ b/fs/namei.c @@ -1073,7 +1073,7 @@ static struct ctl_table namei_sysctls[] = { static int __init init_fs_namei_sysctls(void) { - register_sysctl_init("fs", namei_sysctls); + register_sysctl_init("fs", namei_sysctls, ARRAY_SIZE(namei_sysctls)); return 0; } fs_initcall(init_fs_namei_sysctls); diff --git a/fs/namespace.c b/fs/namespace.c index 54847db5b819..e7f251e40485 100644 --- a/fs/namespace.c +++ b/fs/namespace.c @@ -4715,7 +4715,8 @@ static struct ctl_table fs_namespace_sysctls[] = { static int __init init_fs_namespace_sysctls(void) { - register_sysctl_init("fs", fs_namespace_sysctls); + register_sysctl_init("fs", fs_namespace_sysctls, + ARRAY_SIZE(fs_namespace_sysctls)); return 0; } fs_initcall(init_fs_namespace_sysctls); diff --git a/fs/notify/dnotify/dnotify.c b/fs/notify/dnotify/dnotify.c index 190aa717fa32..2c6fe98d6fe1 100644 --- a/fs/notify/dnotify/dnotify.c +++ b/fs/notify/dnotify/dnotify.c @@ -33,7 +33,8 @@ static struct ctl_table dnotify_sysctls[] = { }; static void __init dnotify_sysctl_init(void) { - register_sysctl_init("fs", dnotify_sysctls); + register_sysctl_init("fs", dnotify_sysctls, + ARRAY_SIZE(dnotify_sysctls)); } #else #define dnotify_sysctl_init() do { } while (0) diff --git a/fs/pipe.c b/fs/pipe.c index 2d88f73f585a..8a808fc25552 100644 --- a/fs/pipe.c +++ b/fs/pipe.c @@ -1508,7 +1508,8 @@ static int __init init_pipe_fs(void) } } #ifdef CONFIG_SYSCTL - register_sysctl_init("fs", fs_pipe_sysctls); + register_sysctl_init("fs", fs_pipe_sysctls, + ARRAY_SIZE(fs_pipe_sysctls)); #endif return err; } diff --git a/fs/proc/proc_sysctl.c b/fs/proc/proc_sysctl.c index 66c9d7a07d2e..9670c5b7b5b2 100644 --- a/fs/proc/proc_sysctl.c +++ b/fs/proc/proc_sysctl.c @@ -1443,16 +1443,9 @@ EXPORT_SYMBOL(register_sysctl); * Context: if your base directory does not exist it will be created for you. */ void __init __register_sysctl_init(const char *path, struct ctl_table *table, - const char *table_name) + const char *table_name, size_t table_size) { - int count = 0; - struct ctl_table *entry; - struct ctl_table_header t_hdr, *hdr; - - t_hdr.ctl_table = table; - list_for_each_table_entry(entry, (&t_hdr)) - count++; - hdr = register_sysctl(path, table, count); + struct ctl_table_header *hdr = register_sysctl(path, table, table_size); if (unlikely(!hdr)) { pr_err("failed when register_sysctl %s to %s\n", table_name, path); diff --git a/fs/quota/dquot.c b/fs/quota/dquot.c index ffd40dc3e4e9..7c07654e4253 100644 --- a/fs/quota/dquot.c +++ b/fs/quota/dquot.c @@ -2953,7 +2953,8 @@ static int __init dquot_init(void) printk(KERN_NOTICE "VFS: Disk quotas %s\n", __DQUOT_VERSION__); - register_sysctl_init("fs/quota", fs_dqstats_table); + register_sysctl_init("fs/quota", fs_dqstats_table, + ARRAY_SIZE(fs_dqstats_table)); dquot_cachep = kmem_cache_create("dquot", sizeof(struct dquot), sizeof(unsigned long) * 4, diff --git a/fs/sysctls.c b/fs/sysctls.c index 76a0aee8c229..944254dd92c0 100644 --- a/fs/sysctls.c +++ b/fs/sysctls.c @@ -31,7 +31,8 @@ static struct ctl_table fs_shared_sysctls[] = { static int __init init_fs_sysctls(void) { - register_sysctl_init("fs", fs_shared_sysctls); + register_sysctl_init("fs", fs_shared_sysctls, + ARRAY_SIZE(fs_shared_sysctls)); return 0; } diff --git a/fs/userfaultfd.c b/fs/userfaultfd.c index 0fd96d6e39ce..4c3858769226 100644 --- a/fs/userfaultfd.c +++ b/fs/userfaultfd.c @@ -2219,7 +2219,8 @@ static int __init userfaultfd_init(void) SLAB_HWCACHE_ALIGN|SLAB_PANIC, init_once_userfaultfd_ctx); #ifdef CONFIG_SYSCTL - register_sysctl_init("vm", vm_userfaultfd_table); + register_sysctl_init("vm", vm_userfaultfd_table, + ARRAY_SIZE(vm_userfaultfd_table)); #endif return 0; } diff --git a/include/linux/sysctl.h b/include/linux/sysctl.h index 71d7935e50f0..3074a506592d 100644 --- a/include/linux/sysctl.h +++ b/include/linux/sysctl.h @@ -233,8 +233,9 @@ void unregister_sysctl_table(struct ctl_table_header * table); extern int sysctl_init_bases(void); extern void __register_sysctl_init(const char *path, struct ctl_table *table, - const char *table_name); -#define register_sysctl_init(path, table) __register_sysctl_init(path, table, #table) + const char *table_name, size_t table_size); +#define register_sysctl_init(path, table, size) \ + __register_sysctl_init(path, table, #table, size) extern struct ctl_table_header *register_sysctl_mount_point(const char *path); void do_sysctl_args(void); @@ -254,7 +255,8 @@ extern int no_unaligned_warning; #else /* CONFIG_SYSCTL */ -static inline void register_sysctl_init(const char *path, struct ctl_table *table) +static inline void register_sysctl_init(const char *path, struct ctl_table *table, + size_t table_size) { } diff --git a/init/do_mounts_initrd.c b/init/do_mounts_initrd.c index 34731241377d..2b10abb8c80e 100644 --- a/init/do_mounts_initrd.c +++ b/init/do_mounts_initrd.c @@ -34,7 +34,8 @@ static struct ctl_table kern_do_mounts_initrd_table[] = { static __init int kernel_do_mounts_initrd_sysctls_init(void) { - register_sysctl_init("kernel", kern_do_mounts_initrd_table); + register_sysctl_init("kernel", kern_do_mounts_initrd_table, + ARRAY_SIZE(kern_do_mounts_initrd_table)); return 0; } late_initcall(kernel_do_mounts_initrd_sysctls_init); diff --git a/kernel/acct.c b/kernel/acct.c index 010667ce6080..67125b7c5ca2 100644 --- a/kernel/acct.c +++ b/kernel/acct.c @@ -89,7 +89,8 @@ static struct ctl_table kern_acct_table[] = { static __init int kernel_acct_sysctls_init(void) { - register_sysctl_init("kernel", kern_acct_table); + register_sysctl_init("kernel", kern_acct_table, + ARRAY_SIZE(kern_acct_table)); return 0; } late_initcall(kernel_acct_sysctls_init); diff --git a/kernel/bpf/syscall.c b/kernel/bpf/syscall.c index 14f39c1e573e..a81b5122b16b 100644 --- a/kernel/bpf/syscall.c +++ b/kernel/bpf/syscall.c @@ -5406,7 +5406,8 @@ static struct ctl_table bpf_syscall_table[] = { static int __init bpf_syscall_sysctl_init(void) { - register_sysctl_init("kernel", bpf_syscall_table); + register_sysctl_init("kernel", bpf_syscall_table, + ARRAY_SIZE(bpf_syscall_table)); return 0; } late_initcall(bpf_syscall_sysctl_init); diff --git a/kernel/delayacct.c b/kernel/delayacct.c index 6f0c358e73d8..4ef14cb5b5a0 100644 --- a/kernel/delayacct.c +++ b/kernel/delayacct.c @@ -79,7 +79,8 @@ static struct ctl_table kern_delayacct_table[] = { static __init int kernel_delayacct_sysctls_init(void) { - register_sysctl_init("kernel", kern_delayacct_table); + register_sysctl_init("kernel", kern_delayacct_table, + ARRAY_SIZE(kern_delayacct_table)); return 0; } late_initcall(kernel_delayacct_sysctls_init); diff --git a/kernel/exit.c b/kernel/exit.c index 34b90e2e7cf7..633c7a52ef80 100644 --- a/kernel/exit.c +++ b/kernel/exit.c @@ -95,7 +95,8 @@ static struct ctl_table kern_exit_table[] = { static __init int kernel_exit_sysctls_init(void) { - register_sysctl_init("kernel", kern_exit_table); + register_sysctl_init("kernel", kern_exit_table, + ARRAY_SIZE(kern_exit_table)); return 0; } late_initcall(kernel_exit_sysctls_init); diff --git a/kernel/hung_task.c b/kernel/hung_task.c index 9a24574988d2..816f133266c4 100644 --- a/kernel/hung_task.c +++ b/kernel/hung_task.c @@ -318,7 +318,8 @@ static struct ctl_table hung_task_sysctls[] = { static void __init hung_task_sysctl_init(void) { - register_sysctl_init("kernel", hung_task_sysctls); + register_sysctl_init("kernel", hung_task_sysctls, + ARRAY_SIZE(hung_task_sysctls)); } #else #define hung_task_sysctl_init() do { } while (0) diff --git a/kernel/kexec_core.c b/kernel/kexec_core.c index 3d578c6fefee..63b04e710890 100644 --- a/kernel/kexec_core.c +++ b/kernel/kexec_core.c @@ -1007,7 +1007,8 @@ static struct ctl_table kexec_core_sysctls[] = { static int __init kexec_core_sysctl_init(void) { - register_sysctl_init("kernel", kexec_core_sysctls); + register_sysctl_init("kernel", kexec_core_sysctls, + ARRAY_SIZE(kexec_core_sysctls)); return 0; } late_initcall(kexec_core_sysctl_init); diff --git a/kernel/kprobes.c b/kernel/kprobes.c index 00e177de91cc..06a3ac7993f0 100644 --- a/kernel/kprobes.c +++ b/kernel/kprobes.c @@ -973,7 +973,8 @@ static struct ctl_table kprobe_sysctls[] = { static void __init kprobe_sysctls_init(void) { - register_sysctl_init("debug", kprobe_sysctls); + register_sysctl_init("debug", kprobe_sysctls, + ARRAY_SIZE(kprobe_sysctls)); } #endif /* CONFIG_SYSCTL */ diff --git a/kernel/latencytop.c b/kernel/latencytop.c index 781249098cb6..55050ae0e197 100644 --- a/kernel/latencytop.c +++ b/kernel/latencytop.c @@ -293,7 +293,8 @@ static int __init init_lstats_procfs(void) { proc_create("latency_stats", 0644, NULL, &lstats_proc_ops); #ifdef CONFIG_SYSCTL - register_sysctl_init("kernel", latencytop_sysctl); + register_sysctl_init("kernel", latencytop_sysctl, + ARRAY_SIZE(latencytop_sysctl)); #endif return 0; } diff --git a/kernel/locking/lockdep.c b/kernel/locking/lockdep.c index dcd1d5bfc1e0..1e29cec7e00c 100644 --- a/kernel/locking/lockdep.c +++ b/kernel/locking/lockdep.c @@ -102,7 +102,8 @@ static struct ctl_table kern_lockdep_table[] = { static __init int kernel_lockdep_sysctls_init(void) { - register_sysctl_init("kernel", kern_lockdep_table); + register_sysctl_init("kernel", kern_lockdep_table, + ARRAY_SIZE(kern_lockdep_table)); return 0; } late_initcall(kernel_lockdep_sysctls_init); diff --git a/kernel/panic.c b/kernel/panic.c index 886d2ebd0a0d..0008273d23fd 100644 --- a/kernel/panic.c +++ b/kernel/panic.c @@ -104,7 +104,8 @@ static struct ctl_table kern_panic_table[] = { static __init int kernel_panic_sysctls_init(void) { - register_sysctl_init("kernel", kern_panic_table); + register_sysctl_init("kernel", kern_panic_table, + ARRAY_SIZE(kern_panic_table)); return 0; } late_initcall(kernel_panic_sysctls_init); diff --git a/kernel/pid_namespace.c b/kernel/pid_namespace.c index b43eee07b00c..7fd5e8adc2e8 100644 --- a/kernel/pid_namespace.c +++ b/kernel/pid_namespace.c @@ -472,7 +472,8 @@ static __init int pid_namespaces_init(void) pid_ns_cachep = KMEM_CACHE(pid_namespace, SLAB_PANIC | SLAB_ACCOUNT); #ifdef CONFIG_CHECKPOINT_RESTORE - register_sysctl_init("kernel", pid_ns_ctl_table); + register_sysctl_init("kernel", pid_ns_ctl_table, + ARRAY_SIZE(pid_ns_ctl_table)); #endif register_pid_ns_sysctl_table_vm(); diff --git a/kernel/printk/sysctl.c b/kernel/printk/sysctl.c index c228343eeb97..28f37b86414e 100644 --- a/kernel/printk/sysctl.c +++ b/kernel/printk/sysctl.c @@ -81,5 +81,6 @@ static struct ctl_table printk_sysctls[] = { void __init printk_sysctl_init(void) { - register_sysctl_init("kernel", printk_sysctls); + register_sysctl_init("kernel", printk_sysctls, + ARRAY_SIZE(printk_sysctls)); } diff --git a/kernel/reboot.c b/kernel/reboot.c index 3bba88c7ffc6..cf81d8bfb523 100644 --- a/kernel/reboot.c +++ b/kernel/reboot.c @@ -1277,7 +1277,8 @@ static struct ctl_table kern_reboot_table[] = { static void __init kernel_reboot_sysctls_init(void) { - register_sysctl_init("kernel", kern_reboot_table); + register_sysctl_init("kernel", kern_reboot_table, + ARRAY_SIZE(kern_reboot_table)); } #else #define kernel_reboot_sysctls_init() do { } while (0) diff --git a/kernel/sched/autogroup.c b/kernel/sched/autogroup.c index 991fc9002535..2b9ce82279a5 100644 --- a/kernel/sched/autogroup.c +++ b/kernel/sched/autogroup.c @@ -24,7 +24,8 @@ static struct ctl_table sched_autogroup_sysctls[] = { static void __init sched_autogroup_sysctl_init(void) { - register_sysctl_init("kernel", sched_autogroup_sysctls); + register_sysctl_init("kernel", sched_autogroup_sysctls, + ARRAY_SIZE(sched_autogroup_sysctls)); } #else #define sched_autogroup_sysctl_init() do { } while (0) diff --git a/kernel/sched/core.c b/kernel/sched/core.c index a68d1276bab0..b8c7e01dd78a 100644 --- a/kernel/sched/core.c +++ b/kernel/sched/core.c @@ -4677,7 +4677,8 @@ static struct ctl_table sched_core_sysctls[] = { }; static int __init sched_core_sysctl_init(void) { - register_sysctl_init("kernel", sched_core_sysctls); + register_sysctl_init("kernel", sched_core_sysctls, + ARRAY_SIZE(sched_core_sysctls)); return 0; } late_initcall(sched_core_sysctl_init); diff --git a/kernel/sched/deadline.c b/kernel/sched/deadline.c index 5a9a4b81c972..2aacf5ea2ff3 100644 --- a/kernel/sched/deadline.c +++ b/kernel/sched/deadline.c @@ -46,7 +46,8 @@ static struct ctl_table sched_dl_sysctls[] = { static int __init sched_dl_sysctl_init(void) { - register_sysctl_init("kernel", sched_dl_sysctls); + register_sysctl_init("kernel", sched_dl_sysctls, + ARRAY_SIZE(sched_dl_sysctls)); return 0; } late_initcall(sched_dl_sysctl_init); diff --git a/kernel/sched/fair.c b/kernel/sched/fair.c index 373ff5f55884..db09e56c2dd3 100644 --- a/kernel/sched/fair.c +++ b/kernel/sched/fair.c @@ -217,7 +217,8 @@ static struct ctl_table sched_fair_sysctls[] = { static int __init sched_fair_sysctl_init(void) { - register_sysctl_init("kernel", sched_fair_sysctls); + register_sysctl_init("kernel", sched_fair_sysctls, + ARRAY_SIZE(sched_fair_sysctls)); return 0; } late_initcall(sched_fair_sysctl_init); diff --git a/kernel/sched/rt.c b/kernel/sched/rt.c index 00e0e5074115..aab9b900ed6f 100644 --- a/kernel/sched/rt.c +++ b/kernel/sched/rt.c @@ -57,7 +57,8 @@ static struct ctl_table sched_rt_sysctls[] = { static int __init sched_rt_sysctl_init(void) { - register_sysctl_init("kernel", sched_rt_sysctls); + register_sysctl_init("kernel", sched_rt_sysctls, + ARRAY_SIZE(sched_rt_sysctls)); return 0; } late_initcall(sched_rt_sysctl_init); diff --git a/kernel/sched/topology.c b/kernel/sched/topology.c index 6682535e37c8..46d7c3f3e830 100644 --- a/kernel/sched/topology.c +++ b/kernel/sched/topology.c @@ -255,7 +255,8 @@ static struct ctl_table sched_energy_aware_sysctls[] = { static int __init sched_energy_aware_sysctl_init(void) { - register_sysctl_init("kernel", sched_energy_aware_sysctls); + register_sysctl_init("kernel", sched_energy_aware_sysctls, + ARRAY_SIZE(sched_energy_aware_sysctls)); return 0; } diff --git a/kernel/seccomp.c b/kernel/seccomp.c index d3e584065c7f..9683a9a4709d 100644 --- a/kernel/seccomp.c +++ b/kernel/seccomp.c @@ -2386,7 +2386,8 @@ static struct ctl_table seccomp_sysctl_table[] = { static int __init seccomp_sysctl_init(void) { - register_sysctl_init("kernel/seccomp", seccomp_sysctl_table); + register_sysctl_init("kernel/seccomp", seccomp_sysctl_table, + ARRAY_SIZE(seccomp_sysctl_table)); return 0; } diff --git a/kernel/signal.c b/kernel/signal.c index 5ba4150c01a7..19791930f12a 100644 --- a/kernel/signal.c +++ b/kernel/signal.c @@ -4788,7 +4788,8 @@ static struct ctl_table signal_debug_table[] = { static int __init init_signal_sysctls(void) { - register_sysctl_init("debug", signal_debug_table); + register_sysctl_init("debug", signal_debug_table, + ARRAY_SIZE(signal_debug_table)); return 0; } early_initcall(init_signal_sysctls); diff --git a/kernel/stackleak.c b/kernel/stackleak.c index 34c9d81eea94..123844341148 100644 --- a/kernel/stackleak.c +++ b/kernel/stackleak.c @@ -59,7 +59,8 @@ static struct ctl_table stackleak_sysctls[] = { static int __init stackleak_sysctls_init(void) { - register_sysctl_init("kernel", stackleak_sysctls); + register_sysctl_init("kernel", stackleak_sysctls, + ARRAY_SIZE(stackleak_sysctls)); return 0; } late_initcall(stackleak_sysctls_init); diff --git a/kernel/sysctl.c b/kernel/sysctl.c index 48046932d573..2b9b0c8569ba 100644 --- a/kernel/sysctl.c +++ b/kernel/sysctl.c @@ -2321,8 +2321,8 @@ static struct ctl_table vm_table[] = { int __init sysctl_init_bases(void) { - register_sysctl_init("kernel", kern_table); - register_sysctl_init("vm", vm_table); + register_sysctl_init("kernel", kern_table, ARRAY_SIZE(kern_table)); + register_sysctl_init("vm", vm_table, ARRAY_SIZE(vm_table)); return 0; } diff --git a/kernel/trace/ftrace.c b/kernel/trace/ftrace.c index 764668467155..84ef42111f78 100644 --- a/kernel/trace/ftrace.c +++ b/kernel/trace/ftrace.c @@ -8219,7 +8219,8 @@ static struct ctl_table ftrace_sysctls[] = { static int __init ftrace_sysctl_init(void) { - register_sysctl_init("kernel", ftrace_sysctls); + register_sysctl_init("kernel", ftrace_sysctls, + ARRAY_SIZE(ftrace_sysctls)); return 0; } late_initcall(ftrace_sysctl_init); diff --git a/kernel/trace/trace_events_user.c b/kernel/trace/trace_events_user.c index b1ecd7677642..ac019cb21b18 100644 --- a/kernel/trace/trace_events_user.c +++ b/kernel/trace/trace_events_user.c @@ -2563,7 +2563,8 @@ static int __init trace_events_user_init(void) if (dyn_event_register(&user_event_dops)) pr_warn("user_events could not register with dyn_events\n"); - register_sysctl_init("kernel", user_event_sysctls); + register_sysctl_init("kernel", user_event_sysctls, + ARRAY_SIZE(user_event_sysctls)); return 0; } diff --git a/kernel/umh.c b/kernel/umh.c index 41088c5c39fd..187a30ff8541 100644 --- a/kernel/umh.c +++ b/kernel/umh.c @@ -565,7 +565,8 @@ static struct ctl_table usermodehelper_table[] = { static int __init init_umh_sysctls(void) { - register_sysctl_init("kernel/usermodehelper", usermodehelper_table); + register_sysctl_init("kernel/usermodehelper", usermodehelper_table, + ARRAY_SIZE(usermodehelper_table)); return 0; } early_initcall(init_umh_sysctls); diff --git a/kernel/watchdog.c b/kernel/watchdog.c index 8e61f21e7e33..dd5a343fadde 100644 --- a/kernel/watchdog.c +++ b/kernel/watchdog.c @@ -847,7 +847,8 @@ static struct ctl_table watchdog_sysctls[] = { static void __init watchdog_sysctl_init(void) { - register_sysctl_init("kernel", watchdog_sysctls); + register_sysctl_init("kernel", watchdog_sysctls, + ARRAY_SIZE(watchdog_sysctls)); } #else #define watchdog_sysctl_init() do { } while (0) diff --git a/mm/compaction.c b/mm/compaction.c index c8bcdea15f5f..ca09cdd72bf3 100644 --- a/mm/compaction.c +++ b/mm/compaction.c @@ -3145,7 +3145,7 @@ static int __init kcompactd_init(void) for_each_node_state(nid, N_MEMORY) kcompactd_run(nid); - register_sysctl_init("vm", vm_compaction); + register_sysctl_init("vm", vm_compaction, ARRAY_SIZE(vm_compaction)); return 0; } subsys_initcall(kcompactd_init) diff --git a/mm/hugetlb.c b/mm/hugetlb.c index f154019e6b84..7838b0c0b82b 100644 --- a/mm/hugetlb.c +++ b/mm/hugetlb.c @@ -4681,7 +4681,7 @@ static struct ctl_table hugetlb_table[] = { static void hugetlb_sysctl_init(void) { - register_sysctl_init("vm", hugetlb_table); + register_sysctl_init("vm", hugetlb_table, ARRAY_SIZE(hugetlb_table)); } #endif /* CONFIG_SYSCTL */ diff --git a/mm/hugetlb_vmemmap.c b/mm/hugetlb_vmemmap.c index 27f001e0f0a2..65885a06269b 100644 --- a/mm/hugetlb_vmemmap.c +++ b/mm/hugetlb_vmemmap.c @@ -597,7 +597,8 @@ static int __init hugetlb_vmemmap_init(void) for_each_hstate(h) { if (hugetlb_vmemmap_optimizable(h)) { - register_sysctl_init("vm", hugetlb_vmemmap_sysctls); + register_sysctl_init("vm", hugetlb_vmemmap_sysctls, + ARRAY_SIZE(hugetlb_vmemmap_sysctls)); break; } } diff --git a/mm/memory-failure.c b/mm/memory-failure.c index 5b663eca1f29..46aef76d8e91 100644 --- a/mm/memory-failure.c +++ b/mm/memory-failure.c @@ -148,7 +148,8 @@ static struct ctl_table memory_failure_table[] = { static int __init memory_failure_sysctl_init(void) { - register_sysctl_init("vm", memory_failure_table); + register_sysctl_init("vm", memory_failure_table, + ARRAY_SIZE(memory_failure_table)); return 0; } late_initcall(memory_failure_sysctl_init); diff --git a/mm/oom_kill.c b/mm/oom_kill.c index 044e1eed720e..500cf2ef9faa 100644 --- a/mm/oom_kill.c +++ b/mm/oom_kill.c @@ -734,7 +734,8 @@ static int __init oom_init(void) { oom_reaper_th = kthread_run(oom_reaper, NULL, "oom_reaper"); #ifdef CONFIG_SYSCTL - register_sysctl_init("vm", vm_oom_kill_table); + register_sysctl_init("vm", vm_oom_kill_table, + ARRAY_SIZE(vm_oom_kill_table)); #endif return 0; } diff --git a/mm/page-writeback.c b/mm/page-writeback.c index db7943999007..9f997de8d12f 100644 --- a/mm/page-writeback.c +++ b/mm/page-writeback.c @@ -2320,7 +2320,8 @@ void __init page_writeback_init(void) cpuhp_setup_state(CPUHP_MM_WRITEBACK_DEAD, "mm/writeback:dead", NULL, page_writeback_cpu_online); #ifdef CONFIG_SYSCTL - register_sysctl_init("vm", vm_page_writeback_sysctls); + register_sysctl_init("vm", vm_page_writeback_sysctls, + ARRAY_SIZE(vm_page_writeback_sysctls)); #endif } diff --git a/security/keys/sysctl.c b/security/keys/sysctl.c index b72b82bb20c6..fa305f74f658 100644 --- a/security/keys/sysctl.c +++ b/security/keys/sysctl.c @@ -71,7 +71,7 @@ struct ctl_table key_sysctls[] = { static int __init init_security_keys_sysctls(void) { - register_sysctl_init("kernel/keys", key_sysctls); + register_sysctl_init("kernel/keys", key_sysctls, ARRAY_SIZE(key_sysctls)); return 0; } early_initcall(init_security_keys_sysctls); -- 2.30.2 From xen-devel-bounces@lists.xenproject.org Wed Jun 21 13:18:33 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 13:18:33 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552737.862999 (Exim 4.92) (envelope-from ) id 1qBxj4-0003bk-Ee; Wed, 21 Jun 2023 13:18:22 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552737.862999; Wed, 21 Jun 2023 13:18:22 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBxj4-0003a5-73; Wed, 21 Jun 2023 13:18:22 +0000 Received: by outflank-mailman (input) for mailman id 552737; Wed, 21 Jun 2023 13:15:58 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBxgj-0002yQ-VZ for xen-devel@lists.xenproject.org; Wed, 21 Jun 2023 13:15:57 +0000 Received: from mailout1.w1.samsung.com (mailout1.w1.samsung.com [210.118.77.11]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id c14a0da7-1035-11ee-8611-37d641c3527e; Wed, 21 Jun 2023 15:15:55 +0200 (CEST) Received: from eucas1p2.samsung.com (unknown [182.198.249.207]) by mailout1.w1.samsung.com (KnoxPortal) with ESMTP id 20230621131555euoutp01cbc0ed048af8c2bf28332479f20c2ce4~qru-OYmE12681126811euoutp01m; Wed, 21 Jun 2023 13:15:55 +0000 (GMT) Received: from eusmges2new.samsung.com (unknown [203.254.199.244]) by eucas1p2.samsung.com (KnoxPortal) with ESMTP id 20230621131555eucas1p20be9c897ff3f7c6cf943c864400829af~qru_4FVm-1334713347eucas1p2z; Wed, 21 Jun 2023 13:15:55 +0000 (GMT) Received: from eucas1p2.samsung.com ( [182.198.249.207]) by eusmges2new.samsung.com (EUCPMTA) with SMTP id C1.C4.11320.A08F2946; Wed, 21 Jun 2023 14:15:54 +0100 (BST) Received: from eusmtrp1.samsung.com (unknown [182.198.249.138]) by eucas1p1.samsung.com (KnoxPortal) with ESMTPA id 20230621131554eucas1p135050d4ea931b8da593678132937163f~qru_TTVJM0660106601eucas1p1u; Wed, 21 Jun 2023 13:15:54 +0000 (GMT) Received: from eusmgms2.samsung.com (unknown [182.198.249.180]) by eusmtrp1.samsung.com (KnoxPortal) with ESMTP id 20230621131554eusmtrp1692d0318dd759904de572872ce9c6b36~qru_RdmKS1434014340eusmtrp1j; Wed, 21 Jun 2023 13:15:54 +0000 (GMT) Received: from eusmtip1.samsung.com ( [203.254.199.221]) by eusmgms2.samsung.com (EUCPMTA) with SMTP id 94.9A.14344.A08F2946; Wed, 21 Jun 2023 14:15:54 +0100 (BST) Received: from CAMSVWEXC02.scsc.local (unknown [106.1.227.72]) by eusmtip1.samsung.com (KnoxPortal) with ESMTPA id 20230621131553eusmtip164806c07aa1bfa8f2bab3ed09c2fc98c~qru95WHid1267712677eusmtip1g; Wed, 21 Jun 2023 13:15:53 +0000 (GMT) Received: from localhost (106.210.248.248) by CAMSVWEXC02.scsc.local (2002:6a01:e348::6a01:e348) with Microsoft SMTP Server (TLS) id 15.0.1497.2; Wed, 21 Jun 2023 14:15:53 +0100 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: c14a0da7-1035-11ee-8611-37d641c3527e DKIM-Filter: OpenDKIM Filter v2.11.0 mailout1.w1.samsung.com 20230621131555euoutp01cbc0ed048af8c2bf28332479f20c2ce4~qru-OYmE12681126811euoutp01m DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=samsung.com; s=mail20170921; t=1687353355; bh=NbLD2SuFhZddkTpTyuzHX5np9Ewwh7mfi7FsRT8ROaQ=; h=Date:From:To:CC:Subject:In-Reply-To:References:From; b=JNcJ5ITswF0IEJpYFOaxysTaMYVdrBOLr7EOczmyHgvwYgKoHvv+Z1wasrE5vJ9ze mG9m6hTMHD7eQZj6dy6futmrUSKu6ZtWcQPOiIGUJooV0+o97DkZ38AV+6ABgERAne ODsU39a5aZus6HUZguwhXM1F7n/MUL3RoWmKiS4c= X-AuditID: cbfec7f4-97dff70000022c38-5c-6492f80aeefc Date: Wed, 21 Jun 2023 15:15:52 +0200 From: Joel Granados To: Greg Kroah-Hartman CC: , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , , Theodore Ts'o , "Jason A. Donenfeld" , Jiri Slaby , Juergen Gross , Stefano Stabellini , Benjamin LaHaise , Alexander Viro , Christian Brauner , Jeff Layton , Chuck Lever , Jan Kara , Kees Cook , Iurii Zaikin , Alexei Starovoitov , Daniel Borkmann , Andrii Nakryiko , Balbir Singh , Eric Biederman , "Naveen N. Rao" , Anil S Keshavamurthy , "David S. Miller" , Masami Hiramatsu , Peter Zijlstra , Will Deacon , Petr Mladek , Sergey Senozhatsky , Juri Lelli , Vincent Guittot , Steven Rostedt , Andrew Morton , Mike Kravetz , Muchun Song , Naoya Horiguchi , "Matthew Wilcox (Oracle)" , David Howells , Jarkko Sakkinen , Paul Moore , James Morris , "Serge E. Hallyn" , "H. Peter Anvin" , Oleksandr Tyshchenko , Amir Goldstein , John Fastabend , Martin KaFai Lau , Song Liu , Yonghong Song , KP Singh , Stanislav Fomichev , Hao Luo , Jiri Olsa , Waiman Long , Boqun Feng , John Ogness , Dietmar Eggemann , Ben Segall , Mel Gorman , Daniel Bristot de Oliveira , Valentin Schneider , Andy Lutomirski , Will Drewry , Mark Rutland , Miaohe Lin , , , , , , , , , , Subject: Re: [PATCH 08/11] sysctl: Add size to register_sysctl_init Message-ID: <20230621131552.pqsordxcjmiopciq@localhost> MIME-Version: 1.0 Content-Type: multipart/signed; micalg="pgp-sha512"; protocol="application/pgp-signature"; boundary="kqwdriluwhsvqta5" Content-Disposition: inline In-Reply-To: <2023062150-outbound-quiet-2609@gregkh> X-Originating-IP: [106.210.248.248] X-ClientProxiedBy: CAMSVWEXC01.scsc.local (2002:6a01:e347::6a01:e347) To CAMSVWEXC02.scsc.local (2002:6a01:e348::6a01:e348) X-Brightmail-Tracker: H4sIAAAAAAAAA2VTa1BUZRjuO+fbc5ZVmCOYfCH+CEwNBAtT3zFpYrLxdDMtK6sxW+UMOAoo K6ZZCssmsmIgoOCCBu0IC7sBwrJBuOCsIHETJLkJeAMV5eINBNyRjfXg5Ez/nve5nO95fhwp 7Xxc6ibdErpTCA+Vb/NgZNh0frzRRzaWGPhG6YHFkJ5vYKApT49g1JpGQ1lfJ4bh8U4W1BNG DAZjFAWPCiYYeFRZzUD/uYcImntaGEi5E4Uh/U49C7bu2xRoMx/T0FcQgyC9UYVhSGnFcDOh mAabScVCtDafAUt1BQvHTrtCWko0BYnjCQiutbhBeocfDJ1wh/GsXBby8rUUKEt0FJgu/Yag MllDQ3f8UQz1h0KgrG6EguIuJQO3yw9TEDt6CkPyMSWCM+YaDP/8lc7AFYNNAvfjbjBQmd+A oe783xj0f0RK4FTbRQoMsTkSaE+4iSBp6BYCbfY8eFDxOTSfzaAgq/Q6hotRZxHok5+yMGa1 SqAzMQVD9eGzFNh6RiRQfvAaBc1j/RjKTv/OvPspP/rLr5i/OvAU84aTBsSnRV7EvDGng+K7 TpUi/kj0EMuXarpZXlV+meUzCiP41rKveVXloIQv0nnx2jN3KF7d3kzzhbmxzJoF38hWBArb tuwSwhe9870sWGfNpLZnOe5OKuihIlHzNDVykBLuLZKaU8SqkUzqzOkQUQ52UeIxjMhRm3bq eIRIaWwqeh4xadIkopCNSEz+CGsXnrmqzO+LQjEicXrLZFwqxdxrJEfD2T0Mt5A0DnTRdjyT W0ziGzTP3qa5W7NIU+sAYxdcuPeIObpXYseO3DIy0tpHi3gGqTnei+2Y5naTys5R2v59mptN siekdtphslzNeTMrFvUkbeVaRsQ/k1rj5WdrCNcynTzpvjUlrCT3rjbQInYhd6uNU2F3UpcU h8VAEiIVE/dZ8dAjkhU1Qomut4nqUu9UIoDolInI3ohwTqR9cIZY1IkkmlJokXYkBw84i+55 RH9lACcgT80L0zQvTNP8N02kF5KMsofM/2hvkpXZT4vYn+Tl3cMZiM1FrkKEIiRIUPiFCj/4 KuQhiojQIN/NYSGFaPKPrZuoHi5B2Xcf+FoQJUUWNHcyfKNA34TccGhYqOAx03FOYWKgs2Og fM+PQnjYxvCIbYLCgmZLsYero7d/zWZnLki+U9gqCNuF8OcqJXVwi6T2LW3rmNNjVi4q2fFB f6qkqnGTdx377R6f0ipFU4zvww9/ClkfkL0jQNd7Inbx/R6v5UMfGVXLmWk1y141y1YtbbNV yQ+o102fc+7k8V7vGTdNW61rM2P5ov2b8oIudH8XP+g9i50VlJQU7E5MSyzyAenGDJN7uWdx bfquk8HjLp8wDuWdPhlLZC1ORX+upoe9X1Je3d+6t6n7EFanqlaqX4+7azN/ORhp3LSh7zMX /3We0f4l5rEvrOqilU91HgvqufY1tdlO0c2Rgesthse1T172mx9zbEP8Ov9pK74yWMKc115o 8FvhdOS6/+oifDtOf6lqPvTUzB0IyGp1Qh1hr8Ts/XifB1YEy9/0osMV8n8BgipHCCwFAAA= X-Brightmail-Tracker: H4sIAAAAAAAAA2VTe0xTdxT2d++v9xY2lksBuaAmS93YhrNSBD1MIGSL8e6RadyDsMW5Bq5C Bi1rgeiGk2cm3VCoKFkpivKSx3itMJSHiBXGAAUUxPGQlwIK+AAEVoFRmmUm++/L953zfeec 5AhJUTntKAySh/FKuSxYTFni5qXGvs2W85oAl+laC9AVF1LQVlSAYM6YRkLVWA+GmYUeGtRL egyF+mgCpkuWKJg2NFLw8OpTBB3DnRSkjkdj0I230LDcN0pA5rlnJIyV/IhAdyMOw1SMEcO9 pHISliviaIjNLKagvvEyDadL7SEtNZYAzUISgoFOR9DdcYWp9PWwkJNPQ1FxJgExlRcIqLh1 FoEhRUtC34lTGFp+CoGq5lkCyntjKBitTSQgYS4bQ8rpGATVNU0Ybl7SUdBfuCyAxz8PUWAo bsXQ3PAHhoJfowSQfbudgMKEPAF0J91DcHLqPoLMXCd4cvkT6KjLICDn4iCG9ug6BAUpizTM G40C6NGkYmhMrCNgeXhWALXHBgjomH+Ioar0POWzm5uLP465uxOLmCs8U4i4tKh2zOnz7hBc b/ZFxCXHTtHcRW0fzcXV/kVzGWXhXFeVHxdnmBRwv11w5jKrxwlO3d1BcmX5CdSeN7+QeCoV 4WH8q4EKVZiX+EspuEqkHiBxdfOQSLdu3/eOq7t4i7dnAB8cFMErt3h/LQmsqL5JhmZZHRqv yUdRqO0lNbIQsowbW6FNE6iRpVDEZCO29EwuNgvr2dKZToEZ27DPu9SUuegJYidGNZRJEDHl iP17wF6NhELMvM7maRkTTTFvszcmekkTtmW2sidatbSpl2SG1rIVI9dWBRvmPbYmdmQ1wIrZ zs52jZHmgEnEPq0uxmbBmm36ZWQVk0wEG2MYxqYwklnH5i4JTbTFygZNDTW0edCN7O3aTMqM j7DTi/dRErLRvuCkfcFJ+5+TmXZmu5fGif/Rm9iccw9JM/Zii4oe4QxE5yNbPlwVcjBE5SpR yUJU4fKDEn9FSBla+ZmKhgV9Jcp78ERSjwghqkevmXYvKWhDjliukPNiW6sNZZoAkVWA7PB3 vFKxXxkezKvqkfvKFZNJRzt/xcoDysP2S7e5uEvdtnm4uHts2yq2t3o/9JhMxByUhfHf8Hwo r/y3jxBaOEYRorY9DpK1fYtfXTsSad+t/9bu+nXRyztbSVtBQex8f2zA5gZfuxavU9LKjvTG hSjLxAfi4nGHzmjv9rp9Vz091cKlwQ3GxrHPPA43q3FV4p/+axJ+EEw+HfjoU53BCT/LuvuK /ujaSxHGHXhd5RXvmfhdh6Zys9d8Pu2isX70VlWCj1OTww2rW3U2BX7H3zgw23y0/zz5eIeP xicmJLm8Pt7t+W4PZ+s00QG3d4d2WguGRp3cRw2MaK/ueJDUl1fn7O2JSp/pNzj0dnUYB3lF /L5WjZY8KdfrPsj6+LBoUVYu8f/+lmfr2YzH7mHnr+2y84u0DDV4Rw5uEiPfD7dE/H4lPUKM VYEyqTOpVMn+Aa3aWqDIBAAA X-CMS-MailID: 20230621131554eucas1p135050d4ea931b8da593678132937163f X-Msg-Generator: CA X-RootMTR: 20230621091037eucas1p188e11d8064526a5a0549217d5a419647 X-EPHeader: CA CMS-TYPE: 201P X-CMS-RootMailID: 20230621091037eucas1p188e11d8064526a5a0549217d5a419647 References: <20230621091000.424843-1-j.granados@samsung.com> <20230621091000.424843-9-j.granados@samsung.com> <2023062150-outbound-quiet-2609@gregkh> --kqwdriluwhsvqta5 Content-Type: text/plain; charset="us-ascii" Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Wed, Jun 21, 2023 at 12:47:58PM +0200, Greg Kroah-Hartman wrote: > On Wed, Jun 21, 2023 at 11:09:57AM +0200, Joel Granados wrote: > > static int __init random_sysctls_init(void) > > { > > - register_sysctl_init("kernel/random", random_table); > > + register_sysctl_init("kernel/random", random_table, > > + ARRAY_SIZE(random_table)); >=20 > As mentioned before, why not just do: >=20 > #define register_sysctl_init(string, table) \ > __register_sysctl_init(string, table, ARRAY_SIZE(table); Answered you in the original mail where you suggested it. Best >=20 > or something like that? >=20 > That way no callers need to change AND you prevent the size from ever > being incorrect? >=20 > thanks, >=20 > greg k-h --=20 Joel Granados --kqwdriluwhsvqta5 Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQGzBAABCgAdFiEErkcJVyXmMSXOyyeQupfNUreWQU8FAmSS+AgACgkQupfNUreW QU8jOQwAkoxloAVnIuEyaWUNUmcFoEEQMjNqdYL2wi038MemWOYfweOEMRyOEo3b iqRfJVW+fiwb+BFTXw9Z3i1KteXm7mdz4YY+VbjJiygOSu0zhM4LY4ViTh8pu5LV FSsRDdRaQZfbeb8bog0lWFauAs5AfpyFcUqvZM1O9TDiI+nMrMlzb4PzSBJeIq3r DCIxRhnWhl/QbfXYBx8rRHskljcS6NTXtILN4S3H88F5YOdof86uQwtXnz28VLdW C6DK8aafbLVrwB8/nYX6YxrT4nFquNKfodH7jKM7iHGCxZWc3ALSwvKBA6mjMSCh GqhXmroSN4hN0N1vA/oDK9ZwZ1GPwqmxtmXe1Rtp/Ah3CtzC2F3hbPxaHP5yEVJS pyPZRKBdEvIvWFhDf3JfEAhrvP08QKKyDN6cihST4dXQ7SHdgpwAVcK7hLnNU0mw Tg+iK0faxcu/tfkmixursSgigO7zwZJXKbBifv3mQ1RP5E5QnsSfgsgY50ogU7/I hN6IedMI =UHCo -----END PGP SIGNATURE----- --kqwdriluwhsvqta5-- From xen-devel-bounces@lists.xenproject.org Wed Jun 21 13:18:33 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 13:18:33 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552667.862977 (Exim 4.92) (envelope-from ) id 1qBxj3-0003Ao-6M; Wed, 21 Jun 2023 13:18:21 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552667.862977; Wed, 21 Jun 2023 13:18:21 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBxj3-000393-1M; Wed, 21 Jun 2023 13:18:21 +0000 Received: by outflank-mailman (input) for mailman id 552667; Wed, 21 Jun 2023 11:18:07 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBvqh-0002kk-IW for xen-devel@lists.xenproject.org; Wed, 21 Jun 2023 11:18:07 +0000 Received: from mga12.intel.com (mga12.intel.com [192.55.52.136]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 48e64795-1025-11ee-b236-6b7b168915f2; Wed, 21 Jun 2023 13:18:03 +0200 (CEST) Received: from orsmga003.jf.intel.com ([10.7.209.27]) by fmsmga106.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 21 Jun 2023 04:17:58 -0700 Received: from unknown (HELO localhost) ([10.237.66.162]) by orsmga003-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 21 Jun 2023 04:16:58 -0700 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 48e64795-1025-11ee-b236-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1687346283; x=1718882283; h=from:to:cc:subject:in-reply-to:references:date: message-id:mime-version; bh=bNOOeYVCQ7poh+/POpUoy8h5Fc7oKKTV5NlBm31y8T8=; b=GTQMkg8yX3GS3BRzRBAU2xElsglEmpsLkyU5ksXXmULCIOKAAofkjgaQ Y+nH9SiSMCXNlCx6bdBjiP7E0+RNmAMdG/rqazsvqQpIpwHeq3qI1eW2D evn145J5ihxK1X9F6KqmEiazfvO3lK6gqQ3h1CzhDdXGYbIQd4MxtX6zE 6hjllkiWX9/Dxh1WNudiKJ/HmM0Ol/B4/r2b9JSc2NtLKfk2ZHzre7tGQ laYAaKrdoxMVqmVnlv18Y38ON1FDxhVg22KuFpp+cY14+TTyKEsk9msNu So+azKPMkYdA6Pvdc1EXvEGL88on9jKt/CqRZmMZtofZUx89pEFQi4VqU w==; X-IronPort-AV: E=McAfee;i="6600,9927,10747"; a="339758042" X-IronPort-AV: E=Sophos;i="6.00,260,1681196400"; d="scan'208";a="339758042" X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10747"; a="664623042" X-IronPort-AV: E=Sophos;i="6.00,260,1681196400"; d="scan'208";a="664623042" From: Jani Nikula To: Joel Granados , mcgrof@kernel.org, Russell King , Catalin Marinas , Will Deacon , Michael Ellerman , Heiko Carstens , Vasily Gorbik , Alexander Gordeev , Gerald Schaefer , Andy Lutomirski , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , x86@kernel.org, Herbert Xu , "David S. Miller" , Russ Weight , Greg Kroah-Hartman , Phillip Potter , Clemens Ladisch , Arnd Bergmann , Corey Minyard , Theodore Ts'o , "Jason A. Donenfeld" , Joonas Lahtinen , Rodrigo Vivi , Tvrtko Ursulin , David Airlie , Daniel Vetter , "K. Y. Srinivasan" , Haiyang Zhang , Wei Liu , Dexuan Cui , Jason Gunthorpe , Leon Romanovsky , Benjamin Herrenschmidt , Song Liu , Robin Holt , Steve Wahl , David Ahern , Eric Dumazet , Jakub Kicinski , Paolo Abeni , Sudip Mukherjee , Mark Rutland , "James E.J. Bottomley" , "Martin K. Petersen" , Doug Gilbert , Jiri Slaby , Juergen Gross , Stefano Stabellini , Alexander Viro , Christian Brauner , Benjamin LaHaise , David Howells , Jan Harkes , coda@cs.cmu.edu, Trond Myklebust , Anna Schumaker , Chuck Lever , Jeff Layton , Jan Kara , Anton Altaparmakov , Mark Fasheh , Joel Becker , Joseph Qi , Kees Cook , Iurii Zaikin , Eric Biggers , "Darrick J. Wong" , Alexei Starovoitov , Daniel Borkmann , Andrii Nakryiko , Balbir Singh , Eric Biederman , "Naveen N. Rao" , Anil S Keshavamurthy , Masami Hiramatsu , Peter Zijlstra , Petr Mladek , Sergey Senozhatsky , Juri Lelli , Vincent Guittot , John Stultz , Steven Rostedt , Andrew Morton , Mike Kravetz , Muchun Song , Naoya Horiguchi , "Matthew Wilcox (Oracle)" , Joerg Reuter , Ralf Baechle , Pablo Neira Ayuso , Jozsef Kadlecsik , Florian Westphal , Roopa Prabhu , Nikolay Aleksandrov , Alexander Aring , Stefan Schmidt , Miquel Raynal , Steffen Klassert , Matthieu Baerts , Mat Martineau , Simon Horman , Julian Anastasov , Remi Denis-Courmont , Santosh Shilimkar , Marc Dionne , Neil Horman , Marcelo Ricardo Leitner , Xin Long , Karsten Graul , Wenjia Zhang , Jan Karcher , Jon Maloy , Ying Xue , Martin Schiller , John Johansen , Paul Moore , James Morris , "Serge E. Hallyn" , Jarkko Sakkinen Cc: Joel Granados , Nicholas Piggin , Christophe Leroy , Christian Borntraeger , Sven Schnelle , "H. Peter Anvin" , "Rafael J. Wysocki" , Mike Travis , Oleksandr Tyshchenko , Amir Goldstein , Matthew Bobrowski , John Fastabend , Martin KaFai Lau , Yonghong Song , KP Singh , Stanislav Fomichev , Hao Luo , Jiri Olsa , Waiman Long , Boqun Feng , John Ogness , Dietmar Eggemann , Ben Segall , Mel Gorman , Daniel Bristot de Oliveira , Valentin Schneider , Andy Lutomirski , Will Drewry , Stephen Boyd , Miaohe Lin , linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, linux-ia64@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-s390@vger.kernel.org, linux-crypto@vger.kernel.org, openipmi-developer@lists.sourceforge.net, intel-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org, linux-hyperv@vger.kernel.org, linux-rdma@vger.kernel.org, linux-raid@vger.kernel.org, netdev@vger.kernel.org, linux-scsi@vger.kernel.org, xen-devel@lists.xenproject.org, linux-fsdevel@vger.kernel.org, linux-aio@kvack.org, linux-cachefs@redhat.com, codalist@coda.cs.cmu.edu, linux-mm@kvack.org, linux-nfs@vger.kernel.org, linux-ntfs-dev@lists.sourceforge.net, ocfs2-devel@oss.oracle.com, fsverity@lists.linux.dev, linux-xfs@vger.kernel.org, bpf@vger.kernel.org, kexec@lists.infradead.org, linux-trace-kernel@vger.kernel.org, linux-hams@vger.kernel.org, netfilter-devel@vger.kernel.org, coreteam@netfilter.org, bridge@lists.linux-foundation.org, dccp@vger.kernel.org, linux-wpan@vger.kernel.org, mptcp@lists.linux.dev, lvs-devel@vger.kernel.org, rds-devel@oss.oracle.com, linux-afs@lists.infradead.org, linux-sctp@vger.kernel.org, tipc-discussion@lists.sourceforge.net, linux-x25@vger.kernel.org, apparmor@lists.ubuntu.com, linux-security-module@vger.kernel.org, keyrings@vger.kernel.org Subject: Re: [PATCH 09/11] sysctl: Remove the end element in sysctl table arrays In-Reply-To: <20230621094817.433842-1-j.granados@samsung.com> Organization: Intel Finland Oy - BIC 0357606-4 - Westendinkatu 7, 02160 Espoo References: <20230621091000.424843-1-j.granados@samsung.com> <20230621094817.433842-1-j.granados@samsung.com> Date: Wed, 21 Jun 2023 14:16:55 +0300 Message-ID: <87o7l92hg8.fsf@intel.com> MIME-Version: 1.0 Content-Type: text/plain On Wed, 21 Jun 2023, Joel Granados wrote: > Remove the empty end element from all the arrays that are passed to the > register sysctl calls. In some files this means reducing the explicit > array size by one. Also make sure that we are using the size in > ctl_table_header instead of evaluating the .procname element. Where's the harm in removing the end elements driver by driver? This is an unwieldy patch to handle. > diff --git a/drivers/gpu/drm/i915/i915_perf.c b/drivers/gpu/drm/i915/i915_perf.c > index f43950219ffc..e4d7372afb10 100644 > --- a/drivers/gpu/drm/i915/i915_perf.c > +++ b/drivers/gpu/drm/i915/i915_perf.c > @@ -4884,24 +4884,23 @@ int i915_perf_remove_config_ioctl(struct drm_device *dev, void *data, > > static struct ctl_table oa_table[] = { > { > - .procname = "perf_stream_paranoid", > - .data = &i915_perf_stream_paranoid, > - .maxlen = sizeof(i915_perf_stream_paranoid), > - .mode = 0644, > - .proc_handler = proc_dointvec_minmax, > - .extra1 = SYSCTL_ZERO, > - .extra2 = SYSCTL_ONE, > - }, > + .procname = "perf_stream_paranoid", > + .data = &i915_perf_stream_paranoid, > + .maxlen = sizeof(i915_perf_stream_paranoid), > + .mode = 0644, > + .proc_handler = proc_dointvec_minmax, > + .extra1 = SYSCTL_ZERO, > + .extra2 = SYSCTL_ONE, > + }, > { > - .procname = "oa_max_sample_rate", > - .data = &i915_oa_max_sample_rate, > - .maxlen = sizeof(i915_oa_max_sample_rate), > - .mode = 0644, > - .proc_handler = proc_dointvec_minmax, > - .extra1 = SYSCTL_ZERO, > - .extra2 = &oa_sample_rate_hard_limit, > - }, > - {} > + .procname = "oa_max_sample_rate", > + .data = &i915_oa_max_sample_rate, > + .maxlen = sizeof(i915_oa_max_sample_rate), > + .mode = 0644, > + .proc_handler = proc_dointvec_minmax, > + .extra1 = SYSCTL_ZERO, > + .extra2 = &oa_sample_rate_hard_limit, > + } > }; The existing indentation is off, but fixing it doesn't really belong in this patch. BR, Jani. -- Jani Nikula, Intel Open Source Graphics Center From xen-devel-bounces@lists.xenproject.org Wed Jun 21 13:18:33 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 13:18:33 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552606.862973 (Exim 4.92) (envelope-from ) id 1qBxj2-00034D-TG; Wed, 21 Jun 2023 13:18:20 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552606.862973; Wed, 21 Jun 2023 13:18:20 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBxj2-000346-NF; Wed, 21 Jun 2023 13:18:20 +0000 Received: by outflank-mailman (input) for mailman id 552606; Wed, 21 Jun 2023 09:48:34 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBuS2-0005FA-0w for xen-devel@lists.xenproject.org; Wed, 21 Jun 2023 09:48:34 +0000 Received: from mailout2.w1.samsung.com (mailout2.w1.samsung.com [210.118.77.12]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id c56efff4-1018-11ee-8611-37d641c3527e; Wed, 21 Jun 2023 11:48:28 +0200 (CEST) Received: from eucas1p2.samsung.com (unknown [182.198.249.207]) by mailout2.w1.samsung.com (KnoxPortal) with ESMTP id 20230621094825euoutp0209eecd8d31f2cfabdd83cf85c72e4328~qo50a_jJ31913319133euoutp02q; Wed, 21 Jun 2023 09:48:25 +0000 (GMT) Received: from eusmges2new.samsung.com (unknown [203.254.199.244]) by eucas1p1.samsung.com (KnoxPortal) with ESMTP id 20230621094825eucas1p109062517ef579a75526cd98d12967ac2~qo50EVM7n1217412174eucas1p1-; Wed, 21 Jun 2023 09:48:25 +0000 (GMT) Received: from eucas1p2.samsung.com ( [182.198.249.207]) by eusmges2new.samsung.com (EUCPMTA) with SMTP id 65.37.11320.867C2946; Wed, 21 Jun 2023 10:48:24 +0100 (BST) Received: from eusmtrp1.samsung.com (unknown [182.198.249.138]) by eucas1p1.samsung.com (KnoxPortal) with ESMTPA id 20230621094824eucas1p154c97eead5f2de6bceca6359304b775c~qo5zI54sm1171511715eucas1p1z; Wed, 21 Jun 2023 09:48:24 +0000 (GMT) Received: from eusmgms1.samsung.com (unknown [182.198.249.179]) by eusmtrp1.samsung.com (KnoxPortal) with ESMTP id 20230621094824eusmtrp125a30fa1daaa318922ec92952186991d~qo5zF5aWI1292612926eusmtrp1B; Wed, 21 Jun 2023 09:48:24 +0000 (GMT) Received: from eusmtip2.samsung.com ( [203.254.199.222]) by eusmgms1.samsung.com (EUCPMTA) with SMTP id 2B.F5.10549.767C2946; Wed, 21 Jun 2023 10:48:23 +0100 (BST) Received: from CAMSVWEXC02.scsc.local (unknown [106.1.227.72]) by eusmtip2.samsung.com (KnoxPortal) with ESMTPA id 20230621094823eusmtip29cf7ab827cf574b4306610d555107eae~qo5yRx4Lo1505515055eusmtip2Y; Wed, 21 Jun 2023 09:48:23 +0000 (GMT) Received: from localhost (106.210.248.248) by CAMSVWEXC02.scsc.local (2002:6a01:e348::6a01:e348) with Microsoft SMTP Server (TLS) id 15.0.1497.2; Wed, 21 Jun 2023 10:48:21 +0100 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: c56efff4-1018-11ee-8611-37d641c3527e DKIM-Filter: OpenDKIM Filter v2.11.0 mailout2.w1.samsung.com 20230621094825euoutp0209eecd8d31f2cfabdd83cf85c72e4328~qo50a_jJ31913319133euoutp02q DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=samsung.com; s=mail20170921; t=1687340905; bh=hW7nv4xAjVfG7za+1C5oUlGPxr8RrFgRO4qPCmCRgg4=; h=From:To:CC:Subject:Date:In-Reply-To:References:From; b=K3sctCymFcQKijBm0VgkYCUiQWu8OaySLv9PcyYhajyJUqUESHYnQiFcJDKUqRHKy WMZs3B/clthEr7af8LhLMFqc132tlqTdPR0sv17/j/LyyEpaXijRylQ7MvYbEgl6iM WZegn1jP4T12AeiJj2APpZMih//0OVyD1zJCGG2k= X-AuditID: cbfec7f4-20132a8000022c38-45-6492c7689305 From: Joel Granados To: , Russell King , Catalin Marinas , Will Deacon , Michael Ellerman , Heiko Carstens , Vasily Gorbik , Alexander Gordeev , Gerald Schaefer , Andy Lutomirski , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , , Herbert Xu , "David S. Miller" , Russ Weight , Greg Kroah-Hartman , Phillip Potter , Clemens Ladisch , Arnd Bergmann , Corey Minyard , Theodore Ts'o , "Jason A. Donenfeld" , Jani Nikula , Joonas Lahtinen , Rodrigo Vivi , Tvrtko Ursulin , David Airlie , Daniel Vetter , "K. Y. Srinivasan" , Haiyang Zhang , Wei Liu , Dexuan Cui , Jason Gunthorpe , Leon Romanovsky , Benjamin Herrenschmidt , Song Liu , Robin Holt , Steve Wahl , David Ahern , Eric Dumazet , Jakub Kicinski , Paolo Abeni , Sudip Mukherjee , Mark Rutland , "James E.J. Bottomley" , "Martin K. Petersen" , Doug Gilbert , Jiri Slaby , Juergen Gross , Stefano Stabellini , Alexander Viro , Christian Brauner , Benjamin LaHaise , David Howells , Jan Harkes , , Trond Myklebust , Anna Schumaker , Chuck Lever , Jeff Layton , Jan Kara , Anton Altaparmakov , Mark Fasheh , Joel Becker , Joseph Qi , Kees Cook , Iurii Zaikin , Eric Biggers , "Darrick J. Wong" , Alexei Starovoitov , Daniel Borkmann , Andrii Nakryiko , Balbir Singh , Eric Biederman , "Naveen N. Rao" , Anil S Keshavamurthy , Masami Hiramatsu , Peter Zijlstra , Petr Mladek , Sergey Senozhatsky , Juri Lelli , Vincent Guittot , John Stultz , Steven Rostedt , Andrew Morton , Mike Kravetz , Muchun Song , Naoya Horiguchi , "Matthew Wilcox (Oracle)" , Joerg Reuter , Ralf Baechle , Pablo Neira Ayuso , Jozsef Kadlecsik , Florian Westphal , Roopa Prabhu , Nikolay Aleksandrov , Alexander Aring , Stefan Schmidt , Miquel Raynal , Steffen Klassert , Matthieu Baerts , Mat Martineau , Simon Horman , Julian Anastasov , Remi Denis-Courmont , Santosh Shilimkar , Marc Dionne , Neil Horman , Marcelo Ricardo Leitner , Xin Long , Karsten Graul , Wenjia Zhang , Jan Karcher , Jon Maloy , Ying Xue , Martin Schiller , John Johansen , Paul Moore , James Morris , "Serge E. Hallyn" , Jarkko Sakkinen CC: Joel Granados , Nicholas Piggin , Christophe Leroy , Christian Borntraeger , Sven Schnelle , "H. Peter Anvin" , "Rafael J. Wysocki" , Mike Travis , Oleksandr Tyshchenko , Amir Goldstein , Matthew Bobrowski , John Fastabend , Martin KaFai Lau , Yonghong Song , KP Singh , Stanislav Fomichev , Hao Luo , Jiri Olsa , Waiman Long , Boqun Feng , John Ogness , Dietmar Eggemann , Ben Segall , Mel Gorman , Daniel Bristot de Oliveira , Valentin Schneider , Andy Lutomirski , Will Drewry , Stephen Boyd , Miaohe Lin , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , Subject: [PATCH 09/11] sysctl: Remove the end element in sysctl table arrays Date: Wed, 21 Jun 2023 11:48:00 +0200 Message-ID: <20230621094817.433842-1-j.granados@samsung.com> X-Mailer: git-send-email 2.30.2 In-Reply-To: <20230621091000.424843-1-j.granados@samsung.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain X-Originating-IP: [106.210.248.248] X-ClientProxiedBy: CAMSVWEXC01.scsc.local (2002:6a01:e347::6a01:e347) To CAMSVWEXC02.scsc.local (2002:6a01:e348::6a01:e348) X-Brightmail-Tracker: H4sIAAAAAAAAA01TbUxTVxjeuff23tKtWD42T5C5jOnmdHzIFn0T1OCiy83mDzWbRv8o2gaY CtoCbg5YpYAVhUFRkAJbB1gZH612wBC2snUNnwmQgPIhClR0rEIBpUjH1wq3W/hz8jx53ud9 3vecHD7paWF8+JFRMRJpVNhpP1pA1TQ6OvwjmlTioLw7wVCgr6DBJN8OnbpyBC/n8km42Kjh wbTjAQNpi1UUPF4w0fDi9qLzMDfRMFPRS4BcMe+kw3/xYKHnCg3GZAMC441KGmxJcxR0jbiD ri6FgKWaZAaeNFoYuGxZoqFTPcMDRbHeGdjUwMCz78sQXLH6gqLajiA/V0HAzQeXedCtnaRB 5chEkHejGUFBXzDYCn3BoS1jYNBuoUCnLyYgqbaUgObpFBrM19Qk/PYjAT9pZxlwZLwK8813 aMhLczasb7MTMJGTT8C1nCQEhsf3eTBV0ups9MhBwPUsZ1JXXQENl5QFCJ6a0im40lNLwxPN Mx5MXrXQUDdfy8Dcy0UeWPQTBJRXynnQUVfJCxWzXd2fsS9TMih2cGyBYvstdpK1tbcgVi1P p9nyCjPJasz72KK/5RQ7cPMuYvV9KprNUtgY9q76IcPW/L6R1Rhi2fv1R/ZvOyrYIZacjoyT SAN3HRdEVPV3MmdzsnhfDWVpkRwNLZBpiM/Hoo9w9QSThgR8T1EpwhV9HRRHphHOHM6kOfIC 4V/1NidxW3GklugRJ9xCeFjXyPxfNas1uCzVCBt6W1cstOgD3DE2QC4L3qLkd3Fh9ehKCikq 8MbDU4vEcpWXaB/OH+9bcVCijdjkfIhlLBTtwOaiB67wt3BqTy5axm6inbjj8QTF1XjglryR FUw6axTV+SSHMf5jdJTkvO/gHmOxq08Cbq3qJ5aHwKKi1/CjnmmCE/bgyks6hsNe2NpU5cK+ uC37KsUZshFuWJxkOFKOsPai3eUOwcndIy7Hbtyl/w5xt+yOe8c9uIncsaom13X5QqxM9cxE G9SrdlCv2kG9agcNIsvQWkms7Ey4RBYcJTkfIAs7I4uNCg84GX3GgJzfsG2xaboW3bJOBZgQ wUcmhPmkn7fwTYNK7CkUh319QSKNPiaNPS2RmdA6PuW3VrhlZ8tJT1F4WIzklERyViL9TyX4 bj5ywifCHH/42/3txsS6o+7xcRd/PiZkYhZCNmX7hX56Qjz5yQHlGkpgDO/KSbPjX9ziLe83 yK8OglZlXBoKHQ9aP5mqnJhtTWB3RZ+LIe4d8d196PlA1WDztnMZaaHKmVK5SfyG1jSYqPRY kzoQr+975fMDB3X1t4vickeYtiKfhI+9jj8NMvyZ6GW9t6EwJLQi6WD4Xu8S0j/4m+TNgc/X +/8TFIcD4xKuM3fTN3vEU+O9wWar5w/N53X0k03HWwrHzn9pfN0w29i+R/NeuvVw8xZte/bD yNGh0hSvnLf3C8sNNuEX20+RASGCQWnuBcG6MnPGoa3J8zc31t+2ndDs/bCs85ofJYsI27qZ lMrC/gXHmSQM9QQAAA== X-Brightmail-Tracker: H4sIAAAAAAAAA02TbUxTZxTH99x7e1tYairiuCEuLmVqwqRQ3jwQIFv4clU0muHCnJN1UoFJ gbWgm2AECjJgKPBBGIXKRJBheauFCSMQK9KyEkFAWMEBtjhex/uLCIUV6hK+PPk/5/x+z5Pz 4bBwm0ymPSs8MkYojhREcElrQrehGXQK1eSEuJQpHaFGN06Ctu8uBgVVChLUCUegs/IBgpU1 GQ5/jA0QkFK/SUC9UsWAxNYiBphyWpmwuDrAhPQNFQGzSSk4KFSJGBhNahIWqjfMR4uGhMkn 8wi0CjPXZXxBQu54IgEF4+1MmCn9GcHLnFEmbP49isE97SsMlhV/YZAgXSfBVJ+Kw8KrUQZs 1mXjUPzrMg5j1akICjqSCTD1ZZDQlKxE0JRXQcJ00hoBr7Nqcege2QU9SzMkVDakYGY1mQkV jes4vG41MCHNsElCXaZ5qhnpeejMX2aAtLiKhN7faVBrmpkwKS9HkDGxD6S1Swhu19iBLOsh BiO3DAyQ5UoxKBlIY0BP6SwJ97urEOSsZqFPnyK6u+c4vZJyk6CHpkwErZArzKXe5zi99jYH 0f2GJZyeftaGaLkijs5PyCRpWcJzgn6gaMHpopYAekn/DKPfrjrSqt/02KkzZ3k+4qjYGOFH YVGSGF/uV3xw5fG9gOfq7sXjux352tvVg+vs5xMijAi/LBQ7+33DC1P1dzKjb2czfhjOLkUJ aNiEpyMrFsVxp27cq0LpyJplwylB1NgdPdPS2EfVLL5gWPIear03nbRAc4h62jPJsFxqEbVY Ub1tkJzDVMfUS3yrYctJOkjVdk1tUzgnz5ZqU8jRFrWHE0DJ/tWTW5ngHKDUiynbmc3xoVru DpCW//ZTN/pyt3krji/VYZwhtrKNmbkz240s/G6q7ZeR7Tpu5qW1MtySKerx2Ni74Ryovqbi d29eoxZM/6AsZJu/Q8/foefv0IsQXo5shbESUahIwudJBCJJbGQo70KUSInMe1HXuvrwEZJP zPHUCGMhNaJYONeW/aEyJ8SGHSL48apQHBUsjo0QStTIwzxnNm6/90KUebEiY4L5ni4efHdP LxcPL083rh37aPRPAhtOqCBGeEkojBaK//cwlpV9AnbsepzB62jXxpv7Iy2SGRYDdGr6ymfs suTlik+k1wOxD/rSU0mH2HOiWrcTT5o/rlkuZDtc1vkP6csPRnTvLbT9cjxguEXbzzpkjN/t z/AWqJo3H+OBeefOGxYja5znr/BLGgLrhnD2ycjvjU63SvWmU3amzwsb6DyJMncW5v/8Tqeo 2WU9kj5QmuFADVQYHXu5cUHSxfLUY/qF06MOZZdYHWPymf2NHLusyptXs7hFvo2as4eCCr44 0T7tGRymzBz/VqWbeC/vzfpa2rXjwSe9g0a1ovjTxUbNnE+4/0W6IMlJ7jJ45mKncDCj+P32 5cOQWGLQ9vgFPdKuBFdUxnMJSZiA74iLJYL/AN+vVrqgBAAA X-CMS-MailID: 20230621094824eucas1p154c97eead5f2de6bceca6359304b775c X-Msg-Generator: CA X-RootMTR: 20230621094824eucas1p154c97eead5f2de6bceca6359304b775c X-EPHeader: CA CMS-TYPE: 201P X-CMS-RootMailID: 20230621094824eucas1p154c97eead5f2de6bceca6359304b775c References: <20230621091000.424843-1-j.granados@samsung.com> Remove the empty end element from all the arrays that are passed to the register sysctl calls. In some files this means reducing the explicit array size by one. Also make sure that we are using the size in ctl_table_header instead of evaluating the .procname element. Signed-off-by: Joel Granados --- arch/arm/kernel/isa.c | 4 +- arch/arm64/kernel/armv8_deprecated.c | 8 ++-- arch/arm64/kernel/fpsimd.c | 6 +-- arch/arm64/kernel/process.c | 3 +- arch/ia64/kernel/crash.c | 3 +- arch/powerpc/kernel/idle.c | 3 +- arch/powerpc/platforms/pseries/mobility.c | 3 +- arch/s390/appldata/appldata_base.c | 7 ++-- arch/s390/kernel/debug.c | 3 +- arch/s390/kernel/topology.c | 3 +- arch/s390/mm/cmm.c | 3 +- arch/s390/mm/pgalloc.c | 3 +- arch/x86/entry/vdso/vdso32-setup.c | 3 +- arch/x86/kernel/cpu/intel.c | 3 +- arch/x86/kernel/itmt.c | 3 +- crypto/fips.c | 3 +- drivers/base/firmware_loader/fallback_table.c | 3 +- drivers/cdrom/cdrom.c | 3 +- drivers/char/hpet.c | 13 +++--- drivers/char/ipmi/ipmi_poweroff.c | 3 +- drivers/char/random.c | 3 +- drivers/gpu/drm/i915/i915_perf.c | 33 +++++++-------- drivers/hv/hv_common.c | 3 +- drivers/infiniband/core/iwcm.c | 3 +- drivers/infiniband/core/ucma.c | 3 +- drivers/macintosh/mac_hid.c | 3 +- drivers/md/md.c | 3 +- drivers/misc/sgi-xp/xpc_main.c | 6 +-- drivers/net/vrf.c | 3 +- drivers/parport/procfs.c | 42 ++++++++----------- drivers/perf/arm_pmuv3.c | 3 +- drivers/scsi/scsi_sysctl.c | 3 +- drivers/scsi/sg.c | 3 +- drivers/tty/tty_io.c | 3 +- drivers/xen/balloon.c | 3 +- fs/aio.c | 3 +- fs/cachefiles/error_inject.c | 3 +- fs/coda/sysctl.c | 3 +- fs/coredump.c | 3 +- fs/dcache.c | 3 +- fs/devpts/inode.c | 3 +- fs/eventpoll.c | 3 +- fs/exec.c | 3 +- fs/file_table.c | 3 +- fs/inode.c | 3 +- fs/lockd/svc.c | 3 +- fs/locks.c | 3 +- fs/namei.c | 3 +- fs/namespace.c | 3 +- fs/nfs/nfs4sysctl.c | 3 +- fs/nfs/sysctl.c | 3 +- fs/notify/dnotify/dnotify.c | 3 +- fs/notify/fanotify/fanotify_user.c | 3 +- fs/notify/inotify/inotify_user.c | 3 +- fs/ntfs/sysctl.c | 3 +- fs/ocfs2/stackglue.c | 3 +- fs/pipe.c | 3 +- fs/proc/proc_sysctl.c | 8 ++-- fs/quota/dquot.c | 3 +- fs/sysctls.c | 3 +- fs/userfaultfd.c | 3 +- fs/verity/signature.c | 3 +- fs/xfs/xfs_sysctl.c | 4 +- init/do_mounts_initrd.c | 3 +- ipc/ipc_sysctl.c | 3 +- ipc/mq_sysctl.c | 3 +- kernel/acct.c | 3 +- kernel/bpf/syscall.c | 3 +- kernel/delayacct.c | 3 +- kernel/exit.c | 3 +- kernel/hung_task.c | 3 +- kernel/kexec_core.c | 3 +- kernel/kprobes.c | 3 +- kernel/latencytop.c | 3 +- kernel/locking/lockdep.c | 3 +- kernel/panic.c | 3 +- kernel/pid_namespace.c | 3 +- kernel/pid_sysctl.h | 3 +- kernel/printk/sysctl.c | 3 +- kernel/reboot.c | 3 +- kernel/sched/autogroup.c | 3 +- kernel/sched/core.c | 3 +- kernel/sched/deadline.c | 3 +- kernel/sched/fair.c | 3 +- kernel/sched/rt.c | 3 +- kernel/sched/topology.c | 3 +- kernel/seccomp.c | 3 +- kernel/signal.c | 3 +- kernel/stackleak.c | 3 +- kernel/sysctl.c | 6 +-- kernel/time/timer.c | 3 +- kernel/trace/ftrace.c | 3 +- kernel/trace/trace_events_user.c | 3 +- kernel/ucount.c | 7 ++-- kernel/umh.c | 3 +- kernel/utsname_sysctl.c | 3 +- kernel/watchdog.c | 3 +- lib/test_sysctl.c | 6 +-- mm/compaction.c | 3 +- mm/hugetlb.c | 3 +- mm/hugetlb_vmemmap.c | 3 +- mm/memory-failure.c | 3 +- mm/oom_kill.c | 3 +- mm/page-writeback.c | 3 +- net/appletalk/sysctl_net_atalk.c | 3 +- net/ax25/sysctl_net_ax25.c | 5 +-- net/bridge/br_netfilter_hooks.c | 3 +- net/core/neighbour.c | 14 +++---- net/core/sysctl_net_core.c | 6 +-- net/dccp/sysctl.c | 4 +- net/ieee802154/6lowpan/reassembly.c | 6 +-- net/ipv4/devinet.c | 5 +-- net/ipv4/ip_fragment.c | 6 +-- net/ipv4/route.c | 6 +-- net/ipv4/sysctl_net_ipv4.c | 6 +-- net/ipv4/xfrm4_policy.c | 3 +- net/ipv6/addrconf.c | 5 +-- net/ipv6/icmp.c | 3 +- net/ipv6/netfilter/nf_conntrack_reasm.c | 3 +- net/ipv6/reassembly.c | 6 +-- net/ipv6/route.c | 3 +- net/ipv6/sysctl_net_ipv6.c | 6 +-- net/ipv6/xfrm6_policy.c | 3 +- net/llc/sysctl_net_llc.c | 4 +- net/mpls/af_mpls.c | 10 ++--- net/mptcp/ctrl.c | 3 +- net/netfilter/ipvs/ip_vs_ctl.c | 3 +- net/netfilter/ipvs/ip_vs_lblc.c | 3 +- net/netfilter/ipvs/ip_vs_lblcr.c | 3 +- net/netfilter/nf_conntrack_standalone.c | 10 ++--- net/netfilter/nf_log.c | 5 +-- net/netrom/sysctl_net_netrom.c | 3 +- net/phonet/sysctl.c | 3 +- net/rds/ib_sysctl.c | 3 +- net/rds/sysctl.c | 3 +- net/rds/tcp.c | 3 +- net/rose/sysctl_net_rose.c | 3 +- net/rxrpc/sysctl.c | 3 +- net/sctp/sysctl.c | 10 ++--- net/smc/smc_sysctl.c | 3 +- net/sunrpc/sysctl.c | 3 +- net/sunrpc/xprtrdma/svc_rdma.c | 3 +- net/sunrpc/xprtrdma/transport.c | 3 +- net/sunrpc/xprtsock.c | 3 +- net/tipc/sysctl.c | 3 +- net/unix/sysctl_net_unix.c | 3 +- net/x25/sysctl_net_x25.c | 3 +- net/xfrm/xfrm_sysctl.c | 3 +- security/apparmor/lsm.c | 4 +- security/keys/sysctl.c | 7 ++-- security/loadpin/loadpin.c | 3 +- security/yama/yama_lsm.c | 3 +- 152 files changed, 228 insertions(+), 407 deletions(-) diff --git a/arch/arm/kernel/isa.c b/arch/arm/kernel/isa.c index 561432e3c55a..72b1a0e63d21 100644 --- a/arch/arm/kernel/isa.c +++ b/arch/arm/kernel/isa.c @@ -16,7 +16,7 @@ static unsigned int isa_membase, isa_portbase, isa_portshift; -static struct ctl_table ctl_isa_vars[4] = { +static struct ctl_table ctl_isa_vars[] = { { .procname = "membase", .data = &isa_membase, @@ -35,7 +35,7 @@ static struct ctl_table ctl_isa_vars[4] = { .maxlen = sizeof(isa_portshift), .mode = 0444, .proc_handler = proc_dointvec, - }, {} + } }; static struct ctl_table_header *isa_sysctl_header; diff --git a/arch/arm64/kernel/armv8_deprecated.c b/arch/arm64/kernel/armv8_deprecated.c index 68ed60a521a6..43945a8bb8e0 100644 --- a/arch/arm64/kernel/armv8_deprecated.c +++ b/arch/arm64/kernel/armv8_deprecated.c @@ -52,10 +52,8 @@ struct insn_emulation { int min; int max; - /* - * sysctl for this emulation + a sentinal entry. - */ - struct ctl_table sysctl[2]; + /* sysctl for this emulation */ + struct ctl_table sysctl; }; #define ARM_OPCODE_CONDTEST_FAIL 0 @@ -558,7 +556,7 @@ static void __init register_insn_emulation(struct insn_emulation *insn) update_insn_emulation_mode(insn, INSN_UNDEF); if (insn->status != INSN_UNAVAILABLE) { - sysctl = &insn->sysctl[0]; + sysctl = &insn->sysctl; sysctl->mode = 0644; sysctl->maxlen = sizeof(int); diff --git a/arch/arm64/kernel/fpsimd.c b/arch/arm64/kernel/fpsimd.c index ecfb2ef6a036..37155b4ae893 100644 --- a/arch/arm64/kernel/fpsimd.c +++ b/arch/arm64/kernel/fpsimd.c @@ -588,8 +588,7 @@ static struct ctl_table sve_default_vl_table[] = { .mode = 0644, .proc_handler = vec_proc_do_default_vl, .extra1 = &vl_info[ARM64_VEC_SVE], - }, - { } + } }; static int __init sve_sysctl_init(void) @@ -613,8 +612,7 @@ static struct ctl_table sme_default_vl_table[] = { .mode = 0644, .proc_handler = vec_proc_do_default_vl, .extra1 = &vl_info[ARM64_VEC_SME], - }, - { } + } }; static int __init sme_sysctl_init(void) diff --git a/arch/arm64/kernel/process.c b/arch/arm64/kernel/process.c index cfe232960f2f..ae837130a265 100644 --- a/arch/arm64/kernel/process.c +++ b/arch/arm64/kernel/process.c @@ -723,8 +723,7 @@ static struct ctl_table tagged_addr_sysctl_table[] = { .proc_handler = proc_dointvec_minmax, .extra1 = SYSCTL_ZERO, .extra2 = SYSCTL_ONE, - }, - { } + } }; static int __init tagged_addr_init(void) diff --git a/arch/ia64/kernel/crash.c b/arch/ia64/kernel/crash.c index 66917b879b2a..958ab3bbbdbc 100644 --- a/arch/ia64/kernel/crash.c +++ b/arch/ia64/kernel/crash.c @@ -231,8 +231,7 @@ static struct ctl_table kdump_ctl_table[] = { .maxlen = sizeof(int), .mode = 0644, .proc_handler = proc_dointvec, - }, - { } + } }; #endif diff --git a/arch/powerpc/kernel/idle.c b/arch/powerpc/kernel/idle.c index 3807169fc7e7..f98f7b00d3cf 100644 --- a/arch/powerpc/kernel/idle.c +++ b/arch/powerpc/kernel/idle.c @@ -104,8 +104,7 @@ static struct ctl_table powersave_nap_ctl_table[] = { .maxlen = sizeof(int), .mode = 0644, .proc_handler = proc_dointvec, - }, - {} + } }; static int __init diff --git a/arch/powerpc/platforms/pseries/mobility.c b/arch/powerpc/platforms/pseries/mobility.c index 9fdbee8ee126..48337c9dd3a0 100644 --- a/arch/powerpc/platforms/pseries/mobility.c +++ b/arch/powerpc/platforms/pseries/mobility.c @@ -59,8 +59,7 @@ static struct ctl_table nmi_wd_lpm_factor_ctl_table[] = { .maxlen = sizeof(int), .mode = 0644, .proc_handler = proc_douintvec_minmax, - }, - {} + } }; static int __init register_nmi_wd_lpm_factor_sysctl(void) diff --git a/arch/s390/appldata/appldata_base.c b/arch/s390/appldata/appldata_base.c index 54d8ed1c4518..0e1136b3dc01 100644 --- a/arch/s390/appldata/appldata_base.c +++ b/arch/s390/appldata/appldata_base.c @@ -62,8 +62,7 @@ static struct ctl_table appldata_table[] = { .procname = "interval", .mode = S_IRUGO | S_IWUSR, .proc_handler = appldata_interval_handler, - }, - { }, + } }; /* @@ -352,7 +351,7 @@ int appldata_register_ops(struct appldata_ops *ops) return -EINVAL; /* The last entry must be an empty one */ - ops->ctl_table = kcalloc(2, sizeof(struct ctl_table), GFP_KERNEL); + ops->ctl_table = kcalloc(1, sizeof(struct ctl_table), GFP_KERNEL); if (!ops->ctl_table) return -ENOMEM; @@ -365,7 +364,7 @@ int appldata_register_ops(struct appldata_ops *ops) ops->ctl_table[0].proc_handler = appldata_generic_handler; ops->ctl_table[0].data = ops; - ops->sysctl_header = register_sysctl(appldata_proc_name, ops->ctl_table); + ops->sysctl_header = register_sysctl(appldata_proc_name, ops->ctl_table, 1); if (!ops->sysctl_header) goto out; return 0; diff --git a/arch/s390/kernel/debug.c b/arch/s390/kernel/debug.c index 002f843e6523..24f33be6565d 100644 --- a/arch/s390/kernel/debug.c +++ b/arch/s390/kernel/debug.c @@ -977,8 +977,7 @@ static struct ctl_table s390dbf_table[] = { .maxlen = sizeof(int), .mode = S_IRUGO | S_IWUSR, .proc_handler = s390dbf_procactive, - }, - { } + } }; static struct ctl_table_header *s390dbf_sysctl_header; diff --git a/arch/s390/kernel/topology.c b/arch/s390/kernel/topology.c index 372d2c7c9a8e..931da71b8a4a 100644 --- a/arch/s390/kernel/topology.c +++ b/arch/s390/kernel/topology.c @@ -633,8 +633,7 @@ static struct ctl_table topology_ctl_table[] = { .procname = "topology", .mode = 0644, .proc_handler = topology_ctl_handler, - }, - { }, + } }; static int __init topology_init(void) diff --git a/arch/s390/mm/cmm.c b/arch/s390/mm/cmm.c index 918816dcb42a..1b304352a3e9 100644 --- a/arch/s390/mm/cmm.c +++ b/arch/s390/mm/cmm.c @@ -331,8 +331,7 @@ static struct ctl_table cmm_table[] = { .procname = "cmm_timeout", .mode = 0644, .proc_handler = cmm_timeout_handler, - }, - { } + } }; #ifdef CONFIG_CMM_IUCV diff --git a/arch/s390/mm/pgalloc.c b/arch/s390/mm/pgalloc.c index a723f1a8236a..59444f580d0d 100644 --- a/arch/s390/mm/pgalloc.c +++ b/arch/s390/mm/pgalloc.c @@ -29,8 +29,7 @@ static struct ctl_table page_table_sysctl[] = { .proc_handler = proc_dointvec_minmax, .extra1 = SYSCTL_ZERO, .extra2 = SYSCTL_ONE, - }, - { } + } }; static int __init page_table_register_sysctl(void) diff --git a/arch/x86/entry/vdso/vdso32-setup.c b/arch/x86/entry/vdso/vdso32-setup.c index e28cdba83e0e..ab794f70a550 100644 --- a/arch/x86/entry/vdso/vdso32-setup.c +++ b/arch/x86/entry/vdso/vdso32-setup.c @@ -66,8 +66,7 @@ static struct ctl_table abi_table2[] = { .proc_handler = proc_dointvec_minmax, .extra1 = SYSCTL_ZERO, .extra2 = SYSCTL_ONE, - }, - {} + } }; static __init int ia32_binfmt_init(void) diff --git a/arch/x86/kernel/cpu/intel.c b/arch/x86/kernel/cpu/intel.c index c77a3961443d..d446f2a0fbeb 100644 --- a/arch/x86/kernel/cpu/intel.c +++ b/arch/x86/kernel/cpu/intel.c @@ -1189,8 +1189,7 @@ static struct ctl_table sld_sysctls[] = { .proc_handler = proc_douintvec_minmax, .extra1 = SYSCTL_ZERO, .extra2 = SYSCTL_ONE, - }, - {} + } }; static int __init sld_mitigate_sysctl_init(void) diff --git a/arch/x86/kernel/itmt.c b/arch/x86/kernel/itmt.c index 58ec95fce798..427093e4ef87 100644 --- a/arch/x86/kernel/itmt.c +++ b/arch/x86/kernel/itmt.c @@ -73,8 +73,7 @@ static struct ctl_table itmt_kern_table[] = { .proc_handler = sched_itmt_update_handler, .extra1 = SYSCTL_ZERO, .extra2 = SYSCTL_ONE, - }, - {} + } }; static struct ctl_table_header *itmt_sysctl_header; diff --git a/crypto/fips.c b/crypto/fips.c index 05a251680700..611a86bd2538 100644 --- a/crypto/fips.c +++ b/crypto/fips.c @@ -62,8 +62,7 @@ static struct ctl_table crypto_sysctl_table[] = { .maxlen = 64, .mode = 0444, .proc_handler = proc_dostring - }, - {} + } }; static struct ctl_table_header *crypto_sysctls; diff --git a/drivers/base/firmware_loader/fallback_table.c b/drivers/base/firmware_loader/fallback_table.c index 7a2d584233bb..d7dedfb2f4d0 100644 --- a/drivers/base/firmware_loader/fallback_table.c +++ b/drivers/base/firmware_loader/fallback_table.c @@ -43,8 +43,7 @@ static struct ctl_table firmware_config_table[] = { .proc_handler = proc_douintvec_minmax, .extra1 = SYSCTL_ZERO, .extra2 = SYSCTL_ONE, - }, - { } + } }; static struct ctl_table_header *firmware_config_sysct_table_header; diff --git a/drivers/cdrom/cdrom.c b/drivers/cdrom/cdrom.c index 3855da76a16d..e1c352ebab16 100644 --- a/drivers/cdrom/cdrom.c +++ b/drivers/cdrom/cdrom.c @@ -3668,8 +3668,7 @@ static struct ctl_table cdrom_table[] = { .maxlen = sizeof(int), .mode = 0644, .proc_handler = cdrom_sysctl_handler - }, - { } + } }; static struct ctl_table_header *cdrom_sysctl_header; diff --git a/drivers/char/hpet.c b/drivers/char/hpet.c index bb1eb801b20c..44eaec98f958 100644 --- a/drivers/char/hpet.c +++ b/drivers/char/hpet.c @@ -722,13 +722,12 @@ static int hpet_is_known(struct hpet_data *hdp) static struct ctl_table hpet_table[] = { { - .procname = "max-user-freq", - .data = &hpet_max_freq, - .maxlen = sizeof(int), - .mode = 0644, - .proc_handler = proc_dointvec, - }, - {} + .procname = "max-user-freq", + .data = &hpet_max_freq, + .maxlen = sizeof(int), + .mode = 0644, + .proc_handler = proc_dointvec, + } }; static struct ctl_table_header *sysctl_header; diff --git a/drivers/char/ipmi/ipmi_poweroff.c b/drivers/char/ipmi/ipmi_poweroff.c index 46b1ea866da9..40c43417a42e 100644 --- a/drivers/char/ipmi/ipmi_poweroff.c +++ b/drivers/char/ipmi/ipmi_poweroff.c @@ -655,8 +655,7 @@ static struct ctl_table ipmi_table[] = { .data = &poweroff_powercycle, .maxlen = sizeof(poweroff_powercycle), .mode = 0644, - .proc_handler = proc_dointvec }, - { } + .proc_handler = proc_dointvec } }; static struct ctl_table_header *ipmi_table_header; diff --git a/drivers/char/random.c b/drivers/char/random.c index 8db2ea9e3d66..e2998580afc6 100644 --- a/drivers/char/random.c +++ b/drivers/char/random.c @@ -1682,8 +1682,7 @@ static struct ctl_table random_table[] = { .procname = "uuid", .mode = 0444, .proc_handler = proc_do_uuid, - }, - { } + } }; /* diff --git a/drivers/gpu/drm/i915/i915_perf.c b/drivers/gpu/drm/i915/i915_perf.c index f43950219ffc..e4d7372afb10 100644 --- a/drivers/gpu/drm/i915/i915_perf.c +++ b/drivers/gpu/drm/i915/i915_perf.c @@ -4884,24 +4884,23 @@ int i915_perf_remove_config_ioctl(struct drm_device *dev, void *data, static struct ctl_table oa_table[] = { { - .procname = "perf_stream_paranoid", - .data = &i915_perf_stream_paranoid, - .maxlen = sizeof(i915_perf_stream_paranoid), - .mode = 0644, - .proc_handler = proc_dointvec_minmax, - .extra1 = SYSCTL_ZERO, - .extra2 = SYSCTL_ONE, - }, + .procname = "perf_stream_paranoid", + .data = &i915_perf_stream_paranoid, + .maxlen = sizeof(i915_perf_stream_paranoid), + .mode = 0644, + .proc_handler = proc_dointvec_minmax, + .extra1 = SYSCTL_ZERO, + .extra2 = SYSCTL_ONE, + }, { - .procname = "oa_max_sample_rate", - .data = &i915_oa_max_sample_rate, - .maxlen = sizeof(i915_oa_max_sample_rate), - .mode = 0644, - .proc_handler = proc_dointvec_minmax, - .extra1 = SYSCTL_ZERO, - .extra2 = &oa_sample_rate_hard_limit, - }, - {} + .procname = "oa_max_sample_rate", + .data = &i915_oa_max_sample_rate, + .maxlen = sizeof(i915_oa_max_sample_rate), + .mode = 0644, + .proc_handler = proc_dointvec_minmax, + .extra1 = SYSCTL_ZERO, + .extra2 = &oa_sample_rate_hard_limit, + } }; static u32 num_perf_groups_per_gt(struct intel_gt *gt) diff --git a/drivers/hv/hv_common.c b/drivers/hv/hv_common.c index dd751c391cf7..0216ccd96496 100644 --- a/drivers/hv/hv_common.c +++ b/drivers/hv/hv_common.c @@ -146,8 +146,7 @@ static struct ctl_table hv_ctl_table[] = { .proc_handler = proc_dointvec_minmax, .extra1 = SYSCTL_ZERO, .extra2 = SYSCTL_ONE - }, - {} + } }; static int hv_die_panic_notify_crash(struct notifier_block *self, diff --git a/drivers/infiniband/core/iwcm.c b/drivers/infiniband/core/iwcm.c index 20627a894c89..0147aae8fe9b 100644 --- a/drivers/infiniband/core/iwcm.c +++ b/drivers/infiniband/core/iwcm.c @@ -110,8 +110,7 @@ static struct ctl_table iwcm_ctl_table[] = { .maxlen = sizeof(default_backlog), .mode = 0644, .proc_handler = proc_dointvec, - }, - { } + } }; /* diff --git a/drivers/infiniband/core/ucma.c b/drivers/infiniband/core/ucma.c index f737ab0de883..cbe1ebef2f2e 100644 --- a/drivers/infiniband/core/ucma.c +++ b/drivers/infiniband/core/ucma.c @@ -70,8 +70,7 @@ static struct ctl_table ucma_ctl_table[] = { .maxlen = sizeof max_backlog, .mode = 0644, .proc_handler = proc_dointvec, - }, - { } + } }; struct ucma_file { diff --git a/drivers/macintosh/mac_hid.c b/drivers/macintosh/mac_hid.c index 5d433ef430fa..822517cf4735 100644 --- a/drivers/macintosh/mac_hid.c +++ b/drivers/macintosh/mac_hid.c @@ -235,8 +235,7 @@ static struct ctl_table mac_hid_files[] = { .maxlen = sizeof(int), .mode = 0644, .proc_handler = proc_dointvec, - }, - { } + } }; static struct ctl_table_header *mac_hid_sysctl_header; diff --git a/drivers/md/md.c b/drivers/md/md.c index c10cc8ddd94d..3ad23a7bfbc5 100644 --- a/drivers/md/md.c +++ b/drivers/md/md.c @@ -318,8 +318,7 @@ static struct ctl_table raid_table[] = { .maxlen = sizeof(int), .mode = S_IRUGO|S_IWUSR, .proc_handler = proc_dointvec, - }, - { } + } }; static int start_readonly; diff --git a/drivers/misc/sgi-xp/xpc_main.c b/drivers/misc/sgi-xp/xpc_main.c index 264b919d0610..3e6a598df22a 100644 --- a/drivers/misc/sgi-xp/xpc_main.c +++ b/drivers/misc/sgi-xp/xpc_main.c @@ -109,8 +109,7 @@ static struct ctl_table xpc_sys_xpc_hb[] = { .mode = 0644, .proc_handler = proc_dointvec_minmax, .extra1 = &xpc_hb_check_min_interval, - .extra2 = &xpc_hb_check_max_interval}, - {} + .extra2 = &xpc_hb_check_max_interval} }; static struct ctl_table xpc_sys_xpc[] = { { @@ -120,8 +119,7 @@ static struct ctl_table xpc_sys_xpc[] = { .mode = 0644, .proc_handler = proc_dointvec_minmax, .extra1 = &xpc_disengage_min_timelimit, - .extra2 = &xpc_disengage_max_timelimit}, - {} + .extra2 = &xpc_disengage_max_timelimit} }; static struct ctl_table_header *xpc_sysctl; diff --git a/drivers/net/vrf.c b/drivers/net/vrf.c index edd8f2ba5595..22dedd3671ec 100644 --- a/drivers/net/vrf.c +++ b/drivers/net/vrf.c @@ -1964,8 +1964,7 @@ static const struct ctl_table vrf_table[] = { .proc_handler = vrf_shared_table_handler, /* set by the vrf_netns_init */ .extra1 = NULL, - }, - { }, + } }; static int vrf_netns_init_sysctl(struct net *net, struct netns_vrf *nn_vrf) diff --git a/drivers/parport/procfs.c b/drivers/parport/procfs.c index 16cee52f035f..f6e0121f8904 100644 --- a/drivers/parport/procfs.c +++ b/drivers/parport/procfs.c @@ -259,8 +259,12 @@ PARPORT_MAX_SPINTIME_VALUE; struct parport_sysctl_table { struct ctl_table_header *port_header; struct ctl_table_header *devices_header; - struct ctl_table vars[12]; - struct ctl_table device_dir[2]; +#ifdef CONFIG_PARPORT_1284 + struct ctl_table vars[10]; +#else + struct ctl_table vars[5]; +#endif /* IEEE 1284 support */ + struct ctl_table device_dir[1]; }; static const struct parport_sysctl_table parport_sysctl_template = { @@ -303,9 +307,9 @@ static const struct parport_sysctl_table parport_sysctl_template = { .maxlen = 0, .mode = 0444, .proc_handler = do_hardware_modes - }, + } #ifdef CONFIG_PARPORT_1284 - { + , { .procname = "autoprobe", .data = NULL, .maxlen = 0, @@ -339,9 +343,8 @@ static const struct parport_sysctl_table parport_sysctl_template = { .maxlen = 0, .mode = 0444, .proc_handler = do_autoprobe - }, + } #endif /* IEEE 1284 support */ - {} }, { { @@ -350,20 +353,15 @@ static const struct parport_sysctl_table parport_sysctl_template = { .maxlen = 0, .mode = 0444, .proc_handler = do_active_device - }, - {} + } }, }; struct parport_device_sysctl_table { struct ctl_table_header *sysctl_header; - struct ctl_table vars[2]; - struct ctl_table device_dir[2]; - struct ctl_table devices_root_dir[2]; - struct ctl_table port_dir[2]; - struct ctl_table parport_dir[2]; - struct ctl_table dev_dir[2]; + struct ctl_table vars[1]; + struct ctl_table device_dir[1]; }; static const struct parport_device_sysctl_table @@ -378,8 +376,7 @@ parport_device_sysctl_template = { .proc_handler = proc_doulongvec_ms_jiffies_minmax, .extra1 = (void*) &parport_min_timeslice_value, .extra2 = (void*) &parport_max_timeslice_value - }, - {} + } }, { { @@ -387,18 +384,14 @@ parport_device_sysctl_template = { .data = NULL, .maxlen = 0, .mode = 0555, - }, - {} + } } }; struct parport_default_sysctl_table { struct ctl_table_header *sysctl_header; - struct ctl_table vars[3]; - struct ctl_table default_dir[2]; - struct ctl_table parport_dir[2]; - struct ctl_table dev_dir[2]; + struct ctl_table vars[2]; }; static struct parport_default_sysctl_table @@ -422,8 +415,7 @@ parport_default_sysctl_table = { .proc_handler = proc_dointvec_minmax, .extra1 = (void*) &parport_min_spintime_value, .extra2 = (void*) &parport_max_spintime_value - }, - {} + } } }; @@ -443,7 +435,9 @@ int parport_proc_register(struct parport *port) t->vars[0].data = &port->spintime; for (i = 0; i < 5; i++) { t->vars[i].extra1 = port; +#ifdef CONFIG_PARPORT_1284 t->vars[5 + i].extra2 = &port->probe_info[i]; +#endif /* IEEE 1284 support */ } port_name_len = strnlen(port->name, PARPORT_NAME_MAX_LEN); diff --git a/drivers/perf/arm_pmuv3.c b/drivers/perf/arm_pmuv3.c index 763f9c8acfbf..85285c85bd49 100644 --- a/drivers/perf/arm_pmuv3.c +++ b/drivers/perf/arm_pmuv3.c @@ -1179,8 +1179,7 @@ static struct ctl_table armv8_pmu_sysctl_table[] = { .proc_handler = armv8pmu_proc_user_access_handler, .extra1 = SYSCTL_ZERO, .extra2 = SYSCTL_ONE, - }, - { } + } }; static void armv8_pmu_register_sysctl_table(void) diff --git a/drivers/scsi/scsi_sysctl.c b/drivers/scsi/scsi_sysctl.c index 0378bd63fea4..22c2d055821e 100644 --- a/drivers/scsi/scsi_sysctl.c +++ b/drivers/scsi/scsi_sysctl.c @@ -17,8 +17,7 @@ static struct ctl_table scsi_table[] = { .data = &scsi_logging_level, .maxlen = sizeof(scsi_logging_level), .mode = 0644, - .proc_handler = proc_dointvec }, - { } + .proc_handler = proc_dointvec } }; static struct ctl_table_header *scsi_table_header; diff --git a/drivers/scsi/sg.c b/drivers/scsi/sg.c index d12cdf875b50..102a3640c6c7 100644 --- a/drivers/scsi/sg.c +++ b/drivers/scsi/sg.c @@ -1638,8 +1638,7 @@ static struct ctl_table sg_sysctls[] = { .maxlen = sizeof(int), .mode = 0444, .proc_handler = proc_dointvec, - }, - {} + } }; static struct ctl_table_header *hdr; diff --git a/drivers/tty/tty_io.c b/drivers/tty/tty_io.c index 63fb3c543b94..bd6b12394d76 100644 --- a/drivers/tty/tty_io.c +++ b/drivers/tty/tty_io.c @@ -3608,8 +3608,7 @@ static struct ctl_table tty_table[] = { .proc_handler = proc_dointvec, .extra1 = SYSCTL_ZERO, .extra2 = SYSCTL_ONE, - }, - { } + } }; /* diff --git a/drivers/xen/balloon.c b/drivers/xen/balloon.c index e4544262a429..bef75c236104 100644 --- a/drivers/xen/balloon.c +++ b/drivers/xen/balloon.c @@ -93,8 +93,7 @@ static struct ctl_table balloon_table[] = { .proc_handler = proc_dointvec_minmax, .extra1 = SYSCTL_ZERO, .extra2 = SYSCTL_ONE, - }, - { } + } }; #else diff --git a/fs/aio.c b/fs/aio.c index b09abe7a14d3..f2ed0a34a5d4 100644 --- a/fs/aio.c +++ b/fs/aio.c @@ -238,8 +238,7 @@ static struct ctl_table aio_sysctls[] = { .maxlen = sizeof(aio_max_nr), .mode = 0644, .proc_handler = proc_doulongvec_minmax, - }, - {} + } }; static void __init aio_sysctl_init(void) diff --git a/fs/cachefiles/error_inject.c b/fs/cachefiles/error_inject.c index ea6bcce4f6f1..4fa84880c0d1 100644 --- a/fs/cachefiles/error_inject.c +++ b/fs/cachefiles/error_inject.c @@ -18,8 +18,7 @@ static struct ctl_table cachefiles_sysctls[] = { .maxlen = sizeof(unsigned int), .mode = 0644, .proc_handler = proc_douintvec, - }, - {} + } }; int __init cachefiles_register_error_injection(void) diff --git a/fs/coda/sysctl.c b/fs/coda/sysctl.c index 16224a7c6691..e377e400bfed 100644 --- a/fs/coda/sysctl.c +++ b/fs/coda/sysctl.c @@ -35,8 +35,7 @@ static struct ctl_table coda_table[] = { .maxlen = sizeof(int), .mode = 0600, .proc_handler = proc_dointvec - }, - {} + } }; void coda_sysctl_init(void) diff --git a/fs/coredump.c b/fs/coredump.c index 7e55428dce13..99142426a156 100644 --- a/fs/coredump.c +++ b/fs/coredump.c @@ -978,8 +978,7 @@ static struct ctl_table coredump_sysctls[] = { .maxlen = sizeof(unsigned int), .mode = 0644, .proc_handler = proc_dointvec, - }, - { } + } }; static int __init init_fs_coredump_sysctls(void) diff --git a/fs/dcache.c b/fs/dcache.c index f02bfd383e66..257450fd8f01 100644 --- a/fs/dcache.c +++ b/fs/dcache.c @@ -190,8 +190,7 @@ static struct ctl_table fs_dcache_sysctls[] = { .maxlen = 6*sizeof(long), .mode = 0444, .proc_handler = proc_nr_dentry, - }, - { } + } }; static int __init init_fs_dcache_sysctls(void) diff --git a/fs/devpts/inode.c b/fs/devpts/inode.c index c17f971a8c4b..8d56add71e71 100644 --- a/fs/devpts/inode.c +++ b/fs/devpts/inode.c @@ -68,8 +68,7 @@ static struct ctl_table pty_table[] = { .mode = 0444, .data = &pty_count, .proc_handler = proc_dointvec, - }, - {} + } }; struct pts_mount_opts { diff --git a/fs/eventpoll.c b/fs/eventpoll.c index e1a0e6a6d3de..b0556c52685c 100644 --- a/fs/eventpoll.c +++ b/fs/eventpoll.c @@ -321,8 +321,7 @@ static struct ctl_table epoll_table[] = { .proc_handler = proc_doulongvec_minmax, .extra1 = &long_zero, .extra2 = &long_max, - }, - { } + } }; static void __init epoll_sysctls_init(void) diff --git a/fs/exec.c b/fs/exec.c index 5572d148738b..9458ef2b8028 100644 --- a/fs/exec.c +++ b/fs/exec.c @@ -2164,8 +2164,7 @@ static struct ctl_table fs_exec_sysctls[] = { .proc_handler = proc_dointvec_minmax_coredump, .extra1 = SYSCTL_ZERO, .extra2 = SYSCTL_TWO, - }, - { } + } }; static int __init init_fs_exec_sysctls(void) diff --git a/fs/file_table.c b/fs/file_table.c index 23a645521960..6fec4c691f0a 100644 --- a/fs/file_table.c +++ b/fs/file_table.c @@ -114,8 +114,7 @@ static struct ctl_table fs_stat_sysctls[] = { .proc_handler = proc_dointvec_minmax, .extra1 = &sysctl_nr_open_min, .extra2 = &sysctl_nr_open_max, - }, - { } + } }; static int __init init_fs_stat_sysctls(void) diff --git a/fs/inode.c b/fs/inode.c index 0a0ad1a2a5d2..79c5916cade7 100644 --- a/fs/inode.c +++ b/fs/inode.c @@ -129,8 +129,7 @@ static struct ctl_table inodes_sysctls[] = { .maxlen = 7*sizeof(long), .mode = 0444, .proc_handler = proc_nr_inodes, - }, - { } + } }; static int __init init_fs_inode_sysctls(void) diff --git a/fs/lockd/svc.c b/fs/lockd/svc.c index 84736267f4e1..082fcf6340d4 100644 --- a/fs/lockd/svc.c +++ b/fs/lockd/svc.c @@ -506,8 +506,7 @@ static struct ctl_table nlm_sysctls[] = { .maxlen = sizeof(int), .mode = 0644, .proc_handler = proc_dointvec, - }, - { } + } }; #endif /* CONFIG_SYSCTL */ diff --git a/fs/locks.c b/fs/locks.c index ce5733480aa6..9750076cdd8d 100644 --- a/fs/locks.c +++ b/fs/locks.c @@ -109,9 +109,8 @@ static struct ctl_table locks_sysctls[] = { .maxlen = sizeof(int), .mode = 0644, .proc_handler = proc_dointvec, - }, + } #endif /* CONFIG_MMU */ - {} }; static int __init init_fs_locks_sysctls(void) diff --git a/fs/namei.c b/fs/namei.c index 9b567af081af..b0f8d09c2111 100644 --- a/fs/namei.c +++ b/fs/namei.c @@ -1067,8 +1067,7 @@ static struct ctl_table namei_sysctls[] = { .proc_handler = proc_dointvec_minmax, .extra1 = SYSCTL_ZERO, .extra2 = SYSCTL_TWO, - }, - { } + } }; static int __init init_fs_namei_sysctls(void) diff --git a/fs/namespace.c b/fs/namespace.c index e7f251e40485..780e9292fa52 100644 --- a/fs/namespace.c +++ b/fs/namespace.c @@ -4709,8 +4709,7 @@ static struct ctl_table fs_namespace_sysctls[] = { .mode = 0644, .proc_handler = proc_dointvec_minmax, .extra1 = SYSCTL_ONE, - }, - { } + } }; static int __init init_fs_namespace_sysctls(void) diff --git a/fs/nfs/nfs4sysctl.c b/fs/nfs/nfs4sysctl.c index 4a542ee11e68..5515c2e8afe7 100644 --- a/fs/nfs/nfs4sysctl.c +++ b/fs/nfs/nfs4sysctl.c @@ -33,8 +33,7 @@ static struct ctl_table nfs4_cb_sysctls[] = { .maxlen = sizeof(int), .mode = 0644, .proc_handler = proc_dointvec, - }, - { } + } }; int nfs4_register_sysctl(void) diff --git a/fs/nfs/sysctl.c b/fs/nfs/sysctl.c index 9dafd44670e4..8a71d31e5dc3 100644 --- a/fs/nfs/sysctl.c +++ b/fs/nfs/sysctl.c @@ -28,8 +28,7 @@ static struct ctl_table nfs_cb_sysctls[] = { .maxlen = sizeof(nfs_congestion_kb), .mode = 0644, .proc_handler = proc_dointvec, - }, - { } + } }; int nfs_register_sysctl(void) diff --git a/fs/notify/dnotify/dnotify.c b/fs/notify/dnotify/dnotify.c index 2c6fe98d6fe1..409ca0a9a048 100644 --- a/fs/notify/dnotify/dnotify.c +++ b/fs/notify/dnotify/dnotify.c @@ -28,8 +28,7 @@ static struct ctl_table dnotify_sysctls[] = { .maxlen = sizeof(int), .mode = 0644, .proc_handler = proc_dointvec, - }, - {} + } }; static void __init dnotify_sysctl_init(void) { diff --git a/fs/notify/fanotify/fanotify_user.c b/fs/notify/fanotify/fanotify_user.c index 78d3bf479f59..4c43eb38b9cf 100644 --- a/fs/notify/fanotify/fanotify_user.c +++ b/fs/notify/fanotify/fanotify_user.c @@ -85,8 +85,7 @@ static struct ctl_table fanotify_table[] = { .mode = 0644, .proc_handler = proc_dointvec_minmax, .extra1 = SYSCTL_ZERO - }, - { } + } }; static void __init fanotify_sysctls_init(void) diff --git a/fs/notify/inotify/inotify_user.c b/fs/notify/inotify/inotify_user.c index 0ce25c4ddfec..02b74d8b4e28 100644 --- a/fs/notify/inotify/inotify_user.c +++ b/fs/notify/inotify/inotify_user.c @@ -84,8 +84,7 @@ static struct ctl_table inotify_table[] = { .mode = 0644, .proc_handler = proc_dointvec_minmax, .extra1 = SYSCTL_ZERO - }, - { } + } }; static void __init inotify_sysctls_init(void) diff --git a/fs/ntfs/sysctl.c b/fs/ntfs/sysctl.c index 2c48f48a0b80..fef88fb6a40f 100644 --- a/fs/ntfs/sysctl.c +++ b/fs/ntfs/sysctl.c @@ -27,8 +27,7 @@ static struct ctl_table ntfs_sysctls[] = { .maxlen = sizeof(debug_msgs), .mode = 0644, /* Mode, proc handler. */ .proc_handler = proc_dointvec - }, - {} + } }; /* Storage for the sysctls header. */ diff --git a/fs/ocfs2/stackglue.c b/fs/ocfs2/stackglue.c index 9a653875d1c5..7be619f93960 100644 --- a/fs/ocfs2/stackglue.c +++ b/fs/ocfs2/stackglue.c @@ -657,8 +657,7 @@ static struct ctl_table ocfs2_nm_table[] = { .maxlen = OCFS2_MAX_HB_CTL_PATH, .mode = 0644, .proc_handler = proc_dostring, - }, - { } + } }; static struct ctl_table_header *ocfs2_table_header; diff --git a/fs/pipe.c b/fs/pipe.c index 8a808fc25552..8fab91c2d546 100644 --- a/fs/pipe.c +++ b/fs/pipe.c @@ -1491,8 +1491,7 @@ static struct ctl_table fs_pipe_sysctls[] = { .maxlen = sizeof(pipe_user_pages_soft), .mode = 0644, .proc_handler = proc_doulongvec_minmax, - }, - { } + } }; #endif diff --git a/fs/proc/proc_sysctl.c b/fs/proc/proc_sysctl.c index 9670c5b7b5b2..1debd01209fc 100644 --- a/fs/proc/proc_sysctl.c +++ b/fs/proc/proc_sysctl.c @@ -19,8 +19,9 @@ #include #include "internal.h" -#define list_for_each_table_entry(entry, header) \ - for ((entry) = (header->ctl_table); (entry)->procname; (entry)++) +#define list_for_each_table_entry(entry, header) \ + entry = header->ctl_table; \ + for (size_t i = 0 ; i < header->ctl_table_size ; ++i, entry++) static const struct dentry_operations proc_sys_dentry_operations; static const struct file_operations proc_sys_file_operations; @@ -69,8 +70,7 @@ static struct ctl_table root_table[] = { { .procname = "", .mode = S_IFDIR|S_IRUGO|S_IXUGO, - }, - { } + } }; static struct ctl_table_root sysctl_table_root = { .default_set.dir.header = { diff --git a/fs/quota/dquot.c b/fs/quota/dquot.c index 7c07654e4253..1eb18c8bd639 100644 --- a/fs/quota/dquot.c +++ b/fs/quota/dquot.c @@ -2941,9 +2941,8 @@ static struct ctl_table fs_dqstats_table[] = { .maxlen = sizeof(int), .mode = 0644, .proc_handler = proc_dointvec, - }, + } #endif - { }, }; static int __init dquot_init(void) diff --git a/fs/sysctls.c b/fs/sysctls.c index 944254dd92c0..d6ed656738ff 100644 --- a/fs/sysctls.c +++ b/fs/sysctls.c @@ -25,8 +25,7 @@ static struct ctl_table fs_shared_sysctls[] = { .proc_handler = proc_dointvec_minmax, .extra1 = SYSCTL_ZERO, .extra2 = SYSCTL_MAXOLDUID, - }, - { } + } }; static int __init init_fs_sysctls(void) diff --git a/fs/userfaultfd.c b/fs/userfaultfd.c index 4c3858769226..165b9c52e626 100644 --- a/fs/userfaultfd.c +++ b/fs/userfaultfd.c @@ -44,8 +44,7 @@ static struct ctl_table vm_userfaultfd_table[] = { .proc_handler = proc_dointvec_minmax, .extra1 = SYSCTL_ZERO, .extra2 = SYSCTL_ONE, - }, - { } + } }; #endif diff --git a/fs/verity/signature.c b/fs/verity/signature.c index f617c6a1f16c..05585e93f32b 100644 --- a/fs/verity/signature.c +++ b/fs/verity/signature.c @@ -97,8 +97,7 @@ static struct ctl_table fsverity_sysctl_table[] = { .proc_handler = proc_dointvec_minmax, .extra1 = SYSCTL_ZERO, .extra2 = SYSCTL_ONE, - }, - { } + } }; static int __init fsverity_sysctl_init(void) diff --git a/fs/xfs/xfs_sysctl.c b/fs/xfs/xfs_sysctl.c index 61075e9c9e37..5c6337526070 100644 --- a/fs/xfs/xfs_sysctl.c +++ b/fs/xfs/xfs_sysctl.c @@ -204,10 +204,8 @@ static struct ctl_table xfs_table[] = { .proc_handler = xfs_stats_clear_proc_handler, .extra1 = &xfs_params.stats_clear.min, .extra2 = &xfs_params.stats_clear.max - }, + } #endif /* CONFIG_PROC_FS */ - - {} }; int diff --git a/init/do_mounts_initrd.c b/init/do_mounts_initrd.c index 2b10abb8c80e..a894519efdd3 100644 --- a/init/do_mounts_initrd.c +++ b/init/do_mounts_initrd.c @@ -28,8 +28,7 @@ static struct ctl_table kern_do_mounts_initrd_table[] = { .maxlen = sizeof(int), .mode = 0644, .proc_handler = proc_dointvec, - }, - { } + } }; static __init int kernel_do_mounts_initrd_sysctls_init(void) diff --git a/ipc/ipc_sysctl.c b/ipc/ipc_sysctl.c index 8c62e443f78b..a46d15f5b476 100644 --- a/ipc/ipc_sysctl.c +++ b/ipc/ipc_sysctl.c @@ -175,9 +175,8 @@ static struct ctl_table ipc_sysctls[] = { .proc_handler = proc_dointvec_minmax, .extra1 = SYSCTL_ZERO, .extra2 = SYSCTL_INT_MAX, - }, + } #endif - {} }; static struct ctl_table_set *set_lookup(struct ctl_table_root *root) diff --git a/ipc/mq_sysctl.c b/ipc/mq_sysctl.c index ebb5ed81c151..8191d03b39cb 100644 --- a/ipc/mq_sysctl.c +++ b/ipc/mq_sysctl.c @@ -62,8 +62,7 @@ static struct ctl_table mq_sysctls[] = { .proc_handler = proc_dointvec_minmax, .extra1 = &msg_maxsize_limit_min, .extra2 = &msg_maxsize_limit_max, - }, - {} + } }; static struct ctl_table_set *set_lookup(struct ctl_table_root *root) diff --git a/kernel/acct.c b/kernel/acct.c index 67125b7c5ca2..93417042762b 100644 --- a/kernel/acct.c +++ b/kernel/acct.c @@ -83,8 +83,7 @@ static struct ctl_table kern_acct_table[] = { .maxlen = 3*sizeof(int), .mode = 0644, .proc_handler = proc_dointvec, - }, - { } + } }; static __init int kernel_acct_sysctls_init(void) diff --git a/kernel/bpf/syscall.c b/kernel/bpf/syscall.c index a81b5122b16b..980ad104fff8 100644 --- a/kernel/bpf/syscall.c +++ b/kernel/bpf/syscall.c @@ -5400,8 +5400,7 @@ static struct ctl_table bpf_syscall_table[] = { .data = &bpf_stats_enabled_key.key, .mode = 0644, .proc_handler = bpf_stats_handler, - }, - { } + } }; static int __init bpf_syscall_sysctl_init(void) diff --git a/kernel/delayacct.c b/kernel/delayacct.c index 4ef14cb5b5a0..539cab051d17 100644 --- a/kernel/delayacct.c +++ b/kernel/delayacct.c @@ -73,8 +73,7 @@ static struct ctl_table kern_delayacct_table[] = { .proc_handler = sysctl_delayacct, .extra1 = SYSCTL_ZERO, .extra2 = SYSCTL_ONE, - }, - { } + } }; static __init int kernel_delayacct_sysctls_init(void) diff --git a/kernel/exit.c b/kernel/exit.c index 633c7a52ef80..87cb53a33bbc 100644 --- a/kernel/exit.c +++ b/kernel/exit.c @@ -89,8 +89,7 @@ static struct ctl_table kern_exit_table[] = { .maxlen = sizeof(oops_limit), .mode = 0644, .proc_handler = proc_douintvec, - }, - { } + } }; static __init int kernel_exit_sysctls_init(void) diff --git a/kernel/hung_task.c b/kernel/hung_task.c index 816f133266c4..8d0659453421 100644 --- a/kernel/hung_task.c +++ b/kernel/hung_task.c @@ -312,8 +312,7 @@ static struct ctl_table hung_task_sysctls[] = { .mode = 0644, .proc_handler = proc_dointvec_minmax, .extra1 = SYSCTL_NEG_ONE, - }, - {} + } }; static void __init hung_task_sysctl_init(void) diff --git a/kernel/kexec_core.c b/kernel/kexec_core.c index 63b04e710890..160779e0a503 100644 --- a/kernel/kexec_core.c +++ b/kernel/kexec_core.c @@ -1001,8 +1001,7 @@ static struct ctl_table kexec_core_sysctls[] = { .data = &load_limit_reboot, .mode = 0644, .proc_handler = kexec_limit_handler, - }, - { } + } }; static int __init kexec_core_sysctl_init(void) diff --git a/kernel/kprobes.c b/kernel/kprobes.c index 06a3ac7993f0..ae6b0f78ae6c 100644 --- a/kernel/kprobes.c +++ b/kernel/kprobes.c @@ -967,8 +967,7 @@ static struct ctl_table kprobe_sysctls[] = { .proc_handler = proc_kprobes_optimization_handler, .extra1 = SYSCTL_ZERO, .extra2 = SYSCTL_ONE, - }, - {} + } }; static void __init kprobe_sysctls_init(void) diff --git a/kernel/latencytop.c b/kernel/latencytop.c index 55050ae0e197..bb4dd0691b3c 100644 --- a/kernel/latencytop.c +++ b/kernel/latencytop.c @@ -84,8 +84,7 @@ static struct ctl_table latencytop_sysctl[] = { .maxlen = sizeof(int), .mode = 0644, .proc_handler = sysctl_latencytop, - }, - {} + } }; #endif diff --git a/kernel/locking/lockdep.c b/kernel/locking/lockdep.c index 1e29cec7e00c..0db8af590f87 100644 --- a/kernel/locking/lockdep.c +++ b/kernel/locking/lockdep.c @@ -95,9 +95,8 @@ static struct ctl_table kern_lockdep_table[] = { .maxlen = sizeof(int), .mode = 0644, .proc_handler = proc_dointvec, - }, + } #endif /* CONFIG_LOCK_STAT */ - { } }; static __init int kernel_lockdep_sysctls_init(void) diff --git a/kernel/panic.c b/kernel/panic.c index 0008273d23fd..79786433efda 100644 --- a/kernel/panic.c +++ b/kernel/panic.c @@ -98,8 +98,7 @@ static struct ctl_table kern_panic_table[] = { .maxlen = sizeof(warn_limit), .mode = 0644, .proc_handler = proc_douintvec, - }, - { } + } }; static __init int kernel_panic_sysctls_init(void) diff --git a/kernel/pid_namespace.c b/kernel/pid_namespace.c index 7fd5e8adc2e8..dc7adbd2f412 100644 --- a/kernel/pid_namespace.c +++ b/kernel/pid_namespace.c @@ -311,8 +311,7 @@ static struct ctl_table pid_ns_ctl_table[] = { .proc_handler = pid_ns_ctl_handler, .extra1 = SYSCTL_ZERO, .extra2 = &pid_max, - }, - { } + } }; #endif /* CONFIG_CHECKPOINT_RESTORE */ diff --git a/kernel/pid_sysctl.h b/kernel/pid_sysctl.h index 8b24744752cb..b9528766d2d8 100644 --- a/kernel/pid_sysctl.h +++ b/kernel/pid_sysctl.h @@ -43,8 +43,7 @@ static struct ctl_table pid_ns_ctl_table_vm[] = { .proc_handler = pid_mfd_noexec_dointvec_minmax, .extra1 = SYSCTL_ZERO, .extra2 = SYSCTL_TWO, - }, - { } + } }; static inline void register_pid_ns_sysctl_table_vm(void) { diff --git a/kernel/printk/sysctl.c b/kernel/printk/sysctl.c index 28f37b86414e..d608832b4489 100644 --- a/kernel/printk/sysctl.c +++ b/kernel/printk/sysctl.c @@ -75,8 +75,7 @@ static struct ctl_table printk_sysctls[] = { .proc_handler = proc_dointvec_minmax_sysadmin, .extra1 = SYSCTL_ZERO, .extra2 = SYSCTL_TWO, - }, - {} + } }; void __init printk_sysctl_init(void) diff --git a/kernel/reboot.c b/kernel/reboot.c index cf81d8bfb523..e29d415810c1 100644 --- a/kernel/reboot.c +++ b/kernel/reboot.c @@ -1271,8 +1271,7 @@ static struct ctl_table kern_reboot_table[] = { .maxlen = sizeof(int), .mode = 0644, .proc_handler = proc_dointvec, - }, - { } + } }; static void __init kernel_reboot_sysctls_init(void) diff --git a/kernel/sched/autogroup.c b/kernel/sched/autogroup.c index 2b9ce82279a5..4c558f0de4f7 100644 --- a/kernel/sched/autogroup.c +++ b/kernel/sched/autogroup.c @@ -18,8 +18,7 @@ static struct ctl_table sched_autogroup_sysctls[] = { .proc_handler = proc_dointvec_minmax, .extra1 = SYSCTL_ZERO, .extra2 = SYSCTL_ONE, - }, - {} + } }; static void __init sched_autogroup_sysctl_init(void) diff --git a/kernel/sched/core.c b/kernel/sched/core.c index b8c7e01dd78a..f11ac1d3e315 100644 --- a/kernel/sched/core.c +++ b/kernel/sched/core.c @@ -4671,9 +4671,8 @@ static struct ctl_table sched_core_sysctls[] = { .proc_handler = sysctl_numa_balancing, .extra1 = SYSCTL_ZERO, .extra2 = SYSCTL_FOUR, - }, + } #endif /* CONFIG_NUMA_BALANCING */ - {} }; static int __init sched_core_sysctl_init(void) { diff --git a/kernel/sched/deadline.c b/kernel/sched/deadline.c index 2aacf5ea2ff3..a6cbdf588590 100644 --- a/kernel/sched/deadline.c +++ b/kernel/sched/deadline.c @@ -40,8 +40,7 @@ static struct ctl_table sched_dl_sysctls[] = { .mode = 0644, .proc_handler = proc_douintvec_minmax, .extra2 = (void *)&sysctl_sched_dl_period_max, - }, - {} + } }; static int __init sched_dl_sysctl_init(void) diff --git a/kernel/sched/fair.c b/kernel/sched/fair.c index db09e56c2dd3..876f110e696d 100644 --- a/kernel/sched/fair.c +++ b/kernel/sched/fair.c @@ -210,9 +210,8 @@ static struct ctl_table sched_fair_sysctls[] = { .mode = 0644, .proc_handler = proc_dointvec_minmax, .extra1 = SYSCTL_ZERO, - }, + } #endif /* CONFIG_NUMA_BALANCING */ - {} }; static int __init sched_fair_sysctl_init(void) diff --git a/kernel/sched/rt.c b/kernel/sched/rt.c index aab9b900ed6f..2e2d49467dd9 100644 --- a/kernel/sched/rt.c +++ b/kernel/sched/rt.c @@ -51,8 +51,7 @@ static struct ctl_table sched_rt_sysctls[] = { .maxlen = sizeof(int), .mode = 0644, .proc_handler = sched_rr_handler, - }, - {} + } }; static int __init sched_rt_sysctl_init(void) diff --git a/kernel/sched/topology.c b/kernel/sched/topology.c index 46d7c3f3e830..cd3fffecbce3 100644 --- a/kernel/sched/topology.c +++ b/kernel/sched/topology.c @@ -249,8 +249,7 @@ static struct ctl_table sched_energy_aware_sysctls[] = { .proc_handler = sched_energy_aware_handler, .extra1 = SYSCTL_ZERO, .extra2 = SYSCTL_ONE, - }, - {} + } }; static int __init sched_energy_aware_sysctl_init(void) diff --git a/kernel/seccomp.c b/kernel/seccomp.c index 9683a9a4709d..1693f0935904 100644 --- a/kernel/seccomp.c +++ b/kernel/seccomp.c @@ -2380,8 +2380,7 @@ static struct ctl_table seccomp_sysctl_table[] = { .procname = "actions_logged", .mode = 0644, .proc_handler = seccomp_actions_logged_handler, - }, - { } + } }; static int __init seccomp_sysctl_init(void) diff --git a/kernel/signal.c b/kernel/signal.c index 19791930f12a..4a87ba91491f 100644 --- a/kernel/signal.c +++ b/kernel/signal.c @@ -4781,9 +4781,8 @@ static struct ctl_table signal_debug_table[] = { .maxlen = sizeof(int), .mode = 0644, .proc_handler = proc_dointvec - }, + } #endif - { } }; static int __init init_signal_sysctls(void) diff --git a/kernel/stackleak.c b/kernel/stackleak.c index 123844341148..6a9a65ace05a 100644 --- a/kernel/stackleak.c +++ b/kernel/stackleak.c @@ -53,8 +53,7 @@ static struct ctl_table stackleak_sysctls[] = { .proc_handler = stack_erasing_sysctl, .extra1 = SYSCTL_ZERO, .extra2 = SYSCTL_ONE, - }, - {} + } }; static int __init stackleak_sysctls_init(void) diff --git a/kernel/sysctl.c b/kernel/sysctl.c index 2b9b0c8569ba..f1865c593666 100644 --- a/kernel/sysctl.c +++ b/kernel/sysctl.c @@ -2041,9 +2041,8 @@ static struct ctl_table kern_table[] = { .proc_handler = proc_dointvec_minmax, .extra1 = SYSCTL_ONE, .extra2 = SYSCTL_INT_MAX, - }, + } #endif - { } }; static struct ctl_table vm_table[] = { @@ -2314,9 +2313,8 @@ static struct ctl_table vm_table[] = { .proc_handler = proc_dointvec_minmax, .extra1 = (void *)&mmap_rnd_compat_bits_min, .extra2 = (void *)&mmap_rnd_compat_bits_max, - }, + } #endif - { } }; int __init sysctl_init_bases(void) diff --git a/kernel/time/timer.c b/kernel/time/timer.c index de385b365a7a..b7594ac53c99 100644 --- a/kernel/time/timer.c +++ b/kernel/time/timer.c @@ -259,8 +259,7 @@ static struct ctl_table timer_sysctl[] = { .proc_handler = timer_migration_handler, .extra1 = SYSCTL_ZERO, .extra2 = SYSCTL_ONE, - }, - {} + } }; static int __init timer_sysctl_init(void) diff --git a/kernel/trace/ftrace.c b/kernel/trace/ftrace.c index 84ef42111f78..7a5a607b6cc2 100644 --- a/kernel/trace/ftrace.c +++ b/kernel/trace/ftrace.c @@ -8213,8 +8213,7 @@ static struct ctl_table ftrace_sysctls[] = { .maxlen = sizeof(int), .mode = 0644, .proc_handler = ftrace_enable_sysctl, - }, - {} + } }; static int __init ftrace_sysctl_init(void) diff --git a/kernel/trace/trace_events_user.c b/kernel/trace/trace_events_user.c index ac019cb21b18..baf48c16d2c5 100644 --- a/kernel/trace/trace_events_user.c +++ b/kernel/trace/trace_events_user.c @@ -2530,8 +2530,7 @@ static struct ctl_table user_event_sysctls[] = { .maxlen = sizeof(unsigned int), .mode = 0644, .proc_handler = set_max_user_events_sysctl, - }, - {} + } }; static int __init trace_events_user_init(void) diff --git a/kernel/ucount.c b/kernel/ucount.c index 59bf6983f1cf..ce7ab90f7953 100644 --- a/kernel/ucount.c +++ b/kernel/ucount.c @@ -85,10 +85,9 @@ static struct ctl_table user_table[] = { #endif #ifdef CONFIG_FANOTIFY UCOUNT_ENTRY("max_fanotify_groups"), - UCOUNT_ENTRY("max_fanotify_marks"), + UCOUNT_ENTRY("max_fanotify_marks") #endif - { } -}; + }; #endif /* CONFIG_SYSCTL */ bool setup_userns_sysctls(struct user_namespace *ns) @@ -96,7 +95,7 @@ bool setup_userns_sysctls(struct user_namespace *ns) #ifdef CONFIG_SYSCTL struct ctl_table *tbl; - BUILD_BUG_ON(ARRAY_SIZE(user_table) != UCOUNT_COUNTS + 1); + BUILD_BUG_ON(ARRAY_SIZE(user_table) != UCOUNT_COUNTS); setup_sysctl_set(&ns->set, &set_root, set_is_seen); tbl = kmemdup(user_table, sizeof(user_table), GFP_KERNEL); if (tbl) { diff --git a/kernel/umh.c b/kernel/umh.c index 187a30ff8541..e1304be4823a 100644 --- a/kernel/umh.c +++ b/kernel/umh.c @@ -559,8 +559,7 @@ static struct ctl_table usermodehelper_table[] = { .maxlen = 2 * sizeof(unsigned long), .mode = 0600, .proc_handler = proc_cap_handler, - }, - { } + } }; static int __init init_umh_sysctls(void) diff --git a/kernel/utsname_sysctl.c b/kernel/utsname_sysctl.c index 24527b155538..8776d45daf3a 100644 --- a/kernel/utsname_sysctl.c +++ b/kernel/utsname_sysctl.c @@ -119,8 +119,7 @@ static struct ctl_table uts_kern_table[] = { .mode = 0644, .proc_handler = proc_do_uts_string, .poll = &domainname_poll, - }, - {} + } }; #ifdef CONFIG_PROC_SYSCTL diff --git a/kernel/watchdog.c b/kernel/watchdog.c index dd5a343fadde..b79e6cfc008c 100644 --- a/kernel/watchdog.c +++ b/kernel/watchdog.c @@ -839,10 +839,9 @@ static struct ctl_table watchdog_sysctls[] = { .proc_handler = proc_dointvec_minmax, .extra1 = SYSCTL_ZERO, .extra2 = SYSCTL_ONE, - }, + } #endif /* CONFIG_SMP */ #endif - {} }; static void __init watchdog_sysctl_init(void) diff --git a/lib/test_sysctl.c b/lib/test_sysctl.c index 83d37a163836..5a9018787d71 100644 --- a/lib/test_sysctl.c +++ b/lib/test_sysctl.c @@ -129,8 +129,7 @@ static struct ctl_table test_table[] = { .maxlen = SYSCTL_TEST_BITMAP_SIZE, .mode = 0644, .proc_handler = proc_do_large_bitmap, - }, - { } + } }; static void test_sysctl_calc_match_int_ok(void) @@ -184,8 +183,7 @@ static struct ctl_table test_table_unregister[] = { .maxlen = sizeof(int), .mode = 0644, .proc_handler = proc_dointvec_minmax, - }, - {} + } }; static int test_sysctl_run_unregister_nested(void) diff --git a/mm/compaction.c b/mm/compaction.c index ca09cdd72bf3..5013f5b7b44b 100644 --- a/mm/compaction.c +++ b/mm/compaction.c @@ -3126,8 +3126,7 @@ static struct ctl_table vm_compaction[] = { .proc_handler = proc_dointvec_minmax_warn_RT_change, .extra1 = SYSCTL_ZERO, .extra2 = SYSCTL_ONE, - }, - { } + } }; static int __init kcompactd_init(void) diff --git a/mm/hugetlb.c b/mm/hugetlb.c index 7838b0c0b82b..5236805aee57 100644 --- a/mm/hugetlb.c +++ b/mm/hugetlb.c @@ -4675,8 +4675,7 @@ static struct ctl_table hugetlb_table[] = { .maxlen = sizeof(unsigned long), .mode = 0644, .proc_handler = hugetlb_overcommit_handler, - }, - { } + } }; static void hugetlb_sysctl_init(void) diff --git a/mm/hugetlb_vmemmap.c b/mm/hugetlb_vmemmap.c index 65885a06269b..b1a2a1089aa3 100644 --- a/mm/hugetlb_vmemmap.c +++ b/mm/hugetlb_vmemmap.c @@ -584,8 +584,7 @@ static struct ctl_table hugetlb_vmemmap_sysctls[] = { .maxlen = sizeof(vmemmap_optimize_enabled), .mode = 0644, .proc_handler = proc_dobool, - }, - { } + } }; static int __init hugetlb_vmemmap_init(void) diff --git a/mm/memory-failure.c b/mm/memory-failure.c index 46aef76d8e91..9bf5dd7a394e 100644 --- a/mm/memory-failure.c +++ b/mm/memory-failure.c @@ -142,8 +142,7 @@ static struct ctl_table memory_failure_table[] = { .proc_handler = proc_dointvec_minmax, .extra1 = SYSCTL_ZERO, .extra2 = SYSCTL_ONE, - }, - { } + } }; static int __init memory_failure_sysctl_init(void) diff --git a/mm/oom_kill.c b/mm/oom_kill.c index 500cf2ef9faa..a05416f798e7 100644 --- a/mm/oom_kill.c +++ b/mm/oom_kill.c @@ -725,8 +725,7 @@ static struct ctl_table vm_oom_kill_table[] = { .maxlen = sizeof(sysctl_oom_dump_tasks), .mode = 0644, .proc_handler = proc_dointvec, - }, - {} + } }; #endif diff --git a/mm/page-writeback.c b/mm/page-writeback.c index 9f997de8d12f..b75aaae6f77b 100644 --- a/mm/page-writeback.c +++ b/mm/page-writeback.c @@ -2290,8 +2290,7 @@ static struct ctl_table vm_page_writeback_sysctls[] = { .maxlen = sizeof(laptop_mode), .mode = 0644, .proc_handler = proc_dointvec_jiffies, - }, - {} + } }; #endif diff --git a/net/appletalk/sysctl_net_atalk.c b/net/appletalk/sysctl_net_atalk.c index 30dcbbb8aeff..3975c1fad48c 100644 --- a/net/appletalk/sysctl_net_atalk.c +++ b/net/appletalk/sysctl_net_atalk.c @@ -39,8 +39,7 @@ static struct ctl_table atalk_table[] = { .maxlen = sizeof(int), .mode = 0644, .proc_handler = proc_dointvec_jiffies, - }, - { }, + } }; static struct ctl_table_header *atalk_table_header; diff --git a/net/ax25/sysctl_net_ax25.c b/net/ax25/sysctl_net_ax25.c index 06afbc14b783..e7e81787e5de 100644 --- a/net/ax25/sysctl_net_ax25.c +++ b/net/ax25/sysctl_net_ax25.c @@ -139,10 +139,9 @@ static const struct ctl_table ax25_param_table[] = { .proc_handler = proc_dointvec_minmax, .extra1 = &min_ds_timeout, .extra2 = &max_ds_timeout - }, + } #endif - - { } /* that's all, folks! */ +/* that's all, folks! */ }; int ax25_register_dev_sysctl(ax25_dev *ax25_dev) diff --git a/net/bridge/br_netfilter_hooks.c b/net/bridge/br_netfilter_hooks.c index ebbaef748a48..dfc37ac00980 100644 --- a/net/bridge/br_netfilter_hooks.c +++ b/net/bridge/br_netfilter_hooks.c @@ -1100,8 +1100,7 @@ static struct ctl_table brnf_table[] = { .maxlen = sizeof(int), .mode = 0644, .proc_handler = brnf_sysctl_call_tables, - }, - { } + } }; static inline void br_netfilter_sysctl_default(struct brnf_net *brnf) diff --git a/net/core/neighbour.c b/net/core/neighbour.c index aa5ad1cfc9b1..096d86013300 100644 --- a/net/core/neighbour.c +++ b/net/core/neighbour.c @@ -3716,7 +3716,7 @@ static int neigh_proc_base_reachable_time(struct ctl_table *ctl, int write, static struct neigh_sysctl_table { struct ctl_table_header *sysctl_header; - struct ctl_table neigh_vars[NEIGH_VAR_MAX + 1]; + struct ctl_table neigh_vars[NEIGH_VAR_MAX]; } neigh_sysctl_template __read_mostly = { .neigh_vars = { NEIGH_SYSCTL_ZERO_INTMAX_ENTRY(MCAST_PROBES, "mcast_solicit"), @@ -3766,9 +3766,8 @@ static struct neigh_sysctl_table { .extra1 = SYSCTL_ZERO, .extra2 = SYSCTL_INT_MAX, .proc_handler = proc_dointvec_minmax, - }, - {}, - }, + } + } }; int neigh_sysctl_register(struct net_device *dev, struct neigh_parms *p, @@ -3779,6 +3778,7 @@ int neigh_sysctl_register(struct net_device *dev, struct neigh_parms *p, const char *dev_name_source; char neigh_path[ sizeof("net//neigh/") + IFNAMSIZ + IFNAMSIZ ]; char *p_name; + size_t neigh_vars_size; t = kmemdup(&neigh_sysctl_template, sizeof(*t), GFP_KERNEL_ACCOUNT); if (!t) @@ -3790,11 +3790,11 @@ int neigh_sysctl_register(struct net_device *dev, struct neigh_parms *p, t->neigh_vars[i].extra2 = p; } + neigh_vars_size = ARRAY_SIZE(t->neigh_vars); if (dev) { dev_name_source = dev->name; /* Terminate the table early */ - memset(&t->neigh_vars[NEIGH_VAR_GC_INTERVAL], 0, - sizeof(t->neigh_vars[NEIGH_VAR_GC_INTERVAL])); + neigh_vars_size = NEIGH_VAR_BASE_REACHABLE_TIME_MS; } else { struct neigh_table *tbl = p->tbl; dev_name_source = "default"; @@ -3843,7 +3843,7 @@ int neigh_sysctl_register(struct net_device *dev, struct neigh_parms *p, p_name, dev_name_source); t->sysctl_header = register_net_sysctl(neigh_parms_net(p), neigh_path, t->neigh_vars, - ARRAY_SIZE(t->neigh_vars)); + neigh_vars_size); if (!t->sysctl_header) goto free; diff --git a/net/core/sysctl_net_core.c b/net/core/sysctl_net_core.c index aa615f22507b..9acde2a110cd 100644 --- a/net/core/sysctl_net_core.c +++ b/net/core/sysctl_net_core.c @@ -652,8 +652,7 @@ static struct ctl_table net_core_table[] = { .mode = 0644, .proc_handler = proc_dointvec_minmax, .extra1 = SYSCTL_ZERO, - }, - { } + } }; static struct ctl_table netns_core_table[] = { @@ -681,8 +680,7 @@ static struct ctl_table netns_core_table[] = { .extra1 = SYSCTL_ZERO, .extra2 = SYSCTL_ONE, .proc_handler = proc_dou8vec_minmax, - }, - { } + } }; static int __init fb_tunnels_only_for_init_net_sysctl_setup(char *str) diff --git a/net/dccp/sysctl.c b/net/dccp/sysctl.c index 1140748858b0..7a5ccae4fc10 100644 --- a/net/dccp/sysctl.c +++ b/net/dccp/sysctl.c @@ -89,9 +89,7 @@ static struct ctl_table dccp_default_table[] = { .maxlen = sizeof(sysctl_dccp_sync_ratelimit), .mode = 0644, .proc_handler = proc_dointvec_ms_jiffies, - }, - - { } + } }; static struct ctl_table_header *dccp_table_header; diff --git a/net/ieee802154/6lowpan/reassembly.c b/net/ieee802154/6lowpan/reassembly.c index 7b717434368c..3d9f2fbb8ec0 100644 --- a/net/ieee802154/6lowpan/reassembly.c +++ b/net/ieee802154/6lowpan/reassembly.c @@ -337,8 +337,7 @@ static struct ctl_table lowpan_frags_ns_ctl_table[] = { .maxlen = sizeof(int), .mode = 0644, .proc_handler = proc_dointvec_jiffies, - }, - { } + } }; /* secret interval has been deprecated */ @@ -350,8 +349,7 @@ static struct ctl_table lowpan_frags_ctl_table[] = { .maxlen = sizeof(int), .mode = 0644, .proc_handler = proc_dointvec_jiffies, - }, - { } + } }; static int __net_init lowpan_frags_ns_sysctl_register(struct net *net) diff --git a/net/ipv4/devinet.c b/net/ipv4/devinet.c index 6360425dfcb2..eeb229b1ab78 100644 --- a/net/ipv4/devinet.c +++ b/net/ipv4/devinet.c @@ -2516,7 +2516,7 @@ static int ipv4_doint_and_flush(struct ctl_table *ctl, int write, static struct devinet_sysctl_table { struct ctl_table_header *sysctl_header; - struct ctl_table devinet_vars[__IPV4_DEVCONF_MAX]; + struct ctl_table devinet_vars[IPV4_DEVCONF_MAX]; } devinet_sysctl = { .devinet_vars = { DEVINET_SYSCTL_COMPLEX_ENTRY(FORWARDING, "forwarding", @@ -2653,8 +2653,7 @@ static struct ctl_table ctl_forward_entry[] = { .proc_handler = devinet_sysctl_forward, .extra1 = &ipv4_devconf, .extra2 = &init_net, - }, - { }, + } }; #endif diff --git a/net/ipv4/ip_fragment.c b/net/ipv4/ip_fragment.c index 3d7a82a900b5..2f8a8ac058da 100644 --- a/net/ipv4/ip_fragment.c +++ b/net/ipv4/ip_fragment.c @@ -579,8 +579,7 @@ static struct ctl_table ip4_frags_ns_ctl_table[] = { .mode = 0644, .proc_handler = proc_dointvec_minmax, .extra1 = &dist_min, - }, - { } + } }; /* secret interval has been deprecated */ @@ -592,8 +591,7 @@ static struct ctl_table ip4_frags_ctl_table[] = { .maxlen = sizeof(int), .mode = 0644, .proc_handler = proc_dointvec_jiffies, - }, - { } + } }; static int __net_init ip4_frags_ns_ctl_register(struct net *net) diff --git a/net/ipv4/route.c b/net/ipv4/route.c index 883f4f1ee056..de0c0f9078b5 100644 --- a/net/ipv4/route.c +++ b/net/ipv4/route.c @@ -3551,8 +3551,7 @@ static struct ctl_table ipv4_route_table[] = { .maxlen = sizeof(int), .mode = 0644, .proc_handler = proc_dointvec, - }, - { } + } }; static const char ipv4_route_flush_procname[] = "flush"; @@ -3585,8 +3584,7 @@ static struct ctl_table ipv4_route_netns_table[] = { .maxlen = sizeof(int), .mode = 0644, .proc_handler = proc_dointvec, - }, - { }, + } }; static __net_init int sysctl_route_net_init(struct net *net) diff --git a/net/ipv4/sysctl_net_ipv4.c b/net/ipv4/sysctl_net_ipv4.c index 1821f403efc0..31306925a35d 100644 --- a/net/ipv4/sysctl_net_ipv4.c +++ b/net/ipv4/sysctl_net_ipv4.c @@ -577,8 +577,7 @@ static struct ctl_table ipv4_table[] = { .proc_handler = proc_douintvec_minmax, .extra1 = &sysctl_fib_sync_mem_min, .extra2 = &sysctl_fib_sync_mem_max, - }, - { } + } }; static struct ctl_table ipv4_net_table[] = { @@ -1469,8 +1468,7 @@ static struct ctl_table ipv4_net_table[] = { .proc_handler = proc_dointvec_minmax, .extra1 = SYSCTL_ZERO, .extra2 = &tcp_plb_max_cong_thresh, - }, - { } + } }; static __net_init int ipv4_sysctl_init_net(struct net *net) diff --git a/net/ipv4/xfrm4_policy.c b/net/ipv4/xfrm4_policy.c index ec1d68dbffc3..40610bb3a75a 100644 --- a/net/ipv4/xfrm4_policy.c +++ b/net/ipv4/xfrm4_policy.c @@ -160,8 +160,7 @@ static struct ctl_table xfrm4_policy_table[] = { .maxlen = sizeof(int), .mode = 0644, .proc_handler = proc_dointvec, - }, - { } + } }; static __net_init int xfrm4_net_sysctl_init(struct net *net) diff --git a/net/ipv6/addrconf.c b/net/ipv6/addrconf.c index 68a2925c66a5..c72887ad79a3 100644 --- a/net/ipv6/addrconf.c +++ b/net/ipv6/addrconf.c @@ -7055,9 +7055,6 @@ static const struct ctl_table addrconf_sysctl[] = { .proc_handler = proc_dointvec_minmax, .extra1 = SYSCTL_ZERO, .extra2 = SYSCTL_TWO, - }, - { - /* sentinel */ } }; @@ -7072,7 +7069,7 @@ static int __addrconf_sysctl_register(struct net *net, char *dev_name, if (!table) goto out; - for (i = 0; table[i].data; i++) { + for (i = 0; i < ARRAY_SIZE(addrconf_sysctl); i++) { table[i].data += (char *)p - (char *)&ipv6_devconf; /* If one of these is already set, then it is not safe to * overwrite either of them: this makes proc_dointvec_minmax diff --git a/net/ipv6/icmp.c b/net/ipv6/icmp.c index 4159662fa214..b57e2c447969 100644 --- a/net/ipv6/icmp.c +++ b/net/ipv6/icmp.c @@ -1204,8 +1204,7 @@ static struct ctl_table ipv6_icmp_table_template[] = { .proc_handler = proc_dou8vec_minmax, .extra1 = SYSCTL_ZERO, .extra2 = SYSCTL_ONE, - }, - { }, + } }; struct ctl_table * __net_init ipv6_icmp_sysctl_init(struct net *net) diff --git a/net/ipv6/netfilter/nf_conntrack_reasm.c b/net/ipv6/netfilter/nf_conntrack_reasm.c index dca8e0aabc51..18106042a3ed 100644 --- a/net/ipv6/netfilter/nf_conntrack_reasm.c +++ b/net/ipv6/netfilter/nf_conntrack_reasm.c @@ -61,8 +61,7 @@ static struct ctl_table nf_ct_frag6_sysctl_table[] = { .maxlen = sizeof(unsigned long), .mode = 0644, .proc_handler = proc_doulongvec_minmax, - }, - { } + } }; static int nf_ct_frag6_sysctl_register(struct net *net) diff --git a/net/ipv6/reassembly.c b/net/ipv6/reassembly.c index 0688261202de..b7d7dd6e1f75 100644 --- a/net/ipv6/reassembly.c +++ b/net/ipv6/reassembly.c @@ -435,8 +435,7 @@ static struct ctl_table ip6_frags_ns_ctl_table[] = { .maxlen = sizeof(int), .mode = 0644, .proc_handler = proc_dointvec_jiffies, - }, - { } + } }; /* secret interval has been deprecated */ @@ -448,8 +447,7 @@ static struct ctl_table ip6_frags_ctl_table[] = { .maxlen = sizeof(int), .mode = 0644, .proc_handler = proc_dointvec_jiffies, - }, - { } + } }; static int __net_init ip6_frags_ns_sysctl_register(struct net *net) diff --git a/net/ipv6/route.c b/net/ipv6/route.c index a35470576077..0b2a3afe620e 100644 --- a/net/ipv6/route.c +++ b/net/ipv6/route.c @@ -6417,8 +6417,7 @@ static struct ctl_table ipv6_route_table_template[] = { .proc_handler = proc_dointvec_minmax, .extra1 = SYSCTL_ZERO, .extra2 = SYSCTL_ONE, - }, - { } + } }; struct ctl_table * __net_init ipv6_route_sysctl_init(struct net *net) diff --git a/net/ipv6/sysctl_net_ipv6.c b/net/ipv6/sysctl_net_ipv6.c index 29f121f513a6..0d45a8a32752 100644 --- a/net/ipv6/sysctl_net_ipv6.c +++ b/net/ipv6/sysctl_net_ipv6.c @@ -212,8 +212,7 @@ static struct ctl_table ipv6_table_template[] = { .mode = 0644, .proc_handler = proc_doulongvec_minmax, .extra2 = &ioam6_id_wide_max, - }, - { } + } }; static struct ctl_table ipv6_rotable[] = { @@ -246,9 +245,8 @@ static struct ctl_table ipv6_rotable[] = { .maxlen = sizeof(int), .mode = 0644, .proc_handler = proc_dointvec, - }, + } #endif /* CONFIG_NETLABEL */ - { } }; static int __net_init ipv6_sysctl_net_init(struct net *net) diff --git a/net/ipv6/xfrm6_policy.c b/net/ipv6/xfrm6_policy.c index 27efdb18a018..f3559ff33ff4 100644 --- a/net/ipv6/xfrm6_policy.c +++ b/net/ipv6/xfrm6_policy.c @@ -187,8 +187,7 @@ static struct ctl_table xfrm6_policy_table[] = { .maxlen = sizeof(int), .mode = 0644, .proc_handler = proc_dointvec, - }, - { } + } }; static int __net_init xfrm6_net_sysctl_init(struct net *net) diff --git a/net/llc/sysctl_net_llc.c b/net/llc/sysctl_net_llc.c index 195296ba29f0..520fc52059b1 100644 --- a/net/llc/sysctl_net_llc.c +++ b/net/llc/sysctl_net_llc.c @@ -43,12 +43,10 @@ static struct ctl_table llc2_timeout_table[] = { .maxlen = sizeof(sysctl_llc2_rej_timeout), .mode = 0644, .proc_handler = proc_dointvec_jiffies, - }, - { }, + } }; static struct ctl_table llc_station_table[] = { - { }, }; static struct ctl_table_header *llc2_timeout_header; diff --git a/net/mpls/af_mpls.c b/net/mpls/af_mpls.c index 6f96aae76537..a78daceddf74 100644 --- a/net/mpls/af_mpls.c +++ b/net/mpls/af_mpls.c @@ -1391,8 +1391,7 @@ static const struct ctl_table mpls_dev_table[] = { .mode = 0644, .proc_handler = mpls_conf_proc, .data = MPLS_PERDEV_SYSCTL_OFFSET(input_enabled), - }, - { } + } }; static int mpls_platform_labels(struct ctl_table *table, int write, @@ -1425,8 +1424,7 @@ static const struct ctl_table mpls_table[] = { .proc_handler = proc_dointvec_minmax, .extra1 = SYSCTL_ONE, .extra2 = &ttl_max, - }, - { } + } }; static int mpls_dev_sysctl_register(struct net_device *dev, @@ -1444,7 +1442,7 @@ static int mpls_dev_sysctl_register(struct net_device *dev, /* Table data contains only offsets relative to the base of * the mdev at this point, so make them absolute. */ - for (i = 0; i < ARRAY_SIZE(mpls_dev_table) - 1; i++) { + for (i = 0; i < ARRAY_SIZE(mpls_dev_table); i++) { table[i].data = (char *)mdev + (uintptr_t)table[i].data; table[i].extra1 = mdev; table[i].extra2 = net; @@ -2689,7 +2687,7 @@ static int mpls_net_init(struct net *net) /* Table data contains only offsets relative to the base of * the mdev at this point, so make them absolute. */ - for (i = 0; i < ARRAY_SIZE(mpls_table) - 1; i++) + for (i = 0; i < ARRAY_SIZE(mpls_table); i++) table[i].data = (char *)net + (uintptr_t)table[i].data; net->mpls.ctl = register_net_sysctl(net, "net/mpls", table, diff --git a/net/mptcp/ctrl.c b/net/mptcp/ctrl.c index 42dfc834e5c6..27fb556d2273 100644 --- a/net/mptcp/ctrl.c +++ b/net/mptcp/ctrl.c @@ -127,8 +127,7 @@ static struct ctl_table mptcp_sysctl_table[] = { .proc_handler = proc_dou8vec_minmax, .extra1 = SYSCTL_ZERO, .extra2 = &mptcp_pm_type_max - }, - {} + } }; static int mptcp_pernet_new_table(struct net *net, struct mptcp_pernet *pernet) diff --git a/net/netfilter/ipvs/ip_vs_ctl.c b/net/netfilter/ipvs/ip_vs_ctl.c index abbd30ee3ce0..fef7104ac33e 100644 --- a/net/netfilter/ipvs/ip_vs_ctl.c +++ b/net/netfilter/ipvs/ip_vs_ctl.c @@ -2258,9 +2258,8 @@ static struct ctl_table vs_vars[] = { .maxlen = sizeof(int), .mode = 0644, .proc_handler = proc_dointvec, - }, + } #endif - { } }; #endif diff --git a/net/netfilter/ipvs/ip_vs_lblc.c b/net/netfilter/ipvs/ip_vs_lblc.c index 254eb3b61e15..e6297bb6922b 100644 --- a/net/netfilter/ipvs/ip_vs_lblc.c +++ b/net/netfilter/ipvs/ip_vs_lblc.c @@ -122,8 +122,7 @@ static struct ctl_table vs_vars_table[] = { .maxlen = sizeof(int), .mode = 0644, .proc_handler = proc_dointvec_jiffies, - }, - { } + } }; #endif diff --git a/net/netfilter/ipvs/ip_vs_lblcr.c b/net/netfilter/ipvs/ip_vs_lblcr.c index 0e39a4fd421f..f3056767818b 100644 --- a/net/netfilter/ipvs/ip_vs_lblcr.c +++ b/net/netfilter/ipvs/ip_vs_lblcr.c @@ -293,8 +293,7 @@ static struct ctl_table vs_vars_table[] = { .maxlen = sizeof(int), .mode = 0644, .proc_handler = proc_dointvec_jiffies, - }, - { } + } }; #endif diff --git a/net/netfilter/nf_conntrack_standalone.c b/net/netfilter/nf_conntrack_standalone.c index a3b2029ef098..26efc6f28b34 100644 --- a/net/netfilter/nf_conntrack_standalone.c +++ b/net/netfilter/nf_conntrack_standalone.c @@ -616,11 +616,9 @@ enum nf_ct_sysctl_index { NF_SYSCTL_CT_LWTUNNEL, #endif - __NF_SYSCTL_CT_LAST_SYSCTL, + NF_SYSCTL_CT_LAST_SYSCTL, }; -#define NF_SYSCTL_CT_LAST_SYSCTL (__NF_SYSCTL_CT_LAST_SYSCTL + 1) - static struct ctl_table nf_ct_sysctl_table[] = { [NF_SYSCTL_CT_MAX] = { .procname = "nf_conntrack_max", @@ -955,9 +953,8 @@ static struct ctl_table nf_ct_sysctl_table[] = { .maxlen = sizeof(int), .mode = 0644, .proc_handler = nf_hooks_lwtunnel_sysctl_handler, - }, + } #endif - {} }; static struct ctl_table nf_ct_netfilter_table[] = { @@ -967,8 +964,7 @@ static struct ctl_table nf_ct_netfilter_table[] = { .maxlen = sizeof(int), .mode = 0644, .proc_handler = proc_dointvec, - }, - { } + } }; static void nf_conntrack_standalone_init_tcp_sysctl(struct net *net, diff --git a/net/netfilter/nf_log.c b/net/netfilter/nf_log.c index 755f9cf570ce..686040b5e431 100644 --- a/net/netfilter/nf_log.c +++ b/net/netfilter/nf_log.c @@ -389,7 +389,7 @@ static const struct seq_operations nflog_seq_ops = { #ifdef CONFIG_SYSCTL static char nf_log_sysctl_fnames[NFPROTO_NUMPROTO-NFPROTO_UNSPEC][3]; -static struct ctl_table nf_log_sysctl_table[NFPROTO_NUMPROTO+1]; +static struct ctl_table nf_log_sysctl_table[NFPROTO_NUMPROTO]; static struct ctl_table_header *nf_log_sysctl_fhdr; static struct ctl_table nf_log_sysctl_ftable[] = { @@ -399,8 +399,7 @@ static struct ctl_table nf_log_sysctl_ftable[] = { .maxlen = sizeof(sysctl_nf_log_all_netns), .mode = 0644, .proc_handler = proc_dointvec, - }, - { } + } }; static int nf_log_proc_dostring(struct ctl_table *table, int write, diff --git a/net/netrom/sysctl_net_netrom.c b/net/netrom/sysctl_net_netrom.c index c02b93fd9d4f..133dccdc2201 100644 --- a/net/netrom/sysctl_net_netrom.c +++ b/net/netrom/sysctl_net_netrom.c @@ -139,8 +139,7 @@ static struct ctl_table nr_table[] = { .proc_handler = proc_dointvec_minmax, .extra1 = &min_reset, .extra2 = &max_reset - }, - { } + } }; int __init nr_register_sysctl(void) diff --git a/net/phonet/sysctl.c b/net/phonet/sysctl.c index 0fd0fcb00505..5385e980693e 100644 --- a/net/phonet/sysctl.c +++ b/net/phonet/sysctl.c @@ -80,8 +80,7 @@ static struct ctl_table phonet_table[] = { .maxlen = sizeof(local_port_range), .mode = 0644, .proc_handler = proc_local_port_range, - }, - { } + } }; int __init phonet_sysctl_init(void) diff --git a/net/rds/ib_sysctl.c b/net/rds/ib_sysctl.c index 102fd4a18df7..ee9ec39d9b30 100644 --- a/net/rds/ib_sysctl.c +++ b/net/rds/ib_sysctl.c @@ -102,8 +102,7 @@ static struct ctl_table rds_ib_sysctl_table[] = { .maxlen = sizeof(rds_ib_sysctl_flow_control), .mode = 0644, .proc_handler = proc_dointvec, - }, - { } + } }; void rds_ib_sysctl_exit(void) diff --git a/net/rds/sysctl.c b/net/rds/sysctl.c index 5abd2730a1bc..17b325585bd9 100644 --- a/net/rds/sysctl.c +++ b/net/rds/sysctl.c @@ -88,8 +88,7 @@ static struct ctl_table rds_sysctl_rds_table[] = { .maxlen = sizeof(int), .mode = 0644, .proc_handler = proc_dointvec, - }, - { } + } }; void rds_sysctl_exit(void) diff --git a/net/rds/tcp.c b/net/rds/tcp.c index 2e90a2570d3b..e4abe20c4d2d 100644 --- a/net/rds/tcp.c +++ b/net/rds/tcp.c @@ -85,8 +85,7 @@ static struct ctl_table rds_tcp_sysctl_table[] = { .mode = 0644, .proc_handler = rds_tcp_skbuf_handler, .extra1 = &rds_tcp_min_rcvbuf, - }, - { } + } }; u32 rds_tcp_write_seq(struct rds_tcp_connection *tc) diff --git a/net/rose/sysctl_net_rose.c b/net/rose/sysctl_net_rose.c index 4f5a1e8b6c54..1a244a4d0221 100644 --- a/net/rose/sysctl_net_rose.c +++ b/net/rose/sysctl_net_rose.c @@ -111,8 +111,7 @@ static struct ctl_table rose_table[] = { .proc_handler = proc_dointvec_minmax, .extra1 = &min_window, .extra2 = &max_window - }, - { } + } }; void __init rose_register_sysctl(void) diff --git a/net/rxrpc/sysctl.c b/net/rxrpc/sysctl.c index 2b5824416036..583306fad3ef 100644 --- a/net/rxrpc/sysctl.c +++ b/net/rxrpc/sysctl.c @@ -124,8 +124,7 @@ static struct ctl_table rxrpc_sysctl_table[] = { .proc_handler = proc_dointvec_minmax, .extra1 = (void *)SYSCTL_ONE, .extra2 = (void *)&four, - }, - { } + } }; int __init rxrpc_sysctl_init(void) diff --git a/net/sctp/sysctl.c b/net/sctp/sysctl.c index 233f37f0fa28..93ea4decbb1b 100644 --- a/net/sctp/sysctl.c +++ b/net/sctp/sysctl.c @@ -79,9 +79,7 @@ static struct ctl_table sctp_table[] = { .maxlen = sizeof(sysctl_sctp_wmem), .mode = 0644, .proc_handler = proc_dointvec, - }, - - { /* sentinel */ } + } }; /* The following index defines are used in sctp_sysctl_net_register(). @@ -383,9 +381,7 @@ static struct ctl_table sctp_net_table[] = { .proc_handler = proc_dointvec_minmax, .extra1 = SYSCTL_ZERO, .extra2 = &pf_expose_max, - }, - - { /* sentinel */ } + } }; static int proc_sctp_do_hmac_alg(struct ctl_table *ctl, int write, @@ -604,7 +600,7 @@ int sctp_sysctl_net_register(struct net *net) if (!table) return -ENOMEM; - for (i = 0; table[i].data; i++) + for (i = 0; i < ARRAY_SIZE(sctp_net_table); i++) table[i].data += (char *)(&net->sctp) - (char *)&init_net.sctp; table[SCTP_RTO_MIN_IDX].extra2 = &net->sctp.rto_max; diff --git a/net/smc/smc_sysctl.c b/net/smc/smc_sysctl.c index 9404123883c0..89af1f1dbb58 100644 --- a/net/smc/smc_sysctl.c +++ b/net/smc/smc_sysctl.c @@ -61,8 +61,7 @@ static struct ctl_table smc_table[] = { .mode = 0644, .proc_handler = proc_dointvec_minmax, .extra1 = &min_rcvbuf, - }, - { } + } }; int __net_init smc_sysctl_net_init(struct net *net) diff --git a/net/sunrpc/sysctl.c b/net/sunrpc/sysctl.c index 61222addda7e..f4ac3376c25b 100644 --- a/net/sunrpc/sysctl.c +++ b/net/sunrpc/sysctl.c @@ -159,8 +159,7 @@ static struct ctl_table debug_table[] = { .maxlen = 256, .mode = 0444, .proc_handler = proc_do_xprt, - }, - { } + } }; void diff --git a/net/sunrpc/xprtrdma/svc_rdma.c b/net/sunrpc/xprtrdma/svc_rdma.c index df7fb9c8b785..cbc75193bc70 100644 --- a/net/sunrpc/xprtrdma/svc_rdma.c +++ b/net/sunrpc/xprtrdma/svc_rdma.c @@ -208,8 +208,7 @@ static struct ctl_table svcrdma_parm_table[] = { .proc_handler = proc_dointvec_minmax, .extra1 = &zero, .extra2 = &zero, - }, - { }, + } }; static void svc_rdma_proc_cleanup(void) diff --git a/net/sunrpc/xprtrdma/transport.c b/net/sunrpc/xprtrdma/transport.c index bf43e05044a3..75c789712cd9 100644 --- a/net/sunrpc/xprtrdma/transport.c +++ b/net/sunrpc/xprtrdma/transport.c @@ -136,8 +136,7 @@ static struct ctl_table xr_tunables_table[] = { .maxlen = sizeof(unsigned int), .mode = 0644, .proc_handler = proc_dointvec, - }, - { }, + } }; #endif diff --git a/net/sunrpc/xprtsock.c b/net/sunrpc/xprtsock.c index 7c3d5ed708be..c0c59cd3b31c 100644 --- a/net/sunrpc/xprtsock.c +++ b/net/sunrpc/xprtsock.c @@ -154,8 +154,7 @@ static struct ctl_table xs_tunables_table[] = { .maxlen = sizeof(xs_tcp_fin_timeout), .mode = 0644, .proc_handler = proc_dointvec_jiffies, - }, - { }, + } }; /* diff --git a/net/tipc/sysctl.c b/net/tipc/sysctl.c index b9cbc3b359aa..e492d8c6c6f3 100644 --- a/net/tipc/sysctl.c +++ b/net/tipc/sysctl.c @@ -90,8 +90,7 @@ static struct ctl_table tipc_table[] = { .maxlen = sizeof(sysctl_tipc_bc_retruni), .mode = 0644, .proc_handler = proc_doulongvec_minmax, - }, - {} + } }; int tipc_register_sysctl(void) diff --git a/net/unix/sysctl_net_unix.c b/net/unix/sysctl_net_unix.c index 92f3bc3cd704..716dee11d9e3 100644 --- a/net/unix/sysctl_net_unix.c +++ b/net/unix/sysctl_net_unix.c @@ -18,8 +18,7 @@ static struct ctl_table unix_table[] = { .maxlen = sizeof(int), .mode = 0644, .proc_handler = proc_dointvec - }, - { } + } }; int __net_init unix_sysctl_register(struct net *net) diff --git a/net/x25/sysctl_net_x25.c b/net/x25/sysctl_net_x25.c index 4d7c2ee41943..1e76f96ba77f 100644 --- a/net/x25/sysctl_net_x25.c +++ b/net/x25/sysctl_net_x25.c @@ -70,8 +70,7 @@ static struct ctl_table x25_table[] = { .maxlen = sizeof(int), .mode = 0644, .proc_handler = proc_dointvec, - }, - { }, + } }; int __init x25_register_sysctl(void) diff --git a/net/xfrm/xfrm_sysctl.c b/net/xfrm/xfrm_sysctl.c index d04b25a47575..e2b2c3437fbc 100644 --- a/net/xfrm/xfrm_sysctl.c +++ b/net/xfrm/xfrm_sysctl.c @@ -37,8 +37,7 @@ static struct ctl_table xfrm_table[] = { .maxlen = sizeof(int), .mode = 0644, .proc_handler = proc_dointvec - }, - {} + } }; int __net_init xfrm_sysctl_init(struct net *net) diff --git a/security/apparmor/lsm.c b/security/apparmor/lsm.c index b77344506cf3..67aa6e236e66 100644 --- a/security/apparmor/lsm.c +++ b/security/apparmor/lsm.c @@ -1778,9 +1778,7 @@ static struct ctl_table apparmor_sysctl_table[] = { .maxlen = sizeof(int), .mode = 0600, .proc_handler = apparmor_dointvec, - }, - - { } + } }; static int __init apparmor_init_sysctl(void) diff --git a/security/keys/sysctl.c b/security/keys/sysctl.c index fa305f74f658..7c944ef5a58c 100644 --- a/security/keys/sysctl.c +++ b/security/keys/sysctl.c @@ -54,9 +54,9 @@ struct ctl_table key_sysctls[] = { .proc_handler = proc_dointvec_minmax, .extra1 = (void *) SYSCTL_ZERO, .extra2 = (void *) SYSCTL_INT_MAX, - }, + } #ifdef CONFIG_PERSISTENT_KEYRINGS - { + , { .procname = "persistent_keyring_expiry", .data = &persistent_keyring_expiry, .maxlen = sizeof(unsigned), @@ -64,9 +64,8 @@ struct ctl_table key_sysctls[] = { .proc_handler = proc_dointvec_minmax, .extra1 = (void *) SYSCTL_ZERO, .extra2 = (void *) SYSCTL_INT_MAX, - }, + } #endif - { } }; static int __init init_security_keys_sysctls(void) diff --git a/security/loadpin/loadpin.c b/security/loadpin/loadpin.c index 6f2cc827df41..28b411adbf0b 100644 --- a/security/loadpin/loadpin.c +++ b/security/loadpin/loadpin.c @@ -61,8 +61,7 @@ static struct ctl_table loadpin_sysctl_table[] = { .proc_handler = proc_dointvec_minmax, .extra1 = SYSCTL_ONE, .extra2 = SYSCTL_ONE, - }, - { } + } }; static void set_sysctl(bool is_writable) diff --git a/security/yama/yama_lsm.c b/security/yama/yama_lsm.c index 7b8164a4b504..2d2700af9f6b 100644 --- a/security/yama/yama_lsm.c +++ b/security/yama/yama_lsm.c @@ -456,8 +456,7 @@ static struct ctl_table yama_sysctl_table[] = { .proc_handler = yama_dointvec_minmax, .extra1 = SYSCTL_ZERO, .extra2 = &max_scope, - }, - { } + } }; static void __init yama_init_sysctl(void) { -- 2.30.2 From xen-devel-bounces@lists.xenproject.org Wed Jun 21 13:18:33 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 13:18:33 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552713.862993 (Exim 4.92) (envelope-from ) id 1qBxj4-0003TN-1t; Wed, 21 Jun 2023 13:18:22 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552713.862993; Wed, 21 Jun 2023 13:18:21 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBxj3-0003R3-QL; Wed, 21 Jun 2023 13:18:21 +0000 Received: by outflank-mailman (input) for mailman id 552713; Wed, 21 Jun 2023 13:11:56 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBxcp-0000hM-4V for xen-devel@lists.xenproject.org; Wed, 21 Jun 2023 13:11:56 +0000 Received: from mailout1.w1.samsung.com (mailout1.w1.samsung.com [210.118.77.11]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 2fe866fb-1035-11ee-8611-37d641c3527e; Wed, 21 Jun 2023 15:11:52 +0200 (CEST) Received: from eucas1p1.samsung.com (unknown [182.198.249.206]) by mailout1.w1.samsung.com (KnoxPortal) with ESMTP id 20230621131151euoutp01bc8bebbea69ba176d6badb7e87a484a8~qrrcKFwCf2130921309euoutp01B; Wed, 21 Jun 2023 13:11:51 +0000 (GMT) Received: from eusmges2new.samsung.com (unknown [203.254.199.244]) by eucas1p1.samsung.com (KnoxPortal) with ESMTP id 20230621131151eucas1p1847f565a11eec2b83f826f4735d9bd39~qrrb1c2Im0883608836eucas1p1_; Wed, 21 Jun 2023 13:11:51 +0000 (GMT) Received: from eucas1p1.samsung.com ( [182.198.249.206]) by eusmges2new.samsung.com (EUCPMTA) with SMTP id 00.D3.11320.617F2946; Wed, 21 Jun 2023 14:11:51 +0100 (BST) Received: from eusmtrp2.samsung.com (unknown [182.198.249.139]) by eucas1p1.samsung.com (KnoxPortal) with ESMTPA id 20230621131150eucas1p1c9668cfd8aebcd4005ffe3a20510bf14~qrrbSWi6l0379603796eucas1p16; Wed, 21 Jun 2023 13:11:50 +0000 (GMT) Received: from eusmgms2.samsung.com (unknown [182.198.249.180]) by eusmtrp2.samsung.com (KnoxPortal) with ESMTP id 20230621131150eusmtrp2346919855b4d636ebdd3c48db15ffdec~qrrbQcedz0242302423eusmtrp2c; Wed, 21 Jun 2023 13:11:50 +0000 (GMT) Received: from eusmtip1.samsung.com ( [203.254.199.221]) by eusmgms2.samsung.com (EUCPMTA) with SMTP id 9A.D9.14344.617F2946; Wed, 21 Jun 2023 14:11:50 +0100 (BST) Received: from CAMSVWEXC02.scsc.local (unknown [106.1.227.72]) by eusmtip1.samsung.com (KnoxPortal) with ESMTPA id 20230621131150eusmtip1db8bda4ae533f60ba50a09ddffd39f68~qrra5kf3_0998709987eusmtip1L; Wed, 21 Jun 2023 13:11:50 +0000 (GMT) Received: from localhost (106.210.248.248) by CAMSVWEXC02.scsc.local (2002:6a01:e348::6a01:e348) with Microsoft SMTP Server (TLS) id 15.0.1497.2; Wed, 21 Jun 2023 14:11:49 +0100 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 2fe866fb-1035-11ee-8611-37d641c3527e DKIM-Filter: OpenDKIM Filter v2.11.0 mailout1.w1.samsung.com 20230621131151euoutp01bc8bebbea69ba176d6badb7e87a484a8~qrrcKFwCf2130921309euoutp01B DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=samsung.com; s=mail20170921; t=1687353111; bh=2O4y4/AbWeMueqHe0D/3ZI0FDn7vWoH6W/Bnc1hXI8w=; h=Date:From:To:CC:Subject:In-Reply-To:References:From; b=HqRo1EN8b5bvWQROkfcTVVqyVQ/zAmv8ITfXv9JJ9+7esSpiHIkQt5cgn3r7wvisB Upp0PfutetwFf1EtjqJwOPJYz1nmdb7Z6O/7l6kL3D0sazLhYuLRrtXbSiM86je+X2 lcP/wE2su+BtkwSQSh9IpXJYr6GqpDaeQ7hw9dxs= X-AuditID: cbfec7f4-97dff70000022c38-f6-6492f716f94f Date: Wed, 21 Jun 2023 15:11:47 +0200 From: Joel Granados To: Jiri Slaby CC: , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , , Theodore Ts'o , "Jason A. Donenfeld" , Greg Kroah-Hartman , Juergen Gross , Stefano Stabellini , Benjamin LaHaise , Alexander Viro , Christian Brauner , Jeff Layton , Chuck Lever , Jan Kara , Kees Cook , Iurii Zaikin , Alexei Starovoitov , Daniel Borkmann , Andrii Nakryiko , Balbir Singh , Eric Biederman , "Naveen N. Rao" , Anil S Keshavamurthy , "David S. Miller" , Masami Hiramatsu , Peter Zijlstra , Will Deacon , Petr Mladek , Sergey Senozhatsky , Juri Lelli , Vincent Guittot , Steven Rostedt , Andrew Morton , Mike Kravetz , Muchun Song , Naoya Horiguchi , "Matthew Wilcox (Oracle)" , David Howells , Jarkko Sakkinen , Paul Moore , James Morris , "Serge E. Hallyn" , "H. Peter Anvin" , Oleksandr Tyshchenko , Amir Goldstein , John Fastabend , Martin KaFai Lau , Song Liu , Yonghong Song , KP Singh , Stanislav Fomichev , Hao Luo , Jiri Olsa , Waiman Long , Boqun Feng , John Ogness , Dietmar Eggemann , Ben Segall , Mel Gorman , Daniel Bristot de Oliveira , Valentin Schneider , Andy Lutomirski , Will Drewry , Mark Rutland , Miaohe Lin , , , , , , , , , , Subject: Re: [PATCH 08/11] sysctl: Add size to register_sysctl_init Message-ID: <20230621131147.c3jegl4hgjplcrpu@localhost> MIME-Version: 1.0 Content-Type: multipart/signed; micalg="pgp-sha512"; protocol="application/pgp-signature"; boundary="iqp637iv5bkrldev" Content-Disposition: inline In-Reply-To: <36fae2b0-4cd2-58b5-cc12-9abdd5ce235b@kernel.org> X-Originating-IP: [106.210.248.248] X-ClientProxiedBy: CAMSVWEXC01.scsc.local (2002:6a01:e347::6a01:e347) To CAMSVWEXC02.scsc.local (2002:6a01:e348::6a01:e348) X-Brightmail-Tracker: H4sIAAAAAAAAA2WTa1CUZRTH53nfZ99dIHQFJh65VAOkDaAm3s5kOBU6vR/UIJssbKZ24B28 wOrsumUREyybuZgJq0ECxsLmsu6uLBAwIgiIjCuBcvEGCmIrCggidySCjfUlc6Zvv3PO//+c 8//wiGi3TJGXaJd0PyeTSmL9GGdcdmnq6jLPSU30myfKMGRbzAw0F5gQTE5n0VDRewfD2NQd IaTMlmAwlyRRMFo4y8BonZWB/osjCFrv32Agoy9pztvXKAR7Zw8FutwJGnoLf0CQ3aTCMKic xvAgtZQGe5lKCMk6CwO11mohpBd5QlZGMgWaqVQE9254QXZ7CAye9IEpvVEIBRYdBcqzBgrK rucgqDueSUPn0Z8xNB6Og4qGcQpKO5QM9FQdoUA9eQrD8XQlgsrz9Riunctm4K7ZLoChH20M 1FmuYGi4dBmD6UyiAE7daqHArD4tgLbUBwiODT5EoMtfAsPV26C1RkuBvvxPDC1JNQhMx2eE 8HR6WgB3NBkYrEdqKLDfHxdA1aF7FLQ+7cdQUZTHvPMBO/n9T5jtGpjBrPlXM2KzElswW3K6 nWI7TpUjNi15UMiWZ3YKWVXVbSGrLVawNys+ZVV1jwXs74ZAVlfZR7Epba00W2xUM+FvRDq/ Hc3F7vqSk63Y8IXzzkKDFu2rWXjgZrINJyKLawpyEhHxatI0rUYpyFnkJjYgYnw6w/DFGCJP SvoFfDGKyK0LecLnlvar86p8RHJNWfi5qjPl3rylFJGeyyeRw4LFr5O+M0O0gxlxMGka6HjG HnN9fbnx2VO0eOJlotToGcfAXRxGzid3CxzsKl5HjEfzaJ4XkfoT3djBtPgA0TzMm1sgmmNv kj8rcqCTeAOxTbnwl/qTW1U6hucE8kfJbcqxiojbXyLN+QbMDzaSjAzrfDR38shaMs8+xF6e M284hkj17JCQL0yI6JPGKV61nqiud8873iUGpebZQUS8gLQ9XsTfuYBoyjJovu1KDh1049VL iOnuAE5F/pkvJMt8IVnmf8n4djDRVoww/2sHEX1uP81zKCkoeIK1SGhEnpxCHhfDyUOk3FfL 5ZI4uUIaszxqb1wxmvuyDbPWsbMo/9Hw8lpEiVAtCpgz2wpNzcgLS/dKOT8PV99iTbSba7Tk 62842d7PZYpYTl6LvEXYz9M1KLQ+yk0cI9nP7eG4fZzs3yklcvJKpCIu5nQ1/WJzGdt5+9vw huDcssjtihO7u1au3eg/4P1+fEdt6OzhkPTdUWkeXgmBbQcbvavzjUyie++eljR7ucE4LNvR seHa2WXq4SvnV65670zYCplq6X2niM/CjC6b1u1ZvbVxy6ZGVcxRxfCI/qB0sjtP12c55NfV zQXVVzaXJqz13Ry2pSoh+Zwl4Fh8F9QJLiz2Cl74qq1I9VCNnWqt3qHN2t2NAUVXLrmcPBx7 pFK7ZrqODVgwod0RlWb+yL6GfNJhcJMg07b1Xft++zs+77tVr/go3lJHWFvdC/o2hyttY+e2 rnstMnZm+8bFSfEJIXSSvMV3xPcvaVR4xcKlH2/3+dAPy3dKVgbSMrnkH/B7UHotBQAA X-Brightmail-Tracker: H4sIAAAAAAAAA2WTfUxTZxTG9957e1vcmB34cYM4tYPFOC200nJAYDNbluuWDBNNwLnZdXCl OFpMC8aBbhQw48tREGUUcEBXUChgETsYCgSZjOkUEJQOUYcftcr4KogVhRXqMpP993vPc57n nLzJ4eBuJrYHJ1oRxygV0hgeuYi4ONsxuGHZdG6kb4PRA4pqDSR01VQhmJ4pxKHpwQABk/YB NmTM1hNgqFdjYDs1S4KtvYOER+cnEPTc6SMh36omoMh6iQ1zgxYMdKWPcXhw6jsERVdSCRhJ niHgnuYMDnOmVDak6GpJaOtoYcMx43IozE/BINeuQXC7zzHfLISRYk+wl1eyoaZWh0FywwkM TL0/ImjP0+IwmH2UgEuZcmi6OIXBmRvJJFiaD2OQPq0nIO9YMoKz5zoJuPpLEQk3DXMsGMsa IqG99g8CLl74jYCq6iQW6K93Y2BIP8mCfs09BEdG7iPQVbwN4y3boKe1BIPyxr8I6Fa3IqjK e86GJzMzLBjIzSeg43ArBnN3pljQnHYbg54njwhoMpaR74XS04e+J+hbw88J2nDcgOjCpG6C rj9pxugb+kZE56SMsOlG7SCbTm3+k02X1MXT15p20Kntf7Po0yfW0bqzVozO6O/B6brKdHLr 2k/5QcrY+DhmtSxWFRfM2ykAIV8QAHyhXwBfsNH/80ChiOcTEhTJxETvY5Q+IV/wZTNZE2hv 8+L9xsfFKAlVu2YgFw7F9aOumC+TGWgRx42rR9TN88PIKXhSxsk+lpPdqWfXMl40jSPqaetP Lx5nEGXNvI/NdxFcb8paPYbPM8ldT10ZvrHASxz18sbKBQPOnVhGWbM0xLzgzn2fOpdyd2GE K9efqswuw52p04j6tb8LdwpvUJ0FdxcMOHcf1ak2O/bjOHgFVTHLmUcXbgg1ZH/Vuelb1PVm Henkg5Tt+X2kQe7al4K0LwVp/wtyltdR/bNW7H/ld6jy0ke4k4OpmppRogSxK9ESJl4lj5Kr hHyVVK6KV0TxI2LldchxNKYL9voGdPLhOL8NYRzUhrwczqFTVV3Ig1DEKhjeEteVdbmRbq6R 0q8TGGWsRBkfw6jakMjxizm4x9KIWMcFKuIkArGvSOAnDvAVBYg38pa7btmbJnXjRknjmK8Y Zi+j/NeHcVw8krBtipXfhLVMKCVX/aoyG9ZvX+0X2sKow7XeA22yUPHgVYm/aP/HG8NOvEuf vp1+QPy7KbqyEweFWviR6ZWYgt5E3eLgcUP5ls9eXyxcurmEvJPo+VrY0YrCPfny6uBd9MCb l1g5Xwaq7P7+1VGtOxL3EHWHeqsDu1m7fZIK1lpGp8K9zIkrHvJWnV5zNiVow5GQoVub0rL1 xwNt3uG37nrv9Prw2VN326Ro50jBKqN+uGtTdExUzaTtZ02kZUyccKCw6BPZwYZG7zWlZZaH u8MvF1/enqAsP7ZMFfrgA0lEc41tuVZyQLY1peKHb+nQhAiLzMeWEzJaau0x62TnvFLFuzZn 8giVTCpYhytV0n8AeVQNz8kEAAA= X-CMS-MailID: 20230621131150eucas1p1c9668cfd8aebcd4005ffe3a20510bf14 X-Msg-Generator: CA X-RootMTR: 20230621091037eucas1p188e11d8064526a5a0549217d5a419647 X-EPHeader: CA CMS-TYPE: 201P X-CMS-RootMailID: 20230621091037eucas1p188e11d8064526a5a0549217d5a419647 References: <20230621091000.424843-1-j.granados@samsung.com> <20230621091000.424843-9-j.granados@samsung.com> <36fae2b0-4cd2-58b5-cc12-9abdd5ce235b@kernel.org> --iqp637iv5bkrldev Content-Type: text/plain; charset="us-ascii" Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Wed, Jun 21, 2023 at 11:56:03AM +0200, Jiri Slaby wrote: > On 21. 06. 23, 11:09, Joel Granados wrote: > > In order to remove the end element from the ctl_table struct arrays, we > > explicitly define the size when registering the targes. We add a size > > argument to the register_sysctl_init call and pass an ARRAY_SIZE for all > > the callers. >=20 > Hi, I am missing here (or in 00/00) _why_ you are doing that. Is it by a Not sure what happened. I used the kernels get_maintainers.pl script together with git-send-email. These are my settings: " tocmd =3D"`pwd`/scripts/get_maintainer.pl --nogit --nogit-fallback --norole= stats --m --nol --nor" cccmd =3D"`pwd`/scripts/get_maintainer.pl --nogit --nogit-fallback --norole= stats --l --r --nom" " Could it be that there is an error in MAINTAINERS? > chance those saved 9k? I hope not. Not by chance. It is an expected consequence of removing the empty sentinel element from ctl_table arrays Best >=20 > thanks, > --=20 > js > suse labs >=20 --=20 Joel Granados --iqp637iv5bkrldev Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQGzBAABCgAdFiEErkcJVyXmMSXOyyeQupfNUreWQU8FAmSS9xMACgkQupfNUreW QU/SugwAjz9Nx/luD2X1jMmB/DLFYSelLyv19pjyd9G0GZhEpbjgMPAZSdozNRfh SJiGP9v4VptCMgQA6clQZvFGtQZ7H2RWzwmXM5xilft5bLPFIOwb+tMctiP7iJ3h DMaPmx8BBTPNE5NRtEYVqsF0sA9GqO6d7PgZMNBi/9PMlleQMKROdUeyRq3sDXMQ 098gOYeuVIRNTWnLfNiCju8zkthUVEGlMZ3jOVaOFDCGE5Ua42l0StHVu/8oB+WD bVNpOUAFalLOyYSGJj0Jau58jKdiBwfxBhS4tJgFHzxWNPkfIZSu0YPfIJbEcdAC mVT4X9lNxFnO2J1vCfIuch/GaTxYC6r3jY3ffaMdV/LtProQLo+Swb3/QOOSHj6p Ut9ZznrnIvPjjny+MRuKC8eMoGPYmU163B/4AN8isdHtdMy2YRLCrnZW+CwmxDvI dTLcQzvZnyo1pCjXQL5bwFdi3BVUdGD9V2gqDaFGj/eJj/U6G2zu5MGoRrJKO/Hi b7C5kEHu =2P4k -----END PGP SIGNATURE----- --iqp637iv5bkrldev-- From xen-devel-bounces@lists.xenproject.org Wed Jun 21 13:19:01 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 13:19:01 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552758.863038 (Exim 4.92) (envelope-from ) id 1qBxjX-0006H7-Ff; Wed, 21 Jun 2023 13:18:51 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552758.863038; Wed, 21 Jun 2023 13:18:51 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBxjX-0006G9-9Y; Wed, 21 Jun 2023 13:18:51 +0000 Received: by outflank-mailman (input) for mailman id 552758; Wed, 21 Jun 2023 13:18:50 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBxjW-0005TW-4T for xen-devel@lists.xenproject.org; Wed, 21 Jun 2023 13:18:50 +0000 Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 281f8ab4-1036-11ee-8611-37d641c3527e; Wed, 21 Jun 2023 15:18:48 +0200 (CEST) Received: from [192.168.1.143] (unknown [151.44.212.241]) by support.bugseng.com (Postfix) with ESMTPSA id AEEA94EE0737; Wed, 21 Jun 2023 15:18:46 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 281f8ab4-1036-11ee-8611-37d641c3527e Message-ID: <1e348612-16ff-1446-72fa-9a350d3e99ca@bugseng.com> Date: Wed, 21 Jun 2023 15:18:43 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.12) Gecko/20050929 Thunderbird/1.0.7 Fedora/1.0.7-1.1.fc4 Mnenhy/0.7.3.0 Subject: Re: [XEN PATCH v2] docs/misra: document the C dialect and translation toolchain assumptions. Content-Language: en-US To: Jan Beulich Cc: roger.pau@citrix.com, bertrand.marquis@arm.com, michal.orzel@amd.com, xenia.ragiadakou@amd.com, ayan.kumar.halder@amd.com, consulting@bugseng.com, Andrew Cooper , George Dunlap , Julien Grall , Stefano Stabellini , Wei Liu , xen-devel@lists.xenproject.org References: <4a06234a-d9ee-4359-3260-eaf18dc83f86@suse.com> From: Roberto Bagnara In-Reply-To: <4a06234a-d9ee-4359-3260-eaf18dc83f86@suse.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit On 20/06/23 16:56, Jan Beulich wrote: > On 20.06.2023 14:10, Roberto Bagnara wrote: >> + * - Arithmetic operator on void type >> + - ARM64, X86_64 >> + - See Section "6.24 Arithmetic on void- and Function-Pointers" of GCC_MANUAL." > > The first line is misleading - we don't (and can't) do arithmetic on void. > What we do is arithmetic on pointers to void (like the gcc section title > properly says). You are right: corrected now. Thanks, Roberto From xen-devel-bounces@lists.xenproject.org Wed Jun 21 13:21:49 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 13:21:49 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552782.863047 (Exim 4.92) (envelope-from ) id 1qBxmO-00007K-Qo; Wed, 21 Jun 2023 13:21:48 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552782.863047; Wed, 21 Jun 2023 13:21:48 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBxmO-00007A-OB; Wed, 21 Jun 2023 13:21:48 +0000 Received: by outflank-mailman (input) for mailman id 552782; Wed, 21 Jun 2023 13:21:48 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBxmO-000074-2p for xen-devel@lists.xenproject.org; Wed, 21 Jun 2023 13:21:48 +0000 Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 920ccee0-1036-11ee-8611-37d641c3527e; Wed, 21 Jun 2023 15:21:46 +0200 (CEST) Received: from [192.168.1.143] (unknown [151.44.212.241]) by support.bugseng.com (Postfix) with ESMTPSA id EBF514EE0737; Wed, 21 Jun 2023 15:21:37 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 920ccee0-1036-11ee-8611-37d641c3527e Message-ID: Date: Wed, 21 Jun 2023 15:21:30 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.12) Gecko/20050929 Thunderbird/1.0.7 Fedora/1.0.7-1.1.fc4 Mnenhy/0.7.3.0 Subject: Re: [XEN PATCH v2] docs/misra: document the C dialect and translation toolchain assumptions. Content-Language: en-US To: Jan Beulich Cc: roger.pau@citrix.com, bertrand.marquis@arm.com, michal.orzel@amd.com, xenia.ragiadakou@amd.com, ayan.kumar.halder@amd.com, consulting@bugseng.com, Andrew Cooper , George Dunlap , Julien Grall , Stefano Stabellini , Wei Liu , xen-devel@lists.xenproject.org References: <0ba16220-64a6-63bf-a1b8-77dcc847d2ed@suse.com> From: Roberto Bagnara In-Reply-To: <0ba16220-64a6-63bf-a1b8-77dcc847d2ed@suse.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit On 21/06/23 12:27, Jan Beulich wrote: > On 20.06.2023 14:10, Roberto Bagnara wrote: >> + * - static function is used in an inline function with external linkage >> + - ARM64, X86_64 >> + - Non-documented GCC extension. An inline function with external linkage >> + can be inlined everywhere. If that calls a static functions, which is >> + not available everywhere, it is a constraint violation according to >> + C99 6.7.4p3: "An inline definition of a function with external linkage >> + shall not contain a definition of a modifiable object with static >> + storage duration, and shall not contain a reference to an identifier >> + with internal linkage." A standard-compliant C compiler ought >> + to diagnose all constraint violations: when it does not, as is the >> + case for GCC, the behavior is implicitly undefined. > > With _spin_lock_cb() taken care of, do we have any left? Or else can this > be dropped? Dropped both from the document and the tool configuration. Roberto From xen-devel-bounces@lists.xenproject.org Wed Jun 21 14:26:35 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 14:26:35 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552793.863057 (Exim 4.92) (envelope-from ) id 1qBymi-0006VT-Gh; Wed, 21 Jun 2023 14:26:12 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552793.863057; Wed, 21 Jun 2023 14:26:12 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBymi-0006VM-DT; Wed, 21 Jun 2023 14:26:12 +0000 Received: by outflank-mailman (input) for mailman id 552793; Wed, 21 Jun 2023 14:26:11 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBymh-0006VG-2y for xen-devel@lists.xenproject.org; Wed, 21 Jun 2023 14:26:11 +0000 Received: from mail-wr1-x432.google.com (mail-wr1-x432.google.com [2a00:1450:4864:20::432]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 8cea1a46-103f-11ee-8611-37d641c3527e; Wed, 21 Jun 2023 16:26:03 +0200 (CEST) Received: by mail-wr1-x432.google.com with SMTP id ffacd0b85a97d-31121494630so6889624f8f.3 for ; Wed, 21 Jun 2023 07:26:03 -0700 (PDT) Received: from EMEAENGAAD19049. (default-46-102-197-194.interdsl.co.uk. [46.102.197.194]) by smtp.gmail.com with ESMTPSA id h4-20020a1ccc04000000b003f8d0308616sm5140975wmb.32.2023.06.21.07.26.00 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 21 Jun 2023 07:26:01 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 8cea1a46-103f-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cloud.com; s=cloud; t=1687357562; x=1689949562; h=in-reply-to:content-disposition:mime-version:references:subject:cc :to:from:date:message-id:from:to:cc:subject:date:message-id:reply-to; bh=w6Edw0GL+U2LPG5hpy7jxAqIEhtl61bvPSZjd1II0WU=; b=QVTMEOIPTu0cVTLXlBnS0vxLJ6if+yWh4SW9rprAoec7HWp5GAWUjQ1tXBKJAS1g9M l8ucMOMYAkXoDb+OBkG7ZzIbwhprVcY7H15ozRckQPtTz2+64SaEyEOey+cdjD9NVxMA qlXfA/7khQWjcyGRcyajTn4zV437aBIa+tQWo= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687357562; x=1689949562; h=in-reply-to:content-disposition:mime-version:references:subject:cc :to:from:date:message-id:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=w6Edw0GL+U2LPG5hpy7jxAqIEhtl61bvPSZjd1II0WU=; b=RIUexAFVix6Y5Rv32dxxJ3KySEFp1xIoSoIyRs2R/eF69e8qcfeVoMyPCKlzZycyY4 1sHWev1/gHaeJ67SrruPX/HVwcHHDWh+V5Ver4olWO0lNShvhIy29GIBrOCd8QdRqWjs 4lO62aApFFq3+jsQan9+DDSosGN79TkG62e3XpUx/ErRAv81BQJ3x4HRgUbxFy8h3qNs LYhW2AezYqk/99MZxtzhlFlugHeRoE5aMdB3htz+yK4kO4vMXud31M+ukT20j8R00Fdn hN40Zw+uHuqPV0Zp7acDPnrKDpoGmCHQX4gqkXrCZNcICZ+Y+QDX+leAKQ5Vrj9ngk41 pseg== X-Gm-Message-State: AC+VfDz/Z4TFlNWOPQMcfv6JQCty99d0tUOC/c8gGXfVi2iylW60/3zB kWAPdo02U2KeMJ2jWuc/55LnLA== X-Google-Smtp-Source: ACHHUZ7SVzK41w7Io+gb7VFwTQGb8NbBdpMGSXQyVHfbHAT74LJ66HY9HSe7y5J3dlcWVWzhMSmJIQ== X-Received: by 2002:a05:6000:11d2:b0:30f:c473:dfd0 with SMTP id i18-20020a05600011d200b0030fc473dfd0mr12014271wrx.12.1687357562291; Wed, 21 Jun 2023 07:26:02 -0700 (PDT) Message-ID: <64930879.1c0a0220.28719.ce38@mx.google.com> X-Google-Original-Message-ID: Date: Wed, 21 Jun 2023 15:25:59 +0100 From: Alejandro Vallejo To: Jan Beulich Cc: Andrew Cooper , George Dunlap , Julien Grall , Stefano Stabellini , Wei Liu , Xen-devel Subject: Re: [PATCH] mm/pdx: Add comments throughout the codebase for pdx References: <20230615162741.2008-1-alejandro.vallejo@cloud.com> <984e13ef-a73e-126c-0bf8-58bee9beb7b2@suse.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <984e13ef-a73e-126c-0bf8-58bee9beb7b2@suse.com> On Mon, Jun 19, 2023 at 05:30:20PM +0200, Jan Beulich wrote: > > + * ma_{top,bottom}_mask is simply a shifted pfn_{top,pdx_bottom}_mask where the > > + * bottom one shifts in 1s rather than 0s. > > + */ > > Nit: That 2nd bottom variable is ma_va_bottom_mask. Sure > > > @@ -57,9 +99,25 @@ uint64_t __init pdx_init_mask(uint64_t base_addr) > > (uint64_t)1 << (MAX_ORDER + PAGE_SHIFT)) - 1); > > } > > > > -u64 __init pdx_region_mask(u64 base, u64 len) > > +uint64_t __init pdx_region_mask(uint64_t base, uint64_t len) > > { > > - return fill_mask(base ^ (base + len - 1)); > > + uint64_t last = base + len - 1; > > + /* > > + * The only bit that matters in base^last is the MSB. There are 2 cases. > > + * > > + * case msb(base) < msb(last): > > + * then fill_mask(base^last) == fill_mask(last). This is non > > + * compressible. > > + * case msb(base) == msb(last): > > + * This means that there _may_ be a sequence of compressible zeroes > > + * for all addresses between `base` and `last` iff `base` has enough > > + * trailing zeroes. That is, it's compressible when > > + * fill_mask(base^last) < fill_mask(last) > > + * > > + * The resulting mask is effectively the moving bits between `base` and > > + * `last` > > + */ > > + return fill_mask(base ^ last); > > } > > I don't see a need for you to actually change the code here. You can > as well introduce "last" as shorthand just for the comment. I thought as you did initially and wrote it as such. In the end it felt wrong to have an explanation in terms of a token not present in the code. Furthermore, explaining what the shorthand is in the comment takes more space than introducing `last` in the code itself. ``` uint64_t last = base + len - 1; /* * The only bit that matters in base^last is the MSB. There are 2 cases. ``` vs ``` /* * Let `last = base + len -1` out of convenience. * The only bit that matters in base^last is the MSB. There are 2 cases. ``` TL;DR: I didn't factor out `last` due to aesthetics (I'd rather not touch the code in this patch, in fact), but it seems warranted in order to reduce the impedance mismatch between this big-ish comment and the call it describes. I'll post v2 without that adjustment in case I managed to convince you. Otherwise feel free to adjust it on commit. > What I dislike in your way of putting it is the use of fill_mask(last) when > such a call never occurs in code. Starting from the first sentence, > can't you explain things just in terms of said MSB I see. I can refer to the MSBs instead. Works equally well. e.g: fill_mask(base^last) == fill_mask(last) | V msb(fill_mask(base^last)) == msb(last) > (where the two cases are "set" and "clear")? I'm not sure I understand what you mean here. > > > --- a/xen/include/xen/mm.h > > +++ b/xen/include/xen/mm.h > > @@ -31,6 +31,22 @@ > > * (i.e. all devices assigned to) a guest share a single DMA address space > > * and, by default, Xen will ensure dfn == pfn. > > * > > + * pdx: Page InDeX > > + * Indices into the frame table holding the per-page's book-keeping > > + * metadata. A compression scheme is used and there's a non-identity > > + * mapping between valid(mfn) <-> valid(pdx) See the comments in pdx.c > > + * for an in-depth explanation of that mapping. > > The mapping may very well be (and on x86 typically is) an identity > one. IOW you want to describe not only the compression case, but also > the "no compression possible" one. Point taken. I'll rephrase it slightly as "possibly non-identity" and explicitly state the "no compression is possible" case. > > PDXes also aren't just indexes to the frame table, but also to the > direct mapping. I had something to that effect earlier on, but I removed it because it doesn't seem to be the case on ARM. There's a directmap_base_pdx global that states the first pdx to be mapped on the directmap. > > > + * maddr: Machine Address > > + * The physical address that corresponds to an mfn > > + * > > + * vaddr: Xen Virtual Address > > + * A virtual address of memory accesible to Xen. It is typically either > > + * an address into the direct map or to Xen's own code/data. The direct > > + * map implements several compression tricks to save memory, so an offset > > + * into it does _not_ necessarily correspond to an maddr due to pdx > > + * compression. > > We need to be careful here: If I'm not mistaken at least Arm uses vaddr > also for guest addresses. In fact I'm not sure vaddr (and perhaps even > maddr) need explaining here I'd like to have at least maddr. It's sufficiently project-specific to be otherwise confusing to find unexplained elsewhere. i.e: In other bare-metal projects that would be a paddr instead. vaddr might be trying too hard to boil the ocean as far as definitions go. I can get rid of it. > the more that nothing in this header uses either term. True. But it should be somewhere and this is the main memory-management header, where the frame number definitions are. In general, things that change together ought to stay together. > > + * ## PDX compression > > + * > > + * This is a technique to avoid wasting memory on machines known to have > > + * split their machine address space in two big discontinuous and highly > > + * disjoint chunks. > > Why two? There can be any number, and in fact on the system I originally > had data from for reference (when first writing this code) iirc there > were 8 nodes, each with a chunk of memory far away from the other chunks. > The compression scheme used merely requires that some "inner" bits are > unused (always zero) in all of those ranges. Well, our implementation only supports two and I didn't see any obvious hints about intending to increasing that number. I see where you're coming from, though. I can make it more general so it's not outdated if the pfn_to_pdx()/pdx_to_pfn() pair ever increases in scope to do several holes. Out of curiosity (and for posterity's sake), what was/is that system? > > > + * In its uncompressed form the frame table must have book-keeping metadata > > + * structures for every page between [0, max_mfn) (whether they exist or > > s/they exist/there is RAM/ ? They exist is ambiguous, true. Rewrote it as "they are backed by RAM" > > > + * not), and a similar condition exists for the direct map. We know some > > + * architectures, however, that have some sparsity in their address space, > > + * leading to a lot of wastage in the form of unused frame table entries. > > Hmm, "architectures" suggests e.g. Arm might have such, but x86 won't. > Perhaps "systems", "designs", or "system designs"? I like `systems` better. Sure. > > > @@ -13,22 +69,77 @@ extern unsigned long pfn_top_mask, ma_top_mask; > > (sizeof(*frame_table) & -sizeof(*frame_table))) > > extern unsigned long pdx_group_valid[]; > > > > -extern uint64_t pdx_init_mask(u64 base_addr); > > -extern u64 pdx_region_mask(u64 base, u64 len); > > +/** > > + * Calculates a mask covering "moving" bits of all addresses of a region > > + * > > + * e.g: > > + * base=0x1B00000000 > > + * len+base=0x1B0008200; > > + * > > + * ought to return 0x00000FFFFF; > > + * > > + * @param base Base address of the region > > + * @param len Size in octets of the region > > + * @return Mask of moving bits at the bottom of all the region addresses > > + */ > > This looks to be a copy-and-paste of pdx_region_mask()'s comment, when > the function has neither a "base" parameter, nor a and one at all. Oops. A victim of incompatible rebases. I extracted these comments from an ongoing patch series I'm working on. I'll (try to) write an actual comment for it. > > > +uint64_t pdx_init_mask(u64 base_addr); > > No u64 -> uint64_t here? > > > -extern void set_pdx_range(unsigned long smfn, unsigned long emfn); > > +/** > > + * Calculates a mask covering "moving" bits of all addresses of a region > > + * > > + * e.g: > > + * base=0x1B00000000 > > + * len+base=0x1B0008200; > > + * > > + * ought to return 0x00000FFFFF; > > I think it would help if you actually said how the return value actually > derives. The term "moving" may be understood differently be different > people, and hence such an explanation actually would also clarify what > "moving" means. Hmmm, I'd rather not explicitly state the XOR here though. I'm adding a couple more lines explaining things in terms of the i-th bit of the mask and all the region addresses. Ideally this comment ought to explain the intuition, while the comment in pdx.c explains the implementation. > > I also thing there's a 0 missing in the len+base value, without which > the result would be quite a bit different. Indeed. > > +/** > > + * Mark range between smfn and emfn is allocatable in the frame table > > + * > > + * @param smfn Start mfn > > + * @param emfn End mfn > > + */ > > +void set_pdx_range(unsigned long smfn, unsigned long emfn); > > This could do with mathematically expressing the range in the comment, > such that (in|ex)clusiveness of, in particular, emfn is clarified. Good point. Sure. > > +/** > > + * Invoked to determine if an mfn maps to a legal pdx > > I wouldn't use "pdx" here, but refer to frame_table[] instead. I can rewrite it as something along those lines, sure. > > > + * In order for it to be legal it must pass bounds, grouping and > > + * compression sanity checks. > > + * > > + * @param smfn Start mfn > > + * @param emfn End mfn > > + * @return True iff all checks pass > > + */ > > bool __mfn_valid(unsigned long mfn); > > Comment again mentions inapplicable parameters. Ack. > > > @@ -38,7 +149,16 @@ static inline unsigned long pdx_to_pfn(unsigned long pdx) > > #define mfn_to_pdx(mfn) pfn_to_pdx(mfn_x(mfn)) > > #define pdx_to_mfn(pdx) _mfn(pdx_to_pfn(pdx)) > > > > -extern void pfn_pdx_hole_setup(unsigned long); > > +/** > > + * Initializes global variables with information about the compressible > > + * range of the current memory regions. > > + * > > + * @param mask This mask is the biggest pdx_mask of every region in the > > + * system ORed with all base addresses of every region in the > > + * system. The result is a mask where every sequence of zeroes > > + * surrounded by ones is compressible. > > + */ > > +void pfn_pdx_hole_setup(unsigned long mask); > > With the function returning void, I find "The result" problematic. How about > "This results in ..."? Sounds better. Sure. > > Btw, "surrounded by ones" isn't really necessary. We could compress shorter > sequences of zeros, so this may want re-wording a little to be as precise > as possible. > > Jan Fair. I'll tweak the definition. Alejandro From xen-devel-bounces@lists.xenproject.org Wed Jun 21 14:47:14 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 14:47:14 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552797.863067 (Exim 4.92) (envelope-from ) id 1qBz6m-0000XC-56; Wed, 21 Jun 2023 14:46:56 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552797.863067; Wed, 21 Jun 2023 14:46:56 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBz6m-0000X5-21; Wed, 21 Jun 2023 14:46:56 +0000 Received: by outflank-mailman (input) for mailman id 552797; Wed, 21 Jun 2023 14:46:54 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBz6k-0000Wv-RY; Wed, 21 Jun 2023 14:46:54 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBz6k-0001Uw-CL; Wed, 21 Jun 2023 14:46:54 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBz6j-0005WR-Vs; Wed, 21 Jun 2023 14:46:54 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qBz6j-0004KM-VR; Wed, 21 Jun 2023 14:46:53 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=y+hSyiKgrHuNwQd29Xq3/wFOxUjTZKJNpLGp/3NWTiQ=; b=NTGEJUNPXepfF78+J+YP2npZR7 N4H5WtfmXxcO3wMIIeIYi2Q7Vr/n6hX9K8PXEUHDWBn1W+I8FKCdxvl+us+a1p+JM4y1SiV4mJpBE goz+scCl/l161WbeMmYHqTJGapOjriz/WL+/bn+eKuOWFwaKo1P/07y7IrzvIQkK7PnM=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [ovmf test] 181536: all pass - PUSHED X-Osstest-Versions-This: ovmf=fcd71642df9a3a5932a2db116acc6fe23458d8f5 X-Osstest-Versions-That: ovmf=4a0642ad27bfb566835ae86aedae0e18f9735cc2 From: osstest service owner Date: Wed, 21 Jun 2023 14:46:53 +0000 flight 181536 ovmf real [real] http://logs.test-lab.xenproject.org/osstest/logs/181536/ Perfect :-) All tests in this flight passed as required version targeted for testing: ovmf fcd71642df9a3a5932a2db116acc6fe23458d8f5 baseline version: ovmf 4a0642ad27bfb566835ae86aedae0e18f9735cc2 Last test of basis 181531 2023-06-21 03:42:36 Z 0 days Testing same since 181536 2023-06-21 11:12:23 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Dun Tan duntan Ray Ni jobs: build-amd64-xsm pass build-i386-xsm pass build-amd64 pass build-i386 pass build-amd64-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-i386-pvops pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Pushing revision : To xenbits.xen.org:/home/xen/git/osstest/ovmf.git 4a0642ad27..fcd71642df fcd71642df9a3a5932a2db116acc6fe23458d8f5 -> xen-tested-master From xen-devel-bounces@lists.xenproject.org Wed Jun 21 14:58:41 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 14:58:41 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552804.863076 (Exim 4.92) (envelope-from ) id 1qBzHy-00022t-6V; Wed, 21 Jun 2023 14:58:30 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552804.863076; Wed, 21 Jun 2023 14:58:30 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBzHy-00022m-42; Wed, 21 Jun 2023 14:58:30 +0000 Received: by outflank-mailman (input) for mailman id 552804; Wed, 21 Jun 2023 14:58:28 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBzHw-00022g-Hk for xen-devel@lists.xenproject.org; Wed, 21 Jun 2023 14:58:28 +0000 Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 132fda72-1044-11ee-8611-37d641c3527e; Wed, 21 Jun 2023 16:58:26 +0200 (CEST) Received: from [192.168.1.143] (unknown [151.46.220.87]) by support.bugseng.com (Postfix) with ESMTPSA id DC3CC4EE0737; Wed, 21 Jun 2023 16:58:23 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 132fda72-1044-11ee-8611-37d641c3527e Message-ID: Date: Wed, 21 Jun 2023 16:58:22 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.12) Gecko/20050929 Thunderbird/1.0.7 Fedora/1.0.7-1.1.fc4 Mnenhy/0.7.3.0 Subject: Re: [XEN PATCH v2] docs/misra: document the C dialect and translation toolchain assumptions. Content-Language: en-US To: Jan Beulich Cc: roger.pau@citrix.com, bertrand.marquis@arm.com, michal.orzel@amd.com, xenia.ragiadakou@amd.com, ayan.kumar.halder@amd.com, consulting@bugseng.com, Andrew Cooper , George Dunlap , Julien Grall , Stefano Stabellini , Wei Liu , xen-devel@lists.xenproject.org References: <9a03d5d3-71d5-e3ed-235c-554931fa485a@suse.com> From: Roberto Bagnara In-Reply-To: <9a03d5d3-71d5-e3ed-235c-554931fa485a@suse.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit On 20/06/23 17:05, Jan Beulich wrote: > On 20.06.2023 14:10, Roberto Bagnara wrote: >> + * - Token pasting of ',' and __VA_ARGS__ >> + - ARM64, X86_64 >> + - See Section "6.21 Macros with a Variable Number of Arguments" of GCC_MANUAL. >> + >> + * - No arguments for '...' parameter of variadic macro >> + - ARM64, X86_64 >> + - See Section "6.21 Macros with a Variable Number of Arguments" of GCC_MANUAL. > > Seeing these I think you want to also mention our extensive use of > the pre-C99 way of variadic macros, which also includes pasting of > ',' with something. Good catch. Added * - Named variadic macro arguments - ARM64, X86_64 - See Section "6.21 Macros with a Variable Number of Arguments" of GCC_MANUAL. Thanks, Roberto From xen-devel-bounces@lists.xenproject.org Wed Jun 21 15:15:16 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 15:15:16 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552811.863086 (Exim 4.92) (envelope-from ) id 1qBzXw-0004Vh-Iy; Wed, 21 Jun 2023 15:15:00 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552811.863086; Wed, 21 Jun 2023 15:15:00 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBzXw-0004Va-GL; Wed, 21 Jun 2023 15:15:00 +0000 Received: by outflank-mailman (input) for mailman id 552811; Wed, 21 Jun 2023 15:14:59 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBzXu-0004VU-Mq for xen-devel@lists.xenproject.org; Wed, 21 Jun 2023 15:14:59 +0000 Received: from esa3.hc3370-68.iphmx.com (esa3.hc3370-68.iphmx.com [216.71.145.155]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 6025031d-1046-11ee-8611-37d641c3527e; Wed, 21 Jun 2023 17:14:55 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 6025031d-1046-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1687360495; h=from:to:cc:subject:date:message-id:mime-version: content-transfer-encoding; bh=ROv8WH2KRHqBNrcnRL0RAQ0km5kswdguMzERRm4vfNw=; b=XaSG/Mm3YwZdHvwUIifTirIHZufhfbKafto6qxvVEX0STxJy8/tvXiuW mA2Rg8dKcxc3NqR8hI1A7aNSyBZDfnavax3zuBwOCBn+Mx3Mjsd4okcLr BDEqkeENGkLCzrtKNqLLiw1v0rNFBDbmU49jbwvzs6epDWFpPm+u4GHcv Y=; Authentication-Results: esa3.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none X-SBRS: 4.0 X-MesageID: 113660268 X-Ironport-Server: esa3.hc3370-68.iphmx.com X-Remote-IP: 162.221.156.123 X-Policy: $RELAYED IronPort-Data: A9a23:aDB4vqi1/1j5JWqKC+7BuswvX161JBcKZh0ujC45NGQN5FlHY01je htvCj2POfuIYDP9KY8iPtuz9hxQ7JfWytVqSARqpSw3F38b9cadCdqndUqhZCn6wu8v7q5Ex 55HNoSfdpBcolv0/ErF3m3J9CEkvU2wbuOgTrWCYmYpHlUMpB4J0XpLg/Q+jpNjne+3CgaMv cKai8DEMRqu1iUc3lg8sspvkzsx+qyq0N8klgZmP6sT4gWHzyJ94K83fsldEVOpGuG4IcbiL wrz5OnR1n/U+R4rFuSknt7TGqHdauePVeQmoiM+t5mK2nCulARrukoIHKN0hXNsoyeIh7hMJ OBl7vRcf+uL0prkw4zxWzEAe8130DYvFLXveRBTuuTLp6HKnueFL1yDwyjaMKVBktubD12i+ tRBEx0WPkGgmdvug6OZdrZr14clF8rSadZ3VnFIlVk1DN4jSJHHBa7L+cVZzHE7gcUm8fT2P pRDL2A1NVKZPkMJYw1MYH49tL7Aan3XSzBC7niUobE6y2PS0BZwwP7mN9+9ltmiHJwOwBjA/ DyWl4j/Ki9GNda162aiy2ixu8PpogXWQ4wjRKLto5aGh3XMnzdOWXX6T2CTpeSljWa9VshZJ khS/TAhxYAu+0i7Zt38WQCkunmCvw5aV9c4O+g77g6K4rDZ7waQGi4PSTspQNY+nMYyRDEsh hmFkrvBCTVxvfuVQHSG+7G8qTK0JDhTLGkeaCtCRgwAi/Hz8N8bjR/VSNtnVqmvgbXdGSn56 yKbsC8kwb4UiKYj1aqh+kvcqymxvZWPRQkwji3MRX6s5A59YI+jZqSr5ELd4PIGK5yWJnGGu HUHgMGY4Po5EYCWlCeNTeMOG5mk//+AdjbbhDZHG5gn6iTo+HO5e41UyC9xKV0vMcsefzLtJ kjJtmt59JJVeXenc6JzS4awENgxi7jtE8z/UfLZZcYIZYJ+HDJr5wk3OxTWhTq01hFxz+dmY 8zznduQ4WgyUJ9K12rnZPkkifw65BxhwjKQQ6v49kHyuVaBX0J5WYvpIXPXMLBmtvPb+VWPm zpMH5DUkksCCYUSdgGSqNdOdg5ScBDXELis86Rqmvi/zh2K8Y3LI9vY2vsfdoNshMy5fc+Yr yjmCie0JLcS7EAryDlmiVg5MtsDpb4l8RoG0dUEZD5EIUQLb4e197s4fJAqZ7Qh/+EL5acqH 6ZfK5vYX6QVGm6vF9EhgX7V9tYKSfhWrVjWY3rNjMYXIvaMuDAlCve7J1CypUHi/wK8tNcko q3I6+8oacNreuiWN+6PMKjH5wro7RAgdBdaAxOgzi97JB+9r+CH6kXZ0pcKHi37AUWfmmTCi 1rNWn/1Z4Dl+ucIzTUAvojcx6/BLge0NhMy87XzhVpuCRTnww== IronPort-HdrOrdr: A9a23:ibGbUa26i8UKI4C2b4tlOgqjBLYkLtp133Aq2lEZdPUCSL39qy nOppQmPHDP4wr5NEtLpTniAsi9qBHnmqKdurNhWItKNTOO0FdASrsO0WKI+VPd8kPFmtK0es 1bAs9D4HGbNykYsS5aijPIceod/A== X-Talos-CUID: 9a23:22AFNG6/ZGIL1jsO6tssrXU5AZB0UWPklDTBAXPnDjcqToaWcArF X-Talos-MUID: 9a23:B5E0hQrfUJbC4MiGGc0ezw8+Nc1CwfiJMVoQrLkghO+pLiJBayjI2Q== X-IronPort-AV: E=Sophos;i="6.00,260,1681185600"; d="scan'208";a="113660268" From: Per Bilse To: Andy Lutomirski , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , "maintainer:X86 ARCHITECTURE (32-BIT AND 64-BIT)" , "H. Peter Anvin" , Juergen Gross , Stefano Stabellini , "Oleksandr Tyshchenko" , "open list:X86 ENTRY CODE" , "moderated list:XEN HYPERVISOR INTERFACE" CC: Per Bilse Subject: [PATCH] Updates to Xen hypercall preemption Date: Wed, 21 Jun 2023 15:14:42 +0000 Message-ID: <20230621151442.2152425-1-per.bilse@citrix.com> X-Mailer: git-send-email 2.31.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain Some Xen hypercalls issued by dom0 guests may run for many 10s of seconds, potentially causing watchdog timeouts and other problems. It's rare for this to happen, but it does in extreme circumstances, for instance when shutting down VMs with very large memory allocations (> 0.5 - 1TB). These hypercalls are preemptible, but the fixes in the kernel to ensure preemption have fallen into a state of disrepair, and are currently ineffective. This patch brings things up to date by way of: 1) Update general feature selection from XEN_PV to XEN_DOM0. The issue is unique to dom0 Xen guests, but isn't unique to PV dom0s, and will occur in future PVH dom0s. XEN_DOM0 depends on either PV or PVH, as well as the appropriate details for dom0. 2) Update specific feature selection from !PREEMPTION to !PREEMPT. The following table shows the relationship between different preemption features and their indicators/selectors (Y = "=Y", N = "is not set", . = absent): | np-s | np-d | vp-s | vp-d | fp-s | fp-d CONFIG_PREEMPT_DYNAMIC N Y N Y N Y CONFIG_PREEMPTION . Y . Y Y Y CONFIG_PREEMPT N N N N Y Y CONFIG_PREEMPT_VOLUNTARY N N Y Y N N CONFIG_PREEMPT_NONE Y Y N N N N Unless PREEMPT is set, we need to enable the fixes. 3) Update flag access from __this_cpu_XXX() to raw_cpu_XXX(). The long-running hypercalls are flagged by way of a per-cpu variable which is set before and cleared after the relevant calls. This elicits a warning "BUG: using __this_cpu_write() in preemptible [00000000] code", but xen_pv_evtchn_do_upcall() deals specifically with this. For consistency, flag testing is also updated, and the code is simplified and tidied accordingly. 4) Update irqentry_exit_cond_resched() to raw_irqentry_exit_cond_resched(). The code will call irqentry_exit_cond_resched() if the flag (as noted above) is set, but the dynamic preemption feature will livepatch that function to a no-op unless full preemption is selected. The code is therefore updated to call raw_irqentry_exit_cond_resched(). Signed-off-by: Per Bilse --- arch/x86/entry/common.c | 34 +++++++++++++--------------------- drivers/xen/privcmd.c | 12 ++++++------ include/xen/xen-ops.h | 14 +++++++------- 3 files changed, 26 insertions(+), 34 deletions(-) diff --git a/arch/x86/entry/common.c b/arch/x86/entry/common.c index 6c2826417b33..19e8609a7a5a 100644 --- a/arch/x86/entry/common.c +++ b/arch/x86/entry/common.c @@ -20,7 +20,7 @@ #include #include -#ifdef CONFIG_XEN_PV +#ifdef CONFIG_XEN_DOM0 #include #include #endif @@ -252,17 +252,17 @@ SYSCALL_DEFINE0(ni_syscall) return -ENOSYS; } -#ifdef CONFIG_XEN_PV -#ifndef CONFIG_PREEMPTION +#ifdef CONFIG_XEN_DOM0 +#ifndef CONFIG_PREEMPT /* * Some hypercalls issued by the toolstack can take many 10s of * seconds. Allow tasks running hypercalls via the privcmd driver to * be voluntarily preempted even if full kernel preemption is * disabled. * - * Such preemptible hypercalls are bracketed by - * xen_preemptible_hcall_begin() and xen_preemptible_hcall_end() - * calls. + * Such preemptible hypercalls are flagged by + * xen_preemptible_hcall_set(true/false), and status is + * returned by xen_preemptible_hcall_get(). */ DEFINE_PER_CPU(bool, xen_in_preemptible_hcall); EXPORT_SYMBOL_GPL(xen_in_preemptible_hcall); @@ -271,21 +271,15 @@ EXPORT_SYMBOL_GPL(xen_in_preemptible_hcall); * In case of scheduling the flag must be cleared and restored after * returning from schedule as the task might move to a different CPU. */ -static __always_inline bool get_and_clear_inhcall(void) +static __always_inline bool get_and_unset_hcall(void) { - bool inhcall = __this_cpu_read(xen_in_preemptible_hcall); + bool inhcall = xen_preemptible_hcall_get(); - __this_cpu_write(xen_in_preemptible_hcall, false); + xen_preemptible_hcall_set(false); return inhcall; } - -static __always_inline void restore_inhcall(bool inhcall) -{ - __this_cpu_write(xen_in_preemptible_hcall, inhcall); -} #else -static __always_inline bool get_and_clear_inhcall(void) { return false; } -static __always_inline void restore_inhcall(bool inhcall) { } +static __always_inline bool get_and_unset_hcall(void) { return false; } #endif static void __xen_pv_evtchn_do_upcall(struct pt_regs *regs) @@ -302,16 +296,14 @@ static void __xen_pv_evtchn_do_upcall(struct pt_regs *regs) __visible noinstr void xen_pv_evtchn_do_upcall(struct pt_regs *regs) { irqentry_state_t state = irqentry_enter(regs); - bool inhcall; instrumentation_begin(); run_sysvec_on_irqstack_cond(__xen_pv_evtchn_do_upcall, regs); - inhcall = get_and_clear_inhcall(); - if (inhcall && !WARN_ON_ONCE(state.exit_rcu)) { - irqentry_exit_cond_resched(); + if (get_and_unset_hcall() && !WARN_ON_ONCE(state.exit_rcu)) { + raw_irqentry_exit_cond_resched(); instrumentation_end(); - restore_inhcall(inhcall); + xen_preemptible_hcall_set(true); } else { instrumentation_end(); irqentry_exit(regs, state); diff --git a/drivers/xen/privcmd.c b/drivers/xen/privcmd.c index e2f580e30a86..78c91227d2a5 100644 --- a/drivers/xen/privcmd.c +++ b/drivers/xen/privcmd.c @@ -77,12 +77,12 @@ static long privcmd_ioctl_hypercall(struct file *file, void __user *udata) if (copy_from_user(&hypercall, udata, sizeof(hypercall))) return -EFAULT; - xen_preemptible_hcall_begin(); + xen_preemptible_hcall_set(true); ret = privcmd_call(hypercall.op, hypercall.arg[0], hypercall.arg[1], hypercall.arg[2], hypercall.arg[3], hypercall.arg[4]); - xen_preemptible_hcall_end(); + xen_preemptible_hcall_set(false); return ret; } @@ -688,9 +688,9 @@ static long privcmd_ioctl_dm_op(struct file *file, void __user *udata) xbufs[i].size = kbufs[i].size; } - xen_preemptible_hcall_begin(); + xen_preemptible_hcall_set(true); rc = HYPERVISOR_dm_op(kdata.dom, kdata.num, xbufs); - xen_preemptible_hcall_end(); + xen_preemptible_hcall_set(false); out: unlock_pages(pages, pinned); @@ -790,9 +790,9 @@ static long privcmd_ioctl_mmap_resource(struct file *file, xdata.nr_frames = kdata.num; set_xen_guest_handle(xdata.frame_list, pfns); - xen_preemptible_hcall_begin(); + xen_preemptible_hcall_set(true); rc = HYPERVISOR_memory_op(XENMEM_acquire_resource, &xdata); - xen_preemptible_hcall_end(); + xen_preemptible_hcall_set(false); if (rc) goto out; diff --git a/include/xen/xen-ops.h b/include/xen/xen-ops.h index 47f11bec5e90..c5b06405f355 100644 --- a/include/xen/xen-ops.h +++ b/include/xen/xen-ops.h @@ -194,24 +194,24 @@ bool xen_running_on_version_or_later(unsigned int major, unsigned int minor); void xen_efi_runtime_setup(void); -#if defined(CONFIG_XEN_PV) && !defined(CONFIG_PREEMPTION) +#if defined(CONFIG_XEN_DOM0) && !defined(CONFIG_PREEMPT) DECLARE_PER_CPU(bool, xen_in_preemptible_hcall); -static inline void xen_preemptible_hcall_begin(void) +static inline void xen_preemptible_hcall_set(bool status) { - __this_cpu_write(xen_in_preemptible_hcall, true); + raw_cpu_write(xen_in_preemptible_hcall, status); } -static inline void xen_preemptible_hcall_end(void) +static inline bool xen_preemptible_hcall_get(void) { - __this_cpu_write(xen_in_preemptible_hcall, false); + return raw_cpu_read(xen_in_preemptible_hcall); } #else -static inline void xen_preemptible_hcall_begin(void) { } -static inline void xen_preemptible_hcall_end(void) { } +static inline void xen_preemptible_hcall_set(bool status) { } +static inline bool xen_preemptible_hcall_get(void) { return false; } #endif /* CONFIG_XEN_PV && !CONFIG_PREEMPTION */ -- 2.31.1 From xen-devel-bounces@lists.xenproject.org Wed Jun 21 15:28:00 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 15:28:00 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552818.863097 (Exim 4.92) (envelope-from ) id 1qBzkG-000680-Qt; Wed, 21 Jun 2023 15:27:44 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552818.863097; Wed, 21 Jun 2023 15:27:44 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBzkG-00067t-Na; Wed, 21 Jun 2023 15:27:44 +0000 Received: by outflank-mailman (input) for mailman id 552818; Wed, 21 Jun 2023 15:27:43 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBzkF-00067n-JP for xen-devel@lists.xenproject.org; Wed, 21 Jun 2023 15:27:43 +0000 Received: from EUR05-AM6-obe.outbound.protection.outlook.com (mail-am6eur05on20607.outbound.protection.outlook.com [2a01:111:f400:7e1b::607]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 2823a1e1-1048-11ee-8611-37d641c3527e; Wed, 21 Jun 2023 17:27:39 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by DBBPR04MB7900.eurprd04.prod.outlook.com (2603:10a6:10:1e8::24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.37; Wed, 21 Jun 2023 15:27:37 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6500.036; Wed, 21 Jun 2023 15:27:37 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 2823a1e1-1048-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=PQN9Vr0zFvd7aJYtrZPLLK3wwa9cUgqpnxcKXSYKhuJ7Mlb7xN2jEq98YhQXDRv3xYqefs0UdN7rxge/TBhvHUFYrqPhbXsZimh35gKTzR4LxbAe7LAWWXCFfEDDLXkcrQRJNInlpgPYHUt//m54k/zwPYSXIlGgutYmposZsjcywE0J+4GQy5jJwq4aD6gl2gBpD6ZJgzsZA5/3XFltow0gL51JG85lh1n2wzAjLra9m/dCH7rdQlMkiCmJ1aroJJhK1p68RGJWdDewLmj92iQz2ggOHjN0iJ4eH/G5Kbo8zSNk6ePkVjNRxuaVqEwA0xR3nECUV16LySnf/5qXXw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=cY5YGSielma6L4kluSLfNYfLGtEZqe6VTMMwv8D4USY=; b=MBNt6EfU0QPoehkgYQ5lMr6J9V+fm9t9rhxfESplXtDgtvBBVPhIMj3CGyB2LTeGkNei6xE/21ajtR4SApvsUncc9MsN4e1r5qM4C5Z9yARsWDQ0VOySn9OOO9IHxVCXqEBpk2gdYK4/l8Axpko+wsoQg5+T9wTYVX51YVRyJ0FFKPTRucR/hxxHLy47Ly3dbD1bcISYQBvqqvCFM9UECySJsJNmNl2hMQpWGmvJJn9XL9o3jokmnkvsbvGLKyB7pdC2X6qykUJXD4mh1j4a61MOmDhXG3O1UCcUawb3W4aJydnbs7tBr/9IvPqKbK3TSA4XQE9Fjz+nkaOelnlkyA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=cY5YGSielma6L4kluSLfNYfLGtEZqe6VTMMwv8D4USY=; b=nLw9aB62kV5QRqpqsXx+qxB72VQv5mpUCnhi0HWM/D3STxALz7LxZn2RfqTR+W0l7VsGhGx+rQ8iIfMzaJF4WUOTJP29Tefk2FvDH0QyQO1a+gN5gFTTuiY1kg8EUlKSoq5UQVl/6KAyR4kgWORwipoiCFCRaRNeacdYqHi+8fwDh78JSd3ntatUfHEX2qwaO7Dgv4zDniEIZOVJQGzlva8m2NsoeH3efx+YlRnCSQK6lHinFHaYmo1SXB6lHeVtBysy9mrqmFrqvZiXJ2y+vfSXDhjD7JPcxa6qGkR9jnDeyx13vN8ljyNc/yLyBsl4588Ug+yAUuz+Y1Lr+wlpxg== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <2de3a187-5fb4-d06d-a411-a1ee69b73dfc@suse.com> Date: Wed, 21 Jun 2023 17:27:34 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v4 12/15] xen: Add SET_CPUFREQ_HWP xen_sysctl_pm_op Content-Language: en-US To: Jason Andryuk References: <20230614180253.89958-1-jandryuk@gmail.com> <20230614180253.89958-13-jandryuk@gmail.com> <0b53687e-e781-7c01-34e9-e41cd14967c7@suse.com> Cc: "xen-devel@lists.xenproject.org" From: Jan Beulich In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: FR2P281CA0108.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:9c::19) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|DBBPR04MB7900:EE_ X-MS-Office365-Filtering-Correlation-Id: 35330318-3058-4b10-6e90-08db726c0af4 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: +WE8yZW6EbDa5z3sK1LWCOGjS2l0be2wMrdu2bW/BAubtPW8lAkRpQpXTmWcNAgn9FNQNZ3olJa8gnOfknvQ5260auGbfCFRapBMEjq9tDgXPVVErrBSh9BQsyXAwWIGUdkC1PzZ8t2nqCBZzGZIDR0AUHotGuy6lVM4SBRaHFOTiloVTTuM9EvoKSySAirfNr03U/F20uPhoY2mTJj6TIgbqDtqXl8brEURday7h+T3bhaAJ/BzyfsoEOSFK4bPYSfHOGIcPc+L8PAOElPramxbLEY2q5mbnCUd/IQtxjc0upigQjbz95KDnl2FZaCBU2j6/1WToiOpTGyBN/M2B70YFUAicnqAv18SaPBCg/mAHCaobUBlr+zIQPzahaafv1OXsAjYE3pyn0wsWLc+lixGP390nQ6mTmHW5NDPAAAovr4KpfXoPisff9fsd69PtTMRpQv9mxG1s+twre8/iNCa23mqKUDZpGs8RsilobWCz54ekN9oNmSv4UqzLJtBAmr7JWi+/BgPFBF5rljbHOcvp465arpBBbmm8i/yxPiVMzyin/BEDhGqILsF7CopsBhJY4OwY+/0sOAZbY+PjZ1gHmWg1cts4vfymx1B3Tfz50irpXmoQC2aApDgQ20zUffCNSBVqb4lbLbDZ0h1gw== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(376002)(396003)(366004)(136003)(346002)(39860400002)(451199021)(6666004)(6486002)(478600001)(6512007)(186003)(83380400001)(26005)(2616005)(53546011)(38100700002)(36756003)(86362001)(31696002)(6506007)(2906002)(8936002)(8676002)(5660300002)(31686004)(316002)(4326008)(66476007)(66556008)(6916009)(41300700001)(66946007)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?TUZtdVZNL3plbnRiRUQ1YjlpTWJGdHlKOHJyVytTQVNqRVk2dTJoWTFMVjJy?= =?utf-8?B?bkJIS1hJUk5yZW1QZkJ2d1cwR0pmeDVmS2F6ekUvc3JPQllRMmpPTDk4SU9p?= =?utf-8?B?YlFoNWc5Sm45VkEwam1PczNrdlBtalgxV0ZqbW5sclFXc2hXcFV0ZndpSEMv?= =?utf-8?B?dFE3YUh5Q0JYOE9uWnNFRWptUC83TjNkaEg5azU2b1c5NHp1S3ZqS2daMUlE?= =?utf-8?B?Ymc4RldjTkd1REE2T0FraFc1aWMzc28zR2s2UFFkZ2RnNzgrVUFHcGJmNi9C?= =?utf-8?B?SWZSdjRJRTd4alViM2llVTRkUG5HOTFPOWxFNHU0d2huZkpaa0FvbXNET1B0?= =?utf-8?B?MzNPNXZXTjNRUnROWSt3RG9FbHgxQWNmNmVOMlQ0Mm1LcUsyeGhxSklGM0pl?= =?utf-8?B?bVQxYjZ6c0F2dlNaeUorR3k3ZloxMEZMTmZZV25ROUx5RGR1VkxPQ09FZTVD?= =?utf-8?B?RFlhbk5iUU50VVlwejh6MlRZSHR3NjRIQWV2TDg3TE5YZFFSanBwampoNGM4?= =?utf-8?B?Z1o3TUduZ0hlYUpvWi9nU1pNM3NhcGZlQ1RtQVdraXQzcFY1QytKYkx5TXcy?= =?utf-8?B?dmNFVjRWL2dZS0c3RTNLMWFGQm1ZRytkUklhVklScWxtbjdpZmNmeDdyR0lU?= =?utf-8?B?ZUpUajh2dEZia0RsTVRWVWlBQ3A0Q1dJTzk4UmI1YTZobUtmbElMcGkwb1Ay?= =?utf-8?B?Wjc4b0lUcGtZOFpYTFBoMk15SzZ2WlZ3ZTRXRC9qa1oyVlZ1YjhuM1cvNHM5?= =?utf-8?B?cktoR3o1eWtkOVl0UFgzeXFjUjRpVk1ZYTNmSVl5MVdzZTE1QldDTUZtOVRu?= =?utf-8?B?b2IrdW01MXF6djFsM3ZLeDI3ckFaNFl6WjhUWkJVWlpWanRYdG4xZUJLMlFO?= =?utf-8?B?c0JaVVVFUVIvbldhK21ORllwenkwTTFPL0lYdjdIQ3hsMHlWUm9ENTJwSUV6?= =?utf-8?B?Y0dlZWVwdWtNcDEycXpoN3hKUFNrQjFSZVM5K24vV0FjZWppTEVhenRncFd4?= =?utf-8?B?RDQ2YzdBd1pFd2thbjhRc1BNMUNFV3VtcThidUFUaDV5aDhQZzNYZjJGWTMv?= =?utf-8?B?UVVKYTlkNjloRFUvc2tjdWdwQnh2WFp3RktrMFNJZExDSjhMVlFCV2FjSC84?= =?utf-8?B?V0pvMWFoWWliUnhRMDJScVhHMjdsVzJmTElGc28zZVlSRUtMZGFqZmRURzBt?= =?utf-8?B?NE9BTTYyY1FjMFFzdVFhdU5zWGd3aUo5RFcxMElRSllrYTNiS2dicUhxeWtL?= =?utf-8?B?TXJjRkZyV1pMK0l0cHNMZjBIUDVyS0dOZGE4cklwK2NTQTlkRHZmcDlnTEg2?= =?utf-8?B?ODg2VmtLNkFxZlhNYVN3Y0hGM2ZveUhvMTJiSFJjZE9uRnhxNzA2OXBDMnRY?= =?utf-8?B?T3h0aGU5dnZNQy80SytuT3RyeExIeldDeDBBaWgyQ0YzWW4wWThQSEFPWlRB?= =?utf-8?B?eVhlNC9jVENDZHJ5Uko5QW5hWHFFc3E5Ly8rZVUvcmZUNzVCdkRpRGxZU0Ni?= =?utf-8?B?OFFWRVQ1ZHNmSW1xN3RFdm83eUZVQjlFOXhvL0tlRHdSbWxNVVNyZEl2WUM3?= =?utf-8?B?a0h1bjlJUy9obmNJZlI4YzMwdVZ6eDNieEVmSXRDaTNzQXRocDdwWlFRdlpG?= =?utf-8?B?VlFWMHF2T1pzcktvYkF3SmthU3lzNE9FS0s4YlF0dWRvb3VZZEhZRmZXZFJH?= =?utf-8?B?N3dYKzhCYUpIODJ2L21la1ZwV21xNHNkRG1IUFJDZkdoQXNTMHVOazdPNmZs?= =?utf-8?B?TVdpUU11NUN6RHJCUXp3TzAzcGEwaUxnejk5UkJDbHllY0JBZ2x0VUNjVU8x?= =?utf-8?B?OVFpK2RUWm9xN29mb0J5SE00SmtMbXFLbHVVQzFwblNmRlY2R0hjWlBlZEtx?= =?utf-8?B?WW1haTliejNZQXozNEdEckpnajJGMkR0aVByU3Qzb0RXYVdUREtEZnNNU0NS?= =?utf-8?B?WmttK3p0MHREVm9sazh1djJncDVxZzd3QUZ5WFZYWWp4encwK0JpSm9QRFRY?= =?utf-8?B?UmJ5UysyWEdjRnBEeElIV0FuK2NmY1BTelN4S1NyRjZrQjlLNFVVbXpTU0RE?= =?utf-8?B?TE5oKy8rSWFacmwydlNxOHpkOHBpSUcyMWVCRENwMlh0NFp2WHVOdVRiK3BS?= =?utf-8?Q?1y5lB/kllZzVNTcdPNkFTWGY/?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 35330318-3058-4b10-6e90-08db726c0af4 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Jun 2023 15:27:37.0088 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: Gqyrg98WWFaFoQaMFRcLUHDoo8O8JHM44WhjGEEUcgoBr6UFZVLOhdvROSG7rh0+IlNob/BBrimiOu/ylUCXMA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBBPR04MB7900 (re-adding xen-devel@) On 21.06.2023 16:16, Jason Andryuk wrote: > On Mon, Jun 19, 2023 at 10:47 AM Jan Beulich wrote: >> On 14.06.2023 20:02, Jason Andryuk wrote: >>> + if ( !(set_cppc->set_params & XEN_SYSCTL_CPPC_SET_ACT_WINDOW) && >>> + set_cppc->activity_window ) >>> + return -EINVAL; > > There were a few aspects intended to be checked, but I have failed to > implement them all properly and consistently. The 32bit fields of the > CPPC interface are larger than the 8 bit HWP fields (10 bits for > activity window). So the first aspect was supposed to ensure all > those out-of-range bits are 0. > > The second aspect, which wasn't implemented properly, was that fields > would be 0 unless the corresponding bit was set in set_params. > > The third aspect was to fail if a field was specified but hardware > support isn't available. That is now only activity window. > > Do aspects #1 and #2 sound appropriate? We can discuss #3 below. Personally I'd prefer if inapplicable fields weren't checked, unless we expect re-use of those fields with a different way of indicating that the field holds an applicable value. But my primary desire is for checking to be as consistent as possible. >> Feels like I have wondered before what good this check does. I'm >> inclined to suggest to ... > > This check was supposed to enforce #2. > >>> + if ( set_cppc->activity_window & ~XEN_SYSCTL_CPPC_ACT_WINDOW_MASK ) >>> + return -EINVAL; >> >> ... fold the two relevant checks, omitting the middle one: >> >> if ( (set_cppc->set_params & XEN_SYSCTL_CPPC_SET_ACT_WINDOW) && >> (!feature_hwp_activity_window || >> (set_cppc->activity_window & ~XEN_SYSCTL_CPPC_ACT_WINDOW_MASK)) >> return -EINVAL; >> >> Yet I'm also a little worried about the feature check, requiring the >> caller to first figure out whether that feature is available. Would >> it be an alternative to make such "best effort", preferably with >> some indication that this aspect of the request was not carried out? > > Yes, it would be nice to try and apply on a "best effort" basis as > it's only activity window which may not be supported. > > The SDM says, "Processors may support a subset of IA32_HWP_REQUEST > fields as indicated by CPUID. Reads of non-supported fields will > return 0. Writes to non-supported fields are ignored." > > I'll have to test this, but potentially we just let the writes go > through? If the user checks xenpm, they will see that the activity > window isn't supported? Hmmm, I don't have a machine without activity > window support, so I can't test it. Skylake introduced HWP, but my > skylake test system supports activity window. > > Or do you want to make xen_set_cppc_para have an in/out and return the > applied features? Yes, that was what I meant with "indication of some sort". You could e.g. simply clear the respective control bit in the request (and then arrange for it to be copied back). Jan From xen-devel-bounces@lists.xenproject.org Wed Jun 21 15:30:21 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 15:30:21 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552822.863106 (Exim 4.92) (envelope-from ) id 1qBzml-0007XC-7S; Wed, 21 Jun 2023 15:30:19 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552822.863106; Wed, 21 Jun 2023 15:30:19 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBzml-0007X5-4s; Wed, 21 Jun 2023 15:30:19 +0000 Received: by outflank-mailman (input) for mailman id 552822; Wed, 21 Jun 2023 15:30:17 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBzmj-0007Wu-16 for xen-devel@lists.xenproject.org; Wed, 21 Jun 2023 15:30:17 +0000 Received: from mailout1.w1.samsung.com (mailout1.w1.samsung.com [210.118.77.11]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 83a89c77-1048-11ee-b236-6b7b168915f2; Wed, 21 Jun 2023 17:30:14 +0200 (CEST) Received: from eucas1p2.samsung.com (unknown [182.198.249.207]) by mailout1.w1.samsung.com (KnoxPortal) with ESMTP id 20230621153011euoutp01192645862d3e0a543891af4b47de94a9~qtkOS32Qw0899308993euoutp01Q; Wed, 21 Jun 2023 15:30:11 +0000 (GMT) Received: from eusmges2new.samsung.com (unknown [203.254.199.244]) by eucas1p2.samsung.com (KnoxPortal) with ESMTP id 20230621153011eucas1p2787595ff5b934c65ea1727b5d5deb74f~qtkN_c_kP1922119221eucas1p26; Wed, 21 Jun 2023 15:30:11 +0000 (GMT) Received: from eucas1p1.samsung.com ( [182.198.249.206]) by eusmges2new.samsung.com (EUCPMTA) with SMTP id 3D.E0.11320.38713946; Wed, 21 Jun 2023 16:30:11 +0100 (BST) Received: from eusmtrp2.samsung.com (unknown [182.198.249.139]) by eucas1p2.samsung.com (KnoxPortal) with ESMTPA id 20230621153010eucas1p25fabdc546fa653beb103f6f68f4da531~qtkNVQ-cl3128231282eucas1p2P; Wed, 21 Jun 2023 15:30:10 +0000 (GMT) Received: from eusmgms1.samsung.com (unknown [182.198.249.179]) by eusmtrp2.samsung.com (KnoxPortal) with ESMTP id 20230621153010eusmtrp230e48834a7a1b40e208c6136e69457d4~qtkNTp7dV2052520525eusmtrp2q; Wed, 21 Jun 2023 15:30:10 +0000 (GMT) Received: from eusmtip2.samsung.com ( [203.254.199.222]) by eusmgms1.samsung.com (EUCPMTA) with SMTP id 53.6C.10549.28713946; Wed, 21 Jun 2023 16:30:10 +0100 (BST) Received: from CAMSVWEXC02.scsc.local (unknown [106.1.227.72]) by eusmtip2.samsung.com (KnoxPortal) with ESMTPA id 20230621153010eusmtip231fdedfd7d7cff792547031f714e18c9~qtkM_OVY70222902229eusmtip2f; Wed, 21 Jun 2023 15:30:10 +0000 (GMT) Received: from localhost (106.210.248.248) by CAMSVWEXC02.scsc.local (2002:6a01:e348::6a01:e348) with Microsoft SMTP Server (TLS) id 15.0.1497.2; Wed, 21 Jun 2023 16:30:09 +0100 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 83a89c77-1048-11ee-b236-6b7b168915f2 DKIM-Filter: OpenDKIM Filter v2.11.0 mailout1.w1.samsung.com 20230621153011euoutp01192645862d3e0a543891af4b47de94a9~qtkOS32Qw0899308993euoutp01Q DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=samsung.com; s=mail20170921; t=1687361411; bh=4dY3siBIy5sZCkWLAJsADYQ9gjCB2XGjCqHI/EnrzWw=; h=Date:From:To:CC:Subject:In-Reply-To:References:From; b=pGdGnasdyQVz6DZY4mANhkND5Xrt681cqBfJfy97xUPZInu3VuYDlHeCfy1G2/D4c 18D/HuBWkadD4OUgQpv80ELCjEHDj40bQ2D16FPNPCKO+6rUNXV2/eSnsXtYqBWKtu F5+bvWY/pNIsls2QPTAqoHMPbQjcqWCwFBMbgLgY= X-AuditID: cbfec7f4-97dff70000022c38-1a-6493178345d8 Date: Wed, 21 Jun 2023 17:30:08 +0200 From: Joel Granados To: Petr Mladek CC: , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , , Theodore Ts'o , "Jason A. Donenfeld" , Greg Kroah-Hartman , Jiri Slaby , Juergen Gross , Stefano Stabellini , Benjamin LaHaise , Alexander Viro , Christian Brauner , Jeff Layton , Chuck Lever , Jan Kara , Kees Cook , Iurii Zaikin , Alexei Starovoitov , Daniel Borkmann , Andrii Nakryiko , Balbir Singh , Eric Biederman , "Naveen N. Rao" , Anil S Keshavamurthy , "David S. Miller" , Masami Hiramatsu , Peter Zijlstra , Will Deacon , Sergey Senozhatsky , Juri Lelli , Vincent Guittot , Steven Rostedt , Andrew Morton , Mike Kravetz , Muchun Song , Naoya Horiguchi , "Matthew Wilcox (Oracle)" , David Howells , Jarkko Sakkinen , Paul Moore , James Morris , "Serge E. Hallyn" , "H. Peter Anvin" , Oleksandr Tyshchenko , Amir Goldstein , John Fastabend , Martin KaFai Lau , Song Liu , Yonghong Song , KP Singh , Stanislav Fomichev , Hao Luo , Jiri Olsa , Waiman Long , Boqun Feng , John Ogness , Dietmar Eggemann , Ben Segall , Mel Gorman , Daniel Bristot de Oliveira , Valentin Schneider , Andy Lutomirski , Will Drewry , Mark Rutland , Miaohe Lin , , , , , , , , , , Subject: Re: [PATCH 08/11] sysctl: Add size to register_sysctl_init Message-ID: <20230621153008.lpxi5gh6fzvammg5@localhost> MIME-Version: 1.0 Content-Type: multipart/signed; micalg="pgp-sha512"; protocol="application/pgp-signature"; boundary="6xqmlcamfjbvcfp2" Content-Disposition: inline In-Reply-To: X-Originating-IP: [106.210.248.248] X-ClientProxiedBy: CAMSVWEXC01.scsc.local (2002:6a01:e347::6a01:e347) To CAMSVWEXC02.scsc.local (2002:6a01:e348::6a01:e348) X-Brightmail-Tracker: H4sIAAAAAAAAA2WTfVBUVRjG59x79t4Fg67gyBEtbTEnP0CxtNfS1NS6QTOVzTTlVEayifGh syt+N8GyJpIoLAi1LAGufC6CIOywLK66Mi6oJKAIiksIqCCIinytjLuxXpyc6b/f+7zvM+d5 /jhi2kMt9hZvidgulUUEhUkYV6y/YPvbN8YrKXhRkX4SaIoLGagv0iEYGUujwdjdimHQ1spC nL0MQ2FZNAVPTtoZeFJtYaD3/ACCxs4mBlJ7ojFoei6z4LDeo0CbNUxD98kDCDRXlBj6FWMY 7iSU0+DQK1mI0RYzYLacYSGlxAvSUmMoUNkSELQ3eYPmxmLoT58BtpwCFoqKtRQoKvIo0F/L QFCdrKbBeuQohsu/h4Px0hAF5bcUDNwzxVNwcCQbQ3KKAkHV6VoMVys1DLQVOkTw6FAHA9XF dRguXajBoDsRJYLs5gYKCg/mi6Al4Q6CpP67CLS5c+DxmS+h8WwmBTmG2xgaos8i0CU/Y2F0 bEwErapUDJb4sxQ4OodEYIptp6BxtBeDseQYs+ozfmT/Ycz/0/cM84V/FSI+LaoB82X5Nyj+ VrYB8Ykx/SxvUFtZXmm6yfKZpZH8deM3vLL6gYg/lTeP11b1UHxcSyPNlxYcZD5/a4Pr8mBp 2JYdUtnCD35wDfkj/wTeluK1K6HyCB2FTnnGIRcx4d4hw9XZVBxyFXtweYgM1wxNDIOIPDyX hpxXHtwTRMx9s184OowVIuEoF5GG9mJGGMaPRhuPT2zKEYlPP0Y7LZh7kxhHzayTGW4BudJ3 67k+hZOQ+xlW2mmguZGppOJuPeNceHJryOmYLpGT3bh3SZaijxZ4Mqn9sws7meZ2kQF7+XhY 8ThPJ7l2sVN2GX+rpFKITTgf0mzSMgL/Qi6W3XzejXBNr5CneoNIWKwllsF6SmBPct9Sxgo8 gzgMGROGJETO2B+xwqBDJCd6aMLxPlFe65pwrCZ5ChVyJiKcO2l5MFkI6k5U+lRakN1I7G8e wvUcomvrwwnIR/1SNfVL1dT/VRPkBSTTOMD8T55PcrJ6aYFXkKKihzgTsQXISxopD98slS+O kO70kweFyyMjNvtt2hpeisa/7CW7ZbAC5d5/7GdGlBiZ0exxc8dJXT3yxhFbI6SSKW6vlaqC PdyCg3bvkcq2bpRFhknlZjRdjCVebvNX1G7y4DYHbZeGSqXbpLIXW0rs4h1F4fSlXr4Fr7fN 7PfX6QPUc+a+nWH6KnBfyEC/adaOutCpIZ3f7haNBVTVHFXP4vlDuz62KrlQ6/pQv7jFa1KW jvgeNyQF7rFMCZt7o1w1Oa9+UlWRgmQ1rz4n8xl0aGxblgwb4390hLZkiRN9JL2Syour8k/L O/xrP1pf96zTMe3nda7GAxrbyuZHo1PdVesUryb9tGF/yeH2p/uGTlWgnckfWi/+avb/Yqj4 Dcfeo/mrl9UNuOQs977Z1Clb1N65t7XEBSxrv5uvWKDnvs5N0GbcDbl2vSDAPrPGEPhpbLRn om8Jyly5UNm2cUn8na7b09K//8T9fPdV0Xvd+aZyW2zwsh6dSILlIUH+82iZPOhfCl1C+y0F AAA= X-Brightmail-Tracker: H4sIAAAAAAAAA2WTe0xTdxTH97v39t7iQtYBkzse2VanY6jFUtCDU6N7xGume2TJEuec66Rp QdpiC0y3mWHLNmAykYfEUnnYgVDKowgIFCthnR1BozBEEBAFBQqI4zWo5bFCs8xk/31+n9/v e87JLzls3KOK8mFHyGJECpkwikuuIloWrfc2qrzTwzepWl8BbbmBhFtlJQhmHdk4mIa7CZi2 d1OQvFhFgKHqJAZTFYskTFmsJIz+NomgbeA2CVm2kwRobdcpWOodwkCX/zcOwxU/IdDeTCBg XOUg4FFqNQ5LNQkUqHXlJDRZr1Jw1ugN2VlqDNLsqQju3/YBbVcwjJ/3A3uhnoKych0Gqtoi DGracxFYMjQ49J7OJOD6z1IwtcxgUN2jImHInIJB0mwBARlnVQgarjQT8Ge9loR7hiUW/HWq nwRL+Q0CWq79QUBJaTwLCu60YmBIKmZBZ+ojBOnjgwh0F9fBxNVPoK0xD4PCugcEtJ5sRFCS sUDBnMPBgu60LAKsKY0YLA3MsMCceB+DtrlRAkzGC+TOD5nZH34hmL6xBYIx5BgQkx3fSjBV xV0Y01NQh5gz6nGKqdP0UkyC+S7F5FXGMh2m/UyC5TGLuVQUyOgabBiT3NmGM5X6JPKjgM94 2xTy2BjRqxK5MmY79wAfgnn8MOAFh4Tx+IItB7cGh3KDdmwLF0VFxIkUQTu+5EmS5t+NzvA+ Vtg4yIpHRs9k5MamOSF0v6mWtcwenAJE35jEXd6PNk7fZrnYk57vSCaT0SrnmwlEF40+IVyH akQXdGtWEgRnLW2aa6KWmeRsoG+O9ax4Lw6XHsntxZcDOGdmNT0yNrBy4cl5h76ifrjSwp2z hc5XjeGuMe4huuTXIJd/kW4+95BYZpwTR+vSh5zMdrIvfXGRvazdnH2N9dnINeka+o5ZR7r4 BD21MIhSkafmmUqaZypp/qvk0oF056IN+59eTxfmj+Iu3k6XlT0h8hClR16iWKVULFXyeUqh VBkrE/MOy6WVyLkyNdfsl2pRzsgErwlhbNSEXncm+ytKbiEfQiaXibhe7v6VaeEe7uHC49+I FPJDitgokbIJhTp/8Qzu89JhuXP/ZDGH+Js3hfJDNodtCg3bLOB6u++JThR6cMTCGNERkSha pPg3h7HdfOKxTw3CAIGgzCywRAX1hXzb7dij3vD9gb6a+bZ15q4GA5K+HZ5+4Csqx99XrA54 v/NHv+OSo1841AnfRTx/hKWTHT20K1cv0UbqfZWRdGLNwMQay1DipMGnwbZ7+Nh71zwVjfyt 2w6uvSD4/aH1soxurvDeL+brnu7sWL9oTfp4Mjfw6V11qST65deqgyrdix/bT2y5+kFA3Grb 6aQXBPveMGJ7DX6jLRulQ/2UNbCzWTtVHZVV8yAg1/F1d++ty4n72m35o9dT9p5nlUbOnxte NS3fcTMgz1db1NX+ZktL3Nx0psTex8Hf+vy5TP9du8Pt+eJq40zniLhKb8bq6msrFtpnuYRS IuQH4gql8B/pJ17rxwQAAA== X-CMS-MailID: 20230621153010eucas1p25fabdc546fa653beb103f6f68f4da531 X-Msg-Generator: CA X-RootMTR: 20230621091037eucas1p188e11d8064526a5a0549217d5a419647 X-EPHeader: CA CMS-TYPE: 201P X-CMS-RootMailID: 20230621091037eucas1p188e11d8064526a5a0549217d5a419647 References: <20230621091000.424843-1-j.granados@samsung.com> <20230621091000.424843-9-j.granados@samsung.com> --6xqmlcamfjbvcfp2 Content-Type: text/plain; charset="us-ascii" Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Wed, Jun 21, 2023 at 01:36:46PM +0200, Petr Mladek wrote: > On Wed 2023-06-21 11:09:57, Joel Granados wrote: > > In order to remove the end element from the ctl_table struct arrays, we > > explicitly define the size when registering the targes. We add a size > > argument to the register_sysctl_init call and pass an ARRAY_SIZE for all > > the callers. >=20 > This does not explain the motivatin why the end element is removed. I also see that the cover letter also lacks this. Let me clarify in my V2. >=20 > I agree with Jiri that saving 9k is a questionable gain. According to > the cover letter it saved 0,00%. It is because it saved 9k with allyes > config which produces huge kernel. IMHO, the 9k might be interesting > only for a tiny kernel. But I guess that it would safe much less > bytes there. I put the 9K as a upper bound kind of value. To get an idea of exactly how much we are talking about. A lower bound with tiny config and sysctl enabled is a good idea to give a range. >=20 > And the code with the added ARRAY_SIZE() parameter looks worse than befor= e. This might not even be an issue in V2. After analysing Greg's feedback, these might just go away. >=20 > > diff --git a/kernel/printk/sysctl.c b/kernel/printk/sysctl.c > > index c228343eeb97..28f37b86414e 100644 > > --- a/kernel/printk/sysctl.c > > +++ b/kernel/printk/sysctl.c > > @@ -81,5 +81,6 @@ static struct ctl_table printk_sysctls[] =3D { > > =20 > > void __init printk_sysctl_init(void) > > { > > - register_sysctl_init("kernel", printk_sysctls); > > + register_sysctl_init("kernel", printk_sysctls, > > + ARRAY_SIZE(printk_sysctls)); > > } >=20 > Is register_sysctl_init() still ready to handle the last empty element, nope, after all the patch set, this functionality would be gone. > please? I am not in Cc on the related patches. Not sure what happened there. Should I just add you for the next batch? >=20 > Best Regards, > Petr Thx for the feedback Best --=20 Joel Granados --6xqmlcamfjbvcfp2 Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQGzBAABCgAdFiEErkcJVyXmMSXOyyeQupfNUreWQU8FAmSTF34ACgkQupfNUreW QU8CgQv/WDyYibe7/IonBVPexXNQGTVuyKh61uOYtHRK+2k13K3RLUk48Z0C+Q5+ vfTq/uCCkVwy/eYrMqn1RFGRzZ2NY6UkXXd7X6g8UVGLIiTCl2TEA235HjpPCxuh /RcNXUoYsrzVCc6s4XtIScbySNGho9BtuXw1vInVQy08FiO21l2apZYCWtOqRzdA GFUepViYRcMqGClksHNZKDND+JZWRjB1sqPr5UfLVo89RxrSGbDqZFP2DCU3ehNx vbSg+kcYu3PBOZQuhA9Eu4h1ErwKlk6PQJhJ04lpMwJU3eSR8+t6A/9iKE305ufv lulowZS/J4q8c+8IDMZR/g9Ire50DzZ0MzEENUn43oqh7EVc+C5XgG28Gxyb7P+l aXq/uiZNg8e1cD54e+l01DjFU8aEVz1KN3YE4NF2VW/EDUyiOJU3a+mkBSPSIt7C MSeQHeJvDOffcGjCWsyGwiiplObWKHl4WApjE/sA0UtkNFCc0178hmKbFf9ayZvv J2+uWQKH =taMy -----END PGP SIGNATURE----- --6xqmlcamfjbvcfp2-- From xen-devel-bounces@lists.xenproject.org Wed Jun 21 15:48:48 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 15:48:48 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552829.863117 (Exim 4.92) (envelope-from ) id 1qC04L-0000j1-NU; Wed, 21 Jun 2023 15:48:29 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552829.863117; Wed, 21 Jun 2023 15:48:29 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC04L-0000iu-JI; Wed, 21 Jun 2023 15:48:29 +0000 Received: by outflank-mailman (input) for mailman id 552829; Wed, 21 Jun 2023 15:48:27 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC04J-0000io-IS for xen-devel@lists.xenproject.org; Wed, 21 Jun 2023 15:48:27 +0000 Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 0efecded-104b-11ee-b236-6b7b168915f2; Wed, 21 Jun 2023 17:48:25 +0200 (CEST) Received: from delta.bugseng.com (unknown [151.46.220.87]) by support.bugseng.com (Postfix) with ESMTPSA id 5BBCB4EE0737; Wed, 21 Jun 2023 17:48:20 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 0efecded-104b-11ee-b236-6b7b168915f2 From: Roberto Bagnara To: xen-devel@lists.xenproject.org Cc: roger.pau@citrix.com, bertrand.marquis@arm.com, michal.orzel@amd.com, xenia.ragiadakou@amd.com, ayan.kumar.halder@amd.com, consulting@bugseng.com, Roberto Bagnara , Andrew Cooper , George Dunlap , Jan Beulich , Julien Grall , Stefano Stabellini , Wei Liu Subject: [XEN PATCH v3] docs/misra: document the C dialect and translation toolchain assumptions. Date: Wed, 21 Jun 2023 17:47:56 +0200 Message-Id: X-Mailer: git-send-email 2.34.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit This document specifies the C language dialect used by Xen and the assumptions Xen makes on the translation toolchain. Signed-off-by: Roberto Bagnara Changes in V2: - Clarified several entries. - Removed entry about the use of the undefined escape sequence \m. Changes in V3: - Removed mention of the __signed__ non-standard keyword. - Fixed the entry about arithmetic operator on pointer to void. - Added entry for named variadic macro arguments. - Removed entry about static function used in an inline function with external linkage. --- docs/misra/C-language-toolchain.rst | 468 ++++++++++++++++++++++++++++ 1 file changed, 468 insertions(+) create mode 100644 docs/misra/C-language-toolchain.rst diff --git a/docs/misra/C-language-toolchain.rst b/docs/misra/C-language-toolchain.rst new file mode 100644 index 0000000000..8651f59118 --- /dev/null +++ b/docs/misra/C-language-toolchain.rst @@ -0,0 +1,468 @@ +============================================= +C Dialect and Translation Assumptions for Xen +============================================= + +This document specifies the C language dialect used by Xen and +the assumptions Xen makes on the translation toolchain. +It covers, in particular: + +1. the used language extensions; +2. the translation limits that the translation toolchains must be able + to accommodate; +3. the implementation-defined behaviors upon which Xen may depend. + +All points are of course relevant for portability. In addition, +programming in C is impossible without a detailed knowledge of the +implementation-defined behaviors. For this reason, it is recommended +that Xen developers have familiarity with this document and the +documentation referenced therein. + +This document needs maintenance and adaptation in the following +circumstances: + +- whenever the compiler is changed or updated; +- whenever the use of a certain language extension is added or removed; +- whenever code modifications cause exceeding the stated translation limits. + + +Applicable C Language Standard +______________________________ + +Xen is written in C99 with extensions. The relevant ISO standard is + + *ISO/IEC 9899:1999/Cor 3:2007*: Programming Languages - C, + Technical Corrigendum 3. + ISO/IEC, Geneva, Switzerland, 2007. + + +Reference Documentation +_______________________ + +The following documents are referred to in the sequel: + +GCC_MANUAL: + https://gcc.gnu.org/onlinedocs/gcc-12.1.0/gcc.pdf +CPP_MANUAL: + https://gcc.gnu.org/onlinedocs/gcc-12.1.0/cpp.pdf +ARM64_ABI_MANUAL: + https://github.com/ARM-software/abi-aa/blob/60a8eb8c55e999d74dac5e368fc9d7e36e38dda4/aapcs64/aapcs64.rst +X86_64_ABI_MANUAL: + https://gitlab.com/x86-psABIs/x86-64-ABI/-/jobs/artifacts/master/raw/x86-64-ABI/abi.pdf?job=build + + +C Language Extensions +_____________________ + + +The following table lists the extensions currently used in Xen. +The table columns are as follows: + + Extension + a terse description of the extension; + Architectures + a set of Xen architectures making use of the extension; + References + when available, references to the documentation explaining + the syntax and semantics of (each instance of) the extension. + + +.. list-table:: + :widths: 30 15 55 + :header-rows: 1 + + * - Extension + - Architectures + - References + + * - Non-standard tokens + - ARM64, X86_64 + - _Static_assert: + see Section "2.1 C Language" of GCC_MANUAL. + asm, __asm__: + see Sections "6.48 Alternate Keywords" and "6.47 How to Use Inline Assembly Language in C Code" of GCC_MANUAL. + __volatile__: + see Sections "6.48 Alternate Keywords" and "6.47.2.1 Volatile" of GCC_MANUAL. + __const__, __inline__, __inline: + see Section "6.48 Alternate Keywords" of GCC_MANUAL. + typeof, __typeof__: + see Section "6.7 Referring to a Type with typeof" of GCC_MANUAL. + __alignof__, __alignof: + see Sections "6.48 Alternate Keywords" and "6.44 Determining the Alignment of Functions, Types or Variables" of GCC_MANUAL. + __attribute__: + see Section "6.39 Attribute Syntax" of GCC_MANUAL. + __builtin_types_compatible_p: + see Section "6.59 Other Built-in Functions Provided by GCC" of GCC_MANUAL. + __builtin_va_arg: + non-documented GCC extension. + __builtin_offsetof: + see Section "6.53 Support for offsetof" of GCC_MANUAL. + + * - Empty initialization list + - ARM64, X86_64 + - Non-documented GCC extension. + + * - Arithmetic operator on pointer to void + - ARM64, X86_64 + - See Section "6.24 Arithmetic on void- and Function-Pointers" of GCC_MANUAL." + + * - Statements and declarations in expressions + - ARM64, X86_64 + - See Section "6.1 Statements and Declarations in Expressions" of GCC_MANUAL. + + * - Structure or union definition with no members + - ARM64, X86_64 + - See Section "6.19 Structures with No Members" of GCC_MANUAL. + + * - Zero size array type + - ARM64, X86_64 + - See Section "6.18 Arrays of Length Zero" of GCC_MANUAL. + + * - Binary conditional expression + - ARM64, X86_64 + - See Section "6.8 Conditionals with Omitted Operands" of GCC_MANUAL. + + * - 'Case' label with upper/lower values + - ARM64, X86_64 + - See Section "6.30 Case Ranges" of GCC_MANUAL. + + * - Unnamed field that is not a bit-field + - ARM64, X86_64 + - See Section "6.63 Unnamed Structure and Union Fields" of GCC_MANUAL. + + * - Empty declaration + - ARM64, X86_64 + - Non-documented GCC extension. + Note: an empty declaration is caused by a semicolon at file scope + with nothing before it (not to be confused with an empty statement). + + * - Incomplete enum declaration + - ARM64 + - See Section "6.49 Incomplete enum Types" of GCC_MANUAL. + + * - Implicit conversion from a pointer to an incompatible pointer + - ARM64, X86_64 + - Non-documented GCC extension. The documentation for option + -Wincompatible-pointer-types in Section + "3.8 Options to Request or Suppress Warnings" of GCC_MANUAL + is possibly relevant. + + * - Pointer to a function is converted to a pointer to an object or a pointer to an object is converted to a pointer to a function + - X86_64 + - Non-documented GCC extension. The information provided in + https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83584 + is possibly relevant. + + * - Token pasting of ',' and __VA_ARGS__ + - ARM64, X86_64 + - See Section "6.21 Macros with a Variable Number of Arguments" of GCC_MANUAL. + + * - Named variadic macro arguments + - ARM64, X86_64 + - See Section "6.21 Macros with a Variable Number of Arguments" of GCC_MANUAL. + + * - No arguments for '...' parameter of variadic macro + - ARM64, X86_64 + - See Section "6.21 Macros with a Variable Number of Arguments" of GCC_MANUAL. + + * - void function returning void expression + - ARM64, X86_64 + - See the documentation for -Wreturn-type in Section "3.8 Options to Request or Suppress Warnings" of GCC_MANUAL. + + * - GNU statement expressions from macro expansion + - ARM64, X86_64 + - See Section "6.1 Statements and Declarations in Expressions" of GCC_MANUAL. + + * - Invalid application of sizeof to a void type + - ARM64, X86_64 + - See Section "6.24 Arithmetic on void- and Function-Pointers" of GCC_MANUAL. + + * - Redeclaration of already-defined enum + - ARM64, X86_64 + - See Section "6.49 Incomplete enum Types" of GCC_MANUAL. + + * - struct with flexible array member nested in a struct + - ARM64, X86_64 + - See Section "6.18 Arrays of Length Zero" of GCC_MANUAL. + + * - struct with flexible array member used as an array element + - ARM64, X86_64 + - See Section "6.18 Arrays of Length Zero" of GCC_MANUAL. + + * - enumerator value outside the range of int + - ARM64, X86_64 + - Non-documented GCC extension. + + * - Extended integer types + - X86_64 + - See Section "6.9 128-bit Integers" of GCC_MANUAL. + + +Translation Limits +__________________ + +The following table lists the translation limits that a toolchain has +to satisfy in order to translate Xen. The numbers given are a +compromise: on the one hand, many modern compilers have very generous +limits (in several cases, the only limitation is the amount of +available memory); on the other hand we prefer setting limits that are +not too high, because compilers do not have any obligation of +diagnosing when a limit has been exceeded, and not too low, so as to +avoid frequently updating this document. In the table, only the +limits that go beyond the minima specified by the relevant C Standard +are listed. + +The table columns are as follows: + + Limit + a terse description of the translation limit; + Architectures + a set relevant of Xen architectures; + Threshold + a value that the Xen project does not wish to exceed for that limit + (this is typically below, often much below what the translation + toolchain supports); + References + when available, references to the documentation providing evidence + that the translation toolchain honors the threshold (and more). + +.. list-table:: + :widths: 30 15 10 45 + :header-rows: 1 + + * - Limit + - Architectures + - Threshold + - References + + * - Size of an object + - ARM64, X86_64 + - 8388608 + - The maximum size of an object is defined in the MAX_SIZE macro, and for a 32 bit architecture is 8MB. + The maximum size for an array is defined in the PTRDIFF_MAX and in a 32 bit architecture is 2^30-1. + See occurrences of these macros in GCC_MANUAL. + + * - Characters in one logical source line + - ARM64 + - 5000 + - See Section "11.2 Implementation limits" of CPP_MANUAL. + + * - Characters in one logical source line + - X86_64 + - 12000 + - See Section "11.2 Implementation limits" of CPP_MANUAL. + + * - Nesting levels for #include files + - ARM64 + - 24 + - See Section "11.2 Implementation limits" of CPP_MANUAL. + + * - Nesting levels for #include files + - X86_64 + - 32 + - See Section "11.2 Implementation limits" of CPP_MANUAL. + + * - case labels for a switch statement (excluding those for any nested switch statements) + - X86_64 + - 1500 + - See Section "4.12 Statements" of GCC_MANUAL. + + * - Number of significant initial characters in an external identifier + - ARM64, X86_64 + - 63 + - See Section "4.3 Identifiers" of GCC_MANUAL. + + +Implementation-Defined Behaviors +________________________________ + +The following table lists the C language implementation-defined behaviors +relevant for MISRA C:2012 Dir 1.1 upon which Xen may possibly depend. + +The table columns are as follows: + + I.-D.B. + a terse description of the implementation-defined behavior; + Architectures + a set relevant of Xen architectures; + Value(s) + for i.-d.b.'s with values, the values allowed; + References + when available, references to the documentation providing details + about how the i.-d.b. is resolved by the translation toolchain. + +.. list-table:: + :widths: 30 15 10 45 + :header-rows: 1 + + * - I.-D.B. + - Architectures + - Value(s) + - References + + * - Allowable bit-field types other than _Bool, signed int, and unsigned int + - ARM64, X86_64 + - All explicitly signed integer types, all unsigned integer types, + and enumerations. + - See Section "4.9 Structures, Unions, Enumerations, and Bit-Fields". + + * - #pragma preprocessing directive that is documented as causing translation failure or some other form of undefined behavior is encountered + - ARM64, X86_64 + - pack, GCC visibility + - #pragma pack: + see Section "6.62.11 Structure-Layout Pragmas" of GCC_MANUAL. + #pragma GCC visibility: + see Section "6.62.14 Visibility Pragmas" of GCC_MANUAL. + + * - The number of bits in a byte + - ARM64 + - 8 + - See Section "4.4 Characters" of GCC_MANUAL and Section "8.1 Data types" of ARM64_ABI_MANUAL. + + * - The number of bits in a byte + - X86_64 + - 8 + - See Section "4.4 Characters" of GCC_MANUAL and Section "3.1.2 Data Representation" of X86_64_ABI_MANUAL. + + * - Whether signed integer types are represented using sign and magnitude, two's complement, or one's complement, and whether the extraordinary value is a trap representation or an ordinary value + - ARM64, X86_64 + - Two's complement + - See Section "4.5 Integers" of GCC_MANUAL. + + * - Any extended integer types that exist in the implementation + - X86_64 + - __uint128_t + - See Section "6.9 128-bit Integers" of GCC_MANUAL. + + * - The number, order, and encoding of bytes in any object + - ARM64 + - + - See Section "4.15 Architecture" of GCC_MANUAL and Chapter 5 "Data types and alignment" of ARM64_ABI_MANUAL. + + * - The number, order, and encoding of bytes in any object + - X86_64 + - + - See Section "4.15 Architecture" of GCC_MANUAL and Section "3.1.2 Data Representation" of X86_64_ABI_MANUAL. + + * - Whether a bit-field can straddle a storage-unit boundary + - ARM64 + - + - See Section "4.9 Structures, Unions, Enumerations, and Bit-Fields of GCC_MANUAL and Section "8.1.8 Bit-fields" of ARM64_ABI_MANUAL. + + * - Whether a bit-field can straddle a storage-unit boundary + - X86_64 + - + - See Section "4.9 Structures, Unions, Enumerations, and Bit-Fields" of GCC_MANUAL and Section "3.1.2 Data Representation" of X86_64_ABI_MANUAL. + + * - The order of allocation of bit-fields within a unit + - ARM64 + - + - See Section "4.9 Structures, Unions, Enumerations, and Bit-Fields of GCC_MANUAL and Section "8.1.8 Bit-fields" of ARM64_ABI_MANUAL. + + * - The order of allocation of bit-fields within a unit + - X86_64 + - + - See Section "4.9 Structures, Unions, Enumerations, and Bit-Fields" of GCC_MANUAL and Section "3.1.2 Data Representation" of X86_64_ABI_MANUAL. + + * - What constitutes an access to an object that has volatile-qualified type + - ARM64, X86_64 + - + - See Section "4.10 Qualifiers" of GCC_MANUAL. + + * - The values or expressions assigned to the macros specified in the headers , , and + - ARM64 + - + - See Section "4.15 Architecture" of GCC_MANUAL and Chapter 5 "Data types and alignment" of ARM64_ABI_MANUAL. + + * - The values or expressions assigned to the macros specified in the headers , , and + - X86_64 + - + - See Section "4.15 Architecture" of GCC_MANUAL and Section "3.1.2 Data Representation" of X86_64_ABI_MANUAL. + + * - Character not in the basic source character set is encountered in a source file, except in an identifier, a character constant, a string literal, a header name, a comment, or a preprocessing token that is never converted to a token + - ARM64 + - UTF-8 + - See Section "1.1 Character sets" of CPP_MANUAL. + We assume the locale is not restricting any UTF-8 characters being part of the source character set. + + * - The value of a char object into which has been stored any character other than a member of the basic execution character set + - ARM64 + - + - See Section "4.4 Characters" of GCC_MANUAL and Section "8.1 Data types" of ARM64_ABI_MANUAL. + + * - The value of a char object into which has been stored any character other than a member of the basic execution character set + - X86_64 + - + - See Section "4.4 Characters" of GCC_MANUAL and Section "3.1.2 Data Representation" of X86_64_ABI_MANUAL. + + * - The value of an integer character constant containing more than one character or containing a character or escape sequence that does not map to a single-byte execution character + - ARM64 + - + - See Section "4.4 Characters" of GCC_MANUAL and Section "8.1 Data types" of ARM64_ABI_MANUAL. + + * - The value of an integer character constant containing more than one character or containing a character or escape sequence that does not map to a single-byte execution character + - X86_64 + - + - See Section "4.4 Characters" of GCC_MANUAL and Section "3.1.2 Data Representation" of X86_64_ABI_MANUAL. + + * - The mapping of members of the source character set + - ARM64, X86_64 + - + - See Section "4.4 Characters" of GCC_MANUAL and the documentation for -finput-charset=charset in the same manual. + + * - The members of the source and execution character sets, except as explicitly specified in the Standard + - ARM64, X86_64 + - UTF-8 + - See Section "4.4 Characters" of GCC_MANUAL + + * - The values of the members of the execution character set + - ARM64, X86_64 + - + - See Section "4.4 Characters" of GCC_MANUAL and the documentation for -fexec-charset=charset in the same manual. + + * - How a diagnostic is identified + - ARM64, X86_64 + - + - See Section "4.1 Translation" of GCC_MANUAL. + + * - The places that are searched for an included < > delimited header, and how the places are specified or the header is identified + - ARM64, X86_64 + - + - See Chapter "2 Header Files" of CPP_MANUAL. + + * - How the named source file is searched for in an included " " delimited header + - ARM64, X86_64 + - + - See Chapter "2 Header Files" of CPP_MANUAL. + + * - How sequences in both forms of header names are mapped to headers or external source file names + - ARM64, X86_64 + - + - See Chapter "2 Header Files" of CPP_MANUAL. + + * - Whether the # operator inserts a \ character before the \ character that begins a universal character name in a character constant or string literal + - ARM64, X86_64 + - + - See Section "3.4 Stringizing" of CPP_MANUAL. + + * - The current locale used to convert a wide string literal into corresponding wide character codes + - ARM64, X86_64 + - + - See Section "4.4 Characters" of GCC_MANUAL and Section "11.1 Implementation-defined behavior" of CPP_MANUAL. + + * - The value of a string literal containing a multibyte character or escape sequence not represented in the execution character set + - X86_64 + - + - See Section "4.4 Characters" of GCC_MANUAL and Section "11.1 Implementation-defined behavior" of CPP_MANUAL. + + * - The behavior on each recognized #pragma directive + - ARM64, X86_64 + - pack, GCC visibility + - See Section "4.13 Preprocessing Directives" of GCC_MANUAL and Section "7 Pragmas" of CPP_MANUAL. + + * - The method by which preprocessing tokens (possibly resulting from macro expansion) in a #include directive are combined into a header name + - X86_64 + - + - See Section "4.13 Preprocessing Directives" of GCC_MANUAL and Section "11.1 Implementation-defined behavior" of CPP_MANUAL. + + +END OF DOCUMENT. -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Wed Jun 21 15:58:15 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 15:58:15 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552791.863127 (Exim 4.92) (envelope-from ) id 1qC0Di-0002J0-O0; Wed, 21 Jun 2023 15:58:10 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552791.863127; Wed, 21 Jun 2023 15:58:10 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC0Di-0002It-K9; Wed, 21 Jun 2023 15:58:10 +0000 Received: by outflank-mailman (input) for mailman id 552791; Wed, 21 Jun 2023 13:43:58 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qBy7q-0002aw-5a for xen-devel@lists.xenproject.org; Wed, 21 Jun 2023 13:43:58 +0000 Received: from mailout2.w1.samsung.com (mailout2.w1.samsung.com [210.118.77.12]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id a9a4ffcd-1039-11ee-b236-6b7b168915f2; Wed, 21 Jun 2023 15:43:55 +0200 (CEST) Received: from eucas1p2.samsung.com (unknown [182.198.249.207]) by mailout2.w1.samsung.com (KnoxPortal) with ESMTP id 20230621134353euoutp02d57583f1260e1c228507969bf2dd64df~qsHaHGgl22310523105euoutp02y; Wed, 21 Jun 2023 13:43:53 +0000 (GMT) Received: from eusmges1new.samsung.com (unknown [203.254.199.242]) by eucas1p1.samsung.com (KnoxPortal) with ESMTP id 20230621134353eucas1p1dcc5fd6f5a9f46b250ca7cb322bfcb62~qsHZwC8jc0795907959eucas1p1j; Wed, 21 Jun 2023 13:43:53 +0000 (GMT) Received: from eucas1p2.samsung.com ( [182.198.249.207]) by eusmges1new.samsung.com (EUCPMTA) with SMTP id 7F.CE.42423.89EF2946; Wed, 21 Jun 2023 14:43:52 +0100 (BST) Received: from eusmtrp1.samsung.com (unknown [182.198.249.138]) by eucas1p2.samsung.com (KnoxPortal) with ESMTPA id 20230621134351eucas1p2f16d6185751b35072bbf7492517dd17b~qsHYhPi3_0645106451eucas1p2x; Wed, 21 Jun 2023 13:43:51 +0000 (GMT) Received: from eusmgms1.samsung.com (unknown [182.198.249.179]) by eusmtrp1.samsung.com (KnoxPortal) with ESMTP id 20230621134351eusmtrp12ede84df94c73be5d139021f7caaec4e~qsHYfbU5Z3178131781eusmtrp1O; Wed, 21 Jun 2023 13:43:51 +0000 (GMT) Received: from eusmtip2.samsung.com ( [203.254.199.222]) by eusmgms1.samsung.com (EUCPMTA) with SMTP id B0.8C.10549.79EF2946; Wed, 21 Jun 2023 14:43:51 +0100 (BST) Received: from CAMSVWEXC02.scsc.local (unknown [106.1.227.72]) by eusmtip2.samsung.com (KnoxPortal) with ESMTPA id 20230621134351eusmtip295329994762b412f6d02a3f47b794c24~qsHX0_Bhu0221102211eusmtip2V; Wed, 21 Jun 2023 13:43:51 +0000 (GMT) Received: from localhost (106.210.248.248) by CAMSVWEXC02.scsc.local (2002:6a01:e348::6a01:e348) with Microsoft SMTP Server (TLS) id 15.0.1497.2; Wed, 21 Jun 2023 14:43:50 +0100 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: a9a4ffcd-1039-11ee-b236-6b7b168915f2 DKIM-Filter: OpenDKIM Filter v2.11.0 mailout2.w1.samsung.com 20230621134353euoutp02d57583f1260e1c228507969bf2dd64df~qsHaHGgl22310523105euoutp02y DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=samsung.com; s=mail20170921; t=1687355033; bh=SetH/myydi6dk+ldkx72EVQztsegim0VSf5FSMMJW28=; h=Date:From:To:CC:Subject:In-Reply-To:References:From; b=PTZBv1Kz5BEVObNa7leJ/yxGfQakTivesF5jb6tBj4a7mw0z2DwCV8KG/lz6Htp2A zjthU/P8T1sIWZ42nVHC5ArvGqiQK48scKj0Re/P/DwFQFC0M/FPQnfLTFYC/Ucswv L2oK3I/5AOGeZQ+wBCu+TIiCshDxA9TJNwfHFkfQ= X-AuditID: cbfec7f2-a51ff7000002a5b7-2b-6492fe98f38e Date: Wed, 21 Jun 2023 15:43:48 +0200 From: Joel Granados To: Jani Nikula CC: , Russell King , Catalin Marinas , Will Deacon , Michael Ellerman , Heiko Carstens , Vasily Gorbik , Alexander Gordeev , Gerald Schaefer , Andy Lutomirski , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , , Herbert Xu , "David S. Miller" , Russ Weight , Greg Kroah-Hartman , Phillip Potter , Clemens Ladisch , Arnd Bergmann , Corey Minyard , Theodore Ts'o , "Jason A. Donenfeld" , Joonas Lahtinen , Rodrigo Vivi , Tvrtko Ursulin , David Airlie , Daniel Vetter , "K. Y. Srinivasan" , Haiyang Zhang , Wei Liu , Dexuan Cui , Jason Gunthorpe , Leon Romanovsky , Benjamin Herrenschmidt , Song Liu , Robin Holt , Steve Wahl , David Ahern , Eric Dumazet , Jakub Kicinski , Paolo Abeni , Sudip Mukherjee , Mark Rutland , "James E.J. Bottomley" , "Martin K. Petersen" , Doug Gilbert , Jiri Slaby , Juergen Gross , Stefano Stabellini , Alexander Viro , Christian Brauner , Benjamin LaHaise , David Howells , Jan Harkes , , Trond Myklebust , Anna Schumaker , Chuck Lever , Jeff Layton , Jan Kara , Anton Altaparmakov , Mark Fasheh , Joel Becker , Joseph Qi , Kees Cook , Iurii Zaikin , Eric Biggers , "Darrick J. Wong" , Alexei Starovoitov , Daniel Borkmann , Andrii Nakryiko , Balbir Singh , Eric Biederman , "Naveen N. Rao" , Anil S Keshavamurthy , Masami Hiramatsu , Peter Zijlstra , Petr Mladek , Sergey Senozhatsky , Juri Lelli , Vincent Guittot , John Stultz , Steven Rostedt , Andrew Morton , Mike Kravetz , Muchun Song , Naoya Horiguchi , "Matthew Wilcox (Oracle)" , Joerg Reuter , Ralf Baechle , Pablo Neira Ayuso , Jozsef Kadlecsik , Florian Westphal , Roopa Prabhu , Nikolay Aleksandrov , Alexander Aring , Stefan Schmidt , Miquel Raynal , Steffen Klassert , Matthieu Baerts , Mat Martineau , Simon Horman , Julian Anastasov , Remi Denis-Courmont , Santosh Shilimkar , Marc Dionne , Neil Horman , Marcelo Ricardo Leitner , Xin Long , Karsten Graul , Wenjia Zhang , Jan Karcher , Jon Maloy , Ying Xue , Martin Schiller , John Johansen , Paul Moore , James Morris , "Serge E. Hallyn" , Jarkko Sakkinen , Nicholas Piggin , Christophe Leroy , Christian Borntraeger , Sven Schnelle , "H. Peter Anvin" , "Rafael J. Wysocki" , Mike Travis , Oleksandr Tyshchenko , Amir Goldstein , Matthew Bobrowski , John Fastabend , Martin KaFai Lau , Yonghong Song , KP Singh , Stanislav Fomichev , Hao Luo , Jiri Olsa , Waiman Long , Boqun Feng , John Ogness , Dietmar Eggemann , Ben Segall , Mel Gorman , Daniel Bristot de Oliveira , Valentin Schneider , Andy Lutomirski , Will Drewry , Stephen Boyd , Miaohe Lin , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , Subject: Re: [PATCH 09/11] sysctl: Remove the end element in sysctl table arrays Message-ID: <20230621134348.rcdzl7fi7yq2uj6h@localhost> MIME-Version: 1.0 Content-Type: multipart/signed; micalg="pgp-sha512"; protocol="application/pgp-signature"; boundary="nwcq3i6cyedok5cv" Content-Disposition: inline In-Reply-To: <878rcd2by5.fsf@intel.com> X-Originating-IP: [106.210.248.248] X-ClientProxiedBy: CAMSVWEXC01.scsc.local (2002:6a01:e347::6a01:e347) To CAMSVWEXC02.scsc.local (2002:6a01:e348::6a01:e348) X-Brightmail-Tracker: H4sIAAAAAAAAA2WTa1ATZxSG59tddkM0do1Yv8HbCFItAi0dW45t6Vir7eroTMsPW53xEmVB WxKUiEV7SyUUBNSAg5GgyCVGI1cxRC4DakAQUISKAl4KQrCKmqhAFFEocbF1pv+e77zve+Y9 Pz4RKdWI3EWbFdv4CIUszIMWU+aawcu+B4eTg9/v6v8YLKoAKL97g4KY0hEK+gdvMNBXXUvD /aonCA7du8iA3ZCIQH/hNgGO3DYCyvNtBLwsjSVhxJxEwt3C2FHfZTUFleoiBLZdQxT0aIpJ uGKdAC0Ddhryy2KIUa+agZ6aLgZ2d43QYI9eC006hwtEZxfQYKk9w0BC7zSILh5AcODkFEjT nCIgTRtNQPKgBkHnVXfIajMTcKj9A7AdngaDhhMM1DU6KMgvyCZgV8lxAi70x9BgbjmCoCKT AKPhGQODe8dBavzoFvuBNAJ2Pz1KgabeHx7r6xm4dvoWASlJj2h4FGdzgaazDS4Qe6QMwR3L HgoSWktouLnfQEHZixIGLCkVCHLyVKOF+7rJhTKu48FListNz0XclWvNJHe9a4Dk0nN/4nSq PTSXpmqmuIzq5dzzQW/OZGwnuITqXpLraQ7iKhwZFFequ8Vw5rNeXEZR5NcfrhZ/GsyHbd7O R7z32XrxpiRNJbXlkm9UbPclFxVqmR2PXEWYnY+Hqp8R8UgskrLHES7ub3ZxClK2H+HcjpWC 0IdwfayKfJ3I6e6jBOEYwvrhFOJfl6midkwpRvi8toZ2RijWC3cmJRJOplkffPnBzVer3Fhf nNdmdXEGSPbPBTi2qBo5hUlsEFZnxTHxSCSSsAG4u1PpHEvYibgu1Uo5mWSjsLVRTzktJDsV HxsWOdGVnYOtdbRQ1BO3VmaP8S+43nSdELh9PO6ysQIvxqlHTUjgSbi31sQIPA037E98dQpm 9yN8ZvgRIzxyEDb8PjC26ROsbrGOJT7HF7LO084SmJ2A2x5OFGpOwMlmLSmMJTjuD6ngfgfn /PWA0iBP3RuH6d44TPffYcLYB2eUP6H/N56HDZn3SYEDcX6+ncpAzAk0hY9UykN5pb+C/9FP KZMrIxWhfhvD5UVo9KM2DNc+KUGHex/7WRAhQhY0ezTcVZjThNwpRbiC93CTTC9KDpZKgmU7 dvIR4esiIsN4pQVNFVEeUyTzAus2StlQ2Tb+B57fwke8VgmRq7uKSPuifGj9ouDxm1Yc3Fr/ bdRHcxVGPEs7XPp369anxPS3lwWuuOJXaBIb63fGdK7URoUWTpborp4zFthC3FxXnXSsCuyd +ZXWS5l3Z69D913P6dA5x2UNIy+q2IL2RL3dpyUtkdznmeDVkl5itVYOWY5NbZ6foOduuvGJ 6gxdzaR1M5bmoZyfrSHfz1vzrKMqvtKb3L5sZPIi8z35N9qkDQuzQ4LHOcb73G57y3vHb6cq /AMe7mtdc6bo3AY/a4B6YJGvfndHufTdGdyWkJnixnBjmbygYOlFz8cDv95d0ihd7GaeKw4J eq7vtK27akyan7ng/J61q+NM8udfWiVVZTuXn7DPGvKglJtk/t5khFL2D92Tjv8jBQAA X-Brightmail-Tracker: H4sIAAAAAAAAA2WTe0xTVxzHc+69va3GujtEvSIzrLJsQyiWh/4YymbcsrvNxM0EzXCiHdwp QVrWApkaHUKrUMRhEygrpgJaHPbBQ0DFwUxlIHNB5aniHBYUeaNQHGLbtXbLTPbPyed8z/f7 ze+c5PBwr1quDy9BksLKJOK9AnI+cd3Rcj9I41DHr86f9YGq60MkXOspxeBkhZEES/pauGk2 IHg2V4TD5ce9BCgvOQm4VF3DgcPNxRywq5u5MD3bywWVo4aAyQwlDsaawxj02y0kTFU6XEtT CwkjV58iuGZ0+dr7u0jQDB0m4OTQ71yYKDuG4J56kAvOPwYxOHPtAQYzxtsYXDaPY2C/dBSH qQeDHHDWncDhdMkMDo8rjyI4eUNBgL0nh4RGRTWCxkITCeMZcwQ8zKvFoWNgIXTaJkgw1ysx V1TBBdPPL3B42GzlQrbVSUJdrutWE5mxcFM7w4HM0xUkdF9gwNLyCxdGdOcQ5Az7QmatDUFB 1VIoyjuPwcAPVg4UaTIx0Pdmc6CzbJKEsx0VCNSzeeiDXxHT0fkZ80x5nGD+HLUTjFFndEnd t3Bm7rkaMXetNpwZb2tFjM54gNGm55JMUfotgilu2sTY7rRhzPPZAKam/A7G5DQN459HxwjX yaSpKazfHqk8Zb1guwhChKIIEIaERQhFoWt3vBcSLgiOWhfP7k1IY2XBUbuEexrmfsOTrwd9 p5lyonTU7q9C83g0FUYb+qcIN3tRekSnGyI9ui9dNd3F8fAi+kW3ilSh+S7PE0TXmBTIs6lF 9HThDHK7COotuu/EMczNJBVI3xi9h7vZmwqiTbcHOO4ATrVF0IqxTtJ9sIjaQitKs7gqxOPx qbV0f5/cU2rA6Jz6updhPvU63frjwMvxcCqNftQwhrn9OLWcPuvguXEe9TY90Ep6Bl1J9zSe /ocP0lP2RygPLdK+UqR9pUj7X5FHDqBvO4b+L6+iy0pGcA+vp83mCaIYcc8hbzZVnrQ7SS4S ysVJ8lTJbmGcNKkauf5MXfPs+YtIN/xEaEEYD1mQvytprTTcRD6ERCphBd78N6rV8V78ePG+ /axMulOWupeVW1C46xFP4D6L46SuDyhJ2SlaszpcFLYmYnV4xJpQwVL+J8lZYi9qtziFTWTZ ZFb2bw7jzfNJx14rj+b39kWHUfmOwWfLtqZtKGyK2bbxHWnDzMXEzE11On/O05KqRCx0eeQB ZXP9l2Oxm6vaskb2ZSyMexRZNmPSKg853/dTHrlq74oZ1dbtutUbW5zNDRgwtK/aMCeub7d2 bKwONvM+1G1eqf0mkPatXcCUSFZsbeHXLo61Zx+q2h83zbdEPezeVZ4xaFI1bHkQ/ldfiGVs 27vOj5fs32LjHLm7zP/rLzhj7UFXZj/1zzhlL8hv/Oin7G8XKy/c//7UxX1nkjQamyC49Yq+ QFauN43qo1dszxO9GT/Sn39wSUJRaWxkSaC5O+as/fHWxEnbAi8/UbI5IumrxDv6hNwd00Jm SEDI94hFAbhMLv4bHgGuKMgEAAA= X-CMS-MailID: 20230621134351eucas1p2f16d6185751b35072bbf7492517dd17b X-Msg-Generator: CA X-RootMTR: 20230621094824eucas1p2b6adfbd3f15ff3665674917f419b25d3 X-EPHeader: CA CMS-TYPE: 201P X-CMS-RootMailID: 20230621094824eucas1p2b6adfbd3f15ff3665674917f419b25d3 References: <20230621091000.424843-1-j.granados@samsung.com> <20230621094817.433842-1-j.granados@samsung.com> <87o7l92hg8.fsf@intel.com> <20230621130614.s36w4u7dzmb5d5p3@localhost> <878rcd2by5.fsf@intel.com> --nwcq3i6cyedok5cv Content-Type: text/plain; charset="us-ascii" Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Wed, Jun 21, 2023 at 04:15:46PM +0300, Jani Nikula wrote: > On Wed, 21 Jun 2023, Joel Granados wrote: > > On Wed, Jun 21, 2023 at 02:16:55PM +0300, Jani Nikula wrote: > >> On Wed, 21 Jun 2023, Joel Granados wrote: > >> > Remove the empty end element from all the arrays that are passed to = the > >> > register sysctl calls. In some files this means reducing the explicit > >> > array size by one. Also make sure that we are using the size in > >> > ctl_table_header instead of evaluating the .procname element. > >>=20 > >> Where's the harm in removing the end elements driver by driver? This is > >> an unwieldy patch to handle. > > > > I totally agree. Its a big one!!! but I'm concerned of breaking bisecti= bility: > > * I could for example separate all the removes into separate commits and > > then have a final commit that removes the check for the empty element. > > But this will leave the tree in a state where the for loop will have > > undefined behavior when it looks for the empty end element. It might > > or might not work (probably not :) until the final commit where I fix > > that. > > > > * I could also change the logic that looks for the final element, > > commit that first and then remove the empty element one commit per > > driver after that. But then for all the arrays that still have an > > empty element, there would again be undefined behavior as it would > > think that the last element is valid (when it is really the sentinel). > > > > Any ideas on how to get around these? >=20 > First add size to the register calls, and allow the last one to be > sentinel but do not require the sentinel. >=20 > Start removing sentinels, adjusting the size passed in. This is a great idea! and I think I don't even have to adjust the size because if I change the logic to stop on the sentinel or the size; so when the sentinel is there, it will stop before the size. And when the sentinel is not there, it will stop on the correct size. There might be issues with indirection calls. And there might also be lots of places where I need to adjust a for loop (as dan has pointed out) but its worth a try for V2. Best >=20 > Once enough sentinels have been removed, add warning if the final entry > is a sentinel. >=20 > Never really remove the check? (But surely you can rework the logic to > not count the number of elements up front, only while iterating.) >=20 >=20 > BR, > Jani. >=20 > >>=20 > >> > diff --git a/drivers/gpu/drm/i915/i915_perf.c b/drivers/gpu/drm/i915= /i915_perf.c > >> > index f43950219ffc..e4d7372afb10 100644 > >> > --- a/drivers/gpu/drm/i915/i915_perf.c > >> > +++ b/drivers/gpu/drm/i915/i915_perf.c > >> > @@ -4884,24 +4884,23 @@ int i915_perf_remove_config_ioctl(struct drm= _device *dev, void *data, > >> > =20 > >> > static struct ctl_table oa_table[] =3D { > >> > { > >> > - .procname =3D "perf_stream_paranoid", > >> > - .data =3D &i915_perf_stream_paranoid, > >> > - .maxlen =3D sizeof(i915_perf_stream_paranoid), > >> > - .mode =3D 0644, > >> > - .proc_handler =3D proc_dointvec_minmax, > >> > - .extra1 =3D SYSCTL_ZERO, > >> > - .extra2 =3D SYSCTL_ONE, > >> > - }, > >> > + .procname =3D "perf_stream_paranoid", > >> > + .data =3D &i915_perf_stream_paranoid, > >> > + .maxlen =3D sizeof(i915_perf_stream_paranoid), > >> > + .mode =3D 0644, > >> > + .proc_handler =3D proc_dointvec_minmax, > >> > + .extra1 =3D SYSCTL_ZERO, > >> > + .extra2 =3D SYSCTL_ONE, > >> > + }, > >> > { > >> > - .procname =3D "oa_max_sample_rate", > >> > - .data =3D &i915_oa_max_sample_rate, > >> > - .maxlen =3D sizeof(i915_oa_max_sample_rate), > >> > - .mode =3D 0644, > >> > - .proc_handler =3D proc_dointvec_minmax, > >> > - .extra1 =3D SYSCTL_ZERO, > >> > - .extra2 =3D &oa_sample_rate_hard_limit, > >> > - }, > >> > - {} > >> > + .procname =3D "oa_max_sample_rate", > >> > + .data =3D &i915_oa_max_sample_rate, > >> > + .maxlen =3D sizeof(i915_oa_max_sample_rate), > >> > + .mode =3D 0644, > >> > + .proc_handler =3D proc_dointvec_minmax, > >> > + .extra1 =3D SYSCTL_ZERO, > >> > + .extra2 =3D &oa_sample_rate_hard_limit, > >> > + } > >> > }; > >>=20 > >> The existing indentation is off, but fixing it doesn't really belong in > >> this patch. > > > > Agreed. But I actually was trying to fix something that checkpatch > > flagged. I'll change these back (which will cause this patch to be > > flagged). > > > > An alternative solution would be to fix the indentation as part of the > > preparation patches. Tell me what you think. > > > > Thx > > > >>=20 > >> BR, > >> Jani. > >>=20 > >>=20 > >> --=20 > >> Jani Nikula, Intel Open Source Graphics Center >=20 > --=20 > Jani Nikula, Intel Open Source Graphics Center --=20 Joel Granados --nwcq3i6cyedok5cv Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQGzBAABCgAdFiEErkcJVyXmMSXOyyeQupfNUreWQU8FAmSS/pIACgkQupfNUreW QU8FZgv+NJjIGObr29DU3w9gC84AcnW6dJTp9wHS00NxSXpo+c714JQ2xV0z8i/m wZbyBR21D/CkjJCTL0pwjCh1xi+PdMHmpB9mDlQSxEg6i+fJXBb7GvWvkOfNagP8 Z2t/NzP/RPP+/BjBP3QOGNyQWgZ4Jl6lMvzlt0aJlHMx7/QD7PRgnNN3KYiFzB+I FTf5QLbTT85TSPPoGBQCzF6Ych5vKNmIzRZxD2o1zPJFftGIcYOfYOC7vX/1tuOa 1l2+maHSi22uTAHFL3XKvcQBxuLeBCoAIgYOGeO0B+wApLgDVUdHb3PPMw74sOuD RtgKG6gEgO937g+zKo5xP6M5iLH8xYavJRYPNGH5FBfL7DDROXI6t9tjBpvpUbPS VQDducT3r8p7hbIhb+3MnRgJri1yF7SjRZF6iewJ9G3Rd7o8PlcLC3aTZLvilO9j 4YYKID1bOqsI9tcLY5oeM6HROqdmLhzFQQlzZCCz4Y/1XVO7ZKpJHP97wqBETkbq DRVhBHDj =lxdq -----END PGP SIGNATURE----- --nwcq3i6cyedok5cv-- From xen-devel-bounces@lists.xenproject.org Wed Jun 21 16:20:37 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 16:20:37 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552933.863199 (Exim 4.92) (envelope-from ) id 1qC0ZF-00019X-Id; Wed, 21 Jun 2023 16:20:25 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552933.863199; Wed, 21 Jun 2023 16:20:25 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC0ZF-00019Q-E4; Wed, 21 Jun 2023 16:20:25 +0000 Received: by outflank-mailman (input) for mailman id 552933; Wed, 21 Jun 2023 16:20:24 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC0ZE-0000tN-Bd for xen-devel@lists.xenproject.org; Wed, 21 Jun 2023 16:20:24 +0000 Received: from esa6.hc3370-68.iphmx.com (esa6.hc3370-68.iphmx.com [216.71.155.175]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 83db6185-104f-11ee-8611-37d641c3527e; Wed, 21 Jun 2023 18:20:22 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 83db6185-104f-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1687364422; h=from:to:cc:subject:date:message-id:mime-version: content-transfer-encoding; bh=JWOT/JQ+ICaJDAuccPtcGYCuAD6Tj28cH0e/UkQDHRw=; b=BWFredKdnKFLik1NtISIVCRBQgmGePhQrlcQo61qCh5Jpkqw0H9es6pm R57BoaGmRgR4/7BCiUyJ6Lq6cAdUtQZxyJRjS3SnunKFz98P+GX9AgQUl P+RGIW7eB+JHSYQMqtiSuaQNBl3C/7DeFTgxhXsyQM2zJr5+cB82lXdPf Q=; Authentication-Results: esa6.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none X-SBRS: 4.0 X-MesageID: 112968598 X-Ironport-Server: esa6.hc3370-68.iphmx.com X-Remote-IP: 162.221.156.123 X-Policy: $RELAYED IronPort-Data: A9a23:ylT4CqmgGv0pTwvdwaZMufno5gyjJkRdPkR7XQ2eYbSJt1+Wr1Gzt xJLUT+HOPvfM2X8f9onOYqz9khV6p/cx9IyTAE9/iFgHiMWpZLJC+rCIxarNUt+DCFhoGFPt JxCN4aafKjYaleG+39B55C49SEUOZmgH+a6U6icfHgqH2eIcQ954Tp7gek1n4V0ttawBgKJq LvartbWfVSowFaYCEpNg064gE0p5KyaVA8w5ARkPqgV5gaGyxH5MbpETU2PByqgKmVrNrbSq 9brlNmR4m7f9hExPdKp+p6TnpoiG+O60aCm0xK6aoD66vRwjnVaPpUTbZLwXXx/mTSR9+2d/ f0W3XCGpaXFCYWX8AgVe0Ew/yiTpsSq8pefSZS0mZT7I0Er7xIAahihZa07FdRwxwp5PY1B3 d84FhoMRwievu2Jx4mQTPtHu+BkJ9a+aevzulk4pd3YJfMvQJSFSKTW/95Imjw3g6iiH96HO ZBfM2A2Kk2dPVsWYAx/5JEWxY9EglH2dSFYr1SE47I6+WHJwCR60aT3McqTcduPLSlQth/B/ DOYrzmoUnn2MvSR5Cvc6Fn2vNbwkAPweNgTS+OxsfxT1Qj7Kms7V0RNCArTTeOCol6zXZdTJ lIZ/gIqrLMu7wq7Q9/lRRq6rXWY+BkGVLJ4CPYm4QuAzq7V5QexBWUeSDNFLts8u6ceRyEu1 1KPt8PkA3poqrL9YXCX+6qQrDiyETMINmJEbigBJSMa5/HzrYd1iQjAJuuPC4bs0IezQ2uph WnX8m5n3e57YdM3O7uT3nD5qTOFvoXwQTEy3S7RTEmYykRye9vwD2C30mQ3/cqsPa7AEAne5 ihbwpjEhAwdJcrTzXLQGY3hCJnsvq/Ya2OE3DaDCrF7r1yQF2ifkZe8Cd2UDGNgKY46dDDge yc/UisBtcYIbBNGgUKaCr9d6vjGLoC6T7wJrtiOMrJzjmFZLWdrBh1Ga0+KxHzKm0Mxi6w5M przWZ/yXSlAWfo/kWrsF711PVoXKscWnzm7eHwG507/jer2iIC9FN/pz2dinshmtfjZ8W05A v5UNteQygU3bQENSnC/zGLnFnhTdSJTLcmv+6RqmhurflIO9JcJV6WAntvMuuVNw8xoqws/1 iHhBhAAlAak3hUq62yiMxheVV8mZr4nxVpTAMDmFQ/0s5T/Se5DNJsiSqY= IronPort-HdrOrdr: A9a23:b5c+QagL/320eO0Ez1ys07bX83BQXtAji2hC6mlwRA09TySZ// rAoB19726RtN9xYgBEpTnuAsi9qB/nmKKdgrNhX4tKPjOHhILAFugLhuHfKlXbakrDH4Vmu5 uIHZITNDSJNykYsfrH X-Talos-CUID: 9a23:8Q3/1GwcIdXYviBzrugeBgU3Ov4Pc1TF0U7fHEiDImB7Y4CxDlSPrfY= X-Talos-MUID: 9a23:qDXsWgSsqfHvEHF3RXTiqSA7Luwy2Z2RBWAGsc8H5JeNci5JbmI= X-IronPort-AV: E=Sophos;i="6.00,261,1681185600"; d="scan'208";a="112968598" From: Anthony PERARD To: CC: Anthony PERARD , Stefano Stabellini , Julien Grall , Jan Beulich , Andrew Cooper , George Dunlap , Wei Liu Subject: [XEN PATCH 0/3] build: reduce number of $(shell) execution on make 4.4 Date: Wed, 21 Jun 2023 17:19:56 +0100 Message-ID: <20230621161959.1061178-1-anthony.perard@citrix.com> X-Mailer: git-send-email 2.40.1 MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit Patch series available in this git branch: https://xenbits.xen.org/git-http/people/aperard/xen-unstable.git br.build-exported-shell-command-value-v1 With GNU make 4.4, the number of execution of the command present in $(shell ) in exported variables increased greatly. This is probably because as of make 4.4, exported variable are also added to the environment of $(shell ) construct. >From the annoncement: https://lists.gnu.org/archive/html/info-gnu/2022-10/msg00008.html > * WARNING: Backward-incompatibility! > Previously makefile variables marked as export were not exported to commands > started by the $(shell ...) function. Now, all exported variables are > exported to $(shell ...). If this leads to recursion during expansion, then > for backward-compatibility the value from the original environment is used. > To detect this change search for 'shell-export' in the .FEATURES variable. Also, there's a new paragraph in the GNU make manual, but it's a warning about exporting all variable, still it might be relevant to the new observed behavior: https://www.gnu.org/software/make/manual/make.html#Variables_002fRecursion > Adding a variable’s value to the environment requires it to be expanded. If > expanding a variable has side-effects (such as the info or eval or similar > functions) then these side-effects will be seen every time a command is > invoked. The issue was reported on IRC by jandryuk. So, I've locate a few obvious candidate to fix, maybe there's more $(shell) to change? Anthony PERARD (3): build: define ARCH and SRCARCH later build: evaluate XEN_BUILD_* and XEN_DOMAIN on first use Config.mk: evaluate XEN_COMPILE_ARCH and XEN_OS on first use Config.mk | 6 +++--- xen/Makefile | 21 +++++++++++---------- 2 files changed, 14 insertions(+), 13 deletions(-) -- Anthony PERARD From xen-devel-bounces@lists.xenproject.org Wed Jun 21 16:20:37 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 16:20:37 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552932.863188 (Exim 4.92) (envelope-from ) id 1qC0Z9-0000ta-7p; Wed, 21 Jun 2023 16:20:19 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552932.863188; Wed, 21 Jun 2023 16:20:19 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC0Z9-0000tT-5I; Wed, 21 Jun 2023 16:20:19 +0000 Received: by outflank-mailman (input) for mailman id 552932; Wed, 21 Jun 2023 16:20:18 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC0Z7-0000tN-SZ for xen-devel@lists.xenproject.org; Wed, 21 Jun 2023 16:20:18 +0000 Received: from esa5.hc3370-68.iphmx.com (esa5.hc3370-68.iphmx.com [216.71.155.168]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 7fd7d6ea-104f-11ee-8611-37d641c3527e; Wed, 21 Jun 2023 18:20:14 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 7fd7d6ea-104f-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1687364414; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=Gb48MUKG+E+eor+Y9T0107+AbYui+pKfJlvFsRozBlw=; b=a/iu2aBYUubJjdWB5iU4lv8o/t7VpnUQC4J14Z0A65BazeccWf3LMjfY hY+i04+Dtg8SJvPGtyestnCHif+0thUCMfA8dT7vTbTkbQrMju66kiVYz PCN32KCHIBqrWkP+5rqp9qPIuuN3VlqZ04SZe8BiEKQ6Nc4VVeF4eN1sk U=; Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none X-SBRS: 4.0 X-MesageID: 112386257 X-Ironport-Server: esa5.hc3370-68.iphmx.com X-Remote-IP: 162.221.156.123 X-Policy: $RELAYED IronPort-Data: A9a23:YRusZqAFMWTFIRVW/xbjw5YqxClBgxIJ4kV8jS/XYbTApD5x1WZVx 2YeWD+DM/eNZzfyc9lwYYW+8EgFupWGm9RiQQY4rX1jcSlH+JHPbTi7wuUcHAvJd5GeExg3h yk6QoOdRCzhZiaE/n9BCpC48T8nk/nOHuGmYAL9EngZbRd+Tys8gg5Ulec8g4p56fC0GArIs t7pyyHlEAbNNwVcbCRMs8pvlDs15K6p4G1C5wRiDRx2lAS2e0c9Xcp3yZ6ZdxMUcqEMdsamS uDKyq2O/2+x13/B3fv8z94X2mVTKlLjFVDmZkh+AsBOsTAbzsAG6Y4pNeJ0VKtio27hc+ada jl6ncfYpQ8BZsUgkQmGOvVSO3kW0aZuoNcrLZUj2CA6IoKvn3bEmp1T4E8K0YIw2bt4Hm5i/ NUkMiEcNw+ip8S276K2Vbw57igjBJGD0II3v3hhyXfSDOo8QICFSKLPjTNa9G5u3IYUR6+YP pdHL2M1N3wsYDUWUrsTIJs4gOevgGi5azBCoUiZjaE2/3LS3Ep6172F3N/9I4XQHpULxBvHz o7A12vdDhMcEo2f8BqA8W+i27TJzBngV51HQdVU8dY12QbOlwT/EiY+RVa95PW0lEO6c9ZeM FAPvDojq7Ao806mRcW7WAe3yFaGtxgQQctNEMU17QiMzuzf5APxLmoOQyNFadcmnNQrXjFs3 ViM9/vrGDhuvbu9WX+bsLCOoluaIjMJJGUPYSsFSwot4NT5pow3yBXVQb5LD6qdntDzXzbqz Fi3QDMW3utJy5RRjuPioA6B2mj3znTUcuIrziaKUX2qwgpQWJS0dtW3yHj97dlQIZnMGzFto 0M4d9iiAPEmVM/dy3bdH7xdRtlF9N7ebmSC3AcH840Jsm30piX9Jd04DCRWfh8BDyoSRdP+j KY/Uyt17YQbAnalZLQfj2mZW5VzlviI+TgIu5npgjtyjntZLlXvENlGPxL44owUuBFEfVsDE Zmaa92wKn0RFL5qyjG7L89Ej+90nHBgnT6DH8Chp/hC7VZ5TCTPIYrpzXPUNrxphE96iFi9H ylj2zuilEwEDbyWjtj/+o8PN1EaRUXX9rivw/G7gtWre1I8cEl4Uq+5/F/UU9A990ijvruSr y7Vt44x4AaXuEAr3i3aNiw8MO+zBs0XQLBSFXVEAGtEEkMLOe6HhJrzvbNtFVX73ISPFcJJc sQ= IronPort-HdrOrdr: A9a23:CyWqda9ic9VO3+SwEJVuk+AKI+orL9Y04lQ7vn2ZKCYlCPBw8v rEoB1173HJYVoqNU3I2urhBED4ewK7yXct2/hpAV7AZmjbUQmTXfpfBOLZqlWLJ8SUzIFgPM lbH5SWR+eAbmRSvILW7Ay5DNo60LC8gcWVbYC39QYUcejGUdAF0+48MHf9LmRmAA1LH4AwGp a/6tovnUvDRUgq X-Talos-CUID: 9a23:cpD+C2z7MWoQGQvJ9PGWBgU3R886fVHU5UvKMl7hFkdJbr26WVKPrfY= X-Talos-MUID: =?us-ascii?q?9a23=3AJo9F+w5c5aw3PGKfxApnzv65xoxnx6isDmZckaw?= =?us-ascii?q?mvsqZO3ErPWanlzuoF9o=3D?= X-IronPort-AV: E=Sophos;i="6.00,261,1681185600"; d="scan'208";a="112386257" From: Anthony PERARD To: CC: Anthony PERARD , Jason Andryuk , Andrew Cooper , "George Dunlap" , Jan Beulich , "Julien Grall" , Stefano Stabellini , Wei Liu Subject: [XEN PATCH 1/3] build: define ARCH and SRCARCH later Date: Wed, 21 Jun 2023 17:19:57 +0100 Message-ID: <20230621161959.1061178-2-anthony.perard@citrix.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230621161959.1061178-1-anthony.perard@citrix.com> References: <20230621161959.1061178-1-anthony.perard@citrix.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain Defining ARCH and SRCARCH later in xen/Makefile allows to switch to immediate evaluation variable type. ARCH and SRCARCH depends on value defined in Config.mk and aren't used TARGET_SUBARCH or TARGET_ARCH, and not before it's needed in a sub-make or a rule. This will help reduce the number of times the shell rune is been run. With GNU make 4.4, the number of execution of the command present in these $(shell ) increased greatly. This is probably because as of make 4.4, exported variable are also added to the environment of $(shell ) construct. Also, `make -d` shows a lot of these: Makefile:39: not recursively expanding SRCARCH to export to shell function Makefile:38: not recursively expanding ARCH to export to shell function Reported-by: Jason Andryuk Signed-off-by: Anthony PERARD --- xen/Makefile | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/xen/Makefile b/xen/Makefile index e89fc461fc4b..9631e45cfb9b 100644 --- a/xen/Makefile +++ b/xen/Makefile @@ -35,12 +35,6 @@ MAKEFLAGS += -rR EFI_MOUNTPOINT ?= $(BOOT_DIR)/efi -ARCH=$(XEN_TARGET_ARCH) -SRCARCH=$(shell echo $(ARCH) | \ - sed -e 's/x86.*/x86/' -e s'/arm\(32\|64\)/arm/g' \ - -e s'/riscv.*/riscv/g') -export ARCH SRCARCH - # Allow someone to change their config file export KCONFIG_CONFIG ?= .config @@ -241,6 +235,13 @@ include scripts/Kbuild.include include $(XEN_ROOT)/Config.mk # Set ARCH/SUBARCH appropriately. + +ARCH := $(XEN_TARGET_ARCH) +SRCARCH := $(shell echo $(ARCH) | \ + sed -e 's/x86.*/x86/' -e s'/arm\(32\|64\)/arm/g' \ + -e s'/riscv.*/riscv/g') +export ARCH SRCARCH + export TARGET_SUBARCH := $(XEN_TARGET_ARCH) export TARGET_ARCH := $(shell echo $(XEN_TARGET_ARCH) | \ sed -e 's/x86.*/x86/' -e s'/arm\(32\|64\)/arm/g' \ -- Anthony PERARD From xen-devel-bounces@lists.xenproject.org Wed Jun 21 16:20:38 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 16:20:38 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552934.863208 (Exim 4.92) (envelope-from ) id 1qC0ZH-0001Q2-TM; Wed, 21 Jun 2023 16:20:27 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552934.863208; Wed, 21 Jun 2023 16:20:27 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC0ZH-0001Pt-Ps; Wed, 21 Jun 2023 16:20:27 +0000 Received: by outflank-mailman (input) for mailman id 552934; Wed, 21 Jun 2023 16:20:26 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC0ZG-0000tN-ES for xen-devel@lists.xenproject.org; Wed, 21 Jun 2023 16:20:26 +0000 Received: from esa6.hc3370-68.iphmx.com (esa6.hc3370-68.iphmx.com [216.71.155.175]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 86a7faa8-104f-11ee-8611-37d641c3527e; Wed, 21 Jun 2023 18:20:24 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 86a7faa8-104f-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1687364424; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=za3buGGichHq8l7ZDrIYQqz3imkrrBJj9JEN24suhkc=; b=BnJ2InxGIyHAzTl85hY7P6iqsPdEBPE60odSxjFeW85R99MT69EUXIEV yJHrGS0Fl+rXHsk01FaGztC26zyIPw+cdqh5/vn45IEBLmD1XyYeVOeiw vqJaST2jXCsp9C9kA8g5NNYn8WEAXa9TM6cMrURDzj8HfEfEkS8QJelo7 g=; Authentication-Results: esa6.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none X-SBRS: 4.0 X-MesageID: 112968613 X-Ironport-Server: esa6.hc3370-68.iphmx.com X-Remote-IP: 162.221.156.123 X-Policy: $RELAYED IronPort-Data: A9a23:d68rDq1mvf/mAbqcQvbD5e1xkn2cJEfYwER7XKvMYLTBsI5bp2RSy 2IWCjyFOfzZNmanLYslbYjl8RgP7JLUnNRjHgs5pC1hF35El5HIVI+TRqvS04F+DeWYFR46s J9OAjXkBJppJpMJjk71atANlVEliefTAOK6ULWeUsxIbVcMYD87jh5+kPIOjIdtgNyoayuAo tq3qMDEULOf82cc3lk8teTb8HuDgNyo4GlD5gJkPKgX1LPjvyJ94Kw3dPnZw0TQGuG4LsbiL 87fwbew+H/u/htFIrtJRZ6iLyXm6paLVeS/oiI+t5qK23CulQRrukoPD9IOaF8/ttm8t4sZJ OOhF3CHYVxB0qXkwIzxWvTDes10FfUuFLTveRBTvSEPpqFvnrSFL/hGVSkL0YMkFulfIzwTq dUdKWwxSxmDp7ik3LThcOdRmZF2RCXrFNt3VnBIyDjYCbAtQIzZQrWM7thdtNsyrpkQR7CEP ZNfMGcxKk2aOHWjOX9OYH46tO6umnn4dSwesF+PrLA7y2PS0BZwwP7mN9+9ltmiHJwPzxjI+ Dudl4j/KjMZNJ+0ygeMzm2D16zonT7+B5I9OKLto5aGh3XMnzdOWXX6T2CTsfS/z0KzRd9bA 0gV4TY167g/8lSxSdvwVAH+p2SL1jYeUtxcCfwn6ymCz6PV50CSAW1sZjxLZcEitcQ2bSc3z VLPlNTsbRRtrbmURHS15rqS6zSoNkA9NnQebCUJSQ8E5djLo4wpiB/LCNF5H8adkdndCTz2h TeQo0ADa6471JBRkf/hpBae3mzq/8KSJuIo2unJdkD4s19QYY/5W6mh6XiB/+pGdryXc0bU6 RDohPOiAPAy4YClzXLdH79dQ+j5vZ5pIxWH3wcxQsBJGyCFvif6INsOuGwWyFJBaJ5sRNP/X KPEVeq9Drd3NWDiU6J4apnZ5y8Cnfm5ToSNuhw5g7NzjnlNmOyvpnsGiba4hTyFraTVufhX1 W2nWcitF20GLq9s0SC7QewQuZdymHBhnzONHc2rlUT9uVZ7WJJyYe1fWGZik8hjtP/UyOkr2 4s32zS2J+V3D7SlP3i/HX87JlEWN3krba0aWOQOHtNv1jFOQTl7Y9eImONJRmCQt/gN/gs+1 i3nCxAwJZuWrSGvFDhmnVgzNO+wBcoj9ilT0O5FFQ/A5kXPqL2HtM83H6bbt5F9rISPEdYco yE5Rvi9 IronPort-HdrOrdr: A9a23:O4+ueq38PCzK4QmNl4MYoAqjBLQkLtp133Aq2lEZdPRUGvb2qy nIpoV96faUskdpZJhOo7G90cW7LE80sKQFg7X5Xo3SODUO2lHJEGgK1+KLqFfd8m/Fh4tgPM 9bAs5D4bbLY2SS4/yX3ODBKadC/OW6 X-Talos-CUID: 9a23:qAvoRGBp+nLofdL6Ews6qRI9H8F5TljUzFeKMVO+U1xndaLAHA== X-Talos-MUID: 9a23:51LYawp+qJH4NQlFhRoezxNhNIRD4JmnNF8iwNYhu9SBajxfFyjI2Q== X-IronPort-AV: E=Sophos;i="6.00,261,1681185600"; d="scan'208";a="112968613" From: Anthony PERARD To: CC: Anthony PERARD , Jason Andryuk , Andrew Cooper , "George Dunlap" , Jan Beulich , "Julien Grall" , Stefano Stabellini , Wei Liu Subject: [XEN PATCH 2/3] build: evaluate XEN_BUILD_* and XEN_DOMAIN on first use Date: Wed, 21 Jun 2023 17:19:58 +0100 Message-ID: <20230621161959.1061178-3-anthony.perard@citrix.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230621161959.1061178-1-anthony.perard@citrix.com> References: <20230621161959.1061178-1-anthony.perard@citrix.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain With GNU make 4.4, the number of execution of the command present in these $(shell ) increased greatly. This is probably because as of make 4.4, exported variable are also added to the environment of $(shell ) construct. Also, `make -d` shows a lot of these: Makefile:15: not recursively expanding XEN_BUILD_DATE to export to shell function Makefile:16: not recursively expanding XEN_BUILD_TIME to export to shell function Makefile:17: not recursively expanding XEN_BUILD_HOST to export to shell function Makefile:14: not recursively expanding XEN_DOMAIN to export to shell function So, to avoid having these command been run more than necessery, we will use a construct to evaluate on first use. Reported-by: Jason Andryuk Signed-off-by: Anthony PERARD --- xen/Makefile | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/xen/Makefile b/xen/Makefile index 9631e45cfb9b..b58c2a7f4539 100644 --- a/xen/Makefile +++ b/xen/Makefile @@ -11,10 +11,10 @@ export XEN_FULLVERSION = $(XEN_VERSION).$(XEN_SUBVERSION)$(XEN_EXTRAVERSION) -include xen-version export XEN_WHOAMI ?= $(USER) -export XEN_DOMAIN ?= $(shell ([ -x /bin/dnsdomainname ] && /bin/dnsdomainname) || ([ -x /bin/domainname ] && /bin/domainname || echo [unknown])) -export XEN_BUILD_DATE ?= $(shell LC_ALL=C date) -export XEN_BUILD_TIME ?= $(shell LC_ALL=C date +%T) -export XEN_BUILD_HOST ?= $(shell hostname) +export XEN_DOMAIN ?= $(eval XEN_DOMAIN := $(shell ([ -x /bin/dnsdomainname ] && /bin/dnsdomainname) || ([ -x /bin/domainname ] && /bin/domainname || echo [unknown])))$(XEN_DOMAIN) +export XEN_BUILD_DATE ?= $(eval XEN_BUILD_DATE := $(shell LC_ALL=C date))$(XEN_BUILD_DATE) +export XEN_BUILD_TIME ?= $(eval XEN_BUILD_TIME := $(shell LC_ALL=C date +%T))$(XEN_BUILD_TIME) +export XEN_BUILD_HOST ?= $(eval XEN_BUILD_HOST := $(shell hostname))$(XEN_BUILD_HOST) # Best effort attempt to find a python interpreter, defaulting to Python 3 if # available. Fall back to just `python` if `which` is nowhere to be found. -- Anthony PERARD From xen-devel-bounces@lists.xenproject.org Wed Jun 21 16:20:39 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 16:20:39 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552935.863218 (Exim 4.92) (envelope-from ) id 1qC0ZJ-0001fy-5V; Wed, 21 Jun 2023 16:20:29 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552935.863218; Wed, 21 Jun 2023 16:20:29 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC0ZJ-0001fr-2G; Wed, 21 Jun 2023 16:20:29 +0000 Received: by outflank-mailman (input) for mailman id 552935; Wed, 21 Jun 2023 16:20:27 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC0ZH-0000tN-J3 for xen-devel@lists.xenproject.org; Wed, 21 Jun 2023 16:20:27 +0000 Received: from esa6.hc3370-68.iphmx.com (esa6.hc3370-68.iphmx.com [216.71.155.175]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 86bd7a0c-104f-11ee-8611-37d641c3527e; Wed, 21 Jun 2023 18:20:25 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 86bd7a0c-104f-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1687364425; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=FeiN0tZrNokVbRAYwlZ3w177gJNyDQjG2lOR1qJ+z1Q=; b=MkhyOWrv9TaxZVBygKMdBLdLrLwnKQBsHJiU6rfkA8TEBuP0ZEHENoa9 T5ktPqX8V589HZNlo+Yi8CEAHIeooYftehwn0NnQrN62iBpsAX2kOjBeU mGOmckreAkDYyVB63NvRrRqE0buVQzNOzaxVT07yIQw0AYl3XAb8KeplK 8=; Authentication-Results: esa6.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none X-SBRS: 4.0 X-MesageID: 112968615 X-Ironport-Server: esa6.hc3370-68.iphmx.com X-Remote-IP: 162.221.156.123 X-Policy: $RELAYED IronPort-Data: A9a23:aK77MKLbiVy/ipZGFE+R75UlxSXFcZb7ZxGr2PjKsXjdYENSgWAEx 2MfWjuGMvyMajOmfNwjYY63/EgF6MTVmN4xHFRlqX01Q3x08seUXt7xwmUcnc+xBpaaEB84t ZV2hv3odp1coqr0/0/1WlTZhSAgk/rOHvykU7Ss1hlZHWdMUD0mhQ9oh9k3i4tphcnRKw6Ws Jb5rta31GWNglaYCUpKrfrbwP9TlK6q4mhA4AZnPawjUGL2zBH5MrpOfcldEFOgKmVkNrbSb /rOyri/4lTY838FYj9yuu+mGqGiaue60Tmm0hK6aYD76vRxjnVaPpIAHOgdcS9qZwChxLid/ jnvWauYEm/FNoWU8AgUvoIx/ytWZcWq85efSZSzXFD6I+QrvBIAzt03ZHzaM7H09c5VXDwS3 PkZdAwoZxCj3fCqxuiBRNRz05FLwMnDZOvzu1llxDDdS/0nXYrCU+PB4towMDUY354UW6yEP oxANGQpNU6bC/FMEg5/5JYWleG0hn75YntApUicv6Yf6GnP1g1hlrPqNbI5f/TTHJ8EwBbG/ z+uE2LROy1AafLO4gi/3nPyo83NrzPqV4tMG+jtnhJtqALKnTFCYPEMbnOrrP/8hkOgVtZ3L 00P5jFovaU07FasTNT2Q1u/unHslhwVXdZKAvA5wA6Iw6vQpQ2eAwAsTDRMddgnv88eXiEx2 xmCmNaBLT5ytLyYT1qN+7HSqim9UQAONnMLbyIASQoD4vHgrZs1gxaJScxseIaqivXlFDe2x CqFxBXSnJ1K05RNjf/iuwma3XT1/MOhohMJChv/fD/4sip8ZdKZQoWoyQLJ8fAaFoikUQzU1 JQboPRy/NziHLnUynzSGrVSReHzjxqWGGaC2AAyRvHN4xzooif+Jt4IvVmSMW8zaq45lSnVj Fg/UO+7zLtaJzOUYKB+eOpd4Ox6nPG7RbwJuh05B+eig6SdlyfdpkmCnWbKgwjQfLEEyMnTw 6uzf8e2Fmo9Aq961jewTOp1+eZ1ln9klT2LGMChn07PPV+iiJm9E+1tDbdzRrphsPPsTPv9r r6zyPdmOz0ACbajM0E7AKYYLEwQLGhTOHwFg5U/SwJ3GSI/QDtJI6aIkdscl3lNw/w9ehHgo ivsBSe1CTPX2RX6FOl9QiA/NOy3Acok9hrW/0UEZD6V5pTqWq73hI93Snf9VeN/nAC/5ZaYl 8U4Rvg= IronPort-HdrOrdr: A9a23:nKWhJaqIi8UpSiAqhMSQJjMaV5oteYIsimQD101hICG8cqSj+P xG+85rsiMc6QxhIU3I9urgBEDtex7hHNtOkOss1NSZLW3bUQmTTL2KhLGKq1aLJ8S9zJ856U 4JSdkZNDSaNzZHZKjBjDVQa+xQo+W6zA== X-Talos-CUID: 9a23:HPgsfGzPI65Ukn8vPBLsBgU2R515W3jckEv1Kk+YU3R1TuevR2KPrfY= X-Talos-MUID: =?us-ascii?q?9a23=3AGmrBSQ7stVpQweutcoSAkZDuxoxR3/7zJhEmo68?= =?us-ascii?q?qupehFy5CKyaShWq4F9o=3D?= X-IronPort-AV: E=Sophos;i="6.00,261,1681185600"; d="scan'208";a="112968615" From: Anthony PERARD To: CC: Anthony PERARD , Jason Andryuk , Andrew Cooper , "George Dunlap" , Jan Beulich , "Julien Grall" , Stefano Stabellini , Wei Liu Subject: [XEN PATCH 3/3] Config.mk: evaluate XEN_COMPILE_ARCH and XEN_OS on first use Date: Wed, 21 Jun 2023 17:19:59 +0100 Message-ID: <20230621161959.1061178-4-anthony.perard@citrix.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230621161959.1061178-1-anthony.perard@citrix.com> References: <20230621161959.1061178-1-anthony.perard@citrix.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain With GNU make 4.4, the number of execution of the command present in these $(shell ) increased greatly. This is probably because as of make 4.4, exported variable are also added to the environment of $(shell ) construct. So, to avoid having these command been run more than necessery, we will use a construct to evaluate on first use. Reported-by: Jason Andryuk Signed-off-by: Anthony PERARD --- Config.mk | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Config.mk b/Config.mk index c529b1ba19cd..5fbdbc4500d2 100644 --- a/Config.mk +++ b/Config.mk @@ -19,13 +19,13 @@ or = $(if $(strip $(1)),$(1),$(if $(strip $(2)),$(2),$(if $(strip $(3)),$( -include $(XEN_ROOT)/.config -XEN_COMPILE_ARCH ?= $(shell uname -m | sed -e s/i.86/x86_32/ \ +XEN_COMPILE_ARCH ?= $(eval XEN_COMPILE_ARCH := $(shell uname -m | sed -e s/i.86/x86_32/ \ -e s/i86pc/x86_32/ -e s/amd64/x86_64/ \ -e s/armv7.*/arm32/ -e s/armv8.*/arm64/ \ - -e s/aarch64/arm64/) + -e s/aarch64/arm64/))$(XEN_COMPILE_ARCH) XEN_TARGET_ARCH ?= $(XEN_COMPILE_ARCH) -XEN_OS ?= $(shell uname -s) +XEN_OS ?= $(eval XEN_OS := $(shell uname -s))$(XEN_OS) CONFIG_$(XEN_OS) := y -- Anthony PERARD From xen-devel-bounces@lists.xenproject.org Wed Jun 21 16:23:12 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 16:23:12 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552957.863228 (Exim 4.92) (envelope-from ) id 1qC0bk-0003A0-IA; Wed, 21 Jun 2023 16:23:00 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552957.863228; Wed, 21 Jun 2023 16:23:00 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC0bk-00039t-FA; Wed, 21 Jun 2023 16:23:00 +0000 Received: by outflank-mailman (input) for mailman id 552957; Wed, 21 Jun 2023 16:22:59 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC0bi-00039n-U0 for xen-devel@lists.xenproject.org; Wed, 21 Jun 2023 16:22:59 +0000 Received: from mx0a-0039f301.pphosted.com (mx0a-0039f301.pphosted.com [148.163.133.242]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id e068a603-104f-11ee-8611-37d641c3527e; Wed, 21 Jun 2023 18:22:56 +0200 (CEST) Received: from pps.filterd (m0174676.ppops.net [127.0.0.1]) by mx0a-0039f301.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 35LEMGS8022913; Wed, 21 Jun 2023 16:22:45 GMT Received: from eur04-db3-obe.outbound.protection.outlook.com (mail-db3eur04lp2055.outbound.protection.outlook.com [104.47.12.55]) by mx0a-0039f301.pphosted.com (PPS) with ESMTPS id 3rbjagveft-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 21 Jun 2023 16:22:45 +0000 Received: from DB8PR03MB6108.eurprd03.prod.outlook.com (2603:10a6:10:ed::15) by AM7PR03MB6231.eurprd03.prod.outlook.com (2603:10a6:20b:142::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.23; Wed, 21 Jun 2023 16:22:42 +0000 Received: from DB8PR03MB6108.eurprd03.prod.outlook.com ([fe80::11f9:615a:4d9a:a5d2]) by DB8PR03MB6108.eurprd03.prod.outlook.com ([fe80::11f9:615a:4d9a:a5d2%6]) with mapi id 15.20.6521.023; Wed, 21 Jun 2023 16:22:41 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: e068a603-104f-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=QKd0py37KJhjF80XQVN2R6W+NYJlux0pDCFX5rc+om0qW68X12lcrc2s6S7tz5ucreXDQrMgyYyrruLr+7lnE492UNbytmDaYEdrGqxKXnB4M2ropHjTRXUiosX/RMIKEh27bGqJNUkUwGXTfOCq0TSp2DbyOsjiiNKDyuCecV1SxV7j5UcKUTowVfs9GITmiMhL2Z/FgDQ3k9RArY+I/PR30rYaLtag//TEufQRQ4HMYhNRL5xsZwaggItsuhYCQ3om9Lnnn+0EEGWNzZxr6uH/4BmzPgdul4OSmuyQC89VrIwuLIDlqT+qSWwhTShCxGYMWn0w4F/VIgqHdoBG9Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=X/D2NJMRMD9S1NncsUQwzmdZjNDh4NsYU2OG0KrJsNU=; b=S9GQ0qa98iy4i9+rjPPDlzPkBYsVRhsEQSV6ssUe3tIhJZagX8cquZht783UkGGzH3rG01+LewZkzD93POJecn3DS4GrhdEi+b6J+kQaCZKGJihv4bV6jDJmnCP4Q7S2pLsmFcWGxOByIvNYZmEGWwYpSC5OANiE0nNUv2o2pVozAn4RKpSm3ypTNAk2QoqYscFqSPxNX94m2e1HfeuCdl5bSYRqxYaDiUfmPmRTvq4dyAWASwnoIFTfVLPmfnBaRD8KcWdMo7ow2xxOh3f6xGrWmLziBceGQjYripv3RqN5Gcp5b/wU7bkIcaYJz45AeE1Xxv4S7lKYKM5IjDTisQ== 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 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=epam.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=X/D2NJMRMD9S1NncsUQwzmdZjNDh4NsYU2OG0KrJsNU=; b=TOZ2rZi4kGwEswz0qmx41bz6G4g8UPPQMnGI8k2Sy17/ktkSo8vVIp8hxPjE9WYEIiBv37UxcUtsQWH/aawo75IWmvYC17Z1FZWMxJz8+aZ680fUmGb4gxng+3p13Gt8v08YTavOJ2qysGJMehcAxBOsuM4m43khFXQsPqXDowfSTjEzLtDCU790vAwP2jaFql8cl48hUH0X0nb4exRN0yCF7uPaMqRBkpv9o/SKky7xBoWh/2GLCZmMtni4FA/DUM1+HK8oJIJJpM14RH0xTaCh+C6X/Lq2AYbzTSTpYXHslmKUrW6An898+hlBg1H1hrDm9+7uZYgW1S5NmVuAXw== From: Oleksandr Tyshchenko To: Petr Pavlu CC: "xen-devel@lists.xenproject.org" , "linux-kernel@vger.kernel.org" , "sstabellini@kernel.org" , "jgross@suse.com" Subject: Re: [PATCH 1/2] xen/virtio: Fix NULL deref when a bridge of PCI root bus has no parent Thread-Topic: [PATCH 1/2] xen/virtio: Fix NULL deref when a bridge of PCI root bus has no parent Thread-Index: AQHZpEMsTHUEiJGFk0eoUHhzZZ0I8K+VcKUA Date: Wed, 21 Jun 2023 16:22:41 +0000 Message-ID: <249a24a2-497f-7695-452d-f509ebe89a14@epam.com> References: <20230621131214.9398-1-petr.pavlu@suse.com> <20230621131214.9398-2-petr.pavlu@suse.com> In-Reply-To: <20230621131214.9398-2-petr.pavlu@suse.com> Accept-Language: en-US, ru-RU Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ms-publictraffictype: Email x-ms-traffictypediagnostic: DB8PR03MB6108:EE_|AM7PR03MB6231:EE_ x-ms-office365-filtering-correlation-id: 77bacb24-a0e2-4a15-99b6-08db7273bce0 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: XENO/y1zOSYEgRhp2/qXq+u2mvvH9fO1ttxWls0tejxhx5MbWWRZsP6FxqsNFt3dR7TEat5BBGHLdlVKhUtf7n1ShyWFHRSM41lKedNtNX1FhI2wCSgSBnUzcRuzwyV+coqKgp3lmT1DS889ghIge8lAH2RrJNEeKK9+SOG8TBRGfeIoePYr2wDzuNqsGUedRbCnXNgFUN3V97J/wKuYQbzLhT4dHaZgn2j7oOtDihR0Y8BMs0CxWVt7xPfbmNaD5OvIfkFPDOp4vlGRIXLNw8v6McBMHUYA6AuNXUeYyi4VGMPi/PiIt1wtdZCm6Mg99rBoWaXodwEYRpqTJyvUvfNuhHOVs6Gcp3BgLQWaD+YHl2Dl6Xmr3gWpL+03rq9PPSCzAQMYjeQvx0BKMMo1h9s1O1vImRwUr2SoDpvDe7Bw89NzO64hBhtzf7Iiv84pmqYiBwBYTJJUOs/+amp+KiLn2zZgSxY1uaX43st6PeBj5mAEAYCvfk8X7R399Af1Qkl4F/p8P/QvQ0RqrUT9Gr51u0ZsWZ1UTytm/9VnrCp+aEUjIFWN5+ckEyvr8G1UI+YD1Vn09kVmFguVK8QmUaPkTNcwKrAKDvxtq9nbVu9laQOgugs6ImThxuJiIMQD5OLqFLL4BO1d5VpBK41P7g== x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DB8PR03MB6108.eurprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(366004)(376002)(136003)(396003)(346002)(39860400002)(451199021)(5660300002)(66556008)(64756008)(66446008)(76116006)(4326008)(91956017)(66946007)(66476007)(6916009)(316002)(36756003)(2906002)(31686004)(8936002)(41300700001)(8676002)(54906003)(6486002)(86362001)(31696002)(38070700005)(478600001)(45080400002)(122000001)(38100700002)(6506007)(186003)(53546011)(6512007)(26005)(71200400001)(2616005)(83380400001)(45980500001);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?bzNZZEx5RDl0UW9DcU4wSTdsU0owbUZiOGdMRFREM2FJT2JicDIvUTlYREZG?= =?utf-8?B?bEdLWURUcm41b2RXdTZXK3U4NE9FZVVGRmlDb0hVM291TE5DSWNFbitVZ3JM?= =?utf-8?B?eCtna3NFZW1tNkJoN2I1VjNtRnJwSGRCL2ZHeXdraDV0MHZKbSsyTkY0em1l?= =?utf-8?B?d1hvckdxUExJaXdUdWxTN2JLSjd4cU5Ha0RNUnRMT1c3c3Rvc1gzdTlGN2Vp?= =?utf-8?B?Nnk5WGo0a0RDVy96dE9CSS9zQ3VVYlVBRDJPTFV4U1lrQ2hFa29JZmtmVlV5?= =?utf-8?B?VytucHlzdDBYa3F0NlREdEN4ODdJWW9sdEdUQzlJeDRhRFZ3Si9YZ1NYaGlC?= =?utf-8?B?MllNcDJGWGJwNEpGQlR5U1hOYzBZNnFMNEZCamJ3WnFTeWF2dU16RzUrT2Jq?= =?utf-8?B?d2cxYS9mUlVrWklUVld6RDZhb0gyYWlsMzg5WmVSRHpHMDVDQnQzY1Fjclh4?= =?utf-8?B?b1dqZkJkTS9aUkh6cEMvNisvSnhWSGkyR3h3clJVdkZ5eVVmQ3NNcFVSYkFV?= =?utf-8?B?djlmbHhqRXIxNi9HUDFaaWVhOVBmeFVtYmdERm5FK1hYMTY5UDR4ZzB3Si9n?= =?utf-8?B?KzZJZ2M2Y3BZRmtxOTI0L3ZsZnhabE53c1BmUHJ0L1U4V3VxdWxObVRacE40?= =?utf-8?B?dkI4Vnlia0xid0Z0WUlmVTl6OWt2WnE4YVlYYUUzaWc0ZXZCbHBZT0d1Q0pX?= =?utf-8?B?MjVQanlPaVFDTk1zSS9YRWdudC9QTWNuQTFQV3haNmwzbFNCZ05xWGM3WFhl?= =?utf-8?B?Zkt1UG5NRTBTWTB3dS94M3lRdHBUMVJLQjVaOCtlUFdXd3h0NGhKR2ZwYXI3?= =?utf-8?B?bTlVcGdaakc5L0tDMzNESHlVT3E5UGpxeFJxV3dtK2RSMmJPTUFPNjBBWGJ0?= =?utf-8?B?bE5GWXd1ZE5yOUp4dHZuTUZmbkJqODFYVldFSHJGNGg1RU1OVzViMk8wZjNi?= =?utf-8?B?UC9SRmZxZzBaVkhvRW1TL0svMXZFMDJiSmIxSWRHQ1d5cGNZWXV2cmJqRjJ1?= =?utf-8?B?bHUzcnVkVHVCTnpDNG9SNHZVTWVOd2dLRU1EMUxOMWVDdWFxa2NEdkJKRm5U?= =?utf-8?B?S0FnVjFVTHJaK3FkdVZCN09yWWFQQVhVS3BnZmQ3YUNMR2M5bm5mdFdlZUVq?= =?utf-8?B?NTZxOTEvMGlMMHZmS2dNanpyU2NXVTY1aU9ZRFVxSUd1RXZiTXhVMUI3Tldv?= =?utf-8?B?NFkxVkRtYWlUZTZlNWV3dzBJa2Z2N01yNTY3Z2FlclR4S3RVU0QvdnZHUUx0?= =?utf-8?B?YkxNRlRoYTZjaGplczdOSTlWRlFVcStFek9SdjJHVWEwakY2aTdTMTFYdWxR?= =?utf-8?B?cjFDMlQxaEVKSUxUTU96ZXJCRXZ3MEt3OE1xUkFVWi8vSC85TldQdmp3a3RD?= =?utf-8?B?N1h5WXBtQ2ZHa21LWDFFTUdINStwblNyTUEzMHFHUzJoVFlVS3U4NHp1ZEg3?= =?utf-8?B?cm1kWno0RHNJdDNZVnJzUEZLTE43d0RZVi8rcmlUdk9yTlJGNzc5Tk1jMDZB?= =?utf-8?B?dlplRWdkTFBjOEp1TXNocWpyczZ4ZCtxa2JMQXlEeFVVYjFqT0llQXBVRU1Q?= =?utf-8?B?OU1WbENTYUU2eCttUE1QR2tCSHVQeHVYN09TRXM2cmsvUTJMaHJqWmJvK2Js?= =?utf-8?B?azcxTi9kOUZhY2JSVDRzeS93dGh3TFpVbjhHNng5c0tHTEZvZXFvY3FPUDFE?= =?utf-8?B?R3E4R1VGUk1rR3JmaVI1WkpyVEZvZkhzZGpQTUR6bUpVekJvWktVZWhRWUJJ?= =?utf-8?B?MUpLZi9oWW5wbTlEYWQxKzlpNGlILzVGNW9reDU0V3luU0dqZml3UkRZZU81?= =?utf-8?B?V1ZPdmh0MDNGaWdNa1VFTXpiZlEyRThiVmh0NzFyNlFubnowdEYyTmRmaHVD?= =?utf-8?B?aWtlTFR0SVBhV29yaHNnd2VzeFpYZ1JCQ3hmTHRXWVZNTU1Dd2JWTkhCTW9n?= =?utf-8?B?aFZldHA3UGtRbnoyZGxhbURnRnJabFRsdHczQlZ4ejhTRzNkbEtwWTR6UVFr?= =?utf-8?B?TTRReTZXMEIzRitycWtwQjZhVkpDTzBxZHRvU2xhTGYrMlNNZ3dPN3Jtd1dw?= =?utf-8?B?cFdIOUg1dGtrRmEwaVB6di9tVFpXcm1rakkxbHVZcHBXV0tFSndBc0lMcTZi?= =?utf-8?B?dGp0Rm93cWxJOGNxMjJMd2pmUXN6OHcxTGpPSEVoQURTb3U5alFUY3RSOGtR?= =?utf-8?Q?lBRgA0bWw9jGAmwgEVo/spY=3D?= Content-Type: text/plain; charset="utf-8" Content-ID: Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: epam.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: DB8PR03MB6108.eurprd03.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 77bacb24-a0e2-4a15-99b6-08db7273bce0 X-MS-Exchange-CrossTenant-originalarrivaltime: 21 Jun 2023 16:22:41.8632 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: b41b72d0-4e9f-4c26-8a69-f949f367c91d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: OHkjZaDuaAVORVdigNK+uRMBDnoxTSwHRWENMsLqMymOHvDnkQsSqjTjcNPlt0n/KTLA+oFBt+Jn1bictxI3YfaHV/Gob9oJ/m6USwQ+PsE= X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM7PR03MB6231 X-Proofpoint-GUID: Sj19oyAM8pXdwVFShufE1uAxHNoof2ah X-Proofpoint-ORIG-GUID: Sj19oyAM8pXdwVFShufE1uAxHNoof2ah X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.254,Aquarius:18.0.957,Hydra:6.0.591,FMLib:17.11.176.26 definitions=2023-06-21_08,2023-06-16_01,2023-05-22_02 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 lowpriorityscore=0 spamscore=0 bulkscore=0 adultscore=0 mlxscore=0 malwarescore=0 impostorscore=0 priorityscore=1501 clxscore=1011 mlxlogscore=999 suspectscore=0 phishscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2305260000 definitions=main-2306210137 DQoNCk9uIDIxLjA2LjIzIDE2OjEyLCBQZXRyIFBhdmx1IHdyb3RlOg0KDQoNCkhlbGxvIFBldHIN Cg0KDQo+IFdoZW4gYXR0ZW1wdGluZyB0byBydW4gWGVuIG9uIGEgUUVNVS9LVk0gdmlydHVhbCBt YWNoaW5lIHdpdGggdmlydGlvDQo+IGRldmljZXMgKGFsbCB4ODZfNjQpLCBmdW5jdGlvbiB4ZW5f ZHRfZ2V0X25vZGUoKSBjcmFzaGVzIG9uIGFjY2Vzc2luZw0KPiBidXMtPmJyaWRnZS0+cGFyZW50 LT5vZl9ub2RlIGJlY2F1c2UgYSBicmlkZ2Ugb2YgdGhlIFBDSSByb290IGJ1cyBoYXMgbm8NCj4g cGFyZW50IHNldDoNCj4gDQo+IFsgICAgMS42OTQxOTJdWyAgICBUMV0gQlVHOiBrZXJuZWwgTlVM TCBwb2ludGVyIGRlcmVmZXJlbmNlLCBhZGRyZXNzOiAwMDAwMDAwMDAwMDAwMjg4DQo+IFsgICAg MS42OTU2ODhdWyAgICBUMV0gI1BGOiBzdXBlcnZpc29yIHJlYWQgYWNjZXNzIGluIGtlcm5lbCBt b2RlDQo+IFsgICAgMS42OTYyOTddWyAgICBUMV0gI1BGOiBlcnJvcl9jb2RlKDB4MDAwMCkgLSBu b3QtcHJlc2VudCBwYWdlDQo+IFsgICAgMS42OTYyOTddWyAgICBUMV0gUEdEIDAgUDREIDANCj4g WyAgICAxLjY5NjI5N11bICAgIFQxXSBPb3BzOiAwMDAwIFsjMV0gUFJFRU1QVCBTTVAgTk9QVEkN Cj4gWyAgICAxLjY5NjI5N11bICAgIFQxXSBDUFU6IDAgUElEOiAxIENvbW06IHN3YXBwZXIvMCBO b3QgdGFpbnRlZCA2LjMuNy0xLWRlZmF1bHQgIzEgb3BlblNVU0UgVHVtYmxld2VlZCBhNTc3ZWFl NTc5NjRiYjdlODM0NzdiNWE1NjQ1YTE3ODFkZjk5MGYwDQo+IFsgICAgMS42OTYyOTddWyAgICBU MV0gSGFyZHdhcmUgbmFtZTogUUVNVSBTdGFuZGFyZCBQQyAoUTM1ICsgSUNIOSwgMjAwOSksIEJJ T1MgcmVsLTEuMTUuMC0wLWcyZGQ0YjliLXJlYnVpbHQub3BlbnN1c2Uub3JnIDA0LzAxLzIwMTQN Cj4gWyAgICAxLjY5NjI5N11bICAgIFQxXSBSSVA6IGUwMzA6eGVuX3ZpcnRpb19yZXN0cmljdGVk X21lbV9hY2MrMHhkOS8weDFjMA0KPiBbICAgIDEuNjk2Mjk3XVsgICAgVDFdIENvZGU6IDQ1IDBj IDgzIGU4IGM5IGEzIGVhIGZmIDMxIGMwIGViIGQ3IDQ4IDhiIDg3IDQwIGZmIGZmIGZmIDQ4IDg5 IGMyIDQ4IDhiIDQwIDEwIDQ4IDg1IGMwIDc1IGY0IDQ4IDhiIDgyIDEwIDAxIDAwIDAwIDQ4IDhi IDQwIDQwIDw0OD4gODMgYjggODggMDIgMDAgMDAgMDAgMGYgODQgNDUgZmYgZmYgZmYgNjYgOTAg MzEgYzAgZWIgYTUgNDggODkNCj4gWyAgICAxLjY5NjI5N11bICAgIFQxXSBSU1A6IGUwMmI6ZmZm ZmM5MDA0MDAxM2NjOCBFRkxBR1M6IDAwMDEwMjQ2DQo+IFsgICAgMS42OTYyOTddWyAgICBUMV0g UkFYOiAwMDAwMDAwMDAwMDAwMDAwIFJCWDogZmZmZjg4ODAwNmM3NTAwMCBSQ1g6IDAwMDAwMDAw MDAwMDAwMjkNCj4gWyAgICAxLjY5NjI5N11bICAgIFQxXSBSRFg6IGZmZmY4ODgwMDVlZDEwMDAg UlNJOiBmZmZmYzkwMDQwMGYxMDBjIFJESTogZmZmZjg4ODAwNWVlMzBkMA0KPiBbICAgIDEuNjk2 Mjk3XVsgICAgVDFdIFJCUDogZmZmZjg4ODAwNmM3NTAxMCBSMDg6IDAwMDAwMDAwMDAwMDAwMDEg UjA5OiAwMDAwMDAwMzMwMDAwMDA2DQo+IFsgICAgMS42OTYyOTddWyAgICBUMV0gUjEwOiBmZmZm ODg4MDA1ODUwMDI4IFIxMTogMDAwMDAwMDAwMDAwMDAwMiBSMTI6IGZmZmZmZmZmODMwNDM5YTAN Cj4gWyAgICAxLjY5NjI5N11bICAgIFQxXSBSMTM6IDAwMDAwMDAwMDAwMDAwMDAgUjE0OiBmZmZm ODg4MDA1NjU3OTAwIFIxNTogZmZmZjg4ODAwNmUzZTFlOA0KPiBbICAgIDEuNjk2Mjk3XVsgICAg VDFdIEZTOiAgMDAwMDAwMDAwMDAwMDAwMCgwMDAwKSBHUzpmZmZmODg4MDRhMDAwMDAwKDAwMDAp IGtubEdTOjAwMDAwMDAwMDAwMDAwMDANCj4gWyAgICAxLjY5NjI5N11bICAgIFQxXSBDUzogIGUw MzAgRFM6IDAwMDAgRVM6IDAwMDAgQ1IwOiAwMDAwMDAwMDgwMDUwMDMzDQo+IFsgICAgMS42OTYy OTddWyAgICBUMV0gQ1IyOiAwMDAwMDAwMDAwMDAwMjg4IENSMzogMDAwMDAwMDAwMmUzNjAwMCBD UjQ6IDAwMDAwMDAwMDAwNTA2NjANCj4gWyAgICAxLjY5NjI5N11bICAgIFQxXSBDYWxsIFRyYWNl Og0KPiBbICAgIDEuNjk2Mjk3XVsgICAgVDFdICA8VEFTSz4NCj4gWyAgICAxLjY5NjI5N11bICAg IFQxXSAgdmlydGlvX2ZlYXR1cmVzX29rKzB4MWIvMHhkMA0KPiBbICAgIDEuNjk2Mjk3XVsgICAg VDFdICB2aXJ0aW9fZGV2X3Byb2JlKzB4MTljLzB4MjcwDQo+IFsgICAgMS42OTYyOTddWyAgICBU MV0gIHJlYWxseV9wcm9iZSsweDE5Yi8weDNlMA0KPiBbICAgIDEuNjk2Mjk3XVsgICAgVDFdICBf X2RyaXZlcl9wcm9iZV9kZXZpY2UrMHg3OC8weDE2MA0KPiBbICAgIDEuNjk2Mjk3XVsgICAgVDFd ICBkcml2ZXJfcHJvYmVfZGV2aWNlKzB4MWYvMHg5MA0KPiBbICAgIDEuNjk2Mjk3XVsgICAgVDFd ICBfX2RyaXZlcl9hdHRhY2grMHhkMi8weDFjMA0KPiBbICAgIDEuNjk2Mjk3XVsgICAgVDFdICBi dXNfZm9yX2VhY2hfZGV2KzB4NzQvMHhjMA0KPiBbICAgIDEuNjk2Mjk3XVsgICAgVDFdICBidXNf YWRkX2RyaXZlcisweDExNi8weDIyMA0KPiBbICAgIDEuNjk2Mjk3XVsgICAgVDFdICBkcml2ZXJf cmVnaXN0ZXIrMHg1OS8weDEwMA0KPiBbICAgIDEuNjk2Mjk3XVsgICAgVDFdICB2aXJ0aW9fY29u c29sZV9pbml0KzB4N2YvMHgxMTANCj4gWyAgICAxLjY5NjI5N11bICAgIFQxXSAgZG9fb25lX2lu aXRjYWxsKzB4NDcvMHgyMjANCj4gWyAgICAxLjY5NjI5N11bICAgIFQxXSAga2VybmVsX2luaXRf ZnJlZWFibGUrMHgzMjgvMHg0ODANCj4gWyAgICAxLjY5NjI5N11bICAgIFQxXSAga2VybmVsX2lu aXQrMHgxYS8weDFjMA0KPiBbICAgIDEuNjk2Mjk3XVsgICAgVDFdICByZXRfZnJvbV9mb3JrKzB4 MjkvMHg1MA0KPiBbICAgIDEuNjk2Mjk3XVsgICAgVDFdICA8L1RBU0s+DQo+IFsgICAgMS42OTYy OTddWyAgICBUMV0gTW9kdWxlcyBsaW5rZWQgaW46DQo+IFsgICAgMS42OTYyOTddWyAgICBUMV0g Q1IyOiAwMDAwMDAwMDAwMDAwMjg4DQo+IFsgICAgMS42OTYyOTddWyAgICBUMV0gLS0tWyBlbmQg dHJhY2UgMDAwMDAwMDAwMDAwMDAwMCBdLS0tDQo+IA0KPiBUaGUgUENJIHJvb3QgYnVzIGlzIGlu IHRoaXMgY2FzZSBjcmVhdGVkIGZyb20gQUNQSSBkZXNjcmlwdGlvbiB2aWENCj4gYWNwaV9wY2lf cm9vdF9hZGQoKSAtPiBwY2lfYWNwaV9zY2FuX3Jvb3QoKSAtPiBhY3BpX3BjaV9yb290X2NyZWF0 ZSgpIC0+DQo+IHBjaV9jcmVhdGVfcm9vdF9idXMoKSB3aGVyZSB0aGUgbGFzdCBmdW5jdGlvbiBp cyBjYWxsZWQgd2l0aA0KPiBwYXJlbnQ9TlVMTC4gSXQgaW5kaWNhdGVzIHRoYXQgbm8gcGFyZW50 IGlzIHByZXNlbnQgYW5kIHRoZW4NCj4gYnVzLT5icmlkZ2UtPnBhcmVudCBpcyBOVUxMIHRvby4N Cj4gDQo+IEZpeCB0aGUgcHJvYmxlbSBieSBjaGVja2luZyBidXMtPmJyaWRnZS0+cGFyZW50IGlu IHhlbl9kdF9nZXRfbm9kZSgpIGZvcg0KPiBOVUxMIGZpcnN0ID4NCj4gRml4ZXM6IGVmOGFlMzg0 YjRjOSAoInhlbi92aXJ0aW86IEhhbmRsZSBQQ0kgZGV2aWNlcyB3aGljaCBIb3N0IGNvbnRyb2xs ZXIgaXMgZGVzY3JpYmVkIGluIERUIikNCg0KT29wcywgc29ycnkuIEkgaGF2ZSB0byBhZG1pdCBJ IGNoZWNrZWQgd2l0aCBEVCBvbmx5Lg0KDQoNCj4gU2lnbmVkLW9mZi1ieTogUGV0ciBQYXZsdSA8 cGV0ci5wYXZsdUBzdXNlLmNvbT4NCg0KDQpSZXZpZXdlZC1ieTogT2xla3NhbmRyIFR5c2hjaGVu a28gPG9sZWtzYW5kcl90eXNoY2hlbmtvQGVwYW0uY29tPg0KDQoNCg0KPiAtLS0NCj4gICBkcml2 ZXJzL3hlbi9ncmFudC1kbWEtb3BzLmMgfCAyICsrDQo+ICAgMSBmaWxlIGNoYW5nZWQsIDIgaW5z ZXJ0aW9ucygrKQ0KPiANCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMveGVuL2dyYW50LWRtYS1vcHMu YyBiL2RyaXZlcnMveGVuL2dyYW50LWRtYS1vcHMuYw0KPiBpbmRleCA5Nzg0YTc3ZmEzYzkuLjc2 ZjZmMjYyNjVhMyAxMDA2NDQNCj4gLS0tIGEvZHJpdmVycy94ZW4vZ3JhbnQtZG1hLW9wcy5jDQo+ ICsrKyBiL2RyaXZlcnMveGVuL2dyYW50LWRtYS1vcHMuYw0KPiBAQCAtMzAzLDYgKzMwMyw4IEBA IHN0YXRpYyBzdHJ1Y3QgZGV2aWNlX25vZGUgKnhlbl9kdF9nZXRfbm9kZShzdHJ1Y3QgZGV2aWNl ICpkZXYpDQo+ICAgCQl3aGlsZSAoIXBjaV9pc19yb290X2J1cyhidXMpKQ0KPiAgIAkJCWJ1cyA9 IGJ1cy0+cGFyZW50Ow0KPiAgIA0KPiArCQlpZiAoIWJ1cy0+YnJpZGdlLT5wYXJlbnQpDQo+ICsJ CQlyZXR1cm4gTlVMTDsNCj4gICAJCXJldHVybiBvZl9ub2RlX2dldChidXMtPmJyaWRnZS0+cGFy ZW50LT5vZl9ub2RlKTsNCj4gICAJfQ0KPiAgIA== From xen-devel-bounces@lists.xenproject.org Wed Jun 21 16:25:44 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 16:25:44 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552963.863238 (Exim 4.92) (envelope-from ) id 1qC0eE-0003mF-V1; Wed, 21 Jun 2023 16:25:34 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552963.863238; Wed, 21 Jun 2023 16:25:34 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC0eE-0003m8-RV; Wed, 21 Jun 2023 16:25:34 +0000 Received: by outflank-mailman (input) for mailman id 552963; Wed, 21 Jun 2023 16:25:33 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC0eD-0003m0-Be for xen-devel@lists.xenproject.org; Wed, 21 Jun 2023 16:25:33 +0000 Received: from esa2.hc3370-68.iphmx.com (esa2.hc3370-68.iphmx.com [216.71.145.153]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 3c025f19-1050-11ee-8611-37d641c3527e; Wed, 21 Jun 2023 18:25:30 +0200 (CEST) Received: from mail-mw2nam10lp2106.outbound.protection.outlook.com (HELO NAM10-MW2-obe.outbound.protection.outlook.com) ([104.47.55.106]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 21 Jun 2023 12:25:27 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by MW4PR03MB6428.namprd03.prod.outlook.com (2603:10b6:303:123::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.37; Wed, 21 Jun 2023 16:25:23 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606%4]) with mapi id 15.20.6521.023; Wed, 21 Jun 2023 16:25:23 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 3c025f19-1050-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1687364730; h=message-id:date:from:subject:to:cc:references: in-reply-to:content-transfer-encoding:mime-version; bh=9NF5D+5wX33ZQF/akW7IFpMHDHy6xNY5wOGcSmL1Nko=; b=dsi8A/YYJxCOEFAEUrGqdjzS9nQsIUsqtkUe/3vI8iRW5IdysH/bsfhg vURAy25ByZvcBHolgckNJ3bz2jfZPxSB6rinPGen0xoN4yWzKIBBAGMYu fc9mjYeWgodk0VzNXQw4f/ky1jmut0YQb0nciflNjCu/hb8tkhnLJd3uw g=; X-IronPort-RemoteIP: 104.47.55.106 X-IronPort-MID: 113533472 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:fLNjdK88gFXdHIW7XryIDrUDYX+TJUtcMsCJ2f8bNWPcYEJGY0x3m 2pNDDiOb/rfYzT1fd5+Pdy28E0HsMPVzNZhQQBl+C88E34SpcT7XtnIdU2Y0wF+jCHgZBk+s 5hBMImowOQcFCK0SsKFa+C5xZVE/fjUAOG6UKicYXoZqTZMEE8JkQhkl/MynrlmiN24BxLlk d7pqojUNUTNNwRcawr40Ird7ks31BjOkGlA5AdmO6oS5AO2e0Q9V/rzG4ngdxMUfaEMdgKKb 76r5K20+Grf4yAsBruN+losWhRXKlJ6FVHmZkt+A8BOsDAbzsAB+v9T2M4nQVVWk120c+VZk 72hg3ASpTABZcUgkMxFO/VR/roX0aduoNcrKlDn2SCfItGvn9IBDJyCAWlvVbD09NqbDklM1 bsXJ2hdLSuKuOedyrCWUvlSn8kseZyD0IM34hmMzBn/JNN/GdXmfP+P4tVVmjAtmspJAPDSI dIDbiZiZwjBZBsJPUoLDJU5n6GjgXyXnz9w8QrJ4/ZopTWOilUpjtABM/KMEjCObexTklyVu STt+GPhDwtBHNee1SCE4jSngeqncSbTAdtJSebjqqEw6LGV7kwiDEAKRVCZnaKgoG6jWIpiE UUP9DV7+MDe82TuFLERRSaQsHOC+xIRRddUO+k78x2WjLrZ5R6DAWoJRSIHb8Yp3Oc0TDomz E6UnPvmADVutPueTnf13rWeoC62OCMVBXQffiJCRgwAi/HhvYUygxTnXttlVqmvgbXdAirsy jqHqCw/gbQ7jsMR0ai/u1fdjFqEuZzhXgMzoALNUQqYAhhRYYekY8mt9gLd5PMZdIKBFADZ4 j4DhtSU6/0IAdeVjiuRTe4RHbavofGYLDnbhl0pFJ4kn9iwx0OekUlryGkWDC9U3gwsI1cFv Ge7Vdtt2aJu IronPort-HdrOrdr: A9a23:9mAnqq8aQybDFNn1y89uk+AcI+orL9Y04lQ7vn2ZKSY5TiX4rb HKoB1/73XJYVkqN03I9ervBEDiewK/yXcW2+ks1N6ZNWGLhILBFupfBODZsl7d8kPFl9K01c 1bAtJD4N+bNykGsS4tijPIb+rJw7O8gd+Vbf+19QYIcenzAZsQlzuQDGygYypLbTgDP7UVPr yG6PFKojKxEE5nFfhSVhE+Lo7+T8SgruOeXSI7 X-Talos-CUID: 9a23:YmYccmGVEcmnPaylqmJl1AkbFZh1MUbU83L7KU2VEXZXUbCaHAo= X-Talos-MUID: =?us-ascii?q?9a23=3A6zWMRw0V1UYgnvEhuwQv3BYQJjUjw5WqVVwdmrc?= =?us-ascii?q?64NCuFTFzYwqnhS+5Xdpy?= X-IronPort-AV: E=Sophos;i="6.00,261,1681185600"; d="scan'208";a="113533472" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=DINuZqpWb03PAcT1bIovAJqk9Ji8bewqB3N6CYyXEZC8gSgBBE+cs4yoISEPRh0LzdqCR4Mc1irfSaWHMBBd7dayxsFlwUFy8S2H65RkC92fyNq7w9MVI8C4Ils0I953ul9l95+GRdQx5497PDtAGCnOlGYYJxpwxsYnti673538/UtYcOKGrTqHqqN/LroLhNhrhfeAigCMFltGy5XURZL1TBkn4+xEOVWMTxMVwGMP8Q2GyxZayy23UmlvOTHWiGMd1EpMTDW3bd1xVCPMov6QGv4Q5cRGvdGwnqVjk3gk4fIi8FXpycLioZVefvEEsUqm6n+h/43FWPSZmk3R8w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=oinz2MmQLLGY2TKud7kQ6TRCvvfk435fyeKQJQt7zKU=; b=WS7/KwPNpBUiIn07zgknQJmYzofQHkj/jmEyYQckO1WaGjVq10BtW6/xFfSoflylDqUqcxE64FElifTpwIHlycZxqFnUK0Zha8eWyDe/gtgsYvwZr6/OFuDzFAxtg/V2INRZvSho/DUqmUze4tx/dHBmERHVZDzI+YlN6jD9fFWO238H8Rxi9uyFL4Nd7oGBKL0JOORQqNLpKfDQDJXebOqvbP5mYvqAiZFb3v6XN3BSFadx9OTYtYAUvyb0q2f1PSTQHQbwEpGcfQLitWtTVNGiHTZUxqc5wN4zO5LRsnJdw6wyaMpLeE8zhp/Xdlifa4q001PSBu8sS0MVhehvcg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=oinz2MmQLLGY2TKud7kQ6TRCvvfk435fyeKQJQt7zKU=; b=Uv+Ek602ck04OWuVo7iPa57kiMJ6WW42hLuYLv6+xkEhl0aSV/NC2cWxNSjtW8yOrT1/6EW76LOiplmRgcahk0E+uIjk/XBZMP2kzeFHBZiIgARggg/6Y1KjTxwEb38on+nModVGtBxSKebV7Q561wNuHPyTncckWTRu4HGFLiw= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: Date: Wed, 21 Jun 2023 17:25:17 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 From: Andrew Cooper Subject: Re: [XEN PATCH 1/3] build: define ARCH and SRCARCH later Content-Language: en-GB To: Anthony PERARD , xen-devel@lists.xenproject.org Cc: Jason Andryuk , George Dunlap , Jan Beulich , Julien Grall , Stefano Stabellini , Wei Liu References: <20230621161959.1061178-1-anthony.perard@citrix.com> <20230621161959.1061178-2-anthony.perard@citrix.com> In-Reply-To: <20230621161959.1061178-2-anthony.perard@citrix.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: LO4P123CA0374.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:18e::19) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|MW4PR03MB6428:EE_ X-MS-Office365-Filtering-Correlation-Id: 7e338209-952e-4dd4-18bd-08db72741cee X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: tiTWQAJyKMSfUkVcs/QKlS28pGcX1O6XTSLzu51T1GbbGhDexyFMqg60QMjxE4d+tt/DXKWh+3LE2h0T7VqdpJ6Xwxwr9UoBZMIatEo68y/wdc+LWfsPTxiYeJXh0mlpkzPZ7Sj+YPOdWXWQcAuomQc+2klwVk3wMs6SJWuLRi/k5RrqXJVwrYkkIC9R+kzq5OVMJ+uQrlOOz/rYTO31KmTILT4MqrXxHdR1+F04Rrna4j82PN5iKvtJuzWYYeDUFDVb7x8nPSbII6j2y34OEmqiVsswZEhoqbO9iufEl7V3M9CmN9pzhlaT3UzsM8hJqaJvEiJtiFqMvc2C96yDY0JwYzslbjisyK7pedtpnQc0r8utY4LsbvXN5uTubiO71Cz6oKCQ1qwub0AyCVfC9DIyabsW9S3+ghbcElsb8PZ8Cw/HzEtJLWnYiA5aBmCJkhbnBG1NYItqS+slW623eCsuLx67t9cZsqbJMIngStogl6pHDsh/OSccKYGCOhX7OV11OcorPVdY9R191nlKU4LECfhdONWIHJfqKHgrK46FhTV6hUxHO+dAJhQ1pcIMc3HxrX0iNMCEyFNjRlJPQZJ+KXKf7WPVeeIpX/lD5tO4jBxBcmNEUuAP/n82I71zdhx0YDew4IvJ7vlT9Bg4Gw== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(136003)(39860400002)(396003)(376002)(346002)(366004)(451199021)(6512007)(31686004)(53546011)(36756003)(5660300002)(31696002)(66476007)(8676002)(41300700001)(82960400001)(66556008)(38100700002)(86362001)(4326008)(8936002)(66946007)(316002)(6506007)(6486002)(26005)(186003)(2906002)(54906003)(2616005)(478600001)(83380400001)(6666004)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?dVgzbHZDUHpqblFERGZVNEI1NnZCNzFUWHNTZjgrT2pnSlhFRU82dWJaaUdG?= =?utf-8?B?dWZLbytJeFhHZVVSNmhYMk4yU3RZQ0NneDd5ZkpsRCtHZmx2QlZGa2lOeWtC?= =?utf-8?B?Y1F5aGk4WlRXK2owRDl5NGNkZmRNZVpFNmNXZFlkYU5XRlB5OGV3aXFUMGJh?= =?utf-8?B?MlU1d2VYUk1JWFMyOFZkb2V6YTlid2Fob3VCYmhoT2ZCNVFYTS9vQWxMaWxu?= =?utf-8?B?UURrYmJENWwvL2VCYXMvV0p5RFBkNDFzV1VHS1N5N1dsNUFpWEFmbnd4aDBv?= =?utf-8?B?cm9wa0tOK09MOExkcWdYb3hQQjlwSEJpM0Q5YTdOVzJ3TE1jRiswM0VTSDhP?= =?utf-8?B?LzUyUVlGK1ZqNDlsT29nNGVlUWJwUjFEYzltMmFsN2x5Zjdhc2J2NFNnMUdT?= =?utf-8?B?d3JZdFYxOGo0QnhTWlNUSmVJczdCU3F5TEdId3dNZlZkNDU0dSsrbzlNVDBK?= =?utf-8?B?N253ZjJ5eHZmZCsySTc5cFdiamtjSmQ2QVhaZ1NQMTRTdDlSeUlzNkxhMjdO?= =?utf-8?B?dy93VzlkSWNsYTVOdHllTk5SQmV0N2FJdkZmQ00zM01LSVAxallzY2t3K0V3?= =?utf-8?B?UC9VN1BoOWNmTnlER0hrODRINDlXQzRGN1J0RkRYSGppNDM1bkp4ZUNvTGpI?= =?utf-8?B?QjdZUGw2ZWh2dXFKdGtIbmZ5SzBEWjY3T05Id1ZQTERnSUVWTm1DdzR3bGxL?= =?utf-8?B?dWx5cmRZVEh5a1NDd042Tzg4bU9jeEJUY0hYZWpLcmJST01TTVBzemdUZjFB?= =?utf-8?B?eXFENlBINFlFeTVVdDlwYWt3Zmh1Z1RIcy9YU24wZlNpUVhWY05GRVNKSlJz?= =?utf-8?B?VjZBRlhPSnlNSVN1amtIbXF1blg1cGRNeVk5QityZE81QXVPU2ZuZWhkaUsz?= =?utf-8?B?K3N1TjlrZXBJeUpUVm56ZG1PWEhIcWQxT2RFWGo1OEY1TUt0dzNva3NNMFhs?= =?utf-8?B?UXJFbDlnTzJwNENnbEt5RkFkRis0Q1oyMzFnYzVwTGpvT3JIR3dIL2d2dDRz?= =?utf-8?B?SGN0QU9hYjEvc3Z2V2VKaUFoS21CcVk3WjRGK0I4T3lDK2hMMzFYa2xsRisr?= =?utf-8?B?dkZPWW53U1R0cmZOU29BeVVERHRIZ1N5dFgzVXJ6bWZHUmVZdW1XZnFDMnJE?= =?utf-8?B?cXo5RCtzcFpyVE5DdVAwSFFvOUZhRGF6L0E4NTZNeG1lV3JqdDBZOWduRUVa?= =?utf-8?B?cCtjM3BTYkN5OVNPdmJQN3FjNFRIUFdHalZyNERiOEdoazg5b2NmK3dqZTdl?= =?utf-8?B?NVY3aGNDZGp3VEdCYVlZUFRnSVhrRElWcWJ5OXdtVWtaMDNrbmkxT2pLMUxV?= =?utf-8?B?TnMya3NXU3hUZnNkWk1iTUJmMy9VZitvbGF4NjFpMDdvdXZsOStUQ3JqS3Nq?= =?utf-8?B?ZGpqS3ZMUThyVWVHd3VTeHYwbGlrWkFpeDNEUlVBOHJZbS9OQzNVRURXclJ4?= =?utf-8?B?UEVTSVRLK0luRERDaklBVmxpUXBuT1R3VlZlTkFJQktFSk1UQ1FTTXVZaDc1?= =?utf-8?B?bVl5MWxsVTJFdndtdTVmRFZ2RGpIMU5tRzk5Tmg1QTdXNUN3OWQ2VHRoT09h?= =?utf-8?B?WDgvR1dPeXdqbVFKbkNVSmU1N0RwbmcwTkorMy9UK0QveWlDUEMyYkl6eS9L?= =?utf-8?B?SExhUy9CNW1wYzdPWjBxRUE3SlBRQk1HRVpXNzZhKzNnVWRMeTFqL0tFZVhJ?= =?utf-8?B?MlhKWi8zSlk0UURFY3JZYWFBRXVTVmlnVUhuMWxhY0ZCZ3ZMbjNEY1NyTlg3?= =?utf-8?B?c0w5SElreElPZUZZZ0pPbzRjWjVBQTdnQ3dSeFA3ODVvYlM3ZG9ERURsejNo?= =?utf-8?B?N3JCT3M4eG1TaGVkdGZ3WmlXRkdJc0xUUW1JZTNBc001NTZUdkxyTFN1aEMx?= =?utf-8?B?OERXaFNKWjJjNXQ5UmFiam9PMkxIc1JRQVhHOFRUT05CV1V4eEZYU1NkcFJI?= =?utf-8?B?WHJzd2Q4VVhYakd5Q3VSUUM3OXFvMzRhM2FSTFU1K2dxUlByVFdzQnl4QXRB?= =?utf-8?B?U0xpT2FJeG1tNVhRcW9iQks4TFE2aXNLbVdLQkYySTRTbHBQaHY0RmxjMnVx?= =?utf-8?B?eVBKTGpEVmEyaUE2L0tmNTBQcmlzSXlydjlPY3dWakxFMk9YSjZGWE0rWGRp?= =?utf-8?B?Y1hUOWRVSlhuTEZuRnNnYk9HVUNWRnBJZ3BDNlFYWllzdlBBYXVDV0tDQzlZ?= =?utf-8?B?ZUE9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: 5J5XAm2Iw75/pqR1Npvnj9mjZuPtbRKsZMbzUKYgxxd72qtk8e1Szr83d1sNUwKU75624aaoYzKzrKiuCExlLojVgfYVr6Xl7L74RbOeCstS1Uth/DbcTQAyWjby5wAs1tz3axgrm1rO48S1McSzU1zCSKFGWgtdeVGH1Uv/N1n9moMUcii/OAK2gNAReaQ3y6QJ5ZDT5kn3Yo5AIXCEC9sTbEuATufzkZVWm50+DBB5sFVWI8kgBq9gG0IzImjaeAP27jyYB/2sL6+zWqG5tLjWx/AY4SiZstHor7fkd2N23+toM+/ntZq9Mv5mc07xybdz+7juHg9oF1Xw9B3A9lhT/4uDF6gsKdy3OvQCoOWdBZ+rbxXQMoRrQkSF20cn3FOsGsTzx4ETjfI63CJCGo4zUECzS6Wk67uGP9PtPSYd1q/Gkzw7UNRJ9Rl9+grwK6pWN3xup0HyEitSx+mGsZxnOi5Dkrd+9ORKsc/yxLP2aP5h0exv8Di1XK3IJyXIkMPFEDh7XQe3XicjzVyHNzmFGH4m4S2nqZvnUGHPmGOcsXQff6kMe3we2+3uSqa/nZtWGPQSHJ8SGIR0eXV4UDXTPTY8vattYg4mv7C2Bxj7iRfJ7aMcuyy0mGe4JqJSvTVx/uRhQ1j3lPKFVmQ0Zu39Tp85tLuxVXcmdVLDztNL/bv4ZJKivxpJMb+zNyrVvadSQpmIU6Sc+uu0R/BMbQamqOPt8HT6p0pw1IeqpLh4ZLOJz+5FEEu4FIqy6M1F1sqstqoxYwzvRVorJYBM5CLePpw2VPjieBzEIlvGGdBYV1Tv8pqK2NA72tMtI3uWwsKzC4U1MP4ZfNMcezuOM4BRNkiimaHwWrDOjuY6eZWfGBrl1at9hXlPozjXo7xU X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 7e338209-952e-4dd4-18bd-08db72741cee X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Jun 2023 16:25:23.2595 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: CkQhNg5j/IhvDm5/TyREAr4zTMkxw+g9YJZbe6SnELWzyrd5MZeXMdI+c8FmlAnO8soL4Ma44pkyaB55cCNRFxZMCkMWYaRFqEgxR2T8TDM= X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW4PR03MB6428 On 21/06/2023 5:19 pm, Anthony PERARD wrote: > Defining ARCH and SRCARCH later in xen/Makefile allows to switch to > immediate evaluation variable type. > > ARCH and SRCARCH depends on value defined in Config.mk and aren't used > TARGET_SUBARCH or TARGET_ARCH, and not before it's needed in a > sub-make or a rule. > > This will help reduce the number of times the shell rune is been > run. > > With GNU make 4.4, the number of execution of the command present in > these $(shell ) increased greatly. This is probably because as of make > 4.4, exported variable are also added to the environment of $(shell ) > construct. > > Also, `make -d` shows a lot of these: > Makefile:39: not recursively expanding SRCARCH to export to shell function > Makefile:38: not recursively expanding ARCH to export to shell function > > Reported-by: Jason Andryuk > Signed-off-by: Anthony PERARD > --- > xen/Makefile | 13 +++++++------ > 1 file changed, 7 insertions(+), 6 deletions(-) > > diff --git a/xen/Makefile b/xen/Makefile > index e89fc461fc4b..9631e45cfb9b 100644 > --- a/xen/Makefile > +++ b/xen/Makefile > @@ -35,12 +35,6 @@ MAKEFLAGS += -rR > > EFI_MOUNTPOINT ?= $(BOOT_DIR)/efi > > -ARCH=$(XEN_TARGET_ARCH) > -SRCARCH=$(shell echo $(ARCH) | \ > - sed -e 's/x86.*/x86/' -e s'/arm\(32\|64\)/arm/g' \ > - -e s'/riscv.*/riscv/g') > -export ARCH SRCARCH > - > # Allow someone to change their config file > export KCONFIG_CONFIG ?= .config > > @@ -241,6 +235,13 @@ include scripts/Kbuild.include > include $(XEN_ROOT)/Config.mk > > # Set ARCH/SUBARCH appropriately. > + > +ARCH := $(XEN_TARGET_ARCH) > +SRCARCH := $(shell echo $(ARCH) | \ > + sed -e 's/x86.*/x86/' -e s'/arm\(32\|64\)/arm/g' \ > + -e s'/riscv.*/riscv/g') > +export ARCH SRCARCH > + > export TARGET_SUBARCH := $(XEN_TARGET_ARCH) > export TARGET_ARCH := $(shell echo $(XEN_TARGET_ARCH) | \ > sed -e 's/x86.*/x86/' -e s'/arm\(32\|64\)/arm/g' \ The change looks plausible to fix this issue, but could we take the opportunity to dedup the sed expression into a $(call src-arch ...) or so ? Except, given that ARCH := $(XEN_TARGET_ARCH) now, doesn't that mean SRCARCH is always TARGET_ARCH ? Can't we simplify this to just be plain aliases? ~Andrew From xen-devel-bounces@lists.xenproject.org Wed Jun 21 16:28:06 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 16:28:06 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552971.863247 (Exim 4.92) (envelope-from ) id 1qC0gZ-0004Pn-DI; Wed, 21 Jun 2023 16:27:59 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552971.863247; Wed, 21 Jun 2023 16:27:59 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC0gZ-0004Pg-Ab; Wed, 21 Jun 2023 16:27:59 +0000 Received: by outflank-mailman (input) for mailman id 552971; Wed, 21 Jun 2023 16:27:58 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC0gX-0004Ox-Vt for xen-devel@lists.xenproject.org; Wed, 21 Jun 2023 16:27:58 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [2604:1380:4641:c500::1]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 92cae43a-1050-11ee-8611-37d641c3527e; Wed, 21 Jun 2023 18:27:55 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id BAC15615E8; Wed, 21 Jun 2023 16:27:53 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id C20E0C433C0; Wed, 21 Jun 2023 16:27:52 +0000 (UTC) Received: from compute3.internal (compute3.nyi.internal [10.202.2.43]) by mailauth.nyi.internal (Postfix) with ESMTP id AB7BC27C005B; Wed, 21 Jun 2023 12:27:51 -0400 (EDT) Received: from imap48 ([10.202.2.98]) by compute3.internal (MEProxy); Wed, 21 Jun 2023 12:27:51 -0400 Received: by mailuser.nyi.internal (Postfix, from userid 501) id 43C5C31A0063; Wed, 21 Jun 2023 12:27:51 -0400 (EDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 92cae43a-1050-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1687364873; bh=LwsnqI9P+WpJ5PCzUBSCELK7UQa5GydFt4q1g7NlhXY=; h=In-Reply-To:References:Date:From:To:Subject:From; b=TsGJuS6FJ9lBZ2bAEIJIH9bh5QPAKywM/HhWIInNQNbwKdv1URR5W6yZFFzrX0TAw WWK9X2QZdgb8jyao7Sgj68HfxqrxctEDgMLJ5UWznYsgDhbO1yxBcxw+yUY9J+Xq8y 3WXsCWicp9FVVFkU0NGYa9Bo895XRAs/ix6tG7mCr2HWIyfaHscDhbza7JX5ZMS/kU g5NVhFnbM9RWCEnp4MAepOcpW/q+c9c6Mpa//hrOrrADpj2R/ykUR7j+dam4wx+ZxM L1AqnNy806+GNKTdu30liB1VyTAS5s9mptcXmLxL7pS20BRj/1YcVoVuwopk5zrmzd BoElvjqT6ZZDA== X-ME-Sender: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvhedrgeefledgtdefucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne cujfgurhepofgfggfkjghffffhvffutgesthdtredtreertdenucfhrhhomhepfdetnhgu hicunfhuthhomhhirhhskhhifdcuoehluhhtoheskhgvrhhnvghlrdhorhhgqeenucggtf frrghtthgvrhhnpedthfehtedtvdetvdetudfgueeuhfdtudegvdelveelfedvteelfffg fedvkeegfeenucevlhhushhtvghrufhiiigvpedtnecurfgrrhgrmhepmhgrihhlfhhroh hmpegrnhguhidomhgvshhmthhprghuthhhphgvrhhsohhnrghlihhthidqudduiedukeeh ieefvddqvdeifeduieeitdekqdhluhhtoheppehkvghrnhgvlhdrohhrgheslhhinhhugi drlhhuthhordhush X-ME-Proxy: Feedback-ID: ieff94742:Fastmail X-Mailer: MessagingEngine.com Webmail Interface User-Agent: Cyrus-JMAP/3.9.0-alpha0-499-gf27bbf33e2-fm-20230619.001-gf27bbf33 Mime-Version: 1.0 Message-Id: <7fbad052-4c4a-4a49-913d-ea836c180dc2@app.fastmail.com> In-Reply-To: <20230621151442.2152425-1-per.bilse@citrix.com> References: <20230621151442.2152425-1-per.bilse@citrix.com> Date: Wed, 21 Jun 2023 09:27:31 -0700 From: "Andy Lutomirski" To: "Per Bilse" , "Thomas Gleixner" , "Ingo Molnar" , "Borislav Petkov" , "Dave Hansen" , "the arch/x86 maintainers" , "H. Peter Anvin" , "Juergen Gross" , "Stefano Stabellini" , "Oleksandr Tyshchenko" , "Linux Kernel Mailing List" , "moderated list:XEN HYPERVISOR INTERFACE" Subject: Re: [PATCH] Updates to Xen hypercall preemption Content-Type: text/plain On Wed, Jun 21, 2023, at 8:14 AM, Per Bilse wrote: > Some Xen hypercalls issued by dom0 guests may run for many 10s of > seconds, potentially causing watchdog timeouts and other problems. > It's rare for this to happen, but it does in extreme circumstances, > for instance when shutting down VMs with very large memory allocations > (> 0.5 - 1TB). These hypercalls are preemptible, but the fixes in the > kernel to ensure preemption have fallen into a state of disrepair, and > are currently ineffective. This patch brings things up to date by way of: > > 1) Update general feature selection from XEN_PV to XEN_DOM0. > The issue is unique to dom0 Xen guests, but isn't unique to PV dom0s, > and will occur in future PVH dom0s. XEN_DOM0 depends on either PV or PVH, > as well as the appropriate details for dom0. > > 2) Update specific feature selection from !PREEMPTION to !PREEMPT. > The following table shows the relationship between different preemption > features and their indicators/selectors (Y = "=Y", N = "is not set", > . = absent): > > | np-s | np-d | vp-s | vp-d | fp-s | fp-d > CONFIG_PREEMPT_DYNAMIC N Y N Y N Y > CONFIG_PREEMPTION . Y . Y Y Y > CONFIG_PREEMPT N N N N Y Y > CONFIG_PREEMPT_VOLUNTARY N N Y Y N N > CONFIG_PREEMPT_NONE Y Y N N N N > > Unless PREEMPT is set, we need to enable the fixes. This code is a horrible mess, with and without your patches. I think that, if this were new, there's no way it would make it in to the kernel. I propose one of two rather radical changes: 1. (preferred) Just delete all of it and make support for dom0 require either full or dynamic preempt, and make a dynamic preempt kernel booting as dom0 run as full preempt. 2. Forget about trying to preempt a hypercall in the sense of scheduling from an interrupt. Instead teach the interrupt code to detect that it's in a preemptible hypercall and change RIP to a landing pad that does a cond_resched() and then resumes the hypercall. I don't think the entry code should have a whole special preempt implementation just for this nasty special case. --Andy From xen-devel-bounces@lists.xenproject.org Wed Jun 21 16:28:08 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 16:28:08 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552972.863258 (Exim 4.92) (envelope-from ) id 1qC0gi-0004hZ-Jw; Wed, 21 Jun 2023 16:28:08 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552972.863258; Wed, 21 Jun 2023 16:28:08 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC0gi-0004hS-HA; Wed, 21 Jun 2023 16:28:08 +0000 Received: by outflank-mailman (input) for mailman id 552972; Wed, 21 Jun 2023 16:28:07 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC0gh-0004gw-E2 for xen-devel@lists.xenproject.org; Wed, 21 Jun 2023 16:28:07 +0000 Received: from mail-ej1-x62e.google.com (mail-ej1-x62e.google.com [2a00:1450:4864:20::62e]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 99efc998-1050-11ee-b236-6b7b168915f2; Wed, 21 Jun 2023 18:28:06 +0200 (CEST) Received: by mail-ej1-x62e.google.com with SMTP id a640c23a62f3a-987c932883bso738475566b.0 for ; Wed, 21 Jun 2023 09:28:06 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 99efc998-1050-11ee-b236-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687364886; x=1689956886; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=TlEDFRP0tiRbmO7FrNAjtN6GNTyBbp+Mjv5yk5N091U=; b=OiDWh/vMgfS/+68M9/jAnygsPDQk8pEIwWdV9VCfMdJt2F/c83/YfpRZ5Rr4gb+9tY 41+oLxBYpdt08QWFkIuXlO/BQHct52icu75KNRi0wi9YnueN9ZmybwW1kNELSoCrnqYq hjhSfs6/HEZO2vW3sll23wXQcfXCQd9jibZwiG53mLUX01FVed1zmbTPtze28A6cfWBk LyfOiUhSYbxUF6CA6lgdhn8QODZ/lb6RMeYBucbLEAxeEKPDzvVzTzL6HFZEISV2PyId cF6vcYZapNcSsHUROKHVCHzMY9CrV+qrk+mqjHQFfy78vgxGwbiaBqMwZLjjVKbCwAES OEoQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687364886; x=1689956886; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=TlEDFRP0tiRbmO7FrNAjtN6GNTyBbp+Mjv5yk5N091U=; b=b4WfrPJ/4XOoz/SHrhoKr45wRiJN+/QixRYRjAjxn6F2uLLo+HxuvO+aTKNMRB3jia cYZjZ8aC88LwtQMTtArvSlH+uWyuSt1QNIaP9ltWW9XhvMK4a44R+yUEAES99Utl51/i I9eWU2ysJs0shK12QJ2mFPo552om8NAB3msFOz068sEkTJZXJFEizuNnL9oAOEdxhqqJ qgiG5mo1KGmmkXMWHqtcvW/mml5dzXEMK4EWHfJWlNUWZAlpJb0VJpu89I54/QN6PZOX ZA+sgCCHvGEhbD09m35ObttQsNglnOOjHHA4de9Ehq0Zhc2HDqOlBc5yvneyDa8gNRZe fjJg== X-Gm-Message-State: AC+VfDxw3aW+y2zhct11jVqx22E0PoL9d/BI0+u+eXitdo/dvTgXzrSw Nv6kkS1kVjjRyH+AbgYAPpcf1KOC8SaNNk6xU5I= X-Google-Smtp-Source: ACHHUZ4yUN8dqXBqbSoiMFFjp8EYls1tVOdAC7ZPiYs+mAnIUFVkdQdEZyuzg++es8YFQVBofLkEssOki1wOHwsiYZE= X-Received: by 2002:a17:906:eecd:b0:973:da59:7c91 with SMTP id wu13-20020a170906eecd00b00973da597c91mr14936872ejb.51.1687364885551; Wed, 21 Jun 2023 09:28:05 -0700 (PDT) MIME-Version: 1.0 References: <20230621161959.1061178-1-anthony.perard@citrix.com> <20230621161959.1061178-2-anthony.perard@citrix.com> In-Reply-To: <20230621161959.1061178-2-anthony.perard@citrix.com> From: Jason Andryuk Date: Wed, 21 Jun 2023 12:27:53 -0400 Message-ID: Subject: Re: [XEN PATCH 1/3] build: define ARCH and SRCARCH later To: Anthony PERARD Cc: xen-devel@lists.xenproject.org, Andrew Cooper , George Dunlap , Jan Beulich , Julien Grall , Stefano Stabellini , Wei Liu Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Wed, Jun 21, 2023 at 12:20=E2=80=AFPM Anthony PERARD wrote: > > Defining ARCH and SRCARCH later in xen/Makefile allows to switch to > immediate evaluation variable type. > > ARCH and SRCARCH depends on value defined in Config.mk and aren't used > TARGET_SUBARCH or TARGET_ARCH, and not before it's needed in a > sub-make or a rule. > > This will help reduce the number of times the shell rune is been > run. > > With GNU make 4.4, the number of execution of the command present in > these $(shell ) increased greatly. This is probably because as of make > 4.4, exported variable are also added to the environment of $(shell ) > construct. > > Also, `make -d` shows a lot of these: > Makefile:39: not recursively expanding SRCARCH to export to shell fun= ction > Makefile:38: not recursively expanding ARCH to export to shell functi= on > > Reported-by: Jason Andryuk > Signed-off-by: Anthony PERARD Tested-by: Jason Andryuk Things are back to normal speed - Thanks a lot! -Jason From xen-devel-bounces@lists.xenproject.org Wed Jun 21 16:31:04 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 16:31:04 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552982.863267 (Exim 4.92) (envelope-from ) id 1qC0jQ-0006P2-0u; Wed, 21 Jun 2023 16:30:56 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552982.863267; Wed, 21 Jun 2023 16:30:55 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC0jP-0006Ov-UZ; Wed, 21 Jun 2023 16:30:55 +0000 Received: by outflank-mailman (input) for mailman id 552982; Wed, 21 Jun 2023 16:30:54 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC0jO-0006Op-E2 for xen-devel@lists.xenproject.org; Wed, 21 Jun 2023 16:30:54 +0000 Received: from mail-ed1-x530.google.com (mail-ed1-x530.google.com [2a00:1450:4864:20::530]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id fd3112e8-1050-11ee-b236-6b7b168915f2; Wed, 21 Jun 2023 18:30:52 +0200 (CEST) Received: by mail-ed1-x530.google.com with SMTP id 4fb4d7f45d1cf-51a2661614cso7935487a12.2 for ; Wed, 21 Jun 2023 09:30:52 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: fd3112e8-1050-11ee-b236-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687365052; x=1689957052; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=g3MJUGb+fDkP6Z6i5IHVBHg7BbJ798H5n/H0dPPUYt4=; b=ba+iO5iH+7lxC2J8yQmcq/lQMltYDhFikHJkZ9TGCU9XeeaHB3YVSkaeL03UzX/fN0 VFsg1sj+iYc75mc0dSdkWlyD5qZaWwjU0hTV/TxG2BTMDB9cJ/KzmnGwOjr8CUng77px QJnYYjj85g9oonevtNJRQjeF0HcB2D88Q0mLC5Eo6r0IDCRz3zUXg82w1nVVr9A821q9 f8eOHHelNHLs8xRJMNrE0CLa87hN2eDX5NdhhCiDOrXC60a+6GojhtMg9aD341+Udgz2 JDxvohdI5zNgSACyQ+wdupJQzOEpz7pOCaGbVBH8X027IvLsaMRYr9Y+mJaCJqGuwmPK wAoQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687365052; x=1689957052; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=g3MJUGb+fDkP6Z6i5IHVBHg7BbJ798H5n/H0dPPUYt4=; b=Si0YiUbrCSzB64ERVrJcev72IoViLbjz3js4GW/ObwRN4P7smJ+SiglRTEaplbusVF Wg6WT/0Nioc+6DwYU6Z6/7UdrXmpKImZWjyfrwPjjpvpDM2WhuSHylp8C69j+krfpPUa K0O/BxtxzxMeq85XQTfoBDLy2g6Oqx5GcVbdoAYNaP74J82JOQqX+ZUEzQqncltnCFH2 H0b0qt6Q6qNrh1aq5HmwjFFu2hTn3gnCtE2eKmGcWK6GN9rEw0p2eGpnARaKMJURl6Gt /nR9+67i9/wP1sScBh76BpBc4JN/LVRyrEpYIG8n9kHYyEXDca4j5ifP+6VUipGgOg+0 GZ1g== X-Gm-Message-State: AC+VfDwFd+KlGOaI+nVwRg8a/FNVOc6wupNmxGFA+DWg+gpa9KtFZf3I tcOSvudRmwUznj/bjmhNvpCKUuUt51GQYIRvWPs= X-Google-Smtp-Source: ACHHUZ5CGw/iNxIwcAGqpDnXgGYCXYTGunogXUqLJGksWEGA62I0xWtndl3pzws5uYZ+Xr8PsYCqtEoDYF6NmBD8abg= X-Received: by 2002:a50:ee96:0:b0:51a:3307:8ec6 with SMTP id f22-20020a50ee96000000b0051a33078ec6mr12067541edr.11.1687365052096; Wed, 21 Jun 2023 09:30:52 -0700 (PDT) MIME-Version: 1.0 References: <20230621161959.1061178-1-anthony.perard@citrix.com> <20230621161959.1061178-2-anthony.perard@citrix.com> In-Reply-To: From: Jason Andryuk Date: Wed, 21 Jun 2023 12:30:40 -0400 Message-ID: Subject: Re: [XEN PATCH 1/3] build: define ARCH and SRCARCH later To: Anthony PERARD Cc: xen-devel@lists.xenproject.org, Andrew Cooper , George Dunlap , Jan Beulich , Julien Grall , Stefano Stabellini , Wei Liu Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Wed, Jun 21, 2023 at 12:27=E2=80=AFPM Jason Andryuk = wrote: > > On Wed, Jun 21, 2023 at 12:20=E2=80=AFPM Anthony PERARD > wrote: > > > > Defining ARCH and SRCARCH later in xen/Makefile allows to switch to > > immediate evaluation variable type. > > > > ARCH and SRCARCH depends on value defined in Config.mk and aren't used > > TARGET_SUBARCH or TARGET_ARCH, and not before it's needed in a > > sub-make or a rule. > > > > This will help reduce the number of times the shell rune is been > > run. > > > > With GNU make 4.4, the number of execution of the command present in > > these $(shell ) increased greatly. This is probably because as of make > > 4.4, exported variable are also added to the environment of $(shell ) > > construct. > > > > Also, `make -d` shows a lot of these: > > Makefile:39: not recursively expanding SRCARCH to export to shell f= unction > > Makefile:38: not recursively expanding ARCH to export to shell func= tion > > > > Reported-by: Jason Andryuk > > Signed-off-by: Anthony PERARD > > Tested-by: Jason Andryuk Tested-by: for the whole series, FYI. Thanks, Jason From xen-devel-bounces@lists.xenproject.org Wed Jun 21 16:35:42 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 16:35:42 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552988.863278 (Exim 4.92) (envelope-from ) id 1qC0nx-00071r-JB; Wed, 21 Jun 2023 16:35:37 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552988.863278; Wed, 21 Jun 2023 16:35:37 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC0nx-00071k-Ew; Wed, 21 Jun 2023 16:35:37 +0000 Received: by outflank-mailman (input) for mailman id 552988; Wed, 21 Jun 2023 16:35:36 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC0nw-00071e-GO for xen-devel@lists.xenproject.org; Wed, 21 Jun 2023 16:35:36 +0000 Received: from mail-ed1-x533.google.com (mail-ed1-x533.google.com [2a00:1450:4864:20::533]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id a5b5748c-1051-11ee-b236-6b7b168915f2; Wed, 21 Jun 2023 18:35:35 +0200 (CEST) Received: by mail-ed1-x533.google.com with SMTP id 4fb4d7f45d1cf-514ab6cb529so13433445a12.1 for ; Wed, 21 Jun 2023 09:35:35 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: a5b5748c-1051-11ee-b236-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687365335; x=1689957335; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=OlyLGh0xTVH8JxlpESb1IMLg1C/AdwZE4iFR202x120=; b=b7KCOl2BOdBXWKllyS8slO2xb4rmElxeKUEAy/BqXLwcQWUSZgu9ledfPdJvqgWSw2 A/YahHliAocepaa1qlGxUQu57qULXb89dtd2u6RtoBUxUkTn7FDha1QGveYdRktIi6cw x4nCrpwM8FYi0ZkdahCo/n3u6WRqFd6aHNZXRgjsd5aCen3TV0Fq2NBFPjKep01Zdo+/ TkLb6hbeAZBE+3LgJ/StlpSwajC0DzZ4wXoFJJC0hLR0N7craALcI8AMyfjNjlkayGmO Kgpg5mDRA6KXLS6kHrA4+GSPNKOZR6Y3BszitMvAQYdWUAqfRYczr7oHjL9U/kjicJdY 7k1g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687365335; x=1689957335; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=OlyLGh0xTVH8JxlpESb1IMLg1C/AdwZE4iFR202x120=; b=CWBjRL77bxxV29sUKoGWNrA4rH5PkYsxo3XloASkm3Z4NYDrXVynaqoL0pnFVtrmOy V8QIE+9BZam660TmG5wm8dKXRkEuyCMHuelnWHvc3moCOI5BvLm+VZITJ5w86mBrboGU jVFO+AFy43ms8wlQv0CWyvY8ueexx9fDpTcRKvRB6XQKV3DNm9Eg08HekG7lzcSlQqGW RuK2rpziiFyBAiCvoobvLTl9hpTR/q3vBIJPcWKq5CPEONWUbGSj9h3aCv+R1s4CYLsE LyqEO6NhPVg/CBr2oXkj3x1H28eAxQH2gv6a8L0eJBTuODfjmKRiNZ5jGSJMT8xeWl+S KfgA== X-Gm-Message-State: AC+VfDzZQolJ8MKu+1VGEFNlDrtcdxEQzjsvRw1g+0t4lde2F2W2k+eZ 82I1I4riiz4lYX4nqdgf/UvyqZN8fYLbhRYKm4M= X-Google-Smtp-Source: ACHHUZ6YSZIhcRxYSKM7fyS+mZ8b49f7mH4l43bFTLHnG0QGv6NB/cNIZlfGry75u1h9mKHA45f8PFBi3LAMcVzIqT8= X-Received: by 2002:a05:6402:274b:b0:51a:4039:b9e with SMTP id z11-20020a056402274b00b0051a40390b9emr14444586edd.9.1687365334858; Wed, 21 Jun 2023 09:35:34 -0700 (PDT) MIME-Version: 1.0 References: <272947b9494f00bb4ad3e27c050e99f8b61905b3.1687127946.git.jupham125@gmail.com> <02b6a8a8-2da7-2864-0c0e-5ed81a560355@redhat.com> In-Reply-To: <02b6a8a8-2da7-2864-0c0e-5ed81a560355@redhat.com> From: Joel Upham Date: Wed, 21 Jun 2023 12:35:23 -0400 Message-ID: Subject: Re: [PATCH v1 1/1] Q35 Support To: David Hildenbrand Cc: Ani Sinha , Anthony Perard , =?UTF-8?Q?Daniel_P=2E_Berrang=C3=A9?= , Eduardo Habkost , Igor Mammedov , Marcel Apfelbaum , "Michael S. Tsirkin" , Paolo Bonzini , Paul Durrant , =?UTF-8?Q?Philippe_Mathieu=2DDaud=C3=A9?= , Richard Henderson , Stefano Stabellini , Yanan Wang , "open list:X86 Xen CPUs" , qemu-devel@nongnu.org Content-Type: multipart/alternative; boundary="00000000000063ffd605fea65b42" --00000000000063ffd605fea65b42 Content-Type: text/plain; charset="UTF-8" Sorry, this was sent in error when I did the git send-email for the folder. This was before I broke each patch down (after looking at the Qemu submission guidance). This is my first time sending a patch in this way, so thanks for the understanding. This patch can be ignored, as they are all covered elsewhere. -Joel Upham On Wed, Jun 21, 2023 at 7:10 AM David Hildenbrand wrote: > On 20.06.23 19:24, Joel Upham wrote: > > Inexpressive patch subject and non-existant patch desciption. I have no > clue what this is supposed to do, except that it involes q35 and xen ()I > guess ?. > > > --- > > hw/acpi/ich9.c | 22 +- > > hw/acpi/pcihp.c | 6 +- > > hw/core/machine.c | 19 + > > hw/i386/pc_piix.c | 3 +- > > hw/i386/pc_q35.c | 39 +- > > hw/i386/xen/xen-hvm.c | 7 +- > > hw/i386/xen/xen_platform.c | 19 +- > > hw/isa/lpc_ich9.c | 53 +- > > hw/isa/piix3.c | 2 +- > > hw/pci-host/q35.c | 28 +- > > hw/pci/pci.c | 17 + > > hw/xen/xen-host-pci-device.c | 106 +++- > > hw/xen/xen-host-pci-device.h | 6 +- > > hw/xen/xen_pt.c | 49 +- > > hw/xen/xen_pt.h | 19 +- > > hw/xen/xen_pt_config_init.c | 1103 ++++++++++++++++++++++++++++++--- > > include/hw/acpi/ich9.h | 1 + > > include/hw/acpi/pcihp.h | 2 + > > include/hw/boards.h | 1 + > > include/hw/i386/pc.h | 3 + > > include/hw/pci-host/q35.h | 4 +- > > include/hw/pci/pci.h | 3 + > > include/hw/southbridge/ich9.h | 1 + > > include/hw/xen/xen.h | 4 +- > > qemu-options.hx | 1 + > > softmmu/datadir.c | 1 - > > softmmu/qdev-monitor.c | 3 +- > > stubs/xen-hw-stub.c | 4 +- > > 28 files changed, 1395 insertions(+), 131 deletions(-) > > > > Usually people refrain from reviewing such massive patches. Most > probably this can be broken up into reviewable pieces. > > Was this supposed to be an RFC? > > -- > Cheers, > > David / dhildenb > > --00000000000063ffd605fea65b42 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Sorry, this was sent in error when I did the git send-ema= il for the folder. This was before I broke each patch down (after looking a= t the Qemu submission guidance). This is my first time sending a patch in t= his way, so thanks for the understanding. This patch can be ignored, as the= y are all covered elsewhere.=C2=A0

-Joel Upham

On Wed, Jun 21, 2023 at 7:10 AM David Hildenbran= d <david@redhat.com> wrote:
On 20.06.23 19:24, Joel Upham wrote:=

Inexpressive patch subject and non-existant patch desciption. I have no clue what this is supposed to do, except that it involes q35 and xen ()I guess ?.

> ---
>=C2=A0 =C2=A0hw/acpi/ich9.c=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 |=C2=A0 =C2=A022 +-
>=C2=A0 =C2=A0hw/acpi/pcihp.c=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0|=C2=A0 =C2=A0 6 +-
>=C2=A0 =C2=A0hw/core/machine.c=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0= =C2=A0|=C2=A0 =C2=A019 +
>=C2=A0 =C2=A0hw/i386/pc_piix.c=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0= =C2=A0|=C2=A0 =C2=A0 3 +-
>=C2=A0 =C2=A0hw/i386/pc_q35.c=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 |=C2=A0 =C2=A039 +-
>=C2=A0 =C2=A0hw/i386/xen/xen-hvm.c=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0|= =C2=A0 =C2=A0 7 +-
>=C2=A0 =C2=A0hw/i386/xen/xen_platform.c=C2=A0 =C2=A0 |=C2=A0 =C2=A019 += -
>=C2=A0 =C2=A0hw/isa/lpc_ich9.c=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0= =C2=A0|=C2=A0 =C2=A053 +-
>=C2=A0 =C2=A0hw/isa/piix3.c=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 |=C2=A0 =C2=A0 2 +-
>=C2=A0 =C2=A0hw/pci-host/q35.c=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0= =C2=A0|=C2=A0 =C2=A028 +-
>=C2=A0 =C2=A0hw/pci/pci.c=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 =C2=A0 |=C2=A0 =C2=A017 +
>=C2=A0 =C2=A0hw/xen/xen-host-pci-device.c=C2=A0 |=C2=A0 106 +++-
>=C2=A0 =C2=A0hw/xen/xen-host-pci-device.h=C2=A0 |=C2=A0 =C2=A0 6 +-
>=C2=A0 =C2=A0hw/xen/xen_pt.c=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0|=C2=A0 =C2=A049 +-
>=C2=A0 =C2=A0hw/xen/xen_pt.h=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0|=C2=A0 =C2=A019 +-
>=C2=A0 =C2=A0hw/xen/xen_pt_config_init.c=C2=A0 =C2=A0| 1103 +++++++++++= +++++++++++++++++++---
>=C2=A0 =C2=A0include/hw/acpi/ich9.h=C2=A0 =C2=A0 =C2=A0 =C2=A0 |=C2=A0 = =C2=A0 1 +
>=C2=A0 =C2=A0include/hw/acpi/pcihp.h=C2=A0 =C2=A0 =C2=A0 =C2=A0|=C2=A0 = =C2=A0 2 +
>=C2=A0 =C2=A0include/hw/boards.h=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0|=C2=A0 =C2=A0 1 +
>=C2=A0 =C2=A0include/hw/i386/pc.h=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 |= =C2=A0 =C2=A0 3 +
>=C2=A0 =C2=A0include/hw/pci-host/q35.h=C2=A0 =C2=A0 =C2=A0|=C2=A0 =C2= =A0 4 +-
>=C2=A0 =C2=A0include/hw/pci/pci.h=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 |= =C2=A0 =C2=A0 3 +
>=C2=A0 =C2=A0include/hw/southbridge/ich9.h |=C2=A0 =C2=A0 1 +
>=C2=A0 =C2=A0include/hw/xen/xen.h=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 |= =C2=A0 =C2=A0 4 +-
>=C2=A0 =C2=A0qemu-options.hx=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0|=C2=A0 =C2=A0 1 +
>=C2=A0 =C2=A0softmmu/datadir.c=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0= =C2=A0|=C2=A0 =C2=A0 1 -
>=C2=A0 =C2=A0softmmu/qdev-monitor.c=C2=A0 =C2=A0 =C2=A0 =C2=A0 |=C2=A0 = =C2=A0 3 +-
>=C2=A0 =C2=A0stubs/xen-hw-stub.c=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0|=C2=A0 =C2=A0 4 +-
>=C2=A0 =C2=A028 files changed, 1395 insertions(+), 131 deletions(-)
>

Usually people refrain from reviewing such massive patches. Most
probably this can be broken up into reviewable pieces.

Was this supposed to be an RFC?

--
Cheers,

David / dhildenb

--00000000000063ffd605fea65b42-- From xen-devel-bounces@lists.xenproject.org Wed Jun 21 16:39:05 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 16:39:05 +0000 Received: from list by lists.xenproject.org with outflank-mailman.552993.863287 (Exim 4.92) (envelope-from ) id 1qC0r4-0007cO-Vk; Wed, 21 Jun 2023 16:38:50 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 552993.863287; Wed, 21 Jun 2023 16:38:50 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC0r4-0007cH-T5; Wed, 21 Jun 2023 16:38:50 +0000 Received: by outflank-mailman (input) for mailman id 552993; Wed, 21 Jun 2023 16:38:50 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC0r4-0007c7-DI; Wed, 21 Jun 2023 16:38:50 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC0r4-0004u7-8e; Wed, 21 Jun 2023 16:38:50 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC0r3-0008T6-Pf; Wed, 21 Jun 2023 16:38:49 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qC0r3-0008VZ-P9; Wed, 21 Jun 2023 16:38:49 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=HakMNZStaxt/3xb+VproelkKTYZEjlgN0NyIp0/a/5I=; b=2Hpliw9ucHusjgErvXwdOGA/0Y OalmmoimbBO3+VyK3KKredSIg3S5eZuRhEKc3/fwhmOSc3AWZ1zxFsEzhqJ8hwkNIY1rnIbg1t2ka qrc5dJfJBwX3cRTX9XUn51dEhPm6YzOy0mL4S7r5zOv6S5b34bPl4HAjmuTRanvPouWc=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable-smoke test] 181537: trouble: blocked/broken/pass X-Osstest-Failures: xen-unstable-smoke:build-armhf::broken:regression xen-unstable-smoke:build-armhf:host-install(4):broken:regression xen-unstable-smoke:test-armhf-armhf-xl:build-check(1):blocked:nonblocking xen-unstable-smoke:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking xen-unstable-smoke:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking xen-unstable-smoke:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: xen=14f42af3f52d56e769263dc414616be805bd6e2d X-Osstest-Versions-That: xen=7a25a1501ca941c3e01b0c4e624ace05417f1587 From: osstest service owner Date: Wed, 21 Jun 2023 16:38:49 +0000 flight 181537 xen-unstable-smoke real [real] http://logs.test-lab.xenproject.org/osstest/logs/181537/ Failures and problems with tests :-( Tests which did not succeed and are blocking, including tests which could not be run: build-armhf broken build-armhf 4 host-install(4) broken REGR. vs. 181476 Tests which did not succeed, but are not blocking: test-armhf-armhf-xl 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass version targeted for testing: xen 14f42af3f52d56e769263dc414616be805bd6e2d baseline version: xen 7a25a1501ca941c3e01b0c4e624ace05417f1587 Last test of basis 181476 2023-06-17 04:00:28 Z 4 days Failing since 181504 2023-06-19 11:00:26 Z 2 days 7 attempts Testing same since 181537 2023-06-21 12:02:07 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Alistair Francis Andrew Cooper Anthony PERARD Henry Wang Jan Beulich Julien Grall Michal Orzel Oleksii Kurochko Roger Pau Monné Stefano Stabellini jobs: build-arm64-xsm pass build-amd64 pass build-armhf broken build-amd64-libvirt pass test-armhf-armhf-xl blocked test-arm64-arm64-xl-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-libvirt pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary broken-job build-armhf broken broken-step build-armhf host-install(4) Not pushing. (No revision log; it would be 308 lines long.) From xen-devel-bounces@lists.xenproject.org Wed Jun 21 16:39:37 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 16:39:37 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553001.863297 (Exim 4.92) (envelope-from ) id 1qC0rf-0008BF-BS; Wed, 21 Jun 2023 16:39:27 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553001.863297; Wed, 21 Jun 2023 16:39:27 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC0rf-0008B6-8q; Wed, 21 Jun 2023 16:39:27 +0000 Received: by outflank-mailman (input) for mailman id 553001; Wed, 21 Jun 2023 16:39:26 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC0re-00084P-Aa for xen-devel@lists.xenproject.org; Wed, 21 Jun 2023 16:39:26 +0000 Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.129.124]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 2db4c203-1052-11ee-8611-37d641c3527e; Wed, 21 Jun 2023 18:39:24 +0200 (CEST) Received: from mail-wm1-f72.google.com (mail-wm1-f72.google.com [209.85.128.72]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-155-yYGTWd02M9S6HE0sRb2wPQ-1; Wed, 21 Jun 2023 12:39:21 -0400 Received: by mail-wm1-f72.google.com with SMTP id 5b1f17b1804b1-3f9b8e0896aso10373785e9.0 for ; Wed, 21 Jun 2023 09:39:21 -0700 (PDT) Received: from ?IPV6:2003:cb:c70b:9c00:7978:3030:9d9a:1aef? (p200300cbc70b9c00797830309d9a1aef.dip0.t-ipconnect.de. [2003:cb:c70b:9c00:7978:3030:9d9a:1aef]) by smtp.gmail.com with ESMTPSA id i15-20020a5d558f000000b0030647d1f34bsm5017228wrv.1.2023.06.21.09.39.19 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Wed, 21 Jun 2023 09:39:19 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 2db4c203-1052-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1687365563; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=KVdFXpPjlqJPMZZKnR2LLT9rdM+KJEhF4WJQ7uIo7nU=; b=QUt4h8AiWF2RVdYXIH6cN6AF8ivwSJz3rgkvwt4Nu+3ndMSocVybLD96ynwX78ED7fKdUc wWwpED1J0G8Qog5dzNV+iR/2qT75oP3qrPB26mvWVGQvCX81+20+iPXXIz1I2F4pI1yIN0 D4exGhwaYiOMidbGohMlNFDDUbOdvJU= X-MC-Unique: yYGTWd02M9S6HE0sRb2wPQ-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687365560; x=1689957560; h=content-transfer-encoding:in-reply-to:organization:from:references :cc:to:content-language:subject:user-agent:mime-version:date :message-id:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=KVdFXpPjlqJPMZZKnR2LLT9rdM+KJEhF4WJQ7uIo7nU=; b=YDykgoZ9ZcQ/atmKhAEWYM8X8kt5CaSUla0Czig12AF2V0h09eKx6pA0V3ywENKGzj D0yFGDx/NuPGo6+yPfExdX/HqrP4DqkUe1KVpRFjfvin2kOd4ilZnZZYJB89Gd5Ve3cJ b5HfLQGf868p7yHt4XFDQ1c0bIzTFO+/jQX7Q9Rf6eByr8/Tl8wvalwltbpRlSIK2nd4 hxPMZv58O31j/GkpJrFm0AGpBLQZnm9TxVT7FFFD/eo0az/Zq3FwB7wOjwWM5tTOrpor 4S+C5KRxWIyFUgakBdAWCweLl+z380PyE47+01vo7X/Ue6EYv25AeN90ijrebscgKyAa bjKQ== X-Gm-Message-State: AC+VfDwpQHuH1pcSNDQPc8Sd8dQUBPwUxlYhG0GZ4F4iHVyj5gBqmbuB sCl/zrX+nr63m+JgAm7Z+TIzx2zjrNld/XgDFaeFKeGqvyyJVt3BCGSdUKRO4MfHiZRYjFE1en6 zGSXhw7sIVnwu1wgBnP2zzAOPOxo= X-Received: by 2002:a7b:ca54:0:b0:3f9:b552:411a with SMTP id m20-20020a7bca54000000b003f9b552411amr5427635wml.37.1687365560788; Wed, 21 Jun 2023 09:39:20 -0700 (PDT) X-Google-Smtp-Source: ACHHUZ4GSgto16JJNYZ2WJ0ZyfCBtJqHKd0lHiSEosjndJQ2v2PTuWkp4Ke7AdNvEObPczZZk7pGDA== X-Received: by 2002:a7b:ca54:0:b0:3f9:b552:411a with SMTP id m20-20020a7bca54000000b003f9b552411amr5427608wml.37.1687365560432; Wed, 21 Jun 2023 09:39:20 -0700 (PDT) Message-ID: Date: Wed, 21 Jun 2023 18:39:18 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v1 1/1] Q35 Support To: Joel Upham Cc: Ani Sinha , Anthony Perard , =?UTF-8?Q?Daniel_P=2e_Berrang=c3=a9?= , Eduardo Habkost , Igor Mammedov , Marcel Apfelbaum , "Michael S. Tsirkin" , Paolo Bonzini , Paul Durrant , =?UTF-8?Q?Philippe_Mathieu-Daud=c3=a9?= , Richard Henderson , Stefano Stabellini , Yanan Wang , "open list:X86 Xen CPUs" , qemu-devel@nongnu.org References: <272947b9494f00bb4ad3e27c050e99f8b61905b3.1687127946.git.jupham125@gmail.com> <02b6a8a8-2da7-2864-0c0e-5ed81a560355@redhat.com> From: David Hildenbrand Organization: Red Hat In-Reply-To: X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Language: en-US Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit On 21.06.23 18:35, Joel Upham wrote: > Sorry, this was sent in error when I did the git send-email for the > folder. This was before I broke each patch down (after looking at the > Qemu submission guidance). This is my first time sending a patch in this > way, so thanks for the understanding. This patch can be ignored, as they > are all covered elsewhere. We've all been there (messing with git send-email), no need to feel bad :) -- Cheers, David / dhildenb From xen-devel-bounces@lists.xenproject.org Wed Jun 21 16:41:04 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 16:41:04 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553007.863308 (Exim 4.92) (envelope-from ) id 1qC0tA-0001Da-N9; Wed, 21 Jun 2023 16:41:00 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553007.863308; Wed, 21 Jun 2023 16:41:00 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC0tA-0001DT-Iw; Wed, 21 Jun 2023 16:41:00 +0000 Received: by outflank-mailman (input) for mailman id 553007; Wed, 21 Jun 2023 16:40:59 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC0t8-0001DE-Mn for xen-devel@lists.xenproject.org; Wed, 21 Jun 2023 16:40:59 +0000 Received: from desiato.infradead.org (desiato.infradead.org [2001:8b0:10b:1:d65d:64ff:fe57:4e05]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 6485235f-1052-11ee-8611-37d641c3527e; Wed, 21 Jun 2023 18:40:56 +0200 (CEST) Received: from j130084.upc-j.chello.nl ([24.132.130.84] helo=noisy.programming.kicks-ass.net) by desiato.infradead.org with esmtpsa (Exim 4.96 #2 (Red Hat Linux)) id 1qC0sq-00HaPO-2N; Wed, 21 Jun 2023 16:40:40 +0000 Received: from hirez.programming.kicks-ass.net (hirez.programming.kicks-ass.net [192.168.1.225]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits)) (Client did not present a certificate) by noisy.programming.kicks-ass.net (Postfix) with ESMTPS id 55932300274; Wed, 21 Jun 2023 18:40:38 +0200 (CEST) Received: by hirez.programming.kicks-ass.net (Postfix, from userid 1000) id 3DB482130B3BB; Wed, 21 Jun 2023 18:40:38 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 6485235f-1052-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=desiato.20200630; h=In-Reply-To:Content-Type:MIME-Version: References:Message-ID:Subject:Cc:To:From:Date:Sender:Reply-To: Content-Transfer-Encoding:Content-ID:Content-Description; bh=q8ZpFd9zhJ6vbE7RC8xwAURukdS6rBx4YiofuzrByd8=; b=mpUuWq+T2KEHGEgVKWj10ELKCz RJDgr2Qe8zmvnwKiugBusbRYyOc5Ln+Cd9vXiQ20G/U57IC9UXEI0htlLw3JOs+bChUIkR15xEqx4 RHFQqKdXb2TnlCdi7o+5jABPENEBlQ4yjhqXjzpH2B8LtnV3QNYMkvLiUvh3YbrKUBGVQzlPhlTHu GQt8CdgE5hfCutdqilwWM4+tDzV3FdCMiOXl97eXC8ORKD3M4zcdsJKzo7/TAZ1DVIzbZ7AWUUQxM rFvOleEU91DCsYoLwnQlv6RxRUI268mIHeMP9aIs7EDbiIgyROsIgXIVQklKLkOHSiMJlq6qxEPg0 zDf1a9fQ==; Date: Wed, 21 Jun 2023 18:40:38 +0200 From: Peter Zijlstra To: Per Bilse Cc: Andy Lutomirski , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , "maintainer:X86 ARCHITECTURE (32-BIT AND 64-BIT)" , "H. Peter Anvin" , Juergen Gross , Stefano Stabellini , Oleksandr Tyshchenko , "open list:X86 ENTRY CODE" , "moderated list:XEN HYPERVISOR INTERFACE" Subject: Re: [PATCH] Updates to Xen hypercall preemption Message-ID: <20230621164038.GM2053369@hirez.programming.kicks-ass.net> References: <20230621151442.2152425-1-per.bilse@citrix.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20230621151442.2152425-1-per.bilse@citrix.com> On Wed, Jun 21, 2023 at 03:14:42PM +0000, Per Bilse wrote: > Some Xen hypercalls issued by dom0 guests may run for many 10s of > seconds, potentially causing watchdog timeouts and other problems. > It's rare for this to happen, but it does in extreme circumstances, > for instance when shutting down VMs with very large memory allocations > (> 0.5 - 1TB). These hypercalls are preemptible, but the fixes in the > kernel to ensure preemption have fallen into a state of disrepair, and > are currently ineffective. This patch brings things up to date by way of: I don't understand it -- fundamentally, how can linux schedule when the guest isn't even running? Hypercall transfers control to the host/hypervisor and leaves the guest suspended. > 1) Update general feature selection from XEN_PV to XEN_DOM0. > The issue is unique to dom0 Xen guests, but isn't unique to PV dom0s, > and will occur in future PVH dom0s. XEN_DOM0 depends on either PV or PVH, > as well as the appropriate details for dom0. > > 2) Update specific feature selection from !PREEMPTION to !PREEMPT. > The following table shows the relationship between different preemption > features and their indicators/selectors (Y = "=Y", N = "is not set", > . = absent): > > | np-s | np-d | vp-s | vp-d | fp-s | fp-d > CONFIG_PREEMPT_DYNAMIC N Y N Y N Y > CONFIG_PREEMPTION . Y . Y Y Y > CONFIG_PREEMPT N N N N Y Y > CONFIG_PREEMPT_VOLUNTARY N N Y Y N N > CONFIG_PREEMPT_NONE Y Y N N N N > > Unless PREEMPT is set, we need to enable the fixes. > > 3) Update flag access from __this_cpu_XXX() to raw_cpu_XXX(). > The long-running hypercalls are flagged by way of a per-cpu variable > which is set before and cleared after the relevant calls. This elicits > a warning "BUG: using __this_cpu_write() in preemptible [00000000] code", > but xen_pv_evtchn_do_upcall() deals specifically with this. For > consistency, flag testing is also updated, and the code is simplified > and tidied accordingly. This makes no sense; the race that warning warns about is: CPU0 CPU1 per-cpu write do-hypercall So you wrote the value on CPU0, got migrated to CPU1 because you had preemptioned enabled, and then continue with the percpu value of CPU1 because that's where you're at now. Simply making the warning go away doesn't help, CPU1 does hypercall while store was on CPU0. > 4) Update irqentry_exit_cond_resched() to raw_irqentry_exit_cond_resched(). > The code will call irqentry_exit_cond_resched() if the flag (as noted > above) is set, but the dynamic preemption feature will livepatch that > function to a no-op unless full preemption is selected. The code is > therefore updated to call raw_irqentry_exit_cond_resched(). That, again meeds more explanation. Why do you want this if not preemptible? You're doing 4 things, that should be 4 patches. Also, please give more clues for how this is supposed to work at all. From xen-devel-bounces@lists.xenproject.org Wed Jun 21 16:43:21 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 16:43:21 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553014.863318 (Exim 4.92) (envelope-from ) id 1qC0vL-0001ne-2r; Wed, 21 Jun 2023 16:43:15 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553014.863318; Wed, 21 Jun 2023 16:43:15 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC0vL-0001nX-0D; Wed, 21 Jun 2023 16:43:15 +0000 Received: by outflank-mailman (input) for mailman id 553014; Wed, 21 Jun 2023 16:43:14 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC0vK-0001nP-09 for xen-devel@lists.xenproject.org; Wed, 21 Jun 2023 16:43:14 +0000 Received: from mail-wm1-x330.google.com (mail-wm1-x330.google.com [2a00:1450:4864:20::330]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id b63947b7-1052-11ee-b236-6b7b168915f2; Wed, 21 Jun 2023 18:43:12 +0200 (CEST) Received: by mail-wm1-x330.google.com with SMTP id 5b1f17b1804b1-3f904dcc1e2so52439845e9.3 for ; Wed, 21 Jun 2023 09:43:12 -0700 (PDT) Received: from EMEAENGAAD19049. (default-46-102-197-194.interdsl.co.uk. [46.102.197.194]) by smtp.gmail.com with ESMTPSA id q6-20020a7bce86000000b003f735ba7736sm5430740wmj.46.2023.06.21.09.43.11 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 21 Jun 2023 09:43:11 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: b63947b7-1052-11ee-b236-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cloud.com; s=cloud; t=1687365792; x=1689957792; h=in-reply-to:content-disposition:mime-version:references:subject:cc :to:from:date:message-id:from:to:cc:subject:date:message-id:reply-to; bh=rm1oHLYmSLx19Oi4lcZTT+w4Of8vQxJJKbWSwgAOSZQ=; b=OnO8gn/qPjvhmgedUDc2wydFdAEfpuM5DvwsUY1pwJ09Cf8r5g8WDgvd6KmkABMFhc UAbUTQlKn8fB+7ckhoZUoT7flKzdmrVH9Pbkd8DByIEQNlhi8pt3cep3tz6MZ/+Zw/xg MBJeBb9ItOm4NtMFePcs3qkduHbHbRca20Oh0= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687365792; x=1689957792; h=in-reply-to:content-disposition:mime-version:references:subject:cc :to:from:date:message-id:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=rm1oHLYmSLx19Oi4lcZTT+w4Of8vQxJJKbWSwgAOSZQ=; b=Dr8SYf3aZUBZ24jxTvTTlthDMLH115wyqZr9rA/PU+uvJht+74gu9voo/DpRVmxLJu mO1ZzScw5wfTmL3HzRcqrrM9PZH+6ZepZuA0FsjHVYbjpDn7XGlsIDwHWXTfk8Ebsv5S U5hqSd2RBuQIr3Hfw4u0Z/4IgAs0HEgflX/F46ueUnknpcDLwgqeXETlXI2nIKERvokD laAyMbqWJcm263ECg7Rpp8jc52rOfzJeQCVAIjlbsEZN0S8Bd9GiMIk8XIE1RvkufNyi 454POUYyOQxbirA+dmMLslaL3mPWLgTc3mC2PqU1euQsDUi6S65471DuLVmVuPAZDhqq tmpw== X-Gm-Message-State: AC+VfDwXfJsc+WL1/xwioKiIOiVQFg29iDHcWO22WrturO3J8aGsDS9V QyxgSFGkpwjuazYK3IWDs9M1Cw== X-Google-Smtp-Source: ACHHUZ7cK4dWID5ocute2D38hV8zFHng1XIVFg0Lj5visSmSfGC7K8AnV0wSbgfDCa+M9/wt33WGkg== X-Received: by 2002:a7b:c399:0:b0:3f9:b827:cbcc with SMTP id s25-20020a7bc399000000b003f9b827cbccmr4526180wmj.30.1687365792124; Wed, 21 Jun 2023 09:43:12 -0700 (PDT) Message-ID: <6493289f.7b0a0220.7f086.11fd@mx.google.com> X-Google-Original-Message-ID: Date: Wed, 21 Jun 2023 17:43:10 +0100 From: Alejandro Vallejo To: Andrew Cooper Cc: Xen-devel , Jan Beulich , Roger Pau =?iso-8859-1?Q?Monn=E9?= , Wei Liu Subject: Re: [PATCH v2 1/2] x86/boot: Clear XD_DISABLE from the early boot path References: <20230615153157.444-1-alejandro.vallejo@cloud.com> <20230615153157.444-2-alejandro.vallejo@cloud.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: Sure, to everything before this > > diff --git a/xen/arch/x86/cpu/intel.c b/xen/arch/x86/cpu/intel.c > > index 168cd58f36..46b0cd8dbb 100644 > > --- a/xen/arch/x86/cpu/intel.c > > +++ b/xen/arch/x86/cpu/intel.c > > @@ -305,23 +305,23 @@ static void cf_check early_init_intel(struct cpuinfo_x86 *c) > > c->x86_cache_alignment = 128; > > > > /* Unmask CPUID levels and NX if masked: */ > > - rdmsrl(MSR_IA32_MISC_ENABLE, misc_enable); > > - > > - disable = misc_enable & (MSR_IA32_MISC_ENABLE_LIMIT_CPUID | > > - MSR_IA32_MISC_ENABLE_XD_DISABLE); > > - if (disable) { > > - wrmsrl(MSR_IA32_MISC_ENABLE, misc_enable & ~disable); > > - bootsym(trampoline_misc_enable_off) |= disable; > > - bootsym(trampoline_efer) |= EFER_NXE; > > - } > > + if (rdmsr_safe(MSR_IA32_MISC_ENABLE, misc_enable) == 0) { > > There's no need to change rdmsrl() to rdmsr_safe(), I thought we established before some hypervisors might not implement it. In that case this function would crash. More gracefully than a triple fault, sure, but still not a very friendly thing to do. > and not doing so will shrink this diff a lot. This particular one, yes. That said, looking more carefully I'd say I should remove the XD_DISABLE parts of those lines altogether. It is unconditionally cleared on boot now and will never ever have a non-zero value at this point. > The only thing you need to alter the re-enable NX printk(), which > probably wants to move ahead of the "if (disable)" and source itself > from bootsym(trampoline_misc_enable_off) instead. Alternatively I could just get rid of the printk. As it is after this patch even the BSP starts off with NX enabled. EFER is updated as early as the trampoline, which is as early as it would've happened before regardless of XD_DISABLE. Alejandro From xen-devel-bounces@lists.xenproject.org Wed Jun 21 16:49:28 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 16:49:28 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553018.863328 (Exim 4.92) (envelope-from ) id 1qC11C-0002QT-MZ; Wed, 21 Jun 2023 16:49:18 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553018.863328; Wed, 21 Jun 2023 16:49:18 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC11C-0002QM-JT; Wed, 21 Jun 2023 16:49:18 +0000 Received: by outflank-mailman (input) for mailman id 553018; Wed, 21 Jun 2023 16:49:17 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC11B-0002QG-AX for xen-devel@lists.xenproject.org; Wed, 21 Jun 2023 16:49:17 +0000 Received: from mail-ed1-x535.google.com (mail-ed1-x535.google.com [2a00:1450:4864:20::535]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 8dea54e3-1053-11ee-8611-37d641c3527e; Wed, 21 Jun 2023 18:49:14 +0200 (CEST) Received: by mail-ed1-x535.google.com with SMTP id 4fb4d7f45d1cf-518ff822360so7552849a12.1 for ; Wed, 21 Jun 2023 09:49:14 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 8dea54e3-1053-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687366154; x=1689958154; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=HgbnY6Q6STwEL8TlZBTbtUT3Iq7Nv0s7MP/bko+bZvU=; b=ka5YuqqV0vQRS3Lt4iM0HOoUy9tHXnDRFeiiyjo8ZetKHZuj7l0fa7KzlcPK0OFDsP 0mFwyCyX9/QQuKImvRWIraDpcpsceKkaiavBQQ3HrNL+H5QnU4c7I+opAg2ZrBSVowko wkkBE9xx689Qe7drNaq5fpIPHn32m3Gs9bRCqucgm9hzxYToxcugiDt19i85iGMXxaOv WMrfqggRsRvCa/K4D74yF/mE+f3Cs46DIS44E/PJZKgsgzeF3IUZLZtWzThNlnuep8ne kYImzX+0No1PDZ+FrdPfAvLDVQsN2/+sXPjbgOtiyG5hCcZwm8PKXTo79LIVxj2jv2y1 roqw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687366154; x=1689958154; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=HgbnY6Q6STwEL8TlZBTbtUT3Iq7Nv0s7MP/bko+bZvU=; b=Qg/BdtvYGaoEjnmbPMgeoF4hv1oBRJjUAW6zwlcwm5YaS7Glh+375ch3KcOxiXwJ3V 0hGsBYH++9ayniXiEneJ7luDz8wxud2hJOD7jRJcXRiUj4sqvSWUXEMXMubZf0zA8tB5 wf6ixgeK7l5FLRHm4HpqcbhDYFE4fD71c/FqTvyMSdCNNM3rnt0QYDiGC9as2PP+y4sh 2/EhctSr1s9Nhml/msihhlz3UpMTHdmmdLQSruiT7eqPx3YC59fc3680eGNd+N+CcEMw zte2qf9q9MWAThacxh+jjNvfgHuLOh2c/IXoPHLEVuHGKmcFr41S1loIUgdEB0zzMJOX jSmg== X-Gm-Message-State: AC+VfDxU6ACbLm3ZAU3nOwE+Vw9tDkY5C82R+0Pj2O7eFGkptxZqnDhX v7PBGU50ozIIftVMkUH9qbnest4P4w9pWw1fLsI= X-Google-Smtp-Source: ACHHUZ6w34ErMCxy63b9vo61XuTwhs0fgJJglWPiTgu3qCibjoSzzND2W5pSgxdkw71AcXcEceWmJ+p7eeXFMn372nk= X-Received: by 2002:aa7:c706:0:b0:51a:3fc2:f60f with SMTP id i6-20020aa7c706000000b0051a3fc2f60fmr8371411edq.42.1687366154019; Wed, 21 Jun 2023 09:49:14 -0700 (PDT) MIME-Version: 1.0 References: <1c547c5581ce6192b70c68f39de108cdb2c73f7e.1687278381.git.jupham125@gmail.com> In-Reply-To: From: Joel Upham Date: Wed, 21 Jun 2023 12:49:03 -0400 Message-ID: Subject: Re: [PATCH v1 01/23] pc/xen: Xen Q35 support: provide IRQ handling for PCI devices To: =?UTF-8?Q?Daniel_P=2E_Berrang=C3=A9?= Cc: Anthony Perard , Eduardo Habkost , Marcel Apfelbaum , "Michael S. Tsirkin" , Paolo Bonzini , Paul Durrant , Richard Henderson , Stefano Stabellini , "open list:X86 Xen CPUs" , qemu-devel@nongnu.org Content-Type: multipart/alternative; boundary="00000000000037653b05fea68c7f" --00000000000037653b05fea68c7f Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Thank you, I was working off the Xen-devel and didn=E2=80=99t find his emai= l. I will update my qemu and xen patches for the next version. -Joel On Wed, Jun 21, 2023 at 3:17 AM Daniel P. Berrang=C3=A9 wrote: > On Tue, Jun 20, 2023 at 01:24:34PM -0400, Joel Upham wrote: > > > > Signed-off-by: Alexey Gerasimenko > > This isn't a valid email address for Alexey - I presume you grabbed > these patches from the xen-devel mail archives, which have mangled > the addresses for anti-spam reasons. > > Fortunately there are alternative archives which don't mangle the > patches: > > > https://lore.kernel.org/xen-devel/6067bc3c91c9ee629a35723dfb474ef168ff4eb= f.1520867955.git.x1917x@gmail.com/ > > Signed-off-by: Alexey Gerasimenko > > This affects all patches in the series, but I won't repeat my > comment on each one. > > > Signed-off-by: Joel Upham > > --- > > hw/i386/pc_piix.c | 3 +- > > hw/i386/xen/xen-hvm.c | 7 +++-- > > hw/isa/lpc_ich9.c | 53 ++++++++++++++++++++++++++++++++--- > > hw/isa/piix3.c | 2 +- > > include/hw/southbridge/ich9.h | 1 + > > include/hw/xen/xen.h | 4 +-- > > stubs/xen-hw-stub.c | 4 +-- > > 7 files changed, 61 insertions(+), 13 deletions(-) > > > > diff --git a/hw/i386/pc_piix.c b/hw/i386/pc_piix.c > > index d5b0dcd1fe..8c1b20f3bc 100644 > > --- a/hw/i386/pc_piix.c > > +++ b/hw/i386/pc_piix.c > > @@ -62,6 +62,7 @@ > > #endif > > #include "hw/xen/xen-x86.h" > > #include "hw/xen/xen.h" > > +#include "sysemu/xen.h" > > #include "migration/global_state.h" > > #include "migration/misc.h" > > #include "sysemu/numa.h" > > @@ -233,7 +234,7 @@ static void pc_init1(MachineState *machine, > > x86ms->above_4g_mem_size, > > pci_memory, ram_memory); > > pci_bus_map_irqs(pci_bus, > > - xen_enabled() ? xen_pci_slot_get_pirq > > + xen_enabled() ? xen_cmn_pci_slot_get_pirq > > : pc_pci_slot_get_pirq); > > pcms->bus =3D pci_bus; > > > > diff --git a/hw/i386/xen/xen-hvm.c b/hw/i386/xen/xen-hvm.c > > index 56641a550e..540ac46639 100644 > > --- a/hw/i386/xen/xen-hvm.c > > +++ b/hw/i386/xen/xen-hvm.c > > @@ -15,6 +15,7 @@ > > #include "hw/pci/pci.h" > > #include "hw/pci/pci_host.h" > > #include "hw/i386/pc.h" > > +#include "hw/southbridge/ich9.h" > > #include "hw/irq.h" > > #include "hw/hw.h" > > #include "hw/i386/apic-msidef.h" > > @@ -136,14 +137,14 @@ typedef struct XenIOState { > > Notifier wakeup; > > } XenIOState; > > > > -/* Xen specific function for piix pci */ > > +/* Xen-specific functions for pci dev IRQ handling */ > > > > -int xen_pci_slot_get_pirq(PCIDevice *pci_dev, int irq_num) > > +int xen_cmn_pci_slot_get_pirq(PCIDevice *pci_dev, int irq_num) > > { > > return irq_num + (PCI_SLOT(pci_dev->devfn) << 2); > > } > > > > -void xen_piix3_set_irq(void *opaque, int irq_num, int level) > > +void xen_cmn_set_irq(void *opaque, int irq_num, int level) > > { > > xen_set_pci_intx_level(xen_domid, 0, 0, irq_num >> 2, > > irq_num & 3, level); > > diff --git a/hw/isa/lpc_ich9.c b/hw/isa/lpc_ich9.c > > index 9c47a2f6c7..733a99d443 100644 > > --- a/hw/isa/lpc_ich9.c > > +++ b/hw/isa/lpc_ich9.c > > @@ -51,6 +51,9 @@ > > #include "hw/core/cpu.h" > > #include "hw/nvram/fw_cfg.h" > > #include "qemu/cutils.h" > > +#include "hw/xen/xen.h" > > +#include "sysemu/xen.h" > > +#include "hw/southbridge/piix.h" > > #include "hw/acpi/acpi_aml_interface.h" > > #include "trace.h" > > > > @@ -535,11 +538,49 @@ static int ich9_lpc_post_load(void *opaque, int > version_id) > > return 0; > > } > > > > +static void ich9_lpc_config_write_xen(PCIDevice *d, > > + uint32_t addr, uint32_t val, int len= ) > > +{ > > + static bool pirqe_f_warned =3D false; > > + if (ranges_overlap(addr, len, ICH9_LPC_PIRQA_ROUT, 4)) { > > + /* handle PIRQA..PIRQD routing */ > > + /* Scan for updates to PCI link routes (0x60-0x63). */ > > + int i; > > + for (i =3D 0; i < len; i++) { > > + uint8_t v =3D (val >> (8 * i)) & 0xff; > > + if (v & 0x80) { > > + v =3D 0; > > + } > > + v &=3D 0xf; > > + if (((addr + i) >=3D PIIX_PIRQCA) && ((addr + i) <=3D > PIIX_PIRQCD)) { > > + xen_set_pci_link_route(addr + i - PIIX_PIRQCA, v); > > + } > > + } > > + } else if (ranges_overlap(addr, len, ICH9_LPC_PIRQE_ROUT, 4)) { > > + while (len--) { > > + if (range_covers_byte(ICH9_LPC_PIRQE_ROUT, 4, addr) && > > + (val & 0x80) =3D=3D 0) { > > + /* print warning only once */ > > + if (!pirqe_f_warned) { > > + pirqe_f_warned =3D true; > > + fprintf(stderr, "WARNING: guest domain attempted t= o > use PIRQ%c " > > + "routing which is not supported for Xen/Q3= 5 > currently\n", > > + (char)(addr - ICH9_LPC_PIRQE_ROUT + 'E')); > > + break; > > + } > > + } > > + addr++, val >>=3D 8; > > + } > > + } > > +} > > + > > static void ich9_lpc_config_write(PCIDevice *d, > > uint32_t addr, uint32_t val, int len= ) > > { > > ICH9LPCState *lpc =3D ICH9_LPC_DEVICE(d); > > uint32_t rcba_old =3D pci_get_long(d->config + ICH9_LPC_RCBA); > > + if (xen_enabled()) > > + ich9_lpc_config_write_xen(d, addr, val, len); > > > > pci_default_write_config(d, addr, val, len); > > if (ranges_overlap(addr, len, ICH9_LPC_PMBASE, 4) || > > @@ -731,10 +772,14 @@ static void ich9_lpc_realize(PCIDevice *d, Error > **errp) > > return; > > } > > > > - pci_bus_irqs(pci_bus, ich9_lpc_set_irq, d, ICH9_LPC_NB_PIRQS); > > - pci_bus_map_irqs(pci_bus, ich9_lpc_map_irq); > > - pci_bus_set_route_irq_fn(pci_bus, ich9_route_intx_pin_to_irq); > > - > > + if (xen_enabled()) { > > + pci_bus_irqs(pci_bus, xen_cmn_set_irq, d, > ICH9_XEN_NUM_IRQ_SOURCES); > > + pci_bus_map_irqs(pci_bus, xen_cmn_pci_slot_get_pirq); > > + } else { > > + pci_bus_irqs(pci_bus, ich9_lpc_set_irq, d, ICH9_LPC_NB_PIRQS); > > + pci_bus_map_irqs(pci_bus, ich9_lpc_map_irq); > > + pci_bus_set_route_irq_fn(pci_bus, ich9_route_intx_pin_to_irq); > > + } > > ich9_lpc_pm_init(lpc); > > } > > > > diff --git a/hw/isa/piix3.c b/hw/isa/piix3.c > > index f9103ea45a..3d0545eb0e 100644 > > --- a/hw/isa/piix3.c > > +++ b/hw/isa/piix3.c > > @@ -420,7 +420,7 @@ static void piix3_xen_realize(PCIDevice *dev, Error > **errp) > > * connected to the IOAPIC directly. > > * These additional routes can be discovered through ACPI. > > */ > > - pci_bus_irqs(pci_bus, xen_piix3_set_irq, piix3, XEN_PIIX_NUM_PIRQS= ); > > + pci_bus_irqs(pci_bus, xen_cmn_set_irq, piix3, XEN_PIIX_NUM_PIRQS); > > } > > > > static void piix3_xen_class_init(ObjectClass *klass, void *data) > > diff --git a/include/hw/southbridge/ich9.h > b/include/hw/southbridge/ich9.h > > index fd01649d04..07b84d5227 100644 > > --- a/include/hw/southbridge/ich9.h > > +++ b/include/hw/southbridge/ich9.h > > @@ -130,6 +130,7 @@ struct ICH9LPCState { > > > > #define ICH9_A2_LPC_REVISION 0x2 > > #define ICH9_LPC_NB_PIRQS 8 /* PCI A-H */ > > +#define ICH9_XEN_NUM_IRQ_SOURCES 128 > > > > #define ICH9_LPC_PMBASE 0x40 > > #define ICH9_LPC_PMBASE_BASE_ADDRESS_MASK ICH9_MASK(32, 15, 7) > > diff --git a/include/hw/xen/xen.h b/include/hw/xen/xen.h > > index 2bd8ec742d..a2c3d98eaa 100644 > > --- a/include/hw/xen/xen.h > > +++ b/include/hw/xen/xen.h > > @@ -37,9 +37,9 @@ extern uint32_t xen_domid; > > extern enum xen_mode xen_mode; > > extern bool xen_domid_restrict; > > > > -int xen_pci_slot_get_pirq(PCIDevice *pci_dev, int irq_num); > > +int xen_cmn_pci_slot_get_pirq(PCIDevice *pci_dev, int irq_num); > > int xen_set_pci_link_route(uint8_t link, uint8_t irq); > > -void xen_piix3_set_irq(void *opaque, int irq_num, int level); > > +void xen_cmn_set_irq(void *opaque, int irq_num, int level); > > void xen_hvm_inject_msi(uint64_t addr, uint32_t data); > > int xen_is_pirq_msi(uint32_t msi_data); > > > > diff --git a/stubs/xen-hw-stub.c b/stubs/xen-hw-stub.c > > index 34a22f2ad7..f06fbf48c8 100644 > > --- a/stubs/xen-hw-stub.c > > +++ b/stubs/xen-hw-stub.c > > @@ -10,12 +10,12 @@ > > #include "hw/xen/xen.h" > > #include "hw/xen/xen-x86.h" > > > > -int xen_pci_slot_get_pirq(PCIDevice *pci_dev, int irq_num) > > +int xen_cmn_pci_slot_get_pirq(PCIDevice *pci_dev, int irq_num) > > { > > return -1; > > } > > > > -void xen_piix3_set_irq(void *opaque, int irq_num, int level) > > +void xen_cmn_set_irq(void *opaque, int irq_num, int level) > > { > > } > > > > -- > > 2.34.1 > > > > > > With regards, > Daniel > -- > |: https://berrange.com -o- > https://www.flickr.com/photos/dberrange :| > |: https://libvirt.org -o- > https://fstop138.berrange.com :| > |: https://entangle-photo.org -o- > https://www.instagram.com/dberrange :| > > --00000000000037653b05fea68c7f Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Thank you, I was working off the Xen-devel and didn=E2=80= =99t find his email. I will update my qemu and xen patches for the next ver= sion.=C2=A0

-Joel
<= div>
On= Wed, Jun 21, 2023 at 3:17 AM Daniel P. Berrang=C3=A9 <berrange@redhat.com> wrote:
On Tue, Jun 20, 2023 at 01:24:34PM -0400, Joel Upham = wrote:
>
> Signed-off-by: Alexey Gerasimenko <x1917x@xxxxxxxxx>

This isn't a valid email address for Alexey - I presume you grabbed
these patches from the xen-devel mail archives, which have mangled
the addresses for anti-spam reasons.

Fortunately there are alternative archives which don't mangle the
patches:

=C2=A0 https://lore.kernel.org/xen-devel/6067bc3c91c9ee629a35723dfb4= 74ef168ff4ebf.1520867955.git.x1917x@gmail.com/

=C2=A0 Signed-off-by: Alexey Gerasimenko <x1917x@gmail.com>

This affects all patches in the series, but I won't repeat my
comment on each one.

> Signed-off-by: Joel Upham <jupham125@gmail.com>
> ---
>=C2=A0 hw/i386/pc_piix.c=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0|=C2=A0 3 +-
>=C2=A0 hw/i386/xen/xen-hvm.c=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0|=C2=A0 7= +++--
>=C2=A0 hw/isa/lpc_ich9.c=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0| 53 ++++++++++++++++++++++++++++++++---
>=C2=A0 hw/isa/piix3.c=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 |=C2=A0 2 +-
>=C2=A0 include/hw/southbridge/ich9.h |=C2=A0 1 +
>=C2=A0 include/hw/xen/xen.h=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 |=C2=A0 4= +--
>=C2=A0 stubs/xen-hw-stub.c=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0|=C2= =A0 4 +--
>=C2=A0 7 files changed, 61 insertions(+), 13 deletions(-)
>
> diff --git a/hw/i386/pc_piix.c b/hw/i386/pc_piix.c
> index d5b0dcd1fe..8c1b20f3bc 100644
> --- a/hw/i386/pc_piix.c
> +++ b/hw/i386/pc_piix.c
> @@ -62,6 +62,7 @@
>=C2=A0 #endif
>=C2=A0 #include "hw/xen/xen-x86.h"
>=C2=A0 #include "hw/xen/xen.h"
> +#include "sysemu/xen.h"
>=C2=A0 #include "migration/global_state.h"
>=C2=A0 #include "migration/misc.h"
>=C2=A0 #include "sysemu/numa.h"
> @@ -233,7 +234,7 @@ static void pc_init1(MachineState *machine,
>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 x86ms->above_4g_mem_size,
>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 pci_memory, ram_memory);
>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 pci_bus_map_irqs(pci_bus,
> -=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0= =C2=A0 =C2=A0 =C2=A0xen_enabled() ? xen_pci_slot_get_pirq
> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0= =C2=A0 =C2=A0 =C2=A0xen_enabled() ? xen_cmn_pci_slot_get_pirq
>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0: pc_pci_slot_get_pirq);
>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 pcms->bus =3D pci_bus;
>=C2=A0
> diff --git a/hw/i386/xen/xen-hvm.c b/hw/i386/xen/xen-hvm.c
> index 56641a550e..540ac46639 100644
> --- a/hw/i386/xen/xen-hvm.c
> +++ b/hw/i386/xen/xen-hvm.c
> @@ -15,6 +15,7 @@
>=C2=A0 #include "hw/pci/pci.h"
>=C2=A0 #include "hw/pci/pci_host.h"
>=C2=A0 #include "hw/i386/pc.h"
> +#include "hw/southbridge/ich9.h"
>=C2=A0 #include "hw/irq.h"
>=C2=A0 #include "hw/hw.h"
>=C2=A0 #include "hw/i386/apic-msidef.h"
> @@ -136,14 +137,14 @@ typedef struct XenIOState {
>=C2=A0 =C2=A0 =C2=A0 Notifier wakeup;
>=C2=A0 } XenIOState;
>=C2=A0
> -/* Xen specific function for piix pci */
> +/* Xen-specific functions for pci dev IRQ handling */
>=C2=A0
> -int xen_pci_slot_get_pirq(PCIDevice *pci_dev, int irq_num)
> +int xen_cmn_pci_slot_get_pirq(PCIDevice *pci_dev, int irq_num)
>=C2=A0 {
>=C2=A0 =C2=A0 =C2=A0 return irq_num + (PCI_SLOT(pci_dev->devfn) <= < 2);
>=C2=A0 }
>=C2=A0
> -void xen_piix3_set_irq(void *opaque, int irq_num, int level)
> +void xen_cmn_set_irq(void *opaque, int irq_num, int level)
>=C2=A0 {
>=C2=A0 =C2=A0 =C2=A0 xen_set_pci_intx_level(xen_domid, 0, 0, irq_num &g= t;> 2,
>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0irq_num & 3, level);
> diff --git a/hw/isa/lpc_ich9.c b/hw/isa/lpc_ich9.c
> index 9c47a2f6c7..733a99d443 100644
> --- a/hw/isa/lpc_ich9.c
> +++ b/hw/isa/lpc_ich9.c
> @@ -51,6 +51,9 @@
>=C2=A0 #include "hw/core/cpu.h"
>=C2=A0 #include "hw/nvram/fw_cfg.h"
>=C2=A0 #include "qemu/cutils.h"
> +#include "hw/xen/xen.h"
> +#include "sysemu/xen.h"
> +#include "hw/southbridge/piix.h"
>=C2=A0 #include "hw/acpi/acpi_aml_interface.h"
>=C2=A0 #include "trace.h"
>=C2=A0
> @@ -535,11 +538,49 @@ static int ich9_lpc_post_load(void *opaque, int = version_id)
>=C2=A0 =C2=A0 =C2=A0 return 0;
>=C2=A0 }
>=C2=A0
> +static void ich9_lpc_config_write_xen(PCIDevice *d,
> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0= =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 uint32_t addr, uint32_t v= al, int len)
> +{
> +=C2=A0 =C2=A0 static bool pirqe_f_warned =3D false;
> +=C2=A0 =C2=A0 if (ranges_overlap(addr, len, ICH9_LPC_PIRQA_ROUT, 4)) = {
> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 /* handle PIRQA..PIRQD routing */
> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 /* Scan for updates to PCI link routes (0= x60-0x63). */
> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 int i;
> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 for (i =3D 0; i < len; i++) {
> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 uint8_t v =3D (val >>= (8 * i)) & 0xff;
> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 if (v & 0x80) {
> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 v =3D 0;
> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 }
> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 v &=3D 0xf;
> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 if (((addr + i) >=3D PII= X_PIRQCA) && ((addr + i) <=3D PIIX_PIRQCD)) {
> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 xen_set_pci_l= ink_route(addr + i - PIIX_PIRQCA, v);
> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 }
> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 }
> +=C2=A0 =C2=A0 } else if (ranges_overlap(addr, len, ICH9_LPC_PIRQE_ROU= T, 4)) {
> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 while (len--) {
> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 if (range_covers_byte(ICH9_= LPC_PIRQE_ROUT, 4, addr) &&
> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 (val & 0x= 80) =3D=3D 0) {
> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 /* print warn= ing only once */
> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 if (!pirqe_f_= warned) {
> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0= pirqe_f_warned =3D true;
> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0= fprintf(stderr, "WARNING: guest domain attempted to use PIRQ%c "=
> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0= =C2=A0 =C2=A0 =C2=A0 =C2=A0 "routing which is not supported for Xen/Q= 35 currently\n",
> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0= =C2=A0 =C2=A0 =C2=A0 =C2=A0 (char)(addr - ICH9_LPC_PIRQE_ROUT + 'E'= ;));
> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0= break;
> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 }
> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 }
> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 addr++, val >>=3D 8;<= br> > +=C2=A0 =C2=A0 =C2=A0 =C2=A0 }
> +=C2=A0 =C2=A0 }
> +}
> +
>=C2=A0 static void ich9_lpc_config_write(PCIDevice *d,
>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 uint32_t addr, uint= 32_t val, int len)
>=C2=A0 {
>=C2=A0 =C2=A0 =C2=A0 ICH9LPCState *lpc =3D ICH9_LPC_DEVICE(d);
>=C2=A0 =C2=A0 =C2=A0 uint32_t rcba_old =3D pci_get_long(d->config + = ICH9_LPC_RCBA);
> +=C2=A0 =C2=A0 if (xen_enabled())
> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 ich9_lpc_config_write_xen(d, addr, val, l= en);
>=C2=A0
>=C2=A0 =C2=A0 =C2=A0 pci_default_write_config(d, addr, val, len);
>=C2=A0 =C2=A0 =C2=A0 if (ranges_overlap(addr, len, ICH9_LPC_PMBASE, 4) = ||
> @@ -731,10 +772,14 @@ static void ich9_lpc_realize(PCIDevice *d, Error= **errp)
>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 return;
>=C2=A0 =C2=A0 =C2=A0 }
>=C2=A0
> -=C2=A0 =C2=A0 pci_bus_irqs(pci_bus, ich9_lpc_set_irq, d, ICH9_LPC_NB_= PIRQS);
> -=C2=A0 =C2=A0 pci_bus_map_irqs(pci_bus, ich9_lpc_map_irq);
> -=C2=A0 =C2=A0 pci_bus_set_route_irq_fn(pci_bus, ich9_route_intx_pin_t= o_irq);
> -
> +=C2=A0 =C2=A0 if (xen_enabled()) {
> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 pci_bus_irqs(pci_bus, xen_cmn_set_irq, d,= ICH9_XEN_NUM_IRQ_SOURCES);
> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 pci_bus_map_irqs(pci_bus, xen_cmn_pci_slo= t_get_pirq);
> +=C2=A0 =C2=A0 } else {
> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 pci_bus_irqs(pci_bus, ich9_lpc_set_irq, d= , ICH9_LPC_NB_PIRQS);
> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 pci_bus_map_irqs(pci_bus, ich9_lpc_map_ir= q);
> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 pci_bus_set_route_irq_fn(pci_bus, ich9_ro= ute_intx_pin_to_irq);
> +=C2=A0 =C2=A0 }
>=C2=A0 =C2=A0 =C2=A0 ich9_lpc_pm_init(lpc);
>=C2=A0 }
>=C2=A0
> diff --git a/hw/isa/piix3.c b/hw/isa/piix3.c
> index f9103ea45a..3d0545eb0e 100644
> --- a/hw/isa/piix3.c
> +++ b/hw/isa/piix3.c
> @@ -420,7 +420,7 @@ static void piix3_xen_realize(PCIDevice *dev, Erro= r **errp)
>=C2=A0 =C2=A0 =C2=A0 =C2=A0* connected to the IOAPIC directly.
>=C2=A0 =C2=A0 =C2=A0 =C2=A0* These additional routes can be discovered = through ACPI.
>=C2=A0 =C2=A0 =C2=A0 =C2=A0*/
> -=C2=A0 =C2=A0 pci_bus_irqs(pci_bus, xen_piix3_set_irq, piix3, XEN_PII= X_NUM_PIRQS);
> +=C2=A0 =C2=A0 pci_bus_irqs(pci_bus, xen_cmn_set_irq, piix3, XEN_PIIX_= NUM_PIRQS);
>=C2=A0 }
>=C2=A0
>=C2=A0 static void piix3_xen_class_init(ObjectClass *klass, void *data)=
> diff --git a/include/hw/southbridge/ich9.h b/include/hw/southbridge/ic= h9.h
> index fd01649d04..07b84d5227 100644
> --- a/include/hw/southbridge/ich9.h
> +++ b/include/hw/southbridge/ich9.h
> @@ -130,6 +130,7 @@ struct ICH9LPCState {
>=C2=A0
>=C2=A0 #define ICH9_A2_LPC_REVISION=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 0x2
>=C2=A0 #define ICH9_LPC_NB_PIRQS=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A08=C2=A0 =C2=A0 =C2=A0 =C2=A0/*= PCI A-H */
> +#define ICH9_XEN_NUM_IRQ_SOURCES=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 =C2=A0 128
>=C2=A0
>=C2=A0 #define ICH9_LPC_PMBASE=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0= =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A00x40
>=C2=A0 #define ICH9_LPC_PMBASE_BASE_ADDRESS_MASK=C2=A0 =C2=A0 =C2=A0 = =C2=A0ICH9_MASK(32, 15, 7)
> diff --git a/include/hw/xen/xen.h b/include/hw/xen/xen.h
> index 2bd8ec742d..a2c3d98eaa 100644
> --- a/include/hw/xen/xen.h
> +++ b/include/hw/xen/xen.h
> @@ -37,9 +37,9 @@ extern uint32_t xen_domid;
>=C2=A0 extern enum xen_mode xen_mode;
>=C2=A0 extern bool xen_domid_restrict;
>=C2=A0
> -int xen_pci_slot_get_pirq(PCIDevice *pci_dev, int irq_num);
> +int xen_cmn_pci_slot_get_pirq(PCIDevice *pci_dev, int irq_num);
>=C2=A0 int xen_set_pci_link_route(uint8_t link, uint8_t irq);
> -void xen_piix3_set_irq(void *opaque, int irq_num, int level);
> +void xen_cmn_set_irq(void *opaque, int irq_num, int level);
>=C2=A0 void xen_hvm_inject_msi(uint64_t addr, uint32_t data);
>=C2=A0 int xen_is_pirq_msi(uint32_t msi_data);
>=C2=A0
> diff --git a/stubs/xen-hw-stub.c b/stubs/xen-hw-stub.c
> index 34a22f2ad7..f06fbf48c8 100644
> --- a/stubs/xen-hw-stub.c
> +++ b/stubs/xen-hw-stub.c
> @@ -10,12 +10,12 @@
>=C2=A0 #include "hw/xen/xen.h"
>=C2=A0 #include "hw/xen/xen-x86.h"
>=C2=A0
> -int xen_pci_slot_get_pirq(PCIDevice *pci_dev, int irq_num)
> +int xen_cmn_pci_slot_get_pirq(PCIDevice *pci_dev, int irq_num)
>=C2=A0 {
>=C2=A0 =C2=A0 =C2=A0 return -1;
>=C2=A0 }
>=C2=A0
> -void xen_piix3_set_irq(void *opaque, int irq_num, int level)
> +void xen_cmn_set_irq(void *opaque, int irq_num, int level)
>=C2=A0 {
>=C2=A0 }
>=C2=A0
> --
> 2.34.1
>
>

With regards,
Daniel
--
|: ht= tps://berrange.com=C2=A0 =C2=A0 =C2=A0 -o-=C2=A0 =C2=A0 h= ttps://www.flickr.com/photos/dberrange :|
|: htt= ps://libvirt.org=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0-o-=C2=A0 =C2=A0 =C2= =A0 =C2=A0 =C2=A0 =C2=A0 https://fstop138.berrange.com :|
|: https://entangle-photo.org=C2=A0 =C2=A0 -o-=C2=A0 =C2=A0 = https://www.instagram.com/dberrange :|

--00000000000037653b05fea68c7f-- From xen-devel-bounces@lists.xenproject.org Wed Jun 21 16:51:09 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 16:51:09 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553025.863337 (Exim 4.92) (envelope-from ) id 1qC12o-0003uv-4S; Wed, 21 Jun 2023 16:50:58 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553025.863337; Wed, 21 Jun 2023 16:50:58 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC12o-0003uo-1Z; Wed, 21 Jun 2023 16:50:58 +0000 Received: by outflank-mailman (input) for mailman id 553025; Wed, 21 Jun 2023 16:50:57 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC12n-0003ug-1z for xen-devel@lists.xenproject.org; Wed, 21 Jun 2023 16:50:57 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id c9b2a015-1053-11ee-b236-6b7b168915f2; Wed, 21 Jun 2023 18:50:55 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 3D3C6615DD; Wed, 21 Jun 2023 16:50:54 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 96030C433C8; Wed, 21 Jun 2023 16:50:53 +0000 (UTC) Received: by paulmck-ThinkPad-P17-Gen-1.home (Postfix, from userid 1000) id 241B6CE3A04; Wed, 21 Jun 2023 09:50:53 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: c9b2a015-1053-11ee-b236-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1687366253; bh=nRDgHtA8hqej023ToUhLoZFNoVkS+qHIHVfPG/sX2HM=; h=Date:From:To:Cc:Subject:Reply-To:References:In-Reply-To:From; b=ZyW7hIwOiMuVBWbNLKkUGG4I9ld9sU+55M4ZDtjpb54AQkZkjrW2BAQpUQDsBScUV 3PuViCowDv3Bh65idoeIVGTOkyHEoIL1b2dC7j3xNY75mpWFddVIKrc+1BtooEGsEG e/W29ML5aWligBRBGCkUt8zz0q42K8B1DFB8acM9a3AodCf3X2UrAc7M5tj+QzaIJ3 BNU9X9pGdKljGOCb/rjllAVrKb5Q0YONOpcuvdetSA7nDoLJjqbTznsYdA3e/pOQr+ ICEH22H0gKf07QhrEh2lPU2+jAbQ9m6lwbXYETYMIVq5QZlLXIOlJBhglEsFLf9vur hkWXTdIwRXM4w== Date: Wed, 21 Jun 2023 09:50:53 -0700 From: "Paul E. McKenney" To: Thomas Gleixner Cc: LKML , x86@kernel.org, David Woodhouse , Andrew Cooper , Brian Gerst , Arjan van de Veen , Paolo Bonzini , Tom Lendacky , Sean Christopherson , Oleksandr Natalenko , Paul Menzel , "Guilherme G. Piccoli" , Piotr Gorski , David Woodhouse , Usama Arif , Juergen Gross , Boris Ostrovsky , xen-devel@lists.xenproject.org, Russell King , Arnd Bergmann , linux-arm-kernel@lists.infradead.org, Catalin Marinas , Will Deacon , Guo Ren , linux-csky@vger.kernel.org, Thomas Bogendoerfer , linux-mips@vger.kernel.org, "James E.J. Bottomley" , Helge Deller , linux-parisc@vger.kernel.org, Paul Walmsley , Palmer Dabbelt , linux-riscv@lists.infradead.org, Mark Rutland , Sabin Rapan Subject: Re: [patch 05/37] x86/topology: Remove CPU0 hotplug option Message-ID: Reply-To: paulmck@kernel.org References: <20230414225551.858160935@linutronix.de> <20230414232309.510911744@linutronix.de> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20230414232309.510911744@linutronix.de> On Sat, Apr 15, 2023 at 01:44:21AM +0200, Thomas Gleixner wrote: > This was introduced together with commit e1c467e69040 ("x86, hotplug: Wake > up CPU0 via NMI instead of INIT, SIPI, SIPI") to eventually support > physical hotplug of CPU0: > > "We'll change this code in the future to wake up hard offlined CPU0 if > real platform and request are available." > > 11 years later this has not happened and physical hotplug is not officially > supported. Remove the cruft. > > Signed-off-by: Thomas Gleixner > --- > Documentation/admin-guide/kernel-parameters.txt | 14 --- > Documentation/core-api/cpu_hotplug.rst | 13 --- > arch/x86/Kconfig | 43 ---------- > arch/x86/include/asm/cpu.h | 3 > arch/x86/kernel/topology.c | 98 ------------------------ > arch/x86/power/cpu.c | 37 --------- > 6 files changed, 6 insertions(+), 202 deletions(-) [ . . . ] > --- a/arch/x86/Kconfig > +++ b/arch/x86/Kconfig > @@ -2294,49 +2294,6 @@ config HOTPLUG_CPU > def_bool y > depends on SMP > > -config BOOTPARAM_HOTPLUG_CPU0 Removing this requires also removing its use in rcutorture. I have therefore queued the commit below in -rcu, but please feel free to take it along with the BOOTPARAM_HOTPLUG_CPU0-removal patch. Just please let me know if you do. (Yes, I finally got back to testing -next. Why do you ask?) Thanx, Paul ------------------------------------------------------------------------ commit 95588de780c0e81004b72526aa3e3ef5ce054719 Author: Paul E. McKenney Date: Wed Jun 21 09:44:52 2023 -0700 rcutorture: Remove obsolete BOOTPARAM_HOTPLUG_CPU0 Kconfig option Now that the BOOTPARAM_HOTPLUG_CPU0 Kconfig option is in the process of being removed, it is time to remove rcutorture's use of it. Link: https://lore.kernel.org/lkml/20230414232309.510911744@linutronix.de/ Signed-off-by: Paul E. McKenney Cc: Thomas Gleixner Cc: diff --git a/tools/testing/selftests/rcutorture/configs/rcu/TREE01 b/tools/testing/selftests/rcutorture/configs/rcu/TREE01 index 04831ef1f9b5..8ae41d5f81a3 100644 --- a/tools/testing/selftests/rcutorture/configs/rcu/TREE01 +++ b/tools/testing/selftests/rcutorture/configs/rcu/TREE01 @@ -15,4 +15,3 @@ CONFIG_DEBUG_LOCK_ALLOC=n CONFIG_RCU_BOOST=n CONFIG_DEBUG_OBJECTS_RCU_HEAD=n CONFIG_RCU_EXPERT=y -CONFIG_BOOTPARAM_HOTPLUG_CPU0=y From xen-devel-bounces@lists.xenproject.org Wed Jun 21 17:00:15 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 17:00:15 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553032.863363 (Exim 4.92) (envelope-from ) id 1qC1Bl-0005jp-G3; Wed, 21 Jun 2023 17:00:13 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553032.863363; Wed, 21 Jun 2023 17:00:13 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC1Bl-0005j3-9W; Wed, 21 Jun 2023 17:00:13 +0000 Received: by outflank-mailman (input) for mailman id 553032; Wed, 21 Jun 2023 17:00:12 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC1Bk-0005SN-99 for xen-devel@lists.xenproject.org; Wed, 21 Jun 2023 17:00:12 +0000 Received: from raptorengineering.com (mail.raptorengineering.com [23.155.224.40]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 139c3090-1055-11ee-b236-6b7b168915f2; Wed, 21 Jun 2023 19:00:08 +0200 (CEST) Received: from localhost (localhost [127.0.0.1]) by mail.rptsys.com (Postfix) with ESMTP id 07BAC8285AB9 for ; Wed, 21 Jun 2023 12:00:08 -0500 (CDT) Received: from mail.rptsys.com ([127.0.0.1]) by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032) with ESMTP id foy7nxcwUnGh; Wed, 21 Jun 2023 12:00:07 -0500 (CDT) Received: from localhost (localhost [127.0.0.1]) by mail.rptsys.com (Postfix) with ESMTP id 4B4E78286814; Wed, 21 Jun 2023 12:00:07 -0500 (CDT) Received: from mail.rptsys.com ([127.0.0.1]) by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id LGD8GxPuDDRZ; Wed, 21 Jun 2023 12:00:07 -0500 (CDT) Received: from raptor-ewks-026.lan (5.edge.rptsys.com [23.155.224.38]) by mail.rptsys.com (Postfix) with ESMTPSA id BD7638285AF3; Wed, 21 Jun 2023 12:00:06 -0500 (CDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 139c3090-1055-11ee-b236-6b7b168915f2 DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com 4B4E78286814 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD; t=1687366807; bh=By/cyaijYQTAGJgZfB6T8MO0SHbn04i59WFs7fwttoA=; h=From:To:Date:Message-Id:MIME-Version; b=eKNTclCHeYRdWjT6nzpqrCUd4lj1McWNTVj7Xnt1UczbjyqKNRR/OEwoYlmRSIA9a kXmq0qdfb1cdZqyM4SN15KtwG12HFBIFR+4nPdSongvKzguY1/Ey92nQEm+TV07W6x jZFalootMUdl25E1/LwCxtafjqi32BRwrMjYG/aQ= X-Virus-Scanned: amavisd-new at rptsys.com From: Shawn Anastasio To: xen-devel@lists.xenproject.org Cc: tpearson@raptorengineering.com, Shawn Anastasio Subject: [PATCH 4/4] automation: Add smoke test for ppc64le Date: Wed, 21 Jun 2023 11:59:53 -0500 Message-Id: X-Mailer: git-send-email 2.30.2 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Add an initial smoke test that boots xen on a ppc64/pseries machine and checks for a magic string. Based on the riscv smoke test. Eventually the powernv9 (POWER9 bare metal) machine type will want to be tested as well, but for now we only boot on pseries. Signed-off-by: Shawn Anastasio --- automation/gitlab-ci/test.yaml | 20 ++++++++++++++++++ automation/scripts/qemu-smoke-ppc64le.sh | 27 ++++++++++++++++++++++++ 2 files changed, 47 insertions(+) create mode 100755 automation/scripts/qemu-smoke-ppc64le.sh diff --git a/automation/gitlab-ci/test.yaml b/automation/gitlab-ci/test.y= aml index d5cb238b0a..45e8ddb7a3 100644 --- a/automation/gitlab-ci/test.yaml +++ b/automation/gitlab-ci/test.yaml @@ -71,6 +71,19 @@ tags: - x86_64 =20 +.qemu-ppc64le: + extends: .test-jobs-common + variables: + CONTAINER: debian:bullseye-ppc64le + LOGFILE: qemu-smoke-ppc64le.log + artifacts: + paths: + - smoke.serial + - '*.log' + when: always + tags: + - x86_64 + .xilinx-arm64: extends: .test-jobs-common variables: @@ -444,3 +457,10 @@ qemu-smoke-riscv64-gcc: - ./automation/scripts/qemu-smoke-riscv64.sh 2>&1 | tee ${LOGFILE} needs: - archlinux-current-gcc-riscv64-debug + +qemu-smoke-ppc64le-pseries-gcc: + extends: .qemu-ppc64le + script: + - ./automation/scripts/qemu-smoke-ppc64le.sh pseries-5.2 2>&1 | tee = ${LOGFILE} + needs: + - debian-bullseye-gcc-ppc64le-debug diff --git a/automation/scripts/qemu-smoke-ppc64le.sh b/automation/script= s/qemu-smoke-ppc64le.sh new file mode 100755 index 0000000000..eb55221221 --- /dev/null +++ b/automation/scripts/qemu-smoke-ppc64le.sh @@ -0,0 +1,27 @@ +#!/bin/bash + +set -ex + +# machine type from first arg passed directly to qemu -M +machine=3D$1 + +# Run the test +rm -f smoke.serial +set +e + +touch smoke.serial + +timeout -k 1 20 \ +qemu-system-ppc64 \ + -M $machine \ + -m 2g \ + -smp 1 \ + -vga none \ + -monitor none \ + -nographic \ + -serial file:smoke.serial \ + -kernel binaries/xen + +set -e +(grep -q "Hello, ppc64le!" smoke.serial) || exit 1 +exit 0 --=20 2.30.2 From xen-devel-bounces@lists.xenproject.org Wed Jun 21 17:00:15 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 17:00:15 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553033.863377 (Exim 4.92) (envelope-from ) id 1qC1Bm-0006AZ-J9; Wed, 21 Jun 2023 17:00:14 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553033.863377; Wed, 21 Jun 2023 17:00:14 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC1Bm-00069B-G7; Wed, 21 Jun 2023 17:00:14 +0000 Received: by outflank-mailman (input) for mailman id 553033; Wed, 21 Jun 2023 17:00:13 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC1Bl-0005SN-9B for xen-devel@lists.xenproject.org; Wed, 21 Jun 2023 17:00:13 +0000 Received: from raptorengineering.com (mail.raptorengineering.com [23.155.224.40]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 12dec698-1055-11ee-b236-6b7b168915f2; Wed, 21 Jun 2023 19:00:08 +0200 (CEST) Received: from localhost (localhost [127.0.0.1]) by mail.rptsys.com (Postfix) with ESMTP id 7948F8285BED for ; Wed, 21 Jun 2023 12:00:06 -0500 (CDT) Received: from mail.rptsys.com ([127.0.0.1]) by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032) with ESMTP id FIBAAgVpyXdW; Wed, 21 Jun 2023 12:00:05 -0500 (CDT) Received: from localhost (localhost [127.0.0.1]) by mail.rptsys.com (Postfix) with ESMTP id B299E8285AB9; Wed, 21 Jun 2023 12:00:05 -0500 (CDT) Received: from mail.rptsys.com ([127.0.0.1]) by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id aXwZYNeHKD_S; Wed, 21 Jun 2023 12:00:05 -0500 (CDT) Received: from raptor-ewks-026.lan (5.edge.rptsys.com [23.155.224.38]) by mail.rptsys.com (Postfix) with ESMTPSA id 4906282856E5; Wed, 21 Jun 2023 12:00:05 -0500 (CDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 12dec698-1055-11ee-b236-6b7b168915f2 DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com B299E8285AB9 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD; t=1687366805; bh=9NaRUF1KYWzHXz2PsOE4ZqCa2F66XQdJrbpTnZaFgXU=; h=From:To:Date:Message-Id:MIME-Version; b=k28wqdeyhLlfFWBHUUbxL1Iv8x1zCMaXYgV+RPCsHD12JYEbkz1G0CI82Vs9R3gOI FBCWEQcZFijfOVtqFVyhhDDKaHp3jlrIs5Lzrz2jiFLBYUfRQ09HZg5UcR/QvOOKjv EfMRwbYhHVks8mmOqs+suOul/n75MgmY21UrT8D4= X-Virus-Scanned: amavisd-new at rptsys.com From: Shawn Anastasio To: xen-devel@lists.xenproject.org Cc: tpearson@raptorengineering.com, Shawn Anastasio Subject: [PATCH 0/4] Early serial on Power Date: Wed, 21 Jun 2023 11:59:49 -0500 Message-Id: X-Mailer: git-send-email 2.30.2 MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Hello all, This series adds support for early serial printing on Power, as well as a simple CI smoke test modeled after the riscv one. The third patch, which implements the serial console, also includes a set of header additions required to get the build going when including things like xen/lib.h. When applicable, headers from the old Xen 3.2.3 ppc tree were imported or otherwise empty stub headers were added to be filled in later. This will currently only run on QEMU pseries VMs, since the firmware interface on bare metal differs significantly. Support for bare metal will be added in a future series. Thanks, Shawn Shawn Anastasio (4): automation: Add QEMU to bullseye-ppc64le automation: Fix KBUILD_DEFCONFIG for *ppc64le jobs xen/ppc: Implement early serial printk on pseries automation: Add smoke test for ppc64le .../build/debian/bullseye-ppc64le.dockerfile | 2 + automation/gitlab-ci/build.yaml | 8 +- automation/gitlab-ci/test.yaml | 20 ++ automation/scripts/qemu-smoke-ppc64le.sh | 27 +++ xen/arch/ppc/Kconfig.debug | 5 + xen/arch/ppc/Makefile | 3 + xen/arch/ppc/boot-of.c | 116 ++++++++++ xen/arch/ppc/configs/ppc64_defconfig | 1 + xen/arch/ppc/early_printk.c | 28 +++ xen/arch/ppc/include/asm/boot.h | 24 ++ xen/arch/ppc/include/asm/bug.h | 6 + xen/arch/ppc/include/asm/byteorder.h | 37 +++ xen/arch/ppc/include/asm/cache.h | 6 + xen/arch/ppc/include/asm/early_printk.h | 15 ++ xen/arch/ppc/include/asm/msr.h | 67 ++++++ xen/arch/ppc/include/asm/processor.h | 207 +++++++++++++++++ xen/arch/ppc/include/asm/reg_defs.h | 218 ++++++++++++++++++ xen/arch/ppc/include/asm/string.h | 6 + xen/arch/ppc/include/asm/types.h | 35 +++ xen/arch/ppc/ppc64/Makefile | 1 + xen/arch/ppc/ppc64/asm-offsets.c | 55 +++++ xen/arch/ppc/ppc64/head.S | 48 ++-- xen/arch/ppc/ppc64/of-call.S | 85 +++++++ xen/arch/ppc/setup.c | 31 +++ 24 files changed, 1025 insertions(+), 26 deletions(-) create mode 100755 automation/scripts/qemu-smoke-ppc64le.sh create mode 100644 xen/arch/ppc/boot-of.c create mode 100644 xen/arch/ppc/early_printk.c create mode 100644 xen/arch/ppc/include/asm/boot.h create mode 100644 xen/arch/ppc/include/asm/bug.h create mode 100644 xen/arch/ppc/include/asm/byteorder.h create mode 100644 xen/arch/ppc/include/asm/cache.h create mode 100644 xen/arch/ppc/include/asm/early_printk.h create mode 100644 xen/arch/ppc/include/asm/msr.h create mode 100644 xen/arch/ppc/include/asm/processor.h create mode 100644 xen/arch/ppc/include/asm/reg_defs.h create mode 100644 xen/arch/ppc/include/asm/string.h create mode 100644 xen/arch/ppc/include/asm/types.h create mode 100644 xen/arch/ppc/ppc64/of-call.S create mode 100644 xen/arch/ppc/setup.c -- 2.30.2 From xen-devel-bounces@lists.xenproject.org Wed Jun 21 17:00:15 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 17:00:15 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553031.863358 (Exim 4.92) (envelope-from ) id 1qC1Bl-0005hW-6v; Wed, 21 Jun 2023 17:00:13 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553031.863358; Wed, 21 Jun 2023 17:00:13 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC1Bl-0005hP-3d; Wed, 21 Jun 2023 17:00:13 +0000 Received: by outflank-mailman (input) for mailman id 553031; Wed, 21 Jun 2023 17:00:11 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC1Bj-0005SN-L4 for xen-devel@lists.xenproject.org; Wed, 21 Jun 2023 17:00:11 +0000 Received: from raptorengineering.com (mail.raptorengineering.com [23.155.224.40]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 12efd67c-1055-11ee-b236-6b7b168915f2; Wed, 21 Jun 2023 19:00:08 +0200 (CEST) Received: from localhost (localhost [127.0.0.1]) by mail.rptsys.com (Postfix) with ESMTP id D9B18828673F for ; Wed, 21 Jun 2023 12:00:06 -0500 (CDT) Received: from mail.rptsys.com ([127.0.0.1]) by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032) with ESMTP id xXoXG9L_JIrM; Wed, 21 Jun 2023 12:00:06 -0500 (CDT) Received: from localhost (localhost [127.0.0.1]) by mail.rptsys.com (Postfix) with ESMTP id EAFC882856E5; Wed, 21 Jun 2023 12:00:05 -0500 (CDT) Received: from mail.rptsys.com ([127.0.0.1]) by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id 3xDgSFe4fRPK; Wed, 21 Jun 2023 12:00:05 -0500 (CDT) Received: from raptor-ewks-026.lan (5.edge.rptsys.com [23.155.224.38]) by mail.rptsys.com (Postfix) with ESMTPSA id 9D0AE8285AEB; Wed, 21 Jun 2023 12:00:05 -0500 (CDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 12efd67c-1055-11ee-b236-6b7b168915f2 DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com EAFC882856E5 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD; t=1687366806; bh=uVhDIk325qNoo5nm4Qbpq6QRiPFSopA6RAWCihnIJyI=; h=From:To:Date:Message-Id:MIME-Version; b=oYOJbmzL2vTT942zWzruEfy55JuecYbwZBdAApT9u8IVb7sXAv6R4Mn7r0njohCFI x5IgfPrpT+mcCRIk/NlYXWOBvns+zQnmIoINuI1IO9FrezAzf3hKmjODZNqZtlZqjK 2Xdd7FafYLauSncxE0tDMGG6fDQb0HKu86auAIMw= X-Virus-Scanned: amavisd-new at rptsys.com From: Shawn Anastasio To: xen-devel@lists.xenproject.org Cc: tpearson@raptorengineering.com, Shawn Anastasio Subject: [PATCH 1/4] automation: Add QEMU to bullseye-ppc64le Date: Wed, 21 Jun 2023 11:59:50 -0500 Message-Id: X-Mailer: git-send-email 2.30.2 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Add qemu-system-ppc package to the bullseye-ppc64le container to allow running smoke tests in CI. Signed-off-by: Shawn Anastasio --- automation/build/debian/bullseye-ppc64le.dockerfile | 2 ++ 1 file changed, 2 insertions(+) diff --git a/automation/build/debian/bullseye-ppc64le.dockerfile b/automa= tion/build/debian/bullseye-ppc64le.dockerfile index 8a87631b52..8fad26e903 100644 --- a/automation/build/debian/bullseye-ppc64le.dockerfile +++ b/automation/build/debian/bullseye-ppc64le.dockerfile @@ -22,6 +22,8 @@ RUN apt-get update && \ gcc-powerpc64le-linux-gnu \ make \ python3-minimal \ + # for test phase + qemu-system-ppc \ && \ apt-get autoremove -y && \ apt-get clean && \ --=20 2.30.2 From xen-devel-bounces@lists.xenproject.org Wed Jun 21 17:00:16 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 17:00:16 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553034.863388 (Exim 4.92) (envelope-from ) id 1qC1Bo-0006TX-St; Wed, 21 Jun 2023 17:00:16 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553034.863388; Wed, 21 Jun 2023 17:00:16 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC1Bo-0006TO-Pn; Wed, 21 Jun 2023 17:00:16 +0000 Received: by outflank-mailman (input) for mailman id 553034; Wed, 21 Jun 2023 17:00:15 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC1Bm-0005SN-SE for xen-devel@lists.xenproject.org; Wed, 21 Jun 2023 17:00:15 +0000 Received: from raptorengineering.com (mail.raptorengineering.com [23.155.224.40]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 15d08b9b-1055-11ee-b236-6b7b168915f2; Wed, 21 Jun 2023 19:00:12 +0200 (CEST) Received: from localhost (localhost [127.0.0.1]) by mail.rptsys.com (Postfix) with ESMTP id B81178285395 for ; Wed, 21 Jun 2023 12:00:11 -0500 (CDT) Received: from mail.rptsys.com ([127.0.0.1]) by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032) with ESMTP id cJBfu8ssRsyv; Wed, 21 Jun 2023 12:00:07 -0500 (CDT) Received: from localhost (localhost [127.0.0.1]) by mail.rptsys.com (Postfix) with ESMTP id F305C8285C27; Wed, 21 Jun 2023 12:00:06 -0500 (CDT) Received: from mail.rptsys.com ([127.0.0.1]) by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id QNA4ZaNy_oco; Wed, 21 Jun 2023 12:00:06 -0500 (CDT) Received: from raptor-ewks-026.lan (5.edge.rptsys.com [23.155.224.38]) by mail.rptsys.com (Postfix) with ESMTPSA id 4D2FF8285AEB; Wed, 21 Jun 2023 12:00:06 -0500 (CDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 15d08b9b-1055-11ee-b236-6b7b168915f2 DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com F305C8285C27 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD; t=1687366807; bh=vcQ4ZdVKLwNAdCk9zrwXUCbf8DyOucY5UriZJe9DkNY=; h=From:To:Date:Message-Id:MIME-Version; b=bG2P5nGogfImaKPPrxGIn1iciYYwLqE39rjOyC1sBeBlAXnB3VgCeSOofEgPXl6Mt Wr2jf99WQsqUE6L1FfJCUQ29rgNDQSRJNDvEcBWmYhJp7DJUtoKL8XmxpVftIsc/16 bDNxHmYPVqeQQP79TOB+6zdhoa1wcl2cO6gTz20w= X-Virus-Scanned: amavisd-new at rptsys.com From: Shawn Anastasio To: xen-devel@lists.xenproject.org Cc: tpearson@raptorengineering.com, Shawn Anastasio , Shawn Anastasio Subject: [PATCH 3/4] xen/ppc: Implement early serial printk on pseries Date: Wed, 21 Jun 2023 11:59:52 -0500 Message-Id: <259298cdadf7cf1eba08cd35c636e9aca9e2182a.1687366665.git.sanastasio@raptorengineering.com> X-Mailer: git-send-email 2.30.2 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable On typical Power VMs (e.g. QEMU's -M pseries), a variety of services including an early serial console are provided by Open Firmware. Implement the required interfaces to call into Open Firmware and write to the serial console. Since Open Firmware runs in 32-bit Big Endian mode and Xen runs in 64-bit Little Endian mode, a thunk is required to save/restore any potentially-clobbered registers as well as to perform the required endianness switch. Thankfully, linux already has such a routine, which was imported into ppc64/of-call.S. Support for bare metal (PowerNV) will be implemented in a future patch. Signed-off-by: Shawn Anastasio --- xen/arch/ppc/Kconfig.debug | 5 + xen/arch/ppc/Makefile | 3 + xen/arch/ppc/boot-of.c | 116 +++++++++++++ xen/arch/ppc/configs/ppc64_defconfig | 1 + xen/arch/ppc/early_printk.c | 28 +++ xen/arch/ppc/include/asm/boot.h | 24 +++ xen/arch/ppc/include/asm/bug.h | 6 + xen/arch/ppc/include/asm/byteorder.h | 37 ++++ xen/arch/ppc/include/asm/cache.h | 6 + xen/arch/ppc/include/asm/early_printk.h | 15 ++ xen/arch/ppc/include/asm/msr.h | 67 ++++++++ xen/arch/ppc/include/asm/processor.h | 207 ++++++++++++++++++++++ xen/arch/ppc/include/asm/reg_defs.h | 218 ++++++++++++++++++++++++ xen/arch/ppc/include/asm/string.h | 6 + xen/arch/ppc/include/asm/types.h | 35 ++++ xen/arch/ppc/ppc64/Makefile | 1 + xen/arch/ppc/ppc64/asm-offsets.c | 55 ++++++ xen/arch/ppc/ppc64/head.S | 48 +++--- xen/arch/ppc/ppc64/of-call.S | 85 +++++++++ xen/arch/ppc/setup.c | 31 ++++ 20 files changed, 972 insertions(+), 22 deletions(-) create mode 100644 xen/arch/ppc/boot-of.c create mode 100644 xen/arch/ppc/early_printk.c create mode 100644 xen/arch/ppc/include/asm/boot.h create mode 100644 xen/arch/ppc/include/asm/bug.h create mode 100644 xen/arch/ppc/include/asm/byteorder.h create mode 100644 xen/arch/ppc/include/asm/cache.h create mode 100644 xen/arch/ppc/include/asm/early_printk.h create mode 100644 xen/arch/ppc/include/asm/msr.h create mode 100644 xen/arch/ppc/include/asm/processor.h create mode 100644 xen/arch/ppc/include/asm/reg_defs.h create mode 100644 xen/arch/ppc/include/asm/string.h create mode 100644 xen/arch/ppc/include/asm/types.h create mode 100644 xen/arch/ppc/ppc64/of-call.S create mode 100644 xen/arch/ppc/setup.c diff --git a/xen/arch/ppc/Kconfig.debug b/xen/arch/ppc/Kconfig.debug index e69de29bb2..608c9ff832 100644 --- a/xen/arch/ppc/Kconfig.debug +++ b/xen/arch/ppc/Kconfig.debug @@ -0,0 +1,5 @@ +config EARLY_PRINTK + bool "Enable early printk" + default DEBUG + help + Enables early printk debug messages diff --git a/xen/arch/ppc/Makefile b/xen/arch/ppc/Makefile index 98220648af..4c4cdcb60e 100644 --- a/xen/arch/ppc/Makefile +++ b/xen/arch/ppc/Makefile @@ -1,4 +1,7 @@ obj-$(CONFIG_PPC64) +=3D ppc64/ +obj-y +=3D setup.o +obj-y +=3D boot-of.o +obj-$(CONFIG_EARLY_PRINTK) +=3D early_printk.o =20 $(TARGET): $(TARGET)-syms cp -f $< $@ diff --git a/xen/arch/ppc/boot-of.c b/xen/arch/ppc/boot-of.c new file mode 100644 index 0000000000..1ceeaf1250 --- /dev/null +++ b/xen/arch/ppc/boot-of.c @@ -0,0 +1,116 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ +/* + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, = USA. + * + * Copyright IBM Corp. 2005, 2006, 2007 + * Copyright Raptor Engineering, LLC + * + * Authors: Jimi Xenidis + * Hollis Blanchard + * Shawn Anastasio + */ + +#include +#include +#include +#include + +#define ADDR(x) (uint32_t)(unsigned long)(x) + +/* OF entrypoint*/ +static unsigned long of_vec; + +/* OF device handles*/ +static int bof_chosen; +static int of_out; + +static int of_call(const char *service, uint32_t nargs, uint32_t nrets, + int32_t rets[], ...) +{ + int rc; + va_list args; + int i; + struct of_service s =3D { 0 }; + + s.ofs_service =3D cpu_to_be32(ADDR(service)); + s.ofs_nargs =3D cpu_to_be32(nargs); + s.ofs_nrets =3D cpu_to_be32(nrets); + + /* copy all the params into the args array */ + va_start(args, rets); + + for ( i =3D 0; i < nargs; i++ ) + { + s.ofs_args[i] =3D cpu_to_be32(va_arg(args, uint32_t)); + } + + va_end(args); + + rc =3D enter_of(&s, of_vec); + + /* copy all return values to the output rets array */ + for ( i =3D 0; i < nrets; i++ ) + { + rets[i] =3D be32_to_cpu(s.ofs_args[i + nargs]); + } + + return rc; +} + +static int of_finddevice(const char *devspec) +{ + int rets[1] =3D { OF_FAILURE }; + + of_call("finddevice", 1, 1, rets, devspec); + return rets[0]; +} + +static int of_getprop(int ph, const char *name, void *buf, uint32_t bufl= en) +{ + int rets[1] =3D { OF_FAILURE }; + + of_call("getprop", 4, 1, rets, ph, ADDR(name), buf, buflen); + return rets[0]; +} + +int of_write(int ih, const char *addr, uint32_t len) +{ + int rets[1] =3D { OF_FAILURE }; + + of_call("write", 3, 1, rets, ih, addr, len); + return rets[0]; +} + +static void of_putchar(char c) +{ + if ( c =3D=3D '\n' ) + { + char buf =3D '\r'; + of_write(of_out, &buf, 1); + } + of_write(of_out, &c, 1); +} + +void boot_of_init(unsigned long vec) +{ + of_vec =3D vec; + + /* Get a handle to the default console */ + bof_chosen =3D of_finddevice("/chosen"); + of_getprop(bof_chosen, "stdout", &of_out, sizeof(of_out)); + of_out =3D be32_to_cpu(of_out); + + early_printk_init(of_putchar); +} diff --git a/xen/arch/ppc/configs/ppc64_defconfig b/xen/arch/ppc/configs/= ppc64_defconfig index 8783eb3488..f7cc075e45 100644 --- a/xen/arch/ppc/configs/ppc64_defconfig +++ b/xen/arch/ppc/configs/ppc64_defconfig @@ -10,4 +10,5 @@ CONFIG_PPC64=3Dy CONFIG_DEBUG=3Dy CONFIG_DEBUG_INFO=3Dy +CONFIG_EARLY_PRINTK=3Dy CONFIG_EXPERT=3Dy diff --git a/xen/arch/ppc/early_printk.c b/xen/arch/ppc/early_printk.c new file mode 100644 index 0000000000..309a1a7fd9 --- /dev/null +++ b/xen/arch/ppc/early_printk.c @@ -0,0 +1,28 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ +#include +#include + +static void (*putchar_func)(char); + +void early_printk_init(void (*putchar)(char)) +{ + putchar_func =3D putchar; +} + +void early_puts(const char *s, size_t nr) +{ + if ( !putchar_func ) + return; + + while ( nr-- > 0 ) + putchar_func(*s++); +} + +void early_printk(const char *s) +{ + if ( !putchar_func ) + return; + + while ( *s ) + putchar_func(*s++); +} diff --git a/xen/arch/ppc/include/asm/boot.h b/xen/arch/ppc/include/asm/b= oot.h new file mode 100644 index 0000000000..ea4a945bb4 --- /dev/null +++ b/xen/arch/ppc/include/asm/boot.h @@ -0,0 +1,24 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ +#ifndef _ASM_PPC_BOOT_H +#define _ASM_PPC_BOOT_H + +#include + +/* a collection of interfaces used during boot. */ +enum { + OF_FAILURE =3D -1, + OF_SUCCESS =3D 0, +}; + +struct of_service { + __be32 ofs_service; + __be32 ofs_nargs; + __be32 ofs_nrets; + __be32 ofs_args[10]; +}; + +extern int enter_of(struct of_service *args, unsigned long entry); + +void boot_of_init(unsigned long); + +#endif /* _ASM_PPC_BOOT_H */ diff --git a/xen/arch/ppc/include/asm/bug.h b/xen/arch/ppc/include/asm/bu= g.h new file mode 100644 index 0000000000..a23ab1fa74 --- /dev/null +++ b/xen/arch/ppc/include/asm/bug.h @@ -0,0 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ + +#ifndef _ASM_PPC_BUG_H +#define _ASM_PPC_BUG_H + +#endif /* _ASM_PPC_BUG_H */ diff --git a/xen/arch/ppc/include/asm/byteorder.h b/xen/arch/ppc/include/= asm/byteorder.h new file mode 100644 index 0000000000..cc4d55b355 --- /dev/null +++ b/xen/arch/ppc/include/asm/byteorder.h @@ -0,0 +1,37 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ +#ifndef _ASM_POWERPC_BYTEORDER_H +#define _ASM_POWERPC_BYTEORDER_H + +#include +#include + +static inline __attribute_const__ __u16 ___arch__swab16(__u16 value) +{ + __u16 result; + + asm("rlwimi %0,%1,8,16,23" + : "=3Dr" (result) + : "r" (value), "0" (value >> 8)); + return result; +} + +static inline __attribute_const__ __u32 ___arch__swab32(__u32 value) +{ + __u32 result; + + asm("rlwimi %0,%1,24,16,23\n\t" + "rlwimi %0,%1,8,8,15\n\t" + "rlwimi %0,%1,24,0,7" + : "=3Dr" (result) + : "r" (value), "0" (value >> 24)); + return result; +} + +#define __arch__swab16(x) ___arch__swab16(x) +#define __arch__swab32(x) ___arch__swab32(x) + +#define __BYTEORDER_HAS_U64__ + +#include + +#endif /* _ASM_POWERPC_BYTEORDER_H */ diff --git a/xen/arch/ppc/include/asm/cache.h b/xen/arch/ppc/include/asm/= cache.h new file mode 100644 index 0000000000..8a0a6b7b17 --- /dev/null +++ b/xen/arch/ppc/include/asm/cache.h @@ -0,0 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ + +#ifndef _ASM_PPC_CACHE_H +#define _ASM_PPC_CACHE_H + +#endif /* _ASM_PPC_CACHE_H */ diff --git a/xen/arch/ppc/include/asm/early_printk.h b/xen/arch/ppc/inclu= de/asm/early_printk.h new file mode 100644 index 0000000000..d1d8b416f4 --- /dev/null +++ b/xen/arch/ppc/include/asm/early_printk.h @@ -0,0 +1,15 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ +#ifndef _ASM_PPC_EARLY_PRINTK_H +#define _ASM_PPC_EARLY_PRINTK_H + +#include + +#ifdef CONFIG_EARLY_PRINTK +void early_printk_init(void (*putchar)(char)); +void early_printk(const char *s); +#else +static inline void early_printk_init(void (*putchar)(char)) {} +static inline void early_printk(const char *s) {} +#endif + +#endif /* _ASM_PPC_EARLY_PRINTK_H */ diff --git a/xen/arch/ppc/include/asm/msr.h b/xen/arch/ppc/include/asm/ms= r.h new file mode 100644 index 0000000000..7ef0b5e3ad --- /dev/null +++ b/xen/arch/ppc/include/asm/msr.h @@ -0,0 +1,67 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ +/* + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, = USA. + * + * Copyright (C) IBM Corp. 2005 + * + * Authors: Jimi Xenidis + */ + +#ifndef _POWERPC_MSR_H +#define _POWERPC_MSR_H + +#ifdef __ASSEMBLY__ +#define ULL(x) x +#else +#define ULL(x) x ## ULL +#endif + +/* Flags in MSR: */ +#define MSR_SF ULL(0x8000000000000000) +#define MSR_TA ULL(0x4000000000000000) +#define MSR_ISF ULL(0x2000000000000000) +#define MSR_HV ULL(0x1000000000000000) +#define MSR_VMX ULL(0x0000000002000000) +#define MSR_MER ULL(0x0000000000200000) +#define MSR_POW ULL(0x0000000000040000) +#define MSR_ILE ULL(0x0000000000010000) +#define MSR_EE ULL(0x0000000000008000) +#define MSR_PR ULL(0x0000000000004000) +#define MSR_FP ULL(0x0000000000002000) +#define MSR_ME ULL(0x0000000000001000) +#define MSR_FE0 ULL(0x0000000000000800) +#define MSR_SE ULL(0x0000000000000400) +#define MSR_BE ULL(0x0000000000000200) +#define MSR_FE1 ULL(0x0000000000000100) +#define MSR_IP ULL(0x0000000000000040) +#define MSR_IR ULL(0x0000000000000020) +#define MSR_DR ULL(0x0000000000000010) +#define MSR_PMM ULL(0x0000000000000004) +#define MSR_RI ULL(0x0000000000000002) +#define MSR_LE ULL(0x0000000000000001) + +/* MSR bits set on the systemsim simulator */ +#define MSR_SIM ULL(0x0000000020000000) +#define MSR_SYSTEMSIM ULL(0x0000000010000000) + +/* On a trap, srr1's copy of msr defines some bits as follows: */ +#define MSR_TRAP_FE ULL(0x0000000000100000) /* Floating Point Except= ion */ +#define MSR_TRAP_IOP ULL(0x0000000000080000) /* Illegal Instruction *= / +#define MSR_TRAP_PRIV ULL(0x0000000000040000) /* Privileged Instructio= n */ +#define MSR_TRAP ULL(0x0000000000020000) /* Trap Instruction */ +#define MSR_TRAP_NEXT ULL(0x0000000000010000) /* PC is next instructio= n */ +#define MSR_TRAP_BITS (MSR_TRAP_FE|MSR_TRAP_IOP|MSR_TRAP_PRIV|MSR_TRAP) + +#endif /* _POWERPC_MSR_H */ diff --git a/xen/arch/ppc/include/asm/processor.h b/xen/arch/ppc/include/= asm/processor.h new file mode 100644 index 0000000000..6deba051a8 --- /dev/null +++ b/xen/arch/ppc/include/asm/processor.h @@ -0,0 +1,207 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ +/* + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, = USA. + * + * Copyright IBM Corp. 2005, 2006, 2007 + * Copyright Raptor Engineering, LLC + * + * Authors: Hollis Blanchard + * Christian Ehrhardt + * Timothy Pearson + * Shawn Anastasio + */ + +#ifndef _ASM_PROCESSOR_H_ +#define _ASM_PROCESSOR_H_ + +#include +#include +#include + +#define IOBMP_BYTES 8192 +#define IOBMP_INVALID_OFFSET 0x8000 + +/* Processor Version Register (PVR) field extraction */ + +#define PVR_VER(pvr) (((pvr) >> 16) & 0xFFFF) /* Version field */ +#define PVR_REV(pvr) (((pvr) >> 0) & 0xFFFF) /* Revison field */ + +#define __is_processor(pv) (PVR_VER(mfspr(SPRN_PVR)) =3D=3D (pv)) + +/* + * IBM has further subdivided the standard PowerPC 16-bit version and + * revision subfields of the PVR for the PowerPC 403s into the following= : + */ + +#define PVR_FAM(pvr) (((pvr) >> 20) & 0xFFF) /* Family field */ +#define PVR_MEM(pvr) (((pvr) >> 16) & 0xF) /* Member field */ +#define PVR_CORE(pvr) (((pvr) >> 12) & 0xF) /* Core field */ +#define PVR_CFG(pvr) (((pvr) >> 8) & 0xF) /* Configuration field */ +#define PVR_MAJ(pvr) (((pvr) >> 4) & 0xF) /* Major revision field */ +#define PVR_MIN(pvr) (((pvr) >> 0) & 0xF) /* Minor revision field */ + +/* Processor Version Numbers */ + +#define PVR_403GA 0x00200000 +#define PVR_403GB 0x00200100 +#define PVR_403GC 0x00200200 +#define PVR_403GCX 0x00201400 +#define PVR_405GP 0x40110000 +#define PVR_STB03XXX 0x40310000 +#define PVR_NP405H 0x41410000 +#define PVR_NP405L 0x41610000 +#define PVR_601 0x00010000 +#define PVR_602 0x00050000 +#define PVR_603 0x00030000 +#define PVR_603e 0x00060000 +#define PVR_603ev 0x00070000 +#define PVR_603r 0x00071000 +#define PVR_604 0x00040000 +#define PVR_604e 0x00090000 +#define PVR_604r 0x000A0000 +#define PVR_620 0x00140000 +#define PVR_740 0x00080000 +#define PVR_750 PVR_740 +#define PVR_740P 0x10080000 +#define PVR_750P PVR_740P +#define PVR_7400 0x000C0000 +#define PVR_7410 0x800C0000 +#define PVR_7450 0x80000000 +#define PVR_8540 0x80200000 +#define PVR_8560 0x80200000 +/* + * For the 8xx processors, all of them report the same PVR family for + * the PowerPC core. The various versions of these processors must be + * differentiated by the version number in the Communication Processor + * Module (CPM). + */ +#define PVR_821 0x00500000 +#define PVR_823 PVR_821 +#define PVR_850 PVR_821 +#define PVR_860 PVR_821 +#define PVR_8240 0x00810100 +#define PVR_8245 0x80811014 +#define PVR_8260 PVR_8240 + +/* 64-bit processors */ +#define PVR_NORTHSTAR 0x0033 +#define PVR_PULSAR 0x0034 +#define PVR_POWER4 0x0035 +#define PVR_ICESTAR 0x0036 +#define PVR_SSTAR 0x0037 +#define PVR_POWER4p 0x0038 +#define PVR_970 0x0039 +#define PVR_POWER5 0x003A +#define PVR_POWER5p 0x003B +#define PVR_970FX 0x003C +#define PVR_POWER6 0x003E +#define PVR_POWER7 0x003F +#define PVR_630 0x0040 +#define PVR_630p 0x0041 +#define PVR_970MP 0x0044 +#define PVR_970GX 0x0045 +#define PVR_POWER7p 0x004A +#define PVR_POWER8E 0x004B +#define PVR_POWER8NVL 0x004C +#define PVR_POWER8 0x004D +#define PVR_POWER9 0x004E +#define PVR_POWER10 0x0080 +#define PVR_BE 0x0070 +#define PVR_PA6T 0x0090 + +#ifndef __ASSEMBLY__ + +#include + +/* User-accessible registers: nost of these need to be saved/restored + * for every nested Xen invocation. */ +struct cpu_user_regs +{ + uint64_t gprs[32]; + uint64_t lr; + uint64_t ctr; + uint64_t srr0; + uint64_t srr1; + uint64_t pc; + uint64_t msr; + uint64_t fpscr; + uint64_t xer; + uint64_t hid4; /* debug only */ + uint64_t dar; /* debug only */ + uint32_t dsisr; /* debug only */ + uint32_t cr; + uint32_t __pad; /* good spot for another 32bit reg */ + uint32_t entry_vector; +}; + +static __inline__ void sync(void) +{ + __asm__ __volatile__("sync"); +} + +static __inline__ void isync(void) +{ + __asm__ __volatile__("isync"); +} + +#else + +#define LOAD_IMM64(reg, label) = \ + lis reg, (label) @highest; = \ + ori reg, reg, (label) @higher; = \ + rldicr reg, reg, 32, 31; = \ + oris reg, reg, (label) @h; = \ + ori reg, reg, (label) @l; + +/* + * Depending on how we were booted, the CPU could be running in either + * Little Endian or Big Endian mode. The following trampoline from Linux + * cleverly uses an instruction that encodes to a NOP if the CPU's + * endianness matches the assumption of the assembler (LE, in our case) + * or a branch to code that performs the endian switch in the other case= . + */ +#define FIXUP_ENDIAN = \ + tdi 0, 0, 0x48; /* Reverse endian of b . + 8 */ = \ + b . + 44; /* Skip trampoline if endian is good */ = \ + .long 0xa600607d; /* mfmsr r11 */ = \ + .long 0x01006b69; /* xori r11,r11,1 */ = \ + .long 0x00004039; /* li r10,0 */ = \ + .long 0x6401417d; /* mtmsrd r10,1 */ = \ + .long 0x05009f42; /* bcl 20,31,$+4 */ = \ + .long 0xa602487d; /* mflr r10 */ = \ + .long 0x14004a39; /* addi r10,r10,20 */ = \ + .long 0xa6035a7d; /* mtsrr0 r10 */ = \ + .long 0xa6037b7d; /* mtsrr1 r11 */ = \ + .long 0x2400004c /* rfid */ + +/* Taken from Linux kernel source (arch/powerpc/boot/crt0.S) */ +.macro OP_REGS op, width, start, end, base, offset + .Lreg=3D\start + .rept (\end - \start + 1) + \op .Lreg,\offset+\width*.Lreg(\base) + .Lreg=3D.Lreg+1 + .endr +.endm + +#define SAVE_GPRS(start, end, base) OP_REGS std, 8, start, end, base, 0 +#define REST_GPRS(start, end, base) OP_REGS ld, 8, start, end, base, 0 +#define SAVE_GPR(n, base) SAVE_GPRS(n, n, base) +#define REST_GPR(n, base) REST_GPRS(n, n, base) +#define SAVE_NVGPRS(base) SAVE_GPRS(14, 31, base) +#define REST_NVGPRS(base) REST_GPRS(14, 31, base) + +#endif /* __ASSEMBLY__ */ + +#endif diff --git a/xen/arch/ppc/include/asm/reg_defs.h b/xen/arch/ppc/include/a= sm/reg_defs.h new file mode 100644 index 0000000000..ac435517cc --- /dev/null +++ b/xen/arch/ppc/include/asm/reg_defs.h @@ -0,0 +1,218 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ +/* + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, = USA. + * + * Copyright IBM Corp. 2005, 2007 + * + * Authors: Jimi Xenidis + * Christian Ehrhardt + */ + +#ifndef _ASM_REG_DEFS_H_ +#define _ASM_REG_DEFS_H_ + +#ifdef __ASSEMBLY__ + +#define UL(x) x + +/* Condition Register Bit Fields */ + +#define cr0 0 +#define cr1 1 +#define cr2 2 +#define cr3 3 +#define cr4 4 +#define cr5 5 +#define cr6 6 +#define cr7 7 + + +/* General Purpose Registers (GPRs) */ + +#define r0 0 +#define r1 1 +#define r2 2 +#define r3 3 +#define r4 4 +#define r5 5 +#define r6 6 +#define r7 7 +#define r8 8 +#define r9 9 +#define r10 10 +#define r11 11 +#define r12 12 +#define r13 13 +#define r14 14 +#define r15 15 +#define r16 16 +#define r17 17 +#define r18 18 +#define r19 19 +#define r20 20 +#define r21 21 +#define r22 22 +#define r23 23 +#define r24 24 +#define r25 25 +#define r26 26 +#define r27 27 +#define r28 28 +#define r29 29 +#define r30 30 +#define r31 31 + +/* Floating Point Registers (FPRs) */ +#define fr0 0 +#define fr1 1 +#define fr2 2 +#define fr3 3 +#define fr4 4 +#define fr5 5 +#define fr6 6 +#define fr7 7 +#define fr8 8 +#define fr9 9 +#define fr10 10 +#define fr11 11 +#define fr12 12 +#define fr13 13 +#define fr14 14 +#define fr15 15 +#define fr16 16 +#define fr17 17 +#define fr18 18 +#define fr19 19 +#define fr20 20 +#define fr21 21 +#define fr22 22 +#define fr23 23 +#define fr24 24 +#define fr25 25 +#define fr26 26 +#define fr27 27 +#define fr28 28 +#define fr29 29 +#define fr30 30 +#define fr31 31 + +/* Vector Registers (FPRs) */ +#define vr0 0 +#define vr1 1 +#define vr2 2 +#define vr3 3 +#define vr4 4 +#define vr5 5 +#define vr6 6 +#define vr7 7 +#define vr8 8 +#define vr9 9 +#define vr10 10 +#define vr11 11 +#define vr12 12 +#define vr13 13 +#define vr14 14 +#define vr15 15 +#define vr16 16 +#define vr17 17 +#define vr18 18 +#define vr19 19 +#define vr20 20 +#define vr21 21 +#define vr22 22 +#define vr23 23 +#define vr24 24 +#define vr25 25 +#define vr26 26 +#define vr27 27 +#define vr28 28 +#define vr29 29 +#define vr30 30 +#define vr31 31 + +#else /* defined(__ASSEMBLY__) */ + +#define UL(x) x ## UL + +#endif + +/* Special Purpose Registers */ +#define SPRN_VRSAVE 256 +#define SPRN_DSISR 18 +#define SPRN_DAR 19 +#define SPRN_DEC 22 +#define SPRN_SRR0 26 +#define SPRN_SRR1 27 +#define SPRN_TBRL 268 +#define SPRN_TBRU 269 +#define SPRN_SPRG0 272 +#define SPRN_SPRG1 273 +#define SPRN_SPRG2 274 +#define SPRN_SPRG3 275 +#define SPRN_TBWL 284 +#define SPRN_TBWU 285 + +#define SPRN_HSPRG0 304 +#define SPRN_HSPRG1 305 +#define SPRN_HDEC 310 +#define SPRN_HIOR 311 +#define SPRN_RMOR 312 +#define SPRN_HRMOR 313 +#define SPRN_HSRR0 314 +#define SPRN_HSRR1 315 +#define SPRN_LPCR 318 +#define SPRN_LPIDR 319 + +/* Performance monitor spr encodings */ +#define SPRN_MMCRA 786 +#define MMCRA_SAMPHV UL(0x10000000) /* state of MSR HV when SIAR se= t */ +#define MMCRA_SAMPPR UL(0x08000000) /* state of MSR PR when SIAR se= t */ +#define MMCRA_SAMPLE_ENABLE UL(0x00000001) /* enable sampling */ +#define NUM_PMCS 8 +#define SPRN_PMC1 787 +#define SPRN_PMC2 788 +#define SPRN_PMC3 789 +#define SPRN_PMC4 790 +#define SPRN_PMC5 791 +#define SPRN_PMC6 792 +#define SPRN_PMC7 793 +#define SPRN_PMC8 794 +#define SPRN_MMCR0 795 +#define MMCR0_FC UL(0x80000000) /* freeze counters */ +#define MMCR0_FCS UL(0x40000000) /* freeze in supervisor state */ +#define MMCR0_FCP UL(0x20000000) /* freeze in problem state */ +#define MMCR0_FCM1 UL(0x10000000) /* freeze counters while MSR mark= =3D 1 */ +#define MMCR0_FCM0 UL(0x08000000) /* freeze counters while MSR mark= =3D 0 */ +#define MMCR0_PMAE UL(0x04000000) /* performance monitor alert enab= led */ +#define MMCR0_PMAO UL(0x00000080) /* performance monitor alert occu= rred */ +#define MMCR0_FCH UL(0x00000001) /* freeze conditions in hyperviso= r */ +#define SPRN_SIAR 796 +#define SPRN_SDAR 797 +#define SPRN_MMCR1 798 + +/* As defined for PU G4 */ +#define SPRN_HID0 1008 +#define SPRN_HID1 1009 +#define SPRN_HID4 1012 + +#define SPRN_DABR 1013 +#define SPRN_HID5 1014 +#define SPRN_DABRX 1015 +#define SPRN_HID6 1017 +#define SPRN_HID7 1018 +#define SPRN_HID8 1019 +#define SPRN_PIR 1023 + +#endif /* _ASM_REG_DEFS_H_ */ diff --git a/xen/arch/ppc/include/asm/string.h b/xen/arch/ppc/include/asm= /string.h new file mode 100644 index 0000000000..7a420e05e4 --- /dev/null +++ b/xen/arch/ppc/include/asm/string.h @@ -0,0 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ + +#ifndef _ASM_PPC_STRING_H +#define _ASM_PPC_STRING_H + +#endif /* _ASM_PPC_STRING_H */ diff --git a/xen/arch/ppc/include/asm/types.h b/xen/arch/ppc/include/asm/= types.h new file mode 100644 index 0000000000..05c42280d4 --- /dev/null +++ b/xen/arch/ppc/include/asm/types.h @@ -0,0 +1,35 @@ +/* from xen/arch/x86/include/asm/types.h */ + +#ifndef _ASM_PPC_TYPES_H +#define _ASM_PPC_TYPES_H + +typedef __signed__ char __s8; +typedef unsigned char __u8; + +typedef __signed__ short __s16; +typedef unsigned short __u16; + +typedef __signed__ int __s32; +typedef unsigned int __u32; + +#if defined(__GNUC__) && !defined(__STRICT_ANSI__) +typedef __signed__ long __s64; +typedef unsigned long __u64; +#endif + +typedef signed char s8; +typedef unsigned char u8; + +typedef signed short s16; +typedef unsigned short u16; + +typedef signed int s32; +typedef unsigned int u32; + +typedef signed long s64; +typedef unsigned long u64; +typedef unsigned long paddr_t; +#define INVALID_PADDR (~0UL) +#define PRIpaddr "016lx" + +#endif /* _ASM_PPC_TYPES_H */ diff --git a/xen/arch/ppc/ppc64/Makefile b/xen/arch/ppc/ppc64/Makefile index 3340058c08..f4956daaa9 100644 --- a/xen/arch/ppc/ppc64/Makefile +++ b/xen/arch/ppc/ppc64/Makefile @@ -1 +1,2 @@ obj-y +=3D head.o +obj-y +=3D of-call.o diff --git a/xen/arch/ppc/ppc64/asm-offsets.c b/xen/arch/ppc/ppc64/asm-of= fsets.c index e69de29bb2..a6de2b2768 100644 --- a/xen/arch/ppc/ppc64/asm-offsets.c +++ b/xen/arch/ppc/ppc64/asm-offsets.c @@ -0,0 +1,55 @@ +/* + * Generate definitions needed by assembly language modules. + * This code generates raw asm output which is post-processed + * to extract and format the required data. + */ + +#include + +#define DEFINE(_sym, _val) = \ + asm volatile ("\n.ascii\"=3D=3D>#define " #_sym " %0 /* " #_val " */= <=3D=3D\"" \ + : : "i" (_val) ) +#define BLANK() = \ + asm volatile ( "\n.ascii\"=3D=3D><=3D=3D\"" : : ) +#define OFFSET(_sym, _str, _mem) = \ + DEFINE(_sym, offsetof(_str, _mem)); + +/* base-2 logarithm */ +#define __L2(_x) (((_x) & 0x00000002) ? 1 : 0) +#define __L4(_x) (((_x) & 0x0000000c) ? ( 2 + __L2( (_x)>> 2)) : __L2( = _x)) +#define __L8(_x) (((_x) & 0x000000f0) ? ( 4 + __L4( (_x)>> 4)) : __L4( = _x)) +#define __L16(_x) (((_x) & 0x0000ff00) ? ( 8 + __L8( (_x)>> 8)) : __L8( = _x)) +#define LOG_2(_x) (((_x) & 0xffff0000) ? (16 + __L16((_x)>>16)) : __L16(= _x)) + +void __dummy__(void) +{ + DEFINE(GPR_WIDTH, sizeof(unsigned long)); + DEFINE(FPR_WIDTH, sizeof(double)); + + OFFSET(UREGS_gprs, struct cpu_user_regs, gprs); + OFFSET(UREGS_r0, struct cpu_user_regs, gprs[0]); + OFFSET(UREGS_r1, struct cpu_user_regs, gprs[1]); + OFFSET(UREGS_r13, struct cpu_user_regs, gprs[13]); + OFFSET(UREGS_srr0, struct cpu_user_regs, srr0); + OFFSET(UREGS_srr1, struct cpu_user_regs, srr1); + OFFSET(UREGS_pc, struct cpu_user_regs, pc); + OFFSET(UREGS_msr, struct cpu_user_regs, msr); + OFFSET(UREGS_lr, struct cpu_user_regs, lr); + OFFSET(UREGS_ctr, struct cpu_user_regs, ctr); + OFFSET(UREGS_xer, struct cpu_user_regs, xer); + OFFSET(UREGS_hid4, struct cpu_user_regs, hid4); + OFFSET(UREGS_dar, struct cpu_user_regs, dar); + OFFSET(UREGS_dsisr, struct cpu_user_regs, dsisr); + OFFSET(UREGS_cr, struct cpu_user_regs, cr); + OFFSET(UREGS_fpscr, struct cpu_user_regs, fpscr); + DEFINE(UREGS_sizeof, sizeof(struct cpu_user_regs)); +} + +/* + * Local variables: + * mode: C + * c-file-style: "BSD" + * c-basic-offset: 4 + * indent-tabs-mode: nil + * End: + */ diff --git a/xen/arch/ppc/ppc64/head.S b/xen/arch/ppc/ppc64/head.S index 2fcefb40d8..589c72e382 100644 --- a/xen/arch/ppc/ppc64/head.S +++ b/xen/arch/ppc/ppc64/head.S @@ -1,30 +1,34 @@ /* SPDX-License-Identifier: GPL-2.0-or-later */ =20 +#include + .section .text.header, "ax", %progbits =20 ENTRY(start) - /* - * Depending on how we were booted, the CPU could be running in eith= er - * Little Endian or Big Endian mode. The following trampoline from L= inux - * cleverly uses an instruction that encodes to a NOP if the CPU's - * endianness matches the assumption of the assembler (LE, in our ca= se) - * or a branch to code that performs the endian switch in the other = case. - */ - tdi 0, 0, 0x48 /* Reverse endian of b . + 8 */ - b . + 44 /* Skip trampoline if endian is good */ - .long 0xa600607d /* mfmsr r11 */ - .long 0x01006b69 /* xori r11,r11,1 */ - .long 0x00004039 /* li r10,0 */ - .long 0x6401417d /* mtmsrd r10,1 */ - .long 0x05009f42 /* bcl 20,31,$+4 */ - .long 0xa602487d /* mflr r10 */ - .long 0x14004a39 /* addi r10,r10,20 */ - .long 0xa6035a7d /* mtsrr0 r10 */ - .long 0xa6037b7d /* mtsrr1 r11 */ - .long 0x2400004c /* rfid */ - - /* Now that the endianness is confirmed, continue */ -1: b 1b + /* NOTE: argument registers (r3-r9) must be preserved until the C en= trypoint */ + FIXUP_ENDIAN + + /* set up the initial stack */ + LOAD_IMM64(r1, cpu0_boot_stack) + li r8, 0 + std r8, 0(r1) + + /* call the C entrypoint */ + LOAD_IMM64(r12, start_xen) + mtctr r12 + bctrl + + /* should never return */ + trap =20 .size start, . - start .type start, %function + + .section .init.data, "aw", @progbits + + /* Early init stack */ + .p2align 4 +cpu0_boot_stack_bottom: + .space STACK_SIZE +cpu0_boot_stack: + .space STACK_FRAME_OVERHEAD diff --git a/xen/arch/ppc/ppc64/of-call.S b/xen/arch/ppc/ppc64/of-call.S new file mode 100644 index 0000000000..588f6195c4 --- /dev/null +++ b/xen/arch/ppc/ppc64/of-call.S @@ -0,0 +1,85 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ +/* + * Adapted from Linux's arch/powerpc/kernel/entry_64.S, with the + * following copyright notice: + * + * PowerPC version + * Copyright (C) 1995-1996 Gary Thomas (gdt@linuxppc.org) + * Rewritten by Cort Dougan (cort@cs.nmt.edu) for PReP + * Copyright (C) 1996 Cort Dougan + * Adapted for Power Macintosh by Paul Mackerras. + * Low-level exception handlers and MMU support + * rewritten by Paul Mackerras. + * Copyright (C) 1996 Paul Mackerras. + * MPC8xx modifications Copyright (C) 1997 Dan Malek (dmalek@jlc.net). + * + * This file contains the system call entry code, context switch + * code, and exception/interrupt return code for PowerPC. + */ + +#include +#include + +/* size of minimum stack frame that can hold an entire cpu_user_regs str= uct */ +#define STACK_SWITCH_FRAME_SIZE (UREGS_sizeof + STACK_FRAME_OVERHEAD) + +ENTRY(enter_of) + mflr r0 + std r0, 16(r1) + stdu r1,-STACK_SWITCH_FRAME_SIZE(r1) /* Save SP and create stack spa= ce */ + + /* Because PROM is running in 32b mode, it clobbers the high order h= alf + * of all registers that it saves. We therefore save those register= s + * PROM might touch to the stack. (r0, r3-r13 are caller saved) + */ + SAVE_GPR(2, r1) + SAVE_GPR(13, r1) + SAVE_NVGPRS(r1) + mfcr r10 + mfmsr r11 + std r10, UREGS_cr(r1) + std r11, UREGS_msr(r1) + + /* Put PROM address in SRR0 */ + mtsrr0 r4 + + /* Setup our trampoline return addr in LR */ + bcl 20, 31,.+4 +0: mflr r4 + addi r4, r4,(1f - 0b) + mtlr r4 + + /* Prepare a 32-bit mode big endian MSR + */ + LOAD_IMM64(r12, MSR_SF | MSR_LE) + andc r11, r11, r12 + mtsrr1 r11 + rfid + +1: /* Return from OF */ + FIXUP_ENDIAN + + /* Just make sure that r1 top 32 bits didn't get + * corrupt by OF + */ + rldicl r1, r1, 0, 32 + + /* Restore the MSR (back to 64 bits) */ + ld r0, UREGS_msr(r1) + mtmsrd r0 + isync + + /* Restore other registers */ + REST_GPR(2, r1) + REST_GPR(13, r1) + REST_NVGPRS(r1) + ld r4, UREGS_cr(r1) + mtcr r4 + + addi r1, r1, STACK_SWITCH_FRAME_SIZE + ld r0, 16(r1) + mtlr r0 + blr + + .size enter_of, . - enter_of + .type enter_of, %function diff --git a/xen/arch/ppc/setup.c b/xen/arch/ppc/setup.c new file mode 100644 index 0000000000..a312c12e6a --- /dev/null +++ b/xen/arch/ppc/setup.c @@ -0,0 +1,31 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ +#include +#include +#include +#include + +void __init noreturn start_xen(unsigned long r3, unsigned long r4, + unsigned long r5, unsigned long r6, + unsigned long r7) +{ + if ( r5 ) + { + /* OpenFirmware boot protocol */ + boot_of_init(r5); + } + else + { + /* kexec boot: Unimplemented */ + __builtin_trap(); + } + + early_printk("Hello, ppc64le!\n"); + + for ( ;; ) + { + // Set current hardware thread to very low priority + asm volatile("or 31,31,31"); + } + + unreachable(); +} --=20 2.30.2 From xen-devel-bounces@lists.xenproject.org Wed Jun 21 17:00:18 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 17:00:18 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553030.863348 (Exim 4.92) (envelope-from ) id 1qC1Bj-0005Sf-Ue; Wed, 21 Jun 2023 17:00:11 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553030.863348; Wed, 21 Jun 2023 17:00:11 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC1Bj-0005SY-Ry; Wed, 21 Jun 2023 17:00:11 +0000 Received: by outflank-mailman (input) for mailman id 553030; Wed, 21 Jun 2023 17:00:11 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC1Bj-0005SM-Ao for xen-devel@lists.xenproject.org; Wed, 21 Jun 2023 17:00:11 +0000 Received: from raptorengineering.com (mail.raptorengineering.com [23.155.224.40]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 131539d7-1055-11ee-8611-37d641c3527e; Wed, 21 Jun 2023 19:00:08 +0200 (CEST) Received: from localhost (localhost [127.0.0.1]) by mail.rptsys.com (Postfix) with ESMTP id E750582856E5 for ; Wed, 21 Jun 2023 12:00:06 -0500 (CDT) Received: from mail.rptsys.com ([127.0.0.1]) by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032) with ESMTP id XioM9KpfcErI; Wed, 21 Jun 2023 12:00:06 -0500 (CDT) Received: from localhost (localhost [127.0.0.1]) by mail.rptsys.com (Postfix) with ESMTP id 52F858285BE8; Wed, 21 Jun 2023 12:00:06 -0500 (CDT) Received: from mail.rptsys.com ([127.0.0.1]) by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id TGuLeV71IBQd; Wed, 21 Jun 2023 12:00:06 -0500 (CDT) Received: from raptor-ewks-026.lan (5.edge.rptsys.com [23.155.224.38]) by mail.rptsys.com (Postfix) with ESMTPSA id 020548285AF3; Wed, 21 Jun 2023 12:00:05 -0500 (CDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 131539d7-1055-11ee-8611-37d641c3527e DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com 52F858285BE8 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD; t=1687366806; bh=37EGcJz08jntUuTWlay8W465dwhX4/NOU7Vu1RmJwjE=; h=From:To:Date:Message-Id:MIME-Version; b=pIX/MsMwVKyAvr8gIG1B5rQsjSPBs23If/HbZuHdao27Y13dyX44TO3406i3yjUXu wrzKW4VBdstqT8DKY90MeRm2Ua+CwGbb1j8auQ7Uc/MfvTsGIq3OqW7W08ZBJgf3hC I0oeUY2Aa8PkbPFATP4WmpDheWoW/luASlpFOI1A= X-Virus-Scanned: amavisd-new at rptsys.com From: Shawn Anastasio To: xen-devel@lists.xenproject.org Cc: tpearson@raptorengineering.com, Shawn Anastasio Subject: [PATCH 2/4] automation: Fix KBUILD_DEFCONFIG for *ppc64le jobs Date: Wed, 21 Jun 2023 11:59:51 -0500 Message-Id: <910f301dadbd2e15ef23837bb2e95903b8f0711e.1687366665.git.sanastasio@raptorengineering.com> X-Mailer: git-send-email 2.30.2 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable During an iteration of the initial ppc64le support patchset the default defconfig was renamed but build.yaml wasn't updated to reflect this. Fix it up. Signed-off-by: Shawn Anastasio --- automation/gitlab-ci/build.yaml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/automation/gitlab-ci/build.yaml b/automation/gitlab-ci/build= .yaml index bd8c7332db..c401f62d61 100644 --- a/automation/gitlab-ci/build.yaml +++ b/automation/gitlab-ci/build.yaml @@ -548,21 +548,21 @@ debian-bullseye-gcc-ppc64le: extends: .gcc-ppc64le-cross-build variables: CONTAINER: debian:bullseye-ppc64le - KBUILD_DEFCONFIG: openpower_defconfig + KBUILD_DEFCONFIG: ppc64_defconfig HYPERVISOR_ONLY: y =20 debian-bullseye-gcc-ppc64le-debug: extends: .gcc-ppc64le-cross-build-debug variables: CONTAINER: debian:bullseye-ppc64le - KBUILD_DEFCONFIG: openpower_defconfig + KBUILD_DEFCONFIG: ppc64_defconfig HYPERVISOR_ONLY: y =20 debian-bullseye-gcc-ppc64le-randconfig: extends: .gcc-ppc64le-cross-build variables: CONTAINER: debian:bullseye-ppc64le - KBUILD_DEFCONFIG: openpower_defconfig + KBUILD_DEFCONFIG: ppc64_defconfig RANDCONFIG: y EXTRA_FIXED_RANDCONFIG: CONFIG_COVERAGE=3Dn @@ -571,7 +571,7 @@ debian-bullseye-gcc-ppc64le-debug-randconfig: extends: .gcc-ppc64le-cross-build-debug variables: CONTAINER: debian:bullseye-ppc64le - KBUILD_DEFCONFIG: openpower_defconfig + KBUILD_DEFCONFIG: ppc64_defconfig RANDCONFIG: y EXTRA_FIXED_RANDCONFIG: CONFIG_COVERAGE=3Dn --=20 2.30.2 From xen-devel-bounces@lists.xenproject.org Wed Jun 21 17:07:49 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 17:07:49 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553055.863398 (Exim 4.92) (envelope-from ) id 1qC1Ii-0008Lh-RC; Wed, 21 Jun 2023 17:07:24 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553055.863398; Wed, 21 Jun 2023 17:07:24 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC1Ii-0008La-Nx; Wed, 21 Jun 2023 17:07:24 +0000 Received: by outflank-mailman (input) for mailman id 553055; Wed, 21 Jun 2023 17:07:23 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC1Ih-0008LQ-A2; Wed, 21 Jun 2023 17:07:23 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC1Ih-0005d9-2K; Wed, 21 Jun 2023 17:07:23 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC1Ig-0000jz-EP; Wed, 21 Jun 2023 17:07:22 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qC1Ig-0005oN-Dv; Wed, 21 Jun 2023 17:07:22 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=J85VfLeHrX3uLqEnMYlgjJUgww44iI80ECGObqBHTU4=; b=moM++tzYfDXZWgmZYKXYEBWT7q gvzLLXQ5hrpM9+ufdlggrkOKB7JrvN3+6M+2T9kJcp1K6XoSgQhgg5SuPYQZsJlZpa0EDf08RWbm0 5iaW2nmHVwn4WZAiSwbF8wS669LZK6cmxOziCT94I0ZW6CDuDp8DGpxfRpBB6L/8t1Jw=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [linux-linus test] 181529: regressions - trouble: blocked/broken/fail/pass X-Osstest-Failures: linux-linus:build-armhf::broken:regression linux-linus:build-armhf:host-install(4):broken:regression linux-linus:test-amd64-amd64-libvirt-qcow2:guest-start/debian.repeat:fail:regression linux-linus:test-armhf-armhf-examine:build-check(1):blocked:nonblocking linux-linus:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking linux-linus:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking linux-linus:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking linux-linus:test-armhf-armhf-xl:build-check(1):blocked:nonblocking linux-linus:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking linux-linus:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking linux-linus:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking linux-linus:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking linux-linus:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking linux-linus:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking linux-linus:build-armhf-libvirt:build-check(1):blocked:nonblocking linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-raw:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-qcow2:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: linux=e660abd551f1172e428b4e4003de887176a8a1fd X-Osstest-Versions-That: linux=6c538e1adbfc696ac4747fb10d63e704344f763d From: osstest service owner Date: Wed, 21 Jun 2023 17:07:22 +0000 flight 181529 linux-linus real [real] http://logs.test-lab.xenproject.org/osstest/logs/181529/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-armhf broken build-armhf 4 host-install(4) broken REGR. vs. 180278 test-amd64-amd64-libvirt-qcow2 19 guest-start/debian.repeat fail REGR. vs. 180278 Tests which did not succeed, but are not blocking: test-armhf-armhf-examine 1 build-check(1) blocked n/a test-armhf-armhf-libvirt 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-qcow2 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-raw 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a test-armhf-armhf-xl-arndale 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit1 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-multivcpu 1 build-check(1) blocked n/a test-armhf-armhf-xl-rtds 1 build-check(1) blocked n/a test-armhf-armhf-xl-vhd 1 build-check(1) blocked n/a build-armhf-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 180278 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 180278 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 180278 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 180278 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 180278 test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qcow2 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass version targeted for testing: linux e660abd551f1172e428b4e4003de887176a8a1fd baseline version: linux 6c538e1adbfc696ac4747fb10d63e704344f763d Last test of basis 180278 2023-04-16 19:41:46 Z 65 days Failing since 180281 2023-04-17 06:24:36 Z 65 days 123 attempts Testing same since 181529 2023-06-21 02:27:06 Z 0 days 1 attempts ------------------------------------------------------------ 2743 people touched revisions under test, not listing them all jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf broken build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt blocked build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl blocked test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-freebsd11-amd64 pass test-amd64-amd64-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale blocked test-amd64-amd64-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 blocked test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 blocked test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine blocked test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt blocked test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu blocked test-amd64-amd64-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-amd64-pygrub pass test-amd64-amd64-libvirt-qcow2 fail test-armhf-armhf-libvirt-qcow2 blocked test-amd64-amd64-libvirt-raw pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw blocked test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-amd64-xl-vhd pass test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd blocked ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary broken-job build-armhf broken broken-step build-armhf host-install(4) Not pushing. (No revision log; it would be 349240 lines long.) From xen-devel-bounces@lists.xenproject.org Wed Jun 21 17:54:52 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 17:54:52 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553064.863407 (Exim 4.92) (envelope-from ) id 1qC22H-0005Bf-Af; Wed, 21 Jun 2023 17:54:29 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553064.863407; Wed, 21 Jun 2023 17:54:29 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC22H-0005BY-7U; Wed, 21 Jun 2023 17:54:29 +0000 Received: by outflank-mailman (input) for mailman id 553064; Wed, 21 Jun 2023 17:54:28 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC22G-0005BS-1B for xen-devel@lists.xenproject.org; Wed, 21 Jun 2023 17:54:28 +0000 Received: from esa3.hc3370-68.iphmx.com (esa3.hc3370-68.iphmx.com [216.71.145.155]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id a6bf8135-105c-11ee-8611-37d641c3527e; Wed, 21 Jun 2023 19:54:23 +0200 (CEST) Received: from mail-dm6nam10lp2104.outbound.protection.outlook.com (HELO NAM10-DM6-obe.outbound.protection.outlook.com) ([104.47.58.104]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 21 Jun 2023 13:54:20 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by SJ2PR03MB7138.namprd03.prod.outlook.com (2603:10b6:a03:4fd::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.37; Wed, 21 Jun 2023 17:54:18 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606%4]) with mapi id 15.20.6521.023; Wed, 21 Jun 2023 17:54:17 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: a6bf8135-105c-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1687370063; h=message-id:date:subject:to:cc:references:from: in-reply-to:content-transfer-encoding:mime-version; bh=DKuVnU9S3UWAEcVAKJ/sN1Dkcl4wbdMxC6OFxcHUztA=; b=ZdmPmTokmEvvwE7IKiR6Etyzzw/K9teNS+XG6un8DpJf5K/j0NfQaaeH vL+79D5Ar9u9lhziw0YwvnZNdtYgtfofzDpuyCwmBg8tmbktzgRae8fk/ Nl38Ggux3iXn9MXU+kVAtxfKZSbof1sAEsqw60ey2mWbnTN5ocpPeyxnB 8=; X-IronPort-RemoteIP: 104.47.58.104 X-IronPort-MID: 113678359 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:Ni9gxKvv2C916gE23Whl8F0yZufnVKJfMUV32f8akzHdYApBsoF/q tZmKW+CPPaKazH1fYhybd+18h9Uv5ODydVhGwFkqS1gQyob+JbJXdiXEBz9bniYRiHhoOCLz O1FM4Wdc5pkJpP4jk3wWlQ0hSAkjclkfpKlVKiffHg3HVQ+IMsYoUoLs/YjhYJ1isSODQqIu Nfjy+XSI1bg0DNvWo4uw/vrRChH4rKq4Fv0gnRkPaoQ5AGEziFJZH4iDfrZw0XQE9E88tGSH 44v/JnhlkvF8hEkDM+Sk7qTWiXmlZaLYGBiIlIPM0STqkAqSh4ai87XB9JFAatjsB2bnsgZ9 Tl4ncfYpTHFnEH7sL91vxFwS0mSNEDdkVPNCSDXXce7lyUqf5ZwqhnH4Y5f0YAwo45K7W9yG fMwOh0kfh7emb6M3JmWb9VP3ucEIPC2BdZK0p1g5Wmx4fcOZ7nmGv2PyfoGmTA6i4ZJAOrUY NcfZXx3dhPcbhZTO1ARTpUjgOOvgXq5eDpdwL6XjfNvvy6Pk0osgP60aIa9lt+iHK25mm6xo G7c8nu/KRYdLNGFkhKO8262h/+JliT+MG4XPOThraA10AbOlwT/DjUEb2Wmg9OQgHeQQo0Ac EpT6xMn87ULoRnDot7VGkfQTGS/lgUVXdNLD+Qh6Qal0KPM/wGDC24LTzhMZcYnssBwTjsvv neZktWsCTFxvbm9TXOG6qzSvT60ITISL2IJeWkDVwRty8X7rYgplRXJZsxqCLKylNDzFjD2z j2QrS4xwb4UiKYjzKWy4lbOhTu3upHSTwkd/AzPQmW/4wV2ZYioapap71ed5vFFRLt1VXGEt XkA3sSbsuYHCMjVkDTXGb1RWra0+/yCLTvQx0Z1GIUs/Cis/Hjlep1M5DZ5JwFiNcNslSLVX XI/cDh5vPd7VEZGp4cuC25tI6zGFZTdKOk= IronPort-HdrOrdr: A9a23:+Ee9wq8VDksXe9+IAu9uk+DJI+orL9Y04lQ7vn2ZKCY5TiX8ra vFoB11726WtN9vYgBDpTntAse9qBDnmaKdg7NwAV7KZmCPhILCFu5fBOXZogEIEheOk9Jg6Q == X-Talos-CUID: =?us-ascii?q?9a23=3A+2u/q2rlso5fBJpfd5IXMx7mUdIIW23TkWmMGVO?= =?us-ascii?q?TJENVa+W2blOppZoxxg=3D=3D?= X-Talos-MUID: =?us-ascii?q?9a23=3AmLLaEA2HgnRs7CgAsKfk2BQogzUj8Z6QFWInuJ8?= =?us-ascii?q?/ldDband2fCakhWqqe9py?= X-IronPort-AV: E=Sophos;i="6.00,261,1681185600"; d="scan'208";a="113678359" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=HV6GRVJ/CfLXzlqbkus5FaXEVb/Vq4dqx1mnNO3WSP3AJzCQzDzgHilmkjzO1xuzPlHL3s9jXK+fW2kdOCxpP0bRaw5RnhsrG3OLHwBOCTngafDRTUXmmGZn7AECfrZPl473rj+E6zMxsgMJdV+A7Qi0uxUA6PIJW2TSMoJ3LGZkrKE/t+akq5ouxuQLA7nynOkzBxf+VsvT23AzjDvd3CWHfxcpSnygSc7CLQTs75GxbK4sETZOwZtmkwsvYlJu6pQgku3vBp6W0RRn/grG/yQt50Ot0XL3CeOb4NfHdGEAGSulmAROCMGajfzyH+fxX2Msigsw4nf7OLFGkdU8+w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=3AYRt7QxRC2fSL000Yk2bLEx49lbLczuJNH2BPJKuzk=; b=fYlnlXoPWsgGS/kpop/6y9WWougOLKtu+g5j2mTQQo7smONQGx5rbWVAhoNo8yO63G5cTSBRgdMRwYszPf4yD0NdL7k8WpHuGDovg2CsLWYJnqUPDOnaspG259IdJD5VUC5AkDBoVwLB/ZSQGAgG0RpvCt155tqsP2+GMJKFNMwwS1mQgrErAQwXoSoSlaQSNifGjwffJ+AUS0Kq+Z4aThNcd2W2LK348GtGjS/PskM25MXTVrOcRmh5YqYozDTMerqq5HyU/6l/dN7YQJE7JcwNfpwD8B3KwA7DgDCkiK5vSjb0OTIoKe/phAj3vNtc2ULv54vdTKMo/oXTeV6AxQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=3AYRt7QxRC2fSL000Yk2bLEx49lbLczuJNH2BPJKuzk=; b=kmFoxDJI2lbZTVhvS+6y/db1fTCfG+ZiXkTZd99wnhOKWr+2Pm+1L2jOytH1MW9mLlJqIv8XFX4oYtHTOQ3HT0hSss/9/ZVUyojMmARMn7/mQKDDUFmzLNNWV3rBzjm8S8WZy/Z3YctMfREr8JgPUBz4CJr3UNVyKKR5+nuw04o= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: <692e2955-a85d-3c6c-7730-962956f6ebf6@citrix.com> Date: Wed, 21 Jun 2023 18:54:11 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH 3/4] xen/ppc: Implement early serial printk on pseries Content-Language: en-GB To: Shawn Anastasio , xen-devel@lists.xenproject.org Cc: tpearson@raptorengineering.com, Shawn Anastasio References: <259298cdadf7cf1eba08cd35c636e9aca9e2182a.1687366665.git.sanastasio@raptorengineering.com> From: Andrew Cooper In-Reply-To: <259298cdadf7cf1eba08cd35c636e9aca9e2182a.1687366665.git.sanastasio@raptorengineering.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO4P123CA0570.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:276::14) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|SJ2PR03MB7138:EE_ X-MS-Office365-Filtering-Correlation-Id: f71c635b-b22d-4265-0085-08db7280887c X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: D5GasfJ7EWmv8EkSce+xXASMs/Ty3c9XVSdn7Wwsy2nYyJVz/5/IqGAxE/KBHAebMH9bkWjD2gOLNTHvOivgI5Rb4N9f17SlgbNzMvgmzSMvVeRmVTSnEw4MGS+4CmueHBP2hDugmQU+GNi3rQBrVcZuXxUI7gNyHlRf03LOibYGxSnCViCDkaYs5xG4NPvptRn/pq5etuIOKQ3NEriuhEwYi6W/hjHcWj+mSiSCAHQ6vSBbHa/JPm44B0BD5qMQH5lMh3cWsg0ghqLa6PTKQzMP5rI6deAMZtIrNbDeFX+dSgI3DNCAi+Dhk8XWMhx3ZJ1U/0l1xu+f+QFjRJBZfMuZULdlxaGQ0G2Tbh9rixUhDRR8alQoiMnFmO782xr0wrYTLN6JklQabGc6Rw428dSo1WnD5z/UTDtX4mNCLqIkr9mXRYgtTsRXA/0R5M/eFZWCm6NwyfKfQsaIY0Yscb933wqgjm2vkpBQ6uoMa0NNkC6KkL+1Vyl3lQcMmUOpGjeS0Yml9BLISZMtMlZOdRGfCoJazBqS47sx5xZhwlAwu/TqDBBOYYcaw4YRjJOdVko6w304uXkhrnjK/6RL+JNcb53bOCRKC4+x0DY8DH5GhbCR9VkXRfiJWzVDcIoM2bMxpVQCfSES7DBpLTIIUA== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(366004)(136003)(39860400002)(396003)(376002)(346002)(451199021)(66556008)(4326008)(66946007)(41300700001)(66476007)(316002)(8936002)(8676002)(2906002)(31686004)(5660300002)(6486002)(6666004)(478600001)(82960400001)(6506007)(6512007)(26005)(53546011)(2616005)(36756003)(83380400001)(186003)(38100700002)(86362001)(31696002)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?VDdWRW1oc2w4aXJFallFWVE1VFBUWXB5RjVqVjQ3VEk1RzY0SmZnaUx6akNJ?= =?utf-8?B?STN0U1ZqY0FpSmd5LytoQTI0eEFYQ3VqV0xBTUY4cnAxc1Y1L01CYTc2TmZH?= =?utf-8?B?cXlhMnYrbDVxb0FNMkNUcWVoQ2lPcm0veENZR0dpTW1lZGV4RVloU2VmTUpk?= =?utf-8?B?WjFYWGFoTGd2OEtpZVhhb1oxWDVld2RoWlZzczM0T2dYRFZqMW9HQWxLYWM4?= =?utf-8?B?SHVHNWJtUWU1TU5qYnFpb2h0bThpWWVHbDhQT2xGMm4rMmdibHpxa29GdzBP?= =?utf-8?B?TlM2b3lTeURYK0pjZFY0dUpYWndmMXdGbGZtbFZhSGxWUnJCVi8wZlFQVy9B?= =?utf-8?B?VW9qL2FRdEZ1TDMzdFZ2bS8ySnlVakp6V3Z4Y2ljaWorZC9XZG5hUE01UEZa?= =?utf-8?B?a3NnNHIvZjRXSExJQzJYQkE4NjExcWdQYUh6YXV6RU9zY0xaSEFRUXpjdVZ2?= =?utf-8?B?MWl2ZzVGdytna2VZdEI5YUNDQk9aTHdIaHU5aXNURzBRdm9tUFhMV3hOaGUy?= =?utf-8?B?OHk4bytsWnRZUmdQcVZXUjhRQ2R4dVNleVNuUW5aYVFzOU53U0hZWHAxb1U0?= =?utf-8?B?T0kwWmFQMUtYejMvajVBdHQ4bUwxNDZ6TXI4NWtnMEVndzV3dk1sck5yTnlo?= =?utf-8?B?eklKaFhlSHc4cE0vRGpHNnFVZ3VUR2pOQzJZajRadkZqRVM2OFJVbVAzdEhj?= =?utf-8?B?ekhheFdlUG45VnVKbmxjT0ZXaW40cEhEZ3VSYmxUcFZsODBKY1dnRTZJa2Zu?= =?utf-8?B?ZzNONE1zemNyWlc5Z0t0bEhCVFhsMzRjd2ttYk53N1pMQ245bHE5QjRKaTNR?= =?utf-8?B?cEw4Z2Ezd0xLams4WEwwY0VOT3ozeEkvVmRtV1Q3UDI4cllVMWdkYm92Q3BE?= =?utf-8?B?YkY4clRHMXVGdSt3aFEyOVBDcjlpTWpsR290b0EwVzdlVFVwdUI4RjVlUlJt?= =?utf-8?B?RHRWZHpmNmJvbWhFU3p3akFOS3ZRb0FINjg4WDVtV2luRmptWkQzWTRDajA0?= =?utf-8?B?V1lRdjYwQ3dXUTNGL1ZqU2p5RUN2ZUVKaElCalAySXdSUCthdWNPTmx2Wjdr?= =?utf-8?B?SlBoY0h3Q3Nub1BqQ1hRWWtRME1iaURVNitodDVJb3paSTVHT3ZlRlBpMnlU?= =?utf-8?B?eUxLN3dEQ1puOGlBWU1IL2Z2TWUyeHl0TVcrVVBMRG10UmVNeURqSFR1M2ZM?= =?utf-8?B?cHBMeVoyNUNsM0VBNXRFb1Z6amFWNlJwekRIMnZlUlBBS2tqci84ZFNQRG5w?= =?utf-8?B?QnRSdVF5a3NzUXFEU3hFQzh5dEs4dVNEVStJR1JuWVFIRVFWT3hCVUhuMTgr?= =?utf-8?B?OGJ2WVUzODd2RU5xOU92YS92MW5KblV0cG9tNnZGeWdBenQwMlFpOUNkRHdn?= =?utf-8?B?eEpXakhJUHNDS0JRMi80aHJuWVljZFgxZjRXS2ZlbE53NERienZOa00xd3RI?= =?utf-8?B?VlhrRE9DZUVJTnJsM1g5eFZsWjZYc2R2SzdvbTdXeWRxdXM1VnpRYnpJN1dv?= =?utf-8?B?cjVHNUtaK1llMUVtU1FuajVuZkhTa0Y2RVdkRG1mK1JDSnRJekdtbWNRRXdq?= =?utf-8?B?ZDZaTThxR1hIc2ZIMjRjd1dzeWFJM0NKaEpxTCtYdTlPTnVlRkMvZi91aFg2?= =?utf-8?B?M1BMMjRrTExBc2V5ZWNtamlsT3pSYWVobWNpdmI5WXhxOGtKOHBFVXRzV2pY?= =?utf-8?B?d2cxNndMemplSmlDWUJRc0ZHUGE3Tk1MVmVobjllZ0RHZVVienVIYzFuNFJ1?= =?utf-8?B?THZNV1hDSHMvOTBGWG02Yi9KQ3NsUW1yeGozeTJkVFliS3cyTVRKTDFGWjlT?= =?utf-8?B?bDIrZjlkNU1oSm9ITENtZXVTZWVzL3RMK3FuQmh4dDNqaGwwTGZxUEI4Tzc2?= =?utf-8?B?SERzdjM5VDRsK01MeHZVTlBLYmdnK1d4Y3dNeVdBZ1pOV1pweW14WUhTVjEr?= =?utf-8?B?dll4bTJLYUIvTi9temNmREloQmdZNGtPeTJ0c0M2a1RwelZHN1BlQUNoUDB5?= =?utf-8?B?ckVKUm1iMEhsbmRTWkJ4YmhNNGtlM0FYbkduZ05FOTE5ZHA1Rjh4V3JEOUZn?= =?utf-8?B?K0hJNSs1SlhGQm41dzd5dFVDS2NMdGl3WDdQOWcrd2hmZlphTlRLeG9TUFgv?= =?utf-8?B?OW1tanNiMkI3VlY1S1FjVHFiMituRXN5b3d5TDJzbWlmakhIOWpHUS9hcHE2?= =?utf-8?B?M3c9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: yDeDA7DxnEzOEwViiFUuAvvfDgXqZWZreKm4hEMAD0V5LllgfKypm8wqTTP9l0Fvdgrev7clQ33abwlZRnY6K1JD3excMpC/q//LoKB36VBhGjcatJRcnWglj8oM5opouKAkUfAr6LdQzwwfh4z/NDXyGyL6YkMQonpuHVKlTWrKEqzwJiH/DGGEQKmdRLCq1MmsvSvJub1D+5N8NjELBaMTbZbVeyRulifEQ8lBf6zQT3uAgSAZDbpwYaSMR9eIFCcf6qUlRs853qw6P7BFqNX6VvtCNTisL9B27jugBkf1mbjv53Rg0fQVJYAWRIJuyyDP0zfQP4OAk++YgMDdeSJ9Q6Bn7xtzpIJyXp3lSUWTabSnbEY76XAAYdVKG7STXOTLF2O0F+FBzUqDoxSdYt4W9E0jqwgGI2nutnItPF3a7R19psDer/Sa1fZbYwLFxuORG37bbaA0JI+a5o1ausL0kNx7IC4kAsif6l+2X/i2aNwozqD53j7D3QeZwziyBFsCsdBZo5fu057SEA+3qWdNnIZf6XQXNaCuWIUgog5g3HE7oKsg+yXauETeQukDWcwoUV/BybYFlJOYBh5glPVkE1ZYvX5Ppb4NMvR432gLgcMQ+T00QrJviCfSP//05yWZzWwPdImK0MnKhzx2aiGYthJUCDUBuz7KmtwPZnIAO+7r5hEPZtdEL+am0dNTvQ9zMkji7GeTVWjwUdjwe5ztjtoArRwthRtXUKu1uJmprhGXfuNnozjGtWJRQOcOH/LMyZt0mwz1/OPT6nd5q8wOPs2mBVVI56+wkBsKh62x/xmF65cAzXerNVPlllPx9NxKUOVTJEq0lG6idqcVMA== X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: f71c635b-b22d-4265-0085-08db7280887c X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Jun 2023 17:54:17.6998 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: KEBdyIKb1ZvTM2l0RgUj8WL7T7h0YZwsF74D0P9S3AWSLbIXoXr4nMXd0KZm/6JxyrkcK/WjlcArIjqsZuILV4cKVKzC3j0kvotGk6g738Y= X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ2PR03MB7138 On 21/06/2023 5:59 pm, Shawn Anastasio wrote: > xen/arch/ppc/Kconfig.debug | 5 + > xen/arch/ppc/Makefile | 3 + > xen/arch/ppc/boot-of.c | 116 +++++++++++++ > xen/arch/ppc/configs/ppc64_defconfig | 1 + > xen/arch/ppc/early_printk.c | 28 +++ > xen/arch/ppc/include/asm/boot.h | 24 +++ > xen/arch/ppc/include/asm/bug.h | 6 + > xen/arch/ppc/include/asm/byteorder.h | 37 ++++ > xen/arch/ppc/include/asm/cache.h | 6 + > xen/arch/ppc/include/asm/early_printk.h | 15 ++ > xen/arch/ppc/include/asm/msr.h | 67 ++++++++ > xen/arch/ppc/include/asm/processor.h | 207 ++++++++++++++++++++++ > xen/arch/ppc/include/asm/reg_defs.h | 218 ++++++++++++++++++++++++ > xen/arch/ppc/include/asm/string.h | 6 + > xen/arch/ppc/include/asm/types.h | 35 ++++ > xen/arch/ppc/ppc64/Makefile | 1 + > xen/arch/ppc/ppc64/asm-offsets.c | 55 ++++++ > xen/arch/ppc/ppc64/head.S | 48 +++--- > xen/arch/ppc/ppc64/of-call.S | 85 +++++++++ > xen/arch/ppc/setup.c | 31 ++++ > 20 files changed, 972 insertions(+), 22 deletions(-) > create mode 100644 xen/arch/ppc/boot-of.c > create mode 100644 xen/arch/ppc/early_printk.c > create mode 100644 xen/arch/ppc/include/asm/boot.h > create mode 100644 xen/arch/ppc/include/asm/bug.h > create mode 100644 xen/arch/ppc/include/asm/byteorder.h > create mode 100644 xen/arch/ppc/include/asm/cache.h > create mode 100644 xen/arch/ppc/include/asm/early_printk.h > create mode 100644 xen/arch/ppc/include/asm/msr.h > create mode 100644 xen/arch/ppc/include/asm/processor.h > create mode 100644 xen/arch/ppc/include/asm/reg_defs.h > create mode 100644 xen/arch/ppc/include/asm/string.h > create mode 100644 xen/arch/ppc/include/asm/types.h > create mode 100644 xen/arch/ppc/ppc64/of-call.S > create mode 100644 xen/arch/ppc/setup.c This is a surprising amount of infrastructure.  I'm guessing it's a consequence of needing byteorder ? There's a series still out deleting swathes of junk in byteorder.  I guess I need to kick that thread again, but it mostly boils down to using __builtin_bswap$N() (and on x86, reimplementing them on old enough compilers).  Presumably all versions of GCC (and eventually Clang) we care to support with ppc64 understand this builtin ? I've noticed a couple of other things.  asm/types.h repeats some antipatterns which we're trying to delete for MISRA reasons in other architectures.  I was already planning to fix that up xen-wide, and I guess now is the better time to do so. Elsewhere, you've got a number of __inline__'s.  We think those are all vestigial now, so should be switched to using a plain inline. Also, there are a bunch of UL() or ULL() macros which encoding a difference between asm and C.  In Xen, we use _AC() for that, which you can find in . Similarly, there are some functions which ought to be __init, so it would be good to get them correct from the start. Maybe as an intermediate step, just get the infinite loop moved from asm up into C?  That gets the stack setup, and various of the asm helpers, without all the rest of the C required to get early_printk() to work. Something we've been trying very hard to do generally is declutter processor.h, and on x86, we've got asm-defns.h as a more appropriate place to have the stuff which is expected to be common to all asm code, and never encountered in C. A couple of questions before I dive further in. Given: #define r0  0 do the assemblers really not understand register names?  That seems mad. Also, given the transformations to call into OpenFirmware, presumably this limits Xen to running below the 4G boundary and on identity mappings? ~Andrew From xen-devel-bounces@lists.xenproject.org Wed Jun 21 17:55:39 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 17:55:39 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553070.863418 (Exim 4.92) (envelope-from ) id 1qC23F-0005kC-NH; Wed, 21 Jun 2023 17:55:29 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553070.863418; Wed, 21 Jun 2023 17:55:29 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC23F-0005k3-KX; Wed, 21 Jun 2023 17:55:29 +0000 Received: by outflank-mailman (input) for mailman id 553070; Wed, 21 Jun 2023 17:55:28 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC23E-0005jn-Bj; Wed, 21 Jun 2023 17:55:28 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC23E-0006jy-78; Wed, 21 Jun 2023 17:55:28 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC23D-0001rE-OQ; Wed, 21 Jun 2023 17:55:27 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qC23D-0001WI-Nx; Wed, 21 Jun 2023 17:55:27 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=pLMwO27WymAxCfQQWMsfhoAyJQ3XZK44ZTKzV29/9yg=; b=0lx+dkK7aYFp0zrdIp4f5pNdHu euZDjA/bGWGfCafxkuaEPx1MdHkXDSYPQQBWWFxm1TkEXnp+Tk4NyLcc01tKuukKif70fUlVnIySm 2XvFNUZ9zJ7Jnq0V5pvJ72V5NjhC6D1oBY85aKMbHNtAI5IK6NWVv+0ryivhsjTSz76Q=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [qemu-mainline test] 181534: regressions - trouble: blocked/broken/fail/pass X-Osstest-Failures: qemu-mainline:build-armhf::broken:regression qemu-mainline:build-armhf:host-install(4):broken:regression qemu-mainline:build-amd64:xen-build:fail:regression qemu-mainline:build-amd64-xsm:xen-build:fail:regression qemu-mainline:build-i386:xen-build:fail:regression qemu-mainline:build-i386-xsm:xen-build:fail:regression qemu-mainline:build-arm64:xen-build:fail:regression qemu-mainline:build-arm64-xsm:xen-build:fail:regression qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-i386:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:build-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:build-arm64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:build-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:build-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pygrub:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking X-Osstest-Versions-This: qemuu=c5ffd16ba4c8fd3601742cc9d2b3cff03995dd5d X-Osstest-Versions-That: qemuu=6972ef1440a9d685482d78672620a7482f2bd09a From: osstest service owner Date: Wed, 21 Jun 2023 17:55:27 +0000 flight 181534 qemu-mainline real [real] http://logs.test-lab.xenproject.org/osstest/logs/181534/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-armhf broken build-armhf 4 host-install(4) broken REGR. vs. 180691 build-amd64 6 xen-build fail REGR. vs. 180691 build-amd64-xsm 6 xen-build fail REGR. vs. 180691 build-i386 6 xen-build fail REGR. vs. 180691 build-i386-xsm 6 xen-build fail REGR. vs. 180691 build-arm64 6 xen-build fail REGR. vs. 180691 build-arm64-xsm 6 xen-build fail REGR. vs. 180691 Tests which did not succeed, but are not blocking: test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-xl-xsm 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-raw 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-xsm 1 build-check(1) blocked n/a test-arm64-arm64-xl 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit1 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit2 1 build-check(1) blocked n/a test-arm64-arm64-xl-thunderx 1 build-check(1) blocked n/a test-arm64-arm64-xl-vhd 1 build-check(1) blocked n/a test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a test-armhf-armhf-libvirt 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-qcow2 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-raw 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a test-armhf-armhf-xl-arndale 1 build-check(1) blocked n/a test-armhf-armhf-xl-multivcpu 1 build-check(1) blocked n/a test-armhf-armhf-xl-rtds 1 build-check(1) blocked n/a test-armhf-armhf-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-amd 1 build-check(1) blocked n/a test-amd64-i386-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-raw 1 build-check(1) blocked n/a test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-i386 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-amd64 1 build-check(1) blocked n/a test-amd64-coresched-i386-xl 1 build-check(1) blocked n/a test-amd64-coresched-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-xsm 1 build-check(1) blocked n/a build-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-shadow 1 build-check(1) blocked n/a test-amd64-amd64-xl-rtds 1 build-check(1) blocked n/a build-arm64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a build-armhf-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a build-i386-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-amd 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-pair 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-qcow2 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-vhd 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvshim 1 build-check(1) blocked n/a test-amd64-amd64-pair 1 build-check(1) blocked n/a test-amd64-amd64-pygrub 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-intel 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd11-amd64 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd12-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-multivcpu 1 build-check(1) blocked n/a test-amd64-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit1 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit1 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-intel 1 build-check(1) blocked n/a test-amd64-i386-xl 1 build-check(1) blocked n/a test-amd64-i386-xl-pvshim 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a version targeted for testing: qemuu c5ffd16ba4c8fd3601742cc9d2b3cff03995dd5d baseline version: qemuu 6972ef1440a9d685482d78672620a7482f2bd09a Last test of basis 180691 2023-05-17 10:45:22 Z 35 days Failing since 180699 2023-05-18 07:21:24 Z 34 days 122 attempts Testing same since 181534 2023-06-21 09:10:23 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Afonso Bordado Akihiko Odaki Akihiro Suda Alex Bennée Alex Williamson Alexander Bulekov Alexander Graf Alexander Ivanov Alistair Francis Anastasia Belova Andrea Bolognani Andreas Schwab Andrew Jeffery Ani Sinha Ani Sinha Anthony PERARD Anton Johansson Antonio Caggiano BALATON Zoltan Bastian Koppelmann Bernhard Beschow Bin Meng Brian Cain Brice Goglin Camilla Conte Carlos Santos Christian Schoenebeck Chuck Zmudzinski Cindy Lu Clément Chigot Corey Minyard Cornelia Huck Cédric Le Goater Cédric Le Goater Daniel Henrique Barboza Daniel Henrique Barboza Daniel P. Berrangé Daniil Kovalev David Hildenbrand David Woodhouse Emanuele Giuseppe Esposito Enze Li Eric Auger Eric Blake Eric DeVolder Erico Nunes Eugenio Pérez Fabiano Rosas Fan Ni Fiona Ebner Francesco Cagnin Francisco Iglesias Frederic Barrat Gavin Shan Gregory Price Gregory Price Guenter Roeck Hanna Czenczek Hao Zeng Hawkins Jiawei Helge Deller Himanshu Chauhan Igor Mammedov Ilya Leoshkevich Ira Weiny Ivan Klokov Jagannathan Raman Jason Wang Jean-Louis Dupond Jean-Philippe Brucker Jiajie Chen Jiaxun Yang Joao Martins John Snow Jonathan Cameron Juan Quintela Junqiang Wang Kevin Wolf Laurent Vivier Lei Yang Leonardo Bras Maksim Davydov Marc-André Lureau Marcin Juszkiewicz Marco Liebel Mark Cave-Ayland Markus Armbruster Martin Kaiser Matheus Tavares Bernardino Mattias Nissler Mauro Matteo Cascella Max Fritz Mayuresh Chitale Michael S. Tsirkin Michael Tokarev Michal Privoznik Milan Zamazal Mostafa Saleh Nicholas Piggin Nicolas Saenz Julienne Niek Linnenbank Niklas Cassel Ninad Palsule Palmer Dabbelt Paolo Bonzini Patrick Venture Peter Maydell Peter Xu Philippe Mathieu-Daudé Philippe Mathieu-Daudé qianfan Zhao Raghu H Rene Engel Richard Henderson Richard Purdie Ricky Zhou Ryan Wendland Sebastian Ott Sergey Kambalin Sergio Lopez Sid Manning Song Gao Stefan Hajnoczi Stefano Garzarella Stefano Stabellini Stefano Stabellini Steve Sistare Sunil V L Taylor Simpson Thomas Huth Thomas Weißschuh Tianrui Zhao timothee.cocault@gmail.com Timothée Cocault Tommy Wu Vikram Garhwal Viktor Prutyanov Vitaly Cheptsov Vivek Kasireddy Vladimir Sementsov-Ogievskiy Volker Rümelin Weiwei Li Xiao Wang Xinyu Li Yin Wang Zeng Hao Zhenyu Zhang Zhenzhong Duan Zhuojia Shen jobs: build-amd64-xsm fail build-arm64-xsm fail build-i386-xsm fail build-amd64 fail build-arm64 fail build-armhf broken build-i386 fail build-amd64-libvirt blocked build-arm64-libvirt blocked build-armhf-libvirt blocked build-i386-libvirt blocked build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl blocked test-amd64-coresched-amd64-xl blocked test-arm64-arm64-xl blocked test-armhf-armhf-xl blocked test-amd64-i386-xl blocked test-amd64-coresched-i386-xl blocked test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-i386-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-amd64-libvirt-xsm blocked test-arm64-arm64-libvirt-xsm blocked test-amd64-i386-libvirt-xsm blocked test-amd64-amd64-xl-xsm blocked test-arm64-arm64-xl-xsm blocked test-amd64-i386-xl-xsm blocked test-amd64-amd64-qemuu-nested-amd blocked test-amd64-amd64-xl-pvhv2-amd blocked test-amd64-i386-qemuu-rhel6hvm-amd blocked test-amd64-amd64-dom0pvh-xl-amd blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-freebsd10-amd64 blocked test-amd64-amd64-qemuu-freebsd11-amd64 blocked test-amd64-amd64-qemuu-freebsd12-amd64 blocked test-amd64-amd64-xl-qemuu-ovmf-amd64 blocked test-amd64-i386-xl-qemuu-ovmf-amd64 blocked test-amd64-amd64-xl-qemuu-win7-amd64 blocked test-amd64-i386-xl-qemuu-win7-amd64 blocked test-amd64-amd64-xl-qemuu-ws16-amd64 blocked test-amd64-i386-xl-qemuu-ws16-amd64 blocked test-armhf-armhf-xl-arndale blocked test-amd64-amd64-xl-credit1 blocked test-arm64-arm64-xl-credit1 blocked test-armhf-armhf-xl-credit1 blocked test-amd64-amd64-xl-credit2 blocked test-arm64-arm64-xl-credit2 blocked test-armhf-armhf-xl-credit2 blocked test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-freebsd10-i386 blocked test-amd64-amd64-qemuu-nested-intel blocked test-amd64-amd64-xl-pvhv2-intel blocked test-amd64-i386-qemuu-rhel6hvm-intel blocked test-amd64-amd64-dom0pvh-xl-intel blocked test-amd64-amd64-libvirt blocked test-armhf-armhf-libvirt blocked test-amd64-i386-libvirt blocked test-amd64-amd64-xl-multivcpu blocked test-armhf-armhf-xl-multivcpu blocked test-amd64-amd64-pair blocked test-amd64-i386-pair blocked test-amd64-amd64-libvirt-pair blocked test-amd64-i386-libvirt-pair blocked test-amd64-amd64-xl-pvshim blocked test-amd64-i386-xl-pvshim blocked test-amd64-amd64-pygrub blocked test-armhf-armhf-libvirt-qcow2 blocked test-amd64-amd64-xl-qcow2 blocked test-arm64-arm64-libvirt-raw blocked test-armhf-armhf-libvirt-raw blocked test-amd64-i386-libvirt-raw blocked test-amd64-amd64-xl-rtds blocked test-armhf-armhf-xl-rtds blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-amd64-xl-shadow blocked test-amd64-i386-xl-shadow blocked test-arm64-arm64-xl-thunderx blocked test-amd64-amd64-libvirt-vhd blocked test-arm64-arm64-xl-vhd blocked test-armhf-armhf-xl-vhd blocked test-amd64-i386-xl-vhd blocked ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary broken-job build-armhf broken broken-step build-armhf host-install(4) Not pushing. (No revision log; it would be 20227 lines long.) From xen-devel-bounces@lists.xenproject.org Wed Jun 21 17:58:42 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 17:58:42 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553079.863428 (Exim 4.92) (envelope-from ) id 1qC26G-0006Pn-4m; Wed, 21 Jun 2023 17:58:36 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553079.863428; Wed, 21 Jun 2023 17:58:36 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC26G-0006Pg-1x; Wed, 21 Jun 2023 17:58:36 +0000 Received: by outflank-mailman (input) for mailman id 553079; Wed, 21 Jun 2023 17:58:35 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC26E-0006Pa-Pa for xen-devel@lists.xenproject.org; Wed, 21 Jun 2023 17:58:34 +0000 Received: from mx0a-0039f301.pphosted.com (mx0a-0039f301.pphosted.com [148.163.133.242]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 3ac4d7ca-105d-11ee-8611-37d641c3527e; Wed, 21 Jun 2023 19:58:31 +0200 (CEST) Received: from pps.filterd (m0174679.ppops.net [127.0.0.1]) by mx0a-0039f301.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 35LH2m6i003245; Wed, 21 Jun 2023 17:58:27 GMT Received: from eur04-db3-obe.outbound.protection.outlook.com (mail-db3eur04lp2054.outbound.protection.outlook.com [104.47.12.54]) by mx0a-0039f301.pphosted.com (PPS) with ESMTPS id 3rby2xab6g-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 21 Jun 2023 17:58:26 +0000 Received: from DB8PR03MB6108.eurprd03.prod.outlook.com (2603:10a6:10:ed::15) by AM9PR03MB6690.eurprd03.prod.outlook.com (2603:10a6:20b:2dd::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.23; Wed, 21 Jun 2023 17:58:21 +0000 Received: from DB8PR03MB6108.eurprd03.prod.outlook.com ([fe80::11f9:615a:4d9a:a5d2]) by DB8PR03MB6108.eurprd03.prod.outlook.com ([fe80::11f9:615a:4d9a:a5d2%6]) with mapi id 15.20.6521.023; Wed, 21 Jun 2023 17:58:21 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 3ac4d7ca-105d-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=eRUkiU/MbKXYhsENFn98NKUpYNBxZxF+dzKgd9wS0iyp5VRwzUGOwfw9szAJX4Z0a+Dm6OjGrvm5BNq2eElbwO0wJdpwL8xBhHOWKc2OgDrOOQXOG4MlwGLyNFlfIrb/Xgd1jKVTPC5oGx3zWwIk30CJiF7LvGbumrhSgwN/OcNSBa7CpEmiDYKV56iTHecuoxj3FewvIKRK9pomP8QxTnlE7SI2X2annsqsmD8DkRkdsL8qitEAnNLCxyhJxDn0xGD6CGkTyJ5y2VxN74+ZqotaYKQugBUOx+fJMOmQU20iJgBbuPI3LIhQ4Vts2ObChbGa9CQrxGrsUX4FxD0XOg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=ksdhZVX1lhsy6HEKQH1gkC3rfFD5Y/h4oL0FgzSDIPU=; b=EDJbp5k46cUmm/AZncb0pp0UiYgURd7nNeyc1R68OeoRVuYa9oQddnxgaBvNqwgvbK17QO+/F3+aWsgQA81MMxAFSqipcp6728AbPKh9KC9XnVrB1X9K8CKQkHj0IiNAvssesas8hlbq2MUri5ZmfrFabNavDu0xMxjtWOhOzsxTNEXbgjahpdWOwyoVgTehEKFGvoWFDqbm89+8eB9YL2LrIAZBruJeDzhcFA6oSDv89hJNpQ//tOL59naljlVkvg/YPFnGb5vkQP3fuQj3k5+OreP3f1gWyKvs7rv6tabhyIBt7ZjgoTwrdMD9EJsLM+Ln6dlErKNyofzoS5sEKw== 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 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=epam.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=ksdhZVX1lhsy6HEKQH1gkC3rfFD5Y/h4oL0FgzSDIPU=; b=HTqGmMMgDLqL+cg9LNxX3m8Oxk+3PerdC3nPHJ8kcF6C0l0CqgeoN7pNR71BGKjNcRQsdN3u4aWmJ7+7zhi5vmBAmzJhdXfsB1fAI6UIiKmjeW2CDDha4nOQq5Uwi0cizbgNbBg5OzNWopOW5DN0xYDh2BMLboqo1Af4OFkeHXHBvZd5wfdbEh0SZ91qXGwOyy66maSOepbwAZdMmj1OEJ5UoIPjd7O/bOq0F401SM9bTO3wqb4tjsLb4OU6iEHE3BMKqm5iuFyw0zFV0sXQ9wLusbMH9CEhq6IEUAIhQqyJWMA8k4Tv09ti2dg559Hni1tWfgkt+6d6nQl0eIISAQ== From: Oleksandr Tyshchenko To: Petr Pavlu CC: "xen-devel@lists.xenproject.org" , "linux-kernel@vger.kernel.org" , "jgross@suse.com" , "sstabellini@kernel.org" Subject: Re: [PATCH 2/2] xen/virtio: Avoid use of the dom0 backend in dom0 Thread-Topic: [PATCH 2/2] xen/virtio: Avoid use of the dom0 backend in dom0 Thread-Index: AQHZpEL/jQILjif4TEa2QZqecjVVUK+Vi2cA Date: Wed, 21 Jun 2023 17:58:20 +0000 Message-ID: <15e31609-6c45-7372-76ee-0adf7a64fe88@epam.com> References: <20230621131214.9398-1-petr.pavlu@suse.com> <20230621131214.9398-3-petr.pavlu@suse.com> In-Reply-To: <20230621131214.9398-3-petr.pavlu@suse.com> Accept-Language: en-US, ru-RU Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ms-publictraffictype: Email x-ms-traffictypediagnostic: DB8PR03MB6108:EE_|AM9PR03MB6690:EE_ x-ms-office365-filtering-correlation-id: d5e2ead4-a9eb-4a12-152f-08db728119aa x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: xar95FYntu0xD6rX1wdZTWbHF8Lrd/VCmg8FqZNH64JvbrNWSnmGb2RwvUOCowo7IXD4LNMrlnOywjAzqxoXEz/Qaz3ET77peRvWzGIQqrWprI3gU3h9y6PvX6HJlGoVYdutVOkEr/YkyTTWHECP+l6WUQjd1Fk39KZSJo0ZdpqdrvfNVe9sNxkk1Pb2pl6qVxELHDPOGJGc6bIsLG+fGVASnVLT2PccaTJXcBs26E9C6ScR7qx8vM6j68R9NosUyn4gHBbWpPuW8e+GZIXFUvrtsNM7CCQWFOm1qfWXjYOPAoqvhciAs7/wYaMQFSOtfW9xMOnEoDElA3XYnF29OSDlkL2jwvHRvr7/UiCbYlnzAIWLyh5o3V8JdThcWpnv2ymYdUZKAF1rkLgqarOqTNEbeiZ47rGaRhTrDL4WSqd57+Q4ao3RlPoguPHn+9z5JE8/a4qxmvhKI9leYDb9gHeewD501qGmDrLcXtw5lZ+6VZb1qpKkKueKyCq8pPBv0wWZfq8xyso2xsY4bk0mGtVPt1qcsTRV8y7HJOKsZuEnamcdfnG0LvcS55v09StwEswLGubGkpLpFJNFhXvPGP/QacHL6Dj6eNRJzcn0UhlXcVfrwMJuo2aMWvaj4WOhRZdbOYVuJgQwiIRQA0dVTA== x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DB8PR03MB6108.eurprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(136003)(376002)(39860400002)(346002)(366004)(396003)(451199021)(31686004)(2906002)(71200400001)(8676002)(41300700001)(5660300002)(8936002)(316002)(66446008)(64756008)(6916009)(66476007)(66556008)(66946007)(76116006)(91956017)(54906003)(6486002)(478600001)(38070700005)(86362001)(38100700002)(53546011)(122000001)(36756003)(4326008)(2616005)(186003)(6512007)(31696002)(83380400001)(6506007)(26005)(45980500001);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?Z0tqU0I3UUVDZlFOcTF4aEFmdU5UUUoxMmZmNml0K1FyUmhQSllkdzVtM1h1?= =?utf-8?B?alo5d3JDTkVRN0FONHNkdFZmMTM4Sll2WWJFdVFqMS9kV2o5Mk1QTFNFNWZv?= =?utf-8?B?b1Axem5qa1NJYVN3L244NnRQZzVxYm5yY3hCb1orQTMrdytvRGtuWm10QmpZ?= =?utf-8?B?VWdLbHd4bEpyY09ETjh6Q1ZzN3JoMmVZR21MelVBVTcxOUlycDhNamFMaWhX?= =?utf-8?B?aDBjZnByZm5nMG1tQ3dpK1B1SnFSUldiZStmdGFqOWFYejZ6WERYMFpSU3FT?= =?utf-8?B?SThBblBseXRBOHpnNDRnL0c2c1ZCR01jWXBOeTdjYnNxTXZjdklDaU9xY0Ri?= =?utf-8?B?RzhZSzU4UWZITnprMWRqdFUySXVXd1dDY0NES1dkS2NpcjR2L1Q2NWUzOHp0?= =?utf-8?B?cDFoYjJsNGg3ME5JakhCNnI4Mk1ibHBaMWU3SEQyMnVVWmIrOVJDc3FqL1BJ?= =?utf-8?B?Y1Q0aVk0cXRUMUdnSjIzc1pZVXloa28vSnN3eEQ1YUpaank3aVNWL3IxaUhr?= =?utf-8?B?cS9DK1dKWkxQRU9KWW5UeVZXLzdINk9xZkxWNll5OGUvUVhWM0lyNVU0U21j?= =?utf-8?B?TXg5YlF2Z0FhQVRpWVc3anNPbjJkYWlmQzkzT1ZpbVowWDNtQ1MzMFpxWHVR?= =?utf-8?B?L2RTNEhCZXMwUVJDWTN2YVM1S2hwRStZZWdQa2RwTk8yZmlpcFBFL0NEMHNJ?= =?utf-8?B?SFZNZ29IMlorM1k3OHl6dStaWXVqRm9wL1JaNExPVDllYUcvUmVvZDRKWnVu?= =?utf-8?B?MTRGVGZQamx0R2ZsWjBheDh4aExTQ0hvclpEaVcwWFZSTHQ3bVpFZGZGNUNz?= =?utf-8?B?ZjByUlFwM2NqZ2kyRXgycjRTQ0xnOXo1Y0lpVVBBNlFucHlnRlFCYmxhK2I2?= =?utf-8?B?OHlud0J0elRGc1RhR0dXUGUxbWtJQmRscDVZWTBMMjVUZjRPbWFxczRWQXhP?= =?utf-8?B?c01PMlpjTnMrbGQ0dDkzOFVOdldSL2JBM0FuaFVWajVhTXN4QmNtRHhMTjkw?= =?utf-8?B?SVVuMjB1c2hDTzZoalQxNENsSEJZazZ1bDNlZ2tGMjhuUmFEYmRFNzE5UW5t?= =?utf-8?B?bnJwakE4T096THFkWHhLNnFZa290T0RMV1pzQ3pXRmdJRnJpd0crc0VRMzRG?= =?utf-8?B?c3g5ZzQ4bUpwbHcveWNiSVAwdEZaY0lwN2dZU1BTTzB2SzNVUjl0ZTI2REZn?= =?utf-8?B?MFFOQ2ErazMyLzhublQ3RVdWc3Q5YjhaaUVPMWFrQnYrSVZWUkFPaFhXdnFx?= =?utf-8?B?c05XdmpqeHFzU0FYV2RoQ2ZNRk9kRFJSTG5ETk9qcGdQWkQycnVMRlpQUE5q?= =?utf-8?B?c2ovNnNiSkM2OVpGWVQ4U21zRStaZUF5ZU5YR3lMNjlrTEhiL2tBcGFJakVO?= =?utf-8?B?MU5EeUtKUjR6ZjJyUW5HWVpHWFBMK1BUZEwwTEkvRk1DeGdFQVh3Qk4xR0hU?= =?utf-8?B?emhnWnJQWWVtV2Evc3EvOXVhZWl4WDJlWTlsMy9iMm1NYW9BVmlNTlliTENo?= =?utf-8?B?MmNzbzlZaFJYNTdNNkUxZkhhZ2szZmt5ZTMvWlhaS1d4U1pkMkdWVVhkSkpT?= =?utf-8?B?Skw3dFlFbGUweXdBbDgyei81WGxhTi9zVTZTNmhUTFVJbEVFRXhRWlNPWkRz?= =?utf-8?B?T2JoUzN1YmtLWVh0VzhJSVZqWmpQaWYrbzJTbUx4TytXTXVaaW1WWEdXN08y?= =?utf-8?B?OUpJN3VQa2RPZmlIeWlPajcvRkdTMUVkT3hiT1BzcS9kMkUxMnFTTzluM05Z?= =?utf-8?B?S3YrVzBmSXJyQVF2UWJWTmhqWXhTQ3VyaXhoNzlUdjVuMFBST3lCVTBhWm5M?= =?utf-8?B?N1AzVE1UN2lOWTltSEFmMFAyeUMxc3dPM04vbEt0cDdnaHUzVC9ycEk5WmRn?= =?utf-8?B?S2NRN1JOdXo1VTdYWjJrVnhjdU5tNWpKbG5SMnIzcXJOMG1OQUYvYndMUmJQ?= =?utf-8?B?ekRqZVlHSk9ReEdQTHg1Nzh6VERJMm9sdkxBVHB1TnZJajE1VTAwSkRKcy9P?= =?utf-8?B?djJMUU1Pd2FEMmZFNHlDN0ppZDRBZWY2Q1FoaXMvMk9QcXBJbGFuNC8zRFM2?= =?utf-8?B?aXBWTFJzenpJUTZNZWIrZ1d5d21WL2JmNXRJcjA5aWhDR1U3Q2I5cHA1OVJS?= =?utf-8?B?eE1ZdG9NbmxNRENhNWcxaUlxNDJEWnJZMnIyYXQySG90MlF4ZGprTDMzU205?= =?utf-8?Q?zS7NvQgaLAgshhR2CWQ8PoM=3D?= Content-Type: text/plain; charset="utf-8" Content-ID: <41EAD9BCAFB6C445AF1C093382B077C0@eurprd03.prod.outlook.com> Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: epam.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: DB8PR03MB6108.eurprd03.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: d5e2ead4-a9eb-4a12-152f-08db728119aa X-MS-Exchange-CrossTenant-originalarrivaltime: 21 Jun 2023 17:58:20.9680 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: b41b72d0-4e9f-4c26-8a69-f949f367c91d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: rieMYvWM74IPfJWloHt/pGnpLYUtDXh/GCzHzB+FhsMIrDH3nvIUgrClFSx8H2VOK9r4seRa1NSTjG5t3c8YNUQpoPDLyRjOsCE+hV1EAhc= X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR03MB6690 X-Proofpoint-ORIG-GUID: fOGSM90nZb7_aeiXaYMNW4yZ34Rwghbt X-Proofpoint-GUID: fOGSM90nZb7_aeiXaYMNW4yZ34Rwghbt X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.254,Aquarius:18.0.957,Hydra:6.0.591,FMLib:17.11.176.26 definitions=2023-06-21_10,2023-06-16_01,2023-05-22_02 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 mlxscore=0 spamscore=0 phishscore=0 impostorscore=0 malwarescore=0 clxscore=1015 lowpriorityscore=0 bulkscore=0 mlxlogscore=999 suspectscore=0 adultscore=0 priorityscore=1501 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2305260000 definitions=main-2306210150 DQoNCk9uIDIxLjA2LjIzIDE2OjEyLCBQZXRyIFBhdmx1IHdyb3RlOg0KDQoNCkhlbGxvIFBldHIN Cg0KDQo+IFdoZW4gYXR0ZW1wdGluZyB0byBydW4gWGVuIG9uIGEgUUVNVS9LVk0gdmlydHVhbCBt YWNoaW5lIHdpdGggdmlydGlvDQo+IGRldmljZXMgKGFsbCB4ODZfNjQpLCBkb20wIHRyaWVzIHRv IGVzdGFibGlzaCBhIGdyYW50IGZvciBpdHNlbGYgd2hpY2gNCj4gZXZlbnR1YWxseSByZXN1bHRz IGluIGEgaGFuZyBkdXJpbmcgdGhlIGJvb3QuDQo+IA0KPiBUaGUgYmFja3RyYWNlIGxvb2tzIGFz IGZvbGxvd3MsIHRoZSB3aGlsZSBsb29wIGluIF9fc2VuZF9jb250cm9sX21zZygpDQo+IG1ha2Vz IG5vIHByb2dyZXNzOg0KPiANCj4gICAgIzAgIHZpcnRxdWV1ZV9nZXRfYnVmX2N0eCAoX3ZxPV92 cUBlbnRyeT0weGZmZmY4ODgwMDc0YTg0MDAsIGxlbj1sZW5AZW50cnk9MHhmZmZmYzkwMDAwNDEz Yzk0LCBjdHg9Y3R4QGVudHJ5PTB4MCA8Zml4ZWRfcGVyY3B1X2RhdGE+KSBhdCAuLi9kcml2ZXJz L3ZpcnRpby92aXJ0aW9fcmluZy5jOjIzMjYNCj4gICAgIzEgIDB4ZmZmZmZmZmY4MTcwODZiNyBp biB2aXJ0cXVldWVfZ2V0X2J1ZiAoX3ZxPV92cUBlbnRyeT0weGZmZmY4ODgwMDc0YTg0MDAsIGxl bj1sZW5AZW50cnk9MHhmZmZmYzkwMDAwNDEzYzk0KSBhdCAuLi9kcml2ZXJzL3ZpcnRpby92aXJ0 aW9fcmluZy5jOjIzMzMNCj4gICAgIzIgIDB4ZmZmZmZmZmY4MTc1ZjZiMiBpbiBfX3NlbmRfY29u dHJvbF9tc2cgKHBvcnRkZXY9PG9wdGltaXplZCBvdXQ+LCBwb3J0X2lkPTB4ZmZmZmZmZmYsIGV2 ZW50PTB4MCwgdmFsdWU9MHgxKSBhdCAuLi9kcml2ZXJzL2NoYXIvdmlydGlvX2NvbnNvbGUuYzo1 NjINCj4gICAgIzMgIDB4ZmZmZmZmZmY4MTc1ZjZlZSBpbiBfX3NlbmRfY29udHJvbF9tc2cgKHBv cnRkZXY9PG9wdGltaXplZCBvdXQ+LCBwb3J0X2lkPTxvcHRpbWl6ZWQgb3V0PiwgZXZlbnQ9PG9w dGltaXplZCBvdXQ+LCB2YWx1ZT08b3B0aW1pemVkIG91dD4pIGF0IC4uL2RyaXZlcnMvY2hhci92 aXJ0aW9fY29uc29sZS5jOjU2OQ0KPiAgICAjNCAgMHhmZmZmZmZmZjgxNzYxOGIxIGluIHZpcnRj b25zX3Byb2JlICh2ZGV2PTB4ZmZmZjg4ODAwNTg1ZTgwMCkgYXQgLi4vZHJpdmVycy9jaGFyL3Zp cnRpb19jb25zb2xlLmM6MjA5OA0KPiAgICAjNSAgMHhmZmZmZmZmZjgxNzA3MTE3IGluIHZpcnRp b19kZXZfcHJvYmUgKF9kPTB4ZmZmZjg4ODAwNTg1ZTgxMCkgYXQgLi4vZHJpdmVycy92aXJ0aW8v dmlydGlvLmM6MzA1DQo+ICAgICM2ICAweGZmZmZmZmZmODE5OGUzNDggaW4gY2FsbF9kcml2ZXJf cHJvYmUgKGRydj0weGZmZmZmZmZmODJiZTQwYzAgPHZpcnRpb19jb25zb2xlPiwgZHJ2PTB4ZmZm ZmZmZmY4MmJlNDBjMCA8dmlydGlvX2NvbnNvbGU+LCBkZXY9MHhmZmZmODg4MDA1ODVlODEwKSBh dCAuLi9kcml2ZXJzL2Jhc2UvZGQuYzo1NzkNCj4gICAgIzcgIHJlYWxseV9wcm9iZSAoZGV2PWRl dkBlbnRyeT0weGZmZmY4ODgwMDU4NWU4MTAsIGRydj1kcnZAZW50cnk9MHhmZmZmZmZmZjgyYmU0 MGMwIDx2aXJ0aW9fY29uc29sZT4pIGF0IC4uL2RyaXZlcnMvYmFzZS9kZC5jOjY1OA0KPiAgICAj OCAgMHhmZmZmZmZmZjgxOThlNThmIGluIF9fZHJpdmVyX3Byb2JlX2RldmljZSAoZHJ2PWRydkBl bnRyeT0weGZmZmZmZmZmODJiZTQwYzAgPHZpcnRpb19jb25zb2xlPiwgZGV2PWRldkBlbnRyeT0w eGZmZmY4ODgwMDU4NWU4MTApIGF0IC4uL2RyaXZlcnMvYmFzZS9kZC5jOjgwMA0KPiAgICAjOSAg MHhmZmZmZmZmZjgxOThlNjVhIGluIGRyaXZlcl9wcm9iZV9kZXZpY2UgKGRydj1kcnZAZW50cnk9 MHhmZmZmZmZmZjgyYmU0MGMwIDx2aXJ0aW9fY29uc29sZT4sIGRldj1kZXZAZW50cnk9MHhmZmZm ODg4MDA1ODVlODEwKSBhdCAuLi9kcml2ZXJzL2Jhc2UvZGQuYzo4MzANCj4gICAgIzEwIDB4ZmZm ZmZmZmY4MTk4ZTgzMiBpbiBfX2RyaXZlcl9hdHRhY2ggKGRldj0weGZmZmY4ODgwMDU4NWU4MTAs IGRhdGE9MHhmZmZmZmZmZjgyYmU0MGMwIDx2aXJ0aW9fY29uc29sZT4pIGF0IC4uL2RyaXZlcnMv YmFzZS9kZC5jOjEyMTYNCj4gICAgIzExIDB4ZmZmZmZmZmY4MTk4YmZiMiBpbiBidXNfZm9yX2Vh Y2hfZGV2IChidXM9PG9wdGltaXplZCBvdXQ+LCBzdGFydD1zdGFydEBlbnRyeT0weDAgPGZpeGVk X3BlcmNwdV9kYXRhPiwgZGF0YT1kYXRhQGVudHJ5PTB4ZmZmZmZmZmY4MmJlNDBjMCA8dmlydGlv X2NvbnNvbGU+LA0KPiAgICAgICAgZm49Zm5AZW50cnk9MHhmZmZmZmZmZjgxOThlN2IwIDxfX2Ry aXZlcl9hdHRhY2g+KSBhdCAuLi9kcml2ZXJzL2Jhc2UvYnVzLmM6MzY4DQo+ICAgICMxMiAweGZm ZmZmZmZmODE5OGRiNjUgaW4gZHJpdmVyX2F0dGFjaCAoZHJ2PWRydkBlbnRyeT0weGZmZmZmZmZm ODJiZTQwYzAgPHZpcnRpb19jb25zb2xlPikgYXQgLi4vZHJpdmVycy9iYXNlL2RkLmM6MTIzMw0K PiAgICAjMTMgMHhmZmZmZmZmZjgxOThkMjA3IGluIGJ1c19hZGRfZHJpdmVyIChkcnY9ZHJ2QGVu dHJ5PTB4ZmZmZmZmZmY4MmJlNDBjMCA8dmlydGlvX2NvbnNvbGU+KSBhdCAuLi9kcml2ZXJzL2Jh c2UvYnVzLmM6NjczDQo+ICAgICMxNCAweGZmZmZmZmZmODE5OGY1NTAgaW4gZHJpdmVyX3JlZ2lz dGVyIChkcnY9ZHJ2QGVudHJ5PTB4ZmZmZmZmZmY4MmJlNDBjMCA8dmlydGlvX2NvbnNvbGU+KSBh dCAuLi9kcml2ZXJzL2Jhc2UvZHJpdmVyLmM6MjQ2DQo+ICAgICMxNSAweGZmZmZmZmZmODE3MDZi NDcgaW4gcmVnaXN0ZXJfdmlydGlvX2RyaXZlciAoZHJpdmVyPWRyaXZlckBlbnRyeT0weGZmZmZm ZmZmODJiZTQwYzAgPHZpcnRpb19jb25zb2xlPikgYXQgLi4vZHJpdmVycy92aXJ0aW8vdmlydGlv LmM6MzU3DQo+ICAgICMxNiAweGZmZmZmZmZmODMyY2QzNGIgaW4gdmlydGlvX2NvbnNvbGVfaW5p dCAoKSBhdCAuLi9kcml2ZXJzL2NoYXIvdmlydGlvX2NvbnNvbGUuYzoyMjU4DQo+ICAgICMxNyAw eGZmZmZmZmZmODEwMDEwNWMgaW4gZG9fb25lX2luaXRjYWxsIChmbj0weGZmZmZmZmZmODMyY2Qy ZTAgPHZpcnRpb19jb25zb2xlX2luaXQ+KSBhdCAuLi9pbml0L21haW4uYzoxMjQ2DQo+ICAgICMx OCAweGZmZmZmZmZmODMyNzcyOTMgaW4gZG9faW5pdGNhbGxfbGV2ZWwgKGNvbW1hbmRfbGluZT0w eGZmZmY4ODgwMDNlMmY5MDAgInJvb3QiLCBsZXZlbD0weDYpIGF0IC4uL2luaXQvbWFpbi5jOjEz MTkNCj4gICAgIzE5IGRvX2luaXRjYWxscyAoKSBhdCAuLi9pbml0L21haW4uYzoxMzM1DQo+ICAg ICMyMCBkb19iYXNpY19zZXR1cCAoKSBhdCAuLi9pbml0L21haW4uYzoxMzU0DQo+ICAgICMyMSBr ZXJuZWxfaW5pdF9mcmVlYWJsZSAoKSBhdCAuLi9pbml0L21haW4uYzoxNTcxDQo+ICAgICMyMiAw eGZmZmZmZmZmODFmNjRiZTEgaW4ga2VybmVsX2luaXQgKHVudXNlZD08b3B0aW1pemVkIG91dD4p IGF0IC4uL2luaXQvbWFpbi5jOjE0NjINCj4gICAgIzIzIDB4ZmZmZmZmZmY4MTAwMWY0OSBpbiBy ZXRfZnJvbV9mb3JrICgpIGF0IC4uL2FyY2gveDg2L2VudHJ5L2VudHJ5XzY0LlM6MzA4DQo+ICAg ICMyNCAweDAwMDAwMDAwMDAwMDAwMDAgaW4gPz8gKCkNCj4gDQo+IEZpeCB0aGUgcHJvYmxlbSBi eSBwcmV2ZW50aW5nIHhlbl9ncmFudF9pbml0X2JhY2tlbmRfZG9taWQoKSBmcm9tDQo+IHNldHRp bmcgZG9tMCBhcyBhIGJhY2tlbmQgd2hlbiBydW5uaW5nIGluIGRvbTAuDQo+IA0KPiBGaXhlczog MDM1ZTNhNDMyMWY3ICgieGVuL3ZpcnRpbzogT3B0aW1pemUgdGhlIHNldHVwIG9mICJ4ZW4tZ3Jh bnQtZG1hIiBkZXZpY2VzIikNCg0KDQpJIGFtIG5vdCAxMDAlIHN1cmUgd2hldGhlciB0aGUgRml4 ZXMgdGFnIHBvaW50cyB0byBwcmVjaXNlIGNvbW1pdC4gSWYgSSANCmFtIG5vdCBtaXN0YWtlbiwg dGhlIHNhaWQgY29tbWl0IGp1c3QgbW92ZXMgdGhlIGNvZGUgaW4gdGhlIGNvbnRleHQgDQp3aXRo b3V0IGNoYW5naW5nIHRoZSBsb2dpYyBvZiBDT05GSUdfWEVOX1ZJUlRJT19GT1JDRV9HUkFOVCwg dGhpcyB3YXMgDQppbnRyb2R1Y2VkIGJlZm9yZS4NCg0KDQo+IFNpZ25lZC1vZmYtYnk6IFBldHIg UGF2bHUgPHBldHIucGF2bHVAc3VzZS5jb20+DQo+IC0tLQ0KPiAgIGRyaXZlcnMveGVuL2dyYW50 LWRtYS1vcHMuYyB8IDQgKysrLQ0KPiAgIDEgZmlsZSBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyks IDEgZGVsZXRpb24oLSkNCj4gDQo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL3hlbi9ncmFudC1kbWEt b3BzLmMgYi9kcml2ZXJzL3hlbi9ncmFudC1kbWEtb3BzLmMNCj4gaW5kZXggNzZmNmYyNjI2NWEz Li4yOWVkMjdhYzQ1MGUgMTAwNjQ0DQo+IC0tLSBhL2RyaXZlcnMveGVuL2dyYW50LWRtYS1vcHMu Yw0KPiArKysgYi9kcml2ZXJzL3hlbi9ncmFudC1kbWEtb3BzLmMNCj4gQEAgLTM2Miw3ICszNjIs OSBAQCBzdGF0aWMgaW50IHhlbl9ncmFudF9pbml0X2JhY2tlbmRfZG9taWQoc3RydWN0IGRldmlj ZSAqZGV2LA0KPiAgIAlpZiAobnApIHsNCj4gICAJCXJldCA9IHhlbl9kdF9ncmFudF9pbml0X2Jh Y2tlbmRfZG9taWQoZGV2LCBucCwgYmFja2VuZF9kb21pZCk7DQo+ICAgCQlvZl9ub2RlX3B1dChu cCk7DQo+IC0JfSBlbHNlIGlmIChJU19FTkFCTEVEKENPTkZJR19YRU5fVklSVElPX0ZPUkNFX0dS QU5UKSB8fCB4ZW5fcHZfZG9tYWluKCkpIHsNCj4gKwl9IGVsc2UgaWYgKChJU19FTkFCTEVEKENP TkZJR19YRU5fVklSVElPX0ZPUkNFX0dSQU5UKSB8fA0KPiArCQkgICAgeGVuX3B2X2RvbWFpbigp KSAmJg0KPiArCQkgICAheGVuX2luaXRpYWxfZG9tYWluKCkpIHsNCg0KVGhlIGNvbW1pdCBsZ3Rt LCBqdXN0IG9uZSBub3RlOg0KDQoNCkkgd291bGQgZXZlbiBiYWlsIG91dCBlYXJseSBpbiB4ZW5f dmlydGlvX3Jlc3RyaWN0ZWRfbWVtX2FjYygpIGluc3RlYWQsDQphcyBJIGFzc3VtZSB0aGUgc2Ft ZSBpc3N1ZSBjb3VsZCBoYXBwZW4gb24gQXJtIHdpdGggRFQgKGFsdGhvdWdoIHRoZXJlIA0Kd2Ug ZG9uJ3QgZ3Vlc3MgdGhlIGJhY2tlbmQncyBkb21pZCwgd2UgcmVhZCBpdCBmcm9tIERUIGFuZCBx dWl0ZSANCnVubGlrZWx5IHdlIGdldCBEb20wIGJlaW5nIGluIERvbTAgd2l0aCBjb3JyZWN0IERU KS4NCg0KU29tZXRoaW5nIGxpa2U6DQoNCkBAIC00MTYsNiArNDIxLDEwIEBAIGJvb2wgeGVuX3Zp cnRpb19yZXN0cmljdGVkX21lbV9hY2Moc3RydWN0IA0KdmlydGlvX2RldmljZSAqZGV2KQ0KICB7 DQogICAgICAgICBkb21pZF90IGJhY2tlbmRfZG9taWQ7DQoNCisgICAgICAgLyogWGVuIGdyYW50 IERNQSBvcHMgYXJlIG5vdCB1c2VkIHdoZW4gcnVubmluZyBhcyBpbml0aWFsIGRvbWFpbiAqLw0K KyAgICAgICBpZiAoeGVuX2luaXRpYWxfZG9tYWluKCkpDQorICAgICAgICAgICAgICAgcmV0dXJu IGZhbHNlOw0KKw0KICAgICAgICAgaWYgKCF4ZW5fZ3JhbnRfaW5pdF9iYWNrZW5kX2RvbWlkKGRl di0+ZGV2LnBhcmVudCwgDQomYmFja2VuZF9kb21pZCkpIHsNCiAgICAgICAgICAgICAgICAgeGVu X2dyYW50X3NldHVwX2RtYV9vcHMoZGV2LT5kZXYucGFyZW50LCBiYWNrZW5kX2RvbWlkKTsNCiAg ICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7DQooRU5EKQ0KDQoNCg0KSWYgc28sIHRoYXQgY29t bWl0IHN1YmplY3Qgd291bGQgbmVlZCB0byBiZSB1cGRhdGVkIGFjY29yZGluZ2x5Lg0KDQpMZXQn cyBzZWUgd2hhdCBvdGhlciByZXZpZXdlcnMgd2lsbCBzYXkuDQoNCg0KDQoNCg0KPiAgIAkJZGV2 X2luZm8oZGV2LCAiVXNpbmcgZG9tMCBhcyBiYWNrZW5kXG4iKTsNCj4gICAJCSpiYWNrZW5kX2Rv bWlkID0gMDsNCj4gICAJCXJldCA9IDA7 From xen-devel-bounces@lists.xenproject.org Wed Jun 21 18:02:17 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 18:02:17 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553086.863438 (Exim 4.92) (envelope-from ) id 1qC29i-0007zm-Pn; Wed, 21 Jun 2023 18:02:10 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553086.863438; Wed, 21 Jun 2023 18:02:10 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC29i-0007zf-Mz; Wed, 21 Jun 2023 18:02:10 +0000 Received: by outflank-mailman (input) for mailman id 553086; Wed, 21 Jun 2023 18:02:09 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC29h-0007zZ-FP for xen-devel@lists.xenproject.org; Wed, 21 Jun 2023 18:02:09 +0000 Received: from esa3.hc3370-68.iphmx.com (esa3.hc3370-68.iphmx.com [216.71.145.155]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id bb4796b6-105d-11ee-8611-37d641c3527e; Wed, 21 Jun 2023 20:02:07 +0200 (CEST) Received: from mail-bn8nam12lp2176.outbound.protection.outlook.com (HELO NAM12-BN8-obe.outbound.protection.outlook.com) ([104.47.55.176]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 21 Jun 2023 14:02:03 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by CO1PR03MB5873.namprd03.prod.outlook.com (2603:10b6:303:9b::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.23; Wed, 21 Jun 2023 18:02:00 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606%4]) with mapi id 15.20.6521.023; Wed, 21 Jun 2023 18:02:00 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: bb4796b6-105d-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1687370527; h=message-id:date:subject:to:cc:references:from: in-reply-to:content-transfer-encoding:mime-version; bh=7WZ2tzKypgAROr+dORuDn7CwO5xKfrOV59gigBp3nWE=; b=fyXJN/aozir4oHA4FEiR9wdC2pl/7cbZQaJteShYfB6Xo7InTqikrQ/d eRn8//2CxzPBIiEmTWLHdCX2euLQNCsmxrgfhNBcqJaMfPlFvOkAkN/bf X26tpl2QMws22X6SSTr1bv/871CU+5jex2TAeocnhvj1/J4qiGlekFIRj g=; X-IronPort-RemoteIP: 104.47.55.176 X-IronPort-MID: 113679250 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:z17ej6gMu9pPZluxZ92DRW0lX161rhEKZh0ujC45NGQN5FlHY01je htvUG7TOvmJNzP0fdkiO4W3px8E78XRy4djTFZo+3xnRikb9cadCdqndUqhZCn6wu8v7q5Ex 55HNoSfdpBcolv0/ErF3m3J9CEkvU2wbuOgTrWCYmYpHlUMpB4J0XpLg/Q+jpNjne+3CgaMv cKai8DEMRqu1iUc3lg8sspvkzsx+qyq0N8klgZmP6sT4gWHzyV94K83fsldEVOpGuG4IcbiL wrz5OnR1n/U+R4rFuSknt7TGqHdauePVeQmoiM+t5mK2nCulARrukoIHKN0hXNsoyeIh7hMJ OBl7vRcf+uL0prkw4zxWzEAe8130DYvFLXveRBTuuTLp6HKnueFL1yDwyjaMKVBktubD12i+ tQhFjZQKQqamNiXwYqCFbJQ15gqDODkadZ3VnFIlVk1DN4AaLWaGeDgw48d2z09wMdTAfzZe swVLyJ1awjNaAFOPVFRD48imOCvhT/0dDgwRFC9/PJrpTSMilEsluGybrI5efTTLSlRtm+eq njL4CLSBRYCOcbE4TGE7mitlqnEmiaTtIc6TeTjqKE72gDLroAVIDEdTli5r/nptmfgA/VgI RdI1BUWoJFnoSRHSfG4BXVUukWspRcaUsFMGvY77ymXw7LI5ByUAGcFSDNMct0gu4k9QjlC/ k+EmZblCCJitJWRSGmB7fGEoDWqIy8XIGQeIygeQmMt/8HuqZsoiRTnVN97DKmvg9v6GDf9z iqLqid4jLIW5fPnzI2+9FHDxjiq9p7AS1dv4h2NBz37qARkeISieoqkr0DB6upNJ5qYSV/Hu 2UYn8+Z76YFCpTleDGxfdjh1YqBv56tWAAwS3Y+d3X931xBI0KeQL0= IronPort-HdrOrdr: A9a23:RyDvcqrgYSvOK56BE5xlfWQaV5oveYIsimQD101hICG9E/bo8P xG+c5x6faaslkssR0b9exoW5PhfZqjz/9ICOAqVN/JMTUO3lHYT72KhrGN/9SPIVyaysdtkY tmbqhiGJnRIDFB/KLHCdCDYrQd/OU= X-Talos-CUID: 9a23:hGmoeGAtgflRGEb6ExBZ8hNTANk6SFzc9E6PeHPpVW9JYbLAHA== X-Talos-MUID: =?us-ascii?q?9a23=3AxMAv0AxNr77wlpjlRxyTqIZOhZmaqIilE0MPn5V?= =?us-ascii?q?Wh+DabQtPMWzBoguPT7Zyfw=3D=3D?= X-IronPort-AV: E=Sophos;i="6.00,261,1681185600"; d="scan'208";a="113679250" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=l28/1pQ/BtpwRdr+vI4wNmEiYtGITyw5XMa0V58ecgFu1zwqhFYpGbGdMBO/ZzH/PK/MASRXMmVsnnoKcIq6u6+hZD9fNbylONCVsygBfSQiA40E6kAlTi7tNHB1Uwi8xI7DiNhHrjUHhscGhF3Q8oUam8jrulDP9TbF52BPOOrj5pY5PLrFDk7TfYGT9Pv2SZlqkvxlFjCBz9KnKk9Wfqp55mA/TK5YBHaGAKU7PEgxfps1llSG4/k+gi93lSJDJ6pIXNRL2kh48archV6HomXyx3WItsod4vcv7t1WeVgq8z1gxl9dfC4VOaPkeeb4PVyBz8Wb9iTPEVo5WSXGvw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=7WZ2tzKypgAROr+dORuDn7CwO5xKfrOV59gigBp3nWE=; b=BlFZmvlRdb7LlO/8yGd0DmA4pvPTOG4ElwRZZWjJERjY7V/vAIhue+uU7oaDcm/xOQNdEEhdhttYyzlo8wZDeZ41ASY2EfP65IIw5pRMgEr8F8viQeuWUAtke8wLroqmayGMli7OSyYVsDyRnU0OpkJUEId2iD58l3XQ+MArs7UDPMdKP4XOJd/0/D9kC1F0HUnCZ6hjTeNq50n3OWvryTBe1iJix3SwgrYt4+SlA6mZS42gQdE5H6C52GMPe+uGOwl5GQhAFu+G3BGeb3nseFWvoeJWYPf8vml5CeHKRKmfw7CvJjkdS/+LNHhMVOg1OAp0nkdtXRn89iY0WMyqZg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=7WZ2tzKypgAROr+dORuDn7CwO5xKfrOV59gigBp3nWE=; b=guc0FjoJHZ/qMtCQ6MQe8v1cTp43EyKJDwDD8gQpNFxQ8QFhyr2L2/R2X4lTdX6DY8QWCOOa2TA4MMjvH6YCMwLoqP6tDKRCQyPMYYrKks+VwRYRvUqSSzTf7eElS9OZtZGDzKIcDauHsEvZW1xv1CQQucv2eAm8vt9lsU197JU= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: Date: Wed, 21 Jun 2023 19:01:55 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH 1/4] automation: Add QEMU to bullseye-ppc64le Content-Language: en-GB To: Shawn Anastasio , xen-devel@lists.xenproject.org Cc: tpearson@raptorengineering.com References: From: Andrew Cooper In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: LO6P123CA0034.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:2fe::16) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|CO1PR03MB5873:EE_ X-MS-Office365-Filtering-Correlation-Id: 8977f561-6ec6-44e0-fec8-08db72819c16 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: Qi4T+lm0+WxMQLLhYVbRfgjmI/LmsWdFg9r8mBFTFUiPEq+MrA+7BmZwvnro8UMV/6M1EVE9wk5nkkXt7NtKhcm5vVfY/BjHw5S4jfHEkKHSILDNPywoDEIbZzl/5StuNa2Gjgqg9tsn5f1pjx8i/JgkbCffuYUdEdXAC0Rb4Bqe4PnHCmAVAaegS5jEiYjzSboc2nWtK3KH8M1b9pdTimq1cHaWa8B+kCUAZAT9tK1dLn6FbHp0OSA04gTHbpUTurlwtgtLNAs9E07olwm9PqMMongYOJhBGT5f1I19Bt0zISyXkcLcB8EyVp3bzopknXD+A/ZjbOSkfvihXifi/zRLxlAIgk3eoaekDOYpfaX1hQufedH5zLARNIJELRYN1MDgPWtxiU9mdU3wNOZhK8B7MoHppWR/kYmN/bhvTEpY7iVCVBwNj6kzCvfGGRTKEiroF5nGSPMHhpH/AoINQy+fHBvMSeHJg2bBDEF04sOcb7acsfsZDKrYSKcSo2nJcDlqFYzcl4JgOBDk52SefaZFOghRcNYDJASYBVJzQvCKA4h/LoqRFmfPMF1Sm9Dgw0ys3UNih909DzMjy6cfyCshuzzQ06f+So30Da26piUMj6QkkRuCpTSe7EpJ+ORa18V6dnaGTLS9AyU/dlk61g== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(346002)(39860400002)(136003)(376002)(396003)(366004)(451199021)(82960400001)(8936002)(41300700001)(5660300002)(66476007)(86362001)(66946007)(31696002)(4326008)(38100700002)(66556008)(316002)(8676002)(36756003)(478600001)(2906002)(4744005)(6666004)(6486002)(186003)(31686004)(6512007)(26005)(53546011)(6506007)(2616005)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?UFg0U2NMYVgrak44WTNVNjB4WDJ5T3pML2c3ZDY5aVR4WUUvVTB1OExWcjlU?= =?utf-8?B?UFhjNkx6Wm9kd3VoZm9RaUtGbkRvU2FYU0JycFJoUEM5NVBBU0xNV0YzakR1?= =?utf-8?B?QXV0ak4zcjhyWGNXRnJjd0xqMTJCU3REQXYrOENBRkg3cGhtOUk4b0RUUnlU?= =?utf-8?B?cmdnZnF1QmFRODJZSE8rMjd6ekRUT0h2ZHlMY1dPazRobStDc0ZFMStUTGtn?= =?utf-8?B?ZndqL2U5YzIyc0RKamMwWmpjVEIwMWl2eWlzbWJNUUhXQmptcCsrMGJSa3FM?= =?utf-8?B?TmhFdkhqdDd3bWp0eXpwNGhIQTVzS2tOSVBIVnpOVmd4Wis5L3RSTW5VeDY4?= =?utf-8?B?b0ppM2MxZ2RlWS8yWFpTeVpNNU05Vmp6RzdGR2JhcDJoYjVXN01ZVFVkT1Na?= =?utf-8?B?V1FVWFZzaGVoRnFwcCtSaWRXUGhXMFpkWUd0b3JWOHpMd1kyY2JzZ3pYNXlS?= =?utf-8?B?RWp5b0pXaU45bUdXbjlMdE5SbVNTVFdIZ0VJS0xtaWhpUVBScWhFNXZ3Zjdo?= =?utf-8?B?cWZudGJzRklxamZtaC80bTBwVUNNYVlGQ2NjM1N5cnpJT2E5VE8rd3hmVWts?= =?utf-8?B?N0ZoZjFxVVlnT2pLNzQ2VXFMd2JhZVVzKzFteWNCNWdTbmVLNWp6RnExcCtr?= =?utf-8?B?Q1p1Zmg4TVFGaDlHQk5ITE5hRDhLRVIvU0l3UHZHaGF6YVZaZTE5ek5keGRL?= =?utf-8?B?RlQ1NEpPS2sxT2ZIUXk3cTVFSXJCVVh5ZmV3QVNyZGJ2NWdIUFBHYVJPZXJx?= =?utf-8?B?T3dYbGhGN2pwOFZxNzZxNGM5WThvMmhUZkpwQkVCNytGM2pncWdTZUdudVNW?= =?utf-8?B?Z2tZL2dab1E2ODREbEZKc2JoSE5NVytrNW5VczBYMWNwYXUxRFRsM2p0MmRj?= =?utf-8?B?ME1kTEtmYXR5ck1QMm9NeFhBY1BCM2NzaUVnWGEyNUVXeHpuVXNtT25NTDVy?= =?utf-8?B?aDZqb0grZzc2UmFMeEl2dThpSTRQUGo0OUJMQ3NWMzlZdkwwOTlqdWJGVTF2?= =?utf-8?B?ZFMwRmpQVmRHOU1VQjVSYVIyRGoxdXpnaFlPdGkwK3RGUXc3UVY2bWppZ0FK?= =?utf-8?B?WTRCQUIwbEhBS1JGZ0p2Y05rN01pUUlVTWZjNWpiTEtabTNKeWNJU3k4REpw?= =?utf-8?B?ZXMwZ1MvR2tPdy9QclpWWUloQVVGZ2Fwb3BCY05ZYVVJUlJYNUYxNzFTendC?= =?utf-8?B?Rko3Sm9EZUo0T3NMWFhuQTV1MGc1YXRNNTZ3aUM4dXc5QkdneG8vY1FMVGoz?= =?utf-8?B?QndNV21VSEVJTUVTT21PbmluNmkzcjlPOXhoV3YrdjVlMm1GSVQ0Wi9nMG1l?= =?utf-8?B?RmEzSmhVMmo5dFdkWVRJY0NIbUJuNllIVTZCMy9adHpsOG83OWVYVHBoZGpa?= =?utf-8?B?V2ttTHBudVhoTzVablNhbmxqYS9Kd2JoNzcrYUZWZlNqbzJmQkJKMXBLZ25z?= =?utf-8?B?eHg0VVduMVdjUVJWSmJDN3p0Z1lrTWJrNlMzSU44LytzdVh6NDQrMGNhdGN4?= =?utf-8?B?eUoxOWEvU0Q3VktyeGM0V1dIK3JUVEpoTzU5YjVvODVMK1pJelBFTFRpY1hZ?= =?utf-8?B?WnB2dHNOTGhrUFlOZDRkT2hoVFBCd0czZm1ic3NlWURuSDNmWHpFZnFHTkxs?= =?utf-8?B?VTBOUU1YVytuanVCM1Y1Y2ZyZkV2UkliSTBRck82cFZDUG5JU1JKQ05NOTRV?= =?utf-8?B?S0dVVXJNOXhsb1JvR3FURHNlb29iNnNLbXNCRnVZWFlDRC9hcDZ3TkUzOE5k?= =?utf-8?B?VWhPaThsMGhLb05SSWlkUWF1ZG1zUitRTTBGeENjeUErV2lpWkJReW16UVQ4?= =?utf-8?B?QnVDUGFNT0NJNUNmamtCbm95eEttdUpCb0xKVDEzYkVFK1dxa013REpENDF2?= =?utf-8?B?YjZlK3lwTGl5eWh1VkE0bXVQbWx4VkFZMkZoTzU1b1J5anJhb0lic3lnbm1u?= =?utf-8?B?ZEx3QUJoU1VYTTlaYTdxalVxN1NiajQzVnpLUmZTOGRXeDVQb3YrTjVLZWlx?= =?utf-8?B?b01qRDB2czJvTDBIOWczbFEvbjg0dWtUcUdwUkFwK1BCNUpTcndIZStDYmJ5?= =?utf-8?B?VUdhMlJWMHhKdlJ5Z1FZbTV1cWNtMlI5VlRMbXZlY0REOVI4QlRzSWF1bzhL?= =?utf-8?B?NmtuME5hVkIyR3dnQjEvQkhUVkFCNkZuQ2RsRDk0YmZXb0xFN2l2QnVpYTVr?= =?utf-8?B?RkE9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: YrZfjxMAnFuiHhaWkwuCwBI7wpq0zFGpIxNB7DjM89r4ZaThX8WoVp0rquHWS529JMarrTIhnKY7oLF7Pz3AF2xwW9fAinwrknkR7yHytU5IN+TSpVdDHQsK99twahW2PTnxeOzKi3mroxSENuHrEL+eYAeUmpF5PsF63XGyl75I2gJfWud4H0VhLWgLEDViL5Pn3VRdNMTY9p78ukL6g4vYpzO3cAk6oFT5iAf1D+wGwoxZ1N3Y9+AStk0SxjxbhiR0MSYn2dweuUiuzab4cGC2E8NUfGevgHHAtOdQIe4FilOERlFws9IxMzIiSUtn/f7bx57q3NA0Uau7DAK24Uiu3yz+YCpE5P5y7Pj2k90pMS5KoT+K1jN+Sb6eKhGYSvoyBH2I5xVacHpNANICqdc5WJBTUvk9XmyXNb4MhELGtSAMTNQSUWlmrVnEwNx7ovOnDpk6bJQ6dopilpLvL/A7cwPMYQ3IeW/fsynSNU/WW0RM/UAfsSpF0VYFm/uNmAN+gIN9Mzn4ffR1yhDgKj78IGK7dNFHQDXhAoEfDxkmW7avrexrBTBlBxNWcMjwv3RA91w8XYYSJVlimTMzqfwJO8/vz+7lbC+O7qQLLjGzvVTx8wWoN7kK0nXuf5dhrj/ktCvgv+JL6rIewQRlblq3v3R89zhshwzyG/TjxXHcCt4JbIUmEkYIVWnmtdSef2/Lwa3aCYgrhNC9EHXCDRxAy8R7yv2XqrzX2f2hZ1XQtOCaQWtnhTWVenScE6XCMYTbz8lm2KvZcXaiCfj/AdB6uKc+Lp8pXQGNy596DrUecEaAH+SvWdkmAjb9XpzTBMu7zU42mf1ySr63r60Udg== X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 8977f561-6ec6-44e0-fec8-08db72819c16 X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Jun 2023 18:02:00.1311 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: rtzX1MLKh//hdYX71N+wuHV1PdTXxFzTWM1rrdd9qBvIHIh1eoX39MJdKuxeM+jK+7xaoY0oKA3R0P21RBbcMkecG+xfpdZ5gfDC/nBZAsE= X-MS-Exchange-Transport-CrossTenantHeadersStamped: CO1PR03MB5873 On 21/06/2023 5:59 pm, Shawn Anastasio wrote: > Add qemu-system-ppc package to the bullseye-ppc64le container to allow > running smoke tests in CI. > > Signed-off-by: Shawn Anastasio Acked-by: Andrew Cooper Sorry - should have remembered to check on the previous patch. I'll commit and deploy this right away. From xen-devel-bounces@lists.xenproject.org Wed Jun 21 18:04:55 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 18:04:55 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553092.863448 (Exim 4.92) (envelope-from ) id 1qC2CG-00007c-5j; Wed, 21 Jun 2023 18:04:48 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553092.863448; Wed, 21 Jun 2023 18:04:48 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC2CG-00007V-35; Wed, 21 Jun 2023 18:04:48 +0000 Received: by outflank-mailman (input) for mailman id 553092; Wed, 21 Jun 2023 18:04:46 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC2CD-000075-VT for xen-devel@lists.xenproject.org; Wed, 21 Jun 2023 18:04:45 +0000 Received: from esa3.hc3370-68.iphmx.com (esa3.hc3370-68.iphmx.com [216.71.145.155]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 188f06d5-105e-11ee-8611-37d641c3527e; Wed, 21 Jun 2023 20:04:43 +0200 (CEST) Received: from mail-dm6nam12lp2168.outbound.protection.outlook.com (HELO NAM12-DM6-obe.outbound.protection.outlook.com) ([104.47.59.168]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 21 Jun 2023 14:04:41 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by CO1PR03MB5873.namprd03.prod.outlook.com (2603:10b6:303:9b::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.23; Wed, 21 Jun 2023 18:04:39 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606%4]) with mapi id 15.20.6521.023; Wed, 21 Jun 2023 18:04:39 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 188f06d5-105e-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1687370683; h=message-id:date:subject:to:cc:references:from: in-reply-to:content-transfer-encoding:mime-version; bh=k52cY6Zj6COJ62jmBO1TL3RuofbL9mPFshfH8bQU02U=; b=PyNd21UhgxK7QVekD/pod1ua4ODxu72jVRroSwi9mx/I3Qt+DT1jey1h lrTiW5xGgrfawu+NScyrHvw5P+LNo/nCxhg44r0OyQcf7372NHLXbPoC+ L0S2oGokgkQstEERlQbNzkDrbIUdSx/AMpuIkZmveqvIKBInM/C8ecWQx A=; X-IronPort-RemoteIP: 104.47.59.168 X-IronPort-MID: 113679610 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:Q1EOE6oLYnE3MGUTeVHbPSa4LeBeBmLWZBIvgKrLsJaIsI4StFCzt garIBnTbvqNYWGjfdhwO9y080lQuMfcmNRkTgJpqHpnRSoQ+JuZCYyVIHmrMnLJJKUvbq7FA +Y2MYCccZ9uHhcwgj/3b9ANeFEljfngqoLUUbKCYWYpA1c/Ek/NsDo788YhmIlknNOlNA2Ev NL2sqX3NUSsnjV5KQr40YrawP9UlKq04GtwUmAWP6gR5weAzSBNUPrzGInqR5fGatgMdgKFb 76rIIGRpgvx4xorA9W5pbf3GmVirmn6ZFXmZtJ+AsBOszAazsAA+v9T2Mk0MC+7vw6hjdFpo OihgLTrIesf0g8gr8xGO/VQO3kW0aSrY9YrK1Dn2SCY5xWun3cBX5yCpaz5VGEV0r8fPI1Ay RAXACARTS6sqMno+u+2R7Jum+M9IpfIIYxK7xmMzRmBZRonabbqZvyQoPN9gnI3jM0IGuvCb c0EbzYpdA7HfxBEJlYQDtQ5gfusgX78NTZfrTp5p4JuuzSVkFM3jemraYSFEjCJbZw9ckKwj 2TK5WnmRDodM8SS02Gt+XOwnO7f2yj8Xer+EZXhr6U03wzNnzR75Bs+U3eBoPChkWeERf1ad xAy/Qs+oK8M6xn+JjX6d1jiyJKehTYHUtxZCPEz8wCK4rDd+xqeHGUCQT9HZdE8tck5Azct0 zehj97vQDBirrCRYXac7auP6yO/PzAPKm0PbjNCShEKi/H/uIw6lAnISP55Gbapicf4Hz7xx T2Htik4iPMYistj6kmg1VXOgjbpqp2XSAcwv1/TRjj8sFM/Y5O5bYu171Sd9exHMIuSUliGu j4DhtSa6+cNS5qKkURhXdkwIV1g3N7dWBW0vLKlN8VJG+iFk5J7Qb1t3Q== IronPort-HdrOrdr: A9a23:sf3qtaFmLU79tCwfpLqEGMeALOsnbusQ8zAXPiBKJCC9E/bo8/ xG+c5w6faaslkssR0b9+xoW5PwJE80l6QFgrX5VI3KNGXbUQ2TTb2KhbGI/9SKIVydygcy78 ddmtNFebrN5VgRt7eH3OG7eexQv+VuJsqT9JnjJ3QGd3AaV0l5hT0JbDpyiidNNXN77ZxSLu vk2uN34wCOVF4wdcqBCnwMT4H41qD2fMKPW29/O/Y/gjP+9g+V1A== X-Talos-CUID: 9a23:f86LqGM97waVie5DSDVEymE7MZ4fL3DQl3XNBFG2V0V0R+jA X-Talos-MUID: =?us-ascii?q?9a23=3Al8Uinw5TAB5qj/2+aHAv7jnvxoxuz56vAVgWuK8?= =?us-ascii?q?YlMzYaQp3GieQiwqoF9o=3D?= X-IronPort-AV: E=Sophos;i="6.00,261,1681185600"; d="scan'208";a="113679610" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Oh2BzntzK7BeoafcSyGrvp5pxvDewJ1ApbsCcRwsEE1dFV9Fuy4rAv0+7oojJ3A8afGuhKtE4au86sRjt3YQfSes84UEIACxA7cPCBMSsTzXqxme8ENizGSYGIsVsP5lHPhcx4xvZMTqrv6tzYKUQDBJxNUt76sJqJWGsRdbJ71Ihu27sCshlhyjDaQDaq/VIDCf6+YQdTY6j+rqXnv4rHJNcLXtnVhrIA3BOMw0/RJ3/h0ar1lTvVxP+FmIwUitm7wTP28IHPt0CZIIQft1djC3jv8dmfgSmxXNnGA/ekfIrYV+ldoKk1bNzhhUnCvG9ci7KJkFZwhZRP8K+B5/zQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=k52cY6Zj6COJ62jmBO1TL3RuofbL9mPFshfH8bQU02U=; b=Z2cbIlEbYUIcbSqQOM22gRxTwZctkcr0jNMhwCGfqckkC7JaWjAG/JLZWu6cPWsUIieYpd95jhXXVfdY1NVhrbvM1Yj+Afw1aLgtim408PsQKqUDvXm27GmngMiS9EIch/9q+KpHq03CASaC/b7a9OWOhmPA12Ldk0svqbPNma1AuNgZE2JkMNblRZlCMxK3tSqougWHLV8aQPMG60ONtxuqB0dDpW8FtXKFUb6OBuK/iTpy+bMbsJqbWk95C63jd0i34rVyGPUB4ylXjyYnFWOA0nLYBoff41VaS9gJgB5uIobzoLKnnLg2azdx//tQJgWwM/1JCb9piQqYSzpm1w== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=k52cY6Zj6COJ62jmBO1TL3RuofbL9mPFshfH8bQU02U=; b=RV1SSeOlNjNr2hIVYAPDMozv4Ve319uF8OAqRbe/dpZSOZOX6/D3OPY19yagYTAcmSjzABeSaMDgaTEKHPRpWKP+TMNp1qgfq4k5HjXkTNpc/iht4lGiGjk4Du4nfOzMxGbHNuj2HRHy0N3htfZOmnGKImcI5aKc+RI0h0n5dzs= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: Date: Wed, 21 Jun 2023 19:04:33 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH 2/4] automation: Fix KBUILD_DEFCONFIG for *ppc64le jobs Content-Language: en-GB To: Shawn Anastasio , xen-devel@lists.xenproject.org Cc: tpearson@raptorengineering.com References: <910f301dadbd2e15ef23837bb2e95903b8f0711e.1687366665.git.sanastasio@raptorengineering.com> From: Andrew Cooper In-Reply-To: <910f301dadbd2e15ef23837bb2e95903b8f0711e.1687366665.git.sanastasio@raptorengineering.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO6P123CA0054.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:310::11) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|CO1PR03MB5873:EE_ X-MS-Office365-Filtering-Correlation-Id: 14a6927c-245b-4acc-95be-08db7281fb11 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: QTXes0KiGam/11wIhAtQTHLMapfdc3mg5Krz3YrNOfd8gCC/XjS/d4velAy0/i49FLnSSPrrN83MXDeuYrUEt0eFFqwhsapj9bGyyiYIHHFIo1/n4NfdfhdOIaWfICHR/ype2YdzXQ8J3BVJfDWk6n553qZgRQlKWzjwDMw3BLqfeqMTtBdMCDNKW1K20jgIv69dkWM7VY17DlJxsefiZ2H5flpqQU3Voqr6BH4AiVjxzwXZctSBfTmSZd+XvRD8FKfiUYs2eJ8v5hbzJBo8tpfxoHCaAj+BG8jOxWiYfO2Ei9ErRw6C+4PMjsR5FISpugz482HFsRcydskUlFPX4aKEV9KOCQ3CmyFFapfD9Qrmuipw1DzjY/CPuts0nz6G/Z3fFUKEZOiL9GwIs6UIyPRCK7oNmmsHa/a+HExtniPUuh+jPyfI9NG4LiARx9JPNVsykW/ySpXQtADA1f5QsuPECezlT82FtNC3CjuGRBhKdR/U+07cDYnIxwMfjZDGFPu3WxWzh4cVtIV/xkjP+3gJkeOkzOCJDICBIvVJ5llhxNxyJO+qTwrjrAbrjIrIEhtSb6Vb7UIrI0HzFn5iR30hE6Pna/doynft1fLSktCZbQ4UJNU+41YoL7z5YZyz9mJgW5Kvq+v4u4t1EN5vtw== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(346002)(39860400002)(136003)(376002)(396003)(366004)(451199021)(82960400001)(8936002)(41300700001)(5660300002)(66476007)(86362001)(66946007)(31696002)(4326008)(38100700002)(66556008)(316002)(8676002)(36756003)(478600001)(2906002)(4744005)(6666004)(6486002)(186003)(31686004)(6512007)(26005)(53546011)(6506007)(83380400001)(2616005)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?ODlXZTByenQxY0R6MjJoNEVYOFRZREZLYmtaNDdXdTh2L2F4WS9KZUU1eGsw?= =?utf-8?B?dWdrcW5pRnExODVla3o5MmJlcUJ2QnBWTzkxWklhUGIwSmd6VTZudjBjY1Qv?= =?utf-8?B?VEJvck41YzA0dnJrMVhqWXBLZTV1Z2NVV0ZXakFPQmtUNjhDRGJZVlRBZzhU?= =?utf-8?B?cTlDOEZTTzNGcGoxVVBxbkI2YkZnSXJGRGJxVit5MzNsUjRnZktpb3dQYjhI?= =?utf-8?B?emVRTjA1bnN0eDFiNG0xdTZuUjNIME94Z0VHblJMc3U1eDF2TTJ4Q08yK21P?= =?utf-8?B?RUNtRmVYNmdlMkp5MHNjZVVDYU4vdTFWL0I2V0RGQ0V2L2txSnl4cXh4MWE4?= =?utf-8?B?aWVBbGpvT2xHUk9ROW9YZUt4NWIrZlVrSG9PbThxZGtmRXBHSnhIb25qUTNK?= =?utf-8?B?UGpPRVVBYldoRitZTGJxTjRRUHV5ZUs1c093L2RQK080V3MwRTh3Tll1YXg2?= =?utf-8?B?MUNidHJKeTFqU1J0MHVBekNtckI1NXdIMlJ6Y1N1VWozVFRPc3FlL2d3b2xT?= =?utf-8?B?SU1RZTFIQUVvcmxDNy9rdzJhT3Bma25qVFlvdm1GQjIwZ0hEWmxvYndRdFo5?= =?utf-8?B?b1B3THpwanpsR1BCcGtCZHExUVR0bktXUEFnSlMweHFJLytwYXM0R1IyRTZl?= =?utf-8?B?eDFKdnRIbEhtOFNTcUxVZG10SDMvNDVqNThCNjJsdDhIY1RZSGQ0UnVkK01U?= =?utf-8?B?L1N6VWpUcDh3UTBBNEJCbDBSajV2QzMrbHBCZ0tNN2pnK2QybjY0ZVNRN0FI?= =?utf-8?B?OGdZWG5LbXpPcWExc3I2MjZaZHkzdEY4d2NuOGFYWHJEbW9TdXd2UG5GMW4r?= =?utf-8?B?MW9sYkZRdmx5QWt2dVl1M3F1NVhHbmVCYjhoVy9RZFdaWllFL2JBUUdXcTdT?= =?utf-8?B?Y2I0R1BNVXRNdkF1WUhxTGVMYWdEaXFpVU1VTDZwVTdyUVJZMVZCWnU5eG1P?= =?utf-8?B?ZzBkK2p1d243QVFsR3k4MGFkdFBsRnRCb3NUSEY2dys2MXlXNGsxelBQeUlD?= =?utf-8?B?a004bHIxcnBGK1BQQ1N4WUYzWWhXcjRoemZFWkQrYnR3V0Q0VzhoMi9lZEQ5?= =?utf-8?B?WnpZUW1XZXA1V0N6MkVsOUx3UklWbGx6cDVxMnNnVDRZaFltN2h6c0FadjVX?= =?utf-8?B?ZXlIa0xnOWgyMFNNeC9nczdpR1BCb21qMWhOMHh5V0pQL3pMc1FXN3E1WFlw?= =?utf-8?B?R3BGUjN3ZThWQldBR0p3RU90ejlhNkxRY1pha09UeThOZDVhVUFBZXp2Qm1V?= =?utf-8?B?aXIwU24wWGRBbXIxZU1GY09UbU9mRGlDTVl0UUd0dE93Zi85UTlaSzNSTTQ0?= =?utf-8?B?OU5LSEhjZlI1Vk1HQzlBQUpFUExTUS9aeHpvMVBWNU9MOUJBcXNCNXR6VVE2?= =?utf-8?B?R3hsZkorR0R4eThOU1B4SWo5WlYzK2kyRlREc0pVd0FYWVJEWjBKTkZXdzZ4?= =?utf-8?B?Q0o2aEdxNThCL09vTG5kUzROekJYNHhLTHpJT24zblBxVnd5TkRyWWR4VExJ?= =?utf-8?B?VTNBWmZ0L2pJUm8zcjBGeG9GN0lUNzRIV3NNemsza2hieTRPUUNESjhiclpP?= =?utf-8?B?ektIeS9VNlgwVmhXTGxkTVc1aGJZUklRT2ZmeUpiaE45ZVdEdHlBWGhhWVJP?= =?utf-8?B?bHFNbXZZb2FhWXovVGkvZFNlaGJEN0loT0E4YjVRVWRXVHJJd0FOVW5DVU9k?= =?utf-8?B?VjZFUnc2b0xaVy9oVjVaa0lUREkwMko0QjdsbGdPRWVzNWp1U1QycmJhSkhp?= =?utf-8?B?UVVFako4RjVWN0wyYzZ0NFZEdVM3TVpmdGhock1TbkthZkpkS1dzazh5ZUpU?= =?utf-8?B?NzFqKzVZbEJQZDZINThiRVZIK3VDSUptRWhYT3g1ZUdjQXVpeUY0SXQxUXN1?= =?utf-8?B?RkxnMWFYRmpNTVRIYzE1SDlYUEJ2bkNxS290TDR6WkgxQ3RkWjZnb2d5cXFE?= =?utf-8?B?czNkNTk3SHRDWW03SFhiN0tPZmUwbHdOOTZEVjJDSFlLWkx3bFVyMW1wQStR?= =?utf-8?B?eVIweHNnYlVydHkwTkZDcGhORndOMVlUbUNvQ1FoMTBsdWVCV05YeDdpNHZY?= =?utf-8?B?M1J2R2pNTmpNZksvT3IvaDIwQjd3Z280OGFYNTViaGs3UGorQnJHT0kxYml3?= =?utf-8?B?bG1WMW9DOVN2MUt3REdlc09UWWJwcVh0ckorTmVsQUZnQ0dkZExITkUwVlBI?= =?utf-8?B?VGc9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: qu3JuUQzyGlyXc60bILKiEu2FX4+S4n/7XcLkcJtnS7zTR3jjTLQtmuYMxIhqMjHAfDE1Qhh9FOlbE03h5LjRXarbqd4D/AujYmBoYQzXlCMCp/gQ7Qq776bcNomHZUbblIg4ZFOTUmSJc+EGn7jSfjWHSWnfRWb3nOsY4belgeNZy3FfBJsJu0BuZ+MVXhgQqoo7Np0ebBORX5KiKqSWtcuHOd2sC2bKMRoA6V8XAmuu7V2dOnP2rmTLPgTPx5+V/KjRyKvNnyw78jK4SqBku/nJyA3ryROtQLWdVy2YLjutxy2FlHAe+lA9gZnF6NBteGomZBd+6Ss1DoztQYLJv2Yu6Gvsm0FLzc8UkLgZ8T+GqjS/VHSRdybrmBVAxim5fUuE4g82p8CXGkxmmuTRbKUxCEnZ9gSK8fStSQmNZ/CB5b2fwntO8Tr/Ma8Cvm3IAjTTU9nLpmZEL9I9t5qA4/P2acytrpIu5riQXvBUtt5Pucrp19AVgh7oUeec0oHLI3+5t6qoLFUeRXLNBM5BjPXnTrH341pFxtEsMviE5+zzvs3o7R30XVc0M57tZ+ELxG6eIv8meUfpv3U/d+ejHacwtW0RtCE+w5YlCrQ27VtKaESZyXNG25QA0GYe9BYGTavfOrJnGz8qUxMNAzln9QnjO7Oyara1Dn6XWm9O0qr/hU1XTarNB+fVCFwCwNybLhJm6wgWD5PWdvh9m1Wz2p1joJlvvE1qfYjVKInQc64W6iJQYfns9m7cCzSe47xSqx+qeUPZmqS1FyRC6orLOri8E+vh4zm3jLujKUAnMcY+V0/pR6jGsrVnSqK0lNcmJTq65X031iu7fW5Jx5f9g== X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 14a6927c-245b-4acc-95be-08db7281fb11 X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Jun 2023 18:04:39.4761 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: WE7zopUvT0dLK7oNtiVejAg2+CWwB3SARXoDJ+VVtb7S3dB290cvxirduonlUFwbUJOQ8WkKglA4hpzghWptjvHyBSFPQo4yZuyB6pPqCPA= X-MS-Exchange-Transport-CrossTenantHeadersStamped: CO1PR03MB5873 On 21/06/2023 5:59 pm, Shawn Anastasio wrote: > During an iteration of the initial ppc64le support patchset the default > defconfig was renamed but build.yaml wasn't updated to reflect this. Fix > it up. > > Signed-off-by: Shawn Anastasio Acked-by: Andrew Cooper I'll commit this too.  Clearly it's not fatal to build testing. From xen-devel-bounces@lists.xenproject.org Wed Jun 21 18:21:45 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 18:21:45 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553098.863457 (Exim 4.92) (envelope-from ) id 1qC2SC-0002az-EO; Wed, 21 Jun 2023 18:21:16 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553098.863457; Wed, 21 Jun 2023 18:21:16 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC2SC-0002as-Bo; Wed, 21 Jun 2023 18:21:16 +0000 Received: by outflank-mailman (input) for mailman id 553098; Wed, 21 Jun 2023 18:21:15 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC2SB-0002am-Qk for xen-devel@lists.xenproject.org; Wed, 21 Jun 2023 18:21:15 +0000 Received: from raptorengineering.com (mail.raptorengineering.com [23.155.224.40]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 6650e815-1060-11ee-8611-37d641c3527e; Wed, 21 Jun 2023 20:21:12 +0200 (CEST) Received: from localhost (localhost [127.0.0.1]) by mail.rptsys.com (Postfix) with ESMTP id DD1CB828471B; Wed, 21 Jun 2023 13:21:10 -0500 (CDT) Received: from mail.rptsys.com ([127.0.0.1]) by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032) with ESMTP id ODwE_xhMYs-t; Wed, 21 Jun 2023 13:21:09 -0500 (CDT) Received: from localhost (localhost [127.0.0.1]) by mail.rptsys.com (Postfix) with ESMTP id 4B3788285717; Wed, 21 Jun 2023 13:21:09 -0500 (CDT) Received: from mail.rptsys.com ([127.0.0.1]) by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id 1g4KpaxqDmIl; Wed, 21 Jun 2023 13:21:09 -0500 (CDT) Received: from [10.11.0.2] (5.edge.rptsys.com [23.155.224.38]) by mail.rptsys.com (Postfix) with ESMTPSA id E55E2828471B; Wed, 21 Jun 2023 13:21:08 -0500 (CDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 6650e815-1060-11ee-8611-37d641c3527e DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com 4B3788285717 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD; t=1687371669; bh=oUEM0Wq+0jxEqT9zQxbQ5GitcPeRepGOjcHWlKYHdmY=; h=Message-ID:Date:MIME-Version:To:From; b=ozbpplnZfdgR8hJ7xqtFhG/YVisyTrk5LvWVOdkDMkz5Z4AhGAwIsnSWrNADTeuf0 PXtrKDdiGpq8XYYEjnBptCk0ycPxKImtfVP0QL8s2Kwl2UhjqCSnmMvxLJMYKlHUe/ aUJk8jBq+1jKtRom3D0dHI0Itc1ULn/GD4OF41v8= X-Virus-Scanned: amavisd-new at rptsys.com Message-ID: <8ac54b2e-b074-18eb-38bf-1041a8109d7b@raptorengineering.com> Date: Wed, 21 Jun 2023 13:21:08 -0500 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux ppc64le; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH 3/4] xen/ppc: Implement early serial printk on pseries Content-Language: en-US To: Andrew Cooper , xen-devel@lists.xenproject.org Cc: tpearson@raptorengineering.com References: <259298cdadf7cf1eba08cd35c636e9aca9e2182a.1687366665.git.sanastasio@raptorengineering.com> <692e2955-a85d-3c6c-7730-962956f6ebf6@citrix.com> From: Shawn Anastasio In-Reply-To: <692e2955-a85d-3c6c-7730-962956f6ebf6@citrix.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit On 6/21/23 12:54 PM, Andrew Cooper wrote: > On 21/06/2023 5:59 pm, Shawn Anastasio wrote: >> xen/arch/ppc/Kconfig.debug | 5 + >> xen/arch/ppc/Makefile | 3 + >> xen/arch/ppc/boot-of.c | 116 +++++++++++++ >> xen/arch/ppc/configs/ppc64_defconfig | 1 + >> xen/arch/ppc/early_printk.c | 28 +++ >> xen/arch/ppc/include/asm/boot.h | 24 +++ >> xen/arch/ppc/include/asm/bug.h | 6 + >> xen/arch/ppc/include/asm/byteorder.h | 37 ++++ >> xen/arch/ppc/include/asm/cache.h | 6 + >> xen/arch/ppc/include/asm/early_printk.h | 15 ++ >> xen/arch/ppc/include/asm/msr.h | 67 ++++++++ >> xen/arch/ppc/include/asm/processor.h | 207 ++++++++++++++++++++++ >> xen/arch/ppc/include/asm/reg_defs.h | 218 ++++++++++++++++++++++++ >> xen/arch/ppc/include/asm/string.h | 6 + >> xen/arch/ppc/include/asm/types.h | 35 ++++ >> xen/arch/ppc/ppc64/Makefile | 1 + >> xen/arch/ppc/ppc64/asm-offsets.c | 55 ++++++ >> xen/arch/ppc/ppc64/head.S | 48 +++--- >> xen/arch/ppc/ppc64/of-call.S | 85 +++++++++ >> xen/arch/ppc/setup.c | 31 ++++ >> 20 files changed, 972 insertions(+), 22 deletions(-) >> create mode 100644 xen/arch/ppc/boot-of.c >> create mode 100644 xen/arch/ppc/early_printk.c >> create mode 100644 xen/arch/ppc/include/asm/boot.h >> create mode 100644 xen/arch/ppc/include/asm/bug.h >> create mode 100644 xen/arch/ppc/include/asm/byteorder.h >> create mode 100644 xen/arch/ppc/include/asm/cache.h >> create mode 100644 xen/arch/ppc/include/asm/early_printk.h >> create mode 100644 xen/arch/ppc/include/asm/msr.h >> create mode 100644 xen/arch/ppc/include/asm/processor.h >> create mode 100644 xen/arch/ppc/include/asm/reg_defs.h >> create mode 100644 xen/arch/ppc/include/asm/string.h >> create mode 100644 xen/arch/ppc/include/asm/types.h >> create mode 100644 xen/arch/ppc/ppc64/of-call.S >> create mode 100644 xen/arch/ppc/setup.c > > This is a surprising amount of infrastructure. I'm guessing it's a > consequence of needing byteorder ? Right, byteorder as well as va_{start,end,arg}. I could try to trim it down further. > There's a series still out deleting swathes of junk in byteorder. I > guess I need to kick that thread again, but it mostly boils down to > using __builtin_bswap$N() (and on x86, reimplementing them on old enough > compilers). Presumably all versions of GCC (and eventually Clang) we > care to support with ppc64 understand this builtin ? Yes, those builtins should work just fine on any reasonably recent gcc or clang toolchain. What would be the correct approach to integrating these into byteorder.h? Would adding some `#define __arch_swab$N __builtin_bswap$N` macros be the way to go? > I've noticed a couple of other things. asm/types.h repeats some > antipatterns which we're trying to delete for MISRA reasons in other > architectures. I was already planning to fix that up xen-wide, and I > guess now is the better time to do so. > > Elsewhere, you've got a number of __inline__'s. We think those are all > vestigial now, so should be switched to using a plain inline. Will do. > Also, there are a bunch of UL() or ULL() macros which encoding a > difference between asm and C. In Xen, we use _AC() for that, which you > can find in . Thanks for the pointer, I'll update the usage of UL/ULL. > Similarly, there are some functions which ought to be __init, so it > would be good to get them correct from the start. Good catch. This actually goes along with your subsequent observation about Open Firmware residing in the bottom 4G of memory. See below. > Maybe as an intermediate step, just get the infinite loop moved from asm > up into C? That gets the stack setup, and various of the asm helpers, > without all the rest of the C required to get early_printk() to work. Would you like that plus the serial patch in this same series, or would you like me to just get the C infinite loop going for this series? > Something we've been trying very hard to do generally is declutter > processor.h, and on x86, we've got asm-defns.h as a more appropriate > place to have the stuff which is expected to be common to all asm code, > and never encountered in C. Sounds good, I'll move the common asm-only stuff to an asm-defns.h. > A couple of questions before I dive further in. > > Given: > > #define r0 0 > > do the assemblers really not understand register names? That seems mad. Yeah as surprising as it is, ppc64 assemblers don't handle register names by default. I think at some point a flag was added to GAS (and probably llvm? will have to check) to define them for you, but I'm not sure which version introduced the flag. I'll do some digging and if the flag is available a reasonable versions of both toolchains (what exactly would constitute this? Are there project-wide expectations of older toolchains working, and if so, how old?) then I can get rid of these. > Also, given the transformations to call into OpenFirmware, presumably > this limits Xen to running below the 4G boundary and on identity mappings? Interaction with Open Firmware directly shouldn't be necessary past early init, so it shouldn't impose any restrictions on the memory map once paging is up and going. It will just require grabbing all of the required information from OF (essentially dumping the device tree into a local copy) before making the switch. I'll also mark the relevant functions as __init. > ~Andrew Thanks, Shawn From xen-devel-bounces@lists.xenproject.org Wed Jun 21 18:46:51 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 18:46:51 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553105.863468 (Exim 4.92) (envelope-from ) id 1qC2qm-0005Dg-Fj; Wed, 21 Jun 2023 18:46:40 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553105.863468; Wed, 21 Jun 2023 18:46:40 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC2qm-0005DZ-C9; Wed, 21 Jun 2023 18:46:40 +0000 Received: by outflank-mailman (input) for mailman id 553105; Wed, 21 Jun 2023 18:46:39 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC2ql-0005DT-3t for xen-devel@lists.xenproject.org; Wed, 21 Jun 2023 18:46:39 +0000 Received: from esa5.hc3370-68.iphmx.com (esa5.hc3370-68.iphmx.com [216.71.155.168]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id f23d7ad7-1063-11ee-8611-37d641c3527e; Wed, 21 Jun 2023 20:46:36 +0200 (CEST) Received: from mail-bn7nam10lp2109.outbound.protection.outlook.com (HELO NAM10-BN7-obe.outbound.protection.outlook.com) ([104.47.70.109]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 21 Jun 2023 14:46:17 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by BN8PR03MB5140.namprd03.prod.outlook.com (2603:10b6:408:7d::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.21; Wed, 21 Jun 2023 18:46:15 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606%4]) with mapi id 15.20.6521.023; Wed, 21 Jun 2023 18:46:14 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: f23d7ad7-1063-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1687373195; h=message-id:date:from:subject:to:cc:references: in-reply-to:content-transfer-encoding:mime-version; bh=hBcCok7NZ1kV2z/uM3FO0uXtGgpAJOYcJ1MZ9EXDBbQ=; b=H4mbz4QIuCKODom6/z++25uFatsq0Dgba6C46A6emHIk8iZqV41c4Ffa UovfLj+mTnSTDPzgM9A/viOCXFC2InvGrs5X8KbNlHU0D7N2innGlPtFR ODybxjNMMxU4+KYnW1G8xa5Q2At82q4vuVRwlkriXL919B+T6LjKhJP5v I=; X-IronPort-RemoteIP: 104.47.70.109 X-IronPort-MID: 112401450 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:sowgbqk411vR+BmK0bwJFL/o5gxPJ0RdPkR7XQ2eYbSJt1+Wr1Gzt xJOUW+Ca/iNZWHweIt+O4m2oxgFu5TdnN4yHQA/qig8ESMWpZLJC+rCIxarNUt+DCFhoGFPt JxCN4aafKjYaleG+39B55C49SEUOZmgH+a6U6icfHgqH2eIcQ954Tp7gek1n4V0ttawBgKJq LvartbWfVSowFaYCEpNg064gE0p5KyaVA8w5ARkPqgV5gaGyxH5MbpETU2PByqgKmVrNrbSq 9brlNmR4m7f9hExPdKp+p6TnpoiG+O60aCm0xK6aoD66vRwjnVaPpUTbZLwXXx/mTSR9+2d/ f0W3XCGpaXFCYWX8AgVe0Ew/yiTpsSq8pefSZS0mZT7I0Er7xIAahihZa07FdRwxwp5PY1B3 dciDCtRSjOdvLzowIP8drVB2soIPPC+aevzulk4pd3YJdAPZMmbBo/suppf1jp2gd1SF/HDY cZfcSBocBnLfxxIPBEQFY46m+CrwHL4dlW0qnrM/fZxvzeVk1Q3ieC8WDbWUoXiqcF9t0CUv G/ZuU/+BQkXLoe3wjuZ6HO8wOTImEsXXapLTefkrqc23QX7Kmo7LDQJS3K7i6GCrRS5YNAHe w8tpRoBov1nnKCsZpynN/Gim1aftxgVQMZZCOw9wBuE0rbT+QufCWkCQzNbadop8sQxQFQCx lKP2t/kGzFrmLmUUm6GsKeZqyuoPioYJnNEYjULJSMZ+9Tqupo0iDrVR85/F7S4iNL0Hzz92 TGMo241gLB7sCIQ/6Cy/FSCiTTzoJHMF1Yx/l+OBjPj6R5lbom4YYDu8ULc8ftLMIeeSB+Go WQAnM+dqusJCPlhiRCwfQnEJ5nxj97tDdEWqQcH80UJn9h1x0OeQA== IronPort-HdrOrdr: A9a23:PU8YiKmnCKg9j25HnnpiKPQzSOTpDfJP3DAbv31ZSRFFG/Fw9v rPoB1/73TJYVkqNU3I9errBEDiexLhHOBOjrX5VI3KNDUO01HFEGgN1+Xf/wE= X-Talos-CUID: 9a23:uV80Zm0HudXBwvJddnKjgLxfMfoBaSH572nrfRG4OCFVFJDJR3SAwfYx X-Talos-MUID: =?us-ascii?q?9a23=3AHNH3OA/mOrvuj1bmVfroKGOQf+NB/LqHCGpVqrJ?= =?us-ascii?q?cvPKGbXwzAmitozviFw=3D=3D?= X-IronPort-AV: E=Sophos;i="6.00,261,1681185600"; d="scan'208";a="112401450" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=GnNJR5FpLsbNhO0Oj7sbn2e6KG3I39aXR3T6fNjmlFhQUlVaDChVZG0uCu/sM3ItucMlasFSaRffmjk/BGy4+aRRA8hrNTMeBTLe65o1upNfVz58YckR6yR4nxhn1DskCZyeHdtuckl5C5g545J18ksybuWw8xtmrNxmVi71ubJ6+s+lw/aSuZHp/KS2QkqI8j3etoFdBfF/RzU162iQ8omf7hCP7MRW85oKFx71iCJxkiwwqFYXsOd0m90bY3+LDR3eZqFRR/1qvWxqvu27OKSUl6X08Wx4RWrlrxDGc8oqYxwTXgddhy4SsUuNNy5C3KhL6oRIbFzWFWpY9pH1pw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=SGLkj4TUiEKuMMbJqtiiOqcjFW3vOw5+T+56DZ0G/2U=; b=Vbpf2kkCjGD/hupXlFKbRdlH3ZoigpGvwZamLN1ZjWD3MsNSzx5HRtQLEt9Yrhb/4JaIJ4qSXOwK2M/ejOlaAdkyw6Unrr/5Xpidym46mV28o1J+aNvx99gLpoSPVkdBphjHSMyyl0/6+T+6XBdo6dlzhfZL4yJBzb6HDnTXc3fmfCs+W4lsCDlevP2M1z8VWjUwt0AFj4mEa3fTr+HHARWWgbLh7kBqNeO8Qc8DHgVR0GfatCzPurepvKKP4bkxrCTYhBq5cW/gJokvV1FWfOxL3Bbzoe3ACJTEj3GAabzWtfChR1OZJterBv6GjbOEgXv58YPXItDnLaqnlo+vvA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=SGLkj4TUiEKuMMbJqtiiOqcjFW3vOw5+T+56DZ0G/2U=; b=eiP9IWF3E2O5l7lZTcmbrPnYYLU/jPIfadxPeF8692FYdat39nVWDtJE2Z0YmRpw3RJhUfk9DSfqvauCSJ/3Q/UXg+PQELxBmf4FyZe78zfsSyUDAvJM8FhxFYXopJ3RwcoftkvaLbV+b8akQWzg5ruf8NCjKEziOuxZV0EqUzM= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: <9d84b265-129e-ba8d-8503-e72c76f2b112@citrix.com> Date: Wed, 21 Jun 2023 19:46:08 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 From: Andrew Cooper Subject: Re: [PATCH 3/4] xen/ppc: Implement early serial printk on pseries Content-Language: en-GB To: Shawn Anastasio , xen-devel@lists.xenproject.org Cc: tpearson@raptorengineering.com References: <259298cdadf7cf1eba08cd35c636e9aca9e2182a.1687366665.git.sanastasio@raptorengineering.com> <692e2955-a85d-3c6c-7730-962956f6ebf6@citrix.com> <8ac54b2e-b074-18eb-38bf-1041a8109d7b@raptorengineering.com> In-Reply-To: <8ac54b2e-b074-18eb-38bf-1041a8109d7b@raptorengineering.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO4P123CA0496.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:1ab::15) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|BN8PR03MB5140:EE_ X-MS-Office365-Filtering-Correlation-Id: 93c3dedc-770e-41d7-f3e0-08db7287ca2e X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: JeODq139KqQRfF609MEuuMfH35gGXGVx1/YayrdULJoycD+gSP4HHjbBoiEMkpRoh2VTWbQr9g+jBcYoIEY8dMI69IMRCiLiV1M7Hruzdin1Ep4Das3QxvGWBz6dlReOzqxWbaEa+y4cYIZScL21DGJZViFjU9lg/amKv356BNrN5JJ4Igb7ZrqsYa1NddR6gOxiLXuMG2EvJXQghrlPVzCr+ONO2BCpUvEjVrXuwjZJBIdEYUOycHVgcIZ0yGRbN+7+BcwGGnK9HkAlpO0PDOcMpC7SZhevevh00all0D94FuUcwMpf4gd1fg3y0A0dgQ7Jx7MiJRyLts+w3zmFjRDtyu8FNvvKdsn+0ooweqjAJLjcrAWxN6rgBQXHaRDYIYU0xfenUFPcMQxuNftyYBthaRx6BGI9tAQEr4i2e0BEVjCh3buMDGPnhGdrBJcBeLWIiEHWMF8dEZTFKbQDw3i4EKPc992Ryc7BWrwUtfKHj13Ee7wZTnCTXDMmNcR6XJRHOev5JNbqSaJqW0wIC4hww73EL7/5eicvDEhGpzOYpusGvnIDFFW5o5yqAH1ROsBCwYP8/uyVyiw/yEZBpay8bzBmvBPa8EQW/U5LPjmJlTRAZh5i9Xw1UCiPT+EKRonDiRWcMcp6PEabJZc2fQ== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(136003)(39860400002)(396003)(376002)(346002)(366004)(451199021)(31686004)(186003)(36756003)(5660300002)(41300700001)(8676002)(66476007)(66556008)(8936002)(38100700002)(31696002)(316002)(4326008)(82960400001)(66946007)(86362001)(2616005)(6486002)(966005)(478600001)(26005)(2906002)(6506007)(53546011)(6512007)(83380400001)(6666004)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?NUNhdXQzem5UMm9PNUFpamFFTS9yeDFYeG1jaW1VbHhqRFNmMis3cWxJMmsr?= =?utf-8?B?Z2Z3TWN5NkJWdEVGdGlBaEgxRkd5YUhicmZnRFVXd0FSSE5yYkx6ZDRDWUpt?= =?utf-8?B?QU9Xd2MrRnM1bkZocXFMKy9YZThDYzR3c0tsUStxQm8vdjhpZnhoSlZNc1Ri?= =?utf-8?B?R05aWnJhQi9EaUdZWEdFYmViZkJoRVpDNm12SnNFZndJdHBaSVBXS0RoaTVV?= =?utf-8?B?a2tsTmNuMnpVY1hTNUhYUWF4MElQZWRkRFhhK0pqbTAvNzVxTFZBVHRySndS?= =?utf-8?B?aFVQend3ejhPSVV2bUhhL2hzVG0rN29zYWxYYllKMmxPL2FuZnphZE9EeGk4?= =?utf-8?B?a3IzSkhsWkd1UVFTMzFHMDk0Qk9KS0ZQRFZuczdJd3g4eTIzZjV0OVIzSE9N?= =?utf-8?B?dWgwNC9UUU55RnFwLzB5R2ZKNHRGNXFtMWt2VU1NNkIyeDJnWHU0V0Nnd2hL?= =?utf-8?B?TldZS1BhLzg1cmUrblRpTmNkbWlPaDRQQTdvOVdwUnpGSVd2aWw5MUhtTUxL?= =?utf-8?B?MnBhZ0ZVRG16U1JpRDBZeHU1c2FGU1dNdHRDSHB6RUpoWHYva1hpQlZKMndQ?= =?utf-8?B?Tkx0bytic3d3WlIvRnBrSlgvVGdQRCtkUXQ1TWlHN01UWmQ0RzY2R095ZDJw?= =?utf-8?B?M3FnNlFUdkdIOFBVWlNwcnlCUVkzbzBZNU1kTnZBWm0zdFZyUVhDNURIbG5q?= =?utf-8?B?Y0E3aFcyTjRrR3AydFNCZEU5WTRVQzI1akVlWHRCVnRTLy9rQWh3RDJ5V3VN?= =?utf-8?B?THRnRjQ2MGMxd3VMUHY0M2UzK2ppOXRVVlRGMW9uSlAxK3BOWmtzejlTRUh0?= =?utf-8?B?NkVaNk05aE9hZzVxYkhST0JiR2x1VFlXUzR6SmJKLytTY0RXemtBUFFmMU1Q?= =?utf-8?B?OXVvK2VvVExFUldnREQ1d0FKVU5JTUVuMk5RczZFcTVZR0RjZklMcWN5SVlu?= =?utf-8?B?MUpFcWFLM0orUitya0p5YWtmRCtZRWpQMGFpR3JMRWQxWXl4Mi9GcXBtYnlW?= =?utf-8?B?M3dnMGd5eE0zUjlSOUJUOE4rc0lmdHRPbEZYd3gwWGxlNmRpOURPVzVSMG5r?= =?utf-8?B?UFdhWUNxWmhFdVlnaStwNEpaZUQwRzZCNkphcTI5YW5EN28reWhJM1EyRnJ1?= =?utf-8?B?MXFPeTZZSWQ1ZWpzbE9YZXZ6d2FjVFo1YUZFRHRWYjdTNzZtMGxiNU55azNG?= =?utf-8?B?Vk9DSlFsbVV1V0FMOC9jb0sxaERmbEplTk5PeDllQ0ltcWtldEJlRVAvTkls?= =?utf-8?B?bE1XcFhCY2cvbmdKRTRyNGRtM1VyRlZXa3M2Z0liQ2M0eHQwcllqbVFuYll5?= =?utf-8?B?alZpTGR5czhFNmUrR3NkdWZlMkJTdTUyUTFpRGxHTGdYMUw5VGFFUnh0MXpu?= =?utf-8?B?bmlnT3hmMGlmN2F6aUhCZ2FMQkNXS2hNWjlCc0xTR1o3Q2RFc3RSVlRXV1h5?= =?utf-8?B?QWlxSWFmU2ZYckNER0REYWlhZEgyRHZrNUpkdUdCb0hPWjBqUUN3N0hkdWpy?= =?utf-8?B?ZHo0OUNyeUJGcEh6eC9zelI0N3J1bGRFV0hiUXMwYzNCSHNKSldXUmZaQUZp?= =?utf-8?B?alBGTFEwdm1MeFdKU0NKQWNuNE8yUVgxbG02dTdDbGxhYURrWUNKSTFhYitR?= =?utf-8?B?THIyaXpLLzZxS1J0ZmoyMGlHaDd4VCtQWnA0M0pIaXkwTXBRVy9PT0JySTlT?= =?utf-8?B?SFpTbExyMTJFWFhOT2Y1TW1wSWl2KzN2eHFzQTdmd0RjOXVFZHpCRFBiUXpZ?= =?utf-8?B?WXdaUVhNYk5ZUStDckVtMmZsT1Jmc3lKRGIvUUxHbmhXeWpUMWduWG1kR3lk?= =?utf-8?B?Zllzd2ttWFRZN3RtRjZXd2hneHc5aTRXQWxXc3BlKzZSdUtldmJKOFNvdzh6?= =?utf-8?B?aVR0aHV5WUFha0tjL0JJVG1Kck9kYkt3YkFIdjRpZlZKSmNqL0cvU0pzelZP?= =?utf-8?B?aFAwM2thK0k2Uk85cVlQRm5LYktlVFhyWnk3c2JUYzlkTlNHNlNFWEY5NTRQ?= =?utf-8?B?aGxXY2prQTZTNnVQcWtuMGluV0l0VUhVenNVLzk4U29hYjBtaWNqS2RYU21p?= =?utf-8?B?TVZyTTBzMEFZQmlkc2M1Ukl6T2FtTVgrQjZWUGlGWkU2aEtFVXVkRkRoSGQw?= =?utf-8?B?U3R0aVBTNElMZzdWaXRLR2I2ZHAwekUzd3dBMUliV1dBZ1hwN1ZsQ3NUSUVv?= =?utf-8?B?cnc9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: v5pyMWd4gbdYUk3KJK6x0r8IFovIZmsuMZ59ad/y67ABd8PlMRKiis7xIZXFiCwVSaZn4Id4cF4Tmqnpw7Kkkf6e63f5iWpn85j+BW6O8LmL/3pN/P34wueHzCXVrpcafz88gz0K/mqmGKmG8eJJPpb1gEJEBkeuaK87HFL9nu2R03PaCvg307ZSkF2D/hjXGG+R7crlHfQ4+i1jP0XdAYgl5t9mK7CUI86wj0WUc1p0uOFJwi34kEGVJ6LKrix6ZbNG5Nl3L6AGhbo+w0jBk32aYxDjqgf+BGhk/VU8Qdnnl5e0Yd23fWntUcRUcIJymQS0ByQv6PzLjwoGZEqJ2HGXCMOYQDKgDi2noJumCIayNLtFrJgIHH5VK8C/Dy01soZplNV4ljDQTvL5/vmbkXOWQsxEbkluh3U7ZDO5tHaoVNpypsFvI9TH9mvPbbF3EohNuqVR9ASFtMUMv4MQjA0xh6Z8JdT7EJcrfMRTGrbDF7FebHiI9orwmb/8rv4fwkBdbLZi5bU+28Bz5SvtK2h5pIdMLkWg4Fa9UbbJBS27zcT0IrQuJcNAraKS2Hx4rljoCK6lnRuQo94W/ak2qGhcNYOyHDOuDgtJwClMIugZ7EcvjdD5RmQuGb3Kwget9Sfz1njVQwivGhwjTKjY76Yp44lYi+MmRS3vnGXTNMIk296Jil6UO4l+aZcXxocjk4BNHWCbBQv1GN3Rh4ka9jaUCwixvCqMgWVEVVcR1b7bduQlLYE3KMa9fovskVs3TilMziyfwlz1BEEnKW82EN5Wdf/PJgFGTMFjMGj/CSsm3ceKA0GRDoWh9WMydvbVD2yWSOnV5XqLWrMaBa6Z6w== X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 93c3dedc-770e-41d7-f3e0-08db7287ca2e X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Jun 2023 18:46:14.4060 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 2mSNmGhkjw8mhM0lzBjTcZVvhVFyRdbX1aUrtjva+SJ+rsIGEmzCYWp8SBeGEH3TM9/MnSvmCzLc+TO4JsjGCFn02fgj02ucwTV2+/vEX08= X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN8PR03MB5140 On 21/06/2023 7:21 pm, Shawn Anastasio wrote: > On 6/21/23 12:54 PM, Andrew Cooper wrote: >> On 21/06/2023 5:59 pm, Shawn Anastasio wrote: >>> xen/arch/ppc/Kconfig.debug | 5 + >>> xen/arch/ppc/Makefile | 3 + >>> xen/arch/ppc/boot-of.c | 116 +++++++++++++ >>> xen/arch/ppc/configs/ppc64_defconfig | 1 + >>> xen/arch/ppc/early_printk.c | 28 +++ >>> xen/arch/ppc/include/asm/boot.h | 24 +++ >>> xen/arch/ppc/include/asm/bug.h | 6 + >>> xen/arch/ppc/include/asm/byteorder.h | 37 ++++ >>> xen/arch/ppc/include/asm/cache.h | 6 + >>> xen/arch/ppc/include/asm/early_printk.h | 15 ++ >>> xen/arch/ppc/include/asm/msr.h | 67 ++++++++ >>> xen/arch/ppc/include/asm/processor.h | 207 ++++++++++++++++++++++ >>> xen/arch/ppc/include/asm/reg_defs.h | 218 ++++++++++++++++++++++++ >>> xen/arch/ppc/include/asm/string.h | 6 + >>> xen/arch/ppc/include/asm/types.h | 35 ++++ >>> xen/arch/ppc/ppc64/Makefile | 1 + >>> xen/arch/ppc/ppc64/asm-offsets.c | 55 ++++++ >>> xen/arch/ppc/ppc64/head.S | 48 +++--- >>> xen/arch/ppc/ppc64/of-call.S | 85 +++++++++ >>> xen/arch/ppc/setup.c | 31 ++++ >>> 20 files changed, 972 insertions(+), 22 deletions(-) >>> create mode 100644 xen/arch/ppc/boot-of.c >>> create mode 100644 xen/arch/ppc/early_printk.c >>> create mode 100644 xen/arch/ppc/include/asm/boot.h >>> create mode 100644 xen/arch/ppc/include/asm/bug.h >>> create mode 100644 xen/arch/ppc/include/asm/byteorder.h >>> create mode 100644 xen/arch/ppc/include/asm/cache.h >>> create mode 100644 xen/arch/ppc/include/asm/early_printk.h >>> create mode 100644 xen/arch/ppc/include/asm/msr.h >>> create mode 100644 xen/arch/ppc/include/asm/processor.h >>> create mode 100644 xen/arch/ppc/include/asm/reg_defs.h >>> create mode 100644 xen/arch/ppc/include/asm/string.h >>> create mode 100644 xen/arch/ppc/include/asm/types.h >>> create mode 100644 xen/arch/ppc/ppc64/of-call.S >>> create mode 100644 xen/arch/ppc/setup.c >> This is a surprising amount of infrastructure. I'm guessing it's a >> consequence of needing byteorder ? > Right, byteorder as well as va_{start,end,arg}. I could try to trim it > down further. should be entirely standalone. But in general, it's nice to see if we can reduce the inter-dependencies, and bringup of a new arch is the only time we get to see them. > >> There's a series still out deleting swathes of junk in byteorder. I >> guess I need to kick that thread again, but it mostly boils down to >> using __builtin_bswap$N() (and on x86, reimplementing them on old enough >> compilers). Presumably all versions of GCC (and eventually Clang) we >> care to support with ppc64 understand this builtin ? > Yes, those builtins should work just fine on any reasonably recent gcc > or clang toolchain. What would be the correct approach to integrating > these into byteorder.h? Would adding some `#define __arch_swab$N > __builtin_bswap$N` macros be the way to go? In the short term, that's perhaps best. https://lore.kernel.org/xen-devel/cover.1653314499.git.lin.liu@citrix.com/T/#u is the full series >> Similarly, there are some functions which ought to be __init, so it >> would be good to get them correct from the start. > Good catch. This actually goes along with your subsequent observation > about Open Firmware residing in the bottom 4G of memory. See below. > >> Maybe as an intermediate step, just get the infinite loop moved from asm >> up into C? That gets the stack setup, and various of the asm helpers, >> without all the rest of the C required to get early_printk() to work. > Would you like that plus the serial patch in this same series, or would > you like me to just get the C infinite loop going for this series? Whatever is easier, although I expect splitting this patch into two will make things simpler overall. >> A couple of questions before I dive further in. >> >> Given: >> >> #define r0 0 >> >> do the assemblers really not understand register names? That seems mad. > Yeah as surprising as it is, ppc64 assemblers don't handle register > names by default. I think at some point a flag was added to GAS (and > probably llvm? will have to check) to define them for you, but I'm not > sure which version introduced the flag. > > I'll do some digging and if the flag is available a reasonable versions > of both toolchains (what exactly would constitute this? Are there > project-wide expectations of older toolchains working, and if so, how > old?) then I can get rid of these. You can pick a minimum version as you see fit, which is basically anything goes prior to PPC64 being declared supported in Xen. It needs to end up in the root README (but a patch for that probably wants to wait until the port is a little more mature), but if I were you I wouldn't care about supporting anything older than comes in current distro released this year. >> Also, given the transformations to call into OpenFirmware, presumably >> this limits Xen to running below the 4G boundary and on identity mappings? > Interaction with Open Firmware directly shouldn't be necessary past > early init, so it shouldn't impose any restrictions on the memory map > once paging is up and going. It will just require grabbing all of the > required information from OF (essentially dumping the device tree into a > local copy) before making the switch. > > I'll also mark the relevant functions as __init. Ah, in which case there's something magic in the build system which is (AFAIU) unique to Xen. obj-y += foo.init.o for a foo.o which are expected to contain no runtime code at all.  This trick also manages to string literals into .init.rodata, rather than living in the general mergable string section. ~Andrew From xen-devel-bounces@lists.xenproject.org Wed Jun 21 19:06:15 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 19:06:15 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553111.863478 (Exim 4.92) (envelope-from ) id 1qC39R-0007hM-2e; Wed, 21 Jun 2023 19:05:57 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553111.863478; Wed, 21 Jun 2023 19:05:57 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC39Q-0007hF-V0; Wed, 21 Jun 2023 19:05:56 +0000 Received: by outflank-mailman (input) for mailman id 553111; Wed, 21 Jun 2023 19:05:56 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC39P-0007h8-Ll for xen-devel@lists.xenproject.org; Wed, 21 Jun 2023 19:05:56 +0000 Received: from esa3.hc3370-68.iphmx.com (esa3.hc3370-68.iphmx.com [216.71.145.155]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id a3a89a06-1066-11ee-b237-6b7b168915f2; Wed, 21 Jun 2023 21:05:53 +0200 (CEST) Received: from mail-co1nam11lp2175.outbound.protection.outlook.com (HELO NAM11-CO1-obe.outbound.protection.outlook.com) ([104.47.56.175]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 21 Jun 2023 15:05:46 -0400 Received: from SA2PR03MB5881.namprd03.prod.outlook.com (2603:10b6:806:11d::18) by CO1PR03MB5907.namprd03.prod.outlook.com (2603:10b6:303:6e::5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.23; Wed, 21 Jun 2023 19:05:43 +0000 Received: from SA2PR03MB5881.namprd03.prod.outlook.com ([fe80::6646:2936:9a61:97b4]) by SA2PR03MB5881.namprd03.prod.outlook.com ([fe80::6646:2936:9a61:97b4%4]) with mapi id 15.20.6521.023; Wed, 21 Jun 2023 19:05:41 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: a3a89a06-1066-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1687374353; h=from:to:subject:date:message-id:references:in-reply-to: content-id:content-transfer-encoding:mime-version; bh=hFoiIgauJUdisXUuZZGm5A44v/YRCSGze0db1HjeRJQ=; b=AYPwW6KPWgRpt7WqReowtSrndyoGIQ7u2+Ph1jx/1wC8TSR29CXQmMhL ZaNmY3tj5UVqZ0ozKWeTi9P5lJpWHsNJ0sYRtdmJWr+fEQdortG1D/q7w 9vKWkdH+d5iUZZ19o5o8BWw0M5VqyVynNYBnXbuoSV8NUZ1/E6i958lDV k=; X-IronPort-RemoteIP: 104.47.56.175 X-IronPort-MID: 113686095 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:089Cda8RQnYKEp6jaewZDrUD6X6TJUtcMsCJ2f8bNWPcYEJGY0x3x mYYC2uEb/beZ2unft1+a4+y8E8H75aBz942HAs9riA8E34SpcT7XtnIdU2Y0wF+jCHgZBk+s 5hBMImowOQcFCK0SsKFa+C5xZVE/fjUAOG6UKicYXoZqTZMEE8JkQhkl/MynrlmiN24BxLlk d7pqojUNUTNNwRcawr40Ird7ks31BjOkGlA5AdmO6oS5AO2e0Q9V/rzG4ngdxMUfaEMdgKKb 76r5K20+Grf4yAsBruN+losWhRXKlJ6FVHmZkt+A8BOsDAbzsAB+v9T2M4nQVVWk120c+VZk 72hg3ASpTABZcUgkMxFO/VR/roX0aduoNcrKlDn2SCfItGvn9IBDJyCAWlvVbD09NqbDklcq cQzLx0ScCyOivOy36qmdLg8q9gKeZyD0IM34hmMzBn/JNN/GNXoZPyP4tVVmjAtmspJAPDSI dIDbiZiZwjBZBsJPUoLDJU5n6GjgXyXnz9w8QrJ4/ZopTWNilUujdABM/KMEjCObf1YhACyp 2bd8kzyAw0ANczZwj2Amp6prraWxn2rBtpDSdVU8NY1oVqUl09CDyY/fmaYg/yIsRCHAetQf hl8Fi0G6PJaGFaQZt3gQxqQo3OeuBMYHd1KHIUS9A6J2oLQ4gCEGnIDSD9RLtAr3OczRDol0 XeTkt/pDCApu7qQIVqX7p+dqTK/P3hTIWJqTSMNUwZD49Dlu4w1phbOSMtzVq+zktDxXzr3x liivHhgr7Yel8gG0+O851+vqzK0r7DbXxIy/EPcWWfNxgF2fom+fKSz9EPWq/1HKe6xVUKdt XIJn8yf6uEmDpyXkiGJBuIXE9mB4PKIMybVh1J1KIUw7DSm+3Olfod47Sl3IQFiNcNsUTvoZ lLD/ABc/pleOFO0YqJtJYG8EcInye7nD9uNfuDZaJ9Cb4Z8cCeD/TpyfgiA0mb1ik8unKojf 5CBfq6R4W0yDK1myH+9QL4b2LpynyQmnzqMGNb80git1qeYaDiNU7AZPVCSb+c/qqSZvAHS9 NUZPMyPo/lCbNDDjuDs2dZ7BTg3wbITXs6eRxB/HgJbHjdbJQ== IronPort-HdrOrdr: A9a23:HoAorKNeQKvq8MBcTsSjsMiBIKoaSvp037BL7TEWdfUxSKelfq +V7ZAmPHPP6Ar5O0tQ/uxoWpPsfZq0z/cci7X5W43SPzUO01HYSb2Kg7GSoQEILBeTygeN78 Zdm/kXMrPN5QYTt6nH3DU= X-Talos-CUID: =?us-ascii?q?9a23=3A7vZnRmpD88KPB1oQ8n7hCpfmUdJ5Slba4WjOH0K?= =?us-ascii?q?1GGJ2UKCrGA+95Ioxxg=3D=3D?= X-Talos-MUID: 9a23:qqYTNAY+4qqcguBT6B7rg2BBZcBTyo+TK2IIoK5YgpO9Onkl X-IronPort-AV: E=Sophos;i="6.00,261,1681185600"; d="scan'208";a="113686095" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=ZS0JJXPNRvaxgmj2URS2ceSQH/59eCUTCNYW+5trYmgasLLiYJAzkjc6A4NKBGKbbq+12OUE8+mrewBZioQSmdzif3sUBmkTvkVNvuxeFcE4VG2CpjZNrHvThtehQCBfe/B8kHziN9JT/hppeWHXiexdimSdgVMYKdMo6CSbpiWkfTSYZHYlVqMA64ZkTFkl05tixlgFynhU7EwXV3ZlmcVttFytwj8cKDY8XUeww6gfMRLaswo8icNo/j8ehcg40ZPClUIT5hmTUjI+vKlAVur6EYKkhiV2L0FFQIIRS1ON3faoZTnJTp+IjapRXkdctlKjLXGXdf7RjMpvSktApA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=hFoiIgauJUdisXUuZZGm5A44v/YRCSGze0db1HjeRJQ=; b=RsQWDI49pAVmjDsIQYpHwSim6lz9n5RQQOgmUucrZZnVJLl+bhDyv0iNYAas3fYYce87zmOFZwAY8O2SzW9nnXFG003Mu07QloqBy3v3QJ4ORWx0Hl3GnPSiR3gqntrrcoGv9f0WIZsV93a+SUZzOJ0sT2iJz0xKH/qjQmeLy9RYcFUKnUoYDxpQPXAypvsNnHIghbTy/0OHjiWoR5lvsBrjL1wvBKFEhw/94kfH58ZJQv41KJ5v5+x3j35AG41EZI5HzsP3NsF+EZkjfX1HgleLGQvZm8PhbcRUhQYmKiFi5BpZEhGFnFgLmQwHBxQE9BfAzsnoV/6BMD+I6wdgbA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=hFoiIgauJUdisXUuZZGm5A44v/YRCSGze0db1HjeRJQ=; b=iPL6+LP9Dem00Yd0bGHQx7sNFsqkXpfsNX+GzBBmAHnsPb02gRKUCpxz4gHkj+teFe9FONVEO9Kjq0hzUkb5U/YNPObcpveoRFtCI00W8BwOEu41WlFg1dZ8oM+7t6QRi0nnybBfakub2XJzqs1LkjXYKJMDMi2nX/EHKRaZtZE= From: Per Bilse To: Andy Lutomirski , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , the arch/x86 maintainers , "H. Peter Anvin" , Juergen Gross , Stefano Stabellini , Oleksandr Tyshchenko , Linux Kernel Mailing List , "moderated list:XEN HYPERVISOR INTERFACE" Subject: Re: [PATCH] Updates to Xen hypercall preemption Thread-Topic: [PATCH] Updates to Xen hypercall preemption Thread-Index: AQHZpFMl91hHG7ZDuUq21h7QjP0mVK+VceeAgAAsYgA= Date: Wed, 21 Jun 2023 19:05:41 +0000 Message-ID: <333138f8-9fbe-be5b-d125-12c9d3ed3eda@citrix.com> References: <20230621151442.2152425-1-per.bilse@citrix.com> <7fbad052-4c4a-4a49-913d-ea836c180dc2@app.fastmail.com> In-Reply-To: <7fbad052-4c4a-4a49-913d-ea836c180dc2@app.fastmail.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: SA2PR03MB5881:EE_|CO1PR03MB5907:EE_ x-ms-office365-filtering-correlation-id: 6ac3a148-dbf4-4a49-820a-08db728a822d x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: oqn0/hgFPIxzftczs1sbE5/BA0cQbMNjYrmEWqSRRxl7GqQhrPFxXyv6Y67laauCCTdwpMl54tORIrepRUf+xRMqoXABjlXPYkqosjbcuucJvVHimQZAPDQfyo86IS5RjtCnQ5mWEG+G+1dXYCS4qX9N5Ao8UpXmOKh1ZjhaKvx5j7o83a1qgHmIUdskNA4Safz4kaX+NXcaoPxwzEn1zskjP3nvizZk9r6X6RY0oIUcnKHVy39zzY0YCd+Vrugc6BN6xFz1B5isSTyd57KKCtf8A5dJVijPatEC3d39zcwXPuuXZ7OH/LERcnXFFOHdS3YgqekucMeTKneFwbMtN3+mVQjvL4MWkr8acu7E2wS422QKcubVJIzOgpcMMkGUgPtozcM/a554t1JUJFj3HnSpzapoatHZKT4PXVcy3nHAGXRPoDcA9m/ipi2Y4U73fNIL5VPKRBMjT7sVpMCfInGSuGg5t9IXnuHfOKUoZTugDt/0Bk6ClktZ4cKgcT8K41UnitPk2X93QMgU5uR7GbweRg3kpRe+hkVNuqtIXuQ0fd7DEcadYrSlhx1vkDLe2RWv3hl8YnL61Lyk1TrVR3YK+lnaQgPHEuhzFI2ldGLnXYWvh5XI6oeFYKBpVlJ0c+i+gXySPMDkUbliqwrWczdVYPzdDK1AztCgIyuQYJo= x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SA2PR03MB5881.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(366004)(39860400002)(136003)(396003)(346002)(376002)(451199021)(31686004)(76116006)(478600001)(66446008)(64756008)(66556008)(66946007)(66476007)(38070700005)(71200400001)(36756003)(91956017)(110136005)(316002)(86362001)(31696002)(6506007)(6512007)(186003)(2616005)(26005)(6486002)(921005)(122000001)(38100700002)(55236004)(53546011)(82960400001)(8936002)(8676002)(41300700001)(2906002)(83380400001)(5660300002)(7416002)(45980500001);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?WjVTalRSNTRWTlY3YjJvNTZ0bzlybmp3K1NoZk41UklaMTZvSEhYVWMvaEtP?= =?utf-8?B?Z20xbGs5dlk3ZHhiak5BVXlJTE1LNUtpTDh1VWNoZVJoVlBYcDVwM3VTWW0x?= =?utf-8?B?NEkrUEh6S1ZPaHA4ZE10cmwwK05BS3ozL2YyR1hLNjdJZ2FkMHNPMk8rSlY5?= =?utf-8?B?VDA3dmtWWjZ4alRicjkrWHZWWG5XUk5uUlh1cjREWlQwQmZhNlY1ZkxZQ0Yz?= =?utf-8?B?VHlIZzZEVnVFSGV5WEtCQ2dDeGh4aE5va0pLejhIRXc2QkJsUy9PSGxhV2dh?= =?utf-8?B?Vy9vWDJlQ1k0RE4vS3VkL2VXVk40OFBLK21rWE5TOTA3V1JZYXp4Vmo3TmdS?= =?utf-8?B?bHFSaGhOdVB6N3ZvSWZYMzN6Z1E4NXEvemsyWVBvVEV2UC9xdVhmK3dDNnRD?= =?utf-8?B?Ujg0eEZnMFJtMXd4bmpLNXFKYVJvTkc3WXdFaUFWeGtQdkpxbU9LMHp2SHlh?= =?utf-8?B?TTl1OWtnelg2STh1aVY0TGRiOTlBZ1lNZXlPUUVNWWcwUlpBdTM4QlZLVTdG?= =?utf-8?B?cUUrRi9zcC9ST3hmMjRkU3V1dXJ4L09LOFovbndiT1gyeWpkSGJSMXcyQUdL?= =?utf-8?B?YStRNjdoeURUTnpGZk9ZejIydWdubnE2OG0zUEx4d252YVdNeFdRVnYraDZK?= =?utf-8?B?cGk5dW9kWmFwbnZwUGU0OGFwdzFJM3pwZGxjTEdVRzBDL0xZOXMrblF3cnhU?= =?utf-8?B?S1d0eFA3VERZbTg4K1ovSG93OXdSbUpqbFg5Yk9NTS95RTdvMVljdjFXM09z?= =?utf-8?B?UUhkQkVKMlh6Kzlpakt3M29Ucmh0QXR5cDJYK240bENxbk9zaFBNZE5IYzFi?= =?utf-8?B?cDJBNXhMakhvdlJxVm52OG4yNEZHRGlwcUhlSnlkS3B2TU9iamtvYnZqMXB5?= =?utf-8?B?YVlKN2xzYm9TdFRTZklNZTRvTVA4Z3kxbTlPVHRSV2NnU0tURXJDU2hzVHhH?= =?utf-8?B?VmF2ck15anRGMnpoVDFmRE90TWFJd1ZFYVBiOG5wcWVLSTlKMFZkbHZ3Ukxx?= =?utf-8?B?NXlFMzJQczgwWmFGS2R6bGVzZ2lYcFBTSk5zK28xUDN6TjFDNXh3L1pMSXYr?= =?utf-8?B?TmhzVGgrLzlOdDhqWHdVMVJrVmg1ZjlPZUJIWkNRcFMxY2lMcjc0VVRIQ2ti?= =?utf-8?B?WWNEWU1HWmZIUUNyZUxpTStpcVE3RnQ3eWY5TGV0YmEzSXZZOG9RV0R3akZY?= =?utf-8?B?WVpSMU0wRlAxMWI5RWE1a2F1NE4wM3IvOUEvSHdiVmZIME51UDk3cDNBRkp2?= =?utf-8?B?RDVZRlZ4ekFsaDRmVExpeUwxaVFmdkRSbVltUFBKUWs5VnRNZmdNckJSdFlv?= =?utf-8?B?QlhGMFFvb1RIM3R6ZDM1c0xHWXBHTCtudGplL2k0RHp3SXJyQUl1YzNVcTdD?= =?utf-8?B?OTkxN3ZWdS9VQklIRGpSVGI3ZkVSa1QySFpma1VJQThiY2JubWxqYzBnWVYx?= =?utf-8?B?bU50U1pYMEljOXBoSW96N3prTk9Wb3M4R0plejl4aUhjdDJHOTBYS3RDM0hD?= =?utf-8?B?WEZ3TW1BTWFibU05SmtrRC9ubk9MNkZaMDJlS29SWG5uUndhaG90em1aVFJ0?= =?utf-8?B?b1g1a3FpRVlXUkk0Vk9QVUxzSzA4RVNjV05MU3JXNkFESkh1M25zNTM1aVRq?= =?utf-8?B?NitFNGlnNWRIMlA2aFRkVld3VmdNRVh6QUlWQ3o4QlVaV2txUHJtTy9tdnNk?= =?utf-8?B?cE92MGZ4MTUycVUvRmdPOUtjL2ZxNlVicnRYOWd5dk1JTEVhYURRMWxVNFp3?= =?utf-8?B?OEdVZC9kUExRZEpndnFqNDlKQjFzcDR3WlVJRlRhMldBN2p3b0p6NVRtVXdi?= =?utf-8?B?a2xvSkgyYWF2V2ZpWXBaYVBNVWhKNE1XSXhjZXBtVjNUWmhnaUJRc0ZzRjNy?= =?utf-8?B?Mk5GREdQZENwRGd6NW1mMkJvR2d3Q0hIZGlyaGlLeDFqc2dVTDBYR2s0UHFD?= =?utf-8?B?MWpUN1BqYjM4cSt1UVZDK3VhWkR0SGxzWnlmMmRhM3pzdFpScFZhQVpId3Bx?= =?utf-8?B?cERkeDZxbDZzYnFScjE1WWhIVkhpQ1YrZ2VhUVo4OUkvZjBxQ0kvSHE0N1RM?= =?utf-8?B?ZURhZDJZTlJwbmdBa25Xcnk0dDhlNEx4bEpKTVZLSWJUdW9oVTRCVVN5NThy?= =?utf-8?Q?mPo4=3D?= Content-Type: text/plain; charset="utf-8" Content-ID: <1E9F563EEAC37447B8F8F2DC6C106FA5@namprd03.prod.outlook.com> Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: =?utf-8?B?RE1nTndVWnRGcUx0dnd6Z1pWMVh3R3FWY1dpdzZUL3BTMktTYzRoSVBPUlg4?= =?utf-8?B?SWZ6RlozSHdOUGxzYlJFWkZmb0RjOGVYQnlTeDEyc3BsVG4yWStJd0VkcVVq?= =?utf-8?B?T2x2OG8zVVpDQkE3SGNxOFdYejJybzhNeTRzT2xoTWRxcHc1SGFaWmVGdURK?= =?utf-8?B?YWpETkViRTVUY3B2Y1ptTWl5MkxoNThNRWM4UVhWWWVibG9IWFN4N3liUXox?= =?utf-8?B?VmxveEJGT0tSL1JsbjBRWHZsS05FdkdWRWo4UEVYYkdHeFN3akc1dHJKUXZE?= =?utf-8?B?QzVZSSthQ3Nick9HT2pZVnNHc3YxZ3Z6bnYyM3BXcVlzKzBPUVJjNlF5QmJk?= =?utf-8?B?R1BhTE5UU0hhRTBLbUoxaGQ0UVZsUlJNeDRzKytmU3owS1p5N3l5ZFI0Snlj?= =?utf-8?B?b1Q5aGhCaVFieGMzU3VMR0xNMkE1WmRIaHFNTzVjOG12SGVsQW5xRjVBS0dE?= =?utf-8?B?dmdmRzRPQ0RsQTJibURIWERUVTRBUXBwVkEwb09LNEtqdVp0ZmVBVWE2R1pi?= =?utf-8?B?eUVkK2orcWt0RDhYdkN2WjUyVWhmZnBZeW1OUXJvZzNVdzRva3QyTFRjUmlm?= =?utf-8?B?dGNsaE9PbnhmeWRHTzhJV2xmbDR2eVdHMG00eTlWSW5SeU9tcEZXVFVUZ3FG?= =?utf-8?B?Q25aWGNUL0U0NUxtZmhUS0hqSlJrTGVFaE51WW1NWGxsMWZScHkxMXRURXJR?= =?utf-8?B?Smo2bDFObDFKSXNJMmtXc1ZoNjNacXBMWUVjL2F6NFVPVFN1Y1FCWjJIOWFt?= =?utf-8?B?VzVtL3ZzeFg0T3hOc2N1NHdXSHFFamlRdDFvb3Q1b3ZGT20xMGdYOXNxVDRL?= =?utf-8?B?ZytJN1RiQ2RSTC9iK0JWVlQzbURTUEk3c3haK0xYdkQreVpYUFNFamd1aGlu?= =?utf-8?B?b1hOZTJ4aHZ5bDVtU2V0UFczeThFYlhSYmprcHMzUkR2MVk3dWt3R045Wm5R?= =?utf-8?B?NkxWVVR6aEVrTGk4a1ltakx2VXZQbW15bEZpZnhBZVp6UFVWWHNPbWt1K1FN?= =?utf-8?B?d0REOGZjSmVpYmswUHllUUxUWkhoODVWZXJsKzBnYldxSXQrbk9iL0ZEZTZ1?= =?utf-8?B?Rkoyb3JCRlFyVnB0enlKYUlGRlZoVG1VSWhQNE8wNUZ4b2pCaUlKODc4SUtH?= =?utf-8?B?bUpPaitueWF2dVJUU2g4cTZ3RU5WMHRPS0dpSU9OaWJGQWNsNFNiN2xVSmUw?= =?utf-8?B?aWxKR1h5V2JQVHpHL0NjUU5zZmV1LzJoK1Z3QWYzWlhZODhzenNjbkdhTGJF?= =?utf-8?B?WlYxeGRaNzN6UDNaZHhyb2JPOGR3T1B5Tm1xQ1FndmlEcGRFYXQrOTV5R2RD?= =?utf-8?B?MmczdGFxdExrZVdQYnlGNTJBTENNWnJ0a0xFc01YMTM2NjdsRktaMS91Wi85?= =?utf-8?B?dnpwUE9IWkdrYm1wSjV0U0I4dmxhVTdFMnpScTV2WEJCTis3NlM4T2Y1eFBi?= =?utf-8?Q?ZkeWDciq?= X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: SA2PR03MB5881.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 6ac3a148-dbf4-4a49-820a-08db728a822d X-MS-Exchange-CrossTenant-originalarrivaltime: 21 Jun 2023 19:05:41.7955 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: H7exsJgDSmvhk4rJRtlPPtVx5ohsFM6H5aBRWwCyj3j+5K9BYEmQ/pTrbEibXmtKO8eWKhTAegKhu49vF5cH+g== X-MS-Exchange-Transport-CrossTenantHeadersStamped: CO1PR03MB5907 T24gNi8yMS8yMDIzIDU6MjcgUE0sIEFuZHkgTHV0b21pcnNraSB3cm90ZToNCj4gVGhpcyBjb2Rl IGlzIGEgaG9ycmlibGUgbWVzcywgd2l0aCBhbmQgd2l0aG91dCB5b3VyIHBhdGNoZXMuICBJIHRo aW5rIHRoYXQsIGlmIHRoaXMgd2VyZSBuZXcsIHRoZXJlJ3Mgbm8gd2F5IGl0IHdvdWxkIG1ha2Ug aXQgaW4gdG8gdGhlIGtlcm5lbC4NCg0KSGkgQW5keSwgYW5kIG1hbnkgdGhhbmtzIGZvciB5b3Vy IGZyYW5rIGFzc2Vzc21lbnRzLiAgR2VuZXJhbGx5LCB0aGlzDQppcyBpbmRlZWQgc29tZXdoYXQg b2xkIGNvZGUsIGZpcnN0IGludHJvZHVjZWQgaW4gMjAxNSBieSB3YXkgb2YgY29tbWl0DQpmZGZk ODExZGRkZTMuICBUaGVyZSdzIG1vcmUgaW5mb3JtYXRpb24gaW4gdGhlIG5vdGVzIHRvIHRoYXQs IGFuZCBpdCdzDQptYXliZSB3b3J0aCBub3RpbmcgdGhhdCB3ZSdyZSBub3QgdHJ5aW5nIHRvIGlu dHJvZHVjZSBhbnl0aGluZyBuZXcsDQptZXJlbHkgZml4IHdoYXQgdmFyaW91cyBjb21taXRzIHNp bmNlIHRoZW4gaGF2ZSBicm9rZW4uDQoNCj4gSSBwcm9wb3NlIG9uZSBvZiB0d28gcmF0aGVyIHJh ZGljYWwgY2hhbmdlczoNCj4gDQo+IDEuIChwcmVmZXJyZWQpIEp1c3QgZGVsZXRlIGFsbCBvZiBp dCBhbmQgbWFrZSBzdXBwb3J0IGZvciBkb20wIHJlcXVpcmUgZWl0aGVyIGZ1bGwgb3IgZHluYW1p YyBwcmVlbXB0LCBhbmQgbWFrZSBhIGR5bmFtaWMgcHJlZW1wdCBrZXJuZWwgYm9vdGluZyBhcyBk b20wIHJ1biBhcyBmdWxsIHByZWVtcHQuDQoNClBlcnNvbmFsbHkgSSB0aGluayB0aGF0J3MgYSBn b29kIGlkZWE7IGEgbWFjaGluZSBzbyBsaW1pdGVkIGluIHJlc291cmNlcw0KdGhhdCBhIGZ1bGx5 IHByZWVtcHRpYmxlIGRvbTAga2VybmVsIHdvdWxkIGJlIGEgcHJvYmxlbSB3b3VsZG4ndCB3b3Jr IGFzDQphIFhlbiBzZXJ2ZXIgYW55d2F5LiAgSGF2aW5nIHNhaWQgdGhhdCwgd2hhdCB0byBkbyBh Ym91dCB0aGlzIGlzbid0DQpyZWFsbHkgaW4gbXkgaGFuZHM7IHRoZSBpc3N1ZXMgY2FtZSB0byBs aWdodCBiZWNhdXNlIHRoZSBrZXJuZWwgZm9yDQpDaXRyaXgncyBYZW5TZXJ2ZXIgcHJvZHVjdCBp cyBiZWluZyB1cGdyYWRlZCwgYW5kIGl0IHdhcyBjb25zaWRlcmVkIGluDQpldmVyeWJvZHkncyBp bnRlcmVzdCB0byB1cHN0cmVhbSB0aGUgZml4ZXMuICBJJ2xsIHNlZSB3aGF0IEkgY2FuIGRvLg0K DQpCZXN0LA0KDQogICAtLSBQZXINCg0K From xen-devel-bounces@lists.xenproject.org Wed Jun 21 19:19:45 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 19:19:45 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553119.863488 (Exim 4.92) (envelope-from ) id 1qC3MY-0000tL-DK; Wed, 21 Jun 2023 19:19:30 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553119.863488; Wed, 21 Jun 2023 19:19:30 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC3MY-0000tE-8i; Wed, 21 Jun 2023 19:19:30 +0000 Received: by outflank-mailman (input) for mailman id 553119; Wed, 21 Jun 2023 19:19:28 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC3MW-0000t7-Is for xen-devel@lists.xenproject.org; Wed, 21 Jun 2023 19:19:28 +0000 Received: from esa3.hc3370-68.iphmx.com (esa3.hc3370-68.iphmx.com [216.71.145.155]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 88cdbab9-1068-11ee-b237-6b7b168915f2; Wed, 21 Jun 2023 21:19:26 +0200 (CEST) Received: from mail-dm6nam11lp2174.outbound.protection.outlook.com (HELO NAM11-DM6-obe.outbound.protection.outlook.com) ([104.47.57.174]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 21 Jun 2023 15:19:23 -0400 Received: from SA2PR03MB5881.namprd03.prod.outlook.com (2603:10b6:806:11d::18) by SJ0PR03MB7049.namprd03.prod.outlook.com (2603:10b6:a03:4ee::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.35; Wed, 21 Jun 2023 19:19:21 +0000 Received: from SA2PR03MB5881.namprd03.prod.outlook.com ([fe80::6646:2936:9a61:97b4]) by SA2PR03MB5881.namprd03.prod.outlook.com ([fe80::6646:2936:9a61:97b4%4]) with mapi id 15.20.6521.023; Wed, 21 Jun 2023 19:19:21 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 88cdbab9-1068-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1687375166; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-id:content-transfer-encoding: mime-version; bh=gL5JnXuT2ZqtMdc2o/AZh0m3G5nUqpWXd+Ha+AGpDMM=; b=A/KXK50lU0ng0v3Sp6UxwaIOy7dASH0jkfH1XbmMbz/9F9uDqth81Rbj 7EqmYGcwteja6FNLdZ7eP47HoWBJh5tkkrkbtveKqP65CjBlc1SqMs9wR 4TM0nSFzTv8NWLLerlotJ896BnK1Otrjzi8fKBRQwG4AmWbnVRieZ6ghg I=; X-IronPort-RemoteIP: 104.47.57.174 X-IronPort-MID: 113687304 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:POlBcaMkSy8x4v3vrR2hl8FynXyQoLVcMsEvi/4bfWQNrUpz0TUPn GJJXm2PPq7YNmX3KtxwaNnl90xQu8Tcz9diHAto+SlhQUwRpJueD7x1DKtS0wC6dZSfER09v 63yTvGacajYm1eF/k/F3oDJ9CU6jufQAOKnUoYoAwgpLSd8UiAtlBl/rOAwh49skLCRDhiE/ Nj/uKUzAnf8s9JPGjxSs/rrRC9H5qyo42tG5AVmOZingXeF/5UrJMNHTU2OByOQrrl8RoaSW +vFxbelyWLVlz9F5gSNy+uTnuUiG9Y+DCDW4pZkc/HKbitq/0Te5p0TJvsEAXq7vh3S9zxHJ HehgrTrIeshFvWkdO3wyHC0GQkmVUFN0OevzXRSLaV/ZqAJGpfh66wGMa04AWEX0rctQj5x9 eY3EQEyZ0ykv7u34oyAGvY506zPLOGzVG8ekldJ6GiASNoDH9XESaiM4sJE1jAtgMwIBezZe 8cSdTtoalLHfgFLPVAUTpk5mY9EhFGmK2Ee9A3T+PVxujePpOBy+OGF3N79QtGQA+9Uml2Vj mnH4374ElcRM9n3JT+tqyv32L+QxnunMG4UPLO20d5MhEaX/VMeIgMkWAak/6mwgVHrDrqzL GRRoELCt5Ma7EG3Q8Pvdxy+rmSNshMVV5xXCeJSwAWQ1q384AuDAGUACDlbZ7QOqMAyVRQu1 1mUg8nuAz1/9rGYIVqY97GbqhuoNCQVJHNEbigBJSMP+/HqpIA+iEKJQtsLOKK8kNCzGTj22 D2MhCw/gagDy88Ny6i/u1vAhlqEtsiXZg04/APaWiSi9AwRTI69bqS6+ETc97BLK4PxZluOp n8fgOCF8fsDS5qKkUSlW/4RFbuk4/KENjz0glN1GZQlsTO39BaLeoRd4yp3IktzBdoVYj/iY ELVugR56YdaOT2haqofS4awDdk6iKvtD9LoUtjKYddUJJt8bgmK+Gdpf0H493Dglg0gnL8yP b+fcN2wFjAKBKJ/1j20SuwBl7gxyUgDKXj7QJn6y1Gr1OSYbXvMELMdagLRMqY+8b+OpxjT/ 5BHLcyWxh5DUer4JC7K7YoUKlNMJn8+bXzrl/Fqmie4ClIOMAkc5zX5m9vNp6QNc3xpq9r1 IronPort-HdrOrdr: A9a23:fl9ZhaDJL+nqnAflHelW55DYdb4zR+YMi2TDt3oddfWaSKylfq GV7ZAmPHrP4gr5N0tOpTntAse9qBDnhPtICOsqTNSftWDd0QPFEGgL1+DfKlbbak/DH4BmtJ uJc8JFeaDN5VoRt7eH3OFveexQv+Vu88qT9JnjJ28Gd3AMV0n5hT0JcTpyFCdNNW97LKt8Lr WwzOxdqQGtfHwGB/7LfEXsD4D41qT2fIuNW29/OyIa X-Talos-CUID: 9a23:pekKj2F5Ss+ntjkRqmI2rg1LJcA/XUTs836MBHfhCERXc+2KHAo= X-Talos-MUID: 9a23:pklCBAos9Hgqd9e5z9sezz9sE+dO57+qM38Au4s0tpSba3x5MCjI2Q== X-IronPort-AV: E=Sophos;i="6.00,261,1681185600"; d="scan'208";a="113687304" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=YL1S6VbhNm8HdJs9swv3lXbhqGBlFN4YHsMA2c09CslXexHYTaMJexRX+degl3F4ofg5EDAdTDEYMGGKYAVk1m+Xyx+QcWyBce5k/6QR1C1O+UVMhrmHAY28o9aVfFHGEeaShWoeSWBVhKmE8Rf7g16nzlmXbPMWGzM5lg11Z5AEGrUdH9rldeSekR6Zj9nF2d7emBQBoftbUlGiYRzHfMNN6D+PaqVslOwV9A7DNCDSeP92/m2iSfeyfOLY3KpNMbvojOXyM1HzKbPD8iYD0HPBf94Y4geDbVYyfnzQ2JCxXGfEWair3C3KsaDf9eTKwAvhGkkSY7khb+uOycnebw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=gL5JnXuT2ZqtMdc2o/AZh0m3G5nUqpWXd+Ha+AGpDMM=; b=KGMbPmZtYqy93+cTWAf3i0awPyez+OmW+KCUrTbwZoFYP48RAknVbe7X0KocvpHcgJFvhj6e2lTmzZTBYQU7LZxBhCrsIu9edk64rdftdt5uZMad7fJ3tHY9G8N6PSydyiMebpAk07fItClyACQc3FCZ6V6L34QZ6Li9Mll1tlWuV5NYG0CrBmvDL7KVeQ7KAD0BdrXtSfYGGPQhloilo8ezUJIbOZVuYw08UUKnrlYjFgBDh0nbqWewXXlEgDbgDTCbt+Cc31zRoeGbtuXW8BdJor7rMbn8c7ozrnYnHqfc7Pt7+BrwrJay4eyrp4wB8+UEz5IEcHbB1UVEuEoC7A== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=gL5JnXuT2ZqtMdc2o/AZh0m3G5nUqpWXd+Ha+AGpDMM=; b=k5waBjqnemZj+IwB4zvGnfRvZ+pdxUmWuEq+hSTmgjHm0kwoaeBpmfb6TOrUpwvOJD9Wuk2gruVVOyK6zr49L4V84LNJTwbP/yq/N0RT4uvzf5BwzZQQ/CcSM232DUOB0tABzBhMiDrFGoArW9h+VoIAZDAOBX9HtwiJ8Tolbkc= From: Per Bilse To: Peter Zijlstra CC: Andy Lutomirski , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , "maintainer:X86 ARCHITECTURE (32-BIT AND 64-BIT)" , "H. Peter Anvin" , Juergen Gross , Stefano Stabellini , Oleksandr Tyshchenko , "open list:X86 ENTRY CODE" , "moderated list:XEN HYPERVISOR INTERFACE" Subject: Re: [PATCH] Updates to Xen hypercall preemption Thread-Topic: [PATCH] Updates to Xen hypercall preemption Thread-Index: AQHZpFMl91hHG7ZDuUq21h7QjP0mVK+VdZEAgAAsiIA= Date: Wed, 21 Jun 2023 19:19:21 +0000 Message-ID: <6523f3e2-8dfc-c2dd-6d14-9e0c3ac93cc8@citrix.com> References: <20230621151442.2152425-1-per.bilse@citrix.com> <20230621164038.GM2053369@hirez.programming.kicks-ass.net> In-Reply-To: <20230621164038.GM2053369@hirez.programming.kicks-ass.net> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: SA2PR03MB5881:EE_|SJ0PR03MB7049:EE_ x-ms-office365-filtering-correlation-id: a7795d1e-4117-4351-a644-08db728c6aa6 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: n3Fsqp6uHG/5Rn4FTHaCKAFieZk5RVbQMfV2CuyPVmRDU8n0SpJ8uo0HthHCK4ALk5CzX6lOy2xCgIAVJq23sFwFoTM76+bZNOF7XUooeIEuJ4d91cOYChO2sHvGNiQ8HBa3qZky8u9Nr4L4KhcQp7Ugb64V9TF706t8ScxtlzLMtVc3ipCkrV+Lkaz7OmnQaG1+JKycLPO/7po8bJz5g0QvBeXzBjf5lF7nR54ouMVYszwIwlA6bzGOVZs4m/mOyvX19J71zjhuQsmren83uNko71R4+S4EzUoQo4cMpgrv6qCZkF4bZBlRbwd5VgIEzX7tjiUI+kt358ULQ4n0JGXjfcnuV3qjrsgurs/WKCLXv7Y8EQP8ND1YbVnSY7IKHEnLqbrMC/DdNrj+EDtPFezz/yHRT8FWRtG0kppYBtQvI2n9q5p6Zyz+fiBzYprp0nTIX+ZaoUxvzbhocYGFbQzAsA13yUmm5VZ1dxG/ZxLLp2hIOs80Hk/bdOPjf6F7bvRA4ByovWZUBWqKXLTI3bDJk++uOdbWRwaS6/aJ4athWrEVYxQ3BdUp3joUcI0n8HZ4PJRg3FlCDc+lNZx43qVdFOKgs95FMzdbAoJhBt8VWtv9rDJpi/yRO/WwzEVv+6wuat9Yz6aYA6RqusgJZQ== x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SA2PR03MB5881.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(346002)(376002)(136003)(396003)(366004)(451199021)(4326008)(91956017)(478600001)(76116006)(71200400001)(55236004)(26005)(6506007)(53546011)(6512007)(54906003)(6486002)(186003)(36756003)(15650500001)(2906002)(41300700001)(8676002)(7416002)(8936002)(6916009)(66476007)(66446008)(66556008)(64756008)(66946007)(5660300002)(31696002)(83380400001)(38100700002)(86362001)(122000001)(316002)(82960400001)(31686004)(38070700005)(2616005)(45980500001);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?dkV4TWd0QzBZcVZqVlpvNFQzV1JXZndvcTNFbEFwTm5ubi9mS1pINHBGQkFh?= =?utf-8?B?dHRXZU5DRE1MS0IzdlJlVUdXQk1LOGVrQ0JIV1Q5c0tueGgvSFRzZUxNUEg0?= =?utf-8?B?aXBMVENsUnlpbHRxdUVoNFpkR2pMT3luM05KWUFhM2ZOZUhOc1M2NCt6eUlk?= =?utf-8?B?VnNuVnVKS0hFVVFMVHpXUXgrWXI2ZEZXNkpDamE4TzlqWDlMUWlDNlpmaTFv?= =?utf-8?B?TjRGZjZvV3dzUnUyeUJBVXNXWjVtYkNUNFBYeWZzbVUzNjRwNXRFeW1HMGhx?= =?utf-8?B?MVZyYXpaSlhQMFU3NGM1VWQzSEdoV1ZYcFhqZk5PVnJIc3dmcjRzbVRDNWRB?= =?utf-8?B?eEVJSnB0Z2M1cys1TW0zVWJKSkRBQmtCeGdqWHA2dkdXR1Q0bmc5b1dpQXlS?= =?utf-8?B?ODFNZkl5ZkQ5YzNJSFVwSUtBT1ZNM0VsbVRYQis5SU1KUFplSXdSVHhxVEha?= =?utf-8?B?Y3JhZmNJUndYN2lCeDJkN2xxNy9NY1BIMEFvTWlUNGxpdlBia0FMdWRSYkUx?= =?utf-8?B?ZmdVSVF4SmFuN0FVVjNBQzhjaDRleXVVU0lFY2tJYm9JZUhFV2x1UTFqbmVO?= =?utf-8?B?YWZXYUhUZHNzTjBlb211SHc5dFNJdkgvTG5icUcrdmFZcFcrRHVOMElvSjRu?= =?utf-8?B?dzlYQ25UZlBIUkVtamlZWXExWDRMS1dGa1JIUnloL0Iya1BGcHNXV2x6ajVi?= =?utf-8?B?T3drK1gzVGhhMzlRNVQ5cGs0a2lsMEJWSkpFeUJLbjA2K2VwOTdYZVJxS05m?= =?utf-8?B?KzlINk9DMDlKRVZ5ZmlUcU9ONGZsS1NBOEVzajZDOXFkNVhZRWU1Q0JMQTFp?= =?utf-8?B?Nm5iMDh2MU43aFd3RTF1ZHJPbmxtTEZGd1BwTnVHc3BGTFpaMllMZU5UaXJl?= =?utf-8?B?b1ZCRm1RQkhKS0Z4eWFyekpqY0x3ekJhTXBQSDl2ZDkzcGRBNENTTnhEc25O?= =?utf-8?B?c3JldW80bFFrTExuYld1d3pHOTF1TWlicTJtOW8yVzdLTk9kSERXVWh4TXpK?= =?utf-8?B?Q3lEMXFIbXJVQWYyOUNGL3M5RnVJNW8zc0J5VkI0NGZpS2cyazdtOStqcGF4?= =?utf-8?B?MHFBbTFOL1hQcmFmeUpLYWJxWElpeXJjYVY5d2kwZHhyNVlCOW5NcmhDRUhF?= =?utf-8?B?Y3lhc2FaQXNVNlAybjNHTmtCYmo5bXVTaU9mS0hKSzlrNlliTW1VSVRydXl0?= =?utf-8?B?ekdDMk80VDA4YmZyUWFmcndLaTN3ZysyMVZ1NkFuQlFOTElJekhrcjROUWND?= =?utf-8?B?RHgxd0xaRVo1bWVibFdsVXNWeDlENGd2T29DUWt1enlVTlhsMnYxSk1tZ0pF?= =?utf-8?B?NVUwU1I5dEwvYi80cnpscEw1a1B0Rk9IMnhzVjlPbFhOVm1hRXQ5U3F3QlQ5?= =?utf-8?B?c2VFWGViWmZWR1dBNnlBbkxQWUkyS0x1R3BqY2RXUW16eGRPc3lhdDJITGRE?= =?utf-8?B?eHViSXV3YUNXc1hVSng3YTZMUzhmSTV4SDJGL3lRUDhvTTNSdjB4SzNoTmtC?= =?utf-8?B?NVJDclBGQlFWZjNXTHdrY01uRFNJWkpTQldPdkJwdWt5Q04xMjlQVm1ncDdw?= =?utf-8?B?N0FOQnl0MklVNzlpK0xHbmlNazF4NXcxQytUM1p4bHBkQWJNNjhkdW9Qa0Ev?= =?utf-8?B?d2lLd0VXb3RhQ0JGMURwZ2pMMUtkeS83ZHFrd1phNzdDZm9xWm12ZE1BTXVB?= =?utf-8?B?TkFCTldkZHJIandrbDFIWm1BdHJkdDluMFNvcHZ6WnVSb0VwbFZocytDc1pM?= =?utf-8?B?cGI4WGt2Q1cwOFErbXJ6MmVPd3JYOXBLQ2xsMlhNMEZacEEwTGdSRVVVUzI2?= =?utf-8?B?MVB2VGkvczY5enZzWXJUZm5TR002L2ZqU3htWDFDbkFiVFl6ZnV0ZjhZNitn?= =?utf-8?B?OUg2NjlGcUhGczRZSzBRcERwK2t3Tk43Z0FWOVdUa015T1JidGlGa21XWEVN?= =?utf-8?B?Uk55dHJRdE5STlFScmxuU2RuNUtNNlR1NHJkbzZHQUxmdWpiR2ZmYWFPYVc1?= =?utf-8?B?UFpQQ0RJS1RrMzVOK2xJdkZ3Mk9XVTc3UUFkczhGQ2lWY3AzM0RLUytHMU9C?= =?utf-8?B?RDQyLzA1WHBhS0Z6dEhUTU0xc00wNXVmV21jc2phN0JpNGJ2WCttbkIvN1JG?= =?utf-8?Q?3Coo=3D?= Content-Type: text/plain; charset="utf-8" Content-ID: <279132CBC8BDC94493A75CDF45FAB55A@namprd03.prod.outlook.com> Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: =?utf-8?B?VXNab1BnYm5FK3IyVWpGWWxadEg2bmJYdkFzekhzYzRiVVAvYk9KUCtwS2Jn?= =?utf-8?B?UVlVbW5rQmk5MXBUZDVkbUtHejUwd0trRFZHTTcyQlA3Z0YyK0lMa3ducjFm?= =?utf-8?B?ckJsSHRUTjlqOUN1cWpwemlpOUJWdzNadzlzRm5Qd1FNTGRIcWZmNHloRGVj?= =?utf-8?B?YVFxdkNyQ1FGMXJzUGFmZklFWTRrU3BydWltRi85c1lPaTV3OHl6UkZMWVlO?= =?utf-8?B?UmtDUHdiQkFZSVBqQjZGTGhEQW5EV0Q2MEljYWMyWjV2aUlpcnJDbzBEQ01M?= =?utf-8?B?Mmg0VTlwb2ZRQnUxNmswSHB4TVFQeElJU3UrVHA1Mzk3WnNlZjV4VlZRQ2lS?= =?utf-8?B?T1BheHlQS1llMUxxU0dRaFU1RHU0bWNkSWNGSGZqVGtFdjZiek03WjhWMnNM?= =?utf-8?B?aXR4TG9hRzA1ZWtLUjFNYkY3THVNdEhKOU9scFF0R0VTL1htWW5FNFNHQkpR?= =?utf-8?B?dk9tVjF5VzUwTk5SSllCcDBHUDBZV3E4ZVprMlFidXMvRDVZMXBoN3pCRWhQ?= =?utf-8?B?bmNNVW44TGl5OWJKLzMrMUF2akJWWDRHeUx2UGl4c1NQREtLS2lLNEFXSVZX?= =?utf-8?B?cjFibzhCR3hnMU9FaEVGbFBHQ0t3U2FkWU5qeHpCTy9EUlc4RkVHQlY2L0c2?= =?utf-8?B?QW85M1pRTkg3Q3BsZnFMeTFUWW1xait0ZEVZN3d4ZGlpaE0zQzdzN0dYdlRH?= =?utf-8?B?R0c2TytDMEUzYnZDTDgvNHhHMGFMV1R0QjN0bjRPWkNOSVVTTGw0aGdXcURM?= =?utf-8?B?Q25IVWVBNVRwVldPd282S3RCbXlTWFppTUtuWVlZMVNFTG9GZVFFNlFwdDFW?= =?utf-8?B?eGZnTzdPTHgzUnphTHFSUzZYVWRLT25RY28vdFJEQ3pJTmYyWWVoa2NZc0FU?= =?utf-8?B?UHdBa1RSWnVaSldlVkJld3VQNlRDK3QrZGZDV2dFVU9Od0Y2YmNjTWRQUGRm?= =?utf-8?B?eUtFS3lHQzFsSVJtSWRNd0c0bjZZb1R1blFKS21vUzdvcXJJdERXbGhNVkhE?= =?utf-8?B?aTdoSU10SlFaRTdyL1U5T2ZyRi9UWTJCR25WNlNTZUZCVENQY1lXWWFDcHJz?= =?utf-8?B?UE5CQXBPZzBiL2hkdFZmZHlGOENRQllKc25kUzIxYWU1QWFoZHhWc05vUWxr?= =?utf-8?B?Tm1xdXlVN01OVkltOUNUZlB6dWlLT1B5M21QeTgzdG1kVlBuNWxBL05KRTQ4?= =?utf-8?B?T3krcGlFOGJYZG1MVSs0dDZBZUJsdkxxVm5QRnVGL1NlZVBDeWNURUhMSnNx?= =?utf-8?B?TjB6VGVVV0k1RzJnTXR4WVVrK3IrSTlpQkI0cy9FMnhKSnZoYzhZblgraXRp?= =?utf-8?B?SG5MZDBTN1F6bm9wNC9oTjBBeDV5YXNqb01zeFlpWTVzNUlPclF1L2dqUmdt?= =?utf-8?B?a09nN0ZRNkdJT0xFQ25tM1VwQmpCNGI2ZjlIcUluMUZGcXZLb1d1V3BXSHJv?= =?utf-8?B?UXl1bVg4SDQ4RWtNeElhVkdhN0RZMVQ1NXBEUUVRPT0=?= X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: SA2PR03MB5881.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: a7795d1e-4117-4351-a644-08db728c6aa6 X-MS-Exchange-CrossTenant-originalarrivaltime: 21 Jun 2023 19:19:21.3082 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: gVejywJLWS82reu+j4nIFZlh/yPn+fT4xjCeenWwmTseVtl2lV5ipptlHwFiBIRjwC413bWwkf4lgX7uRwfJTg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR03MB7049 T24gNi8yMS8yMDIzIDU6NDAgUE0sIFBldGVyIFppamxzdHJhIHdyb3RlOg0KPiBJIGRvbid0IHVu ZGVyc3RhbmQgaXQgLS0gZnVuZGFtZW50YWxseSwgaG93IGNhbiBsaW51eCBzY2hlZHVsZSB3aGVu IHRoZQ0KPiBndWVzdCBpc24ndCBldmVuIHJ1bm5pbmc/IEh5cGVyY2FsbCB0cmFuc2ZlcnMgY29u dHJvbCB0byB0aGUNCj4gaG9zdC9oeXBlcnZpc29yIGFuZCBsZWF2ZXMgdGhlIGd1ZXN0IHN1c3Bl bmRlZC4NCg0KSGkgUGV0ZXIsIGFzIG5vdGVkIGluIGVhcmxpZXIgbm90ZSB0byBBbmR5LCB0aGlz IGlzIGVzc2VudGlhbGx5IGV4aXN0aW5nDQpjb2RlIHRoYXQgb3RoZXIgY29tbWl0cyBoYXZlIHJl bmRlcmVkIGluZWZmZWN0aXZlIG92ZXIgdGltZS4gIEhlbmNlLA0KdGhlIGZpbmVyIGRldGFpbHMg b2YgaG93IG9yIHdoeSBpdCB3b3JrcyBoYXZlbid0IGNoYW5nZWQgc2luY2UgaXQgd2FzDQpmaXJz dCBpbnRyb2R1Y2VkLg0KDQo+IFRoaXMgbWFrZXMgbm8gc2Vuc2U7IHRoZSByYWNlIHRoYXQgd2Fy bmluZyB3YXJucyBhYm91dCBpczoNCj4gDQo+IAlDUFUwCQkJQ1BVMQ0KPiAJcGVyLWNwdSB3cml0 ZQ0KPiAJPHByZWVtcHQtb3V0Pg0KPiAJCQkJPHByZWVtcHQtaW4+DQo+IAkJCQlkby1oeXBlcmNh bGwNCj4gDQo+IFNvIHlvdSB3cm90ZSB0aGUgdmFsdWUgb24gQ1BVMCwgZ290IG1pZ3JhdGVkIHRv IENQVTEgYmVjYXVzZSB5b3UgaGFkDQo+IHByZWVtcHRpb25lZCBlbmFibGVkLCBhbmQgdGhlbiBj b250aW51ZSB3aXRoIHRoZSBwZXJjcHUgdmFsdWUgb2YgQ1BVMQ0KPiBiZWNhdXNlIHRoYXQncyB3 aGVyZSB5b3UncmUgYXQgbm93Lg0KDQpUaGlzIGlzc3VlIHdhcyByYWlzZWQgaW50ZXJuYWxseSwg YW5kIGl0IHdhcyBub3RlZCB0aGF0IHRoZSBvbmx5IHdheQ0KZm9yIHRoZSBwcmVlbXB0aWJsZSBj b2RlIHRvIHN3aXRjaCB0YXNrIGlzIHZpYSBhbiBpbnRlcnJ1cHQgdGhhdCBnb2VzDQp0aHJvdWdo IHhlbl9wdl9ldnRjaG5fZG9fdXBjYWxsKCksIHdoaWNoIGhhbmRsZXMgdGhpcy4gIEknbSBoYXBw eSB0bw0KY2hlY2sgd2l0aCBteSBzb3VyY2VzLCBidXQgaXQncyBob2xpZGF5IHNlYXNvbiByaWdo dCBub3cuDQoNCj4+IDQpIFVwZGF0ZSBpcnFlbnRyeV9leGl0X2NvbmRfcmVzY2hlZCgpIHRvIHJh d19pcnFlbnRyeV9leGl0X2NvbmRfcmVzY2hlZCgpLg0KPj4gVGhlIGNvZGUgd2lsbCBjYWxsIGly cWVudHJ5X2V4aXRfY29uZF9yZXNjaGVkKCkgaWYgdGhlIGZsYWcgKGFzIG5vdGVkDQo+PiBhYm92 ZSkgaXMgc2V0LCBidXQgdGhlIGR5bmFtaWMgcHJlZW1wdGlvbiBmZWF0dXJlIHdpbGwgbGl2ZXBh dGNoIHRoYXQNCj4+IGZ1bmN0aW9uIHRvIGEgbm8tb3AgdW5sZXNzIGZ1bGwgcHJlZW1wdGlvbiBp cyBzZWxlY3RlZC4gIFRoZSBjb2RlIGlzDQo+PiB0aGVyZWZvcmUgdXBkYXRlZCB0byBjYWxsIHJh d19pcnFlbnRyeV9leGl0X2NvbmRfcmVzY2hlZCgpLg0KPiANCj4gVGhhdCwgYWdhaW4gbWVlZHMg bW9yZSBleHBsYW5hdGlvbi4gV2h5IGRvIHlvdSB3YW50IHRoaXMgaWYgbm90DQo+IHByZWVtcHRp YmxlPw0KDQpJJ20gbm90IHF1aXRlIHN1cmUgd2hhdCB5b3UgbWVhbiBoZXJlLiAgRHluYW1pYyBw cmVlbXB0aW9uDQp3aWxsIGxpdmVwYXRjaCBpcnFlbnRyeV9leGl0X2NvbmRfcmVzY2hlZCgpIHRv IGJlIGEgbm8tb3AsIHdoaWxlDQpyYXdfaXJxZW50cnlfZXhpdF9jb25kX3Jlc2NoZWQoKSByZW1h aW5zIGZ1bmN0aW9uYWwuICBUaGlzIHdhcyANCmludHJvZHVjZWQgaW4gY29tbWl0IDQ2MjRhMTRm NGRhYSBsYXN0IHllYXIgd2hpY2ggd2FzIHNhaWQgdG8gZml4DQp0aGUgcHJvYmxlbSwgYnV0IGRv ZXNuJ3QuICBZb3UgbWF5IHJlbWVtYmVyLCBpdCB3YXMgc2lnbmVkIG9mZiBieSANCnlvdXJzZWxm IGFuZCBNYXJrIFJ1dGxhbmQuDQoNCj4gWW91J3JlIGRvaW5nIDQgdGhpbmdzLCB0aGF0IHNob3Vs ZCBiZSA0IHBhdGNoZXMuIEFsc28sIHBsZWFzZSBnaXZlIG1vcmUNCj4gY2x1ZXMgZm9yIGhvdyB0 aGlzIGlzIHN1cHBvc2VkIHRvIHdvcmsgYXQgYWxsLg0KDQpJIHJlc3BlY3RmdWxseSBoYXZlIHRv IGRpc2FncmVlIHdpdGggdGhhdC4gIFRoZSBmaXhlcyBoZXJlIGFyZSB2ZXJ5DQpjbG9zZWx5IHJl bGF0ZWQsIGFuZCB3ZSdyZSBub3QgaW50cm9kdWNpbmcgYW55dGhpbmcgbmV3LCB3ZSdyZSBtZXJl bHkNCnJlLWVuYWJsaW5nIGNvZGUgd2hpY2ggaGFzIGJlZW4gcmVuZGVyZWQgaW5lZmZlY3RpdmUg ZHVlIHRvIG92ZXJzaWdodHMNCmluIGNvbW1pdHMgbWFkZSBhZnRlciB0aGUgY29kZSB3YXMgZmly c3QgaW50cm9kdWNlZC4gIEhvdyB0aGUgY29kZSBpcw0Kc3VwcG9zZWQgdG8gd29yayBoYXNuJ3Qg Y2hhbmdlZCwgYW5kIGlzIGJleW9uZCB0aGUgc2NvcGUgb2YgdGhlc2UgZml4ZXM7DQpJJ20gc3Vy ZSBpdCBtdXN0IGhhdmUgYmVlbiBkaXNjdXNzZWQgYXQgZ3JlYXQgbGVuZ3RoIGF0IHRoZSB0aW1l IChjb21taXQgDQpmZGZkODExZGRkZTMpLg0KDQpCZXN0LA0KDQogICAtLSBQZXINCg0K From xen-devel-bounces@lists.xenproject.org Wed Jun 21 20:04:53 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 20:04:53 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553125.863497 (Exim 4.92) (envelope-from ) id 1qC44C-0006GQ-Mm; Wed, 21 Jun 2023 20:04:36 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553125.863497; Wed, 21 Jun 2023 20:04:36 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC44C-0006GJ-KC; Wed, 21 Jun 2023 20:04:36 +0000 Received: by outflank-mailman (input) for mailman id 553125; Wed, 21 Jun 2023 20:04:35 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC44A-0006GD-63 for xen-devel@lists.xenproject.org; Wed, 21 Jun 2023 20:04:35 +0000 Received: from desiato.infradead.org (desiato.infradead.org [2001:8b0:10b:1:d65d:64ff:fe57:4e05]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id d5c8f8ea-106e-11ee-8611-37d641c3527e; Wed, 21 Jun 2023 22:04:31 +0200 (CEST) Received: from j130084.upc-j.chello.nl ([24.132.130.84] helo=noisy.programming.kicks-ass.net) by desiato.infradead.org with esmtpsa (Exim 4.96 #2 (Red Hat Linux)) id 1qC43n-00058b-2F; Wed, 21 Jun 2023 20:04:11 +0000 Received: from hirez.programming.kicks-ass.net (hirez.programming.kicks-ass.net [192.168.1.225]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by noisy.programming.kicks-ass.net (Postfix) with ESMTPS id 7BABC30031B; Wed, 21 Jun 2023 22:04:09 +0200 (CEST) Received: by hirez.programming.kicks-ass.net (Postfix, from userid 1000) id 5DAED213E05DC; Wed, 21 Jun 2023 22:04:09 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: d5c8f8ea-106e-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=desiato.20200630; h=In-Reply-To:Content-Type:MIME-Version: References:Message-ID:Subject:Cc:To:From:Date:Sender:Reply-To: Content-Transfer-Encoding:Content-ID:Content-Description; bh=Jivk2cvZYtRDS6c1ZZTS2atKicw7SGBfxJ5V2QQO2lc=; b=bOmVP8i8J+qXbFKXBmni1/ADKR 0YU839Jcfdu6iaEVAPZRHL/ocHT7HLuVKEmCWaw1mH4SYKTKJGbB6dLcSsM2G5Aae35IMV4dAsCZL BQWMY2KrD0/D/RebgdbfICwS00zU4L1H3cK0bBvgHQEIs1hbMxIUe/9rkJWxXV69mIWJIXAoLZjq2 Ptzy0VI2xGHRtAUO1UNLSyqA37mM2GRInLrNpRmUIO1oBlU9SoyEgxvD6izFUCbLQ7JlwpsM1PjKt DQE0MF/mBc559+i7jQ1HtmMA7QeS6ST1GXTuWjuponAg+bUH0jQJ2nGVXYgiOPy0PtquEKS9XJKXV E5IWpmcQ==; Date: Wed, 21 Jun 2023 22:04:09 +0200 From: Peter Zijlstra To: Per Bilse Cc: Andy Lutomirski , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , "maintainer:X86 ARCHITECTURE (32-BIT AND 64-BIT)" , "H. Peter Anvin" , Juergen Gross , Stefano Stabellini , Oleksandr Tyshchenko , "open list:X86 ENTRY CODE" , "moderated list:XEN HYPERVISOR INTERFACE" Subject: Re: [PATCH] Updates to Xen hypercall preemption Message-ID: <20230621200409.GC4253@hirez.programming.kicks-ass.net> References: <20230621151442.2152425-1-per.bilse@citrix.com> <20230621164038.GM2053369@hirez.programming.kicks-ass.net> <6523f3e2-8dfc-c2dd-6d14-9e0c3ac93cc8@citrix.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <6523f3e2-8dfc-c2dd-6d14-9e0c3ac93cc8@citrix.com> On Wed, Jun 21, 2023 at 07:19:21PM +0000, Per Bilse wrote: > On 6/21/2023 5:40 PM, Peter Zijlstra wrote: > > I don't understand it -- fundamentally, how can linux schedule when the > > guest isn't even running? Hypercall transfers control to the > > host/hypervisor and leaves the guest suspended. > > Hi Peter, as noted in earlier note to Andy, this is essentially existing > code that other commits have rendered ineffective over time. Hence, > the finer details of how or why it works haven't changed since it was > first introduced. That doesn't mean you don't have to explain how stuff works. > > This makes no sense; the race that warning warns about is: > > > > CPU0 CPU1 > > per-cpu write > > > > > > do-hypercall > > > > So you wrote the value on CPU0, got migrated to CPU1 because you had > > preemptioned enabled, and then continue with the percpu value of CPU1 > > because that's where you're at now. > > This issue was raised internally, and it was noted that the only way > for the preemptible code to switch task is via an interrupt that goes > through xen_pv_evtchn_do_upcall(), which handles this. I'm happy to > check with my sources, but it's holiday season right now. Then it should have all sorts of comments on and a comprehensive changelog. > >> 4) Update irqentry_exit_cond_resched() to raw_irqentry_exit_cond_resched(). > >> The code will call irqentry_exit_cond_resched() if the flag (as noted > >> above) is set, but the dynamic preemption feature will livepatch that > >> function to a no-op unless full preemption is selected. The code is > >> therefore updated to call raw_irqentry_exit_cond_resched(). > > > > That, again meeds more explanation. Why do you want this if not > > preemptible? > > I'm not quite sure what you mean here. Dynamic preemption > will livepatch irqentry_exit_cond_resched() to be a no-op, while > raw_irqentry_exit_cond_resched() remains functional. This was > introduced in commit 4624a14f4daa last year which was said to fix > the problem, but doesn't. You may remember, it was signed off by > yourself and Mark Rutland. I don't see the relation; what you're doing is making dynamic preempt that's not configured for full preempt do preemption. That's weird, and again no comments. I'm with Andy in that simply forcing full preemption would make far more sense -- but I'm still missing something fundamental, see below. > > You're doing 4 things, that should be 4 patches. Also, please give more > > clues for how this is supposed to work at all. > > I respectfully have to disagree with that. The fixes here are very > closely related, and we're not introducing anything new, we're merely > re-enabling code which has been rendered ineffective due to oversights > in commits made after the code was first introduced. How the code is > supposed to work hasn't changed, and is beyond the scope of these fixes; > I'm sure it must have been discussed at great length at the time (commit > fdfd811ddde3). You didn't even so much as reference that commit, nor provide any other explanation. And having now read that commit, I'm not much enlightend. *HOW* can a hypercall, something that exits the Guest and has the Host/Hypervisor run get preempted in the Guest -- that isn't running. Or are you calling apples pears? From xen-devel-bounces@lists.xenproject.org Wed Jun 21 20:12:17 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 20:12:17 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553132.863507 (Exim 4.92) (envelope-from ) id 1qC4BU-0007lA-E3; Wed, 21 Jun 2023 20:12:08 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553132.863507; Wed, 21 Jun 2023 20:12:08 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC4BU-0007l3-BZ; Wed, 21 Jun 2023 20:12:08 +0000 Received: by outflank-mailman (input) for mailman id 553132; Wed, 21 Jun 2023 20:12:07 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC4BT-0007kx-Rp for xen-devel@lists.xenproject.org; Wed, 21 Jun 2023 20:12:07 +0000 Received: from raptorengineering.com (mail.raptorengineering.com [23.155.224.40]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id e41955a2-106f-11ee-b237-6b7b168915f2; Wed, 21 Jun 2023 22:12:05 +0200 (CEST) Received: from localhost (localhost [127.0.0.1]) by mail.rptsys.com (Postfix) with ESMTP id 5D1D58285A31; Wed, 21 Jun 2023 15:12:04 -0500 (CDT) Received: from mail.rptsys.com ([127.0.0.1]) by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032) with ESMTP id gZCbq_h6QiMZ; Wed, 21 Jun 2023 15:12:03 -0500 (CDT) Received: from localhost (localhost [127.0.0.1]) by mail.rptsys.com (Postfix) with ESMTP id BCBF28285AEB; Wed, 21 Jun 2023 15:12:03 -0500 (CDT) Received: from mail.rptsys.com ([127.0.0.1]) by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id A6Wa_5J2Ih8x; Wed, 21 Jun 2023 15:12:03 -0500 (CDT) Received: from [10.11.0.2] (5.edge.rptsys.com [23.155.224.38]) by mail.rptsys.com (Postfix) with ESMTPSA id EF9D98285A31; Wed, 21 Jun 2023 15:12:02 -0500 (CDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: e41955a2-106f-11ee-b237-6b7b168915f2 DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com BCBF28285AEB DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD; t=1687378323; bh=El/S7mI/eZT7BPsJJMdD4cpepwcNxa7bIe4e+Dx92ZM=; h=Message-ID:Date:MIME-Version:To:From; b=KLS6M28W86qpYMY0qEEnU+5NCOlaD0otqW4z8I9YLUJRLFPN1baFmITujb4rC/EQq gtoitXzvDTqiH9C8pMMVac39Lfh6qlXdw1RXs6sfoglFK3J50/+CDUuvpM2I9rT27G mBErkaEYaNAKxJ5LjeHSqHD/SYMCLKUIWoUoL+Nc= X-Virus-Scanned: amavisd-new at rptsys.com Message-ID: <9085f41f-404b-b1e4-1a48-b79bd0a273fb@raptorengineering.com> Date: Wed, 21 Jun 2023 15:12:02 -0500 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux ppc64le; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH 3/4] xen/ppc: Implement early serial printk on pseries Content-Language: en-US To: Andrew Cooper , xen-devel@lists.xenproject.org Cc: tpearson@raptorengineering.com References: <259298cdadf7cf1eba08cd35c636e9aca9e2182a.1687366665.git.sanastasio@raptorengineering.com> <692e2955-a85d-3c6c-7730-962956f6ebf6@citrix.com> From: Shawn Anastasio In-Reply-To: <692e2955-a85d-3c6c-7730-962956f6ebf6@citrix.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit On 6/21/23 12:54 PM, Andrew Cooper wrote: > I've noticed a couple of other things. asm/types.h repeats some > antipatterns which we're trying to delete for MISRA reasons in other > architectures. I was already planning to fix that up xen-wide, and I > guess now is the better time to do so. Could you elaborate on the changes you'd like to see in types.h? Thanks, Shawn From xen-devel-bounces@lists.xenproject.org Wed Jun 21 20:48:25 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 20:48:25 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553137.863518 (Exim 4.92) (envelope-from ) id 1qC4kU-0002td-5k; Wed, 21 Jun 2023 20:48:18 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553137.863518; Wed, 21 Jun 2023 20:48:18 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC4kU-0002tW-1a; Wed, 21 Jun 2023 20:48:18 +0000 Received: by outflank-mailman (input) for mailman id 553137; Wed, 21 Jun 2023 20:48:17 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC4kT-0002tQ-8W for xen-devel@lists.xenproject.org; Wed, 21 Jun 2023 20:48:17 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC4kS-0002Ek-O5; Wed, 21 Jun 2023 20:48:16 +0000 Received: from gw1.octic.net ([88.97.20.152] helo=[10.0.1.102]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qC4kS-0000o9-GR; Wed, 21 Jun 2023 20:48:16 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:Subject: From:References:Cc:To:MIME-Version:Date:Message-ID; bh=FZDuBlidfWs/iNigJ8yU+5e9gtFkAe0KGyvRMsg5l6M=; b=NBDgbAhAs1UCoNydFrIqH6yOnv TyDD5+x4b/eXkmFMXha0cNHEGiTb//Myj+Gva5kjTWz5OfCIztNXD2zfBRytu4nte09PUZnkGIiuA ya/uOh2IBTxfjiV1dXEWyj6YK/Yzwa37HmfK0s0051FCyKaWRlFPq+uBlwh8LFGDnNfQ=; Message-ID: <4fc1fcee-e210-fe16-f762-3f23700d51b9@xen.org> Date: Wed, 21 Jun 2023 21:48:14 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 To: Shawn Anastasio , xen-devel@lists.xenproject.org Cc: tpearson@raptorengineering.com, Shawn Anastasio References: <259298cdadf7cf1eba08cd35c636e9aca9e2182a.1687366665.git.sanastasio@raptorengineering.com> From: Julien Grall Subject: Re: [PATCH 3/4] xen/ppc: Implement early serial printk on pseries In-Reply-To: <259298cdadf7cf1eba08cd35c636e9aca9e2182a.1687366665.git.sanastasio@raptorengineering.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi Shawn, Below some remark about the coding style. I will try to spot all of them so please go through your code and check if my comments applies in other places. On 21/06/2023 17:59, Shawn Anastasio wrote: > On typical Power VMs (e.g. QEMU's -M pseries), a variety of services > including an early serial console are provided by Open Firmware. > Implement the required interfaces to call into Open Firmware and write > to the serial console. > > Since Open Firmware runs in 32-bit Big Endian mode and Xen runs in > 64-bit Little Endian mode, a thunk is required to save/restore > any potentially-clobbered registers as well as to perform the > required endianness switch. Thankfully, linux already has such > a routine, which was imported into ppc64/of-call.S. > > Support for bare metal (PowerNV) will be implemented in a future > patch. > > Signed-off-by: Shawn Anastasio > --- > xen/arch/ppc/Kconfig.debug | 5 + > xen/arch/ppc/Makefile | 3 + > xen/arch/ppc/boot-of.c | 116 +++++++++++++ > xen/arch/ppc/configs/ppc64_defconfig | 1 + > xen/arch/ppc/early_printk.c | 28 +++ > xen/arch/ppc/include/asm/boot.h | 24 +++ > xen/arch/ppc/include/asm/bug.h | 6 + > xen/arch/ppc/include/asm/byteorder.h | 37 ++++ > xen/arch/ppc/include/asm/cache.h | 6 + > xen/arch/ppc/include/asm/early_printk.h | 15 ++ > xen/arch/ppc/include/asm/msr.h | 67 ++++++++ > xen/arch/ppc/include/asm/processor.h | 207 ++++++++++++++++++++++ > xen/arch/ppc/include/asm/reg_defs.h | 218 ++++++++++++++++++++++++ > xen/arch/ppc/include/asm/string.h | 6 + > xen/arch/ppc/include/asm/types.h | 35 ++++ > xen/arch/ppc/ppc64/Makefile | 1 + > xen/arch/ppc/ppc64/asm-offsets.c | 55 ++++++ > xen/arch/ppc/ppc64/head.S | 48 +++--- > xen/arch/ppc/ppc64/of-call.S | 85 +++++++++ > xen/arch/ppc/setup.c | 31 ++++ > 20 files changed, 972 insertions(+), 22 deletions(-) > create mode 100644 xen/arch/ppc/boot-of.c > create mode 100644 xen/arch/ppc/early_printk.c > create mode 100644 xen/arch/ppc/include/asm/boot.h > create mode 100644 xen/arch/ppc/include/asm/bug.h > create mode 100644 xen/arch/ppc/include/asm/byteorder.h > create mode 100644 xen/arch/ppc/include/asm/cache.h > create mode 100644 xen/arch/ppc/include/asm/early_printk.h > create mode 100644 xen/arch/ppc/include/asm/msr.h > create mode 100644 xen/arch/ppc/include/asm/processor.h > create mode 100644 xen/arch/ppc/include/asm/reg_defs.h > create mode 100644 xen/arch/ppc/include/asm/string.h > create mode 100644 xen/arch/ppc/include/asm/types.h > create mode 100644 xen/arch/ppc/ppc64/of-call.S > create mode 100644 xen/arch/ppc/setup.c > > diff --git a/xen/arch/ppc/Kconfig.debug b/xen/arch/ppc/Kconfig.debug > index e69de29bb2..608c9ff832 100644 > --- a/xen/arch/ppc/Kconfig.debug > +++ b/xen/arch/ppc/Kconfig.debug > @@ -0,0 +1,5 @@ > +config EARLY_PRINTK > + bool "Enable early printk" > + default DEBUG > + help > + Enables early printk debug messages > diff --git a/xen/arch/ppc/Makefile b/xen/arch/ppc/Makefile > index 98220648af..4c4cdcb60e 100644 > --- a/xen/arch/ppc/Makefile > +++ b/xen/arch/ppc/Makefile > @@ -1,4 +1,7 @@ > obj-$(CONFIG_PPC64) += ppc64/ > +obj-y += setup.o > +obj-y += boot-of.o > +obj-$(CONFIG_EARLY_PRINTK) += early_printk.o We commonly order the file alphabetically. So setup.o should be last. > > $(TARGET): $(TARGET)-syms > cp -f $< $@ > diff --git a/xen/arch/ppc/boot-of.c b/xen/arch/ppc/boot-of.c > new file mode 100644 > index 0000000000..1ceeaf1250 > --- /dev/null > +++ b/xen/arch/ppc/boot-of.c > @@ -0,0 +1,116 @@ > +/* SPDX-License-Identifier: GPL-2.0-or-later */ > +/* > + * This program is free software; you can redistribute it and/or modify > + * it under the terms of the GNU General Public License as published by > + * the Free Software Foundation; either version 2 of the License, or > + * (at your option) any later version. > + * > + * This program is distributed in the hope that it will be useful, > + * but WITHOUT ANY WARRANTY; without even the implied warranty of > + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the > + * GNU General Public License for more details. > + * > + * You should have received a copy of the GNU General Public License > + * along with this program; if not, write to the Free Software > + * Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. As you already have the SPDX license, the full license should be dropped. > + * > + * Copyright IBM Corp. 2005, 2006, 2007 > + * Copyright Raptor Engineering, LLC > + * > + * Authors: Jimi Xenidis > + * Hollis Blanchard > + * Shawn Anastasio > + */ > + > +#include > +#include > +#include > +#include > + > +#define ADDR(x) (uint32_t)(unsigned long)(x) > + > +/* OF entrypoint*/ > +static unsigned long of_vec; > + > +/* OF device handles*/ > +static int bof_chosen; > +static int of_out; > + > +static int of_call(const char *service, uint32_t nargs, uint32_t nrets, > + int32_t rets[], ...) > +{ > + int rc; > + va_list args; > + int i; > + struct of_service s = { 0 }; > + > + s.ofs_service = cpu_to_be32(ADDR(service)); > + s.ofs_nargs = cpu_to_be32(nargs); > + s.ofs_nrets = cpu_to_be32(nrets); > + > + /* copy all the params into the args array */ > + va_start(args, rets); > + > + for ( i = 0; i < nargs; i++ ) > + { We don't add {} for a single line. > + s.ofs_args[i] = cpu_to_be32(va_arg(args, uint32_t)); > + } > + > + va_end(args); > + > + rc = enter_of(&s, of_vec); > + > + /* copy all return values to the output rets array */ > + for ( i = 0; i < nrets; i++ ) > + { Ditto. > + rets[i] = be32_to_cpu(s.ofs_args[i + nargs]); > + } > + > + return rc; > +} > + > +static int of_finddevice(const char *devspec) > +{ > + int rets[1] = { OF_FAILURE }; > + > + of_call("finddevice", 1, 1, rets, devspec); > + return rets[0]; > +} > + > +static int of_getprop(int ph, const char *name, void *buf, uint32_t buflen) > +{ > + int rets[1] = { OF_FAILURE }; > + > + of_call("getprop", 4, 1, rets, ph, ADDR(name), buf, buflen); > + return rets[0]; > +} > + > +int of_write(int ih, const char *addr, uint32_t len) > +{ > + int rets[1] = { OF_FAILURE }; > + > + of_call("write", 3, 1, rets, ih, addr, len); > + return rets[0]; > +} > + > +static void of_putchar(char c) > +{ > + if ( c == '\n' ) > + { > + char buf = '\r'; > + of_write(of_out, &buf, 1); > + } > + of_write(of_out, &c, 1); > +} > + > +void boot_of_init(unsigned long vec) > +{ > + of_vec = vec; > + > + /* Get a handle to the default console */ > + bof_chosen = of_finddevice("/chosen"); > + of_getprop(bof_chosen, "stdout", &of_out, sizeof(of_out)); > + of_out = be32_to_cpu(of_out); > + > + early_printk_init(of_putchar); > +} All files usually have an emacs magic block. E.g.: /* * Local variables: * mode: C * c-file-style: "BSD" * c-basic-offset: 4 * indent-tabs-mode: nil * End: */ > diff --git a/xen/arch/ppc/configs/ppc64_defconfig b/xen/arch/ppc/configs/ppc64_defconfig > index 8783eb3488..f7cc075e45 100644 > --- a/xen/arch/ppc/configs/ppc64_defconfig > +++ b/xen/arch/ppc/configs/ppc64_defconfig > @@ -10,4 +10,5 @@ > CONFIG_PPC64=y > CONFIG_DEBUG=y > CONFIG_DEBUG_INFO=y > +CONFIG_EARLY_PRINTK=y > CONFIG_EXPERT=y > diff --git a/xen/arch/ppc/early_printk.c b/xen/arch/ppc/early_printk.c > new file mode 100644 > index 0000000000..309a1a7fd9 > --- /dev/null > +++ b/xen/arch/ppc/early_printk.c > @@ -0,0 +1,28 @@ > +/* SPDX-License-Identifier: GPL-2.0-only */ > +#include > +#include > + > +static void (*putchar_func)(char); > + > +void early_printk_init(void (*putchar)(char)) > +{ > + putchar_func = putchar; > +} > + > +void early_puts(const char *s, size_t nr) > +{ > + if ( !putchar_func ) > + return; > + > + while ( nr-- > 0 ) > + putchar_func(*s++); > +} > + > +void early_printk(const char *s) > +{ > + if ( !putchar_func ) > + return; > + > + while ( *s ) > + putchar_func(*s++); > +} Missing emacs magic. > diff --git a/xen/arch/ppc/include/asm/boot.h b/xen/arch/ppc/include/asm/boot.h > new file mode 100644 > index 0000000000..ea4a945bb4 > --- /dev/null > +++ b/xen/arch/ppc/include/asm/boot.h > @@ -0,0 +1,24 @@ > +/* SPDX-License-Identifier: GPL-2.0-only */ > +#ifndef _ASM_PPC_BOOT_H > +#define _ASM_PPC_BOOT_H > + > +#include > + > +/* a collection of interfaces used during boot. */ > +enum { > + OF_FAILURE = -1, > + OF_SUCCESS = 0, > +}; > + > +struct of_service { > + __be32 ofs_service; > + __be32 ofs_nargs; > + __be32 ofs_nrets; > + __be32 ofs_args[10]; > +}; > + > +extern int enter_of(struct of_service *args, unsigned long entry); Here you add 'extern' but ... > + > +void boot_of_init(unsigned long); not here. In Xen, we tend to not add 'extern' for prototypes. Also, please name the parameter as this makes clear what the value is. This would also make MISRA happy (IIRC this would rule 8.2). > + > +#endif /* _ASM_PPC_BOOT_H */ Missing emacs magic. > diff --git a/xen/arch/ppc/include/asm/bug.h b/xen/arch/ppc/include/asm/bug.h > new file mode 100644 > index 0000000000..a23ab1fa74 > --- /dev/null > +++ b/xen/arch/ppc/include/asm/bug.h > @@ -0,0 +1,6 @@ > +/* SPDX-License-Identifier: GPL-2.0-only */ > + > +#ifndef _ASM_PPC_BUG_H > +#define _ASM_PPC_BUG_H > + > +#endif /* _ASM_PPC_BUG_H */ Can you clarify why you do need this empty header? Also missing emacs magic. > diff --git a/xen/arch/ppc/include/asm/byteorder.h b/xen/arch/ppc/include/asm/byteorder.h > new file mode 100644 > index 0000000000..cc4d55b355 > --- /dev/null > +++ b/xen/arch/ppc/include/asm/byteorder.h > @@ -0,0 +1,37 @@ > +/* SPDX-License-Identifier: GPL-2.0-or-later */ > +#ifndef _ASM_POWERPC_BYTEORDER_H > +#define _ASM_POWERPC_BYTEORDER_H > + > +#include > +#include > + > +static inline __attribute_const__ __u16 ___arch__swab16(__u16 value) > +{ > + __u16 result; > + > + asm("rlwimi %0,%1,8,16,23" In general, we tend to add a space of after the commas. > + : "=r" (result) > + : "r" (value), "0" (value >> 8)); > + return result; > +} > + > +static inline __attribute_const__ __u32 ___arch__swab32(__u32 value) > +{ > + __u32 result; > + > + asm("rlwimi %0,%1,24,16,23\n\t" > + "rlwimi %0,%1,8,8,15\n\t" > + "rlwimi %0,%1,24,0,7" Same here. > + : "=r" (result) > + : "r" (value), "0" (value >> 24)); > + return result; > +} > + > +#define __arch__swab16(x) ___arch__swab16(x) > +#define __arch__swab32(x) ___arch__swab32(x) > + > +#define __BYTEORDER_HAS_U64__ > + > +#include > + > +#endif /* _ASM_POWERPC_BYTEORDER_H */ Missing emacs magic. > diff --git a/xen/arch/ppc/include/asm/cache.h b/xen/arch/ppc/include/asm/cache.h > new file mode 100644 > index 0000000000..8a0a6b7b17 > --- /dev/null > +++ b/xen/arch/ppc/include/asm/cache.h > @@ -0,0 +1,6 @@ > +/* SPDX-License-Identifier: GPL-2.0-only */ > + > +#ifndef _ASM_PPC_CACHE_H > +#define _ASM_PPC_CACHE_H > + > +#endif /* _ASM_PPC_CACHE_H */ Can you clarify why you do need this empty header? Also missing emacs magic. > diff --git a/xen/arch/ppc/include/asm/early_printk.h b/xen/arch/ppc/include/asm/early_printk.h > new file mode 100644 > index 0000000000..d1d8b416f4 > --- /dev/null > +++ b/xen/arch/ppc/include/asm/early_printk.h > @@ -0,0 +1,15 @@ > +/* SPDX-License-Identifier: GPL-2.0-only */ > +#ifndef _ASM_PPC_EARLY_PRINTK_H > +#define _ASM_PPC_EARLY_PRINTK_H > + > +#include > + > +#ifdef CONFIG_EARLY_PRINTK > +void early_printk_init(void (*putchar)(char)); > +void early_printk(const char *s); > +#else > +static inline void early_printk_init(void (*putchar)(char)) {} > +static inline void early_printk(const char *s) {} > +#endif > + > +#endif /* _ASM_PPC_EARLY_PRINTK_H */ Missing emacs magic. > diff --git a/xen/arch/ppc/include/asm/msr.h b/xen/arch/ppc/include/asm/msr.h > new file mode 100644 > index 0000000000..7ef0b5e3ad > --- /dev/null > +++ b/xen/arch/ppc/include/asm/msr.h > @@ -0,0 +1,67 @@ > +/* SPDX-License-Identifier: GPL-2.0-or-later */ > +/* > + * This program is free software; you can redistribute it and/or modify > + * it under the terms of the GNU General Public License as published by > + * the Free Software Foundation; either version 2 of the License, or > + * (at your option) any later version. > + * > + * This program is distributed in the hope that it will be useful, > + * but WITHOUT ANY WARRANTY; without even the implied warranty of > + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the > + * GNU General Public License for more details. > + * > + * You should have received a copy of the GNU General Public License > + * along with this program; if not, write to the Free Software > + * Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. Can you drop the full license? > + * > + * Copyright (C) IBM Corp. 2005 > + * > + * Authors: Jimi Xenidis > + */ > + > +#ifndef _POWERPC_MSR_H > +#define _POWERPC_MSR_H > + > +#ifdef __ASSEMBLY__ > +#define ULL(x) x > +#else > +#define ULL(x) x ## ULL > +#endif > + > +/* Flags in MSR: */ > +#define MSR_SF ULL(0x8000000000000000) > +#define MSR_TA ULL(0x4000000000000000) > +#define MSR_ISF ULL(0x2000000000000000) > +#define MSR_HV ULL(0x1000000000000000) > +#define MSR_VMX ULL(0x0000000002000000) > +#define MSR_MER ULL(0x0000000000200000) > +#define MSR_POW ULL(0x0000000000040000) > +#define MSR_ILE ULL(0x0000000000010000) > +#define MSR_EE ULL(0x0000000000008000) > +#define MSR_PR ULL(0x0000000000004000) > +#define MSR_FP ULL(0x0000000000002000) > +#define MSR_ME ULL(0x0000000000001000) > +#define MSR_FE0 ULL(0x0000000000000800) > +#define MSR_SE ULL(0x0000000000000400) > +#define MSR_BE ULL(0x0000000000000200) > +#define MSR_FE1 ULL(0x0000000000000100) > +#define MSR_IP ULL(0x0000000000000040) > +#define MSR_IR ULL(0x0000000000000020) > +#define MSR_DR ULL(0x0000000000000010) > +#define MSR_PMM ULL(0x0000000000000004) > +#define MSR_RI ULL(0x0000000000000002) > +#define MSR_LE ULL(0x0000000000000001) > + > +/* MSR bits set on the systemsim simulator */ > +#define MSR_SIM ULL(0x0000000020000000) > +#define MSR_SYSTEMSIM ULL(0x0000000010000000) > + > +/* On a trap, srr1's copy of msr defines some bits as follows: */ > +#define MSR_TRAP_FE ULL(0x0000000000100000) /* Floating Point Exception */ > +#define MSR_TRAP_IOP ULL(0x0000000000080000) /* Illegal Instruction */ > +#define MSR_TRAP_PRIV ULL(0x0000000000040000) /* Privileged Instruction */ > +#define MSR_TRAP ULL(0x0000000000020000) /* Trap Instruction */ > +#define MSR_TRAP_NEXT ULL(0x0000000000010000) /* PC is next instruction */ > +#define MSR_TRAP_BITS (MSR_TRAP_FE|MSR_TRAP_IOP|MSR_TRAP_PRIV|MSR_TRAP) > + > +#endif /* _POWERPC_MSR_H */ Mising emacs magic. > diff --git a/xen/arch/ppc/include/asm/processor.h b/xen/arch/ppc/include/asm/processor.h > new file mode 100644 > index 0000000000..6deba051a8 > --- /dev/null > +++ b/xen/arch/ppc/include/asm/processor.h > @@ -0,0 +1,207 @@ > +/* SPDX-License-Identifier: GPL-2.0-or-later */ > +/* > + * This program is free software; you can redistribute it and/or modify > + * it under the terms of the GNU General Public License as published by > + * the Free Software Foundation; either version 2 of the License, or > + * (at your option) any later version. > + * > + * This program is distributed in the hope that it will be useful, > + * but WITHOUT ANY WARRANTY; without even the implied warranty of > + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the > + * GNU General Public License for more details. > + * > + * You should have received a copy of the GNU General Public License > + * along with this program; if not, write to the Free Software > + * Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. Can you drop the full license? > + * > + * Copyright IBM Corp. 2005, 2006, 2007 > + * Copyright Raptor Engineering, LLC > + * > + * Authors: Hollis Blanchard > + * Christian Ehrhardt > + * Timothy Pearson > + * Shawn Anastasio > + */ > + > +#ifndef _ASM_PROCESSOR_H_ > +#define _ASM_PROCESSOR_H_ > + > +#include > +#include > +#include > + > +#define IOBMP_BYTES 8192 > +#define IOBMP_INVALID_OFFSET 0x8000 > + > +/* Processor Version Register (PVR) field extraction */ > + > +#define PVR_VER(pvr) (((pvr) >> 16) & 0xFFFF) /* Version field */ > +#define PVR_REV(pvr) (((pvr) >> 0) & 0xFFFF) /* Revison field */ > + > +#define __is_processor(pv) (PVR_VER(mfspr(SPRN_PVR)) == (pv)) > + > +/* > + * IBM has further subdivided the standard PowerPC 16-bit version and > + * revision subfields of the PVR for the PowerPC 403s into the following: > + */ > + > +#define PVR_FAM(pvr) (((pvr) >> 20) & 0xFFF) /* Family field */ > +#define PVR_MEM(pvr) (((pvr) >> 16) & 0xF) /* Member field */ > +#define PVR_CORE(pvr) (((pvr) >> 12) & 0xF) /* Core field */ > +#define PVR_CFG(pvr) (((pvr) >> 8) & 0xF) /* Configuration field */ > +#define PVR_MAJ(pvr) (((pvr) >> 4) & 0xF) /* Major revision field */ > +#define PVR_MIN(pvr) (((pvr) >> 0) & 0xF) /* Minor revision field */ > + > +/* Processor Version Numbers */ > + > +#define PVR_403GA 0x00200000 > +#define PVR_403GB 0x00200100 > +#define PVR_403GC 0x00200200 > +#define PVR_403GCX 0x00201400 > +#define PVR_405GP 0x40110000 > +#define PVR_STB03XXX 0x40310000 > +#define PVR_NP405H 0x41410000 > +#define PVR_NP405L 0x41610000 > +#define PVR_601 0x00010000 > +#define PVR_602 0x00050000 > +#define PVR_603 0x00030000 > +#define PVR_603e 0x00060000 > +#define PVR_603ev 0x00070000 > +#define PVR_603r 0x00071000 > +#define PVR_604 0x00040000 > +#define PVR_604e 0x00090000 > +#define PVR_604r 0x000A0000 > +#define PVR_620 0x00140000 > +#define PVR_740 0x00080000 > +#define PVR_750 PVR_740 > +#define PVR_740P 0x10080000 > +#define PVR_750P PVR_740P > +#define PVR_7400 0x000C0000 > +#define PVR_7410 0x800C0000 > +#define PVR_7450 0x80000000 > +#define PVR_8540 0x80200000 > +#define PVR_8560 0x80200000 > +/* > + * For the 8xx processors, all of them report the same PVR family for > + * the PowerPC core. The various versions of these processors must be > + * differentiated by the version number in the Communication Processor > + * Module (CPM). > + */ > +#define PVR_821 0x00500000 > +#define PVR_823 PVR_821 > +#define PVR_850 PVR_821 > +#define PVR_860 PVR_821 > +#define PVR_8240 0x00810100 > +#define PVR_8245 0x80811014 > +#define PVR_8260 PVR_8240 > + > +/* 64-bit processors */ > +#define PVR_NORTHSTAR 0x0033 > +#define PVR_PULSAR 0x0034 > +#define PVR_POWER4 0x0035 > +#define PVR_ICESTAR 0x0036 > +#define PVR_SSTAR 0x0037 > +#define PVR_POWER4p 0x0038 > +#define PVR_970 0x0039 > +#define PVR_POWER5 0x003A > +#define PVR_POWER5p 0x003B > +#define PVR_970FX 0x003C > +#define PVR_POWER6 0x003E > +#define PVR_POWER7 0x003F > +#define PVR_630 0x0040 > +#define PVR_630p 0x0041 > +#define PVR_970MP 0x0044 > +#define PVR_970GX 0x0045 > +#define PVR_POWER7p 0x004A > +#define PVR_POWER8E 0x004B > +#define PVR_POWER8NVL 0x004C > +#define PVR_POWER8 0x004D > +#define PVR_POWER9 0x004E > +#define PVR_POWER10 0x0080 > +#define PVR_BE 0x0070 > +#define PVR_PA6T 0x0090 > + > +#ifndef __ASSEMBLY__ > + > +#include > + > +/* User-accessible registers: nost of these need to be saved/restored > + * for every nested Xen invocation. */ The multi-line comment coding style is: /* * foo * bar */ For single line comment, they should be: /* foo bar */ [...] > diff --git a/xen/arch/ppc/ppc64/head.S b/xen/arch/ppc/ppc64/head.S > index 2fcefb40d8..589c72e382 100644 > --- a/xen/arch/ppc/ppc64/head.S > +++ b/xen/arch/ppc/ppc64/head.S > @@ -1,30 +1,34 @@ > /* SPDX-License-Identifier: GPL-2.0-or-later */ > > +#include > + > .section .text.header, "ax", %progbits > > ENTRY(start) > - /* > - * Depending on how we were booted, the CPU could be running in either > - * Little Endian or Big Endian mode. The following trampoline from Linux > - * cleverly uses an instruction that encodes to a NOP if the CPU's > - * endianness matches the assumption of the assembler (LE, in our case) > - * or a branch to code that performs the endian switch in the other case. > - */ > - tdi 0, 0, 0x48 /* Reverse endian of b . + 8 */ > - b . + 44 /* Skip trampoline if endian is good */ > - .long 0xa600607d /* mfmsr r11 */ > - .long 0x01006b69 /* xori r11,r11,1 */ > - .long 0x00004039 /* li r10,0 */ > - .long 0x6401417d /* mtmsrd r10,1 */ > - .long 0x05009f42 /* bcl 20,31,$+4 */ > - .long 0xa602487d /* mflr r10 */ > - .long 0x14004a39 /* addi r10,r10,20 */ > - .long 0xa6035a7d /* mtsrr0 r10 */ > - .long 0xa6037b7d /* mtsrr1 r11 */ > - .long 0x2400004c /* rfid */ This seems to be refactoring. It would be best if this is done in a separate patch as this is easier to review. > - > - /* Now that the endianness is confirmed, continue */ > -1: b 1b > + /* NOTE: argument registers (r3-r9) must be preserved until the C entrypoint */ I feel this is a bit too small to be noticeable. I would suggest to write a large comment so it is more obvious to spot the list of registers that should not be used. One way would be: /* * r1 ... * r2 .. * r3 ... * ... */ > + FIXUP_ENDIAN > + > + /* set up the initial stack */ > + LOAD_IMM64(r1, cpu0_boot_stack) > + li r8, 0 > + std r8, 0(r1) > + > + /* call the C entrypoint */ > + LOAD_IMM64(r12, start_xen) > + mtctr r12 > + bctrl > + > + /* should never return */ > + trap > > .size start, . - start > .type start, %function > + > + .section .init.data, "aw", @progbits > + > + /* Early init stack */ > + .p2align 4 > +cpu0_boot_stack_bottom: > + .space STACK_SIZE > +cpu0_boot_stack: > + .space STACK_FRAME_OVERHEAD Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Wed Jun 21 21:12:26 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 21:12:26 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553145.863537 (Exim 4.92) (envelope-from ) id 1qC57j-0006fE-EZ; Wed, 21 Jun 2023 21:12:19 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553145.863537; Wed, 21 Jun 2023 21:12:19 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC57j-0006f7-Br; Wed, 21 Jun 2023 21:12:19 +0000 Received: by outflank-mailman (input) for mailman id 553145; Wed, 21 Jun 2023 21:12:18 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC57i-0006QB-Mq for xen-devel@lists.xenproject.org; Wed, 21 Jun 2023 21:12:18 +0000 Received: from esa6.hc3370-68.iphmx.com (esa6.hc3370-68.iphmx.com [216.71.155.175]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 4bf4744f-1078-11ee-8611-37d641c3527e; Wed, 21 Jun 2023 23:12:16 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 4bf4744f-1078-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1687381936; h=from:to:cc:subject:date:message-id:mime-version: content-transfer-encoding; bh=UEbK+Z51M1bCMMmI0PLleppHB6gGPs0x3f2HzWru4S8=; b=e/sQHodxOKtNvbFK+2Bne6KiVlcTnhnfDGmy1RELZs4Wx8svkQ7AnzIJ UFUWFeJcQ9sLhPrWndGbacVWLYVSwLvejrzIodlFBzQpb9AUKWjo2IBk2 KVgZIoc6Najat1LV95E26LY+wpSG4q1b+tGlh0ebKXQcQ5KeehZ24AaMy I=; Authentication-Results: esa6.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none X-SBRS: 4.0 X-MesageID: 112996391 X-Ironport-Server: esa6.hc3370-68.iphmx.com X-Remote-IP: 162.221.156.123 X-Policy: $RELAYED IronPort-Data: A9a23:AucgSa5zYNxM7Pq0I9Q+pAxRtBXAchMFZxGqfqrLsTDasY5as4F+v jQcWmvXaP6LYGPyLdp1b9mx90hT6MTXy9Y3Two4/iFjHi5G8cbLO4+Ufxz6V8+wwm8vb2o8t plDNYOQRCwQZiWBzvt4GuG59RGQ7YnRGvynTraCYnsrLeNdYH9JoQp5nOIkiZJfj9G8Agec0 fv/uMSaM1K+s9JOGjt8B5mr9lU35JwehBtC5gZlPa4R5QeC/5UoJMl3yZ+ZfiOQrrZ8RoZWd 86bpJml82XQ+QsaC9/Nut4XpWVTH9Y+lSDX4pZnc/DKbipq/0Te4Y5iXBYoUm9Fii3hojxE4 I4lWapc6+seFvakdOw1C3G0GszlVEFM0OevzXOX6aR/w6BaGpdFLjoH4EweZOUlFuhL7W5mt u4eEW5Vazq4oN3pkJOiZM5un/kBFZy+VG8fkikIITDxCP8nRdbIQrnQ5M8e1zA17ixMNa+AP YxDM2MpNUmeJUQVYT/7C7pn9AusrlD5fydVtxS+oq0v7nKI5AdwzKLsIJzefdniqcB9xx/C9 zOYpDWgav0cHOaj6guvqVuyvPfGtGDEe98fCpup+/E/1TV/wURMUUZLBDNXu8KRmkO4Ht5SN UEQ0i4vtrQpslymSMHnWB+1q2LCuQQTM/JyOeAn7ACGyoLP/h2UQGMDS1Zpc8c6vcU7QTgr0 F6hnN7zAzFr9rqPRhq16bO8vT60fy8PIgcqZzIATAYDy8nupsc0lB2nZuhkFKm5n9jkAwbay jqBrDU9r7gLhMtN3KK+lXjNjiiwvJHPQkgw7x/OQ2O+xgpjYciuYInAwVHf7O1cJYeDCFebt X4PmtO28+wFS5qKkUSlSuIHFqCk/PaBPTjVh3ZgGpAg83Km/HvLVYtX5jd5JktgLMcfUTDsa U7X/whW4fd7O3+nbrR2YsSyFt4txqjjEvzqU/nVapxFZZ0ZXBSO+ih1eUeL3mfFikE0jaYlN JGUcMChAGwbD6shxz2zL88BybIi3Ds5w0vJTIjnyA6q17WfYnOYU7YDPx2FaeVRxLmDqgjP7 9EZPcKFzRxFWcX0fybM/Igca1sNKBAG6Yve8pINMLTZe0w/RT9nUqWKqV88R2B7t+dHkN6Wp nSXYWhnlwrenFPgKxy3SEk2PdsDQq1DQWIH0T0EZAj4hCN9MdjzvM/zZLNsI+B5qbULIepcC qBcJp7eWqknpiHvoWx1UHXrkGB1mP1HbyqqNjHtXjUwdoUIq+fhqo69JVuHGMXj40OKWSoCT 16IjFmzrWIrHVgKMSovQKvHI6mNlXYcgvlueEDDP8Nefk7hmKAzdXyu1aBteZFUdE6Srtd/6 +pwKU1DzQUqi9VvmOQleIje99v5eweANhQy85bnAUaeanCBozvLLX5oW+eUZzHNPF4YC437D di5O8rUaaVd9H4T6toULlqe5f5mjzcZj+MAn1sM8bSiRwjDN46M1VHcgpYW7fQXmuAC0eZ0M 2rWkuRn1XyyEJuNODYsyMANNIxvCdl8duHu0MkI IronPort-HdrOrdr: A9a23:4vJZmqMM2+8bC8BcTjGjsMiBIKoaSvp037BK7S1MoH1uA6ulfq WV9sjzuiWatN98Yh8dcJW7Scq9qBDnhPpICOsqXYtKNTOO0AeVxcNZnOnfKlXbcBEWndQtsJ uIHZIeNDXxZ2IK8foT4mODYqkdKA/sytHXuQ/cpU0dPD2Dc8tbnmFE4p7wKDwNeOFBb6BJba a01458iBeLX28YVci/DmltZZm/mzWa/KiWGSLvHnQcmXKzsQ8= X-Talos-CUID: =?us-ascii?q?9a23=3Az4PzImlJBQNCWhr6NpDMkGHPOtnXOT7Pyk6Oe0q?= =?us-ascii?q?SMkFWF+20UHG3+rpZsfM7zg=3D=3D?= X-Talos-MUID: 9a23:fgtLTQTuAUwzxojURXTWuBJTHpxB/Z62AWlOrrZbtteiJCF/bmI= X-IronPort-AV: E=Sophos;i="6.00,261,1681185600"; d="scan'208";a="112996391" From: Andrew Cooper To: Xen-devel CC: Andrew Cooper , Jan Beulich , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Wei Liu , Stefano Stabellini , Julien Grall , Volodymyr Babchuk , Bertrand Marquis , Bob Eshleman , Alistair Francis , Connor Davis , "Oleksii Kurochko" , Shawn Anastasio , Timothy Pearson , Roberto Bagnara Subject: [PATCH 0/2] xen/types: Cleanup Date: Wed, 21 Jun 2023 22:11:58 +0100 Message-ID: <20230621211200.4132989-1-andrew.cooper3@citrix.com> X-Mailer: git-send-email 2.30.2 MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit Done both to avoid PPC64 bringing in yet another copy of some antipatterns, and because it fixes the MISRA issue relating to the __signed__ keyword. https://gitlab.com/xen-project/people/andyhhp/xen/-/pipelines/907638603 Andrew Cooper (2): xen/types: Drop #ifdefary for __{SIZE,PTRDIFF}_TYPE__ xen/types: Rework stdint vs __{u,s}$N types xen/arch/arm/include/asm/types.h | 19 --------------- xen/arch/riscv/include/asm/types.h | 19 --------------- xen/arch/x86/include/asm/types.h | 21 ++++++++--------- xen/include/xen/types.h | 37 +++++++++++++++--------------- 4 files changed, 27 insertions(+), 69 deletions(-) base-commit: 5c84f1f636981dab5341e84aaba8d4dd00bbc2cb -- 2.30.2 From xen-devel-bounces@lists.xenproject.org Wed Jun 21 21:12:26 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 21:12:26 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553144.863528 (Exim 4.92) (envelope-from ) id 1qC57i-0006QO-89; Wed, 21 Jun 2023 21:12:18 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553144.863528; Wed, 21 Jun 2023 21:12:18 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC57i-0006QH-4N; Wed, 21 Jun 2023 21:12:18 +0000 Received: by outflank-mailman (input) for mailman id 553144; Wed, 21 Jun 2023 21:12:16 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC57f-0006QB-R7 for xen-devel@lists.xenproject.org; Wed, 21 Jun 2023 21:12:16 +0000 Received: from esa1.hc3370-68.iphmx.com (esa1.hc3370-68.iphmx.com [216.71.145.142]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 497cb7fa-1078-11ee-8611-37d641c3527e; Wed, 21 Jun 2023 23:12:12 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 497cb7fa-1078-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1687381932; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=O8AEz7JfrhOSqym56+0EwnNE503UhvYripUFGrNGdFo=; b=df+pUpwWxMlsqOzayuvApKBCS8ysTwCFuiKWCYJov2zBH2+jdBTC/RUc IBrA2B3w8XfLlyCGNF+sqwfwhBBOQf4VPCLmR2Z2W1ExbdW+yqNdmq9JV tDRscRpmNj/W5cSJdknXEW3KJVOIZihARYwaX3eYMzGMVmPigFzU+C8sP Y=; Authentication-Results: esa1.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none X-SBRS: 4.0 X-MesageID: 114088574 X-Ironport-Server: esa1.hc3370-68.iphmx.com X-Remote-IP: 162.221.156.123 X-Policy: $RELAYED IronPort-Data: A9a23:ZKYUAq1PxnnOMNlBgPbD5f52kn2cJEfYwER7XKvMYLTBsI5bpzAOy 2QcXzyOO/6KMzTxL9x0bYTko0oGusLSy9ZjTgM+pC1hF35El5HIVI+TRqvS04F+DeWYFR46s J9OAjXkBJppJpMJjk71atANlVEliefTAOK6ULWeUsxIbVcMYD87jh5+kPIOjIdtgNyoayuAo tq3qMDEULOf82cc3lk8teTb8HuDgNyo4GlD5gJkPKgX1LPjvyJ94Kw3dPnZw0TQGuG4LsbiL 87fwbew+H/u/htFIrtJRZ6iLyXm6paLVeS/oiI+t5qK23CulQRrukoPD9IOaF8/ttm8t4sZJ OOhF3CHYVxB0qXkwIzxWvTDes10FfUuFLTveRBTvSEPpqFvnrSFL/hGVSkL0YMkFulfJXhEq MA4AgAxYBWarsWRmIq+drJwiZF2RCXrFNt3VnBIyDjYCbAtQIzZQrWM7thdtNsyrpkQR7CEP ZNfMGcxKk2aOHWjOX9OYH46tM6uimPybHtzr1WNqLBsy2PS0BZwwP7mN9+9ltmiHJwJxhbI+ z2al4j/KiwlF5uP0WDGyUi9nbHkghHQVrM9OKLto5aGh3XMnzdOWXX6T2CTsfS/z0KzRd9bA 0gV4TY167g/8lSxSdvwVAH+p2SL1jY+cddNF+wx6CmW17HZpQ2eAwAsVSVdYdYrsMs3Qz0C1 VKTmd7tQzt1v9W9Vna15rqS6zSoNkA9L3IGZCICZRsI5Z/kuo5bpizIStFvAauklOrfEDv7w y2JhCUmjrBVhskOv42x8ErbmTuqqt7MRxQs+wTMdmu/60VyY4vNT4Ws6EPH5PdaaoiDR1+Kv WMshMSVqusJCPmlniuHSvQAB7Gt6vOMNhXThFduG98q8DHF03Wke4ZX4j13OkZyGskBcD7tJ kTUvGt545teP2CrbOl0fpi2AMQpyoDvEN3kUrbfad8mSoN4cgac4Ch1ZEm4xWn1jE82nKcwO JGWfNytC3lcAqNipBKqX+oUy6QswAgkzHvPQor2yRum17eTfn+TRvEON17mRvo+5q6evAKT+ d9QMcKQwj1VTeLlby/Yt4UUKDg3wWMTXM6s7ZYNL6jaf1QgQTt6YxPM/V8/U6h8lflpts34w n+4Q2Z/7wLHgEGcNQrfPxiPd4jTsYZDQWMTZHJ8Yg32iyZ/Me5D/49EKcJpIOBPGPhLiKctE qJbI5jo7uFnEGyvxtgLUXXqQGWOnjyPjBnGASeqaSNXk3VIF12QoY+MkucCGUAz4suLWSgW+ efIOvvzG8ZreuibJJ++hAiT512wp2MBv+l5QlHFJNJeEG21rtg1cHOr1K9vfppdQfkm+td8/ 1zNafv/jbOXy7LZDfGT3fzUx2tXO7UW8rVm85nzsu/taHiyEpuLyo5cSueYFQ0xp0utkJhOk d59lqmmWNVexQYijmaJO+ozpU7Iz4e19uAyI8UNNCmjUmlH/Zs6fSbfhpAV6vIWrlKb0CPvM n+yFhBhEe3hEKvY/JQ5fWLJsszrOSkopwTv IronPort-HdrOrdr: A9a23:TmjusqDWiKuytRnlHelo55DYdb4zR+YMi2TDt3oddfU1SL38qy nKpp4mPHDP5wr5NEtPpTniAtjjfZq/z/5ICOAqVN/PYOCPggCVxepZnOjfKlPbehEX9oRmpN 1dm6oVMqyMMbCt5/yKnDVRELwbsaa6GLjDv5a785/0JzsaE52J6W1Ce2GmO3wzfiZqL7wjGq GR48JWzgDQAkj+PqyAdx84t/GonayzqK7b X-Talos-CUID: 9a23:1sPCRW7cxExjegfE9tss0FceR/wFWE3hwnLJCmifUV5sdOaJRgrF X-Talos-MUID: 9a23:2TjnlAUF+nFfgM7q/ALTp3ZyLJ0r2J6/Ex4mjqcttfirGTMlbg== X-IronPort-AV: E=Sophos;i="6.00,261,1681185600"; d="scan'208";a="114088574" From: Andrew Cooper To: Xen-devel CC: Andrew Cooper , Jan Beulich , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Wei Liu , Stefano Stabellini , Julien Grall , Volodymyr Babchuk , Bertrand Marquis , Bob Eshleman , Alistair Francis , Connor Davis , "Oleksii Kurochko" , Shawn Anastasio , Timothy Pearson , Roberto Bagnara Subject: [PATCH 2/2] xen/types: Rework stdint vs __{u,s}$N types Date: Wed, 21 Jun 2023 22:12:00 +0100 Message-ID: <20230621211200.4132989-3-andrew.cooper3@citrix.com> X-Mailer: git-send-email 2.30.2 In-Reply-To: <20230621211200.4132989-1-andrew.cooper3@citrix.com> References: <20230621211200.4132989-1-andrew.cooper3@citrix.com> MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit Xen uses the stdint types. Rearrange the types headers to define the compatibility __{u,s}$N types in terms of the stdint types, not the other way around. All all supported compilers on architectures other than x86 support the stdint __*_TYPE__ macros. Move these into the common types.h to avoid them being duplicated in each architecture. For x86 on obsolete compilers, synthesize appropriate types. This cleanup has the side effect of removing all use of the undocumented __signed__ GCC keyword. This is a vestigial remnant of `gcc -traditional` mode for dialetcs of C prior to the introduction of the signed keyword. No functional change. Signed-off-by: Andrew Cooper --- CC: Jan Beulich CC: Roger Pau Monné CC: Wei Liu CC: Stefano Stabellini CC: Julien Grall CC: Volodymyr Babchuk CC: Bertrand Marquis CC: Bob Eshleman CC: Alistair Francis CC: Connor Davis CC: Oleksii Kurochko CC: Shawn Anastasio CC: Timothy Pearson CC: Roberto Bagnara I've left the non __ types alone for now. They're complicated mostly by ARM having differing ideas of what a paddr_t is. A different option would be to sort out the stdint types ahead of including , which can either be done by introducing a or upping the minimum compiler version for x86; a task which is massively overdue. --- xen/arch/arm/include/asm/types.h | 19 ------------------- xen/arch/riscv/include/asm/types.h | 19 ------------------- xen/arch/x86/include/asm/types.h | 21 +++++++++------------ xen/include/xen/types.h | 28 +++++++++++++++++----------- 4 files changed, 26 insertions(+), 61 deletions(-) diff --git a/xen/arch/arm/include/asm/types.h b/xen/arch/arm/include/asm/types.h index fb6618ef247f..545a5e9d1175 100644 --- a/xen/arch/arm/include/asm/types.h +++ b/xen/arch/arm/include/asm/types.h @@ -1,25 +1,6 @@ #ifndef __ARM_TYPES_H__ #define __ARM_TYPES_H__ -typedef __signed__ char __s8; -typedef unsigned char __u8; - -typedef __signed__ short __s16; -typedef unsigned short __u16; - -typedef __signed__ int __s32; -typedef unsigned int __u32; - -#if defined(__GNUC__) && !defined(__STRICT_ANSI__) -#if defined(CONFIG_ARM_32) -typedef __signed__ long long __s64; -typedef unsigned long long __u64; -#elif defined (CONFIG_ARM_64) -typedef __signed__ long __s64; -typedef unsigned long __u64; -#endif -#endif - typedef signed char s8; typedef unsigned char u8; diff --git a/xen/arch/riscv/include/asm/types.h b/xen/arch/riscv/include/asm/types.h index 0c0ce78c8f6e..93a680a8f323 100644 --- a/xen/arch/riscv/include/asm/types.h +++ b/xen/arch/riscv/include/asm/types.h @@ -1,25 +1,6 @@ #ifndef __RISCV_TYPES_H__ #define __RISCV_TYPES_H__ -typedef __signed__ char __s8; -typedef unsigned char __u8; - -typedef __signed__ short __s16; -typedef unsigned short __u16; - -typedef __signed__ int __s32; -typedef unsigned int __u32; - -#if defined(__GNUC__) && !defined(__STRICT_ANSI__) -#if defined(CONFIG_RISCV_32) -typedef __signed__ long long __s64; -typedef unsigned long long __u64; -#elif defined (CONFIG_RISCV_64) -typedef __signed__ long __s64; -typedef unsigned long __u64; -#endif -#endif - typedef signed char s8; typedef unsigned char u8; diff --git a/xen/arch/x86/include/asm/types.h b/xen/arch/x86/include/asm/types.h index 2d56aed66782..a5d4f6e9587a 100644 --- a/xen/arch/x86/include/asm/types.h +++ b/xen/arch/x86/include/asm/types.h @@ -1,18 +1,15 @@ #ifndef __X86_TYPES_H__ #define __X86_TYPES_H__ -typedef __signed__ char __s8; -typedef unsigned char __u8; - -typedef __signed__ short __s16; -typedef unsigned short __u16; - -typedef __signed__ int __s32; -typedef unsigned int __u32; - -#if defined(__GNUC__) && !defined(__STRICT_ANSI__) -typedef __signed__ long __s64; -typedef unsigned long __u64; +#ifndef __INT8_TYPE__ /* GCC <= 4.4 */ +# define __INT8_TYPE__ signed char +# define __UINT8_TYPE__ unsigned char +# define __INT16_TYPE__ short +# define __UINT16_TYPE__ unsigned short +# define __INT32_TYPE__ int +# define __UINT32_TYPE__ unsigned int +# define __INT64_TYPE__ long +# define __UINT64_TYPE__ unsigned long #endif typedef signed char s8; diff --git a/xen/include/xen/types.h b/xen/include/xen/types.h index 8b22a02eeaa4..4083f1bf18b0 100644 --- a/xen/include/xen/types.h +++ b/xen/include/xen/types.h @@ -11,6 +11,15 @@ typedef signed long ssize_t; typedef __PTRDIFF_TYPE__ ptrdiff_t; +typedef __INT8_TYPE__ int8_t; +typedef __UINT8_TYPE__ uint8_t; +typedef __INT16_TYPE__ int16_t; +typedef __UINT16_TYPE__ uint16_t; +typedef __INT32_TYPE__ int32_t; +typedef __UINT32_TYPE__ uint32_t; +typedef __INT64_TYPE__ int64_t; +typedef __UINT64_TYPE__ uint64_t; + #define BITS_TO_LONGS(bits) \ (((bits)+BITS_PER_LONG-1)/BITS_PER_LONG) #define DECLARE_BITMAP(name,bits) \ @@ -39,17 +48,14 @@ typedef __PTRDIFF_TYPE__ ptrdiff_t; #define LONG_MIN (-LONG_MAX - 1) #define ULONG_MAX (~0UL) -typedef __u8 uint8_t; -typedef __s8 int8_t; - -typedef __u16 uint16_t; -typedef __s16 int16_t; - -typedef __u32 uint32_t; -typedef __s32 int32_t; - -typedef __u64 uint64_t; -typedef __s64 int64_t; +typedef uint8_t __u8; +typedef int8_t __s8; +typedef uint16_t __u16; +typedef int16_t __s16; +typedef uint32_t __u32; +typedef int32_t __s32; +typedef uint64_t __u64; +typedef int64_t __s64; typedef __u16 __le16; typedef __u16 __be16; -- 2.30.2 From xen-devel-bounces@lists.xenproject.org Wed Jun 21 21:12:28 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 21:12:28 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553146.863548 (Exim 4.92) (envelope-from ) id 1qC57l-0006uQ-MD; Wed, 21 Jun 2023 21:12:21 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553146.863548; Wed, 21 Jun 2023 21:12:21 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC57l-0006uH-JC; Wed, 21 Jun 2023 21:12:21 +0000 Received: by outflank-mailman (input) for mailman id 553146; Wed, 21 Jun 2023 21:12:20 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC57k-0006QB-OT for xen-devel@lists.xenproject.org; Wed, 21 Jun 2023 21:12:20 +0000 Received: from esa6.hc3370-68.iphmx.com (esa6.hc3370-68.iphmx.com [216.71.155.175]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 4e1c8d72-1078-11ee-8611-37d641c3527e; Wed, 21 Jun 2023 23:12:19 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 4e1c8d72-1078-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1687381938; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=8PGVbTSNvcVmjoHTepH7x0XW0Ng7LzFsr4r2eAR8kF8=; b=P4TATj58J7MO8u904uY+oXByeIMax5uAPQ8R2eaPMFHWi8qBGKl2MScv LEYwCViFeUdjc/RvgBN9t6su3ckjkCu7rS8TS9vAsfg8LFSp720L2KtMn JWlka20lo76NWThtrmkhVgBJrBjY7WhUDO7EPo7CZ0ou8LQ/JDy7fwzF2 I=; Authentication-Results: esa6.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none X-SBRS: 4.0 X-MesageID: 112996392 X-Ironport-Server: esa6.hc3370-68.iphmx.com X-Remote-IP: 162.221.156.123 X-Policy: $RELAYED IronPort-Data: A9a23:V+2B06iFkaNFF77VpyATCjn2X161bhcKZh0ujC45NGQN5FlHY01je htvCz+HOqqJYDT8f9FzaYu+9xkAsZODxoA3TgVv/C9jEyIb9cadCdqndUqhZCn6wu8v7q5Ex 55HNoSfdpBcolv0/ErF3m3J9CEkvU2wbuOgTrWCYmYpHlUMpB4J0XpLg/Q+jpNjne+3CgaMv cKai8DEMRqu1iUc3lg8sspvkzsx+qyq0N8klgZmP6sT4gWHzyV94K83fsldEVOpGuG4IcbiL wrz5OnR1n/U+R4rFuSknt7TGqHdauePVeQmoiM+t5mK2nCulARrukoIHKN0hXNsoyeIh7hMJ OBl7vRcf+uL0prkw4zxWzEAe8130DYvFLXveRBTuuTLp6HKnueFL1yDwyjaMKVBktubD12i+ tRbOjY0MEiGrdmR/+3ra/BCocY6EevSadZ3VnFIlVk1DN4jSJHHBa7L+cVZzHE7gcUm8fT2P pRDL2A1NVKZPkMJYw1MYH49tL7Aan3XWjtUsl+K44Ew5HDe1ldZ27nxKtvFPNeNQK25m27B/ ziXrjqiU0ty2Nq3wie7zC3riuLzxxjBG70AE7KE394xqQjGroAUIEJPDgbqyRWjsWauVtQaJ 0EK9y4Gqakp6FftXtT7Rwe/onOPolgbQdU4O88Q5RyJy6HUyx2EHWVCRTlEAPQ9r9M/TzEu0 l6PnvvqCCZpvbnTTmiSnp+LqRuiNC5TKnUNDQcGUA8E7t/LsIw1yBXVQb5LLqmxidHkHCDq9 BqDpiM+mrY7gNYC0uOw+lWvqzihvITTRwg5oADeRHu47xhRbZSgIYev7DDz5PJBN5qQT0PHs mINncOf98gRAZrLnyuIKM0HG7uj9vueMDnRhFdpN5Yk/jWpvXWkeOh46zZ4IkBrPs8aeCTBb 0rauAcX75hWVFOtaaJ0eIOwTcc316/rFdfifv/RZ9tKJJN2cWev5yhobFWM1nvsl2A2mLkjP o2Wd8mtC3sXE6Vhw3y9QOJ1+aMzyykk3mTVbYry1wigy7eYa3+TRLofMV2BKOs+6cu5TB79q ogFcZHQklMGDbO4O3OMmWIOEbwUBTspA6mo88l9Tcm8fVpHAU8GCebs44p0LuSJgJ9pevf0E mCVAxEIlwGh1SObeW1meVg4NuqxAM8XQWYTeHV1YA32gyVLjZOHtv93SnchQVUwGAWPJ9ZQR uJNRciPC+8npt/vq2VENsmVQGCPmX2WaeOy08mNOmJXk2ZIHVChxzMdVlKHGNMyJiS2r9Aih LaryxnWR5EOLyw7UpaJM631lQPp4CNM8A6XY6cuCoMIEKkL2NIwQxEdc9dte51cQfk97mXyO /mq7ecw+rCW/t5dHCjhjqGYtYa5e9aS7WIDd1Q3GY2ebHGAlkL6mN8obQp9VWyFPI8C0Pn4N Lo9IjCVGKFvoWumRKImTOkylvtku4S0z1KYpyw9dEj2g52QIusIChG7MQNn7MWhGpcxVdOKZ 3+y IronPort-HdrOrdr: A9a23:8mNpzqw5JvHyB0YnHjw4KrPw3L1zdoMgy1knxilNoHxuH/Bw9v re+8jzsCWftN9/Yh4dcLy7VpVoBEmslqKdgrNhWYtKPjOHhILAFugLgbcKgQeQeREWntQ36U 4KSdkaNDSfNzlHZcaR2njFLz4jquP3j5xBU43lvglQpQIBUdAQ0+9gYDzrdHGf3GN9dOAE/J z33Ls/mxOQPU45Q+6cHXc/U+3Kt7Tw5e/biU5vPW9e1OGW5wnYk4LHLw== X-Talos-CUID: 9a23:bbIte27rI7KRUmw9Rdsst1wSI559d1fm60iPc26hJ0FrUYC3cArF X-Talos-MUID: 9a23:X3savwgw/n4G9MEVbalSAMMpP9pW3fvpBE0xy648+PaWMiNMEhfGpWHi X-IronPort-AV: E=Sophos;i="6.00,261,1681185600"; d="scan'208";a="112996392" From: Andrew Cooper To: Xen-devel CC: Andrew Cooper , Jan Beulich , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Wei Liu , Stefano Stabellini , Julien Grall , Volodymyr Babchuk , Bertrand Marquis , Bob Eshleman , Alistair Francis , Connor Davis , "Oleksii Kurochko" , Shawn Anastasio , Timothy Pearson Subject: [PATCH 1/2] xen/types: Drop #ifdefary for __{SIZE,PTRDIFF}_TYPE__ Date: Wed, 21 Jun 2023 22:11:59 +0100 Message-ID: <20230621211200.4132989-2-andrew.cooper3@citrix.com> X-Mailer: git-send-email 2.30.2 In-Reply-To: <20230621211200.4132989-1-andrew.cooper3@citrix.com> References: <20230621211200.4132989-1-andrew.cooper3@citrix.com> MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit All supported compilers have these types. No functional change. Signed-off-by: Andrew Cooper --- CC: Jan Beulich CC: Roger Pau Monné CC: Wei Liu CC: Stefano Stabellini CC: Julien Grall CC: Volodymyr Babchuk CC: Bertrand Marquis CC: Bob Eshleman CC: Alistair Francis CC: Connor Davis CC: Oleksii Kurochko CC: Shawn Anastasio CC: Timothy Pearson https://godbolt.org/z/Y6PWcd6js --- xen/include/xen/types.h | 9 +-------- 1 file changed, 1 insertion(+), 8 deletions(-) diff --git a/xen/include/xen/types.h b/xen/include/xen/types.h index 6aba80500aaf..8b22a02eeaa4 100644 --- a/xen/include/xen/types.h +++ b/xen/include/xen/types.h @@ -5,18 +5,11 @@ #include -#if defined(__SIZE_TYPE__) typedef __SIZE_TYPE__ size_t; -#else -typedef unsigned long size_t; -#endif + typedef signed long ssize_t; -#if defined(__PTRDIFF_TYPE__) typedef __PTRDIFF_TYPE__ ptrdiff_t; -#else -typedef signed long ptrdiff_t; -#endif #define BITS_TO_LONGS(bits) \ (((bits)+BITS_PER_LONG-1)/BITS_PER_LONG) -- 2.30.2 From xen-devel-bounces@lists.xenproject.org Wed Jun 21 21:27:30 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 21:27:30 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553162.863557 (Exim 4.92) (envelope-from ) id 1qC5M9-0000jc-V0; Wed, 21 Jun 2023 21:27:13 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553162.863557; Wed, 21 Jun 2023 21:27:13 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC5M9-0000jV-SB; Wed, 21 Jun 2023 21:27:13 +0000 Received: by outflank-mailman (input) for mailman id 553162; Wed, 21 Jun 2023 21:27:12 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC5M8-0000jP-Kx for xen-devel@lists.xenproject.org; Wed, 21 Jun 2023 21:27:12 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [2604:1380:4641:c500::1]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 6109a4fd-107a-11ee-b237-6b7b168915f2; Wed, 21 Jun 2023 23:27:10 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 0397C616DC; Wed, 21 Jun 2023 21:27:09 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 8CDB2C433C8; Wed, 21 Jun 2023 21:27:06 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 6109a4fd-107a-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1687382828; bh=LTwcw+kn3NeCOrzQob9a6YR0XhphElCW+HUWW+2QnIs=; h=Date:From:To:cc:Subject:In-Reply-To:References:From; b=dhnAmRq5MWeBtQm3HUNWWDJ0PRdYJEA2mCYPP+DQRCj7J291arrTicSFDjdplN5YT 7M4288FPgF/JkMICzb4v1W37tngnhPGilKaKgH+kK9KCntUEGIDJ1G50lZiXPoZPS4 ornX+lfRws5qAmk951QVRLgt/1kxLck9HSnVLgTic7JRSKZ7PfwUZAlIZ87PwWmvej bHLxFZP600eyVC6onF/xy9ACRx54uDHaNNvzAOSCdQ8gtzLYVvkUdElKN712uWoyK7 TDcQlzFwwN2PUDY+0yEON+izSyHWq7aZcJWs16QA+W65ZWiRGT87N38weIdU/1uzol HuvvfY/lUj6xw== Date: Wed, 21 Jun 2023 14:27:05 -0700 (PDT) From: Stefano Stabellini X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop To: Jan Beulich cc: Stefano Stabellini , xen-devel@lists.xenproject.org, consulting@bugseng.com, Gianluca Luparini , Andrew Cooper , =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= , Wei Liu , Paul Durrant , Michal Orzel , Xenia Ragiadakou , Ayan Kumar , Simone Ballarin Subject: Re: [XEN PATCH 12/13] xen/x86: fixed violations of MISRA C:2012 Rule 7.2 In-Reply-To: Message-ID: References: <27690fdf9658339f12061f1bd171ebe5f969eb1b.1687250177.git.gianluca.luparini@bugseng.com> User-Agent: Alpine 2.22 (DEB 394 2020-01-19) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII On Wed, 21 Jun 2023, Jan Beulich wrote: > First of all - please trim replies. > > On 20.06.2023 23:23, Stefano Stabellini wrote: > > On Tue, 20 Jun 2023, Simone Ballarin wrote: > >> --- a/xen/arch/x86/percpu.c > >> +++ b/xen/arch/x86/percpu.c > >> @@ -12,7 +12,7 @@ unsigned long __per_cpu_offset[NR_CPUS]; > >> * possible #PF at (NULL + a little) which has security implications in the > >> * context of PV guests. > >> */ > >> -#define INVALID_PERCPU_AREA (0x8000000000000000L - (long)__per_cpu_start) > >> +#define INVALID_PERCPU_AREA (0x8000000000000000UL - (long)__per_cpu_start) > >> #define PERCPU_ORDER get_order_from_bytes(__per_cpu_data_end - __per_cpu_start) > > > > Hi Jan, should this be ULL? > > Not really, no - we're 64-bit only. Furthermore the expression is > about addresses, which correspond to "unsigned long" in our world. [...] > >> --- a/xen/include/public/arch-x86/xen-x86_64.h > >> +++ b/xen/include/public/arch-x86/xen-x86_64.h > >> @@ -53,10 +53,10 @@ > >> #define FLAT_USER_SS32 FLAT_RING3_SS32 > >> #define FLAT_USER_SS FLAT_USER_SS64 > >> > >> -#define __HYPERVISOR_VIRT_START 0xFFFF800000000000 > >> -#define __HYPERVISOR_VIRT_END 0xFFFF880000000000 > >> -#define __MACH2PHYS_VIRT_START 0xFFFF800000000000 > >> -#define __MACH2PHYS_VIRT_END 0xFFFF804000000000 > >> +#define __HYPERVISOR_VIRT_START 0xFFFF800000000000U > >> +#define __HYPERVISOR_VIRT_END 0xFFFF880000000000U > >> +#define __MACH2PHYS_VIRT_START 0xFFFF800000000000U > >> +#define __MACH2PHYS_VIRT_END 0xFFFF804000000000U > > > > Also here ULL? > > UL yes, but as above I don't think ULL is good to use for addresses. > That said, things are a little less clear in the public headers: In > principle it could be a goal for them to be usable on foreign > architectures (say e.g. a 32-bit tool stack, or an analysis tool > which can be run without being on the original host architecture) as > well. > > Furthermore, open-coded use of ULL would make this no-longer-C89. > If anything, it would then need to be UINT64_C(), yet even that would > grow our public header dependencies on C99-like infrastructure being > available (right now we only require certain stdint.h-like types; > Arm alone, interestingly, also uses PRIx64 and PRIu64, which may be > kind of unavoidable there). UL seems to be the best option then. From xen-devel-bounces@lists.xenproject.org Wed Jun 21 21:32:09 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 21:32:09 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553167.863567 (Exim 4.92) (envelope-from ) id 1qC5Qj-0002CR-Gi; Wed, 21 Jun 2023 21:31:57 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553167.863567; Wed, 21 Jun 2023 21:31:57 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC5Qj-0002CK-Ds; Wed, 21 Jun 2023 21:31:57 +0000 Received: by outflank-mailman (input) for mailman id 553167; Wed, 21 Jun 2023 21:31:55 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC5Qh-0002CC-LX for xen-devel@lists.xenproject.org; Wed, 21 Jun 2023 21:31:55 +0000 Received: from mail-wm1-x32a.google.com (mail-wm1-x32a.google.com [2a00:1450:4864:20::32a]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 0a6dd2a3-107b-11ee-b237-6b7b168915f2; Wed, 21 Jun 2023 23:31:53 +0200 (CEST) Received: by mail-wm1-x32a.google.com with SMTP id 5b1f17b1804b1-3f8fcaa31c7so70186295e9.3 for ; Wed, 21 Jun 2023 14:31:53 -0700 (PDT) Received: from [127.0.0.1] (dynamic-077-183-108-061.77.183.pool.telefonica.de. [77.183.108.61]) by smtp.gmail.com with ESMTPSA id x23-20020a05600c21d700b003f427687ba7sm5881297wmj.41.2023.06.21.14.31.52 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Wed, 21 Jun 2023 14:31:52 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 0a6dd2a3-107b-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687383113; x=1689975113; h=content-transfer-encoding:mime-version:message-id:references :in-reply-to:subject:cc:to:from:date:from:to:cc:subject:date :message-id:reply-to; bh=7KMCQ6sgn5StAgfvPFvdTiexcUMfX+Z2+ZVb5iGnBQ8=; b=B+pbVPow+bV7jtip1hNAs/b+BAtaVLUhspeNXupLz822AMZOs+1qUiHBOtGlnJOLQc 9iuu+hOetABVFWcAC5bptXwp9CbWr5Yf06YYnJxN1daLvek0b0Qmt670tn0bGvhBFOax qAcRuHH5td0TowQV+AZkftzoda8hzM6qhtUkc9mlDLGoJkdlsOvlenNSSuoqo5F3DNHu QdYFyOk8KGYt0jfEg3zKzU9W88V7C2XcUy+8l0GBZW4Ciht2J3HaACGxllfdXWvS/e46 GRVfKa+5rtAfAGobc96Wwgg1dSZtCgJhvx2srJNXEFreJNA98xaOmHXHoeRPdlRe0umD AL6g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687383113; x=1689975113; h=content-transfer-encoding:mime-version:message-id:references :in-reply-to:subject:cc:to:from:date:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=7KMCQ6sgn5StAgfvPFvdTiexcUMfX+Z2+ZVb5iGnBQ8=; b=eNUUvY+xHVxVVKJIzjccunQcCc7uJA6Wyw/I6z1WrI/xubYVvShEgu6YeZjEPSLD41 nOYHSXj1u7tNrOf/WUeWs+XE7PG1aqbzzxAGqIv0Lg6hARg7gf4eAiNMHTEw8rTq+tfj m4KYUqY0MjsVm/9F+Qf1G4jl+DIbZeMfl8yt7otSqyqvBXb+3P69muESObtclny9SzrQ hylAs6quBO6scFDeJTnhpy6qI0jP5rC1/K8pn98XevsPE2ITIpCbufBjvc/3N5/6pGaA RgTg97D7D2Ob15R/NiZPFQI1CXKd1SVCPbn31yI2C2KZhhV18XW9kPc0aLUa06TPwxm8 WAew== X-Gm-Message-State: AC+VfDwicYhFk7ifxCQdH0MQOXNibEuzFPp01Orjn7MH/h745v0Iuisb 3XdZZ/faRBRhcw1u5+FUpxQ= X-Google-Smtp-Source: ACHHUZ416rar+TOxQLzIqPvAjnOk9F8R3Pd3AYYoZsu+B3rz+8rdOFmQN8MjyPf1NnCgZqHwl2HKlw== X-Received: by 2002:a05:600c:2255:b0:3f9:a6f3:8a55 with SMTP id a21-20020a05600c225500b003f9a6f38a55mr11018623wmm.37.1687383112878; Wed, 21 Jun 2023 14:31:52 -0700 (PDT) Date: Wed, 21 Jun 2023 17:27:57 +0000 From: Bernhard Beschow To: Joel Upham , qemu-devel@nongnu.org CC: "Michael S. Tsirkin" , Marcel Apfelbaum , Igor Mammedov , Ani Sinha , Eduardo Habkost , =?ISO-8859-1?Q?Philippe_Mathieu-Daud=E9?= , Yanan Wang , Paolo Bonzini , Richard Henderson , Stefano Stabellini , Anthony Perard , Paul Durrant , =?ISO-8859-1?Q?Daniel_P=2E_Berrang=E9?= , xen-devel@lists.xenproject.org Subject: Re: [PATCH v1 1/1] Q35 Support In-Reply-To: <272947b9494f00bb4ad3e27c050e99f8b61905b3.1687127946.git.jupham125@gmail.com> References: <272947b9494f00bb4ad3e27c050e99f8b61905b3.1687127946.git.jupham125@gmail.com> Message-ID: <04872971-A186-40E6-A604-B9B5297216CA@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Hi Joel, Nice! I've been working on making the PIIX south bridge Xen agnostic, part= ly to show how Xen enablement in Q35 could look like=2E Not that I'd have a= ny use case for it but great to see that you've actually done that! I know you didn't intend to send this patch but I'll give you some early c= omments anyway=2E Am 20=2E Juni 2023 17:24:35 UTC schrieb Joel Upham = : >--- > hw/acpi/ich9=2Ec | 22 +- > hw/acpi/pcihp=2Ec | 6 +- > hw/core/machine=2Ec | 19 + > hw/i386/pc_piix=2Ec | 3 +- > hw/i386/pc_q35=2Ec | 39 +- > hw/i386/xen/xen-hvm=2Ec | 7 +- > hw/i386/xen/xen_platform=2Ec | 19 +- > hw/isa/lpc_ich9=2Ec | 53 +- > hw/isa/piix3=2Ec | 2 +- > hw/pci-host/q35=2Ec | 28 +- > hw/pci/pci=2Ec | 17 + > hw/xen/xen-host-pci-device=2Ec | 106 +++- > hw/xen/xen-host-pci-device=2Eh | 6 +- > hw/xen/xen_pt=2Ec | 49 +- > hw/xen/xen_pt=2Eh | 19 +- > hw/xen/xen_pt_config_init=2Ec | 1103 ++++++++++++++++++++++++++++++--- > include/hw/acpi/ich9=2Eh | 1 + > include/hw/acpi/pcihp=2Eh | 2 + > include/hw/boards=2Eh | 1 + > include/hw/i386/pc=2Eh | 3 + > include/hw/pci-host/q35=2Eh | 4 +- > include/hw/pci/pci=2Eh | 3 + > include/hw/southbridge/ich9=2Eh | 1 + > include/hw/xen/xen=2Eh | 4 +- > qemu-options=2Ehx | 1 + > softmmu/datadir=2Ec | 1 - > softmmu/qdev-monitor=2Ec | 3 +- > stubs/xen-hw-stub=2Ec | 4 +- > 28 files changed, 1395 insertions(+), 131 deletions(-) > >diff --git a/hw/acpi/ich9=2Ec b/hw/acpi/ich9=2Ec >index 25e2c7243e=2E=2E234706a191 100644 >--- a/hw/acpi/ich9=2Ec >+++ b/hw/acpi/ich9=2Ec >@@ -39,6 +39,8 @@ > #include "hw/southbridge/ich9=2Eh" > #include "hw/mem/pc-dimm=2Eh" > #include "hw/mem/nvdimm=2Eh" >+#include "hw/xen/xen=2Eh" >+#include "sysemu/xen=2Eh" >=20 > //#define DEBUG >=20 >@@ -67,6 +69,10 @@ static void ich9_gpe_writeb(void *opaque, hwaddr addr,= uint64_t val, > ICH9LPCPMRegs *pm =3D opaque; > acpi_gpe_ioport_writeb(&pm->acpi_regs, addr, val); > acpi_update_sci(&pm->acpi_regs, pm->irq); >+ >+ if (xen_enabled()) { >+ acpi_pcihp_reset(&pm->acpi_pci_hotplug); >+ } > } >=20 > static const MemoryRegionOps ich9_gpe_ops =3D { >@@ -137,7 +143,8 @@ static int ich9_pm_post_load(void *opaque, int versio= n_id) > { > ICH9LPCPMRegs *pm =3D opaque; > uint32_t pm_io_base =3D pm->pm_io_base; >- pm->pm_io_base =3D 0; >+ if (!xen_enabled()) >+ pm->pm_io_base =3D 0; > ich9_pm_iospace_update(pm, pm_io_base); > return 0; > } >@@ -268,7 +275,10 @@ static void pm_reset(void *opaque) > acpi_pm1_evt_reset(&pm->acpi_regs); > acpi_pm1_cnt_reset(&pm->acpi_regs); > acpi_pm_tmr_reset(&pm->acpi_regs); >- acpi_gpe_reset(&pm->acpi_regs); >+ /* Noticed guest freezing in xen when this was reset after S3=2E */ >+ if (!xen_enabled()) { >+ acpi_gpe_reset(&pm->acpi_regs); >+ } I wonder why this seems to work with PIIX? I'd rather try to keep the Xen impact on the device model as low as possib= le, ideally as low as in the PIIX4 ACPI device model=2E >=20 > pm->smi_en =3D 0; > if (!pm->smm_enabled) { >@@ -316,7 +326,7 @@ void ich9_pm_init(PCIDevice *lpc_pci, ICH9LPCPMRegs *= pm, qemu_irq sci_irq) > acpi_pm_tco_init(&pm->tco_regs, &pm->io); > } >=20 >- if (pm->acpi_pci_hotplug=2Euse_acpi_hotplug_bridge) { >+ if (pm->acpi_pci_hotplug=2Euse_acpi_hotplug_bridge || xen_enabled())= { > acpi_pcihp_init(OBJECT(lpc_pci), > &pm->acpi_pci_hotplug, > pci_get_bus(lpc_pci), >@@ -332,10 +342,14 @@ void ich9_pm_init(PCIDevice *lpc_pci, ICH9LPCPMRegs= *pm, qemu_irq sci_irq) > pm->powerdown_notifier=2Enotify =3D pm_powerdown_req; > qemu_register_powerdown_notifier(&pm->powerdown_notifier); >=20 >+ if (xen_enabled()) { >+ acpi_set_pci_info(true); >+ } >+ > legacy_acpi_cpu_hotplug_init(pci_address_space_io(lpc_pci), > OBJECT(lpc_pci), &pm->gpe_cpu, ICH9_CPU_HOTPLUG_IO_BASE); >=20 >- if (pm->acpi_memory_hotplug=2Eis_enabled) { >+ if (pm->acpi_memory_hotplug=2Eis_enabled || xen_enabled()) { > acpi_memory_hotplug_init(pci_address_space_io(lpc_pci), OBJECT(l= pc_pci), > &pm->acpi_memory_hotplug, > ACPI_MEMORY_HOTPLUG_BASE); >diff --git a/hw/acpi/pcihp=2Ec b/hw/acpi/pcihp=2Ec >index cdd6f775a1=2E=2E5b065d670c 100644 >--- a/hw/acpi/pcihp=2Ec >+++ b/hw/acpi/pcihp=2Ec >@@ -40,6 +40,7 @@ > #include "qapi/error=2Eh" > #include "qom/qom-qobject=2Eh" > #include "trace=2Eh" >+#include "sysemu/xen=2Eh" >=20 > #define ACPI_PCIHP_SIZE 0x0018 > #define PCI_UP_BASE 0x0000 >@@ -84,7 +85,8 @@ static void *acpi_set_bsel(PCIBus *bus, void *opaque) > bool is_bridge =3D IS_PCI_BRIDGE(br); >=20 > /* hotplugged bridges can't be described in ACPI ignore them */ >- if (qbus_is_hotpluggable(BUS(bus))) { >+ /* Xen requires hotplugging to the root device, even on the Q35 chip= set */ >+ if (qbus_is_hotpluggable(BUS(bus)) || xen_enabled()) { > if (!is_bridge || (!br->hotplugged && info->has_bridge_hotplug))= { > bus_bsel =3D g_malloc(sizeof *bus_bsel); >=20 >@@ -97,7 +99,7 @@ static void *acpi_set_bsel(PCIBus *bus, void *opaque) > return info; > } >=20 >-static void acpi_set_pci_info(bool has_bridge_hotplug) >+void acpi_set_pci_info(bool has_bridge_hotplug) > { > static bool bsel_is_set; > Object *host =3D acpi_get_i386_pci_host(); >diff --git a/hw/core/machine=2Ec b/hw/core/machine=2Ec >index 1000406211=2E=2E703138d2ec 100644 >--- a/hw/core/machine=2Ec >+++ b/hw/core/machine=2Ec >@@ -455,6 +455,20 @@ static void machine_set_graphics(Object *obj, bool v= alue, Error **errp) > ms->enable_graphics =3D value; > } >=20 >+static bool machine_get_xen_platform_dev(Object *obj, Error **errp) >+{ >+ MachineState *ms =3D MACHINE(obj); >+ >+ return ms->xen_platform_dev; >+} >+ >+static void machine_set_xen_platform_dev(Object *obj, bool value, Error = **errp) >+{ >+ MachineState *ms =3D MACHINE(obj); >+ >+ ms->xen_platform_dev =3D value; >+} >+ > static char *machine_get_firmware(Object *obj, Error **errp) > { > MachineState *ms =3D MACHINE(obj); >@@ -1004,6 +1018,11 @@ static void machine_class_init(ObjectClass *oc, vo= id *data) > object_class_property_set_description(oc, "graphics", > "Set on/off to enable/disable graphics emulation"); >=20 >+ object_class_property_add_bool(oc, "xen-platform-dev", >+ machine_get_xen_platform_dev, machine_set_xen_platform_dev); >+ object_class_property_set_description(oc, "xen-platform-dev", >+ "Set on/off to enable/disable Xen Platform device"); >+ > object_class_property_add_str(oc, "firmware", > machine_get_firmware, machine_set_firmware); > object_class_property_set_description(oc, "firmware", >diff --git a/hw/i386/pc_piix=2Ec b/hw/i386/pc_piix=2Ec >index d5b0dcd1fe=2E=2E8c1b20f3bc 100644 >--- a/hw/i386/pc_piix=2Ec >+++ b/hw/i386/pc_piix=2Ec >@@ -62,6 +62,7 @@ > #endif > #include "hw/xen/xen-x86=2Eh" > #include "hw/xen/xen=2Eh" >+#include "sysemu/xen=2Eh" > #include "migration/global_state=2Eh" > #include "migration/misc=2Eh" > #include "sysemu/numa=2Eh" >@@ -233,7 +234,7 @@ static void pc_init1(MachineState *machine, > x86ms->above_4g_mem_size, > pci_memory, ram_memory); > pci_bus_map_irqs(pci_bus, >- xen_enabled() ? xen_pci_slot_get_pirq >+ xen_enabled() ? xen_cmn_pci_slot_get_pirq > : pc_pci_slot_get_pirq); > pcms->bus =3D pci_bus; >=20 >diff --git a/hw/i386/pc_q35=2Ec b/hw/i386/pc_q35=2Ec >index 6155427e48=2E=2E81aa9e04f0 100644 >--- a/hw/i386/pc_q35=2Ec >+++ b/hw/i386/pc_q35=2Ec >@@ -57,10 +57,24 @@ > #include "hw/hyperv/vmbus-bridge=2Eh" > #include "hw/mem/nvdimm=2Eh" > #include "hw/i386/acpi-build=2Eh" >+#include "hw/xen/xen-x86=2Eh" >+#include "sysemu/xen=2Eh" >=20 > /* ICH9 AHCI has 6 ports */ > #define MAX_SATA_PORTS 6 >=20 >+static void q35_xen_hvm_init(MachineState *machine) >+{ >+ PCMachineState *pcms =3D PC_MACHINE(machine); >+ >+ if (xen_enabled()) { >+ /* check if Xen Platform device is enabled */ >+ if (machine->xen_platform_dev) { >+ pci_create_simple(pcms->bus, -1, "xen-platform"); >+ } >+ } >+} >+ > struct ehci_companions { > const char *name; > int func; >@@ -131,6 +145,7 @@ static void pc_q35_init(MachineState *machine) > MemoryRegion *system_io =3D get_system_io(); > MemoryRegion *pci_memory; > MemoryRegion *rom_memory; >+ MemoryRegion *ram_memory; > GSIState *gsi_state; > ISABus *isa_bus; > int i; >@@ -182,8 +197,12 @@ static void pc_q35_init(MachineState *machine) > } >=20 > pc_machine_init_sgx_epc(pcms); >- x86_cpus_init(x86ms, pcmc->default_cpu_version); >=20 >+ x86_cpus_init(x86ms, pcmc->default_cpu_version); >+ if (xen_enabled()) { >+ xen_hvm_init_pc(pcms, &ram_memory); >+ machine->ram =3D ram_memory; >+ } > kvmclock_create(pcmc->kvmclock_create_always); >=20 > /* pci enabled */ >@@ -216,7 +235,15 @@ static void pc_q35_init(MachineState *machine) > } >=20 > /* allocate ram and load rom/bios */ >- pc_memory_init(pcms, system_memory, rom_memory, pci_hole64_size); >+ if (!xen_enabled())=20 >+ pc_memory_init(pcms, system_memory, rom_memory, pci_hole64_size)= ; >+ else { >+ pc_system_flash_cleanup_unused(pcms); >+ if (machine->kernel_filename !=3D NULL) { >+ /* For xen HVM direct kernel boot, load linux here */ >+ xen_load_linux(pcms); >+ } >+ } >=20 > object_property_add_child(OBJECT(machine), "q35", OBJECT(q35_host)); > object_property_set_link(OBJECT(q35_host), MCH_HOST_PROP_RAM_MEM, >@@ -273,8 +300,12 @@ static void pc_q35_init(MachineState *machine) > for (i =3D 0; i < IOAPIC_NUM_PINS; i++) { > qdev_connect_gpio_out_named(lpc_dev, ICH9_GPIO_GSI, i, x86ms->gs= i[i]); > } >- isa_bus =3D ISA_BUS(qdev_get_child_bus(lpc_dev, "isa=2E0")); Why move? I'd only move if it makes code consistent with piix=2E >=20 >+ if (xen_enabled()) { >+ q35_xen_hvm_init(machine); >+ } >+ >+ isa_bus =3D ISA_BUS(qdev_get_child_bus(lpc_dev, "isa=2E0")); > if (x86ms->pic =3D=3D ON_OFF_AUTO_ON || x86ms->pic =3D=3D ON_OFF_AUT= O_AUTO) { > pc_i8259_create(isa_bus, gsi_state->i8259_irq); > } >@@ -289,7 +320,7 @@ static void pc_q35_init(MachineState *machine) >=20 > assert(pcms->vmport !=3D ON_OFF_AUTO__MAX); > if (pcms->vmport =3D=3D ON_OFF_AUTO_AUTO) { >- pcms->vmport =3D ON_OFF_AUTO_ON; >+ pcms->vmport =3D xen_enabled() ? ON_OFF_AUTO_OFF : ON_OFF_AUTO_O= N; > } >=20 > /* init basic PC hardware */ >diff --git a/hw/i386/xen/xen-hvm=2Ec b/hw/i386/xen/xen-hvm=2Ec >index 56641a550e=2E=2E540ac46639 100644 >--- a/hw/i386/xen/xen-hvm=2Ec >+++ b/hw/i386/xen/xen-hvm=2Ec >@@ -15,6 +15,7 @@ > #include "hw/pci/pci=2Eh" > #include "hw/pci/pci_host=2Eh" > #include "hw/i386/pc=2Eh" >+#include "hw/southbridge/ich9=2Eh" > #include "hw/irq=2Eh" > #include "hw/hw=2Eh" > #include "hw/i386/apic-msidef=2Eh" >@@ -136,14 +137,14 @@ typedef struct XenIOState { > Notifier wakeup; > } XenIOState; >=20 >-/* Xen specific function for piix pci */ >+/* Xen-specific functions for pci dev IRQ handling */ >=20 >-int xen_pci_slot_get_pirq(PCIDevice *pci_dev, int irq_num) >+int xen_cmn_pci_slot_get_pirq(PCIDevice *pci_dev, int irq_num) > { > return irq_num + (PCI_SLOT(pci_dev->devfn) << 2); > } >=20 >-void xen_piix3_set_irq(void *opaque, int irq_num, int level) I think this function should have a different name meanwhile=2E Which woul= d make renaming possibly unneccessary=2E >+void xen_cmn_set_irq(void *opaque, int irq_num, int level) > { > xen_set_pci_intx_level(xen_domid, 0, 0, irq_num >> 2, > irq_num & 3, level); >diff --git a/hw/i386/xen/xen_platform=2Ec b/hw/i386/xen/xen_platform=2Ec >index 57f1d742c1=2E=2E0375337222 100644 >--- a/hw/i386/xen/xen_platform=2Ec >+++ b/hw/i386/xen/xen_platform=2Ec >@@ -34,6 +34,7 @@ > #include "sysemu/block-backend=2Eh" > #include "qemu/error-report=2Eh" > #include "qemu/module=2Eh" >+#include "include/hw/i386/pc=2Eh" > #include "qom/object=2Eh" >=20 > #ifdef CONFIG_XEN >@@ -223,6 +224,12 @@ static void unplug_disks(PCIBus *b, PCIDevice *d, vo= id *opaque) > if (flags & UNPLUG_NVME_DISKS) { > object_unparent(OBJECT(d)); > } >+ break; >+ >+ case PCI_CLASS_STORAGE_SATA: >+ if (!aux) { >+ object_unparent(OBJECT(d)); >+ } >=20 > default: > break; >@@ -231,7 +238,17 @@ static void unplug_disks(PCIBus *b, PCIDevice *d, vo= id *opaque) >=20 > static void pci_unplug_disks(PCIBus *bus, uint32_t flags) > { >- pci_for_each_device(bus, 0, unplug_disks, &flags); >+ PCIBus *q35 =3D find_q35(); >+ if (q35) { >+ /* When q35 is detected, we will remove the ahci controller >+ * with the hard disks=2E In the libxl config, cdrom devices >+ * are put on a seperate ahci controller=2E This allows for 6 cdrom >+ * devices to be added, and 6 qemu hard disks=2E >+ */ >+ pci_function_for_one_bus(bus, unplug_disks, &flags); >+ } else { >+ pci_for_each_device(bus, 0, unplug_disks, &flags); >+ } > } >=20 > static void platform_fixed_ioport_writew(void *opaque, uint32_t addr, ui= nt32_t val) >diff --git a/hw/isa/lpc_ich9=2Ec b/hw/isa/lpc_ich9=2Ec >index 9c47a2f6c7=2E=2Efbda6085d0 100644 >--- a/hw/isa/lpc_ich9=2Ec >+++ b/hw/isa/lpc_ich9=2Ec >@@ -51,6 +51,9 @@ > #include "hw/core/cpu=2Eh" > #include "hw/nvram/fw_cfg=2Eh" > #include "qemu/cutils=2Eh" >+#include "hw/xen/xen=2Eh" >+#include "sysemu/xen=2Eh" >+#include "hw/southbridge/piix=2Eh" > #include "hw/acpi/acpi_aml_interface=2Eh" > #include "trace=2Eh" >=20 >@@ -535,11 +538,49 @@ static int ich9_lpc_post_load(void *opaque, int ver= sion_id) > return 0; > } >=20 >+static void ich9_lpc_config_write_xen(PCIDevice *d, >+ uint32_t addr, uint32_t val, int len) >+{ =20 >+ static bool pirqe_f_warned =3D false; >+ if (ranges_overlap(addr, len, ICH9_LPC_PIRQA_ROUT, 4)) { >+ /* handle PIRQA=2E=2EPIRQD routing */ >+ /* Scan for updates to PCI link routes (0x60-0x63)=2E */ >+ int i;=20 >+ for (i =3D 0; i < len; i++) { >+ uint8_t v =3D (val >> (8 * i)) & 0xff; >+ if (v & 0x80) { >+ v =3D 0; >+ }=20 >+ v &=3D 0xf; >+ if (((addr + i) >=3D PIIX_PIRQCA) && ((addr + i) <=3D PIIX_P= IRQCD)) { >+ xen_set_pci_link_route(addr + i - PIIX_PIRQCA, v); >+ } >+ } >+ } else if (ranges_overlap(addr, len, ICH9_LPC_PIRQE_ROUT, 4)) { >+ while (len--) { >+ if (range_covers_byte(ICH9_LPC_PIRQE_ROUT, 4, addr) && >+ (val & 0x80) =3D=3D 0) { >+ /* print warning only once */ >+ if (!pirqe_f_warned) { >+ pirqe_f_warned =3D true; >+ fprintf(stderr, "WARNING: guest domain attempted to = use PIRQ%c " >+ "routing which is not supported for Xen/Q35 = currently\n", >+ (char)(addr - ICH9_LPC_PIRQE_ROUT + 'E')); >+ break; >+ } >+ } >+ addr++, val >>=3D 8; >+ } >+ } >+} >+ Can we do the same trick here we're doing in piix -- by subscribing to PCI= IRQ routing change events? The goal would be to leave LPC Xen-agnostic=2E > static void ich9_lpc_config_write(PCIDevice *d, > uint32_t addr, uint32_t val, int len) > { > ICH9LPCState *lpc =3D ICH9_LPC_DEVICE(d); > uint32_t rcba_old =3D pci_get_long(d->config + ICH9_LPC_RC >+ if (xen_enabled()) >+ ich9_lpc_config_write_xen(d, addr, val, len); You could emit a PCI routing change event here unconditionally and subscri= be to it in pc_q35=2E >=20 > pci_default_write_config(d, addr, val, len); > if (ranges_overlap(addr, len, ICH9_LPC_PMBASE, 4) || >@@ -731,10 +772,14 @@ static void ich9_lpc_realize(PCIDevice *d, Error **= errp) > return; > } >=20 >- pci_bus_irqs(pci_bus, ich9_lpc_set_irq, d, ICH9_LPC_NB_PIRQS); >- pci_bus_map_irqs(pci_bus, ich9_lpc_map_irq); >- pci_bus_set_route_irq_fn(pci_bus, ich9_route_intx_pin_to_irq); >- >+ if (xen_enabled()) { >+ pci_bus_irqs(pci_bus, xen_cmn_set_irq, d, ICH9_XEN_NUM_IRQ_SOURC= ES); >+ pci_bus_map_irqs(pci_bus, xen_cmn_pci_slot_get_pirq); >+ } else { >+ pci_bus_irqs(pci_bus, ich9_lpc_set_irq, d, ICH9_LPC_NB_PIRQS); >+ pci_bus_map_irqs(pci_bus, ich9_lpc_map_irq); >+ pci_bus_set_route_irq_fn(pci_bus, ich9_route_intx_pin_to_irq); >+ } This could probably be wired up Xen-agnostic as well=2E See pc_piix for in= spiration=2E > ich9_lpc_pm_init(lpc); > } >=20 >diff --git a/hw/isa/piix3=2Ec b/hw/isa/piix3=2Ec >index f9103ea45a=2E=2E3d0545eb0e 100644 >--- a/hw/isa/piix3=2Ec >+++ b/hw/isa/piix3=2Ec >@@ -420,7 +420,7 @@ static void piix3_xen_realize(PCIDevice *dev, Error *= *errp) > * connected to the IOAPIC directly=2E > * These additional routes can be discovered through ACPI=2E > */ >- pci_bus_irqs(pci_bus, xen_piix3_set_irq, piix3, XEN_PIIX_NUM_PIRQS); >+ pci_bus_irqs(pci_bus, xen_cmn_set_irq, piix3, XEN_PIIX_NUM_PIRQS); This code has changed recently=2E PIIX3 doesn't know about Xen any more=2E= Take some inspiration from there to keep LPC Xen-agnostic=2E That's it for now from my side=2E Best regards, Bernhard > } >=20 > static void piix3_xen_class_init(ObjectClass *klass, void *data) >diff --git a/hw/pci-host/q35=2Ec b/hw/pci-host/q35=2Ec >index fd18920e7f=2E=2E3bb6325fb3 100644 >--- a/hw/pci-host/q35=2Ec >+++ b/hw/pci-host/q35=2Ec >@@ -37,6 +37,7 @@ > #include "qapi/error=2Eh" > #include "qapi/visitor=2Eh" > #include "qemu/module=2Eh" >+#include "sysemu/xen=2Eh" >=20 > /***********************************************************************= ***** > * Q35 host >@@ -259,6 +260,15 @@ static void q35_host_initfn(Object *obj) > qdev_prop_allow_set_link_before_realize, 0)= ; > } >=20 >+PCIBus *find_q35(void) >+{ >+ PCIHostState *s =3D OBJECT_CHECK(PCIHostState, >+ object_resolve_path("/machine/q35", N= ULL), >+ TYPE_PCI_HOST_BRIDGE); >+ return s ? s->bus : NULL; >+} >+ >+ > static const TypeInfo q35_host_info =3D { > =2Ename =3D TYPE_Q35_HOST_DEVICE, > =2Eparent =3D TYPE_PCIE_HOST_BRIDGE, >@@ -315,12 +325,21 @@ static void mch_update_pciexbar(MCHPCIState *mch) > break; > case MCH_HOST_BRIDGE_PCIEXBAR_LENGTH_128M: > length =3D 128 * 1024 * 1024; >- addr_mask |=3D MCH_HOST_BRIDGE_PCIEXBAR_128ADMSK | >- MCH_HOST_BRIDGE_PCIEXBAR_64ADMSK; >+ if (!xen_enabled()) { >+ addr_mask |=3D MCH_HOST_BRIDGE_PCIEXBAR_128ADMSK | >+ MCH_HOST_BRIDGE_PCIEXBAR_64ADMSK; >+ } else { >+ addr_mask |=3D MCH_HOST_BRIDGE_PCIEXBAR_128ADMSK; >+ } > break; > case MCH_HOST_BRIDGE_PCIEXBAR_LENGTH_64M: > length =3D 64 * 1024 * 1024; >- addr_mask |=3D MCH_HOST_BRIDGE_PCIEXBAR_64ADMSK; >+ if (!xen_enabled()) { >+ addr_mask |=3D MCH_HOST_BRIDGE_PCIEXBAR_64ADMSK; >+ } else { >+ addr_mask |=3D MCH_HOST_BRIDGE_PCIEXBAR_64ADMSK | >+ MCH_HOST_BRIDGE_PCIEXBAR_128ADMSK;=09 >+ } > break; > case MCH_HOST_BRIDGE_PCIEXBAR_LENGTH_RVD: > qemu_log_mask(LOG_GUEST_ERROR, "Q35: Reserved PCIEXBAR LENGTH\n"= ); >@@ -561,7 +580,8 @@ static void mch_reset(DeviceState *qdev) > d->config[MCH_HOST_BRIDGE_F_SMBASE] =3D 0; > d->wmask[MCH_HOST_BRIDGE_F_SMBASE] =3D 0xff; >=20 >- mch_update(mch); >+ if (!xen_enabled()) >+ mch_update(mch); > } >=20 > static void mch_realize(PCIDevice *d, Error **errp) >diff --git a/hw/pci/pci=2Ec b/hw/pci/pci=2Ec >index 1cc7c89036=2E=2E8eac3d751a 100644 >--- a/hw/pci/pci=2Ec >+++ b/hw/pci/pci=2Ec >@@ -1815,6 +1815,23 @@ void pci_for_each_device_reverse(PCIBus *bus, int = bus_num, > } > } >=20 >+void pci_function_for_one_bus(PCIBus *bus, >+ void (*fn)(PCIBus *b, PCIDevice *d, void *opaq= ue), >+ void *opaque) >+{ >+ bus =3D pci_find_bus_nr(bus, 0); >+ >+ if (bus) { >+ PCIDevice *d; >+ >+ d =3D bus->devices[PCI_DEVFN(4,0)]; >+ if (d) { >+ fn(bus, d, opaque); >+ return; >+ } >+ } >+} >+ > void pci_for_each_device_under_bus(PCIBus *bus, > pci_bus_dev_fn fn, void *opaque) > { >diff --git a/hw/xen/xen-host-pci-device=2Ec b/hw/xen/xen-host-pci-device= =2Ec >index 8c6e9a1716=2E=2E63481a859e 100644 >--- a/hw/xen/xen-host-pci-device=2Ec >+++ b/hw/xen/xen-host-pci-device=2Ec >@@ -32,6 +32,7 @@ >=20 > #define IORESOURCE_PREFETCH 0x00001000 /* No side effects */ > #define IORESOURCE_MEM_64 0x00100000 >+#define XEN_HOST_PCI_CAP_MAX 48 >=20 > static void xen_host_pci_sysfs_path(const XenHostPCIDevice *d, > const char *name, char *buf, ssize_t= size) >@@ -198,6 +199,19 @@ static bool xen_host_pci_dev_is_virtfn(XenHostPCIDev= ice *d) > return !stat(path, &buf); > } >=20 >+static bool xen_host_pci_dev_has_pcie_ext_caps(XenHostPCIDevice *d) >+{ >+ uint32_t header; >+ >+ if (xen_host_pci_get_long(d, PCI_CONFIG_SPACE_SIZE, &header)) >+ return false; >+ >+ if (header =3D=3D 0 || header =3D=3D ~0U) >+ return false; >+ >+ return true; >+} >+ > static void xen_host_pci_config_open(XenHostPCIDevice *d, Error **errp) > { > char path[PATH_MAX]; >@@ -296,37 +310,93 @@ int xen_host_pci_set_block(XenHostPCIDevice *d, int= pos, uint8_t *buf, int len) > return xen_host_pci_config_write(d, pos, buf, len); > } >=20 >-int xen_host_pci_find_ext_cap_offset(XenHostPCIDevice *d, uint32_t cap) >+int xen_host_pci_find_next_ext_cap(XenHostPCIDevice *d, int pos, uint32_= t cap) > { > uint32_t header =3D 0; > int max_cap =3D XEN_HOST_PCI_MAX_EXT_CAP; >- int pos =3D PCI_CONFIG_SPACE_SIZE; >+ >+ if (!d->has_pcie_ext_caps) >+ return 0; >+ >+ if (!pos) { >+ pos =3D PCI_CONFIG_SPACE_SIZE; >+ } else { >+ if (xen_host_pci_get_long(d, pos, &header)) >+ return 0; >+ >+ pos =3D PCI_EXT_CAP_NEXT(header); >+ } >=20 > do { >+ if (!pos || pos < PCI_CONFIG_SPACE_SIZE) { >+ break; >+ } >+ > if (xen_host_pci_get_long(d, pos, &header)) { > break; > } > /* > * If we have no capabilities, this is indicated by cap ID, > * cap version and next pointer all being 0=2E >+ * Also check for all F's returned (which means PCIe ext conf space >+ * is unreadable for some reason) > */ >- if (header =3D=3D 0) { >+ if (header =3D=3D 0 || header =3D=3D ~0U) { > break; > } >=20 >- if (PCI_EXT_CAP_ID(header) =3D=3D cap) { >+ if (cap =3D=3D CAP_ID_ANY) { >+ return pos; >+ } else if (PCI_EXT_CAP_ID(header) =3D=3D cap) { > return pos; > } >=20 > pos =3D PCI_EXT_CAP_NEXT(header); >- if (pos < PCI_CONFIG_SPACE_SIZE) { >+ } while (--max_cap); >+ >+ return 0; >+} >+ >+int xen_host_pci_find_next_cap(XenHostPCIDevice *d, int pos, uint32_t ca= p) >+{ >+ uint8_t id; >+ unsigned max_cap =3D XEN_HOST_PCI_CAP_MAX; >+ uint8_t status =3D 0; >+ uint8_t curpos; >+ >+ if (xen_host_pci_get_byte(d, PCI_STATUS, &status)) >+ return 0; >+ >+ if ((status & PCI_STATUS_CAP_LIST) =3D=3D 0) >+ return 0; >+ >+ if (pos < PCI_CAPABILITY_LIST) { >+ curpos =3D PCI_CAPABILITY_LIST; >+ } else { >+ curpos =3D (uint8_t) pos; >+ } >+ >+ while (max_cap--) { >+ if (xen_host_pci_get_byte(d, curpos, &curpos)) >+ break; >+ if (!curpos) >+ break; >+ >+ if (cap =3D=3D CAP_ID_ANY) >+ return curpos; >+ >+ if (xen_host_pci_get_byte(d, curpos + PCI_CAP_LIST_ID, &id)) > break; >- } >=20 >- max_cap--; >- } while (max_cap > 0); >+ if (id =3D=3D 0xff) >+ break; >+ else if (id =3D=3D cap) >+ return curpos; >+ >+ curpos +=3D PCI_CAP_LIST_NEXT; >+ } >=20 >- return -1; >+ return 0; > } >=20 > void xen_host_pci_device_get(XenHostPCIDevice *d, uint16_t domain, >@@ -335,6 +405,7 @@ void xen_host_pci_device_get(XenHostPCIDevice *d, uin= t16_t domain, > { > ERRP_GUARD(); > unsigned int v; >+ int pcie_cap_pos; >=20 > d->config_fd =3D -1; > d->domain =3D domain; >@@ -376,7 +447,22 @@ void xen_host_pci_device_get(XenHostPCIDevice *d, ui= nt16_t domain, > } > d->class_code =3D v; >=20 >- d->is_virtfn =3D xen_host_pci_dev_is_virtfn(d); >+ d->is_virtfn =3D xen_host_pci_dev_is_virtfn(d); >+ d->has_pcie_ext_caps =3D xen_host_pci_dev_has_pcie_ext_caps(d); >+ >+ /* read and store PCIe Capabilities field for later use */ >+ pcie_cap_pos =3D xen_host_pci_find_next_cap(d, 0, PCI_CAP_ID_EXP); >+ >+ if (pcie_cap_pos) { >+ if (xen_host_pci_get_word(d, pcie_cap_pos + PCI_EXP_FLAGS, >+ &d->pcie_flags)) { >+ error_setg(errp, "Unable to read from PCI Express capability= " >+ "structure at 0x%x", pcie_cap_pos); >+ goto error; >+ } >+ } else { >+ d->pcie_flags =3D 0xFFFF; >+ } >=20 > return; >=20 >diff --git a/hw/xen/xen-host-pci-device=2Eh b/hw/xen/xen-host-pci-device= =2Eh >index 4d8d34ecb0=2E=2E2884c4b4b9 100644 >--- a/hw/xen/xen-host-pci-device=2Eh >+++ b/hw/xen/xen-host-pci-device=2Eh >@@ -27,11 +27,13 @@ typedef struct XenHostPCIDevice { > uint16_t device_id; > uint32_t class_code; > int irq; >+ uint16_t pcie_flags; >=20 > XenHostPCIIORegion io_regions[PCI_NUM_REGIONS - 1]; > XenHostPCIIORegion rom; >=20 > bool is_virtfn; >+ bool has_pcie_ext_caps; >=20 > int config_fd; > } XenHostPCIDevice; >@@ -53,6 +55,8 @@ int xen_host_pci_set_long(XenHostPCIDevice *d, int pos,= uint32_t data); > int xen_host_pci_set_block(XenHostPCIDevice *d, int pos, uint8_t *buf, > int len); >=20 >-int xen_host_pci_find_ext_cap_offset(XenHostPCIDevice *s, uint32_t cap); >+#define CAP_ID_ANY (~0U) >+int xen_host_pci_find_next_cap(XenHostPCIDevice *s, int pos, uint32_t ca= p); >+int xen_host_pci_find_next_ext_cap(XenHostPCIDevice *d, int pos, uint32_= t cap); >=20 > #endif /* XEN_HOST_PCI_DEVICE_H */ >diff --git a/hw/xen/xen_pt=2Ec b/hw/xen/xen_pt=2Ec >index a540149639=2E=2E2399fabb2b 100644 >--- a/hw/xen/xen_pt=2Ec >+++ b/hw/xen/xen_pt=2Ec >@@ -96,8 +96,16 @@ void xen_pt_log(const PCIDevice *d, const char *f, =2E= =2E=2E) >=20 > static int xen_pt_pci_config_access_check(PCIDevice *d, uint32_t addr, i= nt len) > { >+ XenPCIPassthroughState *s =3D XEN_PT_DEVICE(d); > /* check offset range */ >- if (addr > 0xFF) { >+ if (s->pcie_enabled_dev) { >+ if (addr >=3D PCIE_CONFIG_SPACE_SIZE) { >+ XEN_PT_ERR(d, "Failed to access register with offset " >+ "exceeding 0xFFF=2E (addr: 0x%02x, len: %d)\n"= , >+ addr, len); >+ return -1; >+ } >+ } else if (addr >=3D PCI_CONFIG_SPACE_SIZE) { > XEN_PT_ERR(d, "Failed to access register with offset exceeding 0= xFF=2E " > "(addr: 0x%02x, len: %d)\n", addr, len); > return -1; >@@ -156,7 +164,16 @@ static uint32_t xen_pt_pci_read_config(PCIDevice *d,= uint32_t addr, int len) > reg_grp_entry =3D xen_pt_find_reg_grp(s, addr); > if (reg_grp_entry) { > /* check 0-Hardwired register group */ >- if (reg_grp_entry->reg_grp->grp_type =3D=3D XEN_PT_GRP_TYPE_HARD= WIRED) { >+ if (reg_grp_entry->reg_grp->grp_type =3D=3D XEN_PT_GRP_TYPE_HARD= WIRED && >+ /* >+ * For PCIe Extended Capabilities we need to emulate >+ * CapabilityID and NextCapability/Version registers for a >+ * hardwired reg group located at the offset 0x100 in PCIe >+ * config space=2E This allows us to hide the first extended >+ * capability as well=2E >+ */ >+ !(reg_grp_entry->base_offset =3D=3D PCI_CONFIG_SPACE_SIZE && >+ ranges_overlap(addr, len, 0x100, 4))) { > /* no need to emulate, just return 0 */ > val =3D 0; > goto exit; >@@ -701,6 +718,21 @@ static const MemoryListener xen_pt_io_listener =3D { > =2Epriority =3D 10, > }; >=20 >+static inline bool xen_pt_dev_is_pcie_mode(PCIDevice *d) >+{ >+ XenPCIPassthroughState *s =3D XEN_PT_DEVICE(d); >+ PCIBus *bus =3D pci_get_bus(d); >+ >+ if (bus !=3D NULL) { >+ if (pci_is_express(d) && pci_bus_is_express(bus) && >+ xen_host_pci_find_next_cap(&s->real_device, 0, PCI_CAP_ID_EX= P)) { >+ return true; >+ } >+ } >+ >+ return false; >+} >+ > /* destroy=2E */ > static void xen_pt_destroy(PCIDevice *d) { >=20 >@@ -787,8 +819,17 @@ static void xen_pt_realize(PCIDevice *d, Error **err= p) > s->real_device=2Edev, s->real_device=2Efunc); > } >=20 >- /* Initialize virtualized PCI configuration (Extended 256 Bytes) */ >- memset(d->config, 0, PCI_CONFIG_SPACE_SIZE); >+ s->pcie_enabled_dev =3D xen_pt_dev_is_pcie_mode(d); >+ if (s->pcie_enabled_dev) { >+ XEN_PT_LOG(d, "Host device %04x:%02x:%02x=2E%d passed thru " >+ "in PCIe mode\n", s->real_device=2Edomain, >+ s->real_device=2Ebus, s->real_device=2Edev, >+ s->real_device=2Efunc); >+ } >+ >+ /* Initialize virtualized PCI configuration space (256/4K bytes) */ >+ memset(d->config, 0, pci_is_express(d) ? PCIE_CONFIG_SPACE_SIZE >+ : PCI_CONFIG_SPACE_SIZE); >=20 > s->memory_listener =3D xen_pt_memory_listener; > s->io_listener =3D xen_pt_io_listener; >diff --git a/hw/xen/xen_pt=2Eh b/hw/xen/xen_pt=2Eh >index b20744f7c7=2E=2E0ed6e77e76 100644 >--- a/hw/xen/xen_pt=2Eh >+++ b/hw/xen/xen_pt=2Eh >@@ -33,6 +33,11 @@ void xen_pt_log(const PCIDevice *d, const char *f, =2E= =2E=2E) G_GNUC_PRINTF(2, 3); > /* Helper */ > #define XEN_PFN(x) ((x) >> XC_PAGE_SHIFT) >=20 >+/* Macro's for PCIe Extended Capabilities */ >+#define PCIE_EXT_CAP_ID(cap_id) ((cap_id) | (1U << 16)) >+#define IS_PCIE_EXT_CAP_ID(grp_id) ((grp_id) & (1U << 16)) >+#define GET_PCIE_EXT_CAP_ID(grp_id) ((grp_id) & 0xFFFF) >+ > typedef const struct XenPTRegInfo XenPTRegInfo; > typedef struct XenPTReg XenPTReg; >=20 >@@ -88,6 +93,11 @@ typedef int (*xen_pt_conf_byte_read) >=20 > #define XEN_PCI_INTEL_OPREGION 0xfc >=20 >+#define XEN_PCIE_CAP_ID 0 >+#define XEN_PCIE_CAP_LIST_NEXT 2 >+#define XEN_PCIE_FAKE_CAP_ID_BASE 0xFE00 >+ >+ > #define XEN_PCI_IGD_DOMAIN 0 > #define XEN_PCI_IGD_BUS 0 > #define XEN_PCI_IGD_DEV 2 >@@ -174,13 +184,13 @@ typedef const struct XenPTRegGroupInfo XenPTRegGrou= pInfo; > /* emul reg group size initialize method */ > typedef int (*xen_pt_reg_size_init_fn) > (XenPCIPassthroughState *, XenPTRegGroupInfo *, >- uint32_t base_offset, uint8_t *size); >+ uint32_t base_offset, uint32_t *size); >=20 > /* emulated register group information */ > struct XenPTRegGroupInfo { >- uint8_t grp_id; >+ uint32_t grp_id; > XenPTRegisterGroupType grp_type; >- uint8_t grp_size; >+ uint32_t grp_size; > xen_pt_reg_size_init_fn size_init; > XenPTRegInfo *emu_regs; > }; >@@ -190,7 +200,7 @@ typedef struct XenPTRegGroup { > QLIST_ENTRY(XenPTRegGroup) entries; > XenPTRegGroupInfo *reg_grp; > uint32_t base_offset; >- uint8_t size; >+ uint32_t size; > QLIST_HEAD(, XenPTReg) reg_tbl_list; > } XenPTRegGroup; >=20 >@@ -234,6 +244,7 @@ struct XenPCIPassthroughState { >=20 > PCIHostDeviceAddress hostaddr; > bool is_virtfn; >+ bool pcie_enabled_dev; > bool permissive; > bool permissive_warned; > XenHostPCIDevice real_device; >diff --git a/hw/xen/xen_pt_config_init=2Ec b/hw/xen/xen_pt_config_init=2E= c >index 2b8680b112=2E=2Ecc583f9cc1 100644 >--- a/hw/xen/xen_pt_config_init=2Ec >+++ b/hw/xen/xen_pt_config_init=2Ec >@@ -16,6 +16,7 @@ > #include "qapi/error=2Eh" > #include "qemu/timer=2Eh" > #include "xen_pt=2Eh" >+#include "xen-host-pci-device=2Eh" > #include "hw/xen/xen-legacy-backend=2Eh" >=20 > #define XEN_PT_MERGE_VALUE(value, data, val_mask) \ >@@ -27,33 +28,52 @@ >=20 > static int xen_pt_ptr_reg_init(XenPCIPassthroughState *s, XenPTRegInfo *= reg, > uint32_t real_offset, uint32_t *data); >- >+static int xen_pt_ext_cap_ptr_reg_init(XenPCIPassthroughState *s, >+ XenPTRegInfo *reg, >+ uint32_t real_offset, >+ uint32_t *data); >+static int xen_pt_ext_cap_capid_reg_init(XenPCIPassthroughState *s, >+ XenPTRegInfo *reg, >+ uint32_t real_offset, >+ uint32_t *data); >=20 > /* helper */ >=20 > /* A return value of 1 means the capability should NOT be exposed to gue= st=2E */ >-static int xen_pt_hide_dev_cap(const XenHostPCIDevice *d, uint8_t grp_id= ) >-{ >- switch (grp_id) { >- case PCI_CAP_ID_EXP: >- /* The PCI Express Capability Structure of the VF of Intel 82599= 10GbE >- * Controller looks trivial, e=2Eg=2E, the PCI Express Capabilit= ies >- * Register is 0=2E We should not try to expose it to guest=2E >- * >- * The datasheet is available at >- * http://download=2Eintel=2Ecom/design/network/datashts/82599_d= atasheet=2Epdf >- * >- * See 'Table 9=2E7=2E VF PCIe Configuration Space' of the datas= heet, the >- * PCI Express Capability Structure of the VF of Intel 82599 10G= bE >- * Controller looks trivial, e=2Eg=2E, the PCI Express Capabilit= ies >- * Register is 0, so the Capability Version is 0 and >- * xen_pt_pcie_size_init() would fail=2E >- */ >- if (d->vendor_id =3D=3D PCI_VENDOR_ID_INTEL && >- d->device_id =3D=3D PCI_DEVICE_ID_INTEL_82599_SFP_VF) { >- return 1; >+static int xen_pt_hide_dev_cap(const XenHostPCIDevice *d, uint32_t grp_i= d) From xen-devel-bounces@lists.xenproject.org Wed Jun 21 21:38:45 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 21:38:45 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553174.863577 (Exim 4.92) (envelope-from ) id 1qC5XE-0002vj-AX; Wed, 21 Jun 2023 21:38:40 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553174.863577; Wed, 21 Jun 2023 21:38:40 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC5XE-0002vc-7m; Wed, 21 Jun 2023 21:38:40 +0000 Received: by outflank-mailman (input) for mailman id 553174; Wed, 21 Jun 2023 21:38:38 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC5XC-0002vW-Fx for xen-devel@lists.xenproject.org; Wed, 21 Jun 2023 21:38:38 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id fa33794b-107b-11ee-b237-6b7b168915f2; Wed, 21 Jun 2023 23:38:37 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 6CFCB616E6; Wed, 21 Jun 2023 21:38:35 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 07E42C433BB; Wed, 21 Jun 2023 21:38:33 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: fa33794b-107b-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1687383515; bh=Hq/fPe63Bk0uKzL9hbYWrDM9LrdEJF9SOtuVR3z7Nqs=; h=Date:From:To:cc:Subject:In-Reply-To:References:From; b=qSlAbXCcQTM3orqBbHCixx+2G3GnYZM95DjpLwuNdNYzcLZuPDH4XTv8Ga+UiEZto nXjW9ZHlBneEEl1c0jha4kvACmzMp9NMvqUmrflzvX9AQ/BEf1Pfga7Uq8EiqcIF5X 1g9kbxfExu4vyCNny4kcZBBiIaXUYpS1jtTNdDfqwLc98XBGhfbjwPj8DeQTO0LVch SO/uuEg77iR03hw4QsRZdm3Jm/C7dgFpNiI310Zv7hbz16vJ7NdPUv1fHjQSOMcDmX UlSGuwxySrLqhylDve54TeNNFlhdN9C5iriPV2rPa7UDycZpGQHEmUqWZU4g1IeyLt ZFFzfKIeXjuVQ== Date: Wed, 21 Jun 2023 14:38:32 -0700 (PDT) From: Stefano Stabellini X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop To: Jan Beulich cc: Stefano Stabellini , julien@xen.org, andrew.cooper3@citrix.com, roger.pau@citrix.com, bertrand.marquis@arm.com, roberto.bagnara@bugseng.com, Stefano Stabellini , xen-devel@lists.xenproject.org Subject: Re: [PATCH] docs/misra: add Rules 8.2, 8.3, 8.14 In-Reply-To: <98a2acc7-956e-d97a-ac2f-5d7368f2cdc3@suse.com> Message-ID: References: <20230621012618.2661337-1-sstabellini@kernel.org> <98a2acc7-956e-d97a-ac2f-5d7368f2cdc3@suse.com> User-Agent: Alpine 2.22 (DEB 394 2020-01-19) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII On Wed, 21 Jun 2023, Jan Beulich wrote: > On 21.06.2023 03:26, Stefano Stabellini wrote: > > --- a/docs/misra/rules.rst > > +++ b/docs/misra/rules.rst > > @@ -213,6 +213,17 @@ maintainers if you want to suggest a change. > > - Types shall be explicitly specified > > - > > > > + * - `Rule 8.2 `_ > > + - Required > > + - Function types shall be in prototype form with named parameters > > + - > > + > > + * - `Rule 8.3 `_ > > + - Required > > + - All declarations of an object or function shall use the same > > + names and type qualifiers > > + - > > I think we want to deal with uses of const when not qualifying a pointed-to > type: One approach is to simply say we don't use const like this (and the > few uses there are should then go away). The other, if we deem this a > valuable feature, would be to make a project-wide exception for this case, > as having such const in declarations is meaningless and hence at the risk > of being confusing or hampering readability. I think they should go away (the first option you wrote). If you are OK with it, I could add a note here, such as: "The rule also applies to differences in const-ness." From xen-devel-bounces@lists.xenproject.org Wed Jun 21 21:40:19 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 21:40:19 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553179.863588 (Exim 4.92) (envelope-from ) id 1qC5Yo-0004LJ-ND; Wed, 21 Jun 2023 21:40:18 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553179.863588; Wed, 21 Jun 2023 21:40:18 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC5Yo-0004LC-JM; Wed, 21 Jun 2023 21:40:18 +0000 Received: by outflank-mailman (input) for mailman id 553179; Wed, 21 Jun 2023 21:40:18 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC5Yn-0004L2-UV; Wed, 21 Jun 2023 21:40:17 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC5Yn-0003PJ-PN; Wed, 21 Jun 2023 21:40:17 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC5Yn-000229-B4; Wed, 21 Jun 2023 21:40:17 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qC5Yn-000832-Aa; Wed, 21 Jun 2023 21:40:17 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=KpEHXVczFCh+wQHBqinxEvEyMowQmK6yiaoKNu1/4ZU=; b=RuvoVdYrs/HhmCzJS8BlKwatBf y2kKA3cQW7BH9KzXgfvfvL7v0KoVduP3k9rthzcHojn97rWcNIx7CMXiNLSyV+K3x8tVBQ3zge1Rl tAOGsxbLz/qUuloSA5S1B+BaU1lnbplrlUJdvqmVBlfRidA8I2MQXpt1hGEQ5iGkVhXI=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable-smoke test] 181538: trouble: blocked/broken/pass X-Osstest-Failures: xen-unstable-smoke:build-armhf::broken:regression xen-unstable-smoke:build-armhf:host-install(4):broken:regression xen-unstable-smoke:test-armhf-armhf-xl:build-check(1):blocked:nonblocking xen-unstable-smoke:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking xen-unstable-smoke:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking xen-unstable-smoke:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: xen=1ec2f5305b826367d2cbfcd24ca079448057e331 X-Osstest-Versions-That: xen=7a25a1501ca941c3e01b0c4e624ace05417f1587 From: osstest service owner Date: Wed, 21 Jun 2023 21:40:17 +0000 flight 181538 xen-unstable-smoke real [real] http://logs.test-lab.xenproject.org/osstest/logs/181538/ Failures and problems with tests :-( Tests which did not succeed and are blocking, including tests which could not be run: build-armhf broken build-armhf 4 host-install(4) broken REGR. vs. 181476 Tests which did not succeed, but are not blocking: test-armhf-armhf-xl 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass version targeted for testing: xen 1ec2f5305b826367d2cbfcd24ca079448057e331 baseline version: xen 7a25a1501ca941c3e01b0c4e624ace05417f1587 Last test of basis 181476 2023-06-17 04:00:28 Z 4 days Failing since 181504 2023-06-19 11:00:26 Z 2 days 8 attempts Testing same since 181538 2023-06-21 17:03:40 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Alistair Francis Andrew Cooper Anthony PERARD Henry Wang Jan Beulich Jiamei Xie Julien Grall Michal Orzel Oleksii Kurochko Roger Pau Monné Shawn Anastasio Stefano Stabellini Stefano Stabellini jobs: build-arm64-xsm pass build-amd64 pass build-armhf broken build-amd64-libvirt pass test-armhf-armhf-xl blocked test-arm64-arm64-xl-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-libvirt pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary broken-job build-armhf broken broken-step build-armhf host-install(4) Not pushing. (No revision log; it would be 373 lines long.) From xen-devel-bounces@lists.xenproject.org Wed Jun 21 21:51:08 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 21:51:08 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553186.863598 (Exim 4.92) (envelope-from ) id 1qC5j7-0005ur-Mr; Wed, 21 Jun 2023 21:50:57 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553186.863598; Wed, 21 Jun 2023 21:50:57 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC5j7-0005uk-JA; Wed, 21 Jun 2023 21:50:57 +0000 Received: by outflank-mailman (input) for mailman id 553186; Wed, 21 Jun 2023 21:50:56 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC5j5-0005uc-TJ for xen-devel@lists.xenproject.org; Wed, 21 Jun 2023 21:50:56 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id b0ccc4e8-107d-11ee-8611-37d641c3527e; Wed, 21 Jun 2023 23:50:52 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 52E49616A4; Wed, 21 Jun 2023 21:50:51 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id E2C8EC433C8; Wed, 21 Jun 2023 21:50:48 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: b0ccc4e8-107d-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1687384250; bh=3IMdSCMCPN3OTN77QnbAY/zAfVKQca14W0Odwh+D4JI=; h=Date:From:To:cc:Subject:In-Reply-To:References:From; b=hjovP/TIAm7A2pBPcD8wFhfLN+PLfNMRBYkP40LwMijV4/eCmoWkH6ix41tpJI614 hZ+gBbBoCdKZh7uVfLJmiIyjvGVwYSqXOcQjZOLBDuNgdYYIf1ZQIXtS2YpFbrTP6k EYimoPfkXe+IHxitxeQhg/KVZeX4EN1FRiw6N5St4r/04ggDB+2MfVr45f9xfNAhDP bfq9mElQ1w9D112T8mi7tv9lR84o5wOozSgJ572uDEkPCgz1g37/1gV2q6qrLLtCp2 ctLEZVn+GGVAK5FXa9ddZ8/Ksjl0FiJoH0w1P2c+FvcTHKP28KvhbYTs4lrL7W0poG YwC7jCofk0spA== Date: Wed, 21 Jun 2023 14:50:47 -0700 (PDT) From: Stefano Stabellini X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop To: Roberto Bagnara cc: xen-devel@lists.xenproject.org, roger.pau@citrix.com, bertrand.marquis@arm.com, michal.orzel@amd.com, xenia.ragiadakou@amd.com, ayan.kumar.halder@amd.com, consulting@bugseng.com, Andrew Cooper , George Dunlap , Jan Beulich , Julien Grall , Stefano Stabellini , Wei Liu Subject: Re: [XEN PATCH v3] docs/misra: document the C dialect and translation toolchain assumptions. In-Reply-To: Message-ID: References: User-Agent: Alpine 2.22 (DEB 394 2020-01-19) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII On Wed, 21 Jun 2023, Roberto Bagnara wrote: > This document specifies the C language dialect used by Xen and > the assumptions Xen makes on the translation toolchain. > > Signed-off-by: Roberto Bagnara > > Changes in V2: > - Clarified several entries. > - Removed entry about the use of the undefined escape sequence \m. > Changes in V3: > - Removed mention of the __signed__ non-standard keyword. > - Fixed the entry about arithmetic operator on pointer to void. > - Added entry for named variadic macro arguments. > - Removed entry about static function used in an inline function > with external linkage. The list of changes should be after the "---" so that it gets automatically removed by git on commit. No worries, this time it can be manually done on commit. With that small caveat: Reviewed-by: Stefano Stabellini > --- > docs/misra/C-language-toolchain.rst | 468 ++++++++++++++++++++++++++++ > 1 file changed, 468 insertions(+) > create mode 100644 docs/misra/C-language-toolchain.rst > > diff --git a/docs/misra/C-language-toolchain.rst b/docs/misra/C-language-toolchain.rst > new file mode 100644 > index 0000000000..8651f59118 > --- /dev/null > +++ b/docs/misra/C-language-toolchain.rst > @@ -0,0 +1,468 @@ > +============================================= > +C Dialect and Translation Assumptions for Xen > +============================================= > + > +This document specifies the C language dialect used by Xen and > +the assumptions Xen makes on the translation toolchain. > +It covers, in particular: > + > +1. the used language extensions; > +2. the translation limits that the translation toolchains must be able > + to accommodate; > +3. the implementation-defined behaviors upon which Xen may depend. > + > +All points are of course relevant for portability. In addition, > +programming in C is impossible without a detailed knowledge of the > +implementation-defined behaviors. For this reason, it is recommended > +that Xen developers have familiarity with this document and the > +documentation referenced therein. > + > +This document needs maintenance and adaptation in the following > +circumstances: > + > +- whenever the compiler is changed or updated; > +- whenever the use of a certain language extension is added or removed; > +- whenever code modifications cause exceeding the stated translation limits. > + > + > +Applicable C Language Standard > +______________________________ > + > +Xen is written in C99 with extensions. The relevant ISO standard is > + > + *ISO/IEC 9899:1999/Cor 3:2007*: Programming Languages - C, > + Technical Corrigendum 3. > + ISO/IEC, Geneva, Switzerland, 2007. > + > + > +Reference Documentation > +_______________________ > + > +The following documents are referred to in the sequel: > + > +GCC_MANUAL: > + https://gcc.gnu.org/onlinedocs/gcc-12.1.0/gcc.pdf > +CPP_MANUAL: > + https://gcc.gnu.org/onlinedocs/gcc-12.1.0/cpp.pdf > +ARM64_ABI_MANUAL: > + https://github.com/ARM-software/abi-aa/blob/60a8eb8c55e999d74dac5e368fc9d7e36e38dda4/aapcs64/aapcs64.rst > +X86_64_ABI_MANUAL: > + https://gitlab.com/x86-psABIs/x86-64-ABI/-/jobs/artifacts/master/raw/x86-64-ABI/abi.pdf?job=build > + > + > +C Language Extensions > +_____________________ > + > + > +The following table lists the extensions currently used in Xen. > +The table columns are as follows: > + > + Extension > + a terse description of the extension; > + Architectures > + a set of Xen architectures making use of the extension; > + References > + when available, references to the documentation explaining > + the syntax and semantics of (each instance of) the extension. > + > + > +.. list-table:: > + :widths: 30 15 55 > + :header-rows: 1 > + > + * - Extension > + - Architectures > + - References > + > + * - Non-standard tokens > + - ARM64, X86_64 > + - _Static_assert: > + see Section "2.1 C Language" of GCC_MANUAL. > + asm, __asm__: > + see Sections "6.48 Alternate Keywords" and "6.47 How to Use Inline Assembly Language in C Code" of GCC_MANUAL. > + __volatile__: > + see Sections "6.48 Alternate Keywords" and "6.47.2.1 Volatile" of GCC_MANUAL. > + __const__, __inline__, __inline: > + see Section "6.48 Alternate Keywords" of GCC_MANUAL. > + typeof, __typeof__: > + see Section "6.7 Referring to a Type with typeof" of GCC_MANUAL. > + __alignof__, __alignof: > + see Sections "6.48 Alternate Keywords" and "6.44 Determining the Alignment of Functions, Types or Variables" of GCC_MANUAL. > + __attribute__: > + see Section "6.39 Attribute Syntax" of GCC_MANUAL. > + __builtin_types_compatible_p: > + see Section "6.59 Other Built-in Functions Provided by GCC" of GCC_MANUAL. > + __builtin_va_arg: > + non-documented GCC extension. > + __builtin_offsetof: > + see Section "6.53 Support for offsetof" of GCC_MANUAL. > + > + * - Empty initialization list > + - ARM64, X86_64 > + - Non-documented GCC extension. > + > + * - Arithmetic operator on pointer to void > + - ARM64, X86_64 > + - See Section "6.24 Arithmetic on void- and Function-Pointers" of GCC_MANUAL." > + > + * - Statements and declarations in expressions > + - ARM64, X86_64 > + - See Section "6.1 Statements and Declarations in Expressions" of GCC_MANUAL. > + > + * - Structure or union definition with no members > + - ARM64, X86_64 > + - See Section "6.19 Structures with No Members" of GCC_MANUAL. > + > + * - Zero size array type > + - ARM64, X86_64 > + - See Section "6.18 Arrays of Length Zero" of GCC_MANUAL. > + > + * - Binary conditional expression > + - ARM64, X86_64 > + - See Section "6.8 Conditionals with Omitted Operands" of GCC_MANUAL. > + > + * - 'Case' label with upper/lower values > + - ARM64, X86_64 > + - See Section "6.30 Case Ranges" of GCC_MANUAL. > + > + * - Unnamed field that is not a bit-field > + - ARM64, X86_64 > + - See Section "6.63 Unnamed Structure and Union Fields" of GCC_MANUAL. > + > + * - Empty declaration > + - ARM64, X86_64 > + - Non-documented GCC extension. > + Note: an empty declaration is caused by a semicolon at file scope > + with nothing before it (not to be confused with an empty statement). > + > + * - Incomplete enum declaration > + - ARM64 > + - See Section "6.49 Incomplete enum Types" of GCC_MANUAL. > + > + * - Implicit conversion from a pointer to an incompatible pointer > + - ARM64, X86_64 > + - Non-documented GCC extension. The documentation for option > + -Wincompatible-pointer-types in Section > + "3.8 Options to Request or Suppress Warnings" of GCC_MANUAL > + is possibly relevant. > + > + * - Pointer to a function is converted to a pointer to an object or a pointer to an object is converted to a pointer to a function > + - X86_64 > + - Non-documented GCC extension. The information provided in > + https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83584 > + is possibly relevant. > + > + * - Token pasting of ',' and __VA_ARGS__ > + - ARM64, X86_64 > + - See Section "6.21 Macros with a Variable Number of Arguments" of GCC_MANUAL. > + > + * - Named variadic macro arguments > + - ARM64, X86_64 > + - See Section "6.21 Macros with a Variable Number of Arguments" of GCC_MANUAL. > + > + * - No arguments for '...' parameter of variadic macro > + - ARM64, X86_64 > + - See Section "6.21 Macros with a Variable Number of Arguments" of GCC_MANUAL. > + > + * - void function returning void expression > + - ARM64, X86_64 > + - See the documentation for -Wreturn-type in Section "3.8 Options to Request or Suppress Warnings" of GCC_MANUAL. > + > + * - GNU statement expressions from macro expansion > + - ARM64, X86_64 > + - See Section "6.1 Statements and Declarations in Expressions" of GCC_MANUAL. > + > + * - Invalid application of sizeof to a void type > + - ARM64, X86_64 > + - See Section "6.24 Arithmetic on void- and Function-Pointers" of GCC_MANUAL. > + > + * - Redeclaration of already-defined enum > + - ARM64, X86_64 > + - See Section "6.49 Incomplete enum Types" of GCC_MANUAL. > + > + * - struct with flexible array member nested in a struct > + - ARM64, X86_64 > + - See Section "6.18 Arrays of Length Zero" of GCC_MANUAL. > + > + * - struct with flexible array member used as an array element > + - ARM64, X86_64 > + - See Section "6.18 Arrays of Length Zero" of GCC_MANUAL. > + > + * - enumerator value outside the range of int > + - ARM64, X86_64 > + - Non-documented GCC extension. > + > + * - Extended integer types > + - X86_64 > + - See Section "6.9 128-bit Integers" of GCC_MANUAL. > + > + > +Translation Limits > +__________________ > + > +The following table lists the translation limits that a toolchain has > +to satisfy in order to translate Xen. The numbers given are a > +compromise: on the one hand, many modern compilers have very generous > +limits (in several cases, the only limitation is the amount of > +available memory); on the other hand we prefer setting limits that are > +not too high, because compilers do not have any obligation of > +diagnosing when a limit has been exceeded, and not too low, so as to > +avoid frequently updating this document. In the table, only the > +limits that go beyond the minima specified by the relevant C Standard > +are listed. > + > +The table columns are as follows: > + > + Limit > + a terse description of the translation limit; > + Architectures > + a set relevant of Xen architectures; > + Threshold > + a value that the Xen project does not wish to exceed for that limit > + (this is typically below, often much below what the translation > + toolchain supports); > + References > + when available, references to the documentation providing evidence > + that the translation toolchain honors the threshold (and more). > + > +.. list-table:: > + :widths: 30 15 10 45 > + :header-rows: 1 > + > + * - Limit > + - Architectures > + - Threshold > + - References > + > + * - Size of an object > + - ARM64, X86_64 > + - 8388608 > + - The maximum size of an object is defined in the MAX_SIZE macro, and for a 32 bit architecture is 8MB. > + The maximum size for an array is defined in the PTRDIFF_MAX and in a 32 bit architecture is 2^30-1. > + See occurrences of these macros in GCC_MANUAL. > + > + * - Characters in one logical source line > + - ARM64 > + - 5000 > + - See Section "11.2 Implementation limits" of CPP_MANUAL. > + > + * - Characters in one logical source line > + - X86_64 > + - 12000 > + - See Section "11.2 Implementation limits" of CPP_MANUAL. > + > + * - Nesting levels for #include files > + - ARM64 > + - 24 > + - See Section "11.2 Implementation limits" of CPP_MANUAL. > + > + * - Nesting levels for #include files > + - X86_64 > + - 32 > + - See Section "11.2 Implementation limits" of CPP_MANUAL. > + > + * - case labels for a switch statement (excluding those for any nested switch statements) > + - X86_64 > + - 1500 > + - See Section "4.12 Statements" of GCC_MANUAL. > + > + * - Number of significant initial characters in an external identifier > + - ARM64, X86_64 > + - 63 > + - See Section "4.3 Identifiers" of GCC_MANUAL. > + > + > +Implementation-Defined Behaviors > +________________________________ > + > +The following table lists the C language implementation-defined behaviors > +relevant for MISRA C:2012 Dir 1.1 upon which Xen may possibly depend. > + > +The table columns are as follows: > + > + I.-D.B. > + a terse description of the implementation-defined behavior; > + Architectures > + a set relevant of Xen architectures; > + Value(s) > + for i.-d.b.'s with values, the values allowed; > + References > + when available, references to the documentation providing details > + about how the i.-d.b. is resolved by the translation toolchain. > + > +.. list-table:: > + :widths: 30 15 10 45 > + :header-rows: 1 > + > + * - I.-D.B. > + - Architectures > + - Value(s) > + - References > + > + * - Allowable bit-field types other than _Bool, signed int, and unsigned int > + - ARM64, X86_64 > + - All explicitly signed integer types, all unsigned integer types, > + and enumerations. > + - See Section "4.9 Structures, Unions, Enumerations, and Bit-Fields". > + > + * - #pragma preprocessing directive that is documented as causing translation failure or some other form of undefined behavior is encountered > + - ARM64, X86_64 > + - pack, GCC visibility > + - #pragma pack: > + see Section "6.62.11 Structure-Layout Pragmas" of GCC_MANUAL. > + #pragma GCC visibility: > + see Section "6.62.14 Visibility Pragmas" of GCC_MANUAL. > + > + * - The number of bits in a byte > + - ARM64 > + - 8 > + - See Section "4.4 Characters" of GCC_MANUAL and Section "8.1 Data types" of ARM64_ABI_MANUAL. > + > + * - The number of bits in a byte > + - X86_64 > + - 8 > + - See Section "4.4 Characters" of GCC_MANUAL and Section "3.1.2 Data Representation" of X86_64_ABI_MANUAL. > + > + * - Whether signed integer types are represented using sign and magnitude, two's complement, or one's complement, and whether the extraordinary value is a trap representation or an ordinary value > + - ARM64, X86_64 > + - Two's complement > + - See Section "4.5 Integers" of GCC_MANUAL. > + > + * - Any extended integer types that exist in the implementation > + - X86_64 > + - __uint128_t > + - See Section "6.9 128-bit Integers" of GCC_MANUAL. > + > + * - The number, order, and encoding of bytes in any object > + - ARM64 > + - > + - See Section "4.15 Architecture" of GCC_MANUAL and Chapter 5 "Data types and alignment" of ARM64_ABI_MANUAL. > + > + * - The number, order, and encoding of bytes in any object > + - X86_64 > + - > + - See Section "4.15 Architecture" of GCC_MANUAL and Section "3.1.2 Data Representation" of X86_64_ABI_MANUAL. > + > + * - Whether a bit-field can straddle a storage-unit boundary > + - ARM64 > + - > + - See Section "4.9 Structures, Unions, Enumerations, and Bit-Fields of GCC_MANUAL and Section "8.1.8 Bit-fields" of ARM64_ABI_MANUAL. > + > + * - Whether a bit-field can straddle a storage-unit boundary > + - X86_64 > + - > + - See Section "4.9 Structures, Unions, Enumerations, and Bit-Fields" of GCC_MANUAL and Section "3.1.2 Data Representation" of X86_64_ABI_MANUAL. > + > + * - The order of allocation of bit-fields within a unit > + - ARM64 > + - > + - See Section "4.9 Structures, Unions, Enumerations, and Bit-Fields of GCC_MANUAL and Section "8.1.8 Bit-fields" of ARM64_ABI_MANUAL. > + > + * - The order of allocation of bit-fields within a unit > + - X86_64 > + - > + - See Section "4.9 Structures, Unions, Enumerations, and Bit-Fields" of GCC_MANUAL and Section "3.1.2 Data Representation" of X86_64_ABI_MANUAL. > + > + * - What constitutes an access to an object that has volatile-qualified type > + - ARM64, X86_64 > + - > + - See Section "4.10 Qualifiers" of GCC_MANUAL. > + > + * - The values or expressions assigned to the macros specified in the headers , , and > + - ARM64 > + - > + - See Section "4.15 Architecture" of GCC_MANUAL and Chapter 5 "Data types and alignment" of ARM64_ABI_MANUAL. > + > + * - The values or expressions assigned to the macros specified in the headers , , and > + - X86_64 > + - > + - See Section "4.15 Architecture" of GCC_MANUAL and Section "3.1.2 Data Representation" of X86_64_ABI_MANUAL. > + > + * - Character not in the basic source character set is encountered in a source file, except in an identifier, a character constant, a string literal, a header name, a comment, or a preprocessing token that is never converted to a token > + - ARM64 > + - UTF-8 > + - See Section "1.1 Character sets" of CPP_MANUAL. > + We assume the locale is not restricting any UTF-8 characters being part of the source character set. > + > + * - The value of a char object into which has been stored any character other than a member of the basic execution character set > + - ARM64 > + - > + - See Section "4.4 Characters" of GCC_MANUAL and Section "8.1 Data types" of ARM64_ABI_MANUAL. > + > + * - The value of a char object into which has been stored any character other than a member of the basic execution character set > + - X86_64 > + - > + - See Section "4.4 Characters" of GCC_MANUAL and Section "3.1.2 Data Representation" of X86_64_ABI_MANUAL. > + > + * - The value of an integer character constant containing more than one character or containing a character or escape sequence that does not map to a single-byte execution character > + - ARM64 > + - > + - See Section "4.4 Characters" of GCC_MANUAL and Section "8.1 Data types" of ARM64_ABI_MANUAL. > + > + * - The value of an integer character constant containing more than one character or containing a character or escape sequence that does not map to a single-byte execution character > + - X86_64 > + - > + - See Section "4.4 Characters" of GCC_MANUAL and Section "3.1.2 Data Representation" of X86_64_ABI_MANUAL. > + > + * - The mapping of members of the source character set > + - ARM64, X86_64 > + - > + - See Section "4.4 Characters" of GCC_MANUAL and the documentation for -finput-charset=charset in the same manual. > + > + * - The members of the source and execution character sets, except as explicitly specified in the Standard > + - ARM64, X86_64 > + - UTF-8 > + - See Section "4.4 Characters" of GCC_MANUAL > + > + * - The values of the members of the execution character set > + - ARM64, X86_64 > + - > + - See Section "4.4 Characters" of GCC_MANUAL and the documentation for -fexec-charset=charset in the same manual. > + > + * - How a diagnostic is identified > + - ARM64, X86_64 > + - > + - See Section "4.1 Translation" of GCC_MANUAL. > + > + * - The places that are searched for an included < > delimited header, and how the places are specified or the header is identified > + - ARM64, X86_64 > + - > + - See Chapter "2 Header Files" of CPP_MANUAL. > + > + * - How the named source file is searched for in an included " " delimited header > + - ARM64, X86_64 > + - > + - See Chapter "2 Header Files" of CPP_MANUAL. > + > + * - How sequences in both forms of header names are mapped to headers or external source file names > + - ARM64, X86_64 > + - > + - See Chapter "2 Header Files" of CPP_MANUAL. > + > + * - Whether the # operator inserts a \ character before the \ character that begins a universal character name in a character constant or string literal > + - ARM64, X86_64 > + - > + - See Section "3.4 Stringizing" of CPP_MANUAL. > + > + * - The current locale used to convert a wide string literal into corresponding wide character codes > + - ARM64, X86_64 > + - > + - See Section "4.4 Characters" of GCC_MANUAL and Section "11.1 Implementation-defined behavior" of CPP_MANUAL. > + > + * - The value of a string literal containing a multibyte character or escape sequence not represented in the execution character set > + - X86_64 > + - > + - See Section "4.4 Characters" of GCC_MANUAL and Section "11.1 Implementation-defined behavior" of CPP_MANUAL. > + > + * - The behavior on each recognized #pragma directive > + - ARM64, X86_64 > + - pack, GCC visibility > + - See Section "4.13 Preprocessing Directives" of GCC_MANUAL and Section "7 Pragmas" of CPP_MANUAL. > + > + * - The method by which preprocessing tokens (possibly resulting from macro expansion) in a #include directive are combined into a header name > + - X86_64 > + - > + - See Section "4.13 Preprocessing Directives" of GCC_MANUAL and Section "11.1 Implementation-defined behavior" of CPP_MANUAL. > + > + > +END OF DOCUMENT. > -- > 2.34.1 > From xen-devel-bounces@lists.xenproject.org Wed Jun 21 22:08:01 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 22:08:01 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553193.863607 (Exim 4.92) (envelope-from ) id 1qC5zM-0007ct-5P; Wed, 21 Jun 2023 22:07:44 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553193.863607; Wed, 21 Jun 2023 22:07:44 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC5zM-0007cm-2S; Wed, 21 Jun 2023 22:07:44 +0000 Received: by outflank-mailman (input) for mailman id 553193; Wed, 21 Jun 2023 22:07:43 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC5zK-0007cg-NP for xen-devel@lists.xenproject.org; Wed, 21 Jun 2023 22:07:43 +0000 Received: from mx0b-0039f301.pphosted.com (mx0b-0039f301.pphosted.com [148.163.137.242]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 086ee377-1080-11ee-8611-37d641c3527e; Thu, 22 Jun 2023 00:07:38 +0200 (CEST) Received: from pps.filterd (m0174682.ppops.net [127.0.0.1]) by mx0b-0039f301.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 35LIqQxO023161; Wed, 21 Jun 2023 22:07:26 GMT Received: from eur03-dba-obe.outbound.protection.outlook.com (mail-dbaeur03lp2169.outbound.protection.outlook.com [104.47.51.169]) by mx0b-0039f301.pphosted.com (PPS) with ESMTPS id 3rc6v9gdbr-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 21 Jun 2023 22:07:25 +0000 Received: from AM0PR03MB3699.eurprd03.prod.outlook.com (2603:10a6:208:4b::31) by PAWPR03MB9761.eurprd03.prod.outlook.com (2603:10a6:102:2e4::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.23; Wed, 21 Jun 2023 22:07:21 +0000 Received: from AM0PR03MB3699.eurprd03.prod.outlook.com ([fe80::3afc:a0ce:1e52:54]) by AM0PR03MB3699.eurprd03.prod.outlook.com ([fe80::3afc:a0ce:1e52:54%7]) with mapi id 15.20.6521.023; Wed, 21 Jun 2023 22:07:21 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 086ee377-1080-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=F2XZuh99FJNKa3lAcsjzbCgTXcu+F5k1ILqIOTN4iuA+jp3rVml+vrEiZlfvLMsGWw0rVnrFgO6Sblw8JVbempYP5F37cBUhM5BTBA1sQRkCXjBr/crSkCZu6yxwJQ48OHZ/WgyyyrGO+2ECYo5Gq8tFsoi3uj8dvbt0r/ic6WoWYnlKdW/l78Hycx886Dl1CJfDEfNrgRJSoaTdWlrejMf9GLxZDQOejW5sJD0/bUzeWPV8gKhCScGoOR8ayArNxtCCk2mDjOabmdD2ZTacVf+Qro0OHIxjHNVsTccpjrpdySKEHqEGLKqqSbVyUiGRxIclUu19/cBT1zIQeSzZkQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=Cp0b19tD1nMYsybyGekZTVaOEAB61qlBtXWBsfxLsUg=; b=KziH9IQBMnMRC1h+lktqA1Chekg0hRTh9lC6a4NMuI92kFxqqbIilQlaYj1tenqxu3NAUQeL6XdHO2HbY5Pgb75hioclOF3KXZKGNg+Y+IypemDW/ooGYWJEcKgJMon4USPJeqI1O3nnGh7Cz2K9/cQ3oWfhjLEjPxI+cdtTxqSfAX1vDxPwGnM0mQrcOyWSQsYO+iQ0pbfkLLaoyitoCcZwyabNf15wcRTLZipodFg3XaCgwD8WpuUwDE7g+KeEBXGC109cGrkBnRgWRBCeZ0A7aDatcNlPYouieRsw7zrVg0ra/YdEOdORMKZFNXt9OKZr/W0rYiJp/PZdwchM5A== 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 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=epam.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Cp0b19tD1nMYsybyGekZTVaOEAB61qlBtXWBsfxLsUg=; b=kA8KXdyT4biy/hqJB53MzNyAWrteRVXj4Lyas+HBulg2KCnZbDkwXAAz6PKIhcLVVdA8Kh2m80Z0gY24HSj2HIQvBO/uNLZK3uo0BAYgtZXPk9gYvvT6OcyQRfo2IwItN49aEeIoB54PHattLtwy1CVvJU3QgGbLpAofHZA2Nd5oy9UhMMbah+rio1n1rmM7BKrqBwj3RlWWQiyWB5G/AJZILnXXjGAaR9NBlnxQrLjTp9kxPhw8rHlN+xw3Wswi5JeKTjYG7tm89eS7lzJnjh6qs0YxxeHuk/5IOvKTuipCM+KBNUhORN8TlWYj4Zyi202HY9vZy5pEDq7svT6qog== From: Volodymyr Babchuk To: =?utf-8?B?Um9nZXIgUGF1IE1vbm7DqQ==?= CC: "xen-devel@lists.xenproject.org" , Oleksandr Andrushchenko , Jan Beulich , Andrew Cooper , Wei Liu , George Dunlap , Julien Grall , Stefano Stabellini , Paul Durrant Subject: Re: [PATCH v7 01/12] vpci: introduce per-domain lock to protect vpci structure Thread-Topic: [PATCH v7 01/12] vpci: introduce per-domain lock to protect vpci structure Thread-Index: AQHZneJZdDE+HOoSO0y6VB9l0x1hDq+No9OAgAgqUAA= Date: Wed, 21 Jun 2023 22:07:20 +0000 Message-ID: <87352kpj04.fsf@epam.com> References: <20230613103159.524763-1-volodymyr_babchuk@epam.com> <20230613103159.524763-2-volodymyr_babchuk@epam.com> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: user-agent: mu4e 1.8.9; emacs 28.2 x-ms-publictraffictype: Email x-ms-traffictypediagnostic: AM0PR03MB3699:EE_|PAWPR03MB9761:EE_ x-ms-office365-filtering-correlation-id: 5927627e-0600-400e-fc8d-08db72a3e285 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: PPj+BFR/9XcT12fH3T5JCFJPc21wlJreHJ5vVWlYLD3nA3hq6m+gSoYP1G8/X1W6Ojquij+e9AfT68S6MwgvfzJVBN9/waCzDdW2DnFv/me0nhTsMd0vxrp371Njk11tZCVCi9FowwgXBTepYOnufXBACU9nIGyd1YUqNQU687zibmskdifZbKD63FP0m5yvMz5/bQLqnngLza5SWTS0rURV5fm7IEIDY+Wf4kQPgncdUgVY9pJCR2hYo7yBofsWIg0JDFeENGueOfsKT/pCSaT2pO1DB846PtYMM6LJHzUVTfpHe8pFm4daRXoa3oid2kqVp1pELdTFEmzSKWo/C5GNCVrnPUEdaHSaYrOURVLog5HHly0JokY6jNXc1TZ8gWHOMbbOR3tmX0rtZPnOtmGvrCXexWSgNodhySBf+tQWgqzDkzQzj5H8Xm/zgWnrlp/wwCBslTnv+AEonOvLZyoVPkeq9/YFc19tCY81fKhXHvqLD3YMu0SYBxj1n3Q+LKr7rgieCTsssejVJ319CUu5lQyWEPyOfm5pCo5rCgeSUQTM5PexPwQ/yD2EQsyhG9NOBg3nT4zOcgSKL1yTTRWA5itp3Tqek7FEljkj/a4HaBOyBrxhUn7OAJpnL8B0 x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM0PR03MB3699.eurprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(366004)(346002)(396003)(39860400002)(136003)(376002)(451199021)(76116006)(91956017)(66946007)(66476007)(66556008)(66446008)(64756008)(186003)(122000001)(6916009)(6512007)(2616005)(38100700002)(55236004)(966005)(38070700005)(6506007)(26005)(83380400001)(86362001)(478600001)(54906003)(36756003)(6486002)(71200400001)(316002)(2906002)(30864003)(8936002)(8676002)(5660300002)(4326008)(66899021)(41300700001)(579004)(559001)(309714004);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?VXlWcXREMDlxUEc2NVZyVVQ3dVEwNVhldnF3bmlQbVp1NytReTR6VStQaHZD?= =?utf-8?B?YitQVzFiOTRNSkFXUFpUK3Fzc2pDM1dlWVE2enc3K2U2cnFqMERtVHFLcFRs?= =?utf-8?B?cWdPYXNUUHB3cThGOUVBT0JaRHZEQXBnZnZaclZFVTN4ZXU0NTNlLyt3QVNT?= =?utf-8?B?N3MrdHZOSVdTU2t5alY5YlduMDlPOW5zYi9zaWNxcy8reWNhOUFNL2ZzMjBx?= =?utf-8?B?T1BWN3VON2xJdCtYMnpwS3cwWnV0UG43anN4Ri9EZ2g4c1ZNMFY0ZUtvVU9S?= =?utf-8?B?N0lZa09rRS9LcUtpMGF5d3IyRDVveHltcm41L0M3L1NWRVZpOWg4ZjFHczlC?= =?utf-8?B?THRBT3h3cmN6bVdablZNNzRrQ0JCcHBrWVRuRUw5amIxam50Z3J4aFJnbW5p?= =?utf-8?B?ZlpGenhnOWVZcFZQY3ROSlBjNmdmUlZvRGNQQUY0RFNBQlBqVmtXVHdVNVNy?= =?utf-8?B?NmdIZDByTE0zN0hwamRjeDAvalhOUUdqbjF1M2lWUXN6eWdTdmhXdUVlQWdT?= =?utf-8?B?eERQaFoySG80Mk9NYzVwQmpUVTN0c3BGV3RYaVRKaHZrdFhZT2hEeEhUZ0lp?= =?utf-8?B?Tk9IY2tTTzZTaDllY05rMERCaUU4VGRLM21SajFLNkRZendyNEZDYUhQNk5F?= =?utf-8?B?d09ZVURBT0ZKNG1XSzRYMkNHdzhKWWZBWkFWT0ptY2dNSUFnWGFzYlRCMVZt?= =?utf-8?B?bUQ5ZjBQV0x5bnA4OWNqNE85akR3eldBdUZWVEFaeWlFdHpqUnlhUElocGoy?= =?utf-8?B?NERiQjQyLzZDQlVWZ2cvS1UrZUNXc1VjcnA4SXY2QUtJVjhLMEo2RGRBL3Bq?= =?utf-8?B?RVUxcWNUbzlvclI4eUxZa01ZN0tubW1pK1drQUMvRU0yT0ZCU21Mb2VRNjlJ?= =?utf-8?B?ZU05czVwa0s5M1A3RzdrRHlWMkFYRVRyV3dYc2F4S0VZejRwZFlCMm4ydWdC?= =?utf-8?B?dlpZdWpNTDA4UmhyQWhRZGllWFA4alk5Zmx6QUpMZ3pYM1dRVHRKSndNVG1Q?= =?utf-8?B?OXRiT3FteHpVY29TTG9Kc0tQMGU4MzhhSFRlLzcvQ1g0a1c1U0hjMU5SNW5t?= =?utf-8?B?TVM1R2J4NmxQekg2bzVJdmh5SllkVUl4cjVMcnRkRWRsaWNtOVJnT0FlR0sy?= =?utf-8?B?YitWeVM0dkp5N25sM3VxdmhPbFYyVjhzTUtlaE4xbmJyZXVweVloem0vdEd1?= =?utf-8?B?cHZxNEVXSWNKS3VEWWFTV0w0VklESW1LREJlTnloRURybldpMVBZMS9zL1VR?= =?utf-8?B?bmJGc1VWY1Y3L1dhU1RMTXhPTGYxTHNVQ2ZxMGUwUXFkSjBTd25wWXNEZGJ5?= =?utf-8?B?SkNnMTVIQlVIM0V0S21tRGg3SHNoclBESkp2TE9ITDVYV0ViSW1OWkJnT1BV?= =?utf-8?B?eHJJVmJWcVdtVzg5bWRPV1cxMzVJV0wyQUlJMFg2Q0Y2MGhJWVBoNWJQOTM1?= =?utf-8?B?bWdiaTZzdFdVSUg0UEpZeXA0NTBvY2NMRlpqWEgyNE4yNDZqS084RVE4UGk3?= =?utf-8?B?QjUweEhWQStsck1xNE9IUWRrZCtTZUJlZVZHNGNxMGFYdjhuQ3pDOHdFMFdZ?= =?utf-8?B?WWg2aWR0Tzc2Q1BIcXh0cmJYN0xJbGhMVFFibnl1MHF0Z1A1a3BHNU12dVo1?= =?utf-8?B?M2R3WFlEc29sSGlqZUYzOGx4UWJvSWJXS0c2eDAwTk53eGdlU2RvWmVQdHE1?= =?utf-8?B?QVY4OU1MNDBYTG5qbmdkZEVUR1pnYjhwSnNQVFJKSklkajZoem1pR05mY3Ew?= =?utf-8?B?YVdzN2NFNDVVNksralRCbVhuQVIzbFlWYU9zaDc0UTMrSEVyR0JKVzF6ZXhQ?= =?utf-8?B?UW1raFl5K2hpN3NpTy9PcHZXZVZibUdrdW5aMlUraFNWZHUvK0FBNGNkZGQw?= =?utf-8?B?ZkVETWM1em9OaVArTnBOMG1UZlptL2JvcnpQb21QQk9mSG1MQ3I0NXlIYTIy?= =?utf-8?B?UXdrVGNMQVh1UEpOdG1SNzArSEg1WjlWTXc1TmszZXFiSzg5aGxZaW9uU2VG?= =?utf-8?B?QTVSNjI4ckliTDlONDIxVnVUQlMwSkZjM2xOaFlCSENtbk1hUmRTMVowTy9Z?= =?utf-8?B?MXptTTcxRVA0SHAwUWxscEsyZXBOaTFrditEak4yaW9tdUlFazk2bmk0UExH?= =?utf-8?B?NGVDdFJ2aDJtVnc2akFubThQUkh6RVdyZzF3cUNveEdWMVYyc0ZUbzNBZ0E0?= =?utf-8?B?UGc9PQ==?= Content-Type: text/plain; charset="utf-8" Content-ID: <13689570BCBEF64F8BB277E9C806D349@eurprd03.prod.outlook.com> Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: epam.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: AM0PR03MB3699.eurprd03.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 5927627e-0600-400e-fc8d-08db72a3e285 X-MS-Exchange-CrossTenant-originalarrivaltime: 21 Jun 2023 22:07:20.8129 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: b41b72d0-4e9f-4c26-8a69-f949f367c91d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: AzbxTbUOLRMxfcC43NhXn4a2qbGMKRA4isJFIad8aoRNwVLO/rEJs4YkoSeQ1CzgBhQFWx4ErtUgefx3/HTk7CPu69/CPZfO5YKqElAaYwk= X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAWPR03MB9761 X-Proofpoint-GUID: 8BsiNVJJHKcTioypZl3n1niDvd5ws8p6 X-Proofpoint-ORIG-GUID: 8BsiNVJJHKcTioypZl3n1niDvd5ws8p6 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.254,Aquarius:18.0.957,Hydra:6.0.591,FMLib:17.11.176.26 definitions=2023-06-21_12,2023-06-16_01,2023-05-22_02 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 phishscore=0 mlxlogscore=999 impostorscore=0 bulkscore=0 spamscore=0 mlxscore=0 lowpriorityscore=0 malwarescore=0 priorityscore=1501 clxscore=1015 suspectscore=0 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2305260000 definitions=main-2306210186 DQpIaSBSb2dlciwNCg0KUm9nZXIgUGF1IE1vbm7DqSA8cm9nZXIucGF1QGNpdHJpeC5jb20+IHdy aXRlczoNCg0KPiBPbiBUdWUsIEp1biAxMywgMjAyMyBhdCAxMDozMjoyNkFNICswMDAwLCBWb2xv ZHlteXIgQmFiY2h1ayB3cm90ZToNCj4+IEZyb206IE9sZWtzYW5kciBBbmRydXNoY2hlbmtvIDxv bGVrc2FuZHJfYW5kcnVzaGNoZW5rb0BlcGFtLmNvbT4NCj4+IA0KPj4gSW50cm9kdWNlIGEgcGVy LWRvbWFpbiByZWFkL3dyaXRlIGxvY2sgdG8gY2hlY2sgd2hldGhlciB2cGNpIGlzIHByZXNlbnQs DQo+PiBzbyB3ZSBhcmUgc3VyZSB0aGVyZSBhcmUgbm8gYWNjZXNzZXMgdG8gdGhlIGNvbnRlbnRz IG9mIHRoZSB2cGNpIHN0cnVjdA0KPj4gaWYgbm90LiBUaGlzIGxvY2sgY2FuIGJlIHVzZWQgKGFu ZCBpbiBhIGZldyBjYXNlcyBpcyB1c2VkIHJpZ2h0IGF3YXkpDQo+PiBzbyB0aGF0IHZwY2kgcmVt b3ZhbCBjYW4gYmUgcGVyZm9ybWVkIHdoaWxlIGhvbGRpbmcgdGhlIGxvY2sgaW4gd3JpdGUNCj4+ IG1vZGUuIFByZXZpb3VzbHkgc3VjaCByZW1vdmFsIGNvdWxkIHJhY2Ugd2l0aCB2cGNpX3JlYWQg Zm9yIGV4YW1wbGUuDQo+PiANCj4+IDEuIFBlci1kb21haW4ncyB2cGNpX3J3bG9jayBpcyB1c2Vk IHRvIHByb3RlY3QgcGRldi0+dnBjaSBzdHJ1Y3R1cmUNCj4+IGZyb20gYmVpbmcgcmVtb3ZlZC4N Cj4+IA0KPj4gMi4gV3JpdGluZyB0aGUgY29tbWFuZCByZWdpc3RlciBhbmQgUk9NIEJBUiByZWdp c3RlciBtYXkgdHJpZ2dlcg0KPj4gbW9kaWZ5X2JhcnMgdG8gcnVuLCB3aGljaCBpbiB0dXJuIG1h eSBhY2Nlc3MgbXVsdGlwbGUgcGRldnMgd2hpbGUNCj4+IGNoZWNraW5nIGZvciB0aGUgZXhpc3Rp bmcgQkFSJ3Mgb3ZlcmxhcC4gVGhlIG92ZXJsYXBwaW5nIGNoZWNrLCBpZiBkb25lDQo+PiB1bmRl ciB0aGUgcmVhZCBsb2NrLCByZXF1aXJlcyB2cGNpLT5sb2NrIHRvIGJlIGFjcXVpcmVkIG9uIGJv dGggZGV2aWNlcw0KPj4gYmVpbmcgY29tcGFyZWQsIHdoaWNoIG1heSBwcm9kdWNlIGEgZGVhZGxv Y2suIEl0IGlzIG5vdCBwb3NzaWJsZSB0bw0KPj4gdXBncmFkZSByZWFkIGxvY2sgdG8gd3JpdGUg bG9jayBpbiBzdWNoIGEgY2FzZS4gU28sIGluIG9yZGVyIHRvIHByZXZlbnQNCj4+IHRoZSBkZWFk bG9jaywgY2hlY2sgd2hpY2ggcmVnaXN0ZXJzIGFyZSBnb2luZyB0byBiZSB3cml0dGVuIGFuZCBh Y3F1aXJlDQo+PiB0aGUgbG9jayBpbiB0aGUgYXBwcm9wcmlhdGUgbW9kZSBmcm9tIHRoZSBiZWdp bm5pbmcuDQo+PiANCj4+IEFsbCBvdGhlciBjb2RlLCB3aGljaCBkb2Vzbid0IGxlYWQgdG8gcGRl di0+dnBjaSBkZXN0cnVjdGlvbiBhbmQgZG9lcyBub3QNCj4+IGFjY2VzcyBtdWx0aXBsZSBwZGV2 cyBhdCB0aGUgc2FtZSB0aW1lLCBjYW4gc3RpbGwgdXNlIGEgY29tYmluYXRpb24gb2YgdGhlDQo+ PiByZWFkIGxvY2sgYW5kIHBkZXYtPnZwY2ktPmxvY2suDQo+PiANCj4+IDMuIE9wdGltaXplIGlm IFJPTSBCQVIgd3JpdGUgbG9jayByZXF1aXJlZCBkZXRlY3Rpb24gYnkgY2FjaGluZyBvZmZzZXQN Cj4+IG9mIHRoZSBST00gQkFSIHJlZ2lzdGVyIGluIHZwY2ktPmhlYWRlci0+cm9tX3JlZyB3aGlj aCBkZXBlbmRzIG9uDQo+PiBoZWFkZXIncyB0eXBlLg0KPj4gDQo+PiA0LiBSZWR1Y2UgbG9ja2Vk IHJlZ2lvbiBpbiB2cGNpX3JlbW92ZV9kZXZpY2UgYXMgaXQgaXMgbm93IHBvc3NpYmxlDQo+PiB0 byBzZXQgcGRldi0+dnBjaSB0byBOVUxMIGVhcmx5IHJpZ2h0IGFmdGVyIHRoZSB3cml0ZSBsb2Nr IGlzIGFjcXVpcmVkLg0KPj4gDQo+PiA1LiBSZWR1Y2UgbG9ja2VkIHJlZ2lvbiBpbiB2cGNpX2Fk ZF9oYW5kbGVycyBhcyBpdCBpcyBwb3NzaWJsZSB0bw0KPj4gaW5pdGlhbGl6ZSBtYW55IG1vcmUg ZmllbGRzIG9mIHRoZSBzdHJ1Y3QgdnBjaSBiZWZvcmUgYXNzaWduaW5nIGl0IHRvDQo+PiBwZGV2 LT52cGNpLg0KPj4gDQo+PiA2LiB2cGNpX3thZGR8cmVtb3ZlfV9yZWdpc3RlciBhcmUgcmVxdWly ZWQgdG8gYmUgY2FsbGVkIHdpdGggdGhlIHdyaXRlIGxvY2sNCj4+IGhlbGQsIGJ1dCBpdCBpcyBu b3QgZmVhc2libGUgdG8gYWRkIGFuIGFzc2VydCB0aGVyZSBhcyBpdCByZXF1aXJlcw0KPj4gc3Ry dWN0IGRvbWFpbiB0byBiZSBwYXNzZWQgZm9yIHRoYXQuIFNvLCBhZGQgYSBjb21tZW50IGFib3V0 IHRoaXMgcmVxdWlyZW1lbnQNCj4+IHRvIHRoZXNlIGFuZCBvdGhlciBmdW5jdGlvbnMgd2l0aCB0 aGUgZXF1aXZhbGVudCBjb25zdHJhaW50cy4NCj4+IA0KPj4gNy4gRHJvcCBjb25zdCBxdWFsaWZp ZXIgd2hlcmUgdGhlIG5ldyByd2xvY2sgaXMgdXNlZCBhbmQgdGhpcyBpcyBhcHByb3ByaWF0ZS4N Cj4+IA0KPj4gOC4gRG8gbm90IGNhbGwgcHJvY2Vzc19wZW5kaW5nX3NvZnRpcnFzIHdpdGggYW55 IGxvY2tzIGhlbGQuIEZvciB0aGF0IHVubG9jaw0KPj4gcHJpb3IgdGhlIGNhbGwgYW5kIHJlLWFj cXVpcmUgdGhlIGxvY2tzIGFmdGVyLiBBZnRlciByZS1hY3F1aXJpbmcgdGhlDQo+PiBsb2NrIHRo ZXJlIGlzIG5vIG5lZWQgdG8gY2hlY2sgaWYgcGRldi0+dnBjaSBleGlzdHM6DQo+PiAgLSBpbiBh cHBseV9tYXAgYmVjYXVzZSBvZiB0aGUgY29udGV4dCBpdCBpcyBjYWxsZWQgKG5vIHJhY2UgY29u ZGl0aW9uDQo+PiAgICBwb3NzaWJsZSkNCj4+ICAtIGZvciBNU0kvTVNJLVggZGVidWcgY29kZSBi ZWNhdXNlIGl0IGlzIGNhbGxlZCBhdCB0aGUgZW5kIG9mDQo+PiAgICBwZGV2LT52cGNpIGFjY2Vz cyBhbmQgbm8gZnVydGhlciBhY2Nlc3MgdG8gcGRldi0+dnBjaSBpcyBtYWRlDQo+PiANCj4+IDku IENoZWNrIGZvciAhcGRldi0+dnBjaSBpbiB2cGNpX3tyZWFkfHdyaXRlfSBhZnRlciBhY3F1aXJp bmcgdGhlIGxvY2sNCj4+IGFuZCBpZiBzbywgYWxsb3cgcmVhZGluZyBvciB3cml0aW5nIHRoZSBo YXJkd2FyZSByZWdpc3RlciBkaXJlY3RseS4gVGhpcyBpcw0KPj4gYWNjZXB0YWJsZSBhcyB3ZSBv bmx5IGRlYWwgd2l0aCBEb20wIGFzIG9mIG5vdy4gT25jZSBEb21VIHN1cHBvcnQgaXMNCj4+IGFk ZGVkIHRoZSB3cml0ZSB3aWxsIG5lZWQgdG8gYmUgaWdub3JlZCBhbmQgcmVhZCByZXR1cm4gYWxs IDAncyBmb3IgdGhlDQo+PiBndWVzdHMsIHdoaWxlIERvbTAgY2FuIHN0aWxsIGFjY2VzcyB0aGUg cmVnaXN0ZXJzIGRpcmVjdGx5Lg0KPj4gDQo+PiAxMC4gSW50cm9kdWNlIHBjaWRldnNfdHJ5bG9j aywgc28gdGhlcmUgaXMgYSBwb3NzaWJpbGl0eSB0byB0cnkgbG9ja2luZw0KPj4gdGhlIHBjaWRl didzIGxvY2suDQo+PiANCj4+IDExLiBVc2UgcGNpZGV2J3MgbG9jayBhcm91bmQgZm9yX2VhY2hf cGRldiBhbmQgcGNpX2dldF9wZGV2X2J5X2RvbWFpbg0KPj4gd2hpbGUgYWNjZXNzaW5nIHBkZXZz IGluIHZwY2kgY29kZS4NCj4+IA0KPj4gMTIuIFRoaXMgaXMgYmFzZWQgb24gdGhlIGRpc2N1c3Np b24gYXQgWzFdLg0KPj4gDQo+PiBbMV0gaHR0cHM6Ly91cmxkZWZlbnNlLmNvbS92My9fX2h0dHBz Oi8vbG9yZS5rZXJuZWwub3JnL2FsbC8yMDIyMDIwNDA2MzQ1OS42ODA5NjEtNC1hbmRyMjAwMEBn bWFpbC5jb20vX187ISFHRl8yOWRiY1FJVUJQQSF6UHkzMUNXRldseUMweGhFSGlTajZyT1BlN1JE U2pMcmFuSTlLWnFoRzRzc21DaEpNV3ZzUExKUFFHVGNWc25ub3dacFA4LUxhS0prSVdJemI4dWUw RG9ZaGckIFtsb3JlWy5da2VybmVsWy5db3JnXQ0KPj4gDQo+PiBTdWdnZXN0ZWQtYnk6IFJvZ2Vy IFBhdSBNb25uw6kgPHJvZ2VyLnBhdUBjaXRyaXguY29tPg0KPj4gU3VnZ2VzdGVkLWJ5OiBKYW4g QmV1bGljaCA8amJldWxpY2hAc3VzZS5jb20+DQo+PiBTaWduZWQtb2ZmLWJ5OiBPbGVrc2FuZHIg QW5kcnVzaGNoZW5rbyA8b2xla3NhbmRyX2FuZHJ1c2hjaGVua29AZXBhbS5jb20+DQo+DQo+IFRo YW5rcy4NCj4NCj4gSSBoYXZlbid0IGxvb2tlZCBpbiBmdWxsIGRldGFpbCwgYnV0IEknbSBhZnJh aWQgdGhlcmUncyBhbiBBQkJBDQo+IGRlYWRsb2NrIHdpdGggdGhlIHBlci1kb21haW4gdnBjaSBs b2NrIGFuZCB0aGUgcGNpZGV2cyBsb2NrIGluDQo+IG1vZGlmeV9iYXJzKCkgdnMgIHZwY2lfYWRk X2hhbmRsZXJzKCkgYW5kIHZwY2lfcmVtb3ZlX2RldmljZSgpLg0KPg0KPiBJJ3ZlIG1hZGUgc29t ZSBjb21tZW50cyBiZWxvdy4NCg0KVGhhbmsgeW91IGZvciB0aGUgcmV2aWV3LiBJIGJlbGlldmUg dGhhdCBpdCBpcyBhIGdvb2QgaWRlYSB0byBoYXZlIGENCnBlci1kb21haW4gcGRldl9saXN0IGxv Y2suIFNlZSBteSBhbnN3ZXJzIGJlbG93Lg0KDQoNCj4+IC0tLQ0KPj4gVGhpcyB3YXMgY2hlY2tl ZCBvbiB4ODY6IHdpdGggYW5kIHdpdGhvdXQgUFZIIERvbTAuDQo+PiAtLS0NCj4+ICB4ZW4vYXJj aC94ODYvaHZtL3Ztc2kuYyAgICAgICB8ICAgNyArKysNCj4+ICB4ZW4vY29tbW9uL2RvbWFpbi5j ICAgICAgICAgICB8ICAgMyArDQo+PiAgeGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvcGNpLmMgfCAg IDUgKysNCj4+ICB4ZW4vZHJpdmVycy92cGNpL2hlYWRlci5jICAgICB8ICA1MiArKysrKysrKysr KysrKysrKw0KPj4gIHhlbi9kcml2ZXJzL3ZwY2kvbXNpLmMgICAgICAgIHwgIDI1ICsrKysrKyst DQo+PiAgeGVuL2RyaXZlcnMvdnBjaS9tc2l4LmMgICAgICAgfCAgNTEgKysrKysrKysrKysrKy0t LQ0KPj4gIHhlbi9kcml2ZXJzL3ZwY2kvdnBjaS5jICAgICAgIHwgMTA3ICsrKysrKysrKysrKysr KysrKysrKysrKystLS0tLS0tLS0NCj4+ICB4ZW4vaW5jbHVkZS94ZW4vcGNpLmggICAgICAgICB8 ICAgMSArDQo+PiAgeGVuL2luY2x1ZGUveGVuL3NjaGVkLmggICAgICAgfCAgIDMgKw0KPj4gIHhl bi9pbmNsdWRlL3hlbi92cGNpLmggICAgICAgIHwgICA2ICsrDQo+PiAgMTAgZmlsZXMgY2hhbmdl ZCwgMjIzIGluc2VydGlvbnMoKyksIDM3IGRlbGV0aW9ucygtKQ0KPj4gDQo+PiBkaWZmIC0tZ2l0 IGEveGVuL2FyY2gveDg2L2h2bS92bXNpLmMgYi94ZW4vYXJjaC94ODYvaHZtL3Ztc2kuYw0KPj4g aW5kZXggM2NkNDkyMzA2MC4uZjE4ODQ1MGIxYiAxMDA2NDQNCj4+IC0tLSBhL3hlbi9hcmNoL3g4 Ni9odm0vdm1zaS5jDQo+PiArKysgYi94ZW4vYXJjaC94ODYvaHZtL3Ztc2kuYw0KPj4gQEAgLTg5 NSw2ICs4OTUsOSBAQCBpbnQgdnBjaV9tc2l4X2FyY2hfcHJpbnQoY29uc3Qgc3RydWN0IHZwY2lf bXNpeCAqbXNpeCkNCj4+ICB7DQo+PiAgICAgIHVuc2lnbmVkIGludCBpOw0KPj4gIA0KPj4gKyAg ICBBU1NFUlQocndfaXNfbG9ja2VkKCZtc2l4LT5wZGV2LT5kb21haW4tPnZwY2lfcndsb2NrKSk7 DQo+PiArICAgIEFTU0VSVChwY2lkZXZzX2xvY2tlZCgpKTsNCj4+ICsNCj4+ICAgICAgZm9yICgg aSA9IDA7IGkgPCBtc2l4LT5tYXhfZW50cmllczsgaSsrICkNCj4+ICAgICAgew0KPj4gICAgICAg ICAgY29uc3Qgc3RydWN0IHZwY2lfbXNpeF9lbnRyeSAqZW50cnkgPSAmbXNpeC0+ZW50cmllc1tp XTsNCj4+IEBAIC05MTMsNyArOTE2LDExIEBAIGludCB2cGNpX21zaXhfYXJjaF9wcmludChjb25z dCBzdHJ1Y3QgdnBjaV9tc2l4ICptc2l4KQ0KPj4gICAgICAgICAgICAgIHN0cnVjdCBwY2lfZGV2 ICpwZGV2ID0gbXNpeC0+cGRldjsNCj4+ICANCj4+ICAgICAgICAgICAgICBzcGluX3VubG9jaygm bXNpeC0+cGRldi0+dnBjaS0+bG9jayk7DQo+PiArICAgICAgICAgICAgcGNpZGV2c191bmxvY2so KTsNCj4+ICsgICAgICAgICAgICByZWFkX3VubG9jaygmcGRldi0+ZG9tYWluLT52cGNpX3J3bG9j ayk7DQo+PiAgICAgICAgICAgICAgcHJvY2Vzc19wZW5kaW5nX3NvZnRpcnFzKCk7DQo+PiArICAg ICAgICAgICAgcmVhZF9sb2NrKCZwZGV2LT5kb21haW4tPnZwY2lfcndsb2NrKTsNCj4+ICsgICAg ICAgICAgICBwY2lkZXZzX2xvY2soKTsNCj4NCj4gV2h5IGRvIHlvdSBuZWVkIHRoZSBwY2lkZXZz X2xvY2sgaGVyZT8gIElzbid0IGl0IGVub3VnaCB0byBoYXZlIHRoZQ0KPiBwZXItZG9tYWluIHJ3 bG9jayB0YWtlbiBpbiByZWFkIG1vZGUgaW4gb3JkZXIgdG8gcHJldmVudCBkZXZpY2VzIGZyb20N Cj4gYmVpbmcgZGUtYXNzaWduZWQgZnJvbSB0aGUgZG9tYWluPw0KPg0KDQpZZXMsIGxvb2tzIGxp a2UgeW91IGFyZSByaWdodC4gSSdsbCByZW1vdmUgcGNpZGV2c19sb2NrKCkgDQoNCg0KPj4gICAg ICAgICAgICAgIC8qIE5COiB3ZSBhc3N1bWUgdGhhdCBwZGV2IGNhbm5vdCBnbyBhd2F5IGZvciBh biBhbGl2ZSBkb21haW4uICovDQo+PiAgICAgICAgICAgICAgaWYgKCAhcGRldi0+dnBjaSB8fCAh c3Bpbl90cnlsb2NrKCZwZGV2LT52cGNpLT5sb2NrKSApDQo+PiAgICAgICAgICAgICAgICAgIHJl dHVybiAtRUJVU1k7DQo+PiBkaWZmIC0tZ2l0IGEveGVuL2NvbW1vbi9kb21haW4uYyBiL3hlbi9j b21tb24vZG9tYWluLmMNCj4+IGluZGV4IDZhNDQwNTkwZmUuLmE0NjQwYWNiNjIgMTAwNjQ0DQo+ PiAtLS0gYS94ZW4vY29tbW9uL2RvbWFpbi5jDQo+PiArKysgYi94ZW4vY29tbW9uL2RvbWFpbi5j DQo+PiBAQCAtNjIyLDYgKzYyMiw5IEBAIHN0cnVjdCBkb21haW4gKmRvbWFpbl9jcmVhdGUoZG9t aWRfdCBkb21pZCwNCj4+ICANCj4+ICAjaWZkZWYgQ09ORklHX0hBU19QQ0kNCj4+ICAgICAgSU5J VF9MSVNUX0hFQUQoJmQtPnBkZXZfbGlzdCk7DQo+PiArI2lmZGVmIENPTkZJR19IQVNfVlBDSQ0K Pj4gKyAgICByd2xvY2tfaW5pdCgmZC0+dnBjaV9yd2xvY2spOw0KPj4gKyNlbmRpZg0KPj4gICNl bmRpZg0KPj4gIA0KPj4gICAgICAvKiBBbGwgZXJyb3IgcGF0aHMgY2FuIGRlcGVuZCBvbiB0aGUg YWJvdmUgc2V0dXAuICovDQo+PiBkaWZmIC0tZ2l0IGEveGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gv cGNpLmMgYi94ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC9wY2kuYw0KPj4gaW5kZXggMDdkMTk4NmQz My4uMGFmY2I1OWFmMCAxMDA2NDQNCj4+IC0tLSBhL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL3Bj aS5jDQo+PiArKysgYi94ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC9wY2kuYw0KPj4gQEAgLTU3LDYg KzU3LDExIEBAIHZvaWQgcGNpZGV2c19sb2NrKHZvaWQpDQo+PiAgICAgIHNwaW5fbG9ja19yZWN1 cnNpdmUoJl9wY2lkZXZzX2xvY2spOw0KPj4gIH0NCj4+ICANCj4+ICtpbnQgcGNpZGV2c190cnls b2NrKHZvaWQpDQo+PiArew0KPj4gKyAgICByZXR1cm4gc3Bpbl90cnlsb2NrX3JlY3Vyc2l2ZSgm X3BjaWRldnNfbG9jayk7DQo+PiArfQ0KPj4gKw0KPj4gIHZvaWQgcGNpZGV2c191bmxvY2sodm9p ZCkNCj4+ICB7DQo+PiAgICAgIHNwaW5fdW5sb2NrX3JlY3Vyc2l2ZSgmX3BjaWRldnNfbG9jayk7 DQo+PiBkaWZmIC0tZ2l0IGEveGVuL2RyaXZlcnMvdnBjaS9oZWFkZXIuYyBiL3hlbi9kcml2ZXJz L3ZwY2kvaGVhZGVyLmMNCj4+IGluZGV4IGVjMmU5NzhhNGUuLjIzYjUyMjNhZGYgMTAwNjQ0DQo+ PiAtLS0gYS94ZW4vZHJpdmVycy92cGNpL2hlYWRlci5jDQo+PiArKysgYi94ZW4vZHJpdmVycy92 cGNpL2hlYWRlci5jDQo+PiBAQCAtMTUyLDEyICsxNTIsMTQgQEAgYm9vbCB2cGNpX3Byb2Nlc3Nf cGVuZGluZyhzdHJ1Y3QgdmNwdSAqdikNCj4+ICAgICAgICAgIGlmICggcmMgPT0gLUVSRVNUQVJU ICkNCj4+ICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTsNCj4+ICANCj4+ICsgICAgICAgIHJlYWRf bG9jaygmdi0+ZG9tYWluLT52cGNpX3J3bG9jayk7DQo+PiAgICAgICAgICBzcGluX2xvY2soJnYt PnZwY2kucGRldi0+dnBjaS0+bG9jayk7DQo+PiAgICAgICAgICAvKiBEaXNhYmxlIG1lbW9yeSBk ZWNvZGluZyB1bmNvbmRpdGlvbmFsbHkgb24gZmFpbHVyZS4gKi8NCj4+ICAgICAgICAgIG1vZGlm eV9kZWNvZGluZyh2LT52cGNpLnBkZXYsDQo+PiAgICAgICAgICAgICAgICAgICAgICAgICAgcmMg PyB2LT52cGNpLmNtZCAmIH5QQ0lfQ09NTUFORF9NRU1PUlkgOiB2LT52cGNpLmNtZCwNCj4+ICAg ICAgICAgICAgICAgICAgICAgICAgICAhcmMgJiYgdi0+dnBjaS5yb21fb25seSk7DQo+PiAgICAg ICAgICBzcGluX3VubG9jaygmdi0+dnBjaS5wZGV2LT52cGNpLT5sb2NrKTsNCj4+ICsgICAgICAg IHJlYWRfdW5sb2NrKCZ2LT5kb21haW4tPnZwY2lfcndsb2NrKTsNCj4NCj4gSSB0aGluayB5b3Ug bGlrZWx5IHdhbnQgdG8gZXhwYW5kIHRoZSBzY29wZSBvZiB0aGUgZG9tYWluIHZwY2kgbG9jayBp bg0KPiBvcmRlciB0byBhbHNvIHByb3RlY3QgdGhlIGRhdGEgaW4gdi0+dnBjaT8gIFNvIHRoYXQg dlBDSSBkZXZpY2UNCj4gcmVtb3ZhbCBjYW4gY2xlYXIgdGhpcyBkYXRhIGlmIHJlcXVpcmVkIHdp dGhvdXQgcmFjaW5nIHdpdGgNCj4gdnBjaV9wcm9jZXNzX3BlbmRpbmcoKS4gIE90aGVyd2lzZSB5 b3UgbmVlZCB0byBwYXVzZSB0aGUgZG9tYWluIHdoZW4NCj4gcmVtb3ZpbmcgdlBDSS4NCg0KWWVz LCB5b3UgYXJlIHJpZ2h0Lg0KDQo+DQo+PiAgDQo+PiAgICAgICAgICByYW5nZXNldF9kZXN0cm95 KHYtPnZwY2kubWVtKTsNCj4+ICAgICAgICAgIHYtPnZwY2kubWVtID0gTlVMTDsNCj4+IEBAIC0x ODEsOCArMTgzLDIwIEBAIHN0YXRpYyBpbnQgX19pbml0IGFwcGx5X21hcChzdHJ1Y3QgZG9tYWlu ICpkLCBjb25zdCBzdHJ1Y3QgcGNpX2RldiAqcGRldiwNCj4+ICAgICAgc3RydWN0IG1hcF9kYXRh IGRhdGEgPSB7IC5kID0gZCwgLm1hcCA9IHRydWUgfTsNCj4+ICAgICAgaW50IHJjOw0KPj4gIA0K Pj4gKyAgICBBU1NFUlQocndfaXNfd3JpdGVfbG9ja2VkKCZkLT52cGNpX3J3bG9jaykpOw0KPj4g Kw0KPj4gICAgICB3aGlsZSAoIChyYyA9IHJhbmdlc2V0X2NvbnN1bWVfcmFuZ2VzKG1lbSwgbWFw X3JhbmdlLCAmZGF0YSkpID09IC1FUkVTVEFSVCApDQo+PiArICAgIHsNCj4+ICsgICAgICAgIC8q DQo+PiArICAgICAgICAgKiBJdCdzIHNhZmUgdG8gZHJvcCBhbmQgcmVhY3F1aXJlIHRoZSBsb2Nr IGluIHRoaXMgY29udGV4dA0KPj4gKyAgICAgICAgICogd2l0aG91dCByaXNraW5nIHBkZXYgZGlz YXBwZWFyaW5nIGJlY2F1c2UgZGV2aWNlcyBjYW5ub3QgYmUNCj4+ICsgICAgICAgICAqIHJlbW92 ZWQgdW50aWwgdGhlIGluaXRpYWwgZG9tYWluIGhhcyBiZWVuIHN0YXJ0ZWQuDQo+PiArICAgICAg ICAgKi8NCj4+ICsgICAgICAgIHdyaXRlX3VubG9jaygmZC0+dnBjaV9yd2xvY2spOw0KPj4gICAg ICAgICAgcHJvY2Vzc19wZW5kaW5nX3NvZnRpcnFzKCk7DQo+PiArICAgICAgICB3cml0ZV9sb2Nr KCZkLT52cGNpX3J3bG9jayk7DQo+PiArICAgIH0NCj4+ICsNCj4+ICAgICAgcmFuZ2VzZXRfZGVz dHJveShtZW0pOw0KPj4gICAgICBpZiAoICFyYyApDQo+PiAgICAgICAgICBtb2RpZnlfZGVjb2Rp bmcocGRldiwgY21kLCBmYWxzZSk7DQo+PiBAQCAtMjEzLDYgKzIyNyw3IEBAIHN0YXRpYyB2b2lk IGRlZmVyX21hcChzdHJ1Y3QgZG9tYWluICpkLCBzdHJ1Y3QgcGNpX2RldiAqcGRldiwNCj4+ICAg ICAgcmFpc2Vfc29mdGlycShTQ0hFRFVMRV9TT0ZUSVJRKTsNCj4+ICB9DQo+PiAgDQo+PiArLyog VGhpcyBtdXN0IGhvbGQgZG9tYWluJ3MgdnBjaV9yd2xvY2sgaW4gd3JpdGUgbW9kZS4gKi8NCj4N Cj4gV2h5IGl0IG11c3QgYmUgaW4gd3JpdGUgbW9kZT8NCj4NCj4gSXMgdGhpcyB0byBhdm9pZCBB QkJBIGRlYWRsb2NrcyBhcyBub3QgdGFraW5nIHRoZSBwZXItZG9tYWluIGxvY2sgaW4NCj4gd3Jp dGUgbW9kZSB3b3VsZCB0aGVuIGZvcmNlIHVzIHRvIHRha2UgZWFjaCBwZGV2LT52cGNpLT5sb2Nr IGluIG9yZGVyDQo+IHRvIHByZXZlbnQgY29uY3VycmVudCBtb2RpZmljYXRpb25zIG9mIHJlbW90 ZSBkZXZpY2VzPw0KDQpZZXMsIGV4YWN0bHkgdGhpcy4gVGhpcyBpcyBtZW50aW9uZWQgaW4gdGhl IGNvbW1pdCBtZXNzYWdlOg0KDQogICAgMi4gV3JpdGluZyB0aGUgY29tbWFuZCByZWdpc3RlciBh bmQgUk9NIEJBUiByZWdpc3RlciBtYXkgdHJpZ2dlcg0KICAgIG1vZGlmeV9iYXJzIHRvIHJ1biwg d2hpY2ggaW4gdHVybiBtYXkgYWNjZXNzIG11bHRpcGxlIHBkZXZzIHdoaWxlDQogICAgY2hlY2tp bmcgZm9yIHRoZSBleGlzdGluZyBCQVIncyBvdmVybGFwLiBUaGUgb3ZlcmxhcHBpbmcgY2hlY2ss IGlmIGRvbmUNCiAgICB1bmRlciB0aGUgcmVhZCBsb2NrLCByZXF1aXJlcyB2cGNpLT5sb2NrIHRv IGJlIGFjcXVpcmVkIG9uIGJvdGggZGV2aWNlcw0KICAgIGJlaW5nIGNvbXBhcmVkLCB3aGljaCBt YXkgcHJvZHVjZSBhIGRlYWRsb2NrLiBJdCBpcyBub3QgcG9zc2libGUgdG8NCiAgICB1cGdyYWRl IHJlYWQgbG9jayB0byB3cml0ZSBsb2NrIGluIHN1Y2ggYSBjYXNlLiBTbywgaW4gb3JkZXIgdG8g cHJldmVudA0KICAgIHRoZSBkZWFkbG9jaywgY2hlY2sgd2hpY2ggcmVnaXN0ZXJzIGFyZSBnb2lu ZyB0byBiZSB3cml0dGVuIGFuZCBhY3F1aXJlDQogICAgdGhlIGxvY2sgaW4gdGhlIGFwcHJvcHJp YXRlIG1vZGUgZnJvbSB0aGUgYmVnaW5uaW5nLg0KDQo+DQo+PiAgc3RhdGljIGludCBtb2RpZnlf YmFycyhjb25zdCBzdHJ1Y3QgcGNpX2RldiAqcGRldiwgdWludDE2X3QgY21kLCBib29sIHJvbV9v bmx5KQ0KPj4gIHsNCj4+ICAgICAgc3RydWN0IHZwY2lfaGVhZGVyICpoZWFkZXIgPSAmcGRldi0+ dnBjaS0+aGVhZGVyOw0KPj4gQEAgLTI4Nyw2ICszMDIsNyBAQCBzdGF0aWMgaW50IG1vZGlmeV9i YXJzKGNvbnN0IHN0cnVjdCBwY2lfZGV2ICpwZGV2LCB1aW50MTZfdCBjbWQsIGJvb2wgcm9tX29u bHkpDQo+PiAgICAgICAqIENoZWNrIGZvciBvdmVybGFwcyB3aXRoIG90aGVyIEJBUnMuIE5vdGUg dGhhdCBvbmx5IEJBUnMgdGhhdCBhcmUNCj4+ICAgICAgICogY3VycmVudGx5IG1hcHBlZCAoZW5h YmxlZCkgYXJlIGNoZWNrZWQgZm9yIG92ZXJsYXBzLg0KPj4gICAgICAgKi8NCj4+ICsgICAgcGNp ZGV2c19sb2NrKCk7DQo+DQo+IFRoaXMgY2FuIGJlIHByb2JsZW1hdGljIEknbSBhZnJhaWQsIGFz IGl0J3MgYSBndWVzdCBjb250cm9sbGVkIHBhdGgNCj4gdGhhdCBhbGxvd3MgYXBwbHlpbmcgdW5y ZXN0cmljdGVkIGNvbnRlbnRpb24gb24gdGhlIHBjaWRldnMgbG9jay4gIEknbQ0KPiB1bnN1cmUg d2hldGhlciBtdWx0aXBsZSBndWVzdHMgY291bGQgYmUgYWJsZSB0byB0cmlnZ2VyIHRoZSB3YXRj aGRvZw0KPiBpZiBnaXZlbiBlbm91Z2ggZGV2aWNlcy92Y3B1cyB0byBiZSBhYmxlIHRvIHBlcmZv cm0gZW5vdWdoDQo+IHNpbXVsdGFuZW91cyBjYWxscyB0byBtb2RpZnlfYmFycygpLg0KPg0KPiBN YXliZSB5b3UgY291bGQgZXhwYW5kIHRoZSBwZXItZG9tYWluIHZwY2kgbG9jayB0byBhbHNvIHBy b3RlY3QNCj4gbW9kaWZpY2F0aW9ucyBvZiBkb21haW4tPnBkZXZfbGlzdD8NCj4NCj4gSU9XOiBr aW5kIG9mIGEgcGVyLWRvbWFpbiBwZGV2X2xvY2suDQoNClRoaXMgbWlnaHQgd29yaywgYnV0IEkg YW0gbm90IHN1cmUgaWYgd2UgbmVlZCB0byBleHBhbmQgdnBjaSBsb2NrLiBNYXliZQ0KaXQgaXMg YmV0dGVyIHRvIGFkZCBhbm90aGVyIGxvY2sgdGhhdCBwcm90ZWN0cyBkb21haW4tPnBkZXZfbGlz dD8gSQ0KYWZyYWlkIHRoYXQgY29tYmluZWQgbG9jayB3aWxsIGJlIGNvbmZ1c2luZywgYXMgaXQg cHJvdGVjdHMgdHdvDQpzZW1pLXJlbGF0ZWQgZW50aXRpZXMuDQoNCj4NCj4+ICAgICAgZm9yX2Vh Y2hfcGRldiAoIHBkZXYtPmRvbWFpbiwgdG1wICkNCj4+ICAgICAgew0KPj4gICAgICAgICAgaWYg KCB0bXAgPT0gcGRldiApDQo+PiBAQCAtMzI2LDEwICszNDIsMTIgQEAgc3RhdGljIGludCBtb2Rp ZnlfYmFycyhjb25zdCBzdHJ1Y3QgcGNpX2RldiAqcGRldiwgdWludDE2X3QgY21kLCBib29sIHJv bV9vbmx5KQ0KPj4gICAgICAgICAgICAgICAgICBwcmludGsoWEVOTE9HX0dfV0FSTklORyAiRmFp bGVkIHRvIHJlbW92ZSBbJWx4LCAlbHhdOiAlZFxuIiwNCj4+ICAgICAgICAgICAgICAgICAgICAg ICAgIHN0YXJ0LCBlbmQsIHJjKTsNCj4+ICAgICAgICAgICAgICAgICAgcmFuZ2VzZXRfZGVzdHJv eShtZW0pOw0KPj4gKyAgICAgICAgICAgICAgICBwY2lkZXZzX3VubG9jaygpOw0KPj4gICAgICAg ICAgICAgICAgICByZXR1cm4gcmM7DQo+PiAgICAgICAgICAgICAgfQ0KPj4gICAgICAgICAgfQ0K Pj4gICAgICB9DQo+PiArICAgIHBjaWRldnNfdW5sb2NrKCk7DQo+PiAgDQo+PiAgICAgIEFTU0VS VChkZXYpOw0KPj4gIA0KPj4gQEAgLTQ4Miw2ICs1MDAsOCBAQCBzdGF0aWMgaW50IGNmX2NoZWNr IGluaXRfYmFycyhzdHJ1Y3QgcGNpX2RldiAqcGRldikNCj4+ICAgICAgc3RydWN0IHZwY2lfYmFy ICpiYXJzID0gaGVhZGVyLT5iYXJzOw0KPj4gICAgICBpbnQgcmM7DQo+PiAgDQo+PiArICAgIEFT U0VSVChyd19pc193cml0ZV9sb2NrZWQoJnBkZXYtPmRvbWFpbi0+dnBjaV9yd2xvY2spKTsNCj4+ ICsNCj4+ICAgICAgc3dpdGNoICggcGNpX2NvbmZfcmVhZDgocGRldi0+c2JkZiwgUENJX0hFQURF Ul9UWVBFKSAmIDB4N2YgKQ0KPj4gICAgICB7DQo+PiAgICAgIGNhc2UgUENJX0hFQURFUl9UWVBF X05PUk1BTDoNCj4+IEBAIC01NzAsNiArNTkwLDggQEAgc3RhdGljIGludCBjZl9jaGVjayBpbml0 X2JhcnMoc3RydWN0IHBjaV9kZXYgKnBkZXYpDQo+PiAgICAgICAgICB9DQo+PiAgICAgIH0NCj4+ ICANCj4+ICsgICAgQVNTRVJUKCFoZWFkZXItPnJvbV9yZWcpOw0KPj4gKw0KPj4gICAgICAvKiBD aGVjayBleHBhbnNpb24gUk9NLiAqLw0KPj4gICAgICByYyA9IHBjaV9zaXplX21lbV9iYXIocGRl di0+c2JkZiwgcm9tX3JlZywgJmFkZHIsICZzaXplLCBQQ0lfQkFSX1JPTSk7DQo+PiAgICAgIGlm ICggcmMgPiAwICYmIHNpemUgKQ0KPj4gQEAgLTU4NiwxMiArNjA4LDQyIEBAIHN0YXRpYyBpbnQg Y2ZfY2hlY2sgaW5pdF9iYXJzKHN0cnVjdCBwY2lfZGV2ICpwZGV2KQ0KPj4gICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICA0LCByb20pOw0KPj4gICAgICAgICAgaWYgKCByYyApDQo+PiAg ICAgICAgICAgICAgcm9tLT50eXBlID0gVlBDSV9CQVJfRU1QVFk7DQo+PiArDQo+PiArICAgICAg ICBoZWFkZXItPnJvbV9yZWcgPSByb21fcmVnOw0KPj4gICAgICB9DQo+PiAgDQo+PiAgICAgIHJl dHVybiAoY21kICYgUENJX0NPTU1BTkRfTUVNT1JZKSA/IG1vZGlmeV9iYXJzKHBkZXYsIGNtZCwg ZmFsc2UpIDogMDsNCj4+ICB9DQo+PiAgUkVHSVNURVJfVlBDSV9JTklUKGluaXRfYmFycywgVlBD SV9QUklPUklUWV9NSURETEUpOw0KPj4gIA0KPj4gK3N0YXRpYyBib29sIG92ZXJsYXAodW5zaWdu ZWQgaW50IHIxX29mZnNldCwgdW5zaWduZWQgaW50IHIxX3NpemUsDQo+PiArICAgICAgICAgICAg ICAgICAgICB1bnNpZ25lZCBpbnQgcjJfb2Zmc2V0LCB1bnNpZ25lZCBpbnQgcjJfc2l6ZSkNCj4+ ICt7DQo+PiArICAgIC8qIFJldHVybiB0cnVlIGlmIHRoZXJlIGlzIGFuIG92ZXJsYXAuICovDQo+ PiArICAgIHJldHVybiByMV9vZmZzZXQgPCByMl9vZmZzZXQgKyByMl9zaXplICYmIHIyX29mZnNl dCA8IHIxX29mZnNldCArIHIxX3NpemU7DQo+DQo+IEhtLCB3ZSBhbHJlYWR5IGhhdmUgYSB2cGNp X3JlZ2lzdGVyX2NtcCgpLCB3aGljaCBkb2VzIGEgdmVyeSBzaW1pbGFyDQo+IGNvbXBhcmlzb24u ICBJIHdvbmRlciBpZiBpdCB3b3VsZCBiZSBwb3NzaWJsZSB0byBzb21laG93IHVzZSB0aGF0DQo+ IGhlcmUuDQo+DQoNClllYWgsIEknbGwgcmV2aXNpdCB0aGlzIHBhcnQuDQoNCj4+ICt9DQo+PiAr DQo+PiArYm9vbCB2cGNpX2hlYWRlcl9uZWVkX3dyaXRlX2xvY2soY29uc3Qgc3RydWN0IHBjaV9k ZXYgKnBkZXYsDQo+PiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQg aW50IHN0YXJ0LCB1bnNpZ25lZCBpbnQgc2l6ZSkNCj4+ICt7DQo+PiArICAgIC8qDQo+PiArICAg ICAqIFdyaXRpbmcgdGhlIGNvbW1hbmQgcmVnaXN0ZXIgYW5kIFJPTSBCQVIgcmVnaXN0ZXIgbWF5 IHRyaWdnZXINCj4+ICsgICAgICogbW9kaWZ5X2JhcnMgdG8gcnVuLCB3aGljaCBpbiB0dXJuIG1h eSBhY2Nlc3MgbXVsdGlwbGUgcGRldnMgd2hpbGUNCj4+ICsgICAgICogY2hlY2tpbmcgZm9yIHRo ZSBleGlzdGluZyBCQVIncyBvdmVybGFwLiBUaGUgb3ZlcmxhcHBpbmcgY2hlY2ssIGlmIGRvbmUN Cj4+ICsgICAgICogdW5kZXIgdGhlIHJlYWQgbG9jaywgcmVxdWlyZXMgdnBjaS0+bG9jayB0byBi ZSBhY3F1aXJlZCBvbiBib3RoIGRldmljZXMNCj4+ICsgICAgICogYmVpbmcgY29tcGFyZWQsIHdo aWNoIG1heSBwcm9kdWNlIGEgZGVhZGxvY2suIEF0IHRoZSBzYW1lIHRpbWUgaXQgaXMgbm90DQo+ PiArICAgICAqIHBvc3NpYmxlIHRvIHVwZ3JhZGUgcmVhZCBsb2NrIHRvIHdyaXRlIGxvY2sgaW4g c3VjaCBhIGNhc2UuDQo+PiArICAgICAqIENoZWNrIHdoaWNoIHJlZ2lzdGVycyBhcmUgZ29pbmcg dG8gYmUgd3JpdHRlbiBhbmQgcmV0dXJuIHRydWUgaWYgbG9jaw0KPj4gKyAgICAgKiBuZWVkcyB0 byBiZSBhY3F1aXJlZCBpbiB3cml0ZSBtb2RlLg0KPj4gKyAgICAgKi8NCj4+ICsgICAgaWYgKCBv dmVybGFwKHN0YXJ0LCBzaXplLCBQQ0lfQ09NTUFORCwgMikgfHwNCj4+ICsgICAgICAgICAocGRl di0+dnBjaS0+aGVhZGVyLnJvbV9yZWcgJiYNCj4+ICsgICAgICAgICAgb3ZlcmxhcChzdGFydCwg c2l6ZSwgcGRldi0+dnBjaS0+aGVhZGVyLnJvbV9yZWcsIDQpKSApDQo+PiArICAgICAgICByZXR1 cm4gdHJ1ZTsNCj4+ICsNCj4+ICsgICAgcmV0dXJuIGZhbHNlOw0KPj4gK30NCj4+ICsNCj4+ICAv Kg0KPj4gICAqIExvY2FsIHZhcmlhYmxlczoNCj4+ICAgKiBtb2RlOiBDDQo+PiBkaWZmIC0tZ2l0 IGEveGVuL2RyaXZlcnMvdnBjaS9tc2kuYyBiL3hlbi9kcml2ZXJzL3ZwY2kvbXNpLmMNCj4+IGlu ZGV4IDhmMmI1OWU2MWEuLmU3ZDFmOTE2YTAgMTAwNjQ0DQo+PiAtLS0gYS94ZW4vZHJpdmVycy92 cGNpL21zaS5jDQo+PiArKysgYi94ZW4vZHJpdmVycy92cGNpL21zaS5jDQo+PiBAQCAtMTkwLDYg KzE5MCw4IEBAIHN0YXRpYyBpbnQgY2ZfY2hlY2sgaW5pdF9tc2koc3RydWN0IHBjaV9kZXYgKnBk ZXYpDQo+PiAgICAgIHVpbnQxNl90IGNvbnRyb2w7DQo+PiAgICAgIGludCByZXQ7DQo+PiAgDQo+ PiArICAgIEFTU0VSVChyd19pc193cml0ZV9sb2NrZWQoJnBkZXYtPmRvbWFpbi0+dnBjaV9yd2xv Y2spKTsNCj4+ICsNCj4+ICAgICAgaWYgKCAhcG9zICkNCj4+ICAgICAgICAgIHJldHVybiAwOw0K Pj4gIA0KPj4gQEAgLTI2NSw3ICsyNjcsNyBAQCBSRUdJU1RFUl9WUENJX0lOSVQoaW5pdF9tc2ks IFZQQ0lfUFJJT1JJVFlfTE9XKTsNCj4+ICANCj4+ICB2b2lkIHZwY2lfZHVtcF9tc2kodm9pZCkN Cj4+ICB7DQo+PiAtICAgIGNvbnN0IHN0cnVjdCBkb21haW4gKmQ7DQo+PiArICAgIHN0cnVjdCBk b21haW4gKmQ7DQo+PiAgDQo+PiAgICAgIHJjdV9yZWFkX2xvY2soJmRvbWxpc3RfcmVhZF9sb2Nr KTsNCj4+ICAgICAgZm9yX2VhY2hfZG9tYWluICggZCApDQo+PiBAQCAtMjc3LDYgKzI3OSwxNSBA QCB2b2lkIHZwY2lfZHVtcF9tc2kodm9pZCkNCj4+ICANCj4+ICAgICAgICAgIHByaW50aygidlBD SSBNU0kvTVNJLVggZCVkXG4iLCBkLT5kb21haW5faWQpOw0KPj4gIA0KPj4gKyAgICAgICAgaWYg KCAhcmVhZF90cnlsb2NrKCZkLT52cGNpX3J3bG9jaykgKQ0KPj4gKyAgICAgICAgICAgIGNvbnRp bnVlOw0KPj4gKw0KPj4gKyAgICAgICAgaWYgKCAhcGNpZGV2c190cnlsb2NrKCkgKQ0KPj4gKyAg ICAgICAgew0KPj4gKyAgICAgICAgICAgIHJlYWRfdW5sb2NrKCZkLT52cGNpX3J3bG9jayk7DQo+ PiArICAgICAgICAgICAgY29udGludWU7DQo+PiArICAgICAgICB9DQo+PiArDQo+PiAgICAgICAg ICBmb3JfZWFjaF9wZGV2ICggZCwgcGRldiApDQo+PiAgICAgICAgICB7DQo+PiAgICAgICAgICAg ICAgY29uc3Qgc3RydWN0IHZwY2lfbXNpICptc2k7DQo+PiBAQCAtMzE4LDE0ICszMjksMjIgQEAg dm9pZCB2cGNpX2R1bXBfbXNpKHZvaWQpDQo+PiAgICAgICAgICAgICAgICAgICAgICAgKiBob2xk aW5nIHRoZSBsb2NrLg0KPj4gICAgICAgICAgICAgICAgICAgICAgICovDQo+PiAgICAgICAgICAg ICAgICAgICAgICBwcmludGsoInVuYWJsZSB0byBwcmludCBhbGwgTVNJLVggZW50cmllczogJWRc biIsIHJjKTsNCj4+IC0gICAgICAgICAgICAgICAgICAgIHByb2Nlc3NfcGVuZGluZ19zb2Z0aXJx cygpOw0KPj4gLSAgICAgICAgICAgICAgICAgICAgY29udGludWU7DQo+PiArICAgICAgICAgICAg ICAgICAgICBnb3RvIHBkZXZfZG9uZTsNCj4+ICAgICAgICAgICAgICAgICAgfQ0KPj4gICAgICAg ICAgICAgIH0NCj4+ICANCj4+ICAgICAgICAgICAgICBzcGluX3VubG9jaygmcGRldi0+dnBjaS0+ bG9jayk7DQo+PiArIHBkZXZfZG9uZToNCj4+ICsgICAgICAgICAgICBwY2lkZXZzX3VubG9jaygp Ow0KPj4gKyAgICAgICAgICAgIHJlYWRfdW5sb2NrKCZkLT52cGNpX3J3bG9jayk7DQo+PiArDQo+ PiAgICAgICAgICAgICAgcHJvY2Vzc19wZW5kaW5nX3NvZnRpcnFzKCk7DQo+PiArDQo+PiArICAg ICAgICAgICAgcmVhZF9sb2NrKCZkLT52cGNpX3J3bG9jayk7DQo+PiArICAgICAgICAgICAgcGNp ZGV2c19sb2NrKCk7DQo+PiAgICAgICAgICB9DQo+PiArICAgICAgICBwY2lkZXZzX3VubG9jaygp Ow0KPj4gKyAgICAgICAgcmVhZF91bmxvY2soJmQtPnZwY2lfcndsb2NrKTsNCj4+ICAgICAgfQ0K Pj4gICAgICByY3VfcmVhZF91bmxvY2soJmRvbWxpc3RfcmVhZF9sb2NrKTsNCj4+ICB9DQo+PiBk aWZmIC0tZ2l0IGEveGVuL2RyaXZlcnMvdnBjaS9tc2l4LmMgYi94ZW4vZHJpdmVycy92cGNpL21z aXguYw0KPj4gaW5kZXggMjViZGU3NzU4Ni4uYjVhN2RmZGY5YyAxMDA2NDQNCj4+IC0tLSBhL3hl bi9kcml2ZXJzL3ZwY2kvbXNpeC5jDQo+PiArKysgYi94ZW4vZHJpdmVycy92cGNpL21zaXguYw0K Pj4gQEAgLTE0Myw2ICsxNDMsNyBAQCBzdGF0aWMgdm9pZCBjZl9jaGVjayBjb250cm9sX3dyaXRl KA0KPj4gICAgICAgICAgcGNpX2NvbmZfd3JpdGUxNihwZGV2LT5zYmRmLCByZWcsIHZhbCk7DQo+ PiAgfQ0KPj4gIA0KPj4gKy8qIFRoaXMgbXVzdCBob2xkIGRvbWFpbidzIHZwY2lfcndsb2NrIGlu IHdyaXRlIG1vZGUuICovDQo+PiAgc3RhdGljIHN0cnVjdCB2cGNpX21zaXggKm1zaXhfZmluZChj b25zdCBzdHJ1Y3QgZG9tYWluICpkLCB1bnNpZ25lZCBsb25nIGFkZHIpDQo+PiAgew0KPj4gICAg ICBzdHJ1Y3QgdnBjaV9tc2l4ICptc2l4Ow0KPj4gQEAgLTE2Myw3ICsxNjQsMTMgQEAgc3RhdGlj IHN0cnVjdCB2cGNpX21zaXggKm1zaXhfZmluZChjb25zdCBzdHJ1Y3QgZG9tYWluICpkLCB1bnNp Z25lZCBsb25nIGFkZHIpDQo+PiAgDQo+PiAgc3RhdGljIGludCBjZl9jaGVjayBtc2l4X2FjY2Vw dChzdHJ1Y3QgdmNwdSAqdiwgdW5zaWduZWQgbG9uZyBhZGRyKQ0KPj4gIHsNCj4+IC0gICAgcmV0 dXJuICEhbXNpeF9maW5kKHYtPmRvbWFpbiwgYWRkcik7DQo+PiArICAgIGludCByYzsNCj4+ICsN Cj4+ICsgICAgcmVhZF9sb2NrKCZ2LT5kb21haW4tPnZwY2lfcndsb2NrKTsNCj4+ICsgICAgcmMg PSAhIW1zaXhfZmluZCh2LT5kb21haW4sIGFkZHIpOw0KPj4gKyAgICByZWFkX3VubG9jaygmdi0+ ZG9tYWluLT52cGNpX3J3bG9jayk7DQo+PiArDQo+PiArICAgIHJldHVybiByYzsNCj4+ICB9DQo+ PiAgDQo+PiAgc3RhdGljIGJvb2wgYWNjZXNzX2FsbG93ZWQoY29uc3Qgc3RydWN0IHBjaV9kZXYg KnBkZXYsIHVuc2lnbmVkIGxvbmcgYWRkciwNCj4+IEBAIC0zNTgsMjEgKzM2NSwzNCBAQCBzdGF0 aWMgaW50IGFkamFjZW50X3JlYWQoY29uc3Qgc3RydWN0IGRvbWFpbiAqZCwgY29uc3Qgc3RydWN0 IHZwY2lfbXNpeCAqbXNpeCwNCj4+ICBzdGF0aWMgaW50IGNmX2NoZWNrIG1zaXhfcmVhZCgNCj4+ ICAgICAgc3RydWN0IHZjcHUgKnYsIHVuc2lnbmVkIGxvbmcgYWRkciwgdW5zaWduZWQgaW50IGxl biwgdW5zaWduZWQgbG9uZyAqZGF0YSkNCj4+ICB7DQo+PiAtICAgIGNvbnN0IHN0cnVjdCBkb21h aW4gKmQgPSB2LT5kb21haW47DQo+PiAtICAgIHN0cnVjdCB2cGNpX21zaXggKm1zaXggPSBtc2l4 X2ZpbmQoZCwgYWRkcik7DQo+PiArICAgIHN0cnVjdCBkb21haW4gKmQgPSB2LT5kb21haW47DQo+ PiArICAgIHN0cnVjdCB2cGNpX21zaXggKm1zaXg7DQo+PiAgICAgIGNvbnN0IHN0cnVjdCB2cGNp X21zaXhfZW50cnkgKmVudHJ5Ow0KPj4gICAgICB1bnNpZ25lZCBpbnQgb2Zmc2V0Ow0KPj4gIA0K Pj4gICAgICAqZGF0YSA9IH4wdWw7DQo+PiAgDQo+PiArICAgIHJlYWRfbG9jaygmZC0+dnBjaV9y d2xvY2spOw0KPj4gKw0KPj4gKyAgICBtc2l4ID0gbXNpeF9maW5kKGQsIGFkZHIpOw0KPj4gICAg ICBpZiAoICFtc2l4ICkNCj4+ICsgICAgew0KPj4gKyAgICAgICAgcmVhZF91bmxvY2soJmQtPnZw Y2lfcndsb2NrKTsNCj4+ICAgICAgICAgIHJldHVybiBYODZFTVVMX1JFVFJZOw0KPj4gKyAgICB9 DQo+PiAgDQo+PiAgICAgIGlmICggYWRqYWNlbnRfaGFuZGxlKG1zaXgsIGFkZHIpICkNCj4+IC0g ICAgICAgIHJldHVybiBhZGphY2VudF9yZWFkKGQsIG1zaXgsIGFkZHIsIGxlbiwgZGF0YSk7DQo+ PiArICAgIHsNCj4+ICsgICAgICAgIGludCByYyA9IGFkamFjZW50X3JlYWQoZCwgbXNpeCwgYWRk ciwgbGVuLCBkYXRhKTsNCj4+ICsgICAgICAgIHJlYWRfdW5sb2NrKCZkLT52cGNpX3J3bG9jayk7 DQo+PiArICAgICAgICByZXR1cm4gcmM7DQo+PiArICAgIH0NCj4+ICANCj4+ICAgICAgaWYgKCAh YWNjZXNzX2FsbG93ZWQobXNpeC0+cGRldiwgYWRkciwgbGVuKSApDQo+PiArICAgIHsNCj4+ICsg ICAgICAgIHJlYWRfdW5sb2NrKCZkLT52cGNpX3J3bG9jayk7DQo+PiAgICAgICAgICByZXR1cm4g WDg2RU1VTF9PS0FZOw0KPj4gKyAgICB9DQo+PiAgDQo+PiAgICAgIHNwaW5fbG9jaygmbXNpeC0+ cGRldi0+dnBjaS0+bG9jayk7DQo+PiAgICAgIGVudHJ5ID0gZ2V0X2VudHJ5KG1zaXgsIGFkZHIp Ow0KPj4gQEAgLTQwNCw2ICs0MjQsNyBAQCBzdGF0aWMgaW50IGNmX2NoZWNrIG1zaXhfcmVhZCgN Cj4+ICAgICAgICAgIGJyZWFrOw0KPj4gICAgICB9DQo+PiAgICAgIHNwaW5fdW5sb2NrKCZtc2l4 LT5wZGV2LT52cGNpLT5sb2NrKTsNCj4+ICsgICAgcmVhZF91bmxvY2soJmQtPnZwY2lfcndsb2Nr KTsNCj4+ICANCj4+ICAgICAgcmV0dXJuIFg4NkVNVUxfT0tBWTsNCj4+ICB9DQo+PiBAQCAtNDkx LDE5ICs1MTIsMzIgQEAgc3RhdGljIGludCBhZGphY2VudF93cml0ZShjb25zdCBzdHJ1Y3QgZG9t YWluICpkLCBjb25zdCBzdHJ1Y3QgdnBjaV9tc2l4ICptc2l4LA0KPj4gIHN0YXRpYyBpbnQgY2Zf Y2hlY2sgbXNpeF93cml0ZSgNCj4+ICAgICAgc3RydWN0IHZjcHUgKnYsIHVuc2lnbmVkIGxvbmcg YWRkciwgdW5zaWduZWQgaW50IGxlbiwgdW5zaWduZWQgbG9uZyBkYXRhKQ0KPj4gIHsNCj4+IC0g ICAgY29uc3Qgc3RydWN0IGRvbWFpbiAqZCA9IHYtPmRvbWFpbjsNCj4+IC0gICAgc3RydWN0IHZw Y2lfbXNpeCAqbXNpeCA9IG1zaXhfZmluZChkLCBhZGRyKTsNCj4+ICsgICAgc3RydWN0IGRvbWFp biAqZCA9IHYtPmRvbWFpbjsNCj4+ICsgICAgc3RydWN0IHZwY2lfbXNpeCAqbXNpeDsNCj4+ICAg ICAgc3RydWN0IHZwY2lfbXNpeF9lbnRyeSAqZW50cnk7DQo+PiAgICAgIHVuc2lnbmVkIGludCBv ZmZzZXQ7DQo+PiAgDQo+PiArICAgIHJlYWRfbG9jaygmZC0+dnBjaV9yd2xvY2spOw0KPj4gKw0K Pj4gKyAgICBtc2l4ID0gbXNpeF9maW5kKGQsIGFkZHIpOw0KPj4gICAgICBpZiAoICFtc2l4ICkN Cj4+ICsgICAgew0KPj4gKyAgICAgICAgcmVhZF91bmxvY2soJmQtPnZwY2lfcndsb2NrKTsNCj4+ ICAgICAgICAgIHJldHVybiBYODZFTVVMX1JFVFJZOw0KPj4gKyAgICB9DQo+PiAgDQo+PiAgICAg IGlmICggYWRqYWNlbnRfaGFuZGxlKG1zaXgsIGFkZHIpICkNCj4+IC0gICAgICAgIHJldHVybiBh ZGphY2VudF93cml0ZShkLCBtc2l4LCBhZGRyLCBsZW4sIGRhdGEpOw0KPj4gKyAgICB7DQo+PiAr ICAgICAgICBpbnQgcmMgPSBhZGphY2VudF93cml0ZShkLCBtc2l4LCBhZGRyLCBsZW4sIGRhdGEp Ow0KPj4gKyAgICAgICAgcmVhZF91bmxvY2soJmQtPnZwY2lfcndsb2NrKTsNCj4+ICsgICAgICAg IHJldHVybiByYzsNCj4+ICsgICAgfQ0KPj4gIA0KPj4gICAgICBpZiAoICFhY2Nlc3NfYWxsb3dl ZChtc2l4LT5wZGV2LCBhZGRyLCBsZW4pICkNCj4+ICsgICAgew0KPj4gKyAgICAgICAgcmVhZF91 bmxvY2soJmQtPnZwY2lfcndsb2NrKTsNCj4+ICAgICAgICAgIHJldHVybiBYODZFTVVMX09LQVk7 DQo+PiArICAgIH0NCj4+ICANCj4+ICAgICAgc3Bpbl9sb2NrKCZtc2l4LT5wZGV2LT52cGNpLT5s b2NrKTsNCj4+ICAgICAgZW50cnkgPSBnZXRfZW50cnkobXNpeCwgYWRkcik7DQo+PiBAQCAtNTc5 LDYgKzYxMyw3IEBAIHN0YXRpYyBpbnQgY2ZfY2hlY2sgbXNpeF93cml0ZSgNCj4+ICAgICAgICAg IGJyZWFrOw0KPj4gICAgICB9DQo+PiAgICAgIHNwaW5fdW5sb2NrKCZtc2l4LT5wZGV2LT52cGNp LT5sb2NrKTsNCj4+ICsgICAgcmVhZF91bmxvY2soJmQtPnZwY2lfcndsb2NrKTsNCj4+ICANCj4+ ICAgICAgcmV0dXJuIFg4NkVNVUxfT0tBWTsNCj4+ICB9DQo+PiBAQCAtNjY1LDYgKzcwMCw4IEBA IHN0YXRpYyBpbnQgY2ZfY2hlY2sgaW5pdF9tc2l4KHN0cnVjdCBwY2lfZGV2ICpwZGV2KQ0KPj4g ICAgICBzdHJ1Y3QgdnBjaV9tc2l4ICptc2l4Ow0KPj4gICAgICBpbnQgcmM7DQo+PiAgDQo+PiAr ICAgIEFTU0VSVChyd19pc193cml0ZV9sb2NrZWQoJnBkZXYtPmRvbWFpbi0+dnBjaV9yd2xvY2sp KTsNCj4+ICsNCj4+ICAgICAgbXNpeF9vZmZzZXQgPSBwY2lfZmluZF9jYXBfb2Zmc2V0KHBkZXYt PnNlZywgcGRldi0+YnVzLCBzbG90LCBmdW5jLA0KPj4gICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgUENJX0NBUF9JRF9NU0lYKTsNCj4+ICAgICAgaWYgKCAhbXNpeF9vZmZz ZXQgKQ0KPj4gZGlmZiAtLWdpdCBhL3hlbi9kcml2ZXJzL3ZwY2kvdnBjaS5jIGIveGVuL2RyaXZl cnMvdnBjaS92cGNpLmMNCj4+IGluZGV4IDY1MjgwN2E0YTQuLjEyNzAxNzRlNzggMTAwNjQ0DQo+ PiAtLS0gYS94ZW4vZHJpdmVycy92cGNpL3ZwY2kuYw0KPj4gKysrIGIveGVuL2RyaXZlcnMvdnBj aS92cGNpLmMNCj4+IEBAIC0zOCwyMCArMzgsMzIgQEAgZXh0ZXJuIHZwY2lfcmVnaXN0ZXJfaW5p dF90ICpjb25zdCBfX2VuZF92cGNpX2FycmF5W107DQo+PiAgDQo+PiAgdm9pZCB2cGNpX3JlbW92 ZV9kZXZpY2Uoc3RydWN0IHBjaV9kZXYgKnBkZXYpDQo+PiAgew0KPj4gLSAgICBpZiAoICFoYXNf dnBjaShwZGV2LT5kb21haW4pIHx8ICFwZGV2LT52cGNpICkNCj4+ICsgICAgc3RydWN0IHZwY2kg KnZwY2k7DQo+PiArDQo+PiArICAgIGlmICggIWhhc192cGNpKHBkZXYtPmRvbWFpbikgKQ0KPj4g ICAgICAgICAgcmV0dXJuOw0KPj4gIA0KPj4gLSAgICBzcGluX2xvY2soJnBkZXYtPnZwY2ktPmxv Y2spOw0KPj4gKyAgICB3cml0ZV9sb2NrKCZwZGV2LT5kb21haW4tPnZwY2lfcndsb2NrKTsNCj4+ ICsgICAgaWYgKCAhcGRldi0+dnBjaSApDQo+PiArICAgIHsNCj4+ICsgICAgICAgIHdyaXRlX3Vu bG9jaygmcGRldi0+ZG9tYWluLT52cGNpX3J3bG9jayk7DQo+PiArICAgICAgICByZXR1cm47DQo+ PiArICAgIH0NCj4+ICsNCj4+ICsgICAgdnBjaSA9IHBkZXYtPnZwY2k7DQo+PiArICAgIHBkZXYt PnZwY2kgPSBOVUxMOw0KPj4gKyAgICB3cml0ZV91bmxvY2soJnBkZXYtPmRvbWFpbi0+dnBjaV9y d2xvY2spOw0KPj4gKw0KPj4gICAgICB3aGlsZSAoICFsaXN0X2VtcHR5KCZwZGV2LT52cGNpLT5o YW5kbGVycykgKQ0KPj4gICAgICB7DQo+PiAtICAgICAgICBzdHJ1Y3QgdnBjaV9yZWdpc3RlciAq ciA9IGxpc3RfZmlyc3RfZW50cnkoJnBkZXYtPnZwY2ktPmhhbmRsZXJzLA0KPj4gKyAgICAgICAg c3RydWN0IHZwY2lfcmVnaXN0ZXIgKnIgPSBsaXN0X2ZpcnN0X2VudHJ5KCZ2cGNpLT5oYW5kbGVy cywNCj4+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBzdHJ1Y3QgdnBjaV9yZWdpc3RlciwNCj4+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBub2RlKTsNCj4+ICANCj4+ICAgICAgICAgIGxpc3RfZGVs KCZyLT5ub2RlKTsNCj4+ICAgICAgICAgIHhmcmVlKHIpOw0KPj4gICAgICB9DQo+PiAtICAgIHNw aW5fdW5sb2NrKCZwZGV2LT52cGNpLT5sb2NrKTsNCj4+ICsNCj4+ICAgICAgaWYgKCBwZGV2LT52 cGNpLT5tc2l4ICkNCj4+ICAgICAgew0KPj4gICAgICAgICAgdW5zaWduZWQgaW50IGk7DQo+PiBA QCAtNjEsMjkgKzczLDMzIEBAIHZvaWQgdnBjaV9yZW1vdmVfZGV2aWNlKHN0cnVjdCBwY2lfZGV2 ICpwZGV2KQ0KPj4gICAgICAgICAgICAgIGlmICggcGRldi0+dnBjaS0+bXNpeC0+dGFibGVbaV0g KQ0KPj4gICAgICAgICAgICAgICAgICBpb3VubWFwKHBkZXYtPnZwY2ktPm1zaXgtPnRhYmxlW2ld KTsNCj4+ICAgICAgfQ0KPj4gLSAgICB4ZnJlZShwZGV2LT52cGNpLT5tc2l4KTsNCj4+IC0gICAg eGZyZWUocGRldi0+dnBjaS0+bXNpKTsNCj4+IC0gICAgeGZyZWUocGRldi0+dnBjaSk7DQo+PiAt ICAgIHBkZXYtPnZwY2kgPSBOVUxMOw0KPj4gKyAgICB4ZnJlZSh2cGNpLT5tc2l4KTsNCj4+ICsg ICAgeGZyZWUodnBjaS0+bXNpKTsNCj4+ICsgICAgeGZyZWUodnBjaSk7DQo+PiAgfQ0KPj4gIA0K Pj4gIGludCB2cGNpX2FkZF9oYW5kbGVycyhzdHJ1Y3QgcGNpX2RldiAqcGRldikNCj4+ICB7DQo+ PiArICAgIHN0cnVjdCB2cGNpICp2cGNpOw0KPj4gICAgICB1bnNpZ25lZCBpbnQgaTsNCj4+ICAg ICAgaW50IHJjID0gMDsNCj4+ICANCj4+ICAgICAgaWYgKCAhaGFzX3ZwY2kocGRldi0+ZG9tYWlu KSApDQo+PiAgICAgICAgICByZXR1cm4gMDsNCj4+ICANCj4+ICsgICAgdnBjaSA9IHh6YWxsb2Mo c3RydWN0IHZwY2kpOw0KPj4gKyAgICBpZiAoICF2cGNpICkNCj4+ICsgICAgICAgIHJldHVybiAt RU5PTUVNOw0KPj4gKw0KPj4gKyAgICBJTklUX0xJU1RfSEVBRCgmdnBjaS0+aGFuZGxlcnMpOw0K Pj4gKyAgICBzcGluX2xvY2tfaW5pdCgmdnBjaS0+bG9jayk7DQo+PiArDQo+PiArICAgIHdyaXRl X2xvY2soJnBkZXYtPmRvbWFpbi0+dnBjaV9yd2xvY2spOw0KPg0KPiBJIHRoaW5rIHRoZSB1c2Fn ZSBvZiB0aGUgdnBjaSBwZXItZG9tYWluIGxvY2sgaGVyZSBhbmQgaW4NCj4gdnBjaV9yZW1vdmVf ZGV2aWNlKCkgY3JlYXRlIGFuIEFCQkEgZGVhZGxvY2sgc2l0dWF0aW9uIHdpdGggdGhlIHVzYWdl DQo+IG9mIGl0IGluIG1vZGlmeV9iYXJzKCkuDQo+DQo+IEJvdGggdnBjaV9hZGRfaGFuZGxlcnMo KSBhbmQgdnBjaV9yZW1vdmVfZGV2aWNlKCkgZ2V0IGNhbGxlZCB3aXRoIHRoZQ0KPiBwY2lkZXZz IGxvY2sgdGFrZW4sIGFuZCB0YWtlIHRoZSBwZXItZG9tYWluIHZwY2kgbG9jayBhZnRlcndhcmRz LA0KPiB3aGlsZSBtb2RpZnlfYmFycygpIGRvZXMgdGhlIGludmVyc2UgbG9ja2luZywgZ2V0cyBj YWxsZWQgd2l0aCB0aGUNCj4gcGVyLWRvbWFpbiB2cGNpIGxvY2sgdGFrZW4gYW5kIHRoZW4gdGFr ZSB0aGUgcGNpZGV2cyBsb2NrIGluc2lkZSB0aGUNCj4gZnVuY3Rpb24uDQoNCllvdSBzdWdnZXN0 ZWQgdG8gdXNlIHNlcGFyYXRlIHBlci1kb21haW4gcGRldl9saXN0IGxvY2sgaW4NCm1vZGlmeV9i YXJzLiBMb29rcyBsaWtlIHRoaXMgY2FuIGhlbHAgd2l0aCB0aGUgQUJCQSBkZWFkbG9jay4NCg0K Pg0KPj4gKw0KPj4gICAgICAvKiBXZSBzaG91bGQgbm90IGdldCBoZXJlIHR3aWNlIGZvciB0aGUg c2FtZSBkZXZpY2UuICovDQo+PiAgICAgIEFTU0VSVCghcGRldi0+dnBjaSk7DQo+PiAgDQo+PiAt ICAgIHBkZXYtPnZwY2kgPSB4emFsbG9jKHN0cnVjdCB2cGNpKTsNCj4+IC0gICAgaWYgKCAhcGRl di0+dnBjaSApDQo+PiAtICAgICAgICByZXR1cm4gLUVOT01FTTsNCj4+IC0NCj4+IC0gICAgSU5J VF9MSVNUX0hFQUQoJnBkZXYtPnZwY2ktPmhhbmRsZXJzKTsNCj4+IC0gICAgc3Bpbl9sb2NrX2lu aXQoJnBkZXYtPnZwY2ktPmxvY2spOw0KPj4gKyAgICBwZGV2LT52cGNpID0gdnBjaTsNCj4+ICAN Cj4+ICAgICAgZm9yICggaSA9IDA7IGkgPCBOVU1fVlBDSV9JTklUOyBpKysgKQ0KPj4gICAgICB7 DQo+PiBAQCAtOTEsNiArMTA3LDcgQEAgaW50IHZwY2lfYWRkX2hhbmRsZXJzKHN0cnVjdCBwY2lf ZGV2ICpwZGV2KQ0KPj4gICAgICAgICAgaWYgKCByYyApDQo+PiAgICAgICAgICAgICAgYnJlYWs7 DQo+PiAgICAgIH0NCj4+ICsgICAgd3JpdGVfdW5sb2NrKCZwZGV2LT5kb21haW4tPnZwY2lfcnds b2NrKTsNCj4+ICANCj4+ICAgICAgaWYgKCByYyApDQo+PiAgICAgICAgICB2cGNpX3JlbW92ZV9k ZXZpY2UocGRldik7DQo+PiBAQCAtMTM5LDYgKzE1Niw3IEBAIHVpbnQzMl90IGNmX2NoZWNrIHZw Y2lfaHdfcmVhZDMyKA0KPj4gICAgICByZXR1cm4gcGNpX2NvbmZfcmVhZDMyKHBkZXYtPnNiZGYs IHJlZyk7DQo+PiAgfQ0KPj4gIA0KPj4gKy8qIFRoaXMgbXVzdCBob2xkIGRvbWFpbidzIHZwY2lf cndsb2NrIGluIHdyaXRlIG1vZGUuICovDQo+PiAgaW50IHZwY2lfYWRkX3JlZ2lzdGVyKHN0cnVj dCB2cGNpICp2cGNpLCB2cGNpX3JlYWRfdCAqcmVhZF9oYW5kbGVyLA0KPj4gICAgICAgICAgICAg ICAgICAgICAgICB2cGNpX3dyaXRlX3QgKndyaXRlX2hhbmRsZXIsIHVuc2lnbmVkIGludCBvZmZz ZXQsDQo+PiAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGludCBzaXplLCB2b2lkICpk YXRhKQ0KPj4gQEAgLTE2Miw4ICsxODAsNiBAQCBpbnQgdnBjaV9hZGRfcmVnaXN0ZXIoc3RydWN0 IHZwY2kgKnZwY2ksIHZwY2lfcmVhZF90ICpyZWFkX2hhbmRsZXIsDQo+PiAgICAgIHItPm9mZnNl dCA9IG9mZnNldDsNCj4+ICAgICAgci0+cHJpdmF0ZSA9IGRhdGE7DQo+PiAgDQo+PiAtICAgIHNw aW5fbG9jaygmdnBjaS0+bG9jayk7DQo+DQo+IElmIHlvdSByZW1vdmUgdGhlIGxvY2sgaGVyZSB3 ZSBuZWVkIHRvIGFzc2VydCB0aGF0IHRoZSBwZXItZG9tYWluIHZwY2kNCj4gbG9jayBpcyB0YWtl biBpbiB3cml0ZSBtb2RlLg0KDQpZZXAsIGFzc2VydCB3aWxsIGJlIGJldHRlciB0aGFuIGNvbW1l bnQgYWJvdmUuDQoNCj4NCj4+IC0NCj4+ICAgICAgLyogVGhlIGxpc3Qgb2YgaGFuZGxlcnMgbXVz dCBiZSBrZXB0IHNvcnRlZCBhdCBhbGwgdGltZXMuICovDQo+PiAgICAgIGxpc3RfZm9yX2VhY2gg KCBwcmV2LCAmdnBjaS0+aGFuZGxlcnMgKQ0KPj4gICAgICB7DQo+PiBAQCAtMTc1LDI1ICsxOTEs MjMgQEAgaW50IHZwY2lfYWRkX3JlZ2lzdGVyKHN0cnVjdCB2cGNpICp2cGNpLCB2cGNpX3JlYWRf dCAqcmVhZF9oYW5kbGVyLA0KPj4gICAgICAgICAgICAgIGJyZWFrOw0KPj4gICAgICAgICAgaWYg KCBjbXAgPT0gMCApDQo+PiAgICAgICAgICB7DQo+PiAtICAgICAgICAgICAgc3Bpbl91bmxvY2so JnZwY2ktPmxvY2spOw0KPj4gICAgICAgICAgICAgIHhmcmVlKHIpOw0KPj4gICAgICAgICAgICAg IHJldHVybiAtRUVYSVNUOw0KPj4gICAgICAgICAgfQ0KPj4gICAgICB9DQo+PiAgDQo+PiAgICAg IGxpc3RfYWRkX3RhaWwoJnItPm5vZGUsIHByZXYpOw0KPj4gLSAgICBzcGluX3VubG9jaygmdnBj aS0+bG9jayk7DQo+PiAgDQo+PiAgICAgIHJldHVybiAwOw0KPj4gIH0NCj4+ICANCj4+ICsvKiBU aGlzIG11c3QgaG9sZCBkb21haW4ncyB2cGNpX3J3bG9jayBpbiB3cml0ZSBtb2RlLiAqLw0KPj4g IGludCB2cGNpX3JlbW92ZV9yZWdpc3RlcihzdHJ1Y3QgdnBjaSAqdnBjaSwgdW5zaWduZWQgaW50 IG9mZnNldCwNCj4+ICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgaW50IHNpemUp DQo+PiAgew0KPj4gICAgICBjb25zdCBzdHJ1Y3QgdnBjaV9yZWdpc3RlciByID0geyAub2Zmc2V0 ID0gb2Zmc2V0LCAuc2l6ZSA9IHNpemUgfTsNCj4+ICAgICAgc3RydWN0IHZwY2lfcmVnaXN0ZXIg KnJtOw0KPj4gIA0KPj4gLSAgICBzcGluX2xvY2soJnZwY2ktPmxvY2spOw0KPj4gICAgICBsaXN0 X2Zvcl9lYWNoX2VudHJ5ICggcm0sICZ2cGNpLT5oYW5kbGVycywgbm9kZSApDQo+PiAgICAgIHsN Cj4+ICAgICAgICAgIGludCBjbXAgPSB2cGNpX3JlZ2lzdGVyX2NtcCgmciwgcm0pOw0KPj4gQEAg LTIwNSwxNCArMjE5LDEyIEBAIGludCB2cGNpX3JlbW92ZV9yZWdpc3RlcihzdHJ1Y3QgdnBjaSAq dnBjaSwgdW5zaWduZWQgaW50IG9mZnNldCwNCj4+ICAgICAgICAgIGlmICggIWNtcCAmJiBybS0+ b2Zmc2V0ID09IG9mZnNldCAmJiBybS0+c2l6ZSA9PSBzaXplICkNCj4+ICAgICAgICAgIHsNCj4+ ICAgICAgICAgICAgICBsaXN0X2RlbCgmcm0tPm5vZGUpOw0KPj4gLSAgICAgICAgICAgIHNwaW5f dW5sb2NrKCZ2cGNpLT5sb2NrKTsNCj4+ICAgICAgICAgICAgICB4ZnJlZShybSk7DQo+PiAgICAg ICAgICAgICAgcmV0dXJuIDA7DQo+PiAgICAgICAgICB9DQo+PiAgICAgICAgICBpZiAoIGNtcCA8 PSAwICkNCj4+ICAgICAgICAgICAgICBicmVhazsNCj4+ICAgICAgfQ0KPj4gLSAgICBzcGluX3Vu bG9jaygmdnBjaS0+bG9jayk7DQo+DQo+IFNhbWUgaGVyZSBhYm91dCB0aGUgcGVyLWRvbWFpbiBs b2NrIGJlaW5nIHRha2VuLg0KPg0KPj4gIA0KPj4gICAgICByZXR1cm4gLUVOT0VOVDsNCj4+ICB9 DQo+PiBAQCAtMzIwLDcgKzMzMiw3IEBAIHN0YXRpYyB1aW50MzJfdCBtZXJnZV9yZXN1bHQodWlu dDMyX3QgZGF0YSwgdWludDMyX3QgbmV3LCB1bnNpZ25lZCBpbnQgc2l6ZSwNCj4+ICANCj4+ICB1 aW50MzJfdCB2cGNpX3JlYWQocGNpX3NiZGZfdCBzYmRmLCB1bnNpZ25lZCBpbnQgcmVnLCB1bnNp Z25lZCBpbnQgc2l6ZSkNCj4+ICB7DQo+PiAtICAgIGNvbnN0IHN0cnVjdCBkb21haW4gKmQgPSBj dXJyZW50LT5kb21haW47DQo+PiArICAgIHN0cnVjdCBkb21haW4gKmQgPSBjdXJyZW50LT5kb21h aW47DQo+PiAgICAgIGNvbnN0IHN0cnVjdCBwY2lfZGV2ICpwZGV2Ow0KPj4gICAgICBjb25zdCBz dHJ1Y3QgdnBjaV9yZWdpc3RlciAqcjsNCj4+ICAgICAgdW5zaWduZWQgaW50IGRhdGFfb2Zmc2V0 ID0gMDsNCj4+IEBAIC0zMzMsMTAgKzM0NSwxOCBAQCB1aW50MzJfdCB2cGNpX3JlYWQocGNpX3Ni ZGZfdCBzYmRmLCB1bnNpZ25lZCBpbnQgcmVnLCB1bnNpZ25lZCBpbnQgc2l6ZSkNCj4+ICAgICAg fQ0KPj4gIA0KPj4gICAgICAvKiBGaW5kIHRoZSBQQ0kgZGV2IG1hdGNoaW5nIHRoZSBhZGRyZXNz LiAqLw0KPj4gKyAgICBwY2lkZXZzX2xvY2soKTsNCj4+ICAgICAgcGRldiA9IHBjaV9nZXRfcGRl dihkLCBzYmRmKTsNCj4+IC0gICAgaWYgKCAhcGRldiB8fCAhcGRldi0+dnBjaSApDQo+PiArICAg IHBjaWRldnNfdW5sb2NrKCk7DQo+DQo+IEkgdGhpbmsgaXQncyB3b3J0aCBsb29raW5nIGludG8g ZXhwYW5kaW5nIHRoZSBwZXItZG9tYWluIHZwY2ktbG9jayB0bw0KPiBhIHBkZXZzIGxvY2sgb3Ig c2ltaWxhciBpbiBvcmRlciB0byBwcm90ZWN0IHRoZSBwZGV2X2xpc3QgYWxzbyBpZg0KPiBwb3Nz aWJsZS4gIFNvIHRoYXQgd2UgY2FuIGF2b2lkIHRha2luZyB0aGUgcGNpZGV2cyBsb2NrIGhlcmUu DQoNCkFncmVlDQoNCg0KLS0gDQpXQlIsIFZvbG9keW15cg== From xen-devel-bounces@lists.xenproject.org Wed Jun 21 22:13:40 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 22:13:40 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553200.863618 (Exim 4.92) (envelope-from ) id 1qC64w-0000iH-Ta; Wed, 21 Jun 2023 22:13:30 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553200.863618; Wed, 21 Jun 2023 22:13:30 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC64w-0000iA-Qj; Wed, 21 Jun 2023 22:13:30 +0000 Received: by outflank-mailman (input) for mailman id 553200; Wed, 21 Jun 2023 22:13:29 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC64v-0000i4-DU for xen-devel@lists.xenproject.org; Wed, 21 Jun 2023 22:13:29 +0000 Received: from mx0a-0039f301.pphosted.com (mx0a-0039f301.pphosted.com [148.163.133.242]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id d80d8089-1080-11ee-b237-6b7b168915f2; Thu, 22 Jun 2023 00:13:27 +0200 (CEST) Received: from pps.filterd (m0174676.ppops.net [127.0.0.1]) by mx0a-0039f301.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 35LGGD8V022824; Wed, 21 Jun 2023 22:11:36 GMT Received: from eur02-am0-obe.outbound.protection.outlook.com (mail-am0eur02lp2237.outbound.protection.outlook.com [104.47.11.237]) by mx0a-0039f301.pphosted.com (PPS) with ESMTPS id 3rbjagwfwq-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 21 Jun 2023 22:11:36 +0000 Received: from AM0PR03MB3699.eurprd03.prod.outlook.com (2603:10a6:208:4b::31) by PAWPR03MB9761.eurprd03.prod.outlook.com (2603:10a6:102:2e4::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.23; Wed, 21 Jun 2023 22:11:32 +0000 Received: from AM0PR03MB3699.eurprd03.prod.outlook.com ([fe80::3afc:a0ce:1e52:54]) by AM0PR03MB3699.eurprd03.prod.outlook.com ([fe80::3afc:a0ce:1e52:54%7]) with mapi id 15.20.6521.023; Wed, 21 Jun 2023 22:11:32 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: d80d8089-1080-11ee-b237-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=iRShdsX+nLVa31+9OcEPtbiB5Qrpe//Mc5CWczfXXKv/R8KxgfcL+PWU4iez7Oa3D8PVq5vX3IDER16UdHkyS1tFxPjjW3CGnq2gVj0vYD5Rjf2lN7+j6jUY3jTU7xgwlhpnZ0Vu6L+CNBtgh7PCV36YA9GvXQ8FNl5X4P6EkQHeEBV6/CmlzfLhZSIxbAboxGtD9ghGrsqJOqo8ogAgnLIaT9S/6vp0hiOGFWLMearLxfYmrBZ1RrH9Dho1zf0JeeQu61hnt8seGgBxWz0o+SeQqaeaq4RDIwailY6YuV7hliigr5lKADJfi+H6VDODV8/wJH7oJFHiHTQiubKzNQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=A6NkDdED+KCPwQTnWsRpLa6snzAHE0PLji6rM/7j8oA=; b=H4PMKImk1Vk5WGZVYM6lMrSC7uP0EBfewkqsfUk9wCZsl8WheDJWdPNdfky0UeWByC06ZNtiTDx1OegWTC81eN9bLOwtecOPw+4sE16sJsDWU+JCiiWrZtI7AwgcODOyvTJC6WXcIeIKbDhe8OIARYFNmn/KrMuT/2+dx9QIFolEHg1pPDCWppcp2mTiM031NgmWGSPNbFSr2O5ZyBcY/2ZFXBAlLHNWBUBFP7h+HV07kB3Gcbgg1y/M335ym8jHKS62FuBUBFAcBfBf7fOR/+5J+/VRVPUVXn/gxlEnrPNN+Vdy9dY6e9KN1D8f+Ckce1OtcbwOwkes90yPDAC/yw== 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 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=epam.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=A6NkDdED+KCPwQTnWsRpLa6snzAHE0PLji6rM/7j8oA=; b=roWgg+VySgYx+zXsQElmU6YA/tmjS6nMMvVxPVEScMt8aP/t5uhJ8MSerWFtQP68m8W8Tikb6+iX0fINTElWKYyEpzTYrrwtkJfQIuKNpoNW/6FeG445WLRymQxrkTEh7dHtxKSh8nVDacaBKvSsxPWjNUmpXw8DerCxRrwg6FIZKqGWb65iSyfHBpHb5Tws+iTGVepsOGRcqi9vEhZRCbmgFARw/Dl4XOz/j8Qd4FF2oyRo4Tq22C1/H5URFi1hGf8A6m6Gy/stAwiGCx7zfyxOiwX5Kfvo/IGZPZDOowU0ytnWQS+nnGO6Cwk76FrULLbTvnXliZVyucCUHwYvlg== From: Volodymyr Babchuk To: Jan Beulich CC: "xen-devel@lists.xenproject.org" , Andrew Cooper , =?iso-8859-1?Q?Roger_Pau_Monn=E9?= , Wei Liu , George Dunlap , Julien Grall , Stefano Stabellini , Paul Durrant , Bertrand Marquis , Stewart Hildebrand Subject: Re: [PATCH v7 00/12] PCI devices passthrough on Arm, part 3 Thread-Topic: [PATCH v7 00/12] PCI devices passthrough on Arm, part 3 Thread-Index: AQHZneJYJeyWMREaaUSf/027X0QuCq+LHuyAgAB+64CAACzJAIAKEyeA Date: Wed, 21 Jun 2023 22:11:32 +0000 Message-ID: <87v8fgo48c.fsf@epam.com> References: <20230613103159.524763-1-volodymyr_babchuk@epam.com> <875y7p9ia2.fsf@epam.com> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: user-agent: mu4e 1.8.9; emacs 28.2 x-ms-publictraffictype: Email x-ms-traffictypediagnostic: AM0PR03MB3699:EE_|PAWPR03MB9761:EE_ x-ms-office365-filtering-correlation-id: 48ec1c92-e47d-485c-25fb-08db72a4788f x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: C/2Wb1SPQ3vICeG4ltv2QmdtrxHKmvK5HePRHvcC27Wajc6HhqSM//i9hA/pkG8gZSyGzy4G7pDNgb3/SRKvldBDyOPr+uZbeQ6Fa2TAPGhRvc8pIj8X4ThfV6WIj/GzEw2FSY498Ci6nxfVJ9i06Ac6OMmQQYfjM0p6TifhhxaNaMD93WNFiK8l1r6YtP7UYd25vtY3iKIom2f6Reoh7KYCkl6eXbmKFgV9z4UdQeEoc+SvnkBD7uSNIVEQyzK5PzzRLBoxuWTnpyX24ZlhuSHRbsJ54IzeSymcm2Zf0KHUOWIc6dim1y026pmcLHqOE0+9BHqFVfaxzsfHfIoMIgYkRcI1Z17FaaZRO+Wl2cKbMWjjeGaq7mPvqG/oGyMHMj49BkqbYS1mbUHcd0NO8zPeVGsi+sN68Gitnh9pN0aJSjhXVU3CHYxS/7RKkZsRDXBiXowYYE4y2NgqHaJukmEG//6xRsOJdKiup8SdE1WGm690su3aFFtC8sAdl9egKjqoPt+JpdjD1Z5p3TjoTQyxemAksh2uGzasa1x7zpN1SJeyZrKSHsTikGF5EdDl4d49HcvgAPe870jm+7p68ECFUtXE19+4whL2w72cgxo= x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM0PR03MB3699.eurprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(366004)(346002)(396003)(39860400002)(136003)(376002)(451199021)(76116006)(91956017)(66946007)(66476007)(66556008)(66446008)(64756008)(186003)(122000001)(6916009)(6512007)(2616005)(38100700002)(55236004)(53546011)(966005)(38070700005)(6506007)(26005)(83380400001)(86362001)(478600001)(54906003)(36756003)(6486002)(71200400001)(316002)(2906002)(8936002)(8676002)(5660300002)(7416002)(4326008)(41300700001);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?iso-8859-1?Q?IIigvZolgaEAh+Ofp+hZJz7wM6sCzehrYglGsoavMNva3d00KZsb6k5oFF?= =?iso-8859-1?Q?g3ZIW4NrZAaIyiqsNuJ9AH+UVEk0t/pYGgyvk7kWmhYXthyGARzk4siIxR?= =?iso-8859-1?Q?8b5qJts15dygdAcFJuhhvdbDn6iMAYjpjaJPRRtIVBjTW3qrTSUGpzQ+y2?= =?iso-8859-1?Q?ca3Is3n3OYN9Lcqwd8O2KLz8YpggOmLVqZBLBD04VT48vQUFoIPLgGNAzX?= =?iso-8859-1?Q?2U2bdkJly6dXDOzPMHoPujw37xmEOoDhvnfzOu56Zvu0KGXR1KM0gYcmLK?= =?iso-8859-1?Q?dWnUBnSvR3DaG09QzQNffNKA8Uxs/lCeAlrBBSoswfg2mDIw9aAJyw4ZAQ?= =?iso-8859-1?Q?gSVpv3PxmLyqJmYI0j+KHTQaqJ7nQZpxxm0vnyWR7//k0/qzXq6sCI4u7Q?= =?iso-8859-1?Q?vzv0O7N/MSixOY1vcldXMYS4/MigtuROVwDZvRw41uOmrFMWy15cT/3f4u?= =?iso-8859-1?Q?H60tAoTDHxJD7tpjFgEq2WY/BX0nhHGHRq3smILbw7D1kiuY6TbUlnzFp8?= =?iso-8859-1?Q?P87yeU8xEB9LKjl41H/5J4E+DcbTDwRDNcnt+zPZ53sHwlYFkUJep82Lf4?= =?iso-8859-1?Q?P12t9V2k74R0iif+DIni6ulM8b262AjQBy8s9UIFA+77DlpaYp+dt7rvol?= =?iso-8859-1?Q?VrUWlfyAvQRTddddTB+Y0hqIqSvC+okAgUlJ2oWyo+6nehomVZnZCmNtOS?= =?iso-8859-1?Q?5NcriBQZTOqaDGruySc5xtpeZdZsZoQ9gb7nKH28P5jTMGTGFfk/dbpTDS?= =?iso-8859-1?Q?Z9MH1jiWt3CoTRJW3EFWNwBeot5NgBA3325ffdP8PkrN0AwGJp9fv2JHaH?= =?iso-8859-1?Q?W9mbbylzK8u1E8Ke9XBdTLREt4HXRA8dRJ4hiu+0Bfv4et3eVTFkJo5UYx?= =?iso-8859-1?Q?Y2Uz8dWzx8lDe3Zv6gssYIIhgz2ZpjuhMcpjja4a+kPbtgcyBK+i8HGjxh?= =?iso-8859-1?Q?drYmGdPqwkY8XrDoNsZ7isAnzV5hE1cPAi8Nq8mZ+msGQq82v1eaXjtop1?= =?iso-8859-1?Q?IKvrowM6WxofaclUaNJpYL3xwEqLk3vfNLEwuUFsva96dugCAnzF7RmaW9?= =?iso-8859-1?Q?7anL/CxJSKpZEu+/NDp+UArEEP6dDNXOe7PX0fKj5ZdESeesjxET5k7zVd?= =?iso-8859-1?Q?rm8CxGMR0E3Q2bnM7szKcJcQkFDmrX8RQKB0zAjU3DasUji+NUBiVnq8vf?= =?iso-8859-1?Q?kS06lEegSN5kYsKqYjKd50Y8QvIPedrKkV0pKJj7qiOIEibzlB2Oey6feV?= =?iso-8859-1?Q?/tMItHhjVU9398AnhkmHSrgNe49b0vO7ycImPK08/RzL7VOQZICffBwIYw?= =?iso-8859-1?Q?YW9FtXXkdrbHoV8GdL6mpwkS/sjFdVnzUgcQkBxOPtTYO9OmS8jQJ1Rus2?= =?iso-8859-1?Q?Gl9IEuDn8RPNrvOiuq8lcddpbR7uJaCvh9WIh4R485grJq9yjhulwzdkSL?= =?iso-8859-1?Q?rWZa1lXxJK680L41YXZze0+3mIvxpBjHvzZM5A+WBVzWYO8oNNUg8R51mR?= =?iso-8859-1?Q?P2OcSpIdybzOxBr9c/i7y+KPEa1rZHUks1xDs3uWNp4de9yKR5v4DBKuHI?= =?iso-8859-1?Q?3bnn/XPLR+BrMTJW3h9RstWh6Wlt4lJbO3qUImH8lIgBSx/p4Zs7Qb+C2z?= =?iso-8859-1?Q?v7m9OOPuLdTbe5XDD51kR5GehkHRTN3tN1VzvT5AooeAFP/+VwjtwHeA?= =?iso-8859-1?Q?=3D=3D?= Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-OriginatorOrg: epam.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: AM0PR03MB3699.eurprd03.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 48ec1c92-e47d-485c-25fb-08db72a4788f X-MS-Exchange-CrossTenant-originalarrivaltime: 21 Jun 2023 22:11:32.5559 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: b41b72d0-4e9f-4c26-8a69-f949f367c91d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: 4XvjBYJo1xXDRlYFxLQIxIFQNSTKePfEL8/99Tv+NWncBpGgick36T0dbXj76auZrYNlOuZxuAnW5s7UMyWEsm7wbMV4KoZY085vCNHszvU= X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAWPR03MB9761 X-Proofpoint-GUID: XGovigD9KrEWz0epiRQX7fkBfCd1qOHW X-Proofpoint-ORIG-GUID: XGovigD9KrEWz0epiRQX7fkBfCd1qOHW X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.254,Aquarius:18.0.957,Hydra:6.0.591,FMLib:17.11.176.26 definitions=2023-06-21_12,2023-06-16_01,2023-05-22_02 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 lowpriorityscore=0 spamscore=0 bulkscore=0 adultscore=0 mlxscore=0 malwarescore=0 impostorscore=0 priorityscore=1501 clxscore=1015 mlxlogscore=475 suspectscore=0 phishscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2305260000 definitions=main-2306210186 Hi Jan, Jan Beulich writes: > On 15.06.2023 11:39, Volodymyr Babchuk wrote: >> Stewart Hildebrand writes: >>> On 6/13/23 06:32, Volodymyr Babchuk wrote: >>>> Hello, >>>> >>>> This is another another version of vPCI rework (previous one can be >>>> found at [1]). The biggest change is how vPCI locking is done. This >>>> series uses per-domain vPCI rwlock. >>>> >>>> Note that this series does not include my work on reference counting >>>> for PCI devices because this counting does not resolve isses we are >>>> having for vPCI. While it is (maybe) nice to have PCI refcounting, it >>>> does not moves us towards PCI on ARM. >>>> >>>> >>>> [1] >>>> https://urldefense.com/v3/__https://lore.kernel.org/all/20220204063459= .680961-1-andr2000@gmail.com/__;!!GF_29dbcQIUBPA!0BUqPos1zFKUoPwbKLLwKItNgB= VPaBgxmH1Y6zXpms2bngrlWrzB-qMNvIaiAy2WSWMa93UrlvRi0ijYP8X4Ymx07GXYPO1W$ >>>> [lore[.]kernel[.]org] >>> >>> Thanks for sending this! >>> >>> Should this be v8? I see v7 at [2]. >>=20 >> Oops, my bad.=20 >>=20 >>> I had to rewind my xen.git back to 67c28bfc5245 for this series to appl= y cleanly (just before ee045f3a4a6d "vpci/header: cope with devices not hav= ing vpci allocated"). >>=20 >> I rebased this series onto staging about two weeks ago. Looks like >> there was new changes into the PCI code after that. >>=20 >> Should I send a new, real v8 which is rebased onto current staging, or >> we'll wait for review for the current set of patches? > > Please send a version which, at least at the time of posting, actually > applies. Taking into account Stewart's observation on the version > number makes it even more desirable to have a re-post. I am terribly sorry about version mishmash. But Roger made valuable comments for the first patch already. So I'll post the updated version with an additional lock and other fixes. Should it be v8 or v9 in that case? --=20 WBR, Volodymyr= From xen-devel-bounces@lists.xenproject.org Wed Jun 21 23:00:44 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 23:00:44 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553205.863628 (Exim 4.92) (envelope-from ) id 1qC6oX-000674-Du; Wed, 21 Jun 2023 23:00:37 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553205.863628; Wed, 21 Jun 2023 23:00:37 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC6oX-00066x-Aa; Wed, 21 Jun 2023 23:00:37 +0000 Received: by outflank-mailman (input) for mailman id 553205; Wed, 21 Jun 2023 23:00:35 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC6oV-00066n-49; Wed, 21 Jun 2023 23:00:35 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC6oU-00059k-MN; Wed, 21 Jun 2023 23:00:34 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC6oU-0003wK-9D; Wed, 21 Jun 2023 23:00:34 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qC6oU-000689-8j; Wed, 21 Jun 2023 23:00:34 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=vYJUiSjGfCHE+UsT0547j6hfxTmwEbozZHQZVSTI/zg=; b=4JE3ct+REd+5EDjUwnuWaaM1LN 2IWBntt47EXJiz6rFlJEpLVsAcbNmQ2Q5X7Ypco3GhIeVOR+AQvc+SeAndkVcS9QJh/oIHwAssS9V Rdc0TrOMgOaYO9ejN/0vkqpJRSp8eNkpazkyRIHH1S3BM1FbcLmW/dx2mIL+PwogN6kI=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [linux-5.4 test] 181533: trouble: blocked/broken/fail/pass X-Osstest-Failures: linux-5.4:build-armhf::broken:regression linux-5.4:build-armhf:host-install(4):broken:regression linux-5.4:test-amd64-i386-freebsd10-amd64:xen-install:fail:heisenbug linux-5.4:test-amd64-i386-pair:xen-install/src_host:fail:heisenbug linux-5.4:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:xen-install:fail:heisenbug linux-5.4:test-arm64-arm64-xl:xen-boot:fail:heisenbug linux-5.4:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:debian-hvm-install:fail:heisenbug linux-5.4:build-armhf-libvirt:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-examine:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-xl:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking linux-5.4:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking linux-5.4:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-amd64-xl-qcow2:guest-start/debian.repeat:fail:nonblocking linux-5.4:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking linux-5.4:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking linux-5.4:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking linux-5.4:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: linux=61a2f83e4762ee0c766f86944e612305f5888bcb X-Osstest-Versions-That: linux=f568a20f058fa1e37069cff4aac4187c1650a0e9 From: osstest service owner Date: Wed, 21 Jun 2023 23:00:34 +0000 flight 181533 linux-5.4 real [real] http://logs.test-lab.xenproject.org/osstest/logs/181533/ Failures and problems with tests :-( Tests which did not succeed and are blocking, including tests which could not be run: build-armhf broken build-armhf 4 host-install(4) broken REGR. vs. 181363 Tests which are failing intermittently (not blocking): test-amd64-i386-freebsd10-amd64 7 xen-install fail in 181525 pass in 181533 test-amd64-i386-pair 10 xen-install/src_host fail in 181525 pass in 181533 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 7 xen-install fail pass in 181525 test-arm64-arm64-xl 8 xen-boot fail pass in 181525 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm 12 debian-hvm-install fail pass in 181525 Tests which did not succeed, but are not blocking: build-armhf-libvirt 1 build-check(1) blocked n/a test-armhf-armhf-examine 1 build-check(1) blocked n/a test-armhf-armhf-libvirt 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-qcow2 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-raw 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a test-armhf-armhf-xl-arndale 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit1 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-multivcpu 1 build-check(1) blocked n/a test-armhf-armhf-xl-rtds 1 build-check(1) blocked n/a test-armhf-armhf-xl-vhd 1 build-check(1) blocked n/a test-arm64-arm64-xl 15 migrate-support-check fail in 181525 never pass test-arm64-arm64-xl 16 saverestore-support-check fail in 181525 never pass test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 181363 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop fail like 181363 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop fail like 181363 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 181363 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 181363 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 181363 test-amd64-amd64-xl-qcow2 21 guest-start/debian.repeat fail like 181363 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop fail like 181363 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop fail like 181363 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 181363 test-amd64-i386-xl-pvshim 14 guest-start fail never pass test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-i386-libvirt 15 migrate-support-check fail never pass test-amd64-i386-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-amd64-i386-libvirt-raw 14 migrate-support-check fail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass version targeted for testing: linux 61a2f83e4762ee0c766f86944e612305f5888bcb baseline version: linux f568a20f058fa1e37069cff4aac4187c1650a0e9 Last test of basis 181363 2023-06-10 15:39:59 Z 11 days Testing same since 181425 2023-06-14 10:50:49 Z 7 days 13 attempts ------------------------------------------------------------ People who touched revisions under test: Ai Chao Alan Stern Alex Deucher Alexander Sverdlin Arnd Bergmann Bartosz Golaszewski Ben Hutchings Chia-I Wu Chris Paterson (CIP) David Jander David S. Miller David Sterba Dmitry Torokhov Eric Dumazet Fedor Pchelkin Florian Westphal Greg Kroah-Hartman Guenter Roeck Gustavo A. R. Silva Hangyu Hua Harshit Mogalapalli Ilya Dryomov Ismael Ferreras Morezuelas JaimeLiao Jakub Kicinski Jamal Hadi Salim Jens Axboe Jiri Slaby (SUSE) Jon Hunter Josef Bacik Jozsef Kadlecsik Kuniyuki Iwashima Linus Walleij Linux Kernel Functional Testing Luiz Augusto von Dentz Marc Kleine-Budde Mark Brown Martin Hundebøll Maxime Ripard Michael Chan Min Li Miquel Raynal Oleksij Rempel Pablo Neira Ayuso Paolo Abeni Paulo Alcantara (SUSE) Paulo Alcantara Qingfang DENG Randy Dunlap RenHai Rishabh Bhatnagar Ruihan Li Sasha Levin Shuah Khan Simon Wunderlich Somnath Kotur Stefan Ghinea Stephan Gerhold Steve French Sudip Mukherjee Sungwoo Kim Sven Eckelmann Takashi Iwai Tejun Heo Theodore Ts'o Tijs Van Buggenhout Uwe Kleine-König Ville Syrjälä Vladislav Efanov Wolfram Sang Xiubo Li Ying Hsu YouChing Lin Zixuan Fu jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf broken build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt blocked build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl fail test-armhf-armhf-xl blocked test-amd64-i386-xl pass test-amd64-coresched-i386-xl pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm fail test-amd64-i386-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-i386-xl-qemuu-debianhvm-i386-xsm fail test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-i386-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-i386-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-i386-qemut-rhel6hvm-amd pass test-amd64-i386-qemuu-rhel6hvm-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-i386-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-freebsd10-amd64 pass test-amd64-amd64-qemuu-freebsd11-amd64 pass test-amd64-amd64-qemuu-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-i386-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-i386-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-i386-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-amd64-i386-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale blocked test-amd64-amd64-examine-bios pass test-amd64-i386-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 blocked test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 blocked test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine blocked test-amd64-i386-examine pass test-amd64-i386-freebsd10-i386 pass test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-i386-qemut-rhel6hvm-intel pass test-amd64-i386-qemuu-rhel6hvm-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt blocked test-amd64-i386-libvirt pass test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu blocked test-amd64-amd64-pair pass test-amd64-i386-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-i386-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-i386-xl-pvshim fail test-amd64-amd64-pygrub pass test-armhf-armhf-libvirt-qcow2 blocked test-amd64-amd64-xl-qcow2 fail test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw blocked test-amd64-i386-libvirt-raw pass test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-amd64-i386-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-i386-examine-uefi pass test-amd64-amd64-libvirt-vhd pass test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd blocked test-amd64-i386-xl-vhd pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary broken-job build-armhf broken broken-step build-armhf host-install(4) broken-job build-armhf broken Not pushing. (No revision log; it would be 1380 lines long.) From xen-devel-bounces@lists.xenproject.org Wed Jun 21 23:43:33 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 21 Jun 2023 23:43:33 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553214.863638 (Exim 4.92) (envelope-from ) id 1qC7Tl-0002AH-OJ; Wed, 21 Jun 2023 23:43:13 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553214.863638; Wed, 21 Jun 2023 23:43:13 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC7Tl-0002AA-LH; Wed, 21 Jun 2023 23:43:13 +0000 Received: by outflank-mailman (input) for mailman id 553214; Wed, 21 Jun 2023 23:43:13 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC7Tk-0002A4-VE for xen-devel@lists.xenproject.org; Wed, 21 Jun 2023 23:43:12 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [2604:1380:4641:c500::1]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 60c4edb8-108d-11ee-b237-6b7b168915f2; Thu, 22 Jun 2023 01:43:10 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id C706661709; Wed, 21 Jun 2023 23:43:08 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id CEE63C433C0; Wed, 21 Jun 2023 23:43:07 +0000 (UTC) Received: from compute3.internal (compute3.nyi.internal [10.202.2.43]) by mailauth.nyi.internal (Postfix) with ESMTP id B90EA27C0054; Wed, 21 Jun 2023 19:43:06 -0400 (EDT) Received: from imap48 ([10.202.2.98]) by compute3.internal (MEProxy); Wed, 21 Jun 2023 19:43:06 -0400 Received: by mailuser.nyi.internal (Postfix, from userid 501) id B529031A0063; Wed, 21 Jun 2023 19:43:05 -0400 (EDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 60c4edb8-108d-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1687390988; bh=RoMKsAIPNmQwi8XbSHui64FM9FxWSSvleopyh2AgkRM=; h=In-Reply-To:References:Date:From:To:Subject:From; b=RKi6Ips4YOcbYcSL+N6hHAUWYJR6dKGoSb6XrgLAZZHGkQjJfQf1VPwVQfWN2Zg9p sWkKS9KCXft23kpaZG7HVrPM+0h3zRkveO6j1IzFPaKT85rVRTI7pubtWOYDlL5nAA 2m+ylJBz1/dsFJEX3z+ZutLurK9Ai+osB9x1HXGq8RKBoHdIKj7yZJVWA+GxKlwpiB 7GUwY1cdaJHgnP7scmNfiQzG5gAcV0pWiYAISwTH2XUn119UYQyrzIf8iGNskrlDop HojHFlz6lTvhrChkXd974yn9s1DvlZaln/siwyBn0UgeweX/ZoVo7xzIGzTSQy4+GL s1RFJL5M0051A== X-ME-Sender: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvhedrgeegtddgvdduucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne cujfgurhepofgfggfkjghffffhvffutgfgsehtqhertderreejnecuhfhrohhmpedftehn ugihucfnuhhtohhmihhrshhkihdfuceolhhuthhosehkvghrnhgvlhdrohhrgheqnecugg ftrfgrthhtvghrnhepvdelheejjeevhfdutdeggefftdejtdffgeevteehvdfgjeeiveei ueefveeuvdetnecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhfrh homheprghnugihodhmvghsmhhtphgruhhthhhpvghrshhonhgrlhhithihqdduudeiudek heeifedvqddvieefudeiiedtkedqlhhuthhopeepkhgvrhhnvghlrdhorhhgsehlihhnuh igrdhluhhtohdruhhs X-ME-Proxy: Feedback-ID: ieff94742:Fastmail X-Mailer: MessagingEngine.com Webmail Interface User-Agent: Cyrus-JMAP/3.9.0-alpha0-499-gf27bbf33e2-fm-20230619.001-gf27bbf33 Mime-Version: 1.0 Message-Id: <0ff85b95-f4c7-445c-b0e0-7368c182ee0b@app.fastmail.com> In-Reply-To: <333138f8-9fbe-be5b-d125-12c9d3ed3eda@citrix.com> References: <20230621151442.2152425-1-per.bilse@citrix.com> <7fbad052-4c4a-4a49-913d-ea836c180dc2@app.fastmail.com> <333138f8-9fbe-be5b-d125-12c9d3ed3eda@citrix.com> Date: Wed, 21 Jun 2023 16:42:44 -0700 From: "Andy Lutomirski" To: "Per Bilse" , "Thomas Gleixner" , "Ingo Molnar" , "Borislav Petkov" , "Dave Hansen" , "the arch/x86 maintainers" , "H. Peter Anvin" , "Juergen Gross" , "Stefano Stabellini" , "Oleksandr Tyshchenko" , "Linux Kernel Mailing List" , "moderated list:XEN HYPERVISOR INTERFACE" Subject: Re: [PATCH] Updates to Xen hypercall preemption Content-Type: text/plain;charset=utf-8 Content-Transfer-Encoding: quoted-printable On Wed, Jun 21, 2023, at 12:05 PM, Per Bilse wrote: > On 6/21/2023 5:27 PM, Andy Lutomirski wrote: >> This code is a horrible mess, with and without your patches. I think= that, if this were new, there's no way it would make it in to the kerne= l. > > Hi Andy, and many thanks for your frank assessments. Generally, this > is indeed somewhat old code, first introduced in 2015 by way of commit > fdfd811ddde3. There's more information in the notes to that, and it's > maybe worth noting that we're not trying to introduce anything new, > merely fix what various commits since then have broken. > >> I propose one of two rather radical changes: >>=20 >> 1. (preferred) Just delete all of it and make support for dom0 requir= e either full or dynamic preempt, and make a dynamic preempt kernel boot= ing as dom0 run as full preempt. > > Personally I think that's a good idea; a machine so limited in resourc= es > that a fully preemptible dom0 kernel would be a problem wouldn't work = as > a Xen server anyway. Having said that, what to do about this isn't > really in my hands; the issues came to light because the kernel for > Citrix's XenServer product is being upgraded, and it was considered in > everybody's interest to upstream the fixes. I'll see what I can do. This isn=E2=80=99t actually a resource thing. It=E2=80=99s a distro thin= g. Historically, full preempt was a config option only, and distros, for wh= atever reason, often shipped kernels with full preempt disabled. (There= we probably decent reasons. There may still be decent reasons.). And Xe= n needed to work on these kernels. Hence the mess. But Linux recently gained the ability to build a kernel that, by default= , is not full preempt but can be switched *at boot or runtime* to full p= reempt. And distros should ship *that* (or a kernel that does have full = preempt by default). So let=E2=80=99s just make Xen PV dom0 depend on this. It wasn=E2=80=99t= an option a couple years ago. Now it is. > > Best, > > -- Per From xen-devel-bounces@lists.xenproject.org Thu Jun 22 00:42:17 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 00:42:17 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553219.863648 (Exim 4.92) (envelope-from ) id 1qC8On-0000Yu-0z; Thu, 22 Jun 2023 00:42:09 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553219.863648; Thu, 22 Jun 2023 00:42:09 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC8Om-0000Yn-Sq; Thu, 22 Jun 2023 00:42:08 +0000 Received: by outflank-mailman (input) for mailman id 553219; Thu, 22 Jun 2023 00:42:07 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC8Ol-0000Yd-1l; Thu, 22 Jun 2023 00:42:07 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC8Ok-00083m-QQ; Thu, 22 Jun 2023 00:42:06 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC8Ok-0007KU-Fh; Thu, 22 Jun 2023 00:42:06 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qC8Ok-0001as-FD; Thu, 22 Jun 2023 00:42:06 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=LgS7qzszI/ni5vHyUCQ9IMRscjEuu11ghj+80UAJ1Vs=; b=NfATrXu5mtGRGnVPNUb3yVM4+w tiQF3Gz3DCsCRoBqFlqSPtPYCYrKi6eXkKl2oOkp7jqsE95J88xZ7jfZBxW5k+oA6eRovNi45KAy/ kWCNwIcTw6jgxS+r4dwN/VXbwjAvowJuexJuF0GyVFfsD+bD7iBf4ggsKJHvX0FfGll8=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [qemu-mainline test] 181540: regressions - trouble: blocked/broken/fail/pass X-Osstest-Failures: qemu-mainline:build-armhf::broken:regression qemu-mainline:build-armhf:host-install(4):broken:regression qemu-mainline:build-amd64:xen-build:fail:regression qemu-mainline:build-amd64-xsm:xen-build:fail:regression qemu-mainline:build-i386:xen-build:fail:regression qemu-mainline:build-i386-xsm:xen-build:fail:regression qemu-mainline:build-arm64:xen-build:fail:regression qemu-mainline:build-arm64-xsm:xen-build:fail:regression qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-i386:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:build-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:build-arm64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:build-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:build-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pygrub:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking X-Osstest-Versions-This: qemuu=c5ffd16ba4c8fd3601742cc9d2b3cff03995dd5d X-Osstest-Versions-That: qemuu=6972ef1440a9d685482d78672620a7482f2bd09a From: osstest service owner Date: Thu, 22 Jun 2023 00:42:06 +0000 flight 181540 qemu-mainline real [real] http://logs.test-lab.xenproject.org/osstest/logs/181540/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-armhf broken build-armhf 4 host-install(4) broken REGR. vs. 180691 build-amd64 6 xen-build fail REGR. vs. 180691 build-amd64-xsm 6 xen-build fail REGR. vs. 180691 build-i386 6 xen-build fail REGR. vs. 180691 build-i386-xsm 6 xen-build fail REGR. vs. 180691 build-arm64 6 xen-build fail REGR. vs. 180691 build-arm64-xsm 6 xen-build fail REGR. vs. 180691 Tests which did not succeed, but are not blocking: test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-xl-xsm 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-raw 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-xsm 1 build-check(1) blocked n/a test-arm64-arm64-xl 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit1 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit2 1 build-check(1) blocked n/a test-arm64-arm64-xl-thunderx 1 build-check(1) blocked n/a test-arm64-arm64-xl-vhd 1 build-check(1) blocked n/a test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a test-armhf-armhf-libvirt 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-qcow2 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-raw 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a test-armhf-armhf-xl-arndale 1 build-check(1) blocked n/a test-armhf-armhf-xl-multivcpu 1 build-check(1) blocked n/a test-armhf-armhf-xl-rtds 1 build-check(1) blocked n/a test-armhf-armhf-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-amd 1 build-check(1) blocked n/a test-amd64-i386-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-raw 1 build-check(1) blocked n/a test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-i386 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-amd64 1 build-check(1) blocked n/a test-amd64-coresched-i386-xl 1 build-check(1) blocked n/a test-amd64-coresched-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-xsm 1 build-check(1) blocked n/a build-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-shadow 1 build-check(1) blocked n/a test-amd64-amd64-xl-rtds 1 build-check(1) blocked n/a build-arm64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a build-armhf-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a build-i386-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-amd 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-pair 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-qcow2 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-vhd 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvshim 1 build-check(1) blocked n/a test-amd64-amd64-pair 1 build-check(1) blocked n/a test-amd64-amd64-pygrub 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-intel 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd11-amd64 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd12-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-multivcpu 1 build-check(1) blocked n/a test-amd64-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit1 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit1 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit2 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-intel 1 build-check(1) blocked n/a test-amd64-i386-xl 1 build-check(1) blocked n/a test-amd64-i386-xl-pvshim 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a version targeted for testing: qemuu c5ffd16ba4c8fd3601742cc9d2b3cff03995dd5d baseline version: qemuu 6972ef1440a9d685482d78672620a7482f2bd09a Last test of basis 180691 2023-05-17 10:45:22 Z 35 days Failing since 180699 2023-05-18 07:21:24 Z 34 days 123 attempts Testing same since 181534 2023-06-21 09:10:23 Z 0 days 2 attempts ------------------------------------------------------------ People who touched revisions under test: Afonso Bordado Akihiko Odaki Akihiro Suda Alex Bennée Alex Williamson Alexander Bulekov Alexander Graf Alexander Ivanov Alistair Francis Anastasia Belova Andrea Bolognani Andreas Schwab Andrew Jeffery Ani Sinha Ani Sinha Anthony PERARD Anton Johansson Antonio Caggiano BALATON Zoltan Bastian Koppelmann Bernhard Beschow Bin Meng Brian Cain Brice Goglin Camilla Conte Carlos Santos Christian Schoenebeck Chuck Zmudzinski Cindy Lu Clément Chigot Corey Minyard Cornelia Huck Cédric Le Goater Cédric Le Goater Daniel Henrique Barboza Daniel Henrique Barboza Daniel P. Berrangé Daniil Kovalev David Hildenbrand David Woodhouse Emanuele Giuseppe Esposito Enze Li Eric Auger Eric Blake Eric DeVolder Erico Nunes Eugenio Pérez Fabiano Rosas Fan Ni Fiona Ebner Francesco Cagnin Francisco Iglesias Frederic Barrat Gavin Shan Gregory Price Gregory Price Guenter Roeck Hanna Czenczek Hao Zeng Hawkins Jiawei Helge Deller Himanshu Chauhan Igor Mammedov Ilya Leoshkevich Ira Weiny Ivan Klokov Jagannathan Raman Jason Wang Jean-Louis Dupond Jean-Philippe Brucker Jiajie Chen Jiaxun Yang Joao Martins John Snow Jonathan Cameron Juan Quintela Junqiang Wang Kevin Wolf Laurent Vivier Lei Yang Leonardo Bras Maksim Davydov Marc-André Lureau Marcin Juszkiewicz Marco Liebel Mark Cave-Ayland Markus Armbruster Martin Kaiser Matheus Tavares Bernardino Mattias Nissler Mauro Matteo Cascella Max Fritz Mayuresh Chitale Michael S. Tsirkin Michael Tokarev Michal Privoznik Milan Zamazal Mostafa Saleh Nicholas Piggin Nicolas Saenz Julienne Niek Linnenbank Niklas Cassel Ninad Palsule Palmer Dabbelt Paolo Bonzini Patrick Venture Peter Maydell Peter Xu Philippe Mathieu-Daudé Philippe Mathieu-Daudé qianfan Zhao Raghu H Rene Engel Richard Henderson Richard Purdie Ricky Zhou Ryan Wendland Sebastian Ott Sergey Kambalin Sergio Lopez Sid Manning Song Gao Stefan Hajnoczi Stefano Garzarella Stefano Stabellini Stefano Stabellini Steve Sistare Sunil V L Taylor Simpson Thomas Huth Thomas Weißschuh Tianrui Zhao timothee.cocault@gmail.com Timothée Cocault Tommy Wu Vikram Garhwal Viktor Prutyanov Vitaly Cheptsov Vivek Kasireddy Vladimir Sementsov-Ogievskiy Volker Rümelin Weiwei Li Xiao Wang Xinyu Li Yin Wang Zeng Hao Zhenyu Zhang Zhenzhong Duan Zhuojia Shen jobs: build-amd64-xsm fail build-arm64-xsm fail build-i386-xsm fail build-amd64 fail build-arm64 fail build-armhf broken build-i386 fail build-amd64-libvirt blocked build-arm64-libvirt blocked build-armhf-libvirt blocked build-i386-libvirt blocked build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl blocked test-amd64-coresched-amd64-xl blocked test-arm64-arm64-xl blocked test-armhf-armhf-xl blocked test-amd64-i386-xl blocked test-amd64-coresched-i386-xl blocked test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-i386-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-amd64-libvirt-xsm blocked test-arm64-arm64-libvirt-xsm blocked test-amd64-i386-libvirt-xsm blocked test-amd64-amd64-xl-xsm blocked test-arm64-arm64-xl-xsm blocked test-amd64-i386-xl-xsm blocked test-amd64-amd64-qemuu-nested-amd blocked test-amd64-amd64-xl-pvhv2-amd blocked test-amd64-i386-qemuu-rhel6hvm-amd blocked test-amd64-amd64-dom0pvh-xl-amd blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-freebsd10-amd64 blocked test-amd64-amd64-qemuu-freebsd11-amd64 blocked test-amd64-amd64-qemuu-freebsd12-amd64 blocked test-amd64-amd64-xl-qemuu-ovmf-amd64 blocked test-amd64-i386-xl-qemuu-ovmf-amd64 blocked test-amd64-amd64-xl-qemuu-win7-amd64 blocked test-amd64-i386-xl-qemuu-win7-amd64 blocked test-amd64-amd64-xl-qemuu-ws16-amd64 blocked test-amd64-i386-xl-qemuu-ws16-amd64 blocked test-armhf-armhf-xl-arndale blocked test-amd64-amd64-xl-credit1 blocked test-arm64-arm64-xl-credit1 blocked test-armhf-armhf-xl-credit1 blocked test-amd64-amd64-xl-credit2 blocked test-arm64-arm64-xl-credit2 blocked test-armhf-armhf-xl-credit2 blocked test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-freebsd10-i386 blocked test-amd64-amd64-qemuu-nested-intel blocked test-amd64-amd64-xl-pvhv2-intel blocked test-amd64-i386-qemuu-rhel6hvm-intel blocked test-amd64-amd64-dom0pvh-xl-intel blocked test-amd64-amd64-libvirt blocked test-armhf-armhf-libvirt blocked test-amd64-i386-libvirt blocked test-amd64-amd64-xl-multivcpu blocked test-armhf-armhf-xl-multivcpu blocked test-amd64-amd64-pair blocked test-amd64-i386-pair blocked test-amd64-amd64-libvirt-pair blocked test-amd64-i386-libvirt-pair blocked test-amd64-amd64-xl-pvshim blocked test-amd64-i386-xl-pvshim blocked test-amd64-amd64-pygrub blocked test-armhf-armhf-libvirt-qcow2 blocked test-amd64-amd64-xl-qcow2 blocked test-arm64-arm64-libvirt-raw blocked test-armhf-armhf-libvirt-raw blocked test-amd64-i386-libvirt-raw blocked test-amd64-amd64-xl-rtds blocked test-armhf-armhf-xl-rtds blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-amd64-xl-shadow blocked test-amd64-i386-xl-shadow blocked test-arm64-arm64-xl-thunderx blocked test-amd64-amd64-libvirt-vhd blocked test-arm64-arm64-xl-vhd blocked test-armhf-armhf-xl-vhd blocked test-amd64-i386-xl-vhd blocked ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary broken-job build-armhf broken broken-step build-armhf host-install(4) Not pushing. (No revision log; it would be 20227 lines long.) From xen-devel-bounces@lists.xenproject.org Thu Jun 22 00:55:54 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 00:55:54 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553229.863660 (Exim 4.92) (envelope-from ) id 1qC8bv-0002C4-9g; Thu, 22 Jun 2023 00:55:43 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553229.863660; Thu, 22 Jun 2023 00:55:43 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC8bv-0002Bx-73; Thu, 22 Jun 2023 00:55:43 +0000 Received: by outflank-mailman (input) for mailman id 553229; Thu, 22 Jun 2023 00:55:42 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC8bu-0002Bo-Fg for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 00:55:42 +0000 Received: from mail-qt1-x82a.google.com (mail-qt1-x82a.google.com [2607:f8b0:4864:20::82a]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 81b4a3cc-1097-11ee-b237-6b7b168915f2; Thu, 22 Jun 2023 02:55:40 +0200 (CEST) Received: by mail-qt1-x82a.google.com with SMTP id d75a77b69052e-3f9cf20da1dso64371631cf.3 for ; Wed, 21 Jun 2023 17:55:40 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 81b4a3cc-1097-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687395339; x=1689987339; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=l3GCCFSjerORUlNkaagrmGxtlF6e541WtJg2AqtOtag=; b=QO2x0hgX9+3VZFmD2Elq1QWrtdE3ZFKvMsT9UJM3RjHTZvNVN9LYv95wQhJcGInVww 7vk6ryieK6IWpQx/H5flA83b0gcN48gPqITP8YePDmpQcF2wt9Q0AC5XpmhTRb77S+yx QtoWQNe7YJ7/eqBWKEFoobpJs7ZynjO3JPqPYGOztfjwawil5U9bmdxhbTC71keoAETl vitTbJRDe3lxs9Oc8sl6FK0GgJt3af+5BHm2o3Krdo+YvqWbYvw1T6Vv8Rog25LV+BPK 3Y9euqSbaZlA34rfp0UIohIrW0d46usF+AWFpuvbgz7S4esrYlt88D1868/X7M7Olie1 zBXA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687395339; x=1689987339; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=l3GCCFSjerORUlNkaagrmGxtlF6e541WtJg2AqtOtag=; b=i+nr3DYb3C4bXUP+RVg0bgXg82fChncVm6U4wzkFbZWIIDPxU2ZiKRwDP1Sm5eEIZU IaH3VJpj5IxrF4Xt5F6lYtFLcaTtdjZkRpREDIkunoHGXlLU7lCniR1GfCGeSenWxuT1 Ohltol77LFHIfIRpMvr5Zs/zunXU+raYyscWYn+H/4CYRAXwGqsOmfDa5UAe4B3Mbs/N e/e0rvKxTcdjgtI0ZF6YaddGO5rQokr1eMIZ99fV1AyYtM5zh4iTh3AldAvHBmpHYTwL EwjaZbQ7e3sEgLQhCoCW3i348ZfV2AWTZBn1j/46OZTEP2hS6oCaPvFtgsWUAo28yHWw KTNA== X-Gm-Message-State: AC+VfDyeSGai1GoylCavh5yw5TD+obXjd6ziOb583m3BAHGkTN9uo11C SZRreYpFPARs0InUpe5vRkhcUpob4ylM/qntZd4= X-Google-Smtp-Source: ACHHUZ5PPfj55R3kuU6Ulhq/z/HKm/LKinLrQ3A4xB6JiXyMEh0sxlQiUt0OGBbyL+YV4yUqjgDLfnZAxrHPh6vhG5c= X-Received: by 2002:ac8:594e:0:b0:3ff:2983:27e2 with SMTP id 14-20020ac8594e000000b003ff298327e2mr10079949qtz.17.1687395339260; Wed, 21 Jun 2023 17:55:39 -0700 (PDT) MIME-Version: 1.0 References: <20230621211200.4132989-1-andrew.cooper3@citrix.com> <20230621211200.4132989-2-andrew.cooper3@citrix.com> In-Reply-To: <20230621211200.4132989-2-andrew.cooper3@citrix.com> From: Alistair Francis Date: Thu, 22 Jun 2023 10:55:13 +1000 Message-ID: Subject: Re: [PATCH 1/2] xen/types: Drop #ifdefary for __{SIZE,PTRDIFF}_TYPE__ To: Andrew Cooper Cc: Xen-devel , Jan Beulich , =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= , Wei Liu , Stefano Stabellini , Julien Grall , Volodymyr Babchuk , Bertrand Marquis , Bob Eshleman , Alistair Francis , Connor Davis , Oleksii Kurochko , Shawn Anastasio , Timothy Pearson Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Thu, Jun 22, 2023 at 7:12=E2=80=AFAM Andrew Cooper wrote: > > All supported compilers have these types. > > No functional change. > > Signed-off-by: Andrew Cooper Reviewed-by: Alistair Francis Alistair > --- > CC: Jan Beulich > CC: Roger Pau Monn=C3=A9 > CC: Wei Liu > CC: Stefano Stabellini > CC: Julien Grall > CC: Volodymyr Babchuk > CC: Bertrand Marquis > CC: Bob Eshleman > CC: Alistair Francis > CC: Connor Davis > CC: Oleksii Kurochko > CC: Shawn Anastasio > CC: Timothy Pearson > > https://godbolt.org/z/Y6PWcd6js > --- > xen/include/xen/types.h | 9 +-------- > 1 file changed, 1 insertion(+), 8 deletions(-) > > diff --git a/xen/include/xen/types.h b/xen/include/xen/types.h > index 6aba80500aaf..8b22a02eeaa4 100644 > --- a/xen/include/xen/types.h > +++ b/xen/include/xen/types.h > @@ -5,18 +5,11 @@ > > #include > > -#if defined(__SIZE_TYPE__) > typedef __SIZE_TYPE__ size_t; > -#else > -typedef unsigned long size_t; > -#endif > + > typedef signed long ssize_t; > > -#if defined(__PTRDIFF_TYPE__) > typedef __PTRDIFF_TYPE__ ptrdiff_t; > -#else > -typedef signed long ptrdiff_t; > -#endif > > #define BITS_TO_LONGS(bits) \ > (((bits)+BITS_PER_LONG-1)/BITS_PER_LONG) > -- > 2.30.2 > > From xen-devel-bounces@lists.xenproject.org Thu Jun 22 00:57:35 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 00:57:35 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553234.863671 (Exim 4.92) (envelope-from ) id 1qC8dY-0002jU-Kl; Thu, 22 Jun 2023 00:57:24 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553234.863671; Thu, 22 Jun 2023 00:57:24 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC8dY-0002jN-I1; Thu, 22 Jun 2023 00:57:24 +0000 Received: by outflank-mailman (input) for mailman id 553234; Thu, 22 Jun 2023 00:57:23 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC8dX-0002jH-Sw for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 00:57:23 +0000 Received: from mail-vk1-xa36.google.com (mail-vk1-xa36.google.com [2607:f8b0:4864:20::a36]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id bec14c24-1097-11ee-b237-6b7b168915f2; Thu, 22 Jun 2023 02:57:22 +0200 (CEST) Received: by mail-vk1-xa36.google.com with SMTP id 71dfb90a1353d-4716726b741so1509288e0c.3 for ; Wed, 21 Jun 2023 17:57:22 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: bec14c24-1097-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687395441; x=1689987441; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=0bvGp+R6T4HMH65iifbzdZE6TTiz8VV7935CnlGgRYQ=; b=AVWRYJbDE4k/NcHmq3eykBjOocRGPlP0PmOXtKT/rc+y41Ldw8z6JK6CWunLU3o0Jo FsMZkl3opjzIXTlP9QWEg/xFuEZZx4hLeYyRmidsdlrRPqifj6Tgg/cJeI1n4z3IjNv7 lRuQkXYNr5HDLDcNICpoSYI0v1fezlBHP6nBGEgDg+PcXjAs3D72Zc7saGFhn3/8h3DT UgXGlY07AJzFh/ZxW0+TJecVCB7WNHCHX8C+irJb9Z+AMcQrNaEvhpAmllivDlWjVxQW zf01oyTpidViguHvHWX/rkT+7bz7k2yFugG2rWcJBVhdbDclz28BbNyz0Cgm0zSzPFhv jsLQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687395441; x=1689987441; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=0bvGp+R6T4HMH65iifbzdZE6TTiz8VV7935CnlGgRYQ=; b=QZcZG7INfWx61KCU//y2YBrLImDxzXGvS2/pVR2jWVJPWOX/RggctGLJ6y+z56Xue5 6aL4nx6D01usTWPUxnnUmr1CW9hc9QeSG+viyFnnCmR9uZDQ59E6yr8CLFSydpVZlcUx lis+CYIwcmPX76GQbbwrBdd2piRcjgd2X5kwEe9fo352ZADprBtwLaEE53qjkdLWGSSr 8dqXoOyV45jjlPLfDigd2lbb1SQ2pHp+mso0QOjyGnzv3c4eWFuIcU8rZF5DZ0IEIPWp wzNXpLnKYmXeSqIIyEkzAtkUR0F6C/zf/Hp+o5+8H5QH7nZPNQD+KpemS2ec/GvdU+sN q5Ww== X-Gm-Message-State: AC+VfDz5wUzUKJxwXuVG/3W/8J37Vwky25xolih6SfvHSOSquRPkNFRU Ryakbj/el4pKKsj4b+loAKxpK8n0j/PsQcA/yyo= X-Google-Smtp-Source: ACHHUZ6C8O2zy2KKTOBghTBSTtnFrZ0jg6Xw9ApyCIPUNn8ox/ycavwKWcJrTcgG8qnvOEY0+brCelLnJB7a3qTEQsc= X-Received: by 2002:a1f:e406:0:b0:471:348a:7b8d with SMTP id b6-20020a1fe406000000b00471348a7b8dmr4908448vkh.8.1687395441592; Wed, 21 Jun 2023 17:57:21 -0700 (PDT) MIME-Version: 1.0 References: <20230621211200.4132989-1-andrew.cooper3@citrix.com> <20230621211200.4132989-3-andrew.cooper3@citrix.com> In-Reply-To: <20230621211200.4132989-3-andrew.cooper3@citrix.com> From: Alistair Francis Date: Thu, 22 Jun 2023 10:56:55 +1000 Message-ID: Subject: Re: [PATCH 2/2] xen/types: Rework stdint vs __{u,s}$N types To: Andrew Cooper Cc: Xen-devel , Jan Beulich , =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= , Wei Liu , Stefano Stabellini , Julien Grall , Volodymyr Babchuk , Bertrand Marquis , Bob Eshleman , Alistair Francis , Connor Davis , Oleksii Kurochko , Shawn Anastasio , Timothy Pearson , Roberto Bagnara Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Thu, Jun 22, 2023 at 7:12=E2=80=AFAM Andrew Cooper wrote: > > Xen uses the stdint types. Rearrange the types headers to define the > compatibility __{u,s}$N types in terms of the stdint types, not the other= way > around. > > All all supported compilers on architectures other than x86 support the s= tdint > __*_TYPE__ macros. Move these into the common types.h to avoid them bein= g > duplicated in each architecture. > > For x86 on obsolete compilers, synthesize appropriate types. > > This cleanup has the side effect of removing all use of the undocumented > __signed__ GCC keyword. This is a vestigial remnant of `gcc -traditional= ` > mode for dialetcs of C prior to the introduction of the signed keyword. > > No functional change. > > Signed-off-by: Andrew Cooper Reviewed-by: Alistair Francis Alistair > --- > CC: Jan Beulich > CC: Roger Pau Monn=C3=A9 > CC: Wei Liu > CC: Stefano Stabellini > CC: Julien Grall > CC: Volodymyr Babchuk > CC: Bertrand Marquis > CC: Bob Eshleman > CC: Alistair Francis > CC: Connor Davis > CC: Oleksii Kurochko > CC: Shawn Anastasio > CC: Timothy Pearson > CC: Roberto Bagnara > > I've left the non __ types alone for now. They're complicated mostly by = ARM > having differing ideas of what a paddr_t is. > > A different option would be to sort out the stdint types ahead of includi= ng > , which can either be done by introducing a o= r > upping the minimum compiler version for x86; a task which is massively > overdue. > --- > xen/arch/arm/include/asm/types.h | 19 ------------------- > xen/arch/riscv/include/asm/types.h | 19 ------------------- > xen/arch/x86/include/asm/types.h | 21 +++++++++------------ > xen/include/xen/types.h | 28 +++++++++++++++++----------- > 4 files changed, 26 insertions(+), 61 deletions(-) > > diff --git a/xen/arch/arm/include/asm/types.h b/xen/arch/arm/include/asm/= types.h > index fb6618ef247f..545a5e9d1175 100644 > --- a/xen/arch/arm/include/asm/types.h > +++ b/xen/arch/arm/include/asm/types.h > @@ -1,25 +1,6 @@ > #ifndef __ARM_TYPES_H__ > #define __ARM_TYPES_H__ > > -typedef __signed__ char __s8; > -typedef unsigned char __u8; > - > -typedef __signed__ short __s16; > -typedef unsigned short __u16; > - > -typedef __signed__ int __s32; > -typedef unsigned int __u32; > - > -#if defined(__GNUC__) && !defined(__STRICT_ANSI__) > -#if defined(CONFIG_ARM_32) > -typedef __signed__ long long __s64; > -typedef unsigned long long __u64; > -#elif defined (CONFIG_ARM_64) > -typedef __signed__ long __s64; > -typedef unsigned long __u64; > -#endif > -#endif > - > typedef signed char s8; > typedef unsigned char u8; > > diff --git a/xen/arch/riscv/include/asm/types.h b/xen/arch/riscv/include/= asm/types.h > index 0c0ce78c8f6e..93a680a8f323 100644 > --- a/xen/arch/riscv/include/asm/types.h > +++ b/xen/arch/riscv/include/asm/types.h > @@ -1,25 +1,6 @@ > #ifndef __RISCV_TYPES_H__ > #define __RISCV_TYPES_H__ > > -typedef __signed__ char __s8; > -typedef unsigned char __u8; > - > -typedef __signed__ short __s16; > -typedef unsigned short __u16; > - > -typedef __signed__ int __s32; > -typedef unsigned int __u32; > - > -#if defined(__GNUC__) && !defined(__STRICT_ANSI__) > -#if defined(CONFIG_RISCV_32) > -typedef __signed__ long long __s64; > -typedef unsigned long long __u64; > -#elif defined (CONFIG_RISCV_64) > -typedef __signed__ long __s64; > -typedef unsigned long __u64; > -#endif > -#endif > - > typedef signed char s8; > typedef unsigned char u8; > > diff --git a/xen/arch/x86/include/asm/types.h b/xen/arch/x86/include/asm/= types.h > index 2d56aed66782..a5d4f6e9587a 100644 > --- a/xen/arch/x86/include/asm/types.h > +++ b/xen/arch/x86/include/asm/types.h > @@ -1,18 +1,15 @@ > #ifndef __X86_TYPES_H__ > #define __X86_TYPES_H__ > > -typedef __signed__ char __s8; > -typedef unsigned char __u8; > - > -typedef __signed__ short __s16; > -typedef unsigned short __u16; > - > -typedef __signed__ int __s32; > -typedef unsigned int __u32; > - > -#if defined(__GNUC__) && !defined(__STRICT_ANSI__) > -typedef __signed__ long __s64; > -typedef unsigned long __u64; > +#ifndef __INT8_TYPE__ /* GCC <=3D 4.4 */ > +# define __INT8_TYPE__ signed char > +# define __UINT8_TYPE__ unsigned char > +# define __INT16_TYPE__ short > +# define __UINT16_TYPE__ unsigned short > +# define __INT32_TYPE__ int > +# define __UINT32_TYPE__ unsigned int > +# define __INT64_TYPE__ long > +# define __UINT64_TYPE__ unsigned long > #endif > > typedef signed char s8; > diff --git a/xen/include/xen/types.h b/xen/include/xen/types.h > index 8b22a02eeaa4..4083f1bf18b0 100644 > --- a/xen/include/xen/types.h > +++ b/xen/include/xen/types.h > @@ -11,6 +11,15 @@ typedef signed long ssize_t; > > typedef __PTRDIFF_TYPE__ ptrdiff_t; > > +typedef __INT8_TYPE__ int8_t; > +typedef __UINT8_TYPE__ uint8_t; > +typedef __INT16_TYPE__ int16_t; > +typedef __UINT16_TYPE__ uint16_t; > +typedef __INT32_TYPE__ int32_t; > +typedef __UINT32_TYPE__ uint32_t; > +typedef __INT64_TYPE__ int64_t; > +typedef __UINT64_TYPE__ uint64_t; > + > #define BITS_TO_LONGS(bits) \ > (((bits)+BITS_PER_LONG-1)/BITS_PER_LONG) > #define DECLARE_BITMAP(name,bits) \ > @@ -39,17 +48,14 @@ typedef __PTRDIFF_TYPE__ ptrdiff_t; > #define LONG_MIN (-LONG_MAX - 1) > #define ULONG_MAX (~0UL) > > -typedef __u8 uint8_t; > -typedef __s8 int8_t; > - > -typedef __u16 uint16_t; > -typedef __s16 int16_t; > - > -typedef __u32 uint32_t; > -typedef __s32 int32_t; > - > -typedef __u64 uint64_t; > -typedef __s64 int64_t; > +typedef uint8_t __u8; > +typedef int8_t __s8; > +typedef uint16_t __u16; > +typedef int16_t __s16; > +typedef uint32_t __u32; > +typedef int32_t __s32; > +typedef uint64_t __u64; > +typedef int64_t __s64; > > typedef __u16 __le16; > typedef __u16 __be16; > -- > 2.30.2 > > From xen-devel-bounces@lists.xenproject.org Thu Jun 22 02:14:05 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 02:14:05 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553239.863681 (Exim 4.92) (envelope-from ) id 1qC9pX-00015G-9u; Thu, 22 Jun 2023 02:13:51 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553239.863681; Thu, 22 Jun 2023 02:13:51 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC9pX-00014u-3n; Thu, 22 Jun 2023 02:13:51 +0000 Received: by outflank-mailman (input) for mailman id 553239; Thu, 22 Jun 2023 02:13:50 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC9pW-00014o-1g for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 02:13:50 +0000 Received: from mail-vs1-xe35.google.com (mail-vs1-xe35.google.com [2607:f8b0:4864:20::e35]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 6ad08e37-10a2-11ee-8611-37d641c3527e; Thu, 22 Jun 2023 04:13:46 +0200 (CEST) Received: by mail-vs1-xe35.google.com with SMTP id ada2fe7eead31-440ad8ea514so1590916137.2 for ; Wed, 21 Jun 2023 19:13:46 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 6ad08e37-10a2-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687400025; x=1689992025; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=uMDjXjBvJ2Cwx0ymg0Rne9bNBgZ/WY4jhpp9jUf7EPM=; b=idr0vYcZWdVbQerOrWz3eQ6ClUowFTKX7IoYADhLJS2ptxpP7OAC+lB3DpLpFrlMZg 9llVhtKZodR4q4S9LvU8kJRzPZ807ejhiGmSzNVAnPtpzyWYMFJC0pTK15wMzGNk2lGW DAely5Qt6ekhYGm3wmB4H5e0+CgRHfgLU+HoWGCwoJkij1PVBoVDIR2tXxujKhq6b47H XsMPSd4STxx48uPXQ9hw9/1OFpAOGqE5oIYvclFYq0Y8TMYgnHuuM1SuWQqV6Wx0tn2d 3JtSB9oT5eVdU093denNVJsc4z2V+RQO8BRiowhMfeExIoYtKBeytPQam6v3j61i/r7o oMWQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687400025; x=1689992025; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=uMDjXjBvJ2Cwx0ymg0Rne9bNBgZ/WY4jhpp9jUf7EPM=; b=asIAEkwV+WA9+Klst5tfx1Zs/bg4TACOaFBJc3hvEM45ZOHFfXkKRyigXjtZmooceV 80mAmNIvP9xlEXGyGI+NMYyb7bjkzmnYOUxCBoplmNUp/4WNrV09U1zxDzfHhqaoi5gO 9cFF3DQayn8K54d+UWIPGevE4NNffUUFvF4Qs9K/3rJBGun6615uoFDMZKM5izFW2KHd OLXsDXXnnTR5AMtpp5IcdWiT+R8k9IRUtVRVh4fOPSa8fWxfIZoa5+ARk5Ku1/fMrN1W XxjIMH7IQST8s3nxtcgWYPGNHVjuk/eA6k/uES5p8CVzgnMdO2Go1TYU+ds8h4RF3Igv pbdw== X-Gm-Message-State: AC+VfDzKy8XTWnoDHEk+Sty8Kpd1XXZzadAFQSzGUYfyUt9ZAkaRyZZd wfbJ3IpxM2tQnG10cvs85ejhgX0hQa3fdhPPSpw= X-Google-Smtp-Source: ACHHUZ5RcPm6Oa0BEp/kcOeBVqr5R5l7uIRs5S8MJWL7xVhH5bhytikBFCJnVoO+TzRsWFCs1JpEgjlwKpdfoSEd8vs= X-Received: by 2002:a67:ce91:0:b0:43b:2682:a4a3 with SMTP id c17-20020a67ce91000000b0043b2682a4a3mr8276168vse.23.1687400025196; Wed, 21 Jun 2023 19:13:45 -0700 (PDT) MIME-Version: 1.0 References: <19dfd66d1a446bf1f5cdccd74b7a64f56baa8f5c.1687178053.git.oleksii.kurochko@gmail.com> In-Reply-To: <19dfd66d1a446bf1f5cdccd74b7a64f56baa8f5c.1687178053.git.oleksii.kurochko@gmail.com> From: Alistair Francis Date: Thu, 22 Jun 2023 12:13:19 +1000 Message-ID: Subject: Re: [PATCH v2 5/6] xen/riscv: add SPDX tags To: Oleksii Kurochko Cc: xen-devel@lists.xenproject.org, Jan Beulich , Andrew Cooper , Julien Grall , Bob Eshleman , Alistair Francis , Connor Davis Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Mon, Jun 19, 2023 at 11:35=E2=80=AFPM Oleksii Kurochko wrote: > > Signed-off-by: Oleksii Kurochko > Suggested-by: Andrew Cooper Reviewed-by: Alistair Francis Alistair > --- > Changes in V2: > - change SPDX tags from GPL-2.0-or-later to GPL-2.0-only. > - add Suggested-by: Andrew Cooper . > --- > xen/arch/riscv/include/asm/current.h | 2 ++ > xen/arch/riscv/include/asm/early_printk.h | 2 ++ > xen/arch/riscv/include/asm/mm.h | 2 ++ > xen/arch/riscv/include/asm/page-bits.h | 2 ++ > xen/arch/riscv/include/asm/page.h | 2 ++ > xen/arch/riscv/include/asm/traps.h | 2 ++ > xen/arch/riscv/include/asm/types.h | 2 ++ > xen/arch/riscv/mm.c | 2 ++ > xen/arch/riscv/setup.c | 2 ++ > 9 files changed, 18 insertions(+) > > diff --git a/xen/arch/riscv/include/asm/current.h b/xen/arch/riscv/includ= e/asm/current.h > index d87e6717e0..d84f15dc50 100644 > --- a/xen/arch/riscv/include/asm/current.h > +++ b/xen/arch/riscv/include/asm/current.h > @@ -1,3 +1,5 @@ > +/* SPDX-License-Identifier: GPL-2.0-only */ > + > #ifndef __ASM_CURRENT_H > #define __ASM_CURRENT_H > > diff --git a/xen/arch/riscv/include/asm/early_printk.h b/xen/arch/riscv/i= nclude/asm/early_printk.h > index 05106e160d..85e60df33a 100644 > --- a/xen/arch/riscv/include/asm/early_printk.h > +++ b/xen/arch/riscv/include/asm/early_printk.h > @@ -1,3 +1,5 @@ > +/* SPDX-License-Identifier: GPL-2.0-only */ > + > #ifndef __EARLY_PRINTK_H__ > #define __EARLY_PRINTK_H__ > > diff --git a/xen/arch/riscv/include/asm/mm.h b/xen/arch/riscv/include/asm= /mm.h > index 500fdc9c5a..3f694a43ef 100644 > --- a/xen/arch/riscv/include/asm/mm.h > +++ b/xen/arch/riscv/include/asm/mm.h > @@ -1,3 +1,5 @@ > +/* SPDX-License-Identifier: GPL-2.0-only */ > + > #ifndef _ASM_RISCV_MM_H > #define _ASM_RISCV_MM_H > > diff --git a/xen/arch/riscv/include/asm/page-bits.h b/xen/arch/riscv/incl= ude/asm/page-bits.h > index 4a3e33589a..8f1f474371 100644 > --- a/xen/arch/riscv/include/asm/page-bits.h > +++ b/xen/arch/riscv/include/asm/page-bits.h > @@ -1,3 +1,5 @@ > +/* SPDX-License-Identifier: GPL-2.0-only */ > + > #ifndef __RISCV_PAGE_BITS_H__ > #define __RISCV_PAGE_BITS_H__ > > diff --git a/xen/arch/riscv/include/asm/page.h b/xen/arch/riscv/include/a= sm/page.h > index 22b36e03a4..95074e29b3 100644 > --- a/xen/arch/riscv/include/asm/page.h > +++ b/xen/arch/riscv/include/asm/page.h > @@ -1,3 +1,5 @@ > +/* SPDX-License-Identifier: GPL-2.0-only */ > + > #ifndef _ASM_RISCV_PAGE_H > #define _ASM_RISCV_PAGE_H > > diff --git a/xen/arch/riscv/include/asm/traps.h b/xen/arch/riscv/include/= asm/traps.h > index f3fb6b25d1..3fef318478 100644 > --- a/xen/arch/riscv/include/asm/traps.h > +++ b/xen/arch/riscv/include/asm/traps.h > @@ -1,3 +1,5 @@ > +/* SPDX-License-Identifier: GPL-2.0-only */ > + > #ifndef __ASM_TRAPS_H__ > #define __ASM_TRAPS_H__ > > diff --git a/xen/arch/riscv/include/asm/types.h b/xen/arch/riscv/include/= asm/types.h > index 0c0ce78c8f..c2cdfd9caa 100644 > --- a/xen/arch/riscv/include/asm/types.h > +++ b/xen/arch/riscv/include/asm/types.h > @@ -1,3 +1,5 @@ > +/* SPDX-License-Identifier: GPL-2.0-only */ > + > #ifndef __RISCV_TYPES_H__ > #define __RISCV_TYPES_H__ > > diff --git a/xen/arch/riscv/mm.c b/xen/arch/riscv/mm.c > index 2693b817c5..663048c783 100644 > --- a/xen/arch/riscv/mm.c > +++ b/xen/arch/riscv/mm.c > @@ -1,3 +1,5 @@ > +/* SPDX-License-Identifier: GPL-2.0-only */ > + > #include > #include > #include > diff --git a/xen/arch/riscv/setup.c b/xen/arch/riscv/setup.c > index c4ef0b3165..6593f601c1 100644 > --- a/xen/arch/riscv/setup.c > +++ b/xen/arch/riscv/setup.c > @@ -1,3 +1,5 @@ > +/* SPDX-License-Identifier: GPL-2.0-only */ > + > #include > #include > > -- > 2.40.1 > > From xen-devel-bounces@lists.xenproject.org Thu Jun 22 02:14:17 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 02:14:17 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553240.863691 (Exim 4.92) (envelope-from ) id 1qC9px-0001T2-F6; Thu, 22 Jun 2023 02:14:17 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553240.863691; Thu, 22 Jun 2023 02:14:17 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC9px-0001Sv-Bn; Thu, 22 Jun 2023 02:14:17 +0000 Received: by outflank-mailman (input) for mailman id 553240; Thu, 22 Jun 2023 02:14:15 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qC9pv-00014o-Pl for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 02:14:15 +0000 Received: from mail-vk1-xa2c.google.com (mail-vk1-xa2c.google.com [2607:f8b0:4864:20::a2c]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 7b4d3305-10a2-11ee-8611-37d641c3527e; Thu, 22 Jun 2023 04:14:14 +0200 (CEST) Received: by mail-vk1-xa2c.google.com with SMTP id 71dfb90a1353d-47151ee3fe6so2138844e0c.2 for ; Wed, 21 Jun 2023 19:14:14 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 7b4d3305-10a2-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687400053; x=1689992053; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=TQMWQNruHZAOUS8HEG8TP+HDVfZ40G77B4tmeF/8WsQ=; b=aCPJ+QkB8iWvp92zHiEbi/SQvGLkc2txFujLe1VMY7EEjd3WNivFgTrYYoeM0xloPl 6thKqTFqjOcBvyzLuyKoxFyEvKZMMRtpPnAp8sp4RzCVbFX/OW1ER+MjSrSubK+U41Ib TqdZ5Npwpj2Y7DEfhS9UmKPRrWYdQrldvYkirUZMzIce7/yA/3FtD7Gx5BtpJY6yQmkb Nr/3V8JRLkkGKloCE1prMpV/kfWRXU9aws06OU/Djwd0lXdqnKhYjkr8lNvrBdmzYlu5 L4DHN9t03Du8JyooTrFLaeMElUHBJoEm2lZOXkoQzih3/ajG/zPosV7su+KBZ9DrW1W9 mbPA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687400053; x=1689992053; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=TQMWQNruHZAOUS8HEG8TP+HDVfZ40G77B4tmeF/8WsQ=; b=c41/ndFaJQd4UbnE2/t0QrJbJqMT6e/fT1TBDbAnDpV//NerelhWbEZyLZSpm4K/iu s7Rr+6JuNWRRZAI4B0l3ZntFnVrky5gVSMpgwEoONOe2cT5m0lyieCSQd7dZeaDlVpVU ZsrOZzZ96tOVf5Beo46NmYi7oLmf+2ybhZqLji5QA+DhrGSmiDGOobCDKjHR979otrSh Q9pmVcMNtFstecwCWEGdd0rmnMDKetlO7nDgpVu/AQJo8wy7CWX7JMfOYwLtEZ96npVy L+8LiunMj2RAgXBNr/i4WS4zszkvsXfQ8+NKTrNJLIZdGVRVhAsJlcgbFihTPzm7qTtq jFzA== X-Gm-Message-State: AC+VfDyZ8wid/7XrMKu71Qjo8RYy+fHTsRXJFDM6My5UYCy4CYzOh+17 AOvq4ldPCkiYVDcpJk5GnxsEllJAGkn9SMT8U6I= X-Google-Smtp-Source: ACHHUZ41WxSh9xxXr2huA03Ro54viAYOh8qXB4Atjp2wuNCgK6SKE3nk1n3oGkgvwz1Gup+AdoJbvtY5JrG2/d80Vvs= X-Received: by 2002:a1f:3d57:0:b0:471:5506:2d85 with SMTP id k84-20020a1f3d57000000b0047155062d85mr6766961vka.5.1687400052955; Wed, 21 Jun 2023 19:14:12 -0700 (PDT) MIME-Version: 1.0 References: In-Reply-To: From: Alistair Francis Date: Thu, 22 Jun 2023 12:13:47 +1000 Message-ID: Subject: Re: [PATCH v2 6/6] xen/riscv: move extern of cpu0_boot_stack to header To: Oleksii Kurochko Cc: xen-devel@lists.xenproject.org, Jan Beulich , Andrew Cooper , Julien Grall , Bob Eshleman , Alistair Francis , Connor Davis Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Mon, Jun 19, 2023 at 11:35=E2=80=AFPM Oleksii Kurochko wrote: > > Signed-off-by: Oleksii Kurochko > Suggested-by: Andrew Cooper Reviewed-by: Alistair Francis Alistair > --- > Changes in V2: > - add Suggested-by: Andrew Cooper . > --- > xen/arch/riscv/include/asm/mm.h | 2 ++ > xen/arch/riscv/mm.c | 2 -- > 2 files changed, 2 insertions(+), 2 deletions(-) > > diff --git a/xen/arch/riscv/include/asm/mm.h b/xen/arch/riscv/include/asm= /mm.h > index 3f694a43ef..085eaab7fb 100644 > --- a/xen/arch/riscv/include/asm/mm.h > +++ b/xen/arch/riscv/include/asm/mm.h > @@ -8,6 +8,8 @@ > #define pfn_to_paddr(pfn) ((paddr_t)(pfn) << PAGE_SHIFT) > #define paddr_to_pfn(pa) ((unsigned long)((pa) >> PAGE_SHIFT)) > > +extern unsigned char cpu0_boot_stack[]; > + > void setup_initial_pagetables(void); > > void enable_mmu(void); > diff --git a/xen/arch/riscv/mm.c b/xen/arch/riscv/mm.c > index 663048c783..602b89aeed 100644 > --- a/xen/arch/riscv/mm.c > +++ b/xen/arch/riscv/mm.c > @@ -20,8 +20,6 @@ struct mmu_desc { > pte_t *pgtbl_base; > }; > > -extern unsigned char cpu0_boot_stack[STACK_SIZE]; > - > unsigned long __ro_after_init phys_offset; > > #define LOAD_TO_LINK(addr) ((unsigned long)(addr) - phys_offset) > -- > 2.40.1 > > From xen-devel-bounces@lists.xenproject.org Thu Jun 22 02:38:50 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 02:38:50 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553251.863700 (Exim 4.92) (envelope-from ) id 1qCADQ-0004Bk-EX; Thu, 22 Jun 2023 02:38:32 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553251.863700; Thu, 22 Jun 2023 02:38:32 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCADQ-0004Bd-Br; Thu, 22 Jun 2023 02:38:32 +0000 Received: by outflank-mailman (input) for mailman id 553251; Thu, 22 Jun 2023 02:38:31 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCADP-0004BT-0Y; Thu, 22 Jun 2023 02:38:31 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCADO-0000xL-Ky; Thu, 22 Jun 2023 02:38:30 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCADO-0005FZ-BY; Thu, 22 Jun 2023 02:38:30 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qCADO-0005Lu-6a; Thu, 22 Jun 2023 02:38:30 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=zVFQ+Tl8oPwJhaAVRBOTUiHil51RPxTucgBuS/wbtvk=; b=uyEB6JljdeubViQ1MrUZzJy7f+ 7ACGQ3077zaWANQ6DDcsZgdm5kAIs/ocwSSrqpmS70fz73OV9pIzvchOshMG9GG/zH84j1Oy+W1eQ TmdWxriPu5psDAJgtNyXv0PElak5ewHLmDhKPw7f0ro3EG4Pw9Q80VCAs1kkR25vKvcg=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable-smoke test] 181541: trouble: blocked/broken/pass X-Osstest-Failures: xen-unstable-smoke:build-armhf::broken:regression xen-unstable-smoke:build-armhf:host-install(4):broken:regression xen-unstable-smoke:test-armhf-armhf-xl:build-check(1):blocked:nonblocking xen-unstable-smoke:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking xen-unstable-smoke:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking xen-unstable-smoke:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: xen=5c84f1f636981dab5341e84aaba8d4dd00bbc2cb X-Osstest-Versions-That: xen=7a25a1501ca941c3e01b0c4e624ace05417f1587 From: osstest service owner Date: Thu, 22 Jun 2023 02:38:30 +0000 flight 181541 xen-unstable-smoke real [real] http://logs.test-lab.xenproject.org/osstest/logs/181541/ Failures and problems with tests :-( Tests which did not succeed and are blocking, including tests which could not be run: build-armhf broken build-armhf 4 host-install(4) broken REGR. vs. 181476 Tests which did not succeed, but are not blocking: test-armhf-armhf-xl 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass version targeted for testing: xen 5c84f1f636981dab5341e84aaba8d4dd00bbc2cb baseline version: xen 7a25a1501ca941c3e01b0c4e624ace05417f1587 Last test of basis 181476 2023-06-17 04:00:28 Z 4 days Failing since 181504 2023-06-19 11:00:26 Z 2 days 9 attempts Testing same since 181541 2023-06-21 22:01:56 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Alistair Francis Andrew Cooper Anthony PERARD Henry Wang Jan Beulich Jiamei Xie Julien Grall Michal Orzel Oleksii Kurochko Roger Pau Monné Shawn Anastasio Stefano Stabellini Stefano Stabellini jobs: build-arm64-xsm pass build-amd64 pass build-armhf broken build-amd64-libvirt pass test-armhf-armhf-xl blocked test-arm64-arm64-xl-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-libvirt pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary broken-job build-armhf broken broken-step build-armhf host-install(4) Not pushing. (No revision log; it would be 412 lines long.) From xen-devel-bounces@lists.xenproject.org Thu Jun 22 04:22:16 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 04:22:16 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553258.863710 (Exim 4.92) (envelope-from ) id 1qCBpU-00073t-RZ; Thu, 22 Jun 2023 04:21:56 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553258.863710; Thu, 22 Jun 2023 04:21:56 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCBpU-00073m-P0; Thu, 22 Jun 2023 04:21:56 +0000 Received: by outflank-mailman (input) for mailman id 553258; Thu, 22 Jun 2023 04:21:55 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCBpT-00073d-8M for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 04:21:55 +0000 Received: from mail-wr1-f43.google.com (mail-wr1-f43.google.com [209.85.221.43]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 50cd5e74-10b4-11ee-b237-6b7b168915f2; Thu, 22 Jun 2023 06:21:53 +0200 (CEST) Received: by mail-wr1-f43.google.com with SMTP id ffacd0b85a97d-311394406d0so4220834f8f.2 for ; Wed, 21 Jun 2023 21:21:53 -0700 (PDT) Received: from [192.168.1.58] (185-219-167-24-static.vivo.cz. [185.219.167.24]) by smtp.gmail.com with ESMTPSA id j10-20020a5d604a000000b0031272fced4dsm5942680wrt.52.2023.06.21.21.21.49 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Wed, 21 Jun 2023 21:21:51 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 50cd5e74-10b4-11ee-b237-6b7b168915f2 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687407713; x=1689999713; h=content-transfer-encoding:in-reply-to:from:references:cc:to :content-language:subject:user-agent:mime-version:date:message-id :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=2ECnfbr1yMldiaqGJ4AwBQXH8Qu2uEGTBBXNGiQr9KY=; b=UheQtAB2b2u42Ax2LhmteLdivPLRPUiikgmqNO2xoEhmcqAmIVXOw0PuIp6m9M3rUd E3h8IpDxrvYi7lEPOpXSWL3wmDlcs0+CX499h1mC7SzHuwN6Kmv/ZGEYRPNgnkl72NgW aUxSRJmLbao7ztXl+/32DWMvOsqxrprufLcbeRXkeZceHssRLlrM3qXGk1WE/Lxb7Akb hKdSbQ0U9WzNYAjBxWAOhWpjlHvQxikYT1hK6nLGD6mY8xxCctAVhupyeVuCYMSpP8/N ArhmiYQfOZ3UKv7bgCAvHqDouyBNzLUivPFasmCnqo7GCg99AbQS8zzO7WG2PkFk0aWm 9BBQ== X-Gm-Message-State: AC+VfDyfg2VXM1ZmH8zn307gjtbU90+b8vVPMmcILCYISnrH5Ow/z+6o 59Lkfr62a8Rv7BJsNNai+2Q= X-Google-Smtp-Source: ACHHUZ6noBUR8iTvT8VR1EETx/SJbcA6a56KL+Jlcz/+OUxvfjHqkrQVqSA29+PLsepDYKMNhlEycQ== X-Received: by 2002:a05:6000:10ce:b0:312:9eb6:33da with SMTP id b14-20020a05600010ce00b003129eb633damr17577wrx.20.1687407712404; Wed, 21 Jun 2023 21:21:52 -0700 (PDT) Message-ID: Date: Thu, 22 Jun 2023 06:21:48 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH 08/11] sysctl: Add size to register_sysctl_init Content-Language: en-US To: Joel Granados , Greg Kroah-Hartman Cc: mcgrof@kernel.org, Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , x86@kernel.org, Theodore Ts'o , "Jason A. Donenfeld" , Juergen Gross , Stefano Stabellini , Benjamin LaHaise , Alexander Viro , Christian Brauner , Jeff Layton , Chuck Lever , Jan Kara , Kees Cook , Iurii Zaikin , Alexei Starovoitov , Daniel Borkmann , Andrii Nakryiko , Balbir Singh , Eric Biederman , "Naveen N. Rao" , Anil S Keshavamurthy , "David S. Miller" , Masami Hiramatsu , Peter Zijlstra , Will Deacon , Petr Mladek , Sergey Senozhatsky , Juri Lelli , Vincent Guittot , Steven Rostedt , Andrew Morton , Mike Kravetz , Muchun Song , Naoya Horiguchi , "Matthew Wilcox (Oracle)" , David Howells , Jarkko Sakkinen , Paul Moore , James Morris , "Serge E. Hallyn" , "H. Peter Anvin" , Oleksandr Tyshchenko , Amir Goldstein , John Fastabend , Martin KaFai Lau , Song Liu , Yonghong Song , KP Singh , Stanislav Fomichev , Hao Luo , Jiri Olsa , Waiman Long , Boqun Feng , John Ogness , Dietmar Eggemann , Ben Segall , Mel Gorman , Daniel Bristot de Oliveira , Valentin Schneider , Andy Lutomirski , Will Drewry , Mark Rutland , Miaohe Lin , linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org, linux-aio@kvack.org, linux-fsdevel@vger.kernel.org, linux-mm@kvack.org, bpf@vger.kernel.org, kexec@lists.infradead.org, linux-trace-kernel@vger.kernel.org, keyrings@vger.kernel.org, linux-security-module@vger.kernel.org References: <20230621091000.424843-1-j.granados@samsung.com> <20230621091000.424843-9-j.granados@samsung.com> <2023062150-outbound-quiet-2609@gregkh> <20230621131552.pqsordxcjmiopciq@localhost> From: Jiri Slaby In-Reply-To: <20230621131552.pqsordxcjmiopciq@localhost> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit On 21. 06. 23, 15:15, Joel Granados wrote: > On Wed, Jun 21, 2023 at 12:47:58PM +0200, Greg Kroah-Hartman wrote: >> On Wed, Jun 21, 2023 at 11:09:57AM +0200, Joel Granados wrote: >>> static int __init random_sysctls_init(void) >>> { >>> - register_sysctl_init("kernel/random", random_table); >>> + register_sysctl_init("kernel/random", random_table, >>> + ARRAY_SIZE(random_table)); >> >> As mentioned before, why not just do: >> >> #define register_sysctl_init(string, table) \ >> __register_sysctl_init(string, table, ARRAY_SIZE(table); > Answered you in the original mail where you suggested it. I am curious what that was, do you have a link? -- js suse labs From xen-devel-bounces@lists.xenproject.org Thu Jun 22 04:25:23 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 04:25:23 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553264.863721 (Exim 4.92) (envelope-from ) id 1qCBso-0007dw-A8; Thu, 22 Jun 2023 04:25:22 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553264.863721; Thu, 22 Jun 2023 04:25:22 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCBso-0007dp-7K; Thu, 22 Jun 2023 04:25:22 +0000 Received: by outflank-mailman (input) for mailman id 553264; Thu, 22 Jun 2023 04:25:21 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCBsn-0007dj-0y for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 04:25:21 +0000 Received: from mail-lf1-f46.google.com (mail-lf1-f46.google.com [209.85.167.46]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id cc08ec9d-10b4-11ee-b237-6b7b168915f2; Thu, 22 Jun 2023 06:25:19 +0200 (CEST) Received: by mail-lf1-f46.google.com with SMTP id 2adb3069b0e04-4f87592ecaeso5520903e87.0 for ; Wed, 21 Jun 2023 21:25:19 -0700 (PDT) Received: from ?IPV6:2a0b:e7c0:0:107::aaaa:59? ([2a0b:e7c0:0:107::aaaa:59]) by smtp.gmail.com with ESMTPSA id y7-20020a1c4b07000000b003f17848673fsm6553494wma.27.2023.06.21.21.25.16 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Wed, 21 Jun 2023 21:25:18 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: cc08ec9d-10b4-11ee-b237-6b7b168915f2 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687407919; x=1689999919; h=content-transfer-encoding:in-reply-to:from:references:cc:to :content-language:subject:user-agent:mime-version:date:message-id :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=A5vC2aRsA2WDjAiqv/C0BR7ctU6hTo76uwUZaC8vGUs=; b=Yi8rHVOzf2rQQpLloKzuJ3iZzscTQus3+5cgb/ywYFaWFSOraizR3/5LSzDEuwoHnO d/ZPTeHMfPJzfDIwrjiwZzkdKvHaGjN2KdaZ3IW1BUDmfbcxgzlqdf67LfOUNWnoNHMC XDjJOE6/vLrbPy+82ZJTcbfqXF/6sLuc7/CUYUBc0sEFAJgfJB1m6zf7zFjMDmjvDcRn d0ZaCsfyvE/IbU818dgnySj8kdT5ShSWaEBRmd6+rqErwtZ67BsrK3FDHpQ1ZfzePuNS QdxMBFqLVniQM1JTfsq/TMQVNpSdb0IEeakLaHQzPsrZmAziz51GusRWyDhJc4Syl024 Tz0Q== X-Gm-Message-State: AC+VfDzaDrY9irFe/clJg5UJd6FGkn21ufYFw7sQyLSU1NR0cZSPIzIF gUcXDSzYMODF9HmToUHrPhs= X-Google-Smtp-Source: ACHHUZ6mLLpZ2jzgBbisqW8BsQ34AJIZtXtyRLGlK/Pv18m3vLOsDnG3vORq9yee5CR+W4060ihrFA== X-Received: by 2002:a05:6512:313c:b0:4f9:566f:1aab with SMTP id p28-20020a056512313c00b004f9566f1aabmr3597524lfd.29.1687407919067; Wed, 21 Jun 2023 21:25:19 -0700 (PDT) Message-ID: <68038b83-3221-e351-909c-7f2722b612df@kernel.org> Date: Thu, 22 Jun 2023 06:25:15 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH 08/11] sysctl: Add size to register_sysctl_init Content-Language: en-US To: Joel Granados Cc: mcgrof@kernel.org, Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , x86@kernel.org, Theodore Ts'o , "Jason A. Donenfeld" , Greg Kroah-Hartman , Juergen Gross , Stefano Stabellini , Benjamin LaHaise , Alexander Viro , Christian Brauner , Jeff Layton , Chuck Lever , Jan Kara , Kees Cook , Iurii Zaikin , Alexei Starovoitov , Daniel Borkmann , Andrii Nakryiko , Balbir Singh , Eric Biederman , "Naveen N. Rao" , Anil S Keshavamurthy , "David S. Miller" , Masami Hiramatsu , Peter Zijlstra , Will Deacon , Petr Mladek , Sergey Senozhatsky , Juri Lelli , Vincent Guittot , Steven Rostedt , Andrew Morton , Mike Kravetz , Muchun Song , Naoya Horiguchi , "Matthew Wilcox (Oracle)" , David Howells , Jarkko Sakkinen , Paul Moore , James Morris , "Serge E. Hallyn" , "H. Peter Anvin" , Oleksandr Tyshchenko , Amir Goldstein , John Fastabend , Martin KaFai Lau , Song Liu , Yonghong Song , KP Singh , Stanislav Fomichev , Hao Luo , Jiri Olsa , Waiman Long , Boqun Feng , John Ogness , Dietmar Eggemann , Ben Segall , Mel Gorman , Daniel Bristot de Oliveira , Valentin Schneider , Andy Lutomirski , Will Drewry , Mark Rutland , Miaohe Lin , linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org, linux-aio@kvack.org, linux-fsdevel@vger.kernel.org, linux-mm@kvack.org, bpf@vger.kernel.org, kexec@lists.infradead.org, linux-trace-kernel@vger.kernel.org, keyrings@vger.kernel.org, linux-security-module@vger.kernel.org References: <20230621091000.424843-1-j.granados@samsung.com> <20230621091000.424843-9-j.granados@samsung.com> <36fae2b0-4cd2-58b5-cc12-9abdd5ce235b@kernel.org> <20230621131147.c3jegl4hgjplcrpu@localhost> From: Jiri Slaby In-Reply-To: <20230621131147.c3jegl4hgjplcrpu@localhost> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit On 21. 06. 23, 15:11, Joel Granados wrote: > On Wed, Jun 21, 2023 at 11:56:03AM +0200, Jiri Slaby wrote: >> On 21. 06. 23, 11:09, Joel Granados wrote: >>> In order to remove the end element from the ctl_table struct arrays, we >>> explicitly define the size when registering the targes. We add a size >>> argument to the register_sysctl_init call and pass an ARRAY_SIZE for all >>> the callers. >> >> Hi, I am missing here (or in 00/00) _why_ you are doing that. Is it by a > Not sure what happened. I used the kernels get_maintainers.pl script > together with git-send-email. These are my settings: > > " > tocmd ="`pwd`/scripts/get_maintainer.pl --nogit --nogit-fallback --norolestats --m --nol --nor" > cccmd ="`pwd`/scripts/get_maintainer.pl --nogit --nogit-fallback --norolestats --l --r --nom" > " > > Could it be that there is an error in MAINTAINERS? Sorry, I don't see what you are asking about. I was asking about motivation behind the series. That is a must in commit logs. thanks, -- js suse labs From xen-devel-bounces@lists.xenproject.org Thu Jun 22 05:23:21 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 05:23:21 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553270.863730 (Exim 4.92) (envelope-from ) id 1qCCmZ-0005vZ-Gd; Thu, 22 Jun 2023 05:22:59 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553270.863730; Thu, 22 Jun 2023 05:22:59 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCCmZ-0005vS-DR; Thu, 22 Jun 2023 05:22:59 +0000 Received: by outflank-mailman (input) for mailman id 553270; Thu, 22 Jun 2023 05:22:57 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCCmX-0005vM-AK for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 05:22:57 +0000 Received: from smtp-out1.suse.de (smtp-out1.suse.de [195.135.220.28]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id d7b4749b-10bc-11ee-b237-6b7b168915f2; Thu, 22 Jun 2023 07:22:55 +0200 (CEST) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by smtp-out1.suse.de (Postfix) with ESMTPS id 0F0592278A; Thu, 22 Jun 2023 05:22:55 +0000 (UTC) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id 758351346D; Thu, 22 Jun 2023 05:22:54 +0000 (UTC) Received: from dovecot-director2.suse.de ([192.168.254.65]) by imap2.suse-dmz.suse.de with ESMTPSA id wwvCGq7ak2QvOAAAMHmgww (envelope-from ); Thu, 22 Jun 2023 05:22:54 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: d7b4749b-10bc-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1; t=1687411375; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=7oFg/oYyAIplKu/dLMHi2+rFZpdPpCxpAB8nl5OU3Jk=; b=k9PYmy3Koexfwi0bOkFkBMSsYQLK96W7GOqxCuUTGP3IMWfMgMUGkGIK7T+MWBWJaPubi8 IyAF/gubA3KRvqZ8uYrQ+bCdNjDkEwre3fsN4x4H5Pkbc4eiLpew/tneTh5JxWfWxS9bdo UIiRxS4Z8f1RzZZBe0rhtLb/p0E82r4= Message-ID: Date: Thu, 22 Jun 2023 07:22:53 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Content-Language: en-US To: Peter Zijlstra , Per Bilse Cc: Andy Lutomirski , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , "maintainer:X86 ARCHITECTURE (32-BIT AND 64-BIT)" , "H. Peter Anvin" , Stefano Stabellini , Oleksandr Tyshchenko , "open list:X86 ENTRY CODE" , "moderated list:XEN HYPERVISOR INTERFACE" References: <20230621151442.2152425-1-per.bilse@citrix.com> <20230621164038.GM2053369@hirez.programming.kicks-ass.net> <6523f3e2-8dfc-c2dd-6d14-9e0c3ac93cc8@citrix.com> <20230621200409.GC4253@hirez.programming.kicks-ass.net> From: Juergen Gross Subject: Re: [PATCH] Updates to Xen hypercall preemption In-Reply-To: <20230621200409.GC4253@hirez.programming.kicks-ass.net> Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="------------oecT0HYsRhwt2FFO05EITBNU" This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --------------oecT0HYsRhwt2FFO05EITBNU Content-Type: multipart/mixed; boundary="------------oqu74iZ2pULV0PqV8grkLn3Y"; protected-headers="v1" From: Juergen Gross To: Peter Zijlstra , Per Bilse Cc: Andy Lutomirski , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , "maintainer:X86 ARCHITECTURE (32-BIT AND 64-BIT)" , "H. Peter Anvin" , Stefano Stabellini , Oleksandr Tyshchenko , "open list:X86 ENTRY CODE" , "moderated list:XEN HYPERVISOR INTERFACE" Message-ID: Subject: Re: [PATCH] Updates to Xen hypercall preemption References: <20230621151442.2152425-1-per.bilse@citrix.com> <20230621164038.GM2053369@hirez.programming.kicks-ass.net> <6523f3e2-8dfc-c2dd-6d14-9e0c3ac93cc8@citrix.com> <20230621200409.GC4253@hirez.programming.kicks-ass.net> In-Reply-To: <20230621200409.GC4253@hirez.programming.kicks-ass.net> --------------oqu74iZ2pULV0PqV8grkLn3Y Content-Type: multipart/mixed; boundary="------------3gp31eH3eMANbxQoI20vnwCw" --------------3gp31eH3eMANbxQoI20vnwCw Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: base64 T24gMjEuMDYuMjMgMjI6MDQsIFBldGVyIFppamxzdHJhIHdyb3RlOg0KPiBPbiBXZWQsIEp1 biAyMSwgMjAyMyBhdCAwNzoxOToyMVBNICswMDAwLCBQZXIgQmlsc2Ugd3JvdGU6DQo+PiBP biA2LzIxLzIwMjMgNTo0MCBQTSwgUGV0ZXIgWmlqbHN0cmEgd3JvdGU6DQo+Pj4gSSBkb24n dCB1bmRlcnN0YW5kIGl0IC0tIGZ1bmRhbWVudGFsbHksIGhvdyBjYW4gbGludXggc2NoZWR1 bGUgd2hlbiB0aGUNCj4+PiBndWVzdCBpc24ndCBldmVuIHJ1bm5pbmc/IEh5cGVyY2FsbCB0 cmFuc2ZlcnMgY29udHJvbCB0byB0aGUNCj4+PiBob3N0L2h5cGVydmlzb3IgYW5kIGxlYXZl cyB0aGUgZ3Vlc3Qgc3VzcGVuZGVkLg0KPj4NCj4+IEhpIFBldGVyLCBhcyBub3RlZCBpbiBl YXJsaWVyIG5vdGUgdG8gQW5keSwgdGhpcyBpcyBlc3NlbnRpYWxseSBleGlzdGluZw0KPj4g Y29kZSB0aGF0IG90aGVyIGNvbW1pdHMgaGF2ZSByZW5kZXJlZCBpbmVmZmVjdGl2ZSBvdmVy IHRpbWUuICBIZW5jZSwNCj4+IHRoZSBmaW5lciBkZXRhaWxzIG9mIGhvdyBvciB3aHkgaXQg d29ya3MgaGF2ZW4ndCBjaGFuZ2VkIHNpbmNlIGl0IHdhcw0KPj4gZmlyc3QgaW50cm9kdWNl ZC4NCj4gDQo+IFRoYXQgZG9lc24ndCBtZWFuIHlvdSBkb24ndCBoYXZlIHRvIGV4cGxhaW4g aG93IHN0dWZmIHdvcmtzLg0KPiANCj4+PiBUaGlzIG1ha2VzIG5vIHNlbnNlOyB0aGUgcmFj ZSB0aGF0IHdhcm5pbmcgd2FybnMgYWJvdXQgaXM6DQo+Pj4NCj4+PiAJQ1BVMAkJCUNQVTEN Cj4+PiAJcGVyLWNwdSB3cml0ZQ0KPj4+IAk8cHJlZW1wdC1vdXQ+DQo+Pj4gCQkJCTxwcmVl bXB0LWluPg0KPj4+IAkJCQlkby1oeXBlcmNhbGwNCj4+Pg0KPj4+IFNvIHlvdSB3cm90ZSB0 aGUgdmFsdWUgb24gQ1BVMCwgZ290IG1pZ3JhdGVkIHRvIENQVTEgYmVjYXVzZSB5b3UgaGFk DQo+Pj4gcHJlZW1wdGlvbmVkIGVuYWJsZWQsIGFuZCB0aGVuIGNvbnRpbnVlIHdpdGggdGhl IHBlcmNwdSB2YWx1ZSBvZiBDUFUxDQo+Pj4gYmVjYXVzZSB0aGF0J3Mgd2hlcmUgeW91J3Jl IGF0IG5vdy4NCj4+DQo+PiBUaGlzIGlzc3VlIHdhcyByYWlzZWQgaW50ZXJuYWxseSwgYW5k IGl0IHdhcyBub3RlZCB0aGF0IHRoZSBvbmx5IHdheQ0KPj4gZm9yIHRoZSBwcmVlbXB0aWJs ZSBjb2RlIHRvIHN3aXRjaCB0YXNrIGlzIHZpYSBhbiBpbnRlcnJ1cHQgdGhhdCBnb2VzDQo+ PiB0aHJvdWdoIHhlbl9wdl9ldnRjaG5fZG9fdXBjYWxsKCksIHdoaWNoIGhhbmRsZXMgdGhp cy4gIEknbSBoYXBweSB0bw0KPj4gY2hlY2sgd2l0aCBteSBzb3VyY2VzLCBidXQgaXQncyBo b2xpZGF5IHNlYXNvbiByaWdodCBub3cuDQo+IA0KPiBUaGVuIGl0IHNob3VsZCBoYXZlIGFs bCBzb3J0cyBvZiBjb21tZW50cyBvbiBhbmQgYSBjb21wcmVoZW5zaXZlDQo+IGNoYW5nZWxv Zy4NCj4gDQo+Pj4+IDQpIFVwZGF0ZSBpcnFlbnRyeV9leGl0X2NvbmRfcmVzY2hlZCgpIHRv IHJhd19pcnFlbnRyeV9leGl0X2NvbmRfcmVzY2hlZCgpLg0KPj4+PiBUaGUgY29kZSB3aWxs IGNhbGwgaXJxZW50cnlfZXhpdF9jb25kX3Jlc2NoZWQoKSBpZiB0aGUgZmxhZyAoYXMgbm90 ZWQNCj4+Pj4gYWJvdmUpIGlzIHNldCwgYnV0IHRoZSBkeW5hbWljIHByZWVtcHRpb24gZmVh dHVyZSB3aWxsIGxpdmVwYXRjaCB0aGF0DQo+Pj4+IGZ1bmN0aW9uIHRvIGEgbm8tb3AgdW5s ZXNzIGZ1bGwgcHJlZW1wdGlvbiBpcyBzZWxlY3RlZC4gIFRoZSBjb2RlIGlzDQo+Pj4+IHRo ZXJlZm9yZSB1cGRhdGVkIHRvIGNhbGwgcmF3X2lycWVudHJ5X2V4aXRfY29uZF9yZXNjaGVk KCkuDQo+Pj4NCj4+PiBUaGF0LCBhZ2FpbiBtZWVkcyBtb3JlIGV4cGxhbmF0aW9uLiBXaHkg ZG8geW91IHdhbnQgdGhpcyBpZiBub3QNCj4+PiBwcmVlbXB0aWJsZT8NCj4+DQo+PiBJJ20g bm90IHF1aXRlIHN1cmUgd2hhdCB5b3UgbWVhbiBoZXJlLiAgRHluYW1pYyBwcmVlbXB0aW9u DQo+PiB3aWxsIGxpdmVwYXRjaCBpcnFlbnRyeV9leGl0X2NvbmRfcmVzY2hlZCgpIHRvIGJl IGEgbm8tb3AsIHdoaWxlDQo+PiByYXdfaXJxZW50cnlfZXhpdF9jb25kX3Jlc2NoZWQoKSBy ZW1haW5zIGZ1bmN0aW9uYWwuICBUaGlzIHdhcw0KPj4gaW50cm9kdWNlZCBpbiBjb21taXQg NDYyNGExNGY0ZGFhIGxhc3QgeWVhciB3aGljaCB3YXMgc2FpZCB0byBmaXgNCj4+IHRoZSBw cm9ibGVtLCBidXQgZG9lc24ndC4gIFlvdSBtYXkgcmVtZW1iZXIsIGl0IHdhcyBzaWduZWQg b2ZmIGJ5DQo+PiB5b3Vyc2VsZiBhbmQgTWFyayBSdXRsYW5kLg0KPiANCj4gSSBkb24ndCBz ZWUgdGhlIHJlbGF0aW9uOyB3aGF0IHlvdSdyZSBkb2luZyBpcyBtYWtpbmcgZHluYW1pYyBw cmVlbXB0DQo+IHRoYXQncyBub3QgY29uZmlndXJlZCBmb3IgZnVsbCBwcmVlbXB0IGRvIHBy ZWVtcHRpb24uIFRoYXQncyB3ZWlyZCwgYW5kDQo+IGFnYWluIG5vIGNvbW1lbnRzLg0KPiAN Cj4gSSdtIHdpdGggQW5keSBpbiB0aGF0IHNpbXBseSBmb3JjaW5nIGZ1bGwgcHJlZW1wdGlv biB3b3VsZCBtYWtlIGZhciBtb3JlDQo+IHNlbnNlIC0tIGJ1dCBJJ20gc3RpbGwgbWlzc2lu ZyBzb21ldGhpbmcgZnVuZGFtZW50YWwsIHNlZSBiZWxvdy4NCj4gDQo+Pj4gWW91J3JlIGRv aW5nIDQgdGhpbmdzLCB0aGF0IHNob3VsZCBiZSA0IHBhdGNoZXMuIEFsc28sIHBsZWFzZSBn aXZlIG1vcmUNCj4+PiBjbHVlcyBmb3IgaG93IHRoaXMgaXMgc3VwcG9zZWQgdG8gd29yayBh dCBhbGwuDQo+Pg0KPj4gSSByZXNwZWN0ZnVsbHkgaGF2ZSB0byBkaXNhZ3JlZSB3aXRoIHRo YXQuICBUaGUgZml4ZXMgaGVyZSBhcmUgdmVyeQ0KPj4gY2xvc2VseSByZWxhdGVkLCBhbmQg d2UncmUgbm90IGludHJvZHVjaW5nIGFueXRoaW5nIG5ldywgd2UncmUgbWVyZWx5DQo+PiBy ZS1lbmFibGluZyBjb2RlIHdoaWNoIGhhcyBiZWVuIHJlbmRlcmVkIGluZWZmZWN0aXZlIGR1 ZSB0byBvdmVyc2lnaHRzDQo+PiBpbiBjb21taXRzIG1hZGUgYWZ0ZXIgdGhlIGNvZGUgd2Fz IGZpcnN0IGludHJvZHVjZWQuICBIb3cgdGhlIGNvZGUgaXMNCj4+IHN1cHBvc2VkIHRvIHdv cmsgaGFzbid0IGNoYW5nZWQsIGFuZCBpcyBiZXlvbmQgdGhlIHNjb3BlIG9mIHRoZXNlIGZp eGVzOw0KPj4gSSdtIHN1cmUgaXQgbXVzdCBoYXZlIGJlZW4gZGlzY3Vzc2VkIGF0IGdyZWF0 IGxlbmd0aCBhdCB0aGUgdGltZSAoY29tbWl0DQo+PiBmZGZkODExZGRkZTMpLg0KPiANCj4g WW91IGRpZG4ndCBldmVuIHNvIG11Y2ggYXMgcmVmZXJlbmNlIHRoYXQgY29tbWl0LCBub3Ig cHJvdmlkZSBhbnkgb3RoZXINCj4gZXhwbGFuYXRpb24uIEFuZCBoYXZpbmcgbm93IHJlYWQg dGhhdCBjb21taXQsIEknbSBub3QgbXVjaCBlbmxpZ2h0ZW5kLg0KPiANCj4gKkhPVyogY2Fu IGEgaHlwZXJjYWxsLCBzb21ldGhpbmcgdGhhdCBleGl0cyB0aGUgR3Vlc3QgYW5kIGhhcyB0 aGUNCj4gSG9zdC9IeXBlcnZpc29yIHJ1biBnZXQgcHJlZW1wdGVkIGluIHRoZSBHdWVzdCAt LSB0aGF0IGlzbid0IHJ1bm5pbmcuDQo+IA0KPiBPciBhcmUgeW91IGNhbGxpbmcgYXBwbGVz IHBlYXJzPw0KDQpUaGUgaHlwZXJjYWxscyB3ZSBhcmUgdGFsa2luZyBvZiBhcmUgc3luY2hy b25vdXMgb25lcy4gVGhleSBhcmUgcnVubmluZw0KaW4gdGhlIGNvbnRleHQgb2YgdGhlIHZj cHUgZG9pbmcgdGhlIGNhbGwgKGxpa2UgYSBzeXNjYWxsIGZyb20gdXNlcmxhbmQgaXMNCnJ1 bm5pbmcgaW4gdGhlIHByb2Nlc3MgY29udGV4dCkuDQoNClRoZSBoeXBlcnZpc29yIHdpbGwg cmV0dXJuIHRvIGd1ZXN0IGNvbnRleHQgZnJvbSB0aW1lIHRvIHRpbWUgYnkgbW9kaWZ5aW5n DQp0aGUgcmVnaXN0ZXJzIHN1Y2ggdGhhdCB0aGUgZ3Vlc3Qgd2lsbCBkbyB0aGUgaHlwZXJj YWxsIGFnYWluIHdpdGggZGlmZmVyZW50DQppbnB1dCB2YWx1ZXMgZm9yIHRoZSBoeXBlcnZp c29yLCByZXN1bHRpbmcgaW4gYSBwcm9wZXIgY29udGludWF0aW9uIG9mIHRoZQ0KaHlwZXJj YWxsIHByb2Nlc3NpbmcuDQoNCkl0IGlzIGFuIGF3ZnVsIGludGVyZmFjZSBhbmQgSSBhZ3Jl ZSB0aGF0IHN3aXRjaGluZyB0byBmdWxsIHByZWVtcHRpb24gaW4NCmRvbTAgc2VlbXMgdG8g YmUgdGhlIHJvdXRlIHdoaWNoIHdlIHNob3VsZCB0cnkgdG8gdGFrZS4gVGhlIGRvd25zaWRl IHdvdWxkDQpiZSB0aGF0IHNvbWUgd29ya2xvYWRzIG1pZ2h0IHNlZSB3b3JzZSBwZXJmb3Jt YW5jZSBkdWUgdG8gYmFja2VuZCBJL08NCmhhbmRsaW5nIG1pZ2h0IGdldCBwcmVlbXB0ZWQu DQoNCkp1c3QgdGhpbmtpbmcgLSBjYW4gZnVsbCBwcmVlbXB0aW9uIGJlIGVuYWJsZWQgcGVy IHByb2Nlc3M/DQoNCg0KSnVlcmdlbg0K --------------3gp31eH3eMANbxQoI20vnwCw Content-Type: application/pgp-keys; name="OpenPGP_0xB0DE9DD628BF132F.asc" Content-Disposition: attachment; filename="OpenPGP_0xB0DE9DD628BF132F.asc" Content-Description: OpenPGP public key Content-Transfer-Encoding: quoted-printable -----BEGIN PGP PUBLIC KEY BLOCK----- xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjri oyspZKOBycWxw3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2 kaV2KL9650I1SJvedYm8Of8Zd621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i 1TXkH09XSSI8mEQ/ouNcMvIJNwQpd369y9bfIhWUiVXEK7MlRgUG6MvIj6Y3Am/B BLUVbDa4+gmzDC9ezlZkTZG2t14zWPvxXP3FAp2pkW0xqG7/377qptDmrk42GlSK N4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEBAAHNHEp1ZXJnZW4gR3Jvc3Mg PGpnQHBmdXBmLm5ldD7CwHkEEwECACMFAlOMcBYCGwMHCwkIBwMCAQYVCAIJCgsE FgIDAQIeAQIXgAAKCRCw3p3WKL8TL0KdB/93FcIZ3GCNwFU0u3EjNbNjmXBKDY4F UGNQH2lvWAUy+dnyThpwdtF/jQ6j9RwE8VP0+NXcYpGJDWlNb9/JmYqLiX2Q3Tye vpB0CA3dbBQp0OW0fgCetToGIQrg0MbD1C/sEOv8Mr4NAfbauXjZlvTj30H2jO0u +6WGM6nHwbh2l5O8ZiHkH32iaSTfN7Eu5RnNVUJbvoPHZ8SlM4KWm8rG+lIkGurq qu5gu8q8ZMKdsdGC4bBxdQKDKHEFExLJK/nRPFmAuGlId1E3fe10v5QL+qHI3EIP tyfE7i9Hz6rVwi7lWKgh7pe0ZvatAudZ+JNIlBKptb64FaiIOAWDCx1SzR9KdWVy Z2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+wsB5BBMBAgAjBQJTjHCvAhsDBwsJ CAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey/HmQf/RtI7kv5A2PS4 RF7HoZhPVPogNVbC4YA6lW7DrWf0teC0RR3MzXfy6pJ+7KLgkqMlrAbN/8Dvjoz7 8X+5vhH/rDLa9BuZQlhFmvcGtCF8eR0T1v0nC/nuAFVGy+67q2DH8As3KPu0344T BDpAvr2uYM4tSqxK4DURx5INz4ZZ0WNFHcqsfvlGJALDeE0LhITTd9jLzdDad1pQ SToCnLl6SBJZjDOX9QQcyUigZFtCXFst4dlsvddrxyqT1f17+2cFSdu7+ynLmXBK 7abQ3rwJY8SbRO2iRulogc5vr/RLMMlscDAiDkaFQWLoqHHOdfO9rURssHNN8WkM nQfvUewRz80hSnVlcmdlbiBHcm9zcyA8amdyb3NzQG5vdmVsbC5jb20+wsB5BBMB AgAjBQJTjHDXAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/ Ey8PUQf/ehmgCI9jB9hlgexLvgOtf7PJnFOXgMLdBQgBlVPO3/D9R8LtF9DBAFPN hlrsfIG/SqICoRCqUcJ96Pn3P7UUinFG/I0ECGF4EvTE1jnDkfJZr6jrbjgyoZHi w/4BNwSTL9rWASyLgqlA8u1mf+c2yUwcGhgkRAd1gOwungxcwzwqgljf0N51N5Jf VRHRtyfwq/ge+YEkDGcTU6Y0sPOuj4Dyfm8fJzdfHNQsWq3PnczLVELStJNdapwP OoE+lotufe3AM2vAEYJ9rTz3Cki4JFUsgLkHFqGZarrPGi1eyQcXeluldO3m91NK /1xMI3/+8jbO0tsn1tqSEUGIJi7ox80eSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1 c2UuZGU+wsB5BBMBAgAjBQJTjHDrAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgEC F4AACgkQsN6d1ii/Ey+LhQf9GL45eU5vOowA2u5N3g3OZUEBmDHVVbqMtzwlmNC4 k9Kx39r5s2vcFl4tXqW7g9/ViXYuiDXb0RfUpZiIUW89siKrkzmQ5dM7wRqzgJpJ wK8Bn2MIxAKArekWpiCKvBOB/Cc+3EXE78XdlxLyOi/NrmSGRIov0karw2RzMNOu 5D+jLRZQd1Sv27AR+IP3I8U4aqnhLpwhK7MEy9oCILlgZ1QZe49kpcumcZKORmzB TNh30FVKK1EvmV2xAKDoaEOgQB4iFQLhJCdP1I5aSgM5IVFdn7v5YgEYuJYx37Io N1EblHI//x/e2AaIHpzK5h88NEawQsaNRpNSrcfbFmAg987ATQRTjHAWAQgAyzH6 AOODMBjgfWE9VeCgsrwH3exNAU32gLq2xvjpWnHIs98ndPUDpnoxWQugJ6MpMncr 0xSwFmHEgnSEjK/PAjppgmyc57BwKII3sV4on+gDVFJR6Y8ZRwgnBC5mVM6JjQ5x Dk8WRXljExRfUX9pNhdE5eBOZJrDRoLUmmjDtKzWaDhIg/+1Hzz93X4fCQkNVbVF LELU9bMaLPBG/x5q4iYZ2k2ex6d47YE1ZFdMm6YBYMOljGkZKwYde5ldM9mo45mm we0icXKLkpEdIXKTZeKDO+Hdv1aqFuAcccTg9RXDQjmwhC3yEmrmcfl0+rPghO0I v3OOImwTEe4co3c1mwARAQABwsBfBBgBAgAJBQJTjHAWAhsMAAoJELDendYovxMv Q/gH/1ha96vm4P/L+bQpJwrZ/dneZcmEwTbe8YFsw2V/Buv6Z4Mysln3nQK5ZadD 534CF7TDVft7fC4tU4PONxF5D+/tvgkPfDAfF77zy2AH1vJzQ1fOU8lYFpZXTXIH b+559UqvIB8AdgR3SAJGHHt4RKA0F7f5ipYBBrC6cyXJyyoprT10EMvU8VGiwXvT yJz3fjoYsdFzpWPlJEBRMedCot60g5dmbdrZ5DWClAr0yau47zpWj3enf1tLWaqc suylWsviuGjKGw7KHQd3bxALOknAp4dN3QwBYCKuZ7AddY9yjynVaD5X7nF9nO5B jR/i1DG86lem3iBDXzXsZDn8R38=3D =3D2wuH -----END PGP PUBLIC KEY BLOCK----- --------------3gp31eH3eMANbxQoI20vnwCw-- --------------oqu74iZ2pULV0PqV8grkLn3Y-- --------------oecT0HYsRhwt2FFO05EITBNU Content-Type: application/pgp-signature; name="OpenPGP_signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="OpenPGP_signature" -----BEGIN PGP SIGNATURE----- wsB5BAABCAAjFiEEhRJncuj2BJSl0Jf3sN6d1ii/Ey8FAmST2q4FAwAAAAAACgkQsN6d1ii/Ey/A JQf/ePzalWyngzTPEu55x8mVEDQtNwP94zQn5HO0JG9LRXt10cZp/7DL6n+TXPFRIdt3BKp5u9jE eyFV7bnui61LRR0SHmy12FhFfiKHCD43zaiHys6/L+cnkoV8wqLDZlC5GAUol6OT5auQ4+fD6NZ6 QVIrlpCQ54Eok9LkOpVXqe/3oA6/YOJx/92YpGp/YYi1yhy7v6F9NrT4Pb0fgAbT/xuP1kyBg6AE STsrSS1kIRj3UXFJpB9zMbHvrGqc+JKJQhshiuoNNN8fNI5efozHlb2xKP5E2NuqMdpOmDxf5tJK oZuRbmBPmYTFUbPmxoKVWAgCGHLnP/83ax7BjlhceQ== =56Y0 -----END PGP SIGNATURE----- --------------oecT0HYsRhwt2FFO05EITBNU-- From xen-devel-bounces@lists.xenproject.org Thu Jun 22 05:40:51 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 05:40:51 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553277.863741 (Exim 4.92) (envelope-from ) id 1qCD3m-0008RS-1h; Thu, 22 Jun 2023 05:40:46 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553277.863741; Thu, 22 Jun 2023 05:40:46 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCD3l-0008RL-Uf; Thu, 22 Jun 2023 05:40:45 +0000 Received: by outflank-mailman (input) for mailman id 553277; Thu, 22 Jun 2023 05:40:45 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCD3k-0008RF-VC for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 05:40:45 +0000 Received: from mail-lf1-x12e.google.com (mail-lf1-x12e.google.com [2a00:1450:4864:20::12e]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 53d641d7-10bf-11ee-b237-6b7b168915f2; Thu, 22 Jun 2023 07:40:43 +0200 (CEST) Received: by mail-lf1-x12e.google.com with SMTP id 2adb3069b0e04-4f4b2bc1565so9104066e87.2 for ; Wed, 21 Jun 2023 22:40:43 -0700 (PDT) Received: from [127.0.0.1] (dynamic-077-191-235-040.77.191.pool.telefonica.de. [77.191.235.40]) by smtp.gmail.com with ESMTPSA id d22-20020a1c7316000000b003f80946116dsm17773724wmb.45.2023.06.21.22.40.40 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Wed, 21 Jun 2023 22:40:41 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 53d641d7-10bf-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687412442; x=1690004442; h=content-transfer-encoding:mime-version:message-id:references :in-reply-to:subject:cc:to:from:date:from:to:cc:subject:date :message-id:reply-to; bh=z5xLOgxc5yMmFB/xqkfPkgAUKFtQLoPEIBnqwRG9wrE=; b=jYm+kmGqKaSQjS88IKrNZ+9qWwZb4bzsJzZE5oCs8oJ5udAJqOKgvF4np3iAz35QlO opBvnyjViyJaO1Jae0oL5TCzc9oieIbUCytZUMTdC7Mk4FPfPBAyetS08ZFB94dsyK8q IIAi9NPtf3BMvq2X/eiOhb3RGW6vkt4vdHDlbzomGPDEEzb40pgNWwvxYlWFl/up77ip zssrlwrl1fRVcHpERrVb4f/O7zH3YX4f4vfSiZi7bgNQ+TjQZfZs1Ew+5pEQrMqeV3qk nprdgpvFwuFRXdAE2Nx/aJbSuGUJfgKpd4dRCpU2+1jmRQx2AObP5n4nnm2R+fhavt78 6A2g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687412442; x=1690004442; h=content-transfer-encoding:mime-version:message-id:references :in-reply-to:subject:cc:to:from:date:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=z5xLOgxc5yMmFB/xqkfPkgAUKFtQLoPEIBnqwRG9wrE=; b=M6m/VGqLmSkeBgDB5m8YHYUabDn0mxz7LwKMRZ5x2DbywETWOdtNRr+3VZJcHSkTQJ /G4zsJTWwtmYIRUe+LXLTZNcPxBeCq8R9QRGtOOBE6thdpNxKmKD1/+G8laFYKPmpoUZ 58BP+3IC1N68n3K0+Fa0ud8fRwx2hCmvhZ0wssHyoI0++fcf0OqoJRUoMeyDQ4Hgf3w0 3fNSF3nZaTdX2/Pr2GesqKN4OntOlsxjmf+k3U4aSwNJ4HboekKlSc++uC+DgmBkpiQh V10GotNYzW3YzKW/AxcgcieSHTyN6767DoY8piFLVbMmTDwOfTLUBUFkoKJX2586QwgV qFsA== X-Gm-Message-State: AC+VfDzUgTFERLhXHqFLMkXskcc1LtpZPRnBhZua2RAgF7QLY9yjQ7U3 X1kKo/d+yfkhos+nwtw78o4= X-Google-Smtp-Source: ACHHUZ5gW7KeklYhgZOV3gDoeY9HwOEt6afLaSv7fml+weuZZE2JHhoRm1bGUB6n/dPmb4JnYQam3g== X-Received: by 2002:a19:9151:0:b0:4f8:6b82:56c4 with SMTP id y17-20020a199151000000b004f86b8256c4mr7278192lfj.33.1687412441768; Wed, 21 Jun 2023 22:40:41 -0700 (PDT) Date: Thu, 22 Jun 2023 05:40:36 +0000 From: Bernhard Beschow To: qemu-devel@nongnu.org, Joel Upham CC: Stefano Stabellini , Anthony Perard , Paul Durrant , "Michael S. Tsirkin" , Marcel Apfelbaum , Paolo Bonzini , Richard Henderson , Eduardo Habkost , xen-devel@lists.xenproject.org Subject: Re: [PATCH v1 20/23] xen platform: unplug ahci object In-Reply-To: <9b8183903cbf20db4e2f0dafda9e0ed271a86a8e.1687278381.git.jupham125@gmail.com> References: <9b8183903cbf20db4e2f0dafda9e0ed271a86a8e.1687278381.git.jupham125@gmail.com> Message-ID: MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Am 20=2E Juni 2023 17:24:54 UTC schrieb Joel Upham = : >This will unplug the ahci device when the Xen driver calls for an unplug= =2E >This has been tested to work in linux and Windows guests=2E >When q35 is detected, we will remove the ahci controller >with the hard disks=2E In the libxl config, cdrom devices >are put on a seperate ahci controller=2E This allows for 6 cdrom >devices to be added, and 6 qemu hard disks=2E Does this also work with KVM Xen emulation? If so, the QEMU manual should = be updated accordingly in this patch since it explicitly rules out Q35 due = to missing AHCI unplug: https://gitlab=2Ecom/qemu-project/qemu/-/blob/stabl= e-8=2E0/docs/system/i386/xen=2Erst?plain=3D1&ref_type=3Dheads#L51 Best regards, Bernhard > > >Signed-off-by: Joel Upham >--- > hw/i386/xen/xen_platform=2Ec | 19 ++++++++++++++++++- > hw/pci/pci=2Ec | 17 +++++++++++++++++ > include/hw/pci/pci=2Eh | 3 +++ > 3 files changed, 38 insertions(+), 1 deletion(-) > >diff --git a/hw/i386/xen/xen_platform=2Ec b/hw/i386/xen/xen_platform=2Ec >index 57f1d742c1=2E=2E0375337222 100644 >--- a/hw/i386/xen/xen_platform=2Ec >+++ b/hw/i386/xen/xen_platform=2Ec >@@ -34,6 +34,7 @@ > #include "sysemu/block-backend=2Eh" > #include "qemu/error-report=2Eh" > #include "qemu/module=2Eh" >+#include "include/hw/i386/pc=2Eh" > #include "qom/object=2Eh" >=20 > #ifdef CONFIG_XEN >@@ -223,6 +224,12 @@ static void unplug_disks(PCIBus *b, PCIDevice *d, vo= id *opaque) > if (flags & UNPLUG_NVME_DISKS) { > object_unparent(OBJECT(d)); > } >+ break; >+ >+ case PCI_CLASS_STORAGE_SATA: >+ if (!aux) { >+ object_unparent(OBJECT(d)); >+ } >=20 > default: > break; >@@ -231,7 +238,17 @@ static void unplug_disks(PCIBus *b, PCIDevice *d, vo= id *opaque) >=20 > static void pci_unplug_disks(PCIBus *bus, uint32_t flags) > { >- pci_for_each_device(bus, 0, unplug_disks, &flags); >+ PCIBus *q35 =3D find_q35(); >+ if (q35) { >+ /* When q35 is detected, we will remove the ahci controller >+ * with the hard disks=2E In the libxl config, cdrom devices >+ * are put on a seperate ahci controller=2E This allows for 6 cdrom >+ * devices to be added, and 6 qemu hard disks=2E >+ */ >+ pci_function_for_one_bus(bus, unplug_disks, &flags); >+ } else { >+ pci_for_each_device(bus, 0, unplug_disks, &flags); >+ } > } >=20 > static void platform_fixed_ioport_writew(void *opaque, uint32_t addr, ui= nt32_t val) >diff --git a/hw/pci/pci=2Ec b/hw/pci/pci=2Ec >index 1cc7c89036=2E=2E8eac3d751a 100644 >--- a/hw/pci/pci=2Ec >+++ b/hw/pci/pci=2Ec >@@ -1815,6 +1815,23 @@ void pci_for_each_device_reverse(PCIBus *bus, int = bus_num, > } > } >=20 >+void pci_function_for_one_bus(PCIBus *bus, >+ void (*fn)(PCIBus *b, PCIDevice *d, void *opaq= ue), >+ void *opaque) >+{ >+ bus =3D pci_find_bus_nr(bus, 0); >+ >+ if (bus) { >+ PCIDevice *d; >+ >+ d =3D bus->devices[PCI_DEVFN(4,0)]; >+ if (d) { >+ fn(bus, d, opaque); >+ return; >+ } >+ } >+} >+ > void pci_for_each_device_under_bus(PCIBus *bus, > pci_bus_dev_fn fn, void *opaque) > { >diff --git a/include/hw/pci/pci=2Eh b/include/hw/pci/pci=2Eh >index e6d0574a29=2E=2Ec53e21082a 100644 >--- a/include/hw/pci/pci=2Eh >+++ b/include/hw/pci/pci=2Eh >@@ -343,6 +343,9 @@ void pci_for_each_device_under_bus(PCIBus *bus, > void pci_for_each_device_under_bus_reverse(PCIBus *bus, > pci_bus_dev_fn fn, > void *opaque); >+void pci_function_for_one_bus(PCIBus *bus, >+ void (*fn)(PCIBus *bus, PCIDevice *d, void *opa= que), >+ void *opaque); > void pci_for_each_bus_depth_first(PCIBus *bus, pci_bus_ret_fn begin, > pci_bus_fn end, void *parent_state); > PCIDevice *pci_get_function_0(PCIDevice *pci_dev); From xen-devel-bounces@lists.xenproject.org Thu Jun 22 06:07:51 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 06:07:51 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553282.863751 (Exim 4.92) (envelope-from ) id 1qCDTj-0002lE-49; Thu, 22 Jun 2023 06:07:35 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553282.863751; Thu, 22 Jun 2023 06:07:35 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCDTj-0002l7-0N; Thu, 22 Jun 2023 06:07:35 +0000 Received: by outflank-mailman (input) for mailman id 553282; Thu, 22 Jun 2023 06:07:34 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCDTi-0002kx-1F; Thu, 22 Jun 2023 06:07:34 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCDTh-0006L9-NZ; Thu, 22 Jun 2023 06:07:33 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCDTh-0002GE-Cw; Thu, 22 Jun 2023 06:07:33 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qCDTh-00006Z-CJ; Thu, 22 Jun 2023 06:07:33 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=JRLx5krB/JA6GNhxIyJ5tZcGDI65eLonR0Rayt7WdcI=; b=qNJb7yavxE8mr0+4f6/zjCk0qD mHcAhyNqp8aIjLT6BrnSVVqG5UVxoNpNA2BFgyZexaRGjRgGJA49DWZdCyka3lzJyNfZYsyC/LyuP p8Ei3U4TMblK9WiTcQVhEpKi2ZQz7Swg6scY3o58kI9e0TojtKKNeRKV1w1JwakfNh8k=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable-smoke test] 181547: tolerable all pass - PUSHED X-Osstest-Failures: xen-unstable-smoke:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking xen-unstable-smoke:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking xen-unstable-smoke:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking xen-unstable-smoke:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking xen-unstable-smoke:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: xen=5c84f1f636981dab5341e84aaba8d4dd00bbc2cb X-Osstest-Versions-That: xen=7a25a1501ca941c3e01b0c4e624ace05417f1587 From: osstest service owner Date: Thu, 22 Jun 2023 06:07:33 +0000 flight 181547 xen-unstable-smoke real [real] http://logs.test-lab.xenproject.org/osstest/logs/181547/ Failures :-/ but no regressions. Tests which did not succeed, but are not blocking: test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-armhf-armhf-xl 15 migrate-support-check fail never pass test-armhf-armhf-xl 16 saverestore-support-check fail never pass version targeted for testing: xen 5c84f1f636981dab5341e84aaba8d4dd00bbc2cb baseline version: xen 7a25a1501ca941c3e01b0c4e624ace05417f1587 Last test of basis 181476 2023-06-17 04:00:28 Z 5 days Failing since 181504 2023-06-19 11:00:26 Z 2 days 10 attempts Testing same since 181541 2023-06-21 22:01:56 Z 0 days 2 attempts ------------------------------------------------------------ People who touched revisions under test: Alistair Francis Andrew Cooper Anthony PERARD Henry Wang Jan Beulich Jiamei Xie Julien Grall Michal Orzel Oleksii Kurochko Roger Pau Monné Shawn Anastasio Stefano Stabellini Stefano Stabellini jobs: build-arm64-xsm pass build-amd64 pass build-armhf pass build-amd64-libvirt pass test-armhf-armhf-xl pass test-arm64-arm64-xl-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-libvirt pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Pushing revision : To xenbits.xen.org:/home/xen/git/xen.git 7a25a1501c..5c84f1f636 5c84f1f636981dab5341e84aaba8d4dd00bbc2cb -> smoke From xen-devel-bounces@lists.xenproject.org Thu Jun 22 06:32:23 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 06:32:23 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553289.863761 (Exim 4.92) (envelope-from ) id 1qCDrM-0006DQ-2Z; Thu, 22 Jun 2023 06:32:00 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553289.863761; Thu, 22 Jun 2023 06:32:00 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCDrL-0006DJ-VT; Thu, 22 Jun 2023 06:31:59 +0000 Received: by outflank-mailman (input) for mailman id 553289; Thu, 22 Jun 2023 06:31:59 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCDrL-0006D9-Ai; Thu, 22 Jun 2023 06:31:59 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCDrL-0006u1-3B; Thu, 22 Jun 2023 06:31:59 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCDrK-0003VQ-OX; Thu, 22 Jun 2023 06:31:58 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qCDrK-0007UH-O1; Thu, 22 Jun 2023 06:31:58 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=wxOsA5QRt0ZePQEpDTK6Vw3q/Yv78LFr3c5lECpVDso=; b=HeBMXJIecs3+XgFrH3/ZsHlFSJ Mz1fyqF53g7RhTa6KXl0rtxZ3lKDf5Tc55Dt4sbJrsU3uXfxV1oN67LLDDCr7UR0JWryipn3Eb6Ra ZyTBQfvPjwQQ4bOPKgVUKrTOOUfCpGCOyIFToBvNMRM5zJJsqwXA6bd31YvT8jZYZe3A=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [linux-linus test] 181539: trouble: blocked/broken/fail/pass X-Osstest-Failures: linux-linus:build-armhf::broken:regression linux-linus:build-armhf:host-install(4):broken:regression linux-linus:test-armhf-armhf-examine:build-check(1):blocked:nonblocking linux-linus:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking linux-linus:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking linux-linus:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking linux-linus:test-armhf-armhf-xl:build-check(1):blocked:nonblocking linux-linus:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking linux-linus:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking linux-linus:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking linux-linus:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking linux-linus:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking linux-linus:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking linux-linus:build-armhf-libvirt:build-check(1):blocked:nonblocking linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-raw:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-qcow2:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: linux=e660abd551f1172e428b4e4003de887176a8a1fd X-Osstest-Versions-That: linux=6c538e1adbfc696ac4747fb10d63e704344f763d From: osstest service owner Date: Thu, 22 Jun 2023 06:31:58 +0000 flight 181539 linux-linus real [real] http://logs.test-lab.xenproject.org/osstest/logs/181539/ Failures and problems with tests :-( Tests which did not succeed and are blocking, including tests which could not be run: build-armhf broken build-armhf 4 host-install(4) broken REGR. vs. 180278 Tests which did not succeed, but are not blocking: test-armhf-armhf-examine 1 build-check(1) blocked n/a test-armhf-armhf-libvirt 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-qcow2 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-raw 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a test-armhf-armhf-xl-arndale 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit1 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-multivcpu 1 build-check(1) blocked n/a test-armhf-armhf-xl-rtds 1 build-check(1) blocked n/a test-armhf-armhf-xl-vhd 1 build-check(1) blocked n/a build-armhf-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 180278 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 180278 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 180278 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 180278 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 180278 test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qcow2 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass version targeted for testing: linux e660abd551f1172e428b4e4003de887176a8a1fd baseline version: linux 6c538e1adbfc696ac4747fb10d63e704344f763d Last test of basis 180278 2023-04-16 19:41:46 Z 66 days Failing since 180281 2023-04-17 06:24:36 Z 66 days 124 attempts Testing same since 181529 2023-06-21 02:27:06 Z 1 days 2 attempts ------------------------------------------------------------ 2743 people touched revisions under test, not listing them all jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf broken build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt blocked build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl blocked test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-freebsd11-amd64 pass test-amd64-amd64-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale blocked test-amd64-amd64-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 blocked test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 blocked test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine blocked test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt blocked test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu blocked test-amd64-amd64-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-amd64-pygrub pass test-amd64-amd64-libvirt-qcow2 pass test-armhf-armhf-libvirt-qcow2 blocked test-amd64-amd64-libvirt-raw pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw blocked test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-amd64-xl-vhd pass test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd blocked ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary broken-job build-armhf broken broken-step build-armhf host-install(4) Not pushing. (No revision log; it would be 349240 lines long.) From xen-devel-bounces@lists.xenproject.org Thu Jun 22 07:45:49 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 07:45:49 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553296.863771 (Exim 4.92) (envelope-from ) id 1qCF0U-00057E-DZ; Thu, 22 Jun 2023 07:45:30 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553296.863771; Thu, 22 Jun 2023 07:45:30 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCF0U-000577-9w; Thu, 22 Jun 2023 07:45:30 +0000 Received: by outflank-mailman (input) for mailman id 553296; Thu, 22 Jun 2023 07:45:29 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCF0T-00056v-1S for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 07:45:29 +0000 Received: from EUR05-AM6-obe.outbound.protection.outlook.com (mail-am6eur05on20619.outbound.protection.outlook.com [2a01:111:f400:7e1b::619]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id bfdc8eb2-10d0-11ee-8611-37d641c3527e; Thu, 22 Jun 2023 09:45:25 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by PAWPR04MB9910.eurprd04.prod.outlook.com (2603:10a6:102:380::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.24; Thu, 22 Jun 2023 07:45:23 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6521.024; Thu, 22 Jun 2023 07:45:23 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: bfdc8eb2-10d0-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=YwyCCFqu4Jp322Ado+B+ntjxo24kSEz+3/Grc580QpzkqKr7ZNrlgId5ASF6QZ1VEFz0kk4nsB6qLh/OkXtqlGKlivRWaTo3x5Eq4M1Fz6PSh447qJ+ecU8y/D44CxU3DIDtzNJdibHkuj9Ik48+YYgUWOAvAnMKA1eqb1n3ssD0py56BaUfXWo3NugsJ8nsgc8ejFGQHuYtrkXEtn2GYhuf47z/TH9YwSxhu5Rq7pLxAOG0wqIHapLOdGTgAIfzfrXR7zkietSQHw/3ckldWuChRwNq8mTIK6Yg2nF0FJs1ezpM5ManHo5pCLa4iVZbOIimHFduErvizIyThOszuw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=uK9yz4PV+fxnM5auYG/u4lO7vuM4ivFQCsoIjObR5T4=; b=Ki7vm1doBOaaWTRAgGzIJ8eB05oGy02GomlprxzuefCXMbI8qmX6wneYYjivx5f81+y8Erb32xtvjDtVZJ4ISjI8/iurki+PuVcJrbUcmE6Tr1uxPTO7Dcmvjp21z8v3TkWDsg/GYMQR7tB8Xmc/lTqJnUFWxt4Q7m11qKd8k3zbQsSHeGddnAyRpCsISmYTHZx+FIzvM7osJVdN9YqwGZvY7uxoespu11CGsj3JqB5yFI8cCUqp0F/LF2CQG7N0hnCF2YvmcRbg8fCwMn91FN2gI3xs59vfleQKtgfreBmxA54vGKLv2dY9yfZFjJucXoMyRTvM0JCtf3VP9TfRnQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=uK9yz4PV+fxnM5auYG/u4lO7vuM4ivFQCsoIjObR5T4=; b=kgOu4cWNOIpgQHdBflqyqySAnsznu7z/ANtECAFEUrs5rziDLYwOljuB5+cyalM0/Kor2JPlGFz0C4Ab79GSlHJNmGCAik+wIjciSjrIbFvm8HVu4Gyk+wLhcAKZoLrNoi24n2w9KbA2wKOLW8OFi76L6rD0FomnBZsYMLRdP3oqNhD33m84Mi4C0EZnOn6JcJ/gw61IS32xTjtZJHSjlvBZTyiagVOvC+Dv2sP1WgYH5QGUyF8YAgzU1MGXoNFpraM1gbEoxC4OzCJ0Oanvx301p3eNxoe8j2d/gfKanRtIgzzCWMl+TJL3kMu2C4D6cvRAEeJE8b/cBkdXgOl76w== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <4ab5fb54-34d7-c601-1c45-abef19bb5e84@suse.com> Date: Thu, 22 Jun 2023 09:45:21 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH] docs/misra: add Rules 8.2, 8.3, 8.14 Content-Language: en-US To: Stefano Stabellini Cc: julien@xen.org, andrew.cooper3@citrix.com, roger.pau@citrix.com, bertrand.marquis@arm.com, roberto.bagnara@bugseng.com, Stefano Stabellini , xen-devel@lists.xenproject.org References: <20230621012618.2661337-1-sstabellini@kernel.org> <98a2acc7-956e-d97a-ac2f-5d7368f2cdc3@suse.com> From: Jan Beulich In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR3P281CA0089.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:1f::18) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|PAWPR04MB9910:EE_ X-MS-Office365-Filtering-Correlation-Id: 1840fdd3-6c85-4cc9-0a7f-08db72f4a2e9 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: MgSrjlxrDm61B8yG32jqTkdW1jCjZnxxRmlhc8TX+XB9KxM2UISGzZemMRc64uCcRm/xGTV+ZjB2CjCeeb9rUgeeGGcb4CdNB0PceQNujhOW/MNp31Bj2ZK7oHO6Y6QYBag4IxaBfDHONdQen7vvcW7t3coblEcNhvNXRxDco4nac6jTczeWk/mrESgM0jm/8Kvf2gmirTuIs/tyasErRBFJfOPl3VqwrI6Cino+84bx14ckzHM8wUyCbpF+qO/wjV4IVudwLpbpWraXzawdeh26nAXdTJEFukgvk8CvT8jUsUDd2Ix+/cM/DKY+T3oK6RxH1NwhbfzRk1RfC3Chu3Ycoz8CmtlAL5FIeMfCawHnAlDPWxVyqZ7DXdb1SBum4aPuW4e2EGDGwIuoXlWlnTGIc3Mi3RpbN4MCKK/xFVrhHO+iRB8NnEdvuwMeM5Q06D/HC62MyW3i9vvuEEnPkm7QcNswRPnjFR/Jphk3NMja3+qY/Sh9DoJvE/p3yKpS0HlH1HL1xkg4s6+FYgCU4Meml6YF0Q7czZDUelE3s46f9FlBoHwd7fsXcuh+lwAyd7wY4RKmauHPBs/mzYLpqJZPNHgkjjEnO5RZMzQSoznbrg+KZNw6SBNn5J8+ZWlCRDsKmi82YWXTFDYFN2l4DzO553FNLpxHnHxbDJep6M+fHEBziZy5PMGJV7ctEJGT X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(346002)(366004)(376002)(39860400002)(136003)(396003)(451199021)(478600001)(31686004)(6486002)(66476007)(66556008)(6916009)(2616005)(4326008)(66946007)(2906002)(5660300002)(31696002)(66899021)(83380400001)(53546011)(86362001)(38100700002)(8936002)(8676002)(26005)(6512007)(41300700001)(6506007)(186003)(316002)(36756003)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?cmVGR2FTWjZxWDlmTVpSUE1VaTIvaFNnbEFmQlgvVHhKazhyOWZKNy9udXNn?= =?utf-8?B?ODh3cDdCWmE4ZmQvK2JMaGQ5ZXFlMnhjaFNqZDFxSjRZN2Y3dG5FZEFOSWJ6?= =?utf-8?B?Q2N0ZEM1eCtMQTBHN0tOdmIrd08rZVB4bkREUXphakpodG00K29TQ3A3OGdZ?= =?utf-8?B?YjNzWWc2b3ZwWG9DanZLVktUVE5CeFdjalh2WCtnUHhodnNTWUVibTFyRGRL?= =?utf-8?B?VTBydHhQbjlOa2dtV1AwYWJjaVllNzA2UGNkZ2w3VlRkWm95bDc0cVI2T1pB?= =?utf-8?B?am95UExCV0t6cEl3TFpsT1ZzUFJLS1ptaU4zV0QrcVhkRXZMME9nbHdYR1J1?= =?utf-8?B?NFdVaU1SWFZWZDNtS3g3V3FxcWsvRmN5KytuVWJyaDdtYm84VGFBTmFLM3pj?= =?utf-8?B?MmVYL1dBK1MrZXdqR2VVOCtiZ0ZTWG14ZDE4czRBbVJDWU1JTUpCTmxNcVBK?= =?utf-8?B?V2xBL2t1cHJPcGdkUWZvc2ZSb3YweitsNjZmY0ZTUmc3NE9pVkhOMFFISTVk?= =?utf-8?B?aDJlT0M2V2I2YVFBMG8yWFBCR3BqUXpaY1d5WVRlc0FYQlFmZkt5UnZkWjVI?= =?utf-8?B?RytHa1c2Vi9WZTRDVk9RQjdWOHBaMExDR3p3QVpCUTRIQlF1V21nbk12eW5X?= =?utf-8?B?K2hRYy9uck1ndGNVK0w0UnhaWkMvRDE3bHZLWEpFL3NweGIvVzRrTldCQnBK?= =?utf-8?B?NWtRbkRoK3plNk40QVI0Qnd6ekdmWng3b0VZK1JKbnloR3lHckw5R00zblEr?= =?utf-8?B?WVlNSVpqTWh5K2dLR2tsdHQ2eCtzYUY0Qll0KzJLd202Y0lWWmhHMXF0MFJH?= =?utf-8?B?djUyTVJiQ2FEMzlDRk5RWGdMbjlwRnBxNnI2WXdqL3NUT0sxVUJ3NUFwRmRB?= =?utf-8?B?TUhzblJMY2tMWm1CUmZwNnJ6a1ZDRkRoYml2OHlnamZOUGNwTEpYT3JwT1Vq?= =?utf-8?B?cmVXN1VqYno3MlFNMUVhSE5TYWtWRVRTQXEyd2syV1Q2L3ByNUJmTGdMQ0tV?= =?utf-8?B?RCtiMHJqY292NUNlbDRVdEF2QUVWMDVmL3Nja2xqU3kyQzQrVGxGeGtydWNY?= =?utf-8?B?eVovNW1uSThlcVlhMVVDN0Z4Z0tLRnhlU2wyRDBDRTJJcHBOcmJ1aUVwdUlX?= =?utf-8?B?RkFiSjJ5STQyZHNiaTA1RG16cW5heUlrb2g4bEYyVitVMHJIVm14YXU0UmM0?= =?utf-8?B?SHlrRFFuU1U0Z3k2Nk1PcnI3aXNMZ3RCemZsOENiTkdMVUl2SGtUaUJRdkF0?= =?utf-8?B?UzREZTZZekJFdGlvcVBVOGtqY0lGSHExMjdvcVAzdzExZVliL1YyVWRlVVdy?= =?utf-8?B?YnU5SGNhZGVlS1RpS1RTbHJhb2NVNHJPLzExcmRIVFNJTlYwZWhYS3Urckkv?= =?utf-8?B?Ry9teFlTdnhubUh5LzJBbU5WOU93dGNvTXF0bkltZ2VrajZpNlM3NUFNNEJW?= =?utf-8?B?VkRQVU1oemdBQjFmV1lQVWVSWit6NTZZcVhjRFpHdlMyb2VYLzdXbVFHRHBY?= =?utf-8?B?aEpBSzEraytuTlJrVmNob1dDd3ZvWFJWaTA2U2U3TmZhTmwwMlVXTlMxSzcz?= =?utf-8?B?TUtXM0k3WVJHME1qbUc4TGRpUm1OZlBjU0xQc0VMRUdTdDNvUkY4all2a2Vz?= =?utf-8?B?c21kWmdYa2xnWkQ1YStKTzYvU3MvbWJtUGtydDNLckUvK2NBS21rcndYZGRt?= =?utf-8?B?dkNhN2NJVGp6WWRaYWdZaE9WcUpOYnVpOU1VblZybFo3K1BTSDVoMENVbnJR?= =?utf-8?B?UmVjSThzZXAzOUdzaEVCcFZmMU5RQ01jbjNiUlNpMjY5ZG9PQ0VmdHdVM0Ew?= =?utf-8?B?OGRJZGU2Si8vbis3MTVrZmxOWVRaNVFXOG05YlVVeXg4dmd6cTY2UVFPN2Va?= =?utf-8?B?VUV3R09wN2JaMisvYW1vWnFjTkk2RHBmQXJ4WDE0dkMyVS9NV3g4ZnVXaGpj?= =?utf-8?B?d2NwTHY2UjU0dWtzaWRHQnVnZ3h0Tm1JUFJ3WnUyc1h5VE05YmtzT2pkUDI0?= =?utf-8?B?bG9KMDB4ZlY2ZU55VDlDNTFBWXFPQVpoTlpDd3R3YmNpQzFKbHpMZy8vTVhJ?= =?utf-8?B?OWgwRXNaNEs2Zkh0Z2pKdU5udXZ6Nms0WDR4ckJ6Zi9ZREltNnBuTS8wSjZ0?= =?utf-8?Q?PGHlB3aStylKG4ZL+Plepy1qO?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 1840fdd3-6c85-4cc9-0a7f-08db72f4a2e9 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 22 Jun 2023 07:45:23.5088 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: YxMrt5sIcyiVBq55De3xtrZ3IW+G0oBaRG/rnR7HtkVZmlPSIy4nkIoKvYNBDcUAeOrJpobOk/lHAbecUqj6VQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAWPR04MB9910 On 21.06.2023 23:38, Stefano Stabellini wrote: > On Wed, 21 Jun 2023, Jan Beulich wrote: >> On 21.06.2023 03:26, Stefano Stabellini wrote: >>> --- a/docs/misra/rules.rst >>> +++ b/docs/misra/rules.rst >>> @@ -213,6 +213,17 @@ maintainers if you want to suggest a change. >>> - Types shall be explicitly specified >>> - >>> >>> + * - `Rule 8.2 `_ >>> + - Required >>> + - Function types shall be in prototype form with named parameters >>> + - >>> + >>> + * - `Rule 8.3 `_ >>> + - Required >>> + - All declarations of an object or function shall use the same >>> + names and type qualifiers >>> + - >> >> I think we want to deal with uses of const when not qualifying a pointed-to >> type: One approach is to simply say we don't use const like this (and the >> few uses there are should then go away). The other, if we deem this a >> valuable feature, would be to make a project-wide exception for this case, >> as having such const in declarations is meaningless and hence at the risk >> of being confusing or hampering readability. > > I think they should go away (the first option you wrote). > > If you are OK with it, I could add a note here, such as: > > "The rule also applies to differences in const-ness." I don't think that's necessary. A remark would be necessary if we meant to make a particular exception. I'm not sure whether we would record the agreed upon course of action here (i.e. as you say, drop such const). Jan From xen-devel-bounces@lists.xenproject.org Thu Jun 22 07:48:57 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 07:48:57 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553303.863781 (Exim 4.92) (envelope-from ) id 1qCF3e-0005ji-WF; Thu, 22 Jun 2023 07:48:47 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553303.863781; Thu, 22 Jun 2023 07:48:46 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCF3e-0005jb-Sa; Thu, 22 Jun 2023 07:48:46 +0000 Received: by outflank-mailman (input) for mailman id 553303; Thu, 22 Jun 2023 07:48:46 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCF3e-0005jV-2E for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 07:48:46 +0000 Received: from EUR04-HE1-obe.outbound.protection.outlook.com (mail-he1eur04on2072.outbound.protection.outlook.com [40.107.7.72]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 36728ef7-10d1-11ee-b237-6b7b168915f2; Thu, 22 Jun 2023 09:48:44 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by PAXPR04MB9352.eurprd04.prod.outlook.com (2603:10a6:102:2b5::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.24; Thu, 22 Jun 2023 07:48:14 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6521.024; Thu, 22 Jun 2023 07:48:14 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 36728ef7-10d1-11ee-b237-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=YcnJn6BmKUpDjHw5dacMu2q6q6uM8IOQKluRFsdy9LrovnM9mPlI/WSt5Cx4diEWsaHd8AxEf+0355+vTblQlEgCUwNLTeIcT0TcZXc+Ddid3JoPrH9jmm+8k2G4wMKyMwnmXB/DzOR0qhycrVLr//l3IJOoEVL5kk4VHaHbgAwAOTg13uKLmFpTNwH1uniFCv9nO6R8A63OjoW0E90QL95MT27YUA8+XByl8RTDT7/Wij1cw1yGLSeu5p5H8JPbfvzv3Bp0nSYjWBhaghHQyHrOQx2HKMs9PCL6KW4DL1RSb9RK8o6xpmLS8UiD4BKwc5f9s0NEIk/wmg39pyYAPg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=lz9y1Ju8Yka5CwlcdKDt/cwdP3CvIvtD/8JF4fnSVas=; b=R/JojIJdoF8yrWSw1qHP2dr7mfuXd69g16wXAJUXafxiIRMDolDNm3hIsNkVGFaiMvaqnqbvnJjgNjcp6ruWLdvm3QwA7ZWoHLrvzQPksjsTWWVhlRsEfeIsPOVRzQZ0+5SBKFJxBQKoueHaDsvEFUQ3e3UKY+UroA5DDIMnvrP5iMazl1cTCmqCdKFEgi1c80SNWVcXGWoPJ4NWi3eZts34mqRc77oYap8VPP3eI8HnIoZO09is6ynIk/nyxSlhg2Vrd0+Tiu0sqKGVHjWWqvPaE+xBhqvarQFLFRdCj88nrxEMNQqwTz0H0BL1hpKmRC5eYKuQGiDMDO3s/VmMNA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=lz9y1Ju8Yka5CwlcdKDt/cwdP3CvIvtD/8JF4fnSVas=; b=T6qk4e14Ipw3r2Llj6IU/HjNEgCerXnf0SJNNBzodRSM4gd1v7EDUa0aa56STIaIU4w1YsufDNDiQKru7hq16Zt2ypDNIt5af6mDvnYOUtlDcl64wCEOzeHmOpNx2BuIJ5dUKTsH9up1hSewajtL2MAtx4UruQIEdYDQCZyWEb4FIZh2URMjd0/Qhh2TJ9Dr86dtmqB3C30r9BiW/e1aP8mr10wA96EAONoIIcuUDeld9VMohCaD8Sq7NInfvjoPLlie/WPhQoJoSRfswgXMfXMOkVV2JwMvBNP6b3xB8ex9d75h1L5V9lFr/cX1yDg4XvgDeuwVuYXrKfri6GNThw== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: Date: Thu, 22 Jun 2023 09:48:11 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v7 00/12] PCI devices passthrough on Arm, part 3 Content-Language: en-US To: Volodymyr Babchuk Cc: "xen-devel@lists.xenproject.org" , Andrew Cooper , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , George Dunlap , Julien Grall , Stefano Stabellini , Paul Durrant , Bertrand Marquis , Stewart Hildebrand References: <20230613103159.524763-1-volodymyr_babchuk@epam.com> <875y7p9ia2.fsf@epam.com> <87v8fgo48c.fsf@epam.com> From: Jan Beulich In-Reply-To: <87v8fgo48c.fsf@epam.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR0P281CA0230.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:b2::17) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|PAXPR04MB9352:EE_ X-MS-Office365-Filtering-Correlation-Id: b8a547f0-22ea-4ab9-cc11-08db72f508a1 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: sDFLJlW+tpDw4VGcvwseUwZcYcHjKPMQU546zSkxk2VlQoasYGPibw0oefKZqKhHP8ao1SQjmRHHZwt6/fMpx7P1pDdhDI5vjyADSGBASFFOugqO7bmUrlsu1sAjvd9mXzytHbE9TaHj/tMN6lxX2rCO8NM2hEbzs/AATGU3C9ymrqGECcLmHdj5AMsmlKnYEFB+oJYxb88zjGMilO9EAZ7AkojIFt0cqnjdZ2mJuWbox0xIVMzZ/W8Q6ldPmyISDaXdLVk27/kU6ddS/JZBEDJA8VZmx/XqOO5tLFCKWpW2fHoWV2AkMezBmJ5ayGpKUPegyQoaBPDmbtW7mSmbO1mGul5qQCh7KUURVTsm1r37FKXZnP6jxb05athJqijteW5zQyXDTNAKajMbEBlNkATRPbsOzJxgSM02RYsAOrnhrcdzeACCsWGwFS96T2W7OtCbRFNA5pvhuOUTXXQMfOqL5Jdy3CiLtbJSy9PWZXgUHwuJduA6D/M+rv/9ULuJXYSPymX7lTNvYZgI2MClYYg/bMv0tYs71m/cq3Bdb2H5xnXATDdltU/jUwHNAIcAyeDOzLmtRyUZJV2DMZwHOy/qPrmei/Vd/yJu+udi8jSVTp0ocbpulZGgFCxVyWxzIW7b0qzTu0mIZtL/HYcpdg== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(136003)(39860400002)(346002)(396003)(366004)(376002)(451199021)(31686004)(966005)(5660300002)(7416002)(2906002)(53546011)(6506007)(26005)(6512007)(8676002)(186003)(8936002)(41300700001)(2616005)(83380400001)(36756003)(478600001)(38100700002)(86362001)(66476007)(316002)(66946007)(66556008)(4326008)(6916009)(54906003)(6486002)(31696002)(6666004)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?dWQzQ0NvTndvS2hYeUVxRXF1TExyS2ZlMzZlcHhZRXZ4SldvT1hMeTVYSXpR?= =?utf-8?B?KzJjL2ptWStVMWk5UDBoWndtbERwb2k0RHdwa1FQYisrRVE3R3hDbEdoZ3pC?= =?utf-8?B?bUJUVHRiQndpVUFJNWNFM1NpUTd6NFZ6R3F2TEx3aVIxL2lqdHRpV254SkFW?= =?utf-8?B?blFIaG4wL2NnS2M1RitMbE5rcVpxSVpDdlZ4ZVhuZDY1WWt5KzFUMFd4K3ND?= =?utf-8?B?UVBvV2ZETGhJT1M2QTlBa3A2d3FQblkzWGZNenE2cUdINkpSd2lRS0FPVjRT?= =?utf-8?B?ZEh0eUZ3VFIwZDdGbnJ1NnNSQUx6aE9sRU9sa29HaXdVcnIyR1dxNnlXVEg4?= =?utf-8?B?ckFHOXgrQWR0M3JGeUduUWRTV3lxRDQ3OUhUazlEcGUrTHUwQllFSGJyYWlE?= =?utf-8?B?ZjhMbnB0dzhaSXFaODFnYUh0MThYM0FxdkJRdCttekpLTjhrbGtTZW9jeHpH?= =?utf-8?B?RE1JdkNQYmJZeVdzc0ovbEZzLzVFVit5N2NuNC9MaUcrMXlvR0l6UkFodnIy?= =?utf-8?B?Ylc3b2ZaSnYrME0zaWNEb1lIaGRtbStabEVOSUZhZmx4anBGSmtuL2IvdHp1?= =?utf-8?B?d1BSaCt3cFBIY0Y5S1BWMFRCeHhkdGlFUHNHT09KcUo1bUNzbEFFa2NFUVUz?= =?utf-8?B?QnRWRmdBTmsxT2VJeGJkazVvUUY1L3VUTXBnaHVvREtaQmExMDQxTjAxdmZE?= =?utf-8?B?ckQ3UWV4U1pFMkxzblpNWmQ1R0RXRXhpZXVSRnd5ZHp1RVpTS3RRZWhiZFVO?= =?utf-8?B?Mmoyd1hlVnE5RmYwd1NKbDRUNHk4bmduY3M2LzU0KzYvVFdSeXpEVG5ZZVJh?= =?utf-8?B?UC9yQWZJbjlGR0tFTEdBRlJJL0xVMGU4Z3BNblBwNzJkMVdrRDV2TThOczky?= =?utf-8?B?N0JSY2ZjQlY1WkhuL2FnaEZnd0JkRndobDVqYU95OWhBUERveHFGdGxnRGk3?= =?utf-8?B?NFFSUWlGVVBQbXE3dlN1SGtPZENCSmFkUU8yNy9iYkphNVhPbVpsV3BLaUNs?= =?utf-8?B?YWJTV01QR1IwVmxJd25SemVEUjY3dCtXQXd0dDh6LzBoVEVYMGFsSWZXMHNG?= =?utf-8?B?aWtWU1lMMFlIRHpOZXpHZDUrazJBbG85UEZuTEJtNHJ2NnlpM1BwTitEOUkv?= =?utf-8?B?bzcvSHA2RWJQdlg1a0hkWHNIVVg2VXBCYmVmZjBpTHdrV1lRNTNBS0lPdjBv?= =?utf-8?B?aXpIWkYxZ3RZQmNtSitNQjEwcm45bzhBSUpDM1kzQU1TbThYVlgrZ0lrQTlM?= =?utf-8?B?TG9rYUdqTXAyM2xlN0grSkd1TFMrMW1RM0dCSGJMNjA5RlVIbDFxRDNKc2J1?= =?utf-8?B?aGNRbkN3cHpCZEc4b1BGZmV0RXZGOHFNWkwzQnVCSHF3K3Fjd25tQ1pNWVFq?= =?utf-8?B?Y3A4T0dMdVB2U09PVXNaRGZTd1lkNkl5VXU3NWlNSDJOZkpiMzJGUHlFSVpo?= =?utf-8?B?eDRqT2JaTzR3VUFEbFM0ZGxaZk4xdEpKdVdTY3F6YldDVFhneGNVS0FSY2I0?= =?utf-8?B?L1NJalRsT01KaHhnaEk1RTFiVGYwVThqaFBBSkNMUjZLRlFSZlBYeDJ0bmw5?= =?utf-8?B?MnlYZlVlWFo3QUJyVTRKZGo3VmUwRlViNWE0TWhWUTE0cCtNcW8vSWxhWEVD?= =?utf-8?B?dWhoaFZhQUlreXcxMkd1dVBkV3lvbEtWQy8wbE9la0M2eDRsUGJzMmtBV2s5?= =?utf-8?B?NEhtRUE3OUQ0eXRvWVduWCt6SzlabmFmbUxIb1Budis0Z2hCYUMxS0NJblEw?= =?utf-8?B?UXM1VG5KRUtkanVRdmFNSnFrV0c4MitramN1YjRrK0h4SUNUQ0VBUldxR3ox?= =?utf-8?B?QW1jUGZrTCtobWN6ZUNKeHViYTJyWWFmcXlkeWJrYUFuQXBzbVMyT3liN3Qr?= =?utf-8?B?T3hGeDVsam5FMnk0UHFtTlJpcDQxcGhDYlF4cUdEcXU0b1hqRTh6eHJoano4?= =?utf-8?B?U2RydHhOM3hOOTlPb0ZIbzJ0SEQ1WXdpOUtERUIyTGx5WktJM3FEUjViOVJ6?= =?utf-8?B?Ky9CcklZWHFRdzNFVlFGQlJRMXAyTzdJTTJueDVDRzQ1SjBqTVJzdWJaUFhJ?= =?utf-8?B?dStzR2VkZ0JqNEZCbFk4UU5uTXM3aDBCR3ZSQnNTSEhJcURMNVd5anVndlll?= =?utf-8?Q?SdvWZpcn8EGsLzMj8YZCkB4gm?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: b8a547f0-22ea-4ab9-cc11-08db72f508a1 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 22 Jun 2023 07:48:14.4660 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: ZdM4LUst9DBAlq8Zh6cU5q3hdNinCGLgO0Lms5Ji2Sr4mZ//QbAYVUfNcjVl/19aPTlfQsYC1bqJgp97x99thA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB9352 On 22.06.2023 00:11, Volodymyr Babchuk wrote: > Jan Beulich writes: >> On 15.06.2023 11:39, Volodymyr Babchuk wrote: >>> Stewart Hildebrand writes: >>>> On 6/13/23 06:32, Volodymyr Babchuk wrote: >>>>> Hello, >>>>> >>>>> This is another another version of vPCI rework (previous one can be >>>>> found at [1]). The biggest change is how vPCI locking is done. This >>>>> series uses per-domain vPCI rwlock. >>>>> >>>>> Note that this series does not include my work on reference counting >>>>> for PCI devices because this counting does not resolve isses we are >>>>> having for vPCI. While it is (maybe) nice to have PCI refcounting, it >>>>> does not moves us towards PCI on ARM. >>>>> >>>>> >>>>> [1] >>>>> https://urldefense.com/v3/__https://lore.kernel.org/all/20220204063459.680961-1-andr2000@gmail.com/__;!!GF_29dbcQIUBPA!0BUqPos1zFKUoPwbKLLwKItNgBVPaBgxmH1Y6zXpms2bngrlWrzB-qMNvIaiAy2WSWMa93UrlvRi0ijYP8X4Ymx07GXYPO1W$ >>>>> [lore[.]kernel[.]org] >>>> >>>> Thanks for sending this! >>>> >>>> Should this be v8? I see v7 at [2]. >>> >>> Oops, my bad. >>> >>>> I had to rewind my xen.git back to 67c28bfc5245 for this series to apply cleanly (just before ee045f3a4a6d "vpci/header: cope with devices not having vpci allocated"). >>> >>> I rebased this series onto staging about two weeks ago. Looks like >>> there was new changes into the PCI code after that. >>> >>> Should I send a new, real v8 which is rebased onto current staging, or >>> we'll wait for review for the current set of patches? >> >> Please send a version which, at least at the time of posting, actually >> applies. Taking into account Stewart's observation on the version >> number makes it even more desirable to have a re-post. > > I am terribly sorry about version mishmash. But Roger made valuable > comments for the first patch already. > > So I'll post the updated version with an additional lock and other > fixes. Should it be v8 or v9 in that case? I don't think that matters, unless you have v8 changelog entries already which were posted with the 2nd v7. Otherwise all that's relevant is that the version be clearly distinguishable from earlier ones. Jan From xen-devel-bounces@lists.xenproject.org Thu Jun 22 07:54:13 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 07:54:13 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553308.863790 (Exim 4.92) (envelope-from ) id 1qCF8r-0007Cn-J2; Thu, 22 Jun 2023 07:54:09 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553308.863790; Thu, 22 Jun 2023 07:54:09 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCF8r-0007Cg-GD; Thu, 22 Jun 2023 07:54:09 +0000 Received: by outflank-mailman (input) for mailman id 553308; Thu, 22 Jun 2023 07:54:07 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCF8p-0007Ca-Ra for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 07:54:07 +0000 Received: from EUR04-VI1-obe.outbound.protection.outlook.com (mail-vi1eur04on0604.outbound.protection.outlook.com [2a01:111:f400:fe0e::604]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id f69331e1-10d1-11ee-b237-6b7b168915f2; Thu, 22 Jun 2023 09:54:06 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by AM9PR04MB8699.eurprd04.prod.outlook.com (2603:10a6:20b:43e::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.23; Thu, 22 Jun 2023 07:54:03 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6521.024; Thu, 22 Jun 2023 07:54:03 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: f69331e1-10d1-11ee-b237-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=IZHqKk+aWjPFR8k35AvoSShCkc7/E21WaswJJs7RumIrqxTNYCXrfa85lrE2Ba3K+wR1cqjABX0ltZikkhewnYkShF8Vlfjx8kRda2DpuXeJuwAl+eBOdTVtE4YJtgWKOxc9pn9STm6ZklLJD09Kt4JQCPkVePRXv7XZRGCoUGHh70YO9b0TVas3ZGyBdqzO2iDs2eVQP10OkKdDsrO8dMJ8pwwrF8fia8i/SCCar2sv0P0lzXlkL1Wh7L4SLum3/9n7mv1lKDaYxB2mq1AbDVVd1vTZ0JvboZYIa15kuwZMRwN/uwMC3k133Zc3P6Re4jruHxqhFpucHbtFl1c0fQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=GQs6amXBglCol8jpG9+QLdsd21Le4O76ajg1DPwKOwM=; b=KWyFKeFZgIk/s7l4rTbsvQvGxe0ouOBFaWThzxJL+dzRtBkJgFBrf9XhY/nmkIio9qMb1eefvueIxrx2ZFOMqlcDPGPI+/8ta2TrC9qnHXSGgawQgbjK1RVI6f6vItEnuqgNr7oH8HX0jRiU0fivccA6C4MyLc1EMHHmKxHDPHF+2tvRWOfaNtO796YywyuWu8cgFPmMRttT5010m52wblz66obIGMIPjue2uAGzsyrWRmF9vRP9r8uOr84GrzIhXIsM8BZg+JD/spATrc1w+XgzU0wMyO3nXlmKluXyYKQyZZyBRPR3PtjiM/tS9AZW7ZDsXHUxKhypvfOqJvkc3Q== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=GQs6amXBglCol8jpG9+QLdsd21Le4O76ajg1DPwKOwM=; b=tLLttRWqrUYJX8knbf2kJCGJGHmvEqnGdy25YB3CKWm1p/evUcR4MhFumqAbTV/tShLfEGhh/rrIbo8ZQyIJxCWvC6MobfedB/lALgxmTcvVqoSaf9PBXQa2feOJv+LBCh4eCxLugIz5ZlUTQmw2e/YLb3Dv6TEhZ7FAyj+ox6fzGfwN3BN9fjeDlbmB+C1ZNZfNRw7vnPPY230KJ6I0M1LiYKKykhpdAb6zQh44dIXzeYkvJBgfzedcT48aKBZziMKFXcchDQiQfinwcYrwEegtE2XFU8FqGdnrEI/G8xjPKYWLdGdq3cBxsYWQdcDTVb97a+S+Z4V/Km3X7koMlA== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <32c42471-9e93-58d8-9973-38fce5dcc4d3@suse.com> Date: Thu, 22 Jun 2023 09:54:01 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v2 1/2] x86/boot: Clear XD_DISABLE from the early boot path Content-Language: en-US To: Alejandro Vallejo Cc: Xen-devel , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , Andrew Cooper References: <20230615153157.444-1-alejandro.vallejo@cloud.com> <20230615153157.444-2-alejandro.vallejo@cloud.com> <6493289f.7b0a0220.7f086.11fd@mx.google.com> From: Jan Beulich In-Reply-To: <6493289f.7b0a0220.7f086.11fd@mx.google.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR3P281CA0131.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:94::14) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|AM9PR04MB8699:EE_ X-MS-Office365-Filtering-Correlation-Id: 762ea20d-7277-4568-5dc1-08db72f5d8e6 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: XLtk5QepmL1ax+kRBlXKlbMslMFQHKMa8BVn0ZGanUmNGppkovbUvIw5F3mVu7YA6LKF0B0yu8/c+AQnJAoERx3reSw1Jq1HdYDviuK4R6k4uIBzm360BcKAfFbA2Oxz9M3L/Tmf15Mbcon6gjU+5tcKw8w0vquUykn0yiBUh4kLKjDi1EWjzCFD9UQRrfDsylsvKSP9wvzen/JXmtcqx2qb9vN1DhschO3bfVx3cEvOgif8Ra4FIOAgb71UT7BIRMOJ1vTws5YRUyAbDXXCB6olmgW6pzPeegBmFDEkGtRa5rztTLOu4SV6HzavWk5DlykSiftIuSVVHK7sQvR6gcL+qaN7oaz+9QcXyNLr8p0gJoc10F5IFF5uCjlGiZ86Nns+LinnwtWuMq4GGfuDO3+xIDumtsoRGiWeLx5RHgyL2qka7lyNq0ADXVJs1VdX7lbiuXsvUNpdEEIu0oCuMEV1ooMMgOtlppT9Fabg/EnrQciDrOTjR/yoakUoLGEWoNbfHvduXOvm9TBP+DmhTmuMDfcjOLSysvo56FhBMxCad96gnKljP2n4tYNDVOCRsqhL4M7ZQDQMPDTdVJa8XRFYh4mFPxjX6oP1WgD8S8ElP23XfF0WhdjzJZr7janlAg3DC2itm2OmqALzGXBh3A== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(346002)(376002)(396003)(366004)(39860400002)(136003)(451199021)(6486002)(6512007)(54906003)(83380400001)(478600001)(26005)(186003)(6506007)(2616005)(53546011)(86362001)(5660300002)(66476007)(36756003)(38100700002)(316002)(2906002)(66946007)(31696002)(8676002)(8936002)(66556008)(4326008)(41300700001)(6916009)(31686004)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?Zjcva0NiaWV4R1ErR3pmYWZzZEJGcDJFUWhwNWZJTm1nVUJIdG1MV1UwS1U0?= =?utf-8?B?T2tJYlFxcmNNbFJGVVZ1WW5qTjl2SUJLRDYwZkx4cDBLYUZVWkdlRHFPaUp2?= =?utf-8?B?VUJWMTlYVXV5VUpzM1JjK2JxYTFCdjdyOEs1TVVzVzFLc1lZU05lWlQxVmRB?= =?utf-8?B?RjU1RGk1aUc5dEpFV042aWNqMU50aGhhZ0h3dmhiS2JuVnRUV2ZGRStmMnhH?= =?utf-8?B?THkyTEg1MldxSmQrRFNYRHQvWVExVFRsbG91UWtzU3ZnQzdEbVVJQ0hXQ0x3?= =?utf-8?B?L2xhVDE4djloc3prWnliLzNucWl2RU5pTE5kYllyL2hQck1saHBVZTF1SEQz?= =?utf-8?B?MzdBSENiL2JEY01NY2pBenpFRHQxbWZ6L2N0ZlBOWHc2N2MyZjJDWG1sd2ln?= =?utf-8?B?MjdGQkkwY1ZURUpPVmIvdFlRUjd1TE84eWFoQVNRRk13MGl4aHZYYS9FZzFC?= =?utf-8?B?Q09PbWpEVHZhYWtZdS85QjIzQm9IZDNqL0RLNmcyQ3ltVWx6Z3lreG9Heml0?= =?utf-8?B?L0tEdGtFNVhFTXdwTVgwWlBIVzhaRXh5b3VVTG82VUFBVHEzUnFrSDhSNUI0?= =?utf-8?B?U1I3VmV0VVloWXJHSERKdm9IR0pncm5JMHhMYmRNaHB0cTc2S2g4bFIrcER2?= =?utf-8?B?NC9ZTHZ1aVBEL3V1c2JkNnJ6N05oSU1qOGpFVkpxRHNrbXpLaFVCRjhOeHdj?= =?utf-8?B?bmN5bU1VR2l5d3g5NG9zS0JlUEVpbGljdmhBMkFLeGtkQ2NOajR6U1JUbzlz?= =?utf-8?B?dXQwL0RtMUxtbXAvWUtuRUN4V2loemhqMXZsQWJ6ZE81dmxkZjBoR3k3VVFT?= =?utf-8?B?NExES1hQNnZVbVJVZmdUT0dQeE5FTG4xUUV2RXhMd1pjMG1zMU9vSnhmNmE1?= =?utf-8?B?N2FkTG4vRHdRRUpuRFlLY0xTSUVhUlhBdFVXQnB4U0Z5clpudG9NTVVndFJF?= =?utf-8?B?UHZqMDNYUi8ySWxzVEg2WmVDNkJrbnBKTjNqTHA1SERWaHhZK0lRMU9KRnFT?= =?utf-8?B?TEpqbDRhcnZsdnZwVkRFdmQ2K2cyVVVUSFhFMnNPOXJ3Wk43clVRSDZnUFdy?= =?utf-8?B?aHQ5bTFmelp5SkV2MGtLODBaYkpVUW9TTllWblRaS1JoZ25JY1RWTUVMMmxJ?= =?utf-8?B?M0NUdU54SXpWcWxmSWl4YUVlOW5pWHU3N1FzUjBRenVnbkhSblVJUGxXc0Er?= =?utf-8?B?OWZ5Nzc3MWlBbVh5ZENWWGdSZ0kzWUlicXhuaFcvbzdmejdaL0VjalVRK2lj?= =?utf-8?B?VzJMUjY1UmRkU09kQ3NENGFoSUVDYkVzUXpHZi80dzZjMGpvSUJyYUFNd0Fz?= =?utf-8?B?anJZYndZTzJsWGVlVTBuNVdOdk43bmhQaFJyUmhkSmU2V2hkMCszckxjUVZN?= =?utf-8?B?Zm9pcGxxZ1BDbjhHcEJiSmpNcmxNQjY3c2c4eEg5TXY3S21ZcnYzVUhGcENF?= =?utf-8?B?MVBuY08vdjIrZDRvWFJueHlIMXcwaW92OTZzWUNseWNGZnRYRmkyQXU5K0Z2?= =?utf-8?B?VHF5enBIdXJUbEpEZHlTZWNxR3YxNEFhY0RqRHQ4aWtkdFc1b1hUVFlwNWNV?= =?utf-8?B?Uit1aHVNN0N5dFVtRHBNS0hTdEdmRkl0SlpONXROd3NiR0VmTlFReXk4MFRa?= =?utf-8?B?Uk9FaE5oVWJZeWtvN1ZlZmNIbmJBclRSb2VvdVcwWU56allJbTZvbG9UNVRP?= =?utf-8?B?NDRnckNCTzZYOVZtQkdjQmlNRHVyN25KN3BmdHhRY2wwQUJvOGU4cGxLQXBE?= =?utf-8?B?ZkdBcjJGbWxZem1uV3VKR1pEbWQ3MzFuQnhvYXZoQitLNWxCdG5VbnE1OWFK?= =?utf-8?B?aWl6SjhraEFRODhJNWJ1eHJIMUxCQjRnWVNxWUZibXlvN2FKeUpjbXVndERv?= =?utf-8?B?bFFWNEhkVHdPRVZwbmtWTkdQZ0VSSUpmNnFoUGlwKzcrcFhhaG9wUDNBd1Fa?= =?utf-8?B?QWJLVkJVRzhHN0pKcVVnb2NGbnJjQUovZFlmMVpyK3RtQjRhR0F0b1E2U0ZQ?= =?utf-8?B?Y1lsNFZiNDNlMzFreHF1TTQrU1lzdW5MZEo0Tm8vb2dENXhRT1daRytWWVpF?= =?utf-8?B?V1ZSeS9mdWN1S0ZUL0t1TWZ5SWs2Q25DWk1UeHpRUzlNdU5RQlA3OHgzVFhD?= =?utf-8?Q?5rQB89+tGtATL1WjopfOwBIFq?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 762ea20d-7277-4568-5dc1-08db72f5d8e6 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 22 Jun 2023 07:54:03.5965 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: VA+Zw63gZg33ptMULeeG6S3j4C4oI/D6Foy4sKQCu3Xa9YE5wzISnIhH8xt6hpXqJmICI5XEzvoi39E/54UFNQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR04MB8699 On 21.06.2023 18:43, Alejandro Vallejo wrote: > Sure, to everything before this > >>> diff --git a/xen/arch/x86/cpu/intel.c b/xen/arch/x86/cpu/intel.c >>> index 168cd58f36..46b0cd8dbb 100644 >>> --- a/xen/arch/x86/cpu/intel.c >>> +++ b/xen/arch/x86/cpu/intel.c >>> @@ -305,23 +305,23 @@ static void cf_check early_init_intel(struct cpuinfo_x86 *c) >>> c->x86_cache_alignment = 128; >>> >>> /* Unmask CPUID levels and NX if masked: */ >>> - rdmsrl(MSR_IA32_MISC_ENABLE, misc_enable); >>> - >>> - disable = misc_enable & (MSR_IA32_MISC_ENABLE_LIMIT_CPUID | >>> - MSR_IA32_MISC_ENABLE_XD_DISABLE); >>> - if (disable) { >>> - wrmsrl(MSR_IA32_MISC_ENABLE, misc_enable & ~disable); >>> - bootsym(trampoline_misc_enable_off) |= disable; >>> - bootsym(trampoline_efer) |= EFER_NXE; >>> - } >>> + if (rdmsr_safe(MSR_IA32_MISC_ENABLE, misc_enable) == 0) { >> >> There's no need to change rdmsrl() to rdmsr_safe(), > I thought we established before some hypervisors might not implement it. In > that case this function would crash. More gracefully than a triple fault, > sure, but still not a very friendly thing to do. Yet then in early boot code you also don't (and can't) recover from getting #GP(0), in case that might really happen. Jan From xen-devel-bounces@lists.xenproject.org Thu Jun 22 08:04:23 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 08:04:23 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553317.863801 (Exim 4.92) (envelope-from ) id 1qCFIU-0000pb-Ug; Thu, 22 Jun 2023 08:04:06 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553317.863801; Thu, 22 Jun 2023 08:04:06 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCFIU-0000pU-Rj; Thu, 22 Jun 2023 08:04:06 +0000 Received: by outflank-mailman (input) for mailman id 553317; Thu, 22 Jun 2023 08:04:05 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCFIT-0000pO-KF for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 08:04:05 +0000 Received: from EUR04-VI1-obe.outbound.protection.outlook.com (mail-vi1eur04on060c.outbound.protection.outlook.com [2a01:111:f400:fe0e::60c]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 5995cbbe-10d3-11ee-8611-37d641c3527e; Thu, 22 Jun 2023 10:04:02 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by AS8PR04MB8481.eurprd04.prod.outlook.com (2603:10a6:20b:349::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.24; Thu, 22 Jun 2023 08:04:01 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6521.024; Thu, 22 Jun 2023 08:04:00 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 5995cbbe-10d3-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=hqwzJfO8b34wEWwrgH/X/c4sL1rTLt2ToxRAVmR0sHb1/azIxUgJYfDY/PhWW4Hlv9fTef988M/60STyt8GzBlLjmX8U3s+Nu7j3mWVRq84lphYmFWNdFitz5JaNW7v/zugu6ZnJMPicZKzol7qGSSXKKDNO7UNlq0wdJMADVbUFHBkL30nRJBFlDOD2B2qqZXB0klbeI6TYxiVYTsOrmBFY67dKCyiU467tfNkWpHAblfeTsKUXGGFYMHgMzFbO0B/geWOLPu9cMlRqeGvIjUcArckx21bOMD+x9QkBfbS9XyPACxZfaGbGNDTmA9UEeipPDmPT33rQSCh5tv7OUg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=5fSgQa3puLw26q+rm2itAR3cQNOG9PA/mStDcsaH9bU=; b=ikgm91nToezvv5gje0Yl6YT+WwW7XVeaQZHkAzY/U/EOfmt3opC+hKCkMWpcBMFIns2z/E2ywrboVLvpawB/bh1HlZjOhKxl3lKQktwWNrz+bVhJ/xJgRunbZ0JhHDQ6G9a1O6hvTicGALjyqpJIYiclhuHDFtdFgWgG8+jfInOMpdUbR3wOEAnYaFixTlsygWKPOjVe1PDEYE06fPpfvLm30+yLVZX+R1ZChm0ib/Hg/Z8YPmh4PGYgm5CUZTujfXdo49JvHvsqa/eZk73x/CfyWnh2RQ20NBtazqaOYVC2Moa/mFAmO8eVFEYZzNvwdwitR2djGFJgnBuq2zQcWA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=5fSgQa3puLw26q+rm2itAR3cQNOG9PA/mStDcsaH9bU=; b=DcMyZAyRb2RPHoQcax41N1sGx1Ly1onjHgAkXx/Zt5onO5eDYrJbvSlIU21yqW3y3M64iLybwNiOKe/9ewjD0Rrew31Nrmvjy9g7NRW4/INyHLU45pZpmu3WXwP+cCzJ4YuCqrB/xSrOi16IZUvdjSuVXNX4RA7vTpEi17rRsCOz7cOIwakKciGeFgVjsGrjuJVUDvKuyNSyIwIdF9kTQRCjum0NjeAG4s8I3YnWFqtH1xDnfs7zDo9Yh9m8mxsZdefoMQH8hHYbRGeYHV2xIoGqRx3QggX5wyDMqrgleHITAC5CHleir/vCs4weY+Fu3kVpl2f1B1f9eGut5ZYFeQ== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: Date: Thu, 22 Jun 2023 10:03:55 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH 3/4] xen/ppc: Implement early serial printk on pseries Content-Language: en-US To: Shawn Anastasio Cc: tpearson@raptorengineering.com, Andrew Cooper , xen-devel@lists.xenproject.org References: <259298cdadf7cf1eba08cd35c636e9aca9e2182a.1687366665.git.sanastasio@raptorengineering.com> <692e2955-a85d-3c6c-7730-962956f6ebf6@citrix.com> <8ac54b2e-b074-18eb-38bf-1041a8109d7b@raptorengineering.com> From: Jan Beulich In-Reply-To: <8ac54b2e-b074-18eb-38bf-1041a8109d7b@raptorengineering.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR3P281CA0015.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:1d::13) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|AS8PR04MB8481:EE_ X-MS-Office365-Filtering-Correlation-Id: 72d8ad9d-327b-4929-c592-08db72f73cbe X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: CoOqUyoiOxJKAZgHXkqbV0a3EjCgSw+1M6AZCzD56CK8RXelC71ZWwebFuy+OfHj8DmP7zwAYAvyXEB7uO6pBeKBlCcSgYi+ZQlxJ8r7ETncb8n2rUeYiFwbY/UifdAVqwjsANNvqVLwNpNfxhZvJv7iwQjMg+CY1cPy3zsRvrUOe9D8MYiHgx7Phz/aaY09mXcsTGASkSPck7a1BfZuOyS3yem61uXd0NroWx8ivEfg8coDf1Z6k6//Q2PCvfsC9y3kO7axT287nJmbLl3ePmoEnXVmrxovyn+l9iZXN6HC33bFCLUWGm50RYr6uWeWYJ/6Y3yQCOKnl8KgtCmecNlMiaDBgcH0JHBcRnUQiK3Dmyssn1a/rsrvG8WMBNbO3swUf1GBKHY1LcjJB3KxdyF/be+kuFh6pmlYCvtbH2RO5sofB2pbczAmsS9hJkOEUrG4AETQr63FZn6BdiO8eoYQ1pQoUAmG3hHrzDvdvwjLE4TE4p+0Vjc8wZiEssEqIZ3b23yvXLgnxZ6dXYSLJyqPnSNSK1Seit3gHOnqQ2x/15khwKMYO10pxJ+IdyYhPbQ64p7aLFAnm+96Z2DqbmRHRta31Gpma2eKxOKqT9wbP7MSfd4+08NE46M5VW2cp/Uc0EYhrhI426xq0LPa1A== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(346002)(39860400002)(396003)(136003)(366004)(376002)(451199021)(8936002)(2906002)(38100700002)(2616005)(6916009)(66476007)(66946007)(66556008)(4326008)(86362001)(36756003)(31696002)(6486002)(316002)(8676002)(41300700001)(5660300002)(186003)(4744005)(6666004)(6512007)(31686004)(26005)(6506007)(478600001)(53546011)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?Zy9aZ3ZmY25xeVlCdHRYc0NqVmF3NWtubWtwU1R0VkRpUDNvWFQwNXJib3lH?= =?utf-8?B?TjllaTlQckJneXpvZExuR3FXczBGM1dVSUg0bHZmRmJhYmNPclplTFNibnQw?= =?utf-8?B?VmFiN0dqbnFEYzZ3WFRrYUwveEJyMEFubnZBY25WRmV1VWdXb05jM3p5RklX?= =?utf-8?B?czVUT04rZjdsVXZ2bUJXMXljRlY5d08xRkhYbEVJWmZPM2RtWjAySnBHdXJZ?= =?utf-8?B?Mmh3b2NKRzVRaWM1RnRyTUZFOTQ4UTlPZHV3Qk1Mc25iYzc0cWtaUjNHcFlO?= =?utf-8?B?aE8zb2pibWZNcXlyOTV0LzlFcmRQOW8yK2xCU0s2Y3VLZWZOdXBjU2REWk1w?= =?utf-8?B?dVVUU01nQUxLWjFreTNuZTl3WDcvTzEwTExCYmJXV3Y2TUNGR0sydnRNU1B2?= =?utf-8?B?eHB0ODNtK0tKZmEyUTBQZTh5RHA3RHBaY0lXS0ZlNDR1cDBseE03Tm9jTElz?= =?utf-8?B?c0htVzM2Y09GTjdUeEVqMVNwT3dqdWQ4dnpGcXlyN1F1blcxL0ZNSzVCWDFC?= =?utf-8?B?TnBVNFhmS0NDaEsxdE9veGs0MU5ZcW1HREh6Q3hTRGNxMzhrZktsem96T0tz?= =?utf-8?B?am4yaDlsWCsvSGlGZ1BOQUZMbTdyelkxRGNMVTlVQ0NnTlgzK3N5b1FIeVFs?= =?utf-8?B?U0trOW00TzMzcUlkVWhlZE0yclBkWktMK1o1Z0ZoMDZ1QUJEK25HZjNMVTdq?= =?utf-8?B?NkF5bC91ems5dGtjVGhJa3ZWNHUybDFFV0NWU3ExMTA4YWU2T0VtUTZ1MHM5?= =?utf-8?B?MHdQLzl4QnlJRzdyV2RmWmVNVFNYR3RQZUROd0NYVjF3L2JPOTVJc2Q4Y2NT?= =?utf-8?B?TmRad0VZSk8wajlGY3BkVzFzTUdmd3dtRVhWVHlzb2VZZlJteEUveWJsYnVJ?= =?utf-8?B?QkF1YUFMNUM3T1k4QnRCSVJOVU9OdmNGcmZUS01OZUREYWNuSE9GWlNQcWdR?= =?utf-8?B?a3QwSTNqK2ROY3hieUxjZlFLOUFvTFhjdUxVY3J5K01pVlNac200dlZIQlBB?= =?utf-8?B?NDkwWDB1ZTZGMDRqODZ1OXNWTFl0dEJtM3M3Y3NjOHdNbTVBV2hLemF1MTR4?= =?utf-8?B?ZFg3UEpSMGZ2S0t2c0pKVGJreTd6N0pqd0pDRHZzU1JIa0NSZitnU1FwYmNa?= =?utf-8?B?d29aSGxUcjZubkI2VEVhazViVnRkNzJ1dGdSMzl6K2dsZ3RyclNyZDMrMmdT?= =?utf-8?B?dkpWNU9ZQXN4eVNLeVJmL1JqNFRoTHpPSituSThXNk1xVWxreExpQjJ0ZDJO?= =?utf-8?B?TzFHVDE2dzNMNjF1WHlGSjBqL092SHlhZ1BOV3dqZFhCUUpBUW1xbTdkdmZx?= =?utf-8?B?R0JvQnpISDlZWDFkajlySEVGV1Q3ODJtZEJiMTFjK3NRQStVaDNRMDVsS2Nz?= =?utf-8?B?cm5CaXBKQjkreGZNR2ZUSGVrQjhMdmJiVlptOXlMTE1rR212ZzhZcVVNQ2FL?= =?utf-8?B?cGh1OS9ucmUxdHdaLzFuSml6aHBmb09JQXFJWDRLMnhoSm5SV2dxQkhiT1pj?= =?utf-8?B?QXZ0UHJNaWU0b0FCQ1d0UFFuRllrQ1hBRjR1OHowWHVFU001VjFSdXBBWGlH?= =?utf-8?B?b08zTmxZUHZMcDhxb1FjYS9vcTlkUkc1SEhQejlBZkl4cW41eWlZQnhvVzF4?= =?utf-8?B?YlJFQ3ZZSmh2WDdGWjdwYW5TMC9tdi92UTgvdUZ2V3Jaa1ltU3NSQ1ZLOFpH?= =?utf-8?B?UHRSMHRCb1VFVStDbWZBTkU4a0xuS3EzWFhqU25mVHB6aG1tSWJLcUI2RWN4?= =?utf-8?B?UlcxQzFhTGJIYU5odWtLbmswNjkxOVAyNW5vMzl0aUZlNS92d3FsbkpqeHU0?= =?utf-8?B?b2wxbnZCVklVZUVxaXFuVjdmRXBNcHhPbzdBNm5xMVFoazFLVGltVHFWV29G?= =?utf-8?B?ZTVKYkVqMGd3Z1ZsR1phdlY3KzN0azQ1d3Eya05mOHRtbnZhRDFtbENlWnVm?= =?utf-8?B?c1dQQmM5KzFLTEVaUXVmOGlOc0Q0SEVXOWxTbVNwVUYwZldCOHJ6QW9SSVVu?= =?utf-8?B?dytWUitaQXZqZ2lLbCs4blB1SzNTWnUwZTVWb3EwMVNDMndvQWF5ZGpXdnNI?= =?utf-8?B?ZS9xMGpiUHRQVDBDVC90d2t6TVJTN3krRjBabjZxUC9CMktDL1RmWGVJT0dU?= =?utf-8?Q?xnnc1Sc8iIXG9tGjaxWHiKBPo?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 72d8ad9d-327b-4929-c592-08db72f73cbe X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 22 Jun 2023 08:04:00.8061 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: gzVfypXyPN0GC2LBtpqzwgEWvDlFL5QsGdTHvixHkUe7U9KezPZXFYI8HrKzFTgYMTeI5U4B6Kd2ZbMNhaya7A== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB8481 On 21.06.2023 20:21, Shawn Anastasio wrote: > On 6/21/23 12:54 PM, Andrew Cooper wrote: >> Given: >> >> #define r0 0 >> >> do the assemblers really not understand register names? That seems mad. > > Yeah as surprising as it is, ppc64 assemblers don't handle register > names by default. I think at some point a flag was added to GAS (and > probably llvm? will have to check) to define them for you, but I'm not > sure which version introduced the flag. Isn't it that you simply need to prefix them with %? That looks to be working for me without any special options in PPC code I maintain for an entirely different purpose. Jan From xen-devel-bounces@lists.xenproject.org Thu Jun 22 08:14:07 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 08:14:07 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553325.863810 (Exim 4.92) (envelope-from ) id 1qCFS2-0002Om-VI; Thu, 22 Jun 2023 08:13:58 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553325.863810; Thu, 22 Jun 2023 08:13:58 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCFS2-0002Of-Si; Thu, 22 Jun 2023 08:13:58 +0000 Received: by outflank-mailman (input) for mailman id 553325; Thu, 22 Jun 2023 08:13:58 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCFS2-0002OZ-1w for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 08:13:58 +0000 Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id ba6fd125-10d4-11ee-8611-37d641c3527e; Thu, 22 Jun 2023 10:13:54 +0200 (CEST) Received: from Dell.bugseng.com (unknown [37.160.126.171]) by support.bugseng.com (Postfix) with ESMTPSA id 245BD4EE0737; Thu, 22 Jun 2023 10:13:53 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: ba6fd125-10d4-11ee-8611-37d641c3527e From: Federico Serafini To: xen-devel@lists.xenproject.org Cc: consulting@bugseng.com, Federico Serafini , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk , Michal Orzel , Xenia Ragiadakou , Ayan Kumar Halder Subject: [XEN PATCH] xen/arm: fixed violations of MISRA C:2012 R8.3 on parameter names. Date: Thu, 22 Jun 2023 10:13:41 +0200 Message-Id: X-Mailer: git-send-email 2.34.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit To comply with Rule 8.3 ("All declarations of an object or function shall use the same names and type qualifiers") change the parameter names of function declarations to be consistent with the names used in the corresponding function definitions. Signed-off-by: Federico Serafini --- xen/arch/arm/include/asm/event.h | 2 +- xen/arch/arm/include/asm/fixmap.h | 2 +- xen/arch/arm/include/asm/gic.h | 2 +- xen/arch/arm/include/asm/gic_v3_its.h | 5 +++-- xen/arch/arm/include/asm/grant_table.h | 6 +++--- xen/arch/arm/include/asm/guest_access.h | 4 ++-- xen/arch/arm/include/asm/irq.h | 2 +- xen/arch/arm/include/asm/mm.h | 2 +- xen/arch/arm/include/asm/regs.h | 2 +- xen/arch/arm/include/asm/vgic.h | 4 ++-- 10 files changed, 16 insertions(+), 15 deletions(-) diff --git a/xen/arch/arm/include/asm/event.h b/xen/arch/arm/include/asm/event.h index b14c166ad6..fa54ef8869 100644 --- a/xen/arch/arm/include/asm/event.h +++ b/xen/arch/arm/include/asm/event.h @@ -3,7 +3,7 @@ #include -void vcpu_kick(struct vcpu *v); +void vcpu_kick(struct vcpu *vcpu); void vcpu_mark_events_pending(struct vcpu *v); void vcpu_update_evtchn_irq(struct vcpu *v); void vcpu_block_unless_event_pending(struct vcpu *v); diff --git a/xen/arch/arm/include/asm/fixmap.h b/xen/arch/arm/include/asm/fixmap.h index d0c9a52c8c..734eb9b1d4 100644 --- a/xen/arch/arm/include/asm/fixmap.h +++ b/xen/arch/arm/include/asm/fixmap.h @@ -30,7 +30,7 @@ extern lpae_t xen_fixmap[XEN_PT_LPAE_ENTRIES]; /* Map a page in a fixmap entry */ -extern void set_fixmap(unsigned int map, mfn_t mfn, unsigned int attributes); +extern void set_fixmap(unsigned int map, mfn_t mfn, unsigned int flags); /* Remove a mapping from a fixmap entry */ extern void clear_fixmap(unsigned int map); diff --git a/xen/arch/arm/include/asm/gic.h b/xen/arch/arm/include/asm/gic.h index 76e3fa5dc4..f1ef347edc 100644 --- a/xen/arch/arm/include/asm/gic.h +++ b/xen/arch/arm/include/asm/gic.h @@ -257,7 +257,7 @@ int gic_remove_irq_from_guest(struct domain *d, unsigned int virq, extern void gic_clear_pending_irqs(struct vcpu *v); extern void init_maintenance_interrupt(void); -extern void gic_raise_guest_irq(struct vcpu *v, unsigned int irq, +extern void gic_raise_guest_irq(struct vcpu *v, unsigned int virtual_irq, unsigned int priority); extern void gic_raise_inflight_irq(struct vcpu *v, unsigned int virtual_irq); diff --git a/xen/arch/arm/include/asm/gic_v3_its.h b/xen/arch/arm/include/asm/gic_v3_its.h index fae3f6ecef..c24d4752d0 100644 --- a/xen/arch/arm/include/asm/gic_v3_its.h +++ b/xen/arch/arm/include/asm/gic_v3_its.h @@ -190,8 +190,9 @@ struct pending_irq *gicv3_its_get_event_pending_irq(struct domain *d, uint32_t eventid); int gicv3_remove_guest_event(struct domain *d, paddr_t vdoorbell_address, uint32_t vdevid, uint32_t eventid); -struct pending_irq *gicv3_assign_guest_event(struct domain *d, paddr_t doorbell, - uint32_t devid, uint32_t eventid, +struct pending_irq *gicv3_assign_guest_event(struct domain *d, + paddr_t vdoorbell_address, + uint32_t vdevid, uint32_t eventid, uint32_t virt_lpi); void gicv3_lpi_update_host_entry(uint32_t host_lpi, int domain_id, uint32_t virt_lpi); diff --git a/xen/arch/arm/include/asm/grant_table.h b/xen/arch/arm/include/asm/grant_table.h index e13dfeefa5..bd4eea2317 100644 --- a/xen/arch/arm/include/asm/grant_table.h +++ b/xen/arch/arm/include/asm/grant_table.h @@ -36,10 +36,10 @@ static inline bool gnttab_release_host_mappings(const struct domain *d) return true; } -int create_grant_host_mapping(unsigned long gpaddr, mfn_t mfn, +int create_grant_host_mapping(unsigned long addr, mfn_t frame, unsigned int flags, unsigned int cache_flags); -int replace_grant_host_mapping(unsigned long gpaddr, mfn_t mfn, - unsigned long new_gpaddr, unsigned int flags); +int replace_grant_host_mapping(unsigned long addr, mfn_t mfn, + unsigned long new_addr, unsigned int flags); /* * The region used by Xen on the memory will never be mapped in DOM0 diff --git a/xen/arch/arm/include/asm/guest_access.h b/xen/arch/arm/include/asm/guest_access.h index 4421e43611..c37cf7d871 100644 --- a/xen/arch/arm/include/asm/guest_access.h +++ b/xen/arch/arm/include/asm/guest_access.h @@ -12,11 +12,11 @@ unsigned long raw_clear_guest(void *to, unsigned int len); /* Copy data to guest physical address, then clean the region. */ unsigned long copy_to_guest_phys_flush_dcache(struct domain *d, - paddr_t phys, + paddr_t gpa, void *buf, unsigned int len); -int access_guest_memory_by_ipa(struct domain *d, paddr_t ipa, void *buf, +int access_guest_memory_by_ipa(struct domain *d, paddr_t gpa, void *buf, uint32_t size, bool is_write); #define __raw_copy_to_guest raw_copy_to_guest diff --git a/xen/arch/arm/include/asm/irq.h b/xen/arch/arm/include/asm/irq.h index 11bc85d111..105b33b37d 100644 --- a/xen/arch/arm/include/asm/irq.h +++ b/xen/arch/arm/include/asm/irq.h @@ -76,7 +76,7 @@ void init_IRQ(void); int route_irq_to_guest(struct domain *d, unsigned int virq, unsigned int irq, const char *devname); -int release_guest_irq(struct domain *d, unsigned int irq); +int release_guest_irq(struct domain *d, unsigned int virq); void arch_move_irqs(struct vcpu *v); diff --git a/xen/arch/arm/include/asm/mm.h b/xen/arch/arm/include/asm/mm.h index 4262165ce2..d78f7a183a 100644 --- a/xen/arch/arm/include/asm/mm.h +++ b/xen/arch/arm/include/asm/mm.h @@ -225,7 +225,7 @@ extern void setup_directmap_mappings(unsigned long base_mfn, unsigned long nr_mf /* Map a frame table to cover physical addresses ps through pe */ extern void setup_frametable_mappings(paddr_t ps, paddr_t pe); /* map a physical range in virtual memory */ -void __iomem *ioremap_attr(paddr_t start, size_t len, unsigned int attributes); +void __iomem *ioremap_attr(paddr_t pa, size_t len, unsigned int attributes); static inline void __iomem *ioremap_nocache(paddr_t start, size_t len) { diff --git a/xen/arch/arm/include/asm/regs.h b/xen/arch/arm/include/asm/regs.h index 0693a68131..ef34b38aa1 100644 --- a/xen/arch/arm/include/asm/regs.h +++ b/xen/arch/arm/include/asm/regs.h @@ -58,7 +58,7 @@ static inline bool guest_mode(const struct cpu_user_regs *r) } register_t get_user_reg(struct cpu_user_regs *regs, int reg); -void set_user_reg(struct cpu_user_regs *regs, int reg, register_t val); +void set_user_reg(struct cpu_user_regs *regs, int reg, register_t value); #endif diff --git a/xen/arch/arm/include/asm/vgic.h b/xen/arch/arm/include/asm/vgic.h index 328fd46d1b..aa9f49409e 100644 --- a/xen/arch/arm/include/asm/vgic.h +++ b/xen/arch/arm/include/asm/vgic.h @@ -355,8 +355,8 @@ bool vgic_evtchn_irq_pending(struct vcpu *v); int domain_vgic_register(struct domain *d, int *mmio_count); int domain_vgic_init(struct domain *d, unsigned int nr_spis); void domain_vgic_free(struct domain *d); -int vcpu_vgic_init(struct vcpu *vcpu); -int vcpu_vgic_free(struct vcpu *vcpu); +int vcpu_vgic_init(struct vcpu *v); +int vcpu_vgic_free(struct vcpu *v); void vgic_inject_irq(struct domain *d, struct vcpu *v, unsigned int virq, bool level); -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 22 08:15:36 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 08:15:36 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553332.863821 (Exim 4.92) (envelope-from ) id 1qCFTV-0002xx-92; Thu, 22 Jun 2023 08:15:29 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553332.863821; Thu, 22 Jun 2023 08:15:29 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCFTV-0002xq-6M; Thu, 22 Jun 2023 08:15:29 +0000 Received: by outflank-mailman (input) for mailman id 553332; Thu, 22 Jun 2023 08:15:27 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCFTT-0002xc-Hu for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 08:15:27 +0000 Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id f048e08d-10d4-11ee-8611-37d641c3527e; Thu, 22 Jun 2023 10:15:24 +0200 (CEST) Received: from [192.168.1.198] (unknown [151.37.206.199]) by support.bugseng.com (Postfix) with ESMTPSA id C3CEA4EE0737; Thu, 22 Jun 2023 10:15:22 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: f048e08d-10d4-11ee-8611-37d641c3527e Message-ID: <6b0ca17e-d6c7-f7f1-e4b1-26977008b873@bugseng.com> Date: Thu, 22 Jun 2023 10:15:20 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [XEN PATCH v2] xen/include: avoid undefined behavior. Content-Language: en-US To: Jan Beulich Cc: sstabellini@kernel.org, michal.orzel@amd.com, xenia.ragiadakou@amd.com, ayan.kumar.halder@amd.com, consulting@bugseng.com, andrew.cooper3@citrix.com, roger.pau@citrix.com, bertrand.marquis@arm.com, julien@xen.org, George Dunlap , Wei Liu , xen-devel@lists.xenproject.org References: <9d222cc83013aaa67b45638b27f5975b60aecb37.1687332385.git.nicola.vetrini@bugseng.com> <0fcc228c-548f-9051-b8ce-4d79a3d8293f@suse.com> From: Nicola Vetrini In-Reply-To: <0fcc228c-548f-9051-b8ce-4d79a3d8293f@suse.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit On 21/06/23 10:48, Jan Beulich wrote: > On 21.06.2023 09:58, Nicola Vetrini wrote: >> Redefine BUILD_BUG_ON_ZERO to fully comply with C99 avoiding >> undefined behavior 58 ("A structure or union is defined as >> containing no named members (6.7.2.1)." > > Here and in the title I'm not happy about you referencing undefined > behavior. What we do here is use a well-known compiler extension (and I'm > sure you're aware we do so elsewhere, where it's actually going to remain > as is from all I can tell right now). > Noted, I'll change the commit message. >> --- a/xen/include/xen/lib.h >> +++ b/xen/include/xen/lib.h >> @@ -51,9 +51,10 @@ >> e.g. in a structure initializer (or where-ever else comma expressions >> aren't permitted). */ >> #define BUILD_BUG_ON_ZERO(cond) \ >> - sizeof(struct { _Static_assert(!(cond), "!(" #cond ")"); }) >> + (sizeof(struct { char c; _Static_assert(!(cond), "!(" #cond ")"); }) - 1U) > > To be compatible with whatever odd ABIs new ports may have, maybe better to > AND or multiply with 0? (I also don't think a U suffix is warranted here.) Good idea > >> #else >> -#define BUILD_BUG_ON_ZERO(cond) sizeof(struct { int:-!!(cond); }) >> +#define BUILD_BUG_ON_ZERO(cond) \ >> + (sizeof(struct { unsigned u : (cond) ? -1 : sizeof(unsigned) * 8; }) - sizeof(unsigned)) > > What's wrong with just giving the bitfield a name: > > #define BUILD_BUG_ON_ZERO(cond) sizeof(struct { int _:-!!(cond); }) > A named bitfield with zero width is not allowed by the standard, which is why the fix introduces a constant positive width. I'll send a v3 shortly addressing your previous remarks, though. -- Nicola Vetrini, BSc Software Engineer, BUGSENG srl (https://bugseng.com) From xen-devel-bounces@lists.xenproject.org Thu Jun 22 08:15:40 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 08:15:40 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553334.863831 (Exim 4.92) (envelope-from ) id 1qCFTg-0003GZ-Gd; Thu, 22 Jun 2023 08:15:40 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553334.863831; Thu, 22 Jun 2023 08:15:40 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCFTg-0003GR-D7; Thu, 22 Jun 2023 08:15:40 +0000 Received: by outflank-mailman (input) for mailman id 553334; Thu, 22 Jun 2023 08:15:38 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCFTe-0003FY-Er for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 08:15:38 +0000 Received: from esa3.hc3370-68.iphmx.com (esa3.hc3370-68.iphmx.com [216.71.145.155]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id f6401485-10d4-11ee-b237-6b7b168915f2; Thu, 22 Jun 2023 10:15:36 +0200 (CEST) Received: from mail-bn7nam10lp2100.outbound.protection.outlook.com (HELO NAM10-BN7-obe.outbound.protection.outlook.com) ([104.47.70.100]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 22 Jun 2023 04:15:32 -0400 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) by CH2PR03MB5174.namprd03.prod.outlook.com (2603:10b6:610:9f::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.23; Thu, 22 Jun 2023 08:15:27 +0000 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::1c83:1877:a68b:8902]) by SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::1c83:1877:a68b:8902%6]) with mapi id 15.20.6521.020; Thu, 22 Jun 2023 08:15:26 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: f6401485-10d4-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1687421736; h=date:from:to:cc:subject:message-id:references: content-transfer-encoding:in-reply-to:mime-version; bh=TXZhjy6E/HE66AXCHOrtlqG07p5zVUtWF65iqFaydjs=; b=cTzw4TBEk8V1vByR1MSVlZNntOaic2317w/tqQas2lF2a7wakJuVI/vz LuUR2XVzOpP65qys/0nh2vs6E0ULgwY02yONluy+pz1MdIzOqSOYFjTdY Bl4drQj3gMwACbaYAamq/A45CuWgktVy/nRC09keLNgyL1QSLMuMmPBii c=; X-IronPort-RemoteIP: 104.47.70.100 X-IronPort-MID: 113739223 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:yNSf3Kl0sqstFE5D4jv5ivro5gwTJ0RdPkR7XQ2eYbSJt1+Wr1Gzt xJJX2iBOffZajajKd1za9my80NQsZTRztRjQVBl/yo0RSMWpZLJC+rCIxarNUt+DCFhoGFPt JxCN4aafKjYaleG+39B55C49SEUOZmgH+a6U6icfHgqH2eIcQ954Tp7gek1n4V0ttawBgKJq LvartbWfVSowFaYCEpNg064gE0p5KyaVA8w5ARkPqgV5gWGzRH5MbpETU2PByqgKmVrNrbSq 9brlNmR4m7f9hExPdKp+p6TnpoiG+O60aCm0xK6aoD66vRwjnVaPpUTbZLwXXx/mTSR9+2d/ f0W3XCGpaXFCYWX8AgVe0Ew/yiTpsSq8pefSZS0mZT7I0Er7xIAahihZa07FdRwxwp5PY1B3 cIKcykQbBCIvby32rSfEOdmmf0pFvC+aevzulk4pd3YJdAPZMmbBo/suppf1jp2gd1SF/HDY cZfcSBocBnLfxxIPBEQFY46m+CrwHL4dlW0qnrM/fZxvzeVk1Q3ieC1WDbWUoXiqcF9hEGXq 3iA523kKhobKMae2XyO9XfEaurnxHqgB9lDTufjnhJsqFjDxVAwNicbb2W+/OuF21eOcOl7d HVBr0LCqoB3riRHVOLVYRq8p3KVuw8GbPBZGeY69QKlx7Ld5kCSAW1sZi5MbpkqudE7QRQu1 0SVhJX5CDp3qrqXRHmBsLCOoluaHiwYLnQLYyMeeiID78P+u4E4jh/JTdFLHba8i5v+HjSY6 zKAoTU6hr4TpdUWzKj99lfC6xqzorDZQwhz4R/YNkqn8wd4aYiNd4Gur1/B4p5oN52FR1OMu HwFncm27+0UC5yJ0iuXT40lBLi0496VPTuahkRgd6TN7Byo8n+nOIpWvzd3IR4xNt5eIGexJ kjOpQlW+ZlfemOwarN6aJ6wDMJsyrX8EdPiVbbfad8mjoVNSTJrNRpGPSa4t10BWmB1+U3jE f93qfqRMEs= IronPort-HdrOrdr: A9a23:NFtFqKstzagUtew/oIY2UGT97skDSdV00zEX/kB9WHVpmwKj5r mTdZUgpGfJYVMqMk3I9urwXZVoLUmsl6KdpLNhXotKPzOGhILLFvAH0WKK+VSJcBEWtNQ86U 4KSdkYNDSfNykdsS842mWF+hQbreVvPJrGuQ4W9RlQcT0= X-Talos-CUID: =?us-ascii?q?9a23=3A7F6uHmolGFFw5PRQrPGzehDmUf43KWTAznfbGRG?= =?us-ascii?q?5E2BNErOfVmaawpoxxg=3D=3D?= X-Talos-MUID: 9a23:tD554QpF31HZVz5zlwMezzQyN/tL3Z6jMn4IzIc66tC0HhdUZA7I2Q== X-IronPort-AV: E=Sophos;i="6.00,263,1681185600"; d="scan'208";a="113739223" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=MtO5y6ji42YuQbtp7jYe1CsbUCfg5k4MKjCmLaRiebLjkpdBTvDfhRyivKvwdHQfkzPXZuonE/CabiDEhStKGN6WpjrBX9NwNF8Aa6gsplkLMSkFDu1zTZMMXyw4vGPUY/rCc9q1ktOx1Oe/9TTm19FsbbqXTjrgN48CuJTiWEw/lHpkom3PzRzjRXI969DYHQX7lnPfDPifXpIEDIhp9shalhtehDyqorQ4sm+VpkFci+0vIQdQn6GHnZeNBpCD+Tqha+4nioqgetfYOr2Te2/K2JiSgPgb/QsMSW68YnAuLMYjXp6rbTvUXLjqSWhuisugspUO/QHqYFh4UCgwRw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=lBWQaluGv8p5xtOMjIrR3uIbrFpSciKpPmLvQgUj4E4=; b=dOMu+Gj8XllhwI2OXA5730n1Zu/irF5r2zHUhf9YUQCPX9Vj0FIo5vS419lgXUr5scKojugVg+R/+cwiG2Le5+DT/sZz2xARhAR9j+1/G/4pu8FQBi3WG6qxrtVV6MP9dXrBCpkDUej92A+aUTfq1LkvyXy9ResLzwsl5PZXy0kL5iKkxKu7SrSfNGjmx5qiE9kISVCy14G385ocSgDr8GFoPF1d6RsT0qW8nPhdC1nEfnvHkv1lC6W0sbO9iHwrGL9z3Ruo2CO8xt7vZaLTviWscJ4xxmYVmJSIqCQryfZD5cMkEgxJwWRIDy+XECiHUuYXb8GirZYqeXWQmT8nTw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=lBWQaluGv8p5xtOMjIrR3uIbrFpSciKpPmLvQgUj4E4=; b=wU46ViUcQBPg5gGLDhxIHeZ6KL1B0n5U4M5zqt2VkWmAl/s8WZnjLbPvH7J4fTYr7hl7qbNqXhblF+7zVvjtigjhLMysl7x0FbuBJdx6kKD1jzR/deFBLuQlWZhjI9L3O3+Vx0pHyifvvsKTsd5wtA+WUL+K/7dKlvxKNHLSmoo= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Date: Thu, 22 Jun 2023 10:15:20 +0200 From: Roger Pau =?utf-8?B?TW9ubsOp?= To: Volodymyr Babchuk Cc: "xen-devel@lists.xenproject.org" , Oleksandr Andrushchenko , Jan Beulich , Andrew Cooper , Wei Liu , George Dunlap , Julien Grall , Stefano Stabellini , Paul Durrant Subject: Re: [PATCH v7 01/12] vpci: introduce per-domain lock to protect vpci structure Message-ID: References: <20230613103159.524763-1-volodymyr_babchuk@epam.com> <20230613103159.524763-2-volodymyr_babchuk@epam.com> <87352kpj04.fsf@epam.com> Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <87352kpj04.fsf@epam.com> X-ClientProxiedBy: LO4P123CA0396.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:18f::23) To SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|CH2PR03MB5174:EE_ X-MS-Office365-Filtering-Correlation-Id: 86237ee6-1451-4c36-e5dc-08db72f8d596 X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 0sP71ABcopaHUNkWWGw6TO5RHdDnrIBduZkp7X7Nj+hSeFhb6Swp3dXIRUkBqOkQWdEXhH1z+ekSTZq39tCFqbzuLPtvJNKtRd//R2TX80dhCDbl8fLxKS44/TJmTYFAJup0ENrawvHDMNffTBfIaVKtT9WogSbbiNHyZIUPCRDu1SuzVHsLJfHE69hWzSE7s4sgQIKSbesaQoV/LC4W2jEfQlWsX7zjlZrcmbWD3Qlj9PU0oodSxYclgwKEkVC1VZ6hwndj6lyC+bYAY9TYHdqN/dUuDhqmrKrIw2cN9or3VI1v2hye1lhAuKFjz/tDegkaY13TxNa6WTyNpQjYGVwjL+OjHqEEmV1RyGmUbN2No/OeQ49zM36xRXulqtY/dHDNSOZVX69GAxf1dgRuhTxmN3uGFORsNFu2FiNRNazaX1NqCGs2wnab1brhpCMrtdItc+RjF6G5SArCRC9Q/X8wol207P7XaUyb5ruZ6/RNcvllCv1fCapLvNq1oiokWz3Nff5Zgj/mq8j/1VhIGnGWxXWQslne4+uGcqcJcnA= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(136003)(396003)(39860400002)(376002)(346002)(366004)(451199021)(6486002)(966005)(6666004)(38100700002)(83380400001)(186003)(9686003)(6512007)(6506007)(85182001)(66476007)(316002)(6916009)(4326008)(66556008)(66946007)(2906002)(7416002)(8936002)(8676002)(26005)(86362001)(5660300002)(41300700001)(54906003)(66899021)(478600001)(82960400001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?VXlqeDRQQS8wNTExTWJ1VmdjbkFseFk5T001UVJZN0xkL0RzdnlPeEVtZVMx?= =?utf-8?B?SitNWTZMcGR6V0VqZ0NDMVZlSy9Cb0M1d1A1ZGYxSkRSZ09lK1h1SjVNMnhm?= =?utf-8?B?TmhmUnRpWEJLdUNHam9UamhwMDRDLzF6U0cxT2dtcW9pdVZiSmpPN1VhUHUy?= =?utf-8?B?RkN3RmMrSDJCVjZtYkJ5eWZEZDBmWExvSWpkVWVNNGFTMmtiZEVveG9tSmdl?= =?utf-8?B?YTFGVTlSby9qVXVRTVFRV0Z2c0R1ZjlmMXJqajR4eFlQc2hGUjA5UVJ4aWJC?= =?utf-8?B?ZU5US1FoZm1NUXFSRlhya2hGcFMvOG5KYXN6Si93Z243S3FjakNLS21pcTN3?= =?utf-8?B?eElQdlA2bTIvZlB0M3gxYmRBSGlGSmljZXNzV0VobWdkT1hkTE1wSXFxQ2Iw?= =?utf-8?B?eFBzYXlRVlNLMGg5QWcrcmxZaEJIMGx4eUYvVmZLNnZmNjV2SkpySFdPVjhi?= =?utf-8?B?NWpZVTR1TXRob2NIZUp5SFVUZ3JFcHp5ZXVjcVVIeXQ3dk9xdmlCVzZPTkFh?= =?utf-8?B?Nld3YzFtempxaThiOTF6UUFtaDkxUnhNSENFL1lQWkZEb2lVMUFkcFY1bmQy?= =?utf-8?B?YWJzdGFydG1zNlZFQnBVWUVTREVBeEV1RHNqTkhLU0Y5ZFIySDkzTHdjcVhu?= =?utf-8?B?b1Vzd2R4WFU3MU9pZlMyYUx5M1VMam1OQ3FvbTdLaTVLQTdrYXJKaG5MOHZQ?= =?utf-8?B?ZXF5aFZLaDh6N3hHa2hqUm82a0x0TS82c1hsQTZNTm5Hc0g2cjBWU0lYbXVa?= =?utf-8?B?K1F6a1RIRGFmK3J1VXBLeFE4dk81aWUrMVRjWjF3K1V0TnM5NmtSMFFEdFpG?= =?utf-8?B?d1pIMzJldXNpOWhkOFNPL3dIVDhkVm1WOElDMzlxczJjNFdxMEpzM3ZrWmRY?= =?utf-8?B?eEJBMXFvc2xwbVFzcllNN3hUUlVITW51SG9oeGJKdlZYMmVQVTRBWCtmeEEx?= =?utf-8?B?VXQ1RkVQTE9WWUVWZWZXdzFPM2E4eDBRcnp3ZTJUa2lwN0hKZ240VUVqeDlZ?= =?utf-8?B?Z1NPU1o5bk9RT1lOUG9GWDZoQUlpc21rWStKR1NkQnAxakVzUXl5allFckZU?= =?utf-8?B?blNyMlVJcVZ6UHVJSVVacXJTS1NOcXRwTFBvalRaenU5d0RsbjRiNk5xck51?= =?utf-8?B?V29kYUdWMzk1b1d4MjVSU0tnWVFROUxZd3hTTVpvTm42VVBkdGZIMDR3SVFD?= =?utf-8?B?YUdWOElGakNjdmZFTnYzSnJSekl0VGNPam5EclNKV3JaZHdqVHk4NjVtUlk3?= =?utf-8?B?TkFiakxMazZjUzBBYUgxdzlSY0FEeWJyYldFckYxd1AyeUZTbHJUWEwxUjVx?= =?utf-8?B?VStVaXJ3VE9ITll1VXQ5QVNoeWFhdGZBc2s2d1ZJYUZBbkEydStPempFcjNr?= =?utf-8?B?QmJJQXhMUy84bGhLT3l0MTRFQWtCeFdta21IT0VzdUxtazNZU3FjQlhNeCtW?= =?utf-8?B?d1QzYzFPbjFVV0FyaFVLRnJYYzAxLzdwb3Buc1Bwb1N0dFpYQkRycEZRQjV1?= =?utf-8?B?ZWdHR0U0cTlXRzM3R3FrdjgwTkFWVmVNdm9UQzBJdEMvM1krTXk1YnRQSWJu?= =?utf-8?B?TExzclJrdDUrOUxNNklTalY4VWxnTUJDYitjWWNDeElqbmxtS0hWdk0zczN3?= =?utf-8?B?NGtYWHluWjlCV3NvZ0VHamlydS9Bd3VOd29zdDVaMk1RbU90ME0xdU15RzFQ?= =?utf-8?B?c2VIWjRlaWVlTnVHZzM0dWtzNkFXaUdLUWtvK21Ncm1JUzlXUisyZWRhR1p4?= =?utf-8?B?NDZkZ3ZMOGd0RzBST00rUFVuVTBNdzgyaFh2bEh6RENiZUY5NytMT3V2c0Zz?= =?utf-8?B?T2hNRzRkS2VZcDdud1RWdzhTdElOcnhMclEySG1MSVk4TEZyM3NKYjh3elll?= =?utf-8?B?aENpSkhlNllwWkg5QlJtZlZ2dUtzS2pUVCtFQ1B2bkpLZHJoM3djNm9MbmJK?= =?utf-8?B?SjJGMGpVMjQrY1A0dEJlVm5yRFlYaDhHczQwRzZwVHp0Ni9acUNpeUYrbFBE?= =?utf-8?B?NjZlaFlVdWFpdlVQSlU3TzMyM2JUVVVCNmNld0VQWWluNXlWRjVtdm9XRWg3?= =?utf-8?B?aHUxVWFEV2NaV256Wk1EY0ZkZEFPVWsxZmgxc2FqbXlWazM4SWxJNitKTkN0?= =?utf-8?B?R1p4RkFYNHllTWxnTitxM3BtSmZ5RWtLQmNPUFBrTVRuWndENlRPZE52QWpD?= =?utf-8?B?U2c9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: L6QEhTe1Flufnfdb7VY+68xbHR/q8IhonKV7Z2ewf/flfAVnpvkiHVNeSe9DTlee5IcqyGnNYodfKrHsfF3U/2YThGkUiEfQychv/jzvLzmF5oWPSQfOmR81f4VOtRgPhOeLCJoR1dNQKgASlavMUqQCTAJnV3LuCa6R9hx7ipAxmm18aWlUePZPfD7krvF+O3iiZQJegVxcONofwZpxc3hGrQEVRT/jxVYEN/oILxHIHYeqNXJBKylQpYVAfbTCZK5yI/U2t2qi8CH9cxTheY1JHbJQ550Ta19Tb2XpGNO3bYSXt6ns/oc7aprjLG4cbn84qM7orXiMybexRMRMLcaiT8ls/l96YU2pH/0cQfGD6MjnxwufrcsviBqFP2Y05819mzbGx53wLg/jwecfdq43kIr7Iz0FI/Xo03B+qrtjfCuoMo35TuJDrzRl/MtF+QPPc4d4KbLRcLPTpWSHi6ui01XcDMGV6iwjwt1sAiz3PVzga6aCGHRAj852/gPl6Ln+J4dqRcANr/2x3RhqRBnyJJMSZHSVXrQO8apCzwrJmeKV/x3wSWYzwZk9v7lSdy7prGKE0Nn5HTh44dTNEnn0woRQ5ZI3kHDHM0fvhnigeDXrB3EkwWBXnkkiZ2X6OW237r3bo/GhCtF/q2qQy1RtW7SwKvOtZvXUPS2wgu2Eu38mfUwFTraO0KEUwINekkjpzjFTUL5qY/vly71aIBX63KloHroFqxYOrZpbtdCVbv+cZAGHnWxSeZ2SfzZrO97WaqfWv2ngIaooFYUi/VQTMtsOHwXbZHyQpXIgHl0VRRkK6W2/qUdCQiXp+5JgVfvq8l6c940J1Hjd+HQrucyXX7s2J3OfkEQb6OZh+d/rZ5p8euaockComkiTDiR3 X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 86237ee6-1451-4c36-e5dc-08db72f8d596 X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 22 Jun 2023 08:15:26.6086 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: M+HX2NRH91GOV4u9/lm/EtyDF0lDBM6wlTsHz6UHrDsahjvpmsxKs/p7ZyObxUH0cxPLjqlrrVXibZWPn11udw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH2PR03MB5174 On Wed, Jun 21, 2023 at 10:07:20PM +0000, Volodymyr Babchuk wrote: > > Hi Roger, > > Roger Pau Monné writes: > > > On Tue, Jun 13, 2023 at 10:32:26AM +0000, Volodymyr Babchuk wrote: > >> From: Oleksandr Andrushchenko > >> > >> Introduce a per-domain read/write lock to check whether vpci is present, > >> so we are sure there are no accesses to the contents of the vpci struct > >> if not. This lock can be used (and in a few cases is used right away) > >> so that vpci removal can be performed while holding the lock in write > >> mode. Previously such removal could race with vpci_read for example. > >> > >> 1. Per-domain's vpci_rwlock is used to protect pdev->vpci structure > >> from being removed. > >> > >> 2. Writing the command register and ROM BAR register may trigger > >> modify_bars to run, which in turn may access multiple pdevs while > >> checking for the existing BAR's overlap. The overlapping check, if done > >> under the read lock, requires vpci->lock to be acquired on both devices > >> being compared, which may produce a deadlock. It is not possible to > >> upgrade read lock to write lock in such a case. So, in order to prevent > >> the deadlock, check which registers are going to be written and acquire > >> the lock in the appropriate mode from the beginning. > >> > >> All other code, which doesn't lead to pdev->vpci destruction and does not > >> access multiple pdevs at the same time, can still use a combination of the > >> read lock and pdev->vpci->lock. > >> > >> 3. Optimize if ROM BAR write lock required detection by caching offset > >> of the ROM BAR register in vpci->header->rom_reg which depends on > >> header's type. > >> > >> 4. Reduce locked region in vpci_remove_device as it is now possible > >> to set pdev->vpci to NULL early right after the write lock is acquired. > >> > >> 5. Reduce locked region in vpci_add_handlers as it is possible to > >> initialize many more fields of the struct vpci before assigning it to > >> pdev->vpci. > >> > >> 6. vpci_{add|remove}_register are required to be called with the write lock > >> held, but it is not feasible to add an assert there as it requires > >> struct domain to be passed for that. So, add a comment about this requirement > >> to these and other functions with the equivalent constraints. > >> > >> 7. Drop const qualifier where the new rwlock is used and this is appropriate. > >> > >> 8. Do not call process_pending_softirqs with any locks held. For that unlock > >> prior the call and re-acquire the locks after. After re-acquiring the > >> lock there is no need to check if pdev->vpci exists: > >> - in apply_map because of the context it is called (no race condition > >> possible) > >> - for MSI/MSI-X debug code because it is called at the end of > >> pdev->vpci access and no further access to pdev->vpci is made > >> > >> 9. Check for !pdev->vpci in vpci_{read|write} after acquiring the lock > >> and if so, allow reading or writing the hardware register directly. This is > >> acceptable as we only deal with Dom0 as of now. Once DomU support is > >> added the write will need to be ignored and read return all 0's for the > >> guests, while Dom0 can still access the registers directly. > >> > >> 10. Introduce pcidevs_trylock, so there is a possibility to try locking > >> the pcidev's lock. > >> > >> 11. Use pcidev's lock around for_each_pdev and pci_get_pdev_by_domain > >> while accessing pdevs in vpci code. > >> > >> 12. This is based on the discussion at [1]. > >> > >> [1] https://urldefense.com/v3/__https://lore.kernel.org/all/20220204063459.680961-4-andr2000@gmail.com/__;!!GF_29dbcQIUBPA!zPy31CWFWlyC0xhEHiSj6rOPe7RDSjLranI9KZqhG4ssmChJMWvsPLJPQGTcVsnnowZpP8-LaKJkIWIzb8ue0DoYhg$ [lore[.]kernel[.]org] > >> > >> Suggested-by: Roger Pau Monné > >> Suggested-by: Jan Beulich > >> Signed-off-by: Oleksandr Andrushchenko > > > > Thanks. > > > > I haven't looked in full detail, but I'm afraid there's an ABBA > > deadlock with the per-domain vpci lock and the pcidevs lock in > > modify_bars() vs vpci_add_handlers() and vpci_remove_device(). > > > > I've made some comments below. > > Thank you for the review. I believe that it is a good idea to have a > per-domain pdev_list lock. See my answers below. I think it's important that the lock that protects domain->pdev_list must be the same that also protects pdev->vpci, or else you might run into similar ABBA deadlock situations. The problem then could be that in vpci_{read,write} you will take the per-domain pdev lock in read mode in order to get the pdev, and for writes to the command register or the ROM BAR you would have to upgrade such lock to a write lock without dropping it, and we don't have such functionality for rw locks ATM. Maybe just re-starting the function knowing that the lock must be taken in write mode would be a good solution: writes to the command register will already be slow since they are likely to involve modifications to the p2m. > >> @@ -213,6 +227,7 @@ static void defer_map(struct domain *d, struct pci_dev *pdev, > >> raise_softirq(SCHEDULE_SOFTIRQ); > >> } > >> > >> +/* This must hold domain's vpci_rwlock in write mode. */ > > > > Why it must be in write mode? > > > > Is this to avoid ABBA deadlocks as not taking the per-domain lock in > > write mode would then force us to take each pdev->vpci->lock in order > > to prevent concurrent modifications of remote devices? > > Yes, exactly this. This is mentioned in the commit message: > > 2. Writing the command register and ROM BAR register may trigger > modify_bars to run, which in turn may access multiple pdevs while > checking for the existing BAR's overlap. The overlapping check, if done > under the read lock, requires vpci->lock to be acquired on both devices > being compared, which may produce a deadlock. It is not possible to > upgrade read lock to write lock in such a case. So, in order to prevent > the deadlock, check which registers are going to be written and acquire > the lock in the appropriate mode from the beginning. Might be good to put part of the commit message in the code comment, just saying that the lock must be taken in write mode is not very informative. /* * The per domain lock must be taken in write mode in * order to prevent changes to the vPCI data of devices assigned to * the domain, since the function parses such data. */ > > > > >> static int modify_bars(const struct pci_dev *pdev, uint16_t cmd, bool rom_only) > >> { > >> struct vpci_header *header = &pdev->vpci->header; > >> @@ -287,6 +302,7 @@ static int modify_bars(const struct pci_dev *pdev, uint16_t cmd, bool rom_only) > >> * Check for overlaps with other BARs. Note that only BARs that are > >> * currently mapped (enabled) are checked for overlaps. > >> */ > >> + pcidevs_lock(); > > > > This can be problematic I'm afraid, as it's a guest controlled path > > that allows applying unrestricted contention on the pcidevs lock. I'm > > unsure whether multiple guests could be able to trigger the watchdog > > if given enough devices/vcpus to be able to perform enough > > simultaneous calls to modify_bars(). > > > > Maybe you could expand the per-domain vpci lock to also protect > > modifications of domain->pdev_list? > > > > IOW: kind of a per-domain pdev_lock. > > This might work, but I am not sure if we need to expand vpci lock. Maybe > it is better to add another lock that protects domain->pdev_list? I > afraid that combined lock will be confusing, as it protects two > semi-related entities. I think expanding is the best solution, otherwise you are likely to run into the same ABBA deadlock situations. Thanks, Roger. From xen-devel-bounces@lists.xenproject.org Thu Jun 22 08:15:50 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 08:15:50 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553336.863841 (Exim 4.92) (envelope-from ) id 1qCFTp-0003iD-UT; Thu, 22 Jun 2023 08:15:49 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553336.863841; Thu, 22 Jun 2023 08:15:49 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCFTp-0003i6-PW; Thu, 22 Jun 2023 08:15:49 +0000 Received: by outflank-mailman (input) for mailman id 553336; Thu, 22 Jun 2023 08:15:48 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCFTo-0003FY-GU for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 08:15:48 +0000 Received: from EUR02-VI1-obe.outbound.protection.outlook.com (mail-vi1eur02on2061e.outbound.protection.outlook.com [2a01:111:f400:fe16::61e]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id fdcc5116-10d4-11ee-b237-6b7b168915f2; Thu, 22 Jun 2023 10:15:47 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by DU2PR04MB8728.eurprd04.prod.outlook.com (2603:10a6:10:2df::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.24; Thu, 22 Jun 2023 08:15:45 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6521.024; Thu, 22 Jun 2023 08:15:45 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: fdcc5116-10d4-11ee-b237-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=JD/4+ZINEeKqyOHL8OgxCsPvrA2P1+uesXva83EM5p53Mr5lDLbpjCNe29JwXwxg3MsYM6BIVtO8Auz5QbqNvnODtXPHPk7mHsONo+MvM+ZQng0GofPIyaJMtP2vgCHVHg4LWZ/INLnaxXg8UvloUV4RZ+c269ZvLePRnhp6M5lehTuuAr9tPQdzSZZK/JZWd/DdAZ4OGEzbYydOSxQJ8/M1nHB/AY90q20CL3O64/xyW0u4fQaeksntW8r7Y/36+m0Lkfuy8bFswAubky4XImAPNzV0Zke+nQ1Zw6dkN03PSw0EKkAxnoFBMNLM1AlkXdRezMENm8tffYdHHocz4A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=Eg0nJrcVbuxTVtvD1KesIjeAKMEADEIssyGnJkmt4OY=; b=Pssez+T/xLEsnx8Ro04KIJlg+p1KwHV+SxIN/Dfphgoan3Dqg0tfzj7GjKgQJOm34EC5+zlo2pSUskrZGMaBqnuTs/pX07VBTO3uNMh06ibltYxjKyGqvEhgZYs6t33oMZIvC+rW6FWuL6vXK8zOQEGl62IIshSG4M54zRIuO1ja1PN6Hs10R9HgfKXlq47cWLVAcQdQPsYD5XGAXHZMlQyp6K9VSf6KNsh4mNZaoIWljF247ixRVcG7HAL7o5pMsARTjpYH4ql7RdM5pQomExibKEEag0R/8sPNBnE0B0PPaxf/TuarmnEdsKsl9WL9Q6nhR1ycg3FUdjuqcOAong== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Eg0nJrcVbuxTVtvD1KesIjeAKMEADEIssyGnJkmt4OY=; b=aolsQaGYi0P+/08BNI/XUkDKjJhbbiowsXD8eIQn/EaPH0c6F2mKEQHJ7XKYXOwH+w3+Kg1uEZAG1b4sMHy9UuzfaGSwd4QIF1APsP8zIp8zAjj6KuY27T33R3UnEgE+Fw41RObSHdUCJJ+qLvnee6jQQLexfcOYdF+OtaXY4rgRGKEHQ7BXLwIMpA3oeUb5Vk0rwb24tHfhnhg7BuYB7szZE0Ai2UyX+Wueg2XLATelg33j0R9WwnOK0tIxyb21RVhy4NQb0J3CHh+j+p36qjWM8LcnHkVwHKsharCtq0GSBbx2fcO+rU3kbuR+8MKc5Lll9Wf2OefcorfjYjr6CQ== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <28d92bf2-5157-665f-9c91-9112dc8892dc@suse.com> Date: Thu, 22 Jun 2023 10:15:42 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [XEN PATCH 1/3] build: define ARCH and SRCARCH later Content-Language: en-US To: Andrew Cooper , Anthony PERARD Cc: Jason Andryuk , George Dunlap , Julien Grall , Stefano Stabellini , Wei Liu , xen-devel@lists.xenproject.org References: <20230621161959.1061178-1-anthony.perard@citrix.com> <20230621161959.1061178-2-anthony.perard@citrix.com> From: Jan Beulich In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR0P281CA0037.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:48::19) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|DU2PR04MB8728:EE_ X-MS-Office365-Filtering-Correlation-Id: cf686c06-e8c9-4805-9754-08db72f8e0b7 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: Hrz0PscnKP2eVH8raljLrjuEWsvDQEVBgZtcvOSLyf6bT4AX/thx6BqUMzhI9G69IRCK/7ZqJur0FkczdxVSc1ilPJF5Khyzy7gZ+xi01CHVIk7sygFDeyyPKdI/vcxoTJLTxYJht7x8W9iO+7dqO6cAazSnjrHhE5YdhApzKnAVq53avPcD5viLetlgtlX9c8K2hP2vl3eKi0ja25p39hf3fgjP1PJD0fbmD8eT4NWouuhwt8x0X+O/6/XGXVbDaeN9LhhhiiAkZ4UppjmviedCSI9acl3BO5oM9+seRZvIwlMCHIAonmPW1fZygZyUfqgLMUp12Kw1kIUFJL798yINed0Los8ShfqX8XknLxnq5unUo01fcBWCb7hE7P5G/4YTcXM0e5T9whQpWyf0SrEBXxf6zyuOgBuBQZG0GJUAO/0rvvcnyN7DDuC5jI7wkVv8WAsIfzo47zA/Kn7tiTpjqCtAELXlqYv0SiiGG8rPk5pf4TgOgVEk1jwsHTTMCTXcRqalUY5sMNMabXMM7qufl9KgA4lsmRTbBRJ4pWZITV6MEoVBty2Y0Ro6/i5fRkQleQpfEBtD3oWocYwRsagYdmP+5WhFly27dBDJD29JQqymJFLoR+nCOtpaNZ2sBWaghsYV3e2rSRi4idCwdA== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(136003)(39860400002)(346002)(396003)(366004)(376002)(451199021)(8936002)(41300700001)(6486002)(8676002)(2906002)(6666004)(36756003)(66556008)(66476007)(110136005)(54906003)(86362001)(4326008)(31696002)(66946007)(316002)(38100700002)(478600001)(2616005)(5660300002)(83380400001)(26005)(6512007)(6506007)(31686004)(53546011)(186003)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?QTJROUNDQmxjeDVUbDZjUnpDSHhOc0hjRm1Qa3I2UFMwUDArTkE3UVZRWWMw?= =?utf-8?B?R1RGQ1ZKWnpBTUpPaVluTXpKZEs4R2tlaVVGVzVSTmk5U0pKOHRsY3RpNXJG?= =?utf-8?B?cDlnNjVlNnhTVFlDLzhISHhtQlJkeEE2L0diMDJTNGVKazVpMWhmQVd0MzNS?= =?utf-8?B?ZG51UDZCSzE2TGpyK3hGdkVFSUlaQ0FPUUJqSFpKRWRGcHJtUDNqVStta1U4?= =?utf-8?B?TEd0OXh1eWxjbFRwOEs5MGVFVC9zaWV1d1pKcndIUGp6VHY4Vnhmc25MdVR4?= =?utf-8?B?MEJDciszTEwrTTNSYmZFaUZTV1JidUIzWjg5MGFwRUU5S2ZjNzRnbUwzK0g4?= =?utf-8?B?TnEzK0pibk55eFIzTW9jelo2Vmd0Z2I2UFUrazhGWXpONmNsUVkyQndxcmVQ?= =?utf-8?B?b1VQdGhxNG9tT2V0U2xJMWFsdWFXcHF0N3MyQjRqbHBhR25OQll6Q0xvTWFZ?= =?utf-8?B?L2JRQWt3KzBza0dXbmx5a2VSTnoyaURBTmFQMWJ2d3RoVzNLSldUZHRhdXNS?= =?utf-8?B?Rnp5RWNiQVVGb2xIb3hiM1A1T1ZPYzJkR3czalJkN2NUR2lUeHd6QTB2SkpT?= =?utf-8?B?WG5NRHBjTGM4LzNOcVJ5MkRNa2UzMVZablZxL1JmcTRPbS81N2YvcHR5T3FS?= =?utf-8?B?ekdVdUdXL2NLaTFYamdtSHA2ZitjSVBEZC92MGRYWFNZeVZsYmtYd29ONXc0?= =?utf-8?B?WDByRjM3eGNOTldFZVZyWTlJSTkwaU01eDRoYjJ2WmR1cGR6bHNoOGZNYlFI?= =?utf-8?B?dTNTaUlZNVJYay9XUnUrYks2c004elRBc1VjRDhFaWM0UGRCbDJVd09oY25v?= =?utf-8?B?TXU1VmNCK2lYelQ3VlZZUFBJQjZOV3h6TVhkU0twbm5Db1BzVm9xeVBCMWNR?= =?utf-8?B?V21OTGpXMjZWOTJDU1BRV3BJc3dIdzRRZkhSM29VbUNOVm9IYmFuNk80SkZQ?= =?utf-8?B?WFBrYjUrU2RUL2huSStzQWxtQ204a2ZYVFBOS1BWVGpsQW5tUFp6bWdIeGJ4?= =?utf-8?B?UlF2Z0FwMDFFSWV3cmpheEF1dVhsSUNUUEx3Q0JKekRoQ1llZTFVSnd6ZXI3?= =?utf-8?B?T2FhR25hdFRWSCtVQ2tQZ3pJMWJLTUxTZkpQY2dBbFJxMXJrdkVlejFFRmlq?= =?utf-8?B?ZDhkVmNHMklSUURnUDFST2NRaWk2M1MrZDRTQ0x3QkRSUzdCbElhcUE1VlE4?= =?utf-8?B?b0ZScEVPNG9aNlY3NHNONm91cG53YXdNdHZWSDZpbjljRHpoZkhBQWYzVktX?= =?utf-8?B?S2svTHRuUFlFWkw0RkIzaFN5QmZGVWl6L1VnZDBIT0xoOHVuMVFzRHNzU09q?= =?utf-8?B?RFFIS1NkNVNGMitNcE54aENrUjQwV2lYSG1iamZidnRwQ3NoVkx1OHlqNHBx?= =?utf-8?B?MVFkaW9KblRkOStmVGp1UEFFc2NQMW95M1F3S2V2YjBySWtrQnpIeWZFUUlO?= =?utf-8?B?ckN3RjY1b3lHM25tb1htVUpSUEpBQmFvaHlqSjhWSXVIaG9wUUxwUVBod1Jw?= =?utf-8?B?OVVmZmRLN2tTeEdtM294Nk1SeElCRlIzNnd4NXFzMWl6UU1YektWMS9udDFI?= =?utf-8?B?RnNVcEJKYjlneEVRQlAxK1hJTTFicGhjRlRVdDVYQzM5Wmh3RDI0dkRkYklO?= =?utf-8?B?RnNuaDVoVWx2alNuK25XdWN4eCtibjMyREtCMHRWVFdXS2x5eWJRQVJ0b2JN?= =?utf-8?B?MEgrK3hIS3JWUXlLZHFORzc0VVFhcFlld2pUVzdJL2ZuSmgvWVMwcHE4Y213?= =?utf-8?B?TUdYT3FIWFczT2lqTDRyK0s0MlBoR3haNnBLb2V5YktRVllBeW9kNGlRaDdC?= =?utf-8?B?UzlJSXF0YnBjRkJUeS8xNjZEclZGakxyMkgvZDBYNyszWkVMY1h3eHU1ei9l?= =?utf-8?B?RE5rb3pJVlQvTjlPaDZJZFhuTkwvY1B1ODJXdW5sdjk2SHRXdVR6VVJNRThD?= =?utf-8?B?bmx0ZUJUT3RxMmVQTStqVUNWM0VKdno0MGNRWkhmaXBNZm1NTVliNGJubXJ2?= =?utf-8?B?ejNOMGgwNTV1bGtqSitUWnBXc2lKczV2TWxRSnZOQ3JiSjJxVXUzS1FpbjRH?= =?utf-8?B?YmNaQytuNlNucEVpWDFvQ0dhbkRlRXg0V3MrUjlacTB4V1dJSld1aFNwaHN2?= =?utf-8?Q?iJt6MVsPfKrHcFGgjVU1yi6kT?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: cf686c06-e8c9-4805-9754-08db72f8e0b7 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 22 Jun 2023 08:15:45.1740 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: UaCaNTLlFZVnBYkTTgWGn4eDJ6J3nhMR6f44Ft3862IIM2lJgF3AS1wie+76AvbE8X02lfiCU9EHow5RAR6NBw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU2PR04MB8728 On 21.06.2023 18:25, Andrew Cooper wrote: > On 21/06/2023 5:19 pm, Anthony PERARD wrote: >> Defining ARCH and SRCARCH later in xen/Makefile allows to switch to >> immediate evaluation variable type. >> >> ARCH and SRCARCH depends on value defined in Config.mk and aren't used >> TARGET_SUBARCH or TARGET_ARCH, and not before it's needed in a >> sub-make or a rule. >> >> This will help reduce the number of times the shell rune is been >> run. >> >> With GNU make 4.4, the number of execution of the command present in >> these $(shell ) increased greatly. This is probably because as of make >> 4.4, exported variable are also added to the environment of $(shell ) >> construct. >> >> Also, `make -d` shows a lot of these: >> Makefile:39: not recursively expanding SRCARCH to export to shell function >> Makefile:38: not recursively expanding ARCH to export to shell function >> >> Reported-by: Jason Andryuk >> Signed-off-by: Anthony PERARD >> --- >> xen/Makefile | 13 +++++++------ >> 1 file changed, 7 insertions(+), 6 deletions(-) >> >> diff --git a/xen/Makefile b/xen/Makefile >> index e89fc461fc4b..9631e45cfb9b 100644 >> --- a/xen/Makefile >> +++ b/xen/Makefile >> @@ -35,12 +35,6 @@ MAKEFLAGS += -rR >> >> EFI_MOUNTPOINT ?= $(BOOT_DIR)/efi >> >> -ARCH=$(XEN_TARGET_ARCH) >> -SRCARCH=$(shell echo $(ARCH) | \ >> - sed -e 's/x86.*/x86/' -e s'/arm\(32\|64\)/arm/g' \ >> - -e s'/riscv.*/riscv/g') >> -export ARCH SRCARCH >> - >> # Allow someone to change their config file >> export KCONFIG_CONFIG ?= .config >> >> @@ -241,6 +235,13 @@ include scripts/Kbuild.include >> include $(XEN_ROOT)/Config.mk >> >> # Set ARCH/SUBARCH appropriately. >> + >> +ARCH := $(XEN_TARGET_ARCH) >> +SRCARCH := $(shell echo $(ARCH) | \ >> + sed -e 's/x86.*/x86/' -e s'/arm\(32\|64\)/arm/g' \ >> + -e s'/riscv.*/riscv/g') >> +export ARCH SRCARCH >> + >> export TARGET_SUBARCH := $(XEN_TARGET_ARCH) >> export TARGET_ARCH := $(shell echo $(XEN_TARGET_ARCH) | \ >> sed -e 's/x86.*/x86/' -e s'/arm\(32\|64\)/arm/g' \ > > The change looks plausible to fix this issue, but could we take the > opportunity to dedup the sed expression into a $(call src-arch ...) or so ? > > Except, given that ARCH := $(XEN_TARGET_ARCH) now, doesn't that mean > SRCARCH is always TARGET_ARCH ? > > Can't we simplify this to just be plain aliases? Or, putting it differently, do we actually need both TARGET_* values when they match other (exported) variables anyway? Jan From xen-devel-bounces@lists.xenproject.org Thu Jun 22 08:16:10 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 08:16:10 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553345.863851 (Exim 4.92) (envelope-from ) id 1qCFUA-0004S9-4z; Thu, 22 Jun 2023 08:16:10 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553345.863851; Thu, 22 Jun 2023 08:16:10 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCFUA-0004S0-1p; Thu, 22 Jun 2023 08:16:10 +0000 Received: by outflank-mailman (input) for mailman id 553345; Thu, 22 Jun 2023 08:16:08 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCFU8-0004OO-NA; Thu, 22 Jun 2023 08:16:08 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCFU8-0001bR-Ai; Thu, 22 Jun 2023 08:16:08 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCFU8-0000v1-1P; Thu, 22 Jun 2023 08:16:08 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qCFU8-0006sI-0n; Thu, 22 Jun 2023 08:16:08 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=LukWdKc3MEzJiyRJykE1xBB8p2+zPSUGnqS/QFEK1LA=; b=cOm6PHoQgZdp0OmzLRyuTMcdDN iAut3kIbozoLY5C8DenefkK5HJQAlM8XvFLTBcgHAhUWlyRK6+z1LTBdKoV6hBC+DzkRRCavDCIST 7q+Q4sbmtjfxJpunvAzwf1OQBjrauZlWbqz8utfzmRw7zZA8E4IovhIRICkDAHrZipWw=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [qemu-mainline test] 181544: regressions - FAIL X-Osstest-Failures: qemu-mainline:build-amd64:xen-build:fail:regression qemu-mainline:build-amd64-xsm:xen-build:fail:regression qemu-mainline:build-i386:xen-build:fail:regression qemu-mainline:build-i386-xsm:xen-build:fail:regression qemu-mainline:build-arm64:xen-build:fail:regression qemu-mainline:build-arm64-xsm:xen-build:fail:regression qemu-mainline:build-armhf:xen-build:fail:regression qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-i386:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:build-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:build-arm64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:build-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:build-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pygrub:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking X-Osstest-Versions-This: qemuu=67fe6ae41da64368bc4936b196fee2bf61f8c720 X-Osstest-Versions-That: qemuu=6972ef1440a9d685482d78672620a7482f2bd09a From: osstest service owner Date: Thu, 22 Jun 2023 08:16:08 +0000 flight 181544 qemu-mainline real [real] http://logs.test-lab.xenproject.org/osstest/logs/181544/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-amd64 6 xen-build fail REGR. vs. 180691 build-amd64-xsm 6 xen-build fail REGR. vs. 180691 build-i386 6 xen-build fail REGR. vs. 180691 build-i386-xsm 6 xen-build fail REGR. vs. 180691 build-arm64 6 xen-build fail REGR. vs. 180691 build-arm64-xsm 6 xen-build fail REGR. vs. 180691 build-armhf 6 xen-build fail REGR. vs. 180691 Tests which did not succeed, but are not blocking: test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-xl-xsm 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-raw 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-xsm 1 build-check(1) blocked n/a test-arm64-arm64-xl 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit1 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit2 1 build-check(1) blocked n/a test-arm64-arm64-xl-thunderx 1 build-check(1) blocked n/a test-arm64-arm64-xl-vhd 1 build-check(1) blocked n/a test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a test-armhf-armhf-libvirt 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-qcow2 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-raw 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a test-armhf-armhf-xl-arndale 1 build-check(1) blocked n/a test-armhf-armhf-xl-multivcpu 1 build-check(1) blocked n/a test-armhf-armhf-xl-rtds 1 build-check(1) blocked n/a test-armhf-armhf-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-amd 1 build-check(1) blocked n/a test-amd64-i386-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-raw 1 build-check(1) blocked n/a test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-i386 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-amd64 1 build-check(1) blocked n/a test-amd64-coresched-i386-xl 1 build-check(1) blocked n/a test-amd64-coresched-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-xsm 1 build-check(1) blocked n/a build-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-shadow 1 build-check(1) blocked n/a test-amd64-amd64-xl-rtds 1 build-check(1) blocked n/a build-arm64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a build-armhf-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a build-i386-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-amd 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-pair 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-qcow2 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-vhd 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvshim 1 build-check(1) blocked n/a test-amd64-amd64-pair 1 build-check(1) blocked n/a test-amd64-amd64-pygrub 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-intel 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd11-amd64 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd12-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-multivcpu 1 build-check(1) blocked n/a test-amd64-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit1 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit1 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-intel 1 build-check(1) blocked n/a test-amd64-i386-xl 1 build-check(1) blocked n/a test-amd64-i386-xl-pvshim 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a version targeted for testing: qemuu 67fe6ae41da64368bc4936b196fee2bf61f8c720 baseline version: qemuu 6972ef1440a9d685482d78672620a7482f2bd09a Last test of basis 180691 2023-05-17 10:45:22 Z 35 days Failing since 180699 2023-05-18 07:21:24 Z 35 days 124 attempts Testing same since 181544 2023-06-22 01:10:56 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Afonso Bordado Akihiko Odaki Akihiro Suda Alex Bennée Alex Williamson Alexander Bulekov Alexander Graf Alexander Ivanov Alistair Francis Anastasia Belova Andrea Bolognani Andreas Schwab Andrew Jeffery Ani Sinha Ani Sinha Anthony PERARD Anton Johansson Antonio Caggiano BALATON Zoltan Bastian Koppelmann Bernhard Beschow Bin Meng Brian Cain Brice Goglin Camilla Conte Carlos Santos Christian Schoenebeck Chuck Zmudzinski Cindy Lu Clément Chigot Corey Minyard Cornelia Huck Cédric Le Goater Cédric Le Goater Daniel Henrique Barboza Daniel Henrique Barboza Daniel P. Berrangé Daniil Kovalev David Hildenbrand David Woodhouse Emanuele Giuseppe Esposito Enze Li Eric Auger Eric Blake Eric DeVolder Erico Nunes Eugenio Pérez Fabiano Rosas Fan Ni Fiona Ebner Francesco Cagnin Francisco Iglesias Frederic Barrat Gavin Shan Gregory Price Gregory Price Guenter Roeck Hanna Czenczek Hao Zeng Hawkins Jiawei Helge Deller Himanshu Chauhan Igor Mammedov Ilya Leoshkevich Ira Weiny Ivan Klokov Jagannathan Raman Jason Wang Jean-Louis Dupond Jean-Philippe Brucker Jiajie Chen Jiaxun Yang Joao Martins John Snow Jonathan Cameron Juan Quintela Junqiang Wang Kevin Wolf Laurent Vivier Lei Yang Leonardo Bras Maksim Davydov Marc-André Lureau Marcin Juszkiewicz Marco Liebel Mark Cave-Ayland Markus Armbruster Martin Kaiser Matheus Tavares Bernardino Mattias Nissler Mauro Matteo Cascella Max Fritz Mayuresh Chitale Michael S. Tsirkin Michael Tokarev Michal Privoznik Milan Zamazal Mostafa Saleh Nicholas Piggin Nicolas Saenz Julienne Niek Linnenbank Niklas Cassel Ninad Palsule Palmer Dabbelt Paolo Bonzini Patrick Venture Peter Maydell Peter Xu Philippe Mathieu-Daudé Philippe Mathieu-Daudé qianfan Zhao Raghu H Rene Engel Richard Henderson Richard Purdie Ricky Zhou Ryan Wendland Sebastian Ott Sergey Kambalin Sergio Lopez Sid Manning Siqi Chen Song Gao Stefan Hajnoczi Stefano Garzarella Stefano Stabellini Stefano Stabellini Steve Sistare Sunil V L Taylor Simpson Thomas Huth Thomas Weißschuh Tianrui Zhao timothee.cocault@gmail.com Timothée Cocault Tommy Wu Vikram Garhwal Viktor Prutyanov Vitaly Cheptsov Vivek Kasireddy Vladimir Sementsov-Ogievskiy Volker Rümelin Weiwei Li Xiao Wang Xinyu Li Yin Wang Zeng Hao Zhenyu Zhang Zhenzhong Duan Zhuojia Shen jobs: build-amd64-xsm fail build-arm64-xsm fail build-i386-xsm fail build-amd64 fail build-arm64 fail build-armhf fail build-i386 fail build-amd64-libvirt blocked build-arm64-libvirt blocked build-armhf-libvirt blocked build-i386-libvirt blocked build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl blocked test-amd64-coresched-amd64-xl blocked test-arm64-arm64-xl blocked test-armhf-armhf-xl blocked test-amd64-i386-xl blocked test-amd64-coresched-i386-xl blocked test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-i386-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-amd64-libvirt-xsm blocked test-arm64-arm64-libvirt-xsm blocked test-amd64-i386-libvirt-xsm blocked test-amd64-amd64-xl-xsm blocked test-arm64-arm64-xl-xsm blocked test-amd64-i386-xl-xsm blocked test-amd64-amd64-qemuu-nested-amd blocked test-amd64-amd64-xl-pvhv2-amd blocked test-amd64-i386-qemuu-rhel6hvm-amd blocked test-amd64-amd64-dom0pvh-xl-amd blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-freebsd10-amd64 blocked test-amd64-amd64-qemuu-freebsd11-amd64 blocked test-amd64-amd64-qemuu-freebsd12-amd64 blocked test-amd64-amd64-xl-qemuu-ovmf-amd64 blocked test-amd64-i386-xl-qemuu-ovmf-amd64 blocked test-amd64-amd64-xl-qemuu-win7-amd64 blocked test-amd64-i386-xl-qemuu-win7-amd64 blocked test-amd64-amd64-xl-qemuu-ws16-amd64 blocked test-amd64-i386-xl-qemuu-ws16-amd64 blocked test-armhf-armhf-xl-arndale blocked test-amd64-amd64-xl-credit1 blocked test-arm64-arm64-xl-credit1 blocked test-armhf-armhf-xl-credit1 blocked test-amd64-amd64-xl-credit2 blocked test-arm64-arm64-xl-credit2 blocked test-armhf-armhf-xl-credit2 blocked test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-freebsd10-i386 blocked test-amd64-amd64-qemuu-nested-intel blocked test-amd64-amd64-xl-pvhv2-intel blocked test-amd64-i386-qemuu-rhel6hvm-intel blocked test-amd64-amd64-dom0pvh-xl-intel blocked test-amd64-amd64-libvirt blocked test-armhf-armhf-libvirt blocked test-amd64-i386-libvirt blocked test-amd64-amd64-xl-multivcpu blocked test-armhf-armhf-xl-multivcpu blocked test-amd64-amd64-pair blocked test-amd64-i386-pair blocked test-amd64-amd64-libvirt-pair blocked test-amd64-i386-libvirt-pair blocked test-amd64-amd64-xl-pvshim blocked test-amd64-i386-xl-pvshim blocked test-amd64-amd64-pygrub blocked test-armhf-armhf-libvirt-qcow2 blocked test-amd64-amd64-xl-qcow2 blocked test-arm64-arm64-libvirt-raw blocked test-armhf-armhf-libvirt-raw blocked test-amd64-i386-libvirt-raw blocked test-amd64-amd64-xl-rtds blocked test-armhf-armhf-xl-rtds blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-amd64-xl-shadow blocked test-amd64-i386-xl-shadow blocked test-arm64-arm64-xl-thunderx blocked test-amd64-amd64-libvirt-vhd blocked test-arm64-arm64-xl-vhd blocked test-armhf-armhf-xl-vhd blocked test-amd64-i386-xl-vhd blocked ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 20547 lines long.) From xen-devel-bounces@lists.xenproject.org Thu Jun 22 08:17:15 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 08:17:15 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553360.863861 (Exim 4.92) (envelope-from ) id 1qCFV7-0005GM-Jn; Thu, 22 Jun 2023 08:17:09 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553360.863861; Thu, 22 Jun 2023 08:17:09 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCFV7-0005GD-Gr; Thu, 22 Jun 2023 08:17:09 +0000 Received: by outflank-mailman (input) for mailman id 553360; Thu, 22 Jun 2023 08:17:08 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCFV6-0003FY-Iy for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 08:17:08 +0000 Received: from EUR02-VI1-obe.outbound.protection.outlook.com (mail-vi1eur02on20623.outbound.protection.outlook.com [2a01:111:f400:fe16::623]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 2dc7e234-10d5-11ee-b237-6b7b168915f2; Thu, 22 Jun 2023 10:17:08 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by DU2PR04MB8728.eurprd04.prod.outlook.com (2603:10a6:10:2df::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.24; Thu, 22 Jun 2023 08:17:05 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6521.024; Thu, 22 Jun 2023 08:17:05 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 2dc7e234-10d5-11ee-b237-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=YUjfVVRLMsTw3gA4qH3SbdYVlw6V3jtkj+A7rzsSTAQU7Gjsy+RPZxLiBCWmHfnHumcC6eP4auIeuwW88LSREqTiNkyPDe9cf1D2KeA7DniSa5urnN6ca/woZjuaAGPwiucAzpgQG9xVsUkVEsHvhBr8dKDm5V44BA3iCJUUgXhTiFWlwZxbTaSmbxKx0WTxFvdrmWoKIb/Em78+0BzQuYcamTB5zrfMnZpQ7qiwX47UgTnv4+wuX781exNAOAp1D8V8WZ07x4FhNQbKg4P3xTdF1mFIm435HlChG26WlX1d6NB6eJDggicD7sxoRUP4kHIu8XldVqH3mdAwCkYxUw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=924bBjvstlUDj5nQJHHIkHTBe5gt4rXp8wJGJbMjjkA=; b=k9drUCoZhZxJsxqyHEr5Lf/u2jvhKBQRjM9wRYUfT2njdBUBkJTTAonWtk0Ru/h5mvnyIDSbkKdoOCH+NkdnErwiN9vMITLo2UX08yZpy1n93cGg4BffmknSBBC4mgh92TyfjagrpA0gbDO+ZARltsNJ+c/ZJxwlAlFLh6TS+vkaODwLhikMU5GFEq4Y9VXgg3rfsiSyCjTvx2fLA/25zjJM3zlG1I7MLrl66pqc77cThytR7ITNsM3RXHe+Eg6kznTu9vam6DXt4/Cy4SNkc0u59DxTHdMGLWpjx0JBV/xpGOUUXXSNGeOfs+2ey5YRxBrgC7oEfO9w1CBsW1Rpig== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=924bBjvstlUDj5nQJHHIkHTBe5gt4rXp8wJGJbMjjkA=; b=o20o3hrelaUgdtKwLxsVE+xHn+cETkHkj6dFFZE8Gf9IihLec6GxwwXa2vUwcFWPa258eKBhAIZUAVQQNaAPBnd1JzUpeQvYadadXK0iQ+xEg97dujSWXrOL5ysP7XLInkssofjgVprcMVQPEobe08DClaOCBUYgL8h+d6M08oDYEDKezAHmFcSFtOL7fFpEvkBNnI0+6opSBOUb+nwWxmZGuj1Yh9N1b7SvKT3X5wl71y/fUVXfs5JHZZBdbnEsLN5SfRAWS0+2yyM3ZGH43ZlhwOB2lEaiXBNN7hBLtXpa5kSyp9ma80DOkH0uOJ0u+5c0iqpwmNpkC5B/8+aYGw== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: Date: Thu, 22 Jun 2023 10:17:03 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [XEN PATCH 1/3] build: define ARCH and SRCARCH later Content-Language: en-US To: Anthony PERARD Cc: Jason Andryuk , Andrew Cooper , George Dunlap , Julien Grall , Stefano Stabellini , Wei Liu , xen-devel@lists.xenproject.org References: <20230621161959.1061178-1-anthony.perard@citrix.com> <20230621161959.1061178-2-anthony.perard@citrix.com> From: Jan Beulich In-Reply-To: <20230621161959.1061178-2-anthony.perard@citrix.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR2P281CA0125.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:9d::19) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|DU2PR04MB8728:EE_ X-MS-Office365-Filtering-Correlation-Id: 8ad8c6ac-bfa0-4c43-6397-08db72f910ad X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: /32VguE71dx9YzFm9rlnBXlo//DdmJNbHqQT1r+yDbalv3u/sZA3gi0wr2BIfELXIndN3x6tWzfZ5AxGsVgMKaz9ORc4/h2YA2iBa3oMl9wmeoU8oY8cKFUbRGcIA4yZ21s+h2xLXGe8UL0x07xXQDUdJY/Celsjgtr8tREONiFeXwKeKzv2DZ72pE8hZ+w1hhj42MhGEStYgF5s5o5Hv3RAeEUYmXzMPWVqWNVW/jMDmzi5VCL9cBhQHJCzVmYRE3dKfeaWp9Pm0/tSFlQkCzbxyg0gTAz65I5DzhcnK7bcFVn4DNUzh/EaCuu4ptfwJOtqQf126WiEA88AvAhD9tkiZ+TN5sSvx2xRh+RmVUZR8K7d1NVRon5pnpS/UxYy0WnOQQtj6raBGxnFrXUvaDsQcwXeWScbmca3fQKpgJRt6o8ANvYTngk5gRppvaoRp4rMK1JyNYz6Hk1VuweQwDsWMN3LQ4IKMEubJPHaSYLq7JyYJSoBvwzN39gL+br8xilQhJyoYi+Qu86MekMpx+O3FzdYFiANZuyy7vbpaP9L35sO5yMLX+K0G9gtZtL+vkYeVWEEhreAGF9sxVbd/x4hWFTb5ukj9Ip1Caaqulz+9NcTXbq8OAiRFT8qsqLm+XK+eu1Fbew5OLYNA0LN1A== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(136003)(39860400002)(346002)(396003)(366004)(376002)(451199021)(8936002)(41300700001)(6486002)(8676002)(2906002)(36756003)(66556008)(66476007)(6916009)(54906003)(86362001)(4326008)(31696002)(66946007)(316002)(38100700002)(478600001)(2616005)(4744005)(5660300002)(26005)(6512007)(6506007)(31686004)(53546011)(186003)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?VXNwNFpLUlZBUHV2UjdMbSthNmZ0amgyMFphVkZSNTJHRXVINGZocXcyTkxq?= =?utf-8?B?Y3BCczBhcC9WVk4wTzk2MFU0V3ZucjUvdDduUXFxTzlnR3ZxcWJRdHNpeFNT?= =?utf-8?B?dlM3d0doL3ZmOVZXSWJLRXMwbjZreEd6ZUpObitWZ1FGcU13aUVBTDBSOTZr?= =?utf-8?B?a0dpZFJZYXAzRFNHaWxiemdob0Q2UWZsOUt2QUxvKzB0bHRVSnV6djFGK2hC?= =?utf-8?B?MW1HMWRXSERla0EzYU9kZDlEdFJpM0wxalVITlRtMExGSkNmUS9UVUFOV0ow?= =?utf-8?B?TW52MjA1MGRhRStCeGpIK2h5ZHZPMHJOOUNJelNjQTd6Y1cyQTdrazJ6VU9y?= =?utf-8?B?S0NaZUt4K3FpdWN2THRVS1NtdWpzaUpydkhRVHl6RDZOalA2TjJnTWozcFZz?= =?utf-8?B?RFkwSmd4aWZjZXhvaFVYM3ZKOFFxbllqZm5aSHRyeVZMaXdMV28wRStLTXcx?= =?utf-8?B?Ry9lREZ5K0pTNEgzSjVEWTRNbzRWRTVJRCs1cmF2b29YTzI5MDYyYktIUlht?= =?utf-8?B?ZjJpTWN4bXlNZ0FSZmtkWDkrYk15SjFxTkNJeEdOczY0UzJzMXBZcW9LTkFy?= =?utf-8?B?bVBpTnJuTzY1REFlUVplVmliZ05jWmRpTzE2Nk1sa1FxM0grN1ZaT0Z6bWlp?= =?utf-8?B?WGYyYzVISUJaR1ZMZUMzbk1hLzJYNjdrSnpRMGEwbENmVkNYS0pldjRmRmw5?= =?utf-8?B?TzBzZVRlNG1qZnc0Y2EzaWZMMDBXNHFGUG81NFpJcVBzRmI5RW5PREsyMHpV?= =?utf-8?B?enduMk0xNm5NREJFeC9vM3k2TzJ2K3U2RjZ2K2o4djRMak5zd0tKbHoydUNz?= =?utf-8?B?c09vOFlrUEF3aFZYK2tYQzJuR054RlV0bmZXd2J6RUpUWFJPbjY3QWhiTWla?= =?utf-8?B?OHVYOGJBaEYvMzdMUDVBMENoTktPUlFCTFhnRVcxWHpISXFuOGlLSlNybXNV?= =?utf-8?B?UUZ1RWVkMFpFTlB6ZXZSUkk3UVRqa0dSanRXaUwzM0Z2ZEZJZXdhVnFZVWpX?= =?utf-8?B?bGFPMzNBN2JGd1pOSkU5dFY4bUdzdWJlZ0dZWFhpelFJZEI5WklrOGVzVzYz?= =?utf-8?B?Vk5EakdtVkR0akhWVmhjYXVvNUtUVGdaZHU4L01TZ01Od2RpdFpsUmZPMExU?= =?utf-8?B?OHJ2bEZSR1c2RFF6S1lxbWZ6ekVuMnRnSmdsc3JCTzdjN2xFdTB2THJ3RlQ4?= =?utf-8?B?Qi92eWpUczJVTUs1L0d4ZjB6OW1mb2FWNlpXREtDOU9mU3NoS2tsMVcvamVy?= =?utf-8?B?YkkxOW1na0hiM1VTbU8rQkFJa1dKellHMnkra2doQjcvR3VvcU5OTHNlWmh4?= =?utf-8?B?RUFqUmcrdzB5MGIwWjZjOUZUUy9zLzFKOWJEamJrKzFtbVZ2Q2UwTzQvZE90?= =?utf-8?B?SnU1ZFl2VVovdTFrM0hzQ3Bubk1XejRPcXdxYzY3L3JyTTdjQWdxRTAyV0Zh?= =?utf-8?B?OGFpM2NTYWRPTTNsSkd2MlFJckYvQ3FlMmxpajR6S25ic2ZYM2htdDI5NURM?= =?utf-8?B?bng0Umw3K3hUaGR0Nm5Yeld2czFUK05ubnN3OEE4SnJrbXFsZW9zUnVrREg5?= =?utf-8?B?QVU1MGFGYXdGME9BUS9wbURpa0xGWFZZZW5sU3BzOWFiV0xSSHpGckRkMEF4?= =?utf-8?B?RjFONG93YWZDSEhNY0U1Y2RVSHJvTUZoN3VtQk5xUm5OYjc1bG54TkdoNDJy?= =?utf-8?B?a0xTSnBxb0R3SmlIdi94U3AxMkp2bDFjYzZBQkFjYzQ0M1NqenR6dDJBeUFx?= =?utf-8?B?MVM0dGVlMmxTSHVldnZXUk1ENmducTFlM2puR25MWlhqRXgxN2hWZGsxcXVG?= =?utf-8?B?Wm1NanQ0TXVmZVl3d1BYMGUxQWx6d2pTck05Z3BZbDJnWWt4K3pMSUFWQmhU?= =?utf-8?B?aENvMEJSRjZCR2xUSHRkRTNKR3ZiQTRjZ0NYZktaa1JON2gvV1M3MGsySjV5?= =?utf-8?B?d21DR2htamNPSkpFNlhiSjNpbGlpaXpQM1hwMjR2QTRiQUJpNmZ5Z2kwYlIz?= =?utf-8?B?QmZQMERZbThQN2ZzUnFDVDUwTnBvdFE2LzFvaWhXRjU4SWJNWUh1TW1TZE5N?= =?utf-8?B?UVlIdXZndUU2LzZGOVI1NHloa3Y5LzZsS29qdmc0azhORnZUd2I4ZU1OR2cw?= =?utf-8?Q?jMDi9e/YdYBr7S0Ulk5CEfcXo?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 8ad8c6ac-bfa0-4c43-6397-08db72f910ad X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 22 Jun 2023 08:17:05.6766 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: DKxZaG9yjA4dzkrwyAJZebVEc6s9CbyCwdNa4JU+Az0PPrAceaUQQwisGymaq8qGwpxaiCDsYCGCTo0+V1vwfA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU2PR04MB8728 On 21.06.2023 18:19, Anthony PERARD wrote: > @@ -241,6 +235,13 @@ include scripts/Kbuild.include > include $(XEN_ROOT)/Config.mk > > # Set ARCH/SUBARCH appropriately. > + > +ARCH := $(XEN_TARGET_ARCH) > +SRCARCH := $(shell echo $(ARCH) | \ > + sed -e 's/x86.*/x86/' -e s'/arm\(32\|64\)/arm/g' \ > + -e s'/riscv.*/riscv/g') Could you take the opportunity and get quoting consistent in this construct, while you move it? Jan From xen-devel-bounces@lists.xenproject.org Thu Jun 22 08:25:30 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 08:25:30 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553366.863871 (Exim 4.92) (envelope-from ) id 1qCFd0-0006pU-Df; Thu, 22 Jun 2023 08:25:18 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553366.863871; Thu, 22 Jun 2023 08:25:18 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCFd0-0006pN-9e; Thu, 22 Jun 2023 08:25:18 +0000 Received: by outflank-mailman (input) for mailman id 553366; Thu, 22 Jun 2023 08:25:16 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCFcy-0006pE-Nh for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 08:25:16 +0000 Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 4f69edcb-10d6-11ee-8611-37d641c3527e; Thu, 22 Jun 2023 10:25:13 +0200 (CEST) Received: from nico.bugseng.com (unknown [151.37.206.199]) by support.bugseng.com (Postfix) with ESMTPSA id 5AB224EE0737; Thu, 22 Jun 2023 10:25:11 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 4f69edcb-10d6-11ee-8611-37d641c3527e From: Nicola Vetrini To: xen-devel@lists.xenproject.org Cc: sstabellini@kernel.org, michal.orzel@amd.com, xenia.ragiadakou@amd.com, ayan.kumar.halder@amd.com, consulting@bugseng.com, jbeulich@suse.com, andrew.cooper3@citrix.com, roger.pau@citrix.com, bertrand.marquis@arm.com, julien@xen.org, Nicola Vetrini , George Dunlap , Wei Liu Subject: [XEN PATCH v3] xen/include: avoid using a compiler extension for BUILD_BUG_ON_ZERO. Date: Thu, 22 Jun 2023 10:24:50 +0200 Message-Id: X-Mailer: git-send-email 2.34.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Redefine BUILD_BUG_ON_ZERO to avoid using a compiler extension that gives an acceptable semantics to C99 undefined behavior 58 ("A structure or union is defined as containing no named members (6.7.2.1)"). The chosen ill-formed construct is a negative bitwidth in a bitfield within a struct containing at least one named member, which prevents the UB while keeping the semantics of the construct. Signed-off-by: Nicola Vetrini --- Changes in V2: - Avoid using a VLA as the compile-time assertion - Do not drop _Static_assert Changes in V3: - Changed the operation to bring the result to 0 when the construct does not lead to a compilation error --- xen/include/xen/lib.h | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/xen/include/xen/lib.h b/xen/include/xen/lib.h index 67fc7c1d7e..d5f9c4a18a 100644 --- a/xen/include/xen/lib.h +++ b/xen/include/xen/lib.h @@ -51,9 +51,10 @@ e.g. in a structure initializer (or where-ever else comma expressions aren't permitted). */ #define BUILD_BUG_ON_ZERO(cond) \ - sizeof(struct { _Static_assert(!(cond), "!(" #cond ")"); }) + (sizeof(struct { char c; _Static_assert(!(cond), "!(" #cond ")"); }) & 0U) #else -#define BUILD_BUG_ON_ZERO(cond) sizeof(struct { int:-!!(cond); }) +#define BUILD_BUG_ON_ZERO(cond) \ + (sizeof(struct { unsigned u : (cond) ? -1 : 1; }) & 0U) #define BUILD_BUG_ON(cond) ((void)BUILD_BUG_ON_ZERO(cond)) #endif -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 22 08:26:42 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 08:26:42 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553373.863881 (Exim 4.92) (envelope-from ) id 1qCFeF-0007Nc-No; Thu, 22 Jun 2023 08:26:35 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553373.863881; Thu, 22 Jun 2023 08:26:35 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCFeF-0007NV-Je; Thu, 22 Jun 2023 08:26:35 +0000 Received: by outflank-mailman (input) for mailman id 553373; Thu, 22 Jun 2023 08:26:34 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCFeD-0007NB-3z for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 08:26:34 +0000 Received: from desiato.infradead.org (desiato.infradead.org [2001:8b0:10b:1:d65d:64ff:fe57:4e05]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 7d91e09e-10d6-11ee-b237-6b7b168915f2; Thu, 22 Jun 2023 10:26:31 +0200 (CEST) Received: from j130084.upc-j.chello.nl ([24.132.130.84] helo=noisy.programming.kicks-ass.net) by desiato.infradead.org with esmtpsa (Exim 4.96 #2 (Red Hat Linux)) id 1qCFdq-0014SH-0S; Thu, 22 Jun 2023 08:26:10 +0000 Received: from hirez.programming.kicks-ass.net (hirez.programming.kicks-ass.net [192.168.1.225]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by noisy.programming.kicks-ass.net (Postfix) with ESMTPS id 454FA300222; Thu, 22 Jun 2023 10:26:07 +0200 (CEST) Received: by hirez.programming.kicks-ass.net (Postfix, from userid 1000) id 2646E2421619E; Thu, 22 Jun 2023 10:26:07 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 7d91e09e-10d6-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=desiato.20200630; h=In-Reply-To:Content-Type:MIME-Version: References:Message-ID:Subject:Cc:To:From:Date:Sender:Reply-To: Content-Transfer-Encoding:Content-ID:Content-Description; bh=mbXA79XLHxERspEGgZH6j4YxWqZ7fFJ3tIvi+rSHyOk=; b=jljuonf4K1sLymfrWeTD2/MMUL 6Jvei8fLyJRLPO2xhFRkPTEX/P9cws5G9NRNZSBrXELNh4ejlE7fXvYInygAh8kHXg1ncBXdf8+Im 8o8avMslqDvCS1YoFewmeCMd9YkBnLf5BGNzROXRLYsUr2V+T4VBcNmEIvHkRQOXSoQOd3kOgR9iV SaDAqSk0I1fb0D4nIcLLuHZfNv1AaNYBqVwd076jGXF1F+NEb6iMrrXtNzBeEcK1cOSJOpndElzOx son3dUox7JxXjSQmsyKBkBia3Twhiff5TZYa2+H6WM2MGT3azXZJItdB/tnxfGFbuhQ90NOWIxz2B V8NSddeQ==; Date: Thu, 22 Jun 2023 10:26:07 +0200 From: Peter Zijlstra To: Juergen Gross Cc: Per Bilse , Andy Lutomirski , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , "maintainer:X86 ARCHITECTURE (32-BIT AND 64-BIT)" , "H. Peter Anvin" , Stefano Stabellini , Oleksandr Tyshchenko , "open list:X86 ENTRY CODE" , "moderated list:XEN HYPERVISOR INTERFACE" Subject: Re: [PATCH] Updates to Xen hypercall preemption Message-ID: <20230622082607.GD4253@hirez.programming.kicks-ass.net> References: <20230621151442.2152425-1-per.bilse@citrix.com> <20230621164038.GM2053369@hirez.programming.kicks-ass.net> <6523f3e2-8dfc-c2dd-6d14-9e0c3ac93cc8@citrix.com> <20230621200409.GC4253@hirez.programming.kicks-ass.net> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: On Thu, Jun 22, 2023 at 07:22:53AM +0200, Juergen Gross wrote: > The hypercalls we are talking of are synchronous ones. They are running > in the context of the vcpu doing the call (like a syscall from userland is > running in the process context). (so time actually passes from the guest's pov?) > The hypervisor will return to guest context from time to time by modifying > the registers such that the guest will do the hypercall again with different > input values for the hypervisor, resulting in a proper continuation of the > hypercall processing. Eeeuw.. that's pretty terrible. And changing this isn't in the cards, like at all? That is, why isn't this whole thing written like: for (;;) { ret = hypercall(foo); if (ret == -EAGAIN) { cond_resched(); continue; } break; } > It is an awful interface and I agree that switching to full preemption in > dom0 seems to be the route which we should try to take. Well, I would very strongly suggest the route to take is to scrap the whole thing and invest in doing something saner so we don't have to jump through hoops like this. This is quite possibly the worst possible interface for this Xen could have come up with -- awards material for sure. > The downside would be that some workloads might see worse performance > due to backend I/O handling might get preempted. Is that an actual concern? Mark this a legaxy inteface and anybody who wants to get away from it updates. > Just thinking - can full preemption be enabled per process? Nope, that's a system wide thing. Preemption is something that's driven by the requirements of the tasks that preempt, not something by the tasks that get preempted. Andy's idea of having that thing intercepted as an exception (EXTABLE like) and relocating the IP to a place that does cond_resched() before going back is an option.. gross, but possibly better, dunno. Quite the mess indeed :/ From xen-devel-bounces@lists.xenproject.org Thu Jun 22 08:30:08 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 08:30:08 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553380.863890 (Exim 4.92) (envelope-from ) id 1qCFhf-0000JB-4w; Thu, 22 Jun 2023 08:30:07 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553380.863890; Thu, 22 Jun 2023 08:30:07 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCFhf-0000Iq-17; Thu, 22 Jun 2023 08:30:07 +0000 Received: by outflank-mailman (input) for mailman id 553380; Thu, 22 Jun 2023 08:30:06 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCFhd-0000DZ-VK for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 08:30:05 +0000 Received: from EUR01-VE1-obe.outbound.protection.outlook.com (mail-ve1eur01on0607.outbound.protection.outlook.com [2a01:111:f400:fe1f::607]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id fb386070-10d6-11ee-8611-37d641c3527e; Thu, 22 Jun 2023 10:30:02 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by DU2PR04MB8728.eurprd04.prod.outlook.com (2603:10a6:10:2df::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.24; Thu, 22 Jun 2023 08:30:01 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6521.024; Thu, 22 Jun 2023 08:30:00 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: fb386070-10d6-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=YXtvw5njzgq2EwIIHnN3RZtFHWImf4TU/QbvkhdEUfGUBnUWd49jjdh6+rumuiW9aQ/gpZPn5F7UlX2lLru/LnGpdpMgn5VQ+46ewOpBZzz63wJ9bZKLZ0t5VVjqCyb+UC60uawZe3+as9+SqzFCc1dDN2Lq0IJnBsec5wv41QqUHMWbhA/k4hM9eAAyUvab/wv54+NRj+sI3xma1pcQpTZoC7P7obXs/7dGlJKawLr4NZbBYYVIKSYbeLrXMiEzuEQvfYXIycur51xKaI2CQLly2duj6ImvDzlSyogZ9QQtVUchAeUg6+TLVDKlkVm83MbzK4U4pMUROoufzD61Uw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=O5MVyD+CkEpVqlhJmAvRY/MwIAF4iLpc+3NoABci4s0=; b=SYSaQuDPJ7v3A4EtugCh4VvZ4lSwGrDtfSsWyHSL8DWywljiFufQxT6+fuEEZFfLb2vmpCc5MBwaZW4CtTS50UodsSWdkhnIHrhIeUK50n8jnLhV4Q+Rzxy28QSKnW8MIxNcbTblmP1OG81Oj3obWRGMOZLCn6IWhKWVpEGJvzA81uEfSBokiB7Yv7c7uEMIK5e2FZVNpZ9y/0C6UmopMlAgLbsj03P+ROGxP+FxmzZPkuWwU5YIFwfo5/j0Grb41y1okj0Zjs+EayMhhF6AZm+qSi7lS5HQVtPHP4ctiDPeK0vUnPgpWb4mYErj3OLdxdb80htUAQze9XBO5fZ4RA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=O5MVyD+CkEpVqlhJmAvRY/MwIAF4iLpc+3NoABci4s0=; b=WTqk8S7WlLV4DcG1DtlWj3w9eS4fkYl46ouwYrC+SGLAgyyi58Dk05lLN3KuS2gigKaAtboMecif4+k6FKFqKRz9tzvXTBPFBxye/IfHDKjzQ3o8HJO+AZgxLniVLj2efc8fftNLRlZ8WK+LsWTFwqxnt6gJt4tNDKj/j8svgjIhcyIZpgS6GNg4H5sITqEY5YSqlpuBcbF+wTQXs+PWk6mjzB8hDZh1ENMxRDmeA3JwB+suKJ5FGag3SqEFe40eRx6Ye/2yN2B/biHSUJfl5T2i6fOcEuZfSdkPcdLhsxnre70NnRYIcaJPxd8JNQFnjEMEfjKCrQsZ2WPH5fcSyg== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: Date: Thu, 22 Jun 2023 10:29:58 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH 1/2] xen/types: Drop #ifdefary for __{SIZE,PTRDIFF}_TYPE__ Content-Language: en-US To: Andrew Cooper Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , Stefano Stabellini , Julien Grall , Volodymyr Babchuk , Bertrand Marquis , Bob Eshleman , Alistair Francis , Connor Davis , Oleksii Kurochko , Shawn Anastasio , Timothy Pearson , Xen-devel References: <20230621211200.4132989-1-andrew.cooper3@citrix.com> <20230621211200.4132989-2-andrew.cooper3@citrix.com> From: Jan Beulich In-Reply-To: <20230621211200.4132989-2-andrew.cooper3@citrix.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR3P281CA0155.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:a2::16) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|DU2PR04MB8728:EE_ X-MS-Office365-Filtering-Correlation-Id: 6faceec4-529d-495f-efa6-08db72fadeaf X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: O5kmHsYn+7AlYTcQW6ErXX3ESYurx3ZigXSlsP68nXBe2MRQmpkNAI5ZEkQO44rNb0CXpD1LECUACmkjsU6imKCfBpCB0IZtnqtOdvH/UAeiOzAJzT+1XmlbbzCfqWtXnPOjD57r5zIRZvgBzpJwKG8CeYs87DPKV/XIxcBw9ugSdsqzROnjmR1klBh+96+YfCWPTN/alMynQPfoTkBhGfcS450XXEY9oRKiPBTWq2EJAP2TJXR7UM/DJt6L0fBs8WM2ydbveXR1LJ75+WfUX45SPBVsR+uiCBXopkjaWPjve3LySRx+zLlrYTKwFIijTTAqiarbeCUBOtOxmEDooce31q131pGVZnEi14Qx/jRZ9sA/xiFaH+6h+v12YQAmeKTIobFb3rXTbX76b3WAAsE4qYRwujiIaPVfT6xG5T+hZuCF1qRtWY6aMx06WCFy5x7euJQtGVs2D39xgs3Nmht8CPCyTu0j9KxYOBisPO9jcgv1ydHayvEc+TyE22ZbZ3VbfJv0Ot1aiJhn6JW0Vn7WvYNCLIfDN7p2yDO7I70xuy8HnVDI6rubVrY0ISxBOgLIQT4laRcG2gMiJpNjjcTebc4BfW8eMKfdt7RVIVKqTGq2hKGpNte5ibttyO/o0XH9SwubKiO6hZpb430BsQ== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(136003)(39860400002)(346002)(396003)(366004)(376002)(451199021)(8936002)(41300700001)(6486002)(8676002)(2906002)(36756003)(66556008)(558084003)(66476007)(6916009)(54906003)(86362001)(4326008)(31696002)(66946007)(316002)(38100700002)(478600001)(2616005)(5660300002)(7416002)(26005)(6512007)(6506007)(31686004)(53546011)(186003)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?MHp6WlJVRk1KQSt6VEVEKzhYeDgxZHBpWnpVdmRyQTJWa20xcW82Wk5PUThu?= =?utf-8?B?QStETXZkekM4blBCY3oyNG5XMWVCWTBiY3BPR3lob0tMNHRjWWtBNEtHSUtP?= =?utf-8?B?ZDdzRm1kZjBpUG1XY2VpaXJKcjZXRE13QXFTQU9ubDNGR0dzL3kxYk5zeFhz?= =?utf-8?B?M2cwRGFJUURqa1BYQU5nRFdPRmFiNzNjRFd2ZXBxbnJacmpVc2VPUFhiMVpF?= =?utf-8?B?aWp6YVRwYUowdmhkeTlESm1jcHN6ZmVESnpBay9WS0RYTzBqMXl1c095MFhm?= =?utf-8?B?QzM0bHU2c0FYVVczR1B5RU9PdkxYV1NadGlvTlFLUDh5WWdMWEZrbzhiSmtG?= =?utf-8?B?Ni9aaXdpcjlkRzA5TzNFbkRsdWk4SUpxLzdkM1V5dVNCQmYycXB6QjJia09w?= =?utf-8?B?WW5lR0U3VjZVUVN0WDNlODE4TU9abjFraFRMai9EZkh6UWFnMjE0YlhLdy9h?= =?utf-8?B?dmNmRmVMTlRPdVlQckJBKzRIUVMxbFpKaEY4Qjhsd1cvSnNqQnNZeHFKT3lN?= =?utf-8?B?L1o1NWc3WHFMSEthbUFTTFlQWHZybFJmTXRndElFWmRNSkNNeGFPUEYxY2U0?= =?utf-8?B?YmZHOG5FcUROZ09pUXcyQ0NvMTNESjB6REwzUkthdzdjRUJ5aXJhMEZKamd1?= =?utf-8?B?dFlTYnZFRStFNXhIaXg4b0QyaXJpOXVqZEdNZXdybUQzd08wc3RmaDhjQUxI?= =?utf-8?B?bkpPVXQ4eVYzUVZCTk01L0lPcjJiMFAza2V5VmN2dWxDRWMxUGpWVWZtOGNp?= =?utf-8?B?TVpEZzEzUDdGQVg1RXNQR0NXSlhkdW1QbUI4S2lzb2dIQzJLc1BDTHJuYWlC?= =?utf-8?B?SVlydXRoTVd2MFF1enVybmhaZldmWDBVQUh0SHBHY3RzZi9YVi9PT1Q4d3kx?= =?utf-8?B?YnAvNDl4N2tCVXp4dW5aUFgvTDRKZUE0MVIwTm5SMHBSSFV2NHM0R3hkNjEw?= =?utf-8?B?THJ0SDJRQStPc0liNk01ZjJzZUx2ODZQSzdGUVlKakpCcnlCTTJTUFZYdllQ?= =?utf-8?B?QUZMZmtSaWhoOFZwWkRHNHVyNnNEVCtNU2ovc3FtcVd4b3BPdXVIRHpEbTJF?= =?utf-8?B?d0QyT2JwczYxQ3MrQmNiWFdKMGdDSGF2ZHVrNVUrR092eVU4bCtaTjlIYklQ?= =?utf-8?B?MHV5QytqY3ZmSm5YcVlOQ2U4YUV5eGIvRXFKMldtdEh0KzNXTzlPc1VTNXAr?= =?utf-8?B?WWtUU08vSXduMjhnYmFMeHovb1B5eHJ6WmNIQVltNUtrcG84ZTBlN0U5N0w1?= =?utf-8?B?ZGcya0d4UzNWenF3RkZMVnhjVjhMb215QVNMVnZGcnVHVVEveklNNUVheG1j?= =?utf-8?B?NzNKdGh6ZXJSM0xVL1dwbEZKLzEvK0NiQVhabzZhUVBiUmZmVzNRbHFJM2Ru?= =?utf-8?B?WHNZUG95VXFCdk01cllVb3p0MFMxVitqb3piUjZsRHdDY2N6czNmOVZYNzVB?= =?utf-8?B?UnBHdnEvTCtvbVNuYXZOWE9vTkVCU0J2RnNOc0lmenlTbnM4SXJUckpRbFZY?= =?utf-8?B?Zk5EWDYva3IvZWlYRi9IMnJURThjcHZ6VWJXZFNDUzQ5Q1RQZVY5cWZybEJU?= =?utf-8?B?V1lpdDlVeHh3bUpUZWJ1NEVCRlM2K2IxblUweFhub3llRzRoU0V6Zll5M1JG?= =?utf-8?B?S2Q1VFYvTHgrTkZhUmtWNWJ3Tmh5allTRm56UHVWQmtwU1FxTG1lMnljUlN4?= =?utf-8?B?cnVTeTVGWEkzNTg2aUJ6QUdvL3U3T3N6T2tYdy9VVW1pRzU5K1Qyb0lFU0lM?= =?utf-8?B?NmlzZUhHNGtld25aUG0rUVZCc21wS3RKSldqQTZIZi9GNVJOdXM5NDROeXdp?= =?utf-8?B?QVF1Z05ydGhTUmpNUklVaWxjaTMwSXVBYlNRZHk3Ty83bFQyTTFtN21WSytz?= =?utf-8?B?TU16N0dmZG52Wnloa212SVN6b0ZZanBGYjdzYzF6ZG9FYU5oK0ZqRnJBQXhV?= =?utf-8?B?Q1JwaHVHSm00RSs5dzJBQTUvVlRMR0VMcEFVTFhMRGZZelZHMlFSc1hPQ1dI?= =?utf-8?B?ckxQTDJtRy8yQmJPVVl5dGxuQUNNUkdNQlo5eE8zRC9OZHBOR0xMZnFObHhH?= =?utf-8?B?bzRITUdJVXZ3MjQ5VWVZNHhlREw4L1UxWEJROENzTG5naHBZMUd3YlBPV0RX?= =?utf-8?Q?iEWeRI6gnJgbK9MFsIjz1gpQi?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 6faceec4-529d-495f-efa6-08db72fadeaf X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 22 Jun 2023 08:30:00.8515 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: o3He7Z57z5qSvOq7ZCfkqINPguZ9+T0y4v2GB7dQG1kDBz7eno6GDaMGK/1ypEgAtZkir6Qzh4Gp0DOMp6CReA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU2PR04MB8728 On 21.06.2023 23:11, Andrew Cooper wrote: > All supported compilers have these types. > > No functional change. > > Signed-off-by: Andrew Cooper Reviewed-by: Jan Beulich From xen-devel-bounces@lists.xenproject.org Thu Jun 22 08:36:33 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 08:36:33 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553385.863901 (Exim 4.92) (envelope-from ) id 1qCFne-00011b-Q5; Thu, 22 Jun 2023 08:36:18 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553385.863901; Thu, 22 Jun 2023 08:36:18 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCFne-00011U-N5; Thu, 22 Jun 2023 08:36:18 +0000 Received: by outflank-mailman (input) for mailman id 553385; Thu, 22 Jun 2023 08:36:17 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCFnd-00011K-Qw; Thu, 22 Jun 2023 08:36:17 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCFnd-0001wv-He; Thu, 22 Jun 2023 08:36:17 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCFnc-0001hw-Qr; Thu, 22 Jun 2023 08:36:16 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qCFnc-0002qV-QL; Thu, 22 Jun 2023 08:36:16 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=mJIF0vLABA/O/KnE7PXEskvN6ToMUR9L+fxZBdg4tAI=; b=oFIiHVGxKqNCp7LMfe+0vLa2YK Tg16Z1/l7Y+iwggWq04+IgjV8K4zeDHRg2sGBXU+K1lj6xG7g1gwW+DARC/Su+IinSLZM4GhMNncZ eFtdHiWio8KNExrdKXRbEVIYZ7pxQcmk3cVvDY/dHZEa5Pt3Y5hJ83cb+iHyiUr/v0Q0=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [seabios test] 181546: tolerable FAIL - PUSHED X-Osstest-Failures: seabios:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking seabios:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking seabios:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking seabios:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking seabios:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking seabios:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking seabios:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking X-Osstest-Versions-This: seabios=1281e340ad1d90c0cc8e8d902bb34f1871eb48cf X-Osstest-Versions-That: seabios=cd933454b5e3e1f86379a44b5ae1852c2a01a485 From: osstest service owner Date: Thu, 22 Jun 2023 08:36:16 +0000 flight 181546 seabios real [real] http://logs.test-lab.xenproject.org/osstest/logs/181546/ Failures :-/ but no regressions. Tests which did not succeed, but are not blocking: test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 181413 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop fail like 181413 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 181413 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 181413 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop fail like 181413 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass version targeted for testing: seabios 1281e340ad1d90c0cc8e8d902bb34f1871eb48cf baseline version: seabios cd933454b5e3e1f86379a44b5ae1852c2a01a485 Last test of basis 181413 2023-06-13 20:42:14 Z 8 days Testing same since 181546 2023-06-22 02:12:18 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Gerd Hoffmann Niklas Cassel Niklas Cassel via SeaBIOS jobs: build-amd64-xsm pass build-i386-xsm pass build-amd64 pass build-i386 pass build-amd64-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-i386-pvops pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-i386-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-i386-qemuu-rhel6hvm-amd pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-qemuu-freebsd11-amd64 pass test-amd64-amd64-qemuu-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-i386-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-amd64-i386-xl-qemuu-ws16-amd64 fail test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-qemuu-nested-intel pass test-amd64-i386-qemuu-rhel6hvm-intel pass test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Pushing revision : To xenbits.xen.org:/home/xen/git/osstest/seabios.git cd93345..1281e34 1281e340ad1d90c0cc8e8d902bb34f1871eb48cf -> xen-tested-master From xen-devel-bounces@lists.xenproject.org Thu Jun 22 08:38:13 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 08:38:13 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553394.863911 (Exim 4.92) (envelope-from ) id 1qCFpJ-0001dc-BB; Thu, 22 Jun 2023 08:38:01 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553394.863911; Thu, 22 Jun 2023 08:38:01 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCFpJ-0001dV-7g; Thu, 22 Jun 2023 08:38:01 +0000 Received: by outflank-mailman (input) for mailman id 553394; Thu, 22 Jun 2023 08:38:00 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCFpI-0001dN-9k for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 08:38:00 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCFpH-0001yH-KP; Thu, 22 Jun 2023 08:37:59 +0000 Received: from [54.239.6.188] (helo=[192.168.27.222]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qCFpH-0004gP-DK; Thu, 22 Jun 2023 08:37:59 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=aSIZC7fXTVp1FNDIMZr5I8P6AS6dstociPqWM1ufVqs=; b=Kmycd7JN9LQJXCZbQXm10+Qato 4hm91GMEUSjjWHp2LTI63bONywlX1M7ycKQBH8XKBspKHYW2wZe6Zz012MYhcITjec9j53pZFplfJ T1PKR7wiC4eejYwLc3t6AnjW0Z+d2LsCMtkhkGybaAdkRPiShDJSdOULtRhO15i41l8I=; Message-ID: <7a48c49e-2998-9e34-45ef-a1c3431fbffe@xen.org> Date: Thu, 22 Jun 2023 09:37:57 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [XEN PATCH] xen/arm: fixed violations of MISRA C:2012 R8.3 on parameter names. Content-Language: en-US To: Federico Serafini , xen-devel@lists.xenproject.org Cc: consulting@bugseng.com, Stefano Stabellini , Bertrand Marquis , Volodymyr Babchuk , Michal Orzel , Xenia Ragiadakou , Ayan Kumar Halder References: From: Julien Grall In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi, On 22/06/2023 09:13, Federico Serafini wrote: > To comply with Rule 8.3 ("All declarations of an object or function > shall use the same names and type qualifiers") change the parameter > names of function declarations to be consistent with the names used > in the corresponding function definitions. > > Signed-off-by: Federico Serafini > --- > xen/arch/arm/include/asm/event.h | 2 +- > xen/arch/arm/include/asm/fixmap.h | 2 +- > xen/arch/arm/include/asm/gic.h | 2 +- > xen/arch/arm/include/asm/gic_v3_its.h | 5 +++-- > xen/arch/arm/include/asm/grant_table.h | 6 +++--- > xen/arch/arm/include/asm/guest_access.h | 4 ++-- > xen/arch/arm/include/asm/irq.h | 2 +- > xen/arch/arm/include/asm/mm.h | 2 +- > xen/arch/arm/include/asm/regs.h | 2 +- > xen/arch/arm/include/asm/vgic.h | 4 ++-- > 10 files changed, 16 insertions(+), 15 deletions(-) > > diff --git a/xen/arch/arm/include/asm/event.h b/xen/arch/arm/include/asm/event.h > index b14c166ad6..fa54ef8869 100644 > --- a/xen/arch/arm/include/asm/event.h > +++ b/xen/arch/arm/include/asm/event.h > @@ -3,7 +3,7 @@ > > #include > > -void vcpu_kick(struct vcpu *v); > +void vcpu_kick(struct vcpu *vcpu); With this change we know have inconsistency in the arguments naming within the header. It is more common to denote a vCPU with 'v' so I would rather prefer if we modify the function definition in a patch before. > void vcpu_mark_events_pending(struct vcpu *v); > void vcpu_update_evtchn_irq(struct vcpu *v); > void vcpu_block_unless_event_pending(struct vcpu *v); > diff --git a/xen/arch/arm/include/asm/fixmap.h b/xen/arch/arm/include/asm/fixmap.h > index d0c9a52c8c..734eb9b1d4 100644 > --- a/xen/arch/arm/include/asm/fixmap.h > +++ b/xen/arch/arm/include/asm/fixmap.h > @@ -30,7 +30,7 @@ > extern lpae_t xen_fixmap[XEN_PT_LPAE_ENTRIES]; > > /* Map a page in a fixmap entry */ > -extern void set_fixmap(unsigned int map, mfn_t mfn, unsigned int attributes); > +extern void set_fixmap(unsigned int map, mfn_t mfn, unsigned int flags); > /* Remove a mapping from a fixmap entry */ > extern void clear_fixmap(unsigned int map); > > diff --git a/xen/arch/arm/include/asm/gic.h b/xen/arch/arm/include/asm/gic.h > index 76e3fa5dc4..f1ef347edc 100644 > --- a/xen/arch/arm/include/asm/gic.h > +++ b/xen/arch/arm/include/asm/gic.h > @@ -257,7 +257,7 @@ int gic_remove_irq_from_guest(struct domain *d, unsigned int virq, > extern void gic_clear_pending_irqs(struct vcpu *v); > > extern void init_maintenance_interrupt(void); > -extern void gic_raise_guest_irq(struct vcpu *v, unsigned int irq, > +extern void gic_raise_guest_irq(struct vcpu *v, unsigned int virtual_irq, > unsigned int priority); > extern void gic_raise_inflight_irq(struct vcpu *v, unsigned int virtual_irq); > > diff --git a/xen/arch/arm/include/asm/gic_v3_its.h b/xen/arch/arm/include/asm/gic_v3_its.h > index fae3f6ecef..c24d4752d0 100644 > --- a/xen/arch/arm/include/asm/gic_v3_its.h > +++ b/xen/arch/arm/include/asm/gic_v3_its.h > @@ -190,8 +190,9 @@ struct pending_irq *gicv3_its_get_event_pending_irq(struct domain *d, > uint32_t eventid); > int gicv3_remove_guest_event(struct domain *d, paddr_t vdoorbell_address, > uint32_t vdevid, uint32_t eventid); > -struct pending_irq *gicv3_assign_guest_event(struct domain *d, paddr_t doorbell, > - uint32_t devid, uint32_t eventid, > +struct pending_irq *gicv3_assign_guest_event(struct domain *d, > + paddr_t vdoorbell_address, > + uint32_t vdevid, uint32_t eventid, > uint32_t virt_lpi); > void gicv3_lpi_update_host_entry(uint32_t host_lpi, int domain_id, > uint32_t virt_lpi); > diff --git a/xen/arch/arm/include/asm/grant_table.h b/xen/arch/arm/include/asm/grant_table.h > index e13dfeefa5..bd4eea2317 100644 > --- a/xen/arch/arm/include/asm/grant_table.h > +++ b/xen/arch/arm/include/asm/grant_table.h > @@ -36,10 +36,10 @@ static inline bool gnttab_release_host_mappings(const struct domain *d) > return true; > } > > -int create_grant_host_mapping(unsigned long gpaddr, mfn_t mfn, > +int create_grant_host_mapping(unsigned long addr, mfn_t frame, > unsigned int flags, unsigned int cache_flags); > -int replace_grant_host_mapping(unsigned long gpaddr, mfn_t mfn, > - unsigned long new_gpaddr, unsigned int flags); > +int replace_grant_host_mapping(unsigned long addr, mfn_t mfn, > + unsigned long new_addr, unsigned int flags); I know you are focusing to use the same parameter names as the definitions. However, with the new name it is not clear anymore what type of address is expected. From my understanding, the interface is expecting a guest physical address. So I think we should stick with 'gpaddr'. Also, I think there is another problem with this interface because a guest (and even host) address can be bigger than an 'unsigned long' on arm32. Anyway, this is something that could be dealt outside of this series. > > /* > * The region used by Xen on the memory will never be mapped in DOM0 > diff --git a/xen/arch/arm/include/asm/guest_access.h b/xen/arch/arm/include/asm/guest_access.h > index 4421e43611..c37cf7d871 100644 > --- a/xen/arch/arm/include/asm/guest_access.h > +++ b/xen/arch/arm/include/asm/guest_access.h > @@ -12,11 +12,11 @@ unsigned long raw_clear_guest(void *to, unsigned int len); > > /* Copy data to guest physical address, then clean the region. */ > unsigned long copy_to_guest_phys_flush_dcache(struct domain *d, > - paddr_t phys, > + paddr_t gpa, > void *buf, > unsigned int len); > > -int access_guest_memory_by_ipa(struct domain *d, paddr_t ipa, void *buf, > +int access_guest_memory_by_ipa(struct domain *d, paddr_t gpa, void *buf, > uint32_t size, bool is_write); The function namem suggests there would be a parameter called 'ipa'. But you are renaming it to 'gpa'. In this case, we should either renaming the parameter in the definition or the function name. I am slightly leaning towards the latter because we don't tend to use 'ipa' very much in Xen (even though this is the Arm official terminology). > > #define __raw_copy_to_guest raw_copy_to_guest > diff --git a/xen/arch/arm/include/asm/irq.h b/xen/arch/arm/include/asm/irq.h > index 11bc85d111..105b33b37d 100644 > --- a/xen/arch/arm/include/asm/irq.h > +++ b/xen/arch/arm/include/asm/irq.h > @@ -76,7 +76,7 @@ void init_IRQ(void); > > int route_irq_to_guest(struct domain *d, unsigned int virq, > unsigned int irq, const char *devname); > -int release_guest_irq(struct domain *d, unsigned int irq); > +int release_guest_irq(struct domain *d, unsigned int virq); > > void arch_move_irqs(struct vcpu *v); > > diff --git a/xen/arch/arm/include/asm/mm.h b/xen/arch/arm/include/asm/mm.h > index 4262165ce2..d78f7a183a 100644 > --- a/xen/arch/arm/include/asm/mm.h > +++ b/xen/arch/arm/include/asm/mm.h > @@ -225,7 +225,7 @@ extern void setup_directmap_mappings(unsigned long base_mfn, unsigned long nr_mf > /* Map a frame table to cover physical addresses ps through pe */ > extern void setup_frametable_mappings(paddr_t ps, paddr_t pe); > /* map a physical range in virtual memory */ > -void __iomem *ioremap_attr(paddr_t start, size_t len, unsigned int attributes); > +void __iomem *ioremap_attr(paddr_t pa, size_t len, unsigned int attributes) All the ioremap_* prototypes were consistent before this change. I have a slight preference if we stick we 'start' and therefore rename the parameter in the definition. But I would be ok with 'pa' so long all the other ioremap_* prototypes are updated accordingly. > > static inline void __iomem *ioremap_nocache(paddr_t start, size_t len) > { > diff --git a/xen/arch/arm/include/asm/regs.h b/xen/arch/arm/include/asm/regs.h > index 0693a68131..ef34b38aa1 100644 > --- a/xen/arch/arm/include/asm/regs.h > +++ b/xen/arch/arm/include/asm/regs.h > @@ -58,7 +58,7 @@ static inline bool guest_mode(const struct cpu_user_regs *r) > } > > register_t get_user_reg(struct cpu_user_regs *regs, int reg); > -void set_user_reg(struct cpu_user_regs *regs, int reg, register_t val); > +void set_user_reg(struct cpu_user_regs *regs, int reg, register_t value); > > #endif > > diff --git a/xen/arch/arm/include/asm/vgic.h b/xen/arch/arm/include/asm/vgic.h > index 328fd46d1b..aa9f49409e 100644 > --- a/xen/arch/arm/include/asm/vgic.h > +++ b/xen/arch/arm/include/asm/vgic.h > @@ -355,8 +355,8 @@ bool vgic_evtchn_irq_pending(struct vcpu *v); > int domain_vgic_register(struct domain *d, int *mmio_count); > int domain_vgic_init(struct domain *d, unsigned int nr_spis); > void domain_vgic_free(struct domain *d); > -int vcpu_vgic_init(struct vcpu *vcpu); > -int vcpu_vgic_free(struct vcpu *vcpu); > +int vcpu_vgic_init(struct vcpu *v); > +int vcpu_vgic_free(struct vcpu *v); > > void vgic_inject_irq(struct domain *d, struct vcpu *v, unsigned int virq, > bool level); Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Thu Jun 22 08:42:56 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 08:42:56 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553399.863921 (Exim 4.92) (envelope-from ) id 1qCFtt-00035i-S8; Thu, 22 Jun 2023 08:42:45 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553399.863921; Thu, 22 Jun 2023 08:42:45 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCFtt-00035b-PY; Thu, 22 Jun 2023 08:42:45 +0000 Received: by outflank-mailman (input) for mailman id 553399; Thu, 22 Jun 2023 08:42:44 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCFts-00035V-5l for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 08:42:44 +0000 Received: from EUR02-AM0-obe.outbound.protection.outlook.com (mail-am0eur02on2062f.outbound.protection.outlook.com [2a01:111:f400:fe13::62f]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id bf9cb40b-10d8-11ee-8611-37d641c3527e; Thu, 22 Jun 2023 10:42:41 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by AM8PR04MB7362.eurprd04.prod.outlook.com (2603:10a6:20b:1c5::23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.23; Thu, 22 Jun 2023 08:42:38 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6521.024; Thu, 22 Jun 2023 08:42:38 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: bf9cb40b-10d8-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=WHzcTsWZ+FbuA+ulL7DmUrmXM8KfiKH+hJ3xLGK7z2Au1fvtW+00ASKdZZlaJahdI4oSn4+AXatjkaCDFT/GdYtv/me+9O8C7Sx0FY2IDD8MtNDPjydB1K+xkQLwy04BOIC5zNu2YTCjizNijIpkT9gwAfmyufr/3Rq2ZGfmRo//JNiBT3AAINKg79BvLqnZG1UNflr0ln54p0+Fyk//EAiwt1eH/6G/tPz0+qGQfDqXiBrZc8qzmVG8umh2SA/Je8vt7hCGIah75f1c/gisL2mjZYINygqxtgx9++gbIUyMv2RkTpGqXchy/WXoGXVzERklnPiotGJMepQJlyCh6Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=Ya5OBKa4U4pXsz1gQtJ+XEYBNA4mQKe7sGf8wtHMzhs=; b=EzsEzyaBrV1yx8yf1Rtx+r4qYSLXVD5XxvxF6HO7kuslAHAyTMeys4RmwaDBL8PcpABotMvw6u52azkcMU8eKN09mZ0sKupxvNc6VeGwZTJBZpXAQDoE0CYpf+mqlnqcU9W/DXHRFhM5t3SGdceE0EiHzjEtwv+/fMgcw9G8Cmbw0UQGgw2FiKMroLFk1SMiKOIJ7XtaMf6FxZStexAcDZbw/uTpFIDz/aIK2XC6vFXk+JWf7Utlb443Plx38wFWwrZVjOp+zRwlUttLRgJS5jdpf/pdC2+KsOQRriEc5s5VRmihYS5V6Md2rfuMICd8TokKMOMEPQ4IedcWFDgNhA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Ya5OBKa4U4pXsz1gQtJ+XEYBNA4mQKe7sGf8wtHMzhs=; b=myHJS5NkZhE0WF6vt9eE/jIUyvHKCbpQsxkZcjzGKFJZIo4uQtkPqJq8cPRKdX10rf4gqSdcwIGieYtiwYLA1h1sIAEIvTeW3e6YlGPrJ2CNO8QJBLops1vJ0cYbKN55ajetzOMaBQtUvUFVojH79axKNshe9kfL7uIx7IamDz9Y/5JjXAq0rIBjHJM4Eu65DzZWqGHvRYQkmXD+9dBlNDY8sDftHYkqJxQHT1ziju5OuWK8a/IKaDVgkGSAenqSz4CjXsCCgMMJ41gyF1WnetGJgwkwfwQsPEFghizJzxZgtum6YSYPLQutYQec0oNZkXyjQO2yv+oCX2ELZ2MOTw== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: Date: Thu, 22 Jun 2023 10:42:35 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH 2/2] xen/types: Rework stdint vs __{u,s}$N types Content-Language: en-US To: Andrew Cooper Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , Stefano Stabellini , Julien Grall , Volodymyr Babchuk , Bertrand Marquis , Bob Eshleman , Alistair Francis , Connor Davis , Oleksii Kurochko , Shawn Anastasio , Timothy Pearson , Roberto Bagnara , Xen-devel References: <20230621211200.4132989-1-andrew.cooper3@citrix.com> <20230621211200.4132989-3-andrew.cooper3@citrix.com> From: Jan Beulich In-Reply-To: <20230621211200.4132989-3-andrew.cooper3@citrix.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FRYP281CA0018.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10::28) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|AM8PR04MB7362:EE_ X-MS-Office365-Filtering-Correlation-Id: 5e4b681d-b245-416a-854b-08db72fca220 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: Qbw+0zqw6msTlz1IcEWJR0nhzNIgFemFVXc0lmiVOVpaa1WpRixMaRtdFCvQbfD1qZkSxKG6Jq2Nu1GAJwP4LGIHJM63LAX1sZO02jjyFG6GqN2m7ZKzOmvhEgmzJYAF2ZRQeXxgMgSsMBRaeOXTtjrOVAP+57xfelGQ70B3jDHL3DA2l4MvabLLOiE9wfO0NDxWs8qdG2e1SNp5SxCDgNe6/ieGhM55W7dAhCvps8l+Ny6nb2lkHTrDMZwJ/R/EbwWpwrS6DmvSpnT6jBiPt729l8wTcDNfLSI0ahAWmWmT23PSZ1btZkL6wNDfZeDihdwdDy6cc+ypLDw9a2/bW1eUTW+AKub3TG98/+1TcX6elyW9qSgTOvNp9m/Yra8JevEhEuDSl30MZe3MfCNjvc5QoBcErR0wXrpxgYIEfadWOPf/NYexclWMgi4nLKOgsVW5DBYAF8BDn/VmWHLO3d15B3sxsFezLmV8q7xqGTUgH2W+Avmvo3vWlu2I+Mjzgzuzt5dOYtNauwE4DYSLAYfHQ+BHqCnaGfh+wWcvzgQlvTu2+N62DTre7AWvs0P3YJON30JwAlsbNvrTtmv0HQCi9Dx62/+Oc7kc5I2869CDbTGmhfmr1wCdgHVqi0ZUH36I3qgpFVzHPXsFWrziAg== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(366004)(39860400002)(136003)(346002)(376002)(396003)(451199021)(86362001)(38100700002)(316002)(4326008)(66556008)(66476007)(66946007)(6916009)(41300700001)(8676002)(5660300002)(31696002)(8936002)(2906002)(7416002)(186003)(26005)(6512007)(6506007)(36756003)(83380400001)(53546011)(2616005)(31686004)(54906003)(478600001)(6486002)(6666004)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?clpzbTFCUjlqVnhnQUVKckgxMnJWdGFBbGNLZ3lrcmZZUS9Ecm9VRjdIMFox?= =?utf-8?B?aFV1VTNhVXFKN1lGQTJ5L1JpQU5xOWZGRGZzMHJjRmRXOVBESUI3Mm9xRnNJ?= =?utf-8?B?Y3B0Y051bDcvUThocHlFRE1Ja0Y4Vk1CUFYzRUJtcEFpNVVoTndMVGV5OUgz?= =?utf-8?B?c2FKK3NDWi9ncVlZdzMxOVpmOVpqSUdINGVMbnJuRFdybEFCUzM1OVlxN21B?= =?utf-8?B?YVR0aVZ2N1drRUVUV3JnVW8wWjRQL1podVdySDZCdXc5Qk50bUhGZ0tBTm5j?= =?utf-8?B?STZBb1NMd3MxYStMZHdFWWtlUzhwNGhnNm1xUEUzYjRDZE9ha3l0MUVXZmJi?= =?utf-8?B?L2VKZTFSQVdoNWlSZXA5Ym5kWHZVOFJWbXpUYlVINllCRHJDRFh5eTVLRG1Q?= =?utf-8?B?UmNaQXRZNUFRR2IweUtZSFlwa2FzN3NkYWh0MS9TMCtkZHBOelpMenUyODlj?= =?utf-8?B?QmlqWndDbEFEUThoN1ZGajdhbGd2YkFqeFQzeUt3aUhyc1ZvTm1EVmkwMGxx?= =?utf-8?B?YXRKN3dSSm5oN0dtdWwwa2g2MU9JQW9PejlvczB6SWtKc3ozTW1UZFE5THNu?= =?utf-8?B?SVFSWTFnRHJhZHh2UjRDWXJkUXBXNnVFak01NEJjOUkxektlY1dXdU42WWNK?= =?utf-8?B?bTJMTEtPMjZoL3h6S1VQZ2FHWGxXOHFlMGVUYjE2R1RJTjl2OUlaVkJGUnBj?= =?utf-8?B?YTJ0bmxqOXF0NW1aTE9WbTdEWFZjWTh3UlgwVEQ1S3RGQ0d5dXBZSjBONllK?= =?utf-8?B?YTZXckwyQjFvWXNNMXhLNVpoVWVNUUUzdmpTdE93cFNHOHpmSDRMcG9lT3Uz?= =?utf-8?B?Y2tuU0tnWjlwbTN5cFR6NDh5enZURjJ4RHBYMGFDbFRtbDlJTHRzNzZTanZu?= =?utf-8?B?SThEamNkaDdMZXhHd0xma2hlT21HekxBc0FvUWxqK2hiZXhWZGNoaFJVQXdw?= =?utf-8?B?Yjd6Q0p5RXljbWJLRWlhaUxVOE5YV1lpNXFoV0N3bHVsYVh0OFFaVCthSFJ3?= =?utf-8?B?VUp2ck56b2N5dDY4bE8wRlJ5UkdaM2c0SVV3ZU8yZ2ZOZmloMEgwcHFYNjZu?= =?utf-8?B?SXZGLzh6MlVDejhrNmcxMDFSYzRTNlhrSFlnU2xvZGJ4T2V6emhXeW1ndGJv?= =?utf-8?B?OWphN0l5YTBwNmY2QlNWTWpEY25pcjdYMm03clU5bldsN2ljbjNGWXJJa2VM?= =?utf-8?B?bXRGeHFFMEZjWFIrWVJNcUtKL1RlNEhWQzRmUWZWZFNmekV1QitBK1d3RVgy?= =?utf-8?B?T0hsRDRNL1pzZ1dSSHA3R0J3SW1Edk9tUUxCWklLVVArVUtLTlFmZ084MkdH?= =?utf-8?B?K2xkSHhUU01seFk3NldBYnEzbVlib013MVgvcUo3MUdQYUN3MlVoVW9PbmNu?= =?utf-8?B?VTA2NlFrZnlua2I0Mk9aSmRCUS9qUGxhWms0eFVTNXZocm5kNUs0NTRLeTAw?= =?utf-8?B?T21wV0pTemk1eUpMVCt6N082NVZJUFJCcW4yTGxscXo1MVlLb3NXVE1FSUt3?= =?utf-8?B?d283d1NSalZFZ2o4M0YrLytIUU4rQ0hEa1kraFBpcStCMjh4cjRpWGt2WmhK?= =?utf-8?B?cjRhdVhZdDhnTGxWY2lKeTVxVm5iTmxvM2lvSkM5QytzSXlXcGhUQXlzY3Y0?= =?utf-8?B?QkVuTU5hSW5zMzlUTkUxOE5nUDRUcDlYN3QxdlhoM1VWeTJ5bnFKUXJOZWVC?= =?utf-8?B?RWJnRHpBOVNGdWN0cERENm9CRHorbEUvZFYzeDdCZlUwV0JKNzlCdUE3Ukhw?= =?utf-8?B?ZVBWWEJzN29IeUZycmNXVkg0aVFtYis0d0JaZTViQ0ZycE5aN2lHZXFJd2lS?= =?utf-8?B?K2FHaXc4amhNUWIwcUI3Z1l6eFoxVW03QkxsNW9qb2dtWVVMQk9sVmdDME5E?= =?utf-8?B?ZXVKVis3MWdxVC9ORkhqWStQMG9COWNmQXNrdkltenNJZmpFc211VEJaaVFM?= =?utf-8?B?RlBnU0ZFMWIxLzQ5SHFCb3kvaVBvM2hmTHpmVmhLQUdIUU0rUDNhQVVGR1Vl?= =?utf-8?B?QThWR0ZWK1Q2VVI3b01UVzRsZllBcDNCdzRFdUFydHd0UGVnMGZoVEpCYmRL?= =?utf-8?B?OUZnMklWRksrbDVwdUVaMy9iVDlNUWt0TXNPZFlHbG9ZcDhsYVVDcTlTM1d4?= =?utf-8?Q?pYlFQwuTd/VJf9I16tTte8Aw8?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 5e4b681d-b245-416a-854b-08db72fca220 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 22 Jun 2023 08:42:38.1745 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: uBej7eeVSEwLiKg6aaefCB67+JcxrJsebQ3SED/EX/vLzsA1iedRdb2TpyVa02Y572GoCM6F6gFzaXdzhSqolw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM8PR04MB7362 On 21.06.2023 23:12, Andrew Cooper wrote: > A different option would be to sort out the stdint types ahead of including > , which can either be done by introducing a or > upping the minimum compiler version for x86; a task which is massively > overdue. As per my patch moving in this same direction, I strongly think this is the direction we want to take. (I don't see a reason to introduce asm/stdint.h for this - the logic you put in x86'es asm/types.h can well be put in xen/types.h as well, suitably limited by a slightly more involved #if than you have it now.) Personally I think using "mode" attributes for the fallbacks would be the more widely compatible way, but I'm not going to object to your approach avoiding them. It would feel more safe though if without using that attribute the fallback wasn't tied to __INT8_TYPE__ being defined (but instead directly to being on very old gcc). As to upping the minimal gcc version for x86: While I'm pretty sure I'm considered the hindering factor here, I continue to think that my "blocking" request isn't unreasonable at all: We want to establish clear criteria, by which we can then also go in the future. And we want to make clear what, if any, baseline requirements are acceptable to put up beyond consideration of just binutils and compilers (basic utilities, make, perl, python, etc). Jan From xen-devel-bounces@lists.xenproject.org Thu Jun 22 08:47:51 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 08:47:51 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553404.863930 (Exim 4.92) (envelope-from ) id 1qCFyh-0003hm-E2; Thu, 22 Jun 2023 08:47:43 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553404.863930; Thu, 22 Jun 2023 08:47:43 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCFyh-0003hf-Ao; Thu, 22 Jun 2023 08:47:43 +0000 Received: by outflank-mailman (input) for mailman id 553404; Thu, 22 Jun 2023 08:47:42 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCFyf-0003hZ-Uj for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 08:47:42 +0000 Received: from EUR01-HE1-obe.outbound.protection.outlook.com (mail-he1eur01on2043.outbound.protection.outlook.com [40.107.13.43]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 70299849-10d9-11ee-8611-37d641c3527e; Thu, 22 Jun 2023 10:47:37 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by DBAPR04MB7478.eurprd04.prod.outlook.com (2603:10a6:10:1b3::24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.23; Thu, 22 Jun 2023 08:47:09 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6521.024; Thu, 22 Jun 2023 08:47:09 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 70299849-10d9-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=hKGSQIvQvuk7UrhSG7aOibMz2dF1D0spS6KQ7JXFTaEVqEltaShHC2fpTiWNlME5pz6ZeyYcvRwzKOchSO3KraUiWpcqP8ImnZYZ1R3cOX2ZNPNBdiN94FdJkE3WLB87Q96c6iNxoZM6py//rv008DHucHy8B1IBllWL1mpMVVYncfPnUTRycl7uR+OAzjMMS40Z8mF18IERoJ+MrOlTcIk7BXtaRV50uRjOp8bsc0YPGFWJgoF6bP2fJAnJpB+hbaxWOMnJfFIweKqjwGV5tap0N5xvgMT8fDERM18DpsGQ6x829KwRpTcYRC8BrtssePAXpO2+9VDXBvHSfgz+kg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=DWxRalE6eMZteR+B+PyDdNmd+8tSSz2Nan47LSH2Vac=; b=dOpZzzonjufn/Issnm0/2+ShuUq+z0AghrG5jnpc3rkdHaX2iH9xX9VlK2yv4eL7eGLd7qrD7qigq1wu1FNi0g8syi8BGP6+Z2HHH2Ecyk4kwbwmViwbbbZmPqFZAODNRkSUU3oSyM82Vu/6lKDNXwqnUqzWAt/TiidBvvb85LEGJJm0u7dgwc1MGW63w8YroPZ6JcrEC2etj+Bko2LLYGTz/ooDCeAAbC3C/yifdEn1vR7tMoWrD+IfhDEtZLYLlx8CjerpkSpqBniQBs2Meic56/YL4PaoiyaqLrquIsCUc9Q+kGxl7lmBPApbFH739O9FyVMmizxUsy+2gwbTew== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=DWxRalE6eMZteR+B+PyDdNmd+8tSSz2Nan47LSH2Vac=; b=NsVa7z/5yGZqDB6+h387xkcF8M+DTFctdt5AjfEFVjUEsiOX5TI1Zwgvw8t8ZPYLr1ZQvtCXem+DbV4Dl+dMAlkIQlLx9/8uPU7tmjicVvL5Pq2LiJu8G1KbKmHwJzvEODZuAQ6OWtKjW7d+K3vLYl7rwSpGbh740oJMvo88nKz4sSyQA/r+XH8y61Xd7s7ey5xu8bLIRXVOg5eRsEB0vis2ucVnBuhF7+N2jVTz5M7AnAUnyq+64ezhum7+8WcvxZG4NOBKx8OI6UsNubTeC3VAbOoqm14WGtMTuL69GFyVYNLgIDqQi49gom91K1IhapiXjAluLLqwWX1/HTh2Ew== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <4cde4125-9c67-0686-1d82-07921420e904@suse.com> Date: Thu, 22 Jun 2023 10:47:06 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [XEN PATCH v2] xen/include: avoid undefined behavior. Content-Language: en-US To: Nicola Vetrini Cc: sstabellini@kernel.org, michal.orzel@amd.com, xenia.ragiadakou@amd.com, ayan.kumar.halder@amd.com, consulting@bugseng.com, andrew.cooper3@citrix.com, roger.pau@citrix.com, bertrand.marquis@arm.com, julien@xen.org, George Dunlap , Wei Liu , xen-devel@lists.xenproject.org References: <9d222cc83013aaa67b45638b27f5975b60aecb37.1687332385.git.nicola.vetrini@bugseng.com> <0fcc228c-548f-9051-b8ce-4d79a3d8293f@suse.com> <6b0ca17e-d6c7-f7f1-e4b1-26977008b873@bugseng.com> From: Jan Beulich In-Reply-To: <6b0ca17e-d6c7-f7f1-e4b1-26977008b873@bugseng.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR3P281CA0016.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:1d::21) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|DBAPR04MB7478:EE_ X-MS-Office365-Filtering-Correlation-Id: 3aedcca6-3cad-4d66-4872-08db72fd4386 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 5j2QXWvAZ2+WE3L5zrSUvO2iD4gZqHR2hLiPpAv0xe7z/Tx1VD0cQNEaH7VftEAjHh8CxTfuoUludIM6miSjwZqwIMbCehDWBoRMT+jMWmuGIunz3VOiw2t5J9NzEnDa5LjX4v5mwJ7EegUEK8WRJAg/V86buQd2bIRNixlWsFkNSLRSB7O0qdGgaz8UO14s1QBrWua9jsUPyPgzcbbv6ZzAV57cA7n3M3ha+lMpBQojHxps76NA74PRa0wfb/eXbf6Ooh5oCEeB/JE4RwfIIF3eUJfELnoLkOyTL4MYsE4YjN5s2OSFCv2f1SF+HB+71f2r/waUOX0QIGCV2eFn+UyQAzA1UoRWtCLWef8YjDYkBpYszF43FZWD62hZH5AwQ/2ctTHyN3SkzyxCfiIEx4/t4hYtea47Zk6O2Onxn6ydfXjwi9JGTJS/AXvcShIUcRDUMZBzMbjaRaLmEXdNI12vh+NXPlf/yYU4Pdf6TjWMmt6ToSwF/w6e+YiogUrVPinqx9+5Ct/O6qsVR3wjwhvzLCSuaxFw2C+QkxC3huzwSbHIU8BHnGAQ3J/v9z0Aj5Qu17OcfbKg2NBQAweZgA9u/8l7tiYtmr7gFeitNvMYWWNMYPuDUqqIttK23bt9I375svFNcj2Dupkx/UNxHA== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(136003)(396003)(39860400002)(376002)(366004)(346002)(451199021)(6666004)(2906002)(186003)(4744005)(2616005)(6512007)(66556008)(66476007)(6916009)(66946007)(54906003)(316002)(4326008)(478600001)(26005)(8936002)(53546011)(7416002)(6506007)(5660300002)(41300700001)(8676002)(6486002)(38100700002)(36756003)(31696002)(86362001)(31686004)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?S1piZGVCWU9SNnJIY3c0L0dPeWl6OUJUNU00azVkZ2xUbnNNUXBQNjUxSkx2?= =?utf-8?B?RDBBczBjZ1lVc2ZqRjg4RTlOU0hpUkRSOVhyd2Y5R0E2a1ZUSHVtWktPQkxh?= =?utf-8?B?bXAvS05VWmJGMGJFUUkvdkRDclpvTFd3UFpCK3BWSDBLWDBxMWZuaG8rbUwr?= =?utf-8?B?UzZYSUdHZ0IxZ0RVYjRpcmRYVm4yeDRObEpZUGpFKzJqa1h4VFNPbGE3RFBM?= =?utf-8?B?NXgrZ3ZFOExQaGIvM3VaaWFpTHZHNmtSWktmckJMdWJOcStNR2pZdUd6dlBp?= =?utf-8?B?OVZIRmNxenBuaHNsTnFSK1hQWUlFdGc4UmV6U1Z2c0J5TW5kVGZ1Q01ieU1P?= =?utf-8?B?M0tJWDByQ1hINTZjYUpCRDFvaG9CY01oOVlyYmZZMFBvMEx1d245TXdkMUFy?= =?utf-8?B?emRscXFoUnZZQ2xrRkovYldNY01uNHAxMkcvUnZZYmFBTi9WZ3NPZnluejdI?= =?utf-8?B?Z2o3L2NlNmhSQ0Y5cmg0cURjZ1lzcUE1WDVVYml6NkowVmpTNS92Nm41bFV2?= =?utf-8?B?WFdzeC9xazFHQXI4bUQ1elU4M3lPR1ZZNzVyVXFWQVlaUkU1Nkl0b1pQdEdJ?= =?utf-8?B?RTJnS3lCU1kzVWxHOGRNYWZTcWNyUEhaVXhXbkxFTWkxa1I4dEZlQWpFVkpz?= =?utf-8?B?NlErZUU0czBwclozL0htUWloS25Db05WdlBhb2VKMVZWUnFiS05mMXM4RTdJ?= =?utf-8?B?VkRkb1pOazIrdG80SmZKVjVSU3lERXljR29nemxEdS93Z2VUWDVqQkx0MU5Y?= =?utf-8?B?cEhYU2lMcHpkTmRFZ1hqNGJGOGdwTGpXTFlLRzlTQXFEdWJFVW9uVmlGNmdt?= =?utf-8?B?YVk0UkZFMWc3ZVQxWTI1UTdHYUlkNE95amc4WlRpNy85cjVHREhPSDY2M0Vi?= =?utf-8?B?V0ZzNFRteWJzU1BDVE1Raml4UDZLR0JoMlJLRFV0N0JoNmhjMXlwNmp3azdC?= =?utf-8?B?WnE0NWxmaGFDT3A5MG5SVDEzNmlubUJCUkxVTnFNallMSXRPRTNRM2RmeHkw?= =?utf-8?B?STRlMTNCd1RJRFR6L0NNRUs2WnJ6czI1VkNrTTJQa0ZReG1TK05mS1Y1ZmNS?= =?utf-8?B?Z3NYQ1BRQTB1ekZNV0R3R2xsVVdlcmQvKzgwM1FhdW43Y3hJSThFenNMMGxj?= =?utf-8?B?V2pXQnE4QzdKMGtRVTEzOFM2a04vYVZEY2xTTkpKdFcxR09mRmhuZlRFSXVC?= =?utf-8?B?TzdtUDRCQ3ZmTklwT2RjTzJxcFhETE5zamZNSkZOdnA2RUtzemNhV2hjV01w?= =?utf-8?B?VFlCQnZnREtsMjJ3d0xuYzFmZ09ITmFhT21UcmZ6VG5ZNUl1dHVoWjZ4Sko1?= =?utf-8?B?TnZrYTU2ZDVCZzlDWXdwMjBaTjQxY2xybEUwQWxmUFFxRElhZE43M3IvZmM4?= =?utf-8?B?d3FFRzJ1bXgzeXFseGdXKzEySFZWOE9nc3pjTkhFV0Vxd0sxTGdvY1ZjK2E1?= =?utf-8?B?bkQwMi92RnNXNVBRYkhod2cvQWxUejM1elM1WlRyREkrOVZzbjRtY1EySzRF?= =?utf-8?B?QThYdmx4dzhVTXRGMGRBS0RBekhaS0J4anhPck55Wjd3cThSbDMwb0trc2hX?= =?utf-8?B?THI5bGlYamJFM2Fzd2tZZUpuOXZlQzQ2WlhpZGJEK0FQUzBhRDBZZk43UDB4?= =?utf-8?B?ekNtZ2NQMlB4aHNiWEc3L2gyV284ZHZqQmlxTlpzRlVtckczeXU2bXBsM3BL?= =?utf-8?B?S1V1bXdMT2ZqSWlMWG14QjF5eFhZbUVaVkYxV2M4cWN3MHdIT1pEeTFDc05Z?= =?utf-8?B?elpTSjNKc2dhVzI1dTJaYk1TNS8zYVNNWnZGR0NhYlVLOU1pckM1MlRud2xr?= =?utf-8?B?K2JrQkQzcG9meUtkd0Z0cko4dTd6elZvTjVWVnFrTzN3N1JSbjFrR2I1U0hI?= =?utf-8?B?a1U2ekttVk81MGNHbXpRd04yVFlqQktQejFyY2dwRUkzanl3dDlwekRDa01k?= =?utf-8?B?NUxaUy84MXRQKy9FVExRWDhDT1QwUGVkNHlmYWs3M1R5TFI4OUNENkdYeFlu?= =?utf-8?B?LzJONWhVa24yZG1xMm1kZ01LdXM0K0VXSW82VEhvUjlLSGszNW9zdjM2dFJ2?= =?utf-8?B?VUtZTCtIQ25wRXdWWXhHVmlGOWhYdXprYnpLdDdaYW1vNEdON2lqWTBaSHhY?= =?utf-8?Q?W0g0+G2VaQtJAqdVlICiTMQJ3?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 3aedcca6-3cad-4d66-4872-08db72fd4386 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 22 Jun 2023 08:47:09.0399 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: qN6QrAXiwXgkWJyKDe2Dkpii3DS4hHIl2te85DZBUi/Q+cHC96CVs7+CYQ5XJT9YmyZGuLnxFWBjAsexrMLqzg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBAPR04MB7478 On 22.06.2023 10:15, Nicola Vetrini wrote: > On 21/06/23 10:48, Jan Beulich wrote: >> On 21.06.2023 09:58, Nicola Vetrini wrote: >>> -#define BUILD_BUG_ON_ZERO(cond) sizeof(struct { int:-!!(cond); }) >>> +#define BUILD_BUG_ON_ZERO(cond) \ >>> + (sizeof(struct { unsigned u : (cond) ? -1 : sizeof(unsigned) * 8; }) - sizeof(unsigned)) >> >> What's wrong with just giving the bitfield a name: >> >> #define BUILD_BUG_ON_ZERO(cond) sizeof(struct { int _:-!!(cond); }) >> > > A named bitfield with zero width is not allowed by the standard, which > is why the fix introduces a constant positive width. I'll send a v3 > shortly addressing your previous remarks, though. Oh, right, but easy to overcome, I think: int _:1 - !!(cond); Jan From xen-devel-bounces@lists.xenproject.org Thu Jun 22 08:50:29 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 08:50:29 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553411.863941 (Exim 4.92) (envelope-from ) id 1qCG1H-0005CB-VR; Thu, 22 Jun 2023 08:50:23 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553411.863941; Thu, 22 Jun 2023 08:50:23 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCG1H-0005C4-SO; Thu, 22 Jun 2023 08:50:23 +0000 Received: by outflank-mailman (input) for mailman id 553411; Thu, 22 Jun 2023 08:50:23 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCG1H-0005Bw-6v for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 08:50:23 +0000 Received: from NAM12-BN8-obe.outbound.protection.outlook.com (mail-bn8nam12on20625.outbound.protection.outlook.com [2a01:111:f400:fe5b::625]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id cfbadf76-10d9-11ee-8611-37d641c3527e; Thu, 22 Jun 2023 10:50:18 +0200 (CEST) Received: from DS7PR05CA0001.namprd05.prod.outlook.com (2603:10b6:5:3b9::6) by SA1PR12MB7343.namprd12.prod.outlook.com (2603:10b6:806:2b5::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.21; Thu, 22 Jun 2023 08:50:14 +0000 Received: from DM6NAM11FT054.eop-nam11.prod.protection.outlook.com (2603:10b6:5:3b9:cafe::48) by DS7PR05CA0001.outlook.office365.com (2603:10b6:5:3b9::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.26 via Frontend Transport; Thu, 22 Jun 2023 08:50:14 +0000 Received: from SATLEXMB04.amd.com (165.204.84.17) by DM6NAM11FT054.mail.protection.outlook.com (10.13.173.95) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6500.41 via Frontend Transport; Thu, 22 Jun 2023 08:50:13 +0000 Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Thu, 22 Jun 2023 03:50:11 -0500 Received: from [10.71.193.39] (10.180.168.240) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.23 via Frontend Transport; Thu, 22 Jun 2023 03:50:09 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: cfbadf76-10d9-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Mw2vxKdA7i9Z6JH3DZ26N7F8S41BADGXlGFlRZRipaQtsjsbjoFxNKnF9XzIXxGjACSFOHOknqPVIuDgbTXZ9YWAY9t0mpLn0tYgeJMsvQCkoY3z87OPPyO1Z1u0E3eVAKN3GZ09OHsxZgZjp9arskG5V5f70TvdRAUNZc+E95c4NwCUFIN8zZ1E/n+7CAQ7k1028OAo0lfRG4dhE2j4O6bIsck6LRzmQismIrKuST6Fz42Gm2hyc+MoD5oGzF2AyuOHs8/Mi6Ilm2ufeaY+ILWFmf4kU6NS09IpnFU9+T//9XVMaQ/iB0E18tlb8+So3AwYdUut8Mk6vkuOxcpLbw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=pXDmYE9KFWY2FURoM3XSsaKyH48Qaor7ysamwBm8/8A=; b=hNVr4U7z9BVI3VGqYVnPvMqRZEucfdD0IkQBmqncMU6z0P9N39NHakkzz/tvXDuQMMtoXVONPWYwSgiZ0hkwWMbFJ7GuJCVYPGv+5aqRG42SOk9qC301hTnTpZ2Gh/lMH/ydGgb8003kLIVdIxCUhrCJ9gZsq/ugN8gMDRAqHPj819GHtN+5HeUaaFMwAun+xniVcF25ZfeUTM4hBUF3KPcwUAJcK46MtK17mIbzC6Es5g0UgXT+d1j9ejANjLMNphrKeWVQ6lr/4OZ51d3cGRqkOsftDzlzSSoEh9uO9Qi9HmLV5hLeSgWP5Z47Js+WBFeNP6PTjUB/D9iQ1ns6lA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=xen.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=pXDmYE9KFWY2FURoM3XSsaKyH48Qaor7ysamwBm8/8A=; b=2DyGt3SZQmeuNXysq6nFX0WL4vHzpI5xWI3xgxoBajuFXr7f5odQm5jwH1wefyH5mAZ+TS1IcCiEBSK9nhMSBVeNqQY/9C1pC5IUmFhnXr0BIJh+AhcfefDjon/Q8eMVyvab5dVzz6wXxJNGFt/l+WpIzE1YifSJ4F464NvDBR4= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C Message-ID: Date: Thu, 22 Jun 2023 10:50:03 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [XEN PATCH] xen/arm: fixed violations of MISRA C:2012 R8.3 on parameter names. To: Julien Grall , Federico Serafini , CC: , Stefano Stabellini , Bertrand Marquis , Volodymyr Babchuk , Xenia Ragiadakou , Ayan Kumar Halder References: <7a48c49e-2998-9e34-45ef-a1c3431fbffe@xen.org> Content-Language: en-US From: Michal Orzel In-Reply-To: <7a48c49e-2998-9e34-45ef-a1c3431fbffe@xen.org> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DM6NAM11FT054:EE_|SA1PR12MB7343:EE_ X-MS-Office365-Filtering-Correlation-Id: 7a16107e-4d04-49e1-ebf6-08db72fdb19f X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 34+RpUGKioxHeo/1cDgWGaucr+cSP8s6UdANtWZKjZaMmi6SR/beBd8HQq+v6iJcp1HTyZ9nx6CMzBi/PdMQl078ltL/SQKWCB3k1o6wjokljRCa3PZ4GlmiFTGxhh0qazca3Zc1GYSFYjuVN7kp2d7x2iPM7lqMKgBrds0QwyKFUTA4w5TbP2F0UVGLIUddb8rGBm8ZSGyse3WeDG114UP8eD/j1R30bXG0uU5uGOHtRtpAE/MfMwUF2LjXIWmmM+kPCDy4HNwpuhZsgnm5p0xXA9u85xPIOTNPJdlyl9lmrEiWMddoKE0sQ3heYhwSlRRZzToOPyEM3IozAyn8cV9WOr14B2xZnzr372ROPtQZNqeIn+GtdgYjZMKxh67KmMq/hzkhj1DvjCxmwVqliuh+7xYF51Pkru+8BLHbaUpRaxWYCk7F9PIJiF8tUOcJL65xdQqn37Dh3HIfvf4aeRhQ3erQMG1O/OVqda25IQDZasN9xWUwSXFte3T3lwLdoKK8RMAz8w9brylHk0Oepvl71I7Ou5zZseeQZgiQoAnsMzCsCLri2aSTeSrVDighJaWLRGNnPijjHs5IyBmA9OxeyYLsG7s6ucsbLSO4efAcnEb01rTG/F1c1lJTj64JerU3sjboS6USwUNWV3WgecyYDejAo1gLnKIwWlBOfQm09ualPvDKwSq1zlytllLejhzXNZoNjKOKRglRVp2m3fBwT3nwR4RYNvgswuYLCVjuSX19PL1fgedfHzGUIe1AHl+Z826C/1yYFJKTwoJx6dZdQvO9xX7VKfF1PEveVyzuwTcPgErRMUCE2QL5UidP8nqIuGQRLIfjzplNn5XhHw== X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:ErrorRetry;CAT:NONE;SFS:(13230028)(4636009)(376002)(396003)(346002)(136003)(39860400002)(451199021)(40470700004)(36840700001)(46966006)(66899021)(47076005)(36860700001)(82740400003)(356005)(81166007)(40480700001)(16576012)(54906003)(478600001)(6666004)(966005)(2906002)(44832011)(5660300002)(70206006)(70586007)(316002)(41300700001)(4326008)(8676002)(8936002)(2616005)(83380400001)(426003)(110136005)(336012)(82310400005)(186003)(53546011)(26005)(31686004)(86362001)(36756003)(31696002)(40460700003)(43740500002)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 22 Jun 2023 08:50:13.4616 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 7a16107e-4d04-49e1-ebf6-08db72fdb19f X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com] X-MS-Exchange-CrossTenant-AuthSource: DM6NAM11FT054.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA1PR12MB7343 Hi Federico, On top of Julien remarks, only one more from my side. On 22/06/2023 10:37, Julien Grall wrote: > > > Hi, > > On 22/06/2023 09:13, Federico Serafini wrote: >> To comply with Rule 8.3 ("All declarations of an object or function >> shall use the same names and type qualifiers") change the parameter >> names of function declarations to be consistent with the names used >> in the corresponding function definitions. > >> Signed-off-by: Federico Serafini >> --- >> xen/arch/arm/include/asm/event.h | 2 +- >> xen/arch/arm/include/asm/fixmap.h | 2 +- >> xen/arch/arm/include/asm/gic.h | 2 +- >> xen/arch/arm/include/asm/gic_v3_its.h | 5 +++-- >> xen/arch/arm/include/asm/grant_table.h | 6 +++--- >> xen/arch/arm/include/asm/guest_access.h | 4 ++-- >> xen/arch/arm/include/asm/irq.h | 2 +- >> xen/arch/arm/include/asm/mm.h | 2 +- >> xen/arch/arm/include/asm/regs.h | 2 +- >> xen/arch/arm/include/asm/vgic.h | 4 ++-- >> 10 files changed, 16 insertions(+), 15 deletions(-) >> >> diff --git a/xen/arch/arm/include/asm/event.h b/xen/arch/arm/include/asm/event.h >> index b14c166ad6..fa54ef8869 100644 >> --- a/xen/arch/arm/include/asm/event.h >> +++ b/xen/arch/arm/include/asm/event.h >> @@ -3,7 +3,7 @@ >> >> #include >> >> -void vcpu_kick(struct vcpu *v); >> +void vcpu_kick(struct vcpu *vcpu); > With this change we know have inconsistency in the arguments naming > within the header. It is more common to denote a vCPU with 'v' so I > would rather prefer if we modify the function definition in a patch before. > >> void vcpu_mark_events_pending(struct vcpu *v); >> void vcpu_update_evtchn_irq(struct vcpu *v); >> void vcpu_block_unless_event_pending(struct vcpu *v); >> diff --git a/xen/arch/arm/include/asm/fixmap.h b/xen/arch/arm/include/asm/fixmap.h >> index d0c9a52c8c..734eb9b1d4 100644 >> --- a/xen/arch/arm/include/asm/fixmap.h >> +++ b/xen/arch/arm/include/asm/fixmap.h >> @@ -30,7 +30,7 @@ >> extern lpae_t xen_fixmap[XEN_PT_LPAE_ENTRIES]; >> >> /* Map a page in a fixmap entry */ >> -extern void set_fixmap(unsigned int map, mfn_t mfn, unsigned int attributes); >> +extern void set_fixmap(unsigned int map, mfn_t mfn, unsigned int flags); >> /* Remove a mapping from a fixmap entry */ >> extern void clear_fixmap(unsigned int map); >> >> diff --git a/xen/arch/arm/include/asm/gic.h b/xen/arch/arm/include/asm/gic.h >> index 76e3fa5dc4..f1ef347edc 100644 >> --- a/xen/arch/arm/include/asm/gic.h >> +++ b/xen/arch/arm/include/asm/gic.h >> @@ -257,7 +257,7 @@ int gic_remove_irq_from_guest(struct domain *d, unsigned int virq, >> extern void gic_clear_pending_irqs(struct vcpu *v); >> >> extern void init_maintenance_interrupt(void); >> -extern void gic_raise_guest_irq(struct vcpu *v, unsigned int irq, >> +extern void gic_raise_guest_irq(struct vcpu *v, unsigned int virtual_irq, >> unsigned int priority); >> extern void gic_raise_inflight_irq(struct vcpu *v, unsigned int virtual_irq); >> >> diff --git a/xen/arch/arm/include/asm/gic_v3_its.h b/xen/arch/arm/include/asm/gic_v3_its.h >> index fae3f6ecef..c24d4752d0 100644 >> --- a/xen/arch/arm/include/asm/gic_v3_its.h >> +++ b/xen/arch/arm/include/asm/gic_v3_its.h >> @@ -190,8 +190,9 @@ struct pending_irq *gicv3_its_get_event_pending_irq(struct domain *d, >> uint32_t eventid); >> int gicv3_remove_guest_event(struct domain *d, paddr_t vdoorbell_address, >> uint32_t vdevid, uint32_t eventid); >> -struct pending_irq *gicv3_assign_guest_event(struct domain *d, paddr_t doorbell, >> - uint32_t devid, uint32_t eventid, >> +struct pending_irq *gicv3_assign_guest_event(struct domain *d, >> + paddr_t vdoorbell_address, >> + uint32_t vdevid, uint32_t eventid, >> uint32_t virt_lpi); >> void gicv3_lpi_update_host_entry(uint32_t host_lpi, int domain_id, >> uint32_t virt_lpi); >> diff --git a/xen/arch/arm/include/asm/grant_table.h b/xen/arch/arm/include/asm/grant_table.h >> index e13dfeefa5..bd4eea2317 100644 >> --- a/xen/arch/arm/include/asm/grant_table.h >> +++ b/xen/arch/arm/include/asm/grant_table.h >> @@ -36,10 +36,10 @@ static inline bool gnttab_release_host_mappings(const struct domain *d) >> return true; >> } >> >> -int create_grant_host_mapping(unsigned long gpaddr, mfn_t mfn, >> +int create_grant_host_mapping(unsigned long addr, mfn_t frame, >> unsigned int flags, unsigned int cache_flags); >> -int replace_grant_host_mapping(unsigned long gpaddr, mfn_t mfn, >> - unsigned long new_gpaddr, unsigned int flags); >> +int replace_grant_host_mapping(unsigned long addr, mfn_t mfn, >> + unsigned long new_addr, unsigned int flags); > > I know you are focusing to use the same parameter names as the > definitions. However, with the new name it is not clear anymore what > type of address is expected. > > From my understanding, the interface is expecting a guest physical > address. So I think we should stick with 'gpaddr'. > > Also, I think there is another problem with this interface because a > guest (and even host) address can be bigger than an 'unsigned long' on > arm32. Anyway, this is something that could be dealt outside of this series. > >> >> /* >> * The region used by Xen on the memory will never be mapped in DOM0 >> diff --git a/xen/arch/arm/include/asm/guest_access.h b/xen/arch/arm/include/asm/guest_access.h >> index 4421e43611..c37cf7d871 100644 >> --- a/xen/arch/arm/include/asm/guest_access.h >> +++ b/xen/arch/arm/include/asm/guest_access.h >> @@ -12,11 +12,11 @@ unsigned long raw_clear_guest(void *to, unsigned int len); >> >> /* Copy data to guest physical address, then clean the region. */ >> unsigned long copy_to_guest_phys_flush_dcache(struct domain *d, >> - paddr_t phys, >> + paddr_t gpa, >> void *buf, >> unsigned int len); >> >> -int access_guest_memory_by_ipa(struct domain *d, paddr_t ipa, void *buf, >> +int access_guest_memory_by_ipa(struct domain *d, paddr_t gpa, void *buf, >> uint32_t size, bool is_write); > > The function namem suggests there would be a parameter called 'ipa'. But > you are renaming it to 'gpa'. In this case, we should either renaming > the parameter in the definition or the function name. > > I am slightly leaning towards the latter because we don't tend to use > 'ipa' very much in Xen (even though this is the Arm official terminology). > >> >> #define __raw_copy_to_guest raw_copy_to_guest >> diff --git a/xen/arch/arm/include/asm/irq.h b/xen/arch/arm/include/asm/irq.h >> index 11bc85d111..105b33b37d 100644 >> --- a/xen/arch/arm/include/asm/irq.h >> +++ b/xen/arch/arm/include/asm/irq.h >> @@ -76,7 +76,7 @@ void init_IRQ(void); >> >> int route_irq_to_guest(struct domain *d, unsigned int virq, >> unsigned int irq, const char *devname); >> -int release_guest_irq(struct domain *d, unsigned int irq); >> +int release_guest_irq(struct domain *d, unsigned int virq); >> >> void arch_move_irqs(struct vcpu *v); >> >> diff --git a/xen/arch/arm/include/asm/mm.h b/xen/arch/arm/include/asm/mm.h >> index 4262165ce2..d78f7a183a 100644 >> --- a/xen/arch/arm/include/asm/mm.h >> +++ b/xen/arch/arm/include/asm/mm.h >> @@ -225,7 +225,7 @@ extern void setup_directmap_mappings(unsigned long base_mfn, unsigned long nr_mf >> /* Map a frame table to cover physical addresses ps through pe */ >> extern void setup_frametable_mappings(paddr_t ps, paddr_t pe); >> /* map a physical range in virtual memory */ >> -void __iomem *ioremap_attr(paddr_t start, size_t len, unsigned int attributes); >> +void __iomem *ioremap_attr(paddr_t pa, size_t len, unsigned int attributes) > All the ioremap_* prototypes were consistent before this change. I have > a slight preference if we stick we 'start' and therefore rename the > parameter in the definition. But I would be ok with 'pa' so long all the > other ioremap_* prototypes are updated accordingly. > >> >> static inline void __iomem *ioremap_nocache(paddr_t start, size_t len) >> { >> diff --git a/xen/arch/arm/include/asm/regs.h b/xen/arch/arm/include/asm/regs.h >> index 0693a68131..ef34b38aa1 100644 >> --- a/xen/arch/arm/include/asm/regs.h >> +++ b/xen/arch/arm/include/asm/regs.h >> @@ -58,7 +58,7 @@ static inline bool guest_mode(const struct cpu_user_regs *r) >> } >> >> register_t get_user_reg(struct cpu_user_regs *regs, int reg); >> -void set_user_reg(struct cpu_user_regs *regs, int reg, register_t val); >> +void set_user_reg(struct cpu_user_regs *regs, int reg, register_t value); >> >> #endif >> >> diff --git a/xen/arch/arm/include/asm/vgic.h b/xen/arch/arm/include/asm/vgic.h >> index 328fd46d1b..aa9f49409e 100644 >> --- a/xen/arch/arm/include/asm/vgic.h >> +++ b/xen/arch/arm/include/asm/vgic.h >> @@ -355,8 +355,8 @@ bool vgic_evtchn_irq_pending(struct vcpu *v); >> int domain_vgic_register(struct domain *d, int *mmio_count); >> int domain_vgic_init(struct domain *d, unsigned int nr_spis); >> void domain_vgic_free(struct domain *d); >> -int vcpu_vgic_init(struct vcpu *vcpu); >> -int vcpu_vgic_free(struct vcpu *vcpu); >> +int vcpu_vgic_init(struct vcpu *v); >> +int vcpu_vgic_free(struct vcpu *v); I know that new VGIC (files under arch/arm/vgic/) is not covered by the MISRA work, but functions there reuse the same prototypes. So by changing the parameter names here, we should also change the names in the following definitions for consistency: https://xenbits.xen.org/gitweb/?p=xen.git;a=blob;f=xen/arch/arm/vgic/vgic-init.c;h=ea739d081e7879b44c4b05c862ad32c301105732;hb=HEAD#l201 https://xenbits.xen.org/gitweb/?p=xen.git;a=blob;f=xen/arch/arm/vgic/vgic-init.c;h=ea739d081e7879b44c4b05c862ad32c301105732;hb=HEAD#l242 I can do this by myself although it would be simpler to have all in one patch. ~Michal From xen-devel-bounces@lists.xenproject.org Thu Jun 22 08:57:21 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 08:57:21 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553416.863951 (Exim 4.92) (envelope-from ) id 1qCG7n-0005q5-Lo; Thu, 22 Jun 2023 08:57:07 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553416.863951; Thu, 22 Jun 2023 08:57:07 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCG7n-0005py-Im; Thu, 22 Jun 2023 08:57:07 +0000 Received: by outflank-mailman (input) for mailman id 553416; Thu, 22 Jun 2023 08:57:06 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCG7m-0005ps-NG for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 08:57:06 +0000 Received: from EUR03-DBA-obe.outbound.protection.outlook.com (mail-dbaeur03on2060d.outbound.protection.outlook.com [2a01:111:f400:fe1a::60d]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id c2cfb697-10da-11ee-b237-6b7b168915f2; Thu, 22 Jun 2023 10:57:05 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by VE1PR04MB7214.eurprd04.prod.outlook.com (2603:10a6:800:1a6::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.24; Thu, 22 Jun 2023 08:57:01 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6521.024; Thu, 22 Jun 2023 08:57:01 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: c2cfb697-10da-11ee-b237-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=NeiV7+awlN7hqUDwDL6k3uzD3b3RvpdBZuJ75/sEimMsEjOM3UDibrZYMQs/d72er0Sx5KS3A6BVLbhy6kLUXOSi5cPuhuqgsf0NJLdKSKvyhjk9+EYIZSJFhtPD+AV51L6FU6k6D4uTYXEKKBJ87BDHsX0/sS+6ItX5Wl3eQb6RCOBWt2A+AoV17qzqJEVFPmBIl8V/ExWQGBojJGP0MNs+ZBhJRokMGOXfjljSVlLhT56tBKrcUr3ydPIde64hO4XHmECWrM5ZivgXlIgLMhC0Z4AqnUHUjd/bm5dwYuoOgtOgtjjQkRuZnwMUS7dQZ0eJHmfTA2bPPROD79zyYQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=tfoinNXLdfvGfuSX4JYQ41+3P9uPb+XyS+vBKZ+ffh4=; b=RdI6c+Q7OXTopeQFZ5EC9CJVbCcfQAfRmbd7lonzqMrw7KjAujsS8xcwAdWlzIhqEAWJrgGw/siEz/tX0eYByz0zu4kljpxF0ECjDrTCVZ8bMjKbcQ8C27FSJLR/Ke1Fy2EvpY+NhEX8jKIkSHVO+0m4lcJoTtv4VtkfgnbRBVYyG7EmKlJmvnY8VD5f+jAmOlx2Nlzaiv3/uKqYEhqqM02PWob6EFT9Nlh+9x6/ib1uSR0VRvITDlfFEKG4t48Ry0JlTGbPd4X+ao8Syi6qy2qpsRCsW78FVeE4SA8sCGVnkAGeP3lmHTQ8/+V7nig6YMhW4GDKOn5wi9gwNGLk9A== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=tfoinNXLdfvGfuSX4JYQ41+3P9uPb+XyS+vBKZ+ffh4=; b=qtZTqvKepXZT3BLQNmSXewrfEhp9n7oNH76l3WX/5pVccfjJNNjgAUEDoFs+OZ83QPuwSv96PV3Ae4GVua1FXgEQVr2V6RoiSz9OvFp1SJFnT3SqgJm/DkTjtifgPBS6WE1xGTKqpiSiQs9I3yqEdCQZTP7IC9GyUI10G/x1pBK8h7XcIQc0N3k3fJRo6jkxBqMUyH8nydCxfUxBaPBYOm5fp/NShA2y+DNm5LUrzIq5Ubtx5TGsg+7RUVz5+MCTFEJyWOGfUOlXUEAr+9+8MI61MP8g1KCGTnbgrQApnyXJHCDf8qs9CJRQETJ7LCUpQ1I1cjVRvYb7gFIvRdt1vA== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: Date: Thu, 22 Jun 2023 10:56:59 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [XEN PATCH v3] xen/include: avoid using a compiler extension for BUILD_BUG_ON_ZERO. Content-Language: en-US To: Nicola Vetrini Cc: sstabellini@kernel.org, michal.orzel@amd.com, xenia.ragiadakou@amd.com, ayan.kumar.halder@amd.com, consulting@bugseng.com, andrew.cooper3@citrix.com, roger.pau@citrix.com, bertrand.marquis@arm.com, julien@xen.org, George Dunlap , Wei Liu , xen-devel@lists.xenproject.org References: From: Jan Beulich In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR2P281CA0165.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:99::7) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|VE1PR04MB7214:EE_ X-MS-Office365-Filtering-Correlation-Id: 01470250-467f-4d88-d739-08db72fea4d3 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 8g7DHBpPnpeNr6TiAA54D3NlOhtRnxCxxP0u+uKcDc8oMXa/5CvJv4OkulcY+E3VyIxLO+vDfqGQwsSldjc+sWNI70TRuyevCriXxLbDgay6Od2CeEjoMUZpSNBZeISsquG8dpov0H/kQNK6yWb+Y1nLN6o5mMCVKTD2Vq+H/G6N11jpPtk+n0AkDUIwpJule1yiv017iV0PKicsa1YrcI3RcU5GGZ1SchcXT0bKbu4yyQkNY556ze1MDS/AQnLbP0EUcqOSV0+MbkBErYZFbiIOQ/9W7OglBBxRtuNk/66dz7um28VxGA14/35Ki4MospVS+lbNKmPgvwYAD6ZZkaM7sM93v4lUqiTcEpx9ikivN8ucbaXlLoJT0jQdrwgJUnBkVbpXWhVRtMNSdFNj0uqyFUzDhCm9BVorkDqt/ZlB7nUETKYRpJ/s/EepIWwdvvUV6GQqVejMS8uBjXvG5LfqqIfL9tFIT9CaOnAH78Xe6qeW8NZeC9oFXPMWHWVKqEaALW+oASDzL+ipayx1dozXuH/aQTLjlpUZAbMtX7o0rvo1kf9g8FmM8FhAUrmSj13LVDMKYqvBLf9TBZeeuHAOODKy47RjPltoNgVDNBerHdDbnp2I7a18a5/AJZhqJubwNN94cxaoWLN3jmGaCQ== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(396003)(39860400002)(346002)(136003)(366004)(376002)(451199021)(31686004)(7416002)(5660300002)(2906002)(6506007)(53546011)(6512007)(8936002)(8676002)(186003)(41300700001)(26005)(2616005)(478600001)(38100700002)(6916009)(66946007)(66556008)(4326008)(66476007)(86362001)(54906003)(36756003)(316002)(6486002)(31696002)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?QjI2NFV3YzhiNG5NSWRGQjM4dUc3UVN6cXRYOW93VDhLNjRHN0NjbjMwcDRJ?= =?utf-8?B?TDlDWm1idUVtaVdjREdJemJYVHg5SnJoYnVGTTVNTURPT1UwaHhlRFpadXZB?= =?utf-8?B?Q0kzZWZWdE0xdHVraXZNU1JxRkFBci96dEpVazZXUUhxT1FPYkxhZlp2emtS?= =?utf-8?B?d1N3MjZteGRjMUJNUEpHWFBOUS9DeEx6MG56bDgvUEZUd2JOSHQrTUt3d2Jp?= =?utf-8?B?eUpWVXllWDZ2NVhNMCtSKzRqa0VCZ3VQVU1UUm8rWXRFRnNsbjViUkdNOWJF?= =?utf-8?B?eXhRaVBmby84RXN1UDlqVVg5V0dpTUt2SEJad3BtRUFSUC9iZ0RITHlyNGps?= =?utf-8?B?S09xTUI1UGNpK1hCRytVZFdsNkVHbm9hM1FyZGpQNnk4S25xRkJSYXM4cUpp?= =?utf-8?B?U2dvWHhWaGpBZXozVkI5OU9pYkdQRjd6R0hDVEowSURNeDkrQVdpcllZd1hx?= =?utf-8?B?aWdNdkp1SWM5RCtnTW5MV1V0QXg1R2ZvZTVrcllXVyt2bDhFNkxtbHNhS1J6?= =?utf-8?B?ZHJxY3EzanY2YWRMNXVYa3lLZ3dPa1ZNL0JnVkV2ZndkYWUveW5JbFh0ZC9C?= =?utf-8?B?dWE2a2QyNGlSQzBtQlBNQWxkMkpKQytsRzBNMzZhWkM4M3QxTmhtNmw2cFRa?= =?utf-8?B?MTNoNG9KZi9pMk1jTlNPYmZyeFNocnVVMWE0MURNUzJSTk84NnNQSG50dHFG?= =?utf-8?B?WmdXNEl5NDhDNjh6VVlRSlA5TFdZNDNIOEVIVHJLY3BpMThPMXEwc3F5UnN2?= =?utf-8?B?eUl5aGFLdVh2T0MwbWQ0ek1laG5GMkNrSGFLWlRQMzlMVEpYSHl4aUNGYW54?= =?utf-8?B?S1NtNVVWakdrTjdjMzhGRzE0aHI5MzNSbXVGUVJrcFZwT2FrWEJqeVVqbmRV?= =?utf-8?B?Z0RpUllaNVA0ZHV6Q05MaE9GdlhCT0pxQUhoZG1DN0dSc1VQM1EyMFdFcUlC?= =?utf-8?B?dmhORktBMTZpVS80OW1XQTUyaTR4eUhVblVKc29ibFVFbmJFbUc0QWhTcW9F?= =?utf-8?B?VjBLRzFIcjVDTDZGNThoUVpsdzlmL2FsZ25URFYxZU1yaFhqYmVWS3BNM1BS?= =?utf-8?B?YVovS3Fha29ZZXNPMkRrd1pGZkZLS1FrZ2pzWldnSEpDb0ZFenlTcDNISWNq?= =?utf-8?B?ZDQwRGRrSktpSFVUSWNQT1cxZGRVdFRHUnpNZXl5cjNud29sK29MRFgzbmNu?= =?utf-8?B?a282eDlHVVdYdXpET0pyUmNZbGtLaUc3ZDljQ1doWitQL1F5QllmNmtTWE1p?= =?utf-8?B?TnRneXpnVFU3T29jZG5lV2tFQkVreEZIak8wc2NOM3FJbUJsaTZZN2xvd1hL?= =?utf-8?B?SlJOL1p0ZzI1TkJTdHpNK1A1YUhCNVRtcDdxK1NUenZXWHBJZTZvWEpzdmc1?= =?utf-8?B?amFHcHRqQlZYNlZRQzFlVmJrREo5Nk85TUxmUXlvdXIzNGVPMUY1cnlkOVZh?= =?utf-8?B?b1gxdnYwM3g0eFZ5eU51YVZDZVg4YURpN1NJTHRZUHQyVFRoNWVpZUEzcmxY?= =?utf-8?B?aHZuWXpLVEdJM1ZUTzBsY1NhMUwxazVPSEhRTGh0QUgyRjF1blhaaU9nY09z?= =?utf-8?B?T3A1OHhSL3RCbk1hS1pORUJWSEk2TWY2TW55d3F5YTBNL2MvbHRHWnordEVE?= =?utf-8?B?Q1lxRkxTbFNqS29mV25WSHpSejF2cFYxZ0xWVTAxbVFTT2YxSjZZbVBraGRz?= =?utf-8?B?OVdhRGwycFVaMDQ2c2VLWUJTalFKQk1KbmhZSjl5cTkvdjkrc3hqb29RWktF?= =?utf-8?B?aFREdjJOZGFubWtSQm9nbGdhTlNWSjBUa0Z3UWQ2L2I2RWQ3YkNZVkt4aEx1?= =?utf-8?B?M1hDSHZhN1IyZlRrbUpPZjB3UWRZUzB0MFRHSFlPb0g5UFdQZFBjd1BXKzN4?= =?utf-8?B?czVZRStuV2F5Z3ZPUmV1bnA1OWIwaldBd1dxVVdEeW51TnZjbGkwSnJNVkNt?= =?utf-8?B?L3ZPMWQwcUVTV3o0NHJ2SjMrR1UxN3dPdmZ2Vmp6azBFRGNDKzVEb3E1S3dG?= =?utf-8?B?S3I0dEVOaTFSQjAwaHpwY1F1a0tCZk5McXVpRlA5WUdDVTRwUTVXbDBseDRa?= =?utf-8?B?Mmg1YjROcCs0Njg4ZjlWeXZ1VmJTK2xYaDluRi8vWi8yYlllT1RvVFd3VGpX?= =?utf-8?Q?2iUXlJAKFRjWyvm86EsaAPPdz?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 01470250-467f-4d88-d739-08db72fea4d3 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 22 Jun 2023 08:57:01.6925 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: /aEA5MJbWlRbkv1eOrwdbTSZpVM7CMYcvIuzJZFlxz24vLdH0OY396mUX22K1n5cb1f06RtVN3pUCC+x+XF/nw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: VE1PR04MB7214 On 22.06.2023 10:24, Nicola Vetrini wrote: > --- a/xen/include/xen/lib.h > +++ b/xen/include/xen/lib.h > @@ -51,9 +51,10 @@ > e.g. in a structure initializer (or where-ever else comma expressions > aren't permitted). */ > #define BUILD_BUG_ON_ZERO(cond) \ > - sizeof(struct { _Static_assert(!(cond), "!(" #cond ")"); }) > + (sizeof(struct { char c; _Static_assert(!(cond), "!(" #cond ")"); }) & 0U) > #else > -#define BUILD_BUG_ON_ZERO(cond) sizeof(struct { int:-!!(cond); }) > +#define BUILD_BUG_ON_ZERO(cond) \ > + (sizeof(struct { unsigned u : (cond) ? -1 : 1; }) & 0U) Given your remark on named bitfields not being allowed to be zero length (which hopefully holds universally, i.e. isn't subject to compiler extensions), how about #define BUILD_BUG_ON_ZERO(cond) (sizeof(struct { int _:!(cond); }) & 0) ? (Implicitly, as said before, I question the value of the U suffixes here. Even better might be to make sure the expression is explicitly not of unsigned type, to avoid surprises if someone used ~BUILD_BUG_ON_ZERO() somewhere.) Jan From xen-devel-bounces@lists.xenproject.org Thu Jun 22 08:59:49 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 08:59:49 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553421.863961 (Exim 4.92) (envelope-from ) id 1qCGAN-0006Pn-2L; Thu, 22 Jun 2023 08:59:47 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553421.863961; Thu, 22 Jun 2023 08:59:47 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCGAM-0006Pg-VP; Thu, 22 Jun 2023 08:59:46 +0000 Received: by outflank-mailman (input) for mailman id 553421; Thu, 22 Jun 2023 08:59:45 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCGAL-0006PY-Ox for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 08:59:45 +0000 Received: from NAM10-MW2-obe.outbound.protection.outlook.com (mail-mw2nam10on20607.outbound.protection.outlook.com [2a01:111:f400:7e89::607]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 20d89b26-10db-11ee-8611-37d641c3527e; Thu, 22 Jun 2023 10:59:43 +0200 (CEST) Received: from SN6PR12MB2621.namprd12.prod.outlook.com (2603:10b6:805:73::15) by DM8PR12MB5480.namprd12.prod.outlook.com (2603:10b6:8:24::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.23; Thu, 22 Jun 2023 08:59:38 +0000 Received: from SN6PR12MB2621.namprd12.prod.outlook.com ([fe80::8018:78f7:1b08:7a54]) by SN6PR12MB2621.namprd12.prod.outlook.com ([fe80::8018:78f7:1b08:7a54%2]) with mapi id 15.20.6521.023; Thu, 22 Jun 2023 08:59:38 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 20d89b26-10db-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=nk7AUtGZXl+CMPZJI4uZ2C6oKNU8D1m7STLrTgv5xU+XV9kgDvcWmmk50gY3PkhIuSf3d7hcpIg5SZhDjkl+TbWPGEie1zxZL0fYnQPl10HGdAQLlv603RvsCXDLORh047nUI5kmQDCjk8rFVT/9Ty+KZ4RnECcSCeQvIpcozXY+ngYZOzI7/HYbbkFhRb4tLPALA3ISzVeBbrlPR0uMgqkbgFvuPGCRqAGCrfZb00dySTH+BupyPGo2C7NQ8cGKXkzdO2xqW7CATf5sgUYWCAm5uYfg+yCCJaxJrDtCmaoneKBYqi/ap9HfH21w/LztGDsfrTbYbcDZuTq+UUebzg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=YuwWAfHePFYTql2VkDF9PJx34FKsMPbER8xsNfTMRLs=; b=aUjXfWlW0mTa4CvPQZo1ArLEvJiTMl8ra19BLI/tP9jFBDeyb4uHdntgaINXE1PQ4k6XoGOgm+PIhBZiMyIEfYPgQeff65ET9vSufznrzNi7PwfvKA2mq6vxPlhBp0blDeiesd/j/gsFs2WAqsJYMbeXWY8l6AO1Y6/sCLV/vKY35T+lA6LBjvEMuYnD4kUQPooV5a1IXWIL6SNBt8qTTeSCAtGxse02ifj3x48UnACH2PpjJdq0xrd+uOPNx14t9TAWduvIpo9/ZbsJ1/OfPMX58dB088QempVq1vYgvftiy7qu3LQXwsU/S7D5TMC6mol/T1AZUeI4LvR2ApnmvQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass header.d=amd.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=YuwWAfHePFYTql2VkDF9PJx34FKsMPbER8xsNfTMRLs=; b=hDBa7kBIfrCX7vFNj13GcMMJ219Md8QSFvX8RulsXum58duQhUMhjyDt4hfidB3fb/fBYKviHv4Wt2Uy82v4OaACJt9xEimikAxH0e5zGIlUzV6NtmwMNvo9VAdsNpiVhrqX5vXnd5B5sqNHXe9Ts7JfHHvp1YS3i6rGDx/0YTI= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=amd.com; Message-ID: Date: Thu, 22 Jun 2023 09:59:32 +0100 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH v1] xen/arm: arm32: Add support to identify the Cortex-R52 processor To: Julien Grall , Ayan Kumar Halder , xen-devel@lists.xenproject.org Cc: sstabellini@kernel.org, stefano.stabellini@amd.com, Volodymyr_Babchuk@epam.com, bertrand.marquis@arm.com References: <20230620151736.3720850-1-ayan.kumar.halder@amd.com> <3b7f584e-700e-4598-f36e-51a96140323e@xen.org> From: Ayan Kumar Halder In-Reply-To: <3b7f584e-700e-4598-f36e-51a96140323e@xen.org> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-ClientProxiedBy: LO2P265CA0237.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:b::33) To SN6PR12MB2621.namprd12.prod.outlook.com (2603:10b6:805:73::15) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SN6PR12MB2621:EE_|DM8PR12MB5480:EE_ X-MS-Office365-Filtering-Correlation-Id: ab10c8f0-dcea-44e9-d9f5-08db72ff022b X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: Jnv4l78oSQ5xe9cZkgZhH61ceniub3p+ws1Unlc581Hdid2iJ4t9FjM79vEeUKSlzk9OPblR3/TMFwnllCSxJvFTRCtmBPZrmee2M5+L1iXyq2owCXgUuKjoOGzWrcTWV13V2zBkydqH4HPs3d6qTJg7dGw51d6fOsU0EYp4NPgK1PQexGIHFbOZj75d0MLoc6Hyo43Zbtm75wEyZRfbBo0ZKDBNwWiiEmJ2/nXL4+/3aKVYAk6HgTerTfhwurnhOPw9CfpCkZ0xGigqn/P0eMs1qavOrDJ1xRx/qHQWwrv6KOH9abOc7WOoVgBZF0UMIx7LKfx2Fz3FxX8Znp2eiuSPM7ZO0McvjqCELgia4yFmQO9ILm2BaDCQgfcUp+LanPF8eYl06G1Nz0ct76pFHE/gQ1VkJr2Q8OSq+AotL62AmYIbebUvfCwqe4XpueaEggr5ctTRIlBG6Vzgu2IkARBl+dpTVJcDjyA7giDPMsfBJVA4r+OC4VqXI5LOqZ4ww0zVOEfQ0VOX+d1aWGzbuKFSYH2l8NPisEPvAVPoZnXhsESAc/WSTKOUhPNTRskEpP/mHI1mS2XyGONglNkX0yGulJFDK/XexiEtLikXN5MttjGXFrOdV9c8q70eDGtpyFT9o6Yx5gkDm2lZCTfkCQ== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SN6PR12MB2621.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(366004)(346002)(376002)(136003)(396003)(39860400002)(451199021)(31686004)(478600001)(6666004)(110136005)(4326008)(83380400001)(31696002)(36756003)(2616005)(38100700002)(2906002)(26005)(186003)(6512007)(6486002)(53546011)(6506007)(8676002)(66946007)(41300700001)(8936002)(66556008)(66476007)(316002)(5660300002)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?SFRUODNYMzZXMkh1d1pqUklJNHRFK0dzQkZyd0FWaGZ4Rmp3UzdsVngxUUpV?= =?utf-8?B?V1J6REgzcFRpYVpjMUVwRUJZcFZNU1JtZ2Y5YVBQNlNXWmxRb2tLdUtsbjBK?= =?utf-8?B?RWVZZjBndmN1MVRBNE9WQ0FMOTh6cjhJMXJuRFBsR2tkNWdYTVNPTGlRRU9D?= =?utf-8?B?dVZNbTlzRDBBOTJBRWVYRVpmVXNPdUFYRjJ5Z3J0cTRERDN5L09tVWptalQ5?= =?utf-8?B?Z3V0WndzZ21Xc1VsSVFPMXUvU2lwVHNtVUswcnF1VEh4N1VOdlk4Zk1oTmFU?= =?utf-8?B?NWFHZmowbVpEaUZ4bUdDT25SY1huVU9CTkZGcklHaGwydDRCajJFdGlpdkQw?= =?utf-8?B?c25NR1ZmTGhnejBwNVFlVmZSRUV2WDFhTmpHdHhaOEJaZXpkK0RCSnFIL3R2?= =?utf-8?B?RVBTZ0xibEx2ZWQ5Rk1RbEFObUcvWGhMNXY5R0hkbFlKVFFCUXIwRUlSRkVr?= =?utf-8?B?ZjFXZWw3RUtnYzNDUTc2YkM0eTlaaHZlc1FJZXJ1V0FmMENESVFPd2F6cVNl?= =?utf-8?B?K2VnekZIYzRmaTNWdkZpR1Z1RWlsNUhSSko5ZVJhdHVEbGQrQzVGWkEwN3pq?= =?utf-8?B?OFlpdFo2dUJaczF5eUl1MGFHOVlLUUprdTVZeGdFQ2xOY3NucHIvVEVubENX?= =?utf-8?B?VUxzcTlKVkh3QjNtZTNpY0tjb04waEcvNjJmQ0NsUk1OdXM3c29HVmFvK0Nu?= =?utf-8?B?K091WEFYWnhhdFoxNzltVTJHRGZNTkp6TjRsaFpTeFZxVS9SSmNOaEVlM2Zu?= =?utf-8?B?SFY2cTM4VWQvNjRJSUk3L2Z6d1RUMVBWZFRqa2RVb1RzNjhvL0dSaUJCY0Y0?= =?utf-8?B?Qk11Q1l4Uk5XaHZua0loTm0wSlBlcVAvMlUvaTFITitrM2YzanJsWGwrUENW?= =?utf-8?B?T0FNSElRRFNUZm9WSWp0dnV0emN2TkhFTmN5RFhUSzZJb3dyL0Nrd0hMR0g5?= =?utf-8?B?NmZBcDBQK1dZenNCUnBRWHZPc0grNGJVdnI5TE8ydWc3S1d2dGJUK0NaR0lr?= =?utf-8?B?bGxjZzdmblVMZEE3UlFacU9aQ1BLaWpjaEQyMjN1WU5wTHFoNFNUeTRJQVl0?= =?utf-8?B?bDRWM1YvR1h3U2d6a1UweE5YUW1QZnpFVzAwNFNCcWlRSDE3NEhJUDlTWUNR?= =?utf-8?B?YlZUaHNhYVpmdER0NldVU2F2cUtGVFpVSGUrc29ISE5EUHptaDRPNUFsdzRl?= =?utf-8?B?Tm9YelkvVGVUck5aMXpmdm5KcndiT1VKU3loZStTL0doL3dBTGZUdlhqaGQ4?= =?utf-8?B?aEFlVm9JYll5d2E1azFkZHg4VUZmM2VwRHRMelQrR094RHkxNHRtaVo3NnhU?= =?utf-8?B?NHAyTk1KQjlYQXhVay8xNkxnTjI5eG5XNitRODdCcEVOTm1MVElYTXpHWjhL?= =?utf-8?B?UzZvZ2RmbVJGb2dZRnU5M3kwZmtWR3poenNjcU5lZU95K1k5MFF3Y3VMdXA2?= =?utf-8?B?Y1pFZFVxYUlmcHBFcXBDUUxENDFlQ1ZkZlZtS0JCamUzR3pQOHhXRHVEY1Zn?= =?utf-8?B?RnVEMC9Ic3hrUmNEL09zTi9FVHIrcVE4MkJEMFFyU25XcEtVRlliTlhsS1FK?= =?utf-8?B?UzZFTW5RUXB1VWxFSkRSY2IycWZIQWVlb2poUTRJbEl0SVpibjJBZUxsNzZl?= =?utf-8?B?MnNsNFFDcmUxdkhKRXI4RVZtQ0dNNGxIc0UwV1JVZnBFTUJ5N1ludFEyNHlY?= =?utf-8?B?Tkp2Nlk5eE1jMlg0QnY5OEEvMmp0NDBnQlNFRk4rYzJIa2hyOXFVTE81Mm9O?= =?utf-8?B?RVQ0SlpJODdHVHpObDAvNDl6S3cvOFJoSXRmQ2VLZUVPcDlMeUNYNHRMajlH?= =?utf-8?B?eElVakdNeXBzYXNJTEFJS1ZpbXNPbmxoZEp2Ui9wRlk2Ty9helBaZ09aRUJv?= =?utf-8?B?S0I3UlZYL1dUNlhiUXRNYTd4Uk01MkhZYzFvc3Mza0F1Ni8zZHptSFZsU3hI?= =?utf-8?B?cVVoZEU2NGZhZHNJNk1uLzBKQXN5K3RJVGlZaG9YWTNabTNSTWxwSXEreEtu?= =?utf-8?B?Zzg1bDBITGNtNnF1Um1VRXhrZVAyWnRNL3doOEg4K0ZyYk5XaStlM2d2NUVl?= =?utf-8?B?R0R3VTk1WnQwU3dub0ozM2hYZ1lWbHRPaWtlVG0xZm13ZENuZFRTUURiUlh3?= =?utf-8?Q?PnVBo5hJiAa4hzNTOchbKB7fb?= X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-Network-Message-Id: ab10c8f0-dcea-44e9-d9f5-08db72ff022b X-MS-Exchange-CrossTenant-AuthSource: SN6PR12MB2621.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 22 Jun 2023 08:59:38.3863 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: q/twi87nVl8w5g/R2x88zn8gNbt8IakKxAC6Weh9HGmeeNIvdrCBrCArCiJ24Jh/xMkTH4BoARN1GzkbgHbbkQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM8PR12MB5480 On 20/06/2023 21:43, Julien Grall wrote: > Hi Ayan, Hi Julien, > > On 20/06/2023 19:28, Ayan Kumar Halder wrote: >> >> On 20/06/2023 17:41, Julien Grall wrote: >>> Hi, >> Hi Julien, >>> >>> On 20/06/2023 16:17, Ayan Kumar Halder wrote: >>>> Add a special configuration (CONFIG_AARCH32_V8R) to setup the >>>> Cortex-R52 >>>> specifics. >>>> >>>> Cortex-R52 is an Arm-V8R AArch32 processor. >>>> >>>> Refer ARM DDI 0487I.a ID081822, G8-9647, G8.2.112 MIDR, >>>> bits[31:24] = 0x41 , Arm Ltd >>>> bits[23:20] = Implementation defined >>>> bits[19:16] = 0xf , Arch features are individually identified >>>> bits[15:4] = Implementation defined >>>> bits[3:0] = Implementation defined >>>> >>>> Thus, the processor id is 0x410f0000 and the processor id mask is >>>> 0xff0f0000 >>>> >>>> Also, there is no special initialization required for R52. >>> >>> Are you saying that Xen upstream + this patch will boot on Cortex-R52? >> >> This patch will help for earlyboot of Xen. With this patch, >> cpu_init() will work on Cortex-R52. >> >> There will be changes required for the MPU configuration, but that >> will be sent after Penny's patch serie "[PATCH v2 00/41] xen/arm: Add >> Armv8-R64 MPU support to Xen - Part#1" is upstreamed. >> >> My aim is to extract the non-dependent changes and send them for review. > > I can review the patch. But I am not willing to merge it as it gives > the false impression that Xen would boot on Cortex-R52. > > In fact, I think this patch should only be merged once we have all the > MPU merged. > > IMHO, patches are independent are rework (e.g. code split...) that > would help the MPU. Yes, that's exactly what I intend to do. I will send out the patches (similar to this) which will not be impacted by the MPU changes. So, that both as an author/reviewer, it helps to restrict MPU serie to only MPU specific changes. Can you suggest some change to the commit message, so that we can commit it (without giving any false impression that Xen boots on Cortex-R52) ? May be adding this line to the commit message helps ? "However, Xen does not fully boot on Cortex-R52 as it requires MPU support which is under review. Once Xen is supported on Cortex-R52, SUPPORT.md will be amended to reflect it." - Ayan > > Cheers, > From xen-devel-bounces@lists.xenproject.org Thu Jun 22 09:15:46 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 09:15:46 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553428.863970 (Exim 4.92) (envelope-from ) id 1qCGPZ-0000Vm-FB; Thu, 22 Jun 2023 09:15:29 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553428.863970; Thu, 22 Jun 2023 09:15:29 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCGPZ-0000Vf-Cb; Thu, 22 Jun 2023 09:15:29 +0000 Received: by outflank-mailman (input) for mailman id 553428; Thu, 22 Jun 2023 09:15:28 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCGPY-0000VV-9y for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 09:15:28 +0000 Received: from EUR05-VI1-obe.outbound.protection.outlook.com (mail-vi1eur05on2062c.outbound.protection.outlook.com [2a01:111:f400:7d00::62c]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 52a0347e-10dd-11ee-8611-37d641c3527e; Thu, 22 Jun 2023 11:15:26 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by AS8PR04MB8770.eurprd04.prod.outlook.com (2603:10a6:20b:42d::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.24; Thu, 22 Jun 2023 09:15:20 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6521.024; Thu, 22 Jun 2023 09:15:20 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 52a0347e-10dd-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=HmPQ7/JcanUPzVm2+BZNtSZYcCq2zrj+eYpy6hiGlPJcSHkDwztva4Z9IJW4ya66CNGNFQxE9zJIVC+ijuuJD2RmIV2CsTYPXirXvJvlA37KpdYHaGqMZAx+CKUzMzS/t3Rg2aWZet0y6YRVh5LCCMJ1t9W+q719QLPR7y42g+6AoxOrk8td+MOvMVUVGZJeE76h2f781XMBoJtXkxpTmrNsOpxrRRMSbB2KsGhIPDzrXwxXZhD+FhUiLkj8yMef/b94ddIGyaB17ytlpucGglmflB08t5zj23tAmQc9kE3ylYxAnIFE8ijftqYX4xnaxhlQD7CyamoB7Dmy8bJplQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=CMl68EtgETa3xL4v+g74W+ZbCX557QpXLqKZGx9XphY=; b=MhxRzEsc6Tb19NR6JqKTKpYcvwXWCLdNwoyO/mV2dYDQjVy/n37hsES9w1JASpTwcafa8Zhp4KSJcdkDag4IGx9wwg08ANlGaEn7G6pDO4AeA5ug2ZYEv6+WV0J149S8PKJEkaWhZy1XOEn5UJ7KpluFXY+fulOs4gaeCek/P7h8cFo8ZWWLqDl94leZ4eZdZDnoYXPteHJ35ZV84F4rVLMyEg5gTBgHbk9+fzlis+irhroUAu29xhCzoCYWiUxmlcrG1GBpKUtHDEdgBuNgGVWV2PoZ77p4mYUt1VqtjA8N2avcAsm4Zh8MKO7Lxj7FLR0c4uv7pvwnaddCs2rGiQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=CMl68EtgETa3xL4v+g74W+ZbCX557QpXLqKZGx9XphY=; b=theBedXXpTRkmHyttxJhOk7smfj/uv/CYXJgMZECe0wVlrPstpq0JMm6UsG/r5VIb/fY41C3PdZI2nzZekI+xM3NRtPhYbRiVLPn7cwutiULABVUVHdjbTK5+kh0WBU8PWR/gQHxt9oDZTH1G5kp1agaffjtw0VId72FSBi5H1knCfxyN8YUx/MWZA2PrEZe6V9syEvP3mf3012b0xrJ54AgPGXL9tlEMKixN5vHHnGSfPLSfDoHLrBBfzGcbUW6bChR8pC5o9stE0NM/YAIBNW3VuylYaZhoymchKtqqcECdvUgl/hVPkClSVv5xnvF/x2OkRYmfva+HEuO4AuIlw== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <692b3db7-dfe8-8ed7-71e5-b29dcbba7f1c@suse.com> Date: Thu, 22 Jun 2023 11:15:17 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH] mm/pdx: Add comments throughout the codebase for pdx Content-Language: en-US To: Alejandro Vallejo Cc: Andrew Cooper , George Dunlap , Julien Grall , Stefano Stabellini , Wei Liu , Xen-devel References: <20230615162741.2008-1-alejandro.vallejo@cloud.com> <984e13ef-a73e-126c-0bf8-58bee9beb7b2@suse.com> <64930879.1c0a0220.28719.ce38@mx.google.com> From: Jan Beulich In-Reply-To: <64930879.1c0a0220.28719.ce38@mx.google.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR0P281CA0145.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:96::18) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|AS8PR04MB8770:EE_ X-MS-Office365-Filtering-Correlation-Id: bb638621-c081-4af5-1029-08db7301338b X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: lCrQsdTnnOnFvJXCIhKyDOU2fSm6icYADc8ftXANy/9D8kxoK6fwTBx6ub3SHDbPmswXKP6bFe0z7q4++wMrAXH6+O4CrSFIxvt8cLtwewe+iN46i0VemIYOhTg6RqjS9g4ccaALmvcu1Jc3yct+tDqzgl/HD4FtYEbwCSNdmU5cvlTjZx3S6u/QUrGMAG5Zj3Lh0N/uCAune06FHefxwMkkCFDaRMoHLdXVN7go3ZsbbI3hF7RZ9lb7Aeii5ZQjR5L/TnosOP1uSV3/BY7gkkjtY54E+2RA2RG4MynhAuleUglH1l71NEIjayKhTGOcDpK8QXfozz8bBUaW+MwcWFIV7FXEiiIU+AC4PVyEF3lcNt2g5EQhE5Qnrwg7aMNPi0RGpPsZsTAs/hZzPdPVZsXl6U3dCAzwmXv1Id8XfxXCOM4717safagj63ujIJG6NVb+ngTFJSxK+1VVMRYs1gorQtbF7cUms5sVJbgw6oc+j3Rx0czGMn8j4amojBHjhbs5l7kaPhqVlizi3BqL1df/4+5DhKNZhM/MHi5eMgtX4q4vBZzCXlh3aVNG0Aomp/ayVIs5Z+RJ8ojbxODTCCNC/fs3EdJmc0kxNpd1qm8pvjAUnmxeGh0bnDDrQ3+XfcC7bBL/kTIQe2wAcgiO3g== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(396003)(39860400002)(376002)(136003)(366004)(346002)(451199021)(31686004)(6486002)(6666004)(54906003)(478600001)(83380400001)(2616005)(86362001)(31696002)(53546011)(2906002)(26005)(186003)(6506007)(6512007)(36756003)(6916009)(4326008)(66556008)(66476007)(66946007)(8936002)(38100700002)(316002)(41300700001)(8676002)(5660300002)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?QTdZRXVEQldvVHI5NmQzd0M0WkNmY0dxYTl6NUU0UXJ6SVhFTTRRZlh6bmt2?= =?utf-8?B?L3NZWjdjMWRzNzl4ZmpwQ0ZVRGpQT1ZhdDNRVDNZbU43UVVwMS9WYksvUy95?= =?utf-8?B?dzhvWTNwbWc4YVMrVTZadStHQ0x3ZHNBY3JPeUZmY2QwQlg1b0hwOVQ3QjFG?= =?utf-8?B?ME1GYWxuWWRuakZadlR0MXJ5SjNYRC9JaytLR1YvTjluejlPRHl4M0hrb1BK?= =?utf-8?B?aC9EQ2xtbWdIVjVNQWg1TzNuOEkyUUM5Z0VmSHdFMDZRRXdNaFdibC83ZlFs?= =?utf-8?B?dTdIWUxIZ0YwNDB4YVphUkpaOEZwS09MYVVOTWJUK0FXNW8rOHI0M2RmaHVI?= =?utf-8?B?RmEvRGgrdlBlSDErRnhMSnh4RWFueDJxOHVyOE5Eb3JTWWpIMCtIeG05QUNV?= =?utf-8?B?KzVtbVJsellmRGRXMnNmOHhhbU1kSUp5WGFXanAxZUluSlExa0tsTklUSkFD?= =?utf-8?B?bnBlVUgxa1JleGJJTUJ5LzQzbGhHV1FOc0JhWmVYOENUZkZrd0VnQ01zM3JY?= =?utf-8?B?WkRxR0liU3hLV254VUJheXFWNlIrN0dYQkFsY0JMdEhuZmZ2c3dMVm8waEtS?= =?utf-8?B?cmhjcHlPVUhCdmltcUs2dmMvS213RjhWeEZPZFlNRlQ3eWFTdlQveHRjQjR3?= =?utf-8?B?Uzl5UHNBYW9KQWZ2dzA1UEpaakdyS08yQ2tlbzFyNm5pVU5VbVF3OS9Wa3gr?= =?utf-8?B?eHlCSXg4UVhhbk9ubkk1LzhudTMxS21FQmNJWngwUThWQnpNVmVlQzFJRDJ0?= =?utf-8?B?Q04xY1R5TEk4ZExubSsrTHJHRW5mdUZjTnk5aVBoZE55QnQzT2w3dStzdGlB?= =?utf-8?B?QjkyWEZRaWFYQUxoWlFLZkh3VjJCditkUlpGS2ZOUUV4aXJLSGcrdlBGRGs1?= =?utf-8?B?SHpHeGNnby9TNy85dG9LUFlvUDhYMVlNZVZCL25rZUFZWHJYOXdPVkNyeG5I?= =?utf-8?B?MEh4ZHhjWDVtS2hWTFgwK1k2ajlVVGppS3RZLzVrWDVxSEU2SGNFWU5oSnJC?= =?utf-8?B?ZnlmSHpvaGtSYkFGVDhNekFRM1FRM0V3NlRiSVRGR2VJL0kvWEkySmtVZmw3?= =?utf-8?B?dlAzbW1tampidUNmUjFnb3NsWTFucmV3R0pyTTlPOE91SEtrMEZnWlppbURK?= =?utf-8?B?TW1WVFYvdXQ5bU5OSjdpWDAxN3h4V1RVUjJVTGRvTFlrb2dueVFqeGpHbW14?= =?utf-8?B?QlQyZGxjZ2tMNlp3QkNjR1FqSkd2ZW5UenQrYVE5KzFPUTQ5Vkx6c0FuTEdr?= =?utf-8?B?WE1qWGpFTzBHOWVoS01tWkVrUDh1QXNNUDI1NWhaTHBwRkFaZGE0d0ZtblF5?= =?utf-8?B?engzOVFMVWlJR3Rib2JGUENGTWdINWxkQjBOYlU2aUZoZTY4dDhTY3I5TkR0?= =?utf-8?B?YmpvRy9QajBUUVVQQzUyRCtMdWp3QVM3cXhLb01iRXdUUGRxenBpUjFKdGkr?= =?utf-8?B?R1kzL1UxdFRCck0rNHV2SEpycHBsemk3eXR6QWttYVM4dCsxK2wyN1Bnd2Vq?= =?utf-8?B?ZkhTS1VnUWdkRXhkU2tEVVhEalBJRlJQZmQvVGdiUHpIYzNLZktLQ3ZrMEZW?= =?utf-8?B?b21BbXRkOWlMTlVETGxuTE1ocUZxL0FBdi9pMTNwVVNCT1liblAzcU1ueTlC?= =?utf-8?B?eXd3azFnbmdzdWNnME52WjRzcnNTQzlKRzhldnZGYllmWEROOVdFVDVMNlNU?= =?utf-8?B?RzgzOGZzaFNEcEhQMFphREllQjdtWFZyanhJbG1nMG9nU1BURkZHamlIL1BD?= =?utf-8?B?ZVFQeTkwUXZMQmNlMkFJblNPRm1UM2YzUFQ2MnE3SzlHWUY1M1M5Z2ZrR01Y?= =?utf-8?B?dVRKWjE1d0NxaXhmWi95UTVGOU0vd0FhRlg4VUp0aCtOUnE5MCtFK1ZnVUhE?= =?utf-8?B?ODh4b2ZEelhKcXFXalpZRGNDMUZLWUI0WEpuWnIyaGZhTzFydXRQZzNiaWU2?= =?utf-8?B?K2FIbUcwdTlkRDVTRnB4eVJpTnJvVTVlRFBlaTZ4eDJ0VmVFMDh3aTJoOFFa?= =?utf-8?B?WURYa1hHTnUwMGdmYzRMbWJvTkZlVmlPN3NJWVdudXdQY0NUOXVxeTVXNVg1?= =?utf-8?B?ajhiWmtSbmpiQVRYRGVGb0tpNU0ySFVvVWxBRWw3M0VVUDRQdTNvaXI3WUZs?= =?utf-8?Q?Betf4eOTXgpI0Hd26m5DHHcw2?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: bb638621-c081-4af5-1029-08db7301338b X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 22 Jun 2023 09:15:20.1163 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: I6UWvY2PqAJvQr4H9cznS3P6kjQBmk0lYOnAmrdtddTKrT+geFECpKn/B12NFTHqn9OK0Lxo5Qc08XwJipIoOA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB8770 On 21.06.2023 16:25, Alejandro Vallejo wrote: > On Mon, Jun 19, 2023 at 05:30:20PM +0200, Jan Beulich wrote: >>> @@ -57,9 +99,25 @@ uint64_t __init pdx_init_mask(uint64_t base_addr) >>> (uint64_t)1 << (MAX_ORDER + PAGE_SHIFT)) - 1); >>> } >>> >>> -u64 __init pdx_region_mask(u64 base, u64 len) >>> +uint64_t __init pdx_region_mask(uint64_t base, uint64_t len) >>> { >>> - return fill_mask(base ^ (base + len - 1)); >>> + uint64_t last = base + len - 1; >>> + /* >>> + * The only bit that matters in base^last is the MSB. There are 2 cases. >>> + * >>> + * case msb(base) < msb(last): >>> + * then fill_mask(base^last) == fill_mask(last). This is non >>> + * compressible. >>> + * case msb(base) == msb(last): >>> + * This means that there _may_ be a sequence of compressible zeroes >>> + * for all addresses between `base` and `last` iff `base` has enough >>> + * trailing zeroes. That is, it's compressible when >>> + * fill_mask(base^last) < fill_mask(last) >>> + * >>> + * The resulting mask is effectively the moving bits between `base` and >>> + * `last` >>> + */ >>> + return fill_mask(base ^ last); >>> } >> >> I don't see a need for you to actually change the code here. You can >> as well introduce "last" as shorthand just for the comment. > I thought as you did initially and wrote it as such. In the end it felt > wrong to have an explanation in terms of a token not present in the code. > Furthermore, explaining what the shorthand is in the comment takes more > space than introducing `last` in the code itself. > > ``` > uint64_t last = base + len - 1; > /* > * The only bit that matters in base^last is the MSB. There are 2 cases. > ``` > vs > ``` > /* > * Let `last = base + len -1` out of convenience. > * The only bit that matters in base^last is the MSB. There are 2 cases. > ``` > > TL;DR: I didn't factor out `last` due to aesthetics (I'd rather not touch > the code in this patch, in fact), but it seems warranted in order to reduce > the impedance mismatch between this big-ish comment and the call it > describes. I'll post v2 without that adjustment in case I managed to > convince you. Otherwise feel free to adjust it on commit. > >> What I dislike in your way of putting it is the use of fill_mask(last) when >> such a call never occurs in code. Starting from the first sentence, >> can't you explain things just in terms of said MSB > I see. I can refer to the MSBs instead. Works equally well. > > e.g: > fill_mask(base^last) == fill_mask(last) > | > V > msb(fill_mask(base^last)) == msb(last) > >> (where the two cases are "set" and "clear")? > I'm not sure I understand what you mean here. Hmm, yes, I think I was getting confused here. >>> --- a/xen/include/xen/mm.h >>> +++ b/xen/include/xen/mm.h >>> @@ -31,6 +31,22 @@ >>> * (i.e. all devices assigned to) a guest share a single DMA address space >>> * and, by default, Xen will ensure dfn == pfn. >>> * >>> + * pdx: Page InDeX >>> + * Indices into the frame table holding the per-page's book-keeping >>> + * metadata. A compression scheme is used and there's a non-identity >>> + * mapping between valid(mfn) <-> valid(pdx) See the comments in pdx.c >>> + * for an in-depth explanation of that mapping. >> >> The mapping may very well be (and on x86 typically is) an identity >> one. IOW you want to describe not only the compression case, but also >> the "no compression possible" one. > Point taken. I'll rephrase it slightly as "possibly non-identity" and > explicitly state the "no compression is possible" case. > >> >> PDXes also aren't just indexes to the frame table, but also to the >> direct mapping. > I had something to that effect earlier on, but I removed it because it > doesn't seem to be the case on ARM. There's a directmap_base_pdx global > that states the first pdx to be mapped on the directmap. Which would merely make it a biased index. I very much hope they eliminate holes (and not just unused leading space) from the directmap as well. >>> + * ## PDX compression >>> + * >>> + * This is a technique to avoid wasting memory on machines known to have >>> + * split their machine address space in two big discontinuous and highly >>> + * disjoint chunks. >> >> Why two? There can be any number, and in fact on the system I originally >> had data from for reference (when first writing this code) iirc there >> were 8 nodes, each with a chunk of memory far away from the other chunks. >> The compression scheme used merely requires that some "inner" bits are >> unused (always zero) in all of those ranges. > Well, our implementation only supports two and I didn't see any obvious > hints about intending to increasing that number. Where are you taking that "supports two" from? When I first wrote this code, it was tested against a system with 8 (maybe it was 4, but certainly more than 2) discontiguous regions (not counting the hole below 4G). > I see where you're coming > from, though. I can make it more general so it's not outdated if the > pfn_to_pdx()/pdx_to_pfn() pair ever increases in scope to do several holes. > > Out of curiosity (and for posterity's sake), what was/is that system? I'm not sure I'm permitted to mention that. I'm pretty sure I carefully avoided mentioning the partner of ours back at the time. Jan From xen-devel-bounces@lists.xenproject.org Thu Jun 22 09:18:07 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 09:18:07 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553433.863980 (Exim 4.92) (envelope-from ) id 1qCGS5-00014W-SE; Thu, 22 Jun 2023 09:18:05 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553433.863980; Thu, 22 Jun 2023 09:18:05 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCGS5-00014P-PR; Thu, 22 Jun 2023 09:18:05 +0000 Received: by outflank-mailman (input) for mailman id 553433; Thu, 22 Jun 2023 09:18:04 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCGS3-00014H-Sg for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 09:18:04 +0000 Received: from EUR03-AM7-obe.outbound.protection.outlook.com (mail-am7eur03on20616.outbound.protection.outlook.com [2a01:111:f400:7eaf::616]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id af62d2d2-10dd-11ee-b237-6b7b168915f2; Thu, 22 Jun 2023 11:18:01 +0200 (CEST) Received: from DB7PR05CA0002.eurprd05.prod.outlook.com (2603:10a6:10:36::15) by PAWPR08MB9446.eurprd08.prod.outlook.com (2603:10a6:102:2e9::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.24; Thu, 22 Jun 2023 09:17:58 +0000 Received: from DBAEUR03FT022.eop-EUR03.prod.protection.outlook.com (2603:10a6:10:36:cafe::f2) by DB7PR05CA0002.outlook.office365.com (2603:10a6:10:36::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.24 via Frontend Transport; Thu, 22 Jun 2023 09:17:58 +0000 Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by DBAEUR03FT022.mail.protection.outlook.com (100.127.142.217) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.24 via Frontend Transport; Thu, 22 Jun 2023 09:17:58 +0000 Received: ("Tessian outbound d6c4ee3ba1eb:v142"); Thu, 22 Jun 2023 09:17:58 +0000 Received: from 3b1aea8a76f3.2 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 0E064935-82E3-45D8-B909-8B2ECA36F69F.1; Thu, 22 Jun 2023 09:17:47 +0000 Received: from EUR05-AM6-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 3b1aea8a76f3.2 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Thu, 22 Jun 2023 09:17:47 +0000 Received: from AM6PR08MB3749.eurprd08.prod.outlook.com (2603:10a6:20b:8f::22) by GV1PR08MB8034.eurprd08.prod.outlook.com (2603:10a6:150:99::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.23; Thu, 22 Jun 2023 09:17:45 +0000 Received: from AM6PR08MB3749.eurprd08.prod.outlook.com ([fe80::ed0b:5730:a1f9:577b]) by AM6PR08MB3749.eurprd08.prod.outlook.com ([fe80::ed0b:5730:a1f9:577b%5]) with mapi id 15.20.6521.023; Thu, 22 Jun 2023 09:17:44 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: af62d2d2-10dd-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=/iT1jjAVEfiGGvuLWwsW5PaSGT0h978FR69VclyTx2M=; b=248kiIWuecfA67wSRW28vdAcmFrj3dplEdRdCur6LIvewurtzxaEwNyzKXI7g4chdl+AFJQgWMmj4Sar+IM4oVNYBK4XR3C57LLk/2+qJL3biu4wQ2AJ9m+BI7ycTq0nyLM0p0xVAL2xrtJ1nalySI/U5Bbj2X3QgROGCUIpSCc= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C X-CheckRecipientChecked: true X-CR-MTA-CID: fe95980b2c41118e X-CR-MTA-TID: 64aa7808 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=HRghKWFtQj2n1ms8KvXMpcwaCyx+3Jw4J0i5o1c9bAfg0vbd6V4OcWd7OvXm0d8pUElkWIHGCaMsgbvQTiSZACbhNYPimQFvtt1on1BX2h095lYk2Z7+6XC5/TN9P25Gm5zYQusgvRXMgPvRaRa+BvmS81XsMxovbfULrtwtTa+V1z0wpZCLjgkCSEDX1/vwvt0QstncapN2UgbeVPCdQJ+u/DfLCF6bE8jAf2Nte7ToVtHmYnreDLGXLJDhyp8BSToq1g51aavIY2eQH6NDiBEJEH4EcVycqnozAURRUw6OFjWUROeqcmxMORFtciKJqfx9J3SCMcpS7CsPdhyRXg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=/iT1jjAVEfiGGvuLWwsW5PaSGT0h978FR69VclyTx2M=; b=SK4zY7w13TSAopSngHt0piy5Y9bDdnMrQCLyawm386UExDd1UeAioTDrFqI1/IwDWPPBENR9bXQc3Z5v9RE5I80fhN37+oykVxvOZhTYc+KxQmwUtki/b/9GB9TGTDfWUkYJQOsfCwoTJPdm3i8hH/EkgbllAValmPLtSGpvIyYwoY6DIU0MKq/T7VpmCg2MMqi0o/98yrtGG+jv/e/LjOP5l1u1E22eMnexdzZoO58VxBZeRM25JSuooCqPOX37VrNBVJuhO0OREquHwG9cwxrXzJceBL+5ZwHrmqqfLu22scwnJk4FFPrxku4ZrXXey591F3rHMwOvC8qrU+3twg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=/iT1jjAVEfiGGvuLWwsW5PaSGT0h978FR69VclyTx2M=; b=248kiIWuecfA67wSRW28vdAcmFrj3dplEdRdCur6LIvewurtzxaEwNyzKXI7g4chdl+AFJQgWMmj4Sar+IM4oVNYBK4XR3C57LLk/2+qJL3biu4wQ2AJ9m+BI7ycTq0nyLM0p0xVAL2xrtJ1nalySI/U5Bbj2X3QgROGCUIpSCc= From: Luca Fancellu To: Xen-devel CC: Bertrand Marquis , Wei Chen , Wei Liu , Anthony PERARD , =?utf-8?B?TWFyZWsgTWFyY3p5a293c2tpLUfDs3JlY2tp?= , Andrew Cooper Subject: Re: [PATCH 1/2] tools: Fix ifdef for aarch64 that should include also arm Thread-Topic: [PATCH 1/2] tools: Fix ifdef for aarch64 that should include also arm Thread-Index: AQHZmhGAbKd3CRm5gUS5RUtvHum0Za+WoJ4A Date: Thu, 22 Jun 2023 09:17:44 +0000 Message-ID: References: <20230608135913.560413-1-luca.fancellu@arm.com> In-Reply-To: <20230608135913.560413-1-luca.fancellu@arm.com> Accept-Language: en-GB, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-mailer: Apple Mail (2.3731.600.7) Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-traffictypediagnostic: AM6PR08MB3749:EE_|GV1PR08MB8034:EE_|DBAEUR03FT022:EE_|PAWPR08MB9446:EE_ X-MS-Office365-Filtering-Correlation-Id: b7a2edf0-34cc-4c77-c7e5-08db73019217 x-checkrecipientrouted: true nodisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: PVxrdQWQjjUhVeAEYWxhw84nbt7if+ThCQW45WRYWoGv9xYsVGdeI87TbffUYifZEavPpvsP14qKRo1v4KQClmQoOXEQ9yW0w9RJKMkudWuKwbRgU0+2UdAeiZtU8EOSfWZUQycUjxHf47eqpd/7WZJIZyawsbnIqVM4nX1vb6E/N9ySqfxWiC2nYejZN7ef3KaKTT82hNP3V5QDfRa1CP4/WfoWjhaHk45+K3W/UTJ3nWajfwJ7vMPXE04s4ErGACChqRVIC/8+Nuz/lFO01TCJ05zWZj6ZfhdPa24m4EkJAjpMhgqyF2gQ8OP1UhLzEU2B67ldnybZyDfFTC2mN8+VLDPyOs/BfMNQ+1Yx5jsB8ggY2z5BNZjEvRQ9CT0Nm9IFCc28bQyCBp56bj4sXM7FJEoeTpBYcXcpf64vxPGgo2+0HrT+LcZ8QKx2VXRLRuQ3gceVLxCE3MF1tNZUxhGuB4/V9SPuWDqTETMLYB/33eFf5LFJEG38pq0FIza5sAPT8RAIRc0djM7tHzaTdDccfPsPXHVyUC1EEJilIoKXQqtXhhNNytERshNCc7rB7TEJF3hz8w/qsi1X0lal9hwCjYHsH4Cqiyna472WnyAx4ADZz1ZGU6C9+yYQdt5mgAC/g3bidVoqCmrthpRQdA== X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM6PR08MB3749.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(346002)(376002)(396003)(136003)(39860400002)(366004)(451199021)(38100700002)(122000001)(2906002)(38070700005)(83380400001)(36756003)(33656002)(86362001)(6506007)(53546011)(2616005)(6512007)(26005)(186003)(71200400001)(54906003)(6486002)(478600001)(64756008)(91956017)(66446008)(66946007)(66556008)(66476007)(76116006)(41300700001)(8676002)(316002)(6916009)(5660300002)(4326008)(8936002)(45980500001);DIR:OUT;SFP:1101; Content-Type: text/plain; charset="utf-8" Content-ID: <1F69F87585D1204B974A06019C18F34F@eurprd08.prod.outlook.com> Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: GV1PR08MB8034 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: DBAEUR03FT022.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: 9534cfd4-b594-4bd9-a773-08db730189cc X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: B0+vP5DAI2nslQk0ub8jLR5pWn69o60CqapQcNlrWoChTZxg5T2Fb6ri3ZrFZkeofg+//2xIe3/We+i204i03HfTH/QbpEmWgzRp5dLzDjuPgqfi5BhWhil1zKrYLBReQV+awHHmyDSynSUCbGyETxDOBgdv59rkQ9RqhGXFtAsooG/0/9cwPzmcZtQfUVRDxSykMY9esq2evLtwk4u7tGEHTa378mz7fbHR6ci+gDBKjE9e1kkoqrcKJaQWm9xQra4irV/lIn9tQDFIf4qo4q2pkh9ZPkGtiyFpvF/j/Koh74yNkskj/WRxnQ70S+t0apFqgWJelNPIGcP7uuP3PsNIEtbNjIpmtZwH9A8Z6LHtVMRdLrr0lEL1KBdKbvCdtgs8wyepT18whz4mQGc7mJINgai84k/LgcbiYgvjdOLgE+d32xJU5T+oqTilxhRgAChq5f5WYS80zKQjurtQ4rQlUFxpsO+NvemeuC9sEqBMYY/8EwRc0xq2QAwb/PRNcW6sle/46C5TIbgzWhIako7cXo8T1286iIhV5vLggfne+pbIqGap6NIA9Rjv4Wvk0ysjwdmCSeCQaZb7hxNyWMKcMSQUkwB2X7MdKCXIo1NEge2eBa+GJ2V9qePY+6aCiY/E+KLyEKrvhO0PBQCsKU/shCjR0vOeSOxGZ1bwzwZLWiG2CFa9ifXZUfin5DcjE7cX8GvEgwzOBBSCnSztJa+/enLaDQJiJvjagt+EmXJRHAFh6HihqQSZ7hFjrMto X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230028)(4636009)(136003)(376002)(346002)(396003)(39860400002)(451199021)(36840700001)(46966006)(40470700004)(36756003)(86362001)(33656002)(54906003)(82310400005)(81166007)(356005)(82740400003)(2616005)(336012)(83380400001)(6506007)(53546011)(186003)(26005)(6512007)(40460700003)(107886003)(47076005)(36860700001)(8676002)(478600001)(4326008)(6486002)(40480700001)(6916009)(70206006)(70586007)(316002)(5660300002)(41300700001)(8936002)(2906002);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 22 Jun 2023 09:17:58.6094 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: b7a2edf0-34cc-4c77-c7e5-08db73019217 X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: DBAEUR03FT022.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAWPR08MB9446 DQoNCj4gT24gOCBKdW4gMjAyMywgYXQgMTQ6NTksIEx1Y2EgRmFuY2VsbHUgPEx1Y2EuRmFuY2Vs bHVAYXJtLmNvbT4gd3JvdGU6DQo+IA0KPiBDb21taXQgNTZhN2FhYTE2YmZlIGludHJvZHVjZWQg c29tZSBTVkUgcmVsYXRlZCBjb2RlIHRoYXQgaXMgcHJvdGVjdGVkIGJ5DQo+ICcjaWYgZGVmaW5l ZChfX2FhcmNoNjRfXyknLCB0aGUgaXNzdWUgaXMgdGhhdCB0aGlzIGRvZXNuJ3QgdGFrZSBpbnRv DQo+IGNvbnNpZGVyYXRpb24gd2hlbiB0aGUgdG9vbHN0YWNrIGlzIGNvbXBpbGVkIGZvciBhbiBh cm0zMiBEb20wIHJ1bm5pbmcgb24NCj4gYW4gYXJtNjQgcGxhdGZvcm0sIGl0IHNob3VsZCBiZSBh YmxlIHRvIGNyZWF0ZSBTVkUgZW5hYmxlZCBndWVzdHMgYnV0IHdpdGgNCj4gdGhlIGN1cnJlbnQg Y29kZSBpdCdzIG5vdC4NCj4gDQo+IFNvIGZpeCB0aGUgaXNzdWUgYnkgY29tcGlsaW5nIHRoZSBj b2RlIHdoZW4gdGhlIHRvb2xzdGFjayBpcyBjb21waWxlZCBmb3INCj4gYm90aCBhcm0zMiBhbmQg YXJtNjQuDQo+IA0KPiBGaXhlczogNTZhN2FhYTE2YmZlICgidG9vbHM6IGFkZCBwaHlzaW5mbyBh cmNoX2NhcGFiaWxpdGllcyBoYW5kbGluZyBmb3IgQXJtIikNCj4gU2lnbmVkLW9mZi1ieTogTHVj YSBGYW5jZWxsdSA8bHVjYS5mYW5jZWxsdUBhcm0uY29tPg0KPiBSZXBvcnRlZC1ieTogQW5kcmV3 IENvb3BlciA8YW5kcmV3LmNvb3BlcjNAY2l0cml4LmNvbT4NCj4gLS0tDQoNCkhpIGFsbCwNCg0K SXMgdGhlcmUgYW55IGNoYW5jZSB0byBoYXZlIHRoaXMgb25lIHJldmlld2VkIGJ5IHRoZSBlbmQg b2YgdGhlIG1vbnRoPw0KSeKAmW0gYXNraW5nIGJlY2F1c2UgSSBoYXZlIGEgSmlyYSB0YXNrIGF0 dGFjaGVkIHRvIHRoaXMgcGF0Y2ggYW5kIG15IFBNIGlzIGNoYXNpbmcgbWUgOikNCg0KSWYgaXTi gJlzIG5vdCBwb3NzaWJsZSBpdOKAmXMgZmluZSBlaXRoZXIgYW5kIEnigJlsbCBoYXZlIGp1c3Qg dG8gcmVwb3J0IHRoYXQuDQoNCkNoZWVycywNCkx1Y2ENCg0KDQo+IHRvb2xzL2luY2x1ZGUveGVu LXRvb2xzL2FybS1hcmNoLWNhcGFiaWxpdGllcy5oIHwgMiArLQ0KPiB0b29scy9weXRob24veGVu L2xvd2xldmVsL3hjL3hjLmMgICAgICAgICAgICAgICB8IDIgKy0NCj4gdG9vbHMveGwveGxfaW5m by5jICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAyICstDQo+IDMgZmlsZXMgY2hhbmdl ZCwgMyBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQ0KPiANCj4gZGlmZiAtLWdpdCBhL3Rv b2xzL2luY2x1ZGUveGVuLXRvb2xzL2FybS1hcmNoLWNhcGFiaWxpdGllcy5oIGIvdG9vbHMvaW5j bHVkZS94ZW4tdG9vbHMvYXJtLWFyY2gtY2FwYWJpbGl0aWVzLmgNCj4gaW5kZXggMzg0OWU4OTc5 MjVkLi40YWE0YzZjMzRhOTkgMTAwNjQ0DQo+IC0tLSBhL3Rvb2xzL2luY2x1ZGUveGVuLXRvb2xz L2FybS1hcmNoLWNhcGFiaWxpdGllcy5oDQo+ICsrKyBiL3Rvb2xzL2luY2x1ZGUveGVuLXRvb2xz L2FybS1hcmNoLWNhcGFiaWxpdGllcy5oDQo+IEBAIC0xNCw3ICsxNCw3IEBADQo+IHN0YXRpYyBp bmxpbmUNCj4gdW5zaWduZWQgaW50IGFyY2hfY2FwYWJpbGl0aWVzX2FybV9zdmUodW5zaWduZWQg aW50IGFyY2hfY2FwYWJpbGl0aWVzKQ0KPiB7DQo+IC0jaWYgZGVmaW5lZChfX2FhcmNoNjRfXykN Cj4gKyNpZiBkZWZpbmVkKF9fYXJtX18pIHx8IGRlZmluZWQoX19hYXJjaDY0X18pDQo+ICAgICB1 bnNpZ25lZCBpbnQgc3ZlX3ZsID0gTUFTS19FWFRSKGFyY2hfY2FwYWJpbGl0aWVzLA0KPiAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBYRU5fU1lTQ1RMX1BIWVNDQVBfQVJNX1NW RV9NQVNLKTsNCj4gDQo+IGRpZmYgLS1naXQgYS90b29scy9weXRob24veGVuL2xvd2xldmVsL3hj L3hjLmMgYi90b29scy9weXRob24veGVuL2xvd2xldmVsL3hjL3hjLmMNCj4gaW5kZXggNDkxZTg4 OTc3ZmQzLi5lMTRlMjIzZWM5MDMgMTAwNjQ0DQo+IC0tLSBhL3Rvb2xzL3B5dGhvbi94ZW4vbG93 bGV2ZWwveGMveGMuYw0KPiArKysgYi90b29scy9weXRob24veGVuL2xvd2xldmVsL3hjL3hjLmMN Cj4gQEAgLTkxMSw3ICs5MTEsNyBAQCBzdGF0aWMgUHlPYmplY3QgKnB5eGNfcGh5c2luZm8oWGNP YmplY3QgKnNlbGYpDQo+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICJod19jYXBzIiwgICAg ICAgICAgY3B1X2NhcCwNCj4gICAgICAgICAgICAgICAgICAgICAgICAgICAgInZpcnRfY2FwcyIs ICAgICAgICB2aXJ0X2NhcHMpOw0KPiANCj4gLSNpZiBkZWZpbmVkKF9fYWFyY2g2NF9fKQ0KPiAr I2lmIGRlZmluZWQoX19hcm1fXykgfHwgZGVmaW5lZChfX2FhcmNoNjRfXykNCj4gICAgIGlmICgg b2JqcmV0ICkgew0KPiAgICAgICAgIHVuc2lnbmVkIGludCBzdmVfdmxfYml0czsNCj4gICAgICAg ICBQeU9iamVjdCAqcHlfYXJtX3N2ZV92bDsNCj4gZGlmZiAtLWdpdCBhL3Rvb2xzL3hsL3hsX2lu Zm8uYyBiL3Rvb2xzL3hsL3hsX2luZm8uYw0KPiBpbmRleCBkZGM0MmY5NmI5NzkuLjcyZTg3ZWFj NDZkMSAxMDA2NDQNCj4gLS0tIGEvdG9vbHMveGwveGxfaW5mby5jDQo+ICsrKyBiL3Rvb2xzL3hs L3hsX2luZm8uYw0KPiBAQCAtMjI2LDcgKzIyNiw3IEBAIHN0YXRpYyB2b2lkIG91dHB1dF9waHlz aW5mbyh2b2lkKQ0KPiAgICAgICAgICk7DQo+IA0KPiAgICAgLyogUHJpbnQgYXJtIFNWRSB2ZWN0 b3IgbGVuZ3RoIG9ubHkgb24gQVJNIHBsYXRmb3JtcyAqLw0KPiAtI2lmIGRlZmluZWQoX19hYXJj aDY0X18pDQo+ICsjaWYgZGVmaW5lZChfX2FybV9fKSB8fCBkZWZpbmVkKF9fYWFyY2g2NF9fKQ0K PiAgICAgbWF5YmVfcHJpbnRmKCJhcm1fc3ZlX3ZlY3Rvcl9sZW5ndGggIDogJXVcbiIsDQo+ICAg ICAgICAgIGFyY2hfY2FwYWJpbGl0aWVzX2FybV9zdmUoaW5mby5hcmNoX2NhcGFiaWxpdGllcykN Cj4gICAgICAgICApOw0KPiAtLSANCj4gMi4zNC4xDQo+IA0KPiANCg0K From xen-devel-bounces@lists.xenproject.org Thu Jun 22 09:18:16 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 09:18:16 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553435.863991 (Exim 4.92) (envelope-from ) id 1qCGSG-0001NU-9p; Thu, 22 Jun 2023 09:18:16 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553435.863991; Thu, 22 Jun 2023 09:18:16 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCGSG-0001NL-67; Thu, 22 Jun 2023 09:18:16 +0000 Received: by outflank-mailman (input) for mailman id 553435; Thu, 22 Jun 2023 09:18:15 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCGSF-0001Ml-MQ for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 09:18:15 +0000 Received: from EUR05-VI1-obe.outbound.protection.outlook.com (mail-vi1eur05on20618.outbound.protection.outlook.com [2a01:111:f400:7d00::618]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id b61ec0dd-10dd-11ee-8611-37d641c3527e; Thu, 22 Jun 2023 11:18:12 +0200 (CEST) Received: from AS9PR05CA0157.eurprd05.prod.outlook.com (2603:10a6:20b:496::24) by DU0PR08MB9776.eurprd08.prod.outlook.com (2603:10a6:10:443::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.23; Thu, 22 Jun 2023 09:18:07 +0000 Received: from AM7EUR03FT050.eop-EUR03.prod.protection.outlook.com (2603:10a6:20b:496:cafe::db) by AS9PR05CA0157.outlook.office365.com (2603:10a6:20b:496::24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.24 via Frontend Transport; Thu, 22 Jun 2023 09:18:07 +0000 Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by AM7EUR03FT050.mail.protection.outlook.com (100.127.141.27) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.24 via Frontend Transport; Thu, 22 Jun 2023 09:18:07 +0000 Received: ("Tessian outbound b11b8bb4dfe8:v142"); Thu, 22 Jun 2023 09:18:06 +0000 Received: from ba41415727ed.2 by 64aa7808-outbound-1.mta.getcheckrecipient.com id CF3CE3B8-5E22-4270-A262-CDA22D6493B7.1; Thu, 22 Jun 2023 09:17:59 +0000 Received: from EUR05-AM6-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id ba41415727ed.2 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Thu, 22 Jun 2023 09:17:59 +0000 Received: from AM6PR08MB3749.eurprd08.prod.outlook.com (2603:10a6:20b:8f::22) by GV1PR08MB8034.eurprd08.prod.outlook.com (2603:10a6:150:99::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.23; Thu, 22 Jun 2023 09:17:57 +0000 Received: from AM6PR08MB3749.eurprd08.prod.outlook.com ([fe80::ed0b:5730:a1f9:577b]) by AM6PR08MB3749.eurprd08.prod.outlook.com ([fe80::ed0b:5730:a1f9:577b%5]) with mapi id 15.20.6521.023; Thu, 22 Jun 2023 09:17:57 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: b61ec0dd-10dd-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=yTjSkr3n/T3ri/NdMKah3oBnCnAw955m4HsRV40jRI0=; b=hIuxSmyckM8XlMWsptL/nMDb+6Kq+j4c0FJY3QmQHuZ5M0nUv8FrkGcN2+rNQZmPdxzU3UFcs/nLoLazzU0tV0iP0A8vv2qXQwJUvMxUOMORGGxAW+FPcWrnifR7XNXCGY71HeA06H8oVcGnawdNOyPSiPx83xZOoWVDMGC0dyQ= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C X-CheckRecipientChecked: true X-CR-MTA-CID: 5b25946707d7468a X-CR-MTA-TID: 64aa7808 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=imTWhGmaLfzGNai8Odvv252jYSSlsIVNizAIl+CYrVtKS4+xD4iIl+2hm1EbDlet3l+yGhUZ5ZY0mS38gC9ncBQTPg20AY02uzSzOvp0+ozB7hAYa5ieL6YzYDM7tS8eDnRYNIf+2emeriFLSac2iRlE8PTWak1MEqikX5GsHpXL0sftz/ahAS45ydmeSYlByYrjweApYsc7iAsKSx5DirYVuvtUA7/DLcIf5uEf73jLDA2fjeVbKD7F2oJqyr8H/f25+AkqucHcmcib9oWnFv0SQpxXS6TfxMYYGIh0l+Q0dUnwEbN86UGmEY/l0BpUKPQWURmeJNN8ErEF8WbOXQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=yTjSkr3n/T3ri/NdMKah3oBnCnAw955m4HsRV40jRI0=; b=lCrxe72Nf90yrgZKQ0REZfBEaMlzK5MnRZsYgSdPdHIt3O7fUER1mGjuCRzI/Eu7dAyRqzDDnk7BN6rYYcBeeyuHIclapVVgxsqPQVqaQIyuIVM7IEtevO0BI/b10mQhH+EUPZSEFOsw/sVNHf6Sy1IxQ7yews615tOio8jSWaPVFuIjheYs5BhYvuFY/T7PHBYFTgbiAdxfU4za+EN3KB0ryS5DNiTIRykDEXbHJP5yVgXrFtlFW+Yth4wkyZZwnwqbojONjFsONSVZoOtg5JffhO0BIrCH/BkWs/b4KnCeRZR5OpzBygNqdIH/A5ZA8Eqo6EpdYocYwWcEHbyxtQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=yTjSkr3n/T3ri/NdMKah3oBnCnAw955m4HsRV40jRI0=; b=hIuxSmyckM8XlMWsptL/nMDb+6Kq+j4c0FJY3QmQHuZ5M0nUv8FrkGcN2+rNQZmPdxzU3UFcs/nLoLazzU0tV0iP0A8vv2qXQwJUvMxUOMORGGxAW+FPcWrnifR7XNXCGY71HeA06H8oVcGnawdNOyPSiPx83xZOoWVDMGC0dyQ= From: Luca Fancellu To: Xen-devel CC: Bertrand Marquis , Wei Chen , =?utf-8?B?TWFyZWsgTWFyY3p5a293c2tpLUfDs3JlY2tp?= , Wei Liu , Anthony PERARD , Andrew Cooper Subject: Re: [PATCH 2/2] tools/python: Fix memory leak on error path Thread-Topic: [PATCH 2/2] tools/python: Fix memory leak on error path Thread-Index: AQHZmhGBKe4OoL9s40qPc71ZQnCAd6+WoK6A Date: Thu, 22 Jun 2023 09:17:57 +0000 Message-ID: References: <20230608135913.560413-1-luca.fancellu@arm.com> <20230608135913.560413-2-luca.fancellu@arm.com> In-Reply-To: <20230608135913.560413-2-luca.fancellu@arm.com> Accept-Language: en-GB, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-mailer: Apple Mail (2.3731.600.7) Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-traffictypediagnostic: AM6PR08MB3749:EE_|GV1PR08MB8034:EE_|AM7EUR03FT050:EE_|DU0PR08MB9776:EE_ X-MS-Office365-Filtering-Correlation-Id: f04a4b48-ebe4-4505-c122-08db73019729 x-checkrecipientrouted: true nodisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: sfKa1JiR+n2V3t68SnZKGjrFQooTG3k77jWm/XLwCz6mC6G3obRgaytfn8DWig9dsQmYd/esT13QvrBlsL76RD19Y3bnZRLivoTysBcQUt11thRu91VdO5FL3Q29T6qHeiE5P/L5PGPNYjrmWOCXsNfWrfJczFxnI7Olgw0ADAyeWYMiPLt+4CFjz0iViVbzfRW/D3Zrhb+0G8T+ApEhdfnKaXonXG6ZALY2zXnsNJxMJw/sPidci5hjNcG9Q6R0uE8lX4Pwjwbu45Mwv4xmNQYsVFE2vtrl8gza0E1E+JGwQmGpver7GMNl2GiIcfPuGKCTUUV8NdZlZfDxFbY9EVY8s/C425z1ZBEtUwUWeGMvE+5Q6vkVe4iO6YRx+8kYUdxPLfeNN5BcGj2SvPRDuW0QDgxRLf+1v6kAAiSnMLeVNJdTOQNrLUXfOr2UZW/RpIglRPzcS7LIH+wsMWWa5bap40/YtYohIjgp7d/SGmITgrSewIn4YXu8ee6tFvd3A0kreBMj+YccK0lGDnXU/rcG8JaS7p5J6DQYAH66K2HM4CJ0XQ+UpxwLInFY+FK1hBAcIxMn+B5VzsEzqE7eJJqPbmLxnDM8pjIvJD1lGZmSSiHwuxi4fYmZhAd7fx7a5/fPRlp0ps8bnqs+aq+/Pg== X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM6PR08MB3749.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(346002)(376002)(396003)(136003)(39860400002)(366004)(451199021)(38100700002)(122000001)(2906002)(38070700005)(83380400001)(36756003)(33656002)(86362001)(6506007)(53546011)(2616005)(6512007)(26005)(186003)(71200400001)(54906003)(6486002)(478600001)(64756008)(91956017)(66446008)(66946007)(66556008)(66476007)(76116006)(41300700001)(8676002)(316002)(6916009)(5660300002)(4326008)(8936002)(45980500001);DIR:OUT;SFP:1101; Content-Type: text/plain; charset="utf-8" Content-ID: <6D667228D5808A4ABB206298770B9F0F@eurprd08.prod.outlook.com> Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: GV1PR08MB8034 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: AM7EUR03FT050.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: 7291004d-a774-4e95-614f-08db730191a6 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 1DEszmpmefJJxb+OE+jpBQcl0yhrpDSY7iVEP7oFaikVbhkhSJjOT1AAfKnpyKqvZG9QWazzgT62kushcvvBYrurf3vRfWzmD25oChUMn5iVlw2BHX6mFZAq8dXnSpDWE0CQe385uH4f8gzOQvlhHF6GdbePlYQrFkYPNF/WgQytZdL/0Gb5WQm9puCnlEvKTGT2y0QuEa4SZ3lw5h7zfF/WtehyoautkI/GdoO62NPyhfjW89SgzEZS5DcjzgHMp2muX3LKXBc3ykUdgMcXK86+IP2G14kjkOtdFvvkMh6JR27E2tyWp9/Kk9NJBhO2l1gf4v8TMXfSHlBN7W5WOP3XcEvXVsed+oGt5PD92EODCQEsjAfQmoAxC0yRFM3z2j+Bk+4nLFTnnW1w8OxWKMq3Wz07b/EKofv34nWUFLOpJ7Y8nHFtv25dHr3jFWhXCnbr1WrQ6eG1FlfwUw75kxdA3W21RNKGgE9Hre6k1p39KvQCu492XtEtdowpD70KFNKXam823DQ34KZKFg6ymNP76haVcxgqFcxbPeehg6oaiephK0aBTTZlr5YShcJO3thha6y5bcAYmcAMOp6jX5twJtJwNla7/XbJqRiLHMXHS2UDQNgJv+WI42jrRTgPDogk67npnApZVp/G2n5iJY11JGFtho/WxZJ2B/+mKzpXAH6SmYDaH9aekOtaBMyWibCeLGZ0Rhjjtr6PDnGUaKmRxOK6iHH9y5NZ0uRDk3kpqJMv/AX+hQRH9rlfpM0p X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230028)(4636009)(346002)(39860400002)(136003)(376002)(396003)(451199021)(46966006)(36840700001)(40470700004)(8676002)(5660300002)(8936002)(40480700001)(316002)(41300700001)(2906002)(6916009)(4326008)(40460700003)(70206006)(70586007)(33656002)(336012)(478600001)(54906003)(36756003)(6486002)(82740400003)(86362001)(82310400005)(53546011)(186003)(6512007)(2616005)(81166007)(356005)(47076005)(83380400001)(6506007)(36860700001)(107886003)(26005);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 22 Jun 2023 09:18:07.0846 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: f04a4b48-ebe4-4505-c122-08db73019729 X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: AM7EUR03FT050.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU0PR08MB9776 DQoNCj4gT24gOCBKdW4gMjAyMywgYXQgMTQ6NTksIEx1Y2EgRmFuY2VsbHUgPEx1Y2EuRmFuY2Vs bHVAYXJtLmNvbT4gd3JvdGU6DQo+IA0KPiBDb21taXQgNTZhN2FhYTE2YmZlIGludHJvZHVjZWQg YSBtZW1vcnkgbGVhayBvbiB0aGUgZXJyb3IgcGF0aCBmb3IgYQ0KPiBQeV9CdWlsZFZhbHVlIGJ1 aWx0IG9iamVjdCB0aGF0IG9uIHNvbWUgbmV3bHkgaW50cm9kdWNlZCBlcnJvciBwYXRoDQo+IGhh cyBub3QgdGhlIGNvcnJlY3QgcmVmZXJlbmNlIGNvdW50IGhhbmRsaW5nLCBmaXggdGhhdCBieSBk ZWNyZW1lbnRpbmcNCj4gdGhlIHJlZmNvdW50IGluIHRoZXNlIHBhdGguDQo+IA0KPiBGaXhlczog NTZhN2FhYTE2YmZlICgidG9vbHM6IGFkZCBwaHlzaW5mbyBhcmNoX2NhcGFiaWxpdGllcyBoYW5k bGluZyBmb3IgQXJtIikNCj4gU2lnbmVkLW9mZi1ieTogTHVjYSBGYW5jZWxsdSA8bHVjYS5mYW5j ZWxsdUBhcm0uY29tPg0KPiBSZXBvcnRlZC1ieTogQW5kcmV3IENvb3BlciA8YW5kcmV3LmNvb3Bl cjNAY2l0cml4LmNvbT4NCj4gLS0tDQoNCkhpIGFsbCwNCg0KSXMgdGhlcmUgYW55IGNoYW5jZSB0 byBoYXZlIHRoaXMgb25lIHJldmlld2VkIGJ5IHRoZSBlbmQgb2YgdGhlIG1vbnRoPw0KSeKAmW0g YXNraW5nIGJlY2F1c2UgSSBoYXZlIGEgSmlyYSB0YXNrIGF0dGFjaGVkIHRvIHRoaXMgcGF0Y2gg YW5kIG15IFBNIGlzIGNoYXNpbmcgbWUgOikNCg0KSWYgaXTigJlzIG5vdCBwb3NzaWJsZSBpdOKA mXMgZmluZSBlaXRoZXIgYW5kIEnigJlsbCBoYXZlIGp1c3QgdG8gcmVwb3J0IHRoYXQuDQoNCkNo ZWVycywNCkx1Y2ENCg0KPiB0b29scy9weXRob24veGVuL2xvd2xldmVsL3hjL3hjLmMgfCA5ICsr KysrKystLQ0KPiAxIGZpbGUgY2hhbmdlZCwgNyBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygt KQ0KPiANCj4gZGlmZiAtLWdpdCBhL3Rvb2xzL3B5dGhvbi94ZW4vbG93bGV2ZWwveGMveGMuYyBi L3Rvb2xzL3B5dGhvbi94ZW4vbG93bGV2ZWwveGMveGMuYw0KPiBpbmRleCBlMTRlMjIzZWM5MDMu LmQzZWEzNTBlMDdiOSAxMDA2NDQNCj4gLS0tIGEvdG9vbHMvcHl0aG9uL3hlbi9sb3dsZXZlbC94 Yy94Yy5jDQo+ICsrKyBiL3Rvb2xzL3B5dGhvbi94ZW4vbG93bGV2ZWwveGMveGMuYw0KPiBAQCAt OTE5LDExICs5MTksMTYgQEAgc3RhdGljIFB5T2JqZWN0ICpweXhjX3BoeXNpbmZvKFhjT2JqZWN0 ICpzZWxmKQ0KPiAgICAgICAgIHN2ZV92bF9iaXRzID0gYXJjaF9jYXBhYmlsaXRpZXNfYXJtX3N2 ZShwaW5mby5hcmNoX2NhcGFiaWxpdGllcyk7DQo+ICAgICAgICAgcHlfYXJtX3N2ZV92bCA9IFB5 TG9uZ19Gcm9tVW5zaWduZWRMb25nKHN2ZV92bF9iaXRzKTsNCj4gDQo+IC0gICAgICAgIGlmICgg IXB5X2FybV9zdmVfdmwgKQ0KPiArICAgICAgICBpZiAoICFweV9hcm1fc3ZlX3ZsICkgew0KPiAr ICAgICAgICAgICAgUHlfREVDUkVGKG9ianJldCk7DQo+ICAgICAgICAgICAgIHJldHVybiBOVUxM Ow0KPiArICAgICAgICB9DQo+IA0KPiAtICAgICAgICBpZiggUHlEaWN0X1NldEl0ZW1TdHJpbmco b2JqcmV0LCAiYXJtX3N2ZV92bCIsIHB5X2FybV9zdmVfdmwpICkNCj4gKyAgICAgICAgaWYoIFB5 RGljdF9TZXRJdGVtU3RyaW5nKG9ianJldCwgImFybV9zdmVfdmwiLCBweV9hcm1fc3ZlX3ZsKSAp IHsNCj4gKyAgICAgICAgICAgIFB5X0RFQ1JFRihweV9hcm1fc3ZlX3ZsKTsNCj4gKyAgICAgICAg ICAgIFB5X0RFQ1JFRihvYmpyZXQpOw0KPiAgICAgICAgICAgICByZXR1cm4gTlVMTDsNCj4gKyAg ICAgICAgfQ0KPiAgICAgfQ0KPiAjZW5kaWYNCj4gDQo+IC0tIA0KPiAyLjM0LjENCj4gDQo+IA0K DQo= From xen-devel-bounces@lists.xenproject.org Thu Jun 22 09:23:13 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 09:23:13 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553445.864001 (Exim 4.92) (envelope-from ) id 1qCGWt-00038J-U8; Thu, 22 Jun 2023 09:23:03 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553445.864001; Thu, 22 Jun 2023 09:23:03 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCGWt-00038C-QS; Thu, 22 Jun 2023 09:23:03 +0000 Received: by outflank-mailman (input) for mailman id 553445; Thu, 22 Jun 2023 09:23:02 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCGWs-000386-5b for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 09:23:02 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCGWr-00034W-N7; Thu, 22 Jun 2023 09:23:01 +0000 Received: from [54.239.6.188] (helo=[192.168.27.222]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qCGWr-0006Zw-Gt; Thu, 22 Jun 2023 09:23:01 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=EPSH1MX34Kru+s9HZIupoiehIYNsbUfFMIFk9ZVhnuQ=; b=tvVusF4uYC5Ih4xUmSmJ0wqbSF 1CIDtC755DXUV0ft9ORG1DOfQ2URdQlaXyZQ/ypJfQ6SlQB3OXTxTWV1JO2UADYTIzIht/RYVfjgg 2n/Au5MpKqSJ1EebQcPgVhdwjdIQ7vcm/3ilRPVcwDm81Iz9mUZNQbzUwOt2dLs46NUc=; Message-ID: <030fc5e8-8293-2306-06eb-9275c2a2c9e5@xen.org> Date: Thu, 22 Jun 2023 10:22:59 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v1] xen/arm: arm32: Add support to identify the Cortex-R52 processor Content-Language: en-US To: Ayan Kumar Halder , Ayan Kumar Halder , xen-devel@lists.xenproject.org Cc: sstabellini@kernel.org, stefano.stabellini@amd.com, Volodymyr_Babchuk@epam.com, bertrand.marquis@arm.com References: <20230620151736.3720850-1-ayan.kumar.halder@amd.com> <3b7f584e-700e-4598-f36e-51a96140323e@xen.org> From: Julien Grall In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi Ayan, On 22/06/2023 09:59, Ayan Kumar Halder wrote: > > On 20/06/2023 21:43, Julien Grall wrote: >> Hi Ayan, > Hi Julien, >> >> On 20/06/2023 19:28, Ayan Kumar Halder wrote: >>> >>> On 20/06/2023 17:41, Julien Grall wrote: >>>> Hi, >>> Hi Julien, >>>> >>>> On 20/06/2023 16:17, Ayan Kumar Halder wrote: >>>>> Add a special configuration (CONFIG_AARCH32_V8R) to setup the >>>>> Cortex-R52 >>>>> specifics. >>>>> >>>>> Cortex-R52 is an Arm-V8R AArch32 processor. >>>>> >>>>> Refer ARM DDI 0487I.a ID081822, G8-9647, G8.2.112 MIDR, >>>>> bits[31:24] = 0x41 , Arm Ltd >>>>> bits[23:20] = Implementation defined >>>>> bits[19:16] = 0xf , Arch features are individually identified >>>>> bits[15:4] = Implementation defined >>>>> bits[3:0] = Implementation defined >>>>> >>>>> Thus, the processor id is 0x410f0000 and the processor id mask is >>>>> 0xff0f0000 >>>>> >>>>> Also, there is no special initialization required for R52. >>>> >>>> Are you saying that Xen upstream + this patch will boot on Cortex-R52? >>> >>> This patch will help for earlyboot of Xen. With this patch, >>> cpu_init() will work on Cortex-R52. >>> >>> There will be changes required for the MPU configuration, but that >>> will be sent after Penny's patch serie "[PATCH v2 00/41] xen/arm: Add >>> Armv8-R64 MPU support to Xen - Part#1" is upstreamed. >>> >>> My aim is to extract the non-dependent changes and send them for review. >> >> I can review the patch. But I am not willing to merge it as it gives >> the false impression that Xen would boot on Cortex-R52. >> >> In fact, I think this patch should only be merged once we have all the >> MPU merged. >> >> IMHO, patches are independent are rework (e.g. code split...) that >> would help the MPU. > > Yes, that's exactly what I intend to do. I will send out the patches > (similar to this) which will not be impacted by the MPU changes. > > So, that both as an author/reviewer, it helps to restrict MPU serie to > only MPU specific changes. > > Can you suggest some change to the commit message, so that we can commit > it (without giving any false impression that Xen boots on Cortex-R52) > > May be adding this line to the commit message helps ? > > "However, Xen does not fully boot on Cortex-R52 as it requires MPU > support which is under review. > > Once Xen is supported on Cortex-R52, SUPPORT.md will be amended to > reflect it." While writing an answer for this patch, I was actually wondering whether the CPU allowlist still make sense for the 32-bit ARMv8-R? From Armv7-A, we needed it because some CPUs need specific quirk when booting. But it would be best if we can get rid of it for 32-bit ARMv8-R. Looking at your patch, your merely providing stubs. Do you have any plan to fill them up? Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Thu Jun 22 09:34:28 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 09:34:28 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553450.864011 (Exim 4.92) (envelope-from ) id 1qCGhg-0004eb-UE; Thu, 22 Jun 2023 09:34:12 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553450.864011; Thu, 22 Jun 2023 09:34:12 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCGhg-0004eU-RC; Thu, 22 Jun 2023 09:34:12 +0000 Received: by outflank-mailman (input) for mailman id 553450; Thu, 22 Jun 2023 09:34:11 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCGhf-0004eO-HW for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 09:34:11 +0000 Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id f0950c77-10df-11ee-b237-6b7b168915f2; Thu, 22 Jun 2023 11:34:09 +0200 (CEST) Received: from [192.168.1.198] (unknown [151.37.206.199]) by support.bugseng.com (Postfix) with ESMTPSA id E73E84EE0737; Thu, 22 Jun 2023 11:34:06 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: f0950c77-10df-11ee-b237-6b7b168915f2 Message-ID: <7c04191b-62d2-6802-df77-e262d567cb7d@bugseng.com> Date: Thu, 22 Jun 2023 11:34:04 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [XEN PATCH v3] xen/include: avoid using a compiler extension for BUILD_BUG_ON_ZERO. Content-Language: en-US To: Jan Beulich Cc: sstabellini@kernel.org, michal.orzel@amd.com, xenia.ragiadakou@amd.com, ayan.kumar.halder@amd.com, consulting@bugseng.com, andrew.cooper3@citrix.com, roger.pau@citrix.com, bertrand.marquis@arm.com, julien@xen.org, George Dunlap , Wei Liu , xen-devel@lists.xenproject.org References: From: Nicola Vetrini In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit On 22/06/23 10:56, Jan Beulich wrote: > On 22.06.2023 10:24, Nicola Vetrini wrote: >> --- a/xen/include/xen/lib.h >> +++ b/xen/include/xen/lib.h >> @@ -51,9 +51,10 @@ >> e.g. in a structure initializer (or where-ever else comma expressions >> aren't permitted). */ >> #define BUILD_BUG_ON_ZERO(cond) \ >> - sizeof(struct { _Static_assert(!(cond), "!(" #cond ")"); }) >> + (sizeof(struct { char c; _Static_assert(!(cond), "!(" #cond ")"); }) & 0U) >> #else >> -#define BUILD_BUG_ON_ZERO(cond) sizeof(struct { int:-!!(cond); }) >> +#define BUILD_BUG_ON_ZERO(cond) \ >> + (sizeof(struct { unsigned u : (cond) ? -1 : 1; }) & 0U) > > Given your remark on named bitfields not being allowed to be zero length > (which hopefully holds universally, i.e. isn't subject to compiler > extensions), how about > > #define BUILD_BUG_ON_ZERO(cond) (sizeof(struct { int _:!(cond); }) & 0) Well, the reason for the change is to drop any assumption on compiler-specific quirks that may arise (it would be a surprise if this wasn't the case, though) > > ? (Implicitly, as said before, I question the value of the U suffixes here. > Even better might be to make sure the expression is explicitly not of > unsigned type, to avoid surprises if someone used ~BUILD_BUG_ON_ZERO() > somewhere.) > > Jan The documentation for the macro definition states that the expression must have value 0 and type size_t when cond is false. If I understand correctly what you're saying here, then this is not allowed by the documentation. Regards, -- Nicola Vetrini, BSc Software Engineer, BUGSENG srl (https://bugseng.com) From xen-devel-bounces@lists.xenproject.org Thu Jun 22 09:45:15 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 09:45:15 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553457.864021 (Exim 4.92) (envelope-from ) id 1qCGsC-0006BG-UF; Thu, 22 Jun 2023 09:45:04 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553457.864021; Thu, 22 Jun 2023 09:45:04 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCGsC-0006B9-Qy; Thu, 22 Jun 2023 09:45:04 +0000 Received: by outflank-mailman (input) for mailman id 553457; Thu, 22 Jun 2023 09:45:03 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCGsB-0006Ay-2s for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 09:45:03 +0000 Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 750357b6-10e1-11ee-b237-6b7b168915f2; Thu, 22 Jun 2023 11:45:01 +0200 (CEST) Received: from [172.20.10.2] (unknown [37.160.126.171]) by support.bugseng.com (Postfix) with ESMTPSA id 07F304EE0737; Thu, 22 Jun 2023 11:44:59 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 750357b6-10e1-11ee-b237-6b7b168915f2 Message-ID: Date: Thu, 22 Jun 2023 11:44:58 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [XEN PATCH] xen/arm: fixed violations of MISRA C:2012 R8.3 on parameter names. Content-Language: en-US To: Julien Grall , xen-devel@lists.xenproject.org Cc: consulting@bugseng.com, Stefano Stabellini , Bertrand Marquis , Volodymyr Babchuk , Michal Orzel , Xenia Ragiadakou , Ayan Kumar Halder References: <7a48c49e-2998-9e34-45ef-a1c3431fbffe@xen.org> From: Federico Serafini Organization: BUGSENG srl In-Reply-To: <7a48c49e-2998-9e34-45ef-a1c3431fbffe@xen.org> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit On 22/06/23 10:37, Julien Grall wrote: > Hi, > > On 22/06/2023 09:13, Federico Serafini wrote: >> To comply with Rule 8.3 ("All declarations of an object or function >> shall use the same names and type qualifiers") change the parameter >> names of function declarations to be consistent with the names used >> in the corresponding function definitions. > >> Signed-off-by: Federico Serafini >> --- >>   xen/arch/arm/include/asm/event.h        | 2 +- >>   xen/arch/arm/include/asm/fixmap.h       | 2 +- >>   xen/arch/arm/include/asm/gic.h          | 2 +- >>   xen/arch/arm/include/asm/gic_v3_its.h   | 5 +++-- >>   xen/arch/arm/include/asm/grant_table.h  | 6 +++--- >>   xen/arch/arm/include/asm/guest_access.h | 4 ++-- >>   xen/arch/arm/include/asm/irq.h          | 2 +- >>   xen/arch/arm/include/asm/mm.h           | 2 +- >>   xen/arch/arm/include/asm/regs.h         | 2 +- >>   xen/arch/arm/include/asm/vgic.h         | 4 ++-- >>   10 files changed, 16 insertions(+), 15 deletions(-) >> >> diff --git a/xen/arch/arm/include/asm/event.h >> b/xen/arch/arm/include/asm/event.h >> index b14c166ad6..fa54ef8869 100644 >> --- a/xen/arch/arm/include/asm/event.h >> +++ b/xen/arch/arm/include/asm/event.h >> @@ -3,7 +3,7 @@ >>   #include >> -void vcpu_kick(struct vcpu *v); >> +void vcpu_kick(struct vcpu *vcpu); > With this change we know have inconsistency in the arguments naming > within the header. It is more common to denote a vCPU with 'v' so I > would rather prefer if we modify the function definition in a patch before. > >>   void vcpu_mark_events_pending(struct vcpu *v);> Hi, > > On 22/06/2023 09:13, Federico Serafini wrote: >> To comply with Rule 8.3 ("All declarations of an object or function >> shall use the same names and type qualifiers") change the parameter >> names of function declarations to be consistent with the names used >> in the corresponding function definitions. > >> Signed-off-by: Federico Serafini >> --- >> xen/arch/arm/include/asm/event.h | 2 +- >> xen/arch/arm/include/asm/fixmap.h | 2 +- >> xen/arch/arm/include/asm/gic.h | 2 +- >> xen/arch/arm/include/asm/gic_v3_its.h | 5 +++-- >> xen/arch/arm/include/asm/grant_table.h | 6 +++--- >> xen/arch/arm/include/asm/guest_access.h | 4 ++-- >> xen/arch/arm/include/asm/irq.h | 2 +- >> xen/arch/arm/include/asm/mm.h | 2 +- >> xen/arch/arm/include/asm/regs.h | 2 +- >> xen/arch/arm/include/asm/vgic.h | 4 ++-- >> 10 files changed, 16 insertions(+), 15 deletions(-) >> >> diff --git a/xen/arch/arm/include/asm/event.h >> b/xen/arch/arm/include/asm/event.h >> index b14c166ad6..fa54ef8869 100644 >> --- a/xen/arch/arm/include/asm/event.h >> +++ b/xen/arch/arm/include/asm/event.h >> @@ -3,7 +3,7 @@ >> #include >> -void vcpu_kick(struct vcpu *v); >> +void vcpu_kick(struct vcpu *vcpu) >>   void vcpu_update_evtchn_irq(struct vcpu *v); >>   void vcpu_block_unless_event_pending(struct vcpu *v); >> diff --git a/xen/arch/arm/include/asm/fixmap.h >> b/xen/arch/arm/include/asm/fixmap.h >> index d0c9a52c8c..734eb9b1d4 100644 >> --- a/xen/arch/arm/include/asm/fixmap.h >> +++ b/xen/arch/arm/include/asm/fixmap.h >> @@ -30,7 +30,7 @@ >>   extern lpae_t xen_fixmap[XEN_PT_LPAE_ENTRIES]; >>   /* Map a page in a fixmap entry */ >> -extern void set_fixmap(unsigned int map, mfn_t mfn, unsigned int >> attributes); >> +extern void set_fixmap(unsigned int map, mfn_t mfn, unsigned int flags); >>   /* Remove a mapping from a fixmap entry */ >>   extern void clear_fixmap(unsigned int map); >> diff --git a/xen/arch/arm/include/asm/gic.h >> b/xen/arch/arm/include/asm/gic.h >> index 76e3fa5dc4..f1ef347edc 100644 >> --- a/xen/arch/arm/include/asm/gic.h >> +++ b/xen/arch/arm/include/asm/gic.h >> @@ -257,7 +257,7 @@ int gic_remove_irq_from_guest(struct domain *d, >> unsigned int virq, >>   extern void gic_clear_pending_irqs(struct vcpu *v); >>   extern void init_maintenance_interrupt(void); >> -extern void gic_raise_guest_irq(struct vcpu *v, unsigned int irq, >> +extern void gic_raise_guest_irq(struct vcpu *v, unsigned int >> virtual_irq, >>           unsigned int priority); >>   extern void gic_raise_inflight_irq(struct vcpu *v, unsigned int >> virtual_irq); >> diff --git a/xen/arch/arm/include/asm/gic_v3_its.h >> b/xen/arch/arm/include/asm/gic_v3_its.h >> index fae3f6ecef..c24d4752d0 100644 >> --- a/xen/arch/arm/include/asm/gic_v3_its.h >> +++ b/xen/arch/arm/include/asm/gic_v3_its.h >> @@ -190,8 +190,9 @@ struct pending_irq >> *gicv3_its_get_event_pending_irq(struct domain *d, >>                                                       uint32_t eventid); >>   int gicv3_remove_guest_event(struct domain *d, paddr_t >> vdoorbell_address, >>                                        uint32_t vdevid, uint32_t >> eventid); >> -struct pending_irq *gicv3_assign_guest_event(struct domain *d, >> paddr_t doorbell, >> -                                             uint32_t devid, uint32_t >> eventid, >> +struct pending_irq *gicv3_assign_guest_event(struct domain *d, >> +                                             paddr_t vdoorbell_address, >> +                                             uint32_t vdevid, >> uint32_t eventid, >>                                                uint32_t virt_lpi); >>   void gicv3_lpi_update_host_entry(uint32_t host_lpi, int domain_id, >>                                    uint32_t virt_lpi); >> diff --git a/xen/arch/arm/include/asm/grant_table.h >> b/xen/arch/arm/include/asm/grant_table.h >> index e13dfeefa5..bd4eea2317 100644 >> --- a/xen/arch/arm/include/asm/grant_table.h >> +++ b/xen/arch/arm/include/asm/grant_table.h >> @@ -36,10 +36,10 @@ static inline bool >> gnttab_release_host_mappings(const struct domain *d) >>       return true; >>   } >> -int create_grant_host_mapping(unsigned long gpaddr, mfn_t mfn, >> +int create_grant_host_mapping(unsigned long addr, mfn_t frame, >>                                 unsigned int flags, unsigned int >> cache_flags); >> -int replace_grant_host_mapping(unsigned long gpaddr, mfn_t mfn, >> -                               unsigned long new_gpaddr, unsigned int >> flags); >> +int replace_grant_host_mapping(unsigned long addr, mfn_t mfn, >> +                               unsigned long new_addr, unsigned int >> flags); > > I know you are focusing to use the same parameter names as the > definitions. However, with the new name it is not clear anymore what > type of address is expected. > > From my understanding, the interface is expecting a guest physical > address. So I think we should stick with 'gpaddr'. > > Also, I think there is another problem with this interface because a > guest (and even host) address can be bigger than an 'unsigned long' on > arm32. Anyway, this is something that could be dealt outside of this > series. > >>   /* >>    * The region used by Xen on the memory will never be mapped in DOM0 >> diff --git a/xen/arch/arm/include/asm/guest_access.h >> b/xen/arch/arm/include/asm/guest_access.h >> index 4421e43611..c37cf7d871 100644 >> --- a/xen/arch/arm/include/asm/guest_access.h >> +++ b/xen/arch/arm/include/asm/guest_access.h >> @@ -12,11 +12,11 @@ unsigned long raw_clear_guest(void *to, unsigned >> int len); >>   /* Copy data to guest physical address, then clean the region. */ >>   unsigned long copy_to_guest_phys_flush_dcache(struct domain *d, >> -                                              paddr_t phys, >> +                                              paddr_t gpa, >>                                                 void *buf, >>                                                 unsigned int len); >> -int access_guest_memory_by_ipa(struct domain *d, paddr_t ipa, void *buf, >> +int access_guest_memory_by_ipa(struct domain *d, paddr_t gpa, void *buf, >>                                  uint32_t size, bool is_write); > > The function namem suggests there would be a parameter called 'ipa'. But > you are renaming it to 'gpa'. In this case, we should either renaming > the parameter in the definition or the function name. > > I am slightly leaning towards the latter because we don't tend to use > 'ipa' very much in Xen (even though this is the Arm official terminology). > >>   #define __raw_copy_to_guest raw_copy_to_guest >> diff --git a/xen/arch/arm/include/asm/irq.h >> b/xen/arch/arm/include/asm/irq.h >> index 11bc85d111..105b33b37d 100644 >> --- a/xen/arch/arm/include/asm/irq.h >> +++ b/xen/arch/arm/include/asm/irq.h >> @@ -76,7 +76,7 @@ void init_IRQ(void); >>   int route_irq_to_guest(struct domain *d, unsigned int virq, >>                          unsigned int irq, const char *devname); >> -int release_guest_irq(struct domain *d, unsigned int irq); >> +int release_guest_irq(struct domain *d, unsigned int virq); >>   void arch_move_irqs(struct vcpu *v); >> diff --git a/xen/arch/arm/include/asm/mm.h >> b/xen/arch/arm/include/asm/mm.h >> index 4262165ce2..d78f7a183a 100644 >> --- a/xen/arch/arm/include/asm/mm.h >> +++ b/xen/arch/arm/include/asm/mm.h >> @@ -225,7 +225,7 @@ extern void setup_directmap_mappings(unsigned long >> base_mfn, unsigned long nr_mf >>   /* Map a frame table to cover physical addresses ps through pe */ >>   extern void setup_frametable_mappings(paddr_t ps, paddr_t pe); >>   /* map a physical range in virtual memory */ >> -void __iomem *ioremap_attr(paddr_t start, size_t len, unsigned int >> attributes); >> +void __iomem *ioremap_attr(paddr_t pa, size_t len, unsigned int >> attributes) > All the ioremap_* prototypes were consistent before this change. I have > a slight preference if we stick we 'start' and therefore rename the > parameter in the definition. But I would be ok with 'pa' so long all the > other ioremap_* prototypes are updated accordingly. > >>   static inline void __iomem *ioremap_nocache(paddr_t start, size_t len) >>   { >> diff --git a/xen/arch/arm/include/asm/regs.h >> b/xen/arch/arm/include/asm/regs.h >> index 0693a68131..ef34b38aa1 100644 >> --- a/xen/arch/arm/include/asm/regs.h >> +++ b/xen/arch/arm/include/asm/regs.h >> @@ -58,7 +58,7 @@ static inline bool guest_mode(const struct >> cpu_user_regs *r) >>   } >>   register_t get_user_reg(struct cpu_user_regs *regs, int reg); >> -void set_user_reg(struct cpu_user_regs *regs, int reg, register_t val); >> +void set_user_reg(struct cpu_user_regs *regs, int reg, register_t >> value); >>   #endif >> diff --git a/xen/arch/arm/include/asm/vgic.h >> b/xen/arch/arm/include/asm/vgic.h >> index 328fd46d1b..aa9f49409e 100644 >> --- a/xen/arch/arm/include/asm/vgic.h >> +++ b/xen/arch/arm/include/asm/vgic.h >> @@ -355,8 +355,8 @@ bool vgic_evtchn_irq_pending(struct vcpu *v); >>   int domain_vgic_register(struct domain *d, int *mmio_count); >>   int domain_vgic_init(struct domain *d, unsigned int nr_spis); >>   void domain_vgic_free(struct domain *d); >> -int vcpu_vgic_init(struct vcpu *vcpu); >> -int vcpu_vgic_free(struct vcpu *vcpu); >> +int vcpu_vgic_init(struct vcpu *v); >> +int vcpu_vgic_free(struct vcpu *v); >>   void vgic_inject_irq(struct domain *d, struct vcpu *v, unsigned int >> virq, >>                        bool level); > > Cheers, > Hello Julien, my original intention was to minimize the amount of modified code without touching the definitions, however, I can apply your suggested changes adapting definitions to declarations when the context requires it. Regards -- Federico Serafini, M.Sc. Software Engineer, BUGSENG (http://bugseng.com) From xen-devel-bounces@lists.xenproject.org Thu Jun 22 09:53:34 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 09:53:34 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553466.864031 (Exim 4.92) (envelope-from ) id 1qCH05-0007lu-O9; Thu, 22 Jun 2023 09:53:13 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553466.864031; Thu, 22 Jun 2023 09:53:13 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCH05-0007ln-LS; Thu, 22 Jun 2023 09:53:13 +0000 Received: by outflank-mailman (input) for mailman id 553466; Thu, 22 Jun 2023 09:53:13 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCH05-0007lh-0c for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 09:53:13 +0000 Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 978de6d2-10e2-11ee-8611-37d641c3527e; Thu, 22 Jun 2023 11:53:08 +0200 (CEST) Received: from [172.20.10.2] (unknown [37.160.126.171]) by support.bugseng.com (Postfix) with ESMTPSA id 4A9E44EE0737; Thu, 22 Jun 2023 11:53:07 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 978de6d2-10e2-11ee-8611-37d641c3527e Message-ID: <2a766c08-3418-c9be-49f0-691366cb8ee5@bugseng.com> Date: Thu, 22 Jun 2023 11:53:06 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [XEN PATCH] xen/arm: fixed violations of MISRA C:2012 R8.3 on parameter names. Content-Language: en-US To: Michal Orzel , Julien Grall , xen-devel@lists.xenproject.org Cc: consulting@bugseng.com, Stefano Stabellini , Bertrand Marquis , Volodymyr Babchuk , Xenia Ragiadakou , Ayan Kumar Halder References: <7a48c49e-2998-9e34-45ef-a1c3431fbffe@xen.org> From: Federico Serafini Organization: BUGSENG srl In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit On 22/06/23 10:50, Michal Orzel wrote: >>> diff --git a/xen/arch/arm/include/asm/vgic.h b/xen/arch/arm/include/asm/vgic.h >>> index 328fd46d1b..aa9f49409e 100644 >>> --- a/xen/arch/arm/include/asm/vgic.h >>> +++ b/xen/arch/arm/include/asm/vgic.h >>> @@ -355,8 +355,8 @@ bool vgic_evtchn_irq_pending(struct vcpu *v); >>> int domain_vgic_register(struct domain *d, int *mmio_count); >>> int domain_vgic_init(struct domain *d, unsigned int nr_spis); >>> void domain_vgic_free(struct domain *d); >>> -int vcpu_vgic_init(struct vcpu *vcpu); >>> -int vcpu_vgic_free(struct vcpu *vcpu); >>> +int vcpu_vgic_init(struct vcpu *v); >>> +int vcpu_vgic_free(struct vcpu *v); > I know that new VGIC (files under arch/arm/vgic/) is not covered by the MISRA work, but > functions there reuse the same prototypes. So by changing the parameter names here, we > should also change the names in the following definitions for consistency: > https://xenbits.xen.org/gitweb/?p=xen.git;a=blob;f=xen/arch/arm/vgic/vgic-init.c;h=ea739d081e7879b44c4b05c862ad32c301105732;hb=HEAD#l201 > https://xenbits.xen.org/gitweb/?p=xen.git;a=blob;f=xen/arch/arm/vgic/vgic-init.c;h=ea739d081e7879b44c4b05c862ad32c301105732;hb=HEAD#l242 > > I can do this by myself although it would be simpler to have all in one patch. > > ~Michal Hello Michal, I can do it. Regards -- Federico Serafini, M.Sc. Software Engineer, BUGSENG (http://bugseng.com) From xen-devel-bounces@lists.xenproject.org Thu Jun 22 10:02:15 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 10:02:15 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553473.864041 (Exim 4.92) (envelope-from ) id 1qCH8j-0000vg-KG; Thu, 22 Jun 2023 10:02:09 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553473.864041; Thu, 22 Jun 2023 10:02:09 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCH8j-0000vZ-GF; Thu, 22 Jun 2023 10:02:09 +0000 Received: by outflank-mailman (input) for mailman id 553473; Thu, 22 Jun 2023 10:02:08 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCH8i-0000vT-5y for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 10:02:08 +0000 Received: from esa3.hc3370-68.iphmx.com (esa3.hc3370-68.iphmx.com [216.71.145.155]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id d647480a-10e3-11ee-8611-37d641c3527e; Thu, 22 Jun 2023 12:02:05 +0200 (CEST) Received: from mail-bn8nam12lp2171.outbound.protection.outlook.com (HELO NAM12-BN8-obe.outbound.protection.outlook.com) ([104.47.55.171]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 22 Jun 2023 06:02:00 -0400 Received: from SA2PR03MB5881.namprd03.prod.outlook.com (2603:10b6:806:11d::18) by PH0PR03MB7160.namprd03.prod.outlook.com (2603:10b6:510:294::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.44; Thu, 22 Jun 2023 10:01:55 +0000 Received: from SA2PR03MB5881.namprd03.prod.outlook.com ([fe80::6646:2936:9a61:97b4]) by SA2PR03MB5881.namprd03.prod.outlook.com ([fe80::6646:2936:9a61:97b4%4]) with mapi id 15.20.6521.024; Thu, 22 Jun 2023 10:01:55 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: d647480a-10e3-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1687428125; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-id:content-transfer-encoding: mime-version; bh=IXE/YD8684+0fw2ydjJowhNGE1JxvY9C6qEH/ogslGw=; b=RBivewYV1npfBe4tFpC/7s9LUisouwfndiLYry/4bHOxNX2hVWK46R9t a7Waj0b2U6tghfHfoTIZ1+Ic5u4f1+YOId3GVHm5EHl0dcc0pdF3DyzJu 5aKTOrLGfzR08m74bllbMOYBRIBJa7RFPph1dxFUYEra7Rx0W7JH31Om6 Y=; X-IronPort-RemoteIP: 104.47.55.171 X-IronPort-MID: 113749965 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:gGt8Pq6I3Tke4LAlfGSpbwxRtDzHchMFZxGqfqrLsTDasY5as4F+v mMeXWqCM6mKa2L0etgjYdzgpkkG6JGGyNA3SlA5q31jHi5G8cbLO4+Ufxz6V8+wwm8vb2o8t plDNYOQRCwQZiWBzvt4GuG59RGQ7YnRGvynTraCYnsrLeNdYH9JoQp5nOIkiZJfj9G8Agec0 fv/uMSaM1K+s9JOGjt8B5mr9lU35JwehBtC5gZlPa4R5geE/5UoJMl3yZ+ZfiOQrrZ8RoZWd 86bpJml82XQ+QsaC9/Nut4XpWVTH9Y+lSDX4pZnc/DKbipq/0Te4Y5iXBYoUm9Fii3hojxE4 I4lWapc6+seFvakdOw1C3G0GszlVEFM0OevzXOX6aR/w6BaGpdFLjoH4EweZOUlFuhL7W5my tkYNyESQUm/1qGU+LKDF/RmqcsSBZy+VG8fkikIITDxK98DGMqGaYOaoNhS0XE3m9xEGuvYa 4wBcz1zYR/cYhpJfFAKFJY5m+TujX76G9FagAvN+exrvC6OkUooj+GF3Nn9I7RmQe1tk1zej GPC5GnRCRAGLt2PjzGC9xpAg8eWxHikBNNDSuDQGvhCgF2BzzUrVjYqTgGrv+OLhU67QIttJ BlBksYphe1onKCxdfHlUgG1umysvxgSQdNcHuQ2rgaXxcL85xuFAUAHQyRHZdhgs9U5LRQ22 VuZt9foAyFzqrqTSGLb+rr8hTazPycSBXUPaS8NUU0O5NyLiIsrphvLT9tlQOi5g7XdFTjuz naKpS4lirM7ic8NyrX9/FbbjjbqrZ/MJiYltlv/XW+/6A59Iom/aOSA6UDSxeRRMIGDCFKGu RAsmceE6/sVJYqQjyHLS+IIdJmy/OqMOjDYhV9pHrEi+i6r9nrleppfiBl5IEpqKc8CdSXef F7IuQhR6ZlQO1OndaZyJYm2DqwCyanmCMSgVf3OaNdKSoZ+eRXB/yx0Y0OUmWf3nyAEgaw5f JuWb8uoJXIbErh8iiq7Qf8H1r0mzTx4wnncLa0X1Dyi2LuaIXSTGbEMNQLUavhjtfzd5gLI7 9xYKs2GjQ1FV/HzaTXW9ohVKk0WKX88Btb9rMk/mvO/HzeK0VoJU5f5qY7NsaQ+90iJvo8kJ k2AZ3I= IronPort-HdrOrdr: A9a23:BKHo66oMXVk1sIRrIoLTymAaV5rbeYIsimQD101hICG9Evb0qy nOpoV+6faQslwssR4b9uxoVJPvfZq+z+8R3WByB8bAYOCOggLBQL2Ki7GC/9SJIUbDH4VmpM VdmsZFaOEYdmIK6voT4GODYqodKNvsytHWuQ8JpU0dMz2DaMtbnnZE4h7wKDwReOHfb6BJbq Z14KB81kOdUEVSVOuXLF8fUdPOotXa/aiWHCLvV3YcmXGzZSrD0s+ALySl X-Talos-CUID: 9a23:8MimV26hm7vwU3z29tssy2sUBdE6XSThnTTyG0+AVHtjZ7KkYArF X-Talos-MUID: 9a23:QGed7gWC4t7Sixvq/D/sljg7DJlD37/0GF4Xo5oGvtLdByMlbg== X-IronPort-AV: E=Sophos;i="6.00,263,1681185600"; d="scan'208";a="113749965" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=XPT7brvBUkvIjaaEDN8ghOW3dCwEeEBkT5F8xeYzbXCCyUfNMBL2pA2+ok+bRmm1rFkdn1MZd1eS3MnYFqDrO3V8j/Pow0WxTY6jxJI9NS5k0lFBQBhzW+zR85j3F0fvEalEBpQb1LIqNaChOUEQCs7WXgRoZpyaSIFnMREAszUMBihAUWUli0/9OYTPGXKwz0BYz1QQKU5UsxZhBmjjgMtsvJGhz/srJiwnf9AwT2ci/2GXtWSlQA1Xc4STOX3E6HinyeAkoLpSzJNbEpfdJAgzX+u34xfWQ22caGMe16IOIxz6hdbjPJIiMXlW+ufegFtTk6Tilfd3eTbluzwIcg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=IXE/YD8684+0fw2ydjJowhNGE1JxvY9C6qEH/ogslGw=; b=AZm/3OwRw/jK7IGJqq+oN1d3OyBtWCs/CZD/jLKnAfAaRYJHzNnQwQUYjJdhAetqgQx7t7dcHZHX0BSlW7SSCS8RpBLKy3PTS6P1vWlygTqJ1W3SsmQCkYRWUIUscl0kK8tnYLJbsjai1AOyZ6fPdRe8SseKpLYVOuDXij1WggU/RhtQXrEbHlxpo5DaRF/f9ArLTF9yNnCEoTTpG+VBOjnt35uF8hDI606Rz9NAEwIr6UgI56A0z5a+MeBuE0COXeGSAv9Ee6cUC9kdX0hLNeUQoJM/EBQj9TkWIAcpByGhV0BKrWZ6yNZWWynJttEk/Szgt7YnzbfZyE9Qz71A5w== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=IXE/YD8684+0fw2ydjJowhNGE1JxvY9C6qEH/ogslGw=; b=dH/oeqwZ003iN8TGiQq6ZOYRFqzT5HKcBAwazWlqNjAOMND6b1e5XW7TQWpjH6CR9g8UwIiq1BLF5ZIHxIQKq9Jd6hKl9AW0BNzBMkreL0VKxxhKS3p40TbJdQDDxS7gwBmVp/PSniIOs8+BleVFJDaYOc3MihM/nRoXgTaWn+0= From: Per Bilse To: Peter Zijlstra CC: Andy Lutomirski , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , "maintainer:X86 ARCHITECTURE (32-BIT AND 64-BIT)" , "H. Peter Anvin" , Juergen Gross , Stefano Stabellini , Oleksandr Tyshchenko , "open list:X86 ENTRY CODE" , "moderated list:XEN HYPERVISOR INTERFACE" Subject: Re: [PATCH] Updates to Xen hypercall preemption Thread-Topic: [PATCH] Updates to Xen hypercall preemption Thread-Index: AQHZpFMl91hHG7ZDuUq21h7QjP0mVK+VdZEAgAAsiICAAAxVgIAA6kGA Date: Thu, 22 Jun 2023 10:01:55 +0000 Message-ID: References: <20230621151442.2152425-1-per.bilse@citrix.com> <20230621164038.GM2053369@hirez.programming.kicks-ass.net> <6523f3e2-8dfc-c2dd-6d14-9e0c3ac93cc8@citrix.com> <20230621200409.GC4253@hirez.programming.kicks-ass.net> In-Reply-To: <20230621200409.GC4253@hirez.programming.kicks-ass.net> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: SA2PR03MB5881:EE_|PH0PR03MB7160:EE_ x-ms-office365-filtering-correlation-id: f089e7d5-7ee7-4d54-76d9-08db7307b5a9 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: u1gu/eD3mXq/AXt3M7Tqymjh6rdbrjjuqAkFtZCRVZ3nxcji9E6hRUilD4FJAQmotRCcwa8MBMPXs66/+e+fNd+n07Td6bk6h+wZL0lKBQ/c4vAEqgBp5Brs1Cq1LrK0kAveVoZL1xbuUvbQISdas3/N17u9vDKz+Xy0u7wZgSebk/vE5ktyG+/iZC7ZLgSO379k5E1kZaddGLIoazshc9GE4DY3EkTkysMAXk2AP+Ald6it7UdZrSRhREUsb6Ep7jZZKIdu3Lp7u/8ARt1E8wvVV1ptj/huLtzLU8a6VQvKmXartrNL2pL772+qXNoIcxYMG3kpQ/WnOb8e24z9CGstqQd1X2K7RikrvAL4QtMNbUxaWTrJHQZLNabPRsTl1QmVB1uB0Ub3URv/ge3tQ3xGRaRtnTFZn4/olVECx/FAKTaf5GRhA63nh8cvmdDcfBHfTyEsSMx2U52H048kI6hNfBQu4d4kEMNTfNVXnwBjiSO8ceX5KcVzcflOIVu1KnObVlbuXRZ+qJd5KBFeHrO/2dxv/10sE5O3UFOh8qaERZL8AYnXQUgXylPl8SfhrDIb0lRwp9uee7cULo9Ep2TNF5Bz1jIHIDuqYS8GcFkmSCwf6F11g3KkqUx5McLo2dZQ0YGRvXDTniuSNci3pw== x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SA2PR03MB5881.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(396003)(346002)(376002)(136003)(366004)(39860400002)(451199021)(41300700001)(15650500001)(5660300002)(71200400001)(2906002)(31686004)(316002)(8936002)(7416002)(8676002)(91956017)(66476007)(76116006)(4326008)(66946007)(6916009)(54906003)(478600001)(36756003)(86362001)(31696002)(38100700002)(53546011)(64756008)(66446008)(122000001)(2616005)(55236004)(66556008)(82960400001)(83380400001)(38070700005)(26005)(6486002)(186003)(6512007)(6506007)(45980500001);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?WlBOYzlqV0xaQVNVZGZEci9Bb00vNzdCMG1ZbU9YSWZBZ1NyN2pwTXdmYzFm?= =?utf-8?B?aU5uWklwNGZuZzFNSVJpbWJTTjZVdlg2OXdGMytQbjl4eTJXUDZHMTJMeStE?= =?utf-8?B?eTYzNVEwdHZ1bVYrdnk1SHZqS1g5dGxLV1dIT0ZQNTdXVzdxVHI4WWd0UDJT?= =?utf-8?B?MHdwQ3p3bU9zUkFTcXRXQVBpV2dBZEozeGFhYWRoL3RhVXZxbmtQSjJPa2VL?= =?utf-8?B?L0xQL280emxhWXptMlA3dGtOOC9SR3BUWlBjQlJGbmNkc3V4SENFaG5UZHRP?= =?utf-8?B?Wi9Ib3FZZGkzMWRoRU1FZDhablpGRkVrbEtxRnFBd0U2T1JKeTlsTlZuMk5R?= =?utf-8?B?WjBwU2lsOGJnTUh3NTJxNCtTQUVhSno0SlVZQ1o3Q29XK25CeTVBMzRxRkFn?= =?utf-8?B?SHozR0xFejJHVlZ1ZDRYQ21wUzJpRnNQaDVYWUJpZFpYNW51S3N4Kzlab0Vo?= =?utf-8?B?YTVyNGtLdkNVRXhhc3JEWkFiaFJ6MW1nUVFwenp3WGZnemlEd1hBbElCeWpL?= =?utf-8?B?U1gvZDNjdk56L3haUDFnUEFTMzRadXBJZTNJMldIUDZGSkczSklNL2pxRTRU?= =?utf-8?B?aGRkTitYNWk4aHU2MzZDNkFpT0lFdHFsdllmT211UVdXSWNaRGs0c09zWTFD?= =?utf-8?B?TCtNSGMyajRTRU1tbGdWcVhsMjdKbXlGY3lBR1JtTU5BcjcybHpscmUzVnl5?= =?utf-8?B?WkFmczRzZlJoRWN5N3VVY05rN0hrbURMcXozZHNSY1crMklaeEtiZXZxb2dW?= =?utf-8?B?WVcraSs0Rjh3bjJGa2xFTVQ3SUZtaUxRN1h6aThwTmhXZHVPWnBXbWZBaWpX?= =?utf-8?B?Y05zUzlhUWdPaHhpU0xNU3JIdGtjaFVoRFBGYS9jNFA1dkNZeGlQTVU4ZjR6?= =?utf-8?B?QlJzL3REU3hwdHBNTWpOajRwRGVxaWR0NVg5V0hCZ29SR2RnL3hsd2tXNktj?= =?utf-8?B?V202Tndac05xVzVadCtZZGpoMUhIaG9PSGloZGljZXlQeGo5QmJHOG0wTWV5?= =?utf-8?B?VHhUa2VwTW5lOVN0RnBNZk5pSTFQclo2WFJzN3pzZXVaeXJsbSt5Vm5iYTV1?= =?utf-8?B?MWUzcDFsSzlBSnFDVVlKaVBMQWhoN1Y5SFB6Z0MyemVUZSt5TUhSbUVCalFF?= =?utf-8?B?YjZmMEVBNVRUWkdLMTVUenQ2MVpxN21VUkVtNGtEL09ENjEwem1sV2lEL3NY?= =?utf-8?B?WXVoMEFXWlhxZEpmSU1KQVlzNytPUERzblIxQ0JOV09NWWxjdlB1YjU3QWVB?= =?utf-8?B?MGYvM3UrdjNTM1VadFViQ09uVGNLZjVwdm1kYnZTUzlUTzg5c3l6R1ZsNU15?= =?utf-8?B?dDU4MWVNZ0thMFhsbUdEaWhjcWJyMGFwMS9GV24wTTZUWFVZTnVtelN5QTht?= =?utf-8?B?cHlLOTJrVUFROHVlaWhXQkxHL1FzUlkwMTljbm1DVkwvaDIvQjRuRUVzZ3Rn?= =?utf-8?B?MlRuYUxVaVdYMi9oeW1HdzhZdlRiWVBJUVFkMit0SUZDdy9sN0VJQ05tTUdl?= =?utf-8?B?M1llOUsxR3RIbnRSbkZ1ZFUyTjJuV3lkYUJ3WGFTbVFXSjVvaXk2cWxCN1dU?= =?utf-8?B?cWJUTTZHVWtEVXVpOGp5ZTQ0cHhXQWROZktUL1V6RmhBb1FsVk1ETytDMnVv?= =?utf-8?B?dkVORXI2blU2V2Z0OFJid3pCb1J1Zm5HZ0dZdGJiY1o1UXc1Z2kxWGMrVGhD?= =?utf-8?B?WkRLMmxzRCtWM08zRHk5MkVGNjlOTHA3eTVnNWxqcWZnQTVpcG13enRyeVBr?= =?utf-8?B?d2F0Wk9XdGtGdmVpMVh1TjFpd1FVWUFqc0IxcEpvWFMzQXZFZnh2UWdVdlVJ?= =?utf-8?B?Ni93Q3cyaXRKSm14YjkrWjVONUxyRjc2bzdGRThLTnNkUWNCUXlxVVlYVm5B?= =?utf-8?B?bmRvalptbU9yZUVwR2l0NXd3K1JjcEZLUFNWc0kyWVpyQ0Q4bSt3eFhuakk3?= =?utf-8?B?SE53Q3JHRGlVMzVKWHdZNnIrOG5RcVIvdE9saEJibjRxQVpQK1l0U09RSFIr?= =?utf-8?B?WkF1VzVxR2hVYVV2Y0gzMkNlL2lLdHdWby9zZ1lBVGJjRDNHbURGcXBSS3Yw?= =?utf-8?B?RE5JSVZiTUV1bVVJVGtIQlQ5THRzdW5jSjJvUzRJUHo5aXp4SDNtd3NRS1Mx?= =?utf-8?Q?64Vs=3D?= Content-Type: text/plain; charset="utf-8" Content-ID: Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: =?utf-8?B?dFpZNlE4cmVLdlFzRytqQnMwMWpSYzdwR1F0elZrTnk1NHBiUlNYZzFLczlV?= =?utf-8?B?SjV5VXZuTlBQdjZFRGFSUlo5dGNKWVowcUdHdGNuVnIwNm5FeXdzdExpZEhC?= =?utf-8?B?RldLREdnK0Q5bTBGTUVDWEpmaFF1VGw2T3AzVjZSNFR3TExkUlpDUkI0Q05P?= =?utf-8?B?ZWdjZ0haa0tBbWZuL2IvblhTQWpIYjZsS2tMREMwc09XNFpRc0p4bDVwOXhz?= =?utf-8?B?b3hoUS9OeENBR3dPbGx5SW9nRFFQQW1ZdnlFMFJQZzNOb3BCZmZHeGNEVzFC?= =?utf-8?B?RkdWdUI0Mk5sS1EvbHJiR0ZWcWZIK0RhdkIyYmtEOXlVRkJsTUt6TGxoVFFs?= =?utf-8?B?bUdWUlJmbDlEZDNkUEM2RDB4M1dJa2JCVUpLL0FOcWtUOTdJUkxOa2N6cTJt?= =?utf-8?B?bnhLQ3JKUVpWbDA2Q0Vzdk0wSkRqNEFqcXdYZ1REem03ZGZndVpUbjdraWZG?= =?utf-8?B?WlJSR3puYXE1SFYrL2lqNGR1M3NieElUMEhQTFU1UzA2QVRvWTViUW9CQkd5?= =?utf-8?B?QVJUcUNUK2ZzQkZXU01kUG11S05IckpFeDhoUjRSVWlXVG1yN0RCSEt2cU85?= =?utf-8?B?T1lpWkpyeW5TK3lRZ3R0MDlnUmluZU9rUUNwQWNCcWQ2L1VFaExOamo3R0xl?= =?utf-8?B?TFV2aGtTdysyRUh0elFsVFIwcVo1eTd5ellaVUpMYkdodzlsdVlVaEVHS2FE?= =?utf-8?B?Ni81dUp2TlJaTG1QREhkbm5CUm1Sb3dROEJmUlcva1NKSzg5U3Z5c1pJK3RX?= =?utf-8?B?VWMralRDZGg0bzR2RWZTSXF3SmdZRG54bGNrOEtzRjVUNEo3T2ZvSmhaTTUr?= =?utf-8?B?eXlyYUVweHQ2REhiWXZMT1N4ZFUyVUNOUVZsdFptVmozRzlwWnNmVUlyQ0tJ?= =?utf-8?B?c1hIczVNVjJCeHd2aWFLRHoyZndFQ1VNYW5TeHMzeFJFZW9TVDFSeDlqcGxv?= =?utf-8?B?ckprQlhyM1F5dkJXT29BTTF1bVlvLzF5ZStZa0VoYmlnUlVTbUtWbVRDRFA2?= =?utf-8?B?SWpWNXNUNWpYSWthenFUT1IzSzRVWlQ5ejBhTXl2N2d6MEdTaHFxb0FTRlVI?= =?utf-8?B?VFA3NjZEODFndUJBUzJ6eGUvVGF3MHlCc1hiTXlST29qVnRNdk9VN1cwVmFP?= =?utf-8?B?dXhwWk12TWdiR1JwOEhGc3FjRnpmd3JnWnRPclhUelZ6Z0gvT1VpWlZDVXNj?= =?utf-8?B?eGhRSFErRnd1Y3VyMmRML2t6bmF6alQ3akVOVmZReDdndVZhcjRrVURGdzVI?= =?utf-8?B?MmJlL0QveUJZbmNPWEJUV3R4aU41VTMxeFFhd3RJczZXTzdzTW5VcGZvNk9w?= =?utf-8?B?S1hVemJ2cHRsdXI0WFU2Zk1zOFd2VHlEZ3pJMXMwNTByTHlQbjFzR1c2K0NY?= =?utf-8?B?T2syYjRpU3ZHMGlnV0VLbnV6aFRrRm9VMGNIMzVMWHRIUDFmOWpxMjdVYkZt?= =?utf-8?B?RFhnSWNWKzc3ZjhkeFBtcUROL2JmbnVmekhSbkcyaEtjaDRFVzRDMERhcEQv?= =?utf-8?Q?26ZAYE=3D?= X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: SA2PR03MB5881.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: f089e7d5-7ee7-4d54-76d9-08db7307b5a9 X-MS-Exchange-CrossTenant-originalarrivaltime: 22 Jun 2023 10:01:55.2312 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: oHQfntZjve1+a979ZqK0A+Ak3hC1bj59bzMaoafVZBPlp/Hm1vWkcTIuW6o4kOl9f8XOnchlvxhknlbwCB7DTg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR03MB7160 T24gNi8yMS8yMDIzIDk6MDQgUE0sIFBldGVyIFppamxzdHJhIHdyb3RlOg0KPiBPbiBXZWQsIEp1 biAyMSwgMjAyMyBhdCAwNzoxOToyMVBNICswMDAwLCBQZXIgQmlsc2Ugd3JvdGU6DQo+PiBPbiA2 LzIxLzIwMjMgNTo0MCBQTSwgUGV0ZXIgWmlqbHN0cmEgd3JvdGU6DQo+Pj4gSSBkb24ndCB1bmRl cnN0YW5kIGl0IC0tIGZ1bmRhbWVudGFsbHksIGhvdyBjYW4gbGludXggc2NoZWR1bGUgd2hlbiB0 aGUNCj4+PiBndWVzdCBpc24ndCBldmVuIHJ1bm5pbmc/IEh5cGVyY2FsbCB0cmFuc2ZlcnMgY29u dHJvbCB0byB0aGUNCj4+PiBob3N0L2h5cGVydmlzb3IgYW5kIGxlYXZlcyB0aGUgZ3Vlc3Qgc3Vz cGVuZGVkLg0KPj4NCj4+IEhpIFBldGVyLCBhcyBub3RlZCBpbiBlYXJsaWVyIG5vdGUgdG8gQW5k eSwgdGhpcyBpcyBlc3NlbnRpYWxseSBleGlzdGluZw0KPj4gY29kZSB0aGF0IG90aGVyIGNvbW1p dHMgaGF2ZSByZW5kZXJlZCBpbmVmZmVjdGl2ZSBvdmVyIHRpbWUuICBIZW5jZSwNCj4+IHRoZSBm aW5lciBkZXRhaWxzIG9mIGhvdyBvciB3aHkgaXQgd29ya3MgaGF2ZW4ndCBjaGFuZ2VkIHNpbmNl IGl0IHdhcw0KPj4gZmlyc3QgaW50cm9kdWNlZC4NCj4gDQo+IFRoYXQgZG9lc24ndCBtZWFuIHlv dSBkb24ndCBoYXZlIHRvIGV4cGxhaW4gaG93IHN0dWZmIHdvcmtzDQpIaSBQZXRlciwgZmlyc3Qg b2YgYWxsIEkgd2FudCB0byBzYXkgdGhhdCB0aGUgdmlnaWxhbmNlIGFuZCBkZWRpY2F0aW9uDQp5 b3UgYW5kIHNvIG1hbnkgb3RoZXIgcGVvcGxlIHNob3cgZm9yIHRoZSBrZXJuZWwgcHJvamVjdCBh bmQgdGhlDQppbnRlZ3JpdHkgb2YgdGhlIGNvZGUgaXMgaGlnaGx5IGFwcHJlY2lhdGVkLiAgSXQg aXNuJ3Qgc28gdGhhdCAid2UiDQood2hvbWV2ZXIgdGhhdCBtYXkgYmUpIGFyZSBpZ25vcmFudCBv ZiB0aGF0LCBhbmQgSSBoYXZlIHBlcnNvbmFsbHkNCmVuam95ZWQgdGhlIGZyZWVkb21zIG9mIEJT RCwgYW5kIGxhdGVyIExpbnV4LCBzeXN0ZW1zIGZvciBsb25nZXIgdGhhbg0KSSBjYXJlIHRvIHJl bWVtYmVyLiAgVGhlcmUgaXMsIGhvd2V2ZXIsIGEgc2NvcGUgdG8gZXZlcnkgcGF0Y2guDQoNCklu IHRoaXMgY2FzZSB3ZSBjaGFuZ2UgQ09ORklHX1BSRUVNUFRJT04gdG8gQ09ORklHX1BSRUVNUFQg aW4gdHdvDQpwbGFjZXM7IHRoZSBvdGhlciAocXVpdGUgbWlub3IpIGNoYW5nZXMgZm9sbG93IG9u IGZyb20gdGhhdCwgcGFydGx5DQp0byBhdm9pZCBhIHJlcGVhdCBpbiB0aGUgZnV0dXJlLiAgVGhl IGNvZGUgdGhhdCBpcyBlbi0gb3IgZGlzYWJsZWQNCmJ5IHRoaXMgY2hhbmdlIGhhcyBhbHJlYWR5 IGJlZW4gdGhyb3VnaCBhbGwgdGhlIGRzY3Vzc2lvbiwgcmV2aWV3cywNCmNvbnNpZGVyYXRpb25z LCBhbmQgZ25hc2hpbmcgb2YgdGVldGggdGhhdCB0aW1lLWhvbm91cmVkIHRyYWRpdGlvbnMNCnJl cXVpcmUuICBNYXliZSB0aGluZ3Mgd2VyZSBkaWZmZXJlbnQgYXQgdGhlIHRpbWUgaXQgd2FzIGNv bW1pdHRlZCwNCmJ1dCB0aGF0J3Mgbm90aGluZyBuZXcgLS0gYSBmZXcgeWVhcnMgYWdvIEkgd2Fz IGZpeGluZyBJUHY2IGNvZGUNCmZyb20gdGhlIGVuZCBvZiB0aGUgbGFzdCBjZW50dXJ5LCBhbmQg aXQncyBlbnRpcmVseSB1bnN1c3RhaW5hYmxlDQp0byByZXBlYXQgYW5kIHJlaGFzaCBsaWJyYXJp ZXMgb2Ygb2xkIGRpc2N1c3Npb25zIGFuZCBjb2RlIHNpbXBseQ0KYmVjYXVzZSBhbiBpZmRlZiBp cyBjaGFuZ2VkLg0KDQpJbiBhbGwgaXRzIGJydXRhbGl0eSwgdGhlIGN1cnJlbnQgc3RhdGUgb2Yg YWZmYWlycyBpcyB0aGF0IHRoZSBrZXJuZWwNCmhhcyBidWdzIHRoYXQgd2lsbCBjYXVzZSBpdCB0 byBjcmFzaCBvciBvdGhlcndpc2UgbWFsZnVuY3Rpb24gaW4NCmNlcnRhaW4gY2lyY3Vtc3RhbmNl cy4gIFRoZXJlIGlzIGNvZGUgcHJlc2VudCBpbiB0aGUga2VybmVsIHRoYXQgd2lsbA0KcHJldmVu dCB0aGF0LCBidXQgdGhpcyBjb2RlIGhhcyBiZWNvbWUgaW5lZmZlY3RpdmUgZHVlIHRvIG92ZXJz aWdodHMNCmluIGNvbW1pdHMgbWFkZSBzaW5jZSB0aGUgY29kZSB3YXMgaW50cm9kdWNlZC4gIFdl IHRob3VnaHQgaXQgd2FzDQppbiBldmVyeWJvZHkncyBiZXN0IGludGVyZXN0cyB0byBlbnN1cmUg dGhpcyBjb2RlIHdhcyByZS1lbmFibGVkLA0KdGhhdCdzIGFsbC4gIEkgZnVsbHkgc3VwcG9ydCB5 b3UgYW5kIGV2ZXJ5Ym9keSBlbHNlIGluIHlvdXIgZGVzaXJlIHRvDQptYWludGFpbiB0aGUgaGln aGVzdCBwb3NzaWJsZSBzdGFuZGFyZHMsIGFuZCBhcyBJIHNhaWQgdG8gQW5keSB3cnQNCmhpcyBz dWdnZXN0aW9uLCBJJ2xsIHNlZSB3aGF0IEkgY2FuIGRvLiAgSW4gdGhlIG1lYW50aW1lLCBJIGhp Z2hseQ0KcmVjb21tZW5kIG5vdCBzaG9vdGluZyB0aGUgbWVzc2VuZ2VyLg0KDQpCZXN0LA0KDQog ICAtLSBQZXINCg0K From xen-devel-bounces@lists.xenproject.org Thu Jun 22 10:12:51 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 10:12:51 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553478.864051 (Exim 4.92) (envelope-from ) id 1qCHIz-0002RT-Iu; Thu, 22 Jun 2023 10:12:45 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553478.864051; Thu, 22 Jun 2023 10:12:45 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCHIz-0002RM-G7; Thu, 22 Jun 2023 10:12:45 +0000 Received: by outflank-mailman (input) for mailman id 553478; Thu, 22 Jun 2023 10:12:44 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCHIy-0002RG-1M for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 10:12:44 +0000 Received: from EUR05-DB8-obe.outbound.protection.outlook.com (mail-db8eur05on20626.outbound.protection.outlook.com [2a01:111:f400:7e1a::626]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 526cd7a4-10e5-11ee-8611-37d641c3527e; Thu, 22 Jun 2023 12:12:41 +0200 (CEST) Received: from AM6PR10CA0010.EURPRD10.PROD.OUTLOOK.COM (2603:10a6:209:89::23) by AS4PR08MB8218.eurprd08.prod.outlook.com (2603:10a6:20b:51d::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.37; Thu, 22 Jun 2023 10:12:38 +0000 Received: from AM7EUR03FT032.eop-EUR03.prod.protection.outlook.com (2603:10a6:209:89::4) by AM6PR10CA0010.outlook.office365.com (2603:10a6:209:89::23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.24 via Frontend Transport; Thu, 22 Jun 2023 10:12:38 +0000 Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by AM7EUR03FT032.mail.protection.outlook.com (100.127.140.65) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.24 via Frontend Transport; Thu, 22 Jun 2023 10:12:38 +0000 Received: ("Tessian outbound c63645f235c1:v142"); Thu, 22 Jun 2023 10:12:37 +0000 Received: from 813c4aaeb53b.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 669FD37F-BCA1-4BB2-8CF9-685E299AFB2B.1; Thu, 22 Jun 2023 10:12:31 +0000 Received: from EUR05-DB8-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 813c4aaeb53b.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Thu, 22 Jun 2023 10:12:31 +0000 Received: from AM6PR08MB3749.eurprd08.prod.outlook.com (2603:10a6:20b:8f::22) by PR3PR08MB5769.eurprd08.prod.outlook.com (2603:10a6:102:91::24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.23; Thu, 22 Jun 2023 10:12:29 +0000 Received: from AM6PR08MB3749.eurprd08.prod.outlook.com ([fe80::ed0b:5730:a1f9:577b]) by AM6PR08MB3749.eurprd08.prod.outlook.com ([fe80::ed0b:5730:a1f9:577b%5]) with mapi id 15.20.6521.023; Thu, 22 Jun 2023 10:12:29 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 526cd7a4-10e5-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=1ASqtiFG2OOGD2Vw1Of3qidX72CHEs9F+6fAFU5tT44=; b=RrO9Wj4GakcLpgCr5ynLVY5HpRM8UmbiUJU3PiGs3Z0THkUYTXl6ocnYQJ6OIMuODnQvQkCHsN4OARmklzBcDQSvg9aTQt6AKIDb2juqd4fHSay8zqTsMBaHKat0t8nEAc72A6+WVeOsfgcyqcAUqdaOmSBkDLAPY1y2ljv18wk= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C X-CheckRecipientChecked: true X-CR-MTA-CID: 7cf84c847d1c271e X-CR-MTA-TID: 64aa7808 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=VWgBLIUaFd89FW2Ll8L9naeTYhLkVor0WnTY24Vj7LgNPezMYLWu6s31fB50/1W5G6kSjj6KtgRTMk/lBv2R/mKgLHOCE33FpuDW1v1rAAQDJoEVjj+v1Zsk6n+A0f3LXPfYYambtFSKQRvuOhWNpKBoePSW2MM5K04Yu4i0m9UYyN9RAq7pP8+ST6+OVLF+dO0yE4q5E5UwRO3PaXYaw4lKpO+g5Ljm/Mb4WoV32X8XocBOxopBAuk/lxWtwKQYRJ0uMExC+LzW7ZQaPogVZF0y2pxxOBf1gizq60UhhpmcqonG2pI49dV/RsqweRMvAwPInOoejMBBcS2Q40TE/A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=1ASqtiFG2OOGD2Vw1Of3qidX72CHEs9F+6fAFU5tT44=; b=VQ6oqtIMxCil1XG3FDx1kHV915Az32gB06PLhrpRvP97r7WsFA4UB6g1Fh9raJpDauf+WeWyoTJ/yxFRL2NAa+DVDzCuJgw6WFxqlP1BQCLpHBqpCKAp2yIDBFvgHoWcKCZLs3jUPoURTtRAovv3/GNO5xTZah8ZuJhRRDvrZtmPrup+joMXAi2mfkd+rd2gKsUdWA55WJ/alMlaR9caSl2waDTJgM25eOA/vG9iUVtBnmm1wgkWEvrn+JCOmri8ycpujsjD14hKkP9KGlBNsy+6/hTTtab930shtpvMsZf21Jmh4D8r58w1rjvlqtBGWWJSvvhEtAYd2vkYyfpZiQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=1ASqtiFG2OOGD2Vw1Of3qidX72CHEs9F+6fAFU5tT44=; b=RrO9Wj4GakcLpgCr5ynLVY5HpRM8UmbiUJU3PiGs3Z0THkUYTXl6ocnYQJ6OIMuODnQvQkCHsN4OARmklzBcDQSvg9aTQt6AKIDb2juqd4fHSay8zqTsMBaHKat0t8nEAc72A6+WVeOsfgcyqcAUqdaOmSBkDLAPY1y2ljv18wk= From: Luca Fancellu To: Peter Hoyes CC: Xen-devel , Bertrand Marquis , Wei Chen , Wei Liu , Anthony PERARD Subject: Re: [PATCH 1/2] tools/console: Add escape argument to configure escape character Thread-Topic: [PATCH 1/2] tools/console: Add escape argument to configure escape character Thread-Index: AQHZpPF3QpbD+YTBNUSeBQYgOGD68a+WmikA Date: Thu, 22 Jun 2023 10:12:29 +0000 Message-ID: References: <20230614074144.3505250-1-peter.hoyes@arm.com> In-Reply-To: <20230614074144.3505250-1-peter.hoyes@arm.com> Accept-Language: en-GB, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-mailer: Apple Mail (2.3731.600.7) Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-traffictypediagnostic: AM6PR08MB3749:EE_|PR3PR08MB5769:EE_|AM7EUR03FT032:EE_|AS4PR08MB8218:EE_ X-MS-Office365-Filtering-Correlation-Id: 843d97a4-7ba3-4598-02e7-08db730934e5 x-checkrecipientrouted: true nodisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: FHI1anpKej+6Ppd4a1UJy4k8FTwPiF/udwRF+0ugtvcXdPNJ6HLMWtfa2NCW0vDCl6CXN+xILAtmNK9tWDUJ42koDtCfQxKp7SbIrDkwPkBvhtx/RNZMHeR3UgK93odlg0Ly8Yeq6x5OTR3e0JkhztcMGoph4znjKGomqUhamF9FmA4oZ2nWZ6sP5FN2P3gJDjzDL6+b2K+4V5ru9nMbzgLLz19X0VNrlOGNfPh9wfO9smev5rkwfKNyD7V1c4nrPPILMhkRWnJQwPHKw5LFxNa0dSVZdbvGSk3wcBrbK1uStLVZQ1KjjyVi0Clr67KnRhsE6e4t4rffS4u60JYwT5Usn2se8qg56P0YaUxhKue9mgFSjH39FsX/lewfeRFqwuEzhhtVKikmazRyJUiZ9fviM010f4x9TlScRlt2Zc6o+cXlpKqqQNwIpw/7e2Ir5ob2vGSxKtbz7YvE/L0bphcupy0tQeD98WuDHz5ol18L/yW1oMmpxmCt1Qra7MD/OSe5VRKk/73hkSCqan7C1uV3ftZ+OYSZT2Ig2aZ+6l1fwg4cvjkXFR5L2/kRzrgr0Gv6LxE+lmCL4ZhxRYiUoC+Gv4D+CkTHYn0ajpKUBj+P3Kvo7CkSlJNp56QyXGOxWyHFyFKYb08wLzgTY74cjw== X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM6PR08MB3749.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(136003)(376002)(396003)(39860400002)(346002)(366004)(451199021)(33656002)(6486002)(26005)(478600001)(71200400001)(54906003)(37006003)(83380400001)(2616005)(186003)(2906002)(53546011)(6506007)(66446008)(6512007)(6862004)(5660300002)(36756003)(66556008)(122000001)(76116006)(38100700002)(316002)(91956017)(6636002)(8936002)(66946007)(41300700001)(64756008)(4326008)(8676002)(66476007)(86362001)(38070700005)(45980500001);DIR:OUT;SFP:1101; Content-Type: text/plain; charset="utf-8" Content-ID: Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: PR3PR08MB5769 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: AM7EUR03FT032.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: 3c958e47-c933-41a9-306b-08db73092f97 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: b4omyOmQy7bYSrMcWRd5V5TaaTefJYgl6BdR4AWjg4/7htqbZI1TvEun7sOWZONF0FEiWUUNkxt9rxLKSa9LGsDPCyFBsJQFuxtvSiz90S2GDSd4DluPCAooVvaFVuDd0Omk/XBIAg6FVIWnosms1nLyDVLbITrGbKOKwZ2D5Kl/YEKhsWuiWfBd8H6Jt/6UR9QAFzDU03qlncrhSuwUVP54WwNHZKGVHcWp8EuW1lsJWa4BYeSFwFDYFKWnBHPiBzpgEbZGx7atWizVOE0b+VJdF2PGD060JliZKTB286f0VT9dpGE780izC27u08pDdCIlBKZKYMTHYczXK/RwBYwOHiWdj+wbED+XfqucQbf7qqxPiv0JMHcPgcNH9a4+rFQcN+8XozKJchuyl9wBhEs2MYiTY4P+RBZ/PD2HU4sMOYCWCE1J5jknytMbQgjiJhmzoLlBJbWMXr6zD+7uONfY8SxWNtKYTxO7yfP65PR0dcbNsa1693YckR4s/w2zCYXaJW0F3tjccKsVwtdZ7YZTVsjsXKfpm94XwSta3k2VIXf/468FTJa8FhQvMZo4n4zBzeW3rBe4wU2PDgVMUh5ZlSbMoqW9mseD7zm0gYfNY+crm4tlvkQK5yczXQNe9Rz85kTuAX+BRjK+RHUGBA2evtEOa8B04RY7DCDnFKOTe6ecm9OjdCNhfJ0pSWiY1lcn7FLf7TPn6wRiDEV5S96JRy2zUx5701AZOBhjwbpXYm2Ui498sQrJitOI4uEz X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(376002)(396003)(136003)(346002)(451199021)(40470700004)(46966006)(36840700001)(82740400003)(40460700003)(41300700001)(8936002)(8676002)(82310400005)(81166007)(356005)(2616005)(83380400001)(336012)(6512007)(186003)(26005)(107886003)(53546011)(478600001)(6486002)(47076005)(54906003)(37006003)(86362001)(40480700001)(4326008)(36756003)(316002)(70206006)(6636002)(33656002)(6506007)(36860700001)(70586007)(2906002)(6862004)(5660300002);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 22 Jun 2023 10:12:38.1912 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 843d97a4-7ba3-4598-02e7-08db730934e5 X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: AM7EUR03FT032.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS4PR08MB8218 DQoNCj4gT24gMTQgSnVuIDIwMjMsIGF0IDA4OjQxLCBQZXRlciBIb3llcyA8UGV0ZXIuSG95ZXNA YXJtLmNvbT4gd3JvdGU6DQo+IA0KPiBGcm9tOiBQZXRlciBIb3llcyA8UGV0ZXIuSG95ZXNAYXJt LmNvbT4NCj4gDQo+IERvbTAgbWF5IGJlIGFjY2Vzc2VkIHZpYSB0ZWxuZXQsIG1lYW5pbmcgdGhl IGRlZmF1bHQgZXNjYXBlIGNoYXJhY3Rlcg0KPiAod2hpY2ggaXMgdGhlIHNhbWUgYXMgdGVsbmV0 J3MpIGNhbm5vdCBiZSBkaXJlY3RseSB1c2VkIHRvIGV4aXQgdGhlDQo+IGNvbnNvbGUuIEl0IHdv dWxkIGJlIGhlbHBmdWwgdG8gbWFrZSB0aGUgZXNjYXBlIGNoYXJhY3RlciBjdXN0b21pemFibGUN Cj4gaW4gc3VjaCB1c2UgY2FzZXMuDQo+IA0KPiBBZGQgLS1lc2NhcGUgYXJndW1lbnQgdG8gY29u c29sZSB0b29sIGZvciB0aGlzIHB1cnBvc2UuDQo+IA0KPiBDcmVhdGUgcGFyc2VfZXNjYXBlX2No YXJhY3RlciBzdGF0aWMgZnVuY3Rpb24gdG8gY29udmVydCBhIGNoYXJhY3Rlcg0KPiBzdHJpbmcg KHdoaWNoIG1heSBpbmNsdWRlIGEgJ14nIG1vZGlmaWVyKSBpbnRvIGFuIEFOU0kgaW50ZWdlci4N Cj4gDQo+IEFkZCBhcmd1bWVudCB0byBnZXRvcHQgb3B0aW9ucywgcGFyc2UgZXNjYXBlIGNoYXJh Y3RlciBhbmQgcGFzcyB2YWx1ZQ0KPiB0byBjb25zb2xlX2xvb3AuDQo+IA0KPiBJZiAtLWVzY2Fw ZSBpcyBub3Qgc3BlY2lmaWVkLCBpdCBmYWxscyBiYWNrIHRvIHRoZSBleGlzdGluZyBiZWhhdmlv cg0KPiB1c2luZyBERUZBVUxUX0VTQ0FQRV9TRVFVRU5DRS4NCj4gDQo+IElzc3VlLUlkOiBTQ00t NDk1OA0KPiBTaWduZWQtb2ZmLWJ5OiBQZXRlciBIb3llcyA8UGV0ZXIuSG95ZXNAYXJtLmNvbT4N Cj4gQ2hhbmdlLUlkOiBJMzc5NWU2NTRiMzgyZTc4MTQ0ZDgyMTBmMzAzZTNlYmNjZWM0NTdlZA0K DQpIaSBQZXRlciwNCg0KSGVyZSBpbiBYZW4tZGV2ZWwgdGhlIHBhdGNoZXMgc2hvdWxkIG5vdCBo YXZlIElzc3VlLUlkIGFuZCBDaGFuZ2UtSWQsDQp0aGV5IGNhbiBiZSBzdHJpcHBlZCBvbiBjb21t aXQgaWYgdGhlIG1haW50YWluZXIgaXMgd2lsbGluZyB0byBkbyBzbywNCm90aGVyd2lzZSB5b3Xi gJlsbCBuZWVkIHRvIHNlbmQgYSB2MiB3aXRoIHRoZSB0YWdzIHJlbW92ZWQuDQoNClRvIG1lIHRo ZSBjb2RlIGxvb2tzIGdvb2QsIHN0aWxsIG5lZWQgYSBtYWludGFpbmVyIHJldmlldyB0aG91Z2gu DQoNClJldmlld2VkLWJ5OiBMdWNhIEZhbmNlbGx1IDxsdWNhLmZhbmNlbGx1QGFybS5jb20+DQoN Cg0K From xen-devel-bounces@lists.xenproject.org Thu Jun 22 10:13:07 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 10:13:07 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553481.864061 (Exim 4.92) (envelope-from ) id 1qCHJL-0002ry-0a; Thu, 22 Jun 2023 10:13:07 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553481.864061; Thu, 22 Jun 2023 10:13:06 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCHJK-0002rn-Tf; Thu, 22 Jun 2023 10:13:06 +0000 Received: by outflank-mailman (input) for mailman id 553481; Thu, 22 Jun 2023 10:13:06 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCHJK-0002RG-I8 for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 10:13:06 +0000 Received: from EUR05-VI1-obe.outbound.protection.outlook.com (mail-vi1eur05on2061d.outbound.protection.outlook.com [2a01:111:f400:7d00::61d]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 6035c11b-10e5-11ee-8611-37d641c3527e; Thu, 22 Jun 2023 12:13:04 +0200 (CEST) Received: from AM6PR0502CA0064.eurprd05.prod.outlook.com (2603:10a6:20b:56::41) by DU0PR08MB10366.eurprd08.prod.outlook.com (2603:10a6:10:40a::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.23; Thu, 22 Jun 2023 10:13:01 +0000 Received: from AM7EUR03FT011.eop-EUR03.prod.protection.outlook.com (2603:10a6:20b:56:cafe::b1) by AM6PR0502CA0064.outlook.office365.com (2603:10a6:20b:56::41) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.24 via Frontend Transport; Thu, 22 Jun 2023 10:13:01 +0000 Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by AM7EUR03FT011.mail.protection.outlook.com (100.127.140.81) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.24 via Frontend Transport; Thu, 22 Jun 2023 10:13:01 +0000 Received: ("Tessian outbound b11b8bb4dfe8:v142"); Thu, 22 Jun 2023 10:13:00 +0000 Received: from a986587a85b2.2 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 2AA197A1-0E77-4B2C-BD86-4E5F85896CB1.1; Thu, 22 Jun 2023 10:12:50 +0000 Received: from EUR05-DB8-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id a986587a85b2.2 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Thu, 22 Jun 2023 10:12:50 +0000 Received: from AM6PR08MB3749.eurprd08.prod.outlook.com (2603:10a6:20b:8f::22) by PR3PR08MB5769.eurprd08.prod.outlook.com (2603:10a6:102:91::24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.23; Thu, 22 Jun 2023 10:12:47 +0000 Received: from AM6PR08MB3749.eurprd08.prod.outlook.com ([fe80::ed0b:5730:a1f9:577b]) by AM6PR08MB3749.eurprd08.prod.outlook.com ([fe80::ed0b:5730:a1f9:577b%5]) with mapi id 15.20.6521.023; Thu, 22 Jun 2023 10:12:47 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 6035c11b-10e5-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=QLknlhEza6pSoQOsSZg5HZmuUJaYWE/0deBbNcnWdjI=; b=5A4ZV0B/X+BHCbrz6Du16vH8JuW226tdJ/CxufumyfLC9Ivggd+2yCIAroH2iQAXu0gg0UsJHfOiu2TiXTdwBRlUWrX37yP3r5df0RO/stoelshyNd6+PHxRVKarJI/UKiuLHEmTWRqg4o2kStrY7RuUPbC1+7Bp11gg6P9TDm4= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C X-CheckRecipientChecked: true X-CR-MTA-CID: 2775960c48166d7e X-CR-MTA-TID: 64aa7808 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=nKZBL0LK9r5nIqpsxnb5MW+wAzlTEir2/zLv1XKF/0SDqy+WUI0RlyATUniE4H7fPV4kCuY9X7hj6kcE4s+3C5gJXxWbTVvLSkJ+dmvl/vXonoTQlp34aGiP+J5P+uCz75McCU14EOiPblHChyisn+AKxKZCqke9GXocHo+r/rwchog7dH+Xa3m6X1+UOsKbizqM1/AgDLet5eTIWuasr2+vdWRrSuAXISC4MdFdz9gnMoOaYqo7gce+b+vBfFHtGbU9nDTTc3G525xO3QiR//ZFdd38YTU6p8LDwPJ5Yf3yqcEE+LjP/smcpcpDSwDtIJs6rp0Uy2LhwtwvnYsSsA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=QLknlhEza6pSoQOsSZg5HZmuUJaYWE/0deBbNcnWdjI=; b=alRhNhDUX2nUwUy4LQhRin+5EseyLqrrWMA44MOrwaF1cLJ+IfO6UeDZcKvSWlJZHj9R+lwPUz1o/ZKhDwEiZ4ZNq7RA2vxJMxSsvprsM4xWUuTkh0bbbI8SOIAuNro28YhO/TAKmnEJTr0DDwdcqs6AcvTeFxHkqVLRDldigDWNUy7gAdjpwfgUH11bJYKW/XI+CsEK5XJjmkFUfuRqR+OyYqkehK2bekPUgWcSBZ/CPA0abhe/YyWQCoumrtqqVkVqLZFvLGFHrWtEsSyUCBf2FpalTszp5CmR+rj8ovBQqs/zBIKBYNS9QpcseFqhZo5haXPhf6hDZMrKu2AUQQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=QLknlhEza6pSoQOsSZg5HZmuUJaYWE/0deBbNcnWdjI=; b=5A4ZV0B/X+BHCbrz6Du16vH8JuW226tdJ/CxufumyfLC9Ivggd+2yCIAroH2iQAXu0gg0UsJHfOiu2TiXTdwBRlUWrX37yP3r5df0RO/stoelshyNd6+PHxRVKarJI/UKiuLHEmTWRqg4o2kStrY7RuUPbC1+7Bp11gg6P9TDm4= From: Luca Fancellu To: Peter Hoyes CC: Xen-devel , Bertrand Marquis , Wei Chen , Wei Liu , Anthony PERARD , Juergen Gross Subject: Re: [PATCH 2/2] xl: Add escape character argument to xl console Thread-Topic: [PATCH 2/2] xl: Add escape character argument to xl console Thread-Index: AQHZpPF4K+MH8OHsUk+nQoVxITkfyq+WmkCA Date: Thu, 22 Jun 2023 10:12:47 +0000 Message-ID: <8D59C7B7-8A52-4C6C-B765-F01246A8124D@arm.com> References: <20230614074144.3505250-1-peter.hoyes@arm.com> <20230614074144.3505250-2-peter.hoyes@arm.com> In-Reply-To: <20230614074144.3505250-2-peter.hoyes@arm.com> Accept-Language: en-GB, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-mailer: Apple Mail (2.3731.600.7) Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-traffictypediagnostic: AM6PR08MB3749:EE_|PR3PR08MB5769:EE_|AM7EUR03FT011:EE_|DU0PR08MB10366:EE_ X-MS-Office365-Filtering-Correlation-Id: 09dfc2ae-8af9-444a-e5f6-08db7309427e x-checkrecipientrouted: true nodisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: uHl8N0GvY8tGxL1R3LKesEjWSHwmecRO75rZxcXTwsyNjxwT0/dKflB8L1emEz2UI9+6tTVmdL3DXIozPIIesoSfNHaAuz6qSRZJwsSLvtVTw53p67WFQK45wAUYpTAkkg+UsJ3I40T6Kv+fcldFnW7i1VRYVTJ5EglVm6MEGct5LXfTfj6I4qorakK+kFY3JnkRZaIxlnTaktHGNLT1CMhx/cRIjMeQ+94N67LBQwKYwhrKLUjUkz7X+GZcfxD1u4OP2RRxXwIXmrUSiL4ztxCWnVISOZxcKogiLxQwRFTjIZYQKnkPK+7+Q+tbHsYL1q5iGnZuXE3QGgx0rV85ZThA0jUMkXJ5WQlFduAruR+nhzfEkWI5egYvO36tXXd9q/eX8uhwizGzAB+8/Gt+ZNY3q7E5gK0uvldH1ludSENM4UvdoVMnUdajkL8ScmblFe/8+/iv1rxKHVK5qN8yhBtHGgW5Z71ejh6afeYNF7mh6nE0FBWsmX19VFwg2/nLPxHiW2UwmtKgPgYpZ6RxC6YUQUVkxHYz0r1auNwWGYQ3bp/zxSEr9UhoJj2jLadYbnspLdwEZXbZv51kRcZkwtbvbGl/huusMPUzFMOVoSUGqBD5LjPbwNcXl3vV0viWOoz2XrhIRPY43A9Wf+lmkA== X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM6PR08MB3749.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(136003)(376002)(396003)(39860400002)(346002)(366004)(451199021)(33656002)(6486002)(26005)(478600001)(71200400001)(54906003)(37006003)(83380400001)(2616005)(186003)(2906002)(53546011)(6506007)(66446008)(6512007)(6862004)(5660300002)(36756003)(66556008)(122000001)(76116006)(38100700002)(316002)(91956017)(6636002)(8936002)(66946007)(41300700001)(64756008)(4326008)(8676002)(66476007)(86362001)(38070700005)(45980500001);DIR:OUT;SFP:1101; Content-Type: text/plain; charset="utf-8" Content-ID: <07B6CD463198424D914DD8A7BC4C6E0A@eurprd08.prod.outlook.com> Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: PR3PR08MB5769 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: AM7EUR03FT011.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: ba2ae122-e70f-4bc2-065e-08db73093a86 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 8Vq1eE6lUHR8dpRTZ/6pMZ/SUKRN3i6YFTrnpmv+68neXKJ6uHb7HOwJtzeb4VIuvCsdLn8A4W87jlPsbVWaoYu3OlRKv0Sp0+RehC2rCJciIqcsqmp//n9xWvg/uq22XiMVRZMnE8xaJutENxSpAyF1ywPFnDj1m8xDKouqtQhvHpq76lo2YekXpQRG3iw9LQqoio8y3JM6bV+OKIEG7KUHVF7uc3XbKWJBqWvfnxqIUhfaTlW/NtnB87ZZkx9itauXbZQpwX6/FXyqk4mtfkUFpiESXbiXcmMALOe4fkXjST8iw7JJ9uRvc52MtagyA4Ygn06ISgnoIH1qCEa/EwhPv48cDQggWu8JezxDQZdyMqWgDEbtwQTTt6kF7W313FIy7rFga2bvxJVEceTOD/AJdDvlTHW04RahvHFncNgf5Fc+ABDXjzO3wTOG8u7pQRWGJMXLs+oKj0YOL36aa7FCIfWagcUEfYPvQNHO7SMzy7rDBI1cUGBgZRYy2f1d0FJFYINSQ51rYsDb+1TEShIEHXHWJWDqT4+81QGhe3Mk55owvyTfnWDqCNr8UjPf5izYXPk5c/8hVkVFW0ocVzXoa1M8ajBwUkpJpdnblmCf21iDQmK/YjyJ0cLu8BWYgjEgKyTQaohQnyiVEF69Zbns4Um9O5fP1M0cvRxwzPyykLoFmEkeHrVqOqb2jB+ufEasK+Obi2SRpQLYMI+PDGDGRNir+nllfNz2xTSn6gkK7GTRpd8Yaq5sD14ZwFlS X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230028)(4636009)(396003)(346002)(136003)(39860400002)(376002)(451199021)(36840700001)(46966006)(40470700004)(8936002)(6862004)(2906002)(8676002)(5660300002)(54906003)(37006003)(40480700001)(316002)(41300700001)(4326008)(6636002)(40460700003)(70206006)(70586007)(336012)(36756003)(478600001)(33656002)(82740400003)(107886003)(186003)(82310400005)(356005)(2616005)(86362001)(81166007)(47076005)(83380400001)(26005)(6486002)(53546011)(6512007)(6506007)(36860700001);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 22 Jun 2023 10:13:01.0100 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 09dfc2ae-8af9-444a-e5f6-08db7309427e X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: AM7EUR03FT011.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU0PR08MB10366 DQoNCj4gT24gMTQgSnVuIDIwMjMsIGF0IDA4OjQxLCBQZXRlciBIb3llcyA8UGV0ZXIuSG95ZXNA YXJtLmNvbT4gd3JvdGU6DQo+IA0KPiBGcm9tOiBQZXRlciBIb3llcyA8UGV0ZXIuSG95ZXNAYXJt LmNvbT4NCj4gDQo+IEFkZCAtZSBhcmd1bWVudCB0byB4bCBjb25zb2xlIGFuZCBwYXNzIHRvIG5l dyBlc2NhcGVfY2hhcmFjdGVyIGFyZ3VtZW50DQo+IG9mIGxpYnhsX2NvbnNvbGVfZXhlYy4NCj4g DQo+IEluIGxpYnhsX2NvbnNvbGVfZXhlYywgdGhlcmUgYXJlIGN1cnJlbnRseSB0d28gY2FsbCBz aXRlcyB0byBleGVjbCwNCj4gd2hpY2ggdXNlcyB2YXJhcmdzLCBpbiBvcmRlciB0byBzdXBwb3J0 IG9wdGlvbmFsbHkgcGFzc2luZw0KPiAnc3RhcnQtbm90aWZ5LWZkJyB0byB0aGUgY29uc29sZSBj bGllbnQuIEluIG9yZGVyIHRvIHN1cHBvcnQgcGFzc2luZw0KPiB0aGUgJ2VzY2FwZScgYXJndW1l bnQgb3B0aW9uYWxseSB0b28sIHJlZmFjdG9yIHRvIGluc3RlYWQgaGF2ZSBhIHNpbmdsZQ0KPiBj YWxsIHNpdGUgdG8gZXhlY3YsIHdoaWNoIGhhcyB0aGUgc2FtZSBiZWhhdmlvciBidXQgdGFrZXMg YW4gYXJyYXkgb2YNCj4gYXJndW1lbnRzLg0KPiANCj4gSWYgLWUgaXMgbm90IHNwZWNpZmllZCwg LS1lc2NhcGUgaXMgbm90IHBhc3NlZCB0byB0aGUgY29uc29sZSBjbGllbnQgYW5kDQo+IHRoZSBl eGlzdGluZyB2YWx1ZSAoXl0pIGlzIHVzZWQgYXMgYSBkZWZhdWx0Lg0KPiANCj4gSXNzdWUtSWQ6 IFNDTS00OTU4DQo+IFNpZ25lZC1vZmYtYnk6IFBldGVyIEhveWVzIDxQZXRlci5Ib3llc0Bhcm0u Y29tPg0KPiBDaGFuZ2UtSWQ6IEk4MGZmYmI3ZmVjYzYzZTAyM2VjMWM3ZjFlNGFkNzk3OWNjZjhk YTQ0DQoNCkhpIFBldGVyLA0KDQpIZXJlIGluIFhlbi1kZXZlbCB0aGUgcGF0Y2hlcyBzaG91bGQg bm90IGhhdmUgSXNzdWUtSWQgYW5kIENoYW5nZS1JZCwNCnRoZXkgY2FuIGJlIHN0cmlwcGVkIG9u IGNvbW1pdCBpZiB0aGUgbWFpbnRhaW5lciBpcyB3aWxsaW5nIHRvIGRvIHNvLA0Kb3RoZXJ3aXNl IHlvdeKAmWxsIG5lZWQgdG8gc2VuZCBhIHYyIHdpdGggdGhlIHRhZ3MgcmVtb3ZlZC4NCg0KVG8g bWUgdGhlIGNvZGUgbG9va3MgZ29vZCwgc3RpbGwgbmVlZCBhIG1haW50YWluZXIgcmV2aWV3IHRo b3VnaC4NCg0KUmV2aWV3ZWQtYnk6IEx1Y2EgRmFuY2VsbHUgPGx1Y2EuZmFuY2VsbHVAYXJtLmNv bT4NCg0KDQo= From xen-devel-bounces@lists.xenproject.org Thu Jun 22 10:23:45 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 10:23:45 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553492.864071 (Exim 4.92) (envelope-from ) id 1qCHTR-0004au-WD; Thu, 22 Jun 2023 10:23:34 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553492.864071; Thu, 22 Jun 2023 10:23:33 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCHTR-0004an-TO; Thu, 22 Jun 2023 10:23:33 +0000 Received: by outflank-mailman (input) for mailman id 553492; Thu, 22 Jun 2023 10:23:32 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCHTQ-0004ah-SS for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 10:23:32 +0000 Received: from esa2.hc3370-68.iphmx.com (esa2.hc3370-68.iphmx.com [216.71.145.153]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id d481f040-10e6-11ee-b237-6b7b168915f2; Thu, 22 Jun 2023 12:23:30 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: d481f040-10e6-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1687429410; h=date:from:to:cc:subject:message-id:references: mime-version:in-reply-to; bh=25h0k3i1feSXgqFdMTGzVDHE1FNVLGTHPKpp0OibsJ8=; b=YzUv0esdSSXdFrsKqWTdGUloTW6PUMTgIiutorSdRZpj7tUCdVQVdDq7 HUheEtpkh/J1FpDGsEfZnB65312O2oExHbYDDiIyV83jy9HzFnbWEVSRr +D55eTwKKHsKD5VXWKXR12+hj1zEXICj4xUyIFe22FOjNAqN1MGdQxPSF E=; Authentication-Results: esa2.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none X-SBRS: 4.0 X-MesageID: 113617169 X-Ironport-Server: esa2.hc3370-68.iphmx.com X-Remote-IP: 162.221.156.123 X-Policy: $RELAYED IronPort-Data: A9a23:3NohD6wwUDD5na5qj516t+fmxirEfRIJ4+MujC+fZmUNrF6WrkUEn WQWUT/XP/jeM2XxKNxyb47n9BhQvZCDx4QySQZppSAxQypGp/SeCIXCJC8cHc8wwu7rFxs7s ppEOrEsCOhuExcwcz/0auCJQUFUjP3OHfykTrafYEidfCc8IA85kxVvhuUltYBhhNm9Emult Mj75sbSIzdJ4RYtWo4vw/zF8EsHUMja4mtC5QRgP6oT5jcyqlFOZH4hDfDpR5fHatE88t6SH 47r0Ly/92XFyBYhYvvNfmHTKxBirhb6ZGBiu1IOM0SQqkEqSh8ai87XAME0e0ZP4whlqvgqo Dl7WT5cfi9yVkHEsLx1vxC1iEiSN4UekFPMCSDXXcB+UyQq2pYjqhljJBheAGEWxgp4KT9H2 PwicQxdVy+albqkxp+8QPtLpv12eaEHPKtH0p1h5TTQDPJgSpHfWaTao9Rf2V/chOgXQ6yYP ZBAL2MyMlKZOUYn1lQ/UfrSmM+hgGX/dDtJ7kqYv6Mt70DYzRBr0airO93QEjCPbZwMxRjB+ TuYrgwVBDlBGsKn2GCE3k7xj/TCsCHdY5gUH5yRo6sCbFq7mTVIVUx+uUGAifuzh1O6WtlfA 1cJ4Sdopq83nGSpR9/xRQylo1aLuxcdX5xbFOhSwAOQzqvZ5S6JC25CSSROAPQ9r9M/TzEu0 l6PnvvqCCZpvbnTTmiSnp+LqRuiNC5TKnUNDQcUQA1A79T9rYUbihPUUs0lAKOzlsfyGzz73 3aNtidWr7wLgNQCzamT4VHNiDXqrZ/MJjPZ/S2OADjjtFkgItf4OcrxswOzAet8wJixEFCsv EJdp5in0/kcVYOLuSuHUsItJeT8jxqaCwEwkWKDDrF4qWTyoCDzI9wAiN1tDBw3a5hZIFcFd GeW4FoMv8ELYRNGeIctO+qM59IWIb8M/DgPftTddZJwb5d4b2drFwk+NBfLjwgBfKXB+JzT2 Kt3ku72Vx728Yw9kFKLqx41iNfHPBwWy2LJXozcxB+6y7eYb3P9Ye5bYATVMbpjvPvZ+1S9H zNj2y2ikU43vArWOHO/zGLuBQpScShT6W7e9aS7idJv0iI5QTp8Wpc9MJsqepB/nrQ9qws71 ijVZ6Os83Km3SevAVzTOhhehEbHAc4XQYQTYXZ9Yj5FGhELPe6S0UvoX8FnI+F4qrA9kq4co jtsU5zoP8mjgw/vo1w1BaQRZqQ4HPh3rWpi5xaYXQU= IronPort-HdrOrdr: A9a23:MscrIKD0Cugz+CHlHeky55DYdb4zR+YMi2TDtnoQdfUxSKelfq +V8sjzuSWE8Qr5O0tOpfmlNLObSX3RsbRx6ZMKVI3SPjUO2lHIEGgK1+KLqVCNJ8SZzJ8h6U 4JSdkENDTeNykdsS+Q2njBLz9P+qj4zImYwcvY0ndxXUVLRshbnnZE4k3yKDwNeOA8P+tbKL OsovBp4xKrc3gMdK2Adx44dtmGnfKOsJ79exYJCzQj4BOV5AnYjYLSIlyj8VMjSDMn+8ZHzY EdqX2E2kx0iYDF9iPh X-Talos-CUID: 9a23:kTyy4G1q9grwrvpYepWht7xfRMkIckeE8CfpHFaqUXRvZbqfW3iwwfYx X-Talos-MUID: 9a23:dL/BaAvy+S4S7/9/T82n3x98DNYy4oiSVUkWnLgEnfKeMydREmLI X-IronPort-AV: E=Sophos;i="6.00,263,1681185600"; d="scan'208";a="113617169" Date: Thu, 22 Jun 2023 11:23:18 +0100 From: Anthony PERARD To: Jan Beulich CC: Andrew Cooper , Jason Andryuk , George Dunlap , Julien Grall , Stefano Stabellini , Wei Liu , Subject: Re: [XEN PATCH 1/3] build: define ARCH and SRCARCH later Message-ID: <5fa2229d-0b0e-413b-9dce-51bea8f3a88a@perard> References: <20230621161959.1061178-1-anthony.perard@citrix.com> <20230621161959.1061178-2-anthony.perard@citrix.com> <28d92bf2-5157-665f-9c91-9112dc8892dc@suse.com> MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Disposition: inline In-Reply-To: <28d92bf2-5157-665f-9c91-9112dc8892dc@suse.com> On Thu, Jun 22, 2023 at 10:15:42AM +0200, Jan Beulich wrote: > On 21.06.2023 18:25, Andrew Cooper wrote: > > On 21/06/2023 5:19 pm, Anthony PERARD wrote: > >> + > >> +ARCH := $(XEN_TARGET_ARCH) > >> +SRCARCH := $(shell echo $(ARCH) | \ > >> + sed -e 's/x86.*/x86/' -e s'/arm\(32\|64\)/arm/g' \ > >> + -e s'/riscv.*/riscv/g') > >> +export ARCH SRCARCH > >> + > >> export TARGET_SUBARCH := $(XEN_TARGET_ARCH) > >> export TARGET_ARCH := $(shell echo $(XEN_TARGET_ARCH) | \ > >> sed -e 's/x86.*/x86/' -e s'/arm\(32\|64\)/arm/g' \ > > > > The change looks plausible to fix this issue, but could we take the > > opportunity to dedup the sed expression into a $(call src-arch ...) or so ? > > > > Except, given that ARCH := $(XEN_TARGET_ARCH) now, doesn't that mean > > SRCARCH is always TARGET_ARCH ? > > > > Can't we simplify this to just be plain aliases? > > Or, putting it differently, do we actually need both TARGET_* values > when they match other (exported) variables anyway? Sounds good to me, I can remove both TARGET_* variables. Thanks, -- Anthony PERARD From xen-devel-bounces@lists.xenproject.org Thu Jun 22 10:33:51 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 10:33:51 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553498.864081 (Exim 4.92) (envelope-from ) id 1qCHd9-00069J-T4; Thu, 22 Jun 2023 10:33:35 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553498.864081; Thu, 22 Jun 2023 10:33:35 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCHd9-00069C-QF; Thu, 22 Jun 2023 10:33:35 +0000 Received: by outflank-mailman (input) for mailman id 553498; Thu, 22 Jun 2023 10:33:34 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCHd8-000696-Pv for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 10:33:34 +0000 Received: from smtp-out2.suse.de (smtp-out2.suse.de [195.135.220.29]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 3cd82f34-10e8-11ee-b237-6b7b168915f2; Thu, 22 Jun 2023 12:33:33 +0200 (CEST) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by smtp-out2.suse.de (Postfix) with ESMTPS id 2B975204B7; Thu, 22 Jun 2023 10:33:33 +0000 (UTC) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id 81F2D13905; Thu, 22 Jun 2023 10:33:32 +0000 (UTC) Received: from dovecot-director2.suse.de ([192.168.254.65]) by imap2.suse-dmz.suse.de with ESMTPSA id BITeHXwjlGRoPwAAMHmgww (envelope-from ); Thu, 22 Jun 2023 10:33:32 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 3cd82f34-10e8-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1; t=1687430013; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=CofsqLgPabcXZOSG3gQpCRSy3P1GKa+zXZpgVoYz+EM=; b=ftpuJMVdqy+rMaMdu28Hk0aLt2+HNEKSWJZnKJ0XYKxQ2SKc94aWr6ht0w791y1XsIlZ37 cARmZukF0eHSm32d8y3V4BOK68dYLgLgIe4RFZbEMuYfO4Y1XSWY/QJ+zuhTALM1pAF5F2 qZ4oXPt57XTNkMLalCtFCgG7Smv/DS0= Message-ID: <4d29bfe0-975a-c97f-3e79-5b77d95d3494@suse.com> Date: Thu, 22 Jun 2023 12:33:31 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Content-Language: en-US To: Peter Zijlstra Cc: Per Bilse , Andy Lutomirski , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , "maintainer:X86 ARCHITECTURE (32-BIT AND 64-BIT)" , "H. Peter Anvin" , Stefano Stabellini , Oleksandr Tyshchenko , "open list:X86 ENTRY CODE" , "moderated list:XEN HYPERVISOR INTERFACE" References: <20230621151442.2152425-1-per.bilse@citrix.com> <20230621164038.GM2053369@hirez.programming.kicks-ass.net> <6523f3e2-8dfc-c2dd-6d14-9e0c3ac93cc8@citrix.com> <20230621200409.GC4253@hirez.programming.kicks-ass.net> <20230622082607.GD4253@hirez.programming.kicks-ass.net> From: Juergen Gross Subject: Re: [PATCH] Updates to Xen hypercall preemption In-Reply-To: <20230622082607.GD4253@hirez.programming.kicks-ass.net> Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="------------HI0UtWftXQcOs3IvkcaEqPQm" This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --------------HI0UtWftXQcOs3IvkcaEqPQm Content-Type: multipart/mixed; boundary="------------s093lcKUAHQfI0hjA16TzzFn"; protected-headers="v1" From: Juergen Gross To: Peter Zijlstra Cc: Per Bilse , Andy Lutomirski , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , "maintainer:X86 ARCHITECTURE (32-BIT AND 64-BIT)" , "H. Peter Anvin" , Stefano Stabellini , Oleksandr Tyshchenko , "open list:X86 ENTRY CODE" , "moderated list:XEN HYPERVISOR INTERFACE" Message-ID: <4d29bfe0-975a-c97f-3e79-5b77d95d3494@suse.com> Subject: Re: [PATCH] Updates to Xen hypercall preemption References: <20230621151442.2152425-1-per.bilse@citrix.com> <20230621164038.GM2053369@hirez.programming.kicks-ass.net> <6523f3e2-8dfc-c2dd-6d14-9e0c3ac93cc8@citrix.com> <20230621200409.GC4253@hirez.programming.kicks-ass.net> <20230622082607.GD4253@hirez.programming.kicks-ass.net> In-Reply-To: <20230622082607.GD4253@hirez.programming.kicks-ass.net> --------------s093lcKUAHQfI0hjA16TzzFn Content-Type: multipart/mixed; boundary="------------fypZpVFiPcuZxNwNlCNDLzTm" --------------fypZpVFiPcuZxNwNlCNDLzTm Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: base64 T24gMjIuMDYuMjMgMTA6MjYsIFBldGVyIFppamxzdHJhIHdyb3RlOg0KPiBPbiBUaHUsIEp1 biAyMiwgMjAyMyBhdCAwNzoyMjo1M0FNICswMjAwLCBKdWVyZ2VuIEdyb3NzIHdyb3RlOg0K PiANCj4+IFRoZSBoeXBlcmNhbGxzIHdlIGFyZSB0YWxraW5nIG9mIGFyZSBzeW5jaHJvbm91 cyBvbmVzLiBUaGV5IGFyZSBydW5uaW5nDQo+PiBpbiB0aGUgY29udGV4dCBvZiB0aGUgdmNw dSBkb2luZyB0aGUgY2FsbCAobGlrZSBhIHN5c2NhbGwgZnJvbSB1c2VybGFuZCBpcw0KPj4g cnVubmluZyBpbiB0aGUgcHJvY2VzcyBjb250ZXh0KS4NCj4gDQo+IChzbyB0aW1lIGFjdHVh bGx5IHBhc3NlcyBmcm9tIHRoZSBndWVzdCdzIHBvdj8pDQoNCkNvcnJlY3QuDQoNCj4gDQo+ PiBUaGUgaHlwZXJ2aXNvciB3aWxsIHJldHVybiB0byBndWVzdCBjb250ZXh0IGZyb20gdGlt ZSB0byB0aW1lIGJ5IG1vZGlmeWluZw0KPj4gdGhlIHJlZ2lzdGVycyBzdWNoIHRoYXQgdGhl IGd1ZXN0IHdpbGwgZG8gdGhlIGh5cGVyY2FsbCBhZ2FpbiB3aXRoIGRpZmZlcmVudA0KPj4g aW5wdXQgdmFsdWVzIGZvciB0aGUgaHlwZXJ2aXNvciwgcmVzdWx0aW5nIGluIGEgcHJvcGVy IGNvbnRpbnVhdGlvbiBvZiB0aGUNCj4+IGh5cGVyY2FsbCBwcm9jZXNzaW5nLg0KPiANCj4g RWVldXcuLiB0aGF0J3MgcHJldHR5IHRlcnJpYmxlLiBBbmQgY2hhbmdpbmcgdGhpcyBpc24n dCBpbiB0aGUgY2FyZHMsDQo+IGxpa2UgYXQgYWxsPw0KDQpJbiB0aGUgbG9uZyBydW4gdGhp cyBzaG91bGQgYmUgcG9zc2libGUsIGJ1dCBub3QgZm9yIGFscmVhZHkgZXhpc3RpbmcgWGVu DQp2ZXJzaW9ucy4NCg0KPiANCj4gVGhhdCBpcywgd2h5IGlzbid0IHRoaXMgd2hvbGUgdGhp bmcgd3JpdHRlbiBsaWtlOg0KPiANCj4gCWZvciAoOzspIHsNCj4gCQlyZXQgPSBoeXBlcmNh bGwoZm9vKTsNCj4gCQlpZiAocmV0ID09IC1FQUdBSU4pIHsNCj4gCQkJY29uZF9yZXNjaGVk KCk7DQo+IAkJCWNvbnRpbnVlOw0KPiAJCX0NCj4gCQlicmVhazsNCj4gCX0NCg0KVGhlIGh5 cGVydmlzb3IgZG9lc24ndCByZXR1cm4gLUVBR0FJTiBmb3IgaHlzdGVyaWNhbCByZWFzb25z Lg0KDQpUaGlzIHdvdWxkIGJlIG9uZSBvZiB0aGUgb3B0aW9ucyB0byBjaGFuZ2UgdGhlIGlu dGVyZmFjZS4gT1RPSCB0aGVyZSBhcmUgY2FzZXMNCndoZXJlIGFscmVhZHkgZXhpc3Rpbmcg aHlwZXJjYWxscyBuZWVkIHRvIGJlIG1vZGlmaWVkIGluIHRoZSBoeXBlcnZpc29yIHRvIGRv DQpwcmVlbXB0aW9uIGluIHRoZSBtaWRkbGUgZHVlIHRvIGUuZy4gc2VjdXJpdHkgcmVhc29u cyAoYXZvaWRpbmcgY3B1IGhvZ2dpbmcgaW4NCnNwZWNpYWwgY2FzZXMpLg0KDQpBZGRpdGlv bmFsbHkgc29tZSBvZiB0aGUgaHlwZXJjYWxscyBiZWluZyBzdWJqZWN0IHRvIHByZWVtcHRp b24gYXJlIGFsbG93ZWQgaW4NCnVucHJpdmlsZWdlZCBndWVzdHMsIHRvby4gVGhvc2UgYXJl IG1vc3RseSBoeXBlcmNhbGxzIGFsbG93ZWQgZm9yIFBWIGd1ZXN0cw0Kb25seSwgYnV0IHNv bWUgYXJlIHVzYWJsZSBieSBhbGwgZ3Vlc3RzLg0KDQo+IA0KPj4gSXQgaXMgYW4gYXdmdWwg aW50ZXJmYWNlIGFuZCBJIGFncmVlIHRoYXQgc3dpdGNoaW5nIHRvIGZ1bGwgcHJlZW1wdGlv biBpbg0KPj4gZG9tMCBzZWVtcyB0byBiZSB0aGUgcm91dGUgd2hpY2ggd2Ugc2hvdWxkIHRy eSB0byB0YWtlLg0KPiANCj4gV2VsbCwgSSB3b3VsZCB2ZXJ5IHN0cm9uZ2x5IHN1Z2dlc3Qg dGhlIHJvdXRlIHRvIHRha2UgaXMgdG8gc2NyYXAgdGhlDQo+IHdob2xlIHRoaW5nIGFuZCBp bnZlc3QgaW4gZG9pbmcgc29tZXRoaW5nIHNhbmVyIHNvIHdlIGRvbid0IGhhdmUgdG8ganVt cA0KPiB0aHJvdWdoIGhvb3BzIGxpa2UgdGhpcy4NCj4gDQo+IFRoaXMgaXMgcXVpdGUgcG9z c2libHkgdGhlIHdvcnN0IHBvc3NpYmxlIGludGVyZmFjZSBmb3IgdGhpcyBYZW4gY291bGQN Cj4gaGF2ZSBjb21lIHVwIHdpdGggLS0gYXdhcmRzIG1hdGVyaWFsIGZvciBzdXJlLg0KDQpZ ZXMuDQoNCj4gDQo+PiBUaGUgZG93bnNpZGUgd291bGQgYmUgdGhhdCBzb21lIHdvcmtsb2Fk cyBtaWdodCBzZWUgd29yc2UgcGVyZm9ybWFuY2UNCj4+IGR1ZSB0byBiYWNrZW5kIEkvTyBo YW5kbGluZyBtaWdodCBnZXQgcHJlZW1wdGVkLg0KPiANCj4gSXMgdGhhdCBhbiBhY3R1YWwg Y29uY2Vybj8gTWFyayB0aGlzIGEgbGVnYXh5IGludGVmYWNlIGFuZCBhbnlib2R5IHdobw0K PiB3YW50cyB0byBnZXQgYXdheSBmcm9tIGl0IHVwZGF0ZXMuDQoNCkl0IGlzbid0IHRoYXQg ZWFzeS4gU2VlIGFib3ZlLg0KDQo+IA0KPj4gSnVzdCB0aGlua2luZyAtIGNhbiBmdWxsIHBy ZWVtcHRpb24gYmUgZW5hYmxlZCBwZXIgcHJvY2Vzcz8NCj4gDQo+IE5vcGUsIHRoYXQncyBh IHN5c3RlbSB3aWRlIHRoaW5nLiBQcmVlbXB0aW9uIGlzIHNvbWV0aGluZyB0aGF0J3MgZHJp dmVuDQo+IGJ5IHRoZSByZXF1aXJlbWVudHMgb2YgdGhlIHRhc2tzIHRoYXQgcHJlZW1wdCwg bm90IHNvbWV0aGluZyBieSB0aGUNCj4gdGFza3MgdGhhdCBnZXQgcHJlZW1wdGVkLg0KDQpE ZXBlbmRzLiBJZiBhIHRhc2sgaW4gYSBub24tcHJlZW1wdCBzeXN0ZW0gY291bGQgc3dpdGNo IGl0c2VsZiB0byBiZQ0KcHJlZW1wdGFibGUsIHdlIGNvdWxkIGRvIHNvIGFyb3VuZCBoeXBl cmNhbGxzIHdpdGhvdXQgY29tcHJvbWlzaW5nIHRoZQ0KZ2VuZXJhbCBwcmVlbXB0aW9uIHNl dHRpbmcuIERpc2FibGluZyBwcmVlbXB0aW9uIGluIGEgcHJlZW1wdGFibGUgc3lzdGVtDQpz aG91bGQgY29udGludWUgdG8gYmUgcG9zc2libGUgZm9yIHNob3J0IGNvZGUgcGF0aHMgb25s eSwgb2YgY291cnNlLg0KDQo+IEFuZHkncyBpZGVhIG9mIGhhdmluZyB0aGF0IHRoaW5nIGlu dGVyY2VwdGVkIGFzIGFuIGV4Y2VwdGlvbiAoRVhUQUJMRQ0KPiBsaWtlKSBhbmQgcmVsb2Nh dGluZyB0aGUgSVAgdG8gYSBwbGFjZSB0aGF0IGRvZXMgY29uZF9yZXNjaGVkKCkgYmVmb3Jl DQo+IGdvaW5nIGJhY2sgaXMgYW4gb3B0aW9uLi4gZ3Jvc3MsIGJ1dCBwb3NzaWJseSBiZXR0 ZXIsIGR1bm5vLg0KPiANCj4gUXVpdGUgdGhlIG1lc3MgaW5kZWVkIDovDQoNClllYWguDQoN Cg0KSnVlcmdlbg0K --------------fypZpVFiPcuZxNwNlCNDLzTm Content-Type: application/pgp-keys; name="OpenPGP_0xB0DE9DD628BF132F.asc" Content-Disposition: attachment; filename="OpenPGP_0xB0DE9DD628BF132F.asc" Content-Description: OpenPGP public key Content-Transfer-Encoding: quoted-printable -----BEGIN PGP PUBLIC KEY BLOCK----- xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjri oyspZKOBycWxw3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2 kaV2KL9650I1SJvedYm8Of8Zd621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i 1TXkH09XSSI8mEQ/ouNcMvIJNwQpd369y9bfIhWUiVXEK7MlRgUG6MvIj6Y3Am/B BLUVbDa4+gmzDC9ezlZkTZG2t14zWPvxXP3FAp2pkW0xqG7/377qptDmrk42GlSK N4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEBAAHNHEp1ZXJnZW4gR3Jvc3Mg PGpnQHBmdXBmLm5ldD7CwHkEEwECACMFAlOMcBYCGwMHCwkIBwMCAQYVCAIJCgsE FgIDAQIeAQIXgAAKCRCw3p3WKL8TL0KdB/93FcIZ3GCNwFU0u3EjNbNjmXBKDY4F UGNQH2lvWAUy+dnyThpwdtF/jQ6j9RwE8VP0+NXcYpGJDWlNb9/JmYqLiX2Q3Tye vpB0CA3dbBQp0OW0fgCetToGIQrg0MbD1C/sEOv8Mr4NAfbauXjZlvTj30H2jO0u +6WGM6nHwbh2l5O8ZiHkH32iaSTfN7Eu5RnNVUJbvoPHZ8SlM4KWm8rG+lIkGurq qu5gu8q8ZMKdsdGC4bBxdQKDKHEFExLJK/nRPFmAuGlId1E3fe10v5QL+qHI3EIP tyfE7i9Hz6rVwi7lWKgh7pe0ZvatAudZ+JNIlBKptb64FaiIOAWDCx1SzR9KdWVy Z2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+wsB5BBMBAgAjBQJTjHCvAhsDBwsJ CAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey/HmQf/RtI7kv5A2PS4 RF7HoZhPVPogNVbC4YA6lW7DrWf0teC0RR3MzXfy6pJ+7KLgkqMlrAbN/8Dvjoz7 8X+5vhH/rDLa9BuZQlhFmvcGtCF8eR0T1v0nC/nuAFVGy+67q2DH8As3KPu0344T BDpAvr2uYM4tSqxK4DURx5INz4ZZ0WNFHcqsfvlGJALDeE0LhITTd9jLzdDad1pQ SToCnLl6SBJZjDOX9QQcyUigZFtCXFst4dlsvddrxyqT1f17+2cFSdu7+ynLmXBK 7abQ3rwJY8SbRO2iRulogc5vr/RLMMlscDAiDkaFQWLoqHHOdfO9rURssHNN8WkM nQfvUewRz80hSnVlcmdlbiBHcm9zcyA8amdyb3NzQG5vdmVsbC5jb20+wsB5BBMB AgAjBQJTjHDXAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/ Ey8PUQf/ehmgCI9jB9hlgexLvgOtf7PJnFOXgMLdBQgBlVPO3/D9R8LtF9DBAFPN hlrsfIG/SqICoRCqUcJ96Pn3P7UUinFG/I0ECGF4EvTE1jnDkfJZr6jrbjgyoZHi w/4BNwSTL9rWASyLgqlA8u1mf+c2yUwcGhgkRAd1gOwungxcwzwqgljf0N51N5Jf VRHRtyfwq/ge+YEkDGcTU6Y0sPOuj4Dyfm8fJzdfHNQsWq3PnczLVELStJNdapwP OoE+lotufe3AM2vAEYJ9rTz3Cki4JFUsgLkHFqGZarrPGi1eyQcXeluldO3m91NK /1xMI3/+8jbO0tsn1tqSEUGIJi7ox80eSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1 c2UuZGU+wsB5BBMBAgAjBQJTjHDrAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgEC F4AACgkQsN6d1ii/Ey+LhQf9GL45eU5vOowA2u5N3g3OZUEBmDHVVbqMtzwlmNC4 k9Kx39r5s2vcFl4tXqW7g9/ViXYuiDXb0RfUpZiIUW89siKrkzmQ5dM7wRqzgJpJ wK8Bn2MIxAKArekWpiCKvBOB/Cc+3EXE78XdlxLyOi/NrmSGRIov0karw2RzMNOu 5D+jLRZQd1Sv27AR+IP3I8U4aqnhLpwhK7MEy9oCILlgZ1QZe49kpcumcZKORmzB TNh30FVKK1EvmV2xAKDoaEOgQB4iFQLhJCdP1I5aSgM5IVFdn7v5YgEYuJYx37Io N1EblHI//x/e2AaIHpzK5h88NEawQsaNRpNSrcfbFmAg987ATQRTjHAWAQgAyzH6 AOODMBjgfWE9VeCgsrwH3exNAU32gLq2xvjpWnHIs98ndPUDpnoxWQugJ6MpMncr 0xSwFmHEgnSEjK/PAjppgmyc57BwKII3sV4on+gDVFJR6Y8ZRwgnBC5mVM6JjQ5x Dk8WRXljExRfUX9pNhdE5eBOZJrDRoLUmmjDtKzWaDhIg/+1Hzz93X4fCQkNVbVF LELU9bMaLPBG/x5q4iYZ2k2ex6d47YE1ZFdMm6YBYMOljGkZKwYde5ldM9mo45mm we0icXKLkpEdIXKTZeKDO+Hdv1aqFuAcccTg9RXDQjmwhC3yEmrmcfl0+rPghO0I v3OOImwTEe4co3c1mwARAQABwsBfBBgBAgAJBQJTjHAWAhsMAAoJELDendYovxMv Q/gH/1ha96vm4P/L+bQpJwrZ/dneZcmEwTbe8YFsw2V/Buv6Z4Mysln3nQK5ZadD 534CF7TDVft7fC4tU4PONxF5D+/tvgkPfDAfF77zy2AH1vJzQ1fOU8lYFpZXTXIH b+559UqvIB8AdgR3SAJGHHt4RKA0F7f5ipYBBrC6cyXJyyoprT10EMvU8VGiwXvT yJz3fjoYsdFzpWPlJEBRMedCot60g5dmbdrZ5DWClAr0yau47zpWj3enf1tLWaqc suylWsviuGjKGw7KHQd3bxALOknAp4dN3QwBYCKuZ7AddY9yjynVaD5X7nF9nO5B jR/i1DG86lem3iBDXzXsZDn8R38=3D =3D2wuH -----END PGP PUBLIC KEY BLOCK----- --------------fypZpVFiPcuZxNwNlCNDLzTm-- --------------s093lcKUAHQfI0hjA16TzzFn-- --------------HI0UtWftXQcOs3IvkcaEqPQm Content-Type: application/pgp-signature; name="OpenPGP_signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="OpenPGP_signature" -----BEGIN PGP SIGNATURE----- wsB5BAABCAAjFiEEhRJncuj2BJSl0Jf3sN6d1ii/Ey8FAmSUI3wFAwAAAAAACgkQsN6d1ii/Ey8P zQf+Jt7rJKZ8Ph+Az2fHWgGV5OOyTxc3Ec6WvJjnQXBSubGVrTvWdDhNu+b0C9NzFyz11AWWxao4 1RqN8n5TVbdQqRCQ1W+VM/pSHuDa67Lug+H+TOOqP03n7ikdOKIHwE/08dLHryPjLHShlWBBvJex HGHcfqkJVFe1KEXxUjdNJhbOqw8K6CpnmWlSDMo1zZjDf/0laXecA8zlEvF9kAauTyGuATtVgD1E R+U1VUjs8B0EU4S4cCPRsoidF7pbB7ou+9ghzUAIeBPqtWlvyayxK+oMlDMvnRR7YRIz56/O7xm6 7KWZcHrvdhVx03RG6rRP8NBKo21kUKire/hJUiR9bQ== =jsnE -----END PGP SIGNATURE----- --------------HI0UtWftXQcOs3IvkcaEqPQm-- From xen-devel-bounces@lists.xenproject.org Thu Jun 22 10:44:31 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 10:44:31 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553504.864091 (Exim 4.92) (envelope-from ) id 1qCHnW-0007jq-VR; Thu, 22 Jun 2023 10:44:18 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553504.864091; Thu, 22 Jun 2023 10:44:18 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCHnW-0007jj-Sc; Thu, 22 Jun 2023 10:44:18 +0000 Received: by outflank-mailman (input) for mailman id 553504; Thu, 22 Jun 2023 10:44:17 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCHnV-0007jd-Fl for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 10:44:17 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCHnT-00059I-80; Thu, 22 Jun 2023 10:44:15 +0000 Received: from [54.239.6.188] (helo=[192.168.27.222]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qCHnT-0001QS-1g; Thu, 22 Jun 2023 10:44:15 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=xv7O+LVYjCdeUXAun5cb7QmCeY6WRzfn1Y2fMQuYuvU=; b=Gm9/4QXgl809fB637evUr4Ahu7 IajnzVA7NtTgZy/3ZbrYnlq0z+/oqIdhCq2x0bIen4XWI5rgEIGmHKxVxHEDGQwjiPKT0HX5Uu9oj uiFXvSzz0ndY7NzgiJQiAbRjVO1kLlNHMcGAwmMl12hZ0uhTdsxjPrjkkvyWHmenXbfQ=; Message-ID: <558e68c4-1a2d-5a9e-4070-5b894e14a3f4@xen.org> Date: Thu, 22 Jun 2023 11:44:12 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH 06/22] x86: map/unmap pages in restore_all_guests Content-Language: en-US To: Jan Beulich Cc: Andrew Cooper , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , Julien Grall , xen-devel@lists.xenproject.org References: <20221216114853.8227-1-julien@xen.org> <20221216114853.8227-7-julien@xen.org> <478e04bc-6ff7-de01-dfb9-55d579228152@suse.com> <01584e11-36ca-7836-85ad-bba9351af46e@suse.com> From: Julien Grall In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi Jan, Sorry for the late reply. On 13/01/2023 09:22, Jan Beulich wrote: > On 13.01.2023 00:20, Julien Grall wrote: >> On 04/01/2023 10:27, Jan Beulich wrote: >>> On 23.12.2022 13:22, Julien Grall wrote: >>>> On 22/12/2022 11:12, Jan Beulich wrote: >>>>> On 16.12.2022 12:48, Julien Grall wrote: >>>>>> --- a/xen/arch/x86/x86_64/entry.S >>>>>> +++ b/xen/arch/x86/x86_64/entry.S >>>>>> @@ -165,7 +165,24 @@ restore_all_guest: >>>>>> and %rsi, %rdi >>>>>> and %r9, %rsi >>>>>> add %rcx, %rdi >>>>>> - add %rcx, %rsi >>>>>> + >>>>>> + /* >>>>>> + * Without a direct map, we have to map first before copying. We only >>>>>> + * need to map the guest root table but not the per-CPU root_pgt, >>>>>> + * because the latter is still a xenheap page. >>>>>> + */ >>>>>> + pushq %r9 >>>>>> + pushq %rdx >>>>>> + pushq %rax >>>>>> + pushq %rdi >>>>>> + mov %rsi, %rdi >>>>>> + shr $PAGE_SHIFT, %rdi >>>>>> + callq map_domain_page >>>>>> + mov %rax, %rsi >>>>>> + popq %rdi >>>>>> + /* Stash the pointer for unmapping later. */ >>>>>> + pushq %rax >>>>>> + >>>>>> mov $ROOT_PAGETABLE_FIRST_XEN_SLOT, %ecx >>>>>> mov root_table_offset(SH_LINEAR_PT_VIRT_START)*8(%rsi), %r8 >>>>>> mov %r8, root_table_offset(SH_LINEAR_PT_VIRT_START)*8(%rdi) >>>>>> @@ -177,6 +194,14 @@ restore_all_guest: >>>>>> sub $(ROOT_PAGETABLE_FIRST_XEN_SLOT - \ >>>>>> ROOT_PAGETABLE_LAST_XEN_SLOT - 1) * 8, %rdi >>>>>> rep movsq >>>>>> + >>>>>> + /* Unmap the page. */ >>>>>> + popq %rdi >>>>>> + callq unmap_domain_page >>>>>> + popq %rax >>>>>> + popq %rdx >>>>>> + popq %r9 >>>>> >>>>> While the PUSH/POP are part of what I dislike here, I think this wants >>>>> doing differently: Establish a mapping when putting in place a new guest >>>>> page table, and use the pointer here. This could be a new per-domain >>>>> mapping, to limit its visibility. >>>> >>>> I have looked at a per-domain approach and this looks way more complex >>>> than the few concise lines here (not mentioning the extra amount of >>>> memory). >>> >>> Yes, I do understand that would be a more intrusive change. >> >> I could be persuaded to look at a more intrusive change if there are a >> good reason to do it. To me, at the moment, it mostly seem a matter of >> taste. >> >> So what would we gain from a perdomain mapping? > > Rather than mapping/unmapping once per hypervisor entry/exit, we'd > map just once per context switch. Plus we'd save ugly/fragile assembly > code (apart from the push/pop I also dislike C functions being called > from assembly which aren't really meant to be called this way: While > these two may indeed be unlikely to ever change, any such change comes > with the risk of the assembly callers being missed - the compiler > won't tell you that e.g. argument types/count don't match parameters > anymore). I think I have managed to write what you suggested. I would like to share to get early feedback before resending the series. There are also a couple of TODOs (XXX) in place where I am not sure if this is correct. diff --git a/xen/arch/x86/include/asm/config.h b/xen/arch/x86/include/asm/config.h index fbc4bb3416bd..320ddb9e1e77 100644 --- a/xen/arch/x86/include/asm/config.h +++ b/xen/arch/x86/include/asm/config.h @@ -202,7 +202,7 @@ extern unsigned char boot_edid_info[128]; /* Slot 260: per-domain mappings (including map cache). */ #define PERDOMAIN_VIRT_START (PML4_ADDR(260)) #define PERDOMAIN_SLOT_MBYTES (PML4_ENTRY_BYTES >> (20 + PAGETABLE_ORDER)) -#define PERDOMAIN_SLOTS 3 +#define PERDOMAIN_SLOTS 4 #define PERDOMAIN_VIRT_SLOT(s) (PERDOMAIN_VIRT_START + (s) * \ (PERDOMAIN_SLOT_MBYTES << 20)) /* Slot 4: mirror of per-domain mappings (for compat xlat area accesses). */ @@ -316,6 +316,16 @@ extern unsigned long xen_phys_start; #define ARG_XLAT_START(v) \ (ARG_XLAT_VIRT_START + ((v)->vcpu_id << ARG_XLAT_VA_SHIFT)) +/* CR3 shadow mapping area. The fourth per-domain-mapping sub-area */ +#define SHADOW_CR3_VIRT_START PERDOMAIN_VIRT_SLOT(3) +#define SHADOW_CR3_ENTRIES MAX_VIRT_CPUS +#define SHADOW_CR3_VIRT_END (SHADOW_CR3_VIRT_START + \ + (MAX_VIRT_CPUS * PAGE_SIZE)) + +/* The address of a particular VCPU's c3 */ +#define SHADOW_CR3_VCPU_VIRT_START(v) \ + (SHADOW_CR3_VIRT_START + ((v)->vcpu_id * PAGE_SIZE)) + #define ELFSIZE 64 #define ARCH_CRASH_SAVE_VMCOREINFO diff --git a/xen/arch/x86/include/asm/domain.h b/xen/arch/x86/include/asm/domain.h index c2d9fc333be5..d5989224f4a3 100644 --- a/xen/arch/x86/include/asm/domain.h +++ b/xen/arch/x86/include/asm/domain.h @@ -273,6 +273,7 @@ struct time_scale { struct pv_domain { l1_pgentry_t **gdt_ldt_l1tab; + l1_pgentry_t **shadow_cr3_l1tab; atomic_t nr_l4_pages; diff --git a/xen/arch/x86/mm.c b/xen/arch/x86/mm.c index 9741d28cbc96..b64ee1ca47f6 100644 --- a/xen/arch/x86/mm.c +++ b/xen/arch/x86/mm.c @@ -509,6 +509,13 @@ void share_xen_page_with_guest(struct page_info *page, struct domain *d, spin_unlock(&d->page_alloc_lock); } +#define shadow_cr3_idx(v) \ + ((v)->vcpu_id >> PAGETABLE_ORDER) + +#define pv_shadow_cr3_pte(v) \ + ((v)->domain->arch.pv.shadow_cr3_l1tab[shadow_cr3_idx(v)] + \ + ((v)->vcpu_id & (L1_PAGETABLE_ENTRIES - 1))) + void make_cr3(struct vcpu *v, mfn_t mfn) { struct domain *d = v->domain; @@ -516,6 +523,18 @@ void make_cr3(struct vcpu *v, mfn_t mfn) v->arch.cr3 = mfn_x(mfn) << PAGE_SHIFT; if ( is_pv_domain(d) && d->arch.pv.pcid ) v->arch.cr3 |= get_pcid_bits(v, false); + + /* Update the CR3 mapping */ + if ( is_pv_domain(d) ) + { + l1_pgentry_t *pte = pv_shadow_cr3_pte(v); + + /* XXX Do we need to call get page first? */ + l1e_write(pte, l1e_from_mfn(mfn, __PAGE_HYPERVISOR_RW)); + /* XXX Can the flush be reduced to the page? */ + /* XXX Do we always call with current? */ + flush_tlb_local(); + } } void write_ptbase(struct vcpu *v) diff --git a/xen/arch/x86/pv/domain.c b/xen/arch/x86/pv/domain.c index 5c92812dc67a..064645ccc261 100644 --- a/xen/arch/x86/pv/domain.c +++ b/xen/arch/x86/pv/domain.c @@ -288,6 +288,19 @@ static void pv_destroy_gdt_ldt_l1tab(struct vcpu *v) 1U << GDT_LDT_VCPU_SHIFT); } +static int pv_create_shadow_cr3_l1tab(struct vcpu *v) +{ + return create_perdomain_mapping(v->domain, SHADOW_CR3_VCPU_VIRT_START(v), + 1, v->domain->arch.pv.shadow_cr3_l1tab, + NULL); +} + +static void pv_destroy_shadow_cr3_l1tab(struct vcpu *v) + +{ + destroy_perdomain_mapping(v->domain, SHADOW_CR3_VCPU_VIRT_START(v), 1); +} + void pv_vcpu_destroy(struct vcpu *v) { if ( is_pv_32bit_vcpu(v) ) @@ -297,6 +310,7 @@ void pv_vcpu_destroy(struct vcpu *v) } pv_destroy_gdt_ldt_l1tab(v); + pv_destroy_shadow_cr3_l1tab(v); XFREE(v->arch.pv.trap_ctxt); } @@ -311,6 +325,10 @@ int pv_vcpu_initialise(struct vcpu *v) if ( rc ) return rc; + rc = pv_create_shadow_cr3_l1tab(v); + if ( rc ) + goto done; + BUILD_BUG_ON(X86_NR_VECTORS * sizeof(*v->arch.pv.trap_ctxt) > PAGE_SIZE); v->arch.pv.trap_ctxt = xzalloc_array(struct trap_info, X86_NR_VECTORS); @@ -346,10 +364,12 @@ void pv_domain_destroy(struct domain *d) destroy_perdomain_mapping(d, GDT_LDT_VIRT_START, GDT_LDT_MBYTES << (20 - PAGE_SHIFT)); + destroy_perdomain_mapping(d, SHADOW_CR3_VIRT_START, SHADOW_CR3_ENTRIES); XFREE(d->arch.pv.cpuidmasks); FREE_XENHEAP_PAGE(d->arch.pv.gdt_ldt_l1tab); + FREE_XENHEAP_PAGE(d->arch.pv.shadow_cr3_l1tab); } void noreturn cf_check continue_pv_domain(void); @@ -371,6 +391,12 @@ int pv_domain_initialise(struct domain *d) goto fail; clear_page(d->arch.pv.gdt_ldt_l1tab); + d->arch.pv.shadow_cr3_l1tab = + alloc_xenheap_pages(0, MEMF_node(domain_to_node(d))); + if ( !d->arch.pv.shadow_cr3_l1tab ) + goto fail; + clear_page(d->arch.pv.shadow_cr3_l1tab); + if ( levelling_caps & ~LCAP_faulting && (d->arch.pv.cpuidmasks = xmemdup(&cpuidmask_defaults)) == NULL ) goto fail; @@ -381,6 +407,11 @@ int pv_domain_initialise(struct domain *d) if ( rc ) goto fail; + rc = create_perdomain_mapping(d, SHADOW_CR3_VIRT_START, + SHADOW_CR3_ENTRIES, NULL, NULL); + if ( rc ) + goto fail; + d->arch.ctxt_switch = &pv_csw; d->arch.pv.xpti = is_hardware_domain(d) ? opt_xpti_hwdom : opt_xpti_domu; diff --git a/xen/arch/x86/x86_64/asm-offsets.c b/xen/arch/x86/x86_64/asm-offsets.c index 287dac101ad4..ed486607bf15 100644 --- a/xen/arch/x86/x86_64/asm-offsets.c +++ b/xen/arch/x86/x86_64/asm-offsets.c @@ -51,6 +51,7 @@ void __dummy__(void) OFFSET(UREGS_kernel_sizeof, struct cpu_user_regs, es); BLANK(); + OFFSET(VCPU_id, struct vcpu, vcpu_id); OFFSET(VCPU_processor, struct vcpu, processor); OFFSET(VCPU_domain, struct vcpu, domain); OFFSET(VCPU_vcpu_info, struct vcpu, vcpu_info); diff --git a/xen/arch/x86/x86_64/entry.S b/xen/arch/x86/x86_64/entry.S index 8b77d7113bbf..678876a32177 100644 --- a/xen/arch/x86/x86_64/entry.S +++ b/xen/arch/x86/x86_64/entry.S @@ -165,7 +165,16 @@ restore_all_guest: and %rsi, %rdi and %r9, %rsi add %rcx, %rdi + + /* + * The address in the vCPU cr3 is always mapped in the shadow + * cr3 virt area. + */ + mov VCPU_id(%rbx), %rsi + shl $PAGE_SHIFT, %rsi + movabs $SHADOW_CR3_VIRT_START, %rcx add %rcx, %rsi + mov $ROOT_PAGETABLE_FIRST_XEN_SLOT, %ecx mov root_table_offset(SH_LINEAR_PT_VIRT_START)*8(%rsi), %r8 mov %r8, root_table_offset(SH_LINEAR_PT_VIRT_START)*8(%rdi) > > Jan -- Julien Grall From xen-devel-bounces@lists.xenproject.org Thu Jun 22 11:16:27 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 11:16:27 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553510.864101 (Exim 4.92) (envelope-from ) id 1qCIIQ-0002nr-9K; Thu, 22 Jun 2023 11:16:14 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553510.864101; Thu, 22 Jun 2023 11:16:14 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCIIQ-0002nk-6R; Thu, 22 Jun 2023 11:16:14 +0000 Received: by outflank-mailman (input) for mailman id 553510; Thu, 22 Jun 2023 11:16:12 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCIIN-0002ne-CG for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 11:16:12 +0000 Received: from desiato.infradead.org (desiato.infradead.org [2001:8b0:10b:1:d65d:64ff:fe57:4e05]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 2f350ecd-10ee-11ee-b237-6b7b168915f2; Thu, 22 Jun 2023 13:16:07 +0200 (CEST) Received: from j130084.upc-j.chello.nl ([24.132.130.84] helo=noisy.programming.kicks-ass.net) by desiato.infradead.org with esmtpsa (Exim 4.96 #2 (Red Hat Linux)) id 1qCII7-001ARB-0R; Thu, 22 Jun 2023 11:15:55 +0000 Received: from hirez.programming.kicks-ass.net (hirez.programming.kicks-ass.net [192.168.1.225]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by noisy.programming.kicks-ass.net (Postfix) with ESMTPS id E8A73300137; Thu, 22 Jun 2023 13:15:52 +0200 (CEST) Received: by hirez.programming.kicks-ass.net (Postfix, from userid 1000) id CB762241BF9B6; Thu, 22 Jun 2023 13:15:52 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 2f350ecd-10ee-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=desiato.20200630; h=In-Reply-To:Content-Transfer-Encoding: Content-Type:MIME-Version:References:Message-ID:Subject:Cc:To:From:Date: Sender:Reply-To:Content-ID:Content-Description; bh=0Cbef4n6vE+HAJoLMq2Y/8WwGP0ekiPLuwwxxjpzqoc=; b=hwo7dOex3aQbN6n7P2bWblAVf2 J1nfVEJY/K9oVk0rH0ZeuXY79n1SILio804dj27F3FjXQRjkEh/OJcU1NQdmMW6LvHfuWEAJ2w0S5 zP6diLuTL2gZKHfkRXtTq9taqznetzaVFPnu3xQFgaWyjojXgFgOiNZ/gxpM62IGcQv4DfXdipEYz N/plPXfhZ0OpI4FO9Xzyu9f9EB4d5tuu2o1tvpBEGC0k8vtMSRwPgxuugg58jDs770YWvtEGpdX8P QN0qfPkYs8fbMOmHtJIeWuFsciVzqisYV9ndPj1s43YxHJcxAbnxaFmKUTAM8hmFi0/i2OcnyrkAy 3sK+/uBw==; Date: Thu, 22 Jun 2023 13:15:52 +0200 From: Peter Zijlstra To: Juergen Gross Cc: Per Bilse , Andy Lutomirski , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , "maintainer:X86 ARCHITECTURE (32-BIT AND 64-BIT)" , "H. Peter Anvin" , Stefano Stabellini , Oleksandr Tyshchenko , "open list:X86 ENTRY CODE" , "moderated list:XEN HYPERVISOR INTERFACE" Subject: Re: [PATCH] Updates to Xen hypercall preemption Message-ID: <20230622111552.GI4253@hirez.programming.kicks-ass.net> References: <20230621151442.2152425-1-per.bilse@citrix.com> <20230621164038.GM2053369@hirez.programming.kicks-ass.net> <6523f3e2-8dfc-c2dd-6d14-9e0c3ac93cc8@citrix.com> <20230621200409.GC4253@hirez.programming.kicks-ass.net> <20230622082607.GD4253@hirez.programming.kicks-ass.net> <4d29bfe0-975a-c97f-3e79-5b77d95d3494@suse.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable In-Reply-To: <4d29bfe0-975a-c97f-3e79-5b77d95d3494@suse.com> On Thu, Jun 22, 2023 at 12:33:31PM +0200, Juergen Gross wrote: > On 22.06.23 10:26, Peter Zijlstra wrote: > > > The downside would be that some workloads might see worse performance > > > due to backend I/O handling might get preempted. > >=20 > > Is that an actual concern? Mark this a legaxy inteface and anybody who > > wants to get away from it updates. >=20 > It isn't that easy. See above. Well, the old stuff gets to use full preemption on Dom0, then the new stuff gets more shiny options. > > > Just thinking - can full preemption be enabled per process? > >=20 > > Nope, that's a system wide thing. Preemption is something that's driven > > by the requirements of the tasks that preempt, not something by the > > tasks that get preempted. >=20 > Depends. If a task in a non-preempt system could switch itself to be > preemptable, we could do so around hypercalls without compromising the > general preemption setting. Disabling preemption in a preemptable system > should continue to be possible for short code paths only, of course. So something along those lines was suggested elsewhere, and I'm still not entirely sure how I feel about it, but look here: https://lkml.kernel.org/r/20230403052233.1880567-1-ankur.a.arora@oracle.c= om Specifically patches 7 and 8. It is very close so that you currently do/want. Those patches are many moons old and i've not seen an update on them, so I've no idea where they are. It solves a similar problem except it is 'rep string' instructions that's being interrupted. From xen-devel-bounces@lists.xenproject.org Thu Jun 22 12:17:33 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 12:17:33 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553518.864111 (Exim 4.92) (envelope-from ) id 1qCJFT-0000jX-Ri; Thu, 22 Jun 2023 12:17:15 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553518.864111; Thu, 22 Jun 2023 12:17:15 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCJFT-0000jQ-O7; Thu, 22 Jun 2023 12:17:15 +0000 Received: by outflank-mailman (input) for mailman id 553518; Thu, 22 Jun 2023 12:17:15 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCJFT-0000jJ-6I for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 12:17:15 +0000 Received: from smtp-out1.suse.de (smtp-out1.suse.de [2001:67c:2178:6::1c]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id b4d20715-10f6-11ee-8611-37d641c3527e; Thu, 22 Jun 2023 14:17:07 +0200 (CEST) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by smtp-out1.suse.de (Postfix) with ESMTPS id 5F9FE22B75; Thu, 22 Jun 2023 12:17:07 +0000 (UTC) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id DA4E413905; Thu, 22 Jun 2023 12:17:06 +0000 (UTC) Received: from dovecot-director2.suse.de ([192.168.254.65]) by imap2.suse-dmz.suse.de with ESMTPSA id xxyRM8I7lGTeZQAAMHmgww (envelope-from ); Thu, 22 Jun 2023 12:17:06 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: b4d20715-10f6-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1; t=1687436227; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=VqsOz0ZUUPar+Aeqqn/vg5vN/i1kZj6Y/y/QQi+nP+k=; b=jFXs34WrC5j0dG6j5lAnXMgQdyC3TUHYJrRQt4jAJeQ1sd27uUaTRJTCYDx6z5V0EGPnQt 5NzhZqRhHZkZHfaz3FfdnYnR66lSQeyCZJArfjp7Aj3C1LKxyVE1NvWXke6VrV1EoKIWBJ RHKaNtI2Lrl3nAoeRifhSXI0sfzbPmE= Message-ID: <5484a739-5dc9-ab14-3bcf-3ba6c36542af@suse.com> Date: Thu, 22 Jun 2023 14:17:05 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH] Updates to Xen hypercall preemption Content-Language: en-US To: Peter Zijlstra Cc: Per Bilse , Andy Lutomirski , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , "maintainer:X86 ARCHITECTURE (32-BIT AND 64-BIT)" , "H. Peter Anvin" , Stefano Stabellini , Oleksandr Tyshchenko , "open list:X86 ENTRY CODE" , "moderated list:XEN HYPERVISOR INTERFACE" References: <20230621151442.2152425-1-per.bilse@citrix.com> <20230621164038.GM2053369@hirez.programming.kicks-ass.net> <6523f3e2-8dfc-c2dd-6d14-9e0c3ac93cc8@citrix.com> <20230621200409.GC4253@hirez.programming.kicks-ass.net> <20230622082607.GD4253@hirez.programming.kicks-ass.net> <4d29bfe0-975a-c97f-3e79-5b77d95d3494@suse.com> <20230622111552.GI4253@hirez.programming.kicks-ass.net> From: Juergen Gross In-Reply-To: <20230622111552.GI4253@hirez.programming.kicks-ass.net> Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="------------PK0vDO0RRRTH0WlSOU9WiVzN" This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --------------PK0vDO0RRRTH0WlSOU9WiVzN Content-Type: multipart/mixed; boundary="------------0TQKO60zEo7bFW9BBB40VRyf"; protected-headers="v1" From: Juergen Gross To: Peter Zijlstra Cc: Per Bilse , Andy Lutomirski , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , "maintainer:X86 ARCHITECTURE (32-BIT AND 64-BIT)" , "H. Peter Anvin" , Stefano Stabellini , Oleksandr Tyshchenko , "open list:X86 ENTRY CODE" , "moderated list:XEN HYPERVISOR INTERFACE" Message-ID: <5484a739-5dc9-ab14-3bcf-3ba6c36542af@suse.com> Subject: Re: [PATCH] Updates to Xen hypercall preemption References: <20230621151442.2152425-1-per.bilse@citrix.com> <20230621164038.GM2053369@hirez.programming.kicks-ass.net> <6523f3e2-8dfc-c2dd-6d14-9e0c3ac93cc8@citrix.com> <20230621200409.GC4253@hirez.programming.kicks-ass.net> <20230622082607.GD4253@hirez.programming.kicks-ass.net> <4d29bfe0-975a-c97f-3e79-5b77d95d3494@suse.com> <20230622111552.GI4253@hirez.programming.kicks-ass.net> In-Reply-To: <20230622111552.GI4253@hirez.programming.kicks-ass.net> --------------0TQKO60zEo7bFW9BBB40VRyf Content-Type: multipart/mixed; boundary="------------yjVdNd1aSIrIRK1Yn0XnEKrk" --------------yjVdNd1aSIrIRK1Yn0XnEKrk Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: base64 T24gMjIuMDYuMjMgMTM6MTUsIFBldGVyIFppamxzdHJhIHdyb3RlOg0KPiBPbiBUaHUsIEp1 biAyMiwgMjAyMyBhdCAxMjozMzozMVBNICswMjAwLCBKdWVyZ2VuIEdyb3NzIHdyb3RlOg0K Pj4gT24gMjIuMDYuMjMgMTA6MjYsIFBldGVyIFppamxzdHJhIHdyb3RlOg0KPiANCj4+Pj4g VGhlIGRvd25zaWRlIHdvdWxkIGJlIHRoYXQgc29tZSB3b3JrbG9hZHMgbWlnaHQgc2VlIHdv cnNlIHBlcmZvcm1hbmNlDQo+Pj4+IGR1ZSB0byBiYWNrZW5kIEkvTyBoYW5kbGluZyBtaWdo dCBnZXQgcHJlZW1wdGVkLg0KPj4+DQo+Pj4gSXMgdGhhdCBhbiBhY3R1YWwgY29uY2Vybj8g TWFyayB0aGlzIGEgbGVnYXh5IGludGVmYWNlIGFuZCBhbnlib2R5IHdobw0KPj4+IHdhbnRz IHRvIGdldCBhd2F5IGZyb20gaXQgdXBkYXRlcy4NCj4+DQo+PiBJdCBpc24ndCB0aGF0IGVh c3kuIFNlZSBhYm92ZS4NCj4gDQo+IFdlbGwsIHRoZSBvbGQgc3R1ZmYgZ2V0cyB0byB1c2Ug ZnVsbCBwcmVlbXB0aW9uIG9uIERvbTAsIHRoZW4gdGhlIG5ldw0KPiBzdHVmZiBnZXRzIG1v cmUgc2hpbnkgb3B0aW9ucy4NCg0KWWVhaCwgYnV0IHdoYXQgYWJvdXQgdGhlIGh5cGVyY2Fs bHMgZnJvbSBub24tZG9tMCBzeXN0ZW1zIG5lZWRpbmcgdGhlIHNhbWUNCmhhbmRsaW5nPyBU aGlzIHdvdWxkIHJlcXVpcmUgdG8gcnVuIGFsbCBndWVzdHMgd2hpY2ggYXJlIHVzaW5nIGh5 cGVyY2FsbHMNCmZ1bGx5IHByZWVtcHRpdmUuDQoNCj4gDQo+Pj4+IEp1c3QgdGhpbmtpbmcg LSBjYW4gZnVsbCBwcmVlbXB0aW9uIGJlIGVuYWJsZWQgcGVyIHByb2Nlc3M/DQo+Pj4NCj4+ PiBOb3BlLCB0aGF0J3MgYSBzeXN0ZW0gd2lkZSB0aGluZy4gUHJlZW1wdGlvbiBpcyBzb21l dGhpbmcgdGhhdCdzIGRyaXZlbg0KPj4+IGJ5IHRoZSByZXF1aXJlbWVudHMgb2YgdGhlIHRh c2tzIHRoYXQgcHJlZW1wdCwgbm90IHNvbWV0aGluZyBieSB0aGUNCj4+PiB0YXNrcyB0aGF0 IGdldCBwcmVlbXB0ZWQuDQo+Pg0KPj4gRGVwZW5kcy4gSWYgYSB0YXNrIGluIGEgbm9uLXBy ZWVtcHQgc3lzdGVtIGNvdWxkIHN3aXRjaCBpdHNlbGYgdG8gYmUNCj4+IHByZWVtcHRhYmxl LCB3ZSBjb3VsZCBkbyBzbyBhcm91bmQgaHlwZXJjYWxscyB3aXRob3V0IGNvbXByb21pc2lu ZyB0aGUNCj4+IGdlbmVyYWwgcHJlZW1wdGlvbiBzZXR0aW5nLiBEaXNhYmxpbmcgcHJlZW1w dGlvbiBpbiBhIHByZWVtcHRhYmxlIHN5c3RlbQ0KPj4gc2hvdWxkIGNvbnRpbnVlIHRvIGJl IHBvc3NpYmxlIGZvciBzaG9ydCBjb2RlIHBhdGhzIG9ubHksIG9mIGNvdXJzZS4NCj4gDQo+ IFNvIHNvbWV0aGluZyBhbG9uZyB0aG9zZSBsaW5lcyB3YXMgc3VnZ2VzdGVkIGVsc2V3aGVy ZSwgYW5kIEknbSBzdGlsbA0KPiBub3QgZW50aXJlbHkgc3VyZSBob3cgSSBmZWVsIGFib3V0 IGl0LCBidXQgbG9vayBoZXJlOg0KPiANCj4gICAgaHR0cHM6Ly9sa21sLmtlcm5lbC5vcmcv ci8yMDIzMDQwMzA1MjIzMy4xODgwNTY3LTEtYW5rdXIuYS5hcm9yYUBvcmFjbGUuY29tDQo+ IA0KPiBTcGVjaWZpY2FsbHkgcGF0Y2hlcyA3IGFuZCA4LiBJdCBpcyB2ZXJ5IGNsb3NlIHNv IHRoYXQgeW91IGN1cnJlbnRseQ0KPiBkby93YW50LiBUaG9zZSBwYXRjaGVzIGFyZSBtYW55 IG1vb25zIG9sZCBhbmQgaSd2ZSBub3Qgc2VlbiBhbiB1cGRhdGUgb24NCj4gdGhlbSwgc28g SSd2ZSBubyBpZGVhIHdoZXJlIHRoZXkgYXJlLg0KPiANCj4gSXQgc29sdmVzIGEgc2ltaWxh ciBwcm9ibGVtIGV4Y2VwdCBpdCBpcyAncmVwIHN0cmluZycgaW5zdHJ1Y3Rpb25zDQo+IHRo YXQncyBiZWluZyBpbnRlcnJ1cHRlZC4NCg0KUmlnaHQuIEknbGwgcGluZyBBbmt1ci4NCg0K DQpKdWVyZ2VuDQo= --------------yjVdNd1aSIrIRK1Yn0XnEKrk Content-Type: application/pgp-keys; name="OpenPGP_0xB0DE9DD628BF132F.asc" Content-Disposition: attachment; filename="OpenPGP_0xB0DE9DD628BF132F.asc" Content-Description: OpenPGP public key Content-Transfer-Encoding: quoted-printable -----BEGIN PGP PUBLIC KEY BLOCK----- xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjri oyspZKOBycWxw3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2 kaV2KL9650I1SJvedYm8Of8Zd621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i 1TXkH09XSSI8mEQ/ouNcMvIJNwQpd369y9bfIhWUiVXEK7MlRgUG6MvIj6Y3Am/B BLUVbDa4+gmzDC9ezlZkTZG2t14zWPvxXP3FAp2pkW0xqG7/377qptDmrk42GlSK N4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEBAAHNHEp1ZXJnZW4gR3Jvc3Mg PGpnQHBmdXBmLm5ldD7CwHkEEwECACMFAlOMcBYCGwMHCwkIBwMCAQYVCAIJCgsE FgIDAQIeAQIXgAAKCRCw3p3WKL8TL0KdB/93FcIZ3GCNwFU0u3EjNbNjmXBKDY4F UGNQH2lvWAUy+dnyThpwdtF/jQ6j9RwE8VP0+NXcYpGJDWlNb9/JmYqLiX2Q3Tye vpB0CA3dbBQp0OW0fgCetToGIQrg0MbD1C/sEOv8Mr4NAfbauXjZlvTj30H2jO0u +6WGM6nHwbh2l5O8ZiHkH32iaSTfN7Eu5RnNVUJbvoPHZ8SlM4KWm8rG+lIkGurq qu5gu8q8ZMKdsdGC4bBxdQKDKHEFExLJK/nRPFmAuGlId1E3fe10v5QL+qHI3EIP tyfE7i9Hz6rVwi7lWKgh7pe0ZvatAudZ+JNIlBKptb64FaiIOAWDCx1SzR9KdWVy Z2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+wsB5BBMBAgAjBQJTjHCvAhsDBwsJ CAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey/HmQf/RtI7kv5A2PS4 RF7HoZhPVPogNVbC4YA6lW7DrWf0teC0RR3MzXfy6pJ+7KLgkqMlrAbN/8Dvjoz7 8X+5vhH/rDLa9BuZQlhFmvcGtCF8eR0T1v0nC/nuAFVGy+67q2DH8As3KPu0344T BDpAvr2uYM4tSqxK4DURx5INz4ZZ0WNFHcqsfvlGJALDeE0LhITTd9jLzdDad1pQ SToCnLl6SBJZjDOX9QQcyUigZFtCXFst4dlsvddrxyqT1f17+2cFSdu7+ynLmXBK 7abQ3rwJY8SbRO2iRulogc5vr/RLMMlscDAiDkaFQWLoqHHOdfO9rURssHNN8WkM nQfvUewRz80hSnVlcmdlbiBHcm9zcyA8amdyb3NzQG5vdmVsbC5jb20+wsB5BBMB AgAjBQJTjHDXAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/ Ey8PUQf/ehmgCI9jB9hlgexLvgOtf7PJnFOXgMLdBQgBlVPO3/D9R8LtF9DBAFPN hlrsfIG/SqICoRCqUcJ96Pn3P7UUinFG/I0ECGF4EvTE1jnDkfJZr6jrbjgyoZHi w/4BNwSTL9rWASyLgqlA8u1mf+c2yUwcGhgkRAd1gOwungxcwzwqgljf0N51N5Jf VRHRtyfwq/ge+YEkDGcTU6Y0sPOuj4Dyfm8fJzdfHNQsWq3PnczLVELStJNdapwP OoE+lotufe3AM2vAEYJ9rTz3Cki4JFUsgLkHFqGZarrPGi1eyQcXeluldO3m91NK /1xMI3/+8jbO0tsn1tqSEUGIJi7ox80eSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1 c2UuZGU+wsB5BBMBAgAjBQJTjHDrAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgEC F4AACgkQsN6d1ii/Ey+LhQf9GL45eU5vOowA2u5N3g3OZUEBmDHVVbqMtzwlmNC4 k9Kx39r5s2vcFl4tXqW7g9/ViXYuiDXb0RfUpZiIUW89siKrkzmQ5dM7wRqzgJpJ wK8Bn2MIxAKArekWpiCKvBOB/Cc+3EXE78XdlxLyOi/NrmSGRIov0karw2RzMNOu 5D+jLRZQd1Sv27AR+IP3I8U4aqnhLpwhK7MEy9oCILlgZ1QZe49kpcumcZKORmzB TNh30FVKK1EvmV2xAKDoaEOgQB4iFQLhJCdP1I5aSgM5IVFdn7v5YgEYuJYx37Io N1EblHI//x/e2AaIHpzK5h88NEawQsaNRpNSrcfbFmAg987ATQRTjHAWAQgAyzH6 AOODMBjgfWE9VeCgsrwH3exNAU32gLq2xvjpWnHIs98ndPUDpnoxWQugJ6MpMncr 0xSwFmHEgnSEjK/PAjppgmyc57BwKII3sV4on+gDVFJR6Y8ZRwgnBC5mVM6JjQ5x Dk8WRXljExRfUX9pNhdE5eBOZJrDRoLUmmjDtKzWaDhIg/+1Hzz93X4fCQkNVbVF LELU9bMaLPBG/x5q4iYZ2k2ex6d47YE1ZFdMm6YBYMOljGkZKwYde5ldM9mo45mm we0icXKLkpEdIXKTZeKDO+Hdv1aqFuAcccTg9RXDQjmwhC3yEmrmcfl0+rPghO0I v3OOImwTEe4co3c1mwARAQABwsBfBBgBAgAJBQJTjHAWAhsMAAoJELDendYovxMv Q/gH/1ha96vm4P/L+bQpJwrZ/dneZcmEwTbe8YFsw2V/Buv6Z4Mysln3nQK5ZadD 534CF7TDVft7fC4tU4PONxF5D+/tvgkPfDAfF77zy2AH1vJzQ1fOU8lYFpZXTXIH b+559UqvIB8AdgR3SAJGHHt4RKA0F7f5ipYBBrC6cyXJyyoprT10EMvU8VGiwXvT yJz3fjoYsdFzpWPlJEBRMedCot60g5dmbdrZ5DWClAr0yau47zpWj3enf1tLWaqc suylWsviuGjKGw7KHQd3bxALOknAp4dN3QwBYCKuZ7AddY9yjynVaD5X7nF9nO5B jR/i1DG86lem3iBDXzXsZDn8R38=3D =3D2wuH -----END PGP PUBLIC KEY BLOCK----- --------------yjVdNd1aSIrIRK1Yn0XnEKrk-- --------------0TQKO60zEo7bFW9BBB40VRyf-- --------------PK0vDO0RRRTH0WlSOU9WiVzN Content-Type: application/pgp-signature; name="OpenPGP_signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="OpenPGP_signature" -----BEGIN PGP SIGNATURE----- wsB5BAABCAAjFiEEhRJncuj2BJSl0Jf3sN6d1ii/Ey8FAmSUO8EFAwAAAAAACgkQsN6d1ii/Ey9c Bwf+LKk00R9TWDPdBVz/78ddnQ9KJX3R4vASOFPZ/174/UmM1TKHmmAo7/92tYwuKPmsSEdysEBQ 1DrRSKUAymbP7MHn6vVNpjrcFb/xujdt19Q0NTNApCGKydfrWSUpkNdggEHAqJOvOX9jtYFFT4lk RisW2QQiEozYdG+vn9jQ7zejPB9NnaBEhE8+imHWxvRDEpWvrekDg96p0NwWK2a1YhYjPpSshWcR yjsFqI6S3pLxt7GHgQ4eQLW1kfHh2LG6prja9DrQz3eqAtQOAAHalD7Cx8P0nJ6ZZ3oX8d/+tP5f T9VFJO69dabOC2tXuO/9ZK41o5NKK3VJVr8mR8D+3A== =4uJs -----END PGP SIGNATURE----- --------------PK0vDO0RRRTH0WlSOU9WiVzN-- From xen-devel-bounces@lists.xenproject.org Thu Jun 22 12:39:13 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 12:39:13 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553523.864121 (Exim 4.92) (envelope-from ) id 1qCJad-0003D1-KI; Thu, 22 Jun 2023 12:39:07 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553523.864121; Thu, 22 Jun 2023 12:39:07 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCJad-0003Ct-Gi; Thu, 22 Jun 2023 12:39:07 +0000 Received: by outflank-mailman (input) for mailman id 553523; Thu, 22 Jun 2023 12:39:05 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCJab-0003Cn-Q1 for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 12:39:05 +0000 Received: from mail-wm1-x32a.google.com (mail-wm1-x32a.google.com [2a00:1450:4864:20::32a]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id c4b06a8e-10f9-11ee-8611-37d641c3527e; Thu, 22 Jun 2023 14:39:03 +0200 (CEST) Received: by mail-wm1-x32a.google.com with SMTP id 5b1f17b1804b1-3f9bece8e19so22385525e9.1 for ; Thu, 22 Jun 2023 05:39:02 -0700 (PDT) Received: from EMEAENGAAD19049. (default-46-102-197-194.interdsl.co.uk. [46.102.197.194]) by smtp.gmail.com with ESMTPSA id k37-20020a05600c1ca500b003f9b3829269sm2602180wms.2.2023.06.22.05.39.01 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 22 Jun 2023 05:39:01 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: c4b06a8e-10f9-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cloud.com; s=cloud; t=1687437542; x=1690029542; h=in-reply-to:content-disposition:mime-version:references:subject:cc :to:from:date:message-id:from:to:cc:subject:date:message-id:reply-to; bh=n5HL61NbRzkQwJPyPEEZstRpgUECb6lGMy/OYqG0tEQ=; b=XYMvo0ERsoIPEh16KJlzxH4tG3nlKHJOStMW9OwGaPyEiF2UJ48WQyq6WCyOMNaEjX R2Dbdql21ocL+NbxGzi3SgJOQ/WbKHXHsbQkQPi1t3YeyljR4/fSshxGuM1qBF9wlV3v nClLue4cxC7+3syJu0GoXHX7CZ0t+jaUTfefY= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687437542; x=1690029542; h=in-reply-to:content-disposition:mime-version:references:subject:cc :to:from:date:message-id:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=n5HL61NbRzkQwJPyPEEZstRpgUECb6lGMy/OYqG0tEQ=; b=EmXBxaNvaES4d1cK8ttW3FYKLNESMDbPqbySIyziYNmijEuv+0vex/PLRj49My0NhL V/STpuGk+bnABjd8uD18LXEExWc6lmr7vycsN0zCIbLSbl86adOsh8ARm4ybJluOrldP t7HhveNFKOMo8ivdypFVW2SQho0ZB4FjZwT2TNckvRs8yMrDM8XFvnnsTEfgczJ7oErg vtMLtU/tXhfEA2vm6eF66CC0ICdfh3WjWb4+qB6vtkrfqJ8Aaa2xJgXFa3bD7vsn6lDq x83+2KeiuHOYxKlWKdfeSR4jnQiZvZlsF3QVXNvZlLxHWW00EhWejaOapvJ3emjc0o2C pe9A== X-Gm-Message-State: AC+VfDxN4o41C0znZrwz/Wn6LNFBemWCXVTLYkEf+ikyDwPnRFOUoAWJ Fr4RdCznI7HsfVMiCEX/Y7OOhg== X-Google-Smtp-Source: ACHHUZ6JnIjjbM4GScQYP2igBun7zgaV/ht7sPAVxEFdmbh/tckw/4yPKiNQWW1zgnp/s/qwvxUuDg== X-Received: by 2002:a05:600c:3645:b0:3f9:255e:ee3b with SMTP id y5-20020a05600c364500b003f9255eee3bmr14124828wmq.30.1687437542314; Thu, 22 Jun 2023 05:39:02 -0700 (PDT) Message-ID: <649440e5.050a0220.708ad.038d@mx.google.com> X-Google-Original-Message-ID: Date: Thu, 22 Jun 2023 13:39:00 +0100 From: Alejandro Vallejo To: Jan Beulich Cc: Andrew Cooper , George Dunlap , Julien Grall , Stefano Stabellini , Wei Liu , Xen-devel Subject: Re: [PATCH] mm/pdx: Add comments throughout the codebase for pdx References: <20230615162741.2008-1-alejandro.vallejo@cloud.com> <984e13ef-a73e-126c-0bf8-58bee9beb7b2@suse.com> <64930879.1c0a0220.28719.ce38@mx.google.com> <692b3db7-dfe8-8ed7-71e5-b29dcbba7f1c@suse.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <692b3db7-dfe8-8ed7-71e5-b29dcbba7f1c@suse.com> On Thu, Jun 22, 2023 at 11:15:17AM +0200, Jan Beulich wrote: > >>> --- a/xen/include/xen/mm.h > >>> +++ b/xen/include/xen/mm.h > >>> @@ -31,6 +31,22 @@ > >>> * (i.e. all devices assigned to) a guest share a single DMA address space > >>> * and, by default, Xen will ensure dfn == pfn. > >>> * > >>> + * pdx: Page InDeX > >>> + * Indices into the frame table holding the per-page's book-keeping > >>> + * metadata. A compression scheme is used and there's a non-identity > >>> + * mapping between valid(mfn) <-> valid(pdx) See the comments in pdx.c > >>> + * for an in-depth explanation of that mapping. > >> > >> The mapping may very well be (and on x86 typically is) an identity > >> one. IOW you want to describe not only the compression case, but also > >> the "no compression possible" one. > > Point taken. I'll rephrase it slightly as "possibly non-identity" and > > explicitly state the "no compression is possible" case. > > > >> > >> PDXes also aren't just indexes to the frame table, but also to the > >> direct mapping. > > I had something to that effect earlier on, but I removed it because it > > doesn't seem to be the case on ARM. There's a directmap_base_pdx global > > that states the first pdx to be mapped on the directmap. > > Which would merely make it a biased index. I very much hope they > eliminate holes (and not just unused leading space) from the directmap > as well. Yes, the directmap offset is still just a shifted pdx (albeit biased, as you said), so the holes are naturally removed. Regardless, having to explain a port-specific quirk in the main mm header seems like too much, so I sticked with the common denominator: "A pdx is the frame table index of a valid entry", and that holds for every port. > >>> + * This is a technique to avoid wasting memory on machines known to have > >>> + * split their machine address space in two big discontinuous and highly > >>> + * disjoint chunks. > >> > >> Why two? There can be any number, and in fact on the system I originally > >> had data from for reference (when first writing this code) iirc there > >> were 8 nodes, each with a chunk of memory far away from the other chunks. > >> The compression scheme used merely requires that some "inner" bits are > >> unused (always zero) in all of those ranges. > > Well, our implementation only supports two and I didn't see any obvious > > hints about intending to increasing that number. > > Where are you taking that "supports two" from? When I first wrote this code, > it was tested against a system with 8 (maybe it was 4, but certainly more > than 2) discontiguous regions (not counting the hole below 4G). You can have any number, but there's a single contiguous bit slice being removed, as far as I can see. The adaptor functions in xen/include/xen/pdx.h perform a single shift. static inline unsigned long pfn_to_pdx(unsigned long pfn) { return (pfn & pfn_pdx_bottom_mask) | ((pfn & pfn_top_mask) >> pfn_pdx_hole_shift); } static inline unsigned long pdx_to_pfn(unsigned long pdx) { return (pdx & pfn_pdx_bottom_mask) | ((pdx << pfn_pdx_hole_shift) & pfn_top_mask); } Unless I'm missing some non-obvious piece of the puzzle, I'd say that for a truly general compressor we'd need some kind of loop over the hole mask. > > Out of curiosity (and for posterity's sake), what was/is that system? > > I'm not sure I'm permitted to mention that. I'm pretty sure I carefully > avoided mentioning the partner of ours back at the time. Fair enough. Alejandro From xen-devel-bounces@lists.xenproject.org Thu Jun 22 12:41:56 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 12:41:56 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553527.864130 (Exim 4.92) (envelope-from ) id 1qCJdA-0004dT-W5; Thu, 22 Jun 2023 12:41:44 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553527.864130; Thu, 22 Jun 2023 12:41:44 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCJdA-0004dM-TT; Thu, 22 Jun 2023 12:41:44 +0000 Received: by outflank-mailman (input) for mailman id 553527; Thu, 22 Jun 2023 12:41:43 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCJd9-0004dG-GT for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 12:41:43 +0000 Received: from EUR04-VI1-obe.outbound.protection.outlook.com (mail-vi1eur04on0625.outbound.protection.outlook.com [2a01:111:f400:fe0e::625]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 2305a474-10fa-11ee-8611-37d641c3527e; Thu, 22 Jun 2023 14:41:41 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by GVXPR04MB9803.eurprd04.prod.outlook.com (2603:10a6:150:111::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.24; Thu, 22 Jun 2023 12:41:37 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6521.024; Thu, 22 Jun 2023 12:41:36 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 2305a474-10fa-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=aY9sOxatgPSCWIaf1DLJCFWn9pkDy9gHhOVCcvYxWbjbK0uEuPpOUADfL5u6DBQKdGRlcvCQL+joF9xrVcbDLV1lqCT/U8FolKr3NbdvMU7Al1hmooZZ0QJax7rbLrk46gFLydAZwFpebM7sONXZzyjmrhcA3Kfhj+q57guEKetnvia2sE9jcccSFUQ8beAmtJm6C1dSXJiaLGXGLw5uUFD8+eKtLXw9eHfzjV57c8axPwnVqf4AwwvFT8koWpOeVPeCZVJDQn7i2B1qpBCsZrarxqI6QfLx2lVfLgrFiqWshN5WjnCfdU3/p+LTunc60PJ87aznIIjhi3BtDBpASw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=0s2bwkJebguGX04knwEod3khKYd/2r92OdeVJeu1nwM=; b=GXP2xkiVV8xp5oBLTnOgmi7Iiw2CdQy8zOoBf9jci8LlpxJ7snECxgtOUJRkOe66BGio8reA9S+pkdTok19WMdokgu4YFtYmwiBpM/FAZsd0/7EDYBwVE8JjQ+GmVtTaMi18g/sXe2sn6E2eYK114p1GJvW6PiS8K/9KwaJky56Qh5564PaiBllARFxSBi4TikMIlZoIVweCwgtqUiqHtv7ff+m9Unki8tuWqmqD6bRimxsipHK39PdEmjB0Htrto3aXXL0D032NJHHdJDjjBAzuc4dYPyapZUb6/D+p8Tltynszb2DMRtW6hStAWk8VO0pruY+QA9fUFIFC5Bf64A== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=0s2bwkJebguGX04knwEod3khKYd/2r92OdeVJeu1nwM=; b=qAfeRzhUtu3Zyc83jdnkKPKF95QMYjYhA+n3c7ZtpnFPgjotsIVsxXHAwHB5Np36WxYdMTX15awWU1yieAAQoey2FkcbpjsyldxGAr2FTpNYpZIARgl6gKp0VbGKWFNs2aq9mjIAGAtB8VyPowfRHln6AwpZGi+VNQTmsCbHsAcGFRbWhCbT0mjPn3VL2mowPGeV6f+0Lax89/oUe20y+9PRpPuY1VzYUe3FmsIdG9+wmd6rs6rfBg9n/VKC9DfyzTPu9hzNsD20+J4kKJxrrhUSoKbFo1Z8n83C5j08GjsWunkbIHnX5mFTaUyXmQaLDLQj+q6ktj0GA9v5tjjrUg== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <62621a62-de66-7b6e-97d5-4b65f630bf4d@suse.com> Date: Thu, 22 Jun 2023 14:41:33 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [XEN PATCH v3] xen/include: avoid using a compiler extension for BUILD_BUG_ON_ZERO. Content-Language: en-US To: Nicola Vetrini Cc: sstabellini@kernel.org, michal.orzel@amd.com, xenia.ragiadakou@amd.com, ayan.kumar.halder@amd.com, consulting@bugseng.com, andrew.cooper3@citrix.com, roger.pau@citrix.com, bertrand.marquis@arm.com, julien@xen.org, George Dunlap , Wei Liu , xen-devel@lists.xenproject.org References: <7c04191b-62d2-6802-df77-e262d567cb7d@bugseng.com> From: Jan Beulich In-Reply-To: <7c04191b-62d2-6802-df77-e262d567cb7d@bugseng.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR3P281CA0210.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:a5::19) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|GVXPR04MB9803:EE_ X-MS-Office365-Filtering-Correlation-Id: 1421ede9-101d-4766-c95c-08db731e043d X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: HfRNiKhROR7xnFJRDAxk7I2FRXdicaVM8zn1aBcKkyVko10SZ5PHeFZWW1ThsxGGIFGEqiVQwypYovkrSUwKCQThF0qHD69aIeQdWrvgoXUU3cRLGa8EOKADJLuUt6KYwrqrKQx8QeuE8rfpfLID/1znM+/c/vPfgFfOW1pwCKbZp84h4TsL3Vt/SQmu+7fAPpaH+xLYQhD7yqW+NQOiZVEh/SPdZnIQos+3q4trxLSUQDL/0snOJvYDy0mFvk0mG2IWafxwMpAbs4MrVMRssFtpO8mATfYzdohvor8jtxfxTTYLn4EqMTSOKgcs81e+7XRFD3TRYNH3hFfmkoDw+OCcKrIdUrXuCG94l+SVV0/aDv4XqCUpHso6gKV8QknCTL5HtAMPZegSDE1d6QH+ijSxpaLMdOk70O4EgJtXYdKFwUTULkoMgAZhfWGqIhLnuNM8y4yQ3xiQlfALnKxq4gP1r9gz7K9dWybFmTN5H5/9c20kh8piL5cjgDsgmnaUCzmZzWcj4Xp9Bn9EDBlsrRefmwFOlzsDX91gvmbWgwJtzM6drIcrzYNQM0nVfsb4lKlDQ7lzSDlO9LTIRmIjBk3escleMG1aW+VMyBXyS6MA+Z4+iTwMb5Gno3e1k2w2sE0Q3SajkFFMZPe+hxROFA== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(366004)(136003)(376002)(346002)(396003)(39860400002)(451199021)(36756003)(86362001)(54906003)(31696002)(31686004)(38100700002)(2616005)(6506007)(53546011)(186003)(26005)(6512007)(8676002)(478600001)(6666004)(4326008)(6486002)(66476007)(6916009)(66946007)(66556008)(316002)(5660300002)(8936002)(41300700001)(2906002)(7416002)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?Q0FIZVU4Z016b0FWZ0xOcERKZ3VTNXRxM1o5WExkeG9Ec0hkSXd3eTdpZGFX?= =?utf-8?B?SXEvK1hvcEptQVI0ZmprcFhlbVJOOXdHZ1BicWN0eVlkNUxWeFNUWGZDbjVk?= =?utf-8?B?OCthT3BmTGgvSHNDSlJLQkVnazdmTnpjQ29palZQV3Q5bGR1U1hkcWEvQVds?= =?utf-8?B?OXE3bmd3OElPdm9WamVoUHBoWHhucXJRZkM2ZUQvbGh2VzdyWUVISllYeXE1?= =?utf-8?B?K1dvU1BlNTdWbWlqTno4RHQ3Zk9RcGs1VERuc1FOTjBva1lFK29mWHNHWVNC?= =?utf-8?B?Z2FGRmpGcGUyd0tWVjUvYnZmZVJiZnFaRXpqWG94RlVESGpqbUF4d2s0bTh4?= =?utf-8?B?c3dFZWVnK3F3cjJOaHR3OTJhYmdCd3dUVnRoNEFTWTJNcy9wbEhwTEwzZDVX?= =?utf-8?B?UzZUYXlFQm8xUGd5SmNuMkZCZzAyeHI5Y2VFaGRGbnRIZ3lJQXVnSFdJZG1W?= =?utf-8?B?U1lvclZDd09yL1R6S25ydEU0NENIcEJoVnZXRnczdVh4RFQvVFd3MkkzWDgz?= =?utf-8?B?VHR2ZzZLWmVjdEphencwVUZWQ1JWNzdDYTkyMktrTzRQTDFDYlJEWWo1Rys3?= =?utf-8?B?TGhFUUx4ODkzbi9kTWRhQ1g5cCtUak1zbGJGOGZpRXBGUm12aDBlTzVGTjBL?= =?utf-8?B?V3E0Vk9NdE1IL3ZFVFBMYSs2Q3g1UndCTUo5ekJOZzcrbjRaNTM4dzBwanYx?= =?utf-8?B?N1N3eVkvdXA5eEw0Q0NKZms1Sm9iWDAwbnNPZFpBVmd0eUJqbWVUb1hCS3ZZ?= =?utf-8?B?eGlDTzEvRy8xaVBnK0VCbUxVR3M4c2h5ZFBNMTRUVWdrdm1KWjY2VXJRQVU4?= =?utf-8?B?UzU3KzlvbXRkb1loQi9DMGxIUjB2U0taNnVXOUlwWnpyNFhyNXF3RlJRdnFm?= =?utf-8?B?cDloQjBaMWROYU5KN01vaUpQVUhXSmtoQ0JPSUY3N2NvZ0NOOERmdlJRcHE1?= =?utf-8?B?M1d5SEUybTVKejlVWW1DSy9LTks5dWw3NGQ1NkFMQXN3QWRkYUtsVUdlMmxR?= =?utf-8?B?ZlNJcmtRaTI2UTltQVpRcGdBcjR4ZDJkZFI5dlkxRWJPVUNaYlZNa05DZHVt?= =?utf-8?B?SlZaOHVramg5enpuczRBVzAwNXEvbnNsbld4Umw2dUhubjZHWGxsTytUZlR6?= =?utf-8?B?UVpUY3ZXLytxczBSbzFFQzFFQUtoTitNd2xXQTJEODZ2SHhYK0dicVZtaEdM?= =?utf-8?B?bE1wWXNabjdrL1hxZys1SUxqYmZISUpEU244Y1ovMmFqenJ0YlFhQ2F6RnNC?= =?utf-8?B?NjdtanVhYlZoU3VTajJmZ0U5T1pYU3NPRXk1Mno3dG1rbUw2Z0FVYUtyVWVS?= =?utf-8?B?ME8vMHdNQURrc0ZJZWhPcUZoNjUwZVl5WlNnUHBkcGlYQmpGbUJ0WHlFMXZG?= =?utf-8?B?bjVuQmZ2TjR6WXJ2YjZzaS9sbDBrSkNqWnVaOXZ6N2RyUU9PcEh4eE02Y0th?= =?utf-8?B?Sk5mNjVpRDZUZldoZkQ4VXFwQWhBQ295KzQ0WWJaL2hGcUJTaFRFdjczVWl0?= =?utf-8?B?OGgzVzFQVkNqcUhPaHZZcDdQUE8rNkJYUXNWZzRLa3RaZzNsWkJpSnBZbFJT?= =?utf-8?B?KzI0R3JVUldaYzJHT3UxVTR3ZHRQdVVGK2ZjcC9LODhyVE5XZUg5dDZ4Mm9r?= =?utf-8?B?U2NUYUw0S2R4S1FUMjREZmtmQk9Td0ZmMnRSb1NEZkdjVkl4b1ByUzlpYy9W?= =?utf-8?B?TnJncXdkZnBsa21oOFVqd0lLNWVpUVpnUTN5eDY2cVBBOHVUVTROMElFN0dh?= =?utf-8?B?eGJwYlVFQXhHa2JyYzFTV0d3Sy9GcWd0TUxKbTFYUUFnL243Q1ZmMHRrdmV5?= =?utf-8?B?RmI1WWZzMUxTS0hzNi9lSEw5djNQK2Y4VENyMjFPbHJCbU1ldFpFT2RkVGZ0?= =?utf-8?B?RS9jRkRNcHRndXZ0QlhCNFpSa0xmSVVFaHQ5R21WSDlUa2dzdCs0S1dMOG5o?= =?utf-8?B?WEpCYlQ4TFVDVUlBZUM3bHZJb0gxMFUxNWVDTlFhTUdRZ3I5THRUTzRtMFpW?= =?utf-8?B?WGpLcCtiVmZVK2hCUTgxRTBZcHZUM3hLM1FUcUNJNFMrUlhnMlJCNUJKMmM1?= =?utf-8?B?ZVRGSldDY3ZSUFpmRVdoRmZiVkZBSkszbGh0bjFPKzV5YUZUbzk5cVRQYXAw?= =?utf-8?Q?IFHvh2+kmAIqZFxyBdPVFuQTZ?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 1421ede9-101d-4766-c95c-08db731e043d X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 22 Jun 2023 12:41:36.2184 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: j4CnvWCvb44INHYpmG33clhKSErOlc1jkOdDzN9IFub7YM6qIhqy785y6fGrRPMwNuXRguyGxRWWKpy5TWMx1Q== X-MS-Exchange-Transport-CrossTenantHeadersStamped: GVXPR04MB9803 On 22.06.2023 11:34, Nicola Vetrini wrote: > > > On 22/06/23 10:56, Jan Beulich wrote: >> On 22.06.2023 10:24, Nicola Vetrini wrote: >>> --- a/xen/include/xen/lib.h >>> +++ b/xen/include/xen/lib.h >>> @@ -51,9 +51,10 @@ >>> e.g. in a structure initializer (or where-ever else comma expressions >>> aren't permitted). */ >>> #define BUILD_BUG_ON_ZERO(cond) \ >>> - sizeof(struct { _Static_assert(!(cond), "!(" #cond ")"); }) >>> + (sizeof(struct { char c; _Static_assert(!(cond), "!(" #cond ")"); }) & 0U) >>> #else >>> -#define BUILD_BUG_ON_ZERO(cond) sizeof(struct { int:-!!(cond); }) >>> +#define BUILD_BUG_ON_ZERO(cond) \ >>> + (sizeof(struct { unsigned u : (cond) ? -1 : 1; }) & 0U) >> >> Given your remark on named bitfields not being allowed to be zero length >> (which hopefully holds universally, i.e. isn't subject to compiler >> extensions), how about >> >> #define BUILD_BUG_ON_ZERO(cond) (sizeof(struct { int _:!(cond); }) & 0) > > Well, the reason for the change is to drop any assumption on > compiler-specific quirks that may arise (it would be a surprise if this > wasn't the case, though) And the reason for my suggestion was that it's shorter, and typically I view "shorter" as also "easier to read/follow". >> ? (Implicitly, as said before, I question the value of the U suffixes here. >> Even better might be to make sure the expression is explicitly not of >> unsigned type, to avoid surprises if someone used ~BUILD_BUG_ON_ZERO() >> somewhere.) > > The documentation for the macro definition states that the expression > must have value 0 and type size_t when cond is false. If I understand > correctly what you're saying here, then this is not allowed by the > documentation. Well, it's the comment that says this, yes. Question is whether the comment mandates the behavior or merely describes the current implementation. Imo it's the latter ... But anyway, switching the result type is independent of the present goal. Jan From xen-devel-bounces@lists.xenproject.org Thu Jun 22 12:56:15 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 12:56:15 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553534.864141 (Exim 4.92) (envelope-from ) id 1qCJr6-0006Gh-Ak; Thu, 22 Jun 2023 12:56:08 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553534.864141; Thu, 22 Jun 2023 12:56:08 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCJr6-0006Ga-84; Thu, 22 Jun 2023 12:56:08 +0000 Received: by outflank-mailman (input) for mailman id 553534; Thu, 22 Jun 2023 12:56:06 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCJr4-0006GQ-LW; Thu, 22 Jun 2023 12:56:06 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCJr4-0008Gr-Ag; Thu, 22 Jun 2023 12:56:06 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCJr3-0004xt-U3; Thu, 22 Jun 2023 12:56:06 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qCJr3-0008KN-TZ; Thu, 22 Jun 2023 12:56:05 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=6m96w/9feszHyaFTaxucdTm7G+PMgJOAX7nO1ePSldQ=; b=siV7NDImjXm/NbS4UXkaKUyNXk 6PwPE3TC44oMbHqaNaKtX5dUEBjr2ZvDyflahFuF+kKg7XYpkjc5iypH1o+lpnPojh4Cb/XN0/5TO zHUTaIToduLkJWNobuU+gOwojg2z5hlHt+jI+EIGddYLJk6DpD8j+RQ+Frqu687EhKKQ=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable test] 181545: trouble: fail/pass/starved X-Osstest-Failures: xen-unstable:build-armhf::broken:regression xen-unstable:build-armhf:host-install(4):broken:regression xen-unstable:test-amd64-i386-migrupgrade:xen-install/dst_host:fail:heisenbug xen-unstable:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking xen-unstable:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking xen-unstable:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking xen-unstable:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking xen-unstable:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking xen-unstable:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking xen-unstable:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking xen-unstable:build-armhf-libvirt:build-check(1):blocked:nonblocking xen-unstable:test-armhf-armhf-xl:build-check(1):blocked:nonblocking xen-unstable:test-armhf-armhf-examine:build-check(1):blocked:nonblocking xen-unstable:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking xen-unstable:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking xen-unstable:test-amd64-amd64-libvirt-vhd:guest-start/debian.repeat:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:windows-install:fail:nonblocking xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl:hosts-allocate:starved:nonblocking xen-unstable:test-arm64-arm64-xl-xsm:hosts-allocate:starved:nonblocking xen-unstable:test-arm64-arm64-xl-credit2:hosts-allocate:starved:nonblocking xen-unstable:test-arm64-arm64-libvirt-raw:hosts-allocate:starved:nonblocking xen-unstable:test-arm64-arm64-libvirt-xsm:hosts-allocate:starved:nonblocking xen-unstable:test-arm64-arm64-xl-credit1:hosts-allocate:starved:nonblocking xen-unstable:test-arm64-arm64-xl-vhd:hosts-allocate:starved:nonblocking xen-unstable:test-arm64-arm64-xl-thunderx:hosts-allocate:starved:nonblocking X-Osstest-Versions-This: xen=7a25a1501ca941c3e01b0c4e624ace05417f1587 X-Osstest-Versions-That: xen=7a25a1501ca941c3e01b0c4e624ace05417f1587 From: osstest service owner Date: Thu, 22 Jun 2023 12:56:05 +0000 flight 181545 xen-unstable real [real] http://logs.test-lab.xenproject.org/osstest/logs/181545/ Failures and problems with tests :-( Tests which did not succeed and are blocking, including tests which could not be run: build-armhf broken in 181528 build-armhf 4 host-install(4) broken in 181528 REGR. vs. 181545 Tests which are failing intermittently (not blocking): test-amd64-i386-migrupgrade 11 xen-install/dst_host fail pass in 181528 Tests which did not succeed, but are not blocking: test-armhf-armhf-xl-multivcpu 1 build-check(1) blocked in 181528 n/a test-armhf-armhf-libvirt-raw 1 build-check(1) blocked in 181528 n/a test-armhf-armhf-xl-credit2 1 build-check(1) blocked in 181528 n/a test-armhf-armhf-libvirt 1 build-check(1) blocked in 181528 n/a test-armhf-armhf-xl-vhd 1 build-check(1) blocked in 181528 n/a test-armhf-armhf-xl-arndale 1 build-check(1) blocked in 181528 n/a test-armhf-armhf-xl-credit1 1 build-check(1) blocked in 181528 n/a build-armhf-libvirt 1 build-check(1) blocked in 181528 n/a test-armhf-armhf-xl 1 build-check(1) blocked in 181528 n/a test-armhf-armhf-examine 1 build-check(1) blocked in 181528 n/a test-armhf-armhf-xl-rtds 1 build-check(1) blocked in 181528 n/a test-armhf-armhf-libvirt-qcow2 1 build-check(1) blocked in 181528 n/a test-amd64-amd64-libvirt-vhd 19 guest-start/debian.repeat fail in 181528 like 181498 test-amd64-amd64-xl-qemuu-win7-amd64 12 windows-install fail in 181528 like 181498 test-arm64-arm64-xl-thunderx 15 migrate-support-check fail in 181528 never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail in 181528 never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail in 181528 never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail in 181528 never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail in 181528 never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail in 181528 never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail in 181528 never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail in 181528 never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail in 181528 never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail in 181528 never pass test-arm64-arm64-xl 15 migrate-support-check fail in 181528 never pass test-arm64-arm64-xl 16 saverestore-support-check fail in 181528 never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail in 181528 never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail in 181528 never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail in 181528 never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail in 181528 never pass test-armhf-armhf-libvirt 16 saverestore-support-check fail like 181481 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail like 181481 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail like 181481 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 181513 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 181528 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop fail like 181528 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 181528 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 181528 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop fail like 181528 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop fail like 181528 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 181528 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop fail like 181528 test-amd64-i386-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-i386-xl-pvshim 14 guest-start fail never pass test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-i386-libvirt 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-i386-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 15 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-check fail never pass test-armhf-armhf-libvirt 15 migrate-support-check fail never pass test-armhf-armhf-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 15 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 16 saverestore-support-check fail never pass test-armhf-armhf-xl-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 15 saverestore-support-check fail never pass test-armhf-armhf-xl 15 migrate-support-check fail never pass test-armhf-armhf-xl 16 saverestore-support-check fail never pass test-armhf-armhf-xl-multivcpu 15 migrate-support-check fail never pass test-armhf-armhf-xl-multivcpu 16 saverestore-support-check fail never pass test-armhf-armhf-xl-credit1 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 16 saverestore-support-check fail never pass test-armhf-armhf-xl-credit2 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit2 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail never pass test-arm64-arm64-xl 3 hosts-allocate starved n/a test-arm64-arm64-xl-xsm 3 hosts-allocate starved n/a test-arm64-arm64-xl-credit2 3 hosts-allocate starved n/a test-arm64-arm64-libvirt-raw 3 hosts-allocate starved n/a test-arm64-arm64-libvirt-xsm 3 hosts-allocate starved n/a test-arm64-arm64-xl-credit1 3 hosts-allocate starved n/a test-arm64-arm64-xl-vhd 3 hosts-allocate starved n/a test-arm64-arm64-xl-thunderx 3 hosts-allocate starved n/a version targeted for testing: xen 7a25a1501ca941c3e01b0c4e624ace05417f1587 baseline version: xen 7a25a1501ca941c3e01b0c4e624ace05417f1587 Last test of basis 181545 2023-06-22 01:52:10 Z 0 days Testing same since (not found) 0 attempts jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64-xtf pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-prev pass build-i386-prev pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-xtf-amd64-amd64-1 pass test-xtf-amd64-amd64-2 pass test-xtf-amd64-amd64-3 pass test-xtf-amd64-amd64-4 pass test-xtf-amd64-amd64-5 pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl starved test-armhf-armhf-xl pass test-amd64-i386-xl pass test-amd64-coresched-i386-xl pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-i386-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-i386-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm starved test-amd64-i386-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm starved test-amd64-i386-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-i386-qemut-rhel6hvm-amd pass test-amd64-i386-qemuu-rhel6hvm-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-i386-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-freebsd10-amd64 pass test-amd64-amd64-qemuu-freebsd11-amd64 pass test-amd64-amd64-qemuu-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-i386-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-i386-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-i386-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-amd64-i386-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale pass test-amd64-amd64-examine-bios pass test-amd64-i386-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 starved test-armhf-armhf-xl-credit1 pass test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 starved test-armhf-armhf-xl-credit2 pass test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine pass test-amd64-i386-examine pass test-amd64-i386-freebsd10-i386 pass test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-i386-qemut-rhel6hvm-intel pass test-amd64-i386-qemuu-rhel6hvm-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt pass test-amd64-i386-libvirt pass test-amd64-amd64-livepatch pass test-amd64-i386-livepatch pass test-amd64-amd64-migrupgrade pass test-amd64-i386-migrupgrade fail test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu pass test-amd64-amd64-pair pass test-amd64-i386-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-i386-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-i386-xl-pvshim fail test-amd64-amd64-pygrub pass test-armhf-armhf-libvirt-qcow2 pass test-amd64-amd64-xl-qcow2 pass test-arm64-arm64-libvirt-raw starved test-armhf-armhf-libvirt-raw pass test-amd64-i386-libvirt-raw pass test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds pass test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-amd64-i386-xl-shadow pass test-arm64-arm64-xl-thunderx starved test-amd64-amd64-examine-uefi pass test-amd64-i386-examine-uefi pass test-amd64-amd64-libvirt-vhd pass test-arm64-arm64-xl-vhd starved test-armhf-armhf-xl-vhd pass test-amd64-i386-xl-vhd pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary broken-job build-armhf broken Published tested tree is already up to date. From xen-devel-bounces@lists.xenproject.org Thu Jun 22 13:00:04 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 13:00:04 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553541.864151 (Exim 4.92) (envelope-from ) id 1qCJus-00076p-SN; Thu, 22 Jun 2023 13:00:02 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553541.864151; Thu, 22 Jun 2023 13:00:02 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCJus-00076D-Oo; Thu, 22 Jun 2023 13:00:02 +0000 Received: by outflank-mailman (input) for mailman id 553541; Thu, 22 Jun 2023 13:00:00 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCJuq-0006rW-Qa; Thu, 22 Jun 2023 13:00:00 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCJuq-0008K7-Nd; Thu, 22 Jun 2023 13:00:00 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCJuq-0005Dj-Cc; Thu, 22 Jun 2023 13:00:00 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qCJuq-0001Gh-C9; Thu, 22 Jun 2023 13:00:00 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=uIsBeRUvtojPQRmlMOlEF0wv5awlCgFkwGuTFyxankQ=; b=NTCdAiUEB+nkd51VuFHp6ztRx1 xSylQfaNlG0w0SeYsumvLrp53rzZAfD0jUUDSAGV0cdEbULAfu+zwYQrrbxcRcS8kxWcCv9CCQ5Ck zMK2+3Hnsod4MTclMUqW5v1v1Ze4zIUrIegJfD/Jbw3yx1fx+CDjnrUFZ402Gr1hMqHE=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [linux-5.4 test] 181542: trouble: blocked/broken/fail/pass X-Osstest-Failures: linux-5.4:build-armhf::broken:regression linux-5.4:build-armhf:host-install(4):broken:regression linux-5.4:build-armhf-libvirt:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-examine:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-xl:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking linux-5.4:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking linux-5.4:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking linux-5.4:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking linux-5.4:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: linux=f2b499c27a959d062db9ea5c3036052d90110ee4 X-Osstest-Versions-That: linux=f568a20f058fa1e37069cff4aac4187c1650a0e9 From: osstest service owner Date: Thu, 22 Jun 2023 13:00:00 +0000 flight 181542 linux-5.4 real [real] http://logs.test-lab.xenproject.org/osstest/logs/181542/ Failures and problems with tests :-( Tests which did not succeed and are blocking, including tests which could not be run: build-armhf broken build-armhf 4 host-install(4) broken REGR. vs. 181363 Tests which did not succeed, but are not blocking: build-armhf-libvirt 1 build-check(1) blocked n/a test-armhf-armhf-examine 1 build-check(1) blocked n/a test-armhf-armhf-libvirt 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-qcow2 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-raw 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a test-armhf-armhf-xl-arndale 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit1 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-multivcpu 1 build-check(1) blocked n/a test-armhf-armhf-xl-rtds 1 build-check(1) blocked n/a test-armhf-armhf-xl-vhd 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 181363 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop fail like 181363 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop fail like 181363 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 181363 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 181363 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 181363 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop fail like 181363 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop fail like 181363 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 181363 test-amd64-i386-xl-pvshim 14 guest-start fail never pass test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-i386-libvirt 15 migrate-support-check fail never pass test-amd64-i386-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-amd64-i386-libvirt-raw 14 migrate-support-check fail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass version targeted for testing: linux f2b499c27a959d062db9ea5c3036052d90110ee4 baseline version: linux f568a20f058fa1e37069cff4aac4187c1650a0e9 Last test of basis 181363 2023-06-10 15:39:59 Z 11 days Failing since 181425 2023-06-14 10:50:49 Z 8 days 14 attempts Testing same since 181542 2023-06-21 23:13:50 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Adrian Hunter Ahmed Zaki Ai Chao Alan Stern Aleksandr Loktionov Alex Deucher Alex Maftei Alexander Kapshuk Alexander Sverdlin Alexandru Sorodoc Andrew Morton Arnd Bergmann Bartosz Golaszewski Ben Hutchings Ben Skeggs Bernhard Seibold Bjørn Mork Bob Pearson Chia-I Wu Chris Paterson (CIP) Christian Loehle Christoph Hellwig Dan Carpenter Dave Airlie David Ahern David Howells David Jander David S. Miller David Sterba Dinh Nguyen Dmitry Torokhov Edson Juliano Drosdeck Edward Srouji Elson Roy Serrao Eric Dumazet Fedor Pchelkin Florian Fainelli Florian Westphal Gaosheng Cui Greg Kroah-Hartman Guenter Roeck Guillaume Nault Gustavo A. R. Silva Hangbin Liu Hangyu Hua Hans de Goede Harshit Mogalapalli Helge Deller Ian Ziemba Ilya Dryomov Ismael Ferreras Morezuelas JaimeLiao Jakub Kicinski Jamal Hadi Salim Jan Höppner Janne Grunau Jason Gunthorpe Jens Axboe Jerry Meng Jiri Slaby (SUSE) Johan Hovold Johannes Thumshirn Jon Hunter Josef Bacik Joseph Qi Jozsef Kadlecsik Juergen Gross Krzysztof Kozlowski Kuniyuki Iwashima Lee Jones Leon Romanovsky Leon Romanovsky Lin Ma Linus Torvalds Linus Walleij Linux Kernel Functional Testing Lisa Chen (陈敏捷) Liviu Dudau Luis Chamberlain Luiz Augusto von Dentz Luís Henriques Luís Henriques Lyude Paul Manuel Lauss Marc Dionne Marc Kleine-Budde Marc Zyngier Marek Vasut Mario Limonciello Mark Brown Martin Blumenstingl Martin Hundebøll Maxime Ripard Michael Chan Min Li Miquel Raynal Mirsad Goran Todorovac Mirsad Todorovac Natalia Petrova Nikolay Aleksandrov Oleksij Rempel Osama Muhammad Pablo Neira Ayuso Paolo Abeni Paulo Alcantara (SUSE) Paulo Alcantara Qingfang DENG Rafal Romanowski Randy Dunlap RenHai Ricardo Ribalda Richard Cochran Rishabh Bhatnagar Roberto Sassu Ross Lagerwall Ruihan Li Ryusuke Konishi Saravanan Vajravel Sasha Levin Sebastian Reichel Selvin Xavier Shuah Khan Simon Wunderlich Somnath Kotur Stefan Berger Stefan Ghinea Stefan Haberland Stephan Gerhold Stephen Hemminger Steve French Sudeep Holla Sudip Mukherjee Sukrut Bellary Sungwoo Kim Sven Eckelmann Takashi Iwai Tejun Heo Theodore Ts'o Thinh Nguyen Thomas Bogendoerfer Tijs Van Buggenhout Tony Nguyen Ulf Hansson Uwe Kleine-König Ville Syrjälä Vlad Buslov Vladimir Oltean Vladislav Efanov Wes Huang Wolfram Sang Xin Long Xiubo Li Ying Hsu Yishai Hadas YouChing Lin Zhu Yanjun Zixuan Fu jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf broken build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt blocked build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl blocked test-amd64-i386-xl pass test-amd64-coresched-i386-xl pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-i386-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-i386-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-i386-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-i386-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-i386-qemut-rhel6hvm-amd pass test-amd64-i386-qemuu-rhel6hvm-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-i386-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-freebsd10-amd64 pass test-amd64-amd64-qemuu-freebsd11-amd64 pass test-amd64-amd64-qemuu-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-i386-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-i386-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-i386-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-amd64-i386-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale blocked test-amd64-amd64-examine-bios pass test-amd64-i386-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 blocked test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 blocked test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine blocked test-amd64-i386-examine pass test-amd64-i386-freebsd10-i386 pass test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-i386-qemut-rhel6hvm-intel pass test-amd64-i386-qemuu-rhel6hvm-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt blocked test-amd64-i386-libvirt pass test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu blocked test-amd64-amd64-pair pass test-amd64-i386-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-i386-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-i386-xl-pvshim fail test-amd64-amd64-pygrub pass test-armhf-armhf-libvirt-qcow2 blocked test-amd64-amd64-xl-qcow2 pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw blocked test-amd64-i386-libvirt-raw pass test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-amd64-i386-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-i386-examine-uefi pass test-amd64-amd64-libvirt-vhd pass test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd blocked test-amd64-i386-xl-vhd pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary broken-job build-armhf broken broken-step build-armhf host-install(4) Not pushing. (No revision log; it would be 3426 lines long.) From xen-devel-bounces@lists.xenproject.org Thu Jun 22 13:05:48 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 13:05:48 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553550.864161 (Exim 4.92) (envelope-from ) id 1qCK0N-0008Qc-NK; Thu, 22 Jun 2023 13:05:43 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553550.864161; Thu, 22 Jun 2023 13:05:43 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCK0N-0008QV-KD; Thu, 22 Jun 2023 13:05:43 +0000 Received: by outflank-mailman (input) for mailman id 553550; Thu, 22 Jun 2023 13:05:42 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCK0L-0008QM-Ld for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 13:05:42 +0000 Received: from esa6.hc3370-68.iphmx.com (esa6.hc3370-68.iphmx.com [216.71.155.175]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 7b2a56a8-10fd-11ee-8611-37d641c3527e; Thu, 22 Jun 2023 15:05:39 +0200 (CEST) Received: from mail-mw2nam10lp2102.outbound.protection.outlook.com (HELO NAM10-MW2-obe.outbound.protection.outlook.com) ([104.47.55.102]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 22 Jun 2023 09:05:25 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by BL1PR03MB6168.namprd03.prod.outlook.com (2603:10b6:208:319::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.24; Thu, 22 Jun 2023 13:05:21 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606%4]) with mapi id 15.20.6521.023; Thu, 22 Jun 2023 13:05:21 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 7b2a56a8-10fd-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1687439139; h=message-id:date:subject:to:cc:references:from: in-reply-to:content-transfer-encoding:mime-version; bh=CYj/Fl3w/CU2qB4bAdSs4LJeUAWNjkVkGe8fLSy92i8=; b=Te8HwxoYWPKrHHVOXhHSMmpOj167LTkSFhC3AicgFgRXOnW4O7sl9R3M lAJ61uALFVkZgQFrqCml10JJFuTO4Mm5eFbJCoTFH/9w+WwByF554nmPJ XC7QYbsGNYE4JkKvqZxBQBvhXiMQX+YGHOrzqdrmD5mwuXfwmreNkrdnE k=; X-IronPort-RemoteIP: 104.47.55.102 X-IronPort-MID: 113063750 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:aaeOIq7GQEeIdEReyD8t2AxRtDvHchMFZxGqfqrLsTDasY5as4F+v jQdXD3XPviOZWb8L4sibtnk9kNQ75KAmoNlHQBlpHtgHi5G8cbLO4+Ufxz6V8+wwm8vb2o8t plDNYOQRCwQZiWBzvt4GuG59RGQ7YnRGvynTraCYnsrLeNdYH9JoQp5nOIkiZJfj9G8Agec0 fv/uMSaM1K+s9JOGjt8B5mr9lU35JwehBtC5gZlPa4R5geE/5UoJMl3yZ+ZfiOQrrZ8RoZWd 86bpJml82XQ+QsaC9/Nut4XpWVTH9Y+lSDX4pZnc/DKbipq/0Te4Y5iXBYoUm9Fii3hojxE4 I4lWapc6+seFvakdOw1C3G0GszlVEFM0OevzXOX6aR/w6BaGpdFLjoH4EweZOUlFuhL7W5mp fNbDwIsfhC5juO13quKZLNjgsUxBZy+VG8fkikIITDxK98DGMiGZpqQoNhS0XE3m9xEGuvYa 4wBcz1zYR/cYhpJfFAKFJY5m+TujX76G9FagAvN+exrvC6OkUooiOKF3Nn9I7RmQe18mEqCq 32A1GP+GhwAb/SUyCaf82LqjejK9c/+cNtLT+XmraE32DV/wEQZGiNMVErmjsWIyV7hZu1ZM 3JP0DgH+P1aGEuDC4OVsweDiGaJohMGSfJRFeMg4Q2Aw6aS5ByWbkAGQSRGc8cOr9ItSHoh0 Vrht9f0GTtHs7CPT3+ZsLCOoluaJScRPUcGZCkZUREC5djz5o0+5jrKT9BsF4avg9H1EC22y DePxAA0n50aic8G0fX98V2vqz6luJWPTgcz/QjRdmak6B5pIo+je4Gsr1Pc6J5oPNbHZlqMp n4Jn46Z9u9mJZGVnQSfUfkKBvei4PPtGCbHnVdlEp0l9jKs032uZ4Zd5Hd5PkgBGsEAdDzya UnfozRN9YRTN3una6xwS4+pAsFsxq/lffzhV/bJfp9Nb4J3eQuv4i5jfwiT0nrrnUxqlrswU b+LfMDpAXsEBKBPyDutW/xbwbIt3jo5x27YWdb81RvP7FaFTHucSLNANUTUaOk8tfuAuF+Mq 4wZMNaWwRJCVuG4ejPQ7YMYMVENKz48GIzyrMtUMOWEJ2KKBV0cNhMY+pt5E6QNokifvr6gE q2VMqOA9GfCuA== IronPort-HdrOrdr: A9a23:VDHAyqBMOa5stMHlHemr55DYdb4zR+YMi2TDtnoBLyC9F/bz+v xG88576faZslYssQgb9+xoW5PwJk80l6QFhLX5VI3KNGLbUQ2TXeJfBOPZrwEIcBeOktK1u5 0QEZSX17XLYmST6q7BkXCFL+o= X-Talos-CUID: =?us-ascii?q?9a23=3Ar9SKa2r/l9Jc9/7+bK7lSt3mUZAqMVrv7WfQGUa?= =?us-ascii?q?5CnhweZPPRluR6ooxxg=3D=3D?= X-Talos-MUID: 9a23:qk5ybghfSYo/0/E3eyYkpsMpPtVWuaW/VW8xoNYW5PS7MzROYB2PpWHi X-IronPort-AV: E=Sophos;i="6.00,263,1681185600"; d="scan'208";a="113063750" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=YtM+7V4YmdF3+rCk7G21N5tnY4qVsiDgVS249O6+h1deaONKQfmcfxY0QZ2GhhF4nkQZy698gUSrL+CqBRJGlbsLYPEZ0QQa1pBJSITKbiwGC5nXf2Gktqf+IA6haNQAk/+Qsgy7qZ2wEYMgHPED6NmOkyQAGCJBMiA98TDPSzxLLE+JklJlHSTiErHaS/9TYjcHgBKmZAhRv6cxpZ3l/l8/ZUtsgJcMjYo+Onx0nbL3CUbuqp0YQHwlpDQvJd8N/sC5cG8X/qgYdYKg2sZ9AoOE0Z4TjdXlIRhQbIGtogJdgOB/LuOqxFQFi/aMjD47VnxvCNobKpz+U13CkJqhVQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=SejNFEGIpUrYNvrB53UHodRPuQldY5yxAEE23suo6wI=; b=bTR9YrIYYQ0kg0SzPRQV38MHE7aATI7cE7aPCdqejpMQafDvVSI4HMJdXYKoTzP82xaBWj2Ty9ZrOVimbYlkB+bvobnC9X9QMubIlUly2cdySn+fA53QkpmFLi5InOvaTLvFfVtnuP/lJ4cR/8itOnjGF7OFh4e6LB1QOQ5O7oCM8qOuoWQ0aY0qf1k2u7NHmsZYIc5pTT95mDYoZvuTeiWCJFV/EfwlW+r6jc3+e1vyAzOmqm18/im0yraCqAxonlOElXRv4u6bMvbmWRQHZ61wfMsAdADd8eWZVNsfdqvO0Ml0rhhCCVnWxg745BHR/ebWYPvrJWPI/aZlQWzyfQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=SejNFEGIpUrYNvrB53UHodRPuQldY5yxAEE23suo6wI=; b=Ea8JIx5B14oAIZmI7KpyRejPGygW+U69XCLvbueoQL+2/AQ2o/hJ6wX2vD6Dzvu6Gwz+jX87I+v4icYLabHwWruh9s/fW6+O9CDQR6HIbKPW6gXJOB8+79st/g9Qjfb6/DjXjboPTLPSwpqDNZ3hhnQLYlPdNsQlsi3trnMbUh4= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: Date: Thu, 22 Jun 2023 14:05:13 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH] Updates to Xen hypercall preemption Content-Language: en-GB To: Peter Zijlstra , Juergen Gross Cc: Per Bilse , Andy Lutomirski , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , "maintainer:X86 ARCHITECTURE (32-BIT AND 64-BIT)" , "H. Peter Anvin" , Stefano Stabellini , Oleksandr Tyshchenko , "open list:X86 ENTRY CODE" , "moderated list:XEN HYPERVISOR INTERFACE" References: <20230621151442.2152425-1-per.bilse@citrix.com> <20230621164038.GM2053369@hirez.programming.kicks-ass.net> <6523f3e2-8dfc-c2dd-6d14-9e0c3ac93cc8@citrix.com> <20230621200409.GC4253@hirez.programming.kicks-ass.net> <20230622082607.GD4253@hirez.programming.kicks-ass.net> From: Andrew Cooper In-Reply-To: <20230622082607.GD4253@hirez.programming.kicks-ass.net> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO2P123CA0042.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600::30) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|BL1PR03MB6168:EE_ X-MS-Office365-Filtering-Correlation-Id: b7f8d45a-68ad-4a69-06f2-08db73215531 X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: ZWBULJErpGhjWcCpQwVY+G9XGnvWa9JhWq3qmZRDN9ht6Jtsutsw2wv2WPYmwlZ0lELoDREhdgn6AiW1A6ih7hQ85ZzazT4F7HISxfBji4PsOufn7mDnNufIzU/OTUaj2e31O1E3S6L+ny3MKmMnsFrUp/z9nlxUoGlOBnFa5cxxUNUI53Cfo2dPVeAA0Axlzo5e/nsi/dizbuhnmzpQgyHd3SWD7Kt803fQYBv3IJFpr9LFv4BJu/hCqclgENsws7ELWXZ7dWSxaZK9zH2tzWsTjU1QDd8WkoWDQZAsNXdG9UMXhOjv812Yl/ksbcD6r6x7UGs8/4IteWS+92eJISIbQRFyxIu2pQCCOJcBwY3TlxSfjztahGUE8rwyakOxPgWn+svitzH9ZNjgr42abXPAz1AXuZTy+Ig8ZzFEuuZfSEMiNiCNjVu9+KI+WCMgVRS/36VNH/RmYvOidnYnhheWJhJO9Sga4dTOnRmbZlDDk0oEFh+C2d577sNFrwHkHIx1LdWTR5rIWbiDrfuvb2oNPXkNMsFufHMNsyU8abHFiSgDnhjaBQO4W+V1U1T61WjVOCB1fJNfNHgtSm1YpUXdRKr9MtsQwDjV/DkkNySqU44cEXQ4HZqB6IE5Me2f0MtxA5i6iOe4/pUS9gbfXw== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(366004)(346002)(376002)(136003)(39860400002)(396003)(451199021)(53546011)(186003)(26005)(6512007)(6506007)(31686004)(478600001)(2906002)(86362001)(82960400001)(31696002)(41300700001)(8936002)(8676002)(7416002)(110136005)(2616005)(36756003)(38100700002)(54906003)(4326008)(316002)(6486002)(6666004)(5660300002)(66476007)(66946007)(66556008)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?R0NlRkgzT09UelRzaG1XaE5oT1V3eU9vU1dxdUVWSEp4ak9sUytYbVBrMmVW?= =?utf-8?B?VzZYK3VQOFZQTjJqem9tRUtFMUQ2RkI3TGkyZHBLRExJTXBBd2VETERYb1RG?= =?utf-8?B?c1Z5RUx4eGNZeCtaSTFybDE3QWpUTEVwb0x1dVo3TjZXQnFjRGs2cU56QWdJ?= =?utf-8?B?MTFsN0FrUXRlS3ZhNzEyOW5uNGxGVUJUVFBqVFFPZnZSZWFJR25DaTZuc09p?= =?utf-8?B?ZGFXNHB4NHJpMjBRMTBUbkk2Q3N1alZxZFpvMUVhbWozcHF1bHk2S0F0YUNU?= =?utf-8?B?TzlqWkJzN0VqMW1XbkVxT0t5S3I1Kytyd0hoenhpMGwwcko0b3NBS00ycXht?= =?utf-8?B?Q29GOHVZbXI3dW1hOC9rRWMvdFdQdHlQVTZYblJSSXlsamxBb3U2WklVM2Nn?= =?utf-8?B?aWJxcGxsczBlTjJpMG0zU3pmcVpSYW1uZURvMFUzeTB0bmRFek5ocUhsLzdI?= =?utf-8?B?UlZIT3VkR2s0NTV4aWV5SkV1UXFRSVkvSy9MSGcwbFdOeEZHR2V2Yk1HMFF3?= =?utf-8?B?WGp0RVZXVGhCbW05UWJwNHF0MlErOHRCa2srZTY0Rnhwdi9kakMrUDVwNTd4?= =?utf-8?B?djArTlNqd3pUQWJQSWNyd1hxMk16MzRFcTQ4Qi84My9QRFBCbGlreEx3VXFX?= =?utf-8?B?R20xRTZGWVUrNjZJaUxLcmtzRW9oU1Jvc285OU9KdjJIRGZGK3lHZkVhQnZL?= =?utf-8?B?UmlBbXBHQTVjQUtpZTV2NytvMEFuNFhrZjVhck40K01CZlNyQ2M3aXU3Vmxa?= =?utf-8?B?QmpBTVJvMWlBMkxNSDEwUXJKVkg3WWt6eGcxRWVmY1VNdldmYkJlL1hLZWM1?= =?utf-8?B?R1d3YkEwOWNobzdhUFRSSmUrQWsvdmpYd0x5SFFZdjdNMStYWlpXZ1lrQ2RC?= =?utf-8?B?TnBrdVlKT1JlME56OGZvVEhjcHcrUkR5NVhobTBmSVhwTUliNkdtY3pUMWZt?= =?utf-8?B?Wnp6VmpmQk9BeVByQjBWN2dBYkExWEROL29rSlNkV1NCYUgyQkR2WmI5UHRR?= =?utf-8?B?VTdYckc4TklTeisxNU5mSmJReE9rYjRxYjd4UE5yaVBKY0FpRnZoKzZ5b2U5?= =?utf-8?B?VE5iNTREQmZKSkNiQlg5ZHJtdDJMTEdveW83R091UWthR0JmZmhuVkYwWFd2?= =?utf-8?B?cDJ0ai82VVNWUHIxQzZwQjBIOFM3NmFvM2FKenpyRlIvb21ZM2FUSU5Fc0VS?= =?utf-8?B?cHRPNXJOOENXUFViTGk3VERHVlR2VWVrTS8yeGtZQTZHTm1vangxdDdubE9o?= =?utf-8?B?c3lZK3MyMmwrRkpiUk9HbldVOE1PNkpnZFNWbzlpYXhPT0NQckhmbXVTMGtB?= =?utf-8?B?SFlibklEVHFzaFVTZDVDRUY2Unp5bkZwclRWSGNvOEMwS3Z3ZmpEVVhSYmdl?= =?utf-8?B?SXVkZGNLRTFSdGR2Q1ljTS9KSXQ1UXpwcUpOTGJIVCszZ0hUSjNYNG1vb3Zs?= =?utf-8?B?S2pqcVg4dGc5TlhMWHA1Zi9nbXZpbjFWY1FmbXVEc1NMUGY3SUFPcDM3V2R2?= =?utf-8?B?cEhmZGRXSlpYVVFiUTVZVzZtVHpyRm5CQ1RrRkxGaHBiQWZaK1h3VC82T1Y5?= =?utf-8?B?akV2M1dlMm1tWElNY3N1bExZK3J0MmR4YUIwMFozeDhvZlNsazBnUDk3aVVJ?= =?utf-8?B?TEg2MDNVcXAxYUFaL1pIdS96SUs3eFJLRjNNSXN3ZEZBYlFxQlprcER1cVd2?= =?utf-8?B?ek5VYm5wek1FVjJQWlVvdTIvT0tqb0t1R3ptbnVZU0NYZTVFQ1FFaDBzb1Uz?= =?utf-8?B?UElsMHU2SmVQZGZsOFdPMkQrR2wwZytPQ211QnFBZWdiR1dZbGJ1d2ZvL2NW?= =?utf-8?B?Q1UrdGFVa0hWakFDTFVoVlk0aUhCQ0VoWUJ1T3YrcXF1S3kvY0Qzc1lrNlpH?= =?utf-8?B?NHF2T2dQazBGbDArcVlKWnFveWx0YVpXMTdZMjlhZ3dPdlloRThKTjdPYlpV?= =?utf-8?B?QTlLdG5CU2NLQ3hxdkxld1haaHdIcGQrR2NJM1dDeS9FNmNXcW9EeVZtWm56?= =?utf-8?B?Uzl4M2VmRlNvckpJbTdOSzd5NFVEdmt3K3ZMN3FuRTVSTFBUY2p0VlZiYU5M?= =?utf-8?B?dXNNc2s2U1V1NHBuNGk2MkhUWXpwWWVsVURrR2ZKZUkwMDBrbE0vc1pOUkNZ?= =?utf-8?B?b1hYMExaY1RYUkkwa2lDTFZzN3gwNjFkdGdpMlNXZ2p2a3d4MXp2ODhoQk9u?= =?utf-8?B?dWc9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: =?utf-8?B?bFJhZ3RKQXZCdHpBcVVBVVMxUlRQOGFOWnpSanpVOTBheS9sTkJYSy9sZDBy?= =?utf-8?B?SHNSY3hxUlR0cm9sVXV5bldKaGpPQ3piL0ZUZlV3MVR0SkRrbE1VU3Z4SHBM?= =?utf-8?B?ejdMZFRLQXg5UGdKRnNmNHE3MDFSZmJncVdKVkVoWXpzM2F6RVVMcmhJcU5Q?= =?utf-8?B?Y3NqdFNwZ3I2cmpaTXc3b1JIWno0UWJkR0lzc3E4Q2FxYmQwUTBrOEJBWnJ5?= =?utf-8?B?dXJEVUVlYXBoYzY3Q29OSWEycitMUUREYUJBWXBwSmp5ellaMnFodENqSmJ2?= =?utf-8?B?Y0JZTWZ6eXhLNHlINGs5Ujl3L3c3cmNMQ2E0aXVVNkZ5VWg5OHVSaEtkSlNM?= =?utf-8?B?MlRHMmhIMVg1NnFpcS9sTGErdkI4V1FEamhGbXVJVXBoQnBLMEhlbUdhL3ZC?= =?utf-8?B?dVNFQkVVUUZvUDBBZG5JNERlWE1EYWZNeXpZOHJ6a0VlWStHNTZjRnIxOFFU?= =?utf-8?B?WWI3YWlSRnNqRFByUy9WRnJqV0RwNHovZ0ljZE5pQnpMK1VYRDFmTGtQSHpx?= =?utf-8?B?ZGhBaWNSYzcxMGxmSkd6K1Zldk12S0NPaUZBb2ZsU1RhNjY0QTJURDEwSzBC?= =?utf-8?B?Q1JSVzBiOUV2Z2hvSDhFTUxtdldzZ01rb1BDWSt5Qi9kMzJyVy9oM1FoUHBr?= =?utf-8?B?cTdUSy93WnoxUjZUaEQwQnRKbWdjOXkwSkdlajB6R3hBSGVuMmp1VkUvNmM5?= =?utf-8?B?cXZZekQ3Z1BVTEYxWjhKdGU5VGtqSjFRMlZZWVlCZHVxZi9LUFZtU0NnRTdM?= =?utf-8?B?MDQvTzE2dWUwMklUMWYwUDNZMUtSL0tkOFV3cGFEL2FNd094d29Pajk1UHVT?= =?utf-8?B?bzJ0Qi9MbjJnQ0Z0aithSTg4NVB1Zkcwbk8rb2ZIMnlkUUs2QmNucHk4V2ND?= =?utf-8?B?bUxHaHRPb0dQZ3BkTEFWWU5oUFR5YXhnZGJ6RTBjdTVqZlovcHNnV09GSVRC?= =?utf-8?B?bFpHMnoyNlJIdWU0QkVmRzdjRFNhVHBuMTlBaE9KNFlrRTRyTVZ5ZUZGeFEv?= =?utf-8?B?VzdXZ1Q5RnhHNzNSRE05L0xzeWNvSE80OTB3R0J5ZDNZZ2grLzl0Z29CTlI0?= =?utf-8?B?M016WVlXV0lreFFUNnZGanZ0VXVyeThZMGFjZXFMVjNWRDQydEJPSzFRZXlk?= =?utf-8?B?djZvR2FzYytUK2Vhc0xVRnE0eGR4NHJnQTNIcVFVK3VxR3I0UHBXcmFoeTlI?= =?utf-8?B?aWZYbnNjY1NzNmowQ0N6b2VTak0rQm9DUnBsSnQ4UVBZc1d4TTJaSjRrTHJU?= =?utf-8?B?djNBYU5LR0hMeU1UTjgrUHVWdG9NZVdtM3lWZmNtaGh5bVJNRjgvSGJIaUM2?= =?utf-8?B?MzM3NTdvK0NGMS81N3E2TWdQZ0kreEZ2bnhaaGpsb3RzOXZ2WFBCRjRlVEQ1?= =?utf-8?B?d1FMVTlvMUZXKy9sRUVINXMwdktVcUpCQ2VYS2pyMzBldkNxR2VWZHFtU0NC?= =?utf-8?B?c0NBSU01R1lxRWhURk1ialMrdWpZQmJUSURyYnZRPT0=?= X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: b7f8d45a-68ad-4a69-06f2-08db73215531 X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 22 Jun 2023 13:05:20.7320 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 0qVe/WZ2dulJW6Tyuv98CgRXrmfz+94hFGr5Hkm59rmaYvw5I01u+CpsUr7UkCR3CHRW+KEPE2UnAsLITHtqdEna3RVwwxfe60rcLrcg1ig= X-MS-Exchange-Transport-CrossTenantHeadersStamped: BL1PR03MB6168 On 22/06/2023 9:26 am, Peter Zijlstra wrote: > On Thu, Jun 22, 2023 at 07:22:53AM +0200, Juergen Gross wrote: > >> The hypercalls we are talking of are synchronous ones. They are running >> in the context of the vcpu doing the call (like a syscall from userland is >> running in the process context). > (so time actually passes from the guest's pov?) Yes.  And in principle it's wired into stolen time. >> The hypervisor will return to guest context from time to time by modifying >> the registers such that the guest will do the hypercall again with different >> input values for the hypervisor, resulting in a proper continuation of the >> hypercall processing. > Eeeuw.. that's pretty terrible. And changing this isn't in the cards, > like at all? > > That is, why isn't this whole thing written like: > > for (;;) { > ret = hypercall(foo); > if (ret == -EAGAIN) { > cond_resched(); > continue; > } > break; > } No, because that would have required the original authors to write a coherent interface. As example, I present "long hypercall_get_dr(int reg);" which returns a full %dr, or -EINVAL.  But other hypercalls have completely disjoint API/ABIs so even if you could tell Xen not subtract %rip to repeat the SYSCALL/etc instruction, you still don't have any kind of way to spot a continuation. Making a new ABI/API which looks like that is specifically on the cards, in some copious free time. ~Andrew From xen-devel-bounces@lists.xenproject.org Thu Jun 22 13:15:23 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 13:15:23 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553556.864171 (Exim 4.92) (envelope-from ) id 1qCK9S-0001TP-KX; Thu, 22 Jun 2023 13:15:06 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553556.864171; Thu, 22 Jun 2023 13:15:06 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCK9S-0001TI-Gx; Thu, 22 Jun 2023 13:15:06 +0000 Received: by outflank-mailman (input) for mailman id 553556; Thu, 22 Jun 2023 13:15:05 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCK9R-0001TC-1A for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 13:15:05 +0000 Received: from desiato.infradead.org (desiato.infradead.org [2001:8b0:10b:1:d65d:64ff:fe57:4e05]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id cc9bc711-10fe-11ee-b237-6b7b168915f2; Thu, 22 Jun 2023 15:15:04 +0200 (CEST) Received: from j130084.upc-j.chello.nl ([24.132.130.84] helo=noisy.programming.kicks-ass.net) by desiato.infradead.org with esmtpsa (Exim 4.96 #2 (Red Hat Linux)) id 1qCK98-001BsM-2N; Thu, 22 Jun 2023 13:14:47 +0000 Received: from hirez.programming.kicks-ass.net (hirez.programming.kicks-ass.net [192.168.1.225]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits)) (Client did not present a certificate) by noisy.programming.kicks-ass.net (Postfix) with ESMTPS id 032D43002F0; Thu, 22 Jun 2023 15:14:46 +0200 (CEST) Received: by hirez.programming.kicks-ass.net (Postfix, from userid 1000) id D74EA24263362; Thu, 22 Jun 2023 15:14:45 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: cc9bc711-10fe-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=desiato.20200630; h=In-Reply-To:Content-Transfer-Encoding: Content-Type:MIME-Version:References:Message-ID:Subject:Cc:To:From:Date: Sender:Reply-To:Content-ID:Content-Description; bh=Ufmc0Z6O1yW0ICUZh7aoz2TN+c20tRHp51mRicssOYA=; b=W37UuZpUw1vREEI3wtlUKuUETq JEynIINmlJItVhZGOkbubOleNJDmZZqE60AGeCIw/dWswSudEfoUxqtiMTqdm0MSfpujyoLq1xtdZ 16FkN/+uMIIGBENQbQeqPVxaQGhysLA9KCZkZDx3Mh+nAwY3+ZsNYMPMu0vjKViVygVGexQr7pltB MCtKV7sQFwyPjIocL174eAywjD21NXhWSW0uP6rPpV2sV6fRmJTeoSaxHw8CVQUBnfWJerD4cluCf 3I6A8+kHsEtLMzS27V7vmn1MDVq1n9uCbu3bwZv/0852Vzvb4ni892/NkqFw29VdsqzjJD+I3A5uB XXkNe7cA==; Date: Thu, 22 Jun 2023 15:14:45 +0200 From: Peter Zijlstra To: Andrew Cooper Cc: Juergen Gross , Per Bilse , Andy Lutomirski , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , "maintainer:X86 ARCHITECTURE (32-BIT AND 64-BIT)" , "H. Peter Anvin" , Stefano Stabellini , Oleksandr Tyshchenko , "open list:X86 ENTRY CODE" , "moderated list:XEN HYPERVISOR INTERFACE" Subject: Re: [PATCH] Updates to Xen hypercall preemption Message-ID: <20230622131445.GQ4253@hirez.programming.kicks-ass.net> References: <20230621151442.2152425-1-per.bilse@citrix.com> <20230621164038.GM2053369@hirez.programming.kicks-ass.net> <6523f3e2-8dfc-c2dd-6d14-9e0c3ac93cc8@citrix.com> <20230621200409.GC4253@hirez.programming.kicks-ass.net> <20230622082607.GD4253@hirez.programming.kicks-ass.net> MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: On Thu, Jun 22, 2023 at 02:05:13PM +0100, Andrew Cooper wrote: > On 22/06/2023 9:26 am, Peter Zijlstra wrote: > > On Thu, Jun 22, 2023 at 07:22:53AM +0200, Juergen Gross wrote: > > > >> The hypercalls we are talking of are synchronous ones. They are running > >> in the context of the vcpu doing the call (like a syscall from userland is > >> running in the process context). > > (so time actually passes from the guest's pov?) > > Yes.  And in principle it's wired into stolen time. Hmm, that means that if the scheduler accounts for stolen time (see update_rq_clock_task(), PARAVIRT_TIME_ACCOUNTING hunk) then it appears as if no time has passed, which might affect preemption decisions. Oh well, we'll think about it when it's shown to be a problem I suppose :-) From xen-devel-bounces@lists.xenproject.org Thu Jun 22 13:19:49 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 13:19:49 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553563.864180 (Exim 4.92) (envelope-from ) id 1qCKDt-00025m-78; Thu, 22 Jun 2023 13:19:41 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553563.864180; Thu, 22 Jun 2023 13:19:41 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCKDt-00025f-3W; Thu, 22 Jun 2023 13:19:41 +0000 Received: by outflank-mailman (input) for mailman id 553563; Thu, 22 Jun 2023 13:19:39 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCKDr-00025Z-Hh for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 13:19:39 +0000 Received: from EUR03-DBA-obe.outbound.protection.outlook.com (mail-dbaeur03on20624.outbound.protection.outlook.com [2a01:111:f400:fe1a::624]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 6f5d3cad-10ff-11ee-b237-6b7b168915f2; Thu, 22 Jun 2023 15:19:38 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by DB8PR04MB7177.eurprd04.prod.outlook.com (2603:10a6:10:127::23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.23; Thu, 22 Jun 2023 13:19:31 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6521.024; Thu, 22 Jun 2023 13:19:31 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 6f5d3cad-10ff-11ee-b237-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=B/BpWqR41rYyxHzPH9Z8g1+Ui8UMhQz6C/niHp6kC/gw5ot1KsZkyVntg+TWkSc1LnF6uJd4ztl4sitT0f9If2pxLEHUVowGh1ivMbQ0EYGemmUYBEb1iZOSvbOyTNmtA5a0IgBKPjAgmvB2Y9sY2nDY35ipdgx9R3+DwVxU0GIhf8lIT3Bffpfn4vBV57kaUAAY7zffI4t918dzrSgz6pmRWJ10P1QeRKs/AkY9/y/X/v+F/Ae33/oeSIDA9iL62ilPODv8Sll7d312FBt/3zPrmLSVWah5b7vywrw58dF/9VZIMl9J9oVCdPciPlMtggwImrjk8Gm6o2x3hLymbA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=Bd7aG8ZGXgK1OUG11VQ7OIcr8ukgAMz6xuXur6f61ME=; b=bxUJ9ObQsYzP79BjpC/tyHad7ax9kiWW0g/Qs8dP3XW6KzxghXQPVTX5u4XJU/imI4VpFqcThhEgwmG2duw5R7MRE6JCnvCP/MGdmCBplrJ3hAIkIq3I5653HmxZhe5+QvLfxpYvMani33HOsRdu0YTZIybg5Ow0tR+5fhCncslcyR8f5RTgUWzMFPhe3hFfDmCDqkCLm+cQ+tXhFyMbnvGBnjzhBebxCDspyBMeaRE/p3sIDy8spIxxwXCqApnV8atjPajtZTnujvnDKOIZiuh2WFiIs/Umtcu+ow2E61/dtr/VR1fjj0lIfRkF7NSnHzb6d4ilszl/tlLrGKXVZA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Bd7aG8ZGXgK1OUG11VQ7OIcr8ukgAMz6xuXur6f61ME=; b=5mPCfzRlyZSdpq3MryS0dbqFavAOMcKHao8xIA8JpzFldLHms+weUsefFPUwi2je0AwMXBxlnL9NAJOMBErRds9IY2JJGnOGp5SCS/PcMo0OPlVXOXl21hWLh+bNws8iG+lyS+tC1oKRiJgurbDsNnhrzoSMD7P5Jgcm9Jm55RLYisI4ExKo8xmhHuVyFE8TQxNh5x6Jg9dxRgsIUIspTCL02euwFioUyWSZgizQM8CHESiY/85QeNQSp+T4Gsa0CrFQOspp8FgBTpHf9EXXnLDKoqKW9bRYIkyz4+IevYo4VSBjl3trADkiFOmNHyqWqoMoDCi0xIDWX9LTQEkfFQ== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: Date: Thu, 22 Jun 2023 15:19:28 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH 06/22] x86: map/unmap pages in restore_all_guests Content-Language: en-US To: Julien Grall Cc: Andrew Cooper , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , Julien Grall , xen-devel@lists.xenproject.org References: <20221216114853.8227-1-julien@xen.org> <20221216114853.8227-7-julien@xen.org> <478e04bc-6ff7-de01-dfb9-55d579228152@suse.com> <01584e11-36ca-7836-85ad-bba9351af46e@suse.com> <558e68c4-1a2d-5a9e-4070-5b894e14a3f4@xen.org> From: Jan Beulich In-Reply-To: <558e68c4-1a2d-5a9e-4070-5b894e14a3f4@xen.org> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR3P281CA0204.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:a5::9) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|DB8PR04MB7177:EE_ X-MS-Office365-Filtering-Correlation-Id: 1270af17-7233-4cde-235c-08db73235045 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: j4n3ySAZ7VmQ6QNfIA5L8+0Sp/aarfNMVfhGGh3WsDRCSWoumroTE/o83StnXdnpqBp57S+Hc/+a/voGCzGEj6B7PG6M2LaM/2Lzwr9iZnzZHIgIVN7MRh/4SgVZnEUwvYPXmijJmCdZAHNM2hxhNlimqbswhg4bBeoqtlYz2w+4KGeZAMfYUt3YeSOENbQBEM8/+xKg3JFVQfPyCGV8zYO+ZTgLNWUh9yJxjF9bMwu77OLtEyOVcUnaINxnbZeCijuzMjEl+9tmJsbgpckIc8BBcHhVqyp5NGC9CjuOuWFrGkLh+aid2kfpVGgY3GG3X7toSD25h1YBxq3oiH3D5M4QWpiExscHUImUBDxfsrsba+ATC8S9ojVODdGrymr/MCH2Zza4enZsE60t7ELoMTYrym+HqMfyrLL4mC5IZgT1GjBI8yJZ+/o/lOn7RqSmdVAVAYzG6FtFsI7q+itkr6hM3kYU+Z5xeutHUVOvjM9ZIwB3xQ0vMe8v/47nXGabrwmHhjzrhPd1c1y/NFPqx6w3yYIWZhmeoOdTrHGoOLxUQxZqKO5HqsFSIH72wWuXPfFR3WwPWX+Uz98ElHcQdJb7wsy6zVw04E9oLguLWu0hXgv3JdW2efWWHSOj/rFDFIDArNWhwxv1Ojs9zDgy4DeNNsXDKqgxKo6OBD9Ttdw= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(346002)(39860400002)(136003)(376002)(366004)(396003)(451199021)(8936002)(5660300002)(8676002)(31686004)(41300700001)(316002)(2906002)(6666004)(6916009)(4326008)(66476007)(66556008)(54906003)(478600001)(6486002)(66946007)(31696002)(86362001)(53546011)(38100700002)(36756003)(2616005)(186003)(6512007)(83380400001)(26005)(6506007)(21314003)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?MTNOQ0pncm1raWpVOG9SbnViQ1h4Q2ViWWFORFY2WUNjb2FEcnJzTG02VHAv?= =?utf-8?B?TG12WW4zMmJXeWxZMDVHcmozZ2hxbjJQNktFMzAxWm9VanNrN3p0SzlLQjR5?= =?utf-8?B?blNDcGNCcmVkaks5SGxaOE1MZGJ3Z2lTbXNHaUtIeWg3RExON0cyVjhDbUt2?= =?utf-8?B?ZHF2VmI3c1RUMStCRzFxd1p2OTFJVVZLcHcrZFJ4RUVxRXlTOE1Qekw2SHFS?= =?utf-8?B?YzM5V2w5cEpPM29SZDl3SlF5b2VRakxCUUxSTHVhRlpYeFdhMUNxRjFBNGNT?= =?utf-8?B?bk5KNE45N3kyUnRKSjJJZk5OdW5SOEpVRE9oMWJUditvdGtvMjJzLzQzRkZU?= =?utf-8?B?UkdROEN2OHA1TTV6TXlKbUdoTTJvZnZhYkdEYmh4VW4zZXUrcnRBSHFDdUJy?= =?utf-8?B?d2ZMNkJxWHdRdEc0QWkxRjZMcXhQUUlETldPT1RVcEYycGpYM0lOLzA4YzJ3?= =?utf-8?B?TzdGUUxMOGJrd1VrR1VyQmZCTUR1b1Rwa3MwcThRaG90QUluTVhPVVBJYnJa?= =?utf-8?B?UFhaOW9MSWh1aTBqOFM0ay9obTBmQ0VKQ1pyQmh6Um4wZWh0TXhzSlhYTlZF?= =?utf-8?B?YjdJdCsyUmk1R2VEbC9SNUY0L2ptSDV3TnRuTFcrV0J3bjRyNFhrajBOaDlx?= =?utf-8?B?SUVQTk5JdEpLdlBFUElWQVpPT05ZY0kyQXREYnRhY1ZkcDIwSU1CWG1pNTZ0?= =?utf-8?B?L1oyYmdsOSszd0ZWbVN4ZUJDcmJKU3dBdTZtc0lxRTRXSW5Xb2NOcGRwRFlZ?= =?utf-8?B?VjVVY3lMblB6OXpRdjRNWklsQXRHMmpwOEJlRUd1eVBEM3FRMlM4dWhBOEVw?= =?utf-8?B?V09oa3FVanVRZUxaWE1LNnVRZU5xMmZHSEh3c04yRS9BdVpFRWx2MWFQY0ZC?= =?utf-8?B?UURxUm9nU29tcDV6UVYzS2FuTWVienBKZHljTUt6RTFOdWRvMithQUFpeTdy?= =?utf-8?B?RmpmT0hzQkxtQ3FxOEpIa3hQM1JwTmVkekdFaXdVZm1KeFJ6TGI4ajZoNElw?= =?utf-8?B?MEJybC92MEs3Vm9RdGQ2aXBESTVZdllVTGx0MEEzRFFJSzN5d013ZmR3TXoy?= =?utf-8?B?aWxCWTllN0pBYzNRZU9nc0dHNnZVWEpNTWVWam03UGFyZ1VOakM2VkZ2M25B?= =?utf-8?B?ZGxaYjNKTXI0MDZHY1RJYksxRWl1allLUGhrS1M1MVg2MVVnR0grNHlWeW02?= =?utf-8?B?Q3BPTnUvb1JiYUNJalZRREhyZUtpMTV0Ujh0bmVpcWRUMS9hUXRXQTA1STlO?= =?utf-8?B?emJhZS85cWpaOGE3RUVBYzF6MExhaW44RUdvZVprWmduZHN3WWVjbDNickVT?= =?utf-8?B?U01Cc2gyeDhyemNEQ2pNZkxuaTlOc00zVEcrdUJXNmgwczVFc1VXUE9GU0N1?= =?utf-8?B?amg5a3I1TlNUNVZSWHhFS1EyY25zbGd4eCsrN3V4UEZNdmxSWTJrclVMZUpi?= =?utf-8?B?dktKaUNXT3RLdVVISFA4WnNaS2daeW5vbjA1MmZJUlNRMStyYy9Qb3dRZ3BK?= =?utf-8?B?OU1ySVdaM09zanNmNTNFM2tXZDVXcS9TY3JJL2JYVG41WEhOUm5sdGk2QUhi?= =?utf-8?B?Sy9lcEpFY2Y0S2c2eEhnTGp0L3ZWYWdUai9MazdTaHgvTldDWGpodHlQQlA3?= =?utf-8?B?NUdraktyME9TRHY0QkJWOGlHVmNMTDQ4SDV0TTVBOTdGL0g0MEtHUFNOK3RI?= =?utf-8?B?dmRqSTh0RTcyQmdPN1pIc0NmYXRXWU1obEs3T2hBQ0lEWmtqai84bko4bjVU?= =?utf-8?B?VUl3MGczRFV0MGEvV0ZRajZYcUFJQUFWekJpUlI2eG1CUUwyU29TWGxiSDRO?= =?utf-8?B?aFhqQ3F1REtXeHZyUEgvdUVHM3N4SG1ZU29UNzk4eW5QKzlJOFBJUnlPc1Vi?= =?utf-8?B?M0Q4TjllYUYrTTN2bnl5T3YveG9kZ3lySHoyZHM3dVZqZ3Q0enMrekxqUUZ2?= =?utf-8?B?azg0b05NS2NML2VJNXY3WXdPYmVXVi9JUXVQSnNaQW4vRDJuTTlYU2k5MmZx?= =?utf-8?B?VmphUDBBT2V0NG5VdkJYRTg2ejEwQ0tmZEIyZHdzM0pKNHA2aDRtU3VrQmJw?= =?utf-8?B?TUpINEVUd1d2b3VQM2oxcjBXc3FRYlNSREhML0ExQnZOcEhQY2tDQk81Y3Zz?= =?utf-8?Q?3bnl1N56ZrvCZgIxAStANndeu?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 1270af17-7233-4cde-235c-08db73235045 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 22 Jun 2023 13:19:31.4156 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: k2Bpx1eG+h0nrHMqTMj/FTCMIROVWAF/ZdojKotCUYBcyzmUISglMwg2CxtzA9yvinr0tv7u186y7UF0sfpiYA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB8PR04MB7177 On 22.06.2023 12:44, Julien Grall wrote: > On 13/01/2023 09:22, Jan Beulich wrote: >> On 13.01.2023 00:20, Julien Grall wrote: >>> On 04/01/2023 10:27, Jan Beulich wrote: >>>> On 23.12.2022 13:22, Julien Grall wrote: >>>>> On 22/12/2022 11:12, Jan Beulich wrote: >>>>>> On 16.12.2022 12:48, Julien Grall wrote: >>>>>>> --- a/xen/arch/x86/x86_64/entry.S >>>>>>> +++ b/xen/arch/x86/x86_64/entry.S >>>>>>> @@ -165,7 +165,24 @@ restore_all_guest: >>>>>>> and %rsi, %rdi >>>>>>> and %r9, %rsi >>>>>>> add %rcx, %rdi >>>>>>> - add %rcx, %rsi >>>>>>> + >>>>>>> + /* >>>>>>> + * Without a direct map, we have to map first before copying. We only >>>>>>> + * need to map the guest root table but not the per-CPU root_pgt, >>>>>>> + * because the latter is still a xenheap page. >>>>>>> + */ >>>>>>> + pushq %r9 >>>>>>> + pushq %rdx >>>>>>> + pushq %rax >>>>>>> + pushq %rdi >>>>>>> + mov %rsi, %rdi >>>>>>> + shr $PAGE_SHIFT, %rdi >>>>>>> + callq map_domain_page >>>>>>> + mov %rax, %rsi >>>>>>> + popq %rdi >>>>>>> + /* Stash the pointer for unmapping later. */ >>>>>>> + pushq %rax >>>>>>> + >>>>>>> mov $ROOT_PAGETABLE_FIRST_XEN_SLOT, %ecx >>>>>>> mov root_table_offset(SH_LINEAR_PT_VIRT_START)*8(%rsi), %r8 >>>>>>> mov %r8, root_table_offset(SH_LINEAR_PT_VIRT_START)*8(%rdi) >>>>>>> @@ -177,6 +194,14 @@ restore_all_guest: >>>>>>> sub $(ROOT_PAGETABLE_FIRST_XEN_SLOT - \ >>>>>>> ROOT_PAGETABLE_LAST_XEN_SLOT - 1) * 8, %rdi >>>>>>> rep movsq >>>>>>> + >>>>>>> + /* Unmap the page. */ >>>>>>> + popq %rdi >>>>>>> + callq unmap_domain_page >>>>>>> + popq %rax >>>>>>> + popq %rdx >>>>>>> + popq %r9 >>>>>> >>>>>> While the PUSH/POP are part of what I dislike here, I think this wants >>>>>> doing differently: Establish a mapping when putting in place a new guest >>>>>> page table, and use the pointer here. This could be a new per-domain >>>>>> mapping, to limit its visibility. >>>>> >>>>> I have looked at a per-domain approach and this looks way more complex >>>>> than the few concise lines here (not mentioning the extra amount of >>>>> memory). >>>> >>>> Yes, I do understand that would be a more intrusive change. >>> >>> I could be persuaded to look at a more intrusive change if there are a >>> good reason to do it. To me, at the moment, it mostly seem a matter of >>> taste. >>> >>> So what would we gain from a perdomain mapping? >> >> Rather than mapping/unmapping once per hypervisor entry/exit, we'd >> map just once per context switch. Plus we'd save ugly/fragile assembly >> code (apart from the push/pop I also dislike C functions being called >> from assembly which aren't really meant to be called this way: While >> these two may indeed be unlikely to ever change, any such change comes >> with the risk of the assembly callers being missed - the compiler >> won't tell you that e.g. argument types/count don't match parameters >> anymore). > > I think I have managed to write what you suggested. I would like to > share to get early feedback before resending the series. > > There are also a couple of TODOs (XXX) in place where I am not sure if > this is correct. Sure, some comments below. But note that this isn't a full review. One remark up front: The CR3 part of the names isn't matching what you map, as it's not the register but the page thar it points to. I'd suggest "rootpt" (or "root_pt") as the respective part of the names instead. > --- a/xen/arch/x86/mm.c > +++ b/xen/arch/x86/mm.c > @@ -509,6 +509,13 @@ void share_xen_page_with_guest(struct page_info > *page, struct domain *d, > spin_unlock(&d->page_alloc_lock); > } > > +#define shadow_cr3_idx(v) \ > + ((v)->vcpu_id >> PAGETABLE_ORDER) > + > +#define pv_shadow_cr3_pte(v) \ > + ((v)->domain->arch.pv.shadow_cr3_l1tab[shadow_cr3_idx(v)] + \ > + ((v)->vcpu_id & (L1_PAGETABLE_ENTRIES - 1))) > + > void make_cr3(struct vcpu *v, mfn_t mfn) > { > struct domain *d = v->domain; > @@ -516,6 +523,18 @@ void make_cr3(struct vcpu *v, mfn_t mfn) > v->arch.cr3 = mfn_x(mfn) << PAGE_SHIFT; > if ( is_pv_domain(d) && d->arch.pv.pcid ) > v->arch.cr3 |= get_pcid_bits(v, false); > + > + /* Update the CR3 mapping */ > + if ( is_pv_domain(d) ) > + { > + l1_pgentry_t *pte = pv_shadow_cr3_pte(v); > + > + /* XXX Do we need to call get page first? */ I don't think so. You piggy-back on the reference obtained when the page address is stored in v->arch.cr3. What you need to be sure of though is that there can't be a stale mapping left once that value is replaced. I think the place here is the one central one, but this will want double checking. > + l1e_write(pte, l1e_from_mfn(mfn, __PAGE_HYPERVISOR_RW)); > + /* XXX Can the flush be reduced to the page? */ I think so; any reason you think more needs flushing? I'd rather raise the question whether any flushing is needed at all. Before this mapping can come into use, there necessarily is a CR3 write. See also below. > + /* XXX Do we always call with current? */ I don't think we do. See e.g. arch_set_info_guest() or some of the calls here from shadow code. However, I think when v != current, it is always the case that v is paused. In which case no flushing would be needed at all then, only when v == current. Another question is whether this is the best place to make the mapping. On one hand it is true that the way you do it, the mapping isn't even re-written on each context switch. Otoh having it in write_ptbase() may be the more natural (easier to prove as correct, and that no dangling mappings can be left) place. For example then you'll know that v == current in all cases (avoiding the other code paths, examples of which I gave above). Plus explicit flushing can be omitted, as switch_cr3_cr4() will always flush all non-global mappings. > + flush_tlb_local(); > + } > } > > void write_ptbase(struct vcpu *v) >[...] > --- a/xen/arch/x86/x86_64/entry.S > +++ b/xen/arch/x86/x86_64/entry.S > @@ -165,7 +165,16 @@ restore_all_guest: > and %rsi, %rdi > and %r9, %rsi > add %rcx, %rdi > + > + /* > + * The address in the vCPU cr3 is always mapped in the shadow > + * cr3 virt area. > + */ > + mov VCPU_id(%rbx), %rsi The field is 32 bits, so you need to use %esi here. > + shl $PAGE_SHIFT, %rsi I wonder whether these two wouldn't sensibly be combined to imul $PAGE_SIZE, VCPU_id(%rbx), %esi as the result is guaranteed to fit in 32 bits. A final remark, with no good place to attach it to: The code path above is bypassed when xpti is off for the domain. You may want to avoid all of the setup (and mapping) in that case. This, btw, could be done quite naturally if - as outlined above as an alternative - the mapping occurred in write_ptbase(): The function already distinguishes the two cases. Jan From xen-devel-bounces@lists.xenproject.org Thu Jun 22 13:28:32 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 13:28:32 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553570.864191 (Exim 4.92) (envelope-from ) id 1qCKMI-0003dG-4M; Thu, 22 Jun 2023 13:28:22 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553570.864191; Thu, 22 Jun 2023 13:28:22 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCKMI-0003d9-1h; Thu, 22 Jun 2023 13:28:22 +0000 Received: by outflank-mailman (input) for mailman id 553570; Thu, 22 Jun 2023 13:28:21 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCKMH-0003d3-5K for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 13:28:21 +0000 Received: from EUR05-VI1-obe.outbound.protection.outlook.com (mail-vi1eur05on2061a.outbound.protection.outlook.com [2a01:111:f400:7d00::61a]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id a731e9ad-1100-11ee-b237-6b7b168915f2; Thu, 22 Jun 2023 15:28:20 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by DUZPR04MB9783.eurprd04.prod.outlook.com (2603:10a6:10:4b0::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.24; Thu, 22 Jun 2023 13:28:17 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6521.024; Thu, 22 Jun 2023 13:28:17 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: a731e9ad-1100-11ee-b237-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=W+b0cvvydixY+w7TvouFoJxUoYH6tXTUhpTOUdoHwiO6V7+FYQyeite0pVy0FGVA27BsfrkRTHWQDt8i/yQO7h9oTdd9V97O40gQjvnrFZEM1If01B6oF4vkfcWMr60NR+i3mjLTlXPijwUHKC7xdTo5eBmLWeKjnjCmudGblVwP5vfnrD7JRI1eiUTT45qVaSlTVhe2jlFt0Co9h0O7PLXpxUXFYbYVBwgtXzvyNpJ9n21XUNoS7YpFhTFL5fXQN3XwNHT4VmwwL0tV6bje4A7nlK3ZY5aZB3dWpHnI4AU2NZWMqoMj8fx43csl1z9NTj8WdD/qGRwVGkAGxoMezg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=692S3r+mqE6hNQI/RE0P7FIlwajyYHYijfj1K8vRx8I=; b=Ej9tL4nMM2KJ+TBTDKDs1EcfsxvHyDnyC92ddz9Ug9muqkVnL4P0i55D8Vn1u3Bcl1Vh2Bqvb/jqHFDccAAn7LlJXzSk738vtwobZ9iCsmlytsYCEFSkiJlrubdUMhmH/mXPzsXHyQZT9DKoCm56Ev/cMRt3i2LxGY5zxgKXm3ZSGT6RkLUq2BtupSLH2ncaQ7BHsmps7gCOdCpuprVEbM8trL/UyOAfLOzhBNKcn1ezDboYRSS2ylO4JEkT76WhXsU5QzWhGREuGeLd21q36CjzLZ56Y0TdWr9GsUt6sJF/ZsghPl7uDpckF2DkfFvfQHqoNKiZudrCNq7FNvGn8A== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=692S3r+mqE6hNQI/RE0P7FIlwajyYHYijfj1K8vRx8I=; b=xEIeMKzqPq39jv2ONbswgndyG/Lg3mGhWOYGsnALlFnqfIlqWC9VcHMClqpcnaivjif+BQGfm0r2KnvlXOqKTiPvufAymm9HKb3z4YzaBkUNFQiSGy6l1uxiBuxQiZrG2t0lj4bxoVYXNbY5iogw87yUbAqh1f46KxIKkTNOzmsZO75W7n9blqrQZsoR4frFIGCvii5HKufrLAHjZz1AGhTlq8q9G5T2nuvfgPc7pMXwICPtLfCHW5lHsHkaUZ2aIMxjjmw95IWTHQKP8j1UGn2XunkU2NeH0Wd349lhqFX6GqUxvMi0zZ5DnxgX9eFmlU0Tbt9CdIA0pwzCh2EJGg== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <81f00083-0170-9189-19c7-c8385f7173cd@suse.com> Date: Thu, 22 Jun 2023 15:28:14 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH] mm/pdx: Add comments throughout the codebase for pdx Content-Language: en-US To: Alejandro Vallejo Cc: Andrew Cooper , George Dunlap , Julien Grall , Stefano Stabellini , Wei Liu , Xen-devel References: <20230615162741.2008-1-alejandro.vallejo@cloud.com> <984e13ef-a73e-126c-0bf8-58bee9beb7b2@suse.com> <64930879.1c0a0220.28719.ce38@mx.google.com> <692b3db7-dfe8-8ed7-71e5-b29dcbba7f1c@suse.com> <649440e5.050a0220.708ad.038d@mx.google.com> From: Jan Beulich In-Reply-To: <649440e5.050a0220.708ad.038d@mx.google.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR2P281CA0163.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:99::6) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|DUZPR04MB9783:EE_ X-MS-Office365-Filtering-Correlation-Id: 078c33d8-2f4d-4407-aa67-08db732489b4 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: LprkdRi4OMXnRgax7TfBDgiIaBd1AztUDFFr0zejkOYvKD2vxmxa3q/CmB2cCvwaPhmjGrlzmihAQRx1L+CscnurY112GQOgJUfvTrSt2BlNEXlFBndxA58amwP3D8ztGj/CFItEHClSLs7WDMWJhn3NH0PrSpQDnUJ6cduknTY7VDD90mC1LZQZHEWniSrFh5dP7S7p1jZih+Q/E+Y6hrOjngLIVAwRxyr9+ISlOXHyIyNmyDpbz0LZbRO8BRUNbMUUf0KTn3s7PDrIe3/9RaWDe7C52geg50+g9fwl45WX1dXgzxogJl5af/2z2mlzYFVg05xSgyYz9/gRqjoD2c0kgIGDhy8+BWFDhBueDnxWcLSdRC/GogOgCCPqF/7gdlk9H5vL3yJfknJ6Xp9KqXPpxTPFOnCAajPASN2TrWJdQOCHkjjGGjwK2Zpmuad9CDztYzXmnTUp+XKnGrm6ayBm9ArGMmPPnxudKzzBG3L9snCBk/mq2e8g5sC0NdyAD4x8NyJ7ZM7+exGbycrjvjeaB5FcO+jjSihSlsGrSG8ODDgFuLJmtXyosw545E175N0cnd365W+7uqurMmKTGz2Dl0Iq1rBp3UVcZA5+YLwbsbaUiamCA814Cg7kYqhThPKdwI9DY3tmtEhjffw2jA== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(366004)(346002)(376002)(136003)(39860400002)(396003)(451199021)(53546011)(186003)(26005)(6512007)(6506007)(31686004)(478600001)(2906002)(86362001)(31696002)(41300700001)(8936002)(8676002)(2616005)(36756003)(38100700002)(54906003)(6916009)(4326008)(316002)(6486002)(6666004)(5660300002)(66476007)(83380400001)(66946007)(66556008)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?RFZDNzc0bW5GVEd4TVNodGJldlFVL0Q2QjFQOTRmUDIydHh2MVIzUFErZHZX?= =?utf-8?B?d1JaVHQ0OTFmUm1MTnlPa0cvaWpzN1RUMlV2QkNqTzFCb1VzcS8vcUZ4NnRE?= =?utf-8?B?YnZmdXhBNlFKT3RLSGVDZ3ZSUXNnMHhtSVQ3S0xHWWtFVUVtRVFHb2V1aEVW?= =?utf-8?B?ODRtVlgrMzdMSmRhdzFlcStsSE40eTJ0ajltcXl3Y3kxbUIySUdXU2pHWjNO?= =?utf-8?B?WGU1WmxsTWlhVmhDYmVtcGF2akdsWm1OM2lrTG9DZTZoN244MXJwY00xVVdP?= =?utf-8?B?a0ZvMjJHY2k0c3V3Ujk3K3pqZGEwVkttbFNZR1JDS2FuL2tMUVR6Q2F2SnBP?= =?utf-8?B?TzBHUjZIaTY4WUxvaWZ6bGVkWE03L1VZVVlBaTUxY2g2dXFsVTJocmRkTVpw?= =?utf-8?B?RHRMaDZ1cEJpWXFoSnlha1A1WW1yall1ZGh5cG0rNlN3Sk8rS0t6cnhZczg3?= =?utf-8?B?U2pEejdORG5UZ2orZ3JlVk1YWjdLaUlRUCtRZEV5bnFNdUoybTRRUW5LQ3VX?= =?utf-8?B?dlVuR3VSdnJ1d2lBVVIvbjl4VzJFVGgvcUhja2ZkMG5zaWJ5UzduSi92a2hR?= =?utf-8?B?a093SWxLUDFJTk1XdjBnajhpaW9QODgydTQ3ZU1wQ0twa1hsM0xvMmpSNlNw?= =?utf-8?B?ZmVWRGxycWUzVkd2SXF4UkI1VWIwSE5pNitXNzFHQ21PU25UKzk5Ny9YVys1?= =?utf-8?B?aTIvTENGems4b2pRRmdxNUU3akhMS1ViaDl5Zk4yeDNJNStBazZ2TlhreDRh?= =?utf-8?B?YlhwbGR0aUI4UytpeWFUY3ZucGo4ZzZnSTYrOWR3QzlhZDZZOFRpb0dZamVy?= =?utf-8?B?Uzc0Y1FKUzVkTURyQVhxVVgwaEZMMy9xMW5QV3RUaTNPZnQvZEc3c2FsTkxV?= =?utf-8?B?MjR3YnFHVzk2WGlDamNxbTZnMlJDOTVwaDZRSit0bmI4NmpzM3M2T2NsV1A4?= =?utf-8?B?VWlEaUpnQ0FLMUZrK21IditONTdKWEQ3Y3kzZnBNeVVxcUNSZmVVRWRXMVlU?= =?utf-8?B?VHJyRnRlSWVueit1aW5YSnRPZVNZNFpVMDg4d3JQaUt6Z0R5S0lpeU1FZjNQ?= =?utf-8?B?KzNqbHZjVEQ3ZzVOb1BIN0xkMmt0M2lPek1tZlVlbGVmSGt5Ymg3b3hVYXZN?= =?utf-8?B?SmxMWFlaZnNCQkNqSUd1T2EwNW1mSktUbmwrYm96eGVGMzkyeDhpSXYrWUNK?= =?utf-8?B?UTh3VmhIZmpxVXFabzVWYjV2S2dtZ25hYWZXWGdNL0dzaDRkbWg4Q0wrRHpz?= =?utf-8?B?TEg5MkJCY2xwZHUzZ212eEVBK0JPRlZZZTRjUXk2UFdTanZMdGU4bWpsNlRP?= =?utf-8?B?cGFENDJJNDEvMjNjYkNQM0Fkb1dWOS94Nm53M0hLeGt2T0lBaXN4N2plRG5N?= =?utf-8?B?M0V6TGVWK0ZQOHhrMzJvQzJjTDh4akYrUVR5QnBzazRlMFVGbHNRVEtPUERO?= =?utf-8?B?T3lxY2VYcm02RVgvdnNGbmsxUktMSXJ6WWZSay8yM0NJazBKWUdaSThJWGw4?= =?utf-8?B?eHd5MnVzV204dGlhNUJmM2tUUlJwa2tnTm9DSzRJaFg2NGZwY3EwK1A2elVJ?= =?utf-8?B?UVdOcGd2QXc5eDJmWkIwNDJPa21rMVhsaGVwdzhBRTVMakRkU2MwYWpya0J6?= =?utf-8?B?VDhKRzVVY3VDZWM3S3JxbE9lYUd5QjFwOGh6aEFFNjlDL0kvWUpCTStFbm9k?= =?utf-8?B?akYvcmgvcXh4NXZEZ0VRVFRpQzJMbC9wVFluRFFIdHhOQUhSekhUWCsvVDdk?= =?utf-8?B?TmkvdEhCWUxkTkRzNWtiNlBpVGFpQ0FtcU41WXZxL1htSnZjakxBdzRlMUFt?= =?utf-8?B?Z2h0NVMxZWRBK01HWkMra01TTjh1YWNKQ0U2c2UyMmdZSHp0NjRsWklCZVV1?= =?utf-8?B?MnRNcUFDZlRNY1ozcjZSYWdHUmt2S2lvS3Bsa24xY1VVNENOSHI1OWVqUWgx?= =?utf-8?B?TWR6bU5DNk5ENFh1aUpoQXlJcWx0b1hlR0prK0RqNkFOYVAvbTlWSVkzdkpV?= =?utf-8?B?M3JBVkE0ZVlCc2RMUHRwb2VXOUc0SjVUQ25FVG1PazJkOFN4QUZEeFk2Uk5B?= =?utf-8?B?Qi8xT1VJZllOOFFyRFdNNW4vTGZIUllvUjNzdXN4VVNKdDF2V3FyVitVaVc2?= =?utf-8?Q?hdIMWbogT6B5Ia2UezdUEKLOe?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 078c33d8-2f4d-4407-aa67-08db732489b4 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 22 Jun 2023 13:28:17.0677 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 4nbx43GFzye4Idt4YTNJMKE3m06nVB3N1iianYFBJJiDTo8Zlp8yo0Zof7xTpOPbqdn/Trx5o2OPVfF8tLKWyQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DUZPR04MB9783 On 22.06.2023 14:39, Alejandro Vallejo wrote: > On Thu, Jun 22, 2023 at 11:15:17AM +0200, Jan Beulich wrote: >>>>> + * This is a technique to avoid wasting memory on machines known to have >>>>> + * split their machine address space in two big discontinuous and highly >>>>> + * disjoint chunks. >>>> >>>> Why two? There can be any number, and in fact on the system I originally >>>> had data from for reference (when first writing this code) iirc there >>>> were 8 nodes, each with a chunk of memory far away from the other chunks. >>>> The compression scheme used merely requires that some "inner" bits are >>>> unused (always zero) in all of those ranges. >>> Well, our implementation only supports two and I didn't see any obvious >>> hints about intending to increasing that number. >> >> Where are you taking that "supports two" from? When I first wrote this code, >> it was tested against a system with 8 (maybe it was 4, but certainly more >> than 2) discontiguous regions (not counting the hole below 4G). > You can have any number, but there's a single contiguous bit slice being > removed, as far as I can see. The adaptor functions in > xen/include/xen/pdx.h perform a single shift. > > static inline unsigned long pfn_to_pdx(unsigned long pfn) > { > return (pfn & pfn_pdx_bottom_mask) | > ((pfn & pfn_top_mask) >> pfn_pdx_hole_shift); > } > > static inline unsigned long pdx_to_pfn(unsigned long pdx) > { > return (pdx & pfn_pdx_bottom_mask) | > ((pdx << pfn_pdx_hole_shift) & pfn_top_mask); > } > > Unless I'm missing some non-obvious piece of the puzzle, I'd say that for a > truly general compressor we'd need some kind of loop over the hole mask. Well, further compression might be possible that way, yes, but that's entirely orthogonal to the number of discontiguous regions we're talking about. Consider 0x0000100000000000-0x00001000ffffffff 0x0000200000000000-0x00002000ffffffff 0x0000300000000000-0x00003000ffffffff 0x0000400000000000-0x00004000ffffffff The reference system's arrangement was slightly more complex (first and foremost because of the memory below 4G that node 0 had), but came close to the above conceptually. Jan From xen-devel-bounces@lists.xenproject.org Thu Jun 22 13:35:39 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 13:35:39 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553575.864201 (Exim 4.92) (envelope-from ) id 1qCKT5-00057W-Td; Thu, 22 Jun 2023 13:35:23 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553575.864201; Thu, 22 Jun 2023 13:35:23 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCKT5-00057P-Pa; Thu, 22 Jun 2023 13:35:23 +0000 Received: by outflank-mailman (input) for mailman id 553575; Thu, 22 Jun 2023 13:35:21 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCKT3-00057J-OH for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 13:35:21 +0000 Received: from smtp-out2.suse.de (smtp-out2.suse.de [2001:67c:2178:6::1d]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id a147e557-1101-11ee-8611-37d641c3527e; Thu, 22 Jun 2023 15:35:19 +0200 (CEST) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by smtp-out2.suse.de (Postfix) with ESMTPS id 0F31920531; Thu, 22 Jun 2023 13:35:19 +0000 (UTC) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id 6D7B6132BE; Thu, 22 Jun 2023 13:35:18 +0000 (UTC) Received: from dovecot-director2.suse.de ([192.168.254.65]) by imap2.suse-dmz.suse.de with ESMTPSA id S83kGBZOlGTABwAAMHmgww (envelope-from ); Thu, 22 Jun 2023 13:35:18 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: a147e557-1101-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1; t=1687440919; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=fB464WuGWj8D0mlhXd7brYTcmTyhm+Y3IrgkWyWa3+Y=; b=G8FavAXuMAsdi1YSgY4AwOHYA1b12LelWpyk98FrV36dOqba5I7AunX6t7jVfCO+kDGwmx 4DudASbyCnj+CwsGY7BteVN32rYiL0lSw11S89PxzLpiMwneHZ7ZZgEPRjx0oPVjDbCZf8 HE1LmL+679McrCYd1wd8qCoI+KQUFgM= Message-ID: <36e256ea-7255-f364-bfac-69c39dc7d447@suse.com> Date: Thu, 22 Jun 2023 15:35:17 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH] Updates to Xen hypercall preemption Content-Language: en-US To: Andrew Cooper , Peter Zijlstra Cc: Per Bilse , Andy Lutomirski , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , "maintainer:X86 ARCHITECTURE (32-BIT AND 64-BIT)" , "H. Peter Anvin" , Stefano Stabellini , Oleksandr Tyshchenko , "open list:X86 ENTRY CODE" , "moderated list:XEN HYPERVISOR INTERFACE" References: <20230621151442.2152425-1-per.bilse@citrix.com> <20230621164038.GM2053369@hirez.programming.kicks-ass.net> <6523f3e2-8dfc-c2dd-6d14-9e0c3ac93cc8@citrix.com> <20230621200409.GC4253@hirez.programming.kicks-ass.net> <20230622082607.GD4253@hirez.programming.kicks-ass.net> From: Juergen Gross In-Reply-To: Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="------------9wUU0ZXH7Vt1nWOsEiz1t9fR" This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --------------9wUU0ZXH7Vt1nWOsEiz1t9fR Content-Type: multipart/mixed; boundary="------------X30ufPFR55p509DhQO8qvp16"; protected-headers="v1" From: Juergen Gross To: Andrew Cooper , Peter Zijlstra Cc: Per Bilse , Andy Lutomirski , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , "maintainer:X86 ARCHITECTURE (32-BIT AND 64-BIT)" , "H. Peter Anvin" , Stefano Stabellini , Oleksandr Tyshchenko , "open list:X86 ENTRY CODE" , "moderated list:XEN HYPERVISOR INTERFACE" Message-ID: <36e256ea-7255-f364-bfac-69c39dc7d447@suse.com> Subject: Re: [PATCH] Updates to Xen hypercall preemption References: <20230621151442.2152425-1-per.bilse@citrix.com> <20230621164038.GM2053369@hirez.programming.kicks-ass.net> <6523f3e2-8dfc-c2dd-6d14-9e0c3ac93cc8@citrix.com> <20230621200409.GC4253@hirez.programming.kicks-ass.net> <20230622082607.GD4253@hirez.programming.kicks-ass.net> In-Reply-To: --------------X30ufPFR55p509DhQO8qvp16 Content-Type: multipart/mixed; boundary="------------Udhk2FmtpioQWn7YyXUvGtL6" --------------Udhk2FmtpioQWn7YyXUvGtL6 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: base64 T24gMjIuMDYuMjMgMTU6MDUsIEFuZHJldyBDb29wZXIgd3JvdGU6DQo+IE9uIDIyLzA2LzIw MjMgOToyNiBhbSwgUGV0ZXIgWmlqbHN0cmEgd3JvdGU6DQo+PiBPbiBUaHUsIEp1biAyMiwg MjAyMyBhdCAwNzoyMjo1M0FNICswMjAwLCBKdWVyZ2VuIEdyb3NzIHdyb3RlOg0KPj4NCj4+ PiBUaGUgaHlwZXJjYWxscyB3ZSBhcmUgdGFsa2luZyBvZiBhcmUgc3luY2hyb25vdXMgb25l cy4gVGhleSBhcmUgcnVubmluZw0KPj4+IGluIHRoZSBjb250ZXh0IG9mIHRoZSB2Y3B1IGRv aW5nIHRoZSBjYWxsIChsaWtlIGEgc3lzY2FsbCBmcm9tIHVzZXJsYW5kIGlzDQo+Pj4gcnVu bmluZyBpbiB0aGUgcHJvY2VzcyBjb250ZXh0KS4NCj4+IChzbyB0aW1lIGFjdHVhbGx5IHBh c3NlcyBmcm9tIHRoZSBndWVzdCdzIHBvdj8pDQo+IA0KPiBZZXMuwqAgQW5kIGluIHByaW5j aXBsZSBpdCdzIHdpcmVkIGludG8gc3RvbGVuIHRpbWUuDQoNClN1cmU/IEkgdGhpbmsgc3Rv bGVuIHRpbWUgaXMgb25seSBpbmNyZWFzZWQgaWYgdGhlIHZjcHUgaXMgYmVpbmcgZGVzY2hl ZHVsZWQNCmJ5IFhlbi4gU3luY2hyb25vdXMgaHlwZXJjYWxscyBzaG91bGQgYmUgYWNjb3Vu dGVkIGZvciB0aGUgY2FsbGluZyB2Y3B1Lg0KDQoNCkp1ZXJnZW4NCg== --------------Udhk2FmtpioQWn7YyXUvGtL6 Content-Type: application/pgp-keys; name="OpenPGP_0xB0DE9DD628BF132F.asc" Content-Disposition: attachment; filename="OpenPGP_0xB0DE9DD628BF132F.asc" Content-Description: OpenPGP public key Content-Transfer-Encoding: quoted-printable -----BEGIN PGP PUBLIC KEY BLOCK----- xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjri oyspZKOBycWxw3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2 kaV2KL9650I1SJvedYm8Of8Zd621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i 1TXkH09XSSI8mEQ/ouNcMvIJNwQpd369y9bfIhWUiVXEK7MlRgUG6MvIj6Y3Am/B BLUVbDa4+gmzDC9ezlZkTZG2t14zWPvxXP3FAp2pkW0xqG7/377qptDmrk42GlSK N4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEBAAHNHEp1ZXJnZW4gR3Jvc3Mg PGpnQHBmdXBmLm5ldD7CwHkEEwECACMFAlOMcBYCGwMHCwkIBwMCAQYVCAIJCgsE FgIDAQIeAQIXgAAKCRCw3p3WKL8TL0KdB/93FcIZ3GCNwFU0u3EjNbNjmXBKDY4F UGNQH2lvWAUy+dnyThpwdtF/jQ6j9RwE8VP0+NXcYpGJDWlNb9/JmYqLiX2Q3Tye vpB0CA3dbBQp0OW0fgCetToGIQrg0MbD1C/sEOv8Mr4NAfbauXjZlvTj30H2jO0u +6WGM6nHwbh2l5O8ZiHkH32iaSTfN7Eu5RnNVUJbvoPHZ8SlM4KWm8rG+lIkGurq qu5gu8q8ZMKdsdGC4bBxdQKDKHEFExLJK/nRPFmAuGlId1E3fe10v5QL+qHI3EIP tyfE7i9Hz6rVwi7lWKgh7pe0ZvatAudZ+JNIlBKptb64FaiIOAWDCx1SzR9KdWVy Z2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+wsB5BBMBAgAjBQJTjHCvAhsDBwsJ CAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey/HmQf/RtI7kv5A2PS4 RF7HoZhPVPogNVbC4YA6lW7DrWf0teC0RR3MzXfy6pJ+7KLgkqMlrAbN/8Dvjoz7 8X+5vhH/rDLa9BuZQlhFmvcGtCF8eR0T1v0nC/nuAFVGy+67q2DH8As3KPu0344T BDpAvr2uYM4tSqxK4DURx5INz4ZZ0WNFHcqsfvlGJALDeE0LhITTd9jLzdDad1pQ SToCnLl6SBJZjDOX9QQcyUigZFtCXFst4dlsvddrxyqT1f17+2cFSdu7+ynLmXBK 7abQ3rwJY8SbRO2iRulogc5vr/RLMMlscDAiDkaFQWLoqHHOdfO9rURssHNN8WkM nQfvUewRz80hSnVlcmdlbiBHcm9zcyA8amdyb3NzQG5vdmVsbC5jb20+wsB5BBMB AgAjBQJTjHDXAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/ Ey8PUQf/ehmgCI9jB9hlgexLvgOtf7PJnFOXgMLdBQgBlVPO3/D9R8LtF9DBAFPN hlrsfIG/SqICoRCqUcJ96Pn3P7UUinFG/I0ECGF4EvTE1jnDkfJZr6jrbjgyoZHi w/4BNwSTL9rWASyLgqlA8u1mf+c2yUwcGhgkRAd1gOwungxcwzwqgljf0N51N5Jf VRHRtyfwq/ge+YEkDGcTU6Y0sPOuj4Dyfm8fJzdfHNQsWq3PnczLVELStJNdapwP OoE+lotufe3AM2vAEYJ9rTz3Cki4JFUsgLkHFqGZarrPGi1eyQcXeluldO3m91NK /1xMI3/+8jbO0tsn1tqSEUGIJi7ox80eSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1 c2UuZGU+wsB5BBMBAgAjBQJTjHDrAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgEC F4AACgkQsN6d1ii/Ey+LhQf9GL45eU5vOowA2u5N3g3OZUEBmDHVVbqMtzwlmNC4 k9Kx39r5s2vcFl4tXqW7g9/ViXYuiDXb0RfUpZiIUW89siKrkzmQ5dM7wRqzgJpJ wK8Bn2MIxAKArekWpiCKvBOB/Cc+3EXE78XdlxLyOi/NrmSGRIov0karw2RzMNOu 5D+jLRZQd1Sv27AR+IP3I8U4aqnhLpwhK7MEy9oCILlgZ1QZe49kpcumcZKORmzB TNh30FVKK1EvmV2xAKDoaEOgQB4iFQLhJCdP1I5aSgM5IVFdn7v5YgEYuJYx37Io N1EblHI//x/e2AaIHpzK5h88NEawQsaNRpNSrcfbFmAg987ATQRTjHAWAQgAyzH6 AOODMBjgfWE9VeCgsrwH3exNAU32gLq2xvjpWnHIs98ndPUDpnoxWQugJ6MpMncr 0xSwFmHEgnSEjK/PAjppgmyc57BwKII3sV4on+gDVFJR6Y8ZRwgnBC5mVM6JjQ5x Dk8WRXljExRfUX9pNhdE5eBOZJrDRoLUmmjDtKzWaDhIg/+1Hzz93X4fCQkNVbVF LELU9bMaLPBG/x5q4iYZ2k2ex6d47YE1ZFdMm6YBYMOljGkZKwYde5ldM9mo45mm we0icXKLkpEdIXKTZeKDO+Hdv1aqFuAcccTg9RXDQjmwhC3yEmrmcfl0+rPghO0I v3OOImwTEe4co3c1mwARAQABwsBfBBgBAgAJBQJTjHAWAhsMAAoJELDendYovxMv Q/gH/1ha96vm4P/L+bQpJwrZ/dneZcmEwTbe8YFsw2V/Buv6Z4Mysln3nQK5ZadD 534CF7TDVft7fC4tU4PONxF5D+/tvgkPfDAfF77zy2AH1vJzQ1fOU8lYFpZXTXIH b+559UqvIB8AdgR3SAJGHHt4RKA0F7f5ipYBBrC6cyXJyyoprT10EMvU8VGiwXvT yJz3fjoYsdFzpWPlJEBRMedCot60g5dmbdrZ5DWClAr0yau47zpWj3enf1tLWaqc suylWsviuGjKGw7KHQd3bxALOknAp4dN3QwBYCKuZ7AddY9yjynVaD5X7nF9nO5B jR/i1DG86lem3iBDXzXsZDn8R38=3D =3D2wuH -----END PGP PUBLIC KEY BLOCK----- --------------Udhk2FmtpioQWn7YyXUvGtL6-- --------------X30ufPFR55p509DhQO8qvp16-- --------------9wUU0ZXH7Vt1nWOsEiz1t9fR Content-Type: application/pgp-signature; name="OpenPGP_signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="OpenPGP_signature" -----BEGIN PGP SIGNATURE----- wsB5BAABCAAjFiEEhRJncuj2BJSl0Jf3sN6d1ii/Ey8FAmSUThUFAwAAAAAACgkQsN6d1ii/Ey9X fAf9HjkfAs2lLMbJwOBhy8Bz6TTQytHEcPSeFDdd3uw6GQ9Te00ge4KZWGivXXxO7cbnX0a2KObA JFy4NSErBwIAFGfEtk4vaZq4kHv5rZTAFnfTi+Bi+PVVk29WqIHE3ht3BcL3Os02Ce2Bc3jvy+Tx 7ZE2RQqGffGzHHXoT5tWx9Khmg/XjNJoex4NaFLDmpBryfjJRJS3nzIU/7AnKZglmprRlZDJsSwT zcdEva1xVGOxAlHbQzhRw71sPhq2lQa/CQnyDQZT3upkS4foYgrhAUpQkzK8b0gmWfLlQJyV3e+w /+6guzzTnQ+x1N6hqLYIUJDRGY2dBUy01cCR7tMNJA== =x/g1 -----END PGP SIGNATURE----- --------------9wUU0ZXH7Vt1nWOsEiz1t9fR-- From xen-devel-bounces@lists.xenproject.org Thu Jun 22 13:37:39 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 13:37:39 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553580.864210 (Exim 4.92) (envelope-from ) id 1qCKVG-0005fq-90; Thu, 22 Jun 2023 13:37:38 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553580.864210; Thu, 22 Jun 2023 13:37:38 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCKVG-0005fj-60; Thu, 22 Jun 2023 13:37:38 +0000 Received: by outflank-mailman (input) for mailman id 553580; Thu, 22 Jun 2023 13:37:37 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCKVF-0005fb-Jn for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 13:37:37 +0000 Received: from mail-wm1-x331.google.com (mail-wm1-x331.google.com [2a00:1450:4864:20::331]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id f23f4335-1101-11ee-8611-37d641c3527e; Thu, 22 Jun 2023 15:37:35 +0200 (CEST) Received: by mail-wm1-x331.google.com with SMTP id 5b1f17b1804b1-3f9b4bf99c2so40990315e9.3 for ; Thu, 22 Jun 2023 06:37:35 -0700 (PDT) Received: from EMEAENGAAD19049. (default-46-102-197-194.interdsl.co.uk. [46.102.197.194]) by smtp.gmail.com with ESMTPSA id w21-20020a1cf615000000b003f8126bcf34sm18765151wmc.48.2023.06.22.06.37.34 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 22 Jun 2023 06:37:34 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: f23f4335-1101-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cloud.com; s=cloud; t=1687441055; x=1690033055; h=in-reply-to:content-disposition:mime-version:references:subject:cc :to:from:date:message-id:from:to:cc:subject:date:message-id:reply-to; bh=HKtNqEa7eNDf4aw7mZRTRzS9lwyviaBYqS0V4KP7yeg=; b=iqt/u6MA3IQsK8oaozcKOC3JAGTVaYF04eW6LATQQIR2cPMgW2Qt5vJ/2JQ5pYEf3Q 9Lw2vjB25DAj3HcOu+avbVZ9fTsSVfoVyE4PXaqMtVBybjptugLLeGVCR+L8QJu7jSv7 1GCdLynf1oz7vZaTh1bBRwcrcwJ3cy5DfI5Fc= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687441055; x=1690033055; h=in-reply-to:content-disposition:mime-version:references:subject:cc :to:from:date:message-id:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=HKtNqEa7eNDf4aw7mZRTRzS9lwyviaBYqS0V4KP7yeg=; b=CEIhCn+4zKyu2FVm70HxTvy7css6xs21qUDXzpajXKq3TvEKrnWgWSvL4EgvMV7sZs F3Bl0ghRei1Q2kiJKXceYTxbE96bVYmiabrXWLIJnm1xMHoR+js0G2pEjRHHX/d2U2s6 9LCXBI1GxUK8lNSG14giX0gIRlq6qfxfQ9uRvTiZe9MzobVmZi5YjVn+mERoTsXPplXB U6xxFIMZMCdZal7NiuxQuQBtYeRuBjC5lMUnf/r6N+OANG7MW8f2YzXbMkNYYOlW8NXG tS2jOuA5rb1epsorGGC1pRF3j+aIvUWnHgMSc3XO2WBdmR3khxDGgRMIyrsYRkOBHr/O 98sg== X-Gm-Message-State: AC+VfDzfl6TGX+uvA+DkEnHiS1QLxDOJ5mKqWN5e3TsyuaopUBP9gohB s/au6GssmQqdhKM2KaurrvOg9g== X-Google-Smtp-Source: ACHHUZ6J0BARQhNefgfBP1bTCrXLtba0bc07rPR7z2IuKbWfZgqyQLSzxeKkV17Z+aY+aGJ6swBNkg== X-Received: by 2002:a7b:cbcd:0:b0:3fa:74bf:f028 with SMTP id n13-20020a7bcbcd000000b003fa74bff028mr1083655wmi.0.1687441054818; Thu, 22 Jun 2023 06:37:34 -0700 (PDT) Message-ID: <64944e9e.1c0a0220.2e6f8.2c96@mx.google.com> X-Google-Original-Message-ID: Date: Thu, 22 Jun 2023 14:37:33 +0100 From: Alejandro Vallejo To: Jan Beulich Cc: Andrew Cooper , George Dunlap , Julien Grall , Stefano Stabellini , Wei Liu , Xen-devel Subject: Re: [PATCH] mm/pdx: Add comments throughout the codebase for pdx References: <20230615162741.2008-1-alejandro.vallejo@cloud.com> <984e13ef-a73e-126c-0bf8-58bee9beb7b2@suse.com> <64930879.1c0a0220.28719.ce38@mx.google.com> <692b3db7-dfe8-8ed7-71e5-b29dcbba7f1c@suse.com> <649440e5.050a0220.708ad.038d@mx.google.com> <81f00083-0170-9189-19c7-c8385f7173cd@suse.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <81f00083-0170-9189-19c7-c8385f7173cd@suse.com> On Thu, Jun 22, 2023 at 03:28:14PM +0200, Jan Beulich wrote: > > Unless I'm missing some non-obvious piece of the puzzle, I'd say that for a > > truly general compressor we'd need some kind of loop over the hole mask. > > Well, further compression might be possible that way, yes, but that's > entirely orthogonal to the number of discontiguous regions we're > talking about. Consider > > 0x0000100000000000-0x00001000ffffffff > 0x0000200000000000-0x00002000ffffffff > 0x0000300000000000-0x00003000ffffffff > 0x0000400000000000-0x00004000ffffffff > > The reference system's arrangement was slightly more complex (first and > foremost because of the memory below 4G that node 0 had), but came close > to the above conceptually. > > Jan Ah, I now see what you mean. A single hole can compress several regions if they are all share sequences of zeroes. Fair point. I'll reflect that in that paragraph. Alejandro From xen-devel-bounces@lists.xenproject.org Thu Jun 22 13:55:34 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 13:55:34 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553584.864221 (Exim 4.92) (envelope-from ) id 1qCKmW-00087A-MX; Thu, 22 Jun 2023 13:55:28 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553584.864221; Thu, 22 Jun 2023 13:55:28 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCKmW-000873-Jg; Thu, 22 Jun 2023 13:55:28 +0000 Received: by outflank-mailman (input) for mailman id 553584; Thu, 22 Jun 2023 13:55:27 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCKmV-00086x-RT for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 13:55:27 +0000 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by se1-gles-sth1.inumbo.com (Halon) with ESMTP id 6f4a5419-1104-11ee-b237-6b7b168915f2; Thu, 22 Jun 2023 15:55:24 +0200 (CEST) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 661F9C14; Thu, 22 Jun 2023 06:56:07 -0700 (PDT) Received: from e125920.cambridge.arm.com (unknown [10.1.199.64]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 7BB5A3F663; Thu, 22 Jun 2023 06:55:22 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 6f4a5419-1104-11ee-b237-6b7b168915f2 From: Peter Hoyes To: xen-devel@lists.xenproject.org Cc: bertrand.marquis@arm.com, wei.chen@arm.com, luca.fancellu@arm.com, Peter Hoyes , Wei Liu , Anthony PERARD Subject: [PATCH v2 1/2] tools/console: Add escape argument to configure escape character Date: Thu, 22 Jun 2023 14:55:02 +0100 Message-Id: <20230622135503.409150-1-peter.hoyes@arm.com> X-Mailer: git-send-email 2.34.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit From: Peter Hoyes Dom0 may be accessed via telnet, meaning the default escape character (which is the same as telnet's) cannot be directly used to exit the console. It would be helpful to make the escape character customizable in such use cases. Add --escape argument to console tool for this purpose. Create parse_escape_character static function to convert a character string (which may include a '^' modifier) into an ANSI integer. Add argument to getopt options, parse escape character and pass value to console_loop. If --escape is not specified, it falls back to the existing behavior using DEFAULT_ESCAPE_SEQUENCE. Signed-off-by: Peter Hoyes --- tools/console/client/main.c | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) diff --git a/tools/console/client/main.c b/tools/console/client/main.c index 6775006488..fb7cfb04b5 100644 --- a/tools/console/client/main.c +++ b/tools/console/client/main.c @@ -42,7 +42,7 @@ #include #include "xenctrl.h" -#define ESCAPE_CHARACTER 0x1d +#define DEFAULT_ESCAPE_CHARACTER 0x1d static volatile sig_atomic_t received_signal = 0; static char lockfile[sizeof (XEN_LOCK_DIR "/xenconsole.") + 8] = { 0 }; @@ -77,6 +77,7 @@ static void usage(const char *program) { " -n, --num N use console number N\n" " --type TYPE console type. must be 'pv', 'serial' or 'vuart'\n" " --start-notify-fd N file descriptor used to notify parent\n" + " --escape E escape sequence to exit console\n" , program); } @@ -174,7 +175,7 @@ static void restore_term(int fd, struct termios *old) } static int console_loop(int fd, struct xs_handle *xs, char *pty_path, - bool interactive) + bool interactive, char escape_character) { int ret, xs_fd = xs_fileno(xs), max_fd = -1; @@ -215,7 +216,7 @@ static int console_loop(int fd, struct xs_handle *xs, char *pty_path, char msg[60]; len = read(STDIN_FILENO, msg, sizeof(msg)); - if (len == 1 && msg[0] == ESCAPE_CHARACTER) { + if (len == 1 && msg[0] == escape_character) { return 0; } @@ -335,6 +336,7 @@ int main(int argc, char **argv) { "help", 0, 0, 'h' }, { "start-notify-fd", 1, 0, 's' }, { "interactive", 0, 0, 'i' }, + { "escape", 1, 0, 'e' }, { 0 }, }; @@ -345,6 +347,7 @@ int main(int argc, char **argv) console_type type = CONSOLE_INVAL; bool interactive = 0; const char *console_names = "serial, pv, vuart"; + char escape_character = DEFAULT_ESCAPE_CHARACTER; while((ch = getopt_long(argc, argv, sopt, lopt, &opt_ind)) != -1) { switch(ch) { @@ -375,6 +378,12 @@ int main(int argc, char **argv) case 'i': interactive = 1; break; + case 'e': + if (optarg[0] == '^') + escape_character = optarg[1] & 0x1f; + else + escape_character = optarg[0]; + break; default: fprintf(stderr, "Invalid argument\n"); fprintf(stderr, "Try `%s --help' for more information.\n", @@ -493,7 +502,7 @@ int main(int argc, char **argv) close(start_notify_fd); } - console_loop(spty, xs, path, interactive); + console_loop(spty, xs, path, interactive, escape_character); free(path); free(dom_path); -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 22 13:55:39 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 13:55:39 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553587.864231 (Exim 4.92) (envelope-from ) id 1qCKmh-0008PZ-3z; Thu, 22 Jun 2023 13:55:39 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553587.864231; Thu, 22 Jun 2023 13:55:39 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCKmh-0008PQ-08; Thu, 22 Jun 2023 13:55:39 +0000 Received: by outflank-mailman (input) for mailman id 553587; Thu, 22 Jun 2023 13:55:38 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCKmg-0008ON-4d for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 13:55:38 +0000 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by se1-gles-flk1.inumbo.com (Halon) with ESMTP id 76713b0c-1104-11ee-8611-37d641c3527e; Thu, 22 Jun 2023 15:55:36 +0200 (CEST) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 69B61C14; Thu, 22 Jun 2023 06:56:19 -0700 (PDT) Received: from e125920.cambridge.arm.com (unknown [10.1.199.64]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 651983F663; Thu, 22 Jun 2023 06:55:34 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 76713b0c-1104-11ee-8611-37d641c3527e From: Peter Hoyes To: xen-devel@lists.xenproject.org Cc: bertrand.marquis@arm.com, wei.chen@arm.com, luca.fancellu@arm.com, Peter Hoyes , Wei Liu , Anthony PERARD , Juergen Gross Subject: [PATCH v2 2/2] xl: Add escape character argument to xl console Date: Thu, 22 Jun 2023 14:55:03 +0100 Message-Id: <20230622135503.409150-2-peter.hoyes@arm.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20230622135503.409150-1-peter.hoyes@arm.com> References: <20230622135503.409150-1-peter.hoyes@arm.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit From: Peter Hoyes Add -e argument to xl console and pass to new escape_character argument of libxl_console_exec. In libxl_console_exec, there are currently two call sites to execl, which uses varargs, in order to support optionally passing 'start-notify-fd' to the console client. In order to support passing the 'escape' argument optionally too, refactor to instead have a single call site to execv, which has the same behavior but takes an array of arguments. If -e is not specified, --escape is not passed to the console client and the existing value (^]) is used as a default. Signed-off-by: Peter Hoyes --- tools/include/libxl.h | 8 ++++++-- tools/libs/light/libxl_console.c | 30 ++++++++++++++++++++++-------- tools/xl/xl_cmdtable.c | 3 ++- tools/xl/xl_console.c | 10 +++++++--- tools/xl/xl_vmcontrol.c | 2 +- 5 files changed, 38 insertions(+), 15 deletions(-) diff --git a/tools/include/libxl.h b/tools/include/libxl.h index cac641a7eb..c513c39483 100644 --- a/tools/include/libxl.h +++ b/tools/include/libxl.h @@ -1958,7 +1958,8 @@ int libxl_vncviewer_exec(libxl_ctx *ctx, uint32_t domid, int autopass); * the caller that it has connected to the guest console. */ int libxl_console_exec(libxl_ctx *ctx, uint32_t domid, int cons_num, - libxl_console_type type, int notify_fd); + libxl_console_type type, int notify_fd, + char* escape_character); /* libxl_primary_console_exec finds the domid and console number * corresponding to the primary console of the given vm, then calls * libxl_console_exec with the right arguments (domid might be different @@ -1968,9 +1969,12 @@ int libxl_console_exec(libxl_ctx *ctx, uint32_t domid, int cons_num, * guests using pygrub. * If notify_fd is not -1, xenconsole will write 0x00 to it to nofity * the caller that it has connected to the guest console. + * If escape_character is not NULL, the provided value is used to exit + * the guest console. */ int libxl_primary_console_exec(libxl_ctx *ctx, uint32_t domid_vm, - int notify_fd); + int notify_fd, + char* escape_character); #if defined(LIBXL_API_VERSION) && LIBXL_API_VERSION < 0x040800 diff --git a/tools/libs/light/libxl_console.c b/tools/libs/light/libxl_console.c index f497be141b..0b7293fe71 100644 --- a/tools/libs/light/libxl_console.c +++ b/tools/libs/light/libxl_console.c @@ -52,7 +52,8 @@ out: } int libxl_console_exec(libxl_ctx *ctx, uint32_t domid, int cons_num, - libxl_console_type type, int notify_fd) + libxl_console_type type, int notify_fd, + char* escape_character) { GC_INIT(ctx); char *p = GCSPRINTF("%s/xenconsole", libxl__private_bindir_path()); @@ -75,15 +76,26 @@ int libxl_console_exec(libxl_ctx *ctx, uint32_t domid, int cons_num, goto out; } + char *args[] = { + p, domid_s, "--num", cons_num_s, "--type", cons_type_s, + NULL, NULL, NULL, NULL, // start-notify-fd, escape + NULL, // list terminator - do not use + }; + char **args_extra = args + 6; + if (notify_fd != -1) { notify_fd_s = GCSPRINTF("%d", notify_fd); - execl(p, p, domid_s, "--num", cons_num_s, "--type", cons_type_s, - "--start-notify-fd", notify_fd_s, (void *)NULL); - } else { - execl(p, p, domid_s, "--num", cons_num_s, "--type", cons_type_s, - (void *)NULL); + *args_extra++ = "--start-notify-fd"; + *args_extra++ = notify_fd_s; } + if (escape_character) { + *args_extra++ = "--escape"; + *args_extra++ = escape_character; + } + + execv(p, args); + out: GC_FREE; return ERROR_FAIL; @@ -156,7 +168,8 @@ out: return rc; } -int libxl_primary_console_exec(libxl_ctx *ctx, uint32_t domid_vm, int notify_fd) +int libxl_primary_console_exec(libxl_ctx *ctx, uint32_t domid_vm, int notify_fd, + char* escape_character) { uint32_t domid; int cons_num; @@ -165,7 +178,8 @@ int libxl_primary_console_exec(libxl_ctx *ctx, uint32_t domid_vm, int notify_fd) rc = libxl__primary_console_find(ctx, domid_vm, &domid, &cons_num, &type); if ( rc ) return rc; - return libxl_console_exec(ctx, domid, cons_num, type, notify_fd); + return libxl_console_exec(ctx, domid, cons_num, type, notify_fd, + escape_character); } int libxl_primary_console_get_tty(libxl_ctx *ctx, uint32_t domid_vm, diff --git a/tools/xl/xl_cmdtable.c b/tools/xl/xl_cmdtable.c index ccf4d83584..67604e9536 100644 --- a/tools/xl/xl_cmdtable.c +++ b/tools/xl/xl_cmdtable.c @@ -141,7 +141,8 @@ const struct cmd_spec cmd_table[] = { "Attach to domain's console", "[options] \n" "-t console type, pv , serial or vuart\n" - "-n console number" + "-n console number\n" + "-e escape character" }, { "vncviewer", &main_vncviewer, 0, 0, diff --git a/tools/xl/xl_console.c b/tools/xl/xl_console.c index b27f9e0136..5633c6f6f7 100644 --- a/tools/xl/xl_console.c +++ b/tools/xl/xl_console.c @@ -28,8 +28,9 @@ int main_console(int argc, char **argv) int opt = 0, num = 0; libxl_console_type type = 0; const char *console_names = "pv, serial, vuart"; + char* escape_character = NULL; - SWITCH_FOREACH_OPT(opt, "n:t:", NULL, "console", 1) { + SWITCH_FOREACH_OPT(opt, "n:t:e:", NULL, "console", 1) { case 't': if (!strcmp(optarg, "pv")) type = LIBXL_CONSOLE_TYPE_PV; @@ -45,13 +46,16 @@ int main_console(int argc, char **argv) case 'n': num = atoi(optarg); break; + case 'e': + escape_character = optarg; + break; } domid = find_domain(argv[optind]); if (!type) - libxl_primary_console_exec(ctx, domid, -1); + libxl_primary_console_exec(ctx, domid, -1, escape_character); else - libxl_console_exec(ctx, domid, num, type, -1); + libxl_console_exec(ctx, domid, num, type, -1, escape_character); fprintf(stderr, "Unable to attach console\n"); return EXIT_FAILURE; } diff --git a/tools/xl/xl_vmcontrol.c b/tools/xl/xl_vmcontrol.c index 5518c78dc6..03971927e9 100644 --- a/tools/xl/xl_vmcontrol.c +++ b/tools/xl/xl_vmcontrol.c @@ -643,7 +643,7 @@ static void autoconnect_console(libxl_ctx *ctx_ignored, postfork(); sleep(1); - libxl_primary_console_exec(ctx, bldomid, notify_fd); + libxl_primary_console_exec(ctx, bldomid, notify_fd, NULL); /* Do not return. xl continued in child process */ perror("xl: unable to exec console client"); _exit(1); -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 22 13:59:39 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 13:59:39 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553600.864241 (Exim 4.92) (envelope-from ) id 1qCKqS-0000t5-KO; Thu, 22 Jun 2023 13:59:32 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553600.864241; Thu, 22 Jun 2023 13:59:32 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCKqS-0000sy-HP; Thu, 22 Jun 2023 13:59:32 +0000 Received: by outflank-mailman (input) for mailman id 553600; Thu, 22 Jun 2023 13:59:31 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCKqQ-0000ss-JP for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 13:59:31 +0000 Received: from mailout1.w1.samsung.com (mailout1.w1.samsung.com [210.118.77.11]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id ffcab0e8-1104-11ee-8611-37d641c3527e; Thu, 22 Jun 2023 15:59:27 +0200 (CEST) Received: from eucas1p2.samsung.com (unknown [182.198.249.207]) by mailout1.w1.samsung.com (KnoxPortal) with ESMTP id 20230622135925euoutp0193c764677365193732cff7102e07abf0~q-_QYCpHV1007310073euoutp01i; Thu, 22 Jun 2023 13:59:25 +0000 (GMT) Received: from eusmges2new.samsung.com (unknown [203.254.199.244]) by eucas1p1.samsung.com (KnoxPortal) with ESMTP id 20230622135925eucas1p1965ce04eb11398457f845672d7b4ddff~q-_QCkGCB3261832618eucas1p1B; Thu, 22 Jun 2023 13:59:25 +0000 (GMT) Received: from eucas1p1.samsung.com ( [182.198.249.206]) by eusmges2new.samsung.com (EUCPMTA) with SMTP id 18.44.11320.CB354946; Thu, 22 Jun 2023 14:59:24 +0100 (BST) Received: from eusmtrp1.samsung.com (unknown [182.198.249.138]) by eucas1p1.samsung.com (KnoxPortal) with ESMTPA id 20230622135924eucas1p1d4431c0a3f0579a57ff4c2c294e64382~q-_Pbyc5N2569425694eucas1p1D; Thu, 22 Jun 2023 13:59:24 +0000 (GMT) Received: from eusmgms1.samsung.com (unknown [182.198.249.179]) by eusmtrp1.samsung.com (KnoxPortal) with ESMTP id 20230622135924eusmtrp17afa1bb714e2a8676835938e107bcca8~q-_PaJV6n1116511165eusmtrp1a; Thu, 22 Jun 2023 13:59:24 +0000 (GMT) Received: from eusmtip2.samsung.com ( [203.254.199.222]) by eusmgms1.samsung.com (EUCPMTA) with SMTP id A6.CE.10549.CB354946; Thu, 22 Jun 2023 14:59:24 +0100 (BST) Received: from CAMSVWEXC02.scsc.local (unknown [106.1.227.72]) by eusmtip2.samsung.com (KnoxPortal) with ESMTPA id 20230622135924eusmtip2150ff2284551867127b5e5f2b335b36c~q-_PA6bPk2868428684eusmtip2r; Thu, 22 Jun 2023 13:59:24 +0000 (GMT) Received: from localhost (106.110.32.133) by CAMSVWEXC02.scsc.local (2002:6a01:e348::6a01:e348) with Microsoft SMTP Server (TLS) id 15.0.1497.2; Thu, 22 Jun 2023 14:59:23 +0100 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: ffcab0e8-1104-11ee-8611-37d641c3527e DKIM-Filter: OpenDKIM Filter v2.11.0 mailout1.w1.samsung.com 20230622135925euoutp0193c764677365193732cff7102e07abf0~q-_QYCpHV1007310073euoutp01i DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=samsung.com; s=mail20170921; t=1687442365; bh=FZnb8S33JjksmIfYm3E5lklQ7FIXL+oW6Nyq0JJAKBM=; h=Date:From:To:CC:Subject:In-Reply-To:References:From; b=t6Uh6clH0l6Jhe5RLXOofV2xwDntn2r+HoVPUUEPlqDK7jO1nzAnWoHUEUpAo1BUu dVLGa/izcPBMxaVCaSLhzS4W8zdE17wfVCG9tIyhjoIEBEq3Y+MgSehyeV8xiBpwQC aGyXhR/wgb5uybNTJL1n9YpeuhiIyyf1sA1iwbLo= X-AuditID: cbfec7f4-993ff70000022c38-b4-649453bcec07 Date: Thu, 22 Jun 2023 15:59:22 +0200 From: Joel Granados To: Jiri Slaby CC: , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , , Theodore Ts'o , "Jason A. Donenfeld" , Greg Kroah-Hartman , Juergen Gross , Stefano Stabellini , Benjamin LaHaise , Alexander Viro , Christian Brauner , Jeff Layton , Chuck Lever , Jan Kara , Kees Cook , Iurii Zaikin , Alexei Starovoitov , Daniel Borkmann , Andrii Nakryiko , Balbir Singh , Eric Biederman , "Naveen N. Rao" , Anil S Keshavamurthy , "David S. Miller" , Masami Hiramatsu , Peter Zijlstra , Will Deacon , Petr Mladek , Sergey Senozhatsky , Juri Lelli , Vincent Guittot , Steven Rostedt , Andrew Morton , Mike Kravetz , Muchun Song , Naoya Horiguchi , "Matthew Wilcox (Oracle)" , David Howells , Jarkko Sakkinen , Paul Moore , James Morris , "Serge E. Hallyn" , "H. Peter Anvin" , Oleksandr Tyshchenko , Amir Goldstein , John Fastabend , Martin KaFai Lau , Song Liu , Yonghong Song , KP Singh , Stanislav Fomichev , Hao Luo , Jiri Olsa , Waiman Long , Boqun Feng , John Ogness , Dietmar Eggemann , Ben Segall , Mel Gorman , Daniel Bristot de Oliveira , Valentin Schneider , Andy Lutomirski , Will Drewry , Mark Rutland , Miaohe Lin , , , , , , , , , , Subject: Re: [PATCH 08/11] sysctl: Add size to register_sysctl_init Message-ID: <20230622135922.xtvaiy3isvq576hw@localhost> MIME-Version: 1.0 Content-Type: multipart/signed; micalg="pgp-sha512"; protocol="application/pgp-signature"; boundary="2bee3c5qj77ur3kk" Content-Disposition: inline In-Reply-To: <68038b83-3221-e351-909c-7f2722b612df@kernel.org> X-Originating-IP: [106.110.32.133] X-ClientProxiedBy: CAMSVWEXC01.scsc.local (2002:6a01:e347::6a01:e347) To CAMSVWEXC02.scsc.local (2002:6a01:e348::6a01:e348) X-Brightmail-Tracker: H4sIAAAAAAAAA2WTa1ATVxTHvZu7u5EaZ4mOuYO2tKl1HLFYra2nI2id1pkdP6gVx1enrVHW x8hDE1HKtA6EWBUfpAEMQipRSoIkAlJgwKAwFOUlKoj1SSqCgBoQJRApBQqsts702//8/+d3 zzkfrlQiT5X6SLeH7RbUYaoQJeOFCy/3X/2wJCgx+CND0kIw5dgZuJ5tQ+AZSJWAo+MeBnf/ PRbihvIx2PNjKOjJHWKgp6KSgae/v0DQ0HKTAePjGAymx1dYGG5qpyD9VJ8EOnIPIDBd02Ho 0g5geKQvkMBwoY6F2PQcBsorS1k4fk4BqcZYCgz9egQPbvqA6c486PplGvRbsljIzkmnQFuU SUFhYxqCisQUCTTFJ2G4cjgUHLW9FBTc1zLQfvEoBYc8GRgSj2sRlFyoxnDjvIkBp32Yhu4j DxmoyKnDUHu5CoPtbDQNGbfqKbAfOkPDbf0jBAldbQjSrTPgeWkQNJSZKbAUN2OojylDYEsc ZOHlwAAN9wxGDJVHyygYbuml4eLBBxQ0vHyKwXHuNPP5Ct6z/xjm/3QNYt5+0o741Oh6zOef uUPx9zOKEf9zbBfLF6c0sbzu4l2WN+dF8H841vO6ik6a/y1zFp9e8pji4243SPi8rEPMypkb vAKChZDtewT1nEUbvbbV97XTOwcUkfaiMjoaWSbHofFSws0n2rSTbBzyksq5TERa2k4zYuFG pKu0HYtFDyJl1kuS14i+r40WAysimQmX6X+7LhW5XyH5iAzWNNKjCOY+IK6WujGc4WaTa677 Y3ryiG8pzhobKOH6phCtwcKMBpO4L8iF2NYxWMYtIINuOyVqb1J9ohWPagkXSXoa/xp5SDqi pxLrkHTUHs8tIk3mPiSuqiS9rqO0qH8kNfl3qdFZhKufQFLcRiwGX5KDT+Jf3TaJPKnMZ0U9 jdQmHMEikIBI6VA3KxY2RCwxvZTYtZDoGltfEUtIptaARjci3ERyu9NbXHQiMRQaJaItIwd/ kovdM4jN6cJ69H7KG6elvHFayn+nifZsYna8YP5n+xHLqacSUQeS7Oxn2IzYLKQQIjShWwXN vDBhr79GFaqJCNvqvzk8NA+N/NnaoUp3EbI+ee5fjigpKkfTR+CHubbryAeHhYcJysmyt/MM wXJZsOr7KEEd/p06IkTQlKOpUqxUyPwCqzfLua2q3cIOQdgpqF+nlHS8TzSlyI389K0WxtF0 o6hZy3ifXbW6ou6rgknOuUl1IZ/4b6pios5fnXsG09NPVPvtifddFuXas09Xb7Nk3CjvcMYN 7/X4msz+CVb3Z8+63409sHxpiJcscr2CXrBuSs2D4K+Tq5Z5jUs+9l7AFuU3CcqlrXolv9EU V6T6Vb5msU63yxOVRnmzzS3Na8MbLL5c55IfSqakXQjYNW6xZo4n8W/pBmNGIHFOaKsadq7e tGLHhi3z/RonyFJbu6r7ggb2v5PsmqaWe9Z1KgtKFqVtq52579tAl9W51uXYFHSzY1zi4fgh ffeqpFvG/oCJqjVato2+GrD84/3Z5rzelRt9DZ01ilMoS4k121RzZ0nUGtU/zr4xyS4FAAA= X-Brightmail-Tracker: H4sIAAAAAAAAA2WTeUyTdxjH93v769ti1lgO5RdkapqNLUxry+XDgmTqEl7cgcRkCTObNvIG yKB1LcUrSyhHuDyqQ42lIIcgR+USGhBEUglowCEgyqmCgnKMCXJYkbJCXWay/z75fvP9Pk+e 5OFzHIw8F36EPJpVymWRInoNbrW0PN5avy89VFL9di3oyww03C8tQbCwmMGBupf9GGbN/TxI tVRhMFRpKHhdbqHhdVMLDRO3ZxB0Puum4eKYBoN+rI0Hy4MvKMjLmefAy/IkBPr2BAxTcYsY RrTVHFg2JvAgPq+MBlPLLR5cqHCGjIvxFJwzaxE87XYBfa8HTGW6grmgmAelZXkUxNUUUmB8 cBlBU7qOA4NnzmNoS4uCutY5CqoH4mh40XCKgpSFfAzpF+IQ1N+8i6Hrhp6Gx4ZlLrw6OUxD U9k9DK3NdzCUXIvlQv6jDgoMKUVc6NGOIPhjahRB3lU3mL61DzobsykoqB3C0KFpRFCSvsSD N4uLXOg/dxFDy6lGCpafzXGhIfkpBZ1vJjDUVeTSXwcxC4mnMfNkcgkzhiwDYjJiOzBTVdRL MQP5tYg5Gz/FY2p1gzwmoaGPx2RXqpmHdSFMQtNfXOZ6oTuTVz9GMak9nRymsjiF3vvFT2I/ pUIdzW4OV6iid4j2S8FDLPUFsYeXr1jquf3nrzy8Rdv8/ULZyIgYVrnN/6A4XH9lDh82Ox/t tZRyY9EVp1RkxydCL6KdH+WmojV8B2E+IpNnMrHNcCUVs91cGzuSdw9T6RV2EE4j8mjshC1Q hUh9QQdaMbDwMzL57B5nhWnhFtI+ObDKTla9oLaYXglwhDPrydhJ7eoER+FucjP++eoEgXA7 WZo1ULbWXorozG/fG/bk7qXnqwGOMIZ03blg1flW3kCuWvgrsp3QnwxmzyPbpiIyN3nq/da/ k9dLo0iLHHUfNOk+aNL912ST3UmPZYz6n/wlKciZ4Nh4Bykt/RtnI14xcmLVqqiwKJVUrJJF qdTyMPEhRVQlsj6Nsdl8vQZljU+LTYjiIxP61JocLi+5j1ywXCFnRU6CTyrPhToIQmXHjrNK xQGlOpJVmZC39YxnOS7rDimsHyiPPiD1kXhLvXx8Jd6+Pp4iZ0Hg4WSZgzBMFs3+yrKHWeW/ OYpv5xJL7crt70o2VxeOfG9fHuXmKXGZG7bQNErT1q8NcupJ8bvxzbXw8U0h9tuG49o2Bgns VSP+OUe+a/w82EAPCZSJ/eez9g4Ibmog17SlWjGaufsXE26uHdp+4+G6J8GGGPfHRnmtXeXO AGKKieybJkcOtrO6+BNpWeF5vonSH7wbkg9Qyt6APUE1TzX8ha19GVP9mbP1m332nJbwZ4yb ko7ndDw45lmU821gWl3IkcG2pLmPoseb9U0/ql37gt1erffOMlyeJ4fGj2luV6zbt1EdIdmf rdgVkKaa+TisUXNwQ9K7cfynpbTdbSZw6KhRHbHp8m8RNZLJ9sCdXoP7rwVIsvaIsCpcJnXn KFWyfwAWXMkTyQQAAA== X-CMS-MailID: 20230622135924eucas1p1d4431c0a3f0579a57ff4c2c294e64382 X-Msg-Generator: CA X-RootMTR: 20230621091037eucas1p188e11d8064526a5a0549217d5a419647 X-EPHeader: CA CMS-TYPE: 201P X-CMS-RootMailID: 20230621091037eucas1p188e11d8064526a5a0549217d5a419647 References: <20230621091000.424843-1-j.granados@samsung.com> <20230621091000.424843-9-j.granados@samsung.com> <36fae2b0-4cd2-58b5-cc12-9abdd5ce235b@kernel.org> <20230621131147.c3jegl4hgjplcrpu@localhost> <68038b83-3221-e351-909c-7f2722b612df@kernel.org> --2bee3c5qj77ur3kk Content-Type: text/plain; charset="us-ascii" Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Thu, Jun 22, 2023 at 06:25:15AM +0200, Jiri Slaby wrote: > On 21. 06. 23, 15:11, Joel Granados wrote: > > On Wed, Jun 21, 2023 at 11:56:03AM +0200, Jiri Slaby wrote: > > > On 21. 06. 23, 11:09, Joel Granados wrote: > > > > In order to remove the end element from the ctl_table struct arrays= , we > > > > explicitly define the size when registering the targes. We add a si= ze > > > > argument to the register_sysctl_init call and pass an ARRAY_SIZE fo= r all > > > > the callers. > > >=20 > > > Hi, I am missing here (or in 00/00) _why_ you are doing that. Is it b= y a > > Not sure what happened. I used the kernels get_maintainers.pl script > > together with git-send-email. These are my settings: > >=20 > > " > > tocmd =3D"`pwd`/scripts/get_maintainer.pl --nogit --nogit-fallback --no= rolestats --m --nol --nor" > > cccmd =3D"`pwd`/scripts/get_maintainer.pl --nogit --nogit-fallback --no= rolestats --l --r --nom" > > " > >=20 > > Could it be that there is an error in MAINTAINERS? >=20 > Sorry, I don't see what you are asking about. I was asking about motivati= on I thought you were telling me that you were missing in the 00/00 :). I misread, sorry. > behind the series. That is a must in commit logs. I see now that just saying "this is part of the effort to remove the last empty element", does not put all this in to context. I spent some time looking into the lists for some context and I think Luis summarizes it quite nicely here https://lore.kernel.org/all/20230302204612.782387-1-mcgrof@kernel.org/. As I read it removing the last empty element from the ctl_table arrays is part of a greater effort to remove the clutter in kernel/sysctl.c. Here is one that actually hints at the ARRAY_SIZE solution. https://lore.kernel.org/all/20230302202826.776286-1-mcgrof@kernel.org/ Here are some other threads that mention the overall effort: https://lore.kernel.org/all/20230321130908.6972-1-frank.li@vivo.com https://lore.kernel.org/all/20220220060626.15885-1-tangmeng@uniontech.com I will add a better motivational part to V2 Thx for the feedback -- Joel Granados --2bee3c5qj77ur3kk Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQGzBAABCgAdFiEErkcJVyXmMSXOyyeQupfNUreWQU8FAmSUU7MACgkQupfNUreW QU8a6gv+P22nDM5KW7F6fOtYuHg1js1rXfyJtnPUPw4k0zUH2LYvUiJe8q/eKL17 du2WA7madGH/uqDWh7u2DMVnSQlbt+sw8m4tV5JUrCuA0iRCsCw+ZumZg9RYEKWT Qy6H7fHNgeWv1/nc+/QBHzdZAoGJOT4I92UW8N1YobXgdCk4z4iSWX+dEoLf5rca FdKqlGW4OUV9XMUruBvy/WkO1DaeOLgsIkUb6zaHFE5qETf+cNkOgGI/taVweaAL zPIGkg51JYrejtvQkwTxS/nM02ZRihbqMM0W7LXiBm5Opumv2mmw7SEBXeid9cU5 MKc54QLz02fQypJWRW29UABnGXQclrILLD1aXOBF1gON4VuqA3Rhnt9YQ7ap0ra7 kW7Zvi17rJFZJ/0HAY/eluUNu/WiNPC6qFItklbhUU/Y8Wko/m3hlxHdoauaBJ4K Q8I5gvw+Vw6N+yAU+PBPHPS4Ey0fj1Q8k9VBkUI+SF77C4OrqrEeNiAgwAAB7EoR POrQ+zAc =Xzhv -----END PGP SIGNATURE----- --2bee3c5qj77ur3kk-- From xen-devel-bounces@lists.xenproject.org Thu Jun 22 14:00:28 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 14:00:28 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553605.864251 (Exim 4.92) (envelope-from ) id 1qCKrL-0002Js-US; Thu, 22 Jun 2023 14:00:27 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553605.864251; Thu, 22 Jun 2023 14:00:27 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCKrL-0002Jl-Re; Thu, 22 Jun 2023 14:00:27 +0000 Received: by outflank-mailman (input) for mailman id 553605; Thu, 22 Jun 2023 14:00:27 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCKrL-0002Jb-Au for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 14:00:27 +0000 Received: from mailout1.w1.samsung.com (mailout1.w1.samsung.com [210.118.77.11]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 228dc7e0-1105-11ee-8611-37d641c3527e; Thu, 22 Jun 2023 16:00:24 +0200 (CEST) Received: from eucas1p1.samsung.com (unknown [182.198.249.206]) by mailout1.w1.samsung.com (KnoxPortal) with ESMTP id 20230622140024euoutp016c59b1213fcbc04a0a7dcab6f00677f0~q--HNBgTF1007310073euoutp01W; Thu, 22 Jun 2023 14:00:24 +0000 (GMT) Received: from eusmges3new.samsung.com (unknown [203.254.199.245]) by eucas1p2.samsung.com (KnoxPortal) with ESMTP id 20230622140024eucas1p2cbb3f8b639a73e206f4c47f91fb01813~q--G9NX-t3023430234eucas1p2f; Thu, 22 Jun 2023 14:00:24 +0000 (GMT) Received: from eucas1p2.samsung.com ( [182.198.249.207]) by eusmges3new.samsung.com (EUCPMTA) with SMTP id EC.F9.37758.7F354946; Thu, 22 Jun 2023 15:00:23 +0100 (BST) Received: from eusmtrp1.samsung.com (unknown [182.198.249.138]) by eucas1p1.samsung.com (KnoxPortal) with ESMTPA id 20230622140023eucas1p1a4af4ef903b3613453b5b1e254aa2c8a~q--GTP6rD0317103171eucas1p1P; Thu, 22 Jun 2023 14:00:23 +0000 (GMT) Received: from eusmgms1.samsung.com (unknown [182.198.249.179]) by eusmtrp1.samsung.com (KnoxPortal) with ESMTP id 20230622140023eusmtrp122f2f2a32f10e3b52e1916a11785fa7c~q--GQ6exq1308413084eusmtrp1f; Thu, 22 Jun 2023 14:00:23 +0000 (GMT) Received: from eusmtip1.samsung.com ( [203.254.199.221]) by eusmgms1.samsung.com (EUCPMTA) with SMTP id 0E.1F.10549.7F354946; Thu, 22 Jun 2023 15:00:23 +0100 (BST) Received: from CAMSVWEXC02.scsc.local (unknown [106.1.227.72]) by eusmtip1.samsung.com (KnoxPortal) with ESMTPA id 20230622140022eusmtip11ccd18796ef5394ff02d0e58b93a459b~q--F5zocq3248032480eusmtip1K; Thu, 22 Jun 2023 14:00:22 +0000 (GMT) Received: from localhost (106.110.32.133) by CAMSVWEXC02.scsc.local (2002:6a01:e348::6a01:e348) with Microsoft SMTP Server (TLS) id 15.0.1497.2; Thu, 22 Jun 2023 15:00:22 +0100 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 228dc7e0-1105-11ee-8611-37d641c3527e DKIM-Filter: OpenDKIM Filter v2.11.0 mailout1.w1.samsung.com 20230622140024euoutp016c59b1213fcbc04a0a7dcab6f00677f0~q--HNBgTF1007310073euoutp01W DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=samsung.com; s=mail20170921; t=1687442424; bh=og1TC2Lnktq3yPqNAHugUqe0csk9nUhazXy+81bh4dw=; h=Date:From:To:CC:Subject:In-Reply-To:References:From; b=mCUZPxxFAPlZfYMcyjtFzdZobopd9W7sIEmS0WAnAfWvOWNbeSnjCvTqoPq4BflsT 2So3S8hL+ZL3HkDd5Eh+8RGv9HB078GacsMBEAHSQPAa+kL61XF9pqEmryoVjwNNNw bs/wprggINHRtWs8Diakqsfp4AtYSsFi0OgBuBaw= X-AuditID: cbfec7f5-815ff7000002937e-b4-649453f791b8 Date: Thu, 22 Jun 2023 16:00:21 +0200 From: Joel Granados To: Jiri Slaby CC: Greg Kroah-Hartman , , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , , Theodore Ts'o , "Jason A. Donenfeld" , Juergen Gross , Stefano Stabellini , Benjamin LaHaise , Alexander Viro , Christian Brauner , "Jeff Layton" , Chuck Lever , Jan Kara , Kees Cook , Iurii Zaikin , Alexei Starovoitov , Daniel Borkmann , Andrii Nakryiko , Balbir Singh , Eric Biederman , "Naveen N. Rao" , Anil S Keshavamurthy , "David S. Miller" , Masami Hiramatsu , Peter Zijlstra , Will Deacon , Petr Mladek , Sergey Senozhatsky , Juri Lelli , Vincent Guittot , "Steven Rostedt" , Andrew Morton , Mike Kravetz , Muchun Song , Naoya Horiguchi , "Matthew Wilcox (Oracle)" , David Howells , Jarkko Sakkinen , Paul Moore , James Morris , "Serge E. Hallyn" , "H. Peter Anvin" , Oleksandr Tyshchenko , "Amir Goldstein" , John Fastabend , Martin KaFai Lau , Song Liu , "Yonghong Song" , KP Singh , Stanislav Fomichev , Hao Luo , Jiri Olsa , Waiman Long , Boqun Feng , "John Ogness" , Dietmar Eggemann , Ben Segall , Mel Gorman , Daniel Bristot de Oliveira , "Valentin Schneider" , Andy Lutomirski , "Will Drewry" , Mark Rutland , Miaohe Lin , , , , , , , , , , Subject: Re: [PATCH 08/11] sysctl: Add size to register_sysctl_init Message-ID: <20230622140021.g3odhui75ybwuai5@localhost> MIME-Version: 1.0 Content-Type: multipart/signed; micalg="pgp-sha512"; protocol="application/pgp-signature"; boundary="syt6n5frzjj2i4j3" Content-Disposition: inline In-Reply-To: X-Originating-IP: [106.110.32.133] X-ClientProxiedBy: CAMSVWEXC01.scsc.local (2002:6a01:e347::6a01:e347) To CAMSVWEXC02.scsc.local (2002:6a01:e348::6a01:e348) X-Brightmail-Tracker: H4sIAAAAAAAAA2WTe0xTVxzHc+49vbc2ltSK4QTEbHUY5oOp0/CLohnbst1NF11cXLY5NyLX 16CaVpgubvLoxkOdCChaUEGgQFsBWSki8lglIq/xZmDBqaBSQB4ir/Ea5brMZP99ft/z/Z78 vic5YloeJ3YWH1Ae4VVKHz8FI8HmO+M1q0Z3xPqurp/0hIQsIwO1mQYEoxPxNBR0WTG8GLey EDltwmA0BVMwlD3NwFBpGQM9t58jqO9oYiDOFowhwVbFwkz7UwqSk0Zo6MoOQ5BQo8HQFzKB 4XFULg0zZg0LoclZDFjKilk4f90J4uNCKYgej0LwoMkZElrXQt+lxTCu07OQmZVMQciNdArM jVcQlMZqaWg/cw5D1Ul/KKgcpiC3LYSBp0WnKYgYTcUQez4Ewa3CcgwNNxMYuG+cEcHAqUcM lGZVY6i8cxeD4VqQCFL/rKPAGJEhgpaoxwhi+p4gSE5bBoPFO6C+JJECXf5DDHXBJQgMsVMs jE1MiMAaHYeh7HQJBTMdwyIoCn9AQf1YD4aC61eZd7Zxoz//irm/eqcwZ7xsRFx8UB3mTBmt FNeWmo+4s6F9LJevbWc5TdE9lkvMCeCaC77gNKXPRNxv6cu55Fs2iotsqae5HH0Es939S4mX L+93IJBXvbX5W8n++Ii7osPPHI5mXTFTQah7fiQSi4lsHUnp/ygSScRyWToiF+sMWBheINKc kUtHonmzwxAi1st+drYHMpr6GcGUhkhBih4Jw6zp5rWgl3ETIrW6KtYewTI3Uq0fmWNGtpLU 9LbNXes4q+vy9YydaVmIE+lK8rDzQtl7pDC0U2RnqcyTjOY1sgIvIOUXO7HgP0rGzJm0vQMt cyFp02K7PE+2mcScjEXCpgoy3HtaJPCPpMJ0jxK4bj6xxr0r8PskKWMKC7yQdJeZWIEXk8qY U3NdiCwGkeLpAVYYDIjogodf3rSRaBo7Xya8SXpINBIe1YG0PFsg7OlAos1xtCBLSfgvcsG9 jBju9+IotFT7SjPtK820/zUT5JUkseA58z95BdEl9dACbyKZmf04EbF65MQHqP338eq3lfz3 Hmoff3WAcp/HnkP+OWj2v1ZOlw3fQOndgx4WRImRBb0xG36UbahFzlh5SMkrHKWuOdG+cqmv z7EfeNWhb1QBfrzaglzEWOEkXbGpfI9cts/nCP8dzx/mVf+eUuJ5zkGUn7s8IW8ysOhJriuv OrrRst583L3P9nfKyIZbfLS1dW3M7T+mmrqCD+Y5LXWLWK09Y8tW92Rv3eBiVTDW7Y4djtd2 /9R902CUHHy4bmv474qm8okFtS47/W9/jDM/0HpfcD1RXl1M1oXx4q7eNSmerYVnj7ltblj0 epWltHBN3u4Bh/PbG0aN1HTNJ9uUVx/2fOafE/xVtWfZKtuWWk184wmJZ/9xnYK1fdrccuZO +fLVrXs7LUs2eH3e2XQRitwSc3c98j4QJVVse239uY7CsC1vunot0cs/DCTuFRbL3rZLWaV9 Dbukeyu+rqjLWTRSfWHn5T3NJaZuycLDjMZhcNLXSWxWYPV+nzXLaZXa5x9OzkChKgUAAA== X-Brightmail-Tracker: H4sIAAAAAAAAA2WTfUxTZxTG896+vbc4mR2wcEW2zDqd0VktAp4uysx0yxXnNjWabMt0nVzR DVpswbglywoUhTKwfExnwa6IRSkdVKRoV0QHDDRAUAYC8jFQULAKImAlHe2KdZnJ/vu9z3me JydvcngcPwsVxNsvjWflUkmMgJyDG10NvSsc23OjVtVY50J+mYmE66UlCBzOPA7YhrsxTE53 U6B2VWAwVSQSMGF2kTBR10CCvfYxgtY77SQcH0nEkD/SRIG79x4BhQVPODBsPoIgv0WFYTTJ iWFIY+GAu1JFQXJhGQk1DZcpOHYuEPKOJxOQPa1B0N8eBPldITB6Mhimi4wUlJYVEpB08SwB lW2/IKjL1XKg9+hPGJrSY8HWOEWApSeJhHvVGQSkOQwYco8lIai6dA3Dn7/lk9BncnPh0Y+3 Sagra8bQWH8VQ8mvSi4YOm4QYEor5kKnZghBzuhdBIVnlsD45e3QekVPQJF1AMONxCsISnJn KHjqdHKhO/s4hoaMKwS470xxoTq1n4DWp3YMtnOnyPUfM46UTMz89WAGMyadCTF5yhuYqSju IpgegxUxWcmjFGPV9lKMqvoWxejLE5ibtk8ZVd1DLnP+7DKmsGqEYNSdrRym3JhGfrL0M+Fa uSwhnn1jn0wRv07wuQhChCIxCENCxULR6jVfvBMSJlgZsTaKjdl/kJWvjPhSuK/LsivO/vKh I/0blWh4rhr58Gh+KF3cPkaq0RyeH9+AaP30H4R3EEyfm2znetmf/vum+rlpHNH3T1Rh76MC 0bdOWp+5MH8x3Wx8Qs0yyX+bbnnQw5nlAI9eZDU+S3P4ykB6pttb68/fQF9KHnzGvvw1tONC G+VtbSHo8czu54NX6GsnBvEsc/gH6YGpSx4Tz8ML6DMu3qzsw4+gc9JzkXdVAT31IOP52t/T EzN3kQb5a19o0r7QpP2vySsvoztdI8T/5OV0UYGd4+V1dGnpGNYjyogC2ARFbHSsQiRUSGIV CdJo4R5ZbDny3Exl/fT5i0h3f1xYgwgeqkFvepK3zSXXURCWyqSsIMD3tfLsKD/fKMm337Fy 2W55QgyrqEFhnm/M4gS9ukfmOUBp/G5R+KowUWi4eFWYOHy1INB3U1yqxI8fLYlnv2HZOFb+ b47g+QQpCVFugD6Rmme2TeqDI6+r2L695/15HXubt2xWX+2p/nC0KVVbn/PBWL04Zsh3cO1R VzeWOmTGmNdfsmwt71vp06y09V3IarNULW7a3jg0ENe8bUX2nOzHaMfJ0+6dNR+965S5jOvr yKEf2IYDpxYFpI9HbjUEPz5QVLvjkNOorbVNhrrxBbsmvONqyMLU91WRmw3XhEvsPWSeYVPt vNORdPKGQ+PEzoUXxbtWmzPmDSxIe5hy973aiUxddvvSjduqAgcnl5sX6X6vqJjfn8S85TNG b+lMOTy85YysPboAF+/tSO9wtUgIP93Ww/MrNT/fj8qUfqXOUhToHgVWfs2VbgspFWDFPolo GUeukPwDhsADlcgEAAA= X-CMS-MailID: 20230622140023eucas1p1a4af4ef903b3613453b5b1e254aa2c8a X-Msg-Generator: CA X-RootMTR: 20230621091037eucas1p188e11d8064526a5a0549217d5a419647 X-EPHeader: CA CMS-TYPE: 201P X-CMS-RootMailID: 20230621091037eucas1p188e11d8064526a5a0549217d5a419647 References: <20230621091000.424843-1-j.granados@samsung.com> <20230621091000.424843-9-j.granados@samsung.com> <2023062150-outbound-quiet-2609@gregkh> <20230621131552.pqsordxcjmiopciq@localhost> --syt6n5frzjj2i4j3 Content-Type: text/plain; charset="us-ascii" Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Thu, Jun 22, 2023 at 06:21:48AM +0200, Jiri Slaby wrote: > On 21. 06. 23, 15:15, Joel Granados wrote: > > On Wed, Jun 21, 2023 at 12:47:58PM +0200, Greg Kroah-Hartman wrote: > > > On Wed, Jun 21, 2023 at 11:09:57AM +0200, Joel Granados wrote: > > > > static int __init random_sysctls_init(void) > > > > { > > > > - register_sysctl_init("kernel/random", random_table); > > > > + register_sysctl_init("kernel/random", random_table, > > > > + ARRAY_SIZE(random_table)); > > >=20 > > > As mentioned before, why not just do: > > >=20 > > > #define register_sysctl_init(string, table) \ > > > __register_sysctl_init(string, table, ARRAY_SIZE(table); > > Answered you in the original mail where you suggested it. >=20 > I am curious what that was, do you have a link? of course. I think you will find it here https://lore.kernel.org/all/202306= 21123816.ufqbob6qthz4hujx@localhost/ >=20 > --=20 > js > suse labs >=20 --=20 Joel Granados --syt6n5frzjj2i4j3 Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQGzBAABCgAdFiEErkcJVyXmMSXOyyeQupfNUreWQU8FAmSUU/UACgkQupfNUreW QU/eXQwAlJO0Xh+bybgQP96+XlRpihv6ZwN4xoVQS++ddKq1YhcrS2QQ3aAI2zlS O+JsUdqP3tI8y8lMZnQol7Ez9g0BX1PeqWSUnitoKVCyZe8NwvpjdmYBG5oEuZaE ruvpOJQoHlFt+0C3hfcxo+gvQtjjXRGDmO0Kjfg5JL0d/TmxV694P5Y9sjJ3Zz/9 q88yHBeZ++k0QVUllifujJ0XKcqA6aLjNd5O+ujwisz+KYpRnslGyqgFG9hI4F9/ FcHmyOP8V6DxshGEpW924k2zVDZu/H/LCl+KqB3vmfaIm/hs34Q4bnG/cnRKWxsW x7HeXEn489/bnVCmHQ9PTZJCexFp/lL3Mdr5dyQfkk2gwk0hAfzLh1akOv2p7scx 63UyaIoh7zP6aLN1U4LGQfprDbl+Ll55j+KYv/DbhALGXaZ4/Ko1LdCEQpo/rKYU AfygV67LAp5wW26oCQ0p/2QeqjaIkn8xOjVw7VthnBeBrMFx6jHQylS6QZaogAyV dB+VmnCT =Evhn -----END PGP SIGNATURE----- --syt6n5frzjj2i4j3-- From xen-devel-bounces@lists.xenproject.org Thu Jun 22 14:02:55 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 14:02:55 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553612.864260 (Exim 4.92) (envelope-from ) id 1qCKta-0002yT-FQ; Thu, 22 Jun 2023 14:02:46 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553612.864260; Thu, 22 Jun 2023 14:02:46 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCKta-0002yM-CP; Thu, 22 Jun 2023 14:02:46 +0000 Received: by outflank-mailman (input) for mailman id 553612; Thu, 22 Jun 2023 14:02:45 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCKtZ-0002yE-I9 for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 14:02:45 +0000 Received: from mail-wm1-x331.google.com (mail-wm1-x331.google.com [2a00:1450:4864:20::331]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 750039d9-1105-11ee-8611-37d641c3527e; Thu, 22 Jun 2023 16:02:43 +0200 (CEST) Received: by mail-wm1-x331.google.com with SMTP id 5b1f17b1804b1-3f9b4a71623so38526345e9.1 for ; Thu, 22 Jun 2023 07:02:43 -0700 (PDT) Received: from localhost.localdomain (default-46-102-197-194.interdsl.co.uk. [46.102.197.194]) by smtp.gmail.com with ESMTPSA id f20-20020a7bcd14000000b003f7f2a1484csm7836764wmj.5.2023.06.22.07.02.41 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 22 Jun 2023 07:02:41 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 750039d9-1105-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cloud.com; s=cloud; t=1687442562; x=1690034562; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=YpLFuadE1Tji+ZRr40/2UDaxu9mY/3/yOY5AA4QxcqU=; b=JFz76u/4j709JsQU+Qg5rXN6fW5GNW763CzTnruXzgDnz9gUq49s07A1Bte8dfw9A8 VyOm9tXIpmkf8lIltzxjwiXW7STHPGALc045lUQfW794VGYNN7LOcSljv/HkJ5PZFIFJ wZG32jqTFkX4+lnrvTiY3onrSfdbzVdBVrqy0= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687442562; x=1690034562; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=YpLFuadE1Tji+ZRr40/2UDaxu9mY/3/yOY5AA4QxcqU=; b=g9AWPzqfF6gvmjK+s4D24knqDz4bGPnPQ9Ven0EfOAVUjhJkArTSV69uzeevtf21v7 uA/gAkvu8ezdgdzWBGT24xqmjbFCc3iuX6CsRAxFxVpGF8arJopIPYKc3LRmL11J9SZ8 q/AdyzS5+2MPiyfe9qle4J3QGJl8heta0csh9PFc0sMnX9nau5F9JV36Ad9osYTKqZ8r ZGU9jJlqq+xwHYJc0xrZBo0UUmeoc9SZl11SODFxsB0Lp0+enumMUI47rCyrYDUplH5V PXqChCIUttvMSpZkLyPSZYjlNMKoq4kSCi0Jfw28Vbjbh0f5WL1BOkOCttWhkLhEpn1m gFOg== X-Gm-Message-State: AC+VfDxM0s8ea6/iihebRuQueIPyy32mAhkH1+yZI0wMmHEcKqf/dJXP 1X98jc4E5GAl59ewLlEqH3gtU32x1wbn/F1N6HY= X-Google-Smtp-Source: ACHHUZ4q0HbugizOqAUK8bv35FZEKXbgMOn+iBKR+Tqu0qucEs2TRx2HlO3TuRLLKgr1scwJdkPf8Q== X-Received: by 2002:a1c:f310:0:b0:3f8:f382:8e1f with SMTP id q16-20020a1cf310000000b003f8f3828e1fmr1485674wmq.24.1687442562045; Thu, 22 Jun 2023 07:02:42 -0700 (PDT) From: Alejandro Vallejo To: Xen-devel Cc: Alejandro Vallejo , Andrew Cooper , George Dunlap , Jan Beulich , Julien Grall , Stefano Stabellini , Wei Liu Subject: [PATCH v2] mm/pdx: Add comments throughout the codebase for pdx Date: Thu, 22 Jun 2023 15:02:37 +0100 Message-Id: <20230622140237.8996-1-alejandro.vallejo@cloud.com> X-Mailer: git-send-email 2.34.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Document the behaviour of the pdx machinery in Xen. Some logic is fairly opaque and hard to follow without it being documented anywhere. This explains the rationale behind compression and its relationship to frametable indexing and directmap management. While modifying the file: * Convert u64 -> uint64_t * Remove extern keyword from function prototypes No functional change. Signed-off-by: Alejandro Vallejo --- v2: * [pdx.h] Moved pdx_init_mask() after pdx_region_mask() so comments are more self-documenting (Jan feedback) * [pdx.c] Rewrote ma_bottom_mask as ma_va_bottom in comment. * [pdx.c] Rewrote comment in pdx_region_mask() to explain in terms of msb() rather than fill_mask(). * [mm.h] Made it explicit that the compression scheme might still yield an identity mapping between mfn and pdx. * [mm.h] Removed vaddr definition in mm.h * [pdx.h] Refine definition of compression so it's clear it can apply to many regions * [pdx.h] s/they exist/they are backed by RAM/ * [pdx.h] Improved comment in pdx_region_mask() * [pdx.h] Corrected mistaken comment in pdx_init_mask() * [pdx.h] Added mathematical interval in comment for set_pdx_range() * [pdx.h] Rewrote __mfn_valid() to refer to the frame table rather than a pdx --- xen/common/pdx.c | 67 +++++++++++++++++++-- xen/include/xen/mm.h | 10 +++ xen/include/xen/pdx.h | 137 ++++++++++++++++++++++++++++++++++++++++-- 3 files changed, 206 insertions(+), 8 deletions(-) diff --git a/xen/common/pdx.c b/xen/common/pdx.c index c91875fabe..27cdb49e17 100644 --- a/xen/common/pdx.c +++ b/xen/common/pdx.c @@ -20,13 +20,56 @@ #include #include -/* Parameters for PFN/MADDR compression. */ +/* + * Diagram to make sense of the following variables. The masks and shifts + * are done on mfn values in order to convert to/from pdx: + * + * pfn_hole_mask + * pfn_pdx_hole_shift (mask bitsize) + * | + * |---------| + * | | + * V V + * -------------------------- + * |HHHHHHH|000000000|LLLLLL| <--- mfn + * -------------------------- + * ^ ^ ^ ^ + * | | |------| + * | | | + * | | pfn_pdx_bottom_mask + * | | + * |-------| + * | + * pfn_top_mask + * + * ma_{top,va_bottom}_mask is simply a shifted pfn_{top,pdx_bottom}_mask, + * where ma_top_mask has zeroes shifted in while ma_va_bottom_mask has + * ones. + */ + +/** Maximum (non-inclusive) usable pdx */ unsigned long __read_mostly max_pdx; + +/** Mask for the lower non-compressible bits of an mfn */ unsigned long __read_mostly pfn_pdx_bottom_mask = ~0UL; + +/** Mask for the lower non-compressible bits of an maddr or vaddr */ unsigned long __read_mostly ma_va_bottom_mask = ~0UL; + +/** Mask for the higher non-compressible bits of an mfn */ unsigned long __read_mostly pfn_top_mask = 0; + +/** Mask for the higher non-compressible bits of an maddr or vaddr */ unsigned long __read_mostly ma_top_mask = 0; + +/** + * Mask for a pdx compression bit slice. + * + * Invariant: valid(mfn) implies (mfn & pfn_hole_mask) == 0 + */ unsigned long __read_mostly pfn_hole_mask = 0; + +/** Number of bits of the "compressible" bit slice of an mfn */ unsigned int __read_mostly pfn_pdx_hole_shift = 0; unsigned long __read_mostly pdx_group_valid[BITS_TO_LONGS( @@ -42,7 +85,7 @@ bool __mfn_valid(unsigned long mfn) } /* Sets all bits from the most-significant 1-bit down to the LSB */ -static u64 __init fill_mask(u64 mask) +static uint64_t __init fill_mask(uint64_t mask) { while (mask & (mask + 1)) mask |= mask + 1; @@ -57,9 +100,25 @@ uint64_t __init pdx_init_mask(uint64_t base_addr) (uint64_t)1 << (MAX_ORDER + PAGE_SHIFT)) - 1); } -u64 __init pdx_region_mask(u64 base, u64 len) +uint64_t __init pdx_region_mask(uint64_t base, uint64_t len) { - return fill_mask(base ^ (base + len - 1)); + uint64_t last = base + len - 1; + /* + * The only bit that matters in base^last is the MSB. There are 2 cases. + * + * case msb(base) < msb(last): + * then msb(fill_mask(base^last)) == msb(last). This is non + * compressible. + * case msb(base) == msb(last): + * This means that there _may_ be a sequence of compressible zeroes + * for all addresses between `base` and `last` iff `base` has enough + * trailing zeroes. That is, it's compressible when + * msb(fill_mask(base^last)) < msb(last) + * + * The resulting mask is effectively the moving bits between `base` and + * `last`. + */ + return fill_mask(base ^ last); } void set_pdx_range(unsigned long smfn, unsigned long emfn) diff --git a/xen/include/xen/mm.h b/xen/include/xen/mm.h index b0dc3ba9c9..7e4b190357 100644 --- a/xen/include/xen/mm.h +++ b/xen/include/xen/mm.h @@ -31,6 +31,16 @@ * (i.e. all devices assigned to) a guest share a single DMA address space * and, by default, Xen will ensure dfn == pfn. * + * pdx: Page InDeX + * Indices into the frame table holding the per-page's book-keeping + * metadata. A compression scheme is used and there's a possibly non + * identity mapping between valid(mfn) <-> valid(pdx). In particular, the + * mapping happens to be identity when the ranges are not compressible. + * See the comments in pdx.c for an in-depth explanation of that mapping. + * + * maddr: Machine Address + * The physical address that corresponds to an mfn + * * WARNING: Some of these terms have changed over time while others have been * used inconsistently, meaning that a lot of existing code does not match the * definitions above. New code should use these terms as described here, and diff --git a/xen/include/xen/pdx.h b/xen/include/xen/pdx.h index 9fcfb0ce52..b3ff2aad09 100644 --- a/xen/include/xen/pdx.h +++ b/xen/include/xen/pdx.h @@ -1,6 +1,67 @@ #ifndef __XEN_PDX_H__ #define __XEN_PDX_H__ +/* + * PDX (Page inDeX) + * + * This file deals with optimisations pertaining frame table indexing, + * A pdx is an index into the frame table. However, having an identity + * relationship between mfn and pdx could waste copious amounts of memory + * in empty frame table entries. There are some techniques to bring memory + * wastage down. + * + * ## PDX grouping + * + * The frame table may have some sparsity even on systems where the memory + * banks are tightly packed. This is due to system quirks (like the PCI + * hole) which might introduce several GiB of unused page frame numbers + * that uselessly waste memory in the frame table. PDX grouping addresses + * this by keeping a bitmap of the ranges in the frame table containing + * invalid entries and not allocating backing memory for them. + * + * ## PDX compression + * + * This is a technique to avoid wasting memory on machines known to have + * split their machine address space in several big discontinuous and highly + * disjoint chunks. + * + * In its uncompressed form the frame table must have book-keeping metadata + * structures for every page between [0, max_mfn) (whether they are backed + * by RAM or not), and a similar condition exists for the direct map. We + * know some systems, however, that have some sparsity in their address + * space, leading to a lot of wastage in the form of unused frame table + * entries. + * + * This is where compression becomes useful. The idea is to note that if + * you have several big chunks of memory sufficiently far apart you can + * ignore the middle part of the address because it will always contain + * zeroes as long as the base address is sufficiently well aligned and the + * length of the region is much smaller than the base address. + * + * i.e: + * Consider 2 regions of memory. One starts at 0 while the other starts + * at offset 2^off_h. Furthermore, let's assume both regions are smaller + * than 2^off_l. This means that all addresses between [2^off_l, 2^off_h) + * are invalid and we can assume them to be zero on all valid addresses. + * + * off_h off_l + * | | + * V V + * -------------------------- + * |HHHHHHH|000000000|LLLLLL| <--- mfn + * -------------------------- + * ^ | + * | | (de)compression by adding/removing "useless" zeroes + * | V + * --------------- + * |HHHHHHHLLLLLL| <--- pdx + * --------------- + * + * This scheme also holds for multiple regions, where HHHHHHH acts as + * the region identifier and LLLLLL fully contains the span of every + * region involved. Consider the following 3 regions. + */ + #ifdef CONFIG_HAS_PDX extern unsigned long max_pdx; @@ -13,22 +74,81 @@ extern unsigned long pfn_top_mask, ma_top_mask; (sizeof(*frame_table) & -sizeof(*frame_table))) extern unsigned long pdx_group_valid[]; -extern uint64_t pdx_init_mask(u64 base_addr); -extern u64 pdx_region_mask(u64 base, u64 len); +/** + * Calculates a mask covering "moving" bits of all addresses of a region + * + * The i-th bit of the mask must be set if there's 2 different addresses + * in the region that have different j-th bits. where j >= i. + * + * e.g: + * base=0x1B00000000 + * len+base=0x1B00082000 + * + * ought to return 0x00000FFFFF, which implies that every bit position + * with a zero in the mask remains unchanged in every address of the + * region. + * + * @param base Base address of the region + * @param len Size in octets of the region + * @return Mask of moving bits at the bottom of all the region addresses + */ +uint64_t pdx_region_mask(uint64_t base, uint64_t len); -extern void set_pdx_range(unsigned long smfn, unsigned long emfn); +/** + * Creates a basic pdx mask + * + * This mask is used to determine non-compressible bits. No address in the + * system shall have compressible bits covered by this initial mask. + * + * It's the larger of: + * - A mask of MAX_ORDER + PAGESHIFT 1s + * - base_addr rounded up to the nearest `2^n - 1` + * + * @param base_addr Address of the first maddr in the system + * @return An integer of the form 2^n - 1 + */ +uint64_t pdx_init_mask(uint64_t base_addr); + +/** + * Mark [smfn, emfn) as allocatable in the frame table + * + * @param smfn Start mfn + * @param emfn End mfn + */ +void set_pdx_range(unsigned long smfn, unsigned long emfn); #define page_to_pdx(pg) ((pg) - frame_table) #define pdx_to_page(pdx) gcc11_wrap(frame_table + (pdx)) +/** + * Invoked to determine if an mfn has an associated valid frame table entry + * + * In order for it to be legal it must pass bounds, grouping and + * compression sanity checks. + * + * @param mfn To-be-checked mfn + * @return True iff all checks pass + */ bool __mfn_valid(unsigned long mfn); +/** + * Map pfn to its corresponding pdx + * + * @param pfn Frame number + * @return Obtained pdx after compressing the pfn + */ static inline unsigned long pfn_to_pdx(unsigned long pfn) { return (pfn & pfn_pdx_bottom_mask) | ((pfn & pfn_top_mask) >> pfn_pdx_hole_shift); } +/** + * Map a pdx to its corresponding pfn + * + * @param pdx Page index + * @return Obtained pfn after decompressing the pdx + */ static inline unsigned long pdx_to_pfn(unsigned long pdx) { return (pdx & pfn_pdx_bottom_mask) | @@ -38,7 +158,16 @@ static inline unsigned long pdx_to_pfn(unsigned long pdx) #define mfn_to_pdx(mfn) pfn_to_pdx(mfn_x(mfn)) #define pdx_to_mfn(pdx) _mfn(pdx_to_pfn(pdx)) -extern void pfn_pdx_hole_setup(unsigned long); +/** + * Initializes global variables with information about the compressible + * range of the current memory regions. + * + * @param mask This mask is the biggest pdx_mask of every region in the + * system ORed with all base addresses of every region in the + * system. This results in a mask where every zero in a bit + * position marks a potentially compressible bit. + */ +void pfn_pdx_hole_setup(unsigned long mask); #endif /* HAS_PDX */ #endif /* __XEN_PDX_H__ */ -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 22 14:08:09 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 14:08:09 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553616.864270 (Exim 4.92) (envelope-from ) id 1qCKyY-0003dw-1s; Thu, 22 Jun 2023 14:07:54 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553616.864270; Thu, 22 Jun 2023 14:07:54 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCKyX-0003dp-VI; Thu, 22 Jun 2023 14:07:53 +0000 Received: by outflank-mailman (input) for mailman id 553616; Thu, 22 Jun 2023 14:07:52 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCKyW-0003df-9F for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 14:07:52 +0000 Received: from EUR03-DBA-obe.outbound.protection.outlook.com (mail-dbaeur03on20628.outbound.protection.outlook.com [2a01:111:f400:fe1a::628]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 2c6553e2-1106-11ee-b237-6b7b168915f2; Thu, 22 Jun 2023 16:07:51 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by PAWPR04MB9815.eurprd04.prod.outlook.com (2603:10a6:102:381::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.24; Thu, 22 Jun 2023 14:07:48 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6521.024; Thu, 22 Jun 2023 14:07:47 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 2c6553e2-1106-11ee-b237-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=haEcsdA7MqwhYbJUCTP0w19kKnnosStkcDxdzpUpmyKaH6yh3NJvxkv16A9tpOo0RquqiZ/V5nJVwKpTCbl/MNk6SUojxK6F6O0q2X9sW/oiv1apAAeoV7/mpkJtbDIx1NBbZ3OUBgD6o0zB0f4KdDhfV+Fjq/bLtBtonEEZLWLdh8ean7l7kSPYaTnaJ71IQ0Y2NrJb9O7d08bUcG77jaYzLaAu3Nx5Ewd7VpFEFobstdq3LnnYPb6rcioe029CnlXZs8oAwyYm2qE3s9SyUQCu9UoTbPhTtpJHMDOXcwU2f97zkMGcy6e28zIQFenYB2VGKCKlNO4Alo2NmkxAJg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=2gSL1txpX0lFBT1N9PYJXbgqpEj4i8eshcd5Rqeqfow=; b=hS3On+Mzsz2AhvWbp99iU5avEi8IAxdgktkwS+V64CVjfSgwc8uJ8lMH0NRTp5D9PZoArfOvq9KHRE64jlJGW9QsoImSToK3ySEGNnB8UAGaG2rRNtz7uwOXWztPvxMq/yox1NiOmxBIadzNCYquiiOpUQAx8V6cufmior9yWC/L2toYUjX2tSXw9MmiQXC8B7DwE1drY8NsM9oV+6GjdLsdF0q5ubZLmVPbJJTojhfXQ2FSrWMWNcdNFI9EFTyvAmZs/E9rX7CXlYn5OB/p34qULH3NRWHPb+6YR6GdguCOReAzqHQf/yIVzTkcMbM+LZQ3gD7odSAnfIGKQmnPSQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=2gSL1txpX0lFBT1N9PYJXbgqpEj4i8eshcd5Rqeqfow=; b=1YJpqGRAd2tYnsNSH3ns84SqS0MsSjGTytrckySKMjZNahmiiY8Jsmlaf1Wu6BLufQFtf9EgRm+fqqbU06HLL8ioDS1p0xxgoIC3xDtkfJ5oZeP8nIyUz2Mv03kykQzy26DpbYzs3GhCWI29fmH+mLE0A5+NGuDHqMVBm+AL7f2igxR6TpYUTK59nFpybFaXLy6HlZ+kLrE70xsp48aEvO2sNgrPQBZAhQ/xzYQU3OLXqmMccz6TPR+6k3nxUqPR25We0g2VRCdBWJhaD1l07bNPJSTdJTkbeiF0wrja3CsbmBXprrLNSLG7EMXqxxPV9T7snwnud40UPbP+Q8KnAA== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <7205472d-041c-d369-861e-08ccb6be9400@suse.com> Date: Thu, 22 Jun 2023 16:07:44 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v2 1/2] tools/console: Add escape argument to configure escape character Content-Language: en-US To: Peter Hoyes Cc: bertrand.marquis@arm.com, wei.chen@arm.com, luca.fancellu@arm.com, Wei Liu , Anthony PERARD , xen-devel@lists.xenproject.org References: <20230622135503.409150-1-peter.hoyes@arm.com> From: Jan Beulich In-Reply-To: <20230622135503.409150-1-peter.hoyes@arm.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR3P281CA0137.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:95::11) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|PAWPR04MB9815:EE_ X-MS-Office365-Filtering-Correlation-Id: 25a44281-c0ae-4c8d-074d-08db732a0e93 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: OgPQLyh0kWWA213rJf7P5YoaOIGT4Nge98utaDo+3TA3IN8XItZJ3C/b6EtaxUKT65CpxbKJZafyp3M/fEjO6XuqE+wkTa95Xr7LYrkpZ+9qCu7BO59kRpjkjjbJXr2lbxZ74FtzvLOUped0XuiGZsqA3qLPsmCvnvplSFUGf2kFsQNqH3tSbSEIO3yjJXfYWq1nCHhHPV3iNb+xD0mr3nwKe2MZoSkDdOFIU18TLHpuyegSwthhwLaoeUZrtx2EB/REFdaA2enx8iBT68jRF06SS74pbmcMFS/yQyLjsnTx2sujp8/Eeow49x3hFkUCZ5bdbG9OydXtTZCeDfeGZRKF/QhdcwThAn3SRWefkRmAIwzLW2IEzv/VmzI/rBkr+e6yfH0XxG1ZyzW39k0Mc0OY5X8z/B9hTQ6WJGrIzNuLTN+kNQhnNfsURLsS1HbVCfSZ1H6SSSSyAHj5Ge0i6wP7F58ShitlTSzlVbV4uJ+n1h0+npJkKeAHS19hfP7l/TGbbMdLsWgL1usObelMFYa/CDCwDIWYYhXPhCSPKWU18PogSdcYW/8GxCIEkD3ejnTjYC0g6oxTv0Ls3B+mne20Rb5iQnJ2YnBg6fTaM+F2O94m8oRVYJiO+bAouF79JnwMUPLfzlDG9LJGmbcBsA== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(346002)(136003)(396003)(39860400002)(366004)(376002)(451199021)(8676002)(8936002)(6666004)(6486002)(316002)(186003)(36756003)(26005)(66476007)(6512007)(41300700001)(6506007)(478600001)(53546011)(6916009)(4326008)(54906003)(66946007)(66556008)(83380400001)(2906002)(86362001)(38100700002)(2616005)(5660300002)(31686004)(31696002)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?am85ZkdqWEJWZ0I2WjFWWFV5T2p5T3lrdHBNbUZNMDlLa2FqcDZHVWtQTXBZ?= =?utf-8?B?UWY4YUQ4YzJuNzNyV3JmSENKbVhYaVhrOVU3QkozRXVJMzdJOUJrRFVTb3h6?= =?utf-8?B?eEluUllaZmVvOGlsMkFJVnV3MlZ5VjUrblIxU290MytmcVlOTHB0YSswS2Zx?= =?utf-8?B?QnpJcms2Z0NySjFKalI1OFhPbE5NVDlPdmdIZHhNNGt4U1NVU1AyVXU0ckNp?= =?utf-8?B?YTl1RmYyS2p0YnY1WndUZEVURHlWaDZlcnVicHVtTm9DdGN6M1RKZUJnWUxE?= =?utf-8?B?R3ErWEhQVWJBWHFlVFdJU3E0UURpWERLK3g4Rmh1eDlKczBNRmQ1d3ZmaU5J?= =?utf-8?B?UU9hL09VM1FodG94U3N6QnZ6SEhvYndxRmVGOE5rbTM2NE1RV0dOSjNZeEd1?= =?utf-8?B?K2FYWGNEN2NFVW9WRVhKVUVWRjg3Z2pYS3luZVMvTWVZZnpPUnIvREIxVFJW?= =?utf-8?B?ZXc3NzJJTE02SGFrWXR4aWlXdjdKWEtXWmZPUlF1Z1BWNEtucVR0NW91d0x5?= =?utf-8?B?Zkd0K20wQzBENE93b0EyYTNHbmlaTGZHSGhIdEE0QTF1SGo2T3RRVWc2S1RS?= =?utf-8?B?YVYvNGYrTTRWTGErRWNINGluZ0JNSHZiZGRYL0N2K0pGYjlLUFVTc2Z1M0c3?= =?utf-8?B?RVhCcVRLUE5ZWDRnZDNIQmYwUE9LZzFQM1gxZ2RiMS9KcVIxWCtMN1R3ZGlE?= =?utf-8?B?Nk9PVm9oQ3E5aVZaa0s1dFIyOGhqNTMxY0xzcEpHNjN6M1lNV0Y0TUFLN09I?= =?utf-8?B?ZkRUSkhlUGZqcGk3SnFHbDdEbmk0dmdGU3gyL3JpNWZaUTVVcFcrdjZjdTVN?= =?utf-8?B?WllOODlLTWE3a2tkN09RMmlRWmJOcG1FZFdCSjUrRnl5SEZEUWs3QVFGSEd3?= =?utf-8?B?MlAzRTFabjF6YnJYUWVQYUFpNVh0dElIbTlya2ZNSjVSVnpDTDJMbkVGcEFo?= =?utf-8?B?bnB6YmU1VGk5eTRXRC9QZG9TOTQrZ3VYTFNLcjBmNitnRi9pVzRRQXlSc2dE?= =?utf-8?B?anh3TzZBYmJ0L2dRcUpzWUt6U3ArWkZFdGZ2WmZBMUVpOE1aNm1Sd0o3UlFE?= =?utf-8?B?b1ZDYnVlYVhrMEFjRUl3ZW9tdGJyS24zZnIyVXZ5c09mbnIzc0NGQXR1VGhm?= =?utf-8?B?eHB1YkgyaFA0cVNKYnhWTkpwaTd1aENUTTdlNWo5YXI2Rnl0U0R5TjNmRnVo?= =?utf-8?B?NnJvaVFzaW5wSlJSUHRRQ1l1WVBORzdIL3BqV2MzMFgzbS9rSTJxUEdpQzA1?= =?utf-8?B?czFIY05FRFRFczRYNE5BaGVyb29YM215b1VMUVIzOFFIZnRLMUZYb1dsTldE?= =?utf-8?B?QmMveWtxRmFIY1VTNk5jeUlkY2dEODBWc0trRXNONGhpOGI1Y3Y2bnI4azZN?= =?utf-8?B?SWZGVjdsa3hhenFWVUx0c2I4MytpSXJaMlBncURrR1B5ekZoV3ZkRk1YSkhO?= =?utf-8?B?bjdJVGlFbzJ3MlJ4ZmQzWkxjWGhrbTBrM1Q4Q3FkTTZRM1dDZ3BVdEpYMXpr?= =?utf-8?B?VkhxbUtTWTlBMGx2QkxYQTRERS93aDlDaEdVVllacTFGUUI2dmpydFVBdXM1?= =?utf-8?B?SFBoWDJnUjBFc0hDbzBHcFpDdmRUcjE0ck5EdTJOVjBMOGUvYlBHWXptU1B3?= =?utf-8?B?WkR5bzc3WG43bk4rODliRkQ4eTBweUxLTStjK1lhZkU2RHF4Vy9qZVM3OWlD?= =?utf-8?B?eEM2citJN1ZObzV6K0pGdG1IRHplWXlZMklCWm91eVVLTzI4WTZqd3g3YmtS?= =?utf-8?B?K3p5YVJzVlN0TmNoTTVENnFsc2dMM0xuNTcyOXB3MlJtek1CK1l0QWplenk0?= =?utf-8?B?SUNxNDMvMkZ5WDlYcWtBbHR6VkJUdGd3N29GWWQrZWF5WVdFNG1mWnFuU2d0?= =?utf-8?B?SnZnT3oydkJIdldMWXdMVktrTFF6U0FPeU9QU3c4dlNsTW1vNHlSV1g0eU8v?= =?utf-8?B?aGtQRzlMbGNESjdSdWpoL29kMlJJdUI2bEpINzc1RlJzczVIZTVJeFM0dFFT?= =?utf-8?B?cld0TkFxTHorcTR6Tkc0VjZLcW05K3NCNk04eFBpNG5RaDBUMW5LRHk1S0pV?= =?utf-8?B?USs3U3E5MU1WemQwUFd2a0sxYlpYMUJvdURRZVFpSnI4WVM4ejdXS3RjYk1R?= =?utf-8?Q?RX39skPii26haodB3Ta3e+nPH?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 25a44281-c0ae-4c8d-074d-08db732a0e93 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 22 Jun 2023 14:07:47.5943 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: sinFZKRWLn2A6CH8mu0axFzNJHFW4TBwuhrYf6+8mQN8iUUyz4eHAXV/VCyr30Eadyi0Sw2RYHWeRTpuGhlrGQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAWPR04MB9815 On 22.06.2023 15:55, Peter Hoyes wrote: > From: Peter Hoyes > > Dom0 may be accessed via telnet, meaning the default escape character > (which is the same as telnet's) cannot be directly used to exit the > console. It would be helpful to make the escape character customizable > in such use cases. > > Add --escape argument to console tool for this purpose. > > Create parse_escape_character static function to convert a character > string (which may include a '^' modifier) into an ANSI integer. > > Add argument to getopt options, parse escape character and pass value > to console_loop. > > If --escape is not specified, it falls back to the existing behavior > using DEFAULT_ESCAPE_SEQUENCE. > > Signed-off-by: Peter Hoyes > --- > tools/console/client/main.c | 17 +++++++++++++---- > 1 file changed, 13 insertions(+), 4 deletions(-) Short of a cover letter, replying here: What has changed from v1? This then may or may not explain why Luca's R-b aren't here and in patch 2 (anymore). Jan From xen-devel-bounces@lists.xenproject.org Thu Jun 22 14:13:26 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 14:13:26 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553621.864281 (Exim 4.92) (envelope-from ) id 1qCL3h-0005Ah-KT; Thu, 22 Jun 2023 14:13:13 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553621.864281; Thu, 22 Jun 2023 14:13:13 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCL3h-0005Aa-Hg; Thu, 22 Jun 2023 14:13:13 +0000 Received: by outflank-mailman (input) for mailman id 553621; Thu, 22 Jun 2023 14:13:12 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCL3g-0005AS-DI for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 14:13:12 +0000 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by se1-gles-sth1.inumbo.com (Halon) with ESMTP id eabcc262-1106-11ee-b237-6b7b168915f2; Thu, 22 Jun 2023 16:13:10 +0200 (CEST) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 77F03C14; Thu, 22 Jun 2023 07:13:53 -0700 (PDT) Received: from e125920.cambridge.arm.com (unknown [10.1.199.64]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 8D1E73F663; Thu, 22 Jun 2023 07:13:08 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: eabcc262-1106-11ee-b237-6b7b168915f2 From: Peter Hoyes To: xen-devel@lists.xenproject.org Cc: bertrand.marquis@arm.com, wei.chen@arm.com, luca.fancellu@arm.com, Peter Hoyes , Wei Liu , Anthony PERARD Subject: [PATCH v3 1/2] tools/console: Add escape argument to configure escape character Date: Thu, 22 Jun 2023 15:12:47 +0100 Message-Id: <20230622141248.459133-1-peter.hoyes@arm.com> X-Mailer: git-send-email 2.34.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit From: Peter Hoyes Dom0 may be accessed via telnet, meaning the default escape character (which is the same as telnet's) cannot be directly used to exit the console. It would be helpful to make the escape character customizable in such use cases. Add --escape argument to console tool for this purpose. Create parse_escape_character static function to convert a character string (which may include a '^' modifier) into an ANSI integer. Add argument to getopt options, parse escape character and pass value to console_loop. If --escape is not specified, it falls back to the existing behavior using DEFAULT_ESCAPE_SEQUENCE. Signed-off-by: Peter Hoyes Reviewed-by: Luca Fancellu --- tools/console/client/main.c | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) diff --git a/tools/console/client/main.c b/tools/console/client/main.c index 6775006488..fb7cfb04b5 100644 --- a/tools/console/client/main.c +++ b/tools/console/client/main.c @@ -42,7 +42,7 @@ #include #include "xenctrl.h" -#define ESCAPE_CHARACTER 0x1d +#define DEFAULT_ESCAPE_CHARACTER 0x1d static volatile sig_atomic_t received_signal = 0; static char lockfile[sizeof (XEN_LOCK_DIR "/xenconsole.") + 8] = { 0 }; @@ -77,6 +77,7 @@ static void usage(const char *program) { " -n, --num N use console number N\n" " --type TYPE console type. must be 'pv', 'serial' or 'vuart'\n" " --start-notify-fd N file descriptor used to notify parent\n" + " --escape E escape sequence to exit console\n" , program); } @@ -174,7 +175,7 @@ static void restore_term(int fd, struct termios *old) } static int console_loop(int fd, struct xs_handle *xs, char *pty_path, - bool interactive) + bool interactive, char escape_character) { int ret, xs_fd = xs_fileno(xs), max_fd = -1; @@ -215,7 +216,7 @@ static int console_loop(int fd, struct xs_handle *xs, char *pty_path, char msg[60]; len = read(STDIN_FILENO, msg, sizeof(msg)); - if (len == 1 && msg[0] == ESCAPE_CHARACTER) { + if (len == 1 && msg[0] == escape_character) { return 0; } @@ -335,6 +336,7 @@ int main(int argc, char **argv) { "help", 0, 0, 'h' }, { "start-notify-fd", 1, 0, 's' }, { "interactive", 0, 0, 'i' }, + { "escape", 1, 0, 'e' }, { 0 }, }; @@ -345,6 +347,7 @@ int main(int argc, char **argv) console_type type = CONSOLE_INVAL; bool interactive = 0; const char *console_names = "serial, pv, vuart"; + char escape_character = DEFAULT_ESCAPE_CHARACTER; while((ch = getopt_long(argc, argv, sopt, lopt, &opt_ind)) != -1) { switch(ch) { @@ -375,6 +378,12 @@ int main(int argc, char **argv) case 'i': interactive = 1; break; + case 'e': + if (optarg[0] == '^') + escape_character = optarg[1] & 0x1f; + else + escape_character = optarg[0]; + break; default: fprintf(stderr, "Invalid argument\n"); fprintf(stderr, "Try `%s --help' for more information.\n", @@ -493,7 +502,7 @@ int main(int argc, char **argv) close(start_notify_fd); } - console_loop(spty, xs, path, interactive); + console_loop(spty, xs, path, interactive, escape_character); free(path); free(dom_path); -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 22 14:13:30 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 14:13:30 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553624.864291 (Exim 4.92) (envelope-from ) id 1qCL3n-0005Ry-Vh; Thu, 22 Jun 2023 14:13:19 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553624.864291; Thu, 22 Jun 2023 14:13:19 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCL3n-0005Rp-SI; Thu, 22 Jun 2023 14:13:19 +0000 Received: by outflank-mailman (input) for mailman id 553624; Thu, 22 Jun 2023 14:13:19 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCL3n-0005RK-A1 for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 14:13:19 +0000 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by se1-gles-flk1.inumbo.com (Halon) with ESMTP id eebb9a7d-1106-11ee-8611-37d641c3527e; Thu, 22 Jun 2023 16:13:17 +0200 (CEST) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 3FBB9C14; Thu, 22 Jun 2023 07:14:00 -0700 (PDT) Received: from e125920.cambridge.arm.com (unknown [10.1.199.64]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 3A6A93F663; Thu, 22 Jun 2023 07:13:15 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: eebb9a7d-1106-11ee-8611-37d641c3527e From: Peter Hoyes To: xen-devel@lists.xenproject.org Cc: bertrand.marquis@arm.com, wei.chen@arm.com, luca.fancellu@arm.com, Peter Hoyes , Wei Liu , Anthony PERARD , Juergen Gross Subject: [PATCH v3 2/2] xl: Add escape character argument to xl console Date: Thu, 22 Jun 2023 15:12:48 +0100 Message-Id: <20230622141248.459133-2-peter.hoyes@arm.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20230622141248.459133-1-peter.hoyes@arm.com> References: <20230622141248.459133-1-peter.hoyes@arm.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit From: Peter Hoyes Add -e argument to xl console and pass to new escape_character argument of libxl_console_exec. In libxl_console_exec, there are currently two call sites to execl, which uses varargs, in order to support optionally passing 'start-notify-fd' to the console client. In order to support passing the 'escape' argument optionally too, refactor to instead have a single call site to execv, which has the same behavior but takes an array of arguments. If -e is not specified, --escape is not passed to the console client and the existing value (^]) is used as a default. Signed-off-by: Peter Hoyes Reviewed-by: Luca Fancellu --- tools/include/libxl.h | 8 ++++++-- tools/libs/light/libxl_console.c | 30 ++++++++++++++++++++++-------- tools/xl/xl_cmdtable.c | 3 ++- tools/xl/xl_console.c | 10 +++++++--- tools/xl/xl_vmcontrol.c | 2 +- 5 files changed, 38 insertions(+), 15 deletions(-) diff --git a/tools/include/libxl.h b/tools/include/libxl.h index cac641a7eb..c513c39483 100644 --- a/tools/include/libxl.h +++ b/tools/include/libxl.h @@ -1958,7 +1958,8 @@ int libxl_vncviewer_exec(libxl_ctx *ctx, uint32_t domid, int autopass); * the caller that it has connected to the guest console. */ int libxl_console_exec(libxl_ctx *ctx, uint32_t domid, int cons_num, - libxl_console_type type, int notify_fd); + libxl_console_type type, int notify_fd, + char* escape_character); /* libxl_primary_console_exec finds the domid and console number * corresponding to the primary console of the given vm, then calls * libxl_console_exec with the right arguments (domid might be different @@ -1968,9 +1969,12 @@ int libxl_console_exec(libxl_ctx *ctx, uint32_t domid, int cons_num, * guests using pygrub. * If notify_fd is not -1, xenconsole will write 0x00 to it to nofity * the caller that it has connected to the guest console. + * If escape_character is not NULL, the provided value is used to exit + * the guest console. */ int libxl_primary_console_exec(libxl_ctx *ctx, uint32_t domid_vm, - int notify_fd); + int notify_fd, + char* escape_character); #if defined(LIBXL_API_VERSION) && LIBXL_API_VERSION < 0x040800 diff --git a/tools/libs/light/libxl_console.c b/tools/libs/light/libxl_console.c index f497be141b..0b7293fe71 100644 --- a/tools/libs/light/libxl_console.c +++ b/tools/libs/light/libxl_console.c @@ -52,7 +52,8 @@ out: } int libxl_console_exec(libxl_ctx *ctx, uint32_t domid, int cons_num, - libxl_console_type type, int notify_fd) + libxl_console_type type, int notify_fd, + char* escape_character) { GC_INIT(ctx); char *p = GCSPRINTF("%s/xenconsole", libxl__private_bindir_path()); @@ -75,15 +76,26 @@ int libxl_console_exec(libxl_ctx *ctx, uint32_t domid, int cons_num, goto out; } + char *args[] = { + p, domid_s, "--num", cons_num_s, "--type", cons_type_s, + NULL, NULL, NULL, NULL, // start-notify-fd, escape + NULL, // list terminator - do not use + }; + char **args_extra = args + 6; + if (notify_fd != -1) { notify_fd_s = GCSPRINTF("%d", notify_fd); - execl(p, p, domid_s, "--num", cons_num_s, "--type", cons_type_s, - "--start-notify-fd", notify_fd_s, (void *)NULL); - } else { - execl(p, p, domid_s, "--num", cons_num_s, "--type", cons_type_s, - (void *)NULL); + *args_extra++ = "--start-notify-fd"; + *args_extra++ = notify_fd_s; } + if (escape_character) { + *args_extra++ = "--escape"; + *args_extra++ = escape_character; + } + + execv(p, args); + out: GC_FREE; return ERROR_FAIL; @@ -156,7 +168,8 @@ out: return rc; } -int libxl_primary_console_exec(libxl_ctx *ctx, uint32_t domid_vm, int notify_fd) +int libxl_primary_console_exec(libxl_ctx *ctx, uint32_t domid_vm, int notify_fd, + char* escape_character) { uint32_t domid; int cons_num; @@ -165,7 +178,8 @@ int libxl_primary_console_exec(libxl_ctx *ctx, uint32_t domid_vm, int notify_fd) rc = libxl__primary_console_find(ctx, domid_vm, &domid, &cons_num, &type); if ( rc ) return rc; - return libxl_console_exec(ctx, domid, cons_num, type, notify_fd); + return libxl_console_exec(ctx, domid, cons_num, type, notify_fd, + escape_character); } int libxl_primary_console_get_tty(libxl_ctx *ctx, uint32_t domid_vm, diff --git a/tools/xl/xl_cmdtable.c b/tools/xl/xl_cmdtable.c index ccf4d83584..67604e9536 100644 --- a/tools/xl/xl_cmdtable.c +++ b/tools/xl/xl_cmdtable.c @@ -141,7 +141,8 @@ const struct cmd_spec cmd_table[] = { "Attach to domain's console", "[options] \n" "-t console type, pv , serial or vuart\n" - "-n console number" + "-n console number\n" + "-e escape character" }, { "vncviewer", &main_vncviewer, 0, 0, diff --git a/tools/xl/xl_console.c b/tools/xl/xl_console.c index b27f9e0136..5633c6f6f7 100644 --- a/tools/xl/xl_console.c +++ b/tools/xl/xl_console.c @@ -28,8 +28,9 @@ int main_console(int argc, char **argv) int opt = 0, num = 0; libxl_console_type type = 0; const char *console_names = "pv, serial, vuart"; + char* escape_character = NULL; - SWITCH_FOREACH_OPT(opt, "n:t:", NULL, "console", 1) { + SWITCH_FOREACH_OPT(opt, "n:t:e:", NULL, "console", 1) { case 't': if (!strcmp(optarg, "pv")) type = LIBXL_CONSOLE_TYPE_PV; @@ -45,13 +46,16 @@ int main_console(int argc, char **argv) case 'n': num = atoi(optarg); break; + case 'e': + escape_character = optarg; + break; } domid = find_domain(argv[optind]); if (!type) - libxl_primary_console_exec(ctx, domid, -1); + libxl_primary_console_exec(ctx, domid, -1, escape_character); else - libxl_console_exec(ctx, domid, num, type, -1); + libxl_console_exec(ctx, domid, num, type, -1, escape_character); fprintf(stderr, "Unable to attach console\n"); return EXIT_FAILURE; } diff --git a/tools/xl/xl_vmcontrol.c b/tools/xl/xl_vmcontrol.c index 5518c78dc6..03971927e9 100644 --- a/tools/xl/xl_vmcontrol.c +++ b/tools/xl/xl_vmcontrol.c @@ -643,7 +643,7 @@ static void autoconnect_console(libxl_ctx *ctx_ignored, postfork(); sleep(1); - libxl_primary_console_exec(ctx, bldomid, notify_fd); + libxl_primary_console_exec(ctx, bldomid, notify_fd, NULL); /* Do not return. xl continued in child process */ perror("xl: unable to exec console client"); _exit(1); -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 22 14:20:30 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 14:20:30 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553637.864300 (Exim 4.92) (envelope-from ) id 1qCLAZ-0007NC-L4; Thu, 22 Jun 2023 14:20:19 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553637.864300; Thu, 22 Jun 2023 14:20:19 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCLAZ-0007N5-I6; Thu, 22 Jun 2023 14:20:19 +0000 Received: by outflank-mailman (input) for mailman id 553637; Thu, 22 Jun 2023 14:20:19 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCLAZ-0007Mz-1R for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 14:20:19 +0000 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by se1-gles-sth1.inumbo.com (Halon) with ESMTP id e9ac6119-1107-11ee-b237-6b7b168915f2; Thu, 22 Jun 2023 16:20:18 +0200 (CEST) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 4CFA2C14; Thu, 22 Jun 2023 07:21:01 -0700 (PDT) Received: from [10.1.199.64] (unknown [10.1.199.64]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 7C3D63F663; Thu, 22 Jun 2023 07:20:16 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: e9ac6119-1107-11ee-b237-6b7b168915f2 Message-ID: Date: Thu, 22 Jun 2023 15:20:10 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH v2 1/2] tools/console: Add escape argument to configure escape character To: Jan Beulich Cc: bertrand.marquis@arm.com, wei.chen@arm.com, luca.fancellu@arm.com, Wei Liu , Anthony PERARD , xen-devel@lists.xenproject.org References: <20230622135503.409150-1-peter.hoyes@arm.com> <7205472d-041c-d369-861e-08ccb6be9400@suse.com> Content-Language: en-US From: Peter Hoyes In-Reply-To: <7205472d-041c-d369-861e-08ccb6be9400@suse.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit On 22/06/2023 15:07, Jan Beulich wrote: > On 22.06.2023 15:55, Peter Hoyes wrote: >> From: Peter Hoyes >> >> Dom0 may be accessed via telnet, meaning the default escape character >> (which is the same as telnet's) cannot be directly used to exit the >> console. It would be helpful to make the escape character customizable >> in such use cases. >> >> Add --escape argument to console tool for this purpose. >> >> Create parse_escape_character static function to convert a character >> string (which may include a '^' modifier) into an ANSI integer. >> >> Add argument to getopt options, parse escape character and pass value >> to console_loop. >> >> If --escape is not specified, it falls back to the existing behavior >> using DEFAULT_ESCAPE_SEQUENCE. >> >> Signed-off-by: Peter Hoyes >> --- >> tools/console/client/main.c | 17 +++++++++++++---- >> 1 file changed, 13 insertions(+), 4 deletions(-) > Short of a cover letter, replying here: What has changed from v1? This > then may or may not explain why Luca's R-b aren't here and in patch 2 > (anymore). > > Jan Luca's R-b are in v3 - the only changes between v1 and v3 are the footers. I'll make sure to include a cover letter and an inline changelog in future versions. Thanks, Peter From xen-devel-bounces@lists.xenproject.org Thu Jun 22 14:34:32 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 14:34:32 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553644.864310 (Exim 4.92) (envelope-from ) id 1qCLO9-0000Tm-QU; Thu, 22 Jun 2023 14:34:21 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553644.864310; Thu, 22 Jun 2023 14:34:21 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCLO9-0000Tf-NZ; Thu, 22 Jun 2023 14:34:21 +0000 Received: by outflank-mailman (input) for mailman id 553644; Thu, 22 Jun 2023 14:34:20 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCLO8-0000TZ-Ht for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 14:34:20 +0000 Received: from mail-wr1-x432.google.com (mail-wr1-x432.google.com [2a00:1450:4864:20::432]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id de8b1838-1109-11ee-8611-37d641c3527e; Thu, 22 Jun 2023 16:34:18 +0200 (CEST) Received: by mail-wr1-x432.google.com with SMTP id ffacd0b85a97d-3111547c8f9so8356104f8f.1 for ; Thu, 22 Jun 2023 07:34:18 -0700 (PDT) Received: from EMEAENGAAD19049. (default-46-102-197-194.interdsl.co.uk. [46.102.197.194]) by smtp.gmail.com with ESMTPSA id a1-20020adff7c1000000b0030fafcbbd33sm7156419wrq.50.2023.06.22.07.34.17 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 22 Jun 2023 07:34:17 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: de8b1838-1109-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cloud.com; s=cloud; t=1687444458; x=1690036458; h=in-reply-to:content-disposition:mime-version:references:subject:cc :to:from:date:message-id:from:to:cc:subject:date:message-id:reply-to; bh=5PNI8DtqDXdmsu2J8N8VrYnh58TbbbVZ3Kxd6kqRQ6M=; b=UvyMBWO5sYCOH4vELve9sL7PCcNdAq+98KZ/q17Ob6E5doyhUHaOS6/nPbrpsbDR1G DSlz5B16GRuMKzFBmxndh/+9qV9nsWn6eHItEm4wFcqMjdqfxg+OveTjJhybHb1YI8Zb SSdp3mAmli5t0UsJ4k7bTgn221vT/uEdkG+bk= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687444458; x=1690036458; h=in-reply-to:content-disposition:mime-version:references:subject:cc :to:from:date:message-id:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=5PNI8DtqDXdmsu2J8N8VrYnh58TbbbVZ3Kxd6kqRQ6M=; b=Z8m8CdWz2RKoQY18WiJ9pk82vXecrIoQb3njqVnWbREVY6K7y5LUGChxDhN2Ys03m+ o3IWCDYqPNmC8apBs128JkFvbg/Xo/Ya57Y1Efd10a8VsMt0Sp52EUQsVDtflBXy0k15 exm/yY1emoIZ+h2z3EcbiketzvD2PlJIgOu/98CKDxPRgzmPNTrHWhJRGQv7n0Jsu+nt yPSllxCKTOun7vW0STevApZLSZBk5u64lt8wUTbEa/Gnh5tXQYV6HALqPGaCU/4ppOgu uyqI9tpD+eUyfbUJyTMBEP/slP3kAWyCC8FU/nECpBEtC7WUNWWGYzWFifCcK4qpTQh9 AcsA== X-Gm-Message-State: AC+VfDygOmqgsLk8UBJy9wAkPj6gGqtHxwIRBFJQSKjiccverTjpb9Fz Th9frZXiOV0WgpcrKRKe0umLKQ== X-Google-Smtp-Source: ACHHUZ5tb8lZLI1VMv4Q3ifLAOG77nopJmomCx0h88YmnBitRsY8y1CuxAM9bA0o0FG4rRwGaGrweQ== X-Received: by 2002:a5d:50d2:0:b0:311:19fd:1e1d with SMTP id f18-20020a5d50d2000000b0031119fd1e1dmr16066324wrt.42.1687444457728; Thu, 22 Jun 2023 07:34:17 -0700 (PDT) Message-ID: <64945be9.df0a0220.41efc.3f40@mx.google.com> X-Google-Original-Message-ID: Date: Thu, 22 Jun 2023 15:34:15 +0100 From: Alejandro Vallejo To: Jan Beulich Cc: Andrew Cooper , Roger Pau =?iso-8859-1?Q?Monn=E9?= , Wei Liu , Xen-devel Subject: Re: [PATCH v3 2/5] x86/microcode: Create per-vendor microcode_ops builders References: <20230615154834.959-1-alejandro.vallejo@cloud.com> <20230615154834.959-3-alejandro.vallejo@cloud.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: On Mon, Jun 19, 2023 at 05:45:14PM +0200, Jan Beulich wrote: > On 15.06.2023 17:48, Alejandro Vallejo wrote: > > --- a/xen/arch/x86/cpu/microcode/amd.c > > +++ b/xen/arch/x86/cpu/microcode/amd.c > > @@ -432,9 +432,13 @@ static struct microcode_patch *cf_check cpu_request_microcode( > > return patch; > > } > > > > -const struct microcode_ops __initconst_cf_clobber amd_ucode_ops = { > > Something will want to be done to retain the cf_clobber aspect, > i.e. to be able to get rid of no longer necessary ENDBR64 after > alternatives patching is finished. I guess I first need to see > what further patches do in order to maybe come up with a > suggestion. > > Jan I (mistakenly) thought the clobber tag was simply making sure the static contents were themselves clobbered. It seems like it's actually aiding the alternatives machinery with function pointer cleanup, so this was blatantly wrong on my part. Sigh... Either way, I'm bringing the static structs back and dealing with this in another way. Cheers for the pointer. Alejandro From xen-devel-bounces@lists.xenproject.org Thu Jun 22 14:55:13 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 14:55:13 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553651.864331 (Exim 4.92) (envelope-from ) id 1qCLiE-0003BG-Td; Thu, 22 Jun 2023 14:55:06 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553651.864331; Thu, 22 Jun 2023 14:55:06 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCLiE-0003B8-Qj; Thu, 22 Jun 2023 14:55:06 +0000 Received: by outflank-mailman (input) for mailman id 553651; Thu, 22 Jun 2023 14:55:05 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCLiD-0003Ac-Oh for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 14:55:05 +0000 Received: from mail-wr1-x433.google.com (mail-wr1-x433.google.com [2a00:1450:4864:20::433]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id c4b75eee-110c-11ee-8611-37d641c3527e; Thu, 22 Jun 2023 16:55:03 +0200 (CEST) Received: by mail-wr1-x433.google.com with SMTP id ffacd0b85a97d-3113da5260dso4619898f8f.2 for ; Thu, 22 Jun 2023 07:55:03 -0700 (PDT) Received: from EMEAENGAAD19049. (default-46-102-197-194.interdsl.co.uk. [46.102.197.194]) by smtp.gmail.com with ESMTPSA id x6-20020adff0c6000000b00307972e46fasm7176745wro.107.2023.06.22.07.55.02 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 22 Jun 2023 07:55:02 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: c4b75eee-110c-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cloud.com; s=cloud; t=1687445703; x=1690037703; h=in-reply-to:content-disposition:mime-version:references:subject:cc :to:from:date:message-id:from:to:cc:subject:date:message-id:reply-to; bh=W0PvRvJuXYYDOGVMKLYrWYciz2JzwrVh7OWM4cuePak=; b=b90pedEHaeD0yA2PV5GqBtD0KZxPO9lL3VmkBNxXUf/Sz3Kh5pRN4DMhuRffGcFHV+ MsMEmf+G3iJjHD/5sr+gU3Cj4RzAIRMfPEHS6woOXNwkYku47EhDTm1F8ggx9I9xTmrs +YFehJ6kcJZxVLCsyBw1qR3w+aKrIzN2Dv9kg= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687445703; x=1690037703; h=in-reply-to:content-disposition:mime-version:references:subject:cc :to:from:date:message-id:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=W0PvRvJuXYYDOGVMKLYrWYciz2JzwrVh7OWM4cuePak=; b=cTl+pXvN0NlZdy7sX0PupEYMbz00oCs8khSVt7OLWce0nPP5Y7pBO73kQYLTWwXefq qXJjmTECTXNj/tiZA3c6H+36UhIMuqeUC91xcrvVPOSmb3NYRnKwxS1tL1PxzRYU/GJQ r7r6wi5l4/DpZS2Fj98gshXjAYoFSFzqbNS87ei09lcncgYg/Isfyvq8/sTAfd45CAEM CWxzDLpUs/XIXThqOIY0NrW+ryzD7vZ8gFQ+ELZOzB2zjciwZiCAboQ7zzC8grpAu5Bk XAHJ3U81dG9EK+UsGQvrIP8d8mizrLqTAp2eXiDjsPwD5DJzBrBHfxuSP+W38dZWFNba HUoA== X-Gm-Message-State: AC+VfDyIR21/IWEvbnjqu+XM8+4LUsCYmwMoOuKttrpSFk5f91u2czG4 GswBCrHPX5K3Ixb8JX6vdSR3/g== X-Google-Smtp-Source: ACHHUZ52Xbys/ea53A8oHYEAW6vHsCK5Xtc2rSQN7xUZEv73RfvMFqmODJbkPr4/8eXAc11E6/q/uQ== X-Received: by 2002:adf:ffc3:0:b0:30f:c3ec:e78f with SMTP id x3-20020adfffc3000000b0030fc3ece78fmr1898524wrs.21.1687445702949; Thu, 22 Jun 2023 07:55:02 -0700 (PDT) Message-ID: <649460c6.df0a0220.f4bf6.4717@mx.google.com> X-Google-Original-Message-ID: Date: Thu, 22 Jun 2023 15:55:00 +0100 From: Alejandro Vallejo To: Jan Beulich Cc: Andrew Cooper , Roger Pau =?iso-8859-1?Q?Monn=E9?= , Wei Liu , Xen-devel Subject: Re: [PATCH v3 4/5] x86: Read MSR_ARCH_CAPS immediately after early_microcode_init() References: <20230615154834.959-1-alejandro.vallejo@cloud.com> <20230615154834.959-5-alejandro.vallejo@cloud.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: On Mon, Jun 19, 2023 at 05:57:14PM +0200, Jan Beulich wrote: > > + * We might have exposed MSR_ARCH_CAPS after the microcode update. > > I'm struggling a little with this sentence, but not being a native speaker > it may be me, not the sentence. I would perhaps have said "MSR_ARCH_CAPS > may have appeared with the microcode update." Sure, works for me. > I also wonder whether you wouldn't want to insert "e.g.", since iirc with > the next patch tsx_init() isn't going to be the only user anymore. tsx_init() is the only user, as far as I have seen. DIS_MCU_LOAD is checked before the update, using the cached data read in early_cpu_init() > > > + */ > > + if ( boot_cpu_data.cpuid_level >= 7 ) > > + boot_cpu_data.x86_capability[FEATURESET_7d0] > > + = cpuid_count_edx(7, 0); > > I take it we assume the maximum CPUID level won't go from below 7 to 7 > or higher with the ucode update? Do you mean from >=7 to <7 instead? Otherwise it just works and I don't undertand the concern. If so, that's an impossibly unlikely case and the current code does not try to clean up in that case. > > > --- a/xen/arch/x86/tsx.c > > +++ b/xen/arch/x86/tsx.c > > @@ -39,9 +39,9 @@ void tsx_init(void) > > static bool __read_mostly once; > > > > /* > > - * This function is first called between microcode being loaded, and CPUID > > - * being scanned generally. Read into boot_cpu_data.x86_capability[] for > > - * the cpu_has_* bits we care about using here. > > + * This function is first called between microcode being loaded, and > > + * CPUID being scanned generally. early_microcode_init() has already > > + * prepared the feature bits needed here after the microcode update. > > Is this true in all cases? early_microcode_init() may have bailed > early, so I think you need to further transform early_microcode_init() > (and as a personal request of mine preferably without goto). > > Jan The series is eventually correct because MSR_ARCH_CAPS are also collected in early_cpu_init(). Alas, that's not the case here. You're right. I'll move the early MSR_ARCH_CAPS read to this patch as well. Alejandro From xen-devel-bounces@lists.xenproject.org Thu Jun 22 14:55:13 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 14:55:13 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553648.864320 (Exim 4.92) (envelope-from ) id 1qCLiA-0002vB-Fm; Thu, 22 Jun 2023 14:55:02 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553648.864320; Thu, 22 Jun 2023 14:55:02 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCLiA-0002v4-CR; Thu, 22 Jun 2023 14:55:02 +0000 Received: by outflank-mailman (input) for mailman id 553648; Thu, 22 Jun 2023 14:55:00 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCLi8-0002ue-Od; Thu, 22 Jun 2023 14:55:00 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCLi8-0002ZJ-A1; Thu, 22 Jun 2023 14:55:00 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCLi7-0002Xd-Lj; Thu, 22 Jun 2023 14:54:59 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qCLi7-0007Yw-LE; Thu, 22 Jun 2023 14:54:59 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=XvZcBRIkayvvP1i5b+Qj3qPJ8FJ2Ljv+v+E76uO6+lk=; b=c4QbJMCP/AFowt2mnRQh6ffxT+ qEOfddrWaDW9QbBpB8afs+WhpSbiN4wH12b+bGlC6DuYElAjrvHPnno+QGJdqvOFdRKYJ4rL9sAiI qYm7O6u+IiebTnvvyi0eMbO0T8qyeSRY98eufZk5ggIJq45JaElJL6Z2HyDXILaRVVRs=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [qemu-mainline test] 181549: regressions - FAIL X-Osstest-Failures: qemu-mainline:build-amd64:xen-build:fail:regression qemu-mainline:build-amd64-xsm:xen-build:fail:regression qemu-mainline:build-i386:xen-build:fail:regression qemu-mainline:build-i386-xsm:xen-build:fail:regression qemu-mainline:build-arm64:xen-build:fail:regression qemu-mainline:build-arm64-xsm:xen-build:fail:regression qemu-mainline:build-armhf:xen-build:fail:regression qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-raw:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-i386:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-freebsd10-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-coresched-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-xsm:build-check(1):blocked:nonblocking qemu-mainline:build-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-rtds:build-check(1):blocked:nonblocking qemu-mainline:build-arm64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking qemu-mainline:build-armhf-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking qemu-mainline:build-i386-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-dom0pvh-xl-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-qcow2:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pair:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-pygrub:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-pvhv2-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-amd:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-qemuu-nested-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-multivcpu:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-amd64-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking qemu-mainline:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-intel:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-pvshim:build-check(1):blocked:nonblocking qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking X-Osstest-Versions-This: qemuu=67fe6ae41da64368bc4936b196fee2bf61f8c720 X-Osstest-Versions-That: qemuu=6972ef1440a9d685482d78672620a7482f2bd09a From: osstest service owner Date: Thu, 22 Jun 2023 14:54:59 +0000 flight 181549 qemu-mainline real [real] http://logs.test-lab.xenproject.org/osstest/logs/181549/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-amd64 6 xen-build fail REGR. vs. 180691 build-amd64-xsm 6 xen-build fail REGR. vs. 180691 build-i386 6 xen-build fail REGR. vs. 180691 build-i386-xsm 6 xen-build fail REGR. vs. 180691 build-arm64 6 xen-build fail REGR. vs. 180691 build-arm64-xsm 6 xen-build fail REGR. vs. 180691 build-armhf 6 xen-build fail REGR. vs. 180691 Tests which did not succeed, but are not blocking: test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-xl-xsm 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-raw 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-xsm 1 build-check(1) blocked n/a test-arm64-arm64-xl 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit1 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit2 1 build-check(1) blocked n/a test-arm64-arm64-xl-thunderx 1 build-check(1) blocked n/a test-arm64-arm64-xl-vhd 1 build-check(1) blocked n/a test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a test-armhf-armhf-libvirt 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-qcow2 1 build-check(1) blocked n/a test-armhf-armhf-libvirt-raw 1 build-check(1) blocked n/a test-armhf-armhf-xl 1 build-check(1) blocked n/a test-armhf-armhf-xl-arndale 1 build-check(1) blocked n/a test-armhf-armhf-xl-multivcpu 1 build-check(1) blocked n/a test-armhf-armhf-xl-rtds 1 build-check(1) blocked n/a test-armhf-armhf-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-amd 1 build-check(1) blocked n/a test-amd64-i386-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-raw 1 build-check(1) blocked n/a test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-i386 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-amd64 1 build-check(1) blocked n/a test-amd64-coresched-i386-xl 1 build-check(1) blocked n/a test-amd64-coresched-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-xsm 1 build-check(1) blocked n/a build-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-shadow 1 build-check(1) blocked n/a test-amd64-amd64-xl-rtds 1 build-check(1) blocked n/a build-arm64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a build-armhf-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a build-i386-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-amd 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-pair 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-qcow2 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-vhd 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvshim 1 build-check(1) blocked n/a test-amd64-amd64-pair 1 build-check(1) blocked n/a test-amd64-amd64-pygrub 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-intel 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd11-amd64 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd12-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-multivcpu 1 build-check(1) blocked n/a test-amd64-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit1 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit2 1 build-check(1) blocked n/a test-armhf-armhf-xl-credit1 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-intel 1 build-check(1) blocked n/a test-amd64-i386-xl 1 build-check(1) blocked n/a test-amd64-i386-xl-pvshim 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a version targeted for testing: qemuu 67fe6ae41da64368bc4936b196fee2bf61f8c720 baseline version: qemuu 6972ef1440a9d685482d78672620a7482f2bd09a Last test of basis 180691 2023-05-17 10:45:22 Z 36 days Failing since 180699 2023-05-18 07:21:24 Z 35 days 125 attempts Testing same since 181544 2023-06-22 01:10:56 Z 0 days 2 attempts ------------------------------------------------------------ People who touched revisions under test: Afonso Bordado Akihiko Odaki Akihiro Suda Alex Bennée Alex Williamson Alexander Bulekov Alexander Graf Alexander Ivanov Alistair Francis Anastasia Belova Andrea Bolognani Andreas Schwab Andrew Jeffery Ani Sinha Ani Sinha Anthony PERARD Anton Johansson Antonio Caggiano BALATON Zoltan Bastian Koppelmann Bernhard Beschow Bin Meng Brian Cain Brice Goglin Camilla Conte Carlos Santos Christian Schoenebeck Chuck Zmudzinski Cindy Lu Clément Chigot Corey Minyard Cornelia Huck Cédric Le Goater Cédric Le Goater Daniel Henrique Barboza Daniel Henrique Barboza Daniel P. Berrangé Daniil Kovalev David Hildenbrand David Woodhouse Emanuele Giuseppe Esposito Enze Li Eric Auger Eric Blake Eric DeVolder Erico Nunes Eugenio Pérez Fabiano Rosas Fan Ni Fiona Ebner Francesco Cagnin Francisco Iglesias Frederic Barrat Gavin Shan Gregory Price Gregory Price Guenter Roeck Hanna Czenczek Hao Zeng Hawkins Jiawei Helge Deller Himanshu Chauhan Igor Mammedov Ilya Leoshkevich Ira Weiny Ivan Klokov Jagannathan Raman Jason Wang Jean-Louis Dupond Jean-Philippe Brucker Jiajie Chen Jiaxun Yang Joao Martins John Snow Jonathan Cameron Juan Quintela Junqiang Wang Kevin Wolf Laurent Vivier Lei Yang Leonardo Bras Maksim Davydov Marc-André Lureau Marcin Juszkiewicz Marco Liebel Mark Cave-Ayland Markus Armbruster Martin Kaiser Matheus Tavares Bernardino Mattias Nissler Mauro Matteo Cascella Max Fritz Mayuresh Chitale Michael S. Tsirkin Michael Tokarev Michal Privoznik Milan Zamazal Mostafa Saleh Nicholas Piggin Nicolas Saenz Julienne Niek Linnenbank Niklas Cassel Ninad Palsule Palmer Dabbelt Paolo Bonzini Patrick Venture Peter Maydell Peter Xu Philippe Mathieu-Daudé Philippe Mathieu-Daudé qianfan Zhao Raghu H Rene Engel Richard Henderson Richard Purdie Ricky Zhou Ryan Wendland Sebastian Ott Sergey Kambalin Sergio Lopez Sid Manning Siqi Chen Song Gao Stefan Hajnoczi Stefano Garzarella Stefano Stabellini Stefano Stabellini Steve Sistare Sunil V L Taylor Simpson Thomas Huth Thomas Weißschuh Tianrui Zhao timothee.cocault@gmail.com Timothée Cocault Tommy Wu Vikram Garhwal Viktor Prutyanov Vitaly Cheptsov Vivek Kasireddy Vladimir Sementsov-Ogievskiy Volker Rümelin Weiwei Li Xiao Wang Xinyu Li Yin Wang Zeng Hao Zhenyu Zhang Zhenzhong Duan Zhuojia Shen jobs: build-amd64-xsm fail build-arm64-xsm fail build-i386-xsm fail build-amd64 fail build-arm64 fail build-armhf fail build-i386 fail build-amd64-libvirt blocked build-arm64-libvirt blocked build-armhf-libvirt blocked build-i386-libvirt blocked build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl blocked test-amd64-coresched-amd64-xl blocked test-arm64-arm64-xl blocked test-armhf-armhf-xl blocked test-amd64-i386-xl blocked test-amd64-coresched-i386-xl blocked test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-i386-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-amd64-libvirt-xsm blocked test-arm64-arm64-libvirt-xsm blocked test-amd64-i386-libvirt-xsm blocked test-amd64-amd64-xl-xsm blocked test-arm64-arm64-xl-xsm blocked test-amd64-i386-xl-xsm blocked test-amd64-amd64-qemuu-nested-amd blocked test-amd64-amd64-xl-pvhv2-amd blocked test-amd64-i386-qemuu-rhel6hvm-amd blocked test-amd64-amd64-dom0pvh-xl-amd blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-freebsd10-amd64 blocked test-amd64-amd64-qemuu-freebsd11-amd64 blocked test-amd64-amd64-qemuu-freebsd12-amd64 blocked test-amd64-amd64-xl-qemuu-ovmf-amd64 blocked test-amd64-i386-xl-qemuu-ovmf-amd64 blocked test-amd64-amd64-xl-qemuu-win7-amd64 blocked test-amd64-i386-xl-qemuu-win7-amd64 blocked test-amd64-amd64-xl-qemuu-ws16-amd64 blocked test-amd64-i386-xl-qemuu-ws16-amd64 blocked test-armhf-armhf-xl-arndale blocked test-amd64-amd64-xl-credit1 blocked test-arm64-arm64-xl-credit1 blocked test-armhf-armhf-xl-credit1 blocked test-amd64-amd64-xl-credit2 blocked test-arm64-arm64-xl-credit2 blocked test-armhf-armhf-xl-credit2 blocked test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-freebsd10-i386 blocked test-amd64-amd64-qemuu-nested-intel blocked test-amd64-amd64-xl-pvhv2-intel blocked test-amd64-i386-qemuu-rhel6hvm-intel blocked test-amd64-amd64-dom0pvh-xl-intel blocked test-amd64-amd64-libvirt blocked test-armhf-armhf-libvirt blocked test-amd64-i386-libvirt blocked test-amd64-amd64-xl-multivcpu blocked test-armhf-armhf-xl-multivcpu blocked test-amd64-amd64-pair blocked test-amd64-i386-pair blocked test-amd64-amd64-libvirt-pair blocked test-amd64-i386-libvirt-pair blocked test-amd64-amd64-xl-pvshim blocked test-amd64-i386-xl-pvshim blocked test-amd64-amd64-pygrub blocked test-armhf-armhf-libvirt-qcow2 blocked test-amd64-amd64-xl-qcow2 blocked test-arm64-arm64-libvirt-raw blocked test-armhf-armhf-libvirt-raw blocked test-amd64-i386-libvirt-raw blocked test-amd64-amd64-xl-rtds blocked test-armhf-armhf-xl-rtds blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-amd64-xl-shadow blocked test-amd64-i386-xl-shadow blocked test-arm64-arm64-xl-thunderx blocked test-amd64-amd64-libvirt-vhd blocked test-arm64-arm64-xl-vhd blocked test-armhf-armhf-xl-vhd blocked test-amd64-i386-xl-vhd blocked ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 20547 lines long.) From xen-devel-bounces@lists.xenproject.org Thu Jun 22 15:01:49 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 15:01:49 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553661.864341 (Exim 4.92) (envelope-from ) id 1qCLoU-000534-Gv; Thu, 22 Jun 2023 15:01:34 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553661.864341; Thu, 22 Jun 2023 15:01:34 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCLoU-00052x-E9; Thu, 22 Jun 2023 15:01:34 +0000 Received: by outflank-mailman (input) for mailman id 553661; Thu, 22 Jun 2023 15:01:32 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCLoS-00052r-JB for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 15:01:32 +0000 Received: from raptorengineering.com (mail.raptorengineering.com [23.155.224.40]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id aadc6c0f-110d-11ee-b237-6b7b168915f2; Thu, 22 Jun 2023 17:01:30 +0200 (CEST) Received: from localhost (localhost [127.0.0.1]) by mail.rptsys.com (Postfix) with ESMTP id 84FE2828522F; Thu, 22 Jun 2023 10:01:28 -0500 (CDT) Received: from mail.rptsys.com ([127.0.0.1]) by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032) with ESMTP id V0tCcT_M1YKN; Thu, 22 Jun 2023 10:01:27 -0500 (CDT) Received: from localhost (localhost [127.0.0.1]) by mail.rptsys.com (Postfix) with ESMTP id 8712A828595B; Thu, 22 Jun 2023 10:01:27 -0500 (CDT) Received: from mail.rptsys.com ([127.0.0.1]) by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id gXV4KVHAOc46; Thu, 22 Jun 2023 10:01:27 -0500 (CDT) Received: from [10.11.0.2] (5.edge.rptsys.com [23.155.224.38]) by mail.rptsys.com (Postfix) with ESMTPSA id 0F9D2828522F; Thu, 22 Jun 2023 10:01:26 -0500 (CDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: aadc6c0f-110d-11ee-b237-6b7b168915f2 DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com 8712A828595B DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD; t=1687446087; bh=Y9A7M+/J3y7ZwyShecMfpHdNzK//yoeonPj7SAgm/Z8=; h=Message-ID:Date:MIME-Version:To:From; b=eLEJuk15anOo7rSBPq9NfG31ye6nbTFD0HwQ1ZFOYBgPKLVYIbjI0j1Kx2ZyOibCR C4pfdSVjH6O4JQ7ODeGbUYbb0YcA0gtE177eoxX10rsI0Eb13uOzwh9fEuMJSGjY7W Nh0byIYqgzLcXoLzTRxJkuVPbwJlWiFXh4jNJLxI= X-Virus-Scanned: amavisd-new at rptsys.com Message-ID: <1cfc72ee-4920-6b03-0654-85e9108edcdd@raptorengineering.com> Date: Thu, 22 Jun 2023 10:01:26 -0500 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux ppc64le; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH 3/4] xen/ppc: Implement early serial printk on pseries To: Jan Beulich Cc: tpearson@raptorengineering.com, Andrew Cooper , xen-devel@lists.xenproject.org References: <259298cdadf7cf1eba08cd35c636e9aca9e2182a.1687366665.git.sanastasio@raptorengineering.com> <692e2955-a85d-3c6c-7730-962956f6ebf6@citrix.com> <8ac54b2e-b074-18eb-38bf-1041a8109d7b@raptorengineering.com> Content-Language: en-US From: Shawn Anastasio In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit On 6/22/23 3:03 AM, Jan Beulich wrote: > On 21.06.2023 20:21, Shawn Anastasio wrote: >> On 6/21/23 12:54 PM, Andrew Cooper wrote: >>> Given: >>> >>> #define r0 0 >>> >>> do the assemblers really not understand register names? That seems mad. >> >> Yeah as surprising as it is, ppc64 assemblers don't handle register >> names by default. I think at some point a flag was added to GAS (and >> probably llvm? will have to check) to define them for you, but I'm not >> sure which version introduced the flag. > > Isn't it that you simply need to prefix them with %? That looks to be > working for me without any special options in PPC code I maintain for > an entirely different purpose. Yes, this is the approach I'll go with. Originally I wanted to preserve the non-prefixed syntax, but I discovered that the required flag (-mregnames) is not supported by llvm. > Jan Thanks, Shawn From xen-devel-bounces@lists.xenproject.org Thu Jun 22 15:05:28 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 15:05:28 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553665.864350 (Exim 4.92) (envelope-from ) id 1qCLs8-0005eC-T5; Thu, 22 Jun 2023 15:05:20 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553665.864350; Thu, 22 Jun 2023 15:05:20 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCLs8-0005e5-QN; Thu, 22 Jun 2023 15:05:20 +0000 Received: by outflank-mailman (input) for mailman id 553665; Thu, 22 Jun 2023 15:05:19 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCLs7-0005dz-Bd for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 15:05:19 +0000 Received: from mail-wr1-x42e.google.com (mail-wr1-x42e.google.com [2a00:1450:4864:20::42e]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 32462e91-110e-11ee-8611-37d641c3527e; Thu, 22 Jun 2023 17:05:16 +0200 (CEST) Received: by mail-wr1-x42e.google.com with SMTP id ffacd0b85a97d-31272fcedf6so4228514f8f.2 for ; Thu, 22 Jun 2023 08:05:16 -0700 (PDT) Received: from EMEAENGAAD19049. (default-46-102-197-194.interdsl.co.uk. [46.102.197.194]) by smtp.gmail.com with ESMTPSA id t13-20020adff60d000000b003119633ecb5sm7197472wrp.88.2023.06.22.08.05.15 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 22 Jun 2023 08:05:16 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 32462e91-110e-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cloud.com; s=cloud; t=1687446316; x=1690038316; h=in-reply-to:content-disposition:mime-version:references:subject:cc :to:from:date:message-id:from:to:cc:subject:date:message-id:reply-to; bh=fanvZ+Zy+ZA6GiSa2e3JgPYvG9aa0C9eMyVaDXuAmo4=; b=OyTkfDwZ7l9VmNbAazsa/DSPfeC8LkiZSg7XieM8qSd6r/9ZB1XU9Cr3CoPAaiRsmy wUnvEdKfbVIaycsnTHr89EoQTw4MjFrQixIHqY0q6SwOufHNOViCcr2c71iJIHiqKED9 SFIV3sFW9N/+oblnV/b692kClV9RXLW8Pe4YY= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687446316; x=1690038316; h=in-reply-to:content-disposition:mime-version:references:subject:cc :to:from:date:message-id:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=fanvZ+Zy+ZA6GiSa2e3JgPYvG9aa0C9eMyVaDXuAmo4=; b=GOMNgf9Yfz4NxIQsQrz8x6FdWh5bg5nZux9trzAhjImAMObJJk/1ewMitc88rxxlCZ qfdPUoo1WDrR6cQgPo0WW56gZlmENZeoV3+8yR4WhuxGbYA71c7jlCvu76ZxeC3ddxjK 3wri1YeLYFmBNvvmQOOj4mIQpzwJdGZbBeFL4swCJju8zYcexnf5veDnNCuKbPfZBdBX vrPEqJZeX8vUkd1axnYYkR/E8sXGTKjVFk+bdZf5JoIBIpslH2rkW6eSSIlVEZ/YprtA 1QBRAbrRnOOWOi01P3jBcZDh+v+dktjp8YZf0k5zvgAmnsJndTq3G6QY4z5eekWpb82Y CHCQ== X-Gm-Message-State: AC+VfDwxGVLLE8TBu1h88IkgB4pQ/w08zcDb4MrRdFgfO6PvBqK45RVN xyXghygsfwaNgbHWdNZek/sJaw== X-Google-Smtp-Source: ACHHUZ6ZPDdyz0I05p1VsGih0+D7ParzXip7S/ZLKA+G+h1iVELbUKEM2mISSK6AB1vBWOm9Fu3w7g== X-Received: by 2002:a5d:55c3:0:b0:311:112d:eaeb with SMTP id i3-20020a5d55c3000000b00311112deaebmr13033004wrw.33.1687446316238; Thu, 22 Jun 2023 08:05:16 -0700 (PDT) Message-ID: <6494632c.df0a0220.3b155.47fe@mx.google.com> X-Google-Original-Message-ID: Date: Thu, 22 Jun 2023 16:05:14 +0100 From: Alejandro Vallejo To: Jan Beulich Cc: Andrew Cooper , Roger Pau =?iso-8859-1?Q?Monn=E9?= , Wei Liu , Xen-devel Subject: Re: [PATCH v3 5/5] x86/microcode: Disable microcode update handler if DIS_MCU_UPDATE is set References: <20230615154834.959-1-alejandro.vallejo@cloud.com> <20230615154834.959-6-alejandro.vallejo@cloud.com> <37caa77c-f3ee-3bee-951e-cc0ea417f539@suse.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <37caa77c-f3ee-3bee-951e-cc0ea417f539@suse.com> On Tue, Jun 20, 2023 at 11:51:00AM +0200, Jan Beulich wrote: > On 15.06.2023 17:48, Alejandro Vallejo wrote: > > --- a/xen/arch/x86/cpu/common.c > > +++ b/xen/arch/x86/cpu/common.c > > @@ -352,6 +352,11 @@ void __init early_cpu_init(void) > > &c->x86_capability[FEATURESET_7c0], > > &c->x86_capability[FEATURESET_7d0]); > > > > + if (test_bit(X86_FEATURE_ARCH_CAPS, c->x86_capability)) > > + rdmsr(MSR_ARCH_CAPABILITIES, > > + c->x86_capability[FEATURESET_m10Al], > > + c->x86_capability[FEATURESET_m10Ah]); > > Is this still going to be needed if early_microcode_init() uniformly > does this, for things to be correct for tsx_init() (as pointed out > in the other patch)? Yes. This is needed so MSR_ARCH_CAPS are available in order to check DIS_MCU_LOAD before the microcode update itself. early_cpu_init() does the read before the microcode update, while early_microcode_init() refreshes the fields that might have been modified after the update AND are needed before the general CPU detection logic. > > > --- a/xen/arch/x86/cpu/microcode/intel.c > > +++ b/xen/arch/x86/cpu/microcode/intel.c > > @@ -387,8 +387,22 @@ static struct microcode_patch *cf_check cpu_request_microcode( > > > > void __init intel_get_ucode_ops(struct microcode_ops *ops) > > { > > + uint64_t mcu_ctrl; > > + > > ops->cpu_request_microcode = cpu_request_microcode; > > ops->collect_cpu_info = collect_cpu_info; > > ops->apply_microcode = apply_microcode; > > ops->compare_patch = compare_patch; > > + > > + if ( cpu_has_mcu_ctrl ) > > + { > > + rdmsrl(MSR_MCU_CONTROL, mcu_ctrl); > > + /* > > + * If DIS_MCU_LOAD is set applying microcode updates won't work. We > > + * can still query the current version and things like that, so > > + * we'll leave the other handlers in place. > > + */ > > + if ( mcu_ctrl & MCU_CONTROL_DIS_MCU_LOAD ) > > + ops->apply_microcode = NULL; > > + } > > While this won't address Andrew's request (afaict), but only the > cf_clobber requirement, I think you want to drop removing of the struct > instances from patch 2, return pointers from the new per-vendor > functions, and simply introduce another static instance of struct > microcode_ops here, with the one hook simply left unset. This lives in > init data, so the size increase is of no major concern. > > Jan As mentioned in other email. This is my bad for not having understood the ultimate readon for cf_clobber. I'll just leave the structs as is. Alejandro From xen-devel-bounces@lists.xenproject.org Thu Jun 22 15:20:53 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 15:20:53 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553670.864360 (Exim 4.92) (envelope-from ) id 1qCM6s-00082K-50; Thu, 22 Jun 2023 15:20:34 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553670.864360; Thu, 22 Jun 2023 15:20:34 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCM6s-00082D-2I; Thu, 22 Jun 2023 15:20:34 +0000 Received: by outflank-mailman (input) for mailman id 553670; Thu, 22 Jun 2023 15:20:33 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCM6r-000827-4O for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 15:20:33 +0000 Received: from EUR04-DB3-obe.outbound.protection.outlook.com (mail-db3eur04on062c.outbound.protection.outlook.com [2a01:111:f400:fe0c::62c]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 5375ec72-1110-11ee-b237-6b7b168915f2; Thu, 22 Jun 2023 17:20:31 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by AM0PR04MB6787.eurprd04.prod.outlook.com (2603:10a6:208:18a::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.23; Thu, 22 Jun 2023 15:20:28 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6521.024; Thu, 22 Jun 2023 15:20:27 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 5375ec72-1110-11ee-b237-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=kL02SdWhzS0vuWL9Y6w7aNi3wIF+ZtajDiTyhEl1Poz9c/xPFlLBX8IY8cIg1syLAWl8UJKJqRpkGF6heaMtB4D9JtHiAGPcJ41suNq+mlY1cs0neagd+E8bSRQly3e9+1CjnSxq3Y7HGecGM9+m1DbuHaEDJfFfG9iVCQYSPLt4ivvjOEr5RmqlhjSNIdUF/B0B0w0viD+q568kky9FY3Fa1e5XBhTuFS5EWCYazy7P74iVZQQvgjzJDKIya915uo2OrYLQ6GW7CxGOhKmo4wAAMnc6ONbscICMpVCZFfWdXMoTFSImgyhLZ1GWpuaPuQzb/u0H25kS8HtY/touOw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=LCnTUxcpzelRvQ9J5ayRgVcl2p/zPivpbtNGU/ZjXQM=; b=Je35z1iYDrPIDQaGs+u8TOf23NvTPUn+VpkcLczzHhW/AEWUIHk0P/v9/d4nnnvG913vmFZvfV51LbpgivRDxAzbiVkBxvMn+AjbysEkbfjv8KiFWnr/NWvkaytH6fIGqRZ3DDI0zCpfV/U1H2jey36RUxl2S4I8VpbI0g/OUCA+VOI203jewoRCIMBKLwBtSg0y6lzEBViJ0RVDTzgMWilIjrSUZUDh1g+FzlTpP4ENeozK5osdtRq5+aHex6htTsUnabxhOiMySDSYFFh68qN6cVxQPIX4mC+sO9kiTKFa7P8Maw/SiRunNwxoek5eaL9oKxMsaZYwfodWcD3ExA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=LCnTUxcpzelRvQ9J5ayRgVcl2p/zPivpbtNGU/ZjXQM=; b=vw6GvuHlTpskHWYlanO+SDv+SxVTaKYo6/SoiHBYDMFVcQK8F8iWI2wMWu+qqEm+1YrdL4PixHucOSvOqg6/n13KesDozjQOnAe/P0Z0rNsHbkvJVyvsOe0oFxmSUNDbPPvcUqD4nOKYcD0Cx92K4S5jiEShm6J1Hy9Xov8zvO1Kna0aDPdOoOx50Z5EKwBBD5Lo5le/l2rTwjCcDCk63CYoZa43t5egtxZCFfl72ZQQntCbKEKNMHOXHTUEIqMm4qMzBsJyXMYW6IK6pITrtVjASeHVC64ZBJQFxxDZGDFg1H09volnKUgGFbTYo1Yd34//W/yJZncPTyeWp/oOsQ== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: Date: Thu, 22 Jun 2023 17:20:25 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v3 4/5] x86: Read MSR_ARCH_CAPS immediately after early_microcode_init() Content-Language: en-US To: Alejandro Vallejo Cc: Andrew Cooper , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , Xen-devel References: <20230615154834.959-1-alejandro.vallejo@cloud.com> <20230615154834.959-5-alejandro.vallejo@cloud.com> <649460c6.df0a0220.f4bf6.4717@mx.google.com> From: Jan Beulich In-Reply-To: <649460c6.df0a0220.f4bf6.4717@mx.google.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR0P281CA0092.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:a9::13) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|AM0PR04MB6787:EE_ X-MS-Office365-Filtering-Correlation-Id: 27477917-6b9c-4e91-156e-08db7334355a X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: Y3Do6uJkbQAdlwl1+p/9pzQoh1Wr/R0sNQJOZMOVLD+6fYBIaet1uoC98fnOh4GmPDimHj+Map8gvdW4JcMZOAjslcAFh+zAgNwTRSk1TkROYHPLZT2i7bOTtEKkOzjzgSNiqXBbwToCfOIVydOu8jKgVLMd/FhrRHdfMwvsiBnO2Qb8MlrafhoiiiKeKpaico4g2BhIfLmVZTPZ+rI9fak4KLzWUY4x460WdYVRRmpO4ww7RJMewhE2Q64w4d9ksr5b+nivdF0eCxRgsbJlJiLRFgQWUaPehO1m2LoHnDa16yyQu76TmSFXdPFKvwJvqjj77s185hVaFs9MBDH+HOmnYDtbsb3PF7Ftk83cpSgT2l7jHrIR0UktIf2GBbG3ugcNvOZ6VWFhSOMFQr4DKKBu8y9IETPZ8eGCOP+K5EKMvgdh1Q9agsUsq6QD7Wz5IJ+bN+0/P4EKT/2fSpvB87aCS0Nn4J1ZjoCDinzU5fukijq0HVwXq7GLwaXlIN/lDYF9m6lNTHaKosDNHy72NvVJdBTX/3ZHLZ53aY0gxaZUAnintKtfWjes9uCHnr7e7YRYywrlxEC34Cwp8ag6aT1CExsx33AvPqZ0ibLPzZle5r9U41bAgiLjwz9RvB4xrn+JocV+Q9BW9bv01XvZOJoxWsjgLCcf0Umz+ES3dFE= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(136003)(376002)(396003)(39860400002)(346002)(366004)(451199021)(36756003)(6486002)(83380400001)(54906003)(478600001)(2616005)(53546011)(6506007)(4744005)(6512007)(2906002)(186003)(6916009)(66556008)(5660300002)(66946007)(38100700002)(316002)(31696002)(8676002)(8936002)(66476007)(4326008)(86362001)(41300700001)(31686004)(26005)(14773001)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?VDQwZHdNdnNMU1VSS0tLSE5QUXZ0cHpFSm1va0tYQmFSKy9LNjVIOVJWVG9K?= =?utf-8?B?SzBOWEsrV1lCTlRPYzY5cGZ6enBoV3FuTDZvcm5rZS9TOHFaa1NzZ1NEQmp1?= =?utf-8?B?VDNyNzIwSVord3FmUk9veGh5WDg0aFF5TkVobkZyeTVQWkhlZXFveGJOS0cy?= =?utf-8?B?RmQ2UjlQNWEyUXhIUng1TG5WRlNEY09UYzhDQ05rcS8wdGN5enYyZy9DM2VY?= =?utf-8?B?cnhNZXBKRXFCNWRESVc3cnNHK1dEc1lRYnluNm9OT25zRDFtVzdQb2Urb1VB?= =?utf-8?B?aFJkZXFJWlQ5QXRWQjlBRHQycGJWT0ErMG03MGlBUzFHVnBTY1VEYVZHZkxS?= =?utf-8?B?L1Y4NjhKenNJY1hsWDZsTk1BTnEyUE5XQ1NKZk9velVGcDBwcjBrZm9ISnBW?= =?utf-8?B?dCtFVUFuc1dxc20vME9qMDQvdnBXQVVmTXJabEtKQnhrYVFDNUt1emhJaDVu?= =?utf-8?B?Y0FzUW5KQkNFZG9lcFNxaitxQWMzcmk0Z1FINkU5ZWN1RWNYT01xVlhhaDU1?= =?utf-8?B?NjExcnkwMmdiZm9kUmdrSCt1NTRiV0ovM2RzNDFDT29qWXhYVjl5cmlnMkxM?= =?utf-8?B?WmhDUGwwcHJ2ci9MK0IwVU9McDQyYmRISXo1T1ZyaEFQbXVDVTNYMzAxd1oy?= =?utf-8?B?TmZEZy9pTFFFSUtIRWFFeEhaZW9jTXRTeUszWmxOemNrNEFwYzNvYTJJMUxq?= =?utf-8?B?bFZtc3Y2dkhMOUhIVWdVRFNHY2JZK0JvRnlDOCt5bGwwcm5QU3RFekZzVTRv?= =?utf-8?B?Z05Ec01jOHVaajBSZDNRQzVOZ1VCMTVDcHpFRkJkMmZmZkFiSGZCNkxCUmVV?= =?utf-8?B?RGFMZk5rVG5BajBkeTFrdGtqZEdVWGFyem41bDJQb2N3Wll5cTZqRXJycEFm?= =?utf-8?B?OU9rNWMxRTZZRFA1Z01veE83VDVJMGRKNHdMM3JWaEdBMk5mcmhEbEJvckRz?= =?utf-8?B?NG9YSmNleUlEZDVnTTZod1ZTZWdSNk9JeXhocVJ5ODNiOU1vdGI3cStHKzFy?= =?utf-8?B?R2JhNWI0UTNsQzduY2k5eVdGbjFtQUdKTWkwWXZlR1NiSDhXT2dUeCswUy9x?= =?utf-8?B?ZGYydWVibDNhc00xVnNZNkE0b0ZiYi9uVHVRYnpnTTBDK1o0VXdIMWdCMDRJ?= =?utf-8?B?S0FIOUJaWFdZTkVRTXkwL3U3TjBVSWtOL0dKNE9QU0J4b0RqRFE3UnY0NHVu?= =?utf-8?B?a254NGl2NFFCV3MxYStuMEhBQ0hhaGdXQUpNNGRBc2pQQVgwcWZlYnRRQ2ln?= =?utf-8?B?dUlCRGJReWpwcitEWjlxTFJVc0lDcVpDOXNnQkJoNXZrN1BkMXduVmFLTHBI?= =?utf-8?B?eUdGOHF5cUxqWEdzeGFOSEF6K2ZWRE5rQk03Tzd2TlAxc3FtZzA3RXZWL24x?= =?utf-8?B?aGJKVkowRWJ5TXd2OEV2TEdCZmZZQmZJL1ZUVFhrZWgvTVJxUzVGSWNUQ2VZ?= =?utf-8?B?eDNsMFU1VWRiVDNITlJHeFV1TzlCNS9Ra0N6dENXemVZbHhzTVZGSW5pS1ZO?= =?utf-8?B?c1ZwZ3Z4NkN1M3hIRzFYb2tZcmpBeXZPWWt3S1dPWXErUWRMSDRzaVRxbE1q?= =?utf-8?B?V3pWbGcvR0lDbTE0ODZIT2tvS0ROYmJnUko4WFFRK3hvdzB4UnJla3pSZmla?= =?utf-8?B?SkIzd091aEdCTFlJVGJIVGt4Q2JCd2ZBK2RzMEtKbng5N3BQQko4VlNhTHEw?= =?utf-8?B?Q0YzZXhhVEZWdzZSS2QwTkZRaSszNHU1NUYwOGMwOUVvdC96aU9SMFJyR2M2?= =?utf-8?B?Qm1wS1VCaFRaN0V0MVU5ZXh6S2VwWjlobnVuYnZXR2d1cDZSMnZwU1YwOVY4?= =?utf-8?B?U29xSnEzcFozRTdoN2puYXZFTkptZHpNU24zdC9PWit1Q1U2VUxxaTV0Skpk?= =?utf-8?B?QnE1ZFJUcXMvb0ZxV2YwcFd0dTRmZ3ZIRWFvZlp6d0tVN05uTWkwZHdJa0Yx?= =?utf-8?B?RmtnY2FXSWkzdCsrYmVCY2lkL1Jac0k0WU5VYUxIUVhkNWY5NkN2bUtka052?= =?utf-8?B?bldwT282Z3FYQkJmR0YyZTdFSENLbU01Q3IyZ3Jxc1drSkpMQ25hRDRBVUVs?= =?utf-8?B?QURKdkZBakhQQ2h1czgvTWU0T2ZZZGFZekVoYlhvVTlkdTZzR1NadXNKUEVn?= =?utf-8?Q?kXg5dvaSG/RlTFgz1ifWDQ3rX?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 27477917-6b9c-4e91-156e-08db7334355a X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 22 Jun 2023 15:20:27.4992 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: lHYt8fulsv9YG/4WS3dIZ4LGPkohUay3jQ1R+2bN9fqhNIvQRPLiRtIkpYqOAVtzRLVZhWhXmpNswtrpO8rdVw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0PR04MB6787 On 22.06.2023 16:55, Alejandro Vallejo wrote: > On Mon, Jun 19, 2023 at 05:57:14PM +0200, Jan Beulich wrote: >>> + if ( boot_cpu_data.cpuid_level >= 7 ) >>> + boot_cpu_data.x86_capability[FEATURESET_7d0] >>> + = cpuid_count_edx(7, 0); >> >> I take it we assume the maximum CPUID level won't go from below 7 to 7 >> or higher with the ucode update? > Do you mean from >=7 to <7 instead? Otherwise it just works and I don't > undertand the concern. No, I mean going from <7 to >=7. In such a case the earlier recorded .cpuid_level will prevent the leaf 7 read, and hence also the possible discovery of ARCH_CAPS having appeared. I actually wonder whether it wouldn't be better to re-run the whole of early_cpu_init() from here again. Jan From xen-devel-bounces@lists.xenproject.org Thu Jun 22 15:31:18 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 15:31:18 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553675.864371 (Exim 4.92) (envelope-from ) id 1qCMH0-00017H-2e; Thu, 22 Jun 2023 15:31:02 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553675.864371; Thu, 22 Jun 2023 15:31:02 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCMGz-00017A-W1; Thu, 22 Jun 2023 15:31:01 +0000 Received: by outflank-mailman (input) for mailman id 553675; Thu, 22 Jun 2023 15:31:01 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCMGz-00016o-Bk for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 15:31:01 +0000 Received: from esa1.hc3370-68.iphmx.com (esa1.hc3370-68.iphmx.com [216.71.145.142]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id c899aebc-1111-11ee-b237-6b7b168915f2; Thu, 22 Jun 2023 17:30:59 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: c899aebc-1111-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1687447859; h=from:to:cc:subject:date:message-id:mime-version: content-transfer-encoding; bh=N7Z9i/yFILbVIDzapsZ/aOY65dkOvf6ZeRxJLnx2AHA=; b=VZ6s4WPSV++7P/H4TQslgnyX3nGW7TUcJ9mDbZaZZdcb7qHt8O1Y3I8m LWIXS2HnHaIag+12dnspNqnfybOfHCMJLJ8JUIszqvJ+W7arpZfx0D6vu MUG2cTERmZMrq3yWux/nxRrwPTOxm9yWek0gDSF53EkR0ad0WlacgU9np U=; Authentication-Results: esa1.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none X-SBRS: 4.0 X-MesageID: 114179871 X-Ironport-Server: esa1.hc3370-68.iphmx.com X-Remote-IP: 162.221.156.123 X-Policy: $RELAYED IronPort-Data: A9a23:GTC336PKJfgNP8jvrR1Xl8FynXyQoLVcMsEvi/4bfWQNrUp0hGEHz zYfDzqPOPmMZTCkeIgkbdu2oBtTusTWz9BqSQto+SlhQUwRpJueD7x1DKtS0wC6dZSfER09v 63yTvGacajYm1eF/k/F3oDJ9CU6jufQAOKnUoYoAwgpLSd8UiAtlBl/rOAwh49skLCRDhiE/ Nj/uKUzAnf8s9JPGjxSs/vrRC9H5qyo42tG5AZmOZingXeF/5UrJMNHTU2OByOQrrl8RoaSW +vFxbelyWLVlz9F5gSNy+uTnuUiG9Y+DCDW4pZkc/HKbitq/0Te5p0TJvsEAXq7vh3S9zxHJ HehgrTrIeshFvWkdO3wyHC0GQkmVUFN0OevzXRSLaV/ZqAJGpfh66wGMa04AWEX0t9zJWt3/ /IYEh8ibjuyn760muu8W9A506zPLOGzVG8eknRpzDWfBvc6W5HTBa7N4Le03h9p2JoIR6yHI ZNEN3w2Nk+ojx5nYz/7DLo3mvuogX/uNSVVsluPqYI84nTJzRw327/oWDbQUoXTGZwKzxbH/ woq+UykJyNZO8S+9wDc9yLzqajkgQLVB5wrQejQGvlC3wTImz175ActfUu2p7y1h1CzX/pbK lcI4Ww+oK4q7kupQ9LhGRqirxastRkaXd1SH+Qk6Rqlxa/d4gLfDW8BJhZIbN09qMY3X3okz FaPlNLyLSNju/ueTnf13rWJqTK/PwAFIGlEYjULJSMH6dT+pIA4jjrUU81uVqWyi7XdBjXY0 z2M6i8kiN07ltUX3q+2+VTGhTOEpZXTSAMxoALNUQqN5ARzbp+ofIys5F3S695PKY+YSh+Ku 31spiSFxLlQV9fXznXLGbhTWujzvJ5pLQEwn3ZWG70rzj6j+0SMUoB70SkiJh0wNdc9LGqBj FDohe9B2HNCFCL0PfAsPdLvV5RCIbvIToq8CK2NBjZaSt0oLVLconkzDaKF9zq1+HXAh53TL ntynSyEKX8BQZpqwzOtLwv2+e96n3turY8/qH2S8vhG7VZ9TCTPIVv9GAHSBt3VFYvdyOkvz /5RNtGR1zJUW/Dkby/c/OY7dA5aciNkX8qm85EMJ4ZvxzaK/kl7UJc9Jpt7IeRYc1l9zL+Ur hlRpGcGoLYAuZE3AVrTMS0yAF8edZ1+sWg6LUQR0aWAghAejXKUxP5HLfMfJOB3nNGPONYoF 5Hpje3cWKUQItkGkhxBBaTAQHtKLU/12VnQYHr5OVDSvfdIHmT0xzMtRSO3nAFmM8Z9nZJWT 2GIvu8Dfac+eg== IronPort-HdrOrdr: A9a23:DkhWyKBmpSi+wovlHemT55DYdb4zR+YMi2TDGXoBMCC9E/bo7/ xG+c5w6faaskd1ZJhNo6HjBEDEewK+yXcX2+gs1NWZLW3bUQKTRekI0WKh+V3d8kbFh4lgPM lbAs5D4R7LYWSST/yW3OB1KbkdKRC8npyVuQ== X-Talos-CUID: 9a23:Ew6K5mPByoCl7u5DYS1D/nceFMAfXVLd50bIf03iUGF4cejA X-Talos-MUID: 9a23:N7VjkQjIHpG+LLzCwmWkkcMpaeJaoKu2KX43yJBW5ObDHjBRFWiDtWHi X-IronPort-AV: E=Sophos;i="6.01,149,1684814400"; d="scan'208";a="114179871" From: Anthony PERARD To: CC: Anthony PERARD , George Dunlap , Connor Davis , "Alistair Francis" , Julien Grall , "Andrew Cooper" , Jan Beulich , Wei Liu , Stefano Stabellini , Bob Eshleman Subject: [XEN PATCH v2 0/5] build: reduce number of $(shell) execution on make 4.4 Date: Thu, 22 Jun 2023 16:30:00 +0100 Message-ID: <20230622153005.31604-1-anthony.perard@citrix.com> X-Mailer: git-send-email 2.39.2 MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit Patch series available in this git branch: https://xenbits.xen.org/git-http/people/aperard/xen-unstable.git br.build-exported-shell-command-value-v2 v2: - new patches removing TARGET_SUBARCH and TARGET_ARCH. - style change in first patch With GNU make 4.4, the number of execution of the command present in $(shell ) in exported variables increased greatly. This is probably because as of make 4.4, exported variable are also added to the environment of $(shell ) construct. >From the annoncement: https://lists.gnu.org/archive/html/info-gnu/2022-10/msg00008.html > * WARNING: Backward-incompatibility! > Previously makefile variables marked as export were not exported to commands > started by the $(shell ...) function. Now, all exported variables are > exported to $(shell ...). If this leads to recursion during expansion, then > for backward-compatibility the value from the original environment is used. > To detect this change search for 'shell-export' in the .FEATURES variable. Also, there's a new paragraph in the GNU make manual, but it's a warning about exporting all variable, still it might be relevant to the new observed behavior: https://www.gnu.org/software/make/manual/make.html#Variables_002fRecursion > Adding a variable’s value to the environment requires it to be expanded. If > expanding a variable has side-effects (such as the info or eval or similar > functions) then these side-effects will be seen every time a command is > invoked. The issue was reported on IRC by jandryuk. So, I've locate a few obvious candidate to fix, maybe there's more $(shell) to change? Anthony PERARD (5): build: define ARCH and SRCARCH later build: remove TARGET_SUBARCH, a duplicate of ARCH build: remove TARGET_ARCH, a duplicates of SRCARCH build: evaluate XEN_BUILD_* and XEN_DOMAIN on first use Config.mk: evaluate XEN_COMPILE_ARCH and XEN_OS on first use Config.mk | 6 +++--- xen/Makefile | 40 ++++++++++++++++++---------------------- xen/Rules.mk | 2 +- xen/arch/riscv/arch.mk | 2 +- xen/build.mk | 6 +++--- 5 files changed, 26 insertions(+), 30 deletions(-) -- Anthony PERARD From xen-devel-bounces@lists.xenproject.org Thu Jun 22 15:32:53 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 15:32:53 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553681.864381 (Exim 4.92) (envelope-from ) id 1qCMIc-0001iR-Ij; Thu, 22 Jun 2023 15:32:42 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553681.864381; Thu, 22 Jun 2023 15:32:42 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCMIc-0001iK-E9; Thu, 22 Jun 2023 15:32:42 +0000 Received: by outflank-mailman (input) for mailman id 553681; Thu, 22 Jun 2023 15:32:41 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCMIb-0001iC-2o for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 15:32:41 +0000 Received: from esa3.hc3370-68.iphmx.com (esa3.hc3370-68.iphmx.com [216.71.145.155]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 036c8ead-1112-11ee-8611-37d641c3527e; Thu, 22 Jun 2023 17:32:38 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 036c8ead-1112-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1687447958; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=1lTKcVu/gYpVx0+6nqaYJrrG/G7Xsm897hhlwGEvekQ=; b=XKqIbffQRSwwDQ3LX9ztP6fA8kSJjLjhWOCRX3T1H5a0ftj1Vy+PQagw XQH8pl2CmayniuO8l5inH4ckcnT3zQMOkEow9Y4itz/MF2UWvGURfGsel NXJ+O39C6IkEfh2MnzT3oUuQ1X3Yk5NeNiN85bDA4PTVeR3exV3SyucLl E=; Authentication-Results: esa3.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none X-SBRS: 4.0 X-MesageID: 113786839 X-Ironport-Server: esa3.hc3370-68.iphmx.com X-Remote-IP: 162.221.156.123 X-Policy: $RELAYED IronPort-Data: A9a23:iuv7Iqw9tACFTZ9OvF16t+fzxirEfRIJ4+MujC+fZmUNrF6WrkVUn GtKDG/QOareMWbyfYogaoq2ox9XsZOAm4IyGwM6qyAxQypGp/SeCIXCJC8cHc8wwu7rFxs7s ppEOrEsCOhuExcwcz/0auCJQUFUjP3OHfykTrafYEidfCc8IA85kxVvhuUltYBhhNm9Emult Mj75sbSIzdJ4RYtWo4vw/zF8EoHUMja4mtC5QRgP6oT4DcyqlFOZH4hDfDpR5fHatE88t6SH 47r0Ly/92XFyBYhYvvNfmHTKxBirhb6ZGBiu1IOM0SQqkEqSh8ai87XAME0e0ZP4whlqvgqo Dl7WT5cfi9yVkHEsLx1vxC1iEiSN4UekFPMCSDXXcB+UyQq2pYjqhljJBheAGEWxgp4KX9r7 PZAJSAfVA6CjsSG0vG3evFnmNt2eaEHPKtH0p1h5TTQDPJgSpHfWaTao9Rf2V/chOgXQ6yYP ZBAL2MyMlKZOUYn1lQ/UfrSmM+hgGX/dDtJ7kqYv6Mt70DYzRBr0airO93QEjCPbZwMxRnI+ DKdrgwVBDkDLMCU8RqOwkiLi+qVgQr2ZtNCJYaRo6sCbFq7mTVIVUx+uUGAiem0jAuyVsxSL 2QQ+zEytu4i+UqzVN7/Uhak5nmesXY0WdNWH/cr9QKlxa/d4gLfDW8BJhZDYtE7sM49RRQxy 0SE2djuAFRHsqCRSH+b3qeZq3W1Iyd9BXQZeSYOQA8B4t/iiII+lBTCSpBkCqHdpsLxMSH9x XaNtidWulkIpZdVjePhpwmB2m/y4MGTFWbZ+zk7QEq7yxpzPIO1dba26FH93eQDILaBRUee6 S1sd9el0AweMX2cvHXTELpWQuH3u6bt3C702gA2QcR4n9i50zv6JN0LvmkjTKt8GpxcEQIFd nM/ru+4CHV7GHKxJZF6bIuqYyjB5fixTI+1Phw4gzcnX3SQSONk1Hs0DaJo9zqx+HXAaIlmU XthTe6iDGwBFYNsxyesSuEW3NcDn35umjiMH8qrl0n8gNJygUJ5r59fazNiichjtsu5TPj9q Y4DZ6NmNT0BOAEBXsUn2dFKdg1bRZTKLZv3t9ZWZoa+zvlOQQkc5wvq6ep5IeRNxv0F/tokC 1nhAie0PnKj3yyYQehLA1g/AI7SsWFX9CllYXdyYgb0ghDOo++Htc8iSnf+RpF/nMQL8BK+Z 6BtlxmoahiXdgn6xg== IronPort-HdrOrdr: A9a23:srkU0qNIso4HTcBcTsejsMiBIKoaSvp037Eqv3ofdfUzSL3+qy nOpoVj6faaslcssR0b9OxofZPwI080lqQFhbX5X43DYOCOggLBR+tfBMnZsljd8kXFh4hgPM xbHZSWZuedMbEDt7eY3DWF X-Talos-CUID: 9a23:Ou4dWG76goH/ttDC2Nss6msNEJgoYm/n0nbZBX+qSmpZULaLVgrF X-Talos-MUID: 9a23:3JLYBQY5lFTaaeBTrifwjwlCP/dSxKmrUlwknKtX6/i/HHkl X-IronPort-AV: E=Sophos;i="6.01,149,1684814400"; d="scan'208";a="113786839" From: Anthony PERARD To: CC: Anthony PERARD , Jason Andryuk , Andrew Cooper , "George Dunlap" , Jan Beulich , "Julien Grall" , Stefano Stabellini , Wei Liu Subject: [XEN PATCH v2 1/5] build: define ARCH and SRCARCH later Date: Thu, 22 Jun 2023 16:30:01 +0100 Message-ID: <20230622153005.31604-2-anthony.perard@citrix.com> X-Mailer: git-send-email 2.39.2 In-Reply-To: <20230622153005.31604-1-anthony.perard@citrix.com> References: <20230622153005.31604-1-anthony.perard@citrix.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain Defining ARCH and SRCARCH later in xen/Makefile allows to switch to immediate evaluation variable type. ARCH and SRCARCH depends on value defined in Config.mk and aren't used TARGET_SUBARCH or TARGET_ARCH, and not before it's needed in a sub-make or a rule. This will help reduce the number of times the shell rune is been run. With GNU make 4.4, the number of execution of the command present in these $(shell ) increased greatly. This is probably because as of make 4.4, exported variable are also added to the environment of $(shell ) construct. Also, `make -d` shows a lot of these: Makefile:39: not recursively expanding SRCARCH to export to shell function Makefile:38: not recursively expanding ARCH to export to shell function Reported-by: Jason Andryuk Signed-off-by: Anthony PERARD Tested-by: Jason Andryuk --- Notes: v2: - change quoting style - change identation xen/Makefile | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/xen/Makefile b/xen/Makefile index e89fc461fc..78d176f04e 100644 --- a/xen/Makefile +++ b/xen/Makefile @@ -35,12 +35,6 @@ MAKEFLAGS += -rR EFI_MOUNTPOINT ?= $(BOOT_DIR)/efi -ARCH=$(XEN_TARGET_ARCH) -SRCARCH=$(shell echo $(ARCH) | \ - sed -e 's/x86.*/x86/' -e s'/arm\(32\|64\)/arm/g' \ - -e s'/riscv.*/riscv/g') -export ARCH SRCARCH - # Allow someone to change their config file export KCONFIG_CONFIG ?= .config @@ -241,6 +235,13 @@ include scripts/Kbuild.include include $(XEN_ROOT)/Config.mk # Set ARCH/SUBARCH appropriately. + +ARCH := $(XEN_TARGET_ARCH) +SRCARCH := $(shell echo $(ARCH) | \ + sed -e 's/x86.*/x86/' -e 's/arm\(32\|64\)/arm/g' \ + -e 's/riscv.*/riscv/g') +export ARCH SRCARCH + export TARGET_SUBARCH := $(XEN_TARGET_ARCH) export TARGET_ARCH := $(shell echo $(XEN_TARGET_ARCH) | \ sed -e 's/x86.*/x86/' -e s'/arm\(32\|64\)/arm/g' \ -- Anthony PERARD From xen-devel-bounces@lists.xenproject.org Thu Jun 22 15:33:02 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 15:33:02 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553682.864390 (Exim 4.92) (envelope-from ) id 1qCMIm-00020N-O6; Thu, 22 Jun 2023 15:32:52 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553682.864390; Thu, 22 Jun 2023 15:32:52 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCMIm-00020G-LG; Thu, 22 Jun 2023 15:32:52 +0000 Received: by outflank-mailman (input) for mailman id 553682; Thu, 22 Jun 2023 15:32:51 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCMIl-0001iC-Jv for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 15:32:51 +0000 Received: from esa4.hc3370-68.iphmx.com (esa4.hc3370-68.iphmx.com [216.71.155.144]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 09eb6ad1-1112-11ee-8611-37d641c3527e; Thu, 22 Jun 2023 17:32:49 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 09eb6ad1-1112-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1687447969; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=K7GhXsQkcFOr4n5Xl8d8vBjHvn10uHxoIpiBKvaS8NA=; b=fEPl22U8n5J0QY6Atbo1XKqtgzfDQIZe7SrmCppEzBktXxTfuo1cYJag DYJstBNjexPOdZ0y/Oh8bLVIcHM/wKIoCl3m1/hHces5uBWcaVP9Drrou OdQNlDuT9iHYPTcrVQJri6q4NHTf5xqciTYyVFsQeAVbSilc+zfAyhPaV o=; Authentication-Results: esa4.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none X-SBRS: 4.0 X-MesageID: 116317366 X-Ironport-Server: esa4.hc3370-68.iphmx.com X-Remote-IP: 162.221.156.123 X-Policy: $RELAYED IronPort-Data: A9a23:XSV19qhDCJrKm5u4oLT2t7fzX161SBAKZh0ujC45NGQN5FlHY01je htvWTyGa62NMTf8etoib4rn9B4EucCBnNZkQFRs+3owRCkb9cadCdqndUqhZCn6wu8v7q5Ex 55HNoSfdpBcolv0/ErF3m3J9CEkvU2wbuOgTrWCYmYpHlUMpB4J0XpLg/Q+jpNjne+3CgaMv cKai8DEMRqu1iUc3lg8sspvkzsx+qyr0N8klgZmP6sT4gWEzyV94K83fsldEVOpGuG4IcbiL wrz5OnR1n/U+R4rFuSknt7TGqHdauePVeQmoiM+t5mK2nCulARrukoIHKN0hXNsoyeIh7hMJ OBl7vRcf+uL0prkw4zxWzEAe8130DYvFLXveRBTuuTLp6HKnueFL1yDwyjaMKVBktubD12i+ tQKFgsSURuPjNiRxZ69dOlh3e1/FdLCadZ3VnFIlVk1DN4jSJHHBa7L+cVZzHE7gcUm8fT2P pRDL2A1NVKZPkMJYw1MYH49tL7Aan3XejtEqFWTtOwv7nLa1gBZ27nxKtvFPNeNQK25m27B/ zydpjuiXE9y2Nq3l2a4y1Wpm+/1hgT8W6c3TLqYy95onwjGroAUIEJPDgbqyRWjsWauVtQaJ 0EK9y4Gqakp6FftXtT7Rwe/onOPolgbQdU4O+8w5RyJy6HUyx2EHWVCRTlEAPQkqcs3SDoCx lKP2dTzClRHq6aJQHiQ8rOVqzKaOiUPK2IGIygeQmMt/N3LsIw1yBXVQb5e/LWd14OvX2uqm nbT8XZ43u9I5SIW60ml1UL5uC2TrZTCdCkwygPpXm/+x19Af6fwMuRE9mPnAeZ8wJexFwfR4 yNay5bCvIjiHrnWynXTHbxl8KWBoq/cbWaC2QMH84wJrWzFxpK1QWxHDNiSzm9NO91MRzLma VS7Veh5tM4KZyvCgUOajuuM5yUWIUvIT46Nugj8NIYmX3SIXFbvENtSTUCRxXvxt0MnjLsyP 5yWGe71UyZFUvs9lmruGrxMuVPO+szY7TmILXwc5079uYdymVbPEetVWLdwRr5RAFy4TPX9r I8EapriJ+R3W+zieCjHmbP/3nhTRUXX8ave8pQNHsbae1oOJY3UI6OJqV/XU9A/zvs9eyah1 i3VZ3K0P3Km3iObclvVOiw6AF4tNL4mxU8G0eUXFQ7A8xAejUyHt8/zq7NfkWEbydFe IronPort-HdrOrdr: A9a23:sEehQK4DPEQrDex66APXwAzXdLJyesId70hD6qkQc3Fom62j5q WTdZEgvyMc5wx/ZJhNo7690cq7MBHhHPxOgbX5VI3KNGXbUQOTR72KhrGSoAEIdReeygZcv5 0QCZSXCrfLfCVHZRCR2njFLz4iquP3j5xBnY3lvhNQpZkBUdAZ0+9+YDzrdXFedU19KrcSMo GT3cZDryrIQwVtUizqbkN1OdQqvrfw5evbXSI= X-Talos-CUID: =?us-ascii?q?9a23=3AqGa4O2m/P0EZZeT4JTme8BXEN5LXOW/j92jvKEO?= =?us-ascii?q?zM0FsZLurSVLL0f9diOM7zg=3D=3D?= X-Talos-MUID: 9a23:kkbt/AisSo+eZT5LeptNGMMpaptV2oOrFUA3irIBuOyhbStQBhefk2Hi X-IronPort-AV: E=Sophos;i="6.01,149,1684814400"; d="scan'208";a="116317366" From: Anthony PERARD To: CC: Anthony PERARD , Andrew Cooper , George Dunlap , "Jan Beulich" , Julien Grall , "Stefano Stabellini" , Wei Liu Subject: [XEN PATCH v2 2/5] build: remove TARGET_SUBARCH, a duplicate of ARCH Date: Thu, 22 Jun 2023 16:30:02 +0100 Message-ID: <20230622153005.31604-3-anthony.perard@citrix.com> X-Mailer: git-send-email 2.39.2 In-Reply-To: <20230622153005.31604-1-anthony.perard@citrix.com> References: <20230622153005.31604-1-anthony.perard@citrix.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain Signed-off-by: Anthony PERARD --- Notes: v2: - new patch xen/Makefile | 3 +-- xen/build.mk | 2 +- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/xen/Makefile b/xen/Makefile index 78d176f04e..bc639a1f80 100644 --- a/xen/Makefile +++ b/xen/Makefile @@ -234,7 +234,7 @@ include scripts/Kbuild.include # we need XEN_TARGET_ARCH to generate the proper config include $(XEN_ROOT)/Config.mk -# Set ARCH/SUBARCH appropriately. +# Set ARCH/SRCARCH appropriately. ARCH := $(XEN_TARGET_ARCH) SRCARCH := $(shell echo $(ARCH) | \ @@ -242,7 +242,6 @@ SRCARCH := $(shell echo $(ARCH) | \ -e 's/riscv.*/riscv/g') export ARCH SRCARCH -export TARGET_SUBARCH := $(XEN_TARGET_ARCH) export TARGET_ARCH := $(shell echo $(XEN_TARGET_ARCH) | \ sed -e 's/x86.*/x86/' -e s'/arm\(32\|64\)/arm/g' \ -e s'/riscv.*/riscv/g') diff --git a/xen/build.mk b/xen/build.mk index 30d74d4772..7e33e710fd 100644 --- a/xen/build.mk +++ b/xen/build.mk @@ -41,7 +41,7 @@ include/xen/compile.h: include/xen/compile.h.in .banner FORCE targets += include/xen/compile.h -include $(wildcard .asm-offsets.s.d) -asm-offsets.s: arch/$(TARGET_ARCH)/$(TARGET_SUBARCH)/asm-offsets.c +asm-offsets.s: arch/$(TARGET_ARCH)/$(ARCH)/asm-offsets.c $(CC) $(call cpp_flags,$(c_flags)) -S -g0 -o $@.new -MQ $@ $< $(call move-if-changed,$@.new,$@) -- Anthony PERARD From xen-devel-bounces@lists.xenproject.org Thu Jun 22 15:33:06 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 15:33:06 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553683.864401 (Exim 4.92) (envelope-from ) id 1qCMJ0-0002RL-2B; Thu, 22 Jun 2023 15:33:06 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553683.864401; Thu, 22 Jun 2023 15:33:06 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCMIz-0002RE-Ts; Thu, 22 Jun 2023 15:33:05 +0000 Received: by outflank-mailman (input) for mailman id 553683; Thu, 22 Jun 2023 15:33:03 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCMIx-0002MD-RA for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 15:33:03 +0000 Received: from esa5.hc3370-68.iphmx.com (esa5.hc3370-68.iphmx.com [216.71.155.168]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 1236430b-1112-11ee-b237-6b7b168915f2; Thu, 22 Jun 2023 17:33:02 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 1236430b-1112-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1687447982; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=oCKLH/zSg4xUlzCsYWMLexAT1INT2AflrWoFzXWfGBY=; b=dcWR56HUWqYawH1alc4JXyweBK/KcqP4aRtmPMUFMAqZyIalfGiXWWpb 5WdBha5+IkIMOzo12aWLapl0xlkU8eJdpe5cb/gtdj4echofr3slfoKPW PKsPlaYGlF+YvgSjgHY6heNRR06ClCBpodAs2AIgEwMlcp4RbZGJwtLmH w=; Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none X-SBRS: 4.0 X-MesageID: 112500242 X-Ironport-Server: esa5.hc3370-68.iphmx.com X-Remote-IP: 162.221.156.123 X-Policy: $RELAYED IronPort-Data: A9a23:vJxeBa64oKsIr4Y+jPpbgQxRtMrHchMFZxGqfqrLsTDasY5as4F+v jQfDW2FOPzbZjemL9kkYIy09xgCv5SGm4NkGQY4rHswHi5G8cbLO4+Ufxz6V8+wwm8vb2o8t plDNYOQRCwQZiWBzvt4GuG59RGQ7YnRGvynTraCYnsrLeNdYH9JoQp5nOIkiZJfj9G8Agec0 fv/uMSaM1K+s9JOGjt8B5mr9lU35ZwehBtC5gZlPa4R5geC/5UoJMl3yZ+ZfiOQrrZ8RoZWd 86bpJml82XQ+QsaC9/Nut4XpWVTH9Y+lSDX4pZnc/DKbipq/0Te4Y5iXBYoUm9Fii3hojxE4 I4lWapc6+seFvakdOw1C3G0GszlVEFM0OevzXOX6aR/w6BaGpdFLjoH4EweZOUlFuhL7W5m7 PElLBQoZC24t+Ok7Ju2W+hFmNQuI5y+VG8fkikIITDxCP8nRdbIQrnQ5M8e1zA17ixMNa+AP YxDM2MpNUmeJUQVYT/7C7pn9AusrnD5bz1frkPTvact6nLf5AdwzKLsIJzefdniqcB9xx/C+ zqepTijav0cHNuT7SSG702Ous7KsiP8arNKL6Pn88c/1TV/wURMUUZLBDNXu8KRmkO4Ht5SN UEQ0i4vtrQpslymSMHnWB+1q2LCuQQTM/JSGeAn7ACGyoLP/h2UQGMDS1ZpasEitcIwbSwn0 BmOhdyBLSd0rLSfRHaZ97GVhTC/Iy4YKSkFfyBsZRQBy8nupsc0lB2nZtxkGqSkg8b1HTz1y jaioy03hrFVhskOv42y+VHcnzutvN7HVAcz7QTMdn2p5UVyY4vNT4ev717c7/pJMoeCZlaEt XkA3cOZ6Ygz4YqlzXLXBr9XRffwuqjDaWeH6bJyI3U/3y2gxnqHWIpt2wF/NmtAP9cFUCH5b UCG7Gu9+6Rv0GuWgb5fOtzhVJ90nfa8RbwJRdiPMIMQP8EZmBuvuXg3OBXOhz2FfF0Ey/lXB HuNTSq74Z/244xDxSH+eeoS2KRDKssWlTKKHsCTI/hKPNOjiJ+ppVQtagHmghgRtv/sneks2 4832zG24xteSvbiRSLc7JQeK1sHRVBiW8Cp8JMNLL7bf1E3cI3ENxM36el6E2CCt/4P/tokA 1nnAhMIoLYBrSOvxfq2hoBLN+q0AMcXQYMTNi0wJ1e4s0XPkq72hJrzg6AfJOF9nMQ6lK4cc hXwU5nYahi5Ymidqmt1gFiUhNAKSSlHcirXZHT5O2ZgL8I5L+ELk/e9FjbSGOA1JnLfnaMDT 3eIiGs3nbJrq9xeMfvr IronPort-HdrOrdr: A9a23:P66W/KqdhmHw70/frDtBV5kaV5oGeYIsimQD101hICG9E/b5qy nKpp8mPHDP5gr5NEtQ++xoRpPwO080hKQV3WB5B97LMDUO3lHYVL2KwrGM/9SKIVycygcy79 YET0A3YOebMbAx5fyW3OH3eOxQpKjhzEgo7t2utkuEJGtRGsddB+cQMHfhLnFL X-Talos-CUID: 9a23:S1KAmm3xtA/2ZGw/Sm+AB7xfA80Ydln4xkrrE06qJU9kWby8V0+d9/Yx X-Talos-MUID: 9a23:Br+qBwrtROSdCM27o7wezzZuENlr/puMNGEIvpUBifjcDjIvPg7I2Q== X-IronPort-AV: E=Sophos;i="6.01,149,1684814400"; d="scan'208";a="112500242" From: Anthony PERARD To: CC: Anthony PERARD , Andrew Cooper , George Dunlap , "Jan Beulich" , Julien Grall , "Stefano Stabellini" , Wei Liu , Bob Eshleman , Alistair Francis , Connor Davis Subject: [XEN PATCH v2 3/5] build: remove TARGET_ARCH, a duplicates of SRCARCH Date: Thu, 22 Jun 2023 16:30:03 +0100 Message-ID: <20230622153005.31604-4-anthony.perard@citrix.com> X-Mailer: git-send-email 2.39.2 In-Reply-To: <20230622153005.31604-1-anthony.perard@citrix.com> References: <20230622153005.31604-1-anthony.perard@citrix.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain The same command is used to generate the value of both $(TARGET_ARCH) and $(SRCARCH), as $(ARCH) is an alias for $(XEN_TARGET_ARCH). Signed-off-by: Anthony PERARD --- Notes: v2: - new patch xen/Makefile | 18 +++++++----------- xen/Rules.mk | 2 +- xen/arch/riscv/arch.mk | 2 +- xen/build.mk | 6 +++--- 4 files changed, 12 insertions(+), 16 deletions(-) diff --git a/xen/Makefile b/xen/Makefile index bc639a1f80..ac2765050b 100644 --- a/xen/Makefile +++ b/xen/Makefile @@ -242,10 +242,6 @@ SRCARCH := $(shell echo $(ARCH) | \ -e 's/riscv.*/riscv/g') export ARCH SRCARCH -export TARGET_ARCH := $(shell echo $(XEN_TARGET_ARCH) | \ - sed -e 's/x86.*/x86/' -e s'/arm\(32\|64\)/arm/g' \ - -e s'/riscv.*/riscv/g') - export CONFIG_SHELL := $(SHELL) export CC CXX LD NM OBJCOPY OBJDUMP ADDR2LINE export YACC = $(if $(BISON),$(BISON),bison) @@ -262,7 +258,7 @@ export XEN_TREEWIDE_CFLAGS := $(CFLAGS) ifneq ($(shell $(CC) --version 2>&1 | head -n 1 | grep clang),) CLANG_FLAGS := -ifeq ($(TARGET_ARCH),x86) +ifeq ($(SRCARCH),x86) # The tests to select whether the integrated assembler is usable need to happen # before testing any assembler features, or else the result of the tests would # be stale if the integrated assembler is not used. @@ -430,22 +426,22 @@ endif ifdef building_out_of_srctree CFLAGS += -I$(objtree)/include - CFLAGS += -I$(objtree)/arch/$(TARGET_ARCH)/include + CFLAGS += -I$(objtree)/arch/$(SRCARCH)/include endif CFLAGS += -I$(srctree)/include -CFLAGS += -I$(srctree)/arch/$(TARGET_ARCH)/include +CFLAGS += -I$(srctree)/arch/$(SRCARCH)/include # Note that link order matters! ALL_OBJS-y := common/built_in.o ALL_OBJS-y += drivers/built_in.o ALL_OBJS-y += lib/built_in.o ALL_OBJS-y += xsm/built_in.o -ALL_OBJS-y += arch/$(TARGET_ARCH)/built_in.o +ALL_OBJS-y += arch/$(SRCARCH)/built_in.o ALL_OBJS-$(CONFIG_CRYPTO) += crypto/built_in.o ALL_LIBS-y := lib/lib.a -include $(srctree)/arch/$(TARGET_ARCH)/arch.mk +include $(srctree)/arch/$(SRCARCH)/arch.mk # define new variables to avoid the ones defined in Config.mk export XEN_CFLAGS := $(CFLAGS) @@ -588,8 +584,8 @@ $(TARGET): outputmakefile FORCE $(Q)$(MAKE) $(build)=tools $(Q)$(MAKE) $(build)=. include/xen/compile.h $(Q)$(MAKE) $(build)=include all - $(Q)$(MAKE) $(build)=arch/$(TARGET_ARCH) include - $(Q)$(MAKE) $(build)=. arch/$(TARGET_ARCH)/include/asm/asm-offsets.h + $(Q)$(MAKE) $(build)=arch/$(SRCARCH) include + $(Q)$(MAKE) $(build)=. arch/$(SRCARCH)/include/asm/asm-offsets.h $(Q)$(MAKE) $(build)=. MKRELOC=$(MKRELOC) 'ALL_OBJS=$(ALL_OBJS-y)' 'ALL_LIBS=$(ALL_LIBS-y)' $@ SUBDIRS = xsm arch common crypto drivers lib test diff --git a/xen/Rules.mk b/xen/Rules.mk index 59072ae8df..8af3dd7277 100644 --- a/xen/Rules.mk +++ b/xen/Rules.mk @@ -180,7 +180,7 @@ cpp_flags = $(filter-out -Wa$(comma)% -flto,$(1)) c_flags = -MMD -MP -MF $(depfile) $(XEN_CFLAGS) a_flags = -MMD -MP -MF $(depfile) $(XEN_AFLAGS) -include $(srctree)/arch/$(TARGET_ARCH)/Rules.mk +include $(srctree)/arch/$(SRCARCH)/Rules.mk c_flags += $(_c_flags) a_flags += $(_c_flags) diff --git a/xen/arch/riscv/arch.mk b/xen/arch/riscv/arch.mk index 7448f759b4..8403f96b6f 100644 --- a/xen/arch/riscv/arch.mk +++ b/xen/arch/riscv/arch.mk @@ -15,5 +15,5 @@ riscv-march-$(CONFIG_RISCV_ISA_C) := $(riscv-march-y)c CFLAGS += -march=$(riscv-march-y) -mstrict-align -mcmodel=medany # TODO: Drop override when more of the build is working -override ALL_OBJS-y = arch/$(TARGET_ARCH)/built_in.o +override ALL_OBJS-y = arch/$(SRCARCH)/built_in.o override ALL_LIBS-y = diff --git a/xen/build.mk b/xen/build.mk index 7e33e710fd..26dd5a8e87 100644 --- a/xen/build.mk +++ b/xen/build.mk @@ -41,11 +41,11 @@ include/xen/compile.h: include/xen/compile.h.in .banner FORCE targets += include/xen/compile.h -include $(wildcard .asm-offsets.s.d) -asm-offsets.s: arch/$(TARGET_ARCH)/$(ARCH)/asm-offsets.c +asm-offsets.s: arch/$(SRCARCH)/$(ARCH)/asm-offsets.c $(CC) $(call cpp_flags,$(c_flags)) -S -g0 -o $@.new -MQ $@ $< $(call move-if-changed,$@.new,$@) -arch/$(TARGET_ARCH)/include/asm/asm-offsets.h: asm-offsets.s +arch/$(SRCARCH)/include/asm/asm-offsets.h: asm-offsets.s @(set -e; \ echo "/*"; \ echo " * DO NOT MODIFY."; \ @@ -87,4 +87,4 @@ endif targets += prelink.o $(TARGET): prelink.o FORCE - $(Q)$(MAKE) $(build)=arch/$(TARGET_ARCH) $@ + $(Q)$(MAKE) $(build)=arch/$(SRCARCH) $@ -- Anthony PERARD From xen-devel-bounces@lists.xenproject.org Thu Jun 22 15:33:30 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 15:33:30 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553694.864411 (Exim 4.92) (envelope-from ) id 1qCMJO-0003Bu-8T; Thu, 22 Jun 2023 15:33:30 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553694.864411; Thu, 22 Jun 2023 15:33:30 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCMJO-0003Bj-5f; Thu, 22 Jun 2023 15:33:30 +0000 Received: by outflank-mailman (input) for mailman id 553694; Thu, 22 Jun 2023 15:33:29 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCMJN-0002MD-9B for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 15:33:29 +0000 Received: from esa6.hc3370-68.iphmx.com (esa6.hc3370-68.iphmx.com [216.71.155.175]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 2187b08f-1112-11ee-b237-6b7b168915f2; Thu, 22 Jun 2023 17:33:28 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 2187b08f-1112-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1687448008; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=3EthVTGva5DNB6P5KMnQBDEgPXGTi69YqfTcARM7qj4=; b=ZWKp6Qt8ve7Kb14mLgcoWI3tUnoLErrd+Q3yB/X83ANTPufsMjsUiJJv 9v7B6a7nZU0IwLcxM7AmxB6x6o2QYOr6cUaMENaAThO2w/YAI6U+Q410V l+LxVAe2atUxDEaV/pM3dPpsX4LNTP2jlOaXuSsqD8IuaWEW8sV3IiREd 8=; Authentication-Results: esa6.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none X-SBRS: 4.0 X-MesageID: 113083391 X-Ironport-Server: esa6.hc3370-68.iphmx.com X-Remote-IP: 162.221.156.123 X-Policy: $RELAYED IronPort-Data: A9a23:2usFaapblDo58Dgg6laOglkQp0JeBmLcZRIvgKrLsJaIsI4StFCzt garIBmFMv2LZWXyeItwaY3k8klXvZSBx9EwQARv+309FiJA9JuZCYyVIHmrMnLJJKUvbq7FA +Y2MYCccZ9uHhcwgj/3b9ANeFEljfngqoLUUbKCYWYpA1c/Ek/NsDo788YhmIlknNOlNA2Ev NL2sqX3NUSsnjV5KQr40YrawP9UlKq04GpwUmAWP6gR5weAzSNNUPrzGInqR5fGatgMdgKFb 76rIIGRpgvx4xorA9W5pbf3GmVirmn6ZFXmZtJ+AsBOszAazsAA+v9T2Mk0MC+7vw6hjdFpo OihgLTrIesf0g8gr8xGO/VQO3kW0aSrY9YrK1Dn2SCY5xWun3cBX5yCpaz5VGEV0r8fPI1Ay RAXACkUbz2tnrKb/KqmWNZdndUDA5bxAapK7xmMzRmBZRonaZXKQqGM7t5ExjYgwMtJGJ4yZ eJAN2ApNk6ZJUQSZBFOUslWcOSA3xETdxVRrk6VoqwmpXDe1gVr3JDmMcbPe8zMTsJQ9qqdj jufpDypWUpLbbRzzxKAwi+JncmIpRriQY0+JJKBzNM6sE+Mkzl75Bo+CgLg/KjRZlSFc8JSL QkY9zQjqYA29Ve3VZ/tUhugunmGsxUAHd1KHIUS6giLxrDF/gWxCW0NTzoHY9sj3Oc0TzE30 l6Cn/vyGCdi9raSTBq19KqQrD60ETgYKykFfyBsZRAe/9DprYU3jxTOZtVuCqi4ipvyAz6Y6 y+OhDgzgfMUl8Fj6kmg1QmZ2XT2/MGPF1NroFyNBQpJ8z+Veqa8fo2Fx0GLwMpYMZSmf0KQn FdbgfW3ubVm4Y62qMCdfAkcNOj3t6nebm2C3Q4H84oJrGr0pSP6FWxEyHQnfRoybJ5ZEdP8S BWL0T698qO/K5dDgUVfR4uqQ/onwqH7fTgOfqCFN4EeCnSdmeLuwc2PWaJz9zq3+KTUuftjU ap3iO71ZZrgNYxpzSCtW8AW2qIxyyY1yAv7HM6rkE/4i+DOPCPOGN/p1WdiiMhjt8toRy2Pq b5i2zaikU0DAIUSnAGJmWLsEbz6BSdiXs2nwyCmXuWCPhBnCAkc5wz5mNscl3het/0NzI/gp yjtMnK0PXKj3RUr3y3WMCE8AF4uNL4jxU8G0dsEZA32hyN9Ptbztc/ytfIfJNEayQCq9tYsJ 9FtRilKKq8npujvk9jFUaTAkQ== IronPort-HdrOrdr: A9a23:WZH+hKuyK7thvGKtIKL2NI8X7skDcNV00zEX/kB9WHVpmszxra +TdZMgpHjJYVcqKQgdcL+7WZVoLUmwyXcx2/hyAV7AZniDhILLFuFfBOLZqlWKcREWtNQtsJ uIG5IObuEYZmIVsS+V2mWF+q4bsbq6zJw= X-Talos-CUID: 9a23:znsS5GHySx5H3dAnqmJ+7U85NNl1X0HF0WXvElSpKUk2UoC8HAo= X-Talos-MUID: =?us-ascii?q?9a23=3AtwOO9Q64sJIrQHd7ZtQAKjk+xoxt0/mLE2ZKqaw?= =?us-ascii?q?fosaoBQNJARrNvCaoF9o=3D?= X-IronPort-AV: E=Sophos;i="6.01,149,1684814400"; d="scan'208";a="113083391" From: Anthony PERARD To: CC: Anthony PERARD , Jason Andryuk , Andrew Cooper , "George Dunlap" , Jan Beulich , "Julien Grall" , Stefano Stabellini , Wei Liu Subject: [XEN PATCH v2 4/5] build: evaluate XEN_BUILD_* and XEN_DOMAIN on first use Date: Thu, 22 Jun 2023 16:30:04 +0100 Message-ID: <20230622153005.31604-5-anthony.perard@citrix.com> X-Mailer: git-send-email 2.39.2 In-Reply-To: <20230622153005.31604-1-anthony.perard@citrix.com> References: <20230622153005.31604-1-anthony.perard@citrix.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain With GNU make 4.4, the number of execution of the command present in these $(shell ) increased greatly. This is probably because as of make 4.4, exported variable are also added to the environment of $(shell ) construct. Also, `make -d` shows a lot of these: Makefile:15: not recursively expanding XEN_BUILD_DATE to export to shell function Makefile:16: not recursively expanding XEN_BUILD_TIME to export to shell function Makefile:17: not recursively expanding XEN_BUILD_HOST to export to shell function Makefile:14: not recursively expanding XEN_DOMAIN to export to shell function So, to avoid having these command been run more than necessery, we will use a construct to evaluate on first use. Reported-by: Jason Andryuk Signed-off-by: Anthony PERARD Tested-by: Jason Andryuk --- xen/Makefile | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/xen/Makefile b/xen/Makefile index ac2765050b..e3b1468f83 100644 --- a/xen/Makefile +++ b/xen/Makefile @@ -11,10 +11,10 @@ export XEN_FULLVERSION = $(XEN_VERSION).$(XEN_SUBVERSION)$(XEN_EXTRAVERSION) -include xen-version export XEN_WHOAMI ?= $(USER) -export XEN_DOMAIN ?= $(shell ([ -x /bin/dnsdomainname ] && /bin/dnsdomainname) || ([ -x /bin/domainname ] && /bin/domainname || echo [unknown])) -export XEN_BUILD_DATE ?= $(shell LC_ALL=C date) -export XEN_BUILD_TIME ?= $(shell LC_ALL=C date +%T) -export XEN_BUILD_HOST ?= $(shell hostname) +export XEN_DOMAIN ?= $(eval XEN_DOMAIN := $(shell ([ -x /bin/dnsdomainname ] && /bin/dnsdomainname) || ([ -x /bin/domainname ] && /bin/domainname || echo [unknown])))$(XEN_DOMAIN) +export XEN_BUILD_DATE ?= $(eval XEN_BUILD_DATE := $(shell LC_ALL=C date))$(XEN_BUILD_DATE) +export XEN_BUILD_TIME ?= $(eval XEN_BUILD_TIME := $(shell LC_ALL=C date +%T))$(XEN_BUILD_TIME) +export XEN_BUILD_HOST ?= $(eval XEN_BUILD_HOST := $(shell hostname))$(XEN_BUILD_HOST) # Best effort attempt to find a python interpreter, defaulting to Python 3 if # available. Fall back to just `python` if `which` is nowhere to be found. -- Anthony PERARD From xen-devel-bounces@lists.xenproject.org Thu Jun 22 15:33:48 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 15:33:48 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553698.864421 (Exim 4.92) (envelope-from ) id 1qCMJg-0003gC-Gz; Thu, 22 Jun 2023 15:33:48 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553698.864421; Thu, 22 Jun 2023 15:33:48 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCMJg-0003fy-Dw; Thu, 22 Jun 2023 15:33:48 +0000 Received: by outflank-mailman (input) for mailman id 553698; Thu, 22 Jun 2023 15:33:47 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCMJf-0002MD-0C for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 15:33:47 +0000 Received: from esa6.hc3370-68.iphmx.com (esa6.hc3370-68.iphmx.com [216.71.155.175]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 2c6b3dfd-1112-11ee-b237-6b7b168915f2; Thu, 22 Jun 2023 17:33:46 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 2c6b3dfd-1112-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1687448026; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=4QtfO0K4kclGq2hMs7w55dwQYz0mk//LeZXUiJOoCww=; b=dGQhHX9ZspFzJa/W4yB+vFEPN8d4MTo0uW0ciTQK5QyOBgGnhJkKjQeP 6TBvQCi0ZJGFj92sf4NNSvIGTflHjXCTOaVcz+q9/cCjaXJE9jH5EsobK YSP81kIRWzwrIFh2UaWeoQdI+O20Zv0T+QIymC+Pjvc0jis4H3l8xIOzU s=; Authentication-Results: esa6.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none X-SBRS: 4.0 X-MesageID: 113083464 X-Ironport-Server: esa6.hc3370-68.iphmx.com X-Remote-IP: 162.221.156.123 X-Policy: $RELAYED IronPort-Data: A9a23:MN7BBq5jCNLHVixuuC9hWgxRtP/HchMFZxGqfqrLsTDasY5as4F+v mIdWmnVPPzYNzT8Ko0naYnno0oE6J+Gm9cyGQFoqSFjHi5G8cbLO4+Ufxz6V8+wwm8vb2o8t plDNYOQRCwQZiWBzvt4GuG59RGQ7YnRGvynTraCYnsrLeNdYH9JoQp5nOIkiZJfj9G8Agec0 fv/uMSaM1K+s9JOGjt8B5mr9lU35ZwehBtC5gZlPa4R5geC/5UoJMl3yZ+ZfiOQrrZ8RoZWd 86bpJml82XQ+QsaC9/Nut4XpWVTH9Y+lSDX4pZnc/DKbipq/0Te4Y5iXBYoUm9Fii3hojxE4 I4lWapc6+seFvakdOw1C3G0GszlVEFM0OevzXOX6aR/w6BaGpdFLjoH4EweZOUlFuhL7W5m/ sEzNBsiVE24vN2L/qK7R/N1vNo6I5y+VG8fkikIITDxCP8nRdbIQrnQ5M8e1zA17ixMNa+AP YxDM2MpNUmeJUQVYT/7C7pn9AusrnD5bz1frkPTvact6nLf5AdwzKLsIJzefdniqcB9xx/D/ jKdozqlav0cHPaj9iKG61m+v/PGuj76W6A9RZeVr/E/1TV/wURMUUZLBDNXu8KRmkO4Ht5SN UEQ0i4vtrQpslymSMHnWB+1q2LCuQQTM/JSGus28hCQyYLb5g+YAi4PSTspQN4sudIyRDcq/ kSUhN6vDjtq2JWXVHac+7G8vT60fy8PIgcqfjQYRAEI593ipoAbjR/VSNtnVqmvgbXdBjXY0 z2M6i8kiN0uYdUjjvvhuwqd2nT1+8aPF1RujunKYo67xghET5KOSLb10mPk0MhQLIuDV2Ofp XdRzqBy89sy4YGxeD2lGbtdQ+r3t6jZYFUwknY0QcB/qm3FF2qLONkJvWogfBoB3tMsI2eBX aPFhe9GCHa/1lOOZLQ/XY++At9CIUPIRYW8DaC8gjajj/FMmO67EMJGPxT4M5jFyhRErE3GE c7znTyQJXgbE7976zG9Wv0Q17QmrghnmzOMHs+hlUT/jOHPDJJwdVvjGAHVBgzexPneyDg5D v4Fb5fao/mheLOWjtbrHX47cglRcClT6WHeoM1LbO+TSjeK60l4Y8I9NYgJItQ/94wMz7egw 51IchMAoLYJrSGdeFrih7EKQO+HYKuTWlpiZnJwZgj3iyR6CWtthY9GH6YKkXAc3LQL5ZZJo zMtIpjo7ihnItgfxwkgUA== IronPort-HdrOrdr: A9a23:LgYJFaBkd+5MfAvlHemB55DYdb4zR+YMi2TDtnoQdfUxSKelfq +V8sjzuSWE6gr5JktQ4+xoSZPgfZq0z/ccjbX5W43SJDUOl1HGEGgI1/qA/9SPIVyaygYUvZ 0LT0A1YOecMbA15vyKhHjeLz6gq+P3iZxB7I3lvhFQpeEDUdAa0ztE X-Talos-CUID: =?us-ascii?q?9a23=3AKmp+oGqzKs5lpgC4AIj67d3mUcsYWWH2402NGHS?= =?us-ascii?q?HNFh5SLCPUGWO4awxxg=3D=3D?= X-Talos-MUID: 9a23:fL08dwbUr58CBuBTnQPTnDJ7H9VR/62JFUEOs7pXkeTdOnkl X-IronPort-AV: E=Sophos;i="6.01,149,1684814400"; d="scan'208";a="113083464" From: Anthony PERARD To: CC: Anthony PERARD , Jason Andryuk , Andrew Cooper , "George Dunlap" , Jan Beulich , "Julien Grall" , Stefano Stabellini , Wei Liu Subject: [XEN PATCH v2 5/5] Config.mk: evaluate XEN_COMPILE_ARCH and XEN_OS on first use Date: Thu, 22 Jun 2023 16:30:05 +0100 Message-ID: <20230622153005.31604-6-anthony.perard@citrix.com> X-Mailer: git-send-email 2.39.2 In-Reply-To: <20230622153005.31604-1-anthony.perard@citrix.com> References: <20230622153005.31604-1-anthony.perard@citrix.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain With GNU make 4.4, the number of execution of the command present in these $(shell ) increased greatly. This is probably because as of make 4.4, exported variable are also added to the environment of $(shell ) construct. So, to avoid having these command been run more than necessery, we will use a construct to evaluate on first use. Reported-by: Jason Andryuk Signed-off-by: Anthony PERARD Tested-by: Jason Andryuk --- Config.mk | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Config.mk b/Config.mk index c529b1ba19..5fbdbc4500 100644 --- a/Config.mk +++ b/Config.mk @@ -19,13 +19,13 @@ or = $(if $(strip $(1)),$(1),$(if $(strip $(2)),$(2),$(if $(strip $(3)),$( -include $(XEN_ROOT)/.config -XEN_COMPILE_ARCH ?= $(shell uname -m | sed -e s/i.86/x86_32/ \ +XEN_COMPILE_ARCH ?= $(eval XEN_COMPILE_ARCH := $(shell uname -m | sed -e s/i.86/x86_32/ \ -e s/i86pc/x86_32/ -e s/amd64/x86_64/ \ -e s/armv7.*/arm32/ -e s/armv8.*/arm64/ \ - -e s/aarch64/arm64/) + -e s/aarch64/arm64/))$(XEN_COMPILE_ARCH) XEN_TARGET_ARCH ?= $(XEN_COMPILE_ARCH) -XEN_OS ?= $(shell uname -s) +XEN_OS ?= $(eval XEN_OS := $(shell uname -s))$(XEN_OS) CONFIG_$(XEN_OS) := y -- Anthony PERARD From xen-devel-bounces@lists.xenproject.org Thu Jun 22 15:42:02 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 15:42:02 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553713.864431 (Exim 4.92) (envelope-from ) id 1qCMRX-0005WS-Fc; Thu, 22 Jun 2023 15:41:55 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553713.864431; Thu, 22 Jun 2023 15:41:55 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCMRX-0005WL-CU; Thu, 22 Jun 2023 15:41:55 +0000 Received: by outflank-mailman (input) for mailman id 553713; Thu, 22 Jun 2023 15:41:54 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCMRV-0005WF-PS for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 15:41:54 +0000 Received: from NAM12-MW2-obe.outbound.protection.outlook.com (mail-mw2nam12on2061f.outbound.protection.outlook.com [2a01:111:f400:fe5a::61f]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 4cda6ee0-1113-11ee-8611-37d641c3527e; Thu, 22 Jun 2023 17:41:50 +0200 (CEST) Received: from SN6PR12MB2621.namprd12.prod.outlook.com (2603:10b6:805:73::15) by DS0PR12MB8564.namprd12.prod.outlook.com (2603:10b6:8:167::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.37; Thu, 22 Jun 2023 15:41:45 +0000 Received: from SN6PR12MB2621.namprd12.prod.outlook.com ([fe80::8018:78f7:1b08:7a54]) by SN6PR12MB2621.namprd12.prod.outlook.com ([fe80::8018:78f7:1b08:7a54%2]) with mapi id 15.20.6521.023; Thu, 22 Jun 2023 15:41:44 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 4cda6ee0-1113-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=UZ9tI8hwXCN4QABZIEMGvVuER8O/2qDNlQOekzrIvgcMPyajXsi6cARVcWjPAe6XSAXACcI4gi7SkW4xa/qT0ocCJbuRHZNhZI0n5imV8x7tTZ4KmU58AARxQfXuRSh06BbD+h9pCQqBg4M96YMD/twQxg0I0t+ZleuwJSSAWMjJrtojyaJmcztSrd6rPJcL3B4a6e1h3tfq5QeNuDsfA46MCVUYy/BxPLdNNNUi4SvmwGJwARmPGMMYkOYqLfEqhp2uuRwpEmJA1UeXiF50id67MkyCXemRNsDVEBCfz9LtqebwedBjGWMS+y6/PsdoGm53I05Shee1izGS/e+Tbw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=9sZsReLBiQg+gJcFL6VFnpWoaS8VuGcE112WdT8rge0=; b=bgZut/f7zIQbtEGbEinR+2nL8JBXg9an7o3p5qfcibGqzrIkiob/8eiNYxk8eap7Vp577j2KRpK98t71D4YFS26HiM8wkgjAi37DyP0YoZqT/OYdyQPjSuUXC7VhD7MLxd6cI9jFaI765r9SesIdCpx1OwTkSlCZfGfSMymwmWBSU4K67pRNaMK94Aq/qxjyzZnD4sQxYHzUijDhfFy7/XoN97vKsvDXf286T8FcZd1Ia9EXNJUAIwFHdVliBUPEnq/Jq2GP6VfgQ0YLgsvavtY4IJRMNUW2tJNpaVIjeVtxpifCPfu+y3tlOb5QJwvaSz+FuZeBJPg96SRTCYXJTg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass header.d=amd.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=9sZsReLBiQg+gJcFL6VFnpWoaS8VuGcE112WdT8rge0=; b=OAFx/RpkIyXTCslIO1VEFqGm4dbvamSxwdjEJGNOUZy2+NDtF9iEowu6IpsnOkjjaKFxG8Pb2sJnyMGvNUil2FzRBZRCvX5Fxw1iUpg9c8B6IgyQQYrh7uLg263+YmezI8z9PoL3G+TgtV4zsai/ZvYAH+T5xQ5AcpSYzkPRQYE= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=amd.com; Message-ID: Date: Thu, 22 Jun 2023 16:41:37 +0100 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH v1] xen/arm: arm32: Add support to identify the Cortex-R52 processor To: Julien Grall , Ayan Kumar Halder , xen-devel@lists.xenproject.org Cc: sstabellini@kernel.org, stefano.stabellini@amd.com, Volodymyr_Babchuk@epam.com, bertrand.marquis@arm.com References: <20230620151736.3720850-1-ayan.kumar.halder@amd.com> <3b7f584e-700e-4598-f36e-51a96140323e@xen.org> <030fc5e8-8293-2306-06eb-9275c2a2c9e5@xen.org> From: Ayan Kumar Halder In-Reply-To: <030fc5e8-8293-2306-06eb-9275c2a2c9e5@xen.org> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO4P265CA0072.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:2af::21) To SN6PR12MB2621.namprd12.prod.outlook.com (2603:10b6:805:73::15) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SN6PR12MB2621:EE_|DS0PR12MB8564:EE_ X-MS-Office365-Filtering-Correlation-Id: b3e5167d-0467-4cf2-6632-08db73372e99 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 23z432xOtJyuJ60tEIWx7zzTBsFVlI8ZWyFDKHoRkjHoNn5hWqktkAT4DraNJt3bQOAXp1BoyvEBoSDOBfPwR6Oo9qMas5unHdwBXnSP4b4EgResnHbH4mj0F2uvg/q/okIq+qTulnrZ59oFHNBRWQFS2OthUXYfHZiigObbBIAqtzCvHhbpOBfHzK4vprT1iS/srDR7hQ96F4k3xxSdDAXCIn2x0ttQaQPOZZxyi10GuehJLyPTqWn1Fap3PU1eYlg+DaUd+JeIusm2iDnm+2vXEhYnyEN1gbcph1Cn0DYbYxEsaBWI7DhGTS383NJMelOgXnaheClBzLy9G5XSRKWcuP+Y1rUdox1w9f48O81ftz6AHj087vnp4iUUu2LBUHmX5uQCaaAeZ0rqQX1HUxOX5VK+YAuCHxOpkrKkZMfoebH4GVokc5729pQnOaAA0ZtP2dWruTYgzHn5GZps/bA2X7pMzPZUbcuJIloQqyZqGDLS/kBcnfzd8MDItMjTGn4RPPuASR33tqQ9hTviANgDilILoSx15agcsHWGde9bXUvVAW4M6O3W/hNJrSm8RFwWVUTwBdykqN0ifChcfhYdpqG9oZ284T+YXPzrGFUKA+pvdgQ6F01+UyfgTce2mr2WjZ2ClvOgtZgRh6722g== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SN6PR12MB2621.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(366004)(136003)(396003)(39860400002)(376002)(346002)(451199021)(66556008)(8936002)(66946007)(66476007)(5660300002)(110136005)(4326008)(6512007)(186003)(8676002)(6666004)(6486002)(316002)(38100700002)(36756003)(478600001)(6506007)(26005)(41300700001)(53546011)(31686004)(2906002)(83380400001)(31696002)(2616005)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?c3NJcm10UE1wKzA2VFd4ZHpSQ0VZdGxTTmhoYWwycUdWbDhLMHFXakhqL0ds?= =?utf-8?B?YWZBbnBwYjA5eno0aFRVOTFNNjI2dkloSWlSUm9oc2N6SU1ueWJhMjhvZk9p?= =?utf-8?B?dURJN290c1ZTaHZFNUo1N1JJUUQrVzYzaWtoRW9lU1F2YTlyZWhFcU15bGd4?= =?utf-8?B?QUYyejNnWnlaNUhyaDFweHNyazRLT0svOUljaXNHNjZ3ZHVxd1JGdFpBVWZJ?= =?utf-8?B?aURvYW1kaEg4a21PdmYxZWhBRFpyWjVQdWpWemVSUUFuSEsrd2FHUUpxbTR6?= =?utf-8?B?SmorYXVMUjRWWXQ1TFBzT2pobForSHFIMzZIYTNqTFBVa3RseWlMZS9XL3pN?= =?utf-8?B?YkFjbUYzTy9adTNxcUJYSzJ6UExrbXlhRVJTa3htRW5DcWJxV051VVl3RU5X?= =?utf-8?B?c0lOLzIySU9ZbUphUVI0LzV2cytDYjk1b3ZFQ2hwaXJBRUxmMFJGNUpMTDdL?= =?utf-8?B?MTlTOHU4VjdPaHpSTkc2QTN3eG9uV2lsQ1RMK2lvSmNESC9zUlhJcDJmM0F3?= =?utf-8?B?UGNUZDZYYVl6Wlg4QklwejFGN3QwMzdROFc0OURYMnlzNEFKN0Uwc3RKQkRW?= =?utf-8?B?ZjdRRXFhSlpNV051YmZaOWZ4cmEvOVQ4VlhjMEtyeVUrTFprQzRCZkRSeTFS?= =?utf-8?B?R24zcVBySWMwTnRBQnpGenJFN2VkTEx0MEFySDE2b3JrMUZkeVUrYkRYQjVh?= =?utf-8?B?cGZ1Si9PNWJwTDM0d1ZTOVVRVXMxcmtKM0VNbnNSRnFIK29ISExnMlNSYVV1?= =?utf-8?B?c1RtbGRiRTI1UHN6RmRJVnRWaTZ6NCtnQmxYclBKN1lRRzdWV29TK2wwOWw3?= =?utf-8?B?a3lKUzJ1MmRoa0lSWndGNW8rQjVPM0FrK2YvZHY0enIreU4zcEdVRnNmTzBx?= =?utf-8?B?dTk3MURIT2RZS3F3Vy9OK1FkaHNsUDM1OXdUM2VLYVN1dXNuaUlPTUwyM2Vh?= =?utf-8?B?TFV3Z3ZoSHM1QVErYlh0ZDQwTGpjTXFiYkczV1BHamdodTRjdEdDMW1xZldC?= =?utf-8?B?RVpxTjIyQnRUSS9HYzBrcnk3aU9zTllkQTlYcWRmSzMxZWhHbFZOQzlsWlI0?= =?utf-8?B?dHNwRUphWWk0UXJzb1VKWGhBeHMyMVBhRFhYUFM5WTk2MjAxTG50ajdPeCt3?= =?utf-8?B?M3dLMTFrNkMyRjQwU1JobFdnMitJdjV3MmR6aFM3TFEvUnVPRGNyZUVia01v?= =?utf-8?B?aUxUTkNJQk5aa3FCZU9YNlROZnoxcTBWSnZwZlBIRHFCOC90S1NteUdjSU5J?= =?utf-8?B?M3BSSTF1bzkzOTNEYVJ6QW9yRmJTMTVkZk5qTlNKbzdJWVN4b1JFamZSZTNT?= =?utf-8?B?RHRSSUtXaisvS2Z2dEhSNGQzN3lJWGIxMWNzTEF6Ym9Wck1uT1F4RWc1bUZy?= =?utf-8?B?b1psOVFKb2V1Zk8zdmNSd1VCQmdaOVdrVUhLSk9VcXNMeUJJRTByMC9ZTnNX?= =?utf-8?B?bWhjZkptd1dkeEhkZll4K0NMTDRMYWNDd2poV0dMYVBzam50UnZad2dYQVY2?= =?utf-8?B?eGxFM2d1VVcxOFZ5bzZrcHhROVlYazFoOFlDK2w0Qkk2ZmpVODhoRHdSZnh3?= =?utf-8?B?cEp6TFVQZkJ0TURYVkZJYmRWWWZIWmJWeDBGeExZc3BySzYya2Q1N1FlTGpL?= =?utf-8?B?T0ZmQXAvRU43aWdsbiswZHBRTDFybFBUZ29uTTh1amZNU1lxeGJWTldzbTc0?= =?utf-8?B?cWdrdnA4N3EzUkJYUWJGN0J0bFhnQ0xtWEIrNFpqZGFnWm1RdkZtTUN1bDM2?= =?utf-8?B?ZFlTeGlWaGNtaE96aXRPN05QaHJFeHRFay9yRVppNyt4TFJKQjJiSllpQk02?= =?utf-8?B?LzNvZ1IwOUd6MHc3b2p3ZkVkZUh2ZldFV3JVRFkwMzdLQXEzMWdJNWxnMjlF?= =?utf-8?B?YlR0TlU4aC9YWmI4Z1RHS2xYK0JIVjJMdDN0Vm04T0N6SlIvMVlFWmFTU0p3?= =?utf-8?B?aC9tRFFGSVIwSTh1ZmxUeXRaRnVXenZIUzJLdWxhNlgreGlLVnY0T3dlUTk2?= =?utf-8?B?ck9ZS2ZtMEtSWm9IQjluTjg1emhzU3V1U2JETzJBMFdNd1AvNzZVK3BZTEZ0?= =?utf-8?B?dDc4RFBIVGlVYk9XN1hjRlM3NmFqbFZacU1hS2NJRUlZMFdxc25NSEtsV0NK?= =?utf-8?Q?k993b0SgP1KvzmTm5A4uBw4yr?= X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-Network-Message-Id: b3e5167d-0467-4cf2-6632-08db73372e99 X-MS-Exchange-CrossTenant-AuthSource: SN6PR12MB2621.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 22 Jun 2023 15:41:44.8911 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: ALxRCGTCs0u9suGOXwXKt4WIrbs3YBuTZwdhHBNFZO8xXEwHMQNrE/eWhHbM8zj6BEv5EWvu7xkCNS5bTZDyCg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS0PR12MB8564 On 22/06/2023 10:22, Julien Grall wrote: > Hi Ayan, Hi Julien, > > On 22/06/2023 09:59, Ayan Kumar Halder wrote: >> >> On 20/06/2023 21:43, Julien Grall wrote: >>> Hi Ayan, >> Hi Julien, >>> >>> On 20/06/2023 19:28, Ayan Kumar Halder wrote: >>>> >>>> On 20/06/2023 17:41, Julien Grall wrote: >>>>> Hi, >>>> Hi Julien, >>>>> >>>>> On 20/06/2023 16:17, Ayan Kumar Halder wrote: >>>>>> Add a special configuration (CONFIG_AARCH32_V8R) to setup the >>>>>> Cortex-R52 >>>>>> specifics. >>>>>> >>>>>> Cortex-R52 is an Arm-V8R AArch32 processor. >>>>>> >>>>>> Refer ARM DDI 0487I.a ID081822, G8-9647, G8.2.112 MIDR, >>>>>> bits[31:24] = 0x41 , Arm Ltd >>>>>> bits[23:20] = Implementation defined >>>>>> bits[19:16] = 0xf , Arch features are individually identified >>>>>> bits[15:4] = Implementation defined >>>>>> bits[3:0] = Implementation defined >>>>>> >>>>>> Thus, the processor id is 0x410f0000 and the processor id mask is >>>>>> 0xff0f0000 >>>>>> >>>>>> Also, there is no special initialization required for R52. >>>>> >>>>> Are you saying that Xen upstream + this patch will boot on >>>>> Cortex-R52? >>>> >>>> This patch will help for earlyboot of Xen. With this patch, >>>> cpu_init() will work on Cortex-R52. >>>> >>>> There will be changes required for the MPU configuration, but that >>>> will be sent after Penny's patch serie "[PATCH v2 00/41] xen/arm: >>>> Add Armv8-R64 MPU support to Xen - Part#1" is upstreamed. >>>> >>>> My aim is to extract the non-dependent changes and send them for >>>> review. >>> >>> I can review the patch. But I am not willing to merge it as it gives >>> the false impression that Xen would boot on Cortex-R52. >>> >>> In fact, I think this patch should only be merged once we have all >>> the MPU merged. >>> >>> IMHO, patches are independent are rework (e.g. code split...) that >>> would help the MPU. >> >> Yes, that's exactly what I intend to do. I will send out the patches >> (similar to this) which will not be impacted by the MPU changes. >> >> So, that both as an author/reviewer, it helps to restrict MPU serie >> to only MPU specific changes. > >> Can you suggest some change to the commit message, so that we can >> commit it (without giving any false impression that Xen boots on >> Cortex-R52) > >> May be adding this line to the commit message helps ? > >> "However, Xen does not fully boot on Cortex-R52 as it requires MPU >> support which is under review. > >> Once Xen is supported on Cortex-R52, SUPPORT.md will be amended to >> reflect it." > > While writing an answer for this patch, I was actually wondering > whether the CPU allowlist still make sense for the 32-bit ARMv8-R? > > From Armv7-A, we needed it because some CPUs need specific quirk when > booting. But it would be best if we can get rid of it for 32-bit ARMv8-R. > > Looking at your patch, your merely providing stubs. Do you have any > plan to fill them up? Actually, I would use cr52_init in a later patch to write to CNTFRQ. See below :- +#define XPAR_CPU_CORTEXR52_0_TIMESTAMP_CLK_FREQ  800000U +  cr52_init: +        /* +         * Set counter frequency  800 KHZ +         * +         * Set counter frequency, CNTFRQ +         */ +        ldr     r0,=XPAR_CPU_CORTEXR52_0_TIMESTAMP_CLK_FREQ +        mrc     15,0,r1,c14,c0,0  /* Read CNTFRQ */ +        cmp     r1,#0 +        /* Set only if the frequency read is 0 */ +        mcreq   15,0,r0,c14,c0,0  /* Write CNTFRQ */ +          mov pc, lr - Ayan > > Cheers, > From xen-devel-bounces@lists.xenproject.org Thu Jun 22 15:49:29 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 15:49:29 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553720.864441 (Exim 4.92) (envelope-from ) id 1qCMYd-0006A6-6D; Thu, 22 Jun 2023 15:49:15 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553720.864441; Thu, 22 Jun 2023 15:49:15 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCMYd-00069z-2m; Thu, 22 Jun 2023 15:49:15 +0000 Received: by outflank-mailman (input) for mailman id 553720; Thu, 22 Jun 2023 15:49:13 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCMYb-00069t-K4 for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 15:49:13 +0000 Received: from mail-wm1-x330.google.com (mail-wm1-x330.google.com [2a00:1450:4864:20::330]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 551ffe76-1114-11ee-b237-6b7b168915f2; Thu, 22 Jun 2023 17:49:12 +0200 (CEST) Received: by mail-wm1-x330.google.com with SMTP id 5b1f17b1804b1-3f9b258f3a2so49674555e9.0 for ; Thu, 22 Jun 2023 08:49:12 -0700 (PDT) Received: from EMEAENGAAD19049. (default-46-102-197-194.interdsl.co.uk. [46.102.197.194]) by smtp.gmail.com with ESMTPSA id m12-20020a7bcb8c000000b003f9b66a9376sm7922227wmi.42.2023.06.22.08.49.11 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 22 Jun 2023 08:49:11 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 551ffe76-1114-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cloud.com; s=cloud; t=1687448951; x=1690040951; h=in-reply-to:content-disposition:mime-version:references:subject:cc :to:from:date:message-id:from:to:cc:subject:date:message-id:reply-to; bh=9/9KNTlVUHhpEt8lsfJ0Za/edtPSUz3JyYHhj4xBv4Q=; b=L164uMFZKF+a03YJmG7XR6Qht+VMltHVQJ1gTyqbzMU0wC5eOtF7F/oziKWjy7h/Re wSt7p/UKRrzxxXRw7oTE7jX79qYPgROLQFgzf17hHkwdyeKd1cTfYIiU4vJ8/K1JDYmw BWbMePXbrri+0k7+6U8qds2ZxxaUJDHHDNknI= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687448951; x=1690040951; h=in-reply-to:content-disposition:mime-version:references:subject:cc :to:from:date:message-id:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=9/9KNTlVUHhpEt8lsfJ0Za/edtPSUz3JyYHhj4xBv4Q=; b=D/e6UBiZukwmm8FO1P2Ds5gJMId3toVz63uTTlBsWm7mCZcBxp3Vh7od329LZY8MW+ 3bKkT+VHduCjce+EOHQCXBcKsTa1FfDMzuauqscNpBVsfDzB89I5edBWZ8Fe4YpGmQ0t +TY7iCSSZJDnln+JDFVb1rTOvDbJvpJU0U0vHNGAEavgUHMCdE4snO7Cwu8Dhmztkn0E IWeFat45wfmZR9iFN812fqCayyKss+A1PkxdhWoeaDcsKvzcSdft9QraReFSkfgTaL2Y j/MvcTIKsENImVsMQ24MTtUQgLGOS99zQHCSZdHTLjrNa7LMHADgzI7fQipPPx9ecIi/ NIYw== X-Gm-Message-State: AC+VfDzKeOItA4qQYlhY22Pq7xtKHkZLQ6GxPkLn7+oirITjxajyY2GD H2jR577lFXe/H3K2NQZ6AAommg== X-Google-Smtp-Source: ACHHUZ4R8VYAVm+A8IeUSahS+cjmKP9LtLIVsSpEvZHU/LpJuzPVG0t68+wrvRvYpfYMkXNdiB9jsw== X-Received: by 2002:a7b:cb56:0:b0:3f7:e48b:974d with SMTP id v22-20020a7bcb56000000b003f7e48b974dmr18844576wmj.27.1687448951652; Thu, 22 Jun 2023 08:49:11 -0700 (PDT) Message-ID: <64946d77.7b0a0220.2c099.b17b@mx.google.com> X-Google-Original-Message-ID: Date: Thu, 22 Jun 2023 16:49:09 +0100 From: Alejandro Vallejo To: Jan Beulich Cc: Xen-devel , Roger Pau =?iso-8859-1?Q?Monn=E9?= , Wei Liu , Andrew Cooper Subject: Re: [PATCH v2 1/2] x86/boot: Clear XD_DISABLE from the early boot path References: <20230615153157.444-1-alejandro.vallejo@cloud.com> <20230615153157.444-2-alejandro.vallejo@cloud.com> <6493289f.7b0a0220.7f086.11fd@mx.google.com> <32c42471-9e93-58d8-9973-38fce5dcc4d3@suse.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <32c42471-9e93-58d8-9973-38fce5dcc4d3@suse.com> On Thu, Jun 22, 2023 at 09:54:01AM +0200, Jan Beulich wrote: > On 21.06.2023 18:43, Alejandro Vallejo wrote: > > Sure, to everything before this > > > >>> diff --git a/xen/arch/x86/cpu/intel.c b/xen/arch/x86/cpu/intel.c > >>> index 168cd58f36..46b0cd8dbb 100644 > >>> --- a/xen/arch/x86/cpu/intel.c > >>> +++ b/xen/arch/x86/cpu/intel.c > >>> @@ -305,23 +305,23 @@ static void cf_check early_init_intel(struct cpuinfo_x86 *c) > >>> c->x86_cache_alignment = 128; > >>> > >>> /* Unmask CPUID levels and NX if masked: */ > >>> - rdmsrl(MSR_IA32_MISC_ENABLE, misc_enable); > >>> - > >>> - disable = misc_enable & (MSR_IA32_MISC_ENABLE_LIMIT_CPUID | > >>> - MSR_IA32_MISC_ENABLE_XD_DISABLE); > >>> - if (disable) { > >>> - wrmsrl(MSR_IA32_MISC_ENABLE, misc_enable & ~disable); > >>> - bootsym(trampoline_misc_enable_off) |= disable; > >>> - bootsym(trampoline_efer) |= EFER_NXE; > >>> - } > >>> + if (rdmsr_safe(MSR_IA32_MISC_ENABLE, misc_enable) == 0) { > >> > >> There's no need to change rdmsrl() to rdmsr_safe(), > > I thought we established before some hypervisors might not implement it. In > > that case this function would crash. More gracefully than a triple fault, > > sure, but still not a very friendly thing to do. > > Yet then in early boot code you also don't (and can't) recover from getting > #GP(0), in case that might really happen. > > Jan That's true, strictly speaking, but that case is restricted to the incredibly unlikely case of "no NX and no MSR". As is, if we ever boot on an Intel machine without that MSR we'll hit #GP(0), regardless of NX. Not that it matters a whole lot though. It's pretty unlikely we'll ever trip there. Alejandro From xen-devel-bounces@lists.xenproject.org Thu Jun 22 16:05:21 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 16:05:21 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553724.864451 (Exim 4.92) (envelope-from ) id 1qCMo8-0000hl-H5; Thu, 22 Jun 2023 16:05:16 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553724.864451; Thu, 22 Jun 2023 16:05:16 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCMo8-0000he-Dl; Thu, 22 Jun 2023 16:05:16 +0000 Received: by outflank-mailman (input) for mailman id 553724; Thu, 22 Jun 2023 16:05:16 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCMo8-0000hY-1W for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 16:05:16 +0000 Received: from raptorengineering.com (mail.raptorengineering.com [23.155.224.40]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 916f8ccc-1116-11ee-8611-37d641c3527e; Thu, 22 Jun 2023 18:05:12 +0200 (CEST) Received: from localhost (localhost [127.0.0.1]) by mail.rptsys.com (Postfix) with ESMTP id AC8EC828552E; Thu, 22 Jun 2023 11:05:11 -0500 (CDT) Received: from mail.rptsys.com ([127.0.0.1]) by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032) with ESMTP id q9yVwMfCks6C; Thu, 22 Jun 2023 11:05:10 -0500 (CDT) Received: from localhost (localhost [127.0.0.1]) by mail.rptsys.com (Postfix) with ESMTP id 42D0C8285751; Thu, 22 Jun 2023 11:05:10 -0500 (CDT) Received: from mail.rptsys.com ([127.0.0.1]) by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id cf-crATz7kH1; Thu, 22 Jun 2023 11:05:10 -0500 (CDT) Received: from [10.11.0.2] (5.edge.rptsys.com [23.155.224.38]) by mail.rptsys.com (Postfix) with ESMTPSA id EA9DB828552E; Thu, 22 Jun 2023 11:05:09 -0500 (CDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 916f8ccc-1116-11ee-8611-37d641c3527e DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com 42D0C8285751 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD; t=1687449910; bh=y8fHnyXVhK5WLo7IkJM4zekAT6n7lZH3WpFF9TDoJ7w=; h=Message-ID:Date:MIME-Version:To:From; b=dgegjay8EC4U+xWHu4NeR4mIKHTxvvDX3e2RVmIp5+gxMu71iDD7RSNIVrFJ2P4CY 2WZIo6GK2OqixKVJUCqudI7OVpvzpCPJNNLrMz20Bv/iQt8ijZFi3eR0S8IQCQ5rge Mo+fNSFbtdEp8XxyGRSDrqsNiXyj6djqCu91OPLQ= X-Virus-Scanned: amavisd-new at rptsys.com Message-ID: Date: Thu, 22 Jun 2023 11:05:09 -0500 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux ppc64le; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH 3/4] xen/ppc: Implement early serial printk on pseries Content-Language: en-US To: Julien Grall , xen-devel@lists.xenproject.org Cc: tpearson@raptorengineering.com References: <259298cdadf7cf1eba08cd35c636e9aca9e2182a.1687366665.git.sanastasio@raptorengineering.com> <4fc1fcee-e210-fe16-f762-3f23700d51b9@xen.org> From: Shawn Anastasio In-Reply-To: <4fc1fcee-e210-fe16-f762-3f23700d51b9@xen.org> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit On 6/21/23 3:48 PM, Julien Grall wrote: > Hi Shawn, > > Below some remark about the coding style. I will try to spot all of them > so please go through your code and check if my comments applies in other > places. Thank you for the detailed comments. I had a couple of follow-up questions for you. > On 21/06/2023 17:59, Shawn Anastasio wrote: >> diff --git a/xen/arch/ppc/boot-of.c b/xen/arch/ppc/boot-of.c >> new file mode 100644 >> index 0000000000..1ceeaf1250 >> --- /dev/null >> +++ b/xen/arch/ppc/boot-of.c >> @@ -0,0 +1,116 @@ >> +/* SPDX-License-Identifier: GPL-2.0-or-later */ >> +/* >> + * This program is free software; you can redistribute it and/or modify >> + * it under the terms of the GNU General Public License as published by >> + * the Free Software Foundation; either version 2 of the License, or >> + * (at your option) any later version. >> + * >> + * This program is distributed in the hope that it will be useful, >> + * but WITHOUT ANY WARRANTY; without even the implied warranty of >> + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the >> + * GNU General Public License for more details. >> + * >> + * You should have received a copy of the GNU General Public License >> + * along with this program; if not, write to the Free Software >> + * Foundation, 51 Franklin Street, Fifth Floor, Boston, MA >> 02110-1301, USA. > > As you already have the SPDX license, the full license should be dropped. To clarify, you're suggesting that I remove the license text but keep the copyright lines below? I wouldn't feel comfortable removing the latter since this is derived from code that wasn't written by me. >> + * >> + * Copyright IBM Corp. 2005, 2006, 2007 >> + * Copyright Raptor Engineering, LLC >> + * >> + * Authors: Jimi Xenidis >> + * Hollis Blanchard >> + * Shawn Anastasio >> + */ >> +extern int enter_of(struct of_service *args, unsigned long entry); > > Here you add 'extern' but ... > >> + >> +void boot_of_init(unsigned long); > > not here. In Xen, we tend to not add 'extern' for prototypes. Also, > please name the parameter as this makes clear what the value is. This > would also make MISRA happy (IIRC this would rule 8.2). I used extern to mark the `enter_of` since it's an assembly function rather than a C one, but if this isn't a convention used in the Xen codebase I can drop it. >> diff --git a/xen/arch/ppc/include/asm/bug.h >> b/xen/arch/ppc/include/asm/bug.h >> new file mode 100644 >> index 0000000000..a23ab1fa74 >> --- /dev/null >> +++ b/xen/arch/ppc/include/asm/bug.h >> @@ -0,0 +1,6 @@ >> +/* SPDX-License-Identifier: GPL-2.0-only */ >> + >> +#ifndef _ASM_PPC_BUG_H >> +#define _ASM_PPC_BUG_H >> + >> +#endif /* _ASM_PPC_BUG_H */ > > Can you clarify why you do need this empty header? Some empty headers were necessary to include which in turn includes various asm/ headers. I have since dropped many of these headers following Andrew's earlier comments, though, and they won't be present in v2. >> diff --git a/xen/arch/ppc/ppc64/head.S b/xen/arch/ppc/ppc64/head.S >> index 2fcefb40d8..589c72e382 100644 >> --- a/xen/arch/ppc/ppc64/head.S >> +++ b/xen/arch/ppc/ppc64/head.S >> @@ -1,30 +1,34 @@ >> /* SPDX-License-Identifier: GPL-2.0-or-later */ >> +#include >> + >> .section .text.header, "ax", %progbits >> ENTRY(start) >> - /* >> - * Depending on how we were booted, the CPU could be running in >> either >> - * Little Endian or Big Endian mode. The following trampoline >> from Linux >> - * cleverly uses an instruction that encodes to a NOP if the CPU's >> - * endianness matches the assumption of the assembler (LE, in our >> case) >> - * or a branch to code that performs the endian switch in the >> other case. >> - */ >> - tdi 0, 0, 0x48 /* Reverse endian of b . + 8 */ >> - b . + 44 /* Skip trampoline if endian is good */ >> - .long 0xa600607d /* mfmsr r11 */ >> - .long 0x01006b69 /* xori r11,r11,1 */ >> - .long 0x00004039 /* li r10,0 */ >> - .long 0x6401417d /* mtmsrd r10,1 */ >> - .long 0x05009f42 /* bcl 20,31,$+4 */ >> - .long 0xa602487d /* mflr r10 */ >> - .long 0x14004a39 /* addi r10,r10,20 */ >> - .long 0xa6035a7d /* mtsrr0 r10 */ >> - .long 0xa6037b7d /* mtsrr1 r11 */ >> - .long 0x2400004c /* rfid */ > > This seems to be refactoring. It would be best if this is done in a > separate patch as this is easier to review. Following Andrew's suggestion earlier, I've split this patch into two with the first one only doing the bare minimum to get an infinite loop going in C rather than assembly. That first patch still includes the refactoring of this trampoline into a macro, but the overall patch size is much smaller. Do you think that would be fine to review, or would you like a third commit for only this trampoline's refactoring? > Cheers, Thanks, Shawn From xen-devel-bounces@lists.xenproject.org Thu Jun 22 16:08:45 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 16:08:45 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553729.864462 (Exim 4.92) (envelope-from ) id 1qCMrJ-0001Gv-Ur; Thu, 22 Jun 2023 16:08:33 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553729.864462; Thu, 22 Jun 2023 16:08:33 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCMrJ-0001Go-QM; Thu, 22 Jun 2023 16:08:33 +0000 Received: by outflank-mailman (input) for mailman id 553729; Thu, 22 Jun 2023 16:08:32 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCMrI-0001Gi-PC for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 16:08:32 +0000 Received: from mail-wm1-x32b.google.com (mail-wm1-x32b.google.com [2a00:1450:4864:20::32b]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 07eac140-1117-11ee-b237-6b7b168915f2; Thu, 22 Jun 2023 18:08:31 +0200 (CEST) Received: by mail-wm1-x32b.google.com with SMTP id 5b1f17b1804b1-3f918922954so49368235e9.2 for ; Thu, 22 Jun 2023 09:08:31 -0700 (PDT) Received: from localhost.localdomain (230.red-88-28-3.dynamicip.rima-tde.net. [88.28.3.230]) by smtp.gmail.com with ESMTPSA id k9-20020a7bc409000000b003f9b24cf881sm10466573wmi.16.2023.06.22.09.08.26 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Thu, 22 Jun 2023 09:08:30 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 07eac140-1117-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1687450110; x=1690042110; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=/A79JoyFfC6huza+xbUxwLYTIgxFxi3HGGy1xW4nwf8=; b=yogdQdljLj0VC7TAdW5mlkO4xehQvvssX0cA2nch6oDaBprLzWiFgwagXbPBEJUPzI 8OIBQRK96iDOUORSsMWxYq09FsUAl57K3U6Spr+laGQYD3up4utpggKFA6QLgT1pnzzE g09YvBAEWhT3Ne6uAEZ20ASjG6NJFVrE6dhCKSAE9ftFgL2VQh2k27lBfh/eH1PALh0Z TigFNL8HOV955rvc2CCDmdPvrqvFji3F59lOahxFByvvXG/hhrUnXerexENOEtvdDaP7 6ovmIZ3Podq1bNUKQAn5JcJ6oFpTB2lBDcFo1YeGaK5hyp/SsBuz0JGuRcUMA00y2fZf V4aA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687450110; x=1690042110; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=/A79JoyFfC6huza+xbUxwLYTIgxFxi3HGGy1xW4nwf8=; b=eWjJjR7c7Wl9M5UEs8viOIbRsMMumeEY5B+M9lSs742MQE2lVFkjNtaMJjpORSkPW/ qsa3b0s1dw0Z65zsr7nFMgsDavAAukKrmX9wLFzQ3I1IQly+5TL33gDNKQFXDdWwmxF6 9BMuPOuzLq5aRo2AT0ybN2f38W59evUAF1kfPWE0D1ZQVKkg16U36XyIs3w91mk//GbT 14wdhUNaKZ9jwceetCkZ7J8FiXTEZpdOZhrRf8smo1RghFsLRwgVfLX+SHst2lg9gWpF AZ98laTptTzwreoMb2vfXQ2yN7KLHD3EUHTxZRycZlUlGp12UVyqDSUNrF391aHzy3pR mx4w== X-Gm-Message-State: AC+VfDwco/H5rZ0e8hDc/DSn+zlhVYTV2fslPEvTFvPg/vM9UKurYdVK kPL2PUca+I/Twmcs7CVVSpb4IQ== X-Google-Smtp-Source: ACHHUZ5K2Rg4dqx8epN1plFR54zJdcZBY/04rfPHyMaRt+7mvQIveLbQzgFDlKqnployGGPzU7dMVw== X-Received: by 2002:a05:600c:22d2:b0:3f9:b297:1804 with SMTP id 18-20020a05600c22d200b003f9b2971804mr8567893wmg.17.1687450110516; Thu, 22 Jun 2023 09:08:30 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Reinoud Zandijk , qemu-arm@nongnu.org, kvm@vger.kernel.org, Marcel Apfelbaum , Stefano Stabellini , Anthony Perard , Yanan Wang , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Peter Maydell , Roman Bolshakov , Paolo Bonzini , Paul Durrant , Sunil Muthuswamy , Alexander Graf , Richard Henderson , xen-devel@lists.xenproject.org, Eduardo Habkost , Cameron Esfahani Subject: [PATCH v2 00/16] accel: Share CPUState accel context (HAX/NVMM/WHPX/HVF) Date: Thu, 22 Jun 2023 18:08:07 +0200 Message-Id: <20230622160823.71851-1-philmd@linaro.org> X-Mailer: git-send-email 2.38.1 MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 8bit This series is part of the single binary effort. All accelerator will share their per-vCPU context in an opaque 'accel' pointer within the CPUState. First handle HAX/NVMM/WHPX/HVF. KVM and TCG will follow as two different (bigger) follow-up series. Since v1: - Addressed rth's review comments - Added rth's R-b tag - Converted HVF intel (untested) - Rebased Philippe Mathieu-Daudé (16): MAINTAINERS: Update Roman Bolshakov email address accel: Document generic accelerator headers accel: Remove unused hThread variable on TCG/WHPX accel: Fix a leak on Windows HAX accel: Destroy HAX vCPU threads once done accel: Rename 'hax_vcpu' as 'accel' in CPUState accel: Rename HAX 'struct hax_vcpu_state' -> AccelCPUState accel: Move HAX hThread to accelerator context accel: Remove NVMM unreachable error path accel: Rename NVMM 'struct qemu_vcpu' -> AccelCPUState accel: Inline NVMM get_qemu_vcpu() accel: Remove WHPX unreachable error path accel: Rename WHPX 'struct whpx_vcpu' -> AccelCPUState accel: Inline WHPX get_whpx_vcpu() accel: Rename 'cpu_state' -> 'cpu' accel: Rename HVF 'struct hvf_vcpu_state' -> AccelCPUState MAINTAINERS | 4 +- include/hw/core/cpu.h | 10 +- include/sysemu/hax.h | 2 + include/sysemu/hvf_int.h | 2 +- include/sysemu/kvm.h | 2 + include/sysemu/nvmm.h | 2 + include/sysemu/tcg.h | 2 + include/sysemu/whpx.h | 2 + include/sysemu/xen.h | 2 + target/i386/hax/hax-i386.h | 14 +- target/i386/hvf/vmx.h | 22 +- target/i386/hvf/x86hvf.h | 12 +- accel/hvf/hvf-accel-ops.c | 18 +- accel/tcg/tcg-accel-ops-mttcg.c | 4 - accel/tcg/tcg-accel-ops-rr.c | 3 - target/arm/hvf/hvf.c | 108 ++++----- target/i386/hax/hax-accel-ops.c | 5 +- target/i386/hax/hax-all.c | 26 ++- target/i386/hax/hax-posix.c | 4 +- target/i386/hax/hax-windows.c | 6 +- target/i386/hvf/hvf.c | 104 ++++----- target/i386/hvf/x86.c | 28 +-- target/i386/hvf/x86_descr.c | 26 +-- target/i386/hvf/x86_emu.c | 62 ++--- target/i386/hvf/x86_mmu.c | 4 +- target/i386/hvf/x86_task.c | 10 +- target/i386/hvf/x86hvf.c | 364 +++++++++++++++--------------- target/i386/nvmm/nvmm-all.c | 42 ++-- target/i386/whpx/whpx-accel-ops.c | 3 - target/i386/whpx/whpx-all.c | 45 ++-- .mailmap | 3 +- 31 files changed, 462 insertions(+), 479 deletions(-) -- 2.38.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 22 16:08:54 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 16:08:54 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553732.864471 (Exim 4.92) (envelope-from ) id 1qCMrU-0001ZJ-8y; Thu, 22 Jun 2023 16:08:44 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553732.864471; Thu, 22 Jun 2023 16:08:44 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCMrU-0001ZC-4w; Thu, 22 Jun 2023 16:08:44 +0000 Received: by outflank-mailman (input) for mailman id 553732; Thu, 22 Jun 2023 16:08:43 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCMrT-0001Yq-CB for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 16:08:43 +0000 Received: from mail-wr1-x429.google.com (mail-wr1-x429.google.com [2a00:1450:4864:20::429]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 0dcbcf17-1117-11ee-8611-37d641c3527e; Thu, 22 Jun 2023 18:08:41 +0200 (CEST) Received: by mail-wr1-x429.google.com with SMTP id ffacd0b85a97d-311099fac92so8481747f8f.0 for ; Thu, 22 Jun 2023 09:08:41 -0700 (PDT) Received: from localhost.localdomain (230.red-88-28-3.dynamicip.rima-tde.net. [88.28.3.230]) by smtp.gmail.com with ESMTPSA id k7-20020a5d5187000000b0031128382ed0sm7377909wrv.83.2023.06.22.09.08.36 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Thu, 22 Jun 2023 09:08:40 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 0dcbcf17-1117-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1687450120; x=1690042120; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=+JIxHWMClVl6mvpALDoBK231PZeNGUQgT3foMweSwl8=; b=m+sOyJwBwsltlHfQ5plMWKOLIis+OEb+I+kYqnZLv4G8Ud23JDgwJFKc5QbUKlQQoS 1zKSS1dPuy4yqZPNl6TAEFOkN/4qh6Z7q8wJxnI3w+xUocRyREHjcikLswb/B58iAjAw i0Kwl0CU2mChgimY0x1pocirTiLNpGhvP2OOxOZgzVdLhbaNm1KhLhoBCcbuNucTQQ3G RtyEsciQU1EctCDZTXKzkq/56Q8BpF4exuWzK5Zi9+g+wdZDHRqUsfqn3qJyaskO1hMN ORq6jEFNL0dLVh/Tn8LHeYLlV/JThI4azyQy/GqlByxiQt/VVPM3RXqUH7+Gq+EH6hC4 YgBw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687450120; x=1690042120; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=+JIxHWMClVl6mvpALDoBK231PZeNGUQgT3foMweSwl8=; b=W2LiMCfsjeedFLPHerg9KYvnhmuEtNWC+obRhbmF9q75bICmwn3arUInQnlySrs9W4 6cMU8EtcLjsszt17zMzitNLNbQ15+yFIFH8Sm1bmjLAggvSKMDBvrVkuMPUwygZvpbL1 AJxKv5GeiW9NUwrJLKSHcJzihC34LXLv638zWP9RxO9q0O3AmBWo1FJeAxkFVerxGw0Y STxU3TGhqClkr1mAy7pHwNpkdY7B+ViH2RZZKbgC0HGFmPJvmsgFu9pKIODyJggllBzd +yfzVnv6oB1cHj2UdM1zs9z/hB8PHpBy2CowukM2far/OVMF5h3wC4p5FvsoICCEvRY6 Ao4g== X-Gm-Message-State: AC+VfDwQ/T1WRY9dMcV0sVu2L5AlUkmn5MSh9aEYKxE0qOzF2yrYQ+7F cKXIg2n5RJvL+RY720Z8RpiDpA== X-Google-Smtp-Source: ACHHUZ6j9PL4gNb09NvEUjJSuIorrjesDgNKCq1cC1uX5pyBuSA6/zCj91wre6SrtXJc4I0XeTLuqQ== X-Received: by 2002:a5d:67cd:0:b0:2ef:b052:1296 with SMTP id n13-20020a5d67cd000000b002efb0521296mr16834670wrw.22.1687450120463; Thu, 22 Jun 2023 09:08:40 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Reinoud Zandijk , qemu-arm@nongnu.org, kvm@vger.kernel.org, Marcel Apfelbaum , Stefano Stabellini , Anthony Perard , Yanan Wang , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Peter Maydell , Roman Bolshakov , Paolo Bonzini , Paul Durrant , Sunil Muthuswamy , Alexander Graf , Richard Henderson , xen-devel@lists.xenproject.org, Eduardo Habkost , Cameron Esfahani Subject: [PATCH v2 01/16] MAINTAINERS: Update Roman Bolshakov email address Date: Thu, 22 Jun 2023 18:08:08 +0200 Message-Id: <20230622160823.71851-2-philmd@linaro.org> X-Mailer: git-send-email 2.38.1 In-Reply-To: <20230622160823.71851-1-philmd@linaro.org> References: <20230622160823.71851-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit r.bolshakov@yadro.com is bouncing: Update Roman's email address using one found somewhere on the Internet; this way he can Ack-by. (Reorder Taylor's line to keep the section sorted alphabetically). Signed-off-by: Philippe Mathieu-Daudé --- MAINTAINERS | 4 ++-- .mailmap | 3 ++- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/MAINTAINERS b/MAINTAINERS index 7f323cd2eb..1da135b0c8 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -497,14 +497,14 @@ F: target/arm/hvf/ X86 HVF CPUs M: Cameron Esfahani -M: Roman Bolshakov +M: Roman Bolshakov W: https://wiki.qemu.org/Features/HVF S: Maintained F: target/i386/hvf/ HVF M: Cameron Esfahani -M: Roman Bolshakov +M: Roman Bolshakov W: https://wiki.qemu.org/Features/HVF S: Maintained F: accel/hvf/ diff --git a/.mailmap b/.mailmap index b57da4827e..64ef9f4de6 100644 --- a/.mailmap +++ b/.mailmap @@ -76,9 +76,10 @@ Paul Burton Philippe Mathieu-Daudé Philippe Mathieu-Daudé Philippe Mathieu-Daudé +Roman Bolshakov Stefan Brankovic -Yongbok Kim Taylor Simpson +Yongbok Kim # Also list preferred name forms where people have changed their # git author config, or had utf8/latin1 encoding issues. -- 2.38.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 22 16:09:03 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 16:09:03 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553733.864481 (Exim 4.92) (envelope-from ) id 1qCMrd-0001tV-HH; Thu, 22 Jun 2023 16:08:53 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553733.864481; Thu, 22 Jun 2023 16:08:53 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCMrd-0001tM-Ds; Thu, 22 Jun 2023 16:08:53 +0000 Received: by outflank-mailman (input) for mailman id 553733; Thu, 22 Jun 2023 16:08:51 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCMrb-0001Gi-J9 for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 16:08:51 +0000 Received: from mail-wr1-x429.google.com (mail-wr1-x429.google.com [2a00:1450:4864:20::429]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 13c3fd8d-1117-11ee-b237-6b7b168915f2; Thu, 22 Jun 2023 18:08:51 +0200 (CEST) Received: by mail-wr1-x429.google.com with SMTP id ffacd0b85a97d-3112f256941so5271924f8f.1 for ; Thu, 22 Jun 2023 09:08:51 -0700 (PDT) Received: from localhost.localdomain (230.red-88-28-3.dynamicip.rima-tde.net. [88.28.3.230]) by smtp.gmail.com with ESMTPSA id o8-20020a5d4a88000000b003068f5cca8csm7356928wrq.94.2023.06.22.09.08.46 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Thu, 22 Jun 2023 09:08:50 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 13c3fd8d-1117-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1687450130; x=1690042130; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=xHLdIwIywOmneOj5eUp5g6ra2t5DF15QteoMLknkUnc=; b=hz1Iri7fzveQD0XzRURoVBQ0AayjUFEKed+ma5hJWh66FT6qnBh9fJ6Yqa49kNHo/F 3IpOngfIDQP04/ptc2tjcBXuEBGYnyItgUqUv1Xzu4OMyAwehLKCQiYvbdeSNCij8x95 cWxKOYJL2Kj+I0ElvY9i/iRKv7l1uzjI7KdJo4fnnC4me8XMGc9CZSrylMv1xwbefMDq 20wIR6Hftn5IW5cBGp88Pv5LYTiLSSfKvPKxbm7q5nblR8TO4SLMy+l/dx7jOAt50qA/ UPo0hT2rx1nx+tTGE22u6Jz+w2s4b5BrZ3reMQGP04EpIgkSA8Qr9dx1Stp7KU/I3xGF CtaQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687450130; x=1690042130; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=xHLdIwIywOmneOj5eUp5g6ra2t5DF15QteoMLknkUnc=; b=SM8kOq4JBK4/5elUb71gz11op5ZvOyNL1mW2QaCiJoz9YgAKf+C/94G75GOiTch9i0 mYhiPh8GE5abgy2x59JWI6cBT7u0dh8dxh5aDq5BA1GsLOvDzRYSsD1uPpVaAH/5UqUS 7AjrQqoMJzhyeQjni27hGUg8HhHilPyDGDzceF50oE33TEflibWYGCumsrFzlO4bI9Ma CGICC9J4WsfDT3tw52ZQYKQYs2AeG1JoZAWXfp6xOyu7iReoGtMf3wFe0AflMLZOHLTq XQEgTF+AMAfqtfyle2MWNBlvt/VfIF4c0esP7W1uI4rb79Ss8Wu5wM38AVflITqmH3wN aYjA== X-Gm-Message-State: AC+VfDzMcmL4oWzNn7ELLuxntqeO9EeT3NtNRqFZDfYXevOlSjVTDYZ2 CkKhQ4cNkEyp97Gvt8UsBBJTrg== X-Google-Smtp-Source: ACHHUZ5FZJ07KWuWBYKgfrnuifY1fdOTl2VG8E4TsYr3Kvhd2tgi1EDXYohQtUPqrVHBijnkT2QeEg== X-Received: by 2002:adf:f952:0:b0:30f:ca58:a00d with SMTP id q18-20020adff952000000b0030fca58a00dmr10419263wrr.45.1687450130628; Thu, 22 Jun 2023 09:08:50 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Reinoud Zandijk , qemu-arm@nongnu.org, kvm@vger.kernel.org, Marcel Apfelbaum , Stefano Stabellini , Anthony Perard , Yanan Wang , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Peter Maydell , Roman Bolshakov , Paolo Bonzini , Paul Durrant , Sunil Muthuswamy , Alexander Graf , Richard Henderson , xen-devel@lists.xenproject.org, Eduardo Habkost , Cameron Esfahani Subject: [PATCH v2 02/16] accel: Document generic accelerator headers Date: Thu, 22 Jun 2023 18:08:09 +0200 Message-Id: <20230622160823.71851-3-philmd@linaro.org> X-Mailer: git-send-email 2.38.1 In-Reply-To: <20230622160823.71851-1-philmd@linaro.org> References: <20230622160823.71851-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit These headers are meant to be include by any file to check the availability of accelerators, thus are not accelerator specific. Signed-off-by: Philippe Mathieu-Daudé Acked-by: Richard Henderson --- include/sysemu/hax.h | 2 ++ include/sysemu/kvm.h | 2 ++ include/sysemu/nvmm.h | 2 ++ include/sysemu/tcg.h | 2 ++ include/sysemu/whpx.h | 2 ++ include/sysemu/xen.h | 2 ++ 6 files changed, 12 insertions(+) diff --git a/include/sysemu/hax.h b/include/sysemu/hax.h index bf8f99a824..80fc716f80 100644 --- a/include/sysemu/hax.h +++ b/include/sysemu/hax.h @@ -19,6 +19,8 @@ * */ +/* header to be included in non-HAX-specific code */ + #ifndef QEMU_HAX_H #define QEMU_HAX_H diff --git a/include/sysemu/kvm.h b/include/sysemu/kvm.h index 88f5ccfbce..7902acdfd9 100644 --- a/include/sysemu/kvm.h +++ b/include/sysemu/kvm.h @@ -11,6 +11,8 @@ * */ +/* header to be included in non-KVM-specific code */ + #ifndef QEMU_KVM_H #define QEMU_KVM_H diff --git a/include/sysemu/nvmm.h b/include/sysemu/nvmm.h index 833670fccb..be7bc9a62d 100644 --- a/include/sysemu/nvmm.h +++ b/include/sysemu/nvmm.h @@ -7,6 +7,8 @@ * See the COPYING file in the top-level directory. */ +/* header to be included in non-NVMM-specific code */ + #ifndef QEMU_NVMM_H #define QEMU_NVMM_H diff --git a/include/sysemu/tcg.h b/include/sysemu/tcg.h index 53352450ff..5e2ca9aab3 100644 --- a/include/sysemu/tcg.h +++ b/include/sysemu/tcg.h @@ -5,6 +5,8 @@ * See the COPYING file in the top-level directory. */ +/* header to be included in non-TCG-specific code */ + #ifndef SYSEMU_TCG_H #define SYSEMU_TCG_H diff --git a/include/sysemu/whpx.h b/include/sysemu/whpx.h index 2889fa2278..781ca5b2b6 100644 --- a/include/sysemu/whpx.h +++ b/include/sysemu/whpx.h @@ -10,6 +10,8 @@ * */ +/* header to be included in non-WHPX-specific code */ + #ifndef QEMU_WHPX_H #define QEMU_WHPX_H diff --git a/include/sysemu/xen.h b/include/sysemu/xen.h index 0ca25697e4..bc13ad5692 100644 --- a/include/sysemu/xen.h +++ b/include/sysemu/xen.h @@ -5,6 +5,8 @@ * See the COPYING file in the top-level directory. */ +/* header to be included in non-Xen-specific code */ + #ifndef SYSEMU_XEN_H #define SYSEMU_XEN_H -- 2.38.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 22 16:09:14 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 16:09:14 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553738.864491 (Exim 4.92) (envelope-from ) id 1qCMro-0002Od-Ny; Thu, 22 Jun 2023 16:09:04 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553738.864491; Thu, 22 Jun 2023 16:09:04 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCMro-0002O8-Kn; Thu, 22 Jun 2023 16:09:04 +0000 Received: by outflank-mailman (input) for mailman id 553738; Thu, 22 Jun 2023 16:09:02 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCMrm-0001Yq-Ln for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 16:09:02 +0000 Received: from mail-wr1-x434.google.com (mail-wr1-x434.google.com [2a00:1450:4864:20::434]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 19a5da7e-1117-11ee-8611-37d641c3527e; Thu, 22 Jun 2023 18:09:00 +0200 (CEST) Received: by mail-wr1-x434.google.com with SMTP id ffacd0b85a97d-31109cd8d8cso7361123f8f.2 for ; Thu, 22 Jun 2023 09:09:00 -0700 (PDT) Received: from localhost.localdomain (230.red-88-28-3.dynamicip.rima-tde.net. [88.28.3.230]) by smtp.gmail.com with ESMTPSA id n11-20020a5d4c4b000000b003113ccbf388sm7480042wrt.13.2023.06.22.09.08.56 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Thu, 22 Jun 2023 09:09:00 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 19a5da7e-1117-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1687450140; x=1690042140; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=iG1kgLZ5QV1q9fprOekDS1vi4YDLS9XqOgasp153yeA=; b=pioUrZaFPhU8I3k58jH5e1qB2rLoMjDOpycpjg9MKCT8jB0VWYDPIf8BgBkiqcuhFF TGcG4z4waQLxR0t85sX3LfEm1fBfri5nyTc7hT7LFVuMZJ8cJ7iLzkMzgCCxgXAXjRp1 5FcEvpmzbqIFAxYcu+grqZd6fl2U26lypXHSgtzz883z04khvbCBjPhnZpOIijZm7hIY 73T6xIrKJfYThnwqe3k9n+UZwuUIp87JUU4oxyTveu1UWR2+M0IfsVqIofaSE6fL7s6R TsZ+4CItCUkFmVs4drtOmtuFIt03b22ea/hckXR+fp4F3k6OU3hz418EDxIcz7+/pZ4m IaZA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687450140; x=1690042140; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=iG1kgLZ5QV1q9fprOekDS1vi4YDLS9XqOgasp153yeA=; b=PDBhd+ugVpqqwPNNOKrhDyrd6L5iob/6cPTlWzlx2Ff3smM+FZJUk8CVaOrhRjVgJq mjpyWJdKMmcguiZ44WKEynpI1pfvxdifo2O4CNKr/UNMEEWu6MBp9SPgOSbGFnnh06sK M4Rj3nAWqb5CnlDElBO58vTmax7EiztN9QIaGa/0WBaVhfoHVO1nj6LGeAs9MekIwq8x VD9cXyaIYIUekjbahYIYBFk68tOU0XYVvKDO5gxbBud2WTM6ZfuabujeTOJITbu1wCqE M/t5RgGHGHUYqcQLo3NqE9C0lwYHdTwaYaxzxbawNsmLTV4MlOzfoAf2KJ3ru6H7zV4/ no+w== X-Gm-Message-State: AC+VfDw3hklDpFcrZJRSI7E3dfekwhOZ+Yi84FG0Se3jahR3w6x1mWJ1 x96v31VHCk//gV33myhpoeZZvg== X-Google-Smtp-Source: ACHHUZ5hS1cl385w0yy33SqHwzVfoviqPj7U7KGbU74d6nSn/Ie9wcppThLz//Iv2Nhpzhzuwuby+Q== X-Received: by 2002:adf:e610:0:b0:311:1679:6b5c with SMTP id p16-20020adfe610000000b0031116796b5cmr2213196wrm.63.1687450140515; Thu, 22 Jun 2023 09:09:00 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Reinoud Zandijk , qemu-arm@nongnu.org, kvm@vger.kernel.org, Marcel Apfelbaum , Stefano Stabellini , Anthony Perard , Yanan Wang , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Peter Maydell , Roman Bolshakov , Paolo Bonzini , Paul Durrant , Sunil Muthuswamy , Alexander Graf , Richard Henderson , xen-devel@lists.xenproject.org, Eduardo Habkost , Cameron Esfahani Subject: [PATCH v2 03/16] accel: Remove unused hThread variable on TCG/WHPX Date: Thu, 22 Jun 2023 18:08:10 +0200 Message-Id: <20230622160823.71851-4-philmd@linaro.org> X-Mailer: git-send-email 2.38.1 In-Reply-To: <20230622160823.71851-1-philmd@linaro.org> References: <20230622160823.71851-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit On Windows hosts, cpu->hThread is assigned but never accessed: remove it. Signed-off-by: Philippe Mathieu-Daudé Reviewed-by: Richard Henderson --- accel/tcg/tcg-accel-ops-mttcg.c | 4 ---- accel/tcg/tcg-accel-ops-rr.c | 3 --- target/i386/whpx/whpx-accel-ops.c | 3 --- 3 files changed, 10 deletions(-) diff --git a/accel/tcg/tcg-accel-ops-mttcg.c b/accel/tcg/tcg-accel-ops-mttcg.c index b320ff0037..b276262007 100644 --- a/accel/tcg/tcg-accel-ops-mttcg.c +++ b/accel/tcg/tcg-accel-ops-mttcg.c @@ -152,8 +152,4 @@ void mttcg_start_vcpu_thread(CPUState *cpu) qemu_thread_create(cpu->thread, thread_name, mttcg_cpu_thread_fn, cpu, QEMU_THREAD_JOINABLE); - -#ifdef _WIN32 - cpu->hThread = qemu_thread_get_handle(cpu->thread); -#endif } diff --git a/accel/tcg/tcg-accel-ops-rr.c b/accel/tcg/tcg-accel-ops-rr.c index 23e4d0f452..2d523289a8 100644 --- a/accel/tcg/tcg-accel-ops-rr.c +++ b/accel/tcg/tcg-accel-ops-rr.c @@ -329,9 +329,6 @@ void rr_start_vcpu_thread(CPUState *cpu) single_tcg_halt_cond = cpu->halt_cond; single_tcg_cpu_thread = cpu->thread; -#ifdef _WIN32 - cpu->hThread = qemu_thread_get_handle(cpu->thread); -#endif } else { /* we share the thread */ cpu->thread = single_tcg_cpu_thread; diff --git a/target/i386/whpx/whpx-accel-ops.c b/target/i386/whpx/whpx-accel-ops.c index e8dc4b3a47..67cad86720 100644 --- a/target/i386/whpx/whpx-accel-ops.c +++ b/target/i386/whpx/whpx-accel-ops.c @@ -71,9 +71,6 @@ static void whpx_start_vcpu_thread(CPUState *cpu) cpu->cpu_index); qemu_thread_create(cpu->thread, thread_name, whpx_cpu_thread_fn, cpu, QEMU_THREAD_JOINABLE); -#ifdef _WIN32 - cpu->hThread = qemu_thread_get_handle(cpu->thread); -#endif } static void whpx_kick_vcpu_thread(CPUState *cpu) -- 2.38.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 22 16:09:23 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 16:09:23 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553740.864501 (Exim 4.92) (envelope-from ) id 1qCMrx-0002rB-14; Thu, 22 Jun 2023 16:09:13 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553740.864501; Thu, 22 Jun 2023 16:09:12 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCMrw-0002r4-Tk; Thu, 22 Jun 2023 16:09:12 +0000 Received: by outflank-mailman (input) for mailman id 553740; Thu, 22 Jun 2023 16:09:12 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCMrw-0001Yq-KL for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 16:09:12 +0000 Received: from mail-wm1-x32a.google.com (mail-wm1-x32a.google.com [2a00:1450:4864:20::32a]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 1fb5d7eb-1117-11ee-8611-37d641c3527e; Thu, 22 Jun 2023 18:09:11 +0200 (CEST) Received: by mail-wm1-x32a.google.com with SMTP id 5b1f17b1804b1-3fa71db41b6so9551795e9.1 for ; Thu, 22 Jun 2023 09:09:11 -0700 (PDT) Received: from localhost.localdomain (230.red-88-28-3.dynamicip.rima-tde.net. [88.28.3.230]) by smtp.gmail.com with ESMTPSA id n6-20020a05600c294600b003f7e4639aabsm19231418wmd.10.2023.06.22.09.09.05 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Thu, 22 Jun 2023 09:09:10 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 1fb5d7eb-1117-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1687450150; x=1690042150; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=KWWds0uHrElgc22pSSxJ50tOp/lAV9kSI84s7Y2g/GM=; b=EbM780AWzavorYGjwE/j3EeJGIDw52NMRbKdS1s1/gZWniGA7sDBRZVP2QyfRqO47I 7X7B7xFYS297uGD3scmvxOmMiYP9OTll3eGFYcIQd4FpE0WW7V3oKBilIjfQT/k+/GPn V5BiCj2bgxxHGiIPvjbPJuQdy4VGi6sUnUZ8JyXtmAJEU6CrcXGXcSuxoa+cZFjfMKPW ZWhlpEG7XgwDT27Y537Y1ehWshHrG0ia2ToE68LsnrY1dFG/RpCqknDRqgAY2g/hC1Kd jf7UQOxMVQuZzQgTtEe05+aD9m+AbSf0u4R9D8Us4q4EE6ZIvJq/tj+t/EKcZaxvsqzH qQfw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687450150; x=1690042150; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=KWWds0uHrElgc22pSSxJ50tOp/lAV9kSI84s7Y2g/GM=; b=eMPNnfVaa4IGtZ985Sayzdo8hXR0fbgfu00mlIf26yqT+Tre6hDjhx//nSYfM4cPwd IS6v/NnIUkicuQujmYM3qg8012p27O5Umm/j953tfS3EVKxXhhX5S2JabwEyMw+WboNB +Ac4TdafIqmTsKe4qZUWPD1SoKjdpchqbwlGJiySa+VHTdkmjj+3n2Ib1REqL+L9DT8+ bLrv6Hc8BWCyWFoTKrlYWXnw1pn+pbUuiIaiN4w2gB8TPigSUqzvse0i2Eccbqu9s40P 1uaSu530UNrwZTd1ojZcVM1G/9idgjeldNSdf8LNXu1kzPC51Gk4/8KX8/B6hUlFujah KrEg== X-Gm-Message-State: AC+VfDwprUWPgSm+sMjoy0Ub8W1fddfWnAOssIVwx3hIzvGr0Ww0zye1 N24xMp8zTAy4RV68eArBDTe3bg== X-Google-Smtp-Source: ACHHUZ51xfqu7ycVqyxzIHVhQQRD4BRESLxxv3gkwPL1UAb0nB49UkufaCFZkef5SDfT9giEDTGvXg== X-Received: by 2002:a1c:6a0e:0:b0:3fa:78d1:572 with SMTP id f14-20020a1c6a0e000000b003fa78d10572mr642130wmc.0.1687450150672; Thu, 22 Jun 2023 09:09:10 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Reinoud Zandijk , qemu-arm@nongnu.org, kvm@vger.kernel.org, Marcel Apfelbaum , Stefano Stabellini , Anthony Perard , Yanan Wang , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Peter Maydell , Roman Bolshakov , Paolo Bonzini , Paul Durrant , Sunil Muthuswamy , Alexander Graf , Richard Henderson , xen-devel@lists.xenproject.org, Eduardo Habkost , Cameron Esfahani Subject: [PATCH v2 04/16] accel: Fix a leak on Windows HAX Date: Thu, 22 Jun 2023 18:08:11 +0200 Message-Id: <20230622160823.71851-5-philmd@linaro.org> X-Mailer: git-send-email 2.38.1 In-Reply-To: <20230622160823.71851-1-philmd@linaro.org> References: <20230622160823.71851-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit hThread is only used on the error path in hax_kick_vcpu_thread(). Fixes: b0cb0a66d6 ("Plumb the HAXM-based hardware acceleration support") Signed-off-by: Philippe Mathieu-Daudé Reviewed-by: Richard Henderson --- target/i386/hax/hax-all.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/target/i386/hax/hax-all.c b/target/i386/hax/hax-all.c index 3e5992a63b..a2321a1eff 100644 --- a/target/i386/hax/hax-all.c +++ b/target/i386/hax/hax-all.c @@ -205,6 +205,9 @@ int hax_vcpu_destroy(CPUState *cpu) */ hax_close_fd(vcpu->fd); hax_global.vm->vcpus[vcpu->vcpu_id] = NULL; +#ifdef _WIN32 + CloseHandle(cpu->hThread); +#endif g_free(vcpu); return 0; } -- 2.38.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 22 16:09:33 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 16:09:33 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553743.864511 (Exim 4.92) (envelope-from ) id 1qCMs7-0003Kp-BL; Thu, 22 Jun 2023 16:09:23 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553743.864511; Thu, 22 Jun 2023 16:09:23 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCMs7-0003KZ-5u; Thu, 22 Jun 2023 16:09:23 +0000 Received: by outflank-mailman (input) for mailman id 553743; Thu, 22 Jun 2023 16:09:21 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCMs5-0001Gi-NO for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 16:09:21 +0000 Received: from mail-wm1-x332.google.com (mail-wm1-x332.google.com [2a00:1450:4864:20::332]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 25b93591-1117-11ee-b237-6b7b168915f2; Thu, 22 Jun 2023 18:09:21 +0200 (CEST) Received: by mail-wm1-x332.google.com with SMTP id 5b1f17b1804b1-3f900cd3f96so63531215e9.2 for ; Thu, 22 Jun 2023 09:09:21 -0700 (PDT) Received: from localhost.localdomain (230.red-88-28-3.dynamicip.rima-tde.net. [88.28.3.230]) by smtp.gmail.com with ESMTPSA id x16-20020a05600c21d000b003f90b58df65sm13346472wmj.29.2023.06.22.09.09.16 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Thu, 22 Jun 2023 09:09:20 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 25b93591-1117-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1687450160; x=1690042160; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=IGm3E04zIWsYk05zgucyUicl5+3W8OYlCuN37xDTmqU=; b=oSZmsX3T/bloo+326SGPd5ZsHm46v9IjsSm+mX6+GHNqWc46SWntkTlBPS90redCNR ZUMjqxtJd3cZHvi9zSxHB4xdh1n7b8jsItx4rFl+mHiH+OgAFoaK+J/yb1D8i8vh1g6X Wh9p6+BtcM6BS/8tmV15GdIAi11Ly82V4oPU2YaNVUAxQtA0pzh18AGcDLF12Jbmstq5 FC0EyBMowodStWUPlID3y0Fm2oMAF3cehAD/OcX6fjRY42O0eaZ1AhKvLl08mXhP6Qb/ KU5JoMrq5Jkcz4ttchABNISgzL5QJIvTO362BtWKxVuE531Y/t0qEaegExQ9L9kbFuzp Gf2w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687450160; x=1690042160; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=IGm3E04zIWsYk05zgucyUicl5+3W8OYlCuN37xDTmqU=; b=brmd/uTKyyNOxq8aIdLP2zTo81L/+ZYQoildiSyworXch68/6Jz/GlY6DzrfBrgEby L3eAFvOs4wCyKMhyMA5eoOXGSvK8e67UykSC0I8up91PoL1JRH/+QIRAfWx7fna2TBFj vqrnBbTukfGW9RmpTRW0j6ipwKF49sov88JPl1dSsU0gZnY39l3yjbSxUXtCbu9suFct MMFmaEboSm8XuEEjes9Q5P1jdWGAHr7SrW+p79Qm/eCJSz6kqwcDaDdE+uAA9hxr3lLg PtCB3AG+DJl46dDQpvPkYnEN/VWjDk01g7in6/Di5hW51Yro2s9Uxkaube/wHx9qpyV/ pOvw== X-Gm-Message-State: AC+VfDyE7C8tGyilIMtWSFijdSK353jd7YtM9tGP5NFh11M29DCtPJy1 1o0b/dIIJ6JyK+zFwWkk/vZs7Q== X-Google-Smtp-Source: ACHHUZ74qZrgBDYUQFFsXIVlBQ+o5CwN3jxcBXCwUZJbgQTonuPJrTO0oSESuEoeaErY25ll4f9Zaw== X-Received: by 2002:a05:600c:2650:b0:3f8:1f52:f3a9 with SMTP id 16-20020a05600c265000b003f81f52f3a9mr13773747wmy.23.1687450160763; Thu, 22 Jun 2023 09:09:20 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Reinoud Zandijk , qemu-arm@nongnu.org, kvm@vger.kernel.org, Marcel Apfelbaum , Stefano Stabellini , Anthony Perard , Yanan Wang , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Peter Maydell , Roman Bolshakov , Paolo Bonzini , Paul Durrant , Sunil Muthuswamy , Alexander Graf , Richard Henderson , xen-devel@lists.xenproject.org, Eduardo Habkost , Cameron Esfahani Subject: [PATCH v2 05/16] accel: Destroy HAX vCPU threads once done Date: Thu, 22 Jun 2023 18:08:12 +0200 Message-Id: <20230622160823.71851-6-philmd@linaro.org> X-Mailer: git-send-email 2.38.1 In-Reply-To: <20230622160823.71851-1-philmd@linaro.org> References: <20230622160823.71851-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit When the vCPU thread finished its processing, destroy it and signal its destruction to generic vCPU management layer. Add a sanity check for the vCPU accelerator context. Signed-off-by: Philippe Mathieu-Daudé --- target/i386/hax/hax-accel-ops.c | 3 +++ target/i386/hax/hax-all.c | 1 + 2 files changed, 4 insertions(+) diff --git a/target/i386/hax/hax-accel-ops.c b/target/i386/hax/hax-accel-ops.c index 18114fe34d..0157a628a3 100644 --- a/target/i386/hax/hax-accel-ops.c +++ b/target/i386/hax/hax-accel-ops.c @@ -53,6 +53,8 @@ static void *hax_cpu_thread_fn(void *arg) qemu_wait_io_event(cpu); } while (!cpu->unplug || cpu_can_run(cpu)); + hax_vcpu_destroy(cpu); + cpu_thread_signal_destroyed(cpu); rcu_unregister_thread(); return NULL; } @@ -69,6 +71,7 @@ static void hax_start_vcpu_thread(CPUState *cpu) cpu->cpu_index); qemu_thread_create(cpu->thread, thread_name, hax_cpu_thread_fn, cpu, QEMU_THREAD_JOINABLE); + assert(cpu->hax_vcpu); #ifdef _WIN32 cpu->hThread = qemu_thread_get_handle(cpu->thread); #endif diff --git a/target/i386/hax/hax-all.c b/target/i386/hax/hax-all.c index a2321a1eff..38a4323a3c 100644 --- a/target/i386/hax/hax-all.c +++ b/target/i386/hax/hax-all.c @@ -209,6 +209,7 @@ int hax_vcpu_destroy(CPUState *cpu) CloseHandle(cpu->hThread); #endif g_free(vcpu); + cpu->hax_vcpu = NULL; return 0; } -- 2.38.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 22 16:09:43 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 16:09:43 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553752.864521 (Exim 4.92) (envelope-from ) id 1qCMsH-00041S-Oh; Thu, 22 Jun 2023 16:09:33 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553752.864521; Thu, 22 Jun 2023 16:09:33 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCMsH-00040E-K0; Thu, 22 Jun 2023 16:09:33 +0000 Received: by outflank-mailman (input) for mailman id 553752; Thu, 22 Jun 2023 16:09:31 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCMsF-0001Gi-Sn for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 16:09:31 +0000 Received: from mail-wr1-x430.google.com (mail-wr1-x430.google.com [2a00:1450:4864:20::430]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 2bb0fa60-1117-11ee-b237-6b7b168915f2; Thu, 22 Jun 2023 18:09:31 +0200 (CEST) Received: by mail-wr1-x430.google.com with SMTP id ffacd0b85a97d-3113675d582so4939160f8f.3 for ; Thu, 22 Jun 2023 09:09:31 -0700 (PDT) Received: from localhost.localdomain (230.red-88-28-3.dynamicip.rima-tde.net. [88.28.3.230]) by smtp.gmail.com with ESMTPSA id w8-20020adfcd08000000b00301a351a8d6sm7484316wrm.84.2023.06.22.09.09.26 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Thu, 22 Jun 2023 09:09:30 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 2bb0fa60-1117-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1687450170; x=1690042170; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=UX7A/4NpufAJKKWp2HGkO2gs63RM9WYyIFTo3iDzXaM=; b=DdtbSfGB9fIFn73hC/ZN2gzhWDEsS0lqTX8dZb/if6XVyDDbwZBazG7bXEfDnHcBjo cR4ajzbr27l+07b6XnE3TAUOrrAaPlT5xkF/l909nBh4qbPQ3Le8z4WnnFM4pKME0MKi NbK3/ZqKbBUkNEXH8RgWgsGDDqMpx3luPpSpi46OqkCh5VXZM0ZX6MHWsmyWZfMOlGLK UOr3ih8YC2upaRjqD7yvc8ALouWGlaOZAhU+QIMbyyOMXRFGVh8hLC4KGkyCuxUS6QeS 3FzJNs97K48LpXVOdGHAYg8xBBpXfCsgZVqYjpH6rIQumcZxeMkew5aWBuVSu56hmwO5 pLgQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687450170; x=1690042170; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=UX7A/4NpufAJKKWp2HGkO2gs63RM9WYyIFTo3iDzXaM=; b=Ayhxtn89x+3VqiKe5EGf6xVmfj82km98dDERrkhccgyhD4c2NsRRNTDj//i85auRlb NeAIxHT5xMpxf7Z9sQLBu4ba4HSQChxNjJvwWeXIbXQKxgYqVqQQofZArYOy/yQU3bkN u2DsLhFprsir55gcZ4Q32rQBJpE3Vy/Bw6zh6F0bysyuxea58joz0p4XMafU52IEc/a3 HwGw/UaCcLaNOJOuNO4d2V4Fpb/QrcCav72nisQhpPAqZItzYs06M/md/ooR+q2xnm6S EqtqJ/F3zxNZLVxiDwRJueDNf6maYnB4wUwsVb08s36bjpF/2LuccUlX6Nlz/HAzD9yt O21A== X-Gm-Message-State: AC+VfDwMNm+dGoZyk45hItBq7X/dOBUKvP+Lbj85LtWNwiO+vLvSoN59 54fp1RacfSWo2p0CuxcxuzNM0A== X-Google-Smtp-Source: ACHHUZ6397oLn+9xHpt22BhUSP9QEJUubmRRJRV5VKiXD/mQbPJbeDrcgDPjDy71BF2ku+M1ZHsSsw== X-Received: by 2002:adf:f78a:0:b0:311:1cbd:800a with SMTP id q10-20020adff78a000000b003111cbd800amr13110914wrp.12.1687450170751; Thu, 22 Jun 2023 09:09:30 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Reinoud Zandijk , qemu-arm@nongnu.org, kvm@vger.kernel.org, Marcel Apfelbaum , Stefano Stabellini , Anthony Perard , Yanan Wang , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Peter Maydell , Roman Bolshakov , Paolo Bonzini , Paul Durrant , Sunil Muthuswamy , Alexander Graf , Richard Henderson , xen-devel@lists.xenproject.org, Eduardo Habkost , Cameron Esfahani Subject: [PATCH v2 06/16] accel: Rename 'hax_vcpu' as 'accel' in CPUState Date: Thu, 22 Jun 2023 18:08:13 +0200 Message-Id: <20230622160823.71851-7-philmd@linaro.org> X-Mailer: git-send-email 2.38.1 In-Reply-To: <20230622160823.71851-1-philmd@linaro.org> References: <20230622160823.71851-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit All accelerators will share a single opaque context in CPUState. Start by renaming 'hax_vcpu' as 'accel'. Reviewed-by: Richard Henderson Signed-off-by: Philippe Mathieu-Daudé --- include/hw/core/cpu.h | 2 +- target/i386/hax/hax-accel-ops.c | 2 +- target/i386/hax/hax-all.c | 18 +++++++++--------- target/i386/nvmm/nvmm-all.c | 6 +++--- target/i386/whpx/whpx-all.c | 6 +++--- 5 files changed, 17 insertions(+), 17 deletions(-) diff --git a/include/hw/core/cpu.h b/include/hw/core/cpu.h index 4871ad85f0..84b5a866e7 100644 --- a/include/hw/core/cpu.h +++ b/include/hw/core/cpu.h @@ -441,7 +441,7 @@ struct CPUState { /* Used for user-only emulation of prctl(PR_SET_UNALIGN). */ bool prctl_unalign_sigbus; - struct hax_vcpu_state *hax_vcpu; + struct hax_vcpu_state *accel; struct hvf_vcpu_state *hvf; diff --git a/target/i386/hax/hax-accel-ops.c b/target/i386/hax/hax-accel-ops.c index 0157a628a3..a8512efcd5 100644 --- a/target/i386/hax/hax-accel-ops.c +++ b/target/i386/hax/hax-accel-ops.c @@ -71,7 +71,7 @@ static void hax_start_vcpu_thread(CPUState *cpu) cpu->cpu_index); qemu_thread_create(cpu->thread, thread_name, hax_cpu_thread_fn, cpu, QEMU_THREAD_JOINABLE); - assert(cpu->hax_vcpu); + assert(cpu->accel); #ifdef _WIN32 cpu->hThread = qemu_thread_get_handle(cpu->thread); #endif diff --git a/target/i386/hax/hax-all.c b/target/i386/hax/hax-all.c index 38a4323a3c..3865ff9419 100644 --- a/target/i386/hax/hax-all.c +++ b/target/i386/hax/hax-all.c @@ -62,7 +62,7 @@ int valid_hax_tunnel_size(uint16_t size) hax_fd hax_vcpu_get_fd(CPUArchState *env) { - struct hax_vcpu_state *vcpu = env_cpu(env)->hax_vcpu; + struct hax_vcpu_state *vcpu = env_cpu(env)->accel; if (!vcpu) { return HAX_INVALID_FD; } @@ -188,7 +188,7 @@ int hax_vcpu_create(int id) int hax_vcpu_destroy(CPUState *cpu) { - struct hax_vcpu_state *vcpu = cpu->hax_vcpu; + struct hax_vcpu_state *vcpu = cpu->accel; if (!hax_global.vm) { fprintf(stderr, "vcpu %x destroy failed, vm is null\n", vcpu->vcpu_id); @@ -209,7 +209,7 @@ int hax_vcpu_destroy(CPUState *cpu) CloseHandle(cpu->hThread); #endif g_free(vcpu); - cpu->hax_vcpu = NULL; + cpu->accel = NULL; return 0; } @@ -223,7 +223,7 @@ int hax_init_vcpu(CPUState *cpu) exit(-1); } - cpu->hax_vcpu = hax_global.vm->vcpus[cpu->cpu_index]; + cpu->accel = hax_global.vm->vcpus[cpu->cpu_index]; cpu->vcpu_dirty = true; qemu_register_reset(hax_reset_vcpu_state, cpu->env_ptr); @@ -415,7 +415,7 @@ static int hax_handle_io(CPUArchState *env, uint32_t df, uint16_t port, static int hax_vcpu_interrupt(CPUArchState *env) { CPUState *cpu = env_cpu(env); - struct hax_vcpu_state *vcpu = cpu->hax_vcpu; + struct hax_vcpu_state *vcpu = cpu->accel; struct hax_tunnel *ht = vcpu->tunnel; /* @@ -447,7 +447,7 @@ static int hax_vcpu_interrupt(CPUArchState *env) void hax_raise_event(CPUState *cpu) { - struct hax_vcpu_state *vcpu = cpu->hax_vcpu; + struct hax_vcpu_state *vcpu = cpu->accel; if (!vcpu) { return; @@ -468,7 +468,7 @@ static int hax_vcpu_hax_exec(CPUArchState *env) int ret = 0; CPUState *cpu = env_cpu(env); X86CPU *x86_cpu = X86_CPU(cpu); - struct hax_vcpu_state *vcpu = cpu->hax_vcpu; + struct hax_vcpu_state *vcpu = cpu->accel; struct hax_tunnel *ht = vcpu->tunnel; if (!hax_enabled()) { @@ -1114,8 +1114,8 @@ void hax_reset_vcpu_state(void *opaque) { CPUState *cpu; for (cpu = first_cpu; cpu != NULL; cpu = CPU_NEXT(cpu)) { - cpu->hax_vcpu->tunnel->user_event_pending = 0; - cpu->hax_vcpu->tunnel->ready_for_interrupt_injection = 0; + cpu->accel->tunnel->user_event_pending = 0; + cpu->accel->tunnel->ready_for_interrupt_injection = 0; } } diff --git a/target/i386/nvmm/nvmm-all.c b/target/i386/nvmm/nvmm-all.c index b75738ee9c..cf4f0af24b 100644 --- a/target/i386/nvmm/nvmm-all.c +++ b/target/i386/nvmm/nvmm-all.c @@ -52,7 +52,7 @@ static struct qemu_machine qemu_mach; static struct qemu_vcpu * get_qemu_vcpu(CPUState *cpu) { - return (struct qemu_vcpu *)cpu->hax_vcpu; + return (struct qemu_vcpu *)cpu->accel; } static struct nvmm_machine * @@ -995,7 +995,7 @@ nvmm_init_vcpu(CPUState *cpu) } cpu->vcpu_dirty = true; - cpu->hax_vcpu = (struct hax_vcpu_state *)qcpu; + cpu->accel = (struct hax_vcpu_state *)qcpu; return 0; } @@ -1030,7 +1030,7 @@ nvmm_destroy_vcpu(CPUState *cpu) struct qemu_vcpu *qcpu = get_qemu_vcpu(cpu); nvmm_vcpu_destroy(mach, &qcpu->vcpu); - g_free(cpu->hax_vcpu); + g_free(cpu->accel); } /* -------------------------------------------------------------------------- */ diff --git a/target/i386/whpx/whpx-all.c b/target/i386/whpx/whpx-all.c index 52af81683c..d1ad6f156a 100644 --- a/target/i386/whpx/whpx-all.c +++ b/target/i386/whpx/whpx-all.c @@ -262,7 +262,7 @@ static bool whpx_has_xsave(void) static struct whpx_vcpu *get_whpx_vcpu(CPUState *cpu) { - return (struct whpx_vcpu *)cpu->hax_vcpu; + return (struct whpx_vcpu *)cpu->accel; } static WHV_X64_SEGMENT_REGISTER whpx_seg_q2h(const SegmentCache *qs, int v86, @@ -2258,7 +2258,7 @@ int whpx_init_vcpu(CPUState *cpu) vcpu->interruptable = true; cpu->vcpu_dirty = true; - cpu->hax_vcpu = (struct hax_vcpu_state *)vcpu; + cpu->accel = (struct hax_vcpu_state *)vcpu; max_vcpu_index = max(max_vcpu_index, cpu->cpu_index); qemu_add_vm_change_state_handler(whpx_cpu_update_state, cpu->env_ptr); @@ -2300,7 +2300,7 @@ void whpx_destroy_vcpu(CPUState *cpu) whp_dispatch.WHvDeleteVirtualProcessor(whpx->partition, cpu->cpu_index); whp_dispatch.WHvEmulatorDestroyEmulator(vcpu->emulator); - g_free(cpu->hax_vcpu); + g_free(cpu->accel); return; } -- 2.38.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 22 16:09:55 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 16:09:55 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553758.864531 (Exim 4.92) (envelope-from ) id 1qCMsS-0004h4-WC; Thu, 22 Jun 2023 16:09:45 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553758.864531; Thu, 22 Jun 2023 16:09:44 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCMsS-0004gx-Ro; Thu, 22 Jun 2023 16:09:44 +0000 Received: by outflank-mailman (input) for mailman id 553758; Thu, 22 Jun 2023 16:09:43 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCMsR-0001Yq-8f for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 16:09:43 +0000 Received: from mail-wr1-x432.google.com (mail-wr1-x432.google.com [2a00:1450:4864:20::432]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 31c2a3d8-1117-11ee-8611-37d641c3527e; Thu, 22 Jun 2023 18:09:41 +0200 (CEST) Received: by mail-wr1-x432.google.com with SMTP id ffacd0b85a97d-3113675d582so4939437f8f.3 for ; Thu, 22 Jun 2023 09:09:41 -0700 (PDT) Received: from localhost.localdomain (230.red-88-28-3.dynamicip.rima-tde.net. [88.28.3.230]) by smtp.gmail.com with ESMTPSA id q6-20020adff506000000b00307c8d6b4a0sm7365203wro.26.2023.06.22.09.09.36 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Thu, 22 Jun 2023 09:09:40 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 31c2a3d8-1117-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1687450181; x=1690042181; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=CEVQVFEhZHNy/cnG3lPruZJhEG3g4jextiQzVLX54RM=; b=SWMbMjJlyBtm5Bcs5Hgx8xsm/R/SyPlbc+86z/Pib+CFxsxMZCIvBFiDzrAKjzAP6e 5U4spQdTKBGt4dKZJLewiirbAkuHrcXUQBf+sb8f3diBcS9vwPRS4YeFDv/GbfCuCOaj agnq4eSheHgWta4fDymCjlvdWpqGbg31kVD4c/85wg4mGAlNfKktoS6aP5iDcXxBzQ2k 8zugatryBG0h8USQ+05WldDKrbWNpvrPR0xBIawvKUMmo9OoZgGhMxauyxxVnvkftVy2 z0by5PUyeeeVG2B6codhhf2qKQL47MbeaJkQ/rTbEWGzrkZAUfxlMILC4Vo14gYZm80G uPWw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687450181; x=1690042181; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=CEVQVFEhZHNy/cnG3lPruZJhEG3g4jextiQzVLX54RM=; b=cX1GwLhwoF2VFTJksTC3zuVicH2lF05WQ6xPOhH39Kd8H7KvVDbuhdWB/a7s4mT2PI iZ4YkxoMJVPTsHWTLcMOcuPpKuywtRoHUPanOp4b74rsBAophPIwkiYwyVFj3LJCwZ+M JAXeCeY241Z2CuYPtmDCbj9tYeZgKhaMmQVQMLSrJXk+87n+Ndt7NT+5P/cZISC/r99u b89AP0THRCEnJO44gbaIx7p8QFhS+ZpG2EXATaU71HhF2j3AmCHGf8ZAexnaoDgycCeM 7zQP9liBD+ARu8c5tryODkGyVvSElnwjQcoWckE2r/FetC6BYFvQUfKNEnaLv8LilpT+ NUZQ== X-Gm-Message-State: AC+VfDwD1uYLWzIDfvnXK6t05JzaIGU41pDxCAYTRpiDBeUETueUL3g4 p9+kFeEG9lDFzSt4BKsb4vAytA== X-Google-Smtp-Source: ACHHUZ4nT6po+2alF3S0sJQrN6xHw6556XG/dKFnd67cfUhsDGgYRSSQBeakH0E0LLBXoBk4pMHnVg== X-Received: by 2002:a5d:414e:0:b0:30f:c6cd:e6c7 with SMTP id c14-20020a5d414e000000b0030fc6cde6c7mr12969411wrq.18.1687450180837; Thu, 22 Jun 2023 09:09:40 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Reinoud Zandijk , qemu-arm@nongnu.org, kvm@vger.kernel.org, Marcel Apfelbaum , Stefano Stabellini , Anthony Perard , Yanan Wang , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Peter Maydell , Roman Bolshakov , Paolo Bonzini , Paul Durrant , Sunil Muthuswamy , Alexander Graf , Richard Henderson , xen-devel@lists.xenproject.org, Eduardo Habkost , Cameron Esfahani Subject: [PATCH v2 07/16] accel: Rename HAX 'struct hax_vcpu_state' -> AccelCPUState Date: Thu, 22 Jun 2023 18:08:14 +0200 Message-Id: <20230622160823.71851-8-philmd@linaro.org> X-Mailer: git-send-email 2.38.1 In-Reply-To: <20230622160823.71851-1-philmd@linaro.org> References: <20230622160823.71851-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit We want all accelerators to share the same opaque pointer in CPUState. Start with the HAX context, renaming its forward declarated structure 'hax_vcpu_state' as 'AccelCPUState'. Directly use the typedef. Signed-off-by: Philippe Mathieu-Daudé --- include/hw/core/cpu.h | 5 ++--- target/i386/hax/hax-i386.h | 11 ++++++----- target/i386/hax/hax-all.c | 16 ++++++++-------- target/i386/hax/hax-posix.c | 4 ++-- target/i386/hax/hax-windows.c | 4 ++-- target/i386/nvmm/nvmm-all.c | 2 +- target/i386/whpx/whpx-all.c | 2 +- 7 files changed, 22 insertions(+), 22 deletions(-) diff --git a/include/hw/core/cpu.h b/include/hw/core/cpu.h index 84b5a866e7..7a0eb5ef32 100644 --- a/include/hw/core/cpu.h +++ b/include/hw/core/cpu.h @@ -240,7 +240,6 @@ typedef struct SavedIOTLB { struct KVMState; struct kvm_run; -struct hax_vcpu_state; struct hvf_vcpu_state; /* work queue */ @@ -308,6 +307,7 @@ struct qemu_work_item; * @next_cpu: Next CPU sharing TB cache. * @opaque: User data. * @mem_io_pc: Host Program Counter at which the memory was accessed. + * @accel: Pointer to accelerator specific state. * @kvm_fd: vCPU file descriptor for KVM. * @work_mutex: Lock to prevent multiple access to @work_list. * @work_list: List of pending asynchronous work. @@ -422,6 +422,7 @@ struct CPUState { uint32_t can_do_io; int32_t exception_index; + struct AccelvCPUState *accel; /* shared by kvm, hax and hvf */ bool vcpu_dirty; @@ -441,8 +442,6 @@ struct CPUState { /* Used for user-only emulation of prctl(PR_SET_UNALIGN). */ bool prctl_unalign_sigbus; - struct hax_vcpu_state *accel; - struct hvf_vcpu_state *hvf; /* track IOMMUs whose translations we've cached in the TCG TLB */ diff --git a/target/i386/hax/hax-i386.h b/target/i386/hax/hax-i386.h index 409ebdb4af..341688a254 100644 --- a/target/i386/hax/hax-i386.h +++ b/target/i386/hax/hax-i386.h @@ -25,12 +25,13 @@ typedef HANDLE hax_fd; #endif extern struct hax_state hax_global; -struct hax_vcpu_state { + +typedef struct AccelCPUState { hax_fd fd; int vcpu_id; struct hax_tunnel *tunnel; unsigned char *iobuf; -}; +} hax_vcpu_state; struct hax_state { hax_fd fd; /* the global hax device interface */ @@ -46,7 +47,7 @@ struct hax_vm { hax_fd fd; int id; int numvcpus; - struct hax_vcpu_state **vcpus; + hax_vcpu_state **vcpus; }; /* Functions exported to host specific mode */ @@ -57,7 +58,7 @@ int valid_hax_tunnel_size(uint16_t size); int hax_mod_version(struct hax_state *hax, struct hax_module_version *version); int hax_inject_interrupt(CPUArchState *env, int vector); struct hax_vm *hax_vm_create(struct hax_state *hax, int max_cpus); -int hax_vcpu_run(struct hax_vcpu_state *vcpu); +int hax_vcpu_run(hax_vcpu_state *vcpu); int hax_vcpu_create(int id); void hax_kick_vcpu_thread(CPUState *cpu); @@ -76,7 +77,7 @@ int hax_host_create_vm(struct hax_state *hax, int *vm_id); hax_fd hax_host_open_vm(struct hax_state *hax, int vm_id); int hax_host_create_vcpu(hax_fd vm_fd, int vcpuid); hax_fd hax_host_open_vcpu(int vmid, int vcpuid); -int hax_host_setup_vcpu_channel(struct hax_vcpu_state *vcpu); +int hax_host_setup_vcpu_channel(hax_vcpu_state *vcpu); hax_fd hax_mod_open(void); void hax_memory_init(void); diff --git a/target/i386/hax/hax-all.c b/target/i386/hax/hax-all.c index 3865ff9419..a55b18f353 100644 --- a/target/i386/hax/hax-all.c +++ b/target/i386/hax/hax-all.c @@ -62,7 +62,7 @@ int valid_hax_tunnel_size(uint16_t size) hax_fd hax_vcpu_get_fd(CPUArchState *env) { - struct hax_vcpu_state *vcpu = env_cpu(env)->accel; + hax_vcpu_state *vcpu = env_cpu(env)->accel; if (!vcpu) { return HAX_INVALID_FD; } @@ -136,7 +136,7 @@ static int hax_version_support(struct hax_state *hax) int hax_vcpu_create(int id) { - struct hax_vcpu_state *vcpu = NULL; + hax_vcpu_state *vcpu = NULL; int ret; if (!hax_global.vm) { @@ -149,7 +149,7 @@ int hax_vcpu_create(int id) return 0; } - vcpu = g_new0(struct hax_vcpu_state, 1); + vcpu = g_new0(hax_vcpu_state, 1); ret = hax_host_create_vcpu(hax_global.vm->fd, id); if (ret) { @@ -188,7 +188,7 @@ int hax_vcpu_create(int id) int hax_vcpu_destroy(CPUState *cpu) { - struct hax_vcpu_state *vcpu = cpu->accel; + hax_vcpu_state *vcpu = cpu->accel; if (!hax_global.vm) { fprintf(stderr, "vcpu %x destroy failed, vm is null\n", vcpu->vcpu_id); @@ -263,7 +263,7 @@ struct hax_vm *hax_vm_create(struct hax_state *hax, int max_cpus) } vm->numvcpus = max_cpus; - vm->vcpus = g_new0(struct hax_vcpu_state *, vm->numvcpus); + vm->vcpus = g_new0(hax_vcpu_state *, vm->numvcpus); for (i = 0; i < vm->numvcpus; i++) { vm->vcpus[i] = NULL; } @@ -415,7 +415,7 @@ static int hax_handle_io(CPUArchState *env, uint32_t df, uint16_t port, static int hax_vcpu_interrupt(CPUArchState *env) { CPUState *cpu = env_cpu(env); - struct hax_vcpu_state *vcpu = cpu->accel; + hax_vcpu_state *vcpu = cpu->accel; struct hax_tunnel *ht = vcpu->tunnel; /* @@ -447,7 +447,7 @@ static int hax_vcpu_interrupt(CPUArchState *env) void hax_raise_event(CPUState *cpu) { - struct hax_vcpu_state *vcpu = cpu->accel; + hax_vcpu_state *vcpu = cpu->accel; if (!vcpu) { return; @@ -468,7 +468,7 @@ static int hax_vcpu_hax_exec(CPUArchState *env) int ret = 0; CPUState *cpu = env_cpu(env); X86CPU *x86_cpu = X86_CPU(cpu); - struct hax_vcpu_state *vcpu = cpu->accel; + hax_vcpu_state *vcpu = cpu->accel; struct hax_tunnel *ht = vcpu->tunnel; if (!hax_enabled()) { diff --git a/target/i386/hax/hax-posix.c b/target/i386/hax/hax-posix.c index ac1a51096e..8ee247845b 100644 --- a/target/i386/hax/hax-posix.c +++ b/target/i386/hax/hax-posix.c @@ -205,7 +205,7 @@ hax_fd hax_host_open_vcpu(int vmid, int vcpuid) return fd; } -int hax_host_setup_vcpu_channel(struct hax_vcpu_state *vcpu) +int hax_host_setup_vcpu_channel(hax_vcpu_state *vcpu) { int ret; struct hax_tunnel_info info; @@ -227,7 +227,7 @@ int hax_host_setup_vcpu_channel(struct hax_vcpu_state *vcpu) return 0; } -int hax_vcpu_run(struct hax_vcpu_state *vcpu) +int hax_vcpu_run(hax_vcpu_state *vcpu) { return ioctl(vcpu->fd, HAX_VCPU_IOCTL_RUN, NULL); } diff --git a/target/i386/hax/hax-windows.c b/target/i386/hax/hax-windows.c index 59afa213a6..08ec93a256 100644 --- a/target/i386/hax/hax-windows.c +++ b/target/i386/hax/hax-windows.c @@ -301,7 +301,7 @@ hax_fd hax_host_open_vcpu(int vmid, int vcpuid) return hDeviceVCPU; } -int hax_host_setup_vcpu_channel(struct hax_vcpu_state *vcpu) +int hax_host_setup_vcpu_channel(hax_vcpu_state *vcpu) { hax_fd hDeviceVCPU = vcpu->fd; int ret; @@ -327,7 +327,7 @@ int hax_host_setup_vcpu_channel(struct hax_vcpu_state *vcpu) return 0; } -int hax_vcpu_run(struct hax_vcpu_state *vcpu) +int hax_vcpu_run(hax_vcpu_state *vcpu) { int ret; HANDLE hDeviceVCPU = vcpu->fd; diff --git a/target/i386/nvmm/nvmm-all.c b/target/i386/nvmm/nvmm-all.c index cf4f0af24b..50b96ced45 100644 --- a/target/i386/nvmm/nvmm-all.c +++ b/target/i386/nvmm/nvmm-all.c @@ -995,7 +995,7 @@ nvmm_init_vcpu(CPUState *cpu) } cpu->vcpu_dirty = true; - cpu->accel = (struct hax_vcpu_state *)qcpu; + cpu->accel = (struct AccelCPUState *)qcpu; return 0; } diff --git a/target/i386/whpx/whpx-all.c b/target/i386/whpx/whpx-all.c index d1ad6f156a..340053e6dd 100644 --- a/target/i386/whpx/whpx-all.c +++ b/target/i386/whpx/whpx-all.c @@ -2258,7 +2258,7 @@ int whpx_init_vcpu(CPUState *cpu) vcpu->interruptable = true; cpu->vcpu_dirty = true; - cpu->accel = (struct hax_vcpu_state *)vcpu; + cpu->accel = (struct AccelCPUState *)vcpu; max_vcpu_index = max(max_vcpu_index, cpu->cpu_index); qemu_add_vm_change_state_handler(whpx_cpu_update_state, cpu->env_ptr); -- 2.38.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 22 16:19:28 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 16:19:28 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553767.864542 (Exim 4.92) (envelope-from ) id 1qCN1p-0006nW-06; Thu, 22 Jun 2023 16:19:25 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553767.864542; Thu, 22 Jun 2023 16:19:24 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCN1o-0006nP-Q5; Thu, 22 Jun 2023 16:19:24 +0000 Received: by outflank-mailman (input) for mailman id 553767; Thu, 22 Jun 2023 16:19:23 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCMsu-0001Gi-06 for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 16:10:12 +0000 Received: from mail-wr1-x42a.google.com (mail-wr1-x42a.google.com [2a00:1450:4864:20::42a]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 43a5c48f-1117-11ee-b237-6b7b168915f2; Thu, 22 Jun 2023 18:10:11 +0200 (CEST) Received: by mail-wr1-x42a.google.com with SMTP id ffacd0b85a97d-311099fac92so8483997f8f.0 for ; Thu, 22 Jun 2023 09:10:11 -0700 (PDT) Received: from localhost.localdomain (230.red-88-28-3.dynamicip.rima-tde.net. [88.28.3.230]) by smtp.gmail.com with ESMTPSA id p1-20020adfcc81000000b0030ada01ca78sm7404978wrj.10.2023.06.22.09.10.06 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Thu, 22 Jun 2023 09:10:10 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 43a5c48f-1117-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1687450211; x=1690042211; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=DKJxOwJmFtwOPAoIICT6M4A+Kzh99mIVYxe/d/9G77Y=; b=eg02hjlfgcDaH24aEbjvIFOFqry3t+y3ca6mONxnjQGWPL1Jdtwu4KdzlrO2pncUEm v2uAXFNtaqYiIggOc18WWF8JNx7doFAbVKyL4i5VvjAKuJTrn61jQREqSGuH7wbxPOHB SQl9lpmkdOY2I8TmvPTRmSHTV/xdmaBelLgPfNn9zpSA2OubeWfB677UATrlvOYIbcR5 Xd77M5NfRhzJ8nLGIWLXvPckfbvl62BDfMBhKFdJDV8OUDdGPmWJ81CYWWuuNJVbGqz8 ykGAHRraJs8kr5Nc/YT6E4MagkrdbYLZbwKyQ84h9/BoPe+M9i29JT/WKZ3nt6qAzCaS onVQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687450211; x=1690042211; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=DKJxOwJmFtwOPAoIICT6M4A+Kzh99mIVYxe/d/9G77Y=; b=bqiCUCahgK0jod2/eb7EVwiCOGBQMKi0H5GCCrBg7thzKhRckNr+68+w5pDPw+3vs0 hG79fcJSJdYpuifPJnkR5VLhI6045xVGBcGfQxVknKxYNsI8nerEO4AtCHDP+VyaDF14 vpCd7NmocMGV8n1rvwin1NOIfyM5MDlf3VUHrbSoEkX4H/xVybT0YK2trmO1er/BTBwg knK5yxgde2BnFa6HBnAu3THEp0E4Ewxqz6UyFmd8d6KKxg2/mBwnTPgJIHlvkYP4HkP+ ukootCgXHC+10oM3Va+Sg7nH0OsVNXPYQ6Wfz2R0gRCdT73ONv03KNHBMA4lMTKM7PBg JlUA== X-Gm-Message-State: AC+VfDxuXmCwwHI8ajShmri9ZIPKMSfRWTnXI7BWmiRzCvI29JzKu4Ej 1q/6kLxybi4Yb9EZZK+yRNOrjw== X-Google-Smtp-Source: ACHHUZ4UJwkfw8UWBY57D2hqCgPl1JN/hvtysVX8WTPHmCC0zEYaJGE4bKrnhQf98VbpMbWrM/7XNw== X-Received: by 2002:a5d:5751:0:b0:30f:c943:f925 with SMTP id q17-20020a5d5751000000b0030fc943f925mr15315373wrw.49.1687450210926; Thu, 22 Jun 2023 09:10:10 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Reinoud Zandijk , qemu-arm@nongnu.org, kvm@vger.kernel.org, Marcel Apfelbaum , Stefano Stabellini , Anthony Perard , Yanan Wang , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Peter Maydell , Roman Bolshakov , Paolo Bonzini , Paul Durrant , Sunil Muthuswamy , Alexander Graf , Richard Henderson , xen-devel@lists.xenproject.org, Eduardo Habkost , Cameron Esfahani Subject: [PATCH v2 10/16] accel: Rename NVMM 'struct qemu_vcpu' -> AccelCPUState Date: Thu, 22 Jun 2023 18:08:17 +0200 Message-Id: <20230622160823.71851-11-philmd@linaro.org> X-Mailer: git-send-email 2.38.1 In-Reply-To: <20230622160823.71851-1-philmd@linaro.org> References: <20230622160823.71851-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit We want all accelerators to share the same opaque pointer in CPUState. Rename NVMM 'qemu_vcpu' as 'AccelCPUState'; directly use the typedef, remove unnecessary casts. Reviewed-by: Richard Henderson Signed-off-by: Philippe Mathieu-Daudé --- target/i386/nvmm/nvmm-all.c | 34 +++++++++++++++++----------------- 1 file changed, 17 insertions(+), 17 deletions(-) diff --git a/target/i386/nvmm/nvmm-all.c b/target/i386/nvmm/nvmm-all.c index 0588a328ae..e5ee4af084 100644 --- a/target/i386/nvmm/nvmm-all.c +++ b/target/i386/nvmm/nvmm-all.c @@ -26,7 +26,7 @@ #include -struct qemu_vcpu { +struct AccelCPUState { struct nvmm_vcpu vcpu; uint8_t tpr; bool stop; @@ -49,10 +49,10 @@ struct qemu_machine { static bool nvmm_allowed; static struct qemu_machine qemu_mach; -static struct qemu_vcpu * +static AccelCPUState * get_qemu_vcpu(CPUState *cpu) { - return (struct qemu_vcpu *)cpu->accel; + return cpu->accel; } static struct nvmm_machine * @@ -86,7 +86,7 @@ nvmm_set_registers(CPUState *cpu) { CPUX86State *env = cpu->env_ptr; struct nvmm_machine *mach = get_nvmm_mach(); - struct qemu_vcpu *qcpu = get_qemu_vcpu(cpu); + AccelCPUState *qcpu = get_qemu_vcpu(cpu); struct nvmm_vcpu *vcpu = &qcpu->vcpu; struct nvmm_x64_state *state = vcpu->state; uint64_t bitmap; @@ -223,7 +223,7 @@ nvmm_get_registers(CPUState *cpu) { CPUX86State *env = cpu->env_ptr; struct nvmm_machine *mach = get_nvmm_mach(); - struct qemu_vcpu *qcpu = get_qemu_vcpu(cpu); + AccelCPUState *qcpu = get_qemu_vcpu(cpu); struct nvmm_vcpu *vcpu = &qcpu->vcpu; X86CPU *x86_cpu = X86_CPU(cpu); struct nvmm_x64_state *state = vcpu->state; @@ -347,7 +347,7 @@ static bool nvmm_can_take_int(CPUState *cpu) { CPUX86State *env = cpu->env_ptr; - struct qemu_vcpu *qcpu = get_qemu_vcpu(cpu); + AccelCPUState *qcpu = get_qemu_vcpu(cpu); struct nvmm_vcpu *vcpu = &qcpu->vcpu; struct nvmm_machine *mach = get_nvmm_mach(); @@ -372,7 +372,7 @@ nvmm_can_take_int(CPUState *cpu) static bool nvmm_can_take_nmi(CPUState *cpu) { - struct qemu_vcpu *qcpu = get_qemu_vcpu(cpu); + AccelCPUState *qcpu = get_qemu_vcpu(cpu); /* * Contrary to INTs, NMIs always schedule an exit when they are @@ -395,7 +395,7 @@ nvmm_vcpu_pre_run(CPUState *cpu) { CPUX86State *env = cpu->env_ptr; struct nvmm_machine *mach = get_nvmm_mach(); - struct qemu_vcpu *qcpu = get_qemu_vcpu(cpu); + AccelCPUState *qcpu = get_qemu_vcpu(cpu); struct nvmm_vcpu *vcpu = &qcpu->vcpu; X86CPU *x86_cpu = X86_CPU(cpu); struct nvmm_x64_state *state = vcpu->state; @@ -478,7 +478,7 @@ nvmm_vcpu_pre_run(CPUState *cpu) static void nvmm_vcpu_post_run(CPUState *cpu, struct nvmm_vcpu_exit *exit) { - struct qemu_vcpu *qcpu = get_qemu_vcpu(cpu); + AccelCPUState *qcpu = get_qemu_vcpu(cpu); CPUX86State *env = cpu->env_ptr; X86CPU *x86_cpu = X86_CPU(cpu); uint64_t tpr; @@ -565,7 +565,7 @@ static int nvmm_handle_rdmsr(struct nvmm_machine *mach, CPUState *cpu, struct nvmm_vcpu_exit *exit) { - struct qemu_vcpu *qcpu = get_qemu_vcpu(cpu); + AccelCPUState *qcpu = get_qemu_vcpu(cpu); struct nvmm_vcpu *vcpu = &qcpu->vcpu; X86CPU *x86_cpu = X86_CPU(cpu); struct nvmm_x64_state *state = vcpu->state; @@ -610,7 +610,7 @@ static int nvmm_handle_wrmsr(struct nvmm_machine *mach, CPUState *cpu, struct nvmm_vcpu_exit *exit) { - struct qemu_vcpu *qcpu = get_qemu_vcpu(cpu); + AccelCPUState *qcpu = get_qemu_vcpu(cpu); struct nvmm_vcpu *vcpu = &qcpu->vcpu; X86CPU *x86_cpu = X86_CPU(cpu); struct nvmm_x64_state *state = vcpu->state; @@ -686,7 +686,7 @@ nvmm_vcpu_loop(CPUState *cpu) { CPUX86State *env = cpu->env_ptr; struct nvmm_machine *mach = get_nvmm_mach(); - struct qemu_vcpu *qcpu = get_qemu_vcpu(cpu); + AccelCPUState *qcpu = get_qemu_vcpu(cpu); struct nvmm_vcpu *vcpu = &qcpu->vcpu; X86CPU *x86_cpu = X86_CPU(cpu); struct nvmm_vcpu_exit *exit = vcpu->exit; @@ -892,7 +892,7 @@ static void nvmm_ipi_signal(int sigcpu) { if (current_cpu) { - struct qemu_vcpu *qcpu = get_qemu_vcpu(current_cpu); + AccelCPUState *qcpu = get_qemu_vcpu(current_cpu); #if NVMM_USER_VERSION >= 2 struct nvmm_vcpu *vcpu = &qcpu->vcpu; nvmm_vcpu_stop(vcpu); @@ -926,7 +926,7 @@ nvmm_init_vcpu(CPUState *cpu) struct nvmm_vcpu_conf_cpuid cpuid; struct nvmm_vcpu_conf_tpr tpr; Error *local_error = NULL; - struct qemu_vcpu *qcpu; + AccelCPUState *qcpu; int ret, err; nvmm_init_cpu_signals(); @@ -942,7 +942,7 @@ nvmm_init_vcpu(CPUState *cpu) } } - qcpu = g_malloc0(sizeof(*qcpu)); + qcpu = g_new0(AccelCPUState, 1); ret = nvmm_vcpu_create(mach, cpu->cpu_index, &qcpu->vcpu); if (ret == -1) { @@ -991,7 +991,7 @@ nvmm_init_vcpu(CPUState *cpu) } cpu->vcpu_dirty = true; - cpu->accel = (struct AccelCPUState *)qcpu; + cpu->accel = qcpu; return 0; } @@ -1023,7 +1023,7 @@ void nvmm_destroy_vcpu(CPUState *cpu) { struct nvmm_machine *mach = get_nvmm_mach(); - struct qemu_vcpu *qcpu = get_qemu_vcpu(cpu); + AccelCPUState *qcpu = get_qemu_vcpu(cpu); nvmm_vcpu_destroy(mach, &qcpu->vcpu); g_free(cpu->accel); -- 2.38.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 22 16:19:28 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 16:19:28 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553771.864550 (Exim 4.92) (envelope-from ) id 1qCN1p-0006sJ-Eq; Thu, 22 Jun 2023 16:19:25 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553771.864550; Thu, 22 Jun 2023 16:19:25 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCN1p-0006qL-7m; Thu, 22 Jun 2023 16:19:25 +0000 Received: by outflank-mailman (input) for mailman id 553771; Thu, 22 Jun 2023 16:19:24 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCMtZ-0001Yq-1U for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 16:10:53 +0000 Received: from mail-wr1-x430.google.com (mail-wr1-x430.google.com [2a00:1450:4864:20::430]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 5b7d2135-1117-11ee-8611-37d641c3527e; Thu, 22 Jun 2023 18:10:51 +0200 (CEST) Received: by mail-wr1-x430.google.com with SMTP id ffacd0b85a97d-3113675d582so4941043f8f.3 for ; Thu, 22 Jun 2023 09:10:51 -0700 (PDT) Received: from localhost.localdomain (230.red-88-28-3.dynamicip.rima-tde.net. [88.28.3.230]) by smtp.gmail.com with ESMTPSA id z17-20020a5d6551000000b00307bc4e39e5sm7314320wrv.117.2023.06.22.09.10.46 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Thu, 22 Jun 2023 09:10:50 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 5b7d2135-1117-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1687450251; x=1690042251; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=n1vRGyzu8+XqKaMgtN/nMAkP8vtjVhpBIfkdPMVYyfg=; b=SzgUJ/3O2JDLimh3+Agd51LJmZaiaEI8ZFwaKFU+xUs5N8igbv+HWLrxj9PAtNvt2P tWlCEtAkV4Akr6+YlAN8K0+yYGd8sx7dWoQtnO9KdQzwhhCQld65/SzWP89kgi87B8eh lKMQC9nQ2o/IYRKSQG/yO9HtB3B5uhxSrJ9JhYdyhuNC01KDTA0mRGksU/fOnTci3VcF eTy0N5FdKs+2ao4NC9iyl73k4WTq5YyQZ/JcjaHtorbZwzW7L3xdvwCsUkTmug4AIfdv WLk3g3kHwPWZQJTJwWN7mJvQlvPyRQSzb5+sWK5ic1pU1dfvlbmGNaZyANDyv6I1Adx6 w5kg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687450251; x=1690042251; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=n1vRGyzu8+XqKaMgtN/nMAkP8vtjVhpBIfkdPMVYyfg=; b=PF9RV3bz1mwzj08MPI6YVS9HLRHaNC0GxYx3IQW0zHSDSBCNZUlvf51Ced/4AkvY0U 75z1z50r8YUp7XzpI+NwPyui0hz8MDq+8oLBubu7YNWQP+l5ZuF05i8kPSIzcM3855su 2Y5rCjU7rsfY7bVCiGQMimO5Yep5/vP5aVTT6N0wLN2+6r+RgKtOB2id4F+YCM7TyIKK Eh628JbyD3g4qD7Asp9yVVG3qO8e2On6myX0PNwMkdl9LabbPu9RyLvT6iLk4tdPYl5B LOKl7/tL0BBMWGXxBf4efXgn9SFZkXvEO/wI5ZhYBBB3YIwaSDZEDJPJylB3ZvbaJkFr anfQ== X-Gm-Message-State: AC+VfDy/0uk1WaAdUPBM/MVHIo5bzSgsSDMbZQF/LGUWQKKJsscbmg4v hP29R1DcrdnqU2dFfD3xU4TAWA== X-Google-Smtp-Source: ACHHUZ6Zvkg+/2pI/zQv1tCUfVDDfB62uZn7snk8J9Qv86AyAfhXfm7jju4fWwybVTRViGAkVekuMA== X-Received: by 2002:a5d:4cc2:0:b0:309:5068:9ebe with SMTP id c2-20020a5d4cc2000000b0030950689ebemr12061202wrt.50.1687450250976; Thu, 22 Jun 2023 09:10:50 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Reinoud Zandijk , qemu-arm@nongnu.org, kvm@vger.kernel.org, Marcel Apfelbaum , Stefano Stabellini , Anthony Perard , Yanan Wang , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Peter Maydell , Roman Bolshakov , Paolo Bonzini , Paul Durrant , Sunil Muthuswamy , Alexander Graf , Richard Henderson , xen-devel@lists.xenproject.org, Eduardo Habkost , Cameron Esfahani Subject: [PATCH v2 14/16] accel: Inline WHPX get_whpx_vcpu() Date: Thu, 22 Jun 2023 18:08:21 +0200 Message-Id: <20230622160823.71851-15-philmd@linaro.org> X-Mailer: git-send-email 2.38.1 In-Reply-To: <20230622160823.71851-1-philmd@linaro.org> References: <20230622160823.71851-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit No need for this helper to access the CPUState::accel field. Reviewed-by: Richard Henderson Signed-off-by: Philippe Mathieu-Daudé --- target/i386/whpx/whpx-all.c | 29 ++++++++++------------------- 1 file changed, 10 insertions(+), 19 deletions(-) diff --git a/target/i386/whpx/whpx-all.c b/target/i386/whpx/whpx-all.c index 107b731d3f..fdac13c7c1 100644 --- a/target/i386/whpx/whpx-all.c +++ b/target/i386/whpx/whpx-all.c @@ -256,15 +256,6 @@ static bool whpx_has_xsave(void) return whpx_xsave_cap.XsaveSupport; } -/* - * VP support - */ - -static AccelCPUState *get_whpx_vcpu(CPUState *cpu) -{ - return (AccelCPUState *)cpu->accel; -} - static WHV_X64_SEGMENT_REGISTER whpx_seg_q2h(const SegmentCache *qs, int v86, int r86) { @@ -390,7 +381,7 @@ static uint64_t whpx_cr8_to_apic_tpr(uint64_t cr8) static void whpx_set_registers(CPUState *cpu, int level) { struct whpx_state *whpx = &whpx_global; - AccelCPUState *vcpu = get_whpx_vcpu(cpu); + AccelCPUState *vcpu = cpu->accel; CPUX86State *env = cpu->env_ptr; X86CPU *x86_cpu = X86_CPU(cpu); struct whpx_register_set vcxt; @@ -609,7 +600,7 @@ static void whpx_get_xcrs(CPUState *cpu) static void whpx_get_registers(CPUState *cpu) { struct whpx_state *whpx = &whpx_global; - AccelCPUState *vcpu = get_whpx_vcpu(cpu); + AccelCPUState *vcpu = cpu->accel; CPUX86State *env = cpu->env_ptr; X86CPU *x86_cpu = X86_CPU(cpu); struct whpx_register_set vcxt; @@ -892,7 +883,7 @@ static const WHV_EMULATOR_CALLBACKS whpx_emu_callbacks = { static int whpx_handle_mmio(CPUState *cpu, WHV_MEMORY_ACCESS_CONTEXT *ctx) { HRESULT hr; - AccelCPUState *vcpu = get_whpx_vcpu(cpu); + AccelCPUState *vcpu = cpu->accel; WHV_EMULATOR_STATUS emu_status; hr = whp_dispatch.WHvEmulatorTryMmioEmulation( @@ -917,7 +908,7 @@ static int whpx_handle_portio(CPUState *cpu, WHV_X64_IO_PORT_ACCESS_CONTEXT *ctx) { HRESULT hr; - AccelCPUState *vcpu = get_whpx_vcpu(cpu); + AccelCPUState *vcpu = cpu->accel; WHV_EMULATOR_STATUS emu_status; hr = whp_dispatch.WHvEmulatorTryIoEmulation( @@ -1417,7 +1408,7 @@ static vaddr whpx_vcpu_get_pc(CPUState *cpu, bool exit_context_valid) * of QEMU, nor this port by calling WHvSetVirtualProcessorRegisters(). * This is the most common case. */ - AccelCPUState *vcpu = get_whpx_vcpu(cpu); + AccelCPUState *vcpu = cpu->accel; return vcpu->exit_ctx.VpContext.Rip; } else { /* @@ -1468,7 +1459,7 @@ static void whpx_vcpu_pre_run(CPUState *cpu) { HRESULT hr; struct whpx_state *whpx = &whpx_global; - AccelCPUState *vcpu = get_whpx_vcpu(cpu); + AccelCPUState *vcpu = cpu->accel; CPUX86State *env = cpu->env_ptr; X86CPU *x86_cpu = X86_CPU(cpu); int irq; @@ -1590,7 +1581,7 @@ static void whpx_vcpu_pre_run(CPUState *cpu) static void whpx_vcpu_post_run(CPUState *cpu) { - AccelCPUState *vcpu = get_whpx_vcpu(cpu); + AccelCPUState *vcpu = cpu->accel; CPUX86State *env = cpu->env_ptr; X86CPU *x86_cpu = X86_CPU(cpu); @@ -1617,7 +1608,7 @@ static void whpx_vcpu_process_async_events(CPUState *cpu) { CPUX86State *env = cpu->env_ptr; X86CPU *x86_cpu = X86_CPU(cpu); - AccelCPUState *vcpu = get_whpx_vcpu(cpu); + AccelCPUState *vcpu = cpu->accel; if ((cpu->interrupt_request & CPU_INTERRUPT_INIT) && !(env->hflags & HF_SMM_MASK)) { @@ -1656,7 +1647,7 @@ static int whpx_vcpu_run(CPUState *cpu) { HRESULT hr; struct whpx_state *whpx = &whpx_global; - AccelCPUState *vcpu = get_whpx_vcpu(cpu); + AccelCPUState *vcpu = cpu->accel; struct whpx_breakpoint *stepped_over_bp = NULL; WhpxStepMode exclusive_step_mode = WHPX_STEP_NONE; int ret; @@ -2290,7 +2281,7 @@ int whpx_vcpu_exec(CPUState *cpu) void whpx_destroy_vcpu(CPUState *cpu) { struct whpx_state *whpx = &whpx_global; - AccelCPUState *vcpu = get_whpx_vcpu(cpu); + AccelCPUState *vcpu = cpu->accel; whp_dispatch.WHvDeleteVirtualProcessor(whpx->partition, cpu->cpu_index); whp_dispatch.WHvEmulatorDestroyEmulator(vcpu->emulator); -- 2.38.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 22 16:19:28 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 16:19:28 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553773.864571 (Exim 4.92) (envelope-from ) id 1qCN1q-0007Vf-Rr; Thu, 22 Jun 2023 16:19:26 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553773.864571; Thu, 22 Jun 2023 16:19:26 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCN1q-0007U5-Ll; Thu, 22 Jun 2023 16:19:26 +0000 Received: by outflank-mailman (input) for mailman id 553773; Thu, 22 Jun 2023 16:19:24 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCMsZ-0001Gi-Ss for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 16:09:51 +0000 Received: from mail-wr1-x430.google.com (mail-wr1-x430.google.com [2a00:1450:4864:20::430]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 37c2c544-1117-11ee-b237-6b7b168915f2; Thu, 22 Jun 2023 18:09:51 +0200 (CEST) Received: by mail-wr1-x430.google.com with SMTP id ffacd0b85a97d-31129591288so5615168f8f.1 for ; Thu, 22 Jun 2023 09:09:51 -0700 (PDT) Received: from localhost.localdomain (230.red-88-28-3.dynamicip.rima-tde.net. [88.28.3.230]) by smtp.gmail.com with ESMTPSA id 18-20020a05600c231200b003f9063fc3cbsm15728266wmo.44.2023.06.22.09.09.46 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Thu, 22 Jun 2023 09:09:50 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 37c2c544-1117-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1687450191; x=1690042191; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=JvPaiGifFa4V3EDPR8281c6klb7rmX/1fxpDcHgqe0M=; b=eMI0lYofss2LnSC9zIInA8Ipk7eMxXhs+QiJpeQw9NS9zkZEFQ1lVPz/mbrEgeEiXA Ri7nz3jKh0S6qK5bsBvFyX/ct26k8E5D8eKE417CKn6y2iGv2+rM8N9uwLCMdAKyEI7X MMdOjASfQZS5YzkHqhkSQtobW3/VLtYbGQcltoxMV3nPGbcAESIgwLdZybGqteLBVnBg a5dpQ46mz72Ed6dT4hb+hrjZXYiJyZjkSA9COUibnKtQZC0+hriXiYatbrVRlJqxvbzY lFDuP+sY/SBTHtbuawPlcyqRonlrtNxF9U2xibk40wo1M3U6dJPNYJfm0W1mWDJUNQxk k1+g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687450191; x=1690042191; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=JvPaiGifFa4V3EDPR8281c6klb7rmX/1fxpDcHgqe0M=; b=FC/uy+B2ECXlyZwWdwydaa5J7AbPPRYuihu0X08KgGeFqDRzqb5QiQxWlPvlQv2aoO 87CByU2Cy+nfAofmunql36In5iu522waxTD5wRgRHaNCqwchgdlnIgEVKoEvlm3rIhto gagHcq9BAL/l7HvBg+3NfN1wKL3kJE2ZnMckWyexynPhp71yGvGYCflJ9HeTrOIRSsg5 eub9pCNEBfe6ZxaEeGJxHLu/siZ2PwvvGNgHucUum0zeI7WCfOy5laqCJmSXBJB9M0EJ U0ex+OJRZ/NtmBL8jjeRs2ez3Wdxq0mPRFvyjwPIeS6z+3CtZ1sosIhzsbJjI22Oqr9l tROw== X-Gm-Message-State: AC+VfDz2mmcyODRElyy8E4ffJ7cpepWW+68qE6S4xbsO9BwhJ0nCijV5 0gfH1NcKKd/geew7epE9OaKwMw== X-Google-Smtp-Source: ACHHUZ6G9OLsvBnleSSkNlcXjvZT2geh5kw9jW1iWf49K3tUM4xM9BzXlYcfgI7DqMTT/RTvu7N/RA== X-Received: by 2002:a7b:cb05:0:b0:3f8:f015:69c9 with SMTP id u5-20020a7bcb05000000b003f8f01569c9mr12695304wmj.11.1687450190857; Thu, 22 Jun 2023 09:09:50 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Reinoud Zandijk , qemu-arm@nongnu.org, kvm@vger.kernel.org, Marcel Apfelbaum , Stefano Stabellini , Anthony Perard , Yanan Wang , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Peter Maydell , Roman Bolshakov , Paolo Bonzini , Paul Durrant , Sunil Muthuswamy , Alexander Graf , Richard Henderson , xen-devel@lists.xenproject.org, Eduardo Habkost , Cameron Esfahani Subject: [PATCH v2 08/16] accel: Move HAX hThread to accelerator context Date: Thu, 22 Jun 2023 18:08:15 +0200 Message-Id: <20230622160823.71851-9-philmd@linaro.org> X-Mailer: git-send-email 2.38.1 In-Reply-To: <20230622160823.71851-1-philmd@linaro.org> References: <20230622160823.71851-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit hThread variable is only used by the HAX accelerator, so move it to the accelerator specific context. Signed-off-by: Philippe Mathieu-Daudé Reviewed-by: Richard Henderson --- include/hw/core/cpu.h | 1 - target/i386/hax/hax-i386.h | 3 +++ target/i386/hax/hax-accel-ops.c | 2 +- target/i386/hax/hax-all.c | 2 +- target/i386/hax/hax-windows.c | 2 +- 5 files changed, 6 insertions(+), 4 deletions(-) diff --git a/include/hw/core/cpu.h b/include/hw/core/cpu.h index 7a0eb5ef32..01388d5918 100644 --- a/include/hw/core/cpu.h +++ b/include/hw/core/cpu.h @@ -337,7 +337,6 @@ struct CPUState { struct QemuThread *thread; #ifdef _WIN32 - HANDLE hThread; QemuSemaphore sem; #endif int thread_id; diff --git a/target/i386/hax/hax-i386.h b/target/i386/hax/hax-i386.h index 341688a254..7055f5b53e 100644 --- a/target/i386/hax/hax-i386.h +++ b/target/i386/hax/hax-i386.h @@ -27,6 +27,9 @@ typedef HANDLE hax_fd; extern struct hax_state hax_global; typedef struct AccelCPUState { +#ifdef _WIN32 + HANDLE hThread; +#endif hax_fd fd; int vcpu_id; struct hax_tunnel *tunnel; diff --git a/target/i386/hax/hax-accel-ops.c b/target/i386/hax/hax-accel-ops.c index a8512efcd5..5031096760 100644 --- a/target/i386/hax/hax-accel-ops.c +++ b/target/i386/hax/hax-accel-ops.c @@ -73,7 +73,7 @@ static void hax_start_vcpu_thread(CPUState *cpu) cpu, QEMU_THREAD_JOINABLE); assert(cpu->accel); #ifdef _WIN32 - cpu->hThread = qemu_thread_get_handle(cpu->thread); + cpu->accel->hThread = qemu_thread_get_handle(cpu->thread); #endif } diff --git a/target/i386/hax/hax-all.c b/target/i386/hax/hax-all.c index a55b18f353..c9ccc411e9 100644 --- a/target/i386/hax/hax-all.c +++ b/target/i386/hax/hax-all.c @@ -206,7 +206,7 @@ int hax_vcpu_destroy(CPUState *cpu) hax_close_fd(vcpu->fd); hax_global.vm->vcpus[vcpu->vcpu_id] = NULL; #ifdef _WIN32 - CloseHandle(cpu->hThread); + CloseHandle(vcpu->hThread); #endif g_free(vcpu); cpu->accel = NULL; diff --git a/target/i386/hax/hax-windows.c b/target/i386/hax/hax-windows.c index 08ec93a256..b907953321 100644 --- a/target/i386/hax/hax-windows.c +++ b/target/i386/hax/hax-windows.c @@ -476,7 +476,7 @@ void hax_kick_vcpu_thread(CPUState *cpu) */ cpu->exit_request = 1; if (!qemu_cpu_is_self(cpu)) { - if (!QueueUserAPC(dummy_apc_func, cpu->hThread, 0)) { + if (!QueueUserAPC(dummy_apc_func, cpu->accel->hThread, 0)) { fprintf(stderr, "%s: QueueUserAPC failed with error %lu\n", __func__, GetLastError()); exit(1); -- 2.38.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 22 16:19:28 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 16:19:28 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553770.864545 (Exim 4.92) (envelope-from ) id 1qCN1p-0006oz-5i; Thu, 22 Jun 2023 16:19:25 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553770.864545; Thu, 22 Jun 2023 16:19:25 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCN1p-0006oW-1I; Thu, 22 Jun 2023 16:19:25 +0000 Received: by outflank-mailman (input) for mailman id 553770; Thu, 22 Jun 2023 16:19:24 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCMsl-0001Yq-71 for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 16:10:03 +0000 Received: from mail-wr1-x436.google.com (mail-wr1-x436.google.com [2a00:1450:4864:20::436]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 3dbce790-1117-11ee-8611-37d641c3527e; Thu, 22 Jun 2023 18:10:01 +0200 (CEST) Received: by mail-wr1-x436.google.com with SMTP id ffacd0b85a97d-3110ab7110aso7571834f8f.3 for ; Thu, 22 Jun 2023 09:10:01 -0700 (PDT) Received: from localhost.localdomain (230.red-88-28-3.dynamicip.rima-tde.net. [88.28.3.230]) by smtp.gmail.com with ESMTPSA id 18-20020a05600c231200b003f9063fc3cbsm15728619wmo.44.2023.06.22.09.09.56 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Thu, 22 Jun 2023 09:10:00 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 3dbce790-1117-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1687450201; x=1690042201; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=0HtP5OMiHV1uHyCREuOsPgXLNdWuwc5y+seBeAIuir0=; b=fD2yFKYVUSbELRWkgGW0danFEJd49UvIoHVUaoL+iV8IqYQvNfiml31iLxtBJeKK+2 BhYPg4qUhHRzjckRgaA9Y7ICZhNcCZMhqc202pVq8XOrpxWtk6WoH7hxA67ck5XYCSA2 a1mUXkxpR3fQsnOmFzfz0iq4qYue5q1tdAT5/kH9rAuDXlR9gqshBZLvQbP2e7xh87Rz 116ue4dKX7z8nRG43aPZMWOGjKu3Mtzz5LGCpfwr8CqoismIj/q6QyBXeNO1kiC0U6lz /+jW94I7TghlhujpjnaWLHWAqKt+jU29K9hKNOv+XTxyLGAUr4jy4FnAEonFW8sot8W/ zLTg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687450201; x=1690042201; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=0HtP5OMiHV1uHyCREuOsPgXLNdWuwc5y+seBeAIuir0=; b=kkDF3Einu3YWsVSSV37Q7tT4z9gFFOnd1wpQTl+V1JJfF22JEkM16mgfV85ZSvBt5/ tjf5ySQs5o2t+4mLzTvX9TNmXuUY4Y0DMwlPMqfTRwZkT/rqRjQIudCx3xtiYhmWuAIh 1qT4Nsp1NNar0casWCUVQJfgV6xwaxjIcbPceu8sMnhvMpv6e4IGP5A9PdBWzoLyo3I1 eQddwu61+L4pcRoLn/5UKPG1f2t59BDQip4dXihhf9oUBy/T6ihWcpWNWNyeYPDn5Nbj sETYDEVXWlhhomPxlAU2XfmKxZEycWEfsu993nYwLht+yGj1PctFcrRnGe0q9YIwNzj5 0eig== X-Gm-Message-State: AC+VfDyIh2LNSuAW2r22fhLJUgx29XUgqtGnY2cLGRCDoFfkAnFTY26q pKvmAFrj9YpRar3L8Ida5pHB8A== X-Google-Smtp-Source: ACHHUZ63Fuzhm8d41+KEQTBgPUOc0gqnijkCpCOihqOKQVjSB4IS+fg+O0ZMGvIAchJ0HLw7tqsoww== X-Received: by 2002:adf:e611:0:b0:309:fcbe:748a with SMTP id p17-20020adfe611000000b00309fcbe748amr17046247wrm.11.1687450201085; Thu, 22 Jun 2023 09:10:01 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Reinoud Zandijk , qemu-arm@nongnu.org, kvm@vger.kernel.org, Marcel Apfelbaum , Stefano Stabellini , Anthony Perard , Yanan Wang , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Peter Maydell , Roman Bolshakov , Paolo Bonzini , Paul Durrant , Sunil Muthuswamy , Alexander Graf , Richard Henderson , xen-devel@lists.xenproject.org, Eduardo Habkost , Cameron Esfahani Subject: [PATCH v2 09/16] accel: Remove NVMM unreachable error path Date: Thu, 22 Jun 2023 18:08:16 +0200 Message-Id: <20230622160823.71851-10-philmd@linaro.org> X-Mailer: git-send-email 2.38.1 In-Reply-To: <20230622160823.71851-1-philmd@linaro.org> References: <20230622160823.71851-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit g_malloc0() can not fail. Remove the unreachable error path. https://developer-old.gnome.org/glib/stable/glib-Memory-Allocation.html#glib-Memory-Allocation.description Signed-off-by: Philippe Mathieu-Daudé --- target/i386/nvmm/nvmm-all.c | 4 ---- 1 file changed, 4 deletions(-) diff --git a/target/i386/nvmm/nvmm-all.c b/target/i386/nvmm/nvmm-all.c index 50b96ced45..0588a328ae 100644 --- a/target/i386/nvmm/nvmm-all.c +++ b/target/i386/nvmm/nvmm-all.c @@ -943,10 +943,6 @@ nvmm_init_vcpu(CPUState *cpu) } qcpu = g_malloc0(sizeof(*qcpu)); - if (qcpu == NULL) { - error_report("NVMM: Failed to allocate VCPU context."); - return -ENOMEM; - } ret = nvmm_vcpu_create(mach, cpu->cpu_index, &qcpu->vcpu); if (ret == -1) { -- 2.38.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 22 16:19:28 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 16:19:28 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553774.864576 (Exim 4.92) (envelope-from ) id 1qCN1r-0007YE-5U; Thu, 22 Jun 2023 16:19:27 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553774.864576; Thu, 22 Jun 2023 16:19:27 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCN1q-0007Wx-UG; Thu, 22 Jun 2023 16:19:26 +0000 Received: by outflank-mailman (input) for mailman id 553774; Thu, 22 Jun 2023 16:19:24 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCMtj-0001Gi-QI for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 16:11:03 +0000 Received: from mail-wm1-x32a.google.com (mail-wm1-x32a.google.com [2a00:1450:4864:20::32a]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 62313e16-1117-11ee-b237-6b7b168915f2; Thu, 22 Jun 2023 18:11:02 +0200 (CEST) Received: by mail-wm1-x32a.google.com with SMTP id 5b1f17b1804b1-3f9b0f139feso54828955e9.3 for ; Thu, 22 Jun 2023 09:11:02 -0700 (PDT) Received: from localhost.localdomain (230.red-88-28-3.dynamicip.rima-tde.net. [88.28.3.230]) by smtp.gmail.com with ESMTPSA id o10-20020a1c750a000000b003f604793989sm5662700wmc.18.2023.06.22.09.10.57 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Thu, 22 Jun 2023 09:11:01 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 62313e16-1117-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1687450262; x=1690042262; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=RRWIGoCMHA30ya/gVErc/hGu4D1zlFhqqYQ3R4zE/Yc=; b=t745U20cpkP9y09qTnHT58ACbcd3dw2pT0XOALfU1Ir9cOGrJC0tQQGMi14LHQqH5g +xN5iBHjW9n+QXm28fWr9Njb7qWILXh0XWDBRqFfu2YucBT5SwObebrG/GaQlCwELZwt DHOfkhf/41MTmSH3goxTxSbaxIpaNwDsJO/1v7YU2KfXKoTDKU99Aucn6p3FVE5QZabF W5J2Osfq7F7e/jQ8jW11xKumOyh2OAqf2lWvTWFVINll7FW5xTDmmX7gZ3z8/ay9JBbI IYobKh9J0ufzicNgz3Xvyz0Vj59VLsF6FkRFQjVU69hk/lED8ZDxatLaPp3ZFSNJDqds EijQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687450262; x=1690042262; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=RRWIGoCMHA30ya/gVErc/hGu4D1zlFhqqYQ3R4zE/Yc=; b=ZiQ4GVH+kLCIMmOOWrrfLPuvS8ABYlzLLcPzNOEs1LnJF4HWIZIVdHc5gCO3wV6PAw OTOH0JMnxj2SyfS7EKQsLtNVJjNUtxHBtX92RFzoy9FfXulnh6RbLKSDKw0ZA4nUe28m 4wPrA5A2XAydtzNtT/SvEUH3NbujUjDI3k2Yt4yzwLgIihdW2b3l6T6bHiFovVVpaC9H NAuRBxe3RNVY9TA9SArynVmBAQC83AJLXiXwhyi0UuyFR9AUvX3K/QvZHtd5FXmfWlSn Z9R9VG2L71bBAck9RDi3fzp+IYPkxkvPHfwnApSan1dMYvTM/l5cNdAI3Lflpd14fY8V JjWw== X-Gm-Message-State: AC+VfDyJVrRtjIzuIxu4894JCICfFPH/BwaQvtVOO+xlL9kPcdvuvJxZ vSAP0uOBbIRTbWDWjf1FQMouXw== X-Google-Smtp-Source: ACHHUZ4IIj48058+XZUHFsrbL5xoZOXXaxhGZj98oO1seM+C5zqlcC7U/H84cpkd7gOVxjdKivvkiw== X-Received: by 2002:a05:600c:22c6:b0:3f9:b17a:cb61 with SMTP id 6-20020a05600c22c600b003f9b17acb61mr9888330wmg.13.1687450262084; Thu, 22 Jun 2023 09:11:02 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Reinoud Zandijk , qemu-arm@nongnu.org, kvm@vger.kernel.org, Marcel Apfelbaum , Stefano Stabellini , Anthony Perard , Yanan Wang , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Peter Maydell , Roman Bolshakov , Paolo Bonzini , Paul Durrant , Sunil Muthuswamy , Alexander Graf , Richard Henderson , xen-devel@lists.xenproject.org, Eduardo Habkost , Cameron Esfahani Subject: [PATCH v2 15/16] accel: Rename 'cpu_state' -> 'cpu' Date: Thu, 22 Jun 2023 18:08:22 +0200 Message-Id: <20230622160823.71851-16-philmd@linaro.org> X-Mailer: git-send-email 2.38.1 In-Reply-To: <20230622160823.71851-1-philmd@linaro.org> References: <20230622160823.71851-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Most of the codebase uses 'CPUState *cpu' or 'CPUState *cs'. While 'cpu_state' is kind of explicit, it makes the code harder to review. Simply rename as 'cpu' like the rest. Signed-off-by: Philippe Mathieu-Daudé --- target/i386/hvf/x86hvf.h | 12 +- target/i386/hvf/x86hvf.c | 356 +++++++++++++++++++-------------------- 2 files changed, 184 insertions(+), 184 deletions(-) diff --git a/target/i386/hvf/x86hvf.h b/target/i386/hvf/x86hvf.h index db6003d6bd..6527eb90d4 100644 --- a/target/i386/hvf/x86hvf.h +++ b/target/i386/hvf/x86hvf.h @@ -20,15 +20,15 @@ #include "cpu.h" #include "x86_descr.h" -int hvf_process_events(CPUState *); -bool hvf_inject_interrupts(CPUState *); +int hvf_process_events(CPUState *cpu); +bool hvf_inject_interrupts(CPUState *cpu); void hvf_set_segment(struct CPUState *cpu, struct vmx_segment *vmx_seg, SegmentCache *qseg, bool is_tr); void hvf_get_segment(SegmentCache *qseg, struct vmx_segment *vmx_seg); -void hvf_put_xsave(CPUState *cpu_state); -void hvf_put_msrs(CPUState *cpu_state); -void hvf_get_xsave(CPUState *cpu_state); -void hvf_get_msrs(CPUState *cpu_state); +void hvf_put_xsave(CPUState *cpu); +void hvf_put_msrs(CPUState *cpu); +void hvf_get_xsave(CPUState *cpu); +void hvf_get_msrs(CPUState *cpu); void vmx_clear_int_window_exiting(CPUState *cpu); void vmx_update_tpr(CPUState *cpu); #endif diff --git a/target/i386/hvf/x86hvf.c b/target/i386/hvf/x86hvf.c index 69d4fb8cf5..dfa500b81d 100644 --- a/target/i386/hvf/x86hvf.c +++ b/target/i386/hvf/x86hvf.c @@ -70,255 +70,255 @@ void hvf_get_segment(SegmentCache *qseg, struct vmx_segment *vmx_seg) (((vmx_seg->ar >> 15) & 1) << DESC_G_SHIFT); } -void hvf_put_xsave(CPUState *cpu_state) +void hvf_put_xsave(CPUState *cpu) { - void *xsave = X86_CPU(cpu_state)->env.xsave_buf; - uint32_t xsave_len = X86_CPU(cpu_state)->env.xsave_buf_len; + void *xsave = X86_CPU(cpu)->env.xsave_buf; + uint32_t xsave_len = X86_CPU(cpu)->env.xsave_buf_len; - x86_cpu_xsave_all_areas(X86_CPU(cpu_state), xsave, xsave_len); + x86_cpu_xsave_all_areas(X86_CPU(cpu), xsave, xsave_len); - if (hv_vcpu_write_fpstate(cpu_state->hvf->fd, xsave, xsave_len)) { + if (hv_vcpu_write_fpstate(cpu->hvf->fd, xsave, xsave_len)) { abort(); } } -static void hvf_put_segments(CPUState *cpu_state) +static void hvf_put_segments(CPUState *cpu) { - CPUX86State *env = &X86_CPU(cpu_state)->env; + CPUX86State *env = &X86_CPU(cpu)->env; struct vmx_segment seg; - wvmcs(cpu_state->hvf->fd, VMCS_GUEST_IDTR_LIMIT, env->idt.limit); - wvmcs(cpu_state->hvf->fd, VMCS_GUEST_IDTR_BASE, env->idt.base); + wvmcs(cpu->hvf->fd, VMCS_GUEST_IDTR_LIMIT, env->idt.limit); + wvmcs(cpu->hvf->fd, VMCS_GUEST_IDTR_BASE, env->idt.base); - wvmcs(cpu_state->hvf->fd, VMCS_GUEST_GDTR_LIMIT, env->gdt.limit); - wvmcs(cpu_state->hvf->fd, VMCS_GUEST_GDTR_BASE, env->gdt.base); + wvmcs(cpu->hvf->fd, VMCS_GUEST_GDTR_LIMIT, env->gdt.limit); + wvmcs(cpu->hvf->fd, VMCS_GUEST_GDTR_BASE, env->gdt.base); - /* wvmcs(cpu_state->hvf->fd, VMCS_GUEST_CR2, env->cr[2]); */ - wvmcs(cpu_state->hvf->fd, VMCS_GUEST_CR3, env->cr[3]); - vmx_update_tpr(cpu_state); - wvmcs(cpu_state->hvf->fd, VMCS_GUEST_IA32_EFER, env->efer); + /* wvmcs(cpu->hvf->fd, VMCS_GUEST_CR2, env->cr[2]); */ + wvmcs(cpu->hvf->fd, VMCS_GUEST_CR3, env->cr[3]); + vmx_update_tpr(cpu); + wvmcs(cpu->hvf->fd, VMCS_GUEST_IA32_EFER, env->efer); - macvm_set_cr4(cpu_state->hvf->fd, env->cr[4]); - macvm_set_cr0(cpu_state->hvf->fd, env->cr[0]); + macvm_set_cr4(cpu->hvf->fd, env->cr[4]); + macvm_set_cr0(cpu->hvf->fd, env->cr[0]); - hvf_set_segment(cpu_state, &seg, &env->segs[R_CS], false); - vmx_write_segment_descriptor(cpu_state, &seg, R_CS); + hvf_set_segment(cpu, &seg, &env->segs[R_CS], false); + vmx_write_segment_descriptor(cpu, &seg, R_CS); - hvf_set_segment(cpu_state, &seg, &env->segs[R_DS], false); - vmx_write_segment_descriptor(cpu_state, &seg, R_DS); + hvf_set_segment(cpu, &seg, &env->segs[R_DS], false); + vmx_write_segment_descriptor(cpu, &seg, R_DS); - hvf_set_segment(cpu_state, &seg, &env->segs[R_ES], false); - vmx_write_segment_descriptor(cpu_state, &seg, R_ES); + hvf_set_segment(cpu, &seg, &env->segs[R_ES], false); + vmx_write_segment_descriptor(cpu, &seg, R_ES); - hvf_set_segment(cpu_state, &seg, &env->segs[R_SS], false); - vmx_write_segment_descriptor(cpu_state, &seg, R_SS); + hvf_set_segment(cpu, &seg, &env->segs[R_SS], false); + vmx_write_segment_descriptor(cpu, &seg, R_SS); - hvf_set_segment(cpu_state, &seg, &env->segs[R_FS], false); - vmx_write_segment_descriptor(cpu_state, &seg, R_FS); + hvf_set_segment(cpu, &seg, &env->segs[R_FS], false); + vmx_write_segment_descriptor(cpu, &seg, R_FS); - hvf_set_segment(cpu_state, &seg, &env->segs[R_GS], false); - vmx_write_segment_descriptor(cpu_state, &seg, R_GS); + hvf_set_segment(cpu, &seg, &env->segs[R_GS], false); + vmx_write_segment_descriptor(cpu, &seg, R_GS); - hvf_set_segment(cpu_state, &seg, &env->tr, true); - vmx_write_segment_descriptor(cpu_state, &seg, R_TR); + hvf_set_segment(cpu, &seg, &env->tr, true); + vmx_write_segment_descriptor(cpu, &seg, R_TR); - hvf_set_segment(cpu_state, &seg, &env->ldt, false); - vmx_write_segment_descriptor(cpu_state, &seg, R_LDTR); + hvf_set_segment(cpu, &seg, &env->ldt, false); + vmx_write_segment_descriptor(cpu, &seg, R_LDTR); } -void hvf_put_msrs(CPUState *cpu_state) +void hvf_put_msrs(CPUState *cpu) { - CPUX86State *env = &X86_CPU(cpu_state)->env; + CPUX86State *env = &X86_CPU(cpu)->env; - hv_vcpu_write_msr(cpu_state->hvf->fd, MSR_IA32_SYSENTER_CS, + hv_vcpu_write_msr(cpu->hvf->fd, MSR_IA32_SYSENTER_CS, env->sysenter_cs); - hv_vcpu_write_msr(cpu_state->hvf->fd, MSR_IA32_SYSENTER_ESP, + hv_vcpu_write_msr(cpu->hvf->fd, MSR_IA32_SYSENTER_ESP, env->sysenter_esp); - hv_vcpu_write_msr(cpu_state->hvf->fd, MSR_IA32_SYSENTER_EIP, + hv_vcpu_write_msr(cpu->hvf->fd, MSR_IA32_SYSENTER_EIP, env->sysenter_eip); - hv_vcpu_write_msr(cpu_state->hvf->fd, MSR_STAR, env->star); + hv_vcpu_write_msr(cpu->hvf->fd, MSR_STAR, env->star); #ifdef TARGET_X86_64 - hv_vcpu_write_msr(cpu_state->hvf->fd, MSR_CSTAR, env->cstar); - hv_vcpu_write_msr(cpu_state->hvf->fd, MSR_KERNELGSBASE, env->kernelgsbase); - hv_vcpu_write_msr(cpu_state->hvf->fd, MSR_FMASK, env->fmask); - hv_vcpu_write_msr(cpu_state->hvf->fd, MSR_LSTAR, env->lstar); + hv_vcpu_write_msr(cpu->hvf->fd, MSR_CSTAR, env->cstar); + hv_vcpu_write_msr(cpu->hvf->fd, MSR_KERNELGSBASE, env->kernelgsbase); + hv_vcpu_write_msr(cpu->hvf->fd, MSR_FMASK, env->fmask); + hv_vcpu_write_msr(cpu->hvf->fd, MSR_LSTAR, env->lstar); #endif - hv_vcpu_write_msr(cpu_state->hvf->fd, MSR_GSBASE, env->segs[R_GS].base); - hv_vcpu_write_msr(cpu_state->hvf->fd, MSR_FSBASE, env->segs[R_FS].base); + hv_vcpu_write_msr(cpu->hvf->fd, MSR_GSBASE, env->segs[R_GS].base); + hv_vcpu_write_msr(cpu->hvf->fd, MSR_FSBASE, env->segs[R_FS].base); } -void hvf_get_xsave(CPUState *cpu_state) +void hvf_get_xsave(CPUState *cpu) { - void *xsave = X86_CPU(cpu_state)->env.xsave_buf; - uint32_t xsave_len = X86_CPU(cpu_state)->env.xsave_buf_len; + void *xsave = X86_CPU(cpu)->env.xsave_buf; + uint32_t xsave_len = X86_CPU(cpu)->env.xsave_buf_len; - if (hv_vcpu_read_fpstate(cpu_state->hvf->fd, xsave, xsave_len)) { + if (hv_vcpu_read_fpstate(cpu->hvf->fd, xsave, xsave_len)) { abort(); } - x86_cpu_xrstor_all_areas(X86_CPU(cpu_state), xsave, xsave_len); + x86_cpu_xrstor_all_areas(X86_CPU(cpu), xsave, xsave_len); } -static void hvf_get_segments(CPUState *cpu_state) +static void hvf_get_segments(CPUState *cpu) { - CPUX86State *env = &X86_CPU(cpu_state)->env; + CPUX86State *env = &X86_CPU(cpu)->env; struct vmx_segment seg; env->interrupt_injected = -1; - vmx_read_segment_descriptor(cpu_state, &seg, R_CS); + vmx_read_segment_descriptor(cpu, &seg, R_CS); hvf_get_segment(&env->segs[R_CS], &seg); - vmx_read_segment_descriptor(cpu_state, &seg, R_DS); + vmx_read_segment_descriptor(cpu, &seg, R_DS); hvf_get_segment(&env->segs[R_DS], &seg); - vmx_read_segment_descriptor(cpu_state, &seg, R_ES); + vmx_read_segment_descriptor(cpu, &seg, R_ES); hvf_get_segment(&env->segs[R_ES], &seg); - vmx_read_segment_descriptor(cpu_state, &seg, R_FS); + vmx_read_segment_descriptor(cpu, &seg, R_FS); hvf_get_segment(&env->segs[R_FS], &seg); - vmx_read_segment_descriptor(cpu_state, &seg, R_GS); + vmx_read_segment_descriptor(cpu, &seg, R_GS); hvf_get_segment(&env->segs[R_GS], &seg); - vmx_read_segment_descriptor(cpu_state, &seg, R_SS); + vmx_read_segment_descriptor(cpu, &seg, R_SS); hvf_get_segment(&env->segs[R_SS], &seg); - vmx_read_segment_descriptor(cpu_state, &seg, R_TR); + vmx_read_segment_descriptor(cpu, &seg, R_TR); hvf_get_segment(&env->tr, &seg); - vmx_read_segment_descriptor(cpu_state, &seg, R_LDTR); + vmx_read_segment_descriptor(cpu, &seg, R_LDTR); hvf_get_segment(&env->ldt, &seg); - env->idt.limit = rvmcs(cpu_state->hvf->fd, VMCS_GUEST_IDTR_LIMIT); - env->idt.base = rvmcs(cpu_state->hvf->fd, VMCS_GUEST_IDTR_BASE); - env->gdt.limit = rvmcs(cpu_state->hvf->fd, VMCS_GUEST_GDTR_LIMIT); - env->gdt.base = rvmcs(cpu_state->hvf->fd, VMCS_GUEST_GDTR_BASE); + env->idt.limit = rvmcs(cpu->hvf->fd, VMCS_GUEST_IDTR_LIMIT); + env->idt.base = rvmcs(cpu->hvf->fd, VMCS_GUEST_IDTR_BASE); + env->gdt.limit = rvmcs(cpu->hvf->fd, VMCS_GUEST_GDTR_LIMIT); + env->gdt.base = rvmcs(cpu->hvf->fd, VMCS_GUEST_GDTR_BASE); - env->cr[0] = rvmcs(cpu_state->hvf->fd, VMCS_GUEST_CR0); + env->cr[0] = rvmcs(cpu->hvf->fd, VMCS_GUEST_CR0); env->cr[2] = 0; - env->cr[3] = rvmcs(cpu_state->hvf->fd, VMCS_GUEST_CR3); - env->cr[4] = rvmcs(cpu_state->hvf->fd, VMCS_GUEST_CR4); + env->cr[3] = rvmcs(cpu->hvf->fd, VMCS_GUEST_CR3); + env->cr[4] = rvmcs(cpu->hvf->fd, VMCS_GUEST_CR4); - env->efer = rvmcs(cpu_state->hvf->fd, VMCS_GUEST_IA32_EFER); + env->efer = rvmcs(cpu->hvf->fd, VMCS_GUEST_IA32_EFER); } -void hvf_get_msrs(CPUState *cpu_state) +void hvf_get_msrs(CPUState *cpu) { - CPUX86State *env = &X86_CPU(cpu_state)->env; + CPUX86State *env = &X86_CPU(cpu)->env; uint64_t tmp; - hv_vcpu_read_msr(cpu_state->hvf->fd, MSR_IA32_SYSENTER_CS, &tmp); + hv_vcpu_read_msr(cpu->hvf->fd, MSR_IA32_SYSENTER_CS, &tmp); env->sysenter_cs = tmp; - hv_vcpu_read_msr(cpu_state->hvf->fd, MSR_IA32_SYSENTER_ESP, &tmp); + hv_vcpu_read_msr(cpu->hvf->fd, MSR_IA32_SYSENTER_ESP, &tmp); env->sysenter_esp = tmp; - hv_vcpu_read_msr(cpu_state->hvf->fd, MSR_IA32_SYSENTER_EIP, &tmp); + hv_vcpu_read_msr(cpu->hvf->fd, MSR_IA32_SYSENTER_EIP, &tmp); env->sysenter_eip = tmp; - hv_vcpu_read_msr(cpu_state->hvf->fd, MSR_STAR, &env->star); + hv_vcpu_read_msr(cpu->hvf->fd, MSR_STAR, &env->star); #ifdef TARGET_X86_64 - hv_vcpu_read_msr(cpu_state->hvf->fd, MSR_CSTAR, &env->cstar); - hv_vcpu_read_msr(cpu_state->hvf->fd, MSR_KERNELGSBASE, &env->kernelgsbase); - hv_vcpu_read_msr(cpu_state->hvf->fd, MSR_FMASK, &env->fmask); - hv_vcpu_read_msr(cpu_state->hvf->fd, MSR_LSTAR, &env->lstar); + hv_vcpu_read_msr(cpu->hvf->fd, MSR_CSTAR, &env->cstar); + hv_vcpu_read_msr(cpu->hvf->fd, MSR_KERNELGSBASE, &env->kernelgsbase); + hv_vcpu_read_msr(cpu->hvf->fd, MSR_FMASK, &env->fmask); + hv_vcpu_read_msr(cpu->hvf->fd, MSR_LSTAR, &env->lstar); #endif - hv_vcpu_read_msr(cpu_state->hvf->fd, MSR_IA32_APICBASE, &tmp); + hv_vcpu_read_msr(cpu->hvf->fd, MSR_IA32_APICBASE, &tmp); - env->tsc = rdtscp() + rvmcs(cpu_state->hvf->fd, VMCS_TSC_OFFSET); + env->tsc = rdtscp() + rvmcs(cpu->hvf->fd, VMCS_TSC_OFFSET); } -int hvf_put_registers(CPUState *cpu_state) +int hvf_put_registers(CPUState *cpu) { - X86CPU *x86cpu = X86_CPU(cpu_state); + X86CPU *x86cpu = X86_CPU(cpu); CPUX86State *env = &x86cpu->env; - wreg(cpu_state->hvf->fd, HV_X86_RAX, env->regs[R_EAX]); - wreg(cpu_state->hvf->fd, HV_X86_RBX, env->regs[R_EBX]); - wreg(cpu_state->hvf->fd, HV_X86_RCX, env->regs[R_ECX]); - wreg(cpu_state->hvf->fd, HV_X86_RDX, env->regs[R_EDX]); - wreg(cpu_state->hvf->fd, HV_X86_RBP, env->regs[R_EBP]); - wreg(cpu_state->hvf->fd, HV_X86_RSP, env->regs[R_ESP]); - wreg(cpu_state->hvf->fd, HV_X86_RSI, env->regs[R_ESI]); - wreg(cpu_state->hvf->fd, HV_X86_RDI, env->regs[R_EDI]); - wreg(cpu_state->hvf->fd, HV_X86_R8, env->regs[8]); - wreg(cpu_state->hvf->fd, HV_X86_R9, env->regs[9]); - wreg(cpu_state->hvf->fd, HV_X86_R10, env->regs[10]); - wreg(cpu_state->hvf->fd, HV_X86_R11, env->regs[11]); - wreg(cpu_state->hvf->fd, HV_X86_R12, env->regs[12]); - wreg(cpu_state->hvf->fd, HV_X86_R13, env->regs[13]); - wreg(cpu_state->hvf->fd, HV_X86_R14, env->regs[14]); - wreg(cpu_state->hvf->fd, HV_X86_R15, env->regs[15]); - wreg(cpu_state->hvf->fd, HV_X86_RFLAGS, env->eflags); - wreg(cpu_state->hvf->fd, HV_X86_RIP, env->eip); + wreg(cpu->hvf->fd, HV_X86_RAX, env->regs[R_EAX]); + wreg(cpu->hvf->fd, HV_X86_RBX, env->regs[R_EBX]); + wreg(cpu->hvf->fd, HV_X86_RCX, env->regs[R_ECX]); + wreg(cpu->hvf->fd, HV_X86_RDX, env->regs[R_EDX]); + wreg(cpu->hvf->fd, HV_X86_RBP, env->regs[R_EBP]); + wreg(cpu->hvf->fd, HV_X86_RSP, env->regs[R_ESP]); + wreg(cpu->hvf->fd, HV_X86_RSI, env->regs[R_ESI]); + wreg(cpu->hvf->fd, HV_X86_RDI, env->regs[R_EDI]); + wreg(cpu->hvf->fd, HV_X86_R8, env->regs[8]); + wreg(cpu->hvf->fd, HV_X86_R9, env->regs[9]); + wreg(cpu->hvf->fd, HV_X86_R10, env->regs[10]); + wreg(cpu->hvf->fd, HV_X86_R11, env->regs[11]); + wreg(cpu->hvf->fd, HV_X86_R12, env->regs[12]); + wreg(cpu->hvf->fd, HV_X86_R13, env->regs[13]); + wreg(cpu->hvf->fd, HV_X86_R14, env->regs[14]); + wreg(cpu->hvf->fd, HV_X86_R15, env->regs[15]); + wreg(cpu->hvf->fd, HV_X86_RFLAGS, env->eflags); + wreg(cpu->hvf->fd, HV_X86_RIP, env->eip); - wreg(cpu_state->hvf->fd, HV_X86_XCR0, env->xcr0); + wreg(cpu->hvf->fd, HV_X86_XCR0, env->xcr0); - hvf_put_xsave(cpu_state); + hvf_put_xsave(cpu); - hvf_put_segments(cpu_state); + hvf_put_segments(cpu); - hvf_put_msrs(cpu_state); + hvf_put_msrs(cpu); - wreg(cpu_state->hvf->fd, HV_X86_DR0, env->dr[0]); - wreg(cpu_state->hvf->fd, HV_X86_DR1, env->dr[1]); - wreg(cpu_state->hvf->fd, HV_X86_DR2, env->dr[2]); - wreg(cpu_state->hvf->fd, HV_X86_DR3, env->dr[3]); - wreg(cpu_state->hvf->fd, HV_X86_DR4, env->dr[4]); - wreg(cpu_state->hvf->fd, HV_X86_DR5, env->dr[5]); - wreg(cpu_state->hvf->fd, HV_X86_DR6, env->dr[6]); - wreg(cpu_state->hvf->fd, HV_X86_DR7, env->dr[7]); + wreg(cpu->hvf->fd, HV_X86_DR0, env->dr[0]); + wreg(cpu->hvf->fd, HV_X86_DR1, env->dr[1]); + wreg(cpu->hvf->fd, HV_X86_DR2, env->dr[2]); + wreg(cpu->hvf->fd, HV_X86_DR3, env->dr[3]); + wreg(cpu->hvf->fd, HV_X86_DR4, env->dr[4]); + wreg(cpu->hvf->fd, HV_X86_DR5, env->dr[5]); + wreg(cpu->hvf->fd, HV_X86_DR6, env->dr[6]); + wreg(cpu->hvf->fd, HV_X86_DR7, env->dr[7]); return 0; } -int hvf_get_registers(CPUState *cpu_state) +int hvf_get_registers(CPUState *cpu) { - X86CPU *x86cpu = X86_CPU(cpu_state); + X86CPU *x86cpu = X86_CPU(cpu); CPUX86State *env = &x86cpu->env; - env->regs[R_EAX] = rreg(cpu_state->hvf->fd, HV_X86_RAX); - env->regs[R_EBX] = rreg(cpu_state->hvf->fd, HV_X86_RBX); - env->regs[R_ECX] = rreg(cpu_state->hvf->fd, HV_X86_RCX); - env->regs[R_EDX] = rreg(cpu_state->hvf->fd, HV_X86_RDX); - env->regs[R_EBP] = rreg(cpu_state->hvf->fd, HV_X86_RBP); - env->regs[R_ESP] = rreg(cpu_state->hvf->fd, HV_X86_RSP); - env->regs[R_ESI] = rreg(cpu_state->hvf->fd, HV_X86_RSI); - env->regs[R_EDI] = rreg(cpu_state->hvf->fd, HV_X86_RDI); - env->regs[8] = rreg(cpu_state->hvf->fd, HV_X86_R8); - env->regs[9] = rreg(cpu_state->hvf->fd, HV_X86_R9); - env->regs[10] = rreg(cpu_state->hvf->fd, HV_X86_R10); - env->regs[11] = rreg(cpu_state->hvf->fd, HV_X86_R11); - env->regs[12] = rreg(cpu_state->hvf->fd, HV_X86_R12); - env->regs[13] = rreg(cpu_state->hvf->fd, HV_X86_R13); - env->regs[14] = rreg(cpu_state->hvf->fd, HV_X86_R14); - env->regs[15] = rreg(cpu_state->hvf->fd, HV_X86_R15); + env->regs[R_EAX] = rreg(cpu->hvf->fd, HV_X86_RAX); + env->regs[R_EBX] = rreg(cpu->hvf->fd, HV_X86_RBX); + env->regs[R_ECX] = rreg(cpu->hvf->fd, HV_X86_RCX); + env->regs[R_EDX] = rreg(cpu->hvf->fd, HV_X86_RDX); + env->regs[R_EBP] = rreg(cpu->hvf->fd, HV_X86_RBP); + env->regs[R_ESP] = rreg(cpu->hvf->fd, HV_X86_RSP); + env->regs[R_ESI] = rreg(cpu->hvf->fd, HV_X86_RSI); + env->regs[R_EDI] = rreg(cpu->hvf->fd, HV_X86_RDI); + env->regs[8] = rreg(cpu->hvf->fd, HV_X86_R8); + env->regs[9] = rreg(cpu->hvf->fd, HV_X86_R9); + env->regs[10] = rreg(cpu->hvf->fd, HV_X86_R10); + env->regs[11] = rreg(cpu->hvf->fd, HV_X86_R11); + env->regs[12] = rreg(cpu->hvf->fd, HV_X86_R12); + env->regs[13] = rreg(cpu->hvf->fd, HV_X86_R13); + env->regs[14] = rreg(cpu->hvf->fd, HV_X86_R14); + env->regs[15] = rreg(cpu->hvf->fd, HV_X86_R15); - env->eflags = rreg(cpu_state->hvf->fd, HV_X86_RFLAGS); - env->eip = rreg(cpu_state->hvf->fd, HV_X86_RIP); + env->eflags = rreg(cpu->hvf->fd, HV_X86_RFLAGS); + env->eip = rreg(cpu->hvf->fd, HV_X86_RIP); - hvf_get_xsave(cpu_state); - env->xcr0 = rreg(cpu_state->hvf->fd, HV_X86_XCR0); + hvf_get_xsave(cpu); + env->xcr0 = rreg(cpu->hvf->fd, HV_X86_XCR0); - hvf_get_segments(cpu_state); - hvf_get_msrs(cpu_state); + hvf_get_segments(cpu); + hvf_get_msrs(cpu); - env->dr[0] = rreg(cpu_state->hvf->fd, HV_X86_DR0); - env->dr[1] = rreg(cpu_state->hvf->fd, HV_X86_DR1); - env->dr[2] = rreg(cpu_state->hvf->fd, HV_X86_DR2); - env->dr[3] = rreg(cpu_state->hvf->fd, HV_X86_DR3); - env->dr[4] = rreg(cpu_state->hvf->fd, HV_X86_DR4); - env->dr[5] = rreg(cpu_state->hvf->fd, HV_X86_DR5); - env->dr[6] = rreg(cpu_state->hvf->fd, HV_X86_DR6); - env->dr[7] = rreg(cpu_state->hvf->fd, HV_X86_DR7); + env->dr[0] = rreg(cpu->hvf->fd, HV_X86_DR0); + env->dr[1] = rreg(cpu->hvf->fd, HV_X86_DR1); + env->dr[2] = rreg(cpu->hvf->fd, HV_X86_DR2); + env->dr[3] = rreg(cpu->hvf->fd, HV_X86_DR3); + env->dr[4] = rreg(cpu->hvf->fd, HV_X86_DR4); + env->dr[5] = rreg(cpu->hvf->fd, HV_X86_DR5); + env->dr[6] = rreg(cpu->hvf->fd, HV_X86_DR6); + env->dr[7] = rreg(cpu->hvf->fd, HV_X86_DR7); x86_update_hflags(env); return 0; @@ -340,9 +340,9 @@ void vmx_clear_int_window_exiting(CPUState *cpu) ~VMCS_PRI_PROC_BASED_CTLS_INT_WINDOW_EXITING); } -bool hvf_inject_interrupts(CPUState *cpu_state) +bool hvf_inject_interrupts(CPUState *cpu) { - X86CPU *x86cpu = X86_CPU(cpu_state); + X86CPU *x86cpu = X86_CPU(cpu); CPUX86State *env = &x86cpu->env; uint8_t vector; @@ -372,89 +372,89 @@ bool hvf_inject_interrupts(CPUState *cpu_state) uint64_t info = 0; if (have_event) { info = vector | intr_type | VMCS_INTR_VALID; - uint64_t reason = rvmcs(cpu_state->hvf->fd, VMCS_EXIT_REASON); + uint64_t reason = rvmcs(cpu->hvf->fd, VMCS_EXIT_REASON); if (env->nmi_injected && reason != EXIT_REASON_TASK_SWITCH) { - vmx_clear_nmi_blocking(cpu_state); + vmx_clear_nmi_blocking(cpu); } if (!(env->hflags2 & HF2_NMI_MASK) || intr_type != VMCS_INTR_T_NMI) { info &= ~(1 << 12); /* clear undefined bit */ if (intr_type == VMCS_INTR_T_SWINTR || intr_type == VMCS_INTR_T_SWEXCEPTION) { - wvmcs(cpu_state->hvf->fd, VMCS_ENTRY_INST_LENGTH, env->ins_len); + wvmcs(cpu->hvf->fd, VMCS_ENTRY_INST_LENGTH, env->ins_len); } if (env->has_error_code) { - wvmcs(cpu_state->hvf->fd, VMCS_ENTRY_EXCEPTION_ERROR, + wvmcs(cpu->hvf->fd, VMCS_ENTRY_EXCEPTION_ERROR, env->error_code); /* Indicate that VMCS_ENTRY_EXCEPTION_ERROR is valid */ info |= VMCS_INTR_DEL_ERRCODE; } /*printf("reinject %lx err %d\n", info, err);*/ - wvmcs(cpu_state->hvf->fd, VMCS_ENTRY_INTR_INFO, info); + wvmcs(cpu->hvf->fd, VMCS_ENTRY_INTR_INFO, info); }; } - if (cpu_state->interrupt_request & CPU_INTERRUPT_NMI) { + if (cpu->interrupt_request & CPU_INTERRUPT_NMI) { if (!(env->hflags2 & HF2_NMI_MASK) && !(info & VMCS_INTR_VALID)) { - cpu_state->interrupt_request &= ~CPU_INTERRUPT_NMI; + cpu->interrupt_request &= ~CPU_INTERRUPT_NMI; info = VMCS_INTR_VALID | VMCS_INTR_T_NMI | EXCP02_NMI; - wvmcs(cpu_state->hvf->fd, VMCS_ENTRY_INTR_INFO, info); + wvmcs(cpu->hvf->fd, VMCS_ENTRY_INTR_INFO, info); } else { - vmx_set_nmi_window_exiting(cpu_state); + vmx_set_nmi_window_exiting(cpu); } } if (!(env->hflags & HF_INHIBIT_IRQ_MASK) && - (cpu_state->interrupt_request & CPU_INTERRUPT_HARD) && + (cpu->interrupt_request & CPU_INTERRUPT_HARD) && (env->eflags & IF_MASK) && !(info & VMCS_INTR_VALID)) { int line = cpu_get_pic_interrupt(&x86cpu->env); - cpu_state->interrupt_request &= ~CPU_INTERRUPT_HARD; + cpu->interrupt_request &= ~CPU_INTERRUPT_HARD; if (line >= 0) { - wvmcs(cpu_state->hvf->fd, VMCS_ENTRY_INTR_INFO, line | + wvmcs(cpu->hvf->fd, VMCS_ENTRY_INTR_INFO, line | VMCS_INTR_VALID | VMCS_INTR_T_HWINTR); } } - if (cpu_state->interrupt_request & CPU_INTERRUPT_HARD) { - vmx_set_int_window_exiting(cpu_state); + if (cpu->interrupt_request & CPU_INTERRUPT_HARD) { + vmx_set_int_window_exiting(cpu); } - return (cpu_state->interrupt_request + return (cpu->interrupt_request & (CPU_INTERRUPT_INIT | CPU_INTERRUPT_TPR)); } -int hvf_process_events(CPUState *cpu_state) +int hvf_process_events(CPUState *cpu) { - X86CPU *cpu = X86_CPU(cpu_state); + X86CPU *cpu = X86_CPU(cpu); CPUX86State *env = &cpu->env; - if (!cpu_state->vcpu_dirty) { + if (!cpu->vcpu_dirty) { /* light weight sync for CPU_INTERRUPT_HARD and IF_MASK */ - env->eflags = rreg(cpu_state->hvf->fd, HV_X86_RFLAGS); + env->eflags = rreg(cpu->hvf->fd, HV_X86_RFLAGS); } - if (cpu_state->interrupt_request & CPU_INTERRUPT_INIT) { - cpu_synchronize_state(cpu_state); + if (cpu->interrupt_request & CPU_INTERRUPT_INIT) { + cpu_synchronize_state(cpu); do_cpu_init(cpu); } - if (cpu_state->interrupt_request & CPU_INTERRUPT_POLL) { - cpu_state->interrupt_request &= ~CPU_INTERRUPT_POLL; + if (cpu->interrupt_request & CPU_INTERRUPT_POLL) { + cpu->interrupt_request &= ~CPU_INTERRUPT_POLL; apic_poll_irq(cpu->apic_state); } - if (((cpu_state->interrupt_request & CPU_INTERRUPT_HARD) && + if (((cpu->interrupt_request & CPU_INTERRUPT_HARD) && (env->eflags & IF_MASK)) || - (cpu_state->interrupt_request & CPU_INTERRUPT_NMI)) { - cpu_state->halted = 0; + (cpu->interrupt_request & CPU_INTERRUPT_NMI)) { + cpu->halted = 0; } - if (cpu_state->interrupt_request & CPU_INTERRUPT_SIPI) { - cpu_synchronize_state(cpu_state); + if (cpu->interrupt_request & CPU_INTERRUPT_SIPI) { + cpu_synchronize_state(cpu); do_cpu_sipi(cpu); } - if (cpu_state->interrupt_request & CPU_INTERRUPT_TPR) { - cpu_state->interrupt_request &= ~CPU_INTERRUPT_TPR; - cpu_synchronize_state(cpu_state); + if (cpu->interrupt_request & CPU_INTERRUPT_TPR) { + cpu->interrupt_request &= ~CPU_INTERRUPT_TPR; + cpu_synchronize_state(cpu); apic_handle_tpr_access_report(cpu->apic_state, env->eip, env->tpr_access_type); } - return cpu_state->halted; + return cpu->halted; } -- 2.38.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 22 16:19:29 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 16:19:29 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553776.864591 (Exim 4.92) (envelope-from ) id 1qCN1t-000876-Ki; Thu, 22 Jun 2023 16:19:29 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553776.864591; Thu, 22 Jun 2023 16:19:29 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCN1t-00086t-DW; Thu, 22 Jun 2023 16:19:29 +0000 Received: by outflank-mailman (input) for mailman id 553776; Thu, 22 Jun 2023 16:19:28 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCMt4-0001Gi-D5 for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 16:10:22 +0000 Received: from mail-wm1-x329.google.com (mail-wm1-x329.google.com [2a00:1450:4864:20::329]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 49d4b16a-1117-11ee-b237-6b7b168915f2; Thu, 22 Jun 2023 18:10:21 +0200 (CEST) Received: by mail-wm1-x329.google.com with SMTP id 5b1f17b1804b1-3fa79605a3bso2348435e9.0 for ; Thu, 22 Jun 2023 09:10:21 -0700 (PDT) Received: from localhost.localdomain (230.red-88-28-3.dynamicip.rima-tde.net. [88.28.3.230]) by smtp.gmail.com with ESMTPSA id b10-20020adff24a000000b0030ae901bc54sm7431007wrp.62.2023.06.22.09.10.16 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Thu, 22 Jun 2023 09:10:20 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 49d4b16a-1117-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1687450221; x=1690042221; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=op05vfUAX1M3Sv7qs3sw3v39U7zORQkGDmdogVHbS1k=; b=CKQGRKk27eSiIm5F19z7Fw+0UvB8mt1EPZLenc8tuPAa4/0aAJ+SnF0zMdupIesuyt y+b9HW/Tb6ijXTw+tcPYovJXVtzhbfNQAHL/wbbrJCOYMGhNXzWxJNKlFdQs54AipuBV 8cK3z0P30nCRdCrWawQrXVeu9fd8c1dzsrKCESqWXQWBZ2c8S9sJc1GYQT088AZSppGP tM9c3RZPpYecVoQf4egjUEs3Wad7FFK1rNqFHaM5rarNR1UBzBZNnDECVuKlhKTWdy/n Wxo/JJLqZglnWMDLVqm9qi+92fIiIS2+HMnITawdbUIJ6FNynUzzBpy7S6DlXLoEUOiv nYDw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687450221; x=1690042221; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=op05vfUAX1M3Sv7qs3sw3v39U7zORQkGDmdogVHbS1k=; b=UykNlI3RjJCqSnFIuhHnDo/1dOiTOo+Ynrqda/alh1HTCv/vgYy9V0pTi7lD6AvPIm LtN1IQQb0q9j4A28Kb+WJoh8EnxyYWR5HaPsv+Lp+2nTdDqhPLqxXacLc/dLNSJhudPj 1LYfldrGvG62ORfbfH/yR+k3Y4ukc7Hy3UsEEvbS1so6fHEunEkEAL1dpgKh3Y95cKjh WmGAoHqiKJq8qmEPDyrnQCnWED38Ij5eG1OMNfCZQwsT3xRlR152zN823NAZw6nBGRB3 fHpi46wAWsEaGsCL6wggSg+qLltx23KzZIuN5F9OHGTYVByuV4aEEv8UhPxbA2MOI5yn 8x3g== X-Gm-Message-State: AC+VfDxXvu/Dk2GI9WYRaYLInOfjfw2HS1KjdRPDL8tCB1Ee4J5s5C7h 4pCL5y3sMN5JZawZhU8XKcqDgQ== X-Google-Smtp-Source: ACHHUZ4x7GzIKnUKtsG2jddWduLXgCTnpycV5f8sqghKDDH0II0u9Om2EL3+2MK2AM5jv0n4wk3OZg== X-Received: by 2002:a05:600c:228e:b0:3f4:2158:28a0 with SMTP id 14-20020a05600c228e00b003f4215828a0mr17454713wmf.12.1687450221295; Thu, 22 Jun 2023 09:10:21 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Reinoud Zandijk , qemu-arm@nongnu.org, kvm@vger.kernel.org, Marcel Apfelbaum , Stefano Stabellini , Anthony Perard , Yanan Wang , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Peter Maydell , Roman Bolshakov , Paolo Bonzini , Paul Durrant , Sunil Muthuswamy , Alexander Graf , Richard Henderson , xen-devel@lists.xenproject.org, Eduardo Habkost , Cameron Esfahani Subject: [PATCH v2 11/16] accel: Inline NVMM get_qemu_vcpu() Date: Thu, 22 Jun 2023 18:08:18 +0200 Message-Id: <20230622160823.71851-12-philmd@linaro.org> X-Mailer: git-send-email 2.38.1 In-Reply-To: <20230622160823.71851-1-philmd@linaro.org> References: <20230622160823.71851-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit No need for this helper to access the CPUState::accel field. Reviewed-by: Richard Henderson Signed-off-by: Philippe Mathieu-Daudé --- target/i386/nvmm/nvmm-all.c | 28 +++++++++++----------------- 1 file changed, 11 insertions(+), 17 deletions(-) diff --git a/target/i386/nvmm/nvmm-all.c b/target/i386/nvmm/nvmm-all.c index e5ee4af084..72a3a9e3ae 100644 --- a/target/i386/nvmm/nvmm-all.c +++ b/target/i386/nvmm/nvmm-all.c @@ -49,12 +49,6 @@ struct qemu_machine { static bool nvmm_allowed; static struct qemu_machine qemu_mach; -static AccelCPUState * -get_qemu_vcpu(CPUState *cpu) -{ - return cpu->accel; -} - static struct nvmm_machine * get_nvmm_mach(void) { @@ -86,7 +80,7 @@ nvmm_set_registers(CPUState *cpu) { CPUX86State *env = cpu->env_ptr; struct nvmm_machine *mach = get_nvmm_mach(); - AccelCPUState *qcpu = get_qemu_vcpu(cpu); + AccelCPUState *qcpu = cpu->accel; struct nvmm_vcpu *vcpu = &qcpu->vcpu; struct nvmm_x64_state *state = vcpu->state; uint64_t bitmap; @@ -223,7 +217,7 @@ nvmm_get_registers(CPUState *cpu) { CPUX86State *env = cpu->env_ptr; struct nvmm_machine *mach = get_nvmm_mach(); - AccelCPUState *qcpu = get_qemu_vcpu(cpu); + AccelCPUState *qcpu = cpu->accel; struct nvmm_vcpu *vcpu = &qcpu->vcpu; X86CPU *x86_cpu = X86_CPU(cpu); struct nvmm_x64_state *state = vcpu->state; @@ -347,7 +341,7 @@ static bool nvmm_can_take_int(CPUState *cpu) { CPUX86State *env = cpu->env_ptr; - AccelCPUState *qcpu = get_qemu_vcpu(cpu); + AccelCPUState *qcpu = cpu->accel; struct nvmm_vcpu *vcpu = &qcpu->vcpu; struct nvmm_machine *mach = get_nvmm_mach(); @@ -372,7 +366,7 @@ nvmm_can_take_int(CPUState *cpu) static bool nvmm_can_take_nmi(CPUState *cpu) { - AccelCPUState *qcpu = get_qemu_vcpu(cpu); + AccelCPUState *qcpu = cpu->accel; /* * Contrary to INTs, NMIs always schedule an exit when they are @@ -395,7 +389,7 @@ nvmm_vcpu_pre_run(CPUState *cpu) { CPUX86State *env = cpu->env_ptr; struct nvmm_machine *mach = get_nvmm_mach(); - AccelCPUState *qcpu = get_qemu_vcpu(cpu); + AccelCPUState *qcpu = cpu->accel; struct nvmm_vcpu *vcpu = &qcpu->vcpu; X86CPU *x86_cpu = X86_CPU(cpu); struct nvmm_x64_state *state = vcpu->state; @@ -478,7 +472,7 @@ nvmm_vcpu_pre_run(CPUState *cpu) static void nvmm_vcpu_post_run(CPUState *cpu, struct nvmm_vcpu_exit *exit) { - AccelCPUState *qcpu = get_qemu_vcpu(cpu); + AccelCPUState *qcpu = cpu->accel; CPUX86State *env = cpu->env_ptr; X86CPU *x86_cpu = X86_CPU(cpu); uint64_t tpr; @@ -565,7 +559,7 @@ static int nvmm_handle_rdmsr(struct nvmm_machine *mach, CPUState *cpu, struct nvmm_vcpu_exit *exit) { - AccelCPUState *qcpu = get_qemu_vcpu(cpu); + AccelCPUState *qcpu = cpu->accel; struct nvmm_vcpu *vcpu = &qcpu->vcpu; X86CPU *x86_cpu = X86_CPU(cpu); struct nvmm_x64_state *state = vcpu->state; @@ -610,7 +604,7 @@ static int nvmm_handle_wrmsr(struct nvmm_machine *mach, CPUState *cpu, struct nvmm_vcpu_exit *exit) { - AccelCPUState *qcpu = get_qemu_vcpu(cpu); + AccelCPUState *qcpu = cpu->accel; struct nvmm_vcpu *vcpu = &qcpu->vcpu; X86CPU *x86_cpu = X86_CPU(cpu); struct nvmm_x64_state *state = vcpu->state; @@ -686,7 +680,7 @@ nvmm_vcpu_loop(CPUState *cpu) { CPUX86State *env = cpu->env_ptr; struct nvmm_machine *mach = get_nvmm_mach(); - AccelCPUState *qcpu = get_qemu_vcpu(cpu); + AccelCPUState *qcpu = cpu->accel; struct nvmm_vcpu *vcpu = &qcpu->vcpu; X86CPU *x86_cpu = X86_CPU(cpu); struct nvmm_vcpu_exit *exit = vcpu->exit; @@ -892,7 +886,7 @@ static void nvmm_ipi_signal(int sigcpu) { if (current_cpu) { - AccelCPUState *qcpu = get_qemu_vcpu(current_cpu); + AccelCPUState *qcpu = current_cpu->accel; #if NVMM_USER_VERSION >= 2 struct nvmm_vcpu *vcpu = &qcpu->vcpu; nvmm_vcpu_stop(vcpu); @@ -1023,7 +1017,7 @@ void nvmm_destroy_vcpu(CPUState *cpu) { struct nvmm_machine *mach = get_nvmm_mach(); - AccelCPUState *qcpu = get_qemu_vcpu(cpu); + AccelCPUState *qcpu = cpu->accel; nvmm_vcpu_destroy(mach, &qcpu->vcpu); g_free(cpu->accel); -- 2.38.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 22 16:19:31 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 16:19:31 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553780.864601 (Exim 4.92) (envelope-from ) id 1qCN1u-0008Nf-Vv; Thu, 22 Jun 2023 16:19:30 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553780.864601; Thu, 22 Jun 2023 16:19:30 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCN1u-0008NK-QA; Thu, 22 Jun 2023 16:19:30 +0000 Received: by outflank-mailman (input) for mailman id 553780; Thu, 22 Jun 2023 16:19:29 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCMtv-0001Gi-Ko for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 16:11:15 +0000 Received: from mail-wr1-x42d.google.com (mail-wr1-x42d.google.com [2a00:1450:4864:20::42d]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 687a8e29-1117-11ee-b237-6b7b168915f2; Thu, 22 Jun 2023 18:11:13 +0200 (CEST) Received: by mail-wr1-x42d.google.com with SMTP id ffacd0b85a97d-3112902f785so877833f8f.0 for ; Thu, 22 Jun 2023 09:11:13 -0700 (PDT) Received: from localhost.localdomain (230.red-88-28-3.dynamicip.rima-tde.net. [88.28.3.230]) by smtp.gmail.com with ESMTPSA id b8-20020adff248000000b003063772a55bsm7391445wrp.61.2023.06.22.09.11.07 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Thu, 22 Jun 2023 09:11:11 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 687a8e29-1117-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1687450272; x=1690042272; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=g0kqJburgdu472vwwAFuv1VsrJpQeVQ9WWi/MNQJgyg=; b=X/LSe7ET3HA/FOJED496ZQ/MgJIHK5ZLUDrP2zB7JeO3gyBSTFXPteFPewVPonYV+V Om+ZD18d+Hx1XMxnzVG1OhabMjsX5u8CFCaUb/n17VI05C/WoSMIieqc68KU18ZeFU9K vd0Id1ZbolFrjzJ3A6ff200qEyqn3Vwzi6daV+rnGdNtZscdHx7UcEPatG6BIT/IXw+F EfS+LxBr+xNpk+h+BeHSEBpjUUTtekUw1mudJ2lZvFmUiRDNCeiK+vQNVhLvbZ5DyqNw N6ib3vDrzXTzx9f3qpDyr7kA2/vi8DjN55ok10V6dh33sTzsRY9L8p0plrpYjC65oYrS NaRA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687450272; x=1690042272; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=g0kqJburgdu472vwwAFuv1VsrJpQeVQ9WWi/MNQJgyg=; b=AI8oW+CY78+EL2UPJXIGL6Jmw5g5vA9JjxDUW3FgcbEdhqsCxwv/S9aFCa51/spSuE gIIWirtamT4ypUzXEleFYu2bNyGphirgLO1ly73CPRKQahFfNbZ9A6P6oUFiSFlQ7L7e 8ETanJkmxPBHFYVxX2YwakFPIsk4SgSA5YPPE5vF+iec3hxdYqh4i3Qu88KyeTRf86xT FqPjtOqX0ym05LuKHXhn6DRpUI3eBKVedbf241wbTB7JhcEj2PZHuGNGww+hsLbiwLRv cv0E0PNzoj6th3FqgnC7TjJTVVwDukwk4ooNyDMhdoyn0Lf7qvDV0jlYjJ3g67t0peci dIRg== X-Gm-Message-State: AC+VfDwi2qc/j4iBlXzSXifwGNUBxcI4rptNko5tNktkc9nu54V4b2if EtqCjrVF1+hXFdwENC1o22nHc1qp+UpSx4SCoQWCgw== X-Google-Smtp-Source: ACHHUZ4vOPPOLo7QmgVClajvoGsLDBUccKzS2E8fCJ2AC82Z4T83Vnb7AaojHy9ATpjMS6WULzLkyg== X-Received: by 2002:a05:6000:12c8:b0:311:2888:9f95 with SMTP id l8-20020a05600012c800b0031128889f95mr16140447wrx.23.1687450272301; Thu, 22 Jun 2023 09:11:12 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Reinoud Zandijk , qemu-arm@nongnu.org, kvm@vger.kernel.org, Marcel Apfelbaum , Stefano Stabellini , Anthony Perard , Yanan Wang , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Peter Maydell , Roman Bolshakov , Paolo Bonzini , Paul Durrant , Sunil Muthuswamy , Alexander Graf , Richard Henderson , xen-devel@lists.xenproject.org, Eduardo Habkost , Cameron Esfahani Subject: [PATCH v2 16/16] accel: Rename HVF 'struct hvf_vcpu_state' -> AccelCPUState Date: Thu, 22 Jun 2023 18:08:23 +0200 Message-Id: <20230622160823.71851-17-philmd@linaro.org> X-Mailer: git-send-email 2.38.1 In-Reply-To: <20230622160823.71851-1-philmd@linaro.org> References: <20230622160823.71851-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit We want all accelerators to share the same opaque pointer in CPUState. Rename the 'hvf_vcpu_state' structure as 'AccelCPUState'. Use the generic 'accel' field of CPUState instead of 'hvf'. Replace g_malloc0() by g_new0() for readability. Signed-off-by: Philippe Mathieu-Daudé Reviewed-by: Richard Henderson --- Not even built on x86! --- include/hw/core/cpu.h | 4 - include/sysemu/hvf_int.h | 2 +- target/i386/hvf/vmx.h | 22 ++-- accel/hvf/hvf-accel-ops.c | 18 ++-- target/arm/hvf/hvf.c | 108 +++++++++---------- target/i386/hvf/hvf.c | 104 +++++++++--------- target/i386/hvf/x86.c | 28 ++--- target/i386/hvf/x86_descr.c | 26 ++--- target/i386/hvf/x86_emu.c | 62 +++++------ target/i386/hvf/x86_mmu.c | 4 +- target/i386/hvf/x86_task.c | 10 +- target/i386/hvf/x86hvf.c | 208 ++++++++++++++++++------------------ 12 files changed, 296 insertions(+), 300 deletions(-) diff --git a/include/hw/core/cpu.h b/include/hw/core/cpu.h index 01388d5918..afde06e054 100644 --- a/include/hw/core/cpu.h +++ b/include/hw/core/cpu.h @@ -240,8 +240,6 @@ typedef struct SavedIOTLB { struct KVMState; struct kvm_run; -struct hvf_vcpu_state; - /* work queue */ /* The union type allows passing of 64 bit target pointers on 32 bit @@ -441,8 +439,6 @@ struct CPUState { /* Used for user-only emulation of prctl(PR_SET_UNALIGN). */ bool prctl_unalign_sigbus; - struct hvf_vcpu_state *hvf; - /* track IOMMUs whose translations we've cached in the TCG TLB */ GArray *iommu_notifiers; }; diff --git a/include/sysemu/hvf_int.h b/include/sysemu/hvf_int.h index 6ab119e49f..5237943952 100644 --- a/include/sysemu/hvf_int.h +++ b/include/sysemu/hvf_int.h @@ -49,7 +49,7 @@ struct HVFState { }; extern HVFState *hvf_state; -struct hvf_vcpu_state { +struct AccelvCPUState { uint64_t fd; void *exit; bool vtimer_masked; diff --git a/target/i386/hvf/vmx.h b/target/i386/hvf/vmx.h index fcd9a95e5b..0fffcfa46c 100644 --- a/target/i386/hvf/vmx.h +++ b/target/i386/hvf/vmx.h @@ -180,15 +180,15 @@ static inline void macvm_set_rip(CPUState *cpu, uint64_t rip) uint64_t val; /* BUG, should take considering overlap.. */ - wreg(cpu->hvf->fd, HV_X86_RIP, rip); + wreg(cpu->accel->fd, HV_X86_RIP, rip); env->eip = rip; /* after moving forward in rip, we need to clean INTERRUPTABILITY */ - val = rvmcs(cpu->hvf->fd, VMCS_GUEST_INTERRUPTIBILITY); + val = rvmcs(cpu->accel->fd, VMCS_GUEST_INTERRUPTIBILITY); if (val & (VMCS_INTERRUPTIBILITY_STI_BLOCKING | VMCS_INTERRUPTIBILITY_MOVSS_BLOCKING)) { env->hflags &= ~HF_INHIBIT_IRQ_MASK; - wvmcs(cpu->hvf->fd, VMCS_GUEST_INTERRUPTIBILITY, + wvmcs(cpu->accel->fd, VMCS_GUEST_INTERRUPTIBILITY, val & ~(VMCS_INTERRUPTIBILITY_STI_BLOCKING | VMCS_INTERRUPTIBILITY_MOVSS_BLOCKING)); } @@ -200,9 +200,9 @@ static inline void vmx_clear_nmi_blocking(CPUState *cpu) CPUX86State *env = &x86_cpu->env; env->hflags2 &= ~HF2_NMI_MASK; - uint32_t gi = (uint32_t) rvmcs(cpu->hvf->fd, VMCS_GUEST_INTERRUPTIBILITY); + uint32_t gi = (uint32_t) rvmcs(cpu->accel->fd, VMCS_GUEST_INTERRUPTIBILITY); gi &= ~VMCS_INTERRUPTIBILITY_NMI_BLOCKING; - wvmcs(cpu->hvf->fd, VMCS_GUEST_INTERRUPTIBILITY, gi); + wvmcs(cpu->accel->fd, VMCS_GUEST_INTERRUPTIBILITY, gi); } static inline void vmx_set_nmi_blocking(CPUState *cpu) @@ -211,16 +211,16 @@ static inline void vmx_set_nmi_blocking(CPUState *cpu) CPUX86State *env = &x86_cpu->env; env->hflags2 |= HF2_NMI_MASK; - uint32_t gi = (uint32_t)rvmcs(cpu->hvf->fd, VMCS_GUEST_INTERRUPTIBILITY); + uint32_t gi = (uint32_t)rvmcs(cpu->accel->fd, VMCS_GUEST_INTERRUPTIBILITY); gi |= VMCS_INTERRUPTIBILITY_NMI_BLOCKING; - wvmcs(cpu->hvf->fd, VMCS_GUEST_INTERRUPTIBILITY, gi); + wvmcs(cpu->accel->fd, VMCS_GUEST_INTERRUPTIBILITY, gi); } static inline void vmx_set_nmi_window_exiting(CPUState *cpu) { uint64_t val; - val = rvmcs(cpu->hvf->fd, VMCS_PRI_PROC_BASED_CTLS); - wvmcs(cpu->hvf->fd, VMCS_PRI_PROC_BASED_CTLS, val | + val = rvmcs(cpu->accel->fd, VMCS_PRI_PROC_BASED_CTLS); + wvmcs(cpu->accel->fd, VMCS_PRI_PROC_BASED_CTLS, val | VMCS_PRI_PROC_BASED_CTLS_NMI_WINDOW_EXITING); } @@ -229,8 +229,8 @@ static inline void vmx_clear_nmi_window_exiting(CPUState *cpu) { uint64_t val; - val = rvmcs(cpu->hvf->fd, VMCS_PRI_PROC_BASED_CTLS); - wvmcs(cpu->hvf->fd, VMCS_PRI_PROC_BASED_CTLS, val & + val = rvmcs(cpu->accel->fd, VMCS_PRI_PROC_BASED_CTLS); + wvmcs(cpu->accel->fd, VMCS_PRI_PROC_BASED_CTLS, val & ~VMCS_PRI_PROC_BASED_CTLS_NMI_WINDOW_EXITING); } diff --git a/accel/hvf/hvf-accel-ops.c b/accel/hvf/hvf-accel-ops.c index 9c3da03c94..6b95933264 100644 --- a/accel/hvf/hvf-accel-ops.c +++ b/accel/hvf/hvf-accel-ops.c @@ -372,19 +372,19 @@ type_init(hvf_type_init); static void hvf_vcpu_destroy(CPUState *cpu) { - hv_return_t ret = hv_vcpu_destroy(cpu->hvf->fd); + hv_return_t ret = hv_vcpu_destroy(cpu->accel->fd); assert_hvf_ok(ret); hvf_arch_vcpu_destroy(cpu); - g_free(cpu->hvf); - cpu->hvf = NULL; + g_free(cpu->accel); + cpu->accel = NULL; } static int hvf_init_vcpu(CPUState *cpu) { int r; - cpu->hvf = g_malloc0(sizeof(*cpu->hvf)); + cpu->accel = g_new0(struct AccelvCPUState, 1); /* init cpu signals */ struct sigaction sigact; @@ -393,18 +393,18 @@ static int hvf_init_vcpu(CPUState *cpu) sigact.sa_handler = dummy_signal; sigaction(SIG_IPI, &sigact, NULL); - pthread_sigmask(SIG_BLOCK, NULL, &cpu->hvf->unblock_ipi_mask); - sigdelset(&cpu->hvf->unblock_ipi_mask, SIG_IPI); + pthread_sigmask(SIG_BLOCK, NULL, &cpu->accel->unblock_ipi_mask); + sigdelset(&cpu->accel->unblock_ipi_mask, SIG_IPI); #ifdef __aarch64__ - r = hv_vcpu_create(&cpu->hvf->fd, (hv_vcpu_exit_t **)&cpu->hvf->exit, NULL); + r = hv_vcpu_create(&cpu->accel->fd, (hv_vcpu_exit_t **)&cpu->accel->exit, NULL); #else - r = hv_vcpu_create((hv_vcpuid_t *)&cpu->hvf->fd, HV_VCPU_DEFAULT); + r = hv_vcpu_create((hv_vcpuid_t *)&cpu->accel->fd, HV_VCPU_DEFAULT); #endif cpu->vcpu_dirty = 1; assert_hvf_ok(r); - cpu->hvf->guest_debug_enabled = false; + cpu->accel->guest_debug_enabled = false; return hvf_arch_init_vcpu(cpu); } diff --git a/target/arm/hvf/hvf.c b/target/arm/hvf/hvf.c index 8f72624586..8fce64bbf6 100644 --- a/target/arm/hvf/hvf.c +++ b/target/arm/hvf/hvf.c @@ -544,29 +544,29 @@ int hvf_get_registers(CPUState *cpu) int i; for (i = 0; i < ARRAY_SIZE(hvf_reg_match); i++) { - ret = hv_vcpu_get_reg(cpu->hvf->fd, hvf_reg_match[i].reg, &val); + ret = hv_vcpu_get_reg(cpu->accel->fd, hvf_reg_match[i].reg, &val); *(uint64_t *)((void *)env + hvf_reg_match[i].offset) = val; assert_hvf_ok(ret); } for (i = 0; i < ARRAY_SIZE(hvf_fpreg_match); i++) { - ret = hv_vcpu_get_simd_fp_reg(cpu->hvf->fd, hvf_fpreg_match[i].reg, + ret = hv_vcpu_get_simd_fp_reg(cpu->accel->fd, hvf_fpreg_match[i].reg, &fpval); memcpy((void *)env + hvf_fpreg_match[i].offset, &fpval, sizeof(fpval)); assert_hvf_ok(ret); } val = 0; - ret = hv_vcpu_get_reg(cpu->hvf->fd, HV_REG_FPCR, &val); + ret = hv_vcpu_get_reg(cpu->accel->fd, HV_REG_FPCR, &val); assert_hvf_ok(ret); vfp_set_fpcr(env, val); val = 0; - ret = hv_vcpu_get_reg(cpu->hvf->fd, HV_REG_FPSR, &val); + ret = hv_vcpu_get_reg(cpu->accel->fd, HV_REG_FPSR, &val); assert_hvf_ok(ret); vfp_set_fpsr(env, val); - ret = hv_vcpu_get_reg(cpu->hvf->fd, HV_REG_CPSR, &val); + ret = hv_vcpu_get_reg(cpu->accel->fd, HV_REG_CPSR, &val); assert_hvf_ok(ret); pstate_write(env, val); @@ -575,7 +575,7 @@ int hvf_get_registers(CPUState *cpu) continue; } - if (cpu->hvf->guest_debug_enabled) { + if (cpu->accel->guest_debug_enabled) { /* Handle debug registers */ switch (hvf_sreg_match[i].reg) { case HV_SYS_REG_DBGBVR0_EL1: @@ -661,7 +661,7 @@ int hvf_get_registers(CPUState *cpu) } } - ret = hv_vcpu_get_sys_reg(cpu->hvf->fd, hvf_sreg_match[i].reg, &val); + ret = hv_vcpu_get_sys_reg(cpu->accel->fd, hvf_sreg_match[i].reg, &val); assert_hvf_ok(ret); arm_cpu->cpreg_values[hvf_sreg_match[i].cp_idx] = val; @@ -684,24 +684,24 @@ int hvf_put_registers(CPUState *cpu) for (i = 0; i < ARRAY_SIZE(hvf_reg_match); i++) { val = *(uint64_t *)((void *)env + hvf_reg_match[i].offset); - ret = hv_vcpu_set_reg(cpu->hvf->fd, hvf_reg_match[i].reg, val); + ret = hv_vcpu_set_reg(cpu->accel->fd, hvf_reg_match[i].reg, val); assert_hvf_ok(ret); } for (i = 0; i < ARRAY_SIZE(hvf_fpreg_match); i++) { memcpy(&fpval, (void *)env + hvf_fpreg_match[i].offset, sizeof(fpval)); - ret = hv_vcpu_set_simd_fp_reg(cpu->hvf->fd, hvf_fpreg_match[i].reg, + ret = hv_vcpu_set_simd_fp_reg(cpu->accel->fd, hvf_fpreg_match[i].reg, fpval); assert_hvf_ok(ret); } - ret = hv_vcpu_set_reg(cpu->hvf->fd, HV_REG_FPCR, vfp_get_fpcr(env)); + ret = hv_vcpu_set_reg(cpu->accel->fd, HV_REG_FPCR, vfp_get_fpcr(env)); assert_hvf_ok(ret); - ret = hv_vcpu_set_reg(cpu->hvf->fd, HV_REG_FPSR, vfp_get_fpsr(env)); + ret = hv_vcpu_set_reg(cpu->accel->fd, HV_REG_FPSR, vfp_get_fpsr(env)); assert_hvf_ok(ret); - ret = hv_vcpu_set_reg(cpu->hvf->fd, HV_REG_CPSR, pstate_read(env)); + ret = hv_vcpu_set_reg(cpu->accel->fd, HV_REG_CPSR, pstate_read(env)); assert_hvf_ok(ret); aarch64_save_sp(env, arm_current_el(env)); @@ -712,7 +712,7 @@ int hvf_put_registers(CPUState *cpu) continue; } - if (cpu->hvf->guest_debug_enabled) { + if (cpu->accel->guest_debug_enabled) { /* Handle debug registers */ switch (hvf_sreg_match[i].reg) { case HV_SYS_REG_DBGBVR0_EL1: @@ -789,11 +789,11 @@ int hvf_put_registers(CPUState *cpu) } val = arm_cpu->cpreg_values[hvf_sreg_match[i].cp_idx]; - ret = hv_vcpu_set_sys_reg(cpu->hvf->fd, hvf_sreg_match[i].reg, val); + ret = hv_vcpu_set_sys_reg(cpu->accel->fd, hvf_sreg_match[i].reg, val); assert_hvf_ok(ret); } - ret = hv_vcpu_set_vtimer_offset(cpu->hvf->fd, hvf_state->vtimer_offset); + ret = hv_vcpu_set_vtimer_offset(cpu->accel->fd, hvf_state->vtimer_offset); assert_hvf_ok(ret); return 0; @@ -814,7 +814,7 @@ static void hvf_set_reg(CPUState *cpu, int rt, uint64_t val) flush_cpu_state(cpu); if (rt < 31) { - r = hv_vcpu_set_reg(cpu->hvf->fd, HV_REG_X0 + rt, val); + r = hv_vcpu_set_reg(cpu->accel->fd, HV_REG_X0 + rt, val); assert_hvf_ok(r); } } @@ -827,7 +827,7 @@ static uint64_t hvf_get_reg(CPUState *cpu, int rt) flush_cpu_state(cpu); if (rt < 31) { - r = hv_vcpu_get_reg(cpu->hvf->fd, HV_REG_X0 + rt, &val); + r = hv_vcpu_get_reg(cpu->accel->fd, HV_REG_X0 + rt, &val); assert_hvf_ok(r); } @@ -969,22 +969,22 @@ int hvf_arch_init_vcpu(CPUState *cpu) assert(write_cpustate_to_list(arm_cpu, false)); /* Set CP_NO_RAW system registers on init */ - ret = hv_vcpu_set_sys_reg(cpu->hvf->fd, HV_SYS_REG_MIDR_EL1, + ret = hv_vcpu_set_sys_reg(cpu->accel->fd, HV_SYS_REG_MIDR_EL1, arm_cpu->midr); assert_hvf_ok(ret); - ret = hv_vcpu_set_sys_reg(cpu->hvf->fd, HV_SYS_REG_MPIDR_EL1, + ret = hv_vcpu_set_sys_reg(cpu->accel->fd, HV_SYS_REG_MPIDR_EL1, arm_cpu->mp_affinity); assert_hvf_ok(ret); - ret = hv_vcpu_get_sys_reg(cpu->hvf->fd, HV_SYS_REG_ID_AA64PFR0_EL1, &pfr); + ret = hv_vcpu_get_sys_reg(cpu->accel->fd, HV_SYS_REG_ID_AA64PFR0_EL1, &pfr); assert_hvf_ok(ret); pfr |= env->gicv3state ? (1 << 24) : 0; - ret = hv_vcpu_set_sys_reg(cpu->hvf->fd, HV_SYS_REG_ID_AA64PFR0_EL1, pfr); + ret = hv_vcpu_set_sys_reg(cpu->accel->fd, HV_SYS_REG_ID_AA64PFR0_EL1, pfr); assert_hvf_ok(ret); /* We're limited to underlying hardware caps, override internal versions */ - ret = hv_vcpu_get_sys_reg(cpu->hvf->fd, HV_SYS_REG_ID_AA64MMFR0_EL1, + ret = hv_vcpu_get_sys_reg(cpu->accel->fd, HV_SYS_REG_ID_AA64MMFR0_EL1, &arm_cpu->isar.id_aa64mmfr0); assert_hvf_ok(ret); @@ -994,7 +994,7 @@ int hvf_arch_init_vcpu(CPUState *cpu) void hvf_kick_vcpu_thread(CPUState *cpu) { cpus_kick_thread(cpu); - hv_vcpus_exit(&cpu->hvf->fd, 1); + hv_vcpus_exit(&cpu->accel->fd, 1); } static void hvf_raise_exception(CPUState *cpu, uint32_t excp, @@ -1678,13 +1678,13 @@ static int hvf_inject_interrupts(CPUState *cpu) { if (cpu->interrupt_request & CPU_INTERRUPT_FIQ) { trace_hvf_inject_fiq(); - hv_vcpu_set_pending_interrupt(cpu->hvf->fd, HV_INTERRUPT_TYPE_FIQ, + hv_vcpu_set_pending_interrupt(cpu->accel->fd, HV_INTERRUPT_TYPE_FIQ, true); } if (cpu->interrupt_request & CPU_INTERRUPT_HARD) { trace_hvf_inject_irq(); - hv_vcpu_set_pending_interrupt(cpu->hvf->fd, HV_INTERRUPT_TYPE_IRQ, + hv_vcpu_set_pending_interrupt(cpu->accel->fd, HV_INTERRUPT_TYPE_IRQ, true); } @@ -1718,7 +1718,7 @@ static void hvf_wait_for_ipi(CPUState *cpu, struct timespec *ts) */ qatomic_set_mb(&cpu->thread_kicked, false); qemu_mutex_unlock_iothread(); - pselect(0, 0, 0, 0, ts, &cpu->hvf->unblock_ipi_mask); + pselect(0, 0, 0, 0, ts, &cpu->accel->unblock_ipi_mask); qemu_mutex_lock_iothread(); } @@ -1739,7 +1739,7 @@ static void hvf_wfi(CPUState *cpu) return; } - r = hv_vcpu_get_sys_reg(cpu->hvf->fd, HV_SYS_REG_CNTV_CTL_EL0, &ctl); + r = hv_vcpu_get_sys_reg(cpu->accel->fd, HV_SYS_REG_CNTV_CTL_EL0, &ctl); assert_hvf_ok(r); if (!(ctl & 1) || (ctl & 2)) { @@ -1748,7 +1748,7 @@ static void hvf_wfi(CPUState *cpu) return; } - r = hv_vcpu_get_sys_reg(cpu->hvf->fd, HV_SYS_REG_CNTV_CVAL_EL0, &cval); + r = hv_vcpu_get_sys_reg(cpu->accel->fd, HV_SYS_REG_CNTV_CVAL_EL0, &cval); assert_hvf_ok(r); ticks_to_sleep = cval - hvf_vtimer_val(); @@ -1781,12 +1781,12 @@ static void hvf_sync_vtimer(CPUState *cpu) uint64_t ctl; bool irq_state; - if (!cpu->hvf->vtimer_masked) { + if (!cpu->accel->vtimer_masked) { /* We will get notified on vtimer changes by hvf, nothing to do */ return; } - r = hv_vcpu_get_sys_reg(cpu->hvf->fd, HV_SYS_REG_CNTV_CTL_EL0, &ctl); + r = hv_vcpu_get_sys_reg(cpu->accel->fd, HV_SYS_REG_CNTV_CTL_EL0, &ctl); assert_hvf_ok(r); irq_state = (ctl & (TMR_CTL_ENABLE | TMR_CTL_IMASK | TMR_CTL_ISTATUS)) == @@ -1795,8 +1795,8 @@ static void hvf_sync_vtimer(CPUState *cpu) if (!irq_state) { /* Timer no longer asserting, we can unmask it */ - hv_vcpu_set_vtimer_mask(cpu->hvf->fd, false); - cpu->hvf->vtimer_masked = false; + hv_vcpu_set_vtimer_mask(cpu->accel->fd, false); + cpu->accel->vtimer_masked = false; } } @@ -1805,7 +1805,7 @@ int hvf_vcpu_exec(CPUState *cpu) ARMCPU *arm_cpu = ARM_CPU(cpu); CPUARMState *env = &arm_cpu->env; int ret; - hv_vcpu_exit_t *hvf_exit = cpu->hvf->exit; + hv_vcpu_exit_t *hvf_exit = cpu->accel->exit; hv_return_t r; bool advance_pc = false; @@ -1821,7 +1821,7 @@ int hvf_vcpu_exec(CPUState *cpu) flush_cpu_state(cpu); qemu_mutex_unlock_iothread(); - assert_hvf_ok(hv_vcpu_run(cpu->hvf->fd)); + assert_hvf_ok(hv_vcpu_run(cpu->accel->fd)); /* handle VMEXIT */ uint64_t exit_reason = hvf_exit->reason; @@ -1836,7 +1836,7 @@ int hvf_vcpu_exec(CPUState *cpu) break; case HV_EXIT_REASON_VTIMER_ACTIVATED: qemu_set_irq(arm_cpu->gt_timer_outputs[GTIMER_VIRT], 1); - cpu->hvf->vtimer_masked = true; + cpu->accel->vtimer_masked = true; return 0; case HV_EXIT_REASON_CANCELED: /* we got kicked, no exit to process */ @@ -1990,10 +1990,10 @@ int hvf_vcpu_exec(CPUState *cpu) flush_cpu_state(cpu); - r = hv_vcpu_get_reg(cpu->hvf->fd, HV_REG_PC, &pc); + r = hv_vcpu_get_reg(cpu->accel->fd, HV_REG_PC, &pc); assert_hvf_ok(r); pc += 4; - r = hv_vcpu_set_reg(cpu->hvf->fd, HV_REG_PC, pc); + r = hv_vcpu_set_reg(cpu->accel->fd, HV_REG_PC, pc); assert_hvf_ok(r); /* Handle single-stepping over instructions which trigger a VM exit */ @@ -2113,29 +2113,29 @@ static void hvf_put_gdbstub_debug_registers(CPUState *cpu) for (i = 0; i < cur_hw_bps; i++) { HWBreakpoint *bp = get_hw_bp(i); - r = hv_vcpu_set_sys_reg(cpu->hvf->fd, dbgbcr_regs[i], bp->bcr); + r = hv_vcpu_set_sys_reg(cpu->accel->fd, dbgbcr_regs[i], bp->bcr); assert_hvf_ok(r); - r = hv_vcpu_set_sys_reg(cpu->hvf->fd, dbgbvr_regs[i], bp->bvr); + r = hv_vcpu_set_sys_reg(cpu->accel->fd, dbgbvr_regs[i], bp->bvr); assert_hvf_ok(r); } for (i = cur_hw_bps; i < max_hw_bps; i++) { - r = hv_vcpu_set_sys_reg(cpu->hvf->fd, dbgbcr_regs[i], 0); + r = hv_vcpu_set_sys_reg(cpu->accel->fd, dbgbcr_regs[i], 0); assert_hvf_ok(r); - r = hv_vcpu_set_sys_reg(cpu->hvf->fd, dbgbvr_regs[i], 0); + r = hv_vcpu_set_sys_reg(cpu->accel->fd, dbgbvr_regs[i], 0); assert_hvf_ok(r); } for (i = 0; i < cur_hw_wps; i++) { HWWatchpoint *wp = get_hw_wp(i); - r = hv_vcpu_set_sys_reg(cpu->hvf->fd, dbgwcr_regs[i], wp->wcr); + r = hv_vcpu_set_sys_reg(cpu->accel->fd, dbgwcr_regs[i], wp->wcr); assert_hvf_ok(r); - r = hv_vcpu_set_sys_reg(cpu->hvf->fd, dbgwvr_regs[i], wp->wvr); + r = hv_vcpu_set_sys_reg(cpu->accel->fd, dbgwvr_regs[i], wp->wvr); assert_hvf_ok(r); } for (i = cur_hw_wps; i < max_hw_wps; i++) { - r = hv_vcpu_set_sys_reg(cpu->hvf->fd, dbgwcr_regs[i], 0); + r = hv_vcpu_set_sys_reg(cpu->accel->fd, dbgwcr_regs[i], 0); assert_hvf_ok(r); - r = hv_vcpu_set_sys_reg(cpu->hvf->fd, dbgwvr_regs[i], 0); + r = hv_vcpu_set_sys_reg(cpu->accel->fd, dbgwvr_regs[i], 0); assert_hvf_ok(r); } } @@ -2152,19 +2152,19 @@ static void hvf_put_guest_debug_registers(CPUState *cpu) int i; for (i = 0; i < max_hw_bps; i++) { - r = hv_vcpu_set_sys_reg(cpu->hvf->fd, dbgbcr_regs[i], + r = hv_vcpu_set_sys_reg(cpu->accel->fd, dbgbcr_regs[i], env->cp15.dbgbcr[i]); assert_hvf_ok(r); - r = hv_vcpu_set_sys_reg(cpu->hvf->fd, dbgbvr_regs[i], + r = hv_vcpu_set_sys_reg(cpu->accel->fd, dbgbvr_regs[i], env->cp15.dbgbvr[i]); assert_hvf_ok(r); } for (i = 0; i < max_hw_wps; i++) { - r = hv_vcpu_set_sys_reg(cpu->hvf->fd, dbgwcr_regs[i], + r = hv_vcpu_set_sys_reg(cpu->accel->fd, dbgwcr_regs[i], env->cp15.dbgwcr[i]); assert_hvf_ok(r); - r = hv_vcpu_set_sys_reg(cpu->hvf->fd, dbgwvr_regs[i], + r = hv_vcpu_set_sys_reg(cpu->accel->fd, dbgwvr_regs[i], env->cp15.dbgwvr[i]); assert_hvf_ok(r); } @@ -2184,16 +2184,16 @@ static void hvf_arch_set_traps(void) /* Check whether guest debugging is enabled for at least one vCPU; if it * is, enable exiting the guest on all vCPUs */ CPU_FOREACH(cpu) { - should_enable_traps |= cpu->hvf->guest_debug_enabled; + should_enable_traps |= cpu->accel->guest_debug_enabled; } CPU_FOREACH(cpu) { /* Set whether debug exceptions exit the guest */ - r = hv_vcpu_set_trap_debug_exceptions(cpu->hvf->fd, + r = hv_vcpu_set_trap_debug_exceptions(cpu->accel->fd, should_enable_traps); assert_hvf_ok(r); /* Set whether accesses to debug registers exit the guest */ - r = hv_vcpu_set_trap_debug_reg_accesses(cpu->hvf->fd, + r = hv_vcpu_set_trap_debug_reg_accesses(cpu->accel->fd, should_enable_traps); assert_hvf_ok(r); } @@ -2205,12 +2205,12 @@ void hvf_arch_update_guest_debug(CPUState *cpu) CPUARMState *env = &arm_cpu->env; /* Check whether guest debugging is enabled */ - cpu->hvf->guest_debug_enabled = cpu->singlestep_enabled || + cpu->accel->guest_debug_enabled = cpu->singlestep_enabled || hvf_sw_breakpoints_active(cpu) || hvf_arm_hw_debug_active(cpu); /* Update debug registers */ - if (cpu->hvf->guest_debug_enabled) { + if (cpu->accel->guest_debug_enabled) { hvf_put_gdbstub_debug_registers(cpu); } else { hvf_put_guest_debug_registers(cpu); diff --git a/target/i386/hvf/hvf.c b/target/i386/hvf/hvf.c index f6775c942a..06ea5033c2 100644 --- a/target/i386/hvf/hvf.c +++ b/target/i386/hvf/hvf.c @@ -81,11 +81,11 @@ void vmx_update_tpr(CPUState *cpu) int tpr = cpu_get_apic_tpr(x86_cpu->apic_state) << 4; int irr = apic_get_highest_priority_irr(x86_cpu->apic_state); - wreg(cpu->hvf->fd, HV_X86_TPR, tpr); + wreg(cpu->accel->fd, HV_X86_TPR, tpr); if (irr == -1) { - wvmcs(cpu->hvf->fd, VMCS_TPR_THRESHOLD, 0); + wvmcs(cpu->accel->fd, VMCS_TPR_THRESHOLD, 0); } else { - wvmcs(cpu->hvf->fd, VMCS_TPR_THRESHOLD, (irr > tpr) ? tpr >> 4 : + wvmcs(cpu->accel->fd, VMCS_TPR_THRESHOLD, (irr > tpr) ? tpr >> 4 : irr >> 4); } } @@ -93,7 +93,7 @@ void vmx_update_tpr(CPUState *cpu) static void update_apic_tpr(CPUState *cpu) { X86CPU *x86_cpu = X86_CPU(cpu); - int tpr = rreg(cpu->hvf->fd, HV_X86_TPR) >> 4; + int tpr = rreg(cpu->accel->fd, HV_X86_TPR) >> 4; cpu_set_apic_tpr(x86_cpu->apic_state, tpr); } @@ -256,12 +256,12 @@ int hvf_arch_init_vcpu(CPUState *cpu) } /* set VMCS control fields */ - wvmcs(cpu->hvf->fd, VMCS_PIN_BASED_CTLS, + wvmcs(cpu->accel->fd, VMCS_PIN_BASED_CTLS, cap2ctrl(hvf_state->hvf_caps->vmx_cap_pinbased, VMCS_PIN_BASED_CTLS_EXTINT | VMCS_PIN_BASED_CTLS_NMI | VMCS_PIN_BASED_CTLS_VNMI)); - wvmcs(cpu->hvf->fd, VMCS_PRI_PROC_BASED_CTLS, + wvmcs(cpu->accel->fd, VMCS_PRI_PROC_BASED_CTLS, cap2ctrl(hvf_state->hvf_caps->vmx_cap_procbased, VMCS_PRI_PROC_BASED_CTLS_HLT | VMCS_PRI_PROC_BASED_CTLS_MWAIT | @@ -276,14 +276,14 @@ int hvf_arch_init_vcpu(CPUState *cpu) reqCap |= VMCS_PRI_PROC_BASED2_CTLS_RDTSCP; } - wvmcs(cpu->hvf->fd, VMCS_SEC_PROC_BASED_CTLS, + wvmcs(cpu->accel->fd, VMCS_SEC_PROC_BASED_CTLS, cap2ctrl(hvf_state->hvf_caps->vmx_cap_procbased2, reqCap)); - wvmcs(cpu->hvf->fd, VMCS_ENTRY_CTLS, cap2ctrl(hvf_state->hvf_caps->vmx_cap_entry, + wvmcs(cpu->accel->fd, VMCS_ENTRY_CTLS, cap2ctrl(hvf_state->hvf_caps->vmx_cap_entry, 0)); - wvmcs(cpu->hvf->fd, VMCS_EXCEPTION_BITMAP, 0); /* Double fault */ + wvmcs(cpu->accel->fd, VMCS_EXCEPTION_BITMAP, 0); /* Double fault */ - wvmcs(cpu->hvf->fd, VMCS_TPR_THRESHOLD, 0); + wvmcs(cpu->accel->fd, VMCS_TPR_THRESHOLD, 0); x86cpu = X86_CPU(cpu); x86cpu->env.xsave_buf_len = 4096; @@ -295,18 +295,18 @@ int hvf_arch_init_vcpu(CPUState *cpu) */ assert(hvf_get_supported_cpuid(0xd, 0, R_ECX) <= x86cpu->env.xsave_buf_len); - hv_vcpu_enable_native_msr(cpu->hvf->fd, MSR_STAR, 1); - hv_vcpu_enable_native_msr(cpu->hvf->fd, MSR_LSTAR, 1); - hv_vcpu_enable_native_msr(cpu->hvf->fd, MSR_CSTAR, 1); - hv_vcpu_enable_native_msr(cpu->hvf->fd, MSR_FMASK, 1); - hv_vcpu_enable_native_msr(cpu->hvf->fd, MSR_FSBASE, 1); - hv_vcpu_enable_native_msr(cpu->hvf->fd, MSR_GSBASE, 1); - hv_vcpu_enable_native_msr(cpu->hvf->fd, MSR_KERNELGSBASE, 1); - hv_vcpu_enable_native_msr(cpu->hvf->fd, MSR_TSC_AUX, 1); - hv_vcpu_enable_native_msr(cpu->hvf->fd, MSR_IA32_TSC, 1); - hv_vcpu_enable_native_msr(cpu->hvf->fd, MSR_IA32_SYSENTER_CS, 1); - hv_vcpu_enable_native_msr(cpu->hvf->fd, MSR_IA32_SYSENTER_EIP, 1); - hv_vcpu_enable_native_msr(cpu->hvf->fd, MSR_IA32_SYSENTER_ESP, 1); + hv_vcpu_enable_native_msr(cpu->accel->fd, MSR_STAR, 1); + hv_vcpu_enable_native_msr(cpu->accel->fd, MSR_LSTAR, 1); + hv_vcpu_enable_native_msr(cpu->accel->fd, MSR_CSTAR, 1); + hv_vcpu_enable_native_msr(cpu->accel->fd, MSR_FMASK, 1); + hv_vcpu_enable_native_msr(cpu->accel->fd, MSR_FSBASE, 1); + hv_vcpu_enable_native_msr(cpu->accel->fd, MSR_GSBASE, 1); + hv_vcpu_enable_native_msr(cpu->accel->fd, MSR_KERNELGSBASE, 1); + hv_vcpu_enable_native_msr(cpu->accel->fd, MSR_TSC_AUX, 1); + hv_vcpu_enable_native_msr(cpu->accel->fd, MSR_IA32_TSC, 1); + hv_vcpu_enable_native_msr(cpu->accel->fd, MSR_IA32_SYSENTER_CS, 1); + hv_vcpu_enable_native_msr(cpu->accel->fd, MSR_IA32_SYSENTER_EIP, 1); + hv_vcpu_enable_native_msr(cpu->accel->fd, MSR_IA32_SYSENTER_ESP, 1); return 0; } @@ -347,16 +347,16 @@ static void hvf_store_events(CPUState *cpu, uint32_t ins_len, uint64_t idtvec_in } if (idtvec_info & VMCS_IDT_VEC_ERRCODE_VALID) { env->has_error_code = true; - env->error_code = rvmcs(cpu->hvf->fd, VMCS_IDT_VECTORING_ERROR); + env->error_code = rvmcs(cpu->accel->fd, VMCS_IDT_VECTORING_ERROR); } } - if ((rvmcs(cpu->hvf->fd, VMCS_GUEST_INTERRUPTIBILITY) & + if ((rvmcs(cpu->accel->fd, VMCS_GUEST_INTERRUPTIBILITY) & VMCS_INTERRUPTIBILITY_NMI_BLOCKING)) { env->hflags2 |= HF2_NMI_MASK; } else { env->hflags2 &= ~HF2_NMI_MASK; } - if (rvmcs(cpu->hvf->fd, VMCS_GUEST_INTERRUPTIBILITY) & + if (rvmcs(cpu->accel->fd, VMCS_GUEST_INTERRUPTIBILITY) & (VMCS_INTERRUPTIBILITY_STI_BLOCKING | VMCS_INTERRUPTIBILITY_MOVSS_BLOCKING)) { env->hflags |= HF_INHIBIT_IRQ_MASK; @@ -435,20 +435,20 @@ int hvf_vcpu_exec(CPUState *cpu) return EXCP_HLT; } - hv_return_t r = hv_vcpu_run(cpu->hvf->fd); + hv_return_t r = hv_vcpu_run(cpu->accel->fd); assert_hvf_ok(r); /* handle VMEXIT */ - uint64_t exit_reason = rvmcs(cpu->hvf->fd, VMCS_EXIT_REASON); - uint64_t exit_qual = rvmcs(cpu->hvf->fd, VMCS_EXIT_QUALIFICATION); - uint32_t ins_len = (uint32_t)rvmcs(cpu->hvf->fd, + uint64_t exit_reason = rvmcs(cpu->accel->fd, VMCS_EXIT_REASON); + uint64_t exit_qual = rvmcs(cpu->accel->fd, VMCS_EXIT_QUALIFICATION); + uint32_t ins_len = (uint32_t)rvmcs(cpu->accel->fd, VMCS_EXIT_INSTRUCTION_LENGTH); - uint64_t idtvec_info = rvmcs(cpu->hvf->fd, VMCS_IDT_VECTORING_INFO); + uint64_t idtvec_info = rvmcs(cpu->accel->fd, VMCS_IDT_VECTORING_INFO); hvf_store_events(cpu, ins_len, idtvec_info); - rip = rreg(cpu->hvf->fd, HV_X86_RIP); - env->eflags = rreg(cpu->hvf->fd, HV_X86_RFLAGS); + rip = rreg(cpu->accel->fd, HV_X86_RIP); + env->eflags = rreg(cpu->accel->fd, HV_X86_RFLAGS); qemu_mutex_lock_iothread(); @@ -478,7 +478,7 @@ int hvf_vcpu_exec(CPUState *cpu) case EXIT_REASON_EPT_FAULT: { hvf_slot *slot; - uint64_t gpa = rvmcs(cpu->hvf->fd, VMCS_GUEST_PHYSICAL_ADDRESS); + uint64_t gpa = rvmcs(cpu->accel->fd, VMCS_GUEST_PHYSICAL_ADDRESS); if (((idtvec_info & VMCS_IDT_VEC_VALID) == 0) && ((exit_qual & EXIT_QUAL_NMIUDTI) != 0)) { @@ -523,7 +523,7 @@ int hvf_vcpu_exec(CPUState *cpu) store_regs(cpu); break; } else if (!string && !in) { - RAX(env) = rreg(cpu->hvf->fd, HV_X86_RAX); + RAX(env) = rreg(cpu->accel->fd, HV_X86_RAX); hvf_handle_io(env, port, &RAX(env), 1, size, 1); macvm_set_rip(cpu, rip + ins_len); break; @@ -539,21 +539,21 @@ int hvf_vcpu_exec(CPUState *cpu) break; } case EXIT_REASON_CPUID: { - uint32_t rax = (uint32_t)rreg(cpu->hvf->fd, HV_X86_RAX); - uint32_t rbx = (uint32_t)rreg(cpu->hvf->fd, HV_X86_RBX); - uint32_t rcx = (uint32_t)rreg(cpu->hvf->fd, HV_X86_RCX); - uint32_t rdx = (uint32_t)rreg(cpu->hvf->fd, HV_X86_RDX); + uint32_t rax = (uint32_t)rreg(cpu->accel->fd, HV_X86_RAX); + uint32_t rbx = (uint32_t)rreg(cpu->accel->fd, HV_X86_RBX); + uint32_t rcx = (uint32_t)rreg(cpu->accel->fd, HV_X86_RCX); + uint32_t rdx = (uint32_t)rreg(cpu->accel->fd, HV_X86_RDX); if (rax == 1) { /* CPUID1.ecx.OSXSAVE needs to know CR4 */ - env->cr[4] = rvmcs(cpu->hvf->fd, VMCS_GUEST_CR4); + env->cr[4] = rvmcs(cpu->accel->fd, VMCS_GUEST_CR4); } hvf_cpu_x86_cpuid(env, rax, rcx, &rax, &rbx, &rcx, &rdx); - wreg(cpu->hvf->fd, HV_X86_RAX, rax); - wreg(cpu->hvf->fd, HV_X86_RBX, rbx); - wreg(cpu->hvf->fd, HV_X86_RCX, rcx); - wreg(cpu->hvf->fd, HV_X86_RDX, rdx); + wreg(cpu->accel->fd, HV_X86_RAX, rax); + wreg(cpu->accel->fd, HV_X86_RBX, rbx); + wreg(cpu->accel->fd, HV_X86_RCX, rcx); + wreg(cpu->accel->fd, HV_X86_RDX, rdx); macvm_set_rip(cpu, rip + ins_len); break; @@ -561,16 +561,16 @@ int hvf_vcpu_exec(CPUState *cpu) case EXIT_REASON_XSETBV: { X86CPU *x86_cpu = X86_CPU(cpu); CPUX86State *env = &x86_cpu->env; - uint32_t eax = (uint32_t)rreg(cpu->hvf->fd, HV_X86_RAX); - uint32_t ecx = (uint32_t)rreg(cpu->hvf->fd, HV_X86_RCX); - uint32_t edx = (uint32_t)rreg(cpu->hvf->fd, HV_X86_RDX); + uint32_t eax = (uint32_t)rreg(cpu->accel->fd, HV_X86_RAX); + uint32_t ecx = (uint32_t)rreg(cpu->accel->fd, HV_X86_RCX); + uint32_t edx = (uint32_t)rreg(cpu->accel->fd, HV_X86_RDX); if (ecx) { macvm_set_rip(cpu, rip + ins_len); break; } env->xcr0 = ((uint64_t)edx << 32) | eax; - wreg(cpu->hvf->fd, HV_X86_XCR0, env->xcr0 | 1); + wreg(cpu->accel->fd, HV_X86_XCR0, env->xcr0 | 1); macvm_set_rip(cpu, rip + ins_len); break; } @@ -609,11 +609,11 @@ int hvf_vcpu_exec(CPUState *cpu) switch (cr) { case 0x0: { - macvm_set_cr0(cpu->hvf->fd, RRX(env, reg)); + macvm_set_cr0(cpu->accel->fd, RRX(env, reg)); break; } case 4: { - macvm_set_cr4(cpu->hvf->fd, RRX(env, reg)); + macvm_set_cr4(cpu->accel->fd, RRX(env, reg)); break; } case 8: { @@ -649,7 +649,7 @@ int hvf_vcpu_exec(CPUState *cpu) break; } case EXIT_REASON_TASK_SWITCH: { - uint64_t vinfo = rvmcs(cpu->hvf->fd, VMCS_IDT_VECTORING_INFO); + uint64_t vinfo = rvmcs(cpu->accel->fd, VMCS_IDT_VECTORING_INFO); x68_segment_selector sel = {.sel = exit_qual & 0xffff}; vmx_handle_task_switch(cpu, sel, (exit_qual >> 30) & 0x3, vinfo & VMCS_INTR_VALID, vinfo & VECTORING_INFO_VECTOR_MASK, vinfo @@ -662,8 +662,8 @@ int hvf_vcpu_exec(CPUState *cpu) break; } case EXIT_REASON_RDPMC: - wreg(cpu->hvf->fd, HV_X86_RAX, 0); - wreg(cpu->hvf->fd, HV_X86_RDX, 0); + wreg(cpu->accel->fd, HV_X86_RAX, 0); + wreg(cpu->accel->fd, HV_X86_RDX, 0); macvm_set_rip(cpu, rip + ins_len); break; case VMX_REASON_VMCALL: diff --git a/target/i386/hvf/x86.c b/target/i386/hvf/x86.c index d086584f26..8ceea6398e 100644 --- a/target/i386/hvf/x86.c +++ b/target/i386/hvf/x86.c @@ -61,11 +61,11 @@ bool x86_read_segment_descriptor(struct CPUState *cpu, } if (GDT_SEL == sel.ti) { - base = rvmcs(cpu->hvf->fd, VMCS_GUEST_GDTR_BASE); - limit = rvmcs(cpu->hvf->fd, VMCS_GUEST_GDTR_LIMIT); + base = rvmcs(cpu->accel->fd, VMCS_GUEST_GDTR_BASE); + limit = rvmcs(cpu->accel->fd, VMCS_GUEST_GDTR_LIMIT); } else { - base = rvmcs(cpu->hvf->fd, VMCS_GUEST_LDTR_BASE); - limit = rvmcs(cpu->hvf->fd, VMCS_GUEST_LDTR_LIMIT); + base = rvmcs(cpu->accel->fd, VMCS_GUEST_LDTR_BASE); + limit = rvmcs(cpu->accel->fd, VMCS_GUEST_LDTR_LIMIT); } if (sel.index * 8 >= limit) { @@ -84,11 +84,11 @@ bool x86_write_segment_descriptor(struct CPUState *cpu, uint32_t limit; if (GDT_SEL == sel.ti) { - base = rvmcs(cpu->hvf->fd, VMCS_GUEST_GDTR_BASE); - limit = rvmcs(cpu->hvf->fd, VMCS_GUEST_GDTR_LIMIT); + base = rvmcs(cpu->accel->fd, VMCS_GUEST_GDTR_BASE); + limit = rvmcs(cpu->accel->fd, VMCS_GUEST_GDTR_LIMIT); } else { - base = rvmcs(cpu->hvf->fd, VMCS_GUEST_LDTR_BASE); - limit = rvmcs(cpu->hvf->fd, VMCS_GUEST_LDTR_LIMIT); + base = rvmcs(cpu->accel->fd, VMCS_GUEST_LDTR_BASE); + limit = rvmcs(cpu->accel->fd, VMCS_GUEST_LDTR_LIMIT); } if (sel.index * 8 >= limit) { @@ -102,8 +102,8 @@ bool x86_write_segment_descriptor(struct CPUState *cpu, bool x86_read_call_gate(struct CPUState *cpu, struct x86_call_gate *idt_desc, int gate) { - target_ulong base = rvmcs(cpu->hvf->fd, VMCS_GUEST_IDTR_BASE); - uint32_t limit = rvmcs(cpu->hvf->fd, VMCS_GUEST_IDTR_LIMIT); + target_ulong base = rvmcs(cpu->accel->fd, VMCS_GUEST_IDTR_BASE); + uint32_t limit = rvmcs(cpu->accel->fd, VMCS_GUEST_IDTR_LIMIT); memset(idt_desc, 0, sizeof(*idt_desc)); if (gate * 8 >= limit) { @@ -117,7 +117,7 @@ bool x86_read_call_gate(struct CPUState *cpu, struct x86_call_gate *idt_desc, bool x86_is_protected(struct CPUState *cpu) { - uint64_t cr0 = rvmcs(cpu->hvf->fd, VMCS_GUEST_CR0); + uint64_t cr0 = rvmcs(cpu->accel->fd, VMCS_GUEST_CR0); return cr0 & CR0_PE_MASK; } @@ -135,7 +135,7 @@ bool x86_is_v8086(struct CPUState *cpu) bool x86_is_long_mode(struct CPUState *cpu) { - return rvmcs(cpu->hvf->fd, VMCS_GUEST_IA32_EFER) & MSR_EFER_LMA; + return rvmcs(cpu->accel->fd, VMCS_GUEST_IA32_EFER) & MSR_EFER_LMA; } bool x86_is_long64_mode(struct CPUState *cpu) @@ -148,13 +148,13 @@ bool x86_is_long64_mode(struct CPUState *cpu) bool x86_is_paging_mode(struct CPUState *cpu) { - uint64_t cr0 = rvmcs(cpu->hvf->fd, VMCS_GUEST_CR0); + uint64_t cr0 = rvmcs(cpu->accel->fd, VMCS_GUEST_CR0); return cr0 & CR0_PG_MASK; } bool x86_is_pae_enabled(struct CPUState *cpu) { - uint64_t cr4 = rvmcs(cpu->hvf->fd, VMCS_GUEST_CR4); + uint64_t cr4 = rvmcs(cpu->accel->fd, VMCS_GUEST_CR4); return cr4 & CR4_PAE_MASK; } diff --git a/target/i386/hvf/x86_descr.c b/target/i386/hvf/x86_descr.c index a484942cfc..c2d2e9ee84 100644 --- a/target/i386/hvf/x86_descr.c +++ b/target/i386/hvf/x86_descr.c @@ -47,47 +47,47 @@ static const struct vmx_segment_field { uint32_t vmx_read_segment_limit(CPUState *cpu, X86Seg seg) { - return (uint32_t)rvmcs(cpu->hvf->fd, vmx_segment_fields[seg].limit); + return (uint32_t)rvmcs(cpu->accel->fd, vmx_segment_fields[seg].limit); } uint32_t vmx_read_segment_ar(CPUState *cpu, X86Seg seg) { - return (uint32_t)rvmcs(cpu->hvf->fd, vmx_segment_fields[seg].ar_bytes); + return (uint32_t)rvmcs(cpu->accel->fd, vmx_segment_fields[seg].ar_bytes); } uint64_t vmx_read_segment_base(CPUState *cpu, X86Seg seg) { - return rvmcs(cpu->hvf->fd, vmx_segment_fields[seg].base); + return rvmcs(cpu->accel->fd, vmx_segment_fields[seg].base); } x68_segment_selector vmx_read_segment_selector(CPUState *cpu, X86Seg seg) { x68_segment_selector sel; - sel.sel = rvmcs(cpu->hvf->fd, vmx_segment_fields[seg].selector); + sel.sel = rvmcs(cpu->accel->fd, vmx_segment_fields[seg].selector); return sel; } void vmx_write_segment_selector(struct CPUState *cpu, x68_segment_selector selector, X86Seg seg) { - wvmcs(cpu->hvf->fd, vmx_segment_fields[seg].selector, selector.sel); + wvmcs(cpu->accel->fd, vmx_segment_fields[seg].selector, selector.sel); } void vmx_read_segment_descriptor(struct CPUState *cpu, struct vmx_segment *desc, X86Seg seg) { - desc->sel = rvmcs(cpu->hvf->fd, vmx_segment_fields[seg].selector); - desc->base = rvmcs(cpu->hvf->fd, vmx_segment_fields[seg].base); - desc->limit = rvmcs(cpu->hvf->fd, vmx_segment_fields[seg].limit); - desc->ar = rvmcs(cpu->hvf->fd, vmx_segment_fields[seg].ar_bytes); + desc->sel = rvmcs(cpu->accel->fd, vmx_segment_fields[seg].selector); + desc->base = rvmcs(cpu->accel->fd, vmx_segment_fields[seg].base); + desc->limit = rvmcs(cpu->accel->fd, vmx_segment_fields[seg].limit); + desc->ar = rvmcs(cpu->accel->fd, vmx_segment_fields[seg].ar_bytes); } void vmx_write_segment_descriptor(CPUState *cpu, struct vmx_segment *desc, X86Seg seg) { const struct vmx_segment_field *sf = &vmx_segment_fields[seg]; - wvmcs(cpu->hvf->fd, sf->base, desc->base); - wvmcs(cpu->hvf->fd, sf->limit, desc->limit); - wvmcs(cpu->hvf->fd, sf->selector, desc->sel); - wvmcs(cpu->hvf->fd, sf->ar_bytes, desc->ar); + wvmcs(cpu->accel->fd, sf->base, desc->base); + wvmcs(cpu->accel->fd, sf->limit, desc->limit); + wvmcs(cpu->accel->fd, sf->selector, desc->sel); + wvmcs(cpu->accel->fd, sf->ar_bytes, desc->ar); } void x86_segment_descriptor_to_vmx(struct CPUState *cpu, x68_segment_selector selector, struct x86_segment_descriptor *desc, struct vmx_segment *vmx_desc) diff --git a/target/i386/hvf/x86_emu.c b/target/i386/hvf/x86_emu.c index f5704f63e8..ccda568478 100644 --- a/target/i386/hvf/x86_emu.c +++ b/target/i386/hvf/x86_emu.c @@ -673,7 +673,7 @@ void simulate_rdmsr(struct CPUState *cpu) switch (msr) { case MSR_IA32_TSC: - val = rdtscp() + rvmcs(cpu->hvf->fd, VMCS_TSC_OFFSET); + val = rdtscp() + rvmcs(cpu->accel->fd, VMCS_TSC_OFFSET); break; case MSR_IA32_APICBASE: val = cpu_get_apic_base(X86_CPU(cpu)->apic_state); @@ -682,16 +682,16 @@ void simulate_rdmsr(struct CPUState *cpu) val = x86_cpu->ucode_rev; break; case MSR_EFER: - val = rvmcs(cpu->hvf->fd, VMCS_GUEST_IA32_EFER); + val = rvmcs(cpu->accel->fd, VMCS_GUEST_IA32_EFER); break; case MSR_FSBASE: - val = rvmcs(cpu->hvf->fd, VMCS_GUEST_FS_BASE); + val = rvmcs(cpu->accel->fd, VMCS_GUEST_FS_BASE); break; case MSR_GSBASE: - val = rvmcs(cpu->hvf->fd, VMCS_GUEST_GS_BASE); + val = rvmcs(cpu->accel->fd, VMCS_GUEST_GS_BASE); break; case MSR_KERNELGSBASE: - val = rvmcs(cpu->hvf->fd, VMCS_HOST_FS_BASE); + val = rvmcs(cpu->accel->fd, VMCS_HOST_FS_BASE); break; case MSR_STAR: abort(); @@ -779,13 +779,13 @@ void simulate_wrmsr(struct CPUState *cpu) cpu_set_apic_base(X86_CPU(cpu)->apic_state, data); break; case MSR_FSBASE: - wvmcs(cpu->hvf->fd, VMCS_GUEST_FS_BASE, data); + wvmcs(cpu->accel->fd, VMCS_GUEST_FS_BASE, data); break; case MSR_GSBASE: - wvmcs(cpu->hvf->fd, VMCS_GUEST_GS_BASE, data); + wvmcs(cpu->accel->fd, VMCS_GUEST_GS_BASE, data); break; case MSR_KERNELGSBASE: - wvmcs(cpu->hvf->fd, VMCS_HOST_FS_BASE, data); + wvmcs(cpu->accel->fd, VMCS_HOST_FS_BASE, data); break; case MSR_STAR: abort(); @@ -798,9 +798,9 @@ void simulate_wrmsr(struct CPUState *cpu) break; case MSR_EFER: /*printf("new efer %llx\n", EFER(cpu));*/ - wvmcs(cpu->hvf->fd, VMCS_GUEST_IA32_EFER, data); + wvmcs(cpu->accel->fd, VMCS_GUEST_IA32_EFER, data); if (data & MSR_EFER_NXE) { - hv_vcpu_invalidate_tlb(cpu->hvf->fd); + hv_vcpu_invalidate_tlb(cpu->accel->fd); } break; case MSR_MTRRphysBase(0): @@ -1424,21 +1424,21 @@ void load_regs(struct CPUState *cpu) CPUX86State *env = &x86_cpu->env; int i = 0; - RRX(env, R_EAX) = rreg(cpu->hvf->fd, HV_X86_RAX); - RRX(env, R_EBX) = rreg(cpu->hvf->fd, HV_X86_RBX); - RRX(env, R_ECX) = rreg(cpu->hvf->fd, HV_X86_RCX); - RRX(env, R_EDX) = rreg(cpu->hvf->fd, HV_X86_RDX); - RRX(env, R_ESI) = rreg(cpu->hvf->fd, HV_X86_RSI); - RRX(env, R_EDI) = rreg(cpu->hvf->fd, HV_X86_RDI); - RRX(env, R_ESP) = rreg(cpu->hvf->fd, HV_X86_RSP); - RRX(env, R_EBP) = rreg(cpu->hvf->fd, HV_X86_RBP); + RRX(env, R_EAX) = rreg(cpu->accel->fd, HV_X86_RAX); + RRX(env, R_EBX) = rreg(cpu->accel->fd, HV_X86_RBX); + RRX(env, R_ECX) = rreg(cpu->accel->fd, HV_X86_RCX); + RRX(env, R_EDX) = rreg(cpu->accel->fd, HV_X86_RDX); + RRX(env, R_ESI) = rreg(cpu->accel->fd, HV_X86_RSI); + RRX(env, R_EDI) = rreg(cpu->accel->fd, HV_X86_RDI); + RRX(env, R_ESP) = rreg(cpu->accel->fd, HV_X86_RSP); + RRX(env, R_EBP) = rreg(cpu->accel->fd, HV_X86_RBP); for (i = 8; i < 16; i++) { - RRX(env, i) = rreg(cpu->hvf->fd, HV_X86_RAX + i); + RRX(env, i) = rreg(cpu->accel->fd, HV_X86_RAX + i); } - env->eflags = rreg(cpu->hvf->fd, HV_X86_RFLAGS); + env->eflags = rreg(cpu->accel->fd, HV_X86_RFLAGS); rflags_to_lflags(env); - env->eip = rreg(cpu->hvf->fd, HV_X86_RIP); + env->eip = rreg(cpu->accel->fd, HV_X86_RIP); } void store_regs(struct CPUState *cpu) @@ -1447,20 +1447,20 @@ void store_regs(struct CPUState *cpu) CPUX86State *env = &x86_cpu->env; int i = 0; - wreg(cpu->hvf->fd, HV_X86_RAX, RAX(env)); - wreg(cpu->hvf->fd, HV_X86_RBX, RBX(env)); - wreg(cpu->hvf->fd, HV_X86_RCX, RCX(env)); - wreg(cpu->hvf->fd, HV_X86_RDX, RDX(env)); - wreg(cpu->hvf->fd, HV_X86_RSI, RSI(env)); - wreg(cpu->hvf->fd, HV_X86_RDI, RDI(env)); - wreg(cpu->hvf->fd, HV_X86_RBP, RBP(env)); - wreg(cpu->hvf->fd, HV_X86_RSP, RSP(env)); + wreg(cpu->accel->fd, HV_X86_RAX, RAX(env)); + wreg(cpu->accel->fd, HV_X86_RBX, RBX(env)); + wreg(cpu->accel->fd, HV_X86_RCX, RCX(env)); + wreg(cpu->accel->fd, HV_X86_RDX, RDX(env)); + wreg(cpu->accel->fd, HV_X86_RSI, RSI(env)); + wreg(cpu->accel->fd, HV_X86_RDI, RDI(env)); + wreg(cpu->accel->fd, HV_X86_RBP, RBP(env)); + wreg(cpu->accel->fd, HV_X86_RSP, RSP(env)); for (i = 8; i < 16; i++) { - wreg(cpu->hvf->fd, HV_X86_RAX + i, RRX(env, i)); + wreg(cpu->accel->fd, HV_X86_RAX + i, RRX(env, i)); } lflags_to_rflags(env); - wreg(cpu->hvf->fd, HV_X86_RFLAGS, env->eflags); + wreg(cpu->accel->fd, HV_X86_RFLAGS, env->eflags); macvm_set_rip(cpu, env->eip); } diff --git a/target/i386/hvf/x86_mmu.c b/target/i386/hvf/x86_mmu.c index 96d117567e..8cd08622a1 100644 --- a/target/i386/hvf/x86_mmu.c +++ b/target/i386/hvf/x86_mmu.c @@ -126,7 +126,7 @@ static bool test_pt_entry(struct CPUState *cpu, struct gpt_translation *pt, pt->err_code |= MMU_PAGE_PT; } - uint32_t cr0 = rvmcs(cpu->hvf->fd, VMCS_GUEST_CR0); + uint32_t cr0 = rvmcs(cpu->accel->fd, VMCS_GUEST_CR0); /* check protection */ if (cr0 & CR0_WP_MASK) { if (pt->write_access && !pte_write_access(pte)) { @@ -171,7 +171,7 @@ static bool walk_gpt(struct CPUState *cpu, target_ulong addr, int err_code, { int top_level, level; bool is_large = false; - target_ulong cr3 = rvmcs(cpu->hvf->fd, VMCS_GUEST_CR3); + target_ulong cr3 = rvmcs(cpu->accel->fd, VMCS_GUEST_CR3); uint64_t page_mask = pae ? PAE_PTE_PAGE_MASK : LEGACY_PTE_PAGE_MASK; memset(pt, 0, sizeof(*pt)); diff --git a/target/i386/hvf/x86_task.c b/target/i386/hvf/x86_task.c index beaeec0687..f09bfbdda5 100644 --- a/target/i386/hvf/x86_task.c +++ b/target/i386/hvf/x86_task.c @@ -61,7 +61,7 @@ static void load_state_from_tss32(CPUState *cpu, struct x86_tss_segment32 *tss) X86CPU *x86_cpu = X86_CPU(cpu); CPUX86State *env = &x86_cpu->env; - wvmcs(cpu->hvf->fd, VMCS_GUEST_CR3, tss->cr3); + wvmcs(cpu->accel->fd, VMCS_GUEST_CR3, tss->cr3); env->eip = tss->eip; env->eflags = tss->eflags | 2; @@ -110,11 +110,11 @@ static int task_switch_32(CPUState *cpu, x68_segment_selector tss_sel, x68_segme void vmx_handle_task_switch(CPUState *cpu, x68_segment_selector tss_sel, int reason, bool gate_valid, uint8_t gate, uint64_t gate_type) { - uint64_t rip = rreg(cpu->hvf->fd, HV_X86_RIP); + uint64_t rip = rreg(cpu->accel->fd, HV_X86_RIP); if (!gate_valid || (gate_type != VMCS_INTR_T_HWEXCEPTION && gate_type != VMCS_INTR_T_HWINTR && gate_type != VMCS_INTR_T_NMI)) { - int ins_len = rvmcs(cpu->hvf->fd, VMCS_EXIT_INSTRUCTION_LENGTH); + int ins_len = rvmcs(cpu->accel->fd, VMCS_EXIT_INSTRUCTION_LENGTH); macvm_set_rip(cpu, rip + ins_len); return; } @@ -173,12 +173,12 @@ void vmx_handle_task_switch(CPUState *cpu, x68_segment_selector tss_sel, int rea //ret = task_switch_16(cpu, tss_sel, old_tss_sel, old_tss_base, &next_tss_desc); VM_PANIC("task_switch_16"); - macvm_set_cr0(cpu->hvf->fd, rvmcs(cpu->hvf->fd, VMCS_GUEST_CR0) | + macvm_set_cr0(cpu->accel->fd, rvmcs(cpu->accel->fd, VMCS_GUEST_CR0) | CR0_TS_MASK); x86_segment_descriptor_to_vmx(cpu, tss_sel, &next_tss_desc, &vmx_seg); vmx_write_segment_descriptor(cpu, &vmx_seg, R_TR); store_regs(cpu); - hv_vcpu_invalidate_tlb(cpu->hvf->fd); + hv_vcpu_invalidate_tlb(cpu->accel->fd); } diff --git a/target/i386/hvf/x86hvf.c b/target/i386/hvf/x86hvf.c index dfa500b81d..852e3bbf71 100644 --- a/target/i386/hvf/x86hvf.c +++ b/target/i386/hvf/x86hvf.c @@ -77,7 +77,7 @@ void hvf_put_xsave(CPUState *cpu) x86_cpu_xsave_all_areas(X86_CPU(cpu), xsave, xsave_len); - if (hv_vcpu_write_fpstate(cpu->hvf->fd, xsave, xsave_len)) { + if (hv_vcpu_write_fpstate(cpu->accel->fd, xsave, xsave_len)) { abort(); } } @@ -87,19 +87,19 @@ static void hvf_put_segments(CPUState *cpu) CPUX86State *env = &X86_CPU(cpu)->env; struct vmx_segment seg; - wvmcs(cpu->hvf->fd, VMCS_GUEST_IDTR_LIMIT, env->idt.limit); - wvmcs(cpu->hvf->fd, VMCS_GUEST_IDTR_BASE, env->idt.base); + wvmcs(cpu->accel->fd, VMCS_GUEST_IDTR_LIMIT, env->idt.limit); + wvmcs(cpu->accel->fd, VMCS_GUEST_IDTR_BASE, env->idt.base); - wvmcs(cpu->hvf->fd, VMCS_GUEST_GDTR_LIMIT, env->gdt.limit); - wvmcs(cpu->hvf->fd, VMCS_GUEST_GDTR_BASE, env->gdt.base); + wvmcs(cpu->accel->fd, VMCS_GUEST_GDTR_LIMIT, env->gdt.limit); + wvmcs(cpu->accel->fd, VMCS_GUEST_GDTR_BASE, env->gdt.base); - /* wvmcs(cpu->hvf->fd, VMCS_GUEST_CR2, env->cr[2]); */ - wvmcs(cpu->hvf->fd, VMCS_GUEST_CR3, env->cr[3]); + /* wvmcs(cpu->accel->fd, VMCS_GUEST_CR2, env->cr[2]); */ + wvmcs(cpu->accel->fd, VMCS_GUEST_CR3, env->cr[3]); vmx_update_tpr(cpu); - wvmcs(cpu->hvf->fd, VMCS_GUEST_IA32_EFER, env->efer); + wvmcs(cpu->accel->fd, VMCS_GUEST_IA32_EFER, env->efer); - macvm_set_cr4(cpu->hvf->fd, env->cr[4]); - macvm_set_cr0(cpu->hvf->fd, env->cr[0]); + macvm_set_cr4(cpu->accel->fd, env->cr[4]); + macvm_set_cr0(cpu->accel->fd, env->cr[0]); hvf_set_segment(cpu, &seg, &env->segs[R_CS], false); vmx_write_segment_descriptor(cpu, &seg, R_CS); @@ -130,24 +130,24 @@ void hvf_put_msrs(CPUState *cpu) { CPUX86State *env = &X86_CPU(cpu)->env; - hv_vcpu_write_msr(cpu->hvf->fd, MSR_IA32_SYSENTER_CS, + hv_vcpu_write_msr(cpu->accel->fd, MSR_IA32_SYSENTER_CS, env->sysenter_cs); - hv_vcpu_write_msr(cpu->hvf->fd, MSR_IA32_SYSENTER_ESP, + hv_vcpu_write_msr(cpu->accel->fd, MSR_IA32_SYSENTER_ESP, env->sysenter_esp); - hv_vcpu_write_msr(cpu->hvf->fd, MSR_IA32_SYSENTER_EIP, + hv_vcpu_write_msr(cpu->accel->fd, MSR_IA32_SYSENTER_EIP, env->sysenter_eip); - hv_vcpu_write_msr(cpu->hvf->fd, MSR_STAR, env->star); + hv_vcpu_write_msr(cpu->accel->fd, MSR_STAR, env->star); #ifdef TARGET_X86_64 - hv_vcpu_write_msr(cpu->hvf->fd, MSR_CSTAR, env->cstar); - hv_vcpu_write_msr(cpu->hvf->fd, MSR_KERNELGSBASE, env->kernelgsbase); - hv_vcpu_write_msr(cpu->hvf->fd, MSR_FMASK, env->fmask); - hv_vcpu_write_msr(cpu->hvf->fd, MSR_LSTAR, env->lstar); + hv_vcpu_write_msr(cpu->accel->fd, MSR_CSTAR, env->cstar); + hv_vcpu_write_msr(cpu->accel->fd, MSR_KERNELGSBASE, env->kernelgsbase); + hv_vcpu_write_msr(cpu->accel->fd, MSR_FMASK, env->fmask); + hv_vcpu_write_msr(cpu->accel->fd, MSR_LSTAR, env->lstar); #endif - hv_vcpu_write_msr(cpu->hvf->fd, MSR_GSBASE, env->segs[R_GS].base); - hv_vcpu_write_msr(cpu->hvf->fd, MSR_FSBASE, env->segs[R_FS].base); + hv_vcpu_write_msr(cpu->accel->fd, MSR_GSBASE, env->segs[R_GS].base); + hv_vcpu_write_msr(cpu->accel->fd, MSR_FSBASE, env->segs[R_FS].base); } @@ -156,7 +156,7 @@ void hvf_get_xsave(CPUState *cpu) void *xsave = X86_CPU(cpu)->env.xsave_buf; uint32_t xsave_len = X86_CPU(cpu)->env.xsave_buf_len; - if (hv_vcpu_read_fpstate(cpu->hvf->fd, xsave, xsave_len)) { + if (hv_vcpu_read_fpstate(cpu->accel->fd, xsave, xsave_len)) { abort(); } @@ -195,17 +195,17 @@ static void hvf_get_segments(CPUState *cpu) vmx_read_segment_descriptor(cpu, &seg, R_LDTR); hvf_get_segment(&env->ldt, &seg); - env->idt.limit = rvmcs(cpu->hvf->fd, VMCS_GUEST_IDTR_LIMIT); - env->idt.base = rvmcs(cpu->hvf->fd, VMCS_GUEST_IDTR_BASE); - env->gdt.limit = rvmcs(cpu->hvf->fd, VMCS_GUEST_GDTR_LIMIT); - env->gdt.base = rvmcs(cpu->hvf->fd, VMCS_GUEST_GDTR_BASE); + env->idt.limit = rvmcs(cpu->accel->fd, VMCS_GUEST_IDTR_LIMIT); + env->idt.base = rvmcs(cpu->accel->fd, VMCS_GUEST_IDTR_BASE); + env->gdt.limit = rvmcs(cpu->accel->fd, VMCS_GUEST_GDTR_LIMIT); + env->gdt.base = rvmcs(cpu->accel->fd, VMCS_GUEST_GDTR_BASE); - env->cr[0] = rvmcs(cpu->hvf->fd, VMCS_GUEST_CR0); + env->cr[0] = rvmcs(cpu->accel->fd, VMCS_GUEST_CR0); env->cr[2] = 0; - env->cr[3] = rvmcs(cpu->hvf->fd, VMCS_GUEST_CR3); - env->cr[4] = rvmcs(cpu->hvf->fd, VMCS_GUEST_CR4); + env->cr[3] = rvmcs(cpu->accel->fd, VMCS_GUEST_CR3); + env->cr[4] = rvmcs(cpu->accel->fd, VMCS_GUEST_CR4); - env->efer = rvmcs(cpu->hvf->fd, VMCS_GUEST_IA32_EFER); + env->efer = rvmcs(cpu->accel->fd, VMCS_GUEST_IA32_EFER); } void hvf_get_msrs(CPUState *cpu) @@ -213,27 +213,27 @@ void hvf_get_msrs(CPUState *cpu) CPUX86State *env = &X86_CPU(cpu)->env; uint64_t tmp; - hv_vcpu_read_msr(cpu->hvf->fd, MSR_IA32_SYSENTER_CS, &tmp); + hv_vcpu_read_msr(cpu->accel->fd, MSR_IA32_SYSENTER_CS, &tmp); env->sysenter_cs = tmp; - hv_vcpu_read_msr(cpu->hvf->fd, MSR_IA32_SYSENTER_ESP, &tmp); + hv_vcpu_read_msr(cpu->accel->fd, MSR_IA32_SYSENTER_ESP, &tmp); env->sysenter_esp = tmp; - hv_vcpu_read_msr(cpu->hvf->fd, MSR_IA32_SYSENTER_EIP, &tmp); + hv_vcpu_read_msr(cpu->accel->fd, MSR_IA32_SYSENTER_EIP, &tmp); env->sysenter_eip = tmp; - hv_vcpu_read_msr(cpu->hvf->fd, MSR_STAR, &env->star); + hv_vcpu_read_msr(cpu->accel->fd, MSR_STAR, &env->star); #ifdef TARGET_X86_64 - hv_vcpu_read_msr(cpu->hvf->fd, MSR_CSTAR, &env->cstar); - hv_vcpu_read_msr(cpu->hvf->fd, MSR_KERNELGSBASE, &env->kernelgsbase); - hv_vcpu_read_msr(cpu->hvf->fd, MSR_FMASK, &env->fmask); - hv_vcpu_read_msr(cpu->hvf->fd, MSR_LSTAR, &env->lstar); + hv_vcpu_read_msr(cpu->accel->fd, MSR_CSTAR, &env->cstar); + hv_vcpu_read_msr(cpu->accel->fd, MSR_KERNELGSBASE, &env->kernelgsbase); + hv_vcpu_read_msr(cpu->accel->fd, MSR_FMASK, &env->fmask); + hv_vcpu_read_msr(cpu->accel->fd, MSR_LSTAR, &env->lstar); #endif - hv_vcpu_read_msr(cpu->hvf->fd, MSR_IA32_APICBASE, &tmp); + hv_vcpu_read_msr(cpu->accel->fd, MSR_IA32_APICBASE, &tmp); - env->tsc = rdtscp() + rvmcs(cpu->hvf->fd, VMCS_TSC_OFFSET); + env->tsc = rdtscp() + rvmcs(cpu->accel->fd, VMCS_TSC_OFFSET); } int hvf_put_registers(CPUState *cpu) @@ -241,26 +241,26 @@ int hvf_put_registers(CPUState *cpu) X86CPU *x86cpu = X86_CPU(cpu); CPUX86State *env = &x86cpu->env; - wreg(cpu->hvf->fd, HV_X86_RAX, env->regs[R_EAX]); - wreg(cpu->hvf->fd, HV_X86_RBX, env->regs[R_EBX]); - wreg(cpu->hvf->fd, HV_X86_RCX, env->regs[R_ECX]); - wreg(cpu->hvf->fd, HV_X86_RDX, env->regs[R_EDX]); - wreg(cpu->hvf->fd, HV_X86_RBP, env->regs[R_EBP]); - wreg(cpu->hvf->fd, HV_X86_RSP, env->regs[R_ESP]); - wreg(cpu->hvf->fd, HV_X86_RSI, env->regs[R_ESI]); - wreg(cpu->hvf->fd, HV_X86_RDI, env->regs[R_EDI]); - wreg(cpu->hvf->fd, HV_X86_R8, env->regs[8]); - wreg(cpu->hvf->fd, HV_X86_R9, env->regs[9]); - wreg(cpu->hvf->fd, HV_X86_R10, env->regs[10]); - wreg(cpu->hvf->fd, HV_X86_R11, env->regs[11]); - wreg(cpu->hvf->fd, HV_X86_R12, env->regs[12]); - wreg(cpu->hvf->fd, HV_X86_R13, env->regs[13]); - wreg(cpu->hvf->fd, HV_X86_R14, env->regs[14]); - wreg(cpu->hvf->fd, HV_X86_R15, env->regs[15]); - wreg(cpu->hvf->fd, HV_X86_RFLAGS, env->eflags); - wreg(cpu->hvf->fd, HV_X86_RIP, env->eip); + wreg(cpu->accel->fd, HV_X86_RAX, env->regs[R_EAX]); + wreg(cpu->accel->fd, HV_X86_RBX, env->regs[R_EBX]); + wreg(cpu->accel->fd, HV_X86_RCX, env->regs[R_ECX]); + wreg(cpu->accel->fd, HV_X86_RDX, env->regs[R_EDX]); + wreg(cpu->accel->fd, HV_X86_RBP, env->regs[R_EBP]); + wreg(cpu->accel->fd, HV_X86_RSP, env->regs[R_ESP]); + wreg(cpu->accel->fd, HV_X86_RSI, env->regs[R_ESI]); + wreg(cpu->accel->fd, HV_X86_RDI, env->regs[R_EDI]); + wreg(cpu->accel->fd, HV_X86_R8, env->regs[8]); + wreg(cpu->accel->fd, HV_X86_R9, env->regs[9]); + wreg(cpu->accel->fd, HV_X86_R10, env->regs[10]); + wreg(cpu->accel->fd, HV_X86_R11, env->regs[11]); + wreg(cpu->accel->fd, HV_X86_R12, env->regs[12]); + wreg(cpu->accel->fd, HV_X86_R13, env->regs[13]); + wreg(cpu->accel->fd, HV_X86_R14, env->regs[14]); + wreg(cpu->accel->fd, HV_X86_R15, env->regs[15]); + wreg(cpu->accel->fd, HV_X86_RFLAGS, env->eflags); + wreg(cpu->accel->fd, HV_X86_RIP, env->eip); - wreg(cpu->hvf->fd, HV_X86_XCR0, env->xcr0); + wreg(cpu->accel->fd, HV_X86_XCR0, env->xcr0); hvf_put_xsave(cpu); @@ -268,14 +268,14 @@ int hvf_put_registers(CPUState *cpu) hvf_put_msrs(cpu); - wreg(cpu->hvf->fd, HV_X86_DR0, env->dr[0]); - wreg(cpu->hvf->fd, HV_X86_DR1, env->dr[1]); - wreg(cpu->hvf->fd, HV_X86_DR2, env->dr[2]); - wreg(cpu->hvf->fd, HV_X86_DR3, env->dr[3]); - wreg(cpu->hvf->fd, HV_X86_DR4, env->dr[4]); - wreg(cpu->hvf->fd, HV_X86_DR5, env->dr[5]); - wreg(cpu->hvf->fd, HV_X86_DR6, env->dr[6]); - wreg(cpu->hvf->fd, HV_X86_DR7, env->dr[7]); + wreg(cpu->accel->fd, HV_X86_DR0, env->dr[0]); + wreg(cpu->accel->fd, HV_X86_DR1, env->dr[1]); + wreg(cpu->accel->fd, HV_X86_DR2, env->dr[2]); + wreg(cpu->accel->fd, HV_X86_DR3, env->dr[3]); + wreg(cpu->accel->fd, HV_X86_DR4, env->dr[4]); + wreg(cpu->accel->fd, HV_X86_DR5, env->dr[5]); + wreg(cpu->accel->fd, HV_X86_DR6, env->dr[6]); + wreg(cpu->accel->fd, HV_X86_DR7, env->dr[7]); return 0; } @@ -285,40 +285,40 @@ int hvf_get_registers(CPUState *cpu) X86CPU *x86cpu = X86_CPU(cpu); CPUX86State *env = &x86cpu->env; - env->regs[R_EAX] = rreg(cpu->hvf->fd, HV_X86_RAX); - env->regs[R_EBX] = rreg(cpu->hvf->fd, HV_X86_RBX); - env->regs[R_ECX] = rreg(cpu->hvf->fd, HV_X86_RCX); - env->regs[R_EDX] = rreg(cpu->hvf->fd, HV_X86_RDX); - env->regs[R_EBP] = rreg(cpu->hvf->fd, HV_X86_RBP); - env->regs[R_ESP] = rreg(cpu->hvf->fd, HV_X86_RSP); - env->regs[R_ESI] = rreg(cpu->hvf->fd, HV_X86_RSI); - env->regs[R_EDI] = rreg(cpu->hvf->fd, HV_X86_RDI); - env->regs[8] = rreg(cpu->hvf->fd, HV_X86_R8); - env->regs[9] = rreg(cpu->hvf->fd, HV_X86_R9); - env->regs[10] = rreg(cpu->hvf->fd, HV_X86_R10); - env->regs[11] = rreg(cpu->hvf->fd, HV_X86_R11); - env->regs[12] = rreg(cpu->hvf->fd, HV_X86_R12); - env->regs[13] = rreg(cpu->hvf->fd, HV_X86_R13); - env->regs[14] = rreg(cpu->hvf->fd, HV_X86_R14); - env->regs[15] = rreg(cpu->hvf->fd, HV_X86_R15); + env->regs[R_EAX] = rreg(cpu->accel->fd, HV_X86_RAX); + env->regs[R_EBX] = rreg(cpu->accel->fd, HV_X86_RBX); + env->regs[R_ECX] = rreg(cpu->accel->fd, HV_X86_RCX); + env->regs[R_EDX] = rreg(cpu->accel->fd, HV_X86_RDX); + env->regs[R_EBP] = rreg(cpu->accel->fd, HV_X86_RBP); + env->regs[R_ESP] = rreg(cpu->accel->fd, HV_X86_RSP); + env->regs[R_ESI] = rreg(cpu->accel->fd, HV_X86_RSI); + env->regs[R_EDI] = rreg(cpu->accel->fd, HV_X86_RDI); + env->regs[8] = rreg(cpu->accel->fd, HV_X86_R8); + env->regs[9] = rreg(cpu->accel->fd, HV_X86_R9); + env->regs[10] = rreg(cpu->accel->fd, HV_X86_R10); + env->regs[11] = rreg(cpu->accel->fd, HV_X86_R11); + env->regs[12] = rreg(cpu->accel->fd, HV_X86_R12); + env->regs[13] = rreg(cpu->accel->fd, HV_X86_R13); + env->regs[14] = rreg(cpu->accel->fd, HV_X86_R14); + env->regs[15] = rreg(cpu->accel->fd, HV_X86_R15); - env->eflags = rreg(cpu->hvf->fd, HV_X86_RFLAGS); - env->eip = rreg(cpu->hvf->fd, HV_X86_RIP); + env->eflags = rreg(cpu->accel->fd, HV_X86_RFLAGS); + env->eip = rreg(cpu->accel->fd, HV_X86_RIP); hvf_get_xsave(cpu); - env->xcr0 = rreg(cpu->hvf->fd, HV_X86_XCR0); + env->xcr0 = rreg(cpu->accel->fd, HV_X86_XCR0); hvf_get_segments(cpu); hvf_get_msrs(cpu); - env->dr[0] = rreg(cpu->hvf->fd, HV_X86_DR0); - env->dr[1] = rreg(cpu->hvf->fd, HV_X86_DR1); - env->dr[2] = rreg(cpu->hvf->fd, HV_X86_DR2); - env->dr[3] = rreg(cpu->hvf->fd, HV_X86_DR3); - env->dr[4] = rreg(cpu->hvf->fd, HV_X86_DR4); - env->dr[5] = rreg(cpu->hvf->fd, HV_X86_DR5); - env->dr[6] = rreg(cpu->hvf->fd, HV_X86_DR6); - env->dr[7] = rreg(cpu->hvf->fd, HV_X86_DR7); + env->dr[0] = rreg(cpu->accel->fd, HV_X86_DR0); + env->dr[1] = rreg(cpu->accel->fd, HV_X86_DR1); + env->dr[2] = rreg(cpu->accel->fd, HV_X86_DR2); + env->dr[3] = rreg(cpu->accel->fd, HV_X86_DR3); + env->dr[4] = rreg(cpu->accel->fd, HV_X86_DR4); + env->dr[5] = rreg(cpu->accel->fd, HV_X86_DR5); + env->dr[6] = rreg(cpu->accel->fd, HV_X86_DR6); + env->dr[7] = rreg(cpu->accel->fd, HV_X86_DR7); x86_update_hflags(env); return 0; @@ -327,16 +327,16 @@ int hvf_get_registers(CPUState *cpu) static void vmx_set_int_window_exiting(CPUState *cpu) { uint64_t val; - val = rvmcs(cpu->hvf->fd, VMCS_PRI_PROC_BASED_CTLS); - wvmcs(cpu->hvf->fd, VMCS_PRI_PROC_BASED_CTLS, val | + val = rvmcs(cpu->accel->fd, VMCS_PRI_PROC_BASED_CTLS); + wvmcs(cpu->accel->fd, VMCS_PRI_PROC_BASED_CTLS, val | VMCS_PRI_PROC_BASED_CTLS_INT_WINDOW_EXITING); } void vmx_clear_int_window_exiting(CPUState *cpu) { uint64_t val; - val = rvmcs(cpu->hvf->fd, VMCS_PRI_PROC_BASED_CTLS); - wvmcs(cpu->hvf->fd, VMCS_PRI_PROC_BASED_CTLS, val & + val = rvmcs(cpu->accel->fd, VMCS_PRI_PROC_BASED_CTLS); + wvmcs(cpu->accel->fd, VMCS_PRI_PROC_BASED_CTLS, val & ~VMCS_PRI_PROC_BASED_CTLS_INT_WINDOW_EXITING); } @@ -372,7 +372,7 @@ bool hvf_inject_interrupts(CPUState *cpu) uint64_t info = 0; if (have_event) { info = vector | intr_type | VMCS_INTR_VALID; - uint64_t reason = rvmcs(cpu->hvf->fd, VMCS_EXIT_REASON); + uint64_t reason = rvmcs(cpu->accel->fd, VMCS_EXIT_REASON); if (env->nmi_injected && reason != EXIT_REASON_TASK_SWITCH) { vmx_clear_nmi_blocking(cpu); } @@ -381,17 +381,17 @@ bool hvf_inject_interrupts(CPUState *cpu) info &= ~(1 << 12); /* clear undefined bit */ if (intr_type == VMCS_INTR_T_SWINTR || intr_type == VMCS_INTR_T_SWEXCEPTION) { - wvmcs(cpu->hvf->fd, VMCS_ENTRY_INST_LENGTH, env->ins_len); + wvmcs(cpu->accel->fd, VMCS_ENTRY_INST_LENGTH, env->ins_len); } if (env->has_error_code) { - wvmcs(cpu->hvf->fd, VMCS_ENTRY_EXCEPTION_ERROR, + wvmcs(cpu->accel->fd, VMCS_ENTRY_EXCEPTION_ERROR, env->error_code); /* Indicate that VMCS_ENTRY_EXCEPTION_ERROR is valid */ info |= VMCS_INTR_DEL_ERRCODE; } /*printf("reinject %lx err %d\n", info, err);*/ - wvmcs(cpu->hvf->fd, VMCS_ENTRY_INTR_INFO, info); + wvmcs(cpu->accel->fd, VMCS_ENTRY_INTR_INFO, info); }; } @@ -399,7 +399,7 @@ bool hvf_inject_interrupts(CPUState *cpu) if (!(env->hflags2 & HF2_NMI_MASK) && !(info & VMCS_INTR_VALID)) { cpu->interrupt_request &= ~CPU_INTERRUPT_NMI; info = VMCS_INTR_VALID | VMCS_INTR_T_NMI | EXCP02_NMI; - wvmcs(cpu->hvf->fd, VMCS_ENTRY_INTR_INFO, info); + wvmcs(cpu->accel->fd, VMCS_ENTRY_INTR_INFO, info); } else { vmx_set_nmi_window_exiting(cpu); } @@ -411,7 +411,7 @@ bool hvf_inject_interrupts(CPUState *cpu) int line = cpu_get_pic_interrupt(&x86cpu->env); cpu->interrupt_request &= ~CPU_INTERRUPT_HARD; if (line >= 0) { - wvmcs(cpu->hvf->fd, VMCS_ENTRY_INTR_INFO, line | + wvmcs(cpu->accel->fd, VMCS_ENTRY_INTR_INFO, line | VMCS_INTR_VALID | VMCS_INTR_T_HWINTR); } } @@ -429,7 +429,7 @@ int hvf_process_events(CPUState *cpu) if (!cpu->vcpu_dirty) { /* light weight sync for CPU_INTERRUPT_HARD and IF_MASK */ - env->eflags = rreg(cpu->hvf->fd, HV_X86_RFLAGS); + env->eflags = rreg(cpu->accel->fd, HV_X86_RFLAGS); } if (cpu->interrupt_request & CPU_INTERRUPT_INIT) { -- 2.38.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 22 16:19:32 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 16:19:32 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553782.864611 (Exim 4.92) (envelope-from ) id 1qCN1w-0000HS-JS; Thu, 22 Jun 2023 16:19:32 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553782.864611; Thu, 22 Jun 2023 16:19:32 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCN1w-0000Gb-DZ; Thu, 22 Jun 2023 16:19:32 +0000 Received: by outflank-mailman (input) for mailman id 553782; Thu, 22 Jun 2023 16:19:30 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCMtO-0001Gi-5Q for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 16:10:42 +0000 Received: from mail-wm1-x32c.google.com (mail-wm1-x32c.google.com [2a00:1450:4864:20::32c]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 559fd16e-1117-11ee-b237-6b7b168915f2; Thu, 22 Jun 2023 18:10:41 +0200 (CEST) Received: by mail-wm1-x32c.google.com with SMTP id 5b1f17b1804b1-3fa71db4208so9716415e9.0 for ; Thu, 22 Jun 2023 09:10:41 -0700 (PDT) Received: from localhost.localdomain (230.red-88-28-3.dynamicip.rima-tde.net. [88.28.3.230]) by smtp.gmail.com with ESMTPSA id t20-20020a1c7714000000b003f900678815sm8037671wmi.39.2023.06.22.09.10.36 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Thu, 22 Jun 2023 09:10:40 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 559fd16e-1117-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1687450241; x=1690042241; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=qiGDoiG1y93PPW7mQ2SAaPUCrdr0EnIkEF2xjLc8x+o=; b=afjs6vIbGP/1PJJGvwXCmtbKZCbNgsjyiMItVow4+iOx2GIUdmWc+dyuANhlyir8kF 2aYlXh5DgFmociidTOF1UsWRAtyrmcgnlXWGI09EUFdjHUk9Cp5Np1TrftJvCgPWJRKV Cq/etfX6vrPigr5Img+lY9cqze32mMWp1G+ykwR4KoeLQkkExx6kAwT8d+Nm2Mq3b+Ak kEFGWfg0RzXiY6R3b5jbQH46rBTkFIcSsg5dzuY1VAZB/qN2PdND0WyzHOVoX/sDmIlf G1bWhTNMmLufIJFW9cbS0CHCD27DWautHcOj1zDL9J0mWXjnjmK7IY5a1KFAFoSyVrD3 j9Ng== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687450241; x=1690042241; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=qiGDoiG1y93PPW7mQ2SAaPUCrdr0EnIkEF2xjLc8x+o=; b=EibdM04OD7VZKmwQ+Telr1B34qUILysaNCs6o5sa26r6qQ+m0bCCOYffWPq/+B/vsq E/ew07W4KcTqGAatj0hsIHX7t08qGP6XkhQ35YnHsbdF/oqrB6FpZXkWyjcfSyFYAR4a ItYkgHCP6s8XY+zHlhaW6SCOU9/rNp19RAFkoUEMIKUdlSonwaoDZy97X3jNloowfa80 XHoBFl40289GrDTXDva2AIKaWDPbQ+RWWE4oVJRQxrHrwrjrgHDL6r/wrWYs2x9rHUB8 FXScvorUo2FCGZWvDFTg5N00J/yqyvDgjBGyDaDK9Rgq+1oNb+MAALvZHYxD2xNrCbFX YtNw== X-Gm-Message-State: AC+VfDzoti+CjRnVXYxMwhQLkoLaTz1h4Kp7AKsxHTTRkB2vzzT4s9kD ROgcuoDyyYEP0tiqb8ppr/vmGQ== X-Google-Smtp-Source: ACHHUZ5M4RURLV917KnJd3MPK+U1TPYAx4Jil2vHUAphCH9oW8qXZeRccJQsIh2dE0Pzlg9PjXcjAQ== X-Received: by 2002:a05:600c:2119:b0:3fa:776e:8c7a with SMTP id u25-20020a05600c211900b003fa776e8c7amr1300704wml.28.1687450241047; Thu, 22 Jun 2023 09:10:41 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Reinoud Zandijk , qemu-arm@nongnu.org, kvm@vger.kernel.org, Marcel Apfelbaum , Stefano Stabellini , Anthony Perard , Yanan Wang , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Peter Maydell , Roman Bolshakov , Paolo Bonzini , Paul Durrant , Sunil Muthuswamy , Alexander Graf , Richard Henderson , xen-devel@lists.xenproject.org, Eduardo Habkost , Cameron Esfahani Subject: [PATCH v2 13/16] accel: Rename WHPX 'struct whpx_vcpu' -> AccelCPUState Date: Thu, 22 Jun 2023 18:08:20 +0200 Message-Id: <20230622160823.71851-14-philmd@linaro.org> X-Mailer: git-send-email 2.38.1 In-Reply-To: <20230622160823.71851-1-philmd@linaro.org> References: <20230622160823.71851-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit We want all accelerators to share the same opaque pointer in CPUState. Rename WHPX 'whpx_vcpu' as 'AccelCPUState'; use the typedef. Signed-off-by: Philippe Mathieu-Daudé Reviewed-by: Richard Henderson --- target/i386/whpx/whpx-all.c | 32 ++++++++++++++++---------------- 1 file changed, 16 insertions(+), 16 deletions(-) diff --git a/target/i386/whpx/whpx-all.c b/target/i386/whpx/whpx-all.c index 012ba696a9..107b731d3f 100644 --- a/target/i386/whpx/whpx-all.c +++ b/target/i386/whpx/whpx-all.c @@ -229,7 +229,7 @@ typedef enum WhpxStepMode { WHPX_STEP_EXCLUSIVE, } WhpxStepMode; -struct whpx_vcpu { +struct AccelCPUState { WHV_EMULATOR_HANDLE emulator; bool window_registered; bool interruptable; @@ -260,9 +260,9 @@ static bool whpx_has_xsave(void) * VP support */ -static struct whpx_vcpu *get_whpx_vcpu(CPUState *cpu) +static AccelCPUState *get_whpx_vcpu(CPUState *cpu) { - return (struct whpx_vcpu *)cpu->accel; + return (AccelCPUState *)cpu->accel; } static WHV_X64_SEGMENT_REGISTER whpx_seg_q2h(const SegmentCache *qs, int v86, @@ -390,7 +390,7 @@ static uint64_t whpx_cr8_to_apic_tpr(uint64_t cr8) static void whpx_set_registers(CPUState *cpu, int level) { struct whpx_state *whpx = &whpx_global; - struct whpx_vcpu *vcpu = get_whpx_vcpu(cpu); + AccelCPUState *vcpu = get_whpx_vcpu(cpu); CPUX86State *env = cpu->env_ptr; X86CPU *x86_cpu = X86_CPU(cpu); struct whpx_register_set vcxt; @@ -609,7 +609,7 @@ static void whpx_get_xcrs(CPUState *cpu) static void whpx_get_registers(CPUState *cpu) { struct whpx_state *whpx = &whpx_global; - struct whpx_vcpu *vcpu = get_whpx_vcpu(cpu); + AccelCPUState *vcpu = get_whpx_vcpu(cpu); CPUX86State *env = cpu->env_ptr; X86CPU *x86_cpu = X86_CPU(cpu); struct whpx_register_set vcxt; @@ -892,7 +892,7 @@ static const WHV_EMULATOR_CALLBACKS whpx_emu_callbacks = { static int whpx_handle_mmio(CPUState *cpu, WHV_MEMORY_ACCESS_CONTEXT *ctx) { HRESULT hr; - struct whpx_vcpu *vcpu = get_whpx_vcpu(cpu); + AccelCPUState *vcpu = get_whpx_vcpu(cpu); WHV_EMULATOR_STATUS emu_status; hr = whp_dispatch.WHvEmulatorTryMmioEmulation( @@ -917,7 +917,7 @@ static int whpx_handle_portio(CPUState *cpu, WHV_X64_IO_PORT_ACCESS_CONTEXT *ctx) { HRESULT hr; - struct whpx_vcpu *vcpu = get_whpx_vcpu(cpu); + AccelCPUState *vcpu = get_whpx_vcpu(cpu); WHV_EMULATOR_STATUS emu_status; hr = whp_dispatch.WHvEmulatorTryIoEmulation( @@ -1417,7 +1417,7 @@ static vaddr whpx_vcpu_get_pc(CPUState *cpu, bool exit_context_valid) * of QEMU, nor this port by calling WHvSetVirtualProcessorRegisters(). * This is the most common case. */ - struct whpx_vcpu *vcpu = get_whpx_vcpu(cpu); + AccelCPUState *vcpu = get_whpx_vcpu(cpu); return vcpu->exit_ctx.VpContext.Rip; } else { /* @@ -1468,7 +1468,7 @@ static void whpx_vcpu_pre_run(CPUState *cpu) { HRESULT hr; struct whpx_state *whpx = &whpx_global; - struct whpx_vcpu *vcpu = get_whpx_vcpu(cpu); + AccelCPUState *vcpu = get_whpx_vcpu(cpu); CPUX86State *env = cpu->env_ptr; X86CPU *x86_cpu = X86_CPU(cpu); int irq; @@ -1590,7 +1590,7 @@ static void whpx_vcpu_pre_run(CPUState *cpu) static void whpx_vcpu_post_run(CPUState *cpu) { - struct whpx_vcpu *vcpu = get_whpx_vcpu(cpu); + AccelCPUState *vcpu = get_whpx_vcpu(cpu); CPUX86State *env = cpu->env_ptr; X86CPU *x86_cpu = X86_CPU(cpu); @@ -1617,7 +1617,7 @@ static void whpx_vcpu_process_async_events(CPUState *cpu) { CPUX86State *env = cpu->env_ptr; X86CPU *x86_cpu = X86_CPU(cpu); - struct whpx_vcpu *vcpu = get_whpx_vcpu(cpu); + AccelCPUState *vcpu = get_whpx_vcpu(cpu); if ((cpu->interrupt_request & CPU_INTERRUPT_INIT) && !(env->hflags & HF_SMM_MASK)) { @@ -1656,7 +1656,7 @@ static int whpx_vcpu_run(CPUState *cpu) { HRESULT hr; struct whpx_state *whpx = &whpx_global; - struct whpx_vcpu *vcpu = get_whpx_vcpu(cpu); + AccelCPUState *vcpu = get_whpx_vcpu(cpu); struct whpx_breakpoint *stepped_over_bp = NULL; WhpxStepMode exclusive_step_mode = WHPX_STEP_NONE; int ret; @@ -2154,7 +2154,7 @@ int whpx_init_vcpu(CPUState *cpu) { HRESULT hr; struct whpx_state *whpx = &whpx_global; - struct whpx_vcpu *vcpu = NULL; + AccelCPUState *vcpu = NULL; Error *local_error = NULL; CPUX86State *env = cpu->env_ptr; X86CPU *x86_cpu = X86_CPU(cpu); @@ -2177,7 +2177,7 @@ int whpx_init_vcpu(CPUState *cpu) } } - vcpu = g_new0(struct whpx_vcpu, 1); + vcpu = g_new0(AccelCPUState, 1); hr = whp_dispatch.WHvEmulatorCreateEmulator( &whpx_emu_callbacks, @@ -2252,7 +2252,7 @@ int whpx_init_vcpu(CPUState *cpu) vcpu->interruptable = true; cpu->vcpu_dirty = true; - cpu->accel = (struct AccelCPUState *)vcpu; + cpu->accel = (AccelCPUState *)vcpu; max_vcpu_index = max(max_vcpu_index, cpu->cpu_index); qemu_add_vm_change_state_handler(whpx_cpu_update_state, cpu->env_ptr); @@ -2290,7 +2290,7 @@ int whpx_vcpu_exec(CPUState *cpu) void whpx_destroy_vcpu(CPUState *cpu) { struct whpx_state *whpx = &whpx_global; - struct whpx_vcpu *vcpu = get_whpx_vcpu(cpu); + AccelCPUState *vcpu = get_whpx_vcpu(cpu); whp_dispatch.WHvDeleteVirtualProcessor(whpx->partition, cpu->cpu_index); whp_dispatch.WHvEmulatorDestroyEmulator(vcpu->emulator); -- 2.38.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 22 16:19:33 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 16:19:33 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553783.864617 (Exim 4.92) (envelope-from ) id 1qCN1x-0000MK-3a; Thu, 22 Jun 2023 16:19:33 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553783.864617; Thu, 22 Jun 2023 16:19:33 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCN1w-0000Lx-Rq; Thu, 22 Jun 2023 16:19:32 +0000 Received: by outflank-mailman (input) for mailman id 553783; Thu, 22 Jun 2023 16:19:30 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCMtF-0001Yq-6n for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 16:10:33 +0000 Received: from mail-wm1-x333.google.com (mail-wm1-x333.google.com [2a00:1450:4864:20::333]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 4fb1dddb-1117-11ee-8611-37d641c3527e; Thu, 22 Jun 2023 18:10:31 +0200 (CEST) Received: by mail-wm1-x333.google.com with SMTP id 5b1f17b1804b1-3f9c0abc8b1so21515445e9.1 for ; Thu, 22 Jun 2023 09:10:31 -0700 (PDT) Received: from localhost.localdomain (230.red-88-28-3.dynamicip.rima-tde.net. [88.28.3.230]) by smtp.gmail.com with ESMTPSA id 8-20020a05600c028800b003f9c8c6bf53sm3978876wmk.13.2023.06.22.09.10.27 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Thu, 22 Jun 2023 09:10:30 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 4fb1dddb-1117-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1687450231; x=1690042231; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=xrWBSt50GXK7KCFoWhMRFDVlBR7e4c4Lap7a/Dv/MfQ=; b=uh16dyOE/YngV+vlrCn9FF7LTn5kqMPDeNAZPJp/OXd6o48t2oNQK6+xyZgF0O/Rwg eOGnESuioKTn+49rZFTitvpZbXcCCA2lKI3uKKPWDO6qAJwPVxKRyFjY6tswlOnD5ggQ uglMk0I6MEVmcZiNo50/xLJc3XKZtwUiYzcshho3Z8PHZ77Ff5SeMMqNEPPm+6yamswW 43xD7f+l3wuUlEu0Jk5k14uNzXBhG+/BP5Z2LtMbnA+vN2SOlxaHgl9cD7Y/VNZS7ggW sXiU9m8gF/k7MyaKQbMxBUzf2iKP0B73BEmBKpJN7i3GqROl8rychDyAYceCJlDAbGA3 M6Dg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687450231; x=1690042231; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=xrWBSt50GXK7KCFoWhMRFDVlBR7e4c4Lap7a/Dv/MfQ=; b=KEYnMPCumrT8ItbXkRVdCvaiEvthdBc9MuJSGeJRqt6Krm4xkC9IdOQe/eRXHo6Cf8 Kp6MHTDQ2r+nLHww49qcIEdqbZKjh6yhcc8x9fdeBLJwqYqWsqf/sjDMwgeU17/Rojuv JZOG7Avk+iSEYMrgkztkXoLUTzcl7iNruOtxQYUwqKSBFI2B9W1Xvq/JizTTZpMErcGQ urrYtMZgs88hG5i1Hl9OybcMI6Sy4DY0NOF83XdLWxX1jFshpRFImnz/8mqfOR/b5W3E 5KeT7S3Suvt1I8BlmH6gMOr1oOX+hG/zmB56vemEMHp0ws3pBOXSEdiAn8UWaOCs/EsH 8mEA== X-Gm-Message-State: AC+VfDx8PnIgooFQbsIayGd7upAN5in04Ld4cRAFivida/4vZE+h8k2D Ks0lVDsV87HRWu9FUUyynK5bSQ== X-Google-Smtp-Source: ACHHUZ5cB8aDLTQ/tjJec4fXZP1xWmF+PhC752VaaNKObmwfmqLXBqw27M1/B1ILuvDg4fp61kaDNA== X-Received: by 2002:a1c:7911:0:b0:3f9:b2a9:c546 with SMTP id l17-20020a1c7911000000b003f9b2a9c546mr9068827wme.28.1687450231205; Thu, 22 Jun 2023 09:10:31 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Reinoud Zandijk , qemu-arm@nongnu.org, kvm@vger.kernel.org, Marcel Apfelbaum , Stefano Stabellini , Anthony Perard , Yanan Wang , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Peter Maydell , Roman Bolshakov , Paolo Bonzini , Paul Durrant , Sunil Muthuswamy , Alexander Graf , Richard Henderson , xen-devel@lists.xenproject.org, Eduardo Habkost , Cameron Esfahani Subject: [PATCH v2 12/16] accel: Remove WHPX unreachable error path Date: Thu, 22 Jun 2023 18:08:19 +0200 Message-Id: <20230622160823.71851-13-philmd@linaro.org> X-Mailer: git-send-email 2.38.1 In-Reply-To: <20230622160823.71851-1-philmd@linaro.org> References: <20230622160823.71851-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit g_new0() can not fail. Remove the unreachable error path. https://developer-old.gnome.org/glib/stable/glib-Memory-Allocation.html#glib-Memory-Allocation.description Reported-by: Richard Henderson Signed-off-by: Philippe Mathieu-Daudé --- target/i386/whpx/whpx-all.c | 6 ------ 1 file changed, 6 deletions(-) diff --git a/target/i386/whpx/whpx-all.c b/target/i386/whpx/whpx-all.c index 340053e6dd..012ba696a9 100644 --- a/target/i386/whpx/whpx-all.c +++ b/target/i386/whpx/whpx-all.c @@ -2179,12 +2179,6 @@ int whpx_init_vcpu(CPUState *cpu) vcpu = g_new0(struct whpx_vcpu, 1); - if (!vcpu) { - error_report("WHPX: Failed to allocte VCPU context."); - ret = -ENOMEM; - goto error; - } - hr = whp_dispatch.WHvEmulatorCreateEmulator( &whpx_emu_callbacks, &vcpu->emulator); -- 2.38.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 22 16:32:26 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 16:32:26 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553835.864631 (Exim 4.92) (envelope-from ) id 1qCNEC-0005NG-0Q; Thu, 22 Jun 2023 16:32:12 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553835.864631; Thu, 22 Jun 2023 16:32:11 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCNEB-0005N9-U3; Thu, 22 Jun 2023 16:32:11 +0000 Received: by outflank-mailman (input) for mailman id 553835; Thu, 22 Jun 2023 16:32:10 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCNEA-0005N3-M8 for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 16:32:10 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCNEA-0005Oq-1j; Thu, 22 Jun 2023 16:32:10 +0000 Received: from [54.239.6.188] (helo=[192.168.27.222]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qCNE9-0007CS-Rh; Thu, 22 Jun 2023 16:32:09 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=n2WIkPoM0M6pERn4mdW3gr8glEWZN017zJqVWUlU3vM=; b=qqkImZmlqb4HIotf1ymsnJx8mB w+ouMCYAsi3EmYIXKRXVeVPO8x0Bg6AFn7P21Dv67WZmwGrlJG4l6VPBRYYpfXUU8ujzw4CWTpkjb luL9xhwDJqkbtM/bn7TEN2cMkRNX/kHSQ54ZwLwtAOn3XJF2globXPN6srVE363mEpKs=; Message-ID: <2fbf6885-5bb8-4b49-522d-eb265349d4b7@xen.org> Date: Thu, 22 Jun 2023 17:32:07 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v1] xen/arm: arm32: Add support to identify the Cortex-R52 processor Content-Language: en-US To: Ayan Kumar Halder , Ayan Kumar Halder , xen-devel@lists.xenproject.org Cc: sstabellini@kernel.org, stefano.stabellini@amd.com, Volodymyr_Babchuk@epam.com, bertrand.marquis@arm.com References: <20230620151736.3720850-1-ayan.kumar.halder@amd.com> <3b7f584e-700e-4598-f36e-51a96140323e@xen.org> <030fc5e8-8293-2306-06eb-9275c2a2c9e5@xen.org> From: Julien Grall In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Hi, On 22/06/2023 16:41, Ayan Kumar Halder wrote: > > On 22/06/2023 10:22, Julien Grall wrote: >> Hi Ayan, > Hi Julien, >> >> On 22/06/2023 09:59, Ayan Kumar Halder wrote: >>> >>> On 20/06/2023 21:43, Julien Grall wrote: >>>> Hi Ayan, >>> Hi Julien, >>>> >>>> On 20/06/2023 19:28, Ayan Kumar Halder wrote: >>>>> >>>>> On 20/06/2023 17:41, Julien Grall wrote: >>>>>> Hi, >>>>> Hi Julien, >>>>>> >>>>>> On 20/06/2023 16:17, Ayan Kumar Halder wrote: >>>>>>> Add a special configuration (CONFIG_AARCH32_V8R) to setup the >>>>>>> Cortex-R52 >>>>>>> specifics. >>>>>>> >>>>>>> Cortex-R52 is an Arm-V8R AArch32 processor. >>>>>>> >>>>>>> Refer ARM DDI 0487I.a ID081822, G8-9647, G8.2.112 MIDR, >>>>>>> bits[31:24] = 0x41 , Arm Ltd >>>>>>> bits[23:20] = Implementation defined >>>>>>> bits[19:16] = 0xf , Arch features are individually identified >>>>>>> bits[15:4] = Implementation defined >>>>>>> bits[3:0] = Implementation defined >>>>>>> >>>>>>> Thus, the processor id is 0x410f0000 and the processor id mask is >>>>>>> 0xff0f0000 >>>>>>> >>>>>>> Also, there is no special initialization required for R52. >>>>>> >>>>>> Are you saying that Xen upstream + this patch will boot on >>>>>> Cortex-R52? >>>>> >>>>> This patch will help for earlyboot of Xen. With this patch, >>>>> cpu_init() will work on Cortex-R52. >>>>> >>>>> There will be changes required for the MPU configuration, but that >>>>> will be sent after Penny's patch serie "[PATCH v2 00/41] xen/arm: >>>>> Add Armv8-R64 MPU support to Xen - Part#1" is upstreamed. >>>>> >>>>> My aim is to extract the non-dependent changes and send them for >>>>> review. >>>> >>>> I can review the patch. But I am not willing to merge it as it gives >>>> the false impression that Xen would boot on Cortex-R52. >>>> >>>> In fact, I think this patch should only be merged once we have all >>>> the MPU merged. >>>> >>>> IMHO, patches are independent are rework (e.g. code split...) that >>>> would help the MPU. >>> >>> Yes, that's exactly what I intend to do. I will send out the patches >>> (similar to this) which will not be impacted by the MPU changes. >>> >>> So, that both as an author/reviewer, it helps to restrict MPU serie >>> to only MPU specific changes. > >>> Can you suggest some change to the commit message, so that we can >>> commit it (without giving any false impression that Xen boots on >>> Cortex-R52) > >>> May be adding this line to the commit message helps ? > >>> "However, Xen does not fully boot on Cortex-R52 as it requires MPU >>> support which is under review. > >>> Once Xen is supported on Cortex-R52, SUPPORT.md will be amended to >>> reflect it." >> >> While writing an answer for this patch, I was actually wondering >> whether the CPU allowlist still make sense for the 32-bit ARMv8-R? >> >> From Armv7-A, we needed it because some CPUs need specific quirk when >> booting. But it would be best if we can get rid of it for 32-bit ARMv8-R. >> >> Looking at your patch, your merely providing stubs. Do you have any >> plan to fill them up? > > Actually, I would use cr52_init in a later patch to write to CNTFRQ. See > below :- > > +#define XPAR_CPU_CORTEXR52_0_TIMESTAMP_CLK_FREQ  800000U > + >  cr52_init: > +        /* > +         * Set counter frequency  800 KHZ > +         * > +         * Set counter frequency, CNTFRQ > +         */ > +        ldr     r0,=XPAR_CPU_CORTEXR52_0_TIMESTAMP_CLK_FREQ > +        mrc     15,0,r1,c14,c0,0  /* Read CNTFRQ */ > +        cmp     r1,#0 > +        /* Set only if the frequency read is 0 */ > +        mcreq   15,0,r0,c14,c0,0  /* Write CNTFRQ */ > + >          mov pc, lr Why can't you use the device-tree (see clock-frequency) as all the other buggy platform does? Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Thu Jun 22 16:40:26 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 16:40:26 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553841.864641 (Exim 4.92) (envelope-from ) id 1qCNLw-0006s6-Qv; Thu, 22 Jun 2023 16:40:12 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553841.864641; Thu, 22 Jun 2023 16:40:12 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCNLw-0006rz-N8; Thu, 22 Jun 2023 16:40:12 +0000 Received: by outflank-mailman (input) for mailman id 553841; Thu, 22 Jun 2023 16:40:11 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCNLv-0006rt-9Z for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 16:40:11 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 72896879-111b-11ee-8611-37d641c3527e; Thu, 22 Jun 2023 18:40:08 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 67CB3618C1; Thu, 22 Jun 2023 16:40:07 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 1449BC433C9; Thu, 22 Jun 2023 16:40:06 +0000 (UTC) Received: from compute3.internal (compute3.nyi.internal [10.202.2.43]) by mailauth.nyi.internal (Postfix) with ESMTP id EB8B527C0054; Thu, 22 Jun 2023 12:40:04 -0400 (EDT) Received: from imap48 ([10.202.2.98]) by compute3.internal (MEProxy); Thu, 22 Jun 2023 12:40:04 -0400 Received: by mailuser.nyi.internal (Postfix, from userid 501) id 7294531A0063; Thu, 22 Jun 2023 12:40:03 -0400 (EDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 72896879-111b-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1687452006; bh=jN4aPtLwfFDashrtaZYc4JG/gemsFBwistd11UaUU2g=; h=In-Reply-To:References:Date:From:To:Cc:Subject:From; b=CBD26+tlkCJobJd6pFepFdSvV3kafkq2dt8jF/YC9bIxw7VtpfmVt2Dql7+aUsgHG Ewl/7tpVFUyGVRy6/b+BtQo/hWGzof58E72vWk59tC8D5CKcwOB5FmGhNbUbvkATEl fEgeR95A88oWJM2ckCT2Jj8VaG9n6lD6Si6hFBWFfygg+vlTRVr+wf4BcNrFrExAkk 5DUptH/AWnzc9vNMIaUaEcgTvv+88w81ii+KanxgVS2W10b2KKfAKdOqJM4oYmuXxR HnN3biYWbx7EOv9MURqTuOpSLQklvL4xNSawiTsmdLlXoGxAMbe7KAcu8JRwd5LPb1 vppLRc9fDnNKA== X-ME-Sender: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvhedrgeeguddguddtvdcutefuodetggdotefrod ftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfgh necuuegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmd enucfjughrpefofgggkfgjfhffhffvvefutgesthdtredtreertdenucfhrhhomhepfdet nhguhicunfhuthhomhhirhhskhhifdcuoehluhhtoheskhgvrhhnvghlrdhorhhgqeenuc ggtffrrghtthgvrhhnpedvhfeuvddthfdufffhkeekffetgffhledtleegffetheeugeej ffduhefgteeihfenucevlhhushhtvghrufhiiigvpedtnecurfgrrhgrmhepmhgrihhlfh hrohhmpegrnhguhidomhgvshhmthhprghuthhhphgvrhhsohhnrghlihhthidqudduiedu keehieefvddqvdeifeduieeitdekqdhluhhtoheppehkvghrnhgvlhdrohhrgheslhhinh hugidrlhhuthhordhush X-ME-Proxy: Feedback-ID: ieff94742:Fastmail X-Mailer: MessagingEngine.com Webmail Interface User-Agent: Cyrus-JMAP/3.9.0-alpha0-499-gf27bbf33e2-fm-20230619.001-gf27bbf33 Mime-Version: 1.0 Message-Id: <8a5b8e4a-d238-4f35-b4c7-fb9e34650a14@app.fastmail.com> In-Reply-To: <4d29bfe0-975a-c97f-3e79-5b77d95d3494@suse.com> References: <20230621151442.2152425-1-per.bilse@citrix.com> <20230621164038.GM2053369@hirez.programming.kicks-ass.net> <6523f3e2-8dfc-c2dd-6d14-9e0c3ac93cc8@citrix.com> <20230621200409.GC4253@hirez.programming.kicks-ass.net> <20230622082607.GD4253@hirez.programming.kicks-ass.net> <4d29bfe0-975a-c97f-3e79-5b77d95d3494@suse.com> Date: Thu, 22 Jun 2023 09:39:43 -0700 From: "Andy Lutomirski" To: "Juergen Gross" , "Peter Zijlstra (Intel)" Cc: "Per Bilse" , "Thomas Gleixner" , "Ingo Molnar" , "Borislav Petkov" , "Dave Hansen" , "the arch/x86 maintainers" , "H. Peter Anvin" , "Stefano Stabellini" , "Oleksandr Tyshchenko" , "Linux Kernel Mailing List" , "moderated list:XEN HYPERVISOR INTERFACE" Subject: Re: [PATCH] Updates to Xen hypercall preemption Content-Type: text/plain On Thu, Jun 22, 2023, at 3:33 AM, Juergen Gross wrote: > On 22.06.23 10:26, Peter Zijlstra wrote: >> On Thu, Jun 22, 2023 at 07:22:53AM +0200, Juergen Gross wrote: >> >>> The hypercalls we are talking of are synchronous ones. They are running >>> in the context of the vcpu doing the call (like a syscall from userland is >>> running in the process context). >> >> (so time actually passes from the guest's pov?) > > Correct. > >> >>> The hypervisor will return to guest context from time to time by modifying >>> the registers such that the guest will do the hypercall again with different >>> input values for the hypervisor, resulting in a proper continuation of the >>> hypercall processing. >> >> Eeeuw.. that's pretty terrible. And changing this isn't in the cards, >> like at all? > > In the long run this should be possible, but not for already existing Xen > versions. > >> >> That is, why isn't this whole thing written like: >> >> for (;;) { >> ret = hypercall(foo); >> if (ret == -EAGAIN) { >> cond_resched(); >> continue; >> } >> break; >> } > > The hypervisor doesn't return -EAGAIN for hysterical reasons. > > This would be one of the options to change the interface. OTOH there are cases > where already existing hypercalls need to be modified in the hypervisor to do > preemption in the middle due to e.g. security reasons (avoiding cpu hogging in > special cases). > > Additionally some of the hypercalls being subject to preemption are allowed in > unprivileged guests, too. Those are mostly hypercalls allowed for PV guests > only, but some are usable by all guests. > >> >>> It is an awful interface and I agree that switching to full preemption in >>> dom0 seems to be the route which we should try to take. >> >> Well, I would very strongly suggest the route to take is to scrap the >> whole thing and invest in doing something saner so we don't have to jump >> through hoops like this. >> >> This is quite possibly the worst possible interface for this Xen could >> have come up with -- awards material for sure. > > Yes. > >> >>> The downside would be that some workloads might see worse performance >>> due to backend I/O handling might get preempted. >> >> Is that an actual concern? Mark this a legaxy inteface and anybody who >> wants to get away from it updates. > > It isn't that easy. See above. > >> >>> Just thinking - can full preemption be enabled per process? >> >> Nope, that's a system wide thing. Preemption is something that's driven >> by the requirements of the tasks that preempt, not something by the >> tasks that get preempted. > > Depends. If a task in a non-preempt system could switch itself to be > preemptable, we could do so around hypercalls without compromising the > general preemption setting. Disabling preemption in a preemptable system > should continue to be possible for short code paths only, of course. > >> Andy's idea of having that thing intercepted as an exception (EXTABLE >> like) and relocating the IP to a place that does cond_resched() before >> going back is an option.. gross, but possibly better, dunno. >> >> Quite the mess indeed :/ > > Yeah. Having one implementation of interrupt handlers that schedule when they interrupt kernel code (the normal full preempt path) is one thing. Having two of them (full preempt and super-special-Xen) is IMO quite a bit worse. Especially since no one tests the latter very well. Having a horrible Xen-specific extable-like thingy seems honestly rather less bad. It could even have a little self-contained test that runs at boot, I bet. But I'll bite on the performance impact issue. What, exactly, is wrong with full preemption? Full preemption has two sources of overhead, I think. One is a bit of bookkeeping. The other is the overhead inherent in actually rescheduling -- context switch cost, losing things from cache, etc. The bookkeeping part should have quite low overhead. The scheduling part sounds like it might just need some scheduler tuning if it's really a problem. In any case, for backend IO, full preemption sounds like it should be a win, not a loss. If I'm asking dom0 to do backend IO for me, I don't want it delayed because dom0 was busy doing something else boring. IO is faster when the latency between requesting it and actually submitting it to hardware is lower. Can anyone actually demonstrate full preemption being a loss on a real Xen PV workload? --Andy From xen-devel-bounces@lists.xenproject.org Thu Jun 22 16:43:28 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 16:43:28 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553849.864651 (Exim 4.92) (envelope-from ) id 1qCNP1-0007V5-BO; Thu, 22 Jun 2023 16:43:23 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553849.864651; Thu, 22 Jun 2023 16:43:23 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCNP1-0007Uy-8e; Thu, 22 Jun 2023 16:43:23 +0000 Received: by outflank-mailman (input) for mailman id 553849; Thu, 22 Jun 2023 16:43:22 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCNP0-0007Uq-0Y for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 16:43:22 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCNOz-0005mn-GP; Thu, 22 Jun 2023 16:43:21 +0000 Received: from [54.239.6.188] (helo=[192.168.27.222]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qCNOz-0007l3-Ae; Thu, 22 Jun 2023 16:43:21 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=Ds+RxaLq3C0aj4REQfgLTjzxULMaSYxz5NwTspFdv8k=; b=Qfuik5sq2S/wApuhk2wqP8w6ox yLAf2O4AYJP9uamcGa9h6+CUVdLYkyiJpYChd5Z5MK0s/36BF/Q1TAD7hD+GOQPAZGsgYDROcodLp PruVGK3z4fG79wdIj45Zg72mB5Y30j1DXo/ARkftrwuqJN8VvbSMzzw2DSK8+M2QpcMo=; Message-ID: Date: Thu, 22 Jun 2023 17:43:19 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH 3/4] xen/ppc: Implement early serial printk on pseries Content-Language: en-US To: Shawn Anastasio , xen-devel@lists.xenproject.org Cc: tpearson@raptorengineering.com References: <259298cdadf7cf1eba08cd35c636e9aca9e2182a.1687366665.git.sanastasio@raptorengineering.com> <4fc1fcee-e210-fe16-f762-3f23700d51b9@xen.org> From: Julien Grall In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi, On 22/06/2023 17:05, Shawn Anastasio wrote: > On 6/21/23 3:48 PM, Julien Grall wrote: >> On 21/06/2023 17:59, Shawn Anastasio wrote: >>> diff --git a/xen/arch/ppc/boot-of.c b/xen/arch/ppc/boot-of.c >>> new file mode 100644 >>> index 0000000000..1ceeaf1250 >>> --- /dev/null >>> +++ b/xen/arch/ppc/boot-of.c >>> @@ -0,0 +1,116 @@ >>> +/* SPDX-License-Identifier: GPL-2.0-or-later */ >>> +/* >>> + * This program is free software; you can redistribute it and/or modify >>> + * it under the terms of the GNU General Public License as published by >>> + * the Free Software Foundation; either version 2 of the License, or >>> + * (at your option) any later version. >>> + * >>> + * This program is distributed in the hope that it will be useful, >>> + * but WITHOUT ANY WARRANTY; without even the implied warranty of >>> + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the >>> + * GNU General Public License for more details. >>> + * >>> + * You should have received a copy of the GNU General Public License >>> + * along with this program; if not, write to the Free Software >>> + * Foundation, 51 Franklin Street, Fifth Floor, Boston, MA >>> 02110-1301, USA. >> >> As you already have the SPDX license, the full license should be dropped. > > To clarify, you're suggesting that I remove the license text but keep > the copyright lines below? I wouldn't feel comfortable removing the > latter since this is derived from code that wasn't written by me. I am only suggesting to remove the license text. The copyright are fine to keep. Note that in Xen, we don't tend to add them for new file (I guess this is not the case here) and instead rely on signed-off/author in the commit message. > >>> + * >>> + * Copyright IBM Corp. 2005, 2006, 2007 >>> + * Copyright Raptor Engineering, LLC >>> + * >>> + * Authors: Jimi Xenidis >>> + * Hollis Blanchard >>> + * Shawn Anastasio >>> + */ > >>> +extern int enter_of(struct of_service *args, unsigned long entry); >> >> Here you add 'extern' but ... >> >>> + >>> +void boot_of_init(unsigned long); >> >> not here. In Xen, we tend to not add 'extern' for prototypes. Also, >> please name the parameter as this makes clear what the value is. This >> would also make MISRA happy (IIRC this would rule 8.2). > > I used extern to mark the `enter_of` since it's an assembly function > rather than a C one, but if this isn't a convention used in the Xen > codebase I can drop it. I am not aware of such convention in Xen. But if you want to distinguish assembly vs C function, then I think it would be better to add asm_ in the name so it is clearer. > >>> diff --git a/xen/arch/ppc/include/asm/bug.h >>> b/xen/arch/ppc/include/asm/bug.h >>> new file mode 100644 >>> index 0000000000..a23ab1fa74 >>> --- /dev/null >>> +++ b/xen/arch/ppc/include/asm/bug.h >>> @@ -0,0 +1,6 @@ >>> +/* SPDX-License-Identifier: GPL-2.0-only */ >>> + >>> +#ifndef _ASM_PPC_BUG_H >>> +#define _ASM_PPC_BUG_H >>> + >>> +#endif /* _ASM_PPC_BUG_H */ >> >> Can you clarify why you do need this empty header? > > Some empty headers were necessary to include which in turn > includes various asm/ headers. I have since dropped many of these > headers following Andrew's earlier comments, though, and they won't be > present in v2. > >>> diff --git a/xen/arch/ppc/ppc64/head.S b/xen/arch/ppc/ppc64/head.S >>> index 2fcefb40d8..589c72e382 100644 >>> --- a/xen/arch/ppc/ppc64/head.S >>> +++ b/xen/arch/ppc/ppc64/head.S >>> @@ -1,30 +1,34 @@ >>> /* SPDX-License-Identifier: GPL-2.0-or-later */ >>> +#include >>> + >>> .section .text.header, "ax", %progbits >>> ENTRY(start) >>> - /* >>> - * Depending on how we were booted, the CPU could be running in >>> either >>> - * Little Endian or Big Endian mode. The following trampoline >>> from Linux >>> - * cleverly uses an instruction that encodes to a NOP if the CPU's >>> - * endianness matches the assumption of the assembler (LE, in our >>> case) >>> - * or a branch to code that performs the endian switch in the >>> other case. >>> - */ >>> - tdi 0, 0, 0x48 /* Reverse endian of b . + 8 */ >>> - b . + 44 /* Skip trampoline if endian is good */ >>> - .long 0xa600607d /* mfmsr r11 */ >>> - .long 0x01006b69 /* xori r11,r11,1 */ >>> - .long 0x00004039 /* li r10,0 */ >>> - .long 0x6401417d /* mtmsrd r10,1 */ >>> - .long 0x05009f42 /* bcl 20,31,$+4 */ >>> - .long 0xa602487d /* mflr r10 */ >>> - .long 0x14004a39 /* addi r10,r10,20 */ >>> - .long 0xa6035a7d /* mtsrr0 r10 */ >>> - .long 0xa6037b7d /* mtsrr1 r11 */ >>> - .long 0x2400004c /* rfid */ >> >> This seems to be refactoring. It would be best if this is done in a >> separate patch as this is easier to review. > > Following Andrew's suggestion earlier, I've split this patch into two > with the first one only doing the bare minimum to get an infinite loop > going in C rather than assembly. That first patch still includes the > refactoring of this trampoline into a macro, but the overall patch size > is much smaller. Do you think that would be fine to review, or would you > like a third commit for only this trampoline's refactoring? In general we tend to split code movement/refactoring from new code. This helps during reviews. Not sure how small will be your patch. If it is only a few dozen of lines, then it should be fine :). Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Thu Jun 22 17:20:43 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 17:20:43 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553855.864660 (Exim 4.92) (envelope-from ) id 1qCNyx-0003Pu-4x; Thu, 22 Jun 2023 17:20:31 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553855.864660; Thu, 22 Jun 2023 17:20:31 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCNyx-0003Pn-2J; Thu, 22 Jun 2023 17:20:31 +0000 Received: by outflank-mailman (input) for mailman id 553855; Thu, 22 Jun 2023 17:20:29 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCNyv-0003Ph-I1 for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 17:20:29 +0000 Received: from smtp-out1.suse.de (smtp-out1.suse.de [2001:67c:2178:6::1c]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 14a13cc8-1121-11ee-b237-6b7b168915f2; Thu, 22 Jun 2023 19:20:27 +0200 (CEST) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by smtp-out1.suse.de (Postfix) with ESMTPS id 0C58721B5F; Thu, 22 Jun 2023 17:20:27 +0000 (UTC) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id 7D4FF132BE; Thu, 22 Jun 2023 17:20:26 +0000 (UTC) Received: from dovecot-director2.suse.de ([192.168.254.65]) by imap2.suse-dmz.suse.de with ESMTPSA id ZEmmDtqClGSFVgAAMHmgww (envelope-from ); Thu, 22 Jun 2023 17:20:26 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 14a13cc8-1121-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1; t=1687454427; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=iQgxtcS2y7mFUCqYw3HrFkS5AuxMebvUmMi0RTxrzLk=; b=JVpPfJo54C9G9ronrOwqtHOTkEFK415GAbR78Zdl0yXAS6Cd+j1BzsxJf1ea+rh5uIbK8U lVYH8fXYy53fsGfrNNs8i0YsOKDwW/LYdWbcRjwVL0bl1tuT3sCVQAKeEN9VtkPUjcPsXx ANLFRF3yWusAoefTRaSo0qQJT80B4dE= Message-ID: <7c56f418-e0f3-7c16-a3f7-0ae8bd12bbf0@suse.com> Date: Thu, 22 Jun 2023 19:20:25 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Content-Language: en-US To: Andy Lutomirski , "Peter Zijlstra (Intel)" Cc: Per Bilse , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , the arch/x86 maintainers , "H. Peter Anvin" , Stefano Stabellini , Oleksandr Tyshchenko , Linux Kernel Mailing List , "moderated list:XEN HYPERVISOR INTERFACE" References: <20230621151442.2152425-1-per.bilse@citrix.com> <20230621164038.GM2053369@hirez.programming.kicks-ass.net> <6523f3e2-8dfc-c2dd-6d14-9e0c3ac93cc8@citrix.com> <20230621200409.GC4253@hirez.programming.kicks-ass.net> <20230622082607.GD4253@hirez.programming.kicks-ass.net> <4d29bfe0-975a-c97f-3e79-5b77d95d3494@suse.com> <8a5b8e4a-d238-4f35-b4c7-fb9e34650a14@app.fastmail.com> From: Juergen Gross Subject: Re: [PATCH] Updates to Xen hypercall preemption In-Reply-To: <8a5b8e4a-d238-4f35-b4c7-fb9e34650a14@app.fastmail.com> Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="------------eccGc3lFmkNHWDtRYvMGEf4I" This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --------------eccGc3lFmkNHWDtRYvMGEf4I Content-Type: multipart/mixed; boundary="------------8Kf1W7BQ9i20xL0ixxJs60m2"; protected-headers="v1" From: Juergen Gross To: Andy Lutomirski , "Peter Zijlstra (Intel)" Cc: Per Bilse , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , the arch/x86 maintainers , "H. Peter Anvin" , Stefano Stabellini , Oleksandr Tyshchenko , Linux Kernel Mailing List , "moderated list:XEN HYPERVISOR INTERFACE" Message-ID: <7c56f418-e0f3-7c16-a3f7-0ae8bd12bbf0@suse.com> Subject: Re: [PATCH] Updates to Xen hypercall preemption References: <20230621151442.2152425-1-per.bilse@citrix.com> <20230621164038.GM2053369@hirez.programming.kicks-ass.net> <6523f3e2-8dfc-c2dd-6d14-9e0c3ac93cc8@citrix.com> <20230621200409.GC4253@hirez.programming.kicks-ass.net> <20230622082607.GD4253@hirez.programming.kicks-ass.net> <4d29bfe0-975a-c97f-3e79-5b77d95d3494@suse.com> <8a5b8e4a-d238-4f35-b4c7-fb9e34650a14@app.fastmail.com> In-Reply-To: <8a5b8e4a-d238-4f35-b4c7-fb9e34650a14@app.fastmail.com> --------------8Kf1W7BQ9i20xL0ixxJs60m2 Content-Type: multipart/mixed; boundary="------------BFHXRkKT26qsw2D0dQq7zYNq" --------------BFHXRkKT26qsw2D0dQq7zYNq Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: base64 T24gMjIuMDYuMjMgMTg6MzksIEFuZHkgTHV0b21pcnNraSB3cm90ZToNCj4gT24gVGh1LCBK dW4gMjIsIDIwMjMsIGF0IDM6MzMgQU0sIEp1ZXJnZW4gR3Jvc3Mgd3JvdGU6DQo+PiBPbiAy Mi4wNi4yMyAxMDoyNiwgUGV0ZXIgWmlqbHN0cmEgd3JvdGU6DQo+Pj4gT24gVGh1LCBKdW4g MjIsIDIwMjMgYXQgMDc6MjI6NTNBTSArMDIwMCwgSnVlcmdlbiBHcm9zcyB3cm90ZToNCj4+ Pg0KPj4+PiBUaGUgaHlwZXJjYWxscyB3ZSBhcmUgdGFsa2luZyBvZiBhcmUgc3luY2hyb25v dXMgb25lcy4gVGhleSBhcmUgcnVubmluZw0KPj4+PiBpbiB0aGUgY29udGV4dCBvZiB0aGUg dmNwdSBkb2luZyB0aGUgY2FsbCAobGlrZSBhIHN5c2NhbGwgZnJvbSB1c2VybGFuZCBpcw0K Pj4+PiBydW5uaW5nIGluIHRoZSBwcm9jZXNzIGNvbnRleHQpLg0KPj4+DQo+Pj4gKHNvIHRp bWUgYWN0dWFsbHkgcGFzc2VzIGZyb20gdGhlIGd1ZXN0J3MgcG92PykNCj4+DQo+PiBDb3Jy ZWN0Lg0KPj4NCj4+Pg0KPj4+PiBUaGUgaHlwZXJ2aXNvciB3aWxsIHJldHVybiB0byBndWVz dCBjb250ZXh0IGZyb20gdGltZSB0byB0aW1lIGJ5IG1vZGlmeWluZw0KPj4+PiB0aGUgcmVn aXN0ZXJzIHN1Y2ggdGhhdCB0aGUgZ3Vlc3Qgd2lsbCBkbyB0aGUgaHlwZXJjYWxsIGFnYWlu IHdpdGggZGlmZmVyZW50DQo+Pj4+IGlucHV0IHZhbHVlcyBmb3IgdGhlIGh5cGVydmlzb3Is IHJlc3VsdGluZyBpbiBhIHByb3BlciBjb250aW51YXRpb24gb2YgdGhlDQo+Pj4+IGh5cGVy Y2FsbCBwcm9jZXNzaW5nLg0KPj4+DQo+Pj4gRWVldXcuLiB0aGF0J3MgcHJldHR5IHRlcnJp YmxlLiBBbmQgY2hhbmdpbmcgdGhpcyBpc24ndCBpbiB0aGUgY2FyZHMsDQo+Pj4gbGlrZSBh dCBhbGw/DQo+Pg0KPj4gSW4gdGhlIGxvbmcgcnVuIHRoaXMgc2hvdWxkIGJlIHBvc3NpYmxl LCBidXQgbm90IGZvciBhbHJlYWR5IGV4aXN0aW5nIFhlbg0KPj4gdmVyc2lvbnMuDQo+Pg0K Pj4+DQo+Pj4gVGhhdCBpcywgd2h5IGlzbid0IHRoaXMgd2hvbGUgdGhpbmcgd3JpdHRlbiBs aWtlOg0KPj4+DQo+Pj4gCWZvciAoOzspIHsNCj4+PiAJCXJldCA9IGh5cGVyY2FsbChmb28p Ow0KPj4+IAkJaWYgKHJldCA9PSAtRUFHQUlOKSB7DQo+Pj4gCQkJY29uZF9yZXNjaGVkKCk7 DQo+Pj4gCQkJY29udGludWU7DQo+Pj4gCQl9DQo+Pj4gCQlicmVhazsNCj4+PiAJfQ0KPj4N Cj4+IFRoZSBoeXBlcnZpc29yIGRvZXNuJ3QgcmV0dXJuIC1FQUdBSU4gZm9yIGh5c3Rlcmlj YWwgcmVhc29ucy4NCj4+DQo+PiBUaGlzIHdvdWxkIGJlIG9uZSBvZiB0aGUgb3B0aW9ucyB0 byBjaGFuZ2UgdGhlIGludGVyZmFjZS4gT1RPSCB0aGVyZSBhcmUgY2FzZXMNCj4+IHdoZXJl IGFscmVhZHkgZXhpc3RpbmcgaHlwZXJjYWxscyBuZWVkIHRvIGJlIG1vZGlmaWVkIGluIHRo ZSBoeXBlcnZpc29yIHRvIGRvDQo+PiBwcmVlbXB0aW9uIGluIHRoZSBtaWRkbGUgZHVlIHRv IGUuZy4gc2VjdXJpdHkgcmVhc29ucyAoYXZvaWRpbmcgY3B1IGhvZ2dpbmcgaW4NCj4+IHNw ZWNpYWwgY2FzZXMpLg0KPj4NCj4+IEFkZGl0aW9uYWxseSBzb21lIG9mIHRoZSBoeXBlcmNh bGxzIGJlaW5nIHN1YmplY3QgdG8gcHJlZW1wdGlvbiBhcmUgYWxsb3dlZCBpbg0KPj4gdW5w cml2aWxlZ2VkIGd1ZXN0cywgdG9vLiBUaG9zZSBhcmUgbW9zdGx5IGh5cGVyY2FsbHMgYWxs b3dlZCBmb3IgUFYgZ3Vlc3RzDQo+PiBvbmx5LCBidXQgc29tZSBhcmUgdXNhYmxlIGJ5IGFs bCBndWVzdHMuDQo+Pg0KPj4+DQo+Pj4+IEl0IGlzIGFuIGF3ZnVsIGludGVyZmFjZSBhbmQg SSBhZ3JlZSB0aGF0IHN3aXRjaGluZyB0byBmdWxsIHByZWVtcHRpb24gaW4NCj4+Pj4gZG9t MCBzZWVtcyB0byBiZSB0aGUgcm91dGUgd2hpY2ggd2Ugc2hvdWxkIHRyeSB0byB0YWtlLg0K Pj4+DQo+Pj4gV2VsbCwgSSB3b3VsZCB2ZXJ5IHN0cm9uZ2x5IHN1Z2dlc3QgdGhlIHJvdXRl IHRvIHRha2UgaXMgdG8gc2NyYXAgdGhlDQo+Pj4gd2hvbGUgdGhpbmcgYW5kIGludmVzdCBp biBkb2luZyBzb21ldGhpbmcgc2FuZXIgc28gd2UgZG9uJ3QgaGF2ZSB0byBqdW1wDQo+Pj4g dGhyb3VnaCBob29wcyBsaWtlIHRoaXMuDQo+Pj4NCj4+PiBUaGlzIGlzIHF1aXRlIHBvc3Np Ymx5IHRoZSB3b3JzdCBwb3NzaWJsZSBpbnRlcmZhY2UgZm9yIHRoaXMgWGVuIGNvdWxkDQo+ Pj4gaGF2ZSBjb21lIHVwIHdpdGggLS0gYXdhcmRzIG1hdGVyaWFsIGZvciBzdXJlLg0KPj4N Cj4+IFllcy4NCj4+DQo+Pj4NCj4+Pj4gVGhlIGRvd25zaWRlIHdvdWxkIGJlIHRoYXQgc29t ZSB3b3JrbG9hZHMgbWlnaHQgc2VlIHdvcnNlIHBlcmZvcm1hbmNlDQo+Pj4+IGR1ZSB0byBi YWNrZW5kIEkvTyBoYW5kbGluZyBtaWdodCBnZXQgcHJlZW1wdGVkLg0KPj4+DQo+Pj4gSXMg dGhhdCBhbiBhY3R1YWwgY29uY2Vybj8gTWFyayB0aGlzIGEgbGVnYXh5IGludGVmYWNlIGFu ZCBhbnlib2R5IHdobw0KPj4+IHdhbnRzIHRvIGdldCBhd2F5IGZyb20gaXQgdXBkYXRlcy4N Cj4+DQo+PiBJdCBpc24ndCB0aGF0IGVhc3kuIFNlZSBhYm92ZS4NCj4+DQo+Pj4NCj4+Pj4g SnVzdCB0aGlua2luZyAtIGNhbiBmdWxsIHByZWVtcHRpb24gYmUgZW5hYmxlZCBwZXIgcHJv Y2Vzcz8NCj4+Pg0KPj4+IE5vcGUsIHRoYXQncyBhIHN5c3RlbSB3aWRlIHRoaW5nLiBQcmVl bXB0aW9uIGlzIHNvbWV0aGluZyB0aGF0J3MgZHJpdmVuDQo+Pj4gYnkgdGhlIHJlcXVpcmVt ZW50cyBvZiB0aGUgdGFza3MgdGhhdCBwcmVlbXB0LCBub3Qgc29tZXRoaW5nIGJ5IHRoZQ0K Pj4+IHRhc2tzIHRoYXQgZ2V0IHByZWVtcHRlZC4NCj4+DQo+PiBEZXBlbmRzLiBJZiBhIHRh c2sgaW4gYSBub24tcHJlZW1wdCBzeXN0ZW0gY291bGQgc3dpdGNoIGl0c2VsZiB0byBiZQ0K Pj4gcHJlZW1wdGFibGUsIHdlIGNvdWxkIGRvIHNvIGFyb3VuZCBoeXBlcmNhbGxzIHdpdGhv dXQgY29tcHJvbWlzaW5nIHRoZQ0KPj4gZ2VuZXJhbCBwcmVlbXB0aW9uIHNldHRpbmcuIERp c2FibGluZyBwcmVlbXB0aW9uIGluIGEgcHJlZW1wdGFibGUgc3lzdGVtDQo+PiBzaG91bGQg Y29udGludWUgdG8gYmUgcG9zc2libGUgZm9yIHNob3J0IGNvZGUgcGF0aHMgb25seSwgb2Yg Y291cnNlLg0KPj4NCj4+PiBBbmR5J3MgaWRlYSBvZiBoYXZpbmcgdGhhdCB0aGluZyBpbnRl cmNlcHRlZCBhcyBhbiBleGNlcHRpb24gKEVYVEFCTEUNCj4+PiBsaWtlKSBhbmQgcmVsb2Nh dGluZyB0aGUgSVAgdG8gYSBwbGFjZSB0aGF0IGRvZXMgY29uZF9yZXNjaGVkKCkgYmVmb3Jl DQo+Pj4gZ29pbmcgYmFjayBpcyBhbiBvcHRpb24uLiBncm9zcywgYnV0IHBvc3NpYmx5IGJl dHRlciwgZHVubm8uDQo+Pj4NCj4+PiBRdWl0ZSB0aGUgbWVzcyBpbmRlZWQgOi8NCj4+DQo+ PiBZZWFoLg0KPiANCj4gSGF2aW5nIG9uZSBpbXBsZW1lbnRhdGlvbiBvZiBpbnRlcnJ1cHQg aGFuZGxlcnMgdGhhdCBzY2hlZHVsZSB3aGVuIHRoZXkgaW50ZXJydXB0IGtlcm5lbCBjb2Rl ICh0aGUgbm9ybWFsIGZ1bGwgcHJlZW1wdCBwYXRoKSBpcyBvbmUgdGhpbmcuICBIYXZpbmcg dHdvIG9mIHRoZW0gKGZ1bGwgcHJlZW1wdCBhbmQgc3VwZXItc3BlY2lhbC1YZW4pIGlzIElN TyBxdWl0ZSBhIGJpdCB3b3JzZS4gIEVzcGVjaWFsbHkgc2luY2Ugbm8gb25lIHRlc3RzIHRo ZSBsYXR0ZXIgdmVyeSB3ZWxsLg0KPiANCj4gSGF2aW5nIGEgaG9ycmlibGUgWGVuLXNwZWNp ZmljIGV4dGFibGUtbGlrZSB0aGluZ3kgc2VlbXMgaG9uZXN0bHkgcmF0aGVyIGxlc3MgYmFk LiAgSXQgY291bGQgZXZlbiBoYXZlIGEgbGl0dGxlIHNlbGYtY29udGFpbmVkIHRlc3QgdGhh dCBydW5zIGF0IGJvb3QsIEkgYmV0Lg0KPiANCj4gQnV0IEknbGwgYml0ZSBvbiB0aGUgcGVy Zm9ybWFuY2UgaW1wYWN0IGlzc3VlLiAgV2hhdCwgZXhhY3RseSwgaXMgd3Jvbmcgd2l0aCBm dWxsIHByZWVtcHRpb24/ICBGdWxsIHByZWVtcHRpb24gaGFzIHR3byBzb3VyY2VzIG9mIG92 ZXJoZWFkLCBJIHRoaW5rLiAgT25lIGlzIGEgYml0IG9mIGJvb2trZWVwaW5nLiAgVGhlIG90 aGVyIGlzIHRoZSBvdmVyaGVhZCBpbmhlcmVudCBpbiBhY3R1YWxseSByZXNjaGVkdWxpbmcg LS0gY29udGV4dCBzd2l0Y2ggY29zdCwgbG9zaW5nIHRoaW5ncyBmcm9tIGNhY2hlLCBldGMu DQo+IA0KPiBUaGUgYm9va2tlZXBpbmcgcGFydCBzaG91bGQgaGF2ZSBxdWl0ZSBsb3cgb3Zl cmhlYWQuICBUaGUgc2NoZWR1bGluZyBwYXJ0IHNvdW5kcyBsaWtlIGl0IG1pZ2h0IGp1c3Qg bmVlZCBzb21lIHNjaGVkdWxlciB0dW5pbmcgaWYgaXQncyByZWFsbHkgYSBwcm9ibGVtLg0K PiANCj4gSW4gYW55IGNhc2UsIGZvciBiYWNrZW5kIElPLCBmdWxsIHByZWVtcHRpb24gc291 bmRzIGxpa2UgaXQgc2hvdWxkIGJlIGEgd2luLCBub3QgYSBsb3NzLiAgSWYgSSdtIGFza2lu ZyBkb20wIHRvIGRvIGJhY2tlbmQgSU8gZm9yIG1lLCBJIGRvbid0IHdhbnQgaXQgZGVsYXll ZCBiZWNhdXNlIGRvbTAgd2FzIGJ1c3kgZG9pbmcgc29tZXRoaW5nIGVsc2UgYm9yaW5nLiAg SU8gaXMgZmFzdGVyIHdoZW4gdGhlIGxhdGVuY3kgYmV0d2VlbiByZXF1ZXN0aW5nIGl0IGFu ZCBhY3R1YWxseSBzdWJtaXR0aW5nIGl0IHRvIGhhcmR3YXJlIGlzIGxvd2VyLg0KDQpNYXli ZS4gSSB3YXMgYXNzdW1pbmcgdGhhdCBmdWxsIHByZWVtcHRpb24gd291bGQgcmVzdWx0IGlu IG1vcmUgY29udGV4dA0Kc3dpdGNoZXMsIGVzcGVjaWFsbHkgaW4gY2FzZSBtYW55IGd1ZXN0 cyBhcmUgaGFtbWVyaW5nIGRvbTAgd2l0aCBJL09zLg0KVGhpcyBtZWFucyB0aGF0IG1vcmUg dGltZSBpcyBzcGVudCB3aXRoIHN3aXRjaGluZyBpbnN0ZWFkIG9mIGRvaW5nIHJlYWwNCndv cmssIHJlc3VsdGluZyBpbiBkb20wIGJlaW5nIGF0IDEwMCUgY3B1IGZhc3RlciB3aXRoIGRv aW5nIGxlc3Mgd29yay4NCg0KSU1ITyB0aGUgcmVhc29uIGlzIHNpbWlsYXIgdG8gdGhlIHJl YXNvbiB3aHkgc2VydmVycyB0ZW5kIHRvIGJlIHJ1bg0Kd2l0aG91dCBwcmVlbXB0aW9uICho aWdoZXIgdGhyb3VnaHB1dCBhdCB0aGUgZXhwZW5zZSBvZiBoaWdoZXIgbGF0ZW5jeSkuDQpG dWxsIHByZWVtcHRpb24gaXMgcHJlZmVycmVkIGZvciBzeXN0ZW1zIGJlaW5nIHVzZWQgaW50 ZXJhY3RpdmVseSwgbGlrZQ0Kd29ya3N0YXRpb25zIGFuZCBsYXB0b3BzLCBhcyBoZXJlIGxh dGVuY3kgZG9lcyBtYXR0ZXIsIGFzIGxvbmcgYXMgdGhlDQpzeXN0ZW0gaXNuJ3QgbGltaXRl ZCBieSBjcHUgcG93ZXIgbW9zdCBvZiB0aGUgdGltZS4NCg0KSSdtIHByZXR0eSBzdXJlIFhl biBpbnN0YWxsYXRpb25zIGxpa2UgaW4gUXViZXNPUyB3aWxsIHByZWZlciB0byBydW4gdGhl DQpndWVzdHMgZnVsbHkgcHJlZW1wdGl2ZSBmb3IgdGhhdCB2ZXJ5IHJlYXNvbi4NCg0KPiBD YW4gYW55b25lIGFjdHVhbGx5IGRlbW9uc3RyYXRlIGZ1bGwgcHJlZW1wdGlvbiBiZWluZyBh IGxvc3Mgb24gYSByZWFsIFhlbiBQViB3b3JrbG9hZD8NCg0KU2hvdWxkIGJlIGRvYWJsZSwg YnV0IEkgdGhpbmsgYWJvdmUgcmVhc29uaW5nIGlzIHBvaW50aW5nIGludG8gdGhlIHJpZ2h0 DQpkaXJlY3Rpb24gYWxyZWFkeS4NCg0KDQpKdWVyZ2VuDQo= --------------BFHXRkKT26qsw2D0dQq7zYNq Content-Type: application/pgp-keys; name="OpenPGP_0xB0DE9DD628BF132F.asc" Content-Disposition: attachment; filename="OpenPGP_0xB0DE9DD628BF132F.asc" Content-Description: OpenPGP public key Content-Transfer-Encoding: quoted-printable -----BEGIN PGP PUBLIC KEY BLOCK----- xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjri oyspZKOBycWxw3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2 kaV2KL9650I1SJvedYm8Of8Zd621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i 1TXkH09XSSI8mEQ/ouNcMvIJNwQpd369y9bfIhWUiVXEK7MlRgUG6MvIj6Y3Am/B BLUVbDa4+gmzDC9ezlZkTZG2t14zWPvxXP3FAp2pkW0xqG7/377qptDmrk42GlSK N4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEBAAHNHEp1ZXJnZW4gR3Jvc3Mg PGpnQHBmdXBmLm5ldD7CwHkEEwECACMFAlOMcBYCGwMHCwkIBwMCAQYVCAIJCgsE FgIDAQIeAQIXgAAKCRCw3p3WKL8TL0KdB/93FcIZ3GCNwFU0u3EjNbNjmXBKDY4F UGNQH2lvWAUy+dnyThpwdtF/jQ6j9RwE8VP0+NXcYpGJDWlNb9/JmYqLiX2Q3Tye vpB0CA3dbBQp0OW0fgCetToGIQrg0MbD1C/sEOv8Mr4NAfbauXjZlvTj30H2jO0u +6WGM6nHwbh2l5O8ZiHkH32iaSTfN7Eu5RnNVUJbvoPHZ8SlM4KWm8rG+lIkGurq qu5gu8q8ZMKdsdGC4bBxdQKDKHEFExLJK/nRPFmAuGlId1E3fe10v5QL+qHI3EIP tyfE7i9Hz6rVwi7lWKgh7pe0ZvatAudZ+JNIlBKptb64FaiIOAWDCx1SzR9KdWVy Z2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+wsB5BBMBAgAjBQJTjHCvAhsDBwsJ CAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey/HmQf/RtI7kv5A2PS4 RF7HoZhPVPogNVbC4YA6lW7DrWf0teC0RR3MzXfy6pJ+7KLgkqMlrAbN/8Dvjoz7 8X+5vhH/rDLa9BuZQlhFmvcGtCF8eR0T1v0nC/nuAFVGy+67q2DH8As3KPu0344T BDpAvr2uYM4tSqxK4DURx5INz4ZZ0WNFHcqsfvlGJALDeE0LhITTd9jLzdDad1pQ SToCnLl6SBJZjDOX9QQcyUigZFtCXFst4dlsvddrxyqT1f17+2cFSdu7+ynLmXBK 7abQ3rwJY8SbRO2iRulogc5vr/RLMMlscDAiDkaFQWLoqHHOdfO9rURssHNN8WkM nQfvUewRz80hSnVlcmdlbiBHcm9zcyA8amdyb3NzQG5vdmVsbC5jb20+wsB5BBMB AgAjBQJTjHDXAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/ Ey8PUQf/ehmgCI9jB9hlgexLvgOtf7PJnFOXgMLdBQgBlVPO3/D9R8LtF9DBAFPN hlrsfIG/SqICoRCqUcJ96Pn3P7UUinFG/I0ECGF4EvTE1jnDkfJZr6jrbjgyoZHi w/4BNwSTL9rWASyLgqlA8u1mf+c2yUwcGhgkRAd1gOwungxcwzwqgljf0N51N5Jf VRHRtyfwq/ge+YEkDGcTU6Y0sPOuj4Dyfm8fJzdfHNQsWq3PnczLVELStJNdapwP OoE+lotufe3AM2vAEYJ9rTz3Cki4JFUsgLkHFqGZarrPGi1eyQcXeluldO3m91NK /1xMI3/+8jbO0tsn1tqSEUGIJi7ox80eSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1 c2UuZGU+wsB5BBMBAgAjBQJTjHDrAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgEC F4AACgkQsN6d1ii/Ey+LhQf9GL45eU5vOowA2u5N3g3OZUEBmDHVVbqMtzwlmNC4 k9Kx39r5s2vcFl4tXqW7g9/ViXYuiDXb0RfUpZiIUW89siKrkzmQ5dM7wRqzgJpJ wK8Bn2MIxAKArekWpiCKvBOB/Cc+3EXE78XdlxLyOi/NrmSGRIov0karw2RzMNOu 5D+jLRZQd1Sv27AR+IP3I8U4aqnhLpwhK7MEy9oCILlgZ1QZe49kpcumcZKORmzB TNh30FVKK1EvmV2xAKDoaEOgQB4iFQLhJCdP1I5aSgM5IVFdn7v5YgEYuJYx37Io N1EblHI//x/e2AaIHpzK5h88NEawQsaNRpNSrcfbFmAg987ATQRTjHAWAQgAyzH6 AOODMBjgfWE9VeCgsrwH3exNAU32gLq2xvjpWnHIs98ndPUDpnoxWQugJ6MpMncr 0xSwFmHEgnSEjK/PAjppgmyc57BwKII3sV4on+gDVFJR6Y8ZRwgnBC5mVM6JjQ5x Dk8WRXljExRfUX9pNhdE5eBOZJrDRoLUmmjDtKzWaDhIg/+1Hzz93X4fCQkNVbVF LELU9bMaLPBG/x5q4iYZ2k2ex6d47YE1ZFdMm6YBYMOljGkZKwYde5ldM9mo45mm we0icXKLkpEdIXKTZeKDO+Hdv1aqFuAcccTg9RXDQjmwhC3yEmrmcfl0+rPghO0I v3OOImwTEe4co3c1mwARAQABwsBfBBgBAgAJBQJTjHAWAhsMAAoJELDendYovxMv Q/gH/1ha96vm4P/L+bQpJwrZ/dneZcmEwTbe8YFsw2V/Buv6Z4Mysln3nQK5ZadD 534CF7TDVft7fC4tU4PONxF5D+/tvgkPfDAfF77zy2AH1vJzQ1fOU8lYFpZXTXIH b+559UqvIB8AdgR3SAJGHHt4RKA0F7f5ipYBBrC6cyXJyyoprT10EMvU8VGiwXvT yJz3fjoYsdFzpWPlJEBRMedCot60g5dmbdrZ5DWClAr0yau47zpWj3enf1tLWaqc suylWsviuGjKGw7KHQd3bxALOknAp4dN3QwBYCKuZ7AddY9yjynVaD5X7nF9nO5B jR/i1DG86lem3iBDXzXsZDn8R38=3D =3D2wuH -----END PGP PUBLIC KEY BLOCK----- --------------BFHXRkKT26qsw2D0dQq7zYNq-- --------------8Kf1W7BQ9i20xL0ixxJs60m2-- --------------eccGc3lFmkNHWDtRYvMGEf4I Content-Type: application/pgp-signature; name="OpenPGP_signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="OpenPGP_signature" -----BEGIN PGP SIGNATURE----- wsB5BAABCAAjFiEEhRJncuj2BJSl0Jf3sN6d1ii/Ey8FAmSUgtkFAwAAAAAACgkQsN6d1ii/Ey+6 eggAimHaZYpf92E4dtXuWaSbAwLELCZaSzE0aS6MNJBKC8RlK8Cvy4W0Wcmyo6BBv/dVsYEls0PE WxsPZJh4xFa3yOk6AkLpFEKgp2PLXTw1TDWuiZrQ+QFkbnh4XE1r6bL45+lZeR04KnmgMlcGLAHh zyquY2/JtMsyVkwPIzO+hURZrbYQ70HPJOmKtY+AAjJVIFZZoO0gkstrchy/ZaTiK/yfVrDRRvp5 k0VoJgQss6kOKSCvSTS+SXAzsWIMFafYDUg0n2BFty3OQa+RgCpkyd271bd1lpI0IYodbcBa9sYv Blg9xt+iIItVQmQIVNkxIGu0pslbyC0Ow6ytVVRseA== =GWjd -----END PGP SIGNATURE----- --------------eccGc3lFmkNHWDtRYvMGEf4I-- From xen-devel-bounces@lists.xenproject.org Thu Jun 22 17:37:28 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 17:37:28 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553860.864671 (Exim 4.92) (envelope-from ) id 1qCOF3-0004ze-IF; Thu, 22 Jun 2023 17:37:09 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553860.864671; Thu, 22 Jun 2023 17:37:09 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCOF3-0004zX-EQ; Thu, 22 Jun 2023 17:37:09 +0000 Received: by outflank-mailman (input) for mailman id 553860; Thu, 22 Jun 2023 17:37:07 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCOF1-0004zR-KX for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 17:37:07 +0000 Received: from mail-lf1-x131.google.com (mail-lf1-x131.google.com [2a00:1450:4864:20::131]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 6691eb3b-1123-11ee-8611-37d641c3527e; Thu, 22 Jun 2023 19:37:03 +0200 (CEST) Received: by mail-lf1-x131.google.com with SMTP id 2adb3069b0e04-4f8777caaa1so5822221e87.3 for ; Thu, 22 Jun 2023 10:37:03 -0700 (PDT) Received: from [192.168.157.227] ([91.223.100.47]) by smtp.gmail.com with ESMTPSA id ep8-20020a056512484800b004f26f437ad8sm1181122lfb.53.2023.06.22.10.36.59 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Thu, 22 Jun 2023 10:37:02 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 6691eb3b-1123-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1687455423; x=1690047423; h=content-transfer-encoding:in-reply-to:from:references:cc:to :content-language:subject:user-agent:mime-version:date:message-id :from:to:cc:subject:date:message-id:reply-to; bh=/fsL2cVXAXnCdY15L3MolzVIRIDo39bn2bc5jAVthdc=; b=kK9ms6oxy4w18XnqLzRC42c2y3VtHaZF6WjXDGqNMNiQNvba5S8AHyOTZEqCY8BDzY gSHrJgC8UlnZMr3hGroun6OS37q7nTj7t0rJS1s4dj4kEV/EdOM8bG6f6JAbd91UV8Re ovlIHAL3ZTFS25sFLjk1CL4w9JQHOOEo3xYK1FUH6doAfwuUX/AZyGxw7CjLF/N9xRPE Ce6z40LRpgoVSeaffnwM6XvFDi1MLGoP0rPfRGV9+UEr6gsStEfKCmRCH3QhxI4LKpZy 17/b15DUPPGEIlxPBA4ymfRxYz11wMz+nZmLgkeWJndJ0QllQ7EC1vHkRYpy6UOVehTP gASQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687455423; x=1690047423; h=content-transfer-encoding:in-reply-to:from:references:cc:to :content-language:subject:user-agent:mime-version:date:message-id :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=/fsL2cVXAXnCdY15L3MolzVIRIDo39bn2bc5jAVthdc=; b=RcvzCCuPdYHjEm8GCX2wh1DrVPzXqooGDA9mhU53cwC+94T0beKT0BOgzZ3v6MnxYz u2gbe4WPOCDl7p9qolGuTdrC6V6pHpzRGDoFp7ONTUUL3twN3Mp95NUa1PlY/pcmmkx8 gHm4Cn6v/IE5PjVwSXL6VnDkziZbYJ9470AztEQfEb3X7QviIS0RPUy/p/mi6ISiXF8m taetvlE7XT4dN9T061sTIhrT2hR9qnVTWvgW5qfKIiGNDo/PS1y2JYPUOpZWElZq/UK3 YlFcd6tw7g0vb5ydj5xU/uTN2mMnd6EMiNa1nWOsyzJYY4wwB9PoJGk3ev2p6c+Wg2rX nxEQ== X-Gm-Message-State: AC+VfDzWPJOH1jcWAl5TkMr7/HAMnaTHUEQg7tggwHVJj3uLXzE4/R6t +uNmv1eDVjxFRcJi6sNPaU9KsA== X-Google-Smtp-Source: ACHHUZ4hXNqmNTn6U0F9nFN6Me87Rr7UBrptzXZ7Yf1Vq5uPEksRCjxnuN8AqvGh0D6IfBMleD+RSQ== X-Received: by 2002:a05:6512:1284:b0:4f9:5ca5:f1a6 with SMTP id u4-20020a056512128400b004f95ca5f1a6mr4238864lfs.17.1687455423332; Thu, 22 Jun 2023 10:37:03 -0700 (PDT) Message-ID: <960b4b4f-8899-b263-4f31-5a4ea798e034@linaro.org> Date: Thu, 22 Jun 2023 19:36:56 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH v2 05/16] accel: Destroy HAX vCPU threads once done Content-Language: en-US To: =?UTF-8?Q?Philippe_Mathieu-Daud=c3=a9?= , qemu-devel@nongnu.org Cc: Reinoud Zandijk , qemu-arm@nongnu.org, kvm@vger.kernel.org, Marcel Apfelbaum , Stefano Stabellini , Anthony Perard , Yanan Wang , Peter Maydell , Roman Bolshakov , Paolo Bonzini , Paul Durrant , Sunil Muthuswamy , Alexander Graf , xen-devel@lists.xenproject.org, Eduardo Habkost , Cameron Esfahani References: <20230622160823.71851-1-philmd@linaro.org> <20230622160823.71851-6-philmd@linaro.org> From: Richard Henderson In-Reply-To: <20230622160823.71851-6-philmd@linaro.org> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit On 6/22/23 18:08, Philippe Mathieu-Daudé wrote: > When the vCPU thread finished its processing, destroy > it and signal its destruction to generic vCPU management > layer. > > Add a sanity check for the vCPU accelerator context. > > Signed-off-by: Philippe Mathieu-Daudé > --- > target/i386/hax/hax-accel-ops.c | 3 +++ > target/i386/hax/hax-all.c | 1 + > 2 files changed, 4 insertions(+) Reviewed-by: Richard Henderson r~ From xen-devel-bounces@lists.xenproject.org Thu Jun 22 17:38:41 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 17:38:41 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553868.864681 (Exim 4.92) (envelope-from ) id 1qCOGM-0005Zj-04; Thu, 22 Jun 2023 17:38:30 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553868.864681; Thu, 22 Jun 2023 17:38:29 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCOGL-0005Zc-TG; Thu, 22 Jun 2023 17:38:29 +0000 Received: by outflank-mailman (input) for mailman id 553868; Thu, 22 Jun 2023 17:38:29 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCOGL-0005ZV-2O for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 17:38:29 +0000 Received: from mail-ej1-x630.google.com (mail-ej1-x630.google.com [2a00:1450:4864:20::630]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 98c5a82e-1123-11ee-b237-6b7b168915f2; Thu, 22 Jun 2023 19:38:28 +0200 (CEST) Received: by mail-ej1-x630.google.com with SMTP id a640c23a62f3a-989d03eae11so331604966b.2 for ; Thu, 22 Jun 2023 10:38:28 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 98c5a82e-1123-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687455507; x=1690047507; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=Xp+vt1ovAZICS1UzaUwHNLj8+Q77UspV0UwBQhdIcvc=; b=nCb/3K/fhDJ4lzQgMUNUVETA77hvdy9DvEwuuqU51GkzON19sAsIz+Cz7Czmpfd/YA VhPRb3so2FKX9Lf0mX0gBG/Z07n3wo1a27h+S/XDIkYXgweJ6HZ1grJdcWtvMDhEILDL /AZfaPsO0WJIgWhAwetB8oUNzF/A57Toaq/fOefbtCtlHVfnPnCtKdPEbVcJVf4cC42s okWopVUYRGOzA/QlkelhbdLranCb+ZcVcCSAeWsWA557GHqhh2WFvwbdd0h28EFohJyf A1hP3klpuxoL5IqN5t5xGd5EWpVqXcFUh831842dCqaxAsWiXEnfZdc9QaaUcax5IpEr 08qQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687455507; x=1690047507; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=Xp+vt1ovAZICS1UzaUwHNLj8+Q77UspV0UwBQhdIcvc=; b=Z/mJIZc2inpoo7dpiUUcv+nbeJKLxrT04eEisbzrqiUlQEzR+K6Egrgud30ajxRZst a9tR5DN2doy8Xwmb7xg0Bnbi9JGy/eb/wjKQthTyLEMq+b6M6nXA7Pc4LGv4Og3Bd2o2 zZKsNxY3/gBtZykXeACYoKyFpwukZ+LsK3s5WiuiRO4adm8H3G/Say4vsxR7oqM3o9MF 9K3NeUaRy6j1DkQtHt+cKl9Wo6lZJ/n+JnSu9mAbGutDDN2tzjeHrre9lQfvJg74Fucm P/7s9uhBjmlzkYKCwW0MClAXW80i2wp/VFsSTCmerJSYhgtRJuLPv3Az8/vWvJEaj0Hi aMQA== X-Gm-Message-State: AC+VfDxL+V0pTxjYsneQbZylxaBckXmFyPjVKe0oL8mxqLjjh2T5xGVc ZjYjmumkD4g8Kkl4FNfP4PD4sZE0zonYM9BqchQ= X-Google-Smtp-Source: ACHHUZ56yCqVx50z6ZU+TUUha+UjdIOcmJvWBJb6n1OqtnY3/ru4rjDupy1/HOxtFE0MNzwwnTxJYf24RKIQD0bgiaE= X-Received: by 2002:a17:907:1c96:b0:977:cad5:1580 with SMTP id nb22-20020a1709071c9600b00977cad51580mr20349056ejc.40.1687455507315; Thu, 22 Jun 2023 10:38:27 -0700 (PDT) MIME-Version: 1.0 References: <20230622153005.31604-1-anthony.perard@citrix.com> In-Reply-To: <20230622153005.31604-1-anthony.perard@citrix.com> From: Jason Andryuk Date: Thu, 22 Jun 2023 13:38:14 -0400 Message-ID: Subject: Re: [XEN PATCH v2 0/5] build: reduce number of $(shell) execution on make 4.4 To: Anthony PERARD Cc: xen-devel@lists.xenproject.org, George Dunlap , Connor Davis , Alistair Francis , Julien Grall , Andrew Cooper , Jan Beulich , Wei Liu , Stefano Stabellini , Bob Eshleman Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Thu, Jun 22, 2023 at 11:31=E2=80=AFAM Anthony PERARD wrote: > > Patch series available in this git branch: > https://xenbits.xen.org/git-http/people/aperard/xen-unstable.git br.build= -exported-shell-command-value-v2 > > v2: > - new patches removing TARGET_SUBARCH and TARGET_ARCH. > - style change in first patch For the v2 series: Tested-by: Jason Andryuk Thanks, Jason From xen-devel-bounces@lists.xenproject.org Thu Jun 22 17:42:33 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 17:42:33 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553875.864701 (Exim 4.92) (envelope-from ) id 1qCOK9-0007Ia-O7; Thu, 22 Jun 2023 17:42:25 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553875.864701; Thu, 22 Jun 2023 17:42:25 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCOK9-0007IT-Kx; Thu, 22 Jun 2023 17:42:25 +0000 Received: by outflank-mailman (input) for mailman id 553875; Thu, 22 Jun 2023 17:42:24 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCOK8-00072l-Ek for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 17:42:24 +0000 Received: from mail-wr1-x429.google.com (mail-wr1-x429.google.com [2a00:1450:4864:20::429]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 2548ad0f-1124-11ee-b237-6b7b168915f2; Thu, 22 Jun 2023 19:42:23 +0200 (CEST) Received: by mail-wr1-x429.google.com with SMTP id ffacd0b85a97d-307d20548adso6348479f8f.0 for ; Thu, 22 Jun 2023 10:42:23 -0700 (PDT) Received: from localhost.localdomain (default-46-102-197-194.interdsl.co.uk. [46.102.197.194]) by smtp.gmail.com with ESMTPSA id j11-20020a5d604b000000b003078681a1e8sm7558457wrt.54.2023.06.22.10.42.22 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 22 Jun 2023 10:42:22 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 2548ad0f-1124-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cloud.com; s=cloud; t=1687455743; x=1690047743; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=fkkmq00OFGsE60gXctG98JB3mmGeBi1VSc4bej5kz7o=; b=SYIU4owM3SR9BFkuXcklRuHcM6yy0X53esCPYKr5HN2sBBpYcKdbuOcEC4kApl3KIu O1XmCAz9gIs4K1bero5qKLgEaPK3nQeM82lclM1VZU4+Ta0akWAt7uNu9maq5YDJA/4x ij3+GOMrPq5X9qidTCr2idNfQyzBPnluGVCpg= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687455743; x=1690047743; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=fkkmq00OFGsE60gXctG98JB3mmGeBi1VSc4bej5kz7o=; b=BN8oQraax3OPdpkkMlODV7PFRo0enXamx6FVpqo5koPe0TzK/tnAtoyNZBPAfzRE1N w8OPZm3s2Pc37tqDV2+XX7YtYmB334Ge9omWEXB1bSErpp2evwgtPRonJDWYgNp3VU0M vOKdRV8NzRghS3OLQV64iWZjCKAATQ5uV6QTNmeUJ/66vAbjEH/TG1ZFNJxox+S1uXYw XvQkF50OLyurNWOLnNj7boUHu2eGdnEzjJTqt7k8VQ7FKHuwFgGbHkmR3XwHdFGAp4pO x5/B6toNACCkJN9P0ObLJgXRPBWrgoDj4lhMjK8L5uKZrd0LAA5ayPASQNkPxUho5X9T e7Gw== X-Gm-Message-State: AC+VfDyvMSRl9BzNP7kGX8wk7hsgiTqqoi9aTWyT2bnJdtuB8/9ri5vv jE5Vwoi0CfchhENjVuYe2o3ambk7/pKYdE+KDcQ= X-Google-Smtp-Source: ACHHUZ7QnABFgORslLflbptc8JTw1xN8d3pEu14yhYK6EeBJJoY8AzfePjTB9WDlgfabv/EVrTrmIw== X-Received: by 2002:a5d:570b:0:b0:309:53f3:6e3e with SMTP id a11-20020a5d570b000000b0030953f36e3emr11841512wrv.69.1687455743304; Thu, 22 Jun 2023 10:42:23 -0700 (PDT) From: Alejandro Vallejo To: Xen-devel Cc: Alejandro Vallejo , Jan Beulich , Andrew Cooper , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Wei Liu Subject: [PATCH v4 3/4] x86: Read MSR_ARCH_CAPS immediately after early_microcode_init() Date: Thu, 22 Jun 2023 18:42:18 +0100 Message-Id: <20230622174219.8871-4-alejandro.vallejo@cloud.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20230622174219.8871-1-alejandro.vallejo@cloud.com> References: <20230622174219.8871-1-alejandro.vallejo@cloud.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Move MSR_ARCH_CAPS read code from tsx_init() to early_cpu_init(). Because microcode updates might make them that MSR to appear/have different values we also must reload it after a microcode update in early_microcode_init(). Signed-off-by: Alejandro Vallejo --- v4: * Read MSR_ARCH_CAPS in early_cpu_init(). Otherwise tsx_init() doesn't have current values in the case where microcode wasn't updated (Jan) --- xen/arch/x86/cpu/common.c | 5 +++++ xen/arch/x86/cpu/microcode/core.c | 13 +++++++++++++ xen/arch/x86/tsx.c | 16 ++++------------ 3 files changed, 22 insertions(+), 12 deletions(-) diff --git a/xen/arch/x86/cpu/common.c b/xen/arch/x86/cpu/common.c index cfcdaace12..2f895e7c7c 100644 --- a/xen/arch/x86/cpu/common.c +++ b/xen/arch/x86/cpu/common.c @@ -352,6 +352,11 @@ void __init early_cpu_init(void) &c->x86_capability[FEATURESET_7c0], &c->x86_capability[FEATURESET_7d0]); + if (test_bit(X86_FEATURE_ARCH_CAPS, c->x86_capability)) + rdmsr(MSR_ARCH_CAPABILITIES, + c->x86_capability[FEATURESET_m10Al], + c->x86_capability[FEATURESET_m10Ah]); + if (max_subleaf >= 1) cpuid_count(7, 1, &eax, &ebx, &ecx, &c->x86_capability[FEATURESET_7d1]); diff --git a/xen/arch/x86/cpu/microcode/core.c b/xen/arch/x86/cpu/microcode/core.c index e67d143c97..dda6f03f7d 100644 --- a/xen/arch/x86/cpu/microcode/core.c +++ b/xen/arch/x86/cpu/microcode/core.c @@ -885,5 +885,18 @@ int __init early_microcode_init(unsigned long *module_map, if ( ucode_mod.mod_end || ucode_blob.size ) rc = early_microcode_update_cpu(); + /* + * MSR_ARCH_CAPS may have appeared after the microcode update. + * Reload relevant fields in boot_cpu_data if so because they are + * needed in tsx_init(). + */ + if ( boot_cpu_data.cpuid_level >= 7 ) + boot_cpu_data.x86_capability[FEATURESET_7d0] + = cpuid_count_edx(7, 0); + if ( cpu_has_arch_caps ) + rdmsr(MSR_ARCH_CAPABILITIES, + boot_cpu_data.x86_capability[FEATURESET_m10Al], + boot_cpu_data.x86_capability[FEATURESET_m10Ah]); + return rc; } diff --git a/xen/arch/x86/tsx.c b/xen/arch/x86/tsx.c index 80c6f4cedd..50d8059f23 100644 --- a/xen/arch/x86/tsx.c +++ b/xen/arch/x86/tsx.c @@ -39,9 +39,10 @@ void tsx_init(void) static bool __read_mostly once; /* - * This function is first called between microcode being loaded, and CPUID - * being scanned generally. Read into boot_cpu_data.x86_capability[] for - * the cpu_has_* bits we care about using here. + * This function is first called between microcode being loaded, and + * CPUID being scanned generally. early_cpu_init() has already prepared + * the feature bits needed here. And early_microcode_init() has ensured + * they are not stale after the microcode update. */ if ( unlikely(!once) ) { @@ -49,15 +50,6 @@ void tsx_init(void) once = true; - if ( boot_cpu_data.cpuid_level >= 7 ) - boot_cpu_data.x86_capability[FEATURESET_7d0] - = cpuid_count_edx(7, 0); - - if ( cpu_has_arch_caps ) - rdmsr(MSR_ARCH_CAPABILITIES, - boot_cpu_data.x86_capability[FEATURESET_m10Al], - boot_cpu_data.x86_capability[FEATURESET_m10Ah]); - has_rtm_always_abort = cpu_has_rtm_always_abort; if ( cpu_has_tsx_ctrl && cpu_has_srbds_ctrl ) -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 22 17:42:33 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 17:42:33 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553877.864720 (Exim 4.92) (envelope-from ) id 1qCOKB-0007mW-BH; Thu, 22 Jun 2023 17:42:27 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553877.864720; Thu, 22 Jun 2023 17:42:27 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCOKB-0007ln-7P; Thu, 22 Jun 2023 17:42:27 +0000 Received: by outflank-mailman (input) for mailman id 553877; Thu, 22 Jun 2023 17:42:25 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCOK9-00072r-4H for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 17:42:25 +0000 Received: from mail-wr1-x42c.google.com (mail-wr1-x42c.google.com [2a00:1450:4864:20::42c]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 250604f9-1124-11ee-8611-37d641c3527e; Thu, 22 Jun 2023 19:42:23 +0200 (CEST) Received: by mail-wr1-x42c.google.com with SMTP id ffacd0b85a97d-31126037f41so7379176f8f.2 for ; Thu, 22 Jun 2023 10:42:23 -0700 (PDT) Received: from localhost.localdomain (default-46-102-197-194.interdsl.co.uk. [46.102.197.194]) by smtp.gmail.com with ESMTPSA id j11-20020a5d604b000000b003078681a1e8sm7558457wrt.54.2023.06.22.10.42.22 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 22 Jun 2023 10:42:22 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 250604f9-1124-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cloud.com; s=cloud; t=1687455743; x=1690047743; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=/LNsA2w9ErAkBoPmov4U1B0QvIw8uiBvWTPri0FhVLM=; b=i9iA6dRVXGlVaGw4SaNnFY7ooA5452fS6LuHINqjsCCMv7b9ql4rMufk+WEMBxWXzq Umj2ovz14D29AVsTPjjHka9Q8aBM7CA6Alzy7MZBNxQ1ddeFCvVU9A+I+yRkknvkgArE CSftLzEr5GAduJGk1x2eQIoRlA50B0+6fK4zA= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687455743; x=1690047743; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=/LNsA2w9ErAkBoPmov4U1B0QvIw8uiBvWTPri0FhVLM=; b=WpCuexH7pJmMl7zveVeiGQHeVMiW9CBCa1JU2avevvtBMajTVcBC0mWMpQd7MqLnhM ZPpYeY4B7t0/QxEww0aUxhz+Kuon4KYTmnMCtqhTelVEzXE1rv5OHuLJyCEYmQTQvH7K Lr6GErh3Y8+b9NJzPD9S5mh877FOIFVG9oQacePt5biEkfcFLnkocWw3AX30F3aB3/0P mHdWj+pUQ/u/iZQPZKxV/AVfXSwyrTMCQBo2fijfKVUE6b/YRfvl9+hYD30SAOhXKINf MBC/lxlQ8bPna1aHaYpQ1zfrCc7wvj0rxQ4wBf4ObviNAQFUmpVibAIycl4yIB/O307w i2MA== X-Gm-Message-State: AC+VfDwPP302Fx5e1seRMt6ntY5DpV7HT2+/9YJQ8MyyLqamlEM0SC8J qAQpI+zQSiLwCSTDXjDFowEJB8qDv6A/fJID55g= X-Google-Smtp-Source: ACHHUZ7UxxzMAJqHkUgWyrNLFe8n5YbKMbGP2CC4PyfQ1cPEn6Tf/UILGswDi1dlNN0Lgi+6jEc9lA== X-Received: by 2002:adf:cf05:0:b0:310:fe5e:894a with SMTP id o5-20020adfcf05000000b00310fe5e894amr15916308wrj.6.1687455742701; Thu, 22 Jun 2023 10:42:22 -0700 (PDT) From: Alejandro Vallejo To: Xen-devel Cc: Alejandro Vallejo , Jan Beulich , Andrew Cooper , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Wei Liu Subject: [PATCH v4 2/4] x86/microcode: Ignore microcode loading interface for revision = -1 Date: Thu, 22 Jun 2023 18:42:17 +0100 Message-Id: <20230622174219.8871-3-alejandro.vallejo@cloud.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20230622174219.8871-1-alejandro.vallejo@cloud.com> References: <20230622174219.8871-1-alejandro.vallejo@cloud.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Some hypervisors report ~0 as the microcode revision to mean "don't issue microcode updates". Ignore the microcode loading interface in that case. Signed-off-by: Alejandro Vallejo Reviewed-by: Jan Beulich --- v4: * Stop piggybacking on the existing early exit --- xen/arch/x86/cpu/microcode/core.c | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/xen/arch/x86/cpu/microcode/core.c b/xen/arch/x86/cpu/microcode/core.c index bec8b55db2..e67d143c97 100644 --- a/xen/arch/x86/cpu/microcode/core.c +++ b/xen/arch/x86/cpu/microcode/core.c @@ -867,10 +867,21 @@ int __init early_microcode_init(unsigned long *module_map, return -ENODEV; } - microcode_grab_module(module_map, mbi); - ucode_ops.collect_cpu_info(); + /* + * Some hypervisors deliberately report a microcode revision of -1 to + * mean that they will not accept microcode updates. We take the hint + * and ignore the microcode interface in that case. + */ + if ( this_cpu(cpu_sig).rev == ~0 ) { + printk(XENLOG_WARNING "Microcode loading disabled\n"); + ucode_ops.apply_microcode = NULL; + return -ENODEV; + } + + microcode_grab_module(module_map, mbi); + if ( ucode_mod.mod_end || ucode_blob.size ) rc = early_microcode_update_cpu(); -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 22 17:42:33 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 17:42:33 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553878.864726 (Exim 4.92) (envelope-from ) id 1qCOKB-0007qn-MY; Thu, 22 Jun 2023 17:42:27 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553878.864726; Thu, 22 Jun 2023 17:42:27 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCOKB-0007pl-HB; Thu, 22 Jun 2023 17:42:27 +0000 Received: by outflank-mailman (input) for mailman id 553878; Thu, 22 Jun 2023 17:42:26 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCOKA-00072r-79 for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 17:42:26 +0000 Received: from mail-wm1-x32e.google.com (mail-wm1-x32e.google.com [2a00:1450:4864:20::32e]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 25b0c98e-1124-11ee-8611-37d641c3527e; Thu, 22 Jun 2023 19:42:24 +0200 (CEST) Received: by mail-wm1-x32e.google.com with SMTP id 5b1f17b1804b1-3f9b4bf99c2so44588075e9.3 for ; Thu, 22 Jun 2023 10:42:24 -0700 (PDT) Received: from localhost.localdomain (default-46-102-197-194.interdsl.co.uk. [46.102.197.194]) by smtp.gmail.com with ESMTPSA id j11-20020a5d604b000000b003078681a1e8sm7558457wrt.54.2023.06.22.10.42.23 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 22 Jun 2023 10:42:23 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 25b0c98e-1124-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cloud.com; s=cloud; t=1687455744; x=1690047744; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=ijOwIEewQGYf1mJf7n5AJxbCxji2gEFwB1bTgLtLhDs=; b=H8qVwRH7wM1fmkv8p0b9WtBfiik/hUnhLr2SsoqB/HRQ5pNls6lt/SPNFpm+MhO/Uy 0bIhuHiornS4rjSjYZN0loHKafmo9pKjekC8NlHIQ9yrm1Xym8s1VLk/50vqHEUUFxvs BzDRQb3BnHA2DhSeDSO3sybBswVbhyi4GhXz4= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687455744; x=1690047744; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=ijOwIEewQGYf1mJf7n5AJxbCxji2gEFwB1bTgLtLhDs=; b=EOB2UgAYg8AXZMt7Nf2I1Kuz1H6gxvhfUkjWSKrkM93cl6OafZPDfFX/vnfifEzcl9 I0XcME38tp0R11AcE40Ew3XtITTmGHyKqMBMn80PhNksJvLaJ8+oVpqFZEZxDtbqye/d ag9VxyrFX2c3eXrIQHmkTZgH7cEpYtr+ZAhEUAtRvcWDbDLkFzIBSqKq4YG/htY79K2Q AJi1CLG5MGLWSXUr846RtSrWI3LHmA910oGL+mucYJKYB6XjNlxcAIG4Qb1oGVOzIFLl 6bHaJbrVxYSU2zjYwnj5Nj0jWrBHakCtC5GHPImZW0U1sisdArZdHT9pKdNY9ooIoo0N iRxQ== X-Gm-Message-State: AC+VfDzZReKJvFkfTu6rxTYmJX3mmgajks0ztGYx2p6TRkjkRMMOuKDa 6p7st8xUNq0j/WlzzkWef1t8QL+yQT4c875nsJM= X-Google-Smtp-Source: ACHHUZ6WdrgeXMlAJnhEHMAzVM0SLtM5vyeO+avhXb/bMA2tSdEVMeqZi0Ve6yDVFo0Hd1g/hriqFw== X-Received: by 2002:a1c:f603:0:b0:3f8:f80e:7b45 with SMTP id w3-20020a1cf603000000b003f8f80e7b45mr14405599wmc.7.1687455743932; Thu, 22 Jun 2023 10:42:23 -0700 (PDT) From: Alejandro Vallejo To: Xen-devel Cc: Alejandro Vallejo , Jan Beulich , Andrew Cooper , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Wei Liu Subject: [PATCH v4 4/4] x86/microcode: Disable microcode update handler if DIS_MCU_UPDATE is set Date: Thu, 22 Jun 2023 18:42:19 +0100 Message-Id: <20230622174219.8871-5-alejandro.vallejo@cloud.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20230622174219.8871-1-alejandro.vallejo@cloud.com> References: <20230622174219.8871-1-alejandro.vallejo@cloud.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit If IA32_MSR_MCU_CONTROL exists then it's possible a CPU may be unable to perform microcode updates. This is controlled through the DIS_MCU_LOAD bit and is intended for baremetal clouds where the owner may not trust the tenant to choose the microcode version in use. If we notice that bit being set then simply disable the "apply_microcode" handler so we can't even try to perform update (as it's known to be silently dropped). While at it, remove the Intel family check, as microcode loading is supported on every Intel 64 CPU. Signed-off-by: Alejandro Vallejo --- v4: * Moved the Intel family-check removal here. Previously integrated in other patches * Moved DIS_MCU_LOAD logic into a vendor-specific intel_can_load_microcode() function. --- xen/arch/x86/cpu/microcode/core.c | 10 +++++++--- xen/arch/x86/cpu/microcode/intel.c | 13 +++++++++++++ xen/arch/x86/cpu/microcode/private.h | 7 +++++++ xen/arch/x86/include/asm/cpufeature.h | 1 + xen/arch/x86/include/asm/msr-index.h | 5 +++++ 5 files changed, 33 insertions(+), 3 deletions(-) diff --git a/xen/arch/x86/cpu/microcode/core.c b/xen/arch/x86/cpu/microcode/core.c index dda6f03f7d..de0e61d3dd 100644 --- a/xen/arch/x86/cpu/microcode/core.c +++ b/xen/arch/x86/cpu/microcode/core.c @@ -847,17 +847,21 @@ int __init early_microcode_init(unsigned long *module_map, { const struct cpuinfo_x86 *c = &boot_cpu_data; int rc = 0; + bool can_load = false; switch ( c->x86_vendor ) { case X86_VENDOR_AMD: if ( c->x86 >= 0x10 ) + { ucode_ops = amd_ucode_ops; + can_load = true; + } break; case X86_VENDOR_INTEL: - if ( c->x86 >= 6 ) - ucode_ops = intel_ucode_ops; + ucode_ops = intel_ucode_ops; + can_load = intel_can_load_microcode(); break; } @@ -874,7 +878,7 @@ int __init early_microcode_init(unsigned long *module_map, * mean that they will not accept microcode updates. We take the hint * and ignore the microcode interface in that case. */ - if ( this_cpu(cpu_sig).rev == ~0 ) { + if ( this_cpu(cpu_sig).rev == ~0 || !can_load ) { printk(XENLOG_WARNING "Microcode loading disabled\n"); ucode_ops.apply_microcode = NULL; return -ENODEV; diff --git a/xen/arch/x86/cpu/microcode/intel.c b/xen/arch/x86/cpu/microcode/intel.c index 8d4d6574aa..c51757da90 100644 --- a/xen/arch/x86/cpu/microcode/intel.c +++ b/xen/arch/x86/cpu/microcode/intel.c @@ -385,6 +385,19 @@ static struct microcode_patch *cf_check cpu_request_microcode( return patch; } +bool __init intel_can_load_microcode(void) +{ + uint64_t mcu_ctrl; + + if ( !cpu_has_mcu_ctrl ) + return true; + + rdmsrl(MSR_MCU_CONTROL, mcu_ctrl); + + /* If DIS_MCU_LOAD is set applying microcode updates won't work */ + return !(mcu_ctrl & MCU_CONTROL_DIS_MCU_LOAD); +} + const struct microcode_ops __initconst_cf_clobber intel_ucode_ops = { .cpu_request_microcode = cpu_request_microcode, .collect_cpu_info = collect_cpu_info, diff --git a/xen/arch/x86/cpu/microcode/private.h b/xen/arch/x86/cpu/microcode/private.h index 626aeb4d08..87fcf84373 100644 --- a/xen/arch/x86/cpu/microcode/private.h +++ b/xen/arch/x86/cpu/microcode/private.h @@ -60,6 +60,13 @@ struct microcode_ops { const struct microcode_patch *new, const struct microcode_patch *old); }; +/** + * Checks whether we can perform microcode updates on this Intel system + * + * @return True iff the microcode update facilities are enabled + */ +bool __init intel_can_load_microcode(void); + extern const struct microcode_ops amd_ucode_ops, intel_ucode_ops; #endif /* ASM_X86_MICROCODE_PRIVATE_H */ diff --git a/xen/arch/x86/include/asm/cpufeature.h b/xen/arch/x86/include/asm/cpufeature.h index e2cb8f3cc7..608bc4dce0 100644 --- a/xen/arch/x86/include/asm/cpufeature.h +++ b/xen/arch/x86/include/asm/cpufeature.h @@ -192,6 +192,7 @@ static inline bool boot_cpu_has(unsigned int feat) #define cpu_has_if_pschange_mc_no boot_cpu_has(X86_FEATURE_IF_PSCHANGE_MC_NO) #define cpu_has_tsx_ctrl boot_cpu_has(X86_FEATURE_TSX_CTRL) #define cpu_has_taa_no boot_cpu_has(X86_FEATURE_TAA_NO) +#define cpu_has_mcu_ctrl boot_cpu_has(X86_FEATURE_MCU_CTRL) #define cpu_has_fb_clear boot_cpu_has(X86_FEATURE_FB_CLEAR) #define cpu_has_rrsba boot_cpu_has(X86_FEATURE_RRSBA) diff --git a/xen/arch/x86/include/asm/msr-index.h b/xen/arch/x86/include/asm/msr-index.h index 2749e433d2..5c1350b5f9 100644 --- a/xen/arch/x86/include/asm/msr-index.h +++ b/xen/arch/x86/include/asm/msr-index.h @@ -165,6 +165,11 @@ #define PASID_PASID_MASK 0x000fffff #define PASID_VALID (_AC(1, ULL) << 31) +#define MSR_MCU_CONTROL 0x00001406 +#define MCU_CONTROL_LOCK (_AC(1, ULL) << 0) +#define MCU_CONTROL_DIS_MCU_LOAD (_AC(1, ULL) << 1) +#define MCU_CONTROL_EN_SMM_BYPASS (_AC(1, ULL) << 2) + #define MSR_UARCH_MISC_CTRL 0x00001b01 #define UARCH_CTRL_DOITM (_AC(1, ULL) << 0) -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 22 17:42:33 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 17:42:33 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553876.864706 (Exim 4.92) (envelope-from ) id 1qCOKA-0007MB-3v; Thu, 22 Jun 2023 17:42:26 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553876.864706; Thu, 22 Jun 2023 17:42:26 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCOK9-0007LL-Tc; Thu, 22 Jun 2023 17:42:25 +0000 Received: by outflank-mailman (input) for mailman id 553876; Thu, 22 Jun 2023 17:42:24 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCOK8-00072r-EN for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 17:42:24 +0000 Received: from mail-wr1-x429.google.com (mail-wr1-x429.google.com [2a00:1450:4864:20::429]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 24522617-1124-11ee-8611-37d641c3527e; Thu, 22 Jun 2023 19:42:22 +0200 (CEST) Received: by mail-wr1-x429.google.com with SMTP id ffacd0b85a97d-3129c55e1d1so1032149f8f.0 for ; Thu, 22 Jun 2023 10:42:22 -0700 (PDT) Received: from localhost.localdomain (default-46-102-197-194.interdsl.co.uk. [46.102.197.194]) by smtp.gmail.com with ESMTPSA id j11-20020a5d604b000000b003078681a1e8sm7558457wrt.54.2023.06.22.10.42.21 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 22 Jun 2023 10:42:21 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 24522617-1124-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cloud.com; s=cloud; t=1687455741; x=1690047741; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=UD8KMlkNYxYoncLEvbCCVk2CDjabIoi/rUQSLbrLffo=; b=k/5fkjb4c2EKos95B/o4RAX8AdVMa4OWeYZOCZIiTHx0PTUWQyZtog+fVyV1Ed6Edh +v7aQcmhK83A0U1no6+n4jCfMgGDID1C8ZLGj8SyFa68pWNTkT05dsY5PErQhaqAZh/0 +tIHr43VWbQD48kYSyN8iwmtJqf/ouh2Kf42w= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687455741; x=1690047741; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=UD8KMlkNYxYoncLEvbCCVk2CDjabIoi/rUQSLbrLffo=; b=PemnoNEsRqQsKV8OvaQazQCdSO8tw9BlbRgBK8DOUgxGN4Ow7TNQptGbfWmg1nfti3 F/V6bbpfAEf+SpMAY2WG6HfmDApKaLHP2YvCbBgp3LoWV565QEHpmIiGScn7NAj1sOY6 CKOgJKLCA2dR6M4x2co7mljolJ3o1pTPKyj6OgIdBlGusEJJnCmK9nfxQ1qPfpFQwc/2 c/+tnxFGUSyVC2i96qMhLV2LuFGXFCsC91mheJuhBPA/BiuNWd+lHnw8TymJ8hkXAzbf JfzDwrATI4Vy+U5Rl2AhL6QsYTin7AuIquYjDu5KWCiB0uV8M8AUoszDiuqRd6zYLpxI wMYg== X-Gm-Message-State: AC+VfDz7PjlqtIvJ290g2Xi7PPtD2YvoBrKY5ZB25nWRLlFXYywTdJZy sGuKulIV6gt+Y69QPf3sQkAXQQV/UATQhlBj9JE= X-Google-Smtp-Source: ACHHUZ67s7VwNg/hrM0I3gi23lRMOc/+CSZ3RRfeCxDG9cU011ivtvbjExHFQT/rBo/YZf+8oIT7KA== X-Received: by 2002:a5d:4387:0:b0:311:1108:96ac with SMTP id i7-20020a5d4387000000b00311110896acmr18469503wrq.52.1687455741570; Thu, 22 Jun 2023 10:42:21 -0700 (PDT) From: Alejandro Vallejo To: Xen-devel Cc: Alejandro Vallejo , Jan Beulich , Andrew Cooper , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Wei Liu Subject: [PATCH v4 0/4] Prevent attempting updates known to fail Date: Thu, 22 Jun 2023 18:42:15 +0100 Message-Id: <20230622174219.8871-1-alejandro.vallejo@cloud.com> X-Mailer: git-send-email 2.34.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit v4: * The refactor Andrew asked for to avoid a conditional check on early_microcode_init(). I'm not convinced it's clearer, but it's not much more complicated either, so I don't mind. * Removed microcode_ops builders in favour of a separate Intel-specific function to check whether the system can load new microcode. This keeps the static structs in the right sections. Under certain conditions a CPU may not be able to perform microcode updates even if hardware exists to that effect. In particular: * If Xen runs under certain hypervisors they won't allow microcode updates, and will signal this fact by reporting a microcode revision of -1. * If the DIS_MCU_LOAD bit is set, which is expected in some baremetal clouds where the owner may not trust the tenant, then the CPU is not capable of loading new microcode. This series adds logic so that in both of these cases we don't needlessly attempt updates that are not going to succeed. Patch summary: Patch 1 Introduces the logic to print the microcode revision if at all possible Patch 2 Ignores microcode facilities when the current microcode revision is -1 Patch 3 Moves the MSR_ARCH_CAPS read in tsx_init() to early_cpu_init() and early_microcode_init() Patch 4 Adds the logic to detect microcode updates being disabled on Intel. Alejandro Vallejo (4): x86/microcode: Allow reading microcode revision even if it can't be updated x86/microcode: Ignore microcode loading interface for revision = -1 x86: Read MSR_ARCH_CAPS immediately after early_microcode_init() x86/microcode: Disable microcode update handler if DIS_MCU_UPDATE is set xen/arch/x86/cpu/common.c | 5 ++++ xen/arch/x86/cpu/microcode/core.c | 41 +++++++++++++++++++++++---- xen/arch/x86/cpu/microcode/intel.c | 13 +++++++++ xen/arch/x86/cpu/microcode/private.h | 7 +++++ xen/arch/x86/include/asm/cpufeature.h | 1 + xen/arch/x86/include/asm/msr-index.h | 5 ++++ xen/arch/x86/tsx.c | 16 +++-------- 7 files changed, 70 insertions(+), 18 deletions(-) -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 22 17:42:33 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 17:42:33 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553874.864691 (Exim 4.92) (envelope-from ) id 1qCOK8-00072z-II; Thu, 22 Jun 2023 17:42:24 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553874.864691; Thu, 22 Jun 2023 17:42:24 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCOK8-00072s-DD; Thu, 22 Jun 2023 17:42:24 +0000 Received: by outflank-mailman (input) for mailman id 553874; Thu, 22 Jun 2023 17:42:23 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCOK7-00072l-PT for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 17:42:23 +0000 Received: from mail-wm1-x336.google.com (mail-wm1-x336.google.com [2a00:1450:4864:20::336]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 24a081d8-1124-11ee-b237-6b7b168915f2; Thu, 22 Jun 2023 19:42:22 +0200 (CEST) Received: by mail-wm1-x336.google.com with SMTP id 5b1f17b1804b1-3f900cd3f69so58677825e9.0 for ; Thu, 22 Jun 2023 10:42:22 -0700 (PDT) Received: from localhost.localdomain (default-46-102-197-194.interdsl.co.uk. [46.102.197.194]) by smtp.gmail.com with ESMTPSA id j11-20020a5d604b000000b003078681a1e8sm7558457wrt.54.2023.06.22.10.42.21 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 22 Jun 2023 10:42:21 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 24a081d8-1124-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cloud.com; s=cloud; t=1687455742; x=1690047742; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=jGWd4toS3IkNfM131vkRv5VsP8bjWS9kmyCgBgojdfY=; b=bVD1FT3qa56pFK8e4oCv3OnnvGvHhX7wcHPnoy/WANgs4cGQYAgvVhAnv038Yy3vkT bmKiA9Ei+j6k0pg0h9mYQzYcU6sd57H50q3li3btjapEVMLxhjJ2CQbk0Q2985fk3qi5 Rdf5HPTVNCv+FXscZwhnR7wwM3HLMWvjPF09o= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687455742; x=1690047742; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=jGWd4toS3IkNfM131vkRv5VsP8bjWS9kmyCgBgojdfY=; b=TP19V4xYOIHkX+9CcjbSTyzrLFCGIH60Ab1td4eSzfnMdD1pngmMPKtHXXz0oL+h9P 8WTVtexEO5xx0/K496Flcq4PebGKAt4sLM/SiJvZcq545jwHJBtkRQV4tQ7Jj5Q0QPv6 aYifU5b2hCxr06Ndq+/7teuTsnKmMkezRJ4uQKb3jGdPWmWSEkCHkQHSM/+dCPdvdCtI xTNXm04Hx75mlCY6du6ZyJm/NiFYGQwcHmNaWP41BdeZkF7LBQrrJl8DRZipgFvMB1zd wPT9RkC7AWXv+ZLSaBHv/MItZAdQRhSDu5HARw+dRqyBNFzlToV2nhY+7ydNUEzmqyg6 EJZQ== X-Gm-Message-State: AC+VfDxdsazJ7aZMqLoaQL1Q6CqRgFGlRIg0gVDToKErIcOpK6k48yTc e/UClC6a1LDKS+SExUJZxF5Gw6e9qOLtdmOUou0= X-Google-Smtp-Source: ACHHUZ6mbYJvq7iopIkcaLKIhWxgTvRnUwyGp934mPbC9g9ZSCOJtxiNgWWjEXyKY8TCf+6TqRPcyg== X-Received: by 2002:a1c:6a0e:0:b0:3fa:78d1:572 with SMTP id f14-20020a1c6a0e000000b003fa78d10572mr798252wmc.0.1687455742137; Thu, 22 Jun 2023 10:42:22 -0700 (PDT) From: Alejandro Vallejo To: Xen-devel Cc: Alejandro Vallejo , Jan Beulich , Andrew Cooper , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Wei Liu Subject: [PATCH v4 1/4] x86/microcode: Allow reading microcode revision even if it can't be updated Date: Thu, 22 Jun 2023 18:42:16 +0100 Message-Id: <20230622174219.8871-2-alejandro.vallejo@cloud.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20230622174219.8871-1-alejandro.vallejo@cloud.com> References: <20230622174219.8871-1-alejandro.vallejo@cloud.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit microcode_update_one() currently assumes all microcode handlers are set or none are. That won't be the case in a future patch, as apply_microcode() may not be set while the others are. Hence, this patch allows reading the microcode revision even if updating it is unavailable. Signed-off-by: Alejandro Vallejo Reviewed-by: Jan Beulich --- v4: * Only remove the assumptions on handler contents from microcode_update_one() and leave early_microcode_init() alone (Andrew) --- xen/arch/x86/cpu/microcode/core.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/xen/arch/x86/cpu/microcode/core.c b/xen/arch/x86/cpu/microcode/core.c index c3fee62906..bec8b55db2 100644 --- a/xen/arch/x86/cpu/microcode/core.c +++ b/xen/arch/x86/cpu/microcode/core.c @@ -750,11 +750,12 @@ __initcall(microcode_init); /* Load a cached update to current cpu */ int microcode_update_one(void) { + if ( ucode_ops.collect_cpu_info ) + alternative_vcall(ucode_ops.collect_cpu_info); + if ( !ucode_ops.apply_microcode ) return -EOPNOTSUPP; - alternative_vcall(ucode_ops.collect_cpu_info); - return microcode_update_cpu(NULL); } -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 22 17:46:56 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 17:46:56 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553898.864740 (Exim 4.92) (envelope-from ) id 1qCOOQ-0001UX-Bo; Thu, 22 Jun 2023 17:46:50 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553898.864740; Thu, 22 Jun 2023 17:46:50 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCOOQ-0001UQ-94; Thu, 22 Jun 2023 17:46:50 +0000 Received: by outflank-mailman (input) for mailman id 553898; Thu, 22 Jun 2023 17:46:48 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCOOO-0001UK-Jq for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 17:46:48 +0000 Received: from mail-lf1-x12c.google.com (mail-lf1-x12c.google.com [2a00:1450:4864:20::12c]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id c2ad9f80-1124-11ee-b237-6b7b168915f2; Thu, 22 Jun 2023 19:46:47 +0200 (CEST) Received: by mail-lf1-x12c.google.com with SMTP id 2adb3069b0e04-4f7677a94d1so10378786e87.0 for ; Thu, 22 Jun 2023 10:46:47 -0700 (PDT) Received: from [192.168.157.227] ([91.223.100.47]) by smtp.gmail.com with ESMTPSA id h23-20020ac25977000000b004f874e12e72sm1198114lfp.224.2023.06.22.10.46.43 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Thu, 22 Jun 2023 10:46:46 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: c2ad9f80-1124-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1687456007; x=1690048007; h=content-transfer-encoding:in-reply-to:from:references:cc:to :content-language:subject:user-agent:mime-version:date:message-id :from:to:cc:subject:date:message-id:reply-to; bh=Y9a7YoYe3T0MbLBO0L7+zRiLRSaGbDua3R68SVuQkUE=; b=S3aJfe8OPD1b3iOHso9gShg+orahkCpBFmblOyHZjOMtfsC9rAS4LohByD3rLonWoE evq7uhrMz4t/6OGegMF1W2itotOgLRl27ovwraKfI7Ysiyht7S5BcZLMoBYnV/Jw16XA RHWoykN+6S8jp3lN6clSZc2jOJeleeQJMv3bbDs/LwzKaddO9YOneCTMKO/FPxwioUlb UCTyeKcuQuR9Fn98+Z4JJvz/OGRnUXY32TnqjJNcu8bmZyLxuQxi0IUPExbQx/HsQwkh b9CDB45a87awo/swZ8Gz2lkB+qFhv0XGbCPFnTcMsnmzlJD5yWcejihYecJKQ3KSmaRA VMVA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687456007; x=1690048007; h=content-transfer-encoding:in-reply-to:from:references:cc:to :content-language:subject:user-agent:mime-version:date:message-id :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=Y9a7YoYe3T0MbLBO0L7+zRiLRSaGbDua3R68SVuQkUE=; b=c2UMjtJj6RWxP94rxlSQzsUg/lZUOZP6mXfVvSI4G/DF8nbO6ZJH7R0E1VvYsQU7CL /ZucaM68CIKxK0nzeMuHJ3WNi835v39adtZ2P0tyXn/kd/THOYXUYzqZoNItP/TWpoo/ FCSP67QLjj9lPpPYnIiEZNP4rPEJWg+EpZYLXwfKqxFIIIIUCZgRUrfTtXA7/H6ukSxQ dwoxOSYTWl9pH6KR1gF0WD+NrwMRB6NoqF6XzPb8I1jUP2FBZtGK0cVHkxAnNqZ8HnOD +QmgAVRLC1BZwhyV7t20DbabZmAUsOfcz9dWAIoFHuvTZHNw4R0Nnsdqf0KKSl19LtQF jRMw== X-Gm-Message-State: AC+VfDzosx/x5mi0de4Vlk1tFBgcXOd2345af0PNkf4m0Ib8uOJ7iOHr /c7ewhDI3S5JuW9YfVBK0eWqlQ== X-Google-Smtp-Source: ACHHUZ5haGO8m6yiOqgmROBAyNlMVacxQPLIXMYcwaQC+7P/x0bXWpeMMk4iIZ27Jh55lZjOPBtZAQ== X-Received: by 2002:a05:6512:3b12:b0:4f9:5d2a:e0ee with SMTP id f18-20020a0565123b1200b004f95d2ae0eemr4589292lfv.16.1687456007327; Thu, 22 Jun 2023 10:46:47 -0700 (PDT) Message-ID: <2c0a97af-be7e-6d83-5176-ef9980c2faf0@linaro.org> Date: Thu, 22 Jun 2023 19:46:40 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH v2 07/16] accel: Rename HAX 'struct hax_vcpu_state' -> AccelCPUState Content-Language: en-US To: =?UTF-8?Q?Philippe_Mathieu-Daud=c3=a9?= , qemu-devel@nongnu.org Cc: Reinoud Zandijk , qemu-arm@nongnu.org, kvm@vger.kernel.org, Marcel Apfelbaum , Stefano Stabellini , Anthony Perard , Yanan Wang , Peter Maydell , Roman Bolshakov , Paolo Bonzini , Paul Durrant , Sunil Muthuswamy , Alexander Graf , xen-devel@lists.xenproject.org, Eduardo Habkost , Cameron Esfahani References: <20230622160823.71851-1-philmd@linaro.org> <20230622160823.71851-8-philmd@linaro.org> From: Richard Henderson In-Reply-To: <20230622160823.71851-8-philmd@linaro.org> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit On 6/22/23 18:08, Philippe Mathieu-Daudé wrote: > |+ struct AccelvCPUState *accel;| ... > +typedef struct AccelCPUState { > hax_fd fd; > int vcpu_id; > struct hax_tunnel *tunnel; > unsigned char *iobuf; > -}; > +} hax_vcpu_state; Discussed face to face, but for the record: Put the typedef in qemu/typedefs.h, so that we can use it immediately in core/cpu.h and not need to re-declare it in each accelerator. Drop hax_vcpu_state typedef and just use AccelCPUState (since you have to change all of those lines anyway. Which will eventually allow > +++ b/target/i386/whpx/whpx-all.c > @@ -2258,7 +2258,7 @@ int whpx_init_vcpu(CPUState *cpu) > > vcpu->interruptable = true; > cpu->vcpu_dirty = true; > - cpu->accel = (struct hax_vcpu_state *)vcpu; > + cpu->accel = (struct AccelCPUState *)vcpu; this cast to go away. r~ From xen-devel-bounces@lists.xenproject.org Thu Jun 22 17:47:57 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 17:47:57 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553903.864751 (Exim 4.92) (envelope-from ) id 1qCOPQ-00021K-Mh; Thu, 22 Jun 2023 17:47:52 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553903.864751; Thu, 22 Jun 2023 17:47:52 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCOPQ-00021D-JB; Thu, 22 Jun 2023 17:47:52 +0000 Received: by outflank-mailman (input) for mailman id 553903; Thu, 22 Jun 2023 17:47:50 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCOPO-0001wI-OQ for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 17:47:50 +0000 Received: from mail-lf1-x129.google.com (mail-lf1-x129.google.com [2a00:1450:4864:20::129]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id e740fefc-1124-11ee-8611-37d641c3527e; Thu, 22 Jun 2023 19:47:49 +0200 (CEST) Received: by mail-lf1-x129.google.com with SMTP id 2adb3069b0e04-4f86d8a8fd4so7685084e87.3 for ; Thu, 22 Jun 2023 10:47:49 -0700 (PDT) Received: from [192.168.157.227] ([91.223.100.47]) by smtp.gmail.com with ESMTPSA id x24-20020ac25dd8000000b004f84b36a24fsm1179173lfq.51.2023.06.22.10.47.44 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Thu, 22 Jun 2023 10:47:48 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: e740fefc-1124-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1687456069; x=1690048069; h=content-transfer-encoding:in-reply-to:from:references:cc:to :content-language:subject:user-agent:mime-version:date:message-id :from:to:cc:subject:date:message-id:reply-to; bh=CA2JjQ8/OleI6z0qNtxgxu5zyvvw1MZeyIYD2fCQD3I=; b=Woxpb7WYR4FvOn5NOxMo42gcotnVmBXbNOaTEK784GMQg+He54w6TFwrLdYPT0bEdn 9ZKkMM/hG3Mk2TOVQrKcTvXUZu5ZgixwDMwBHwNiAydolumiVmFo2RKYOYR1Dx1A90lt Xce7H9QAz1xzbY+ZlchmtggODp6W3O9g4x5uk6/NbI7Vc/iJfcRXuBttmX2lBQSmWNrX adAR2Z1B2IFRfGtQiK7ZGG6nBAT7WiP58lyLTxjV/BZ3g4+SEowVSx6RepdoKm7jjbw9 x2OQNQXlO+iv3T303ZMBmKGi/QaLOYNaHfOC3vRTynsIoXC2E9njPdaJcZ4CY+ZvB1Se s8KA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687456069; x=1690048069; h=content-transfer-encoding:in-reply-to:from:references:cc:to :content-language:subject:user-agent:mime-version:date:message-id :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=CA2JjQ8/OleI6z0qNtxgxu5zyvvw1MZeyIYD2fCQD3I=; b=ZUy5RRj+6lCFxQKAIC+oV23dpRN+h611pAcYzLqy+n4pZ2S2CL4ITXjw6yJnXRsEc5 p9GSgDUvytwZx4Y21jy1Jzz1FIRy3yfnc37mUz0aV9olxC+hCyuJ/dgVcAvJreP5W2F2 FmfuvV0RlAz7rfTWfey5jmudScMjBuVCYmh2sg6YGdLP49i+DQ5XlynFqKJOWMypWwfl iTXw+zSo77+Q9868Oq40AzL4MUXWDWfbu476RBUYZ8pLDJEDMDhGg/1i+3q5ZpsuhYYA 4r3f41eQpHnEzLOW/C/5xD5vzpsNGgY+kQS1hf/cRDAY+SqBKxgbK0x7Udoo3yYQZj2z dg3g== X-Gm-Message-State: AC+VfDzjsk2xzSGee7xwtN7gHAWRDPeZOueQ73EzHQSfAwxL8Z1rLNFd pc3HEiifAlpC85lp6wv5LJg1Tw== X-Google-Smtp-Source: ACHHUZ70krz16gmVF54iWhD+K94iRIEs8ZK4yutx0YkjOW53miT7yXbm7wIhwHFKhqthG2rHfxqvaA== X-Received: by 2002:a05:6512:3ba7:b0:4f9:6221:8fb7 with SMTP id g39-20020a0565123ba700b004f962218fb7mr2907515lfv.11.1687456068808; Thu, 22 Jun 2023 10:47:48 -0700 (PDT) Message-ID: <32335eb2-a766-dc4e-afd0-09ce62cf7fb2@linaro.org> Date: Thu, 22 Jun 2023 19:47:42 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH v2 09/16] accel: Remove NVMM unreachable error path Content-Language: en-US To: =?UTF-8?Q?Philippe_Mathieu-Daud=c3=a9?= , qemu-devel@nongnu.org Cc: Reinoud Zandijk , qemu-arm@nongnu.org, kvm@vger.kernel.org, Marcel Apfelbaum , Stefano Stabellini , Anthony Perard , Yanan Wang , Peter Maydell , Roman Bolshakov , Paolo Bonzini , Paul Durrant , Sunil Muthuswamy , Alexander Graf , xen-devel@lists.xenproject.org, Eduardo Habkost , Cameron Esfahani References: <20230622160823.71851-1-philmd@linaro.org> <20230622160823.71851-10-philmd@linaro.org> From: Richard Henderson In-Reply-To: <20230622160823.71851-10-philmd@linaro.org> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit On 6/22/23 18:08, Philippe Mathieu-Daudé wrote: > g_malloc0() can not fail. Remove the unreachable error path. > > https://developer-old.gnome.org/glib/stable/glib-Memory-Allocation.html#glib-Memory-Allocation.description > > Signed-off-by: Philippe Mathieu-Daudé > --- > target/i386/nvmm/nvmm-all.c | 4 ---- > 1 file changed, 4 deletions(-) Reviewed-by: Richard Henderson r~ From xen-devel-bounces@lists.xenproject.org Thu Jun 22 17:48:42 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 17:48:42 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553909.864760 (Exim 4.92) (envelope-from ) id 1qCOQ8-0002YH-Uv; Thu, 22 Jun 2023 17:48:36 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553909.864760; Thu, 22 Jun 2023 17:48:36 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCOQ8-0002YA-SI; Thu, 22 Jun 2023 17:48:36 +0000 Received: by outflank-mailman (input) for mailman id 553909; Thu, 22 Jun 2023 17:48:35 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCOQ7-0002N7-KS for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 17:48:35 +0000 Received: from mail-lj1-x22f.google.com (mail-lj1-x22f.google.com [2a00:1450:4864:20::22f]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 02a28834-1125-11ee-b237-6b7b168915f2; Thu, 22 Jun 2023 19:48:35 +0200 (CEST) Received: by mail-lj1-x22f.google.com with SMTP id 38308e7fff4ca-2b47742de92so76264961fa.0 for ; Thu, 22 Jun 2023 10:48:35 -0700 (PDT) Received: from [192.168.157.227] ([91.223.100.47]) by smtp.gmail.com with ESMTPSA id y3-20020a05651c020300b002b4832d0c8esm1421362ljn.118.2023.06.22.10.48.31 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Thu, 22 Jun 2023 10:48:34 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 02a28834-1125-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1687456114; x=1690048114; h=content-transfer-encoding:in-reply-to:from:references:cc:to :content-language:subject:user-agent:mime-version:date:message-id :from:to:cc:subject:date:message-id:reply-to; bh=dqzSwhmIqLC0pNAcU2LtSNI/E1J8NE7gvDvKGn+6LZQ=; b=zuKhnA4x/RPSFsbRDJ0d4Ftiske/KmneH55J9Sv9/ZNVVwbQ3icFYY8MVzx8/+V+SR 4px+9lMVNc6S6yvGsRMvceKngfoW5pSqqDQQYha/GLw6t5fgE82RkgNXPjSfLlIUq2S8 74Gy4qNIB83KfhY9VgP7FhCVfKwLiYQM5/Gq9OuvUnzhr4ChZp+/8xcqVOjBMc5OMnXL 7lZZUBotN2tra15w4fQs0CKbHFSzkmjl5gWKDqCI6yat/f3cTNUnlkQKgFQcHajMXIlS Rc93JrOx+coCGdYDTXciBqhdaAn9GSwr36eB+HAU5RTRzwbNQhV9G5MhDRblA/3DLi9f Wsmw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687456114; x=1690048114; h=content-transfer-encoding:in-reply-to:from:references:cc:to :content-language:subject:user-agent:mime-version:date:message-id :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=dqzSwhmIqLC0pNAcU2LtSNI/E1J8NE7gvDvKGn+6LZQ=; b=hrbfvzfPT+pwkmYzqDkLyZf+Z01+NbBvdNIF0AEGkaEDHroPSkqDCHaFaqh0q6hvEo Vx508gpI3ul8axtXzosaHQF39CLhCINUWouSp0Vc40dmAjGbtHnurmhCRrNArU9a8W/b QmPIeNVnIDi/coYS4NYbA1pBC11+a5/PgKFnkthV9wvpY+C2t9vLOUUF6jT5Zd1e7uq1 JAIH4/7fu3TaUvocfBJKDxQHsk8wouUFIx2s+Ynqf2xDhq4xCWR5i/oFZGJSiA3mAAqE qV+cnD/w2E/I+AkLyv8YyLCwkmmD6vut2BvccVENp/f7yWPnVgrUR3qcyF0ospNdY4ev sX4g== X-Gm-Message-State: AC+VfDx4JtzooesHEvTs0nU6dvbtTjuVBucgwAywO9nP72K1u/wxpcRK x5SQlVhIkDide1+J9XC/MKWu4Q== X-Google-Smtp-Source: ACHHUZ4yU6Z4OBHWNZinbZubWOW6GhuB/jEGytDVFOrPmlBXaknK7EKzwKrqWJRARRFro1oeE4SvtQ== X-Received: by 2002:a2e:834b:0:b0:2af:25cf:92ae with SMTP id l11-20020a2e834b000000b002af25cf92aemr12328492ljh.22.1687456114734; Thu, 22 Jun 2023 10:48:34 -0700 (PDT) Message-ID: Date: Thu, 22 Jun 2023 19:48:29 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH v2 12/16] accel: Remove WHPX unreachable error path Content-Language: en-US To: =?UTF-8?Q?Philippe_Mathieu-Daud=c3=a9?= , qemu-devel@nongnu.org Cc: Reinoud Zandijk , qemu-arm@nongnu.org, kvm@vger.kernel.org, Marcel Apfelbaum , Stefano Stabellini , Anthony Perard , Yanan Wang , Peter Maydell , Roman Bolshakov , Paolo Bonzini , Paul Durrant , Sunil Muthuswamy , Alexander Graf , xen-devel@lists.xenproject.org, Eduardo Habkost , Cameron Esfahani References: <20230622160823.71851-1-philmd@linaro.org> <20230622160823.71851-13-philmd@linaro.org> From: Richard Henderson In-Reply-To: <20230622160823.71851-13-philmd@linaro.org> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit On 6/22/23 18:08, Philippe Mathieu-Daudé wrote: > g_new0() can not fail. Remove the unreachable error path. > > https://developer-old.gnome.org/glib/stable/glib-Memory-Allocation.html#glib-Memory-Allocation.description > > Reported-by: Richard Henderson > Signed-off-by: Philippe Mathieu-Daudé > --- > target/i386/whpx/whpx-all.c | 6 ------ > 1 file changed, 6 deletions(-) Reviewed-by: Richard Henderson r~ From xen-devel-bounces@lists.xenproject.org Thu Jun 22 17:51:29 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 17:51:29 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553915.864770 (Exim 4.92) (envelope-from ) id 1qCOSk-00042F-Bh; Thu, 22 Jun 2023 17:51:18 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553915.864770; Thu, 22 Jun 2023 17:51:18 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCOSk-000428-8p; Thu, 22 Jun 2023 17:51:18 +0000 Received: by outflank-mailman (input) for mailman id 553915; Thu, 22 Jun 2023 17:51:17 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCOSj-000422-7w for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 17:51:17 +0000 Received: from mail-lf1-x136.google.com (mail-lf1-x136.google.com [2a00:1450:4864:20::136]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 62a28614-1125-11ee-b237-6b7b168915f2; Thu, 22 Jun 2023 19:51:16 +0200 (CEST) Received: by mail-lf1-x136.google.com with SMTP id 2adb3069b0e04-4f87592ecaeso6680660e87.0 for ; Thu, 22 Jun 2023 10:51:16 -0700 (PDT) Received: from [192.168.157.227] ([91.223.100.47]) by smtp.gmail.com with ESMTPSA id i14-20020ac2522e000000b004f24db9248dsm1195907lfl.141.2023.06.22.10.51.11 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Thu, 22 Jun 2023 10:51:15 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 62a28614-1125-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1687456276; x=1690048276; h=content-transfer-encoding:in-reply-to:from:references:cc:to :content-language:subject:user-agent:mime-version:date:message-id :from:to:cc:subject:date:message-id:reply-to; bh=9RxDEfypLP474dWXJLDSfwdHncLLmi9Gthq1bxnH6Sg=; b=RiVWMtP0j99xIRYUNXDURWNefogBeHrukb98HKl2KpQPFeqzG8I5jV1I8RYGUIxgwH sBTf6FPI0LAFSEQpvawCbcgioqZrrkhjCenDgar1wInj2SzuwqjwDBLhQxIR2y/WHDOD uDQ5+I4pvWVB6lwB5UW3bgC25Cd4/1Dr4pX5ff+Xtzu5kIWnQxozPwnZBupIPOtpEfbi AxCY/kmKMitTxzq+qp51TgVcvHwWugs+tFjPpja+shXEeqz4rfRWJr73IzbwST2ryOSo yu3gSElU9n8FQ6tnrRY0Gl+RD1sXGK1RjAue2K0BBFP2LCwPwBr1gimeAqkmcjsllPjQ 725w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687456276; x=1690048276; h=content-transfer-encoding:in-reply-to:from:references:cc:to :content-language:subject:user-agent:mime-version:date:message-id :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=9RxDEfypLP474dWXJLDSfwdHncLLmi9Gthq1bxnH6Sg=; b=Hg+inBJmv3hnbjv2HuEw589GpowQvTqL+PrdOtCiFxwsKdnxQ5yFXn6aO8D5avpNm9 fuUbBZpU6THuYbvKyI2VDQfuP/7qTHoffBvf/WmrNDTmqohEkyngXaP44N7kdztbuqJi lsrESPAmJ2rq4uL9bEIzGUmda2Th4FjR9eduP4OE1bHoPSaPd2iMmHncH68AXGysRTeU vWfzRl93pettI9tIhZE7oFazfrOr4ARktF20281Tv23be8mW4ML/fOqEPPfOxlPvZwVG ecKXd3uYUf2Ndbucz1rNYH+VYsV+2s82wtsCidsRAC6z/MGRzhRTavYR9IQie73wgEQ3 LFlg== X-Gm-Message-State: AC+VfDxqb7lCMbKbXVMVkkOL8BKs5WBMCthSnzGadiaVPqvlhUfqYYMx /WQvkHloHibccWKkT0JbU0Q6iQ== X-Google-Smtp-Source: ACHHUZ4jTKt0S9wGV9j57uZV2AskBM6ykJg1BX+PUA6Y8ggImBM58aMPiFh3pdEHVJWhW5Jzj4GL0w== X-Received: by 2002:ac2:5bca:0:b0:4f8:67e7:8a1c with SMTP id u10-20020ac25bca000000b004f867e78a1cmr2333897lfn.45.1687456275753; Thu, 22 Jun 2023 10:51:15 -0700 (PDT) Message-ID: <58c48176-c9b2-0184-a93f-3168f66b7d72@linaro.org> Date: Thu, 22 Jun 2023 19:51:09 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH v2 15/16] accel: Rename 'cpu_state' -> 'cpu' Content-Language: en-US To: =?UTF-8?Q?Philippe_Mathieu-Daud=c3=a9?= , qemu-devel@nongnu.org Cc: Reinoud Zandijk , qemu-arm@nongnu.org, kvm@vger.kernel.org, Marcel Apfelbaum , Stefano Stabellini , Anthony Perard , Yanan Wang , Peter Maydell , Roman Bolshakov , Paolo Bonzini , Paul Durrant , Sunil Muthuswamy , Alexander Graf , xen-devel@lists.xenproject.org, Eduardo Habkost , Cameron Esfahani References: <20230622160823.71851-1-philmd@linaro.org> <20230622160823.71851-16-philmd@linaro.org> From: Richard Henderson In-Reply-To: <20230622160823.71851-16-philmd@linaro.org> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit On 6/22/23 18:08, Philippe Mathieu-Daudé wrote: > Most of the codebase uses 'CPUState *cpu' or 'CPUState *cs'. > While 'cpu_state' is kind of explicit, it makes the code > harder to review. Simply rename as 'cpu' like the rest. > > Signed-off-by: Philippe Mathieu-Daudé I would have chosen 'cs', since 'cpu' is often used for ArchCPU. But ok. Acked-by: Richard Henderson r~ From xen-devel-bounces@lists.xenproject.org Thu Jun 22 18:55:01 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 18:55:01 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553925.864781 (Exim 4.92) (envelope-from ) id 1qCPS7-00021b-MO; Thu, 22 Jun 2023 18:54:43 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553925.864781; Thu, 22 Jun 2023 18:54:43 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCPS7-00021U-JE; Thu, 22 Jun 2023 18:54:43 +0000 Received: by outflank-mailman (input) for mailman id 553925; Thu, 22 Jun 2023 18:54:42 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCPS6-00021M-Fh for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 18:54:42 +0000 Received: from raptorengineering.com (mail.raptorengineering.com [23.155.224.40]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 3bbe0d4d-112e-11ee-8611-37d641c3527e; Thu, 22 Jun 2023 20:54:37 +0200 (CEST) Received: from localhost (localhost [127.0.0.1]) by mail.rptsys.com (Postfix) with ESMTP id F232D828554F; Thu, 22 Jun 2023 13:54:35 -0500 (CDT) Received: from mail.rptsys.com ([127.0.0.1]) by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032) with ESMTP id Ro1pbrQrMdhq; Thu, 22 Jun 2023 13:54:35 -0500 (CDT) Received: from localhost (localhost [127.0.0.1]) by mail.rptsys.com (Postfix) with ESMTP id 453F08285A1F; Thu, 22 Jun 2023 13:54:35 -0500 (CDT) Received: from mail.rptsys.com ([127.0.0.1]) by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id hGU5Yf0RkzK1; Thu, 22 Jun 2023 13:54:35 -0500 (CDT) Received: from [10.11.0.2] (5.edge.rptsys.com [23.155.224.38]) by mail.rptsys.com (Postfix) with ESMTPSA id C4025828554F; Thu, 22 Jun 2023 13:54:34 -0500 (CDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 3bbe0d4d-112e-11ee-8611-37d641c3527e DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com 453F08285A1F DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD; t=1687460075; bh=nNzeHRBiMlVeNzFoQxxw/cK9irkYLQ3DWPBJ3g5MLPo=; h=Message-ID:Date:MIME-Version:To:From; b=J6y7ghLdG1MkzzTMHBpPc8WMgWwIa90NMW0qAO0Rv8c3S4bubjUUzh11UxYE0ZvBN px9kaRH3Gt4BwWvSADWQFHidPPAxpmYUXjvoOfuTJu/Ta7oypnTQdUGKDdSY4StTuV 8tv/1SUensXjzOhfhd0fs6x5uD1Oa292l653/gAY= X-Virus-Scanned: amavisd-new at rptsys.com Message-ID: <8fdb87a3-7ae6-6435-0988-1ea1926d2a2b@raptorengineering.com> Date: Thu, 22 Jun 2023 13:54:34 -0500 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux ppc64le; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH 3/4] xen/ppc: Implement early serial printk on pseries Content-Language: en-US To: Julien Grall , xen-devel@lists.xenproject.org Cc: tpearson@raptorengineering.com References: <259298cdadf7cf1eba08cd35c636e9aca9e2182a.1687366665.git.sanastasio@raptorengineering.com> <4fc1fcee-e210-fe16-f762-3f23700d51b9@xen.org> From: Shawn Anastasio In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit On 6/22/23 11:43 AM, Julien Grall wrote: > Hi, Thanks for the response. I had one more question with regards to the emacs footer. >All files usually have an emacs magic block. E.g.: > >/* > * Local variables: > * mode: C > * c-file-style: "BSD" > * c-basic-offset: 4 > * indent-tabs-mode: nil > * End: > */ Is this absolutely necessary to include? The CODING_STYLE document seems to imply that it's optional and a quick peek at other architectures' code suggests that this is the case. If it is required, should it also be included in assembly files, or only .c/.h ones? >>> This seems to be refactoring. It would be best if this is done in a >>> separate patch as this is easier to review. >> >> Following Andrew's suggestion earlier, I've split this patch into two >> with the first one only doing the bare minimum to get an infinite loop >> going in C rather than assembly. That first patch still includes the >> refactoring of this trampoline into a macro, but the overall patch size >> is much smaller. Do you think that would be fine to review, or would you >> like a third commit for only this trampoline's refactoring? > > In general we tend to split code movement/refactoring from new code. > This helps during reviews. Not sure how small will be your patch. If it > is only a few dozen of lines, then it should be fine :). Makes sense, thanks. > Cheers, Thanks, Shawn From xen-devel-bounces@lists.xenproject.org Thu Jun 22 19:34:10 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 19:34:10 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553930.864790 (Exim 4.92) (envelope-from ) id 1qCQ4A-0006Qg-HL; Thu, 22 Jun 2023 19:34:02 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553930.864790; Thu, 22 Jun 2023 19:34:02 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCQ4A-0006QZ-ER; Thu, 22 Jun 2023 19:34:02 +0000 Received: by outflank-mailman (input) for mailman id 553930; Thu, 22 Jun 2023 19:34:01 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCQ49-0006QP-KV; Thu, 22 Jun 2023 19:34:01 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCQ49-0001Bj-35; Thu, 22 Jun 2023 19:34:01 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCQ48-0002eT-FY; Thu, 22 Jun 2023 19:34:00 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qCQ48-0007S9-F2; Thu, 22 Jun 2023 19:34:00 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=Tyf9CVMu0oirNNlmTkdnYu53Uh64PHyJMa9xnQnan5g=; b=ljdLa35woCn1k2W1kVFky1wtAh FNhPHgdkoTBuGgfu8dIwJ9+jB9e9mYi/Ujo973b3OIuXIAJ8pOntrGbiH+sLFqjJKVtrjCzxZtgwc exVzYA4+QTqZ9/CeGWxLJ0bzj55Nb7dZS5T0nRWAAieoV5l7rnRkWzkqez07ExTH76Yo=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [linux-5.4 test] 181551: regressions - FAIL X-Osstest-Failures: linux-5.4:build-armhf::broken:regression linux-5.4:build-armhf:host-install(4):broken:regression linux-5.4:build-arm64-pvops:kernel-build:fail:regression linux-5.4:test-armhf-armhf-xl-arndale:guest-start/debian.repeat:fail:regression linux-5.4:test-amd64-i386-qemut-rhel6hvm-amd:xen-install:fail:heisenbug linux-5.4:test-amd64-i386-qemuu-rhel6hvm-amd:xen-install:fail:heisenbug linux-5.4:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-xl:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking linux-5.4:build-armhf-libvirt:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-examine:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking linux-5.4:test-arm64-arm64-examine:build-check(1):blocked:nonblocking linux-5.4:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking linux-5.4:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking linux-5.4:test-arm64-arm64-xl:build-check(1):blocked:nonblocking linux-5.4:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking linux-5.4:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking linux-5.4:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking linux-5.4:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking linux-5.4:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking linux-5.4:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-credit2:guest-start/debian.repeat:fail:nonblocking linux-5.4:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking linux-5.4:test-armhf-armhf-xl-rtds:guest-start/debian.repeat:fail:nonblocking linux-5.4:test-armhf-armhf-xl-credit1:guest-start/debian.repeat:fail:nonblocking linux-5.4:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking linux-5.4:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking linux-5.4:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking linux-5.4:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: linux=f2b499c27a959d062db9ea5c3036052d90110ee4 X-Osstest-Versions-That: linux=f568a20f058fa1e37069cff4aac4187c1650a0e9 From: osstest service owner Date: Thu, 22 Jun 2023 19:34:00 +0000 flight 181551 linux-5.4 real [real] http://logs.test-lab.xenproject.org/osstest/logs/181551/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-armhf broken in 181542 build-armhf 4 host-install(4) broken in 181542 REGR. vs. 181363 build-arm64-pvops 6 kernel-build fail REGR. vs. 181363 test-armhf-armhf-xl-arndale 18 guest-start/debian.repeat fail REGR. vs. 181363 Tests which are failing intermittently (not blocking): test-amd64-i386-qemut-rhel6hvm-amd 7 xen-install fail pass in 181542 test-amd64-i386-qemuu-rhel6hvm-amd 7 xen-install fail pass in 181542 Tests which did not succeed, but are not blocking: test-armhf-armhf-libvirt-raw 1 build-check(1) blocked in 181542 n/a test-armhf-armhf-xl 1 build-check(1) blocked in 181542 n/a test-armhf-armhf-xl-multivcpu 1 build-check(1) blocked in 181542 n/a test-armhf-armhf-xl-rtds 1 build-check(1) blocked in 181542 n/a test-armhf-armhf-xl-arndale 1 build-check(1) blocked in 181542 n/a test-armhf-armhf-libvirt 1 build-check(1) blocked in 181542 n/a build-armhf-libvirt 1 build-check(1) blocked in 181542 n/a test-armhf-armhf-xl-credit1 1 build-check(1) blocked in 181542 n/a test-armhf-armhf-examine 1 build-check(1) blocked in 181542 n/a test-armhf-armhf-libvirt-qcow2 1 build-check(1) blocked in 181542 n/a test-armhf-armhf-xl-credit2 1 build-check(1) blocked in 181542 n/a test-armhf-armhf-xl-vhd 1 build-check(1) blocked in 181542 n/a test-arm64-arm64-examine 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-raw 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-xsm 1 build-check(1) blocked n/a test-arm64-arm64-xl 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit1 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit2 1 build-check(1) blocked n/a test-arm64-arm64-xl-thunderx 1 build-check(1) blocked n/a test-arm64-arm64-xl-vhd 1 build-check(1) blocked n/a test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a test-arm64-arm64-xl-xsm 15 migrate-support-check fail in 181542 never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail in 181542 never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail in 181542 never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail in 181542 never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail in 181542 never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail in 181542 never pass test-arm64-arm64-xl 15 migrate-support-check fail in 181542 never pass test-arm64-arm64-xl 16 saverestore-support-check fail in 181542 never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail in 181542 never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail in 181542 never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail in 181542 never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail in 181542 never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail in 181542 never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail in 181542 never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail in 181542 never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail in 181542 never pass test-armhf-armhf-xl-credit2 18 guest-start/debian.repeat fail like 181336 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 181363 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop fail like 181363 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop fail like 181363 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 181363 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 181363 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 181363 test-armhf-armhf-xl-rtds 18 guest-start/debian.repeat fail like 181363 test-armhf-armhf-xl-credit1 18 guest-start/debian.repeat fail like 181363 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop fail like 181363 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail like 181363 test-armhf-armhf-libvirt 16 saverestore-support-check fail like 181363 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail like 181363 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop fail like 181363 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 181363 test-amd64-i386-xl-pvshim 14 guest-start fail never pass test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-i386-libvirt 15 migrate-support-check fail never pass test-amd64-i386-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-armhf-armhf-xl-credit2 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit2 16 saverestore-support-check fail never pass test-armhf-armhf-xl-multivcpu 15 migrate-support-check fail never pass test-armhf-armhf-xl-multivcpu 16 saverestore-support-check fail never pass test-amd64-i386-libvirt-raw 14 migrate-support-check fail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 16 saverestore-support-check fail never pass test-armhf-armhf-xl-rtds 15 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 16 saverestore-support-check fail never pass test-armhf-armhf-xl 15 migrate-support-check fail never pass test-armhf-armhf-xl 16 saverestore-support-check fail never pass test-armhf-armhf-xl-arndale 15 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail never pass test-armhf-armhf-libvirt 15 migrate-support-check fail never pass test-armhf-armhf-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 15 saverestore-support-check fail never pass version targeted for testing: linux f2b499c27a959d062db9ea5c3036052d90110ee4 baseline version: linux f568a20f058fa1e37069cff4aac4187c1650a0e9 Last test of basis 181363 2023-06-10 15:39:59 Z 12 days Failing since 181425 2023-06-14 10:50:49 Z 8 days 15 attempts Testing same since 181542 2023-06-21 23:13:50 Z 0 days 2 attempts ------------------------------------------------------------ People who touched revisions under test: Adrian Hunter Ahmed Zaki Ai Chao Alan Stern Aleksandr Loktionov Alex Deucher Alex Maftei Alexander Kapshuk Alexander Sverdlin Alexandru Sorodoc Andrew Morton Arnd Bergmann Bartosz Golaszewski Ben Hutchings Ben Skeggs Bernhard Seibold Bjørn Mork Bob Pearson Chia-I Wu Chris Paterson (CIP) Christian Loehle Christoph Hellwig Dan Carpenter Dave Airlie David Ahern David Howells David Jander David S. Miller David Sterba Dinh Nguyen Dmitry Torokhov Edson Juliano Drosdeck Edward Srouji Elson Roy Serrao Eric Dumazet Fedor Pchelkin Florian Fainelli Florian Westphal Gaosheng Cui Greg Kroah-Hartman Guenter Roeck Guillaume Nault Gustavo A. R. Silva Hangbin Liu Hangyu Hua Hans de Goede Harshit Mogalapalli Helge Deller Ian Ziemba Ilya Dryomov Ismael Ferreras Morezuelas JaimeLiao Jakub Kicinski Jamal Hadi Salim Jan Höppner Janne Grunau Jason Gunthorpe Jens Axboe Jerry Meng Jiri Slaby (SUSE) Johan Hovold Johannes Thumshirn Jon Hunter Josef Bacik Joseph Qi Jozsef Kadlecsik Juergen Gross Krzysztof Kozlowski Kuniyuki Iwashima Lee Jones Leon Romanovsky Leon Romanovsky Lin Ma Linus Torvalds Linus Walleij Linux Kernel Functional Testing Lisa Chen (陈敏捷) Liviu Dudau Luis Chamberlain Luiz Augusto von Dentz Luís Henriques Luís Henriques Lyude Paul Manuel Lauss Marc Dionne Marc Kleine-Budde Marc Zyngier Marek Vasut Mario Limonciello Mark Brown Martin Blumenstingl Martin Hundebøll Maxime Ripard Michael Chan Min Li Miquel Raynal Mirsad Goran Todorovac Mirsad Todorovac Natalia Petrova Nikolay Aleksandrov Oleksij Rempel Osama Muhammad Pablo Neira Ayuso Paolo Abeni Paulo Alcantara (SUSE) Paulo Alcantara Qingfang DENG Rafal Romanowski Randy Dunlap RenHai Ricardo Ribalda Richard Cochran Rishabh Bhatnagar Roberto Sassu Ross Lagerwall Ruihan Li Ryusuke Konishi Saravanan Vajravel Sasha Levin Sebastian Reichel Selvin Xavier Shuah Khan Simon Wunderlich Somnath Kotur Stefan Berger Stefan Ghinea Stefan Haberland Stephan Gerhold Stephen Hemminger Steve French Sudeep Holla Sudip Mukherjee Sukrut Bellary Sungwoo Kim Sven Eckelmann Takashi Iwai Tejun Heo Theodore Ts'o Thinh Nguyen Thomas Bogendoerfer Tijs Van Buggenhout Tony Nguyen Ulf Hansson Uwe Kleine-König Ville Syrjälä Vlad Buslov Vladimir Oltean Vladislav Efanov Wes Huang Wolfram Sang Xin Long Xiubo Li Ying Hsu Yishai Hadas YouChing Lin Zhu Yanjun Zixuan Fu jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops fail build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl blocked test-armhf-armhf-xl pass test-amd64-i386-xl pass test-amd64-coresched-i386-xl pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-i386-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-i386-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm blocked test-amd64-i386-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm blocked test-amd64-i386-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-i386-qemut-rhel6hvm-amd fail test-amd64-i386-qemuu-rhel6hvm-amd fail test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-i386-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-freebsd10-amd64 pass test-amd64-amd64-qemuu-freebsd11-amd64 pass test-amd64-amd64-qemuu-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-i386-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-i386-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-i386-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-amd64-i386-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale fail test-amd64-amd64-examine-bios pass test-amd64-i386-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 blocked test-armhf-armhf-xl-credit1 fail test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 blocked test-armhf-armhf-xl-credit2 fail test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine blocked test-armhf-armhf-examine pass test-amd64-i386-examine pass test-amd64-i386-freebsd10-i386 pass test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-i386-qemut-rhel6hvm-intel pass test-amd64-i386-qemuu-rhel6hvm-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt pass test-amd64-i386-libvirt pass test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu pass test-amd64-amd64-pair pass test-amd64-i386-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-i386-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-i386-xl-pvshim fail test-amd64-amd64-pygrub pass test-armhf-armhf-libvirt-qcow2 pass test-amd64-amd64-xl-qcow2 pass test-arm64-arm64-libvirt-raw blocked test-armhf-armhf-libvirt-raw pass test-amd64-i386-libvirt-raw pass test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds fail test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-amd64-i386-xl-shadow pass test-arm64-arm64-xl-thunderx blocked test-amd64-amd64-examine-uefi pass test-amd64-i386-examine-uefi pass test-amd64-amd64-libvirt-vhd pass test-arm64-arm64-xl-vhd blocked test-armhf-armhf-xl-vhd pass test-amd64-i386-xl-vhd pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary broken-job build-armhf broken Not pushing. (No revision log; it would be 3426 lines long.) From xen-devel-bounces@lists.xenproject.org Thu Jun 22 20:58:09 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 20:58:09 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553947.864866 (Exim 4.92) (envelope-from ) id 1qCRNW-0007tg-42; Thu, 22 Jun 2023 20:58:06 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553947.864866; Thu, 22 Jun 2023 20:58:06 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCRNV-0007rF-ON; Thu, 22 Jun 2023 20:58:05 +0000 Received: by outflank-mailman (input) for mailman id 553947; Thu, 22 Jun 2023 20:58:04 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCRNU-0006Mq-4l for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 20:58:04 +0000 Received: from mail-yb1-xb2d.google.com (mail-yb1-xb2d.google.com [2607:f8b0:4864:20::b2d]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 7a663353-113f-11ee-b237-6b7b168915f2; Thu, 22 Jun 2023 22:58:03 +0200 (CEST) Received: by mail-yb1-xb2d.google.com with SMTP id 3f1490d57ef6-bcd0226607bso1693159276.1 for ; Thu, 22 Jun 2023 13:58:03 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::36]) by smtp.googlemail.com with ESMTPSA id d18-20020a5b0c52000000b00bc501a1b062sm1684937ybr.42.2023.06.22.13.58.00 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 22 Jun 2023 13:58:02 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 7a663353-113f-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687467482; x=1690059482; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=g10wkISUfh+NWh/zmhT9FX+m3ZttfvdTUqPKBonJP24=; b=pU1rNku+EwfuvvAUFkFumH3vBy2yB8eY8b9rmQMddlJoc9QhOnRcokyjWDtIUPPy9P MyE7phtpnefNxvysKqFF1dCChREaY4VAw7Hj9WJFlZFrzpk6eifBId3wubz0Vyh/S2pn 8/Y3zkVGHHKKYxzZzu8HCxLQTltPQvJHitS9QsbrsAUgPjueiuuK933isxWF/RQdLHvt zcy+Qct09qmvfH+KRctZzkT+vvZGDQDyiysBgsbHpUxND18HRJm9vVFEK6S0KHOtgU7u IRCWYGiDuX3Hydg/OjrZHIGz2lGmohOF8cCd3deLunhE1oH3PJ2GTuP2PJzlmW5OQRrp EAKQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687467482; x=1690059482; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=g10wkISUfh+NWh/zmhT9FX+m3ZttfvdTUqPKBonJP24=; b=MQm0G8oWiN+veBJUGkpMl+fUSxXmy/cUa1SlwxBgS1vJnkJk59Jems0kCSlLflLal1 SVxWgUCFMHpjLqUIM5W31saDVroGUU3Qks5KuHIJgMRcAlapbKS+6OMr28hShgrmDWx3 U4c1lZ9cKMLqTPnnM0VXQWj72pCTJbwmltH5rUjDDFdiWuQwZhNjPMyN7fS14m+G88ty PKjuVSOQmedZDpmTMwzilHTWT7Ze1n+LpoRz5+UjVKmq9paP1wkdP/TwZjMMEDFqAhk0 JsSamm2wMRJPi+FQuDyfPPUAK7qjNw9UBj2j/oHPjMwQrQPM56KKvccRUW1dlWH0SDv8 /EeA== X-Gm-Message-State: AC+VfDxJapH5Yw0iT65eaUtVkV2eDfuZMX8OsIgOFI7SQohhv53EjNsD gwM63W9m+PVczSroGHIc6S4= X-Google-Smtp-Source: ACHHUZ77fWcfFpcqNU9K3kqcEPsqSpbWa/fmZ/3pFZFyzvd1rtc51te7WicHxIwYc2YzOzHNnZEaEA== X-Received: by 2002:a25:2f85:0:b0:bd5:eeb4:55be with SMTP id v127-20020a252f85000000b00bd5eeb455bemr19092596ybv.0.1687467482307; Thu, 22 Jun 2023 13:58:02 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" , Mike Rapoport Subject: [PATCH v5 03/33] pgtable: Create struct ptdesc Date: Thu, 22 Jun 2023 13:57:15 -0700 Message-Id: <20230622205745.79707-4-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230622205745.79707-1-vishal.moola@gmail.com> References: <20230622205745.79707-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Currently, page table information is stored within struct page. As part of simplifying struct page, create struct ptdesc for page table information. Signed-off-by: Vishal Moola (Oracle) Acked-by: Mike Rapoport (IBM) --- include/linux/pgtable.h | 68 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 68 insertions(+) diff --git a/include/linux/pgtable.h b/include/linux/pgtable.h index 5063b482e34f..d46cb709ce08 100644 --- a/include/linux/pgtable.h +++ b/include/linux/pgtable.h @@ -987,6 +987,74 @@ static inline void ptep_modify_prot_commit(struct vm_area_struct *vma, #endif /* __HAVE_ARCH_PTEP_MODIFY_PROT_TRANSACTION */ #endif /* CONFIG_MMU */ + +/** + * struct ptdesc - Memory descriptor for page tables. + * @__page_flags: Same as page flags. Unused for page tables. + * @pt_rcu_head: For freeing page table pages. + * @pt_list: List of used page tables. Used for s390 and x86. + * @_pt_pad_1: Padding that aliases with page's compound head. + * @pmd_huge_pte: Protected by ptdesc->ptl, used for THPs. + * @_pt_s390_gaddr: Aliases with page's mapping. Used for s390 gmap only. + * @pt_mm: Used for x86 pgds. + * @pt_frag_refcount: For fragmented page table tracking. Powerpc and s390 only. + * @ptl: Lock for the page table. + * @__page_type: Same as page->page_type. Unused for page tables. + * @_refcount: Same as page refcount. Used for s390 page tables. + * @pt_memcg_data: Memcg data. Tracked for page tables here. + * + * This struct overlays struct page for now. Do not modify without a good + * understanding of the issues. + */ +struct ptdesc { + unsigned long __page_flags; + + union { + struct rcu_head pt_rcu_head; + struct list_head pt_list; + struct { + unsigned long _pt_pad_1; + pgtable_t pmd_huge_pte; + }; + }; + unsigned long _pt_s390_gaddr; + + union { + struct mm_struct *pt_mm; + atomic_t pt_frag_refcount; + }; + + union { + unsigned long _pt_pad_2; +#if ALLOC_SPLIT_PTLOCKS + spinlock_t *ptl; +#else + spinlock_t ptl; +#endif + }; + unsigned int __page_type; + atomic_t _refcount; +#ifdef CONFIG_MEMCG + unsigned long pt_memcg_data; +#endif +}; + +#define TABLE_MATCH(pg, pt) \ + static_assert(offsetof(struct page, pg) == offsetof(struct ptdesc, pt)) +TABLE_MATCH(flags, __page_flags); +TABLE_MATCH(compound_head, pt_list); +TABLE_MATCH(compound_head, _pt_pad_1); +TABLE_MATCH(pmd_huge_pte, pmd_huge_pte); +TABLE_MATCH(mapping, _pt_s390_gaddr); +TABLE_MATCH(pt_mm, pt_mm); +TABLE_MATCH(ptl, ptl); +TABLE_MATCH(rcu_head, pt_rcu_head); +#ifdef CONFIG_MEMCG +TABLE_MATCH(memcg_data, pt_memcg_data); +#endif +#undef TABLE_MATCH +static_assert(sizeof(struct ptdesc) <= sizeof(struct page)); + /* * No-op macros that just return the current protection value. Defined here * because these macros can be used even if CONFIG_MMU is not defined. -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 22 20:58:09 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 20:58:09 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553944.864827 (Exim 4.92) (envelope-from ) id 1qCRNS-0006qU-6h; Thu, 22 Jun 2023 20:58:02 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553944.864827; Thu, 22 Jun 2023 20:58:02 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCRNS-0006n1-16; Thu, 22 Jun 2023 20:58:02 +0000 Received: by outflank-mailman (input) for mailman id 553944; Thu, 22 Jun 2023 20:58:00 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCRNQ-0006Mq-IE for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 20:58:00 +0000 Received: from mail-yb1-xb2f.google.com (mail-yb1-xb2f.google.com [2607:f8b0:4864:20::b2f]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 77d9f676-113f-11ee-b237-6b7b168915f2; Thu, 22 Jun 2023 22:57:59 +0200 (CEST) Received: by mail-yb1-xb2f.google.com with SMTP id 3f1490d57ef6-bacf685150cso7078607276.3 for ; Thu, 22 Jun 2023 13:57:59 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::36]) by smtp.googlemail.com with ESMTPSA id d18-20020a5b0c52000000b00bc501a1b062sm1684937ybr.42.2023.06.22.13.57.56 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 22 Jun 2023 13:57:57 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 77d9f676-113f-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687467478; x=1690059478; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=DXYENedStYVsFXpaqy8X3+wmlabVR1q8JHyD5+dxFj0=; b=oWqJsihW3Mww2gXtWCx6NN1vPsnSmScA0KqTPfHOB2L1LHk/oZiCduo6ehbRGsj3u1 3K4TZcf4ipLxkr2vI99P6IIjGRev7x1HMuDNE81bxWMzhRU6uyioFzTZTsBBM3X8iluN tBK6Y8stl1G/1qCE5N0GQ3Qa+8Pmm+N03Nm44USTvnLt7V5LvALEjdohUoDqU7kxuZLt IgowLw0bUJXUmFP7v8RMzC0EWbABefmvZCJB+fh5ayxmmTYy0RtnueLq29qEPJSsxOpa bu8Ei1mTrJukofeSyNP/F3QTQ4sGlZhg7IWdEGo85alo6ycJggU6oX8hiEo/eX8VwR76 IyqQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687467478; x=1690059478; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=DXYENedStYVsFXpaqy8X3+wmlabVR1q8JHyD5+dxFj0=; b=S+YSsap9GRlXpj0ZbAxkvWrEBAACls2dJ6dalEuHq+6/kx+FSYpOXpJjd1cPfR8MQS 9QrGJj108k79D4YN9ApYqE0oQ/qTnNz+freprV0vol39RPZDIlOI6eikLyC89A+2jQfX bWmy5oGQNzI/RW8x8M0b3Zf8nPW5i9GQd4iC1VdNG7+bVfZ7ten13G6d9BbD+xYGxMEk rV4cUF8JqIfHM8GtUfQ6j9kLXDl/hm6bROy48AVwHvcN6wumt6M31hylvYY+sxa/a0Fe rrPscrKP/EaiyxL/Hz3PVFYpke1/+OQdmfbwqKJCp82TsmMkHuJAkhB9M9B5L1IPWBf/ /SHg== X-Gm-Message-State: AC+VfDz9Q5oPznWXqKVincy2dgaXwkpvomoKLICpIMaF9eA0SNhAbPkY ub4eOEBPXkILzSZvTEFM55E= X-Google-Smtp-Source: ACHHUZ6Iv2PzBVPKZ2hNXXGWhZAWkMVnsSNpndVsfJ1BDlCBJeA25OFgV2XyKC6amBhVDhSuupua4g== X-Received: by 2002:a25:2fce:0:b0:bac:2a78:aaa7 with SMTP id v197-20020a252fce000000b00bac2a78aaa7mr16148309ybv.54.1687467478063; Thu, 22 Jun 2023 13:57:58 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" , Mike Rapoport Subject: [PATCH v5 01/33] mm: Add PAGE_TYPE_OP folio functions Date: Thu, 22 Jun 2023 13:57:13 -0700 Message-Id: <20230622205745.79707-2-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230622205745.79707-1-vishal.moola@gmail.com> References: <20230622205745.79707-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit No folio equivalents for page type operations have been defined, so define them for later folio conversions. Also changes the Page##uname macros to take in const struct page* since we only read the memory here. Signed-off-by: Vishal Moola (Oracle) Acked-by: Mike Rapoport (IBM) --- include/linux/page-flags.h | 30 +++++++++++++++++++++++------- 1 file changed, 23 insertions(+), 7 deletions(-) diff --git a/include/linux/page-flags.h b/include/linux/page-flags.h index 92a2063a0a23..9218028caf33 100644 --- a/include/linux/page-flags.h +++ b/include/linux/page-flags.h @@ -908,6 +908,8 @@ static inline bool is_page_hwpoison(struct page *page) #define PageType(page, flag) \ ((page->page_type & (PAGE_TYPE_BASE | flag)) == PAGE_TYPE_BASE) +#define folio_test_type(folio, flag) \ + ((folio->page.page_type & (PAGE_TYPE_BASE | flag)) == PAGE_TYPE_BASE) static inline int page_type_has_type(unsigned int page_type) { @@ -919,27 +921,41 @@ static inline int page_has_type(struct page *page) return page_type_has_type(page->page_type); } -#define PAGE_TYPE_OPS(uname, lname) \ -static __always_inline int Page##uname(struct page *page) \ +#define PAGE_TYPE_OPS(uname, lname, fname) \ +static __always_inline int Page##uname(const struct page *page) \ { \ return PageType(page, PG_##lname); \ } \ +static __always_inline int folio_test_##fname(const struct folio *folio)\ +{ \ + return folio_test_type(folio, PG_##lname); \ +} \ static __always_inline void __SetPage##uname(struct page *page) \ { \ VM_BUG_ON_PAGE(!PageType(page, 0), page); \ page->page_type &= ~PG_##lname; \ } \ +static __always_inline void __folio_set_##fname(struct folio *folio) \ +{ \ + VM_BUG_ON_FOLIO(!folio_test_type(folio, 0), folio); \ + folio->page.page_type &= ~PG_##lname; \ +} \ static __always_inline void __ClearPage##uname(struct page *page) \ { \ VM_BUG_ON_PAGE(!Page##uname(page), page); \ page->page_type |= PG_##lname; \ -} +} \ +static __always_inline void __folio_clear_##fname(struct folio *folio) \ +{ \ + VM_BUG_ON_FOLIO(!folio_test_##fname(folio), folio); \ + folio->page.page_type |= PG_##lname; \ +} \ /* * PageBuddy() indicates that the page is free and in the buddy system * (see mm/page_alloc.c). */ -PAGE_TYPE_OPS(Buddy, buddy) +PAGE_TYPE_OPS(Buddy, buddy, buddy) /* * PageOffline() indicates that the page is logically offline although the @@ -963,7 +979,7 @@ PAGE_TYPE_OPS(Buddy, buddy) * pages should check PageOffline() and synchronize with such drivers using * page_offline_freeze()/page_offline_thaw(). */ -PAGE_TYPE_OPS(Offline, offline) +PAGE_TYPE_OPS(Offline, offline, offline) extern void page_offline_freeze(void); extern void page_offline_thaw(void); @@ -973,12 +989,12 @@ extern void page_offline_end(void); /* * Marks pages in use as page tables. */ -PAGE_TYPE_OPS(Table, table) +PAGE_TYPE_OPS(Table, table, pgtable) /* * Marks guardpages used with debug_pagealloc. */ -PAGE_TYPE_OPS(Guard, guard) +PAGE_TYPE_OPS(Guard, guard, guard) extern bool is_free_buddy_page(struct page *page); -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 22 20:58:09 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 20:58:09 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553948.864881 (Exim 4.92) (envelope-from ) id 1qCRNY-0008Sq-7o; Thu, 22 Jun 2023 20:58:08 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553948.864881; Thu, 22 Jun 2023 20:58:08 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCRNY-0008Sf-4I; Thu, 22 Jun 2023 20:58:08 +0000 Received: by outflank-mailman (input) for mailman id 553948; Thu, 22 Jun 2023 20:58:06 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCRNW-0006Mq-Js for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 20:58:06 +0000 Received: from mail-yw1-x112c.google.com (mail-yw1-x112c.google.com [2607:f8b0:4864:20::112c]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 7bae8cb6-113f-11ee-b237-6b7b168915f2; Thu, 22 Jun 2023 22:58:06 +0200 (CEST) Received: by mail-yw1-x112c.google.com with SMTP id 00721157ae682-57023c9be80so77528187b3.3 for ; Thu, 22 Jun 2023 13:58:05 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::36]) by smtp.googlemail.com with ESMTPSA id d18-20020a5b0c52000000b00bc501a1b062sm1684937ybr.42.2023.06.22.13.58.02 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 22 Jun 2023 13:58:04 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 7bae8cb6-113f-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687467484; x=1690059484; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=HtFJ7gYDDt6nFtJ3t4rf4iEtrxS/aE7Nt5tBsex6r9A=; b=ZxYyU7k2vGalXaPVFbsAoA3LfcjeLDhIOlxkMUoxB7wD5DzRvEzQGJZMJxTOPdFAYE GF8H8J3v3pIjRre3uBFGoQhrehz40XLVdSwrbVpckO4S1lcUeENHrNTK6kfLjGoHYzvr nhXtSSc9VaEE/j5fCXHdi35T0qtxrEHQkX2kvNCXyGYBu1DiUkeGGXiy91rFgYuyJidG yhM8UfJ79m5utnGApQW/CB4uav8Cyl/ViwcY0GfzkowvqJFo3jCDUp7w3xYorcQhuQVB Ccqw/rMENg5s9Xp75lULxIZiDzj7mDSoiTj8XYlqSon7icuirfeluYeOq+6o64D11tV3 SMqQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687467484; x=1690059484; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=HtFJ7gYDDt6nFtJ3t4rf4iEtrxS/aE7Nt5tBsex6r9A=; b=jOI5cWux4Tdrck/LIoq2uJDBOlApyRf0JALZMdgbClW1ZcUXeVJobgoV0Gq4olL5zi ucGf9MK+fOAQEFyuY44s7RxVLpWrHW3cLuKK5qm24MiGMzmsj3AjYfIVuxjR5ff7pWjV LMQl0hF/rKgHH6SXv6bGoyHz7hVCwChlNqlmfJHrTNhwLuYma5K3a/qGeG1q5ZNgg+IA xQD9vOw3hoRKVgHmwd9KBonO9ksYwAeBOL98/Jg3frhJvMCFNvesEXlFZg5ydd6l+psL SWZOAODSX5dMFavXlN9Rf6bpBzgz424eHEv+XO3xjcNBHLcYsyYaDxi+drdAPcoV5j9h sYDQ== X-Gm-Message-State: AC+VfDzuDU8EG+UeIRaqM092jO9BxO9kFsjp8Ol0drtknwoDqaw+lxfm nlE6xfplrZHvqI9KMlP8ot0= X-Google-Smtp-Source: ACHHUZ5hnxQ163/uFnii7yUzhLCvlKkxDndNuqoPVJ1DEXuk1sFzA/lJHmZOgLxy0t1IuUHDUPN6qA== X-Received: by 2002:a25:df84:0:b0:bcc:f2cc:73e with SMTP id w126-20020a25df84000000b00bccf2cc073emr16743014ybg.22.1687467484442; Thu, 22 Jun 2023 13:58:04 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" Subject: [PATCH v5 04/33] mm: add utility functions for ptdesc Date: Thu, 22 Jun 2023 13:57:16 -0700 Message-Id: <20230622205745.79707-5-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230622205745.79707-1-vishal.moola@gmail.com> References: <20230622205745.79707-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Introduce utility functions setting the foundation for ptdescs. These will also assist in the splitting out of ptdesc from struct page. Functions that focus on the descriptor are prefixed with ptdesc_* while functions that focus on the pagetable are prefixed with pagetable_*. pagetable_alloc() is defined to allocate new ptdesc pages as compound pages. This is to standardize ptdescs by allowing for one allocation and one free function, in contrast to 2 allocation and 2 free functions. Signed-off-by: Vishal Moola (Oracle) --- include/asm-generic/tlb.h | 11 ++++++++ include/linux/mm.h | 56 +++++++++++++++++++++++++++++++++++++++ include/linux/pgtable.h | 12 +++++++++ 3 files changed, 79 insertions(+) diff --git a/include/asm-generic/tlb.h b/include/asm-generic/tlb.h index b46617207c93..6bade9e0e799 100644 --- a/include/asm-generic/tlb.h +++ b/include/asm-generic/tlb.h @@ -481,6 +481,17 @@ static inline void tlb_remove_page(struct mmu_gather *tlb, struct page *page) return tlb_remove_page_size(tlb, page, PAGE_SIZE); } +static inline void tlb_remove_ptdesc(struct mmu_gather *tlb, void *pt) +{ + tlb_remove_table(tlb, pt); +} + +/* Like tlb_remove_ptdesc, but for page-like page directories. */ +static inline void tlb_remove_page_ptdesc(struct mmu_gather *tlb, struct ptdesc *pt) +{ + tlb_remove_page(tlb, ptdesc_page(pt)); +} + static inline void tlb_change_page_size(struct mmu_gather *tlb, unsigned int page_size) { diff --git a/include/linux/mm.h b/include/linux/mm.h index 0dad5f40ef96..14d95d494958 100644 --- a/include/linux/mm.h +++ b/include/linux/mm.h @@ -2744,6 +2744,57 @@ static inline pmd_t *pmd_alloc(struct mm_struct *mm, pud_t *pud, unsigned long a } #endif /* CONFIG_MMU */ +static inline struct ptdesc *virt_to_ptdesc(const void *x) +{ + return page_ptdesc(virt_to_page(x)); +} + +static inline void *ptdesc_to_virt(const struct ptdesc *pt) +{ + return page_to_virt(ptdesc_page(pt)); +} + +static inline void *ptdesc_address(const struct ptdesc *pt) +{ + return folio_address(ptdesc_folio(pt)); +} + +static inline bool pagetable_is_reserved(struct ptdesc *pt) +{ + return folio_test_reserved(ptdesc_folio(pt)); +} + +/** + * pagetable_alloc - Allocate pagetables + * @gfp: GFP flags + * @order: desired pagetable order + * + * pagetable_alloc allocates memory for page tables as well as a page table + * descriptor to describe that memory. + * + * Return: The ptdesc describing the allocated page tables. + */ +static inline struct ptdesc *pagetable_alloc(gfp_t gfp, unsigned int order) +{ + struct page *page = alloc_pages(gfp | __GFP_COMP, order); + + return page_ptdesc(page); +} + +/** + * pagetable_free - Free pagetables + * @pt: The page table descriptor + * + * pagetable_free frees the memory of all page tables described by a page + * table descriptor and the memory for the descriptor itself. + */ +static inline void pagetable_free(struct ptdesc *pt) +{ + struct page *page = ptdesc_page(pt); + + __free_pages(page, compound_order(page)); +} + #if USE_SPLIT_PTE_PTLOCKS #if ALLOC_SPLIT_PTLOCKS void __init ptlock_cache_init(void); @@ -2981,6 +3032,11 @@ static inline void mark_page_reserved(struct page *page) adjust_managed_page_count(page, -1); } +static inline void free_reserved_ptdesc(struct ptdesc *pt) +{ + free_reserved_page(ptdesc_page(pt)); +} + /* * Default method to free all the __init memory into the buddy system. * The freed pages will be poisoned with pattern "poison" if it's within diff --git a/include/linux/pgtable.h b/include/linux/pgtable.h index d46cb709ce08..e9bb5f18cade 100644 --- a/include/linux/pgtable.h +++ b/include/linux/pgtable.h @@ -1055,6 +1055,18 @@ TABLE_MATCH(memcg_data, pt_memcg_data); #undef TABLE_MATCH static_assert(sizeof(struct ptdesc) <= sizeof(struct page)); +#define ptdesc_page(pt) (_Generic((pt), \ + const struct ptdesc *: (const struct page *)(pt), \ + struct ptdesc *: (struct page *)(pt))) + +#define ptdesc_folio(pt) (_Generic((pt), \ + const struct ptdesc *: (const struct folio *)(pt), \ + struct ptdesc *: (struct folio *)(pt))) + +#define page_ptdesc(p) (_Generic((p), \ + const struct page *: (const struct ptdesc *)(p), \ + struct page *: (struct ptdesc *)(p))) + /* * No-op macros that just return the current protection value. Defined here * because these macros can be used even if CONFIG_MMU is not defined. -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 22 20:58:09 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 20:58:09 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553945.864850 (Exim 4.92) (envelope-from ) id 1qCRNU-0007bz-Ox; Thu, 22 Jun 2023 20:58:04 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553945.864850; Thu, 22 Jun 2023 20:58:04 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCRNU-0007bn-LB; Thu, 22 Jun 2023 20:58:04 +0000 Received: by outflank-mailman (input) for mailman id 553945; Thu, 22 Jun 2023 20:58:03 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCRNT-0006Mq-1p for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 20:58:03 +0000 Received: from raptorengineering.com (mail.raptorengineering.com [23.155.224.40]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 7945a7ed-113f-11ee-b237-6b7b168915f2; Thu, 22 Jun 2023 22:58:01 +0200 (CEST) Received: from localhost (localhost [127.0.0.1]) by mail.rptsys.com (Postfix) with ESMTP id C60CF8285ABF; Thu, 22 Jun 2023 15:58:00 -0500 (CDT) Received: from mail.rptsys.com ([127.0.0.1]) by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032) with ESMTP id QFWC1SkzkWWR; Thu, 22 Jun 2023 15:57:56 -0500 (CDT) Received: from localhost (localhost [127.0.0.1]) by mail.rptsys.com (Postfix) with ESMTP id F1B5B8285AF6; Thu, 22 Jun 2023 15:57:55 -0500 (CDT) Received: from mail.rptsys.com ([127.0.0.1]) by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id 9IsPZEXyVa-E; Thu, 22 Jun 2023 15:57:55 -0500 (CDT) Received: from raptor-ewks-026.lan (5.edge.rptsys.com [23.155.224.38]) by mail.rptsys.com (Postfix) with ESMTPSA id 3FA458285AEA; Thu, 22 Jun 2023 15:57:55 -0500 (CDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 7945a7ed-113f-11ee-b237-6b7b168915f2 DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com F1B5B8285AF6 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD; t=1687467476; bh=2IeIA603t7+iBsmSzYwktszzqi9qo8xSGlXjVBpaTZc=; h=From:To:Date:Message-Id:MIME-Version; b=DAOKHwGc3BpzP/7gIVDOgbXFIX+WPKiX+TVa8dgzJH2dfwMiJCMfM2/CLi5BZ9LlO GKMxC75I2HyTU9snRq9VBvUYC9pA9RvaTcCXMMsQDaZhs4l5nVz4qumfphQ9XgjUJR lwSngATZLb/t1j6+iXaIkUvWdcPz8jgtnr24m0Uo= X-Virus-Scanned: amavisd-new at rptsys.com From: Shawn Anastasio To: xen-devel@lists.xenproject.org Cc: Timothy Pearson , Andrew Cooper , Jan Beulich , Julien Grall , Shawn Anastasio Subject: [PATCH v2 2/3] xen/ppc: Implement early serial printk on pseries Date: Thu, 22 Jun 2023 15:57:49 -0500 Message-Id: X-Mailer: git-send-email 2.30.2 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable On typical Power VMs (e.g. QEMU's -M pseries), a variety of services including an early serial console are provided by Open Firmware. Implement the required interfaces to call into Open Firmware and write to the serial console. Since Open Firmware runs in 32-bit Big Endian mode and Xen runs in 64-bit Little Endian mode, a thunk is required to save/restore any potentially-clobbered registers as well as to perform the required endianness switch. Thankfully, linux already has such a routine, which was imported into ppc64/of-call.S. Support for bare metal (PowerNV) will be implemented in a future patch. Signed-off-by: Shawn Anastasio --- xen/arch/ppc/Kconfig.debug | 5 + xen/arch/ppc/Makefile | 2 + xen/arch/ppc/boot-of.c | 100 +++++++++++++++++ xen/arch/ppc/configs/ppc64_defconfig | 1 + xen/arch/ppc/early_printk.c | 28 +++++ xen/arch/ppc/include/asm/asm-defns.h | 17 +++ xen/arch/ppc/include/asm/boot.h | 23 ++++ xen/arch/ppc/include/asm/byteorder.h | 12 +++ xen/arch/ppc/include/asm/early_printk.h | 15 +++ xen/arch/ppc/include/asm/msr.h | 51 +++++++++ xen/arch/ppc/include/asm/processor.h | 136 ++++++++++++++++++++++++ xen/arch/ppc/include/asm/types.h | 21 ++++ xen/arch/ppc/ppc64/Makefile | 1 + xen/arch/ppc/ppc64/asm-offsets.c | 55 ++++++++++ xen/arch/ppc/ppc64/of-call.S | 83 +++++++++++++++ xen/arch/ppc/setup.c | 15 +++ 16 files changed, 565 insertions(+) create mode 100644 xen/arch/ppc/boot-of.c create mode 100644 xen/arch/ppc/early_printk.c create mode 100644 xen/arch/ppc/include/asm/boot.h create mode 100644 xen/arch/ppc/include/asm/byteorder.h create mode 100644 xen/arch/ppc/include/asm/early_printk.h create mode 100644 xen/arch/ppc/include/asm/msr.h create mode 100644 xen/arch/ppc/include/asm/processor.h create mode 100644 xen/arch/ppc/include/asm/types.h create mode 100644 xen/arch/ppc/ppc64/of-call.S diff --git a/xen/arch/ppc/Kconfig.debug b/xen/arch/ppc/Kconfig.debug index e69de29bb2..608c9ff832 100644 --- a/xen/arch/ppc/Kconfig.debug +++ b/xen/arch/ppc/Kconfig.debug @@ -0,0 +1,5 @@ +config EARLY_PRINTK + bool "Enable early printk" + default DEBUG + help + Enables early printk debug messages diff --git a/xen/arch/ppc/Makefile b/xen/arch/ppc/Makefile index fdbcd730d0..ddc6b09513 100644 --- a/xen/arch/ppc/Makefile +++ b/xen/arch/ppc/Makefile @@ -1,4 +1,6 @@ obj-$(CONFIG_PPC64) +=3D ppc64/ +obj-y +=3D boot-of.init.o +obj-$(CONFIG_EARLY_PRINTK) +=3D early_printk.o obj-y +=3D setup.o =20 $(TARGET): $(TARGET)-syms diff --git a/xen/arch/ppc/boot-of.c b/xen/arch/ppc/boot-of.c new file mode 100644 index 0000000000..6c69ca94ba --- /dev/null +++ b/xen/arch/ppc/boot-of.c @@ -0,0 +1,100 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ +/* + * Copyright IBM Corp. 2005, 2006, 2007 + * Copyright Raptor Engineering, LLC + * + * Authors: Jimi Xenidis + * Hollis Blanchard + * Shawn Anastasio + */ + +#include +#include +#include +#include +#include +#include + +#define ADDR(x) (uint32_t)(unsigned long)(x) + +/* OF entrypoint*/ +static unsigned long __initdata of_vec; + +/* OF device handles*/ +static int __initdata bof_chosen; +static int __initdata of_out; + +static int __init of_call(const char *service, uint32_t nargs, uint32_t = nrets, + int32_t rets[], ...) +{ + int rc; + va_list args; + int i; + struct of_service s =3D { 0 }; + + s.ofs_service =3D cpu_to_be32(ADDR(service)); + s.ofs_nargs =3D cpu_to_be32(nargs); + s.ofs_nrets =3D cpu_to_be32(nrets); + + /* copy all the params into the args array */ + va_start(args, rets); + + for ( i =3D 0; i < nargs; i++ ) + s.ofs_args[i] =3D cpu_to_be32(va_arg(args, uint32_t)); + + va_end(args); + + rc =3D enter_of(&s, of_vec); + + /* copy all return values to the output rets array */ + for ( i =3D 0; i < nrets; i++ ) + rets[i] =3D be32_to_cpu(s.ofs_args[i + nargs]); + + return rc; +} + +static int __init of_finddevice(const char *devspec) +{ + int rets[1] =3D { OF_FAILURE }; + + of_call("finddevice", 1, 1, rets, devspec); + return rets[0]; +} + +static int __init of_getprop(int ph, const char *name, void *buf, uint32= _t buflen) +{ + int rets[1] =3D { OF_FAILURE }; + + of_call("getprop", 4, 1, rets, ph, ADDR(name), buf, buflen); + return rets[0]; +} + +int __init of_write(int ih, const char *addr, uint32_t len) +{ + int rets[1] =3D { OF_FAILURE }; + + of_call("write", 3, 1, rets, ih, addr, len); + return rets[0]; +} + +static void __init of_putchar(char c) +{ + if ( c =3D=3D '\n' ) + { + char buf =3D '\r'; + of_write(of_out, &buf, 1); + } + of_write(of_out, &c, 1); +} + +void __init boot_of_init(unsigned long vec) +{ + of_vec =3D vec; + + /* Get a handle to the default console */ + bof_chosen =3D of_finddevice("/chosen"); + of_getprop(bof_chosen, "stdout", &of_out, sizeof(of_out)); + of_out =3D be32_to_cpu(of_out); + + early_printk_init(of_putchar); +} diff --git a/xen/arch/ppc/configs/ppc64_defconfig b/xen/arch/ppc/configs/= ppc64_defconfig index 8783eb3488..f7cc075e45 100644 --- a/xen/arch/ppc/configs/ppc64_defconfig +++ b/xen/arch/ppc/configs/ppc64_defconfig @@ -10,4 +10,5 @@ CONFIG_PPC64=3Dy CONFIG_DEBUG=3Dy CONFIG_DEBUG_INFO=3Dy +CONFIG_EARLY_PRINTK=3Dy CONFIG_EXPERT=3Dy diff --git a/xen/arch/ppc/early_printk.c b/xen/arch/ppc/early_printk.c new file mode 100644 index 0000000000..c5014945ef --- /dev/null +++ b/xen/arch/ppc/early_printk.c @@ -0,0 +1,28 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ +#include +#include + +static void (*putchar_func)(char); + +void __init early_printk_init(void (*putchar)(char)) +{ + putchar_func =3D putchar; +} + +void __init early_puts(const char *s, size_t nr) +{ + if ( !putchar_func ) + return; + + while ( nr-- > 0 ) + putchar_func(*s++); +} + +void __init early_printk(const char *s) +{ + if ( !putchar_func ) + return; + + while ( *s ) + putchar_func(*s++); +} diff --git a/xen/arch/ppc/include/asm/asm-defns.h b/xen/arch/ppc/include/= asm/asm-defns.h index 3db2063a39..e7cdc9c68c 100644 --- a/xen/arch/ppc/include/asm/asm-defns.h +++ b/xen/arch/ppc/include/asm/asm-defns.h @@ -33,4 +33,21 @@ .long 0xa6037b7d; /* mtsrr1 r11 */ = \ .long 0x2400004c /* rfid */ =20 + +/* Taken from Linux kernel source (arch/powerpc/boot/crt0.S) */ +.macro OP_REGS op, width, start, end, base, offset + .Lreg=3D\start + .rept (\end - \start + 1) + \op .Lreg,\offset+\width*.Lreg(\base) + .Lreg=3D.Lreg+1 + .endr +.endm + +#define SAVE_GPRS(start, end, base) OP_REGS std, 8, start, end, base, 0 +#define REST_GPRS(start, end, base) OP_REGS ld, 8, start, end, base, 0 +#define SAVE_GPR(n, base) SAVE_GPRS(n, n, base) +#define REST_GPR(n, base) REST_GPRS(n, n, base) +#define SAVE_NVGPRS(base) SAVE_GPRS(14, 31, base) +#define REST_NVGPRS(base) REST_GPRS(14, 31, base) + #endif /* _ASM_PPC_ASM_DEFNS_H */ diff --git a/xen/arch/ppc/include/asm/boot.h b/xen/arch/ppc/include/asm/b= oot.h new file mode 100644 index 0000000000..9b8a7c43c2 --- /dev/null +++ b/xen/arch/ppc/include/asm/boot.h @@ -0,0 +1,23 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ +#ifndef _ASM_PPC_BOOT_H +#define _ASM_PPC_BOOT_H + +#include + +/* a collection of interfaces used during boot. */ +enum { + OF_FAILURE =3D -1, + OF_SUCCESS =3D 0, +}; + +struct of_service { + __be32 ofs_service; + __be32 ofs_nargs; + __be32 ofs_nrets; + __be32 ofs_args[10]; +}; + +int enter_of(struct of_service *args, unsigned long entry); +void boot_of_init(unsigned long vec); + +#endif /* _ASM_PPC_BOOT_H */ diff --git a/xen/arch/ppc/include/asm/byteorder.h b/xen/arch/ppc/include/= asm/byteorder.h new file mode 100644 index 0000000000..2b5f6b9f63 --- /dev/null +++ b/xen/arch/ppc/include/asm/byteorder.h @@ -0,0 +1,12 @@ +#ifndef _ASM_PPC_BYTEORDER_H +#define _ASM_PPC_BYTEORDER_H + +#define __arch__swab16 __builtin_bswap16 +#define __arch__swab32 __builtin_bswap32 +#define __arch__swab64 __builtin_bswap64 + +#define __BYTEORDER_HAS_U64__ + +#include + +#endif /* _ASM_PPC_BYTEORDER_H */ diff --git a/xen/arch/ppc/include/asm/early_printk.h b/xen/arch/ppc/inclu= de/asm/early_printk.h new file mode 100644 index 0000000000..d1d8b416f4 --- /dev/null +++ b/xen/arch/ppc/include/asm/early_printk.h @@ -0,0 +1,15 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ +#ifndef _ASM_PPC_EARLY_PRINTK_H +#define _ASM_PPC_EARLY_PRINTK_H + +#include + +#ifdef CONFIG_EARLY_PRINTK +void early_printk_init(void (*putchar)(char)); +void early_printk(const char *s); +#else +static inline void early_printk_init(void (*putchar)(char)) {} +static inline void early_printk(const char *s) {} +#endif + +#endif /* _ASM_PPC_EARLY_PRINTK_H */ diff --git a/xen/arch/ppc/include/asm/msr.h b/xen/arch/ppc/include/asm/ms= r.h new file mode 100644 index 0000000000..144511e5c3 --- /dev/null +++ b/xen/arch/ppc/include/asm/msr.h @@ -0,0 +1,51 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ +/* + * Copyright (C) IBM Corp. 2005 + * Copyright Raptor Engineering, LLC + * + * Authors: Jimi Xenidis + * Shawn Anastasio + */ + +#ifndef _ASM_PPC_MSR_H +#define _ASM_PPC_MSR_H + +#include + +/* Flags in MSR: */ +#define MSR_SF _AC(0x8000000000000000, ULL) +#define MSR_TA _AC(0x4000000000000000, ULL) +#define MSR_ISF _AC(0x2000000000000000, ULL) +#define MSR_HV _AC(0x1000000000000000, ULL) +#define MSR_VMX _AC(0x0000000002000000, ULL) +#define MSR_MER _AC(0x0000000000200000, ULL) +#define MSR_POW _AC(0x0000000000040000, ULL) +#define MSR_ILE _AC(0x0000000000010000, ULL) +#define MSR_EE _AC(0x0000000000008000, ULL) +#define MSR_PR _AC(0x0000000000004000, ULL) +#define MSR_FP _AC(0x0000000000002000, ULL) +#define MSR_ME _AC(0x0000000000001000, ULL) +#define MSR_FE0 _AC(0x0000000000000800, ULL) +#define MSR_SE _AC(0x0000000000000400, ULL) +#define MSR_BE _AC(0x0000000000000200, ULL) +#define MSR_FE1 _AC(0x0000000000000100, ULL) +#define MSR_IP _AC(0x0000000000000040, ULL) +#define MSR_IR _AC(0x0000000000000020, ULL) +#define MSR_DR _AC(0x0000000000000010, ULL) +#define MSR_PMM _AC(0x0000000000000004, ULL) +#define MSR_RI _AC(0x0000000000000002, ULL) +#define MSR_LE _AC(0x0000000000000001, ULL) + +/* MSR bits set on the systemsim simulator */ +#define MSR_SIM _AC(0x0000000020000000, ULL) +#define MSR_SYSTEMSIM _AC(0x0000000010000000, ULL) + +/* On a trap, srr1's copy of msr defines some bits as follows: */ +#define MSR_TRAP_FE _AC(0x0000000000100000, ULL) /* Floating Point E= xception */ +#define MSR_TRAP_IOP _AC(0x0000000000080000, ULL) /* Illegal Instruct= ion */ +#define MSR_TRAP_PRIV _AC(0x0000000000040000, ULL) /* Privileged Instr= uction */ +#define MSR_TRAP _AC(0x0000000000020000, ULL) /* Trap Instruction= */ +#define MSR_TRAP_NEXT _AC(0x0000000000010000, ULL) /* PC is next instr= uction */ +#define MSR_TRAP_BITS (MSR_TRAP_FE|MSR_TRAP_IOP|MSR_TRAP_PRIV|MSR_TRAP) + +#endif /* _ASM_PPC_MSR_H */ diff --git a/xen/arch/ppc/include/asm/processor.h b/xen/arch/ppc/include/= asm/processor.h new file mode 100644 index 0000000000..9fc0981266 --- /dev/null +++ b/xen/arch/ppc/include/asm/processor.h @@ -0,0 +1,136 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ +/* + * Copyright IBM Corp. 2005, 2006, 2007 + * Copyright Raptor Engineering, LLC + * + * Authors: Hollis Blanchard + * Christian Ehrhardt + * Timothy Pearson + * Shawn Anastasio + */ + +#ifndef _ASM_PPC_PROCESSOR_H +#define _ASM_PPC_PROCESSOR_H + +#include +#include + +#define IOBMP_BYTES 8192 +#define IOBMP_INVALID_OFFSET 0x8000 + +/* Processor Version Register (PVR) field extraction */ + +#define PVR_VER(pvr) (((pvr) >> 16) & 0xFFFF) /* Version field */ +#define PVR_REV(pvr) (((pvr) >> 0) & 0xFFFF) /* Revison field */ + +#define __is_processor(pv) (PVR_VER(mfspr(SPRN_PVR)) =3D=3D (pv)) + +/* + * IBM has further subdivided the standard PowerPC 16-bit version and + * revision subfields of the PVR for the PowerPC 403s into the following= : + */ + +#define PVR_FAM(pvr) (((pvr) >> 20) & 0xFFF) /* Family field */ +#define PVR_MEM(pvr) (((pvr) >> 16) & 0xF) /* Member field */ +#define PVR_CORE(pvr) (((pvr) >> 12) & 0xF) /* Core field */ +#define PVR_CFG(pvr) (((pvr) >> 8) & 0xF) /* Configuration field */ +#define PVR_MAJ(pvr) (((pvr) >> 4) & 0xF) /* Major revision field */ +#define PVR_MIN(pvr) (((pvr) >> 0) & 0xF) /* Minor revision field */ + +/* Processor Version Numbers */ + +#define PVR_403GA 0x00200000 +#define PVR_403GB 0x00200100 +#define PVR_403GC 0x00200200 +#define PVR_403GCX 0x00201400 +#define PVR_405GP 0x40110000 +#define PVR_STB03XXX 0x40310000 +#define PVR_NP405H 0x41410000 +#define PVR_NP405L 0x41610000 +#define PVR_601 0x00010000 +#define PVR_602 0x00050000 +#define PVR_603 0x00030000 +#define PVR_603e 0x00060000 +#define PVR_603ev 0x00070000 +#define PVR_603r 0x00071000 +#define PVR_604 0x00040000 +#define PVR_604e 0x00090000 +#define PVR_604r 0x000A0000 +#define PVR_620 0x00140000 +#define PVR_740 0x00080000 +#define PVR_750 PVR_740 +#define PVR_740P 0x10080000 +#define PVR_750P PVR_740P +#define PVR_7400 0x000C0000 +#define PVR_7410 0x800C0000 +#define PVR_7450 0x80000000 +#define PVR_8540 0x80200000 +#define PVR_8560 0x80200000 +/* + * For the 8xx processors, all of them report the same PVR family for + * the PowerPC core. The various versions of these processors must be + * differentiated by the version number in the Communication Processor + * Module (CPM). + */ +#define PVR_821 0x00500000 +#define PVR_823 PVR_821 +#define PVR_850 PVR_821 +#define PVR_860 PVR_821 +#define PVR_8240 0x00810100 +#define PVR_8245 0x80811014 +#define PVR_8260 PVR_8240 + +/* 64-bit processors */ +#define PVR_NORTHSTAR 0x0033 +#define PVR_PULSAR 0x0034 +#define PVR_POWER4 0x0035 +#define PVR_ICESTAR 0x0036 +#define PVR_SSTAR 0x0037 +#define PVR_POWER4p 0x0038 +#define PVR_970 0x0039 +#define PVR_POWER5 0x003A +#define PVR_POWER5p 0x003B +#define PVR_970FX 0x003C +#define PVR_POWER6 0x003E +#define PVR_POWER7 0x003F +#define PVR_630 0x0040 +#define PVR_630p 0x0041 +#define PVR_970MP 0x0044 +#define PVR_970GX 0x0045 +#define PVR_POWER7p 0x004A +#define PVR_POWER8E 0x004B +#define PVR_POWER8NVL 0x004C +#define PVR_POWER8 0x004D +#define PVR_POWER9 0x004E +#define PVR_POWER10 0x0080 +#define PVR_BE 0x0070 +#define PVR_PA6T 0x0090 + +#ifndef __ASSEMBLY__ + +#include + +/* User-accessible registers: nost of these need to be saved/restored + * for every nested Xen invocation. */ +struct cpu_user_regs +{ + uint64_t gprs[32]; + uint64_t lr; + uint64_t ctr; + uint64_t srr0; + uint64_t srr1; + uint64_t pc; + uint64_t msr; + uint64_t fpscr; + uint64_t xer; + uint64_t hid4; /* debug only */ + uint64_t dar; /* debug only */ + uint32_t dsisr; /* debug only */ + uint32_t cr; + uint32_t __pad; /* good spot for another 32bit reg */ + uint32_t entry_vector; +}; + +#endif + +#endif /* _ASM_PPC_PROCESSOR_H */ diff --git a/xen/arch/ppc/include/asm/types.h b/xen/arch/ppc/include/asm/= types.h new file mode 100644 index 0000000000..cee08e111a --- /dev/null +++ b/xen/arch/ppc/include/asm/types.h @@ -0,0 +1,21 @@ +/* from xen/arch/x86/include/asm/types.h */ + +#ifndef _ASM_PPC_TYPES_H +#define _ASM_PPC_TYPES_H + +typedef signed char s8; +typedef unsigned char u8; + +typedef signed short s16; +typedef unsigned short u16; + +typedef signed int s32; +typedef unsigned int u32; + +typedef signed long s64; +typedef unsigned long u64; +typedef unsigned long paddr_t; +#define INVALID_PADDR (~0UL) +#define PRIpaddr "016lx" + +#endif /* _ASM_PPC_TYPES_H */ diff --git a/xen/arch/ppc/ppc64/Makefile b/xen/arch/ppc/ppc64/Makefile index 3340058c08..f4956daaa9 100644 --- a/xen/arch/ppc/ppc64/Makefile +++ b/xen/arch/ppc/ppc64/Makefile @@ -1 +1,2 @@ obj-y +=3D head.o +obj-y +=3D of-call.o diff --git a/xen/arch/ppc/ppc64/asm-offsets.c b/xen/arch/ppc/ppc64/asm-of= fsets.c index e69de29bb2..a6de2b2768 100644 --- a/xen/arch/ppc/ppc64/asm-offsets.c +++ b/xen/arch/ppc/ppc64/asm-offsets.c @@ -0,0 +1,55 @@ +/* + * Generate definitions needed by assembly language modules. + * This code generates raw asm output which is post-processed + * to extract and format the required data. + */ + +#include + +#define DEFINE(_sym, _val) = \ + asm volatile ("\n.ascii\"=3D=3D>#define " #_sym " %0 /* " #_val " */= <=3D=3D\"" \ + : : "i" (_val) ) +#define BLANK() = \ + asm volatile ( "\n.ascii\"=3D=3D><=3D=3D\"" : : ) +#define OFFSET(_sym, _str, _mem) = \ + DEFINE(_sym, offsetof(_str, _mem)); + +/* base-2 logarithm */ +#define __L2(_x) (((_x) & 0x00000002) ? 1 : 0) +#define __L4(_x) (((_x) & 0x0000000c) ? ( 2 + __L2( (_x)>> 2)) : __L2( = _x)) +#define __L8(_x) (((_x) & 0x000000f0) ? ( 4 + __L4( (_x)>> 4)) : __L4( = _x)) +#define __L16(_x) (((_x) & 0x0000ff00) ? ( 8 + __L8( (_x)>> 8)) : __L8( = _x)) +#define LOG_2(_x) (((_x) & 0xffff0000) ? (16 + __L16((_x)>>16)) : __L16(= _x)) + +void __dummy__(void) +{ + DEFINE(GPR_WIDTH, sizeof(unsigned long)); + DEFINE(FPR_WIDTH, sizeof(double)); + + OFFSET(UREGS_gprs, struct cpu_user_regs, gprs); + OFFSET(UREGS_r0, struct cpu_user_regs, gprs[0]); + OFFSET(UREGS_r1, struct cpu_user_regs, gprs[1]); + OFFSET(UREGS_r13, struct cpu_user_regs, gprs[13]); + OFFSET(UREGS_srr0, struct cpu_user_regs, srr0); + OFFSET(UREGS_srr1, struct cpu_user_regs, srr1); + OFFSET(UREGS_pc, struct cpu_user_regs, pc); + OFFSET(UREGS_msr, struct cpu_user_regs, msr); + OFFSET(UREGS_lr, struct cpu_user_regs, lr); + OFFSET(UREGS_ctr, struct cpu_user_regs, ctr); + OFFSET(UREGS_xer, struct cpu_user_regs, xer); + OFFSET(UREGS_hid4, struct cpu_user_regs, hid4); + OFFSET(UREGS_dar, struct cpu_user_regs, dar); + OFFSET(UREGS_dsisr, struct cpu_user_regs, dsisr); + OFFSET(UREGS_cr, struct cpu_user_regs, cr); + OFFSET(UREGS_fpscr, struct cpu_user_regs, fpscr); + DEFINE(UREGS_sizeof, sizeof(struct cpu_user_regs)); +} + +/* + * Local variables: + * mode: C + * c-file-style: "BSD" + * c-basic-offset: 4 + * indent-tabs-mode: nil + * End: + */ diff --git a/xen/arch/ppc/ppc64/of-call.S b/xen/arch/ppc/ppc64/of-call.S new file mode 100644 index 0000000000..66065119d5 --- /dev/null +++ b/xen/arch/ppc/ppc64/of-call.S @@ -0,0 +1,83 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ +/* + * Adapted from Linux's arch/powerpc/kernel/entry_64.S, with the + * following copyright notice: + * + * PowerPC version + * Copyright (C) 1995-1996 Gary Thomas (gdt@linuxppc.org) + * Rewritten by Cort Dougan (cort@cs.nmt.edu) for PReP + * Copyright (C) 1996 Cort Dougan + * Adapted for Power Macintosh by Paul Mackerras. + * Low-level exception handlers and MMU support + * rewritten by Paul Mackerras. + * Copyright (C) 1996 Paul Mackerras. + * MPC8xx modifications Copyright (C) 1997 Dan Malek (dmalek@jlc.net). + */ + +#include +#include +#include + +/* size of minimum stack frame that can hold an entire cpu_user_regs str= uct */ +#define STACK_SWITCH_FRAME_SIZE (UREGS_sizeof + STACK_FRAME_OVERHEAD) + + .section .init.text, "ax", @progbits + +ENTRY(enter_of) + mflr %r0 + std %r0, 16(%r1) + stdu %r1,-STACK_SWITCH_FRAME_SIZE(%r1) /* Save SP and create stack s= pace */ + + /* + * Because PROM is running in 32b mode, it clobbers the high order h= alf + * of all registers that it saves. We therefore save those register= s + * PROM might touch to the stack. (%r0, %r3-%r13 are caller saved) + */ + SAVE_GPR(2, %r1) + SAVE_GPR(13, %r1) + SAVE_NVGPRS(%r1) + mfcr %r10 + mfmsr %r11 + std %r10, UREGS_cr(%r1) + std %r11, UREGS_msr(%r1) + + /* Put PROM address in SRR0 */ + mtsrr0 %r4 + + /* Setup our trampoline return addr in LR */ + bcl 20, 31,.+4 +0: mflr %r4 + addi %r4, %r4,(1f - 0b) + mtlr %r4 + + /* Prepare a 32-bit mode big endian MSR */ + LOAD_IMM64(%r12, MSR_SF | MSR_LE) + andc %r11, %r11, %r12 + mtsrr1 %r11 + rfid + +1: /* Return from OF */ + FIXUP_ENDIAN + + /* Just make sure that %r1 top 32 bits didn't get corrupt by OF */ + rldicl %r1, %r1, 0, 32 + + /* Restore the MSR (back to 64 bits) */ + ld %r0, UREGS_msr(%r1) + mtmsrd %r0 + isync + + /* Restore other registers */ + REST_GPR(2, %r1) + REST_GPR(13, %r1) + REST_NVGPRS(%r1) + ld %r4, UREGS_cr(%r1) + mtcr %r4 + + addi %r1, %r1, STACK_SWITCH_FRAME_SIZE + ld %r0, 16(%r1) + mtlr %r0 + blr + + .size enter_of, . - enter_of + .type enter_of, %function diff --git a/xen/arch/ppc/setup.c b/xen/arch/ppc/setup.c index 4d1b72fa23..1c58164286 100644 --- a/xen/arch/ppc/setup.c +++ b/xen/arch/ppc/setup.c @@ -1,10 +1,25 @@ /* SPDX-License-Identifier: GPL-2.0-or-later */ #include +#include +#include =20 void __init noreturn start_xen(unsigned long r3, unsigned long r4, unsigned long r5, unsigned long r6, unsigned long r7) { + if ( r5 ) + { + /* OpenFirmware boot protocol */ + boot_of_init(r5); + } + else + { + /* kexec boot: Unimplemented */ + __builtin_trap(); + } + + early_printk("Hello, ppc64le!\n"); + for ( ;; ) /* Set current hardware thread to very low priority */ asm volatile("or %r31, %r31, %r31"); --=20 2.30.2 From xen-devel-bounces@lists.xenproject.org Thu Jun 22 20:58:09 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 20:58:09 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553941.864808 (Exim 4.92) (envelope-from ) id 1qCRNR-0006QB-7g; Thu, 22 Jun 2023 20:58:01 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553941.864808; Thu, 22 Jun 2023 20:58:01 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCRNQ-0006Oz-Vq; Thu, 22 Jun 2023 20:58:00 +0000 Received: by outflank-mailman (input) for mailman id 553941; Thu, 22 Jun 2023 20:57:59 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCRNP-0006Mq-KZ for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 20:57:59 +0000 Received: from raptorengineering.com (mail.raptorengineering.com [23.155.224.40]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 771b5655-113f-11ee-b237-6b7b168915f2; Thu, 22 Jun 2023 22:57:58 +0200 (CEST) Received: from localhost (localhost [127.0.0.1]) by mail.rptsys.com (Postfix) with ESMTP id 195248285AEA; Thu, 22 Jun 2023 15:57:57 -0500 (CDT) Received: from mail.rptsys.com ([127.0.0.1]) by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032) with ESMTP id f-44QZf4C7zK; Thu, 22 Jun 2023 15:57:56 -0500 (CDT) Received: from localhost (localhost [127.0.0.1]) by mail.rptsys.com (Postfix) with ESMTP id 6B1A38285ABF; Thu, 22 Jun 2023 15:57:56 -0500 (CDT) Received: from mail.rptsys.com ([127.0.0.1]) by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id v5traDQOubaK; Thu, 22 Jun 2023 15:57:56 -0500 (CDT) Received: from raptor-ewks-026.lan (5.edge.rptsys.com [23.155.224.38]) by mail.rptsys.com (Postfix) with ESMTPSA id B3FA38285AEC; Thu, 22 Jun 2023 15:57:55 -0500 (CDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 771b5655-113f-11ee-b237-6b7b168915f2 DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com 6B1A38285ABF DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD; t=1687467476; bh=By/cyaijYQTAGJgZfB6T8MO0SHbn04i59WFs7fwttoA=; h=From:To:Date:Message-Id:MIME-Version; b=HIgOfl4mPflnByR+AFp/3X5lBwmgwQUEYDjQaTx+JceAKTLSRwxy7gy7IkOgoT1Ux vxvPYbL/hyz0W/28jFss/nVCBR/Lg/dK/ztzBL3MYHp+MK011m4kksjL1Mt2asFyip uolp59wzcurJwzXXOwMrXogN8cY9gheYwUhPQ4EE= X-Virus-Scanned: amavisd-new at rptsys.com From: Shawn Anastasio To: xen-devel@lists.xenproject.org Cc: Timothy Pearson , Andrew Cooper , Jan Beulich , Julien Grall , Shawn Anastasio , Doug Goldstein , Stefano Stabellini Subject: [PATCH v2 3/3] automation: Add smoke test for ppc64le Date: Thu, 22 Jun 2023 15:57:50 -0500 Message-Id: X-Mailer: git-send-email 2.30.2 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Add an initial smoke test that boots xen on a ppc64/pseries machine and checks for a magic string. Based on the riscv smoke test. Eventually the powernv9 (POWER9 bare metal) machine type will want to be tested as well, but for now we only boot on pseries. Signed-off-by: Shawn Anastasio --- automation/gitlab-ci/test.yaml | 20 ++++++++++++++++++ automation/scripts/qemu-smoke-ppc64le.sh | 27 ++++++++++++++++++++++++ 2 files changed, 47 insertions(+) create mode 100755 automation/scripts/qemu-smoke-ppc64le.sh diff --git a/automation/gitlab-ci/test.yaml b/automation/gitlab-ci/test.y= aml index d5cb238b0a..45e8ddb7a3 100644 --- a/automation/gitlab-ci/test.yaml +++ b/automation/gitlab-ci/test.yaml @@ -71,6 +71,19 @@ tags: - x86_64 =20 +.qemu-ppc64le: + extends: .test-jobs-common + variables: + CONTAINER: debian:bullseye-ppc64le + LOGFILE: qemu-smoke-ppc64le.log + artifacts: + paths: + - smoke.serial + - '*.log' + when: always + tags: + - x86_64 + .xilinx-arm64: extends: .test-jobs-common variables: @@ -444,3 +457,10 @@ qemu-smoke-riscv64-gcc: - ./automation/scripts/qemu-smoke-riscv64.sh 2>&1 | tee ${LOGFILE} needs: - archlinux-current-gcc-riscv64-debug + +qemu-smoke-ppc64le-pseries-gcc: + extends: .qemu-ppc64le + script: + - ./automation/scripts/qemu-smoke-ppc64le.sh pseries-5.2 2>&1 | tee = ${LOGFILE} + needs: + - debian-bullseye-gcc-ppc64le-debug diff --git a/automation/scripts/qemu-smoke-ppc64le.sh b/automation/script= s/qemu-smoke-ppc64le.sh new file mode 100755 index 0000000000..eb55221221 --- /dev/null +++ b/automation/scripts/qemu-smoke-ppc64le.sh @@ -0,0 +1,27 @@ +#!/bin/bash + +set -ex + +# machine type from first arg passed directly to qemu -M +machine=3D$1 + +# Run the test +rm -f smoke.serial +set +e + +touch smoke.serial + +timeout -k 1 20 \ +qemu-system-ppc64 \ + -M $machine \ + -m 2g \ + -smp 1 \ + -vga none \ + -monitor none \ + -nographic \ + -serial file:smoke.serial \ + -kernel binaries/xen + +set -e +(grep -q "Hello, ppc64le!" smoke.serial) || exit 1 +exit 0 --=20 2.30.2 From xen-devel-bounces@lists.xenproject.org Thu Jun 22 20:58:09 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 20:58:09 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553942.864812 (Exim 4.92) (envelope-from ) id 1qCRNR-0006Vz-Ed; Thu, 22 Jun 2023 20:58:01 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553942.864812; Thu, 22 Jun 2023 20:58:01 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCRNR-0006Td-8V; Thu, 22 Jun 2023 20:58:01 +0000 Received: by outflank-mailman (input) for mailman id 553942; Thu, 22 Jun 2023 20:57:59 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCRNP-0006Mr-Lr for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 20:57:59 +0000 Received: from raptorengineering.com (mail.raptorengineering.com [23.155.224.40]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 765e0976-113f-11ee-8611-37d641c3527e; Thu, 22 Jun 2023 22:57:56 +0200 (CEST) Received: from localhost (localhost [127.0.0.1]) by mail.rptsys.com (Postfix) with ESMTP id E729B8285AE2; Thu, 22 Jun 2023 15:57:55 -0500 (CDT) Received: from mail.rptsys.com ([127.0.0.1]) by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032) with ESMTP id zYJAGN4Mu1JA; Thu, 22 Jun 2023 15:57:54 -0500 (CDT) Received: from localhost (localhost [127.0.0.1]) by mail.rptsys.com (Postfix) with ESMTP id CF88F8285AE5; Thu, 22 Jun 2023 15:57:54 -0500 (CDT) Received: from mail.rptsys.com ([127.0.0.1]) by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id LlOnPt1zgnWp; Thu, 22 Jun 2023 15:57:54 -0500 (CDT) Received: from raptor-ewks-026.lan (5.edge.rptsys.com [23.155.224.38]) by mail.rptsys.com (Postfix) with ESMTPSA id 399718285ABF; Thu, 22 Jun 2023 15:57:54 -0500 (CDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 765e0976-113f-11ee-8611-37d641c3527e DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com CF88F8285AE5 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD; t=1687467474; bh=0wj7QPlwOBqbHvF4gwVP4i4KfRt2HA9VfGoE95wa7yo=; h=From:To:Date:Message-Id:MIME-Version; b=jO+gBSvY47iiWUgEi0aThEBlqtzDH+eNQNJBI/VO54MrYZas342v/UXT8UiboyBx/ ewmkqXWPx4bPHSlAMwvCNkREEZ01tjGaw1uGT1SHQovf9p6s1JfNGBlBTwTsWid8NE YKSyeGlmJfQsabKYcDuE/TDrQ+60eDViKxeTnBZ8= X-Virus-Scanned: amavisd-new at rptsys.com From: Shawn Anastasio To: xen-devel@lists.xenproject.org Cc: Timothy Pearson , Andrew Cooper , Jan Beulich , Julien Grall , Shawn Anastasio , Doug Goldstein , Stefano Stabellini Subject: [PATCH v2 0/3] Early serial on Power Date: Thu, 22 Jun 2023 15:57:47 -0500 Message-Id: X-Mailer: git-send-email 2.30.2 MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Hello all, This series adds support for early serial printing on Power, as well as a simple CI smoke test modeled after the riscv one. The first patch is responsible for setting up a basic C environment with an initial stack and a cleared .bss while the second sets up an Open Firmware serial console and primitive early_printk infrastructure. Of note is that this series is currently based on the following series from Andrew Cooper: '[PATCH 0/2] xen/types: Cleanup' (https://lists.xenproject.org/archives/html/xen-devel/2023-06/msg01601.ht= ml) This will currently only run on QEMU pseries VMs, since the firmware interface on bare metal differs significantly. Support for bare metal will be added in a future series. Thanks, Shawn -- Changes in v2: - Split main patch into two - one for basic C environment setup and one for serial - Mark OpenFirmware functions and early_printk functions as __init and change boot-of.o to boot-of.init.o in Makefile - Change include to and drop skeleton headers that are no longer necessary for build as a result - Add loop to clear .bss before jumping to C environment that was accidentally excluded from the first series - Move common asm macros from processor.h to asm-defns.h - Change note in head.S about preserved registers to a multi-line comment so it's more noticeable - Drop reg-defs.h and use '%'-prefixed register names in assembly - This is necessary since -mregnames, which allows standard non-prefixed register names without manual macro definitions, is not supported by LLVM's assembler. - Drop inline asm swab routines in favor of __builtin_bswap family - Fix up types.h in accordance with (as of now, unmerged) 'xen/types: Rework stdint vs __{u,s}$N types' - Remove unnecessary braces for single-line statements - Remove unnecessary license text when SPDX header is present - Fix alphabetical ordering of object declarations in Makefile - Drop 'extern' from enter_of prototype, ensure prototypes have argument names Shawn Anastasio (3): xen/ppc: Set up a basic C environment xen/ppc: Implement early serial printk on pseries automation: Add smoke test for ppc64le automation/gitlab-ci/test.yaml | 20 ++++ automation/scripts/qemu-smoke-ppc64le.sh | 27 +++++ xen/arch/ppc/Kconfig.debug | 5 + xen/arch/ppc/Makefile | 3 + xen/arch/ppc/boot-of.c | 100 +++++++++++++++++ xen/arch/ppc/configs/ppc64_defconfig | 1 + xen/arch/ppc/early_printk.c | 28 +++++ xen/arch/ppc/include/asm/asm-defns.h | 53 +++++++++ xen/arch/ppc/include/asm/boot.h | 23 ++++ xen/arch/ppc/include/asm/byteorder.h | 12 ++ xen/arch/ppc/include/asm/early_printk.h | 15 +++ xen/arch/ppc/include/asm/msr.h | 51 +++++++++ xen/arch/ppc/include/asm/processor.h | 136 +++++++++++++++++++++++ xen/arch/ppc/include/asm/types.h | 21 ++++ xen/arch/ppc/ppc64/Makefile | 1 + xen/arch/ppc/ppc64/asm-offsets.c | 55 +++++++++ xen/arch/ppc/ppc64/head.S | 55 +++++---- xen/arch/ppc/ppc64/of-call.S | 83 ++++++++++++++ xen/arch/ppc/setup.c | 28 +++++ 19 files changed, 697 insertions(+), 20 deletions(-) create mode 100755 automation/scripts/qemu-smoke-ppc64le.sh create mode 100644 xen/arch/ppc/boot-of.c create mode 100644 xen/arch/ppc/early_printk.c create mode 100644 xen/arch/ppc/include/asm/asm-defns.h create mode 100644 xen/arch/ppc/include/asm/boot.h create mode 100644 xen/arch/ppc/include/asm/byteorder.h create mode 100644 xen/arch/ppc/include/asm/early_printk.h create mode 100644 xen/arch/ppc/include/asm/msr.h create mode 100644 xen/arch/ppc/include/asm/processor.h create mode 100644 xen/arch/ppc/include/asm/types.h create mode 100644 xen/arch/ppc/ppc64/of-call.S create mode 100644 xen/arch/ppc/setup.c -- 2.30.2 From xen-devel-bounces@lists.xenproject.org Thu Jun 22 20:58:09 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 20:58:09 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553946.864857 (Exim 4.92) (envelope-from ) id 1qCRNV-0007fx-9x; Thu, 22 Jun 2023 20:58:05 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553946.864857; Thu, 22 Jun 2023 20:58:05 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCRNV-0007fP-1x; Thu, 22 Jun 2023 20:58:05 +0000 Received: by outflank-mailman (input) for mailman id 553946; Thu, 22 Jun 2023 20:58:03 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCRNT-0006Mr-R8 for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 20:58:03 +0000 Received: from mail-yw1-x112a.google.com (mail-yw1-x112a.google.com [2607:f8b0:4864:20::112a]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 78eb08c4-113f-11ee-8611-37d641c3527e; Thu, 22 Jun 2023 22:58:01 +0200 (CEST) Received: by mail-yw1-x112a.google.com with SMTP id 00721157ae682-5700b15c12fso80345967b3.1 for ; Thu, 22 Jun 2023 13:58:01 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::36]) by smtp.googlemail.com with ESMTPSA id d18-20020a5b0c52000000b00bc501a1b062sm1684937ybr.42.2023.06.22.13.57.58 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 22 Jun 2023 13:57:59 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 78eb08c4-113f-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687467480; x=1690059480; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=qrvvNogNsRIG83AHolsa9VCJSL8m6r0U+Sd+5GfHivE=; b=KRYiTPa+c/tVoaJ+3dZS4cLOTSKca+/tfUQ3JeDVu73GmVqps7KdsafFOLBranRl3o XGASS552wrkc4i7AyqYqkBS9E2bGfVs6VaJjrSMpB6+h2kA8qTrBwdwXD7HZ0uPFkzEr mLs6bk2eo4sPlhjHz+uOvvGYISwwAmtTPhHFgzUAnDvPaqWpwBhojPMOt6opGt2D5oKC XNigZkqZiwfc5pQLxvwb1NwMN92RSQp6HSUhvqRpXqhTQWx6SqvyrTdy9r4JKWSpMkwF TX6dYagRDEjvQLY6rwycjttvIBm56ezZgGtKTQaL+AAx6Np6Okl1PvSd6YP7qp9YxIbi 4K0w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687467480; x=1690059480; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=qrvvNogNsRIG83AHolsa9VCJSL8m6r0U+Sd+5GfHivE=; b=Y8CFInypfIw5b+Te2+NNgozAzdcEQAos/fXuuxsRnJIe99TA0nhj3XymCOIhfIC4wy dxdcV9Q0UA+nh+OCnpDKNTJCReGF4b3MUil57VbR4Qe7PNIC1oQC/1HiHxRFW5erF+wC D+OAVA0qscGsKqnt6yP2+BeZlbFcHwUezDX/iac4whjxmfd61weUpARH3ecpLvwSlDPo hPx896A4ub9u6oD7Xlcv/0Wm2RSSsAPUMisY2s2Gl/j/r2xLZDq8Ers974EvazSK5wu0 QUlWnEfpfgZ7oXKqXnFyoQle51NuWvRQdCFmnR/kwVeMebQWBuvPSTqjgSCauyF+0UoG KY7A== X-Gm-Message-State: AC+VfDzLLogwYMd80aiVrnxyPNzFI9AW13TOHS8Hw423Z1t9MgdoRMvX Ipc6fCps/VOZ9U+ZxPZP5Aw= X-Google-Smtp-Source: ACHHUZ72azbPgEnM10h3+Uy/lBMVdF9iS4rECO6ri/LhbP9GjX2972eBvU9RVBJ95UxDdXiOiTNdYA== X-Received: by 2002:a25:ada2:0:b0:ba7:b933:9063 with SMTP id z34-20020a25ada2000000b00ba7b9339063mr17587509ybi.4.1687467480239; Thu, 22 Jun 2023 13:58:00 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" , David Hildenbrand , Claudio Imbrenda , Mike Rapoport Subject: [PATCH v5 02/33] s390: Use _pt_s390_gaddr for gmap address tracking Date: Thu, 22 Jun 2023 13:57:14 -0700 Message-Id: <20230622205745.79707-3-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230622205745.79707-1-vishal.moola@gmail.com> References: <20230622205745.79707-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit s390 uses page->index to keep track of page tables for the guest address space. In an attempt to consolidate the usage of page fields in s390, replace _pt_pad_2 with _pt_s390_gaddr to replace page->index in gmap. Since page->_pt_s390_gaddr aliases with mapping, ensure its set to NULL before freeing the pages as well. This also reverts commit 7e25de77bc5ea ("s390/mm: use pmd_pgtable_page() helper in __gmap_segment_gaddr()") which had s390 use pmd_pgtable_page() to get a gmap page table, as pmd_pgtable_page() should be used for more generic process page tables. Signed-off-by: Vishal Moola (Oracle) Acked-by: Mike Rapoport (IBM) --- arch/s390/mm/gmap.c | 56 +++++++++++++++++++++++++++------------- include/linux/mm_types.h | 2 +- 2 files changed, 39 insertions(+), 19 deletions(-) diff --git a/arch/s390/mm/gmap.c b/arch/s390/mm/gmap.c index f4b6fc746fce..beb4804d9ca8 100644 --- a/arch/s390/mm/gmap.c +++ b/arch/s390/mm/gmap.c @@ -70,7 +70,7 @@ static struct gmap *gmap_alloc(unsigned long limit) page = alloc_pages(GFP_KERNEL_ACCOUNT, CRST_ALLOC_ORDER); if (!page) goto out_free; - page->index = 0; + page->_pt_s390_gaddr = 0; list_add(&page->lru, &gmap->crst_list); table = page_to_virt(page); crst_table_init(table, etype); @@ -187,16 +187,20 @@ static void gmap_free(struct gmap *gmap) if (!(gmap_is_shadow(gmap) && gmap->removed)) gmap_flush_tlb(gmap); /* Free all segment & region tables. */ - list_for_each_entry_safe(page, next, &gmap->crst_list, lru) + list_for_each_entry_safe(page, next, &gmap->crst_list, lru) { + page->_pt_s390_gaddr = 0; __free_pages(page, CRST_ALLOC_ORDER); + } gmap_radix_tree_free(&gmap->guest_to_host); gmap_radix_tree_free(&gmap->host_to_guest); /* Free additional data for a shadow gmap */ if (gmap_is_shadow(gmap)) { /* Free all page tables. */ - list_for_each_entry_safe(page, next, &gmap->pt_list, lru) + list_for_each_entry_safe(page, next, &gmap->pt_list, lru) { + page->_pt_s390_gaddr = 0; page_table_free_pgste(page); + } gmap_rmap_radix_tree_free(&gmap->host_to_rmap); /* Release reference to the parent */ gmap_put(gmap->parent); @@ -318,12 +322,14 @@ static int gmap_alloc_table(struct gmap *gmap, unsigned long *table, list_add(&page->lru, &gmap->crst_list); *table = __pa(new) | _REGION_ENTRY_LENGTH | (*table & _REGION_ENTRY_TYPE_MASK); - page->index = gaddr; + page->_pt_s390_gaddr = gaddr; page = NULL; } spin_unlock(&gmap->guest_table_lock); - if (page) + if (page) { + page->_pt_s390_gaddr = 0; __free_pages(page, CRST_ALLOC_ORDER); + } return 0; } @@ -336,12 +342,14 @@ static int gmap_alloc_table(struct gmap *gmap, unsigned long *table, static unsigned long __gmap_segment_gaddr(unsigned long *entry) { struct page *page; - unsigned long offset; + unsigned long offset, mask; offset = (unsigned long) entry / sizeof(unsigned long); offset = (offset & (PTRS_PER_PMD - 1)) * PMD_SIZE; - page = pmd_pgtable_page((pmd_t *) entry); - return page->index + offset; + mask = ~(PTRS_PER_PMD * sizeof(pmd_t) - 1); + page = virt_to_page((void *)((unsigned long) entry & mask)); + + return page->_pt_s390_gaddr + offset; } /** @@ -1351,6 +1359,7 @@ static void gmap_unshadow_pgt(struct gmap *sg, unsigned long raddr) /* Free page table */ page = phys_to_page(pgt); list_del(&page->lru); + page->_pt_s390_gaddr = 0; page_table_free_pgste(page); } @@ -1379,6 +1388,7 @@ static void __gmap_unshadow_sgt(struct gmap *sg, unsigned long raddr, /* Free page table */ page = phys_to_page(pgt); list_del(&page->lru); + page->_pt_s390_gaddr = 0; page_table_free_pgste(page); } } @@ -1409,6 +1419,7 @@ static void gmap_unshadow_sgt(struct gmap *sg, unsigned long raddr) /* Free segment table */ page = phys_to_page(sgt); list_del(&page->lru); + page->_pt_s390_gaddr = 0; __free_pages(page, CRST_ALLOC_ORDER); } @@ -1437,6 +1448,7 @@ static void __gmap_unshadow_r3t(struct gmap *sg, unsigned long raddr, /* Free segment table */ page = phys_to_page(sgt); list_del(&page->lru); + page->_pt_s390_gaddr = 0; __free_pages(page, CRST_ALLOC_ORDER); } } @@ -1467,6 +1479,7 @@ static void gmap_unshadow_r3t(struct gmap *sg, unsigned long raddr) /* Free region 3 table */ page = phys_to_page(r3t); list_del(&page->lru); + page->_pt_s390_gaddr = 0; __free_pages(page, CRST_ALLOC_ORDER); } @@ -1495,6 +1508,7 @@ static void __gmap_unshadow_r2t(struct gmap *sg, unsigned long raddr, /* Free region 3 table */ page = phys_to_page(r3t); list_del(&page->lru); + page->_pt_s390_gaddr = 0; __free_pages(page, CRST_ALLOC_ORDER); } } @@ -1525,6 +1539,7 @@ static void gmap_unshadow_r2t(struct gmap *sg, unsigned long raddr) /* Free region 2 table */ page = phys_to_page(r2t); list_del(&page->lru); + page->_pt_s390_gaddr = 0; __free_pages(page, CRST_ALLOC_ORDER); } @@ -1557,6 +1572,7 @@ static void __gmap_unshadow_r1t(struct gmap *sg, unsigned long raddr, /* Free region 2 table */ page = phys_to_page(r2t); list_del(&page->lru); + page->_pt_s390_gaddr = 0; __free_pages(page, CRST_ALLOC_ORDER); } } @@ -1762,9 +1778,9 @@ int gmap_shadow_r2t(struct gmap *sg, unsigned long saddr, unsigned long r2t, page = alloc_pages(GFP_KERNEL_ACCOUNT, CRST_ALLOC_ORDER); if (!page) return -ENOMEM; - page->index = r2t & _REGION_ENTRY_ORIGIN; + page->_pt_s390_gaddr = r2t & _REGION_ENTRY_ORIGIN; if (fake) - page->index |= GMAP_SHADOW_FAKE_TABLE; + page->_pt_s390_gaddr |= GMAP_SHADOW_FAKE_TABLE; s_r2t = page_to_phys(page); /* Install shadow region second table */ spin_lock(&sg->guest_table_lock); @@ -1814,6 +1830,7 @@ int gmap_shadow_r2t(struct gmap *sg, unsigned long saddr, unsigned long r2t, return rc; out_free: spin_unlock(&sg->guest_table_lock); + page->_pt_s390_gaddr = 0; __free_pages(page, CRST_ALLOC_ORDER); return rc; } @@ -1846,9 +1863,9 @@ int gmap_shadow_r3t(struct gmap *sg, unsigned long saddr, unsigned long r3t, page = alloc_pages(GFP_KERNEL_ACCOUNT, CRST_ALLOC_ORDER); if (!page) return -ENOMEM; - page->index = r3t & _REGION_ENTRY_ORIGIN; + page->_pt_s390_gaddr = r3t & _REGION_ENTRY_ORIGIN; if (fake) - page->index |= GMAP_SHADOW_FAKE_TABLE; + page->_pt_s390_gaddr |= GMAP_SHADOW_FAKE_TABLE; s_r3t = page_to_phys(page); /* Install shadow region second table */ spin_lock(&sg->guest_table_lock); @@ -1898,6 +1915,7 @@ int gmap_shadow_r3t(struct gmap *sg, unsigned long saddr, unsigned long r3t, return rc; out_free: spin_unlock(&sg->guest_table_lock); + page->_pt_s390_gaddr = 0; __free_pages(page, CRST_ALLOC_ORDER); return rc; } @@ -1930,9 +1948,9 @@ int gmap_shadow_sgt(struct gmap *sg, unsigned long saddr, unsigned long sgt, page = alloc_pages(GFP_KERNEL_ACCOUNT, CRST_ALLOC_ORDER); if (!page) return -ENOMEM; - page->index = sgt & _REGION_ENTRY_ORIGIN; + page->_pt_s390_gaddr = sgt & _REGION_ENTRY_ORIGIN; if (fake) - page->index |= GMAP_SHADOW_FAKE_TABLE; + page->_pt_s390_gaddr |= GMAP_SHADOW_FAKE_TABLE; s_sgt = page_to_phys(page); /* Install shadow region second table */ spin_lock(&sg->guest_table_lock); @@ -1982,6 +2000,7 @@ int gmap_shadow_sgt(struct gmap *sg, unsigned long saddr, unsigned long sgt, return rc; out_free: spin_unlock(&sg->guest_table_lock); + page->_pt_s390_gaddr = 0; __free_pages(page, CRST_ALLOC_ORDER); return rc; } @@ -2014,9 +2033,9 @@ int gmap_shadow_pgt_lookup(struct gmap *sg, unsigned long saddr, if (table && !(*table & _SEGMENT_ENTRY_INVALID)) { /* Shadow page tables are full pages (pte+pgste) */ page = pfn_to_page(*table >> PAGE_SHIFT); - *pgt = page->index & ~GMAP_SHADOW_FAKE_TABLE; + *pgt = page->_pt_s390_gaddr & ~GMAP_SHADOW_FAKE_TABLE; *dat_protection = !!(*table & _SEGMENT_ENTRY_PROTECT); - *fake = !!(page->index & GMAP_SHADOW_FAKE_TABLE); + *fake = !!(page->_pt_s390_gaddr & GMAP_SHADOW_FAKE_TABLE); rc = 0; } else { rc = -EAGAIN; @@ -2054,9 +2073,9 @@ int gmap_shadow_pgt(struct gmap *sg, unsigned long saddr, unsigned long pgt, page = page_table_alloc_pgste(sg->mm); if (!page) return -ENOMEM; - page->index = pgt & _SEGMENT_ENTRY_ORIGIN; + page->_pt_s390_gaddr = pgt & _SEGMENT_ENTRY_ORIGIN; if (fake) - page->index |= GMAP_SHADOW_FAKE_TABLE; + page->_pt_s390_gaddr |= GMAP_SHADOW_FAKE_TABLE; s_pgt = page_to_phys(page); /* Install shadow page table */ spin_lock(&sg->guest_table_lock); @@ -2101,6 +2120,7 @@ int gmap_shadow_pgt(struct gmap *sg, unsigned long saddr, unsigned long pgt, return rc; out_free: spin_unlock(&sg->guest_table_lock); + page->_pt_s390_gaddr = 0; page_table_free_pgste(page); return rc; diff --git a/include/linux/mm_types.h b/include/linux/mm_types.h index de10fc797c8e..fbbe4e93a9ba 100644 --- a/include/linux/mm_types.h +++ b/include/linux/mm_types.h @@ -144,7 +144,7 @@ struct page { struct { /* Page table pages */ unsigned long _pt_pad_1; /* compound_head */ pgtable_t pmd_huge_pte; /* protected by page->ptl */ - unsigned long _pt_pad_2; /* mapping */ + unsigned long _pt_s390_gaddr; /* mapping */ union { struct mm_struct *pt_mm; /* x86 pgds only */ atomic_t pt_frag_refcount; /* powerpc */ -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 22 20:58:09 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 20:58:09 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553943.864818 (Exim 4.92) (envelope-from ) id 1qCRNR-0006d2-OT; Thu, 22 Jun 2023 20:58:01 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553943.864818; Thu, 22 Jun 2023 20:58:01 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCRNR-0006ZR-GV; Thu, 22 Jun 2023 20:58:01 +0000 Received: by outflank-mailman (input) for mailman id 553943; Thu, 22 Jun 2023 20:58:00 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCRNQ-0006Mr-An for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 20:58:00 +0000 Received: from raptorengineering.com (mail.raptorengineering.com [23.155.224.40]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 765e6b2f-113f-11ee-8611-37d641c3527e; Thu, 22 Jun 2023 22:57:56 +0200 (CEST) Received: from localhost (localhost [127.0.0.1]) by mail.rptsys.com (Postfix) with ESMTP id 4229B8285AE5; Thu, 22 Jun 2023 15:57:56 -0500 (CDT) Received: from mail.rptsys.com ([127.0.0.1]) by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032) with ESMTP id AcOxRjrIFqQg; Thu, 22 Jun 2023 15:57:55 -0500 (CDT) Received: from localhost (localhost [127.0.0.1]) by mail.rptsys.com (Postfix) with ESMTP id 345A68285ABF; Thu, 22 Jun 2023 15:57:55 -0500 (CDT) Received: from mail.rptsys.com ([127.0.0.1]) by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id cL7pMypPLvdP; Thu, 22 Jun 2023 15:57:55 -0500 (CDT) Received: from raptor-ewks-026.lan (5.edge.rptsys.com [23.155.224.38]) by mail.rptsys.com (Postfix) with ESMTPSA id C83A48285AE2; Thu, 22 Jun 2023 15:57:54 -0500 (CDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 765e6b2f-113f-11ee-8611-37d641c3527e DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com 345A68285ABF DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD; t=1687467475; bh=AUs73XhBtToNcPNxUdpMc26W/Nu7OJgxz6dLp/feyYg=; h=From:To:Date:Message-Id:MIME-Version; b=A00HjTWsh0nsZIcw/WkxwN3uBPbGJLQVaxTFY5Gt+UGDriGIAMW1+taGmwmQC6wBq cBeobNRjfQTEDzwU1ayfDOwjfW/c4TUucktGEx0bJwZbJ0Lvp7sZk12UnAbGH5exBC nGT5okG+zn0yZRT7scXtNCzsVUzAlCQ0Zw09HHnA= X-Virus-Scanned: amavisd-new at rptsys.com From: Shawn Anastasio To: xen-devel@lists.xenproject.org Cc: Timothy Pearson , Andrew Cooper , Jan Beulich , Julien Grall , Shawn Anastasio Subject: [PATCH v2 1/3] xen/ppc: Set up a basic C environment Date: Thu, 22 Jun 2023 15:57:48 -0500 Message-Id: <1afe27097c5e1b55dcffa9464dc0cd0c1038a23e.1687466822.git.sanastasio@raptorengineering.com> X-Mailer: git-send-email 2.30.2 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Update ppc64/head.S to set up an initial boot stack, zero the .bss section, and jump to C. Also refactor the endian fixup trampoline into its own macro, since it will need to be used in multiple places, including every time we make a call into firmware (see next commit). Signed-off-by: Shawn Anastasio --- xen/arch/ppc/Makefile | 1 + xen/arch/ppc/include/asm/asm-defns.h | 36 ++++++++++++++++++ xen/arch/ppc/ppc64/head.S | 55 ++++++++++++++++++---------- xen/arch/ppc/setup.c | 13 +++++++ 4 files changed, 85 insertions(+), 20 deletions(-) create mode 100644 xen/arch/ppc/include/asm/asm-defns.h create mode 100644 xen/arch/ppc/setup.c diff --git a/xen/arch/ppc/Makefile b/xen/arch/ppc/Makefile index 98220648af..fdbcd730d0 100644 --- a/xen/arch/ppc/Makefile +++ b/xen/arch/ppc/Makefile @@ -1,4 +1,5 @@ obj-$(CONFIG_PPC64) +=3D ppc64/ +obj-y +=3D setup.o =20 $(TARGET): $(TARGET)-syms cp -f $< $@ diff --git a/xen/arch/ppc/include/asm/asm-defns.h b/xen/arch/ppc/include/= asm/asm-defns.h new file mode 100644 index 0000000000..3db2063a39 --- /dev/null +++ b/xen/arch/ppc/include/asm/asm-defns.h @@ -0,0 +1,36 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ +#ifndef _ASM_PPC_ASM_DEFNS_H +#define _ASM_PPC_ASM_DEFNS_H + +/* + * Load a 64-bit immediate value into the specified GPR. + */ +#define LOAD_IMM64(reg, val) = \ + lis reg, (val) @highest; = \ + ori reg, reg, (val) @higher; = \ + rldicr reg, reg, 32, 31; = \ + oris reg, reg, (val) @h; = \ + ori reg, reg, (val) @l; + +/* + * Depending on how we were booted, the CPU could be running in either + * Little Endian or Big Endian mode. The following trampoline from Linux + * cleverly uses an instruction that encodes to a NOP if the CPU's + * endianness matches the assumption of the assembler (LE, in our case) + * or a branch to code that performs the endian switch in the other case= . + */ +#define FIXUP_ENDIAN = \ + tdi 0, 0, 0x48; /* Reverse endian of b . + 8 */ = \ + b . + 44; /* Skip trampoline if endian is good */ = \ + .long 0xa600607d; /* mfmsr r11 */ = \ + .long 0x01006b69; /* xori r11,r11,1 */ = \ + .long 0x00004039; /* li r10,0 */ = \ + .long 0x6401417d; /* mtmsrd r10,1 */ = \ + .long 0x05009f42; /* bcl 20,31,$+4 */ = \ + .long 0xa602487d; /* mflr r10 */ = \ + .long 0x14004a39; /* addi r10,r10,20 */ = \ + .long 0xa6035a7d; /* mtsrr0 r10 */ = \ + .long 0xa6037b7d; /* mtsrr1 r11 */ = \ + .long 0x2400004c /* rfid */ + +#endif /* _ASM_PPC_ASM_DEFNS_H */ diff --git a/xen/arch/ppc/ppc64/head.S b/xen/arch/ppc/ppc64/head.S index 2fcefb40d8..a7db5b7de2 100644 --- a/xen/arch/ppc/ppc64/head.S +++ b/xen/arch/ppc/ppc64/head.S @@ -1,30 +1,45 @@ /* SPDX-License-Identifier: GPL-2.0-or-later */ =20 +#include + .section .text.header, "ax", %progbits =20 ENTRY(start) /* - * Depending on how we were booted, the CPU could be running in eith= er - * Little Endian or Big Endian mode. The following trampoline from L= inux - * cleverly uses an instruction that encodes to a NOP if the CPU's - * endianness matches the assumption of the assembler (LE, in our ca= se) - * or a branch to code that performs the endian switch in the other = case. + * NOTE: argument registers (r3-r9) must be preserved until the C en= trypoint */ - tdi 0, 0, 0x48 /* Reverse endian of b . + 8 */ - b . + 44 /* Skip trampoline if endian is good */ - .long 0xa600607d /* mfmsr r11 */ - .long 0x01006b69 /* xori r11,r11,1 */ - .long 0x00004039 /* li r10,0 */ - .long 0x6401417d /* mtmsrd r10,1 */ - .long 0x05009f42 /* bcl 20,31,$+4 */ - .long 0xa602487d /* mflr r10 */ - .long 0x14004a39 /* addi r10,r10,20 */ - .long 0xa6035a7d /* mtsrr0 r10 */ - .long 0xa6037b7d /* mtsrr1 r11 */ - .long 0x2400004c /* rfid */ - - /* Now that the endianness is confirmed, continue */ -1: b 1b + FIXUP_ENDIAN + + /* set up the initial stack */ + LOAD_IMM64(%r1, cpu0_boot_stack) + li %r11, 0 + std %r11, 0(%r1) + + /* clear .bss */ + LOAD_IMM64(%r14, __bss_start) + LOAD_IMM64(%r15, __bss_end) +1: + std %r11, 0(%r14) + addi %r14, %r14, 8 + cmpld %r14, %r15 + blt 1b + + /* call the C entrypoint */ + LOAD_IMM64(%r12, start_xen) + mtctr %r12 + bctrl + + /* should never return */ + trap =20 .size start, . - start .type start, %function + + .section .init.data, "aw", @progbits + + /* Early init stack */ + .p2align 4 +cpu0_boot_stack_bottom: + .space STACK_SIZE +cpu0_boot_stack: + .space STACK_FRAME_OVERHEAD diff --git a/xen/arch/ppc/setup.c b/xen/arch/ppc/setup.c new file mode 100644 index 0000000000..4d1b72fa23 --- /dev/null +++ b/xen/arch/ppc/setup.c @@ -0,0 +1,13 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ +#include + +void __init noreturn start_xen(unsigned long r3, unsigned long r4, + unsigned long r5, unsigned long r6, + unsigned long r7) +{ + for ( ;; ) + /* Set current hardware thread to very low priority */ + asm volatile("or %r31, %r31, %r31"); + + unreachable(); +} --=20 2.30.2 From xen-devel-bounces@lists.xenproject.org Thu Jun 22 20:58:10 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 20:58:10 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553940.864801 (Exim 4.92) (envelope-from ) id 1qCRNQ-0006NQ-SK; Thu, 22 Jun 2023 20:58:00 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553940.864801; Thu, 22 Jun 2023 20:58:00 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCRNQ-0006NJ-Oz; Thu, 22 Jun 2023 20:58:00 +0000 Received: by outflank-mailman (input) for mailman id 553940; Thu, 22 Jun 2023 20:57:59 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCRNP-0006Mq-CF for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 20:57:59 +0000 Received: from mail-yb1-xb35.google.com (mail-yb1-xb35.google.com [2607:f8b0:4864:20::b35]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 769ca266-113f-11ee-b237-6b7b168915f2; Thu, 22 Jun 2023 22:57:57 +0200 (CEST) Received: by mail-yb1-xb35.google.com with SMTP id 3f1490d57ef6-bff0beb2d82so2082567276.2 for ; Thu, 22 Jun 2023 13:57:57 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::36]) by smtp.googlemail.com with ESMTPSA id d18-20020a5b0c52000000b00bc501a1b062sm1684937ybr.42.2023.06.22.13.57.53 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 22 Jun 2023 13:57:55 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 769ca266-113f-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687467476; x=1690059476; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=Q4Ig2n4cGI8BP25CqcNRq43JhOmkIIdJVFlb5elIpOA=; b=mqvv9g7FTX6YZrTAez67m8G0SADgQWX+ct2Q2ktq+TbKMG/cOnFNL1HUEejNSN9nds 9vEK9L2HpCPHz3mnLHm7QE7bazoap9KPjRBuUT4kw6MBU7tHylSDou09veevPp+Qm5tI J6+0hmA98DudaYxzAoNczqxDp5g6z2tqapGcR3NSEAPAgqMiM1eNh+iIzBq7ayejKjj9 5MP9SwhVaQTCo1G312fdQXe7vTjboPcFBobNzdFt65RtUbRTWvFRUfh7ZZb+Tak5rboQ uGsNAcBwqdQTtsTo7UoikA/hvdu33PxWnma34tmu5wLmqc0vL2bNnLhMWuiaLjOulKtx 4JUQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687467476; x=1690059476; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=Q4Ig2n4cGI8BP25CqcNRq43JhOmkIIdJVFlb5elIpOA=; b=hmGXREdHKn/LNf7hFG12nx5BpgFOKTDz7M71mICTc9ylR7rRRWIjGapeXYwTD67UD+ u4sBFM9f8UbjZsCFJEnS5KVMlrTUkq97mc5zNV6DkR4f4vn8c3pLDDUSUISAUXQKfCMp t0V1KvMit+Ih/tDD82ESXIgqCVProSihS0LY2lhxtaiNFEkvfg94MmRDkYeTOspOOBf/ 4luHaYtnVt0QPqNOJlx7wy/iH5cio4sIKFdliALMwA5COnusSVu2RoLgOaSPm2W+j4K6 d6LtPH5+LY/scXjb+iZ/QzvvJf+REbE55uNhk8dLtcDXH2WWO9lgTK6i3R/jURdqO2kS 3vrA== X-Gm-Message-State: AC+VfDxQVKrWthWkEudgCwkNMw8y0/3ym7I0lxqSUt56aD4GX8NEmaMC rGzqowAY4YH+AbpR36xQhdc= X-Google-Smtp-Source: ACHHUZ5QdSwF+iokSIDxxYwBaWLG1oGIRpritBhsZ3H79UKVTTkrzsNTtfFGV/ude8v+TVUUcB2uCQ== X-Received: by 2002:a05:6902:92:b0:bba:558e:df05 with SMTP id h18-20020a056902009200b00bba558edf05mr14486764ybs.10.1687467476004; Thu, 22 Jun 2023 13:57:56 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" , Catalin Marinas , Huacai Chen , Geert Uytterhoeven , Thomas Bogendoerfer , Dinh Nguyen , Jonas Bonn , David Hildenbrand , Claudio Imbrenda , Paul Walmsley , "David S. Miller" , Richard Weinberger , Yoshinori Sato , Dave Hansen , Arnd Bergmann , Christophe Leroy Subject: [PATCH v5 00/33] Split ptdesc from struct page Date: Thu, 22 Jun 2023 13:57:12 -0700 Message-Id: <20230622205745.79707-1-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit The MM subsystem is trying to shrink struct page. This patchset introduces a memory descriptor for page table tracking - struct ptdesc. This patchset introduces ptdesc, splits ptdesc from struct page, and converts many callers of page table constructor/destructors to use ptdescs. Ptdesc is a foundation to further standardize page tables, and eventually allow for dynamic allocation of page tables independent of struct page. However, the use of pages for page table tracking is quite deeply ingrained and varied across archictectures, so there is still a lot of work to be done before that can happen. This is rebased on next-20230621. There is a minor conflict with patch 24 and the mm-unstable tree in arch/m68k/mm/motorola.c - The end result of applying the patch should be the same. v5: More Acked-bys :) Cleanup some documentation wording and formatting Add pt_rcu_head to ptdesc Add memcg to ptdesc (and align it with struct page) Ensure all get_free_page() callers prohibit HIGHMEM for 32 bit support. Renamed folio_{set, clear}_table() to folio_{set, clear}_pgtable() Removed pagetable_clear() as it is not necessary right now pagetable_free() now sets page->mapping = NULL Dropped s390 _refcount to _pt_frag_refcount conversion patch Vishal Moola (Oracle) (33): mm: Add PAGE_TYPE_OP folio functions s390: Use _pt_s390_gaddr for gmap address tracking pgtable: Create struct ptdesc mm: add utility functions for ptdesc mm: Convert pmd_pgtable_page() to pmd_ptdesc() mm: Convert ptlock_alloc() to use ptdescs mm: Convert ptlock_ptr() to use ptdescs mm: Convert pmd_ptlock_init() to use ptdescs mm: Convert ptlock_init() to use ptdescs mm: Convert pmd_ptlock_free() to use ptdescs mm: Convert ptlock_free() to use ptdescs mm: Create ptdesc equivalents for pgtable_{pte,pmd}_page_{ctor,dtor} powerpc: Convert various functions to use ptdescs x86: Convert various functions to use ptdescs s390: Convert various gmap functions to use ptdescs s390: Convert various pgalloc functions to use ptdescs mm: Remove page table members from struct page pgalloc: Convert various functions to use ptdescs arm: Convert various functions to use ptdescs arm64: Convert various functions to use ptdescs csky: Convert __pte_free_tlb() to use ptdescs hexagon: Convert __pte_free_tlb() to use ptdescs loongarch: Convert various functions to use ptdescs m68k: Convert various functions to use ptdescs mips: Convert various functions to use ptdescs nios2: Convert __pte_free_tlb() to use ptdescs openrisc: Convert __pte_free_tlb() to use ptdescs riscv: Convert alloc_{pmd, pte}_late() to use ptdescs sh: Convert pte_free_tlb() to use ptdescs sparc64: Convert various functions to use ptdescs sparc: Convert pgtable_pte_page_{ctor, dtor}() to ptdesc equivalents um: Convert {pmd, pte}_free_tlb() to use ptdescs mm: Remove pgtable_{pmd, pte}_page_{ctor, dtor}() wrappers Documentation/mm/split_page_table_lock.rst | 12 +- .../zh_CN/mm/split_page_table_lock.rst | 14 +- arch/arm/include/asm/tlb.h | 12 +- arch/arm/mm/mmu.c | 7 +- arch/arm64/include/asm/tlb.h | 14 +- arch/arm64/mm/mmu.c | 7 +- arch/csky/include/asm/pgalloc.h | 4 +- arch/hexagon/include/asm/pgalloc.h | 8 +- arch/loongarch/include/asm/pgalloc.h | 27 ++- arch/loongarch/mm/pgtable.c | 7 +- arch/m68k/include/asm/mcf_pgalloc.h | 43 ++-- arch/m68k/include/asm/sun3_pgalloc.h | 8 +- arch/m68k/mm/motorola.c | 4 +- arch/mips/include/asm/pgalloc.h | 32 +-- arch/mips/mm/pgtable.c | 8 +- arch/nios2/include/asm/pgalloc.h | 8 +- arch/openrisc/include/asm/pgalloc.h | 8 +- arch/powerpc/mm/book3s64/mmu_context.c | 10 +- arch/powerpc/mm/book3s64/pgtable.c | 32 +-- arch/powerpc/mm/pgtable-frag.c | 46 ++-- arch/riscv/include/asm/pgalloc.h | 8 +- arch/riscv/mm/init.c | 16 +- arch/s390/include/asm/pgalloc.h | 4 +- arch/s390/include/asm/tlb.h | 4 +- arch/s390/mm/gmap.c | 207 ++++++++++-------- arch/s390/mm/pgalloc.c | 108 ++++----- arch/sh/include/asm/pgalloc.h | 9 +- arch/sparc/mm/init_64.c | 17 +- arch/sparc/mm/srmmu.c | 5 +- arch/um/include/asm/pgalloc.h | 18 +- arch/x86/mm/pgtable.c | 47 ++-- arch/x86/xen/mmu_pv.c | 2 +- include/asm-generic/pgalloc.h | 88 +++++--- include/asm-generic/tlb.h | 11 + include/linux/mm.h | 153 +++++++++---- include/linux/mm_types.h | 14 -- include/linux/page-flags.h | 30 ++- include/linux/pgtable.h | 77 +++++++ mm/memory.c | 8 +- 39 files changed, 684 insertions(+), 453 deletions(-) -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 22 20:58:10 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 20:58:10 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553951.864891 (Exim 4.92) (envelope-from ) id 1qCRNa-0000QK-RQ; Thu, 22 Jun 2023 20:58:10 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553951.864891; Thu, 22 Jun 2023 20:58:10 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCRNa-0000Pw-NX; Thu, 22 Jun 2023 20:58:10 +0000 Received: by outflank-mailman (input) for mailman id 553951; Thu, 22 Jun 2023 20:58:09 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCRNZ-0006Mr-MV for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 20:58:09 +0000 Received: from mail-ot1-x32a.google.com (mail-ot1-x32a.google.com [2607:f8b0:4864:20::32a]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 7cc3d953-113f-11ee-8611-37d641c3527e; Thu, 22 Jun 2023 22:58:07 +0200 (CEST) Received: by mail-ot1-x32a.google.com with SMTP id 46e09a7af769-6b46f27f562so5806a34.0 for ; Thu, 22 Jun 2023 13:58:08 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::36]) by smtp.googlemail.com with ESMTPSA id d18-20020a5b0c52000000b00bc501a1b062sm1684937ybr.42.2023.06.22.13.58.04 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 22 Jun 2023 13:58:06 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 7cc3d953-113f-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687467487; x=1690059487; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=5MMx6i8bJUxARp5QNqsq1CJUY3hOxlwkAEMcUNtK7dI=; b=UdIEW49a6VlVFdeDO40XUMIhkzu0TZbzMPBM/WacFFYU0Mf2IMmAOz+NL1cV98Ton4 4zQ7N3mgDzFH/zAeyyuA7dsXAtz6L9a3ryBLZR0keuhq84g9s5CyaVK84D28lhUtpY1k n1Pbrc0aBtOd2I2lssPU62Gn+t4FuAK2YSMld5ItzYd2Gb7upO15jx4dCKR0ZoMoveD4 fYCQ1IFYfK8OlRQ+gZ/yAiK4LxmWYPlg8lrZ4XnMaYZEtLSmgFLWfXItXcddGU79r9OH 9d/82j8McTJZKyaaoZkqZMldnjmKIChpQ0nH7tpNr90msjJzxK9KTHEvxYDWGujERLdc e96g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687467487; x=1690059487; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=5MMx6i8bJUxARp5QNqsq1CJUY3hOxlwkAEMcUNtK7dI=; b=YbvvLdPUucgHDDU/0Q6VgOpaRrOhogE7IUP3ccfmhnVE4+t5l6Ctj3QLdH58TrmQHm VfpHRcPXLsOb2yLQfuHvbJLZJ2YdgWCQ9USSqTb0GmXCKCj0dV/cQyLbioWU7xv28BOh znHuTYbEqruCLS40RFcJgwMFA38SlMva7YWw/fmOL2mngx5+fDLPEvUVBcVNyUCf/5Bh Hr5yDOOIKbywPQ0DBpbH4KBxLdZ96QJeKeASkA7XQRnl0iL3iDtvPMbdaDgyrMHZTU6X bo6FiaEKpbf7XEKQOIC3FciJg5n+zWYu2lvhyVk2nu64cAL88/MMmhn1QMv0zPJgI7Z3 wZKA== X-Gm-Message-State: AC+VfDx1fQS9KXyXM+lAwbJXoBxWFPSJ+yEZ6pYsIoByG74MDeG1McJj BgzHqXGFhaNHgCrdsOzZSgI= X-Google-Smtp-Source: ACHHUZ5msoxCs4WtHFESbyMK1EuaDf4wukFNhVJUOVId63qr2aSW3HXx+zFK0CBZB4PkAluxQSVOjw== X-Received: by 2002:a05:6359:2ea4:b0:12b:e5b1:1c9c with SMTP id rp36-20020a0563592ea400b0012be5b11c9cmr10630381rwb.14.1687467486510; Thu, 22 Jun 2023 13:58:06 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" , Mike Rapoport Subject: [PATCH v5 05/33] mm: Convert pmd_pgtable_page() to pmd_ptdesc() Date: Thu, 22 Jun 2023 13:57:17 -0700 Message-Id: <20230622205745.79707-6-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230622205745.79707-1-vishal.moola@gmail.com> References: <20230622205745.79707-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Converts pmd_pgtable_page() to pmd_ptdesc() and all its callers. This removes some direct accesses to struct page, working towards splitting out struct ptdesc from struct page. Signed-off-by: Vishal Moola (Oracle) Acked-by: Mike Rapoport (IBM) --- include/linux/mm.h | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/include/linux/mm.h b/include/linux/mm.h index 14d95d494958..1511faf0263c 100644 --- a/include/linux/mm.h +++ b/include/linux/mm.h @@ -2915,15 +2915,15 @@ pte_t *pte_offset_map_nolock(struct mm_struct *mm, pmd_t *pmd, #if USE_SPLIT_PMD_PTLOCKS -static inline struct page *pmd_pgtable_page(pmd_t *pmd) +static inline struct ptdesc *pmd_ptdesc(pmd_t *pmd) { unsigned long mask = ~(PTRS_PER_PMD * sizeof(pmd_t) - 1); - return virt_to_page((void *)((unsigned long) pmd & mask)); + return virt_to_ptdesc((void *)((unsigned long) pmd & mask)); } static inline spinlock_t *pmd_lockptr(struct mm_struct *mm, pmd_t *pmd) { - return ptlock_ptr(pmd_pgtable_page(pmd)); + return ptlock_ptr(ptdesc_page(pmd_ptdesc(pmd))); } static inline bool pmd_ptlock_init(struct page *page) @@ -2942,7 +2942,7 @@ static inline void pmd_ptlock_free(struct page *page) ptlock_free(page); } -#define pmd_huge_pte(mm, pmd) (pmd_pgtable_page(pmd)->pmd_huge_pte) +#define pmd_huge_pte(mm, pmd) (pmd_ptdesc(pmd)->pmd_huge_pte) #else -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 22 20:58:12 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 20:58:12 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553952.864901 (Exim 4.92) (envelope-from ) id 1qCRNc-0000ib-Ae; Thu, 22 Jun 2023 20:58:12 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553952.864901; Thu, 22 Jun 2023 20:58:12 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCRNc-0000i7-4T; Thu, 22 Jun 2023 20:58:12 +0000 Received: by outflank-mailman (input) for mailman id 553952; Thu, 22 Jun 2023 20:58:10 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCRNa-0006Mq-DY for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 20:58:10 +0000 Received: from mail-oo1-xc2e.google.com (mail-oo1-xc2e.google.com [2607:f8b0:4864:20::c2e]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 7e1faf60-113f-11ee-b237-6b7b168915f2; Thu, 22 Jun 2023 22:58:09 +0200 (CEST) Received: by mail-oo1-xc2e.google.com with SMTP id 006d021491bc7-562e413cf61so630063eaf.0 for ; Thu, 22 Jun 2023 13:58:09 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::36]) by smtp.googlemail.com with ESMTPSA id d18-20020a5b0c52000000b00bc501a1b062sm1684937ybr.42.2023.06.22.13.58.06 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 22 Jun 2023 13:58:08 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 7e1faf60-113f-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687467488; x=1690059488; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=sr5TgrSX24KD5rPSp2rkPhxpII4heal/IIgk1FACoIs=; b=UtF2QiZk6b9G+hZ8o+uaaa8jIMv9kwu5Z4W+DnKhqSxtuxZLeuCmgWiQ2UyCbKdGf3 JlKYQP1/9HAEwi4YcMuZIpkc1UasphklUD1y4PAfxdaiUenlc82pk0MDNgE4UyvTP/Ti WAZ4mtTP+0UbBT6PIwdrRUvrUpbxA+faq7jSe2iTSffGzc1HNKXsxuak3eG36Kz3Hx1p 3Bw014l7N9peXiYCyjbUvF7k31KviCnInVoJPhH8kz/FXkdJ8oxWXWbjuOh6BjmUEfNL NLvkARmq7C0ZzVI4l8HT21OfZWS/swkiU6k+jkbLgeAOyE/KVS/34HjWz0qthh2YGY4M vuhg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687467488; x=1690059488; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=sr5TgrSX24KD5rPSp2rkPhxpII4heal/IIgk1FACoIs=; b=d5gmfh8Z/WIDhtH91mS1t8syNeU/v1T1NHRa/hc98a3//V8SDY4sWqGU6QZLSSZM56 OcaVCL5+00lg7iDSVI1JVbFcbQZIuJaTK+yrfN37ANHebDUJyjvH5+bOOioAUgbmhKLp Und+wOTQlWbf1dWUzEMWLOQ1R8LdsD53KP6WLi1g9gbJlyeL4qN/ksgAjFWU8FgKp4RD vJLyal3ynkGPccPolgmmPRYs3d4mfr8XOrAppCW48z6f5g901qc76qRbvDmh65DSfAKs WzCcAq2wFZAx6q6DBu5svoGSoYmOWozfwO49ifYj0kxKadyLaZs9xt1c+V0JeV08wHzp 5ryw== X-Gm-Message-State: AC+VfDzod6nTG5lkSyzSqg2btc1chicT5Yo23ztQp7gMHaJ7/NA9HDA0 YocVrLy65NF/FMNObYr9yVk= X-Google-Smtp-Source: ACHHUZ6Wv4q+lCV8nxexJGI3S2vfJP94k7k+pAexpWAqQNNuxMHJpmGx+Tn2Ll2+HAYtwXHgGRnsHw== X-Received: by 2002:a05:6358:9f9f:b0:132:d8bc:b15b with SMTP id fy31-20020a0563589f9f00b00132d8bcb15bmr1343396rwb.2.1687467488545; Thu, 22 Jun 2023 13:58:08 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" , Mike Rapoport Subject: [PATCH v5 06/33] mm: Convert ptlock_alloc() to use ptdescs Date: Thu, 22 Jun 2023 13:57:18 -0700 Message-Id: <20230622205745.79707-7-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230622205745.79707-1-vishal.moola@gmail.com> References: <20230622205745.79707-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit This removes some direct accesses to struct page, working towards splitting out struct ptdesc from struct page. Signed-off-by: Vishal Moola (Oracle) Acked-by: Mike Rapoport (IBM) --- include/linux/mm.h | 6 +++--- mm/memory.c | 4 ++-- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/include/linux/mm.h b/include/linux/mm.h index 1511faf0263c..39b0a4661e44 100644 --- a/include/linux/mm.h +++ b/include/linux/mm.h @@ -2798,7 +2798,7 @@ static inline void pagetable_free(struct ptdesc *pt) #if USE_SPLIT_PTE_PTLOCKS #if ALLOC_SPLIT_PTLOCKS void __init ptlock_cache_init(void); -extern bool ptlock_alloc(struct page *page); +bool ptlock_alloc(struct ptdesc *ptdesc); extern void ptlock_free(struct page *page); static inline spinlock_t *ptlock_ptr(struct page *page) @@ -2810,7 +2810,7 @@ static inline void ptlock_cache_init(void) { } -static inline bool ptlock_alloc(struct page *page) +static inline bool ptlock_alloc(struct ptdesc *ptdesc) { return true; } @@ -2840,7 +2840,7 @@ static inline bool ptlock_init(struct page *page) * slab code uses page->slab_cache, which share storage with page->ptl. */ VM_BUG_ON_PAGE(*(unsigned long *)&page->ptl, page); - if (!ptlock_alloc(page)) + if (!ptlock_alloc(page_ptdesc(page))) return false; spin_lock_init(ptlock_ptr(page)); return true; diff --git a/mm/memory.c b/mm/memory.c index 80faf3e76232..2ff14f50c7b3 100644 --- a/mm/memory.c +++ b/mm/memory.c @@ -5920,14 +5920,14 @@ void __init ptlock_cache_init(void) SLAB_PANIC, NULL); } -bool ptlock_alloc(struct page *page) +bool ptlock_alloc(struct ptdesc *ptdesc) { spinlock_t *ptl; ptl = kmem_cache_alloc(page_ptl_cachep, GFP_KERNEL); if (!ptl) return false; - page->ptl = ptl; + ptdesc->ptl = ptl; return true; } -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 22 20:58:14 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 20:58:14 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553954.864910 (Exim 4.92) (envelope-from ) id 1qCRNe-00017P-Mm; Thu, 22 Jun 2023 20:58:14 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553954.864910; Thu, 22 Jun 2023 20:58:14 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCRNe-00017C-J4; Thu, 22 Jun 2023 20:58:14 +0000 Received: by outflank-mailman (input) for mailman id 553954; Thu, 22 Jun 2023 20:58:12 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCRNc-0006Mq-9z for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 20:58:12 +0000 Received: from mail-yb1-xb2a.google.com (mail-yb1-xb2a.google.com [2607:f8b0:4864:20::b2a]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 7f40eb1f-113f-11ee-b237-6b7b168915f2; Thu, 22 Jun 2023 22:58:11 +0200 (CEST) Received: by mail-yb1-xb2a.google.com with SMTP id 3f1490d57ef6-bad0c4f6f50so1707021276.1 for ; Thu, 22 Jun 2023 13:58:11 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::36]) by smtp.googlemail.com with ESMTPSA id d18-20020a5b0c52000000b00bc501a1b062sm1684937ybr.42.2023.06.22.13.58.08 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 22 Jun 2023 13:58:10 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 7f40eb1f-113f-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687467490; x=1690059490; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=Z9Q71kHk0zB6vt5ahL9ZHs7069+SCA/PofhBzVdlAuY=; b=SXnr3kTV6njYUvauamdMyIGRqi3Z41OxkG9JlPzJUx0NriTeoHWuqaMEo3l+9h8t2a VYkat48qctNxV1/ppcRnfQARZuWAzrRCUbykSbsoBMp8966TwG20r91mIMZZWqpjcTmW hdpH7DDiGoYlRwkaTlsQfcolxJPdgdCgC9/4W8c/dT4apJrOeLX3lj0oWu+YQP0DxUAd osWDaPCIsD5h/hDouYKm/GWbJh0+G1rOXddszwPTKiRotQWqfvXUbSh9a+2twyPuDXpa FZNLCmQA2AiifhKNd54UF2voysI7AeqYSwKdAxxqSAv3Uf/qcrBy28RD1vznPZVN3aBc SnyA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687467490; x=1690059490; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=Z9Q71kHk0zB6vt5ahL9ZHs7069+SCA/PofhBzVdlAuY=; b=W5py+Q+XAtBjSqi0Euxolshel7+OwWc8JoZ5wTfrkZGBvVpxllus5ynPUCTRgXThl+ zsxNWvYFvhFqDQUvAyHq25C3vMLysrosZnR3D/xbjufcSqr10ho+sjdd3QjDl58SAQxc L4hl4J3Oa5AF2HiPVaj0GR7UNMEl4Nhx++nLO2vNzj1PS7amkY/MJuQYphRbexBA7EsJ 1UnfgxrraSEy8aeaSsR2eodmubMDF+JUJNJhxQUNilEqIAlXPBK1xOuDSL/4EDwPICKk i3PK7gn7yY7WfbBIkwvGGwVJV12lTproO49ddx+RlX8wUE3/TDO94XZY3FoyRKMW/fD3 f9/g== X-Gm-Message-State: AC+VfDxaStfwxZuY1T2bwcdUgYFGA2Z6gpBgigO8p8Fkb8kRlzJ96liH CC17jw0YkXGBOGdCDoDjKaI= X-Google-Smtp-Source: ACHHUZ6BwDtDcu2DafE0mELxOK/IzeJcBBP6EuYjmA8bqRWBwzcd6lelREQA4aNwT3EjfCEygFsIlw== X-Received: by 2002:a25:2144:0:b0:bce:5e08:c330 with SMTP id h65-20020a252144000000b00bce5e08c330mr18770867ybh.29.1687467490539; Thu, 22 Jun 2023 13:58:10 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" , Mike Rapoport Subject: [PATCH v5 07/33] mm: Convert ptlock_ptr() to use ptdescs Date: Thu, 22 Jun 2023 13:57:19 -0700 Message-Id: <20230622205745.79707-8-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230622205745.79707-1-vishal.moola@gmail.com> References: <20230622205745.79707-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit This removes some direct accesses to struct page, working towards splitting out struct ptdesc from struct page. Signed-off-by: Vishal Moola (Oracle) Acked-by: Mike Rapoport (IBM) --- arch/x86/xen/mmu_pv.c | 2 +- include/linux/mm.h | 14 +++++++------- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/arch/x86/xen/mmu_pv.c b/arch/x86/xen/mmu_pv.c index e0a975165de7..8796ec310483 100644 --- a/arch/x86/xen/mmu_pv.c +++ b/arch/x86/xen/mmu_pv.c @@ -667,7 +667,7 @@ static spinlock_t *xen_pte_lock(struct page *page, struct mm_struct *mm) spinlock_t *ptl = NULL; #if USE_SPLIT_PTE_PTLOCKS - ptl = ptlock_ptr(page); + ptl = ptlock_ptr(page_ptdesc(page)); spin_lock_nest_lock(ptl, &mm->page_table_lock); #endif diff --git a/include/linux/mm.h b/include/linux/mm.h index 39b0a4661e44..0b230d5d229a 100644 --- a/include/linux/mm.h +++ b/include/linux/mm.h @@ -2801,9 +2801,9 @@ void __init ptlock_cache_init(void); bool ptlock_alloc(struct ptdesc *ptdesc); extern void ptlock_free(struct page *page); -static inline spinlock_t *ptlock_ptr(struct page *page) +static inline spinlock_t *ptlock_ptr(struct ptdesc *ptdesc) { - return page->ptl; + return ptdesc->ptl; } #else /* ALLOC_SPLIT_PTLOCKS */ static inline void ptlock_cache_init(void) @@ -2819,15 +2819,15 @@ static inline void ptlock_free(struct page *page) { } -static inline spinlock_t *ptlock_ptr(struct page *page) +static inline spinlock_t *ptlock_ptr(struct ptdesc *ptdesc) { - return &page->ptl; + return &ptdesc->ptl; } #endif /* ALLOC_SPLIT_PTLOCKS */ static inline spinlock_t *pte_lockptr(struct mm_struct *mm, pmd_t *pmd) { - return ptlock_ptr(pmd_page(*pmd)); + return ptlock_ptr(page_ptdesc(pmd_page(*pmd))); } static inline bool ptlock_init(struct page *page) @@ -2842,7 +2842,7 @@ static inline bool ptlock_init(struct page *page) VM_BUG_ON_PAGE(*(unsigned long *)&page->ptl, page); if (!ptlock_alloc(page_ptdesc(page))) return false; - spin_lock_init(ptlock_ptr(page)); + spin_lock_init(ptlock_ptr(page_ptdesc(page))); return true; } @@ -2923,7 +2923,7 @@ static inline struct ptdesc *pmd_ptdesc(pmd_t *pmd) static inline spinlock_t *pmd_lockptr(struct mm_struct *mm, pmd_t *pmd) { - return ptlock_ptr(ptdesc_page(pmd_ptdesc(pmd))); + return ptlock_ptr(pmd_ptdesc(pmd)); } static inline bool pmd_ptlock_init(struct page *page) -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 22 20:58:17 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 20:58:17 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553955.864921 (Exim 4.92) (envelope-from ) id 1qCRNh-0001YT-3l; Thu, 22 Jun 2023 20:58:17 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553955.864921; Thu, 22 Jun 2023 20:58:17 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCRNg-0001Xe-US; Thu, 22 Jun 2023 20:58:16 +0000 Received: by outflank-mailman (input) for mailman id 553955; Thu, 22 Jun 2023 20:58:15 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCRNf-0006Mr-Bt for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 20:58:15 +0000 Received: from mail-yb1-xb2d.google.com (mail-yb1-xb2d.google.com [2607:f8b0:4864:20::b2d]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 803395e6-113f-11ee-8611-37d641c3527e; Thu, 22 Jun 2023 22:58:13 +0200 (CEST) Received: by mail-yb1-xb2d.google.com with SMTP id 3f1490d57ef6-bc43a73ab22so23039276.0 for ; Thu, 22 Jun 2023 13:58:13 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::36]) by smtp.googlemail.com with ESMTPSA id d18-20020a5b0c52000000b00bc501a1b062sm1684937ybr.42.2023.06.22.13.58.10 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 22 Jun 2023 13:58:12 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 803395e6-113f-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687467492; x=1690059492; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=QwvXTPG+SvX1bm+f7lh9ddV99LBkA8HMSnaL5DvtP/w=; b=V7iIPiXuenZc5LxLPVAYTxoBribtdhvsXYi0NcHOJsAsyDJa0lFaEv3HMhCS8nZW6D tBGbKDLUXgq6SXB+UHfoUVwA1VP1oc9uyCsQtJaaWpV0A9i7GdGsTkpa9yZ5PdH4EtVM Ni1Gr88vaVkgSSmwVNY0eyneVDMvJ4SahI/dxEEDmyh7acczYA1fdB5Q85cg9BE7TeJ5 v+qGG39VtOAMjNZakRVRxe4b5fNSSUnmW+YdbvmJDes0xjF1gJ/GuHYdLYvgYUIG6iI6 eUC4zgsXmS8SGsNdBxCv7WeYY6IHbiVQmbpLNYO57IVPmerTWPsJRHKkJEBcDrOn9Fu9 t5Kg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687467492; x=1690059492; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=QwvXTPG+SvX1bm+f7lh9ddV99LBkA8HMSnaL5DvtP/w=; b=a+rOEhqKcRn0j7Lj2BJCj4nNyiQrB7iTzOBodTWFLjb/lvQvYbp2JsajxghR4CaHPP 79QU4+Ugjc7fm2c1zoRyj7Am0YQkuMH9FHEHeGfzIN4m4kS8LGaQgs9T0arGDbRICHfo XNC2UtYmtsT18B8Akk4Vr3AZxFqDRiDAWwWgN1/w8UMzyp6MRkBbV2Nxvh6R2t3WR/Qu V6zvpC/PdiyPgqM1whnoW2ZHmy6DQPlle7RnlkmwiYoWTHjBWf8auuuc5WHAAH5bl+kb RVN6AJV0ZQ7ug/knny2ySjvH+8chrgUTCDUwuzcyc0+xqgDPaxsoINYU+ED1Jhp2ygCM 34Jw== X-Gm-Message-State: AC+VfDyT+JDP/cYiz6MgZYsJXLXgZcGt+mFgU7K1UKeLXJ5GHMFD4Gvq fhNn7Nxrey8Z8NTrxYv+BDg= X-Google-Smtp-Source: ACHHUZ6ppOE9aJqUa6Cvm3ZqXuUeTC6rF3mEFKF1yW3aWJUSdADhBmOmFOGnjJA0vfHR/02sJ+sTQw== X-Received: by 2002:a25:1406:0:b0:b9d:766d:f72b with SMTP id 6-20020a251406000000b00b9d766df72bmr17309619ybu.31.1687467492519; Thu, 22 Jun 2023 13:58:12 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" , Mike Rapoport Subject: [PATCH v5 08/33] mm: Convert pmd_ptlock_init() to use ptdescs Date: Thu, 22 Jun 2023 13:57:20 -0700 Message-Id: <20230622205745.79707-9-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230622205745.79707-1-vishal.moola@gmail.com> References: <20230622205745.79707-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit This removes some direct accesses to struct page, working towards splitting out struct ptdesc from struct page. Signed-off-by: Vishal Moola (Oracle) Acked-by: Mike Rapoport (IBM) --- include/linux/mm.h | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/include/linux/mm.h b/include/linux/mm.h index 0b230d5d229a..1c4c6a7b69b3 100644 --- a/include/linux/mm.h +++ b/include/linux/mm.h @@ -2926,12 +2926,12 @@ static inline spinlock_t *pmd_lockptr(struct mm_struct *mm, pmd_t *pmd) return ptlock_ptr(pmd_ptdesc(pmd)); } -static inline bool pmd_ptlock_init(struct page *page) +static inline bool pmd_ptlock_init(struct ptdesc *ptdesc) { #ifdef CONFIG_TRANSPARENT_HUGEPAGE - page->pmd_huge_pte = NULL; + ptdesc->pmd_huge_pte = NULL; #endif - return ptlock_init(page); + return ptlock_init(ptdesc_page(ptdesc)); } static inline void pmd_ptlock_free(struct page *page) @@ -2951,7 +2951,7 @@ static inline spinlock_t *pmd_lockptr(struct mm_struct *mm, pmd_t *pmd) return &mm->page_table_lock; } -static inline bool pmd_ptlock_init(struct page *page) { return true; } +static inline bool pmd_ptlock_init(struct ptdesc *ptdesc) { return true; } static inline void pmd_ptlock_free(struct page *page) {} #define pmd_huge_pte(mm, pmd) ((mm)->pmd_huge_pte) @@ -2967,7 +2967,7 @@ static inline spinlock_t *pmd_lock(struct mm_struct *mm, pmd_t *pmd) static inline bool pgtable_pmd_page_ctor(struct page *page) { - if (!pmd_ptlock_init(page)) + if (!pmd_ptlock_init(page_ptdesc(page))) return false; __SetPageTable(page); inc_lruvec_page_state(page, NR_PAGETABLE); -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 22 20:58:17 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 20:58:17 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553956.864926 (Exim 4.92) (envelope-from ) id 1qCRNh-0001fN-Px; Thu, 22 Jun 2023 20:58:17 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553956.864926; Thu, 22 Jun 2023 20:58:17 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCRNh-0001dU-Be; Thu, 22 Jun 2023 20:58:17 +0000 Received: by outflank-mailman (input) for mailman id 553956; Thu, 22 Jun 2023 20:58:16 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCRNg-0006Mq-9Y for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 20:58:16 +0000 Received: from mail-yb1-xb2e.google.com (mail-yb1-xb2e.google.com [2607:f8b0:4864:20::b2e]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 81b000f5-113f-11ee-b237-6b7b168915f2; Thu, 22 Jun 2023 22:58:15 +0200 (CEST) Received: by mail-yb1-xb2e.google.com with SMTP id 3f1490d57ef6-bd6d9d7da35so7433308276.0 for ; Thu, 22 Jun 2023 13:58:15 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::36]) by smtp.googlemail.com with ESMTPSA id d18-20020a5b0c52000000b00bc501a1b062sm1684937ybr.42.2023.06.22.13.58.12 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 22 Jun 2023 13:58:14 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 81b000f5-113f-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687467494; x=1690059494; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=uRcW1jW+95PozpJhE7MOWGztyyXp9a8KAqI8T3AvQGQ=; b=HsKWFMjgc4nubz/CGqFDPycebn/IPCG8iEQx6Mn71pJrvZNcRYxgpmqqwFpryLpJLe U6CGU7xvBFlirMshzGg8T6i9YZLzGTtKn+CcBm+t56pm6lJ3TVyGOGzuaYqSKVupajIy 2DQcn5crUg65j6RvjiPUyIXYF96jtw4qqx3rhyDnmY0a3BGeHq9tpmXxMVnvgVEpyfbE yzd/PSl+jlwziFt4f/K0ChaqSr0HvoaTl5CqhIJz/dAvHyE0NXDWuGcwuqDlT7PKZ2aX gZRI6eIDsk4xWFnXPJdwPbiPss9pl0UJqOUtsNLHKXkhccURxnMshNZ4JT+gJbW9Nc9s Wlpw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687467494; x=1690059494; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=uRcW1jW+95PozpJhE7MOWGztyyXp9a8KAqI8T3AvQGQ=; b=NRTW/9MwSq8R7upPh9awnswa+XaHUNdkNKtEyZ2KC2NiEkyIm9pN1R4kjl5FqZbhMB G98p06mYrtBpRAi21Sq4t06jRIPsdQoTnm56ICKcdaeXdfHBmLsXLAhbtem5kOV/fF2f mY9M6bJyn0zxboHQcd9RcRN8GGhj3/HPRgMn2mum3xZ8ajKhjrzSxx4+ZgkBYk9kYAoH /C6AFQJfbUl2rRFMlrpA9t577A1HkLFTPgp8sDldNYdym+chiZw8Uv3txs/fBK9RqUmD ecJzLHWqY3wIyUkcV4UXQI1Tdk6wbvXMmC32q+GIB49JGoqOzOLd05Sz3tBs46kTGqso j6oQ== X-Gm-Message-State: AC+VfDyQLN9bvDTWOa7gmzKsAtMJZUxGE4mGdNF1AW/s05etqBmb4SqO HeA/22J/bl0zIMkg1cmxveY= X-Google-Smtp-Source: ACHHUZ6cGkwHgROFidQ6wg7SrcN0EGNFb8Fy55CY8QeCStx6HVI/iqe9yVRaoh7RjiWHDP58CRtZwQ== X-Received: by 2002:a25:f902:0:b0:bff:209a:9034 with SMTP id q2-20020a25f902000000b00bff209a9034mr4880542ybe.22.1687467494535; Thu, 22 Jun 2023 13:58:14 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" , Mike Rapoport Subject: [PATCH v5 09/33] mm: Convert ptlock_init() to use ptdescs Date: Thu, 22 Jun 2023 13:57:21 -0700 Message-Id: <20230622205745.79707-10-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230622205745.79707-1-vishal.moola@gmail.com> References: <20230622205745.79707-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit This removes some direct accesses to struct page, working towards splitting out struct ptdesc from struct page. Signed-off-by: Vishal Moola (Oracle) Acked-by: Mike Rapoport (IBM) --- include/linux/mm.h | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/include/linux/mm.h b/include/linux/mm.h index 1c4c6a7b69b3..4af424e4015a 100644 --- a/include/linux/mm.h +++ b/include/linux/mm.h @@ -2830,7 +2830,7 @@ static inline spinlock_t *pte_lockptr(struct mm_struct *mm, pmd_t *pmd) return ptlock_ptr(page_ptdesc(pmd_page(*pmd))); } -static inline bool ptlock_init(struct page *page) +static inline bool ptlock_init(struct ptdesc *ptdesc) { /* * prep_new_page() initialize page->private (and therefore page->ptl) @@ -2839,10 +2839,10 @@ static inline bool ptlock_init(struct page *page) * It can happen if arch try to use slab for page table allocation: * slab code uses page->slab_cache, which share storage with page->ptl. */ - VM_BUG_ON_PAGE(*(unsigned long *)&page->ptl, page); - if (!ptlock_alloc(page_ptdesc(page))) + VM_BUG_ON_PAGE(*(unsigned long *)&ptdesc->ptl, ptdesc_page(ptdesc)); + if (!ptlock_alloc(ptdesc)) return false; - spin_lock_init(ptlock_ptr(page_ptdesc(page))); + spin_lock_init(ptlock_ptr(ptdesc)); return true; } @@ -2855,13 +2855,13 @@ static inline spinlock_t *pte_lockptr(struct mm_struct *mm, pmd_t *pmd) return &mm->page_table_lock; } static inline void ptlock_cache_init(void) {} -static inline bool ptlock_init(struct page *page) { return true; } +static inline bool ptlock_init(struct ptdesc *ptdesc) { return true; } static inline void ptlock_free(struct page *page) {} #endif /* USE_SPLIT_PTE_PTLOCKS */ static inline bool pgtable_pte_page_ctor(struct page *page) { - if (!ptlock_init(page)) + if (!ptlock_init(page_ptdesc(page))) return false; __SetPageTable(page); inc_lruvec_page_state(page, NR_PAGETABLE); @@ -2931,7 +2931,7 @@ static inline bool pmd_ptlock_init(struct ptdesc *ptdesc) #ifdef CONFIG_TRANSPARENT_HUGEPAGE ptdesc->pmd_huge_pte = NULL; #endif - return ptlock_init(ptdesc_page(ptdesc)); + return ptlock_init(ptdesc); } static inline void pmd_ptlock_free(struct page *page) -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 22 20:58:21 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 20:58:21 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553957.864939 (Exim 4.92) (envelope-from ) id 1qCRNk-0002cg-Vn; Thu, 22 Jun 2023 20:58:20 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553957.864939; Thu, 22 Jun 2023 20:58:20 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCRNk-0002a4-IN; Thu, 22 Jun 2023 20:58:20 +0000 Received: by outflank-mailman (input) for mailman id 553957; Thu, 22 Jun 2023 20:58:18 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCRNi-0006Mq-8u for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 20:58:18 +0000 Received: from mail-yb1-xb2b.google.com (mail-yb1-xb2b.google.com [2607:f8b0:4864:20::b2b]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 82deee1e-113f-11ee-b237-6b7b168915f2; Thu, 22 Jun 2023 22:58:17 +0200 (CEST) Received: by mail-yb1-xb2b.google.com with SMTP id 3f1490d57ef6-be49e41a3d6so5948877276.1 for ; Thu, 22 Jun 2023 13:58:17 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::36]) by smtp.googlemail.com with ESMTPSA id d18-20020a5b0c52000000b00bc501a1b062sm1684937ybr.42.2023.06.22.13.58.14 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 22 Jun 2023 13:58:16 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 82deee1e-113f-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687467496; x=1690059496; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=wSwuU7fg/k+TT5PagWIdYLap7GxOydHG9fnVI01D6B4=; b=I/bVEj+DUjJI8l/gEF/kUAGaYNT5Bo0ZW57h+bRIiIunD3HbfI+MBQBKO4xoy6kMld by9iDd+YOlloG6orphek9MUhK7idN+HCTnjbwImmtOZyc6e9u9PHx9KvfH/RMgtU+eEw KkmIT3OJU3QYrQoQpzTDW/lNw6UL91T+VL7WZPaAaf3blTIwnU3tSpIBE8mZnuXVnYm+ rvZ17E5R9YwQ5EOQRDXtuuSLgHPTNFwHVzddHdU5MZn7f0HGX0TpCThXTZUeoTrDSQuu 9j0W4VdWm0ZtykEhgIk1WPxDhiiNhplU95urAkZpVmBWbtxqWeEVwFyvBy3V06yBmQux q4sw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687467496; x=1690059496; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=wSwuU7fg/k+TT5PagWIdYLap7GxOydHG9fnVI01D6B4=; b=IfmDzNPyxGlo59j2RSmlSxNkx6QqF9JyIkn4sP8kcaPhb29Gu9+nmXyNTXaZfwYLe9 JLUDbXK+V8WHYHtPQFN5RPxEYqcs22herzJ3pLsKays5g0qgKPbPjf9yAhBYmTT6aatF Ed+bdfs5Gr87P4VIAWTNmP1x4u/polQD2DkXj8ElqgaBR+ed2LmL3MaubQdTnUW1dAUQ rWVQtBWMI1mput0Pym/p56ybfcr6SK78buOgkASCGRNHQsfQRHg8XBVg904ciDKEtoBU 3FHpfd4i+lbHFcCXAIG/PS4v4RpIUvqxHvGYKCk8Y2cIVvHYn4mfddQwX3d49ZpW1M+B 8RZw== X-Gm-Message-State: AC+VfDwh4qwuTk/pj/NE//027T4LFG0lwDjp21L4BgoUT9KQkBIwR65x w5bWCzCv5XPZGktUemloj1A= X-Google-Smtp-Source: ACHHUZ4fKnSuVlprYtWMiqysn5f2VA+PJ55bhXLl+JTYwbJxQpJ17qCGbx2gEAsv8+8GLejR/TMFxQ== X-Received: by 2002:a25:6982:0:b0:ba8:1c9e:c77f with SMTP id e124-20020a256982000000b00ba81c9ec77fmr9956027ybc.22.1687467496585; Thu, 22 Jun 2023 13:58:16 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" , Mike Rapoport Subject: [PATCH v5 10/33] mm: Convert pmd_ptlock_free() to use ptdescs Date: Thu, 22 Jun 2023 13:57:22 -0700 Message-Id: <20230622205745.79707-11-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230622205745.79707-1-vishal.moola@gmail.com> References: <20230622205745.79707-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit This removes some direct accesses to struct page, working towards splitting out struct ptdesc from struct page. Signed-off-by: Vishal Moola (Oracle) Acked-by: Mike Rapoport (IBM) --- include/linux/mm.h | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/include/linux/mm.h b/include/linux/mm.h index 4af424e4015a..0221675e4dc5 100644 --- a/include/linux/mm.h +++ b/include/linux/mm.h @@ -2934,12 +2934,12 @@ static inline bool pmd_ptlock_init(struct ptdesc *ptdesc) return ptlock_init(ptdesc); } -static inline void pmd_ptlock_free(struct page *page) +static inline void pmd_ptlock_free(struct ptdesc *ptdesc) { #ifdef CONFIG_TRANSPARENT_HUGEPAGE - VM_BUG_ON_PAGE(page->pmd_huge_pte, page); + VM_BUG_ON_PAGE(ptdesc->pmd_huge_pte, ptdesc_page(ptdesc)); #endif - ptlock_free(page); + ptlock_free(ptdesc_page(ptdesc)); } #define pmd_huge_pte(mm, pmd) (pmd_ptdesc(pmd)->pmd_huge_pte) @@ -2952,7 +2952,7 @@ static inline spinlock_t *pmd_lockptr(struct mm_struct *mm, pmd_t *pmd) } static inline bool pmd_ptlock_init(struct ptdesc *ptdesc) { return true; } -static inline void pmd_ptlock_free(struct page *page) {} +static inline void pmd_ptlock_free(struct ptdesc *ptdesc) {} #define pmd_huge_pte(mm, pmd) ((mm)->pmd_huge_pte) @@ -2976,7 +2976,7 @@ static inline bool pgtable_pmd_page_ctor(struct page *page) static inline void pgtable_pmd_page_dtor(struct page *page) { - pmd_ptlock_free(page); + pmd_ptlock_free(page_ptdesc(page)); __ClearPageTable(page); dec_lruvec_page_state(page, NR_PAGETABLE); } -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 22 20:58:27 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 20:58:27 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553964.864951 (Exim 4.92) (envelope-from ) id 1qCRNr-0003v9-IM; Thu, 22 Jun 2023 20:58:27 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553964.864951; Thu, 22 Jun 2023 20:58:27 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCRNr-0003uf-CD; Thu, 22 Jun 2023 20:58:27 +0000 Received: by outflank-mailman (input) for mailman id 553964; Thu, 22 Jun 2023 20:58:26 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCRNq-0006Mr-0k for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 20:58:26 +0000 Received: from mail-vs1-xe2f.google.com (mail-vs1-xe2f.google.com [2607:f8b0:4864:20::e2f]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 865d4c7b-113f-11ee-8611-37d641c3527e; Thu, 22 Jun 2023 22:58:23 +0200 (CEST) Received: by mail-vs1-xe2f.google.com with SMTP id ada2fe7eead31-440b66adc81so1972877137.1 for ; Thu, 22 Jun 2023 13:58:24 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::36]) by smtp.googlemail.com with ESMTPSA id d18-20020a5b0c52000000b00bc501a1b062sm1684937ybr.42.2023.06.22.13.58.20 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 22 Jun 2023 13:58:22 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 865d4c7b-113f-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687467503; x=1690059503; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=JO1uHT8He+Av5NkiVAKHRKBK8X3I83QFDr1CeWVeYZ4=; b=ABncV8bcPnEx/V5hIZt3PK/aoJ0qqGZh9rD70FXARHI59ktAXJSvC9QEDtQfXkDAn0 gPvKhKRqJ9/P2llt1JLv5/rvvesIO3IE1AWOpUXp6uiTrsNqZThkWa1zouEa3Mbcsav1 276BRnzfwGIqQvVb7zax3PpvYwF7X1EO6UUT2ec+v+o19Kw7redekwq60WrGr9r5dly5 iwJZLpkxzloILO701IKBKyiXRNIoFjjYDVD07RCmfWhhF52WoxSilofbL2vgDoXDMBKs Q1/htIPwHXAwm3A3T5s4rqwem2be0Q53PLHeqtpDT4d2+OmrVTF4tJkx6cGzhA/nmIID QsiA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687467503; x=1690059503; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=JO1uHT8He+Av5NkiVAKHRKBK8X3I83QFDr1CeWVeYZ4=; b=bHLVqo0vfTIhH0sHZfsqifZeti7tU6Fyz3SGAmxT+riwxbnEPo4ahROydxoVVaJ1ui f+nbMkh6V9cxfxs9EQKhiu4sbAhAOhn0CWj/VLL4LON0drZv/a2e3D55dPmIiuuNEJAI 80I/q+TEf5H1pN73f71ysBduPrpKiEzTlJmr58ggaysMf4WKHXbzGOhi3q/799vrNeke pw4kbSSTLBuZn0b7u3e282rl3PwvtH4/mh14VNu8lnJZO0VEjFFsVgAHauyS9zH2b6fr n5daiXCOaGpO8k5YVoDiEWP/EdXvb7BeoiJdZra23Djk8LC+sp8EsvqJyEteqS2Ut6yd XTvg== X-Gm-Message-State: AC+VfDx6BXjMqZZlB15FexlsNkr9MdiXun5MfHb0uamIRpLiM5EUqtfI VCuE052uNbfxhPo6hZefJRA= X-Google-Smtp-Source: ACHHUZ6J7vEsrvtjtX6BrmtaxKuDLa21w+gHXjjUWBOcKrlZJaxY4XlKKEFhMBRF8kX2fbwnoUz2mw== X-Received: by 2002:a67:ef81:0:b0:440:8ac0:ef57 with SMTP id r1-20020a67ef81000000b004408ac0ef57mr9038809vsp.24.1687467502842; Thu, 22 Jun 2023 13:58:22 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" , Christophe Leroy , Mike Rapoport Subject: [PATCH v5 13/33] powerpc: Convert various functions to use ptdescs Date: Thu, 22 Jun 2023 13:57:25 -0700 Message-Id: <20230622205745.79707-14-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230622205745.79707-1-vishal.moola@gmail.com> References: <20230622205745.79707-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit In order to split struct ptdesc from struct page, convert various functions to use ptdescs. Signed-off-by: Vishal Moola (Oracle) Acked-by: Mike Rapoport (IBM) --- arch/powerpc/mm/book3s64/mmu_context.c | 10 +++--- arch/powerpc/mm/book3s64/pgtable.c | 32 +++++++++--------- arch/powerpc/mm/pgtable-frag.c | 46 +++++++++++++------------- 3 files changed, 44 insertions(+), 44 deletions(-) diff --git a/arch/powerpc/mm/book3s64/mmu_context.c b/arch/powerpc/mm/book3s64/mmu_context.c index c766e4c26e42..1715b07c630c 100644 --- a/arch/powerpc/mm/book3s64/mmu_context.c +++ b/arch/powerpc/mm/book3s64/mmu_context.c @@ -246,15 +246,15 @@ static void destroy_contexts(mm_context_t *ctx) static void pmd_frag_destroy(void *pmd_frag) { int count; - struct page *page; + struct ptdesc *ptdesc; - page = virt_to_page(pmd_frag); + ptdesc = virt_to_ptdesc(pmd_frag); /* drop all the pending references */ count = ((unsigned long)pmd_frag & ~PAGE_MASK) >> PMD_FRAG_SIZE_SHIFT; /* We allow PTE_FRAG_NR fragments from a PTE page */ - if (atomic_sub_and_test(PMD_FRAG_NR - count, &page->pt_frag_refcount)) { - pgtable_pmd_page_dtor(page); - __free_page(page); + if (atomic_sub_and_test(PMD_FRAG_NR - count, &ptdesc->pt_frag_refcount)) { + pagetable_pmd_dtor(ptdesc); + pagetable_free(ptdesc); } } diff --git a/arch/powerpc/mm/book3s64/pgtable.c b/arch/powerpc/mm/book3s64/pgtable.c index 85c84e89e3ea..1212deeabe15 100644 --- a/arch/powerpc/mm/book3s64/pgtable.c +++ b/arch/powerpc/mm/book3s64/pgtable.c @@ -306,22 +306,22 @@ static pmd_t *get_pmd_from_cache(struct mm_struct *mm) static pmd_t *__alloc_for_pmdcache(struct mm_struct *mm) { void *ret = NULL; - struct page *page; + struct ptdesc *ptdesc; gfp_t gfp = GFP_KERNEL_ACCOUNT | __GFP_ZERO; if (mm == &init_mm) gfp &= ~__GFP_ACCOUNT; - page = alloc_page(gfp); - if (!page) + ptdesc = pagetable_alloc(gfp, 0); + if (!ptdesc) return NULL; - if (!pgtable_pmd_page_ctor(page)) { - __free_pages(page, 0); + if (!pagetable_pmd_ctor(ptdesc)) { + pagetable_free(ptdesc); return NULL; } - atomic_set(&page->pt_frag_refcount, 1); + atomic_set(&ptdesc->pt_frag_refcount, 1); - ret = page_address(page); + ret = ptdesc_address(ptdesc); /* * if we support only one fragment just return the * allocated page. @@ -331,12 +331,12 @@ static pmd_t *__alloc_for_pmdcache(struct mm_struct *mm) spin_lock(&mm->page_table_lock); /* - * If we find pgtable_page set, we return + * If we find ptdesc_page set, we return * the allocated page with single fragment * count. */ if (likely(!mm->context.pmd_frag)) { - atomic_set(&page->pt_frag_refcount, PMD_FRAG_NR); + atomic_set(&ptdesc->pt_frag_refcount, PMD_FRAG_NR); mm->context.pmd_frag = ret + PMD_FRAG_SIZE; } spin_unlock(&mm->page_table_lock); @@ -357,15 +357,15 @@ pmd_t *pmd_fragment_alloc(struct mm_struct *mm, unsigned long vmaddr) void pmd_fragment_free(unsigned long *pmd) { - struct page *page = virt_to_page(pmd); + struct ptdesc *ptdesc = virt_to_ptdesc(pmd); - if (PageReserved(page)) - return free_reserved_page(page); + if (pagetable_is_reserved(ptdesc)) + return free_reserved_ptdesc(ptdesc); - BUG_ON(atomic_read(&page->pt_frag_refcount) <= 0); - if (atomic_dec_and_test(&page->pt_frag_refcount)) { - pgtable_pmd_page_dtor(page); - __free_page(page); + BUG_ON(atomic_read(&ptdesc->pt_frag_refcount) <= 0); + if (atomic_dec_and_test(&ptdesc->pt_frag_refcount)) { + pagetable_pmd_dtor(ptdesc); + pagetable_free(ptdesc); } } diff --git a/arch/powerpc/mm/pgtable-frag.c b/arch/powerpc/mm/pgtable-frag.c index 20652daa1d7e..8961f1540209 100644 --- a/arch/powerpc/mm/pgtable-frag.c +++ b/arch/powerpc/mm/pgtable-frag.c @@ -18,15 +18,15 @@ void pte_frag_destroy(void *pte_frag) { int count; - struct page *page; + struct ptdesc *ptdesc; - page = virt_to_page(pte_frag); + ptdesc = virt_to_ptdesc(pte_frag); /* drop all the pending references */ count = ((unsigned long)pte_frag & ~PAGE_MASK) >> PTE_FRAG_SIZE_SHIFT; /* We allow PTE_FRAG_NR fragments from a PTE page */ - if (atomic_sub_and_test(PTE_FRAG_NR - count, &page->pt_frag_refcount)) { - pgtable_pte_page_dtor(page); - __free_page(page); + if (atomic_sub_and_test(PTE_FRAG_NR - count, &ptdesc->pt_frag_refcount)) { + pagetable_pte_dtor(ptdesc); + pagetable_free(ptdesc); } } @@ -55,25 +55,25 @@ static pte_t *get_pte_from_cache(struct mm_struct *mm) static pte_t *__alloc_for_ptecache(struct mm_struct *mm, int kernel) { void *ret = NULL; - struct page *page; + struct ptdesc *ptdesc; if (!kernel) { - page = alloc_page(PGALLOC_GFP | __GFP_ACCOUNT); - if (!page) + ptdesc = pagetable_alloc(PGALLOC_GFP | __GFP_ACCOUNT, 0); + if (!ptdesc) return NULL; - if (!pgtable_pte_page_ctor(page)) { - __free_page(page); + if (!pagetable_pte_ctor(ptdesc)) { + pagetable_free(ptdesc); return NULL; } } else { - page = alloc_page(PGALLOC_GFP); - if (!page) + ptdesc = pagetable_alloc(PGALLOC_GFP, 0); + if (!ptdesc) return NULL; } - atomic_set(&page->pt_frag_refcount, 1); + atomic_set(&ptdesc->pt_frag_refcount, 1); - ret = page_address(page); + ret = ptdesc_address(ptdesc); /* * if we support only one fragment just return the * allocated page. @@ -82,12 +82,12 @@ static pte_t *__alloc_for_ptecache(struct mm_struct *mm, int kernel) return ret; spin_lock(&mm->page_table_lock); /* - * If we find pgtable_page set, we return + * If we find ptdesc_page set, we return * the allocated page with single fragment * count. */ if (likely(!pte_frag_get(&mm->context))) { - atomic_set(&page->pt_frag_refcount, PTE_FRAG_NR); + atomic_set(&ptdesc->pt_frag_refcount, PTE_FRAG_NR); pte_frag_set(&mm->context, ret + PTE_FRAG_SIZE); } spin_unlock(&mm->page_table_lock); @@ -108,15 +108,15 @@ pte_t *pte_fragment_alloc(struct mm_struct *mm, int kernel) void pte_fragment_free(unsigned long *table, int kernel) { - struct page *page = virt_to_page(table); + struct ptdesc *ptdesc = virt_to_ptdesc(table); - if (PageReserved(page)) - return free_reserved_page(page); + if (pagetable_is_reserved(ptdesc)) + return free_reserved_ptdesc(ptdesc); - BUG_ON(atomic_read(&page->pt_frag_refcount) <= 0); - if (atomic_dec_and_test(&page->pt_frag_refcount)) { + BUG_ON(atomic_read(&ptdesc->pt_frag_refcount) <= 0); + if (atomic_dec_and_test(&ptdesc->pt_frag_refcount)) { if (!kernel) - pgtable_pte_page_dtor(page); - __free_page(page); + pagetable_pte_dtor(ptdesc); + pagetable_free(ptdesc); } } -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 22 20:58:30 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 20:58:30 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553966.864960 (Exim 4.92) (envelope-from ) id 1qCRNt-0004Se-T2; Thu, 22 Jun 2023 20:58:29 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553966.864960; Thu, 22 Jun 2023 20:58:29 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCRNt-0004Rm-P0; Thu, 22 Jun 2023 20:58:29 +0000 Received: by outflank-mailman (input) for mailman id 553966; Thu, 22 Jun 2023 20:58:28 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCRNr-0006Mr-Rq for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 20:58:27 +0000 Received: from mail-yb1-xb30.google.com (mail-yb1-xb30.google.com [2607:f8b0:4864:20::b30]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 87919934-113f-11ee-8611-37d641c3527e; Thu, 22 Jun 2023 22:58:25 +0200 (CEST) Received: by mail-yb1-xb30.google.com with SMTP id 3f1490d57ef6-bd61dd9a346so7344211276.2 for ; Thu, 22 Jun 2023 13:58:26 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::36]) by smtp.googlemail.com with ESMTPSA id d18-20020a5b0c52000000b00bc501a1b062sm1684937ybr.42.2023.06.22.13.58.23 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 22 Jun 2023 13:58:24 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 87919934-113f-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687467505; x=1690059505; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=sltDOqqNfHEtvz8jLXUjW/r74sJCuRKUMVTEbSHBWCo=; b=kPeKxS6xjGfz9AlFKXBrS7k/oMitniLbJZydJSL7P9mRWo4eZ6+mhZ0RfQ/xgzRpRR shlp6IDjxc1Zi54v2Szw/IWPs7h13yhnqa4+SLs+JrO4xub++cDoiwuSfK32oAECXVqr +0aImmxu0MO1NlcDWPWE1t/GfM5gpYghSOx5OplyS42V7eE66ajuWsZpNSBe+PsYPrqi VcjBr8bDpFWaHKuuoQ+xJvxJpfPEC5IOcvI0xVrUQ3Ge8p6hulYzFPiT6b0ht75dwKoi lPIDcih2cDzp/fXel61I0gphUyR5giMIqEnrUx6FuLn8RjvsQYvRr7lV2J95H++gAjzy cNtw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687467505; x=1690059505; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=sltDOqqNfHEtvz8jLXUjW/r74sJCuRKUMVTEbSHBWCo=; b=PmC7yI1QWKu4vHpesFnlSbW3dqplAnJCopQJBO4Kfp7VdFkJGjZ1XZEqYP1JBPp7b5 S+RtcbUzjJG30j5ce5OggHa0iQtIfrr5dtqx2os020lfGJmtVxcRM5EIpzczQxiUM0rv WTHmmICEHH4+zbFMV+lBgzGdIQQKOjymA55xGZR9oMoXr96D8DmhBBb56s+63Sx34/W1 QIiWj73nXOSPapHvGmBMrd2pg/vEHqLK28GalINnqF8/Lc1AYNiDnk6E0EKsM12Q/Mvw SPjTu2zGNEeYQLw+z96qgBmcXYUIIor4C0y6O9eIr7Lwq3U9uBeHP/uwMqmYNkhh8LS4 TbWA== X-Gm-Message-State: AC+VfDzIqpveYivP+ENxNxnBBv7fUehGf+B7X4BxlJqv+NUzb05YxDec X6u3rmzjM/qOh3YKDJt24NI= X-Google-Smtp-Source: ACHHUZ79c/uNHhonLkSvxldyR2pWp+AvCJ2e1p2TKGM3TkHKm3UmTC7VE9FYRHtJjJMm9DuNY9PrUg== X-Received: by 2002:a25:c057:0:b0:ba7:db6c:c0ee with SMTP id c84-20020a25c057000000b00ba7db6cc0eemr14608074ybf.6.1687467504871; Thu, 22 Jun 2023 13:58:24 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" , Dave Hansen Subject: [PATCH v5 14/33] x86: Convert various functions to use ptdescs Date: Thu, 22 Jun 2023 13:57:26 -0700 Message-Id: <20230622205745.79707-15-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230622205745.79707-1-vishal.moola@gmail.com> References: <20230622205745.79707-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit In order to split struct ptdesc from struct page, convert various functions to use ptdescs. Some of the functions use the *get*page*() helper functions. Convert these to use pagetable_alloc() and ptdesc_address() instead to help standardize page tables further. Signed-off-by: Vishal Moola (Oracle) --- arch/x86/mm/pgtable.c | 47 ++++++++++++++++++++++++++----------------- 1 file changed, 28 insertions(+), 19 deletions(-) diff --git a/arch/x86/mm/pgtable.c b/arch/x86/mm/pgtable.c index 15a8009a4480..d3a93e8766ee 100644 --- a/arch/x86/mm/pgtable.c +++ b/arch/x86/mm/pgtable.c @@ -52,7 +52,7 @@ early_param("userpte", setup_userpte); void ___pte_free_tlb(struct mmu_gather *tlb, struct page *pte) { - pgtable_pte_page_dtor(pte); + pagetable_pte_dtor(page_ptdesc(pte)); paravirt_release_pte(page_to_pfn(pte)); paravirt_tlb_remove_table(tlb, pte); } @@ -60,7 +60,7 @@ void ___pte_free_tlb(struct mmu_gather *tlb, struct page *pte) #if CONFIG_PGTABLE_LEVELS > 2 void ___pmd_free_tlb(struct mmu_gather *tlb, pmd_t *pmd) { - struct page *page = virt_to_page(pmd); + struct ptdesc *ptdesc = virt_to_ptdesc(pmd); paravirt_release_pmd(__pa(pmd) >> PAGE_SHIFT); /* * NOTE! For PAE, any changes to the top page-directory-pointer-table @@ -69,8 +69,8 @@ void ___pmd_free_tlb(struct mmu_gather *tlb, pmd_t *pmd) #ifdef CONFIG_X86_PAE tlb->need_flush_all = 1; #endif - pgtable_pmd_page_dtor(page); - paravirt_tlb_remove_table(tlb, page); + pagetable_pmd_dtor(ptdesc); + paravirt_tlb_remove_table(tlb, ptdesc_page(ptdesc)); } #if CONFIG_PGTABLE_LEVELS > 3 @@ -92,16 +92,16 @@ void ___p4d_free_tlb(struct mmu_gather *tlb, p4d_t *p4d) static inline void pgd_list_add(pgd_t *pgd) { - struct page *page = virt_to_page(pgd); + struct ptdesc *ptdesc = virt_to_ptdesc(pgd); - list_add(&page->lru, &pgd_list); + list_add(&ptdesc->pt_list, &pgd_list); } static inline void pgd_list_del(pgd_t *pgd) { - struct page *page = virt_to_page(pgd); + struct ptdesc *ptdesc = virt_to_ptdesc(pgd); - list_del(&page->lru); + list_del(&ptdesc->pt_list); } #define UNSHARED_PTRS_PER_PGD \ @@ -112,12 +112,12 @@ static inline void pgd_list_del(pgd_t *pgd) static void pgd_set_mm(pgd_t *pgd, struct mm_struct *mm) { - virt_to_page(pgd)->pt_mm = mm; + virt_to_ptdesc(pgd)->pt_mm = mm; } struct mm_struct *pgd_page_get_mm(struct page *page) { - return page->pt_mm; + return page_ptdesc(page)->pt_mm; } static void pgd_ctor(struct mm_struct *mm, pgd_t *pgd) @@ -213,11 +213,14 @@ void pud_populate(struct mm_struct *mm, pud_t *pudp, pmd_t *pmd) static void free_pmds(struct mm_struct *mm, pmd_t *pmds[], int count) { int i; + struct ptdesc *ptdesc; for (i = 0; i < count; i++) if (pmds[i]) { - pgtable_pmd_page_dtor(virt_to_page(pmds[i])); - free_page((unsigned long)pmds[i]); + ptdesc = virt_to_ptdesc(pmds[i]); + + pagetable_pmd_dtor(ptdesc); + pagetable_free(ptdesc); mm_dec_nr_pmds(mm); } } @@ -230,18 +233,24 @@ static int preallocate_pmds(struct mm_struct *mm, pmd_t *pmds[], int count) if (mm == &init_mm) gfp &= ~__GFP_ACCOUNT; + gfp &= ~__GFP_HIGHMEM; for (i = 0; i < count; i++) { - pmd_t *pmd = (pmd_t *)__get_free_page(gfp); - if (!pmd) + pmd_t *pmd = NULL; + struct ptdesc *ptdesc = pagetable_alloc(gfp, 0); + + if (!ptdesc) failed = true; - if (pmd && !pgtable_pmd_page_ctor(virt_to_page(pmd))) { - free_page((unsigned long)pmd); - pmd = NULL; + if (ptdesc && !pagetable_pmd_ctor(ptdesc)) { + pagetable_free(ptdesc); + ptdesc = NULL; failed = true; } - if (pmd) + if (ptdesc) { mm_inc_nr_pmds(mm); + pmd = ptdesc_address(ptdesc); + } + pmds[i] = pmd; } @@ -830,7 +839,7 @@ int pud_free_pmd_page(pud_t *pud, unsigned long addr) free_page((unsigned long)pmd_sv); - pgtable_pmd_page_dtor(virt_to_page(pmd)); + pagetable_pmd_dtor(virt_to_ptdesc(pmd)); free_page((unsigned long)pmd); return 1; -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 22 20:59:27 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 20:59:27 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554001.864982 (Exim 4.92) (envelope-from ) id 1qCROo-0007Fc-VQ; Thu, 22 Jun 2023 20:59:26 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554001.864982; Thu, 22 Jun 2023 20:59:26 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCROo-0007CU-O7; Thu, 22 Jun 2023 20:59:26 +0000 Received: by outflank-mailman (input) for mailman id 554001; Thu, 22 Jun 2023 20:59:24 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCROC-0006Mr-H2 for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 20:58:48 +0000 Received: from mail-yb1-xb32.google.com (mail-yb1-xb32.google.com [2607:f8b0:4864:20::b32]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 93e5efbb-113f-11ee-8611-37d641c3527e; Thu, 22 Jun 2023 22:58:46 +0200 (CEST) Received: by mail-yb1-xb32.google.com with SMTP id 3f1490d57ef6-bb2ffa1e235so7076425276.0 for ; Thu, 22 Jun 2023 13:58:46 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::36]) by smtp.googlemail.com with ESMTPSA id d18-20020a5b0c52000000b00bc501a1b062sm1684937ybr.42.2023.06.22.13.58.43 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 22 Jun 2023 13:58:45 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 93e5efbb-113f-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687467525; x=1690059525; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=hySW7brzBg7/Cj99gTTdUd3MvFvqZB/M9ynkCaO3FFc=; b=kdBMDjj5wIp60ZYLcmWrdpMg4HGlypB71kW8hDPlIqh35A3b+v1T4Y1ydaWZz/xhee ZA5Wg86cVGIjXA/B7jKyd7KddQnHiyBrO7oSeao90//6ecohToH/3Eu0AvlHwhcP3OFV 2LpxjpRaH/c4lq6Z4eUITJ7RmwHPPRTtaIS3uYsOOd8x22FkyOEoLStjCJ6IEsjRHWMb 9n4Ph82ODGWg2AiQDJBhn0Lv8MIpG0JlDo4by6Q29EoMH8NyeBmUg+qti5r0raRohKmw K67ualO2cW/10KKjteAwcv5HaO3xkHdj+vI7ODmKcr0ceaF2dvSo3pCSjKcanq/h5Cgw ij4Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687467525; x=1690059525; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=hySW7brzBg7/Cj99gTTdUd3MvFvqZB/M9ynkCaO3FFc=; b=RJx/h1e9HahR/CAbmPytrHBHjDofMlHenPgvpOf6xrQiHud6dokpJT6SyAP6Y++Kn8 gu9HUVgYqAbG5f17K5X9L40D3jL6i+vys7cg/DhC1fzl6Zyy2CdgprA+Pnr/y6r53TTV yd32HxiPjAfqCKmmdETb0qygJfmrXVXIxFD+1IxOnixStDihpIJQGIDJe9RwOoWK/iEY vt69GjYNMFYiJtoD+jAIJiwh7RwLLye180NnBpIRY7L3d0FSp1DPfksLaKf4ppyjt77K 7jywsUw6TyCOV1hjMWDQIxJj1mMXXqT5tLuexJUAVd1DQq5okY4gXzc6RoXbBREAqYt1 OslA== X-Gm-Message-State: AC+VfDwaOlafxhzjZOABF1OrenSL3jJlwggVJ9qYgoIYg9abrfsBIfAR Q3sM/44AeywoLUIg7qHGqWE= X-Google-Smtp-Source: ACHHUZ57HMpnicW72R7dp4/5KYNv6JBaVpOvftGFkmzTzwziBVHjkWFtItA58L9caDWgi5cpht4WKg== X-Received: by 2002:a25:ced2:0:b0:bd5:8616:2579 with SMTP id x201-20020a25ced2000000b00bd586162579mr16452165ybe.36.1687467525581; Thu, 22 Jun 2023 13:58:45 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" , Geert Uytterhoeven , Mike Rapoport Subject: [PATCH v5 24/33] m68k: Convert various functions to use ptdescs Date: Thu, 22 Jun 2023 13:57:36 -0700 Message-Id: <20230622205745.79707-25-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230622205745.79707-1-vishal.moola@gmail.com> References: <20230622205745.79707-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit As part of the conversions to replace pgtable constructor/destructors with ptdesc equivalents, convert various page table functions to use ptdescs. Some of the functions use the *get*page*() helper functions. Convert these to use pagetable_alloc() and ptdesc_address() instead to help standardize page tables further. Signed-off-by: Vishal Moola (Oracle) Acked-by: Mike Rapoport (IBM) Acked-by: Geert Uytterhoeven --- arch/m68k/include/asm/mcf_pgalloc.h | 43 ++++++++++++++-------------- arch/m68k/include/asm/sun3_pgalloc.h | 8 +++--- arch/m68k/mm/motorola.c | 4 +-- 3 files changed, 28 insertions(+), 27 deletions(-) diff --git a/arch/m68k/include/asm/mcf_pgalloc.h b/arch/m68k/include/asm/mcf_pgalloc.h index 5c2c0a864524..790ade4e778e 100644 --- a/arch/m68k/include/asm/mcf_pgalloc.h +++ b/arch/m68k/include/asm/mcf_pgalloc.h @@ -7,20 +7,20 @@ extern inline void pte_free_kernel(struct mm_struct *mm, pte_t *pte) { - free_page((unsigned long) pte); + pagetable_free(virt_to_ptdesc(pte)); } extern const char bad_pmd_string[]; extern inline pte_t *pte_alloc_one_kernel(struct mm_struct *mm) { - unsigned long page = __get_free_page(GFP_DMA); + struct ptdesc *ptdesc = pagetable_alloc((GFP_DMA | __GFP_ZERO) & + ~__GFP_HIGHMEM, 0); - if (!page) + if (!ptdesc) return NULL; - memset((void *)page, 0, PAGE_SIZE); - return (pte_t *) (page); + return ptdesc_address(ptdesc); } extern inline pmd_t *pmd_alloc_kernel(pgd_t *pgd, unsigned long address) @@ -35,36 +35,34 @@ extern inline pmd_t *pmd_alloc_kernel(pgd_t *pgd, unsigned long address) static inline void __pte_free_tlb(struct mmu_gather *tlb, pgtable_t pgtable, unsigned long address) { - struct page *page = virt_to_page(pgtable); + struct ptdesc *ptdesc = virt_to_ptdesc(pgtable); - pgtable_pte_page_dtor(page); - __free_page(page); + pagetable_pte_dtor(ptdesc); + pagetable_free(ptdesc); } static inline pgtable_t pte_alloc_one(struct mm_struct *mm) { - struct page *page = alloc_pages(GFP_DMA, 0); + struct ptdesc *ptdesc = pagetable_alloc(GFP_DMA | __GFP_ZERO, 0); pte_t *pte; - if (!page) + if (!ptdesc) return NULL; - if (!pgtable_pte_page_ctor(page)) { - __free_page(page); + if (!pagetable_pte_ctor(ptdesc)) { + pagetable_free(ptdesc); return NULL; } - pte = page_address(page); - clear_page(pte); - + pte = ptdesc_address(ptdesc); return pte; } static inline void pte_free(struct mm_struct *mm, pgtable_t pgtable) { - struct page *page = virt_to_page(pgtable); + struct ptdesc *ptdesc = virt_to_ptdesc(pgtable); - pgtable_pte_page_dtor(page); - __free_page(page); + pagetable_pte_dtor(ptdesc); + pagetable_free(ptdesc); } /* @@ -75,16 +73,19 @@ static inline void pte_free(struct mm_struct *mm, pgtable_t pgtable) static inline void pgd_free(struct mm_struct *mm, pgd_t *pgd) { - free_page((unsigned long) pgd); + pagetable_free(virt_to_ptdesc(pgd)); } static inline pgd_t *pgd_alloc(struct mm_struct *mm) { pgd_t *new_pgd; + struct ptdesc *ptdesc = pagetable_alloc((GFP_DMA | GFP_NOWARN) & + ~__GFP_HIGHMEM, 0); - new_pgd = (pgd_t *)__get_free_page(GFP_DMA | __GFP_NOWARN); - if (!new_pgd) + if (!ptdesc) return NULL; + new_pgd = ptdesc_address(ptdesc); + memcpy(new_pgd, swapper_pg_dir, PTRS_PER_PGD * sizeof(pgd_t)); memset(new_pgd, 0, PAGE_OFFSET >> PGDIR_SHIFT); return new_pgd; diff --git a/arch/m68k/include/asm/sun3_pgalloc.h b/arch/m68k/include/asm/sun3_pgalloc.h index 198036aff519..ff48573db2c0 100644 --- a/arch/m68k/include/asm/sun3_pgalloc.h +++ b/arch/m68k/include/asm/sun3_pgalloc.h @@ -17,10 +17,10 @@ extern const char bad_pmd_string[]; -#define __pte_free_tlb(tlb,pte,addr) \ -do { \ - pgtable_pte_page_dtor(pte); \ - tlb_remove_page((tlb), pte); \ +#define __pte_free_tlb(tlb, pte, addr) \ +do { \ + pagetable_pte_dtor(page_ptdesc(pte)); \ + tlb_remove_page_ptdesc((tlb), page_ptdesc(pte)); \ } while (0) static inline void pmd_populate_kernel(struct mm_struct *mm, pmd_t *pmd, pte_t *pte) diff --git a/arch/m68k/mm/motorola.c b/arch/m68k/mm/motorola.c index c75984e2d86b..594575a0780c 100644 --- a/arch/m68k/mm/motorola.c +++ b/arch/m68k/mm/motorola.c @@ -161,7 +161,7 @@ void *get_pointer_table(int type) * m68k doesn't have SPLIT_PTE_PTLOCKS for not having * SMP. */ - pgtable_pte_page_ctor(virt_to_page(page)); + pagetable_pte_ctor(virt_to_ptdesc(page)); } mmu_page_ctor(page); @@ -201,7 +201,7 @@ int free_pointer_table(void *table, int type) list_del(dp); mmu_page_dtor((void *)page); if (type == TABLE_PTE) - pgtable_pte_page_dtor(virt_to_page((void *)page)); + pagetable_pte_dtor(virt_to_ptdesc((void *)page)); free_page (page); return 1; } else if (ptable_list[type].next != dp) { -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 22 20:59:27 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 20:59:27 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553998.864971 (Exim 4.92) (envelope-from ) id 1qCROo-00074r-9Q; Thu, 22 Jun 2023 20:59:26 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553998.864971; Thu, 22 Jun 2023 20:59:26 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCROo-00074k-3w; Thu, 22 Jun 2023 20:59:26 +0000 Received: by outflank-mailman (input) for mailman id 553998; Thu, 22 Jun 2023 20:59:23 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCROH-0006Mq-PM for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 20:58:53 +0000 Received: from mail-yb1-xb2a.google.com (mail-yb1-xb2a.google.com [2607:f8b0:4864:20::b2a]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 9817099f-113f-11ee-b237-6b7b168915f2; Thu, 22 Jun 2023 22:58:53 +0200 (CEST) Received: by mail-yb1-xb2a.google.com with SMTP id 3f1490d57ef6-be49e41a3d6so5949272276.1 for ; Thu, 22 Jun 2023 13:58:53 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::36]) by smtp.googlemail.com with ESMTPSA id d18-20020a5b0c52000000b00bc501a1b062sm1684937ybr.42.2023.06.22.13.58.50 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 22 Jun 2023 13:58:51 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 9817099f-113f-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687467532; x=1690059532; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=0AnRv7d38hHUVaoAGins0CaWMMRgzo0GwUb20Y9YoSw=; b=iN2FzqOQCGlMw61BHmPlvHKCi1d4I+83kYFUJ+05be01GNIJnqIJIlehoUIlvwUaVM d/OWGkj4lxemSlNpzjA9vagyXYnKzygaSW8qGOFAS4kKsFBEkls14ZpomWkO/T200zVH qlBgWwV7Su2BIgoVpSS5ByD582z4lmvR8XQqnfXM/x/kcWnUDA1l8EH7UvhzGe/a36fq qzeiYGkPPC0vXVHADUCnvEqnbyiXBVZ5TrMcTAX4hM8+UdpZhrwM5A+KI61Sp+b5buW5 P1n/PN9/guunik8p7869oduuP/QEBbbnDZw3HC5F5neXLeBMAmnYdB3CF11sup6NCeqV 0mxg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687467532; x=1690059532; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=0AnRv7d38hHUVaoAGins0CaWMMRgzo0GwUb20Y9YoSw=; b=VMxdwxmQjQ1vkxopEYNL61fs6tfGkODu/z8AoICIGyIQyXS7nycfDZMBYM+ui76M14 Dv9Aw8I2BDPdwYLnMsdJneLudw6FjsxodMzUby7+sAbtIYtvvMdWz1ZuheGLpETsQfnE y1+lkwuHR+y7LwO6DxYT8ulucflquTJyaScIVih8zKLjdv2hJ6vRDDYOAMSyoOKCpgSx 7OnGHFWUPhU8gaIyuyp3FBcDXlib4ToWB9Efj1A3SI/8nMvJmGRyC5/WmtNj6GMSceOh vDHlNjICdq17azZaDCvF7PD77oLVwimh9uV9fOUxGRKo8Q7hqpvRTE5VxRGyIqGr8qNh sPwg== X-Gm-Message-State: AC+VfDxMkVHy/xG7N9FyvVwgQA9EdX2Aztep75rQQkTHNFk0tHyJ2IA0 ymAihiaFEYfu4JBPYGLvVJc= X-Google-Smtp-Source: ACHHUZ4L0O/ZcQJNV1a5FO9DGWMsGkRAWmV2oZ5bMU1z3VMLdsFOJ9p+X6w0stYIYuPTzeAJzZnheQ== X-Received: by 2002:a05:6902:1cf:b0:bff:78f9:ffcd with SMTP id u15-20020a05690201cf00b00bff78f9ffcdmr4883793ybh.38.1687467532210; Thu, 22 Jun 2023 13:58:52 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" , Jonas Bonn , Mike Rapoport Subject: [PATCH v5 27/33] openrisc: Convert __pte_free_tlb() to use ptdescs Date: Thu, 22 Jun 2023 13:57:39 -0700 Message-Id: <20230622205745.79707-28-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230622205745.79707-1-vishal.moola@gmail.com> References: <20230622205745.79707-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Part of the conversions to replace pgtable constructor/destructors with ptdesc equivalents. Signed-off-by: Vishal Moola (Oracle) Acked-by: Mike Rapoport (IBM) --- arch/openrisc/include/asm/pgalloc.h | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/arch/openrisc/include/asm/pgalloc.h b/arch/openrisc/include/asm/pgalloc.h index b7b2b8d16fad..c6a73772a546 100644 --- a/arch/openrisc/include/asm/pgalloc.h +++ b/arch/openrisc/include/asm/pgalloc.h @@ -66,10 +66,10 @@ extern inline pgd_t *pgd_alloc(struct mm_struct *mm) extern pte_t *pte_alloc_one_kernel(struct mm_struct *mm); -#define __pte_free_tlb(tlb, pte, addr) \ -do { \ - pgtable_pte_page_dtor(pte); \ - tlb_remove_page((tlb), (pte)); \ +#define __pte_free_tlb(tlb, pte, addr) \ +do { \ + pagetable_pte_dtor(page_ptdesc(pte)); \ + tlb_remove_page_ptdesc((tlb), (page_ptdesc(pte))); \ } while (0) #endif -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 22 20:59:27 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 20:59:27 +0000 Received: from list by lists.xenproject.org with outflank-mailman.553999.864976 (Exim 4.92) (envelope-from ) id 1qCROo-00077x-Hh; Thu, 22 Jun 2023 20:59:26 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 553999.864976; Thu, 22 Jun 2023 20:59:26 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCROo-00076g-Cg; Thu, 22 Jun 2023 20:59:26 +0000 Received: by outflank-mailman (input) for mailman id 553999; Thu, 22 Jun 2023 20:59:24 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCRNw-0006Mr-Ej for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 20:58:32 +0000 Received: from mail-yb1-xb30.google.com (mail-yb1-xb30.google.com [2607:f8b0:4864:20::b30]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 8a16f526-113f-11ee-8611-37d641c3527e; Thu, 22 Jun 2023 22:58:29 +0200 (CEST) Received: by mail-yb1-xb30.google.com with SMTP id 3f1490d57ef6-bd6d9d7da35so7433461276.0 for ; Thu, 22 Jun 2023 13:58:30 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::36]) by smtp.googlemail.com with ESMTPSA id d18-20020a5b0c52000000b00bc501a1b062sm1684937ybr.42.2023.06.22.13.58.27 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 22 Jun 2023 13:58:28 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 8a16f526-113f-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687467509; x=1690059509; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=TkWAvuRnBcdDxQyUnHPccd2fzUbRvSLtPtfAdfkK0D0=; b=JUQrsli+sZGsM8ArTlB5xxxiXKaQ16kjb1jNJsf0EUnbEut5z8LPr7zozX3ngN3J6U oj9/6o1cvTbYQi1Ubens/5FSyer6qx2thXPWjAh/xxc284PvAGzN/QcAlMX9ynhGpd+T qPIkIg2LWrvLj/PvTjq3bl0zpKRlIAyxwTdxLcPdZ+3tz8EC/Gj9TafQgAoQSYOL+27+ CzmubZqKv2NQZEHqYF4zYQ48aNi68OK+vRu/rRbQy5mdk2My4qXesWcHTBf8AdzAB7RK OxWWIhxNEt1q7Zuw+9arNrILmoHLJ1cED2gx0CscP7EpkO9Ko2k74vfvaSBElKBfCj0j OqcQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687467509; x=1690059509; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=TkWAvuRnBcdDxQyUnHPccd2fzUbRvSLtPtfAdfkK0D0=; b=h0x1tBK4cpu3sklAVa2qc8jv0zLO8Y4vtZcj7Qy4FtcMsGvD7jl76HSQfkwVV9wVdC VixXEtjr3H0VS8uWKzTh8eSTazWG4CsvdjuKYfEk76sMEevDvVF7cL3ZG0aaQ8TtqRsR 4qBP0kqOBJlrH3kGHKg1RNd1yjw4etOTORupJZSju8FjkfWTev5EvtJLtF1Fy+0vasLO 77giW8U01wNLRjcSnJglQ7iDswtkeQlaHxzIJr0+QJrV8xhkIjp3rY8frtQgnZ+MuZXe pdb6vs4fYoZKR9tiypMdGBlVciaVCVcuxUgOif2jbEo9UQ3MUUrndnAve0ExjpDsXo7l TJRw== X-Gm-Message-State: AC+VfDxp56bNKB94i0brCLw628xIhH3LyrjeK0lvmtHIx2VcMg8sJjbU 2taVNxgPXCCvAC/emH/ZLcI= X-Google-Smtp-Source: ACHHUZ7T6Q6eadVFq1EkBKsONl5ooGMQ7R2flB1sllXachKXuN6+pkqfDDMeF2C+84hA1P0QBPzXOA== X-Received: by 2002:a25:c785:0:b0:bb3:ae54:9fcd with SMTP id w127-20020a25c785000000b00bb3ae549fcdmr16462955ybe.23.1687467509110; Thu, 22 Jun 2023 13:58:29 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" , David Hildenbrand , Claudio Imbrenda , Mike Rapoport Subject: [PATCH v5 16/33] s390: Convert various pgalloc functions to use ptdescs Date: Thu, 22 Jun 2023 13:57:28 -0700 Message-Id: <20230622205745.79707-17-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230622205745.79707-1-vishal.moola@gmail.com> References: <20230622205745.79707-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit As part of the conversions to replace pgtable constructor/destructors with ptdesc equivalents, convert various page table functions to use ptdescs. Some of the functions use the *get*page*() helper functions. Convert these to use pagetable_alloc() and ptdesc_address() instead to help standardize page tables further. Signed-off-by: Vishal Moola (Oracle) Acked-by: Mike Rapoport (IBM) --- arch/s390/include/asm/pgalloc.h | 4 +- arch/s390/include/asm/tlb.h | 4 +- arch/s390/mm/pgalloc.c | 108 ++++++++++++++++---------------- 3 files changed, 59 insertions(+), 57 deletions(-) diff --git a/arch/s390/include/asm/pgalloc.h b/arch/s390/include/asm/pgalloc.h index 17eb618f1348..00ad9b88fda9 100644 --- a/arch/s390/include/asm/pgalloc.h +++ b/arch/s390/include/asm/pgalloc.h @@ -86,7 +86,7 @@ static inline pmd_t *pmd_alloc_one(struct mm_struct *mm, unsigned long vmaddr) if (!table) return NULL; crst_table_init(table, _SEGMENT_ENTRY_EMPTY); - if (!pgtable_pmd_page_ctor(virt_to_page(table))) { + if (!pagetable_pmd_ctor(virt_to_ptdesc(table))) { crst_table_free(mm, table); return NULL; } @@ -97,7 +97,7 @@ static inline void pmd_free(struct mm_struct *mm, pmd_t *pmd) { if (mm_pmd_folded(mm)) return; - pgtable_pmd_page_dtor(virt_to_page(pmd)); + pagetable_pmd_dtor(virt_to_ptdesc(pmd)); crst_table_free(mm, (unsigned long *) pmd); } diff --git a/arch/s390/include/asm/tlb.h b/arch/s390/include/asm/tlb.h index b91f4a9b044c..383b1f91442c 100644 --- a/arch/s390/include/asm/tlb.h +++ b/arch/s390/include/asm/tlb.h @@ -89,12 +89,12 @@ static inline void pmd_free_tlb(struct mmu_gather *tlb, pmd_t *pmd, { if (mm_pmd_folded(tlb->mm)) return; - pgtable_pmd_page_dtor(virt_to_page(pmd)); + pagetable_pmd_dtor(virt_to_ptdesc(pmd)); __tlb_adjust_range(tlb, address, PAGE_SIZE); tlb->mm->context.flush_mm = 1; tlb->freed_tables = 1; tlb->cleared_puds = 1; - tlb_remove_table(tlb, pmd); + tlb_remove_ptdesc(tlb, pmd); } /* diff --git a/arch/s390/mm/pgalloc.c b/arch/s390/mm/pgalloc.c index 66ab68db9842..79b1c2458d85 100644 --- a/arch/s390/mm/pgalloc.c +++ b/arch/s390/mm/pgalloc.c @@ -43,17 +43,17 @@ __initcall(page_table_register_sysctl); unsigned long *crst_table_alloc(struct mm_struct *mm) { - struct page *page = alloc_pages(GFP_KERNEL, CRST_ALLOC_ORDER); + struct ptdesc *ptdesc = pagetable_alloc(GFP_KERNEL, CRST_ALLOC_ORDER); - if (!page) + if (!ptdesc) return NULL; - arch_set_page_dat(page, CRST_ALLOC_ORDER); - return (unsigned long *) page_to_virt(page); + arch_set_page_dat(ptdesc_page(ptdesc), CRST_ALLOC_ORDER); + return (unsigned long *) ptdesc_to_virt(ptdesc); } void crst_table_free(struct mm_struct *mm, unsigned long *table) { - free_pages((unsigned long)table, CRST_ALLOC_ORDER); + pagetable_free(virt_to_ptdesc(table)); } static void __crst_table_upgrade(void *arg) @@ -140,21 +140,21 @@ static inline unsigned int atomic_xor_bits(atomic_t *v, unsigned int bits) struct page *page_table_alloc_pgste(struct mm_struct *mm) { - struct page *page; + struct ptdesc *ptdesc; u64 *table; - page = alloc_page(GFP_KERNEL); - if (page) { - table = (u64 *)page_to_virt(page); + ptdesc = pagetable_alloc(GFP_KERNEL, 0); + if (ptdesc) { + table = (u64 *)ptdesc_to_virt(ptdesc); memset64(table, _PAGE_INVALID, PTRS_PER_PTE); memset64(table + PTRS_PER_PTE, 0, PTRS_PER_PTE); } - return page; + return ptdesc_page(ptdesc); } void page_table_free_pgste(struct page *page) { - __free_page(page); + pagetable_free(page_ptdesc(page)); } #endif /* CONFIG_PGSTE */ @@ -233,7 +233,7 @@ void page_table_free_pgste(struct page *page) unsigned long *page_table_alloc(struct mm_struct *mm) { unsigned long *table; - struct page *page; + struct ptdesc *ptdesc; unsigned int mask, bit; /* Try to get a fragment of a 4K page as a 2K page table */ @@ -241,9 +241,9 @@ unsigned long *page_table_alloc(struct mm_struct *mm) table = NULL; spin_lock_bh(&mm->context.lock); if (!list_empty(&mm->context.pgtable_list)) { - page = list_first_entry(&mm->context.pgtable_list, - struct page, lru); - mask = atomic_read(&page->_refcount) >> 24; + ptdesc = list_first_entry(&mm->context.pgtable_list, + struct ptdesc, pt_list); + mask = atomic_read(&ptdesc->_refcount) >> 24; /* * The pending removal bits must also be checked. * Failure to do so might lead to an impossible @@ -255,13 +255,13 @@ unsigned long *page_table_alloc(struct mm_struct *mm) */ mask = (mask | (mask >> 4)) & 0x03U; if (mask != 0x03U) { - table = (unsigned long *) page_to_virt(page); + table = (unsigned long *) ptdesc_to_virt(ptdesc); bit = mask & 1; /* =1 -> second 2K */ if (bit) table += PTRS_PER_PTE; - atomic_xor_bits(&page->_refcount, + atomic_xor_bits(&ptdesc->_refcount, 0x01U << (bit + 24)); - list_del(&page->lru); + list_del(&ptdesc->pt_list); } } spin_unlock_bh(&mm->context.lock); @@ -269,27 +269,27 @@ unsigned long *page_table_alloc(struct mm_struct *mm) return table; } /* Allocate a fresh page */ - page = alloc_page(GFP_KERNEL); - if (!page) + ptdesc = pagetable_alloc(GFP_KERNEL, 0); + if (!ptdesc) return NULL; - if (!pgtable_pte_page_ctor(page)) { - __free_page(page); + if (!pagetable_pte_ctor(ptdesc)) { + pagetable_free(ptdesc); return NULL; } - arch_set_page_dat(page, 0); + arch_set_page_dat(ptdesc_page(ptdesc), 0); /* Initialize page table */ - table = (unsigned long *) page_to_virt(page); + table = (unsigned long *) ptdesc_to_virt(ptdesc); if (mm_alloc_pgste(mm)) { /* Return 4K page table with PGSTEs */ - atomic_xor_bits(&page->_refcount, 0x03U << 24); + atomic_xor_bits(&ptdesc->_refcount, 0x03U << 24); memset64((u64 *)table, _PAGE_INVALID, PTRS_PER_PTE); memset64((u64 *)table + PTRS_PER_PTE, 0, PTRS_PER_PTE); } else { /* Return the first 2K fragment of the page */ - atomic_xor_bits(&page->_refcount, 0x01U << 24); + atomic_xor_bits(&ptdesc->_refcount, 0x01U << 24); memset64((u64 *)table, _PAGE_INVALID, 2 * PTRS_PER_PTE); spin_lock_bh(&mm->context.lock); - list_add(&page->lru, &mm->context.pgtable_list); + list_add(&ptdesc->pt_list, &mm->context.pgtable_list); spin_unlock_bh(&mm->context.lock); } return table; @@ -311,9 +311,8 @@ static void page_table_release_check(struct page *page, void *table, void page_table_free(struct mm_struct *mm, unsigned long *table) { unsigned int mask, bit, half; - struct page *page; + struct ptdesc *ptdesc = virt_to_ptdesc(table); - page = virt_to_page(table); if (!mm_alloc_pgste(mm)) { /* Free 2K page table fragment of a 4K page */ bit = ((unsigned long) table & ~PAGE_MASK)/(PTRS_PER_PTE*sizeof(pte_t)); @@ -323,42 +322,41 @@ void page_table_free(struct mm_struct *mm, unsigned long *table) * will happen outside of the critical section from this * function or from __tlb_remove_table() */ - mask = atomic_xor_bits(&page->_refcount, 0x11U << (bit + 24)); + mask = atomic_xor_bits(&ptdesc->_refcount, 0x11U << (bit + 24)); mask >>= 24; if (mask & 0x03U) - list_add(&page->lru, &mm->context.pgtable_list); + list_add(&ptdesc->pt_list, &mm->context.pgtable_list); else - list_del(&page->lru); + list_del(&ptdesc->pt_list); spin_unlock_bh(&mm->context.lock); - mask = atomic_xor_bits(&page->_refcount, 0x10U << (bit + 24)); + mask = atomic_xor_bits(&ptdesc->_refcount, 0x10U << (bit + 24)); mask >>= 24; if (mask != 0x00U) return; half = 0x01U << bit; } else { half = 0x03U; - mask = atomic_xor_bits(&page->_refcount, 0x03U << 24); + mask = atomic_xor_bits(&ptdesc->_refcount, 0x03U << 24); mask >>= 24; } - page_table_release_check(page, table, half, mask); - pgtable_pte_page_dtor(page); - __free_page(page); + page_table_release_check(ptdesc_page(ptdesc), table, half, mask); + pagetable_pte_dtor(ptdesc); + pagetable_free(ptdesc); } void page_table_free_rcu(struct mmu_gather *tlb, unsigned long *table, unsigned long vmaddr) { struct mm_struct *mm; - struct page *page; unsigned int bit, mask; + struct ptdesc *ptdesc = virt_to_ptdesc(table); mm = tlb->mm; - page = virt_to_page(table); if (mm_alloc_pgste(mm)) { gmap_unlink(mm, table, vmaddr); table = (unsigned long *) ((unsigned long)table | 0x03U); - tlb_remove_table(tlb, table); + tlb_remove_ptdesc(tlb, table); return; } bit = ((unsigned long) table & ~PAGE_MASK) / (PTRS_PER_PTE*sizeof(pte_t)); @@ -368,12 +366,12 @@ void page_table_free_rcu(struct mmu_gather *tlb, unsigned long *table, * outside of the critical section from __tlb_remove_table() or from * page_table_free() */ - mask = atomic_xor_bits(&page->_refcount, 0x11U << (bit + 24)); + mask = atomic_xor_bits(&ptdesc->_refcount, 0x11U << (bit + 24)); mask >>= 24; if (mask & 0x03U) - list_add_tail(&page->lru, &mm->context.pgtable_list); + list_add_tail(&ptdesc->pt_list, &mm->context.pgtable_list); else - list_del(&page->lru); + list_del(&ptdesc->pt_list); spin_unlock_bh(&mm->context.lock); table = (unsigned long *) ((unsigned long) table | (0x01U << bit)); tlb_remove_table(tlb, table); @@ -383,7 +381,7 @@ void __tlb_remove_table(void *_table) { unsigned int mask = (unsigned long) _table & 0x03U, half = mask; void *table = (void *)((unsigned long) _table ^ mask); - struct page *page = virt_to_page(table); + struct ptdesc *ptdesc = virt_to_ptdesc(table); switch (half) { case 0x00U: /* pmd, pud, or p4d */ @@ -391,20 +389,20 @@ void __tlb_remove_table(void *_table) return; case 0x01U: /* lower 2K of a 4K page table */ case 0x02U: /* higher 2K of a 4K page table */ - mask = atomic_xor_bits(&page->_refcount, mask << (4 + 24)); + mask = atomic_xor_bits(&ptdesc->_refcount, mask << (4 + 24)); mask >>= 24; if (mask != 0x00U) return; break; case 0x03U: /* 4K page table with pgstes */ - mask = atomic_xor_bits(&page->_refcount, 0x03U << 24); + mask = atomic_xor_bits(&ptdesc->_refcount, 0x03U << 24); mask >>= 24; break; } - page_table_release_check(page, table, half, mask); - pgtable_pte_page_dtor(page); - __free_page(page); + page_table_release_check(ptdesc_page(ptdesc), table, half, mask); + pagetable_pte_dtor(ptdesc); + pagetable_free(ptdesc); } /* @@ -432,16 +430,20 @@ static void base_pgt_free(unsigned long *table) static unsigned long *base_crst_alloc(unsigned long val) { unsigned long *table; + struct ptdesc *ptdesc; - table = (unsigned long *)__get_free_pages(GFP_KERNEL, CRST_ALLOC_ORDER); - if (table) - crst_table_init(table, val); + ptdesc = pagetable_alloc(GFP_KERNEL & ~__GFP_HIGHMEM, CRST_ALLOC_ORDER); + if (!ptdesc) + return NULL; + table = ptdesc_address(ptdesc); + + crst_table_init(table, val); return table; } static void base_crst_free(unsigned long *table) { - free_pages((unsigned long)table, CRST_ALLOC_ORDER); + pagetable_free(virt_to_ptdesc(table)); } #define BASE_ADDR_END_FUNC(NAME, SIZE) \ -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 22 20:59:27 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 20:59:27 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554002.864989 (Exim 4.92) (envelope-from ) id 1qCROp-0007MW-GS; Thu, 22 Jun 2023 20:59:27 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554002.864989; Thu, 22 Jun 2023 20:59:27 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCROp-0007Js-3S; Thu, 22 Jun 2023 20:59:27 +0000 Received: by outflank-mailman (input) for mailman id 554002; Thu, 22 Jun 2023 20:59:24 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCROG-0006Mr-F1 for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 20:58:52 +0000 Received: from mail-qk1-x72d.google.com (mail-qk1-x72d.google.com [2607:f8b0:4864:20::72d]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 9665cc9f-113f-11ee-8611-37d641c3527e; Thu, 22 Jun 2023 22:58:50 +0200 (CEST) Received: by mail-qk1-x72d.google.com with SMTP id af79cd13be357-7624e8ceef7so636887685a.2 for ; Thu, 22 Jun 2023 13:58:50 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::36]) by smtp.googlemail.com with ESMTPSA id d18-20020a5b0c52000000b00bc501a1b062sm1684937ybr.42.2023.06.22.13.58.47 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 22 Jun 2023 13:58:49 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 9665cc9f-113f-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687467530; x=1690059530; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=dSsj72OOim1moFehILf4IJ+e4eXIj/xtfG6kDsakLCY=; b=F65orfGp6lPWpCrD9sAMHQjbb/7dPkBeEZwnbqaqoaG+jHKHFKOpyv5U+mRswUePBl O+w6mgJQE0929R7HfQnempO9NwPEm6qT8tc34OERTuMiOZXiohUbt3LRN+VbVJEKUKkc tcmSj8t+FV4PGg1S/0RDnwUBY8C4sUVvlY/c/d4jqvMe/jl29yqPCuiM1limtTye3/Mt Xl+0XJrX90O7Fe0pzMoOa3o991eJyDuyXmsTPhqv2ERTFkUraPYZpwk4UgntXrYBzy7x tG0gCzAga9PV8hPLOnhqVRtX7sCVqxvHBH7A5BvtHK+faRxZPp8TVFIuHWDaefij0y+Q y3/A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687467530; x=1690059530; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=dSsj72OOim1moFehILf4IJ+e4eXIj/xtfG6kDsakLCY=; b=d4PHwjP+64hsjnjyqqHn7/l6jr0gfsxIB73eVJ8tUwIwuBHfO2+eRgcI7JHh/4obXa 5sCCPWjhP8CLYyxErEdingp/v/VvE1u1kNLO/9jI8iZCf7brdBREy0jMP0oVP6qYIEJH gEVvNWRnuxl5FEMu4MiEzfvZrup/t0jQlzCIKH8QPj3N5UxpPwgR+ea+VUsCAZVo8qvL avnGKkFa3DZeHXhccCG7te0Sz5+SgcD8US816Gt0pqWuV2RLQClmt5gxxI9hR1cME9WF CcM1aA0RkaMPy5hwwyC7yj/jn1YdeobuhGA+04Ye5jXKtvPCjNnyOZJPfpkkEx7N4E35 7h7w== X-Gm-Message-State: AC+VfDyj6+LiHcexeuNZIxOsuJQhsID9sg2mv/olj/mSLRkgcOuB6yyh tuwm0mhH0/Z073g2nEvGP3E= X-Google-Smtp-Source: ACHHUZ7lI8iuHKQsEsdck4SAEFHmt9QQs6haysqfy7wOJRfjq9Goxv7w27b3gm3WMVCksX2Z3AB04Q== X-Received: by 2002:a05:620a:84c:b0:762:883a:f5a6 with SMTP id u12-20020a05620a084c00b00762883af5a6mr11201137qku.41.1687467529856; Thu, 22 Jun 2023 13:58:49 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" , Dinh Nguyen , Mike Rapoport Subject: [PATCH v5 26/33] nios2: Convert __pte_free_tlb() to use ptdescs Date: Thu, 22 Jun 2023 13:57:38 -0700 Message-Id: <20230622205745.79707-27-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230622205745.79707-1-vishal.moola@gmail.com> References: <20230622205745.79707-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Part of the conversions to replace pgtable constructor/destructors with ptdesc equivalents. Signed-off-by: Vishal Moola (Oracle) Acked-by: Mike Rapoport (IBM) --- arch/nios2/include/asm/pgalloc.h | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/arch/nios2/include/asm/pgalloc.h b/arch/nios2/include/asm/pgalloc.h index ecd1657bb2ce..ce6bb8e74271 100644 --- a/arch/nios2/include/asm/pgalloc.h +++ b/arch/nios2/include/asm/pgalloc.h @@ -28,10 +28,10 @@ static inline void pmd_populate(struct mm_struct *mm, pmd_t *pmd, extern pgd_t *pgd_alloc(struct mm_struct *mm); -#define __pte_free_tlb(tlb, pte, addr) \ - do { \ - pgtable_pte_page_dtor(pte); \ - tlb_remove_page((tlb), (pte)); \ +#define __pte_free_tlb(tlb, pte, addr) \ + do { \ + pagetable_pte_dtor(page_ptdesc(pte)); \ + tlb_remove_page_ptdesc((tlb), (page_ptdesc(pte))); \ } while (0) #endif /* _ASM_NIOS2_PGALLOC_H */ -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 22 20:59:28 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 20:59:28 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554003.864995 (Exim 4.92) (envelope-from ) id 1qCROq-0007Ts-0W; Thu, 22 Jun 2023 20:59:28 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554003.864995; Thu, 22 Jun 2023 20:59:27 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCROp-0007RT-Iq; Thu, 22 Jun 2023 20:59:27 +0000 Received: by outflank-mailman (input) for mailman id 554003; Thu, 22 Jun 2023 20:59:24 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCRO8-0006Mq-DH for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 20:58:44 +0000 Received: from mail-yb1-xb2b.google.com (mail-yb1-xb2b.google.com [2607:f8b0:4864:20::b2b]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 8f2d36a1-113f-11ee-b237-6b7b168915f2; Thu, 22 Jun 2023 22:58:38 +0200 (CEST) Received: by mail-yb1-xb2b.google.com with SMTP id 3f1490d57ef6-bf5f41a87ceso4112084276.1 for ; Thu, 22 Jun 2023 13:58:38 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::36]) by smtp.googlemail.com with ESMTPSA id d18-20020a5b0c52000000b00bc501a1b062sm1684937ybr.42.2023.06.22.13.58.35 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 22 Jun 2023 13:58:36 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 8f2d36a1-113f-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687467517; x=1690059517; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=1W6z1I6yvWrQZbHmgHYBEGZZDstSbvELOPET/EcKlKw=; b=WzrZfg7Ix9NVgsDMORZZHtKMCnkCtYTNqN5BxfEl0LqJAF/m52D2DjGs1CtMdjlW/Y FCQoo6ICOsgfyZao7TI8v6fZI4UENFpY3jZe81s91B3mvmmCsOIgDTDPzHKe5SMRuqNo GqmfsZL/fdh4LhL0Jo2UTpv/Zzerp4OFJp5voue8zSTsRJ0/4bzo0POGwXibz4pL7ew3 XfWPis6drhy3Tn+kW5uEHt9jkm10f1F49xoaZHUD6V/XhEZK2GBId7pwhiwEW8CobjeX ndMopKlNsVQQSaeMMfuVNTCC7fSMRAuphXmsb5MG/ItVGni8JlC+amvlrfvw1GK2MkRJ BN3A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687467517; x=1690059517; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=1W6z1I6yvWrQZbHmgHYBEGZZDstSbvELOPET/EcKlKw=; b=I04GU2i28nystC/qEvpSooUDmM2RZEt5444QF6FRcc3lWeJG7NAd3DqBXowCKtKUgX 6B5wGnftaAf45yW1VnsDemC3shXY8eky4JhIYY4ekdp7CCO7AJIz56qgiDS8jVy0G9py ZqzFuc5v04RvHFWzuOiLc5UrxzMKP6f02EdCtLCz3KQv9tiUGChIU6SWEvKcV6N0DzVG 5Yc6qn2n7JJZl5PgMb2/xQPit3gfltq68UthmwKZZ33/e9aprwebmitUIoMeOpQ7/HAC eJZjsmVJjTopJ49ooGpeN6zS4wSAS6TdlnPp6sdCTkUnSpZ/EObkGrCL1bqEDn0XdHmf YwkA== X-Gm-Message-State: AC+VfDyX8e/3fFTLpx9lo6w73N/OgOsZncr3F6oFCiZYLBIPmEkhqfhP X9G8vKBizy3PtBR6vHk5sPo= X-Google-Smtp-Source: ACHHUZ43E6q8U9GZrhFDLZLO6dXpt9JpmRg2Kg6CKMns06auYc1hxRdgyW9/NyEhButWG+5gdBeMhw== X-Received: by 2002:a25:b190:0:b0:bd4:8ea4:39bb with SMTP id h16-20020a25b190000000b00bd48ea439bbmr15159544ybj.4.1687467517233; Thu, 22 Jun 2023 13:58:37 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" , Catalin Marinas , Mike Rapoport Subject: [PATCH v5 20/33] arm64: Convert various functions to use ptdescs Date: Thu, 22 Jun 2023 13:57:32 -0700 Message-Id: <20230622205745.79707-21-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230622205745.79707-1-vishal.moola@gmail.com> References: <20230622205745.79707-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit As part of the conversions to replace pgtable constructor/destructors with ptdesc equivalents, convert various page table functions to use ptdescs. Signed-off-by: Vishal Moola (Oracle) Acked-by: Mike Rapoport (IBM) Acked-by: Catalin Marinas --- arch/arm64/include/asm/tlb.h | 14 ++++++++------ arch/arm64/mm/mmu.c | 7 ++++--- 2 files changed, 12 insertions(+), 9 deletions(-) diff --git a/arch/arm64/include/asm/tlb.h b/arch/arm64/include/asm/tlb.h index c995d1f4594f..2c29239d05c3 100644 --- a/arch/arm64/include/asm/tlb.h +++ b/arch/arm64/include/asm/tlb.h @@ -75,18 +75,20 @@ static inline void tlb_flush(struct mmu_gather *tlb) static inline void __pte_free_tlb(struct mmu_gather *tlb, pgtable_t pte, unsigned long addr) { - pgtable_pte_page_dtor(pte); - tlb_remove_table(tlb, pte); + struct ptdesc *ptdesc = page_ptdesc(pte); + + pagetable_pte_dtor(ptdesc); + tlb_remove_ptdesc(tlb, ptdesc); } #if CONFIG_PGTABLE_LEVELS > 2 static inline void __pmd_free_tlb(struct mmu_gather *tlb, pmd_t *pmdp, unsigned long addr) { - struct page *page = virt_to_page(pmdp); + struct ptdesc *ptdesc = virt_to_ptdesc(pmdp); - pgtable_pmd_page_dtor(page); - tlb_remove_table(tlb, page); + pagetable_pmd_dtor(ptdesc); + tlb_remove_ptdesc(tlb, ptdesc); } #endif @@ -94,7 +96,7 @@ static inline void __pmd_free_tlb(struct mmu_gather *tlb, pmd_t *pmdp, static inline void __pud_free_tlb(struct mmu_gather *tlb, pud_t *pudp, unsigned long addr) { - tlb_remove_table(tlb, virt_to_page(pudp)); + tlb_remove_ptdesc(tlb, virt_to_ptdesc(pudp)); } #endif diff --git a/arch/arm64/mm/mmu.c b/arch/arm64/mm/mmu.c index 95d360805f8a..47781bec6171 100644 --- a/arch/arm64/mm/mmu.c +++ b/arch/arm64/mm/mmu.c @@ -426,6 +426,7 @@ static phys_addr_t __pgd_pgtable_alloc(int shift) static phys_addr_t pgd_pgtable_alloc(int shift) { phys_addr_t pa = __pgd_pgtable_alloc(shift); + struct ptdesc *ptdesc = page_ptdesc(phys_to_page(pa)); /* * Call proper page table ctor in case later we need to @@ -433,12 +434,12 @@ static phys_addr_t pgd_pgtable_alloc(int shift) * this pre-allocated page table. * * We don't select ARCH_ENABLE_SPLIT_PMD_PTLOCK if pmd is - * folded, and if so pgtable_pmd_page_ctor() becomes nop. + * folded, and if so pagetable_pte_ctor() becomes nop. */ if (shift == PAGE_SHIFT) - BUG_ON(!pgtable_pte_page_ctor(phys_to_page(pa))); + BUG_ON(!pagetable_pte_ctor(ptdesc)); else if (shift == PMD_SHIFT) - BUG_ON(!pgtable_pmd_page_ctor(phys_to_page(pa))); + BUG_ON(!pagetable_pmd_ctor(ptdesc)); return pa; } -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 22 20:59:29 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 20:59:29 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554008.865006 (Exim 4.92) (envelope-from ) id 1qCROr-0007uf-58; Thu, 22 Jun 2023 20:59:29 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554008.865006; Thu, 22 Jun 2023 20:59:29 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCROq-0007ss-Sn; Thu, 22 Jun 2023 20:59:28 +0000 Received: by outflank-mailman (input) for mailman id 554008; Thu, 22 Jun 2023 20:59:25 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCROK-0006Mq-4k for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 20:58:56 +0000 Received: from mail-qk1-x736.google.com (mail-qk1-x736.google.com [2607:f8b0:4864:20::736]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 995c82a4-113f-11ee-b237-6b7b168915f2; Thu, 22 Jun 2023 22:58:55 +0200 (CEST) Received: by mail-qk1-x736.google.com with SMTP id af79cd13be357-763ddc4259dso176607485a.3 for ; Thu, 22 Jun 2023 13:58:55 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::36]) by smtp.googlemail.com with ESMTPSA id d18-20020a5b0c52000000b00bc501a1b062sm1684937ybr.42.2023.06.22.13.58.52 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 22 Jun 2023 13:58:54 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 995c82a4-113f-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687467534; x=1690059534; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=0VT4pshsioiI3cvxCaccwxS3QnyiZywL9n+n1KwplTM=; b=TppJif0BHo6hnPlcQL9KC8WSGCLNYWnZ5TWCUGNi9Yse0euGomuzrLUl2hHWg+xOcN AtrgkmMfCUjy9KLBFfUuEG2s0Ihpe5FTyr5metIKFf6zbktuYMraC91YUKi/KWfbgyVG lvJTabP9ygpBud7nE/7yiG7FvQtoPgmdiRSK2sy5kuq4cEPaMRzkmi7ezbneoKdvpKLs RzOr7Yyw6OYIFnxYXzw+JpXxuwUJk+Gv++J63O8G6cjfEEYoESBKv3QgdI5Gny8Js2Dl u397T8c8ML9be3fyfcRz9z/KIcbHqeskiUObgkxyvqYvJ9bImtnagHyVKviaetoXJ3oC RmxQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687467534; x=1690059534; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=0VT4pshsioiI3cvxCaccwxS3QnyiZywL9n+n1KwplTM=; b=lMJS9I6m4q7CIHdJFkfCorJRMGntKLPIyMVDhIwCO3Bz/0cB6cJKDHUCH64N/ffNxz TU03Lxww+zTeIr67iQja7CsSnaQYnVfzuz6mObr+3lKenGa2OQnwjVotLbCItKI+uix5 Alg2ZXq8TYrR3QAyPur49n88fw71fAjLtJPkxKeGjkklO28qmcKRFjToGBpewJFYyvDq /Tsu6vrAnSPpzx6vWCgRii9FfhM8yfWiBjAERVdgdis6/aMU3a8gP8+42z4MVhZwIZiT GV5cs8IcWo307UIsGvS+CbjeGzhQjEyB4vTBB/YJks8z2YSQKiW6N3Ofu7L3IiIibnSL xx9w== X-Gm-Message-State: AC+VfDxPgT6EM+mzs9vrKipFKhpKyH6Q9EaGRgMyByJ+c56KriSw/p0s DnGpRscikL0G9ovV4MLBCpY= X-Google-Smtp-Source: ACHHUZ4bdUBNX+PQFkV86pN6qHx4P8fCpAOyeLEg1MMh49m7gk0ETU/OT0t4ehwniJxuP5YNErTIxg== X-Received: by 2002:a05:620a:2455:b0:763:de2c:1a8a with SMTP id h21-20020a05620a245500b00763de2c1a8amr6902545qkn.57.1687467534343; Thu, 22 Jun 2023 13:58:54 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" , Paul Walmsley , Palmer Dabbelt , Mike Rapoport Subject: [PATCH v5 28/33] riscv: Convert alloc_{pmd, pte}_late() to use ptdescs Date: Thu, 22 Jun 2023 13:57:40 -0700 Message-Id: <20230622205745.79707-29-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230622205745.79707-1-vishal.moola@gmail.com> References: <20230622205745.79707-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit As part of the conversions to replace pgtable constructor/destructors with ptdesc equivalents, convert various page table functions to use ptdescs. Some of the functions use the *get*page*() helper functions. Convert these to use pagetable_alloc() and ptdesc_address() instead to help standardize page tables further. Signed-off-by: Vishal Moola (Oracle) Acked-by: Palmer Dabbelt Acked-by: Mike Rapoport (IBM) --- arch/riscv/include/asm/pgalloc.h | 8 ++++---- arch/riscv/mm/init.c | 16 ++++++---------- 2 files changed, 10 insertions(+), 14 deletions(-) diff --git a/arch/riscv/include/asm/pgalloc.h b/arch/riscv/include/asm/pgalloc.h index 59dc12b5b7e8..d169a4f41a2e 100644 --- a/arch/riscv/include/asm/pgalloc.h +++ b/arch/riscv/include/asm/pgalloc.h @@ -153,10 +153,10 @@ static inline pgd_t *pgd_alloc(struct mm_struct *mm) #endif /* __PAGETABLE_PMD_FOLDED */ -#define __pte_free_tlb(tlb, pte, buf) \ -do { \ - pgtable_pte_page_dtor(pte); \ - tlb_remove_page((tlb), pte); \ +#define __pte_free_tlb(tlb, pte, buf) \ +do { \ + pagetable_pte_dtor(page_ptdesc(pte)); \ + tlb_remove_page_ptdesc((tlb), page_ptdesc(pte));\ } while (0) #endif /* CONFIG_MMU */ diff --git a/arch/riscv/mm/init.c b/arch/riscv/mm/init.c index 4b95d8999120..efff9c752fcf 100644 --- a/arch/riscv/mm/init.c +++ b/arch/riscv/mm/init.c @@ -354,12 +354,10 @@ static inline phys_addr_t __init alloc_pte_fixmap(uintptr_t va) static phys_addr_t __init alloc_pte_late(uintptr_t va) { - unsigned long vaddr; - - vaddr = __get_free_page(GFP_KERNEL); - BUG_ON(!vaddr || !pgtable_pte_page_ctor(virt_to_page((void *)vaddr))); + struct ptdesc *ptdesc = pagetable_alloc(GFP_KERNEL & ~__GFP_HIGHMEM, 0); - return __pa(vaddr); + BUG_ON(!ptdesc || !pagetable_pte_ctor(ptdesc)); + return __pa((pte_t *)ptdesc_address(ptdesc)); } static void __init create_pte_mapping(pte_t *ptep, @@ -437,12 +435,10 @@ static phys_addr_t __init alloc_pmd_fixmap(uintptr_t va) static phys_addr_t __init alloc_pmd_late(uintptr_t va) { - unsigned long vaddr; - - vaddr = __get_free_page(GFP_KERNEL); - BUG_ON(!vaddr || !pgtable_pmd_page_ctor(virt_to_page((void *)vaddr))); + struct ptdesc *ptdesc = pagetable_alloc(GFP_KERNEL & ~__GFP_HIGHMEM, 0); - return __pa(vaddr); + BUG_ON(!ptdesc || !pagetable_pmd_ctor(ptdesc)); + return __pa((pmd_t *)ptdesc_address(ptdesc)); } static void __init create_pmd_mapping(pmd_t *pmdp, -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 22 20:59:30 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 20:59:30 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554012.865015 (Exim 4.92) (envelope-from ) id 1qCROr-00081n-W0; Thu, 22 Jun 2023 20:59:29 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554012.865015; Thu, 22 Jun 2023 20:59:29 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCROr-0007zi-Ct; Thu, 22 Jun 2023 20:59:29 +0000 Received: by outflank-mailman (input) for mailman id 554012; Thu, 22 Jun 2023 20:59:26 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCROP-0006Mr-J3 for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 20:59:01 +0000 Received: from mail-yb1-xb2c.google.com (mail-yb1-xb2c.google.com [2607:f8b0:4864:20::b2c]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 9bc3ab09-113f-11ee-8611-37d641c3527e; Thu, 22 Jun 2023 22:58:59 +0200 (CEST) Received: by mail-yb1-xb2c.google.com with SMTP id 3f1490d57ef6-bff89873d34so1836532276.2 for ; Thu, 22 Jun 2023 13:58:59 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::36]) by smtp.googlemail.com with ESMTPSA id d18-20020a5b0c52000000b00bc501a1b062sm1684937ybr.42.2023.06.22.13.58.56 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 22 Jun 2023 13:58:58 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 9bc3ab09-113f-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687467539; x=1690059539; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=2x+E7/HO6cxS1FKNHsH+YAjV99GeoJ7wX0XOkEEtc8g=; b=YrTQVBS1aaA3+7mVapNSFssjb2+AQ4IJNUOZvGKIi0FFDtk+PI4lWjji8UMW0kBniw NnyjjbhzJwR9iWxQ73lOHY6xUHgKO2FQSJubgoxvZQoc6uqJluiv8iO+GgjzyRPTTUNL H+9Lt9/vRpqFrdhngSNsPgL94g8nz/f64RVJUcVyBqSkPnGnipXpH3S7tTsIQsIL/Sfj /1Ey+dh+UNfiOBDZVuuR0MUQqWyu0BLKscPyo1/sCfwSnYduy/XWfVP10dsKPKfMX/jd CyoAvKAcNWnuFLqmsDX4R/ZAToeYgRboOEEoeu7mlCBRRzYoIoPibXR4stY18tIHtLmi 9aNw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687467539; x=1690059539; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=2x+E7/HO6cxS1FKNHsH+YAjV99GeoJ7wX0XOkEEtc8g=; b=e/QZbUzCdWF7Pwoiw5C96nd5kw6WG3OmBU25qJUv8rAh3/vnYx+sgzRbZgsss+NtCT FEft7iAJ9oXFiIwkFJNFY/anW+roO9I1K+fRX+K8WXLX2HwAT9SsDpytBIFsxZKwyyW1 agf4EwM6wv29aIz5ry/IgwL1vFMFXpKKPeOWPuEPXsXYS+y673obgQmODFKPbdGOZIsk cDyACTAnV89HYNZfHwVSxFvhE7sPku6NFhqDWR1fojuyub9USBpzu/N1mw0qkKqDHJRD BGPLoP1b4Mb4H2sYsdLIC+CVglrpwZf7bjzU7QeAO0d5DLdadoIY1YsfQ2x4X1AIuzzc GybA== X-Gm-Message-State: AC+VfDxlfzqajkE4lGURxRJvh12Koz1QC5ZpFOBLnbs6eADR1fPsoBLK 6tY0t2+YK+YLUhsdVZJJYCY= X-Google-Smtp-Source: ACHHUZ7RSJK82blK0n8uMP8fjUDg81SPK6py6Hg2BA1/I5Xa80rVzDG2S/aTt1mnsQBJvwPYu3STMQ== X-Received: by 2002:a25:2102:0:b0:bc8:914b:c83a with SMTP id h2-20020a252102000000b00bc8914bc83amr11442005ybh.22.1687467538676; Thu, 22 Jun 2023 13:58:58 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" , "David S. Miller" , Mike Rapoport Subject: [PATCH v5 30/33] sparc64: Convert various functions to use ptdescs Date: Thu, 22 Jun 2023 13:57:42 -0700 Message-Id: <20230622205745.79707-31-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230622205745.79707-1-vishal.moola@gmail.com> References: <20230622205745.79707-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit As part of the conversions to replace pgtable constructor/destructors with ptdesc equivalents, convert various page table functions to use ptdescs. Signed-off-by: Vishal Moola (Oracle) Acked-by: Mike Rapoport (IBM) --- arch/sparc/mm/init_64.c | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/arch/sparc/mm/init_64.c b/arch/sparc/mm/init_64.c index 04f9db0c3111..105915cd2eee 100644 --- a/arch/sparc/mm/init_64.c +++ b/arch/sparc/mm/init_64.c @@ -2893,14 +2893,15 @@ pte_t *pte_alloc_one_kernel(struct mm_struct *mm) pgtable_t pte_alloc_one(struct mm_struct *mm) { - struct page *page = alloc_page(GFP_KERNEL | __GFP_ZERO); - if (!page) + struct ptdesc *ptdesc = pagetable_alloc(GFP_KERNEL | __GFP_ZERO, 0); + + if (!ptdesc) return NULL; - if (!pgtable_pte_page_ctor(page)) { - __free_page(page); + if (!pagetable_pte_ctor(ptdesc)) { + pagetable_free(ptdesc); return NULL; } - return (pte_t *) page_address(page); + return ptdesc_address(ptdesc); } void pte_free_kernel(struct mm_struct *mm, pte_t *pte) @@ -2910,10 +2911,10 @@ void pte_free_kernel(struct mm_struct *mm, pte_t *pte) static void __pte_free(pgtable_t pte) { - struct page *page = virt_to_page(pte); + struct ptdesc *ptdesc = virt_to_ptdesc(pte); - pgtable_pte_page_dtor(page); - __free_page(page); + pagetable_pte_dtor(ptdesc); + pagetable_free(ptdesc); } void pte_free(struct mm_struct *mm, pgtable_t pte) -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 22 20:59:30 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 20:59:30 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554013.865023 (Exim 4.92) (envelope-from ) id 1qCROs-00088M-IM; Thu, 22 Jun 2023 20:59:30 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554013.865023; Thu, 22 Jun 2023 20:59:30 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCROr-00086U-Q4; Thu, 22 Jun 2023 20:59:29 +0000 Received: by outflank-mailman (input) for mailman id 554013; Thu, 22 Jun 2023 20:59:26 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCRNm-0006Mq-Q3 for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 20:58:22 +0000 Received: from mail-ot1-x330.google.com (mail-ot1-x330.google.com [2607:f8b0:4864:20::330]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 85749530-113f-11ee-b237-6b7b168915f2; Thu, 22 Jun 2023 22:58:22 +0200 (CEST) Received: by mail-ot1-x330.google.com with SMTP id 46e09a7af769-6b5d4b359d3so1735216a34.2 for ; Thu, 22 Jun 2023 13:58:22 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::36]) by smtp.googlemail.com with ESMTPSA id d18-20020a5b0c52000000b00bc501a1b062sm1684937ybr.42.2023.06.22.13.58.18 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 22 Jun 2023 13:58:20 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 85749530-113f-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687467501; x=1690059501; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=RnNdr5PDFTKJu1h5zX1p1xVUKJvhUfKvVUh/w7ZbrdI=; b=RozEvIvVOP2VqVYYMWGzDNL6CpsXTnGXlp/+8t0w3BlD0JmgE5T0sEFoPJ6ld3NgrT bo4deZV9iKOusMQ4leLcL/PwL7QvpCQol+1I1GDFuH17XhvWiV9F9j1adtGOARy9Hha6 3RGKMSONQqhzWt/kDmWTnPMrNJ63EExn/gif2mwqScqJ0/yA9eOZVrNV6N0d1si+/PRm WBpjPrumaScaXS+oAuKW5qjU1zlQ2w0x0jfPY5Gm7PSjCaEQ+p7K8a/NRyFlUYxCrD6N J99EeDDjbETqur6Uq9P5kOnzRuhiB5K690PgOVUOJzS9Q8J6CLKu6wMbAbv6pVzbEVQk Y9LA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687467501; x=1690059501; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=RnNdr5PDFTKJu1h5zX1p1xVUKJvhUfKvVUh/w7ZbrdI=; b=L7ioXa/Qat65De/KCr+dlabEIJdok/79wheO2+4pbStxLSC36snW8RaSDxGZCIPX7j aJRXjw3KKO7kDRtKZjE4rADUeOTRGXLKrfBQbTVocvqxnVo10aiGK8mmDmpSG+i0Mh+N /TS6KlYRAks57Gd4BF7kPAQL+PE+pIMG/E6YorTKLaiz6jE9jBnBgxc1F1LQEgxZDMSp rkP00ZpGhPXUG1CAZCKf7Dr+7Whkr+dZKD29p640CYTdu7+2nOVa/kzUbjLi/GNzWzzo iQG233MWxtN/fF42lx84yawj95mzgKHlzy0lAQiXu16040fh09DFIlUTTYst5rZZGe26 ukNg== X-Gm-Message-State: AC+VfDxwFgMcOmFddUS1nAqUxuol5/TGVqbnhqU5tUEJlD2XMXqtN8dV 53wKzh2TpqenbfWMD4nBUE8= X-Google-Smtp-Source: ACHHUZ69lonjyuyFM3x/i0CqMLsv9C2vXMWoj4oQ2M7sud29qozQJHPP5PISfmTicbDCzcNZpP0hng== X-Received: by 2002:a05:6358:c114:b0:12b:cdd6:9661 with SMTP id fh20-20020a056358c11400b0012bcdd69661mr14337984rwb.13.1687467500803; Thu, 22 Jun 2023 13:58:20 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" , Mike Rapoport Subject: [PATCH v5 12/33] mm: Create ptdesc equivalents for pgtable_{pte,pmd}_page_{ctor,dtor} Date: Thu, 22 Jun 2023 13:57:24 -0700 Message-Id: <20230622205745.79707-13-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230622205745.79707-1-vishal.moola@gmail.com> References: <20230622205745.79707-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Create pagetable_pte_ctor(), pagetable_pmd_ctor(), pagetable_pte_dtor(), and pagetable_pmd_dtor() and make the original pgtable constructor/destructors wrappers. Signed-off-by: Vishal Moola (Oracle) Acked-by: Mike Rapoport (IBM) --- include/linux/mm.h | 56 ++++++++++++++++++++++++++++++++++------------ 1 file changed, 42 insertions(+), 14 deletions(-) diff --git a/include/linux/mm.h b/include/linux/mm.h index 69e6d6696c44..356e79984cf9 100644 --- a/include/linux/mm.h +++ b/include/linux/mm.h @@ -2859,20 +2859,34 @@ static inline bool ptlock_init(struct ptdesc *ptdesc) { return true; } static inline void ptlock_free(struct ptdesc *ptdesc) {} #endif /* USE_SPLIT_PTE_PTLOCKS */ -static inline bool pgtable_pte_page_ctor(struct page *page) +static inline bool pagetable_pte_ctor(struct ptdesc *ptdesc) { - if (!ptlock_init(page_ptdesc(page))) + struct folio *folio = ptdesc_folio(ptdesc); + + if (!ptlock_init(ptdesc)) return false; - __SetPageTable(page); - inc_lruvec_page_state(page, NR_PAGETABLE); + __folio_set_pgtable(folio); + lruvec_stat_add_folio(folio, NR_PAGETABLE); return true; } +static inline bool pgtable_pte_page_ctor(struct page *page) +{ + return pagetable_pte_ctor(page_ptdesc(page)); +} + +static inline void pagetable_pte_dtor(struct ptdesc *ptdesc) +{ + struct folio *folio = ptdesc_folio(ptdesc); + + ptlock_free(ptdesc); + __folio_clear_pgtable(folio); + lruvec_stat_sub_folio(folio, NR_PAGETABLE); +} + static inline void pgtable_pte_page_dtor(struct page *page) { - ptlock_free(page_ptdesc(page)); - __ClearPageTable(page); - dec_lruvec_page_state(page, NR_PAGETABLE); + pagetable_pte_dtor(page_ptdesc(page)); } pte_t *__pte_offset_map(pmd_t *pmd, unsigned long addr, pmd_t *pmdvalp); @@ -2965,20 +2979,34 @@ static inline spinlock_t *pmd_lock(struct mm_struct *mm, pmd_t *pmd) return ptl; } -static inline bool pgtable_pmd_page_ctor(struct page *page) +static inline bool pagetable_pmd_ctor(struct ptdesc *ptdesc) { - if (!pmd_ptlock_init(page_ptdesc(page))) + struct folio *folio = ptdesc_folio(ptdesc); + + if (!pmd_ptlock_init(ptdesc)) return false; - __SetPageTable(page); - inc_lruvec_page_state(page, NR_PAGETABLE); + __folio_set_pgtable(folio); + lruvec_stat_add_folio(folio, NR_PAGETABLE); return true; } +static inline bool pgtable_pmd_page_ctor(struct page *page) +{ + return pagetable_pmd_ctor(page_ptdesc(page)); +} + +static inline void pagetable_pmd_dtor(struct ptdesc *ptdesc) +{ + struct folio *folio = ptdesc_folio(ptdesc); + + pmd_ptlock_free(ptdesc); + __folio_clear_pgtable(folio); + lruvec_stat_sub_folio(folio, NR_PAGETABLE); +} + static inline void pgtable_pmd_page_dtor(struct page *page) { - pmd_ptlock_free(page_ptdesc(page)); - __ClearPageTable(page); - dec_lruvec_page_state(page, NR_PAGETABLE); + pagetable_pmd_dtor(page_ptdesc(page)); } /* -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 22 20:59:31 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 20:59:31 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554014.865029 (Exim 4.92) (envelope-from ) id 1qCROt-0008LE-Ea; Thu, 22 Jun 2023 20:59:31 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554014.865029; Thu, 22 Jun 2023 20:59:31 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCROs-0008GJ-Lt; Thu, 22 Jun 2023 20:59:30 +0000 Received: by outflank-mailman (input) for mailman id 554014; Thu, 22 Jun 2023 20:59:26 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCROD-0006Mq-Dl for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 20:58:49 +0000 Received: from mail-vk1-xa32.google.com (mail-vk1-xa32.google.com [2607:f8b0:4864:20::a32]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 92f2bbbf-113f-11ee-b237-6b7b168915f2; Thu, 22 Jun 2023 22:58:44 +0200 (CEST) Received: by mail-vk1-xa32.google.com with SMTP id 71dfb90a1353d-47148f11fe6so3051669e0c.2 for ; Thu, 22 Jun 2023 13:58:44 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::36]) by smtp.googlemail.com with ESMTPSA id d18-20020a5b0c52000000b00bc501a1b062sm1684937ybr.42.2023.06.22.13.58.41 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 22 Jun 2023 13:58:43 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 92f2bbbf-113f-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687467523; x=1690059523; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=pBiyp2dfMpzV+NvCt1JbKOh6Ic1GEYp83948mVxRzoc=; b=kdaaDiZKntiVJqU6E+Fdy3gZ3zaYbFA4aZZ/ujglTgT5Y9qcAssURDthairv7t75pp DZxvPr4/eKE0doRm+U97EupNPOOTaxsU7MNWazhNoOvbWE4XMk615RzVbyQxpiQSMZLV teIZa5P2Nka6xv2fZj5Vm1X3bRNUsisHvvXMCnaK2ZkQVxJ23k+YXES8hxX51riBNGcy dBs/ll9Jvj9PkoRHnWQsnOHXYAxD19XHIBiXUNkDRQVqZwqJb6khPxnLaSebog2ECYc2 chI66X4PTb46Q3YOBBlw9vYeA9+HI9TiAAm+zkoHCKp+jdKVA4Qb45V8N3EiJFN0K5gl bLCA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687467523; x=1690059523; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=pBiyp2dfMpzV+NvCt1JbKOh6Ic1GEYp83948mVxRzoc=; b=Q72U9PTSQf3V1J33uiG74EX1D7h4Ou0WfPoM/Q/uV7HgSQ1e2r2bkCCIhG2jiXHmIk K9rLnD3gcz4QXN7jqUGJmCo3vgx7Xme5cYytuD/e/U4qlkZw4XDU4S3himn1wcH+HQo3 LAA1ewMM0sYauHL7vC3pXGXt4EHuAH7ZMtJRvKjcGMsQK5RNzSewG7ffFolTKWPmh60D YnoMuiXD7anRvBjzvzb5xTlwfgQ4AxpLI5NMfRn6n0DdV2zKpVTXVP+JkAaeR77M5AS8 POGhT3THLoOcgI3kIPuqQbEXCyyTm41Uf32gcZwZ6UFNkD7mkhsY3sAGQJlxiINvKDrh /+uw== X-Gm-Message-State: AC+VfDzE6tKlzn2nYE17xSji11ipkRKgIMQpQ1TjT891lgxENu5auEA8 x3JdeurTMxXvk3r3ttoLXPA= X-Google-Smtp-Source: ACHHUZ4CnESNgKf2MlezH4s3DCtDkik+QVMr2WtnXejWDaMJ55d+3hRh640wmo8yJZi9qvEIVubjUg== X-Received: by 2002:a1f:c1c3:0:b0:463:b57a:e927 with SMTP id r186-20020a1fc1c3000000b00463b57ae927mr9637913vkf.4.1687467523563; Thu, 22 Jun 2023 13:58:43 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" , Huacai Chen , Mike Rapoport Subject: [PATCH v5 23/33] loongarch: Convert various functions to use ptdescs Date: Thu, 22 Jun 2023 13:57:35 -0700 Message-Id: <20230622205745.79707-24-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230622205745.79707-1-vishal.moola@gmail.com> References: <20230622205745.79707-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit As part of the conversions to replace pgtable constructor/destructors with ptdesc equivalents, convert various page table functions to use ptdescs. Some of the functions use the *get*page*() helper functions. Convert these to use pagetable_alloc() and ptdesc_address() instead to help standardize page tables further. Signed-off-by: Vishal Moola (Oracle) Acked-by: Mike Rapoport (IBM) --- arch/loongarch/include/asm/pgalloc.h | 27 +++++++++++++++------------ arch/loongarch/mm/pgtable.c | 7 ++++--- 2 files changed, 19 insertions(+), 15 deletions(-) diff --git a/arch/loongarch/include/asm/pgalloc.h b/arch/loongarch/include/asm/pgalloc.h index af1d1e4a6965..23f5b1107246 100644 --- a/arch/loongarch/include/asm/pgalloc.h +++ b/arch/loongarch/include/asm/pgalloc.h @@ -45,9 +45,9 @@ extern void pagetable_init(void); extern pgd_t *pgd_alloc(struct mm_struct *mm); #define __pte_free_tlb(tlb, pte, address) \ -do { \ - pgtable_pte_page_dtor(pte); \ - tlb_remove_page((tlb), pte); \ +do { \ + pagetable_pte_dtor(page_ptdesc(pte)); \ + tlb_remove_page_ptdesc((tlb), page_ptdesc(pte)); \ } while (0) #ifndef __PAGETABLE_PMD_FOLDED @@ -55,18 +55,18 @@ do { \ static inline pmd_t *pmd_alloc_one(struct mm_struct *mm, unsigned long address) { pmd_t *pmd; - struct page *pg; + struct ptdesc *ptdesc; - pg = alloc_page(GFP_KERNEL_ACCOUNT); - if (!pg) + ptdesc = pagetable_alloc(GFP_KERNEL_ACCOUNT, 0); + if (!ptdesc) return NULL; - if (!pgtable_pmd_page_ctor(pg)) { - __free_page(pg); + if (!pagetable_pmd_ctor(ptdesc)) { + pagetable_free(ptdesc); return NULL; } - pmd = (pmd_t *)page_address(pg); + pmd = ptdesc_address(ptdesc); pmd_init(pmd); return pmd; } @@ -80,10 +80,13 @@ static inline pmd_t *pmd_alloc_one(struct mm_struct *mm, unsigned long address) static inline pud_t *pud_alloc_one(struct mm_struct *mm, unsigned long address) { pud_t *pud; + struct ptdesc *ptdesc = pagetable_alloc(GFP_KERNEL & ~__GFP_HIGHMEM, 0); - pud = (pud_t *) __get_free_page(GFP_KERNEL); - if (pud) - pud_init(pud); + if (!ptdesc) + return NULL; + pud = ptdesc_address(ptdesc); + + pud_init(pud); return pud; } diff --git a/arch/loongarch/mm/pgtable.c b/arch/loongarch/mm/pgtable.c index 36a6dc0148ae..5bd102b51f7c 100644 --- a/arch/loongarch/mm/pgtable.c +++ b/arch/loongarch/mm/pgtable.c @@ -11,10 +11,11 @@ pgd_t *pgd_alloc(struct mm_struct *mm) { - pgd_t *ret, *init; + pgd_t *init, *ret = NULL; + struct ptdesc *ptdesc = pagetable_alloc(GFP_KERNEL & ~__GFP_HIGHMEM, 0); - ret = (pgd_t *) __get_free_page(GFP_KERNEL); - if (ret) { + if (ptdesc) { + ret = (pgd_t *)ptdesc_address(ptdesc); init = pgd_offset(&init_mm, 0UL); pgd_init(ret); memcpy(ret + USER_PTRS_PER_PGD, init + USER_PTRS_PER_PGD, -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 22 20:59:33 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 20:59:33 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554018.865041 (Exim 4.92) (envelope-from ) id 1qCROu-0000Iz-QL; Thu, 22 Jun 2023 20:59:32 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554018.865041; Thu, 22 Jun 2023 20:59:32 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCROu-0000Eq-2w; Thu, 22 Jun 2023 20:59:32 +0000 Received: by outflank-mailman (input) for mailman id 554018; Thu, 22 Jun 2023 20:59:28 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCRNk-0006Mq-J3 for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 20:58:20 +0000 Received: from mail-yw1-x112e.google.com (mail-yw1-x112e.google.com [2607:f8b0:4864:20::112e]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 8417a862-113f-11ee-b237-6b7b168915f2; Thu, 22 Jun 2023 22:58:19 +0200 (CEST) Received: by mail-yw1-x112e.google.com with SMTP id 00721157ae682-570808d8ddeso75506217b3.0 for ; Thu, 22 Jun 2023 13:58:19 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::36]) by smtp.googlemail.com with ESMTPSA id d18-20020a5b0c52000000b00bc501a1b062sm1684937ybr.42.2023.06.22.13.58.16 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 22 Jun 2023 13:58:18 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 8417a862-113f-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687467498; x=1690059498; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=bhgUYiKwQSwYMGFv9d1r56wjiuPfdLCT9N5JwdJpvSY=; b=IkBs/PpafQMwMb5+bV+TjhgBJMISrd3r9Ehxv0D4bga5hDCjsodC2JnFe5fw5CuuNh oXzvywchS02bgspv2vVMsLaNaJfhQqRd4zMAT9dIGzvPtgGebpRn3vizNbCCeH4kxu0g TyHgRtXbQw9QJenBGoSSN+LcKZYEWvqLZfshqBtx5IJouxvVity8IJ3BMNOIhoxk8spN JqRw951qgrZvKDiFAsIL9Ao//k8BkssPPj/JxKTcUCZ9IjeC8TdTUdZgtY4aRKAk9cjf OLinZRYVomzL7Or7UYL6bwPiJppfDFOL1vHSgfsuBpqKRMQaWBk81ZwgHtszBi4jTAEe xuMQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687467498; x=1690059498; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=bhgUYiKwQSwYMGFv9d1r56wjiuPfdLCT9N5JwdJpvSY=; b=cY1mOrdAKY6S7qMdFTx1phaqvyfy0csJrI5ED9L6BHo5awH+EV3/OG8Kj6bcZhtbtg 5askKq/YJ7TvM0UFAEKol+BksRGLzo6Ms5xBonXaiG6S6JidJm1BHYrsTKJqXCGVmY7d Je6TiuGCTWOlqx39uEoHqaBwfNajf4Dib3ub0Vocs45Z5XiFAxv8Bu/i/qEYjnaDmdzA nNht+pi9FGS/9gIPuAGKxFtW725ueARJMX0dWKQCREfIpYMT9Qnrc/RNWIs5FuibVjE2 7Pq0fte4RQyBUhRfGYIsvwfcbYYPbCA6+5YMw5srZAIwwseyewRGQmNeoPZdhQLOpjS5 3E4w== X-Gm-Message-State: AC+VfDzGebwHa7M9kaeiy+onG48dq2gQuSyS4Av+QfgkUcYY2wG7uzKb mET+bfPw5OAkaSroEnJfKSQ= X-Google-Smtp-Source: ACHHUZ7Pa6VOZ8zc9ZXGMhVrxtFlOQ5CfM1HOMla01BhywdpE01k0n5trNDAUGdHgqy9w/StTvGJbA== X-Received: by 2002:a25:aaa9:0:b0:ba8:66fb:dd86 with SMTP id t38-20020a25aaa9000000b00ba866fbdd86mr17182535ybi.25.1687467498635; Thu, 22 Jun 2023 13:58:18 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" , Mike Rapoport Subject: [PATCH v5 11/33] mm: Convert ptlock_free() to use ptdescs Date: Thu, 22 Jun 2023 13:57:23 -0700 Message-Id: <20230622205745.79707-12-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230622205745.79707-1-vishal.moola@gmail.com> References: <20230622205745.79707-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit This removes some direct accesses to struct page, working towards splitting out struct ptdesc from struct page. Signed-off-by: Vishal Moola (Oracle) Acked-by: Mike Rapoport (IBM) --- include/linux/mm.h | 10 +++++----- mm/memory.c | 4 ++-- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/include/linux/mm.h b/include/linux/mm.h index 0221675e4dc5..69e6d6696c44 100644 --- a/include/linux/mm.h +++ b/include/linux/mm.h @@ -2799,7 +2799,7 @@ static inline void pagetable_free(struct ptdesc *pt) #if ALLOC_SPLIT_PTLOCKS void __init ptlock_cache_init(void); bool ptlock_alloc(struct ptdesc *ptdesc); -extern void ptlock_free(struct page *page); +void ptlock_free(struct ptdesc *ptdesc); static inline spinlock_t *ptlock_ptr(struct ptdesc *ptdesc) { @@ -2815,7 +2815,7 @@ static inline bool ptlock_alloc(struct ptdesc *ptdesc) return true; } -static inline void ptlock_free(struct page *page) +static inline void ptlock_free(struct ptdesc *ptdesc) { } @@ -2856,7 +2856,7 @@ static inline spinlock_t *pte_lockptr(struct mm_struct *mm, pmd_t *pmd) } static inline void ptlock_cache_init(void) {} static inline bool ptlock_init(struct ptdesc *ptdesc) { return true; } -static inline void ptlock_free(struct page *page) {} +static inline void ptlock_free(struct ptdesc *ptdesc) {} #endif /* USE_SPLIT_PTE_PTLOCKS */ static inline bool pgtable_pte_page_ctor(struct page *page) @@ -2870,7 +2870,7 @@ static inline bool pgtable_pte_page_ctor(struct page *page) static inline void pgtable_pte_page_dtor(struct page *page) { - ptlock_free(page); + ptlock_free(page_ptdesc(page)); __ClearPageTable(page); dec_lruvec_page_state(page, NR_PAGETABLE); } @@ -2939,7 +2939,7 @@ static inline void pmd_ptlock_free(struct ptdesc *ptdesc) #ifdef CONFIG_TRANSPARENT_HUGEPAGE VM_BUG_ON_PAGE(ptdesc->pmd_huge_pte, ptdesc_page(ptdesc)); #endif - ptlock_free(ptdesc_page(ptdesc)); + ptlock_free(ptdesc); } #define pmd_huge_pte(mm, pmd) (pmd_ptdesc(pmd)->pmd_huge_pte) diff --git a/mm/memory.c b/mm/memory.c index 2ff14f50c7b3..8743aef6095b 100644 --- a/mm/memory.c +++ b/mm/memory.c @@ -5931,8 +5931,8 @@ bool ptlock_alloc(struct ptdesc *ptdesc) return true; } -void ptlock_free(struct page *page) +void ptlock_free(struct ptdesc *ptdesc) { - kmem_cache_free(page_ptl_cachep, page->ptl); + kmem_cache_free(page_ptl_cachep, ptdesc->ptl); } #endif -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 22 20:59:36 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 20:59:36 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554026.865061 (Exim 4.92) (envelope-from ) id 1qCROy-0001Hy-Ea; Thu, 22 Jun 2023 20:59:36 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554026.865061; Thu, 22 Jun 2023 20:59:36 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCROy-0001FC-1b; Thu, 22 Jun 2023 20:59:36 +0000 Received: by outflank-mailman (input) for mailman id 554026; Thu, 22 Jun 2023 20:59:33 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCROS-0006Mq-Oe for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 20:59:04 +0000 Received: from mail-vk1-xa35.google.com (mail-vk1-xa35.google.com [2607:f8b0:4864:20::a35]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 9e9894a6-113f-11ee-b237-6b7b168915f2; Thu, 22 Jun 2023 22:59:04 +0200 (CEST) Received: by mail-vk1-xa35.google.com with SMTP id 71dfb90a1353d-47179f18c76so2346181e0c.3 for ; Thu, 22 Jun 2023 13:59:04 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::36]) by smtp.googlemail.com with ESMTPSA id d18-20020a5b0c52000000b00bc501a1b062sm1684937ybr.42.2023.06.22.13.59.00 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 22 Jun 2023 13:59:02 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 9e9894a6-113f-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687467543; x=1690059543; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=JRfRtQSkmDpdaHgWU+x8J8rVDSFtmuGYMRjnXDV0vQY=; b=JIPmtJWZzsFuYAbPd3iclg33SdIOk6GD+7bRoJGsXkLCA1qQrwoboYccPvVKSwty8z /qB14KJSfGNtyZY8gC2KXxRSZzLDqLeIztRDYfuoehM6XT+tgKnz6817MlJhyGs2y+Ff nzC5sPDHJyAHEqzN9xTnBixLp+PW75W3jhf77P4PsuZDMkZ6OcWV4Xi+Rqew178LHkOZ sutRPAF9NDYk2/4a4fGlPwKxe3Z/pKSq61jE0ZBiyKHaHi8RSPhHJpH4MRgs4uLl46tG QM0pvqokM6W0xltWNxHmZb4kL6K9Vi53nErkSfWOsX8epBIiO3LuoRLa0NZXa1LOWk1D I+ng== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687467543; x=1690059543; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=JRfRtQSkmDpdaHgWU+x8J8rVDSFtmuGYMRjnXDV0vQY=; b=C9I5m9mmgzSbJyO6LRbY16duWkZAfrmHkpgfZpjdBj8mwwmqWXfZjhOzEtRHpcKOV9 8aRAl9m0X5Woigmn/wuCjyoLcn21M94B3sKSGtYjBuETZ72nJFvKmEouJN8fFVHOUF5D bfWtsAW47pp60D07+eXfaboIZ/wdtG5EOysNsWwQWF8iWI6K0aLJIU+rVeI5ZQWb1YlJ 5KiW+RFGNEcSV41RINaYT825+qIQw+eZC6MWDa4bOyIJ/eILY1YyCXU1aG9+28P+6Cll jWnWzJct7FKzasBh3tHdSxke6NZJ9/PcJVsIO57rZcMBVlclbg+bgmNY/78K2uLRGN/2 Vr9g== X-Gm-Message-State: AC+VfDx98vhC953HR9hCSi033S+fDzgzhpljVfxZCeMouh+ODhcV6idm AscrwNQIPLjep3HFBsSR3gY= X-Google-Smtp-Source: ACHHUZ4B8dweYtEIi2rY8Mw0qtzsz5NxOVUlUIQPQfiDh4wzrLYoG70uIa1HADP+PMU/T07FaShgdg== X-Received: by 2002:a67:d087:0:b0:438:d4bd:f1f2 with SMTP id s7-20020a67d087000000b00438d4bdf1f2mr9462119vsi.22.1687467543144; Thu, 22 Jun 2023 13:59:03 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" , Richard Weinberger , Mike Rapoport Subject: [PATCH v5 32/33] um: Convert {pmd, pte}_free_tlb() to use ptdescs Date: Thu, 22 Jun 2023 13:57:44 -0700 Message-Id: <20230622205745.79707-33-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230622205745.79707-1-vishal.moola@gmail.com> References: <20230622205745.79707-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Part of the conversions to replace pgtable constructor/destructors with ptdesc equivalents. Also cleans up some spacing issues. Signed-off-by: Vishal Moola (Oracle) Acked-by: Mike Rapoport (IBM) --- arch/um/include/asm/pgalloc.h | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/arch/um/include/asm/pgalloc.h b/arch/um/include/asm/pgalloc.h index 8ec7cd46dd96..de5e31c64793 100644 --- a/arch/um/include/asm/pgalloc.h +++ b/arch/um/include/asm/pgalloc.h @@ -25,19 +25,19 @@ */ extern pgd_t *pgd_alloc(struct mm_struct *); -#define __pte_free_tlb(tlb,pte, address) \ -do { \ - pgtable_pte_page_dtor(pte); \ - tlb_remove_page((tlb),(pte)); \ +#define __pte_free_tlb(tlb, pte, address) \ +do { \ + pagetable_pte_dtor(page_ptdesc(pte)); \ + tlb_remove_page_ptdesc((tlb), (page_ptdesc(pte))); \ } while (0) #ifdef CONFIG_3_LEVEL_PGTABLES -#define __pmd_free_tlb(tlb, pmd, address) \ -do { \ - pgtable_pmd_page_dtor(virt_to_page(pmd)); \ - tlb_remove_page((tlb),virt_to_page(pmd)); \ -} while (0) \ +#define __pmd_free_tlb(tlb, pmd, address) \ +do { \ + pagetable_pmd_dtor(virt_to_ptdesc(pmd)); \ + tlb_remove_page_ptdesc((tlb), virt_to_ptdesc(pmd)); \ +} while (0) #endif -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 22 20:59:38 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 20:59:38 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554028.865068 (Exim 4.92) (envelope-from ) id 1qCROz-0001XL-Vg; Thu, 22 Jun 2023 20:59:37 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554028.865068; Thu, 22 Jun 2023 20:59:37 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCROz-0001VW-Au; Thu, 22 Jun 2023 20:59:37 +0000 Received: by outflank-mailman (input) for mailman id 554028; Thu, 22 Jun 2023 20:59:35 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCRNy-0006Mr-W9 for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 20:58:35 +0000 Received: from mail-qk1-x72a.google.com (mail-qk1-x72a.google.com [2607:f8b0:4864:20::72a]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 8b4c96f0-113f-11ee-8611-37d641c3527e; Thu, 22 Jun 2023 22:58:31 +0200 (CEST) Received: by mail-qk1-x72a.google.com with SMTP id af79cd13be357-763d86856fdso194311885a.3 for ; Thu, 22 Jun 2023 13:58:32 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::36]) by smtp.googlemail.com with ESMTPSA id d18-20020a5b0c52000000b00bc501a1b062sm1684937ybr.42.2023.06.22.13.58.29 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 22 Jun 2023 13:58:30 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 8b4c96f0-113f-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687467511; x=1690059511; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=nccUzLka7Xkr4OuMpYk05u/KaIGQrzDFYQttz/vcmHQ=; b=bxkxtD+QQAC8zd161RKeCcg6MaoPAPE7L+CauClsYEL0Xy9+Td62VuxUGsgYxnFiq0 O6uvJ71cZ3HzaD3sn95/EOTS8BXKpmL+IQrAYm0nHFHW9S+p9vWLuqdK4qFg64CCRbun joR+Hl/5hsxihcXKPDNMSOwFhI08HqC+OD8d0u+5w8Qz5HarhFJT9jfwORvF779fEL9V zRFvHmiRuYANo66EVjgtR36nI9raB2GVIEDQNVqxyl97sNwtEBiuGHRD00zHWqOmK+wx CCZ2jYpmNaAVgCE8uPmkzzzOyp8bu94YHjJqAydk7W1+LKznmMU3DWFCBUl+KliiUs4D rLQQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687467511; x=1690059511; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=nccUzLka7Xkr4OuMpYk05u/KaIGQrzDFYQttz/vcmHQ=; b=Rd3fxN0U7lXPnxHQHWRC6zaXmsVHIFqZ6HR+5+KrFTQbk8a3486zzajHIYT7JTBc/2 3m9mBcQM1ReGKOIVenw8pmfrl06xRijLgkLnDCKyXghs+59WQuZVATibNWVB42VI/ZuW e8yBb+EubYS0Uz/el/10YkE5K+hhDrzGWeOLnvTDASlQ4HY2YbrM2Fu8NPmn9H3VD0+Z VMJkiPGZg7eVcUEetPnZn9C/jvdnD/7+zG7xbVOVMkowshqo91HIDVSLm4W6DHCCaVnO FGZAD+UKPpfjWbZxFQLXPc8cU+/uZc9gAwHhxkC+ztmMpsZ6EVbFIhICUEwrodrx7zum wtHg== X-Gm-Message-State: AC+VfDzmzMrpsN7/bRxLB2ipVdwPiMDWw8Ec9CMSsG2ugW7qDSvQpggQ gTS9y+RJ2uPoVV+wWS1CRF4= X-Google-Smtp-Source: ACHHUZ4ad8Rj1cEO907Psdq+ajLgAiK0FYJ6eHB9wwgKt19FWwArd1FWX8Y4TNXwZH2eE/VH/YBYiA== X-Received: by 2002:a05:620a:4790:b0:765:41c1:31eb with SMTP id dt16-20020a05620a479000b0076541c131ebmr1410020qkb.48.1687467511080; Thu, 22 Jun 2023 13:58:31 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" , Mike Rapoport Subject: [PATCH v5 17/33] mm: Remove page table members from struct page Date: Thu, 22 Jun 2023 13:57:29 -0700 Message-Id: <20230622205745.79707-18-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230622205745.79707-1-vishal.moola@gmail.com> References: <20230622205745.79707-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit The page table members are now split out into their own ptdesc struct. Remove them from struct page. Signed-off-by: Vishal Moola (Oracle) Acked-by: Mike Rapoport (IBM) --- include/linux/mm_types.h | 14 -------------- include/linux/pgtable.h | 3 --- 2 files changed, 17 deletions(-) diff --git a/include/linux/mm_types.h b/include/linux/mm_types.h index fbbe4e93a9ba..434e54440686 100644 --- a/include/linux/mm_types.h +++ b/include/linux/mm_types.h @@ -141,20 +141,6 @@ struct page { struct { /* Tail pages of compound page */ unsigned long compound_head; /* Bit zero is set */ }; - struct { /* Page table pages */ - unsigned long _pt_pad_1; /* compound_head */ - pgtable_t pmd_huge_pte; /* protected by page->ptl */ - unsigned long _pt_s390_gaddr; /* mapping */ - union { - struct mm_struct *pt_mm; /* x86 pgds only */ - atomic_t pt_frag_refcount; /* powerpc */ - }; -#if ALLOC_SPLIT_PTLOCKS - spinlock_t *ptl; -#else - spinlock_t ptl; -#endif - }; struct { /* ZONE_DEVICE pages */ /** @pgmap: Points to the hosting device page map. */ struct dev_pagemap *pgmap; diff --git a/include/linux/pgtable.h b/include/linux/pgtable.h index e9bb5f18cade..daeacfe3930d 100644 --- a/include/linux/pgtable.h +++ b/include/linux/pgtable.h @@ -1044,10 +1044,7 @@ struct ptdesc { TABLE_MATCH(flags, __page_flags); TABLE_MATCH(compound_head, pt_list); TABLE_MATCH(compound_head, _pt_pad_1); -TABLE_MATCH(pmd_huge_pte, pmd_huge_pte); TABLE_MATCH(mapping, _pt_s390_gaddr); -TABLE_MATCH(pt_mm, pt_mm); -TABLE_MATCH(ptl, ptl); TABLE_MATCH(rcu_head, pt_rcu_head); #ifdef CONFIG_MEMCG TABLE_MATCH(memcg_data, pt_memcg_data); -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 22 20:59:43 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 20:59:43 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554036.865091 (Exim 4.92) (envelope-from ) id 1qCRP5-000357-DU; Thu, 22 Jun 2023 20:59:43 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554036.865091; Thu, 22 Jun 2023 20:59:43 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCRP5-000345-3P; Thu, 22 Jun 2023 20:59:43 +0000 Received: by outflank-mailman (input) for mailman id 554036; Thu, 22 Jun 2023 20:59:41 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCROE-0006Mq-E4 for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 20:58:50 +0000 Received: from mail-yb1-xb33.google.com (mail-yb1-xb33.google.com [2607:f8b0:4864:20::b33]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 9565da2c-113f-11ee-b237-6b7b168915f2; Thu, 22 Jun 2023 22:58:48 +0200 (CEST) Received: by mail-yb1-xb33.google.com with SMTP id 3f1490d57ef6-bff27026cb0so2083650276.1 for ; Thu, 22 Jun 2023 13:58:48 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::36]) by smtp.googlemail.com with ESMTPSA id d18-20020a5b0c52000000b00bc501a1b062sm1684937ybr.42.2023.06.22.13.58.45 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 22 Jun 2023 13:58:47 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 9565da2c-113f-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687467528; x=1690059528; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=Z2eVDlXL8alglJUGVXcc8JA7ix0brgT+4DYqdXjkOuM=; b=DbS/FVmft5J2VICO+Nf92XNy2wvgGSGG4msWs7E9V6KxYzm+tSzGTprRX7LY1Az4z2 YpRpjh1gFRRLJ/li9beG6PIvlUHG9ZRwTYplGkWymenSAyOrWC24owgK1fhjKR3yrEtN hDpVadLC+93vTqzcu4H8sHAK66wH4JJJgH7pIr7Eko07frtpGYI2AQVOUDXreCJkOXFd 1tssjWaKiQ/O8SbW0+/XdEB5l3eXLYaeBTMZyr+OokbQWbFNHBYbcUGqZxcWlMHvdqKX xSAVDlOu/6aRWjk6xB/QGaUjzCCA1KdGOVBnKZ7vKSpcGAQnSE9HW2pjZqAURJ5Ds3lR MAFw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687467528; x=1690059528; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=Z2eVDlXL8alglJUGVXcc8JA7ix0brgT+4DYqdXjkOuM=; b=LKr1UGMdXN28Xk1olPyj9tsmVd43nX2SKHXOluEJZdujd/cu2FHnYmW634nqljtQJO fYgSTHVy1Ts18dGGcbKfTh6E6HIUXIS8Yd1eZfRikNDZAwEfPOFjonkY87YRwIUxpvn3 3ZnsShDvtRxwqehCaR7E/iODDWcUi5FWnHveNJOan1e7FPp95/5Rq0H/jWZIpeWpXhO2 glY2yoLqVyNkNFsdmBHfNpYtwOum0Liqk8/MGeC6v6X1FjUmSa1Mk5DC0AUPPQq3iQtb dTjj7tN/iOfhxLO163Rb52FGSuhAxacDGXAd6BxkV13qaBgSvmjJyFzj9Tek3SRZqrJk NKZA== X-Gm-Message-State: AC+VfDzas8qOhKxBEObRxNpsxx5pMW7wEP31NV355R9WeTMwpSRxGI7O D7KvNqnyuG46gvqyA0D3Y2s= X-Google-Smtp-Source: ACHHUZ6vkVdQ+2aFbexAEsw0zpg6DZHD2/vRtLHLUIl/mOJbyXKI4RGZmCd4L5PdfTZt6ngBy4nBHA== X-Received: by 2002:a25:44d:0:b0:bfe:e65b:cd1 with SMTP id 74-20020a25044d000000b00bfee65b0cd1mr5470842ybe.46.1687467527711; Thu, 22 Jun 2023 13:58:47 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" , Thomas Bogendoerfer , Mike Rapoport Subject: [PATCH v5 25/33] mips: Convert various functions to use ptdescs Date: Thu, 22 Jun 2023 13:57:37 -0700 Message-Id: <20230622205745.79707-26-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230622205745.79707-1-vishal.moola@gmail.com> References: <20230622205745.79707-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit As part of the conversions to replace pgtable constructor/destructors with ptdesc equivalents, convert various page table functions to use ptdescs. Some of the functions use the *get*page*() helper functions. Convert these to use pagetable_alloc() and ptdesc_address() instead to help standardize page tables further. Signed-off-by: Vishal Moola (Oracle) Acked-by: Mike Rapoport (IBM) --- arch/mips/include/asm/pgalloc.h | 32 ++++++++++++++++++-------------- arch/mips/mm/pgtable.c | 8 +++++--- 2 files changed, 23 insertions(+), 17 deletions(-) diff --git a/arch/mips/include/asm/pgalloc.h b/arch/mips/include/asm/pgalloc.h index f72e737dda21..40e40a7eb94a 100644 --- a/arch/mips/include/asm/pgalloc.h +++ b/arch/mips/include/asm/pgalloc.h @@ -51,13 +51,13 @@ extern pgd_t *pgd_alloc(struct mm_struct *mm); static inline void pgd_free(struct mm_struct *mm, pgd_t *pgd) { - free_pages((unsigned long)pgd, PGD_TABLE_ORDER); + pagetable_free(virt_to_ptdesc(pgd)); } -#define __pte_free_tlb(tlb,pte,address) \ -do { \ - pgtable_pte_page_dtor(pte); \ - tlb_remove_page((tlb), pte); \ +#define __pte_free_tlb(tlb, pte, address) \ +do { \ + pagetable_pte_dtor(page_ptdesc(pte)); \ + tlb_remove_page_ptdesc((tlb), page_ptdesc(pte)); \ } while (0) #ifndef __PAGETABLE_PMD_FOLDED @@ -65,18 +65,18 @@ do { \ static inline pmd_t *pmd_alloc_one(struct mm_struct *mm, unsigned long address) { pmd_t *pmd; - struct page *pg; + struct ptdesc *ptdesc; - pg = alloc_pages(GFP_KERNEL_ACCOUNT, PMD_TABLE_ORDER); - if (!pg) + ptdesc = pagetable_alloc(GFP_KERNEL_ACCOUNT, PMD_TABLE_ORDER); + if (!ptdesc) return NULL; - if (!pgtable_pmd_page_ctor(pg)) { - __free_pages(pg, PMD_TABLE_ORDER); + if (!pagetable_pmd_ctor(ptdesc)) { + pagetable_free(ptdesc); return NULL; } - pmd = (pmd_t *)page_address(pg); + pmd = ptdesc_address(ptdesc); pmd_init(pmd); return pmd; } @@ -90,10 +90,14 @@ static inline pmd_t *pmd_alloc_one(struct mm_struct *mm, unsigned long address) static inline pud_t *pud_alloc_one(struct mm_struct *mm, unsigned long address) { pud_t *pud; + struct ptdesc *ptdesc = pagetable_alloc(GFP_KERNEL & ~__GFP_HIGHMEM, + PUD_TABLE_ORDER); - pud = (pud_t *) __get_free_pages(GFP_KERNEL, PUD_TABLE_ORDER); - if (pud) - pud_init(pud); + if (!ptdesc) + return NULL; + pud = ptdesc_address(ptdesc); + + pud_init(pud); return pud; } diff --git a/arch/mips/mm/pgtable.c b/arch/mips/mm/pgtable.c index b13314be5d0e..1506e458040d 100644 --- a/arch/mips/mm/pgtable.c +++ b/arch/mips/mm/pgtable.c @@ -10,10 +10,12 @@ pgd_t *pgd_alloc(struct mm_struct *mm) { - pgd_t *ret, *init; + pgd_t *init, *ret = NULL; + struct ptdesc *ptdesc = pagetable_alloc(GFP_KERNEL & ~__GFP_HIGHMEM, + PGD_TABLE_ORDER); - ret = (pgd_t *) __get_free_pages(GFP_KERNEL, PGD_TABLE_ORDER); - if (ret) { + if (ptdesc) { + ret = ptdesc_address(ptdesc); init = pgd_offset(&init_mm, 0UL); pgd_init(ret); memcpy(ret + USER_PTRS_PER_PGD, init + USER_PTRS_PER_PGD, -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 22 20:59:44 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 20:59:44 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554037.865096 (Exim 4.92) (envelope-from ) id 1qCRP6-0003Db-Cb; Thu, 22 Jun 2023 20:59:44 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554037.865096; Thu, 22 Jun 2023 20:59:44 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCRP5-00038G-Qa; Thu, 22 Jun 2023 20:59:43 +0000 Received: by outflank-mailman (input) for mailman id 554037; Thu, 22 Jun 2023 20:59:42 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCROR-0006Mr-Fu for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 20:59:03 +0000 Received: from mail-yb1-xb32.google.com (mail-yb1-xb32.google.com [2607:f8b0:4864:20::b32]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 9ce14d6c-113f-11ee-8611-37d641c3527e; Thu, 22 Jun 2023 22:59:01 +0200 (CEST) Received: by mail-yb1-xb32.google.com with SMTP id 3f1490d57ef6-bfee66a5db6so2126730276.0 for ; Thu, 22 Jun 2023 13:59:01 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::36]) by smtp.googlemail.com with ESMTPSA id d18-20020a5b0c52000000b00bc501a1b062sm1684937ybr.42.2023.06.22.13.58.58 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 22 Jun 2023 13:59:00 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 9ce14d6c-113f-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687467540; x=1690059540; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=ES9RfFz84BcV9KH4Nk3AfkjPOEvVVRdPbPMSiTejLcw=; b=oM2eqoarO5mbV/RC9CFfzfiqtalAJnN4v5hz57x8U3YE+/nDsUrmXb6G6NrrfuA0hI XHlp77eZ+DzSkin9lWOejdHXde4PpTwM3RiXeCXAduuSgLDQHciXyNj0UWZkZs6yvfTo QiJ21UomG7h0wL2TX1WHwgye+s/VKR+Tvt1mxLr3lV1WjwsNROzbcgrXcLO9VnGSpeAH 7uCU00iH87QJVCo5EKIyfZlW0ogPYyMPi5bY1z7m39x6DegLfFGe3afEY/9WN7xyqGjN dkO4NEs5eZtRaUa3RiJYmwztOORKB/ecQ6EJlrLWdOw/VRXBlFmMwGL9APm0v6t4+G2k ZQDg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687467540; x=1690059540; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=ES9RfFz84BcV9KH4Nk3AfkjPOEvVVRdPbPMSiTejLcw=; b=Xp4qPukj+65YuNV41hc6CY2uxt7laCeU8hWghuCZ2HGAyLUPadurMDgFkyLiGTngAE 00J+6t+eN19dsnhE+Zzsaih0cZzxcz8+P2TkQ28lZVp6d32fSUCsf7ikGSmmTaIYUZdV 9Qks2ImHf0px+2qpxMPlfJPOhRKYr0wJFfkyOtz/FChggtZ6UEl1UCbXYJf6vZf736fg tfloIu9bKfYG457eUarWMsReAr9KID5mDo/B9JJ7Y5CvhSn6N9KKG5Aq2rgZoyEPDhq/ pTveI79wcSTqMcynL0NFK4QdeH5ftxfhSTpHmildV/zJ5CIgbreiTgKcs+7OKAnwZ1vC ao4A== X-Gm-Message-State: AC+VfDzTYYMr0oEpJ3XmPcjucFyx4C3EChC2IeyS1WSRcXu0MRDlMX+G LkR+R+kT4erTWKPBwd3FA+U= X-Google-Smtp-Source: ACHHUZ6Ec2kbAX1UDgGMj9ZCyBvb/VNaStMToJEcOH7SUf7INOW9CMO0HLoZFa/KezNB/PETnccRFQ== X-Received: by 2002:a25:bc53:0:b0:ba7:db6c:c0eb with SMTP id d19-20020a25bc53000000b00ba7db6cc0ebmr10225049ybk.3.1687467540710; Thu, 22 Jun 2023 13:59:00 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" , "David S. Miller" , Mike Rapoport Subject: [PATCH v5 31/33] sparc: Convert pgtable_pte_page_{ctor, dtor}() to ptdesc equivalents Date: Thu, 22 Jun 2023 13:57:43 -0700 Message-Id: <20230622205745.79707-32-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230622205745.79707-1-vishal.moola@gmail.com> References: <20230622205745.79707-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Part of the conversions to replace pgtable pte constructor/destructors with ptdesc equivalents. Signed-off-by: Vishal Moola (Oracle) Acked-by: Mike Rapoport (IBM) --- arch/sparc/mm/srmmu.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/arch/sparc/mm/srmmu.c b/arch/sparc/mm/srmmu.c index 13f027afc875..8393faa3e596 100644 --- a/arch/sparc/mm/srmmu.c +++ b/arch/sparc/mm/srmmu.c @@ -355,7 +355,8 @@ pgtable_t pte_alloc_one(struct mm_struct *mm) return NULL; page = pfn_to_page(__nocache_pa((unsigned long)ptep) >> PAGE_SHIFT); spin_lock(&mm->page_table_lock); - if (page_ref_inc_return(page) == 2 && !pgtable_pte_page_ctor(page)) { + if (page_ref_inc_return(page) == 2 && + !pagetable_pte_ctor(page_ptdesc(page))) { page_ref_dec(page); ptep = NULL; } @@ -371,7 +372,7 @@ void pte_free(struct mm_struct *mm, pgtable_t ptep) page = pfn_to_page(__nocache_pa((unsigned long)ptep) >> PAGE_SHIFT); spin_lock(&mm->page_table_lock); if (page_ref_dec_return(page) == 1) - pgtable_pte_page_dtor(page); + pagetable_pte_dtor(page_ptdesc(page)); spin_unlock(&mm->page_table_lock); srmmu_free_nocache(ptep, SRMMU_PTE_TABLE_SIZE); -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 22 20:59:49 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 20:59:49 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554048.865110 (Exim 4.92) (envelope-from ) id 1qCRPB-0004aS-Aa; Thu, 22 Jun 2023 20:59:49 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554048.865110; Thu, 22 Jun 2023 20:59:49 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCRPB-0004ZT-28; Thu, 22 Jun 2023 20:59:49 +0000 Received: by outflank-mailman (input) for mailman id 554048; Thu, 22 Jun 2023 20:59:47 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCRO8-0006Mr-3s for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 20:58:44 +0000 Received: from mail-qk1-x732.google.com (mail-qk1-x732.google.com [2607:f8b0:4864:20::732]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 916bef5d-113f-11ee-8611-37d641c3527e; Thu, 22 Jun 2023 22:58:42 +0200 (CEST) Received: by mail-qk1-x732.google.com with SMTP id af79cd13be357-763bd31d223so257173785a.3 for ; Thu, 22 Jun 2023 13:58:42 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::36]) by smtp.googlemail.com with ESMTPSA id d18-20020a5b0c52000000b00bc501a1b062sm1684937ybr.42.2023.06.22.13.58.39 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 22 Jun 2023 13:58:41 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 916bef5d-113f-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687467521; x=1690059521; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=aUnc1suNAj/KzreaB6s7vAsOWiJZx3FNBLzDbQjj/SU=; b=mxSRrVtskejfc/X16Q74dptO75kex0U1BDLuwz97pVRe94MsJ1tXF/mDBi2+KIRPRR 7frc0Ipdbv1qDfHMpCRO5VQbJ/DKNN2DmrrOctIElaXq4X1eS2wG1MgKx+EEIDm5IE/n dhPljY31cmgrHKk6DhfJfpvGe6V9T4MqXnsXF7ZHxbxJIsBPM+C004kDxiRMae/4a+6A l/JL+zpf4vx2gyi8iDyTm65oAYm1ZOIjSFK4K+nSdgPKFtV6K4nHQ1K38iP6GDgp4k/p RVulC8Jyfz61VS4MiwEinectlQ9R+QOPA/9MgDEtR4kVqNBk2wlMydoonlFLN2E5gAjW A4dg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687467521; x=1690059521; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=aUnc1suNAj/KzreaB6s7vAsOWiJZx3FNBLzDbQjj/SU=; b=agzz23EoUK/mJQh33t9BNHgDyWJ+eCTwkM/chWy3WxXt1UMJularHwxvBwVMGJ6mDD iyR3hL1rpR1x2ZWdooHUYGsh1+X/+7lcCI5UNIJxbtS8By+uh92/6AD0hJ2qMeP6/Lw/ Pzl05YNd2jjnErGeP94UkzxYSdgzx4z0wBn3uinZVWIpxbjmj38LukS63roh3NVnJjed ZRtERA2X8n+KEbcBydDbVmaaZLFNGSp2pQkJWDYzYcn3lYh36I+OyuWy3ozSgIHiCJ9k djnnkKgzfgqaC+j/LUScKmuim2D5ikQvm6zcdHARboYWYyAV5lqr8kWYsFGkxD/eEYe/ KAfQ== X-Gm-Message-State: AC+VfDyfmXUIjv9ZAxuJ+dKADW9slBlRW1IcTG1DY50XqeVcrLoCoHxx rMyQWMjBQbkt94m2Q6wsjFQ= X-Google-Smtp-Source: ACHHUZ6uwsaC+f+4ISzpiwzmvKryO8fCbzH23CcTApoIn0lsQ518YuGTPwW7f524cMEve6g2SlrGNw== X-Received: by 2002:a05:620a:c82:b0:75e:6837:19f8 with SMTP id q2-20020a05620a0c8200b0075e683719f8mr19290818qki.54.1687467521509; Thu, 22 Jun 2023 13:58:41 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" , Mike Rapoport Subject: [PATCH v5 22/33] hexagon: Convert __pte_free_tlb() to use ptdescs Date: Thu, 22 Jun 2023 13:57:34 -0700 Message-Id: <20230622205745.79707-23-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230622205745.79707-1-vishal.moola@gmail.com> References: <20230622205745.79707-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Part of the conversions to replace pgtable constructor/destructors with ptdesc equivalents. Signed-off-by: Vishal Moola (Oracle) Acked-by: Mike Rapoport (IBM) --- arch/hexagon/include/asm/pgalloc.h | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/arch/hexagon/include/asm/pgalloc.h b/arch/hexagon/include/asm/pgalloc.h index f0c47e6a7427..55988625e6fb 100644 --- a/arch/hexagon/include/asm/pgalloc.h +++ b/arch/hexagon/include/asm/pgalloc.h @@ -87,10 +87,10 @@ static inline void pmd_populate_kernel(struct mm_struct *mm, pmd_t *pmd, max_kernel_seg = pmdindex; } -#define __pte_free_tlb(tlb, pte, addr) \ -do { \ - pgtable_pte_page_dtor((pte)); \ - tlb_remove_page((tlb), (pte)); \ +#define __pte_free_tlb(tlb, pte, addr) \ +do { \ + pagetable_pte_dtor((page_ptdesc(pte))); \ + tlb_remove_page_ptdesc((tlb), (page_ptdesc(pte))); \ } while (0) #endif -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 22 20:59:54 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 20:59:54 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554066.865122 (Exim 4.92) (envelope-from ) id 1qCRPF-0005Yw-SD; Thu, 22 Jun 2023 20:59:53 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554066.865122; Thu, 22 Jun 2023 20:59:53 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCRPF-0005Xx-Gg; Thu, 22 Jun 2023 20:59:53 +0000 Received: by outflank-mailman (input) for mailman id 554066; Thu, 22 Jun 2023 20:59:51 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCRO3-0006Mr-0T for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 20:58:39 +0000 Received: from mail-qk1-x729.google.com (mail-qk1-x729.google.com [2607:f8b0:4864:20::729]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 8da6cab4-113f-11ee-8611-37d641c3527e; Thu, 22 Jun 2023 22:58:35 +0200 (CEST) Received: by mail-qk1-x729.google.com with SMTP id af79cd13be357-762092e1fb7so682075585a.1 for ; Thu, 22 Jun 2023 13:58:36 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::36]) by smtp.googlemail.com with ESMTPSA id d18-20020a5b0c52000000b00bc501a1b062sm1684937ybr.42.2023.06.22.13.58.33 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 22 Jun 2023 13:58:34 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 8da6cab4-113f-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687467515; x=1690059515; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=jHkn+4hWn6cNWfQmftBQOtWQYQb9iJJIYcRZZNmu6iY=; b=aYnvKxdcWv6qwRiCaWGJVXxgi34L6bq8ffoeujUnALIHtFuBXRmM+bcP9XCahDm+sX c/aqF5jzy/t6hTOr4VmOAf00WcyCDW4uBsXDaSxBnZc2Y5pzs1DtJ08u48NaJcU33gxe biARDPsxQJJ1M4wS/EW+UE7Jv4/5cxI8wBjMD1x51K3UK2lYTvqb8DS6s/XFH10WDh2J VablBYi+dZASmJrgz36uvDp4UJXSq36XOIyfuFYT8xy605670eCEF/XRu34qeL3h/9QF NP9Vpp+QW87o+p8FpzexMhKxgQg/GTdeD91r7OzfnHYpx/Em9cW4zYexsWWaxdvDLTnY 5oIw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687467515; x=1690059515; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=jHkn+4hWn6cNWfQmftBQOtWQYQb9iJJIYcRZZNmu6iY=; b=Gs7yYA4XaqsqbJDceQTQpCcjWIEBp8UZiNdkqhzVslcO6v9cUuaXiG7pYXdqh7yWTD nvKJHYKAvUGszuv6oR0QUpViAc1Mn0bEYgkY/q3PLegZvx72G96ZuLTtAp9uoq/kTn32 puPUQPp/gIvJCtyGWJDrKUTUl+bdfnXpl4kf9N4IPxN8hkVC0xkJ5s/WUN0wf8U05Utm Jo2mm024/oBey8fS7crVhoyvjXR3vLJnyjklm2uvXpoXnNhsFvevTjImubCeEAga6MkR wS7K9LT3AVKhBcUY778Ru5dYOdpD5U6ITfxRbLPzJ/uwwDsF+pknD5K2Lh3nzGyM+FvJ Lpiw== X-Gm-Message-State: AC+VfDxWx8spPBSL8BR5+CCx1oBPzCJczMBKZJZmQ7sEoTKzjHr7uFBl UOQq0WQyAa3sXfHlU/TOX8s= X-Google-Smtp-Source: ACHHUZ60juxfhAagNO6Es1Dw+TzUsWcwO9UH0sU+P0uZ6ZZDjPscGIIYCumcyS40JVtPdjZ8M8DAow== X-Received: by 2002:a05:620a:21dc:b0:763:a299:7235 with SMTP id h28-20020a05620a21dc00b00763a2997235mr11483461qka.0.1687467515158; Thu, 22 Jun 2023 13:58:35 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" , Catalin Marinas , Mike Rapoport Subject: [PATCH v5 19/33] arm: Convert various functions to use ptdescs Date: Thu, 22 Jun 2023 13:57:31 -0700 Message-Id: <20230622205745.79707-20-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230622205745.79707-1-vishal.moola@gmail.com> References: <20230622205745.79707-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit As part of the conversions to replace pgtable constructor/destructors with ptdesc equivalents, convert various page table functions to use ptdescs. late_alloc() also uses the __get_free_pages() helper function. Convert this to use pagetable_alloc() and ptdesc_address() instead to help standardize page tables further. Signed-off-by: Vishal Moola (Oracle) Acked-by: Mike Rapoport (IBM) --- arch/arm/include/asm/tlb.h | 12 +++++++----- arch/arm/mm/mmu.c | 7 ++++--- 2 files changed, 11 insertions(+), 8 deletions(-) diff --git a/arch/arm/include/asm/tlb.h b/arch/arm/include/asm/tlb.h index b8cbe03ad260..f40d06ad5d2a 100644 --- a/arch/arm/include/asm/tlb.h +++ b/arch/arm/include/asm/tlb.h @@ -39,7 +39,9 @@ static inline void __tlb_remove_table(void *_table) static inline void __pte_free_tlb(struct mmu_gather *tlb, pgtable_t pte, unsigned long addr) { - pgtable_pte_page_dtor(pte); + struct ptdesc *ptdesc = page_ptdesc(pte); + + pagetable_pte_dtor(ptdesc); #ifndef CONFIG_ARM_LPAE /* @@ -50,17 +52,17 @@ __pte_free_tlb(struct mmu_gather *tlb, pgtable_t pte, unsigned long addr) __tlb_adjust_range(tlb, addr - PAGE_SIZE, 2 * PAGE_SIZE); #endif - tlb_remove_table(tlb, pte); + tlb_remove_ptdesc(tlb, ptdesc); } static inline void __pmd_free_tlb(struct mmu_gather *tlb, pmd_t *pmdp, unsigned long addr) { #ifdef CONFIG_ARM_LPAE - struct page *page = virt_to_page(pmdp); + struct ptdesc *ptdesc = virt_to_ptdesc(pmdp); - pgtable_pmd_page_dtor(page); - tlb_remove_table(tlb, page); + pagetable_pmd_dtor(ptdesc); + tlb_remove_ptdesc(tlb, ptdesc); #endif } diff --git a/arch/arm/mm/mmu.c b/arch/arm/mm/mmu.c index 13fc4bb5f792..fdeaee30d167 100644 --- a/arch/arm/mm/mmu.c +++ b/arch/arm/mm/mmu.c @@ -737,11 +737,12 @@ static void __init *early_alloc(unsigned long sz) static void *__init late_alloc(unsigned long sz) { - void *ptr = (void *)__get_free_pages(GFP_PGTABLE_KERNEL, get_order(sz)); + void *ptdesc = pagetable_alloc(GFP_PGTABLE_KERNEL & ~__GFP_HIGHMEM, + get_order(sz)); - if (!ptr || !pgtable_pte_page_ctor(virt_to_page(ptr))) + if (!ptdesc || !pagetable_pte_ctor(ptdesc)) BUG(); - return ptr; + return ptdesc_to_virt(ptdesc); } static pte_t * __init arm_pte_alloc(pmd_t *pmd, unsigned long addr, -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 22 20:59:54 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 20:59:54 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554067.865125 (Exim 4.92) (envelope-from ) id 1qCRPG-0005ca-BN; Thu, 22 Jun 2023 20:59:54 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554067.865125; Thu, 22 Jun 2023 20:59:54 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCRPF-0005bb-S3; Thu, 22 Jun 2023 20:59:53 +0000 Received: by outflank-mailman (input) for mailman id 554067; Thu, 22 Jun 2023 20:59:52 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCROW-0006Mr-8s for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 20:59:08 +0000 Received: from mail-yb1-xb2e.google.com (mail-yb1-xb2e.google.com [2607:f8b0:4864:20::b2e]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 9fa28de1-113f-11ee-8611-37d641c3527e; Thu, 22 Jun 2023 22:59:06 +0200 (CEST) Received: by mail-yb1-xb2e.google.com with SMTP id 3f1490d57ef6-bfe6ea01ff5so2381186276.3 for ; Thu, 22 Jun 2023 13:59:06 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::36]) by smtp.googlemail.com with ESMTPSA id d18-20020a5b0c52000000b00bc501a1b062sm1684937ybr.42.2023.06.22.13.59.03 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 22 Jun 2023 13:59:04 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 9fa28de1-113f-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687467545; x=1690059545; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=UurGuuLzED1CKQ5+YtAa+uldlNlkULcrhOlEPtYgkts=; b=oQo8Ww3rkcQ6O4ERZYbbm7gIN+KUZJBSX76Jt+A0yqxzuaw5csFJ7AbMPXoNar1y+V tZQraeqybmf35Qo5xoKl1awKHEBN/Nxr+iHHL+iOhynJPYAD9oID72CJXajJ9Jf7DkVt j26rlavSXJqsTv4JH9m0aLFnC9iK42GCsz7JUCHqTbiCOXGPKTX89JvhbmgJctDtXiKK TITKlfKlRxN76qLZH8F23nvkVHDCJrlE7Pe9NREUl+WlgOK0PObb86E20s865la+XsRl r0ny/7zkkdzJjzv/4f5M4RYeUYdlHDKmxWEXxa021UXcBJ73jIQME8NWHlpzSqT6M39a D91A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687467545; x=1690059545; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=UurGuuLzED1CKQ5+YtAa+uldlNlkULcrhOlEPtYgkts=; b=iwK2sNQU1xPrPaB2vpUm5ZI4+zGp7lmVOpe+nz5j9/5SEdg+Psql1IgXQ9ux+rgvWN lm5FSNS9TqqVyuAPbjdSUyxuifleOQ+sFaG1CHjEpdUx8NJcg5nCqnJbCrkfjxF1rRu3 AcC7OepRemXeuv2DdmxNm6IL9sj/mkk4gfXm8FYGrqCQoXnBvovCvn4m8GYzzW8A59pm QojQTKmqRgTX2QS2AJlshU9fikIRXwOnWVM1og7Apv1az+GbkJVGpJXORl1RzoGC965b 8pTLSgLuBuC6QQUgkz7eI/mcUiaAidhtIr632wsNp47NBprwlCxlPTuCcBaQ3uB98/qT Yr8Q== X-Gm-Message-State: AC+VfDyKlLdn7y8c3MFy9xhq6Vz7njd7nL1aPLMgAWwr1dx5kZSYYeLj GoEQmdEOykK7znX3fWWzrjQ= X-Google-Smtp-Source: ACHHUZ5/16pTE8w+KmQXtTEHVbvOJ9pX8CyeEgbjUI2ZBq46DEtB7j98e4dbCDGlFjYL7Uz7mrOclw== X-Received: by 2002:a25:d707:0:b0:bca:9c66:e53b with SMTP id o7-20020a25d707000000b00bca9c66e53bmr16719019ybg.14.1687467545228; Thu, 22 Jun 2023 13:59:05 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" , Mike Rapoport Subject: [PATCH v5 33/33] mm: Remove pgtable_{pmd, pte}_page_{ctor, dtor}() wrappers Date: Thu, 22 Jun 2023 13:57:45 -0700 Message-Id: <20230622205745.79707-34-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230622205745.79707-1-vishal.moola@gmail.com> References: <20230622205745.79707-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit These functions are no longer necessary. Remove them and cleanup Documentation referencing them. Signed-off-by: Vishal Moola (Oracle) Acked-by: Mike Rapoport (IBM) --- Documentation/mm/split_page_table_lock.rst | 12 +++++------ .../zh_CN/mm/split_page_table_lock.rst | 14 ++++++------- include/linux/mm.h | 20 ------------------- 3 files changed, 13 insertions(+), 33 deletions(-) diff --git a/Documentation/mm/split_page_table_lock.rst b/Documentation/mm/split_page_table_lock.rst index a834fad9de12..e4f6972eb6c0 100644 --- a/Documentation/mm/split_page_table_lock.rst +++ b/Documentation/mm/split_page_table_lock.rst @@ -58,7 +58,7 @@ Support of split page table lock by an architecture =================================================== There's no need in special enabling of PTE split page table lock: everything -required is done by pgtable_pte_page_ctor() and pgtable_pte_page_dtor(), which +required is done by pagetable_pte_ctor() and pagetable_pte_dtor(), which must be called on PTE table allocation / freeing. Make sure the architecture doesn't use slab allocator for page table @@ -68,8 +68,8 @@ This field shares storage with page->ptl. PMD split lock only makes sense if you have more than two page table levels. -PMD split lock enabling requires pgtable_pmd_page_ctor() call on PMD table -allocation and pgtable_pmd_page_dtor() on freeing. +PMD split lock enabling requires pagetable_pmd_ctor() call on PMD table +allocation and pagetable_pmd_dtor() on freeing. Allocation usually happens in pmd_alloc_one(), freeing in pmd_free() and pmd_free_tlb(), but make sure you cover all PMD table allocation / freeing @@ -77,7 +77,7 @@ paths: i.e X86_PAE preallocate few PMDs on pgd_alloc(). With everything in place you can set CONFIG_ARCH_ENABLE_SPLIT_PMD_PTLOCK. -NOTE: pgtable_pte_page_ctor() and pgtable_pmd_page_ctor() can fail -- it must +NOTE: pagetable_pte_ctor() and pagetable_pmd_ctor() can fail -- it must be handled properly. page->ptl @@ -97,7 +97,7 @@ trick: split lock with enabled DEBUG_SPINLOCK or DEBUG_LOCK_ALLOC, but costs one more cache line for indirect access; -The spinlock_t allocated in pgtable_pte_page_ctor() for PTE table and in -pgtable_pmd_page_ctor() for PMD table. +The spinlock_t allocated in pagetable_pte_ctor() for PTE table and in +pagetable_pmd_ctor() for PMD table. Please, never access page->ptl directly -- use appropriate helper. diff --git a/Documentation/translations/zh_CN/mm/split_page_table_lock.rst b/Documentation/translations/zh_CN/mm/split_page_table_lock.rst index 4fb7aa666037..a2c288670a24 100644 --- a/Documentation/translations/zh_CN/mm/split_page_table_lock.rst +++ b/Documentation/translations/zh_CN/mm/split_page_table_lock.rst @@ -56,16 +56,16 @@ Hugetlb特定的辅助函数: 架构对分页表锁的支持 ==================== -没有必要特别启用PTE分页表锁:所有需要的东西都由pgtable_pte_page_ctor() -和pgtable_pte_page_dtor()完成,它们必须在PTE表分配/释放时被调用。 +没有必要特别启用PTE分页表锁:所有需要的东西都由pagetable_pte_ctor() +和pagetable_pte_dtor()完成,它们必须在PTE表分配/释放时被调用。 确保架构不使用slab分配器来分配页表:slab使用page->slab_cache来分配其页 面。这个区域与page->ptl共享存储。 PMD分页锁只有在你有两个以上的页表级别时才有意义。 -启用PMD分页锁需要在PMD表分配时调用pgtable_pmd_page_ctor(),在释放时调 -用pgtable_pmd_page_dtor()。 +启用PMD分页锁需要在PMD表分配时调用pagetable_pmd_ctor(),在释放时调 +用pagetable_pmd_dtor()。 分配通常发生在pmd_alloc_one()中,释放发生在pmd_free()和pmd_free_tlb() 中,但要确保覆盖所有的PMD表分配/释放路径:即X86_PAE在pgd_alloc()中预先 @@ -73,7 +73,7 @@ PMD分页锁只有在你有两个以上的页表级别时才有意义。 一切就绪后,你可以设置CONFIG_ARCH_ENABLE_SPLIT_PMD_PTLOCK。 -注意:pgtable_pte_page_ctor()和pgtable_pmd_page_ctor()可能失败--必 +注意:pagetable_pte_ctor()和pagetable_pmd_ctor()可能失败--必 须正确处理。 page->ptl @@ -90,7 +90,7 @@ page->ptl用于访问分割页表锁,其中'page'是包含该表的页面struc 的指针并动态分配它。这允许在启用DEBUG_SPINLOCK或DEBUG_LOCK_ALLOC的 情况下使用分页锁,但由于间接访问而多花了一个缓存行。 -PTE表的spinlock_t分配在pgtable_pte_page_ctor()中,PMD表的spinlock_t -分配在pgtable_pmd_page_ctor()中。 +PTE表的spinlock_t分配在pagetable_pte_ctor()中,PMD表的spinlock_t +分配在pagetable_pmd_ctor()中。 请不要直接访问page->ptl - -使用适当的辅助函数。 diff --git a/include/linux/mm.h b/include/linux/mm.h index 0e4d5f6d10e5..dc0f19f35424 100644 --- a/include/linux/mm.h +++ b/include/linux/mm.h @@ -2873,11 +2873,6 @@ static inline bool pagetable_pte_ctor(struct ptdesc *ptdesc) return true; } -static inline bool pgtable_pte_page_ctor(struct page *page) -{ - return pagetable_pte_ctor(page_ptdesc(page)); -} - static inline void pagetable_pte_dtor(struct ptdesc *ptdesc) { struct folio *folio = ptdesc_folio(ptdesc); @@ -2887,11 +2882,6 @@ static inline void pagetable_pte_dtor(struct ptdesc *ptdesc) lruvec_stat_sub_folio(folio, NR_PAGETABLE); } -static inline void pgtable_pte_page_dtor(struct page *page) -{ - pagetable_pte_dtor(page_ptdesc(page)); -} - pte_t *__pte_offset_map(pmd_t *pmd, unsigned long addr, pmd_t *pmdvalp); static inline pte_t *pte_offset_map(pmd_t *pmd, unsigned long addr) { @@ -2993,11 +2983,6 @@ static inline bool pagetable_pmd_ctor(struct ptdesc *ptdesc) return true; } -static inline bool pgtable_pmd_page_ctor(struct page *page) -{ - return pagetable_pmd_ctor(page_ptdesc(page)); -} - static inline void pagetable_pmd_dtor(struct ptdesc *ptdesc) { struct folio *folio = ptdesc_folio(ptdesc); @@ -3007,11 +2992,6 @@ static inline void pagetable_pmd_dtor(struct ptdesc *ptdesc) lruvec_stat_sub_folio(folio, NR_PAGETABLE); } -static inline void pgtable_pmd_page_dtor(struct page *page) -{ - pagetable_pmd_dtor(page_ptdesc(page)); -} - /* * No scalability reason to split PUD locks yet, but follow the same pattern * as the PMD locks to make it easier if we decide to. The VM should not be -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 22 20:59:56 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 20:59:56 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554078.865138 (Exim 4.92) (envelope-from ) id 1qCRPI-0006Gh-Mz; Thu, 22 Jun 2023 20:59:56 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554078.865138; Thu, 22 Jun 2023 20:59:56 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCRPI-0006FX-Bg; Thu, 22 Jun 2023 20:59:56 +0000 Received: by outflank-mailman (input) for mailman id 554078; Thu, 22 Jun 2023 20:59:53 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCRNt-0006Mq-L8 for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 20:58:29 +0000 Received: from mail-yb1-xb2a.google.com (mail-yb1-xb2a.google.com [2607:f8b0:4864:20::b2a]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 8924e458-113f-11ee-b237-6b7b168915f2; Thu, 22 Jun 2023 22:58:28 +0200 (CEST) Received: by mail-yb1-xb2a.google.com with SMTP id 3f1490d57ef6-be30cbe88b3so7455180276.1 for ; Thu, 22 Jun 2023 13:58:28 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::36]) by smtp.googlemail.com with ESMTPSA id d18-20020a5b0c52000000b00bc501a1b062sm1684937ybr.42.2023.06.22.13.58.25 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 22 Jun 2023 13:58:26 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 8924e458-113f-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687467507; x=1690059507; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=xnT0OuFQgSMPBMpNBMcjRtrAID2j2J/z+99kPRjsdFc=; b=CFniQwJChRQH7765fapkmXvTYUWljBI3etiFy/IUhcwGjAj7vPiGkSjmRv5QF/IAka OSzIYnhvidG2W30wNEZ5XX0rdt2N1cNUzZo7yyO/i1w1j5CkZxRPEL1+1kqS1DupiuCD of7w7SOQo1WDGv4IZmgu6M0YvoyK0T9wAWj4Y6yaoya2aEfQEApVJBV1uDc8gK0oZSL9 nB303dtPPvy7hMOiqU4AC+LnTNiE4NAFn6xNl54ljOLzRvtWHhrA+r1wUq5YflvTwzTI d63+WU9pml8sdEvvWVMLpUd3CQwrXwlZliNmYoxjyDkL0CHEH8mnboeDt3Vd1ElvVRDA F8Vg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687467507; x=1690059507; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=xnT0OuFQgSMPBMpNBMcjRtrAID2j2J/z+99kPRjsdFc=; b=DtdIZ6KrAgaVTnqQEiZhLhawyGxUl3gOzoFUGEn7M4vDDgKekUGAsbd/9LbNa8FX3Z a2PYz9+4uPfLZVeyFvngBRDXONokfnH4FLpWqFb1KX/nC53y+t1V+u2dwql7bZMqUoWW KBhjDPPWdDYzeESU5ZCP/6Wvmc/BrYnD4Esh51TfUMuI+wJNny9q6fE2LyKpGsILn0sv lAfx/SBBVae6ctRSnf2H2PBc1klM5/FTWKk2cJ3nggQ2kop4rzgwwjc5ftnLzogAQIVI Y9bnXYY3sfLmrqA9dyopHnLMhVQ4nS74yWDur5F4/xWQ7VQcxHfGXzMqsOA7GjwNDJIG b98w== X-Gm-Message-State: AC+VfDyXQPpf/BgGHTlqgM2pvpuqFp3z92zE3XPa/Xow6o6IITgkGHhJ eReFSsIfKerFe/QfMC7o7cE= X-Google-Smtp-Source: ACHHUZ6rxA6TM0NHi6rOKcExqb94O0u6Ux1uxCup2OxBwQlj09S9/pS7FVr6lZVUqccEnVqh/TxF7g== X-Received: by 2002:a25:495:0:b0:bc8:2158:63cf with SMTP id 143-20020a250495000000b00bc8215863cfmr14696422ybe.23.1687467506992; Thu, 22 Jun 2023 13:58:26 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" , David Hildenbrand , Claudio Imbrenda , Mike Rapoport Subject: [PATCH v5 15/33] s390: Convert various gmap functions to use ptdescs Date: Thu, 22 Jun 2023 13:57:27 -0700 Message-Id: <20230622205745.79707-16-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230622205745.79707-1-vishal.moola@gmail.com> References: <20230622205745.79707-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit In order to split struct ptdesc from struct page, convert various functions to use ptdescs. Some of the functions use the *get*page*() helper functions. Convert these to use pagetable_alloc() and ptdesc_address() instead to help standardize page tables further. Since we're now using pagetable_free(), set _pt_s390_gaddr (which aliases with page->mapping) to NULL in that function instead. Signed-off-by: Vishal Moola (Oracle) Acked-by: Mike Rapoport (IBM) --- arch/s390/mm/gmap.c | 217 +++++++++++++++++++++++--------------------- include/linux/mm.h | 3 + 2 files changed, 117 insertions(+), 103 deletions(-) diff --git a/arch/s390/mm/gmap.c b/arch/s390/mm/gmap.c index beb4804d9ca8..8dbe0fdc0e44 100644 --- a/arch/s390/mm/gmap.c +++ b/arch/s390/mm/gmap.c @@ -34,7 +34,7 @@ static struct gmap *gmap_alloc(unsigned long limit) { struct gmap *gmap; - struct page *page; + struct ptdesc *ptdesc; unsigned long *table; unsigned long etype, atype; @@ -67,12 +67,12 @@ static struct gmap *gmap_alloc(unsigned long limit) spin_lock_init(&gmap->guest_table_lock); spin_lock_init(&gmap->shadow_lock); refcount_set(&gmap->ref_count, 1); - page = alloc_pages(GFP_KERNEL_ACCOUNT, CRST_ALLOC_ORDER); - if (!page) + ptdesc = pagetable_alloc(GFP_KERNEL_ACCOUNT, CRST_ALLOC_ORDER); + if (!ptdesc) goto out_free; - page->_pt_s390_gaddr = 0; - list_add(&page->lru, &gmap->crst_list); - table = page_to_virt(page); + ptdesc->_pt_s390_gaddr = 0; + list_add(&ptdesc->pt_list, &gmap->crst_list); + table = ptdesc_to_virt(ptdesc); crst_table_init(table, etype); gmap->table = table; gmap->asce = atype | _ASCE_TABLE_LENGTH | @@ -181,25 +181,23 @@ static void gmap_rmap_radix_tree_free(struct radix_tree_root *root) */ static void gmap_free(struct gmap *gmap) { - struct page *page, *next; + struct ptdesc *ptdesc, *next; /* Flush tlb of all gmaps (if not already done for shadows) */ if (!(gmap_is_shadow(gmap) && gmap->removed)) gmap_flush_tlb(gmap); /* Free all segment & region tables. */ - list_for_each_entry_safe(page, next, &gmap->crst_list, lru) { - page->_pt_s390_gaddr = 0; - __free_pages(page, CRST_ALLOC_ORDER); + list_for_each_entry_safe(ptdesc, next, &gmap->crst_list, pt_list) { + pagetable_free(ptdesc); } gmap_radix_tree_free(&gmap->guest_to_host); gmap_radix_tree_free(&gmap->host_to_guest); /* Free additional data for a shadow gmap */ if (gmap_is_shadow(gmap)) { - /* Free all page tables. */ - list_for_each_entry_safe(page, next, &gmap->pt_list, lru) { - page->_pt_s390_gaddr = 0; - page_table_free_pgste(page); + /* Free all ptdesc tables. */ + list_for_each_entry_safe(ptdesc, next, &gmap->pt_list, pt_list) { + page_table_free_pgste(ptdesc_page(ptdesc)); } gmap_rmap_radix_tree_free(&gmap->host_to_rmap); /* Release reference to the parent */ @@ -308,28 +306,27 @@ EXPORT_SYMBOL_GPL(gmap_get_enabled); static int gmap_alloc_table(struct gmap *gmap, unsigned long *table, unsigned long init, unsigned long gaddr) { - struct page *page; + struct ptdesc *ptdesc; unsigned long *new; /* since we dont free the gmap table until gmap_free we can unlock */ - page = alloc_pages(GFP_KERNEL_ACCOUNT, CRST_ALLOC_ORDER); - if (!page) + ptdesc = pagetable_alloc(GFP_KERNEL_ACCOUNT, CRST_ALLOC_ORDER); + if (!ptdesc) return -ENOMEM; - new = page_to_virt(page); + new = ptdesc_to_virt(ptdesc); crst_table_init(new, init); spin_lock(&gmap->guest_table_lock); if (*table & _REGION_ENTRY_INVALID) { - list_add(&page->lru, &gmap->crst_list); + list_add(&ptdesc->pt_list, &gmap->crst_list); *table = __pa(new) | _REGION_ENTRY_LENGTH | (*table & _REGION_ENTRY_TYPE_MASK); - page->_pt_s390_gaddr = gaddr; - page = NULL; + ptdesc->_pt_s390_gaddr = gaddr; + ptdesc = NULL; } spin_unlock(&gmap->guest_table_lock); - if (page) { - page->_pt_s390_gaddr = 0; - __free_pages(page, CRST_ALLOC_ORDER); - } + if (ptdesc) + pagetable_free(ptdesc); + return 0; } @@ -341,15 +338,15 @@ static int gmap_alloc_table(struct gmap *gmap, unsigned long *table, */ static unsigned long __gmap_segment_gaddr(unsigned long *entry) { - struct page *page; + struct ptdesc *ptdesc; unsigned long offset, mask; offset = (unsigned long) entry / sizeof(unsigned long); offset = (offset & (PTRS_PER_PMD - 1)) * PMD_SIZE; mask = ~(PTRS_PER_PMD * sizeof(pmd_t) - 1); - page = virt_to_page((void *)((unsigned long) entry & mask)); + ptdesc = virt_to_ptdesc((void *)((unsigned long) entry & mask)); - return page->_pt_s390_gaddr + offset; + return ptdesc->_pt_s390_gaddr + offset; } /** @@ -1345,6 +1342,7 @@ static void gmap_unshadow_pgt(struct gmap *sg, unsigned long raddr) unsigned long *ste; phys_addr_t sto, pgt; struct page *page; + struct ptdesc *ptdesc; BUG_ON(!gmap_is_shadow(sg)); ste = gmap_table_walk(sg, raddr, 1); /* get segment pointer */ @@ -1358,9 +1356,10 @@ static void gmap_unshadow_pgt(struct gmap *sg, unsigned long raddr) __gmap_unshadow_pgt(sg, raddr, __va(pgt)); /* Free page table */ page = phys_to_page(pgt); - list_del(&page->lru); - page->_pt_s390_gaddr = 0; - page_table_free_pgste(page); + + ptdesc = page_ptdesc(page); + list_del(&ptdesc->pt_list); + page_table_free_pgste(ptdesc_page(ptdesc)); } /** @@ -1374,9 +1373,10 @@ static void gmap_unshadow_pgt(struct gmap *sg, unsigned long raddr) static void __gmap_unshadow_sgt(struct gmap *sg, unsigned long raddr, unsigned long *sgt) { - struct page *page; phys_addr_t pgt; int i; + struct page *page; + struct ptdesc *ptdesc; BUG_ON(!gmap_is_shadow(sg)); for (i = 0; i < _CRST_ENTRIES; i++, raddr += _SEGMENT_SIZE) { @@ -1387,9 +1387,10 @@ static void __gmap_unshadow_sgt(struct gmap *sg, unsigned long raddr, __gmap_unshadow_pgt(sg, raddr, __va(pgt)); /* Free page table */ page = phys_to_page(pgt); - list_del(&page->lru); - page->_pt_s390_gaddr = 0; - page_table_free_pgste(page); + + ptdesc = page_ptdesc(page); + list_del(&ptdesc->pt_list); + page_table_free_pgste(ptdesc_page(ptdesc)); } } @@ -1405,6 +1406,7 @@ static void gmap_unshadow_sgt(struct gmap *sg, unsigned long raddr) unsigned long r3o, *r3e; phys_addr_t sgt; struct page *page; + struct ptdesc *ptdesc; BUG_ON(!gmap_is_shadow(sg)); r3e = gmap_table_walk(sg, raddr, 2); /* get region-3 pointer */ @@ -1418,9 +1420,10 @@ static void gmap_unshadow_sgt(struct gmap *sg, unsigned long raddr) __gmap_unshadow_sgt(sg, raddr, __va(sgt)); /* Free segment table */ page = phys_to_page(sgt); - list_del(&page->lru); - page->_pt_s390_gaddr = 0; - __free_pages(page, CRST_ALLOC_ORDER); + + ptdesc = page_ptdesc(page); + list_del(&ptdesc->pt_list); + pagetable_free(ptdesc); } /** @@ -1434,9 +1437,10 @@ static void gmap_unshadow_sgt(struct gmap *sg, unsigned long raddr) static void __gmap_unshadow_r3t(struct gmap *sg, unsigned long raddr, unsigned long *r3t) { - struct page *page; phys_addr_t sgt; int i; + struct page *page; + struct ptdesc *ptdesc; BUG_ON(!gmap_is_shadow(sg)); for (i = 0; i < _CRST_ENTRIES; i++, raddr += _REGION3_SIZE) { @@ -1447,9 +1451,10 @@ static void __gmap_unshadow_r3t(struct gmap *sg, unsigned long raddr, __gmap_unshadow_sgt(sg, raddr, __va(sgt)); /* Free segment table */ page = phys_to_page(sgt); - list_del(&page->lru); - page->_pt_s390_gaddr = 0; - __free_pages(page, CRST_ALLOC_ORDER); + + ptdesc = page_ptdesc(page); + list_del(&ptdesc->pt_list); + pagetable_free(ptdesc); } } @@ -1465,6 +1470,7 @@ static void gmap_unshadow_r3t(struct gmap *sg, unsigned long raddr) unsigned long r2o, *r2e; phys_addr_t r3t; struct page *page; + struct ptdesc *ptdesc; BUG_ON(!gmap_is_shadow(sg)); r2e = gmap_table_walk(sg, raddr, 3); /* get region-2 pointer */ @@ -1478,9 +1484,10 @@ static void gmap_unshadow_r3t(struct gmap *sg, unsigned long raddr) __gmap_unshadow_r3t(sg, raddr, __va(r3t)); /* Free region 3 table */ page = phys_to_page(r3t); - list_del(&page->lru); - page->_pt_s390_gaddr = 0; - __free_pages(page, CRST_ALLOC_ORDER); + + ptdesc = page_ptdesc(page); + list_del(&ptdesc->pt_list); + pagetable_free(ptdesc); } /** @@ -1495,8 +1502,9 @@ static void __gmap_unshadow_r2t(struct gmap *sg, unsigned long raddr, unsigned long *r2t) { phys_addr_t r3t; - struct page *page; int i; + struct page *page; + struct ptdesc *ptdesc; BUG_ON(!gmap_is_shadow(sg)); for (i = 0; i < _CRST_ENTRIES; i++, raddr += _REGION2_SIZE) { @@ -1507,9 +1515,10 @@ static void __gmap_unshadow_r2t(struct gmap *sg, unsigned long raddr, __gmap_unshadow_r3t(sg, raddr, __va(r3t)); /* Free region 3 table */ page = phys_to_page(r3t); - list_del(&page->lru); - page->_pt_s390_gaddr = 0; - __free_pages(page, CRST_ALLOC_ORDER); + + ptdesc = page_ptdesc(page); + list_del(&ptdesc->pt_list); + pagetable_free(ptdesc); } } @@ -1525,6 +1534,7 @@ static void gmap_unshadow_r2t(struct gmap *sg, unsigned long raddr) unsigned long r1o, *r1e; struct page *page; phys_addr_t r2t; + struct ptdesc *ptdesc; BUG_ON(!gmap_is_shadow(sg)); r1e = gmap_table_walk(sg, raddr, 4); /* get region-1 pointer */ @@ -1538,9 +1548,10 @@ static void gmap_unshadow_r2t(struct gmap *sg, unsigned long raddr) __gmap_unshadow_r2t(sg, raddr, __va(r2t)); /* Free region 2 table */ page = phys_to_page(r2t); - list_del(&page->lru); - page->_pt_s390_gaddr = 0; - __free_pages(page, CRST_ALLOC_ORDER); + + ptdesc = page_ptdesc(page); + list_del(&ptdesc->pt_list); + pagetable_free(ptdesc); } /** @@ -1558,6 +1569,7 @@ static void __gmap_unshadow_r1t(struct gmap *sg, unsigned long raddr, struct page *page; phys_addr_t r2t; int i; + struct ptdesc *ptdesc; BUG_ON(!gmap_is_shadow(sg)); asce = __pa(r1t) | _ASCE_TYPE_REGION1; @@ -1571,9 +1583,10 @@ static void __gmap_unshadow_r1t(struct gmap *sg, unsigned long raddr, r1t[i] = _REGION1_ENTRY_EMPTY; /* Free region 2 table */ page = phys_to_page(r2t); - list_del(&page->lru); - page->_pt_s390_gaddr = 0; - __free_pages(page, CRST_ALLOC_ORDER); + + ptdesc = page_ptdesc(page); + list_del(&ptdesc->pt_list); + pagetable_free(ptdesc); } } @@ -1770,18 +1783,18 @@ int gmap_shadow_r2t(struct gmap *sg, unsigned long saddr, unsigned long r2t, unsigned long raddr, origin, offset, len; unsigned long *table; phys_addr_t s_r2t; - struct page *page; + struct ptdesc *ptdesc; int rc; BUG_ON(!gmap_is_shadow(sg)); /* Allocate a shadow region second table */ - page = alloc_pages(GFP_KERNEL_ACCOUNT, CRST_ALLOC_ORDER); - if (!page) + ptdesc = pagetable_alloc(GFP_KERNEL_ACCOUNT, CRST_ALLOC_ORDER); + if (!ptdesc) return -ENOMEM; - page->_pt_s390_gaddr = r2t & _REGION_ENTRY_ORIGIN; + ptdesc->_pt_s390_gaddr = r2t & _REGION_ENTRY_ORIGIN; if (fake) - page->_pt_s390_gaddr |= GMAP_SHADOW_FAKE_TABLE; - s_r2t = page_to_phys(page); + ptdesc->_pt_s390_gaddr |= GMAP_SHADOW_FAKE_TABLE; + s_r2t = page_to_phys(ptdesc_page(ptdesc)); /* Install shadow region second table */ spin_lock(&sg->guest_table_lock); table = gmap_table_walk(sg, saddr, 4); /* get region-1 pointer */ @@ -1802,7 +1815,7 @@ int gmap_shadow_r2t(struct gmap *sg, unsigned long saddr, unsigned long r2t, _REGION_ENTRY_TYPE_R1 | _REGION_ENTRY_INVALID; if (sg->edat_level >= 1) *table |= (r2t & _REGION_ENTRY_PROTECT); - list_add(&page->lru, &sg->crst_list); + list_add(&ptdesc->pt_list, &sg->crst_list); if (fake) { /* nothing to protect for fake tables */ *table &= ~_REGION_ENTRY_INVALID; @@ -1830,8 +1843,7 @@ int gmap_shadow_r2t(struct gmap *sg, unsigned long saddr, unsigned long r2t, return rc; out_free: spin_unlock(&sg->guest_table_lock); - page->_pt_s390_gaddr = 0; - __free_pages(page, CRST_ALLOC_ORDER); + pagetable_free(ptdesc); return rc; } EXPORT_SYMBOL_GPL(gmap_shadow_r2t); @@ -1855,18 +1867,18 @@ int gmap_shadow_r3t(struct gmap *sg, unsigned long saddr, unsigned long r3t, unsigned long raddr, origin, offset, len; unsigned long *table; phys_addr_t s_r3t; - struct page *page; + struct ptdesc *ptdesc; int rc; BUG_ON(!gmap_is_shadow(sg)); /* Allocate a shadow region second table */ - page = alloc_pages(GFP_KERNEL_ACCOUNT, CRST_ALLOC_ORDER); - if (!page) + ptdesc = pagetable_alloc(GFP_KERNEL_ACCOUNT, CRST_ALLOC_ORDER); + if (!ptdesc) return -ENOMEM; - page->_pt_s390_gaddr = r3t & _REGION_ENTRY_ORIGIN; + ptdesc->_pt_s390_gaddr = r3t & _REGION_ENTRY_ORIGIN; if (fake) - page->_pt_s390_gaddr |= GMAP_SHADOW_FAKE_TABLE; - s_r3t = page_to_phys(page); + ptdesc->_pt_s390_gaddr |= GMAP_SHADOW_FAKE_TABLE; + s_r3t = page_to_phys(ptdesc_page(ptdesc)); /* Install shadow region second table */ spin_lock(&sg->guest_table_lock); table = gmap_table_walk(sg, saddr, 3); /* get region-2 pointer */ @@ -1887,7 +1899,7 @@ int gmap_shadow_r3t(struct gmap *sg, unsigned long saddr, unsigned long r3t, _REGION_ENTRY_TYPE_R2 | _REGION_ENTRY_INVALID; if (sg->edat_level >= 1) *table |= (r3t & _REGION_ENTRY_PROTECT); - list_add(&page->lru, &sg->crst_list); + list_add(&ptdesc->pt_list, &sg->crst_list); if (fake) { /* nothing to protect for fake tables */ *table &= ~_REGION_ENTRY_INVALID; @@ -1915,8 +1927,7 @@ int gmap_shadow_r3t(struct gmap *sg, unsigned long saddr, unsigned long r3t, return rc; out_free: spin_unlock(&sg->guest_table_lock); - page->_pt_s390_gaddr = 0; - __free_pages(page, CRST_ALLOC_ORDER); + pagetable_free(ptdesc); return rc; } EXPORT_SYMBOL_GPL(gmap_shadow_r3t); @@ -1940,18 +1951,18 @@ int gmap_shadow_sgt(struct gmap *sg, unsigned long saddr, unsigned long sgt, unsigned long raddr, origin, offset, len; unsigned long *table; phys_addr_t s_sgt; - struct page *page; + struct ptdesc *ptdesc; int rc; BUG_ON(!gmap_is_shadow(sg) || (sgt & _REGION3_ENTRY_LARGE)); /* Allocate a shadow segment table */ - page = alloc_pages(GFP_KERNEL_ACCOUNT, CRST_ALLOC_ORDER); - if (!page) + ptdesc = pagetable_alloc(GFP_KERNEL_ACCOUNT, CRST_ALLOC_ORDER); + if (!ptdesc) return -ENOMEM; - page->_pt_s390_gaddr = sgt & _REGION_ENTRY_ORIGIN; + ptdesc->_pt_s390_gaddr = sgt & _REGION_ENTRY_ORIGIN; if (fake) - page->_pt_s390_gaddr |= GMAP_SHADOW_FAKE_TABLE; - s_sgt = page_to_phys(page); + ptdesc->_pt_s390_gaddr |= GMAP_SHADOW_FAKE_TABLE; + s_sgt = page_to_phys(ptdesc_page(ptdesc)); /* Install shadow region second table */ spin_lock(&sg->guest_table_lock); table = gmap_table_walk(sg, saddr, 2); /* get region-3 pointer */ @@ -1972,7 +1983,7 @@ int gmap_shadow_sgt(struct gmap *sg, unsigned long saddr, unsigned long sgt, _REGION_ENTRY_TYPE_R3 | _REGION_ENTRY_INVALID; if (sg->edat_level >= 1) *table |= sgt & _REGION_ENTRY_PROTECT; - list_add(&page->lru, &sg->crst_list); + list_add(&ptdesc->pt_list, &sg->crst_list); if (fake) { /* nothing to protect for fake tables */ *table &= ~_REGION_ENTRY_INVALID; @@ -2000,8 +2011,7 @@ int gmap_shadow_sgt(struct gmap *sg, unsigned long saddr, unsigned long sgt, return rc; out_free: spin_unlock(&sg->guest_table_lock); - page->_pt_s390_gaddr = 0; - __free_pages(page, CRST_ALLOC_ORDER); + pagetable_free(ptdesc); return rc; } EXPORT_SYMBOL_GPL(gmap_shadow_sgt); @@ -2024,8 +2034,9 @@ int gmap_shadow_pgt_lookup(struct gmap *sg, unsigned long saddr, int *fake) { unsigned long *table; - struct page *page; int rc; + struct page *page; + struct ptdesc *ptdesc; BUG_ON(!gmap_is_shadow(sg)); spin_lock(&sg->guest_table_lock); @@ -2033,9 +2044,10 @@ int gmap_shadow_pgt_lookup(struct gmap *sg, unsigned long saddr, if (table && !(*table & _SEGMENT_ENTRY_INVALID)) { /* Shadow page tables are full pages (pte+pgste) */ page = pfn_to_page(*table >> PAGE_SHIFT); - *pgt = page->_pt_s390_gaddr & ~GMAP_SHADOW_FAKE_TABLE; + ptdesc = page_ptdesc(page); + *pgt = ptdesc->_pt_s390_gaddr & ~GMAP_SHADOW_FAKE_TABLE; *dat_protection = !!(*table & _SEGMENT_ENTRY_PROTECT); - *fake = !!(page->_pt_s390_gaddr & GMAP_SHADOW_FAKE_TABLE); + *fake = !!(ptdesc->_pt_s390_gaddr & GMAP_SHADOW_FAKE_TABLE); rc = 0; } else { rc = -EAGAIN; @@ -2064,19 +2076,19 @@ int gmap_shadow_pgt(struct gmap *sg, unsigned long saddr, unsigned long pgt, { unsigned long raddr, origin; unsigned long *table; - struct page *page; + struct ptdesc *ptdesc; phys_addr_t s_pgt; int rc; BUG_ON(!gmap_is_shadow(sg) || (pgt & _SEGMENT_ENTRY_LARGE)); /* Allocate a shadow page table */ - page = page_table_alloc_pgste(sg->mm); - if (!page) + ptdesc = page_ptdesc(page_table_alloc_pgste(sg->mm)); + if (!ptdesc) return -ENOMEM; - page->_pt_s390_gaddr = pgt & _SEGMENT_ENTRY_ORIGIN; + ptdesc->_pt_s390_gaddr = pgt & _SEGMENT_ENTRY_ORIGIN; if (fake) - page->_pt_s390_gaddr |= GMAP_SHADOW_FAKE_TABLE; - s_pgt = page_to_phys(page); + ptdesc->_pt_s390_gaddr |= GMAP_SHADOW_FAKE_TABLE; + s_pgt = page_to_phys(ptdesc_page(ptdesc)); /* Install shadow page table */ spin_lock(&sg->guest_table_lock); table = gmap_table_walk(sg, saddr, 1); /* get segment pointer */ @@ -2094,7 +2106,7 @@ int gmap_shadow_pgt(struct gmap *sg, unsigned long saddr, unsigned long pgt, /* mark as invalid as long as the parent table is not protected */ *table = (unsigned long) s_pgt | _SEGMENT_ENTRY | (pgt & _SEGMENT_ENTRY_PROTECT) | _SEGMENT_ENTRY_INVALID; - list_add(&page->lru, &sg->pt_list); + list_add(&ptdesc->pt_list, &sg->pt_list); if (fake) { /* nothing to protect for fake tables */ *table &= ~_SEGMENT_ENTRY_INVALID; @@ -2120,8 +2132,7 @@ int gmap_shadow_pgt(struct gmap *sg, unsigned long saddr, unsigned long pgt, return rc; out_free: spin_unlock(&sg->guest_table_lock); - page->_pt_s390_gaddr = 0; - page_table_free_pgste(page); + page_table_free_pgste(ptdesc_page(ptdesc)); return rc; } @@ -2821,11 +2832,11 @@ EXPORT_SYMBOL_GPL(__s390_uv_destroy_range); */ void s390_unlist_old_asce(struct gmap *gmap) { - struct page *old; + struct ptdesc *old; - old = virt_to_page(gmap->table); + old = virt_to_ptdesc(gmap->table); spin_lock(&gmap->guest_table_lock); - list_del(&old->lru); + list_del(&old->pt_list); /* * Sometimes the topmost page might need to be "removed" multiple * times, for example if the VM is rebooted into secure mode several @@ -2840,7 +2851,7 @@ void s390_unlist_old_asce(struct gmap *gmap) * pointers, so list_del can work (and do nothing) without * dereferencing stale or invalid pointers. */ - INIT_LIST_HEAD(&old->lru); + INIT_LIST_HEAD(&old->pt_list); spin_unlock(&gmap->guest_table_lock); } EXPORT_SYMBOL_GPL(s390_unlist_old_asce); @@ -2861,7 +2872,7 @@ EXPORT_SYMBOL_GPL(s390_unlist_old_asce); int s390_replace_asce(struct gmap *gmap) { unsigned long asce; - struct page *page; + struct ptdesc *ptdesc; void *table; s390_unlist_old_asce(gmap); @@ -2870,10 +2881,10 @@ int s390_replace_asce(struct gmap *gmap) if ((gmap->asce & _ASCE_TYPE_MASK) == _ASCE_TYPE_SEGMENT) return -EINVAL; - page = alloc_pages(GFP_KERNEL_ACCOUNT, CRST_ALLOC_ORDER); - if (!page) + ptdesc = pagetable_alloc(GFP_KERNEL_ACCOUNT, CRST_ALLOC_ORDER); + if (!ptdesc) return -ENOMEM; - table = page_to_virt(page); + table = ptdesc_to_virt(ptdesc); memcpy(table, gmap->table, 1UL << (CRST_ALLOC_ORDER + PAGE_SHIFT)); /* @@ -2882,7 +2893,7 @@ int s390_replace_asce(struct gmap *gmap) * it will be freed when the VM is torn down. */ spin_lock(&gmap->guest_table_lock); - list_add(&page->lru, &gmap->crst_list); + list_add(&ptdesc->pt_list, &gmap->crst_list); spin_unlock(&gmap->guest_table_lock); /* Set new table origin while preserving existing ASCE control bits */ diff --git a/include/linux/mm.h b/include/linux/mm.h index 356e79984cf9..0e4d5f6d10e5 100644 --- a/include/linux/mm.h +++ b/include/linux/mm.h @@ -2792,6 +2792,9 @@ static inline void pagetable_free(struct ptdesc *pt) { struct page *page = ptdesc_page(pt); + /* set page->mapping to NULL since s390 gmap may have used it */ + pt->_pt_s390_gaddr = 0; + __free_pages(page, compound_order(page)); } -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 22 20:59:57 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 20:59:57 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554082.865142 (Exim 4.92) (envelope-from ) id 1qCRPJ-0006QI-F1; Thu, 22 Jun 2023 20:59:57 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554082.865142; Thu, 22 Jun 2023 20:59:57 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCRPJ-0006NQ-2J; Thu, 22 Jun 2023 20:59:57 +0000 Received: by outflank-mailman (input) for mailman id 554082; Thu, 22 Jun 2023 20:59:54 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCRO7-0006Mr-1J for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 20:58:43 +0000 Received: from mail-qk1-x735.google.com (mail-qk1-x735.google.com [2607:f8b0:4864:20::735]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 90309878-113f-11ee-8611-37d641c3527e; Thu, 22 Jun 2023 22:58:40 +0200 (CEST) Received: by mail-qk1-x735.google.com with SMTP id af79cd13be357-763a403642cso397121785a.3 for ; Thu, 22 Jun 2023 13:58:40 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::36]) by smtp.googlemail.com with ESMTPSA id d18-20020a5b0c52000000b00bc501a1b062sm1684937ybr.42.2023.06.22.13.58.37 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 22 Jun 2023 13:58:39 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 90309878-113f-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687467519; x=1690059519; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=/CuYJ7liBLmFxtlpmCAIL/qtog0vkZLk1dVk72P32nA=; b=BLHldLJJqXLpr8GAfoHi79v0sph0w6vN/SuJg9rBXjFWP7vHx2aGmaKx+f9hTGSIek StBGUDmlBLLgONen/ouQl25e+2Oh56rCFDCpMgFUEQOkNNTjcxLzf4Qpme/gK6EBGlEV uCg8bxuRbLrdLb22VpaeGfLLJwjdPeKaXRkjf+OAYYySwTDsQSI3SAbqeNXGAGljALee fcpdhclAhH7b5XES0gNbsvIBabKOZu9Ga/PYBeMD7nv08Dx2WAP2VJoEQ2QraVWTFN45 Wt/gJDKXfFk6SzeY9rfcZjQwBqyFukcCgFCguNA0XxXJLEGG2f88pPraJdoTC9IQG6ul Gb7g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687467519; x=1690059519; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=/CuYJ7liBLmFxtlpmCAIL/qtog0vkZLk1dVk72P32nA=; b=ZBoP34puflJTKEa4nXQzzSruUKjHhloFm9pGnKmL1ey+6nIGiKVmEzClLFRr1szGmb QDzaDpSHgubTQLhIOm67QRuRDwIiYEUuRdUb08y0W9Jccx8HSi+taHTx0lwNUv8ZArJ1 gDnEZyt09oU6tmc7LcYDcJJvl3X5UKqI2rXXY9gWurWUyueZbsAbQiYuKQH5hqvLUtFM YQHu32bqQgWowv30qAOG8SL+FBHtWQi4zdBRBcTScHOdYkS56uvPqpHvbjeHoD03P9MO orkaoKR//t22+H1GgXKSDxY6/d1x2Pth/UPfReqatXLHmcuT9NBhTWdV+20tg6F2L4FQ u+lg== X-Gm-Message-State: AC+VfDzRh4mqiBDEQLVPzF1A9PT8JL8/V0C9fjUhqFRNO6UslbvsZ5yp 5NsSfwEfp5+V3LgA70Wtcs0= X-Google-Smtp-Source: ACHHUZ4KRcOpBQjT0rqr9douhR2m3+ahnRE2h5Kbx3P/xMpW7X3b4hHm7K0gMXBTqIp4OFz3bRB+Jw== X-Received: by 2002:a05:620a:2cc1:b0:763:d981:d0a0 with SMTP id tc1-20020a05620a2cc100b00763d981d0a0mr4781474qkn.38.1687467519407; Thu, 22 Jun 2023 13:58:39 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" , Arnd Bergmann , Guo Ren , Mike Rapoport Subject: [PATCH v5 21/33] csky: Convert __pte_free_tlb() to use ptdescs Date: Thu, 22 Jun 2023 13:57:33 -0700 Message-Id: <20230622205745.79707-22-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230622205745.79707-1-vishal.moola@gmail.com> References: <20230622205745.79707-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Part of the conversions to replace pgtable constructor/destructors with ptdesc equivalents. Signed-off-by: Vishal Moola (Oracle) Acked-by: Guo Ren Acked-by: Mike Rapoport (IBM) --- arch/csky/include/asm/pgalloc.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/arch/csky/include/asm/pgalloc.h b/arch/csky/include/asm/pgalloc.h index 7d57e5da0914..9c84c9012e53 100644 --- a/arch/csky/include/asm/pgalloc.h +++ b/arch/csky/include/asm/pgalloc.h @@ -63,8 +63,8 @@ static inline pgd_t *pgd_alloc(struct mm_struct *mm) #define __pte_free_tlb(tlb, pte, address) \ do { \ - pgtable_pte_page_dtor(pte); \ - tlb_remove_page(tlb, pte); \ + pagetable_pte_dtor(page_ptdesc(pte)); \ + tlb_remove_page_ptdesc(tlb, page_ptdesc(pte)); \ } while (0) extern void pagetable_init(void); -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 22 20:59:59 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 20:59:59 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554091.865152 (Exim 4.92) (envelope-from ) id 1qCRPL-0006mc-Bd; Thu, 22 Jun 2023 20:59:59 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554091.865152; Thu, 22 Jun 2023 20:59:59 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCRPK-0006jV-H2; Thu, 22 Jun 2023 20:59:58 +0000 Received: by outflank-mailman (input) for mailman id 554091; Thu, 22 Jun 2023 20:59:56 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCRON-0006Mr-8h for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 20:58:59 +0000 Received: from mail-qk1-x734.google.com (mail-qk1-x734.google.com [2607:f8b0:4864:20::734]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 9a6cd7d6-113f-11ee-8611-37d641c3527e; Thu, 22 Jun 2023 22:58:57 +0200 (CEST) Received: by mail-qk1-x734.google.com with SMTP id af79cd13be357-76244657caeso578996285a.0 for ; Thu, 22 Jun 2023 13:58:57 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::36]) by smtp.googlemail.com with ESMTPSA id d18-20020a5b0c52000000b00bc501a1b062sm1684937ybr.42.2023.06.22.13.58.54 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 22 Jun 2023 13:58:56 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 9a6cd7d6-113f-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687467536; x=1690059536; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=NG13BwzmmAIpXpcduEwvRHFbS3iQhU18W2JpKLteVDY=; b=bI7F5jd8U0pmZoDCjrDdgbVISfzJlV2CUqYAibSVdHZ1OfrWu+Og6tKjTlcLZOSWFx f+VE9wjvDVgQCRSbWCOuVgmL30v4mkM+TeOOIsHTqjG+MpjulK0jZg8Kight1gJqL3EJ uelPGFi4K83pZcziIo91nBQ/Xb1a7VXoH5rDwteSo81u0B0E0AB9v0ZYlD/3EFJOnXaR LHJhz4j3eKvixa2uY3tcUc56YA7rm/NnSwLp194pufjXDiSsyScPz/VvaVef5k0S3cDu KA06LddfVd5MnGrcrI8kMVYj85Gsgf9HVHh6xfDQTCqtTE6ZYhHSEi5n5/a6D65T/xzp 1jRA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687467536; x=1690059536; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=NG13BwzmmAIpXpcduEwvRHFbS3iQhU18W2JpKLteVDY=; b=Ynb2FD5W0eyYYKGgBcPBA6frFaZZ8TlrY14sUkjEA65C5u20M76TfNqIqhPitLedAx PrwDQoGDW/eVyqxi5ND+TcovwKGjy0wvOLM7z+fMue9XKgniB0/+jHRoiIafQT7sZ6/m fbyOtin5mNDqyr634k294Le5xH64eaCXnk4mn16cS8CVtyGmHXVjk+U0AOY7X3zKlFke XS+3wshutt9XzGHWOatMYcbEFP+8BGsmgMxPAcntHkXvQZTW0M7nsaGf1ePmkhubSRX/ D7hoGjyEfBvy4tXrIXZw7/I89E8WsPJIjV5JlaErFIkoDB0HfilJeSb72JMHHzK59lxI U+wg== X-Gm-Message-State: AC+VfDxG+Srx0mfEIjXK2jb4KND1g0jQPz21Kra6LVIA/++AjEEXJrnC DohdXBaXB346DXOhHgo7KapnLe9b1c9JHg== X-Google-Smtp-Source: ACHHUZ6PptFNgBqCV4/Z0wvxz/N4kUJPrg8w5rC/9pu7Gesur9H1ncl000IRfhTCjlej4fSGBBngjg== X-Received: by 2002:a05:620a:c55:b0:75e:d11d:51ab with SMTP id u21-20020a05620a0c5500b0075ed11d51abmr23662404qki.9.1687467536577; Thu, 22 Jun 2023 13:58:56 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" , Yoshinori Sato , Geert Uytterhoeven , John Paul Adrian Glaubitz , Mike Rapoport Subject: [PATCH v5 29/33] sh: Convert pte_free_tlb() to use ptdescs Date: Thu, 22 Jun 2023 13:57:41 -0700 Message-Id: <20230622205745.79707-30-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230622205745.79707-1-vishal.moola@gmail.com> References: <20230622205745.79707-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Part of the conversions to replace pgtable constructor/destructors with ptdesc equivalents. Also cleans up some spacing issues. Signed-off-by: Vishal Moola (Oracle) Reviewed-by: Geert Uytterhoeven Acked-by: John Paul Adrian Glaubitz Acked-by: Mike Rapoport (IBM) --- arch/sh/include/asm/pgalloc.h | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/arch/sh/include/asm/pgalloc.h b/arch/sh/include/asm/pgalloc.h index a9e98233c4d4..5d8577ab1591 100644 --- a/arch/sh/include/asm/pgalloc.h +++ b/arch/sh/include/asm/pgalloc.h @@ -2,6 +2,7 @@ #ifndef __ASM_SH_PGALLOC_H #define __ASM_SH_PGALLOC_H +#include #include #define __HAVE_ARCH_PMD_ALLOC_ONE @@ -31,10 +32,10 @@ static inline void pmd_populate(struct mm_struct *mm, pmd_t *pmd, set_pmd(pmd, __pmd((unsigned long)page_address(pte))); } -#define __pte_free_tlb(tlb,pte,addr) \ -do { \ - pgtable_pte_page_dtor(pte); \ - tlb_remove_page((tlb), (pte)); \ +#define __pte_free_tlb(tlb, pte, addr) \ +do { \ + pagetable_pte_dtor(page_ptdesc(pte)); \ + tlb_remove_page_ptdesc((tlb), (page_ptdesc(pte))); \ } while (0) #endif /* __ASM_SH_PGALLOC_H */ -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 22 21:00:00 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 21:00:00 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554093.865161 (Exim 4.92) (envelope-from ) id 1qCRPM-00076J-JP; Thu, 22 Jun 2023 21:00:00 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554093.865161; Thu, 22 Jun 2023 21:00:00 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCRPL-0006xT-LQ; Thu, 22 Jun 2023 20:59:59 +0000 Received: by outflank-mailman (input) for mailman id 554093; Thu, 22 Jun 2023 20:59:57 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCRO3-0006Mq-CX for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 20:58:39 +0000 Received: from mail-yw1-x112c.google.com (mail-yw1-x112c.google.com [2607:f8b0:4864:20::112c]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 8cbe734b-113f-11ee-b237-6b7b168915f2; Thu, 22 Jun 2023 22:58:34 +0200 (CEST) Received: by mail-yw1-x112c.google.com with SMTP id 00721157ae682-5700b15c12fso80352907b3.1 for ; Thu, 22 Jun 2023 13:58:34 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::36]) by smtp.googlemail.com with ESMTPSA id d18-20020a5b0c52000000b00bc501a1b062sm1684937ybr.42.2023.06.22.13.58.31 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 22 Jun 2023 13:58:32 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 8cbe734b-113f-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687467513; x=1690059513; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=bBkB4loM/Mt006iaxsYk7j8UnaAx8a9/NTd5FkPootg=; b=U/YhvIXsF31wyJbA88HCf5OMe/axiBVQv7uWDZihpT9cKR36AFdZIT/f1WwSyzH4hI U+m0TMsQkM7UPfGfoV+xyDDbKx0sn4rR9VR2kSMc/ekrVux2GO+7Ic+8heNm0pglVtP2 t1UCU3KD4xkYuJJWuiek/S+QoJhBCWN2Lbj1sTa5MjcyOpNlRy9xyvjddQZRa5sN2lln b7+B68MAYuCOvXQ/r3g8J9suD6O3M2csXA9+uWAiXx9rhZT2WrY6ABRuoILJHZtSBr2y 1QWhI34MPT8UQnj1JkQ7Zf6eaKvwmPeBbVlvE52nu4uEPYScQoo9/k4f5Oli5uroIxml dglQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687467513; x=1690059513; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=bBkB4loM/Mt006iaxsYk7j8UnaAx8a9/NTd5FkPootg=; b=ZnfgOSvWFjqMVZeA5jg6naaIC+JHhmZwocoO71/jbKeTvaFg/tXhnXS2b2LQLd3WtE u0Tj34do9uP7DpXTrMaanh1HBZWTEkR01X+RE0ab607JymjJSpV0+ZWqmLevE/YIbc0c mT3EcYqJcKqJv14d/utbRdrAd7YLLicVSmiKsW4v5ZZOmpjvi+n71uRTr4lSykecbt75 eokxWHcSgWv70k+c7j4HMrysupZmqDiCZA1zHqnf1xNonp2qSSxkTKxX9x+jRJPuNmuJ z/MJi812iBulugHk0rDQ8ot3zOdu4hbDbVOY6FJuXJT1xgI/ujekDWBxCk1D0Sa9lrlN SycQ== X-Gm-Message-State: AC+VfDyLEz2czugdF+3UlXL7xuoz72G5mnWr3mDCHIOnl+JOuFDTVvTV defElj8HpG3x4G98HLddBpg= X-Google-Smtp-Source: ACHHUZ6hexLSx7MCu/vikPSHcuare299VqfoBmWOu7Ee1hjFQNgv7EnnmzWGuhYTdY+5xZGWojZCRA== X-Received: by 2002:a25:2f83:0:b0:bac:689f:a7ca with SMTP id v125-20020a252f83000000b00bac689fa7camr15467880ybv.15.1687467513112; Thu, 22 Jun 2023 13:58:33 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" Subject: [PATCH v5 18/33] pgalloc: Convert various functions to use ptdescs Date: Thu, 22 Jun 2023 13:57:30 -0700 Message-Id: <20230622205745.79707-19-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230622205745.79707-1-vishal.moola@gmail.com> References: <20230622205745.79707-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit As part of the conversions to replace pgtable constructor/destructors with ptdesc equivalents, convert various page table functions to use ptdescs. Some of the functions use the *get*page*() helper functions. Convert these to use pagetable_alloc() and ptdesc_address() instead to help standardize page tables further. Signed-off-by: Vishal Moola (Oracle) --- include/asm-generic/pgalloc.h | 88 +++++++++++++++++++++-------------- 1 file changed, 52 insertions(+), 36 deletions(-) diff --git a/include/asm-generic/pgalloc.h b/include/asm-generic/pgalloc.h index a7cf825befae..c75d4a753849 100644 --- a/include/asm-generic/pgalloc.h +++ b/include/asm-generic/pgalloc.h @@ -8,7 +8,7 @@ #define GFP_PGTABLE_USER (GFP_PGTABLE_KERNEL | __GFP_ACCOUNT) /** - * __pte_alloc_one_kernel - allocate a page for PTE-level kernel page table + * __pte_alloc_one_kernel - allocate memory for a PTE-level kernel page table * @mm: the mm_struct of the current context * * This function is intended for architectures that need @@ -18,12 +18,17 @@ */ static inline pte_t *__pte_alloc_one_kernel(struct mm_struct *mm) { - return (pte_t *)__get_free_page(GFP_PGTABLE_KERNEL); + struct ptdesc *ptdesc = pagetable_alloc(GFP_PGTABLE_KERNEL & + ~__GFP_HIGHMEM, 0); + + if (!ptdesc) + return NULL; + return ptdesc_address(ptdesc); } #ifndef __HAVE_ARCH_PTE_ALLOC_ONE_KERNEL /** - * pte_alloc_one_kernel - allocate a page for PTE-level kernel page table + * pte_alloc_one_kernel - allocate memory for a PTE-level kernel page table * @mm: the mm_struct of the current context * * Return: pointer to the allocated memory or %NULL on error @@ -35,40 +40,40 @@ static inline pte_t *pte_alloc_one_kernel(struct mm_struct *mm) #endif /** - * pte_free_kernel - free PTE-level kernel page table page + * pte_free_kernel - free PTE-level kernel page table memory * @mm: the mm_struct of the current context * @pte: pointer to the memory containing the page table */ static inline void pte_free_kernel(struct mm_struct *mm, pte_t *pte) { - free_page((unsigned long)pte); + pagetable_free(virt_to_ptdesc(pte)); } /** - * __pte_alloc_one - allocate a page for PTE-level user page table + * __pte_alloc_one - allocate memory for a PTE-level user page table * @mm: the mm_struct of the current context * @gfp: GFP flags to use for the allocation * - * Allocates a page and runs the pgtable_pte_page_ctor(). + * Allocate memory for a page table and ptdesc and runs pagetable_pte_ctor(). * * This function is intended for architectures that need * anything beyond simple page allocation or must have custom GFP flags. * - * Return: `struct page` initialized as page table or %NULL on error + * Return: `struct page` referencing the ptdesc or %NULL on error */ static inline pgtable_t __pte_alloc_one(struct mm_struct *mm, gfp_t gfp) { - struct page *pte; + struct ptdesc *ptdesc; - pte = alloc_page(gfp); - if (!pte) + ptdesc = pagetable_alloc(gfp, 0); + if (!ptdesc) return NULL; - if (!pgtable_pte_page_ctor(pte)) { - __free_page(pte); + if (!pagetable_pte_ctor(ptdesc)) { + pagetable_free(ptdesc); return NULL; } - return pte; + return ptdesc_page(ptdesc); } #ifndef __HAVE_ARCH_PTE_ALLOC_ONE @@ -76,9 +81,9 @@ static inline pgtable_t __pte_alloc_one(struct mm_struct *mm, gfp_t gfp) * pte_alloc_one - allocate a page for PTE-level user page table * @mm: the mm_struct of the current context * - * Allocates a page and runs the pgtable_pte_page_ctor(). + * Allocate memory for a page table and ptdesc and runs pagetable_pte_ctor(). * - * Return: `struct page` initialized as page table or %NULL on error + * Return: `struct page` referencing the ptdesc or %NULL on error */ static inline pgtable_t pte_alloc_one(struct mm_struct *mm) { @@ -92,14 +97,16 @@ static inline pgtable_t pte_alloc_one(struct mm_struct *mm) */ /** - * pte_free - free PTE-level user page table page + * pte_free - free PTE-level user page table memory * @mm: the mm_struct of the current context - * @pte_page: the `struct page` representing the page table + * @pte_page: the `struct page` referencing the ptdesc */ static inline void pte_free(struct mm_struct *mm, struct page *pte_page) { - pgtable_pte_page_dtor(pte_page); - __free_page(pte_page); + struct ptdesc *ptdesc = page_ptdesc(pte_page); + + pagetable_pte_dtor(ptdesc); + pagetable_free(ptdesc); } @@ -107,10 +114,11 @@ static inline void pte_free(struct mm_struct *mm, struct page *pte_page) #ifndef __HAVE_ARCH_PMD_ALLOC_ONE /** - * pmd_alloc_one - allocate a page for PMD-level page table + * pmd_alloc_one - allocate memory for a PMD-level page table * @mm: the mm_struct of the current context * - * Allocates a page and runs the pgtable_pmd_page_ctor(). + * Allocate memory for a page table and ptdesc and runs pagetable_pmd_ctor(). + * * Allocations use %GFP_PGTABLE_USER in user context and * %GFP_PGTABLE_KERNEL in kernel context. * @@ -118,28 +126,30 @@ static inline void pte_free(struct mm_struct *mm, struct page *pte_page) */ static inline pmd_t *pmd_alloc_one(struct mm_struct *mm, unsigned long addr) { - struct page *page; + struct ptdesc *ptdesc; gfp_t gfp = GFP_PGTABLE_USER; if (mm == &init_mm) gfp = GFP_PGTABLE_KERNEL; - page = alloc_page(gfp); - if (!page) + ptdesc = pagetable_alloc(gfp, 0); + if (!ptdesc) return NULL; - if (!pgtable_pmd_page_ctor(page)) { - __free_page(page); + if (!pagetable_pmd_ctor(ptdesc)) { + pagetable_free(ptdesc); return NULL; } - return (pmd_t *)page_address(page); + return ptdesc_address(ptdesc); } #endif #ifndef __HAVE_ARCH_PMD_FREE static inline void pmd_free(struct mm_struct *mm, pmd_t *pmd) { + struct ptdesc *ptdesc = virt_to_ptdesc(pmd); + BUG_ON((unsigned long)pmd & (PAGE_SIZE-1)); - pgtable_pmd_page_dtor(virt_to_page(pmd)); - free_page((unsigned long)pmd); + pagetable_pmd_dtor(ptdesc); + pagetable_free(ptdesc); } #endif @@ -150,19 +160,25 @@ static inline void pmd_free(struct mm_struct *mm, pmd_t *pmd) static inline pud_t *__pud_alloc_one(struct mm_struct *mm, unsigned long addr) { gfp_t gfp = GFP_PGTABLE_USER; + struct ptdesc *ptdesc; if (mm == &init_mm) gfp = GFP_PGTABLE_KERNEL; - return (pud_t *)get_zeroed_page(gfp); + gfp &= ~__GFP_HIGHMEM; + + ptdesc = pagetable_alloc(gfp, 0); + if (!ptdesc) + return NULL; + return ptdesc_address(ptdesc); } #ifndef __HAVE_ARCH_PUD_ALLOC_ONE /** - * pud_alloc_one - allocate a page for PUD-level page table + * pud_alloc_one - allocate memory for a PUD-level page table * @mm: the mm_struct of the current context * - * Allocates a page using %GFP_PGTABLE_USER for user context and - * %GFP_PGTABLE_KERNEL for kernel context. + * Allocate memory for a page table using %GFP_PGTABLE_USER for user context + * and %GFP_PGTABLE_KERNEL for kernel context. * * Return: pointer to the allocated memory or %NULL on error */ @@ -175,7 +191,7 @@ static inline pud_t *pud_alloc_one(struct mm_struct *mm, unsigned long addr) static inline void __pud_free(struct mm_struct *mm, pud_t *pud) { BUG_ON((unsigned long)pud & (PAGE_SIZE-1)); - free_page((unsigned long)pud); + pagetable_free(virt_to_ptdesc(pud)); } #ifndef __HAVE_ARCH_PUD_FREE @@ -190,7 +206,7 @@ static inline void pud_free(struct mm_struct *mm, pud_t *pud) #ifndef __HAVE_ARCH_PGD_FREE static inline void pgd_free(struct mm_struct *mm, pgd_t *pgd) { - free_page((unsigned long)pgd); + pagetable_free(virt_to_ptdesc(pgd)); } #endif -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 22 21:12:59 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 21:12:59 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554149.865181 (Exim 4.92) (envelope-from ) id 1qCRbq-0004ic-Mh; Thu, 22 Jun 2023 21:12:54 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554149.865181; Thu, 22 Jun 2023 21:12:54 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCRbq-0004iV-Jq; Thu, 22 Jun 2023 21:12:54 +0000 Received: by outflank-mailman (input) for mailman id 554149; Thu, 22 Jun 2023 21:12:53 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCRbp-0004iL-Eo; Thu, 22 Jun 2023 21:12:53 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCRbp-0003jD-1U; Thu, 22 Jun 2023 21:12:53 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCRbo-0007j6-GI; Thu, 22 Jun 2023 21:12:52 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qCRbo-0000yF-FU; Thu, 22 Jun 2023 21:12:52 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=2fggWCVyKk5JeHGWSNvmvX1U8DgPf+qTUyL2nsMyzbU=; b=dmkm++Gb46NLNrx+FV+wcMdd44 KxkcTJ60g5Ux4f773VSTeMKC/AnXRJvE+SOTYzE+nOrYSKNZD6tWvY12CqceZfmm4NZdQoARb/TzA IOpt7eATeV5S9jI6yPvfAmKhQb5/NDbG4DF4GMHZKyjWi4BzsjHnHPjjLf781dyTM0Ng=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [linux-linus test] 181548: regressions - FAIL X-Osstest-Failures: linux-linus:test-armhf-armhf-xl-credit1:xen-boot:fail:regression linux-linus:test-amd64-amd64-libvirt-qcow2:guest-start/debian.repeat:fail:heisenbug linux-linus:test-armhf-armhf-xl:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-raw:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-credit2:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking linux-linus:test-armhf-armhf-libvirt:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-arndale:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-examine:reboot:fail:nonblocking linux-linus:test-armhf-armhf-xl-rtds:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-qcow2:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-vhd:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-multivcpu:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-raw:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-qcow2:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: linux=dad9774deaf1cf8e8f7483310dfb2690310193d2 X-Osstest-Versions-That: linux=6c538e1adbfc696ac4747fb10d63e704344f763d From: osstest service owner Date: Thu, 22 Jun 2023 21:12:52 +0000 flight 181548 linux-linus real [real] flight 181554 linux-linus real-retest [real] http://logs.test-lab.xenproject.org/osstest/logs/181548/ http://logs.test-lab.xenproject.org/osstest/logs/181554/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: test-armhf-armhf-xl-credit1 8 xen-boot fail REGR. vs. 180278 Tests which are failing intermittently (not blocking): test-amd64-amd64-libvirt-qcow2 19 guest-start/debian.repeat fail pass in 181554-retest Tests which did not succeed, but are not blocking: test-armhf-armhf-xl 8 xen-boot fail like 180278 test-armhf-armhf-libvirt-raw 8 xen-boot fail like 180278 test-armhf-armhf-xl-credit2 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 180278 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 180278 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 180278 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 180278 test-armhf-armhf-libvirt 8 xen-boot fail like 180278 test-armhf-armhf-xl-arndale 8 xen-boot fail like 180278 test-armhf-armhf-examine 8 reboot fail like 180278 test-armhf-armhf-xl-rtds 8 xen-boot fail like 180278 test-armhf-armhf-libvirt-qcow2 8 xen-boot fail like 180278 test-armhf-armhf-xl-vhd 8 xen-boot fail like 180278 test-armhf-armhf-xl-multivcpu 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 180278 test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qcow2 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass version targeted for testing: linux dad9774deaf1cf8e8f7483310dfb2690310193d2 baseline version: linux 6c538e1adbfc696ac4747fb10d63e704344f763d Last test of basis 180278 2023-04-16 19:41:46 Z 67 days Failing since 180281 2023-04-17 06:24:36 Z 66 days 125 attempts Testing same since 181548 2023-06-22 06:37:02 Z 0 days 1 attempts ------------------------------------------------------------ 2749 people touched revisions under test, not listing them all jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl fail test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-freebsd11-amd64 pass test-amd64-amd64-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale fail test-amd64-amd64-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 fail test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 fail test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine fail test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt fail test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu fail test-amd64-amd64-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-amd64-pygrub pass test-amd64-amd64-libvirt-qcow2 fail test-armhf-armhf-libvirt-qcow2 fail test-amd64-amd64-libvirt-raw pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw fail test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds fail test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-amd64-xl-vhd pass test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd fail ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 350268 lines long.) From xen-devel-bounces@lists.xenproject.org Thu Jun 22 21:18:05 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 21:18:05 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554158.865191 (Exim 4.92) (envelope-from ) id 1qCRgc-0005PS-Cp; Thu, 22 Jun 2023 21:17:50 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554158.865191; Thu, 22 Jun 2023 21:17:50 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCRgc-0005PL-9v; Thu, 22 Jun 2023 21:17:50 +0000 Received: by outflank-mailman (input) for mailman id 554158; Thu, 22 Jun 2023 21:17:49 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCRgb-0005PF-1Z for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 21:17:49 +0000 Received: from mx0b-0039f301.pphosted.com (mx0b-0039f301.pphosted.com [148.163.137.242]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 3b7c8c20-1142-11ee-b237-6b7b168915f2; Thu, 22 Jun 2023 23:17:47 +0200 (CEST) Received: from pps.filterd (m0174683.ppops.net [127.0.0.1]) by mx0b-0039f301.pphosted.com (8.17.1.5/8.17.1.5) with ESMTP id 35MIcApZ006075; Thu, 22 Jun 2023 21:17:40 GMT Received: from eur05-db8-obe.outbound.protection.outlook.com (mail-db8eur05lp2113.outbound.protection.outlook.com [104.47.17.113]) by mx0b-0039f301.pphosted.com (PPS) with ESMTPS id 3rcurhgbed-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Thu, 22 Jun 2023 21:17:40 +0000 Received: from VI1PR03MB3710.eurprd03.prod.outlook.com (2603:10a6:803:31::18) by PR3PR03MB6489.eurprd03.prod.outlook.com (2603:10a6:102:7c::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.24; Thu, 22 Jun 2023 21:17:37 +0000 Received: from VI1PR03MB3710.eurprd03.prod.outlook.com ([fe80::10c0:3ca8:e226:2335]) by VI1PR03MB3710.eurprd03.prod.outlook.com ([fe80::10c0:3ca8:e226:2335%4]) with mapi id 15.20.6521.024; Thu, 22 Jun 2023 21:17:36 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 3b7c8c20-1142-11ee-b237-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=GdzhSZOHAT9hoRBMvzbp5ZTmI3aIb2sD4i9o/td568ym5X7PqEBa8WsOQrLP4p34QoHYv/leE6TbXhZcTTFPukUU0VF292Q9jIVqvTqBlg4WMqAmFrpLP6EoQ8xcArwsYwDPnKax2CtcmIgACrp7lTH1sE6J78jPhD0JCQh5XER8dp8NfpMd7Py/T5xn9pjUlNgD69yjfNntX745/SlP9B0WymzLuc01tSoYU+3tKygEgKWJcTQq9LDVEbHf2cgcNaBLaTnYEYrTUHH8WM0YbQkII4v+S++dtuyUk4Tc6FUbIiDlH82D2i8R98rkWEn/hzTjGouQm862a7FxnP7fFQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=UuWtZyvMN74HmxoPbGl7Sz2qlnsZHWevtMTb1H0S/0k=; b=D392m4RnLQfQp2eydohGJZ70hxOkYJeVWSPmYd+/O3FnLrqdCxJVTX84AluoeKMK/0LIUUe46p8J8Xuyxo45CZEbT0FuRYknAayONOdWw/NLZEfndqyXUwl7AKFAeMiIlkveMAGb8nOnBJMzpDG73PcSIsIful4OE7HVN2KTpLZUMGcW1Kepurvz8zWVknXu2FXU1N3lRwDdFO06EdJdXrtGEl/SfVAdjfdayaDb2b6sR/AhGBtpHSvgtQ6PNuCT42LKjg9NqfeFAFzdia1jJ9N6LAjWjzfe7XHyDKfiXf81a0fNkMly1l4tn0mFgscAsN/a7cypKsK3n7jpf3dZkA== 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 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=epam.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=UuWtZyvMN74HmxoPbGl7Sz2qlnsZHWevtMTb1H0S/0k=; b=UL5KZ4vst/UF4EMDMWJ55foSbQS6FmULErQu8ny2oIP2CffM//axlrw7cnVQXXP19wOaJ4edMulMbo8dnl3vzoG6A9e9Cp8USF8cxar1ZMi69XtVPRteBifWz7D/G03unBUEUsiTfjwkV1hT6om3/w+dCMm3JZgaCsGnDQQnBrNvBgJf22dlLKjWVqqZUA7HAtXBT8hW8ytgM3pttvy2eGot9uqB+i4SagOV+Q5FhdeIaYWEIfxBzRK/tRh2zo/oibbXKbn1b+cXdFs2h4Xgatk4tbKsSXhlVWOvh00Y+GE7MyJKDK9jecMPzm7cUjAH9l7H4xeOMO4mlf7oXzuClw== From: Volodymyr Babchuk To: =?utf-8?B?Um9nZXIgUGF1IE1vbm7DqQ==?= CC: "xen-devel@lists.xenproject.org" , Oleksandr Andrushchenko , Jan Beulich , Andrew Cooper , Wei Liu , George Dunlap , Julien Grall , Stefano Stabellini , Paul Durrant Subject: Re: [PATCH v7 01/12] vpci: introduce per-domain lock to protect vpci structure Thread-Topic: [PATCH v7 01/12] vpci: introduce per-domain lock to protect vpci structure Thread-Index: AQHZneJZdDE+HOoSO0y6VB9l0x1hDq+No9OAgAgqUACAALl2AIAAzUWA Date: Thu, 22 Jun 2023 21:17:36 +0000 Message-ID: <87ilbfnqmo.fsf@epam.com> References: <20230613103159.524763-1-volodymyr_babchuk@epam.com> <20230613103159.524763-2-volodymyr_babchuk@epam.com> <87352kpj04.fsf@epam.com> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: user-agent: mu4e 1.8.9; emacs 28.2 x-ms-publictraffictype: Email x-ms-traffictypediagnostic: VI1PR03MB3710:EE_|PR3PR03MB6489:EE_ x-ms-office365-filtering-correlation-id: a3b10824-7ef0-4a91-d418-08db73661a0e x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: 9Cagx+O5jULYFWHuC0MtaNUdW+FXZlSndhJiMbs+a3kVK7agzgIZtMZS+bJon2KGGF8GNHYh591El2msKeM3VGpBnAFQw/9al/Zw5GrBb7jM+YDDH3/cseDT6Mgl5LueiTgiF5H5vWGLS1nYAx5EwJiU7inlao/ITq1qfSR1zn0YVuZovJYNEchD7DhXZKre4kCdt84K51ga1+UIDDAFuNZ+Hf7kcuTMu1g4BAcN66YmH2WxRSyDWh/uxYIOiTL4UQulA3KMsMoEjkwZ08AUDLiTtLr7l3lb1ni4E3SkoZO4ZSYUO1WJcxTgZo2bk3GVGSPUXt4P2VHssXgTxGc7PUHaUeNtd6ryD5zLgVXIrY0plxXqbSFBoBGJscf8BOc76iz9LUeGDa2PT82ZznAI2KOzW2AUwRtK9n0lI+Vru1o4tAgV/KIDEymyymAARNzr6mP0halyAteW2CHnyNj0WbWRhyTp2GQOkswThPhMlbSNjpmPYTR+jGOffQwoBHa0jHUUV41HLetZcLrNianQTAuUGOwBYPKx5ARh7uVIIAqKUnClaaZuiJ4aNCuxx1oj90nE9HN7jR8XZ3he0J7wHnxnrEAR8uwXqANm3Myy/hM= x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VI1PR03MB3710.eurprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(376002)(396003)(346002)(136003)(366004)(39860400002)(451199021)(5660300002)(36756003)(8936002)(8676002)(122000001)(38100700002)(2906002)(38070700005)(478600001)(186003)(6486002)(71200400001)(54906003)(2616005)(86362001)(966005)(55236004)(26005)(6512007)(6506007)(64756008)(66446008)(66476007)(66946007)(66556008)(6916009)(83380400001)(91956017)(76116006)(316002)(66899021)(41300700001)(4326008);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?emQrYms1STU5cGpxcGJLeWp2Q25nZExiWHgxVktvVmlCRmpJcnVsWGdEQXNG?= =?utf-8?B?WHJHVVRxQnEvVHd4U3ZWVUQwUE1LejVYMkd3V2hCM2FFbWg2NXFlREVZd1E5?= =?utf-8?B?RzVGTk1GM2g4V1VaSFB4NE5YakZDZi9vRnJxcVlZVTNEVlc3aW1Cb3lxNU1B?= =?utf-8?B?Rkg0dkdiczV5WG90bnBRalUrZkN0YUx6ZHl0MGdneVFRaTlBc3FLTEhQTStR?= =?utf-8?B?TzVpek83b0JvRGhoZkdNVHVHTXlaQmJ3bTlEZ1VXUEJ4ZWgzWUVEekVZUmUv?= =?utf-8?B?SEp4dStsNm9JWXg2Y2Q1cDRWNlpUZXZMSGptd2xvMHlOSVBZSmhUVG9oOWZ2?= =?utf-8?B?WTRVczVMcWlHZWFGWjdVMktPc1pHVTZLTXB1NGphcktML1ZsN2tnOXRKNnhX?= =?utf-8?B?ZktEcDVTb1F6aDlVY1ZYUzBOYkZ2YTU2Lys2WVZHcWpLUW9ZenZGbzVrckc3?= =?utf-8?B?NlFmVWNXSHB4UGRPN0dITWhPT1JWU2w5UytLS1lTT0Z3c0p0RDU0ZTkzN2RS?= =?utf-8?B?K3ZQQTJmTW9KNi9rV2dPcUFPSTgrK0pBK3ZNVFpkRlpiRlQ2dWpkWDV0alhF?= =?utf-8?B?RDgrbDM0WmNXYnhvaG5rdmZGRFhWUkxncWplRWpOWGtyenI2aW1kelBsMHlR?= =?utf-8?B?WkROR0hyaCthM3lJTlhMRXl6VU94eHZZUU1Pb0MyUi9lVmZMcDRUYTREWGx1?= =?utf-8?B?NGdHNi9XSkRMYWg3WkllS2JaOHhmMXJWaDRGMVJJYnAwYW82UXhoUlJIeUF1?= =?utf-8?B?eTAxTnB2R1BQejhJTXg1SnFpN3M3WTVhQURuOHhQS3hCZFI1T2Fqajh3UWsz?= =?utf-8?B?dGR3UkVlR0IrT2RPUndqVUlzMVBZZ3JOUm5UMVppa1gwSUVGdnFkbXBkYlUy?= =?utf-8?B?U3BpSlVtMFMzajRLZG5hUnFYVFFSY24reGxmZ2VpT2J1NC9XMEJqRVZHS01T?= =?utf-8?B?MlZiVlVCMUJUOWRTRDUya1RUOXppSDA1blJURGY3dm54OEowR1pNUXBGNTJy?= =?utf-8?B?ZEJiY0l6dE5ITWRoS1VaV3Vlb3VvZHZtM3Ftd2pPNHk3cjRrYnVIR3crZmZH?= =?utf-8?B?djd5ZTZTYzdON2RmSzkzbDRTNDJINllTTE9YYWVPcUVncmRlVGxuR3NoeXo4?= =?utf-8?B?S1dYelJxVHFyN1dCajFrRHg4aFZZMUQydlRaeUpIcW9ZSmNGNmJBVW5pbTRP?= =?utf-8?B?b3YrZVV0SGFIYk1YYUhWUGVua09wUGxEYTdZcXFaV2U3TU5iLy9vMkw1N0c5?= =?utf-8?B?WlYyVGgzLzFnZEFpbmNzR3FvMlJLWTVtT2JoMk90K0hJV0VweHNUdTZ1bzZ5?= =?utf-8?B?Q2k1MldDSjBSR0pqTjdIR1k3N003MHBmYTkrQW1DM3BXTzRRcU1HZmVjZWND?= =?utf-8?B?WWhTZTE0NmFDWERSWjJtWkVyZjdPNGY0c3JUeWw5WXJ6c0JMdkpwcGhMUjFB?= =?utf-8?B?QzIvSWF1dlhwbmlndjh1Q0s3ekpPdGxEeFFWbjBzVDYzUitsbFpYMlRWa3dZ?= =?utf-8?B?dzhISEh4bkhCejNBQ3ZsOGsxbGcvamVDWEIvdzBhRFgvanpGcUdYalVycSt2?= =?utf-8?B?bWhESlBxdUxCSG9RTmhmYzZXM2VVNHQ1SUhSVjNPby82akFGNVFFdkVuOHdt?= =?utf-8?B?UU1xMkhXc1d0TUlrZTFzMmRpak1rOEpnNm1ZRFVLOXBUYWo1QlM1MnZMdmRP?= =?utf-8?B?bG94SHd6NUFjNVJkSUpRODNySWE2ck14Y3VLcVMySUh2T3FRN0d1V1hVVVlS?= =?utf-8?B?ZEt1aS92M2h3RFpKUWU5ZGtROW5OTUdTaXFZRWcxNUtXeXRKUHpoTUo5Mk1H?= =?utf-8?B?OUVoUVVQZGFQRlB4ZzNRKzdkZktJRHB6eFFIZEJMNVFPdno0bWhzdnBTekNZ?= =?utf-8?B?R2MrZlJYNFV4bXFlSHgySnZoTUV4Q2U4Y25KRlhLbDFwMXpudlRsUWhNd1BS?= =?utf-8?B?eURJQjFVaHA3dUtCSkkvdnEvTGZSQVZ4dzlKckRQQm5jWlRHbnYwbWk5emhk?= =?utf-8?B?dkpzSnAvUytiNk4wS0VWZ1piVEc5T1h6Ti9RYkl2amFBY1YyTVhadFhKOEdB?= =?utf-8?B?SitDU1hvd1VnVkgwT01PYmovV3BSMGtDUXdtUkNvdi9ZUVJxeWY5V0VkZm10?= =?utf-8?B?eVovYmgva0JJeXhSa2lsbGRlcmxnQUJFR3VMdGFGTk5heGM0MWxCOG5oYUF6?= =?utf-8?B?b0E9PQ==?= Content-Type: text/plain; charset="utf-8" Content-ID: <62F1306582A2AB4D96B7FE9806C75596@eurprd03.prod.outlook.com> Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: epam.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: VI1PR03MB3710.eurprd03.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: a3b10824-7ef0-4a91-d418-08db73661a0e X-MS-Exchange-CrossTenant-originalarrivaltime: 22 Jun 2023 21:17:36.3805 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: b41b72d0-4e9f-4c26-8a69-f949f367c91d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: n+rtJUP01DAXmumoUHYI82fAuev+lSKOoKIupms6NQwcwexrHjruJMD3uNuDKmJmdikIY6+TCGP1WvlAsVUSt8GL3IsF81ht9+0P7hsoMMQ= X-MS-Exchange-Transport-CrossTenantHeadersStamped: PR3PR03MB6489 X-Proofpoint-ORIG-GUID: Xm0i3W3jXFn5CzFQ78Ox_AHvP-ZAs40r X-Proofpoint-GUID: Xm0i3W3jXFn5CzFQ78Ox_AHvP-ZAs40r X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.254,Aquarius:18.0.957,Hydra:6.0.591,FMLib:17.11.176.26 definitions=2023-06-22_16,2023-06-22_02,2023-05-22_02 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 suspectscore=0 phishscore=0 clxscore=1015 spamscore=0 mlxscore=0 mlxlogscore=726 impostorscore=0 malwarescore=0 bulkscore=0 adultscore=0 lowpriorityscore=0 priorityscore=1501 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2305260000 definitions=main-2306220181 DQpIaSBSb2dlciwNCg0KUm9nZXIgUGF1IE1vbm7DqSA8cm9nZXIucGF1QGNpdHJpeC5jb20+IHdy aXRlczoNCg0KPiBPbiBXZWQsIEp1biAyMSwgMjAyMyBhdCAxMDowNzoyMFBNICswMDAwLCBWb2xv ZHlteXIgQmFiY2h1ayB3cm90ZToNCj4+IA0KPj4gSGkgUm9nZXIsDQo+PiANCj4+IFJvZ2VyIFBh dSBNb25uw6kgPHJvZ2VyLnBhdUBjaXRyaXguY29tPiB3cml0ZXM6DQo+PiANCj4+ID4gT24gVHVl LCBKdW4gMTMsIDIwMjMgYXQgMTA6MzI6MjZBTSArMDAwMCwgVm9sb2R5bXlyIEJhYmNodWsgd3Jv dGU6DQo+PiA+PiBGcm9tOiBPbGVrc2FuZHIgQW5kcnVzaGNoZW5rbyA8b2xla3NhbmRyX2FuZHJ1 c2hjaGVua29AZXBhbS5jb20+DQo+PiA+PiANCj4+ID4+IEludHJvZHVjZSBhIHBlci1kb21haW4g cmVhZC93cml0ZSBsb2NrIHRvIGNoZWNrIHdoZXRoZXIgdnBjaSBpcyBwcmVzZW50LA0KPj4gPj4g c28gd2UgYXJlIHN1cmUgdGhlcmUgYXJlIG5vIGFjY2Vzc2VzIHRvIHRoZSBjb250ZW50cyBvZiB0 aGUgdnBjaSBzdHJ1Y3QNCj4+ID4+IGlmIG5vdC4gVGhpcyBsb2NrIGNhbiBiZSB1c2VkIChhbmQg aW4gYSBmZXcgY2FzZXMgaXMgdXNlZCByaWdodCBhd2F5KQ0KPj4gPj4gc28gdGhhdCB2cGNpIHJl bW92YWwgY2FuIGJlIHBlcmZvcm1lZCB3aGlsZSBob2xkaW5nIHRoZSBsb2NrIGluIHdyaXRlDQo+ PiA+PiBtb2RlLiBQcmV2aW91c2x5IHN1Y2ggcmVtb3ZhbCBjb3VsZCByYWNlIHdpdGggdnBjaV9y ZWFkIGZvciBleGFtcGxlLg0KPj4gPj4gDQo+PiA+PiAxLiBQZXItZG9tYWluJ3MgdnBjaV9yd2xv Y2sgaXMgdXNlZCB0byBwcm90ZWN0IHBkZXYtPnZwY2kgc3RydWN0dXJlDQo+PiA+PiBmcm9tIGJl aW5nIHJlbW92ZWQuDQo+PiA+PiANCj4+ID4+IDIuIFdyaXRpbmcgdGhlIGNvbW1hbmQgcmVnaXN0 ZXIgYW5kIFJPTSBCQVIgcmVnaXN0ZXIgbWF5IHRyaWdnZXINCj4+ID4+IG1vZGlmeV9iYXJzIHRv IHJ1biwgd2hpY2ggaW4gdHVybiBtYXkgYWNjZXNzIG11bHRpcGxlIHBkZXZzIHdoaWxlDQo+PiA+ PiBjaGVja2luZyBmb3IgdGhlIGV4aXN0aW5nIEJBUidzIG92ZXJsYXAuIFRoZSBvdmVybGFwcGlu ZyBjaGVjaywgaWYgZG9uZQ0KPj4gPj4gdW5kZXIgdGhlIHJlYWQgbG9jaywgcmVxdWlyZXMgdnBj aS0+bG9jayB0byBiZSBhY3F1aXJlZCBvbiBib3RoIGRldmljZXMNCj4+ID4+IGJlaW5nIGNvbXBh cmVkLCB3aGljaCBtYXkgcHJvZHVjZSBhIGRlYWRsb2NrLiBJdCBpcyBub3QgcG9zc2libGUgdG8N Cj4+ID4+IHVwZ3JhZGUgcmVhZCBsb2NrIHRvIHdyaXRlIGxvY2sgaW4gc3VjaCBhIGNhc2UuIFNv LCBpbiBvcmRlciB0byBwcmV2ZW50DQo+PiA+PiB0aGUgZGVhZGxvY2ssIGNoZWNrIHdoaWNoIHJl Z2lzdGVycyBhcmUgZ29pbmcgdG8gYmUgd3JpdHRlbiBhbmQgYWNxdWlyZQ0KPj4gPj4gdGhlIGxv Y2sgaW4gdGhlIGFwcHJvcHJpYXRlIG1vZGUgZnJvbSB0aGUgYmVnaW5uaW5nLg0KPj4gPj4gDQo+ PiA+PiBBbGwgb3RoZXIgY29kZSwgd2hpY2ggZG9lc24ndCBsZWFkIHRvIHBkZXYtPnZwY2kgZGVz dHJ1Y3Rpb24gYW5kIGRvZXMgbm90DQo+PiA+PiBhY2Nlc3MgbXVsdGlwbGUgcGRldnMgYXQgdGhl IHNhbWUgdGltZSwgY2FuIHN0aWxsIHVzZSBhIGNvbWJpbmF0aW9uIG9mIHRoZQ0KPj4gPj4gcmVh ZCBsb2NrIGFuZCBwZGV2LT52cGNpLT5sb2NrLg0KPj4gPj4gDQo+PiA+PiAzLiBPcHRpbWl6ZSBp ZiBST00gQkFSIHdyaXRlIGxvY2sgcmVxdWlyZWQgZGV0ZWN0aW9uIGJ5IGNhY2hpbmcgb2Zmc2V0 DQo+PiA+PiBvZiB0aGUgUk9NIEJBUiByZWdpc3RlciBpbiB2cGNpLT5oZWFkZXItPnJvbV9yZWcg d2hpY2ggZGVwZW5kcyBvbg0KPj4gPj4gaGVhZGVyJ3MgdHlwZS4NCj4+ID4+IA0KPj4gPj4gNC4g UmVkdWNlIGxvY2tlZCByZWdpb24gaW4gdnBjaV9yZW1vdmVfZGV2aWNlIGFzIGl0IGlzIG5vdyBw b3NzaWJsZQ0KPj4gPj4gdG8gc2V0IHBkZXYtPnZwY2kgdG8gTlVMTCBlYXJseSByaWdodCBhZnRl ciB0aGUgd3JpdGUgbG9jayBpcyBhY3F1aXJlZC4NCj4+ID4+IA0KPj4gPj4gNS4gUmVkdWNlIGxv Y2tlZCByZWdpb24gaW4gdnBjaV9hZGRfaGFuZGxlcnMgYXMgaXQgaXMgcG9zc2libGUgdG8NCj4+ ID4+IGluaXRpYWxpemUgbWFueSBtb3JlIGZpZWxkcyBvZiB0aGUgc3RydWN0IHZwY2kgYmVmb3Jl IGFzc2lnbmluZyBpdCB0bw0KPj4gPj4gcGRldi0+dnBjaS4NCj4+ID4+IA0KPj4gPj4gNi4gdnBj aV97YWRkfHJlbW92ZX1fcmVnaXN0ZXIgYXJlIHJlcXVpcmVkIHRvIGJlIGNhbGxlZCB3aXRoIHRo ZSB3cml0ZSBsb2NrDQo+PiA+PiBoZWxkLCBidXQgaXQgaXMgbm90IGZlYXNpYmxlIHRvIGFkZCBh biBhc3NlcnQgdGhlcmUgYXMgaXQgcmVxdWlyZXMNCj4+ID4+IHN0cnVjdCBkb21haW4gdG8gYmUg cGFzc2VkIGZvciB0aGF0LiBTbywgYWRkIGEgY29tbWVudCBhYm91dCB0aGlzIHJlcXVpcmVtZW50 DQo+PiA+PiB0byB0aGVzZSBhbmQgb3RoZXIgZnVuY3Rpb25zIHdpdGggdGhlIGVxdWl2YWxlbnQg Y29uc3RyYWludHMuDQo+PiA+PiANCj4+ID4+IDcuIERyb3AgY29uc3QgcXVhbGlmaWVyIHdoZXJl IHRoZSBuZXcgcndsb2NrIGlzIHVzZWQgYW5kIHRoaXMgaXMgYXBwcm9wcmlhdGUuDQo+PiA+PiAN Cj4+ID4+IDguIERvIG5vdCBjYWxsIHByb2Nlc3NfcGVuZGluZ19zb2Z0aXJxcyB3aXRoIGFueSBs b2NrcyBoZWxkLiBGb3IgdGhhdCB1bmxvY2sNCj4+ID4+IHByaW9yIHRoZSBjYWxsIGFuZCByZS1h Y3F1aXJlIHRoZSBsb2NrcyBhZnRlci4gQWZ0ZXIgcmUtYWNxdWlyaW5nIHRoZQ0KPj4gPj4gbG9j ayB0aGVyZSBpcyBubyBuZWVkIHRvIGNoZWNrIGlmIHBkZXYtPnZwY2kgZXhpc3RzOg0KPj4gPj4g IC0gaW4gYXBwbHlfbWFwIGJlY2F1c2Ugb2YgdGhlIGNvbnRleHQgaXQgaXMgY2FsbGVkIChubyBy YWNlIGNvbmRpdGlvbg0KPj4gPj4gICAgcG9zc2libGUpDQo+PiA+PiAgLSBmb3IgTVNJL01TSS1Y IGRlYnVnIGNvZGUgYmVjYXVzZSBpdCBpcyBjYWxsZWQgYXQgdGhlIGVuZCBvZg0KPj4gPj4gICAg cGRldi0+dnBjaSBhY2Nlc3MgYW5kIG5vIGZ1cnRoZXIgYWNjZXNzIHRvIHBkZXYtPnZwY2kgaXMg bWFkZQ0KPj4gPj4gDQo+PiA+PiA5LiBDaGVjayBmb3IgIXBkZXYtPnZwY2kgaW4gdnBjaV97cmVh ZHx3cml0ZX0gYWZ0ZXIgYWNxdWlyaW5nIHRoZSBsb2NrDQo+PiA+PiBhbmQgaWYgc28sIGFsbG93 IHJlYWRpbmcgb3Igd3JpdGluZyB0aGUgaGFyZHdhcmUgcmVnaXN0ZXIgZGlyZWN0bHkuIFRoaXMg aXMNCj4+ID4+IGFjY2VwdGFibGUgYXMgd2Ugb25seSBkZWFsIHdpdGggRG9tMCBhcyBvZiBub3cu IE9uY2UgRG9tVSBzdXBwb3J0IGlzDQo+PiA+PiBhZGRlZCB0aGUgd3JpdGUgd2lsbCBuZWVkIHRv IGJlIGlnbm9yZWQgYW5kIHJlYWQgcmV0dXJuIGFsbCAwJ3MgZm9yIHRoZQ0KPj4gPj4gZ3Vlc3Rz LCB3aGlsZSBEb20wIGNhbiBzdGlsbCBhY2Nlc3MgdGhlIHJlZ2lzdGVycyBkaXJlY3RseS4NCj4+ ID4+IA0KPj4gPj4gMTAuIEludHJvZHVjZSBwY2lkZXZzX3RyeWxvY2ssIHNvIHRoZXJlIGlzIGEg cG9zc2liaWxpdHkgdG8gdHJ5IGxvY2tpbmcNCj4+ID4+IHRoZSBwY2lkZXYncyBsb2NrLg0KPj4g Pj4gDQo+PiA+PiAxMS4gVXNlIHBjaWRldidzIGxvY2sgYXJvdW5kIGZvcl9lYWNoX3BkZXYgYW5k IHBjaV9nZXRfcGRldl9ieV9kb21haW4NCj4+ID4+IHdoaWxlIGFjY2Vzc2luZyBwZGV2cyBpbiB2 cGNpIGNvZGUuDQo+PiA+PiANCj4+ID4+IDEyLiBUaGlzIGlzIGJhc2VkIG9uIHRoZSBkaXNjdXNz aW9uIGF0IFsxXS4NCj4+ID4+IA0KPj4gPj4gWzFdIGh0dHBzOi8vdXJsZGVmZW5zZS5jb20vdjMv X19odHRwczovL2xvcmUua2VybmVsLm9yZy9hbGwvMjAyMjAyMDQwNjM0NTkuNjgwOTYxLTQtYW5k cjIwMDBAZ21haWwuY29tL19fOyEhR0ZfMjlkYmNRSVVCUEEhelB5MzFDV0ZXbHlDMHhoRUhpU2o2 ck9QZTdSRFNqTHJhbkk5S1pxaEc0c3NtQ2hKTVd2c1BMSlBRR1RjVnNubm93WnBQOC1MYUtKa0lX SXpiOHVlMERvWWhnJCBbbG9yZVsuXWtlcm5lbFsuXW9yZ10NCj4+ID4+IA0KPj4gPj4gU3VnZ2Vz dGVkLWJ5OiBSb2dlciBQYXUgTW9ubsOpIDxyb2dlci5wYXVAY2l0cml4LmNvbT4NCj4+ID4+IFN1 Z2dlc3RlZC1ieTogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPg0KPj4gPj4gU2lnbmVk LW9mZi1ieTogT2xla3NhbmRyIEFuZHJ1c2hjaGVua28gPG9sZWtzYW5kcl9hbmRydXNoY2hlbmtv QGVwYW0uY29tPg0KPj4gPg0KPj4gPiBUaGFua3MuDQo+PiA+DQo+PiA+IEkgaGF2ZW4ndCBsb29r ZWQgaW4gZnVsbCBkZXRhaWwsIGJ1dCBJJ20gYWZyYWlkIHRoZXJlJ3MgYW4gQUJCQQ0KPj4gPiBk ZWFkbG9jayB3aXRoIHRoZSBwZXItZG9tYWluIHZwY2kgbG9jayBhbmQgdGhlIHBjaWRldnMgbG9j ayBpbg0KPj4gPiBtb2RpZnlfYmFycygpIHZzICB2cGNpX2FkZF9oYW5kbGVycygpIGFuZCB2cGNp X3JlbW92ZV9kZXZpY2UoKS4NCj4+ID4NCj4+ID4gSSd2ZSBtYWRlIHNvbWUgY29tbWVudHMgYmVs b3cuDQo+PiANCj4+IFRoYW5rIHlvdSBmb3IgdGhlIHJldmlldy4gSSBiZWxpZXZlIHRoYXQgaXQg aXMgYSBnb29kIGlkZWEgdG8gaGF2ZSBhDQo+PiBwZXItZG9tYWluIHBkZXZfbGlzdCBsb2NrLiBT ZWUgbXkgYW5zd2VycyBiZWxvdy4NCj4NCj4gSSB0aGluayBpdCdzIGltcG9ydGFudCB0aGF0IHRo ZSBsb2NrIHRoYXQgcHJvdGVjdHMgZG9tYWluLT5wZGV2X2xpc3QNCj4gbXVzdCBiZSB0aGUgc2Ft ZSB0aGF0IGFsc28gcHJvdGVjdHMgcGRldi0+dnBjaSwgb3IgZWxzZSB5b3UgbWlnaHQgcnVuDQo+ IGludG8gc2ltaWxhciBBQkJBIGRlYWRsb2NrIHNpdHVhdGlvbnMuDQo+DQo+IFRoZSBwcm9ibGVt IHRoZW4gY291bGQgYmUgdGhhdCBpbiB2cGNpX3tyZWFkLHdyaXRlfSB5b3Ugd2lsbCB0YWtlIHRo ZQ0KPiBwZXItZG9tYWluIHBkZXYgbG9jayBpbiByZWFkIG1vZGUgaW4gb3JkZXIgdG8gZ2V0IHRo ZSBwZGV2LCBhbmQgZm9yDQo+IHdyaXRlcyB0byB0aGUgY29tbWFuZCByZWdpc3RlciBvciB0aGUg Uk9NIEJBUiB5b3Ugd291bGQgaGF2ZSB0bw0KPiB1cGdyYWRlIHN1Y2ggbG9jayB0byBhIHdyaXRl IGxvY2sgd2l0aG91dCBkcm9wcGluZyBpdCwgYW5kIHdlIGRvbid0DQo+IGhhdmUgc3VjaCBmdW5j dGlvbmFsaXR5IGZvciBydyBsb2NrcyBBVE0uDQo+DQo+IE1heWJlIGp1c3QgcmUtc3RhcnRpbmcg dGhlIGZ1bmN0aW9uIGtub3dpbmcgdGhhdCB0aGUgbG9jayBtdXN0IGJlDQo+IHRha2VuIGluIHdy aXRlIG1vZGUgd291bGQgYmUgYSBnb29kIHNvbHV0aW9uOiB3cml0ZXMgdG8gdGhlIGNvbW1hbmQN Cj4gcmVnaXN0ZXIgd2lsbCBhbHJlYWR5IGJlIHNsb3cgc2luY2UgdGhleSBhcmUgbGlrZWx5IHRv IGludm9sdmUNCj4gbW9kaWZpY2F0aW9ucyB0byB0aGUgcDJtLg0KDQpMb29rcyBsaWtlIG1vZGlm eV9iYXJzKCkgaXMgdGhlIG9ubHkgY2F1c2UgZm9yIHRoaXMgZXh0ZW5kZWQgbG9jay4gSQ0Ka25v dyB0aGF0IHRoaXMgd2FzIGRpc2N1c3NlZCBlYXJsaWVyLCBidXQgY2FuIHdlIHJld29yayBtb2Rp ZnlfYmFycyB0bw0Kbm90IGl0ZXJhdGUgb3ZlciBhbGwgdGhlIHBkZXZzPyBXZSBjYW4gc3RvcmUg Y29weSBvZiBhbGwgZW5hYmxlZCBCQVJzIGluDQphIGRvbWFpbiBzdHJ1Y3R1cmUsIHByb3RlY3Rl ZCBieSBkb21haW4tPnZwY2lfbG9jay4gU29tZXRoaW5nIGFraW4gdG8NCg0Kc3RydWN0IHZwY2lf YmFyIHsNCiAgICAgICAgbGlzdF9oZWFkIGxpc3Q7DQogICAgICAgIHN0cnVjdCB2cGNpICp2cGNp Ow0KICAgICAgICB1bnNpZ25lZCBsb25nIHN0YXJ0Ow0KICAgICAgICB1bnNpZ25lZCBsb25nIGVu ZDsNCiAgICAgICAgYm9vbCBpc19yb207DQp9Ow0KDQoNCj4+ID4+IEBAIC0yMTMsNiArMjI3LDcg QEAgc3RhdGljIHZvaWQgZGVmZXJfbWFwKHN0cnVjdCBkb21haW4gKmQsIHN0cnVjdCBwY2lfZGV2 ICpwZGV2LA0KPj4gPj4gICAgICByYWlzZV9zb2Z0aXJxKFNDSEVEVUxFX1NPRlRJUlEpOw0KPj4g Pj4gIH0NCj4+ID4+ICANCj4+ID4+ICsvKiBUaGlzIG11c3QgaG9sZCBkb21haW4ncyB2cGNpX3J3 bG9jayBpbiB3cml0ZSBtb2RlLiAqLw0KPj4gPg0KPj4gPiBXaHkgaXQgbXVzdCBiZSBpbiB3cml0 ZSBtb2RlPw0KPj4gPg0KPj4gPiBJcyB0aGlzIHRvIGF2b2lkIEFCQkEgZGVhZGxvY2tzIGFzIG5v dCB0YWtpbmcgdGhlIHBlci1kb21haW4gbG9jayBpbg0KPj4gPiB3cml0ZSBtb2RlIHdvdWxkIHRo ZW4gZm9yY2UgdXMgdG8gdGFrZSBlYWNoIHBkZXYtPnZwY2ktPmxvY2sgaW4gb3JkZXINCj4+ID4g dG8gcHJldmVudCBjb25jdXJyZW50IG1vZGlmaWNhdGlvbnMgb2YgcmVtb3RlIGRldmljZXM/DQo+ PiANCj4+IFllcywgZXhhY3RseSB0aGlzLiBUaGlzIGlzIG1lbnRpb25lZCBpbiB0aGUgY29tbWl0 IG1lc3NhZ2U6DQo+PiANCj4+ICAgICAyLiBXcml0aW5nIHRoZSBjb21tYW5kIHJlZ2lzdGVyIGFu ZCBST00gQkFSIHJlZ2lzdGVyIG1heSB0cmlnZ2VyDQo+PiAgICAgbW9kaWZ5X2JhcnMgdG8gcnVu LCB3aGljaCBpbiB0dXJuIG1heSBhY2Nlc3MgbXVsdGlwbGUgcGRldnMgd2hpbGUNCj4+ICAgICBj aGVja2luZyBmb3IgdGhlIGV4aXN0aW5nIEJBUidzIG92ZXJsYXAuIFRoZSBvdmVybGFwcGluZyBj aGVjaywgaWYgZG9uZQ0KPj4gICAgIHVuZGVyIHRoZSByZWFkIGxvY2ssIHJlcXVpcmVzIHZwY2kt PmxvY2sgdG8gYmUgYWNxdWlyZWQgb24gYm90aCBkZXZpY2VzDQo+PiAgICAgYmVpbmcgY29tcGFy ZWQsIHdoaWNoIG1heSBwcm9kdWNlIGEgZGVhZGxvY2suIEl0IGlzIG5vdCBwb3NzaWJsZSB0bw0K Pj4gICAgIHVwZ3JhZGUgcmVhZCBsb2NrIHRvIHdyaXRlIGxvY2sgaW4gc3VjaCBhIGNhc2UuIFNv LCBpbiBvcmRlciB0byBwcmV2ZW50DQo+PiAgICAgdGhlIGRlYWRsb2NrLCBjaGVjayB3aGljaCBy ZWdpc3RlcnMgYXJlIGdvaW5nIHRvIGJlIHdyaXR0ZW4gYW5kIGFjcXVpcmUNCj4+ICAgICB0aGUg bG9jayBpbiB0aGUgYXBwcm9wcmlhdGUgbW9kZSBmcm9tIHRoZSBiZWdpbm5pbmcuDQo+DQo+IE1p Z2h0IGJlIGdvb2QgdG8gcHV0IHBhcnQgb2YgdGhlIGNvbW1pdCBtZXNzYWdlIGluIHRoZSBjb2Rl IGNvbW1lbnQsDQo+IGp1c3Qgc2F5aW5nIHRoYXQgdGhlIGxvY2sgbXVzdCBiZSB0YWtlbiBpbiB3 cml0ZSBtb2RlIGlzIG5vdCB2ZXJ5DQo+IGluZm9ybWF0aXZlLg0KPg0KPiAvKg0KPiAgKiBUaGUg PGxvY2stbmFtZT4gcGVyIGRvbWFpbiBsb2NrIG11c3QgYmUgdGFrZW4gaW4gd3JpdGUgbW9kZSBp bg0KPiAgKiBvcmRlciB0byBwcmV2ZW50IGNoYW5nZXMgdG8gdGhlIHZQQ0kgZGF0YSBvZiBkZXZp Y2VzIGFzc2lnbmVkIHRvDQo+ICAqIHRoZSBkb21haW4sIHNpbmNlIHRoZSBmdW5jdGlvbiBwYXJz ZXMgc3VjaCBkYXRhLg0KPiAgKi8NCj4NCg0KQWdyZWUuIEFsc28sIEknbGwgYWRkIGEgY29ycmVz cG9uZGluZyBBU1NFUlQoKQ0KDQotLSANCldCUiwgVm9sb2R5bXly From xen-devel-bounces@lists.xenproject.org Thu Jun 22 21:18:59 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 21:18:59 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554163.865201 (Exim 4.92) (envelope-from ) id 1qCRhY-0005w0-NX; Thu, 22 Jun 2023 21:18:48 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554163.865201; Thu, 22 Jun 2023 21:18:48 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCRhY-0005vt-JE; Thu, 22 Jun 2023 21:18:48 +0000 Received: by outflank-mailman (input) for mailman id 554163; Thu, 22 Jun 2023 21:18:46 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCRhW-0005vg-TA for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 21:18:46 +0000 Received: from mx0b-0039f301.pphosted.com (mx0b-0039f301.pphosted.com [148.163.137.242]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 5ecbb3a3-1142-11ee-b237-6b7b168915f2; Thu, 22 Jun 2023 23:18:45 +0200 (CEST) Received: from pps.filterd (m0174681.ppops.net [127.0.0.1]) by mx0b-0039f301.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 35MFWGqo031937; Thu, 22 Jun 2023 21:18:38 GMT Received: from eur05-db8-obe.outbound.protection.outlook.com (mail-db8eur05lp2108.outbound.protection.outlook.com [104.47.17.108]) by mx0b-0039f301.pphosted.com (PPS) with ESMTPS id 3rcs1f1b1w-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Thu, 22 Jun 2023 21:18:37 +0000 Received: from VI1PR03MB3710.eurprd03.prod.outlook.com (2603:10a6:803:31::18) by PR3PR03MB6489.eurprd03.prod.outlook.com (2603:10a6:102:7c::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.24; Thu, 22 Jun 2023 21:18:35 +0000 Received: from VI1PR03MB3710.eurprd03.prod.outlook.com ([fe80::10c0:3ca8:e226:2335]) by VI1PR03MB3710.eurprd03.prod.outlook.com ([fe80::10c0:3ca8:e226:2335%4]) with mapi id 15.20.6521.024; Thu, 22 Jun 2023 21:18:35 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 5ecbb3a3-1142-11ee-b237-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=UTDZZX7qU7iNroh1eTaz4T1g+Jt7qns9eOJ4rBt0IlAQ7PUtHlsz67GLAbDlQTWvy+5M+g1bYdWFQ6CjfiCNqlcGkRZZbB5gMuC8+6oVDTIZDPUKJWTYDXT/Nh8MdK29//6QVOwh/OJlr3maoRfv5OVV9xTN1CnJO/JBtrB3eDw5bfJ8YQ6cK8fr/NL9/w/vu65UczjgI1p632PItqaRw5c7InV3ohKb++sZpeu/UyCshhpp2Z9mm6WkTeSVEYImwyp3Q/9vDtb7UKhOdQelrZGDeZ51WE/iuLBUo9c64UAKgRfO+OQfnpGu5QP3XsJmS6+vwXk3jWSbefLcQ258tg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=0hL1RkDsAXcoZmu4i5wm3nL9aMbgRi24gx7koHDvWro=; b=ZKy8H5MAcP/Ma9AojITdfTFE79aiRuhjBFFJ1sc9axlfYL7184piW57cY2/bSildVpAvUQ/+qt2r0DryawCOKcqfTxD2/aJVg1iAPhxzMvkoAlphU9lpllS1Eu2J4uqkKlp/x1HtlAbYPNAZ6entOJbDMBMEguWYNNEbrCiCZeAh6M4Mw+t/lX62K2N73ze17AEU1AANKG1LuJ1aXkGe1J9d+yaq+3gsAdbrf9vLt2HnLTsVxP0PduwR9eaCOHYaZX5BsfjHWXBP1jGLzwTkkd/6sgypGA04jGCJn7eBJuMbZ5Pd/NOxa9HjXTk9CCPXbUEhmTyqUIGDA6yayl9EYw== 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 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=epam.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=0hL1RkDsAXcoZmu4i5wm3nL9aMbgRi24gx7koHDvWro=; b=mwf7XaJSOZ6xQ0ADGXuJqOkXkTPPq8vkLsForvP1RooCQClQPuv3eVsCdJMNMGNd0EwWZ++LQPcdj7BA2PAt98i2jD7bsmIewUh8SxPjwGUQv1pMCiEkYR5eHzPR0TySCLNPtWyFJKEkxLGV/SWKSyTlaf9sZYYDULJEyOsm1ZzPZSunga3rZjfaKPIhikt4Z3NKvbT5tLmxxYnEF0HwSTKMqej5tVxkxWQTNxPm9op50c5k+1eTPYjNw++EvEIWUWvGJe7NxLeG0akWIBsacNkjP7gLbxCm+4cEqyXMbwueFxL7WXBfm4G5D3DUJuhMmK0vbIhKJ6VFgPi68CS9qw== From: Volodymyr Babchuk To: Stewart Hildebrand CC: "xen-devel@lists.xenproject.org" , Oleksandr Andrushchenko , Jan Beulich , Andrew Cooper , =?iso-8859-1?Q?Roger_Pau_Monn=E9?= , Wei Liu , George Dunlap , Julien Grall , Stefano Stabellini , Paul Durrant Subject: Re: [PATCH v7 01/12] vpci: introduce per-domain lock to protect vpci structure Thread-Topic: [PATCH v7 01/12] vpci: introduce per-domain lock to protect vpci structure Thread-Index: AQHZneJZdDE+HOoSO0y6VB9l0x1hDq+ULLMAgAM1noA= Date: Thu, 22 Jun 2023 21:18:35 +0000 Message-ID: <87bkh7nql1.fsf@epam.com> References: <20230613103159.524763-1-volodymyr_babchuk@epam.com> <20230613103159.524763-2-volodymyr_babchuk@epam.com> <6418b3bf-5b7e-3c12-52d6-534bf791617a@amd.com> In-Reply-To: <6418b3bf-5b7e-3c12-52d6-534bf791617a@amd.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: user-agent: mu4e 1.8.9; emacs 28.2 x-ms-publictraffictype: Email x-ms-traffictypediagnostic: VI1PR03MB3710:EE_|PR3PR03MB6489:EE_ x-ms-office365-filtering-correlation-id: be719b83-2b44-4f44-395c-08db73663d28 x-ld-processed: b41b72d0-4e9f-4c26-8a69-f949f367c91d,ExtAddr x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: avaHSGqIIvuheCeURX9uZLo4JbEZiyoNcB9XKre54/rgBq9/ILmIO0x9JrbSd5xow9HJB9sawnHtnkjMNlAQbvMaFCZhneheRI7ZMurL61T8h6GITk/zBZaqTXUzhUUsf0jWr6FnkBw3sFORcVN14mfmT7QPNrm7A7l8YDQ/Lk/jPm5sSGfWL9D7tU6KJDEEY18g4DvMETAObRjA+VNfHdBgzJuBZqvKMyhTSl1qp8GEwyYApzb1GJojHceUW3ipXBRbrMOuyA8ACkP0Tu7JrG3nfOVcui+oYQaU/IluoELw8AA9wpK7mlL9SK8xi+BcWy7d3m/EdOLM8j8ZRh3xIvQotcrkrkzH2axkgSRdkpyeb7Koy2eRnBGUIKOGA7Jb1G4V8O+VxNixb0p7K/p5qXIMLOJXuVn2ebMQjYnAvQgL2n7tkBYcF9eEoAJbAO0OJjTvkchidHwhGga1fSyG08X6a7dh1PEr7tTmYKc6cukMSBuyNzAlYNbnF8UHd7oJZZ7T46HYGxZla/D3H8dZCPhxiy5M7kwfH2pMY3vbcTiEiBr19ollQIZ4osPPsVgCPCmCNwLTmV7Kzb6Xj3byBkQUgw+Op+EipLNaIaSYGBIWKfIF7lLyJNwlC43hVOCa x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VI1PR03MB3710.eurprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(376002)(396003)(346002)(136003)(366004)(39860400002)(451199021)(7416002)(5660300002)(36756003)(8936002)(8676002)(122000001)(38100700002)(2906002)(38070700005)(478600001)(186003)(6486002)(71200400001)(54906003)(2616005)(86362001)(55236004)(53546011)(26005)(6512007)(6506007)(64756008)(66446008)(66476007)(66946007)(66556008)(6916009)(83380400001)(91956017)(76116006)(316002)(41300700001)(4326008);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?iso-8859-1?Q?Ykzg9Ex+xx+k4bv8ICyTkG7DPXbAy1v+3euQIm/DjD2d6pPKlmF7EzieRW?= =?iso-8859-1?Q?0X0PWKygOxCLKl3+rlxWgzCzuopPcuoKxSjQNQoK/3jyvG4jpZzoehMjaW?= =?iso-8859-1?Q?TxQYyRWMM3rHpk0OEqStgLaVli8MIkT7hzZSu0S+QYrQFVmu05xW+6su/l?= =?iso-8859-1?Q?y1sJXNbszWtXBzEx6UDaZBK1jPAnEUJyykWBYdS/iMJAQfn/KmCPgW/jlz?= =?iso-8859-1?Q?EqysiLZ6znTkQkzkCTt/S8t6emz91bsJ9IYLha0EyHtjQs9jdcq9ZNqdnO?= =?iso-8859-1?Q?K+Tfk19C9fJweTLeI+l8KR/v7yG6d7PPBQrDt5u9z2tgYmh5T2alNXaGeL?= =?iso-8859-1?Q?YmI9ouHiNWsTE58SP/GOgqoCv0UDkXg3dDSjZf14n6L2coxOJm3UFfTEL6?= =?iso-8859-1?Q?jGLF2/iSc9vxFpiMxlzYfaTvzqc1FikburCdLVA0DsGSf33DknavW5LFzr?= =?iso-8859-1?Q?aG52cqNrU4H4Vf4uYTABSFVOp6tFU8lRgpPoHZLSaycPCeOqLQk031pzNc?= =?iso-8859-1?Q?6YJnZ+uqmSSTZpu7BvFbF+qTRzj66BnOvKxnq42D7sLFmOWGTNxh7PEYeT?= =?iso-8859-1?Q?wzvCnBgcdlNVF3apXKzcTJLbVfDxQKGNEh20TW1tG7HGbnBjgVwW2LGP1L?= =?iso-8859-1?Q?oE++CEwa+Dvw8d21PLkM9RRKU7boJPLh5RwkRqATTcOZE2BEGn8v6psYNc?= =?iso-8859-1?Q?D50Q63OE19yvHJQW0lad+RgPxi9MIksU6Hdw71h7GS1cEyfjEayr6vAueZ?= =?iso-8859-1?Q?65PNACkqNOeqRmGxLfLTaMOu7/uQTd4Z/KrIXI6zeMDxK86tcvtV+js+Ub?= =?iso-8859-1?Q?HVcYct2joJiUrr8UvSsycWY+61IxDXF1B6+K15dYYGq+fp+n78xPVlSjc6?= =?iso-8859-1?Q?/ld/E3qxzIEGOu300TGUXhf3EkJonwZwHB6TZIVNp1HVZcBglbLw8ytgBz?= =?iso-8859-1?Q?CLcEBnQx+EvRsEx648AeG8VFO3WmiPo6XwndhCrl4NXytcKn9tceTlTdWV?= =?iso-8859-1?Q?py7vi57IgFn70mrssUlXVPsb8ZZNLfpKNI0nLvVjB/MsK0ZhFyGTQ2/VZ8?= =?iso-8859-1?Q?c5WJskC2LDu2va2bclxRb11Egtm/uugCjVZqfF9kOgyjinNYj13FQcweyP?= =?iso-8859-1?Q?JcuI+/s4mgRIfltk9i8EN0LPKY0z6wtLuv59tUJALMROk1MJIkcLapc5Td?= =?iso-8859-1?Q?fCUt5cmNv7WhM8n4vguCGta4OTN3UVXATVHyAdLW8kVxoDUon81N0thxCc?= =?iso-8859-1?Q?g/5VPrc088M8b9R/+RKL0O8lOVB4Y80Qh0FuiH5fiWjhr+430mnOauQn6k?= =?iso-8859-1?Q?rc1M8eCSvEJ9ejd8NMHmLtPQlLKGI/zwWUuVfynDpYg33yVQutzvUhkw12?= =?iso-8859-1?Q?c6EBOAkbhLIzdaXhdLBCyIpFaVk6Qz5fj+WLyXNLk2QhLlPQehF4Xfu4hk?= =?iso-8859-1?Q?INTZIOX9IoJfAU4KrIrbB0VNabXEGC3bwmJBH1CEnaNQesIHEeF9GO+FRz?= =?iso-8859-1?Q?P+pbnmLecpcTeyYZlgcu+x3QyamBIW5z6AxuJjBeBopFx9952XUoLbZpLR?= =?iso-8859-1?Q?8X+BJiQ3YMQg9LrKdTNDDxdNWsZR+3rljKrIe9UXb6etMnOwjcXycwNFPL?= =?iso-8859-1?Q?jP9B5+gZCeJzx6ES9hUi1ueXVjp+D9f4IbcYqXNzF8KXlnpu2odgI0Uw?= =?iso-8859-1?Q?=3D=3D?= Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-OriginatorOrg: epam.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: VI1PR03MB3710.eurprd03.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: be719b83-2b44-4f44-395c-08db73663d28 X-MS-Exchange-CrossTenant-originalarrivaltime: 22 Jun 2023 21:18:35.2714 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: b41b72d0-4e9f-4c26-8a69-f949f367c91d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: nlm9rQReI2ThnkhDiW/kuqzuRkmDerPS+5Ik9Mvp2tpSGF4DaXbBiTjR8a6dMOaYoUlmSpM2u6PNkAr7HK5ouQPTyiNjwMrUXN/RLO/UvEs= X-MS-Exchange-Transport-CrossTenantHeadersStamped: PR3PR03MB6489 X-Proofpoint-GUID: lwNpx2uzOno15TJlrcjDR04iia8XanEz X-Proofpoint-ORIG-GUID: lwNpx2uzOno15TJlrcjDR04iia8XanEz X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.254,Aquarius:18.0.957,Hydra:6.0.591,FMLib:17.11.176.26 definitions=2023-06-22_16,2023-06-22_02,2023-05-22_02 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 priorityscore=1501 mlxlogscore=999 mlxscore=0 impostorscore=0 phishscore=0 adultscore=0 bulkscore=0 spamscore=0 lowpriorityscore=0 clxscore=1015 malwarescore=0 suspectscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2305260000 definitions=main-2306220181 Hi Stewart, Stewart Hildebrand writes: > On 6/13/23 06:32, Volodymyr Babchuk wrote: > > ... > >> diff --git a/xen/drivers/vpci/vpci.c b/xen/drivers/vpci/vpci.c >> index 652807a4a4..1270174e78 100644 >> --- a/xen/drivers/vpci/vpci.c >> +++ b/xen/drivers/vpci/vpci.c >> @@ -38,20 +38,32 @@ extern vpci_register_init_t *const __end_vpci_array[= ]; >>=20 >> void vpci_remove_device(struct pci_dev *pdev) >> { >> - if ( !has_vpci(pdev->domain) || !pdev->vpci ) >> + struct vpci *vpci; >> + >> + if ( !has_vpci(pdev->domain) ) >> return; >>=20 >> - spin_lock(&pdev->vpci->lock); >> + write_lock(&pdev->domain->vpci_rwlock); >> + if ( !pdev->vpci ) >> + { >> + write_unlock(&pdev->domain->vpci_rwlock); >> + return; >> + } >> + >> + vpci =3D pdev->vpci; >> + pdev->vpci =3D NULL; > > Here we set pdev->vpci to NULL, yet there are still a few uses > remaining after this in vpci_remove_device. I suspect they were missed > during a s/pdev->vpci/vpci/ search and replace. > Yes, you are right. Thank you, I'll fix this in the next version. >> + write_unlock(&pdev->domain->vpci_rwlock); >> + >> while ( !list_empty(&pdev->vpci->handlers) ) > > pdev->vpci dereferenced here > >> { >> - struct vpci_register *r =3D list_first_entry(&pdev->vpci->handl= ers, >> + struct vpci_register *r =3D list_first_entry(&vpci->handlers, >> struct vpci_register= , >> node); >>=20 >> list_del(&r->node); >> xfree(r); >> } >> - spin_unlock(&pdev->vpci->lock); >> + >> if ( pdev->vpci->msix ) > > pdev->vpci dereferenced here > >> { >> unsigned int i; >> @@ -61,29 +73,33 @@ void vpci_remove_device(struct pci_dev *pdev) >> if ( pdev->vpci->msix->table[i] ) > > pdev->vpci dereferenced here, and two more above not shown in the diff co= ntext > >> iounmap(pdev->vpci->msix->table[i]); > > pdev->vpci dereferenced here > >> } >> - xfree(pdev->vpci->msix); >> - xfree(pdev->vpci->msi); >> - xfree(pdev->vpci); >> - pdev->vpci =3D NULL; >> + xfree(vpci->msix); >> + xfree(vpci->msi); >> + xfree(vpci); >> } --=20 WBR, Volodymyr= From xen-devel-bounces@lists.xenproject.org Thu Jun 22 21:28:01 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 21:28:01 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554170.865211 (Exim 4.92) (envelope-from ) id 1qCRqN-0007hU-Qz; Thu, 22 Jun 2023 21:27:55 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554170.865211; Thu, 22 Jun 2023 21:27:55 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCRqN-0007hN-Mi; Thu, 22 Jun 2023 21:27:55 +0000 Received: by outflank-mailman (input) for mailman id 554170; Thu, 22 Jun 2023 21:27:05 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCRpZ-0007gR-GX for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 21:27:05 +0000 Received: from 18.mo583.mail-out.ovh.net (18.mo583.mail-out.ovh.net [178.33.45.10]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 877492c8-1143-11ee-8611-37d641c3527e; Thu, 22 Jun 2023 23:27:03 +0200 (CEST) Received: from director10.ghost.mail-out.ovh.net (unknown [10.108.4.105]) by mo583.mail-out.ovh.net (Postfix) with ESMTP id A764F27858 for ; Thu, 22 Jun 2023 21:27:02 +0000 (UTC) Received: from ghost-submission-6684bf9d7b-mp66h (unknown [10.110.171.34]) by director10.ghost.mail-out.ovh.net (Postfix) with ESMTPS id 12A471FE05; Thu, 22 Jun 2023 21:27:02 +0000 (UTC) Received: from 3mdeb.com ([37.59.142.109]) by ghost-submission-6684bf9d7b-mp66h with ESMTPSA id 66iSAKa8lGR8TQYAaUa8gQ (envelope-from ); Thu, 22 Jun 2023 21:27:02 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 877492c8-1143-11ee-8611-37d641c3527e Authentication-Results:garm.ovh; auth=pass (GARM-109S003bdf9c6d8-582b-49ab-9639-01950cdbbe50, 707C7695D002C7C9BEAE75D82900B34FBBE6B44F) smtp.auth=piotr.krol@3mdeb.com X-OVh-ClientIp:185.220.65.170 Message-ID: <9af446af-07e2-f518-4b35-81f8ec2b6ab9@3mdeb.com> Date: Thu, 22 Jun 2023 23:26:55 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Content-Language: en-US To: qubes-users@googlegroups.com, xen-devel@lists.xenproject.org From: =?UTF-8?Q?Piotr_Kr=c3=b3l?= Autocrypt: addr=piotr.krol@3mdeb.com; keydata= xsFNBFlSUoABEAC04eaat4at1ooZCnvfND8yJahMuTmjHuEQdX1obxyGG89gX/JmNebuPn7p O1ZtMDSpznnzXiUa/h2Gtb8Vut7x4IYWlP80Gvaomftx3fSbx+AJyfejkCidTpF3o6rfApK8 ueyV8dVA8DdWzxtQGg7fhhfBvnSubxEb59gHozpfS5zoK5i2e5TjQU7E7JfFBpRoLsYIhZoZ qXuGc/NRjrd+mp9pbtH1y5GQhVbjCvmkEZHkIbvVuNvntlpeZXLV8R4A+21/ob+dReFNXNrN 8SMKvjR0F+cyGvlOG2P0OIe1h50bvr0bgF/a91TT5h4+13rYFUMXvnW4h+v6PvsrFWIs5PXl +RCmFH385ZsdmFjVuCwwfeSwFoO1E2rS8aTJwae7GEsGpnxrhD70ZHValHmSoUnXkX5eeSFh 4DjmYQWpPxjvKMAiiWTsLHSqyzRwpDvJQy+ZfjttR/ltGBkG4FOOO20QRAsaeSfntj4cplSF I9FJ4m5mpnFk1zxTpDRTz1fktesdYp+pW4ZkxORqgy/I3kAeWaZ1YdokAvgqcfDZGRNt2CUr FSr635dLWNBJc6tCt2Fpbzo1iMXderMmGuIyXpBpEVlDzNmAAhLMh5Yz/leStrvTYO8rCWkA aqz01NyvbeCi1uGygG4pXdhOXnArtuzYuDFGVVvgW0qFQZqXIQARAQABzSJQaW90ciBLcsOz bCA8cGlvdHIua3JvbEAzbWRlYi5jb20+wsGUBBMBCAA+AhsjBQsJCAcCBhUICQoLAgQWAgMB Ah4BAheAFiEE4DCbLYWmfoRjKeNLsu5x6WeqnkwFAmK433cFCQtHwHcACgkQsu5x6Weqnkz3 bg/+Kd9bh6224IJCrtMO5mtIJBz8iY0DOd36a6RN9rEtNM7pSw+CW7d7BeXZhMEbP5roOzr+ ubSPNMBf+UVK5zxx7AlCW6JkvX1d1tOoEW/zKZbBjN4g/0aojxG0jCJxg+OGFvEOXCwDy0Ob OVMOMpsUyg+iyP0G1r84J1Rb5Aijnmq/ZEW5IKXUChwtJfjjR6FpGWzKDXWKSFIxhJVmT3Ym pQ+Yv6e4BJqSTeEhVxS8wCvRH0SJO3/6eQDGz14hRN5H+IjihXACRdxn9zmJ0HiQTw8o8Qxg qHN5REvTs0jbgKDpteP73wGFAogB9Q6h6gDjOTBorPc8H0cgnF3kGlYUs4ENAZcR3Mxx45u0 E9TlcIAnWIZhdBZqJJvcVWU4BbIxWQ+c1iLaI7P7uePTR8zgSWpJknTimm2kMN6ToAfzq1m6 EeJ6EwutgAMHtW0bxlPTh7gTNxDTLcS4LBC/ZXU8ut/o64REh/Qn0sM5/Y6dM2+Co6fCkLEP zvaaCq4Hxk/LA+GbDEmSlVq0rP6jOqWHEl1Tmz81k0LGWZ+Zc4AEQCh05W417FrUyW47QCpE 7IxmrkDU+H8MvwUG+12P9ohPpGKTiWE9jDd+MdQB7hAHYffSZVUTYEcd96pNIkLRUzHJA8SC oMkakFwhGNfMpgzGKRt9wwtxcfJZIzd+1jzoyL/OwU0EWVJSgAEQANdo3HFV+E34I9H4m345 QPh1Wxubwje1MkoP5m9NI5SPNaZXXJjrr6sjwvPjEYOPi1ndBErM13+bA0ER6pNKk15zl8cI nG7B2pMOvEcWWuPLXXfXimR0R5PDnZ4UTs4ePeceVkjH8kblLQ+a735e7PraKINq8KawxynB 5a8zwnhW4T6ZUYbm0PDFMp2OkUqGjxTCyg6Znesb5EYPruOQEj3cpm8s+W6XFKkx6SDy1s5/ kOufoRmFLcFnUw4gCuI1xaGIdzhn4QX4sJGWs8Z2xw8xqFdNtTv4rvg3jVfmaepcn3B0A3SR WkaPtbdZYrOXkyMyhGv9XIAwoFdPOZAkZ5oeLF2EMSsJpPdWUKau0sfZUnaofsan7A3nC6gC aTEwsvklswOKuDr4uPWQ+Xsv49cfKLi6x58n8es2ffRo9wEgW2kEpohRRH6d1TBuK2bkl605 8Jzo0hQyRj2si9DACCFvGpu+JosIjoDEXclmPnaqsoWBz12smv+o5/fBVldhSm+bPbASkYYm zmnrfTvDgnQNZLczbfpANVeUHZTicxA1QShR+uuUE6qWshbrHlXiBaPPfX0Ax0pO39hZJWka sCecRTLFXH0XKPxH64OOoOEn0CLUEMIit3roRBprFwOTqjGxyXBWV4XeKoCrikTb7LFzngYJ mjRdlVqR781SjD9PABEBAAHCwXwEGAEIACYCGwwWIQTgMJsthaZ+hGMp40uy7nHpZ6qeTAUC YrjeYQUJC0e/YQAKCRCy7nHpZ6qeTEF2EACDf04b+LvbUehtv5JILMTbhWO4S5cwCiNKy6em P2NUk9GrJXDCHPpnQT/fMJEBijduSPGYB74b+MurBTNKqrRSeHv5AC5PB143jjzAQ9sloVHG Q1vHUtXVK7a1JxllHR67eaSyZhSmS/xgWMmJBOIfzFykLaglA7H6NH6R6t3LmB/4SUwEU8qz YzL0bS9lQQ4E9E5wopbHO1Vo1BczdsU6iOXmGprmgZhH3WCMxa7ZD31qRhBE3UnFuTa+Gs1A pm2Ncm/jVRRtNGfHdUGY7wVgtdaNm5HBuHSGaQ3hiSQJKDfIea3Wmnkr6w7Ss9ByYa1l/hWs rqRIKbWQ1P0RbTX00b6ddDhKc0fruohXGpXyfh6f77T1orYlYttv9YrWK1FQUc9CvKottAa2 vDLXLtyPZYZymt3Yn2gQHMIeeQHPD/2tE0f5x0LqFTxj6qDUKdbiuuHbmyQ8Ip4prJaIqJ90 9JUyGx6zXxSes3DajMQKLFAv6/vz84CrcLdocPY1gRKFYvH2BqbM9hTiWIHo/276Yvkov2kB Ahp3V7ZzI+6UWsicQP1/0dSttmkmZdFfGqyXR/q4cSvnOnjBQMtWk/pvusHtRQVUTqkMagjE z90381Goy49GYEWlaa4Vmd1Qy1Q0Wk+8vW/KYXbxoYQgsljioLxuU3LFmBu+l+yHJhlKHQ== Subject: Informal Qubes OS/Xen/Dasharo pPub Meetup in Prague! Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="------------XVTrMuV4qxSaFYNpAoRq0GnP" X-Ovh-Tracer-Id: 13593552529417572441 X-VR-SPAMSTATE: OK X-VR-SPAMSCORE: 0 X-VR-SPAMCAUSE: gggruggvucftvghtrhhoucdtuddrgedvhedrgeeguddgudeiudcutefuodetggdotefrodftvfcurfhrohhfihhlvgemucfqggfjpdevjffgvefmvefgnecuuegrihhlohhuthemucehtddtnecunecujfgurhepkfffgggfvffhufgtsehgtderredtfeejnecuhfhrohhmpefrihhothhrucfmrhpklhcuoehpihhothhrrdhkrhholhesfehmuggvsgdrtghomheqnecuggftrfgrthhtvghrnheptedtkeeiieeugfekuddttdehuedvheeuudfgtdfgfeekvedtleduveetjeefveeunecuffhomhgrihhnpehgohhordhglhdpuggrshhhrghrohdrtghomhdpfehmuggvsgdrtghomhenucfkphepuddvjedrtddrtddruddpudekhedrvddvtddrieehrddujedtpdefjedrheelrddugedvrddutdelnecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehinhgvthepuddvjedrtddrtddruddpmhgrihhlfhhrohhmpeeophhiohhtrhdrkhhrohhlseefmhguvggsrdgtohhmqedpnhgspghrtghpthhtohepuddprhgtphhtthhopeigvghnqdguvghvvghlsehlihhsthhsrdigvghnphhrohhjvggtthdrohhrghdpoffvtefjohhsthepmhhoheekfedpmhhouggvpehsmhhtphhouhht This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --------------XVTrMuV4qxSaFYNpAoRq0GnP Content-Type: multipart/mixed; boundary="------------LjYyS0qa9iWZ07tdAgN0iLdq"; protected-headers="v1" From: =?UTF-8?Q?Piotr_Kr=c3=b3l?= To: qubes-users@googlegroups.com, xen-devel@lists.xenproject.org Message-ID: <9af446af-07e2-f518-4b35-81f8ec2b6ab9@3mdeb.com> Subject: Informal Qubes OS/Xen/Dasharo pPub Meetup in Prague! --------------LjYyS0qa9iWZ07tdAgN0iLdq Content-Type: multipart/mixed; boundary="------------9Zw07Vx8XqIVrVR6w0MPGpO8" --------------9Zw07Vx8XqIVrVR6w0MPGpO8 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: base64 SGksDQpJZiB5b3UgYXR0ZW5kIFhlbiBTdW1taXQgb3IgRW1iZWRkZWQgT3BlbiBTb3VyY2Ug U3VtbWl0LCB5b3UgbWF5IHdhbnQgdG8gDQpqb2luIGVzdGVlbWVkIFF1YmVzIE9TLCBYZW4s IGFuZCBEYXNoYXJvIGVudGh1c2lhc3RzISBXZSBhcmUgdGhyaWxsZWQgdG8gDQppbnZpdGUg eW91IHRvIGFuIGV2ZW5pbmcgdGhhdCBjb21iaW5lcyB0aGUgd2lzZG9tIG9mIGN5YmVyc2Vj dXJpdHkgd2l0aCANCnRoZSBkZWxpZ2h0IG9mIGNhbWFyYWRlcmllLiBMZXTigJlzIGNoZXJp c2ggcHJpdmFjeSwgc2VjdXJpdHksIGFuZCBhIGdvb2QgDQpvbOKAmSBwaW50IHRvZ2V0aGVy IQ0KDQpXaGVyZT8NClJlc3RhdXJhY2UgVSBCYW5zZXRoxa8NClTDoWJvcnNrw6EgMzg5LzQ5 LA0KMTQwIDAwIFByYWhhIDQtTnVzbGUsIEN6ZWNoIFJlcHVibGljDQpHb29nbGUgTWFwcyBM aW5rIFsxXS4NCg0KUHJveGltaXR5Pw0KQSBtZXJlIDEyLW1pbnV0ZSB3YWxrIGZyb20gdGhl IFByYWd1ZSBDb25ncmVzcyBDZW50ZXIgd2hlcmUgRU9TUyBpcyANCnRha2luZyBwbGFjZS4N Cg0KV2hlbj8NCjE5OjAwICg3OjAwIFBNKSBvbiBTdW5kYXksIDI1dGggSnVuZQ0KDQpTdGF5 IEluZm9ybWVkDQpGb3IgcmVhbC10aW1lIHVwZGF0ZXMsIGNoYW5nZXMsIGFuZCBjb21tdW5p Y2F0aW9uLCB0aGUgb2ZmaWNpYWwgTWF0cml4IA0KY2hhbm5lbCBpcyB0aGUgcGxhY2UgdG8g YmUgWzJdLg0KDQpXaHkgQXR0ZW5kPw0KDQotIEVuZ2FnZSBpbiB0aG91Z2h0LXByb3Zva2lu ZyBkaXNjdXNzaW9ucyBvbiBjdXR0aW5nLWVkZ2UgZGV2ZWxvcG1lbnRzIA0KaW4gUXViZXMg T1MsIFhlbiwgYW5kIERhc2hhcm8uDQotIFVucmF2ZWwgdGhlIG15c3RlcmllcyBvZiBzZWN1 cmluZyBzeXN0ZW1zIGFuZCBwcmVzZXJ2aW5nIHByaXZhY3ksIGFsbCANCndoaWxlIHNpcHBp bmcgeW91ciBmYXZvcml0ZSBiZXZlcmFnZS4NCi0gRXhjaGFuZ2UgaWRlYXMgd2l0aCBsaWtl LW1pbmRlZCBpbmRpdmlkdWFscyB3aG8gdW5kZXJzdGFuZCB0aGUgc2hlZXIgDQppbXBvcnRh bmNlIG9mIGZvcnRpZnlpbmcgb3VyIGRpZ2l0YWwgbGl2ZXMuDQotIENyYWNrIHRoZSBjb2Rl IHRvZ2V0aGVyIGluIGEgY296eSwgY29udml2aWFsIGF0bW9zcGhlcmUgYW5kIG1heWJlIGV2 ZW4gDQpmb3JnZSBuZXcgYWxsaWFuY2VzLg0KDQpDYWxsaW5nIGFsbCBrZXlib2FyZCB3YXJy aW9ycywgY3liZXIgZ3VhcmRpYW5zLCBhbmQgZ3VhcmRpYW5zIG9mIHByaXZhY3kgDQotIHRo aXMgaXMgd2hlcmUgYmluYXJ5IG1lZXRzIGJhcmxleSBhbmQgZmlyZXdhbGxzIG1lZXQgZmly ZXdhdGVyIQ0KDQpNYXJrIHlvdXIgY2FsZW5kYXJzLCBhbmQgam9pbiBmb3JjZXMgdG8gZm9y dGlmeSBvdXIgZGlnaXRhbCBmcm9udGllcnMhDQoNClsxXSBodHRwczovL2dvby5nbC9tYXBz L1RpZjNqNHFMNnlKdEtyeTE5DQpbMl0gaHR0cHM6Ly9kYXNoYXJvLmNvbS9ldmVudHMvY2hh dA0KDQpCZXN0IFJlZ2FyZHMsDQotLSANClBpb3RyIEtyw7NsDQpGb3VuZGVyDQpHUEc6IEIy RUU3MUU5NjdBQTlFNEMNCmh0dHBzOi8vM21kZWIuY29tIHwgQDNtZGViX2NvbQ0K --------------9Zw07Vx8XqIVrVR6w0MPGpO8 Content-Type: application/pgp-keys; name="OpenPGP_0xB2EE71E967AA9E4C.asc" Content-Disposition: attachment; filename="OpenPGP_0xB2EE71E967AA9E4C.asc" Content-Description: OpenPGP public key Content-Transfer-Encoding: quoted-printable -----BEGIN PGP PUBLIC KEY BLOCK----- xsFNBFlSUoABEAC04eaat4at1ooZCnvfND8yJahMuTmjHuEQdX1obxyGG89gX/Jm NebuPn7pO1ZtMDSpznnzXiUa/h2Gtb8Vut7x4IYWlP80Gvaomftx3fSbx+AJyfej kCidTpF3o6rfApK8ueyV8dVA8DdWzxtQGg7fhhfBvnSubxEb59gHozpfS5zoK5i2 e5TjQU7E7JfFBpRoLsYIhZoZqXuGc/NRjrd+mp9pbtH1y5GQhVbjCvmkEZHkIbvV uNvntlpeZXLV8R4A+21/ob+dReFNXNrN8SMKvjR0F+cyGvlOG2P0OIe1h50bvr0b gF/a91TT5h4+13rYFUMXvnW4h+v6PvsrFWIs5PXl+RCmFH385ZsdmFjVuCwwfeSw FoO1E2rS8aTJwae7GEsGpnxrhD70ZHValHmSoUnXkX5eeSFh4DjmYQWpPxjvKMAi iWTsLHSqyzRwpDvJQy+ZfjttR/ltGBkG4FOOO20QRAsaeSfntj4cplSFI9FJ4m5m pnFk1zxTpDRTz1fktesdYp+pW4ZkxORqgy/I3kAeWaZ1YdokAvgqcfDZGRNt2CUr FSr635dLWNBJc6tCt2Fpbzo1iMXderMmGuIyXpBpEVlDzNmAAhLMh5Yz/leStrvT YO8rCWkAaqz01NyvbeCi1uGygG4pXdhOXnArtuzYuDFGVVvgW0qFQZqXIQARAQAB zSJQaW90ciBLcsOzbCA8cGlvdHIua3JvbEAzbWRlYi5jb20+wsGUBBMBCAA+FiEE 4DCbLYWmfoRjKeNLsu5x6WeqnkwFAllSUoACGyMFCQlmAYAFCwkIBwIGFQgJCgsC BBYCAwECHgECF4AACgkQsu5x6WeqnkzZWxAAmLBGgwBvMCplJ3MA1ETjDIM5dOPZ yShV+YvClgQntRuwjTBT+XS2U6ws/ojYGDKsMx2Pt4aC8jEuKR+ry8x5zWweN1q5 Ed7Gg04/8qO6sWLc8IqRXUFoaCjseo9w0ntmLwQf4klkoiikv57c0LeRb9/a2TcJ 1g8ckN5H+UhK9Tb+NfOndumIPU3g49b5UtA/XbJFjKy1Tf+eN9Y1gYbYnO4aNRJ1 93OK8y159pmzNo/o/Z14zTOK42fcW+zM35i04by9CjkEDdXy3098M4xrTWrMHxZk ts9jVa5WD34L4sIhz4FWOg8lVsWahEFiyz0F8nv7N7U2F8AVsU8f1TVMJFpt4qdX Yh4xFns0WA1mdTUYTARkLt+tSQmgW+ioWuTIixTJfnFlqmNGnbhXynYMk9peVvnS YQeUI9peYcm3HIRO+obXtMQo3s+Zp2XKCYT/zu+8f7i5bWaoHxEflOnztQSdfgK0 kd0z41p529VM8LFSqYXCHmrJidSwk0rhniescclCyspYloJxwZi/Z0JeXMHbXeRa TR6vJSUUBYRTcmuekU0+z1bqNLT5pYhgejpnWxgTem1oBI+1b6lbwCgAlR+FwbsC +MKCcjndmhB4myGwp8MhVzI1DGlS81R2JjUyOQPV6zcRza0KmVTeGU99td51Xr32 zUozsmIvkmEN6cbCwZQEEwEIAD4CGyMFCwkIBwIGFQgJCgsCBBYCAwECHgECF4AW IQTgMJsthaZ+hGMp40uy7nHpZ6qeTAUCYrjfdwUJC0fAdwAKCRCy7nHpZ6qeTPdu D/4p31uHrbbggkKu0w7ma0gkHPyJjQM53fprpE32sS00zulLD4Jbt3sF5dmEwRs/ mug7Ov65tI80wF/5RUrnPHHsCUJbomS9fV3W06gRb/MplsGM3iD/RqiPEbSMInGD 44YW8Q5cLAPLQ5s5Uw4ymxTKD6LI/QbWvzgnVFvkCKOear9kRbkgpdQKHC0l+ONH oWkZbMoNdYpIUjGElWZPdialD5i/p7gEmpJN4SFXFLzAK9EfRIk7f/p5AMbPXiFE 3kf4iOKFcAJF3Gf3OYnQeJBPDyjxDGCoc3lES9OzSNuAoOm14/vfAYUCiAH1DqHq AOM5MGis9zwfRyCcXeQaVhSzgQ0BlxHczHHjm7QT1OVwgCdYhmF0Fmokm9xVZTgF sjFZD5zWItojs/u549NHzOBJakmSdOKabaQw3pOgB/OrWboR4noTC62AAwe1bRvG U9OHuBM3ENMtxLgsEL9ldTy63+jrhESH9CfSwzn9jp0zb4Kjp8KQsQ/O9poKrgfG T8sD4ZsMSZKVWrSs/qM6pYcSXVObPzWTQsZZn5lzgARAKHTlbjXsWtTJbjtAKkTs jGauQNT4fwy/BQb7XY/2iE+kYpOJYT2MN34x1AHuEAdh99JlVRNgRx33qk0iQtFT MckDxIKgyRqQXCEY18ymDMYpG33DC3Fx8lkjN37WPOjIv9H/AAAnXP8AACdXARAA AQEAAAAAAAAAAAAAAAD/2P/gABBKRklGAAEBAAABAAEAAP/bAEMABQMEBAQDBQQE BAUFBQYHDAgHBwcHDwsLCQwRDxISEQ8RERMWHBcTFBoVEREYIRgaHR0fHx8TFyIk Ih4kHB4fHv/bAEMBBQUFBwYHDggIDh4UERQeHh4eHh4eHh4eHh4eHh4eHh4eHh4e Hh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHv/AABEIAPoA+gMBIgACEQEDEQH/ xAAfAAABBQEBAQEBAQAAAAAAAAAAAQIDBAUGBwgJCgv/xAC1EAACAQMDAgQDBQUE BAAAAX0BAgMABBEFEiExQQYTUWEHInEUMoGRoQgjQrHBFVLR8CQzYnKCCQoWFxgZ GiUmJygpKjQ1Njc4OTpDREVGR0hJSlNUVVZXWFlaY2RlZmdoaWpzdHV2d3h5eoOE hYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX 2Nna4eLj5OXm5+jp6vHy8/T19vf4+fr/xAAfAQADAQEBAQEBAQEBAAAAAAAAAQID BAUGBwgJCgv/xAC1EQACAQIEBAMEBwUEBAABAncAAQIDEQQFITEGEkFRB2FxEyIy gQgUQpGhscEJIzNS8BVictEKFiQ04SXxFxgZGiYnKCkqNTY3ODk6Q0RFRkdISUpT VFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqCg4SFhoeIiYqSk5SVlpeYmZqio6Slpqeo qaqys7S1tre4ubrCw8TFxsfIycrS09TV1tfY2dri4+Tl5ufo6ery8/T19vf4+fr/ 2gAMAwEAAhEDEQA/APnpBUiCmKKkQUASLTxTV4p6igB61OnNRIKmUUASJUy1ElSq KAHUuQME9DUc0scMTSSsqKoySxxiuK8QeL5G8y2sYgEB2+aTyfpQB02s69a2MTrF ieYD7qngfU1wOseJdUvWKfa2SP8AuxjaP8arq91eeaV3GIcnJwg/zzxVWWJU+aTj n7inn+WBQBC8ryHMjs59SaaFYgkAkDrjtVxIQ6HybeR1B+/zkf0pbm4kaNIsIqAb flQL+ZHX8aAKWOOTTac34U2gBfwpKWkoAKsWN7dWM3m2szRN3wev1qvS4PpQB12h +MZ0nji1BQyMcNIOo98V2tvfWtwB5E8cjMMgK2c143U1ndT2kwmt5CjjuKAPZD9a aRn3rn/DHiWDUtttOBFcgdzw30/wromGKAGe1NNPNMbpQAxulNalao2oAQmmkihj TGPegAY03I9qQsKbke1AEKipFFKijFPA5oAFGakC0R4qQCgBUU1Mi01TmpVFADlG MUl3cQ2lu087BY1GST2pXdY0LtwoGSa858X64dUvPs8TMtpG2P8AePrQAzxDr1xq lz94parny0Hf6+uaqWGk3l8xeCF8A8lq1/AnhK78T6mtraRysq/MXCnGP896980T wCujBS48oqm0HdgY9cnHoe350AeBjR5/Ie3cMphXeQw2gD15xk/nVW3tYBHGWQzL yXbacqMfl3Fe463pGy4uJo2txLHEpg67eDggnIPTnIPoK85m0vydQntNQZ4GAPkq ycSZz09cHPbofpQBy72tpDIHR2lVeArDDDPfHQj8ao3MSLN5ucpnacgZH4V0d1bQ Kwge3RvlPlyEnceuBnp+dczCrtKykbsMTigCrLF1GCDjIz6VFgqu7rW5qFsRCJzj 5Mpgn06fzrIkXY2Np6AAUAV2FAFSyxcnHReKktbeWV9kabzQAW1uXdRtzmtldGbC jbhcfMewNbfh/wAO3MzwBIpN4HzEgAD/ABru7Tw9P9n3SxKTySCDgigDxS8sHhZi vKg8GqRGDg17hdeG4pFbzoOD0AXAH5V534n8NywXDPbqfLAz0oA5NGZHDoxVgcgg 8iu/8I+Ijexizu2H2lRhWP8AGP8AGuBkQo5Q9RRG7RuHRirKcgjtQB7GmcZYkmgm ub8IeIH1Hda3SjzkGQw6MK6JqAEc4FQMae55qFjQAMajY8UFqacelADGam596Rut JmgCVScVIKaoxTwKAHpUoqNBUoFAD46mB4qFKW5mjt7WSeZsIikk0Ach4312RZW0 62OAB+8fvyOlUvh54TvfF3iCHS7RWJkPzMB9weprHvJf7Q1G4uSGCuxYD+Qr7N/Z H+HS6V4Sh1/UINt3fjcoIwVTPy+/PFAHU/Cv4eaf4Z0SOG3hIkKYDkDcR7/zruU8 LrOpMqBcrhNp5A7s3HJ/UV0tnYRxHO0E4xV6NADQB4prXw4hFrcP5TmdmdmI6tyc EHr2/pXmnij4eyLpDGeAONx2FRuaNSOPpjBr64aJMEsorN1LQ7G8gcLGEcjjA4z9 PrQB8A2/hvUo457Z4GIVgCc9Dgt6c8jIrLfwZqVu1xO1v8qgMcfXH5dK+xNb+H9m 15czOixieNX3gY2spJ5+uSK5bXPCkj6JqEUFuzLNE0UY28/MAN5Ht/OgD5TvbCaa 3ZSjvDG5LSFeFOCvP02msG206e8vyYkZxuAHGcmvqe++HqJ4curGKItOyKWb1JHQ +nr9TU/hT4U20NvA32VVG7cWIyW6jP8A9agD5y0rwPqF0kTvbsWmYFFwenqf0r0n w98IiAJroypxkKvH519D6R4EgtSreWuFGBxW9JoUcS/LH0HTFAHh2m+DE02P7rO2 eWPerr2KxjG0ZFenajpybWyADiuO1S3Ec2QMHH4UAcldWiMpAUe3tXK+JtNgmiJC YYqRjHeu6uInWUg8n2rnvEcZU+YvIoA8B8daKbG689E+Q8HH6GuVbrXtPjTT47/T JWAAYKTXjNwhjmZGGCDg0AS6XdvY38NyhwUbn3HevU4J0nt0lQgo6gqRXkddl4E1 FnjewkfOwbkB9KAOpkaoHNOkb3qB2oAGao2ekdqiZqAHFqTd9ajLUm6gDTWpAKYv WnigB6ipQOKYlSigAArnfHtwyaYltFndM+G+g5x/KujztHv6Vy3iAfatZt7OdiIw 2WAHr/8AWzQA74U+FH8S+O9I0BeTdTr5hH8K87j+C5NfpPpNjBY2MNtBEqRwIERQ OFAGABXyD+xLosOoePtV1+SMEWcJigyPu7jjj8AR+NfZiDKgDoetABGO46k9Kmjj I5JyafDH0yeaspHzQBUaI+p5o8ogZA5xVto2H3RTCCw57UAZ81hbTAGSPJU5GT0N ULvS4JIygjVVZgCFHUCth4+uKgKc5AoAyV0Oz8oIIVC7s4AxVyHS7aJAEjGAOOK0 Ylxjjk1I6ADOBQBiXFuI84XNV54lEWTwfWtWVc5NZmoEKhUdaAOJ8Q2yQ3MsqF8v 1+Ykce3auK1hPlIweOld/rB835SCd2cNXLX9pkAkcD86AOQlhJxgEkc59RXP+JYl RAcAA+vauvvIgJML27Cub8Ux7U3FQO30oA851HCecrqSCp4FeK+JIRFqchC7Qxzi vb9TQqHY5xnnFeQ+N4duokgYGMigDm6vaDc/ZNWgmP3d2D9DxVIUd+KAPT2fIzmo Hb0qlo9ybnTYpSxJK4OfUVM70AK7+9RM9NZ6idqAJC1G81X30b/egDolqVajWpVo AelSio16VIooAdhQM4ye1Z6Wifbpbgnc4EkmWPYRkd/9o/rWiBxVS8R4DJcJgfej x/fHBP4UAe7/ALENstvp+rysu2WWYfgBxj/PrX1JbL8vrXzD+yODBPdryI5XLj3J P/1q+obPk+mKALcScgEVZRBUcanHNSoMDFADioIwOKhlXAOBzU+RUb4x1oApS5Hf FV23bsE8VZn4PaogQW5oAauR1p5OcE80gwSaa+704oAr3AOcg8Vi6x91mPYHrW1K xCkEZ+lZOqR7o2DKSMcj1oA5WdS4A2hgBk4rL1SEIQV4Aro5IkhTJwoA49vauc1m YYMacEk9+1AHIXELJdGRcAHr+dYPipBMpwMFetdRe53cDjH6+ormNbbuzE4yDQBw t/bh4GXoa8g8c2pEruy4IJ/KvcNSjQDcABxzXl/juzDo8iqcZwOPxoA8odSrEGm1 avoikhJGM1VoA6XwpNm1khycq2cfWtd2rmfDLEXzAH+DP610TmgBrtzUTNzzQ7VC zetADywpNwqItTdxoA7FalUVGtSrQBIoqRaYtPUUAPFZmoNPNdFAcjeoUD1wen4r WoB+dS2EMD3sCPgbTuxj73Jx/WgD2j9mdpLe6to2yo2DIPfNfUVieQc54r5n+AgU XEKrwdwGeuSDz/j+NfSunjCDqOB1oA1oyMgZ4NPXPP8AhVeBsjrwKsp0oARshc4z UT5z04qwVVhtPekdRjAxxQBmzdSMdRVdJAHCmrdyBng1mlMTjrQBcRvrirIjBXFV Ysbqu71Ee7g0AZ00aAHvzWZf/IpA+YY4q9qNzFGpOeeuBXG694s0rT3EdxMFcc4o Am1X/j2YY5bgc1yNxAxOACwUYyevWrFz4z0W4UqbpCDxgmq48T6WtuxDxkH3oAry WBkgdicNjk+lcT4gt2SZweOwxW9rXiyNIX8oqEA6dN30riNS8X2VzEWYlGzg7geD QBi6o4YOo5wMVyus2gurOVNuSQcVf1PV7ZrvarA7j/eqFXD4K9OvWgDxrxRZNbPh lIwSP1rn69S+IOnCSxlmAAKfNxXlzdcUAaHh7I1JT/smukkNc/4ZUtesACTs4AHv XQXEcsRxIjIT/eGKAK7moWNSOagZqAEY0m4elNJpufegDu0xUq1EtSrQBKlSLio1 qRaAJBSrJGk8YfcCc7WHbHP+NIKhvB+78wHDJkg+nBFAH0B+zWhutWCyfMYlLt6d AB/U19JRfKAM/WvnL9kQ+bd6kdwPlwIvI55P/wBavoDVtRgsPL87ks3AoA2oMLg8 dMZq0jgLnIxXE6xq90yI1sylcZx2Pp9fwzXJap4/bSYHkm+0T3B4WNYyFzx6/X9K APXrq9tbbBlmjQn+8wFVJNXsVxm4j5OB8wr5P8SfErULzVHjnMxLHKpHG5I9RyOx z0zVTRdd1+4uTHMmpSxMcYaF0OOO5zn69aAPqmfWLNp/J8wbtxGKmDqTw+c4ryfw wbu5gBvIyhGD83U46Z969H0rzJ41BG7aOrdelAGjNL5XzjO3PPtRLcrJaNtwQOnP 86be20ptjuXAxzXLz6oLKxnhuM7lztPqKAM3xVrskcRhWQZJxn0rwX4kaw737s0h dmO4hTngVsfEXx5bx3Lxw7mfGMA8V55B4iF3dDbY/bbg/dhA4HuT2FAGObvW5rjf BY3k4bgJGrZHtXb+EfDPjW7USXOlyWkbEHDv0H51o6Tq+t2+n31za2U1/PZwtPLb 2EYWOBVBbDyEHnj6+1c58TfiZ8Q/C0lnbtBpEkd6GMb2928wG0kY3KwBGMHOBnNA HUar4c1a3icHyo05bqc/oOK4K/0m4gaVpZNmemf6gCuVvPih4nuYt+oxXMQUgNJB M2PXocir3h34hT6jci1vZBewNxkoEmj98Dhh9OaAK+oWjFllJ3H1Hynj0q5pLkMP 3p/Hqfzrp5rJJ1zbr5yyAchMYHuT0rP/AOEejimaRHUjOMKO/wCFAGVr0K3VpKhU coR+leIXKGO4kjPVWIr6B1G3EEbJ/FjPNeHeIoSniG6jAxmQn8+aAN/4ZWsAvJr2 64jiXk9a67Uby31u0uYUtBH5SF4nP3uPWsnwlYCHS2Qghjzj/Gtfw3Er3rqQNr7k x9RQBwsh61A5qzfRmG6liPVHKn8DVNzQAhNN3U1jSZoA9CUVKtRrUi9KAJF6VIp4 qNeakWgB4pWt57i3lEUMkg2kHapOKRAWYAdTX154D0Xwt4X8M6RodzbKbu+txLLM Y85dhnk/jgfSgDzf9jadTrWsW4J4tYiQeudxH+frXt/i+AzalAuxnPYYODz3PpnH Ary/4MaTDoXx08VabAE8vyAy7TwBuU4x+Ne6S2wlm8zHzKMBjQBz3l5hEd4qRuBy sYbA/T/CsabUdL/eW1vbreeTzIQgEcf+8xwAa3/FClbKRZJ/KUghmjBaTHoo9a8X 8Q+CvGnjYHT7UPoHhqNgI7UPia4G4bnfHTPJ5OT360AN8QfFbTmv5dD8K2FvrOox xSyvHbYEMaRgl2MjELxjtnpXkd/8bvGMut3Gltp72ktu5SWOIIWUj0yte73/AMKW Wz0kaLp1lo15YQy2wlgiLrNHIhVtwOCWOc7ifXiuF0/4F3VrrNzqWo6hdXdxcSeZ K5jCFieTkknOeO340AdL4F8TeIRdQwapIsrSAMsc0apIQfQjg17p4ZmW4iR9hUHs w5rynSfCkl/qscl9fyrJFxGQFITHTgjFew6PpzWVlEHuTcuqgGUgAt9cUAbNxtaH b04ryX4rubPTZzGTuYHkV6wy77fIz9MV594/0r7Zp1wHBxtNAHxF4okurnVJkQlp GbAroNE0jWoNIisbG1MLzlmub3OCg9FJzz79qTxRp62uvvJDyFfnj3rstBlnu7aO LzTtHTtigDvPhSdb0/Q10+znsBHs2zotquJuMEvnqT36Vj678FPDUsn2trVFcfwL O2wA9QB2HtntW/4bsJbaNfIuWC4ycV0kFpeTHyjcBkPQtnNAHh/iTwHYW9q1raxx JGTlxEnX6seT07muFtPhxFJfeba2zqob7wNfUk/hCG7dhKwkYNhlK8Z/OnJ4Psre Nt1jAOcAom1sfh70AeM6LoX2eT7PcI5VBtUOMqePStm4tIo7baIkCgHCr0967XWN Kit2DR546AnPHvXIaoyo7buGx17UAeeeKAFLMASQenSvINbsFPi83MxC2+AxJ78V 634xlAlO0k8ZPv8A5xXm/i6yluNLa6gDF4XG4D+7/wDrxQB0+gwQuMpnDDil0ODy L/ngLIxNYHg3U5ZWigJGeh9a6e8dbaPUJQCGSIkexIoA801iUTalcyjo0rEfnWfJ U8p5Jqu9AEZpv+etOam0AeirUimo16VItAEq08VGvSnigB6MUYMDyK+uPD91H4h0 Dwp4hj2sphSKbHRXX5T+or5GNe9/sseIBNBqnhC6fgqbu1z2PRwP0P50Aeh21iNL +PbXflFRqWmgKw6ZTrn34H5V6vF93cfSubbSU1L7Dq5I+12X8WOoxhh+p/Ouhtjv iB5oAZNGJOoBOeOKjEJQnafwA/rV9E4z+FNdcdFNAFSQy4xtAJ6c1QutPMzDzydv oOK02cbslQKC6nmgDOtdIgjf5U2jvWvEgVAg4ApgLFsDrU6nGSaAJ8jyiAceuK5P xlcJBplw4J3LGSBnrxXTJICTiuE+IoaW0lixtyD9TQB8u6vF9pv7iU4yznj0yelT eGi9nLtYnaP0FWdQtnhuZtzKPmLAAds1n2GqxwaiYrggbsY+tAHqGhXEgG4Hg46n HNdrpbuNvmH5iBjHrXHeF0hlt1kjfjGR6E+ldxYRYgT93luCB6CgDZsyWO5lGRwP U+9OuZ1GdwwVHXtUSSbNrKRxhetQ3zrIrYyGHXjGRQBxnimTdl4127+49uleea1I xRtw+U8ZNd94olw0iAqB2rzjX5FKMWwD0PPvQBwXiVsqytnI7muaM4i0683rkGM8 evauj8QhpASSOOK5dofPhe33bN4259OaAKPhC0dNX+1SQNFEvzZYYBrb8SXX/Env rjHE7bFOatCzEWnJbK+SuMN61g+NZwlrb2akf3iBQBx0lQOKsyCoHFAELUypmWo8 fWgD0JTxT1qNTUi0ASrUi1EtSoKAH10vwu1w+HPHuk6oWIiScJN7xt8rfoc/hXNU d+KAP0G0tlW3nWMgqRuX3B5qfTWDQqM9OK85+AvipPEPgSxnkkD3liv2W7XPJx0P 4jFekWgUTPt+7nI/HmgDSXAXgA/jTZipI4Oe/FEbZ69u1Ocqse89vagCjOg3EYyB 6dahVAGJAI9K0XCnLEYrMvrhYUJHSgC3bPGZGU54FMmlHmYHQdawrDUTcXzIjl1A 5x2rctowWZ5M4PTNADkuEXICjkVyPjRnNrMSM4BwQK7QW8EgJDhcdawteEAtJvLU O6joTQB8x61bmS7l8wbcN/D+tcHq1kpv5FZiDzgjj6V6H43ukbxDPBYjKq3zHPAN c3Lo9xNM1y+SvUkHigCn4D8X3Glal/Zl5JiMkGNz3FfQ3hbV4bq0ADAlh1Ir5Oms 5L3xbG0DZjt8gsp43Zyea9+8A3whtUSZgCoHNAHq8YJXIADY49qy9QnYqAFC9VNW tKu0mjA8wH0JpusxboH2YJI6+tAHBeIQzRGQEYI4HavN/EgKq3cHgivTtfjKwMj5 UjkCvNdbgd2lc7t2eh7UAcNqCl4Xf6/nXOwgmTYR/Fiusu4SYZFxjAwR/n61yF45 gWVlPK5I+tAGsqOgXDYUdc1w/iC4+16nNJnKg7V+grRvdbuprcwgBM9SOtYcgoAq yDioHFWpBVaSgCFvemECntTKAO+WpVqJaetAEy1KlQrU0dAEoFGKVaXFAHe/Avxk 3hHxjELh/wDiXXxWG5HZcn5W/A/pX2XaFcq6EFXXIr89zxyDyK+wvgR46svFHhGz tJblBq1kohniJ+ZgBw4HcED86APVojxzVgMMfhVMN8oI59akVsJtGeOM0AMu5gkZ zXFeI78j92jkufl9hW74n1KDTtPknncKFBOT0rifA1tc+Ir19ZuVMdluzAp/jH97 FAHX+D9NFtaB3+Z2GST3NT+Kf7ZXTZI9Ge2Wcj5GmzgfgOtaHmLFGEhxxwB04ps8 /HVTnoaAOJ0KHxBp6yT6nrlzcuRzFJGgXPtgZH51zmsa7qkV+8LorCU7euAM16c+ ySPJRS2O/rXD69YiS+QvCrvnIyvGc0AeZeMPAUSg3Cs8ksuXkdu2ewFeO6hoGpRX ktvdS3JTdhI9x2nnrX2RNpa31sqSRZ69fTFeeeOPCEYkeVI1GDkYPegDw/w3py2C uJNgkGOMcV01vq4t3hWNipLfNx7VLqmjx2ygqy/d5GeRXOap/rk/0hEC8DaeOtAH qmg6xIHjkglyT39fwr0TRr5dVs3TGyeMfMmf1HtXznoviDZeR2cMqztkAJHy1fQv hHSpodQs5wTlo8OD6Y5/XFAGRqcKX8k9orf6Qg6DqK85mtPP1G7tSOYlyf5V6Nry /wBn/E/zlbETWxEgHTrXLeFI4r/xDrV9geUZPLQfQf8A16APLtVtWikmbBxyCOx9 K888RAKZfTtXr3jCJYpZRtIGScfhXjviVxvYDpkCgDnnqBx1qw9QSUAV5KrSVZlI qtJQBA1N49qVjTM/5xQB3q1IpzUS9akSgCZKnjqBamSgCdKfTE9akFACEV03wn1k aB8RtE1N22RJdLHKc4wj/Ix/AMT+Fc3TDkHI4oA/RGM/Lx3p3OPeuN+DnidfFfw+ 0zVDIJLlYxBdjPIlThs/Xhvxrs2AA9qAPLPjS813NpekRsyxXl0kcnoVLDIrt4rm w0m0gtGkigGAihiADVLxvoS6tDDIoxNbSrLG3owORTNV0O31lrO4uUP7r5gvo2KA NyOSKcb1ljZT6NTS1lGwZ7lFGTnnrXkPxP8AhDPeZ1rwnreq6NfBcyC1u5EWX6qD g1V+DU13Z3f9k+NN1+wG1byVycjH8YPQ8DBHqelAHsF7reiWURMtxESM45rmdQ8V 6N5jzmCWRQPkKRnJrrNG0vw5Lp88NmLSbYxJZSrFe4ya3Gt7N9PWLEbR7Bt7igDx +98c3ckbJonh+9un2nLEYUfj0rzbUtT8d+Ibm4iWBofJBLp0Cj8K+k7T+yrPR3Zz BGiu/mMSAAQSDk15vqninw7orahDAPtFxeuDA0a5VvlPG7pgH/0KgD5v8Q22tDw1 f6zc3bIIEfYAPvleO/bIrxy4/wCEj1zVFsba7urjG3eVYqgY8np+Fe9+L5L/AFbS 7/T9VW3trCSVgkUDnzCjNk5PQck9PXtWT4b060sjttYY4wOE2jnP1oA3fgB8O4dK 1O3lmUS3JG6Z8cLyDtr6w0q3jhQTFRwuAcdK8k+GdutuI3ODKw+avVrq8W20hizY wvXNAHknxJvCdZuJ0PzkhVIPQD/9dUvBarY6c2/G6TLH6mqfiWZb/VmAOBu3VVv9 QjtrPAb5tpGBQBx3xGvU86c9ySfxzXi+ty7pgPcmu68aai087gPk5rz/AFhCkyMe 680AUXNV3NSO3aoXagCGQ8VWkNTyGqshoAjY0zHtStTM0Ad8vWpUqJakSgCZKmQm oVqVCKAJ0NSioEI9alU8UASU1hSikagD1D9nTx8vhDxUdO1GbZpGpEJIzHiGTor+ w7H8D2r7CR0kQFWBzyPevzpevpf9mj4oDULaLwdrlwDeQLixmc/65B/Af9pR09R9 OQD39kGCp6GoBFscAD5anDBlyDS4BB6/hQA0BdpHBFc5rnha2uZvtVsgSTvgda6J eCcH8KfE/GCKAODufCkd3HIkyoxII8uQfKax9W03U7IxI13eeSuFVIbhgBj0Ga9P uo42Utg59q53VLeCTO4Mvo2aAPLrXTomt5zKHVXk8x98zHcSTyfU8Vi61NaW8Rjh iVAU/h5AbFd5q1vpsTLCTnjHXqMVg6loySEQw2pbvuH/ANegDxq/tL+8uS0jOFB+ 77elamk2OyVSBnac12+r6EsECkkZHLADvR4b0Z5X+0Sx4ReBmgDofCwFvBE5U4Vc k+tWfGfiZV04W0cnzEHkdh71T1i9j02xYKqggcD3rzHW9Ua6nMbuTnnHoPSgDTF6 MPKeWYZrmPEmqgJIA3P1qW+v1ihb16fSuH1i+NzKyIGxk596AMy5Lyzs7MW56nua zdat98saY+8px9a2fJ3mKIDHeq+twlbuBe4DE/QCgDipwY5GRuCOKrua1dcgIHnq O+GrGdqAGSGq0hqWQ1XkagBhNJuprGkyPegD0FalSoFNSqaAJlNSIagU1IrUAWVN SqRVZTTw/FAFkNSM1QeZSGSgCR2FJDcTWtxHc28rxTRMHSRDhlYHIIPrULSVE7+9 AH178Bfi1B4tsl0fV5Uh1uBOQeBcqP419/UfiPb2GKXcmSNp9jX5x2V/daffQ31l O9vcwOHjkjbDKw6EV9pfBfxjdeK/AVjrF3s+0gtDcbRxvU4zjtkYP40AenKRjv7U 4r/EOlZyzmRdgbBJ4NaURXYFLDGO9AETsCCMZrI1EHY4AU+hrVuFKEsAOT2qtPGp GWXnvxQBxWo6f9pv0LxqGA/hBJPrT7lIowFT5Sgw2OproTaBpPkT5lPHPaqGp2ax hnAOVA4Hr6UAc1cafHeAq+FQcn261WupLaxRIEcAYyG6/jUt5e/ZrWZX6ZO4j+Ve b+K9elMkmxuFwvHpQBQ8a68r3DRox46erVwwuWeV5C/J6H0qvqF9Ne3zSOwLE4A7 AU1NyREE8DqTQAzV7slDjPXrmse1j3OZOo61Ncy+fKWwdoBwPWr9tEsVuE287Qef 5UAQ2UO64kmYYA6fSqMyfaJ7q7bO1F8qP+Z/oPwrRmLhBDEhaWU4AA70zUYBb2ot I/4BhiO57n86AOVeITRvA44bvXGXiGG5khJ5RiK74D/SDkHn0rhddV/7SuZAMr5r cjnvQBQdveoHanO1QM1AClqbuppakzQB6KDTwah3U4NQBOGp6tVYPS7/AHoAth8U nme9VTJ703zOaALnme9NMtO0vTdS1WdYdPs5rhyf4FJH516h4L+CWs6i6T65Otlb nBManLn/AAoA8ut0nuZlit4nlkY8Kikk13fhf4S+L9c2u9qthCed85wfyr6G8I+C fDPhqER6fZx+YPvSsNzk/U11DMOFQc0AeS+Fvgl4c0sLNq8smp3A5KnhM/SvVPB8 2k6Xq3/CLWkENtvtftCRIAAcEA8fQrTvLKuWfBPYCvGPiT4nk8LftMeErtpsWc7r ZzAnAxKNv6HafwoA+h5S1rJsJJGflNXLW/8A4HPzfoafeQpcW59xwawLjfFlZQeO jCgDqvtKzJkDp0qhqV8qIwBAHf0rnxf3cQGwiVPUHBH9DWZq+rBoyJEkQDOQVzQB r2OqE38gMvycDnuaXU9UhMLxsfnGTgdSO1cLb6vb2nmyb3eQnowPFZGr+J9rMYEZ pGA5bnB9qAHeL9R/dFFYIxJ+Xqa8h126kuJTDFuCsfmb/Cul1ae/1GYs/wAv+0f5 1iTQw2wLOdzjnI5oAx4bPyuWHOKqXzgr5aE7e5Per17cFl4OM1UmtzuUD7zfoKAK 9pEjY2gnn2q8yFQA+NzdKs6fZMm07M+h9vQV0GnaQmDf3qBYo/ubh94/4UAY9jZf YbV9QnXE8i4hB6r6tWRNCx3FgSrjP0rX1C8N7dyE/cJwPpU13bK9sJFOCE6UAcHN GRc4xyDx+dcDqUd9p3iCeeKAyW0rbyuMjnrXpl3F/pI45LgZrAW3+0ajsXPBPNAG da+G9P8AEduG09vst4Ryh+6xrkvEOh6pod0bfUbV4T2bHyt9DXr8Og/Y5Y722BRz 82B0b/A13um2OneJ9K+yapbJcxMMHcMspoA+Tiabk16/8Svgtqmj+ZqGgq15Z8sY v41H9a8le0u0Yo1tMrKcEFDwaAO83Uu7FRUGgCQvSqzOwVAWY9ABk1B3r2H4QWdm 8SyPaQM/94xgn86AOL8N+BfEeuOphs2ghPWSUYH5V614Q+DOnWxSbVWa8k67Twv5 V6ZokcawnCKMegresgPLBxQBm6F4f0rSIFW3tYoQBxtUVoXU6RnbGp470l4Tiqsv 9aALdnuds84rTiTaNxx9agsgPKXipbvoB2x0oAIWD3KHJIDDOPrXyj+2ys9n4xtZ 0kYPG6yRuOx5I/EGvrO1UDZgD8q+Wv26gP7SsjgZ83r/AMBNAH1P8H/FEPjL4caL r0bAtdWyNKAfuyAYYf8AfQNbt5bjzmYrzjn0NeEfsIySN8JCrOxVL6UKCeAMg8V9 BXf3E/GgDEl0lJcvC+xvbvWRfaXfqCGj8xfWupte1WpwPKbgUAeWalZkLlrP/wAc ya5PVrd0Y+VbAnOCAORXs+qonnKNq4x6Vx+uRoJJMIo4PQfSgDyLUI5/mLcZ61gX sfJIJOeua6/xNxcsBwN/9K52+AzGMcbWNAHN3NrMLhURTISct6YrXsNMV33GI73I Az1/+tT7MA3EWeeD/IV0/hlFbllBzMByPrQBLonh+NE+1337u3U/IO8nsPasXxXq Jubn7NCuyFeAB6V2/wAQCUZVQlVEXAHAHFeaXf8Ax9t/vGgCEWbKGJHDEEkdqlvZ djIhAAxg1ouALVsAD/8AVWNrH+vA7YH86AMPXY1hkuLsHCQxb19yRxWN4Os3uJgz KWZ+F4ra8ckjw4+OM3ABq58NFU3EWVB+X0oA6xNJEunGONfmjAyMc1XWyvNEnS8g B8piN+OldRZgfaJuB9wVpxoj6Gd6q3UcjPagDQ8IapYaxbiCZEZmGCDVyX4d+HpJ GkNquWJP3RXmPhdmj8RERsUAk4CnGK9whZvKT5j90d6AP//ZwsGUBBMBCgA+FiEE 4DCbLYWmfoRjKeNLsu5x6WeqnkwFAlnBkWACGyMFCQlmAYAFCwkIBwIGFQoJCAsC BBYCAwECHgECF4AACgkQsu5x6WeqnkxMGA//Y2tisOesuyaBTGssq6c1eINRKtzv 1DDJOYhOxnLUfgYQMJ2Gd6l+dcKTMXersBYgR4/CxD+2l40IxQir/oy6UaYYmZwu wuvVw3n/c4XuDNLVdz90Vty5KNpoOye6NfxiAM9UY/19BOX9eVgWfqTUAA+9szub 8tZ4P2ib6KzjgD+Hx+DlVMjDyfHghi5+ebWyQe2LfYMf1SuqzVeVMyKUprPrCAaK h1VXFsRDwCCJpOx3J2yU93xQahyVWJ1BfJ9sHhZW8D8X75ncB4qgWEeV4JK15Xmr iPb1s0GcBmO2HgoAZP4YzOQz9NR12aLfyYAvXwGrPOmt+6MoBDoqfJOfknLrNOpY R6vWMjymyyI0zvYitUL5ah6odrtp2UAoRjlNIc9N31UHlvXAvfjNXx3uJk9+b077 +8chReWeKmoCmrJ6+IHgQ8VAT+WLLag4FmoGqyvRCAFWAs3rQ/PEkm/GmEcRed3Q ctwpe6buW148YQxPtb1CsqqdHSRdeS1ybWPiYwG4+P7wt3hMd6Lh+DQRhSgW6ynB gKlKasullfmOBhRnTr2OABkC/iuTANG2P5Na8Xr1DIWh+VMY063oBZ5KD0VU2xep Rh89gn4+4OvxZfMSku6hIcUjirxvITxdAlx4fz0it9Pch8l3qskFhXLDLERKI4HT ImvDbALeJbVBzPvCwZQEEwEKAD4CGyMFCwkIBwIGFQoJCAsCBBYCAwECHgECF4AW IQTgMJsthaZ+hGMp40uy7nHpZ6qeTAUCYrjfdwUJC0fAdwAKCRCy7nHpZ6qeTACW D/44hNi4hdbF9gu4x21Uu/tlXgQiqxCgpe76/5gNpNkidoZVus4JoKSLZQHHaffz JpdJVfIVjb+k5Nz/yxdUUURJLKbgFxMmHR+pKIv00SBpSYeW2OdVDnlVTYr/UTI2 +pJel7mkyVXX8roBk0kkMJIo34+Xrm4B3lxT1zcIAQoQ5r0+2zkrRJ9GVkEVRxoE NZliM2MGmhkAa9s3pJHVHyyQyaHK8qiS/zAD9Fmp7O0ydtHq7XNMSE9n76wJZN2c oqkfDHGvworYFeBMxnI1ORplSbaVnw9m7DSXqXvFNiqf5/TYtS2Db7aOZr4wuB6N iGNRC5vyVmRNsz1nBg4qWD3UCmD1d3VQEJaRNpKFxQOJKBp7UX5LUMj8e8xrLepX /JRKu75BXtR4B1BTwzWas3uZHj9ITrGoYNkzI1zJn7eqsA4Z4xQWGbykjG8h1AMb 2ox2Lv9lvOFINuPYLVZTpGGZNXIoXMDYX58o+2+cvZTpm24MGcl7RHSMdk/k1mDZ esNXRnknQK7J04T0i9IGJs3CmoZQ1K0/Z8w9PS7LrpcUIBXgyhklp4WJLzD3lYCj 94Oz6h1EUoSQmJM76UVeCKuU1SxdeqPHaTYUeqLvcLeuNzwru4UBloo19m1WPWUr EAjT83L8Bto4V99XRFkzYzENU3U0/WFAhAlVaJXevEsrhM7BTQRZUlKAARAA12jc cVX4Tfgj0fibfjlA+HVbG5vCN7UySg/mb00jlI81pldcmOuvqyPC8+MRg4+LWd0E SszXf5sDQRHqk0qTXnOXxwicbsHakw68RxZa48tdd9eKZHRHk8OdnhROzh495x5W SMfyRuUtD5rvfl7s+toog2rwprDHKcHlrzPCeFbhPplRhubQ8MUynY6RSoaPFMLK Dpmd6xvkRg+u45ASPdymbyz5bpcUqTHpIPLWzn+Q65+hGYUtwWdTDiAK4jXFoYh3 OGfhBfiwkZazxnbHDzGoV021O/iu+DeNV+Zp6lyfcHQDdJFaRo+1t1lis5eTIzKE a/1cgDCgV085kCRnmh4sXYQxKwmk91ZQpq7Sx9lSdqh+xqfsDecLqAJpMTCy+SWz A4q4Ovi49ZD5ey/j1x8ouLrHnyfx6zZ99Gj3ASBbaQSmiFFEfp3VMG4rZuSXrTnw nOjSFDJGPayL0MAIIW8am74miwiOgMRdyWY+dqqyhYHPXaya/6jn98FWV2FKb5s9 sBKRhibOaet9O8OCdA1ktzNt+kA1V5QdlOJzEDVBKFH665QTqpayFuseVeIFo899 fQDHSk7f2FklaRqwJ5xFMsVcfRco/Efrg46g4SfQItQQwiK3euhEGmsXA5OqMbHJ cFZXhd4qgKuKRNvssXOeBgmaNF2VWpHvzVKMP08AEQEAAcLBfAQYAQgAJhYhBOAw my2Fpn6EYynjS7Lucelnqp5MBQJZUlKAAhsMBQkJZgGAAAoJELLucelnqp5Mtt4P /1ubVtF/mJwnPDYtXD31qkYKi8HNwlAvQiPZbWJYo0woxY3cPk0YXMgy2M3SaJii yW/kz8LLq9FvmDKrWaKEtBUo5btZHXYtoJzcIkRTCbfQKcwg+EJXutoedY6Yx+9w z39XdOdvpp9apxhtVRU561kRgLqWJZxc/AD+DeDwZHKK7R+0PwE4jt/soscrzkjQ e9asHIHQLKn++3MTrdYHJFcfmRZOu0uTp1/u4hf9UJIZEvU5VebJzXWN7WIvoXPT I2EKn4fzitY4Buxlwe4dhBE3rPsQoZe36gkbps42O/xLOvu56spCD6siCHrVcJkS hhPplHpY5gUSV+XdoEnvFe1NVdkw5upk4znWpoReQn2iZy4Or3/pmQm2ykIIDMGH yygzlMAFAL0FhISR9BjRWza7SS7x0Mojr5oICTIDWS+PwqWSoBmHgTEhM5YaVuBf nQxxshKsROGoShdxzceCMlN6cWf0F9o9C92NwrL+p/47ocCxoukeKCPtkJqnYqG2 M+/TpCgIW88ev+fOFDqJmUHyp/eSAhvFJ5aOg9d+ODJ3XY4y1yfY4q/ac0UHD7Ht 2Qjb6zqtBPlGbwrQQicU7ixXuZ/1iD9Y4T44fuUBlwnguLnjtMtj51s2gbqODwRQ y4VQaiQQUILFru4py0+NzZcqw3cE3wjHxi0OcUN5PcYowsF8BBgBCAAmAhsMFiEE 4DCbLYWmfoRjKeNLsu5x6WeqnkwFAmK43mEFCQtHv2EACgkQsu5x6WeqnkxBdhAA g39OG/i721Hobb+SSCzE24VjuEuXMAojSsunpj9jVJPRqyVwwhz6Z0E/3zCRAYo3 bkjxmAe+G/jLqwUzSqq0Unh7+QAuTwdeN448wEPbJaFRxkNbx1LV1Su2tScZZR0e u3mksmYUpkv8YFjJiQTiH8xcpC2oJQOx+jR+kerdy5gf+ElMBFPKs2My9G0vZUEO BPROcKKWxztVaNQXM3bFOojl5hqa5oGYR91gjMWu2Q99akYQRN1Jxbk2vhrNQKZt jXJv41UUbTRnx3VBmO8FYLXWjZuRwbh0hmkN4YkkCSg3yHmt1pp5K+sO0rPQcmGt Zf4VrK6kSCm1kNT9EW019NG+nXQ4SnNH67qIVxqV8n4en++09aK2JWLbb/WK1itR UFHPQryqLbQGtrwy1y7cj2WGcprd2J9oEBzCHnkBzw/9rRNH+cdC6hU8Y+qg1CnW 4rrh25skPCKeKayWiKifdPSVMhses18UnrNw2ozECixQL+v78/OAq3C3aHD2NYES hWLx9gamzPYU4liB6P9u+mL5KL9pAQIad1e2cyPulFrInED9f9HUrbZpJmXRXxqs l0f6uHEr5zp4wUDLVpP6b7rB7UUFVE6pDGoIxM/dN/NRqMuPRmBFpWmuFZndUMtU NFpPvL1vymF28aGEILJY4qC8blNyxZgbvpfshyYZSh0=3D =3D7I7U -----END PGP PUBLIC KEY BLOCK----- --------------9Zw07Vx8XqIVrVR6w0MPGpO8-- --------------LjYyS0qa9iWZ07tdAgN0iLdq-- --------------XVTrMuV4qxSaFYNpAoRq0GnP Content-Type: application/pgp-signature; name="OpenPGP_signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="OpenPGP_signature" -----BEGIN PGP SIGNATURE----- iQIzBAEBCgAdFiEEtuKAtGEeiKsvUt5qzfL3+1A3d8cFAmSUvKQACgkQzfL3+1A3 d8fiyA/+OFTjMLjpkU6xkzX4WRTap2T/ySHcN/2Bd5fhG+G/VA0IYeUahWDuTMMM ClZaF9ojCGXLIA9Tuj52afDaH+DfOkKpKn9gPvn50P2LncPuuf+UylbSPbOAL+q6 vkJdjGRkQ4jySpkhBlN5vMlnjneaOc5iDqtBf+sukF1Bcx/oBBl1kHBHpesIjAUn TGEfcMCYuIRuSL2cVP/V2rluj1Yp70YHJHniW98/Syx967lW9e0Ytk1K4PmQHkHR xoino2JBga8XmcHgTh6EEYak2xCphzxFkeObgVD1rPgVGF7gTlc6tC4hefSpW2Gd HCuwX32laxVVMBrGCLdi6si+0i+9tyRbU2/EclXiyMBgt+jmEgMCQy/xgei8JcZe W0bDXVm1d/m3oObSe8u+QEPAaGTuEvSzG5kFaOEeR11sIoKL3GjkAlf84kDxqMJq HuvFSmA+eqezBIVi0UbG0RoQvDZv9vBxl0r1gsN3zWrCfQSpJfU+OvXFUGm64TO8 sW2s6xlaPV7EZUmM1ciJQGwy6dH2pdjYWDFbxMl9uKudwM8dqlnlggbeYVULkOne T3VEqU3WwI1Vt5BUP4qnRQrdN41aIWU4hCywQB6PyH5Pboc04io8oKs0TyGiJ9Ww rfjAhKCqk/3s+e0Ki19fqKxaj74R6zgJMMjXTr/LMQMHjYzfRuk= =7GwM -----END PGP SIGNATURE----- --------------XVTrMuV4qxSaFYNpAoRq0GnP-- From xen-devel-bounces@lists.xenproject.org Thu Jun 22 22:05:42 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 22:05:42 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554180.865220 (Exim 4.92) (envelope-from ) id 1qCSQe-0003ra-JX; Thu, 22 Jun 2023 22:05:24 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554180.865220; Thu, 22 Jun 2023 22:05:24 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCSQe-0003rT-GX; Thu, 22 Jun 2023 22:05:24 +0000 Received: by outflank-mailman (input) for mailman id 554180; Thu, 22 Jun 2023 22:05:23 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCSQd-0003rN-9O for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 22:05:23 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [2604:1380:4641:c500::1]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id df83ce5a-1148-11ee-8611-37d641c3527e; Fri, 23 Jun 2023 00:05:19 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 7EF4861917; Thu, 22 Jun 2023 22:05:17 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id CB652C433C8; Thu, 22 Jun 2023 22:05:14 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: df83ce5a-1148-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1687471516; bh=dnifwmEwN5EPVqltpiQCF3MdFT37QyzPJA5VU9yHeeQ=; h=Date:Subject:To:Cc:References:From:In-Reply-To:From; b=RzL6J1fXaBDz0XMnNSx8x8mXcyvopQkvOXbep39IPzJX6IZTiyxdwE2nHfhbPls3L N+mS72rPbV5Hplxc5fgNpJiDPbV/HNUcjlNM0k72bojGJ4KjFY1InlFqwVw3x6nnQC 91+lFDGDXPX57EeoiKgvynYAipkz9J96TnpYMaik9KnCYZuHYn0BitFhgrP4G1fgbY 6R4Jpwcj42qDrlJ2D+uH33pP6SPXmc0IbmA4+yG9XAiy7RYgb0iOqdFeCCR7TQblLZ fmEHl1XvZkPJVwZHZ1ypNXpY1N8YMHO70VuR9LvpNAy1Wj1k/paRgs0NZSlBf4+f5g 0uQe2Ka6aNE0g== Message-ID: Date: Thu, 22 Jun 2023 17:05:13 -0500 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH v5 26/33] nios2: Convert __pte_free_tlb() to use ptdescs Content-Language: en-US To: "Vishal Moola (Oracle)" , Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , Mike Rapoport References: <20230622205745.79707-1-vishal.moola@gmail.com> <20230622205745.79707-27-vishal.moola@gmail.com> From: Dinh Nguyen In-Reply-To: <20230622205745.79707-27-vishal.moola@gmail.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit On 6/22/23 15:57, Vishal Moola (Oracle) wrote: > Part of the conversions to replace pgtable constructor/destructors with > ptdesc equivalents. > > Signed-off-by: Vishal Moola (Oracle) > Acked-by: Mike Rapoport (IBM) > --- > arch/nios2/include/asm/pgalloc.h | 8 ++++---- > 1 file changed, 4 insertions(+), 4 deletions(-) > > diff --git a/arch/nios2/include/asm/pgalloc.h b/arch/nios2/include/asm/pgalloc.h > index ecd1657bb2ce..ce6bb8e74271 100644 > --- a/arch/nios2/include/asm/pgalloc.h > +++ b/arch/nios2/include/asm/pgalloc.h > @@ -28,10 +28,10 @@ static inline void pmd_populate(struct mm_struct *mm, pmd_t *pmd, > > extern pgd_t *pgd_alloc(struct mm_struct *mm); > > -#define __pte_free_tlb(tlb, pte, addr) \ > - do { \ > - pgtable_pte_page_dtor(pte); \ > - tlb_remove_page((tlb), (pte)); \ > +#define __pte_free_tlb(tlb, pte, addr) \ > + do { \ > + pagetable_pte_dtor(page_ptdesc(pte)); \ > + tlb_remove_page_ptdesc((tlb), (page_ptdesc(pte))); \ > } while (0) > > #endif /* _ASM_NIOS2_PGALLOC_H */ Acked-by: Dinh Nguyen From xen-devel-bounces@lists.xenproject.org Thu Jun 22 22:49:34 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 22 Jun 2023 22:49:34 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554185.865231 (Exim 4.92) (envelope-from ) id 1qCT7H-0008NI-S3; Thu, 22 Jun 2023 22:49:27 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554185.865231; Thu, 22 Jun 2023 22:49:27 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCT7H-0008NB-OM; Thu, 22 Jun 2023 22:49:27 +0000 Received: by outflank-mailman (input) for mailman id 554185; Thu, 22 Jun 2023 22:49:26 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCT7F-0008N5-RT for xen-devel@lists.xenproject.org; Thu, 22 Jun 2023 22:49:25 +0000 Received: from esa2.hc3370-68.iphmx.com (esa2.hc3370-68.iphmx.com [216.71.145.153]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 07030655-114f-11ee-b237-6b7b168915f2; Fri, 23 Jun 2023 00:49:23 +0200 (CEST) Received: from mail-mw2nam12lp2040.outbound.protection.outlook.com (HELO NAM12-MW2-obe.outbound.protection.outlook.com) ([104.47.66.40]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 22 Jun 2023 18:49:19 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by BN9PR03MB6201.namprd03.prod.outlook.com (2603:10b6:408:11e::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.24; Thu, 22 Jun 2023 22:49:17 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606%4]) with mapi id 15.20.6521.023; Thu, 22 Jun 2023 22:49:16 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 07030655-114f-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1687474163; h=message-id:date:from:subject:to:cc:references: in-reply-to:content-transfer-encoding:mime-version; bh=sCeWMgsH97p70MTqUVai3FoPThVuoBOHW56QVdTtVuY=; b=At2wFCpjj99eaYMLAS/4WSncvjn6dpwr4lx96l+eFMa+ITkr8hQELqPu k3OCeNdL+ZG/W/kKojasy7OY9DuiFYT9IR0u6orOmQSLt0AgNyQig2ldu 7fJ1SVDDxFlZVJA1Dpx0d7Onu1mT9PO2OvmaKv9noinu3Qdjra44xE0UG M=; X-IronPort-RemoteIP: 104.47.66.40 X-IronPort-MID: 113699900 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:swiK1qABolROoRVW/8Hiw5YqxClBgxIJ4kV8jS/XYbTApDxz0jMAz TAcCm2EOvnfM2qmctF1ad60oxxXvJSHztRhQQY4rX1jcSlH+JHPbTi7wuUcHAvJd5GeExg3h yk6QoOdRCzhZiaE/n9BCpC48T8nk/nOHuGmYAL9EngZbRd+Tys8gg5Ulec8g4p56fC0GArIs t7pyyHlEAbNNwVcbCRMsspvlDs15K6p4G1C5ARjDRx2lAS2e0c9Xcp3yZ6ZdxMUcqEMdsamS uDKyq2O/2+x13/B3fv8z94X2mVTKlLjFVDmZkh+AsBOsTAbzsAG6Y4pNeJ0VKtio27hc+ada jl6ncfYpQ8BZsUgkQmGOvVSO3kW0aZuoNcrLZUj2CA6IoKvn3bEmp1T4E8K0YIwp8xsHEF+t vgkBR8ucTSAie6W0JeHVbw57igjBJGD0II3nFhFlGucKMl8BJfJTuPN+MNS2yo2ioZWB/HCa sEFaD1pKhPdfxlIPVRRA5U79AuqriCnL3sE9xTL++xruwA/zyQouFTpGPPTdsaHWoN+mUGAq 3id12/4HgsbJJqUzj/tHneE37aUw3KqCdpKfFG+3vAtnkSi2kFLMgQLEnzli/qIt0LncPsKf iT4/QJr98De7neDVdD7VgakqWWFuTYGUsJMFPc37g6MzKfZ+QefCS4PSTspQMwrsoo6SCIn0 neNnsj1Hnp/vbuNU3Wf+7yI6zSoNkA9MXcPbDUfSg0t+dD7vIYpgxTAT9BuHbS0iNKzEjb1q xiIpiUjg7QYjeYQyr62u1vAhlqEpIXNTwMzzhXaWCSi9AwRWWK+T4mh6Fye6OkaKo+cFwOFp CJcx5DY6/0SB5aQkiDLWP8KALyi+/eCNnvbnEJrGJ4isT+q/hZPYLxt3d23H28xWu5sRNMjS BS7Vd95jHOLAEaXUA== IronPort-HdrOrdr: A9a23:8h8tb68iUcCuhZ0tOXxuk+Hvd71zdoMgy1knxilNoENuE/Bwxv rBoB1E73DJYW4qKQsdcLC7UpVoMkmsiKKdgLNhSotKOTOHhILGFvAb0WKP+UyEJ8SczJ8q6U 4DSdkENDSYNzET5qqKg3jbLz9K+qjhzEncv5am854bd3ANV0gP1XYcNu+cKCBLbTgDIaB8OI uX58JBqTblU28QdN6DHXUAX/LOvZniiI/mSQRuPW9l1CC+yReTrJLqGRmR2RkTFxlVx605yH PIlwzi6r/mm+2nyzvR3W7a6JRNnLLau5l+Lf3JrvJQBiTniw6uaogkcaaFpioNu+2q6Ewnip 3lvwogBcJu8HncF1vF5CfF6k3F6nID+nXiwViXjT/IusriXgsgB85An45CNjDywSMbzYhB+Z MO+1jcm4tcDBvGkii4zcPPTQtSjUaxoWAvi6oopVk3a/pYVJZh6agkuG9FGpYJGyz3rKo9Fv N1NdrR4PZNfUnfUmvQuXN3xsewY286ERiHSHUTo8D96UkToFlJi28jgOAPlHYJ85wwD7Ne4f 7fC79lkLFVQtVTZaVhBP0ZSc/yEGbERhjLN3+fMEmPLtBcB1v977rMpJkl7uCjf5IFiLEono 7aaUhVsW4pd1irDcGVxpVE/grKXH62UV3Wu4djzqk8noe5aKvgMCWFRlxrudCnue8nGcHeW+ y+ItZRGP/sLWznHIxN3wH4RplKIXQSS8EOoL8AKgqzi/OODrevmv3Qcf7VKraoOy0jQHnHGX cGXCL+PoFY9UagVmXjjBWUUGOoeUri5pV5Fajc8YEoudUwH7wJljJQpUWy58mNJzEHmLcxZl FGO7/ikrm2vy2q5m7O9XxuIQdBFU5b77XrTmNSqWYxQhjJWIdGn+/aVXFZ3XOBKBM6ZdjRCh Rjq1N+/r/yB4CMxAg5YujXel6yvj82njanXp0ckqqM6YPOYZUjFKsrX6R3CEHiCwF1owB3s2 1OATV0DXM3Vwmew5lNvqZkSN03ROMMzztD5vQk5043gH/s6P3HgEFrHgJGH/TnwTrGDAAk+m GZu5Vv/4ZoMwzfdVfXxt5IeWGlrA+scex75MPvXvQKpljmFTsAM1uilHiUjQo+dXHt8FhXjm v9LTeMcfWOGVZFvGtEu5yahG+cW1/tDX6YUEoKxLGVOV62yUqbi9X7F5Zb+1HhGmc//g== X-Talos-CUID: 9a23:YCxex2wny4grGJcfgKE2BgVJMNs4Uk2eyEv9DGynLWVnRJ2FbGOPrfY= X-Talos-MUID: 9a23:+9Y/Ewg8Awr1VQJp+q32gcMpOoB2+pWyJRg3iIhBnJeuNh1NN262pWHi X-IronPort-AV: E=Sophos;i="6.01,150,1684814400"; d="scan'208";a="113699900" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Z3HMR2D9oHb5zhKdVjrJP2xaGip0av/iQt/v0VRiigQvSJ/e5+yl0QhSydVE0xZdPEXXv00O476+I8PKoEUWLWt8AkzePVc02on7QhDijVnUBpR6SCIAATyTCr110wXn/sCz/cNXzZVhtC0w7SHmJf7F/RqHKOOZHadQ6c8e9OdtCcaGYc50RmSpGSo0XWNHArLOA4Hhje59iCuY2RIfbkyUb4kAubK+bkNzVQBGDuP0mNh0+nghFetqjNv8wxHn8V57chvf4kO8uzRQzecd7iAdL2QVKGs04BvUgkRRHTgTFFBbcb+aw7d6O4ZmuksbPCa0xHlGidLFHY1JYAzeMQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=UE5A1DoJf6f0CukC8p7GbsiMKdDyxC78NP6pfzbctag=; b=c18DWS1ueJUtBvzH+YHoTLjU9w5ESFEEOuhQLG7MY2f2TexkCFWoPtqFW8z4I0ztyNscvIn3uMaYEKG+koVVcuLwEGmB9V3Ht9YIm2pubJM3a2pyPz+ZkRLDyvEgPsOFD2GgQUKPOLM4GhWrJWRYGvlXmZTMMBE73/OZnUjU0H+6eEJPiwRphXtG4MjSupi230EA2mtW8ySvIvKfknCuaGqvTb22ymajI2Vk7lMEmn6iGDGBk/R7he6U/qmy1Y1jg5bZ7C1wnq89bDtPUHoSMy15HFyEvzFkkz0xfcaLlJ/am2eXTMcfH2lsgdZLiAW0zKXXdPeO1HhjV74JPRdrDQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=UE5A1DoJf6f0CukC8p7GbsiMKdDyxC78NP6pfzbctag=; b=PNYmQbnM5rt2RAoP/v2LBt6u7r9S/DD2k2lGaQm+Pmjm9lQqg4gKr1FVsG19RmuJpo28laUFhI0OieIaGlnKClTVoKFOApunLMf472/64+J2IWhFNjgZr3ew64WFMP8j+bWH+qz6sA22i35aMj7B9nZ4XBZYks2+JPN4gcM0tog= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: Date: Thu, 22 Jun 2023 23:49:11 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 From: Andrew Cooper Subject: Re: [PATCH v2 1/3] xen/ppc: Set up a basic C environment Content-Language: en-GB To: Shawn Anastasio , xen-devel@lists.xenproject.org Cc: Timothy Pearson , Jan Beulich , Julien Grall References: <1afe27097c5e1b55dcffa9464dc0cd0c1038a23e.1687466822.git.sanastasio@raptorengineering.com> In-Reply-To: <1afe27097c5e1b55dcffa9464dc0cd0c1038a23e.1687466822.git.sanastasio@raptorengineering.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LNXP265CA0020.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:5e::32) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|BN9PR03MB6201:EE_ X-MS-Office365-Filtering-Correlation-Id: d53dd242-472b-4ebb-ee05-08db7372e854 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: qwuauzA60EWQCOgoVXjPEdEbkwWjttehgVO88IuaIZH+n4qOsLArS3y7YpKXwmvRppOA1GQ3ukLTA7Pn0i6FhLv3sHz3y3v/7yw5+Bi2scpaD9aBqVDi/BzfIFjWcvgZoaJr9Gy3HjNU0dPHfVnNiGdx7Yfvholq+pTfZ2fF3qf1jV7ZXqsMF59wvXZE2jcu9RcebDdqj4xKPslVcfMBxxpMxzSXUwMcaH/o+j1HzTfLZtZYUs9s6sRTnhCN6Zn2KWg0fcG/2L6zK+ffCH1w/hvZodCZRWRRj/LuuY3haF7eE1hhZXrd8/eJVDHpw2gxzFhHmPXu6z+cATF3o44rYkzS/4Mf+OvX+b+Lz/InCvmPvwxBTbcoyGvFrbT/NT2BpHIis5/k4D23ruwPN2ah97fYh8TRKHYZfVhkfd3OSW1mVE3C3jNqXINRl17x5gPopyr31XOmEFQavEeldSFINMYdrNhgPT3xFKpkaw78vamtt6ca77YXADXCSjKbUSDovY2C4p6LkJJTazlssOA1D8M7zfIJE0RTDO5jy8uSY16++rQnD8y3qjElKhITWRo/Xtz1v0Ysr1ztXFHjz+rPz7wlhisNarYTVgUCLwS0TjOnhaWIt9QUZ4ubq931Mnb/YvdyDAnUnUy5ui42Brm+FQ== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(136003)(366004)(346002)(39860400002)(396003)(376002)(451199021)(2616005)(54906003)(86362001)(478600001)(186003)(31696002)(6666004)(6486002)(66556008)(66946007)(66476007)(41300700001)(83380400001)(316002)(26005)(31686004)(53546011)(6506007)(4326008)(6512007)(5660300002)(8936002)(8676002)(36756003)(2906002)(82960400001)(38100700002)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?NVhub2ZWTUVRRXhjUkYyendEc0VIT3ZpN1Y3eDJWSDl1Q3JMblJiQUVTdWtY?= =?utf-8?B?K2ZyTHNMS2VNblJUTUUzTmdoeHJDNzUxRXorRHNieVUzTlcvMGdyZEhhcGNx?= =?utf-8?B?MXQrbWFMWXRHaEEvdTcvZDk2bitCTGM3RU5qa0JKTGtuYVJySCtCTkxQeEEw?= =?utf-8?B?V0NpY1IwYVcrZ29xZkt1SXFyVXB6cjllcEpYbDdmMk44b2l0OGJKNDVUbmFu?= =?utf-8?B?UFFoQWEraFBXUEsxQTVWRlJNNWxodFI0UDlKMmdmOWdSbFUzK2RrbjdXSTlw?= =?utf-8?B?cWZSbWdKR29NRDdUK1BoVE9JdHRxSnBBaE8vV0pGZjBoUXJ5Ni9JUEJvenB6?= =?utf-8?B?WmFxdGVwV0hOQVZMMXQwOXBhL21TVUdZYzlDT0Y2Z0w0TTYyWFN1ZDdhcDdy?= =?utf-8?B?dy9INWZsRG5vSUdrYnRQazhpTlkwYkJOKzlGT0pzNE5KREVrSjh3NTZaWi9Z?= =?utf-8?B?TlVCNWVjalhuZkVoK2xNblNDUjE4dmNHQkxaaU11eHp6SDdtYjkrQnJvSDhO?= =?utf-8?B?dnZOV0g2YkJRNERBSzFrRk9DNEpGZGtrNGFiZXJTUXh3S3JmZTkvSG5Pcjlp?= =?utf-8?B?OVdxelREdzhDVnJBS0p0VnFjeFhkekN1aVoySVhaU091WUg0TVVyT2g0czQ2?= =?utf-8?B?Wk9JUFFqcElUSWVDajdrWklYeWZ0VUEzQm9vK1FVM2FyMnN1S1BXajArS1BB?= =?utf-8?B?VjlzMGtmendFZ0szNDZBL1B4MTBsZEg0NzNNV3cxRUxMd0RnalFtUHphVkor?= =?utf-8?B?T29adHU2UEtXd2lrS1N1YkZhSi9OQmZKdG1IYytuWmpUZUlpTUt1Nmd1c3pP?= =?utf-8?B?TGhrd0Z0VWQ1K2NwWm44czZoZzhRYVBZMDRhdWF4eDUxckg4N1FQRStWQzgx?= =?utf-8?B?dWRhbUZ6ckdtcTZrTFdCQ0lKcmtxRXkrQkxlby9iL0ppZXJsU3dOVEJla1R3?= =?utf-8?B?Y3ExN1pSUE9UK05DYTQ2VGpLSU9zdnh1MS9kT01IUGZScWlReGttd1pWVlZq?= =?utf-8?B?MnJoeDFBcGloLzFSSjRheTRsU2dxYWF2c3I0bDlKODRwTVlyTjlzVnRObzJV?= =?utf-8?B?Szd1MjdsY0JFMEVldEllQ2lpZS9LNFAwQzFNNEFwQWYrdzkzV2M5MmZ3Tlcr?= =?utf-8?B?OTduVjViMDY1SWtrZGJMRGhFN3JZVHJaaXY2ZXlkMWl6QzZXcXpXclNjT2Nn?= =?utf-8?B?eC9LS2tGRGlVRXRMTURIK29xM0R3ZjJOQXk4ZWppcnlhNXNBTGlvYkF2c01z?= =?utf-8?B?YkJONUg1ZkZ3ckNnQ1UrVFZZV2FnV1BPYlBDZUpKMGsycmF1bXVGWnBGWDV1?= =?utf-8?B?TTcvREduRU55ZERsNEM2R2ttR1M0alB3ckxXbmU5S3AxZjF6NmpaUG84Umlm?= =?utf-8?B?dEtwRWNtajZJQXJVN20vZVZZTHI4NFQvR1RNdHVJL243b3A4eWR3VGR1THBv?= =?utf-8?B?N1FGMXRmbkpYMXBZV3RVOFdZNmdpTTQyMm1yczNWRWl0ZmxDQS9IT3RKWFZJ?= =?utf-8?B?UTI1NkpWR2UzRGRyVFZrVlZGZE9oOWpKckQwWmxRbTcrUFlJOGc3d1BIcENw?= =?utf-8?B?YWhPMFlhMUwzUTVTS0U2S1d2YTloRU01R1E1NVJ1S0g4VU5KNmpvTExRQ1Rp?= =?utf-8?B?d085dkxOM0R4MDRTUW9wSjJGYXZQQWxBaDJJd2NkNnRVamNrOTBBRlRPUk9L?= =?utf-8?B?bXpuR2pOMVdBTUhLVk92bHpEbVVLRE5oL1plWVdzTmt0TVRSV1ZCc2RnakQr?= =?utf-8?B?cmdldERpK0FJZldOYXFOYXF5L295S0x3Rm1YbDRmTVE5MEVCb2NRK2JMWkp6?= =?utf-8?B?QUFYUFh5cE1hUlZZaWtaSzdseVl4UVNpdHg1YzZISytGMzhVQTBlTlh6ckJm?= =?utf-8?B?aWprWDNZRnhOcEE3UjdmcExKZkk4MWQ1c0xzNjBoMEdaL2dMaGZHUGlVOTlW?= =?utf-8?B?V3RMeXIveEFrSEQ1WHlUd3BnQktiVXFWM3Q2ZlJnWUJybUZKSlBKOTRrMTBJ?= =?utf-8?B?emFmZFJaWHBPQVRqUVUzSE1DclduZnJvQVFTZmZkZS85WlBjaUt5UFhaNCs1?= =?utf-8?B?RDBYQUZad3o4YSs1VmJqb2dzWjJtdk9GYzVPYUNwVjhsNklEQ1gvNjFiOHpM?= =?utf-8?B?clQzTlN2ZGVzR2xJQncvZkZuc2dmbTU3VnRxeXF3Y003UWVGM1JKblJ2ZG9k?= =?utf-8?B?eEE9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: zGXF1FY9FPdIvt3V/emV6qIyHUsY5NEy7pOMhjbvotnL9S8PazBnGQF/qrG286MhSgrIvS17KWSS7jHv6et2B5dn+d/BB0A1i9SLVRIWrYlThks+lBgA+7xST4e1Rnl4zTnKJ8aD5z0AR5tsU2WNN7CXqpIFLurI063eRYmT/+YDoiJb0m2g8OoZfQiJoOavOECJ1aMO5VND4sfurzjFHn+D0rt4QEIpr3xDbYf+zACpGZXn4tcWR3asJlDTkee6ZLB81uy7eYlP4FEOFZ4sxZpNmeYQGi4f6Un/IIo8E2CrlY6XwrAwSynKoBNNA9ZyEJdSA/JLns+IPrQexjRfTB468xZomApVF/MGJm31qk+xf2z6vP2rNzwR0Y/64D1Z3QxS2bvmsO6Qr2jozCFZU9NkASuKSPMGuBSxiIHVbOnZ2KC966bl+kP9+etgHQ+/GUXEo95zPoG0MBDQm0pkWVWUy3BRRwBWqJheIldjU3Ji8mYRXqGo7zHK3AZ3mH3Q406ysjr1XhHUa6au4mr1Gz4wr/Hv7GRE1Dt92wmsG1eKk8DcNNwNzgHJIpNHbFPUXGLvGfcNQ5CeXqf0emsmLZJc5q/LvqqeQ+PXMsaZU5MhoEDQ9ywhLpa1K9cO5z5pR/0GDmBffq18ZgTO2CiUIsbBc2/DApLzq3cClP/ksntMWbiCJtDnceRc7NEZ/7ScwnnqVUuuu1fdw+Tv0zHrTFvzvNq0TMDN51kA2/nHfmIReKk7OPOuHQHqQ9738eJwaDzr+F7MWAxl6jjNPOkPBmd8ikg1m8sNNXjN7uvCLjYCMMnCR2zN5Yh+LL/I3WoerUdZdIKqjRcDgqs2C9+QgkHWtomRozXLzUjsaItm8XD4sBFHoYg/LSS2g/nJOkME X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: d53dd242-472b-4ebb-ee05-08db7372e854 X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 22 Jun 2023 22:49:16.6845 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: FFEL7oJhJPJtGtF4/ESBKi24cyvNKtBJx2WS/hjfrtYAFlVGVQnMIhOpv2dAF7X1EGTPzB2kleT/JW9k9F4/9XNJz4HTDVwISlMw61XHMeQ= X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN9PR03MB6201 On 22/06/2023 9:57 pm, Shawn Anastasio wrote: > Update ppc64/head.S to set up an initial boot stack, zero the .bss > section, and jump to C. > > Also refactor the endian fixup trampoline into its own macro, since it > will need to be used in multiple places, including every time we make a > call into firmware (see next commit). > > Signed-off-by: Shawn Anastasio Thankyou for making this change - it definitely simplifies things. > --- > xen/arch/ppc/Makefile | 1 + > xen/arch/ppc/include/asm/asm-defns.h | 36 ++++++++++++++++++ > xen/arch/ppc/ppc64/head.S | 55 ++++++++++++++++++---------- > xen/arch/ppc/setup.c | 13 +++++++ > 4 files changed, 85 insertions(+), 20 deletions(-) > create mode 100644 xen/arch/ppc/include/asm/asm-defns.h > create mode 100644 xen/arch/ppc/setup.c > > diff --git a/xen/arch/ppc/Makefile b/xen/arch/ppc/Makefile > index 98220648af..fdbcd730d0 100644 > --- a/xen/arch/ppc/Makefile > +++ b/xen/arch/ppc/Makefile > @@ -1,4 +1,5 @@ > obj-$(CONFIG_PPC64) += ppc64/ > +obj-y += setup.o > > $(TARGET): $(TARGET)-syms > cp -f $< $@ > diff --git a/xen/arch/ppc/include/asm/asm-defns.h b/xen/arch/ppc/include/asm/asm-defns.h > new file mode 100644 > index 0000000000..3db2063a39 > --- /dev/null > +++ b/xen/arch/ppc/include/asm/asm-defns.h > @@ -0,0 +1,36 @@ > +/* SPDX-License-Identifier: GPL-2.0-or-later */ > +#ifndef _ASM_PPC_ASM_DEFNS_H > +#define _ASM_PPC_ASM_DEFNS_H > + > +/* > + * Load a 64-bit immediate value into the specified GPR. > + */ > +#define LOAD_IMM64(reg, val) \ > + lis reg, (val) @highest; \ > + ori reg, reg, (val) @higher; \ > + rldicr reg, reg, 32, 31; \ > + oris reg, reg, (val) @h; \ > + ori reg, reg, (val) @l; > + > +/* > + * Depending on how we were booted, the CPU could be running in either > + * Little Endian or Big Endian mode. The following trampoline from Linux > + * cleverly uses an instruction that encodes to a NOP if the CPU's > + * endianness matches the assumption of the assembler (LE, in our case) > + * or a branch to code that performs the endian switch in the other case. > + */ > +#define FIXUP_ENDIAN \ > + tdi 0, 0, 0x48; /* Reverse endian of b . + 8 */ \ > + b . + 44; /* Skip trampoline if endian is good */ \ > + .long 0xa600607d; /* mfmsr r11 */ \ > + .long 0x01006b69; /* xori r11,r11,1 */ \ > + .long 0x00004039; /* li r10,0 */ \ > + .long 0x6401417d; /* mtmsrd r10,1 */ \ > + .long 0x05009f42; /* bcl 20,31,$+4 */ \ > + .long 0xa602487d; /* mflr r10 */ \ > + .long 0x14004a39; /* addi r10,r10,20 */ \ > + .long 0xa6035a7d; /* mtsrr0 r10 */ \ > + .long 0xa6037b7d; /* mtsrr1 r11 */ \ > + .long 0x2400004c /* rfid */ > + > +#endif /* _ASM_PPC_ASM_DEFNS_H */ > diff --git a/xen/arch/ppc/ppc64/head.S b/xen/arch/ppc/ppc64/head.S > index 2fcefb40d8..a7db5b7de2 100644 > --- a/xen/arch/ppc/ppc64/head.S > +++ b/xen/arch/ppc/ppc64/head.S > @@ -1,30 +1,45 @@ > /* SPDX-License-Identifier: GPL-2.0-or-later */ > > +#include > + > .section .text.header, "ax", %progbits > > ENTRY(start) > /* > - * Depending on how we were booted, the CPU could be running in either > - * Little Endian or Big Endian mode. The following trampoline from Linux > - * cleverly uses an instruction that encodes to a NOP if the CPU's > - * endianness matches the assumption of the assembler (LE, in our case) > - * or a branch to code that performs the endian switch in the other case. > + * NOTE: argument registers (r3-r9) must be preserved until the C entrypoint > */ > - tdi 0, 0, 0x48 /* Reverse endian of b . + 8 */ > - b . + 44 /* Skip trampoline if endian is good */ > - .long 0xa600607d /* mfmsr r11 */ > - .long 0x01006b69 /* xori r11,r11,1 */ > - .long 0x00004039 /* li r10,0 */ > - .long 0x6401417d /* mtmsrd r10,1 */ > - .long 0x05009f42 /* bcl 20,31,$+4 */ > - .long 0xa602487d /* mflr r10 */ > - .long 0x14004a39 /* addi r10,r10,20 */ > - .long 0xa6035a7d /* mtsrr0 r10 */ > - .long 0xa6037b7d /* mtsrr1 r11 */ > - .long 0x2400004c /* rfid */ > - > - /* Now that the endianness is confirmed, continue */ > -1: b 1b > + FIXUP_ENDIAN > + > + /* set up the initial stack */ > + LOAD_IMM64(%r1, cpu0_boot_stack) > + li %r11, 0 > + std %r11, 0(%r1) I've done a bit of reading around, and it's rather sad that things prior to Power10 don't have PC-relative addressing.  So the LOAD_IMM64()'s do look necessary for the stack and bss.  I guess that means we can't be sensibly be position independent in head.S? Also, why store 0 onto the stack ? > + > + /* clear .bss */ > + LOAD_IMM64(%r14, __bss_start) > + LOAD_IMM64(%r15, __bss_end) > +1: > + std %r11, 0(%r14) > + addi %r14, %r14, 8 > + cmpld %r14, %r15 > + blt 1b This loop is correct, except for the corner case of this patch alone, where the BSS is empty and this will write one word out-of-bounds. For RISC-V, we put a temporary "char bss_tmp;" in setup.c, and I suggest you do the same here, deleting it at a later point when there's real data in the bss. > + > + /* call the C entrypoint */ > + LOAD_IMM64(%r12, start_xen) > + mtctr %r12 > + bctrl Why is this a LOAD_IMM64(), and not just:     b start_xen ?  From the same reading around, PPC64 seems to have +/- 32M addressing for branches, and the entire x86 hypervisor (.init included) is within 3M. > + > + /* should never return */ > + trap > > .size start, . - start > .type start, %function > + > + .section .init.data, "aw", @progbits > + > + /* Early init stack */ > + .p2align 4 > +cpu0_boot_stack_bottom: > + .space STACK_SIZE > +cpu0_boot_stack: > + .space STACK_FRAME_OVERHEAD Why the extra space beyond the stack? Also, I'd put cpu0_boot_stack in C, and just LOAD_IMM64(x, cpu0_boot_stack + STACK_SIZE) > diff --git a/xen/arch/ppc/setup.c b/xen/arch/ppc/setup.c > new file mode 100644 > index 0000000000..4d1b72fa23 > --- /dev/null > +++ b/xen/arch/ppc/setup.c > @@ -0,0 +1,13 @@ > +/* SPDX-License-Identifier: GPL-2.0-or-later */ > +#include > + > +void __init noreturn start_xen(unsigned long r3, unsigned long r4, > + unsigned long r5, unsigned long r6, > + unsigned long r7) > +{ > + for ( ;; ) > + /* Set current hardware thread to very low priority */ > + asm volatile("or %r31, %r31, %r31"); Is there something magic about the OR instruction, or something magic about %r31? For a RISC architecture, this seems subtle. ~Andrew From xen-devel-bounces@lists.xenproject.org Fri Jun 23 01:10:26 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 23 Jun 2023 01:10:26 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554191.865241 (Exim 4.92) (envelope-from ) id 1qCVJP-00054f-31; Fri, 23 Jun 2023 01:10:07 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554191.865241; Fri, 23 Jun 2023 01:10:07 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCVJO-00054T-TZ; Fri, 23 Jun 2023 01:10:06 +0000 Received: by outflank-mailman (input) for mailman id 554191; Fri, 23 Jun 2023 01:10:06 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCVJO-00054C-8s; Fri, 23 Jun 2023 01:10:06 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCVJN-00086H-Tn; Fri, 23 Jun 2023 01:10:05 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCVJN-000570-4x; Fri, 23 Jun 2023 01:10:05 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qCVJN-0002Ig-4G; Fri, 23 Jun 2023 01:10:05 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=5IlhleSjTdcc02IPo/wltHOHJl+K11z8a5/yzeysd08=; b=1W4y2PVWLtDte9bxOuMhkVsqgx YPlwVTs78n++Hnr3Dy0Dle93WDajFVICnIwjQzPi3WfPbNqisW64izVQ6NkPTILcVOukW9/6UatZZ VRf8QNMpyDxUR+WGHZXGd/Qb+4RtihKWIl5z1lyNEnVGYM15ia28eseZTAfWXmvmJCOM=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable test] 181552: regressions - FAIL X-Osstest-Failures: xen-unstable:test-amd64-amd64-xl-qcow2:guest-start/debian.repeat:fail:regression xen-unstable:test-amd64-amd64-xl:guest-localmigrate/x10:fail:heisenbug xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking X-Osstest-Versions-This: xen=5c84f1f636981dab5341e84aaba8d4dd00bbc2cb X-Osstest-Versions-That: xen=7a25a1501ca941c3e01b0c4e624ace05417f1587 From: osstest service owner Date: Fri, 23 Jun 2023 01:10:05 +0000 flight 181552 xen-unstable real [real] flight 181556 xen-unstable real-retest [real] http://logs.test-lab.xenproject.org/osstest/logs/181552/ http://logs.test-lab.xenproject.org/osstest/logs/181556/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: test-amd64-amd64-xl-qcow2 21 guest-start/debian.repeat fail REGR. vs. 181545 Tests which are failing intermittently (not blocking): test-amd64-amd64-xl 20 guest-localmigrate/x10 fail pass in 181556-retest Tests which did not succeed, but are not blocking: test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 181545 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop fail like 181545 test-armhf-armhf-libvirt 16 saverestore-support-check fail like 181545 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 181545 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 181545 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop fail like 181545 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop fail like 181545 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail like 181545 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 181545 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail like 181545 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop fail like 181545 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 181545 test-amd64-i386-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-i386-xl-pvshim 14 guest-start fail never pass test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-i386-libvirt 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-i386-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 15 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass test-armhf-armhf-libvirt 15 migrate-support-check fail never pass test-armhf-armhf-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 15 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 16 saverestore-support-check fail never pass test-armhf-armhf-xl-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 15 saverestore-support-check fail never pass test-armhf-armhf-xl 15 migrate-support-check fail never pass test-armhf-armhf-xl 16 saverestore-support-check fail never pass test-armhf-armhf-xl-multivcpu 15 migrate-support-check fail never pass test-armhf-armhf-xl-multivcpu 16 saverestore-support-check fail never pass test-armhf-armhf-xl-credit1 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 16 saverestore-support-check fail never pass test-armhf-armhf-xl-credit2 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit2 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail never pass version targeted for testing: xen 5c84f1f636981dab5341e84aaba8d4dd00bbc2cb baseline version: xen 7a25a1501ca941c3e01b0c4e624ace05417f1587 Last test of basis 181545 2023-06-22 01:52:10 Z 0 days Testing same since 181552 2023-06-22 13:08:10 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Alistair Francis Andrew Cooper Anthony PERARD Henry Wang Jan Beulich Jiamei Xie Julien Grall Michal Orzel Oleksii Kurochko Roger Pau Monné Shawn Anastasio Stefano Stabellini Stefano Stabellini jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64-xtf pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-prev pass build-i386-prev pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-xtf-amd64-amd64-1 pass test-xtf-amd64-amd64-2 pass test-xtf-amd64-amd64-3 pass test-xtf-amd64-amd64-4 pass test-xtf-amd64-amd64-5 pass test-amd64-amd64-xl fail test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl pass test-amd64-i386-xl pass test-amd64-coresched-i386-xl pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-i386-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-i386-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-i386-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-i386-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-i386-qemut-rhel6hvm-amd pass test-amd64-i386-qemuu-rhel6hvm-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-i386-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-freebsd10-amd64 pass test-amd64-amd64-qemuu-freebsd11-amd64 pass test-amd64-amd64-qemuu-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-i386-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-i386-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-i386-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-amd64-i386-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale pass test-amd64-amd64-examine-bios pass test-amd64-i386-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 pass test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 pass test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine pass test-amd64-i386-examine pass test-amd64-i386-freebsd10-i386 pass test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-i386-qemut-rhel6hvm-intel pass test-amd64-i386-qemuu-rhel6hvm-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt pass test-amd64-i386-libvirt pass test-amd64-amd64-livepatch pass test-amd64-i386-livepatch pass test-amd64-amd64-migrupgrade pass test-amd64-i386-migrupgrade pass test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu pass test-amd64-amd64-pair pass test-amd64-i386-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-i386-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-i386-xl-pvshim fail test-amd64-amd64-pygrub pass test-armhf-armhf-libvirt-qcow2 pass test-amd64-amd64-xl-qcow2 fail test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw pass test-amd64-i386-libvirt-raw pass test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds pass test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-amd64-i386-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-i386-examine-uefi pass test-amd64-amd64-libvirt-vhd pass test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd pass test-amd64-i386-xl-vhd pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 412 lines long.) From xen-devel-bounces@lists.xenproject.org Fri Jun 23 01:26:30 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 23 Jun 2023 01:26:30 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554201.865254 (Exim 4.92) (envelope-from ) id 1qCVZA-0006ok-JP; Fri, 23 Jun 2023 01:26:24 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554201.865254; Fri, 23 Jun 2023 01:26:24 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCVZA-0006od-Gk; Fri, 23 Jun 2023 01:26:24 +0000 Received: by outflank-mailman (input) for mailman id 554201; Fri, 23 Jun 2023 01:26:23 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCVZ9-0006oX-8g for xen-devel@lists.xenproject.org; Fri, 23 Jun 2023 01:26:23 +0000 Received: from raptorengineering.com (mail.raptorengineering.com [23.155.224.40]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id f44ad213-1164-11ee-8611-37d641c3527e; Fri, 23 Jun 2023 03:26:20 +0200 (CEST) Received: from localhost (localhost [127.0.0.1]) by mail.rptsys.com (Postfix) with ESMTP id 24FA38285473; Thu, 22 Jun 2023 20:26:18 -0500 (CDT) Received: from mail.rptsys.com ([127.0.0.1]) by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032) with ESMTP id LJmduH8V5JKp; Thu, 22 Jun 2023 20:26:16 -0500 (CDT) Received: from localhost (localhost [127.0.0.1]) by mail.rptsys.com (Postfix) with ESMTP id 7E15B82854A7; Thu, 22 Jun 2023 20:26:16 -0500 (CDT) Received: from mail.rptsys.com ([127.0.0.1]) by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id Vp3M3rTHHKTq; Thu, 22 Jun 2023 20:26:16 -0500 (CDT) Received: from [10.11.0.2] (5.edge.rptsys.com [23.155.224.38]) by mail.rptsys.com (Postfix) with ESMTPSA id 15DC38285473; Thu, 22 Jun 2023 20:26:16 -0500 (CDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: f44ad213-1164-11ee-8611-37d641c3527e DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com 7E15B82854A7 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD; t=1687483576; bh=01QYuXXfM11/GjbhNhAQNgLOfnacAB/js5Sf+VluA1w=; h=Message-ID:Date:MIME-Version:To:From; b=QUm1BiMsoCt0XwZqj/aBTtk0yonp7asAzeQfdl1vnjwYGNFcsvUbIvxPcfDKOyPsF U2i+CGCoojxbd+n/zFD5WhJoabhNTz5x+wZoLMcso4ZhahQkX5OSeARA+RyUXNEUnJ ncvx9j+bkTqQcZxaPfvnav7PiN22uDEnrctI69vA= X-Virus-Scanned: amavisd-new at rptsys.com Message-ID: <5011cde3-b553-6a17-85aa-a30edf3102fd@raptorengineering.com> Date: Thu, 22 Jun 2023 20:26:15 -0500 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux ppc64le; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v2 1/3] xen/ppc: Set up a basic C environment Content-Language: en-US To: Andrew Cooper , xen-devel@lists.xenproject.org Cc: Timothy Pearson , Jan Beulich , Julien Grall References: <1afe27097c5e1b55dcffa9464dc0cd0c1038a23e.1687466822.git.sanastasio@raptorengineering.com> From: Shawn Anastasio In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit On 6/22/23 5:49 PM, Andrew Cooper wrote: > On 22/06/2023 9:57 pm, Shawn Anastasio wrote: >> Update ppc64/head.S to set up an initial boot stack, zero the .bss >> section, and jump to C. >> >> Also refactor the endian fixup trampoline into its own macro, since it >> will need to be used in multiple places, including every time we make a >> call into firmware (see next commit). >> >> Signed-off-by: Shawn Anastasio > > Thankyou for making this change - it definitely simplifies things. No problem. > I've done a bit of reading around, and it's rather sad that things prior > to Power10 don't have PC-relative addressing. So the LOAD_IMM64()'s do > look necessary for the stack and bss. I guess that means we can't be > sensibly be position independent in head.S? Prior to the introduction of pcrel loads/stores in P10, PIC is achieved using a Table of Contents (TOC) whose base address is kept in r2 and can be used as a relative base to address other symbols. I don't have -fPIC enabled in this series yet (it's in the series I was hoping to submit after this one), so for now I'm just loading the addresses as immediates directly. > Also, why store 0 onto the stack ? On the ELFv2 ABI which we're using here, sp+0 is reserved for the "back chain" pointer which is used to store the address of the caller's stack frame and is used to support backtraces. At the top of the stack, we need to make sure the first back chain pointer is zero to ensure that anything walking the stack via these pointers eventually terminates. >> + >> + /* clear .bss */ >> + LOAD_IMM64(%r14, __bss_start) >> + LOAD_IMM64(%r15, __bss_end) >> +1: >> + std %r11, 0(%r14) >> + addi %r14, %r14, 8 >> + cmpld %r14, %r15 >> + blt 1b > > This loop is correct, except for the corner case of this patch alone, > where the BSS is empty and this will write one word out-of-bounds. > > For RISC-V, we put a temporary "char bss_tmp;" in setup.c, and I suggest > you do the same here, deleting it at a later point when there's real > data in the bss. Good catch. I actually introduce a .bss variable in patch 2 of this series, so perhaps it would make the most sense for me to move this loop to that patch? Also it might make sense to have an assert in the linker script checking that sizeof(.bss) > 0, though past early bring-up an empty .bss is probably a pretty unlikely scenario... >> + >> + /* call the C entrypoint */ >> + LOAD_IMM64(%r12, start_xen) >> + mtctr %r12 >> + bctrl > > Why is this a LOAD_IMM64(), and not just: > > b start_xen > > ? From the same reading around, PPC64 seems to have +/- 32M addressing > for branches, and the entire x86 hypervisor (.init included) is within 3M. Good question. You're right that here it's entirely unnecessary. Once we enable -fPIC, though, the calling convention for functions changes a bit and necessitates that in certain scenarios r12 contains the entrypoint of the function being called. For reference, the reason this is needed is because each function contains a prologue that calculates the base address of its aforementioned TOC as a relative offset from its entrypoint, and for that to work, the entrypoint needs to be contained in r12. There is a short path that can be taken if the TOC pointer in r2 is already set up and the calling function is in the same module as the function being called (and thus they are known to share a TOC), but for head.S simply taking the long path is an easy way to ensure the callee has a valid TOC pointer. In any case, its inclusion in this patch before -fPIC is enabled was an oversight on my part and I'll change it to a `bl start_xen`. >> + >> + /* should never return */ >> + trap >> >> .size start, . - start >> .type start, %function >> + >> + .section .init.data, "aw", @progbits >> + >> + /* Early init stack */ >> + .p2align 4 >> +cpu0_boot_stack_bottom: >> + .space STACK_SIZE >> +cpu0_boot_stack: >> + .space STACK_FRAME_OVERHEAD > > Why the extra space beyond the stack? It's space for the aforementioned back chain pointer as well as a few other things that callees are allowed to store in their caller's stack frame. For example, routines are allowed to store the return address from their caller at sp+16 (unlike x86, our "call" instruction doesn't do that for you). The ELFv2 specification contains a nice diagram of the stack frame on page 31 (figure 2.18, section 2.2.2.1): https://wiki.raptorcs.com/w/images/7/70/Leabi-20170510.pdf > Also, I'd put cpu0_boot_stack in C, and just LOAD_IMM64(x, > cpu0_boot_stack + STACK_SIZE) Sure, I can do that. >> diff --git a/xen/arch/ppc/setup.c b/xen/arch/ppc/setup.c >> new file mode 100644 >> index 0000000000..4d1b72fa23 >> --- /dev/null >> +++ b/xen/arch/ppc/setup.c >> @@ -0,0 +1,13 @@ >> +/* SPDX-License-Identifier: GPL-2.0-or-later */ >> +#include >> + >> +void __init noreturn start_xen(unsigned long r3, unsigned long r4, >> + unsigned long r5, unsigned long r6, >> + unsigned long r7) >> +{ >> + for ( ;; ) >> + /* Set current hardware thread to very low priority */ >> + asm volatile("or %r31, %r31, %r31"); > > Is there something magic about the OR instruction, or something magic > about %r31? Using the OR instruction with all three operands equal is of course a no-op, but when using certain registers it can have a separate magic side effect. `or r31,31,31` is one such form that sets the Program Priority Register to "very low" priority. Of course here where we don't have SMP going there's not much point in using this over the standard side effect-less no-op (`or r0,r0,r0` or just `nop`). For a table of these magic OR forms, you can see page 836 of the Power ISA 3.0B: https://wiki.raptorcs.com/w/images/c/cb/PowerISA_public.v3.0B.pdf > ~Andrew Thanks, Shawn From xen-devel-bounces@lists.xenproject.org Fri Jun 23 05:27:07 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 23 Jun 2023 05:27:07 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554209.865273 (Exim 4.92) (envelope-from ) id 1qCZJn-00063g-5h; Fri, 23 Jun 2023 05:26:47 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554209.865273; Fri, 23 Jun 2023 05:26:47 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCZJn-00063Y-0W; Fri, 23 Jun 2023 05:26:47 +0000 Received: by outflank-mailman (input) for mailman id 554209; Fri, 23 Jun 2023 05:26:45 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCZJl-00063O-JS; Fri, 23 Jun 2023 05:26:45 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCZJl-0006Hv-A6; Fri, 23 Jun 2023 05:26:45 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCZJk-0001Dj-OK; Fri, 23 Jun 2023 05:26:44 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qCZJk-0001GM-O1; Fri, 23 Jun 2023 05:26:44 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=X4kF/+LN/eXVaI/xkOwedSgTkhPxqhCFQcCLSO3Y2rs=; b=CO2x+nlF+Q7eko/UoxIJwcf29e KQ7AJkoY3xlvUF+NlxbUIbih+APTExMeCpcHcnW1ErfqjltZwsa/7+l/9+lQmaO8bpKrNSs+8V6Sa UhtwEqjikK4LydJFME9TSGczBudacYXQeI58T3G40Wo1aKNyAG3bFFrVSr5Xj59uxCw8=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [linux-5.4 test] 181553: regressions - FAIL X-Osstest-Failures: linux-5.4:build-arm64-pvops:kernel-build:fail:regression linux-5.4:test-amd64-i386-qemut-rhel6hvm-amd:xen-install:fail:heisenbug linux-5.4:test-amd64-i386-qemuu-rhel6hvm-amd:xen-install:fail:heisenbug linux-5.4:test-armhf-armhf-xl-arndale:guest-start/debian.repeat:fail:heisenbug linux-5.4:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:xen-install:fail:heisenbug linux-5.4:test-arm64-arm64-xl:build-check(1):blocked:nonblocking linux-5.4:test-arm64-arm64-examine:build-check(1):blocked:nonblocking linux-5.4:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking linux-5.4:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking linux-5.4:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking linux-5.4:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking linux-5.4:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking linux-5.4:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking linux-5.4:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-xl-rtds:guest-start/debian.repeat:fail:nonblocking linux-5.4:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-credit2:guest-start/debian.repeat:fail:nonblocking linux-5.4:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking linux-5.4:test-armhf-armhf-xl-credit1:guest-start/debian.repeat:fail:nonblocking linux-5.4:test-amd64-amd64-xl-qcow2:guest-start/debian.repeat:fail:nonblocking linux-5.4:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking linux-5.4:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking linux-5.4:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking linux-5.4:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: linux=f2b499c27a959d062db9ea5c3036052d90110ee4 X-Osstest-Versions-That: linux=f568a20f058fa1e37069cff4aac4187c1650a0e9 From: osstest service owner Date: Fri, 23 Jun 2023 05:26:44 +0000 flight 181553 linux-5.4 real [real] http://logs.test-lab.xenproject.org/osstest/logs/181553/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-arm64-pvops 6 kernel-build fail in 181551 REGR. vs. 181363 Tests which are failing intermittently (not blocking): test-amd64-i386-qemut-rhel6hvm-amd 7 xen-install fail in 181551 pass in 181553 test-amd64-i386-qemuu-rhel6hvm-amd 7 xen-install fail in 181551 pass in 181553 test-armhf-armhf-xl-arndale 18 guest-start/debian.repeat fail in 181551 pass in 181553 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 7 xen-install fail pass in 181551 Tests which did not succeed, but are not blocking: test-arm64-arm64-xl 1 build-check(1) blocked in 181551 n/a test-arm64-arm64-examine 1 build-check(1) blocked in 181551 n/a test-arm64-arm64-xl-thunderx 1 build-check(1) blocked in 181551 n/a test-arm64-arm64-xl-credit2 1 build-check(1) blocked in 181551 n/a test-arm64-arm64-xl-xsm 1 build-check(1) blocked in 181551 n/a test-arm64-arm64-libvirt-xsm 1 build-check(1) blocked in 181551 n/a test-arm64-arm64-xl-credit1 1 build-check(1) blocked in 181551 n/a test-arm64-arm64-libvirt-raw 1 build-check(1) blocked in 181551 n/a test-arm64-arm64-xl-vhd 1 build-check(1) blocked in 181551 n/a test-armhf-armhf-xl-rtds 18 guest-start/debian.repeat fail in 181551 like 181363 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail in 181551 never pass test-armhf-armhf-xl-credit2 18 guest-start/debian.repeat fail like 181336 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 181363 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop fail like 181363 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop fail like 181363 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 181363 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 181363 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 181363 test-armhf-armhf-xl-credit1 18 guest-start/debian.repeat fail like 181363 test-amd64-amd64-xl-qcow2 21 guest-start/debian.repeat fail like 181363 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop fail like 181363 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail like 181363 test-armhf-armhf-libvirt 16 saverestore-support-check fail like 181363 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail like 181363 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop fail like 181363 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 181363 test-amd64-i386-xl-pvshim 14 guest-start fail never pass test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-i386-libvirt 15 migrate-support-check fail never pass test-amd64-i386-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-armhf-armhf-xl-credit2 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit2 16 saverestore-support-check fail never pass test-armhf-armhf-xl-multivcpu 15 migrate-support-check fail never pass test-armhf-armhf-xl-multivcpu 16 saverestore-support-check fail never pass test-amd64-i386-libvirt-raw 14 migrate-support-check fail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-armhf-armhf-xl-credit1 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 16 saverestore-support-check fail never pass test-armhf-armhf-xl-rtds 15 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 16 saverestore-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass test-armhf-armhf-xl 15 migrate-support-check fail never pass test-armhf-armhf-xl 16 saverestore-support-check fail never pass test-armhf-armhf-xl-arndale 15 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail never pass test-armhf-armhf-libvirt 15 migrate-support-check fail never pass test-armhf-armhf-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 15 saverestore-support-check fail never pass version targeted for testing: linux f2b499c27a959d062db9ea5c3036052d90110ee4 baseline version: linux f568a20f058fa1e37069cff4aac4187c1650a0e9 Last test of basis 181363 2023-06-10 15:39:59 Z 12 days Failing since 181425 2023-06-14 10:50:49 Z 8 days 16 attempts Testing same since 181542 2023-06-21 23:13:50 Z 1 days 3 attempts ------------------------------------------------------------ People who touched revisions under test: Adrian Hunter Ahmed Zaki Ai Chao Alan Stern Aleksandr Loktionov Alex Deucher Alex Maftei Alexander Kapshuk Alexander Sverdlin Alexandru Sorodoc Andrew Morton Arnd Bergmann Bartosz Golaszewski Ben Hutchings Ben Skeggs Bernhard Seibold Bjørn Mork Bob Pearson Chia-I Wu Chris Paterson (CIP) Christian Loehle Christoph Hellwig Dan Carpenter Dave Airlie David Ahern David Howells David Jander David S. Miller David Sterba Dinh Nguyen Dmitry Torokhov Edson Juliano Drosdeck Edward Srouji Elson Roy Serrao Eric Dumazet Fedor Pchelkin Florian Fainelli Florian Westphal Gaosheng Cui Greg Kroah-Hartman Guenter Roeck Guillaume Nault Gustavo A. R. Silva Hangbin Liu Hangyu Hua Hans de Goede Harshit Mogalapalli Helge Deller Ian Ziemba Ilya Dryomov Ismael Ferreras Morezuelas JaimeLiao Jakub Kicinski Jamal Hadi Salim Jan Höppner Janne Grunau Jason Gunthorpe Jens Axboe Jerry Meng Jiri Slaby (SUSE) Johan Hovold Johannes Thumshirn Jon Hunter Josef Bacik Joseph Qi Jozsef Kadlecsik Juergen Gross Krzysztof Kozlowski Kuniyuki Iwashima Lee Jones Leon Romanovsky Leon Romanovsky Lin Ma Linus Torvalds Linus Walleij Linux Kernel Functional Testing Lisa Chen (陈敏捷) Liviu Dudau Luis Chamberlain Luiz Augusto von Dentz Luís Henriques Luís Henriques Lyude Paul Manuel Lauss Marc Dionne Marc Kleine-Budde Marc Zyngier Marek Vasut Mario Limonciello Mark Brown Martin Blumenstingl Martin Hundebøll Maxime Ripard Michael Chan Min Li Miquel Raynal Mirsad Goran Todorovac Mirsad Todorovac Natalia Petrova Nikolay Aleksandrov Oleksij Rempel Osama Muhammad Pablo Neira Ayuso Paolo Abeni Paulo Alcantara (SUSE) Paulo Alcantara Qingfang DENG Rafal Romanowski Randy Dunlap RenHai Ricardo Ribalda Richard Cochran Rishabh Bhatnagar Roberto Sassu Ross Lagerwall Ruihan Li Ryusuke Konishi Saravanan Vajravel Sasha Levin Sebastian Reichel Selvin Xavier Shuah Khan Simon Wunderlich Somnath Kotur Stefan Berger Stefan Ghinea Stefan Haberland Stephan Gerhold Stephen Hemminger Steve French Sudeep Holla Sudip Mukherjee Sukrut Bellary Sungwoo Kim Sven Eckelmann Takashi Iwai Tejun Heo Theodore Ts'o Thinh Nguyen Thomas Bogendoerfer Tijs Van Buggenhout Tony Nguyen Ulf Hansson Uwe Kleine-König Ville Syrjälä Vlad Buslov Vladimir Oltean Vladislav Efanov Wes Huang Wolfram Sang Xin Long Xiubo Li Ying Hsu Yishai Hadas YouChing Lin Zhu Yanjun Zixuan Fu jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl pass test-amd64-i386-xl pass test-amd64-coresched-i386-xl pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm fail test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-i386-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-i386-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-i386-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-i386-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-i386-qemut-rhel6hvm-amd pass test-amd64-i386-qemuu-rhel6hvm-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-i386-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-freebsd10-amd64 pass test-amd64-amd64-qemuu-freebsd11-amd64 pass test-amd64-amd64-qemuu-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-i386-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-i386-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-i386-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-amd64-i386-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale pass test-amd64-amd64-examine-bios pass test-amd64-i386-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 fail test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 fail test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine pass test-amd64-i386-examine pass test-amd64-i386-freebsd10-i386 pass test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-i386-qemut-rhel6hvm-intel pass test-amd64-i386-qemuu-rhel6hvm-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt pass test-amd64-i386-libvirt pass test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu pass test-amd64-amd64-pair pass test-amd64-i386-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-i386-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-i386-xl-pvshim fail test-amd64-amd64-pygrub pass test-armhf-armhf-libvirt-qcow2 pass test-amd64-amd64-xl-qcow2 fail test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw pass test-amd64-i386-libvirt-raw pass test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds pass test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-amd64-i386-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-i386-examine-uefi pass test-amd64-amd64-libvirt-vhd pass test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd pass test-amd64-i386-xl-vhd pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 3426 lines long.) From xen-devel-bounces@lists.xenproject.org Fri Jun 23 06:34:43 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 23 Jun 2023 06:34:43 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554219.865286 (Exim 4.92) (envelope-from ) id 1qCaNJ-0004wr-UY; Fri, 23 Jun 2023 06:34:29 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554219.865286; Fri, 23 Jun 2023 06:34:29 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCaNJ-0004wk-Rk; Fri, 23 Jun 2023 06:34:29 +0000 Received: by outflank-mailman (input) for mailman id 554219; Fri, 23 Jun 2023 06:34:28 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCaNI-0004we-3Q for xen-devel@lists.xenproject.org; Fri, 23 Jun 2023 06:34:28 +0000 Received: from EUR05-DB8-obe.outbound.protection.outlook.com (mail-db8eur05on20630.outbound.protection.outlook.com [2a01:111:f400:7e1a::630]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id fe7851cb-118f-11ee-8611-37d641c3527e; Fri, 23 Jun 2023 08:34:24 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by DU0PR04MB9324.eurprd04.prod.outlook.com (2603:10a6:10:357::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.26; Fri, 23 Jun 2023 06:34:22 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6521.024; Fri, 23 Jun 2023 06:34:22 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: fe7851cb-118f-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=TSgO1QrWR/Jka0HAoXd8dVzwUppxfLpa47gt/RCH4t4tuagyefFIbKbgMdZm4FOdx9stsepwIbCk+wcA/gM7I4se7i0MPbA+mHhVwAMlqvRBBb+1BZigO/ZMiWrgXmI4vJ1UCoJyoSRRI3Hq5NIz2bTX9arjS6h9l9unpCYypJKXPjpEC8vw+J0XsZm+zBCfSdQdEmmCN98RdKCzSj3l15acjgvGjP398H4gYbJ9R+RoqMuvQbHHmNGdu2RsDL5IhQJKx0uluRqsn7ooSvR2TMvRFJmk6dYH/kUXKmDH0UvWSRuMYQS+4T6cbKf9tdw6nWHC67uwY2YRziPmWYNOAw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=6EdVSHky/o+iTh9FJ0jzTnOzH+1V/kyuI4qmjY0voV0=; b=QjWCD1LXvOH65/lgkMIA0naVDT9DfutbWXOk/StNH5+eY31pH6yxFaS2t1tTN+T2H8HsYHI8sux/Op5TBPHT1W8zen40lsygIIRRbA1ZOXZsIoO5TXnSfBVulN+BUuQ/sCrnCoTIXXV9Aqw8f9qCfbCx1wVclPw8SJIyo5itW5fKBlwJyd5nco1juY+PpkbYnOJhFs6kHZqZkr6Eg6vF2UOKGVp+SRyPOH7mlcODhzpOgRMQIVOqgce3IxDcik9TGRvuGGxjrus6l98CC4InuWtCvfI1cB0T9sPteD1UARa8tthDG1RZRjTxYPiUT/lU2MnrcKlEym23ZRaCGDcsPw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=6EdVSHky/o+iTh9FJ0jzTnOzH+1V/kyuI4qmjY0voV0=; b=3LamBdISQ+G+Sj9+qfDQgJCc3vdNtAKTpuv2lL0w2jeE97EgPX2qF8+wSIQmGwvjBsXVzTIJ/nsJvL0ZVfQr1O/Ph0lGE9rlNZ9SnRhc41+nmuY8Nn45cznIZ2n+V3LrizeumBPpn6pjZbI35GScwJfJu1ISXqTNzOSsWcp3U2PpAeeEwZFPxbenEabzCfC1A6OQackZji1K+XUso11ukD4EOqx2wAtQAq0jx5ryLfJtEjkrZ7HeE8K3fU16Gq+2sdXbHjftIgfeImHeLXSBFy4NDBn7nNfi+xygqRtiEGM+9C37K3wo6rDP3wxBCwcx8YxfwzLDlXLSBDyaum2YPw== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: Date: Fri, 23 Jun 2023 08:34:20 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v2 1/3] xen/ppc: Set up a basic C environment Content-Language: en-US To: Shawn Anastasio Cc: Timothy Pearson , Julien Grall , Andrew Cooper , xen-devel@lists.xenproject.org References: <1afe27097c5e1b55dcffa9464dc0cd0c1038a23e.1687466822.git.sanastasio@raptorengineering.com> <5011cde3-b553-6a17-85aa-a30edf3102fd@raptorengineering.com> From: Jan Beulich In-Reply-To: <5011cde3-b553-6a17-85aa-a30edf3102fd@raptorengineering.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: AM0PR01CA0121.eurprd01.prod.exchangelabs.com (2603:10a6:208:168::26) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|DU0PR04MB9324:EE_ X-MS-Office365-Filtering-Correlation-Id: 394ce80d-0c0f-4e73-a986-08db73b3e188 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: HiZoBimeVK/8pfHfALOihXmvyj1gPrF5mWXCaS4JC32oTtSwr5MI+tH89FkFVLQqZ/L+ibHeVjohIxU2I35l8ZV7MW7HvdwOwClKlf3IuGcSf1wL+whOzc0zYe/v1g/lxoPjMkAvHxmPOPPEQahzFw350uK/vNIqmLsw7BsoNw20jbKjswRZ+vYRWYCjp+Vx3xeLD4CpTiDMrad56uKYNBaQnuoCzqJEGvKAAZy5+7icqbiSZveolITLfdRz3aMIMSwWTUDQCcxw/ghpSjtwgX+hUGqiPU3SQjT7EUvEk4g+juRO3n9spIYgzzutlEFlrGsYBaRdbvRPIMWpD+ohh3PUGxczH4nb1jzFG5PU5VgZNiVStUhAdmKzpto97Q/XH68p8XdLtqJyV8ZEF0uUwrHWehkEn0alQaQNt87mrB5guSePCfuq5yvsYzY/dE9XX4MVRrCBBuVGNDs57RCvrtF3A9aTuiW+sN430RuAA3uwENyhcsH1kLOsoOa/1vt5omeOXBxmJm6QxhC0vIfHOwWjOpii1SoelSCEuuzSGzOe5SpD+PlcaQiYpE8wgocm+55gQrCK0kgvDCBMwMun1TSufaf4HkpMvXojPMxR/UdF0aDlqYKA969AUGVP4Og/ICHRY6pfWcKYI6i5+1I0BA== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(39860400002)(136003)(346002)(376002)(366004)(396003)(451199021)(53546011)(966005)(26005)(6506007)(6512007)(186003)(2616005)(2906002)(8676002)(41300700001)(8936002)(5660300002)(6486002)(478600001)(4326008)(36756003)(66556008)(66946007)(66476007)(6916009)(316002)(86362001)(54906003)(31696002)(38100700002)(31686004)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?OGo4Q1BoSkp0enViM2xjY0RTbDZzd1VTSi9yMnhyK2N5VWszRU11NHc3VDNw?= =?utf-8?B?Z1lZS0h6ZG5nYisvbHk2MnI0aWdSU0JGUW1jamo3ZFBYelI0eE1WQzBFSmNO?= =?utf-8?B?WnVnY25rSXVrQU42OXJlc08yS3pSaHY1NUI2L0x4YWM4Z3NwbjJPU1ZlbG8y?= =?utf-8?B?Y2gzWEh5NFRYNGdMN05kbU4rdTlUMGttR1ZDOTVZcHNxMFZwY1dDL3lEOHpy?= =?utf-8?B?N2lSa3VXaFp4VEp0UElaRGtkWE96V3dhYzJTSjlRSFllU2xFVWJkQzFZbEhN?= =?utf-8?B?cGxOMExlMXJVaWJublI5enFUbGxLY3FBQ2hFa0QwUnIrRTJKWWlFMTRmOC8y?= =?utf-8?B?WXMzc0lWK056eFRIR2ljU1hIdTdoeGZoVUxEZG9EWFl4OVkzNUNtNzZUNW90?= =?utf-8?B?bmFZSFdWZHFmb3QwbHFxbWp6b3UxYjdNTnZSb1VLcTZGU0hYNmw0T1JOcFFj?= =?utf-8?B?dGVMT2l3YUMvQWxubS9KQzU0Q09JK2VHU0Z2d1BVa0RiMUNNZlkrYWFtZkJ4?= =?utf-8?B?M1BTczNsVXVMUllBZXA2K09KaUs4WTJ0cGpaTUpKT2lkSTZMVDdoZEthZTBs?= =?utf-8?B?NUY4alMxQzJHcTBnb1dZYVhMek5kUExsNXh3TXViR1FKTzNReE1EMVQwQnhl?= =?utf-8?B?OUNkdlNVTXljT3FPOTNweHBEV3Y2NTFEYTJmdUtkWVpuTkEwTHN4WStYd0Vn?= =?utf-8?B?dVZqOFBEdkhVdURVdHpodkNRcUpxMitRZExub2tQZVg1cWF5blFLYVB3SVps?= =?utf-8?B?SzVCMVNmYmtiYldPYzhxaU95a1FyVGVHcWdoZjJCY3R2b1RjVU9FZmEyMHE3?= =?utf-8?B?cHFtUjBnS0NFSUYwakFUK2pmWnBQQXZTM0swUWgvbW5SeFg1RkdKVUFBRnVN?= =?utf-8?B?c3BwSlYxWlU4NGFnVDZzYldSYmhXaUxzVTJDWEJmaWRUS1pUM3VZdy92WXJu?= =?utf-8?B?dlRScytQZHl5OUdBK3NQbXdIZkliN0o2aWpsNW9UL0Jtdzdhb0FuN0tZVEJM?= =?utf-8?B?UFJvY1h6QmkyRlcyM1R6WjBwWncxUDhDZGVnQWxqdStHQzdmMUt1anpaZVYx?= =?utf-8?B?NU9VK01CMTduQ3p4cUVReTBkdW5YRzVkUmsrbzhjUkcvU0JZTXlKZ1ZST2sz?= =?utf-8?B?OUFTY3p4UUQ2YkVPRWFGaVdOV1dVdDJTSHpaRXhSY2xWbGxHTTMvU1E5OVR6?= =?utf-8?B?TXU5NVFZVjRUL2s0cFl2QTNDNnB3V21LQlNrYVNtVzExc2JkTGkzYm9CZHVL?= =?utf-8?B?ZjVWYThBdHAzbEtJSkdqMzBZbFdkc2Y5Q01MWEtvNW1hUzhWdkhmNVYrd0JZ?= =?utf-8?B?N2RQeDlEZFd4QTV2SFhWakJRLzlyYlhkcXQ0eHZpLy9va2FML1N6VWFOOEh0?= =?utf-8?B?YjVJUmV3bjBHNS9DK1R5b3lWeFpRTW5tcW1XL2kxYmkxbHBlYVJ3L2hGT2Ry?= =?utf-8?B?Y1VKeGt6VnZ4T1dWaU5xWUgvaXZoSHkrclBLVWVmRHhwajZpZGF6R3QwaWhY?= =?utf-8?B?Q1NtZlBHYXhPdFFmTGk4ZDdmZ0dNS0NlSzRqKzlPVnAwY1JUZlJIZXRFb1dp?= =?utf-8?B?UG1yeEFoTlhkRE9abzJLZVlXYnNpcThwVzNXQStjUi9hdk43NnV0aDB1Qjg5?= =?utf-8?B?MHV1Yi83YnF3WXplQi9zK2N6QU5VZDA2QTdwZUIxbDhsZnowT04rRkNqSitx?= =?utf-8?B?QkpIQW5DcFI5aUU5RnJyZzZiZ2FlN1d5RUNxL25aT0NNWiszMHByTk03SFMy?= =?utf-8?B?blZwNUtUQ05KbzBneG9NN3UvdlNjSWJTbGdBMzJxZ1hySllCdzQ5Njg2dGVM?= =?utf-8?B?R2JZM2VJOWpTbmtINlpQTkVPNEdlZ2Z1eTdrbkNyOUZGaU1kYTkrOVZMTFpS?= =?utf-8?B?TjRsbWU2SlJWUDZEY3hUQUx2VlB1ck8vMk9mVHhMS2R2L1JnQ3AvWkFBQXpy?= =?utf-8?B?QjgveG52bjNLRG9oSXJYYitZQUZXdEFOOXFnT3ROekZWWTd4YjkxVGt0MzZp?= =?utf-8?B?WFRzVFZRVGpvQU5LMDUzWTYvSEdnZ0EvRUN5N01HbzN4WmJKcis5YUphNXV6?= =?utf-8?B?aGg5a2g2dU5DUHJpK2x2S210NVk0bW80NXdjaXBIeVY4ZU5iakg5dWFUM2NS?= =?utf-8?Q?+nYvfpaNNUM1WiMyIVwsTsrDc?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 394ce80d-0c0f-4e73-a986-08db73b3e188 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Jun 2023 06:34:22.5256 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: vV6fZEIjfG2QVouQWmPFDQEdqWtZjgb9j8nW4O0enqhguh5RxQ13aEo6VfqZfN0pkqAYOTQaUABkKYDRO2mHFg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU0PR04MB9324 On 23.06.2023 03:26, Shawn Anastasio wrote: > On 6/22/23 5:49 PM, Andrew Cooper wrote: >> On 22/06/2023 9:57 pm, Shawn Anastasio wrote: >>> --- /dev/null >>> +++ b/xen/arch/ppc/setup.c >>> @@ -0,0 +1,13 @@ >>> +/* SPDX-License-Identifier: GPL-2.0-or-later */ >>> +#include >>> + >>> +void __init noreturn start_xen(unsigned long r3, unsigned long r4, >>> + unsigned long r5, unsigned long r6, >>> + unsigned long r7) >>> +{ >>> + for ( ;; ) >>> + /* Set current hardware thread to very low priority */ >>> + asm volatile("or %r31, %r31, %r31"); >> >> Is there something magic about the OR instruction, or something magic >> about %r31? > > Using the OR instruction with all three operands equal is of course a > no-op, but when using certain registers it can have a separate magic > side effect. > > `or r31,31,31` is one such form that sets the Program Priority Register > to "very low" priority. Of course here where we don't have SMP going > there's not much point in using this over the standard side effect-less > no-op (`or r0,r0,r0` or just `nop`). > > For a table of these magic OR forms, you can see page 836 of the Power > ISA 3.0B: > https://wiki.raptorcs.com/w/images/c/cb/PowerISA_public.v3.0B.pdf I have 3.1 to hand, and it looks like they were dropped from there? Otherwise I was meaning to say that it's a shame gas doesn't support these. Anyway - I think you want to put this behind a macro named after the pseudo. Finally, as a nit: Style above is lacking several blanks. One between the two semicolons, and a total of three in the asm(). Jan From xen-devel-bounces@lists.xenproject.org Fri Jun 23 06:43:08 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 23 Jun 2023 06:43:08 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554224.865295 (Exim 4.92) (envelope-from ) id 1qCaVc-0006Qs-OT; Fri, 23 Jun 2023 06:43:04 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554224.865295; Fri, 23 Jun 2023 06:43:04 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCaVc-0006Ql-LN; Fri, 23 Jun 2023 06:43:04 +0000 Received: by outflank-mailman (input) for mailman id 554224; Fri, 23 Jun 2023 06:43:02 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCaVa-0006Qf-NC for xen-devel@lists.xenproject.org; Fri, 23 Jun 2023 06:43:02 +0000 Received: from EUR04-HE1-obe.outbound.protection.outlook.com (mail-he1eur04on2085.outbound.protection.outlook.com [40.107.7.85]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 32331236-1191-11ee-8611-37d641c3527e; Fri, 23 Jun 2023 08:43:00 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by DB8PR04MB6906.eurprd04.prod.outlook.com (2603:10a6:10:118::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.26; Fri, 23 Jun 2023 06:42:31 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6521.024; Fri, 23 Jun 2023 06:42:31 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 32331236-1191-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=fETtDrOaTCi52Q5FMmqSBqzGfamqVllOdy2H8Ay9XAxjRTPmCsOm2b86wgtcBA+spUHGWqJoY7TOPblDld3eUL+OD/t/HVYuEXCpAzXq0y5qPqCTtplbwbTPVICrdHgNNMRuOLEDlBobvT3RlNriAoH3DVicFcBHF4K3oI4jFaRXA+7AhaJw3BYutys7ey7brNawh9OkU9l4YxaxXbeh4Lzr12puEzpUKZeuQ3r1lzQ/W/ecJpsyDfo1WJxQD31dxNKLt1WrwUlkvrZjJ60wFJE+Q1jNdKTl9nZRALcD49l1ymKfms1L6MhYcbcRJpB/JtfpliGKiIAI/TibGCgQXA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=4xUGSYuSE8R7DXAP86nHeFIYaI6Jg5t0+8s7a8FWz28=; b=OhWCpqeIJfWvNT8pIkMcxr5mQpNPtHMzvj9ubjfNHoe013wkzcpBQ+nW+DZmiZfR5XRGGkTEVBQdKJCnqGvwyA8exB3JMc/e6VAVFXHPTNpcD8xVrqsYG8ajt2ufXb4ogS2lzE+snFhgfr6nUzUT3wi3Zrp2pDSWSDfzJXD4TRA7ZMghx0ItvfEt4Vx9lknQaCZAGGmNGf9rDYAzr7xYoFFnw3X5KepYrve0dKVZzj/ULGTJkW2kom7487CtPU9rSQaDVaNQvdj3Wk5K1G6RFfm/ofCB3znctazQwnGWr2ssHfBMPuNfDlSPfhUuq8rrbfd+X29qwRuZ17C4LIjiwA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=4xUGSYuSE8R7DXAP86nHeFIYaI6Jg5t0+8s7a8FWz28=; b=WPUXOGGRC/k7u4Elc8slzjpN/XGqZ+Rs5Q9d0ujWnyqp9+qj/kXEY0N3x3CqyslaC71oASmaZtwrnjWZVFMEZ/mJa0G7mT5JhAJBr0aiBwhPx3Uhoa/z6Erc0+76yMuaybr6nkYshShmPHJFNpglj4LCaNsirKvSCH585goudhSmQ+nrz8Dl+WiqjgJpaD/p57FbEVoOJZ2Ov6Ltov3fD3MTtN/y2ezPg8RMTRwmn4tnqE5X8fvcg89lniD5OVQkmC4iHRoPKEjLyLCjWeGkZPdmvpiy6hwqvuIFvIO3rytdhC2Zam5seBXLgJleJ0GTCu5g8oS9UmqKB4pguf694g== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <497fae66-a67c-cd0c-c198-5e54f8ba180a@suse.com> Date: Fri, 23 Jun 2023 08:42:29 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v2 0/3] Early serial on Power Content-Language: en-US To: Shawn Anastasio Cc: Timothy Pearson , Andrew Cooper , Julien Grall , Doug Goldstein , Stefano Stabellini , xen-devel@lists.xenproject.org References: From: Jan Beulich In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR2P281CA0054.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:93::8) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|DB8PR04MB6906:EE_ X-MS-Office365-Filtering-Correlation-Id: fe589b49-b480-40a0-4c8b-08db73b50513 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: QUJm+0JVZEzs0LK5b6h2QslexRQdL3jiWNu10JY45nY+dNJ6F8btq1DmMEgrFOOxw6mmDYA7rePj33mBRK0psWqapBQfdoGlYyNWkrqEgl9NEkZqiTFobjxlJzedCAIrWkMLejckutJdyZbJ0ryUGoJh9APwDzibjCFOAx5HXnizSGv2D0AZ9nzr/uzV9pDaVskD4n8Od4Cv7egvi8+vAw9euT8ee4vgbwAp8BmmpjY2iHTO0GzEh4o0keSIGTXWVPymIQA7XnHJSO5VCYO6yHIjaBXrMLYvXc1Tc3TPJKGCA/oBwrw3OTWRi7eLJzsxqDpZEPMVUuwkPWaYozUXnu9PYjGY3uZ4ADhY7C112xMZJzD9rZ87sYKJE2XeboETJxJnPF4i8FX0DvLfCI7IFcI6aPTLGet2Ltmzd/uL87xb/U0X3LxBAFyYYo7GOsdDOjZGp20dGMe7PcBwFClCEi8nho/0qA5exruBKWa65Ri1n1fyZhJyVqLwtBjNmV6NNW+mFTI+JHu0zzDi6s1r1Z9T1cy1mS8CP1hfiAOdFr6/4nfgvzuk9+W0Y3+IFGY6lMwviBnJrAMrgianYr0XA0d/J6RDm3gdV8ZgHRUItIS0jr9vJEcw+4fkzrx4DolkRzf1uTZq8r6qsSRigx7RGw== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(39860400002)(136003)(396003)(366004)(376002)(346002)(451199021)(38100700002)(36756003)(6486002)(478600001)(41300700001)(66946007)(4326008)(6916009)(66476007)(5660300002)(316002)(66556008)(2906002)(8936002)(8676002)(54906003)(83380400001)(2616005)(6512007)(26005)(186003)(6506007)(53546011)(31696002)(31686004)(86362001)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?UEhoSHJzYlZXeWYvVE5WRVhEUUF6SW5yVVFpaHhsa2hMOXdhSnRHdDUydzF6?= =?utf-8?B?RURlZlVGMzQxKzNRdWRoalE1ZGlWeGNjN01ndkV5aUoycjFGbXNmWVFxbTk2?= =?utf-8?B?OU5qQmR5TndjcE5aL1NON0hWSUhxQksyQVN0aXdtVEtBTjNPK2thWkorUkxH?= =?utf-8?B?SGVsK0h0TU15T051MnRuUDhwOGcyYXoycVpSNE5lNjRpd0JUSUZldWFFOVJq?= =?utf-8?B?eDRVZ0NoVVJ3c1VuY3RMTVRZRmR1UWFQZityTXFFU2RkREh5eVJkR3E1Zzcw?= =?utf-8?B?dDJMS05WOEE2ZFVPdVBnQkZhM3Q2bmJaTitLT1haeGxaU1p6blcwWnRpSlZr?= =?utf-8?B?NEY3c2tVdVJjWXdNaVptaitUN3hvV1ZpaTV2OFd4RnBDa2Q3QVYxMGVrak1Q?= =?utf-8?B?ZnhlNnVIWVR1emRWWXhHYnFNSHdBVUJXTnk4K0hIb3k2RDJMZi9LbWl0bnZD?= =?utf-8?B?V1d5Q0d1eWNkMHZLWjJlcmp5Wk1UWDZ1aHg5Vit1QVBGSjVYUG1YZVlITGVs?= =?utf-8?B?SEJsQUdkQ2ozbHVnTlVkTlgyTG1rSjdGZEwxNUpUaDdjUnZhaitUWUJjTjI0?= =?utf-8?B?aTJCamdtVFh0TDkwcUM5b1o0aEh3WU5rR1FqZlVZaVVSeUJsMTZFRnpBNzM5?= =?utf-8?B?Sk5HVVJTc2tRcDNhQzNqUjYzVG5JT1RmNm9aZFJGUVk3R1o0b214ODljSXBz?= =?utf-8?B?djdpUFVhZTZtL08zbkNYakxOWjNOeXBvNjRla0pWa2tNcWdvSzI2U1dJZ25I?= =?utf-8?B?ZXpZYnJnV2lvbVkybHkvUGFUSlhDR2JPelBIZXU1aTN1Y0srSVZaTGxCN1Ez?= =?utf-8?B?WE9YRUsvWGFrVWt4WHgvQ05tNjlBRlRmaVh0SHZRbnQ3N2oxbzZRRXFRdGdW?= =?utf-8?B?VUcxZHRjazRjYkFOM2VhRDZpVWtRVkVrWEVjVmEyMGNwMXlPZllxdzlkRUpG?= =?utf-8?B?L1dTdmY3dU1YVHVVbXNOUkRmS1ZYaE9neHRQWWZZOWFwcWRZdG5ZZ00rTVVU?= =?utf-8?B?WDUxV251alZCRitsVldLUzgrMGtGZGQvdVNXb0ZTT3pKVzcrS3hJRFJyaVJk?= =?utf-8?B?eDRYRmRvOTR4WmRUWXRjc0RyblZQZ1Mwa05xTHhpb2FRaFlBSzB1eHVycjUw?= =?utf-8?B?WUhycnp0dldlb2dyaWpjb3ZYdFZrZmlldXVkT2JRRG00OWQxWHE1UVNsNG0v?= =?utf-8?B?cTlUT3dPbGJGNk9iL1FIZGdGUXlQby9ya080aFBhN3d0Mlo5MEwrcXNKbEZB?= =?utf-8?B?dGFVb0FKaXA3b2FiMm5SdXZ0QUgvajh2V0ViK3l1eFpkajM2RjlxVTZLakJ3?= =?utf-8?B?U2d4cElENytBa1BQbVNKSmR0dURmbWltRWpURkxucWMvSUxRUHc3a3ZsWlZZ?= =?utf-8?B?bkJJQ1VSMXo5cG9kVHUvNDJYTW9yRjJWMlRqQUhRS3EzTUNzRERRNjY3UFZU?= =?utf-8?B?SXRxbGpqR2dCb0hMZllDY0xpMEMxZWI5OTBwWnhaaU1ZRXZWUTlSeDV1ekdX?= =?utf-8?B?VVQxeWs1MlpoK3o1RkM1NzJacXR3TzRmQjFFYjVlODNmeEY2SXF3cU45TUww?= =?utf-8?B?ZnJVRDMyTTA2MDJiLzZBYXVxOSswMXlhWUI4RFI1WG42RDFmcTFVdkt1eHp3?= =?utf-8?B?RU1UUTVPN3E1Qk5xYzhaaFQzQ25xSVJNRGxxN3k3MGFralU3MUt2aC83SThz?= =?utf-8?B?ai8vdzc3RVlKaXg0b0NLZ0R5a2c1NGYxaTNveTkzKzhUb0N4bXJXMmpET0NB?= =?utf-8?B?Tk5BbDBvaDlNTUxETEpBNnM5d2NieEtPeWg0dFJsWmtMWDZvc1VNYVJYVEt1?= =?utf-8?B?TUNZNURxVXp3Y1ZUK2U0amNNeS9HWGhlM2N4QTA1YmdHV3RTcHBRQnRBaUxX?= =?utf-8?B?UDh4U2dwZFlLb3JpOXdPUS9scllBZERHeUR5UTh3Q0NNUWZQbXVON3VxSHJI?= =?utf-8?B?RGtCQUFnSkc3UFo4Nit3N3o3MlYxQkIzYy9TOXNFOVQydHlUNno5OUZuSWgw?= =?utf-8?B?b0Y0WmVMaVJRb0lZUEc2alUzbzFWM00vT1c3cmFCcHlSRzVQb1RsK3Fjem1v?= =?utf-8?B?cVhhUk9Cd0EwMGJqcEVuQUlsa25EWDZTTFhTM2VCM3JWUUZUSUpFbGlVd0hV?= =?utf-8?Q?U96PzUXgWDdvYI0MNFStIje7Z?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: fe589b49-b480-40a0-4c8b-08db73b50513 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Jun 2023 06:42:31.5723 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: YXOvOBO7lD9pTQPrJlFJKDJrjwVC1zXiLOKX0V2iyPv17achZbHqDzPJ0e7f77/AwsDH1mje9LnEp07ytiUL9w== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB8PR04MB6906 On 22.06.2023 22:57, Shawn Anastasio wrote: > Changes in v2: > - Split main patch into two - one for basic C environment setup and > one for serial > - Mark OpenFirmware functions and early_printk functions as __init and > change boot-of.o to boot-of.init.o in Makefile > - Change include to and drop skeleton > headers that are no longer necessary for build as a result What is this about? There's no change to non-ppc files here according to ... > automation/gitlab-ci/test.yaml | 20 ++++ > automation/scripts/qemu-smoke-ppc64le.sh | 27 +++++ > xen/arch/ppc/Kconfig.debug | 5 + > xen/arch/ppc/Makefile | 3 + > xen/arch/ppc/boot-of.c | 100 +++++++++++++++++ > xen/arch/ppc/configs/ppc64_defconfig | 1 + > xen/arch/ppc/early_printk.c | 28 +++++ > xen/arch/ppc/include/asm/asm-defns.h | 53 +++++++++ > xen/arch/ppc/include/asm/boot.h | 23 ++++ > xen/arch/ppc/include/asm/byteorder.h | 12 ++ > xen/arch/ppc/include/asm/early_printk.h | 15 +++ > xen/arch/ppc/include/asm/msr.h | 51 +++++++++ > xen/arch/ppc/include/asm/processor.h | 136 +++++++++++++++++++++++ > xen/arch/ppc/include/asm/types.h | 21 ++++ > xen/arch/ppc/ppc64/Makefile | 1 + > xen/arch/ppc/ppc64/asm-offsets.c | 55 +++++++++ > xen/arch/ppc/ppc64/head.S | 55 +++++---- > xen/arch/ppc/ppc64/of-call.S | 83 ++++++++++++++ > xen/arch/ppc/setup.c | 28 +++++ > 19 files changed, 697 insertions(+), 20 deletions(-) ... this. Plus lib.h already includes stdarg.h. Jan From xen-devel-bounces@lists.xenproject.org Fri Jun 23 06:50:08 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 23 Jun 2023 06:50:08 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554229.865306 (Exim 4.92) (envelope-from ) id 1qCacB-00074d-E6; Fri, 23 Jun 2023 06:49:51 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554229.865306; Fri, 23 Jun 2023 06:49:51 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCacB-00074W-BK; Fri, 23 Jun 2023 06:49:51 +0000 Received: by outflank-mailman (input) for mailman id 554229; Fri, 23 Jun 2023 06:49:50 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCac9-00074Q-WF for xen-devel@lists.xenproject.org; Fri, 23 Jun 2023 06:49:50 +0000 Received: from EUR05-VI1-obe.outbound.protection.outlook.com (mail-vi1eur05on20612.outbound.protection.outlook.com [2a01:111:f400:7d00::612]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 25370c5e-1192-11ee-b237-6b7b168915f2; Fri, 23 Jun 2023 08:49:48 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by DB8PR04MB6906.eurprd04.prod.outlook.com (2603:10a6:10:118::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.26; Fri, 23 Jun 2023 06:49:46 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6521.024; Fri, 23 Jun 2023 06:49:46 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 25370c5e-1192-11ee-b237-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=ULKM2Hd9uYqqXheoE++k4UtR3Gf31YDSR+1jZncDT/RVhM0Ra6/1nrGG+9kJp+uSKCC6RsHf7/CI81R+tYy/6xduX3lcW2m/odp8S53nqDT8hs8P/wsGtuoy7tAYUm8ZPVSB+WoUTgmP/HJYgVfWIuxK6qR2zTcpK+SOnsbr5lFnotkB/uATlNZ3we3nhojsMDLJfBKqzjiB8Zc4N0TWLz9oTvNjU3QF7iMSt3hR48Af/17rMr09ruUm1VMfpXUqpk7aF/B0ivmy/fJWh8hqU/gjvwoQAq2+cVJpRZJW3azX740gexvhwXyh+v0EcdTjalDBsxKIG57upkIa9MS/3w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=5XGLN7Byf0hb8mpSTC/rlelxmIgsWi0ZmRrqAC72Fno=; b=T/BA0kZTq1wKQ0EqiCfpFY9ff4fR9QKNKlcuYPKwchXRowPhGp1waskfFSPX/V1vB8rP3BsWdmTO9iTBReZOfxR7Iy4LR2OIexb1Yt7UWDeKJawW8C9R+sDDo68k7vaNySQx1jErpWXE4acSQl96TZOdaMdHEV1Vw7fIfeDgA//0T84YtbtBS9hHWBScT4UdrAcpYcpRRebBSmngv/ASXW4/cAfzpx+p5fZfaM+FIWf00A/pOAO8u29/hbNrLCxMFZ/fuz12X8SOoPF5vWoizhLmrtSgGzABAm0NTG1TUlPMHJmxKQ0VHdK5b7pt2coz+/UfmGM+bx10QNQtlpdLqw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=5XGLN7Byf0hb8mpSTC/rlelxmIgsWi0ZmRrqAC72Fno=; b=bAQVTSvPGsmSaWN6rU1wo0kMsePGnuSH8WPjlAui/ZrxffmqIGS8aUlYUfkzYIJZ/0or1W/Sik4bdLXWvi6EV9Jj8zCAL7zq/Y7g1UpmloBw9CSkwO7liMh7rZaodVY0ILoazzYKdv1R6Heljv5TfmiXqPkPr5DZEj24teWmwrXiVlRtsxYTBhE2X2zsuhZwtT593r9kN0rEwR/II800fOiiohHHoZLDnLlkNVJ3Ae72gDGcQR1hhrLxwtNmxB4zhoJecGGqDmJ2Q15a+2GziuCGYR+VPCQZS2ac27Z3X6KoQEM9NDRwS3EXWjzNY/WUEKVRGgin+28J+FICTLM6Ag== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <1eae025b-fba5-04b7-9159-ed29b902f7d1@suse.com> Date: Fri, 23 Jun 2023 08:49:42 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v2 1/2] x86/boot: Clear XD_DISABLE from the early boot path Content-Language: en-US To: Alejandro Vallejo Cc: Xen-devel , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , Andrew Cooper References: <20230615153157.444-1-alejandro.vallejo@cloud.com> <20230615153157.444-2-alejandro.vallejo@cloud.com> <6493289f.7b0a0220.7f086.11fd@mx.google.com> <32c42471-9e93-58d8-9973-38fce5dcc4d3@suse.com> <64946d77.7b0a0220.2c099.b17b@mx.google.com> From: Jan Beulich In-Reply-To: <64946d77.7b0a0220.2c099.b17b@mx.google.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR3P281CA0206.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:a5::10) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|DB8PR04MB6906:EE_ X-MS-Office365-Filtering-Correlation-Id: fd5ed002-8107-4a1e-4ff8-08db73b607dd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 26QIukfhoGgZ3v+8KdKiEXa/VXCMTP8BfedrtY5GazMzVu12nuEbKzRnw6xbYOzXaqK0hFsm50MzxeFpRtO0VDD0xXaa3QgLN+VEzkA0+jG569UI0aRIOxeyjp3q002XlNKiYVhcUkWKepQgTR28poC/mMgntUL4Mt/sl6zJzH79jqPePKWNYJWrSYpzIWhSWWBbhJLnd8dLID1PBTvPWY/BxDu+YcBD5201Tl68Ni3yzdfV/bZBE0ngo+kVVPJ+tyvgqG6Z7dD4PjYD8bAn2TFV/KnFVYAm80QNTV6wbUMGEBZdmbVvU+aCqZVSYYRRyZCJs95ohGk0nuYz7/T+MdUTslpmjPDTzgX/Ps55nHPeutD6kAb9CkvrQWRHFLFsIcwKBA8pehRV/uFYsqYIKQH9HQaIdHEBgZcLID9F7cnjSUeB9kbWwFbOKz8KeGcAPq7EjQM+gUkKvRCz9/nAeRULHzI2TvlaggYP2gEHGaKSAj+U0Wticd8I/Om6sPyc0mttsZ/g8mxj/7totI6Rl5A0YVball17HMawcy0I9b4e0ofD0xncwE3tdNSK+AK2NVeEmpyjM/v/xMOJbBppeAsIXs1sHH2aq6O9MUYPR3zsBTGnGD3X0XopPK9p9Dred287QrQ0BKgY6kgtj0h98Q== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(39860400002)(136003)(396003)(366004)(376002)(346002)(451199021)(38100700002)(36756003)(6666004)(6486002)(478600001)(41300700001)(66946007)(4326008)(6916009)(66476007)(5660300002)(316002)(66556008)(2906002)(8936002)(8676002)(54906003)(83380400001)(2616005)(6512007)(26005)(186003)(6506007)(53546011)(31696002)(31686004)(86362001)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?QjUyVytUN3c2VGsvcGZOWHFaTktmbWhXNHg2L0NlY1Bodjg1U3BwSjdTcldy?= =?utf-8?B?aTc3YWczUm9RcGlnNWdSWFl5T2JvRnFwYmF5L0NDeUp0cFd0dzM3dmRWQ0FG?= =?utf-8?B?YncwWkhCZkNKenhyeXFQREtVRitoKzNRZURNZjYrSHcvQTZwSnlGZERjM3Fi?= =?utf-8?B?V3k4NjJaZ0JHS1lHSkxPUVFnYVZCSExPV3RWaEdnNkh5Mkl6YXRNQjFhQnQ1?= =?utf-8?B?dnp2czhwNi90WFhXY2ZvR1gzN3U5RllzK1hZU211cjljWVVQOWFoalJuVmli?= =?utf-8?B?Y1V4UFFTVGRMWUZKWEhCMjdNOTJRR2RPc1EzNWVwS2pockQ1ZUZjaGsvd2hp?= =?utf-8?B?WjZrbCtBd3phd05nOFhiOFBhU3hYcnpSaUJYZExvRURtcWgyVmlXM1A5d0V5?= =?utf-8?B?QnBockNhR3c4Y3R3V0Z6YWQweHZrbjdWM2FVOEdyWE85eDd5NnlKa25oYTlq?= =?utf-8?B?d1JsbTVFcFphN3hwUW9rZHRVM3JobFBjTUdTdVdsN1NETXRaUE9PNXd4YWI2?= =?utf-8?B?WEZhMXRQaUpLd2ErTHJZZnUyclNQR0Y2ZGZPOVI0eHhUVm1RVnRZdzkyVzUw?= =?utf-8?B?c1h5TERyMC9rcktvSHhka1pjelRUYmZzdE9ZaDN0amxoV0c5WTZORmNyMUpt?= =?utf-8?B?ZGxoREVlT2VzUGIxYW9wUC9ldVVGSWEwZUZka0Fnb055TC8wTE9scFkvTWd5?= =?utf-8?B?bUZuYWkxb2lSeWhBWUtLV0NIOWhaaDVhWUdHTHF6NmdtWGMzQzZBekZjYktF?= =?utf-8?B?NWtGS0RmeER2dHE4UTNiUFRXV244Y2dZQW0vMVRUVHpLNXBEbmVIajFkcU5k?= =?utf-8?B?R1ZjTjRZeFMwSUg5dHl1b3pqcEVQeEpzUzJrT1IvMC9neHNxRkZ2RXVPTlly?= =?utf-8?B?dkhLU2p5Q29BWld3MXpHT2xHZHhISzZWS1BQUXptRHBiOUpCOU9WejZCREpG?= =?utf-8?B?Y294aFZXenloWVlCdWpkUXA0YmZBU2xJR2RORitUUHNmbTZ0eWg1V25SUk5C?= =?utf-8?B?TkVlOWVUeDYvOFg4V3lkcis5RkNHNEMrSGYxMW5tcHNMZFJqNWNxZmQybGVM?= =?utf-8?B?MUkzWXpkRS96U25GdHRtNFR0Zng4OWRaU1FFRk93QzQ1aU84UWFBSGtTaVhQ?= =?utf-8?B?MEJlMzhKQ2REd2JSUHc0dWkxMDNaTEhLanVhRTU3dThObGFUd3oyazN3TDN2?= =?utf-8?B?QVBQZHRuUTh5ZzViNGt3d1dqTXNlZTJISDB2dVJ1MjEzZXNSZjdxTk9xU1lW?= =?utf-8?B?aU90N1M5K1JydWhheitwb2JOUDRwazQ0N2hYR2Exa1ovQ1dIRjFYUStNYm5Y?= =?utf-8?B?a0xZQk5XM0RTdnZQbXV0Y2hmTFo2Yk9tMDlQUFJrWFg1enB0NWtCaGNsQzlJ?= =?utf-8?B?TE8zZ3BHTWRhSjVhK2hnNnA3K0hid0VQcTQ4WUUyTlZCa3prUVZtNjQvVFo5?= =?utf-8?B?YVQ2Mzl2cnMrOUFZdDZDMFNyd29Ec29CY25MR0w1Z2w2UHZGSEdzOTdhaEtn?= =?utf-8?B?NjFSMnlIZnA0Q3REN1NybGZMSW1kTkhYZTlQdHhOR0FWRDhjcWFiRDA3QjlR?= =?utf-8?B?QUNrcHhGRDdTUmVDZ2hnK1VWRXVHRS9HaS9sMjlqdmcxOVJpNU5HZmYzbzV5?= =?utf-8?B?eGFlOFJVSEppVEh4RkQzdURkMDQyaWtKNWFJcEQ2anVobHp5bTVDamZNTU5T?= =?utf-8?B?VVFITjZhMStxUnpNVjl2NnRKTWdkNllMQkI1emdVK2NqOGwxejE1K3R2TlFp?= =?utf-8?B?V3lUaUNhMVVGQklqVXZHa2tKSWFqRitZK3dZR25ROVhBZktRemlzakRPZldB?= =?utf-8?B?Z2xIWTJ6cW9EdFR4YVUwbWcwUGZxR2VKYkhkRDJsR0JkZG1RWXpFNjg0VGFS?= =?utf-8?B?ZGlVS1Vsem5vV1JyZERFVjUvYzVKSkRWNHB0bEFTV0lEZFpjQ2RpaGxXYXNs?= =?utf-8?B?S28zc00vMjV2SHRFR2NyOHBTRVhPYmFEdDB5SW0zVmV6Sm94Q3JPYjAzS1ZB?= =?utf-8?B?aFRBTzFWQi9CNmZZaEVtVU1qQTNzWXV4dHdEUE96aWFVQ0ovOWpCZFB2bG43?= =?utf-8?B?VlQyVU5UVkRmdjlBQldXL0liOFVhOFF4Z1NkblJXMFVTQlVKUHFqaTRGSlJa?= =?utf-8?Q?AtS/LriO9h+m+npHK/yaLq4AL?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: fd5ed002-8107-4a1e-4ff8-08db73b607dd X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Jun 2023 06:49:45.8416 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: pzNnBPvd/8w7jm6ps99kgOf+Iitn/9R3oNExd7XzGorYphfi/efQr8XjXhowx883t6Tzc39sD5Vvbag0/qgi/A== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB8PR04MB6906 On 22.06.2023 17:49, Alejandro Vallejo wrote: > On Thu, Jun 22, 2023 at 09:54:01AM +0200, Jan Beulich wrote: >> On 21.06.2023 18:43, Alejandro Vallejo wrote: >>> Sure, to everything before this >>> >>>>> diff --git a/xen/arch/x86/cpu/intel.c b/xen/arch/x86/cpu/intel.c >>>>> index 168cd58f36..46b0cd8dbb 100644 >>>>> --- a/xen/arch/x86/cpu/intel.c >>>>> +++ b/xen/arch/x86/cpu/intel.c >>>>> @@ -305,23 +305,23 @@ static void cf_check early_init_intel(struct cpuinfo_x86 *c) >>>>> c->x86_cache_alignment = 128; >>>>> >>>>> /* Unmask CPUID levels and NX if masked: */ >>>>> - rdmsrl(MSR_IA32_MISC_ENABLE, misc_enable); >>>>> - >>>>> - disable = misc_enable & (MSR_IA32_MISC_ENABLE_LIMIT_CPUID | >>>>> - MSR_IA32_MISC_ENABLE_XD_DISABLE); >>>>> - if (disable) { >>>>> - wrmsrl(MSR_IA32_MISC_ENABLE, misc_enable & ~disable); >>>>> - bootsym(trampoline_misc_enable_off) |= disable; >>>>> - bootsym(trampoline_efer) |= EFER_NXE; >>>>> - } >>>>> + if (rdmsr_safe(MSR_IA32_MISC_ENABLE, misc_enable) == 0) { >>>> >>>> There's no need to change rdmsrl() to rdmsr_safe(), >>> I thought we established before some hypervisors might not implement it. In >>> that case this function would crash. More gracefully than a triple fault, >>> sure, but still not a very friendly thing to do. >> >> Yet then in early boot code you also don't (and can't) recover from getting >> #GP(0), in case that might really happen. >> > That's true, strictly speaking, but that case is restricted to the > incredibly unlikely case of "no NX and no MSR". As is, if we ever boot > on an Intel machine without that MSR we'll hit #GP(0), regardless of NX. Well, my comment was meant to support Andrew's earlier one. Why check the MSR access here when we don't earlier on? Plus isn't it the case that the MSR can be implied to exist when NX is (in principle) available, as that "opt-out" existed specifically when Intel first introduced NX on their CPUs? If so, - when NX is not available, we would have crashed much earlier, - when NX is available (or was turned on successfully) the MSR exists either because we wrote to it earlier or because we're on a newer CPU. Jan From xen-devel-bounces@lists.xenproject.org Fri Jun 23 06:55:10 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 23 Jun 2023 06:55:10 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554236.865316 (Exim 4.92) (envelope-from ) id 1qCahG-00008f-5m; Fri, 23 Jun 2023 06:55:06 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554236.865316; Fri, 23 Jun 2023 06:55:06 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCahG-00008X-2l; Fri, 23 Jun 2023 06:55:06 +0000 Received: by outflank-mailman (input) for mailman id 554236; Fri, 23 Jun 2023 06:55:05 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCahE-00008M-Sa for xen-devel@lists.xenproject.org; Fri, 23 Jun 2023 06:55:04 +0000 Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id e04f4137-1192-11ee-b237-6b7b168915f2; Fri, 23 Jun 2023 08:55:02 +0200 (CEST) Received: from Dell.bugseng.com (unknown [37.163.242.22]) by support.bugseng.com (Postfix) with ESMTPSA id 3FE4D4EE0737; Fri, 23 Jun 2023 08:55:00 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: e04f4137-1192-11ee-b237-6b7b168915f2 From: Federico Serafini To: xen-devel@lists.xenproject.org Cc: consulting@bugseng.com, Federico Serafini , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk , Michal Orzel , Xenia Ragiadakou , Ayan Kumar Halder Subject: [XEN PATCH v2] xen/arm: fix violations of MISRA C:2012 R8.3 on parameter names. Date: Fri, 23 Jun 2023 08:54:49 +0200 Message-Id: <11c50030015014ff1a80dca849a4262133b2707a.1687502320.git.federico.serafini@bugseng.com> X-Mailer: git-send-email 2.34.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit To comply with Rule 8.3 ("All declarations of an object or function shall use the same names and type qualifiers") change the parameter names in order to have function declarations consistent with the corresponding definitions. Change the function identifier 'access_guest_memory_by_ipa' to 'access_guest_memory_by_gpa' in accordance with modifications on its formal parameters: 'gpa' is used more frequently than 'ipa' and is therefore preferable. Signed-off-by: Federico Serafini --- Changes in v2: - adapted parameter names in function definitions to the names used in function declarations when the context requires it; - reflected changes to the function identifier in order to maintain consistency with modifications on parameter names; - extended changes to definitions under xen/arch/arm/vgic. --- xen/arch/arm/domain.c | 10 +++++----- xen/arch/arm/guest_walk.c | 6 +++--- xen/arch/arm/guestcopy.c | 2 +- xen/arch/arm/include/asm/fixmap.h | 2 +- xen/arch/arm/include/asm/gic.h | 2 +- xen/arch/arm/include/asm/gic_v3_its.h | 5 +++-- xen/arch/arm/include/asm/grant_table.h | 4 ++-- xen/arch/arm/include/asm/guest_access.h | 4 ++-- xen/arch/arm/include/asm/irq.h | 2 +- xen/arch/arm/include/asm/regs.h | 2 +- xen/arch/arm/include/asm/vgic.h | 4 ++-- xen/arch/arm/mm.c | 10 +++++----- xen/arch/arm/tee/optee.c | 10 +++++----- xen/arch/arm/vgic-v3-its.c | 16 ++++++++-------- xen/arch/arm/vgic/vgic-init.c | 12 ++++++------ 15 files changed, 46 insertions(+), 45 deletions(-) diff --git a/xen/arch/arm/domain.c b/xen/arch/arm/domain.c index add9929b79..8c18e92079 100644 --- a/xen/arch/arm/domain.c +++ b/xen/arch/arm/domain.c @@ -1155,15 +1155,15 @@ void vcpu_block_unless_event_pending(struct vcpu *v) vcpu_unblock(current); } -void vcpu_kick(struct vcpu *vcpu) +void vcpu_kick(struct vcpu *v) { - bool running = vcpu->is_running; + bool running = v->is_running; - vcpu_unblock(vcpu); - if ( running && vcpu != current ) + vcpu_unblock(v); + if ( running && v != current ) { perfc_incr(vcpu_kick); - smp_send_event_check_mask(cpumask_of(vcpu->processor)); + smp_send_event_check_mask(cpumask_of(v->processor)); } } diff --git a/xen/arch/arm/guest_walk.c b/xen/arch/arm/guest_walk.c index c80a0ce55b..d99b411f3b 100644 --- a/xen/arch/arm/guest_walk.c +++ b/xen/arch/arm/guest_walk.c @@ -85,7 +85,7 @@ static bool guest_walk_sd(const struct vcpu *v, paddr |= (gva & mask) >> 18; /* Access the guest's memory to read only one PTE. */ - ret = access_guest_memory_by_ipa(d, paddr, &pte, sizeof(short_desc_t), false); + ret = access_guest_memory_by_gpa(d, paddr, &pte, sizeof(short_desc_t), false); if ( ret ) return false; @@ -110,7 +110,7 @@ static bool guest_walk_sd(const struct vcpu *v, paddr = ((paddr_t)pte.walk.base << 10) | ((gva & mask) >> 10); /* Access the guest's memory to read only one PTE. */ - ret = access_guest_memory_by_ipa(d, paddr, &pte, sizeof(short_desc_t), false); + ret = access_guest_memory_by_gpa(d, paddr, &pte, sizeof(short_desc_t), false); if ( ret ) return false; @@ -481,7 +481,7 @@ static bool guest_walk_ld(const struct vcpu *v, paddr |= LPAE_TABLE_INDEX_GS(grainsizes[gran], level, gva) << 3; /* Access the guest's memory to read only one PTE. */ - ret = access_guest_memory_by_ipa(d, paddr, &pte, sizeof(lpae_t), false); + ret = access_guest_memory_by_gpa(d, paddr, &pte, sizeof(lpae_t), false); if ( ret ) return false; diff --git a/xen/arch/arm/guestcopy.c b/xen/arch/arm/guestcopy.c index 225fd343dd..6716b03561 100644 --- a/xen/arch/arm/guestcopy.c +++ b/xen/arch/arm/guestcopy.c @@ -142,7 +142,7 @@ unsigned long copy_to_guest_phys_flush_dcache(struct domain *d, COPY_to_guest | COPY_ipa | COPY_flush_dcache); } -int access_guest_memory_by_ipa(struct domain *d, paddr_t gpa, void *buf, +int access_guest_memory_by_gpa(struct domain *d, paddr_t gpa, void *buf, uint32_t size, bool is_write) { unsigned long left; diff --git a/xen/arch/arm/include/asm/fixmap.h b/xen/arch/arm/include/asm/fixmap.h index d0c9a52c8c..734eb9b1d4 100644 --- a/xen/arch/arm/include/asm/fixmap.h +++ b/xen/arch/arm/include/asm/fixmap.h @@ -30,7 +30,7 @@ extern lpae_t xen_fixmap[XEN_PT_LPAE_ENTRIES]; /* Map a page in a fixmap entry */ -extern void set_fixmap(unsigned int map, mfn_t mfn, unsigned int attributes); +extern void set_fixmap(unsigned int map, mfn_t mfn, unsigned int flags); /* Remove a mapping from a fixmap entry */ extern void clear_fixmap(unsigned int map); diff --git a/xen/arch/arm/include/asm/gic.h b/xen/arch/arm/include/asm/gic.h index 76e3fa5dc4..f1ef347edc 100644 --- a/xen/arch/arm/include/asm/gic.h +++ b/xen/arch/arm/include/asm/gic.h @@ -257,7 +257,7 @@ int gic_remove_irq_from_guest(struct domain *d, unsigned int virq, extern void gic_clear_pending_irqs(struct vcpu *v); extern void init_maintenance_interrupt(void); -extern void gic_raise_guest_irq(struct vcpu *v, unsigned int irq, +extern void gic_raise_guest_irq(struct vcpu *v, unsigned int virtual_irq, unsigned int priority); extern void gic_raise_inflight_irq(struct vcpu *v, unsigned int virtual_irq); diff --git a/xen/arch/arm/include/asm/gic_v3_its.h b/xen/arch/arm/include/asm/gic_v3_its.h index fae3f6ecef..c24d4752d0 100644 --- a/xen/arch/arm/include/asm/gic_v3_its.h +++ b/xen/arch/arm/include/asm/gic_v3_its.h @@ -190,8 +190,9 @@ struct pending_irq *gicv3_its_get_event_pending_irq(struct domain *d, uint32_t eventid); int gicv3_remove_guest_event(struct domain *d, paddr_t vdoorbell_address, uint32_t vdevid, uint32_t eventid); -struct pending_irq *gicv3_assign_guest_event(struct domain *d, paddr_t doorbell, - uint32_t devid, uint32_t eventid, +struct pending_irq *gicv3_assign_guest_event(struct domain *d, + paddr_t vdoorbell_address, + uint32_t vdevid, uint32_t eventid, uint32_t virt_lpi); void gicv3_lpi_update_host_entry(uint32_t host_lpi, int domain_id, uint32_t virt_lpi); diff --git a/xen/arch/arm/include/asm/grant_table.h b/xen/arch/arm/include/asm/grant_table.h index e13dfeefa5..c2b0dbc806 100644 --- a/xen/arch/arm/include/asm/grant_table.h +++ b/xen/arch/arm/include/asm/grant_table.h @@ -36,10 +36,10 @@ static inline bool gnttab_release_host_mappings(const struct domain *d) return true; } -int create_grant_host_mapping(unsigned long gpaddr, mfn_t mfn, +int create_grant_host_mapping(unsigned long gpaddr, mfn_t frame, unsigned int flags, unsigned int cache_flags); int replace_grant_host_mapping(unsigned long gpaddr, mfn_t mfn, - unsigned long new_gpaddr, unsigned int flags); + unsigned long new_addr, unsigned int flags); /* * The region used by Xen on the memory will never be mapped in DOM0 diff --git a/xen/arch/arm/include/asm/guest_access.h b/xen/arch/arm/include/asm/guest_access.h index 4421e43611..18c88b70d7 100644 --- a/xen/arch/arm/include/asm/guest_access.h +++ b/xen/arch/arm/include/asm/guest_access.h @@ -12,11 +12,11 @@ unsigned long raw_clear_guest(void *to, unsigned int len); /* Copy data to guest physical address, then clean the region. */ unsigned long copy_to_guest_phys_flush_dcache(struct domain *d, - paddr_t phys, + paddr_t gpa, void *buf, unsigned int len); -int access_guest_memory_by_ipa(struct domain *d, paddr_t ipa, void *buf, +int access_guest_memory_by_gpa(struct domain *d, paddr_t gpa, void *buf, uint32_t size, bool is_write); #define __raw_copy_to_guest raw_copy_to_guest diff --git a/xen/arch/arm/include/asm/irq.h b/xen/arch/arm/include/asm/irq.h index 11bc85d111..105b33b37d 100644 --- a/xen/arch/arm/include/asm/irq.h +++ b/xen/arch/arm/include/asm/irq.h @@ -76,7 +76,7 @@ void init_IRQ(void); int route_irq_to_guest(struct domain *d, unsigned int virq, unsigned int irq, const char *devname); -int release_guest_irq(struct domain *d, unsigned int irq); +int release_guest_irq(struct domain *d, unsigned int virq); void arch_move_irqs(struct vcpu *v); diff --git a/xen/arch/arm/include/asm/regs.h b/xen/arch/arm/include/asm/regs.h index 0693a68131..ef34b38aa1 100644 --- a/xen/arch/arm/include/asm/regs.h +++ b/xen/arch/arm/include/asm/regs.h @@ -58,7 +58,7 @@ static inline bool guest_mode(const struct cpu_user_regs *r) } register_t get_user_reg(struct cpu_user_regs *regs, int reg); -void set_user_reg(struct cpu_user_regs *regs, int reg, register_t val); +void set_user_reg(struct cpu_user_regs *regs, int reg, register_t value); #endif diff --git a/xen/arch/arm/include/asm/vgic.h b/xen/arch/arm/include/asm/vgic.h index 328fd46d1b..aa9f49409e 100644 --- a/xen/arch/arm/include/asm/vgic.h +++ b/xen/arch/arm/include/asm/vgic.h @@ -355,8 +355,8 @@ bool vgic_evtchn_irq_pending(struct vcpu *v); int domain_vgic_register(struct domain *d, int *mmio_count); int domain_vgic_init(struct domain *d, unsigned int nr_spis); void domain_vgic_free(struct domain *d); -int vcpu_vgic_init(struct vcpu *vcpu); -int vcpu_vgic_free(struct vcpu *vcpu); +int vcpu_vgic_init(struct vcpu *v); +int vcpu_vgic_free(struct vcpu *v); void vgic_inject_irq(struct domain *d, struct vcpu *v, unsigned int virq, bool level); diff --git a/xen/arch/arm/mm.c b/xen/arch/arm/mm.c index e460249736..2e9860a754 100644 --- a/xen/arch/arm/mm.c +++ b/xen/arch/arm/mm.c @@ -736,10 +736,10 @@ void *__init arch_vmap_virt_end(void) * This function should only be used to remap device address ranges * TODO: add a check to verify this assumption */ -void *ioremap_attr(paddr_t pa, size_t len, unsigned int attributes) +void *ioremap_attr(paddr_t start, size_t len, unsigned int attributes) { - mfn_t mfn = _mfn(PFN_DOWN(pa)); - unsigned int offs = pa & (PAGE_SIZE - 1); + mfn_t mfn = _mfn(PFN_DOWN(start)); + unsigned int offs = start & (PAGE_SIZE - 1); unsigned int nr = PFN_UP(offs + len); void *ptr = __vmap(&mfn, nr, 1, 1, attributes, VMAP_DEFAULT); @@ -1579,7 +1579,7 @@ void put_page_type(struct page_info *page) return; } -int create_grant_host_mapping(unsigned long addr, mfn_t frame, +int create_grant_host_mapping(unsigned long gpaddr, mfn_t frame, unsigned int flags, unsigned int cache_flags) { int rc; @@ -1591,7 +1591,7 @@ int create_grant_host_mapping(unsigned long addr, mfn_t frame, if ( flags & GNTMAP_readonly ) t = p2m_grant_map_ro; - rc = guest_physmap_add_entry(current->domain, gaddr_to_gfn(addr), + rc = guest_physmap_add_entry(current->domain, gaddr_to_gfn(gpaddr), frame, 0, t); if ( rc ) diff --git a/xen/arch/arm/tee/optee.c b/xen/arch/arm/tee/optee.c index 9cb9f16d43..301d205a36 100644 --- a/xen/arch/arm/tee/optee.c +++ b/xen/arch/arm/tee/optee.c @@ -951,7 +951,7 @@ static bool copy_std_request(struct cpu_user_regs *regs, map_xen_arg(call); - if ( access_guest_memory_by_ipa(current->domain, call->guest_arg_ipa, + if ( access_guest_memory_by_gpa(current->domain, call->guest_arg_ipa, call->xen_arg, OPTEE_MSG_NONCONTIG_PAGE_SIZE, false) ) { @@ -1106,7 +1106,7 @@ static int handle_rpc_return(struct optee_domain *ctx, shm_rpc->xen_arg = __map_domain_page(shm_rpc->xen_arg_pg); - if ( access_guest_memory_by_ipa(current->domain, + if ( access_guest_memory_by_gpa(current->domain, gfn_to_gaddr(shm_rpc->gfn), shm_rpc->xen_arg, OPTEE_MSG_GET_ARG_SIZE(shm_rpc->xen_arg->num_params), @@ -1329,7 +1329,7 @@ static bool issue_rpc_cmd_free(struct optee_domain *ctx, shm_rpc->xen_arg->params[0].u.value.a = call->rpc_buffer_type; shm_rpc->xen_arg->params[0].u.value.b = cookie; - if ( access_guest_memory_by_ipa(current->domain, + if ( access_guest_memory_by_gpa(current->domain, gfn_to_gaddr(shm_rpc->gfn), shm_rpc->xen_arg, OPTEE_MSG_GET_ARG_SIZE(1), @@ -1462,7 +1462,7 @@ static void handle_rpc_cmd(struct optee_domain *ctx, struct cpu_user_regs *regs, shm_rpc->xen_arg = __map_domain_page(shm_rpc->xen_arg_pg); /* First, copy only header to read number of arguments */ - if ( access_guest_memory_by_ipa(current->domain, + if ( access_guest_memory_by_gpa(current->domain, gfn_to_gaddr(shm_rpc->gfn), shm_rpc->xen_arg, sizeof(struct optee_msg_arg), @@ -1480,7 +1480,7 @@ static void handle_rpc_cmd(struct optee_domain *ctx, struct cpu_user_regs *regs, } /* Read the whole command structure */ - if ( access_guest_memory_by_ipa(current->domain, gfn_to_gaddr(shm_rpc->gfn), + if ( access_guest_memory_by_gpa(current->domain, gfn_to_gaddr(shm_rpc->gfn), shm_rpc->xen_arg, arg_size, false) ) { shm_rpc->xen_arg->ret = TEEC_ERROR_GENERIC; diff --git a/xen/arch/arm/vgic-v3-its.c b/xen/arch/arm/vgic-v3-its.c index 299b384250..05429030b5 100644 --- a/xen/arch/arm/vgic-v3-its.c +++ b/xen/arch/arm/vgic-v3-its.c @@ -121,7 +121,7 @@ static int its_set_collection(struct virt_its *its, uint16_t collid, if ( collid >= its->max_collections ) return -ENOENT; - return access_guest_memory_by_ipa(its->d, + return access_guest_memory_by_gpa(its->d, addr + collid * sizeof(coll_table_entry_t), &vcpu_id, sizeof(vcpu_id), true); } @@ -139,7 +139,7 @@ static struct vcpu *get_vcpu_from_collection(struct virt_its *its, if ( collid >= its->max_collections ) return NULL; - ret = access_guest_memory_by_ipa(its->d, + ret = access_guest_memory_by_gpa(its->d, addr + collid * sizeof(coll_table_entry_t), &vcpu_id, sizeof(coll_table_entry_t), false); if ( ret ) @@ -161,7 +161,7 @@ static int its_set_itt_address(struct virt_its *its, uint32_t devid, if ( devid >= its->max_devices ) return -ENOENT; - return access_guest_memory_by_ipa(its->d, + return access_guest_memory_by_gpa(its->d, addr + devid * sizeof(dev_table_entry_t), &itt_entry, sizeof(itt_entry), true); } @@ -179,7 +179,7 @@ static int its_get_itt(struct virt_its *its, uint32_t devid, if ( devid >= its->max_devices ) return -EINVAL; - return access_guest_memory_by_ipa(its->d, + return access_guest_memory_by_gpa(its->d, addr + devid * sizeof(dev_table_entry_t), itt, sizeof(*itt), false); } @@ -226,7 +226,7 @@ static bool read_itte(struct virt_its *its, uint32_t devid, uint32_t evid, if ( addr == INVALID_PADDR ) return false; - if ( access_guest_memory_by_ipa(its->d, addr, &itte, sizeof(itte), false) ) + if ( access_guest_memory_by_gpa(its->d, addr, &itte, sizeof(itte), false) ) return false; vcpu = get_vcpu_from_collection(its, itte.collection); @@ -260,7 +260,7 @@ static bool write_itte(struct virt_its *its, uint32_t devid, itte.collection = collid; itte.vlpi = vlpi; - if ( access_guest_memory_by_ipa(its->d, addr, &itte, sizeof(itte), true) ) + if ( access_guest_memory_by_gpa(its->d, addr, &itte, sizeof(itte), true) ) return false; return true; @@ -405,7 +405,7 @@ static int update_lpi_property(struct domain *d, struct pending_irq *p) addr = d->arch.vgic.rdist_propbase & GENMASK(51, 12); - ret = access_guest_memory_by_ipa(d, addr + p->irq - LPI_OFFSET, + ret = access_guest_memory_by_gpa(d, addr + p->irq - LPI_OFFSET, &property, sizeof(property), false); if ( ret ) return ret; @@ -910,7 +910,7 @@ static int vgic_its_handle_cmds(struct domain *d, struct virt_its *its) { int ret; - ret = access_guest_memory_by_ipa(d, addr + its->creadr, + ret = access_guest_memory_by_gpa(d, addr + its->creadr, command, sizeof(command), false); if ( ret ) return ret; diff --git a/xen/arch/arm/vgic/vgic-init.c b/xen/arch/arm/vgic/vgic-init.c index ea739d081e..76b85ea823 100644 --- a/xen/arch/arm/vgic/vgic-init.c +++ b/xen/arch/arm/vgic/vgic-init.c @@ -196,16 +196,16 @@ int domain_vgic_init(struct domain *d, unsigned int nr_spis) * vcpu_vgic_init() - Register VCPU-specific KVM iodevs * was: kvm_vgic_vcpu_init() * Xen: adding vgic_vx_enable() call - * @vcpu: pointer to the VCPU being created and initialized + * @v: pointer to the VCPU being created and initialized */ -int vcpu_vgic_init(struct vcpu *vcpu) +int vcpu_vgic_init(struct vcpu *v) { int ret = 0; - vgic_vcpu_early_init(vcpu); + vgic_vcpu_early_init(v); if ( gic_hw_version() == GIC_V2 ) - vgic_v2_enable(vcpu); + vgic_v2_enable(v); else ret = -ENXIO; @@ -239,9 +239,9 @@ void domain_vgic_free(struct domain *d) dist->nr_spis = 0; } -int vcpu_vgic_free(struct vcpu *vcpu) +int vcpu_vgic_free(struct vcpu *v) { - struct vgic_cpu *vgic_cpu = &vcpu->arch.vgic; + struct vgic_cpu *vgic_cpu = &v->arch.vgic; INIT_LIST_HEAD(&vgic_cpu->ap_list_head); -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Fri Jun 23 07:21:47 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 23 Jun 2023 07:21:47 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554243.865326 (Exim 4.92) (envelope-from ) id 1qCb6w-0003aQ-3v; Fri, 23 Jun 2023 07:21:38 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554243.865326; Fri, 23 Jun 2023 07:21:38 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCb6w-0003aJ-1K; Fri, 23 Jun 2023 07:21:38 +0000 Received: by outflank-mailman (input) for mailman id 554243; Fri, 23 Jun 2023 07:21:36 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCb6u-0003aD-J4 for xen-devel@lists.xenproject.org; Fri, 23 Jun 2023 07:21:36 +0000 Received: from EUR04-DB3-obe.outbound.protection.outlook.com (mail-db3eur04on0629.outbound.protection.outlook.com [2a01:111:f400:fe0c::629]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 959dad5a-1196-11ee-b237-6b7b168915f2; Fri, 23 Jun 2023 09:21:35 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by DU2PR04MB9113.eurprd04.prod.outlook.com (2603:10a6:10:2f4::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.26; Fri, 23 Jun 2023 07:21:33 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6521.024; Fri, 23 Jun 2023 07:21:28 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 959dad5a-1196-11ee-b237-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=crttS2Gd+FK2wgIjysEDa4GRj8kYN/TDvrTapI2nUvuR7VqLG6+j8ThUfHedGDgaRudtkcjuq4xi2o1Zk56ywRJw7F9uWVdu0cCAsXn1gGKqVKz71XcHtuYLz+Dhi1mIComZSzhqyYCNlrWxg9OOLyv7H6qKYjXPEdzzzMeB16TXWaE9f3JAvpMokujhGOA64Cs/69/scBpbL+q7AiPfX2XwBkWqeJQjBnwK2Hi5U25yMXIntpT/oVCaIGg7EP2Ej2k4uIqrc8QDzaUYa9x9BJmPkD/ujyC1L4yzd7rFh2bA2yt0yN3Yh/XJrI8aMykt8sWs9MWIrXlLzhp21bPJ9A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=qjLDupfVjULKpMwZUwyeJwVzkBbpwSa3UNCGEG8SP9w=; b=KyGqIqV5xiN3EW8WLylxIqcOcymSML2rcq5yEiTKerU4DvGu17cm+du0ywj0C5nOvYaWRxhqbtoFgwNmF4Cc4tI3LzTXL22WWMDj8avX4qvIykcedayPwfn5/nfhuM2kIF422LPzOucUoqv70tzvYhtA4odx7DmeRGZ1UK3D7tXl7DuprZ+5ptGtd1kA2Awn+HPbe/90XJHWoZjbrvrACo7TsrCzU7O6ClTbThGsiwzOEFK+gIRc5v7wi6imDnmwLdpmGHAyQBRScObeP3rsqnn/du85m6VPmSeX49w+aEC4KpTI0Tsl1TiOWy/H+PtVdL0OWQMqoAJamTPIuvdzpA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=qjLDupfVjULKpMwZUwyeJwVzkBbpwSa3UNCGEG8SP9w=; b=Wu5X9lZmyixujSJFyE5aWU3uICmbExrRYo0mtKP26ACW4E0rWMgv6jE581zNQPNkVACquR50E9eo/zZHFfc7dSeNSLih2JNP0RP95qv0zgTOh500S+05VVtIPAWFlYFxjt4KXtK9YhtFOxNMlQDwQ1A8+qSu4rmVsb+lBDjhltF+E85M41j2HLk4I4DHkcxMAwk5ttAyzvOsn3rTxQvZUVgUIBCiMbKDIw9/sv7g5b7HxsuxxeVUu4LLTAqtrIH25rsa+NmqQz4KtpGk/D/0BvcsLcnC83xtzU22+eyCqtzfaEwWP5ufX3b/GLZ+b4hBDUzS+OSpDUZ86z3ME/HVSA== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: Date: Fri, 23 Jun 2023 09:21:22 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v2 2/3] xen/ppc: Implement early serial printk on pseries Content-Language: en-US To: Shawn Anastasio Cc: Timothy Pearson , Andrew Cooper , Julien Grall , xen-devel@lists.xenproject.org References: From: Jan Beulich In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR0P281CA0062.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:49::23) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|DU2PR04MB9113:EE_ X-MS-Office365-Filtering-Correlation-Id: ce8c1e2d-788c-4de8-b591-08db73ba73c2 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: v83X1X474W7v6j5h328Yc4/mtGXLxLsoNYDm04+EbNV0b4wxkYSmNFKut7s9QDNTkqmeYnVKZ9v+rC9UdfP5PL8UDdoybUDaxcVuTpSgfMhG+JcJvWl+B0AUVDCQy2N26nHZok9L1QW9MdljiuRilnl136wIuK1Y2+yZYSJnHW74/h/cqZ+BJ+wRs2vSZ7Qcp/1E9V31ZEq6M8DLFWQvdZO+NjyZ13kkPtNsI+ydJ7gvKMDTop4KurKCmmuESemNlhETQYIQ9ly+C5SNBuAC75HIIpKV0a+w+tcQr9XBoLaxzLfPGqRFWCJJI3UyyyHU+FAEbsSvmn/0e0IDzazb3FbLV0WaTbQlz+ryj32IVowLx2qoxkwF8hW+dHr8BumsA56LhOPIpAng08ZXG5HLLEfS1MW1S81V9NcbVuqdsTWWrbHY9RJFf0dnecYpby9ZLV4QXg939cloxO3izb1IbethW+Q/cmp4KkZ/fZ2axdh3gfQGSCQ216w3dSGMVWHMNy+jrZNvwKLU5kt0ezzti23Qt93R5b0s3Rdx6qYsdKuXPbjVW6UBPzt+3Us580IJ1cDhMtSY4b9/8LALVEOUPVPtRd4hHMz6EExjky8oj+BEHYKGaHgk7m8NG0E/KTlgbjtV5KTFAXrLoaGh3SxqsA== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(376002)(136003)(366004)(346002)(39860400002)(396003)(451199021)(31686004)(83380400001)(41300700001)(8676002)(8936002)(316002)(2616005)(186003)(38100700002)(6506007)(53546011)(6512007)(26005)(6486002)(6666004)(54906003)(478600001)(36756003)(31696002)(86362001)(4326008)(66946007)(66556008)(66476007)(6916009)(2906002)(5660300002)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?R1EwUk9YZ2dla2p6YWlQTjVBVUhMa0RKYzNjZms4R3N6elp3WjREOWIyQnVs?= =?utf-8?B?b2wrTXd4WGFHcVRBWGxLMnh5KzBSMnA0ZFZpMFpYeFFQUjlXZFI4c0FHdGF6?= =?utf-8?B?YzNXSjR5aHI5eWh5ajZRbmpvVU1hRXFUMEY1SDgvcmJRSXRVT1ZOTmsyZW1I?= =?utf-8?B?NTB5eXBBSlBaTTE5c0NOWkFvUjJCZklybzl0R1BadmdPb3Z4SGtrY1V3R2Va?= =?utf-8?B?OExLWUFtMFJDUnlMZGJJbjA1TjVyMElWT2h1a21mK29ldWxraFFZZFBiZDV4?= =?utf-8?B?a3UyNzBNUVlJV2pDSHRjWXNpWTlRNEJoc3NWSm44OUdYcXJEek00T2lZdXJH?= =?utf-8?B?VHliWmpIYkRrR1B6a1lXQVlWeEY2YzdXd01sTjY2cUNZaENpbTd5em5iSDUy?= =?utf-8?B?aUJVSEgya3dRZlBqNUg2ai9XNG1RaDdCZ25rbGRFaDgzalFHeEJCWWI0bm45?= =?utf-8?B?WUJBRlVDUStWQ25nMFIxS3JxUEpwbHd0WjVYYmo3MnYwc2NNWkdFOEdpdU5E?= =?utf-8?B?azFKREp0RlRSYld6ZEV2anRXUnovSldsVEdxUTJYZUFpWCtkS0djU25VZlM5?= =?utf-8?B?WGh5TFV4bVQwL0dDenJiWmVLRVpkN3ZWWXJsMWJ1Y2ZiY0ZQb0xYdXZLQ0wv?= =?utf-8?B?bzBpWGU3OFhkbmwxVmlZMUNLNWlsbG9IR3htUENTWTk5RkJuMDVTejZEQ3R0?= =?utf-8?B?WjhDT3JEMXRFeUV2eFYvelVzZlpMSEh1akxQcmNiTkxTYStDK09VcjNsckJ3?= =?utf-8?B?UkFRa0xUSWd0bW4xT3EvWjBmQWIxYUpDOVVwVXM3dCswcndZUGVDazZkZDBG?= =?utf-8?B?R1pYdmJ3MXF5MkNPQTN2QVZwUy9rTHdkdVVkcWtTTjNjM0dHRXBKcXptRW5t?= =?utf-8?B?T096Z0pCVStKdTZYUk1JejZMWmpVU2s1Wk5rZ0VxYkNrMkpIRDFhZnV0aEtk?= =?utf-8?B?R1dZWGRSaEczYXl3cmxwRGRBeVBSTUpxa20wcmlNempGL3JOYnFLcngzYjd6?= =?utf-8?B?cDJHM2pZdm5zK0FrT0tBL1ZsdnF3RnphajdqRktHR0R4R25uSkNPZGhUZy9r?= =?utf-8?B?d3lHRlV4UnZqaDNyR2FuZFhZSVo3Z3dmdEN0VzY0SU91WjFzL0JDNWhDNlo3?= =?utf-8?B?emtLOFZLSVhIemJJVVhXRkFmcU1TQ29JdFBFRGduQVRwNjY1SUJPL1Q5VEF1?= =?utf-8?B?aXVPdjhOZko2Y3IyblQrQWdCLzB6Y1NZRU5KNnY2cXgyaXhvOHBVbVQ2aUZp?= =?utf-8?B?UXkrYnd4d0dkRmVBT016TTZ0dnU2ckdCSCtZU2xHU0JUUWlJYjBCNmhQS0U5?= =?utf-8?B?dkJ5NW00bkZEamFNYjE3RXZSQnoyQnN5QU9jTHhtbmxaVC9oaHY5dlJTckRr?= =?utf-8?B?OTFLWnNmQm5IdkF4N2xtU3REb0lkLytvYVZxWkNXYVZCd21HbGttUDhtZ2N1?= =?utf-8?B?NFM1Q1lMTzZLUEVDQjY2b0xNaUVxZXhSKzBlOC9uNUQwMHdoVGhyVDZoc0Jv?= =?utf-8?B?SUxibjE4WExGay9PSlcydUdXUUh2Qkh3YVFvOFJvM0wydnJDY0RPNkdFb3A4?= =?utf-8?B?VjFNZHlYMmVRc2RqSVA0VGFLMDEvMG9UZy90Q0ptMlJJRTJTU3lXQ1p3M1Nm?= =?utf-8?B?QTdQNVgzZmVjZlFWY1o0b0luall6a1BveHRXTFVCeDlFZGpDSGNoN0lBaUlt?= =?utf-8?B?SUFRcU1nYTZWMUtVYWVsWXdrR1YyOXIyYlg0L1Z6cUV3RDM1NUdIMEY3WXdK?= =?utf-8?B?bHRSRStSWjFUbERwaGVvRGJJTTcxNGpkYi9RQkwraXdTekUxOHhLTDFyejBq?= =?utf-8?B?amM1SXl3eHNtcERhbzgzWWlnR25jZTd6cFB1SjJqQlEvOWlLaklPemhyNUUr?= =?utf-8?B?cnhnQjR5MXZwdGQyakZDUkNDVTQ1Z2ZJUXhqTkxtT2wyUzEwbTVFdDlWbFJK?= =?utf-8?B?OHRrdnNOWEVMdWZnNXREYlB5WndJSTVMb2RscHkwU3FUbkRnNHdoTVk5ZjZU?= =?utf-8?B?bEwzbHQxT3ZJL1YxMFhUS0h4WWZMRTVHYXdlV0tmSmMzMnUwNzdPNVFkVTk2?= =?utf-8?B?YjhsYkpMTW80Z1hrSjJGRHh6dkhnOFFORzFoS0hUTm8wYmRZUjFnLzFXT3ZV?= =?utf-8?Q?GqJM6AOpY3xnLcogKR3nlQ9Nj?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: ce8c1e2d-788c-4de8-b591-08db73ba73c2 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Jun 2023 07:21:24.7868 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: NJ3APBcu2YSM/eDin7onOz3AbNEoO/vczjnUPY/KUOxSjkLGcqRZWOpjUXd9zJviehCdJmHu4rtNswA20Vj+gg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU2PR04MB9113 On 22.06.2023 22:57, Shawn Anastasio wrote: > On typical Power VMs (e.g. QEMU's -M pseries), a variety of services > including an early serial console are provided by Open Firmware. > Implement the required interfaces to call into Open Firmware and write > to the serial console. > > Since Open Firmware runs in 32-bit Big Endian mode and Xen runs in > 64-bit Little Endian mode, a thunk is required to save/restore > any potentially-clobbered registers as well as to perform the > required endianness switch. Thankfully, linux already has such > a routine, which was imported into ppc64/of-call.S. > > Support for bare metal (PowerNV) will be implemented in a future > patch. > > Signed-off-by: Shawn Anastasio Just two minor remarks; I can't really review most of this for lack of knowledge. > --- a/xen/arch/ppc/Makefile > +++ b/xen/arch/ppc/Makefile > @@ -1,4 +1,6 @@ > obj-$(CONFIG_PPC64) += ppc64/ > +obj-y += boot-of.init.o > +obj-$(CONFIG_EARLY_PRINTK) += early_printk.o > obj-y += setup.o While you've followed Julien's earlier comment partly, I think, sorting still isn't alphabetical. If you mean ppc64/ to explicitly be first, you will want to introduce a separating blank line. > --- /dev/null > +++ b/xen/arch/ppc/ppc64/of-call.S > @@ -0,0 +1,83 @@ > +/* SPDX-License-Identifier: GPL-2.0-or-later */ > +/* > + * Adapted from Linux's arch/powerpc/kernel/entry_64.S, with the > + * following copyright notice: > + * > + * PowerPC version > + * Copyright (C) 1995-1996 Gary Thomas (gdt@linuxppc.org) > + * Rewritten by Cort Dougan (cort@cs.nmt.edu) for PReP > + * Copyright (C) 1996 Cort Dougan > + * Adapted for Power Macintosh by Paul Mackerras. > + * Low-level exception handlers and MMU support > + * rewritten by Paul Mackerras. > + * Copyright (C) 1996 Paul Mackerras. > + * MPC8xx modifications Copyright (C) 1997 Dan Malek (dmalek@jlc.net). > + */ > + > +#include > +#include > +#include > + > +/* size of minimum stack frame that can hold an entire cpu_user_regs struct */ > +#define STACK_SWITCH_FRAME_SIZE (UREGS_sizeof + STACK_FRAME_OVERHEAD) > + > + .section .init.text, "ax", @progbits > + > +ENTRY(enter_of) > + mflr %r0 > + std %r0, 16(%r1) > + stdu %r1,-STACK_SWITCH_FRAME_SIZE(%r1) /* Save SP and create stack space */ > + > + /* > + * Because PROM is running in 32b mode, it clobbers the high order half > + * of all registers that it saves. We therefore save those registers > + * PROM might touch to the stack. (%r0, %r3-%r13 are caller saved) > + */ > + SAVE_GPR(2, %r1) > + SAVE_GPR(13, %r1) > + SAVE_NVGPRS(%r1) > + mfcr %r10 > + mfmsr %r11 > + std %r10, UREGS_cr(%r1) > + std %r11, UREGS_msr(%r1) > + > + /* Put PROM address in SRR0 */ > + mtsrr0 %r4 > + > + /* Setup our trampoline return addr in LR */ > + bcl 20, 31,.+4 > +0: mflr %r4 > + addi %r4, %r4,(1f - 0b) > + mtlr %r4 > + > + /* Prepare a 32-bit mode big endian MSR */ > + LOAD_IMM64(%r12, MSR_SF | MSR_LE) > + andc %r11, %r11, %r12 > + mtsrr1 %r11 > + rfid I think readability would improve if you reserved a minimum number of characters (6?) for the mnemonics, padding with blanks when they're shorter. (This, if you'd be willing to switch, would then also apply to patch 1, iirc.) Jan From xen-devel-bounces@lists.xenproject.org Fri Jun 23 07:21:59 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 23 Jun 2023 07:21:59 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554245.865335 (Exim 4.92) (envelope-from ) id 1qCb7H-0003wH-FA; Fri, 23 Jun 2023 07:21:59 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554245.865335; Fri, 23 Jun 2023 07:21:59 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCb7H-0003wA-CU; Fri, 23 Jun 2023 07:21:59 +0000 Received: by outflank-mailman (input) for mailman id 554245; Fri, 23 Jun 2023 07:21:58 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCb7F-0003uL-Ua for xen-devel@lists.xenproject.org; Fri, 23 Jun 2023 07:21:57 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCb7F-0000RD-AO; Fri, 23 Jun 2023 07:21:57 +0000 Received: from gw1.octic.net ([88.97.20.152] helo=[10.0.1.102]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qCb7F-0005lA-5K; Fri, 23 Jun 2023 07:21:57 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=9tMmR3IdR8Ac5LA9mOGvIuyBClL/757uKvu655rDFls=; b=p4jX2zz8ODkjgl+uXgO8iDs+QI vvS3SV/ZGLPrpLsF/DZldHEOvNEAycPzKOgXGwDIljUdTie4zqpjE9duaXfHkz3WLoeRzEVgoCLJ8 HQ0YOKbWHVT9eQ+f4/wZ2b9YnQlhQBR5uXdylqMRdPQ+kTgVUlPobkUhJv97J8DZM/f0=; Message-ID: <347cbd51-b2e7-2991-76c7-82a0f8beb373@xen.org> Date: Fri, 23 Jun 2023 08:21:55 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH 3/4] xen/ppc: Implement early serial printk on pseries To: Shawn Anastasio , xen-devel@lists.xenproject.org Cc: tpearson@raptorengineering.com References: <259298cdadf7cf1eba08cd35c636e9aca9e2182a.1687366665.git.sanastasio@raptorengineering.com> <4fc1fcee-e210-fe16-f762-3f23700d51b9@xen.org> <8fdb87a3-7ae6-6435-0988-1ea1926d2a2b@raptorengineering.com> From: Julien Grall In-Reply-To: <8fdb87a3-7ae6-6435-0988-1ea1926d2a2b@raptorengineering.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi, On 22/06/2023 19:54, Shawn Anastasio wrote: > On 6/22/23 11:43 AM, Julien Grall wrote: >> Hi, > > Thanks for the response. I had one more question with regards to the > emacs footer. > >> All files usually have an emacs magic block. E.g.: >> >> /* >> * Local variables: >> * mode: C >> * c-file-style: "BSD" >> * c-basic-offset: 4 >> * indent-tabs-mode: nil >> * End: >> */ > > Is this absolutely necessary to include? The CODING_STYLE document seems > to imply that it's optional and a quick peek at other architectures' > code suggests that this is the case. Interesting, I thought the coding style would impose it because from past discussion it seemed that we wanted to use it everywhere but it tends to be forgotten. > > If it is required, should it also be included in assembly files, or only > .c/.h ones? I think it shold be everywhere. But given the CODING_STYLE is more laxed than I remembered, then feel this to ignore this comment :). Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Fri Jun 23 07:23:08 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 23 Jun 2023 07:23:08 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554255.865345 (Exim 4.92) (envelope-from ) id 1qCb8M-0004hA-Ob; Fri, 23 Jun 2023 07:23:06 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554255.865345; Fri, 23 Jun 2023 07:23:06 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCb8M-0004h3-LU; Fri, 23 Jun 2023 07:23:06 +0000 Received: by outflank-mailman (input) for mailman id 554255; Fri, 23 Jun 2023 07:23:04 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCb8K-0004gm-Ox; Fri, 23 Jun 2023 07:23:04 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCb8K-0000Sa-Ny; Fri, 23 Jun 2023 07:23:04 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCb8K-000555-8v; Fri, 23 Jun 2023 07:23:04 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qCb8K-0006TN-8Q; Fri, 23 Jun 2023 07:23:04 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=pqOobAw7w1jUF0IzzpUZ/a9oYPgERVHRa8wYX48QQns=; b=W33Nu+a9LFzLClmls5t3PnWDXE 1oAyxaRHjY48HHVQzAtDk7JDzxhRpl/9o4mkZxYmsorieoGWePt8H3Dbdr48JtjIq7vn7WwaJfApO lw/flOaI3+ygWof9fHPejcEhEoTAmZko6uj/FmvuMVyWaVlLEYHIXNTZZHEJeGb/N+yo=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [ovmf test] 181561: all pass - PUSHED X-Osstest-Versions-This: ovmf=49f06b664018105090a42a0684fb5e6ea4c909cd X-Osstest-Versions-That: ovmf=fcd71642df9a3a5932a2db116acc6fe23458d8f5 From: osstest service owner Date: Fri, 23 Jun 2023 07:23:04 +0000 flight 181561 ovmf real [real] http://logs.test-lab.xenproject.org/osstest/logs/181561/ Perfect :-) All tests in this flight passed as required version targeted for testing: ovmf 49f06b664018105090a42a0684fb5e6ea4c909cd baseline version: ovmf fcd71642df9a3a5932a2db116acc6fe23458d8f5 Last test of basis 181536 2023-06-21 11:12:23 Z 1 days Testing same since 181561 2023-06-23 05:12:24 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Sunil V L jobs: build-amd64-xsm pass build-i386-xsm pass build-amd64 pass build-i386 pass build-amd64-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-i386-pvops pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Pushing revision : To xenbits.xen.org:/home/xen/git/osstest/ovmf.git fcd71642df..49f06b6640 49f06b664018105090a42a0684fb5e6ea4c909cd -> xen-tested-master From xen-devel-bounces@lists.xenproject.org Fri Jun 23 07:28:08 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 23 Jun 2023 07:28:08 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554262.865356 (Exim 4.92) (envelope-from ) id 1qCbD5-0005Mv-BI; Fri, 23 Jun 2023 07:27:59 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554262.865356; Fri, 23 Jun 2023 07:27:59 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCbD5-0005Mo-8B; Fri, 23 Jun 2023 07:27:59 +0000 Received: by outflank-mailman (input) for mailman id 554262; Fri, 23 Jun 2023 07:27:57 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCbD3-0005Mi-N8 for xen-devel@lists.xenproject.org; Fri, 23 Jun 2023 07:27:57 +0000 Received: from EUR04-VI1-obe.outbound.protection.outlook.com (mail-vi1eur04on0620.outbound.protection.outlook.com [2a01:111:f400:fe0e::620]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 78601ddb-1197-11ee-8611-37d641c3527e; Fri, 23 Jun 2023 09:27:55 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by AS8PR04MB8166.eurprd04.prod.outlook.com (2603:10a6:20b:3fa::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.26; Fri, 23 Jun 2023 07:27:52 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6521.024; Fri, 23 Jun 2023 07:27:52 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 78601ddb-1197-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=K5Gc1cj1EwItcZ6/Ee/TgZ+8mKgUE5m1iTBkV1FIXNqG+Cn/9xwVnpFQtzpXjBfyWqivl4w8sLw3bToF5fIN2ZttgAP1PFTibXcvH2Fe9CgqS3OVKGnTeJxcmD3duyxUbHF1+CqbXTNcB51+bfbfwzY4YZdzDAnikPBWCVLGH7CHF082+/UZPN20Mg5jONcdVhtOfgzgwGjgm2o4AU4BfganGo8a/Ig4MeCrRaqrsSrrwtK8kRO6aQ+TobMucS5gRP4v7vcA6OsDYrDSSGmPFz3TSvjcmvZjQiRRsoT2ZKhGHOqvy4Wv6crwChdHMbtujP1AnvSg8pAdj0GVlp3pQA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=nnglgTf45V6XR3g53Zj4fKPBR5Jp8KXD+x4sO2CjuwM=; b=GaWBGZtaWTOprtAtO958rGktwklXKMhaTebBWnucGxo84kCvfjpfHga274ogIdwqjRHrIfR2KQDIuyFAKI5uCejtnB5RT2Xft40pC3d+ntsJ8oBRbMa1H8gdpguurd+9A3kId8ZiHKv2peJO4JKUmseJxStG1o2LYHiMMclfcEAqsqfMqJ6zMM2zThykdlTf8WDs1DDjRsELFnP4BhBniXZd3x9XbQhIp1amsxX/qwuVvY23gHjoq828Qfn+MqOiY9Pd/CkXoUVXaGnK0QQ+BTfHBlQ+/7HN7fBjfeWLXWWmL1AoPEXdlwkO6RSg+fyoMYJaZ2XTzITQAeAuKwO+7w== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=nnglgTf45V6XR3g53Zj4fKPBR5Jp8KXD+x4sO2CjuwM=; b=ChDjTonNYyb9uUBDdOeBPeB6d6CETTa5s1Fmew7rMtK6DiRyesQ1pIRyx/38jHRumsOpUJYlZSVcDSneYPWE2tjAw1+9VPCQxJe++L/Zfh/9w096Ti82IdUtBJxzmdO+JKhjIW1dTzi/Z72j+4ihu7z7/0lpZjgNNfce/wx+EF2eRuimE4sS0LA9uT9JO+Py+F0pr6ciTBzT+5WIgHCUPQR5CtQolmeA3Gpe1I1A/yTza94wjNZdq4hubwXxYJc5MRD4bMv4mdh23djoVI9TR+w6fs0pYfvOHvkfhIq/T3svAZLL3NtufBefM8OhPHymV/G5/i4TiEa5WYS6Ewdhow== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <6fae32fe-0403-6a14-8485-aa851a594f0c@suse.com> Date: Fri, 23 Jun 2023 09:27:50 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v4 2/4] x86/microcode: Ignore microcode loading interface for revision = -1 Content-Language: en-US To: Alejandro Vallejo Cc: Andrew Cooper , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , Xen-devel References: <20230622174219.8871-1-alejandro.vallejo@cloud.com> <20230622174219.8871-3-alejandro.vallejo@cloud.com> From: Jan Beulich In-Reply-To: <20230622174219.8871-3-alejandro.vallejo@cloud.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: AS4PR10CA0010.EURPRD10.PROD.OUTLOOK.COM (2603:10a6:20b:5dc::7) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|AS8PR04MB8166:EE_ X-MS-Office365-Filtering-Correlation-Id: 5863a3f8-7699-4f11-c8b9-08db73bb5aaa X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: Rc4aDQNvdpbtqt8nOQPoUGhup6AIfeUgA3D+MWJXG6NPWFN9SS4K4Vf4gWgwsE/ZgR9vEhbbBGnBpr5pGXTF9cy9ImAGapjrRpm75azOKNMsXtHnZGeyyC4trzOjohJtwHt+9QIMjTCGZ/s0fCLIFo4R9+S6ECXzF2a3Cl3KvB0vuexcb14chxeaRrxMoLrcRPCfU1GYnfAKhsSkR1ivo7oejkbylo++I0MqODKxpdJflHj0723pAEtg36TlAUmkTMx9QrsXc7BF7To+ANS29pcCEwOEwFAyXiVAYgho14pScXWhqmLZ4uOekRnXBUlwOWngg0CFMXzXcYqJFj0ma7197roxxwLf02iw/ogCzKktNwCwxbJj6DNsnBpXdqdlGnjHoXUmUi2PDPGxMARdasGYzXLln5CWyByoizR+mlwtJDagwi1o3rg8AruOu3aSU8wrPBGIhj+9b3gexYJU1DK72ZJlb/+HD4el88FuQJOMn5VbDEVxSfDDMHjOlsw3g/zS8PpwULphEyKuOFey9UTaaik5yva+ZwiEJzsPj7wcYBpYGZhBfyZnZ5zNMTar98ibE53vorlVK+6BFdv09F7eou/5H+DxqpH8BFxU4urzxPQBsHqDvypqJ9Y4B/ed6Qclh/Rgt9lJRQsfeNl9Lw== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(396003)(136003)(366004)(376002)(39860400002)(346002)(451199021)(478600001)(6486002)(54906003)(6512007)(6506007)(26005)(53546011)(186003)(66946007)(4744005)(2906002)(66556008)(66476007)(8936002)(41300700001)(316002)(6916009)(4326008)(5660300002)(8676002)(38100700002)(86362001)(31696002)(36756003)(83380400001)(2616005)(31686004)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?OEFlZ2hqeDhOQ2wweUpBazBGaHI0dHI4RXNlRFRaLytEVEVUK2tMblBWNUoy?= =?utf-8?B?dENFY0lsK1dLbitac0JUOSs0K0hSS2txM3pwbmFIa09LanFCdk03R0VBaTFG?= =?utf-8?B?VGNKT2lqdm93K1R6UFl2bXZkbzZFejdUcG8reGU1aktLT2h3Vjd3NWpPR3Vj?= =?utf-8?B?QzBLVWFRSnluTkZZcWdtUzh1aFJIczc4VDQvaEdWWUlsYlFObjFLNGtKV0dO?= =?utf-8?B?cUNFR0pBR2F3cnZsTmFoUm5NaHIrTlhwV2xwN2xOYmJCQzhQTVZGNllqT1pU?= =?utf-8?B?TmZGN1NjSU9FOW9CQjhZL0YrMmh0NzlLWk83RjFnZXgrZm1iQUJSeTkzQ3dy?= =?utf-8?B?S05mcUNKSnQ0Q01BQlNrSnkwZTNrazRoVWVoaWwxeWhwRU1zSWlVZFljb2Nm?= =?utf-8?B?NXV6Y0ZKUWxUZm5CS2tYV1BLcmVMbHphMUZhKzR4a0FvYWsyeVI3S3pXbjJl?= =?utf-8?B?ZzZLbzdRMFdoN0svS2ZjTkdHdjBDbHBZWnZUeDZkNE14VlEzTk9KUUJQdXgr?= =?utf-8?B?TGNtVEdKZEc3OC92TVRFNUZJSEg3WEpRS3ljTStqd25LMk1xbHJCODMvUldv?= =?utf-8?B?R0l0ekdGNW5rMUR0cGRwTFV6QUZ0SjFPanpmU1M2YlBqekZLQW9JYjZ1UlN6?= =?utf-8?B?emlHejZKVEZYTnFmcjRLL1cwNEZnN2RJR1NhbGJQVDdzWjNkQ3VURktGZmhl?= =?utf-8?B?ZmtDV3p2NnN5QUJWaVo4eTVUUkNzRHYxUkF4TUpqMVNKQndVbG1yZ2s0VlRI?= =?utf-8?B?REhhTlRSRFNwUWRrNXNhb0I1Y0dDaXllS0JUc21LdWs2SVkvTVNIWlkvWEF1?= =?utf-8?B?bytzR2p2WEhoODI3bytwY2JORkdvUXBoUXhHVThBa3pudmpPeXlVL0RFcG1N?= =?utf-8?B?eHFVN0JER0t3OFlJTk5VNjJPKzdudG9IQzdBcG1aZWxaNTJwVFVLcW9NN2F0?= =?utf-8?B?ZGRLVzYzMkkwL01aL0JlSHBPV3hvYUE3Wmd2YWlkaHc2Y2FQa1YvODBKdHhw?= =?utf-8?B?TlFsZlh6QnM2aEdaWUNvUnNQWHdaak1IOGlLL1BlS0JNZW5RWk5qVWpvMFZh?= =?utf-8?B?UTYrRWphZjVxWHhRUzNWYldndTgzeWVWVExCdERERFFZRXpXRjdqSzNSYnR5?= =?utf-8?B?R3JFeHVUeWpONFFDdmRTZ0RyMm5yS2UxV2JvZ2NpYkx6U1Y3cHlZTjVHemtl?= =?utf-8?B?RFc5cFRibGxNbmVYS25uK1c3UkJOOXRwaXRVeHpQK0hzTjdFblV1QVkzeFB0?= =?utf-8?B?NkJpenpDdDkvYWx2ZVByZU92dnFrUkJjNm9MSGFxU29PRzl0azVYaXlaZGhV?= =?utf-8?B?RENXRGRNZ1hodkJrMG42ZytCd3pTQldUa3Bobml0Q2NWTXEzSUxjSkQwUERp?= =?utf-8?B?b1BiTFA4cHRxbnh4MFZaREJQSzlUSHI2cDJkeVVSSCt2dW15Y1o3UlJycUpU?= =?utf-8?B?YXNsQit2QVB3Tmp5U0w2TUhyd2VSdEZtd1N5dmVpZjd1Z004aExpV1JzNkNF?= =?utf-8?B?dStwbkZ6UEZ5TndIT0VDS1FNNnZYbElscGJZOW83Q0JYYXN4SkJERkw5NFov?= =?utf-8?B?QUFXbG9ZbkRIbFJFZ2t4WmM1LzZ1bTlpUmFxNWUvUWFIVVRqdnRHQm5yZ2VL?= =?utf-8?B?TlJxT2lUU1VHQjB1SG05WDZRdHFQbWhYRGZqVDRoWW9LYXRaU29hb0hManVW?= =?utf-8?B?Z3FON0RVcm9tdEJWQmQrbXRWUHpMRkUyclhjOFpBa3drSi9KTk5oTVNrRVpL?= =?utf-8?B?TXFTWnZMWi9MRHB0SWZKMklWMC82WDlZVGxNL3BnTWJZc0ZKZy9TSGdNdW5O?= =?utf-8?B?WmpYM3hUZDc2UTdkOGFxaGZJeXh0WW5HbmlTc3dKRnFJbHlkOFh5c0dMbG8x?= =?utf-8?B?OEY0Um1kcnIxSXRsZHk4eXJKY1lYYVJXYnNuU3hqZDI1R2JTRmxvK0NxZHJi?= =?utf-8?B?Sk9Da083OW5TZWYva3VXME90YS9yQUpXZjM0M1NzZnpiZWZrRnRqRDJZSlJz?= =?utf-8?B?RlA2QWYyVGRWMWR4OURlMGprUTR2MFNBaE1SVUltQUFIZWwyUHhMd0ExdWVn?= =?utf-8?B?WUhYVXlTeVJIK1l5SnhaeWtDRzUrbTNrdEpyRE56cVBLM0JoN1lMOXhLTHQw?= =?utf-8?Q?Fa3KDKEftkvYU/PSrkXFUSiW6?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 5863a3f8-7699-4f11-c8b9-08db73bb5aaa X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Jun 2023 07:27:52.2260 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 9EKer3ARhEaoacwjBOzUL+RA1zdUwnILyXT1bbNt44OYtmPWsfeE5rpSLHG9mAKYFTyHxQHftDGUJX72+HnA3g== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB8166 On 22.06.2023 19:42, Alejandro Vallejo wrote: > --- a/xen/arch/x86/cpu/microcode/core.c > +++ b/xen/arch/x86/cpu/microcode/core.c > @@ -867,10 +867,21 @@ int __init early_microcode_init(unsigned long *module_map, > return -ENODEV; > } > > - microcode_grab_module(module_map, mbi); > - > ucode_ops.collect_cpu_info(); > > + /* > + * Some hypervisors deliberately report a microcode revision of -1 to > + * mean that they will not accept microcode updates. We take the hint > + * and ignore the microcode interface in that case. > + */ > + if ( this_cpu(cpu_sig).rev == ~0 ) { Nit: Style (brace placement). Can probably be fixed up while committing, if no other issues arise. Jan From xen-devel-bounces@lists.xenproject.org Fri Jun 23 07:32:26 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 23 Jun 2023 07:32:26 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554267.865366 (Exim 4.92) (envelope-from ) id 1qCbHH-0006pF-Sw; Fri, 23 Jun 2023 07:32:19 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554267.865366; Fri, 23 Jun 2023 07:32:19 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCbHH-0006p8-Pi; Fri, 23 Jun 2023 07:32:19 +0000 Received: by outflank-mailman (input) for mailman id 554267; Fri, 23 Jun 2023 07:32:18 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCbHG-0006p2-KZ for xen-devel@lists.xenproject.org; Fri, 23 Jun 2023 07:32:18 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCbHF-0000ca-N9; Fri, 23 Jun 2023 07:32:17 +0000 Received: from gw1.octic.net ([88.97.20.152] helo=[10.0.1.102]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qCbHF-000678-D3; Fri, 23 Jun 2023 07:32:17 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:Subject: From:References:Cc:To:MIME-Version:Date:Message-ID; bh=l0wHpPKBucut3DKhUybRK6TY6nPUIwwwFpaokuAGnHA=; b=4jW0VZDu/injY2PXia7uUirTqW B70Lf4ozRdIIap2UX5OmNBXpNSyYufD2v/DHOxoJ6l38iJlXmIwFtk0P2XCj64GTXXbQQG+kQe3Z7 KRC+0OUXTYJOGQLcG/EfUaegF8aTIpPW5eK2rkYcbFMEa76vgVUZ6+r3U6cHSi4xNwVA=; Message-ID: <9e0decef-0a56-1993-eee2-59e31a41ccdf@xen.org> Date: Fri, 23 Jun 2023 08:32:15 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 To: Federico Serafini , xen-devel@lists.xenproject.org Cc: consulting@bugseng.com, Stefano Stabellini , Bertrand Marquis , Volodymyr Babchuk , Michal Orzel , Xenia Ragiadakou , Ayan Kumar Halder References: <11c50030015014ff1a80dca849a4262133b2707a.1687502320.git.federico.serafini@bugseng.com> From: Julien Grall Subject: Re: [XEN PATCH v2] xen/arm: fix violations of MISRA C:2012 R8.3 on parameter names. In-Reply-To: <11c50030015014ff1a80dca849a4262133b2707a.1687502320.git.federico.serafini@bugseng.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi, On 23/06/2023 07:54, Federico Serafini wrote: > To comply with Rule 8.3 ("All declarations of an object or function > shall use the same names and type qualifiers") change the parameter > names in order to have function declarations consistent with the > corresponding definitions. > > Change the function identifier 'access_guest_memory_by_ipa' to > 'access_guest_memory_by_gpa' in accordance with modifications on its > formal parameters: 'gpa' is used more frequently than 'ipa' and is > therefore preferable. I already hinted in the previous version, but I guess this wasn't clear enough. A patch should do one similar thing because it is easier to review and justify. For instance you explain the renaming function renaming but you don't really say why sometimes you updated the definition but other the declarations. I think this patch should be split in multiple parts: 1. Patch to rename arch_guest_memory_by_ipa() and update the parameter name 2. Patch(s) to rename the parameter name on the definitions (e.g. vcpu_vgic_init() & co). They could be bundled by file. 3. Patch to rename the parameter name on the declarations. This is pretty much your patch v1 but without the changes in 1/2. Cheers, > > Signed-off-by: Federico Serafini > --- > Changes in v2: > - adapted parameter names in function definitions to the names used > in function declarations when the context requires it; > - reflected changes to the function identifier in order to maintain > consistency with modifications on parameter names; > - extended changes to definitions under xen/arch/arm/vgic. > --- > xen/arch/arm/domain.c | 10 +++++----- > xen/arch/arm/guest_walk.c | 6 +++--- > xen/arch/arm/guestcopy.c | 2 +- > xen/arch/arm/include/asm/fixmap.h | 2 +- > xen/arch/arm/include/asm/gic.h | 2 +- > xen/arch/arm/include/asm/gic_v3_its.h | 5 +++-- > xen/arch/arm/include/asm/grant_table.h | 4 ++-- > xen/arch/arm/include/asm/guest_access.h | 4 ++-- > xen/arch/arm/include/asm/irq.h | 2 +- > xen/arch/arm/include/asm/regs.h | 2 +- > xen/arch/arm/include/asm/vgic.h | 4 ++-- > xen/arch/arm/mm.c | 10 +++++----- > xen/arch/arm/tee/optee.c | 10 +++++----- > xen/arch/arm/vgic-v3-its.c | 16 ++++++++-------- > xen/arch/arm/vgic/vgic-init.c | 12 ++++++------ > 15 files changed, 46 insertions(+), 45 deletions(-) > > diff --git a/xen/arch/arm/domain.c b/xen/arch/arm/domain.c > index add9929b79..8c18e92079 100644 > --- a/xen/arch/arm/domain.c > +++ b/xen/arch/arm/domain.c > @@ -1155,15 +1155,15 @@ void vcpu_block_unless_event_pending(struct vcpu *v) > vcpu_unblock(current); > } > > -void vcpu_kick(struct vcpu *vcpu) > +void vcpu_kick(struct vcpu *v) > { > - bool running = vcpu->is_running; > + bool running = v->is_running; > > - vcpu_unblock(vcpu); > - if ( running && vcpu != current ) > + vcpu_unblock(v); > + if ( running && v != current ) > { > perfc_incr(vcpu_kick); > - smp_send_event_check_mask(cpumask_of(vcpu->processor)); > + smp_send_event_check_mask(cpumask_of(v->processor)); > } > } > > diff --git a/xen/arch/arm/guest_walk.c b/xen/arch/arm/guest_walk.c > index c80a0ce55b..d99b411f3b 100644 > --- a/xen/arch/arm/guest_walk.c > +++ b/xen/arch/arm/guest_walk.c > @@ -85,7 +85,7 @@ static bool guest_walk_sd(const struct vcpu *v, > paddr |= (gva & mask) >> 18; > > /* Access the guest's memory to read only one PTE. */ > - ret = access_guest_memory_by_ipa(d, paddr, &pte, sizeof(short_desc_t), false); > + ret = access_guest_memory_by_gpa(d, paddr, &pte, sizeof(short_desc_t), false); > if ( ret ) > return false; > > @@ -110,7 +110,7 @@ static bool guest_walk_sd(const struct vcpu *v, > paddr = ((paddr_t)pte.walk.base << 10) | ((gva & mask) >> 10); > > /* Access the guest's memory to read only one PTE. */ > - ret = access_guest_memory_by_ipa(d, paddr, &pte, sizeof(short_desc_t), false); > + ret = access_guest_memory_by_gpa(d, paddr, &pte, sizeof(short_desc_t), false); > if ( ret ) > return false; > > @@ -481,7 +481,7 @@ static bool guest_walk_ld(const struct vcpu *v, > paddr |= LPAE_TABLE_INDEX_GS(grainsizes[gran], level, gva) << 3; > > /* Access the guest's memory to read only one PTE. */ > - ret = access_guest_memory_by_ipa(d, paddr, &pte, sizeof(lpae_t), false); > + ret = access_guest_memory_by_gpa(d, paddr, &pte, sizeof(lpae_t), false); > if ( ret ) > return false; > > diff --git a/xen/arch/arm/guestcopy.c b/xen/arch/arm/guestcopy.c > index 225fd343dd..6716b03561 100644 > --- a/xen/arch/arm/guestcopy.c > +++ b/xen/arch/arm/guestcopy.c > @@ -142,7 +142,7 @@ unsigned long copy_to_guest_phys_flush_dcache(struct domain *d, > COPY_to_guest | COPY_ipa | COPY_flush_dcache); > } > > -int access_guest_memory_by_ipa(struct domain *d, paddr_t gpa, void *buf, > +int access_guest_memory_by_gpa(struct domain *d, paddr_t gpa, void *buf, > uint32_t size, bool is_write) > { > unsigned long left; > diff --git a/xen/arch/arm/include/asm/fixmap.h b/xen/arch/arm/include/asm/fixmap.h > index d0c9a52c8c..734eb9b1d4 100644 > --- a/xen/arch/arm/include/asm/fixmap.h > +++ b/xen/arch/arm/include/asm/fixmap.h > @@ -30,7 +30,7 @@ > extern lpae_t xen_fixmap[XEN_PT_LPAE_ENTRIES]; > > /* Map a page in a fixmap entry */ > -extern void set_fixmap(unsigned int map, mfn_t mfn, unsigned int attributes); > +extern void set_fixmap(unsigned int map, mfn_t mfn, unsigned int flags); > /* Remove a mapping from a fixmap entry */ > extern void clear_fixmap(unsigned int map); > > diff --git a/xen/arch/arm/include/asm/gic.h b/xen/arch/arm/include/asm/gic.h > index 76e3fa5dc4..f1ef347edc 100644 > --- a/xen/arch/arm/include/asm/gic.h > +++ b/xen/arch/arm/include/asm/gic.h > @@ -257,7 +257,7 @@ int gic_remove_irq_from_guest(struct domain *d, unsigned int virq, > extern void gic_clear_pending_irqs(struct vcpu *v); > > extern void init_maintenance_interrupt(void); > -extern void gic_raise_guest_irq(struct vcpu *v, unsigned int irq, > +extern void gic_raise_guest_irq(struct vcpu *v, unsigned int virtual_irq, > unsigned int priority); > extern void gic_raise_inflight_irq(struct vcpu *v, unsigned int virtual_irq); > > diff --git a/xen/arch/arm/include/asm/gic_v3_its.h b/xen/arch/arm/include/asm/gic_v3_its.h > index fae3f6ecef..c24d4752d0 100644 > --- a/xen/arch/arm/include/asm/gic_v3_its.h > +++ b/xen/arch/arm/include/asm/gic_v3_its.h > @@ -190,8 +190,9 @@ struct pending_irq *gicv3_its_get_event_pending_irq(struct domain *d, > uint32_t eventid); > int gicv3_remove_guest_event(struct domain *d, paddr_t vdoorbell_address, > uint32_t vdevid, uint32_t eventid); > -struct pending_irq *gicv3_assign_guest_event(struct domain *d, paddr_t doorbell, > - uint32_t devid, uint32_t eventid, > +struct pending_irq *gicv3_assign_guest_event(struct domain *d, > + paddr_t vdoorbell_address, > + uint32_t vdevid, uint32_t eventid, > uint32_t virt_lpi); > void gicv3_lpi_update_host_entry(uint32_t host_lpi, int domain_id, > uint32_t virt_lpi); > diff --git a/xen/arch/arm/include/asm/grant_table.h b/xen/arch/arm/include/asm/grant_table.h > index e13dfeefa5..c2b0dbc806 100644 > --- a/xen/arch/arm/include/asm/grant_table.h > +++ b/xen/arch/arm/include/asm/grant_table.h > @@ -36,10 +36,10 @@ static inline bool gnttab_release_host_mappings(const struct domain *d) > return true; > } > > -int create_grant_host_mapping(unsigned long gpaddr, mfn_t mfn, > +int create_grant_host_mapping(unsigned long gpaddr, mfn_t frame, > unsigned int flags, unsigned int cache_flags); > int replace_grant_host_mapping(unsigned long gpaddr, mfn_t mfn, > - unsigned long new_gpaddr, unsigned int flags); > + unsigned long new_addr, unsigned int flags); > > /* > * The region used by Xen on the memory will never be mapped in DOM0 > diff --git a/xen/arch/arm/include/asm/guest_access.h b/xen/arch/arm/include/asm/guest_access.h > index 4421e43611..18c88b70d7 100644 > --- a/xen/arch/arm/include/asm/guest_access.h > +++ b/xen/arch/arm/include/asm/guest_access.h > @@ -12,11 +12,11 @@ unsigned long raw_clear_guest(void *to, unsigned int len); > > /* Copy data to guest physical address, then clean the region. */ > unsigned long copy_to_guest_phys_flush_dcache(struct domain *d, > - paddr_t phys, > + paddr_t gpa, > void *buf, > unsigned int len); > > -int access_guest_memory_by_ipa(struct domain *d, paddr_t ipa, void *buf, > +int access_guest_memory_by_gpa(struct domain *d, paddr_t gpa, void *buf, > uint32_t size, bool is_write); > > #define __raw_copy_to_guest raw_copy_to_guest > diff --git a/xen/arch/arm/include/asm/irq.h b/xen/arch/arm/include/asm/irq.h > index 11bc85d111..105b33b37d 100644 > --- a/xen/arch/arm/include/asm/irq.h > +++ b/xen/arch/arm/include/asm/irq.h > @@ -76,7 +76,7 @@ void init_IRQ(void); > > int route_irq_to_guest(struct domain *d, unsigned int virq, > unsigned int irq, const char *devname); > -int release_guest_irq(struct domain *d, unsigned int irq); > +int release_guest_irq(struct domain *d, unsigned int virq); > > void arch_move_irqs(struct vcpu *v); > > diff --git a/xen/arch/arm/include/asm/regs.h b/xen/arch/arm/include/asm/regs.h > index 0693a68131..ef34b38aa1 100644 > --- a/xen/arch/arm/include/asm/regs.h > +++ b/xen/arch/arm/include/asm/regs.h > @@ -58,7 +58,7 @@ static inline bool guest_mode(const struct cpu_user_regs *r) > } > > register_t get_user_reg(struct cpu_user_regs *regs, int reg); > -void set_user_reg(struct cpu_user_regs *regs, int reg, register_t val); > +void set_user_reg(struct cpu_user_regs *regs, int reg, register_t value); > > #endif > > diff --git a/xen/arch/arm/include/asm/vgic.h b/xen/arch/arm/include/asm/vgic.h > index 328fd46d1b..aa9f49409e 100644 > --- a/xen/arch/arm/include/asm/vgic.h > +++ b/xen/arch/arm/include/asm/vgic.h > @@ -355,8 +355,8 @@ bool vgic_evtchn_irq_pending(struct vcpu *v); > int domain_vgic_register(struct domain *d, int *mmio_count); > int domain_vgic_init(struct domain *d, unsigned int nr_spis); > void domain_vgic_free(struct domain *d); > -int vcpu_vgic_init(struct vcpu *vcpu); > -int vcpu_vgic_free(struct vcpu *vcpu); > +int vcpu_vgic_init(struct vcpu *v); > +int vcpu_vgic_free(struct vcpu *v); > > void vgic_inject_irq(struct domain *d, struct vcpu *v, unsigned int virq, > bool level); > diff --git a/xen/arch/arm/mm.c b/xen/arch/arm/mm.c > index e460249736..2e9860a754 100644 > --- a/xen/arch/arm/mm.c > +++ b/xen/arch/arm/mm.c > @@ -736,10 +736,10 @@ void *__init arch_vmap_virt_end(void) > * This function should only be used to remap device address ranges > * TODO: add a check to verify this assumption > */ > -void *ioremap_attr(paddr_t pa, size_t len, unsigned int attributes) > +void *ioremap_attr(paddr_t start, size_t len, unsigned int attributes) > { > - mfn_t mfn = _mfn(PFN_DOWN(pa)); > - unsigned int offs = pa & (PAGE_SIZE - 1); > + mfn_t mfn = _mfn(PFN_DOWN(start)); > + unsigned int offs = start & (PAGE_SIZE - 1); > unsigned int nr = PFN_UP(offs + len); > void *ptr = __vmap(&mfn, nr, 1, 1, attributes, VMAP_DEFAULT); > > @@ -1579,7 +1579,7 @@ void put_page_type(struct page_info *page) > return; > } > > -int create_grant_host_mapping(unsigned long addr, mfn_t frame, > +int create_grant_host_mapping(unsigned long gpaddr, mfn_t frame, > unsigned int flags, unsigned int cache_flags) > { > int rc; > @@ -1591,7 +1591,7 @@ int create_grant_host_mapping(unsigned long addr, mfn_t frame, > if ( flags & GNTMAP_readonly ) > t = p2m_grant_map_ro; > > - rc = guest_physmap_add_entry(current->domain, gaddr_to_gfn(addr), > + rc = guest_physmap_add_entry(current->domain, gaddr_to_gfn(gpaddr), > frame, 0, t); > > if ( rc ) > diff --git a/xen/arch/arm/tee/optee.c b/xen/arch/arm/tee/optee.c > index 9cb9f16d43..301d205a36 100644 > --- a/xen/arch/arm/tee/optee.c > +++ b/xen/arch/arm/tee/optee.c > @@ -951,7 +951,7 @@ static bool copy_std_request(struct cpu_user_regs *regs, > > map_xen_arg(call); > > - if ( access_guest_memory_by_ipa(current->domain, call->guest_arg_ipa, > + if ( access_guest_memory_by_gpa(current->domain, call->guest_arg_ipa, > call->xen_arg, > OPTEE_MSG_NONCONTIG_PAGE_SIZE, false) ) > { > @@ -1106,7 +1106,7 @@ static int handle_rpc_return(struct optee_domain *ctx, > > shm_rpc->xen_arg = __map_domain_page(shm_rpc->xen_arg_pg); > > - if ( access_guest_memory_by_ipa(current->domain, > + if ( access_guest_memory_by_gpa(current->domain, > gfn_to_gaddr(shm_rpc->gfn), > shm_rpc->xen_arg, > OPTEE_MSG_GET_ARG_SIZE(shm_rpc->xen_arg->num_params), > @@ -1329,7 +1329,7 @@ static bool issue_rpc_cmd_free(struct optee_domain *ctx, > shm_rpc->xen_arg->params[0].u.value.a = call->rpc_buffer_type; > shm_rpc->xen_arg->params[0].u.value.b = cookie; > > - if ( access_guest_memory_by_ipa(current->domain, > + if ( access_guest_memory_by_gpa(current->domain, > gfn_to_gaddr(shm_rpc->gfn), > shm_rpc->xen_arg, > OPTEE_MSG_GET_ARG_SIZE(1), > @@ -1462,7 +1462,7 @@ static void handle_rpc_cmd(struct optee_domain *ctx, struct cpu_user_regs *regs, > shm_rpc->xen_arg = __map_domain_page(shm_rpc->xen_arg_pg); > > /* First, copy only header to read number of arguments */ > - if ( access_guest_memory_by_ipa(current->domain, > + if ( access_guest_memory_by_gpa(current->domain, > gfn_to_gaddr(shm_rpc->gfn), > shm_rpc->xen_arg, > sizeof(struct optee_msg_arg), > @@ -1480,7 +1480,7 @@ static void handle_rpc_cmd(struct optee_domain *ctx, struct cpu_user_regs *regs, > } > > /* Read the whole command structure */ > - if ( access_guest_memory_by_ipa(current->domain, gfn_to_gaddr(shm_rpc->gfn), > + if ( access_guest_memory_by_gpa(current->domain, gfn_to_gaddr(shm_rpc->gfn), > shm_rpc->xen_arg, arg_size, false) ) > { > shm_rpc->xen_arg->ret = TEEC_ERROR_GENERIC; > diff --git a/xen/arch/arm/vgic-v3-its.c b/xen/arch/arm/vgic-v3-its.c > index 299b384250..05429030b5 100644 > --- a/xen/arch/arm/vgic-v3-its.c > +++ b/xen/arch/arm/vgic-v3-its.c > @@ -121,7 +121,7 @@ static int its_set_collection(struct virt_its *its, uint16_t collid, > if ( collid >= its->max_collections ) > return -ENOENT; > > - return access_guest_memory_by_ipa(its->d, > + return access_guest_memory_by_gpa(its->d, > addr + collid * sizeof(coll_table_entry_t), > &vcpu_id, sizeof(vcpu_id), true); > } > @@ -139,7 +139,7 @@ static struct vcpu *get_vcpu_from_collection(struct virt_its *its, > if ( collid >= its->max_collections ) > return NULL; > > - ret = access_guest_memory_by_ipa(its->d, > + ret = access_guest_memory_by_gpa(its->d, > addr + collid * sizeof(coll_table_entry_t), > &vcpu_id, sizeof(coll_table_entry_t), false); > if ( ret ) > @@ -161,7 +161,7 @@ static int its_set_itt_address(struct virt_its *its, uint32_t devid, > if ( devid >= its->max_devices ) > return -ENOENT; > > - return access_guest_memory_by_ipa(its->d, > + return access_guest_memory_by_gpa(its->d, > addr + devid * sizeof(dev_table_entry_t), > &itt_entry, sizeof(itt_entry), true); > } > @@ -179,7 +179,7 @@ static int its_get_itt(struct virt_its *its, uint32_t devid, > if ( devid >= its->max_devices ) > return -EINVAL; > > - return access_guest_memory_by_ipa(its->d, > + return access_guest_memory_by_gpa(its->d, > addr + devid * sizeof(dev_table_entry_t), > itt, sizeof(*itt), false); > } > @@ -226,7 +226,7 @@ static bool read_itte(struct virt_its *its, uint32_t devid, uint32_t evid, > if ( addr == INVALID_PADDR ) > return false; > > - if ( access_guest_memory_by_ipa(its->d, addr, &itte, sizeof(itte), false) ) > + if ( access_guest_memory_by_gpa(its->d, addr, &itte, sizeof(itte), false) ) > return false; > > vcpu = get_vcpu_from_collection(its, itte.collection); > @@ -260,7 +260,7 @@ static bool write_itte(struct virt_its *its, uint32_t devid, > itte.collection = collid; > itte.vlpi = vlpi; > > - if ( access_guest_memory_by_ipa(its->d, addr, &itte, sizeof(itte), true) ) > + if ( access_guest_memory_by_gpa(its->d, addr, &itte, sizeof(itte), true) ) > return false; > > return true; > @@ -405,7 +405,7 @@ static int update_lpi_property(struct domain *d, struct pending_irq *p) > > addr = d->arch.vgic.rdist_propbase & GENMASK(51, 12); > > - ret = access_guest_memory_by_ipa(d, addr + p->irq - LPI_OFFSET, > + ret = access_guest_memory_by_gpa(d, addr + p->irq - LPI_OFFSET, > &property, sizeof(property), false); > if ( ret ) > return ret; > @@ -910,7 +910,7 @@ static int vgic_its_handle_cmds(struct domain *d, struct virt_its *its) > { > int ret; > > - ret = access_guest_memory_by_ipa(d, addr + its->creadr, > + ret = access_guest_memory_by_gpa(d, addr + its->creadr, > command, sizeof(command), false); > if ( ret ) > return ret; > diff --git a/xen/arch/arm/vgic/vgic-init.c b/xen/arch/arm/vgic/vgic-init.c > index ea739d081e..76b85ea823 100644 > --- a/xen/arch/arm/vgic/vgic-init.c > +++ b/xen/arch/arm/vgic/vgic-init.c > @@ -196,16 +196,16 @@ int domain_vgic_init(struct domain *d, unsigned int nr_spis) > * vcpu_vgic_init() - Register VCPU-specific KVM iodevs > * was: kvm_vgic_vcpu_init() > * Xen: adding vgic_vx_enable() call > - * @vcpu: pointer to the VCPU being created and initialized > + * @v: pointer to the VCPU being created and initialized > */ > -int vcpu_vgic_init(struct vcpu *vcpu) > +int vcpu_vgic_init(struct vcpu *v) > { > int ret = 0; > > - vgic_vcpu_early_init(vcpu); > + vgic_vcpu_early_init(v); > > if ( gic_hw_version() == GIC_V2 ) > - vgic_v2_enable(vcpu); > + vgic_v2_enable(v); > else > ret = -ENXIO; > > @@ -239,9 +239,9 @@ void domain_vgic_free(struct domain *d) > dist->nr_spis = 0; > } > > -int vcpu_vgic_free(struct vcpu *vcpu) > +int vcpu_vgic_free(struct vcpu *v) > { > - struct vgic_cpu *vgic_cpu = &vcpu->arch.vgic; > + struct vgic_cpu *vgic_cpu = &v->arch.vgic; > > INIT_LIST_HEAD(&vgic_cpu->ap_list_head); > -- Julien Grall From xen-devel-bounces@lists.xenproject.org Fri Jun 23 07:34:17 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 23 Jun 2023 07:34:17 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554274.865376 (Exim 4.92) (envelope-from ) id 1qCbJ1-0007Qp-CR; Fri, 23 Jun 2023 07:34:07 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554274.865376; Fri, 23 Jun 2023 07:34:07 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCbJ1-0007Qi-93; Fri, 23 Jun 2023 07:34:07 +0000 Received: by outflank-mailman (input) for mailman id 554274; Fri, 23 Jun 2023 07:34:06 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCbJ0-0007Qa-07 for xen-devel@lists.xenproject.org; Fri, 23 Jun 2023 07:34:06 +0000 Received: from EUR02-DB5-obe.outbound.protection.outlook.com (mail-db5eur02on20604.outbound.protection.outlook.com [2a01:111:f400:fe12::604]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 53b96d8e-1198-11ee-8611-37d641c3527e; Fri, 23 Jun 2023 09:34:03 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by VE1PR04MB7392.eurprd04.prod.outlook.com (2603:10a6:800:1b2::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.26; Fri, 23 Jun 2023 07:33:58 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6521.024; Fri, 23 Jun 2023 07:33:58 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 53b96d8e-1198-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=kE/29+yFE6JygY6uflYOqKYbTyOjJ/y8O4lO//tzvEmD1D0xFan4mCh1vHGvjn5HYOunWDV4ixPOQg+PZUvhArtqyCUt7WriPNGXixShCJhJGdv3gh3B+Wj+VxtjlBf3XoostUBOs57u6t9EwU52tOMuDtrIfG+DPHVJomOyCQq/12kRY0CXQevX2AwCrGgIyTiEQ95cUb8cc8E7LK1wbdgov04W4d+pMRnV29WhDZAYUUCO/FO+fV4naz5LTeSB7qq6AYE6myg2fDXfpOb56DRlvo7mmadVY+w1w/T4Tt84BAZpJCg05HjAYIBMeyMfmFslVTljyRlJHvf4Vo3WWQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=o4Xd0UQMgpKt5+fDXNhj6kI5ul0pMYtXMtbQXzu3rL8=; b=Q5S06AFbw0DTff1skVu/4VD+YZXxhUFJP+8KU8x20E5g6KyARV44+7z2jqXJjffYXAsh/eaK2K8f4uWtEUZSN/HExGloB9ToWox1+CU42cRduLNgdphrcjQijwVHETHDC7/6I6m6EF73MXR0JQK4EHLTl/tFSFH96F2mrXp/c/bA1rYooXtW3D8sWqhaErVARES3xFgg5Ho5EBEr3Xg3OBbARkVKJUkf6GQtNgEEJ7e8fSKvRTmI34zcPUwuyIyUhnb9j+xXZSHA741lMrs4qLRULDKlyVrJca1sUpy/MmbpQd5xpdRNlNLWPhaA405JClztmkYPAOvfcm7lhjhkDQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=o4Xd0UQMgpKt5+fDXNhj6kI5ul0pMYtXMtbQXzu3rL8=; b=eIDrlV4H574dDddZoJIXhK6vPDWmr8pxjjA8bWeER6k3s2jxgROIPoQUmUedeN884XJLFWe1m/a4QHfglY4A5wr9FuIXJIC6cEd2DODVF6cSdtoMAjyNLTnIwFDg4jEMkMSBeYr5WCrRzcLkyRUIXXGYqsV8fD0B07cHnY+DLRWvgXPzZSV+TKnIyc2sChjw9fndH95M12elJR5IBQXj015VmnY9lbhQcm/dgmNS2luvBtVH+AB/JwvFBvyJjg6szNj+tWlH1stO0mCZOZKO0WgfgHtXV5ju22uHuB8COVqNtxzgzplCFgKnaDSwW0M19OTEO2o/0mfTwRynp0i4ZA== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: Date: Fri, 23 Jun 2023 09:33:56 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v4 3/4] x86: Read MSR_ARCH_CAPS immediately after early_microcode_init() Content-Language: en-US To: Alejandro Vallejo Cc: Andrew Cooper , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , Xen-devel References: <20230622174219.8871-1-alejandro.vallejo@cloud.com> <20230622174219.8871-4-alejandro.vallejo@cloud.com> From: Jan Beulich In-Reply-To: <20230622174219.8871-4-alejandro.vallejo@cloud.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: AM9P250CA0016.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:21c::21) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|VE1PR04MB7392:EE_ X-MS-Office365-Filtering-Correlation-Id: 35842ac7-be9b-4e59-078f-08db73bc350a X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: M8LMUDcRCYMuZhz4+4Ncg/TCWgDmoQrJlPPR0is+Ch+WvAL9/JdLj6v34ZHjh/6zDoxRcn6V+YW6J85WDkdZ4G9vdaPTbQH3cfFQAuKFcNm7a/63LFyvSpsaUUhHJUBrZ8i8Df0Z/Yk64FPh0RMIzmfEmyWjYT5UT48BctdGs7siX+XE4P/Hytmdfcu5a7cznDBNlwwn34G+MH2r4mPCiqhKqbCMYDkeqRDGL2Ntt1r3o1b8krK8cVrCK3SHDW8OmSPNu/g5trTdowZCKwuEhSsW2x4zlfmlBy6FGXmdEayOJZz/1phzH7whZFRvYEAYAV1qZak3G0r+aTzbg9oQZ2WY93jBY8KFHnTsBqPt9ULz6uQKnoqSd9b3ni71pslclpX7yOKeQgKBhluEZbOVvachrm1AYrDC9I5Wi+lpdFuMeUnVJPHV3nXjq0ksxCj00IMut/043XLhnysXEhL+SRuCjboq7oFjh4+vX/8vLM44unOGnzR49O4k3WXfJAkvepRfHf0TBPaIN626QgHcljWrRg/FyMzJ9vEu645Yde1OKB+gO/eBQHZoX+Ap8Jz1MT9TZ2/Xhzu2DhDEtpv76SK7wWga0NcspgBKw2sDiwS7qYejxDl3TbyeOJXTHCQTe7+zip6U/cXh53xHcu9kr1BLdTa5CRJEgfoOn3YNo8o= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(366004)(346002)(396003)(136003)(376002)(39860400002)(451199021)(53546011)(5660300002)(86362001)(31696002)(31686004)(6506007)(2616005)(316002)(54906003)(478600001)(2906002)(26005)(186003)(6512007)(6916009)(4326008)(66946007)(66556008)(66476007)(8676002)(6486002)(8936002)(36756003)(41300700001)(38100700002)(83380400001)(14773001)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?Ly9GR3FocHp3a1d1RUNqNlkyeDYxWHEwejRnQ2JZT0hLanpscXgzenJqbzJS?= =?utf-8?B?OFRNOVl6Z1VhUStoNldxYVpCV1RjWW1EK1docVNVVExXejk1OVdHZjZ3RlR6?= =?utf-8?B?Vyt5eHhYTjhieVdxSlJjTFNJNlNPN0U0b2VDZnNySndCQ0xUMk01dkMvL2dm?= =?utf-8?B?VVFOL05obTI2WnI4TkJOOHB1MlRoUTJ2R2pzODlPRzJGRzJRYzV0cWhIUFJs?= =?utf-8?B?NExHWTZmVU5Wb1hpaDlUMWlzcTh4d3NyVVVob1lnVmlhL3BnUi9CWEcyMnRs?= =?utf-8?B?OWtaODZQRzQ2WTN5MExJdE1lNktHdXNSNXYxZTJxbG1weVcxMU03MGFqaVZW?= =?utf-8?B?Sy8ybkE5VmF0QWJkSGptRGdWUXhwUlgyU1dpVU1KQS9TNVdyTDFEVVVuQU0x?= =?utf-8?B?UTNMMlVmUnBnUUREVXdkZXBlSFNPNVhSUHJNejhleGVCRnpDbFRKU09NT2Jq?= =?utf-8?B?TllkVmpGS3VFbWlyWkN2R2JNVUZ6bHpsV3pmQ3VwekY2N1dvcEV2eDRNMDJN?= =?utf-8?B?VzdjL05rbXVZSzdYeGFacjNNSHZPUzdKdS9qLzdZbGJlVCtSYWpuaDl6cWJs?= =?utf-8?B?UVdBN1ViYk1MbldJSU9BS2tyYnBNSVIyNkxuYzNxVDAwNjArMzU0ZjhYbHda?= =?utf-8?B?UTNwUVM5OXhiWG5VUVB4Z3RuMko4REJmMVZzN3k3UXJydnJmSlNOeVA5aXRm?= =?utf-8?B?S2tIOGZiYU43RDRPNUJGcDg3VkszRWZGWWFqeVFLMldEcFhYd2FmekR0amVj?= =?utf-8?B?QmZHbkVqVGFtQXFOZlpjaFlITnp2VVNyY0RiVi9Bbzg3NGNZZ1N0ZjROOXhm?= =?utf-8?B?UkozSTBxd0tKc2ZJYWpWMDlkMnlhbm1sdUcxRDNua2xaY0NyelVKYnhLRUNn?= =?utf-8?B?NG55Z0JwVGxkOCtxTGM5RU5YalMwMER1b0hjZGNhWVZmYkZydVZDS3BtVjUz?= =?utf-8?B?VzIxTkJOei91UmxtcDZmT3ZKd0wrcDZVZ01ad3pwcmJjK1FaOUdlRzg2S1g3?= =?utf-8?B?MnFWTXduUmlpQThCUFZSTWp6ZFk0KzhWcHlMVTB0cDhaVXoyUEU1ZGFYMU5u?= =?utf-8?B?ZGlmNXY0Tmp5UzBaSlpnNnREbnQ5SDkyWDVjVDN6ZjVPcDZLbk1HSFJianpQ?= =?utf-8?B?cUI3UjZ5dm95VmZ2ditqN0UzVksxK2pmRllxMll5OGMzbGl4bTVhcHA5MGQy?= =?utf-8?B?NFpaVG8wUytPeVFCVmx3N1VDdVZLOG5oM2NqYzN2QzZzRTNqTjA5YnFDbHpQ?= =?utf-8?B?czBhR09kVHRyaXZVZmxNSHROcGE3aDkyU2xSQ2dyUVU5QTZrK1pFOC93QzNp?= =?utf-8?B?UUd0N1ZPeXprQjNuYndEMVJYb3Z1d2k2YmZWWHpsQ2lHR0dXbGRmTm03R25w?= =?utf-8?B?THFVWENGajNHenpzMVZHMjU5QllQRnJTWjRSMWJ0UEdkcWVkS05YWHNUTzNv?= =?utf-8?B?L3lGcHpMU2Q3RFJ6L01xT0FXbFdvTDJXL2dWN0hrRGx5NTVXYXhkVHVnYXlz?= =?utf-8?B?Nk9jVUVYL0lWZ3lMSWJXMFNiYnVURytGS0F6WkYwbG9mNndsTzdQdmhvWUdv?= =?utf-8?B?NnN5dkwrYkVQMkNPMXY3QU54U25KTzZyZ0tUYll2cGJ4ZG9ITkkwTVA4ZUpT?= =?utf-8?B?MEhTUXRkVzBhbU1ueWRYUUViY1RqRTB5aDIxcy83UFFKaVlkanhJWmN4alJz?= =?utf-8?B?RFVsUGJQNGNuWjI0TGdhdEV6aFBKa3dBbnZLenpaTUdKblp0WDV4MGE4UXpL?= =?utf-8?B?TzJIYXlodGVIdnBzMi9xbDhIa0NDb0xTU1pOMDBRTzIrbTFMWThNUDAvZXhR?= =?utf-8?B?aWhkZlQ0cnZDaUpYTkRISlkxUzhsZXRjUC9hUHNoaWxUM3NYNkpnaUNUbm4x?= =?utf-8?B?WkdCaWY0TmpyMWNIdG9vZFNTWU5kV09zeHBsN05vSnBDUWFHY2pXRVEwWHF5?= =?utf-8?B?aFZBaHd0M04vZlpucEZVZnhhWFNwQUlnMEhHTE96b2tCUVBCbU5HcDEvMC91?= =?utf-8?B?eUdoWi9JTEhsM2NhajBSR00xL3pIWEFjWlM2NDZscVJTNVpFUUlPdi9Oa3da?= =?utf-8?B?RXdnNHU5ZzNQUXhoZEcvYlFYaXZDMllaZkdDOGdnSTZMc0tMWDVrVEpRUU4r?= =?utf-8?Q?xeBXJFGEeknMqs2G0SzidwtFh?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 35842ac7-be9b-4e59-078f-08db73bc350a X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Jun 2023 07:33:58.5344 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: HJuoJHkFwuqSYUPPFdD5a2LOFEuZdkIND3QQ9kdEo0CRnDa+EZt/IVUwg70hCmT25/ZRzm/IV9tVD9eaO7q2Gw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: VE1PR04MB7392 On 22.06.2023 19:42, Alejandro Vallejo wrote: > --- a/xen/arch/x86/cpu/microcode/core.c > +++ b/xen/arch/x86/cpu/microcode/core.c > @@ -885,5 +885,18 @@ int __init early_microcode_init(unsigned long *module_map, > if ( ucode_mod.mod_end || ucode_blob.size ) > rc = early_microcode_update_cpu(); > > + /* > + * MSR_ARCH_CAPS may have appeared after the microcode update. > + * Reload relevant fields in boot_cpu_data if so because they are > + * needed in tsx_init(). > + */ > + if ( boot_cpu_data.cpuid_level >= 7 ) > + boot_cpu_data.x86_capability[FEATURESET_7d0] > + = cpuid_count_edx(7, 0); > + if ( cpu_has_arch_caps ) > + rdmsr(MSR_ARCH_CAPABILITIES, > + boot_cpu_data.x86_capability[FEATURESET_m10Al], > + boot_cpu_data.x86_capability[FEATURESET_m10Ah]); > + > return rc; > } Did you consider simply calling early_cpu_init() a 2nd time, and then perhaps from setup.c and only if ucode load didn't report an error? There's a printk() in there which will want avoiding on the 2nd pass, but otherwise this would look more future-proof to me. Jan From xen-devel-bounces@lists.xenproject.org Fri Jun 23 07:40:01 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 23 Jun 2023 07:40:01 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554279.865386 (Exim 4.92) (envelope-from ) id 1qCbOQ-00084L-VX; Fri, 23 Jun 2023 07:39:42 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554279.865386; Fri, 23 Jun 2023 07:39:42 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCbOQ-00084E-SK; Fri, 23 Jun 2023 07:39:42 +0000 Received: by outflank-mailman (input) for mailman id 554279; Fri, 23 Jun 2023 07:39:41 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCbOP-000848-DD for xen-devel@lists.xenproject.org; Fri, 23 Jun 2023 07:39:41 +0000 Received: from EUR03-DBA-obe.outbound.protection.outlook.com (mail-dbaeur03on20619.outbound.protection.outlook.com [2a01:111:f400:fe1a::619]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 1bcf66a0-1199-11ee-b237-6b7b168915f2; Fri, 23 Jun 2023 09:39:39 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by AS8PR04MB8465.eurprd04.prod.outlook.com (2603:10a6:20b:348::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.26; Fri, 23 Jun 2023 07:39:37 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6521.024; Fri, 23 Jun 2023 07:39:37 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 1bcf66a0-1199-11ee-b237-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=C8ht4qmRMBkdEVxpPg2ZOlSZrGPnkgZmcHtfwm6GNxcL7GToDt5hH+iNSPRTD1HFa7biJMxOs3OzP/W/VwNXLlTnuLu6AoEhtMs3H/3nPQZG8PMXV1628/Icj3L1dKARrilrbXCZ2/bQVfN47/wPJlDhe94MgE7LRl0lMXUJJ5soZ5NWVtv9voQFEpCWqOUbUHAq2T+T4UrdCfZ0l+j5nbLi/yHDEJpCK7NTF9q7cyqggJBZ4w2pS2IkKAP9RXVjM9WgGP9uep505H3YRsyNbPhPB9rbNffMCsvaUIsVGVkeJCvPcK19Wnzp52YeU8mDWlnj0XVlQ5MpC7r5ZxLrvw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=Qhl3HFWr+gEHZXyBcIOFJ0ylgt9glriovY4XH+zjdt0=; b=Xs8tPR8a+UitaCDr7Hj54BeQrYZHFmrJF+F2ffsSxTwpfv37FiLNzjKBgPI2n89UpeJNz30xJM3EIFsyv13MclJORxFReaBKq9jR3tUAz9MFJiDTWHhMsn6pMKOD6oPBxEYnefEnTt61VmcR8/jYUY9H85e0Qc+tZb1GTKmmAFOew3t07pmhjI0ZjqnbVJgPy8zaDCbdsgaX+daAis39yuB0ywKZ5W71knLMJkFay2k3WTgSEHy/SV7mslmTW4MAEcrpvkeRpqtQ9Ez4misnogudn1rzxuCKw9ZxSlc5cqch3nFsQHuLxHqsRFq1ofwtgGSodqJxtVoHuXLG+4X6iw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Qhl3HFWr+gEHZXyBcIOFJ0ylgt9glriovY4XH+zjdt0=; b=Tx8LYvqW0OrH+ZAnKebk3ks9x4QHtg/DASYycvY/wVWn+sF3T12uA7aA8Ig6sSiE1//l0XIt9nL+B7Q1gPRYo3bZ8lOEKY4OI5b4EXyvkgtvic07AKHODKyJTQN6/thbVEUoKbFXgC6fV48YnPZxIkxB+jayfhy4Kv8NtSg2J3G4Xq0ISr9HAqXhM9MlwXR26sQeM4qgH7XzxAbdzKJpAclOcZqit/BIALbJ+daGmKvgI7fwk4xK1xD7ujsG6+j5kCY4aRXQtso+pw68ObecVQj4AeWvVRU7cfXWuX6XgwfO/u3HZx3ix4kSV7SphIYwp3BWh6nlywT3nBJDOyRQFw== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <24c54a17-b85a-bab5-4adb-f9dd589ad221@suse.com> Date: Fri, 23 Jun 2023 09:39:35 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v4 4/4] x86/microcode: Disable microcode update handler if DIS_MCU_UPDATE is set Content-Language: en-US To: Alejandro Vallejo Cc: Andrew Cooper , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , Xen-devel References: <20230622174219.8871-1-alejandro.vallejo@cloud.com> <20230622174219.8871-5-alejandro.vallejo@cloud.com> From: Jan Beulich In-Reply-To: <20230622174219.8871-5-alejandro.vallejo@cloud.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR0P281CA0139.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:96::14) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|AS8PR04MB8465:EE_ X-MS-Office365-Filtering-Correlation-Id: c2646b99-e49a-474b-4b7f-08db73bcfef2 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: NCG6d6BipmhRoixY9ss7wVQMwoQkGYd3rhXNb6W1H8gJTfVhypTPiIrnNIIad3/RI12syEOf3MkShqZcdDdBREexYpu8r1T1q0U0aym/COQfwfNyN+NtSPYeO/UarPi7obsLv2daLpB398ITFkiHVIGN9TE96F+hLJ+0MT+Q39Qj0pigpDE/5N+PW9ds4ZhTv95Kc8ASF30NVAIVEeuKELm0XHfDaHzsuwPCcfpsoIN1sBBtsXc/HShwlFmhXVoOIH2us7UuCdS0dJ0tvl0DMXLz1uMKpas564y/XIZ5tG5mOHoqKzB1XOSJbDMequNWLb3guiWdbYaZ37hp5n0nM1JMFObgzRLMp0wDRFLq+WgODnFFxTilQ3erGLUA5Oz4thUXCN7felkJ7scyxZ8cy5Vfpd3IuBvnp2526+zrzIrNXtbJTKG2cRq2pDwWrIF+kmvP1hTkVieTC8BHG5b07AVuP/WWJtukVeMQFOSndvEQejXqcslQnSo59SpvX4i3UYcf5QoSMC5enP7/g6gjKDSAkLs8Yj3waEaxyyanTZ5Z+wZSUTPxiCc8lNwlzZdUPQUd5owdZG6HONLJyGCxq2z8BbZki6WhjZJFiJJas4fn+4kA+ozdSP53Mbj5ltlbdglN8lMzf58lMUWoHiD7kQ== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(376002)(346002)(366004)(136003)(396003)(39860400002)(451199021)(478600001)(4326008)(54906003)(53546011)(6506007)(186003)(26005)(66946007)(6512007)(15650500001)(2906002)(6486002)(8676002)(8936002)(41300700001)(6916009)(316002)(66556008)(66476007)(5660300002)(38100700002)(31696002)(36756003)(2616005)(83380400001)(86362001)(31686004)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?c04zWmdvSFp1ZW05c3UvNURpcjNKbVVCQVg2dWtkUkRhRlBZZkY3M3M0b1Ra?= =?utf-8?B?L1dycmZmVW5ERlluRWNFeFVsMVFXMEZGREZUL1BpNTJRSWIra002SnNwSy9p?= =?utf-8?B?NU91ek9KMU9JM0ZzSm0zOGZqUjc5U0JIdlBTWmg2Q3dWbkFTeVBpZHplNnVi?= =?utf-8?B?c2tnU3liYmdJeTI3SnpZTjlEdXBqVGkxSHErczR5WTlXYWF5YlR1OFkwMmpG?= =?utf-8?B?WTloVGo1blhmMkVaNWw1RzYzTy9xdGJ4R1FkTnRxR0dsSHNzTSt6RG04MFlO?= =?utf-8?B?K3VVdFlrcjNST2dBTUlxdG1GOFZ6SkdmTmtQaEp0cGF4bm1zWUs3a2UxMkVo?= =?utf-8?B?RVlQYWlLMThnOWhVVVF5eHo5RU80QnJxRUpBSTVhY3pxSUIrakNJTnZqVU1B?= =?utf-8?B?TDFiZG1yRmdWMVNYQ3RmVkF0VFU1Y1A0NC9xTWF4NjdpZzNpTWxzYncrekU2?= =?utf-8?B?ZGVkbHhIdXdPVi9pM2QxMWhKeUJEMEg0QnQvY3lmc1hHekJwOEMrQzRSaFVZ?= =?utf-8?B?ZXZDTDhQRmM3TlhZOGw4U3RIV0dkTE5kMTJjbTFIYVA3WnBwM1FaT0lWL2d4?= =?utf-8?B?SFViVXgzSEV1aUs0M0l3SlF1NmcxNi82ek4vVDc4K29EN1orRXJ3cmhIa0d2?= =?utf-8?B?aS9VelQ1R1VOT3Q1RGlSdzRtemRpZ2JwdTNhTkxpRTN2clJmQ3Z1QzNuU0NQ?= =?utf-8?B?ejVnTjFxemJYL3Q1eU50UW4wa2ZEVDMwVG9jVU1ORFJ1T2VoZVFoaldpWFN3?= =?utf-8?B?S3FWUC82RG93R0dUZlNyODNWMUlBdDVkY0svQU9HMXNFdmlhYTJ0eEJnVTVw?= =?utf-8?B?QW1ycTk1MGhIOGR6S3d1QmhyaWJ2SHMzeFM1dHFyVTN3Vm42ck02R2Y4QUI0?= =?utf-8?B?WW5WZGxGWVR1OWhHZlVHRHlVWTJxdFB4MFpRREl4bTBXVXlha2Z3WDZaalo4?= =?utf-8?B?eUNXME5qZUJkTllQSUJEV0tPQkIrWkpYaGlxbldNTEY4Q3ROSjJ1cXRibmYy?= =?utf-8?B?MS9ydVZCbGZQN2YrbEd5S1pFUGRsU1FSUXVLY1JncGo4MmFOaFNLSDNYVXNM?= =?utf-8?B?T0EydzBvYW9IRVR1Z2R5b3FRRGVwYUFocHdHNXJITmJVNkhQeWNJdFJDRXRa?= =?utf-8?B?Qjd3WFNTa1IrVWFmTEF6ditNd3hneVFXTVNlRzBTTXJ6dE05Q2piU1g4WVNH?= =?utf-8?B?QjZQalNwUThxaHI1aEt0bXA1eTgwYUlFVm9QRG1aSlFsYU8wa0RVZmFOWmxv?= =?utf-8?B?NjBPTVljM1V6cW9zbFowMmw0eHc5UkVCTllBNW9VWVFLZ3VGRVlhYlp5K2ZG?= =?utf-8?B?LzFCRTBmRTZaVUtSQkNVUk8wOUhKdlhrbEdmNWJmZTRvNzVORmw2Q3l0MUVX?= =?utf-8?B?bVRhTVpqK1RKQ3diOVl4d0dhM2U2SVJWV21uYllma0ZOcUQ1MmNWbXBhTlRl?= =?utf-8?B?dGQ2NlpNNTZmaDNhdFhWam9hNTlnMzRHa3RBTmtDRkZqSi9lL1lqejNyS3I2?= =?utf-8?B?RHVqMFJIeXdBaXpoaXNwcVBsOGF4amJlSSt1RzZha2FkdWtwVmZFQmxqV0pN?= =?utf-8?B?RW1wL2dCN3o2M0lrNkQ3RVNpTGxycGk4ZnNNcEJRZExGaGhNWm5TQ0d4S2xM?= =?utf-8?B?dUw4aVEwUnZFSmhmeXZyNEFCc3lvRHY3UWNmdS9PWDVFRUphU3E0Y1F2SXRy?= =?utf-8?B?SkJ6WG83QVc1YkNORTZ1RWZuSlhKVDcvcER4M051ME5HYXJMZS9hZ0dOTU9R?= =?utf-8?B?Z0pOWFpLQnpHYzhKdTZ2ZnFhTHN0UWR3MDBBam9BYlRSVTdURVE3d3Flbmky?= =?utf-8?B?WkcxcVNKSTdWQllSdG4wVjEvUlZ2aVlDR0puTUhMVlhCeGVtcUFWNmRha3hC?= =?utf-8?B?aWpGeng0TXlnaks4MUR6NG4rdE5nWHB5aVZoQVo2MEgvUUhuSjJrUjcyUU1h?= =?utf-8?B?TE5VeGFrL3drS2xYM2lGMWxsVk8zdHIvbk1Nb0F5R3pzSkpWMENYcXV4TmhC?= =?utf-8?B?a0lIMlQ5Z25PanBiTzEyZ05aQitUOTR5WEp2OWdlaCt6Q09rQ3NncjJCc0Ri?= =?utf-8?B?Y0FPWmduMGk4RytpQ0RzT1JHcGpobkNwM2hGVGZ4K0ZKZWQ4aVA2RlB5R3k4?= =?utf-8?Q?72Cy7gmAlg3BAWUvJs/LFBKfh?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: c2646b99-e49a-474b-4b7f-08db73bcfef2 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Jun 2023 07:39:37.3066 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: pTnA70GenQDMKa98/snXV0SYuusQ6GhBgOG6kuGDbw0BRFTd5NxR25U+v7QYu10DCay4DscT0ysSnYLyBLnMxA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB8465 On 22.06.2023 19:42, Alejandro Vallejo wrote: > --- a/xen/arch/x86/cpu/microcode/intel.c > +++ b/xen/arch/x86/cpu/microcode/intel.c > @@ -385,6 +385,19 @@ static struct microcode_patch *cf_check cpu_request_microcode( > return patch; > } > > +bool __init intel_can_load_microcode(void) > +{ > + uint64_t mcu_ctrl; > + > + if ( !cpu_has_mcu_ctrl ) > + return true; > + > + rdmsrl(MSR_MCU_CONTROL, mcu_ctrl); > + > + /* If DIS_MCU_LOAD is set applying microcode updates won't work */ > + return !(mcu_ctrl & MCU_CONTROL_DIS_MCU_LOAD); And we have to honor this, i.e. we shouldn't make an attempt at clearing the bit? Also nit: One too many blank after "return". > --- a/xen/arch/x86/cpu/microcode/private.h > +++ b/xen/arch/x86/cpu/microcode/private.h > @@ -60,6 +60,13 @@ struct microcode_ops { > const struct microcode_patch *new, const struct microcode_patch *old); > }; > > +/** > + * Checks whether we can perform microcode updates on this Intel system > + * > + * @return True iff the microcode update facilities are enabled > + */ > +bool __init intel_can_load_microcode(void); No __init please on declarations; they only matter on definitions. Jan From xen-devel-bounces@lists.xenproject.org Fri Jun 23 07:51:36 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 23 Jun 2023 07:51:36 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554284.865396 (Exim 4.92) (envelope-from ) id 1qCbZp-00020F-0t; Fri, 23 Jun 2023 07:51:29 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554284.865396; Fri, 23 Jun 2023 07:51:28 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCbZo-000208-UF; Fri, 23 Jun 2023 07:51:28 +0000 Received: by outflank-mailman (input) for mailman id 554284; Fri, 23 Jun 2023 07:51:28 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCbZo-000202-3I for xen-devel@lists.xenproject.org; Fri, 23 Jun 2023 07:51:28 +0000 Received: from EUR04-DB3-obe.outbound.protection.outlook.com (mail-db3eur04on0625.outbound.protection.outlook.com [2a01:111:f400:fe0c::625]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id c04b8855-119a-11ee-b237-6b7b168915f2; Fri, 23 Jun 2023 09:51:27 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by AM9PR04MB8289.eurprd04.prod.outlook.com (2603:10a6:20b:3e8::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.26; Fri, 23 Jun 2023 07:51:21 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6521.024; Fri, 23 Jun 2023 07:51:21 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: c04b8855-119a-11ee-b237-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=kkOX1mlBEHmmD8gGzBOrB3BEW/z0PrhvMvu8KnWwiFEfAMGgGpvCR0h+5SUvw5mfCoasOxxlad/f1sqgCqKyHA0HNeTN6di+xLrIGf33uUl1jL7G5rXa8NPG/Yw1XkVVzBe4uzc1Vilejr/5NJTD4/h/J95Kau/3mfU+FBgk/lY8Uj0gUf/QuiYgHAhulK7wDCrnu8f7PZonRxU36FmSDCvPtJXcIqZHTaVHuIK3nQrwlaIDWGceozz3z2B0Goh2tJ/1z00hTkJ/y5A7rhOH5qRveQCcUcy6opq7cceeT6A3RyTjg/v1m01fTnd2sklmZtIizI+DDNZYPQMKYuUuAA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=F+JD3XYDEbQG0NNV9SwSP343kenoSRjX3LSyK6XyEbo=; b=ECUDcE7ijNQGopqXe33oH1VXRlMiedKlG8olo+BasR5atJkBHcqPN5Qn1Fwl9muUyfHl3WGwKjmVBoGYr6wufrWv95gzcJZ/HCxts1Kn4CEdqsG4G639pTih6aMaIMBcmYv6ohg+lybtaVpBSSBOOu3VPhq6XyGAudPW6Q91DTvxr94GcpYKMsaCt+AMB/cHEqrG8NJn+BBEIB6j5Sm6osxBjEd16V7rpM93EvxSziYxRcITVj6vpD/4/DPIf8SuTfNBKg3ejsC80E7gXnQ8Xx3Ewdzq1gJX4tt1a7tGhylGfG9fhLfL5orT7GpgEMrqFM1YMV+AmHQeZXjBaYmD+g== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=F+JD3XYDEbQG0NNV9SwSP343kenoSRjX3LSyK6XyEbo=; b=R65sFjcL0f1r9sYY4cnQhoFefcd0hR6ostFEib75GV4fh0SAWqy/3nFmnWXpk+WK8MBPPFWLfw8uUnxkdhEUQWY0sJWk010lg0K1OsbOec53Su9bDpYxhP1g+/TnOzme2Ct9ZcFnWyMHmCjfhBLRXKge3fe83t78+4otD3VaAe7gRVfTL6aCep3SzV85zgaaEIhJi9GUp6J3YkcBjkqG3/dB6K0h9yABbNsmLMAOxf3I1j3Uqxc1ta2z9Hyjnaswpvu8GmroqhvkGABt8UHE5Rppvoe2MBKOB4n3d92rRIT3Fwf0mZ5LN0WVQfgJDbF0lMQUG4jzVBpm2jMra5XAJA== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <1ef93f73-db2f-32e9-6134-263b7b6ea5ff@suse.com> Date: Fri, 23 Jun 2023 09:51:20 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [XEN PATCH v2 1/5] build: define ARCH and SRCARCH later To: Anthony PERARD Cc: Jason Andryuk , Andrew Cooper , George Dunlap , Julien Grall , Stefano Stabellini , Wei Liu , xen-devel@lists.xenproject.org References: <20230622153005.31604-1-anthony.perard@citrix.com> <20230622153005.31604-2-anthony.perard@citrix.com> Content-Language: en-US From: Jan Beulich In-Reply-To: <20230622153005.31604-2-anthony.perard@citrix.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: AM0PR10CA0047.EURPRD10.PROD.OUTLOOK.COM (2603:10a6:20b:150::27) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|AM9PR04MB8289:EE_ X-MS-Office365-Filtering-Correlation-Id: 9fbf2908-8581-439e-101d-08db73bea2ad X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: dPxTXxFrKQ9jnQERlTx34QMgE+V05BOa2hiTLNuXS/TVr1Bx334LWqMrlsd0YZP1HhrGTHdf5PIQhJ9Qv6QU9+xqMSuX9bdLAccEJUobJTeRJR9g+xzqHc2noIaCSmsoT1DJXVgzD2CciWA+FPZXlpZRsWmb1ZQBkkJ1GzLI/+h0YWxZSsfTetg0SEYOMcNDYSCZyfQmuEc5Wby+NZroRMc2sBThonH09/6K7Bn/68hb4ZlWFIWeZ+Ww8IQZo1NBmZY2pi0xc8NvVmzG0QFcaA7HrhAvOJqnKqU7HgrlIFID6B3Qv2V6tfoDn97nZ3Rz3gh03fkJBn4dUf9EMEnSlkb2fP2Ersiy6+pmZhcDxzi/wq00HF0WlMLY37/IaWfoR1Wj+X3t833/SBVzHl93SvjYpA2YSgYft1pSw9/viNGT57UJ76DdEcEhrFE19k6vby70qwDyPpIEgWOQeMxuT+l5HWgO7NToyWEsTfxahZC4Q+thlgrlqEu+BOJPKAIv8l9NVsJ0iUYvrvKEvO/gbyGM39RjIVZB6kPxZcZQlRgiC2967LzCuP7c883tgjCEn3kSmZPVgL1ACJjDmXm+HElFKtdr9r8u9ha26/eyJlzQQZNX/xNCBDgKBTt/klR9Je971iwqpjkjthfEGs5bpg== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(396003)(136003)(346002)(366004)(376002)(39860400002)(451199021)(478600001)(54906003)(86362001)(31696002)(2616005)(26005)(6512007)(6506007)(186003)(36756003)(53546011)(38100700002)(6486002)(6916009)(4326008)(66946007)(66556008)(66476007)(316002)(8676002)(8936002)(31686004)(5660300002)(41300700001)(2906002)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?QXdoWU1FLzZDMWVyLzI2eWFMTUV5TGZ6THg3WFVpZEoxSmYvRlhIZGVweGFt?= =?utf-8?B?V01jOXFxaEszQWJnRHI1NnhsRE5XOGJlblF3VFBRajlwV0QzYjN6MjlONkJq?= =?utf-8?B?QldGTW0wWnlub3ZwY2FSSFB4aHdGY0ZiQ1Fvb2x1MURTc015RDhRcjVXSjhV?= =?utf-8?B?ckgrVzlVb21KbkV3QVUrMGlOaXdzdjY1ZTVnMm9WdXlCTFhBMEVnN29zeHBt?= =?utf-8?B?T1o3dnRkQUIzUTFsUFZnbVMzekVtUDJyNmJvUm5rNkdRUmxYOTBXQk1JOFBp?= =?utf-8?B?anhreXFnNmJTR214bzJneDg3cHNMNmM5a2R3eXpxZnBiMndjNEx3ZXJpUmFT?= =?utf-8?B?aWRaSnpXUkRQOFV2Yk5vWWRpaXR6cG5pM282RFYvV3I1NU1BdllZdmYySkxh?= =?utf-8?B?Y1QyWEhwTTh2c0QvRE9icjBYVndqajl4M29yQXI2SWp0VGNvbTVzNXh4K1Q0?= =?utf-8?B?VTN4bHhIR21qUWtmSFBHc25ZVGdJVFd5dXovazFDaDcyVm1BZVFsWTQycjNR?= =?utf-8?B?WXdRaUNrNERHaGRSbXNuQ0tRdzQzR0JUS1ZScy9MYnVMOFpob2cwWWNWWVJv?= =?utf-8?B?a3JtR0tJS2xkKzhBc2hDb0VWaFd0RjdYSU9EWXArYzR1aXhESHNZTnkrRHpK?= =?utf-8?B?eWNFOVp2K2prT3RDaXJpOHdHSGtoZXpoSUw4QjAwckNkUkpVRkU0amJ5dUN2?= =?utf-8?B?QllKVCtBeEVQK1NRTFJudHVkaFNvS1hiYmJpUnZuSXVvTUFsdVRjS3lKSU5V?= =?utf-8?B?enkvTUF2b1l3OXA0ZVc5V3ZJcmEyaS9xc25rK1RzclQxY2J2V3EyWWNiR1lq?= =?utf-8?B?TWIybHl5OUNmUUR0N0VhSDRDWm9KRnZwbHVjU280ZlpETWdGTlBpTTJSb1F3?= =?utf-8?B?ZXBBUXFOdFE2ME5sZ3laRW9OZlpZWFhKazhoR05WMlc5TkxvL3U2MVdoaGti?= =?utf-8?B?V1VndS9GOGg0WGZGbFdqRlBSSmtGdDdSM2dSdkNvcDQwM3FjVUFvZnJYSDNv?= =?utf-8?B?U2haMmIwODZMSklVWjZsalV6amt3MUVlWCswOFFBb1FtejJBdFhGdW5nTEVV?= =?utf-8?B?UHAvWEVCNDFvdGRMM3lla2xPdFR5STVnQWlhU3JWYzkrMFdrZGthdDFvclZ1?= =?utf-8?B?SnJONmZOK0dKUEdNNGU4Z0h4UU9jNE13bWI3R201ZG01anZqMW1zYVRvN3po?= =?utf-8?B?aUozMGJvSFhxZmV1KzF1OTdTOTBxbm5iTTNLSmxwK3o5ckpUckd1WVRFRnNS?= =?utf-8?B?a2RNUDYxUHRSSkdEdDY1OHU4bFVGVXNCVlVHNlFDQ1FzaEQxT01rTFI2MWNa?= =?utf-8?B?c0RBbEJDM2N2SzJSMkRVcVQraVFKYUVtY0lOR3prbVN2K0JnVWxDRzdmVEhQ?= =?utf-8?B?UmVIQmJmd0FjdHU1eURsenhZMmtqeXRJZXlGZkxlaFRlQVllK1RlMm5FelNC?= =?utf-8?B?a1N4MmdFcXpId1FXZWxualkzYzVtaWVkUElncXAvWTZRelY5b0cvQ1QvajZt?= =?utf-8?B?OWRLNHZxUWc0eU1SL2dqYkhvSWlxN0ZPM2R3ZjhHNmRMYkRtYmlVSzluQ29G?= =?utf-8?B?Qm1kbmJrbXFEZXFUNnVHcEpwb1E0L3hyRHREUU5rMmVZZzVlbjk1c3dsN2NS?= =?utf-8?B?cUtRRkJpcGpEd2ZqcnlWYWlIcmEwbGtqTFJXWm5Nd0Z4ekNyL3psNkZKM1J2?= =?utf-8?B?SnFiYkZtb0pUbTRvL1JGa3FzQUpTc055WjR6ZmY3aDNOdFFOWDJLak5LcThU?= =?utf-8?B?dGQyTUNhVkovQnh5alJBRlJrNTRnem5IR0RmZ3ZrcCt6VnE3TCtrSkxFcEJQ?= =?utf-8?B?RDVDSDY4cUhYSE95Y0YwRmRZR0tHVWlKWXc3VnllSG9iSDN4SVhZQmZnWmVv?= =?utf-8?B?eUwzc1VMS2tTN1dMamtCTlFMWFM0WHFGSjU4dTZ4M0x6dEtaZWVkWjBVSDRo?= =?utf-8?B?QjBVN3A1NGp4ZUdXUXgxSENpSFZJN2RQTHlhOFFFNTZBdEJTZFlqMVVFVVVo?= =?utf-8?B?MW9YZDQ1NE4wRHRsVzF1RUdPZWtLdU1ibFVPaFcxSW5mZW9oWjJwNGJmN2pG?= =?utf-8?B?ZUtqU0tycjRVYm4xb2w4V2p5RjNIOVZQWU9aK2hqYnQ0Uk4zM2JTVDB5MGk5?= =?utf-8?Q?MsPc1P2SesC2h2ZWabarwrbf8?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 9fbf2908-8581-439e-101d-08db73bea2ad X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Jun 2023 07:51:21.4782 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: oOhMa2fKGjx7DJyDdj9LO+TRurRJqPrXBEAkWFw43UxvJvr7J4WqorRVS7W+GheiAJLgI5D+4tiMr4144/iCpg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR04MB8289 On 22.06.2023 17:30, Anthony PERARD wrote: > Defining ARCH and SRCARCH later in xen/Makefile allows to switch to > immediate evaluation variable type. > > ARCH and SRCARCH depends on value defined in Config.mk and aren't used > TARGET_SUBARCH or TARGET_ARCH, and not before it's needed in a > sub-make or a rule. Something looks to be missing in this sentence. I first thought it was merely a "by", but I don't see how TARGET_{,SUB}ARCH matter here. > This will help reduce the number of times the shell rune is been > run. > > With GNU make 4.4, the number of execution of the command present in > these $(shell ) increased greatly. This is probably because as of make > 4.4, exported variable are also added to the environment of $(shell ) > construct. > > Also, `make -d` shows a lot of these: > Makefile:39: not recursively expanding SRCARCH to export to shell function > Makefile:38: not recursively expanding ARCH to export to shell function > > Reported-by: Jason Andryuk > Signed-off-by: Anthony PERARD > Tested-by: Jason Andryuk With some suitable adjustment Reviewed-by: Jan Beulich Jan From xen-devel-bounces@lists.xenproject.org Fri Jun 23 07:57:17 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 23 Jun 2023 07:57:17 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554291.865406 (Exim 4.92) (envelope-from ) id 1qCbfH-0002gb-OA; Fri, 23 Jun 2023 07:57:07 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554291.865406; Fri, 23 Jun 2023 07:57:07 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCbfH-0002gU-L0; Fri, 23 Jun 2023 07:57:07 +0000 Received: by outflank-mailman (input) for mailman id 554291; Fri, 23 Jun 2023 07:57:05 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCbfF-0002gO-NI for xen-devel@lists.xenproject.org; Fri, 23 Jun 2023 07:57:05 +0000 Received: from EUR04-DB3-obe.outbound.protection.outlook.com (mail-db3eur04on0600.outbound.protection.outlook.com [2a01:111:f400:fe0c::600]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 8a5f7de6-119b-11ee-8611-37d641c3527e; Fri, 23 Jun 2023 09:57:03 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by PAXPR04MB9705.eurprd04.prod.outlook.com (2603:10a6:102:24b::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.26; Fri, 23 Jun 2023 07:57:02 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6521.024; Fri, 23 Jun 2023 07:57:01 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 8a5f7de6-119b-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=hnnp3kdzP43IgMeWUXvjTUO+IFyTzO8APSwy289z87h8UdzHo8h6FSTKIoJ44i/CggRFn5CU0wwMnJormfGOmTHINMxljz3jmGAGDetWFhb1pTRIlGCKJDRLw6j2L3Fze+BjGjOh9xOfnBt2mrB27h09xbT5fqmj1w/refDDSlwmrY8TY78OBJ2O14blWgnSWKZtzYhRdRWzO4T8H0Esil44BiqP49fMjuYuTWKiZOo+rdPIF4xHlI5vopPihlQr0jZ82Rol8D273Dl/0pXq6QPU+G/cSrTnv+epf+q1TZyX14Pi9jbGescdDkfpOVkECSnHd7LxaOI1rdsm2gLgMw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=FssJMaV6xRWdGvhGGdzperiqmeOE3DqNHtp9269aV+w=; b=hhpd5kZruCLNsBM3cKdh9/43wgfpWrbho9QlN9EnTe1Y9FxLa19hZpBH4Gn1BVLV4wCPCVvADt42z0tmqAHt8UQ8stmUKykGa99cFqgBcWkeDV4ghk1/RNeRXl18BhOjufHJUlaHVKIZ18vC6djfqtBdV9LDuKtsv9jCJ86n4ooD5kJScXMCkRopIxfAxpYhdTrPvmH8OkAH7erou5qZ1/vdhHP8uLaMl7U+hH6msnZOBMjNrHArvTH0IDlKI+HhHNgiKwty0W90RIn6rA/flCBSlwBtfYLcyo5T7H4/DcEQ8qg8EIF/RaD3l78kGgRQgUmDZqSNRGL6oXC5OQZbyw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=FssJMaV6xRWdGvhGGdzperiqmeOE3DqNHtp9269aV+w=; b=Z+upcZlYAuYr96lUGh5nowZlBj9iFsG0VknI5kx05/1hZ3xHzW4q6M+aS3lQM33Mp895LEyLz4rXHz4WJ2MWGEJui5PQP0c44EkcGiOox8rotH93ORvu8xCq2s2ii9SEw65vucaL+vjrRiiVLuibsXzxmYXbLjVVgNZwSqBpAa2wkyPo86B2OkuYc+UmXIWEn0pQrnEU9gNy0TRFxUo6jwrkoR4SGesweCRMCG3KQwBy7y3acPXZr11iMMZnQPq8MRSuNAfU/rjEB+lJk5cgsAQpSL9yb8sNDtPvew2JNnF6rjwakmhJU1refRQyYjG/t5PCY4A2+gv+GLPzto6T2Q== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <2fa55373-0070-942e-8d12-c41516ac55eb@suse.com> Date: Fri, 23 Jun 2023 09:57:00 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [XEN PATCH v2 2/5] build: remove TARGET_SUBARCH, a duplicate of ARCH Content-Language: en-US To: Anthony PERARD Cc: Andrew Cooper , George Dunlap , Julien Grall , Stefano Stabellini , Wei Liu , xen-devel@lists.xenproject.org References: <20230622153005.31604-1-anthony.perard@citrix.com> <20230622153005.31604-3-anthony.perard@citrix.com> From: Jan Beulich In-Reply-To: <20230622153005.31604-3-anthony.perard@citrix.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: AS4P250CA0030.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:5e3::20) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|PAXPR04MB9705:EE_ X-MS-Office365-Filtering-Correlation-Id: e76dc2a3-b486-4034-0ce7-08db73bf6d73 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: GdIMmFKhTwByWcHd0r7XowR4gUxks/VKNXc2rQgpOrqd8Gpjl3xosQ16Fk55IY6LxFxUdiNhXNtRprBPYiMUHFiPAgMaGOlPtbwwIwHTKmc2POero7D7J8EDCr2ZhACfLaltZ0mW0XVTw3slExtHw+RqwXrWeyjF/ZcpWWfuDhOvpD5lE+6oN33k3JvhuDINoEn50XXrLIpluxOHa18jTxkXAaI1fXui/vzj8MB/aIJRUHut+RhyjZyIzTkzHQMezsnL+tA8Is5W8hBjq9Pn19k4WeSbBR8B9yfntVTC9IYXOW4SRQXauLeyLWtd7HQSg0TOjeFw46b3kYpz4Iyt9qA17RVr6FzaDTs6wZ3+kJgLIQbBFV/9XDm6gKzcTqBK3GorgtSMStL8tXDrGSLDeWGe1CvM4awDtfuqKQuDCTCyFG+jq85bbZuXJDvZI70Xy4gHJeFqphYv1IASj46mjxb3AjCd4outitE66CvkC964MpiLTqx4na3YogaS/7mLCY5PNkE1fbXAA7wZIZJbIDnHLGbrLnKEUIlf4A/2qJYRQ7r6w8sGY/Q97BZx8ezRyjjg1MYyT0oinXf6iWRePmCIKLJRtTH2WasKCxz2D5k79x5TSlMaZBonYdh+7wBK1YYYmDEn9Pvc4Z9/Cn8YOr56Lkq0JpW5/3KdQMezC5qzkw87JXwsDVOYJvAh4tRD X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(39860400002)(136003)(346002)(376002)(366004)(396003)(451199021)(53546011)(26005)(6506007)(6512007)(186003)(2616005)(2906002)(558084003)(8676002)(41300700001)(8936002)(5660300002)(6486002)(478600001)(4326008)(36756003)(66556008)(66946007)(66476007)(6916009)(316002)(86362001)(54906003)(31696002)(38100700002)(31686004)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?QkI0SG5PdjB3NFR0bFJlN1kwdFN4RDJ0YUtEMXBHcUlxMmxRTnYyT0sycmY1?= =?utf-8?B?VjRzNHplOTgxbHp2NTRPaWxIeGg1czBDMkFIbWk1djhTWUYyTzBuRWp1K1Fm?= =?utf-8?B?NTErU1ljdDBmclZDelNHQW1rM1E3aFRZQS9tc3FKamtzKy9VU0tMbCtjUGJ3?= =?utf-8?B?UzkvRkNlU2IzSDNnZzdLWXdkS2cra2tCOEZKNGExUHc4UHBlT3R1Si9EUVow?= =?utf-8?B?ejk0d2JhanhTWS9Ib2NRa2tWUWRTU0o4eWpXSzQ4dm4rcWZjaWdXOThxTldK?= =?utf-8?B?ZERRblRGa0tuWXBnbFAxTzd2VTJyYWZ2WFFYb3FzRHFSUEJVdmZIdHVJSkZ0?= =?utf-8?B?bEFOZjdXMEUralVtNmx5Y3g2ai8yTjdDaW1sRWI1KzJ6OGI3QWNsUjVxZjRC?= =?utf-8?B?WGZjTlljUU9zUzFFTDVIMlNvYzh6eURLdk9kcElUNHlLS1duSFBPNWNIOXBy?= =?utf-8?B?L05RZk13R0pwRFBJd1J0QWE1ZUtSZnpGandiS2NTbnRMVUVEQnlmeUFQbGtF?= =?utf-8?B?YjZteUpRRXdiQ0U5S0Z6SlZGaitnb0NCajhKeVJWRW9Pc0lFRy9sZWQ0dmlB?= =?utf-8?B?SmFRQ0lRVldyRk9aVlJ2OXNaZHJOMmNzVmt2cXFQN3ZIQnF1K0lSNmgvZXBU?= =?utf-8?B?bytUdEg1R3FtMXRWMjVlVTNvOENUNVdpSXJadUc5V3hDRHlWN2t6SkdIMWhl?= =?utf-8?B?Q0hNb0hpSThaSkNNdHVxT1BKR2IyMmhiTnZDMG5BdnBTQWFEZUhENVFiWmZj?= =?utf-8?B?eENxbWpCTnpFcCtoOVdxZ2NWazF0NjJuc3ZIRUt0SG93RW9ZdWVQZFhmb2FT?= =?utf-8?B?WjkrcFBSNjVkK1E1MFE3NkVRNDRRNXJMV0ZPUUplR2FIaTNKb05sTkNlRGpT?= =?utf-8?B?U2JGQlhMYUNJelFaTTQwcEJ4bUI4R3RCM1BHVHYvM0k2aHhHWVNJcXV6d0tl?= =?utf-8?B?L1FONVVlV014dHZLLzAxSmVueldnRmVITU5pVEVPY1dKNGZvMGVXelh6bEJn?= =?utf-8?B?NkNsVEdaeU95VWpsRlpET3pLWHFqZzVGZ2E3SkV6UlExNUtHTEw4Q2s0QXl3?= =?utf-8?B?U1hDckxNNmxGa3J5eDZtY3Z5YmVRdzZacHJBdlJRY1dLaUhuWnYzMEdzZFlk?= =?utf-8?B?WDF1WnlRRklKc2RrR0QvL0gvQWNNY2Q3RU1BRmttZ1BSUWVSQklvaGNnWUVm?= =?utf-8?B?QjZZSGJ5czBJVW1DQmlaZWhhMzhNcUF5aGRBSEUvcVVSL2VUWkZTTzBQK1pD?= =?utf-8?B?d1lPUTJGZTN6NGNKaEZKOVZ2NlpYTDI2WUs0cW44cTUxOGd6SzFSaVdIcmRw?= =?utf-8?B?SWN3V1VFLzJ5eTRlR3AzZ2JNdDNBQmR5YWtxR3JSbFZXK0pTMElBMHAvNjh6?= =?utf-8?B?WUJIMEFlVGJ2U3ZEVERVamRmdXdNYUxpYUZSUDVnTEZpUTNwUnFnMVIwZ1Vm?= =?utf-8?B?d2FSbFRqbWhjbDkzYS9VYnNuSFBmRjcrdjNVMnNLNkxWR2hQZzcyQXIvRE43?= =?utf-8?B?Y2I5QVA5WnpxTHoxMVZ5RjI0ZnFmcm05Y3VXbVdCaFNGUTVpZk1RdjhzU0pF?= =?utf-8?B?Ujkza2hBYnE0VWgxazVpQ1dkVDM5TnRlY243bS9vOXJhMHNKM3AydTlTRGRH?= =?utf-8?B?VFZTaUNqK05QZU4vWllkNExUcVVPamhUQWpZby9LRms1VTQ0UmRqQUFQN3NW?= =?utf-8?B?dEJzUkU0ZjhVdjZvMkpDWFVYY3V1ZGxqM0FSOG54RFgwVUhPLzJFUSs0dlRJ?= =?utf-8?B?S29zeXRpa2J3TityNnFZRUI5KzJtQnRDUHk0KzdoYWVoME01OXpxU3lUS3pU?= =?utf-8?B?Y2ZsamcwUWRmT05KR0tmNHl0Nyt4ZGptRUtVcldJdEhqSGlaQU1Yc2pad0ZB?= =?utf-8?B?SWoyeHRZV25LdDhPcHJnYjR6OW5XMEhYRkpmTTFLQ2Z1RmFSVTc0VUYzbkRO?= =?utf-8?B?UXN0cWExT01KL2dWRlQ3M0w4Z0dFdFZGS2F0a1J5U3hFVW5TRE9wa1JJaDB2?= =?utf-8?B?T2pKWVAzWUQvU1ArYjRUemRLdGVWbTU2alJCWWZ6b3dGS0NLWWo5Rzhmem9X?= =?utf-8?B?dlJZM1BiN1llV2JnbHVqVlY1RnREWTdBa2dYSFBrbUdaYTJhaTZGeTZwS2wv?= =?utf-8?Q?N7CsBZbeBi1gEzAV0frLVj9RI?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: e76dc2a3-b486-4034-0ce7-08db73bf6d73 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Jun 2023 07:57:01.7273 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: W5RWvvLQk2fViRFYM1/Fd1+AvLGkAX78xA7XnYeXNG1/Z4ugh6YhaUIvVzgWUY7kEdK0u8jPkXWt1Fa2xmDrDg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB9705 On 22.06.2023 17:30, Anthony PERARD wrote: > Signed-off-by: Anthony PERARD Reviewed-by: Jan Beulich From xen-devel-bounces@lists.xenproject.org Fri Jun 23 07:59:01 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 23 Jun 2023 07:59:01 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554296.865417 (Exim 4.92) (envelope-from ) id 1qCbh1-0003FB-5H; Fri, 23 Jun 2023 07:58:55 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554296.865417; Fri, 23 Jun 2023 07:58:55 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCbh1-0003F4-0i; Fri, 23 Jun 2023 07:58:55 +0000 Received: by outflank-mailman (input) for mailman id 554296; Fri, 23 Jun 2023 07:58:54 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCbh0-0003Ev-M2 for xen-devel@lists.xenproject.org; Fri, 23 Jun 2023 07:58:54 +0000 Received: from EUR03-DBA-obe.outbound.protection.outlook.com (mail-dbaeur03on2062a.outbound.protection.outlook.com [2a01:111:f400:fe1a::62a]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id cbea4c87-119b-11ee-b237-6b7b168915f2; Fri, 23 Jun 2023 09:58:53 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by PAXPR04MB9705.eurprd04.prod.outlook.com (2603:10a6:102:24b::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.26; Fri, 23 Jun 2023 07:58:51 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6521.024; Fri, 23 Jun 2023 07:58:51 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: cbea4c87-119b-11ee-b237-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=kb9NWU3bj1DtnBPEX0eMdC9II9Y4PvKqeaW4t5nV+GoY2DB//qEmjCb5mWtwEBdTwDCQnVyFhJUDcrQxrYJgxzurMFYh/ryF2sYOyBeOI9JCWqpEDkHEnKiVMMJ2BhAY5CFz1n02gyPUvjVo3osbNcg1ki0crp1hKRodFJAoPGvRAfbdTn5sWa0uLec2tv2S3nst5JtvWkclXxfhuPB9kDbaFzprldW1vgT6yY5HKtz6eSutrJLOfLaJziet4JpEZtlLQfPEtLPvlM0W0WyQThfW4sKpYrjUDKp5XYyCr+n/k9yHEvV80Lzsr5Nw+nql7/WeAEMBAr8H6zysy/dd6g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=ps+1Lk27fBMBUe07ohsI7ehCl3BqJQ1pixmvGM3a+x0=; b=cZkwl/deXWEpys+M3Nl3CELNhhcIac3udzr5/Rch1yHB+dY9f0r/6yuP/5hHdN48MFuB7gHFLKsFno5PbXmp+01qbpMckC6a4iOnR8sQA9adGZbQy1gF4l5yJDQKOAh1+MEdaLg5kvV+UODL9SWeFAzvgVuNViDGMPS+ARQTh2rHnrb9iI87E+AelgKv6uC4JMb1VH1rI3MgiEeWjPrNG+HI0DbhuQBF+h+ZKZ3gekYmSTf+PeBXWZoDn4AMBUhQ0kAUkDx/UveiVMUwGHOH1XJslG+Um8gQGZsp2pQBuUu/PHmXL1weaynnw7Bg4w1CYULZr6BrRgaSIdDyB41LOA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=ps+1Lk27fBMBUe07ohsI7ehCl3BqJQ1pixmvGM3a+x0=; b=No+z3BNI7Vds0w4TCTAaI+tHuUN9GMqkdwfUhRKaA2iRGosqH1QVo4WSAIVqaXaFtU0o+dKgcUxxSyWlkQ9mggWBAipr+LbRWMNwRt4x2y+waKJEKRHIP5uoDGBdcMhR5VI28nYOvDmOPgzW+toD3Qs1G3zJxH1hDa+DfSm30zMUU7aa2Tj1TMWJVpcOkLO95b7VhEwnkXxcvzAxa5+acBYaBEx2VTnEr7df3DEbXmAB4obx6G3qHRtk4Afzr/vVkgCo4RrAMEsTWzPOt9DfSuECW6kg6Ly3bp65SxTf3XHA50Aa+WOT6X6jbuFcGZHMsw7I2cmVicpEpLWDggPc1w== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <81763252-8cf2-736d-083d-8526b462e8dc@suse.com> Date: Fri, 23 Jun 2023 09:58:49 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [XEN PATCH v2 3/5] build: remove TARGET_ARCH, a duplicates of SRCARCH Content-Language: en-US To: Anthony PERARD Cc: Andrew Cooper , George Dunlap , Julien Grall , Stefano Stabellini , Wei Liu , Bob Eshleman , Alistair Francis , Connor Davis , xen-devel@lists.xenproject.org References: <20230622153005.31604-1-anthony.perard@citrix.com> <20230622153005.31604-4-anthony.perard@citrix.com> From: Jan Beulich In-Reply-To: <20230622153005.31604-4-anthony.perard@citrix.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: AM0PR02CA0108.eurprd02.prod.outlook.com (2603:10a6:208:154::49) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|PAXPR04MB9705:EE_ X-MS-Office365-Filtering-Correlation-Id: b95cb48a-db17-469a-5cd3-08db73bfae97 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: QWSXF4byB68nJOtiY42JFB+o82Ay+M02Fc6CI+x7aK46MmuBKeZQ8WzC4X5yCvqTyWTls30oWJHGC8He7+7QBgt920Oxw4szLrrdiW77coeHkX2JOJxz0IjEBqNPb9YmC/mG1iC0e9kmAK52W9aWtvSS+Xgi3zFjMFdUxQ7N6NEfx4hX9HDBZv8WX7mT24beWxZfOV6NOiKPhnP3drS8uT7NChMSq6ctLc4qdowGU5IVv4w59p1bAnBkCs3MNIUD/N0LvVKsWCRf7t4Olt1bBxmGzs9O3omP+qRDyGEDyDYaUn+ek7hMcK6WTQC6cWc4h+EWiPilCAe2uHV+WT8axd+X0Rw6XeGQxzfrpfoLhLtfYckDk4MUGmoKiHeseavLpGTBYabNx+Tcvc7zjUbgkyh5CMTqjed6pv5/DbqPwAiIZ6/YYyaIcCsGvMewx65Uy029rzyN0r/YF7NzyBz00vUI9+icYFtk2P33p6+QkPF06Z1Vn+vdWGIpaILgLTRoFATCe3zp/tRdjAr3PlBQF5WZvt3dGUTdENCuOVct+l5Hwr6Fjmbi22dVfD00rfXIictsF8T364gSnaVrGzhqaw05T9l3Xq/GjdElY2YZSAu6aAisicgW3QDClth9BCajUecFEu138JGI+8D9Dp4kQiQno1yBVToYdU95ku0gsQXgjzUWQD1boqd6WTOAZCOu X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(39860400002)(136003)(346002)(376002)(366004)(396003)(451199021)(53546011)(26005)(6506007)(6512007)(186003)(2616005)(7416002)(2906002)(558084003)(8676002)(41300700001)(8936002)(5660300002)(6486002)(478600001)(4326008)(36756003)(66556008)(66946007)(66476007)(6916009)(316002)(86362001)(54906003)(31696002)(38100700002)(31686004)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?a1pwZ0F3SnVXTlpvMkV2LzczRWthaTVQbVlML1lwNXd0eWVTNElnMTd2TWZi?= =?utf-8?B?RXZtVEkxWm1zN2N3aU5abWNvMEd6SjlXd012aERNcnlueDVUQXA4TGFRcnQ3?= =?utf-8?B?TVBOakdaSWNERk83WWozbi9wSXBXNU1yUU1TYm8yQjZvTko2emFwVnYweXdP?= =?utf-8?B?S3VGTUdBdTlNMjZrdTd3YjU5cGVpVm4yZFljNGNZWU1EWjJ2a3NOTldNTitD?= =?utf-8?B?Z1R4Y210eUtabGR0RVdjSUJrZng2WjdxODVUdGliRjRydklIOU11SjJ1bzBK?= =?utf-8?B?OFRwRnc5MG1mM0w0UkwrOHhRYkdHdlZqM1dFSzdaQWVna2NVWkZDcFdvci9N?= =?utf-8?B?STNPNTVmNzY4UldDQ0NOQVZTb2VTOXhNU2xhMElYbzFmSlZPR3ExZzN2aVlC?= =?utf-8?B?Q2Z0TzVxSDc2RVRHSmVnWHJuNDh5NmFqNm1KaTJBdGRJQUxrZVJxZG9keDlP?= =?utf-8?B?bDBuZTFQcXM1T2ZTRkErdlV6U1FFbnlGNG0wRWU1QXpYZTNUb1B0a1pMbnVV?= =?utf-8?B?cllaUGs4em5peWFHNWhYNGxYek1taTI0aWg5RHJZZW40K2Z6YTNCV01BK1ll?= =?utf-8?B?TGVUU2hlZGtnS0t4Tjc1VzNESFczL0crVnpmZVk3alVWSGxkalhWQm1DbkRD?= =?utf-8?B?ZWFYVHV5bWo0SXRmM2s3QnBVaTZBUjQ2akhRa0VveGZNbGk0L2VuSFhoa25Q?= =?utf-8?B?MXZDM1hOOVJ4OG40MTZKRExLclIxdVR3TTRma0F3Q3pFbEdXYmV1WkltdVp4?= =?utf-8?B?Y3hYQnpWREVVM0JzbFVWOFFYYUxZQnBiZWNpakZoYTlKbTBkWEd0Ukx4SlBl?= =?utf-8?B?RUJIU2hOcGFxN0dEUEFwb1EvNU05THJiakpzdStTQjVJaVBRaFFhd05JN3Qx?= =?utf-8?B?OXJCdFJSNmpTbTAxb1hrdU1Rcm1LVTdqNGpKcWVSaTI5c2xaQmFmQktzUWVz?= =?utf-8?B?UXJqNUxKc21oNktkS0g2am14cmZOR0tVeWs0UUIzWFNGMHJLUjBJcTdxK2F3?= =?utf-8?B?QUdzYmJ1M0pHZVp5dmptekIzNER3bE1ZS2Z1MkFzQWV0SDVYZDJuYzQ5ak8z?= =?utf-8?B?WHlQSi9qQXZmb0RRekx4VUNIWDlpYXVxK2x6aTBLM2wrc1MxLzM1MC94NkdZ?= =?utf-8?B?ZzdIaUw1cE9lQmRiMVhYNTIzRmcydUlRVktzM1daNHY5b0FwU2x1b0QydWVy?= =?utf-8?B?bk5FSGRZaGd4aHo0aXhmSnNjak1DbXQwMFVLZVBOaFllbmVEZGFRaXJkREsy?= =?utf-8?B?R09nempPYmpnRVZzRXhlcW1mLzZJZUJ2N1VMVGtiVjA5ajY0QS93c1lzcUZ6?= =?utf-8?B?bWMxTW90bllrOEZRVXZtQkd6SzVCRUttQXprQmtMM2NqYXhUa2owcFpwRFR2?= =?utf-8?B?WmtXT0xJc2dMcExMc2JEWWRLelNhZDA1OTVvaEVZbTYycUcrd2VBeFp3YTc3?= =?utf-8?B?Q2ZiYjlhaloweTlDZ05NaFkxVDVGcTlRNUlVRGkxQWxtenhJenFkT051SnNK?= =?utf-8?B?MlZTZFlCS200Y0gxWUdlT3JmUHVzcWJ0SDNIZGZMQ2M4WS95MktNSGxzVmgv?= =?utf-8?B?QzdBN1c0WVR6aGxNcnlHUm9Xa3NOZkhueFJITzhWN3FvNThaMGY2NG1ZY0NE?= =?utf-8?B?MmZ0WE90OHdUazBRN1ppckNNRTZYOXNvR0JRbTRtWU4xRi9SUmxYOUpJTG05?= =?utf-8?B?aHZRcEhjb3A5ekNnUmNucVBzZ0t6NjBnbDNWZ2g4bDJGcW1GZk5WajM4V2FK?= =?utf-8?B?KzA2OEhQTyt4QXhUTXJTVjhoc0lqSFRZNGc4Z3RSUDR4REU1eVZyYmpoeVhz?= =?utf-8?B?MTRGVENhRDQ5eUVzQTJTcGdEcHU5Z1FNMnZqc2J2dndaUU05ZHFnaVprc3JB?= =?utf-8?B?SUZuaVpjZW1NcEZjMk1XeW5MTy9ydEpDTUx3NEpRVnhvWGVqd244L1JuZDly?= =?utf-8?B?UldkSDh6eTlYZ1RMWjdselJYelNGSWc2b2NXOTZlMGI3dm5yM1IyNHZFbXJz?= =?utf-8?B?ZnhBa2w3eTI4UTJLdlRmalErajV6bXhiTXlHcmloRVZEVEcwek1BQ1BqdHZw?= =?utf-8?B?UUduMXlFWStkWlVIODVEcmZPaGpVWUVsaDRiQjh1ZCsrU3FyUjFTUjBHWkVB?= =?utf-8?Q?WrsAbN9jm50P+pfkZoLRcveda?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: b95cb48a-db17-469a-5cd3-08db73bfae97 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Jun 2023 07:58:50.9895 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 47/lIe7J1AAAWjZ5oatDtcD0qe+5WjWU3ZpOoPLqKLURT5yfD6Lh3OF72wVra/+zIikWYMQDMGiTp6XY7B7JcQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB9705 On 22.06.2023 17:30, Anthony PERARD wrote: > The same command is used to generate the value of both $(TARGET_ARCH) > and $(SRCARCH), as $(ARCH) is an alias for $(XEN_TARGET_ARCH). > > Signed-off-by: Anthony PERARD Reviewed-by: Jan Beulich From xen-devel-bounces@lists.xenproject.org Fri Jun 23 08:07:28 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 23 Jun 2023 08:07:28 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554305.865426 (Exim 4.92) (envelope-from ) id 1qCboz-0005R3-Ay; Fri, 23 Jun 2023 08:07:09 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554305.865426; Fri, 23 Jun 2023 08:07:09 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCboz-0005Qw-7O; Fri, 23 Jun 2023 08:07:09 +0000 Received: by outflank-mailman (input) for mailman id 554305; Fri, 23 Jun 2023 08:07:08 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCboy-0005Qn-6c for xen-devel@lists.xenproject.org; Fri, 23 Jun 2023 08:07:08 +0000 Received: from EUR05-DB8-obe.outbound.protection.outlook.com (mail-db8eur05on20601.outbound.protection.outlook.com [2a01:111:f400:7e1a::601]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id f1c07914-119c-11ee-b237-6b7b168915f2; Fri, 23 Jun 2023 10:07:06 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by PA4PR04MB7822.eurprd04.prod.outlook.com (2603:10a6:102:b8::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.24; Fri, 23 Jun 2023 08:07:04 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6521.024; Fri, 23 Jun 2023 08:07:04 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: f1c07914-119c-11ee-b237-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=AhgVaiF/RoEezvBYgNMU/o8wy5frBJ94LNAPYlygXOw5SKEA70vJJBkfXGyxiP5WakRwwugYCbD+dax3+Any5MxVQOYqU6wYYCd7a+0leRMeTr3Tngl9eANJ719MtDAS+sAIZjYlJFbTY4igE0AkRUfIAMV3Z4qMqvge2z9661FdQRD7ZUSUSY7KRzVAKbRM1pwmygZjey/K7Mt2yiJtoXVHpyH/kyadj0FvNzoTpHJDCLmP7Z2MGAmwmh6gTSPdEmdAkcEwsRueW58cpCeiyhtnm/OMDgi6erLTr4PCV4jw6ozIoVOccQDaixt2jyP0q74pGqvsVR202nNMURXwjQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=K50uk+KgZD6sgl5v5QAF5/v6VfhZfN97VSZaBiXdcdI=; b=QaNWTQmisTRwxOQIAy1M95Gta6X1Ker0bJnTt+OvsS3q7R7knJGDJNRlwBw28q9vJUYDj3s+xhM4HWy9cC8khnGUnbIwwVPZIVbd0xwWr4oexfba6XjwjgEM2M+hr1Q4iF7x8yggt0sJjseWZjUcV0spBanjqYoRIaT48zZdgrzSi93AaIcyJ8BYdSbI3Z2yYjy0fNkq1YLMDTApM7s+sHkWJTGGw9I+rq/82NO7Z9moioPrdoZVgyC0Ew2xiv4uoKTy8V4B1AhWy4W2M1B7ywPyex/k+XFQjLzRXhIhAJBUUWZP0Zu7FCtnfuT/Cuqvyc9bs5bD+Q8SLrpIX2ZP6g== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=K50uk+KgZD6sgl5v5QAF5/v6VfhZfN97VSZaBiXdcdI=; b=TbX8LJfW4ufzS/NMzP7SGxzHqQO65XXrFajzz4K3PaDgopaCoyd4q3lV5CgyY9dD3Rq9uRgSMcY79UoBegIbCK7E7KQ95EWvZF4xVuV5Z3+lLZM5Sw3Vsx7Pve/ARt/opl18v9Ry0WsYw3Zcfpi5j39XhogyUgQQGNpZ1ZK6BxT0e4ejZq4Rohx03+NgMSBQf3VRDg9d/0y5lQFoYgc9DjbUUSbYUtuOc3C5a2jMRh3GXzYMshM947YbngjT8LhBdEuP3cK+VyD/TwePHsO31TVkiu0CGwCqrPGFlBtTENXNTw6DWXm+1tXJOrIfKwBwX5alAXexEvanFhRJdjYOsA== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: Date: Fri, 23 Jun 2023 10:07:02 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [XEN PATCH v2 4/5] build: evaluate XEN_BUILD_* and XEN_DOMAIN on first use Content-Language: en-US To: Anthony PERARD Cc: Jason Andryuk , Andrew Cooper , George Dunlap , Julien Grall , Stefano Stabellini , Wei Liu , xen-devel@lists.xenproject.org References: <20230622153005.31604-1-anthony.perard@citrix.com> <20230622153005.31604-5-anthony.perard@citrix.com> From: Jan Beulich In-Reply-To: <20230622153005.31604-5-anthony.perard@citrix.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: AM0PR04CA0081.eurprd04.prod.outlook.com (2603:10a6:208:be::22) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|PA4PR04MB7822:EE_ X-MS-Office365-Filtering-Correlation-Id: 6caddd1a-7c0d-4903-5b86-08db73c0d497 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: Kd6CxN22HrVbpFFsqbC6Njo1RGryY053pm75C4LVpqzlqFZtleBAkrmd4VtK96E50B9MGXzd4NLY7/zwnWoEv4vJE31TjydDX03Vkv2B25YQnyaXHJ0ZjKvniAphqGVlGZDmOZMYaE41pdfOIrxwVYCAXeb/3AMNkwo0tJrGvL9nkuzSf/Rg+7Hj1g9cqFB+T0XWJsBw0eli4x+Y4OvwXWyH932+z3o58/UXEeNyIZ6LGdVgTbYBBb5enepQfU8Vdd03BupRs+jFiQZuHYmVhwz1XACkv5msQDYq0kGC/j7ftrdxSfa5eTnNTgavSfElVTOAJ70cTPeNFDnEBQPlnsdkCd1uHdux4dnWk5Lx0YOrM2gour7pvfkwshdWONfYWCKnTn0t5V0SawN3OztErud5jt8VOlGqkHWmr0Rnpwj3VT/LzdsE1m8LVp803Wh/iPg/DFfg0f80bABSYQBFT+QRBunh+Vo2g7gkcqRR/rv+W/EeQCKQvVDI8+DWHhsvkO0R02uOb5C7lUIaHyB6DO4dhbfrnH9lsnZOJ29UQ6OGu8pbGMEOJVzNrLqy5DBYCL9rjFyqih2iq0I9ogSMCoHlzi/4joeG8Kgh8mrql7XZ2ZrjyClq2Ca2h/DvN6uuTdFXyi129F2T1fO+DS/FMA== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(396003)(376002)(136003)(39860400002)(346002)(366004)(451199021)(54906003)(66556008)(5660300002)(8936002)(478600001)(8676002)(316002)(38100700002)(4326008)(6916009)(66946007)(66476007)(36756003)(6486002)(2906002)(41300700001)(186003)(2616005)(26005)(6506007)(31696002)(6512007)(53546011)(31686004)(86362001)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?TlBKa0wxaUFLUDVVQloyNHZ0QlVDcDlWSnhpSnBKbHVQNmpNdzBVbmN1TmFS?= =?utf-8?B?a2l0ckRTQjQvU2JvNnNlNFpsRG9GZS9IZ3R0amh6eFgzOXNMa1VMNWhTZVJ4?= =?utf-8?B?T24wVlJadjJMZUZTaUsvdUpqeXBnUDM4TExDQ2ZUUG9rOWJOYVRuM1YxVXlz?= =?utf-8?B?ZkppTE1tcGxIM0F6Mmt6Q2U4UnpVRXd4UGhhWFZYaUcyOFpKeGQxTWMxcE5z?= =?utf-8?B?RXRFZ3FnSkU3bXkxeE1GejdWUjRpZnM2Z3NOMysrRzNxUWZ2dUFVRVlQNzM2?= =?utf-8?B?Uk9yMUFiZDBwMXNDUENHbk4ySFUzamdJWFFGQSttNGwwVUwvY1oxNXZ1VEh5?= =?utf-8?B?b0hkM3lPMGZ5NWNiVTFXRTJ3WSszd2M4d2pCVEJjZWNLc3NvbUxpcjB2aFNK?= =?utf-8?B?UEUvR1dQS3hFdXNZd2JTbnVTaW1yWnJPY2hqSWlzVCtjdGxsaDVJL1FvTUtZ?= =?utf-8?B?c1hLVy8rbnl2Z3k3b3NLRzNlLzhDUGRYVy9RRGZPOUlCUzRBbjJBQ3V4SkU5?= =?utf-8?B?ckJVRWZ5OWM3QjNUT2JEMmFwV09CWHFLVUwvbktUc292dGhNa09FOWFyQkxV?= =?utf-8?B?cXJzWUxMRHFNb0d4M0lGbnNIOVNnOVV4QlRkeEVxa0s3Qnlia2ZnYklaVXhV?= =?utf-8?B?STV1dWNPZm1MMW9mYTF6NU5DVDlQeENjYy91SkJtWkdDOVdZK1FmNUl1NnZ2?= =?utf-8?B?MjVLUTQ3YVU0WHZBZGtpb0NaRk5sYk9XQUwvaDU2SloydzAwR2JxQzZDL1g0?= =?utf-8?B?c1VIMDZXMlhnMEVOV1BDNkZZZXN2dE9TcmIyL2RJMG1wcUh4bUJGWjBmSjY3?= =?utf-8?B?Z2xhb1pVQlRtS2VORU42VGgwRzJkVDg1MitzdXVwTDBNc1RkcVJNNHdIN2I5?= =?utf-8?B?T2c4dDREcTdHeDFqRTJWc3RMK3haSE9mQWMxZkEwSmFabnV5NTl3N2xHSkRJ?= =?utf-8?B?L056SmsxV3I5WmNNMzgxbmRuejVWbzNpbHRoZEdqN1l3WXozM0kxYVhMeTEy?= =?utf-8?B?Q2ZuRkZSSyt2NC9ybUIzaStDNElGUmpBV1FhYlB3UW9sa2xCLzFWdkU2dVZG?= =?utf-8?B?aXQ0bElFRS9lRUJrUno2U0VKWUIyNXdnV2JUVW1kenV1MWVQWjFuMnAwWVkz?= =?utf-8?B?RHMzRi9DZ1Y1S2xmciszOWg1RlFTemFtTVlwQU5KZDBjTm83OUE3bk1leUJz?= =?utf-8?B?Y2x5bUs0VjZ1SmFVQWoyODNZODEwUVdlaDlYaGpva2NCeUVBT1pGSXFNTnBJ?= =?utf-8?B?U1BCT0RwY2s0ZS9CeUZubTRyMFJHN29WT090UE0wRDJLcXVGSU40QkxLcU5q?= =?utf-8?B?SG5xcU5ZUExWVlFUY204MEhRZDZMNks3ZVdJL00rNmZwOU9kU0tvZFJSczA5?= =?utf-8?B?aEtCL0ZNOUJVN2lGRHRYNTIzNFpLZnJGSmYvOFgyd1JROS8xdUk1MExiNkJi?= =?utf-8?B?b3JkZk9aOTFtb211N1Jkc0NrQ2t3OFRiSXJHcFFYVVdiWmZMVjdXR1JodHFs?= =?utf-8?B?REZ2SnhJQ2w4VkRSeFp1bDJZY2t2ZSsxVW9vaDIzeERjQ2hDaTNEWHV3b005?= =?utf-8?B?Y24xVWhuRG04UDU3Rmo2emN1UTVOZnRsVHVrREQ2eFpZZVZ6YW5LYzcwRnh3?= =?utf-8?B?RDV1VnFhOHMydlJlNWF6cERzdGgyTnUwd3pNWXU4Rkl0dU9tYld6cWVqdHhm?= =?utf-8?B?Q3ZEdkorcElnQkdoa2FSN1c4cWhjeWxaMTRQZFdPMmF5czhnRWRLSU9PQmdp?= =?utf-8?B?OTFYeVorZWNxY3N1MUxpMHBkTVlXaTlMVTNlSDdEbTJyd0NHb0k1WWtFNVhi?= =?utf-8?B?c2FtMU9RTmZkd0FMVmpSQ2k5QXZRUENOTkYxeGpsUGNPTzZraEtaNFh1NlR0?= =?utf-8?B?QkJxd1h1UnBkc1RXWk5Yb1BKWmR2N0JibStlZWRMYkU1c0xXWEg3dnI5Z2xh?= =?utf-8?B?aFQxSnBuMWRKdE5LYzVoTU5ZOGYzakZCK1dNcThNdkh4eXJxSHZETmdqMVNo?= =?utf-8?B?a2FyL1NyVy92aEFFN2J3R2VkeTFsa25kQVg5SmNrVGE2cG1ia1Q0QTVTNUZh?= =?utf-8?B?d2dhOWNTanFLMlgvRzN2SHFJQVM1S05DYTlWd2RjUXVFS0NVbEFMTCtUUFF0?= =?utf-8?Q?+bP1oMlaahlw1J7mG9t47bXU4?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 6caddd1a-7c0d-4903-5b86-08db73c0d497 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Jun 2023 08:07:04.2013 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: PgzR7NgeHwAzUdXzqWSGZn05aQH2O0ZoAGfu28BRS0kb2eYJbXM7tTvWZ9HEJFNf3kT+/+Ua5NpTnPjC58QNCg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR04MB7822 On 22.06.2023 17:30, Anthony PERARD wrote: > --- a/xen/Makefile > +++ b/xen/Makefile > @@ -11,10 +11,10 @@ export XEN_FULLVERSION = $(XEN_VERSION).$(XEN_SUBVERSION)$(XEN_EXTRAVERSION) > -include xen-version > > export XEN_WHOAMI ?= $(USER) > -export XEN_DOMAIN ?= $(shell ([ -x /bin/dnsdomainname ] && /bin/dnsdomainname) || ([ -x /bin/domainname ] && /bin/domainname || echo [unknown])) > -export XEN_BUILD_DATE ?= $(shell LC_ALL=C date) > -export XEN_BUILD_TIME ?= $(shell LC_ALL=C date +%T) > -export XEN_BUILD_HOST ?= $(shell hostname) > +export XEN_DOMAIN ?= $(eval XEN_DOMAIN := $(shell ([ -x /bin/dnsdomainname ] && /bin/dnsdomainname) || ([ -x /bin/domainname ] && /bin/domainname || echo [unknown])))$(XEN_DOMAIN) > +export XEN_BUILD_DATE ?= $(eval XEN_BUILD_DATE := $(shell LC_ALL=C date))$(XEN_BUILD_DATE) > +export XEN_BUILD_TIME ?= $(eval XEN_BUILD_TIME := $(shell LC_ALL=C date +%T))$(XEN_BUILD_TIME) > +export XEN_BUILD_HOST ?= $(eval XEN_BUILD_HOST := $(shell hostname))$(XEN_BUILD_HOST) Interesting approach. It looks like it should be independent of make's internal workings, but I still wonder: Is this documented somewhere, so we won't be caught by surprise of it not working anymore because of some change to make's internals? Jan From xen-devel-bounces@lists.xenproject.org Fri Jun 23 08:17:00 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 23 Jun 2023 08:17:00 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554313.865436 (Exim 4.92) (envelope-from ) id 1qCbyM-00076G-Ag; Fri, 23 Jun 2023 08:16:50 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554313.865436; Fri, 23 Jun 2023 08:16:50 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCbyM-000769-7u; Fri, 23 Jun 2023 08:16:50 +0000 Received: by outflank-mailman (input) for mailman id 554313; Fri, 23 Jun 2023 08:16:49 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCbyK-000763-Uw for xen-devel@lists.xenproject.org; Fri, 23 Jun 2023 08:16:48 +0000 Received: from EUR05-DB8-obe.outbound.protection.outlook.com (mail-db8eur05on2061f.outbound.protection.outlook.com [2a01:111:f400:7e1a::61f]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 4c1d170b-119e-11ee-b237-6b7b168915f2; Fri, 23 Jun 2023 10:16:48 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by AM9PR04MB8244.eurprd04.prod.outlook.com (2603:10a6:20b:3e0::24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.23; Fri, 23 Jun 2023 08:16:45 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6521.024; Fri, 23 Jun 2023 08:16:45 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 4c1d170b-119e-11ee-b237-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=YM23IHbgegJ+YBPTNDebdBH965wxo4ew6wkfCwUVF/26VasZ61pmqyb4x6TMcAv7LYN2523at8THGoj7SbtvmdsreD5CVsMG9I829py45NETUTCe4S67np4yKzl8ZWezFuYXo7M50er6wicxh7zWnOOnL1j4l4Aefgm9LRC+IIp0qQF0dVAYwX5URgHF38PKJh8WwBYUT0B3fBMQErkryaS+gAG6C/LHnX/tSvBifLUgXAV7CYajBRcR27oFV8ZRV5P+M93LDx0fJOtqYD7rXSJ2xRPVFoy3W3gbtGoRIYtVJcAp/iyF1X+dSLRySx8YCRTerLGpjj3satHAB4CNJw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=iWkvtyrHe5/Sbquh5vkXjWoZfY1d2Vc+OmaMPHZ/5RA=; b=RjN+R4Yj3SJXXiX0VhIN0NkicMP+G99+OnDuNMQd473Td8bo4PEVc1nuoDNn56hgSDLrXBcKOZnSlitpc5MaTN27tOMkwCqORFuQJSEJx+zRZjNWnS2/DFDxqW/Lnz69/yaIqEqSz8aXGTSnGxkx1eN1msclYzF05Q0Z1g9Wr2JXVxRCaCHY23QmBRGhPXLxW2OtfPFxXBfC3yzcq4OSe9W0BLTcQo/A6mLGVY67f3UgpKUmeAtkO1ZrgqrZfI7wSwaTcVIQg3KEL0qVLAsm6CCSuz8eduVRb5bwF2EdUNgQA2/ifCbBY1AoCiKE0AzODzloeJlNDQXJZ0nmcFBJBw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=iWkvtyrHe5/Sbquh5vkXjWoZfY1d2Vc+OmaMPHZ/5RA=; b=1BquBJilQdaOT3MtwgbOG+OVh4DrHf3j1BYtU4VllbcJ3/CLwto/vQoGthNEe+KygNz8F4W2xbT4NeIVnQePsU9nY82NYpdf1gfEIlQ4Tq+dL7txA+w3Ze6hONIvzjBMe1FIqeI98FcWb8W83zU9SmCrJg4TlQc2iGU0sgIPIJj0+vKF4x0F6ppwu8p4txEflggDE2ZYNV+9ev9jvAX3Ua15e7GPyBCCQUr3MFrDpxqlr4eJ0ijuHP2vlx3CbulR0eM/ub58CG9fk9TS0JfQH8DJ6U+/CydhFby6xGTrvi1tAUGDoMfpXT1IM1e6ktn93S9pnB2LgAaSVn3HwQLMcQ== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: Date: Fri, 23 Jun 2023 10:16:43 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [XEN PATCH v2 5/5] Config.mk: evaluate XEN_COMPILE_ARCH and XEN_OS on first use Content-Language: en-US To: Anthony PERARD Cc: Jason Andryuk , Andrew Cooper , George Dunlap , Julien Grall , Stefano Stabellini , Wei Liu , xen-devel@lists.xenproject.org References: <20230622153005.31604-1-anthony.perard@citrix.com> <20230622153005.31604-6-anthony.perard@citrix.com> From: Jan Beulich In-Reply-To: <20230622153005.31604-6-anthony.perard@citrix.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR2P281CA0059.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:93::13) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|AM9PR04MB8244:EE_ X-MS-Office365-Filtering-Correlation-Id: 8b3726ba-9282-4560-8e6c-08db73c22f0c X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: ME9w4/FvIAC8yN9fFdagP+gz0OhzXHpg9z+Osg7b8i7mH668iDIchrLESB+LW7yvPsVVNkBSQrpD2wluymmrQ81gKXOcVvrpVBM82BITIQqMD0mS5c2nwohC/UROOuJCyUkF1EICqbL7FvIY/sST1sQPGZsZIKxqVhdxGKFx0SOO2yvCha0gLUSrBfWuIEZ9o1Jg1mGCZJDURUT0dc+WKK7HYcMlnVpYhSouxxLWBOkxOLV00E6Frrn8vd1TkeqQ5pVI1Qqpmb9ppaiIex6b3K2xoB1WUaJK1pBHzhdoevdRXXhDNlt1I2g+DCfi3Yw7jQ3mpftJgYo7hDYk3iFpP1yhUhlVrGuVdD9woW38mh3lbps08a3Z7eIeUL1SIhiychWxtHLb427TgOc8cBR6FAoWsbjw6TBgoYZFvaTXig9iUBnUa2Ki5yAwH1uWbyiWACqu/vN9vLgGhISOeO8mc1lCunGYsjQZvYZgTkNRyzlmLsVlIWTVykdPnloWQoiHBBkcIFdYZ1JZl77jnIDCzV3g3wsh1C3VK/9gap4KbAQYU2TPdtSNbBOjJuq0TAjMEGdzPhTN1BqTd4ynwC9YBr3YuMa0yvpZxmyl8C18bwAFgjYy+mYmZgT65DSSIJQfRcMyZBBmCcvojXvaVv1uJg== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(346002)(376002)(366004)(396003)(39860400002)(136003)(451199021)(6506007)(6512007)(6486002)(478600001)(54906003)(186003)(2906002)(26005)(53546011)(2616005)(5660300002)(36756003)(6916009)(4326008)(31696002)(41300700001)(8676002)(316002)(86362001)(8936002)(66556008)(38100700002)(66476007)(66946007)(31686004)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?bGYyODdJSTJFLzc5RCs1RjRRemFXcnVCbDF6bDVaN1lMS09WazVMNThPalhT?= =?utf-8?B?cW9SZ2EwYm9TZzlaZUxCVytzSDZQU0FlbElQaFJCZWdCdWRpSy8rNXFrNDRY?= =?utf-8?B?UFBRNlY0ajl2aGVEMHVRYUI1TEdIWEJTaGREelJLdXhvcFpzMlBpcUZKV1BQ?= =?utf-8?B?czZOU09jU25DRzJwWTBIeHZSQkRROWFHeWdzdWZaVnBJcnNIRG9DWUxNZ0lZ?= =?utf-8?B?N2tmRjBsQTQxWm16eWx5TkJkSGVxbGsvS3VkeFgrMUVTQ3VnZEhjdjRjeTRj?= =?utf-8?B?dWE0d1N3MWo0ZTV5YytYVzhBVHdMNktlMEdINFBNMTJIUE9sMkxRQktjMm14?= =?utf-8?B?Qkoxby9iRmxpUUkyVmVkSitXeU5MdEMrMGFDMFVPUWEzbHBVeHpjbXlzWFlP?= =?utf-8?B?VlNzN0JwN0N5dkJHbHlrSWpEalNZOTVZanRRUFhCTElqSGozQW8rT1NoSmZw?= =?utf-8?B?ek1acUdRd2xUaFdUR3M3MDQ3MkNWRHFSMWdtZUpwUzd6N29TSWJGRHFpMkw3?= =?utf-8?B?bkdqdDlCTlpoY3FYT3NUWXp1dFBWS2M5ai9hZmJhRHZZbEV0NE9EMGNpdmYv?= =?utf-8?B?UVhCVDZnUGtGTWlNcmV4bjg2WldKQjJNdjhLcU54UHIzU0ZvbVE4a0xwTjJX?= =?utf-8?B?YUhEUjVEUmk2U004TlBZK1MzMFUrVVVKMXh6TFdDUGFuNXo3YldXdWY0U2Ux?= =?utf-8?B?am53cEhmdk5tOFBTaExIclZaSnBYOVVxUmR3SzdISHZ6cUhOck5mTDNLZ0xV?= =?utf-8?B?UlZmVXg1UExaV1FxV1p4TUtuZ21VR0NGQWxyZ2JweVhDZWlPd3YxNGtOTzNM?= =?utf-8?B?bUdON1BuUFBzNzFPdlRCSzVTeGpkbm1lV1FiZnlRdWx2RWNJejhYMGF3a1NB?= =?utf-8?B?N2ZrOHU2dnhXMjhoSU5lUEZMU0pPTDBiNW1VSUpCcUd5QXl3R0ZMZForYW8z?= =?utf-8?B?QjJ6MXY4VDFwT28yWTkzZG56bXlOWGxpSjdza24vdURIeTFTaU9JbU50dWRP?= =?utf-8?B?dG1yZlhxK1IvOU1mV0s0QXR4QVEyOWdhREhDYVFJRTB5WUFBakNOVENUVVk0?= =?utf-8?B?QzA4TXgyNHd4eDZ0Q29OdW85cGpSYU1YNmVsVExrTU9jaXpRZ3BCN2pMbXg0?= =?utf-8?B?azRqK2EvN01RcWRxTGVXQWFlZ3N1LzBQM29qMjVxTXRzR2dsbVJnNXJvN0h6?= =?utf-8?B?Q0ZDYUZ4UThsL1IrcHJLQnlKNmV0eE96UEFPZUZ5TkhRbGNXMTFXVHZLWHhU?= =?utf-8?B?dFFiaDE0T1ZOMjRsYjUvcTFhNXVuOTU3dzQrdkMvc3ZVSmpIc0ZWOU1ZN0U4?= =?utf-8?B?MGxkVWFndDRHaUVtTW11Uk5JK1BwcEp3UFlxa2lBNG5tWXYyREkySmR1S3Ay?= =?utf-8?B?QW1qOW43WUJrc29zTFYxU1gwWTVXS2dnODZLcExTWjFDTE5zNUQ5L3cxc2Q5?= =?utf-8?B?Q25YMnQwellBY2dpY1QvZldqVkFsbFI3UGJUZ0IyYzhWc0JFVHlGOU5jazdH?= =?utf-8?B?NHBlK3V6MjdwcThrN0xqUG9MbXV6SWJmUlNVVDUxdmFkVjR5N1VyajdxMUVj?= =?utf-8?B?dy9FRUVXcmN2Ti9mRmczTWUyKzdzbkk5cmdISE5xcVlMd3R3NnNmWHh5OUFL?= =?utf-8?B?U3Z2SkUvWWpidzkzeTg5elpNclRPTTdJeU9odVlKc3c1OXUxZ1VJbTlQcTdR?= =?utf-8?B?YXhLSHFJWDhzY3JFZUsxVHI5SDMxazlqd0VDcjNueWY5djhUai9ETE5IbTdQ?= =?utf-8?B?TnVLM3dSNHdzOGpTdVlHUkFwMXh0Vk0xZnRwN0VwVk9vNXVXcmtIMS9sNFZp?= =?utf-8?B?NGIyVnNsOUJWMDNVMG1vSm5pMjNjR3c3eHJxRG5hNTgyeExFTlBFelNXSVMz?= =?utf-8?B?VlNrcW9HUGJobzY3SHlWbFpOeWRJb1NmRkg0d1JDQ1ptM1lnZk5HRTBNdFhw?= =?utf-8?B?UHlQOG94Z01ZYVJKdUhmVTBRWm9KaE1BYXpkZzNNMzNBUHIzbnpEZDJibG0z?= =?utf-8?B?MUpTNU9CeXY2cTdJbXpLdElPK3FYNzNLVDBMMFdEaWkzcGVyVXEyUkVoNDB4?= =?utf-8?B?Q0c1TUZQWkFOcGU5eWx3NlhDQ25uYzhUNVVHb2hnNGlpMTRVRkRHRDJ3MmxP?= =?utf-8?Q?N/xvuKBJpMqqzjWS88WxW1knj?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 8b3726ba-9282-4560-8e6c-08db73c22f0c X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Jun 2023 08:16:45.5193 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 7ZJ4Qe3m/lzTZ4LNSlEMmChBiOJUy/K+x2izegLZeFpE58VUvMGzBESxo7oRp1mwjAujIuomLgO10OaXx39QNA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR04MB8244 On 22.06.2023 17:30, Anthony PERARD wrote: > --- a/Config.mk > +++ b/Config.mk > @@ -19,13 +19,13 @@ or = $(if $(strip $(1)),$(1),$(if $(strip $(2)),$(2),$(if $(strip $(3)),$( > > -include $(XEN_ROOT)/.config > > -XEN_COMPILE_ARCH ?= $(shell uname -m | sed -e s/i.86/x86_32/ \ > +XEN_COMPILE_ARCH ?= $(eval XEN_COMPILE_ARCH := $(shell uname -m | sed -e s/i.86/x86_32/ \ > -e s/i86pc/x86_32/ -e s/amd64/x86_64/ \ > -e s/armv7.*/arm32/ -e s/armv8.*/arm64/ \ > - -e s/aarch64/arm64/) > + -e s/aarch64/arm64/))$(XEN_COMPILE_ARCH) I'd like to suggest to wrap this differently, e.g. XEN_COMPILE_ARCH ?= $(eval XEN_COMPILE_ARCH := \ $(shell uname -m | \ sed -e s/i.86/x86_32/ \ -e s/i86pc/x86_32/ -e s/amd64/x86_64/ \ -e s/armv7.*/arm32/ -e s/armv8.*/arm64/ \ -e s/aarch64/arm64/) \ )$(XEN_COMPILE_ARCH) > XEN_TARGET_ARCH ?= $(XEN_COMPILE_ARCH) > -XEN_OS ?= $(shell uname -s) > +XEN_OS ?= $(eval XEN_OS := $(shell uname -s))$(XEN_OS) With these further uses of this same construct as in patch 4, is there any chance of abstracting (part of, e.g. at least the rhs of the ?=) the construct into a macro? Jan From xen-devel-bounces@lists.xenproject.org Fri Jun 23 08:43:04 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 23 Jun 2023 08:43:04 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554318.865446 (Exim 4.92) (envelope-from ) id 1qCcNX-00022D-Aw; Fri, 23 Jun 2023 08:42:51 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554318.865446; Fri, 23 Jun 2023 08:42:51 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCcNX-000226-8M; Fri, 23 Jun 2023 08:42:51 +0000 Received: by outflank-mailman (input) for mailman id 554318; Fri, 23 Jun 2023 08:42:50 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCcNW-000220-GT for xen-devel@lists.xenproject.org; Fri, 23 Jun 2023 08:42:50 +0000 Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id ee11c34f-11a1-11ee-b237-6b7b168915f2; Fri, 23 Jun 2023 10:42:48 +0200 (CEST) Received: from [172.20.10.2] (unknown [37.163.128.130]) by support.bugseng.com (Postfix) with ESMTPSA id 6D5044EE0737; Fri, 23 Jun 2023 10:42:46 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: ee11c34f-11a1-11ee-b237-6b7b168915f2 Message-ID: <05593ceb-b04c-efec-05c9-b09d4cd26c11@bugseng.com> Date: Fri, 23 Jun 2023 10:42:29 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [XEN PATCH v2] xen/arm: fix violations of MISRA C:2012 R8.3 on parameter names. Content-Language: en-US To: Julien Grall , xen-devel@lists.xenproject.org Cc: consulting@bugseng.com, Stefano Stabellini , Bertrand Marquis , Volodymyr Babchuk , Michal Orzel , Xenia Ragiadakou , Ayan Kumar Halder References: <11c50030015014ff1a80dca849a4262133b2707a.1687502320.git.federico.serafini@bugseng.com> <9e0decef-0a56-1993-eee2-59e31a41ccdf@xen.org> From: Federico Serafini Organization: BUGSENG srl In-Reply-To: <9e0decef-0a56-1993-eee2-59e31a41ccdf@xen.org> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit On 23/06/23 09:32, Julien Grall wrote: > Hi, > > On 23/06/2023 07:54, Federico Serafini wrote: >> To comply with Rule 8.3 ("All declarations of an object or function >> shall use the same names and type qualifiers") change the parameter >> names in order to have function declarations consistent with the >> corresponding definitions. >> >> Change the function identifier 'access_guest_memory_by_ipa' to >> 'access_guest_memory_by_gpa' in accordance with modifications on its >> formal parameters: 'gpa' is used more frequently than 'ipa' and is >> therefore preferable. > > I already hinted in the previous version, but I guess this wasn't clear > enough. A patch should do one similar thing because it is easier to > review and justify. > > For instance you explain the renaming function renaming but you don't > really say why sometimes you updated the definition but other the > declarations. > > I think this patch should be split in multiple parts: >   1. Patch to rename arch_guest_memory_by_ipa() and update the > parameter name >   2. Patch(s) to rename the parameter name on the definitions (e.g. > vcpu_vgic_init() & co). They could be bundled by file. >   3. Patch to rename the parameter name on the declarations. This is > pretty much your patch v1 but without the changes in 1/2. > > Cheers, > Hello, thank you for your suggestions. Regards -- Federico Serafini, M.Sc. Software Engineer, BUGSENG (http://bugseng.com) From xen-devel-bounces@lists.xenproject.org Fri Jun 23 08:50:32 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 23 Jun 2023 08:50:32 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554325.865456 (Exim 4.92) (envelope-from ) id 1qCcUk-0003Wc-4J; Fri, 23 Jun 2023 08:50:18 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554325.865456; Fri, 23 Jun 2023 08:50:18 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCcUk-0003WV-0m; Fri, 23 Jun 2023 08:50:18 +0000 Received: by outflank-mailman (input) for mailman id 554325; Fri, 23 Jun 2023 08:50:16 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCcUi-0003WI-OX; Fri, 23 Jun 2023 08:50:16 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCcUi-0002xX-HX; Fri, 23 Jun 2023 08:50:16 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCcUi-0008RC-5R; Fri, 23 Jun 2023 08:50:16 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qCcUi-0000PR-4u; Fri, 23 Jun 2023 08:50:16 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=dh2kL/f5wffSePU1ilP95dNPJAK+nmgj0rQNJjE0tqM=; b=KUAnTsbDMi2ib4SrdGV9NCGyZC K74C1aImla44nrPbZsFrKRmb5lg8LxfmDs+k+Nx6dcWS+SoE17Gedf9Wnq06owhSX7ziAS9PMpOjg 28DWMyarxQXtiIu7WmM032Fg0ta3Rbmp84QLs2xpUMiAiHBkLKfXZKUXdXWbTFgQTqTk=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [linux-linus test] 181555: regressions - FAIL X-Osstest-Failures: linux-linus:test-armhf-armhf-xl-credit1:xen-boot:fail:regression linux-linus:test-amd64-amd64-libvirt-qcow2:guest-start/debian.repeat:fail:heisenbug linux-linus:test-amd64-amd64-freebsd11-amd64:guest-start/freebsd.repeat:fail:heisenbug linux-linus:test-armhf-armhf-xl:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-raw:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-credit2:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking linux-linus:test-armhf-armhf-libvirt:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-arndale:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-examine:reboot:fail:nonblocking linux-linus:test-armhf-armhf-xl-rtds:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-qcow2:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-vhd:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-multivcpu:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-qcow2:migrate-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-raw:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: linux=dad9774deaf1cf8e8f7483310dfb2690310193d2 X-Osstest-Versions-That: linux=6c538e1adbfc696ac4747fb10d63e704344f763d From: osstest service owner Date: Fri, 23 Jun 2023 08:50:16 +0000 flight 181555 linux-linus real [real] http://logs.test-lab.xenproject.org/osstest/logs/181555/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: test-armhf-armhf-xl-credit1 8 xen-boot fail REGR. vs. 180278 Tests which are failing intermittently (not blocking): test-amd64-amd64-libvirt-qcow2 19 guest-start/debian.repeat fail in 181548 pass in 181555 test-amd64-amd64-freebsd11-amd64 21 guest-start/freebsd.repeat fail pass in 181548 Tests which did not succeed, but are not blocking: test-armhf-armhf-xl 8 xen-boot fail like 180278 test-armhf-armhf-libvirt-raw 8 xen-boot fail like 180278 test-armhf-armhf-xl-credit2 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 180278 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 180278 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 180278 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 180278 test-armhf-armhf-libvirt 8 xen-boot fail like 180278 test-armhf-armhf-xl-arndale 8 xen-boot fail like 180278 test-armhf-armhf-examine 8 reboot fail like 180278 test-armhf-armhf-xl-rtds 8 xen-boot fail like 180278 test-armhf-armhf-libvirt-qcow2 8 xen-boot fail like 180278 test-armhf-armhf-xl-vhd 8 xen-boot fail like 180278 test-armhf-armhf-xl-multivcpu 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 180278 test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qcow2 14 migrate-support-check fail never pass test-amd64-amd64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass version targeted for testing: linux dad9774deaf1cf8e8f7483310dfb2690310193d2 baseline version: linux 6c538e1adbfc696ac4747fb10d63e704344f763d Last test of basis 180278 2023-04-16 19:41:46 Z 67 days Failing since 180281 2023-04-17 06:24:36 Z 67 days 126 attempts Testing same since 181548 2023-06-22 06:37:02 Z 1 days 2 attempts ------------------------------------------------------------ 2749 people touched revisions under test, not listing them all jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl fail test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-freebsd11-amd64 fail test-amd64-amd64-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale fail test-amd64-amd64-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 fail test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 fail test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine fail test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt fail test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu fail test-amd64-amd64-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-amd64-pygrub pass test-amd64-amd64-libvirt-qcow2 pass test-armhf-armhf-libvirt-qcow2 fail test-amd64-amd64-libvirt-raw pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw fail test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds fail test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-amd64-xl-vhd pass test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd fail ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 350268 lines long.) From xen-devel-bounces@lists.xenproject.org Fri Jun 23 08:51:23 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 23 Jun 2023 08:51:23 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554334.865466 (Exim 4.92) (envelope-from ) id 1qCcVd-00046f-Ix; Fri, 23 Jun 2023 08:51:13 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554334.865466; Fri, 23 Jun 2023 08:51:13 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCcVd-00046Y-Fm; Fri, 23 Jun 2023 08:51:13 +0000 Received: by outflank-mailman (input) for mailman id 554334; Fri, 23 Jun 2023 08:51:12 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCcVb-00046A-T1 for xen-devel@lists.xenproject.org; Fri, 23 Jun 2023 08:51:12 +0000 Received: from esa3.hc3370-68.iphmx.com (esa3.hc3370-68.iphmx.com [216.71.145.155]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 18112d90-11a3-11ee-b237-6b7b168915f2; Fri, 23 Jun 2023 10:51:09 +0200 (CEST) Received: from mail-dm6nam10lp2103.outbound.protection.outlook.com (HELO NAM10-DM6-obe.outbound.protection.outlook.com) ([104.47.58.103]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 23 Jun 2023 04:51:06 -0400 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) by SA2PR03MB5916.namprd03.prod.outlook.com (2603:10b6:806:115::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.26; Fri, 23 Jun 2023 08:51:03 +0000 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::1c83:1877:a68b:8902]) by SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::1c83:1877:a68b:8902%6]) with mapi id 15.20.6521.024; Fri, 23 Jun 2023 08:51:02 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 18112d90-11a3-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1687510269; h=date:from:to:cc:subject:message-id:references: content-transfer-encoding:in-reply-to:mime-version; bh=3e9wKhzwLzipYz1IHixIfwcuyWBi22B0TEIMQ2IgaUM=; b=hOJLZOXku7vRCsyM/fmnGOajMYrydYWxllkVxQkz0DR0PqaAru2hPnz/ 0J04hW/acCipINfCzdhuCoc+3kvogX8wZmCTqubx7xc4x2McvTCCJGzxr VyfzK+wdxFBbAURjNo/rCwovdY5/Nd32CyZ3z24phr9R/Ndhw9H8LJ51V Y=; X-IronPort-RemoteIP: 104.47.58.103 X-IronPort-MID: 113883249 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:jWAh/a4JY2Jg4eJVXumv/QxRtKrGchMFZxGqfqrLsTDasY5as4F+v mFOCmCPPfbeZzOmf4h+bo+18kxQvcTWytc2GVE9/i9kHi5G8cbLO4+Ufxz6V8+wwm8vb2o8t plDNYOQRCwQZiWBzvt4GuG59RGQ7YnRGvynTraCYnsrLeNdYH9JoQp5nOIkiZJfj9G8Agec0 fv/uMSaM1K+s9JOGjt8B5mr9lU35ZwehBtC5gZlPa4R5weH/5UoJMl3yZ+ZfiOQrrZ8RoZWd 86bpJml82XQ+QsaC9/Nut4XpWVTH9Y+lSDX4pZnc/DKbipq/0Te4Y5iXBYoUm9Fii3hojxE4 I4lWapc6+seFvakdOw1C3G0GszlVEFM0OevzXOX6aR/w6BaGpdFLjoH4EweZOUlFuhL7W5m3 +BHNRoVRCy6rO+05qu4G/QzucI7I5y+VG8fkikIITDxK98DGMiGb4CUoNhS0XE3m9xEGuvYa 4wBcz1zYR/cYhpJfFAKFJY5m+TujX76G9FagAvN+exrvC6OnEooiOOF3Nn9I7RmQe1PmUmVv CTe9nnRCRAGLt2PjzGC9xpAg8eWxHirCNlISOzQGvhChEbDm3w1KQUqWkq9uMerr2m+W48cA hlBksYphe1onKCxdfHDWBm/rG+BrwQrcdNaGO0n6ymA0qPRpQ2eAwAsXjNHLdArqsIybTgrz UOS2cPkAyR1t7+YQm7b8a2bxRuVPSUWNmYEaTUzZA0J+cT4oIozgxTMSf5uCKewyNbyHFnYw TqHsSw/jLU7ltMQ2uOw+lWvqy2ojojESEgy/Aq/dmC46gJ0Yqa1aoru7kLUhd5bN5qQRFSFu HkCmuCd4foIAJXLkzaCKM0VFaytz+aINnvbm1EHInU63zGk+nrmcYUO5jh7fR9tKpxdIWSvZ 1LPswRM4pMVJGGtcaJ8f4O2DYIt0LTkEtPmEPvTa7Kif6RMSeNOxwk2DWb44ownuBFEfX0XU XtDTfuRMA== IronPort-HdrOrdr: A9a23:FZ45cqj641Ma6DTxuQxz5xMY/nBQXiwji2hC6mlwRA09TyX5ra 2TdTogtSMc6QxhPk3I/OrrBEDuexzhHPJOj7X5eI3SPjUO21HYS72Kj7GSoAEIcheWnoJgPO VbAs1D4bXLZmSS5vyKhDVQfexA/DGGmprY+ts3zR1WPH9Xg3cL1XYJNu6ZeHcGNDWvHfACZe OhDlIsnUvcRZwQBP7LfkUtbqz4iPDgsonpWhICDw5P0njzsdv5gISKaCRxx30lIkly/Ys= X-Talos-CUID: 9a23:MvFkSGy3h/T/yeWOJnG+BgU+Bp84WGX38E77Lk2eEGU4VeKqT0efrfY= X-Talos-MUID: 9a23:dt7aMgqYd6sUDzecV8sezzV5ZJp4xYW2NE8cl4w4qeyjNSwteB7I2Q== X-IronPort-AV: E=Sophos;i="6.01,151,1684814400"; d="scan'208";a="113883249" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=OCC/kyV446eqqftsC1klNsftyIyyHUYg+AnwsP3Us9tW9nLHmjfTwgdv2IxeS8TAagArO0WAuu+CjygzLXi7QjNnbh40g4OoMEzQaOeDDkSTgg4ZqkmUzYpsdvsqv3xh/LdBoz6JJMLbprP9cdOXgjHbDxhZWAok2CxiuEWTxlUeXSFCcGjsXvNdE+TAJ795glNwHgwKH5eE5doQij9AMGDLV3eywUN9WPaAolssD9mLXM8J+Sewu0sMsDOZpDMHB/hQnSutiniJAdPhhCxZVWWQhqL4uVUwVtNtiktt9SkE0M1GsZ7/vqp6Ly+xM+bfErWoNzW+gPWYnAC+AQfOqA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=/Cwq3kztympJRScJkWlZG8+8n5xNCz3RbO2GZ/NShqE=; b=loOYqVCjVfEAcKsjyhVT8N7CDJlJMZyEeVmsv4dq8tNtKRHoe8b6sw1ZfGqap0n4fTGbRtHjrF7dR4Sh1NhjSBQogM8nC/KRaaSsKfTwh4ShvMsTKcVSISAyX2Ae/vqQY8xpEvpVCICUvWeHBv53U+qOFZOmZ7nSirZjPdiDp+twz8IxC9qcl2uKwvc4UTWr5nH+RFzaWyWU2wk27Gs9rBUAtuEfKtHuFlO8m5p+mvLmgdaObVm6IsLU0oZ0CmLjVt1MoW9LgpagqulvOLCgUlXaZ+K2iHRbL7MYrRzAYBEC806IUXLZ+dD2LjzUAbP8cQyhVYwENyv28mw634ytLA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=/Cwq3kztympJRScJkWlZG8+8n5xNCz3RbO2GZ/NShqE=; b=IeivFcL23hyjlSo4TPhGOWEAjX2O5MOrJuhnU4fUUDfN3zS8mpLi/a7CiZg4jDpAr5w8+yo5BYylwo3e0P2hePf4HjPwl4KVcMvH/G3LPVLfEZv9l/6f5HED3sIHHB4tx4tBPSA2um7311utxd8FIHe6dM9aYMzrzSjIdD7qVA0= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Date: Fri, 23 Jun 2023 10:50:55 +0200 From: Roger Pau =?utf-8?B?TW9ubsOp?= To: Volodymyr Babchuk Cc: "xen-devel@lists.xenproject.org" , Oleksandr Andrushchenko , Jan Beulich , Andrew Cooper , Wei Liu , George Dunlap , Julien Grall , Stefano Stabellini , Paul Durrant Subject: Re: [PATCH v7 01/12] vpci: introduce per-domain lock to protect vpci structure Message-ID: References: <20230613103159.524763-1-volodymyr_babchuk@epam.com> <20230613103159.524763-2-volodymyr_babchuk@epam.com> <87352kpj04.fsf@epam.com> <87ilbfnqmo.fsf@epam.com> Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <87ilbfnqmo.fsf@epam.com> X-ClientProxiedBy: LO4P123CA0301.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:196::18) To SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|SA2PR03MB5916:EE_ X-MS-Office365-Filtering-Correlation-Id: 96d04153-5960-4538-97eb-08db73c6f8f9 X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: ViB9kQmowzF1W6uK89sTgPXzV3u22Bq5s5oQtF/AhkIV3sS6MQLUhzWUCYmqAhbEIW/Qkp5aQuNgcvdb7C65lAu4d27DB84p7enjz1bobnFa4M7xc8OeXiJhzmygX3+NRv483tpi0E5AYdFvoaYbdCR/4HiLLD89UY8ZFEc8irxCUPPikRBTDQxZ/wCGHkAhkdMB9XqIV5OO3ysijf9/2AsL09hzJ6ZGXmqnIQNkEiFrONHL8eIQrlZKUmKe1m1SL6t/y+gmK1Xx38u8qC52uh7IDPt7mo9Uq+xsWeEPa7PuUPamf00iomEHhfkh0bubbA57eWdmPn1CNM8A7UP4jCN1wBllJv+m1/Vif8G8k+NyeO140Rf1NiXRxrsDMM9u7Y5C5r52dtOavgXuFZh8eTfEH3bN2krbkpifp9/OvA0MhNWwLVKCPlubb85whMof9VuLL6da73WE37yIJjZKtMGWh57eTNIyXAsxqX1twvu0MNdE+zo6706feAWdBqDFljWA553ztpxuKAahNqJRqx01hjvcWNyBMekD5SVZlDo= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(396003)(39860400002)(366004)(136003)(376002)(346002)(451199021)(54906003)(478600001)(66899021)(6512007)(26005)(9686003)(6506007)(6666004)(966005)(6486002)(7416002)(5660300002)(2906002)(85182001)(4326008)(66556008)(66476007)(6916009)(66946007)(86362001)(8936002)(8676002)(41300700001)(83380400001)(316002)(82960400001)(38100700002)(186003);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?WjJFTFRmVkk4YXQwZitOWi9rUmROOGpRQklqYko3TWdTR3JJVzlWaUtYTTh0?= =?utf-8?B?UWFVSjdGMHVDZUR1Z24rRTg1a1lJWWZSYWQ4K0tHOGhMKy9PcWdxMVdUT1ov?= =?utf-8?B?SVMrblhTMVdzNE0vNDNzZXFqU3BwMFVKc05ZYXVWb3FPSWp4RGd0a3ZMUlZk?= =?utf-8?B?bHNxKzZBbHBBdDNtZDkyTkk4OWlkaUpGM1RaWExsTmFFSWZxcmttMldCNitI?= =?utf-8?B?blNybGJPaEtnNTVWaVI3NVVwbHpENkswN2huZGtabVZuWCtZZmpIai9Pd0Y4?= =?utf-8?B?eEx0QXdXd0xoR3lEUVMzRUlmNWJMMnh6L2pMTk05eE50Q0JJYXJDMzNPNEFk?= =?utf-8?B?Sm5KRE9xaHBtWTd0RDQ5VGZEU1RhZWhaenVQQTFsd0NYaHYyays2eGdyaVUx?= =?utf-8?B?dzZrei9Pb0ViNVN6R3Z0UmVzSUxXS0w2ZmpFTVJOT2k3c3RyWjFHcVNwSlRJ?= =?utf-8?B?YUZjRnlWSFBQc29ZM1pzeEdjOUtpMTJuQW9rYkVXZG9CTjdmQUlrR1F6U3BL?= =?utf-8?B?V01OdVl6RFBoTnRDVXFVbW9ndVltQVFkVmNLZ0Y1eHpjV1A3YVZoNnRBdElG?= =?utf-8?B?cGFnNGIzSUJRcHV5bGZJclpHNmpXWVYwS1VudER4K3RIOWNqUzVjajRuOTZm?= =?utf-8?B?YXozd2NRcUVsOUxPTXFjaG1xSHQxOTZiZG9YT3NBbE5SSDVmR3V1dDMzbnZp?= =?utf-8?B?RllrUnpGLzd5L3ZYSytUcVdTYW9rS1hXM05Yb2krVDdRTUNqM0JHZXFmWTNC?= =?utf-8?B?UEc5eUc2VWtNaytjVWRnU3NITjBOK1Q0L2VlM2RFYUV3SkE1OG1kRENsY3VB?= =?utf-8?B?WGt2NTR5UjJYVlVkTE9uUExXV0lZczBOTzhHSXJObXdPSVVBNUNIM1krQjc3?= =?utf-8?B?VENnQ3lqN3J0NnMzcjlJamtqZ3ZPM0VKckhScTIrclpNVGQvSTdLVml3N05j?= =?utf-8?B?V3U2ZXF6dXJIKzM3NGVyUERzNzBJRTd5TGkzaVFCK3hoQjN5RTZFVmhqbHA0?= =?utf-8?B?MVhxbTU1eWI0cFM4cUxOMDNYRXYwbEc2VUgxOGVPaDNSejZtaGRUZE5wdDlU?= =?utf-8?B?S2Z4VmE0cmxCWW9EcjZocXlKc3JZenVCcjFVK3lhT09JeVhrdlBxZWlKbUFk?= =?utf-8?B?SzlkSkFaQUxkK09yWDl4WmdvaGxnUkMvbzd4TGtzci9PNE42c2lLTkFuZlFC?= =?utf-8?B?bUtXaWdxWTFFekNQQmk0OENMN3hvb2kydS9oRWFLSysyMnhRTi9BNjZZMGV4?= =?utf-8?B?SlBzeS9reld6OEdlZXBGdC9PSHIzN0tVVmpNRjBnVVZnMGhsMXljWE9RQURr?= =?utf-8?B?YkVEYjhBZ2hSUG9zSEFOeGtWeURxZzN5MHJaTlZUR3NYaXZuSUtNWStTWGlX?= =?utf-8?B?dUFwY3Q2QXZoMTI4REl1M28yK3BQZGJ3eWd4RlRUZEJ4NWpIakN6YnRUVUJP?= =?utf-8?B?cjRLRkFWd0dldjFKQllCdFY3RXU5aEF6UHBvRUtDd1hybTN1Y2UwckMxaFQr?= =?utf-8?B?US9RbHdmTjN3Q0d6REl3dzZjR3pQYVNjK1hEZlB1UkxwdFdwZ0dnVXJEaytz?= =?utf-8?B?NmNyeEdHWWNzRmg3eHBhTk5CR3ljK1lnZkNGMmNMaHNDQUN3TDBXdnFUN3BP?= =?utf-8?B?T3MyUlhtZElUU2lGWjA4cnhHTDNiVStuZ3ZmbzQzODVjWkZ4RmFEcCtxaVRP?= =?utf-8?B?ZTNDdzJEdStPbXVNd0tRVjdUQmxTVi9tY1JGbGtsMlZuSGpMdEFoQ2k0RXBs?= =?utf-8?B?SmhwR1VheDF2b3U0c2JWNHNiMEowWEdBMkxLMUlCNDB0bGhEb1BvVG9nSzYz?= =?utf-8?B?T3V4REVLK2ZWZWdBYWFFdFBFaWhnS1o1TnBhQlQ2VTJtOEUzTEdKYTR5OEVw?= =?utf-8?B?MHYyazVZQ0ROSDNzak5WWXQ0cDFmUGNLdThxVjgvaXB0dzZYZUhQWGJOTEhC?= =?utf-8?B?bzlLN0h5Y1p4OWFPT1hHREtUT2wwNVgyRlVGQjlnZHIxcmhkeExCZGZBYUNT?= =?utf-8?B?bnYvUEk2aUM4ZVNqVEZkVWVCWkZ0UnlGaUQvZ3VQYnZYYzduOERsRFZ5M0lR?= =?utf-8?B?Y2RWRmovTFFvNU1sT0l4MkJmUVR2VWdoL3QzRld3TEFNNlFiMVBiTUswenJ1?= =?utf-8?Q?X1mlGD2xnW7dOFsqvy/kJWY+x?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: vugpjMzudzDbvd0kcjJMULnQ8Pwri98imoyI9bysYzP1nQ62DEPOqvC+Q6UOMowE8cA+QlNMAvGJFlwKt8jMtIdh7fitQr8N8tltbpCkaWsaILLz2bscca7CRGOpOMDLbrD3wasIrSJy0gxye4ZF5jHdGvg1vOamytPZVUpeo9QaJe/DBJikXJedJDP05mDMFuo+g2xvlN1BAk/xIzGhAysodCpaxje2vuTgZIk6cJ4dfv56iAlKbLP2H2UXwZyHK/YyReVI/vJ4PQ8zKo2xGftbdNj2G1wnOynNMu/ZjH63vFwt9MX9kOK5JkKpTsKemM8fyOUThKk3dbB7cWD1lMJAoxecm6yMmOOsZQ+ySuDF6iNg//tRCLlHL3SrSfVGoIXJOIdvXFqzQzZT/EUhZCdvdE20qak3wYx/u+bxiB6kOZHFlUZCtU61DmXtGMn4pN7FToAlwuP+wLA7ucJ/0JO1aGktLOFJf+NgYm/jUQ3c/qNC0p0YfKtS3ZcpVrE/F+zveJSnyt7YM/l7AWQp/6CtuoshslgCFE7pe8rlL2U14RBERiIVRz9+oZCh3WPpISnwFF3q5FsJy7OiDYHBporDvouEnbbbr3nP7iYyCJNfpZKUU8BPfc7uCgjj1KHshK1BQ6JS4Ar+nOrfYhfsaR4qiPmXsICn+NZVN/nCaRombTGggHeSkO5QzjbMZ9ttN8PASEmoPYWDYLHn6lpSEob64uRQRBPm8Hbdpo2q78mZmdayg+PhvMtHuzYvBjE7sztUxR2DhUPnnKmWNYs4KJolwVlmI4Ogsq2tJcTqKKGluXUUYi1FjWiwKqJYs203/ZSSfB++4IH0eHanHN19etKGjy5fbaz6klhUzDnHSrp9wm1BtrmvyTWMJUuGlvIK X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 96d04153-5960-4538-97eb-08db73c6f8f9 X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Jun 2023 08:51:02.4205 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: hkQkV5y/bsiacCRALaNFuY1a82Nl8rK43bSqc9Lu2TijTBzWR8LJOdw2Y9NJu/+DSGPqt3S8563v9yR3KN+rnA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA2PR03MB5916 On Thu, Jun 22, 2023 at 09:17:36PM +0000, Volodymyr Babchuk wrote: > > Hi Roger, > > Roger Pau Monné writes: > > > On Wed, Jun 21, 2023 at 10:07:20PM +0000, Volodymyr Babchuk wrote: > >> > >> Hi Roger, > >> > >> Roger Pau Monné writes: > >> > >> > On Tue, Jun 13, 2023 at 10:32:26AM +0000, Volodymyr Babchuk wrote: > >> >> From: Oleksandr Andrushchenko > >> >> > >> >> Introduce a per-domain read/write lock to check whether vpci is present, > >> >> so we are sure there are no accesses to the contents of the vpci struct > >> >> if not. This lock can be used (and in a few cases is used right away) > >> >> so that vpci removal can be performed while holding the lock in write > >> >> mode. Previously such removal could race with vpci_read for example. > >> >> > >> >> 1. Per-domain's vpci_rwlock is used to protect pdev->vpci structure > >> >> from being removed. > >> >> > >> >> 2. Writing the command register and ROM BAR register may trigger > >> >> modify_bars to run, which in turn may access multiple pdevs while > >> >> checking for the existing BAR's overlap. The overlapping check, if done > >> >> under the read lock, requires vpci->lock to be acquired on both devices > >> >> being compared, which may produce a deadlock. It is not possible to > >> >> upgrade read lock to write lock in such a case. So, in order to prevent > >> >> the deadlock, check which registers are going to be written and acquire > >> >> the lock in the appropriate mode from the beginning. > >> >> > >> >> All other code, which doesn't lead to pdev->vpci destruction and does not > >> >> access multiple pdevs at the same time, can still use a combination of the > >> >> read lock and pdev->vpci->lock. > >> >> > >> >> 3. Optimize if ROM BAR write lock required detection by caching offset > >> >> of the ROM BAR register in vpci->header->rom_reg which depends on > >> >> header's type. > >> >> > >> >> 4. Reduce locked region in vpci_remove_device as it is now possible > >> >> to set pdev->vpci to NULL early right after the write lock is acquired. > >> >> > >> >> 5. Reduce locked region in vpci_add_handlers as it is possible to > >> >> initialize many more fields of the struct vpci before assigning it to > >> >> pdev->vpci. > >> >> > >> >> 6. vpci_{add|remove}_register are required to be called with the write lock > >> >> held, but it is not feasible to add an assert there as it requires > >> >> struct domain to be passed for that. So, add a comment about this requirement > >> >> to these and other functions with the equivalent constraints. > >> >> > >> >> 7. Drop const qualifier where the new rwlock is used and this is appropriate. > >> >> > >> >> 8. Do not call process_pending_softirqs with any locks held. For that unlock > >> >> prior the call and re-acquire the locks after. After re-acquiring the > >> >> lock there is no need to check if pdev->vpci exists: > >> >> - in apply_map because of the context it is called (no race condition > >> >> possible) > >> >> - for MSI/MSI-X debug code because it is called at the end of > >> >> pdev->vpci access and no further access to pdev->vpci is made > >> >> > >> >> 9. Check for !pdev->vpci in vpci_{read|write} after acquiring the lock > >> >> and if so, allow reading or writing the hardware register directly. This is > >> >> acceptable as we only deal with Dom0 as of now. Once DomU support is > >> >> added the write will need to be ignored and read return all 0's for the > >> >> guests, while Dom0 can still access the registers directly. > >> >> > >> >> 10. Introduce pcidevs_trylock, so there is a possibility to try locking > >> >> the pcidev's lock. > >> >> > >> >> 11. Use pcidev's lock around for_each_pdev and pci_get_pdev_by_domain > >> >> while accessing pdevs in vpci code. > >> >> > >> >> 12. This is based on the discussion at [1]. > >> >> > >> >> [1] https://urldefense.com/v3/__https://lore.kernel.org/all/20220204063459.680961-4-andr2000@gmail.com/__;!!GF_29dbcQIUBPA!zPy31CWFWlyC0xhEHiSj6rOPe7RDSjLranI9KZqhG4ssmChJMWvsPLJPQGTcVsnnowZpP8-LaKJkIWIzb8ue0DoYhg$ [lore[.]kernel[.]org] > >> >> > >> >> Suggested-by: Roger Pau Monné > >> >> Suggested-by: Jan Beulich > >> >> Signed-off-by: Oleksandr Andrushchenko > >> > > >> > Thanks. > >> > > >> > I haven't looked in full detail, but I'm afraid there's an ABBA > >> > deadlock with the per-domain vpci lock and the pcidevs lock in > >> > modify_bars() vs vpci_add_handlers() and vpci_remove_device(). > >> > > >> > I've made some comments below. > >> > >> Thank you for the review. I believe that it is a good idea to have a > >> per-domain pdev_list lock. See my answers below. > > > > I think it's important that the lock that protects domain->pdev_list > > must be the same that also protects pdev->vpci, or else you might run > > into similar ABBA deadlock situations. > > > > The problem then could be that in vpci_{read,write} you will take the > > per-domain pdev lock in read mode in order to get the pdev, and for > > writes to the command register or the ROM BAR you would have to > > upgrade such lock to a write lock without dropping it, and we don't > > have such functionality for rw locks ATM. > > > > Maybe just re-starting the function knowing that the lock must be > > taken in write mode would be a good solution: writes to the command > > register will already be slow since they are likely to involve > > modifications to the p2m. > > Looks like modify_bars() is the only cause for this extended lock. I > know that this was discussed earlier, but can we rework modify_bars to > not iterate over all the pdevs? We can store copy of all enabled BARs in > a domain structure, protected by domain->vpci_lock. Something akin to > > struct vpci_bar { > list_head list; > struct vpci *vpci; > unsigned long start; > unsigned long end; > bool is_rom; > }; This IMO makes the logic more complicated, as each time a BAR is updated we would have to change the cached address and size in two different places. It's also duplicated data that takes up memory, and there are system with a non-trivial amount of PCI devices and thus BARs to track. I think it's easier to just make the newly introduced per-domain rwlock also protect the domain's pdev_list (unless I'm missing something). AFAICT it would also simplify locking, as such rwlock protecting the domain->pdev_list will avoid you from having to take the pcidevs lock in vpci_{read,write} in order to find the device the access belongs to. Thanks, Roger. From xen-devel-bounces@lists.xenproject.org Fri Jun 23 08:59:55 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 23 Jun 2023 08:59:55 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554340.865476 (Exim 4.92) (envelope-from ) id 1qCcdx-0004ne-E9; Fri, 23 Jun 2023 08:59:49 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554340.865476; Fri, 23 Jun 2023 08:59:49 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCcdx-0004nX-9i; Fri, 23 Jun 2023 08:59:49 +0000 Received: by outflank-mailman (input) for mailman id 554340; Fri, 23 Jun 2023 08:59:48 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCcdw-0004nR-Gn for xen-devel@lists.xenproject.org; Fri, 23 Jun 2023 08:59:48 +0000 Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 4dc29e65-11a4-11ee-b237-6b7b168915f2; Fri, 23 Jun 2023 10:59:47 +0200 (CEST) Received: from nico.bugseng.com (unknown [151.37.21.21]) by support.bugseng.com (Postfix) with ESMTPSA id 0F57E4EE0737; Fri, 23 Jun 2023 10:59:44 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 4dc29e65-11a4-11ee-b237-6b7b168915f2 From: Nicola Vetrini To: xen-devel@lists.xenproject.org Cc: sstabellini@kernel.org, michal.orzel@amd.com, xenia.ragiadakou@amd.com, ayan.kumar.halder@amd.com, consulting@bugseng.com, jbeulich@suse.com, andrew.cooper3@citrix.com, roger.pau@citrix.com, bertrand.marquis@arm.com, julien@xen.org, Nicola Vetrini , George Dunlap , Wei Liu Subject: [XEN PATCH v4] xen/include: avoid using a compiler extension for BUILD_BUG_ON_ZERO. Date: Fri, 23 Jun 2023 10:59:27 +0200 Message-Id: <4ab190bd0d80898311aa9f1e912f18e7cdef2762.1687510380.git.nicola.vetrini@bugseng.com> X-Mailer: git-send-email 2.34.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Redefine BUILD_BUG_ON_ZERO to avoid using a compiler extension that gives an acceptable semantics to C99 undefined behavior 58 ("A structure or union is defined as containing no named members (6.7.2.1)"). The chosen ill-formed construct is a negative bitwidth in a bitfield within a struct containing at least one named member, which prevents the UB while keeping the semantics of the construct. The choice of the bitwise AND operation to bring the result to 0 when cond is false boils down to possibly better portability, and the 'U' suffix to make it obvious that this operation results in an unsigned value. Signed-off-by: Nicola Vetrini --- Changes in V2: - Avoid using a VLA as the compile-time assertion - Do not drop _Static_assert Changes in V3: - Changed the operation to bring the result to 0 when the construct does not lead to a compilation error Changes in V4: - Switched to a shorter construct for the second definition. --- xen/include/xen/lib.h | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/xen/include/xen/lib.h b/xen/include/xen/lib.h index 67fc7c1d7e..460cab6734 100644 --- a/xen/include/xen/lib.h +++ b/xen/include/xen/lib.h @@ -51,9 +51,10 @@ e.g. in a structure initializer (or where-ever else comma expressions aren't permitted). */ #define BUILD_BUG_ON_ZERO(cond) \ - sizeof(struct { _Static_assert(!(cond), "!(" #cond ")"); }) + (sizeof(struct { char c; _Static_assert(!(cond), "!(" #cond ")"); }) & 0U) #else -#define BUILD_BUG_ON_ZERO(cond) sizeof(struct { int:-!!(cond); }) +#define BUILD_BUG_ON_ZERO(cond) \ + (sizeof(struct { unsigned u : !(cond); }) & 0U) #define BUILD_BUG_ON(cond) ((void)BUILD_BUG_ON_ZERO(cond)) #endif -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Fri Jun 23 09:27:23 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 23 Jun 2023 09:27:23 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554348.865486 (Exim 4.92) (envelope-from ) id 1qCd4K-0008FG-KD; Fri, 23 Jun 2023 09:27:04 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554348.865486; Fri, 23 Jun 2023 09:27:04 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCd4K-0008F9-Fg; Fri, 23 Jun 2023 09:27:04 +0000 Received: by outflank-mailman (input) for mailman id 554348; Fri, 23 Jun 2023 09:27:02 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCd4I-0008F3-AX for xen-devel@lists.xenproject.org; Fri, 23 Jun 2023 09:27:02 +0000 Received: from mx0a-0039f301.pphosted.com (mx0a-0039f301.pphosted.com [148.163.133.242]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 19b3d79f-11a8-11ee-8611-37d641c3527e; Fri, 23 Jun 2023 11:26:59 +0200 (CEST) Received: from pps.filterd (m0174678.ppops.net [127.0.0.1]) by mx0a-0039f301.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 35N66rCX017137; Fri, 23 Jun 2023 09:26:48 GMT Received: from eur01-db5-obe.outbound.protection.outlook.com (mail-db5eur01lp2053.outbound.protection.outlook.com [104.47.2.53]) by mx0a-0039f301.pphosted.com (PPS) with ESMTPS id 3rc2w2g5ra-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Fri, 23 Jun 2023 09:26:47 +0000 Received: from VI1PR03MB3710.eurprd03.prod.outlook.com (2603:10a6:803:31::18) by DBAPR03MB6456.eurprd03.prod.outlook.com (2603:10a6:10:19c::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.26; Fri, 23 Jun 2023 09:26:43 +0000 Received: from VI1PR03MB3710.eurprd03.prod.outlook.com ([fe80::10c0:3ca8:e226:2335]) by VI1PR03MB3710.eurprd03.prod.outlook.com ([fe80::10c0:3ca8:e226:2335%4]) with mapi id 15.20.6521.024; Fri, 23 Jun 2023 09:26:43 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 19b3d79f-11a8-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=ZSR/igZ55P4fvlUSiXDFT7XmGbNKcd+l3l2fbptXHyGFQiapqjq0Sw/qKNWybOaJTRuDntHGdfjcje0ROYiQKYga+CjZo/tvFpno4UHVddOY+JjjZSFfaYz32QF/k9nqgMBXRsYJ7PwR41Fp4ZTAizbVJMK7Yl6w0m4o5z7Ta3ZE5hW5RrANHHfLxFCEegrEAzh8pzEugf/kT+VDRZI3a14ehNVrKm/XqPPUT4AdvIPjG7gVA02QQAVtxJkO7fFVjyKYFircgtu07Rl/ZArB+VQ05R6/Bcjc7HzwRMpRK1krHPK+FaWtXzn9F6TSy1vgbl9ldt4FX6FHDt7m6SOyeg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=p4rxjov7YnCTp+5a7NPsUIh9h+F8OO9Y6dsQ2vKEPn8=; b=bLbXVcKKtffXvhel320490dvznJPyo3EGfkBpTeOuNsCbAFnErItVaENLlkuZlihzD2gFEoOIS1DRxRTnEZA+fWp1/fig3sZTYE1TCsJ1rUNu/Hh/WIFP7+VjzD26M17PideEOGIG25ijA8v6G6xJjfqr0pIQBZtkEgMfl0KatNrN0RA/d2WIzlnM5UaORFvD+he0bwmSLYUMn1T5SIgFWLOeDK3F+s69p0izfSN1mzPunS/UYZnMhwXH8Plq236yXHeHkZo1Wd7+HeA2kGolsRPm9jzQBzqRnv3abAWqP2NtmfTzRrXymhx6rJWfSUSRXClFK+3A9u0fYd5eJOEbg== 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 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=epam.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=p4rxjov7YnCTp+5a7NPsUIh9h+F8OO9Y6dsQ2vKEPn8=; b=bmSLPva+PeTDP+nIimDso+Tj6DtvxASSjPXGUk/HupB0znAQFy/cd7jjYkkUWy4yg5tOTksavWQBhV+Kfjrkg50BQeQuVqDGwOPyIoZK8L/5Oh1W+sYKmc70QhH2R8WpgmAq7ZsD17q4s8BfULCQ1QMM5XNUBAeuTkqdL80G5X+WJQPYeQUsRuytUlTBoIh34Iw6JhnU4Ed1dg15kRbZB+3rNrOzQ7X8tIeg6hfpIX9aiZ1/RaCUMV7jvTYMca9e34rGd4kP7rvofAxsYesvRcHaZn27homrw701++aXAe79K3XNxMayuYCJKhCFjGr0vJTUv+xXiIE4fe1RqHdp8w== From: Volodymyr Babchuk To: =?utf-8?B?Um9nZXIgUGF1IE1vbm7DqQ==?= CC: "xen-devel@lists.xenproject.org" , Oleksandr Andrushchenko , Jan Beulich , Andrew Cooper , Wei Liu , George Dunlap , Julien Grall , Stefano Stabellini , Paul Durrant Subject: Re: [PATCH v7 01/12] vpci: introduce per-domain lock to protect vpci structure Thread-Topic: [PATCH v7 01/12] vpci: introduce per-domain lock to protect vpci structure Thread-Index: AQHZneJZdDE+HOoSO0y6VB9l0x1hDq+No9OAgAgqUACAALl2AIAAzUWAgADPAYCAAAYfgA== Date: Fri, 23 Jun 2023 09:26:43 +0000 Message-ID: <874jmyo7g8.fsf@epam.com> References: <20230613103159.524763-1-volodymyr_babchuk@epam.com> <20230613103159.524763-2-volodymyr_babchuk@epam.com> <87352kpj04.fsf@epam.com> <87ilbfnqmo.fsf@epam.com> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: user-agent: mu4e 1.8.9; emacs 28.2 x-ms-publictraffictype: Email x-ms-traffictypediagnostic: VI1PR03MB3710:EE_|DBAPR03MB6456:EE_ x-ms-office365-filtering-correlation-id: 69186bfa-3f49-4a02-4072-08db73cbf53b x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: IMLZNLHhvXWIbQPGJ3b/A0G+z9E21IZ5PVWW5b7cZ3bzbw2FMYj7m5lSbXILSPsRC8VmS1C2Jhbt2SFd2GXKhboXDxmgD4XQZjROCtXuCt8ym5Og4XG3jcRn+YwP6kMTJUDdIIeodiqEZmkRDd15w+jdp6u/+bRbiqPh2Pkoj3Psb7lvOUqgzLpuAUyACh+BnWj0vnY+adAgZlznhGfwb3k4KACS1KeHdVL0I1O3qHdeYHiUM2xyehsNvjYDuO8xTtbou/AEVAIIcoAipBDffuVUlsyOZAV4x4KqmpvH4WdcQ1nAXhPe+1PMgEM5T5r9rF5mI+W5SSC+Pqk6yknYHAmCN+csrOs0/egQlGb1rgDrTf0oR5R9x0FlbmLrNS7fmOpk170Wa9SpRq6rNln9jR64zj7J6/aITj5STn1hahuKBzT92oUhodIzBx5uSnvgDVZskFlgK/8hJsoUbIrpnY/CK5SgTpNki7pEsJlILQHnD+0BUjfbhyyTMtw1gatN06HbLVDw0DfPLUvIPYTbvCnYmwXdL1qSJK8GyEKGILAyYOcMBe60d2gIQQYU44NZw656FNFYizXpBqjlzlHRBT0eiF5WIwmiJsvi+09HLRw= x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VI1PR03MB3710.eurprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(366004)(136003)(346002)(396003)(39860400002)(376002)(451199021)(2906002)(5660300002)(66899021)(122000001)(38070700005)(38100700002)(86362001)(36756003)(54906003)(478600001)(71200400001)(966005)(6486002)(316002)(41300700001)(8676002)(8936002)(66476007)(4326008)(6916009)(66556008)(64756008)(91956017)(66446008)(66946007)(76116006)(6512007)(26005)(55236004)(6506007)(83380400001)(2616005)(186003);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?dEd4ZzZ5cWJCcU9mcjlLMEI3VFJrL0NVNFRYRitpSHA3VjB2TTNMRXhkeTJD?= =?utf-8?B?U284ZG5aMkcwdEdkc01DblpNL1QvT0ZycXFnRWNMRWhsN0R3cXVyRGFaYVlW?= =?utf-8?B?T1RzUnl1Zmt5R2ZDRTNXZGtZRWlKSWdKMUlmQjdDMW1aTUE2TGtvc0dyWDNR?= =?utf-8?B?aFBuT0tzdFRMTlFTemFGUUpjb0I1NkNFN3p4NjF4dG01UElSTDg4V1k2cjBT?= =?utf-8?B?Z0ZkL09OdWxoWDdzc1FGY2hSeW92SjYwRmtJZ0wrVzM1QlB2MmNtc04vSVlo?= =?utf-8?B?bVlhSkk1QmVQMGxCUzhaMktFVkMxV25GSTFSL3pZL1hDR0lCeU0zcklxNTdE?= =?utf-8?B?RzBZYWVxRUdZVVZsL1krcmdqUE1uRndVWVV1Y3FYQVhxSXZqVC9sTFAxczFZ?= =?utf-8?B?KzdjdGNUbzdGWStsUkErRjJCNzZNaGIyZFJzNGs5SldWd3ViUmt6Z2N0V2lm?= =?utf-8?B?SFR3Tk5aWjBLOGE4UTNvZGM3UzRoWXAvRkQyY2xNbmVFRTIwaEh3eUE2ZDg1?= =?utf-8?B?eXk1K3FqVVp5R3hHY2tXakVDRi9vNnlIRWNKcDV1aVBpWlM1b2VxeWF4WTZv?= =?utf-8?B?R3plTURJMUlxdGVVNldYSlF0MFRrcVRDSWdQZ0ZyRXVIdnIrUjMwQWxWdk9R?= =?utf-8?B?aFN3M0hUNEl6QUFyczNldWxxVGdoUkhiUG1Bd1F2ZldJY25GblQzSklnekEv?= =?utf-8?B?YkQ1RzA3Tmkwc2szZEFwdktzRTQ0T1lyMEh4d041THFGUlVRb0dXT2FoT1pP?= =?utf-8?B?NDFQNEtkSy9Gd1RseFJYNnN5TzJkK21keE1ING1hUm96YSswa09HQXlzOTcw?= =?utf-8?B?MytVS2Y4dlZhM0hsVEZPcWNUSFllK3AzaG9vM2VsQXJTRDJ1RXFydU1JbVBD?= =?utf-8?B?NHRabFl4M09GSWQxRHR2UHU4cGVQUFlpZnFIYzhDMjJjZGZMS1lNNVc2YlNt?= =?utf-8?B?eThodnB4U3dSSE1wOTRvbC9Yamg0MFhqdjRaUUZ6dFhFcVRHeEc3WkgxQU1m?= =?utf-8?B?YzFMYnFyMnBRWUxVZXVHZ1RETW1VZEo3eUZwVE9nL2RpQ0dSQkFHZlhxdkht?= =?utf-8?B?d1lienRpUXN5WWdqQmRLbDdUSWdFRHNhL0pybkNRRlNEdjMvYWVrMjFVRmVM?= =?utf-8?B?S0MwQ2RSSTFtLzJEZTdVTFZNMjhhTDg0RjFnaWNiMmVISWxmQ3lmbDNudnRr?= =?utf-8?B?dG81aDVjNGdQNndNQ3RpRnlSZXN3bE1UVVVISkcxRk9lVzB0Y2htWGR3ZzVL?= =?utf-8?B?MXRLbTFZR05OZjVsRTJvaVdkR2dpbi9uL1N3S0NRN2srdkdDalcxNE9JaklJ?= =?utf-8?B?RndtOWpGSDR3YWxMWk95RjdBSUZNdE94dmN1VzBnWDJ2TElOU1ZmM202QUdP?= =?utf-8?B?OTFrYUFOeVBnSFdoVDlyQURzSlNCQ0RkU3dESlg1aGE4RnRFQ2N3eFp5TC9l?= =?utf-8?B?ZDdtZnFMc2dqRkNsR0RObEJ1VTBEemJxQWcvd3E2K2NyQ3RPOGlIa05DS0RW?= =?utf-8?B?RHZVN3ZLSWJGNVpPSVdEUUF1Tm5UZkFlOEpvK2treUJ0cjRDeVp4emtuWHhs?= =?utf-8?B?UG5PeFp2U2hvdG9VRW0xRUtuY216cXdSR1hPUHJBK2M1bzlWNjk1VkptbnRI?= =?utf-8?B?bWFXM0dtbTByeVlUQkYrVmpEeWRZUFJaMzFUVW00MVJlRGxtWW8rUXpveU1z?= =?utf-8?B?MUp6N3p6WDNYVjZXU0ZtVWNHMW0xNnJEUVBmQmJEWUZXd3lGek84K09pZm01?= =?utf-8?B?Wk1qWVhLVnV3TWJzTmRpd1YwUEpKNGEvYjdBdmhKdFBuMEQ4OTYxZk5LU2E1?= =?utf-8?B?TmZEVXZLVnVvMmVhaElSUTNOcVJaeTF5bjFhZHZmWVVGWjlGN2JDSDBOZDFK?= =?utf-8?B?eFl0blNwOTlrOHVZblpnZWt0UThQU1g4V1hKalhVRVA2YjdOajNkY25sSUVI?= =?utf-8?B?TTdoQll2bVQ1ZHFNVzIrTWtXMW10WURFZzJtTklpRVdiVzRkblkxQmZTU1JL?= =?utf-8?B?YWNLdDdRQUx6eDZYSWhtR3BlUHlTL0g4L2VGbjBXeUhCeGx1bUVCNk1uK0tK?= =?utf-8?B?R3Q1czNrbjNkelgwbUx0YnExMlJmZWlZMlRZR3BqK0l4eHdZRkZ5VDlGWGV3?= =?utf-8?B?YlYxTGdmR2dva0ZTK2IzMFFzaWdNcjJQbzluYys2d2ROaU9mbkdqY3N0OUtl?= =?utf-8?B?NVE9PQ==?= Content-Type: text/plain; charset="utf-8" Content-ID: <9623136027F627428029D55784D36CF0@eurprd03.prod.outlook.com> Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: epam.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: VI1PR03MB3710.eurprd03.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 69186bfa-3f49-4a02-4072-08db73cbf53b X-MS-Exchange-CrossTenant-originalarrivaltime: 23 Jun 2023 09:26:43.2610 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: b41b72d0-4e9f-4c26-8a69-f949f367c91d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: D63JWUBF1KmNMUix6etmb1dVjVT/yOTY0IZCH+Rnl0dfrIrG9DKU7ZgwAaVHn+HO3fuk5J0cYrtZl2r/MB4/RhGomx7c+YchxpgITMnOh9w= X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBAPR03MB6456 X-Proofpoint-ORIG-GUID: bou2E6R8bp23s4FnAuULaYqda-36o9he X-Proofpoint-GUID: bou2E6R8bp23s4FnAuULaYqda-36o9he X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.254,Aquarius:18.0.957,Hydra:6.0.591,FMLib:17.11.176.26 definitions=2023-06-23_04,2023-06-22_02,2023-05-22_02 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 mlxlogscore=933 lowpriorityscore=0 phishscore=0 priorityscore=1501 bulkscore=0 clxscore=1015 adultscore=0 mlxscore=0 impostorscore=0 spamscore=0 malwarescore=0 suspectscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2305260000 definitions=main-2306230084 DQpIaSBSb2dlciwNCg0KUm9nZXIgUGF1IE1vbm7DqSA8cm9nZXIucGF1QGNpdHJpeC5jb20+IHdy aXRlczoNCg0KPiBPbiBUaHUsIEp1biAyMiwgMjAyMyBhdCAwOToxNzozNlBNICswMDAwLCBWb2xv ZHlteXIgQmFiY2h1ayB3cm90ZToNCj4+IA0KPj4gSGkgUm9nZXIsDQo+PiANCj4+IFJvZ2VyIFBh dSBNb25uw6kgPHJvZ2VyLnBhdUBjaXRyaXguY29tPiB3cml0ZXM6DQo+PiANCj4+ID4gT24gV2Vk LCBKdW4gMjEsIDIwMjMgYXQgMTA6MDc6MjBQTSArMDAwMCwgVm9sb2R5bXlyIEJhYmNodWsgd3Jv dGU6DQo+PiA+PiANCj4+ID4+IEhpIFJvZ2VyLA0KPj4gPj4gDQo+PiA+PiBSb2dlciBQYXUgTW9u bsOpIDxyb2dlci5wYXVAY2l0cml4LmNvbT4gd3JpdGVzOg0KPj4gPj4gDQo+PiA+PiA+IE9uIFR1 ZSwgSnVuIDEzLCAyMDIzIGF0IDEwOjMyOjI2QU0gKzAwMDAsIFZvbG9keW15ciBCYWJjaHVrIHdy b3RlOg0KPj4gPj4gPj4gRnJvbTogT2xla3NhbmRyIEFuZHJ1c2hjaGVua28gPG9sZWtzYW5kcl9h bmRydXNoY2hlbmtvQGVwYW0uY29tPg0KPj4gPj4gPj4gDQo+PiA+PiA+PiBJbnRyb2R1Y2UgYSBw ZXItZG9tYWluIHJlYWQvd3JpdGUgbG9jayB0byBjaGVjayB3aGV0aGVyIHZwY2kgaXMgcHJlc2Vu dCwNCj4+ID4+ID4+IHNvIHdlIGFyZSBzdXJlIHRoZXJlIGFyZSBubyBhY2Nlc3NlcyB0byB0aGUg Y29udGVudHMgb2YgdGhlIHZwY2kgc3RydWN0DQo+PiA+PiA+PiBpZiBub3QuIFRoaXMgbG9jayBj YW4gYmUgdXNlZCAoYW5kIGluIGEgZmV3IGNhc2VzIGlzIHVzZWQgcmlnaHQgYXdheSkNCj4+ID4+ ID4+IHNvIHRoYXQgdnBjaSByZW1vdmFsIGNhbiBiZSBwZXJmb3JtZWQgd2hpbGUgaG9sZGluZyB0 aGUgbG9jayBpbiB3cml0ZQ0KPj4gPj4gPj4gbW9kZS4gUHJldmlvdXNseSBzdWNoIHJlbW92YWwg Y291bGQgcmFjZSB3aXRoIHZwY2lfcmVhZCBmb3IgZXhhbXBsZS4NCj4+ID4+ID4+IA0KPj4gPj4g Pj4gMS4gUGVyLWRvbWFpbidzIHZwY2lfcndsb2NrIGlzIHVzZWQgdG8gcHJvdGVjdCBwZGV2LT52 cGNpIHN0cnVjdHVyZQ0KPj4gPj4gPj4gZnJvbSBiZWluZyByZW1vdmVkLg0KPj4gPj4gPj4gDQo+ PiA+PiA+PiAyLiBXcml0aW5nIHRoZSBjb21tYW5kIHJlZ2lzdGVyIGFuZCBST00gQkFSIHJlZ2lz dGVyIG1heSB0cmlnZ2VyDQo+PiA+PiA+PiBtb2RpZnlfYmFycyB0byBydW4sIHdoaWNoIGluIHR1 cm4gbWF5IGFjY2VzcyBtdWx0aXBsZSBwZGV2cyB3aGlsZQ0KPj4gPj4gPj4gY2hlY2tpbmcgZm9y IHRoZSBleGlzdGluZyBCQVIncyBvdmVybGFwLiBUaGUgb3ZlcmxhcHBpbmcgY2hlY2ssIGlmIGRv bmUNCj4+ID4+ID4+IHVuZGVyIHRoZSByZWFkIGxvY2ssIHJlcXVpcmVzIHZwY2ktPmxvY2sgdG8g YmUgYWNxdWlyZWQgb24gYm90aCBkZXZpY2VzDQo+PiA+PiA+PiBiZWluZyBjb21wYXJlZCwgd2hp Y2ggbWF5IHByb2R1Y2UgYSBkZWFkbG9jay4gSXQgaXMgbm90IHBvc3NpYmxlIHRvDQo+PiA+PiA+ PiB1cGdyYWRlIHJlYWQgbG9jayB0byB3cml0ZSBsb2NrIGluIHN1Y2ggYSBjYXNlLiBTbywgaW4g b3JkZXIgdG8gcHJldmVudA0KPj4gPj4gPj4gdGhlIGRlYWRsb2NrLCBjaGVjayB3aGljaCByZWdp c3RlcnMgYXJlIGdvaW5nIHRvIGJlIHdyaXR0ZW4gYW5kIGFjcXVpcmUNCj4+ID4+ID4+IHRoZSBs b2NrIGluIHRoZSBhcHByb3ByaWF0ZSBtb2RlIGZyb20gdGhlIGJlZ2lubmluZy4NCj4+ID4+ID4+ IA0KPj4gPj4gPj4gQWxsIG90aGVyIGNvZGUsIHdoaWNoIGRvZXNuJ3QgbGVhZCB0byBwZGV2LT52 cGNpIGRlc3RydWN0aW9uIGFuZCBkb2VzIG5vdA0KPj4gPj4gPj4gYWNjZXNzIG11bHRpcGxlIHBk ZXZzIGF0IHRoZSBzYW1lIHRpbWUsIGNhbiBzdGlsbCB1c2UgYSBjb21iaW5hdGlvbiBvZiB0aGUN Cj4+ID4+ID4+IHJlYWQgbG9jayBhbmQgcGRldi0+dnBjaS0+bG9jay4NCj4+ID4+ID4+IA0KPj4g Pj4gPj4gMy4gT3B0aW1pemUgaWYgUk9NIEJBUiB3cml0ZSBsb2NrIHJlcXVpcmVkIGRldGVjdGlv biBieSBjYWNoaW5nIG9mZnNldA0KPj4gPj4gPj4gb2YgdGhlIFJPTSBCQVIgcmVnaXN0ZXIgaW4g dnBjaS0+aGVhZGVyLT5yb21fcmVnIHdoaWNoIGRlcGVuZHMgb24NCj4+ID4+ID4+IGhlYWRlcidz IHR5cGUuDQo+PiA+PiA+PiANCj4+ID4+ID4+IDQuIFJlZHVjZSBsb2NrZWQgcmVnaW9uIGluIHZw Y2lfcmVtb3ZlX2RldmljZSBhcyBpdCBpcyBub3cgcG9zc2libGUNCj4+ID4+ID4+IHRvIHNldCBw ZGV2LT52cGNpIHRvIE5VTEwgZWFybHkgcmlnaHQgYWZ0ZXIgdGhlIHdyaXRlIGxvY2sgaXMgYWNx dWlyZWQuDQo+PiA+PiA+PiANCj4+ID4+ID4+IDUuIFJlZHVjZSBsb2NrZWQgcmVnaW9uIGluIHZw Y2lfYWRkX2hhbmRsZXJzIGFzIGl0IGlzIHBvc3NpYmxlIHRvDQo+PiA+PiA+PiBpbml0aWFsaXpl IG1hbnkgbW9yZSBmaWVsZHMgb2YgdGhlIHN0cnVjdCB2cGNpIGJlZm9yZSBhc3NpZ25pbmcgaXQg dG8NCj4+ID4+ID4+IHBkZXYtPnZwY2kuDQo+PiA+PiA+PiANCj4+ID4+ID4+IDYuIHZwY2lfe2Fk ZHxyZW1vdmV9X3JlZ2lzdGVyIGFyZSByZXF1aXJlZCB0byBiZSBjYWxsZWQgd2l0aCB0aGUgd3Jp dGUgbG9jaw0KPj4gPj4gPj4gaGVsZCwgYnV0IGl0IGlzIG5vdCBmZWFzaWJsZSB0byBhZGQgYW4g YXNzZXJ0IHRoZXJlIGFzIGl0IHJlcXVpcmVzDQo+PiA+PiA+PiBzdHJ1Y3QgZG9tYWluIHRvIGJl IHBhc3NlZCBmb3IgdGhhdC4gU28sIGFkZCBhIGNvbW1lbnQgYWJvdXQgdGhpcyByZXF1aXJlbWVu dA0KPj4gPj4gPj4gdG8gdGhlc2UgYW5kIG90aGVyIGZ1bmN0aW9ucyB3aXRoIHRoZSBlcXVpdmFs ZW50IGNvbnN0cmFpbnRzLg0KPj4gPj4gPj4gDQo+PiA+PiA+PiA3LiBEcm9wIGNvbnN0IHF1YWxp ZmllciB3aGVyZSB0aGUgbmV3IHJ3bG9jayBpcyB1c2VkIGFuZCB0aGlzIGlzIGFwcHJvcHJpYXRl Lg0KPj4gPj4gPj4gDQo+PiA+PiA+PiA4LiBEbyBub3QgY2FsbCBwcm9jZXNzX3BlbmRpbmdfc29m dGlycXMgd2l0aCBhbnkgbG9ja3MgaGVsZC4gRm9yIHRoYXQgdW5sb2NrDQo+PiA+PiA+PiBwcmlv ciB0aGUgY2FsbCBhbmQgcmUtYWNxdWlyZSB0aGUgbG9ja3MgYWZ0ZXIuIEFmdGVyIHJlLWFjcXVp cmluZyB0aGUNCj4+ID4+ID4+IGxvY2sgdGhlcmUgaXMgbm8gbmVlZCB0byBjaGVjayBpZiBwZGV2 LT52cGNpIGV4aXN0czoNCj4+ID4+ID4+ICAtIGluIGFwcGx5X21hcCBiZWNhdXNlIG9mIHRoZSBj b250ZXh0IGl0IGlzIGNhbGxlZCAobm8gcmFjZSBjb25kaXRpb24NCj4+ID4+ID4+ICAgIHBvc3Np YmxlKQ0KPj4gPj4gPj4gIC0gZm9yIE1TSS9NU0ktWCBkZWJ1ZyBjb2RlIGJlY2F1c2UgaXQgaXMg Y2FsbGVkIGF0IHRoZSBlbmQgb2YNCj4+ID4+ID4+ICAgIHBkZXYtPnZwY2kgYWNjZXNzIGFuZCBu byBmdXJ0aGVyIGFjY2VzcyB0byBwZGV2LT52cGNpIGlzIG1hZGUNCj4+ID4+ID4+IA0KPj4gPj4g Pj4gOS4gQ2hlY2sgZm9yICFwZGV2LT52cGNpIGluIHZwY2lfe3JlYWR8d3JpdGV9IGFmdGVyIGFj cXVpcmluZyB0aGUgbG9jaw0KPj4gPj4gPj4gYW5kIGlmIHNvLCBhbGxvdyByZWFkaW5nIG9yIHdy aXRpbmcgdGhlIGhhcmR3YXJlIHJlZ2lzdGVyIGRpcmVjdGx5LiBUaGlzIGlzDQo+PiA+PiA+PiBh Y2NlcHRhYmxlIGFzIHdlIG9ubHkgZGVhbCB3aXRoIERvbTAgYXMgb2Ygbm93LiBPbmNlIERvbVUg c3VwcG9ydCBpcw0KPj4gPj4gPj4gYWRkZWQgdGhlIHdyaXRlIHdpbGwgbmVlZCB0byBiZSBpZ25v cmVkIGFuZCByZWFkIHJldHVybiBhbGwgMCdzIGZvciB0aGUNCj4+ID4+ID4+IGd1ZXN0cywgd2hp bGUgRG9tMCBjYW4gc3RpbGwgYWNjZXNzIHRoZSByZWdpc3RlcnMgZGlyZWN0bHkuDQo+PiA+PiA+ PiANCj4+ID4+ID4+IDEwLiBJbnRyb2R1Y2UgcGNpZGV2c190cnlsb2NrLCBzbyB0aGVyZSBpcyBh IHBvc3NpYmlsaXR5IHRvIHRyeSBsb2NraW5nDQo+PiA+PiA+PiB0aGUgcGNpZGV2J3MgbG9jay4N Cj4+ID4+ID4+IA0KPj4gPj4gPj4gMTEuIFVzZSBwY2lkZXYncyBsb2NrIGFyb3VuZCBmb3JfZWFj aF9wZGV2IGFuZCBwY2lfZ2V0X3BkZXZfYnlfZG9tYWluDQo+PiA+PiA+PiB3aGlsZSBhY2Nlc3Np bmcgcGRldnMgaW4gdnBjaSBjb2RlLg0KPj4gPj4gPj4gDQo+PiA+PiA+PiAxMi4gVGhpcyBpcyBi YXNlZCBvbiB0aGUgZGlzY3Vzc2lvbiBhdCBbMV0uDQo+PiA+PiA+PiANCj4+ID4+ID4+IFsxXSBo dHRwczovL3VybGRlZmVuc2UuY29tL3YzL19faHR0cHM6Ly9sb3JlLmtlcm5lbC5vcmcvYWxsLzIw MjIwMjA0MDYzNDU5LjY4MDk2MS00LWFuZHIyMDAwQGdtYWlsLmNvbS9fXzshIUdGXzI5ZGJjUUlV QlBBIXpQeTMxQ1dGV2x5QzB4aEVIaVNqNnJPUGU3UkRTakxyYW5JOUtacWhHNHNzbUNoSk1XdnNQ TEpQUUdUY1Zzbm5vd1pwUDgtTGFLSmtJV0l6Yjh1ZTBEb1loZyQgW2xvcmVbLl1rZXJuZWxbLl1v cmddDQo+PiA+PiA+PiANCj4+ID4+ID4+IFN1Z2dlc3RlZC1ieTogUm9nZXIgUGF1IE1vbm7DqSA8 cm9nZXIucGF1QGNpdHJpeC5jb20+DQo+PiA+PiA+PiBTdWdnZXN0ZWQtYnk6IEphbiBCZXVsaWNo IDxqYmV1bGljaEBzdXNlLmNvbT4NCj4+ID4+ID4+IFNpZ25lZC1vZmYtYnk6IE9sZWtzYW5kciBB bmRydXNoY2hlbmtvIDxvbGVrc2FuZHJfYW5kcnVzaGNoZW5rb0BlcGFtLmNvbT4NCj4+ID4+ID4N Cj4+ID4+ID4gVGhhbmtzLg0KPj4gPj4gPg0KPj4gPj4gPiBJIGhhdmVuJ3QgbG9va2VkIGluIGZ1 bGwgZGV0YWlsLCBidXQgSSdtIGFmcmFpZCB0aGVyZSdzIGFuIEFCQkENCj4+ID4+ID4gZGVhZGxv Y2sgd2l0aCB0aGUgcGVyLWRvbWFpbiB2cGNpIGxvY2sgYW5kIHRoZSBwY2lkZXZzIGxvY2sgaW4N Cj4+ID4+ID4gbW9kaWZ5X2JhcnMoKSB2cyAgdnBjaV9hZGRfaGFuZGxlcnMoKSBhbmQgdnBjaV9y ZW1vdmVfZGV2aWNlKCkuDQo+PiA+PiA+DQo+PiA+PiA+IEkndmUgbWFkZSBzb21lIGNvbW1lbnRz IGJlbG93Lg0KPj4gPj4gDQo+PiA+PiBUaGFuayB5b3UgZm9yIHRoZSByZXZpZXcuIEkgYmVsaWV2 ZSB0aGF0IGl0IGlzIGEgZ29vZCBpZGVhIHRvIGhhdmUgYQ0KPj4gPj4gcGVyLWRvbWFpbiBwZGV2 X2xpc3QgbG9jay4gU2VlIG15IGFuc3dlcnMgYmVsb3cuDQo+PiA+DQo+PiA+IEkgdGhpbmsgaXQn cyBpbXBvcnRhbnQgdGhhdCB0aGUgbG9jayB0aGF0IHByb3RlY3RzIGRvbWFpbi0+cGRldl9saXN0 DQo+PiA+IG11c3QgYmUgdGhlIHNhbWUgdGhhdCBhbHNvIHByb3RlY3RzIHBkZXYtPnZwY2ksIG9y IGVsc2UgeW91IG1pZ2h0IHJ1bg0KPj4gPiBpbnRvIHNpbWlsYXIgQUJCQSBkZWFkbG9jayBzaXR1 YXRpb25zLg0KPj4gPg0KPj4gPiBUaGUgcHJvYmxlbSB0aGVuIGNvdWxkIGJlIHRoYXQgaW4gdnBj aV97cmVhZCx3cml0ZX0geW91IHdpbGwgdGFrZSB0aGUNCj4+ID4gcGVyLWRvbWFpbiBwZGV2IGxv Y2sgaW4gcmVhZCBtb2RlIGluIG9yZGVyIHRvIGdldCB0aGUgcGRldiwgYW5kIGZvcg0KPj4gPiB3 cml0ZXMgdG8gdGhlIGNvbW1hbmQgcmVnaXN0ZXIgb3IgdGhlIFJPTSBCQVIgeW91IHdvdWxkIGhh dmUgdG8NCj4+ID4gdXBncmFkZSBzdWNoIGxvY2sgdG8gYSB3cml0ZSBsb2NrIHdpdGhvdXQgZHJv cHBpbmcgaXQsIGFuZCB3ZSBkb24ndA0KPj4gPiBoYXZlIHN1Y2ggZnVuY3Rpb25hbGl0eSBmb3Ig cncgbG9ja3MgQVRNLg0KPj4gPg0KPj4gPiBNYXliZSBqdXN0IHJlLXN0YXJ0aW5nIHRoZSBmdW5j dGlvbiBrbm93aW5nIHRoYXQgdGhlIGxvY2sgbXVzdCBiZQ0KPj4gPiB0YWtlbiBpbiB3cml0ZSBt b2RlIHdvdWxkIGJlIGEgZ29vZCBzb2x1dGlvbjogd3JpdGVzIHRvIHRoZSBjb21tYW5kDQo+PiA+ IHJlZ2lzdGVyIHdpbGwgYWxyZWFkeSBiZSBzbG93IHNpbmNlIHRoZXkgYXJlIGxpa2VseSB0byBp bnZvbHZlDQo+PiA+IG1vZGlmaWNhdGlvbnMgdG8gdGhlIHAybS4NCj4+IA0KPj4gTG9va3MgbGlr ZSBtb2RpZnlfYmFycygpIGlzIHRoZSBvbmx5IGNhdXNlIGZvciB0aGlzIGV4dGVuZGVkIGxvY2su IEkNCj4+IGtub3cgdGhhdCB0aGlzIHdhcyBkaXNjdXNzZWQgZWFybGllciwgYnV0IGNhbiB3ZSBy ZXdvcmsgbW9kaWZ5X2JhcnMgdG8NCj4+IG5vdCBpdGVyYXRlIG92ZXIgYWxsIHRoZSBwZGV2cz8g V2UgY2FuIHN0b3JlIGNvcHkgb2YgYWxsIGVuYWJsZWQgQkFScyBpbg0KPj4gYSBkb21haW4gc3Ry dWN0dXJlLCBwcm90ZWN0ZWQgYnkgZG9tYWluLT52cGNpX2xvY2suIFNvbWV0aGluZyBha2luIHRv DQo+PiANCj4+IHN0cnVjdCB2cGNpX2JhciB7DQo+PiAgICAgICAgIGxpc3RfaGVhZCBsaXN0Ow0K Pj4gICAgICAgICBzdHJ1Y3QgdnBjaSAqdnBjaTsNCj4+ICAgICAgICAgdW5zaWduZWQgbG9uZyBz dGFydDsNCj4+ICAgICAgICAgdW5zaWduZWQgbG9uZyBlbmQ7DQo+PiAgICAgICAgIGJvb2wgaXNf cm9tOw0KPj4gfTsNCj4NCj4gVGhpcyBJTU8gbWFrZXMgdGhlIGxvZ2ljIG1vcmUgY29tcGxpY2F0 ZWQsIGFzIGVhY2ggdGltZSBhIEJBUiBpcw0KPiB1cGRhdGVkIHdlIHdvdWxkIGhhdmUgdG8gY2hh bmdlIHRoZSBjYWNoZWQgYWRkcmVzcyBhbmQgc2l6ZSBpbiB0d28NCj4gZGlmZmVyZW50IHBsYWNl cy4gIEl0J3MgYWxzbyBkdXBsaWNhdGVkIGRhdGEgdGhhdCB0YWtlcyB1cCBtZW1vcnksIGFuZA0K PiB0aGVyZSBhcmUgc3lzdGVtIHdpdGggYSBub24tdHJpdmlhbCBhbW91bnQgb2YgUENJIGRldmlj ZXMgYW5kIHRodXMNCj4gQkFScyB0byB0cmFjay4NCj4NCj4gSSB0aGluayBpdCdzIGVhc2llciB0 byBqdXN0IG1ha2UgdGhlIG5ld2x5IGludHJvZHVjZWQgcGVyLWRvbWFpbg0KPiByd2xvY2sgYWxz byBwcm90ZWN0IHRoZSBkb21haW4ncyBwZGV2X2xpc3QgKHVubGVzcyBJJ20gbWlzc2luZw0KPiBz b21ldGhpbmcpLiAgQUZBSUNUIGl0IHdvdWxkIGFsc28gc2ltcGxpZnkgbG9ja2luZywgYXMgc3Vj aCByd2xvY2sNCj4gcHJvdGVjdGluZyB0aGUgZG9tYWluLT5wZGV2X2xpc3Qgd2lsbCBhdm9pZCB5 b3UgZnJvbSBoYXZpbmcgdG8gdGFrZQ0KPiB0aGUgcGNpZGV2cyBsb2NrIGluIHZwY2lfe3JlYWQs d3JpdGV9IGluIG9yZGVyIHRvIGZpbmQgdGhlIGRldmljZSB0aGUNCj4gYWNjZXNzIGJlbG9uZ3Mg dG8uDQoNCkluIG15IG9waW5pb24sIHRoaXMgd2lsbCBtYWtlIHRoZSB3aG9sZSBsb2NraW5nIGxv Z2ljIGNvbXBsZXgsIGJlY2F1c2UNCndlIHdpbGwgaGF2ZSBvbmUgcndsb2NrIHRoYXQgcHJvdGVj dHM6DQoNCjEuIHBkZXYtPnZwY2kNCjIuIGRvbWFpbi0+cGRldl9saXN0DQoNClRoaXMgaXMgYSB0 d28gc2VtaS1yZWxhdGVkIHRoaW5ncy4gSSBmZWVsIHRoYXQgdGhpcyB3aWxsIGJlIGhhcmQgdG8N CnVuZGVyc3RhbmQgZm9yIGFueW9uZSB3aG8gaXMgbm90IGRlZXBseSBpbnRpbWF0ZSB3aXRoIHRo ZSBQQ0kNCmNvZGUuIEFueXdheXMsIEkgd2FudCB0aGlzIHBhdGNoIHNlcmllcyB0byBnZXQgZ29p bmcsIHNvIEkgYmVsaWV2ZSB5b3VyDQpqdWRnbWVudCBoZXJlLiBIb3cgc2hvdWxkIEkgbmFtZSB0 aGlzIGxvY2s/IFRha2luZyBpbnRvIGFjY291bnQsIHRoYXQNCnNjb3BlIGlzIHdpbGwgYmUgbW9y ZSBicm9hZCwgImRvbWFpbi0+dnBjaV9yd2xvY2siIGRvZXMgbm90IHNlZW1zIGFzIGENCmdvb2Qg bmFtZS4NCg0KLS0gDQpXQlIsIFZvbG9keW15cg== From xen-devel-bounces@lists.xenproject.org Fri Jun 23 13:44:21 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 23 Jun 2023 13:44:21 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554355.865496 (Exim 4.92) (envelope-from ) id 1qCh4z-0000Q8-ST; Fri, 23 Jun 2023 13:44:01 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554355.865496; Fri, 23 Jun 2023 13:44:01 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCh4z-0000Q1-Oa; Fri, 23 Jun 2023 13:44:01 +0000 Received: by outflank-mailman (input) for mailman id 554355; Fri, 23 Jun 2023 13:44:01 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCh4y-0000Pv-Se for xen-devel@lists.xenproject.org; Fri, 23 Jun 2023 13:44:01 +0000 Received: from NAM11-BN8-obe.outbound.protection.outlook.com (mail-bn8nam11on20600.outbound.protection.outlook.com [2a01:111:f400:7eae::600]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id ff4d741e-11cb-11ee-8611-37d641c3527e; Fri, 23 Jun 2023 15:43:56 +0200 (CEST) Received: from DM6PR12MB2618.namprd12.prod.outlook.com (2603:10b6:5:49::24) by DM3PR12MB9288.namprd12.prod.outlook.com (2603:10b6:0:4a::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.24; Fri, 23 Jun 2023 13:43:52 +0000 Received: from DM6PR12MB2618.namprd12.prod.outlook.com ([fe80::5d93:3c0:a046:a2dd]) by DM6PR12MB2618.namprd12.prod.outlook.com ([fe80::5d93:3c0:a046:a2dd%4]) with mapi id 15.20.6521.024; Fri, 23 Jun 2023 13:43:51 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: ff4d741e-11cb-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=eFoSxA9P/bSIlwVtWr7BvVNecCKTLOHrC81JbbE3mL4qLQvFDQWf5ndZK6Z83aG/Xb/gTbLqk8Diup7o+u81+1HZbumBbc4pSaXeaMZjh1vuyi/lfVKwvJIW5pLgRsfUkQ9tPs//rk8cUxSyc+3myv1wRIF/USjklebWSbVphHarXzteIw2rj5+D9XY0fSqTr9Dwm/Je50XOkTesGuLVBkqfNmcYcU630csWbuvz/1ZdUt6uSD0VS44AKx2BONLa/MOKqu8JOCM3ydAPrwzmJiOJerZhFkWrgKSsEs0WcUeqOUdaw8ebbh9dp7z1Df2Z2ZW375k6GG2+B5VCT/S+Ug== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=T6TMpsY9UzQWqypnmJrlcFqSKooAHnszDAhKCVMKBX0=; b=bWUeRGJKGV+ajz3SWWgyJEPbqRUYnNPqT305hP3zJOCj9nFj24AxXNDE1Dqg1i308iuJwARgx8YDPVvuMzkRdtHibR8/4DxZ7yZA7ix/Z/0gC2a9PKuVJ9rJ2J+Vjs3DPgfq9ap2IxKcZejh4Ui/j2vgwBEBCey7Ptru3k7Rx5Wb5OBR3cx8OkDl78x2UQ2Lci1pvDREX33+MoDv0ZCmUAlm3rk2oZlzz5nunnspU11sK3e7Ko/W3kbO9aj+plHbRVU0Hfkonq9AxiXrfCN9aXbomc0w81XRYwgRbodJNMyYKU7gLwxIdxFhMdKonK36fTiM6cOwVUYL7hwFqvsZDQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass header.d=amd.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=T6TMpsY9UzQWqypnmJrlcFqSKooAHnszDAhKCVMKBX0=; b=0o7p5ydKkCBZzDUknDBH+Ll/8tvtjwYSp7+n5ohwYk1h3d7TtX8ilYQS2NjhodH+PhO9yB86ubMlLMORwuspUDo4aekFpuisfw1SpGT9DetPxcamfbydQmstZwBkbpN3ieK6Fkhc6PGvvdgRPaUQQ+QMRmJ3XI7DLDEicLVtlLA= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=amd.com; Message-ID: <75008370-7141-757c-0768-14b654724f07@amd.com> Date: Fri, 23 Jun 2023 14:43:44 +0100 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH v1] xen/arm: arm32: Add support to identify the Cortex-R52 processor To: Julien Grall , Ayan Kumar Halder , xen-devel@lists.xenproject.org Cc: sstabellini@kernel.org, stefano.stabellini@amd.com, Volodymyr_Babchuk@epam.com, bertrand.marquis@arm.com References: <20230620151736.3720850-1-ayan.kumar.halder@amd.com> <3b7f584e-700e-4598-f36e-51a96140323e@xen.org> <030fc5e8-8293-2306-06eb-9275c2a2c9e5@xen.org> <2fbf6885-5bb8-4b49-522d-eb265349d4b7@xen.org> From: Ayan Kumar Halder In-Reply-To: <2fbf6885-5bb8-4b49-522d-eb265349d4b7@xen.org> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO4P265CA0116.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:2c3::16) To DM6PR12MB2618.namprd12.prod.outlook.com (2603:10b6:5:49::24) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DM6PR12MB2618:EE_|DM3PR12MB9288:EE_ X-MS-Office365-Filtering-Correlation-Id: d6c0256e-8ad3-4d46-c392-08db73efe13d X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: HFVbVfjqZ0QcviHWhBfFa8DDTPyy+Rk6vGb7CLMU/kSVTuiGawpFzWI/bi/PjKrRZpUOdz2eIKhLlrOnVlhb/41VaSxT1nv2oxTPjmFMAKiQd6LlsNjP9SL4fIBdiT6gpJD1UQOiQKCIqjy6q2KuOKhmrPP+46sufyGRS5kVMMCp3MQ/WCz/eNzKF41iJKIigOw7v/HI4GS4kCpGrm6uYpa79ASJz+//DljC8PlOb1WOY19kedEFyTLiQmDNn1z73JfhY5kh2F9Ksui0RC94ZGnxGWJhcRS15wGc+SYzuRS77AZrQBes4IMcBgFA3z6LHOzKlP/gxQzPuYy9Pc24B1FDgVzvUtOYYxOWM6CSxPGXpG3YNnvXL80GbI1fhwEnANARjBloA4rfkwoPhFlDovBOcoZXSc25r9DftxZXl7quIk2GJXSJ14Km2Y56XtXnQuKBdZ9JCnnqAuBa4/kyVH7cfPAOd9vjwbFSBy4W6f3BTTPhGDK+KveOjllAvpw2+SDvbIn3+pHh7loTb58xaVCL0NtkB7KFLOXs43wjIXUuZEQsZAP8gwCHlo+KW5yzTfy0Rh43F+TIdtRysGM34LqNMcy/O2vDuXcZ8MEBcdbMJl+CQOa8XoIUsCmj++6bFhp0I6pzajJkTTXshr99nw== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DM6PR12MB2618.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(396003)(376002)(136003)(346002)(39860400002)(366004)(451199021)(6666004)(478600001)(4326008)(110136005)(26005)(6506007)(53546011)(186003)(6486002)(966005)(6512007)(2906002)(66946007)(8676002)(8936002)(316002)(5660300002)(66476007)(66556008)(41300700001)(38100700002)(31696002)(36756003)(2616005)(83380400001)(31686004)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?YlRlV2IyWDNUd3pEb2U1NUxxVzdobTI5RTJHbmFFeVhQQ3Z1NFFUZmo4SG5z?= =?utf-8?B?NHpnR3JCSEtRS0QxREZEWlQ2eFRucXFtV0tKbXdkVDRmaXI2Z29zc010Qzdk?= =?utf-8?B?b3F6SEpSS0UvUXlTRGlHNHVIL0g2WlpkWjFKMEF0cVNGOHdqRHE1YmdOYjlR?= =?utf-8?B?bWp2UjJYK2VzeFJkSXZIcjUzY1B3b0RmL091YkQ1THlmMk1tMU5jYkN0eHBI?= =?utf-8?B?STRiT2ppSFM3Q0p0aEdneVZMM3FUQWx2MDhYUXFIZUhjSGZ6L0ZCby9FRDRy?= =?utf-8?B?NVl3K1ZJZUYvSndPblVGSnBEOStNaE1BL3A2elRWbDZ6NTQ5MXBaUHRGd0FC?= =?utf-8?B?VFo1RXlTTHYzdWRkN0RzM0RRMUFsY3hPYitxMFlydHVrblNtd0wvUWxlUUoz?= =?utf-8?B?MmhBNHBiWUpwMEVveEhhRXQ0SWhZTkNJQ0FKb2RNcURsSE9uNEJwckQvaHpC?= =?utf-8?B?NXhHRmxyQlE4Z3hKSkNrbWlXU2d4ajc3ZS80ak53Y3NWc3FIK2w4RFMvR012?= =?utf-8?B?cHhzbGlSM3RWdFhXVWRIUlF0YTdDWnNTYUVtd2xkMytQZHRtZXBGTzYyZTNx?= =?utf-8?B?UFlOZFlJS09EamtkL2FHaVlFR3N0alhCL2hjRlZwcVFKRzZGcDNqM25TKzZp?= =?utf-8?B?V2lzTFhUQ0dSRGpLZk1FdUxtdmE0ZDJYU3RxZHpvczM5M1BiTWMwc2FxNnov?= =?utf-8?B?bnJFbFVua3FHNjhmUExQTXBTWjB1K2krdGw4RFZSc3V1MDRFbWFQcUhSNTh5?= =?utf-8?B?dzZST21nSmRWYnd0bHpzTDBOZFdSSE1HRWFQajBCV2xJTmM0ZlB1VTZyamQ4?= =?utf-8?B?NFN2QlA1M2dXeWdOVkp1MG85d2pxUnYrV1Qxd0xsQTdPTmpRYTMzaVVnZ3p3?= =?utf-8?B?RzRtWU1RRDZnU1M0SzBCYmEvT2JuTjZ2WU1SZ1pmNlVKWm5udTFqQWtYVU1R?= =?utf-8?B?SzBSZ0kzSlFYa1lscEd4NEMwUHh1VUwzaW1ReGswbWF0YW5RelZPQ3dkRkNP?= =?utf-8?B?LzQ1Z0xaT0cyK0tuMTBTZjlEeUE1YmkyYU93MWtxeDRHbkI3WEhRWFA5dHBk?= =?utf-8?B?TW9mV09nZmZ4eTc2Ny9ENDRDWnVyb0U3cE5rTlBzTzRla0o4WlN4amphTHhW?= =?utf-8?B?NDdxVENsOFR5WHVjYjJkNXQ5R0ovYVB4VGxDQk1wR1pQTk9vMFFuU0x2c3dz?= =?utf-8?B?bVZGTmFNM1p5eFRUTG9udHVWSFFSSjBORVdFSS9XQmlENDVPZFNGREoyZ1dO?= =?utf-8?B?b3dmSExabG5LNnhYQW92RnZDMjRmK2x6dThsMnFUbFFrV29IU1VWTDRxMTZm?= =?utf-8?B?eG9GMDdGVWhJa1ZDZlJ3TEplYVFnN3VoYmhQcXJ0eFlPbDZMd1lMV0F0OU8v?= =?utf-8?B?MVBNdTNyTnVkUmlhMWVYK1JodU9zMG5LZGdwS0VrbEJUTktVUk90ZW1vNDhB?= =?utf-8?B?U0V4YXV4Y0toOWFyN1pzY001V3pOUzg2WXo3ZE5pTDgrOGlmNWRISllqc3Vn?= =?utf-8?B?MEF3aXltT3FPdnR0VDdrTmFtTFJuT1RLRHk2WXpCSWpZbWt6eGorUE9uZ2Nj?= =?utf-8?B?ZVRNY01EQjBLT3pUZWhZNGdGcXBJbVhpbUk5Mk1YSzFoU2FzL0lrNXJleFdF?= =?utf-8?B?REU5NnlzbjdLR3JxYTJkVkl6c2dYdVNSUWE5eUFTRWV6WEtEZHhHcHA5dE5T?= =?utf-8?B?S2FCZHYrdTZxUjB5VUhJSk5LdXJaQjh3MUIzT0JFdUNhSnV0cXlBZUM3L3du?= =?utf-8?B?enFqNjFLaUUzdnNOY0ZhM1ozWnY1cjlZMTQ1L2RmYzBxcjk1VmFVK0ViZkMz?= =?utf-8?B?cG5lamhDZkxvZ0Jtb2FtUFB0R0FFNzkvaTdGRG9UMkorWVVxcmFZMVVsWnVO?= =?utf-8?B?bzlKNDY3aHhKR3VCUU1BNks3UkhtZTVpTVlEVU45OEpQQ0FTTTduUFFIZVRQ?= =?utf-8?B?Nkg3TUJZM1RkajZzRHVoN3QyL1hWajI3MlZnZlM0c0dCZHJCcXpERXhqTGZ3?= =?utf-8?B?RmlzWVhrS2NwZFV0MWQwY3ZOZlNQbmVtay8rRG5XQUlYT1F2SmpnMXJJVXo5?= =?utf-8?B?aXBQcG1lR2JlcC9zY094YWZFdUJRY1NITGpYY3RKcDZGQStWY2RhVVM2TWFG?= =?utf-8?Q?M35ae+clFIWrs3o7MJiz4gJD6?= X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-Network-Message-Id: d6c0256e-8ad3-4d46-c392-08db73efe13d X-MS-Exchange-CrossTenant-AuthSource: DM6PR12MB2618.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Jun 2023 13:43:51.8424 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: EGGibLuBUD3NHDUW4ynVAL65oeKVx5rbKUvTSIkAPTpuiZQ6mNkaOBpOM6RBGMd463MbezXoyDExcVkTNGp8vQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM3PR12MB9288 On 22/06/2023 17:32, Julien Grall wrote: > Hi, Hi Julien, > > On 22/06/2023 16:41, Ayan Kumar Halder wrote: >> >> On 22/06/2023 10:22, Julien Grall wrote: >>> Hi Ayan, >> Hi Julien, >>> >>> On 22/06/2023 09:59, Ayan Kumar Halder wrote: >>>> >>>> On 20/06/2023 21:43, Julien Grall wrote: >>>>> Hi Ayan, >>>> Hi Julien, >>>>> >>>>> On 20/06/2023 19:28, Ayan Kumar Halder wrote: >>>>>> >>>>>> On 20/06/2023 17:41, Julien Grall wrote: >>>>>>> Hi, >>>>>> Hi Julien, >>>>>>> >>>>>>> On 20/06/2023 16:17, Ayan Kumar Halder wrote: >>>>>>>> Add a special configuration (CONFIG_AARCH32_V8R) to setup the >>>>>>>> Cortex-R52 >>>>>>>> specifics. >>>>>>>> >>>>>>>> Cortex-R52 is an Arm-V8R AArch32 processor. >>>>>>>> >>>>>>>> Refer ARM DDI 0487I.a ID081822, G8-9647, G8.2.112 MIDR, >>>>>>>> bits[31:24] = 0x41 , Arm Ltd >>>>>>>> bits[23:20] = Implementation defined >>>>>>>> bits[19:16] = 0xf , Arch features are individually identified >>>>>>>> bits[15:4] = Implementation defined >>>>>>>> bits[3:0] = Implementation defined >>>>>>>> >>>>>>>> Thus, the processor id is 0x410f0000 and the processor id mask is >>>>>>>> 0xff0f0000 >>>>>>>> >>>>>>>> Also, there is no special initialization required for R52. >>>>>>> >>>>>>> Are you saying that Xen upstream + this patch will boot on >>>>>>> Cortex-R52? >>>>>> >>>>>> This patch will help for earlyboot of Xen. With this patch, >>>>>> cpu_init() will work on Cortex-R52. >>>>>> >>>>>> There will be changes required for the MPU configuration, but >>>>>> that will be sent after Penny's patch serie "[PATCH v2 00/41] >>>>>> xen/arm: Add Armv8-R64 MPU support to Xen - Part#1" is upstreamed. >>>>>> >>>>>> My aim is to extract the non-dependent changes and send them for >>>>>> review. >>>>> >>>>> I can review the patch. But I am not willing to merge it as it >>>>> gives the false impression that Xen would boot on Cortex-R52. >>>>> >>>>> In fact, I think this patch should only be merged once we have all >>>>> the MPU merged. >>>>> >>>>> IMHO, patches are independent are rework (e.g. code split...) that >>>>> would help the MPU. >>>> >>>> Yes, that's exactly what I intend to do. I will send out the >>>> patches (similar to this) which will not be impacted by the MPU >>>> changes. >>>> >>>> So, that both as an author/reviewer, it helps to restrict MPU serie >>>> to only MPU specific changes. > >>>> Can you suggest some change to the commit message, so that we can >>>> commit it (without giving any false impression that Xen boots on >>>> Cortex-R52) > >>>> May be adding this line to the commit message helps ? > >>>> "However, Xen does not fully boot on Cortex-R52 as it requires MPU >>>> support which is under review. > >>>> Once Xen is supported on Cortex-R52, SUPPORT.md will be amended to >>>> reflect it." >>> >>> While writing an answer for this patch, I was actually wondering >>> whether the CPU allowlist still make sense for the 32-bit ARMv8-R? >>> >>> From Armv7-A, we needed it because some CPUs need specific quirk >>> when booting. But it would be best if we can get rid of it for >>> 32-bit ARMv8-R. >>> >>> Looking at your patch, your merely providing stubs. Do you have any >>> plan to fill them up? >> >> Actually, I would use cr52_init in a later patch to write to CNTFRQ. >> See below :- >> >> +#define XPAR_CPU_CORTEXR52_0_TIMESTAMP_CLK_FREQ  800000U >> + >>   cr52_init: >> +        /* >> +         * Set counter frequency  800 KHZ >> +         * >> +         * Set counter frequency, CNTFRQ >> +         */ >> +        ldr     r0,=XPAR_CPU_CORTEXR52_0_TIMESTAMP_CLK_FREQ >> +        mrc     15,0,r1,c14,c0,0  /* Read CNTFRQ */ >> +        cmp     r1,#0 >> +        /* Set only if the frequency read is 0 */ >> +        mcreq   15,0,r0,c14,c0,0  /* Write CNTFRQ */ >> + >>           mov pc, lr > > Why can't you use the device-tree (see clock-frequency) as all the > other buggy platform does? That's a good suggestion :). Also, I can do this in the platform specific .init(). Then, can I add the empty stubs for R52 (similar to https://elixir.bootlin.com/linux/latest/source/arch/arm/mm/proc-v7m.S#L165 Cortex-M7, cpu_v7m_proc_init(), cpu_v7m_switch_mm() are stubs). Or do you propose something like this :- --- a/xen/arch/arm/arm32/head.S +++ b/xen/arch/arm/arm32/head.S @@ -322,7 +322,7 @@ cpu_init:          PRINT("- Setting up control registers -\r\n")          mov   r5, lr                       /* r5 := return address */ - +#ifndef CONFIG_ARM_NO_PROC_INIT          /* Get processor specific proc info into r1 */          bl    __lookup_processor_type          teq   r1, #0 @@ -337,7 +337,7 @@ cpu_init:          ldr   r1, [r1, #PROCINFO_cpu_init]  /* r1 := vaddr(init func) */          adr   lr, cpu_init_done             /* Save return address */          add   pc, r1, r10                   /* Call paddr(init func) */ - +#endif  cpu_init_done: And we introduce this new bool Kconfig option "CONFIG_ARM_NO_PROC_INIT" which will be defined for processors that do not need any special init (eg R52). - Ayan > > Cheers, > From xen-devel-bounces@lists.xenproject.org Fri Jun 23 14:28:03 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 23 Jun 2023 14:28:03 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554360.865506 (Exim 4.92) (envelope-from ) id 1qChlU-0004u9-86; Fri, 23 Jun 2023 14:27:56 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554360.865506; Fri, 23 Jun 2023 14:27:56 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qChlU-0004u2-41; Fri, 23 Jun 2023 14:27:56 +0000 Received: by outflank-mailman (input) for mailman id 554360; Fri, 23 Jun 2023 14:27:54 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qChlS-0004tw-NL for xen-devel@lists.xenproject.org; Fri, 23 Jun 2023 14:27:54 +0000 Received: from raptorengineering.com (mail.raptorengineering.com [23.155.224.40]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 22736f85-11d2-11ee-8611-37d641c3527e; Fri, 23 Jun 2023 16:27:52 +0200 (CEST) Received: from localhost (localhost [127.0.0.1]) by mail.rptsys.com (Postfix) with ESMTP id C7117828571D; Fri, 23 Jun 2023 09:27:50 -0500 (CDT) Received: from mail.rptsys.com ([127.0.0.1]) by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032) with ESMTP id HF0ZM3S5eC_1; Fri, 23 Jun 2023 09:27:49 -0500 (CDT) Received: from localhost (localhost [127.0.0.1]) by mail.rptsys.com (Postfix) with ESMTP id 5732B8285A11; Fri, 23 Jun 2023 09:27:49 -0500 (CDT) Received: from mail.rptsys.com ([127.0.0.1]) by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id BplJPdri-zzU; Fri, 23 Jun 2023 09:27:49 -0500 (CDT) Received: from [10.11.0.2] (5.edge.rptsys.com [23.155.224.38]) by mail.rptsys.com (Postfix) with ESMTPSA id D3EAE828571D; Fri, 23 Jun 2023 09:27:48 -0500 (CDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 22736f85-11d2-11ee-8611-37d641c3527e DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com 5732B8285A11 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD; t=1687530469; bh=GxV8eMSByDnTreP66FXs7edl3xtHz/0BHkjJas6RxrA=; h=Message-ID:Date:MIME-Version:To:From; b=J7ENgDGtZSnOoaY26RzOB5ISHmuO7av/wvlX7qGo7kS4gXxwOcGVKbgm7j+SAVB1D iA34zIaEFk2bEO9PHuW86tCc8dpaCKTO8lN80iboUn5XdAl4ZL9//mZafJZdzMElaS 1njcZwLxe/Ha+QNZ+CLaNQcRmIgUng/lNyD4Ah8M= X-Virus-Scanned: amavisd-new at rptsys.com Message-ID: <0c3f4685-83a6-659a-075b-d5a16b8fa416@raptorengineering.com> Date: Fri, 23 Jun 2023 09:27:48 -0500 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux ppc64le; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v2 0/3] Early serial on Power Content-Language: en-US To: Jan Beulich Cc: Timothy Pearson , Andrew Cooper , Julien Grall , Doug Goldstein , Stefano Stabellini , xen-devel@lists.xenproject.org References: <497fae66-a67c-cd0c-c198-5e54f8ba180a@suse.com> From: Shawn Anastasio In-Reply-To: <497fae66-a67c-cd0c-c198-5e54f8ba180a@suse.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit On 6/23/23 1:42 AM, Jan Beulich wrote: > On 22.06.2023 22:57, Shawn Anastasio wrote: >> Changes in v2: >> - Split main patch into two - one for basic C environment setup and >> one for serial >> - Mark OpenFirmware functions and early_printk functions as __init and >> change boot-of.o to boot-of.init.o in Makefile >> - Change include to and drop skeleton >> headers that are no longer necessary for build as a result > > What is this about? There's no change to non-ppc files here > according to ... > >> automation/gitlab-ci/test.yaml | 20 ++++ >> automation/scripts/qemu-smoke-ppc64le.sh | 27 +++++ >> xen/arch/ppc/Kconfig.debug | 5 + >> xen/arch/ppc/Makefile | 3 + >> xen/arch/ppc/boot-of.c | 100 +++++++++++++++++ >> xen/arch/ppc/configs/ppc64_defconfig | 1 + >> xen/arch/ppc/early_printk.c | 28 +++++ >> xen/arch/ppc/include/asm/asm-defns.h | 53 +++++++++ >> xen/arch/ppc/include/asm/boot.h | 23 ++++ >> xen/arch/ppc/include/asm/byteorder.h | 12 ++ >> xen/arch/ppc/include/asm/early_printk.h | 15 +++ >> xen/arch/ppc/include/asm/msr.h | 51 +++++++++ >> xen/arch/ppc/include/asm/processor.h | 136 +++++++++++++++++++++++ >> xen/arch/ppc/include/asm/types.h | 21 ++++ >> xen/arch/ppc/ppc64/Makefile | 1 + >> xen/arch/ppc/ppc64/asm-offsets.c | 55 +++++++++ >> xen/arch/ppc/ppc64/head.S | 55 +++++---- >> xen/arch/ppc/ppc64/of-call.S | 83 ++++++++++++++ >> xen/arch/ppc/setup.c | 28 +++++ >> 19 files changed, 697 insertions(+), 20 deletions(-) > > ... this. Plus lib.h already includes stdarg.h. Sorry, that was a bit ambiguous on my part. I meant that I changed #include to #include in arch/ppc/boot-of.c to reduce the number of headers that I needed to create in arch/ppc/include/asm in order for the build to work. lib.h includes (directly and indirectly) many things from asm/ but stdarg.h is mostly standalone. > Jan Thanks, Shawn From xen-devel-bounces@lists.xenproject.org Fri Jun 23 14:42:17 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 23 Jun 2023 14:42:17 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554365.865516 (Exim 4.92) (envelope-from ) id 1qChzC-0007Hi-ES; Fri, 23 Jun 2023 14:42:06 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554365.865516; Fri, 23 Jun 2023 14:42:06 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qChzC-0007Hb-Ac; Fri, 23 Jun 2023 14:42:06 +0000 Received: by outflank-mailman (input) for mailman id 554365; Fri, 23 Jun 2023 14:42:05 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qChzB-0007HV-CV for xen-devel@lists.xenproject.org; Fri, 23 Jun 2023 14:42:05 +0000 Received: from raptorengineering.com (mail.raptorengineering.com [23.155.224.40]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 1d8ce476-11d4-11ee-8611-37d641c3527e; Fri, 23 Jun 2023 16:42:02 +0200 (CEST) Received: from localhost (localhost [127.0.0.1]) by mail.rptsys.com (Postfix) with ESMTP id BFB978285255; Fri, 23 Jun 2023 09:42:01 -0500 (CDT) Received: from mail.rptsys.com ([127.0.0.1]) by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032) with ESMTP id EwVgOd5TrmY6; Fri, 23 Jun 2023 09:42:01 -0500 (CDT) Received: from localhost (localhost [127.0.0.1]) by mail.rptsys.com (Postfix) with ESMTP id E933A8285317; Fri, 23 Jun 2023 09:42:00 -0500 (CDT) Received: from mail.rptsys.com ([127.0.0.1]) by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id KSRGtS6KFr_X; Fri, 23 Jun 2023 09:42:00 -0500 (CDT) Received: from [10.11.0.2] (5.edge.rptsys.com [23.155.224.38]) by mail.rptsys.com (Postfix) with ESMTPSA id 74E578285255; Fri, 23 Jun 2023 09:42:00 -0500 (CDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 1d8ce476-11d4-11ee-8611-37d641c3527e DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com E933A8285317 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD; t=1687531321; bh=Q9HcTpx8iRHUQamtZVm6nZ+ZHNEAxcrWLkpuHvwgTis=; h=Message-ID:Date:MIME-Version:To:From; b=KmBlhpRg5wfiCJhaV4gCVhoCC5MiZKEz9PdelsxSfORtJf4hHt2B7PM2CjzCiveVF 5izeN2zs/ayq/FVcpfa7Q1PLTT5ZHUNvceD1wOgNpUdLFIOUChepFgJzwet8LN02DT RznfCHb9wNaOjd0TYdOmzrgMAo1a9Tf5MXhdMh70= X-Virus-Scanned: amavisd-new at rptsys.com Message-ID: <097fee60-67d1-b97b-c28d-52ab8b295518@raptorengineering.com> Date: Fri, 23 Jun 2023 09:41:59 -0500 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux ppc64le; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v2 1/3] xen/ppc: Set up a basic C environment Content-Language: en-US To: Jan Beulich Cc: Timothy Pearson , Julien Grall , Andrew Cooper , xen-devel@lists.xenproject.org References: <1afe27097c5e1b55dcffa9464dc0cd0c1038a23e.1687466822.git.sanastasio@raptorengineering.com> <5011cde3-b553-6a17-85aa-a30edf3102fd@raptorengineering.com> From: Shawn Anastasio In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit On 6/23/23 1:34 AM, Jan Beulich wrote: > On 23.06.2023 03:26, Shawn Anastasio wrote: >> On 6/22/23 5:49 PM, Andrew Cooper wrote: >>> On 22/06/2023 9:57 pm, Shawn Anastasio wrote: >>>> --- /dev/null >>>> +++ b/xen/arch/ppc/setup.c >>>> @@ -0,0 +1,13 @@ >>>> +/* SPDX-License-Identifier: GPL-2.0-or-later */ >>>> +#include >>>> + >>>> +void __init noreturn start_xen(unsigned long r3, unsigned long r4, >>>> + unsigned long r5, unsigned long r6, >>>> + unsigned long r7) >>>> +{ >>>> + for ( ;; ) >>>> + /* Set current hardware thread to very low priority */ >>>> + asm volatile("or %r31, %r31, %r31"); >>> >>> Is there something magic about the OR instruction, or something magic >>> about %r31? >> >> Using the OR instruction with all three operands equal is of course a >> no-op, but when using certain registers it can have a separate magic >> side effect. >> >> `or r31,31,31` is one such form that sets the Program Priority Register >> to "very low" priority. Of course here where we don't have SMP going >> there's not much point in using this over the standard side effect-less >> no-op (`or r0,r0,r0` or just `nop`). >> >> For a table of these magic OR forms, you can see page 836 of the Power >> ISA 3.0B: >> https://wiki.raptorcs.com/w/images/c/cb/PowerISA_public.v3.0B.pdf > > I have 3.1 to hand, and it looks like they were dropped from there? > Otherwise I was meaning to say that it's a shame gas doesn't support > these. No, they're still present in ISA 3.1B. See page 1084, Book II Chapter 3 Section 2. > Anyway - I think you want to put this behind a macro named after the > pseudo. Sure, that makes sense to me. > Finally, as a nit: Style above is lacking several blanks. One > between the two semicolons, and a total of three in the asm(). Just to be sure, would the following be correct? for ( ; ; ) /* Set current hardware thread to very low priority */ asm volatile ( "or %r31, %r31, %r31" ); Not including the refactor of that instruction to a macro, of course. > Jan Thanks, Shawn From xen-devel-bounces@lists.xenproject.org Fri Jun 23 15:04:36 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 23 Jun 2023 15:04:36 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554370.865526 (Exim 4.92) (envelope-from ) id 1qCiKm-0001LU-8S; Fri, 23 Jun 2023 15:04:24 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554370.865526; Fri, 23 Jun 2023 15:04:24 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCiKm-0001LN-4d; Fri, 23 Jun 2023 15:04:24 +0000 Received: by outflank-mailman (input) for mailman id 554370; Fri, 23 Jun 2023 15:04:22 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCiKk-0001LD-JN; Fri, 23 Jun 2023 15:04:22 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCiKk-0003Fb-2G; Fri, 23 Jun 2023 15:04:22 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCiKj-00044S-MD; Fri, 23 Jun 2023 15:04:21 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qCiKj-0003GQ-Lf; Fri, 23 Jun 2023 15:04:21 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=Y8r4wSoX7Na3lsqeC5DCCDS9/YJr9CaCd15rkz7+qtk=; b=krKRqq1Jfc9criTzir5SQcaUvz eVWxH8I3Er62sAUAkzbCddDBcs2FHYXixPitW7aVpsdXXSCBTc5yZRPniOLXnNYD0iA9+6CkOphtp gH6K1v42fGKuZ5e1xrAXacSe04gYBZDSr6JmkWmYVJDX9JXNbMP+O5x7tw3sGfE+N334=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable test] 181558: regressions - FAIL X-Osstest-Failures: xen-unstable:test-amd64-amd64-xl-qcow2:guest-start/debian.repeat:fail:regression xen-unstable:test-amd64-amd64-xl:guest-localmigrate/x10:fail:heisenbug xen-unstable:test-armhf-armhf-xl-vhd:guest-start:fail:heisenbug xen-unstable:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:debian-hvm-install:fail:heisenbug xen-unstable:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-vhd:guest-start/debian.repeat:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking X-Osstest-Versions-This: xen=5c84f1f636981dab5341e84aaba8d4dd00bbc2cb X-Osstest-Versions-That: xen=7a25a1501ca941c3e01b0c4e624ace05417f1587 From: osstest service owner Date: Fri, 23 Jun 2023 15:04:21 +0000 flight 181558 xen-unstable real [real] http://logs.test-lab.xenproject.org/osstest/logs/181558/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: test-amd64-amd64-xl-qcow2 21 guest-start/debian.repeat fail REGR. vs. 181545 Tests which are failing intermittently (not blocking): test-amd64-amd64-xl 20 guest-localmigrate/x10 fail in 181552 pass in 181558 test-armhf-armhf-xl-vhd 13 guest-start fail pass in 181552 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm 12 debian-hvm-install fail pass in 181552 Tests which did not succeed, but are not blocking: test-armhf-armhf-xl-vhd 14 migrate-support-check fail in 181552 never pass test-armhf-armhf-xl-vhd 15 saverestore-support-check fail in 181552 never pass test-amd64-amd64-libvirt-vhd 19 guest-start/debian.repeat fail like 181528 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 181545 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop fail like 181545 test-armhf-armhf-libvirt 16 saverestore-support-check fail like 181545 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 181545 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 181545 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop fail like 181545 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop fail like 181545 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail like 181545 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 181545 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail like 181545 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop fail like 181545 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 181545 test-amd64-i386-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-i386-xl-pvshim 14 guest-start fail never pass test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-i386-libvirt 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-i386-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 15 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass test-armhf-armhf-libvirt 15 migrate-support-check fail never pass test-armhf-armhf-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 15 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 16 saverestore-support-check fail never pass test-armhf-armhf-xl 15 migrate-support-check fail never pass test-armhf-armhf-xl 16 saverestore-support-check fail never pass test-armhf-armhf-xl-multivcpu 15 migrate-support-check fail never pass test-armhf-armhf-xl-multivcpu 16 saverestore-support-check fail never pass test-armhf-armhf-xl-credit1 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 16 saverestore-support-check fail never pass test-armhf-armhf-xl-credit2 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit2 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail never pass version targeted for testing: xen 5c84f1f636981dab5341e84aaba8d4dd00bbc2cb baseline version: xen 7a25a1501ca941c3e01b0c4e624ace05417f1587 Last test of basis 181545 2023-06-22 01:52:10 Z 1 days Testing same since 181552 2023-06-22 13:08:10 Z 1 days 2 attempts ------------------------------------------------------------ People who touched revisions under test: Alistair Francis Andrew Cooper Anthony PERARD Henry Wang Jan Beulich Jiamei Xie Julien Grall Michal Orzel Oleksii Kurochko Roger Pau Monné Shawn Anastasio Stefano Stabellini Stefano Stabellini jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64-xtf pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-prev pass build-i386-prev pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-xtf-amd64-amd64-1 pass test-xtf-amd64-amd64-2 pass test-xtf-amd64-amd64-3 pass test-xtf-amd64-amd64-4 pass test-xtf-amd64-amd64-5 pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl pass test-amd64-i386-xl pass test-amd64-coresched-i386-xl pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm fail test-amd64-i386-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-i386-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-i386-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-i386-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-i386-qemut-rhel6hvm-amd pass test-amd64-i386-qemuu-rhel6hvm-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-i386-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-freebsd10-amd64 pass test-amd64-amd64-qemuu-freebsd11-amd64 pass test-amd64-amd64-qemuu-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-i386-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-i386-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-i386-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-amd64-i386-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale pass test-amd64-amd64-examine-bios pass test-amd64-i386-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 pass test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 pass test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine pass test-amd64-i386-examine pass test-amd64-i386-freebsd10-i386 pass test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-i386-qemut-rhel6hvm-intel pass test-amd64-i386-qemuu-rhel6hvm-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt pass test-amd64-i386-libvirt pass test-amd64-amd64-livepatch pass test-amd64-i386-livepatch pass test-amd64-amd64-migrupgrade pass test-amd64-i386-migrupgrade pass test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu pass test-amd64-amd64-pair pass test-amd64-i386-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-i386-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-i386-xl-pvshim fail test-amd64-amd64-pygrub pass test-armhf-armhf-libvirt-qcow2 pass test-amd64-amd64-xl-qcow2 fail test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw pass test-amd64-i386-libvirt-raw pass test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds pass test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-amd64-i386-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-i386-examine-uefi pass test-amd64-amd64-libvirt-vhd fail test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd fail test-amd64-i386-xl-vhd pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 412 lines long.) From xen-devel-bounces@lists.xenproject.org Fri Jun 23 15:20:49 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 23 Jun 2023 15:20:49 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554380.865537 (Exim 4.92) (envelope-from ) id 1qCiaO-0003pu-Py; Fri, 23 Jun 2023 15:20:32 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554380.865537; Fri, 23 Jun 2023 15:20:32 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCiaO-0003pn-LX; Fri, 23 Jun 2023 15:20:32 +0000 Received: by outflank-mailman (input) for mailman id 554380; Fri, 23 Jun 2023 15:20:30 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCiaM-0003ph-KQ for xen-devel@lists.xenproject.org; Fri, 23 Jun 2023 15:20:30 +0000 Received: from smtp-out2.suse.de (smtp-out2.suse.de [195.135.220.29]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 7c0c023f-11d9-11ee-8611-37d641c3527e; Fri, 23 Jun 2023 17:20:28 +0200 (CEST) Received: from relay2.suse.de (relay2.suse.de [149.44.160.134]) by smtp-out2.suse.de (Postfix) with ESMTP id D24151F45F; Fri, 23 Jun 2023 15:20:27 +0000 (UTC) Received: from suse.cz (pmladek.udp.ovpn2.prg.suse.de [10.100.201.202]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by relay2.suse.de (Postfix) with ESMTPS id 1AE602C141; Fri, 23 Jun 2023 15:20:22 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 7c0c023f-11d9-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1; t=1687533627; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=1mTZQB6E8gpW9xyv3IdX7kwRMApo1npl8Ta69cylcgI=; b=cw+6g9R2o/Umv74/BGjs0HZFU73NXkDTjRhAwElwD9yLjkG2loVWkX98zsq+Jw9f7GWEbv 1LhcZAdPyuPlH6OaETf856CLkRN01mJSpFOO8X/jovaGWHnPkt2fDQYbq4M0K8/oavd3Ir XsYDO2FS6i0HJDFn6EWyGK6+OhLducU= Date: Fri, 23 Jun 2023 17:20:17 +0200 From: Petr Mladek To: Joel Granados Cc: Jiri Slaby , Greg Kroah-Hartman , mcgrof@kernel.org, Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , x86@kernel.org, Theodore Ts'o , "Jason A. Donenfeld" , Juergen Gross , Stefano Stabellini , Benjamin LaHaise , Alexander Viro , Christian Brauner , Jeff Layton , Chuck Lever , Jan Kara , Kees Cook , Iurii Zaikin , Alexei Starovoitov , Daniel Borkmann , Andrii Nakryiko , Balbir Singh , Eric Biederman , "Naveen N. Rao" , Anil S Keshavamurthy , "David S. Miller" , Masami Hiramatsu , Peter Zijlstra , Will Deacon , Sergey Senozhatsky , Juri Lelli , Vincent Guittot , Steven Rostedt , Andrew Morton , Mike Kravetz , Muchun Song , Naoya Horiguchi , "Matthew Wilcox (Oracle)" , David Howells , Jarkko Sakkinen , Paul Moore , James Morris , "Serge E. Hallyn" , "H. Peter Anvin" , Oleksandr Tyshchenko , Amir Goldstein , John Fastabend , Martin KaFai Lau , Song Liu , Yonghong Song , KP Singh , Stanislav Fomichev , Hao Luo , Jiri Olsa , Waiman Long , Boqun Feng , John Ogness , Dietmar Eggemann , Ben Segall , Mel Gorman , Daniel Bristot de Oliveira , Valentin Schneider , Andy Lutomirski , Will Drewry , Mark Rutland , Miaohe Lin , linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org, linux-aio@kvack.org, linux-fsdevel@vger.kernel.org, linux-mm@kvack.org, bpf@vger.kernel.org, kexec@lists.infradead.org, linux-trace-kernel@vger.kernel.org, keyrings@vger.kernel.org, linux-security-module@vger.kernel.org Subject: Re: [PATCH 08/11] sysctl: Add size to register_sysctl_init Message-ID: References: <20230621091000.424843-1-j.granados@samsung.com> <20230621091000.424843-9-j.granados@samsung.com> <2023062150-outbound-quiet-2609@gregkh> <20230621131552.pqsordxcjmiopciq@localhost> <20230622140021.g3odhui75ybwuai5@localhost> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20230622140021.g3odhui75ybwuai5@localhost> On Thu 2023-06-22 16:00:21, Joel Granados wrote: > On Thu, Jun 22, 2023 at 06:21:48AM +0200, Jiri Slaby wrote: > > On 21. 06. 23, 15:15, Joel Granados wrote: > > > On Wed, Jun 21, 2023 at 12:47:58PM +0200, Greg Kroah-Hartman wrote: > > > > On Wed, Jun 21, 2023 at 11:09:57AM +0200, Joel Granados wrote: > > > > > static int __init random_sysctls_init(void) > > > > > { > > > > > - register_sysctl_init("kernel/random", random_table); > > > > > + register_sysctl_init("kernel/random", random_table, > > > > > + ARRAY_SIZE(random_table)); > > > > > > > > As mentioned before, why not just do: > > > > > > > > #define register_sysctl_init(string, table) \ > > > > __register_sysctl_init(string, table, ARRAY_SIZE(table); > > > Answered you in the original mail where you suggested it. > > > > I am curious what that was, do you have a link? > of course. I think you will find it here https://lore.kernel.org/all/20230621123816.ufqbob6qthz4hujx@localhost/ Let me to copy the answer here: I considered this at the outset, but it will not work with callers that use a pointer instead of the actual array. Additionally, we would not avoid big commits as we would have to go looking in all the files where register is called directly or indirectly and make sure the logic is sound. For the callers using a pointer. A solution would be to create another wrapper which would take the array size, e.g. #define register_sysctl_init_limited(string, table, size) \ __register_sysctl_init(string, table, size); And ARRAY_SIZE() is defined in include/linux/kernel.h as: #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]) + __must_be_array(arr)) It will create a compiler error when either an array[] or *array is passed. When using this: 1. The compiler will tell us where the other wrapper is needed. 2. Some locations might need the @size parameter even when a static array is passed. For example, neigh_sysctl_register() terminates the array early. But this will work when __register_sysctl_init() supports both ways.I mean that it will stop either on @size or empty element, as discussed in the other subthread. This should be caught when the final "empty" is removed from the particular caller. Best Regards, Petr From xen-devel-bounces@lists.xenproject.org Fri Jun 23 16:50:43 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 23 Jun 2023 16:50:43 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554395.865550 (Exim 4.92) (envelope-from ) id 1qCjzN-0005Dc-C2; Fri, 23 Jun 2023 16:50:25 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554395.865550; Fri, 23 Jun 2023 16:50:25 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCjzN-0005DV-9A; Fri, 23 Jun 2023 16:50:25 +0000 Received: by outflank-mailman (input) for mailman id 554395; Fri, 23 Jun 2023 16:50:24 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCjzM-0005DL-HX; Fri, 23 Jun 2023 16:50:24 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCjzM-0006J2-5j; Fri, 23 Jun 2023 16:50:24 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCjzL-0007ha-Nv; Fri, 23 Jun 2023 16:50:23 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qCjzL-0000rf-N5; Fri, 23 Jun 2023 16:50:23 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=PyTvn8RppVkPXpwqMyDVja7s+39CNgJydfGc88/o50k=; b=GQKey/AToLcMnOgXqcZVdA2rJk lI44xTaBnwiM/W5oxYb6z/hxes8Y0pvsWLoI9FOyi3U7zAacguv36R7AdwYuL866rTEpIf+o/eKF7 qLHduzr+BlmyM0550FON7p4NqfNf4n7syFR3uCfogHj5Fld8SGkrj23Uc96zb3sfuNMw=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [libvirt test] 181560: tolerable all pass - PUSHED X-Osstest-Failures: libvirt:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking libvirt:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking libvirt:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking libvirt:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking libvirt:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking libvirt:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking libvirt:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking libvirt:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt:saverestore-support-check:fail:nonblocking libvirt:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking libvirt:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking libvirt:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-qcow2:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-qcow2:saverestore-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking libvirt:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking libvirt:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking libvirt:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking X-Osstest-Versions-This: libvirt=1dddd444519717c785a9fd93f393c3313c87c342 X-Osstest-Versions-That: libvirt=a5bf2c4bf962cfb32f9137be5f0ba61cdd14b0e7 From: osstest service owner Date: Fri, 23 Jun 2023 16:50:23 +0000 flight 181560 libvirt real [real] http://logs.test-lab.xenproject.org/osstest/logs/181560/ Failures :-/ but no regressions. Tests which did not succeed, but are not blocking: test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail like 181477 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail like 181477 test-armhf-armhf-libvirt 16 saverestore-support-check fail like 181477 test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-i386-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-i386-libvirt 15 migrate-support-check fail never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt 15 migrate-support-check fail never pass test-arm64-arm64-libvirt 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-check fail never pass test-amd64-i386-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-qcow2 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-qcow2 15 saverestore-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail never pass test-armhf-armhf-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-libvirt 15 migrate-support-check fail never pass version targeted for testing: libvirt 1dddd444519717c785a9fd93f393c3313c87c342 baseline version: libvirt a5bf2c4bf962cfb32f9137be5f0ba61cdd14b0e7 Last test of basis 181477 2023-06-17 04:18:54 Z 6 days Testing same since 181560 2023-06-23 04:18:49 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Michal Privoznik jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-i386-libvirt-xsm pass test-amd64-amd64-libvirt pass test-arm64-arm64-libvirt pass test-armhf-armhf-libvirt pass test-amd64-i386-libvirt pass test-amd64-amd64-libvirt-pair pass test-amd64-i386-libvirt-pair pass test-arm64-arm64-libvirt-qcow2 pass test-armhf-armhf-libvirt-qcow2 pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw pass test-amd64-i386-libvirt-raw pass test-amd64-amd64-libvirt-vhd pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Pushing revision : To xenbits.xen.org:/home/xen/git/libvirt.git a5bf2c4bf9..1dddd44451 1dddd444519717c785a9fd93f393c3313c87c342 -> xen-tested-master From xen-devel-bounces@lists.xenproject.org Fri Jun 23 17:00:07 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 23 Jun 2023 17:00:07 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554402.865559 (Exim 4.92) (envelope-from ) id 1qCk8h-00068c-7z; Fri, 23 Jun 2023 17:00:03 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554402.865559; Fri, 23 Jun 2023 17:00:03 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCk8h-000681-54; Fri, 23 Jun 2023 17:00:03 +0000 Received: by outflank-mailman (input) for mailman id 554402; Fri, 23 Jun 2023 17:00:01 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCk8f-0005tW-M4 for xen-devel@lists.xenproject.org; Fri, 23 Jun 2023 17:00:01 +0000 Received: from EUR05-AM6-obe.outbound.protection.outlook.com (mail-am6eur05on2062a.outbound.protection.outlook.com [2a01:111:f400:7e1b::62a]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 630471eb-11e7-11ee-8611-37d641c3527e; Fri, 23 Jun 2023 18:59:59 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by AM7PR04MB6934.eurprd04.prod.outlook.com (2603:10a6:20b:10a::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.26; Fri, 23 Jun 2023 16:59:56 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6521.024; Fri, 23 Jun 2023 16:59:56 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 630471eb-11e7-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=aQk7yeCZiKloexHOAwHrEgZ56jpNrqOYlsLWrFWlaHGG0oZWl46ZFkvKlou9exylxPVoiXW6gzeKGaau4lHKzoct5RR6UCIcn9uBIdd9fXqO5svspGP5WqqqMR8PW1892BP1d+lk8+6pSNwsXgNLr5+tWztC5OmyM83/dDMmLcdLp0LSohLUgWw3kaPuEZRC/0sJVT9s1aujodtT/vJ4jkxZNUNyvJ/xkMdbKtJxPVVLxXK5JEvEO16aTPE+iSRc9gsxZxFGn6M9e7WxWX0rLrBqrLMbcqwEq6pAcQ2r9TAgH84+BJNikIsBEo8iAl9ZiS/lvJL0bbjpyD1hSFcvjw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=9DCSMUYWLXeZ3uQb0/zEoP7pP7PNmqrUmyP/r7MfzCQ=; b=Tgx4+rE4qDBn+evRkaoDZ2NzYd6SBAsT3fm/oF51UbySHfnOY24YA2Ba8rAKKTJbM3DzHFirN1m/tit9yAA5oAQw61CUVAB2Cp2HO0qjUhHNVFbu7YvYJzBaqp1mp83Gz7E6NloMLuCAnPXDRwoBaKMTy+bm3UOiCZ7DUnhwDu2Zv6cf6aJMn9UmyszYV6McIrgwW0gAtMXNBPq6m/FmqIKdeTa5gniZB/H7GH7G9hE4dAlAKsNbYHjOjLCV6JwD5g+J3Q2bzvTHqBlE83V+arQU3sAUEk8abHzOCzcg+Re/3QAwFPT54+uFNUKHiSYbjG70DSAG6vRxf1sm1buFMw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=9DCSMUYWLXeZ3uQb0/zEoP7pP7PNmqrUmyP/r7MfzCQ=; b=mNGV38vClT7uxtzRhXFxgkKXyr9cRnJ0vFKmRxJ6HJGe558CYouuXV2QW4ib70MZzeJhOvwVGPQQ3AU0lfURR3NT5+FzD3lxHLddwTidfhDCGCzaYuV1qOzjcMUNYxHcnF2uHyBULaB2q8I/jEicn4ogwOmXpHAxzDkiUGDTC1Amth816GOb8zmyzEWXRQafRgE4fT2cPVvgZdHQIBc+5qCu0QgABdryYF7OjolTLJy/nYn1aJnQNFAANBp8+Om+mSF6J85IWnZYSHpGD5aCD5E39FG2imWKCGJzdWMt0MFIQ2gtcfrqTWAW6yVljW4+W9gC6hc0CoNJp5hm3QmmWw== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: Date: Fri, 23 Jun 2023 18:59:54 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v2 1/3] xen/ppc: Set up a basic C environment To: Shawn Anastasio Cc: Timothy Pearson , Julien Grall , Andrew Cooper , xen-devel@lists.xenproject.org References: <1afe27097c5e1b55dcffa9464dc0cd0c1038a23e.1687466822.git.sanastasio@raptorengineering.com> <5011cde3-b553-6a17-85aa-a30edf3102fd@raptorengineering.com> <097fee60-67d1-b97b-c28d-52ab8b295518@raptorengineering.com> Content-Language: en-US From: Jan Beulich In-Reply-To: <097fee60-67d1-b97b-c28d-52ab8b295518@raptorengineering.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: AS4P192CA0050.EURP192.PROD.OUTLOOK.COM (2603:10a6:20b:658::12) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|AM7PR04MB6934:EE_ X-MS-Office365-Filtering-Correlation-Id: 01f0741e-b96f-4a42-3234-08db740b4568 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: LR/TsZcHaJ26/f34sD8zI5HbL7eZeAvJ/hLEAEmt+PyreOJNPl62gsjqpvePPxYTtCQHOQmrAWFj6ezuM1MsuLYlFFfE8W9JYPE1Pr9iAif5l5mJYV8vslSpvqgtmWyloG3gshpnxpT1N3txoLmPx7h4NhR9CwmJOSb1GPxs2CBR9N33ZAGvPh1v4YWOID19TMwO1AupetEtY6z6Vubl9UEqtm0i6MDw9r6jMSClWKR4zAgdGQyBYk1kRP85yKE70KG4PvGc656NnvHTWNWwKYV+Z1DSP1JDXisrK9VhT0KZPEjIp94/5kGYyrUVNeOz4dhaJ7oEIATUQLBZvr5OdGtdU+/n/ko/iRIuiE5Ha5pj5V5VCnFi2UFBWs5rULzYnE7B0t4iiyMHckYjN4BVMXkLo7CIkL63KmVp2xC30MhayJRV+HxKiuKf3bxkfNzyHAkPemkIRCJk6gJPV27DYZZzXyAXIH82WBmTlvd/qVe9UB1sj1REbAOblQioAVYDHIT2f5c3LJNqdixYOlxif3E/yyHFTfzIKuBCqvMKy9Uu1oyO3KsFzWIh0cnNUxR9hAGAzZmLNLU7KKRvkTHalg4MYtr6B//dVkJz3YNeq8WlIXqepDlqntlyrUfC/KPIOUqQYEthErTGgz9vFd9+Yw== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(366004)(39860400002)(136003)(396003)(376002)(346002)(451199021)(54906003)(478600001)(6512007)(26005)(6506007)(53546011)(966005)(6486002)(5660300002)(2906002)(36756003)(66476007)(6916009)(66556008)(66946007)(4326008)(31696002)(86362001)(8936002)(41300700001)(8676002)(316002)(83380400001)(31686004)(38100700002)(2616005)(186003)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?L3M3TWszUjloUUNvcFpGVis5anBRekFMTlM1cTlSYlFZZG8xVFREY3FHSTh6?= =?utf-8?B?UEZodjlMMXg5SUxld3pJTHltem8yZDgvLy9KK0NFZHpqN0d5TVgyZ0V6c1Yv?= =?utf-8?B?ZHVBZTJxdWxEem1JWjc4dWF1Zk9TdjhkRUpTVnd3cXBoRmhVVG1ld3VyY0R2?= =?utf-8?B?NmZWSzVJbUpERldHcUJpVXYrRVd1VittNUhSUTh0anlmNU94QnM2Mk1jT2lo?= =?utf-8?B?LzVTYjZMS3RJZnFNOE9wdTd6d2VGNnJITVNPQWxuWGxPTEhITGxlYnF5OFpy?= =?utf-8?B?VENBZ1RsRFcvWE95a29IaXJZWDlyUlhMenF3Tms1d0FRN0N6UnZGT2x0WFE4?= =?utf-8?B?bGx2RXBPOEVheEM0TERnS3ZGMDMxZzUvcmR4NFBMUEk4QjZzc2orRWUrM1Zz?= =?utf-8?B?ellpNjYzQW0zMHJMK0RmZFpteDl3SFBSWTVjK2hUaS94RDBpZEM3L1BMdEs5?= =?utf-8?B?bitoTEtQaWkvaGM5dWp4K1gwbHRoWVJ4aXRKQStpamthVlJDejIrU1FwWlhS?= =?utf-8?B?dTFzY0RtandKN1NJVVdHUk5nK0dqNTNQSzJ4OEUwSU1vaHY5NzNoQ090UkR1?= =?utf-8?B?Mlpkc3p4c1FmOWlvSmt4cGJlaTh6OWJoZ1JURW9kbW1lQklrQ0h1UFdodEY2?= =?utf-8?B?ZGtPR1ZqYmZGVG1VMk5TOGFwakVTaGNqUHVyMVVNRURGdUtsNzgwVUhPaWRM?= =?utf-8?B?dVlReE14eWwvRGRCemlCa3Jpcll4Y1o3aU93MEF6R2hYbU5EaG5rOFp3TExx?= =?utf-8?B?MURqTEQrZFhGeG1MVzBneW9McE0yVFhkb2djUDF3NGIvdW5sRVhSWFdyTTVk?= =?utf-8?B?cHVjOHUrdEtvVTA5WlNyUUM4QlpscG1lellQM2RvR0dOWmFybHBYN21BaGdK?= =?utf-8?B?VzQyOEgxSkp3OENiVXpSU0R4d2xiR05RNnZ0czZrL2pHaEpGWHlHQVhSUGhn?= =?utf-8?B?SThlYjNNaGpIdlRQdjV0QWpMUzRQVWZaeFM0bDIwb1l3NGJhcXlpcXNET01C?= =?utf-8?B?bzBOc1RWTVd5MVYwak5QUE0wQ3Q2TFAxZGQrMnY4S1B1bGNVWW1ETi95ckQr?= =?utf-8?B?VlVYbXlwbmk4aXhoa0pBeUIwTFlUVFRpdVBRTnpjSWN0WXZqQjUzZ2I5T1pV?= =?utf-8?B?cmV4bU5xakpIK0l1ZkRENGxBcC9Wc0ZhWk5rZHZ3c3dLeFZKYXBvcklyNjho?= =?utf-8?B?UlE0Rzh2MlZLU1RjTnpZU3RuaGNMdUJSbGdiQ1EzYzBHcFZGbEZEQWxoUE5a?= =?utf-8?B?YU1vdVZwZFFNQUwxSlVrNldVNVRZVHIrRkhnUW9rWi9zUnlKZ20wREJiODE5?= =?utf-8?B?Q3RzQnlUdk45RW45ZkZvSjJ4RHV4dTJPdU9zNXVXdWwvcmRGQ1JhOWhaaHF0?= =?utf-8?B?YzIxUXBvdWh2emdmUWdFNUJ5d0VHTjI1ME04ZVRNTGphS241d2Vqa1BTdE92?= =?utf-8?B?b2dEYldzMjVDMVNuOWMwVnEzQmh3c09tV21DOVU2QzFzZFhvdzM5L1dXOUE3?= =?utf-8?B?MDNUekwyU2l3bkc4ZG0wSk1LdHdIWU04Q0xBK2JuN2xsRi9PejBvbGw2bTdK?= =?utf-8?B?MXpPNEVqSGtweHNVY2taWCtXSFN2NkxnaEpJUlJ6NFJ5Nzh0dUdGVThKVFk1?= =?utf-8?B?cDFnc3VZQW1qcFpYUXpuTDdyb2tTWHJ3eFJ5a0pZZ3BheUdaZ3hLbEFkaUJT?= =?utf-8?B?VkdTNHZaelFnS096bzI1SGRDQ2kwdytvMjNRMjEzWWM1a2p4L092ZSt6SEk2?= =?utf-8?B?NjJSVzBML0tDbkZlb1NuZ08wNmxLRkF3NnI0NFdZM1A3elBLUkxSU092Wktt?= =?utf-8?B?MnVHV2libVlHYm0wVXdNTllPaXlJQUhoeXc0bDJ4VDBQSzZ4MmVOcnN1d2R2?= =?utf-8?B?N05ZNG5UV1dMV0JDY2FTYWxsdFZ4ZnZRTExZa3pkaUUvQWp5Y3RVNTdmM25B?= =?utf-8?B?M0c3WnpyQVZyeEJBRzVWWlVJcWxGeFlZVmVyZ05zOGNoOWlmb0lKakMvOVJt?= =?utf-8?B?Sm9jSFVEcERlQW05YkJPclMwb0k0UTY1NWE5SDd0UzFEMURnWW9IVEZCZnRZ?= =?utf-8?B?N2FyYVN1K0MraTlkYm9HYkJxdUhOWWVCWnBrNnZrdWYyQkE4S3dPWXdFVEVS?= =?utf-8?Q?GbnduEY4JKXEJzBZstto2yd7n?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 01f0741e-b96f-4a42-3234-08db740b4568 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Jun 2023 16:59:56.3605 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 1pUh/heDobrfuVGPP+DXRfCKyzESoi3yvvRQB5fsVmNvwYGGv3OyeSDAskDuhJGptHAsL0RHnVIPTsPca6hopA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM7PR04MB6934 On 23.06.2023 16:41, Shawn Anastasio wrote: > On 6/23/23 1:34 AM, Jan Beulich wrote: >> On 23.06.2023 03:26, Shawn Anastasio wrote: >>> On 6/22/23 5:49 PM, Andrew Cooper wrote: >>>> On 22/06/2023 9:57 pm, Shawn Anastasio wrote: >>>>> --- /dev/null >>>>> +++ b/xen/arch/ppc/setup.c >>>>> @@ -0,0 +1,13 @@ >>>>> +/* SPDX-License-Identifier: GPL-2.0-or-later */ >>>>> +#include >>>>> + >>>>> +void __init noreturn start_xen(unsigned long r3, unsigned long r4, >>>>> + unsigned long r5, unsigned long r6, >>>>> + unsigned long r7) >>>>> +{ >>>>> + for ( ;; ) >>>>> + /* Set current hardware thread to very low priority */ >>>>> + asm volatile("or %r31, %r31, %r31"); >>>> >>>> Is there something magic about the OR instruction, or something magic >>>> about %r31? >>> >>> Using the OR instruction with all three operands equal is of course a >>> no-op, but when using certain registers it can have a separate magic >>> side effect. >>> >>> `or r31,31,31` is one such form that sets the Program Priority Register >>> to "very low" priority. Of course here where we don't have SMP going >>> there's not much point in using this over the standard side effect-less >>> no-op (`or r0,r0,r0` or just `nop`). >>> >>> For a table of these magic OR forms, you can see page 836 of the Power >>> ISA 3.0B: >>> https://wiki.raptorcs.com/w/images/c/cb/PowerISA_public.v3.0B.pdf >> >> I have 3.1 to hand, and it looks like they were dropped from there? >> Otherwise I was meaning to say that it's a shame gas doesn't support >> these. > > No, they're still present in ISA 3.1B. See page 1084, Book II Chapter > 3 Section 2. Ah, I see. I was searching for the pseudo mnemonics that I had found elsewhere at some point (which are what I would hope gas could support, but then of course they first need to be mentioned in the doc). >> Finally, as a nit: Style above is lacking several blanks. One >> between the two semicolons, and a total of three in the asm(). > > Just to be sure, would the following be correct? > > for ( ; ; ) > /* Set current hardware thread to very low priority */ > asm volatile ( "or %r31, %r31, %r31" ); > > Not including the refactor of that instruction to a macro, of course. Yes, this looks correct now. Our style is perhaps a little unusual; at least I'm not aware of another project using the same, although I have the vague feeling that someone once mentioned a possible origin. Jan From xen-devel-bounces@lists.xenproject.org Fri Jun 23 17:10:28 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 23 Jun 2023 17:10:28 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554407.865570 (Exim 4.92) (envelope-from ) id 1qCkIT-0008IF-7t; Fri, 23 Jun 2023 17:10:09 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554407.865570; Fri, 23 Jun 2023 17:10:09 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCkIT-0008I8-3M; Fri, 23 Jun 2023 17:10:09 +0000 Received: by outflank-mailman (input) for mailman id 554407; Fri, 23 Jun 2023 17:10:08 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCkIR-0008HG-V5 for xen-devel@lists.xenproject.org; Fri, 23 Jun 2023 17:10:07 +0000 Received: from EUR05-VI1-obe.outbound.protection.outlook.com (mail-vi1eur05on20616.outbound.protection.outlook.com [2a01:111:f400:7d00::616]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id cc1d9d56-11e8-11ee-8611-37d641c3527e; Fri, 23 Jun 2023 19:10:05 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by AS8PR04MB8803.eurprd04.prod.outlook.com (2603:10a6:20b:42e::24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.26; Fri, 23 Jun 2023 17:10:02 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6521.024; Fri, 23 Jun 2023 17:10:01 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: cc1d9d56-11e8-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=JjfD7HvlmjRLLQryktafD69HM6Dule1R5aJueee3FtmNGWik8qApM7ok4vu9GoTXcEtIUyraq+dEaOnKJkzzZem8Zt8KIiobAcadoKUqBSVWZEB6FIU0QtHz+ofqpp2/PGb1F4SR8ESUv5n+sTP0u6IpVOjYvYCnwA7FKyxIRigl48m+LUc+T3kX7KKFKhxOAGQUnh/a40JwKh+DMc+wTS6N50DelR1vdJ/zF03mxHrG4KumNPFAg/nVGzYju7npXrHVXQ7QE0H542CZDleMwT5LOg3t7EXHOz9bszEDfOIsuI54aeS7DtLiS9TyL89sh565jRcagZq+4KAr4LvfGA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=IbhS8Zds9r9rRC6Mx0XjAmWQAqyw6yDOD+2hQ2uY1UA=; b=kPgv7+bOMh5Y1rCpLHlU1Gh7uF1y+LAcyTKTXyIDx3qvmJljwJCdrRZrKa/nN+xusKGoutV+nUu/UmIR9HrFNYxlNnfzuaQO06GTTRJeyDNk8g36Z0mB+NG+4QnOLeH/X/Uu5VfMU1byiRGF0QqRBvjXcxJVGp6i9VbhP0g+nGm4iXiIcnuy/3zPFNYSf6NzVR+E2UHCPlfTlO2AQ4rjIsnVaiaFZwXu0gClwDMuK/fg73HWDwMkdmskNkIK1zjber4JiDzkbJOKA3tZa9PHFwOhN8hmWeOG4YBfmjGmzkZSnVDcs5n55S6pyrpWUS16xfINJ1tZWV4eZA0AdQ6fVA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=IbhS8Zds9r9rRC6Mx0XjAmWQAqyw6yDOD+2hQ2uY1UA=; b=bAaUQ6RruUuhySVWQeXejLUVOLjISizSpDW8lH0o7sALXdrWSMvbTpvrZCpIsS1SYlfg/ux0eANcK7COwWfE/KI2t81KaKskuZbWPXvbwb/kEo65jyCzkuC6B3pD9c8n9Mb2BmdpzsT2kAoYM/VeHDGXk4lsKd4g010rp4jQ+dhXOJUnorCA31DF2ySD/+6sDr79NMCsx3bnbD+FObJ0uqShXyiDHfddTLHVWO0wWmQwYku1ujWjCNlriREFheBZMN1gjWsUCfwHpdlve4YIlbNJLgIoklLBEmlYRnz09ofYFHm/fdallZFdFmBRyTfvGQS3PPuSgDYL08vOLcSp9Q== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <302c0bb9-79ee-f006-76a5-c0dedf60e278@suse.com> Date: Fri, 23 Jun 2023 19:09:59 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v7 01/12] vpci: introduce per-domain lock to protect vpci structure Content-Language: en-US To: Volodymyr Babchuk Cc: "xen-devel@lists.xenproject.org" , Oleksandr Andrushchenko , Andrew Cooper , Wei Liu , George Dunlap , Julien Grall , Stefano Stabellini , Paul Durrant , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= References: <20230613103159.524763-1-volodymyr_babchuk@epam.com> <20230613103159.524763-2-volodymyr_babchuk@epam.com> <87352kpj04.fsf@epam.com> <87ilbfnqmo.fsf@epam.com> <874jmyo7g8.fsf@epam.com> From: Jan Beulich In-Reply-To: <874jmyo7g8.fsf@epam.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: BE1P281CA0354.DEUP281.PROD.OUTLOOK.COM (2603:10a6:b10:7d::22) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|AS8PR04MB8803:EE_ X-MS-Office365-Filtering-Correlation-Id: bb55503e-2a41-490e-2c20-08db740cae43 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: ZpclAigJWxyED/790TgzM10AV+5hCV7Yf9nisbiJ4Z6SwSujAupPRVBp2Sf0Ziydb5u6c2HxncGmPaliuXkkpLgumIjaLKgZIX1xnyj2l5H3ryLO6nsGo1erNf4WiUQWMbMZyfcOTEXjtiq4jfnECIanObGQeyXcNk2j445aZ+ZnuhiyJ2wFi1vZJnPekH/yllZV1wJ2+feeoedwDAwuEWE1lPIB+q3Fn6vPYW6O66O7dD1bir1WBPXnsTpJoSbc8a6wV2MpgPbIKcwAAamjPMOeYzbEIdnQhCSwAaOLVDc1teru1n24nRUZYB2LBrYD9OPQkAk02xor39amGeA6+WvQgbyfoHW3nphqvVydJcUpzn87tXNu7B+0/93GLBAO/1Fz1JzDfM66R0PLgRehBHh4nFCzFYeY5pYExHfPH0NW8tPDwHLkQRxMD0d/zz4nB8KixSxNkePpPomEVxlqmGFg1W1Qi1joipPdVsf4+3scHBJOWHEHBQhQq6JG2uo9KRcACRgAtCYWRfyjSbe/XyyKQSkJxvWx/f2U4HesfZ/eciMc4svACryX7SPSEtpHTwKui2vKu37CUEviWi3CiFJ02sna6nVXdoqv/fTA1BifinDH41+iIWFnDf7qaZnbWo+zH3hP8BQWDXqR5evL/A== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(396003)(136003)(366004)(346002)(39860400002)(376002)(451199021)(31686004)(478600001)(54906003)(4326008)(2616005)(83380400001)(36756003)(31696002)(86362001)(2906002)(6486002)(186003)(26005)(53546011)(6506007)(66946007)(6512007)(38100700002)(66556008)(66476007)(5660300002)(316002)(8936002)(41300700001)(6916009)(8676002)(7416002)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?UE40RFBLMXI3dWlYcGJLd3lHVHFKZ1owbFBHb2dGc3krR2RWNGJyOWRPbW1h?= =?utf-8?B?cFJPMkYzRlFqblltK0FiYlZSTUlXR3dDaEtiVGpidWRkRkI1bDJEdEt5d09t?= =?utf-8?B?S0toZVV6eGFvUjBMY2I2ZzZ0VTNqR3hFbllvbGhiQVNpbUUzVzV1ZGhNZCtu?= =?utf-8?B?OW5IUlY5ZGsrd1RESGxITThGNWJBZUp3L0pkSWZxV2t3QWs4UkUzTEo3VURk?= =?utf-8?B?VENKeFFDbTVFbVFLblhSQTBEci9vYzg3S1VnRVVXZmNSd3NkSUJINUlsb29O?= =?utf-8?B?WVNpL2RYQ2FVTklPZjhlSXlTdU1ITlFVek9hZzg4ZWVHK3hNdm5TVTFZNkJD?= =?utf-8?B?R0loT05nSnpUWG9nRlZROEZWWHVEVnkxQ240ZUh4RlUyQWJxUXc1aitLU0Jt?= =?utf-8?B?dnBDVm5YcmMxRmxNbDhMNUE3UmVpQ0YzdjRtY1hWaS8xQUpGYkRhSjdHUm90?= =?utf-8?B?bUtlS3I1T2ZOTkttNmtBbEZHRkY1NHpYM2thV3R2bVFMUFZnVDhwQUk3V25w?= =?utf-8?B?UG9Bb2dHWlI0d0JQaWRNQzI5Njh5REJ1YUhqdzZKQUFvWFJ3b2ppeGNMWjUw?= =?utf-8?B?ZlFFdXBPTlpkUFZndFpCSjV4cmVjT0htNWZ6RFRqSnhxc3V0bEVpcVBjWE9Q?= =?utf-8?B?eC9PMnpJaGdVb05wTlhCdFFjR29IMm1XYlh5enFFbW10Qjc4NzlkcDBSQTBM?= =?utf-8?B?ZDk0d0t0VWRqcUpwUXRXbEVsTDRLQms5bWE5bVgydVI5VzY2QmMxUGt5bXVa?= =?utf-8?B?MHh1VFU1NExaNHord2RNTTNWWTZLMzdlZXlVQS8vRUk3Y1NMUURqWEFmanRO?= =?utf-8?B?R3RsMHVwMjh5SWZ4a1BnYjR3L0N6VUZRUVIxYUpmL3poR1dFWm8zZ0gzQUJ2?= =?utf-8?B?RVJrNm9HWFhLcTF2TVN4ckF2NThFTmdYRFVldUJtZzhxTGNnNVlwQ1VSN3RQ?= =?utf-8?B?RC9jMkdwRHpsZ2xZZWt3SWF1SFFpeWpPc3dQc2Y1ME4zblZSd3RnSG1iaXhN?= =?utf-8?B?T2l2a3B5YzNKejFFM1UxbUxUdWJxUUdWL1lyY0ozYUExQUp4dlpEa2d6d3Qy?= =?utf-8?B?cDVVaVFiM2gzUmZzQlp6bFRHZk5yWjJYL040VWlyYit4d1RKZzFTbGlWdFJJ?= =?utf-8?B?ODdaSWxvZTRHTlVIWEdIc0lQT0VCWDdIZ2hYelVaT0J1WXg3ZGcrM2RKcFVV?= =?utf-8?B?NXA2cVFWTVBVRjErTUxiTW0yZVVyUjBIeVk5VXB5RTI4eVM4aDBucVNsaU1D?= =?utf-8?B?ZWl6S01PeVVPQjI1aXJGTEdhbzgzczgyZEQ2Qjl3dGV2dk1GV3Y4WlBvbGVx?= =?utf-8?B?QnZ6VFJ4bE9WeWdlR1dmOXVTR1h0czNuQmlYR0szK3I5Tm5DSmx5SGE1Rzht?= =?utf-8?B?dnlvazdoUENiUTFDRU9VU2pYYjVHVVV5Vks3am5UK2d5UnRLQ3ZEbnVYN3hu?= =?utf-8?B?TWgyd01YdWFHb1ZvTndvM0Rzb2hJWmlCWmVBZUQrUUlyNVBuTGJiRHlzVFlk?= =?utf-8?B?ak1POE9tODVSc0pCOGJQTFhHdmo5aWlCQVlYSlJtODhGb2RmR3N2VVNtMjA1?= =?utf-8?B?QnQ0RjJwQjRxQkcwR1AxZHFHK2Q2eS9GV2N6Q2V2TGhTaXQ0bmpkWUV2cXpH?= =?utf-8?B?bGpqaHJNZ2JqUFRYanhmT0Y3azMzL1V2UHIvaHRtKytQTnNzNXJOby90NWE5?= =?utf-8?B?WUtKTHVmTGFPODVVbEtnYUNpR1R2VE5jNklwcFpkaFpta01nRzlFWloyYVNn?= =?utf-8?B?UWhFVjJqZGRNcnFxNmNNZkhGMk96YjMvVFdWVGFjY0xocEE3MU04L2FsWko4?= =?utf-8?B?OSs5aURjcTJadHJLZTJ3TGZVazVwMThCS3QvM3kvOVlaNXh0Sm9GcHo5WkNY?= =?utf-8?B?ckVsb2F1dm9ZY2RLeUJ6UXk1N3FaWUVIZWlrWkZLMmMxMXdTblhUamduaG9X?= =?utf-8?B?N01rcm5rbVhsUVN4eUVEVG01QjB3LzJsMW8wU0w1T21XbWtLVk1maTVEeHIw?= =?utf-8?B?UVBaQXVqWlBnL3laUkpmZnUzYVVRTm5hSHhFaDlTMXc3N21UMlJRcjdLeWd2?= =?utf-8?B?dVNIblZvTUNEQ3RXdGphWm40aGtBaUFBK1RoV2hBYjJkODVwR1hTZHdOV05z?= =?utf-8?Q?O8oDQaY3nF2hqeH3m8XDroMto?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: bb55503e-2a41-490e-2c20-08db740cae43 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Jun 2023 17:10:01.6445 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: iZ4EQsC1IGbQkwnFtgI/dYi+OpFgpM7itrJTyBzjbvh5c1enlr69mw47gzfe3qI+kMCqmEIzaNdrjdXjwts8Fw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB8803 On 23.06.2023 11:26, Volodymyr Babchuk wrote: > Roger Pau Monné writes: >> On Thu, Jun 22, 2023 at 09:17:36PM +0000, Volodymyr Babchuk wrote: >>> Roger Pau Monné writes: >>>> On Wed, Jun 21, 2023 at 10:07:20PM +0000, Volodymyr Babchuk wrote: >>>>> Roger Pau Monné writes: >>>>>> I've made some comments below. >>>>> >>>>> Thank you for the review. I believe that it is a good idea to have a >>>>> per-domain pdev_list lock. See my answers below. >>>> >>>> I think it's important that the lock that protects domain->pdev_list >>>> must be the same that also protects pdev->vpci, or else you might run >>>> into similar ABBA deadlock situations. >>>> >>>> The problem then could be that in vpci_{read,write} you will take the >>>> per-domain pdev lock in read mode in order to get the pdev, and for >>>> writes to the command register or the ROM BAR you would have to >>>> upgrade such lock to a write lock without dropping it, and we don't >>>> have such functionality for rw locks ATM. >>>> >>>> Maybe just re-starting the function knowing that the lock must be >>>> taken in write mode would be a good solution: writes to the command >>>> register will already be slow since they are likely to involve >>>> modifications to the p2m. >>> >>> Looks like modify_bars() is the only cause for this extended lock. I >>> know that this was discussed earlier, but can we rework modify_bars to >>> not iterate over all the pdevs? We can store copy of all enabled BARs in >>> a domain structure, protected by domain->vpci_lock. Something akin to >>> >>> struct vpci_bar { >>> list_head list; >>> struct vpci *vpci; >>> unsigned long start; >>> unsigned long end; >>> bool is_rom; >>> }; >> >> This IMO makes the logic more complicated, as each time a BAR is >> updated we would have to change the cached address and size in two >> different places. It's also duplicated data that takes up memory, and >> there are system with a non-trivial amount of PCI devices and thus >> BARs to track. >> >> I think it's easier to just make the newly introduced per-domain >> rwlock also protect the domain's pdev_list (unless I'm missing >> something). AFAICT it would also simplify locking, as such rwlock >> protecting the domain->pdev_list will avoid you from having to take >> the pcidevs lock in vpci_{read,write} in order to find the device the >> access belongs to. > > In my opinion, this will make the whole locking logic complex, because > we will have one rwlock that protects: > > 1. pdev->vpci > 2. domain->pdev_list The import thing at this stage is to get the granularity down from the global pcidevs lock. What exactly is grouped together is secondary for the moment; it needs writing down clearly in a code comment, of course. Just to be sure I recall things correctly: 1 above is covering only the pointer, not the contents of the pointed to struct? If so, I would agree putting both under the same lock is a little odd, but if that limits lock nesting issues, I'd say so be it. If not, then this lock could simply be declared as covering everything PCI-ish that a domain has in use. Especially in the latter case ... > This is a two semi-related things. I feel that this will be hard to > understand for anyone who is not deeply intimate with the PCI > code. Anyways, I want this patch series to get going, so I believe your > judgment here. How should I name this lock? Taking into account, that > scope is will be more broad, "domain->vpci_rwlock" does not seems as a > good name. ... d->pci_lock would seem quite appropriate. Jan From xen-devel-bounces@lists.xenproject.org Fri Jun 23 17:16:52 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 23 Jun 2023 17:16:52 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554414.865580 (Exim 4.92) (envelope-from ) id 1qCkOp-0000YN-Vw; Fri, 23 Jun 2023 17:16:43 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554414.865580; Fri, 23 Jun 2023 17:16:43 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCkOp-0000YG-Sy; Fri, 23 Jun 2023 17:16:43 +0000 Received: by outflank-mailman (input) for mailman id 554414; Fri, 23 Jun 2023 17:16:42 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCkOo-0000YA-6A for xen-devel@lists.xenproject.org; Fri, 23 Jun 2023 17:16:42 +0000 Received: from EUR03-DBA-obe.outbound.protection.outlook.com (mail-dbaeur03on20602.outbound.protection.outlook.com [2a01:111:f400:fe1a::602]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id b7c45dd1-11e9-11ee-b237-6b7b168915f2; Fri, 23 Jun 2023 19:16:40 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by AS8PR04MB8803.eurprd04.prod.outlook.com (2603:10a6:20b:42e::24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.26; Fri, 23 Jun 2023 17:16:38 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6521.024; Fri, 23 Jun 2023 17:16:38 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: b7c45dd1-11e9-11ee-b237-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=jg3ws51eWzSq77WSj2SuYRYMCoAcbxMHhAurgZAEPgi+thz9W8siUMPVfzIWDfl9VUHbqkBEFg931P5enRIQoAx7ZoTX43UktJB1rbutSuTGWrfWD2AienJnkBxtrSkhOeqLie7+Jp7//1ra8lUMpJbG4EmcExF4OQsj5A7hT5rVG00Tjn6wdlSDAh22gattRe9xlDWgHKq38wF1zedkekd790/Sw3pKzOkqTn8bm/PDFfICXzg1/ePdAqv7tfB+rJboh+Gx/mt7qltrlV4Fh/5AtqTjCyUm0LIkLeol74D8eF53bZk+MHjtUFEew22GOE+KYMs02PfFvN5r+eEbSg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=RJdcH9Rc9I1M6THLdWbipQkPRMWtGnku4q28KEcybq8=; b=VytVqe+XKtUqm5Es8Uabx3G9aB2p/D74CEEOdcQSGEhWy/EvTWikZg+8gyq6m/BAiE3+MtKwjjOZLh0ahyYXs8xSpQllV7AtmCTWctLdfJNnMTG7Q6435qsOq0cYvynJDd04ZFo9SHz8iIiohqOhV2FGlft6uKXwv8ugSm52J7lUrw6UHAjGA3eXQXLRfI0p5iw9zVqTX/s94LR6QGMTD7yZEAJ89tkYN4r3FWUmvJuen+Ox3UmTGghC5yVhaZeBlnlGXVMAOKzYvTHz4ygBQjfyRka/Y+G0N/lb/zvRfLl1QihyVx654Xdoa4owCdAetUi4isVj8GV/mD6Czsechg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=RJdcH9Rc9I1M6THLdWbipQkPRMWtGnku4q28KEcybq8=; b=Hxa1INU1+e51NMR6MwvDKVi1t7YWWbZhM9rW3DKi0ZGOtaw1P7SatceC6buxXnahXOtoS6qBsrI7y/FlSytpICio8E6k0WQhPHvkEeQ7YP2eFExCMxTvOweRLMU8CZIpSqroID2ti64pAkl6Ma1jn7zSQqHYIRGmyYA7bfhMa2guVkgZ4+qrshw5WxGlo96+o9U94GOOc4RGvZP74mFs722Y62jC/TeC0z++JSc5/yQZXQ7TPhzkCl5jSzAwMFzmFwUDVpBh/b0hNPYT/dCwvkWDEt+mFDWEdmsLrrqwLmhTebjG3g1VGa/UioDl1L6/jxxMYnqDb8oDQbZJlSFcWw== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: Date: Fri, 23 Jun 2023 19:16:35 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [XEN PATCH v4] xen/include: avoid using a compiler extension for BUILD_BUG_ON_ZERO. Content-Language: en-US To: Nicola Vetrini Cc: sstabellini@kernel.org, michal.orzel@amd.com, xenia.ragiadakou@amd.com, ayan.kumar.halder@amd.com, consulting@bugseng.com, andrew.cooper3@citrix.com, roger.pau@citrix.com, bertrand.marquis@arm.com, julien@xen.org, George Dunlap , Wei Liu , xen-devel@lists.xenproject.org References: <4ab190bd0d80898311aa9f1e912f18e7cdef2762.1687510380.git.nicola.vetrini@bugseng.com> From: Jan Beulich In-Reply-To: <4ab190bd0d80898311aa9f1e912f18e7cdef2762.1687510380.git.nicola.vetrini@bugseng.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: AS4P189CA0038.EURP189.PROD.OUTLOOK.COM (2603:10a6:20b:5dd::10) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|AS8PR04MB8803:EE_ X-MS-Office365-Filtering-Correlation-Id: a7d4e69a-25cd-4815-7804-08db740d9a94 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: dpvph2k94nhbeqVh9060gln+b/LQmxLzomBuklMSs+R8TeKe0zR1JDcTRfJKgl2R14d6C8i3AzAhVNVYTjrzgO5vsNAoIAKbk8iHxUkbpyJ8bdHGsOtdjrgY5U/t8+ALTINLq0J6mdEZY/AHzbxy7oKGKhwWop7zQ8UWh0f9SJ2q02pEK7FNJQW7oRd/Kzz7fuUqn+n4W1GP2JT+eyNj+MBOelCp8EXt3qOQZO/4P2sVa5zAlJLrfHz1AHBMDzBZIDao2PsCpGehMU7eb1t0F4XeMSO4f0eBDBcDNagN3UdeEgLUrGl0p0W1QQVc4HHxitYdDCrRImfhQSzIG1Wbl/4KyBknM/W2p1uRQZbWZBhqIuhN55IS4xNfrYfmTikS5IPaNd3D5uO/MDi18FBpjlmlb2ynxokTuPB5xZApkLn2D8O0c7EPEna7qyhr1FNdkCnEWDam3pNhgaHy0Wn55BPBsZGlHcIyEf5dkZ82QFbNwwi5gOj6d566VwBDzk0tc2gQwFh5ONSFiZtjwvNRpWCWtXdB5nwoW5rokv0S4L1ebfbmMMxwuFVxjRZLEpXq93z/kVaN/9gaaygTyf/OL7JnhhQV2MRQ8JWagDjzs3AJoGLhIIiWf6Tdg3j02NTEmEFsHXixLdhaESi/AD11Gw== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(396003)(136003)(366004)(346002)(39860400002)(376002)(451199021)(31686004)(6666004)(478600001)(54906003)(4326008)(2616005)(36756003)(31696002)(86362001)(2906002)(6486002)(186003)(26005)(53546011)(6506007)(66946007)(6512007)(38100700002)(66556008)(66476007)(5660300002)(316002)(8936002)(41300700001)(6916009)(8676002)(7416002)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?dkduYUVzRnM2OGJBNmF4R2IyNksyK3VnSitYWFJDTE0ra1czL0diRHl1RVhu?= =?utf-8?B?dUdMdysrYmtCNGw0bHhCYUVmbjJRN3ZIOWZOUEVlVXVmMmdQQUNuSFZ4MVhP?= =?utf-8?B?WldBSExudFVhODlGM3AxT1BTM0RHdzkvQW5VM0Q4RzgxVysyclhUMVBxQkVU?= =?utf-8?B?MG8wTHVmRGxtZHQ2bFJVR2VRWk0rbUROL2pnSTJXbC9uT2EyUjJvcVBNOFR5?= =?utf-8?B?eU4ySDY3NFVCVWhpOVJWWW1uQU1OM0JQWXVEUk11bC81TjJGOGw0RWRxRU9n?= =?utf-8?B?SGF3K0V0UXZVZythbCtsRSt6c3lTUlNYZTJHMHl5c3g1Mmsyc1VaWVcyNDVx?= =?utf-8?B?VXlWZzlzQnZxbjlEWi9sOTBTOTJ1cXhWd2FPdStuWlVqTUlqUVRkQnNGTFk1?= =?utf-8?B?bkc3Qk5ETVFzM1p3VTlFWjNydzVia2RHNFltVUovVWdJNklMMlByZEtzTVVB?= =?utf-8?B?NEVsVEdMN0NRN1o5ek9ueFJYajhVWjVDbWhiUmxnZlYrYnZybitLOGNZcXFW?= =?utf-8?B?NXluWWNCOWYrSjdIWHVMTW0wclVScmo3NTNiblVuTTBNQjhnSXo5M2k5SFph?= =?utf-8?B?cDBFejdmekFvL0FobC9pR0I5RXd4RlBROEdtY3VMK0Y0dzFMLzl1aExDajVx?= =?utf-8?B?NnVIbmc2Q0ZiWXVaR0pWSjNkRWJ2azJpazIvQy9PdThsNXFkTUdqTzZnUHpP?= =?utf-8?B?aGRBRDlGYjMvOEIrNVdnODFpZkxvcDN5RlVrcTVSekRIV0FxZjdxbWtBZ252?= =?utf-8?B?SERXb0h5S0QyYTJOUUJWWU5hLzg2dkNlNVh3QUhYWlV4ZktseGxUK0x0NTh6?= =?utf-8?B?T29rdEhjL0tKT3VrQjBUSnNMMXZpUGZtbDVIUmp0K2Q3aVYrc2JWdXd1eEh4?= =?utf-8?B?YUdOY0JWRDJHcXRDdEhTVUdvT2FuUDk3MTBEbUZBTERGc0E3ekcrMnFOQmox?= =?utf-8?B?NmVOVXlxTXNrTmFsVWFLbU8vRGFGVUFEdVd4UXI4L1lOUjdmdkxmS0ZPSGtV?= =?utf-8?B?aFdRZGM2UUFreGFIK0REaE5MSFF1ckxHaW0yNTVKci9xSUt0YlFZNWc4Ym1u?= =?utf-8?B?T3dZZFRZVVZQZWdkN1p2eEhOUW9BbWgwRUJ5czhRTDlWcEhFNGRXNWVVa0VI?= =?utf-8?B?MFJyTEpmNUR6R1owWmZONDlRZVhnMEd3Vm9MWUJ3R1hVMlN6VEE2TkxOVXlp?= =?utf-8?B?azFkaDlaRldtZHJLVmFKRzhBZzVVU3ZUVzBHZG5OOVdSWitORU5rZVBYY1Vs?= =?utf-8?B?eU5wVzIwdklBVTF5YkE5UlJSeUlrNEtVd2tqRmQrV2djN1VOYXNpMGZzb0t6?= =?utf-8?B?bmMrcVBvN3VkbmxkNHcwUW9kUVA3TVpRRHdOazBaN0llMVFnWVR1Z25zRDJB?= =?utf-8?B?YTlKb0JLNjhQY1ZhcjFUN3dOWmVRTXQyckplaExiL1NYVUxhL0NoaW1pWWF3?= =?utf-8?B?d3IvMFVjckxBNnVzSWNQR2V5MFhINUR1R2EvWGtnZjUydzc4MUJYb3F0MVpJ?= =?utf-8?B?Uk9DOXM2STNaYytoMFgwaUZEMnpSdG4vYmpNYjBkaVFCaWRrNzdPcmtyWXNN?= =?utf-8?B?dHhGVjVUK3cyM0FDbEtVaDEzaWZPbVgyM0VUWGpWQXpySnphSGIxbHpBSmpS?= =?utf-8?B?dkZwYWF5RWd1elhVMWdraExnakFLbDlaZ1FoTFlPYlVyeDFOVFNhem5jQ3A0?= =?utf-8?B?SjFOM1ZGcXdEZWs5M3c3T1pXZlc2cWR6cUtJa2YwZWxlUWRYclpKa3E5S3lB?= =?utf-8?B?UTFuWmd6M2xQTStkMldsdGJtaE1SSzlZdnpXRnpTcW9oc1hFeEhkU3lQRXM0?= =?utf-8?B?cXhWK2pMcnVtU0FJTGpPc3orWWNYVlZvdGlPK01OTkkzMVE0bjZuVUZGU2sz?= =?utf-8?B?TXRIR2FRVjBPODZpSVRTbmVKRm1vV3Y1dHVJRkxrOG9ZTnlXcHRaamtVaWJu?= =?utf-8?B?S2ZVcGhGRlRORGlreU9ZWWduQjR2Qzc5RmpNTGhjdVZSSE04dlB3SXkvNVNM?= =?utf-8?B?VXRtaU9qcFhUTVZjSDRxYmRkTmtyNUJIUzJ5MmZ3TytoMlFjNGFaM2xlSHRS?= =?utf-8?B?M3FlZWNIa2lTNDJIMGNpT1pRazFWYXNBZ2ZPakJ0akkyY0JqVTk3VmZTRmJY?= =?utf-8?Q?AvFj47vlNN9hmEpsljmaMy2n9?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: a7d4e69a-25cd-4815-7804-08db740d9a94 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Jun 2023 17:16:38.2691 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 1UBgEkOE+aGJV0UbVDAgWJ1ZnLlcwWijZoEEuHJgN8XmgDps1H7ElMNtMoTX0XWGSP5n3sKosIRA63VcDvgNfg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB8803 On 23.06.2023 10:59, Nicola Vetrini wrote: > Redefine BUILD_BUG_ON_ZERO to avoid using a compiler extension > that gives an acceptable semantics to C99 undefined behavior 58 > ("A structure or union is defined as containing no named members > (6.7.2.1)"). > > The chosen ill-formed construct is a negative bitwidth in a > bitfield within a struct containing at least one named member, > which prevents the UB while keeping the semantics of the construct. > > The choice of the bitwise AND operation to bring the result to 0 > when cond is false boils down to possibly better portability, > and the 'U' suffix to make it obvious that this operation results > in an unsigned value. > > Signed-off-by: Nicola Vetrini > --- > Changes in V2: > - Avoid using a VLA as the compile-time assertion > - Do not drop _Static_assert > Changes in V3: > - Changed the operation to bring the result to 0 when the > construct does not lead to a compilation error > Changes in V4: > - Switched to a shorter construct for the second definition. Which sadly renders part of the description inapplicable now (there's no negative width bitfield anymore, afaics). Could probably be swapped for "zero" while committing, if some other maintainer wants to ack it in its present form. I'm not happy to, with the continued use of the two U suffixes. It may seem minor, but to me it feels like setting a bad precedent. Jan > --- a/xen/include/xen/lib.h > +++ b/xen/include/xen/lib.h > @@ -51,9 +51,10 @@ > e.g. in a structure initializer (or where-ever else comma expressions > aren't permitted). */ > #define BUILD_BUG_ON_ZERO(cond) \ > - sizeof(struct { _Static_assert(!(cond), "!(" #cond ")"); }) > + (sizeof(struct { char c; _Static_assert(!(cond), "!(" #cond ")"); }) & 0U) > #else > -#define BUILD_BUG_ON_ZERO(cond) sizeof(struct { int:-!!(cond); }) > +#define BUILD_BUG_ON_ZERO(cond) \ > + (sizeof(struct { unsigned u : !(cond); }) & 0U) > #define BUILD_BUG_ON(cond) ((void)BUILD_BUG_ON_ZERO(cond)) > #endif > From xen-devel-bounces@lists.xenproject.org Fri Jun 23 20:20:54 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 23 Jun 2023 20:20:54 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554427.865593 (Exim 4.92) (envelope-from ) id 1qCnGj-0002Z3-JH; Fri, 23 Jun 2023 20:20:33 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554427.865593; Fri, 23 Jun 2023 20:20:33 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCnGj-0002Yw-Fw; Fri, 23 Jun 2023 20:20:33 +0000 Received: by outflank-mailman (input) for mailman id 554427; Fri, 23 Jun 2023 20:20:31 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCnGh-0002Ym-Rg; Fri, 23 Jun 2023 20:20:31 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCnGh-0002b2-EV; Fri, 23 Jun 2023 20:20:31 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCnGh-0001vh-16; Fri, 23 Jun 2023 20:20:31 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qCnGh-0000cY-0h; Fri, 23 Jun 2023 20:20:31 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=oSIlQd3tmSDTgGE/3cmRoQed7dnuYozz74xFACI9qgA=; b=J1eaVgKsZSpYEKrbbrBfpUV+zG fW411r3VrhsmwVT3tyCYBlgIcUZZ6RYqZyCTL2o+XwRmi83LwbExvVjsnVE7quLW42vrcK6ruOHMP CyNnJWFP7lrv6loGAEA2hkmo+aKQLB3VyYCbXy160t5zlfF6tFZVbFvBU0dNoqBPSe1g=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [ovmf test] 181567: tolerable FAIL - PUSHED X-Osstest-Failures: ovmf:test-amd64-i386-xl-qemuu-ovmf-amd64:xen-install:fail:heisenbug X-Osstest-Versions-This: ovmf=6ee981c858daeb08c8ab6d357a55c131875aae3a X-Osstest-Versions-That: ovmf=49f06b664018105090a42a0684fb5e6ea4c909cd From: osstest service owner Date: Fri, 23 Jun 2023 20:20:31 +0000 flight 181567 ovmf real [real] flight 181568 ovmf real-retest [real] http://logs.test-lab.xenproject.org/osstest/logs/181567/ http://logs.test-lab.xenproject.org/osstest/logs/181568/ Failures :-/ but no regressions. Tests which are failing intermittently (not blocking): test-amd64-i386-xl-qemuu-ovmf-amd64 7 xen-install fail pass in 181568-retest version targeted for testing: ovmf 6ee981c858daeb08c8ab6d357a55c131875aae3a baseline version: ovmf 49f06b664018105090a42a0684fb5e6ea4c909cd Last test of basis 181561 2023-06-23 05:12:24 Z 0 days Testing same since 181567 2023-06-23 16:40:52 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Kun Qin jobs: build-amd64-xsm pass build-i386-xsm pass build-amd64 pass build-i386 pass build-amd64-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-i386-pvops pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 fail ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Pushing revision : To xenbits.xen.org:/home/xen/git/osstest/ovmf.git 49f06b6640..6ee981c858 6ee981c858daeb08c8ab6d357a55c131875aae3a -> xen-tested-master From xen-devel-bounces@lists.xenproject.org Fri Jun 23 20:42:54 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 23 Jun 2023 20:42:54 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554435.865606 (Exim 4.92) (envelope-from ) id 1qCncH-00054W-E9; Fri, 23 Jun 2023 20:42:49 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554435.865606; Fri, 23 Jun 2023 20:42:49 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCncH-00054P-BH; Fri, 23 Jun 2023 20:42:49 +0000 Received: by outflank-mailman (input) for mailman id 554435; Fri, 23 Jun 2023 20:42:47 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCncF-00054F-Ox; Fri, 23 Jun 2023 20:42:47 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCncF-000371-L7; Fri, 23 Jun 2023 20:42:47 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCncF-0002SJ-0S; Fri, 23 Jun 2023 20:42:47 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qCncE-0000FP-WE; Fri, 23 Jun 2023 20:42:47 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=FAGbqasF7Abvg5mz0Ok3Bg6lJhcICYz96yzUaxe43Nk=; b=KgS25vAw7HXuO7wqcVWUerXXMd bSaxMN1RDn2WNLYsuRgiaoHkwHs9d3y/t/9jVHsdvTrYzwIHXwUaPqDM0YxN3NA88F1e6sh1DLu0j wfEWSnnZAs8pues4QMC5WNf143GL/r8c4SIBpIgMBiUS7KB6RuHEfIqkjKnnjFM9hwcM=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [linux-5.4 test] 181563: regressions - FAIL X-Osstest-Failures: linux-5.4:build-amd64:xen-build:fail:regression linux-5.4:build-arm64-pvops:kernel-build:fail:regression linux-5.4:test-amd64-i386-qemut-rhel6hvm-amd:xen-install:fail:heisenbug linux-5.4:test-amd64-i386-qemuu-rhel6hvm-amd:xen-install:fail:heisenbug linux-5.4:test-armhf-armhf-xl-arndale:guest-start/debian.repeat:fail:heisenbug linux-5.4:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:xen-install:fail:heisenbug linux-5.4:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking linux-5.4:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking linux-5.4:test-arm64-arm64-xl:build-check(1):blocked:nonblocking linux-5.4:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking linux-5.4:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking linux-5.4:test-arm64-arm64-examine:build-check(1):blocked:nonblocking linux-5.4:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking linux-5.4:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking linux-5.4:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-libvirt-raw:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-pair:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-qemut-rhel6hvm-amd:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-qemut-rhel6hvm-intel:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-qemuu-rhel6hvm-amd:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-qemuu-rhel6hvm-intel:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-pvshim:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-qemut-debianhvm-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-qemut-win7-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-qemut-ws16-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-shadow:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-vhd:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-examine:build-check(1):blocked:nonblocking linux-5.4:test-amd64-coresched-i386-xl:build-check(1):blocked:nonblocking linux-5.4:test-amd64-coresched-amd64-xl:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-shadow:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-rtds:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking linux-5.4:build-amd64-libvirt:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qemut-ws16-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qemut-win7-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qemut-debianhvm-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qcow2:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-dom0pvh-xl-amd:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-pvshim:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-dom0pvh-xl-intel:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-pvhv2-intel:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-examine:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-examine-bios:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-examine-uefi:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-pvhv2-amd:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-multivcpu:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-credit2:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-pair:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-credit1:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-pygrub:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-qemuu-freebsd11-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-qemuu-freebsd12-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-qemuu-nested-amd:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-qemuu-nested-intel:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-examine-bios:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-examine-uefi:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-freebsd10-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-freebsd10-i386:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking linux-5.4:test-armhf-armhf-xl-credit1:guest-start/debian.repeat:fail:nonblocking linux-5.4:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking linux-5.4:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking linux-5.4:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking linux-5.4:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-amd64-xl-qcow2:guest-start/debian.repeat:fail:nonblocking linux-5.4:test-armhf-armhf-xl-multivcpu:guest-start:fail:nonblocking linux-5.4:test-armhf-armhf-xl-credit2:guest-start/debian.repeat:fail:nonblocking linux-5.4:test-armhf-armhf-xl-rtds:guest-start/debian.repeat:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking linux-5.4:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: linux=f2b499c27a959d062db9ea5c3036052d90110ee4 X-Osstest-Versions-That: linux=f568a20f058fa1e37069cff4aac4187c1650a0e9 From: osstest service owner Date: Fri, 23 Jun 2023 20:42:46 +0000 flight 181563 linux-5.4 real [real] http://logs.test-lab.xenproject.org/osstest/logs/181563/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-amd64 6 xen-build fail REGR. vs. 181363 build-arm64-pvops 6 kernel-build fail in 181551 REGR. vs. 181363 Tests which are failing intermittently (not blocking): test-amd64-i386-qemut-rhel6hvm-amd 7 xen-install fail in 181551 pass in 181553 test-amd64-i386-qemuu-rhel6hvm-amd 7 xen-install fail in 181551 pass in 181553 test-armhf-armhf-xl-arndale 18 guest-start/debian.repeat fail in 181551 pass in 181563 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 7 xen-install fail pass in 181551 Tests which did not succeed, but are not blocking: test-arm64-arm64-xl-credit2 1 build-check(1) blocked in 181551 n/a test-arm64-arm64-xl-vhd 1 build-check(1) blocked in 181551 n/a test-arm64-arm64-xl 1 build-check(1) blocked in 181551 n/a test-arm64-arm64-libvirt-xsm 1 build-check(1) blocked in 181551 n/a test-arm64-arm64-xl-xsm 1 build-check(1) blocked in 181551 n/a test-arm64-arm64-examine 1 build-check(1) blocked in 181551 n/a test-arm64-arm64-xl-thunderx 1 build-check(1) blocked in 181551 n/a test-arm64-arm64-xl-credit1 1 build-check(1) blocked in 181551 n/a test-arm64-arm64-libvirt-raw 1 build-check(1) blocked in 181551 n/a test-amd64-i386-libvirt 1 build-check(1) blocked n/a test-amd64-i386-libvirt-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt-raw 1 build-check(1) blocked n/a test-amd64-i386-pair 1 build-check(1) blocked n/a test-amd64-i386-qemut-rhel6hvm-amd 1 build-check(1) blocked n/a test-amd64-i386-qemut-rhel6hvm-intel 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-amd 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-intel 1 build-check(1) blocked n/a test-amd64-i386-xl 1 build-check(1) blocked n/a test-amd64-i386-xl-pvshim 1 build-check(1) blocked n/a test-amd64-i386-xl-qemut-debianhvm-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemut-win7-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemut-ws16-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-examine 1 build-check(1) blocked n/a test-amd64-coresched-i386-xl 1 build-check(1) blocked n/a test-amd64-coresched-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-xl-shadow 1 build-check(1) blocked n/a test-amd64-amd64-xl-rtds 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a build-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemut-ws16-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemut-win7-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemut-debianhvm-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qcow2 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-amd 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvshim 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-intel 1 build-check(1) blocked n/a test-amd64-amd64-examine 1 build-check(1) blocked n/a test-amd64-amd64-examine-bios 1 build-check(1) blocked n/a test-amd64-amd64-examine-uefi 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-amd 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-pair 1 build-check(1) blocked n/a test-amd64-amd64-xl-multivcpu 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-vhd 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit2 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-amd64-pair 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit1 1 build-check(1) blocked n/a test-amd64-amd64-pygrub 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd11-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd12-amd64 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-amd 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-intel 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-i386-examine-bios 1 build-check(1) blocked n/a test-amd64-i386-examine-uefi 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-amd64 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-i386 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail in 181551 like 181363 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop fail in 181551 like 181363 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop fail in 181551 like 181363 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail in 181551 like 181363 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail in 181551 like 181363 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail in 181551 like 181363 test-armhf-armhf-xl-credit1 18 guest-start/debian.repeat fail in 181551 like 181363 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop fail in 181551 like 181363 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop fail in 181551 like 181363 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail in 181551 like 181363 test-amd64-i386-xl-pvshim 14 guest-start fail in 181551 never pass test-amd64-amd64-libvirt 15 migrate-support-check fail in 181551 never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail in 181551 never pass test-amd64-i386-libvirt 15 migrate-support-check fail in 181551 never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail in 181551 never pass test-armhf-armhf-xl-multivcpu 15 migrate-support-check fail in 181551 never pass test-armhf-armhf-xl-multivcpu 16 saverestore-support-check fail in 181551 never pass test-amd64-i386-libvirt-raw 14 migrate-support-check fail in 181551 never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-check fail in 181551 never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail in 181551 never pass test-amd64-amd64-xl-qcow2 21 guest-start/debian.repeat fail in 181553 like 181363 test-armhf-armhf-xl-multivcpu 14 guest-start fail like 181336 test-armhf-armhf-xl-credit2 18 guest-start/debian.repeat fail like 181336 test-armhf-armhf-xl-rtds 18 guest-start/debian.repeat fail like 181363 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail like 181363 test-armhf-armhf-libvirt 16 saverestore-support-check fail like 181363 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail like 181363 test-amd64-i386-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-armhf-armhf-xl-credit2 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit2 16 saverestore-support-check fail never pass test-armhf-armhf-xl-arndale 15 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-armhf-armhf-xl-credit1 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 16 saverestore-support-check fail never pass test-armhf-armhf-xl-rtds 15 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 16 saverestore-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass test-armhf-armhf-xl 15 migrate-support-check fail never pass test-armhf-armhf-xl 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail never pass test-armhf-armhf-libvirt 15 migrate-support-check fail never pass test-armhf-armhf-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 15 saverestore-support-check fail never pass version targeted for testing: linux f2b499c27a959d062db9ea5c3036052d90110ee4 baseline version: linux f568a20f058fa1e37069cff4aac4187c1650a0e9 Last test of basis 181363 2023-06-10 15:39:59 Z 13 days Failing since 181425 2023-06-14 10:50:49 Z 9 days 17 attempts Testing same since 181542 2023-06-21 23:13:50 Z 1 days 4 attempts ------------------------------------------------------------ People who touched revisions under test: Adrian Hunter Ahmed Zaki Ai Chao Alan Stern Aleksandr Loktionov Alex Deucher Alex Maftei Alexander Kapshuk Alexander Sverdlin Alexandru Sorodoc Andrew Morton Arnd Bergmann Bartosz Golaszewski Ben Hutchings Ben Skeggs Bernhard Seibold Bjørn Mork Bob Pearson Chia-I Wu Chris Paterson (CIP) Christian Loehle Christoph Hellwig Dan Carpenter Dave Airlie David Ahern David Howells David Jander David S. Miller David Sterba Dinh Nguyen Dmitry Torokhov Edson Juliano Drosdeck Edward Srouji Elson Roy Serrao Eric Dumazet Fedor Pchelkin Florian Fainelli Florian Westphal Gaosheng Cui Greg Kroah-Hartman Guenter Roeck Guillaume Nault Gustavo A. R. Silva Hangbin Liu Hangyu Hua Hans de Goede Harshit Mogalapalli Helge Deller Ian Ziemba Ilya Dryomov Ismael Ferreras Morezuelas JaimeLiao Jakub Kicinski Jamal Hadi Salim Jan Höppner Janne Grunau Jason Gunthorpe Jens Axboe Jerry Meng Jiri Slaby (SUSE) Johan Hovold Johannes Thumshirn Jon Hunter Josef Bacik Joseph Qi Jozsef Kadlecsik Juergen Gross Krzysztof Kozlowski Kuniyuki Iwashima Lee Jones Leon Romanovsky Leon Romanovsky Lin Ma Linus Torvalds Linus Walleij Linux Kernel Functional Testing Lisa Chen (陈敏捷) Liviu Dudau Luis Chamberlain Luiz Augusto von Dentz Luís Henriques Luís Henriques Lyude Paul Manuel Lauss Marc Dionne Marc Kleine-Budde Marc Zyngier Marek Vasut Mario Limonciello Mark Brown Martin Blumenstingl Martin Hundebøll Maxime Ripard Michael Chan Min Li Miquel Raynal Mirsad Goran Todorovac Mirsad Todorovac Natalia Petrova Nikolay Aleksandrov Oleksij Rempel Osama Muhammad Pablo Neira Ayuso Paolo Abeni Paulo Alcantara (SUSE) Paulo Alcantara Qingfang DENG Rafal Romanowski Randy Dunlap RenHai Ricardo Ribalda Richard Cochran Rishabh Bhatnagar Roberto Sassu Ross Lagerwall Ruihan Li Ryusuke Konishi Saravanan Vajravel Sasha Levin Sebastian Reichel Selvin Xavier Shuah Khan Simon Wunderlich Somnath Kotur Stefan Berger Stefan Ghinea Stefan Haberland Stephan Gerhold Stephen Hemminger Steve French Sudeep Holla Sudip Mukherjee Sukrut Bellary Sungwoo Kim Sven Eckelmann Takashi Iwai Tejun Heo Theodore Ts'o Thinh Nguyen Thomas Bogendoerfer Tijs Van Buggenhout Tony Nguyen Ulf Hansson Uwe Kleine-König Ville Syrjälä Vlad Buslov Vladimir Oltean Vladislav Efanov Wes Huang Wolfram Sang Xin Long Xiubo Li Ying Hsu Yishai Hadas YouChing Lin Zhu Yanjun Zixuan Fu jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 fail build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt blocked build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl blocked test-amd64-coresched-amd64-xl blocked test-arm64-arm64-xl pass test-armhf-armhf-xl pass test-amd64-i386-xl blocked test-amd64-coresched-i386-xl blocked test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm fail test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-i386-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-i386-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm blocked test-arm64-arm64-libvirt-xsm pass test-amd64-i386-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-i386-xl-xsm pass test-amd64-amd64-qemuu-nested-amd blocked test-amd64-amd64-xl-pvhv2-amd blocked test-amd64-i386-qemut-rhel6hvm-amd blocked test-amd64-i386-qemuu-rhel6hvm-amd blocked test-amd64-amd64-dom0pvh-xl-amd blocked test-amd64-amd64-xl-qemut-debianhvm-amd64 blocked test-amd64-i386-xl-qemut-debianhvm-amd64 blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-freebsd10-amd64 blocked test-amd64-amd64-qemuu-freebsd11-amd64 blocked test-amd64-amd64-qemuu-freebsd12-amd64 blocked test-amd64-amd64-xl-qemuu-ovmf-amd64 blocked test-amd64-i386-xl-qemuu-ovmf-amd64 blocked test-amd64-amd64-xl-qemut-win7-amd64 blocked test-amd64-i386-xl-qemut-win7-amd64 blocked test-amd64-amd64-xl-qemuu-win7-amd64 blocked test-amd64-i386-xl-qemuu-win7-amd64 blocked test-amd64-amd64-xl-qemut-ws16-amd64 blocked test-amd64-i386-xl-qemut-ws16-amd64 blocked test-amd64-amd64-xl-qemuu-ws16-amd64 blocked test-amd64-i386-xl-qemuu-ws16-amd64 blocked test-armhf-armhf-xl-arndale pass test-amd64-amd64-examine-bios blocked test-amd64-i386-examine-bios blocked test-amd64-amd64-xl-credit1 blocked test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 pass test-amd64-amd64-xl-credit2 blocked test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 fail test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-amd64-examine blocked test-arm64-arm64-examine pass test-armhf-armhf-examine pass test-amd64-i386-examine blocked test-amd64-i386-freebsd10-i386 blocked test-amd64-amd64-qemuu-nested-intel blocked test-amd64-amd64-xl-pvhv2-intel blocked test-amd64-i386-qemut-rhel6hvm-intel blocked test-amd64-i386-qemuu-rhel6hvm-intel blocked test-amd64-amd64-dom0pvh-xl-intel blocked test-amd64-amd64-libvirt blocked test-armhf-armhf-libvirt pass test-amd64-i386-libvirt blocked test-amd64-amd64-xl-multivcpu blocked test-armhf-armhf-xl-multivcpu fail test-amd64-amd64-pair blocked test-amd64-i386-pair blocked test-amd64-amd64-libvirt-pair blocked test-amd64-i386-libvirt-pair blocked test-amd64-amd64-xl-pvshim blocked test-amd64-i386-xl-pvshim blocked test-amd64-amd64-pygrub blocked test-armhf-armhf-libvirt-qcow2 pass test-amd64-amd64-xl-qcow2 blocked test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw pass test-amd64-i386-libvirt-raw blocked test-amd64-amd64-xl-rtds blocked test-armhf-armhf-xl-rtds fail test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-amd64-xl-shadow blocked test-amd64-i386-xl-shadow blocked test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi blocked test-amd64-i386-examine-uefi blocked test-amd64-amd64-libvirt-vhd blocked test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd pass test-amd64-i386-xl-vhd blocked ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 3426 lines long.) From xen-devel-bounces@lists.xenproject.org Fri Jun 23 21:26:29 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 23 Jun 2023 21:26:29 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554443.865616 (Exim 4.92) (envelope-from ) id 1qCoIE-0001GK-Rz; Fri, 23 Jun 2023 21:26:10 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554443.865616; Fri, 23 Jun 2023 21:26:10 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCoIE-0001GD-P0; Fri, 23 Jun 2023 21:26:10 +0000 Received: by outflank-mailman (input) for mailman id 554443; Fri, 23 Jun 2023 21:26:09 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCoIC-0001G5-W1 for xen-devel@lists.xenproject.org; Fri, 23 Jun 2023 21:26:09 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCoIC-0003yS-EU; Fri, 23 Jun 2023 21:26:08 +0000 Received: from [54.239.6.190] (helo=[192.168.20.188]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qCoIC-0002JB-8w; Fri, 23 Jun 2023 21:26:08 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=z/hNVudC+OIG6iKb2WlKkXLTKUQwofH2OwTN0N15F04=; b=KAdCHELLXPAnsZZTB5OxVtbZuj JYqt5d96r1dmvOYRR5mDRxqRqxLe6Ww0tYwoQhcSMmpp3ZmzbJK9jVi348y9HwA++24CxuKVT/JZg VxaCMlPG5c8wU/HTMH9A0wuZRt1izy2LTTi7kOHDviNpdCZE9RyU5GVL6G7i9GRfn0qE=; Message-ID: Date: Fri, 23 Jun 2023 22:26:06 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v1] xen/arm: arm32: Add support to identify the Cortex-R52 processor Content-Language: en-US To: Ayan Kumar Halder , Ayan Kumar Halder , xen-devel@lists.xenproject.org Cc: sstabellini@kernel.org, stefano.stabellini@amd.com, Volodymyr_Babchuk@epam.com, bertrand.marquis@arm.com References: <20230620151736.3720850-1-ayan.kumar.halder@amd.com> <3b7f584e-700e-4598-f36e-51a96140323e@xen.org> <030fc5e8-8293-2306-06eb-9275c2a2c9e5@xen.org> <2fbf6885-5bb8-4b49-522d-eb265349d4b7@xen.org> <75008370-7141-757c-0768-14b654724f07@amd.com> From: Julien Grall In-Reply-To: <75008370-7141-757c-0768-14b654724f07@amd.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Hi Ayan, On 23/06/2023 14:43, Ayan Kumar Halder wrote: > > On 22/06/2023 17:32, Julien Grall wrote: >> Hi, > Hi Julien, >> >> On 22/06/2023 16:41, Ayan Kumar Halder wrote: >>> >>> On 22/06/2023 10:22, Julien Grall wrote: >>>> Hi Ayan, >>> Hi Julien, >>>> >>>> On 22/06/2023 09:59, Ayan Kumar Halder wrote: >>>>> >>>>> On 20/06/2023 21:43, Julien Grall wrote: >>>>>> Hi Ayan, >>>>> Hi Julien, >>>>>> >>>>>> On 20/06/2023 19:28, Ayan Kumar Halder wrote: >>>>>>> >>>>>>> On 20/06/2023 17:41, Julien Grall wrote: >>>>>>>> Hi, >>>>>>> Hi Julien, >>>>>>>> >>>>>>>> On 20/06/2023 16:17, Ayan Kumar Halder wrote: >>>>>>>>> Add a special configuration (CONFIG_AARCH32_V8R) to setup the >>>>>>>>> Cortex-R52 >>>>>>>>> specifics. >>>>>>>>> >>>>>>>>> Cortex-R52 is an Arm-V8R AArch32 processor. >>>>>>>>> >>>>>>>>> Refer ARM DDI 0487I.a ID081822, G8-9647, G8.2.112 MIDR, >>>>>>>>> bits[31:24] = 0x41 , Arm Ltd >>>>>>>>> bits[23:20] = Implementation defined >>>>>>>>> bits[19:16] = 0xf , Arch features are individually identified >>>>>>>>> bits[15:4] = Implementation defined >>>>>>>>> bits[3:0] = Implementation defined >>>>>>>>> >>>>>>>>> Thus, the processor id is 0x410f0000 and the processor id mask is >>>>>>>>> 0xff0f0000 >>>>>>>>> >>>>>>>>> Also, there is no special initialization required for R52. >>>>>>>> >>>>>>>> Are you saying that Xen upstream + this patch will boot on >>>>>>>> Cortex-R52? >>>>>>> >>>>>>> This patch will help for earlyboot of Xen. With this patch, >>>>>>> cpu_init() will work on Cortex-R52. >>>>>>> >>>>>>> There will be changes required for the MPU configuration, but >>>>>>> that will be sent after Penny's patch serie "[PATCH v2 00/41] >>>>>>> xen/arm: Add Armv8-R64 MPU support to Xen - Part#1" is upstreamed. >>>>>>> >>>>>>> My aim is to extract the non-dependent changes and send them for >>>>>>> review. >>>>>> >>>>>> I can review the patch. But I am not willing to merge it as it >>>>>> gives the false impression that Xen would boot on Cortex-R52. >>>>>> >>>>>> In fact, I think this patch should only be merged once we have all >>>>>> the MPU merged. >>>>>> >>>>>> IMHO, patches are independent are rework (e.g. code split...) that >>>>>> would help the MPU. >>>>> >>>>> Yes, that's exactly what I intend to do. I will send out the >>>>> patches (similar to this) which will not be impacted by the MPU >>>>> changes. >>>>> >>>>> So, that both as an author/reviewer, it helps to restrict MPU serie >>>>> to only MPU specific changes. > >>>>> Can you suggest some change to the commit message, so that we can >>>>> commit it (without giving any false impression that Xen boots on >>>>> Cortex-R52) > >>>>> May be adding this line to the commit message helps ? > >>>>> "However, Xen does not fully boot on Cortex-R52 as it requires MPU >>>>> support which is under review. > >>>>> Once Xen is supported on Cortex-R52, SUPPORT.md will be amended to >>>>> reflect it." >>>> >>>> While writing an answer for this patch, I was actually wondering >>>> whether the CPU allowlist still make sense for the 32-bit ARMv8-R? >>>> >>>> From Armv7-A, we needed it because some CPUs need specific quirk >>>> when booting. But it would be best if we can get rid of it for >>>> 32-bit ARMv8-R. >>>> >>>> Looking at your patch, your merely providing stubs. Do you have any >>>> plan to fill them up? >>> >>> Actually, I would use cr52_init in a later patch to write to CNTFRQ. >>> See below :- >>> >>> +#define XPAR_CPU_CORTEXR52_0_TIMESTAMP_CLK_FREQ  800000U >>> + >>>   cr52_init: >>> +        /* >>> +         * Set counter frequency  800 KHZ >>> +         * >>> +         * Set counter frequency, CNTFRQ >>> +         */ >>> +        ldr     r0,=XPAR_CPU_CORTEXR52_0_TIMESTAMP_CLK_FREQ >>> +        mrc     15,0,r1,c14,c0,0  /* Read CNTFRQ */ >>> +        cmp     r1,#0 >>> +        /* Set only if the frequency read is 0 */ >>> +        mcreq   15,0,r0,c14,c0,0  /* Write CNTFRQ */ >>> + >>>           mov pc, lr >> >> Why can't you use the device-tree (see clock-frequency) as all the >> other buggy platform does? > > That's a good suggestion :). Also, I can do this in the platform > specific .init(). I am not sure I understand why you are referring to .init() when you can simply add the property in the device-tree. We should not add new .init() if platform-agnostic way to do it. > > Then, can I add the empty stubs for R52 (similar to > https://elixir.bootlin.com/linux/latest/source/arch/arm/mm/proc-v7m.S#L165 Cortex-M7, cpu_v7m_proc_init(), cpu_v7m_switch_mm() are stubs). > > Or do you propose something like this :- > > --- a/xen/arch/arm/arm32/head.S > +++ b/xen/arch/arm/arm32/head.S > @@ -322,7 +322,7 @@ cpu_init: >          PRINT("- Setting up control registers -\r\n") > >          mov   r5, lr                       /* r5 := return address */ > - > +#ifndef CONFIG_ARM_NO_PROC_INIT >          /* Get processor specific proc info into r1 */ >          bl    __lookup_processor_type >          teq   r1, #0 > @@ -337,7 +337,7 @@ cpu_init: >          ldr   r1, [r1, #PROCINFO_cpu_init]  /* r1 := vaddr(init func) */ >          adr   lr, cpu_init_done             /* Save return address */ >          add   pc, r1, r10                   /* Call paddr(init func) */ > - > +#endif I think it would be best if you just #ifdef the fail below. So if the config selected, then you will still be able to have a Xen that can boot Cortex-A15 or a core that don't need _init. Note that for now, we should only select this new config for Armv8-R because there are some work to confirm it would be safe for us to boot Xen 32-bit Arm on any CPUs. I vaguely remember that we were making some assumptions on the cache type in the past. But maybe we other check in place to check such assumption. If this can be confirm (I am not ask you to do it, but you can) then we could even get rid of the #ifdef. Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Fri Jun 23 22:57:20 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 23 Jun 2023 22:57:20 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554448.865627 (Exim 4.92) (envelope-from ) id 1qCpiF-0002O0-9y; Fri, 23 Jun 2023 22:57:07 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554448.865627; Fri, 23 Jun 2023 22:57:07 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCpiF-0002Nt-6M; Fri, 23 Jun 2023 22:57:07 +0000 Received: by outflank-mailman (input) for mailman id 554448; Fri, 23 Jun 2023 22:57:06 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCpiD-0002Nj-Va; Fri, 23 Jun 2023 22:57:05 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCpiD-0005rI-Ns; Fri, 23 Jun 2023 22:57:05 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCpiD-0007Kn-Ef; Fri, 23 Jun 2023 22:57:05 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qCpiD-00032w-EA; Fri, 23 Jun 2023 22:57:05 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=CnLyrFc+p/i9MqxEWapbXmKaeyBZ0qufPNAWErxR9Mw=; b=L8GfLj+OlChotlCoD06R2ovmMO weFsbS/N40X1TJ8RLgFq92gu4ZPlNP22YqMGFPNdwANwrA2rzJ3Mq8/rgcfN1f0MvfgtFr1XiS/LB ioKsj05gR8irFebztsR+JYvaCuTGTfClSTkOA/EXYt5lFkNq+vWzD9WI791hkKet6r1g=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [ovmf test] 181569: all pass - PUSHED X-Osstest-Versions-This: ovmf=57796711371d42d980d50bc9299972b109d09035 X-Osstest-Versions-That: ovmf=6ee981c858daeb08c8ab6d357a55c131875aae3a From: osstest service owner Date: Fri, 23 Jun 2023 22:57:05 +0000 flight 181569 ovmf real [real] http://logs.test-lab.xenproject.org/osstest/logs/181569/ Perfect :-) All tests in this flight passed as required version targeted for testing: ovmf 57796711371d42d980d50bc9299972b109d09035 baseline version: ovmf 6ee981c858daeb08c8ab6d357a55c131875aae3a Last test of basis 181567 2023-06-23 16:40:52 Z 0 days Testing same since 181569 2023-06-23 20:44:26 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Corvin Köhne Gerd Hoffmann Peter Grehan jobs: build-amd64-xsm pass build-i386-xsm pass build-amd64 pass build-i386 pass build-amd64-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-i386-pvops pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Pushing revision : To xenbits.xen.org:/home/xen/git/osstest/ovmf.git 6ee981c858..5779671137 57796711371d42d980d50bc9299972b109d09035 -> xen-tested-master From xen-devel-bounces@lists.xenproject.org Sat Jun 24 02:07:44 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sat, 24 Jun 2023 02:07:44 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554455.865637 (Exim 4.92) (envelope-from ) id 1qCsgP-0003rS-K9; Sat, 24 Jun 2023 02:07:25 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554455.865637; Sat, 24 Jun 2023 02:07:25 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCsgP-0003rK-FJ; Sat, 24 Jun 2023 02:07:25 +0000 Received: by outflank-mailman (input) for mailman id 554455; Sat, 24 Jun 2023 02:07:25 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCsgP-0003rA-0C; Sat, 24 Jun 2023 02:07:25 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCsgO-0001FY-Q8; Sat, 24 Jun 2023 02:07:24 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCsgO-0008HC-Au; Sat, 24 Jun 2023 02:07:24 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qCsgO-000596-9z; Sat, 24 Jun 2023 02:07:24 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=tHP6DBRpO+9RzaLRiEh/oHc/x2zsDvW0e4FX79RiB3M=; b=cEgwrP93bPcyRH5ybrqgsGFqch 1m0rdJhe7AU3pC73JxS1tOn9mqDWdNKDCRnEvTKKiBeQjR8ifctuj7VsFMRVDZy49M3pysEWxnoJp 5W4BdOfZXLgMwzwKQGRfnfcurl6Tul17hhzWCPRKJJdM3rAqZgEZix28lgJf3W++1etc=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [linux-linus test] 181564: regressions - FAIL X-Osstest-Failures: linux-linus:test-armhf-armhf-xl-credit1:xen-boot:fail:regression linux-linus:test-amd64-amd64-libvirt-qcow2:guest-start/debian.repeat:fail:heisenbug linux-linus:test-armhf-armhf-xl:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-raw:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-credit2:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking linux-linus:test-armhf-armhf-libvirt:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-arndale:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-examine:reboot:fail:nonblocking linux-linus:test-armhf-armhf-xl-rtds:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-qcow2:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-vhd:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-multivcpu:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-qcow2:migrate-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-raw:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: linux=8a28a0b6f1a1dcbf5a834600a9acfbe2ba51e5eb X-Osstest-Versions-That: linux=6c538e1adbfc696ac4747fb10d63e704344f763d From: osstest service owner Date: Sat, 24 Jun 2023 02:07:24 +0000 flight 181564 linux-linus real [real] flight 181572 linux-linus real-retest [real] http://logs.test-lab.xenproject.org/osstest/logs/181564/ http://logs.test-lab.xenproject.org/osstest/logs/181572/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: test-armhf-armhf-xl-credit1 8 xen-boot fail REGR. vs. 180278 Tests which are failing intermittently (not blocking): test-amd64-amd64-libvirt-qcow2 19 guest-start/debian.repeat fail pass in 181572-retest Tests which did not succeed, but are not blocking: test-armhf-armhf-xl 8 xen-boot fail like 180278 test-armhf-armhf-libvirt-raw 8 xen-boot fail like 180278 test-armhf-armhf-xl-credit2 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 180278 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 180278 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 180278 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 180278 test-armhf-armhf-libvirt 8 xen-boot fail like 180278 test-armhf-armhf-xl-arndale 8 xen-boot fail like 180278 test-armhf-armhf-examine 8 reboot fail like 180278 test-armhf-armhf-xl-rtds 8 xen-boot fail like 180278 test-armhf-armhf-libvirt-qcow2 8 xen-boot fail like 180278 test-armhf-armhf-xl-vhd 8 xen-boot fail like 180278 test-armhf-armhf-xl-multivcpu 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 180278 test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qcow2 14 migrate-support-check fail never pass test-amd64-amd64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass version targeted for testing: linux 8a28a0b6f1a1dcbf5a834600a9acfbe2ba51e5eb baseline version: linux 6c538e1adbfc696ac4747fb10d63e704344f763d Last test of basis 180278 2023-04-16 19:41:46 Z 68 days Failing since 180281 2023-04-17 06:24:36 Z 67 days 127 attempts Testing same since 181564 2023-06-23 08:54:47 Z 0 days 1 attempts ------------------------------------------------------------ 2768 people touched revisions under test, not listing them all jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl fail test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-freebsd11-amd64 pass test-amd64-amd64-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale fail test-amd64-amd64-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 fail test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 fail test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine fail test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt fail test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu fail test-amd64-amd64-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-amd64-pygrub pass test-amd64-amd64-libvirt-qcow2 fail test-armhf-armhf-libvirt-qcow2 fail test-amd64-amd64-libvirt-raw pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw fail test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds fail test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-amd64-xl-vhd pass test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd fail ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 353609 lines long.) From xen-devel-bounces@lists.xenproject.org Sat Jun 24 07:00:05 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sat, 24 Jun 2023 07:00:05 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554489.865743 (Exim 4.92) (envelope-from ) id 1qCxFQ-00010Z-F6; Sat, 24 Jun 2023 06:59:52 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554489.865743; Sat, 24 Jun 2023 06:59:52 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCxFQ-00010S-Au; Sat, 24 Jun 2023 06:59:52 +0000 Received: by outflank-mailman (input) for mailman id 554489; Sat, 24 Jun 2023 06:59:50 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCxFO-00010H-Fe; Sat, 24 Jun 2023 06:59:50 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCxFO-0008Cs-DN; Sat, 24 Jun 2023 06:59:50 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCxFN-0001tq-Sw; Sat, 24 Jun 2023 06:59:49 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qCxFN-0000uU-SX; Sat, 24 Jun 2023 06:59:49 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=s1cZafdoqxD8l7zt4nBb9ohkWWe/lj0NX6e/iAOuBlQ=; b=E0zn/RiEh4Q1SaAg7sCb3VKvGx 56NMcSvgmmioKRJ29D0qEP3SnkEmCzjTFOExnn/EqYrLqVcoR41XDdvmyiRh2oFqz+hTQ4MfQhfNi KS5xqtIAi4Iqw7Ibhl0lBVt4vrAW5JE6lm9zpOrnVPg+NRS5+aVq7RxTMliptP9Pv37s=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable test] 181565: tolerable FAIL - PUSHED X-Osstest-Failures: xen-unstable:test-amd64-amd64-xl-qcow2:guest-start/debian.repeat:fail:heisenbug xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking X-Osstest-Versions-This: xen=5c84f1f636981dab5341e84aaba8d4dd00bbc2cb X-Osstest-Versions-That: xen=7a25a1501ca941c3e01b0c4e624ace05417f1587 From: osstest service owner Date: Sat, 24 Jun 2023 06:59:49 +0000 flight 181565 xen-unstable real [real] flight 181574 xen-unstable real-retest [real] http://logs.test-lab.xenproject.org/osstest/logs/181565/ http://logs.test-lab.xenproject.org/osstest/logs/181574/ Failures :-/ but no regressions. Tests which are failing intermittently (not blocking): test-amd64-amd64-xl-qcow2 21 guest-start/debian.repeat fail pass in 181574-retest Tests which did not succeed, but are not blocking: test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 181545 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop fail like 181545 test-armhf-armhf-libvirt 16 saverestore-support-check fail like 181545 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 181545 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 181545 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop fail like 181545 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop fail like 181545 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail like 181545 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 181545 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail like 181545 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop fail like 181545 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 181545 test-amd64-i386-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-i386-xl-pvshim 14 guest-start fail never pass test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-i386-libvirt 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-i386-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 15 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass test-armhf-armhf-libvirt 15 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 15 saverestore-support-check fail never pass test-armhf-armhf-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 15 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 16 saverestore-support-check fail never pass test-armhf-armhf-xl 15 migrate-support-check fail never pass test-armhf-armhf-xl 16 saverestore-support-check fail never pass test-armhf-armhf-xl-multivcpu 15 migrate-support-check fail never pass test-armhf-armhf-xl-multivcpu 16 saverestore-support-check fail never pass test-armhf-armhf-xl-credit1 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 16 saverestore-support-check fail never pass test-armhf-armhf-xl-credit2 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit2 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail never pass version targeted for testing: xen 5c84f1f636981dab5341e84aaba8d4dd00bbc2cb baseline version: xen 7a25a1501ca941c3e01b0c4e624ace05417f1587 Last test of basis 181545 2023-06-22 01:52:10 Z 2 days Testing same since 181552 2023-06-22 13:08:10 Z 1 days 3 attempts ------------------------------------------------------------ People who touched revisions under test: Alistair Francis Andrew Cooper Anthony PERARD Henry Wang Jan Beulich Jiamei Xie Julien Grall Michal Orzel Oleksii Kurochko Roger Pau Monné Shawn Anastasio Stefano Stabellini Stefano Stabellini jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64-xtf pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-prev pass build-i386-prev pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-xtf-amd64-amd64-1 pass test-xtf-amd64-amd64-2 pass test-xtf-amd64-amd64-3 pass test-xtf-amd64-amd64-4 pass test-xtf-amd64-amd64-5 pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl pass test-amd64-i386-xl pass test-amd64-coresched-i386-xl pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-i386-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-i386-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-i386-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-i386-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-i386-qemut-rhel6hvm-amd pass test-amd64-i386-qemuu-rhel6hvm-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-i386-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-freebsd10-amd64 pass test-amd64-amd64-qemuu-freebsd11-amd64 pass test-amd64-amd64-qemuu-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-i386-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-i386-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-i386-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-amd64-i386-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale pass test-amd64-amd64-examine-bios pass test-amd64-i386-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 pass test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 pass test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine pass test-amd64-i386-examine pass test-amd64-i386-freebsd10-i386 pass test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-i386-qemut-rhel6hvm-intel pass test-amd64-i386-qemuu-rhel6hvm-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt pass test-amd64-i386-libvirt pass test-amd64-amd64-livepatch pass test-amd64-i386-livepatch pass test-amd64-amd64-migrupgrade pass test-amd64-i386-migrupgrade pass test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu pass test-amd64-amd64-pair pass test-amd64-i386-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-i386-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-i386-xl-pvshim fail test-amd64-amd64-pygrub pass test-armhf-armhf-libvirt-qcow2 pass test-amd64-amd64-xl-qcow2 fail test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw pass test-amd64-i386-libvirt-raw pass test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds pass test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-amd64-i386-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-i386-examine-uefi pass test-amd64-amd64-libvirt-vhd pass test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd pass test-amd64-i386-xl-vhd pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Pushing revision : To xenbits.xen.org:/home/xen/git/xen.git 7a25a1501c..5c84f1f636 5c84f1f636981dab5341e84aaba8d4dd00bbc2cb -> master From xen-devel-bounces@lists.xenproject.org Sat Jun 24 07:04:41 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sat, 24 Jun 2023 07:04:41 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554497.865754 (Exim 4.92) (envelope-from ) id 1qCxK4-0002aJ-88; Sat, 24 Jun 2023 07:04:40 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554497.865754; Sat, 24 Jun 2023 07:04:40 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCxK4-0002aC-3Y; Sat, 24 Jun 2023 07:04:40 +0000 Received: by outflank-mailman (input) for mailman id 554497; Sat, 24 Jun 2023 07:04:38 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCxK2-0002a4-3n for xen-devel@lists.xenproject.org; Sat, 24 Jun 2023 07:04:38 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCxK1-0008K2-GV; Sat, 24 Jun 2023 07:04:37 +0000 Received: from [193.85.242.128] (helo=[192.168.148.103]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qCxK1-0007j3-Ag; Sat, 24 Jun 2023 07:04:37 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To: References:Cc:To:From:Subject:MIME-Version:Date:Message-ID; bh=6lR3WVXVkcnuiS+RQoCH1ZO+PGBPPkSnnfnKsHGt2lg=; b=bejnP3DoQd+zi9EqSBzL98jKq1 Qs/fTH2EeuozLGDKQ00d4XJRtuFExgak7KQpgrJ6R8bKRq0SMLYbEysKH2qV3ulk+Ei8WlVM0w0Ou 9Mt4nqr7FgoYiPW42caeNGHJph3NgyCJgNPU14gGAYV1e0SEXxNJLPKWWKoj/wdzjc10=; Message-ID: Date: Sat, 24 Jun 2023 08:04:35 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v1] xen/arm: arm32: Add support to identify the Cortex-R52 processor Content-Language: en-US From: Julien Grall To: Ayan Kumar Halder , Ayan Kumar Halder , xen-devel@lists.xenproject.org Cc: sstabellini@kernel.org, stefano.stabellini@amd.com, Volodymyr_Babchuk@epam.com, bertrand.marquis@arm.com References: <20230620151736.3720850-1-ayan.kumar.halder@amd.com> <3b7f584e-700e-4598-f36e-51a96140323e@xen.org> <030fc5e8-8293-2306-06eb-9275c2a2c9e5@xen.org> <2fbf6885-5bb8-4b49-522d-eb265349d4b7@xen.org> <75008370-7141-757c-0768-14b654724f07@amd.com> In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Hi, On 23/06/2023 22:26, Julien Grall wrote: >> --- a/xen/arch/arm/arm32/head.S >> +++ b/xen/arch/arm/arm32/head.S >> @@ -322,7 +322,7 @@ cpu_init: >>           PRINT("- Setting up control registers -\r\n") >> >>           mov   r5, lr                       /* r5 := return address */ >> - >> +#ifndef CONFIG_ARM_NO_PROC_INIT >>           /* Get processor specific proc info into r1 */ >>           bl    __lookup_processor_type >>           teq   r1, #0 >> @@ -337,7 +337,7 @@ cpu_init: >>           ldr   r1, [r1, #PROCINFO_cpu_init]  /* r1 := vaddr(init >> func) */ >>           adr   lr, cpu_init_done             /* Save return address */ >>           add   pc, r1, r10                   /* Call paddr(init func) */ >> - >> +#endif > > I think it would be best if you just #ifdef the fail below. So if the > config selected, then you will still be able to have a Xen that can boot > Cortex-A15 or a core that don't need _init. > > Note that for now, we should only select this new config for Armv8-R > because there are some work to confirm it would be safe for us to boot > Xen 32-bit Arm on any CPUs. I vaguely remember that we were making some > assumptions on the cache type in the past. But maybe we other check in > place to check such assumption. > > If this can be confirm (I am not ask you to do it, but you can) then we > could even get rid of the #ifdef. I had a look through the code. We have a check in the 32-bit version of setup_mm() for the instruction cache type. So I think it would be OK to relax the check in head.S. Bertrand, Stefano, what do you think? Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Sat Jun 24 07:11:47 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sat, 24 Jun 2023 07:11:47 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554501.865762 (Exim 4.92) (envelope-from ) id 1qCxQh-00045O-TF; Sat, 24 Jun 2023 07:11:31 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554501.865762; Sat, 24 Jun 2023 07:11:31 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCxQh-00045H-QQ; Sat, 24 Jun 2023 07:11:31 +0000 Received: by outflank-mailman (input) for mailman id 554501; Sat, 24 Jun 2023 07:11:30 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCxQg-00045A-E0 for xen-devel@lists.xenproject.org; Sat, 24 Jun 2023 07:11:30 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCxQY-0000BV-JL; Sat, 24 Jun 2023 07:11:22 +0000 Received: from [193.85.242.128] (helo=[192.168.148.103]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qCxQY-0008Ae-CX; Sat, 24 Jun 2023 07:11:22 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=E8FuhcThO2Xy/jOeFW0iTVTriPZbuxy46MOWnnYcb8Y=; b=q7fho2uOkghBbT85LlU8exfuvv stvt5WOG+l9vRvfhkGi97P8iSxyfORow96jn3XuLbzXvy3kK1ViQFjk80tFyYxWa9vfCvl/+FbER1 /ZMM3/7a8mka5peJ8gbp/MGj4ik8aNyZIRNyK7OTKJNaN4P+DPfkFzv8jx2gy5rXCHRE=; Message-ID: <63d48b43-8ce9-3df6-1407-17c2af734828@xen.org> Date: Sat, 24 Jun 2023 08:11:19 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [XEN PATCH v4] xen/include: avoid using a compiler extension for BUILD_BUG_ON_ZERO. Content-Language: en-US To: Jan Beulich , Nicola Vetrini Cc: sstabellini@kernel.org, michal.orzel@amd.com, xenia.ragiadakou@amd.com, ayan.kumar.halder@amd.com, consulting@bugseng.com, andrew.cooper3@citrix.com, roger.pau@citrix.com, bertrand.marquis@arm.com, George Dunlap , Wei Liu , xen-devel@lists.xenproject.org References: <4ab190bd0d80898311aa9f1e912f18e7cdef2762.1687510380.git.nicola.vetrini@bugseng.com> From: Julien Grall In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi, First, one remark about the title. We don't usually add full stop in the title. I am happy to fix it on commit. On 23/06/2023 18:16, Jan Beulich wrote: > I'm not happy to, with the continued use of the > two U suffixes. It may seem minor, but to me it feels like setting a > bad precedent. I wasn't able to find the reasoning behind your objections in the archive. I would like to understand your concern before providing any ack. Would you be able to give a pointer? Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Sat Jun 24 07:33:19 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sat, 24 Jun 2023 07:33:19 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554505.865773 (Exim 4.92) (envelope-from ) id 1qCxlb-0006ZZ-HI; Sat, 24 Jun 2023 07:33:07 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554505.865773; Sat, 24 Jun 2023 07:33:07 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCxlb-0006ZS-EH; Sat, 24 Jun 2023 07:33:07 +0000 Received: by outflank-mailman (input) for mailman id 554505; Sat, 24 Jun 2023 07:33:06 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCxla-0006ZM-DB for xen-devel@lists.xenproject.org; Sat, 24 Jun 2023 07:33:06 +0000 Received: from EUR04-HE1-obe.outbound.protection.outlook.com (mail-he1eur04on2087.outbound.protection.outlook.com [40.107.7.87]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 5ab019fd-1261-11ee-8611-37d641c3527e; Sat, 24 Jun 2023 09:33:04 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by DU0PR04MB9225.eurprd04.prod.outlook.com (2603:10a6:10:350::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.26; Sat, 24 Jun 2023 07:32:34 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::e442:306f:7711:e24c%5]) with mapi id 15.20.6521.024; Sat, 24 Jun 2023 07:32:28 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 5ab019fd-1261-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=WyyHRo0Ama/pd6PWkaNtomia12J1Mb8wVVvbB06djoJ32c6hJtxjhnMu2oKVLbk47XODyFE32CIIVSTo34FdF55O/e2iZTz8pSGmrvIQVkaomqRWW6pi9KONt+0hLk2CjPD1SRx77SJBIf3oG76l/BHhVk9NOM/anMBAHSrg+KngOhtPdxjaNDmh3gqrdirRVHS9J6W2xK5y16r5NITIAbgRkrffgm6572YurE+iorb108GkwvAy+pz2+9Nx6jkFFBiV6kPO9noggMyZnKCUvRRxa1j39bBtIzKZdMDi8YxG9sjv4hos3AtyIdaxLdosScU1sOEGdzgw3y4awFYOdg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=fotqRkqNoYTuzqU0W1r0ierS+Msh9fLdtl0bqziEVQ4=; b=ofgcu7Rz+kanLdjiq+4z/HD3XeDA3GpDsi9sjOghMPNCOEn8Z58Fjq3ciar2mGVpCO1NzaZj0nRAsO1yH546kIHu/9NdjYUWkttuKAvrWhT3EyaIgSMqJDD7w41RdZnlFktZUJcm5Y75Q9nSVs/afror+W4RJYBUvAzY/Hm8y1TWnl+W2WJJJWgS/QR0cWROa3ENTelbNL02ka05/mGDMC3aY00lm/zZlzgtXEjF71r2k4Oegno7S4TF6HGV5MTzo/yYCKQS+1C47/W4Ddraafb41VzYSf4yeSbWXjYjXxG0fblM5RtziAfnAacIC7v7rvCHBo7HIMWhnMG5EcYl9w== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=fotqRkqNoYTuzqU0W1r0ierS+Msh9fLdtl0bqziEVQ4=; b=eocVCOmEJYrhdw5Slf52nBReD7EBnOEPgua5L6uXjntPcJoqm4+hg+coZ4I4cEaS4D0vubtfBqvKsvoDLtjYAtI6B8D3VbbWwvsO8qgAkJ3lMflKFtOfCICFe8h7CTz093Pu+OCGbVhPK3/x7oceyw+O3b/AjbCliCt2r4qEUSF2WEwXJImaaF5VlerJwB2pwqAlPxI4QMPozvyypQqhSl2gYbz2UqWerkzLDFfW0D2zeHFC2dt4w2WcWhFbCELZSd/wWlepgQqDMQjTcOmcyr7kKpNCqMEixftjexzIgFuRoKB74QtbbuF8bSakq8ApukjTRYdW9d2uGcnbgMsgtQ== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: Date: Sat, 24 Jun 2023 09:32:26 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [XEN PATCH v4] xen/include: avoid using a compiler extension for BUILD_BUG_ON_ZERO. To: Julien Grall Cc: sstabellini@kernel.org, michal.orzel@amd.com, xenia.ragiadakou@amd.com, ayan.kumar.halder@amd.com, consulting@bugseng.com, andrew.cooper3@citrix.com, roger.pau@citrix.com, bertrand.marquis@arm.com, George Dunlap , Wei Liu , xen-devel@lists.xenproject.org, Nicola Vetrini References: <4ab190bd0d80898311aa9f1e912f18e7cdef2762.1687510380.git.nicola.vetrini@bugseng.com> <63d48b43-8ce9-3df6-1407-17c2af734828@xen.org> Content-Language: en-US From: Jan Beulich In-Reply-To: <63d48b43-8ce9-3df6-1407-17c2af734828@xen.org> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: VI1P190CA0051.EURP190.PROD.OUTLOOK.COM (2603:10a6:800:1bb::10) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|DU0PR04MB9225:EE_ X-MS-Office365-Filtering-Correlation-Id: cda6ac62-f6b2-4e0e-cc8d-08db7485293d X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: wiOJHuByQIfLfPEjizqiy9uu68I7T0rQidn2IxEHdHuEKHBO7hgCoON7fTT3cQUZrccCWQsXomR0xe+hv+A5q01b85N2LEsBB2hSO3Bb66p0hhRC2Ioob8jN8XzHp/ro64K0kZM0LwgV6W5TTRRWo6HSpEuTlM609FjJ4UYs3KhCLZa0XFtcc+yC6Cp2EcHstJDm3BkpofqWsQnSbhtINQfTvsQgZIsi/g+1h1ZOXxE+oGNKa53SBX6mzknVErxzz6hCsYPOSEwl3beIOYaC2xPs3Jr/GE6Hmj1kj606P1Ga/G6vSApaiM25BB3ZqhGQe8Rs0AC+92dJ0fbAy/bOMR1zamdaXPXDKmCiP4+tjLguq7vnyaFdssa8sJMwkWr/zOT7wVNDvLQMK9IlffDZWvA2MiGpd8aiTXghUl7YIofO+qdgmJ1Uioswmn/oDMrAyyjMkP1Va2ua3zLs4DY71Hf0b1MMAlvrsGvJsgS2sBTQ3UJpoD1ITYy4SMH42wD5TjWKIfX0zj8Bm2bcrqWnf6BktKs1I1BwXpNod3RNRcNaLUDrh0yS0Him81GweaVvGZAk6S3rIC0MMJ16iBj4E24U7tljLI2BXtN6yAFfyMtj9UoJK77B3cNFcEut9SDI/gZmSw+MAK6x23SFQavN5Q== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(396003)(376002)(366004)(346002)(136003)(39860400002)(451199021)(7416002)(31686004)(5660300002)(4326008)(66946007)(66556008)(66476007)(6916009)(478600001)(36756003)(316002)(8676002)(8936002)(2906002)(4744005)(54906003)(31696002)(86362001)(41300700001)(6486002)(186003)(53546011)(6512007)(6506007)(26005)(38100700002)(2616005)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?UVY3dGFXQU93dVFXako4WG5BTmNmNnBGM3N0ZEhYM2p5VTF0OUpYdUNzUUlD?= =?utf-8?B?SDZMU3F3bzBGNkVzVTJMRDZWV1RraGIweXIyVTBqUXZsanhuYW5Yb2lMSmw4?= =?utf-8?B?Y2E2SFRaMHZTb0pXd1pzMytNeXVyUTlhV1VkNmtTUzdBUTk1ZDg1ZXFsUXVz?= =?utf-8?B?TXZlZjZ5eHJMTVNacHhNWitiWXVDYzlOaVFnRjVPN1ExYWVVS3ZrU0FxV2ZC?= =?utf-8?B?eUtNSDU4a29najNTTFd5NlBSS3VFYk0va3dPbkk5SWUxVVhUTENuclBsbWVm?= =?utf-8?B?Z2hZWVoxMWFGNndKMWI1WVZDNHUxMWk3TzlqR1hiQWhocEVqamxhUEZNVGU0?= =?utf-8?B?KzN1K3JOdTcyVDRaeWkrYUxJeVhPMVVXalpQdGdNOE5HYVdHMHBJWG1VR0ty?= =?utf-8?B?M3lXNm5jQzFUT1c2U3ozZmpUbUdJWGJXaEhKdE4xYTZoQ2tBWFZvVnI0OW5E?= =?utf-8?B?QUNDeFRkMnpOVmUxeDVGYXVzSjBwcWQ4eUFIV1l3U1h0OG9YbEcyYnh0TXM4?= =?utf-8?B?RDJxZHpFL1RFTTd0NFRJVlhwQ2VQdmZ3LzEybVFNdG5MdHIySXgvOFZpNm9r?= =?utf-8?B?UUZwa3B0bWFKVUdYTTlJcUZrandSdVhqYVNncmxXTDJnaU9OQ0JONUx1Y08w?= =?utf-8?B?d0pqL2liWEZTMGJoaGwwZjYrek5iVlp3VS9icU1PeWtYWUlJK0N5aTVZMkNq?= =?utf-8?B?NkxtcWtQRHRacDhvTHh0Sm5SbGdmeWVQREE0UXRMUE81VllVOHdWOVVLSWty?= =?utf-8?B?bFROcUxCVUpUaytPSzkwbzFnSTlLR3ArWGt6R09PaHhLTUhFRTlwOFZqV2RN?= =?utf-8?B?RkNkUVo5RWVRUzF4WG05M051VnZJVWRIYVJOMmpkNlNtMDhRcUNPbjluN3F5?= =?utf-8?B?cW85dzhjaXR6aWI0ajF4bWhHck5WeUZDeGViUEhDT25tQnozRndxK2pOQS9w?= =?utf-8?B?Tm01YUhEbVVqbkdhNEpybC9well3blFGTUJ0WVIvZnRkcHA1aG1uaEU1SGRE?= =?utf-8?B?RWtjQ1kzdDNLbzV4RDFSYUpUejgrTWF2NVpsaTBnMGhDMGk1bCtUNHZ1YTR1?= =?utf-8?B?Z3Y4QjIzdktJdGZTcmd2TkpEb1NuRHRYRFp0M2JRUU0ycjBuOHdEUU9idmxW?= =?utf-8?B?WlA2WlRJMlNtQkFvQWUvUG15NU1ib0psQ051a2plNmpvczBhOFlrNkFSeGxm?= =?utf-8?B?ekIyOXJoeERvODBMblYrMitscjZHQnRsamRGVE5NbHlOUjA2SUFOZkVWeXpX?= =?utf-8?B?TTZ1WW55YU43dktSckUybUI2Q0VuYktCYXBTcVZYa1BOcncrN1Z4ZnJFTDRO?= =?utf-8?B?WGd1ZTVNQjQ2VjhtOEpYNGFNTllnN0pxUU9iU2YydjRSV1VXR0ZPV2J4ZlNv?= =?utf-8?B?ajBobStGdmg5a092Tzdva1FQc2ltRzhaODh6R3VEbEFDcXRXdFFrU2grNmQ1?= =?utf-8?B?aWVuVUp6QUlPV1o2Q3J6RkY0cTZKQ21PR21STDZCSW9seFFOcWl3YlRsZndL?= =?utf-8?B?V2RqRjREc3g1NkJwMnV5aW1waEd2VGVIY3ZZUlh5SURxcGtqbmYxZWxIUkJ3?= =?utf-8?B?TVhuU25VVFR1T2hJcG1YcnJZYWlQL1lWUmhhWSttNFRmdWJUSEh2QmVZUlRz?= =?utf-8?B?SW1CWUFadUMvQUw1UU9CeTRlUUNmc3pWaE5MM2EvanZ6VkFnU3dGVHphZzRB?= =?utf-8?B?VTBqQzdrbkFsNWZiMXlJV1FHc1JqeUxkVlJqUkVWSG5EejNzZkdmR3dYVWdo?= =?utf-8?B?KzkycXYvKzFhUHNOUkxGWmpvTGtiR1huTVlObHdKYW11TEw4R0ZvcisrQURM?= =?utf-8?B?eVhya24zbjBxWkVDekluQUlYekpqemovSzd4WGl4QWNxSlB5clB0bkFsVG4z?= =?utf-8?B?NTZaa3E5NTNpdjh6cnhVQU9XN29vcTZTRTNzemkreVJCZ0U0RVlXcWZWOThP?= =?utf-8?B?VlhUWnNJSDcvL2U1VStUSmNUdmhDYzZpTmQ4L3owc083L25rcCtzMldWd3BC?= =?utf-8?B?eDNpYUhZK1R2WmFJcFZ2dGJXbkppZWRZYVY1dVg4SndLNXlMcEYrTHJEUHVF?= =?utf-8?B?NXMvcGRyRUNSLzFHV25teHJSaEg5OHhmN0RCVEdueGkxSkRpM2I2cVFkWFh5?= =?utf-8?Q?W+sqPUHEuxy7/HXQOE0I74fkg?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: cda6ac62-f6b2-4e0e-cc8d-08db7485293d X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 24 Jun 2023 07:32:27.8923 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: xTY7J61KcpXOFJJmdvwknKhJgUSI5lgspkWFtQZPX1hI/gIpV3iKR7nhuS3hZyhuE+lPGuC6peE1ySZ2k9eZ+Q== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU0PR04MB9225 On 24.06.2023 09:11, Julien Grall wrote: > On 23/06/2023 18:16, Jan Beulich wrote: >> I'm not happy to, with the continued use of the >> two U suffixes. It may seem minor, but to me it feels like setting a >> bad precedent. > > I wasn't able to find the reasoning behind your objections in the > archive. I would like to understand your concern before providing any > ack. Would you be able to give a pointer? I appreciate the Misra-invoked desire to add U suffixes where otherwise (visual) ambiguities may exist. But on numbers like 0 or 1, and when use of e.g. resulting #define-s doesn't require the constants to be of unsigned type, I view such suffixes purely as clutter. In the specific case I might go as far as questioning why, when U is added, L isn't added as well, to "support" the size_t result aspect also from the "width of type" perspective. Jan From xen-devel-bounces@lists.xenproject.org Sat Jun 24 07:50:18 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sat, 24 Jun 2023 07:50:18 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554509.865783 (Exim 4.92) (envelope-from ) id 1qCy1w-0008DU-Vb; Sat, 24 Jun 2023 07:50:00 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554509.865783; Sat, 24 Jun 2023 07:50:00 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCy1w-0008DN-SY; Sat, 24 Jun 2023 07:50:00 +0000 Received: by outflank-mailman (input) for mailman id 554509; Sat, 24 Jun 2023 07:49:59 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCy1v-0008DH-BK for xen-devel@lists.xenproject.org; Sat, 24 Jun 2023 07:49:59 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCy1u-000146-Mu; Sat, 24 Jun 2023 07:49:58 +0000 Received: from [193.85.242.128] (helo=[192.168.148.103]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qCy1u-00012W-G0; Sat, 24 Jun 2023 07:49:58 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=C9JIJ8zMUxLE8aLO12blwOU1mObibezvrJKH6hCSsLU=; b=mZBeNOkUzS71lteUivqtPBfIhO owT1zuxRZS0d6zF5+d7560RUacu8Xje+YE50/sqwAc5BXVRUhewBTKtr1UpfrPqHIjPkrSVoB/eNY o/2/OH3QCzGwo3V9WsxcgMLUuJLDs5t9GjbaXayNFr38O07cxGiz16X76OtbnTwgL1YU=; Message-ID: <12c24386-a9de-d2f4-73cf-6fa3611f1e3b@xen.org> Date: Sat, 24 Jun 2023 08:49:56 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH 3/7] xen/arm64: head: Add missing isb in setup_fixmap() Content-Language: en-US To: Michal Orzel , xen-devel@lists.xenproject.org Cc: Luca.Fancellu@arm.com, Henry.Wang@arm.com, Julien Grall , Stefano Stabellini , Bertrand Marquis , Volodymyr Babchuk References: <20230619170115.81398-1-julien@xen.org> <20230619170115.81398-4-julien@xen.org> <3fa4faa1-f8be-5b8a-f8ba-3c7cc7c80968@xen.org> From: Julien Grall In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi, On 21/06/2023 11:13, Michal Orzel wrote: > > > On 21/06/2023 12:02, Julien Grall wrote: >> >> >> Hi, >> >> On 21/06/2023 10:33, Michal Orzel wrote: >>> >>> >>> On 19/06/2023 19:01, Julien Grall wrote: >>>> >>>> >>>> From: Julien Grall >>>> >>>> On older version of the Arm Arm (ARM DDI 0487E.a, B2-125) there were >>>> the following paragraph: >>>> >>>> "DMB and DSB instructions affect reads and writes to the memory system >>>> generated by Load/Store instructions and data or unified cache >>>> maintenance instructions being executed by the PE. Instruction fetches >>>> or accesses caused by a hardware translation table access are not >>>> explicit accesses." >>>> >>>> Newer revision (e.g. ARM DDI 0487J.a) doesn't have the second sentence >>>> (it might be somewhere else in the Arm Arm). But the interpretation is >>>> not much different. >>>> >>>> In setup_fixmap(), we write the fixmap area and may be used soon after, >>>> for instance, to write to the UART. IOW, there could be hardware >>>> translation table access. So we need to ensure the 'dsb' has completed >>>> before continuing. Therefore add an 'isb'. >>>> >>>> Fixes: 2b11c3646105 ("xen/arm64: head: Remove 1:1 mapping as soon as it is not used") >>>> Signed-off-by: Julien Grall >>> Reviewed-by: Michal Orzel >>> >>> I'm happy with the whole series but I do not see a point in flooding each patch with my tag >>> since you already got two (from Henry and Luca). >> >> Thanks. To clarify, shall I add it in each patch or only this one? > Whatever you prefer. If you care about my tag and want to have more than two, feel free to add it to > all the patches. Ok. I will not then because I need to add the ack manually. Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Sat Jun 24 08:24:20 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sat, 24 Jun 2023 08:24:20 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554519.865800 (Exim 4.92) (envelope-from ) id 1qCyYy-0004mA-Be; Sat, 24 Jun 2023 08:24:08 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554519.865800; Sat, 24 Jun 2023 08:24:08 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCyYy-0004lD-7n; Sat, 24 Jun 2023 08:24:08 +0000 Received: by outflank-mailman (input) for mailman id 554519; Sat, 24 Jun 2023 08:24:07 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCyYx-0004hs-9n; Sat, 24 Jun 2023 08:24:07 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCyYv-0002NZ-V3; Sat, 24 Jun 2023 08:24:05 +0000 Received: from [193.85.242.128] (helo=[192.168.148.103]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qCyYv-0003GE-O4; Sat, 24 Jun 2023 08:24:05 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=XKVeNK4nZuoy81jPfnNXAF8mkWnlQ7qSHUiFXJiiZ4c=; b=KV+nj0g3ZWIPiNpLMQyHbZ8wi/ Gf79ZF6fnqdb5Sd5siwgcl7keIKuvEYpCvlg/gi3vu0JSq0d5ohF7QnlNSXHvfBTiv93MgvRktYjf F2JArzX6vM0EnuvCUrPOUv7HoWZnVXTG+ix7BOCcgooZRT00wx/TFo1ywtiXXjPjzvDs=; Message-ID: <1ef5a5a6-01ea-4f3f-c05f-7dfd204a1861@xen.org> Date: Sat, 24 Jun 2023 09:24:03 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: Asking for help to debug xen efi on Kunpeng machine Content-Language: en-US To: Jiatong Shen Cc: Stefano Stabellini , xen-users@lists.xenproject.org, xen-devel@lists.xenproject.org, bertrand.marquis@arm.com References: <78899eac-9de8-3626-8f40-98f993984f95@xen.org> From: Julien Grall In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi, On 20/06/2023 08:09, Jiatong Shen wrote: > Hello Julien, > > Sorry for the delay.. I obtained the full xen log and attached it in the > mail. Please take a look when you are available. Thank you very much Thanks for sharing the logs. The following lines are interesting: [ 1.081905] Hisilicon MBIGEN-V2 HISI0152:00: Failed to create mbi-gen irqdomain [ 1.082107] Hisilicon MBIGEN-V2 HISI0152:01: Failed to create mbi-gen irqdomain [ 1.082204] Hisilicon MBIGEN-V2 HISI0152:02: Failed to create mbi-gen irqdomain [ 1.082294] Hisilicon MBIGEN-V2 HISI0152:03: Failed to create mbi-gen irqdomain [ 1.082381] Hisilicon MBIGEN-V2 HISI0152:04: Failed to create mbi-gen irqdomain [ 1.082466] Hisilicon MBIGEN-V2 HISI0152:05: Failed to create mbi-gen irqdomain Looking at a Hisilicon Device-Tree, this is an interrupt controller behind the GICv3 ITS. You will need to rebuild Xen with CONFIG_HAS_ITS=y. Also, can you confirm which devices are behind the MBI-Gen? If this is only PCI devices, then you are probably fine to give the controllers to dom0. But for PCI passthrough, you will most likely need to implement it a driver in Xen. Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Sat Jun 24 09:38:25 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sat, 24 Jun 2023 09:38:25 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554552.865820 (Exim 4.92) (envelope-from ) id 1qCziZ-0004ZL-GL; Sat, 24 Jun 2023 09:38:07 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554552.865820; Sat, 24 Jun 2023 09:38:07 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCziZ-0004ZE-D3; Sat, 24 Jun 2023 09:38:07 +0000 Received: by outflank-mailman (input) for mailman id 554552; Sat, 24 Jun 2023 09:38:05 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCziX-0004Z4-QE; Sat, 24 Jun 2023 09:38:05 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCziX-0003vE-HB; Sat, 24 Jun 2023 09:38:05 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qCziX-0001k9-2Q; Sat, 24 Jun 2023 09:38:05 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qCziX-0006nl-1x; Sat, 24 Jun 2023 09:38:05 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=9M/uRan3myXGL5iL8mcKUVqhtj1ZaLANldcPYpLQf4I=; b=bSHBDz0RNG8cCgoMDdRa2BfPjp 8mCLUqWgnU3kMcCMkhti5tR3xfA4kWTgWJ9dSxD+iKMMlbcmBeojNwgdh2PzKQGIeqBSwvRQSn0k0 oalLHUk54TKi0/VhIvEh8fJ6LNWRJrG3L1uThvDgwC71sykdgxWYF+VAiq8jTOfFVwqI=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [linux-5.4 test] 181571: regressions - trouble: broken/fail/pass X-Osstest-Failures: linux-5.4:test-amd64-amd64-libvirt::broken:regression linux-5.4:build-amd64:xen-build:fail:regression linux-5.4:test-amd64-amd64-libvirt:host-install(5):broken:heisenbug linux-5.4:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:xen-install:fail:heisenbug linux-5.4:test-armhf-armhf-xl:guest-start/debian.repeat:fail:heisenbug linux-5.4:build-amd64-libvirt:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-dom0pvh-xl-amd:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-examine:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-dom0pvh-xl-intel:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-examine-uefi:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-examine-bios:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-pair:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-pygrub:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-qemuu-freebsd11-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-qemuu-freebsd12-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-qemuu-nested-amd:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-qemuu-nested-intel:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-credit1:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-credit2:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-multivcpu:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-pvhv2-amd:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-pvhv2-intel:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-pvshim:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qcow2:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qemut-debianhvm-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qemut-win7-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qemut-ws16-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-rtds:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-shadow:build-check(1):blocked:nonblocking linux-5.4:test-amd64-coresched-amd64-xl:build-check(1):blocked:nonblocking linux-5.4:test-amd64-coresched-i386-xl:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-examine:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-examine-bios:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-examine-uefi:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-freebsd10-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-freebsd10-i386:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-libvirt-raw:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-pair:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-qemut-rhel6hvm-amd:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-qemut-rhel6hvm-intel:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-qemuu-rhel6hvm-amd:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-qemuu-rhel6hvm-intel:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-pvshim:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-qemut-debianhvm-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-qemut-win7-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-qemut-ws16-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-shadow:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-vhd:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-xl-credit1:guest-start/debian.repeat:fail:nonblocking linux-5.4:test-amd64-amd64-xl-qcow2:guest-start/debian.repeat:fail:nonblocking linux-5.4:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-multivcpu:guest-start:fail:nonblocking linux-5.4:test-armhf-armhf-xl-credit2:guest-start/debian.repeat:fail:nonblocking linux-5.4:test-amd64-i386-xl-vhd:guest-start/debian.repeat:fail:nonblocking linux-5.4:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking linux-5.4:test-armhf-armhf-xl-multivcpu:guest-start/debian.repeat:fail:nonblocking linux-5.4:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking linux-5.4:test-armhf-armhf-xl-rtds:guest-start/debian.repeat:fail:nonblocking linux-5.4:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking linux-5.4:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking linux-5.4:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking linux-5.4:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking linux-5.4:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: linux=f2b499c27a959d062db9ea5c3036052d90110ee4 X-Osstest-Versions-That: linux=f568a20f058fa1e37069cff4aac4187c1650a0e9 From: osstest service owner Date: Sat, 24 Jun 2023 09:38:05 +0000 flight 181571 linux-5.4 real [real] http://logs.test-lab.xenproject.org/osstest/logs/181571/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: test-amd64-amd64-libvirt broken build-amd64 6 xen-build fail in 181563 REGR. vs. 181363 Tests which are failing intermittently (not blocking): test-amd64-amd64-libvirt 5 host-install(5) broken pass in 181553 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 7 xen-install fail in 181553 pass in 181571 test-armhf-armhf-xl 18 guest-start/debian.repeat fail pass in 181563 Tests which did not succeed, but are not blocking: build-amd64-libvirt 1 build-check(1) blocked in 181563 n/a test-amd64-amd64-dom0pvh-xl-amd 1 build-check(1) blocked in 181563 n/a test-amd64-amd64-examine 1 build-check(1) blocked in 181563 n/a test-amd64-amd64-dom0pvh-xl-intel 1 build-check(1) blocked in 181563 n/a test-amd64-amd64-examine-uefi 1 build-check(1) blocked in 181563 n/a test-amd64-amd64-examine-bios 1 build-check(1) blocked in 181563 n/a test-amd64-amd64-libvirt-pair 1 build-check(1) blocked in 181563 n/a test-amd64-amd64-libvirt 1 build-check(1) blocked in 181563 n/a test-amd64-amd64-libvirt-vhd 1 build-check(1) blocked in 181563 n/a test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked in 181563 n/a test-amd64-amd64-pair 1 build-check(1) blocked in 181563 n/a test-amd64-amd64-libvirt-xsm 1 build-check(1) blocked in 181563 n/a test-amd64-amd64-pygrub 1 build-check(1) blocked in 181563 n/a test-amd64-amd64-qemuu-freebsd11-amd64 1 build-check(1) blocked in 181563 n/a test-amd64-amd64-qemuu-freebsd12-amd64 1 build-check(1) blocked in 181563 n/a test-amd64-amd64-qemuu-nested-amd 1 build-check(1) blocked in 181563 n/a test-amd64-amd64-qemuu-nested-intel 1 build-check(1) blocked in 181563 n/a test-amd64-amd64-xl 1 build-check(1) blocked in 181563 n/a test-amd64-amd64-xl-credit1 1 build-check(1) blocked in 181563 n/a test-amd64-amd64-xl-credit2 1 build-check(1) blocked in 181563 n/a test-amd64-amd64-xl-multivcpu 1 build-check(1) blocked in 181563 n/a test-amd64-amd64-xl-pvhv2-amd 1 build-check(1) blocked in 181563 n/a test-amd64-amd64-xl-pvhv2-intel 1 build-check(1) blocked in 181563 n/a test-amd64-amd64-xl-pvshim 1 build-check(1) blocked in 181563 n/a test-amd64-amd64-xl-qcow2 1 build-check(1) blocked in 181563 n/a test-amd64-amd64-xl-qemut-debianhvm-amd64 1 build-check(1) blocked in 181563 n/a test-amd64-amd64-xl-qemut-win7-amd64 1 build-check(1) blocked in 181563 n/a test-amd64-amd64-xl-qemut-ws16-amd64 1 build-check(1) blocked in 181563 n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked in 181563 n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked in 181563 n/a test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked in 181563 n/a test-amd64-amd64-xl-qemuu-ovmf-amd64 1 build-check(1) blocked in 181563 n/a test-amd64-amd64-xl-qemuu-win7-amd64 1 build-check(1) blocked in 181563 n/a test-amd64-amd64-xl-qemuu-ws16-amd64 1 build-check(1) blocked in 181563 n/a test-amd64-amd64-xl-rtds 1 build-check(1) blocked in 181563 n/a test-amd64-amd64-xl-shadow 1 build-check(1) blocked in 181563 n/a test-amd64-coresched-amd64-xl 1 build-check(1) blocked in 181563 n/a test-amd64-coresched-i386-xl 1 build-check(1) blocked in 181563 n/a test-amd64-i386-examine 1 build-check(1) blocked in 181563 n/a test-amd64-i386-examine-bios 1 build-check(1) blocked in 181563 n/a test-amd64-i386-examine-uefi 1 build-check(1) blocked in 181563 n/a test-amd64-i386-freebsd10-amd64 1 build-check(1) blocked in 181563 n/a test-amd64-i386-freebsd10-i386 1 build-check(1) blocked in 181563 n/a test-amd64-i386-libvirt 1 build-check(1) blocked in 181563 n/a test-amd64-i386-libvirt-pair 1 build-check(1) blocked in 181563 n/a test-amd64-i386-libvirt-raw 1 build-check(1) blocked in 181563 n/a test-amd64-i386-pair 1 build-check(1) blocked in 181563 n/a test-amd64-i386-qemut-rhel6hvm-amd 1 build-check(1) blocked in 181563 n/a test-amd64-i386-qemut-rhel6hvm-intel 1 build-check(1) blocked in 181563 n/a test-amd64-i386-qemuu-rhel6hvm-amd 1 build-check(1) blocked in 181563 n/a test-amd64-i386-qemuu-rhel6hvm-intel 1 build-check(1) blocked in 181563 n/a test-amd64-i386-xl 1 build-check(1) blocked in 181563 n/a test-amd64-i386-xl-pvshim 1 build-check(1) blocked in 181563 n/a test-amd64-i386-xl-qemut-debianhvm-amd64 1 build-check(1) blocked in 181563 n/a test-amd64-i386-xl-qemut-win7-amd64 1 build-check(1) blocked in 181563 n/a test-amd64-i386-xl-qemut-ws16-amd64 1 build-check(1) blocked in 181563 n/a test-amd64-i386-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked in 181563 n/a test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked in 181563 n/a test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked in 181563 n/a test-amd64-i386-xl-qemuu-ovmf-amd64 1 build-check(1) blocked in 181563 n/a test-amd64-i386-xl-qemuu-win7-amd64 1 build-check(1) blocked in 181563 n/a test-amd64-i386-xl-qemuu-ws16-amd64 1 build-check(1) blocked in 181563 n/a test-amd64-i386-xl-shadow 1 build-check(1) blocked in 181563 n/a test-amd64-i386-xl-vhd 1 build-check(1) blocked in 181563 n/a test-armhf-armhf-xl-credit1 18 guest-start/debian.repeat fail in 181553 like 181363 test-amd64-amd64-xl-qcow2 21 guest-start/debian.repeat fail in 181553 like 181363 test-amd64-amd64-libvirt 15 migrate-support-check fail in 181553 never pass test-armhf-armhf-xl-multivcpu 14 guest-start fail in 181563 like 181336 test-armhf-armhf-xl-credit2 18 guest-start/debian.repeat fail like 181336 test-amd64-i386-xl-vhd 21 guest-start/debian.repeat fail like 181354 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 181363 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop fail like 181363 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop fail like 181363 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 181363 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 181363 test-armhf-armhf-xl-multivcpu 18 guest-start/debian.repeat fail like 181363 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 181363 test-armhf-armhf-xl-rtds 18 guest-start/debian.repeat fail like 181363 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop fail like 181363 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail like 181363 test-armhf-armhf-libvirt 16 saverestore-support-check fail like 181363 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail like 181363 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop fail like 181363 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 181363 test-amd64-i386-xl-pvshim 14 guest-start fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-i386-libvirt 15 migrate-support-check fail never pass test-amd64-i386-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-armhf-armhf-xl-credit2 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit2 16 saverestore-support-check fail never pass test-armhf-armhf-xl-arndale 15 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 16 saverestore-support-check fail never pass test-armhf-armhf-xl-multivcpu 15 migrate-support-check fail never pass test-armhf-armhf-xl-multivcpu 16 saverestore-support-check fail never pass test-amd64-i386-libvirt-raw 14 migrate-support-check fail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-armhf-armhf-xl-credit1 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 16 saverestore-support-check fail never pass test-armhf-armhf-xl-rtds 15 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 16 saverestore-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass test-armhf-armhf-xl 15 migrate-support-check fail never pass test-armhf-armhf-xl 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail never pass test-armhf-armhf-libvirt 15 migrate-support-check fail never pass test-armhf-armhf-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 15 saverestore-support-check fail never pass version targeted for testing: linux f2b499c27a959d062db9ea5c3036052d90110ee4 baseline version: linux f568a20f058fa1e37069cff4aac4187c1650a0e9 Last test of basis 181363 2023-06-10 15:39:59 Z 13 days Failing since 181425 2023-06-14 10:50:49 Z 9 days 18 attempts Testing same since 181542 2023-06-21 23:13:50 Z 2 days 5 attempts ------------------------------------------------------------ People who touched revisions under test: Adrian Hunter Ahmed Zaki Ai Chao Alan Stern Aleksandr Loktionov Alex Deucher Alex Maftei Alexander Kapshuk Alexander Sverdlin Alexandru Sorodoc Andrew Morton Arnd Bergmann Bartosz Golaszewski Ben Hutchings Ben Skeggs Bernhard Seibold Bjørn Mork Bob Pearson Chia-I Wu Chris Paterson (CIP) Christian Loehle Christoph Hellwig Dan Carpenter Dave Airlie David Ahern David Howells David Jander David S. Miller David Sterba Dinh Nguyen Dmitry Torokhov Edson Juliano Drosdeck Edward Srouji Elson Roy Serrao Eric Dumazet Fedor Pchelkin Florian Fainelli Florian Westphal Gaosheng Cui Greg Kroah-Hartman Guenter Roeck Guillaume Nault Gustavo A. R. Silva Hangbin Liu Hangyu Hua Hans de Goede Harshit Mogalapalli Helge Deller Ian Ziemba Ilya Dryomov Ismael Ferreras Morezuelas JaimeLiao Jakub Kicinski Jamal Hadi Salim Jan Höppner Janne Grunau Jason Gunthorpe Jens Axboe Jerry Meng Jiri Slaby (SUSE) Johan Hovold Johannes Thumshirn Jon Hunter Josef Bacik Joseph Qi Jozsef Kadlecsik Juergen Gross Krzysztof Kozlowski Kuniyuki Iwashima Lee Jones Leon Romanovsky Leon Romanovsky Lin Ma Linus Torvalds Linus Walleij Linux Kernel Functional Testing Lisa Chen (陈敏捷) Liviu Dudau Luis Chamberlain Luiz Augusto von Dentz Luís Henriques Luís Henriques Lyude Paul Manuel Lauss Marc Dionne Marc Kleine-Budde Marc Zyngier Marek Vasut Mario Limonciello Mark Brown Martin Blumenstingl Martin Hundebøll Maxime Ripard Michael Chan Min Li Miquel Raynal Mirsad Goran Todorovac Mirsad Todorovac Natalia Petrova Nikolay Aleksandrov Oleksij Rempel Osama Muhammad Pablo Neira Ayuso Paolo Abeni Paulo Alcantara (SUSE) Paulo Alcantara Qingfang DENG Rafal Romanowski Randy Dunlap RenHai Ricardo Ribalda Richard Cochran Rishabh Bhatnagar Roberto Sassu Ross Lagerwall Ruihan Li Ryusuke Konishi Saravanan Vajravel Sasha Levin Sebastian Reichel Selvin Xavier Shuah Khan Simon Wunderlich Somnath Kotur Stefan Berger Stefan Ghinea Stefan Haberland Stephan Gerhold Stephen Hemminger Steve French Sudeep Holla Sudip Mukherjee Sukrut Bellary Sungwoo Kim Sven Eckelmann Takashi Iwai Tejun Heo Theodore Ts'o Thinh Nguyen Thomas Bogendoerfer Tijs Van Buggenhout Tony Nguyen Ulf Hansson Uwe Kleine-König Ville Syrjälä Vlad Buslov Vladimir Oltean Vladislav Efanov Wes Huang Wolfram Sang Xin Long Xiubo Li Ying Hsu Yishai Hadas YouChing Lin Zhu Yanjun Zixuan Fu jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl fail test-amd64-i386-xl pass test-amd64-coresched-i386-xl pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-i386-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-i386-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-i386-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-i386-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-i386-qemut-rhel6hvm-amd pass test-amd64-i386-qemuu-rhel6hvm-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-i386-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-freebsd10-amd64 pass test-amd64-amd64-qemuu-freebsd11-amd64 pass test-amd64-amd64-qemuu-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-i386-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-i386-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-i386-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-amd64-i386-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale pass test-amd64-amd64-examine-bios pass test-amd64-i386-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 pass test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 fail test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine pass test-amd64-i386-examine pass test-amd64-i386-freebsd10-i386 pass test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-i386-qemut-rhel6hvm-intel pass test-amd64-i386-qemuu-rhel6hvm-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt broken test-armhf-armhf-libvirt pass test-amd64-i386-libvirt pass test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu fail test-amd64-amd64-pair pass test-amd64-i386-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-i386-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-i386-xl-pvshim fail test-amd64-amd64-pygrub pass test-armhf-armhf-libvirt-qcow2 pass test-amd64-amd64-xl-qcow2 pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw pass test-amd64-i386-libvirt-raw pass test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds fail test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-amd64-i386-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-i386-examine-uefi pass test-amd64-amd64-libvirt-vhd pass test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd pass test-amd64-i386-xl-vhd fail ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary broken-job test-amd64-amd64-libvirt broken broken-step test-amd64-amd64-libvirt host-install(5) Not pushing. (No revision log; it would be 3426 lines long.) From xen-devel-bounces@lists.xenproject.org Sat Jun 24 12:31:33 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sat, 24 Jun 2023 12:31:33 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554570.865830 (Exim 4.92) (envelope-from ) id 1qD2QA-0005nC-5U; Sat, 24 Jun 2023 12:31:18 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554570.865830; Sat, 24 Jun 2023 12:31:18 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qD2QA-0005n5-1f; Sat, 24 Jun 2023 12:31:18 +0000 Received: by outflank-mailman (input) for mailman id 554570; Sat, 24 Jun 2023 12:31:16 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qD2Q8-0005mz-BF for xen-devel@lists.xenproject.org; Sat, 24 Jun 2023 12:31:16 +0000 Received: from out5-smtp.messagingengine.com (out5-smtp.messagingengine.com [66.111.4.29]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 00f26661-128b-11ee-8611-37d641c3527e; Sat, 24 Jun 2023 14:31:13 +0200 (CEST) Received: from compute6.internal (compute6.nyi.internal [10.202.2.47]) by mailout.nyi.internal (Postfix) with ESMTP id A37F05C0145 for ; Sat, 24 Jun 2023 08:31:11 -0400 (EDT) Received: from mailfrontend2 ([10.202.2.163]) by compute6.internal (MEProxy); Sat, 24 Jun 2023 08:31:11 -0400 Received: by mail.messagingengine.com (Postfix) with ESMTPA for ; Sat, 24 Jun 2023 08:31:10 -0400 (EDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 00f26661-128b-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= invisiblethingslab.com; h=cc:content-type:content-type:date:date :from:from:in-reply-to:message-id:mime-version:reply-to:sender :subject:subject:to:to; s=fm2; t=1687609871; x=1687696271; bh=a9 +CJ3I1oF8IDQX27l8UN+9p7kTef6heTr8vWNeVq1s=; b=J8PQsndl+ohU75VZZR AD2tSyhCpjse3rPBN3/CO6bkfzVPlh25l8beXw6Pg2df4OKO4YWP0yyOigYOTjuM MCGwy45a0xRcDYkaBOZmhI7ULFtrqxEE8tdqe076PZHcmiYueXT6xd9f5kLv2t2/ Y/7CCwyGKTiwp/Ihhl7aNGhCIXpjDkNeuEsUbTnzWyBvI+epaJde0GA4RQIEqPqe m6cU303rEjTqZYRPCs2JSTHgamPZyM+oJD+48NWLHgxUiussfT1E57akiN+nMd11 D15jDkc9RI1xCVu+OMFhCdjaDbUIfERGOGPXiNvSNVjVRHduFX9C3DzXZ/n/Dnmt SK5Q== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:content-type:content-type:date:date :feedback-id:feedback-id:from:from:in-reply-to:message-id :mime-version:reply-to:sender:subject:subject:to:to:x-me-proxy :x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s=fm2; t= 1687609871; x=1687696271; bh=a9+CJ3I1oF8IDQX27l8UN+9p7kTef6heTr8 vWNeVq1s=; b=APxa1WV1U2PwLNxllLuFjQeHQg3vNTru9306lm6XEMsjMI3dUU6 MMbEZeVnPGI+ewvxWzEH//pbK6OM5zKf+dPgaH7kc+dl/ufNhZkBV7DJDXYWhUy0 ss7fyey1lpc0UrYg2po2oW5xNuvL3Od/Tu5VQptkIy95AADqcALy5lPBasL0sLNg pXRFfvh7jRCUwmhmwbWawvE7auHod6qxJBdSuAZOPSqCgUtxiThB0hk+ETnQc4tA MgBVohG0tkBi2lwYIRwhtRui4F+/V62DNx1U32kUe6KqoHySo8YYLzMKoi78gvUR 3z5Qgi7j9/JDc2AIxBrjcooliBBhqMHl12Q== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvhedrgeegjedgheefucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucenucfjughrpeffhffvuffkgggtugesghdtreertd dtjeenucfhrhhomhepofgrrhgvkhcuofgrrhgtiiihkhhofihskhhiqdfikphrvggtkhhi uceomhgrrhhmrghrvghksehinhhvihhsihgslhgvthhhihhnghhslhgrsgdrtghomheqne cuggftrfgrthhtvghrnheptddugfetudevudeiveevgfetueejlefggffghffhhfehtdff feefgfduueegfefhnecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghilh hfrhhomhepmhgrrhhmrghrvghksehinhhvihhsihgslhgvthhhihhnghhslhgrsgdrtgho mh X-ME-Proxy: Feedback-ID: i1568416f:Fastmail Date: Sat, 24 Jun 2023 14:31:08 +0200 From: Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= To: xen-devel Subject: Design session notes: Reducing the number of pages always mapped in Xen: Next steps Message-ID: MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="c5JYt985RF5O5saf" Content-Disposition: inline --c5JYt985RF5O5saf Content-Type: text/plain; protected-headers=v1; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Date: Sat, 24 Jun 2023 14:31:08 +0200 From: Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= To: xen-devel Subject: Design session notes: Reducing the number of pages always mapped in Xen: Next steps Hi,=20 Here is what I managed to capture, unfortunately some parts slipped by me. Julien: remove directmap, avoid speculative reading it series sent 6 months ago - enough to remove directmap, but not perfect resolving virtual adresses requires mapping/unmapping page tables - signi= ficant perf hit Andrew: a lot of attacks read direct from directmap end goal "address space isolation" - no sensitive info mapped into xen directmap is not only place, but the large part of the problem single heap semi-rely on directmap Bertrand: you don't know heap size for a guest up front, maybe can be speci= fied manually? Jan: why would that help? Bertrand: no need to extend heap at guest runtime Andrew: reduce number of translation (virt <-> phys) by using better data s= tructures even getting address space isolation just for HVM guests will be huge imp= rovement Jan: zap the directmap when switching to HVM, and reinstantiate when switch= ing to PV? Andrew: just not have it mapped; some things needs to be mapped, like vcpu structure but not sensitive info, on fast path skip speculative mitigatio= ns, but when hitting slow path (page fault), apply speculative migitations an= d restore directmap; this makes fast path faster and slow path slower Roger: what about auto eIBRS? Andrew: it helps only in newer hardware, there is still older hardware even with retblead, the fast path with address space isolation would rema= in fast; it's also about future-proofing, many new bugs will not require HV changes George: the slow path would still require adjustments/mitigations, likely Julien: map specific pages individually, not whole directmap, keep common x= enheap mapped Andrew: address space isolation helps also with non-speculative attacks, an= d also per-guest heaps would further isolate sensitive data Julien: the problem with page found approach is finding all the places and = data that is safe and needed for fast paths Andrew: implement faulting and then profile, then see whether common hits a= re safe to keep mapped, but if not try to rearrange algorithms/data structu= res Bertrand: adjust how Xen is linked, isolate fast path areas from slow path = areas to be able to switch them on/off fast Andrew: struct vcpu and struct domain is a dumping ground for everything, s= ome parts will need moving too for example: register data for own vcpus - probably safe, but for differe= nt vcpu of the same guest probably not safe, vcpu for different guest defin= itely not Bertrand: risk moving the problem somewhere else? the problem of defining w= hat is safe Andrew: you can identify when it's in the fast path Jan: besides registers and guest own memory, is there anything else secret? Andrew: we have more luck than Linux, because for example Xen has no in-Xen= crypto libraries; but also, for example you can figure code paths by looking at stacks not much more secret data Bertrand: if we try to unmap guest-specific data (Jan's idea), don't we sol= ve the problem more efficient way? Andrew: it's risky per-vcpu mapping is easy for HVM, but not for PV, because top level page table is chosen by the PV kernel, and Linux does sometimes run multiple v= cpus using the same page tables -> no per-vcpu mapping George: close to time limit, lets go to conclusions Julien: figure out next steps, what to do with the series from 6 months ago remove directmap make virt<->mfn mapping easy to use Jan: this feels like going too far, if we only need to remove few secret da= ta Julien: directmap is about whole guest memory Daniel Smith(?): what is the overlap with SEV Andrew: doesn't really overlap with encrypted VMs both Intel and AMD encrypted VMs assume hypervisor may have a mapping of = encrypted pages if directmap is present, you have still cache timing attacks, removing di= rectmap helps with that Bertrand: also benefits from safety POV - limits the scope for evaluation Andrew: accidental out of bounds write will be a page fault - easier to not= ice Jan: on demand mapping of xenheap, that means 4k mappings of everything; ca= n we do better, to preserve superpages? Julien: few other structures to consider Andew: EPT page tables are not sensitive, MSR permissions also not, because= guest vcpu can recover them anyway Jan: that data actually can be sensitive, but you can't do anything about it --=20 Best Regards, Marek Marczykowski-G=C3=B3recki Invisible Things Lab --c5JYt985RF5O5saf Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQEzBAEBCAAdFiEEhrpukzGPukRmQqkK24/THMrX1ywFAmSW4gwACgkQ24/THMrX 1yxABwf+MUyCFs8EhmnkVnKUYTgxdUDME+If5bp4j3zt5jOUsGJRDnZRpz2jz1Gc d4dS7cGgJVOBbjKR1WWBN52zpBMN0PGFsp24QyLTFJ9D8PCgVFwRmDvxYLSS8/x4 x9GRXubBN9hBHDUM2L6hoUNUDhfDWpm1GHPymwowz3q4WabIWCpZmxmkN41rUTmU T4SCF7k7StgQVoR+vh8W16HP/N1J5Y+nkHkgDO/EYQAZPJuweK0CdP7In7a88xej Aap4yh8gP+91KRycmeIcM/eWAVvCeC+87++DNYfvvcHK5pMMr9ltJg+tvS52CxmZ k2H+0/9SRMabn2yozV3QvWTF/nTQBQ== =aEqc -----END PGP SIGNATURE----- --c5JYt985RF5O5saf-- From xen-devel-bounces@lists.xenproject.org Sat Jun 24 13:26:00 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sat, 24 Jun 2023 13:26:00 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554576.865841 (Exim 4.92) (envelope-from ) id 1qD3Gz-0002lX-4p; Sat, 24 Jun 2023 13:25:53 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554576.865841; Sat, 24 Jun 2023 13:25:53 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qD3Gz-0002lQ-0N; Sat, 24 Jun 2023 13:25:53 +0000 Received: by outflank-mailman (input) for mailman id 554576; Sat, 24 Jun 2023 13:25:51 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qD3Gx-0002lI-0b for xen-devel@lists.xenproject.org; Sat, 24 Jun 2023 13:25:51 +0000 Received: from out3-smtp.messagingengine.com (out3-smtp.messagingengine.com [66.111.4.27]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id a0666eba-1292-11ee-8611-37d641c3527e; Sat, 24 Jun 2023 15:25:47 +0200 (CEST) Received: from compute6.internal (compute6.nyi.internal [10.202.2.47]) by mailout.nyi.internal (Postfix) with ESMTP id B774B5C00C7 for ; Sat, 24 Jun 2023 09:25:45 -0400 (EDT) Received: from mailfrontend1 ([10.202.2.162]) by compute6.internal (MEProxy); Sat, 24 Jun 2023 09:25:45 -0400 Received: by mail.messagingengine.com (Postfix) with ESMTPA for ; Sat, 24 Jun 2023 09:25:44 -0400 (EDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: a0666eba-1292-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= invisiblethingslab.com; h=cc:content-type:content-type:date:date :from:from:in-reply-to:message-id:mime-version:reply-to:sender :subject:subject:to:to; s=fm2; t=1687613145; x=1687699545; bh=kQ X8yLjTccw2AZEGYbcqPTuV979FZSJJ3OWM0j5r/lI=; b=X2cXithaTJAFlwFOzh D6P9BD0PJFxk+HxJ5YaBZ/T74snayOtxApcygddXqKh9og6svkH69YpMg74hRGEf 6azarwyA11FyvgHeYDR9pa+m55MbqK7Lx6h9Rp6r9zfkMUGNRp+4C1e5J1Yl7s50 u+x04jmm7z/LXKNoGXzdgpXNYiZXwjYBW7xHuw9/Hn7X4UWqiahtHy24qDgJXMKw jgkVwIZH6ZwCa6UkfcwfIu8dOm1MdduyKGLACppMxhyW1z/kmkANRieqXl7+fudZ pxb3IxnhyBnOQ+pv9oTta4ClGv/be9jjCnebxuS5XPKB+tsPkP5Ep7AQGp9NKTjg 7mJQ== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:content-type:content-type:date:date :feedback-id:feedback-id:from:from:in-reply-to:message-id :mime-version:reply-to:sender:subject:subject:to:to:x-me-proxy :x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s=fm2; t= 1687613145; x=1687699545; bh=kQX8yLjTccw2AZEGYbcqPTuV979FZSJJ3OW M0j5r/lI=; b=PYetgrsDmr+F2dM55D8zRCrDUhM5vcW8BWYKqX8eB9+aCw6bDen AT6MiguHyxsKa6bBO1ean1qvCZENgO5eh78ovkEHG10HjnaA7q48R3TRS2bmazX0 Jsbdtsn9BodaH3wdiUcG785bv8QPfm0F/5HQH3wawUF5JqkY8nJ3sIBP7rNn3ig6 uJfgPSOHGGR9sN/BL7J5y83tv3mOZC5I8WjiqDZdOXm+8hP1uMqzI5mBTYTmna4/ DnSq1sTclvlm1v6x1VBamagUzUWbfBxm6mrlp5IKn6ajy8swnCdu0ngbTA4KeGpP GyoHu+sUPvyQ5fyVqYr/si/8xTFOcE5QN8g== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvhedrgeegjedgieegucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucenucfjughrpeffhffvuffkgggtugesghdtreertd dtjeenucfhrhhomhepofgrrhgvkhcuofgrrhgtiiihkhhofihskhhiqdfikphrvggtkhhi uceomhgrrhhmrghrvghksehinhhvihhsihgslhgvthhhihhnghhslhgrsgdrtghomheqne cuggftrfgrthhtvghrnheptddugfetudevudeiveevgfetueejlefggffghffhhfehtdff feefgfduueegfefhnecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghilh hfrhhomhepmhgrrhhmrghrvghksehinhhvihhsihgslhgvthhhihhnghhslhgrsgdrtgho mh X-ME-Proxy: Feedback-ID: i1568416f:Fastmail Date: Sat, 24 Jun 2023 15:25:42 +0200 From: Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= To: xen-devel Subject: Design session notes: Committers workflow: move to Gitlab Message-ID: MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="BDNRKQAo++Xe7qV/" Content-Disposition: inline --BDNRKQAo++Xe7qV/ Content-Type: text/plain; protected-headers=v1; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Date: Sat, 24 Jun 2023 15:25:42 +0200 From: Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= To: xen-devel Subject: Design session notes: Committers workflow: move to Gitlab Stefano: 2min summary: gitlab as CI infrastucture, not as code hosting, tic= kets etc; we have several improvements for gitlab CI, including tests on hw there are a bunch of build jobs, and also some run tests, most on qemu, b= ut some on hw I'd like to give commiters and other notable community members a way to t= rigger a pipeline - it's as easy as git push to your repository Julien: everyone can push, how it's prioritized? Stefano: unfortunately we don't have prioritized, but increasing capacity i= s easy everyone can have a personal repo on gitlab but also: it would be nice to gate push to staging by gitlab pipeline Marek: isn't the purpose of staging to be a pre-test master copy? George: staging is fast-forward branch, cannot be rewind Stefano: goal is to not allow bad commits even in staging committers would push to somewhere on gitlab and that only then it would = go to staging on xenbits later: use merge request workflow: 1. push to personal branch, open MR (git push -o ...) 2. if pipeline passes, it can be merged to staging fast-forward 3.=20 Julien: maybe let osstest pull from gitlab? Stefano: staging on xenbits is useful for legacy reasons Marek: I have a script to push and pull stuff around in reaction to webhooks Andrew: there is also stuff on github - FreeBSD testing, coverity testing, = codeql code analyzer; generally github actions are nice it would be good to collect that state into common place (gitlab) too Bertrand: can osstest be trigerred from gitlab? George: the goal is to slowly move out of osstest into gitlab Jan: I'm concerned about few things, for example conflicting merge requests Bertrand: auto-rebase bot? Julien: may introduce issues Stefano: adding more capacity also reduces risk of such conflicts (smaller = time window); two MR options: - merge commit - cherry-pick (rebase?) Juline: when Jan is pushing, I'd like to know that when I'm pushing, to pot= entially adjust George: maybe another bot that watches for MRs and see if they conflict to = notify early (while pipeline is still running)? Stefano: this can be another gitlab job and also, we can have a fast-fail job - if it fails, it stops the whole p= ipeline (earlier notifications, save resources) Andrew: there are some non-deterministic errors, but also, there is a lot o= f noise (error messages that are harmless, basically bugs in the test) Jan: to recap: first push to gitlab staging, then osstest, and only then to= master; this increases delay Andrew: security team must have a way to bypass public CI loop, but do test= ing in private first (private gitlab pipelines) but also, maintainers of runners implicitly will have access to that - th= is needs to be documented - like require them to be on pre-disclosure list Jan: what about stable trees? Stefano: most are okay with gitlab Andrew: no, recent container change broke all stable trees :/ Stefano: we need George to cleanup permissions on gitlab - a lot of "Owner"s Marek: what about removing osstests already covered by gitlab? Andrew: that's stage 2 --=20 Best Regards, Marek Marczykowski-G=C3=B3recki Invisible Things Lab --BDNRKQAo++Xe7qV/ Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQEzBAEBCAAdFiEEhrpukzGPukRmQqkK24/THMrX1ywFAmSW7tYACgkQ24/THMrX 1yzHqwf/TzbW+bc1f8o9UJtAVoKYtnl39zXGiM6H1B1vd+CJ7JGY7QMInD7CbO6g QryKmLViXMlYPQun9KBBVcpW8lp0psfBsXJ/nG+2/rrEu3xzHuOwtlHxEdkoufXT L81aYL5NgpVbwvv4w2WWpbj7tnIONKnluExDuhY8jp7yV069xJrJgwc8nJLhvQC9 mKUMp1m+da8RIcLnsu34Y3PTBaktZKMiJI1C3I26JE+3wQ6bt3cpKv8nWxgH6RGy +EQ0zlQsrXDvWXjiZzTm+2tFVcti2xrTzGbyjDfQm07G45JZt+IwPTvbMZ5LHWiM EvhG+F0zFaduiCMiQFBdZMI6y16pZQ== =xucd -----END PGP SIGNATURE----- --BDNRKQAo++Xe7qV/-- From xen-devel-bounces@lists.xenproject.org Sat Jun 24 13:57:57 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sat, 24 Jun 2023 13:57:57 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554582.865849 (Exim 4.92) (envelope-from ) id 1qD3lj-0006Ax-Fs; Sat, 24 Jun 2023 13:57:39 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554582.865849; Sat, 24 Jun 2023 13:57:39 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qD3lj-0006Aq-Cm; Sat, 24 Jun 2023 13:57:39 +0000 Received: by outflank-mailman (input) for mailman id 554582; Sat, 24 Jun 2023 13:57:38 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qD3li-0006Ak-P7 for xen-devel@lists.xenproject.org; Sat, 24 Jun 2023 13:57:38 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qD3lh-00016q-If; Sat, 24 Jun 2023 13:57:37 +0000 Received: from [193.85.242.128] (helo=[192.168.148.103]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qD3lh-0008EQ-Ck; Sat, 24 Jun 2023 13:57:37 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=ZBZPGR4tYSdosuoSesTRIQqw/a6ISShZ15Z6DYLzDCc=; b=rmUnUxrXUVnhq4Jx1FgG4qN90G Xou8OqK5d+RZffQWLelhchl4YmijNflnU5y4kUECH3R7nA6GqSKZy6ZajFY+fv1BBxh03GtaPTk8N jkuY9jASpKswy2Dis0yORMl7noegpqEWJKkgAwY67ZanE7fztScmVdGBscr+I/XZfqvs=; Message-ID: Date: Sat, 24 Jun 2023 14:57:35 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH] libelf: make L1_MFN_VALID note known Content-Language: en-US To: Jan Beulich , "xen-devel@lists.xenproject.org" Cc: Andrew Cooper , George Dunlap , Stefano Stabellini , Wei Liu References: From: Julien Grall In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi Jan, On 17/05/2023 15:19, Jan Beulich wrote: > We still don't use it (in the tool stack), and its values (plural) also > aren't fetched correctly, but it is odd to continue to see the > hypervisor log "ELF: note: unknown (0xd)" when loading a Linux Dom0. > > Signed-off-by: Jan Beulich Acked-by: Julien Grall Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Sat Jun 24 14:07:21 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sat, 24 Jun 2023 14:07:21 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554586.865860 (Exim 4.92) (envelope-from ) id 1qD3ut-0007kY-BO; Sat, 24 Jun 2023 14:07:07 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554586.865860; Sat, 24 Jun 2023 14:07:07 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qD3ut-0007kR-8h; Sat, 24 Jun 2023 14:07:07 +0000 Received: by outflank-mailman (input) for mailman id 554586; Sat, 24 Jun 2023 14:07:06 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qD3us-0007kJ-Fm for xen-devel@lists.xenproject.org; Sat, 24 Jun 2023 14:07:06 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qD3ur-0001MN-6G; Sat, 24 Jun 2023 14:07:05 +0000 Received: from [193.85.242.128] (helo=[192.168.148.103]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qD3uq-0000Qh-Vh; Sat, 24 Jun 2023 14:07:05 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=bTRkiKM/+K9Ff+kPgQ5JQB3gTAQWdnMMPN7EA+dV6LM=; b=aCDuH2FmjcXMYSc/ekssjya8Fy ZOeU8HKllSdn0kYPoYOHpZ7s7WZDE1KL+7L25b7T4pLEhYkzNggSQ9HPQlSxy625rbnkMiNr64LAT nzKS+sWYLFZQ+yJVYcC1rDxZsVrjJZLbxOjcPHbt3T5A/sIqVzZ+jq4t5NLJhfSEiJTs=; Message-ID: Date: Sat, 24 Jun 2023 15:07:02 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH 1/1] doc: clarify intended usage of ~/control/ xentore path Content-Language: en-US To: Yann Dirson , xen-devel@lists.xenproject.org Cc: Andrew Cooper , George Dunlap , Jan Beulich , Stefano Stabellini , Wei Liu , Juergen Gross References: <20230531103427.1551719-1-yann.dirson@vates.fr> <20230531103427.1551719-2-yann.dirson@vates.fr> From: Julien Grall In-Reply-To: <20230531103427.1551719-2-yann.dirson@vates.fr> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi Yann, Adding Juergen. On 31/05/2023 11:35, Yann Dirson wrote: > Signed-off-by: Yann Dirson Reviewed-by: Julien Grall Cheers, > --- > docs/misc/xenstore-paths.pandoc | 29 +++++++++++++++++++++++++++++ > 1 file changed, 29 insertions(+) > > diff --git a/docs/misc/xenstore-paths.pandoc b/docs/misc/xenstore-paths.pandoc > index f07ef90f63..5501033893 100644 > --- a/docs/misc/xenstore-paths.pandoc > +++ b/docs/misc/xenstore-paths.pandoc > @@ -432,6 +432,35 @@ by udev ("0") or will be run by the toolstack directly ("1"). > > ### Platform Feature and Control Paths > > +#### ~/control = "" [] > + > +Directory to hold feature and control paths. This directory is not > +guest-writable, only the toolstack is allowed to create new child > +nodes under this. > + > +Children of this nodes can have one of several types: > + > +* platform features: using name pattern `platform-feature-*`, they may > + be set by the toolstack to inform the guest, and are not writable by > + the guest. > + > +* guest features: using name pattern `feature-*`, they may be created > + by the toolstack with an empty value (`""`), should be set writable > + by the guest which can then advertize to the toolstack its > + (non-)usage of the feature with values `"0"` and `"1"` respectively. > + The lack of update by the guest can be interpreted by the toolstack > + as the lack of supporting software (PV driver, guest agent, ...) in > + the guest. > + > +* control nodes: using any name not matching the above pattern, they > + are used by the toolstack or by the guest to signal a specific > + condition to the other end, which is expected to watch it to react > + to changes. > + > +Note: the presence of a control node in itself advertises the > +underlying toolstack feature, it is not necessary to add an extra > +platform-feature for such cases. > + > #### ~/control/sysrq = (""|COMMAND) [w] > > This is the PV SysRq control node. A toolstack can write a single character -- Julien Grall From xen-devel-bounces@lists.xenproject.org Sat Jun 24 14:54:36 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sat, 24 Jun 2023 14:54:36 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554590.865870 (Exim 4.92) (envelope-from ) id 1qD4ed-0004dG-Sf; Sat, 24 Jun 2023 14:54:23 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554590.865870; Sat, 24 Jun 2023 14:54:23 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qD4ed-0004d9-P0; Sat, 24 Jun 2023 14:54:23 +0000 Received: by outflank-mailman (input) for mailman id 554590; Sat, 24 Jun 2023 14:54:22 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qD4ec-0004cy-6Y for xen-devel@lists.xenproject.org; Sat, 24 Jun 2023 14:54:22 +0000 Received: from mail-yw1-x1129.google.com (mail-yw1-x1129.google.com [2607:f8b0:4864:20::1129]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id fb600a57-129e-11ee-8611-37d641c3527e; Sat, 24 Jun 2023 16:54:18 +0200 (CEST) Received: by mail-yw1-x1129.google.com with SMTP id 00721157ae682-56ff9cc91b4so16659287b3.0; Sat, 24 Jun 2023 07:54:13 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: fb600a57-129e-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687618452; x=1690210452; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=Ve5c/XjiFN9IjAHvrJUqy7C78NTNJD/ufGwlceBYROE=; b=bR/YtHXL0OVgiPuZuB1bKRlm/wn5UC6Kzaga4iDkxCyDmyJ7cOA8Wdlzx4PR/Kd7DS LbB6S2Rs2mzAEuFtRVSJBSrZPriEP7po/s2/VpAKFkPw2vCR3JJMkO5PnSusXI/WqL3L Cv+B4/Cd4ne62PgurJoypC5lOcQS7kITEsF8RiklORn/FbzlxK3eed9g1OpvXJulp0VW qlK+SlTRlvNe5xmWCxKDENRvxlcZe3pphjYlWzlJs4k2m74MQxH/YMKTmTI01cOUIc9L qFS4JvTgZGaMXEB4Ex1P4GAg1OUvqg/mmz9cp3a2anpzldeSLzaEzT33TfAk64fivW/z r9SA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687618452; x=1690210452; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=Ve5c/XjiFN9IjAHvrJUqy7C78NTNJD/ufGwlceBYROE=; b=RvnOVe9ZWL1MYiHM6eNY0DsDUb8nsXHG54Q0NoEwgm0K5+NTA03PD1NXR68ktQQY/e 49h7bBlgmsybGu+vdc7CskefONW/f6taqV60QEwdm7K/BsAXS3C8T4sqPq8NrwxttaeB KABjclwB1en6WdONlm/Pfq+X1By6nsGFs1VPS+uUXJUVR0KoG3iAtc8qb9JB/Tz881ii lB29lYHDEVO5FAT9WjLRmcE502gSjNN6DouO4QKx/UQ8x4vtf+uyKiI4A+151cm/QrRX oQ+pNSo8Mj0dpou/FXvJ/nIRQ/PUmV7yZ6r63rhLuXoiVQ7CdDlHG42kwA1p2/EzKvV0 vuMQ== X-Gm-Message-State: AC+VfDxFnmSPg4iJhnS5BKm9elecSff+uXs4OfMAaiwhRhjh/q2d9fj/ Yx9trXg0+DJ+lgrD57gTwnN0nF3qkT556pu4DJg= X-Google-Smtp-Source: ACHHUZ4C82ZdQBcUPr3jcGpx6HFMgmOOyDUrekM1bdzk+rC2zJZW6eKzmbZs8MvL84QrbnoorQWQc9tbgq6M+zPBbZY= X-Received: by 2002:a81:8007:0:b0:56d:40da:1fc2 with SMTP id q7-20020a818007000000b0056d40da1fc2mr26921176ywf.50.1687618452231; Sat, 24 Jun 2023 07:54:12 -0700 (PDT) MIME-Version: 1.0 References: <78899eac-9de8-3626-8f40-98f993984f95@xen.org> <1ef5a5a6-01ea-4f3f-c05f-7dfd204a1861@xen.org> In-Reply-To: <1ef5a5a6-01ea-4f3f-c05f-7dfd204a1861@xen.org> From: Jiatong Shen Date: Sat, 24 Jun 2023 22:54:01 +0800 Message-ID: Subject: Re: Asking for help to debug xen efi on Kunpeng machine To: Julien Grall Cc: Stefano Stabellini , xen-users@lists.xenproject.org, xen-devel@lists.xenproject.org, bertrand.marquis@arm.com Content-Type: multipart/alternative; boundary="0000000000005c98de05fee14a37" --0000000000005c98de05fee14a37 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Hello Julien, Thank you very much for your reply. Can you teach me how to find the relationship between MBI-gen and devices? I am not sure how to find out the mbi-gen backed devices.. Best Regards, Jiatong Shen On Sat, Jun 24, 2023 at 4:24=E2=80=AFPM Julien Grall wrote= : > Hi, > > On 20/06/2023 08:09, Jiatong Shen wrote: > > Hello Julien, > > > > Sorry for the delay.. I obtained the full xen log and attached it i= n > the > > mail. Please take a look when you are available. Thank you very much > > Thanks for sharing the logs. The following lines are interesting: > > [ 1.081905] Hisilicon MBIGEN-V2 HISI0152:00: Failed to create mbi-gen > irqdomain > [ 1.082107] Hisilicon MBIGEN-V2 HISI0152:01: Failed to create mbi-gen > irqdomain > [ 1.082204] Hisilicon MBIGEN-V2 HISI0152:02: Failed to create mbi-gen > irqdomain > [ 1.082294] Hisilicon MBIGEN-V2 HISI0152:03: Failed to create mbi-gen > irqdomain > [ 1.082381] Hisilicon MBIGEN-V2 HISI0152:04: Failed to create mbi-gen > irqdomain > [ 1.082466] Hisilicon MBIGEN-V2 HISI0152:05: Failed to create mbi-gen > irqdomain > > Looking at a Hisilicon Device-Tree, this is an interrupt controller > behind the GICv3 ITS. You will need to rebuild Xen with CONFIG_HAS_ITS=3D= y. > > Also, can you confirm which devices are behind the MBI-Gen? If this is > only PCI devices, then you are probably fine to give the controllers to > dom0. But for PCI passthrough, you will most likely need to implement it > a driver in Xen. > > Cheers, > > -- > Julien Grall > --=20 Best Regards, Jiatong Shen --0000000000005c98de05fee14a37 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Hello Julien,

=C2=A0 =C2=A0Thank you ve= ry much for your reply. Can you teach me how to find the relationship betwe= en MBI-gen and devices?=C2=A0
I am not sure how to find out the m= bi-gen backed devices..

Best Regards,
Ji= atong Shen

On Sat, Jun 24, 2023 at 4:24=E2=80=AFPM Julien Grall <julien@xen.org> wrote:
Hi,

On 20/06/2023 08:09, Jiatong Shen wrote:
> Hello Julien,
>
>=C2=A0 =C2=A0 =C2=A0Sorry for the delay.. I obtained the full xen log a= nd attached it in the
> mail. Please take a look when you are available. Thank you very much
Thanks for sharing the logs. The following lines are interesting:

[=C2=A0 =C2=A0 1.081905] Hisilicon MBIGEN-V2 HISI0152:00: Failed to create = mbi-gen
irqdomain
[=C2=A0 =C2=A0 1.082107] Hisilicon MBIGEN-V2 HISI0152:01: Failed to create = mbi-gen
irqdomain
[=C2=A0 =C2=A0 1.082204] Hisilicon MBIGEN-V2 HISI0152:02: Failed to create = mbi-gen
irqdomain
[=C2=A0 =C2=A0 1.082294] Hisilicon MBIGEN-V2 HISI0152:03: Failed to create = mbi-gen
irqdomain
[=C2=A0 =C2=A0 1.082381] Hisilicon MBIGEN-V2 HISI0152:04: Failed to create = mbi-gen
irqdomain
[=C2=A0 =C2=A0 1.082466] Hisilicon MBIGEN-V2 HISI0152:05: Failed to create = mbi-gen
irqdomain

Looking at a Hisilicon Device-Tree, this is an interrupt controller
behind the GICv3 ITS. You will need to rebuild Xen with CONFIG_HAS_ITS=3Dy.=

Also, can you confirm which devices are behind the MBI-Gen? If this is
only PCI devices, then you are probably fine to give the controllers to dom0. But for PCI passthrough, you will most likely need to implement it a driver in Xen.

Cheers,

--
Julien Grall


--

Best Regards,

Jiatong Shen=
--0000000000005c98de05fee14a37-- From xen-devel-bounces@lists.xenproject.org Sat Jun 24 15:20:12 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sat, 24 Jun 2023 15:20:12 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554623.865896 (Exim 4.92) (envelope-from ) id 1qD53J-0008Mf-Aw; Sat, 24 Jun 2023 15:19:53 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554623.865896; Sat, 24 Jun 2023 15:19:53 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qD53J-0008MY-80; Sat, 24 Jun 2023 15:19:53 +0000 Received: by outflank-mailman (input) for mailman id 554623; Sat, 24 Jun 2023 15:19:52 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qD53I-0008MS-09 for xen-devel@lists.xenproject.org; Sat, 24 Jun 2023 15:19:52 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [2604:1380:4641:c500::1]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 8eaadb47-12a2-11ee-8611-37d641c3527e; Sat, 24 Jun 2023 17:19:49 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 8144E60A05; Sat, 24 Jun 2023 15:19:47 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 3DDF4C433C9; Sat, 24 Jun 2023 15:19:46 +0000 (UTC) Received: from compute3.internal (compute3.nyi.internal [10.202.2.43]) by mailauth.nyi.internal (Postfix) with ESMTP id 1E6CC27C0054; Sat, 24 Jun 2023 11:19:45 -0400 (EDT) Received: from imap48 ([10.202.2.98]) by compute3.internal (MEProxy); Sat, 24 Jun 2023 11:19:45 -0400 Received: by mailuser.nyi.internal (Postfix, from userid 501) id 6343231A0063; Sat, 24 Jun 2023 11:19:43 -0400 (EDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 8eaadb47-12a2-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1687619986; bh=2NqCQaBRiYu07umaA1vjuK56Y6YrWpIX5Q20gxZ9Q9I=; h=In-Reply-To:References:Date:From:To:Cc:Subject:From; b=QBqIkrTMKVkiA5tDFcd4Gy3M8U4SxhGk1L+JhqXVlzM+wu+kHEXZuhF2moV1DwEwZ Zw6Z+WVHZVJiMaHGUNdlMJwOaQdxDnaZGCN8cUyMA3xaBgbi7rxbKSHJ3sdx7tuVmD mQmeW3ZTGbrDJM5fwPo0+9FEZBShNu3MBB+LDg92mH6QWm+9scdsNQeaDu8Jj4E1GZ 1p4nO8d3g4RdZhbJ9nX01gk4WBDrWuEYx2LDxHhfLeXhNsBrQ7ZkN0CAYrvMtYbMv5 LC2W9bPSVCb3KRTbh1jshMmbxCv5bWrol7TpRgpqLJH0SByOeqbxVpKocCWJGN6LVG ZWK/Nv4N53ReA== X-ME-Sender: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvhedrgeegjedgkeeiucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne cujfgurhepofgfggfkjghffffhvfevufgtsehttdertderredtnecuhfhrohhmpedftehn ugihucfnuhhtohhmihhrshhkihdfuceolhhuthhosehkvghrnhgvlhdrohhrgheqnecugg ftrfgrthhtvghrnhepvdfhuedvtdfhudffhfekkefftefghfeltdelgeffteehueegjeff udehgfetiefhnecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhfrh homheprghnugihodhmvghsmhhtphgruhhthhhpvghrshhonhgrlhhithihqdduudeiudek heeifedvqddvieefudeiiedtkedqlhhuthhopeepkhgvrhhnvghlrdhorhhgsehlihhnuh igrdhluhhtohdruhhs X-ME-Proxy: Feedback-ID: ieff94742:Fastmail X-Mailer: MessagingEngine.com Webmail Interface User-Agent: Cyrus-JMAP/3.9.0-alpha0-499-gf27bbf33e2-fm-20230619.001-gf27bbf33 Mime-Version: 1.0 Message-Id: <8306ce41-e551-4983-9c63-2e804f22ec61@app.fastmail.com> In-Reply-To: <7c56f418-e0f3-7c16-a3f7-0ae8bd12bbf0@suse.com> References: <20230621151442.2152425-1-per.bilse@citrix.com> <20230621164038.GM2053369@hirez.programming.kicks-ass.net> <6523f3e2-8dfc-c2dd-6d14-9e0c3ac93cc8@citrix.com> <20230621200409.GC4253@hirez.programming.kicks-ass.net> <20230622082607.GD4253@hirez.programming.kicks-ass.net> <4d29bfe0-975a-c97f-3e79-5b77d95d3494@suse.com> <8a5b8e4a-d238-4f35-b4c7-fb9e34650a14@app.fastmail.com> <7c56f418-e0f3-7c16-a3f7-0ae8bd12bbf0@suse.com> Date: Sat, 24 Jun 2023 08:19:23 -0700 From: "Andy Lutomirski" To: "Juergen Gross" , "Peter Zijlstra (Intel)" Cc: "Per Bilse" , "Thomas Gleixner" , "Ingo Molnar" , "Borislav Petkov" , "Dave Hansen" , "the arch/x86 maintainers" , "H. Peter Anvin" , "Stefano Stabellini" , "Oleksandr Tyshchenko" , "Linux Kernel Mailing List" , "moderated list:XEN HYPERVISOR INTERFACE" Subject: Re: [PATCH] Updates to Xen hypercall preemption Content-Type: text/plain On Thu, Jun 22, 2023, at 10:20 AM, Juergen Gross wrote: > On 22.06.23 18:39, Andy Lutomirski wrote: >> On Thu, Jun 22, 2023, at 3:33 AM, Juergen Gross wrote: >>> On 22.06.23 10:26, Peter Zijlstra wrote: >>>> On Thu, Jun 22, 2023 at 07:22:53AM +0200, Juergen Gross wrote: >>>> >>>>> The hypercalls we are talking of are synchronous ones. They are running >>>>> in the context of the vcpu doing the call (like a syscall from userland is >>>>> running in the process context). >>>> >>>> (so time actually passes from the guest's pov?) >>> >>> Correct. >>> >>>> >>>>> The hypervisor will return to guest context from time to time by modifying >>>>> the registers such that the guest will do the hypercall again with different >>>>> input values for the hypervisor, resulting in a proper continuation of the >>>>> hypercall processing. >>>> >>>> Eeeuw.. that's pretty terrible. And changing this isn't in the cards, >>>> like at all? >>> >>> In the long run this should be possible, but not for already existing Xen >>> versions. >>> >>>> >>>> That is, why isn't this whole thing written like: >>>> >>>> for (;;) { >>>> ret = hypercall(foo); >>>> if (ret == -EAGAIN) { >>>> cond_resched(); >>>> continue; >>>> } >>>> break; >>>> } >>> >>> The hypervisor doesn't return -EAGAIN for hysterical reasons. >>> >>> This would be one of the options to change the interface. OTOH there are cases >>> where already existing hypercalls need to be modified in the hypervisor to do >>> preemption in the middle due to e.g. security reasons (avoiding cpu hogging in >>> special cases). >>> >>> Additionally some of the hypercalls being subject to preemption are allowed in >>> unprivileged guests, too. Those are mostly hypercalls allowed for PV guests >>> only, but some are usable by all guests. >>> >>>> >>>>> It is an awful interface and I agree that switching to full preemption in >>>>> dom0 seems to be the route which we should try to take. >>>> >>>> Well, I would very strongly suggest the route to take is to scrap the >>>> whole thing and invest in doing something saner so we don't have to jump >>>> through hoops like this. >>>> >>>> This is quite possibly the worst possible interface for this Xen could >>>> have come up with -- awards material for sure. >>> >>> Yes. >>> >>>> >>>>> The downside would be that some workloads might see worse performance >>>>> due to backend I/O handling might get preempted. >>>> >>>> Is that an actual concern? Mark this a legaxy inteface and anybody who >>>> wants to get away from it updates. >>> >>> It isn't that easy. See above. >>> >>>> >>>>> Just thinking - can full preemption be enabled per process? >>>> >>>> Nope, that's a system wide thing. Preemption is something that's driven >>>> by the requirements of the tasks that preempt, not something by the >>>> tasks that get preempted. >>> >>> Depends. If a task in a non-preempt system could switch itself to be >>> preemptable, we could do so around hypercalls without compromising the >>> general preemption setting. Disabling preemption in a preemptable system >>> should continue to be possible for short code paths only, of course. >>> >>>> Andy's idea of having that thing intercepted as an exception (EXTABLE >>>> like) and relocating the IP to a place that does cond_resched() before >>>> going back is an option.. gross, but possibly better, dunno. >>>> >>>> Quite the mess indeed :/ >>> >>> Yeah. >> >> Having one implementation of interrupt handlers that schedule when they interrupt kernel code (the normal full preempt path) is one thing. Having two of them (full preempt and super-special-Xen) is IMO quite a bit worse. Especially since no one tests the latter very well. >> >> Having a horrible Xen-specific extable-like thingy seems honestly rather less bad. It could even have a little self-contained test that runs at boot, I bet. >> >> But I'll bite on the performance impact issue. What, exactly, is wrong with full preemption? Full preemption has two sources of overhead, I think. One is a bit of bookkeeping. The other is the overhead inherent in actually rescheduling -- context switch cost, losing things from cache, etc. >> >> The bookkeeping part should have quite low overhead. The scheduling part sounds like it might just need some scheduler tuning if it's really a problem. >> >> In any case, for backend IO, full preemption sounds like it should be a win, not a loss. If I'm asking dom0 to do backend IO for me, I don't want it delayed because dom0 was busy doing something else boring. IO is faster when the latency between requesting it and actually submitting it to hardware is lower. > > Maybe. I was assuming that full preemption would result in more context > switches, especially in case many guests are hammering dom0 with I/Os. > This means that more time is spent with switching instead of doing real > work, resulting in dom0 being at 100% cpu faster with doing less work. It ought to just result in context switches happening a bit earlier when the scheduler decides it wants one. When a non-fully-preemptible kernel gets an interrupt and need_resched gets set, it will still schedule as soon as it hits a cond_resched() or a return to usermode or anything else that explicitly allows scheduling. If you're hammering dom0 with IO and it's getting swamped by context switches, the problem is the code handling the IO (too many threads or something), not the preemption. From xen-devel-bounces@lists.xenproject.org Sat Jun 24 17:12:28 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sat, 24 Jun 2023 17:12:28 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554627.865906 (Exim 4.92) (envelope-from ) id 1qD6o0-0004Ed-BT; Sat, 24 Jun 2023 17:12:12 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554627.865906; Sat, 24 Jun 2023 17:12:12 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qD6o0-0004EW-8F; Sat, 24 Jun 2023 17:12:12 +0000 Received: by outflank-mailman (input) for mailman id 554627; Sat, 24 Jun 2023 17:12:10 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qD6ny-0004EM-Ij; Sat, 24 Jun 2023 17:12:10 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qD6ny-0006HY-4G; Sat, 24 Jun 2023 17:12:10 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qD6nx-0005Jd-Jd; Sat, 24 Jun 2023 17:12:09 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qD6nx-0000xZ-JC; Sat, 24 Jun 2023 17:12:09 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=ruDoNtWMNNSbU9gBvBSbP9I7lvGmjM/nhGSzcLwuX5Q=; b=23gIhXkzAK/cI2pcjgTFvuGM+D VLS7RTORcYDrPv8HFV4CVI8s5GUhWIxDvv0dgo37eMIFd10qTUW6DLq6bsH0mOoqPnMKeIitwBEFX fy60BB4aGZcRpnVZI73Kma0Btyftj6K3gk4fae599bbBzUktM4eppAcSBtZMcN7Qli1k=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [linux-linus test] 181573: regressions - FAIL X-Osstest-Failures: linux-linus:test-armhf-armhf-xl-credit1:xen-boot:fail:regression linux-linus:test-armhf-armhf-xl:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-raw:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-credit2:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking linux-linus:test-armhf-armhf-libvirt:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-arndale:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-examine:reboot:fail:nonblocking linux-linus:test-armhf-armhf-xl-rtds:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-qcow2:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-vhd:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-multivcpu:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-qcow2:migrate-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-raw:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: linux=a92b7d26c743b9dc06d520f863d624e94978a1d9 X-Osstest-Versions-That: linux=6c538e1adbfc696ac4747fb10d63e704344f763d From: osstest service owner Date: Sat, 24 Jun 2023 17:12:09 +0000 flight 181573 linux-linus real [real] flight 181579 linux-linus real-retest [real] http://logs.test-lab.xenproject.org/osstest/logs/181573/ http://logs.test-lab.xenproject.org/osstest/logs/181579/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: test-armhf-armhf-xl-credit1 8 xen-boot fail REGR. vs. 180278 Tests which did not succeed, but are not blocking: test-armhf-armhf-xl 8 xen-boot fail like 180278 test-armhf-armhf-libvirt-raw 8 xen-boot fail like 180278 test-armhf-armhf-xl-credit2 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 180278 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 180278 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 180278 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 180278 test-armhf-armhf-libvirt 8 xen-boot fail like 180278 test-armhf-armhf-xl-arndale 8 xen-boot fail like 180278 test-armhf-armhf-examine 8 reboot fail like 180278 test-armhf-armhf-xl-rtds 8 xen-boot fail like 180278 test-armhf-armhf-libvirt-qcow2 8 xen-boot fail like 180278 test-armhf-armhf-xl-vhd 8 xen-boot fail like 180278 test-armhf-armhf-xl-multivcpu 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 180278 test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qcow2 14 migrate-support-check fail never pass test-amd64-amd64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass version targeted for testing: linux a92b7d26c743b9dc06d520f863d624e94978a1d9 baseline version: linux 6c538e1adbfc696ac4747fb10d63e704344f763d Last test of basis 180278 2023-04-16 19:41:46 Z 68 days Failing since 180281 2023-04-17 06:24:36 Z 68 days 128 attempts Testing same since 181573 2023-06-24 02:11:10 Z 0 days 1 attempts ------------------------------------------------------------ 2770 people touched revisions under test, not listing them all jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl fail test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-freebsd11-amd64 pass test-amd64-amd64-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale fail test-amd64-amd64-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 fail test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 fail test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine fail test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt fail test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu fail test-amd64-amd64-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-amd64-pygrub pass test-amd64-amd64-libvirt-qcow2 pass test-armhf-armhf-libvirt-qcow2 fail test-amd64-amd64-libvirt-raw pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw fail test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds fail test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-amd64-xl-vhd pass test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd fail ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 354325 lines long.) From xen-devel-bounces@lists.xenproject.org Sat Jun 24 17:36:21 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sat, 24 Jun 2023 17:36:21 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554633.865916 (Exim 4.92) (envelope-from ) id 1qD7BG-0006m0-8P; Sat, 24 Jun 2023 17:36:14 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554633.865916; Sat, 24 Jun 2023 17:36:14 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qD7BG-0006lt-5p; Sat, 24 Jun 2023 17:36:14 +0000 Received: by outflank-mailman (input) for mailman id 554633; Sat, 24 Jun 2023 17:36:12 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qD7BE-0006ln-Cm for xen-devel@lists.xenproject.org; Sat, 24 Jun 2023 17:36:12 +0000 Received: from mail-wm1-x32c.google.com (mail-wm1-x32c.google.com [2a00:1450:4864:20::32c]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 9bcb38a5-12b5-11ee-b237-6b7b168915f2; Sat, 24 Jun 2023 19:36:11 +0200 (CEST) Received: by mail-wm1-x32c.google.com with SMTP id 5b1f17b1804b1-3f9c2913133so22742005e9.1 for ; Sat, 24 Jun 2023 10:36:10 -0700 (PDT) Received: from [192.168.69.115] ([176.187.217.150]) by smtp.gmail.com with ESMTPSA id d9-20020a5d6dc9000000b0030ae53550f5sm2590762wrz.51.2023.06.24.10.36.07 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Sat, 24 Jun 2023 10:36:09 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 9bcb38a5-12b5-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1687628170; x=1690220170; h=content-transfer-encoding:in-reply-to:from:references:cc:to :content-language:subject:user-agent:mime-version:date:message-id :from:to:cc:subject:date:message-id:reply-to; bh=GhpHbFudMkeMeL5ABLFV8K3ZpIKOcpmqDKumUJnakQo=; b=iHZDudCm+6Lkz6SMlioiaWU3ZPrAVeeGWydDo5XpuHV/O83QDieJ2MW8sBwc0RnJ6n LCyc81zygqlx89kqYh6y73/3CFk7tQWmRPaEg0IWMGey5OqegmHYQ884T0up8Qih6qtw X91F/O84ZOuvkgqRnEXbb0eSlQvy+5Gun1bFmcC96S2uKTlpsxgRhLma5RxvpNjRGq+2 eDO6513hnE4ZqdmdJjRuKKPa5ge9tgFASVn2oo+300iSfP5maJ62wBUynRf7i9NYTjc6 xdYlov0lRWMIvUULtV6NAO9JsfOyDTaiIaPiJgFXnYEpiaqfkMjDaWpUqrHvp89eWXy7 ObVQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687628170; x=1690220170; h=content-transfer-encoding:in-reply-to:from:references:cc:to :content-language:subject:user-agent:mime-version:date:message-id :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=GhpHbFudMkeMeL5ABLFV8K3ZpIKOcpmqDKumUJnakQo=; b=HKYtWlnvMfnVXvwza2UZhYAGSEPTNQviuGOWyfMD9IyoTGOMPqhKUeaCeHwJeu8Zg5 XAGdzur1DT13hlBuSeQnXlqWas7BgnPD7xICendog7kE1UGC5HB5hKQdDtllIsMfdva2 q62h58w6yJnHq6tR5bNL5ONi0e6wVUZYBZkKaPFNK3M1STQzDjOFTdSmMK9QYqBHo2nJ pb+63hjlgcU+vCFFMH4IhpsT+2wt6dlq+iTEEWOnkGEHsAjvEv4p+GWvkIyFkahsXDNJ c8iXJx7iuuoR3WA/B8We//4f0b0FxzV/mZ9OJ9j+q3sNToSaXZ7N4jVpR7SxZoHWr4bb efZA== X-Gm-Message-State: AC+VfDwCxy7SxBeVPTFfKS3NDfCHPlY28ShJ2bBngsL2YW+qlDycrifY U111myckVmBeEfARxtA8I9t2aA== X-Google-Smtp-Source: ACHHUZ45/pSKUwN9ZWRuO9SdxWU1+R6/cc+TpuFjaseh8imD+9izPUxpPl+Hji/hbynVqoq/U2/WFA== X-Received: by 2002:a1c:e90d:0:b0:3f8:fc2a:c7eb with SMTP id q13-20020a1ce90d000000b003f8fc2ac7ebmr17083071wmc.5.1687628170299; Sat, 24 Jun 2023 10:36:10 -0700 (PDT) Message-ID: Date: Sat, 24 Jun 2023 19:36:06 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v2 07/16] accel: Rename HAX 'struct hax_vcpu_state' -> AccelCPUState Content-Language: en-US To: Richard Henderson , qemu-devel@nongnu.org Cc: Reinoud Zandijk , qemu-arm@nongnu.org, kvm@vger.kernel.org, Marcel Apfelbaum , Stefano Stabellini , Anthony Perard , Yanan Wang , Peter Maydell , Roman Bolshakov , Paolo Bonzini , Paul Durrant , Sunil Muthuswamy , Alexander Graf , xen-devel@lists.xenproject.org, Eduardo Habkost , Cameron Esfahani References: <20230622160823.71851-1-philmd@linaro.org> <20230622160823.71851-8-philmd@linaro.org> <2c0a97af-be7e-6d83-5176-ef9980c2faf0@linaro.org> From: =?UTF-8?Q?Philippe_Mathieu-Daud=c3=a9?= In-Reply-To: <2c0a97af-be7e-6d83-5176-ef9980c2faf0@linaro.org> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit On 22/6/23 19:46, Richard Henderson wrote: > On 6/22/23 18:08, Philippe Mathieu-Daudé wrote: >> |+ struct AccelvCPUState *accel;| > ... >> +typedef struct AccelCPUState { >>      hax_fd fd; >>      int vcpu_id; >>      struct hax_tunnel *tunnel; >>      unsigned char *iobuf; >> -}; >> +} hax_vcpu_state; > > > Discussed face to face, but for the record: > > Put the typedef in qemu/typedefs.h, so that we can use it immediately in > core/cpu.h and not need to re-declare it in each accelerator. > > Drop hax_vcpu_state typedef and just use AccelCPUState (since you have > to change all of those lines anyway.  Which will eventually allow > >> +++ b/target/i386/whpx/whpx-all.c >> @@ -2258,7 +2258,7 @@ int whpx_init_vcpu(CPUState *cpu) >> >>      vcpu->interruptable = true; >>      cpu->vcpu_dirty = true; >> -    cpu->accel = (struct hax_vcpu_state *)vcpu; >> +    cpu->accel = (struct AccelCPUState *)vcpu; > > this cast to go away. Indeed, thanks :) From xen-devel-bounces@lists.xenproject.org Sat Jun 24 17:41:42 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sat, 24 Jun 2023 17:41:42 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554639.865927 (Exim 4.92) (envelope-from ) id 1qD7GK-0008H2-0Y; Sat, 24 Jun 2023 17:41:28 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554639.865927; Sat, 24 Jun 2023 17:41:27 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qD7GJ-0008Gv-T2; Sat, 24 Jun 2023 17:41:27 +0000 Received: by outflank-mailman (input) for mailman id 554639; Sat, 24 Jun 2023 17:41:26 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qD7GI-0008Gp-Id for xen-devel@lists.xenproject.org; Sat, 24 Jun 2023 17:41:26 +0000 Received: from mail-wm1-x32d.google.com (mail-wm1-x32d.google.com [2a00:1450:4864:20::32d]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 5757024f-12b6-11ee-b237-6b7b168915f2; Sat, 24 Jun 2023 19:41:25 +0200 (CEST) Received: by mail-wm1-x32d.google.com with SMTP id 5b1f17b1804b1-3fa71e253f2so26385365e9.0 for ; Sat, 24 Jun 2023 10:41:25 -0700 (PDT) Received: from m1x-phil.lan ([176.187.217.150]) by smtp.gmail.com with ESMTPSA id p23-20020a1c7417000000b003f9b0f640b1sm2711760wmc.22.2023.06.24.10.41.22 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Sat, 24 Jun 2023 10:41:24 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 5757024f-12b6-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1687628485; x=1690220485; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=9DD8JyzZ0D9c0TVJWROVlnDQP9z+YeCBvlalUwzeBRo=; b=S8HxrYQ2qhgw56X9JXNpzNmjfiViWtcbiWCpgQccPHZivixZ7QAzwnG0azVoU7xVwb akuxl0mdCTpThLPPNG44q2zM7WFBYRf++FIjeb7OZaKYcNCoxQVVFO06aKvqykPLZlYZ ZvpNiq98b5G8YgGvHvAodfNZ2LcJFFazSZG27b+pSB9bw6v7bdgijzZhhCtwRpACo7M0 slPhBm89C1gJKR7y1ERfGhGue/oWbU0iTwXu9x0IUylVr99MqavVrVlJRD4xj8CSGUvm 6za9HdL9/cV4dMDN2/DHhAKDF5i4CxvXeVSa4T7v0NhA1XGwrIFxIoVXTwJ+ThKpvofI 84Rw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687628485; x=1690220485; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=9DD8JyzZ0D9c0TVJWROVlnDQP9z+YeCBvlalUwzeBRo=; b=dLQhtzJOj/Hekn46/dBUiMK32KhlSOAOwESegHp1pDSPoyhIUcltGQN/ygteaQLWOM TxZfsvX6vI4lA6sUC2g8Ss05quhAqWr3Mn4o1GRB5HvgVPOWrvW4sXktSx3Wqx7QpDk8 1sVIcvm7sAbOTJGFV8BjboeIrXabX6bTsPjA9jsXojv+l5UqunIzxgCxsD9iIxFAM+MT 7ibRJTYSjWcSpujNkZ0PuVYJC2NBfdZWsxcGz5FPtHNItJ6z5krZ6WO8FwGjH1+OIyTt +ahXJexQ4qHRj+0itWO28e8g8ZXBXZqgLWR/wxwnh44yWccakJEGpgE8xIjyhKrq5glH WE+A== X-Gm-Message-State: AC+VfDwTI0v+t12J9tsH81gj98NVhx74Cj6p3u6xH+8EI2sFxpJ55inB eGz4w6OML8D5i6k+u5lIuxaaQA== X-Google-Smtp-Source: ACHHUZ4RU70EsAbLLa974X6kTmgNQb8jnG4vK1SD4DHwEek3Lg8HiGz7TW7mHUT/jA40wDP62z4cEA== X-Received: by 2002:a05:600c:2942:b0:3f7:e7a2:25f6 with SMTP id n2-20020a05600c294200b003f7e7a225f6mr21913470wmd.17.1687628485030; Sat, 24 Jun 2023 10:41:25 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: kvm@vger.kernel.org, Marcel Apfelbaum , Peter Maydell , Roman Bolshakov , qemu-arm@nongnu.org, Richard Henderson , Alexander Graf , xen-devel@lists.xenproject.org, Sunil Muthuswamy , Anthony Perard , Stefano Stabellini , Yanan Wang , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Paul Durrant , Reinoud Zandijk , Eduardo Habkost , Cameron Esfahani , Paolo Bonzini Subject: [PATCH v3 00/16] accel: Share CPUState accel context (HAX/NVMM/WHPX/HVF) Date: Sat, 24 Jun 2023 19:41:05 +0200 Message-Id: <20230624174121.11508-1-philmd@linaro.org> X-Mailer: git-send-email 2.38.1 MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 8bit This series is part of the single binary effort. All accelerator will share their per-vCPU context in an opaque 'accel' pointer within the CPUState. First handle HAX/NVMM/WHPX/HVF. KVM and TCG will follow as two different (bigger) follow-up series. Except HVF/intel, all has been (cross-)build tested. I plan to send the PR myself. Since v2: - Addressed rth's review comments - Added rth's R-b tag Since v1: - Addressed rth's review comments - Added rth's R-b tag - Converted HVF intel (untested) - Rebased Philippe Mathieu-Daudé (16): MAINTAINERS: Update Roman Bolshakov email address accel: Document generic accelerator headers accel: Remove unused hThread variable on TCG/WHPX accel: Fix a leak on Windows HAX accel: Destroy HAX vCPU threads once done accel: Rename 'hax_vcpu' as 'accel' in CPUState accel: Rename HAX 'struct hax_vcpu_state' -> AccelCPUState accel: Move HAX hThread to accelerator context accel: Remove NVMM unreachable error path accel: Rename NVMM 'struct qemu_vcpu' -> AccelCPUState accel: Inline NVMM get_qemu_vcpu() accel: Remove WHPX unreachable error path accel: Rename WHPX 'struct whpx_vcpu' -> AccelCPUState accel: Inline WHPX get_whpx_vcpu() accel: Rename 'cpu_state' -> 'cs' accel: Rename HVF 'struct hvf_vcpu_state' -> AccelCPUState MAINTAINERS | 4 +- include/hw/core/cpu.h | 10 +- include/qemu/typedefs.h | 1 + include/sysemu/hax.h | 2 + include/sysemu/hvf_int.h | 2 +- include/sysemu/kvm.h | 2 + include/sysemu/nvmm.h | 2 + include/sysemu/tcg.h | 2 + include/sysemu/whpx.h | 2 + include/sysemu/xen.h | 2 + target/i386/hax/hax-i386.h | 12 +- target/i386/hvf/vmx.h | 22 +- target/i386/hvf/x86hvf.h | 18 +- accel/hvf/hvf-accel-ops.c | 18 +- accel/tcg/tcg-accel-ops-mttcg.c | 4 - accel/tcg/tcg-accel-ops-rr.c | 3 - target/arm/hvf/hvf.c | 108 ++++----- target/i386/hax/hax-accel-ops.c | 5 +- target/i386/hax/hax-all.c | 26 ++- target/i386/hax/hax-posix.c | 4 +- target/i386/hax/hax-windows.c | 6 +- target/i386/hvf/hvf.c | 104 ++++----- target/i386/hvf/x86.c | 28 +-- target/i386/hvf/x86_descr.c | 26 +-- target/i386/hvf/x86_emu.c | 62 ++--- target/i386/hvf/x86_mmu.c | 4 +- target/i386/hvf/x86_task.c | 10 +- target/i386/hvf/x86hvf.c | 372 +++++++++++++++--------------- target/i386/nvmm/nvmm-all.c | 42 ++-- target/i386/whpx/whpx-accel-ops.c | 3 - target/i386/whpx/whpx-all.c | 45 ++-- .mailmap | 3 +- 32 files changed, 469 insertions(+), 485 deletions(-) -- 2.38.1 From xen-devel-bounces@lists.xenproject.org Sat Jun 24 17:41:45 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sat, 24 Jun 2023 17:41:45 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554640.865938 (Exim 4.92) (envelope-from ) id 1qD7GR-00007v-A4; Sat, 24 Jun 2023 17:41:35 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554640.865938; Sat, 24 Jun 2023 17:41:35 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qD7GR-00007o-5O; Sat, 24 Jun 2023 17:41:35 +0000 Received: by outflank-mailman (input) for mailman id 554640; Sat, 24 Jun 2023 17:41:34 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qD7GQ-0008Gp-3v for xen-devel@lists.xenproject.org; Sat, 24 Jun 2023 17:41:34 +0000 Received: from mail-wr1-x42a.google.com (mail-wr1-x42a.google.com [2a00:1450:4864:20::42a]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 5c12750f-12b6-11ee-b237-6b7b168915f2; Sat, 24 Jun 2023 19:41:33 +0200 (CEST) Received: by mail-wr1-x42a.google.com with SMTP id ffacd0b85a97d-3129c55e1d1so2107431f8f.0 for ; Sat, 24 Jun 2023 10:41:33 -0700 (PDT) Received: from m1x-phil.lan ([176.187.217.150]) by smtp.gmail.com with ESMTPSA id z7-20020a5d6407000000b0030fcf3d75c4sm2609804wru.45.2023.06.24.10.41.30 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Sat, 24 Jun 2023 10:41:32 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 5c12750f-12b6-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1687628493; x=1690220493; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=+JIxHWMClVl6mvpALDoBK231PZeNGUQgT3foMweSwl8=; b=d9EPiTdMBS6ezt21TafvsYW1DcHw6rx3bSyGYk02qijZjSVC1xbJv7hrNc8Bln/+KY da9/C7KLlpChs5ekpkEMTLt+8/tTn69sMDTvOr77GosenaKuMVoIqanEcBIaB+x8/IYa sMX5xiZvQgUwCoIYnw0wLy0I8qTh5UNWS2TKXn7vV66wpwVU6Arg9AwvuzGbtx5f2Fr1 NS187HJhnsPP5z7lKj2H5zJ9WFDNB74ee+CLe5qo2TrqCpMy25BW2hi6t3sBgrl2wrMY 3O1uqpNOR6dT7+pTrezI8H96sgMZeN+qygKbA8KQdg//j8BnqU62WE8Pxxa1LGwOWpQ1 C2DA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687628493; x=1690220493; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=+JIxHWMClVl6mvpALDoBK231PZeNGUQgT3foMweSwl8=; b=CP0azyf6B9uqDnDA4j8gXrYWU2Sr0tIzI2ieSMROGiGcdTMRuqC/7znKZwf/nUP4mo s5K2+vHVtz1ADVbPa3BihRFE1lnVjh+bUUM0Dg/7e2BkxtnLIrbdzbbQLJI9HT84jWUV uAJUsjqhBzLIDdM4vin9ux68oF10PHE6bzcSSPXsS2tmQF5BlBz61lARPSTw3pX0UrXe 4szB9hwUJBZn3DZEVqBumVoF7zhF2KGgDPMFF3yeff0n5d8IKy5ctu2aiRe05s6muwSW 9iwLJ/z9cAdbaCplrJx8hp1/GxwxvToxmZ+ZJDL1Ibu//cDIvQl91tDEQUb3gnQj4ZEc ccPA== X-Gm-Message-State: AC+VfDxm9FletFeRAEwjclEbiWIICdGxOFu0JmoCjxatR8VMb3eDH2H4 YRNL4XoJoEifSkfmgqGVqb9sEQ== X-Google-Smtp-Source: ACHHUZ4gIjgAKb4rVFXLZjiJdVzXvPynrHKyrgCEdSr0allCKh8ZZswCbWqoo+JLTWwg5/zBqsSxag== X-Received: by 2002:a5d:5344:0:b0:313:df09:ad04 with SMTP id t4-20020a5d5344000000b00313df09ad04mr2110290wrv.57.1687628493050; Sat, 24 Jun 2023 10:41:33 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: kvm@vger.kernel.org, Marcel Apfelbaum , Peter Maydell , Roman Bolshakov , qemu-arm@nongnu.org, Richard Henderson , Alexander Graf , xen-devel@lists.xenproject.org, Sunil Muthuswamy , Anthony Perard , Stefano Stabellini , Yanan Wang , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Paul Durrant , Reinoud Zandijk , Eduardo Habkost , Cameron Esfahani , Paolo Bonzini Subject: [PATCH v3 01/16] MAINTAINERS: Update Roman Bolshakov email address Date: Sat, 24 Jun 2023 19:41:06 +0200 Message-Id: <20230624174121.11508-2-philmd@linaro.org> X-Mailer: git-send-email 2.38.1 In-Reply-To: <20230624174121.11508-1-philmd@linaro.org> References: <20230624174121.11508-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit r.bolshakov@yadro.com is bouncing: Update Roman's email address using one found somewhere on the Internet; this way he can Ack-by. (Reorder Taylor's line to keep the section sorted alphabetically). Signed-off-by: Philippe Mathieu-Daudé --- MAINTAINERS | 4 ++-- .mailmap | 3 ++- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/MAINTAINERS b/MAINTAINERS index 7f323cd2eb..1da135b0c8 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -497,14 +497,14 @@ F: target/arm/hvf/ X86 HVF CPUs M: Cameron Esfahani -M: Roman Bolshakov +M: Roman Bolshakov W: https://wiki.qemu.org/Features/HVF S: Maintained F: target/i386/hvf/ HVF M: Cameron Esfahani -M: Roman Bolshakov +M: Roman Bolshakov W: https://wiki.qemu.org/Features/HVF S: Maintained F: accel/hvf/ diff --git a/.mailmap b/.mailmap index b57da4827e..64ef9f4de6 100644 --- a/.mailmap +++ b/.mailmap @@ -76,9 +76,10 @@ Paul Burton Philippe Mathieu-Daudé Philippe Mathieu-Daudé Philippe Mathieu-Daudé +Roman Bolshakov Stefan Brankovic -Yongbok Kim Taylor Simpson +Yongbok Kim # Also list preferred name forms where people have changed their # git author config, or had utf8/latin1 encoding issues. -- 2.38.1 From xen-devel-bounces@lists.xenproject.org Sat Jun 24 17:41:48 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sat, 24 Jun 2023 17:41:48 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554641.865947 (Exim 4.92) (envelope-from ) id 1qD7GY-0000SE-Fq; Sat, 24 Jun 2023 17:41:42 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554641.865947; Sat, 24 Jun 2023 17:41:42 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qD7GY-0000Ry-Cq; Sat, 24 Jun 2023 17:41:42 +0000 Received: by outflank-mailman (input) for mailman id 554641; Sat, 24 Jun 2023 17:41:41 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qD7GX-0008Gp-Fr for xen-devel@lists.xenproject.org; Sat, 24 Jun 2023 17:41:41 +0000 Received: from mail-wm1-x333.google.com (mail-wm1-x333.google.com [2a00:1450:4864:20::333]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 60769381-12b6-11ee-b237-6b7b168915f2; Sat, 24 Jun 2023 19:41:40 +0200 (CEST) Received: by mail-wm1-x333.google.com with SMTP id 5b1f17b1804b1-3f9bece8d1bso22346845e9.0 for ; Sat, 24 Jun 2023 10:41:40 -0700 (PDT) Received: from m1x-phil.lan ([176.187.217.150]) by smtp.gmail.com with ESMTPSA id t16-20020a7bc3d0000000b003f17848673fsm2720557wmj.27.2023.06.24.10.41.37 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Sat, 24 Jun 2023 10:41:39 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 60769381-12b6-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1687628500; x=1690220500; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=xHLdIwIywOmneOj5eUp5g6ra2t5DF15QteoMLknkUnc=; b=omrduxic9rR9gPq+8XiHL87viBJ6wPrEMLfMgl5GRT1MGJsF+TtB4IIzUjBDeXNjSP tp/8tj21VJeGWzF0OuqgjS2WgxvAd7ieEEmjLY+I4RrDNy354ZcTaHifbrUEQBN4g/u9 4e/DFqq/MH/KbKaaB92Ppsx49dKlUxgAkumlNe5v3R+Jm/CqIieAk+esoDLYqoEBfLF/ 1f88uKZFICtvcllNPS/mi7pVo0xerJ43s2nY2Z3sJDSCnEe0Pht9v3orZiuam5tqDacn UUqcswJ4Q6QF4/9o+nZDEmVIc9HxLeYNLEDed2aM4/V1htoQbmJH9XmE/hgtRRhOhIST 3Imw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687628500; x=1690220500; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=xHLdIwIywOmneOj5eUp5g6ra2t5DF15QteoMLknkUnc=; b=UhUS+Yw+qubC3nFMj00IuP06x+4UJ99xull6wpvNpRTRRxqRChGqxnQwQwOWFIlkFe EZIt9AHrp9qdXHPIPRvBC8D7Q88kBH5NiG9jgWvUjw4VjjYOjuyPH/qDoMxtbqKcR0x1 HOmS3c6pFtQ1GOg0mpVEp/cxGn8sHUxuZghOn4Qm7O2YPsQ+SH1Y73ru/GWQHzl+gLvT bmwZNgVYG6UX0W1vbaoBgIfErrDwKyu8YsX7psx0HHPECvoDyBLj+C3sz6g6ZXIs0PmH fdTUosxRh0tWteGOYDkFLSUhLcnOOsvZ159j8fzKaNYXK30FahJCDLcCAP3W+96ZdjbN AlLw== X-Gm-Message-State: AC+VfDzY6YLCQCzsY/8q+OacHDgytYhd/fh2OsZg33Jlk/zC0bbwDIR2 dtkj6iok4DXhi/16MMpQovrwFw== X-Google-Smtp-Source: ACHHUZ4U4xeWdaU30+Yq1mmhN/DHgskzeAXZldA07vw+iV02dwa7q8YwoovgGfKWWwqQiGNx3nFeTA== X-Received: by 2002:a1c:f70d:0:b0:3f7:3685:1e10 with SMTP id v13-20020a1cf70d000000b003f736851e10mr19084030wmh.40.1687628500315; Sat, 24 Jun 2023 10:41:40 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: kvm@vger.kernel.org, Marcel Apfelbaum , Peter Maydell , Roman Bolshakov , qemu-arm@nongnu.org, Richard Henderson , Alexander Graf , xen-devel@lists.xenproject.org, Sunil Muthuswamy , Anthony Perard , Stefano Stabellini , Yanan Wang , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Paul Durrant , Reinoud Zandijk , Eduardo Habkost , Cameron Esfahani , Paolo Bonzini Subject: [PATCH v3 02/16] accel: Document generic accelerator headers Date: Sat, 24 Jun 2023 19:41:07 +0200 Message-Id: <20230624174121.11508-3-philmd@linaro.org> X-Mailer: git-send-email 2.38.1 In-Reply-To: <20230624174121.11508-1-philmd@linaro.org> References: <20230624174121.11508-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit These headers are meant to be include by any file to check the availability of accelerators, thus are not accelerator specific. Signed-off-by: Philippe Mathieu-Daudé Acked-by: Richard Henderson --- include/sysemu/hax.h | 2 ++ include/sysemu/kvm.h | 2 ++ include/sysemu/nvmm.h | 2 ++ include/sysemu/tcg.h | 2 ++ include/sysemu/whpx.h | 2 ++ include/sysemu/xen.h | 2 ++ 6 files changed, 12 insertions(+) diff --git a/include/sysemu/hax.h b/include/sysemu/hax.h index bf8f99a824..80fc716f80 100644 --- a/include/sysemu/hax.h +++ b/include/sysemu/hax.h @@ -19,6 +19,8 @@ * */ +/* header to be included in non-HAX-specific code */ + #ifndef QEMU_HAX_H #define QEMU_HAX_H diff --git a/include/sysemu/kvm.h b/include/sysemu/kvm.h index 88f5ccfbce..7902acdfd9 100644 --- a/include/sysemu/kvm.h +++ b/include/sysemu/kvm.h @@ -11,6 +11,8 @@ * */ +/* header to be included in non-KVM-specific code */ + #ifndef QEMU_KVM_H #define QEMU_KVM_H diff --git a/include/sysemu/nvmm.h b/include/sysemu/nvmm.h index 833670fccb..be7bc9a62d 100644 --- a/include/sysemu/nvmm.h +++ b/include/sysemu/nvmm.h @@ -7,6 +7,8 @@ * See the COPYING file in the top-level directory. */ +/* header to be included in non-NVMM-specific code */ + #ifndef QEMU_NVMM_H #define QEMU_NVMM_H diff --git a/include/sysemu/tcg.h b/include/sysemu/tcg.h index 53352450ff..5e2ca9aab3 100644 --- a/include/sysemu/tcg.h +++ b/include/sysemu/tcg.h @@ -5,6 +5,8 @@ * See the COPYING file in the top-level directory. */ +/* header to be included in non-TCG-specific code */ + #ifndef SYSEMU_TCG_H #define SYSEMU_TCG_H diff --git a/include/sysemu/whpx.h b/include/sysemu/whpx.h index 2889fa2278..781ca5b2b6 100644 --- a/include/sysemu/whpx.h +++ b/include/sysemu/whpx.h @@ -10,6 +10,8 @@ * */ +/* header to be included in non-WHPX-specific code */ + #ifndef QEMU_WHPX_H #define QEMU_WHPX_H diff --git a/include/sysemu/xen.h b/include/sysemu/xen.h index 0ca25697e4..bc13ad5692 100644 --- a/include/sysemu/xen.h +++ b/include/sysemu/xen.h @@ -5,6 +5,8 @@ * See the COPYING file in the top-level directory. */ +/* header to be included in non-Xen-specific code */ + #ifndef SYSEMU_XEN_H #define SYSEMU_XEN_H -- 2.38.1 From xen-devel-bounces@lists.xenproject.org Sat Jun 24 17:41:50 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sat, 24 Jun 2023 17:41:50 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554643.865957 (Exim 4.92) (envelope-from ) id 1qD7Gg-0000xv-Na; Sat, 24 Jun 2023 17:41:50 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554643.865957; Sat, 24 Jun 2023 17:41:50 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qD7Gg-0000xj-KB; Sat, 24 Jun 2023 17:41:50 +0000 Received: by outflank-mailman (input) for mailman id 554643; Sat, 24 Jun 2023 17:41:49 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qD7Gf-0000wd-G6 for xen-devel@lists.xenproject.org; Sat, 24 Jun 2023 17:41:49 +0000 Received: from mail-wm1-x329.google.com (mail-wm1-x329.google.com [2a00:1450:4864:20::329]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 6468e15a-12b6-11ee-8611-37d641c3527e; Sat, 24 Jun 2023 19:41:47 +0200 (CEST) Received: by mail-wm1-x329.google.com with SMTP id 5b1f17b1804b1-3f9bece8d1bso22347675e9.0 for ; Sat, 24 Jun 2023 10:41:47 -0700 (PDT) Received: from m1x-phil.lan ([176.187.217.150]) by smtp.gmail.com with ESMTPSA id p23-20020a1c7417000000b003f9b0f640b1sm2712454wmc.22.2023.06.24.10.41.44 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Sat, 24 Jun 2023 10:41:46 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 6468e15a-12b6-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1687628507; x=1690220507; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=iG1kgLZ5QV1q9fprOekDS1vi4YDLS9XqOgasp153yeA=; b=K86GwMMvk4Df7udKOIOJ1vd/414tWjcj7PaRdAJ3QyILeXtNH5ZrXuja1IMnbHcdr6 Y3ebUsAdLPajHQlE39ljJ0fh/t/JOBvYNV3b1NEe+LE9+APH19Ejl4JAt+dbQAuXBfQG APP2deEp7Mz2AHGIykGQohAv+jMZxXlGcUZUUP5eB4eZ+/bp2zpXSpG45gUaftUbbM4h 5VXKPOKiAkaTH9X4aafmA+F7qu6COUvyHTBWEy2hotlnbHYRw86edbr2sm8Jd6RGhxKg UTQS4TDFLjCbZez6jFysEJYiEbh83uGUurvLwpjCbf3TGV5woFHYcA+a7TFnE+XwwpJc rP5w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687628507; x=1690220507; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=iG1kgLZ5QV1q9fprOekDS1vi4YDLS9XqOgasp153yeA=; b=WzV8ca3ZJXh4ugua8NwCEHSBNiQLJQUDlGbFixxopDByGzHMH02exGb7BUfsd0e4VR QO1YAQdF0cgOTW92VSbBEABkW/0buDSzCPX3sKp4+pk8+pLFPxsOjUMTnbMqp/3G5Y9W 5AqPfOgbGIqhSczqEe4+N+k/spBAp9kA+IFIiDbM7JGIErdgLOFqFmNncAqJGwruxn75 MLuxGv6uubr62ThUsMIqridKmwVZdF+BHR+CGExKvxUkh5LlmxGBT+ozsJGLVY/+bCL2 YxRh/3n3PDfop0T/tRHg9tVXWuUM35Qa38ErQXSeoVx2SeBVyn5W3bcagh/q4ysZJbwa Ru3A== X-Gm-Message-State: AC+VfDz7Ko9ahy3tAbuuALmkUaJnS4MY0CNWdI+JaA1VwKLEwc6LEsbX xV8mrwtyBhH5vOMbx2VajiDPnoCZUtTmu0Wk1w0= X-Google-Smtp-Source: ACHHUZ7OfepQue0fzzv7ARVu6MjpgeQ79vp0jBcJMaT0gk3oCOgSw7w1smkAWzCkTRk8bysAFxnFSg== X-Received: by 2002:a1c:7419:0:b0:3f9:b79d:a5fa with SMTP id p25-20020a1c7419000000b003f9b79da5famr10746278wmc.16.1687628507031; Sat, 24 Jun 2023 10:41:47 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: kvm@vger.kernel.org, Marcel Apfelbaum , Peter Maydell , Roman Bolshakov , qemu-arm@nongnu.org, Richard Henderson , Alexander Graf , xen-devel@lists.xenproject.org, Sunil Muthuswamy , Anthony Perard , Stefano Stabellini , Yanan Wang , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Paul Durrant , Reinoud Zandijk , Eduardo Habkost , Cameron Esfahani , Paolo Bonzini Subject: [PATCH v3 03/16] accel: Remove unused hThread variable on TCG/WHPX Date: Sat, 24 Jun 2023 19:41:08 +0200 Message-Id: <20230624174121.11508-4-philmd@linaro.org> X-Mailer: git-send-email 2.38.1 In-Reply-To: <20230624174121.11508-1-philmd@linaro.org> References: <20230624174121.11508-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit On Windows hosts, cpu->hThread is assigned but never accessed: remove it. Signed-off-by: Philippe Mathieu-Daudé Reviewed-by: Richard Henderson --- accel/tcg/tcg-accel-ops-mttcg.c | 4 ---- accel/tcg/tcg-accel-ops-rr.c | 3 --- target/i386/whpx/whpx-accel-ops.c | 3 --- 3 files changed, 10 deletions(-) diff --git a/accel/tcg/tcg-accel-ops-mttcg.c b/accel/tcg/tcg-accel-ops-mttcg.c index b320ff0037..b276262007 100644 --- a/accel/tcg/tcg-accel-ops-mttcg.c +++ b/accel/tcg/tcg-accel-ops-mttcg.c @@ -152,8 +152,4 @@ void mttcg_start_vcpu_thread(CPUState *cpu) qemu_thread_create(cpu->thread, thread_name, mttcg_cpu_thread_fn, cpu, QEMU_THREAD_JOINABLE); - -#ifdef _WIN32 - cpu->hThread = qemu_thread_get_handle(cpu->thread); -#endif } diff --git a/accel/tcg/tcg-accel-ops-rr.c b/accel/tcg/tcg-accel-ops-rr.c index 23e4d0f452..2d523289a8 100644 --- a/accel/tcg/tcg-accel-ops-rr.c +++ b/accel/tcg/tcg-accel-ops-rr.c @@ -329,9 +329,6 @@ void rr_start_vcpu_thread(CPUState *cpu) single_tcg_halt_cond = cpu->halt_cond; single_tcg_cpu_thread = cpu->thread; -#ifdef _WIN32 - cpu->hThread = qemu_thread_get_handle(cpu->thread); -#endif } else { /* we share the thread */ cpu->thread = single_tcg_cpu_thread; diff --git a/target/i386/whpx/whpx-accel-ops.c b/target/i386/whpx/whpx-accel-ops.c index e8dc4b3a47..67cad86720 100644 --- a/target/i386/whpx/whpx-accel-ops.c +++ b/target/i386/whpx/whpx-accel-ops.c @@ -71,9 +71,6 @@ static void whpx_start_vcpu_thread(CPUState *cpu) cpu->cpu_index); qemu_thread_create(cpu->thread, thread_name, whpx_cpu_thread_fn, cpu, QEMU_THREAD_JOINABLE); -#ifdef _WIN32 - cpu->hThread = qemu_thread_get_handle(cpu->thread); -#endif } static void whpx_kick_vcpu_thread(CPUState *cpu) -- 2.38.1 From xen-devel-bounces@lists.xenproject.org Sat Jun 24 17:41:57 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sat, 24 Jun 2023 17:41:57 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554646.865967 (Exim 4.92) (envelope-from ) id 1qD7Gn-0001R6-0D; Sat, 24 Jun 2023 17:41:57 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554646.865967; Sat, 24 Jun 2023 17:41:56 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qD7Gm-0001Qz-SX; Sat, 24 Jun 2023 17:41:56 +0000 Received: by outflank-mailman (input) for mailman id 554646; Sat, 24 Jun 2023 17:41:55 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qD7Gl-0000wd-Tg for xen-devel@lists.xenproject.org; Sat, 24 Jun 2023 17:41:55 +0000 Received: from mail-wr1-x42e.google.com (mail-wr1-x42e.google.com [2a00:1450:4864:20::42e]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 687594aa-12b6-11ee-8611-37d641c3527e; Sat, 24 Jun 2023 19:41:54 +0200 (CEST) Received: by mail-wr1-x42e.google.com with SMTP id ffacd0b85a97d-313e714342cso444875f8f.0 for ; Sat, 24 Jun 2023 10:41:54 -0700 (PDT) Received: from m1x-phil.lan ([176.187.217.150]) by smtp.gmail.com with ESMTPSA id i11-20020adfefcb000000b0030ae3a6be5bsm2589165wrp.78.2023.06.24.10.41.51 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Sat, 24 Jun 2023 10:41:53 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 687594aa-12b6-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1687628514; x=1690220514; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=KWWds0uHrElgc22pSSxJ50tOp/lAV9kSI84s7Y2g/GM=; b=JjwltddD/cnNRwVGBpMlwyJ7wVl1Dd+vLMYIA1ed2CA1z7xOvX3DxVnc8gtCpAefSE xo5g1CiCqTPXpIH4UJy5+rsZYpuKE81Z7be0dQTZ7JzdeX9j5u9Mx8Z5FVXetI2JfTyn 47UG4xbVI3FVQad68NuGZMbwNXEiWjQIy56FIAywQDCoHP3eiLzbyyHqhhjC+Qo5u3Cg 4ws7FQYnR+gqZpuWyo+1mj6A2Kgebxl4XbhZ5VUeZWE7itV80GK8EINXxv01Dffpjd6L xbEKH2Df7yWf84jA7YjCpGFhq4pv94jz889H0Vtin/e3lUxP++i7igvK6CJ6NiiQ/q9Z ZPCQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687628514; x=1690220514; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=KWWds0uHrElgc22pSSxJ50tOp/lAV9kSI84s7Y2g/GM=; b=JbfNmFC+ZW97D6kyq7EyO9PkvjxMOhYQUOkgxf59xCqXhMOvbRa3ev0uFUqSBX11M9 tqjcHWbYKLr7Q3GNhdnzXMBKYQAYtsErX8V44Y/H7QhQb67D99Vb4AlSMEra8l6zAm4W ZN7djHAaT55SUipirWq2BkTHmZLMqeCMRLUZz31MxKNkgiDU5VVO/R0LZ8h1+wYBvuQd lZqZXHZLU6tjk/ZitiI24eoFWs0cadC7qf5mvXv5gCLBbnaRMKcj2NxKohqLGRgvPKXi dOf/ba9KnCyMo44hIvpNl6BiYLCl3bgLlLvnCFomRiNZb0kUyQsz6GGRcOEQiBQP5unz YaAg== X-Gm-Message-State: AC+VfDxhm+KC10g8knWL6XNj4WdM0WrHYOM5DuDR3JJd3N+NDbqWK9P8 nH83VaK3qHoZ9Zor+UjR+zA4Yw== X-Google-Smtp-Source: ACHHUZ4nAed12yC0ATc4y4T6ov4JNqGmFeW1j5VBFhJ02T6YV9zBXbm//g8zhdDQtOShKB4zz31FCw== X-Received: by 2002:a5d:5541:0:b0:311:abb:e377 with SMTP id g1-20020a5d5541000000b003110abbe377mr6323739wrw.39.1687628513811; Sat, 24 Jun 2023 10:41:53 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: kvm@vger.kernel.org, Marcel Apfelbaum , Peter Maydell , Roman Bolshakov , qemu-arm@nongnu.org, Richard Henderson , Alexander Graf , xen-devel@lists.xenproject.org, Sunil Muthuswamy , Anthony Perard , Stefano Stabellini , Yanan Wang , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Paul Durrant , Reinoud Zandijk , Eduardo Habkost , Cameron Esfahani , Paolo Bonzini Subject: [PATCH v3 04/16] accel: Fix a leak on Windows HAX Date: Sat, 24 Jun 2023 19:41:09 +0200 Message-Id: <20230624174121.11508-5-philmd@linaro.org> X-Mailer: git-send-email 2.38.1 In-Reply-To: <20230624174121.11508-1-philmd@linaro.org> References: <20230624174121.11508-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit hThread is only used on the error path in hax_kick_vcpu_thread(). Fixes: b0cb0a66d6 ("Plumb the HAXM-based hardware acceleration support") Signed-off-by: Philippe Mathieu-Daudé Reviewed-by: Richard Henderson --- target/i386/hax/hax-all.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/target/i386/hax/hax-all.c b/target/i386/hax/hax-all.c index 3e5992a63b..a2321a1eff 100644 --- a/target/i386/hax/hax-all.c +++ b/target/i386/hax/hax-all.c @@ -205,6 +205,9 @@ int hax_vcpu_destroy(CPUState *cpu) */ hax_close_fd(vcpu->fd); hax_global.vm->vcpus[vcpu->vcpu_id] = NULL; +#ifdef _WIN32 + CloseHandle(cpu->hThread); +#endif g_free(vcpu); return 0; } -- 2.38.1 From xen-devel-bounces@lists.xenproject.org Sat Jun 24 17:42:02 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sat, 24 Jun 2023 17:42:02 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554650.865977 (Exim 4.92) (envelope-from ) id 1qD7Gs-0001sV-Cb; Sat, 24 Jun 2023 17:42:02 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554650.865977; Sat, 24 Jun 2023 17:42:02 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qD7Gs-0001sF-9I; Sat, 24 Jun 2023 17:42:02 +0000 Received: by outflank-mailman (input) for mailman id 554650; Sat, 24 Jun 2023 17:42:01 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qD7Gr-0008Gp-Dh for xen-devel@lists.xenproject.org; Sat, 24 Jun 2023 17:42:01 +0000 Received: from mail-wr1-x42b.google.com (mail-wr1-x42b.google.com [2a00:1450:4864:20::42b]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 6c6eb909-12b6-11ee-b237-6b7b168915f2; Sat, 24 Jun 2023 19:42:00 +0200 (CEST) Received: by mail-wr1-x42b.google.com with SMTP id ffacd0b85a97d-307d58b3efbso1638314f8f.0 for ; Sat, 24 Jun 2023 10:42:00 -0700 (PDT) Received: from m1x-phil.lan ([176.187.217.150]) by smtp.gmail.com with ESMTPSA id u18-20020a5d6ad2000000b00313e90d1d0dsm650617wrw.112.2023.06.24.10.41.58 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Sat, 24 Jun 2023 10:42:00 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 6c6eb909-12b6-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1687628520; x=1690220520; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=iCloP/Ux3IV8UJ0ZKXn7/ebp5dcIIh/2RC3mzeqRGMo=; b=B5Q6wTHDnyh2KH0MiJh6f7PRNtQ407iOhYbCWpAuAn2/F07ZIUhbhg5RZhnZx5aixo krIptOmRDGX4i+JQ48AmPyA0UMgIN9bZPYWdqQc0zCDEP4Do4gFa4VBPEK3TV2G/qjyK TxY+6y3B+iWbYRlATMU2lY1+o9i90v/HVZQYbeyLm6UdtSQEpYHVUcZ5fxK5VJ1NnEYs iy0BtiVzJy2t5b9awonbad36/jZG14S8MSTnthMeJln51zyNicO+yZr+ObXx88p69pnr S1aw9y9Wlm9wze65oBQ50fPz5m5iQqX+190XTv09khKKIIEk79oKUf1Nr2TcLzDhZUZR Grzg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687628520; x=1690220520; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=iCloP/Ux3IV8UJ0ZKXn7/ebp5dcIIh/2RC3mzeqRGMo=; b=RLOzNh42ffm8wZ3wVwvkI9zk7HA7Gs9fFUWmYtxchm58fH1UGE3Wum2i4A8sH3cfLn xNe/MYp5gfOHEfmbO/FXarBQ+NvMCXZ95tVE3bQAHDLyVPBwKb0xuCE3UOdeYG1znovt ltWth7bc5msTpEnbIV4qSbsBbVhmM0PjKkEw+vk7NzGmx5QpG4kXUcJo1BoZ2G2Ljp9f rg6xE96p+vtGSd8H+pRp/vh/gimVJolezp5lM4R4xxieEQa0qONSffT2f9v+NkpK4Ab6 5alBaj7BK31nbytSaqD6ioyyqL3TXRBZ+nTmnLm28csiM3ISGlEqCtblS3gWlfrUnUcM XCbQ== X-Gm-Message-State: AC+VfDwD2TpkoZnMtScr5Jatvx8lFJ0blPToe4Jb9BhMsMGSPBd15w7r 5fTXX37k8SQ5D4/Ayg6ud4WU3w== X-Google-Smtp-Source: ACHHUZ5/SpC0ZbioPxnpVkbdcutfj7CfDUgxK3ql/H+wAujoV6T+DY7QM+cKCk/JAModrZsCdUekWQ== X-Received: by 2002:a5d:5242:0:b0:313:deda:c444 with SMTP id k2-20020a5d5242000000b00313dedac444mr1551101wrc.24.1687628520556; Sat, 24 Jun 2023 10:42:00 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: kvm@vger.kernel.org, Marcel Apfelbaum , Peter Maydell , Roman Bolshakov , qemu-arm@nongnu.org, Richard Henderson , Alexander Graf , xen-devel@lists.xenproject.org, Sunil Muthuswamy , Anthony Perard , Stefano Stabellini , Yanan Wang , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Paul Durrant , Reinoud Zandijk , Eduardo Habkost , Cameron Esfahani , Paolo Bonzini Subject: [PATCH v3 05/16] accel: Destroy HAX vCPU threads once done Date: Sat, 24 Jun 2023 19:41:10 +0200 Message-Id: <20230624174121.11508-6-philmd@linaro.org> X-Mailer: git-send-email 2.38.1 In-Reply-To: <20230624174121.11508-1-philmd@linaro.org> References: <20230624174121.11508-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit When the vCPU thread finished its processing, destroy it and signal its destruction to generic vCPU management layer. Add a sanity check for the vCPU accelerator context. Signed-off-by: Philippe Mathieu-Daudé Reviewed-by: Richard Henderson --- target/i386/hax/hax-accel-ops.c | 3 +++ target/i386/hax/hax-all.c | 1 + 2 files changed, 4 insertions(+) diff --git a/target/i386/hax/hax-accel-ops.c b/target/i386/hax/hax-accel-ops.c index 18114fe34d..0157a628a3 100644 --- a/target/i386/hax/hax-accel-ops.c +++ b/target/i386/hax/hax-accel-ops.c @@ -53,6 +53,8 @@ static void *hax_cpu_thread_fn(void *arg) qemu_wait_io_event(cpu); } while (!cpu->unplug || cpu_can_run(cpu)); + hax_vcpu_destroy(cpu); + cpu_thread_signal_destroyed(cpu); rcu_unregister_thread(); return NULL; } @@ -69,6 +71,7 @@ static void hax_start_vcpu_thread(CPUState *cpu) cpu->cpu_index); qemu_thread_create(cpu->thread, thread_name, hax_cpu_thread_fn, cpu, QEMU_THREAD_JOINABLE); + assert(cpu->hax_vcpu); #ifdef _WIN32 cpu->hThread = qemu_thread_get_handle(cpu->thread); #endif diff --git a/target/i386/hax/hax-all.c b/target/i386/hax/hax-all.c index a2321a1eff..38a4323a3c 100644 --- a/target/i386/hax/hax-all.c +++ b/target/i386/hax/hax-all.c @@ -209,6 +209,7 @@ int hax_vcpu_destroy(CPUState *cpu) CloseHandle(cpu->hThread); #endif g_free(vcpu); + cpu->hax_vcpu = NULL; return 0; } -- 2.38.1 From xen-devel-bounces@lists.xenproject.org Sat Jun 24 17:42:09 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sat, 24 Jun 2023 17:42:09 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554655.865987 (Exim 4.92) (envelope-from ) id 1qD7Gz-0002RX-PK; Sat, 24 Jun 2023 17:42:09 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554655.865987; Sat, 24 Jun 2023 17:42:09 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qD7Gz-0002RQ-MC; Sat, 24 Jun 2023 17:42:09 +0000 Received: by outflank-mailman (input) for mailman id 554655; Sat, 24 Jun 2023 17:42:09 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qD7Gy-0008Gp-Uf for xen-devel@lists.xenproject.org; Sat, 24 Jun 2023 17:42:08 +0000 Received: from mail-wm1-x329.google.com (mail-wm1-x329.google.com [2a00:1450:4864:20::329]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 70d16f79-12b6-11ee-b237-6b7b168915f2; Sat, 24 Jun 2023 19:42:08 +0200 (CEST) Received: by mail-wm1-x329.google.com with SMTP id 5b1f17b1804b1-3f9ede60140so17662695e9.0 for ; Sat, 24 Jun 2023 10:42:08 -0700 (PDT) Received: from m1x-phil.lan ([176.187.217.150]) by smtp.gmail.com with ESMTPSA id p4-20020a7bcc84000000b003f9c8c6bf53sm2714753wma.13.2023.06.24.10.42.05 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Sat, 24 Jun 2023 10:42:07 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 70d16f79-12b6-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1687628528; x=1690220528; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=UX7A/4NpufAJKKWp2HGkO2gs63RM9WYyIFTo3iDzXaM=; b=SMLuGhbM3MaDMV9r6KR7RvXRIKqv+XtIKbKhRTt6D/Vm3gPRwn5blrByxm/Fk9daGq Eb4uDULNXVOFNfUHg3fRZgZ5xRjJUoWuQu17MVMm3n1dxkZmf9mr8seaW6sh6rqV8TYt 6SkaklT3irVTc01XNANs6JtTVfJ/FHNjbknlsytNfopuGsAcWX0i+Bz99JeARomRP7wT 3sX7v4bNKtTFAn7JegwwEUztQwWXg0bS+L/YlefFCRCGukVOw//BD43mbeY6bdWXzIJE 5DKMSwa60c9c1kSx6wlSfXeF1ud/A4ZzVtV5mMPh9L+rICPmtFtVUo1zCaI4F1bzZEU8 8N6g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687628528; x=1690220528; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=UX7A/4NpufAJKKWp2HGkO2gs63RM9WYyIFTo3iDzXaM=; b=IjkX3QH/HLHgLEuDwrz5XOjUYSWm1lZ+r0BV2gPXOcQZfZGeK9Vw8VyTwu/qayDztr 5BQV3fBa9H235dtEUOkTQIOu6I4jxsLQqSgLB84v+b2uFAlPOS5C4dgvjlniNgAzhbTM WCgx+f8rMTi7cBZfsJCF/6Hdcmxp6b0V7sHfByf3FHUsym2YD7g/AwKLT4UyTVZ6TtQ0 wymBd8xW6l3UFeQYjvssr/59zEzKYgPR1iqOXwXu8B2Ct9DBVUDDRD232P55w2GqKLEG 2fzgknBHXb2OBfzQVXh8jcNzdfy/cUL6D9THcK8/OyX8d2X8f6rToZlS9Za8Yt7CX5MI 9jkQ== X-Gm-Message-State: AC+VfDwpHBgS3znCoN06CAyAO+d+yHMqflAtq6srA+JvaGBpv4+q+iyB sxelNe3udeTW5n/X3MAYmeETqw== X-Google-Smtp-Source: ACHHUZ7yOaurvWT1v2FwBkdZ9j/78UpmqCV6GWSwnA9KFjQtIRVj6Tbvs3g7WLhoyLu/xsqSjabGsQ== X-Received: by 2002:a7b:cd97:0:b0:3f9:a6f3:f23d with SMTP id y23-20020a7bcd97000000b003f9a6f3f23dmr13083870wmj.13.1687628527874; Sat, 24 Jun 2023 10:42:07 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: kvm@vger.kernel.org, Marcel Apfelbaum , Peter Maydell , Roman Bolshakov , qemu-arm@nongnu.org, Richard Henderson , Alexander Graf , xen-devel@lists.xenproject.org, Sunil Muthuswamy , Anthony Perard , Stefano Stabellini , Yanan Wang , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Paul Durrant , Reinoud Zandijk , Eduardo Habkost , Cameron Esfahani , Paolo Bonzini Subject: [PATCH v3 06/16] accel: Rename 'hax_vcpu' as 'accel' in CPUState Date: Sat, 24 Jun 2023 19:41:11 +0200 Message-Id: <20230624174121.11508-7-philmd@linaro.org> X-Mailer: git-send-email 2.38.1 In-Reply-To: <20230624174121.11508-1-philmd@linaro.org> References: <20230624174121.11508-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit All accelerators will share a single opaque context in CPUState. Start by renaming 'hax_vcpu' as 'accel'. Reviewed-by: Richard Henderson Signed-off-by: Philippe Mathieu-Daudé --- include/hw/core/cpu.h | 2 +- target/i386/hax/hax-accel-ops.c | 2 +- target/i386/hax/hax-all.c | 18 +++++++++--------- target/i386/nvmm/nvmm-all.c | 6 +++--- target/i386/whpx/whpx-all.c | 6 +++--- 5 files changed, 17 insertions(+), 17 deletions(-) diff --git a/include/hw/core/cpu.h b/include/hw/core/cpu.h index 4871ad85f0..84b5a866e7 100644 --- a/include/hw/core/cpu.h +++ b/include/hw/core/cpu.h @@ -441,7 +441,7 @@ struct CPUState { /* Used for user-only emulation of prctl(PR_SET_UNALIGN). */ bool prctl_unalign_sigbus; - struct hax_vcpu_state *hax_vcpu; + struct hax_vcpu_state *accel; struct hvf_vcpu_state *hvf; diff --git a/target/i386/hax/hax-accel-ops.c b/target/i386/hax/hax-accel-ops.c index 0157a628a3..a8512efcd5 100644 --- a/target/i386/hax/hax-accel-ops.c +++ b/target/i386/hax/hax-accel-ops.c @@ -71,7 +71,7 @@ static void hax_start_vcpu_thread(CPUState *cpu) cpu->cpu_index); qemu_thread_create(cpu->thread, thread_name, hax_cpu_thread_fn, cpu, QEMU_THREAD_JOINABLE); - assert(cpu->hax_vcpu); + assert(cpu->accel); #ifdef _WIN32 cpu->hThread = qemu_thread_get_handle(cpu->thread); #endif diff --git a/target/i386/hax/hax-all.c b/target/i386/hax/hax-all.c index 38a4323a3c..3865ff9419 100644 --- a/target/i386/hax/hax-all.c +++ b/target/i386/hax/hax-all.c @@ -62,7 +62,7 @@ int valid_hax_tunnel_size(uint16_t size) hax_fd hax_vcpu_get_fd(CPUArchState *env) { - struct hax_vcpu_state *vcpu = env_cpu(env)->hax_vcpu; + struct hax_vcpu_state *vcpu = env_cpu(env)->accel; if (!vcpu) { return HAX_INVALID_FD; } @@ -188,7 +188,7 @@ int hax_vcpu_create(int id) int hax_vcpu_destroy(CPUState *cpu) { - struct hax_vcpu_state *vcpu = cpu->hax_vcpu; + struct hax_vcpu_state *vcpu = cpu->accel; if (!hax_global.vm) { fprintf(stderr, "vcpu %x destroy failed, vm is null\n", vcpu->vcpu_id); @@ -209,7 +209,7 @@ int hax_vcpu_destroy(CPUState *cpu) CloseHandle(cpu->hThread); #endif g_free(vcpu); - cpu->hax_vcpu = NULL; + cpu->accel = NULL; return 0; } @@ -223,7 +223,7 @@ int hax_init_vcpu(CPUState *cpu) exit(-1); } - cpu->hax_vcpu = hax_global.vm->vcpus[cpu->cpu_index]; + cpu->accel = hax_global.vm->vcpus[cpu->cpu_index]; cpu->vcpu_dirty = true; qemu_register_reset(hax_reset_vcpu_state, cpu->env_ptr); @@ -415,7 +415,7 @@ static int hax_handle_io(CPUArchState *env, uint32_t df, uint16_t port, static int hax_vcpu_interrupt(CPUArchState *env) { CPUState *cpu = env_cpu(env); - struct hax_vcpu_state *vcpu = cpu->hax_vcpu; + struct hax_vcpu_state *vcpu = cpu->accel; struct hax_tunnel *ht = vcpu->tunnel; /* @@ -447,7 +447,7 @@ static int hax_vcpu_interrupt(CPUArchState *env) void hax_raise_event(CPUState *cpu) { - struct hax_vcpu_state *vcpu = cpu->hax_vcpu; + struct hax_vcpu_state *vcpu = cpu->accel; if (!vcpu) { return; @@ -468,7 +468,7 @@ static int hax_vcpu_hax_exec(CPUArchState *env) int ret = 0; CPUState *cpu = env_cpu(env); X86CPU *x86_cpu = X86_CPU(cpu); - struct hax_vcpu_state *vcpu = cpu->hax_vcpu; + struct hax_vcpu_state *vcpu = cpu->accel; struct hax_tunnel *ht = vcpu->tunnel; if (!hax_enabled()) { @@ -1114,8 +1114,8 @@ void hax_reset_vcpu_state(void *opaque) { CPUState *cpu; for (cpu = first_cpu; cpu != NULL; cpu = CPU_NEXT(cpu)) { - cpu->hax_vcpu->tunnel->user_event_pending = 0; - cpu->hax_vcpu->tunnel->ready_for_interrupt_injection = 0; + cpu->accel->tunnel->user_event_pending = 0; + cpu->accel->tunnel->ready_for_interrupt_injection = 0; } } diff --git a/target/i386/nvmm/nvmm-all.c b/target/i386/nvmm/nvmm-all.c index b75738ee9c..cf4f0af24b 100644 --- a/target/i386/nvmm/nvmm-all.c +++ b/target/i386/nvmm/nvmm-all.c @@ -52,7 +52,7 @@ static struct qemu_machine qemu_mach; static struct qemu_vcpu * get_qemu_vcpu(CPUState *cpu) { - return (struct qemu_vcpu *)cpu->hax_vcpu; + return (struct qemu_vcpu *)cpu->accel; } static struct nvmm_machine * @@ -995,7 +995,7 @@ nvmm_init_vcpu(CPUState *cpu) } cpu->vcpu_dirty = true; - cpu->hax_vcpu = (struct hax_vcpu_state *)qcpu; + cpu->accel = (struct hax_vcpu_state *)qcpu; return 0; } @@ -1030,7 +1030,7 @@ nvmm_destroy_vcpu(CPUState *cpu) struct qemu_vcpu *qcpu = get_qemu_vcpu(cpu); nvmm_vcpu_destroy(mach, &qcpu->vcpu); - g_free(cpu->hax_vcpu); + g_free(cpu->accel); } /* -------------------------------------------------------------------------- */ diff --git a/target/i386/whpx/whpx-all.c b/target/i386/whpx/whpx-all.c index 52af81683c..d1ad6f156a 100644 --- a/target/i386/whpx/whpx-all.c +++ b/target/i386/whpx/whpx-all.c @@ -262,7 +262,7 @@ static bool whpx_has_xsave(void) static struct whpx_vcpu *get_whpx_vcpu(CPUState *cpu) { - return (struct whpx_vcpu *)cpu->hax_vcpu; + return (struct whpx_vcpu *)cpu->accel; } static WHV_X64_SEGMENT_REGISTER whpx_seg_q2h(const SegmentCache *qs, int v86, @@ -2258,7 +2258,7 @@ int whpx_init_vcpu(CPUState *cpu) vcpu->interruptable = true; cpu->vcpu_dirty = true; - cpu->hax_vcpu = (struct hax_vcpu_state *)vcpu; + cpu->accel = (struct hax_vcpu_state *)vcpu; max_vcpu_index = max(max_vcpu_index, cpu->cpu_index); qemu_add_vm_change_state_handler(whpx_cpu_update_state, cpu->env_ptr); @@ -2300,7 +2300,7 @@ void whpx_destroy_vcpu(CPUState *cpu) whp_dispatch.WHvDeleteVirtualProcessor(whpx->partition, cpu->cpu_index); whp_dispatch.WHvEmulatorDestroyEmulator(vcpu->emulator); - g_free(cpu->hax_vcpu); + g_free(cpu->accel); return; } -- 2.38.1 From xen-devel-bounces@lists.xenproject.org Sat Jun 24 17:42:21 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sat, 24 Jun 2023 17:42:21 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554660.865997 (Exim 4.92) (envelope-from ) id 1qD7HB-00035y-1D; Sat, 24 Jun 2023 17:42:21 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554660.865997; Sat, 24 Jun 2023 17:42:21 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qD7HA-00035r-UJ; Sat, 24 Jun 2023 17:42:20 +0000 Received: by outflank-mailman (input) for mailman id 554660; Sat, 24 Jun 2023 17:42:19 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qD7H9-0000wd-74 for xen-devel@lists.xenproject.org; Sat, 24 Jun 2023 17:42:19 +0000 Received: from mail-lf1-x130.google.com (mail-lf1-x130.google.com [2a00:1450:4864:20::130]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 76452a12-12b6-11ee-8611-37d641c3527e; Sat, 24 Jun 2023 19:42:17 +0200 (CEST) Received: by mail-lf1-x130.google.com with SMTP id 2adb3069b0e04-4f871c93a5fso2316481e87.2 for ; Sat, 24 Jun 2023 10:42:17 -0700 (PDT) Received: from m1x-phil.lan ([176.187.217.150]) by smtp.gmail.com with ESMTPSA id a25-20020a5d4579000000b003048477729asm2596667wrc.81.2023.06.24.10.42.12 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Sat, 24 Jun 2023 10:42:15 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 76452a12-12b6-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1687628537; x=1690220537; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=jesYnGv71+FK9NHqSWoHnqh4nOCgnV66g281tGNK4XE=; b=PSP13nJmGuGfUIHZYTQrZ7FoGcAETjiVze80Ga5o8kpBQN7EVd6/ZzsWnI0bc5+cf2 7P4AegcanBm6I0AqxSivnZhhIHWzc1EVaUqUBxf50e78O1SpYR4am8GUmpXnKT00dLaD YtjYLG64eb2fi0Z3rW8DTkUaUQ1+9LB1hJizePMmfW38t13xGzSESQ8rr931uMREPgJH P/L9BhrWugNQhyCgnRt4wqGOi+9bLjVPyPkRVECeAFCL4odpYkKQuWMMJuNDEEDTmIji 09xQDF2Yw87T4a6e+eKg+ZG6yJNlTJfQ65Pq4Dryt28VK/9aRDBbVC4TNa/AjZOKojLp qRvw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687628537; x=1690220537; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=jesYnGv71+FK9NHqSWoHnqh4nOCgnV66g281tGNK4XE=; b=a3kNM2sJL1XGTQmbpz0kdHg9/I5KRLQLhHF9w6trl4i5GrEp6MIgR2b1En6JkSMgpv AM2ep2BeJi1APqDP2wCoX/yBXX2aaUVosdU+Gg8zwmtjx1HrSVsb9zXnjc9taJ+Qpirz 6LhOwWe5N5vOAStfqZ3gb2Svt2Pw8Fv/CQkhQFTMcwQvMu2AHkX4fS7UnAOJKbNzguhM qHtJZH+Sk2ZomOLjVXZGDMuu/rQ/Sl+qSjfrLXdRgNBWH5hjEMNbqyh5OSobytF/I62o 2ItSbKlRZG/PLAYcgzzLN11Hpu+HrrXQ4qRrQGuTMvYmDLkkQoXXwLZqjmsAA3mdWvYc Y/5w== X-Gm-Message-State: AC+VfDxQP+5s2A92iQJIxNCWACgky2dMpqvqFAhd5xH/hpj9TXhVDiI7 a2nYDfSYZ9LDIujXBB5+lY08CA== X-Google-Smtp-Source: ACHHUZ5HouryARGSWaT/lKrQvSPsvbth8CsYlYA04KZeOzupF4wiRSUljoLeinX5wljmzo5CwWGLfg== X-Received: by 2002:a05:6512:31c7:b0:4f9:5cb9:5be5 with SMTP id j7-20020a05651231c700b004f95cb95be5mr7691618lfe.65.1687628536208; Sat, 24 Jun 2023 10:42:16 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: kvm@vger.kernel.org, Marcel Apfelbaum , Peter Maydell , Roman Bolshakov , qemu-arm@nongnu.org, Richard Henderson , Alexander Graf , xen-devel@lists.xenproject.org, Sunil Muthuswamy , Anthony Perard , Stefano Stabellini , Yanan Wang , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Paul Durrant , Reinoud Zandijk , Eduardo Habkost , Cameron Esfahani , Paolo Bonzini Subject: [PATCH v3 07/16] accel: Rename HAX 'struct hax_vcpu_state' -> AccelCPUState Date: Sat, 24 Jun 2023 19:41:12 +0200 Message-Id: <20230624174121.11508-8-philmd@linaro.org> X-Mailer: git-send-email 2.38.1 In-Reply-To: <20230624174121.11508-1-philmd@linaro.org> References: <20230624174121.11508-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit We want all accelerators to share the same opaque pointer in CPUState. Start with the HAX context, renaming its forward declarated structure 'hax_vcpu_state' as 'AccelCPUState'. Document the CPUState field. Directly use the typedef. Remove the amusing but now unnecessary casts in NVMM / WHPX. Signed-off-by: Philippe Mathieu-Daudé --- include/hw/core/cpu.h | 5 ++--- include/qemu/typedefs.h | 1 + target/i386/hax/hax-i386.h | 9 +++++---- target/i386/hax/hax-all.c | 16 ++++++++-------- target/i386/hax/hax-posix.c | 4 ++-- target/i386/hax/hax-windows.c | 4 ++-- target/i386/nvmm/nvmm-all.c | 2 +- target/i386/whpx/whpx-all.c | 2 +- 8 files changed, 22 insertions(+), 21 deletions(-) diff --git a/include/hw/core/cpu.h b/include/hw/core/cpu.h index 84b5a866e7..a7fae8571e 100644 --- a/include/hw/core/cpu.h +++ b/include/hw/core/cpu.h @@ -240,7 +240,6 @@ typedef struct SavedIOTLB { struct KVMState; struct kvm_run; -struct hax_vcpu_state; struct hvf_vcpu_state; /* work queue */ @@ -308,6 +307,7 @@ struct qemu_work_item; * @next_cpu: Next CPU sharing TB cache. * @opaque: User data. * @mem_io_pc: Host Program Counter at which the memory was accessed. + * @accel: Pointer to accelerator specific state. * @kvm_fd: vCPU file descriptor for KVM. * @work_mutex: Lock to prevent multiple access to @work_list. * @work_list: List of pending asynchronous work. @@ -422,6 +422,7 @@ struct CPUState { uint32_t can_do_io; int32_t exception_index; + AccelCPUState *accel; /* shared by kvm, hax and hvf */ bool vcpu_dirty; @@ -441,8 +442,6 @@ struct CPUState { /* Used for user-only emulation of prctl(PR_SET_UNALIGN). */ bool prctl_unalign_sigbus; - struct hax_vcpu_state *accel; - struct hvf_vcpu_state *hvf; /* track IOMMUs whose translations we've cached in the TCG TLB */ diff --git a/include/qemu/typedefs.h b/include/qemu/typedefs.h index 8c1840bfc1..834b0e47a0 100644 --- a/include/qemu/typedefs.h +++ b/include/qemu/typedefs.h @@ -21,6 +21,7 @@ * Incomplete struct types * Please keep this list in case-insensitive alphabetical order. */ +typedef struct AccelCPUState AccelCPUState; typedef struct AccelState AccelState; typedef struct AdapterInfo AdapterInfo; typedef struct AddressSpace AddressSpace; diff --git a/target/i386/hax/hax-i386.h b/target/i386/hax/hax-i386.h index 409ebdb4af..4372ee596d 100644 --- a/target/i386/hax/hax-i386.h +++ b/target/i386/hax/hax-i386.h @@ -25,7 +25,8 @@ typedef HANDLE hax_fd; #endif extern struct hax_state hax_global; -struct hax_vcpu_state { + +struct AccelCPUState { hax_fd fd; int vcpu_id; struct hax_tunnel *tunnel; @@ -46,7 +47,7 @@ struct hax_vm { hax_fd fd; int id; int numvcpus; - struct hax_vcpu_state **vcpus; + AccelCPUState **vcpus; }; /* Functions exported to host specific mode */ @@ -57,7 +58,7 @@ int valid_hax_tunnel_size(uint16_t size); int hax_mod_version(struct hax_state *hax, struct hax_module_version *version); int hax_inject_interrupt(CPUArchState *env, int vector); struct hax_vm *hax_vm_create(struct hax_state *hax, int max_cpus); -int hax_vcpu_run(struct hax_vcpu_state *vcpu); +int hax_vcpu_run(AccelCPUState *vcpu); int hax_vcpu_create(int id); void hax_kick_vcpu_thread(CPUState *cpu); @@ -76,7 +77,7 @@ int hax_host_create_vm(struct hax_state *hax, int *vm_id); hax_fd hax_host_open_vm(struct hax_state *hax, int vm_id); int hax_host_create_vcpu(hax_fd vm_fd, int vcpuid); hax_fd hax_host_open_vcpu(int vmid, int vcpuid); -int hax_host_setup_vcpu_channel(struct hax_vcpu_state *vcpu); +int hax_host_setup_vcpu_channel(AccelCPUState *vcpu); hax_fd hax_mod_open(void); void hax_memory_init(void); diff --git a/target/i386/hax/hax-all.c b/target/i386/hax/hax-all.c index 3865ff9419..9d9011cc38 100644 --- a/target/i386/hax/hax-all.c +++ b/target/i386/hax/hax-all.c @@ -62,7 +62,7 @@ int valid_hax_tunnel_size(uint16_t size) hax_fd hax_vcpu_get_fd(CPUArchState *env) { - struct hax_vcpu_state *vcpu = env_cpu(env)->accel; + AccelCPUState *vcpu = env_cpu(env)->accel; if (!vcpu) { return HAX_INVALID_FD; } @@ -136,7 +136,7 @@ static int hax_version_support(struct hax_state *hax) int hax_vcpu_create(int id) { - struct hax_vcpu_state *vcpu = NULL; + AccelCPUState *vcpu = NULL; int ret; if (!hax_global.vm) { @@ -149,7 +149,7 @@ int hax_vcpu_create(int id) return 0; } - vcpu = g_new0(struct hax_vcpu_state, 1); + vcpu = g_new0(AccelCPUState, 1); ret = hax_host_create_vcpu(hax_global.vm->fd, id); if (ret) { @@ -188,7 +188,7 @@ int hax_vcpu_create(int id) int hax_vcpu_destroy(CPUState *cpu) { - struct hax_vcpu_state *vcpu = cpu->accel; + AccelCPUState *vcpu = cpu->accel; if (!hax_global.vm) { fprintf(stderr, "vcpu %x destroy failed, vm is null\n", vcpu->vcpu_id); @@ -263,7 +263,7 @@ struct hax_vm *hax_vm_create(struct hax_state *hax, int max_cpus) } vm->numvcpus = max_cpus; - vm->vcpus = g_new0(struct hax_vcpu_state *, vm->numvcpus); + vm->vcpus = g_new0(AccelCPUState *, vm->numvcpus); for (i = 0; i < vm->numvcpus; i++) { vm->vcpus[i] = NULL; } @@ -415,7 +415,7 @@ static int hax_handle_io(CPUArchState *env, uint32_t df, uint16_t port, static int hax_vcpu_interrupt(CPUArchState *env) { CPUState *cpu = env_cpu(env); - struct hax_vcpu_state *vcpu = cpu->accel; + AccelCPUState *vcpu = cpu->accel; struct hax_tunnel *ht = vcpu->tunnel; /* @@ -447,7 +447,7 @@ static int hax_vcpu_interrupt(CPUArchState *env) void hax_raise_event(CPUState *cpu) { - struct hax_vcpu_state *vcpu = cpu->accel; + AccelCPUState *vcpu = cpu->accel; if (!vcpu) { return; @@ -468,7 +468,7 @@ static int hax_vcpu_hax_exec(CPUArchState *env) int ret = 0; CPUState *cpu = env_cpu(env); X86CPU *x86_cpu = X86_CPU(cpu); - struct hax_vcpu_state *vcpu = cpu->accel; + AccelCPUState *vcpu = cpu->accel; struct hax_tunnel *ht = vcpu->tunnel; if (!hax_enabled()) { diff --git a/target/i386/hax/hax-posix.c b/target/i386/hax/hax-posix.c index ac1a51096e..a057a5bd94 100644 --- a/target/i386/hax/hax-posix.c +++ b/target/i386/hax/hax-posix.c @@ -205,7 +205,7 @@ hax_fd hax_host_open_vcpu(int vmid, int vcpuid) return fd; } -int hax_host_setup_vcpu_channel(struct hax_vcpu_state *vcpu) +int hax_host_setup_vcpu_channel(AccelCPUState *vcpu) { int ret; struct hax_tunnel_info info; @@ -227,7 +227,7 @@ int hax_host_setup_vcpu_channel(struct hax_vcpu_state *vcpu) return 0; } -int hax_vcpu_run(struct hax_vcpu_state *vcpu) +int hax_vcpu_run(AccelCPUState *vcpu) { return ioctl(vcpu->fd, HAX_VCPU_IOCTL_RUN, NULL); } diff --git a/target/i386/hax/hax-windows.c b/target/i386/hax/hax-windows.c index 59afa213a6..bf4b0ad941 100644 --- a/target/i386/hax/hax-windows.c +++ b/target/i386/hax/hax-windows.c @@ -301,7 +301,7 @@ hax_fd hax_host_open_vcpu(int vmid, int vcpuid) return hDeviceVCPU; } -int hax_host_setup_vcpu_channel(struct hax_vcpu_state *vcpu) +int hax_host_setup_vcpu_channel(AccelCPUState *vcpu) { hax_fd hDeviceVCPU = vcpu->fd; int ret; @@ -327,7 +327,7 @@ int hax_host_setup_vcpu_channel(struct hax_vcpu_state *vcpu) return 0; } -int hax_vcpu_run(struct hax_vcpu_state *vcpu) +int hax_vcpu_run(AccelCPUState *vcpu) { int ret; HANDLE hDeviceVCPU = vcpu->fd; diff --git a/target/i386/nvmm/nvmm-all.c b/target/i386/nvmm/nvmm-all.c index cf4f0af24b..b3c3adc59a 100644 --- a/target/i386/nvmm/nvmm-all.c +++ b/target/i386/nvmm/nvmm-all.c @@ -995,7 +995,7 @@ nvmm_init_vcpu(CPUState *cpu) } cpu->vcpu_dirty = true; - cpu->accel = (struct hax_vcpu_state *)qcpu; + cpu->accel = qcpu; return 0; } diff --git a/target/i386/whpx/whpx-all.c b/target/i386/whpx/whpx-all.c index d1ad6f156a..410b34d8ec 100644 --- a/target/i386/whpx/whpx-all.c +++ b/target/i386/whpx/whpx-all.c @@ -2258,7 +2258,7 @@ int whpx_init_vcpu(CPUState *cpu) vcpu->interruptable = true; cpu->vcpu_dirty = true; - cpu->accel = (struct hax_vcpu_state *)vcpu; + cpu->accel = vcpu; max_vcpu_index = max(max_vcpu_index, cpu->cpu_index); qemu_add_vm_change_state_handler(whpx_cpu_update_state, cpu->env_ptr); -- 2.38.1 From xen-devel-bounces@lists.xenproject.org Sat Jun 24 17:49:39 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sat, 24 Jun 2023 17:49:39 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554671.866023 (Exim 4.92) (envelope-from ) id 1qD7O2-0004d0-Gf; Sat, 24 Jun 2023 17:49:26 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554671.866023; Sat, 24 Jun 2023 17:49:26 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qD7O2-0004bP-BX; Sat, 24 Jun 2023 17:49:26 +0000 Received: by outflank-mailman (input) for mailman id 554671; Sat, 24 Jun 2023 17:49:24 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qD7Hy-0008Gp-F5 for xen-devel@lists.xenproject.org; Sat, 24 Jun 2023 17:43:10 +0000 Received: from mail-wm1-x32f.google.com (mail-wm1-x32f.google.com [2a00:1450:4864:20::32f]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 95773427-12b6-11ee-b237-6b7b168915f2; Sat, 24 Jun 2023 19:43:09 +0200 (CEST) Received: by mail-wm1-x32f.google.com with SMTP id 5b1f17b1804b1-3f918922954so17425315e9.2 for ; Sat, 24 Jun 2023 10:43:09 -0700 (PDT) Received: from m1x-phil.lan ([176.187.217.150]) by smtp.gmail.com with ESMTPSA id k21-20020a05600c0b5500b003fa88f4c0f5sm339874wmr.21.2023.06.24.10.43.06 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Sat, 24 Jun 2023 10:43:09 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 95773427-12b6-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1687628589; x=1690220589; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=AAPkMuMtNtRM9NXu99LXesVy8JoKNyay4INBIgU8fUM=; b=pDVczrLfie0P29Z7uCw5tOy4PEx87NBQoCGG3m0psbZUusSwEfLQ61OZL6TJ2kB1dJ tATN6G8yFgnC5O7/RtL7/IHp8luOuI9a0CAQzgEMx9UDPTQXlvR8sbrOYZG8bJrmUNQg /3FBzLpY41RnRaYP2NB0XTbSnaGO4aPWfsRV67qdMMOJR8x1sXQNb8tfR8/K7nF4Lssa 0KusLp2BM/Iws8Bzl7b9wq8cOsydsbBlEYgdjHb92A4e1Ui8CCXvSdCXeW32PC8Pi/zU qYoeGCSAHTqFSWULi9I7GFgtd8QD3Ykjh8zHuYSguFeSZJas3CSglD3lc6I5XkKu7nti YLBw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687628589; x=1690220589; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=AAPkMuMtNtRM9NXu99LXesVy8JoKNyay4INBIgU8fUM=; b=dbaJu7Wd53h+8tWFVQ0mz5s2jmivSJOBbtO5WFc+vA8E1uKpDKn3EG1b/caNgXptaL YCKzwaOXKVNAfdq0oUMedpxUEZ1bICIv2SKqrVdIk+r8u8JgTJiDDfz9womu5L7u3su9 z9lDAnKanf1oEh5dmdInG7csyYOSTpGZQ0pL6A6ljv+DSj6s5IIAeU5Lrsaex+Ej05lB LV9LOxtOqWrXVfdonAFEIkHntIkXW9W9Jy4owrVPurR+iMkjENFfw1Gcj/lOHVO6BLJ+ p7y5hT1gWtsGNd+kbpRfY6nOo4+cEui3jmcbYVuAon6LzdnuScFyYLdVsPbXNlDbg76s Er6A== X-Gm-Message-State: AC+VfDynknpFOR77GRdj4H9/8bQOPLV8FYXS/NBNL8aPTgRChkAnHMR3 vngWYggHhlkOsV96u0Diaz/N8w== X-Google-Smtp-Source: ACHHUZ4238DSm93lZDXfUQaXb230UfiIqG/QwG8MlbO96c7eSEYZDPLm8Y7CfJuFqwRBJ3ZTi98IIA== X-Received: by 2002:a05:600c:2158:b0:3f9:aaa:37e7 with SMTP id v24-20020a05600c215800b003f90aaa37e7mr13332459wml.0.1687628589383; Sat, 24 Jun 2023 10:43:09 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: kvm@vger.kernel.org, Marcel Apfelbaum , Peter Maydell , Roman Bolshakov , qemu-arm@nongnu.org, Richard Henderson , Alexander Graf , xen-devel@lists.xenproject.org, Sunil Muthuswamy , Anthony Perard , Stefano Stabellini , Yanan Wang , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Paul Durrant , Reinoud Zandijk , Eduardo Habkost , Cameron Esfahani , Paolo Bonzini Subject: [PATCH v3 14/16] accel: Inline WHPX get_whpx_vcpu() Date: Sat, 24 Jun 2023 19:41:19 +0200 Message-Id: <20230624174121.11508-15-philmd@linaro.org> X-Mailer: git-send-email 2.38.1 In-Reply-To: <20230624174121.11508-1-philmd@linaro.org> References: <20230624174121.11508-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit No need for this helper to access the CPUState::accel field. Reviewed-by: Richard Henderson Signed-off-by: Philippe Mathieu-Daudé --- target/i386/whpx/whpx-all.c | 29 ++++++++++------------------- 1 file changed, 10 insertions(+), 19 deletions(-) diff --git a/target/i386/whpx/whpx-all.c b/target/i386/whpx/whpx-all.c index 4ddd2d076a..0903327ac5 100644 --- a/target/i386/whpx/whpx-all.c +++ b/target/i386/whpx/whpx-all.c @@ -256,15 +256,6 @@ static bool whpx_has_xsave(void) return whpx_xsave_cap.XsaveSupport; } -/* - * VP support - */ - -static AccelCPUState *get_whpx_vcpu(CPUState *cpu) -{ - return (AccelCPUState *)cpu->accel; -} - static WHV_X64_SEGMENT_REGISTER whpx_seg_q2h(const SegmentCache *qs, int v86, int r86) { @@ -390,7 +381,7 @@ static uint64_t whpx_cr8_to_apic_tpr(uint64_t cr8) static void whpx_set_registers(CPUState *cpu, int level) { struct whpx_state *whpx = &whpx_global; - AccelCPUState *vcpu = get_whpx_vcpu(cpu); + AccelCPUState *vcpu = cpu->accel; CPUX86State *env = cpu->env_ptr; X86CPU *x86_cpu = X86_CPU(cpu); struct whpx_register_set vcxt; @@ -609,7 +600,7 @@ static void whpx_get_xcrs(CPUState *cpu) static void whpx_get_registers(CPUState *cpu) { struct whpx_state *whpx = &whpx_global; - AccelCPUState *vcpu = get_whpx_vcpu(cpu); + AccelCPUState *vcpu = cpu->accel; CPUX86State *env = cpu->env_ptr; X86CPU *x86_cpu = X86_CPU(cpu); struct whpx_register_set vcxt; @@ -892,7 +883,7 @@ static const WHV_EMULATOR_CALLBACKS whpx_emu_callbacks = { static int whpx_handle_mmio(CPUState *cpu, WHV_MEMORY_ACCESS_CONTEXT *ctx) { HRESULT hr; - AccelCPUState *vcpu = get_whpx_vcpu(cpu); + AccelCPUState *vcpu = cpu->accel; WHV_EMULATOR_STATUS emu_status; hr = whp_dispatch.WHvEmulatorTryMmioEmulation( @@ -917,7 +908,7 @@ static int whpx_handle_portio(CPUState *cpu, WHV_X64_IO_PORT_ACCESS_CONTEXT *ctx) { HRESULT hr; - AccelCPUState *vcpu = get_whpx_vcpu(cpu); + AccelCPUState *vcpu = cpu->accel; WHV_EMULATOR_STATUS emu_status; hr = whp_dispatch.WHvEmulatorTryIoEmulation( @@ -1417,7 +1408,7 @@ static vaddr whpx_vcpu_get_pc(CPUState *cpu, bool exit_context_valid) * of QEMU, nor this port by calling WHvSetVirtualProcessorRegisters(). * This is the most common case. */ - AccelCPUState *vcpu = get_whpx_vcpu(cpu); + AccelCPUState *vcpu = cpu->accel; return vcpu->exit_ctx.VpContext.Rip; } else { /* @@ -1468,7 +1459,7 @@ static void whpx_vcpu_pre_run(CPUState *cpu) { HRESULT hr; struct whpx_state *whpx = &whpx_global; - AccelCPUState *vcpu = get_whpx_vcpu(cpu); + AccelCPUState *vcpu = cpu->accel; CPUX86State *env = cpu->env_ptr; X86CPU *x86_cpu = X86_CPU(cpu); int irq; @@ -1590,7 +1581,7 @@ static void whpx_vcpu_pre_run(CPUState *cpu) static void whpx_vcpu_post_run(CPUState *cpu) { - AccelCPUState *vcpu = get_whpx_vcpu(cpu); + AccelCPUState *vcpu = cpu->accel; CPUX86State *env = cpu->env_ptr; X86CPU *x86_cpu = X86_CPU(cpu); @@ -1617,7 +1608,7 @@ static void whpx_vcpu_process_async_events(CPUState *cpu) { CPUX86State *env = cpu->env_ptr; X86CPU *x86_cpu = X86_CPU(cpu); - AccelCPUState *vcpu = get_whpx_vcpu(cpu); + AccelCPUState *vcpu = cpu->accel; if ((cpu->interrupt_request & CPU_INTERRUPT_INIT) && !(env->hflags & HF_SMM_MASK)) { @@ -1656,7 +1647,7 @@ static int whpx_vcpu_run(CPUState *cpu) { HRESULT hr; struct whpx_state *whpx = &whpx_global; - AccelCPUState *vcpu = get_whpx_vcpu(cpu); + AccelCPUState *vcpu = cpu->accel; struct whpx_breakpoint *stepped_over_bp = NULL; WhpxStepMode exclusive_step_mode = WHPX_STEP_NONE; int ret; @@ -2290,7 +2281,7 @@ int whpx_vcpu_exec(CPUState *cpu) void whpx_destroy_vcpu(CPUState *cpu) { struct whpx_state *whpx = &whpx_global; - AccelCPUState *vcpu = get_whpx_vcpu(cpu); + AccelCPUState *vcpu = cpu->accel; whp_dispatch.WHvDeleteVirtualProcessor(whpx->partition, cpu->cpu_index); whp_dispatch.WHvEmulatorDestroyEmulator(vcpu->emulator); -- 2.38.1 From xen-devel-bounces@lists.xenproject.org Sat Jun 24 17:49:39 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sat, 24 Jun 2023 17:49:39 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554679.866058 (Exim 4.92) (envelope-from ) id 1qD7O5-0005Q8-31; Sat, 24 Jun 2023 17:49:29 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554679.866058; Sat, 24 Jun 2023 17:49:28 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qD7O4-0005MK-PE; Sat, 24 Jun 2023 17:49:28 +0000 Received: by outflank-mailman (input) for mailman id 554679; Sat, 24 Jun 2023 17:49:25 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qD7HV-0000wd-U2 for xen-devel@lists.xenproject.org; Sat, 24 Jun 2023 17:42:41 +0000 Received: from mail-ej1-x631.google.com (mail-ej1-x631.google.com [2a00:1450:4864:20::631]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 83d8d323-12b6-11ee-8611-37d641c3527e; Sat, 24 Jun 2023 19:42:40 +0200 (CEST) Received: by mail-ej1-x631.google.com with SMTP id a640c23a62f3a-98d8c38549dso245260166b.1 for ; Sat, 24 Jun 2023 10:42:40 -0700 (PDT) Received: from m1x-phil.lan ([176.187.217.150]) by smtp.gmail.com with ESMTPSA id t14-20020a170906948e00b009886aaeb722sm1109079ejx.137.2023.06.24.10.42.36 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Sat, 24 Jun 2023 10:42:39 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 83d8d323-12b6-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1687628559; x=1690220559; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=6yG7uyZQhQuE8IRVfm1616U0ICNkMM4p4uOU/m5IL/M=; b=dxyHvFLOjiM5qIEukAG2xMl1n86ITsN2iybJyGEigjKJVlhy51cYS87u2DPnXQ31pC gHAkCCHkCYY16GPiyHKQbc3JgGIWt8KVZKMQ11bQMxI8wmbkhpXTrhSRIis7MvSzXzGA QqIQX7YU8zRGusA6i+PUsjOKGUGI5MyD+m9fQnHJoKgoqtbykvuvRgFuKcOrXiZ5wK82 d4+FrbU+wLhVnWAPZm65aY66PB+II/Npxd/kMcikCaDIXW9+qED/83zvrvxZ25rk5SV9 YL9Y823LfrKqEK09lhq7IjRqf8oiJ0Vir5S+qOmXMiSNmRx8hZhk6ngn/jDc60j75Spz ZjEA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687628560; x=1690220560; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=6yG7uyZQhQuE8IRVfm1616U0ICNkMM4p4uOU/m5IL/M=; b=J6ue8VvoLMdUL/DjY+FIaG7JNhzyC4S6F8yugCR9Dk+6czUyE9Vm4EGciAntlXdEYR eZqNYNRofjx/nr1CRHnxrAlRYDBiCwmf/N6mMYBx9MSFBYSwGga8kJWiSXhJoOp7+Whh XOqbQQn+OoG8W8OyV2p1kp2aW4+a4LizSCwhwIEMqYjqBivxYw/qccMkmYH23CVS9vBB YNFBKYpH/dxlHUTlOjGsR+7wBMGl2FAf5R3oDCZhp9RCpOkYh7mELF+Zw7m6myUsTOAu dv/HlTfAiYDDt3ac6z/3bgSVVXgZuV30MqW6gRXm0pbwb/ovexx02ta1R/LhavXGgzgf FdZA== X-Gm-Message-State: AC+VfDyQt0XB60dfP6ekf4if+KpSa8qlHAHUXS+zZB7oKOG/9pZeVRva 17LMxovgBGNLGgYG5gCINTq1Uw== X-Google-Smtp-Source: ACHHUZ60zeHeS0keOdxvMmlIP6tQPqVFwiu+Q/14meF2x41zpcQ/taPA6Be68P7WOGnSc/Te+Ujdng== X-Received: by 2002:a17:907:360e:b0:96a:4ea0:a1e7 with SMTP id bk14-20020a170907360e00b0096a4ea0a1e7mr23798201ejc.50.1687628559647; Sat, 24 Jun 2023 10:42:39 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: kvm@vger.kernel.org, Marcel Apfelbaum , Peter Maydell , Roman Bolshakov , qemu-arm@nongnu.org, Richard Henderson , Alexander Graf , xen-devel@lists.xenproject.org, Sunil Muthuswamy , Anthony Perard , Stefano Stabellini , Yanan Wang , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Paul Durrant , Reinoud Zandijk , Eduardo Habkost , Cameron Esfahani , Paolo Bonzini Subject: [PATCH v3 10/16] accel: Rename NVMM 'struct qemu_vcpu' -> AccelCPUState Date: Sat, 24 Jun 2023 19:41:15 +0200 Message-Id: <20230624174121.11508-11-philmd@linaro.org> X-Mailer: git-send-email 2.38.1 In-Reply-To: <20230624174121.11508-1-philmd@linaro.org> References: <20230624174121.11508-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit We want all accelerators to share the same opaque pointer in CPUState. Rename NVMM 'qemu_vcpu' as 'AccelCPUState'; directly use the typedef, remove unnecessary casts. Reviewed-by: Richard Henderson Signed-off-by: Philippe Mathieu-Daudé --- target/i386/nvmm/nvmm-all.c | 32 ++++++++++++++++---------------- 1 file changed, 16 insertions(+), 16 deletions(-) diff --git a/target/i386/nvmm/nvmm-all.c b/target/i386/nvmm/nvmm-all.c index 90e9e0a5b2..e5ee4af084 100644 --- a/target/i386/nvmm/nvmm-all.c +++ b/target/i386/nvmm/nvmm-all.c @@ -26,7 +26,7 @@ #include -struct qemu_vcpu { +struct AccelCPUState { struct nvmm_vcpu vcpu; uint8_t tpr; bool stop; @@ -49,10 +49,10 @@ struct qemu_machine { static bool nvmm_allowed; static struct qemu_machine qemu_mach; -static struct qemu_vcpu * +static AccelCPUState * get_qemu_vcpu(CPUState *cpu) { - return (struct qemu_vcpu *)cpu->accel; + return cpu->accel; } static struct nvmm_machine * @@ -86,7 +86,7 @@ nvmm_set_registers(CPUState *cpu) { CPUX86State *env = cpu->env_ptr; struct nvmm_machine *mach = get_nvmm_mach(); - struct qemu_vcpu *qcpu = get_qemu_vcpu(cpu); + AccelCPUState *qcpu = get_qemu_vcpu(cpu); struct nvmm_vcpu *vcpu = &qcpu->vcpu; struct nvmm_x64_state *state = vcpu->state; uint64_t bitmap; @@ -223,7 +223,7 @@ nvmm_get_registers(CPUState *cpu) { CPUX86State *env = cpu->env_ptr; struct nvmm_machine *mach = get_nvmm_mach(); - struct qemu_vcpu *qcpu = get_qemu_vcpu(cpu); + AccelCPUState *qcpu = get_qemu_vcpu(cpu); struct nvmm_vcpu *vcpu = &qcpu->vcpu; X86CPU *x86_cpu = X86_CPU(cpu); struct nvmm_x64_state *state = vcpu->state; @@ -347,7 +347,7 @@ static bool nvmm_can_take_int(CPUState *cpu) { CPUX86State *env = cpu->env_ptr; - struct qemu_vcpu *qcpu = get_qemu_vcpu(cpu); + AccelCPUState *qcpu = get_qemu_vcpu(cpu); struct nvmm_vcpu *vcpu = &qcpu->vcpu; struct nvmm_machine *mach = get_nvmm_mach(); @@ -372,7 +372,7 @@ nvmm_can_take_int(CPUState *cpu) static bool nvmm_can_take_nmi(CPUState *cpu) { - struct qemu_vcpu *qcpu = get_qemu_vcpu(cpu); + AccelCPUState *qcpu = get_qemu_vcpu(cpu); /* * Contrary to INTs, NMIs always schedule an exit when they are @@ -395,7 +395,7 @@ nvmm_vcpu_pre_run(CPUState *cpu) { CPUX86State *env = cpu->env_ptr; struct nvmm_machine *mach = get_nvmm_mach(); - struct qemu_vcpu *qcpu = get_qemu_vcpu(cpu); + AccelCPUState *qcpu = get_qemu_vcpu(cpu); struct nvmm_vcpu *vcpu = &qcpu->vcpu; X86CPU *x86_cpu = X86_CPU(cpu); struct nvmm_x64_state *state = vcpu->state; @@ -478,7 +478,7 @@ nvmm_vcpu_pre_run(CPUState *cpu) static void nvmm_vcpu_post_run(CPUState *cpu, struct nvmm_vcpu_exit *exit) { - struct qemu_vcpu *qcpu = get_qemu_vcpu(cpu); + AccelCPUState *qcpu = get_qemu_vcpu(cpu); CPUX86State *env = cpu->env_ptr; X86CPU *x86_cpu = X86_CPU(cpu); uint64_t tpr; @@ -565,7 +565,7 @@ static int nvmm_handle_rdmsr(struct nvmm_machine *mach, CPUState *cpu, struct nvmm_vcpu_exit *exit) { - struct qemu_vcpu *qcpu = get_qemu_vcpu(cpu); + AccelCPUState *qcpu = get_qemu_vcpu(cpu); struct nvmm_vcpu *vcpu = &qcpu->vcpu; X86CPU *x86_cpu = X86_CPU(cpu); struct nvmm_x64_state *state = vcpu->state; @@ -610,7 +610,7 @@ static int nvmm_handle_wrmsr(struct nvmm_machine *mach, CPUState *cpu, struct nvmm_vcpu_exit *exit) { - struct qemu_vcpu *qcpu = get_qemu_vcpu(cpu); + AccelCPUState *qcpu = get_qemu_vcpu(cpu); struct nvmm_vcpu *vcpu = &qcpu->vcpu; X86CPU *x86_cpu = X86_CPU(cpu); struct nvmm_x64_state *state = vcpu->state; @@ -686,7 +686,7 @@ nvmm_vcpu_loop(CPUState *cpu) { CPUX86State *env = cpu->env_ptr; struct nvmm_machine *mach = get_nvmm_mach(); - struct qemu_vcpu *qcpu = get_qemu_vcpu(cpu); + AccelCPUState *qcpu = get_qemu_vcpu(cpu); struct nvmm_vcpu *vcpu = &qcpu->vcpu; X86CPU *x86_cpu = X86_CPU(cpu); struct nvmm_vcpu_exit *exit = vcpu->exit; @@ -892,7 +892,7 @@ static void nvmm_ipi_signal(int sigcpu) { if (current_cpu) { - struct qemu_vcpu *qcpu = get_qemu_vcpu(current_cpu); + AccelCPUState *qcpu = get_qemu_vcpu(current_cpu); #if NVMM_USER_VERSION >= 2 struct nvmm_vcpu *vcpu = &qcpu->vcpu; nvmm_vcpu_stop(vcpu); @@ -926,7 +926,7 @@ nvmm_init_vcpu(CPUState *cpu) struct nvmm_vcpu_conf_cpuid cpuid; struct nvmm_vcpu_conf_tpr tpr; Error *local_error = NULL; - struct qemu_vcpu *qcpu; + AccelCPUState *qcpu; int ret, err; nvmm_init_cpu_signals(); @@ -942,7 +942,7 @@ nvmm_init_vcpu(CPUState *cpu) } } - qcpu = g_malloc0(sizeof(*qcpu)); + qcpu = g_new0(AccelCPUState, 1); ret = nvmm_vcpu_create(mach, cpu->cpu_index, &qcpu->vcpu); if (ret == -1) { @@ -1023,7 +1023,7 @@ void nvmm_destroy_vcpu(CPUState *cpu) { struct nvmm_machine *mach = get_nvmm_mach(); - struct qemu_vcpu *qcpu = get_qemu_vcpu(cpu); + AccelCPUState *qcpu = get_qemu_vcpu(cpu); nvmm_vcpu_destroy(mach, &qcpu->vcpu); g_free(cpu->accel); -- 2.38.1 From xen-devel-bounces@lists.xenproject.org Sat Jun 24 17:49:39 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sat, 24 Jun 2023 17:49:39 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554672.866030 (Exim 4.92) (envelope-from ) id 1qD7O3-0004lg-2M; Sat, 24 Jun 2023 17:49:27 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554672.866030; Sat, 24 Jun 2023 17:49:26 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qD7O2-0004jv-LA; Sat, 24 Jun 2023 17:49:26 +0000 Received: by outflank-mailman (input) for mailman id 554672; Sat, 24 Jun 2023 17:49:24 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qD7Hb-0008Gp-U6 for xen-devel@lists.xenproject.org; Sat, 24 Jun 2023 17:42:47 +0000 Received: from mail-wm1-x332.google.com (mail-wm1-x332.google.com [2a00:1450:4864:20::332]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 88180299-12b6-11ee-b237-6b7b168915f2; Sat, 24 Jun 2023 19:42:47 +0200 (CEST) Received: by mail-wm1-x332.google.com with SMTP id 5b1f17b1804b1-3f90b4ac529so22662505e9.0 for ; Sat, 24 Jun 2023 10:42:47 -0700 (PDT) Received: from m1x-phil.lan ([176.187.217.150]) by smtp.gmail.com with ESMTPSA id q6-20020a7bce86000000b003f7ea771b5dsm2752650wmj.1.2023.06.24.10.42.44 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Sat, 24 Jun 2023 10:42:46 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 88180299-12b6-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1687628567; x=1690220567; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=op05vfUAX1M3Sv7qs3sw3v39U7zORQkGDmdogVHbS1k=; b=RJYQmK2dluQ/bCElwZXIIY1LD41h1/XaVwvVg8wSWNXJc07PlWVevXeiJ5aPZpO0Y7 Z1Mav2iYe3ECYz2tzxRgxo3JHBRfUe20wng9r7Jiv8QfuJqPhx5ajypQ6zgsMeF3mFkE 8Sed9QNqt76GTSbZefh09JZpTjZaNzBhq4efS73Y5DvzVgnD4Qp9rhbnnQXBGUxuvEaq yy7qUcr+89Nv63DXeB02W+9ylYZGNB3FEpFjatx5uZMbKoAxNYWa1O+176v+JwPcDjfv kOBlKV4J96Zi0Gf3gwB1AnoxdGSP6r699mTBZ4haMqN6ZHOlLTbnMhTspiaCics4jkjW rhwA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687628567; x=1690220567; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=op05vfUAX1M3Sv7qs3sw3v39U7zORQkGDmdogVHbS1k=; b=k90ZLJLmRRs4h3YAOe4QUactXXKMockSkO/ka8TwD02/xInbuevKfprNF1Y4g1ptOS 9ZUj6Sc/6oBxO2plTq14kz7LMr3GynCR+515HQjKLJ9R+GTlXzf4pD6aWcGntpi27pky k1k1GdqSYXQCpJvGnAgdYKkWehNIOUh3dMItT8nXNhUIWeIbxiVwysIr9hF7JZIUyzvz dNIEeCE1I3cDtvFMLEiJT2X8BebIY46m8LBl1bgCGYcHHAwM9qN/94IOjqPOmO8dJWtl JpP21CSat/9IWYWCdA/GxpNctfNPPLzB0WvubHJ1XDcL7wNW08S7TkahdxtX27sIZDlF xYIQ== X-Gm-Message-State: AC+VfDzNWeZ1njhpnK/fB8Kc9f1glN4pfCvzOk7JNnekpkSkuOrtP2ja NsN4/lAsYV7qLzHVAaVkEp4UnA== X-Google-Smtp-Source: ACHHUZ7X7jLi/v3awNWluzxBZUhpVWl7iOZemFneJv8KElxp32UetPs7a+ASZHGCEDVytT3X67X+6Q== X-Received: by 2002:a05:600c:231a:b0:3f9:b430:199b with SMTP id 26-20020a05600c231a00b003f9b430199bmr12673550wmo.15.1687628566856; Sat, 24 Jun 2023 10:42:46 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: kvm@vger.kernel.org, Marcel Apfelbaum , Peter Maydell , Roman Bolshakov , qemu-arm@nongnu.org, Richard Henderson , Alexander Graf , xen-devel@lists.xenproject.org, Sunil Muthuswamy , Anthony Perard , Stefano Stabellini , Yanan Wang , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Paul Durrant , Reinoud Zandijk , Eduardo Habkost , Cameron Esfahani , Paolo Bonzini Subject: [PATCH v3 11/16] accel: Inline NVMM get_qemu_vcpu() Date: Sat, 24 Jun 2023 19:41:16 +0200 Message-Id: <20230624174121.11508-12-philmd@linaro.org> X-Mailer: git-send-email 2.38.1 In-Reply-To: <20230624174121.11508-1-philmd@linaro.org> References: <20230624174121.11508-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit No need for this helper to access the CPUState::accel field. Reviewed-by: Richard Henderson Signed-off-by: Philippe Mathieu-Daudé --- target/i386/nvmm/nvmm-all.c | 28 +++++++++++----------------- 1 file changed, 11 insertions(+), 17 deletions(-) diff --git a/target/i386/nvmm/nvmm-all.c b/target/i386/nvmm/nvmm-all.c index e5ee4af084..72a3a9e3ae 100644 --- a/target/i386/nvmm/nvmm-all.c +++ b/target/i386/nvmm/nvmm-all.c @@ -49,12 +49,6 @@ struct qemu_machine { static bool nvmm_allowed; static struct qemu_machine qemu_mach; -static AccelCPUState * -get_qemu_vcpu(CPUState *cpu) -{ - return cpu->accel; -} - static struct nvmm_machine * get_nvmm_mach(void) { @@ -86,7 +80,7 @@ nvmm_set_registers(CPUState *cpu) { CPUX86State *env = cpu->env_ptr; struct nvmm_machine *mach = get_nvmm_mach(); - AccelCPUState *qcpu = get_qemu_vcpu(cpu); + AccelCPUState *qcpu = cpu->accel; struct nvmm_vcpu *vcpu = &qcpu->vcpu; struct nvmm_x64_state *state = vcpu->state; uint64_t bitmap; @@ -223,7 +217,7 @@ nvmm_get_registers(CPUState *cpu) { CPUX86State *env = cpu->env_ptr; struct nvmm_machine *mach = get_nvmm_mach(); - AccelCPUState *qcpu = get_qemu_vcpu(cpu); + AccelCPUState *qcpu = cpu->accel; struct nvmm_vcpu *vcpu = &qcpu->vcpu; X86CPU *x86_cpu = X86_CPU(cpu); struct nvmm_x64_state *state = vcpu->state; @@ -347,7 +341,7 @@ static bool nvmm_can_take_int(CPUState *cpu) { CPUX86State *env = cpu->env_ptr; - AccelCPUState *qcpu = get_qemu_vcpu(cpu); + AccelCPUState *qcpu = cpu->accel; struct nvmm_vcpu *vcpu = &qcpu->vcpu; struct nvmm_machine *mach = get_nvmm_mach(); @@ -372,7 +366,7 @@ nvmm_can_take_int(CPUState *cpu) static bool nvmm_can_take_nmi(CPUState *cpu) { - AccelCPUState *qcpu = get_qemu_vcpu(cpu); + AccelCPUState *qcpu = cpu->accel; /* * Contrary to INTs, NMIs always schedule an exit when they are @@ -395,7 +389,7 @@ nvmm_vcpu_pre_run(CPUState *cpu) { CPUX86State *env = cpu->env_ptr; struct nvmm_machine *mach = get_nvmm_mach(); - AccelCPUState *qcpu = get_qemu_vcpu(cpu); + AccelCPUState *qcpu = cpu->accel; struct nvmm_vcpu *vcpu = &qcpu->vcpu; X86CPU *x86_cpu = X86_CPU(cpu); struct nvmm_x64_state *state = vcpu->state; @@ -478,7 +472,7 @@ nvmm_vcpu_pre_run(CPUState *cpu) static void nvmm_vcpu_post_run(CPUState *cpu, struct nvmm_vcpu_exit *exit) { - AccelCPUState *qcpu = get_qemu_vcpu(cpu); + AccelCPUState *qcpu = cpu->accel; CPUX86State *env = cpu->env_ptr; X86CPU *x86_cpu = X86_CPU(cpu); uint64_t tpr; @@ -565,7 +559,7 @@ static int nvmm_handle_rdmsr(struct nvmm_machine *mach, CPUState *cpu, struct nvmm_vcpu_exit *exit) { - AccelCPUState *qcpu = get_qemu_vcpu(cpu); + AccelCPUState *qcpu = cpu->accel; struct nvmm_vcpu *vcpu = &qcpu->vcpu; X86CPU *x86_cpu = X86_CPU(cpu); struct nvmm_x64_state *state = vcpu->state; @@ -610,7 +604,7 @@ static int nvmm_handle_wrmsr(struct nvmm_machine *mach, CPUState *cpu, struct nvmm_vcpu_exit *exit) { - AccelCPUState *qcpu = get_qemu_vcpu(cpu); + AccelCPUState *qcpu = cpu->accel; struct nvmm_vcpu *vcpu = &qcpu->vcpu; X86CPU *x86_cpu = X86_CPU(cpu); struct nvmm_x64_state *state = vcpu->state; @@ -686,7 +680,7 @@ nvmm_vcpu_loop(CPUState *cpu) { CPUX86State *env = cpu->env_ptr; struct nvmm_machine *mach = get_nvmm_mach(); - AccelCPUState *qcpu = get_qemu_vcpu(cpu); + AccelCPUState *qcpu = cpu->accel; struct nvmm_vcpu *vcpu = &qcpu->vcpu; X86CPU *x86_cpu = X86_CPU(cpu); struct nvmm_vcpu_exit *exit = vcpu->exit; @@ -892,7 +886,7 @@ static void nvmm_ipi_signal(int sigcpu) { if (current_cpu) { - AccelCPUState *qcpu = get_qemu_vcpu(current_cpu); + AccelCPUState *qcpu = current_cpu->accel; #if NVMM_USER_VERSION >= 2 struct nvmm_vcpu *vcpu = &qcpu->vcpu; nvmm_vcpu_stop(vcpu); @@ -1023,7 +1017,7 @@ void nvmm_destroy_vcpu(CPUState *cpu) { struct nvmm_machine *mach = get_nvmm_mach(); - AccelCPUState *qcpu = get_qemu_vcpu(cpu); + AccelCPUState *qcpu = cpu->accel; nvmm_vcpu_destroy(mach, &qcpu->vcpu); g_free(cpu->accel); -- 2.38.1 From xen-devel-bounces@lists.xenproject.org Sat Jun 24 17:49:39 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sat, 24 Jun 2023 17:49:39 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554676.866042 (Exim 4.92) (envelope-from ) id 1qD7O4-00056o-5i; Sat, 24 Jun 2023 17:49:28 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554676.866042; Sat, 24 Jun 2023 17:49:28 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qD7O3-00054O-U2; Sat, 24 Jun 2023 17:49:27 +0000 Received: by outflank-mailman (input) for mailman id 554676; Sat, 24 Jun 2023 17:49:25 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qD7HN-0000wd-Ml for xen-devel@lists.xenproject.org; Sat, 24 Jun 2023 17:42:33 +0000 Received: from mail-ed1-x535.google.com (mail-ed1-x535.google.com [2a00:1450:4864:20::535]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 7f06082c-12b6-11ee-8611-37d641c3527e; Sat, 24 Jun 2023 19:42:32 +0200 (CEST) Received: by mail-ed1-x535.google.com with SMTP id 4fb4d7f45d1cf-51d5569e4d1so726852a12.2 for ; Sat, 24 Jun 2023 10:42:32 -0700 (PDT) Received: from m1x-phil.lan ([176.187.217.150]) by smtp.gmail.com with ESMTPSA id d15-20020a05640208cf00b0051a3e7d7996sm872902edz.83.2023.06.24.10.42.28 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Sat, 24 Jun 2023 10:42:31 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 7f06082c-12b6-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1687628551; x=1690220551; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=wDJq03Cy4udm0BY/tdQJBSn7cYSDg3Mije1czkKCJYY=; b=RO2avB+FoBAH/Di/V4kIhFyDQH7uIlgC0gwfCgQrD89bwE83AmBBFg0CcRlHBZjeo8 xf712Qc9aR38nPiF+uDaf5yc8gD19WEsCR2svxAprxd1bFxGUA2r4lMmJIlwctgs7QkB EUtMNoLLcY3J6LBbohSpdImmOm/n5GLZ+fA8stYV9O4SnDoSh8DTgNabJ/O9qfxzX4AN 5t1XZJvA/e/bJFTTAZaWg85tev9gNfCnctzxCTxdaNAK3TWI6g6FLKy1iSyDWwm7ICVw UkmuMgdFFe7lQAMN+uYaq3GLpkAMayp43PGSU3d6bHrT+2SGnuNJPvNFppg8VTyk9Otn 2Akg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687628551; x=1690220551; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=wDJq03Cy4udm0BY/tdQJBSn7cYSDg3Mije1czkKCJYY=; b=L4PugDDnxYbE35IOdH04SqxQNB1sQTmOHVAbpozvbtIrYCveeNyqe+GTuU7+s6y/7e rC2VxxNLYfWHyYCu0p9ywZ6YeeyqkXTK+FHnocz4x47brGYuwJ5MeMTWdqL323Jghi6Z y4OUeJlXDhOthfSAEl5r6+MotTYAQA+SsXAmrRPGWB1B6BNpFq0ajqaaaAY62MAhi7h5 wQUFeAU7m2uXUfZOwU8Cg6M7FQ6ZncRFR2bIdaKfJRsJVbWTTkf6Jo9Bj07bg5jy5GIA OXB71VFFVQM65pXlN/Q+oaLe74kRqiISRzUmrbyjYm4S8p/E1TykOV12S/BeeWV8xQvZ F7NA== X-Gm-Message-State: AC+VfDyXC/tiVuGvbKQRhasl78Q2PW7PrmZE2nXKUqHqMWzff4ZDzO+R 1tvUs3WzridTmBtfuQ7RF6ekeg== X-Google-Smtp-Source: ACHHUZ4FYM2a+yRGrt0ZR/p6B5z15VUL79T2BhspQcZnT7ZhY2JGOdCOYx1WSa4ydzRjjHwIT6bFeg== X-Received: by 2002:aa7:cb47:0:b0:51d:9130:3c54 with SMTP id w7-20020aa7cb47000000b0051d91303c54mr196875edt.26.1687628551740; Sat, 24 Jun 2023 10:42:31 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: kvm@vger.kernel.org, Marcel Apfelbaum , Peter Maydell , Roman Bolshakov , qemu-arm@nongnu.org, Richard Henderson , Alexander Graf , xen-devel@lists.xenproject.org, Sunil Muthuswamy , Anthony Perard , Stefano Stabellini , Yanan Wang , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Paul Durrant , Reinoud Zandijk , Eduardo Habkost , Cameron Esfahani , Paolo Bonzini Subject: [PATCH v3 09/16] accel: Remove NVMM unreachable error path Date: Sat, 24 Jun 2023 19:41:14 +0200 Message-Id: <20230624174121.11508-10-philmd@linaro.org> X-Mailer: git-send-email 2.38.1 In-Reply-To: <20230624174121.11508-1-philmd@linaro.org> References: <20230624174121.11508-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit g_malloc0() can not fail. Remove the unreachable error path. https://developer-old.gnome.org/glib/stable/glib-Memory-Allocation.html#glib-Memory-Allocation.description Signed-off-by: Philippe Mathieu-Daudé Reviewed-by: Richard Henderson --- target/i386/nvmm/nvmm-all.c | 4 ---- 1 file changed, 4 deletions(-) diff --git a/target/i386/nvmm/nvmm-all.c b/target/i386/nvmm/nvmm-all.c index b3c3adc59a..90e9e0a5b2 100644 --- a/target/i386/nvmm/nvmm-all.c +++ b/target/i386/nvmm/nvmm-all.c @@ -943,10 +943,6 @@ nvmm_init_vcpu(CPUState *cpu) } qcpu = g_malloc0(sizeof(*qcpu)); - if (qcpu == NULL) { - error_report("NVMM: Failed to allocate VCPU context."); - return -ENOMEM; - } ret = nvmm_vcpu_create(mach, cpu->cpu_index, &qcpu->vcpu); if (ret == -1) { -- 2.38.1 From xen-devel-bounces@lists.xenproject.org Sat Jun 24 17:49:39 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sat, 24 Jun 2023 17:49:39 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554669.866012 (Exim 4.92) (envelope-from ) id 1qD7O1-0004S0-UI; Sat, 24 Jun 2023 17:49:25 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554669.866012; Sat, 24 Jun 2023 17:49:25 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qD7O1-0004R8-Pp; Sat, 24 Jun 2023 17:49:25 +0000 Received: by outflank-mailman (input) for mailman id 554669; Sat, 24 Jun 2023 17:49:24 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qD7Hr-0000wd-P3 for xen-devel@lists.xenproject.org; Sat, 24 Jun 2023 17:43:03 +0000 Received: from mail-wm1-x330.google.com (mail-wm1-x330.google.com [2a00:1450:4864:20::330]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 90d7094b-12b6-11ee-8611-37d641c3527e; Sat, 24 Jun 2023 19:43:02 +0200 (CEST) Received: by mail-wm1-x330.google.com with SMTP id 5b1f17b1804b1-3fa0253b9e7so15570345e9.1 for ; Sat, 24 Jun 2023 10:43:02 -0700 (PDT) Received: from m1x-phil.lan ([176.187.217.150]) by smtp.gmail.com with ESMTPSA id x24-20020a05600c21d800b003f858ae8f9dsm5627374wmj.31.2023.06.24.10.42.58 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Sat, 24 Jun 2023 10:43:00 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 90d7094b-12b6-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1687628581; x=1690220581; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=F3YC9GFHrwXVDf1ItgmDmu2S/mgeY2SHKESPMbekbhg=; b=ISbZ7BY9b4/Aq+EjBk8eGpZlBPuqZIMbCL1Z2KOFPMZz5ox8oBaCrkDc4FubFKawGY 1tL2W1BGOVdUJvioaccKvPFxa0fEaw7zU/sU/n+FO2BpC/1IPS2fD/EtnxEeMc5v/tPg VwJX1jKjSp14BD9fIrvVzF/tQyR/m/xhTXl78ZfsDcfFUGIsFaXjG37CDoNuPmVipyz6 TINz55AJXSQbJ3aFJm4lg1dDwZMk2T/PkUao90+jkPyulQ+K2D88yQgTzzMeJPYQvf8G 3ti4QnkgoEQLWxpgFzIGE6kJzwKx6tnpeaUv8ETipQZdlWQyYpmoT8rKxNFuLXCiunZb t+uw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687628581; x=1690220581; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=F3YC9GFHrwXVDf1ItgmDmu2S/mgeY2SHKESPMbekbhg=; b=EUm00phO5wtn3YKF+lLo+oAMsbgXZMrLnvIyO/xdT1l+1Ej3qPttW7xS+CTuRwIoE0 yunhRnY02fKiVqoIBhV2xv9iB/V9mqCndWDYM4meLYy7qJ875kkfpbs18C2mh8WdHNiK wqDOuaF0KzvhMaOPlZx5nAZOVqYqhqOURtosjuT8ncmex+LIl2gZnXilgxFX/KVLDn8S w01mZKWvat5jxCu6X2r5Kiph/ZmbhOa6Ps/h00gqcWagX/mcTyJkgG1QAO2Udi6yEmJr qSrOHZDJngkKWmR0xf/ZEvmHXpovJbcwE3WiAXEHblBKHBg7VU8z+r4uOMKLVlcL8zMM 72Kg== X-Gm-Message-State: AC+VfDyHSGWvFmFq2TIT9GPegRhxCgxChxAf7jZCqSw6L/2TndSyYhxk N1IXEcTgonNaCHt+jksw5VvrdA== X-Google-Smtp-Source: ACHHUZ6x1kJtmnLWyDej5xX9yS3xNdJXqxD8xkB+g+E8OEa6HcSaTMV73YfM1pIWCauIJs3hjcdCpQ== X-Received: by 2002:a7b:cb04:0:b0:3f7:ecdf:ab2d with SMTP id u4-20020a7bcb04000000b003f7ecdfab2dmr24480622wmj.20.1687628581315; Sat, 24 Jun 2023 10:43:01 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: kvm@vger.kernel.org, Marcel Apfelbaum , Peter Maydell , Roman Bolshakov , qemu-arm@nongnu.org, Richard Henderson , Alexander Graf , xen-devel@lists.xenproject.org, Sunil Muthuswamy , Anthony Perard , Stefano Stabellini , Yanan Wang , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Paul Durrant , Reinoud Zandijk , Eduardo Habkost , Cameron Esfahani , Paolo Bonzini Subject: [PATCH v3 13/16] accel: Rename WHPX 'struct whpx_vcpu' -> AccelCPUState Date: Sat, 24 Jun 2023 19:41:18 +0200 Message-Id: <20230624174121.11508-14-philmd@linaro.org> X-Mailer: git-send-email 2.38.1 In-Reply-To: <20230624174121.11508-1-philmd@linaro.org> References: <20230624174121.11508-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit We want all accelerators to share the same opaque pointer in CPUState. Rename WHPX 'whpx_vcpu' as 'AccelCPUState'; use the typedef. Signed-off-by: Philippe Mathieu-Daudé Reviewed-by: Richard Henderson --- target/i386/whpx/whpx-all.c | 30 +++++++++++++++--------------- 1 file changed, 15 insertions(+), 15 deletions(-) diff --git a/target/i386/whpx/whpx-all.c b/target/i386/whpx/whpx-all.c index cad7bd0f88..4ddd2d076a 100644 --- a/target/i386/whpx/whpx-all.c +++ b/target/i386/whpx/whpx-all.c @@ -229,7 +229,7 @@ typedef enum WhpxStepMode { WHPX_STEP_EXCLUSIVE, } WhpxStepMode; -struct whpx_vcpu { +struct AccelCPUState { WHV_EMULATOR_HANDLE emulator; bool window_registered; bool interruptable; @@ -260,9 +260,9 @@ static bool whpx_has_xsave(void) * VP support */ -static struct whpx_vcpu *get_whpx_vcpu(CPUState *cpu) +static AccelCPUState *get_whpx_vcpu(CPUState *cpu) { - return (struct whpx_vcpu *)cpu->accel; + return (AccelCPUState *)cpu->accel; } static WHV_X64_SEGMENT_REGISTER whpx_seg_q2h(const SegmentCache *qs, int v86, @@ -390,7 +390,7 @@ static uint64_t whpx_cr8_to_apic_tpr(uint64_t cr8) static void whpx_set_registers(CPUState *cpu, int level) { struct whpx_state *whpx = &whpx_global; - struct whpx_vcpu *vcpu = get_whpx_vcpu(cpu); + AccelCPUState *vcpu = get_whpx_vcpu(cpu); CPUX86State *env = cpu->env_ptr; X86CPU *x86_cpu = X86_CPU(cpu); struct whpx_register_set vcxt; @@ -609,7 +609,7 @@ static void whpx_get_xcrs(CPUState *cpu) static void whpx_get_registers(CPUState *cpu) { struct whpx_state *whpx = &whpx_global; - struct whpx_vcpu *vcpu = get_whpx_vcpu(cpu); + AccelCPUState *vcpu = get_whpx_vcpu(cpu); CPUX86State *env = cpu->env_ptr; X86CPU *x86_cpu = X86_CPU(cpu); struct whpx_register_set vcxt; @@ -892,7 +892,7 @@ static const WHV_EMULATOR_CALLBACKS whpx_emu_callbacks = { static int whpx_handle_mmio(CPUState *cpu, WHV_MEMORY_ACCESS_CONTEXT *ctx) { HRESULT hr; - struct whpx_vcpu *vcpu = get_whpx_vcpu(cpu); + AccelCPUState *vcpu = get_whpx_vcpu(cpu); WHV_EMULATOR_STATUS emu_status; hr = whp_dispatch.WHvEmulatorTryMmioEmulation( @@ -917,7 +917,7 @@ static int whpx_handle_portio(CPUState *cpu, WHV_X64_IO_PORT_ACCESS_CONTEXT *ctx) { HRESULT hr; - struct whpx_vcpu *vcpu = get_whpx_vcpu(cpu); + AccelCPUState *vcpu = get_whpx_vcpu(cpu); WHV_EMULATOR_STATUS emu_status; hr = whp_dispatch.WHvEmulatorTryIoEmulation( @@ -1417,7 +1417,7 @@ static vaddr whpx_vcpu_get_pc(CPUState *cpu, bool exit_context_valid) * of QEMU, nor this port by calling WHvSetVirtualProcessorRegisters(). * This is the most common case. */ - struct whpx_vcpu *vcpu = get_whpx_vcpu(cpu); + AccelCPUState *vcpu = get_whpx_vcpu(cpu); return vcpu->exit_ctx.VpContext.Rip; } else { /* @@ -1468,7 +1468,7 @@ static void whpx_vcpu_pre_run(CPUState *cpu) { HRESULT hr; struct whpx_state *whpx = &whpx_global; - struct whpx_vcpu *vcpu = get_whpx_vcpu(cpu); + AccelCPUState *vcpu = get_whpx_vcpu(cpu); CPUX86State *env = cpu->env_ptr; X86CPU *x86_cpu = X86_CPU(cpu); int irq; @@ -1590,7 +1590,7 @@ static void whpx_vcpu_pre_run(CPUState *cpu) static void whpx_vcpu_post_run(CPUState *cpu) { - struct whpx_vcpu *vcpu = get_whpx_vcpu(cpu); + AccelCPUState *vcpu = get_whpx_vcpu(cpu); CPUX86State *env = cpu->env_ptr; X86CPU *x86_cpu = X86_CPU(cpu); @@ -1617,7 +1617,7 @@ static void whpx_vcpu_process_async_events(CPUState *cpu) { CPUX86State *env = cpu->env_ptr; X86CPU *x86_cpu = X86_CPU(cpu); - struct whpx_vcpu *vcpu = get_whpx_vcpu(cpu); + AccelCPUState *vcpu = get_whpx_vcpu(cpu); if ((cpu->interrupt_request & CPU_INTERRUPT_INIT) && !(env->hflags & HF_SMM_MASK)) { @@ -1656,7 +1656,7 @@ static int whpx_vcpu_run(CPUState *cpu) { HRESULT hr; struct whpx_state *whpx = &whpx_global; - struct whpx_vcpu *vcpu = get_whpx_vcpu(cpu); + AccelCPUState *vcpu = get_whpx_vcpu(cpu); struct whpx_breakpoint *stepped_over_bp = NULL; WhpxStepMode exclusive_step_mode = WHPX_STEP_NONE; int ret; @@ -2154,7 +2154,7 @@ int whpx_init_vcpu(CPUState *cpu) { HRESULT hr; struct whpx_state *whpx = &whpx_global; - struct whpx_vcpu *vcpu = NULL; + AccelCPUState *vcpu = NULL; Error *local_error = NULL; CPUX86State *env = cpu->env_ptr; X86CPU *x86_cpu = X86_CPU(cpu); @@ -2177,7 +2177,7 @@ int whpx_init_vcpu(CPUState *cpu) } } - vcpu = g_new0(struct whpx_vcpu, 1); + vcpu = g_new0(AccelCPUState, 1); hr = whp_dispatch.WHvEmulatorCreateEmulator( &whpx_emu_callbacks, @@ -2290,7 +2290,7 @@ int whpx_vcpu_exec(CPUState *cpu) void whpx_destroy_vcpu(CPUState *cpu) { struct whpx_state *whpx = &whpx_global; - struct whpx_vcpu *vcpu = get_whpx_vcpu(cpu); + AccelCPUState *vcpu = get_whpx_vcpu(cpu); whp_dispatch.WHvDeleteVirtualProcessor(whpx->partition, cpu->cpu_index); whp_dispatch.WHvEmulatorDestroyEmulator(vcpu->emulator); -- 2.38.1 From xen-devel-bounces@lists.xenproject.org Sat Jun 24 17:49:39 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sat, 24 Jun 2023 17:49:39 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554678.866048 (Exim 4.92) (envelope-from ) id 1qD7O4-0005FH-HA; Sat, 24 Jun 2023 17:49:28 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554678.866048; Sat, 24 Jun 2023 17:49:28 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qD7O4-0005Ds-8o; Sat, 24 Jun 2023 17:49:28 +0000 Received: by outflank-mailman (input) for mailman id 554678; Sat, 24 Jun 2023 17:49:25 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qD7IG-0000wd-OT for xen-devel@lists.xenproject.org; Sat, 24 Jun 2023 17:43:29 +0000 Received: from mail-wm1-x330.google.com (mail-wm1-x330.google.com [2a00:1450:4864:20::330]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 9f02c0e9-12b6-11ee-8611-37d641c3527e; Sat, 24 Jun 2023 19:43:25 +0200 (CEST) Received: by mail-wm1-x330.google.com with SMTP id 5b1f17b1804b1-3f9b0f139feso23082965e9.3 for ; Sat, 24 Jun 2023 10:43:25 -0700 (PDT) Received: from m1x-phil.lan ([176.187.217.150]) by smtp.gmail.com with ESMTPSA id y12-20020a05600c364c00b003f7f249e7dfsm5700086wmq.4.2023.06.24.10.43.21 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Sat, 24 Jun 2023 10:43:24 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 9f02c0e9-12b6-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1687628605; x=1690220605; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=C0Bvqma/PIbc9szv5rXD5PzzsFB6qHMXrjecr7RadWU=; b=vG6irblZyEyuhCqHKGQ/MwaSvK6Eo7Fv0lY2lmj9xFVpIXWiBLx/sTiyE0pM0cPoPA VKuiwNq6w3JSr34VWEJlca+46s28XAOtt7/+RsBgZURcrNYXNuGwxoCLTKkzzcTWNmIS yz/vbuNL8GheepSuqvAi2yvZBV9VelHtipvfFLpqA6zLripuU81hslQppfkJELLsmPHO jW6anVavPBUcPLPhUnCqGYPVnR0BXV2ChuC0vGMbIWVwioRnsEuR9sX/H4XpF2YhC/M1 wYlceqS1Pv4U43RPuW4W4NPfmDCiWi+/KdGdVuRNIlcsp8fUAHk9LXcnEPOq+sBYZdZV ANIg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687628605; x=1690220605; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=C0Bvqma/PIbc9szv5rXD5PzzsFB6qHMXrjecr7RadWU=; b=dc0PeLRfGLvrahzRiC0zYzuiArqwTqZr0YSFKsppThVrwAV6aQ/lM4Ju0KRUfxW3fY nZkdj84+p+/0NDK2LcKzpGYsMGGGwYOl5BAtsw6QowDX7wZ8elDVjvibAtt0ebkJKA9Z kPmSTTn+dMMLbvR4+k7nzOzaO5BYPcOZoma3sFdKXdDkYilqqPCEceCc9IQ9atfpSkR5 bXPn1YaEvSxriS94j4WRd1G6Wm1ASU+uOIIAeElXq5J1xmO6lxvRkja92tsrqQD79wvj tSl0ar3SzKYRh0nqFWLKFbPUpaPS3QyjKLO3N9kljQRkZ0KJoqNEBdyHvuEa8ljZw3KB HNIA== X-Gm-Message-State: AC+VfDzK2W8X9mYYQdPJtcQjn0HPn0fak+TefmMwL1roGlU93+7Q1R6J HXzmEg5HCVWyIxWY7dYvv5hdJA== X-Google-Smtp-Source: ACHHUZ5HltMJmzvYTBE0TkT8wKWtTPaC1UYEA2DegWtnQnY1S7XP4JoV5kk01yfeAA81LjTPtObXPw== X-Received: by 2002:a7b:cb99:0:b0:3f9:c9bc:401 with SMTP id m25-20020a7bcb99000000b003f9c9bc0401mr8386273wmi.33.1687628605005; Sat, 24 Jun 2023 10:43:25 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: kvm@vger.kernel.org, Marcel Apfelbaum , Peter Maydell , Roman Bolshakov , qemu-arm@nongnu.org, Richard Henderson , Alexander Graf , xen-devel@lists.xenproject.org, Sunil Muthuswamy , Anthony Perard , Stefano Stabellini , Yanan Wang , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Paul Durrant , Reinoud Zandijk , Eduardo Habkost , Cameron Esfahani , Paolo Bonzini Subject: [PATCH v3 16/16] accel: Rename HVF 'struct hvf_vcpu_state' -> AccelCPUState Date: Sat, 24 Jun 2023 19:41:21 +0200 Message-Id: <20230624174121.11508-17-philmd@linaro.org> X-Mailer: git-send-email 2.38.1 In-Reply-To: <20230624174121.11508-1-philmd@linaro.org> References: <20230624174121.11508-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit We want all accelerators to share the same opaque pointer in CPUState. Rename the 'hvf_vcpu_state' structure as 'AccelCPUState'. Use the generic 'accel' field of CPUState instead of 'hvf'. Replace g_malloc0() by g_new0() for readability. Signed-off-by: Philippe Mathieu-Daudé Reviewed-by: Richard Henderson --- Not even built on x86! --- include/hw/core/cpu.h | 4 - include/sysemu/hvf_int.h | 2 +- target/i386/hvf/vmx.h | 22 ++-- accel/hvf/hvf-accel-ops.c | 18 ++-- target/arm/hvf/hvf.c | 108 +++++++++---------- target/i386/hvf/hvf.c | 104 +++++++++--------- target/i386/hvf/x86.c | 28 ++--- target/i386/hvf/x86_descr.c | 26 ++--- target/i386/hvf/x86_emu.c | 62 +++++------ target/i386/hvf/x86_mmu.c | 4 +- target/i386/hvf/x86_task.c | 10 +- target/i386/hvf/x86hvf.c | 208 ++++++++++++++++++------------------ 12 files changed, 296 insertions(+), 300 deletions(-) diff --git a/include/hw/core/cpu.h b/include/hw/core/cpu.h index 8b40946afc..44c91240f2 100644 --- a/include/hw/core/cpu.h +++ b/include/hw/core/cpu.h @@ -240,8 +240,6 @@ typedef struct SavedIOTLB { struct KVMState; struct kvm_run; -struct hvf_vcpu_state; - /* work queue */ /* The union type allows passing of 64 bit target pointers on 32 bit @@ -441,8 +439,6 @@ struct CPUState { /* Used for user-only emulation of prctl(PR_SET_UNALIGN). */ bool prctl_unalign_sigbus; - struct hvf_vcpu_state *hvf; - /* track IOMMUs whose translations we've cached in the TCG TLB */ GArray *iommu_notifiers; }; diff --git a/include/sysemu/hvf_int.h b/include/sysemu/hvf_int.h index 6ab119e49f..718beddcdd 100644 --- a/include/sysemu/hvf_int.h +++ b/include/sysemu/hvf_int.h @@ -49,7 +49,7 @@ struct HVFState { }; extern HVFState *hvf_state; -struct hvf_vcpu_state { +struct AccelCPUState { uint64_t fd; void *exit; bool vtimer_masked; diff --git a/target/i386/hvf/vmx.h b/target/i386/hvf/vmx.h index fcd9a95e5b..0fffcfa46c 100644 --- a/target/i386/hvf/vmx.h +++ b/target/i386/hvf/vmx.h @@ -180,15 +180,15 @@ static inline void macvm_set_rip(CPUState *cpu, uint64_t rip) uint64_t val; /* BUG, should take considering overlap.. */ - wreg(cpu->hvf->fd, HV_X86_RIP, rip); + wreg(cpu->accel->fd, HV_X86_RIP, rip); env->eip = rip; /* after moving forward in rip, we need to clean INTERRUPTABILITY */ - val = rvmcs(cpu->hvf->fd, VMCS_GUEST_INTERRUPTIBILITY); + val = rvmcs(cpu->accel->fd, VMCS_GUEST_INTERRUPTIBILITY); if (val & (VMCS_INTERRUPTIBILITY_STI_BLOCKING | VMCS_INTERRUPTIBILITY_MOVSS_BLOCKING)) { env->hflags &= ~HF_INHIBIT_IRQ_MASK; - wvmcs(cpu->hvf->fd, VMCS_GUEST_INTERRUPTIBILITY, + wvmcs(cpu->accel->fd, VMCS_GUEST_INTERRUPTIBILITY, val & ~(VMCS_INTERRUPTIBILITY_STI_BLOCKING | VMCS_INTERRUPTIBILITY_MOVSS_BLOCKING)); } @@ -200,9 +200,9 @@ static inline void vmx_clear_nmi_blocking(CPUState *cpu) CPUX86State *env = &x86_cpu->env; env->hflags2 &= ~HF2_NMI_MASK; - uint32_t gi = (uint32_t) rvmcs(cpu->hvf->fd, VMCS_GUEST_INTERRUPTIBILITY); + uint32_t gi = (uint32_t) rvmcs(cpu->accel->fd, VMCS_GUEST_INTERRUPTIBILITY); gi &= ~VMCS_INTERRUPTIBILITY_NMI_BLOCKING; - wvmcs(cpu->hvf->fd, VMCS_GUEST_INTERRUPTIBILITY, gi); + wvmcs(cpu->accel->fd, VMCS_GUEST_INTERRUPTIBILITY, gi); } static inline void vmx_set_nmi_blocking(CPUState *cpu) @@ -211,16 +211,16 @@ static inline void vmx_set_nmi_blocking(CPUState *cpu) CPUX86State *env = &x86_cpu->env; env->hflags2 |= HF2_NMI_MASK; - uint32_t gi = (uint32_t)rvmcs(cpu->hvf->fd, VMCS_GUEST_INTERRUPTIBILITY); + uint32_t gi = (uint32_t)rvmcs(cpu->accel->fd, VMCS_GUEST_INTERRUPTIBILITY); gi |= VMCS_INTERRUPTIBILITY_NMI_BLOCKING; - wvmcs(cpu->hvf->fd, VMCS_GUEST_INTERRUPTIBILITY, gi); + wvmcs(cpu->accel->fd, VMCS_GUEST_INTERRUPTIBILITY, gi); } static inline void vmx_set_nmi_window_exiting(CPUState *cpu) { uint64_t val; - val = rvmcs(cpu->hvf->fd, VMCS_PRI_PROC_BASED_CTLS); - wvmcs(cpu->hvf->fd, VMCS_PRI_PROC_BASED_CTLS, val | + val = rvmcs(cpu->accel->fd, VMCS_PRI_PROC_BASED_CTLS); + wvmcs(cpu->accel->fd, VMCS_PRI_PROC_BASED_CTLS, val | VMCS_PRI_PROC_BASED_CTLS_NMI_WINDOW_EXITING); } @@ -229,8 +229,8 @@ static inline void vmx_clear_nmi_window_exiting(CPUState *cpu) { uint64_t val; - val = rvmcs(cpu->hvf->fd, VMCS_PRI_PROC_BASED_CTLS); - wvmcs(cpu->hvf->fd, VMCS_PRI_PROC_BASED_CTLS, val & + val = rvmcs(cpu->accel->fd, VMCS_PRI_PROC_BASED_CTLS); + wvmcs(cpu->accel->fd, VMCS_PRI_PROC_BASED_CTLS, val & ~VMCS_PRI_PROC_BASED_CTLS_NMI_WINDOW_EXITING); } diff --git a/accel/hvf/hvf-accel-ops.c b/accel/hvf/hvf-accel-ops.c index 9c3da03c94..444d6aaaec 100644 --- a/accel/hvf/hvf-accel-ops.c +++ b/accel/hvf/hvf-accel-ops.c @@ -372,19 +372,19 @@ type_init(hvf_type_init); static void hvf_vcpu_destroy(CPUState *cpu) { - hv_return_t ret = hv_vcpu_destroy(cpu->hvf->fd); + hv_return_t ret = hv_vcpu_destroy(cpu->accel->fd); assert_hvf_ok(ret); hvf_arch_vcpu_destroy(cpu); - g_free(cpu->hvf); - cpu->hvf = NULL; + g_free(cpu->accel); + cpu->accel = NULL; } static int hvf_init_vcpu(CPUState *cpu) { int r; - cpu->hvf = g_malloc0(sizeof(*cpu->hvf)); + cpu->accel = g_new0(AccelCPUState, 1); /* init cpu signals */ struct sigaction sigact; @@ -393,18 +393,18 @@ static int hvf_init_vcpu(CPUState *cpu) sigact.sa_handler = dummy_signal; sigaction(SIG_IPI, &sigact, NULL); - pthread_sigmask(SIG_BLOCK, NULL, &cpu->hvf->unblock_ipi_mask); - sigdelset(&cpu->hvf->unblock_ipi_mask, SIG_IPI); + pthread_sigmask(SIG_BLOCK, NULL, &cpu->accel->unblock_ipi_mask); + sigdelset(&cpu->accel->unblock_ipi_mask, SIG_IPI); #ifdef __aarch64__ - r = hv_vcpu_create(&cpu->hvf->fd, (hv_vcpu_exit_t **)&cpu->hvf->exit, NULL); + r = hv_vcpu_create(&cpu->accel->fd, (hv_vcpu_exit_t **)&cpu->accel->exit, NULL); #else - r = hv_vcpu_create((hv_vcpuid_t *)&cpu->hvf->fd, HV_VCPU_DEFAULT); + r = hv_vcpu_create((hv_vcpuid_t *)&cpu->accel->fd, HV_VCPU_DEFAULT); #endif cpu->vcpu_dirty = 1; assert_hvf_ok(r); - cpu->hvf->guest_debug_enabled = false; + cpu->accel->guest_debug_enabled = false; return hvf_arch_init_vcpu(cpu); } diff --git a/target/arm/hvf/hvf.c b/target/arm/hvf/hvf.c index 8f72624586..8fce64bbf6 100644 --- a/target/arm/hvf/hvf.c +++ b/target/arm/hvf/hvf.c @@ -544,29 +544,29 @@ int hvf_get_registers(CPUState *cpu) int i; for (i = 0; i < ARRAY_SIZE(hvf_reg_match); i++) { - ret = hv_vcpu_get_reg(cpu->hvf->fd, hvf_reg_match[i].reg, &val); + ret = hv_vcpu_get_reg(cpu->accel->fd, hvf_reg_match[i].reg, &val); *(uint64_t *)((void *)env + hvf_reg_match[i].offset) = val; assert_hvf_ok(ret); } for (i = 0; i < ARRAY_SIZE(hvf_fpreg_match); i++) { - ret = hv_vcpu_get_simd_fp_reg(cpu->hvf->fd, hvf_fpreg_match[i].reg, + ret = hv_vcpu_get_simd_fp_reg(cpu->accel->fd, hvf_fpreg_match[i].reg, &fpval); memcpy((void *)env + hvf_fpreg_match[i].offset, &fpval, sizeof(fpval)); assert_hvf_ok(ret); } val = 0; - ret = hv_vcpu_get_reg(cpu->hvf->fd, HV_REG_FPCR, &val); + ret = hv_vcpu_get_reg(cpu->accel->fd, HV_REG_FPCR, &val); assert_hvf_ok(ret); vfp_set_fpcr(env, val); val = 0; - ret = hv_vcpu_get_reg(cpu->hvf->fd, HV_REG_FPSR, &val); + ret = hv_vcpu_get_reg(cpu->accel->fd, HV_REG_FPSR, &val); assert_hvf_ok(ret); vfp_set_fpsr(env, val); - ret = hv_vcpu_get_reg(cpu->hvf->fd, HV_REG_CPSR, &val); + ret = hv_vcpu_get_reg(cpu->accel->fd, HV_REG_CPSR, &val); assert_hvf_ok(ret); pstate_write(env, val); @@ -575,7 +575,7 @@ int hvf_get_registers(CPUState *cpu) continue; } - if (cpu->hvf->guest_debug_enabled) { + if (cpu->accel->guest_debug_enabled) { /* Handle debug registers */ switch (hvf_sreg_match[i].reg) { case HV_SYS_REG_DBGBVR0_EL1: @@ -661,7 +661,7 @@ int hvf_get_registers(CPUState *cpu) } } - ret = hv_vcpu_get_sys_reg(cpu->hvf->fd, hvf_sreg_match[i].reg, &val); + ret = hv_vcpu_get_sys_reg(cpu->accel->fd, hvf_sreg_match[i].reg, &val); assert_hvf_ok(ret); arm_cpu->cpreg_values[hvf_sreg_match[i].cp_idx] = val; @@ -684,24 +684,24 @@ int hvf_put_registers(CPUState *cpu) for (i = 0; i < ARRAY_SIZE(hvf_reg_match); i++) { val = *(uint64_t *)((void *)env + hvf_reg_match[i].offset); - ret = hv_vcpu_set_reg(cpu->hvf->fd, hvf_reg_match[i].reg, val); + ret = hv_vcpu_set_reg(cpu->accel->fd, hvf_reg_match[i].reg, val); assert_hvf_ok(ret); } for (i = 0; i < ARRAY_SIZE(hvf_fpreg_match); i++) { memcpy(&fpval, (void *)env + hvf_fpreg_match[i].offset, sizeof(fpval)); - ret = hv_vcpu_set_simd_fp_reg(cpu->hvf->fd, hvf_fpreg_match[i].reg, + ret = hv_vcpu_set_simd_fp_reg(cpu->accel->fd, hvf_fpreg_match[i].reg, fpval); assert_hvf_ok(ret); } - ret = hv_vcpu_set_reg(cpu->hvf->fd, HV_REG_FPCR, vfp_get_fpcr(env)); + ret = hv_vcpu_set_reg(cpu->accel->fd, HV_REG_FPCR, vfp_get_fpcr(env)); assert_hvf_ok(ret); - ret = hv_vcpu_set_reg(cpu->hvf->fd, HV_REG_FPSR, vfp_get_fpsr(env)); + ret = hv_vcpu_set_reg(cpu->accel->fd, HV_REG_FPSR, vfp_get_fpsr(env)); assert_hvf_ok(ret); - ret = hv_vcpu_set_reg(cpu->hvf->fd, HV_REG_CPSR, pstate_read(env)); + ret = hv_vcpu_set_reg(cpu->accel->fd, HV_REG_CPSR, pstate_read(env)); assert_hvf_ok(ret); aarch64_save_sp(env, arm_current_el(env)); @@ -712,7 +712,7 @@ int hvf_put_registers(CPUState *cpu) continue; } - if (cpu->hvf->guest_debug_enabled) { + if (cpu->accel->guest_debug_enabled) { /* Handle debug registers */ switch (hvf_sreg_match[i].reg) { case HV_SYS_REG_DBGBVR0_EL1: @@ -789,11 +789,11 @@ int hvf_put_registers(CPUState *cpu) } val = arm_cpu->cpreg_values[hvf_sreg_match[i].cp_idx]; - ret = hv_vcpu_set_sys_reg(cpu->hvf->fd, hvf_sreg_match[i].reg, val); + ret = hv_vcpu_set_sys_reg(cpu->accel->fd, hvf_sreg_match[i].reg, val); assert_hvf_ok(ret); } - ret = hv_vcpu_set_vtimer_offset(cpu->hvf->fd, hvf_state->vtimer_offset); + ret = hv_vcpu_set_vtimer_offset(cpu->accel->fd, hvf_state->vtimer_offset); assert_hvf_ok(ret); return 0; @@ -814,7 +814,7 @@ static void hvf_set_reg(CPUState *cpu, int rt, uint64_t val) flush_cpu_state(cpu); if (rt < 31) { - r = hv_vcpu_set_reg(cpu->hvf->fd, HV_REG_X0 + rt, val); + r = hv_vcpu_set_reg(cpu->accel->fd, HV_REG_X0 + rt, val); assert_hvf_ok(r); } } @@ -827,7 +827,7 @@ static uint64_t hvf_get_reg(CPUState *cpu, int rt) flush_cpu_state(cpu); if (rt < 31) { - r = hv_vcpu_get_reg(cpu->hvf->fd, HV_REG_X0 + rt, &val); + r = hv_vcpu_get_reg(cpu->accel->fd, HV_REG_X0 + rt, &val); assert_hvf_ok(r); } @@ -969,22 +969,22 @@ int hvf_arch_init_vcpu(CPUState *cpu) assert(write_cpustate_to_list(arm_cpu, false)); /* Set CP_NO_RAW system registers on init */ - ret = hv_vcpu_set_sys_reg(cpu->hvf->fd, HV_SYS_REG_MIDR_EL1, + ret = hv_vcpu_set_sys_reg(cpu->accel->fd, HV_SYS_REG_MIDR_EL1, arm_cpu->midr); assert_hvf_ok(ret); - ret = hv_vcpu_set_sys_reg(cpu->hvf->fd, HV_SYS_REG_MPIDR_EL1, + ret = hv_vcpu_set_sys_reg(cpu->accel->fd, HV_SYS_REG_MPIDR_EL1, arm_cpu->mp_affinity); assert_hvf_ok(ret); - ret = hv_vcpu_get_sys_reg(cpu->hvf->fd, HV_SYS_REG_ID_AA64PFR0_EL1, &pfr); + ret = hv_vcpu_get_sys_reg(cpu->accel->fd, HV_SYS_REG_ID_AA64PFR0_EL1, &pfr); assert_hvf_ok(ret); pfr |= env->gicv3state ? (1 << 24) : 0; - ret = hv_vcpu_set_sys_reg(cpu->hvf->fd, HV_SYS_REG_ID_AA64PFR0_EL1, pfr); + ret = hv_vcpu_set_sys_reg(cpu->accel->fd, HV_SYS_REG_ID_AA64PFR0_EL1, pfr); assert_hvf_ok(ret); /* We're limited to underlying hardware caps, override internal versions */ - ret = hv_vcpu_get_sys_reg(cpu->hvf->fd, HV_SYS_REG_ID_AA64MMFR0_EL1, + ret = hv_vcpu_get_sys_reg(cpu->accel->fd, HV_SYS_REG_ID_AA64MMFR0_EL1, &arm_cpu->isar.id_aa64mmfr0); assert_hvf_ok(ret); @@ -994,7 +994,7 @@ int hvf_arch_init_vcpu(CPUState *cpu) void hvf_kick_vcpu_thread(CPUState *cpu) { cpus_kick_thread(cpu); - hv_vcpus_exit(&cpu->hvf->fd, 1); + hv_vcpus_exit(&cpu->accel->fd, 1); } static void hvf_raise_exception(CPUState *cpu, uint32_t excp, @@ -1678,13 +1678,13 @@ static int hvf_inject_interrupts(CPUState *cpu) { if (cpu->interrupt_request & CPU_INTERRUPT_FIQ) { trace_hvf_inject_fiq(); - hv_vcpu_set_pending_interrupt(cpu->hvf->fd, HV_INTERRUPT_TYPE_FIQ, + hv_vcpu_set_pending_interrupt(cpu->accel->fd, HV_INTERRUPT_TYPE_FIQ, true); } if (cpu->interrupt_request & CPU_INTERRUPT_HARD) { trace_hvf_inject_irq(); - hv_vcpu_set_pending_interrupt(cpu->hvf->fd, HV_INTERRUPT_TYPE_IRQ, + hv_vcpu_set_pending_interrupt(cpu->accel->fd, HV_INTERRUPT_TYPE_IRQ, true); } @@ -1718,7 +1718,7 @@ static void hvf_wait_for_ipi(CPUState *cpu, struct timespec *ts) */ qatomic_set_mb(&cpu->thread_kicked, false); qemu_mutex_unlock_iothread(); - pselect(0, 0, 0, 0, ts, &cpu->hvf->unblock_ipi_mask); + pselect(0, 0, 0, 0, ts, &cpu->accel->unblock_ipi_mask); qemu_mutex_lock_iothread(); } @@ -1739,7 +1739,7 @@ static void hvf_wfi(CPUState *cpu) return; } - r = hv_vcpu_get_sys_reg(cpu->hvf->fd, HV_SYS_REG_CNTV_CTL_EL0, &ctl); + r = hv_vcpu_get_sys_reg(cpu->accel->fd, HV_SYS_REG_CNTV_CTL_EL0, &ctl); assert_hvf_ok(r); if (!(ctl & 1) || (ctl & 2)) { @@ -1748,7 +1748,7 @@ static void hvf_wfi(CPUState *cpu) return; } - r = hv_vcpu_get_sys_reg(cpu->hvf->fd, HV_SYS_REG_CNTV_CVAL_EL0, &cval); + r = hv_vcpu_get_sys_reg(cpu->accel->fd, HV_SYS_REG_CNTV_CVAL_EL0, &cval); assert_hvf_ok(r); ticks_to_sleep = cval - hvf_vtimer_val(); @@ -1781,12 +1781,12 @@ static void hvf_sync_vtimer(CPUState *cpu) uint64_t ctl; bool irq_state; - if (!cpu->hvf->vtimer_masked) { + if (!cpu->accel->vtimer_masked) { /* We will get notified on vtimer changes by hvf, nothing to do */ return; } - r = hv_vcpu_get_sys_reg(cpu->hvf->fd, HV_SYS_REG_CNTV_CTL_EL0, &ctl); + r = hv_vcpu_get_sys_reg(cpu->accel->fd, HV_SYS_REG_CNTV_CTL_EL0, &ctl); assert_hvf_ok(r); irq_state = (ctl & (TMR_CTL_ENABLE | TMR_CTL_IMASK | TMR_CTL_ISTATUS)) == @@ -1795,8 +1795,8 @@ static void hvf_sync_vtimer(CPUState *cpu) if (!irq_state) { /* Timer no longer asserting, we can unmask it */ - hv_vcpu_set_vtimer_mask(cpu->hvf->fd, false); - cpu->hvf->vtimer_masked = false; + hv_vcpu_set_vtimer_mask(cpu->accel->fd, false); + cpu->accel->vtimer_masked = false; } } @@ -1805,7 +1805,7 @@ int hvf_vcpu_exec(CPUState *cpu) ARMCPU *arm_cpu = ARM_CPU(cpu); CPUARMState *env = &arm_cpu->env; int ret; - hv_vcpu_exit_t *hvf_exit = cpu->hvf->exit; + hv_vcpu_exit_t *hvf_exit = cpu->accel->exit; hv_return_t r; bool advance_pc = false; @@ -1821,7 +1821,7 @@ int hvf_vcpu_exec(CPUState *cpu) flush_cpu_state(cpu); qemu_mutex_unlock_iothread(); - assert_hvf_ok(hv_vcpu_run(cpu->hvf->fd)); + assert_hvf_ok(hv_vcpu_run(cpu->accel->fd)); /* handle VMEXIT */ uint64_t exit_reason = hvf_exit->reason; @@ -1836,7 +1836,7 @@ int hvf_vcpu_exec(CPUState *cpu) break; case HV_EXIT_REASON_VTIMER_ACTIVATED: qemu_set_irq(arm_cpu->gt_timer_outputs[GTIMER_VIRT], 1); - cpu->hvf->vtimer_masked = true; + cpu->accel->vtimer_masked = true; return 0; case HV_EXIT_REASON_CANCELED: /* we got kicked, no exit to process */ @@ -1990,10 +1990,10 @@ int hvf_vcpu_exec(CPUState *cpu) flush_cpu_state(cpu); - r = hv_vcpu_get_reg(cpu->hvf->fd, HV_REG_PC, &pc); + r = hv_vcpu_get_reg(cpu->accel->fd, HV_REG_PC, &pc); assert_hvf_ok(r); pc += 4; - r = hv_vcpu_set_reg(cpu->hvf->fd, HV_REG_PC, pc); + r = hv_vcpu_set_reg(cpu->accel->fd, HV_REG_PC, pc); assert_hvf_ok(r); /* Handle single-stepping over instructions which trigger a VM exit */ @@ -2113,29 +2113,29 @@ static void hvf_put_gdbstub_debug_registers(CPUState *cpu) for (i = 0; i < cur_hw_bps; i++) { HWBreakpoint *bp = get_hw_bp(i); - r = hv_vcpu_set_sys_reg(cpu->hvf->fd, dbgbcr_regs[i], bp->bcr); + r = hv_vcpu_set_sys_reg(cpu->accel->fd, dbgbcr_regs[i], bp->bcr); assert_hvf_ok(r); - r = hv_vcpu_set_sys_reg(cpu->hvf->fd, dbgbvr_regs[i], bp->bvr); + r = hv_vcpu_set_sys_reg(cpu->accel->fd, dbgbvr_regs[i], bp->bvr); assert_hvf_ok(r); } for (i = cur_hw_bps; i < max_hw_bps; i++) { - r = hv_vcpu_set_sys_reg(cpu->hvf->fd, dbgbcr_regs[i], 0); + r = hv_vcpu_set_sys_reg(cpu->accel->fd, dbgbcr_regs[i], 0); assert_hvf_ok(r); - r = hv_vcpu_set_sys_reg(cpu->hvf->fd, dbgbvr_regs[i], 0); + r = hv_vcpu_set_sys_reg(cpu->accel->fd, dbgbvr_regs[i], 0); assert_hvf_ok(r); } for (i = 0; i < cur_hw_wps; i++) { HWWatchpoint *wp = get_hw_wp(i); - r = hv_vcpu_set_sys_reg(cpu->hvf->fd, dbgwcr_regs[i], wp->wcr); + r = hv_vcpu_set_sys_reg(cpu->accel->fd, dbgwcr_regs[i], wp->wcr); assert_hvf_ok(r); - r = hv_vcpu_set_sys_reg(cpu->hvf->fd, dbgwvr_regs[i], wp->wvr); + r = hv_vcpu_set_sys_reg(cpu->accel->fd, dbgwvr_regs[i], wp->wvr); assert_hvf_ok(r); } for (i = cur_hw_wps; i < max_hw_wps; i++) { - r = hv_vcpu_set_sys_reg(cpu->hvf->fd, dbgwcr_regs[i], 0); + r = hv_vcpu_set_sys_reg(cpu->accel->fd, dbgwcr_regs[i], 0); assert_hvf_ok(r); - r = hv_vcpu_set_sys_reg(cpu->hvf->fd, dbgwvr_regs[i], 0); + r = hv_vcpu_set_sys_reg(cpu->accel->fd, dbgwvr_regs[i], 0); assert_hvf_ok(r); } } @@ -2152,19 +2152,19 @@ static void hvf_put_guest_debug_registers(CPUState *cpu) int i; for (i = 0; i < max_hw_bps; i++) { - r = hv_vcpu_set_sys_reg(cpu->hvf->fd, dbgbcr_regs[i], + r = hv_vcpu_set_sys_reg(cpu->accel->fd, dbgbcr_regs[i], env->cp15.dbgbcr[i]); assert_hvf_ok(r); - r = hv_vcpu_set_sys_reg(cpu->hvf->fd, dbgbvr_regs[i], + r = hv_vcpu_set_sys_reg(cpu->accel->fd, dbgbvr_regs[i], env->cp15.dbgbvr[i]); assert_hvf_ok(r); } for (i = 0; i < max_hw_wps; i++) { - r = hv_vcpu_set_sys_reg(cpu->hvf->fd, dbgwcr_regs[i], + r = hv_vcpu_set_sys_reg(cpu->accel->fd, dbgwcr_regs[i], env->cp15.dbgwcr[i]); assert_hvf_ok(r); - r = hv_vcpu_set_sys_reg(cpu->hvf->fd, dbgwvr_regs[i], + r = hv_vcpu_set_sys_reg(cpu->accel->fd, dbgwvr_regs[i], env->cp15.dbgwvr[i]); assert_hvf_ok(r); } @@ -2184,16 +2184,16 @@ static void hvf_arch_set_traps(void) /* Check whether guest debugging is enabled for at least one vCPU; if it * is, enable exiting the guest on all vCPUs */ CPU_FOREACH(cpu) { - should_enable_traps |= cpu->hvf->guest_debug_enabled; + should_enable_traps |= cpu->accel->guest_debug_enabled; } CPU_FOREACH(cpu) { /* Set whether debug exceptions exit the guest */ - r = hv_vcpu_set_trap_debug_exceptions(cpu->hvf->fd, + r = hv_vcpu_set_trap_debug_exceptions(cpu->accel->fd, should_enable_traps); assert_hvf_ok(r); /* Set whether accesses to debug registers exit the guest */ - r = hv_vcpu_set_trap_debug_reg_accesses(cpu->hvf->fd, + r = hv_vcpu_set_trap_debug_reg_accesses(cpu->accel->fd, should_enable_traps); assert_hvf_ok(r); } @@ -2205,12 +2205,12 @@ void hvf_arch_update_guest_debug(CPUState *cpu) CPUARMState *env = &arm_cpu->env; /* Check whether guest debugging is enabled */ - cpu->hvf->guest_debug_enabled = cpu->singlestep_enabled || + cpu->accel->guest_debug_enabled = cpu->singlestep_enabled || hvf_sw_breakpoints_active(cpu) || hvf_arm_hw_debug_active(cpu); /* Update debug registers */ - if (cpu->hvf->guest_debug_enabled) { + if (cpu->accel->guest_debug_enabled) { hvf_put_gdbstub_debug_registers(cpu); } else { hvf_put_guest_debug_registers(cpu); diff --git a/target/i386/hvf/hvf.c b/target/i386/hvf/hvf.c index f6775c942a..06ea5033c2 100644 --- a/target/i386/hvf/hvf.c +++ b/target/i386/hvf/hvf.c @@ -81,11 +81,11 @@ void vmx_update_tpr(CPUState *cpu) int tpr = cpu_get_apic_tpr(x86_cpu->apic_state) << 4; int irr = apic_get_highest_priority_irr(x86_cpu->apic_state); - wreg(cpu->hvf->fd, HV_X86_TPR, tpr); + wreg(cpu->accel->fd, HV_X86_TPR, tpr); if (irr == -1) { - wvmcs(cpu->hvf->fd, VMCS_TPR_THRESHOLD, 0); + wvmcs(cpu->accel->fd, VMCS_TPR_THRESHOLD, 0); } else { - wvmcs(cpu->hvf->fd, VMCS_TPR_THRESHOLD, (irr > tpr) ? tpr >> 4 : + wvmcs(cpu->accel->fd, VMCS_TPR_THRESHOLD, (irr > tpr) ? tpr >> 4 : irr >> 4); } } @@ -93,7 +93,7 @@ void vmx_update_tpr(CPUState *cpu) static void update_apic_tpr(CPUState *cpu) { X86CPU *x86_cpu = X86_CPU(cpu); - int tpr = rreg(cpu->hvf->fd, HV_X86_TPR) >> 4; + int tpr = rreg(cpu->accel->fd, HV_X86_TPR) >> 4; cpu_set_apic_tpr(x86_cpu->apic_state, tpr); } @@ -256,12 +256,12 @@ int hvf_arch_init_vcpu(CPUState *cpu) } /* set VMCS control fields */ - wvmcs(cpu->hvf->fd, VMCS_PIN_BASED_CTLS, + wvmcs(cpu->accel->fd, VMCS_PIN_BASED_CTLS, cap2ctrl(hvf_state->hvf_caps->vmx_cap_pinbased, VMCS_PIN_BASED_CTLS_EXTINT | VMCS_PIN_BASED_CTLS_NMI | VMCS_PIN_BASED_CTLS_VNMI)); - wvmcs(cpu->hvf->fd, VMCS_PRI_PROC_BASED_CTLS, + wvmcs(cpu->accel->fd, VMCS_PRI_PROC_BASED_CTLS, cap2ctrl(hvf_state->hvf_caps->vmx_cap_procbased, VMCS_PRI_PROC_BASED_CTLS_HLT | VMCS_PRI_PROC_BASED_CTLS_MWAIT | @@ -276,14 +276,14 @@ int hvf_arch_init_vcpu(CPUState *cpu) reqCap |= VMCS_PRI_PROC_BASED2_CTLS_RDTSCP; } - wvmcs(cpu->hvf->fd, VMCS_SEC_PROC_BASED_CTLS, + wvmcs(cpu->accel->fd, VMCS_SEC_PROC_BASED_CTLS, cap2ctrl(hvf_state->hvf_caps->vmx_cap_procbased2, reqCap)); - wvmcs(cpu->hvf->fd, VMCS_ENTRY_CTLS, cap2ctrl(hvf_state->hvf_caps->vmx_cap_entry, + wvmcs(cpu->accel->fd, VMCS_ENTRY_CTLS, cap2ctrl(hvf_state->hvf_caps->vmx_cap_entry, 0)); - wvmcs(cpu->hvf->fd, VMCS_EXCEPTION_BITMAP, 0); /* Double fault */ + wvmcs(cpu->accel->fd, VMCS_EXCEPTION_BITMAP, 0); /* Double fault */ - wvmcs(cpu->hvf->fd, VMCS_TPR_THRESHOLD, 0); + wvmcs(cpu->accel->fd, VMCS_TPR_THRESHOLD, 0); x86cpu = X86_CPU(cpu); x86cpu->env.xsave_buf_len = 4096; @@ -295,18 +295,18 @@ int hvf_arch_init_vcpu(CPUState *cpu) */ assert(hvf_get_supported_cpuid(0xd, 0, R_ECX) <= x86cpu->env.xsave_buf_len); - hv_vcpu_enable_native_msr(cpu->hvf->fd, MSR_STAR, 1); - hv_vcpu_enable_native_msr(cpu->hvf->fd, MSR_LSTAR, 1); - hv_vcpu_enable_native_msr(cpu->hvf->fd, MSR_CSTAR, 1); - hv_vcpu_enable_native_msr(cpu->hvf->fd, MSR_FMASK, 1); - hv_vcpu_enable_native_msr(cpu->hvf->fd, MSR_FSBASE, 1); - hv_vcpu_enable_native_msr(cpu->hvf->fd, MSR_GSBASE, 1); - hv_vcpu_enable_native_msr(cpu->hvf->fd, MSR_KERNELGSBASE, 1); - hv_vcpu_enable_native_msr(cpu->hvf->fd, MSR_TSC_AUX, 1); - hv_vcpu_enable_native_msr(cpu->hvf->fd, MSR_IA32_TSC, 1); - hv_vcpu_enable_native_msr(cpu->hvf->fd, MSR_IA32_SYSENTER_CS, 1); - hv_vcpu_enable_native_msr(cpu->hvf->fd, MSR_IA32_SYSENTER_EIP, 1); - hv_vcpu_enable_native_msr(cpu->hvf->fd, MSR_IA32_SYSENTER_ESP, 1); + hv_vcpu_enable_native_msr(cpu->accel->fd, MSR_STAR, 1); + hv_vcpu_enable_native_msr(cpu->accel->fd, MSR_LSTAR, 1); + hv_vcpu_enable_native_msr(cpu->accel->fd, MSR_CSTAR, 1); + hv_vcpu_enable_native_msr(cpu->accel->fd, MSR_FMASK, 1); + hv_vcpu_enable_native_msr(cpu->accel->fd, MSR_FSBASE, 1); + hv_vcpu_enable_native_msr(cpu->accel->fd, MSR_GSBASE, 1); + hv_vcpu_enable_native_msr(cpu->accel->fd, MSR_KERNELGSBASE, 1); + hv_vcpu_enable_native_msr(cpu->accel->fd, MSR_TSC_AUX, 1); + hv_vcpu_enable_native_msr(cpu->accel->fd, MSR_IA32_TSC, 1); + hv_vcpu_enable_native_msr(cpu->accel->fd, MSR_IA32_SYSENTER_CS, 1); + hv_vcpu_enable_native_msr(cpu->accel->fd, MSR_IA32_SYSENTER_EIP, 1); + hv_vcpu_enable_native_msr(cpu->accel->fd, MSR_IA32_SYSENTER_ESP, 1); return 0; } @@ -347,16 +347,16 @@ static void hvf_store_events(CPUState *cpu, uint32_t ins_len, uint64_t idtvec_in } if (idtvec_info & VMCS_IDT_VEC_ERRCODE_VALID) { env->has_error_code = true; - env->error_code = rvmcs(cpu->hvf->fd, VMCS_IDT_VECTORING_ERROR); + env->error_code = rvmcs(cpu->accel->fd, VMCS_IDT_VECTORING_ERROR); } } - if ((rvmcs(cpu->hvf->fd, VMCS_GUEST_INTERRUPTIBILITY) & + if ((rvmcs(cpu->accel->fd, VMCS_GUEST_INTERRUPTIBILITY) & VMCS_INTERRUPTIBILITY_NMI_BLOCKING)) { env->hflags2 |= HF2_NMI_MASK; } else { env->hflags2 &= ~HF2_NMI_MASK; } - if (rvmcs(cpu->hvf->fd, VMCS_GUEST_INTERRUPTIBILITY) & + if (rvmcs(cpu->accel->fd, VMCS_GUEST_INTERRUPTIBILITY) & (VMCS_INTERRUPTIBILITY_STI_BLOCKING | VMCS_INTERRUPTIBILITY_MOVSS_BLOCKING)) { env->hflags |= HF_INHIBIT_IRQ_MASK; @@ -435,20 +435,20 @@ int hvf_vcpu_exec(CPUState *cpu) return EXCP_HLT; } - hv_return_t r = hv_vcpu_run(cpu->hvf->fd); + hv_return_t r = hv_vcpu_run(cpu->accel->fd); assert_hvf_ok(r); /* handle VMEXIT */ - uint64_t exit_reason = rvmcs(cpu->hvf->fd, VMCS_EXIT_REASON); - uint64_t exit_qual = rvmcs(cpu->hvf->fd, VMCS_EXIT_QUALIFICATION); - uint32_t ins_len = (uint32_t)rvmcs(cpu->hvf->fd, + uint64_t exit_reason = rvmcs(cpu->accel->fd, VMCS_EXIT_REASON); + uint64_t exit_qual = rvmcs(cpu->accel->fd, VMCS_EXIT_QUALIFICATION); + uint32_t ins_len = (uint32_t)rvmcs(cpu->accel->fd, VMCS_EXIT_INSTRUCTION_LENGTH); - uint64_t idtvec_info = rvmcs(cpu->hvf->fd, VMCS_IDT_VECTORING_INFO); + uint64_t idtvec_info = rvmcs(cpu->accel->fd, VMCS_IDT_VECTORING_INFO); hvf_store_events(cpu, ins_len, idtvec_info); - rip = rreg(cpu->hvf->fd, HV_X86_RIP); - env->eflags = rreg(cpu->hvf->fd, HV_X86_RFLAGS); + rip = rreg(cpu->accel->fd, HV_X86_RIP); + env->eflags = rreg(cpu->accel->fd, HV_X86_RFLAGS); qemu_mutex_lock_iothread(); @@ -478,7 +478,7 @@ int hvf_vcpu_exec(CPUState *cpu) case EXIT_REASON_EPT_FAULT: { hvf_slot *slot; - uint64_t gpa = rvmcs(cpu->hvf->fd, VMCS_GUEST_PHYSICAL_ADDRESS); + uint64_t gpa = rvmcs(cpu->accel->fd, VMCS_GUEST_PHYSICAL_ADDRESS); if (((idtvec_info & VMCS_IDT_VEC_VALID) == 0) && ((exit_qual & EXIT_QUAL_NMIUDTI) != 0)) { @@ -523,7 +523,7 @@ int hvf_vcpu_exec(CPUState *cpu) store_regs(cpu); break; } else if (!string && !in) { - RAX(env) = rreg(cpu->hvf->fd, HV_X86_RAX); + RAX(env) = rreg(cpu->accel->fd, HV_X86_RAX); hvf_handle_io(env, port, &RAX(env), 1, size, 1); macvm_set_rip(cpu, rip + ins_len); break; @@ -539,21 +539,21 @@ int hvf_vcpu_exec(CPUState *cpu) break; } case EXIT_REASON_CPUID: { - uint32_t rax = (uint32_t)rreg(cpu->hvf->fd, HV_X86_RAX); - uint32_t rbx = (uint32_t)rreg(cpu->hvf->fd, HV_X86_RBX); - uint32_t rcx = (uint32_t)rreg(cpu->hvf->fd, HV_X86_RCX); - uint32_t rdx = (uint32_t)rreg(cpu->hvf->fd, HV_X86_RDX); + uint32_t rax = (uint32_t)rreg(cpu->accel->fd, HV_X86_RAX); + uint32_t rbx = (uint32_t)rreg(cpu->accel->fd, HV_X86_RBX); + uint32_t rcx = (uint32_t)rreg(cpu->accel->fd, HV_X86_RCX); + uint32_t rdx = (uint32_t)rreg(cpu->accel->fd, HV_X86_RDX); if (rax == 1) { /* CPUID1.ecx.OSXSAVE needs to know CR4 */ - env->cr[4] = rvmcs(cpu->hvf->fd, VMCS_GUEST_CR4); + env->cr[4] = rvmcs(cpu->accel->fd, VMCS_GUEST_CR4); } hvf_cpu_x86_cpuid(env, rax, rcx, &rax, &rbx, &rcx, &rdx); - wreg(cpu->hvf->fd, HV_X86_RAX, rax); - wreg(cpu->hvf->fd, HV_X86_RBX, rbx); - wreg(cpu->hvf->fd, HV_X86_RCX, rcx); - wreg(cpu->hvf->fd, HV_X86_RDX, rdx); + wreg(cpu->accel->fd, HV_X86_RAX, rax); + wreg(cpu->accel->fd, HV_X86_RBX, rbx); + wreg(cpu->accel->fd, HV_X86_RCX, rcx); + wreg(cpu->accel->fd, HV_X86_RDX, rdx); macvm_set_rip(cpu, rip + ins_len); break; @@ -561,16 +561,16 @@ int hvf_vcpu_exec(CPUState *cpu) case EXIT_REASON_XSETBV: { X86CPU *x86_cpu = X86_CPU(cpu); CPUX86State *env = &x86_cpu->env; - uint32_t eax = (uint32_t)rreg(cpu->hvf->fd, HV_X86_RAX); - uint32_t ecx = (uint32_t)rreg(cpu->hvf->fd, HV_X86_RCX); - uint32_t edx = (uint32_t)rreg(cpu->hvf->fd, HV_X86_RDX); + uint32_t eax = (uint32_t)rreg(cpu->accel->fd, HV_X86_RAX); + uint32_t ecx = (uint32_t)rreg(cpu->accel->fd, HV_X86_RCX); + uint32_t edx = (uint32_t)rreg(cpu->accel->fd, HV_X86_RDX); if (ecx) { macvm_set_rip(cpu, rip + ins_len); break; } env->xcr0 = ((uint64_t)edx << 32) | eax; - wreg(cpu->hvf->fd, HV_X86_XCR0, env->xcr0 | 1); + wreg(cpu->accel->fd, HV_X86_XCR0, env->xcr0 | 1); macvm_set_rip(cpu, rip + ins_len); break; } @@ -609,11 +609,11 @@ int hvf_vcpu_exec(CPUState *cpu) switch (cr) { case 0x0: { - macvm_set_cr0(cpu->hvf->fd, RRX(env, reg)); + macvm_set_cr0(cpu->accel->fd, RRX(env, reg)); break; } case 4: { - macvm_set_cr4(cpu->hvf->fd, RRX(env, reg)); + macvm_set_cr4(cpu->accel->fd, RRX(env, reg)); break; } case 8: { @@ -649,7 +649,7 @@ int hvf_vcpu_exec(CPUState *cpu) break; } case EXIT_REASON_TASK_SWITCH: { - uint64_t vinfo = rvmcs(cpu->hvf->fd, VMCS_IDT_VECTORING_INFO); + uint64_t vinfo = rvmcs(cpu->accel->fd, VMCS_IDT_VECTORING_INFO); x68_segment_selector sel = {.sel = exit_qual & 0xffff}; vmx_handle_task_switch(cpu, sel, (exit_qual >> 30) & 0x3, vinfo & VMCS_INTR_VALID, vinfo & VECTORING_INFO_VECTOR_MASK, vinfo @@ -662,8 +662,8 @@ int hvf_vcpu_exec(CPUState *cpu) break; } case EXIT_REASON_RDPMC: - wreg(cpu->hvf->fd, HV_X86_RAX, 0); - wreg(cpu->hvf->fd, HV_X86_RDX, 0); + wreg(cpu->accel->fd, HV_X86_RAX, 0); + wreg(cpu->accel->fd, HV_X86_RDX, 0); macvm_set_rip(cpu, rip + ins_len); break; case VMX_REASON_VMCALL: diff --git a/target/i386/hvf/x86.c b/target/i386/hvf/x86.c index d086584f26..8ceea6398e 100644 --- a/target/i386/hvf/x86.c +++ b/target/i386/hvf/x86.c @@ -61,11 +61,11 @@ bool x86_read_segment_descriptor(struct CPUState *cpu, } if (GDT_SEL == sel.ti) { - base = rvmcs(cpu->hvf->fd, VMCS_GUEST_GDTR_BASE); - limit = rvmcs(cpu->hvf->fd, VMCS_GUEST_GDTR_LIMIT); + base = rvmcs(cpu->accel->fd, VMCS_GUEST_GDTR_BASE); + limit = rvmcs(cpu->accel->fd, VMCS_GUEST_GDTR_LIMIT); } else { - base = rvmcs(cpu->hvf->fd, VMCS_GUEST_LDTR_BASE); - limit = rvmcs(cpu->hvf->fd, VMCS_GUEST_LDTR_LIMIT); + base = rvmcs(cpu->accel->fd, VMCS_GUEST_LDTR_BASE); + limit = rvmcs(cpu->accel->fd, VMCS_GUEST_LDTR_LIMIT); } if (sel.index * 8 >= limit) { @@ -84,11 +84,11 @@ bool x86_write_segment_descriptor(struct CPUState *cpu, uint32_t limit; if (GDT_SEL == sel.ti) { - base = rvmcs(cpu->hvf->fd, VMCS_GUEST_GDTR_BASE); - limit = rvmcs(cpu->hvf->fd, VMCS_GUEST_GDTR_LIMIT); + base = rvmcs(cpu->accel->fd, VMCS_GUEST_GDTR_BASE); + limit = rvmcs(cpu->accel->fd, VMCS_GUEST_GDTR_LIMIT); } else { - base = rvmcs(cpu->hvf->fd, VMCS_GUEST_LDTR_BASE); - limit = rvmcs(cpu->hvf->fd, VMCS_GUEST_LDTR_LIMIT); + base = rvmcs(cpu->accel->fd, VMCS_GUEST_LDTR_BASE); + limit = rvmcs(cpu->accel->fd, VMCS_GUEST_LDTR_LIMIT); } if (sel.index * 8 >= limit) { @@ -102,8 +102,8 @@ bool x86_write_segment_descriptor(struct CPUState *cpu, bool x86_read_call_gate(struct CPUState *cpu, struct x86_call_gate *idt_desc, int gate) { - target_ulong base = rvmcs(cpu->hvf->fd, VMCS_GUEST_IDTR_BASE); - uint32_t limit = rvmcs(cpu->hvf->fd, VMCS_GUEST_IDTR_LIMIT); + target_ulong base = rvmcs(cpu->accel->fd, VMCS_GUEST_IDTR_BASE); + uint32_t limit = rvmcs(cpu->accel->fd, VMCS_GUEST_IDTR_LIMIT); memset(idt_desc, 0, sizeof(*idt_desc)); if (gate * 8 >= limit) { @@ -117,7 +117,7 @@ bool x86_read_call_gate(struct CPUState *cpu, struct x86_call_gate *idt_desc, bool x86_is_protected(struct CPUState *cpu) { - uint64_t cr0 = rvmcs(cpu->hvf->fd, VMCS_GUEST_CR0); + uint64_t cr0 = rvmcs(cpu->accel->fd, VMCS_GUEST_CR0); return cr0 & CR0_PE_MASK; } @@ -135,7 +135,7 @@ bool x86_is_v8086(struct CPUState *cpu) bool x86_is_long_mode(struct CPUState *cpu) { - return rvmcs(cpu->hvf->fd, VMCS_GUEST_IA32_EFER) & MSR_EFER_LMA; + return rvmcs(cpu->accel->fd, VMCS_GUEST_IA32_EFER) & MSR_EFER_LMA; } bool x86_is_long64_mode(struct CPUState *cpu) @@ -148,13 +148,13 @@ bool x86_is_long64_mode(struct CPUState *cpu) bool x86_is_paging_mode(struct CPUState *cpu) { - uint64_t cr0 = rvmcs(cpu->hvf->fd, VMCS_GUEST_CR0); + uint64_t cr0 = rvmcs(cpu->accel->fd, VMCS_GUEST_CR0); return cr0 & CR0_PG_MASK; } bool x86_is_pae_enabled(struct CPUState *cpu) { - uint64_t cr4 = rvmcs(cpu->hvf->fd, VMCS_GUEST_CR4); + uint64_t cr4 = rvmcs(cpu->accel->fd, VMCS_GUEST_CR4); return cr4 & CR4_PAE_MASK; } diff --git a/target/i386/hvf/x86_descr.c b/target/i386/hvf/x86_descr.c index a484942cfc..c2d2e9ee84 100644 --- a/target/i386/hvf/x86_descr.c +++ b/target/i386/hvf/x86_descr.c @@ -47,47 +47,47 @@ static const struct vmx_segment_field { uint32_t vmx_read_segment_limit(CPUState *cpu, X86Seg seg) { - return (uint32_t)rvmcs(cpu->hvf->fd, vmx_segment_fields[seg].limit); + return (uint32_t)rvmcs(cpu->accel->fd, vmx_segment_fields[seg].limit); } uint32_t vmx_read_segment_ar(CPUState *cpu, X86Seg seg) { - return (uint32_t)rvmcs(cpu->hvf->fd, vmx_segment_fields[seg].ar_bytes); + return (uint32_t)rvmcs(cpu->accel->fd, vmx_segment_fields[seg].ar_bytes); } uint64_t vmx_read_segment_base(CPUState *cpu, X86Seg seg) { - return rvmcs(cpu->hvf->fd, vmx_segment_fields[seg].base); + return rvmcs(cpu->accel->fd, vmx_segment_fields[seg].base); } x68_segment_selector vmx_read_segment_selector(CPUState *cpu, X86Seg seg) { x68_segment_selector sel; - sel.sel = rvmcs(cpu->hvf->fd, vmx_segment_fields[seg].selector); + sel.sel = rvmcs(cpu->accel->fd, vmx_segment_fields[seg].selector); return sel; } void vmx_write_segment_selector(struct CPUState *cpu, x68_segment_selector selector, X86Seg seg) { - wvmcs(cpu->hvf->fd, vmx_segment_fields[seg].selector, selector.sel); + wvmcs(cpu->accel->fd, vmx_segment_fields[seg].selector, selector.sel); } void vmx_read_segment_descriptor(struct CPUState *cpu, struct vmx_segment *desc, X86Seg seg) { - desc->sel = rvmcs(cpu->hvf->fd, vmx_segment_fields[seg].selector); - desc->base = rvmcs(cpu->hvf->fd, vmx_segment_fields[seg].base); - desc->limit = rvmcs(cpu->hvf->fd, vmx_segment_fields[seg].limit); - desc->ar = rvmcs(cpu->hvf->fd, vmx_segment_fields[seg].ar_bytes); + desc->sel = rvmcs(cpu->accel->fd, vmx_segment_fields[seg].selector); + desc->base = rvmcs(cpu->accel->fd, vmx_segment_fields[seg].base); + desc->limit = rvmcs(cpu->accel->fd, vmx_segment_fields[seg].limit); + desc->ar = rvmcs(cpu->accel->fd, vmx_segment_fields[seg].ar_bytes); } void vmx_write_segment_descriptor(CPUState *cpu, struct vmx_segment *desc, X86Seg seg) { const struct vmx_segment_field *sf = &vmx_segment_fields[seg]; - wvmcs(cpu->hvf->fd, sf->base, desc->base); - wvmcs(cpu->hvf->fd, sf->limit, desc->limit); - wvmcs(cpu->hvf->fd, sf->selector, desc->sel); - wvmcs(cpu->hvf->fd, sf->ar_bytes, desc->ar); + wvmcs(cpu->accel->fd, sf->base, desc->base); + wvmcs(cpu->accel->fd, sf->limit, desc->limit); + wvmcs(cpu->accel->fd, sf->selector, desc->sel); + wvmcs(cpu->accel->fd, sf->ar_bytes, desc->ar); } void x86_segment_descriptor_to_vmx(struct CPUState *cpu, x68_segment_selector selector, struct x86_segment_descriptor *desc, struct vmx_segment *vmx_desc) diff --git a/target/i386/hvf/x86_emu.c b/target/i386/hvf/x86_emu.c index f5704f63e8..ccda568478 100644 --- a/target/i386/hvf/x86_emu.c +++ b/target/i386/hvf/x86_emu.c @@ -673,7 +673,7 @@ void simulate_rdmsr(struct CPUState *cpu) switch (msr) { case MSR_IA32_TSC: - val = rdtscp() + rvmcs(cpu->hvf->fd, VMCS_TSC_OFFSET); + val = rdtscp() + rvmcs(cpu->accel->fd, VMCS_TSC_OFFSET); break; case MSR_IA32_APICBASE: val = cpu_get_apic_base(X86_CPU(cpu)->apic_state); @@ -682,16 +682,16 @@ void simulate_rdmsr(struct CPUState *cpu) val = x86_cpu->ucode_rev; break; case MSR_EFER: - val = rvmcs(cpu->hvf->fd, VMCS_GUEST_IA32_EFER); + val = rvmcs(cpu->accel->fd, VMCS_GUEST_IA32_EFER); break; case MSR_FSBASE: - val = rvmcs(cpu->hvf->fd, VMCS_GUEST_FS_BASE); + val = rvmcs(cpu->accel->fd, VMCS_GUEST_FS_BASE); break; case MSR_GSBASE: - val = rvmcs(cpu->hvf->fd, VMCS_GUEST_GS_BASE); + val = rvmcs(cpu->accel->fd, VMCS_GUEST_GS_BASE); break; case MSR_KERNELGSBASE: - val = rvmcs(cpu->hvf->fd, VMCS_HOST_FS_BASE); + val = rvmcs(cpu->accel->fd, VMCS_HOST_FS_BASE); break; case MSR_STAR: abort(); @@ -779,13 +779,13 @@ void simulate_wrmsr(struct CPUState *cpu) cpu_set_apic_base(X86_CPU(cpu)->apic_state, data); break; case MSR_FSBASE: - wvmcs(cpu->hvf->fd, VMCS_GUEST_FS_BASE, data); + wvmcs(cpu->accel->fd, VMCS_GUEST_FS_BASE, data); break; case MSR_GSBASE: - wvmcs(cpu->hvf->fd, VMCS_GUEST_GS_BASE, data); + wvmcs(cpu->accel->fd, VMCS_GUEST_GS_BASE, data); break; case MSR_KERNELGSBASE: - wvmcs(cpu->hvf->fd, VMCS_HOST_FS_BASE, data); + wvmcs(cpu->accel->fd, VMCS_HOST_FS_BASE, data); break; case MSR_STAR: abort(); @@ -798,9 +798,9 @@ void simulate_wrmsr(struct CPUState *cpu) break; case MSR_EFER: /*printf("new efer %llx\n", EFER(cpu));*/ - wvmcs(cpu->hvf->fd, VMCS_GUEST_IA32_EFER, data); + wvmcs(cpu->accel->fd, VMCS_GUEST_IA32_EFER, data); if (data & MSR_EFER_NXE) { - hv_vcpu_invalidate_tlb(cpu->hvf->fd); + hv_vcpu_invalidate_tlb(cpu->accel->fd); } break; case MSR_MTRRphysBase(0): @@ -1424,21 +1424,21 @@ void load_regs(struct CPUState *cpu) CPUX86State *env = &x86_cpu->env; int i = 0; - RRX(env, R_EAX) = rreg(cpu->hvf->fd, HV_X86_RAX); - RRX(env, R_EBX) = rreg(cpu->hvf->fd, HV_X86_RBX); - RRX(env, R_ECX) = rreg(cpu->hvf->fd, HV_X86_RCX); - RRX(env, R_EDX) = rreg(cpu->hvf->fd, HV_X86_RDX); - RRX(env, R_ESI) = rreg(cpu->hvf->fd, HV_X86_RSI); - RRX(env, R_EDI) = rreg(cpu->hvf->fd, HV_X86_RDI); - RRX(env, R_ESP) = rreg(cpu->hvf->fd, HV_X86_RSP); - RRX(env, R_EBP) = rreg(cpu->hvf->fd, HV_X86_RBP); + RRX(env, R_EAX) = rreg(cpu->accel->fd, HV_X86_RAX); + RRX(env, R_EBX) = rreg(cpu->accel->fd, HV_X86_RBX); + RRX(env, R_ECX) = rreg(cpu->accel->fd, HV_X86_RCX); + RRX(env, R_EDX) = rreg(cpu->accel->fd, HV_X86_RDX); + RRX(env, R_ESI) = rreg(cpu->accel->fd, HV_X86_RSI); + RRX(env, R_EDI) = rreg(cpu->accel->fd, HV_X86_RDI); + RRX(env, R_ESP) = rreg(cpu->accel->fd, HV_X86_RSP); + RRX(env, R_EBP) = rreg(cpu->accel->fd, HV_X86_RBP); for (i = 8; i < 16; i++) { - RRX(env, i) = rreg(cpu->hvf->fd, HV_X86_RAX + i); + RRX(env, i) = rreg(cpu->accel->fd, HV_X86_RAX + i); } - env->eflags = rreg(cpu->hvf->fd, HV_X86_RFLAGS); + env->eflags = rreg(cpu->accel->fd, HV_X86_RFLAGS); rflags_to_lflags(env); - env->eip = rreg(cpu->hvf->fd, HV_X86_RIP); + env->eip = rreg(cpu->accel->fd, HV_X86_RIP); } void store_regs(struct CPUState *cpu) @@ -1447,20 +1447,20 @@ void store_regs(struct CPUState *cpu) CPUX86State *env = &x86_cpu->env; int i = 0; - wreg(cpu->hvf->fd, HV_X86_RAX, RAX(env)); - wreg(cpu->hvf->fd, HV_X86_RBX, RBX(env)); - wreg(cpu->hvf->fd, HV_X86_RCX, RCX(env)); - wreg(cpu->hvf->fd, HV_X86_RDX, RDX(env)); - wreg(cpu->hvf->fd, HV_X86_RSI, RSI(env)); - wreg(cpu->hvf->fd, HV_X86_RDI, RDI(env)); - wreg(cpu->hvf->fd, HV_X86_RBP, RBP(env)); - wreg(cpu->hvf->fd, HV_X86_RSP, RSP(env)); + wreg(cpu->accel->fd, HV_X86_RAX, RAX(env)); + wreg(cpu->accel->fd, HV_X86_RBX, RBX(env)); + wreg(cpu->accel->fd, HV_X86_RCX, RCX(env)); + wreg(cpu->accel->fd, HV_X86_RDX, RDX(env)); + wreg(cpu->accel->fd, HV_X86_RSI, RSI(env)); + wreg(cpu->accel->fd, HV_X86_RDI, RDI(env)); + wreg(cpu->accel->fd, HV_X86_RBP, RBP(env)); + wreg(cpu->accel->fd, HV_X86_RSP, RSP(env)); for (i = 8; i < 16; i++) { - wreg(cpu->hvf->fd, HV_X86_RAX + i, RRX(env, i)); + wreg(cpu->accel->fd, HV_X86_RAX + i, RRX(env, i)); } lflags_to_rflags(env); - wreg(cpu->hvf->fd, HV_X86_RFLAGS, env->eflags); + wreg(cpu->accel->fd, HV_X86_RFLAGS, env->eflags); macvm_set_rip(cpu, env->eip); } diff --git a/target/i386/hvf/x86_mmu.c b/target/i386/hvf/x86_mmu.c index 96d117567e..8cd08622a1 100644 --- a/target/i386/hvf/x86_mmu.c +++ b/target/i386/hvf/x86_mmu.c @@ -126,7 +126,7 @@ static bool test_pt_entry(struct CPUState *cpu, struct gpt_translation *pt, pt->err_code |= MMU_PAGE_PT; } - uint32_t cr0 = rvmcs(cpu->hvf->fd, VMCS_GUEST_CR0); + uint32_t cr0 = rvmcs(cpu->accel->fd, VMCS_GUEST_CR0); /* check protection */ if (cr0 & CR0_WP_MASK) { if (pt->write_access && !pte_write_access(pte)) { @@ -171,7 +171,7 @@ static bool walk_gpt(struct CPUState *cpu, target_ulong addr, int err_code, { int top_level, level; bool is_large = false; - target_ulong cr3 = rvmcs(cpu->hvf->fd, VMCS_GUEST_CR3); + target_ulong cr3 = rvmcs(cpu->accel->fd, VMCS_GUEST_CR3); uint64_t page_mask = pae ? PAE_PTE_PAGE_MASK : LEGACY_PTE_PAGE_MASK; memset(pt, 0, sizeof(*pt)); diff --git a/target/i386/hvf/x86_task.c b/target/i386/hvf/x86_task.c index beaeec0687..f09bfbdda5 100644 --- a/target/i386/hvf/x86_task.c +++ b/target/i386/hvf/x86_task.c @@ -61,7 +61,7 @@ static void load_state_from_tss32(CPUState *cpu, struct x86_tss_segment32 *tss) X86CPU *x86_cpu = X86_CPU(cpu); CPUX86State *env = &x86_cpu->env; - wvmcs(cpu->hvf->fd, VMCS_GUEST_CR3, tss->cr3); + wvmcs(cpu->accel->fd, VMCS_GUEST_CR3, tss->cr3); env->eip = tss->eip; env->eflags = tss->eflags | 2; @@ -110,11 +110,11 @@ static int task_switch_32(CPUState *cpu, x68_segment_selector tss_sel, x68_segme void vmx_handle_task_switch(CPUState *cpu, x68_segment_selector tss_sel, int reason, bool gate_valid, uint8_t gate, uint64_t gate_type) { - uint64_t rip = rreg(cpu->hvf->fd, HV_X86_RIP); + uint64_t rip = rreg(cpu->accel->fd, HV_X86_RIP); if (!gate_valid || (gate_type != VMCS_INTR_T_HWEXCEPTION && gate_type != VMCS_INTR_T_HWINTR && gate_type != VMCS_INTR_T_NMI)) { - int ins_len = rvmcs(cpu->hvf->fd, VMCS_EXIT_INSTRUCTION_LENGTH); + int ins_len = rvmcs(cpu->accel->fd, VMCS_EXIT_INSTRUCTION_LENGTH); macvm_set_rip(cpu, rip + ins_len); return; } @@ -173,12 +173,12 @@ void vmx_handle_task_switch(CPUState *cpu, x68_segment_selector tss_sel, int rea //ret = task_switch_16(cpu, tss_sel, old_tss_sel, old_tss_base, &next_tss_desc); VM_PANIC("task_switch_16"); - macvm_set_cr0(cpu->hvf->fd, rvmcs(cpu->hvf->fd, VMCS_GUEST_CR0) | + macvm_set_cr0(cpu->accel->fd, rvmcs(cpu->accel->fd, VMCS_GUEST_CR0) | CR0_TS_MASK); x86_segment_descriptor_to_vmx(cpu, tss_sel, &next_tss_desc, &vmx_seg); vmx_write_segment_descriptor(cpu, &vmx_seg, R_TR); store_regs(cpu); - hv_vcpu_invalidate_tlb(cpu->hvf->fd); + hv_vcpu_invalidate_tlb(cpu->accel->fd); } diff --git a/target/i386/hvf/x86hvf.c b/target/i386/hvf/x86hvf.c index 92dfd26a01..3b1ef5f49a 100644 --- a/target/i386/hvf/x86hvf.c +++ b/target/i386/hvf/x86hvf.c @@ -77,7 +77,7 @@ void hvf_put_xsave(CPUState *cs) x86_cpu_xsave_all_areas(X86_CPU(cs), xsave, xsave_len); - if (hv_vcpu_write_fpstate(cs->hvf->fd, xsave, xsave_len)) { + if (hv_vcpu_write_fpstate(cs->accel->fd, xsave, xsave_len)) { abort(); } } @@ -87,19 +87,19 @@ static void hvf_put_segments(CPUState *cs) CPUX86State *env = &X86_CPU(cs)->env; struct vmx_segment seg; - wvmcs(cs->hvf->fd, VMCS_GUEST_IDTR_LIMIT, env->idt.limit); - wvmcs(cs->hvf->fd, VMCS_GUEST_IDTR_BASE, env->idt.base); + wvmcs(cs->accel->fd, VMCS_GUEST_IDTR_LIMIT, env->idt.limit); + wvmcs(cs->accel->fd, VMCS_GUEST_IDTR_BASE, env->idt.base); - wvmcs(cs->hvf->fd, VMCS_GUEST_GDTR_LIMIT, env->gdt.limit); - wvmcs(cs->hvf->fd, VMCS_GUEST_GDTR_BASE, env->gdt.base); + wvmcs(cs->accel->fd, VMCS_GUEST_GDTR_LIMIT, env->gdt.limit); + wvmcs(cs->accel->fd, VMCS_GUEST_GDTR_BASE, env->gdt.base); - /* wvmcs(cs->hvf->fd, VMCS_GUEST_CR2, env->cr[2]); */ - wvmcs(cs->hvf->fd, VMCS_GUEST_CR3, env->cr[3]); + /* wvmcs(cs->accel->fd, VMCS_GUEST_CR2, env->cr[2]); */ + wvmcs(cs->accel->fd, VMCS_GUEST_CR3, env->cr[3]); vmx_update_tpr(cs); - wvmcs(cs->hvf->fd, VMCS_GUEST_IA32_EFER, env->efer); + wvmcs(cs->accel->fd, VMCS_GUEST_IA32_EFER, env->efer); - macvm_set_cr4(cs->hvf->fd, env->cr[4]); - macvm_set_cr0(cs->hvf->fd, env->cr[0]); + macvm_set_cr4(cs->accel->fd, env->cr[4]); + macvm_set_cr0(cs->accel->fd, env->cr[0]); hvf_set_segment(cs, &seg, &env->segs[R_CS], false); vmx_write_segment_descriptor(cs, &seg, R_CS); @@ -130,24 +130,24 @@ void hvf_put_msrs(CPUState *cs) { CPUX86State *env = &X86_CPU(cs)->env; - hv_vcpu_write_msr(cs->hvf->fd, MSR_IA32_SYSENTER_CS, + hv_vcpu_write_msr(cs->accel->fd, MSR_IA32_SYSENTER_CS, env->sysenter_cs); - hv_vcpu_write_msr(cs->hvf->fd, MSR_IA32_SYSENTER_ESP, + hv_vcpu_write_msr(cs->accel->fd, MSR_IA32_SYSENTER_ESP, env->sysenter_esp); - hv_vcpu_write_msr(cs->hvf->fd, MSR_IA32_SYSENTER_EIP, + hv_vcpu_write_msr(cs->accel->fd, MSR_IA32_SYSENTER_EIP, env->sysenter_eip); - hv_vcpu_write_msr(cs->hvf->fd, MSR_STAR, env->star); + hv_vcpu_write_msr(cs->accel->fd, MSR_STAR, env->star); #ifdef TARGET_X86_64 - hv_vcpu_write_msr(cs->hvf->fd, MSR_CSTAR, env->cstar); - hv_vcpu_write_msr(cs->hvf->fd, MSR_KERNELGSBASE, env->kernelgsbase); - hv_vcpu_write_msr(cs->hvf->fd, MSR_FMASK, env->fmask); - hv_vcpu_write_msr(cs->hvf->fd, MSR_LSTAR, env->lstar); + hv_vcpu_write_msr(cs->accel->fd, MSR_CSTAR, env->cstar); + hv_vcpu_write_msr(cs->accel->fd, MSR_KERNELGSBASE, env->kernelgsbase); + hv_vcpu_write_msr(cs->accel->fd, MSR_FMASK, env->fmask); + hv_vcpu_write_msr(cs->accel->fd, MSR_LSTAR, env->lstar); #endif - hv_vcpu_write_msr(cs->hvf->fd, MSR_GSBASE, env->segs[R_GS].base); - hv_vcpu_write_msr(cs->hvf->fd, MSR_FSBASE, env->segs[R_FS].base); + hv_vcpu_write_msr(cs->accel->fd, MSR_GSBASE, env->segs[R_GS].base); + hv_vcpu_write_msr(cs->accel->fd, MSR_FSBASE, env->segs[R_FS].base); } @@ -156,7 +156,7 @@ void hvf_get_xsave(CPUState *cs) void *xsave = X86_CPU(cs)->env.xsave_buf; uint32_t xsave_len = X86_CPU(cs)->env.xsave_buf_len; - if (hv_vcpu_read_fpstate(cs->hvf->fd, xsave, xsave_len)) { + if (hv_vcpu_read_fpstate(cs->accel->fd, xsave, xsave_len)) { abort(); } @@ -195,17 +195,17 @@ static void hvf_get_segments(CPUState *cs) vmx_read_segment_descriptor(cs, &seg, R_LDTR); hvf_get_segment(&env->ldt, &seg); - env->idt.limit = rvmcs(cs->hvf->fd, VMCS_GUEST_IDTR_LIMIT); - env->idt.base = rvmcs(cs->hvf->fd, VMCS_GUEST_IDTR_BASE); - env->gdt.limit = rvmcs(cs->hvf->fd, VMCS_GUEST_GDTR_LIMIT); - env->gdt.base = rvmcs(cs->hvf->fd, VMCS_GUEST_GDTR_BASE); + env->idt.limit = rvmcs(cs->accel->fd, VMCS_GUEST_IDTR_LIMIT); + env->idt.base = rvmcs(cs->accel->fd, VMCS_GUEST_IDTR_BASE); + env->gdt.limit = rvmcs(cs->accel->fd, VMCS_GUEST_GDTR_LIMIT); + env->gdt.base = rvmcs(cs->accel->fd, VMCS_GUEST_GDTR_BASE); - env->cr[0] = rvmcs(cs->hvf->fd, VMCS_GUEST_CR0); + env->cr[0] = rvmcs(cs->accel->fd, VMCS_GUEST_CR0); env->cr[2] = 0; - env->cr[3] = rvmcs(cs->hvf->fd, VMCS_GUEST_CR3); - env->cr[4] = rvmcs(cs->hvf->fd, VMCS_GUEST_CR4); + env->cr[3] = rvmcs(cs->accel->fd, VMCS_GUEST_CR3); + env->cr[4] = rvmcs(cs->accel->fd, VMCS_GUEST_CR4); - env->efer = rvmcs(cs->hvf->fd, VMCS_GUEST_IA32_EFER); + env->efer = rvmcs(cs->accel->fd, VMCS_GUEST_IA32_EFER); } void hvf_get_msrs(CPUState *cs) @@ -213,27 +213,27 @@ void hvf_get_msrs(CPUState *cs) CPUX86State *env = &X86_CPU(cs)->env; uint64_t tmp; - hv_vcpu_read_msr(cs->hvf->fd, MSR_IA32_SYSENTER_CS, &tmp); + hv_vcpu_read_msr(cs->accel->fd, MSR_IA32_SYSENTER_CS, &tmp); env->sysenter_cs = tmp; - hv_vcpu_read_msr(cs->hvf->fd, MSR_IA32_SYSENTER_ESP, &tmp); + hv_vcpu_read_msr(cs->accel->fd, MSR_IA32_SYSENTER_ESP, &tmp); env->sysenter_esp = tmp; - hv_vcpu_read_msr(cs->hvf->fd, MSR_IA32_SYSENTER_EIP, &tmp); + hv_vcpu_read_msr(cs->accel->fd, MSR_IA32_SYSENTER_EIP, &tmp); env->sysenter_eip = tmp; - hv_vcpu_read_msr(cs->hvf->fd, MSR_STAR, &env->star); + hv_vcpu_read_msr(cs->accel->fd, MSR_STAR, &env->star); #ifdef TARGET_X86_64 - hv_vcpu_read_msr(cs->hvf->fd, MSR_CSTAR, &env->cstar); - hv_vcpu_read_msr(cs->hvf->fd, MSR_KERNELGSBASE, &env->kernelgsbase); - hv_vcpu_read_msr(cs->hvf->fd, MSR_FMASK, &env->fmask); - hv_vcpu_read_msr(cs->hvf->fd, MSR_LSTAR, &env->lstar); + hv_vcpu_read_msr(cs->accel->fd, MSR_CSTAR, &env->cstar); + hv_vcpu_read_msr(cs->accel->fd, MSR_KERNELGSBASE, &env->kernelgsbase); + hv_vcpu_read_msr(cs->accel->fd, MSR_FMASK, &env->fmask); + hv_vcpu_read_msr(cs->accel->fd, MSR_LSTAR, &env->lstar); #endif - hv_vcpu_read_msr(cs->hvf->fd, MSR_IA32_APICBASE, &tmp); + hv_vcpu_read_msr(cs->accel->fd, MSR_IA32_APICBASE, &tmp); - env->tsc = rdtscp() + rvmcs(cs->hvf->fd, VMCS_TSC_OFFSET); + env->tsc = rdtscp() + rvmcs(cs->accel->fd, VMCS_TSC_OFFSET); } int hvf_put_registers(CPUState *cs) @@ -241,26 +241,26 @@ int hvf_put_registers(CPUState *cs) X86CPU *x86cpu = X86_CPU(cs); CPUX86State *env = &x86cpu->env; - wreg(cs->hvf->fd, HV_X86_RAX, env->regs[R_EAX]); - wreg(cs->hvf->fd, HV_X86_RBX, env->regs[R_EBX]); - wreg(cs->hvf->fd, HV_X86_RCX, env->regs[R_ECX]); - wreg(cs->hvf->fd, HV_X86_RDX, env->regs[R_EDX]); - wreg(cs->hvf->fd, HV_X86_RBP, env->regs[R_EBP]); - wreg(cs->hvf->fd, HV_X86_RSP, env->regs[R_ESP]); - wreg(cs->hvf->fd, HV_X86_RSI, env->regs[R_ESI]); - wreg(cs->hvf->fd, HV_X86_RDI, env->regs[R_EDI]); - wreg(cs->hvf->fd, HV_X86_R8, env->regs[8]); - wreg(cs->hvf->fd, HV_X86_R9, env->regs[9]); - wreg(cs->hvf->fd, HV_X86_R10, env->regs[10]); - wreg(cs->hvf->fd, HV_X86_R11, env->regs[11]); - wreg(cs->hvf->fd, HV_X86_R12, env->regs[12]); - wreg(cs->hvf->fd, HV_X86_R13, env->regs[13]); - wreg(cs->hvf->fd, HV_X86_R14, env->regs[14]); - wreg(cs->hvf->fd, HV_X86_R15, env->regs[15]); - wreg(cs->hvf->fd, HV_X86_RFLAGS, env->eflags); - wreg(cs->hvf->fd, HV_X86_RIP, env->eip); + wreg(cs->accel->fd, HV_X86_RAX, env->regs[R_EAX]); + wreg(cs->accel->fd, HV_X86_RBX, env->regs[R_EBX]); + wreg(cs->accel->fd, HV_X86_RCX, env->regs[R_ECX]); + wreg(cs->accel->fd, HV_X86_RDX, env->regs[R_EDX]); + wreg(cs->accel->fd, HV_X86_RBP, env->regs[R_EBP]); + wreg(cs->accel->fd, HV_X86_RSP, env->regs[R_ESP]); + wreg(cs->accel->fd, HV_X86_RSI, env->regs[R_ESI]); + wreg(cs->accel->fd, HV_X86_RDI, env->regs[R_EDI]); + wreg(cs->accel->fd, HV_X86_R8, env->regs[8]); + wreg(cs->accel->fd, HV_X86_R9, env->regs[9]); + wreg(cs->accel->fd, HV_X86_R10, env->regs[10]); + wreg(cs->accel->fd, HV_X86_R11, env->regs[11]); + wreg(cs->accel->fd, HV_X86_R12, env->regs[12]); + wreg(cs->accel->fd, HV_X86_R13, env->regs[13]); + wreg(cs->accel->fd, HV_X86_R14, env->regs[14]); + wreg(cs->accel->fd, HV_X86_R15, env->regs[15]); + wreg(cs->accel->fd, HV_X86_RFLAGS, env->eflags); + wreg(cs->accel->fd, HV_X86_RIP, env->eip); - wreg(cs->hvf->fd, HV_X86_XCR0, env->xcr0); + wreg(cs->accel->fd, HV_X86_XCR0, env->xcr0); hvf_put_xsave(cs); @@ -268,14 +268,14 @@ int hvf_put_registers(CPUState *cs) hvf_put_msrs(cs); - wreg(cs->hvf->fd, HV_X86_DR0, env->dr[0]); - wreg(cs->hvf->fd, HV_X86_DR1, env->dr[1]); - wreg(cs->hvf->fd, HV_X86_DR2, env->dr[2]); - wreg(cs->hvf->fd, HV_X86_DR3, env->dr[3]); - wreg(cs->hvf->fd, HV_X86_DR4, env->dr[4]); - wreg(cs->hvf->fd, HV_X86_DR5, env->dr[5]); - wreg(cs->hvf->fd, HV_X86_DR6, env->dr[6]); - wreg(cs->hvf->fd, HV_X86_DR7, env->dr[7]); + wreg(cs->accel->fd, HV_X86_DR0, env->dr[0]); + wreg(cs->accel->fd, HV_X86_DR1, env->dr[1]); + wreg(cs->accel->fd, HV_X86_DR2, env->dr[2]); + wreg(cs->accel->fd, HV_X86_DR3, env->dr[3]); + wreg(cs->accel->fd, HV_X86_DR4, env->dr[4]); + wreg(cs->accel->fd, HV_X86_DR5, env->dr[5]); + wreg(cs->accel->fd, HV_X86_DR6, env->dr[6]); + wreg(cs->accel->fd, HV_X86_DR7, env->dr[7]); return 0; } @@ -285,40 +285,40 @@ int hvf_get_registers(CPUState *cs) X86CPU *x86cpu = X86_CPU(cs); CPUX86State *env = &x86cpu->env; - env->regs[R_EAX] = rreg(cs->hvf->fd, HV_X86_RAX); - env->regs[R_EBX] = rreg(cs->hvf->fd, HV_X86_RBX); - env->regs[R_ECX] = rreg(cs->hvf->fd, HV_X86_RCX); - env->regs[R_EDX] = rreg(cs->hvf->fd, HV_X86_RDX); - env->regs[R_EBP] = rreg(cs->hvf->fd, HV_X86_RBP); - env->regs[R_ESP] = rreg(cs->hvf->fd, HV_X86_RSP); - env->regs[R_ESI] = rreg(cs->hvf->fd, HV_X86_RSI); - env->regs[R_EDI] = rreg(cs->hvf->fd, HV_X86_RDI); - env->regs[8] = rreg(cs->hvf->fd, HV_X86_R8); - env->regs[9] = rreg(cs->hvf->fd, HV_X86_R9); - env->regs[10] = rreg(cs->hvf->fd, HV_X86_R10); - env->regs[11] = rreg(cs->hvf->fd, HV_X86_R11); - env->regs[12] = rreg(cs->hvf->fd, HV_X86_R12); - env->regs[13] = rreg(cs->hvf->fd, HV_X86_R13); - env->regs[14] = rreg(cs->hvf->fd, HV_X86_R14); - env->regs[15] = rreg(cs->hvf->fd, HV_X86_R15); + env->regs[R_EAX] = rreg(cs->accel->fd, HV_X86_RAX); + env->regs[R_EBX] = rreg(cs->accel->fd, HV_X86_RBX); + env->regs[R_ECX] = rreg(cs->accel->fd, HV_X86_RCX); + env->regs[R_EDX] = rreg(cs->accel->fd, HV_X86_RDX); + env->regs[R_EBP] = rreg(cs->accel->fd, HV_X86_RBP); + env->regs[R_ESP] = rreg(cs->accel->fd, HV_X86_RSP); + env->regs[R_ESI] = rreg(cs->accel->fd, HV_X86_RSI); + env->regs[R_EDI] = rreg(cs->accel->fd, HV_X86_RDI); + env->regs[8] = rreg(cs->accel->fd, HV_X86_R8); + env->regs[9] = rreg(cs->accel->fd, HV_X86_R9); + env->regs[10] = rreg(cs->accel->fd, HV_X86_R10); + env->regs[11] = rreg(cs->accel->fd, HV_X86_R11); + env->regs[12] = rreg(cs->accel->fd, HV_X86_R12); + env->regs[13] = rreg(cs->accel->fd, HV_X86_R13); + env->regs[14] = rreg(cs->accel->fd, HV_X86_R14); + env->regs[15] = rreg(cs->accel->fd, HV_X86_R15); - env->eflags = rreg(cs->hvf->fd, HV_X86_RFLAGS); - env->eip = rreg(cs->hvf->fd, HV_X86_RIP); + env->eflags = rreg(cs->accel->fd, HV_X86_RFLAGS); + env->eip = rreg(cs->accel->fd, HV_X86_RIP); hvf_get_xsave(cs); - env->xcr0 = rreg(cs->hvf->fd, HV_X86_XCR0); + env->xcr0 = rreg(cs->accel->fd, HV_X86_XCR0); hvf_get_segments(cs); hvf_get_msrs(cs); - env->dr[0] = rreg(cs->hvf->fd, HV_X86_DR0); - env->dr[1] = rreg(cs->hvf->fd, HV_X86_DR1); - env->dr[2] = rreg(cs->hvf->fd, HV_X86_DR2); - env->dr[3] = rreg(cs->hvf->fd, HV_X86_DR3); - env->dr[4] = rreg(cs->hvf->fd, HV_X86_DR4); - env->dr[5] = rreg(cs->hvf->fd, HV_X86_DR5); - env->dr[6] = rreg(cs->hvf->fd, HV_X86_DR6); - env->dr[7] = rreg(cs->hvf->fd, HV_X86_DR7); + env->dr[0] = rreg(cs->accel->fd, HV_X86_DR0); + env->dr[1] = rreg(cs->accel->fd, HV_X86_DR1); + env->dr[2] = rreg(cs->accel->fd, HV_X86_DR2); + env->dr[3] = rreg(cs->accel->fd, HV_X86_DR3); + env->dr[4] = rreg(cs->accel->fd, HV_X86_DR4); + env->dr[5] = rreg(cs->accel->fd, HV_X86_DR5); + env->dr[6] = rreg(cs->accel->fd, HV_X86_DR6); + env->dr[7] = rreg(cs->accel->fd, HV_X86_DR7); x86_update_hflags(env); return 0; @@ -327,16 +327,16 @@ int hvf_get_registers(CPUState *cs) static void vmx_set_int_window_exiting(CPUState *cs) { uint64_t val; - val = rvmcs(cs->hvf->fd, VMCS_PRI_PROC_BASED_CTLS); - wvmcs(cs->hvf->fd, VMCS_PRI_PROC_BASED_CTLS, val | + val = rvmcs(cs->accel->fd, VMCS_PRI_PROC_BASED_CTLS); + wvmcs(cs->accel->fd, VMCS_PRI_PROC_BASED_CTLS, val | VMCS_PRI_PROC_BASED_CTLS_INT_WINDOW_EXITING); } void vmx_clear_int_window_exiting(CPUState *cs) { uint64_t val; - val = rvmcs(cs->hvf->fd, VMCS_PRI_PROC_BASED_CTLS); - wvmcs(cs->hvf->fd, VMCS_PRI_PROC_BASED_CTLS, val & + val = rvmcs(cs->accel->fd, VMCS_PRI_PROC_BASED_CTLS); + wvmcs(cs->accel->fd, VMCS_PRI_PROC_BASED_CTLS, val & ~VMCS_PRI_PROC_BASED_CTLS_INT_WINDOW_EXITING); } @@ -372,7 +372,7 @@ bool hvf_inject_interrupts(CPUState *cs) uint64_t info = 0; if (have_event) { info = vector | intr_type | VMCS_INTR_VALID; - uint64_t reason = rvmcs(cs->hvf->fd, VMCS_EXIT_REASON); + uint64_t reason = rvmcs(cs->accel->fd, VMCS_EXIT_REASON); if (env->nmi_injected && reason != EXIT_REASON_TASK_SWITCH) { vmx_clear_nmi_blocking(cs); } @@ -381,17 +381,17 @@ bool hvf_inject_interrupts(CPUState *cs) info &= ~(1 << 12); /* clear undefined bit */ if (intr_type == VMCS_INTR_T_SWINTR || intr_type == VMCS_INTR_T_SWEXCEPTION) { - wvmcs(cs->hvf->fd, VMCS_ENTRY_INST_LENGTH, env->ins_len); + wvmcs(cs->accel->fd, VMCS_ENTRY_INST_LENGTH, env->ins_len); } if (env->has_error_code) { - wvmcs(cs->hvf->fd, VMCS_ENTRY_EXCEPTION_ERROR, + wvmcs(cs->accel->fd, VMCS_ENTRY_EXCEPTION_ERROR, env->error_code); /* Indicate that VMCS_ENTRY_EXCEPTION_ERROR is valid */ info |= VMCS_INTR_DEL_ERRCODE; } /*printf("reinject %lx err %d\n", info, err);*/ - wvmcs(cs->hvf->fd, VMCS_ENTRY_INTR_INFO, info); + wvmcs(cs->accel->fd, VMCS_ENTRY_INTR_INFO, info); }; } @@ -399,7 +399,7 @@ bool hvf_inject_interrupts(CPUState *cs) if (!(env->hflags2 & HF2_NMI_MASK) && !(info & VMCS_INTR_VALID)) { cs->interrupt_request &= ~CPU_INTERRUPT_NMI; info = VMCS_INTR_VALID | VMCS_INTR_T_NMI | EXCP02_NMI; - wvmcs(cs->hvf->fd, VMCS_ENTRY_INTR_INFO, info); + wvmcs(cs->accel->fd, VMCS_ENTRY_INTR_INFO, info); } else { vmx_set_nmi_window_exiting(cs); } @@ -411,7 +411,7 @@ bool hvf_inject_interrupts(CPUState *cs) int line = cpu_get_pic_interrupt(&x86cpu->env); cs->interrupt_request &= ~CPU_INTERRUPT_HARD; if (line >= 0) { - wvmcs(cs->hvf->fd, VMCS_ENTRY_INTR_INFO, line | + wvmcs(cs->accel->fd, VMCS_ENTRY_INTR_INFO, line | VMCS_INTR_VALID | VMCS_INTR_T_HWINTR); } } @@ -429,7 +429,7 @@ int hvf_process_events(CPUState *cs) if (!cs->vcpu_dirty) { /* light weight sync for CPU_INTERRUPT_HARD and IF_MASK */ - env->eflags = rreg(cs->hvf->fd, HV_X86_RFLAGS); + env->eflags = rreg(cs->accel->fd, HV_X86_RFLAGS); } if (cs->interrupt_request & CPU_INTERRUPT_INIT) { -- 2.38.1 From xen-devel-bounces@lists.xenproject.org Sat Jun 24 17:49:39 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sat, 24 Jun 2023 17:49:39 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554668.866007 (Exim 4.92) (envelope-from ) id 1qD7O1-0004Pe-NG; Sat, 24 Jun 2023 17:49:25 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554668.866007; Sat, 24 Jun 2023 17:49:25 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qD7O1-0004PX-IW; Sat, 24 Jun 2023 17:49:25 +0000 Received: by outflank-mailman (input) for mailman id 554668; Sat, 24 Jun 2023 17:49:24 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qD7I8-0000wd-04 for xen-devel@lists.xenproject.org; Sat, 24 Jun 2023 17:43:20 +0000 Received: from mail-wm1-x32f.google.com (mail-wm1-x32f.google.com [2a00:1450:4864:20::32f]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 9a28898a-12b6-11ee-8611-37d641c3527e; Sat, 24 Jun 2023 19:43:17 +0200 (CEST) Received: by mail-wm1-x32f.google.com with SMTP id 5b1f17b1804b1-3f9b4a71623so17743795e9.1 for ; Sat, 24 Jun 2023 10:43:17 -0700 (PDT) Received: from m1x-phil.lan ([176.187.217.150]) by smtp.gmail.com with ESMTPSA id p9-20020a05600c204900b003f93c450657sm2686567wmg.38.2023.06.24.10.43.14 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Sat, 24 Jun 2023 10:43:16 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 9a28898a-12b6-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1687628597; x=1690220597; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=cbsgyJj8b56jpRAu2aJb3zjkuNeKq4dUo/g8B8wkaF0=; b=XOyq/hOpaM8SFEeLc2i/ZJNmFV8x6n66YcKZE2GZIGtdj5zxHMC6g2SOgudJ4+fZ8h nZbhJ/kN1HwORDYtYdsoPyEYbVf23TRKqu5FYSP2ZazSRUBKekkGRd4kdk/awn5igQ1b zRbp90njgUwVUvHLjJjw1VUI0PSgwJx2yKIq6pzmwo0CZ0h41Is+JoQ2NFOjUSKN7ddg 2GEubtihnZjS3H6yCF/eDUnSwwvtRfp9CMO8gnycmk2HCWoaHaTwjTKz2lKM5XQW5Ijt Cp/V+iKSJYRw6t+f3yeVYB1hJkUg77nYhVIA3BADg2m1Rh/JyQG9mvHJtmL//kiubREW 5pNQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687628597; x=1690220597; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=cbsgyJj8b56jpRAu2aJb3zjkuNeKq4dUo/g8B8wkaF0=; b=YyLsByk/abMvxy8ZIHUEOGgNyOgy37RnnOud5OEIcg2ur3TOmV/ulyAwNQTupssS3T BqK8ujTIb+bYs0r2FfTG9A5Ta7vzzION3COYvMG70w2eBDHDbitAUcj7IV9xFfQ08cT2 BLDTQzZ9xr6MqyHo+rRfQ4ebfH/We6FlajRhymVMwM9pgYA3fbkNrEq1g8p4zCXdLW0a yGMMbUuiWkZL+Iy4pFyATTIgKxMWy+b244WsusYTP2sWgwqhQS17/xfItfVhLlkzXrxr cGVZEvqRoXZTV0X9wiOHaRU/JjDkdlEhxqVSdlrLAttBYwa9F2Qh6CnAZj4kVuUWS7vL M92A== X-Gm-Message-State: AC+VfDx8rUjA4L7zCL44LCD+I1Y42Fx35a9Ku7xCO4qGLF99Dfvf009y mUHUu0WBmu32mg3o87VgAbNvHQ== X-Google-Smtp-Source: ACHHUZ5H7hPQWwMqXf2hx68EQXiiQZxhhcXxw3MPT5pLhxKkCEnfSo/f+IE4+5mJ6cAP66+MRBOCFw== X-Received: by 2002:a05:600c:3797:b0:3fa:838a:1dcf with SMTP id o23-20020a05600c379700b003fa838a1dcfmr1426420wmr.6.1687628597127; Sat, 24 Jun 2023 10:43:17 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: kvm@vger.kernel.org, Marcel Apfelbaum , Peter Maydell , Roman Bolshakov , qemu-arm@nongnu.org, Richard Henderson , Alexander Graf , xen-devel@lists.xenproject.org, Sunil Muthuswamy , Anthony Perard , Stefano Stabellini , Yanan Wang , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Paul Durrant , Reinoud Zandijk , Eduardo Habkost , Cameron Esfahani , Paolo Bonzini Subject: [PATCH v3 15/16] accel: Rename 'cpu_state' -> 'cs' Date: Sat, 24 Jun 2023 19:41:20 +0200 Message-Id: <20230624174121.11508-16-philmd@linaro.org> X-Mailer: git-send-email 2.38.1 In-Reply-To: <20230624174121.11508-1-philmd@linaro.org> References: <20230624174121.11508-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Most of the codebase uses 'CPUState *cpu' or 'CPUState *cs'. While 'cpu_state' is kind of explicit, it makes the code harder to review. Simply rename as 'cs'. Acked-by: Richard Henderson Signed-off-by: Philippe Mathieu-Daudé --- target/i386/hvf/x86hvf.h | 18 +- target/i386/hvf/x86hvf.c | 372 +++++++++++++++++++-------------------- 2 files changed, 195 insertions(+), 195 deletions(-) diff --git a/target/i386/hvf/x86hvf.h b/target/i386/hvf/x86hvf.h index db6003d6bd..423a89b6ad 100644 --- a/target/i386/hvf/x86hvf.h +++ b/target/i386/hvf/x86hvf.h @@ -20,15 +20,15 @@ #include "cpu.h" #include "x86_descr.h" -int hvf_process_events(CPUState *); -bool hvf_inject_interrupts(CPUState *); -void hvf_set_segment(struct CPUState *cpu, struct vmx_segment *vmx_seg, +int hvf_process_events(CPUState *cs); +bool hvf_inject_interrupts(CPUState *cs); +void hvf_set_segment(CPUState *cs, struct vmx_segment *vmx_seg, SegmentCache *qseg, bool is_tr); void hvf_get_segment(SegmentCache *qseg, struct vmx_segment *vmx_seg); -void hvf_put_xsave(CPUState *cpu_state); -void hvf_put_msrs(CPUState *cpu_state); -void hvf_get_xsave(CPUState *cpu_state); -void hvf_get_msrs(CPUState *cpu_state); -void vmx_clear_int_window_exiting(CPUState *cpu); -void vmx_update_tpr(CPUState *cpu); +void hvf_put_xsave(CPUState *cs); +void hvf_put_msrs(CPUState *cs); +void hvf_get_xsave(CPUState *cs); +void hvf_get_msrs(CPUState *cs); +void vmx_clear_int_window_exiting(CPUState *cs); +void vmx_update_tpr(CPUState *cs); #endif diff --git a/target/i386/hvf/x86hvf.c b/target/i386/hvf/x86hvf.c index 69d4fb8cf5..92dfd26a01 100644 --- a/target/i386/hvf/x86hvf.c +++ b/target/i386/hvf/x86hvf.c @@ -32,14 +32,14 @@ #include #include -void hvf_set_segment(struct CPUState *cpu, struct vmx_segment *vmx_seg, +void hvf_set_segment(CPUState *cs, struct vmx_segment *vmx_seg, SegmentCache *qseg, bool is_tr) { vmx_seg->sel = qseg->selector; vmx_seg->base = qseg->base; vmx_seg->limit = qseg->limit; - if (!qseg->selector && !x86_is_real(cpu) && !is_tr) { + if (!qseg->selector && !x86_is_real(cs) && !is_tr) { /* the TR register is usable after processor reset despite * having a null selector */ vmx_seg->ar = 1 << 16; @@ -70,279 +70,279 @@ void hvf_get_segment(SegmentCache *qseg, struct vmx_segment *vmx_seg) (((vmx_seg->ar >> 15) & 1) << DESC_G_SHIFT); } -void hvf_put_xsave(CPUState *cpu_state) +void hvf_put_xsave(CPUState *cs) { - void *xsave = X86_CPU(cpu_state)->env.xsave_buf; - uint32_t xsave_len = X86_CPU(cpu_state)->env.xsave_buf_len; + void *xsave = X86_CPU(cs)->env.xsave_buf; + uint32_t xsave_len = X86_CPU(cs)->env.xsave_buf_len; - x86_cpu_xsave_all_areas(X86_CPU(cpu_state), xsave, xsave_len); + x86_cpu_xsave_all_areas(X86_CPU(cs), xsave, xsave_len); - if (hv_vcpu_write_fpstate(cpu_state->hvf->fd, xsave, xsave_len)) { + if (hv_vcpu_write_fpstate(cs->hvf->fd, xsave, xsave_len)) { abort(); } } -static void hvf_put_segments(CPUState *cpu_state) +static void hvf_put_segments(CPUState *cs) { - CPUX86State *env = &X86_CPU(cpu_state)->env; + CPUX86State *env = &X86_CPU(cs)->env; struct vmx_segment seg; - wvmcs(cpu_state->hvf->fd, VMCS_GUEST_IDTR_LIMIT, env->idt.limit); - wvmcs(cpu_state->hvf->fd, VMCS_GUEST_IDTR_BASE, env->idt.base); + wvmcs(cs->hvf->fd, VMCS_GUEST_IDTR_LIMIT, env->idt.limit); + wvmcs(cs->hvf->fd, VMCS_GUEST_IDTR_BASE, env->idt.base); - wvmcs(cpu_state->hvf->fd, VMCS_GUEST_GDTR_LIMIT, env->gdt.limit); - wvmcs(cpu_state->hvf->fd, VMCS_GUEST_GDTR_BASE, env->gdt.base); + wvmcs(cs->hvf->fd, VMCS_GUEST_GDTR_LIMIT, env->gdt.limit); + wvmcs(cs->hvf->fd, VMCS_GUEST_GDTR_BASE, env->gdt.base); - /* wvmcs(cpu_state->hvf->fd, VMCS_GUEST_CR2, env->cr[2]); */ - wvmcs(cpu_state->hvf->fd, VMCS_GUEST_CR3, env->cr[3]); - vmx_update_tpr(cpu_state); - wvmcs(cpu_state->hvf->fd, VMCS_GUEST_IA32_EFER, env->efer); + /* wvmcs(cs->hvf->fd, VMCS_GUEST_CR2, env->cr[2]); */ + wvmcs(cs->hvf->fd, VMCS_GUEST_CR3, env->cr[3]); + vmx_update_tpr(cs); + wvmcs(cs->hvf->fd, VMCS_GUEST_IA32_EFER, env->efer); - macvm_set_cr4(cpu_state->hvf->fd, env->cr[4]); - macvm_set_cr0(cpu_state->hvf->fd, env->cr[0]); + macvm_set_cr4(cs->hvf->fd, env->cr[4]); + macvm_set_cr0(cs->hvf->fd, env->cr[0]); - hvf_set_segment(cpu_state, &seg, &env->segs[R_CS], false); - vmx_write_segment_descriptor(cpu_state, &seg, R_CS); + hvf_set_segment(cs, &seg, &env->segs[R_CS], false); + vmx_write_segment_descriptor(cs, &seg, R_CS); - hvf_set_segment(cpu_state, &seg, &env->segs[R_DS], false); - vmx_write_segment_descriptor(cpu_state, &seg, R_DS); + hvf_set_segment(cs, &seg, &env->segs[R_DS], false); + vmx_write_segment_descriptor(cs, &seg, R_DS); - hvf_set_segment(cpu_state, &seg, &env->segs[R_ES], false); - vmx_write_segment_descriptor(cpu_state, &seg, R_ES); + hvf_set_segment(cs, &seg, &env->segs[R_ES], false); + vmx_write_segment_descriptor(cs, &seg, R_ES); - hvf_set_segment(cpu_state, &seg, &env->segs[R_SS], false); - vmx_write_segment_descriptor(cpu_state, &seg, R_SS); + hvf_set_segment(cs, &seg, &env->segs[R_SS], false); + vmx_write_segment_descriptor(cs, &seg, R_SS); - hvf_set_segment(cpu_state, &seg, &env->segs[R_FS], false); - vmx_write_segment_descriptor(cpu_state, &seg, R_FS); + hvf_set_segment(cs, &seg, &env->segs[R_FS], false); + vmx_write_segment_descriptor(cs, &seg, R_FS); - hvf_set_segment(cpu_state, &seg, &env->segs[R_GS], false); - vmx_write_segment_descriptor(cpu_state, &seg, R_GS); + hvf_set_segment(cs, &seg, &env->segs[R_GS], false); + vmx_write_segment_descriptor(cs, &seg, R_GS); - hvf_set_segment(cpu_state, &seg, &env->tr, true); - vmx_write_segment_descriptor(cpu_state, &seg, R_TR); + hvf_set_segment(cs, &seg, &env->tr, true); + vmx_write_segment_descriptor(cs, &seg, R_TR); - hvf_set_segment(cpu_state, &seg, &env->ldt, false); - vmx_write_segment_descriptor(cpu_state, &seg, R_LDTR); + hvf_set_segment(cs, &seg, &env->ldt, false); + vmx_write_segment_descriptor(cs, &seg, R_LDTR); } -void hvf_put_msrs(CPUState *cpu_state) +void hvf_put_msrs(CPUState *cs) { - CPUX86State *env = &X86_CPU(cpu_state)->env; + CPUX86State *env = &X86_CPU(cs)->env; - hv_vcpu_write_msr(cpu_state->hvf->fd, MSR_IA32_SYSENTER_CS, + hv_vcpu_write_msr(cs->hvf->fd, MSR_IA32_SYSENTER_CS, env->sysenter_cs); - hv_vcpu_write_msr(cpu_state->hvf->fd, MSR_IA32_SYSENTER_ESP, + hv_vcpu_write_msr(cs->hvf->fd, MSR_IA32_SYSENTER_ESP, env->sysenter_esp); - hv_vcpu_write_msr(cpu_state->hvf->fd, MSR_IA32_SYSENTER_EIP, + hv_vcpu_write_msr(cs->hvf->fd, MSR_IA32_SYSENTER_EIP, env->sysenter_eip); - hv_vcpu_write_msr(cpu_state->hvf->fd, MSR_STAR, env->star); + hv_vcpu_write_msr(cs->hvf->fd, MSR_STAR, env->star); #ifdef TARGET_X86_64 - hv_vcpu_write_msr(cpu_state->hvf->fd, MSR_CSTAR, env->cstar); - hv_vcpu_write_msr(cpu_state->hvf->fd, MSR_KERNELGSBASE, env->kernelgsbase); - hv_vcpu_write_msr(cpu_state->hvf->fd, MSR_FMASK, env->fmask); - hv_vcpu_write_msr(cpu_state->hvf->fd, MSR_LSTAR, env->lstar); + hv_vcpu_write_msr(cs->hvf->fd, MSR_CSTAR, env->cstar); + hv_vcpu_write_msr(cs->hvf->fd, MSR_KERNELGSBASE, env->kernelgsbase); + hv_vcpu_write_msr(cs->hvf->fd, MSR_FMASK, env->fmask); + hv_vcpu_write_msr(cs->hvf->fd, MSR_LSTAR, env->lstar); #endif - hv_vcpu_write_msr(cpu_state->hvf->fd, MSR_GSBASE, env->segs[R_GS].base); - hv_vcpu_write_msr(cpu_state->hvf->fd, MSR_FSBASE, env->segs[R_FS].base); + hv_vcpu_write_msr(cs->hvf->fd, MSR_GSBASE, env->segs[R_GS].base); + hv_vcpu_write_msr(cs->hvf->fd, MSR_FSBASE, env->segs[R_FS].base); } -void hvf_get_xsave(CPUState *cpu_state) +void hvf_get_xsave(CPUState *cs) { - void *xsave = X86_CPU(cpu_state)->env.xsave_buf; - uint32_t xsave_len = X86_CPU(cpu_state)->env.xsave_buf_len; + void *xsave = X86_CPU(cs)->env.xsave_buf; + uint32_t xsave_len = X86_CPU(cs)->env.xsave_buf_len; - if (hv_vcpu_read_fpstate(cpu_state->hvf->fd, xsave, xsave_len)) { + if (hv_vcpu_read_fpstate(cs->hvf->fd, xsave, xsave_len)) { abort(); } - x86_cpu_xrstor_all_areas(X86_CPU(cpu_state), xsave, xsave_len); + x86_cpu_xrstor_all_areas(X86_CPU(cs), xsave, xsave_len); } -static void hvf_get_segments(CPUState *cpu_state) +static void hvf_get_segments(CPUState *cs) { - CPUX86State *env = &X86_CPU(cpu_state)->env; + CPUX86State *env = &X86_CPU(cs)->env; struct vmx_segment seg; env->interrupt_injected = -1; - vmx_read_segment_descriptor(cpu_state, &seg, R_CS); + vmx_read_segment_descriptor(cs, &seg, R_CS); hvf_get_segment(&env->segs[R_CS], &seg); - vmx_read_segment_descriptor(cpu_state, &seg, R_DS); + vmx_read_segment_descriptor(cs, &seg, R_DS); hvf_get_segment(&env->segs[R_DS], &seg); - vmx_read_segment_descriptor(cpu_state, &seg, R_ES); + vmx_read_segment_descriptor(cs, &seg, R_ES); hvf_get_segment(&env->segs[R_ES], &seg); - vmx_read_segment_descriptor(cpu_state, &seg, R_FS); + vmx_read_segment_descriptor(cs, &seg, R_FS); hvf_get_segment(&env->segs[R_FS], &seg); - vmx_read_segment_descriptor(cpu_state, &seg, R_GS); + vmx_read_segment_descriptor(cs, &seg, R_GS); hvf_get_segment(&env->segs[R_GS], &seg); - vmx_read_segment_descriptor(cpu_state, &seg, R_SS); + vmx_read_segment_descriptor(cs, &seg, R_SS); hvf_get_segment(&env->segs[R_SS], &seg); - vmx_read_segment_descriptor(cpu_state, &seg, R_TR); + vmx_read_segment_descriptor(cs, &seg, R_TR); hvf_get_segment(&env->tr, &seg); - vmx_read_segment_descriptor(cpu_state, &seg, R_LDTR); + vmx_read_segment_descriptor(cs, &seg, R_LDTR); hvf_get_segment(&env->ldt, &seg); - env->idt.limit = rvmcs(cpu_state->hvf->fd, VMCS_GUEST_IDTR_LIMIT); - env->idt.base = rvmcs(cpu_state->hvf->fd, VMCS_GUEST_IDTR_BASE); - env->gdt.limit = rvmcs(cpu_state->hvf->fd, VMCS_GUEST_GDTR_LIMIT); - env->gdt.base = rvmcs(cpu_state->hvf->fd, VMCS_GUEST_GDTR_BASE); + env->idt.limit = rvmcs(cs->hvf->fd, VMCS_GUEST_IDTR_LIMIT); + env->idt.base = rvmcs(cs->hvf->fd, VMCS_GUEST_IDTR_BASE); + env->gdt.limit = rvmcs(cs->hvf->fd, VMCS_GUEST_GDTR_LIMIT); + env->gdt.base = rvmcs(cs->hvf->fd, VMCS_GUEST_GDTR_BASE); - env->cr[0] = rvmcs(cpu_state->hvf->fd, VMCS_GUEST_CR0); + env->cr[0] = rvmcs(cs->hvf->fd, VMCS_GUEST_CR0); env->cr[2] = 0; - env->cr[3] = rvmcs(cpu_state->hvf->fd, VMCS_GUEST_CR3); - env->cr[4] = rvmcs(cpu_state->hvf->fd, VMCS_GUEST_CR4); + env->cr[3] = rvmcs(cs->hvf->fd, VMCS_GUEST_CR3); + env->cr[4] = rvmcs(cs->hvf->fd, VMCS_GUEST_CR4); - env->efer = rvmcs(cpu_state->hvf->fd, VMCS_GUEST_IA32_EFER); + env->efer = rvmcs(cs->hvf->fd, VMCS_GUEST_IA32_EFER); } -void hvf_get_msrs(CPUState *cpu_state) +void hvf_get_msrs(CPUState *cs) { - CPUX86State *env = &X86_CPU(cpu_state)->env; + CPUX86State *env = &X86_CPU(cs)->env; uint64_t tmp; - hv_vcpu_read_msr(cpu_state->hvf->fd, MSR_IA32_SYSENTER_CS, &tmp); + hv_vcpu_read_msr(cs->hvf->fd, MSR_IA32_SYSENTER_CS, &tmp); env->sysenter_cs = tmp; - hv_vcpu_read_msr(cpu_state->hvf->fd, MSR_IA32_SYSENTER_ESP, &tmp); + hv_vcpu_read_msr(cs->hvf->fd, MSR_IA32_SYSENTER_ESP, &tmp); env->sysenter_esp = tmp; - hv_vcpu_read_msr(cpu_state->hvf->fd, MSR_IA32_SYSENTER_EIP, &tmp); + hv_vcpu_read_msr(cs->hvf->fd, MSR_IA32_SYSENTER_EIP, &tmp); env->sysenter_eip = tmp; - hv_vcpu_read_msr(cpu_state->hvf->fd, MSR_STAR, &env->star); + hv_vcpu_read_msr(cs->hvf->fd, MSR_STAR, &env->star); #ifdef TARGET_X86_64 - hv_vcpu_read_msr(cpu_state->hvf->fd, MSR_CSTAR, &env->cstar); - hv_vcpu_read_msr(cpu_state->hvf->fd, MSR_KERNELGSBASE, &env->kernelgsbase); - hv_vcpu_read_msr(cpu_state->hvf->fd, MSR_FMASK, &env->fmask); - hv_vcpu_read_msr(cpu_state->hvf->fd, MSR_LSTAR, &env->lstar); + hv_vcpu_read_msr(cs->hvf->fd, MSR_CSTAR, &env->cstar); + hv_vcpu_read_msr(cs->hvf->fd, MSR_KERNELGSBASE, &env->kernelgsbase); + hv_vcpu_read_msr(cs->hvf->fd, MSR_FMASK, &env->fmask); + hv_vcpu_read_msr(cs->hvf->fd, MSR_LSTAR, &env->lstar); #endif - hv_vcpu_read_msr(cpu_state->hvf->fd, MSR_IA32_APICBASE, &tmp); + hv_vcpu_read_msr(cs->hvf->fd, MSR_IA32_APICBASE, &tmp); - env->tsc = rdtscp() + rvmcs(cpu_state->hvf->fd, VMCS_TSC_OFFSET); + env->tsc = rdtscp() + rvmcs(cs->hvf->fd, VMCS_TSC_OFFSET); } -int hvf_put_registers(CPUState *cpu_state) +int hvf_put_registers(CPUState *cs) { - X86CPU *x86cpu = X86_CPU(cpu_state); + X86CPU *x86cpu = X86_CPU(cs); CPUX86State *env = &x86cpu->env; - wreg(cpu_state->hvf->fd, HV_X86_RAX, env->regs[R_EAX]); - wreg(cpu_state->hvf->fd, HV_X86_RBX, env->regs[R_EBX]); - wreg(cpu_state->hvf->fd, HV_X86_RCX, env->regs[R_ECX]); - wreg(cpu_state->hvf->fd, HV_X86_RDX, env->regs[R_EDX]); - wreg(cpu_state->hvf->fd, HV_X86_RBP, env->regs[R_EBP]); - wreg(cpu_state->hvf->fd, HV_X86_RSP, env->regs[R_ESP]); - wreg(cpu_state->hvf->fd, HV_X86_RSI, env->regs[R_ESI]); - wreg(cpu_state->hvf->fd, HV_X86_RDI, env->regs[R_EDI]); - wreg(cpu_state->hvf->fd, HV_X86_R8, env->regs[8]); - wreg(cpu_state->hvf->fd, HV_X86_R9, env->regs[9]); - wreg(cpu_state->hvf->fd, HV_X86_R10, env->regs[10]); - wreg(cpu_state->hvf->fd, HV_X86_R11, env->regs[11]); - wreg(cpu_state->hvf->fd, HV_X86_R12, env->regs[12]); - wreg(cpu_state->hvf->fd, HV_X86_R13, env->regs[13]); - wreg(cpu_state->hvf->fd, HV_X86_R14, env->regs[14]); - wreg(cpu_state->hvf->fd, HV_X86_R15, env->regs[15]); - wreg(cpu_state->hvf->fd, HV_X86_RFLAGS, env->eflags); - wreg(cpu_state->hvf->fd, HV_X86_RIP, env->eip); + wreg(cs->hvf->fd, HV_X86_RAX, env->regs[R_EAX]); + wreg(cs->hvf->fd, HV_X86_RBX, env->regs[R_EBX]); + wreg(cs->hvf->fd, HV_X86_RCX, env->regs[R_ECX]); + wreg(cs->hvf->fd, HV_X86_RDX, env->regs[R_EDX]); + wreg(cs->hvf->fd, HV_X86_RBP, env->regs[R_EBP]); + wreg(cs->hvf->fd, HV_X86_RSP, env->regs[R_ESP]); + wreg(cs->hvf->fd, HV_X86_RSI, env->regs[R_ESI]); + wreg(cs->hvf->fd, HV_X86_RDI, env->regs[R_EDI]); + wreg(cs->hvf->fd, HV_X86_R8, env->regs[8]); + wreg(cs->hvf->fd, HV_X86_R9, env->regs[9]); + wreg(cs->hvf->fd, HV_X86_R10, env->regs[10]); + wreg(cs->hvf->fd, HV_X86_R11, env->regs[11]); + wreg(cs->hvf->fd, HV_X86_R12, env->regs[12]); + wreg(cs->hvf->fd, HV_X86_R13, env->regs[13]); + wreg(cs->hvf->fd, HV_X86_R14, env->regs[14]); + wreg(cs->hvf->fd, HV_X86_R15, env->regs[15]); + wreg(cs->hvf->fd, HV_X86_RFLAGS, env->eflags); + wreg(cs->hvf->fd, HV_X86_RIP, env->eip); - wreg(cpu_state->hvf->fd, HV_X86_XCR0, env->xcr0); + wreg(cs->hvf->fd, HV_X86_XCR0, env->xcr0); - hvf_put_xsave(cpu_state); + hvf_put_xsave(cs); - hvf_put_segments(cpu_state); + hvf_put_segments(cs); - hvf_put_msrs(cpu_state); + hvf_put_msrs(cs); - wreg(cpu_state->hvf->fd, HV_X86_DR0, env->dr[0]); - wreg(cpu_state->hvf->fd, HV_X86_DR1, env->dr[1]); - wreg(cpu_state->hvf->fd, HV_X86_DR2, env->dr[2]); - wreg(cpu_state->hvf->fd, HV_X86_DR3, env->dr[3]); - wreg(cpu_state->hvf->fd, HV_X86_DR4, env->dr[4]); - wreg(cpu_state->hvf->fd, HV_X86_DR5, env->dr[5]); - wreg(cpu_state->hvf->fd, HV_X86_DR6, env->dr[6]); - wreg(cpu_state->hvf->fd, HV_X86_DR7, env->dr[7]); + wreg(cs->hvf->fd, HV_X86_DR0, env->dr[0]); + wreg(cs->hvf->fd, HV_X86_DR1, env->dr[1]); + wreg(cs->hvf->fd, HV_X86_DR2, env->dr[2]); + wreg(cs->hvf->fd, HV_X86_DR3, env->dr[3]); + wreg(cs->hvf->fd, HV_X86_DR4, env->dr[4]); + wreg(cs->hvf->fd, HV_X86_DR5, env->dr[5]); + wreg(cs->hvf->fd, HV_X86_DR6, env->dr[6]); + wreg(cs->hvf->fd, HV_X86_DR7, env->dr[7]); return 0; } -int hvf_get_registers(CPUState *cpu_state) +int hvf_get_registers(CPUState *cs) { - X86CPU *x86cpu = X86_CPU(cpu_state); + X86CPU *x86cpu = X86_CPU(cs); CPUX86State *env = &x86cpu->env; - env->regs[R_EAX] = rreg(cpu_state->hvf->fd, HV_X86_RAX); - env->regs[R_EBX] = rreg(cpu_state->hvf->fd, HV_X86_RBX); - env->regs[R_ECX] = rreg(cpu_state->hvf->fd, HV_X86_RCX); - env->regs[R_EDX] = rreg(cpu_state->hvf->fd, HV_X86_RDX); - env->regs[R_EBP] = rreg(cpu_state->hvf->fd, HV_X86_RBP); - env->regs[R_ESP] = rreg(cpu_state->hvf->fd, HV_X86_RSP); - env->regs[R_ESI] = rreg(cpu_state->hvf->fd, HV_X86_RSI); - env->regs[R_EDI] = rreg(cpu_state->hvf->fd, HV_X86_RDI); - env->regs[8] = rreg(cpu_state->hvf->fd, HV_X86_R8); - env->regs[9] = rreg(cpu_state->hvf->fd, HV_X86_R9); - env->regs[10] = rreg(cpu_state->hvf->fd, HV_X86_R10); - env->regs[11] = rreg(cpu_state->hvf->fd, HV_X86_R11); - env->regs[12] = rreg(cpu_state->hvf->fd, HV_X86_R12); - env->regs[13] = rreg(cpu_state->hvf->fd, HV_X86_R13); - env->regs[14] = rreg(cpu_state->hvf->fd, HV_X86_R14); - env->regs[15] = rreg(cpu_state->hvf->fd, HV_X86_R15); + env->regs[R_EAX] = rreg(cs->hvf->fd, HV_X86_RAX); + env->regs[R_EBX] = rreg(cs->hvf->fd, HV_X86_RBX); + env->regs[R_ECX] = rreg(cs->hvf->fd, HV_X86_RCX); + env->regs[R_EDX] = rreg(cs->hvf->fd, HV_X86_RDX); + env->regs[R_EBP] = rreg(cs->hvf->fd, HV_X86_RBP); + env->regs[R_ESP] = rreg(cs->hvf->fd, HV_X86_RSP); + env->regs[R_ESI] = rreg(cs->hvf->fd, HV_X86_RSI); + env->regs[R_EDI] = rreg(cs->hvf->fd, HV_X86_RDI); + env->regs[8] = rreg(cs->hvf->fd, HV_X86_R8); + env->regs[9] = rreg(cs->hvf->fd, HV_X86_R9); + env->regs[10] = rreg(cs->hvf->fd, HV_X86_R10); + env->regs[11] = rreg(cs->hvf->fd, HV_X86_R11); + env->regs[12] = rreg(cs->hvf->fd, HV_X86_R12); + env->regs[13] = rreg(cs->hvf->fd, HV_X86_R13); + env->regs[14] = rreg(cs->hvf->fd, HV_X86_R14); + env->regs[15] = rreg(cs->hvf->fd, HV_X86_R15); - env->eflags = rreg(cpu_state->hvf->fd, HV_X86_RFLAGS); - env->eip = rreg(cpu_state->hvf->fd, HV_X86_RIP); + env->eflags = rreg(cs->hvf->fd, HV_X86_RFLAGS); + env->eip = rreg(cs->hvf->fd, HV_X86_RIP); - hvf_get_xsave(cpu_state); - env->xcr0 = rreg(cpu_state->hvf->fd, HV_X86_XCR0); + hvf_get_xsave(cs); + env->xcr0 = rreg(cs->hvf->fd, HV_X86_XCR0); - hvf_get_segments(cpu_state); - hvf_get_msrs(cpu_state); + hvf_get_segments(cs); + hvf_get_msrs(cs); - env->dr[0] = rreg(cpu_state->hvf->fd, HV_X86_DR0); - env->dr[1] = rreg(cpu_state->hvf->fd, HV_X86_DR1); - env->dr[2] = rreg(cpu_state->hvf->fd, HV_X86_DR2); - env->dr[3] = rreg(cpu_state->hvf->fd, HV_X86_DR3); - env->dr[4] = rreg(cpu_state->hvf->fd, HV_X86_DR4); - env->dr[5] = rreg(cpu_state->hvf->fd, HV_X86_DR5); - env->dr[6] = rreg(cpu_state->hvf->fd, HV_X86_DR6); - env->dr[7] = rreg(cpu_state->hvf->fd, HV_X86_DR7); + env->dr[0] = rreg(cs->hvf->fd, HV_X86_DR0); + env->dr[1] = rreg(cs->hvf->fd, HV_X86_DR1); + env->dr[2] = rreg(cs->hvf->fd, HV_X86_DR2); + env->dr[3] = rreg(cs->hvf->fd, HV_X86_DR3); + env->dr[4] = rreg(cs->hvf->fd, HV_X86_DR4); + env->dr[5] = rreg(cs->hvf->fd, HV_X86_DR5); + env->dr[6] = rreg(cs->hvf->fd, HV_X86_DR6); + env->dr[7] = rreg(cs->hvf->fd, HV_X86_DR7); x86_update_hflags(env); return 0; } -static void vmx_set_int_window_exiting(CPUState *cpu) +static void vmx_set_int_window_exiting(CPUState *cs) { uint64_t val; - val = rvmcs(cpu->hvf->fd, VMCS_PRI_PROC_BASED_CTLS); - wvmcs(cpu->hvf->fd, VMCS_PRI_PROC_BASED_CTLS, val | + val = rvmcs(cs->hvf->fd, VMCS_PRI_PROC_BASED_CTLS); + wvmcs(cs->hvf->fd, VMCS_PRI_PROC_BASED_CTLS, val | VMCS_PRI_PROC_BASED_CTLS_INT_WINDOW_EXITING); } -void vmx_clear_int_window_exiting(CPUState *cpu) +void vmx_clear_int_window_exiting(CPUState *cs) { uint64_t val; - val = rvmcs(cpu->hvf->fd, VMCS_PRI_PROC_BASED_CTLS); - wvmcs(cpu->hvf->fd, VMCS_PRI_PROC_BASED_CTLS, val & + val = rvmcs(cs->hvf->fd, VMCS_PRI_PROC_BASED_CTLS); + wvmcs(cs->hvf->fd, VMCS_PRI_PROC_BASED_CTLS, val & ~VMCS_PRI_PROC_BASED_CTLS_INT_WINDOW_EXITING); } -bool hvf_inject_interrupts(CPUState *cpu_state) +bool hvf_inject_interrupts(CPUState *cs) { - X86CPU *x86cpu = X86_CPU(cpu_state); + X86CPU *x86cpu = X86_CPU(cs); CPUX86State *env = &x86cpu->env; uint8_t vector; @@ -372,89 +372,89 @@ bool hvf_inject_interrupts(CPUState *cpu_state) uint64_t info = 0; if (have_event) { info = vector | intr_type | VMCS_INTR_VALID; - uint64_t reason = rvmcs(cpu_state->hvf->fd, VMCS_EXIT_REASON); + uint64_t reason = rvmcs(cs->hvf->fd, VMCS_EXIT_REASON); if (env->nmi_injected && reason != EXIT_REASON_TASK_SWITCH) { - vmx_clear_nmi_blocking(cpu_state); + vmx_clear_nmi_blocking(cs); } if (!(env->hflags2 & HF2_NMI_MASK) || intr_type != VMCS_INTR_T_NMI) { info &= ~(1 << 12); /* clear undefined bit */ if (intr_type == VMCS_INTR_T_SWINTR || intr_type == VMCS_INTR_T_SWEXCEPTION) { - wvmcs(cpu_state->hvf->fd, VMCS_ENTRY_INST_LENGTH, env->ins_len); + wvmcs(cs->hvf->fd, VMCS_ENTRY_INST_LENGTH, env->ins_len); } if (env->has_error_code) { - wvmcs(cpu_state->hvf->fd, VMCS_ENTRY_EXCEPTION_ERROR, + wvmcs(cs->hvf->fd, VMCS_ENTRY_EXCEPTION_ERROR, env->error_code); /* Indicate that VMCS_ENTRY_EXCEPTION_ERROR is valid */ info |= VMCS_INTR_DEL_ERRCODE; } /*printf("reinject %lx err %d\n", info, err);*/ - wvmcs(cpu_state->hvf->fd, VMCS_ENTRY_INTR_INFO, info); + wvmcs(cs->hvf->fd, VMCS_ENTRY_INTR_INFO, info); }; } - if (cpu_state->interrupt_request & CPU_INTERRUPT_NMI) { + if (cs->interrupt_request & CPU_INTERRUPT_NMI) { if (!(env->hflags2 & HF2_NMI_MASK) && !(info & VMCS_INTR_VALID)) { - cpu_state->interrupt_request &= ~CPU_INTERRUPT_NMI; + cs->interrupt_request &= ~CPU_INTERRUPT_NMI; info = VMCS_INTR_VALID | VMCS_INTR_T_NMI | EXCP02_NMI; - wvmcs(cpu_state->hvf->fd, VMCS_ENTRY_INTR_INFO, info); + wvmcs(cs->hvf->fd, VMCS_ENTRY_INTR_INFO, info); } else { - vmx_set_nmi_window_exiting(cpu_state); + vmx_set_nmi_window_exiting(cs); } } if (!(env->hflags & HF_INHIBIT_IRQ_MASK) && - (cpu_state->interrupt_request & CPU_INTERRUPT_HARD) && + (cs->interrupt_request & CPU_INTERRUPT_HARD) && (env->eflags & IF_MASK) && !(info & VMCS_INTR_VALID)) { int line = cpu_get_pic_interrupt(&x86cpu->env); - cpu_state->interrupt_request &= ~CPU_INTERRUPT_HARD; + cs->interrupt_request &= ~CPU_INTERRUPT_HARD; if (line >= 0) { - wvmcs(cpu_state->hvf->fd, VMCS_ENTRY_INTR_INFO, line | + wvmcs(cs->hvf->fd, VMCS_ENTRY_INTR_INFO, line | VMCS_INTR_VALID | VMCS_INTR_T_HWINTR); } } - if (cpu_state->interrupt_request & CPU_INTERRUPT_HARD) { - vmx_set_int_window_exiting(cpu_state); + if (cs->interrupt_request & CPU_INTERRUPT_HARD) { + vmx_set_int_window_exiting(cs); } - return (cpu_state->interrupt_request + return (cs->interrupt_request & (CPU_INTERRUPT_INIT | CPU_INTERRUPT_TPR)); } -int hvf_process_events(CPUState *cpu_state) +int hvf_process_events(CPUState *cs) { - X86CPU *cpu = X86_CPU(cpu_state); + X86CPU *cpu = X86_CPU(cs); CPUX86State *env = &cpu->env; - if (!cpu_state->vcpu_dirty) { + if (!cs->vcpu_dirty) { /* light weight sync for CPU_INTERRUPT_HARD and IF_MASK */ - env->eflags = rreg(cpu_state->hvf->fd, HV_X86_RFLAGS); + env->eflags = rreg(cs->hvf->fd, HV_X86_RFLAGS); } - if (cpu_state->interrupt_request & CPU_INTERRUPT_INIT) { - cpu_synchronize_state(cpu_state); + if (cs->interrupt_request & CPU_INTERRUPT_INIT) { + cpu_synchronize_state(cs); do_cpu_init(cpu); } - if (cpu_state->interrupt_request & CPU_INTERRUPT_POLL) { - cpu_state->interrupt_request &= ~CPU_INTERRUPT_POLL; + if (cs->interrupt_request & CPU_INTERRUPT_POLL) { + cs->interrupt_request &= ~CPU_INTERRUPT_POLL; apic_poll_irq(cpu->apic_state); } - if (((cpu_state->interrupt_request & CPU_INTERRUPT_HARD) && + if (((cs->interrupt_request & CPU_INTERRUPT_HARD) && (env->eflags & IF_MASK)) || - (cpu_state->interrupt_request & CPU_INTERRUPT_NMI)) { - cpu_state->halted = 0; + (cs->interrupt_request & CPU_INTERRUPT_NMI)) { + cs->halted = 0; } - if (cpu_state->interrupt_request & CPU_INTERRUPT_SIPI) { - cpu_synchronize_state(cpu_state); + if (cs->interrupt_request & CPU_INTERRUPT_SIPI) { + cpu_synchronize_state(cs); do_cpu_sipi(cpu); } - if (cpu_state->interrupt_request & CPU_INTERRUPT_TPR) { - cpu_state->interrupt_request &= ~CPU_INTERRUPT_TPR; - cpu_synchronize_state(cpu_state); + if (cs->interrupt_request & CPU_INTERRUPT_TPR) { + cs->interrupt_request &= ~CPU_INTERRUPT_TPR; + cpu_synchronize_state(cs); apic_handle_tpr_access_report(cpu->apic_state, env->eip, env->tpr_access_type); } - return cpu_state->halted; + return cs->halted; } -- 2.38.1 From xen-devel-bounces@lists.xenproject.org Sat Jun 24 17:49:39 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sat, 24 Jun 2023 17:49:39 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554670.866017 (Exim 4.92) (envelope-from ) id 1qD7O2-0004Vx-7E; Sat, 24 Jun 2023 17:49:26 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554670.866017; Sat, 24 Jun 2023 17:49:26 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qD7O2-0004Ud-1p; Sat, 24 Jun 2023 17:49:26 +0000 Received: by outflank-mailman (input) for mailman id 554670; Sat, 24 Jun 2023 17:49:24 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qD7HF-0008Gp-3t for xen-devel@lists.xenproject.org; Sat, 24 Jun 2023 17:42:25 +0000 Received: from mail-ed1-x530.google.com (mail-ed1-x530.google.com [2a00:1450:4864:20::530]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 7a778e1e-12b6-11ee-b237-6b7b168915f2; Sat, 24 Jun 2023 19:42:24 +0200 (CEST) Received: by mail-ed1-x530.google.com with SMTP id 4fb4d7f45d1cf-51d9124e1baso192752a12.2 for ; Sat, 24 Jun 2023 10:42:24 -0700 (PDT) Received: from m1x-phil.lan ([176.187.217.150]) by smtp.gmail.com with ESMTPSA id i10-20020a170906250a00b0096a6be0b66dsm1102885ejb.208.2023.06.24.10.42.20 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Sat, 24 Jun 2023 10:42:23 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 7a778e1e-12b6-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1687628544; x=1690220544; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=NN9VasAt75iFOv6bKm088IUAp3WHizK1u2macVzvnVk=; b=TpoTyF2JMLfTdhJFfQDIJVDl7wyit9krNMh5pkE5UD2Z85JsI+MhIJfZq4TxXmpXb/ Jq5HiN89HJ4wr6rXLea/eWyd7618cAZZiB+S4t907FNYoN5Za7XtU53Yo99TffKFQ0cf 44Xmr7D3BCBiDEaJRA6+UHWtBWBj4mZwYkdJuNkFUXvTWvqPJQ+tLi4m5dnTjJoqSct8 IsWj6zhrwB+4NlanWGr0JPLUH/XYLaVY04sIYBZkfBiSkR23DgIuGBjyK/H2gFkyPBbE jt5/4gwPqUFkxozHegLbIIK30roYFKpcZHG+a2L3V4oBZU7sNJ0K7b+DJi29MWniwKkO nrBQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687628544; x=1690220544; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=NN9VasAt75iFOv6bKm088IUAp3WHizK1u2macVzvnVk=; b=Z6eMW79PrEZsj/p64ui1hSFxJECf0qvAwyZf7iEmRaMMJn0NuMeN63HEWmK0kFcScz zrOzXX661FEH2oychKDFWfWGYviKPS1SgZasJQhCa+RRsYoi23SpHZ2cRY6rhAsZT6i8 CcFfYurd59ro0nqX/AF7jM25CJK+uM71GA9Ur8KkH7JFwJ1MneoaPbp+ppmv/SymYhD2 yG9Q1zPu818jgSiboHCtT8m69rt+vtMr8WPRghmNqEhuVcKEywWDheaBTfiKL8h3Hbzi PcYnFGujzx6yIrZV8wP/SWzLyxCxBS3FoAsu+JTWZtq1FLHhPt81IGcuz2q2lsYkorSw LLzg== X-Gm-Message-State: AC+VfDyv7M6B2TPrgB1ViYZE9cauwIvr8yPIZKnSq4/onExbqCT/+B+g wVzyxxzflhog4MqALZcUBGiOZg== X-Google-Smtp-Source: ACHHUZ6JpBB7yANElxTtai7vYezx6pxHzspfxWNJcM+HOCv+99GHSiTFtorTZQaQzhh9nxIlf7DEgQ== X-Received: by 2002:a17:907:5c8:b0:974:7713:293f with SMTP id wg8-20020a17090705c800b009747713293fmr22846007ejb.41.1687628544073; Sat, 24 Jun 2023 10:42:24 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: kvm@vger.kernel.org, Marcel Apfelbaum , Peter Maydell , Roman Bolshakov , qemu-arm@nongnu.org, Richard Henderson , Alexander Graf , xen-devel@lists.xenproject.org, Sunil Muthuswamy , Anthony Perard , Stefano Stabellini , Yanan Wang , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Paul Durrant , Reinoud Zandijk , Eduardo Habkost , Cameron Esfahani , Paolo Bonzini Subject: [PATCH v3 08/16] accel: Move HAX hThread to accelerator context Date: Sat, 24 Jun 2023 19:41:13 +0200 Message-Id: <20230624174121.11508-9-philmd@linaro.org> X-Mailer: git-send-email 2.38.1 In-Reply-To: <20230624174121.11508-1-philmd@linaro.org> References: <20230624174121.11508-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit hThread variable is only used by the HAX accelerator, so move it to the accelerator specific context. Signed-off-by: Philippe Mathieu-Daudé Reviewed-by: Richard Henderson --- include/hw/core/cpu.h | 1 - target/i386/hax/hax-i386.h | 3 +++ target/i386/hax/hax-accel-ops.c | 2 +- target/i386/hax/hax-all.c | 2 +- target/i386/hax/hax-windows.c | 2 +- 5 files changed, 6 insertions(+), 4 deletions(-) diff --git a/include/hw/core/cpu.h b/include/hw/core/cpu.h index a7fae8571e..8b40946afc 100644 --- a/include/hw/core/cpu.h +++ b/include/hw/core/cpu.h @@ -337,7 +337,6 @@ struct CPUState { struct QemuThread *thread; #ifdef _WIN32 - HANDLE hThread; QemuSemaphore sem; #endif int thread_id; diff --git a/target/i386/hax/hax-i386.h b/target/i386/hax/hax-i386.h index 4372ee596d..87153f40ab 100644 --- a/target/i386/hax/hax-i386.h +++ b/target/i386/hax/hax-i386.h @@ -27,6 +27,9 @@ typedef HANDLE hax_fd; extern struct hax_state hax_global; struct AccelCPUState { +#ifdef _WIN32 + HANDLE hThread; +#endif hax_fd fd; int vcpu_id; struct hax_tunnel *tunnel; diff --git a/target/i386/hax/hax-accel-ops.c b/target/i386/hax/hax-accel-ops.c index a8512efcd5..5031096760 100644 --- a/target/i386/hax/hax-accel-ops.c +++ b/target/i386/hax/hax-accel-ops.c @@ -73,7 +73,7 @@ static void hax_start_vcpu_thread(CPUState *cpu) cpu, QEMU_THREAD_JOINABLE); assert(cpu->accel); #ifdef _WIN32 - cpu->hThread = qemu_thread_get_handle(cpu->thread); + cpu->accel->hThread = qemu_thread_get_handle(cpu->thread); #endif } diff --git a/target/i386/hax/hax-all.c b/target/i386/hax/hax-all.c index 9d9011cc38..18d78e5b6b 100644 --- a/target/i386/hax/hax-all.c +++ b/target/i386/hax/hax-all.c @@ -206,7 +206,7 @@ int hax_vcpu_destroy(CPUState *cpu) hax_close_fd(vcpu->fd); hax_global.vm->vcpus[vcpu->vcpu_id] = NULL; #ifdef _WIN32 - CloseHandle(cpu->hThread); + CloseHandle(vcpu->hThread); #endif g_free(vcpu); cpu->accel = NULL; diff --git a/target/i386/hax/hax-windows.c b/target/i386/hax/hax-windows.c index bf4b0ad941..4bf6cc08d2 100644 --- a/target/i386/hax/hax-windows.c +++ b/target/i386/hax/hax-windows.c @@ -476,7 +476,7 @@ void hax_kick_vcpu_thread(CPUState *cpu) */ cpu->exit_request = 1; if (!qemu_cpu_is_self(cpu)) { - if (!QueueUserAPC(dummy_apc_func, cpu->hThread, 0)) { + if (!QueueUserAPC(dummy_apc_func, cpu->accel->hThread, 0)) { fprintf(stderr, "%s: QueueUserAPC failed with error %lu\n", __func__, GetLastError()); exit(1); -- 2.38.1 From xen-devel-bounces@lists.xenproject.org Sat Jun 24 17:49:40 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sat, 24 Jun 2023 17:49:40 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554680.866070 (Exim 4.92) (envelope-from ) id 1qD7O5-0005bk-U8; Sat, 24 Jun 2023 17:49:29 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554680.866070; Sat, 24 Jun 2023 17:49:29 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qD7O5-0005Yv-9m; Sat, 24 Jun 2023 17:49:29 +0000 Received: by outflank-mailman (input) for mailman id 554680; Sat, 24 Jun 2023 17:49:26 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qD7Hi-0008Gp-HM for xen-devel@lists.xenproject.org; Sat, 24 Jun 2023 17:42:54 +0000 Received: from mail-wm1-x330.google.com (mail-wm1-x330.google.com [2a00:1450:4864:20::330]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 8c1d55ae-12b6-11ee-b237-6b7b168915f2; Sat, 24 Jun 2023 19:42:54 +0200 (CEST) Received: by mail-wm1-x330.google.com with SMTP id 5b1f17b1804b1-3f90b8ace97so23113725e9.2 for ; Sat, 24 Jun 2023 10:42:54 -0700 (PDT) Received: from m1x-phil.lan ([176.187.217.150]) by smtp.gmail.com with ESMTPSA id i5-20020a05600c290500b003f9b66a9376sm5651642wmd.42.2023.06.24.10.42.51 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Sat, 24 Jun 2023 10:42:53 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 8c1d55ae-12b6-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1687628573; x=1690220573; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=Lnzdpi/SMqQKnah+FjHhFaYorhth+hVWT4q3k+G9Eas=; b=Rl+gIz/1qET6eDxSMKBlhgEu7TmyZ3qVvdZ/pF7ESuaDiAgqa0TRaV3uHvFx81SIeJ qV48l02FA5t/FTKOknHNBLfCx5Ba1eIp6WEdUkWmn7UkdBYryX6Psh7GsUfx5W+xyxkL 3c8KjhetLy0GIjWOUWB3ntdnDUeOwr94g+1P+m5shTihxl+S6wUTSEMW3Qlx3DI6NP2l vrLr9dXR9+akQkWnsGaMqcGp/3u5JivD0nZdZrXF6pZOBFyTPj2x9FDEPXRcn+qIk9nD 5gqJesBceAKK2qgsqePd5rhjrvRO65NK/VxnJZ9g/MTCIDd+ugMpSpYXChqlyNwCrEuQ lcrg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687628573; x=1690220573; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=Lnzdpi/SMqQKnah+FjHhFaYorhth+hVWT4q3k+G9Eas=; b=jy2n6DM4ntmHY5tijr/M9iSOZHPaPDbr0Xv6Bhq8Gu4VbBKgo7SC7mB/lpBed8cpeV Wm7KLvxLZNAcknD78SNtPqr0XcVJKRrkcfLq1PxYmZL/hU+8WBjUP1NgySWWGsnswnnf WYzKLnv1ddJbgUdkVsJ7TUi4GQ9/nAJpnmivSI/O1zGEn/MCTXolRNlxZQ7A12f2ywEH GIT/tmDor7nbJPETBVFHrytHSCOfvsaYItpr0fPWY16gjZFu2T0VrKWGPy+H6iX7znhg 4nxWw1BKO5Xmiu7CZRckEcUgsx2FHNnCpi1IuB7cJu9f1iCwbL3QGGH/CxYqF4TuJDRG mdGw== X-Gm-Message-State: AC+VfDyBM+Owk6MqagktmR5gsVQfFpc+MKJKmfLeqISwKxeGvM39H+TH ejAQG5Cr5vFimcefwGEXi8gQUg== X-Google-Smtp-Source: ACHHUZ54XAa6Du/8XTOzNhZjWrdIxzwHN95ahuIY8Dglo2ED7aclOY9r3VnonPY6Q+CxQ2enFMDFBQ== X-Received: by 2002:a5d:4c49:0:b0:307:9702:dfc8 with SMTP id n9-20020a5d4c49000000b003079702dfc8mr21407001wrt.48.1687628573655; Sat, 24 Jun 2023 10:42:53 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: kvm@vger.kernel.org, Marcel Apfelbaum , Peter Maydell , Roman Bolshakov , qemu-arm@nongnu.org, Richard Henderson , Alexander Graf , xen-devel@lists.xenproject.org, Sunil Muthuswamy , Anthony Perard , Stefano Stabellini , Yanan Wang , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Paul Durrant , Reinoud Zandijk , Eduardo Habkost , Cameron Esfahani , Paolo Bonzini Subject: [PATCH v3 12/16] accel: Remove WHPX unreachable error path Date: Sat, 24 Jun 2023 19:41:17 +0200 Message-Id: <20230624174121.11508-13-philmd@linaro.org> X-Mailer: git-send-email 2.38.1 In-Reply-To: <20230624174121.11508-1-philmd@linaro.org> References: <20230624174121.11508-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit g_new0() can not fail. Remove the unreachable error path. https://developer-old.gnome.org/glib/stable/glib-Memory-Allocation.html#glib-Memory-Allocation.description Reported-by: Richard Henderson Signed-off-by: Philippe Mathieu-Daudé Reviewed-by: Richard Henderson --- target/i386/whpx/whpx-all.c | 6 ------ 1 file changed, 6 deletions(-) diff --git a/target/i386/whpx/whpx-all.c b/target/i386/whpx/whpx-all.c index 410b34d8ec..cad7bd0f88 100644 --- a/target/i386/whpx/whpx-all.c +++ b/target/i386/whpx/whpx-all.c @@ -2179,12 +2179,6 @@ int whpx_init_vcpu(CPUState *cpu) vcpu = g_new0(struct whpx_vcpu, 1); - if (!vcpu) { - error_report("WHPX: Failed to allocte VCPU context."); - ret = -ENOMEM; - goto error; - } - hr = whp_dispatch.WHvEmulatorCreateEmulator( &whpx_emu_callbacks, &vcpu->emulator); -- 2.38.1 From xen-devel-bounces@lists.xenproject.org Sat Jun 24 18:13:49 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sat, 24 Jun 2023 18:13:49 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554715.866097 (Exim 4.92) (envelope-from ) id 1qD7lP-000493-0t; Sat, 24 Jun 2023 18:13:35 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554715.866097; Sat, 24 Jun 2023 18:13:34 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qD7lO-00048w-T7; Sat, 24 Jun 2023 18:13:34 +0000 Received: by outflank-mailman (input) for mailman id 554715; Sat, 24 Jun 2023 18:13:33 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qD7lN-00048m-8i; Sat, 24 Jun 2023 18:13:33 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qD7lM-0007qa-TQ; Sat, 24 Jun 2023 18:13:32 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qD7lM-0006kL-Dw; Sat, 24 Jun 2023 18:13:32 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qD7lM-0003X2-DW; Sat, 24 Jun 2023 18:13:32 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=drIU5Rn48pQ9qJTub2T8YV1dAkb+wLEy+uplUwtSNAg=; b=TVqK9ciU1h63hglerD+UqsHwhD urXhqgFMpOnGBbkCFpn03xoG0jU7wbERnxbu3qhZMfdPg5Y0ennhvhSD+MEkGRrIlluAk4ZhQVvaQ fWjrWXd1OBahdMDK1SHM62iDA0TnhDc7zZx1ViGN2XSe+HyhFauD/3IiHqvy8JdmyUOA=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable test] 181575: tolerable trouble: fail/pass/starved X-Osstest-Failures: xen-unstable:test-amd64-i386-migrupgrade:xen-install/dst_host:fail:heisenbug xen-unstable:test-amd64-i386-xl-qemut-debianhvm-i386-xsm:debian-hvm-install:fail:heisenbug xen-unstable:test-amd64-amd64-xl-qcow2:guest-start/debian.repeat:fail:nonblocking xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-xsm:hosts-allocate:starved:nonblocking xen-unstable:test-arm64-arm64-xl-credit2:hosts-allocate:starved:nonblocking xen-unstable:test-arm64-arm64-xl-credit1:hosts-allocate:starved:nonblocking xen-unstable:test-arm64-arm64-xl-vhd:hosts-allocate:starved:nonblocking X-Osstest-Versions-This: xen=5c84f1f636981dab5341e84aaba8d4dd00bbc2cb X-Osstest-Versions-That: xen=5c84f1f636981dab5341e84aaba8d4dd00bbc2cb From: osstest service owner Date: Sat, 24 Jun 2023 18:13:32 +0000 flight 181575 xen-unstable real [real] http://logs.test-lab.xenproject.org/osstest/logs/181575/ Failures :-/ but no regressions. Tests which are failing intermittently (not blocking): test-amd64-i386-migrupgrade 11 xen-install/dst_host fail pass in 181565 test-amd64-i386-xl-qemut-debianhvm-i386-xsm 12 debian-hvm-install fail pass in 181565 Tests which did not succeed, but are not blocking: test-amd64-amd64-xl-qcow2 21 guest-start/debian.repeat fail in 181565 like 181558 test-arm64-arm64-xl-xsm 15 migrate-support-check fail in 181565 never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail in 181565 never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail in 181565 never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail in 181565 never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail in 181565 never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail in 181565 never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail in 181565 never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail in 181565 never pass test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 181565 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop fail like 181565 test-armhf-armhf-libvirt 16 saverestore-support-check fail like 181565 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 181565 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 181565 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop fail like 181565 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop fail like 181565 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail like 181565 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 181565 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail like 181565 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop fail like 181565 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 181565 test-amd64-i386-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-i386-xl-pvshim 14 guest-start fail never pass test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-i386-libvirt 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-i386-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 15 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-check fail never pass test-armhf-armhf-libvirt 15 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 15 saverestore-support-check fail never pass test-armhf-armhf-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 15 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 16 saverestore-support-check fail never pass test-armhf-armhf-xl 15 migrate-support-check fail never pass test-armhf-armhf-xl 16 saverestore-support-check fail never pass test-armhf-armhf-xl-multivcpu 15 migrate-support-check fail never pass test-armhf-armhf-xl-multivcpu 16 saverestore-support-check fail never pass test-armhf-armhf-xl-credit1 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 16 saverestore-support-check fail never pass test-armhf-armhf-xl-credit2 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit2 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 3 hosts-allocate starved n/a test-arm64-arm64-xl-credit2 3 hosts-allocate starved n/a test-arm64-arm64-xl-credit1 3 hosts-allocate starved n/a test-arm64-arm64-xl-vhd 3 hosts-allocate starved n/a version targeted for testing: xen 5c84f1f636981dab5341e84aaba8d4dd00bbc2cb baseline version: xen 5c84f1f636981dab5341e84aaba8d4dd00bbc2cb Last test of basis 181575 2023-06-24 07:02:12 Z 0 days Testing same since (not found) 0 attempts jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64-xtf pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-prev pass build-i386-prev pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-xtf-amd64-amd64-1 pass test-xtf-amd64-amd64-2 pass test-xtf-amd64-amd64-3 pass test-xtf-amd64-amd64-4 pass test-xtf-amd64-amd64-5 pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl pass test-amd64-i386-xl pass test-amd64-coresched-i386-xl pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-i386-xl-qemut-debianhvm-i386-xsm fail test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-i386-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-i386-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm starved test-amd64-i386-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-i386-qemut-rhel6hvm-amd pass test-amd64-i386-qemuu-rhel6hvm-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-i386-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-freebsd10-amd64 pass test-amd64-amd64-qemuu-freebsd11-amd64 pass test-amd64-amd64-qemuu-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-i386-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-i386-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-i386-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-amd64-i386-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale pass test-amd64-amd64-examine-bios pass test-amd64-i386-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 starved test-armhf-armhf-xl-credit1 pass test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 starved test-armhf-armhf-xl-credit2 pass test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine pass test-amd64-i386-examine pass test-amd64-i386-freebsd10-i386 pass test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-i386-qemut-rhel6hvm-intel pass test-amd64-i386-qemuu-rhel6hvm-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt pass test-amd64-i386-libvirt pass test-amd64-amd64-livepatch pass test-amd64-i386-livepatch pass test-amd64-amd64-migrupgrade pass test-amd64-i386-migrupgrade fail test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu pass test-amd64-amd64-pair pass test-amd64-i386-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-i386-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-i386-xl-pvshim fail test-amd64-amd64-pygrub pass test-armhf-armhf-libvirt-qcow2 pass test-amd64-amd64-xl-qcow2 pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw pass test-amd64-i386-libvirt-raw pass test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds pass test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-amd64-i386-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-i386-examine-uefi pass test-amd64-amd64-libvirt-vhd pass test-arm64-arm64-xl-vhd starved test-armhf-armhf-xl-vhd pass test-amd64-i386-xl-vhd pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Published tested tree is already up to date. From xen-devel-bounces@lists.xenproject.org Sat Jun 24 20:57:02 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sat, 24 Jun 2023 20:57:02 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554723.866107 (Exim 4.92) (envelope-from ) id 1qDAJM-0003WN-HB; Sat, 24 Jun 2023 20:56:48 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554723.866107; Sat, 24 Jun 2023 20:56:48 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDAJM-0003WG-Dn; Sat, 24 Jun 2023 20:56:48 +0000 Received: by outflank-mailman (input) for mailman id 554723; Sat, 24 Jun 2023 20:56:47 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDAJL-0003WA-1W for xen-devel@lists.xenproject.org; Sat, 24 Jun 2023 20:56:47 +0000 Received: from wout3-smtp.messagingengine.com (wout3-smtp.messagingengine.com [64.147.123.19]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 9ca8593c-12d1-11ee-8611-37d641c3527e; Sat, 24 Jun 2023 22:56:41 +0200 (CEST) Received: from compute4.internal (compute4.nyi.internal [10.202.2.44]) by mailout.west.internal (Postfix) with ESMTP id 088F3320005D; Sat, 24 Jun 2023 16:56:35 -0400 (EDT) Received: from mailfrontend2 ([10.202.2.163]) by compute4.internal (MEProxy); Sat, 24 Jun 2023 16:56:36 -0400 Received: by mail.messagingengine.com (Postfix) with ESMTPA; Sat, 24 Jun 2023 16:56:34 -0400 (EDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 9ca8593c-12d1-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= invisiblethingslab.com; h=cc:cc:content-transfer-encoding :content-type:date:date:from:from:in-reply-to:message-id :mime-version:reply-to:sender:subject:subject:to:to; s=fm2; t= 1687640195; x=1687726595; bh=aTk/llGT6CDFgEyN9hwEaJy+86atLHKKPsv mBAPjgoI=; b=fyMhMcfww/xTkjO40U1PRouf/cP4p09aJoUZE4MMa9yghcSCirW 7UhJhZT0zNY0WltKQnh35PIvYvGGbEZ+i+ryRtrAPNs6OkOisr5tMzLw9/gORTX/ F5vPvrCAGF1qBYdyp1L2WXsgHEO/8RR3yJG7y1PFsZfXyCwAuNIe0n7CvZFw/e8T YCk2lpjTG1mlvGIJD2JYYPHSas6RdpPpuUUNhm2zTskIsYC5n6LoVb2UIzXhKx+T 7tlmD4XOo11ozSXNakt0mfwmRBnzKPws4MXB/lD02BaFNmzvmIxuzTKhctjXm8hC YUceEjpRRFs7ESg6WppzCpSjC52+iguZOfA== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-transfer-encoding :content-type:date:date:feedback-id:feedback-id:from:from :in-reply-to:message-id:mime-version:reply-to:sender:subject :subject:to:to:x-me-proxy:x-me-proxy:x-me-sender:x-me-sender :x-sasl-enc; s=fm2; t=1687640195; x=1687726595; bh=aTk/llGT6CDFg EyN9hwEaJy+86atLHKKPsvmBAPjgoI=; b=ivb94SJsXamChFqJteILHqJU/fr28 VyX3tHydhyEw+jTyLFTCCXbrKV0WkdAvAUhPJ6hATPN492d6RtAq3TNkgkjRQxXt iuuQTo3ImKNZQ0zcI0JbICYIrEnKPmEOH1V1GPtxDI/5YoeKuOhdJK/vIRaEDAIf bOimXxC5laS/JBUcbBctecsP0+M6Owpo+qbdYzmMvkzTU2DDQdoUV948FJH1Jifa S0khYuSQSHqclJ2hJ9JL+L835k6iDDaM+KMu2NzX3McuT5zM3s+xcHOP3jwSv4U8 IzbJIcmP45vRM93XTinU7XUtjhKD5WV41TR284jhtlm8amh9iRN4Px0SQ== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvhedrgeegjedgudehgecutefuodetggdotefrod ftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfgh necuuegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmd enucfjughrpefhvfevufffkffoggfgsedtkeertdertddtnecuhfhrohhmpeffvghmihcu ofgrrhhivgcuqfgsvghnohhurhcuoeguvghmihesihhnvhhishhisghlvghthhhinhhgsh hlrggsrdgtohhmqeenucggtffrrghtthgvrhhnpedvfeegkedvkefgffegkefhieejtdff keehhfelheefjeeutefgleeggfdtveeileenucevlhhushhtvghrufhiiigvpedtnecurf grrhgrmhepmhgrihhlfhhrohhmpeguvghmihesihhnvhhishhisghlvghthhhinhhgshhl rggsrdgtohhm X-ME-Proxy: Feedback-ID: iac594737:Fastmail From: Demi Marie Obenour To: Juergen Gross , Stefano Stabellini , Oleksandr Tyshchenko , Jan Beulich , Konrad Rzeszutek Wilk Cc: Demi Marie Obenour , Xen developer discussion , Linux Kernel Mailing List , =?UTF-8?q?Marek=20Marczykowski-G=C3=B3recki?= , stable@vger.kernel.org Subject: [PATCH v3] xen: speed up grant-table reclaim Date: Sat, 24 Jun 2023 16:56:22 -0400 Message-ID: <20230624205624.1817-1-demi@invisiblethingslab.com> X-Mailer: git-send-email 2.41.0 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit When a grant entry is still in use by the remote domain, Linux must put it on a deferred list. Normally, this list is very short, because the PV network and block protocols expect the backend to unmap the grant first. However, Qubes OS's GUI protocol is subject to the constraints of the X Window System, and as such winds up with the frontend unmapping the window first. As a result, the list can grow very large, resulting in a massive memory leak and eventual VM freeze. To partially solve this problem, make the number of entries that the VM will attempt to free at each iteration tunable. The default is still 10, but it can be overridden at compile-time (via Kconfig), boot-time (via a kernel command-line option), or runtime (via sysfs). This is Cc: stable because (when combined with appropriate userspace changes) it fixes a severe performance and stability problem for Qubes OS users. Cc: stable@vger.kernel.org Signed-off-by: Demi Marie Obenour --- drivers/xen/grant-table.c | 40 ++++++++++++++++++++++++++++----------- 2 files changed, 41 insertions(+), 11 deletions(-) diff --git a/drivers/xen/grant-table.c b/drivers/xen/grant-table.c index e1ec725c2819d4d5dede063eb00d86a6d52944c0..fa666aa6abc3e786dddc94f895641505ec0b23d8 100644 --- a/drivers/xen/grant-table.c +++ b/drivers/xen/grant-table.c @@ -498,14 +498,20 @@ static LIST_HEAD(deferred_list); static void gnttab_handle_deferred(struct timer_list *); static DEFINE_TIMER(deferred_timer, gnttab_handle_deferred); +static atomic64_t deferred_count; +static atomic64_t leaked_count; +static unsigned int free_per_iteration = 10; + static void gnttab_handle_deferred(struct timer_list *unused) { - unsigned int nr = 10; + unsigned int nr = READ_ONCE(free_per_iteration); + const bool ignore_limit = nr == 0; struct deferred_entry *first = NULL; unsigned long flags; + size_t freed = 0; spin_lock_irqsave(&gnttab_list_lock, flags); - while (nr--) { + while ((ignore_limit || nr--) && !list_empty(&deferred_list)) { struct deferred_entry *entry = list_first_entry(&deferred_list, struct deferred_entry, list); @@ -515,10 +521,13 @@ static void gnttab_handle_deferred(struct timer_list *unused) list_del(&entry->list); spin_unlock_irqrestore(&gnttab_list_lock, flags); if (_gnttab_end_foreign_access_ref(entry->ref)) { + uint64_t ret = atomic64_sub_return(1, &deferred_count); put_free_entry(entry->ref); - pr_debug("freeing g.e. %#x (pfn %#lx)\n", - entry->ref, page_to_pfn(entry->page)); + pr_debug("freeing g.e. %#x (pfn %#lx), %llu remaining\n", + entry->ref, page_to_pfn(entry->page), + (unsigned long long)ret); put_page(entry->page); + freed++; kfree(entry); entry = NULL; } else { @@ -530,21 +539,22 @@ static void gnttab_handle_deferred(struct timer_list *unused) spin_lock_irqsave(&gnttab_list_lock, flags); if (entry) list_add_tail(&entry->list, &deferred_list); - else if (list_empty(&deferred_list)) - break; } - if (!list_empty(&deferred_list) && !timer_pending(&deferred_timer)) { + if (list_empty(&deferred_list)) + WARN_ON(atomic64_read(&deferred_count)); + else if (!timer_pending(&deferred_timer)) { deferred_timer.expires = jiffies + HZ; add_timer(&deferred_timer); } spin_unlock_irqrestore(&gnttab_list_lock, flags); + pr_debug("Freed %zu references", freed); } static void gnttab_add_deferred(grant_ref_t ref, struct page *page) { struct deferred_entry *entry; gfp_t gfp = (in_atomic() || irqs_disabled()) ? GFP_ATOMIC : GFP_KERNEL; - const char *what = KERN_WARNING "leaking"; + uint64_t leaked, deferred; entry = kmalloc(sizeof(*entry), gfp); if (!page) { @@ -567,12 +577,20 @@ static void gnttab_add_deferred(grant_ref_t ref, struct page *page) add_timer(&deferred_timer); } spin_unlock_irqrestore(&gnttab_list_lock, flags); - what = KERN_DEBUG "deferring"; + deferred = atomic64_add_return(1, &deferred_count); + leaked = atomic64_read(&leaked_count); + pr_debug("deferring g.e. %#x (pfn %#lx) (total deferred %llu, total leaked %llu)\n", + ref, page ? page_to_pfn(page) : -1, deferred, leaked); + } else { + deferred = atomic64_read(&deferred_count); + leaked = atomic64_add_return(1, &leaked_count); + pr_warn("leaking g.e. %#x (pfn %#lx) (total deferred %llu, total leaked %llu)\n", + ref, page ? page_to_pfn(page) : -1, deferred, leaked); } - printk("%s g.e. %#x (pfn %#lx)\n", - what, ref, page ? page_to_pfn(page) : -1); } +module_param(free_per_iteration, uint, 0600); + int gnttab_try_end_foreign_access(grant_ref_t ref) { int ret = _gnttab_end_foreign_access_ref(ref); -- Sincerely, Demi Marie Obenour (she/her/hers) Invisible Things Lab From xen-devel-bounces@lists.xenproject.org Sat Jun 24 22:18:30 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sat, 24 Jun 2023 22:18:30 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554729.866117 (Exim 4.92) (envelope-from ) id 1qDBaD-0003ka-6q; Sat, 24 Jun 2023 22:18:17 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554729.866117; Sat, 24 Jun 2023 22:18:17 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDBaD-0003kT-3H; Sat, 24 Jun 2023 22:18:17 +0000 Received: by outflank-mailman (input) for mailman id 554729; Sat, 24 Jun 2023 22:18:16 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDBaC-0003kI-Cq; Sat, 24 Jun 2023 22:18:16 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDBaC-0004qa-3l; Sat, 24 Jun 2023 22:18:16 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDBaB-0007QR-H1; Sat, 24 Jun 2023 22:18:15 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qDBaB-0006uX-Gh; Sat, 24 Jun 2023 22:18:15 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=9oROh51Vna93YcxgWaiVwvLrWqVQkKHksKg0inZA0ZQ=; b=pQjyO9vGbvwPb82K7hmQpKqvjW /8VQRncat9WjFhIiNQEED1VojxoCDxafG7673LPgC6ZOr4PzwqHSkvOqRPEJZ1UJJ3wzl8t/yN42G 5g8aiT1x8Pa05ZcFamKE7ZvfCs8LNFWAtddYQVr9xPA7h0EqRJJ0Jp9ObVXKmsZQXv5g=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [linux-5.4 test] 181577: regressions - FAIL X-Osstest-Failures: linux-5.4:build-amd64:xen-build:fail:regression linux-5.4:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:xen-install:fail:heisenbug linux-5.4:test-armhf-armhf-xl:guest-start/debian.repeat:fail:heisenbug linux-5.4:build-amd64-libvirt:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-qemuu-rhel6hvm-intel:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-credit2:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-dom0pvh-xl-intel:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-examine-bios:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-qemut-win7-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-dom0pvh-xl-amd:build-check(1):blocked:nonblocking linux-5.4:test-amd64-coresched-i386-xl:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-pvshim:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-examine-bios:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-credit1:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-pair:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-examine:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qcow2:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-examine-uefi:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qemut-win7-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-examine-uefi:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-qemut-rhel6hvm-amd:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-qemuu-freebsd11-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-pvhv2-intel:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-qemut-ws16-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-shadow:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-pvhv2-amd:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-qemuu-nested-amd:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-examine:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-qemuu-nested-intel:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-pvshim:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-qemuu-rhel6hvm-amd:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-qemut-rhel6hvm-intel:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qemut-ws16-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-freebsd10-i386:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-qemut-debianhvm-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-coresched-amd64-xl:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-freebsd10-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-libvirt-raw:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-pygrub:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-shadow:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-rtds:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-multivcpu:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-pair:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-qemuu-freebsd12-amd64:build-check(1):blocked:nonblocking linux-5.4:test-amd64-i386-xl-vhd:build-check(1):blocked:nonblocking linux-5.4:test-amd64-amd64-xl-qemut-debianhvm-amd64:build-check(1):blocked:nonblocking linux-5.4:test-armhf-armhf-xl-multivcpu:guest-start:fail:nonblocking linux-5.4:test-armhf-armhf-xl-credit2:guest-start/debian.repeat:fail:nonblocking linux-5.4:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-credit2:guest-start:fail:nonblocking linux-5.4:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking linux-5.4:test-armhf-armhf-xl-multivcpu:guest-start/debian.repeat:fail:nonblocking linux-5.4:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking linux-5.4:test-armhf-armhf-xl-rtds:guest-start/debian.repeat:fail:nonblocking linux-5.4:test-armhf-armhf-xl-credit1:guest-start/debian.repeat:fail:nonblocking linux-5.4:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking linux-5.4:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking linux-5.4:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking linux-5.4:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking linux-5.4:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: linux=f2b499c27a959d062db9ea5c3036052d90110ee4 X-Osstest-Versions-That: linux=f568a20f058fa1e37069cff4aac4187c1650a0e9 From: osstest service owner Date: Sat, 24 Jun 2023 22:18:15 +0000 flight 181577 linux-5.4 real [real] http://logs.test-lab.xenproject.org/osstest/logs/181577/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-amd64 6 xen-build fail in 181563 REGR. vs. 181363 Tests which are failing intermittently (not blocking): test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 7 xen-install fail in 181563 pass in 181577 test-armhf-armhf-xl 18 guest-start/debian.repeat fail pass in 181563 Tests which did not succeed, but are not blocking: build-amd64-libvirt 1 build-check(1) blocked in 181563 n/a test-amd64-i386-qemuu-rhel6hvm-intel 1 build-check(1) blocked in 181563 n/a test-amd64-i386-libvirt-pair 1 build-check(1) blocked in 181563 n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked in 181563 n/a test-amd64-i386-xl-qemuu-ovmf-amd64 1 build-check(1) blocked in 181563 n/a test-amd64-amd64-libvirt 1 build-check(1) blocked in 181563 n/a test-amd64-amd64-xl-credit2 1 build-check(1) blocked in 181563 n/a test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked in 181563 n/a test-amd64-amd64-dom0pvh-xl-intel 1 build-check(1) blocked in 181563 n/a test-amd64-i386-examine-bios 1 build-check(1) blocked in 181563 n/a test-amd64-i386-xl-qemut-win7-amd64 1 build-check(1) blocked in 181563 n/a test-amd64-i386-libvirt 1 build-check(1) blocked in 181563 n/a test-amd64-i386-xl-qemuu-ws16-amd64 1 build-check(1) blocked in 181563 n/a test-amd64-amd64-dom0pvh-xl-amd 1 build-check(1) blocked in 181563 n/a test-amd64-coresched-i386-xl 1 build-check(1) blocked in 181563 n/a test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked in 181563 n/a test-amd64-i386-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked in 181563 n/a test-amd64-amd64-xl-pvshim 1 build-check(1) blocked in 181563 n/a test-amd64-amd64-examine-bios 1 build-check(1) blocked in 181563 n/a test-amd64-amd64-xl-credit1 1 build-check(1) blocked in 181563 n/a test-amd64-amd64-pair 1 build-check(1) blocked in 181563 n/a test-amd64-amd64-xl-qemuu-ws16-amd64 1 build-check(1) blocked in 181563 n/a test-amd64-amd64-examine 1 build-check(1) blocked in 181563 n/a test-amd64-amd64-xl-qcow2 1 build-check(1) blocked in 181563 n/a test-amd64-i386-examine-uefi 1 build-check(1) blocked in 181563 n/a test-amd64-amd64-libvirt-vhd 1 build-check(1) blocked in 181563 n/a test-amd64-amd64-xl-qemut-win7-amd64 1 build-check(1) blocked in 181563 n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked in 181563 n/a test-amd64-amd64-examine-uefi 1 build-check(1) blocked in 181563 n/a test-amd64-i386-qemut-rhel6hvm-amd 1 build-check(1) blocked in 181563 n/a test-amd64-amd64-qemuu-freebsd11-amd64 1 build-check(1) blocked in 181563 n/a test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked in 181563 n/a test-amd64-amd64-xl-pvhv2-intel 1 build-check(1) blocked in 181563 n/a test-amd64-amd64-xl-qemuu-win7-amd64 1 build-check(1) blocked in 181563 n/a test-amd64-i386-xl-qemut-ws16-amd64 1 build-check(1) blocked in 181563 n/a test-amd64-amd64-xl-shadow 1 build-check(1) blocked in 181563 n/a test-amd64-amd64-xl-pvhv2-amd 1 build-check(1) blocked in 181563 n/a test-amd64-amd64-qemuu-nested-amd 1 build-check(1) blocked in 181563 n/a test-amd64-i386-examine 1 build-check(1) blocked in 181563 n/a test-amd64-amd64-qemuu-nested-intel 1 build-check(1) blocked in 181563 n/a test-amd64-i386-xl-pvshim 1 build-check(1) blocked in 181563 n/a test-amd64-i386-qemuu-rhel6hvm-amd 1 build-check(1) blocked in 181563 n/a test-amd64-i386-qemut-rhel6hvm-intel 1 build-check(1) blocked in 181563 n/a test-amd64-amd64-libvirt-pair 1 build-check(1) blocked in 181563 n/a test-amd64-i386-xl 1 build-check(1) blocked in 181563 n/a test-amd64-amd64-xl-qemut-ws16-amd64 1 build-check(1) blocked in 181563 n/a test-amd64-amd64-xl-qemuu-ovmf-amd64 1 build-check(1) blocked in 181563 n/a test-amd64-i386-xl-qemuu-win7-amd64 1 build-check(1) blocked in 181563 n/a test-amd64-i386-freebsd10-i386 1 build-check(1) blocked in 181563 n/a test-amd64-i386-xl-qemut-debianhvm-amd64 1 build-check(1) blocked in 181563 n/a test-amd64-coresched-amd64-xl 1 build-check(1) blocked in 181563 n/a test-amd64-i386-freebsd10-amd64 1 build-check(1) blocked in 181563 n/a test-amd64-i386-libvirt-raw 1 build-check(1) blocked in 181563 n/a test-amd64-amd64-pygrub 1 build-check(1) blocked in 181563 n/a test-amd64-i386-xl-shadow 1 build-check(1) blocked in 181563 n/a test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked in 181563 n/a test-amd64-amd64-libvirt-xsm 1 build-check(1) blocked in 181563 n/a test-amd64-amd64-xl-rtds 1 build-check(1) blocked in 181563 n/a test-amd64-amd64-xl-multivcpu 1 build-check(1) blocked in 181563 n/a test-amd64-i386-pair 1 build-check(1) blocked in 181563 n/a test-amd64-amd64-xl 1 build-check(1) blocked in 181563 n/a test-amd64-amd64-qemuu-freebsd12-amd64 1 build-check(1) blocked in 181563 n/a test-amd64-i386-xl-vhd 1 build-check(1) blocked in 181563 n/a test-amd64-amd64-xl-qemut-debianhvm-amd64 1 build-check(1) blocked in 181563 n/a test-armhf-armhf-xl-multivcpu 14 guest-start fail in 181563 like 181336 test-armhf-armhf-xl-credit2 18 guest-start/debian.repeat fail in 181563 like 181336 test-armhf-armhf-xl-credit2 15 migrate-support-check fail in 181563 never pass test-armhf-armhf-xl-credit2 16 saverestore-support-check fail in 181563 never pass test-armhf-armhf-xl-credit2 14 guest-start fail like 181354 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 181363 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop fail like 181363 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop fail like 181363 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 181363 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 181363 test-armhf-armhf-xl-multivcpu 18 guest-start/debian.repeat fail like 181363 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 181363 test-armhf-armhf-xl-rtds 18 guest-start/debian.repeat fail like 181363 test-armhf-armhf-xl-credit1 18 guest-start/debian.repeat fail like 181363 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop fail like 181363 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail like 181363 test-armhf-armhf-libvirt 16 saverestore-support-check fail like 181363 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail like 181363 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop fail like 181363 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 181363 test-amd64-i386-xl-pvshim 14 guest-start fail never pass test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-i386-libvirt 15 migrate-support-check fail never pass test-amd64-i386-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 15 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 16 saverestore-support-check fail never pass test-armhf-armhf-xl-multivcpu 15 migrate-support-check fail never pass test-armhf-armhf-xl-multivcpu 16 saverestore-support-check fail never pass test-amd64-i386-libvirt-raw 14 migrate-support-check fail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-armhf-armhf-xl-credit1 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 16 saverestore-support-check fail never pass test-armhf-armhf-xl-rtds 15 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 16 saverestore-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass test-armhf-armhf-xl 15 migrate-support-check fail never pass test-armhf-armhf-xl 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail never pass test-armhf-armhf-libvirt 15 migrate-support-check fail never pass test-armhf-armhf-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 15 saverestore-support-check fail never pass version targeted for testing: linux f2b499c27a959d062db9ea5c3036052d90110ee4 baseline version: linux f568a20f058fa1e37069cff4aac4187c1650a0e9 Last test of basis 181363 2023-06-10 15:39:59 Z 14 days Failing since 181425 2023-06-14 10:50:49 Z 10 days 19 attempts Testing same since 181542 2023-06-21 23:13:50 Z 2 days 6 attempts ------------------------------------------------------------ People who touched revisions under test: Adrian Hunter Ahmed Zaki Ai Chao Alan Stern Aleksandr Loktionov Alex Deucher Alex Maftei Alexander Kapshuk Alexander Sverdlin Alexandru Sorodoc Andrew Morton Arnd Bergmann Bartosz Golaszewski Ben Hutchings Ben Skeggs Bernhard Seibold Bjørn Mork Bob Pearson Chia-I Wu Chris Paterson (CIP) Christian Loehle Christoph Hellwig Dan Carpenter Dave Airlie David Ahern David Howells David Jander David S. Miller David Sterba Dinh Nguyen Dmitry Torokhov Edson Juliano Drosdeck Edward Srouji Elson Roy Serrao Eric Dumazet Fedor Pchelkin Florian Fainelli Florian Westphal Gaosheng Cui Greg Kroah-Hartman Guenter Roeck Guillaume Nault Gustavo A. R. Silva Hangbin Liu Hangyu Hua Hans de Goede Harshit Mogalapalli Helge Deller Ian Ziemba Ilya Dryomov Ismael Ferreras Morezuelas JaimeLiao Jakub Kicinski Jamal Hadi Salim Jan Höppner Janne Grunau Jason Gunthorpe Jens Axboe Jerry Meng Jiri Slaby (SUSE) Johan Hovold Johannes Thumshirn Jon Hunter Josef Bacik Joseph Qi Jozsef Kadlecsik Juergen Gross Krzysztof Kozlowski Kuniyuki Iwashima Lee Jones Leon Romanovsky Leon Romanovsky Lin Ma Linus Torvalds Linus Walleij Linux Kernel Functional Testing Lisa Chen (陈敏捷) Liviu Dudau Luis Chamberlain Luiz Augusto von Dentz Luís Henriques Luís Henriques Lyude Paul Manuel Lauss Marc Dionne Marc Kleine-Budde Marc Zyngier Marek Vasut Mario Limonciello Mark Brown Martin Blumenstingl Martin Hundebøll Maxime Ripard Michael Chan Min Li Miquel Raynal Mirsad Goran Todorovac Mirsad Todorovac Natalia Petrova Nikolay Aleksandrov Oleksij Rempel Osama Muhammad Pablo Neira Ayuso Paolo Abeni Paulo Alcantara (SUSE) Paulo Alcantara Qingfang DENG Rafal Romanowski Randy Dunlap RenHai Ricardo Ribalda Richard Cochran Rishabh Bhatnagar Roberto Sassu Ross Lagerwall Ruihan Li Ryusuke Konishi Saravanan Vajravel Sasha Levin Sebastian Reichel Selvin Xavier Shuah Khan Simon Wunderlich Somnath Kotur Stefan Berger Stefan Ghinea Stefan Haberland Stephan Gerhold Stephen Hemminger Steve French Sudeep Holla Sudip Mukherjee Sukrut Bellary Sungwoo Kim Sven Eckelmann Takashi Iwai Tejun Heo Theodore Ts'o Thinh Nguyen Thomas Bogendoerfer Tijs Van Buggenhout Tony Nguyen Ulf Hansson Uwe Kleine-König Ville Syrjälä Vlad Buslov Vladimir Oltean Vladislav Efanov Wes Huang Wolfram Sang Xin Long Xiubo Li Ying Hsu Yishai Hadas YouChing Lin Zhu Yanjun Zixuan Fu jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl fail test-amd64-i386-xl pass test-amd64-coresched-i386-xl pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-i386-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-i386-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-i386-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-i386-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-i386-qemut-rhel6hvm-amd pass test-amd64-i386-qemuu-rhel6hvm-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-i386-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-freebsd10-amd64 pass test-amd64-amd64-qemuu-freebsd11-amd64 pass test-amd64-amd64-qemuu-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-i386-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-i386-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-i386-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-amd64-i386-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale pass test-amd64-amd64-examine-bios pass test-amd64-i386-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 fail test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 fail test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine pass test-amd64-i386-examine pass test-amd64-i386-freebsd10-i386 pass test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-i386-qemut-rhel6hvm-intel pass test-amd64-i386-qemuu-rhel6hvm-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt pass test-amd64-i386-libvirt pass test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu fail test-amd64-amd64-pair pass test-amd64-i386-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-i386-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-i386-xl-pvshim fail test-amd64-amd64-pygrub pass test-armhf-armhf-libvirt-qcow2 pass test-amd64-amd64-xl-qcow2 pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw pass test-amd64-i386-libvirt-raw pass test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds fail test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-amd64-i386-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-i386-examine-uefi pass test-amd64-amd64-libvirt-vhd pass test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd pass test-amd64-i386-xl-vhd pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 3426 lines long.) From xen-devel-bounces@lists.xenproject.org Sun Jun 25 04:14:56 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sun, 25 Jun 2023 04:14:56 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554736.866127 (Exim 4.92) (envelope-from ) id 1qDH98-0005L6-Lg; Sun, 25 Jun 2023 04:14:42 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554736.866127; Sun, 25 Jun 2023 04:14:42 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDH98-0005Kz-IH; Sun, 25 Jun 2023 04:14:42 +0000 Received: by outflank-mailman (input) for mailman id 554736; Sun, 25 Jun 2023 04:14:41 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDH97-0005KW-Fj; Sun, 25 Jun 2023 04:14:41 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDH97-0004Eh-7l; Sun, 25 Jun 2023 04:14:41 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDH96-00081k-Kf; Sun, 25 Jun 2023 04:14:40 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qDH96-0002jT-In; Sun, 25 Jun 2023 04:14:40 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=TM2xYkh9O0GWS16Wd+zLr14Q5NLMxSszYIL6k/DPO0g=; b=xwBOlOtycB27Iddy8VxQeIC7En PwvUobWw90LSZaHrd3QFYsBoalAFNyMtW81Mrx4tVNAvZ0nYEJHjv+QfOoZxWZTNaS+vp2WUF91/Z uu4nTPedC1WQn9f+wp+dxCFpJignDUhjeWD2mr1KwEKQu+qQaXNHnVbZDSl5+i0mHems=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [linux-linus test] 181580: regressions - FAIL X-Osstest-Failures: linux-linus:test-armhf-armhf-xl-credit1:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-vhd:guest-start/debian.repeat:fail:heisenbug linux-linus:test-armhf-armhf-xl:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-raw:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-credit2:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking linux-linus:test-armhf-armhf-libvirt:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-arndale:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-examine:reboot:fail:nonblocking linux-linus:test-armhf-armhf-xl-rtds:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-qcow2:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-vhd:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-multivcpu:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-qcow2:migrate-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-raw:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: linux=a92b7d26c743b9dc06d520f863d624e94978a1d9 X-Osstest-Versions-That: linux=6c538e1adbfc696ac4747fb10d63e704344f763d From: osstest service owner Date: Sun, 25 Jun 2023 04:14:40 +0000 flight 181580 linux-linus real [real] http://logs.test-lab.xenproject.org/osstest/logs/181580/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: test-armhf-armhf-xl-credit1 8 xen-boot fail REGR. vs. 180278 Tests which are failing intermittently (not blocking): test-amd64-amd64-xl-vhd 21 guest-start/debian.repeat fail pass in 181573 Tests which did not succeed, but are not blocking: test-armhf-armhf-xl 8 xen-boot fail like 180278 test-armhf-armhf-libvirt-raw 8 xen-boot fail like 180278 test-armhf-armhf-xl-credit2 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 180278 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 180278 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 180278 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 180278 test-armhf-armhf-libvirt 8 xen-boot fail like 180278 test-armhf-armhf-xl-arndale 8 xen-boot fail like 180278 test-armhf-armhf-examine 8 reboot fail like 180278 test-armhf-armhf-xl-rtds 8 xen-boot fail like 180278 test-armhf-armhf-libvirt-qcow2 8 xen-boot fail like 180278 test-armhf-armhf-xl-vhd 8 xen-boot fail like 180278 test-armhf-armhf-xl-multivcpu 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 180278 test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qcow2 14 migrate-support-check fail never pass test-amd64-amd64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass version targeted for testing: linux a92b7d26c743b9dc06d520f863d624e94978a1d9 baseline version: linux 6c538e1adbfc696ac4747fb10d63e704344f763d Last test of basis 180278 2023-04-16 19:41:46 Z 69 days Failing since 180281 2023-04-17 06:24:36 Z 68 days 129 attempts Testing same since 181573 2023-06-24 02:11:10 Z 1 days 2 attempts ------------------------------------------------------------ 2770 people touched revisions under test, not listing them all jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl fail test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-freebsd11-amd64 pass test-amd64-amd64-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale fail test-amd64-amd64-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 fail test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 fail test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine fail test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt fail test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu fail test-amd64-amd64-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-amd64-pygrub pass test-amd64-amd64-libvirt-qcow2 pass test-armhf-armhf-libvirt-qcow2 fail test-amd64-amd64-libvirt-raw pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw fail test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds fail test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-amd64-xl-vhd fail test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd fail ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 354325 lines long.) From xen-devel-bounces@lists.xenproject.org Sun Jun 25 05:30:41 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sun, 25 Jun 2023 05:30:41 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554742.866136 (Exim 4.92) (envelope-from ) id 1qDIKS-0005ls-8i; Sun, 25 Jun 2023 05:30:28 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554742.866136; Sun, 25 Jun 2023 05:30:28 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDIKS-0005ll-5s; Sun, 25 Jun 2023 05:30:28 +0000 Received: by outflank-mailman (input) for mailman id 554742; Sun, 25 Jun 2023 05:30:27 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDIKQ-0005lf-Tf for xen-devel@lists.xenproject.org; Sun, 25 Jun 2023 05:30:27 +0000 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by se1-gles-flk1.inumbo.com (Halon) with ESMTP id 5fc24630-1319-11ee-8611-37d641c3527e; Sun, 25 Jun 2023 07:30:20 +0200 (CEST) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 4283B2F4; Sat, 24 Jun 2023 22:31:03 -0700 (PDT) Received: from a011292.shanghai.arm.com (a011292.shanghai.arm.com [10.169.190.94]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id DC7E43F64C; Sat, 24 Jun 2023 22:30:16 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 5fc24630-1319-11ee-8611-37d641c3527e From: Penny Zheng To: xen-devel@lists.xenproject.org Cc: Penny Zheng , Stefano Stabellini , Julien Grall , Bertrand Marquis , Wei Chen , Penny Zheng Subject: [PATCH v1] xen/docs: design doc for GICv4.0 vLPI support Date: Sun, 25 Jun 2023 13:29:58 +0800 Message-Id: <20230625052958.2835531-1-Penny.Zheng@arm.com> X-Mailer: git-send-email 2.25.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit This is a design doc for GICv4.0 vLPI support. Signed-off-by: Penny Zheng --- docs/designs/gicv4_vlpi.md | 333 +++++++++++++++++++++++++++++++++++++ 1 file changed, 333 insertions(+) create mode 100644 docs/designs/gicv4_vlpi.md diff --git a/docs/designs/gicv4_vlpi.md b/docs/designs/gicv4_vlpi.md new file mode 100644 index 0000000000..9a1969d7cc --- /dev/null +++ b/docs/designs/gicv4_vlpi.md @@ -0,0 +1,333 @@ +# GICv4.0 Virtual LPI Support + +We will have four stages to add GICv4.0/GICv4.1 support to Xen. + + * Stage#1: Add GICv4.0 Virtual LPI support + * Stage#2: Add GICv4.0 Virtual SGI support + * Stage#3: Add GICv4.1 Virtual LPI support + * Stage#4: Add GICv4.1 Virtual SGI support + +This design doc is only for "Stage#1: Add GICv4.0 Virtual LPI support". + +# Introduction + +In GICv3, the hypervisor uses the system registers to present LPIs to a +virtualized system. A virtual LPI (vLPI) is generated when the hypervisor +writes to a List register. Now with GICv4.0, it provides support for the direct +injection of vLPIs, with no hypervisor involvement at runtime. + +With the direct injection of vLPIs, the GICR_* registers use structures in +memory for each vPE to hold virtual LPI configuration and virtual pending +configuration for vLPIs in the same way that they use structures in memory to +hold LPI configuration and pending configuration for physical LPIs. + +The following summarises the hardware and serves as a set of assumptions +for the GICv4.0 virtual LPI support software design. For full details see +the "GIC Architecture Specification"[1]. + +This design refers to the Linux KVM GICv4 patches[2] and we adapt them to +Xen gic virtualization framework. + +# Hardware background + +## 4.0 ITS with direct injection of virtual LPI interrupts + +The 4.0 ITS could maps an EventID and a DeviceID to an vINTID associated +with a vPE. + +### vPE table + +The vPE table consists of vPE table entries that provide a mapping from the +vPEID generated by the ITS to: + + * The target Redistributor, in the format defined by GITS_TYPER.PTA. + * The base address of the virtual LPI Pending table associated with the target +vPE. + +An area of memory defined by GITS_BASER2 holds the vPE table and indicates +the size of each entry in the table. + +### Doorbell interrupt + +Virtual interrupts can be directly injected for the *scheduled vPE*. +If the target vPE is not scheduled, the virtual interrupt is recorded as +being pending in the appropriate VPT(Virtual Pending Table). + +Besides this, We can configure a physical LPI that is sent to a PE when the +vLPI becomes pending and the vPE is not scheduled on that PE. This physical LPI +is a Doorbell Interrupt. + +### ITT table with vLPI and doorbell interrupt support + +We could use ITS VMAPTI command to write an new ITTE(Interruption Translation +Table Entry) entry in ITT(Interruption Translation Table) for a direct +event/vLPI pair. The new ITS interruption translation table entry is +updated to be configured with: + + * A control flag that indicates that the EventID is associated with a +virtual LPI. + * A vPEID to index into the ITS vPE table. + * A virtual INTID (vINTID) that indicates which vLPI becomes pending. + * A physical INTID (pINTID) that can be used as a doorbell interrupt to the +hypervisor if the vPE is not scheduled on a PE. The value 1023 is used where a +doorbell interrupt is not required, otherwise an INTID in the physical LPI +range must be provided + +### New ITS commands summary + +The commands used to control the handling of virtual LPIs are as follows: + + * VINVALL + * VMAPI + * VMAPP GICv4.0 + * VMAPTI + * VMOVI + * VMOVP GICv4.0 + * VSYNC + +## 4.0 Redistributor with direct injection of virtual LPI interrupts + +### GICR_VPROPBASER + +This register sets the address of the virtual LPI Configuration table, which +records the configuration of vLPIs. + +The configuration of vLPIs is global to all vPEs in the same VM, so we shall +assume that all vPEs in a VM will use the same copy of the virtual +Configuration Table. + +### GICR_VPENDBASER + +This register sets the address of the virtual LPI Pending table(VPT), which +records the pending state of the vLPIs. Each vPE has its own private VPT. + +# Implementation on Xen + +## Probe GICv4.0 + +The GICv4.0 is just an augmented GICv3, and it is reusing quantities of +GICv3 routines. +The way to probe whether the hardware supports GICv4.0 is to check whether the +Redistributors support direct injection of virtual LPIs(vLPIs), through +GICR_TYPER.VLPIS. + +## vPE initialization + +In Xen, we assign a vPE instance for each vCPU. When creating a VM, the low +level GICv4 code is responsible for creating vPE instance for each vcpu, which +includes: + + * allocating each vPE a unique VPEID. In Xen, we simply use the VCPUID +as VPEID. + * allocating a doorbell interrupt for each vPE, which follows the current +allocation of a free physical LPI. + * allocating the virtual pending table for each vPE. Virtual pending table +and pending table share the same format. + * allocating the virtual property table for the VM. Virtual property table +and property table share the same format. + +At initialization stage, we eagerly inform all the v4 ITSes and map vPE to the +first possible CPU using ITS VMAPP GICv4.0 command. +In GICv4.0, VMAPP GICv4.0 maps the vPE table entry defined by vPEID to the +target RDbase, including an associated virtual LPI Pending table. + +All of these have to be reversed when the VM is brought down. + +## vLPI configuration + +In GICv3, when trapping from guest MAPD command, we map all the events within +this device with host LPIs through MAPTI command. This part stays the same in +GICv4.0. + +Later when trapping from guest MAPTI command, we record the connection +between the event ID and the given VCPU/vLPI pair, for properly injecting vLPI +with List Register if the event fires in the future. +While in GICv4.0, we drop the original physical mapping(eventID -> host LPI), +and issue VMAPTI command to establish the connection between the virtual +interrupt and the target VCPU/vLPI pair through VMAPTI command. +In Xen, We add an flag field "bool hw" in "struct pending_irq" to tell the +different type of vLPI on GICv3 and GICv4.0, and set it "true" on GICv4.0 +hardware to indicate the interrupt is tied to HW. + +e.g. +``` +struct pending_irq +{ +... +bool hw; +} + +its_handle_mapti() -> gicv3_assign_guest_event() -> if ( pirq_is_tied_to_hw(p) ) + -> gicv4_assign_guest_event() +``` + +In GICv4.0, VMAPTI command maps the event defined by DeviceID and EventID into +an ITT entry with vPEID and vINTID, and Dbell_pINTID, a doorbell provision. +Now later when the event arrives, the vLPI will be directly injected into the +guest. + +## Change vLPI configuration + +Any guest invalidation, INV and INVALL, triggers vLPI property update. +In current GICv3 codeflow, we read the enabled bit and priority from the +virtual property table in guest memory and update the virtual IRQ's state in +the given pending_irq. + +In GICv4.0, other than above operations, it shall also include the following +changes: + * Virtual configuration table update. + * If guest issues INV, then an INV command is also required for the +vLPI that is modified. As SYNC only synchronises physical LPI, we send an +INV+VSYNC for forwarded VLPIs, ensuring that the ITS can properly synchronise +the invalidation of VLPIs. + * If guest issues INVALL, besides iterating over the VM's vlpi radix +tree to find all vLPIs on the target vPE and update the configuration, the +same as GICv3 does, An extra VINVALL command is required to ensure +any cached Redistributor information associated with vPEID is consistent with +the associated virtual LPI configuration table held in memory. + +e.g. +``` +its_handle_inv() -> update_lpi_property() -> if ( pirq_is_tied_to_hw(p) ) + -> its_vlpi_prop_update() +``` + +## Guest ITS Command Translation + +A number of guest ITS commands are simply sharing the same routine with GICv3. +For example, MAPD is still translated to assign device to the guest. Same goes +for things like MAPC, as we don't rely on the concept of collection to deal +with the actual vPE affinity. + +But the following ITS commands guest performs on its LPI through the vITS shall +have different hooks to communicate to the HW: + + * The INT command generates an actual INT on the corresponding VLPI. + * The CLEAR command generates an actual CLEAR on the corresponding VLPI. + * When guest frees an LPI(on a DISCARD command, for example), we need +to unmap the vLPI by generating an actual DISCARD on the corresponding vLPI. + * MOVI is translated to an update of the existing vLPI mapping, changing the +target vPE, and resulting in a VMOVI being generated. + +In above path, as we need to treat guest LPI differently for GICv3 and GICv4, +we are using the previous introduced "hw" flag in "struct pending_irq" to tell +the difference, whether guest LPI is an emulated one in GICv3, or a real one +tied to HW in GICv4.0. + +## Scheduled in/out vPE + +The GIC hardware determines whether the vPE is scheduled on a PE when: + + * GICR_VPENDBASER.Valid == 1. + * GICR_VPENDBASER.Physical_Address holds the same value as defined in the +VPT_addr field in the VMAPP GICv4.0 command for the vPE that is the target of +the vLPI. + +Anytime when vcpu blocks/unblocks(e.g. trap from WFI), or get scheduled out/ +scheduled in, hypervisor must update the according Redistributor registers. + +### vPE descheduling + +The whole process about descheduling vPE includes the following steps: + +#### Clear GICR_VPENDBASER.Valid + +Clearing the Valid bit informs the Redistributor that a context switch is +taking place. The Redistributor will retrieve any pending virtual interrupts +from the virtual CPU interface, and ensure that the VPT in memory is correct. + +#### Poll GICR_VPENDBASER.Dirty until it reads 0 + +The Dirty bit reports that the Redistributor has finished updating the VPT. +The new vPE cannot be scheduled until this bit reads 0. + +#### Read GICR_VPENDBASER.PendingLast + +The Redstributor retrieves any pending virtual interrupts from the virtual +CPU interface and updates it in PendingLast bit. +So we could read PendingLast bit to tell whether there are pending and enabled +interrupts for the last scheduled vPE. + +### vPE scheduling + +The whole process about scheduling vPE includes the following steps: + +#### Change vPE affinity if needed through VMOVP command + +Before making the VPE resident, we need to make sure the redistributor +expects us here. +Changing vPE affinity could be done through VMOVP command, and it is up +to GITS_TYPER.VMOVP feature bit to tell whether software is responsible +for propagating the updated mapping or the hardware is. + +A system can include multiple ITSs. Where more than one ITS has mappings for a +vPE, any change must be applied to all ITSs that contain the original mappings. +GICv4.0 supports two models for doing this, and GITS_TYPER.VMOVP indicates +which model is used. + +##### GITS_TYPER.VMOVP == 0 + +The VMOVP command must be issued on all ITSs with a mapping for the vPE. +It is software's responsibility to propagate the change and handle +synchronization. + +##### GITS_TYPER.VMOVP == 1 + +The VMOVP command must be issued on only one ITS. +It is hardware's responsibility to propagate the change and handle +synchronization. + +#### Write GICR_VPROPBASER.Physical_Address + +GICR_VPROPBASER.Physical_Address contains the physical address of virtual +LPI Configuration table for scheduling vPE. + +#### Write GICR_VPENDBASER.Physical_Address + +GICR_VPENDBASER.Physical_Address contains the physical address of virtual +LPI pending table. + +#### Set GICR_VPENDBASER.Valid 1 + +Setting the Valid bit to 1 informs the Redistributor that the new vPE is +now valid, and that virtual interrupts for that vPE can be forwarded to the +virtual CPU interface. + +## Doorbell handling + +Each vPE is allocated and configured with a doorbell interrupt through VMAPTI +command in GICv4.0, which is a physical LPI and gets fired by hardware each +time a VLPI is made pending whilst the vcpu is not running. + +The hypervisor monitor the doorbell the same way we listen to a normal physical +LPI. Each time we catch a doorbell, we let hypervisor handle it by kicking its +target, not-running vPE. + +In GICv4.0, in order to utilize doorbell interrupt, each time the vPE gets +scheduled out/blocked, the doorbell interrupt need to be enabled. And when +the vPE gets scheduled in/unblocked, the doorbell interrupt need to be disabled. + +# Main drawback on GICv4.0 + * Doorbell gets enabled on entering vPE blocked state, like trapping from +WFI, and disabled on leaving it. It requires frequently reconfiguring the +doorbell(physical LPI) at runtime, which at most requires 6 ITS commands in +one way and send the cost of a WFI to the roof. + * Doorbells are per-vLPI in GICv4.0. We use VMAPTI command to configure +doorbell for a vLPI mapping(DevID/EventID -> vLPI). However, it shall be +per-vPE to conform to semantic logic. + * GICv4.0 makes a point in always having the half information at the place. +The ITS knows about the vLPI mapping, the doorbell and the target redistributor, +but not the property and pending table. While the redistributor only knows +about the tables when the vcpu is resident. + +All Above drawbacks will be fixed in GICv4.1 hardware. + +# Limitations + + * Since current GICv3 vLPI support is only applicable on hardware domain, +this restriction applies to current GICv4.0 design too. + +# Reference + +[1] https://developer.arm.com/documentation/ihi0069/latest/ +[2] https://lore.kernel.org/linux-arm-kernel/20170628150411.15846-1-marc.zyngier@arm.com/ -- 2.25.1 From xen-devel-bounces@lists.xenproject.org Sun Jun 25 07:59:07 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sun, 25 Jun 2023 07:59:07 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554750.866147 (Exim 4.92) (envelope-from ) id 1qDKe3-0003MH-QO; Sun, 25 Jun 2023 07:58:51 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554750.866147; Sun, 25 Jun 2023 07:58:51 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDKe3-0003MA-Mg; Sun, 25 Jun 2023 07:58:51 +0000 Received: by outflank-mailman (input) for mailman id 554750; Sun, 25 Jun 2023 07:58:50 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDKe1-0003M4-Q4 for xen-devel@lists.xenproject.org; Sun, 25 Jun 2023 07:58:50 +0000 Received: from mga05.intel.com (mga05.intel.com [192.55.52.43]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 1ae7b192-132e-11ee-b237-6b7b168915f2; Sun, 25 Jun 2023 09:58:45 +0200 (CEST) Received: from orsmga006.jf.intel.com ([10.7.209.51]) by fmsmga105.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 25 Jun 2023 00:58:41 -0700 Received: from lkp-server01.sh.intel.com (HELO 783282924a45) ([10.239.97.150]) by orsmga006.jf.intel.com with ESMTP; 25 Jun 2023 00:58:34 -0700 Received: from kbuild by 783282924a45 with local (Exim 4.96) (envelope-from ) id 1qDKdm-0009sJ-0Z; Sun, 25 Jun 2023 07:58:34 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 1ae7b192-132e-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1687679925; x=1719215925; h=date:from:to:cc:subject:message-id:references: mime-version:in-reply-to; bh=eTIwvrfKylgiLU30c+QKGL2VdYd5OeJbT6ROhsR0yJI=; b=neV7gq/9aN83HABzFrHRqMas+KNi5YLf2cRweFmJwoCCefhUx6CATVFV EG/d1F3R2s5DpHVIg7AqwjZcF1hnqQusoo47jZOcR/DknfIxLD2QoNpCW g4lP6wLK73IGp/h+4gxQS8XjdXS6sX3QawAwcV3F2mmMsK5JNo9NNvC4D swft/+LIY5onWDCC64kh2y/UdVdsRuIe4Dz/XfFP5vCg0ockGENEBjjPK VigY4d+XJ/xJhh4xHFw+d+8TGtR66qT5jopUFku/fcnBFPkZofmKfzYNC LYIUSJ1b7vmGj1xgOr6qkfyT96CMgg+BnKDKuhJRDCiIXXQrHnWSGFGSi A==; X-IronPort-AV: E=McAfee;i="6600,9927,10751"; a="447419945" X-IronPort-AV: E=Sophos;i="6.01,156,1684825200"; d="scan'208";a="447419945" X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10751"; a="693123135" X-IronPort-AV: E=Sophos;i="6.01,156,1684825200"; d="scan'208";a="693123135" Date: Sun, 25 Jun 2023 15:57:56 +0800 From: kernel test robot To: "Vishal Moola (Oracle)" , Andrew Morton , Matthew Wilcox Cc: oe-kbuild-all@lists.linux.dev, Linux Memory Management List , linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" , Geert Uytterhoeven , Mike Rapoport Subject: Re: [PATCH v5 24/33] m68k: Convert various functions to use ptdescs Message-ID: <202306251513.WVzxgGxu-lkp@intel.com> References: <20230622205745.79707-25-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20230622205745.79707-25-vishal.moola@gmail.com> Hi Vishal, kernel test robot noticed the following build errors: [auto build test ERROR on next-20230622] [cannot apply to akpm-mm/mm-everything powerpc/next powerpc/fixes s390/features geert-m68k/for-next geert-m68k/for-linus linus/master v6.4-rc7 v6.4-rc6 v6.4-rc5 v6.4-rc7] [If your patch is applied to the wrong git tree, kindly drop us a note. And when submitting patch, we suggest to use '--base' as documented in https://git-scm.com/docs/git-format-patch#_base_tree_information] url: https://github.com/intel-lab-lkp/linux/commits/Vishal-Moola-Oracle/mm-Add-PAGE_TYPE_OP-folio-functions/20230623-050011 base: next-20230622 patch link: https://lore.kernel.org/r/20230622205745.79707-25-vishal.moola%40gmail.com patch subject: [PATCH v5 24/33] m68k: Convert various functions to use ptdescs config: m68k-randconfig-s051-20230625 (https://download.01.org/0day-ci/archive/20230625/202306251513.WVzxgGxu-lkp@intel.com/config) compiler: m68k-linux-gcc (GCC) 12.3.0 reproduce: (https://download.01.org/0day-ci/archive/20230625/202306251513.WVzxgGxu-lkp@intel.com/reproduce) If you fix the issue in a separate patch/commit (i.e. not just a new version of the same patch/commit), kindly add following tags | Reported-by: kernel test robot | Closes: https://lore.kernel.org/oe-kbuild-all/202306251513.WVzxgGxu-lkp@intel.com/ All error/warnings (new ones prefixed by >>): In file included from arch/m68k/include/asm/pgalloc.h:12, from kernel/fork.c:103: arch/m68k/include/asm/mcf_pgalloc.h: In function 'pgd_alloc': >> arch/m68k/include/asm/mcf_pgalloc.h:82:60: error: 'GFP_NOWARN' undeclared (first use in this function); did you mean 'GFP_NOWAIT'? 82 | struct ptdesc *ptdesc = pagetable_alloc((GFP_DMA | GFP_NOWARN) & | ^~~~~~~~~~ | GFP_NOWAIT arch/m68k/include/asm/mcf_pgalloc.h:82:60: note: each undeclared identifier is reported only once for each function it appears in arch/m68k/include/asm/mcf_pgalloc.h: At top level: >> arch/m68k/include/asm/mcf_pgalloc.h:23:16: warning: 'ptdesc_address' is static but used in inline function 'pte_alloc_one_kernel' which is not static 23 | return ptdesc_address(ptdesc); | ^~~~~~~~~~~~~~ >> arch/m68k/include/asm/mcf_pgalloc.h:17:33: warning: 'pagetable_alloc' is static but used in inline function 'pte_alloc_one_kernel' which is not static 17 | struct ptdesc *ptdesc = pagetable_alloc((GFP_DMA | __GFP_ZERO) & | ^~~~~~~~~~~~~~~ >> arch/m68k/include/asm/mcf_pgalloc.h:10:24: warning: 'virt_to_ptdesc' is static but used in inline function 'pte_free_kernel' which is not static 10 | pagetable_free(virt_to_ptdesc(pte)); | ^~~~~~~~~~~~~~ >> arch/m68k/include/asm/mcf_pgalloc.h:10:9: warning: 'pagetable_free' is static but used in inline function 'pte_free_kernel' which is not static 10 | pagetable_free(virt_to_ptdesc(pte)); | ^~~~~~~~~~~~~~ -- In file included from arch/m68k/mm/mcfmmu.c:21: arch/m68k/include/asm/mcf_pgalloc.h: In function 'pgd_alloc': >> arch/m68k/include/asm/mcf_pgalloc.h:82:60: error: 'GFP_NOWARN' undeclared (first use in this function); did you mean 'GFP_NOWAIT'? 82 | struct ptdesc *ptdesc = pagetable_alloc((GFP_DMA | GFP_NOWARN) & | ^~~~~~~~~~ | GFP_NOWAIT arch/m68k/include/asm/mcf_pgalloc.h:82:60: note: each undeclared identifier is reported only once for each function it appears in arch/m68k/mm/mcfmmu.c: At top level: arch/m68k/mm/mcfmmu.c:36:13: warning: no previous prototype for 'paging_init' [-Wmissing-prototypes] 36 | void __init paging_init(void) | ^~~~~~~~~~~ arch/m68k/mm/mcfmmu.c: In function 'paging_init': arch/m68k/mm/mcfmmu.c:41:37: warning: variable 'bootmem_end' set but not used [-Wunused-but-set-variable] 41 | unsigned long next_pgtable, bootmem_end; | ^~~~~~~~~~~ arch/m68k/include/asm/mcf_pgalloc.h: At top level: >> arch/m68k/include/asm/mcf_pgalloc.h:23:16: warning: 'ptdesc_address' is static but used in inline function 'pte_alloc_one_kernel' which is not static 23 | return ptdesc_address(ptdesc); | ^~~~~~~~~~~~~~ >> arch/m68k/include/asm/mcf_pgalloc.h:17:33: warning: 'pagetable_alloc' is static but used in inline function 'pte_alloc_one_kernel' which is not static 17 | struct ptdesc *ptdesc = pagetable_alloc((GFP_DMA | __GFP_ZERO) & | ^~~~~~~~~~~~~~~ >> arch/m68k/include/asm/mcf_pgalloc.h:10:24: warning: 'virt_to_ptdesc' is static but used in inline function 'pte_free_kernel' which is not static 10 | pagetable_free(virt_to_ptdesc(pte)); | ^~~~~~~~~~~~~~ >> arch/m68k/include/asm/mcf_pgalloc.h:10:9: warning: 'pagetable_free' is static but used in inline function 'pte_free_kernel' which is not static 10 | pagetable_free(virt_to_ptdesc(pte)); | ^~~~~~~~~~~~~~ vim +82 arch/m68k/include/asm/mcf_pgalloc.h 7 8 extern inline void pte_free_kernel(struct mm_struct *mm, pte_t *pte) 9 { > 10 pagetable_free(virt_to_ptdesc(pte)); 11 } 12 13 extern const char bad_pmd_string[]; 14 15 extern inline pte_t *pte_alloc_one_kernel(struct mm_struct *mm) 16 { > 17 struct ptdesc *ptdesc = pagetable_alloc((GFP_DMA | __GFP_ZERO) & 18 ~__GFP_HIGHMEM, 0); 19 20 if (!ptdesc) 21 return NULL; 22 > 23 return ptdesc_address(ptdesc); 24 } 25 26 extern inline pmd_t *pmd_alloc_kernel(pgd_t *pgd, unsigned long address) 27 { 28 return (pmd_t *) pgd; 29 } 30 31 #define pmd_populate(mm, pmd, pte) (pmd_val(*pmd) = (unsigned long)(pte)) 32 33 #define pmd_populate_kernel pmd_populate 34 35 static inline void __pte_free_tlb(struct mmu_gather *tlb, pgtable_t pgtable, 36 unsigned long address) 37 { 38 struct ptdesc *ptdesc = virt_to_ptdesc(pgtable); 39 40 pagetable_pte_dtor(ptdesc); 41 pagetable_free(ptdesc); 42 } 43 44 static inline pgtable_t pte_alloc_one(struct mm_struct *mm) 45 { 46 struct ptdesc *ptdesc = pagetable_alloc(GFP_DMA | __GFP_ZERO, 0); 47 pte_t *pte; 48 49 if (!ptdesc) 50 return NULL; 51 if (!pagetable_pte_ctor(ptdesc)) { 52 pagetable_free(ptdesc); 53 return NULL; 54 } 55 56 pte = ptdesc_address(ptdesc); 57 return pte; 58 } 59 60 static inline void pte_free(struct mm_struct *mm, pgtable_t pgtable) 61 { 62 struct ptdesc *ptdesc = virt_to_ptdesc(pgtable); 63 64 pagetable_pte_dtor(ptdesc); 65 pagetable_free(ptdesc); 66 } 67 68 /* 69 * In our implementation, each pgd entry contains 1 pmd that is never allocated 70 * or freed. pgd_present is always 1, so this should never be called. -NL 71 */ 72 #define pmd_free(mm, pmd) BUG() 73 74 static inline void pgd_free(struct mm_struct *mm, pgd_t *pgd) 75 { 76 pagetable_free(virt_to_ptdesc(pgd)); 77 } 78 79 static inline pgd_t *pgd_alloc(struct mm_struct *mm) 80 { 81 pgd_t *new_pgd; > 82 struct ptdesc *ptdesc = pagetable_alloc((GFP_DMA | GFP_NOWARN) & 83 ~__GFP_HIGHMEM, 0); 84 85 if (!ptdesc) 86 return NULL; 87 new_pgd = ptdesc_address(ptdesc); 88 89 memcpy(new_pgd, swapper_pg_dir, PTRS_PER_PGD * sizeof(pgd_t)); 90 memset(new_pgd, 0, PAGE_OFFSET >> PGDIR_SHIFT); 91 return new_pgd; 92 } 93 -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki From xen-devel-bounces@lists.xenproject.org Sun Jun 25 08:09:36 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sun, 25 Jun 2023 08:09:36 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554758.866157 (Exim 4.92) (envelope-from ) id 1qDKoM-0005Ps-BT; Sun, 25 Jun 2023 08:09:30 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554758.866157; Sun, 25 Jun 2023 08:09:30 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDKoM-0005Pl-8a; Sun, 25 Jun 2023 08:09:30 +0000 Received: by outflank-mailman (input) for mailman id 554758; Sun, 25 Jun 2023 08:09:29 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDKoL-0005Pb-F9; Sun, 25 Jun 2023 08:09:29 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDKoL-0002OY-91; Sun, 25 Jun 2023 08:09:29 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDKoK-0004nK-Pe; Sun, 25 Jun 2023 08:09:28 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qDKoK-0004xH-PA; Sun, 25 Jun 2023 08:09:28 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=s2AEr8uiaYe7peSGPBT82qI6J4HXMO7boR4WUBrOXbU=; b=DGpdvrCky1QmAtsJ9aBIR74nlO TZmfmsd2BP4AFTCnJ7+ROndPvYQEleyq++7KYlzPfXfdBWzPohd9mxBwC+99eWjrdEXx4KziMhdnn bDZQyg6bkcBxWHHyu3Dg1y9QzNAALPrPGcTjtcyZph5uqEaGEVcXi4oacqDZlfX0FKb8=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [linux-5.4 test] 181581: tolerable FAIL - PUSHED X-Osstest-Failures: linux-5.4:test-armhf-armhf-xl:guest-start/debian.repeat:fail:heisenbug linux-5.4:test-amd64-i386-qemuu-rhel6hvm-amd:xen-install:fail:heisenbug linux-5.4:test-armhf-armhf-xl-arndale:guest-start/debian.repeat:fail:heisenbug linux-5.4:test-amd64-amd64-libvirt-vhd:guest-start/debian.repeat:fail:heisenbug linux-5.4:test-armhf-armhf-xl-credit2:guest-start:fail:nonblocking linux-5.4:test-armhf-armhf-xl-multivcpu:guest-start/debian.repeat:fail:nonblocking linux-5.4:test-armhf-armhf-xl-rtds:guest-start/debian.repeat:fail:nonblocking linux-5.4:test-armhf-armhf-xl-credit1:guest-start/debian.repeat:fail:nonblocking linux-5.4:test-amd64-i386-xl-vhd:guest-start/debian.repeat:fail:nonblocking linux-5.4:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-amd64-xl-qcow2:guest-start/debian.repeat:fail:nonblocking linux-5.4:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking linux-5.4:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking linux-5.4:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking linux-5.4:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking linux-5.4:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: linux=f2b499c27a959d062db9ea5c3036052d90110ee4 X-Osstest-Versions-That: linux=f568a20f058fa1e37069cff4aac4187c1650a0e9 From: osstest service owner Date: Sun, 25 Jun 2023 08:09:28 +0000 flight 181581 linux-5.4 real [real] http://logs.test-lab.xenproject.org/osstest/logs/181581/ Failures :-/ but no regressions. Tests which are failing intermittently (not blocking): test-armhf-armhf-xl 18 guest-start/debian.repeat fail in 181577 pass in 181581 test-amd64-i386-qemuu-rhel6hvm-amd 7 xen-install fail pass in 181577 test-armhf-armhf-xl-arndale 18 guest-start/debian.repeat fail pass in 181577 test-amd64-amd64-libvirt-vhd 19 guest-start/debian.repeat fail pass in 181577 Tests which did not succeed, but are not blocking: test-armhf-armhf-xl-credit2 14 guest-start fail in 181577 like 181354 test-armhf-armhf-xl-multivcpu 18 guest-start/debian.repeat fail in 181577 like 181363 test-armhf-armhf-xl-rtds 18 guest-start/debian.repeat fail in 181577 like 181363 test-armhf-armhf-xl-credit1 18 guest-start/debian.repeat fail in 181577 like 181363 test-amd64-i386-xl-vhd 21 guest-start/debian.repeat fail like 181354 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 181363 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop fail like 181363 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop fail like 181363 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 181363 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 181363 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 181363 test-amd64-amd64-xl-qcow2 21 guest-start/debian.repeat fail like 181363 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop fail like 181363 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail like 181363 test-armhf-armhf-libvirt 16 saverestore-support-check fail like 181363 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail like 181363 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop fail like 181363 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 181363 test-amd64-i386-xl-pvshim 14 guest-start fail never pass test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-i386-libvirt 15 migrate-support-check fail never pass test-amd64-i386-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-armhf-armhf-xl-credit2 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit2 16 saverestore-support-check fail never pass test-armhf-armhf-xl-arndale 15 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 16 saverestore-support-check fail never pass test-armhf-armhf-xl-multivcpu 15 migrate-support-check fail never pass test-armhf-armhf-xl-multivcpu 16 saverestore-support-check fail never pass test-amd64-i386-libvirt-raw 14 migrate-support-check fail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-armhf-armhf-xl-credit1 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 16 saverestore-support-check fail never pass test-armhf-armhf-xl-rtds 15 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 16 saverestore-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass test-armhf-armhf-xl 15 migrate-support-check fail never pass test-armhf-armhf-xl 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail never pass test-armhf-armhf-libvirt 15 migrate-support-check fail never pass test-armhf-armhf-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 15 saverestore-support-check fail never pass version targeted for testing: linux f2b499c27a959d062db9ea5c3036052d90110ee4 baseline version: linux f568a20f058fa1e37069cff4aac4187c1650a0e9 Last test of basis 181363 2023-06-10 15:39:59 Z 14 days Failing since 181425 2023-06-14 10:50:49 Z 10 days 20 attempts Testing same since 181542 2023-06-21 23:13:50 Z 3 days 7 attempts ------------------------------------------------------------ People who touched revisions under test: Adrian Hunter Ahmed Zaki Ai Chao Alan Stern Aleksandr Loktionov Alex Deucher Alex Maftei Alexander Kapshuk Alexander Sverdlin Alexandru Sorodoc Andrew Morton Arnd Bergmann Bartosz Golaszewski Ben Hutchings Ben Skeggs Bernhard Seibold Bjørn Mork Bob Pearson Chia-I Wu Chris Paterson (CIP) Christian Loehle Christoph Hellwig Dan Carpenter Dave Airlie David Ahern David Howells David Jander David S. Miller David Sterba Dinh Nguyen Dmitry Torokhov Edson Juliano Drosdeck Edward Srouji Elson Roy Serrao Eric Dumazet Fedor Pchelkin Florian Fainelli Florian Westphal Gaosheng Cui Greg Kroah-Hartman Guenter Roeck Guillaume Nault Gustavo A. R. Silva Hangbin Liu Hangyu Hua Hans de Goede Harshit Mogalapalli Helge Deller Ian Ziemba Ilya Dryomov Ismael Ferreras Morezuelas JaimeLiao Jakub Kicinski Jamal Hadi Salim Jan Höppner Janne Grunau Jason Gunthorpe Jens Axboe Jerry Meng Jiri Slaby (SUSE) Johan Hovold Johannes Thumshirn Jon Hunter Josef Bacik Joseph Qi Jozsef Kadlecsik Juergen Gross Krzysztof Kozlowski Kuniyuki Iwashima Lee Jones Leon Romanovsky Leon Romanovsky Lin Ma Linus Torvalds Linus Walleij Linux Kernel Functional Testing Lisa Chen (陈敏捷) Liviu Dudau Luis Chamberlain Luiz Augusto von Dentz Luís Henriques Luís Henriques Lyude Paul Manuel Lauss Marc Dionne Marc Kleine-Budde Marc Zyngier Marek Vasut Mario Limonciello Mark Brown Martin Blumenstingl Martin Hundebøll Maxime Ripard Michael Chan Min Li Miquel Raynal Mirsad Goran Todorovac Mirsad Todorovac Natalia Petrova Nikolay Aleksandrov Oleksij Rempel Osama Muhammad Pablo Neira Ayuso Paolo Abeni Paulo Alcantara (SUSE) Paulo Alcantara Qingfang DENG Rafal Romanowski Randy Dunlap RenHai Ricardo Ribalda Richard Cochran Rishabh Bhatnagar Roberto Sassu Ross Lagerwall Ruihan Li Ryusuke Konishi Saravanan Vajravel Sasha Levin Sebastian Reichel Selvin Xavier Shuah Khan Simon Wunderlich Somnath Kotur Stefan Berger Stefan Ghinea Stefan Haberland Stephan Gerhold Stephen Hemminger Steve French Sudeep Holla Sudip Mukherjee Sukrut Bellary Sungwoo Kim Sven Eckelmann Takashi Iwai Tejun Heo Theodore Ts'o Thinh Nguyen Thomas Bogendoerfer Tijs Van Buggenhout Tony Nguyen Ulf Hansson Uwe Kleine-König Ville Syrjälä Vlad Buslov Vladimir Oltean Vladislav Efanov Wes Huang Wolfram Sang Xin Long Xiubo Li Ying Hsu Yishai Hadas YouChing Lin Zhu Yanjun Zixuan Fu jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl pass test-amd64-i386-xl pass test-amd64-coresched-i386-xl pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-i386-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-i386-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-i386-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-i386-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-i386-qemut-rhel6hvm-amd pass test-amd64-i386-qemuu-rhel6hvm-amd fail test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-i386-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-freebsd10-amd64 pass test-amd64-amd64-qemuu-freebsd11-amd64 pass test-amd64-amd64-qemuu-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-i386-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-i386-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-i386-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-amd64-i386-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale fail test-amd64-amd64-examine-bios pass test-amd64-i386-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 pass test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 pass test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine pass test-amd64-i386-examine pass test-amd64-i386-freebsd10-i386 pass test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-i386-qemut-rhel6hvm-intel pass test-amd64-i386-qemuu-rhel6hvm-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt pass test-amd64-i386-libvirt pass test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu pass test-amd64-amd64-pair pass test-amd64-i386-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-i386-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-i386-xl-pvshim fail test-amd64-amd64-pygrub pass test-armhf-armhf-libvirt-qcow2 pass test-amd64-amd64-xl-qcow2 fail test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw pass test-amd64-i386-libvirt-raw pass test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds pass test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-amd64-i386-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-i386-examine-uefi pass test-amd64-amd64-libvirt-vhd fail test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd pass test-amd64-i386-xl-vhd fail ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Pushing revision : hint: The 'hooks/update' hook was ignored because it's not set as executable. hint: You can disable this warning with `git config advice.ignoredHook false`. hint: The 'hooks/post-receive' hook was ignored because it's not set as executable. hint: You can disable this warning with `git config advice.ignoredHook false`. hint: The 'hooks/post-update' hook was ignored because it's not set as executable. hint: You can disable this warning with `git config advice.ignoredHook false`. To xenbits.xen.org:/home/xen/git/linux-pvops.git f568a20f058f..f2b499c27a95 f2b499c27a959d062db9ea5c3036052d90110ee4 -> tested/linux-5.4 From xen-devel-bounces@lists.xenproject.org Sun Jun 25 08:51:55 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sun, 25 Jun 2023 08:51:55 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554767.866167 (Exim 4.92) (envelope-from ) id 1qDLT8-0002MX-Ls; Sun, 25 Jun 2023 08:51:38 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554767.866167; Sun, 25 Jun 2023 08:51:38 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDLT8-0002MQ-IZ; Sun, 25 Jun 2023 08:51:38 +0000 Received: by outflank-mailman (input) for mailman id 554767; Sun, 25 Jun 2023 08:51:37 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDLT7-0002MK-09 for xen-devel@lists.xenproject.org; Sun, 25 Jun 2023 08:51:37 +0000 Received: from mail-yw1-f174.google.com (mail-yw1-f174.google.com [209.85.128.174]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 7c7f8fd1-1335-11ee-8611-37d641c3527e; Sun, 25 Jun 2023 10:51:34 +0200 (CEST) Received: by mail-yw1-f174.google.com with SMTP id 00721157ae682-5700b15c12fso23298897b3.1 for ; Sun, 25 Jun 2023 01:51:34 -0700 (PDT) Received: from mail-yb1-f173.google.com (mail-yb1-f173.google.com. [209.85.219.173]) by smtp.gmail.com with ESMTPSA id h12-20020a816c0c000000b0056974f4019esm739590ywc.6.2023.06.25.01.51.30 for (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Sun, 25 Jun 2023 01:51:31 -0700 (PDT) Received: by mail-yb1-f173.google.com with SMTP id 3f1490d57ef6-c1061f0c282so1488279276.1 for ; Sun, 25 Jun 2023 01:51:30 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 7c7f8fd1-1335-11ee-8611-37d641c3527e X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687683093; x=1690275093; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=e/Aydrd9oAz9wF8VtbGA6a+XUUai3n6kkWsRZbAgo9o=; b=fE8yv0ffdTO4Rj2edGad1URecaUDJ4SvdXaHi6IX0tHnd29p74jcNeLvbnYN6A+1mN LrN0I1Dhd1dQi/Y1UiFv3tf4RYM+dT1bVk3bBmGfWHAieGnEvGVleJOr7WHqZPIn7/Lm hE/9wCgjWqOSAvPNmd3y4mGXy8Gm2+Q5tKLusenNteOEkFrvK7Imo3SdOF+BHQ2O8ezF Wp5yvi7PC2jVi5fiPYBNz5VN865WAkW8m76M71r5NXKX+rtlCKP5ZmZgV0q/6VbIjVHP OVA1iZdzzEcrBa60dVXT4ChicSB94bGEcsizw4NI/QjbMYZHrq8bx71Sfnjis76cZoNA QIUQ== X-Gm-Message-State: AC+VfDygLuNixlJa0vr656efWCbz9coS9iOIO8K2qFm9kcnXt8Ox/HOM uP9yBcWoDnU7QCKxRIwDBdjexOkIES5fsA== X-Google-Smtp-Source: ACHHUZ6sN6S5VHeGt2EctJXD+n/4jAn/Q0WpNuKmvnFV5dWIU3+UdS5XU80m9iFmq3AnZrQxS9VtHg== X-Received: by 2002:a81:920c:0:b0:56f:ff88:2e43 with SMTP id j12-20020a81920c000000b0056fff882e43mr28309347ywg.27.1687683093147; Sun, 25 Jun 2023 01:51:33 -0700 (PDT) X-Received: by 2002:a25:cc02:0:b0:c13:f86d:3324 with SMTP id l2-20020a25cc02000000b00c13f86d3324mr3724376ybf.14.1687683090555; Sun, 25 Jun 2023 01:51:30 -0700 (PDT) MIME-Version: 1.0 References: <20230622205745.79707-1-vishal.moola@gmail.com> <20230622205745.79707-25-vishal.moola@gmail.com> In-Reply-To: <20230622205745.79707-25-vishal.moola@gmail.com> From: Geert Uytterhoeven Date: Sun, 25 Jun 2023 10:51:19 +0200 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: [PATCH v5 24/33] m68k: Convert various functions to use ptdescs To: "Vishal Moola (Oracle)" Cc: Andrew Morton , Matthew Wilcox , linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , Mike Rapoport Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Hi Vishal, On Thu, Jun 22, 2023 at 10:58=E2=80=AFPM Vishal Moola (Oracle) wrote: > As part of the conversions to replace pgtable constructor/destructors wit= h > ptdesc equivalents, convert various page table functions to use ptdescs. > > Some of the functions use the *get*page*() helper functions. Convert > these to use pagetable_alloc() and ptdesc_address() instead to help > standardize page tables further. > > Signed-off-by: Vishal Moola (Oracle) Thanks for your patch! > --- a/arch/m68k/include/asm/mcf_pgalloc.h > +++ b/arch/m68k/include/asm/mcf_pgalloc.h > static inline pgd_t *pgd_alloc(struct mm_struct *mm) > { > pgd_t *new_pgd; > + struct ptdesc *ptdesc =3D pagetable_alloc((GFP_DMA | GFP_NOWARN) = & 0-day already told you for v3 that GFP_NOWARN does not exist. Please try cross-compiling your changes: https://mirrors.edge.kernel.org/pub/tools/crosstool/ > + ~__GFP_HIGHMEM, 0); > > - new_pgd =3D (pgd_t *)__get_free_page(GFP_DMA | __GFP_NOWARN); > - if (!new_pgd) > + if (!ptdesc) > return NULL; > + new_pgd =3D ptdesc_address(ptdesc); > + > memcpy(new_pgd, swapper_pg_dir, PTRS_PER_PGD * sizeof(pgd_t)); > memset(new_pgd, 0, PAGE_OFFSET >> PGDIR_SHIFT); > return new_pgd; Gr{oetje,eeting}s, Geert --=20 Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k= .org In personal conversations with technical people, I call myself a hacker. Bu= t when I'm talking to journalists I just say "programmer" or something like t= hat. -- Linus Torvalds From xen-devel-bounces@lists.xenproject.org Sun Jun 25 12:46:09 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sun, 25 Jun 2023 12:46:09 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554783.866176 (Exim 4.92) (envelope-from ) id 1qDP7m-00005Y-7M; Sun, 25 Jun 2023 12:45:50 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554783.866176; Sun, 25 Jun 2023 12:45:50 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDP7m-00005R-4p; Sun, 25 Jun 2023 12:45:50 +0000 Received: by outflank-mailman (input) for mailman id 554783; Sun, 25 Jun 2023 12:45:48 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDP7k-00005K-Dg for xen-devel@lists.xenproject.org; Sun, 25 Jun 2023 12:45:48 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDP7j-00009a-Kf; Sun, 25 Jun 2023 12:45:47 +0000 Received: from [193.85.242.128] (helo=[192.168.148.103]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qDP7j-00039L-EV; Sun, 25 Jun 2023 12:45:47 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=mRCQlwp35TFAlpUXll5GF4GBJ/rWWC0RcVcOTu1fwVw=; b=YHrsMhVmPXMFQItJstMjGA/Ts1 Yx8K7oMlCgW9yCE7uf3igdYxYGIQpE0C1SE95yD1U4/9NkkFXdWDbR6Vkx05TDwVj3f4xXh9XOtam kFqO5McAzKM3XpnprRW1K0mIvlCi0ZAcMMgi2fgaSuyCXtVdaIiFR/+RscuI9OPAtg3I=; Message-ID: <102b31fb-0e47-cead-8555-5758531f13af@xen.org> Date: Sun, 25 Jun 2023 13:45:44 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v1 2/2] xen/arm: Make has_vpci depend on CONFIG_HAS_VPCI Content-Language: en-US To: Stewart Hildebrand , xen-devel@lists.xenproject.org Cc: Oleksandr Andrushchenko , Stefano Stabellini , Bertrand Marquis , Volodymyr Babchuk , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Oleksandr Tyshchenko , Artem Mygaiev , Rahul Singh References: <20230620152924.23622-1-stewart.hildebrand@amd.com> <20230620152924.23622-2-stewart.hildebrand@amd.com> From: Julien Grall In-Reply-To: <20230620152924.23622-2-stewart.hildebrand@amd.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi, On 20/06/2023 16:29, Stewart Hildebrand wrote: > From: Oleksandr Andrushchenko > > VPCI is disabled on ARM. Make it depend on CONFIG_HAS_VPCI to test the PCI > passthrough support. > > While here, remove the comment on the preceding line. > > Signed-off-by: Oleksandr Andrushchenko > Signed-off-by: Rahul Singh > Signed-off-by: Stewart Hildebrand > --- > There are two downstreams [1] [2] that have independently made a version this > change, each with different Signed-off-by's. I simply picked one at random for > the Author: field, and added both Signed-off-by lines. Please let me know if > there are any objections. > > downstream->v1: > * change to IS_ENABLED(CONFIG_HAS_VPCI) instead of hardcoded to true > * remove the comment on the preceding line > > [1] https://gitlab.com/xen-project/people/bmarquis/xen-arm-poc/-/commit/27be1729ce8128dbe37275ce7946b2fbd2e5a382 > [2] https://github.com/xen-troops/xen/commit/bf12185e6fb2e31db0d8e6ea9ccd8a02abadec17 > --- > xen/arch/arm/include/asm/domain.h | 3 +-- > 1 file changed, 1 insertion(+), 2 deletions(-) > > diff --git a/xen/arch/arm/include/asm/domain.h b/xen/arch/arm/include/asm/domain.h > index 99e798ffff68..6e016b00bae1 100644 > --- a/xen/arch/arm/include/asm/domain.h > +++ b/xen/arch/arm/include/asm/domain.h > @@ -298,8 +298,7 @@ static inline void arch_vcpu_block(struct vcpu *v) {} > > #define arch_vm_assist_valid_mask(d) (1UL << VMASST_TYPE_runstate_update_flag) > > -/* vPCI is not available on Arm */ > -#define has_vpci(d) ({ (void)(d); false; }) > +#define has_vpci(d) ({ (void)(d); IS_ENABLED(CONFIG_HAS_VPCI); }) This will enable vPCI for all the domains. However, in the cover letter, you seemed to suggest that guest support is not there. So shouldn't this be "is_harware_domain(d)"? Or d->arch.has_vcpi? Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Sun Jun 25 12:51:25 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sun, 25 Jun 2023 12:51:25 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554787.866186 (Exim 4.92) (envelope-from ) id 1qDPD6-0001Xw-SA; Sun, 25 Jun 2023 12:51:20 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554787.866186; Sun, 25 Jun 2023 12:51:20 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDPD6-0001Xp-Oy; Sun, 25 Jun 2023 12:51:20 +0000 Received: by outflank-mailman (input) for mailman id 554787; Sun, 25 Jun 2023 12:51:20 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDPD6-0001Xj-14 for xen-devel@lists.xenproject.org; Sun, 25 Jun 2023 12:51:20 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDPD5-0000FO-B9; Sun, 25 Jun 2023 12:51:19 +0000 Received: from [193.85.242.128] (helo=[192.168.148.103]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qDPD5-0003Fd-4P; Sun, 25 Jun 2023 12:51:19 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=KtE45Rv0HLGq1YREgWC6PbahnrPzxCmGsfdb+w/5bJc=; b=iLhwkNZjbtA9Mw/nfcazjGcBsY VKiSqajxna/Dy2JQ+FSqxSaAYzNztb2R0e8enu5CT+hDpm2z7c8ZxOLlmRagrInTcuKoopmO5pfH+ HopsxNiQNdy92TCb/NN/zDRtkoAIBMMbUViT400o4K2ECEZSNzMZvmBdEP80x5hof8Y4=; Message-ID: Date: Sun, 25 Jun 2023 13:51:15 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v1 1/2] xen/arm: pci: introduce PCI_PASSTHROUGH Kconfig option Content-Language: en-US To: Stewart Hildebrand , xen-devel@lists.xenproject.org Cc: Rahul Singh , Stefano Stabellini , Bertrand Marquis , Volodymyr Babchuk , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Oleksandr Tyshchenko , Artem Mygaiev , Stefano Stabellini References: <20230620152924.23622-1-stewart.hildebrand@amd.com> From: Julien Grall In-Reply-To: <20230620152924.23622-1-stewart.hildebrand@amd.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi, On 20/06/2023 16:29, Stewart Hildebrand wrote: > From: Rahul Singh > > Setting CONFIG_PCI_PASSTHROUGH=y will enable PCI passthrough on ARM, even though > the feature is not yet complete in the current upstream codebase. The purpose of > this is to make it easier to enable the necessary configs (HAS_PCI, HAS_VPCI) for > testing and development of PCI passthrough on ARM. > > Since PCI passthrough on ARM is still work in progress at this time, make it > depend on UNSUPPORTED. > > Signed-off-by: Rahul Singh > Signed-off-by: Stewart Hildebrand > Signed-off-by: Stefano Stabellini > --- > (cherry picked from commit 9a08f1f7ce28ec619640ba9ce11018bf443e9a0e from the > downstream branch [1]) > > Changes from downstream to v1: > * depends on ARM_64 (Stefano) > * Don't select HAS_VPCI_GUEST_SUPPORT since this config option is not currently > used in the upstream codebase. This will want to be re-added here once the > vpci series [2] is merged. > * Don't select ARM_SMMU_V3 since this option can already be selected > independently. While PCI passthrough on ARM depends on an SMMU, it does not > depend on a particular version or variant of an SMMU. > * Don't select HAS_ITS since this option can already be selected independently. > HAS_ITS may want to be added here once the MSI series [1] is merged. > * Don't select LATE_HWDOM since this option is unrelated to PCI passthrough. > > [1] https://gitlab.com/xen-project/people/bmarquis/xen-arm-poc/-/commits/poc/pci-passthrough > [2] https://lists.xenproject.org/archives/html/xen-devel/2023-06/msg00863.html > --- > xen/arch/arm/Kconfig | 9 +++++++++ > 1 file changed, 9 insertions(+) > > diff --git a/xen/arch/arm/Kconfig b/xen/arch/arm/Kconfig > index 61e581b8c2b0..3d22cd26a68c 100644 > --- a/xen/arch/arm/Kconfig > +++ b/xen/arch/arm/Kconfig > @@ -184,6 +184,15 @@ config STATIC_SHM > help > This option enables statically shared memory on a dom0less system. > > +config PCI_PASSTHROUGH > + bool "PCI passthrough on ARM (UNSUPPORTED)" if UNSUPPORTED The series is already under an Arm category. So I would drop "ARM" here. NIT: Also, I think it should be EXPERT rather than UNSUPPORTED. I view the former as in more "experimental" than the latter. > + depends on ARM_64 > + select HAS_PCI > + select HAS_VPCI > + default n > + help > + PCI device passthrough on ARM (UNSUPPORTED) Same. > + > endmenu > > menu "ARM errata workaround via the alternative framework" Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Sun Jun 25 12:56:39 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sun, 25 Jun 2023 12:56:39 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554791.866196 (Exim 4.92) (envelope-from ) id 1qDPHz-0002A2-EG; Sun, 25 Jun 2023 12:56:23 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554791.866196; Sun, 25 Jun 2023 12:56:23 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDPHz-00029v-BD; Sun, 25 Jun 2023 12:56:23 +0000 Received: by outflank-mailman (input) for mailman id 554791; Sun, 25 Jun 2023 12:56:22 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDPHy-00029p-8A for xen-devel@lists.xenproject.org; Sun, 25 Jun 2023 12:56:22 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDPHx-0000LY-4Q; Sun, 25 Jun 2023 12:56:21 +0000 Received: from [193.85.242.128] (helo=[192.168.148.103]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qDPHw-0003Us-UM; Sun, 25 Jun 2023 12:56:21 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=i2+K8s8xu/B9L7bB3ZnTifYLY1TrUM/wM998Nw8O3uE=; b=qmpxBv2/sORuxFh6DGMqiVN/2f ehZTuyKUqUZMQ+/izx5pV34uIxs4t4emFHgD32hvFEzzEP3BS0dKtDv6xtQ0SopZ1HKD/VYFJz7U7 bohouh6dDDgYD1c+ZLfA60ZwME0jc3DW079z5g+HOq9/dIKmGSE5BTR1qvRTIqpldf1A=; Message-ID: <5f0b5a38-710f-f820-1dc7-345ae16047ad@xen.org> Date: Sun, 25 Jun 2023 13:56:18 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v4 0/7] SMMU handling for PCIe Passthrough on ARM Content-Language: en-US To: Stewart Hildebrand , xen-devel@lists.xenproject.org Cc: Stefano Stabellini , Bertrand Marquis , Volodymyr Babchuk , Rahul Singh , Jan Beulich , Paul Durrant , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= References: <20230607030220.22698-1-stewart.hildebrand@amd.com> <1f5aa53c-a9ed-41c3-2a4d-38538912cdd5@xen.org> <4b08b38e-3beb-6b72-83fb-6dd8c8702718@amd.com> From: Julien Grall In-Reply-To: <4b08b38e-3beb-6b72-83fb-6dd8c8702718@amd.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi, On 15/06/2023 22:05, Stewart Hildebrand wrote: > On 6/7/23 03:19, Julien Grall wrote: >> On 07/06/2023 04:02, Stewart Hildebrand wrote: >>> This series introduces SMMU handling for PCIe passthrough on ARM. These patches >>> are independent from (and don't depend on) the vPCI reference counting/locking >>> work in progress, and should be able to be upstreamed independently. >> >> Can you clarify how this code was tested? Does this require code not yet >> upstreamed? > > I'm testing the series standalone (+ config changes) by using a PCI device in dom0, and also in combination with the vPCI series [3] [4] for passthrough to a domU. > > > Here are some more details on the test cases I'm using. Thanks that's helpful! One comment about the first test case. > > > 1. Using the PCI device in dom0 with the pci-passthrough=yes arg. In this case a couple of additional config changes [1] [2] are needed to select CONFIG_HAS_PCI=y, CONFIG_HAS_VPCI=y, and make has_vpci() return true. Aside from this series itself and the config changes, nothing else not-yet-upstreamed is required for this test case. It is on my TODO list to upstream these config changes, which I think will be useful on their own, not necessarily as part of any other series. I find a bit confusing that the IOMMU support for dom0 is gated behind 'pci-passthrough'. I was expecting that the iommu would also be properly configured for PCI if we using 'iommu=yes'. Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Sun Jun 25 13:13:37 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sun, 25 Jun 2023 13:13:37 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554795.866207 (Exim 4.92) (envelope-from ) id 1qDPYQ-0004fX-Qq; Sun, 25 Jun 2023 13:13:22 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554795.866207; Sun, 25 Jun 2023 13:13:22 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDPYQ-0004fQ-Nz; Sun, 25 Jun 2023 13:13:22 +0000 Received: by outflank-mailman (input) for mailman id 554795; Sun, 25 Jun 2023 13:13:21 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDPYO-0004f9-I0 for xen-devel@lists.xenproject.org; Sun, 25 Jun 2023 13:13:21 +0000 Received: from mail-yw1-x1135.google.com (mail-yw1-x1135.google.com [2607:f8b0:4864:20::1135]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 07ab11dd-135a-11ee-8611-37d641c3527e; Sun, 25 Jun 2023 15:13:09 +0200 (CEST) Received: by mail-yw1-x1135.google.com with SMTP id 00721157ae682-5700401acbeso24925157b3.0; Sun, 25 Jun 2023 06:13:09 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 07ab11dd-135a-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687698788; x=1690290788; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=VZ8aTg7ypKQKiHppuWgM1MR47z30U7qeNqVjsg7CY5U=; b=C45ky8HsGscT7fkc9PxAubz8Lo6ua99+jY9BpQyFU52Vj6xSgRpnHGo962OcWRLast NJzKYvV4pJOr3FaTe1zleo0L4XXYEyz+oE/0LepZsOE3AmwFAcTwmvFlp4v3TjpaMlpw 2JGwAhudUtN1T7skPYsdYzcPFi4E9Fe+OwNkPtZEfOvzTiuQmZ5zT52GvpT+E2aFt7yK cY14OU/VRYcA8gG33vSIlcqb4eIJa7VFLV+IKimjN9KLhFn72s3JewVA4axKsFLnPnZe X6RCXcWA7symHJzOFT3T7Ab+TIlJ4ZD0T1Ia0P306lp73jisq6+6Ano2v4lNzV5t/i6h z3IQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687698788; x=1690290788; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=VZ8aTg7ypKQKiHppuWgM1MR47z30U7qeNqVjsg7CY5U=; b=LwTMyDuta3b6+n96nmi3G2EoUOFdKCWaiuoL8x8a+mPPaxFxXpqWkMGjI3JERybohd t5JIqIEOJG5EgmxI3bxHOEgf6bV4BO/fPU/zWe/Ixzy1HNA+attWEVUFrvvW5XD3PXiy 3Y8+r9rlm0oFRejs3b6lSZcbQCClYwom9t0oM1JVuzSM/EjEXglYezVrYSkY/OoozCmQ 8+L82sLWPdU8nvJSz4jALURhdWXto3pGssO9+nLTxNloTi36P6KJ18VQEU4UHPoCZrZI vguOSR0JfjnS5azJxaFQz/C64/CLCeltMe02bQcS2tsetWnOF2u7SH0S1y7Bh7b4/V0T WHQw== X-Gm-Message-State: AC+VfDykoPDseOHLYEqwYoX7NxE5r6w+4KMHZmGfAANr2fMLjA6pc5To 8olnCo4fkwx8oRkowKPO5pqnDTHkW8DsGrQD+Yk= X-Google-Smtp-Source: ACHHUZ4CAPvGKvO4CLmacdnwssGcZj5zwZzqaanE4pjYoA7Y5qtFjEozwyIE9ePz4M1EwYlobVzZuu+K6A/xXp3yRCQ= X-Received: by 2002:a0d:c787:0:b0:576:82d7:7a with SMTP id j129-20020a0dc787000000b0057682d7007amr6630011ywd.43.1687698788658; Sun, 25 Jun 2023 06:13:08 -0700 (PDT) MIME-Version: 1.0 References: <78899eac-9de8-3626-8f40-98f993984f95@xen.org> <1ef5a5a6-01ea-4f3f-c05f-7dfd204a1861@xen.org> In-Reply-To: From: Jiatong Shen Date: Sun, 25 Jun 2023 21:12:57 +0800 Message-ID: Subject: Re: Asking for help to debug xen efi on Kunpeng machine To: Julien Grall Cc: Stefano Stabellini , xen-users@lists.xenproject.org, xen-devel@lists.xenproject.org, bertrand.marquis@arm.com Content-Type: multipart/mixed; boundary="000000000000c9599305fef3fe1e" --000000000000c9599305fef3fe1e Content-Type: multipart/alternative; boundary="000000000000c9599005fef3fe1c" --000000000000c9599005fef3fe1c Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Hello Julien, I tried to enable has_its and looks like the log is different. But dom0 OS still failed to boot up.. Could you please have a look at the log when you are available? Thank you very much for the help. Best regards, Jiatong Shen On Sat, Jun 24, 2023 at 10:54=E2=80=AFPM Jiatong Shen wrote: > Hello Julien, > > Thank you very much for your reply. Can you teach me how to find the > relationship between MBI-gen and devices? > I am not sure how to find out the mbi-gen backed devices.. > > Best Regards, > Jiatong Shen > > On Sat, Jun 24, 2023 at 4:24=E2=80=AFPM Julien Grall wro= te: > >> Hi, >> >> On 20/06/2023 08:09, Jiatong Shen wrote: >> > Hello Julien, >> > >> > Sorry for the delay.. I obtained the full xen log and attached it >> in the >> > mail. Please take a look when you are available. Thank you very much >> >> Thanks for sharing the logs. The following lines are interesting: >> >> [ 1.081905] Hisilicon MBIGEN-V2 HISI0152:00: Failed to create mbi-gen >> irqdomain >> [ 1.082107] Hisilicon MBIGEN-V2 HISI0152:01: Failed to create mbi-gen >> irqdomain >> [ 1.082204] Hisilicon MBIGEN-V2 HISI0152:02: Failed to create mbi-gen >> irqdomain >> [ 1.082294] Hisilicon MBIGEN-V2 HISI0152:03: Failed to create mbi-gen >> irqdomain >> [ 1.082381] Hisilicon MBIGEN-V2 HISI0152:04: Failed to create mbi-gen >> irqdomain >> [ 1.082466] Hisilicon MBIGEN-V2 HISI0152:05: Failed to create mbi-gen >> irqdomain >> >> Looking at a Hisilicon Device-Tree, this is an interrupt controller >> behind the GICv3 ITS. You will need to rebuild Xen with CONFIG_HAS_ITS= =3Dy. >> >> Also, can you confirm which devices are behind the MBI-Gen? If this is >> only PCI devices, then you are probably fine to give the controllers to >> dom0. But for PCI passthrough, you will most likely need to implement it >> a driver in Xen. >> >> Cheers, >> >> -- >> Julien Grall >> > > > -- > > Best Regards, > > Jiatong Shen > --=20 Best Regards, Jiatong Shen --000000000000c9599005fef3fe1c Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Hello Julien,

=C2=A0 I tried=C2=A0to en= able=C2=A0has_its and looks like the log is different. But dom0 OS still fa= iled to boot up.. Could you please
have a look at the log when yo= u are available? Thank you very much for the help.

Best regards,
Jiatong Shen

On Sat, Jun 24, 2023 at 10:54=E2= =80=AFPM Jiatong Shen <yshxxsjt= 715@gmail.com> wrote:
Hello Julien,

=C2=A0 =C2= =A0Thank you very much for your reply. Can you teach me how to find the rel= ationship between MBI-gen and devices?=C2=A0
I am not sure how to= find out the mbi-gen backed devices..

Best Regard= s,
Jiatong Shen

On Sat, Jun 24, 2023 at 4:24=E2=80=AFPM Juli= en Grall <julien@xen= .org> wrote:
Hi,

On 20/06/2023 08:09, Jiatong Shen wrote:
> Hello Julien,
>
>=C2=A0 =C2=A0 =C2=A0Sorry for the delay.. I obtained the full xen log a= nd attached it in the
> mail. Please take a look when you are available. Thank you very much
Thanks for sharing the logs. The following lines are interesting:

[=C2=A0 =C2=A0 1.081905] Hisilicon MBIGEN-V2 HISI0152:00: Failed to create = mbi-gen
irqdomain
[=C2=A0 =C2=A0 1.082107] Hisilicon MBIGEN-V2 HISI0152:01: Failed to create = mbi-gen
irqdomain
[=C2=A0 =C2=A0 1.082204] Hisilicon MBIGEN-V2 HISI0152:02: Failed to create = mbi-gen
irqdomain
[=C2=A0 =C2=A0 1.082294] Hisilicon MBIGEN-V2 HISI0152:03: Failed to create = mbi-gen
irqdomain
[=C2=A0 =C2=A0 1.082381] Hisilicon MBIGEN-V2 HISI0152:04: Failed to create = mbi-gen
irqdomain
[=C2=A0 =C2=A0 1.082466] Hisilicon MBIGEN-V2 HISI0152:05: Failed to create = mbi-gen
irqdomain

Looking at a Hisilicon Device-Tree, this is an interrupt controller
behind the GICv3 ITS. You will need to rebuild Xen with CONFIG_HAS_ITS=3Dy.=

Also, can you confirm which devices are behind the MBI-Gen? If this is
only PCI devices, then you are probably fine to give the controllers to dom0. But for PCI passthrough, you will most likely need to implement it a driver in Xen.

Cheers,

--
Julien Grall


--

Best Regards,

Jiatong Shen=


--

Best Regards,

Jiatong Shen=
--000000000000c9599005fef3fe1c-- --000000000000c9599305fef3fe1e Content-Type: text/plain; charset="US-ASCII"; name="xen-full-log-with-its.txt" Content-Disposition: attachment; filename="xen-full-log-with-its.txt" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_ljbg9wm01 TG9hZGluZyBkcml2ZXIgYXQgMHgwMDAyQUE3NDAwMCBFbnRyeVBvaW50PTB4MDAwMkFCMzMxNzAN ClVzaW5nIG1vZHVsZXMgcHJvdmlkZWQgYnkgYm9vdGxvYWRlciBpbiBGRFQNClhlbiA0LjE3LjAg KGMvcyApIEVGSSBsb2FkZXINCkVSUk9SOiBDNDAwMDAwMDI6VjAyMDEwMDA2IEkwIDkzQjgwMDA0 LTlGQjMtMTFENC05QTNBLTAwOTAyNzNGQzE0RCAzMTZDMkI5OA0KRVJST1I6IEM0MDAwMDAwMjpW MDIwMTAwMDYgSTAgOTNCODAwMDQtOUZCMy0xMUQ0LTlBM0EtMDA5MDI3M0ZDMTREIDMxNkMyQjk4 DQpFUlJPUjogQzQwMDAwMDAyOlYwMjAxMDAwNiBJMCA5M0I4MDAwNC05RkIzLTExRDQtOUEzQS0w MDkwMjczRkMxNEQgMzQyN0ZBOTgNCkVSUk9SOiBDNDAwMDAwMDI6VjAyMDEwMDA2IEkwIDkzQjgw MDA0LTlGQjMtMTFENC05QTNBLTAwOTAyNzNGQzE0RCAzNDI3RkE5OA0KRVJST1I6IEM0MDAwMDAw MjpWMDIwMTAwMDYgSTAgOTNCODAwMDQtOUZCMy0xMUQ0LTlBM0EtMDA5MDI3M0ZDMTREIDM0MkVG NjE4DQpFUlJPUjogQzQwMDAwMDAyOlYwMjAxMDAwNiBJMCA5M0I4MDAwNC05RkIzLTExRDQtOUEz QS0wMDkwMjczRkMxNEQgMzQyRUY2MTgNCkVSUk9SOiBDNDAwMDAwMDI6VjAyMDEwMDA2IEkwIDkz QjgwMDA0LTlGQjMtMTFENC05QTNBLTAwOTAyNzNGQzE0RCAzNTkwM0MxOA0KRVJST1I6IEM0MDAw MDAwMjpWMDIwMTAwMDYgSTAgOTNCODAwMDQtOUZCMy0xMUQ0LTlBM0EtMDA5MDI3M0ZDMTREIDM1 OTAzQzE4DQpFUlJPUjogQzQwMDAwMDAyOlYwMjAxMDAwNiBJMCA5M0I4MDAwNC05RkIzLTExRDQt OUEzQS0wMDkwMjczRkMxNEQgMzU5MDNFMTgNCkVSUk9SOiBDNDAwMDAwMDI6VjAyMDEwMDA2IEkw IDkzQjgwMDA0LTlGQjMtMTFENC05QTNBLTAwOTAyNzNGQzE0RCAzNTkwM0UxOA0KRVJST1I6IEM0 MDAwMDAwMjpWMDIwMTAwMDYgSTAgOTNCODAwMDQtOUZCMy0xMUQ0LTlBM0EtMDA5MDI3M0ZDMTRE IDM1OTlDMjE4DQpFUlJPUjogQzQwMDAwMDAyOlYwMjAxMDAwNiBJMCA5M0I4MDAwNC05RkIzLTEx RDQtOUEzQS0wMDkwMjczRkMxNEQgMzU5OUMyMTgNCnJlYWQgMHhEN0ExMDAwNCA9IDEwMDAwNg0K cmVhZCBVU0IzR3NCdXNDZmcwID0gRkZGRTAwMDYNClhIQ0kgSEMgcmVzZXQsIHNvY2tldCA9IDAN CnJlYWQgMHhEQkExMDAwNCA9IDEwMDAwNg0KcmVhZCBVU0IzR3NCdXNDZmcwID0gRkZGRTAwMDYN ClhIQ0kgSEMgcmVzZXQsIHNvY2tldCA9IDENCklQTUkgRXhpdEJvb3RTZXJ2aWNlIEV2ZW50DQpb U1AgQk9PVF0gZXhpdCBib290IHNlcnZpY2UNCiBTZXRPU1dhdGNoZG9nICBDb3VudERvd24gMzAw MC4gU3RhdHVzIFN1Y2Nlc3MNClNldCBwb3N0IGVuZCBmbGFnKDcwMEEwRjg3RkI4PTU1KQ0KQklP UyBib290IGNvbXBsZXRlZC4NCiBYZW4gNC4xNy4wDQooWEVOKSBYZW4gdmVyc2lvbiA0LjE3LjAg KHJvb3RAKSAoZ2NjIChEZWJpYW4gMTAuMi4xLTYpIDEwLjIuMSAyMDIxMDExMCkgZGVidWc9eSBT YXQgSnVuIDI0IDE5OjU4OjM0IEVEVCAyMDIzDQooWEVOKSBMYXRlc3QgQ2hhbmdlU2V0Og0KKFhF TikgYnVpbGQtaWQ6IDYxM2E0ODU0N2MzODVmOTFjMGQ2ZmQ4NzY5NWIyYWU2ZjMzYjRlY2MNCihY RU4pIFByb2Nlc3NvcjogMDAwMDAwMDA0ODFmZDAxMDogIlVua25vd24sIEgiLCB2YXJpYW50OiAw eDEsIHBhcnQgMHhkMDEscmV2IDB4MA0KKFhFTikgNjQtYml0IEV4ZWN1dGlvbjoNCihYRU4pICAg UHJvY2Vzc29yIEZlYXR1cmVzOiAwMDAwMDEwMDExMTExMTExIDAwMDAwMDAwMDAwMDAwMDANCihY RU4pICAgICBFeGNlcHRpb24gTGV2ZWxzOiBFTDM6NjQgRUwyOjY0IEVMMTo2NCBFTDA6NjQNCihY RU4pICAgICBFeHRlbnNpb25zOiBGbG9hdGluZ1BvaW50IEFkdmFuY2VkU0lNRCBHSUN2My1TeXNS ZWcNCihYRU4pICAgRGVidWcgRmVhdHVyZXM6IDAwMDAwMDAxMTAzMDU0MDggMDAwMDAwMDAwMDAw MDAwMA0KKFhFTikgICBBdXhpbGlhcnkgRmVhdHVyZXM6IDAwMDAwMDAwMDAwMDAwMDAgMDAwMDAw MDAwMDAwMDAwMA0KKFhFTikgICBNZW1vcnkgTW9kZWwgRmVhdHVyZXM6IDAwMDAwMDAwMDAxMDEx MjUgMDAwMDAwMDAxMDIxMTEyMg0KKFhFTikgICBJU0EgRmVhdHVyZXM6ICAwMDAxMTAwMDEwMjEx MTIwIDAwMDAwMDAwMDAwMTEwMDENCihYRU4pIDMyLWJpdCBFeGVjdXRpb246IFVuc3VwcG9ydGVk DQooWEVOKSBVc2luZyBTTUMgQ2FsbGluZyBDb252ZW50aW9uIHYxLjENCihYRU4pIFVzaW5nIFBT Q0kgdjEuMQ0KKFhFTikgQUNQSTogR0lDQyAoYWNwaV9pZFsweDAwMDBdIGFkZHJlc3NbMHg5YjAw MDAwMF0gTVBJRFJbMHg4MDAwMF0gZW5hYmxlZCkNCihYRU4pIEFDUEk6IEdJQ0MgKGFjcGlfaWRb MHgwMDAxXSBhZGRyZXNzWzB4OWIwMDAwMDBdIE1QSURSWzB4ODAxMDBdIGVuYWJsZWQpDQooWEVO KSBBQ1BJOiBHSUNDIChhY3BpX2lkWzB4MDAwMl0gYWRkcmVzc1sweDliMDAwMDAwXSBNUElEUlsw eDgwMjAwXSBlbmFibGVkKQ0KKFhFTikgQUNQSTogR0lDQyAoYWNwaV9pZFsweDAwMDNdIGFkZHJl c3NbMHg5YjAwMDAwMF0gTVBJRFJbMHg4MDMwMF0gZW5hYmxlZCkNCihYRU4pIEFDUEk6IEdJQ0Mg KGFjcGlfaWRbMHgwMDA0XSBhZGRyZXNzWzB4OWIwMDAwMDBdIE1QSURSWzB4OTAwMDBdIGVuYWJs ZWQpDQooWEVOKSBBQ1BJOiBHSUNDIChhY3BpX2lkWzB4MDAwNV0gYWRkcmVzc1sweDliMDAwMDAw XSBNUElEUlsweDkwMTAwXSBlbmFibGVkKQ0KKFhFTikgQUNQSTogR0lDQyAoYWNwaV9pZFsweDAw MDZdIGFkZHJlc3NbMHg5YjAwMDAwMF0gTVBJRFJbMHg5MDIwMF0gZW5hYmxlZCkNCihYRU4pIEFD UEk6IEdJQ0MgKGFjcGlfaWRbMHgwMDA3XSBhZGRyZXNzWzB4OWIwMDAwMDBdIE1QSURSWzB4OTAz MDBdIGVuYWJsZWQpDQooWEVOKSBBQ1BJOiBHSUNDIChhY3BpX2lkWzB4MDAwOF0gYWRkcmVzc1sw eDliMDAwMDAwXSBNUElEUlsweGEwMDAwXSBlbmFibGVkKQ0KKFhFTikgQUNQSTogR0lDQyAoYWNw aV9pZFsweDAwMDldIGFkZHJlc3NbMHg5YjAwMDAwMF0gTVBJRFJbMHhhMDEwMF0gZW5hYmxlZCkN CihYRU4pIEFDUEk6IEdJQ0MgKGFjcGlfaWRbMHgwMDBhXSBhZGRyZXNzWzB4OWIwMDAwMDBdIE1Q SURSWzB4YTAyMDBdIGVuYWJsZWQpDQooWEVOKSBBQ1BJOiBHSUNDIChhY3BpX2lkWzB4MDAwYl0g YWRkcmVzc1sweDliMDAwMDAwXSBNUElEUlsweGEwMzAwXSBlbmFibGVkKQ0KKFhFTikgQUNQSTog R0lDQyAoYWNwaV9pZFsweDAwMGNdIGFkZHJlc3NbMHg5YjAwMDAwMF0gTVBJRFJbMHhiMDAwMF0g ZW5hYmxlZCkNCihYRU4pIEFDUEk6IEdJQ0MgKGFjcGlfaWRbMHgwMDBkXSBhZGRyZXNzWzB4OWIw MDAwMDBdIE1QSURSWzB4YjAxMDBdIGVuYWJsZWQpDQooWEVOKSBBQ1BJOiBHSUNDIChhY3BpX2lk WzB4MDAwZV0gYWRkcmVzc1sweDliMDAwMDAwXSBNUElEUlsweGIwMjAwXSBlbmFibGVkKQ0KKFhF TikgQUNQSTogR0lDQyAoYWNwaV9pZFsweDAwMGZdIGFkZHJlc3NbMHg5YjAwMDAwMF0gTVBJRFJb MHhiMDMwMF0gZW5hYmxlZCkNCihYRU4pIEFDUEk6IEdJQ0MgKGFjcGlfaWRbMHgwMDEwXSBhZGRy ZXNzWzB4OWIwMDAwMDBdIE1QSURSWzB4YzAwMDBdIGVuYWJsZWQpDQooWEVOKSBBQ1BJOiBHSUND IChhY3BpX2lkWzB4MDAxMV0gYWRkcmVzc1sweDliMDAwMDAwXSBNUElEUlsweGMwMTAwXSBlbmFi bGVkKQ0KKFhFTikgQUNQSTogR0lDQyAoYWNwaV9pZFsweDAwMTJdIGFkZHJlc3NbMHg5YjAwMDAw MF0gTVBJRFJbMHhjMDIwMF0gZW5hYmxlZCkNCihYRU4pIEFDUEk6IEdJQ0MgKGFjcGlfaWRbMHgw MDEzXSBhZGRyZXNzWzB4OWIwMDAwMDBdIE1QSURSWzB4YzAzMDBdIGVuYWJsZWQpDQooWEVOKSBB Q1BJOiBHSUNDIChhY3BpX2lkWzB4MDAxNF0gYWRkcmVzc1sweDliMDAwMDAwXSBNUElEUlsweGQw MDAwXSBlbmFibGVkKQ0KKFhFTikgQUNQSTogR0lDQyAoYWNwaV9pZFsweDAwMTVdIGFkZHJlc3Nb MHg5YjAwMDAwMF0gTVBJRFJbMHhkMDEwMF0gZW5hYmxlZCkNCihYRU4pIEFDUEk6IEdJQ0MgKGFj cGlfaWRbMHgwMDE2XSBhZGRyZXNzWzB4OWIwMDAwMDBdIE1QSURSWzB4ZDAyMDBdIGVuYWJsZWQp DQooWEVOKSBBQ1BJOiBHSUNDIChhY3BpX2lkWzB4MDAxN10gYWRkcmVzc1sweDliMDAwMDAwXSBN UElEUlsweGQwMzAwXSBlbmFibGVkKQ0KKFhFTikgQUNQSTogR0lDQyAoYWNwaV9pZFsweDAwMThd IGFkZHJlc3NbMHg5YjAwMDAwMF0gTVBJRFJbMHgxODAwMDBdIGVuYWJsZWQpDQooWEVOKSBBQ1BJ OiBHSUNDIChhY3BpX2lkWzB4MDAxOV0gYWRkcmVzc1sweDliMDAwMDAwXSBNUElEUlsweDE4MDEw MF0gZW5hYmxlZCkNCihYRU4pIEFDUEk6IEdJQ0MgKGFjcGlfaWRbMHgwMDFhXSBhZGRyZXNzWzB4 OWIwMDAwMDBdIE1QSURSWzB4MTgwMjAwXSBlbmFibGVkKQ0KKFhFTikgQUNQSTogR0lDQyAoYWNw aV9pZFsweDAwMWJdIGFkZHJlc3NbMHg5YjAwMDAwMF0gTVBJRFJbMHgxODAzMDBdIGVuYWJsZWQp DQooWEVOKSBBQ1BJOiBHSUNDIChhY3BpX2lkWzB4MDAxY10gYWRkcmVzc1sweDliMDAwMDAwXSBN UElEUlsweDE5MDAwMF0gZW5hYmxlZCkNCihYRU4pIEFDUEk6IEdJQ0MgKGFjcGlfaWRbMHgwMDFk XSBhZGRyZXNzWzB4OWIwMDAwMDBdIE1QSURSWzB4MTkwMTAwXSBlbmFibGVkKQ0KKFhFTikgQUNQ STogR0lDQyAoYWNwaV9pZFsweDAwMWVdIGFkZHJlc3NbMHg5YjAwMDAwMF0gTVBJRFJbMHgxOTAy MDBdIGVuYWJsZWQpDQooWEVOKSBBQ1BJOiBHSUNDIChhY3BpX2lkWzB4MDAxZl0gYWRkcmVzc1sw eDliMDAwMDAwXSBNUElEUlsweDE5MDMwMF0gZW5hYmxlZCkNCihYRU4pIEFDUEk6IEdJQ0MgKGFj cGlfaWRbMHgwMDIwXSBhZGRyZXNzWzB4OWIwMDAwMDBdIE1QSURSWzB4MWEwMDAwXSBlbmFibGVk KQ0KKFhFTikgQUNQSTogR0lDQyAoYWNwaV9pZFsweDAwMjFdIGFkZHJlc3NbMHg5YjAwMDAwMF0g TVBJRFJbMHgxYTAxMDBdIGVuYWJsZWQpDQooWEVOKSBBQ1BJOiBHSUNDIChhY3BpX2lkWzB4MDAy Ml0gYWRkcmVzc1sweDliMDAwMDAwXSBNUElEUlsweDFhMDIwMF0gZW5hYmxlZCkNCihYRU4pIEFD UEk6IEdJQ0MgKGFjcGlfaWRbMHgwMDIzXSBhZGRyZXNzWzB4OWIwMDAwMDBdIE1QSURSWzB4MWEw MzAwXSBlbmFibGVkKQ0KKFhFTikgQUNQSTogR0lDQyAoYWNwaV9pZFsweDAwMjRdIGFkZHJlc3Nb MHg5YjAwMDAwMF0gTVBJRFJbMHgxYjAwMDBdIGVuYWJsZWQpDQooWEVOKSBBQ1BJOiBHSUNDIChh Y3BpX2lkWzB4MDAyNV0gYWRkcmVzc1sweDliMDAwMDAwXSBNUElEUlsweDFiMDEwMF0gZW5hYmxl ZCkNCihYRU4pIEFDUEk6IEdJQ0MgKGFjcGlfaWRbMHgwMDI2XSBhZGRyZXNzWzB4OWIwMDAwMDBd IE1QSURSWzB4MWIwMjAwXSBlbmFibGVkKQ0KKFhFTikgQUNQSTogR0lDQyAoYWNwaV9pZFsweDAw MjddIGFkZHJlc3NbMHg5YjAwMDAwMF0gTVBJRFJbMHgxYjAzMDBdIGVuYWJsZWQpDQooWEVOKSBB Q1BJOiBHSUNDIChhY3BpX2lkWzB4MDAyOF0gYWRkcmVzc1sweDliMDAwMDAwXSBNUElEUlsweDFj MDAwMF0gZW5hYmxlZCkNCihYRU4pIEFDUEk6IEdJQ0MgKGFjcGlfaWRbMHgwMDI5XSBhZGRyZXNz WzB4OWIwMDAwMDBdIE1QSURSWzB4MWMwMTAwXSBlbmFibGVkKQ0KKFhFTikgQUNQSTogR0lDQyAo YWNwaV9pZFsweDAwMmFdIGFkZHJlc3NbMHg5YjAwMDAwMF0gTVBJRFJbMHgxYzAyMDBdIGVuYWJs ZWQpDQooWEVOKSBBQ1BJOiBHSUNDIChhY3BpX2lkWzB4MDAyYl0gYWRkcmVzc1sweDliMDAwMDAw XSBNUElEUlsweDFjMDMwMF0gZW5hYmxlZCkNCihYRU4pIEFDUEk6IEdJQ0MgKGFjcGlfaWRbMHgw MDJjXSBhZGRyZXNzWzB4OWIwMDAwMDBdIE1QSURSWzB4MWQwMDAwXSBlbmFibGVkKQ0KKFhFTikg QUNQSTogR0lDQyAoYWNwaV9pZFsweDAwMmRdIGFkZHJlc3NbMHg5YjAwMDAwMF0gTVBJRFJbMHgx ZDAxMDBdIGVuYWJsZWQpDQooWEVOKSBBQ1BJOiBHSUNDIChhY3BpX2lkWzB4MDAyZV0gYWRkcmVz c1sweDliMDAwMDAwXSBNUElEUlsweDFkMDIwMF0gZW5hYmxlZCkNCihYRU4pIEFDUEk6IEdJQ0Mg KGFjcGlfaWRbMHgwMDJmXSBhZGRyZXNzWzB4OWIwMDAwMDBdIE1QSURSWzB4MWQwMzAwXSBlbmFi bGVkKQ0KKFhFTikgQUNQSTogR0lDQyAoYWNwaV9pZFsweDAwMzBdIGFkZHJlc3NbMHg5YjAwMDAw MF0gTVBJRFJbMHgyODAwMDBdIGVuYWJsZWQpDQooWEVOKSBBQ1BJOiBHSUNDIChhY3BpX2lkWzB4 MDAzMV0gYWRkcmVzc1sweDliMDAwMDAwXSBNUElEUlsweDI4MDEwMF0gZW5hYmxlZCkNCihYRU4p IEFDUEk6IEdJQ0MgKGFjcGlfaWRbMHgwMDMyXSBhZGRyZXNzWzB4OWIwMDAwMDBdIE1QSURSWzB4 MjgwMjAwXSBlbmFibGVkKQ0KKFhFTikgQUNQSTogR0lDQyAoYWNwaV9pZFsweDAwMzNdIGFkZHJl c3NbMHg5YjAwMDAwMF0gTVBJRFJbMHgyODAzMDBdIGVuYWJsZWQpDQooWEVOKSBBQ1BJOiBHSUND IChhY3BpX2lkWzB4MDAzNF0gYWRkcmVzc1sweDliMDAwMDAwXSBNUElEUlsweDI5MDAwMF0gZW5h YmxlZCkNCihYRU4pIEFDUEk6IEdJQ0MgKGFjcGlfaWRbMHgwMDM1XSBhZGRyZXNzWzB4OWIwMDAw MDBdIE1QSURSWzB4MjkwMTAwXSBlbmFibGVkKQ0KKFhFTikgQUNQSTogR0lDQyAoYWNwaV9pZFsw eDAwMzZdIGFkZHJlc3NbMHg5YjAwMDAwMF0gTVBJRFJbMHgyOTAyMDBdIGVuYWJsZWQpDQooWEVO KSBBQ1BJOiBHSUNDIChhY3BpX2lkWzB4MDAzN10gYWRkcmVzc1sweDliMDAwMDAwXSBNUElEUlsw eDI5MDMwMF0gZW5hYmxlZCkNCihYRU4pIEFDUEk6IEdJQ0MgKGFjcGlfaWRbMHgwMDM4XSBhZGRy ZXNzWzB4OWIwMDAwMDBdIE1QSURSWzB4MmEwMDAwXSBlbmFibGVkKQ0KKFhFTikgQUNQSTogR0lD QyAoYWNwaV9pZFsweDAwMzldIGFkZHJlc3NbMHg5YjAwMDAwMF0gTVBJRFJbMHgyYTAxMDBdIGVu YWJsZWQpDQooWEVOKSBBQ1BJOiBHSUNDIChhY3BpX2lkWzB4MDAzYV0gYWRkcmVzc1sweDliMDAw MDAwXSBNUElEUlsweDJhMDIwMF0gZW5hYmxlZCkNCihYRU4pIEFDUEk6IEdJQ0MgKGFjcGlfaWRb MHgwMDNiXSBhZGRyZXNzWzB4OWIwMDAwMDBdIE1QSURSWzB4MmEwMzAwXSBlbmFibGVkKQ0KKFhF TikgQUNQSTogR0lDQyAoYWNwaV9pZFsweDAwM2NdIGFkZHJlc3NbMHg5YjAwMDAwMF0gTVBJRFJb MHgyYjAwMDBdIGVuYWJsZWQpDQooWEVOKSBBQ1BJOiBHSUNDIChhY3BpX2lkWzB4MDAzZF0gYWRk cmVzc1sweDliMDAwMDAwXSBNUElEUlsweDJiMDEwMF0gZW5hYmxlZCkNCihYRU4pIEFDUEk6IEdJ Q0MgKGFjcGlfaWRbMHgwMDNlXSBhZGRyZXNzWzB4OWIwMDAwMDBdIE1QSURSWzB4MmIwMjAwXSBl bmFibGVkKQ0KKFhFTikgQUNQSTogR0lDQyAoYWNwaV9pZFsweDAwM2ZdIGFkZHJlc3NbMHg5YjAw MDAwMF0gTVBJRFJbMHgyYjAzMDBdIGVuYWJsZWQpDQooWEVOKSBBQ1BJOiBHSUNDIChhY3BpX2lk WzB4MDA0MF0gYWRkcmVzc1sweDliMDAwMDAwXSBNUElEUlsweDJjMDAwMF0gZW5hYmxlZCkNCihY RU4pIEFDUEk6IEdJQ0MgKGFjcGlfaWRbMHgwMDQxXSBhZGRyZXNzWzB4OWIwMDAwMDBdIE1QSURS WzB4MmMwMTAwXSBlbmFibGVkKQ0KKFhFTikgQUNQSTogR0lDQyAoYWNwaV9pZFsweDAwNDJdIGFk ZHJlc3NbMHg5YjAwMDAwMF0gTVBJRFJbMHgyYzAyMDBdIGVuYWJsZWQpDQooWEVOKSBBQ1BJOiBH SUNDIChhY3BpX2lkWzB4MDA0M10gYWRkcmVzc1sweDliMDAwMDAwXSBNUElEUlsweDJjMDMwMF0g ZW5hYmxlZCkNCihYRU4pIEFDUEk6IEdJQ0MgKGFjcGlfaWRbMHgwMDQ0XSBhZGRyZXNzWzB4OWIw MDAwMDBdIE1QSURSWzB4MmQwMDAwXSBlbmFibGVkKQ0KKFhFTikgQUNQSTogR0lDQyAoYWNwaV9p ZFsweDAwNDVdIGFkZHJlc3NbMHg5YjAwMDAwMF0gTVBJRFJbMHgyZDAxMDBdIGVuYWJsZWQpDQoo WEVOKSBBQ1BJOiBHSUNDIChhY3BpX2lkWzB4MDA0Nl0gYWRkcmVzc1sweDliMDAwMDAwXSBNUElE UlsweDJkMDIwMF0gZW5hYmxlZCkNCihYRU4pIEFDUEk6IEdJQ0MgKGFjcGlfaWRbMHgwMDQ3XSBh ZGRyZXNzWzB4OWIwMDAwMDBdIE1QSURSWzB4MmQwMzAwXSBlbmFibGVkKQ0KKFhFTikgQUNQSTog R0lDQyAoYWNwaV9pZFsweDAwNDhdIGFkZHJlc3NbMHg5YjAwMDAwMF0gTVBJRFJbMHgzODAwMDBd IGVuYWJsZWQpDQooWEVOKSBBQ1BJOiBHSUNDIChhY3BpX2lkWzB4MDA0OV0gYWRkcmVzc1sweDli MDAwMDAwXSBNUElEUlsweDM4MDEwMF0gZW5hYmxlZCkNCihYRU4pIEFDUEk6IEdJQ0MgKGFjcGlf aWRbMHgwMDRhXSBhZGRyZXNzWzB4OWIwMDAwMDBdIE1QSURSWzB4MzgwMjAwXSBlbmFibGVkKQ0K KFhFTikgQUNQSTogR0lDQyAoYWNwaV9pZFsweDAwNGJdIGFkZHJlc3NbMHg5YjAwMDAwMF0gTVBJ RFJbMHgzODAzMDBdIGVuYWJsZWQpDQooWEVOKSBBQ1BJOiBHSUNDIChhY3BpX2lkWzB4MDA0Y10g YWRkcmVzc1sweDliMDAwMDAwXSBNUElEUlsweDM5MDAwMF0gZW5hYmxlZCkNCihYRU4pIEFDUEk6 IEdJQ0MgKGFjcGlfaWRbMHgwMDRkXSBhZGRyZXNzWzB4OWIwMDAwMDBdIE1QSURSWzB4MzkwMTAw XSBlbmFibGVkKQ0KKFhFTikgQUNQSTogR0lDQyAoYWNwaV9pZFsweDAwNGVdIGFkZHJlc3NbMHg5 YjAwMDAwMF0gTVBJRFJbMHgzOTAyMDBdIGVuYWJsZWQpDQooWEVOKSBBQ1BJOiBHSUNDIChhY3Bp X2lkWzB4MDA0Zl0gYWRkcmVzc1sweDliMDAwMDAwXSBNUElEUlsweDM5MDMwMF0gZW5hYmxlZCkN CihYRU4pIEFDUEk6IEdJQ0MgKGFjcGlfaWRbMHgwMDUwXSBhZGRyZXNzWzB4OWIwMDAwMDBdIE1Q SURSWzB4M2EwMDAwXSBlbmFibGVkKQ0KKFhFTikgQUNQSTogR0lDQyAoYWNwaV9pZFsweDAwNTFd IGFkZHJlc3NbMHg5YjAwMDAwMF0gTVBJRFJbMHgzYTAxMDBdIGVuYWJsZWQpDQooWEVOKSBBQ1BJ OiBHSUNDIChhY3BpX2lkWzB4MDA1Ml0gYWRkcmVzc1sweDliMDAwMDAwXSBNUElEUlsweDNhMDIw MF0gZW5hYmxlZCkNCihYRU4pIEFDUEk6IEdJQ0MgKGFjcGlfaWRbMHgwMDUzXSBhZGRyZXNzWzB4 OWIwMDAwMDBdIE1QSURSWzB4M2EwMzAwXSBlbmFibGVkKQ0KKFhFTikgQUNQSTogR0lDQyAoYWNw aV9pZFsweDAwNTRdIGFkZHJlc3NbMHg5YjAwMDAwMF0gTVBJRFJbMHgzYjAwMDBdIGVuYWJsZWQp DQooWEVOKSBBQ1BJOiBHSUNDIChhY3BpX2lkWzB4MDA1NV0gYWRkcmVzc1sweDliMDAwMDAwXSBN UElEUlsweDNiMDEwMF0gZW5hYmxlZCkNCihYRU4pIEFDUEk6IEdJQ0MgKGFjcGlfaWRbMHgwMDU2 XSBhZGRyZXNzWzB4OWIwMDAwMDBdIE1QSURSWzB4M2IwMjAwXSBlbmFibGVkKQ0KKFhFTikgQUNQ STogR0lDQyAoYWNwaV9pZFsweDAwNTddIGFkZHJlc3NbMHg5YjAwMDAwMF0gTVBJRFJbMHgzYjAz MDBdIGVuYWJsZWQpDQooWEVOKSBBQ1BJOiBHSUNDIChhY3BpX2lkWzB4MDA1OF0gYWRkcmVzc1sw eDliMDAwMDAwXSBNUElEUlsweDNjMDAwMF0gZW5hYmxlZCkNCihYRU4pIEFDUEk6IEdJQ0MgKGFj cGlfaWRbMHgwMDU5XSBhZGRyZXNzWzB4OWIwMDAwMDBdIE1QSURSWzB4M2MwMTAwXSBlbmFibGVk KQ0KKFhFTikgQUNQSTogR0lDQyAoYWNwaV9pZFsweDAwNWFdIGFkZHJlc3NbMHg5YjAwMDAwMF0g TVBJRFJbMHgzYzAyMDBdIGVuYWJsZWQpDQooWEVOKSBBQ1BJOiBHSUNDIChhY3BpX2lkWzB4MDA1 Yl0gYWRkcmVzc1sweDliMDAwMDAwXSBNUElEUlsweDNjMDMwMF0gZW5hYmxlZCkNCihYRU4pIEFD UEk6IEdJQ0MgKGFjcGlfaWRbMHgwMDVjXSBhZGRyZXNzWzB4OWIwMDAwMDBdIE1QSURSWzB4M2Qw MDAwXSBlbmFibGVkKQ0KKFhFTikgQUNQSTogR0lDQyAoYWNwaV9pZFsweDAwNWRdIGFkZHJlc3Nb MHg5YjAwMDAwMF0gTVBJRFJbMHgzZDAxMDBdIGVuYWJsZWQpDQooWEVOKSBBQ1BJOiBHSUNDIChh Y3BpX2lkWzB4MDA1ZV0gYWRkcmVzc1sweDliMDAwMDAwXSBNUElEUlsweDNkMDIwMF0gZW5hYmxl ZCkNCihYRU4pIEFDUEk6IEdJQ0MgKGFjcGlfaWRbMHgwMDVmXSBhZGRyZXNzWzB4OWIwMDAwMDBd IE1QSURSWzB4M2QwMzAwXSBlbmFibGVkKQ0KKFhFTikgOTYgQ1BVcyBlbmFibGVkLCA5NiBDUFVz IHRvdGFsDQooWEVOKSBDb21tYW5kIGxpbmU6IHBsYWNlaG9sZGVyIG5vLXJlYWwtbW9kZSBlZGQ9 b2ZmDQooWEVOKSBhY3BpIGRpc2FibGVkOiAwDQooWEVOKSBTTVA6IEFsbG93aW5nIDk2IENQVXMN CihYRU4pIEdlbmVyaWMgVGltZXIgSVJROiBwaHlzPTMwIGh5cD0yNiB2aXJ0PTI3IEZyZXE6IDEw MDAwMCBLSHoNCihYRU4pIEdJQ3YzIGluaXRpYWxpemF0aW9uOg0KKFhFTikgICAgICAgZ2ljX2Rp c3RfYWRkcj0weDAwMDAwMGFlMDAwMDAwDQooWEVOKSAgICAgICBnaWNfbWFpbnRlbmFuY2VfaXJx PTI1DQooWEVOKSAgICAgICBnaWNfcmRpc3Rfc3RyaWRlPTANCihYRU4pICAgICAgIGdpY19yZGlz dF9yZWdpb25zPTk2DQooWEVOKSAgICAgICByZWRpc3RyaWJ1dG9yIHJlZ2lvbnM6DQooWEVOKSAg ICAgICAgIC0gcmVnaW9uIDA6IDB4MDAwMDAwYWUxMDAwMDAgLSAweDAwMDAwMGFlMTQwMDAwDQoo WEVOKSAgICAgICAgIC0gcmVnaW9uIDE6IDB4MDAwMDAwYWUxNDAwMDAgLSAweDAwMDAwMGFlMTgw MDAwDQooWEVOKSAgICAgICAgIC0gcmVnaW9uIDI6IDB4MDAwMDAwYWUxODAwMDAgLSAweDAwMDAw MGFlMWMwMDAwDQooWEVOKSAgICAgICAgIC0gcmVnaW9uIDM6IDB4MDAwMDAwYWUxYzAwMDAgLSAw eDAwMDAwMGFlMjAwMDAwDQooWEVOKSAgICAgICAgIC0gcmVnaW9uIDQ6IDB4MDAwMDAwYWUyMDAw MDAgLSAweDAwMDAwMGFlMjQwMDAwDQooWEVOKSAgICAgICAgIC0gcmVnaW9uIDU6IDB4MDAwMDAw YWUyNDAwMDAgLSAweDAwMDAwMGFlMjgwMDAwDQooWEVOKSAgICAgICAgIC0gcmVnaW9uIDY6IDB4 MDAwMDAwYWUyODAwMDAgLSAweDAwMDAwMGFlMmMwMDAwDQooWEVOKSAgICAgICAgIC0gcmVnaW9u IDc6IDB4MDAwMDAwYWUyYzAwMDAgLSAweDAwMDAwMGFlMzAwMDAwDQooWEVOKSAgICAgICAgIC0g cmVnaW9uIDg6IDB4MDAwMDAwYWUzMDAwMDAgLSAweDAwMDAwMGFlMzQwMDAwDQooWEVOKSAgICAg ICAgIC0gcmVnaW9uIDk6IDB4MDAwMDAwYWUzNDAwMDAgLSAweDAwMDAwMGFlMzgwMDAwDQooWEVO KSAgICAgICAgIC0gcmVnaW9uIDEwOiAweDAwMDAwMGFlMzgwMDAwIC0gMHgwMDAwMDBhZTNjMDAw MA0KKFhFTikgICAgICAgICAtIHJlZ2lvbiAxMTogMHgwMDAwMDBhZTNjMDAwMCAtIDB4MDAwMDAw YWU0MDAwMDANCihYRU4pICAgICAgICAgLSByZWdpb24gMTI6IDB4MDAwMDAwYWU0MDAwMDAgLSAw eDAwMDAwMGFlNDQwMDAwDQooWEVOKSAgICAgICAgIC0gcmVnaW9uIDEzOiAweDAwMDAwMGFlNDQw MDAwIC0gMHgwMDAwMDBhZTQ4MDAwMA0KKFhFTikgICAgICAgICAtIHJlZ2lvbiAxNDogMHgwMDAw MDBhZTQ4MDAwMCAtIDB4MDAwMDAwYWU0YzAwMDANCihYRU4pICAgICAgICAgLSByZWdpb24gMTU6 IDB4MDAwMDAwYWU0YzAwMDAgLSAweDAwMDAwMGFlNTAwMDAwDQooWEVOKSAgICAgICAgIC0gcmVn aW9uIDE2OiAweDAwMDAwMGFlNTAwMDAwIC0gMHgwMDAwMDBhZTU0MDAwMA0KKFhFTikgICAgICAg ICAtIHJlZ2lvbiAxNzogMHgwMDAwMDBhZTU0MDAwMCAtIDB4MDAwMDAwYWU1ODAwMDANCihYRU4p ICAgICAgICAgLSByZWdpb24gMTg6IDB4MDAwMDAwYWU1ODAwMDAgLSAweDAwMDAwMGFlNWMwMDAw DQooWEVOKSAgICAgICAgIC0gcmVnaW9uIDE5OiAweDAwMDAwMGFlNWMwMDAwIC0gMHgwMDAwMDBh ZTYwMDAwMA0KKFhFTikgICAgICAgICAtIHJlZ2lvbiAyMDogMHgwMDAwMDBhZTYwMDAwMCAtIDB4 MDAwMDAwYWU2NDAwMDANCihYRU4pICAgICAgICAgLSByZWdpb24gMjE6IDB4MDAwMDAwYWU2NDAw MDAgLSAweDAwMDAwMGFlNjgwMDAwDQooWEVOKSAgICAgICAgIC0gcmVnaW9uIDIyOiAweDAwMDAw MGFlNjgwMDAwIC0gMHgwMDAwMDBhZTZjMDAwMA0KKFhFTikgICAgICAgICAtIHJlZ2lvbiAyMzog MHgwMDAwMDBhZTZjMDAwMCAtIDB4MDAwMDAwYWU3MDAwMDANCihYRU4pICAgICAgICAgLSByZWdp b24gMjQ6IDB4MDAwMDAwYWExMDAwMDAgLSAweDAwMDAwMGFhMTQwMDAwDQooWEVOKSAgICAgICAg IC0gcmVnaW9uIDI1OiAweDAwMDAwMGFhMTQwMDAwIC0gMHgwMDAwMDBhYTE4MDAwMA0KKFhFTikg ICAgICAgICAtIHJlZ2lvbiAyNjogMHgwMDAwMDBhYTE4MDAwMCAtIDB4MDAwMDAwYWExYzAwMDAN CihYRU4pICAgICAgICAgLSByZWdpb24gMjc6IDB4MDAwMDAwYWExYzAwMDAgLSAweDAwMDAwMGFh MjAwMDAwDQooWEVOKSAgICAgICAgIC0gcmVnaW9uIDI4OiAweDAwMDAwMGFhMjAwMDAwIC0gMHgw MDAwMDBhYTI0MDAwMA0KKFhFTikgICAgICAgICAtIHJlZ2lvbiAyOTogMHgwMDAwMDBhYTI0MDAw MCAtIDB4MDAwMDAwYWEyODAwMDANCihYRU4pICAgICAgICAgLSByZWdpb24gMzA6IDB4MDAwMDAw YWEyODAwMDAgLSAweDAwMDAwMGFhMmMwMDAwDQooWEVOKSAgICAgICAgIC0gcmVnaW9uIDMxOiAw eDAwMDAwMGFhMmMwMDAwIC0gMHgwMDAwMDBhYTMwMDAwMA0KKFhFTikgICAgICAgICAtIHJlZ2lv biAzMjogMHgwMDAwMDBhYTMwMDAwMCAtIDB4MDAwMDAwYWEzNDAwMDANCihYRU4pICAgICAgICAg LSByZWdpb24gMzM6IDB4MDAwMDAwYWEzNDAwMDAgLSAweDAwMDAwMGFhMzgwMDAwDQooWEVOKSAg ICAgICAgIC0gcmVnaW9uIDM0OiAweDAwMDAwMGFhMzgwMDAwIC0gMHgwMDAwMDBhYTNjMDAwMA0K KFhFTikgICAgICAgICAtIHJlZ2lvbiAzNTogMHgwMDAwMDBhYTNjMDAwMCAtIDB4MDAwMDAwYWE0 MDAwMDANCihYRU4pICAgICAgICAgLSByZWdpb24gMzY6IDB4MDAwMDAwYWE0MDAwMDAgLSAweDAw MDAwMGFhNDQwMDAwDQooWEVOKSAgICAgICAgIC0gcmVnaW9uIDM3OiAweDAwMDAwMGFhNDQwMDAw IC0gMHgwMDAwMDBhYTQ4MDAwMA0KKFhFTikgICAgICAgICAtIHJlZ2lvbiAzODogMHgwMDAwMDBh YTQ4MDAwMCAtIDB4MDAwMDAwYWE0YzAwMDANCihYRU4pICAgICAgICAgLSByZWdpb24gMzk6IDB4 MDAwMDAwYWE0YzAwMDAgLSAweDAwMDAwMGFhNTAwMDAwDQooWEVOKSAgICAgICAgIC0gcmVnaW9u IDQwOiAweDAwMDAwMGFhNTAwMDAwIC0gMHgwMDAwMDBhYTU0MDAwMA0KKFhFTikgICAgICAgICAt IHJlZ2lvbiA0MTogMHgwMDAwMDBhYTU0MDAwMCAtIDB4MDAwMDAwYWE1ODAwMDANCihYRU4pICAg ICAgICAgLSByZWdpb24gNDI6IDB4MDAwMDAwYWE1ODAwMDAgLSAweDAwMDAwMGFhNWMwMDAwDQoo WEVOKSAgICAgICAgIC0gcmVnaW9uIDQzOiAweDAwMDAwMGFhNWMwMDAwIC0gMHgwMDAwMDBhYTYw MDAwMA0KKFhFTikgICAgICAgICAtIHJlZ2lvbiA0NDogMHgwMDAwMDBhYTYwMDAwMCAtIDB4MDAw MDAwYWE2NDAwMDANCihYRU4pICAgICAgICAgLSByZWdpb24gNDU6IDB4MDAwMDAwYWE2NDAwMDAg LSAweDAwMDAwMGFhNjgwMDAwDQooWEVOKSAgICAgICAgIC0gcmVnaW9uIDQ2OiAweDAwMDAwMGFh NjgwMDAwIC0gMHgwMDAwMDBhYTZjMDAwMA0KKFhFTikgICAgICAgICAtIHJlZ2lvbiA0NzogMHgw MDAwMDBhYTZjMDAwMCAtIDB4MDAwMDAwYWE3MDAwMDANCihYRU4pICAgICAgICAgLSByZWdpb24g NDg6IDB4MDAyMDAwYWUxMDAwMDAgLSAweDAwMjAwMGFlMTQwMDAwDQooWEVOKSAgICAgICAgIC0g cmVnaW9uIDQ5OiAweDAwMjAwMGFlMTQwMDAwIC0gMHgwMDIwMDBhZTE4MDAwMA0KKFhFTikgICAg ICAgICAtIHJlZ2lvbiA1MDogMHgwMDIwMDBhZTE4MDAwMCAtIDB4MDAyMDAwYWUxYzAwMDANCihY RU4pICAgICAgICAgLSByZWdpb24gNTE6IDB4MDAyMDAwYWUxYzAwMDAgLSAweDAwMjAwMGFlMjAw MDAwDQooWEVOKSAgICAgICAgIC0gcmVnaW9uIDUyOiAweDAwMjAwMGFlMjAwMDAwIC0gMHgwMDIw MDBhZTI0MDAwMA0KKFhFTikgICAgICAgICAtIHJlZ2lvbiA1MzogMHgwMDIwMDBhZTI0MDAwMCAt IDB4MDAyMDAwYWUyODAwMDANCihYRU4pICAgICAgICAgLSByZWdpb24gNTQ6IDB4MDAyMDAwYWUy ODAwMDAgLSAweDAwMjAwMGFlMmMwMDAwDQooWEVOKSAgICAgICAgIC0gcmVnaW9uIDU1OiAweDAw MjAwMGFlMmMwMDAwIC0gMHgwMDIwMDBhZTMwMDAwMA0KKFhFTikgICAgICAgICAtIHJlZ2lvbiA1 NjogMHgwMDIwMDBhZTMwMDAwMCAtIDB4MDAyMDAwYWUzNDAwMDANCihYRU4pICAgICAgICAgLSBy ZWdpb24gNTc6IDB4MDAyMDAwYWUzNDAwMDAgLSAweDAwMjAwMGFlMzgwMDAwDQooWEVOKSAgICAg ICAgIC0gcmVnaW9uIDU4OiAweDAwMjAwMGFlMzgwMDAwIC0gMHgwMDIwMDBhZTNjMDAwMA0KKFhF TikgICAgICAgICAtIHJlZ2lvbiA1OTogMHgwMDIwMDBhZTNjMDAwMCAtIDB4MDAyMDAwYWU0MDAw MDANCihYRU4pICAgICAgICAgLSByZWdpb24gNjA6IDB4MDAyMDAwYWU0MDAwMDAgLSAweDAwMjAw MGFlNDQwMDAwDQooWEVOKSAgICAgICAgIC0gcmVnaW9uIDYxOiAweDAwMjAwMGFlNDQwMDAwIC0g MHgwMDIwMDBhZTQ4MDAwMA0KKFhFTikgICAgICAgICAtIHJlZ2lvbiA2MjogMHgwMDIwMDBhZTQ4 MDAwMCAtIDB4MDAyMDAwYWU0YzAwMDANCihYRU4pICAgICAgICAgLSByZWdpb24gNjM6IDB4MDAy MDAwYWU0YzAwMDAgLSAweDAwMjAwMGFlNTAwMDAwDQooWEVOKSAgICAgICAgIC0gcmVnaW9uIDY0 OiAweDAwMjAwMGFlNTAwMDAwIC0gMHgwMDIwMDBhZTU0MDAwMA0KKFhFTikgICAgICAgICAtIHJl Z2lvbiA2NTogMHgwMDIwMDBhZTU0MDAwMCAtIDB4MDAyMDAwYWU1ODAwMDANCihYRU4pICAgICAg ICAgLSByZWdpb24gNjY6IDB4MDAyMDAwYWU1ODAwMDAgLSAweDAwMjAwMGFlNWMwMDAwDQooWEVO KSAgICAgICAgIC0gcmVnaW9uIDY3OiAweDAwMjAwMGFlNWMwMDAwIC0gMHgwMDIwMDBhZTYwMDAw MA0KKFhFTikgICAgICAgICAtIHJlZ2lvbiA2ODogMHgwMDIwMDBhZTYwMDAwMCAtIDB4MDAyMDAw YWU2NDAwMDANCihYRU4pICAgICAgICAgLSByZWdpb24gNjk6IDB4MDAyMDAwYWU2NDAwMDAgLSAw eDAwMjAwMGFlNjgwMDAwDQooWEVOKSAgICAgICAgIC0gcmVnaW9uIDcwOiAweDAwMjAwMGFlNjgw MDAwIC0gMHgwMDIwMDBhZTZjMDAwMA0KKFhFTikgICAgICAgICAtIHJlZ2lvbiA3MTogMHgwMDIw MDBhZTZjMDAwMCAtIDB4MDAyMDAwYWU3MDAwMDANCihYRU4pICAgICAgICAgLSByZWdpb24gNzI6 IDB4MDAyMDAwYWExMDAwMDAgLSAweDAwMjAwMGFhMTQwMDAwDQooWEVOKSAgICAgICAgIC0gcmVn aW9uIDczOiAweDAwMjAwMGFhMTQwMDAwIC0gMHgwMDIwMDBhYTE4MDAwMA0KKFhFTikgICAgICAg ICAtIHJlZ2lvbiA3NDogMHgwMDIwMDBhYTE4MDAwMCAtIDB4MDAyMDAwYWExYzAwMDANCihYRU4p ICAgICAgICAgLSByZWdpb24gNzU6IDB4MDAyMDAwYWExYzAwMDAgLSAweDAwMjAwMGFhMjAwMDAw DQooWEVOKSAgICAgICAgIC0gcmVnaW9uIDc2OiAweDAwMjAwMGFhMjAwMDAwIC0gMHgwMDIwMDBh YTI0MDAwMA0KKFhFTikgICAgICAgICAtIHJlZ2lvbiA3NzogMHgwMDIwMDBhYTI0MDAwMCAtIDB4 MDAyMDAwYWEyODAwMDANCihYRU4pICAgICAgICAgLSByZWdpb24gNzg6IDB4MDAyMDAwYWEyODAw MDAgLSAweDAwMjAwMGFhMmMwMDAwDQooWEVOKSAgICAgICAgIC0gcmVnaW9uIDc5OiAweDAwMjAw MGFhMmMwMDAwIC0gMHgwMDIwMDBhYTMwMDAwMA0KKFhFTikgICAgICAgICAtIHJlZ2lvbiA4MDog MHgwMDIwMDBhYTMwMDAwMCAtIDB4MDAyMDAwYWEzNDAwMDANCihYRU4pICAgICAgICAgLSByZWdp b24gODE6IDB4MDAyMDAwYWEzNDAwMDAgLSAweDAwMjAwMGFhMzgwMDAwDQooWEVOKSAgICAgICAg IC0gcmVnaW9uIDgyOiAweDAwMjAwMGFhMzgwMDAwIC0gMHgwMDIwMDBhYTNjMDAwMA0KKFhFTikg ICAgICAgICAtIHJlZ2lvbiA4MzogMHgwMDIwMDBhYTNjMDAwMCAtIDB4MDAyMDAwYWE0MDAwMDAN CihYRU4pICAgICAgICAgLSByZWdpb24gODQ6IDB4MDAyMDAwYWE0MDAwMDAgLSAweDAwMjAwMGFh NDQwMDAwDQooWEVOKSAgICAgICAgIC0gcmVnaW9uIDg1OiAweDAwMjAwMGFhNDQwMDAwIC0gMHgw MDIwMDBhYTQ4MDAwMA0KKFhFTikgICAgICAgICAtIHJlZ2lvbiA4NjogMHgwMDIwMDBhYTQ4MDAw MCAtIDB4MDAyMDAwYWE0YzAwMDANCihYRU4pICAgICAgICAgLSByZWdpb24gODc6IDB4MDAyMDAw YWE0YzAwMDAgLSAweDAwMjAwMGFhNTAwMDAwDQooWEVOKSAgICAgICAgIC0gcmVnaW9uIDg4OiAw eDAwMjAwMGFhNTAwMDAwIC0gMHgwMDIwMDBhYTU0MDAwMA0KKFhFTikgICAgICAgICAtIHJlZ2lv biA4OTogMHgwMDIwMDBhYTU0MDAwMCAtIDB4MDAyMDAwYWE1ODAwMDANCihYRU4pICAgICAgICAg LSByZWdpb24gOTA6IDB4MDAyMDAwYWE1ODAwMDAgLSAweDAwMjAwMGFhNWMwMDAwDQooWEVOKSAg ICAgICAgIC0gcmVnaW9uIDkxOiAweDAwMjAwMGFhNWMwMDAwIC0gMHgwMDIwMDBhYTYwMDAwMA0K KFhFTikgICAgICAgICAtIHJlZ2lvbiA5MjogMHgwMDIwMDBhYTYwMDAwMCAtIDB4MDAyMDAwYWE2 NDAwMDANCihYRU4pICAgICAgICAgLSByZWdpb24gOTM6IDB4MDAyMDAwYWE2NDAwMDAgLSAweDAw MjAwMGFhNjgwMDAwDQooWEVOKSAgICAgICAgIC0gcmVnaW9uIDk0OiAweDAwMjAwMGFhNjgwMDAw IC0gMHgwMDIwMDBhYTZjMDAwMA0KKFhFTikgICAgICAgICAtIHJlZ2lvbiA5NTogMHgwMDIwMDBh YTZjMDAwMCAtIDB4MDAyMDAwYWE3MDAwMDANCihYRU4pIEdJQ3YzIGNvbXBhdGlibGUgd2l0aCBH SUN2MiBjYmFzZSAweDAwMDAwMDliMDAwMDAwIHZiYXNlIDB4MDAwMDAwOWIwMjAwMDANCihYRU4p IEdJQ3YzOiB1c2luZyBhdCBtb3N0IDU3MzQ0IExQSXMgb24gdGhlIGhvc3QuDQooWEVOKSBHSUN2 MzogNjcyIGxpbmVzLCAoSUlEIDAwMDMxNzM2KS4NCihYRU4pIEdJQ3YzOiBGb3VuZCBJVFMgQDB4 MjAyMTAwMDAwDQooWEVOKSBHSUN2MzogRm91bmQgSVRTIEAweDIwMDIwMjEwMDAwMA0KKFhFTikg R0lDdjM6IENQVTA6IEZvdW5kIHJlZGlzdHJpYnV0b3IgaW4gcmVnaW9uIDAgQDAwMDAwMDAwNDAw MzcwMDANCihYRU4pIFVzaW5nIHNjaGVkdWxlcjogU01QIENyZWRpdCBTY2hlZHVsZXIgcmV2MiAo Y3JlZGl0MikNCihYRU4pIEluaXRpYWxpemluZyBDcmVkaXQyIHNjaGVkdWxlcg0KKFhFTikgIGxv YWRfcHJlY2lzaW9uX3NoaWZ0OiAxOA0KKFhFTikgIGxvYWRfd2luZG93X3NoaWZ0OiAzMA0KKFhF TikgIHVuZGVybG9hZF9iYWxhbmNlX3RvbGVyYW5jZTogMA0KKFhFTikgIG92ZXJsb2FkX2JhbGFu Y2VfdG9sZXJhbmNlOiAtMw0KKFhFTikgIHJ1bnF1ZXVlcyBhcnJhbmdlbWVudDogc29ja2V0DQoo WEVOKSAgY2FwIGVuZm9yY2VtZW50IGdyYW51bGFyaXR5OiAxMG1zDQooWEVOKSBsb2FkIHRyYWNr aW5nIHdpbmRvdyBsZW5ndGggMTA3Mzc0MTgyNCBucw0KKFhFTikgRGVmYXVsdGluZyB0byBhbHRl cm5hdGl2ZSBrZXkgaGFuZGxpbmc7IHNlbmQgJ0EnIHRvIHN3aXRjaCB0byBub3JtYWwgbW9kZS4N CihYRU4pIEFsbG9jYXRlZCBjb25zb2xlIHJpbmcgb2YgMTAyNCBLaUIuDQooWEVOKSBDUFUwOiBH dWVzdCBhdG9taWNzIHdpbGwgdHJ5IDI4IHRpbWVzIGJlZm9yZSBwYXVzaW5nIHRoZSBkb21haW4N CihYRU4pIEJyaW5naW5nIHVwIENQVTENCihYRU4pIEdJQ3YzOiBDUFUxOiBGb3VuZCByZWRpc3Ry aWJ1dG9yIGluIHJlZ2lvbiAxIEAwMDAwMDAwMDQwMDc4MDAwDQooWEVOKSBDUFUxOiBHdWVzdCBh dG9taWNzIHdpbGwgdHJ5IDI4IHRpbWVzIGJlZm9yZSBwYXVzaW5nIHRoZSBkb21haW4NCihYRU4p IENQVSAxIGJvb3RlZC4NCihYRU4pIEJyaW5naW5nIHVwIENQVTINCihYRU4pIEdJQ3YzOiBDUFUy OiBGb3VuZCByZWRpc3RyaWJ1dG9yIGluIHJlZ2lvbiAyIEAwMDAwMDAwMDQwMGI5MDAwDQooWEVO KSBDUFUyOiBHdWVzdCBhdG9taWNzIHdpbGwgdHJ5IDI4IHRpbWVzIGJlZm9yZSBwYXVzaW5nIHRo ZSBkb21haW4NCihYRU4pIENQVSAyIGJvb3RlZC4NCihYRU4pIEJyaW5naW5nIHVwIENQVTMNCihY RU4pIEdJQ3YzOiBDUFUzOiBGb3VuZCByZWRpc3RyaWJ1dG9yIGluIHJlZ2lvbiAzIEAwMDAwMDAw MDQwMGZhMDAwDQooWEVOKSBDUFUzOiBHdWVzdCBhdG9taWNzIHdpbGwgdHJ5IDI4IHRpbWVzIGJl Zm9yZSBwYXVzaW5nIHRoZSBkb21haW4NCihYRU4pIENQVSAzIGJvb3RlZC4NCihYRU4pIEJyaW5n aW5nIHVwIENQVTQNCihYRU4pIEdJQ3YzOiBDUFU0OiBGb3VuZCByZWRpc3RyaWJ1dG9yIGluIHJl Z2lvbiA0IEAwMDAwMDAwMDQwMTNiMDAwDQooWEVOKSBDUFU0OiBHdWVzdCBhdG9taWNzIHdpbGwg dHJ5IDI4IHRpbWVzIGJlZm9yZSBwYXVzaW5nIHRoZSBkb21haW4NCihYRU4pIENQVSA0IGJvb3Rl ZC4NCihYRU4pIEJyaW5naW5nIHVwIENQVTUNCihYRU4pIEdJQ3YzOiBDUFU1OiBGb3VuZCByZWRp c3RyaWJ1dG9yIGluIHJlZ2lvbiA1IEAwMDAwMDAwMDQwMTdjMDAwDQooWEVOKSBDUFU1OiBHdWVz dCBhdG9taWNzIHdpbGwgdHJ5IDI4IHRpbWVzIGJlZm9yZSBwYXVzaW5nIHRoZSBkb21haW4NCihY RU4pIENQVSA1IGJvb3RlZC4NCihYRU4pIEJyaW5naW5nIHVwIENQVTYNCihYRU4pIEdJQ3YzOiBD UFU2OiBGb3VuZCByZWRpc3RyaWJ1dG9yIGluIHJlZ2lvbiA2IEAwMDAwMDAwMDQwMWJkMDAwDQoo WEVOKSBDUFU2OiBHdWVzdCBhdG9taWNzIHdpbGwgdHJ5IDI4IHRpbWVzIGJlZm9yZSBwYXVzaW5n IHRoZSBkb21haW4NCihYRU4pIENQVSA2IGJvb3RlZC4NCihYRU4pIEJyaW5naW5nIHVwIENQVTcN CihYRU4pIEdJQ3YzOiBDUFU3OiBGb3VuZCByZWRpc3RyaWJ1dG9yIGluIHJlZ2lvbiA3IEAwMDAw MDAwMDQwMWZlMDAwDQooWEVOKSBDUFU3OiBHdWVzdCBhdG9taWNzIHdpbGwgdHJ5IDI4IHRpbWVz IGJlZm9yZSBwYXVzaW5nIHRoZSBkb21haW4NCihYRU4pIENQVSA3IGJvb3RlZC4NCihYRU4pIEJy aW5naW5nIHVwIENQVTgNCihYRU4pIEdJQ3YzOiBDUFU4OiBGb3VuZCByZWRpc3RyaWJ1dG9yIGlu IHJlZ2lvbiA4IEAwMDAwMDAwMDQwMjNmMDAwDQooWEVOKSBDUFU4OiBHdWVzdCBhdG9taWNzIHdp bGwgdHJ5IDI4IHRpbWVzIGJlZm9yZSBwYXVzaW5nIHRoZSBkb21haW4NCihYRU4pIENQVSA4IGJv b3RlZC4NCihYRU4pIEJyaW5naW5nIHVwIENQVTkNCihYRU4pIEdJQ3YzOiBDUFU5OiBGb3VuZCBy ZWRpc3RyaWJ1dG9yIGluIHJlZ2lvbiA5IEAwMDAwMDAwMDQwMjgwMDAwDQooWEVOKSBDUFU5OiBH dWVzdCBhdG9taWNzIHdpbGwgdHJ5IDI4IHRpbWVzIGJlZm9yZSBwYXVzaW5nIHRoZSBkb21haW4N CihYRU4pIENQVSA5IGJvb3RlZC4NCihYRU4pIEJyaW5naW5nIHVwIENQVTEwDQooWEVOKSBHSUN2 MzogQ1BVMTA6IEZvdW5kIHJlZGlzdHJpYnV0b3IgaW4gcmVnaW9uIDEwIEAwMDAwMDAwMDQwMmMx MDAwDQooWEVOKSBDUFUxMDogR3Vlc3QgYXRvbWljcyB3aWxsIHRyeSAyOCB0aW1lcyBiZWZvcmUg cGF1c2luZyB0aGUgZG9tYWluDQooWEVOKSBDUFUgMTAgYm9vdGVkLg0KKFhFTikgQnJpbmdpbmcg dXAgQ1BVMTENCihYRU4pIEdJQ3YzOiBDUFUxMTogRm91bmQgcmVkaXN0cmlidXRvciBpbiByZWdp b24gMTEgQDAwMDAwMDAwNDAzMDIwMDANCihYRU4pIENQVTExOiBHdWVzdCBhdG9taWNzIHdpbGwg dHJ5IDI4IHRpbWVzIGJlZm9yZSBwYXVzaW5nIHRoZSBkb21haW4NCihYRU4pIENQVSAxMSBib290 ZWQuDQooWEVOKSBCcmluZ2luZyB1cCBDUFUxMg0KKFhFTikgR0lDdjM6IENQVTEyOiBGb3VuZCBy ZWRpc3RyaWJ1dG9yIGluIHJlZ2lvbiAxMiBAMDAwMDAwMDA0MDM0MzAwMA0KKFhFTikgQ1BVMTI6 IEd1ZXN0IGF0b21pY3Mgd2lsbCB0cnkgMjggdGltZXMgYmVmb3JlIHBhdXNpbmcgdGhlIGRvbWFp bg0KKFhFTikgQ1BVIDEyIGJvb3RlZC4NCihYRU4pIEJyaW5naW5nIHVwIENQVTEzDQooWEVOKSBH SUN2MzogQ1BVMTM6IEZvdW5kIHJlZGlzdHJpYnV0b3IgaW4gcmVnaW9uIDEzIEAwMDAwMDAwMDQw Mzg0MDAwDQooWEVOKSBDUFUxMzogR3Vlc3QgYXRvbWljcyB3aWxsIHRyeSAyOCB0aW1lcyBiZWZv cmUgcGF1c2luZyB0aGUgZG9tYWluDQooWEVOKSBDUFUgMTMgYm9vdGVkLg0KKFhFTikgQnJpbmdp bmcgdXAgQ1BVMTQNCihYRU4pIEdJQ3YzOiBDUFUxNDogRm91bmQgcmVkaXN0cmlidXRvciBpbiBy ZWdpb24gMTQgQDAwMDAwMDAwNDAzYzUwMDANCihYRU4pIENQVTE0OiBHdWVzdCBhdG9taWNzIHdp bGwgdHJ5IDI4IHRpbWVzIGJlZm9yZSBwYXVzaW5nIHRoZSBkb21haW4NCihYRU4pIENQVSAxNCBi b290ZWQuDQooWEVOKSBCcmluZ2luZyB1cCBDUFUxNQ0KKFhFTikgR0lDdjM6IENQVTE1OiBGb3Vu ZCByZWRpc3RyaWJ1dG9yIGluIHJlZ2lvbiAxNSBAMDAwMDAwMDA0MDQwNjAwMA0KKFhFTikgQ1BV MTU6IEd1ZXN0IGF0b21pY3Mgd2lsbCB0cnkgMjggdGltZXMgYmVmb3JlIHBhdXNpbmcgdGhlIGRv bWFpbg0KKFhFTikgQ1BVIDE1IGJvb3RlZC4NCihYRU4pIEJyaW5naW5nIHVwIENQVTE2DQooWEVO KSBHSUN2MzogQ1BVMTY6IEZvdW5kIHJlZGlzdHJpYnV0b3IgaW4gcmVnaW9uIDE2IEAwMDAwMDAw MDQwNDQ3MDAwDQooWEVOKSBDUFUxNjogR3Vlc3QgYXRvbWljcyB3aWxsIHRyeSAyOCB0aW1lcyBi ZWZvcmUgcGF1c2luZyB0aGUgZG9tYWluDQooWEVOKSBDUFUgMTYgYm9vdGVkLg0KKFhFTikgQnJp bmdpbmcgdXAgQ1BVMTcNCihYRU4pIEdJQ3YzOiBDUFUxNzogRm91bmQgcmVkaXN0cmlidXRvciBp biByZWdpb24gMTcgQDAwMDAwMDAwNDA0ODgwMDANCihYRU4pIENQVTE3OiBHdWVzdCBhdG9taWNz IHdpbGwgdHJ5IDI4IHRpbWVzIGJlZm9yZSBwYXVzaW5nIHRoZSBkb21haW4NCihYRU4pIENQVSAx NyBib290ZWQuDQooWEVOKSBCcmluZ2luZyB1cCBDUFUxOA0KKFhFTikgR0lDdjM6IENQVTE4OiBG b3VuZCByZWRpc3RyaWJ1dG9yIGluIHJlZ2lvbiAxOCBAMDAwMDAwMDA0MDRjOTAwMA0KKFhFTikg Q1BVMTg6IEd1ZXN0IGF0b21pY3Mgd2lsbCB0cnkgMjggdGltZXMgYmVmb3JlIHBhdXNpbmcgdGhl IGRvbWFpbg0KKFhFTikgQ1BVIDE4IGJvb3RlZC4NCihYRU4pIEJyaW5naW5nIHVwIENQVTE5DQoo WEVOKSBHSUN2MzogQ1BVMTk6IEZvdW5kIHJlZGlzdHJpYnV0b3IgaW4gcmVnaW9uIDE5IEAwMDAw MDAwMDQwNTBhMDAwDQooWEVOKSBDUFUxOTogR3Vlc3QgYXRvbWljcyB3aWxsIHRyeSAyOCB0aW1l cyBiZWZvcmUgcGF1c2luZyB0aGUgZG9tYWluDQooWEVOKSBDUFUgMTkgYm9vdGVkLg0KKFhFTikg QnJpbmdpbmcgdXAgQ1BVMjANCihYRU4pIEdJQ3YzOiBDUFUyMDogRm91bmQgcmVkaXN0cmlidXRv ciBpbiByZWdpb24gMjAgQDAwMDAwMDAwNDA1NGIwMDANCihYRU4pIENQVTIwOiBHdWVzdCBhdG9t aWNzIHdpbGwgdHJ5IDI4IHRpbWVzIGJlZm9yZSBwYXVzaW5nIHRoZSBkb21haW4NCihYRU4pIENQ VSAyMCBib290ZWQuDQooWEVOKSBCcmluZ2luZyB1cCBDUFUyMQ0KKFhFTikgR0lDdjM6IENQVTIx OiBGb3VuZCByZWRpc3RyaWJ1dG9yIGluIHJlZ2lvbiAyMSBAMDAwMDAwMDA0MDU4YzAwMA0KKFhF TikgQ1BVMjE6IEd1ZXN0IGF0b21pY3Mgd2lsbCB0cnkgMjggdGltZXMgYmVmb3JlIHBhdXNpbmcg dGhlIGRvbWFpbg0KKFhFTikgQ1BVIDIxIGJvb3RlZC4NCihYRU4pIEJyaW5naW5nIHVwIENQVTIy DQooWEVOKSBHSUN2MzogQ1BVMjI6IEZvdW5kIHJlZGlzdHJpYnV0b3IgaW4gcmVnaW9uIDIyIEAw MDAwMDAwMDQwNWNkMDAwDQooWEVOKSBDUFUyMjogR3Vlc3QgYXRvbWljcyB3aWxsIHRyeSAyOCB0 aW1lcyBiZWZvcmUgcGF1c2luZyB0aGUgZG9tYWluDQooWEVOKSBDUFUgMjIgYm9vdGVkLg0KKFhF TikgQnJpbmdpbmcgdXAgQ1BVMjMNCihYRU4pIEdJQ3YzOiBDUFUyMzogRm91bmQgcmVkaXN0cmli dXRvciBpbiByZWdpb24gMjMgQDAwMDAwMDAwNDA2MGUwMDANCihYRU4pIENQVTIzOiBHdWVzdCBh dG9taWNzIHdpbGwgdHJ5IDI4IHRpbWVzIGJlZm9yZSBwYXVzaW5nIHRoZSBkb21haW4NCihYRU4p IENQVSAyMyBib290ZWQuDQooWEVOKSBCcmluZ2luZyB1cCBDUFUyNA0KKFhFTikgR0lDdjM6IENQ VTI0OiBGb3VuZCByZWRpc3RyaWJ1dG9yIGluIHJlZ2lvbiAyNCBAMDAwMDAwMDA0MDY0ZjAwMA0K KFhFTikgQ1BVMjQ6IEd1ZXN0IGF0b21pY3Mgd2lsbCB0cnkgMjggdGltZXMgYmVmb3JlIHBhdXNp bmcgdGhlIGRvbWFpbg0KKFhFTikgQ1BVIDI0IGJvb3RlZC4NCihYRU4pIEJyaW5naW5nIHVwIENQ VTI1DQooWEVOKSBHSUN2MzogQ1BVMjU6IEZvdW5kIHJlZGlzdHJpYnV0b3IgaW4gcmVnaW9uIDI1 IEAwMDAwMDAwMDQwNjkwMDAwDQooWEVOKSBDUFUyNTogR3Vlc3QgYXRvbWljcyB3aWxsIHRyeSAy OCB0aW1lcyBiZWZvcmUgcGF1c2luZyB0aGUgZG9tYWluDQooWEVOKSBDUFUgMjUgYm9vdGVkLg0K KFhFTikgQnJpbmdpbmcgdXAgQ1BVMjYNCihYRU4pIEdJQ3YzOiBDUFUyNjogRm91bmQgcmVkaXN0 cmlidXRvciBpbiByZWdpb24gMjYgQDAwMDAwMDAwNDA2ZDEwMDANCihYRU4pIENQVTI2OiBHdWVz dCBhdG9taWNzIHdpbGwgdHJ5IDI4IHRpbWVzIGJlZm9yZSBwYXVzaW5nIHRoZSBkb21haW4NCihY RU4pIENQVSAyNiBib290ZWQuDQooWEVOKSBCcmluZ2luZyB1cCBDUFUyNw0KKFhFTikgR0lDdjM6 IENQVTI3OiBGb3VuZCByZWRpc3RyaWJ1dG9yIGluIHJlZ2lvbiAyNyBAMDAwMDAwMDA0MDcxMjAw MA0KKFhFTikgQ1BVMjc6IEd1ZXN0IGF0b21pY3Mgd2lsbCB0cnkgMjggdGltZXMgYmVmb3JlIHBh dXNpbmcgdGhlIGRvbWFpbg0KKFhFTikgQ1BVIDI3IGJvb3RlZC4NCihYRU4pIEJyaW5naW5nIHVw IENQVTI4DQooWEVOKSBHSUN2MzogQ1BVMjg6IEZvdW5kIHJlZGlzdHJpYnV0b3IgaW4gcmVnaW9u IDI4IEAwMDAwMDAwMDQwNzUzMDAwDQooWEVOKSBDUFUyODogR3Vlc3QgYXRvbWljcyB3aWxsIHRy eSAyOCB0aW1lcyBiZWZvcmUgcGF1c2luZyB0aGUgZG9tYWluDQooWEVOKSBDUFUgMjggYm9vdGVk Lg0KKFhFTikgQnJpbmdpbmcgdXAgQ1BVMjkNCihYRU4pIEdJQ3YzOiBDUFUyOTogRm91bmQgcmVk aXN0cmlidXRvciBpbiByZWdpb24gMjkgQDAwMDAwMDAwNDA3OTQwMDANCihYRU4pIENQVTI5OiBH dWVzdCBhdG9taWNzIHdpbGwgdHJ5IDI4IHRpbWVzIGJlZm9yZSBwYXVzaW5nIHRoZSBkb21haW4N CihYRU4pIENQVSAyOSBib290ZWQuDQooWEVOKSBCcmluZ2luZyB1cCBDUFUzMA0KKFhFTikgR0lD djM6IENQVTMwOiBGb3VuZCByZWRpc3RyaWJ1dG9yIGluIHJlZ2lvbiAzMCBAMDAwMDAwMDA0MDdk NTAwMA0KKFhFTikgQ1BVMzA6IEd1ZXN0IGF0b21pY3Mgd2lsbCB0cnkgMjggdGltZXMgYmVmb3Jl IHBhdXNpbmcgdGhlIGRvbWFpbg0KKFhFTikgQ1BVIDMwIGJvb3RlZC4NCihYRU4pIEJyaW5naW5n IHVwIENQVTMxDQooWEVOKSBHSUN2MzogQ1BVMzE6IEZvdW5kIHJlZGlzdHJpYnV0b3IgaW4gcmVn aW9uIDMxIEAwMDAwMDAwMDQwODE2MDAwDQooWEVOKSBDUFUzMTogR3Vlc3QgYXRvbWljcyB3aWxs IHRyeSAyOCB0aW1lcyBiZWZvcmUgcGF1c2luZyB0aGUgZG9tYWluDQooWEVOKSBDUFUgMzEgYm9v dGVkLg0KKFhFTikgQnJpbmdpbmcgdXAgQ1BVMzINCihYRU4pIEdJQ3YzOiBDUFUzMjogRm91bmQg cmVkaXN0cmlidXRvciBpbiByZWdpb24gMzIgQDAwMDAwMDAwNDA4NTcwMDANCihYRU4pIENQVTMy OiBHdWVzdCBhdG9taWNzIHdpbGwgdHJ5IDI4IHRpbWVzIGJlZm9yZSBwYXVzaW5nIHRoZSBkb21h aW4NCihYRU4pIENQVSAzMiBib290ZWQuDQooWEVOKSBCcmluZ2luZyB1cCBDUFUzMw0KKFhFTikg R0lDdjM6IENQVTMzOiBGb3VuZCByZWRpc3RyaWJ1dG9yIGluIHJlZ2lvbiAzMyBAMDAwMDAwMDA0 MDg5ODAwMA0KKFhFTikgQ1BVMzM6IEd1ZXN0IGF0b21pY3Mgd2lsbCB0cnkgMjggdGltZXMgYmVm b3JlIHBhdXNpbmcgdGhlIGRvbWFpbg0KKFhFTikgQ1BVIDMzIGJvb3RlZC4NCihYRU4pIEJyaW5n aW5nIHVwIENQVTM0DQooWEVOKSBHSUN2MzogQ1BVMzQ6IEZvdW5kIHJlZGlzdHJpYnV0b3IgaW4g cmVnaW9uIDM0IEAwMDAwMDAwMDQwOGQ5MDAwDQooWEVOKSBDUFUzNDogR3Vlc3QgYXRvbWljcyB3 aWxsIHRyeSAyOCB0aW1lcyBiZWZvcmUgcGF1c2luZyB0aGUgZG9tYWluDQooWEVOKSBDUFUgMzQg Ym9vdGVkLg0KKFhFTikgQnJpbmdpbmcgdXAgQ1BVMzUNCihYRU4pIEdJQ3YzOiBDUFUzNTogRm91 bmQgcmVkaXN0cmlidXRvciBpbiByZWdpb24gMzUgQDAwMDAwMDAwNDA5MWEwMDANCihYRU4pIENQ VTM1OiBHdWVzdCBhdG9taWNzIHdpbGwgdHJ5IDI4IHRpbWVzIGJlZm9yZSBwYXVzaW5nIHRoZSBk b21haW4NCihYRU4pIENQVSAzNSBib290ZWQuDQooWEVOKSBCcmluZ2luZyB1cCBDUFUzNg0KKFhF TikgR0lDdjM6IENQVTM2OiBGb3VuZCByZWRpc3RyaWJ1dG9yIGluIHJlZ2lvbiAzNiBAMDAwMDAw MDA0MDk1YjAwMA0KKFhFTikgQ1BVMzY6IEd1ZXN0IGF0b21pY3Mgd2lsbCB0cnkgMjggdGltZXMg YmVmb3JlIHBhdXNpbmcgdGhlIGRvbWFpbg0KKFhFTikgQ1BVIDM2IGJvb3RlZC4NCihYRU4pIEJy aW5naW5nIHVwIENQVTM3DQooWEVOKSBHSUN2MzogQ1BVMzc6IEZvdW5kIHJlZGlzdHJpYnV0b3Ig aW4gcmVnaW9uIDM3IEAwMDAwMDAwMDQwOTljMDAwDQooWEVOKSBDUFUzNzogR3Vlc3QgYXRvbWlj cyB3aWxsIHRyeSAyOCB0aW1lcyBiZWZvcmUgcGF1c2luZyB0aGUgZG9tYWluDQooWEVOKSBDUFUg MzcgYm9vdGVkLg0KKFhFTikgQnJpbmdpbmcgdXAgQ1BVMzgNCihYRU4pIEdJQ3YzOiBDUFUzODog Rm91bmQgcmVkaXN0cmlidXRvciBpbiByZWdpb24gMzggQDAwMDAwMDAwNDA5ZGQwMDANCihYRU4p IENQVTM4OiBHdWVzdCBhdG9taWNzIHdpbGwgdHJ5IDI4IHRpbWVzIGJlZm9yZSBwYXVzaW5nIHRo ZSBkb21haW4NCihYRU4pIENQVSAzOCBib290ZWQuDQooWEVOKSBCcmluZ2luZyB1cCBDUFUzOQ0K KFhFTikgR0lDdjM6IENQVTM5OiBGb3VuZCByZWRpc3RyaWJ1dG9yIGluIHJlZ2lvbiAzOSBAMDAw MDAwMDA0MGExZTAwMA0KKFhFTikgQ1BVMzk6IEd1ZXN0IGF0b21pY3Mgd2lsbCB0cnkgMjggdGlt ZXMgYmVmb3JlIHBhdXNpbmcgdGhlIGRvbWFpbg0KKFhFTikgQ1BVIDM5IGJvb3RlZC4NCihYRU4p IEJyaW5naW5nIHVwIENQVTQwDQooWEVOKSBHSUN2MzogQ1BVNDA6IEZvdW5kIHJlZGlzdHJpYnV0 b3IgaW4gcmVnaW9uIDQwIEAwMDAwMDAwMDQwYTVmMDAwDQooWEVOKSBDUFU0MDogR3Vlc3QgYXRv bWljcyB3aWxsIHRyeSAyOCB0aW1lcyBiZWZvcmUgcGF1c2luZyB0aGUgZG9tYWluDQooWEVOKSBD UFUgNDAgYm9vdGVkLg0KKFhFTikgQnJpbmdpbmcgdXAgQ1BVNDENCihYRU4pIEdJQ3YzOiBDUFU0 MTogRm91bmQgcmVkaXN0cmlidXRvciBpbiByZWdpb24gNDEgQDAwMDAwMDAwNDBhYTAwMDANCihY RU4pIENQVTQxOiBHdWVzdCBhdG9taWNzIHdpbGwgdHJ5IDI4IHRpbWVzIGJlZm9yZSBwYXVzaW5n IHRoZSBkb21haW4NCihYRU4pIENQVSA0MSBib290ZWQuDQooWEVOKSBCcmluZ2luZyB1cCBDUFU0 Mg0KKFhFTikgR0lDdjM6IENQVTQyOiBGb3VuZCByZWRpc3RyaWJ1dG9yIGluIHJlZ2lvbiA0MiBA MDAwMDAwMDA0MGFlMTAwMA0KKFhFTikgQ1BVNDI6IEd1ZXN0IGF0b21pY3Mgd2lsbCB0cnkgMjgg dGltZXMgYmVmb3JlIHBhdXNpbmcgdGhlIGRvbWFpbg0KKFhFTikgQ1BVIDQyIGJvb3RlZC4NCihY RU4pIEJyaW5naW5nIHVwIENQVTQzDQooWEVOKSBHSUN2MzogQ1BVNDM6IEZvdW5kIHJlZGlzdHJp YnV0b3IgaW4gcmVnaW9uIDQzIEAwMDAwMDAwMDQwYjIyMDAwDQooWEVOKSBDUFU0MzogR3Vlc3Qg YXRvbWljcyB3aWxsIHRyeSAyOCB0aW1lcyBiZWZvcmUgcGF1c2luZyB0aGUgZG9tYWluDQooWEVO KSBDUFUgNDMgYm9vdGVkLg0KKFhFTikgQnJpbmdpbmcgdXAgQ1BVNDQNCihYRU4pIEdJQ3YzOiBD UFU0NDogRm91bmQgcmVkaXN0cmlidXRvciBpbiByZWdpb24gNDQgQDAwMDAwMDAwNDBiNjMwMDAN CihYRU4pIENQVTQ0OiBHdWVzdCBhdG9taWNzIHdpbGwgdHJ5IDI4IHRpbWVzIGJlZm9yZSBwYXVz aW5nIHRoZSBkb21haW4NCihYRU4pIENQVSA0NCBib290ZWQuDQooWEVOKSBCcmluZ2luZyB1cCBD UFU0NQ0KKFhFTikgR0lDdjM6IENQVTQ1OiBGb3VuZCByZWRpc3RyaWJ1dG9yIGluIHJlZ2lvbiA0 NSBAMDAwMDAwMDA0MGJhNDAwMA0KKFhFTikgQ1BVNDU6IEd1ZXN0IGF0b21pY3Mgd2lsbCB0cnkg MjggdGltZXMgYmVmb3JlIHBhdXNpbmcgdGhlIGRvbWFpbg0KKFhFTikgQ1BVIDQ1IGJvb3RlZC4N CihYRU4pIEJyaW5naW5nIHVwIENQVTQ2DQooWEVOKSBHSUN2MzogQ1BVNDY6IEZvdW5kIHJlZGlz dHJpYnV0b3IgaW4gcmVnaW9uIDQ2IEAwMDAwMDAwMDQwYmU1MDAwDQooWEVOKSBDUFU0NjogR3Vl c3QgYXRvbWljcyB3aWxsIHRyeSAyOCB0aW1lcyBiZWZvcmUgcGF1c2luZyB0aGUgZG9tYWluDQoo WEVOKSBDUFUgNDYgYm9vdGVkLg0KKFhFTikgQnJpbmdpbmcgdXAgQ1BVNDcNCihYRU4pIEdJQ3Yz OiBDUFU0NzogRm91bmQgcmVkaXN0cmlidXRvciBpbiByZWdpb24gNDcgQDAwMDAwMDAwNDBjMjYw MDANCihYRU4pIENQVTQ3OiBHdWVzdCBhdG9taWNzIHdpbGwgdHJ5IDI4IHRpbWVzIGJlZm9yZSBw YXVzaW5nIHRoZSBkb21haW4NCihYRU4pIENQVSA0NyBib290ZWQuDQooWEVOKSBCcmluZ2luZyB1 cCBDUFU0OA0KKFhFTikgR0lDdjM6IENQVTQ4OiBGb3VuZCByZWRpc3RyaWJ1dG9yIGluIHJlZ2lv biA0OCBAMDAwMDAwMDA0MGM2NzAwMA0KKFhFTikgQ1BVNDg6IEd1ZXN0IGF0b21pY3Mgd2lsbCB0 cnkgMjggdGltZXMgYmVmb3JlIHBhdXNpbmcgdGhlIGRvbWFpbg0KKFhFTikgQ1BVIDQ4IGJvb3Rl ZC4NCihYRU4pIEJyaW5naW5nIHVwIENQVTQ5DQooWEVOKSBHSUN2MzogQ1BVNDk6IEZvdW5kIHJl ZGlzdHJpYnV0b3IgaW4gcmVnaW9uIDQ5IEAwMDAwMDAwMDQwY2E4MDAwDQooWEVOKSBDUFU0OTog R3Vlc3QgYXRvbWljcyB3aWxsIHRyeSAyOCB0aW1lcyBiZWZvcmUgcGF1c2luZyB0aGUgZG9tYWlu DQooWEVOKSBDUFUgNDkgYm9vdGVkLg0KKFhFTikgQnJpbmdpbmcgdXAgQ1BVNTANCihYRU4pIEdJ Q3YzOiBDUFU1MDogRm91bmQgcmVkaXN0cmlidXRvciBpbiByZWdpb24gNTAgQDAwMDAwMDAwNDBj ZTkwMDANCihYRU4pIENQVTUwOiBHdWVzdCBhdG9taWNzIHdpbGwgdHJ5IDI4IHRpbWVzIGJlZm9y ZSBwYXVzaW5nIHRoZSBkb21haW4NCihYRU4pIENQVSA1MCBib290ZWQuDQooWEVOKSBCcmluZ2lu ZyB1cCBDUFU1MQ0KKFhFTikgR0lDdjM6IENQVTUxOiBGb3VuZCByZWRpc3RyaWJ1dG9yIGluIHJl Z2lvbiA1MSBAMDAwMDAwMDA0MGQyYTAwMA0KKFhFTikgQ1BVNTE6IEd1ZXN0IGF0b21pY3Mgd2ls bCB0cnkgMjggdGltZXMgYmVmb3JlIHBhdXNpbmcgdGhlIGRvbWFpbg0KKFhFTikgQ1BVIDUxIGJv b3RlZC4NCihYRU4pIEJyaW5naW5nIHVwIENQVTUyDQooWEVOKSBHSUN2MzogQ1BVNTI6IEZvdW5k IHJlZGlzdHJpYnV0b3IgaW4gcmVnaW9uIDUyIEAwMDAwMDAwMDQwZDZiMDAwDQooWEVOKSBDUFU1 MjogR3Vlc3QgYXRvbWljcyB3aWxsIHRyeSAyOCB0aW1lcyBiZWZvcmUgcGF1c2luZyB0aGUgZG9t YWluDQooWEVOKSBDUFUgNTIgYm9vdGVkLg0KKFhFTikgQnJpbmdpbmcgdXAgQ1BVNTMNCihYRU4p IEdJQ3YzOiBDUFU1MzogRm91bmQgcmVkaXN0cmlidXRvciBpbiByZWdpb24gNTMgQDAwMDAwMDAw NDBkYWMwMDANCihYRU4pIENQVTUzOiBHdWVzdCBhdG9taWNzIHdpbGwgdHJ5IDI4IHRpbWVzIGJl Zm9yZSBwYXVzaW5nIHRoZSBkb21haW4NCihYRU4pIENQVSA1MyBib290ZWQuDQooWEVOKSBCcmlu Z2luZyB1cCBDUFU1NA0KKFhFTikgR0lDdjM6IENQVTU0OiBGb3VuZCByZWRpc3RyaWJ1dG9yIGlu IHJlZ2lvbiA1NCBAMDAwMDAwMDA0MGRlZDAwMA0KKFhFTikgQ1BVNTQ6IEd1ZXN0IGF0b21pY3Mg d2lsbCB0cnkgMjggdGltZXMgYmVmb3JlIHBhdXNpbmcgdGhlIGRvbWFpbg0KKFhFTikgQ1BVIDU0 IGJvb3RlZC4NCihYRU4pIEJyaW5naW5nIHVwIENQVTU1DQooWEVOKSBHSUN2MzogQ1BVNTU6IEZv dW5kIHJlZGlzdHJpYnV0b3IgaW4gcmVnaW9uIDU1IEAwMDAwMDAwMDQwZTJlMDAwDQooWEVOKSBD UFU1NTogR3Vlc3QgYXRvbWljcyB3aWxsIHRyeSAyOCB0aW1lcyBiZWZvcmUgcGF1c2luZyB0aGUg ZG9tYWluDQooWEVOKSBDUFUgNTUgYm9vdGVkLg0KKFhFTikgQnJpbmdpbmcgdXAgQ1BVNTYNCihY RU4pIEdJQ3YzOiBDUFU1NjogRm91bmQgcmVkaXN0cmlidXRvciBpbiByZWdpb24gNTYgQDAwMDAw MDAwNDBlNmYwMDANCihYRU4pIENQVTU2OiBHdWVzdCBhdG9taWNzIHdpbGwgdHJ5IDI4IHRpbWVz IGJlZm9yZSBwYXVzaW5nIHRoZSBkb21haW4NCihYRU4pIENQVSA1NiBib290ZWQuDQooWEVOKSBC cmluZ2luZyB1cCBDUFU1Nw0KKFhFTikgR0lDdjM6IENQVTU3OiBGb3VuZCByZWRpc3RyaWJ1dG9y IGluIHJlZ2lvbiA1NyBAMDAwMDAwMDA0MGViMDAwMA0KKFhFTikgQ1BVNTc6IEd1ZXN0IGF0b21p Y3Mgd2lsbCB0cnkgMjggdGltZXMgYmVmb3JlIHBhdXNpbmcgdGhlIGRvbWFpbg0KKFhFTikgQ1BV IDU3IGJvb3RlZC4NCihYRU4pIEJyaW5naW5nIHVwIENQVTU4DQooWEVOKSBHSUN2MzogQ1BVNTg6 IEZvdW5kIHJlZGlzdHJpYnV0b3IgaW4gcmVnaW9uIDU4IEAwMDAwMDAwMDQwZWYxMDAwDQooWEVO KSBDUFU1ODogR3Vlc3QgYXRvbWljcyB3aWxsIHRyeSAyOCB0aW1lcyBiZWZvcmUgcGF1c2luZyB0 aGUgZG9tYWluDQooWEVOKSBDUFUgNTggYm9vdGVkLg0KKFhFTikgQnJpbmdpbmcgdXAgQ1BVNTkN CihYRU4pIEdJQ3YzOiBDUFU1OTogRm91bmQgcmVkaXN0cmlidXRvciBpbiByZWdpb24gNTkgQDAw MDAwMDAwNDBmMzIwMDANCihYRU4pIENQVTU5OiBHdWVzdCBhdG9taWNzIHdpbGwgdHJ5IDI4IHRp bWVzIGJlZm9yZSBwYXVzaW5nIHRoZSBkb21haW4NCihYRU4pIENQVSA1OSBib290ZWQuDQooWEVO KSBCcmluZ2luZyB1cCBDUFU2MA0KKFhFTikgR0lDdjM6IENQVTYwOiBGb3VuZCByZWRpc3RyaWJ1 dG9yIGluIHJlZ2lvbiA2MCBAMDAwMDAwMDA0MGY3MzAwMA0KKFhFTikgQ1BVNjA6IEd1ZXN0IGF0 b21pY3Mgd2lsbCB0cnkgMjggdGltZXMgYmVmb3JlIHBhdXNpbmcgdGhlIGRvbWFpbg0KKFhFTikg Q1BVIDYwIGJvb3RlZC4NCihYRU4pIEJyaW5naW5nIHVwIENQVTYxDQooWEVOKSBHSUN2MzogQ1BV NjE6IEZvdW5kIHJlZGlzdHJpYnV0b3IgaW4gcmVnaW9uIDYxIEAwMDAwMDAwMDQwZmI0MDAwDQoo WEVOKSBDUFU2MTogR3Vlc3QgYXRvbWljcyB3aWxsIHRyeSAyOCB0aW1lcyBiZWZvcmUgcGF1c2lu ZyB0aGUgZG9tYWluDQooWEVOKSBDUFUgNjEgYm9vdGVkLg0KKFhFTikgQnJpbmdpbmcgdXAgQ1BV NjINCihYRU4pIEdJQ3YzOiBDUFU2MjogRm91bmQgcmVkaXN0cmlidXRvciBpbiByZWdpb24gNjIg QDAwMDAwMDAwNDBmZjUwMDANCihYRU4pIENQVTYyOiBHdWVzdCBhdG9taWNzIHdpbGwgdHJ5IDI4 IHRpbWVzIGJlZm9yZSBwYXVzaW5nIHRoZSBkb21haW4NCihYRU4pIENQVSA2MiBib290ZWQuDQoo WEVOKSBCcmluZ2luZyB1cCBDUFU2Mw0KKFhFTikgR0lDdjM6IENQVTYzOiBGb3VuZCByZWRpc3Ry aWJ1dG9yIGluIHJlZ2lvbiA2MyBAMDAwMDAwMDA0MTAzNjAwMA0KKFhFTikgQ1BVNjM6IEd1ZXN0 IGF0b21pY3Mgd2lsbCB0cnkgMjggdGltZXMgYmVmb3JlIHBhdXNpbmcgdGhlIGRvbWFpbg0KKFhF TikgQ1BVIDYzIGJvb3RlZC4NCihYRU4pIEJyaW5naW5nIHVwIENQVTY0DQooWEVOKSBHSUN2Mzog Q1BVNjQ6IEZvdW5kIHJlZGlzdHJpYnV0b3IgaW4gcmVnaW9uIDY0IEAwMDAwMDAwMDQxMDc3MDAw DQooWEVOKSBDUFU2NDogR3Vlc3QgYXRvbWljcyB3aWxsIHRyeSAyOCB0aW1lcyBiZWZvcmUgcGF1 c2luZyB0aGUgZG9tYWluDQooWEVOKSBDUFUgNjQgYm9vdGVkLg0KKFhFTikgQnJpbmdpbmcgdXAg Q1BVNjUNCihYRU4pIEdJQ3YzOiBDUFU2NTogRm91bmQgcmVkaXN0cmlidXRvciBpbiByZWdpb24g NjUgQDAwMDAwMDAwNDEwYjgwMDANCihYRU4pIENQVTY1OiBHdWVzdCBhdG9taWNzIHdpbGwgdHJ5 IDI4IHRpbWVzIGJlZm9yZSBwYXVzaW5nIHRoZSBkb21haW4NCihYRU4pIENQVSA2NSBib290ZWQu DQooWEVOKSBCcmluZ2luZyB1cCBDUFU2Ng0KKFhFTikgR0lDdjM6IENQVTY2OiBGb3VuZCByZWRp c3RyaWJ1dG9yIGluIHJlZ2lvbiA2NiBAMDAwMDAwMDA0MTBmOTAwMA0KKFhFTikgQ1BVNjY6IEd1 ZXN0IGF0b21pY3Mgd2lsbCB0cnkgMjggdGltZXMgYmVmb3JlIHBhdXNpbmcgdGhlIGRvbWFpbg0K KFhFTikgQ1BVIDY2IGJvb3RlZC4NCihYRU4pIEJyaW5naW5nIHVwIENQVTY3DQooWEVOKSBHSUN2 MzogQ1BVNjc6IEZvdW5kIHJlZGlzdHJpYnV0b3IgaW4gcmVnaW9uIDY3IEAwMDAwMDAwMDQxMTNh MDAwDQooWEVOKSBDUFU2NzogR3Vlc3QgYXRvbWljcyB3aWxsIHRyeSAyOCB0aW1lcyBiZWZvcmUg cGF1c2luZyB0aGUgZG9tYWluDQooWEVOKSBDUFUgNjcgYm9vdGVkLg0KKFhFTikgQnJpbmdpbmcg dXAgQ1BVNjgNCihYRU4pIEdJQ3YzOiBDUFU2ODogRm91bmQgcmVkaXN0cmlidXRvciBpbiByZWdp b24gNjggQDAwMDAwMDAwNDExN2IwMDANCihYRU4pIENQVTY4OiBHdWVzdCBhdG9taWNzIHdpbGwg dHJ5IDI4IHRpbWVzIGJlZm9yZSBwYXVzaW5nIHRoZSBkb21haW4NCihYRU4pIENQVSA2OCBib290 ZWQuDQooWEVOKSBCcmluZ2luZyB1cCBDUFU2OQ0KKFhFTikgR0lDdjM6IENQVTY5OiBGb3VuZCBy ZWRpc3RyaWJ1dG9yIGluIHJlZ2lvbiA2OSBAMDAwMDAwMDA0MTFiYzAwMA0KKFhFTikgQ1BVNjk6 IEd1ZXN0IGF0b21pY3Mgd2lsbCB0cnkgMjggdGltZXMgYmVmb3JlIHBhdXNpbmcgdGhlIGRvbWFp bg0KKFhFTikgQ1BVIDY5IGJvb3RlZC4NCihYRU4pIEJyaW5naW5nIHVwIENQVTcwDQooWEVOKSBH SUN2MzogQ1BVNzA6IEZvdW5kIHJlZGlzdHJpYnV0b3IgaW4gcmVnaW9uIDcwIEAwMDAwMDAwMDQx MWZkMDAwDQooWEVOKSBDUFU3MDogR3Vlc3QgYXRvbWljcyB3aWxsIHRyeSAyOCB0aW1lcyBiZWZv cmUgcGF1c2luZyB0aGUgZG9tYWluDQooWEVOKSBDUFUgNzAgYm9vdGVkLg0KKFhFTikgQnJpbmdp bmcgdXAgQ1BVNzENCihYRU4pIEdJQ3YzOiBDUFU3MTogRm91bmQgcmVkaXN0cmlidXRvciBpbiBy ZWdpb24gNzEgQDAwMDAwMDAwNDEyM2UwMDANCihYRU4pIENQVTcxOiBHdWVzdCBhdG9taWNzIHdp bGwgdHJ5IDI4IHRpbWVzIGJlZm9yZSBwYXVzaW5nIHRoZSBkb21haW4NCihYRU4pIENQVSA3MSBi b290ZWQuDQooWEVOKSBCcmluZ2luZyB1cCBDUFU3Mg0KKFhFTikgR0lDdjM6IENQVTcyOiBGb3Vu ZCByZWRpc3RyaWJ1dG9yIGluIHJlZ2lvbiA3MiBAMDAwMDAwMDA0MTI3ZjAwMA0KKFhFTikgQ1BV NzI6IEd1ZXN0IGF0b21pY3Mgd2lsbCB0cnkgMjggdGltZXMgYmVmb3JlIHBhdXNpbmcgdGhlIGRv bWFpbg0KKFhFTikgQ1BVIDcyIGJvb3RlZC4NCihYRU4pIEJyaW5naW5nIHVwIENQVTczDQooWEVO KSBHSUN2MzogQ1BVNzM6IEZvdW5kIHJlZGlzdHJpYnV0b3IgaW4gcmVnaW9uIDczIEAwMDAwMDAw MDQxMmMwMDAwDQooWEVOKSBDUFU3MzogR3Vlc3QgYXRvbWljcyB3aWxsIHRyeSAyOCB0aW1lcyBi ZWZvcmUgcGF1c2luZyB0aGUgZG9tYWluDQooWEVOKSBDUFUgNzMgYm9vdGVkLg0KKFhFTikgQnJp bmdpbmcgdXAgQ1BVNzQNCihYRU4pIEdJQ3YzOiBDUFU3NDogRm91bmQgcmVkaXN0cmlidXRvciBp biByZWdpb24gNzQgQDAwMDAwMDAwNDEzMDEwMDANCihYRU4pIENQVTc0OiBHdWVzdCBhdG9taWNz IHdpbGwgdHJ5IDI4IHRpbWVzIGJlZm9yZSBwYXVzaW5nIHRoZSBkb21haW4NCihYRU4pIENQVSA3 NCBib290ZWQuDQooWEVOKSBCcmluZ2luZyB1cCBDUFU3NQ0KKFhFTikgR0lDdjM6IENQVTc1OiBG b3VuZCByZWRpc3RyaWJ1dG9yIGluIHJlZ2lvbiA3NSBAMDAwMDAwMDA0MTM0MjAwMA0KKFhFTikg Q1BVNzU6IEd1ZXN0IGF0b21pY3Mgd2lsbCB0cnkgMjggdGltZXMgYmVmb3JlIHBhdXNpbmcgdGhl IGRvbWFpbg0KKFhFTikgQ1BVIDc1IGJvb3RlZC4NCihYRU4pIEJyaW5naW5nIHVwIENQVTc2DQoo WEVOKSBHSUN2MzogQ1BVNzY6IEZvdW5kIHJlZGlzdHJpYnV0b3IgaW4gcmVnaW9uIDc2IEAwMDAw MDAwMDQxMzgzMDAwDQooWEVOKSBDUFU3NjogR3Vlc3QgYXRvbWljcyB3aWxsIHRyeSAyOCB0aW1l cyBiZWZvcmUgcGF1c2luZyB0aGUgZG9tYWluDQooWEVOKSBDUFUgNzYgYm9vdGVkLg0KKFhFTikg QnJpbmdpbmcgdXAgQ1BVNzcNCihYRU4pIEdJQ3YzOiBDUFU3NzogRm91bmQgcmVkaXN0cmlidXRv ciBpbiByZWdpb24gNzcgQDAwMDAwMDAwNDEzYzQwMDANCihYRU4pIENQVTc3OiBHdWVzdCBhdG9t aWNzIHdpbGwgdHJ5IDI4IHRpbWVzIGJlZm9yZSBwYXVzaW5nIHRoZSBkb21haW4NCihYRU4pIENQ VSA3NyBib290ZWQuDQooWEVOKSBCcmluZ2luZyB1cCBDUFU3OA0KKFhFTikgR0lDdjM6IENQVTc4 OiBGb3VuZCByZWRpc3RyaWJ1dG9yIGluIHJlZ2lvbiA3OCBAMDAwMDAwMDA0MTQwNTAwMA0KKFhF TikgQ1BVNzg6IEd1ZXN0IGF0b21pY3Mgd2lsbCB0cnkgMjggdGltZXMgYmVmb3JlIHBhdXNpbmcg dGhlIGRvbWFpbg0KKFhFTikgQ1BVIDc4IGJvb3RlZC4NCihYRU4pIEJyaW5naW5nIHVwIENQVTc5 DQooWEVOKSBHSUN2MzogQ1BVNzk6IEZvdW5kIHJlZGlzdHJpYnV0b3IgaW4gcmVnaW9uIDc5IEAw MDAwMDAwMDQxNDQ2MDAwDQooWEVOKSBDUFU3OTogR3Vlc3QgYXRvbWljcyB3aWxsIHRyeSAyOCB0 aW1lcyBiZWZvcmUgcGF1c2luZyB0aGUgZG9tYWluDQooWEVOKSBDUFUgNzkgYm9vdGVkLg0KKFhF TikgQnJpbmdpbmcgdXAgQ1BVODANCihYRU4pIEdJQ3YzOiBDUFU4MDogRm91bmQgcmVkaXN0cmli dXRvciBpbiByZWdpb24gODAgQDAwMDAwMDAwNDE0ODcwMDANCihYRU4pIENQVTgwOiBHdWVzdCBh dG9taWNzIHdpbGwgdHJ5IDI4IHRpbWVzIGJlZm9yZSBwYXVzaW5nIHRoZSBkb21haW4NCihYRU4p IENQVSA4MCBib290ZWQuDQooWEVOKSBCcmluZ2luZyB1cCBDUFU4MQ0KKFhFTikgR0lDdjM6IENQ VTgxOiBGb3VuZCByZWRpc3RyaWJ1dG9yIGluIHJlZ2lvbiA4MSBAMDAwMDAwMDA0MTRjODAwMA0K KFhFTikgQ1BVODE6IEd1ZXN0IGF0b21pY3Mgd2lsbCB0cnkgMjggdGltZXMgYmVmb3JlIHBhdXNp bmcgdGhlIGRvbWFpbg0KKFhFTikgQ1BVIDgxIGJvb3RlZC4NCihYRU4pIEJyaW5naW5nIHVwIENQ VTgyDQooWEVOKSBHSUN2MzogQ1BVODI6IEZvdW5kIHJlZGlzdHJpYnV0b3IgaW4gcmVnaW9uIDgy IEAwMDAwMDAwMDQxNTA5MDAwDQooWEVOKSBDUFU4MjogR3Vlc3QgYXRvbWljcyB3aWxsIHRyeSAy OCB0aW1lcyBiZWZvcmUgcGF1c2luZyB0aGUgZG9tYWluDQooWEVOKSBDUFUgODIgYm9vdGVkLg0K KFhFTikgQnJpbmdpbmcgdXAgQ1BVODMNCihYRU4pIEdJQ3YzOiBDUFU4MzogRm91bmQgcmVkaXN0 cmlidXRvciBpbiByZWdpb24gODMgQDAwMDAwMDAwNDE1NGEwMDANCihYRU4pIENQVTgzOiBHdWVz dCBhdG9taWNzIHdpbGwgdHJ5IDI4IHRpbWVzIGJlZm9yZSBwYXVzaW5nIHRoZSBkb21haW4NCihY RU4pIENQVSA4MyBib290ZWQuDQooWEVOKSBCcmluZ2luZyB1cCBDUFU4NA0KKFhFTikgR0lDdjM6 IENQVTg0OiBGb3VuZCByZWRpc3RyaWJ1dG9yIGluIHJlZ2lvbiA4NCBAMDAwMDAwMDA0MTU4YjAw MA0KKFhFTikgQ1BVODQ6IEd1ZXN0IGF0b21pY3Mgd2lsbCB0cnkgMjggdGltZXMgYmVmb3JlIHBh dXNpbmcgdGhlIGRvbWFpbg0KKFhFTikgQ1BVIDg0IGJvb3RlZC4NCihYRU4pIEJyaW5naW5nIHVw IENQVTg1DQooWEVOKSBHSUN2MzogQ1BVODU6IEZvdW5kIHJlZGlzdHJpYnV0b3IgaW4gcmVnaW9u IDg1IEAwMDAwMDAwMDQxNWNjMDAwDQooWEVOKSBDUFU4NTogR3Vlc3QgYXRvbWljcyB3aWxsIHRy eSAyOCB0aW1lcyBiZWZvcmUgcGF1c2luZyB0aGUgZG9tYWluDQooWEVOKSBDUFUgODUgYm9vdGVk Lg0KKFhFTikgQnJpbmdpbmcgdXAgQ1BVODYNCihYRU4pIEdJQ3YzOiBDUFU4NjogRm91bmQgcmVk aXN0cmlidXRvciBpbiByZWdpb24gODYgQDAwMDAwMDAwNDE2MGQwMDANCihYRU4pIENQVTg2OiBH dWVzdCBhdG9taWNzIHdpbGwgdHJ5IDI4IHRpbWVzIGJlZm9yZSBwYXVzaW5nIHRoZSBkb21haW4N CihYRU4pIENQVSA4NiBib290ZWQuDQooWEVOKSBCcmluZ2luZyB1cCBDUFU4Nw0KKFhFTikgR0lD djM6IENQVTg3OiBGb3VuZCByZWRpc3RyaWJ1dG9yIGluIHJlZ2lvbiA4NyBAMDAwMDAwMDA0MTY0 ZTAwMA0KKFhFTikgQ1BVODc6IEd1ZXN0IGF0b21pY3Mgd2lsbCB0cnkgMjggdGltZXMgYmVmb3Jl IHBhdXNpbmcgdGhlIGRvbWFpbg0KKFhFTikgQ1BVIDg3IGJvb3RlZC4NCihYRU4pIEJyaW5naW5n IHVwIENQVTg4DQooWEVOKSBHSUN2MzogQ1BVODg6IEZvdW5kIHJlZGlzdHJpYnV0b3IgaW4gcmVn aW9uIDg4IEAwMDAwMDAwMDQxNjhmMDAwDQooWEVOKSBDUFU4ODogR3Vlc3QgYXRvbWljcyB3aWxs IHRyeSAyOCB0aW1lcyBiZWZvcmUgcGF1c2luZyB0aGUgZG9tYWluDQooWEVOKSBDUFUgODggYm9v dGVkLg0KKFhFTikgQnJpbmdpbmcgdXAgQ1BVODkNCihYRU4pIEdJQ3YzOiBDUFU4OTogRm91bmQg cmVkaXN0cmlidXRvciBpbiByZWdpb24gODkgQDAwMDAwMDAwNDE2ZDAwMDANCihYRU4pIENQVTg5 OiBHdWVzdCBhdG9taWNzIHdpbGwgdHJ5IDI4IHRpbWVzIGJlZm9yZSBwYXVzaW5nIHRoZSBkb21h aW4NCihYRU4pIENQVSA4OSBib290ZWQuDQooWEVOKSBCcmluZ2luZyB1cCBDUFU5MA0KKFhFTikg R0lDdjM6IENQVTkwOiBGb3VuZCByZWRpc3RyaWJ1dG9yIGluIHJlZ2lvbiA5MCBAMDAwMDAwMDA0 MTcxMTAwMA0KKFhFTikgQ1BVOTA6IEd1ZXN0IGF0b21pY3Mgd2lsbCB0cnkgMjggdGltZXMgYmVm b3JlIHBhdXNpbmcgdGhlIGRvbWFpbg0KKFhFTikgQ1BVIDkwIGJvb3RlZC4NCihYRU4pIEJyaW5n aW5nIHVwIENQVTkxDQooWEVOKSBHSUN2MzogQ1BVOTE6IEZvdW5kIHJlZGlzdHJpYnV0b3IgaW4g cmVnaW9uIDkxIEAwMDAwMDAwMDQxNzUyMDAwDQooWEVOKSBDUFU5MTogR3Vlc3QgYXRvbWljcyB3 aWxsIHRyeSAyOCB0aW1lcyBiZWZvcmUgcGF1c2luZyB0aGUgZG9tYWluDQooWEVOKSBDUFUgOTEg Ym9vdGVkLg0KKFhFTikgQnJpbmdpbmcgdXAgQ1BVOTINCihYRU4pIEdJQ3YzOiBDUFU5MjogRm91 bmQgcmVkaXN0cmlidXRvciBpbiByZWdpb24gOTIgQDAwMDAwMDAwNDE3OTMwMDANCihYRU4pIENQ VTkyOiBHdWVzdCBhdG9taWNzIHdpbGwgdHJ5IDI4IHRpbWVzIGJlZm9yZSBwYXVzaW5nIHRoZSBk b21haW4NCihYRU4pIENQVSA5MiBib290ZWQuDQooWEVOKSBCcmluZ2luZyB1cCBDUFU5Mw0KKFhF TikgR0lDdjM6IENQVTkzOiBGb3VuZCByZWRpc3RyaWJ1dG9yIGluIHJlZ2lvbiA5MyBAMDAwMDAw MDA0MTdkNDAwMA0KKFhFTikgQ1BVOTM6IEd1ZXN0IGF0b21pY3Mgd2lsbCB0cnkgMjggdGltZXMg YmVmb3JlIHBhdXNpbmcgdGhlIGRvbWFpbg0KKFhFTikgQ1BVIDkzIGJvb3RlZC4NCihYRU4pIEJy aW5naW5nIHVwIENQVTk0DQooWEVOKSBHSUN2MzogQ1BVOTQ6IEZvdW5kIHJlZGlzdHJpYnV0b3Ig aW4gcmVnaW9uIDk0IEAwMDAwMDAwMDQxODE1MDAwDQooWEVOKSBDUFU5NDogR3Vlc3QgYXRvbWlj cyB3aWxsIHRyeSAyOCB0aW1lcyBiZWZvcmUgcGF1c2luZyB0aGUgZG9tYWluDQooWEVOKSBDUFUg OTQgYm9vdGVkLg0KKFhFTikgQnJpbmdpbmcgdXAgQ1BVOTUNCihYRU4pIEdJQ3YzOiBDUFU5NTog Rm91bmQgcmVkaXN0cmlidXRvciBpbiByZWdpb24gOTUgQDAwMDAwMDAwNDE4NTYwMDANCihYRU4p IENQVTk1OiBHdWVzdCBhdG9taWNzIHdpbGwgdHJ5IDI4IHRpbWVzIGJlZm9yZSBwYXVzaW5nIHRo ZSBkb21haW4NCihYRU4pIEJyb3VnaHQgdXAgOTYgQ1BVcw0KKFhFTikgSS9PIHZpcnR1YWxpc2F0 aW9uIGRpc2FibGVkDQooWEVOKSBQMk06IDQ4LWJpdCBJUEEgd2l0aCA0OC1iaXQgUEEgYW5kIDE2 LWJpdCBWTUlEDQooWEVOKSBDUFUgOTUgYm9vdGVkLg0KKFhFTikgUDJNOiA0IGxldmVscyB3aXRo IG9yZGVyLTAgcm9vdCwgVlRDUiAweDAwMDAwMDAwODAwZDM1OTANCihYRU4pIFNjaGVkdWxpbmcg Z3JhbnVsYXJpdHk6IGNwdSwgMSBDUFUgcGVyIHNjaGVkLXJlc291cmNlDQooWEVOKSBJbml0aWFs aXppbmcgQ3JlZGl0MiBzY2hlZHVsZXINCihYRU4pICBsb2FkX3ByZWNpc2lvbl9zaGlmdDogMTgN CihYRU4pICBsb2FkX3dpbmRvd19zaGlmdDogMzANCihYRU4pICB1bmRlcmxvYWRfYmFsYW5jZV90 b2xlcmFuY2U6IDANCihYRU4pICBvdmVybG9hZF9iYWxhbmNlX3RvbGVyYW5jZTogLTMNCihYRU4p ICBydW5xdWV1ZXMgYXJyYW5nZW1lbnQ6IHNvY2tldA0KKFhFTikgIGNhcCBlbmZvcmNlbWVudCBn cmFudWxhcml0eTogMTBtcw0KKFhFTikgbG9hZCB0cmFja2luZyB3aW5kb3cgbGVuZ3RoIDEwNzM3 NDE4MjQgbnMNCihYRU4pIEFkZGluZyBjcHUgMCB0byBydW5xdWV1ZSAwDQooWEVOKSAgRmlyc3Qg Y3B1IG9uIHJ1bnF1ZXVlLCBhY3RpdmF0aW5nDQooWEVOKSBBZGRpbmcgY3B1IDEgdG8gcnVucXVl dWUgMA0KKFhFTikgQWRkaW5nIGNwdSAyIHRvIHJ1bnF1ZXVlIDANCihYRU4pIEFkZGluZyBjcHUg MyB0byBydW5xdWV1ZSAwDQooWEVOKSBBZGRpbmcgY3B1IDQgdG8gcnVucXVldWUgMA0KKFhFTikg QWRkaW5nIGNwdSA1IHRvIHJ1bnF1ZXVlIDANCihYRU4pIEFkZGluZyBjcHUgNiB0byBydW5xdWV1 ZSAwDQooWEVOKSBBZGRpbmcgY3B1IDcgdG8gcnVucXVldWUgMA0KKFhFTikgQWRkaW5nIGNwdSA4 IHRvIHJ1bnF1ZXVlIDANCihYRU4pIEFkZGluZyBjcHUgOSB0byBydW5xdWV1ZSAwDQooWEVOKSBB ZGRpbmcgY3B1IDEwIHRvIHJ1bnF1ZXVlIDANCihYRU4pIEFkZGluZyBjcHUgMTEgdG8gcnVucXVl dWUgMA0KKFhFTikgQWRkaW5nIGNwdSAxMiB0byBydW5xdWV1ZSAwDQooWEVOKSBBZGRpbmcgY3B1 IDEzIHRvIHJ1bnF1ZXVlIDANCihYRU4pIEFkZGluZyBjcHUgMTQgdG8gcnVucXVldWUgMA0KKFhF TikgQWRkaW5nIGNwdSAxNSB0byBydW5xdWV1ZSAwDQooWEVOKSBBZGRpbmcgY3B1IDE2IHRvIHJ1 bnF1ZXVlIDENCihYRU4pICBGaXJzdCBjcHUgb24gcnVucXVldWUsIGFjdGl2YXRpbmcNCihYRU4p IEFkZGluZyBjcHUgMTcgdG8gcnVucXVldWUgMQ0KKFhFTikgQWRkaW5nIGNwdSAxOCB0byBydW5x dWV1ZSAxDQooWEVOKSBBZGRpbmcgY3B1IDE5IHRvIHJ1bnF1ZXVlIDENCihYRU4pIEFkZGluZyBj cHUgMjAgdG8gcnVucXVldWUgMQ0KKFhFTikgQWRkaW5nIGNwdSAyMSB0byBydW5xdWV1ZSAxDQoo WEVOKSBBZGRpbmcgY3B1IDIyIHRvIHJ1bnF1ZXVlIDENCihYRU4pIEFkZGluZyBjcHUgMjMgdG8g cnVucXVldWUgMQ0KKFhFTikgQWRkaW5nIGNwdSAyNCB0byBydW5xdWV1ZSAxDQooWEVOKSBBZGRp bmcgY3B1IDI1IHRvIHJ1bnF1ZXVlIDENCihYRU4pIEFkZGluZyBjcHUgMjYgdG8gcnVucXVldWUg MQ0KKFhFTikgQWRkaW5nIGNwdSAyNyB0byBydW5xdWV1ZSAxDQooWEVOKSBBZGRpbmcgY3B1IDI4 IHRvIHJ1bnF1ZXVlIDENCihYRU4pIEFkZGluZyBjcHUgMjkgdG8gcnVucXVldWUgMQ0KKFhFTikg QWRkaW5nIGNwdSAzMCB0byBydW5xdWV1ZSAxDQooWEVOKSBBZGRpbmcgY3B1IDMxIHRvIHJ1bnF1 ZXVlIDENCihYRU4pIEFkZGluZyBjcHUgMzIgdG8gcnVucXVldWUgMg0KKFhFTikgIEZpcnN0IGNw dSBvbiBydW5xdWV1ZSwgYWN0aXZhdGluZw0KKFhFTikgQWRkaW5nIGNwdSAzMyB0byBydW5xdWV1 ZSAyDQooWEVOKSBBZGRpbmcgY3B1IDM0IHRvIHJ1bnF1ZXVlIDINCihYRU4pIEFkZGluZyBjcHUg MzUgdG8gcnVucXVldWUgMg0KKFhFTikgQWRkaW5nIGNwdSAzNiB0byBydW5xdWV1ZSAyDQooWEVO KSBBZGRpbmcgY3B1IDM3IHRvIHJ1bnF1ZXVlIDINCihYRU4pIEFkZGluZyBjcHUgMzggdG8gcnVu cXVldWUgMg0KKFhFTikgQWRkaW5nIGNwdSAzOSB0byBydW5xdWV1ZSAyDQooWEVOKSBBZGRpbmcg Y3B1IDQwIHRvIHJ1bnF1ZXVlIDINCihYRU4pIEFkZGluZyBjcHUgNDEgdG8gcnVucXVldWUgMg0K KFhFTikgQWRkaW5nIGNwdSA0MiB0byBydW5xdWV1ZSAyDQooWEVOKSBBZGRpbmcgY3B1IDQzIHRv IHJ1bnF1ZXVlIDINCihYRU4pIEFkZGluZyBjcHUgNDQgdG8gcnVucXVldWUgMg0KKFhFTikgQWRk aW5nIGNwdSA0NSB0byBydW5xdWV1ZSAyDQooWEVOKSBBZGRpbmcgY3B1IDQ2IHRvIHJ1bnF1ZXVl IDINCihYRU4pIEFkZGluZyBjcHUgNDcgdG8gcnVucXVldWUgMg0KKFhFTikgQWRkaW5nIGNwdSA0 OCB0byBydW5xdWV1ZSAzDQooWEVOKSAgRmlyc3QgY3B1IG9uIHJ1bnF1ZXVlLCBhY3RpdmF0aW5n DQooWEVOKSBBZGRpbmcgY3B1IDQ5IHRvIHJ1bnF1ZXVlIDMNCihYRU4pIEFkZGluZyBjcHUgNTAg dG8gcnVucXVldWUgMw0KKFhFTikgQWRkaW5nIGNwdSA1MSB0byBydW5xdWV1ZSAzDQooWEVOKSBB ZGRpbmcgY3B1IDUyIHRvIHJ1bnF1ZXVlIDMNCihYRU4pIEFkZGluZyBjcHUgNTMgdG8gcnVucXVl dWUgMw0KKFhFTikgQWRkaW5nIGNwdSA1NCB0byBydW5xdWV1ZSAzDQooWEVOKSBBZGRpbmcgY3B1 IDU1IHRvIHJ1bnF1ZXVlIDMNCihYRU4pIEFkZGluZyBjcHUgNTYgdG8gcnVucXVldWUgMw0KKFhF TikgQWRkaW5nIGNwdSA1NyB0byBydW5xdWV1ZSAzDQooWEVOKSBBZGRpbmcgY3B1IDU4IHRvIHJ1 bnF1ZXVlIDMNCihYRU4pIEFkZGluZyBjcHUgNTkgdG8gcnVucXVldWUgMw0KKFhFTikgQWRkaW5n IGNwdSA2MCB0byBydW5xdWV1ZSAzDQooWEVOKSBBZGRpbmcgY3B1IDYxIHRvIHJ1bnF1ZXVlIDMN CihYRU4pIEFkZGluZyBjcHUgNjIgdG8gcnVucXVldWUgMw0KKFhFTikgQWRkaW5nIGNwdSA2MyB0 byBydW5xdWV1ZSAzDQooWEVOKSBBZGRpbmcgY3B1IDY0IHRvIHJ1bnF1ZXVlIDQNCihYRU4pICBG aXJzdCBjcHUgb24gcnVucXVldWUsIGFjdGl2YXRpbmcNCihYRU4pIEFkZGluZyBjcHUgNjUgdG8g cnVucXVldWUgNA0KKFhFTikgQWRkaW5nIGNwdSA2NiB0byBydW5xdWV1ZSA0DQooWEVOKSBBZGRp bmcgY3B1IDY3IHRvIHJ1bnF1ZXVlIDQNCihYRU4pIEFkZGluZyBjcHUgNjggdG8gcnVucXVldWUg NA0KKFhFTikgQWRkaW5nIGNwdSA2OSB0byBydW5xdWV1ZSA0DQooWEVOKSBBZGRpbmcgY3B1IDcw IHRvIHJ1bnF1ZXVlIDQNCihYRU4pIEFkZGluZyBjcHUgNzEgdG8gcnVucXVldWUgNA0KKFhFTikg QWRkaW5nIGNwdSA3MiB0byBydW5xdWV1ZSA0DQooWEVOKSBBZGRpbmcgY3B1IDczIHRvIHJ1bnF1 ZXVlIDQNCihYRU4pIEFkZGluZyBjcHUgNzQgdG8gcnVucXVldWUgNA0KKFhFTikgQWRkaW5nIGNw dSA3NSB0byBydW5xdWV1ZSA0DQooWEVOKSBBZGRpbmcgY3B1IDc2IHRvIHJ1bnF1ZXVlIDQNCihY RU4pIEFkZGluZyBjcHUgNzcgdG8gcnVucXVldWUgNA0KKFhFTikgQWRkaW5nIGNwdSA3OCB0byBy dW5xdWV1ZSA0DQooWEVOKSBBZGRpbmcgY3B1IDc5IHRvIHJ1bnF1ZXVlIDQNCihYRU4pIEFkZGlu ZyBjcHUgODAgdG8gcnVucXVldWUgNQ0KKFhFTikgIEZpcnN0IGNwdSBvbiBydW5xdWV1ZSwgYWN0 aXZhdGluZw0KKFhFTikgQWRkaW5nIGNwdSA4MSB0byBydW5xdWV1ZSA1DQooWEVOKSBBZGRpbmcg Y3B1IDgyIHRvIHJ1bnF1ZXVlIDUNCihYRU4pIEFkZGluZyBjcHUgODMgdG8gcnVucXVldWUgNQ0K KFhFTikgQWRkaW5nIGNwdSA4NCB0byBydW5xdWV1ZSA1DQooWEVOKSBBZGRpbmcgY3B1IDg1IHRv IHJ1bnF1ZXVlIDUNCihYRU4pIEFkZGluZyBjcHUgODYgdG8gcnVucXVldWUgNQ0KKFhFTikgQWRk aW5nIGNwdSA4NyB0byBydW5xdWV1ZSA1DQooWEVOKSBBZGRpbmcgY3B1IDg4IHRvIHJ1bnF1ZXVl IDUNCihYRU4pIEFkZGluZyBjcHUgODkgdG8gcnVucXVldWUgNQ0KKFhFTikgQWRkaW5nIGNwdSA5 MCB0byBydW5xdWV1ZSA1DQooWEVOKSBBZGRpbmcgY3B1IDkxIHRvIHJ1bnF1ZXVlIDUNCihYRU4p IEFkZGluZyBjcHUgOTIgdG8gcnVucXVldWUgNQ0KKFhFTikgQWRkaW5nIGNwdSA5MyB0byBydW5x dWV1ZSA1DQooWEVOKSBBZGRpbmcgY3B1IDk0IHRvIHJ1bnF1ZXVlIDUNCihYRU4pIEFkZGluZyBj cHUgOTUgdG8gcnVucXVldWUgNQ0KKFhFTikgYWx0ZXJuYXRpdmVzOiBQYXRjaGluZyB3aXRoIGFs dCB0YWJsZSAwMDAwMDAwMDAwMmNlNGMwIC0+IDAwMDAwMDAwMDAyY2YwYTgNCihYRU4pICoqKiBM T0FESU5HIERPTUFJTiAwICoqKg0KKFhFTikgTG9hZGluZyBkMCBrZXJuZWwgZnJvbSBib290IG1v ZHVsZSBAIDAwMDAwMDAwMmM1YWMwMDANCihYRU4pIExvYWRpbmcgcmFtZGlzayBmcm9tIGJvb3Qg bW9kdWxlIEAgMDAwMDAwMDAyYWJjYzAwMA0KKFhFTikgc2p0LXRlc3Q6IGtlcm5lbCBkZWNvbXBy ZXNzOiAtMjINCihYRU4pIHNqdC10ZXN0OiBrZXJuZWwgemltYWdlNjQgcHJvYmU6IDANCihYRU4p IEFsbG9jYXRpbmcgMToxIG1hcHBpbmdzIHRvdGFsbGluZyA2NTUzNk1CIGZvciBkb20wOg0KKFhF TikgQkFOS1swXSAweDAwMDAwMDA4MDAwMDAwLTB4MDAwMDAwMjgwMDAwMDAgKDUxMk1CKQ0KKFhF TikgQkFOS1sxXSAweDAwMDAwMDMwMDAwMDAwLTB4MDAwMDAwMzgwMDAwMDAgKDEyOE1CKQ0KKFhF TikgQkFOS1syXSAweDAwMDAwMDU4MDAwMDAwLTB4MDAwMDAwNjAwMDAwMDAgKDEyOE1CKQ0KKFhF TikgQkFOS1szXSAweDAwMDA0MjgwMDAwMDAwLTB4MDAwMDQyYzAwMDAwMDAgKDEwMjRNQikNCihY RU4pIEJBTktbNF0gMHgwMDAwNDU0MDAwMDAwMC0weDAwMDA0NTgwMDAwMDAwICgxMDI0TUIpDQoo WEVOKSBCQU5LWzVdIDB4MDAwMDUxNDAwMDAwMDAtMHgwMDAwNTE4MDAwMDAwMCAoMTAyNE1CKQ0K KFhFTikgQkFOS1s2XSAweDAwMDA1M2MwMDAwMDAwLTB4MDAwMDU0MDAwMDAwMDAgKDEwMjRNQikN CihYRU4pIEJBTktbN10gMHgwMDAwNTY0MDAwMDAwMC0weDAwMDA1NjgwMDAwMDAwICgxMDI0TUIp DQooWEVOKSBCQU5LWzhdIDB4MDAwMDU4ODAwMDAwMDAtMHgwMDAwNThjMDAwMDAwMCAoMTAyNE1C KQ0KKFhFTikgQkFOS1s5XSAweDAwMDA1YjAwMDAwMDAwLTB4MDAwMDViNDAwMDAwMDAgKDEwMjRN QikNCihYRU4pIEJBTktbMTBdIDB4MDAwMDVkODAwMDAwMDAtMHgwMDAwNWRjMDAwMDAwMCAoMTAy NE1CKQ0KKFhFTikgQkFOS1sxMV0gMHgwMDAwNWZjMDAwMDAwMC0weDAwMDA2MDAwMDAwMDAwICgx MDI0TUIpDQooWEVOKSBCQU5LWzEyXSAweDAwMDA2MWMwMDAwMDAwLTB4MDAwMDYyMDAwMDAwMDAg KDEwMjRNQikNCihYRU4pIEJBTktbMTNdIDB4MDAwMDY0ODAwMDAwMDAtMHgwMDAwNjRjMDAwMDAw MCAoMTAyNE1CKQ0KKFhFTikgQkFOS1sxNF0gMHgwMDAwNjcwMDAwMDAwMC0weDAwMDA2NzQwMDAw MDAwICgxMDI0TUIpDQooWEVOKSBCQU5LWzE1XSAweDAwMDA2OTgwMDAwMDAwLTB4MDAwMDY5YzAw MDAwMDAgKDEwMjRNQikNCihYRU4pIEJBTktbMTZdIDB4MDAwMDZjMDAwMDAwMDAtMHgwMDAwNmM0 MDAwMDAwMCAoMTAyNE1CKQ0KKFhFTikgQkFOS1sxN10gMHgwMDAwNmU4MDAwMDAwMC0weDAwMDA2 ZWMwMDAwMDAwICgxMDI0TUIpDQooWEVOKSBCQU5LWzE4XSAweDAwMDA4MTAwMDAwMDAwLTB4MDAw MDgxNDAwMDAwMDAgKDEwMjRNQikNCihYRU4pIEJBTktbMTldIDB4MDAwMDgzMDAwMDAwMDAtMHgw MDAwODM0MDAwMDAwMCAoMTAyNE1CKQ0KKFhFTikgQkFOS1syMF0gMHgwMDAwODQ4MDAwMDAwMC0w eDAwMDA4NGMwMDAwMDAwICgxMDI0TUIpDQooWEVOKSBCQU5LWzIxXSAweDAwMDA4NmMwMDAwMDAw LTB4MDAwMDg3MDAwMDAwMDAgKDEwMjRNQikNCihYRU4pIEJBTktbMjJdIDB4MDAwMDg4YzAwMDAw MDAtMHgwMDAwODkwMDAwMDAwMCAoMTAyNE1CKQ0KKFhFTikgQkFOS1syM10gMHgwMDAwOGFjMDAw MDAwMC0weDAwMDA4YjAwMDAwMDAwICgxMDI0TUIpDQooWEVOKSBCQU5LWzI0XSAweDAwMDA4ZDAw MDAwMDAwLTB4MDAwMDhkNDAwMDAwMDAgKDEwMjRNQikNCihYRU4pIEJBTktbMjVdIDB4MDAwMDhm MDAwMDAwMDAtMHgwMDAwOGY0MDAwMDAwMCAoMTAyNE1CKQ0KKFhFTikgQkFOS1syNl0gMHgwMDAw OTE0MDAwMDAwMC0weDAwMDA5MTgwMDAwMDAwICgxMDI0TUIpDQooWEVOKSBCQU5LWzI3XSAweDAw MDA5MzQwMDAwMDAwLTB4MDAwMDkzODAwMDAwMDAgKDEwMjRNQikNCihYRU4pIEJBTktbMjhdIDB4 MDAwMDk1ODAwMDAwMDAtMHgwMDAwOTVjMDAwMDAwMCAoMTAyNE1CKQ0KKFhFTikgQkFOS1syOV0g MHgwMDAwOTc4MDAwMDAwMC0weDAwMDA5N2MwMDAwMDAwICgxMDI0TUIpDQooWEVOKSBCQU5LWzMw XSAweDAwMDA5OWMwMDAwMDAwLTB4MDAwMDlhMDAwMDAwMDAgKDEwMjRNQikNCihYRU4pIEJBTktb MzFdIDB4MDAwMDliYzAwMDAwMDAtMHgwMDAwOWMwMDAwMDAwMCAoMTAyNE1CKQ0KKFhFTikgQkFO S1szMl0gMHgwMDAwOWUwMDAwMDAwMC0weDAwMDA5ZTQwMDAwMDAwICgxMDI0TUIpDQooWEVOKSBC QU5LWzMzXSAweDAwMDBhMDAwMDAwMDAwLTB4MDAwMGEwNDAwMDAwMDAgKDEwMjRNQikNCihYRU4p IEJBTktbMzRdIDB4MDAwMGEyMDAwMDAwMDAtMHgwMDAwYTI0MDAwMDAwMCAoMTAyNE1CKQ0KKFhF TikgQkFOS1szNV0gMHgwMDAwYTQ0MDAwMDAwMC0weDAwMDBhNDgwMDAwMDAwICgxMDI0TUIpDQoo WEVOKSBCQU5LWzM2XSAweDAwMDBhNjQwMDAwMDAwLTB4MDAwMGE2ODAwMDAwMDAgKDEwMjRNQikN CihYRU4pIEJBTktbMzddIDB4MDAwMGE4ODAwMDAwMDAtMHgwMDAwYThjMDAwMDAwMCAoMTAyNE1C KQ0KKFhFTikgQkFOS1szOF0gMHgwMDAwYWE4MDAwMDAwMC0weDAwMDBhYWMwMDAwMDAwICgxMDI0 TUIpDQooWEVOKSBCQU5LWzM5XSAweDAwMDBhY2MwMDAwMDAwLTB4MDAwMGFkMDAwMDAwMDAgKDEw MjRNQikNCihYRU4pIEJBTktbNDBdIDB4MDAwMGFlYzAwMDAwMDAtMHgwMDAwYWYwMDAwMDAwMCAo MTAyNE1CKQ0KKFhFTikgQkFOS1s0MV0gMHgwMDIwNjBiMDAwMDAwMC0weDAwMjA2MGMwMDAwMDAw ICgyNTZNQikNCihYRU4pIEJBTktbNDJdIDB4MDAyMDYxODAwMDAwMDAtMHgwMDIwNjFjMDAwMDAw MCAoMTAyNE1CKQ0KKFhFTikgQkFOS1s0M10gMHgwMDIwNjI4MDAwMDAwMC0weDAwMjA2MmMwMDAw MDAwICgxMDI0TUIpDQooWEVOKSBCQU5LWzQ0XSAweDAwMjA2MzgwMDAwMDAwLTB4MDAyMDYzYzAw MDAwMDAgKDEwMjRNQikNCihYRU4pIEJBTktbNDVdIDB4MDAyMDY0ODAwMDAwMDAtMHgwMDIwNjRj MDAwMDAwMCAoMTAyNE1CKQ0KKFhFTikgQkFOS1s0Nl0gMHgwMDIwNjU4MDAwMDAwMC0weDAwMjA2 NWMwMDAwMDAwICgxMDI0TUIpDQooWEVOKSBCQU5LWzQ3XSAweDAwMjA2NmMwMDAwMDAwLTB4MDAy MDY3MDAwMDAwMDAgKDEwMjRNQikNCihYRU4pIEJBTktbNDhdIDB4MDAyMDY3YzAwMDAwMDAtMHgw MDIwNjgwMDAwMDAwMCAoMTAyNE1CKQ0KKFhFTikgQkFOS1s0OV0gMHgwMDIwNjhjMDAwMDAwMC0w eDAwMjA2OTAwMDAwMDAwICgxMDI0TUIpDQooWEVOKSBCQU5LWzUwXSAweDAwMjA2OWMwMDAwMDAw LTB4MDAyMDZhMDAwMDAwMDAgKDEwMjRNQikNCihYRU4pIEJBTktbNTFdIDB4MDAyMDZhYzAwMDAw MDAtMHgwMDIwNmIwMDAwMDAwMCAoMTAyNE1CKQ0KKFhFTikgQkFOS1s1Ml0gMHgwMDIwNmJjMDAw MDAwMC0weDAwMjA2YzAwMDAwMDAwICgxMDI0TUIpDQooWEVOKSBCQU5LWzUzXSAweDAwMjA2Y2Mw MDAwMDAwLTB4MDAyMDZkMDAwMDAwMDAgKDEwMjRNQikNCihYRU4pIEJBTktbNTRdIDB4MDAyMDZl MDAwMDAwMDAtMHgwMDIwNmU0MDAwMDAwMCAoMTAyNE1CKQ0KKFhFTikgQkFOS1s1NV0gMHgwMDIw NmYwMDAwMDAwMC0weDAwMjA2ZjQwMDAwMDAwICgxMDI0TUIpDQooWEVOKSBCQU5LWzU2XSAweDAw MjA4MDAwMDAwMDAwLTB4MDAyMDgwNDAwMDAwMDAgKDEwMjRNQikNCihYRU4pIEJBTktbNTddIDB4 MDAyMDgxMDAwMDAwMDAtMHgwMDIwODE0MDAwMDAwMCAoMTAyNE1CKQ0KKFhFTikgQkFOS1s1OF0g MHgwMDIwODFjMDAwMDAwMC0weDAwMjA4MjAwMDAwMDAwICgxMDI0TUIpDQooWEVOKSBCQU5LWzU5 XSAweDAwMjA4MmMwMDAwMDAwLTB4MDAyMDgzMDAwMDAwMDAgKDEwMjRNQikNCihYRU4pIEJBTktb NjBdIDB4MDAyMDgzYzAwMDAwMDAtMHgwMDIwODQwMDAwMDAwMCAoMTAyNE1CKQ0KKFhFTikgQkFO S1s2MV0gMHgwMDIwODQ4MDAwMDAwMC0weDAwMjA4NGMwMDAwMDAwICgxMDI0TUIpDQooWEVOKSBC QU5LWzYyXSAweDAwMjA4NTgwMDAwMDAwLTB4MDAyMDg1YzAwMDAwMDAgKDEwMjRNQikNCihYRU4p IEJBTktbNjNdIDB4MDAyMDg2ODAwMDAwMDAtMHgwMDIwODZjMDAwMDAwMCAoMTAyNE1CKQ0KKFhF TikgQkFOS1s2NF0gMHgwMDIwODc0MDAwMDAwMC0weDAwMjA4NzgwMDAwMDAwICgxMDI0TUIpDQoo WEVOKSBCQU5LWzY1XSAweDAwMjA4ODQwMDAwMDAwLTB4MDAyMDg4ODAwMDAwMDAgKDEwMjRNQikN CihYRU4pIEJBTktbNjZdIDB4MDAyMDg5MDAwMDAwMDAtMHgwMDIwODk0MDAwMDAwMCAoMTAyNE1C KQ0KKFhFTikgR3JhbnQgdGFibGUgcmFuZ2U6IDB4MDAwMDAwMmFhNzQwMDAtMHgwMDAwMDAyYWFi NDAwMA0KKFhFTikgUHJlcGFyZSBhIG1pbiBEVEIgZm9yIERPTTANCihYRU4pIENyZWF0ZSBjaG9z ZW4gbm9kZQ0KKFhFTikgQ3JlYXRlIGh5cGVydmlzb3Igbm9kZQ0KKFhFTikgICAtIElSUTogMzIN CihYRU4pICAgLSBJUlE6IDMzDQooWEVOKSAgIC0gSVJROiAzNA0KKFhFTikgICAtIElSUTogMzUN CihYRU4pICAgLSBJUlE6IDM2DQooWEVOKSAgIC0gSVJROiAzNw0KKFhFTikgICAtIElSUTogMzgN CihYRU4pICAgLSBJUlE6IDM5DQooWEVOKSAgIC0gSVJROiA0MA0KKFhFTikgICAtIElSUTogNDEN CihYRU4pICAgLSBJUlE6IDQyDQooWEVOKSAgIC0gSVJROiA0Mw0KKFhFTikgICAtIElSUTogNDQN CihYRU4pICAgLSBJUlE6IDQ1DQooWEVOKSAgIC0gSVJROiA0Ng0KKFhFTikgICAtIElSUTogNDcN CihYRU4pICAgLSBJUlE6IDQ4DQooWEVOKSAgIC0gSVJROiA0OQ0KKFhFTikgICAtIElSUTogNTAN CihYRU4pICAgLSBJUlE6IDUxDQooWEVOKSAgIC0gSVJROiA1Mg0KKFhFTikgICAtIElSUTogNTMN CihYRU4pICAgLSBJUlE6IDU0DQooWEVOKSAgIC0gSVJROiA1NQ0KKFhFTikgICAtIElSUTogNTYN CihYRU4pICAgLSBJUlE6IDU3DQooWEVOKSAgIC0gSVJROiA1OA0KKFhFTikgICAtIElSUTogNTkN CihYRU4pICAgLSBJUlE6IDYwDQooWEVOKSAgIC0gSVJROiA2MQ0KKFhFTikgICAtIElSUTogNjIN CihYRU4pICAgLSBJUlE6IDYzDQooWEVOKSAgIC0gSVJROiA2NA0KKFhFTikgICAtIElSUTogNjUN CihYRU4pICAgLSBJUlE6IDY2DQooWEVOKSAgIC0gSVJROiA2Nw0KKFhFTikgICAtIElSUTogNjgN CihYRU4pICAgLSBJUlE6IDY5DQooWEVOKSAgIC0gSVJROiA3MA0KKFhFTikgICAtIElSUTogNzEN CihYRU4pICAgLSBJUlE6IDcyDQooWEVOKSAgIC0gSVJROiA3Mw0KKFhFTikgICAtIElSUTogNzQN CihYRU4pICAgLSBJUlE6IDc1DQooWEVOKSAgIC0gSVJROiA3Ng0KKFhFTikgICAtIElSUTogNzcN CihYRU4pICAgLSBJUlE6IDc4DQooWEVOKSAgIC0gSVJROiA3OQ0KKFhFTikgICAtIElSUTogODAN CihYRU4pICAgLSBJUlE6IDgxDQooWEVOKSAgIC0gSVJROiA4Mg0KKFhFTikgICAtIElSUTogODMN CihYRU4pICAgLSBJUlE6IDg0DQooWEVOKSAgIC0gSVJROiA4NQ0KKFhFTikgICAtIElSUTogODYN CihYRU4pICAgLSBJUlE6IDg3DQooWEVOKSAgIC0gSVJROiA4OA0KKFhFTikgICAtIElSUTogODkN CihYRU4pICAgLSBJUlE6IDkwDQooWEVOKSAgIC0gSVJROiA5MQ0KKFhFTikgICAtIElSUTogOTIN CihYRU4pICAgLSBJUlE6IDkzDQooWEVOKSAgIC0gSVJROiA5NA0KKFhFTikgICAtIElSUTogOTUN CihYRU4pICAgLSBJUlE6IDk2DQooWEVOKSAgIC0gSVJROiA5Nw0KKFhFTikgICAtIElSUTogOTgN CihYRU4pICAgLSBJUlE6IDk5DQooWEVOKSAgIC0gSVJROiAxMDANCihYRU4pICAgLSBJUlE6IDEw MQ0KKFhFTikgICAtIElSUTogMTAyDQooWEVOKSAgIC0gSVJROiAxMDMNCihYRU4pICAgLSBJUlE6 IDEwNA0KKFhFTikgICAtIElSUTogMTA1DQooWEVOKSAgIC0gSVJROiAxMDYNCihYRU4pICAgLSBJ UlE6IDEwNw0KKFhFTikgICAtIElSUTogMTA4DQooWEVOKSAgIC0gSVJROiAxMDkNCihYRU4pICAg LSBJUlE6IDExMA0KKFhFTikgICAtIElSUTogMTExDQooWEVOKSAgIC0gSVJROiAxMTINCihYRU4p ICAgLSBJUlE6IDExMw0KKFhFTikgICAtIElSUTogMTE0DQooWEVOKSAgIC0gSVJROiAxMTUNCihY RU4pICAgLSBJUlE6IDExNg0KKFhFTikgICAtIElSUTogMTE3DQooWEVOKSAgIC0gSVJROiAxMTgN CihYRU4pICAgLSBJUlE6IDExOQ0KKFhFTikgICAtIElSUTogMTIwDQooWEVOKSAgIC0gSVJROiAx MjENCihYRU4pICAgLSBJUlE6IDEyMg0KKFhFTikgICAtIElSUTogMTIzDQooWEVOKSAgIC0gSVJR OiAxMjQNCihYRU4pICAgLSBJUlE6IDEyNQ0KKFhFTikgICAtIElSUTogMTI2DQooWEVOKSAgIC0g SVJROiAxMjcNCihYRU4pICAgLSBJUlE6IDEyOA0KKFhFTikgICAtIElSUTogMTI5DQooWEVOKSAg IC0gSVJROiAxMzANCihYRU4pICAgLSBJUlE6IDEzMQ0KKFhFTikgICAtIElSUTogMTMyDQooWEVO KSAgIC0gSVJROiAxMzMNCihYRU4pICAgLSBJUlE6IDEzNA0KKFhFTikgICAtIElSUTogMTM1DQoo WEVOKSAgIC0gSVJROiAxMzYNCihYRU4pICAgLSBJUlE6IDEzNw0KKFhFTikgICAtIElSUTogMTM4 DQooWEVOKSAgIC0gSVJROiAxMzkNCihYRU4pICAgLSBJUlE6IDE0MA0KKFhFTikgICAtIElSUTog MTQxDQooWEVOKSAgIC0gSVJROiAxNDINCihYRU4pICAgLSBJUlE6IDE0Mw0KKFhFTikgICAtIElS UTogMTQ0DQooWEVOKSAgIC0gSVJROiAxNDUNCihYRU4pICAgLSBJUlE6IDE0Ng0KKFhFTikgICAt IElSUTogMTQ3DQooWEVOKSAgIC0gSVJROiAxNDgNCihYRU4pICAgLSBJUlE6IDE0OQ0KKFhFTikg ICAtIElSUTogMTUwDQooWEVOKSAgIC0gSVJROiAxNTENCihYRU4pICAgLSBJUlE6IDE1Mg0KKFhF TikgICAtIElSUTogMTUzDQooWEVOKSAgIC0gSVJROiAxNTQNCihYRU4pICAgLSBJUlE6IDE1NQ0K KFhFTikgICAtIElSUTogMTU2DQooWEVOKSAgIC0gSVJROiAxNTcNCihYRU4pICAgLSBJUlE6IDE1 OA0KKFhFTikgICAtIElSUTogMTU5DQooWEVOKSAgIC0gSVJROiAxNjANCihYRU4pICAgLSBJUlE6 IDE2MQ0KKFhFTikgICAtIElSUTogMTYyDQooWEVOKSAgIC0gSVJROiAxNjMNCihYRU4pICAgLSBJ UlE6IDE2NA0KKFhFTikgICAtIElSUTogMTY1DQooWEVOKSAgIC0gSVJROiAxNjYNCihYRU4pICAg LSBJUlE6IDE2Nw0KKFhFTikgICAtIElSUTogMTY4DQooWEVOKSAgIC0gSVJROiAxNjkNCihYRU4p ICAgLSBJUlE6IDE3MA0KKFhFTikgICAtIElSUTogMTcxDQooWEVOKSAgIC0gSVJROiAxNzINCihY RU4pICAgLSBJUlE6IDE3Mw0KKFhFTikgICAtIElSUTogMTc0DQooWEVOKSAgIC0gSVJROiAxNzUN CihYRU4pICAgLSBJUlE6IDE3Ng0KKFhFTikgICAtIElSUTogMTc3DQooWEVOKSAgIC0gSVJROiAx NzgNCihYRU4pICAgLSBJUlE6IDE3OQ0KKFhFTikgICAtIElSUTogMTgwDQooWEVOKSAgIC0gSVJR OiAxODENCihYRU4pICAgLSBJUlE6IDE4Mg0KKFhFTikgICAtIElSUTogMTgzDQooWEVOKSAgIC0g SVJROiAxODQNCihYRU4pICAgLSBJUlE6IDE4NQ0KKFhFTikgICAtIElSUTogMTg2DQooWEVOKSAg IC0gSVJROiAxODcNCihYRU4pICAgLSBJUlE6IDE4OA0KKFhFTikgICAtIElSUTogMTg5DQooWEVO KSAgIC0gSVJROiAxOTANCihYRU4pICAgLSBJUlE6IDE5MQ0KKFhFTikgICAtIElSUTogMTkyDQoo WEVOKSAgIC0gSVJROiAxOTMNCihYRU4pICAgLSBJUlE6IDE5NA0KKFhFTikgICAtIElSUTogMTk1 DQooWEVOKSAgIC0gSVJROiAxOTYNCihYRU4pICAgLSBJUlE6IDE5Nw0KKFhFTikgICAtIElSUTog MTk4DQooWEVOKSAgIC0gSVJROiAxOTkNCihYRU4pICAgLSBJUlE6IDIwMA0KKFhFTikgICAtIElS UTogMjAxDQooWEVOKSAgIC0gSVJROiAyMDINCihYRU4pICAgLSBJUlE6IDIwMw0KKFhFTikgICAt IElSUTogMjA0DQooWEVOKSAgIC0gSVJROiAyMDUNCihYRU4pICAgLSBJUlE6IDIwNg0KKFhFTikg ICAtIElSUTogMjA3DQooWEVOKSAgIC0gSVJROiAyMDgNCihYRU4pICAgLSBJUlE6IDIwOQ0KKFhF TikgICAtIElSUTogMjEwDQooWEVOKSAgIC0gSVJROiAyMTENCihYRU4pICAgLSBJUlE6IDIxMg0K KFhFTikgICAtIElSUTogMjEzDQooWEVOKSAgIC0gSVJROiAyMTQNCihYRU4pICAgLSBJUlE6IDIx NQ0KKFhFTikgICAtIElSUTogMjE2DQooWEVOKSAgIC0gSVJROiAyMTcNCihYRU4pICAgLSBJUlE6 IDIxOA0KKFhFTikgICAtIElSUTogMjE5DQooWEVOKSAgIC0gSVJROiAyMjANCihYRU4pICAgLSBJ UlE6IDIyMQ0KKFhFTikgICAtIElSUTogMjIyDQooWEVOKSAgIC0gSVJROiAyMjMNCihYRU4pICAg LSBJUlE6IDIyNA0KKFhFTikgICAtIElSUTogMjI1DQooWEVOKSAgIC0gSVJROiAyMjYNCihYRU4p ICAgLSBJUlE6IDIyNw0KKFhFTikgICAtIElSUTogMjI4DQooWEVOKSAgIC0gSVJROiAyMjkNCihY RU4pICAgLSBJUlE6IDIzMA0KKFhFTikgICAtIElSUTogMjMxDQooWEVOKSAgIC0gSVJROiAyMzIN CihYRU4pICAgLSBJUlE6IDIzMw0KKFhFTikgICAtIElSUTogMjM0DQooWEVOKSAgIC0gSVJROiAy MzUNCihYRU4pICAgLSBJUlE6IDIzNg0KKFhFTikgICAtIElSUTogMjM3DQooWEVOKSAgIC0gSVJR OiAyMzgNCihYRU4pICAgLSBJUlE6IDIzOQ0KKFhFTikgICAtIElSUTogMjQwDQooWEVOKSAgIC0g SVJROiAyNDENCihYRU4pICAgLSBJUlE6IDI0Mg0KKFhFTikgICAtIElSUTogMjQzDQooWEVOKSAg IC0gSVJROiAyNDQNCihYRU4pICAgLSBJUlE6IDI0NQ0KKFhFTikgICAtIElSUTogMjQ2DQooWEVO KSAgIC0gSVJROiAyNDcNCihYRU4pICAgLSBJUlE6IDI0OA0KKFhFTikgICAtIElSUTogMjQ5DQoo WEVOKSAgIC0gSVJROiAyNTANCihYRU4pICAgLSBJUlE6IDI1MQ0KKFhFTikgICAtIElSUTogMjUy DQooWEVOKSAgIC0gSVJROiAyNTMNCihYRU4pICAgLSBJUlE6IDI1NA0KKFhFTikgICAtIElSUTog MjU1DQooWEVOKSAgIC0gSVJROiAyNTYNCihYRU4pICAgLSBJUlE6IDI1Nw0KKFhFTikgICAtIElS UTogMjU4DQooWEVOKSAgIC0gSVJROiAyNTkNCihYRU4pICAgLSBJUlE6IDI2MA0KKFhFTikgICAt IElSUTogMjYxDQooWEVOKSAgIC0gSVJROiAyNjINCihYRU4pICAgLSBJUlE6IDI2Mw0KKFhFTikg ICAtIElSUTogMjY0DQooWEVOKSAgIC0gSVJROiAyNjUNCihYRU4pICAgLSBJUlE6IDI2Ng0KKFhF TikgICAtIElSUTogMjY3DQooWEVOKSAgIC0gSVJROiAyNjgNCihYRU4pICAgLSBJUlE6IDI2OQ0K KFhFTikgICAtIElSUTogMjcwDQooWEVOKSAgIC0gSVJROiAyNzENCihYRU4pICAgLSBJUlE6IDI3 Mg0KKFhFTikgICAtIElSUTogMjczDQooWEVOKSAgIC0gSVJROiAyNzQNCihYRU4pICAgLSBJUlE6 IDI3NQ0KKFhFTikgICAtIElSUTogMjc2DQooWEVOKSAgIC0gSVJROiAyNzcNCihYRU4pICAgLSBJ UlE6IDI3OA0KKFhFTikgICAtIElSUTogMjc5DQooWEVOKSAgIC0gSVJROiAyODANCihYRU4pICAg LSBJUlE6IDI4MQ0KKFhFTikgICAtIElSUTogMjgyDQooWEVOKSAgIC0gSVJROiAyODMNCihYRU4p ICAgLSBJUlE6IDI4NA0KKFhFTikgICAtIElSUTogMjg1DQooWEVOKSAgIC0gSVJROiAyODYNCihY RU4pICAgLSBJUlE6IDI4Nw0KKFhFTikgICAtIElSUTogMjg4DQooWEVOKSAgIC0gSVJROiAyODkN CihYRU4pICAgLSBJUlE6IDI5MA0KKFhFTikgICAtIElSUTogMjkxDQooWEVOKSAgIC0gSVJROiAy OTINCihYRU4pICAgLSBJUlE6IDI5Mw0KKFhFTikgICAtIElSUTogMjk0DQooWEVOKSAgIC0gSVJR OiAyOTUNCihYRU4pICAgLSBJUlE6IDI5Ng0KKFhFTikgICAtIElSUTogMjk3DQooWEVOKSAgIC0g SVJROiAyOTgNCihYRU4pICAgLSBJUlE6IDI5OQ0KKFhFTikgICAtIElSUTogMzAwDQooWEVOKSAg IC0gSVJROiAzMDENCihYRU4pICAgLSBJUlE6IDMwMg0KKFhFTikgICAtIElSUTogMzAzDQooWEVO KSAgIC0gSVJROiAzMDQNCihYRU4pICAgLSBJUlE6IDMwNQ0KKFhFTikgICAtIElSUTogMzA2DQoo WEVOKSAgIC0gSVJROiAzMDcNCihYRU4pICAgLSBJUlE6IDMwOA0KKFhFTikgICAtIElSUTogMzA5 DQooWEVOKSAgIC0gSVJROiAzMTANCihYRU4pICAgLSBJUlE6IDMxMQ0KKFhFTikgICAtIElSUTog MzEyDQooWEVOKSAgIC0gSVJROiAzMTMNCihYRU4pICAgLSBJUlE6IDMxNA0KKFhFTikgICAtIElS UTogMzE1DQooWEVOKSAgIC0gSVJROiAzMTYNCihYRU4pICAgLSBJUlE6IDMxNw0KKFhFTikgICAt IElSUTogMzE4DQooWEVOKSAgIC0gSVJROiAzMTkNCihYRU4pICAgLSBJUlE6IDMyMA0KKFhFTikg ICAtIElSUTogMzIxDQooWEVOKSAgIC0gSVJROiAzMjINCihYRU4pICAgLSBJUlE6IDMyMw0KKFhF TikgICAtIElSUTogMzI0DQooWEVOKSAgIC0gSVJROiAzMjUNCihYRU4pICAgLSBJUlE6IDMyNg0K KFhFTikgICAtIElSUTogMzI3DQooWEVOKSAgIC0gSVJROiAzMjgNCihYRU4pICAgLSBJUlE6IDMy OQ0KKFhFTikgICAtIElSUTogMzMwDQooWEVOKSAgIC0gSVJROiAzMzENCihYRU4pICAgLSBJUlE6 IDMzMg0KKFhFTikgICAtIElSUTogMzMzDQooWEVOKSAgIC0gSVJROiAzMzQNCihYRU4pICAgLSBJ UlE6IDMzNQ0KKFhFTikgICAtIElSUTogMzM2DQooWEVOKSAgIC0gSVJROiAzMzcNCihYRU4pICAg LSBJUlE6IDMzOA0KKFhFTikgICAtIElSUTogMzM5DQooWEVOKSAgIC0gSVJROiAzNDANCihYRU4p ICAgLSBJUlE6IDM0MQ0KKFhFTikgICAtIElSUTogMzQyDQooWEVOKSAgIC0gSVJROiAzNDMNCihY RU4pICAgLSBJUlE6IDM0NA0KKFhFTikgICAtIElSUTogMzQ1DQooWEVOKSAgIC0gSVJROiAzNDYN CihYRU4pICAgLSBJUlE6IDM0Nw0KKFhFTikgICAtIElSUTogMzQ4DQooWEVOKSAgIC0gSVJROiAz NDkNCihYRU4pICAgLSBJUlE6IDM1MA0KKFhFTikgICAtIElSUTogMzUxDQooWEVOKSAgIC0gSVJR OiAzNTINCihYRU4pICAgLSBJUlE6IDM1Mw0KKFhFTikgICAtIElSUTogMzU0DQooWEVOKSAgIC0g SVJROiAzNTUNCihYRU4pICAgLSBJUlE6IDM1Ng0KKFhFTikgICAtIElSUTogMzU3DQooWEVOKSAg IC0gSVJROiAzNTgNCihYRU4pICAgLSBJUlE6IDM1OQ0KKFhFTikgICAtIElSUTogMzYwDQooWEVO KSAgIC0gSVJROiAzNjENCihYRU4pICAgLSBJUlE6IDM2Mg0KKFhFTikgICAtIElSUTogMzYzDQoo WEVOKSAgIC0gSVJROiAzNjQNCihYRU4pICAgLSBJUlE6IDM2NQ0KKFhFTikgICAtIElSUTogMzY2 DQooWEVOKSAgIC0gSVJROiAzNjcNCihYRU4pICAgLSBJUlE6IDM2OA0KKFhFTikgICAtIElSUTog MzY5DQooWEVOKSAgIC0gSVJROiAzNzANCihYRU4pICAgLSBJUlE6IDM3MQ0KKFhFTikgICAtIElS UTogMzcyDQooWEVOKSAgIC0gSVJROiAzNzMNCihYRU4pICAgLSBJUlE6IDM3NA0KKFhFTikgICAt IElSUTogMzc1DQooWEVOKSAgIC0gSVJROiAzNzYNCihYRU4pICAgLSBJUlE6IDM3Nw0KKFhFTikg ICAtIElSUTogMzc4DQooWEVOKSAgIC0gSVJROiAzNzkNCihYRU4pICAgLSBJUlE6IDM4MA0KKFhF TikgICAtIElSUTogMzgxDQooWEVOKSAgIC0gSVJROiAzODINCihYRU4pICAgLSBJUlE6IDM4Mw0K KFhFTikgICAtIElSUTogMzg0DQooWEVOKSAgIC0gSVJROiAzODUNCihYRU4pICAgLSBJUlE6IDM4 Ng0KKFhFTikgICAtIElSUTogMzg3DQooWEVOKSAgIC0gSVJROiAzODgNCihYRU4pICAgLSBJUlE6 IDM4OQ0KKFhFTikgICAtIElSUTogMzkwDQooWEVOKSAgIC0gSVJROiAzOTENCihYRU4pICAgLSBJ UlE6IDM5Mg0KKFhFTikgICAtIElSUTogMzkzDQooWEVOKSAgIC0gSVJROiAzOTQNCihYRU4pICAg LSBJUlE6IDM5NQ0KKFhFTikgICAtIElSUTogMzk2DQooWEVOKSAgIC0gSVJROiAzOTcNCihYRU4p ICAgLSBJUlE6IDM5OA0KKFhFTikgICAtIElSUTogMzk5DQooWEVOKSAgIC0gSVJROiA0MDANCihY RU4pICAgLSBJUlE6IDQwMQ0KKFhFTikgICAtIElSUTogNDAyDQooWEVOKSAgIC0gSVJROiA0MDMN CihYRU4pICAgLSBJUlE6IDQwNA0KKFhFTikgICAtIElSUTogNDA1DQooWEVOKSAgIC0gSVJROiA0 MDYNCihYRU4pICAgLSBJUlE6IDQwNw0KKFhFTikgICAtIElSUTogNDA4DQooWEVOKSAgIC0gSVJR OiA0MDkNCihYRU4pICAgLSBJUlE6IDQxMA0KKFhFTikgICAtIElSUTogNDExDQooWEVOKSAgIC0g SVJROiA0MTINCihYRU4pICAgLSBJUlE6IDQxMw0KKFhFTikgICAtIElSUTogNDE0DQooWEVOKSAg IC0gSVJROiA0MTUNCihYRU4pICAgLSBJUlE6IDQxNg0KKFhFTikgICAtIElSUTogNDE3DQooWEVO KSAgIC0gSVJROiA0MTgNCihYRU4pICAgLSBJUlE6IDQxOQ0KKFhFTikgICAtIElSUTogNDIwDQoo WEVOKSAgIC0gSVJROiA0MjENCihYRU4pICAgLSBJUlE6IDQyMg0KKFhFTikgICAtIElSUTogNDIz DQooWEVOKSAgIC0gSVJROiA0MjQNCihYRU4pICAgLSBJUlE6IDQyNQ0KKFhFTikgICAtIElSUTog NDI2DQooWEVOKSAgIC0gSVJROiA0MjcNCihYRU4pICAgLSBJUlE6IDQyOA0KKFhFTikgICAtIElS UTogNDI5DQooWEVOKSAgIC0gSVJROiA0MzANCihYRU4pICAgLSBJUlE6IDQzMQ0KKFhFTikgICAt IElSUTogNDMyDQooWEVOKSAgIC0gSVJROiA0MzMNCihYRU4pICAgLSBJUlE6IDQzNA0KKFhFTikg ICAtIElSUTogNDM1DQooWEVOKSAgIC0gSVJROiA0MzYNCihYRU4pICAgLSBJUlE6IDQzNw0KKFhF TikgICAtIElSUTogNDM4DQooWEVOKSAgIC0gSVJROiA0MzkNCihYRU4pICAgLSBJUlE6IDQ0MA0K KFhFTikgICAtIElSUTogNDQxDQooWEVOKSAgIC0gSVJROiA0NDINCihYRU4pICAgLSBJUlE6IDQ0 Mw0KKFhFTikgICAtIElSUTogNDQ0DQooWEVOKSAgIC0gSVJROiA0NDUNCihYRU4pICAgLSBJUlE6 IDQ0Ng0KKFhFTikgICAtIElSUTogNDQ3DQooWEVOKSAgIC0gSVJROiA0NDgNCihYRU4pICAgLSBJ UlE6IDQ0OQ0KKFhFTikgICAtIElSUTogNDUwDQooWEVOKSAgIC0gSVJROiA0NTENCihYRU4pICAg LSBJUlE6IDQ1Mg0KKFhFTikgICAtIElSUTogNDUzDQooWEVOKSAgIC0gSVJROiA0NTQNCihYRU4p ICAgLSBJUlE6IDQ1NQ0KKFhFTikgICAtIElSUTogNDU2DQooWEVOKSAgIC0gSVJROiA0NTcNCihY RU4pICAgLSBJUlE6IDQ1OA0KKFhFTikgICAtIElSUTogNDU5DQooWEVOKSAgIC0gSVJROiA0NjAN CihYRU4pICAgLSBJUlE6IDQ2MQ0KKFhFTikgICAtIElSUTogNDYyDQooWEVOKSAgIC0gSVJROiA0 NjMNCihYRU4pICAgLSBJUlE6IDQ2NA0KKFhFTikgICAtIElSUTogNDY1DQooWEVOKSAgIC0gSVJR OiA0NjYNCihYRU4pICAgLSBJUlE6IDQ2Nw0KKFhFTikgICAtIElSUTogNDY4DQooWEVOKSAgIC0g SVJROiA0NjkNCihYRU4pICAgLSBJUlE6IDQ3MA0KKFhFTikgICAtIElSUTogNDcxDQooWEVOKSAg IC0gSVJROiA0NzINCihYRU4pICAgLSBJUlE6IDQ3Mw0KKFhFTikgICAtIElSUTogNDc0DQooWEVO KSAgIC0gSVJROiA0NzUNCihYRU4pICAgLSBJUlE6IDQ3Ng0KKFhFTikgICAtIElSUTogNDc3DQoo WEVOKSAgIC0gSVJROiA0NzgNCihYRU4pICAgLSBJUlE6IDQ3OQ0KKFhFTikgICAtIElSUTogNDgw DQooWEVOKSAgIC0gSVJROiA0ODENCihYRU4pICAgLSBJUlE6IDQ4Mg0KKFhFTikgICAtIElSUTog NDgzDQooWEVOKSAgIC0gSVJROiA0ODUNCihYRU4pICAgLSBJUlE6IDQ4Ng0KKFhFTikgICAtIElS UTogNDg3DQooWEVOKSAgIC0gSVJROiA0ODgNCihYRU4pICAgLSBJUlE6IDQ4OQ0KKFhFTikgICAt IElSUTogNDkwDQooWEVOKSAgIC0gSVJROiA0OTENCihYRU4pICAgLSBJUlE6IDQ5Mg0KKFhFTikg ICAtIElSUTogNDkzDQooWEVOKSAgIC0gSVJROiA0OTQNCihYRU4pICAgLSBJUlE6IDQ5NQ0KKFhF TikgICAtIElSUTogNDk2DQooWEVOKSAgIC0gSVJROiA0OTcNCihYRU4pICAgLSBJUlE6IDQ5OA0K KFhFTikgICAtIElSUTogNDk5DQooWEVOKSAgIC0gSVJROiA1MDANCihYRU4pICAgLSBJUlE6IDUw MQ0KKFhFTikgICAtIElSUTogNTAyDQooWEVOKSAgIC0gSVJROiA1MDMNCihYRU4pICAgLSBJUlE6 IDUwNA0KKFhFTikgICAtIElSUTogNTA1DQooWEVOKSAgIC0gSVJROiA1MDYNCihYRU4pICAgLSBJ UlE6IDUwNw0KKFhFTikgICAtIElSUTogNTA4DQooWEVOKSAgIC0gSVJROiA1MDkNCihYRU4pICAg LSBJUlE6IDUxMA0KKFhFTikgICAtIElSUTogNTExDQooWEVOKSAgIC0gSVJROiA1MTINCihYRU4p ICAgLSBJUlE6IDUxMw0KKFhFTikgICAtIElSUTogNTE0DQooWEVOKSAgIC0gSVJROiA1MTUNCihY RU4pICAgLSBJUlE6IDUxNg0KKFhFTikgICAtIElSUTogNTE3DQooWEVOKSAgIC0gSVJROiA1MTgN CihYRU4pICAgLSBJUlE6IDUxOQ0KKFhFTikgICAtIElSUTogNTIwDQooWEVOKSAgIC0gSVJROiA1 MjENCihYRU4pICAgLSBJUlE6IDUyMg0KKFhFTikgICAtIElSUTogNTIzDQooWEVOKSAgIC0gSVJR OiA1MjQNCihYRU4pICAgLSBJUlE6IDUyNQ0KKFhFTikgICAtIElSUTogNTI2DQooWEVOKSAgIC0g SVJROiA1MjcNCihYRU4pICAgLSBJUlE6IDUyOA0KKFhFTikgICAtIElSUTogNTI5DQooWEVOKSAg IC0gSVJROiA1MzANCihYRU4pICAgLSBJUlE6IDUzMQ0KKFhFTikgICAtIElSUTogNTMyDQooWEVO KSAgIC0gSVJROiA1MzMNCihYRU4pICAgLSBJUlE6IDUzNA0KKFhFTikgICAtIElSUTogNTM1DQoo WEVOKSAgIC0gSVJROiA1MzYNCihYRU4pICAgLSBJUlE6IDUzNw0KKFhFTikgICAtIElSUTogNTM4 DQooWEVOKSAgIC0gSVJROiA1MzkNCihYRU4pICAgLSBJUlE6IDU0MA0KKFhFTikgICAtIElSUTog NTQxDQooWEVOKSAgIC0gSVJROiA1NDINCihYRU4pICAgLSBJUlE6IDU0Mw0KKFhFTikgICAtIElS UTogNTQ0DQooWEVOKSAgIC0gSVJROiA1NDUNCihYRU4pICAgLSBJUlE6IDU0Ng0KKFhFTikgICAt IElSUTogNTQ3DQooWEVOKSAgIC0gSVJROiA1NDgNCihYRU4pICAgLSBJUlE6IDU0OQ0KKFhFTikg ICAtIElSUTogNTUwDQooWEVOKSAgIC0gSVJROiA1NTENCihYRU4pICAgLSBJUlE6IDU1Mg0KKFhF TikgICAtIElSUTogNTUzDQooWEVOKSAgIC0gSVJROiA1NTQNCihYRU4pICAgLSBJUlE6IDU1NQ0K KFhFTikgICAtIElSUTogNTU2DQooWEVOKSAgIC0gSVJROiA1NTcNCihYRU4pICAgLSBJUlE6IDU1 OA0KKFhFTikgICAtIElSUTogNTU5DQooWEVOKSAgIC0gSVJROiA1NjANCihYRU4pICAgLSBJUlE6 IDU2MQ0KKFhFTikgICAtIElSUTogNTYyDQooWEVOKSAgIC0gSVJROiA1NjMNCihYRU4pICAgLSBJ UlE6IDU2NA0KKFhFTikgICAtIElSUTogNTY1DQooWEVOKSAgIC0gSVJROiA1NjYNCihYRU4pICAg LSBJUlE6IDU2Nw0KKFhFTikgICAtIElSUTogNTY4DQooWEVOKSAgIC0gSVJROiA1NjkNCihYRU4p ICAgLSBJUlE6IDU3MA0KKFhFTikgICAtIElSUTogNTcxDQooWEVOKSAgIC0gSVJROiA1NzINCihY RU4pICAgLSBJUlE6IDU3Mw0KKFhFTikgICAtIElSUTogNTc0DQooWEVOKSAgIC0gSVJROiA1NzUN CihYRU4pICAgLSBJUlE6IDU3Ng0KKFhFTikgICAtIElSUTogNTc3DQooWEVOKSAgIC0gSVJROiA1 NzgNCihYRU4pICAgLSBJUlE6IDU3OQ0KKFhFTikgICAtIElSUTogNTgwDQooWEVOKSAgIC0gSVJR OiA1ODENCihYRU4pICAgLSBJUlE6IDU4Mg0KKFhFTikgICAtIElSUTogNTgzDQooWEVOKSAgIC0g SVJROiA1ODQNCihYRU4pICAgLSBJUlE6IDU4NQ0KKFhFTikgICAtIElSUTogNTg2DQooWEVOKSAg IC0gSVJROiA1ODcNCihYRU4pICAgLSBJUlE6IDU4OA0KKFhFTikgICAtIElSUTogNTg5DQooWEVO KSAgIC0gSVJROiA1OTANCihYRU4pICAgLSBJUlE6IDU5MQ0KKFhFTikgICAtIElSUTogNTkyDQoo WEVOKSAgIC0gSVJROiA1OTMNCihYRU4pICAgLSBJUlE6IDU5NA0KKFhFTikgICAtIElSUTogNTk1 DQooWEVOKSAgIC0gSVJROiA1OTYNCihYRU4pICAgLSBJUlE6IDU5Nw0KKFhFTikgICAtIElSUTog NTk4DQooWEVOKSAgIC0gSVJROiA1OTkNCihYRU4pICAgLSBJUlE6IDYwMA0KKFhFTikgICAtIElS UTogNjAxDQooWEVOKSAgIC0gSVJROiA2MDINCihYRU4pICAgLSBJUlE6IDYwMw0KKFhFTikgICAt IElSUTogNjA0DQooWEVOKSAgIC0gSVJROiA2MDUNCihYRU4pICAgLSBJUlE6IDYwNg0KKFhFTikg ICAtIElSUTogNjA3DQooWEVOKSAgIC0gSVJROiA2MDgNCihYRU4pICAgLSBJUlE6IDYwOQ0KKFhF TikgICAtIElSUTogNjEwDQooWEVOKSAgIC0gSVJROiA2MTENCihYRU4pICAgLSBJUlE6IDYxMg0K KFhFTikgICAtIElSUTogNjEzDQooWEVOKSAgIC0gSVJROiA2MTQNCihYRU4pICAgLSBJUlE6IDYx NQ0KKFhFTikgICAtIElSUTogNjE2DQooWEVOKSAgIC0gSVJROiA2MTcNCihYRU4pICAgLSBJUlE6 IDYxOA0KKFhFTikgICAtIElSUTogNjE5DQooWEVOKSAgIC0gSVJROiA2MjANCihYRU4pICAgLSBJ UlE6IDYyMQ0KKFhFTikgICAtIElSUTogNjIyDQooWEVOKSAgIC0gSVJROiA2MjMNCihYRU4pICAg LSBJUlE6IDYyNA0KKFhFTikgICAtIElSUTogNjI1DQooWEVOKSAgIC0gSVJROiA2MjYNCihYRU4p ICAgLSBJUlE6IDYyNw0KKFhFTikgICAtIElSUTogNjI4DQooWEVOKSAgIC0gSVJROiA2MjkNCihY RU4pICAgLSBJUlE6IDYzMA0KKFhFTikgICAtIElSUTogNjMxDQooWEVOKSAgIC0gSVJROiA2MzIN CihYRU4pICAgLSBJUlE6IDYzMw0KKFhFTikgICAtIElSUTogNjM0DQooWEVOKSAgIC0gSVJROiA2 MzUNCihYRU4pICAgLSBJUlE6IDYzNg0KKFhFTikgICAtIElSUTogNjM3DQooWEVOKSAgIC0gSVJR OiA2MzgNCihYRU4pICAgLSBJUlE6IDYzOQ0KKFhFTikgICAtIElSUTogNjQwDQooWEVOKSAgIC0g SVJROiA2NDENCihYRU4pICAgLSBJUlE6IDY0Mg0KKFhFTikgICAtIElSUTogNjQzDQooWEVOKSAg IC0gSVJROiA2NDQNCihYRU4pICAgLSBJUlE6IDY0NQ0KKFhFTikgICAtIElSUTogNjQ2DQooWEVO KSAgIC0gSVJROiA2NDcNCihYRU4pICAgLSBJUlE6IDY0OA0KKFhFTikgICAtIElSUTogNjQ5DQoo WEVOKSAgIC0gSVJROiA2NTANCihYRU4pICAgLSBJUlE6IDY1MQ0KKDIuLi4gMS4uLg0KKFhFTikg KioqIFNlcmlhbCBpbnB1dCB0byBET00wICh0eXBlICdDVFJMLWEnIHRocmVlIHRpbWVzIHRvIHN3 aXRjaCBpbnB1dCkNCihYRU4pIHNqdC10ZXN0OiBzZXJpYWwgZW5kYm9vdA0KKFhFTikgc2p0LXRl c3Q6IHhzbSBzZXQgc3lzdGVtIGFjdGl2ZQ0KKFhFTikgc2p0LXRlc3Q6IGRvbWFpbiB1bnBhdXNl IGJ5IHN5c3RlbWNvbnRyb2xsZXINCihYRU4pIHNqdC10ZXN0OiB1bnBhdXNlIGRvbWFpbnN3aXRj aCBzdGFjayBhbmQganVtcA0KKFhFTikgRnJlZWQgMzYwa0IgaW5pdCBtZW1vcnkuDQooWEVOKSBz anQtdGVzdDogbW9kaWZ5IHhlbiBtYXBwaW5ncw0KKFhFTikgc2p0LXRlc3Q6IHN0YXJ0dXAgY3B1 IGlkbGUgbG9vcA0KKFhFTikgZDB2MDogdkdJQ0Q6IFJBWiBvbiByZXNlcnZlZCByZWdpc3RlciBv ZmZzZXQgMHgwMDAwMGMNCihYRU4pIGQwdjA6IHZHSUNEOiB1bmhhbmRsZWQgd29yZCB3cml0ZSAw eDAwMDAwMGZmZmZmZmZmIHRvIElDQUNUSVZFUjQNCihYRU4pIGQwdjA6IHZHSUNEOiB1bmhhbmRs ZWQgd29yZCB3cml0ZSAweDAwMDAwMGZmZmZmZmZmIHRvIElDQUNUSVZFUjgNCihYRU4pIGQwdjA6 IHZHSUNEOiB1bmhhbmRsZWQgd29yZCB3cml0ZSAweDAwMDAwMGZmZmZmZmZmIHRvIElDQUNUSVZF UjEyDQooWEVOKSBkMHYwOiB2R0lDRDogdW5oYW5kbGVkIHdvcmQgd3JpdGUgMHgwMDAwMDBmZmZm ZmZmZiB0byBJQ0FDVElWRVIxNg0KKFhFTikgZDB2MDogdkdJQ0Q6IHVuaGFuZGxlZCB3b3JkIHdy aXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMjANCihYRU4pIGQwdjA6IHZHSUNEOiB1 bmhhbmRsZWQgd29yZCB3cml0ZSAweDAwMDAwMGZmZmZmZmZmIHRvIElDQUNUSVZFUjI0DQooWEVO KSBkMHYwOiB2R0lDRDogdW5oYW5kbGVkIHdvcmQgd3JpdGUgMHgwMDAwMDBmZmZmZmZmZiB0byBJ Q0FDVElWRVIyOA0KKFhFTikgZDB2MDogdkdJQ0Q6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAw MDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMzINCihYRU4pIGQwdjA6IHZHSUNEOiB1bmhhbmRsZWQg d29yZCB3cml0ZSAweDAwMDAwMGZmZmZmZmZmIHRvIElDQUNUSVZFUjM2DQooWEVOKSBkMHYwOiB2 R0lDRDogdW5oYW5kbGVkIHdvcmQgd3JpdGUgMHgwMDAwMDBmZmZmZmZmZiB0byBJQ0FDVElWRVI0 MA0KKFhFTikgZDB2MDogdkdJQ0Q6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZm ZmYgdG8gSUNBQ1RJVkVSNDQNCihYRU4pIGQwdjA6IHZHSUNEOiB1bmhhbmRsZWQgd29yZCB3cml0 ZSAweDAwMDAwMGZmZmZmZmZmIHRvIElDQUNUSVZFUjQ4DQooWEVOKSBkMHYwOiB2R0lDRDogdW5o YW5kbGVkIHdvcmQgd3JpdGUgMHgwMDAwMDBmZmZmZmZmZiB0byBJQ0FDVElWRVI1Mg0KKFhFTikg ZDB2MDogdkdJQ0Q6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNB Q1RJVkVSNTYNCihYRU4pIGQwdjA6IHZHSUNEOiB1bmhhbmRsZWQgd29yZCB3cml0ZSAweDAwMDAw MGZmZmZmZmZmIHRvIElDQUNUSVZFUjYwDQooWEVOKSBkMHYwOiB2R0lDRDogdW5oYW5kbGVkIHdv cmQgd3JpdGUgMHgwMDAwMDBmZmZmZmZmZiB0byBJQ0FDVElWRVI2NA0KKFhFTikgZDB2MDogdkdJ Q0Q6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSNjgN CihYRU4pIGQwdjA6IHZHSUNEOiB1bmhhbmRsZWQgd29yZCB3cml0ZSAweDAwMDAwMGZmZmZmZmZm IHRvIElDQUNUSVZFUjcyDQooWEVOKSBkMHYwOiB2R0lDRDogdW5oYW5kbGVkIHdvcmQgd3JpdGUg MHgwMDAwMDBmZmZmZmZmZiB0byBJQ0FDVElWRVI3Ng0KKFhFTikgZDB2MDogdkdJQ0Q6IHVuaGFu ZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSODANCihYRU4pIGQw djA6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8g SUNBQ1RJVkVSMA0KKFhFTikgZDB2MTogdkdJQ1I6IFNHSTogdW5oYW5kbGVkIHdvcmQgd3JpdGUg MHgwMDAwMDBmZmZmZmZmZiB0byBJQ0FDVElWRVIwDQooWEVOKSBkMHYyOiB2R0lDUjogU0dJOiB1 bmhhbmRsZWQgd29yZCB3cml0ZSAweDAwMDAwMGZmZmZmZmZmIHRvIElDQUNUSVZFUjANCihYRU4p IGQwdjM6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYg dG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2NDogdkdJQ1I6IFNHSTogdW5oYW5kbGVkIHdvcmQgd3Jp dGUgMHgwMDAwMDBmZmZmZmZmZiB0byBJQ0FDVElWRVIwDQooWEVOKSBkMHY1OiB2R0lDUjogU0dJ OiB1bmhhbmRsZWQgd29yZCB3cml0ZSAweDAwMDAwMGZmZmZmZmZmIHRvIElDQUNUSVZFUjANCihY RU4pIGQwdjY6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZm ZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2NzogdkdJQ1I6IFNHSTogdW5oYW5kbGVkIHdvcmQg d3JpdGUgMHgwMDAwMDBmZmZmZmZmZiB0byBJQ0FDVElWRVIwDQooWEVOKSBkMHY4OiB2R0lDUjog U0dJOiB1bmhhbmRsZWQgd29yZCB3cml0ZSAweDAwMDAwMGZmZmZmZmZmIHRvIElDQUNUSVZFUjAN CihYRU4pIGQwdjk6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZm ZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2MTA6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3 b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2MTE6IHZH SUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJ VkVSMA0KKFhFTikgZDB2MTI6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAw MDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2MTM6IHZHSUNSOiBTR0k6IHVuaGFu ZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2 MTQ6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8g SUNBQ1RJVkVSMA0KKFhFTikgZDB2MTU6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRl IDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2MTY6IHZHSUNSOiBTR0k6 IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhF TikgZDB2MTc6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZm ZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2MTg6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3Jk IHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2MTk6IHZHSUNS OiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVS MA0KKFhFTikgZDB2MjA6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAw ZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2MjE6IHZHSUNSOiBTR0k6IHVuaGFuZGxl ZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2MjI6 IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNB Q1RJVkVSMA0KKFhFTikgZDB2MjM6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4 MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2MjQ6IHZHSUNSOiBTR0k6IHVu aGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikg ZDB2MjU6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYg dG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2MjY6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdy aXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2Mjc6IHZHSUNSOiBT R0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0K KFhFTikgZDB2Mjg6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZm ZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2Mjk6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3 b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2MzA6IHZH SUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJ VkVSMA0KKFhFTikgZDB2MzE6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAw MDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2MzI6IHZHSUNSOiBTR0k6IHVuaGFu ZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2 MzM6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8g SUNBQ1RJVkVSMA0KKFhFTikgZDB2MzQ6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRl IDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2MzU6IHZHSUNSOiBTR0k6 IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhF TikgZDB2MzY6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZm ZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2Mzc6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3Jk IHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2Mzg6IHZHSUNS OiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVS MA0KKFhFTikgZDB2Mzk6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAw ZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2NDA6IHZHSUNSOiBTR0k6IHVuaGFuZGxl ZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2NDE6 IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNB Q1RJVkVSMA0KKFhFTikgZDB2NDI6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4 MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2NDM6IHZHSUNSOiBTR0k6IHVu aGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikg ZDB2NDQ6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYg dG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2NDU6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdy aXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2NDY6IHZHSUNSOiBT R0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0K KFhFTikgZDB2NDc6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZm ZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2NDg6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3 b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2NDk6IHZH SUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJ VkVSMA0KKFhFTikgZDB2NTA6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAw MDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2NTE6IHZHSUNSOiBTR0k6IHVuaGFu ZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2 NTI6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8g SUNBQ1RJVkVSMA0KKFhFTikgZDB2NTM6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRl IDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2NTQ6IHZHSUNSOiBTR0k6 IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhF TikgZDB2NTU6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZm ZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2NTY6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3Jk IHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2NTc6IHZHSUNS OiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVS MA0KKFhFTikgZDB2NTg6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAw ZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2NTk6IHZHSUNSOiBTR0k6IHVuaGFuZGxl ZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2NjA6 IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNB Q1RJVkVSMA0KKFhFTikgZDB2NjE6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4 MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2NjI6IHZHSUNSOiBTR0k6IHVu aGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikg ZDB2NjM6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYg dG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2NjQ6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdy aXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2NjU6IHZHSUNSOiBT R0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0K KFhFTikgZDB2NjY6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZm ZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2Njc6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3 b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2Njg6IHZH SUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJ VkVSMA0KKFhFTikgZDB2Njk6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAw MDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2NzA6IHZHSUNSOiBTR0k6IHVuaGFu ZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2 NzE6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8g SUNBQ1RJVkVSMA0KKFhFTikgZDB2NzI6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRl IDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2NzM6IHZHSUNSOiBTR0k6 IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhF TikgZDB2NzQ6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZm ZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2NzU6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3Jk IHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2NzY6IHZHSUNS OiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVS MA0KKFhFTikgZDB2Nzc6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAw ZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2Nzg6IHZHSUNSOiBTR0k6IHVuaGFuZGxl ZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2Nzk6 IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNB Q1RJVkVSMA0KKFhFTikgZDB2ODA6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4 MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2ODE6IHZHSUNSOiBTR0k6IHVu aGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikg ZDB2ODI6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYg dG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2ODM6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdy aXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2ODQ6IHZHSUNSOiBT R0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0K KFhFTikgZDB2ODU6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZm ZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2ODY6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3 b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2ODc6IHZH SUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJ VkVSMA0KKFhFTikgZDB2ODg6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAw MDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2ODk6IHZHSUNSOiBTR0k6IHVuaGFu ZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2 OTA6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8g SUNBQ1RJVkVSMA0KKFhFTikgZDB2OTE6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRl IDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2OTI6IHZHSUNSOiBTR0k6 IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhF TikgZDB2OTM6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZm ZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2OTQ6IHZHSUNSOiBTR0k6IHVuaGFuZGxlZCB3b3Jk IHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVSMA0KKFhFTikgZDB2OTU6IHZHSUNS OiBTR0k6IHVuaGFuZGxlZCB3b3JkIHdyaXRlIDB4MDAwMDAwZmZmZmZmZmYgdG8gSUNBQ1RJVkVS MA0KWyAgICAwLjU2MjYyMl0gcGNpIDAwMDA6MDA6MDAuMDogRmFpbGVkIHRvIGFkZCAtIHBhc3N0 aHJvdWdoIG9yIE1TSS9NU0ktWCBtaWdodCBmYWlsIQ0KWyAgICAwLjU2Mjc2M10gcGNpIDAwMDA6 MDA6MDQuMDogRmFpbGVkIHRvIGFkZCAtIHBhc3N0aHJvdWdoIG9yIE1TSS9NU0ktWCBtaWdodCBm YWlsIQ0KWyAgICAwLjU2Mjg5NV0gcGNpIDAwMDA6MDA6MDguMDogRmFpbGVkIHRvIGFkZCAtIHBh c3N0aHJvdWdoIG9yIE1TSS9NU0ktWCBtaWdodCBmYWlsIQ0KWyAgICAwLjU2MzAyM10gcGNpIDAw MDA6MDA6MGMuMDogRmFpbGVkIHRvIGFkZCAtIHBhc3N0aHJvdWdoIG9yIE1TSS9NU0ktWCBtaWdo dCBmYWlsIQ0KWyAgICAwLjU2MzE1MV0gcGNpIDAwMDA6MDA6MTAuMDogRmFpbGVkIHRvIGFkZCAt IHBhc3N0aHJvdWdoIG9yIE1TSS9NU0ktWCBtaWdodCBmYWlsIQ0KWyAgICAwLjU2MzI3Nl0gcGNp IDAwMDA6MDA6MTEuMDogRmFpbGVkIHRvIGFkZCAtIHBhc3N0aHJvdWdoIG9yIE1TSS9NU0ktWCBt aWdodCBmYWlsIQ0KWyAgICAwLjU2MzQwM10gcGNpIDAwMDA6MDA6MTIuMDogRmFpbGVkIHRvIGFk ZCAtIHBhc3N0aHJvdWdoIG9yIE1TSS9NU0ktWCBtaWdodCBmYWlsIQ0KWyAgICAwLjU2NzEzNF0g cGNpIDAwMDA6MDE6MDAuMDogRmFpbGVkIHRvIGFkZCAtIHBhc3N0aHJvdWdoIG9yIE1TSS9NU0kt WCBtaWdodCBmYWlsIQ0KWyAgICAwLjU3MDcxMF0gcGNpIDAwMDA6MDE6MDAuMTogRmFpbGVkIHRv IGFkZCAtIHBhc3N0aHJvdWdoIG9yIE1TSS9NU0ktWCBtaWdodCBmYWlsIQ0KWyAgICAwLjU3NDI0 N10gcGNpIDAwMDA6MDI6MDAuMDogRmFpbGVkIHRvIGFkZCAtIHBhc3N0aHJvdWdoIG9yIE1TSS9N U0ktWCBtaWdodCBmYWlsIQ0KWyAgICAwLjU3NzUzNF0gcGNpIDAwMDA6MDI6MDAuMTogRmFpbGVk IHRvIGFkZCAtIHBhc3N0aHJvdWdoIG9yIE1TSS9NU0ktWCBtaWdodCBmYWlsIQ0KWyAgICAwLjU3 NzgyNl0gcGNpIDAwMDA6MDM6MDAuMDogRmFpbGVkIHRvIGFkZCAtIHBhc3N0aHJvdWdoIG9yIE1T SS9NU0ktWCBtaWdodCBmYWlsIQ0KWyAgICAwLjU4MTMxNV0gcGNpIDAwMDA6MDQ6MDAuMDogRmFp bGVkIHRvIGFkZCAtIHBhc3N0aHJvdWdoIG9yIE1TSS9NU0ktWCBtaWdodCBmYWlsIQ0KWyAgICAw LjU4NDYxMl0gcGNpIDAwMDA6MDQ6MDAuMTogRmFpbGVkIHRvIGFkZCAtIHBhc3N0aHJvdWdoIG9y IE1TSS9NU0ktWCBtaWdodCBmYWlsIQ0KWyAgICAwLjU4NDkzNF0gcGNpIDAwMDA6MDU6MDAuMDog RmFpbGVkIHRvIGFkZCAtIHBhc3N0aHJvdWdoIG9yIE1TSS9NU0ktWCBtaWdodCBmYWlsIQ0KWyAg ICAwLjU4NTIwM10gcGNpIDAwMDA6MDY6MDAuMDogRmFpbGVkIHRvIGFkZCAtIHBhc3N0aHJvdWdo IG9yIE1TSS9NU0ktWCBtaWdodCBmYWlsIQ0KWyAgICAwLjU4NjM1Ml0gcGNpIDAwMDA6N2I6MDAu MDogRmFpbGVkIHRvIGFkZCAtIHBhc3N0aHJvdWdoIG9yIE1TSS9NU0ktWCBtaWdodCBmYWlsIQ0K WyAgICAwLjU4NzI1M10gcGNpIDAwMDA6N2E6MDAuMDogRmFpbGVkIHRvIGFkZCAtIHBhc3N0aHJv dWdoIG9yIE1TSS9NU0ktWCBtaWdodCBmYWlsIQ0KWyAgICAwLjU4NzMyMl0gcGNpIDAwMDA6N2E6 MDEuMDogRmFpbGVkIHRvIGFkZCAtIHBhc3N0aHJvdWdoIG9yIE1TSS9NU0ktWCBtaWdodCBmYWls IQ0KWyAgICAwLjU4NzM5MV0gcGNpIDAwMDA6N2E6MDIuMDogRmFpbGVkIHRvIGFkZCAtIHBhc3N0 aHJvdWdoIG9yIE1TSS9NU0ktWCBtaWdodCBmYWlsIQ0KWyAgICAwLjU4ODM1Ml0gcGNpIDAwMDA6 Nzg6MDAuMDogRmFpbGVkIHRvIGFkZCAtIHBhc3N0aHJvdWdoIG9yIE1TSS9NU0ktWCBtaWdodCBm YWlsIQ0KWyAgICAwLjU4ODQ4NF0gcGNpIDAwMDA6Nzg6MDEuMDogRmFpbGVkIHRvIGFkZCAtIHBh c3N0aHJvdWdoIG9yIE1TSS9NU0ktWCBtaWdodCBmYWlsIQ0KWyAgICAwLjU4ODY4Nl0gcGNpIDAw MDA6Nzk6MDAuMDogRmFpbGVkIHRvIGFkZCAtIHBhc3N0aHJvdWdoIG9yIE1TSS9NU0ktWCBtaWdo dCBmYWlsIQ0KWyAgICAwLjU4OTU3N10gQUNQSTogSU9SVDogW0Zpcm13YXJlIEJ1Z106IFttYXAg KF9fX19wdHJ2YWxfX19fKV0gY29uZmxpY3RpbmcgbWFwcGluZyBmb3IgaW5wdXQgSUQgMHg3YzAw DQpbICAgIDAuNTg5NTk2XSBBQ1BJOiBJT1JUOiBbRmlybXdhcmUgQnVnXTogYXBwbHlpbmcgd29y a2Fyb3VuZC4NClsgICAgMC41ODk2NDJdIHBjaSAwMDAwOjdjOjAwLjA6IEZhaWxlZCB0byBhZGQg LSBwYXNzdGhyb3VnaCBvciBNU0kvTVNJLVggbWlnaHQgZmFpbCENClsgICAgMC41ODk4MDBdIHBj aSAwMDAwOjdkOjAwLjA6IEZhaWxlZCB0byBhZGQgLSBwYXNzdGhyb3VnaCBvciBNU0kvTVNJLVgg bWlnaHQgZmFpbCENClsgICAgMC41ODk5MTVdIHBjaSAwMDAwOjdkOjAwLjE6IEZhaWxlZCB0byBh ZGQgLSBwYXNzdGhyb3VnaCBvciBNU0kvTVNJLVggbWlnaHQgZmFpbCENClsgICAgMC41OTAwMTdd IHBjaSAwMDAwOjdkOjAwLjI6IEZhaWxlZCB0byBhZGQgLSBwYXNzdGhyb3VnaCBvciBNU0kvTVNJ LVggbWlnaHQgZmFpbCENClsgICAgMC41OTAxMTddIHBjaSAwMDAwOjdkOjAwLjM6IEZhaWxlZCB0 byBhZGQgLSBwYXNzdGhyb3VnaCBvciBNU0kvTVNJLVggbWlnaHQgZmFpbCENClsgICAgMC41OTEx NjBdIHBjaSAwMDAwOjc0OjAwLjA6IEZhaWxlZCB0byBhZGQgLSBwYXNzdGhyb3VnaCBvciBNU0kv TVNJLVggbWlnaHQgZmFpbCENClsgICAgMC41OTEyNTldIHBjaSAwMDAwOjc0OjAxLjA6IEZhaWxl ZCB0byBhZGQgLSBwYXNzdGhyb3VnaCBvciBNU0kvTVNJLVggbWlnaHQgZmFpbCENClsgICAgMC41 OTEzNjBdIHBjaSAwMDAwOjc0OjAyLjA6IEZhaWxlZCB0byBhZGQgLSBwYXNzdGhyb3VnaCBvciBN U0kvTVNJLVggbWlnaHQgZmFpbCENClsgICAgMC41OTE0NDFdIHBjaSAwMDAwOjc0OjAzLjA6IEZh aWxlZCB0byBhZGQgLSBwYXNzdGhyb3VnaCBvciBNU0kvTVNJLVggbWlnaHQgZmFpbCENClsgICAg MC41OTE1NTNdIHBjaSAwMDAwOjc0OjA0LjA6IEZhaWxlZCB0byBhZGQgLSBwYXNzdGhyb3VnaCBv ciBNU0kvTVNJLVggbWlnaHQgZmFpbCENClsgICAgMC41OTE3NzRdIHBjaSAwMDAwOjc1OjAwLjA6 IEZhaWxlZCB0byBhZGQgLSBwYXNzdGhyb3VnaCBvciBNU0kvTVNJLVggbWlnaHQgZmFpbCENClsg ICAgMC41OTE5NjldIHBjaSAwMDAwOjc2OjAwLjA6IEZhaWxlZCB0byBhZGQgLSBwYXNzdGhyb3Vn aCBvciBNU0kvTVNJLVggbWlnaHQgZmFpbCENClsgICAgMC41OTMwOTddIHBjaSAwMDAwOjgwOjAw LjA6IEZhaWxlZCB0byBhZGQgLSBwYXNzdGhyb3VnaCBvciBNU0kvTVNJLVggbWlnaHQgZmFpbCEN ClsgICAgMC41OTMyNTldIHBjaSAwMDAwOjgwOjA0LjA6IEZhaWxlZCB0byBhZGQgLSBwYXNzdGhy b3VnaCBvciBNU0kvTVNJLVggbWlnaHQgZmFpbCENClsgICAgMC41OTM0MjZdIHBjaSAwMDAwOjgw OjEwLjA6IEZhaWxlZCB0byBhZGQgLSBwYXNzdGhyb3VnaCBvciBNU0kvTVNJLVggbWlnaHQgZmFp bCENClsgICAgMC41OTcyMTRdIHBjaSAwMDAwOjgxOjAwLjA6IEZhaWxlZCB0byBhZGQgLSBwYXNz dGhyb3VnaCBvciBNU0kvTVNJLVggbWlnaHQgZmFpbCENClsgICAgMC42MDA4MjZdIHBjaSAwMDAw OjgxOjAwLjE6IEZhaWxlZCB0byBhZGQgLSBwYXNzdGhyb3VnaCBvciBNU0kvTVNJLVggbWlnaHQg ZmFpbCENClsgICAgMC42MDQzOTldIHBjaSAwMDAwOjgyOjAwLjA6IEZhaWxlZCB0byBhZGQgLSBw YXNzdGhyb3VnaCBvciBNU0kvTVNJLVggbWlnaHQgZmFpbCENClsgICAgMC42MDc3MTVdIHBjaSAw MDAwOjgyOjAwLjE6IEZhaWxlZCB0byBhZGQgLSBwYXNzdGhyb3VnaCBvciBNU0kvTVNJLVggbWln aHQgZmFpbCENClsgICAgMC42MDg4NzBdIHBjaSAwMDAwOmJiOjAwLjA6IEZhaWxlZCB0byBhZGQg LSBwYXNzdGhyb3VnaCBvciBNU0kvTVNJLVggbWlnaHQgZmFpbCENClsgICAgMC42MDk4NDVdIHBj aSAwMDAwOmJhOjAwLjA6IEZhaWxlZCB0byBhZGQgLSBwYXNzdGhyb3VnaCBvciBNU0kvTVNJLVgg bWlnaHQgZmFpbCENClsgICAgMC42MDk5NDVdIHBjaSAwMDAwOmJhOjAxLjA6IEZhaWxlZCB0byBh ZGQgLSBwYXNzdGhyb3VnaCBvciBNU0kvTVNJLVggbWlnaHQgZmFpbCENClsgICAgMC42MTAwMzhd IHBjaSAwMDAwOmJhOjAyLjA6IEZhaWxlZCB0byBhZGQgLSBwYXNzdGhyb3VnaCBvciBNU0kvTVNJ LVggbWlnaHQgZmFpbCENClsgICAgMC42MTEwNzBdIHBjaSAwMDAwOmI4OjAwLjA6IEZhaWxlZCB0 byBhZGQgLSBwYXNzdGhyb3VnaCBvciBNU0kvTVNJLVggbWlnaHQgZmFpbCENClsgICAgMC42MTEy MDhdIHBjaSAwMDAwOmI4OjAxLjA6IEZhaWxlZCB0byBhZGQgLSBwYXNzdGhyb3VnaCBvciBNU0kv TVNJLVggbWlnaHQgZmFpbCENClsgICAgMC42MTE0NjhdIHBjaSAwMDAwOmI5OjAwLjA6IEZhaWxl ZCB0byBhZGQgLSBwYXNzdGhyb3VnaCBvciBNU0kvTVNJLVggbWlnaHQgZmFpbCENClsgICAgMC42 MTIzODJdIEFDUEk6IElPUlQ6IFtGaXJtd2FyZSBCdWddOiBbbWFwIChfX19fcHRydmFsX19fXyld IGNvbmZsaWN0aW5nIG1hcHBpbmcgZm9yIGlucHV0IElEIDB4YmMwMA0KWyAgICAwLjYxMjM5MF0g QUNQSTogSU9SVDogW0Zpcm13YXJlIEJ1Z106IGFwcGx5aW5nIHdvcmthcm91bmQuDQpbICAgIDAu NjEyNDM0XSBwY2kgMDAwMDpiYzowMC4wOiBGYWlsZWQgdG8gYWRkIC0gcGFzc3Rocm91Z2ggb3Ig TVNJL01TSS1YIG1pZ2h0IGZhaWwhDQpbICAgIDAuNjEzNTE1XSBwY2kgMDAwMDpiNDowMC4wOiBG YWlsZWQgdG8gYWRkIC0gcGFzc3Rocm91Z2ggb3IgTVNJL01TSS1YIG1pZ2h0IGZhaWwhDQpbICAg IDAuNjEzNjM0XSBwY2kgMDAwMDpiNDowMS4wOiBGYWlsZWQgdG8gYWRkIC0gcGFzc3Rocm91Z2gg b3IgTVNJL01TSS1YIG1pZ2h0IGZhaWwhDQpbICAgIDAuNjEzNzYwXSBwY2kgMDAwMDpiNDowMi4w OiBGYWlsZWQgdG8gYWRkIC0gcGFzc3Rocm91Z2ggb3IgTVNJL01TSS1YIG1pZ2h0IGZhaWwhDQpb ICAgIDAuNjEzODYyXSBwY2kgMDAwMDpiNDowMy4wOiBGYWlsZWQgdG8gYWRkIC0gcGFzc3Rocm91 Z2ggb3IgTVNJL01TSS1YIG1pZ2h0IGZhaWwhDQpbICAgIDAuNjEzOTg0XSBwY2kgMDAwMDpiNDow NC4wOiBGYWlsZWQgdG8gYWRkIC0gcGFzc3Rocm91Z2ggb3IgTVNJL01TSS1YIG1pZ2h0IGZhaWwh DQpbICAgIDAuNjE0MjQ5XSBwY2kgMDAwMDpiNTowMC4wOiBGYWlsZWQgdG8gYWRkIC0gcGFzc3Ro cm91Z2ggb3IgTVNJL01TSS1YIG1pZ2h0IGZhaWwhDQpbICAgIDAuNjE0NDcyXSBwY2kgMDAwMDpi NjowMC4wOiBGYWlsZWQgdG8gYWRkIC0gcGFzc3Rocm91Z2ggb3IgTVNJL01TSS1YIG1pZ2h0IGZh aWwhDQpbICAgIDEuMDk3MDgxXSBBQ1BJOiBJT1JUOiBbRmlybXdhcmUgQnVnXTogW21hcCAoX19f X3B0cnZhbF9fX18pXSBjb25mbGljdGluZyBtYXBwaW5nIGZvciBpbnB1dCBJRCAweDdjMDANClsg ICAgMS4wOTcwOTRdIEFDUEk6IElPUlQ6IFtGaXJtd2FyZSBCdWddOiBhcHBseWluZyB3b3JrYXJv dW5kLg0KWyAgICAxLjA5NzE3N10gQUNQSTogSU9SVDogW0Zpcm13YXJlIEJ1Z106IFttYXAgKF9f X19wdHJ2YWxfX19fKV0gY29uZmxpY3RpbmcgbWFwcGluZyBmb3IgaW5wdXQgSUQgMHhiYzAwDQpb ICAgIDEuMDk3MTg0XSBBQ1BJOiBJT1JUOiBbRmlybXdhcmUgQnVnXTogYXBwbHlpbmcgd29ya2Fy b3VuZC4NClsgICAgMS4wOTczMzldIEFDUEk6IElPUlQ6IFtGaXJtd2FyZSBCdWddOiBbbWFwIChf X19fcHRydmFsX19fXyldIGNvbmZsaWN0aW5nIG1hcHBpbmcgZm9yIGlucHV0IElEIDB4N2MwMA0K WyAgICAxLjA5NzM0N10gQUNQSTogSU9SVDogW0Zpcm13YXJlIEJ1Z106IGFwcGx5aW5nIHdvcmth cm91bmQuDQpbICAgIDEuMDk3Mzc4XSBBQ1BJOiBJT1JUOiBbRmlybXdhcmUgQnVnXTogW21hcCAo X19fX3B0cnZhbF9fX18pXSBjb25mbGljdGluZyBtYXBwaW5nIGZvciBpbnB1dCBJRCAweGJjMDAN ClsgICAgMS4wOTczODRdIEFDUEk6IElPUlQ6IFtGaXJtd2FyZSBCdWddOiBhcHBseWluZyB3b3Jr YXJvdW5kLg0KWyAgICAxLjMyOTU5OV0gaW50ZWdyaXR5OiBDb3VsZG4ndCBnZXQgc2l6ZTogMHg4 MDAwMDAwMDAwMDAwMDAzDQpbICAgIDEuMzI5NjI2XSBpbnRlZ3JpdHk6IE1PRFNJR046IENvdWxk bid0IGdldCBVRUZJIGRiIGxpc3QNClsgICAgMS4zMjk2MzFdIGludGVncml0eTogQ291bGRuJ3Qg Z2V0IHNpemU6IDB4ODAwMDAwMDAwMDAwMDAwMw0KWyAgICAxLjM0NDc4Ml0gQUNQSTogSU9SVDog W0Zpcm13YXJlIEJ1Z106IFttYXAgKF9fX19wdHJ2YWxfX19fKV0gY29uZmxpY3RpbmcgbWFwcGlu ZyBmb3IgaW5wdXQgSUQgMHg3YzAwDQpbICAgIDEuMzQ0Nzk0XSBBQ1BJOiBJT1JUOiBbRmlybXdh cmUgQnVnXTogYXBwbHlpbmcgd29ya2Fyb3VuZC4NClsgICAgMS4zNTQ0ODldIEFDUEk6IElPUlQ6 IFtGaXJtd2FyZSBCdWddOiBbbWFwIChfX19fcHRydmFsX19fXyldIGNvbmZsaWN0aW5nIG1hcHBp bmcgZm9yIGlucHV0IElEIDB4YmMwMA0KWyAgICAxLjM1NDUwMV0gQUNQSTogSU9SVDogW0Zpcm13 YXJlIEJ1Z106IGFwcGx5aW5nIHdvcmthcm91bmQuDQpbICAgIDEuODc4NTEyXSBobnMzIDAwMDA6 N2Q6MDAuMDogZmFpbGVkIHRvIHF1ZXJ5IHZlcnNpb24gYW5kIGNhcGFiaWxpdGllcywgcmV0ID0g LTUyDQpbICAgIDEuODg3MDg2XSB7MX1bSGFyZHdhcmUgRXJyb3JdOiBIYXJkd2FyZSBlcnJvciBm cm9tIEFQRUkgR2VuZXJpYyBIYXJkd2FyZSBFcnJvciBTb3VyY2U6IDMNClsgICAgMS44ODcxMTVd IHsxfVtIYXJkd2FyZSBFcnJvcl06IGV2ZW50IHNldmVyaXR5OiByZWNvdmVyYWJsZQ0KWyAgICAx Ljg4NzEyMV0gezF9W0hhcmR3YXJlIEVycm9yXTogIEVycm9yIDAsIHR5cGU6IHJlY292ZXJhYmxl DQpbICAgIDEuODg3MTI2XSB7MX1bSGFyZHdhcmUgRXJyb3JdOiAgIHNlY3Rpb25fdHlwZTogUENJ ZSBlcnJvcg0KWyAgICAxLjg4NzEzMV0gezF9W0hhcmR3YXJlIEVycm9yXTogICB2ZXJzaW9uOiA0 LjANClsgICAgMS44ODcxMzZdIHsxfVtIYXJkd2FyZSBFcnJvcl06ICAgY29tbWFuZDogMHgwMDA2 LCBzdGF0dXM6IDB4MDAxMA0KWyAgICAxLjg4NzE0MV0gezF9W0hhcmR3YXJlIEVycm9yXTogICBk ZXZpY2VfaWQ6IDAwMDA6N2Q6MDAuMw0KWyAgICAxLjg4NzE0NV0gezF9W0hhcmR3YXJlIEVycm9y XTogICBzbG90OiAwDQpbICAgIDEuODg3MTQ5XSB7MX1bSGFyZHdhcmUgRXJyb3JdOiAgIHNlY29u ZGFyeV9idXM6IDB4MDANClsgICAgMS44ODcxNTNdIHsxfVtIYXJkd2FyZSBFcnJvcl06ICAgdmVu ZG9yX2lkOiAweDE5ZTUsIGRldmljZV9pZDogMHhhMjIxDQpbICAgIDEuODg3MTYyXSB7MX1bSGFy ZHdhcmUgRXJyb3JdOiAgIGNsYXNzX2NvZGU6IDAyMDAwMA0KWyAgICAxLjg4NzE3OF0gezJ9W0hh cmR3YXJlIEVycm9yXTogSGFyZHdhcmUgZXJyb3IgZnJvbSBBUEVJIEdlbmVyaWMgSGFyZHdhcmUg RXJyb3IgU291cmNlOiAyDQpbICAgIDEuODg3MTg0XSB7Mn1bSGFyZHdhcmUgRXJyb3JdOiBldmVu dCBzZXZlcml0eTogcmVjb3ZlcmFibGUNClsgICAgMS44ODcxOTBdIHsyfVtIYXJkd2FyZSBFcnJv cl06ICBFcnJvciAwLCB0eXBlOiByZWNvdmVyYWJsZQ0KWyAgICAxLjg4NzE5NV0gezJ9W0hhcmR3 YXJlIEVycm9yXTogICBzZWN0aW9uX3R5cGU6IFBDSWUgZXJyb3INClsgICAgMS44ODcxOTldIHsy fVtIYXJkd2FyZSBFcnJvcl06ICAgdmVyc2lvbjogNC4wDQpbICAgIDEuODg3MjI3XSB7Mn1bSGFy ZHdhcmUgRXJyb3JdOiAgIGNvbW1hbmQ6IDB4MDAwNiwgc3RhdHVzOiAweDAwMTANClsgICAgMS44 ODcyMzJdIHsyfVtIYXJkd2FyZSBFcnJvcl06ICAgZGV2aWNlX2lkOiAwMDAwOjdkOjAwLjINClsg ICAgMS44ODcyMzZdIHsyfVtIYXJkd2FyZSBFcnJvcl06ICAgc2xvdDogMA0KWyAgICAxLjg4NzI0 MV0gezJ9W0hhcmR3YXJlIEVycm9yXTogICBzZWNvbmRhcnlfYnVzOiAweDAwDQpbICAgIDEuODg3 MjQ2XSB7Mn1bSGFyZHdhcmUgRXJyb3JdOiAgIHZlbmRvcl9pZDogMHgxOWU1LCBkZXZpY2VfaWQ6 IDB4YTIyMg0KWyAgICAxLjg4NzI1MV0gezJ9W0hhcmR3YXJlIEVycm9yXTogICBjbGFzc19jb2Rl OiAwMjAwMDANClsgICAgMS44ODcyOTddIHBjaSAwMDAwOjdkOjAwLjM6IEFFUjogYWVyX3N0YXR1 czogMHgwMDQwMDAwMCwgYWVyX21hc2s6IDB4MDAwMDAwMDANClsgICAgMS44ODczMDRdIHBjaSAw MDAwOjdkOjAwLjM6ICAgIFsyMl0gVW5jb3JySW50RXJyDQpbICAgIDEuODg3MzExXSBwY2kgMDAw MDo3ZDowMC4zOiBBRVI6IGFlcl9sYXllcj1UcmFuc2FjdGlvbiBMYXllciwgYWVyX2FnZW50PVJl Y2VpdmVyIElEDQpbICAgIDEuODg3MzE3XSBwY2kgMDAwMDo3ZDowMC4zOiBBRVI6IGFlcl91bmNv cl9zZXZlcml0eTogMHgwMDAwMDAwMA0KWyAgICAxLjg4OTkzOF0gaGlzaV9zYXNfdjNfaHcgMDAw MDo3NDowMi4wOiAxNiBodyBxdWV1ZXMNClsgICAgMi4zMDMzNDVdIGhuczMgMDAwMDo3ZDowMC4w OiBpbml0IGFlX2RldiBlcnJvciwgcmV0ID0gLTUyDQpbICAgIDIuMzM4MDc1XSBobnMzIDAwMDA6 N2Q6MDAuMTogZmFpbGVkIHRvIHF1ZXJ5IHZlcnNpb24gYW5kIGNhcGFiaWxpdGllcywgcmV0ID0g LTUyDQpbICAgIDIuNDI5ODE3XSBlaGNpLXBjaSAwMDAwOjdhOjAxLjA6IGZhdGFsIGVycm9yDQpb ICAgIDIuNDI5ODUyXSBlaGNpLXBjaSAwMDAwOjdhOjAxLjA6IEhDIGRpZWQ7IGNsZWFuaW5nIHVw DQpbICAgIDIuNTQ1Nzc3XSBobnMzIDAwMDA6N2Q6MDAuMTogaW5pdCBhZV9kZXYgZXJyb3IsIHJl dCA9IC01Mg0KWyAgICAyLjU4MDM2MF0gaG5zMyAwMDAwOjdkOjAwLjI6IGZhaWxlZCB0byBxdWVy eSB2ZXJzaW9uIGFuZCBjYXBhYmlsaXRpZXMsIHJldCA9IC01Mg0KWyAgICAyLjc4NTk1NF0gaG5z MyAwMDAwOjdkOjAwLjI6IGluaXQgYWVfZGV2IGVycm9yLCByZXQgPSAtNTINClsgICAgMi44MjA2 MDhdIGhuczMgMDAwMDo3ZDowMC4zOiBmYWlsZWQgdG8gcXVlcnkgdmVyc2lvbiBhbmQgY2FwYWJp bGl0aWVzLCByZXQgPSAtNTINClsgICAgMi44MjE2ODBdIG9oY2ktcGNpIDAwMDA6N2E6MDAuMDog T0hDSSBVbnJlY292ZXJhYmxlIEVycm9yLCBkaXNhYmxlZA0KWyAgICAyLjgyMTcwM10gb2hjaS1w Y2kgMDAwMDo3YTowMC4wOiBIQyBkaWVkOyBjbGVhbmluZyB1cA0KWyAgICAyLjgyNDc3M10gb2hj aS1wY2kgMDAwMDo3YTowMC4wOiBpbml0IDAwMDA6N2E6MDAuMCBmYWlsLCAtMTA4DQpbICAgIDIu ODg2ODIwXSBvaGNpLXBjaSAwMDAwOmJhOjAwLjA6IE9IQ0kgVW5yZWNvdmVyYWJsZSBFcnJvciwg ZGlzYWJsZWQNClsgICAgMi44ODY4NjddIG9oY2ktcGNpIDAwMDA6YmE6MDAuMDogSEMgZGllZDsg Y2xlYW5pbmcgdXANClsgICAgMi44ODk5MDBdIG9oY2ktcGNpIDAwMDA6YmE6MDAuMDogaW5pdCAw MDAwOmJhOjAwLjAgZmFpbCwgLTEwOA0KWyAgIDIzLjk0NTcyMV0gcmN1OiBJTkZPOiByY3Vfc2No ZWQgc2VsZi1kZXRlY3RlZCBzdGFsbCBvbiBDUFUNClsgICAyMy45NDU3NTRdIHJjdTogICAgIDAt Li4uLjogKDUyNDkgdGlja3MgdGhpcyBHUCkgaWRsZT1lMzIvMS8weDQwMDAwMDAwMDAwMDAwMDIg c29mdGlycT0xMjMvMTIzIGZxcz0yNjI1DQpbICAgNDguMDI1NzI1XSB3YXRjaGRvZzogQlVHOiBz b2Z0IGxvY2t1cCAtIENQVSMwIHN0dWNrIGZvciAyMnMhIFtrd29ya2VyLzA6OTo3OTRdDQpbICAg NjMuMDc4MjMzXSBscGZjIDAwMDA6MDE6MDAuMDogMDozMDI2IE1haWxib3ggZmFpbGVkICwgbWJ4 Q21kIHg5YiBHRVRfRlVOQ1RJT05fQ09ORklHLCBtYnhTdGF0dXMgeDANClsgICA2My4wNzgzMzBd IG1seDVfY29yZSAwMDAwOjAyOjAwLjA6IG1seDVfZnVuY3Rpb25fc2V0dXA6OTg1OihwaWQgNzU3 KTogZW5hYmxlIGhjYSBmYWlsZWQNClsgICA2My4wOTU5NjZdIGhuczMgMDAwMDo3ZDowMC4zOiBp bml0IGFlX2RldiBlcnJvciwgcmV0ID0gLTUyDQpbICAgNjMuMDk2NzI2XSBtbHg1X2NvcmUgMDAw MDowMjowMC4wOiBpbml0X29uZToxMzczOihwaWQgNzU3KTogbWx4NV9sb2FkX29uZSBmYWlsZWQg d2l0aCBlcnJvciBjb2RlIC0xMTANClsgICA2My4wOTY3OTZdIHBjaSAwMDAwOjdkOjAwLjI6IEFF UjogYWVyX3N0YXR1czogMHgwMDQwMDAwMCwgYWVyX21hc2s6IDB4MDAwMDAwMDANClsgICA2My4w OTY4MDRdIHBjaSAwMDAwOjdkOjAwLjI6ICAgIFsyMl0gVW5jb3JySW50RXJyDQpbICAgNjMuMDk2 ODExXSBwY2kgMDAwMDo3ZDowMC4yOiBBRVI6IGFlcl9sYXllcj1UcmFuc2FjdGlvbiBMYXllciwg YWVyX2FnZW50PVJlY2VpdmVyIElEDQpbICAgNjMuMDk2ODE3XSBwY2kgMDAwMDo3ZDowMC4yOiBB RVI6IGFlcl91bmNvcl9zZXZlcml0eTogMHgwMDAwMDAwMA0KWyAgIDYzLjA5Njg0MV0gcGNpIDAw MDA6N2Q6MDAuMTogQUVSOiBhZXJfc3RhdHVzOiAweDAwNDAwMDAwLCBhZXJfbWFzazogMHgwMDAw MDAwMA0KWyAgIDYzLjA5Njg0N10gcGNpIDAwMDA6N2Q6MDAuMTogICAgWzIyXSBVbmNvcnJJbnRF cnINClsgICA2My4wOTY4NTJdIHBjaSAwMDAwOjdkOjAwLjE6IEFFUjogYWVyX2xheWVyPVRyYW5z YWN0aW9uIExheWVyLCBhZXJfYWdlbnQ9UmVjZWl2ZXIgSUQNClsgICA2My4wOTY4NThdIHBjaSAw MDAwOjdkOjAwLjE6IEFFUjogYWVyX3VuY29yX3NldmVyaXR5OiAweDAwMDAwMDAwDQpbICAgNjMu MDk2ODc4XSBwY2kgMDAwMDo3ZDowMC4wOiBBRVI6IGFlcl9zdGF0dXM6IDB4MDAwMDgwMDAsIGFl cl9tYXNrOiAweDA0NTAwMDAwDQpbICAgNjMuMDk2ODg1XSBwY2kgMDAwMDo3ZDowMC4wOiAgICBb MTVdIENtcGx0QWJydCAgICAgICAgICAgICAgKEZpcnN0KQ0KWyAgIDYzLjA5Njg5MV0gcGNpIDAw MDA6N2Q6MDAuMDogQUVSOiBhZXJfbGF5ZXI9VHJhbnNhY3Rpb24gTGF5ZXIsIGFlcl9hZ2VudD1D b21wbGV0ZXIgSUQNClsgICA2My4wOTY4OTddIHBjaSAwMDAwOjdkOjAwLjA6IEFFUjogYWVyX3Vu Y29yX3NldmVyaXR5OiAweDAwNDYyMDMwDQpbICAgNjMuMDk2OTAyXSBwY2kgMDAwMDo3ZDowMC4w OiBBRVI6ICAgVExQIEhlYWRlcjogNjAwMDAwMTAgMDIwMDAwZmYgMDAwMDAwNDIgOGFjMWMwMDAN ClsgICA2My4wOTY5MTldIHBjaWVwb3J0IDAwMDA6MDA6MDQuMDogQUVSOiBhZXJfc3RhdHVzOiAw eDAwMDA4MDAwLCBhZXJfbWFzazogMHgwNDUwMDAwMA0KWyAgIDYzLjA5NjkyNl0gcGNpZXBvcnQg MDAwMDowMDowNC4wOiAgICBbMTVdIENtcGx0QWJydCAgICAgICAgICAgICAgKEZpcnN0KQ0KWyAg IDYzLjA5NjkzMV0gcGNpZXBvcnQgMDAwMDowMDowNC4wOiBBRVI6IGFlcl9sYXllcj1UcmFuc2Fj dGlvbiBMYXllciwgYWVyX2FnZW50PUNvbXBsZXRlciBJRA0KWyAgIDYzLjA5NjkzN10gcGNpZXBv cnQgMDAwMDowMDowNC4wOiBBRVI6IGFlcl91bmNvcl9zZXZlcml0eTogMHgwMDQ2MjAzMA0KWyAg IDYzLjA5Njk0M10gcGNpZXBvcnQgMDAwMDowMDowNC4wOiBBRVI6ICAgVExQIEhlYWRlcjogNjAw MDAwMTAgMDIwMDAwZmYgMDAwMDAwNDIgOGFjMWMwMDANClsgICA2My4wOTgyNjhdIGxwZmMgMDAw MDowMTowMC4wOiAwOjE0MTIgRmFpbGVkIHRvIHNldCB1cCBkcml2ZXIgcmVzb3VyY2UuDQpbICAg NjMuMTE4MjczXSB7M31bSGFyZHdhcmUgRXJyb3JdOiBIYXJkd2FyZSBlcnJvciBmcm9tIEFQRUkg R2VuZXJpYyBIYXJkd2FyZSBFcnJvciBTb3VyY2U6IDANClsgICA2My4xMTgyODNdIHszfVtIYXJk d2FyZSBFcnJvcl06IGV2ZW50IHNldmVyaXR5OiByZWNvdmVyYWJsZQ0KWyAgIDYzLjExODI5MF0g ezN9W0hhcmR3YXJlIEVycm9yXTogIEVycm9yIDAsIHR5cGU6IHJlY292ZXJhYmxlDQpbICAgNjMu MTE4Mjk2XSB7M31bSGFyZHdhcmUgRXJyb3JdOiAgIHNlY3Rpb25fdHlwZTogUENJZSBlcnJvcg0K WyAgIDYzLjExODMwMV0gezN9W0hhcmR3YXJlIEVycm9yXTogICBwb3J0X3R5cGU6IDQsIHJvb3Qg cG9ydA0KWyAgIDYzLjExODMwNV0gezN9W0hhcmR3YXJlIEVycm9yXTogICB2ZXJzaW9uOiA0LjAN ClsgICA2My4xMTgzMDldIHszfVtIYXJkd2FyZSBFcnJvcl06ICAgY29tbWFuZDogMHgwNTQ3LCBz dGF0dXM6IDB4NDAxMA0KWyAgIDYzLjExODMxNF0gezN9W0hhcmR3YXJlIEVycm9yXTogICBkZXZp Y2VfaWQ6IDAwMDA6MDA6MDQuMA0KWyAgIDYzLjExODMxOV0gezN9W0hhcmR3YXJlIEVycm9yXTog ICBzbG90OiAwDQpbICAgNjMuMTE4MzIyXSB7M31bSGFyZHdhcmUgRXJyb3JdOiAgIHNlY29uZGFy eV9idXM6IDB4MDINClsgICA2My4xMTgzMjZdIHszfVtIYXJkd2FyZSBFcnJvcl06ICAgdmVuZG9y X2lkOiAweDE5ZTUsIGRldmljZV9pZDogMHhhMTIwDQpbICAgNjMuMTE4MzMxXSB7M31bSGFyZHdh cmUgRXJyb3JdOiAgIGNsYXNzX2NvZGU6IDA2MDQwMA0KWyAgIDYzLjExODMzNV0gezN9W0hhcmR3 YXJlIEVycm9yXTogICBicmlkZ2U6IHNlY29uZGFyeV9zdGF0dXM6IDB4MDgwMCwgY29udHJvbDog MHgwMDAwDQpbICAgNjMuMzIyOTQ2XSBjbWE6IGNtYV9hbGxvYzogYWxsb2MgZmFpbGVkLCByZXEt c2l6ZTogMTAyNCBwYWdlcywgcmV0OiAtMTINClsgICA2My4zMjUyNzddIGhpc2lfc2FzX3YzX2h3 IDAwMDA6NzQ6MDQuMDogMTYgaHcgcXVldWVzDQpbICAgODguMDI1NzIyXSB3YXRjaGRvZzogQlVH OiBzb2Z0IGxvY2t1cCAtIENQVSMwIHN0dWNrIGZvciAyMnMhIFtrd29ya2VyLzA6OTo3OTRdDQoN Cg0KDQoNCg0KDQpbICAxMTIuMDI1NzIyXSB3YXRjaGRvZzogQlVHOiBzb2Z0IGxvY2t1cCAtIENQ VSMwIHN0dWNrIGZvciAyM3MhIFtrd29ya2VyLzA6OTo3OTRdDQpbICAxMjMuODc4NjE3XSBscGZj IDAwMDA6MDE6MDAuMTogMDozMDI2IE1haWxib3ggZmFpbGVkICwgbWJ4Q21kIHg5YiBHRVRfRlVO Q1RJT05fQ09ORklHLCBtYnhTdGF0dXMgeDANClsgIDEyMy44NzkyOTBdIGxwZmMgMDAwMDowMTow MC4xOiAwOjE0MTIgRmFpbGVkIHRvIHNldCB1cCBkcml2ZXIgcmVzb3VyY2UuDQpbICAxMjQuMTA1 NzUxXSBtbHg1X2NvcmUgMDAwMDowMjowMC4xOiBtbHg1X2Z1bmN0aW9uX3NldHVwOjk4NToocGlk IDc1Nyk6IGVuYWJsZSBoY2EgZmFpbGVkDQpbICAxMjQuMTI0NjIxXSBtbHg1X2NvcmUgMDAwMDow MjowMC4xOiBpbml0X29uZToxMzczOihwaWQgNzU3KTogbWx4NV9sb2FkX29uZSBmYWlsZWQgd2l0 aCBlcnJvciBjb2RlIC0xMTANClsgIDEyNC4xMjQ5MDZdIHBjaWVwb3J0IDAwMDA6MDA6MDQuMDog QUVSOiBhZXJfc3RhdHVzOiAweDAwMDA4MDAwLCBhZXJfbWFzazogMHgwNDUwMDAwMA0KWyAgMTI0 LjEyNDkxNl0gcGNpZXBvcnQgMDAwMDowMDowNC4wOiAgICBbMTVdIENtcGx0QWJydCAgICAgICAg ICAgICAgKEZpcnN0KQ0KWyAgMTI0LjEyNDkyM10gcGNpZXBvcnQgMDAwMDowMDowNC4wOiBBRVI6 IGFlcl9sYXllcj1UcmFuc2FjdGlvbiBMYXllciwgYWVyX2FnZW50PUNvbXBsZXRlciBJRA0KWyAg MTI0LjEyNDkyOV0gcGNpZXBvcnQgMDAwMDowMDowNC4wOiBBRVI6IGFlcl91bmNvcl9zZXZlcml0 eTogMHgwMDQ2MjAzMA0KWyAgMTI0LjEyNDkzNV0gcGNpZXBvcnQgMDAwMDowMDowNC4wOiBBRVI6 ICAgVExQIEhlYWRlcjogNjAwMDAwMTAgMDIwMTAwZmYgMDAwMDAwNDIgOGQ1YWUwMDANClsgIDEy NC4xNDgzMjRdIHs0fVtIYXJkd2FyZSBFcnJvcl06IEhhcmR3YXJlIGVycm9yIGZyb20gQVBFSSBH ZW5lcmljIEhhcmR3YXJlIEVycm9yIFNvdXJjZTogMA0KWyAgMTI0LjE0ODMzNF0gezR9W0hhcmR3 YXJlIEVycm9yXTogZXZlbnQgc2V2ZXJpdHk6IHJlY292ZXJhYmxlDQpbICAxMjQuMTQ4MzQwXSB7 NH1bSGFyZHdhcmUgRXJyb3JdOiAgRXJyb3IgMCwgdHlwZTogcmVjb3ZlcmFibGUNClsgIDEyNC4x NDgzNDZdIHs0fVtIYXJkd2FyZSBFcnJvcl06ICAgc2VjdGlvbl90eXBlOiBQQ0llIGVycm9yDQpb ICAxMjQuMTQ4MzUxXSB7NH1bSGFyZHdhcmUgRXJyb3JdOiAgIHBvcnRfdHlwZTogNCwgcm9vdCBw b3J0DQpbICAxMjQuMTQ4MzU2XSB7NH1bSGFyZHdhcmUgRXJyb3JdOiAgIHZlcnNpb246IDQuMA0K WyAgMTI0LjE0ODM2MF0gezR9W0hhcmR3YXJlIEVycm9yXTogICBjb21tYW5kOiAweDA1NDcsIHN0 YXR1czogMHg0MDEwDQpbICAxMjQuMTQ4MzY1XSB7NH1bSGFyZHdhcmUgRXJyb3JdOiAgIGRldmlj ZV9pZDogMDAwMDowMDowYy4wDQpbICAxMjQuMTQ4MzY5XSB7NH1bSGFyZHdhcmUgRXJyb3JdOiAg IHNsb3Q6IDANClsgIDEyNC4xNDgzNzNdIHs0fVtIYXJkd2FyZSBFcnJvcl06ICAgc2Vjb25kYXJ5 X2J1czogMHgwNA0KWyAgMTI0LjE0ODM3N10gezR9W0hhcmR3YXJlIEVycm9yXTogICB2ZW5kb3Jf aWQ6IDB4MTllNSwgZGV2aWNlX2lkOiAweGExMjANClsgIDEyNC4xNDgzODJdIHs0fVtIYXJkd2Fy ZSBFcnJvcl06ICAgY2xhc3NfY29kZTogMDYwNDAwDQpbICAxMjQuMTQ4Mzg3XSB7NH1bSGFyZHdh cmUgRXJyb3JdOiAgIGJyaWRnZTogc2Vjb25kYXJ5X3N0YXR1czogMHgyODAwLCBjb250cm9sOiAw eDAwMDANClsgIDEyNC4xNDg0MDhdIHBjaWVwb3J0IDAwMDA6MDA6MGMuMDogQUVSOiBhZXJfc3Rh dHVzOiAweDAwMDA4MDAwLCBhZXJfbWFzazogMHgwNDUwMDAwMA0KWyAgMTI0LjE0ODQxNF0gcGNp ZXBvcnQgMDAwMDowMDowYy4wOiAgICBbMTVdIENtcGx0QWJydCAgICAgICAgICAgICAgKEZpcnN0 KQ0KWyAgMTI0LjE0ODQyMF0gcGNpZXBvcnQgMDAwMDowMDowYy4wOiBBRVI6IGFlcl9sYXllcj1U cmFuc2FjdGlvbiBMYXllciwgYWVyX2FnZW50PUNvbXBsZXRlciBJRA0KWyAgMTI0LjE0ODQyN10g cGNpZXBvcnQgMDAwMDowMDowYy4wOiBBRVI6IGFlcl91bmNvcl9zZXZlcml0eTogMHgwMDQ2MjAz MA0KWyAgMTI0LjE0ODQzMl0gcGNpZXBvcnQgMDAwMDowMDowYy4wOiBBRVI6ICAgVExQIEhlYWRl cjogNjAwMDAwMTAgMDQwMDAwZmYgMDAwMDAwNDIgOGQ1YWYwMDANClsgIDEyOS45Mjk3MzRdIG1l Z2FyYWlkX3NhcyAwMDAwOjAzOjAwLjA6IEluaXQgY21kIHJldHVybiBzdGF0dXMgRkFJTEVEIGZv ciBTQ1NJIGhvc3QgMA0KWyAgMTQ1LjA2MTcyMl0gcmN1OiBJTkZPOiByY3Vfc2NoZWQgc2VsZi1k ZXRlY3RlZCBzdGFsbCBvbiBDUFUNClsgIDE0NS4wNjE3NjJdIHJjdTogICAgIDQ4LS4uLi46ICg1 MjQ5IHRpY2tzIHRoaXMgR1ApIGlkbGU9MmUyLzEvMHg0MDAwMDAwMDAwMDAwMDAyIHNvZnRpcnE9 NjYvNjYgZnFzPTI2MjUNCkdhdmUgdXAgd2FpdGluZyBmb3Igc3VzcGVuZC9yZXN1bWUgZGV2aWNl DQpHYXZlIHVwIHdhaXRpbmcgZm9yIHJvb3QgZmlsZSBzeXN0ZW0gZGV2aWNlLiAgQ29tbW9uIHBy b2JsZW1zOg0KIC0gQm9vdCBhcmdzIChjYXQgL3Byb2MvY21kbGluZSkNCiAgIC0gQ2hlY2sgcm9v dGRlbGF5PSAoZGlkIHRoZSBzeXN0ZW0gd2FpdCBsb25nIGVub3VnaD8pDQogLSBNaXNzaW5nIG1v ZHVsZXMgKGNhdCAvcHJvYy9tb2R1bGVzOyBscyAvZGV2KQ0KQUxFUlQhICBVVUlEPTVlYmMyM2Fm LWMyZTItNGFjMy1iMzA4LTNlODJlYzc4NmMwNCBkb2VzIG5vdCBleGlzdC4gIERyb3BwaW5nIHRv IGEgc2hlbGwhDQoNCg0KQnVzeUJveCB2MS4zMC4xIChEZWJpYW4gMToxLjMwLjEtNitiMykgYnVp bHQtaW4gc2hlbGwgKGFzaCkNCkVudGVyICdoZWxwJyBmb3IgYSBsaXN0IG9mIGJ1aWx0LWluIGNv bW1hbmRzLg0KDQooaW5pdHJhbWZzKQ0KKGluaXRyYW1mcykNCihpbml0cmFtZnMpDQooaW5pdHJh bWZzKQ0KKGluaXRyYW1mcykNCihpbml0cmFtZnMpDQooaW5pdHJhbWZzKSBbICAxNzIuMDQ5NzI0 XSB3YXRjaGRvZzogQlVHOiBzb2Z0IGxvY2t1cCAtIENQVSM0OCBzdHVjayBmb3IgMjNzISBba3dv cmtlci80ODoyOjc3OF0NClsgIDE4NC4xODM1MjddIGxwZmMgMDAwMDo4MTowMC4wOiAwOjMwMjYg TWFpbGJveCBmYWlsZWQgLCBtYnhDbWQgeDliIEdFVF9GVU5DVElPTl9DT05GSUcsIG1ieFN0YXR1 cyB4MA0KWyAgMTg0LjE4NDAzNV0gbHBmYyAwMDAwOjgxOjAwLjA6IDA6MTQxMiBGYWlsZWQgdG8g c2V0IHVwIGRyaXZlciByZXNvdXJjZS4NClsgIDE4NC4xODQ2OTddIGNtYTogY21hX2FsbG9jOiBh bGxvYyBmYWlsZWQsIHJlcS1zaXplOiA2NCBwYWdlcywgcmV0OiAtMTINClsgIDE4NC4xODQ3MzNd IGNtYTogY21hX2FsbG9jOiBhbGxvYyBmYWlsZWQsIHJlcS1zaXplOiAxNiBwYWdlcywgcmV0OiAt MTINClsgIDE4NC4xODQ3NDddIGNtYTogY21hX2FsbG9jOiBhbGxvYyBmYWlsZWQsIHJlcS1zaXpl OiA2NCBwYWdlcywgcmV0OiAtMTINClsgIDE4NC4xODQ3NzldIGNtYTogY21hX2FsbG9jOiBhbGxv YyBmYWlsZWQsIHJlcS1zaXplOiAxNiBwYWdlcywgcmV0OiAtMTINClsgIDE4NC4xODQ3OTNdIGNt YTogY21hX2FsbG9jOiBhbGxvYyBmYWlsZWQsIHJlcS1zaXplOiA2NCBwYWdlcywgcmV0OiAtMTIN ClsgIDE4NC4xODQ4MjRdIGNtYTogY21hX2FsbG9jOiBhbGxvYyBmYWlsZWQsIHJlcS1zaXplOiAx NiBwYWdlcywgcmV0OiAtMTINClsgIDE4NC4xODQ4MzddIGNtYTogY21hX2FsbG9jOiBhbGxvYyBm YWlsZWQsIHJlcS1zaXplOiA2NCBwYWdlcywgcmV0OiAtMTINClsgIDE4NC4xODQ4NjldIGNtYTog Y21hX2FsbG9jOiBhbGxvYyBmYWlsZWQsIHJlcS1zaXplOiAxNiBwYWdlcywgcmV0OiAtMTINClsg IDE4NC4xODQ4ODJdIGNtYTogY21hX2FsbG9jOiBhbGxvYyBmYWlsZWQsIHJlcS1zaXplOiA2NCBw YWdlcywgcmV0OiAtMTINClsgIDE4NC4xODQ5MTRdIGNtYTogY21hX2FsbG9jOiBhbGxvYyBmYWls ZWQsIHJlcS1zaXplOiAxNiBwYWdlcywgcmV0OiAtMTINClsgIDE4NC4xODQ5MjddIGNtYTogY21h X2FsbG9jOiBhbGxvYyBmYWlsZWQsIHJlcS1zaXplOiA2NCBwYWdlcywgcmV0OiAtMTINClsgIDE4 NC4xODQ5NTldIGNtYTogY21hX2FsbG9jOiBhbGxvYyBmYWlsZWQsIHJlcS1zaXplOiAxNiBwYWdl cywgcmV0OiAtMTINClsgIDE4NC4xODQ5NzJdIGNtYTogY21hX2FsbG9jOiBhbGxvYyBmYWlsZWQs IHJlcS1zaXplOiA2NCBwYWdlcywgcmV0OiAtMTINClsgIDE4NC4xODUwMDNdIGNtYTogY21hX2Fs bG9jOiBhbGxvYyBmYWlsZWQsIHJlcS1zaXplOiAxNiBwYWdlcywgcmV0OiAtMTINClsgIDE4NC4x ODUwMTZdIGNtYTogY21hX2FsbG9jOiBhbGxvYyBmYWlsZWQsIHJlcS1zaXplOiA2NCBwYWdlcywg cmV0OiAtMTINClsgIDE4NC4xODUwNzJdIGNtYTogY21hX2FsbG9jOiBhbGxvYyBmYWlsZWQsIHJl cS1zaXplOiAxNiBwYWdlcywgcmV0OiAtMTINClsgIDE4NC4xODUwODVdIGNtYTogY21hX2FsbG9j OiBhbGxvYyBmYWlsZWQsIHJlcS1zaXplOiA2NCBwYWdlcywgcmV0OiAtMTINClsgIDE4NC4xODUx MThdIGNtYTogY21hX2FsbG9jOiBhbGxvYyBmYWlsZWQsIHJlcS1zaXplOiAxNiBwYWdlcywgcmV0 OiAtMTINClsgIDE4NC4xODUxMzBdIGNtYTogY21hX2FsbG9jOiBhbGxvYyBmYWlsZWQsIHJlcS1z aXplOiA2NCBwYWdlcywgcmV0OiAtMTINClsgIDE4NC4xODUxNjJdIGNtYTogY21hX2FsbG9jOiBh bGxvYyBmYWlsZWQsIHJlcS1zaXplOiAxNiBwYWdlcywgcmV0OiAtMTINClsgIDE4NC4xODUxNzZd IGNtYTogY21hX2FsbG9jOiBhbGxvYyBmYWlsZWQsIHJlcS1zaXplOiA2NCBwYWdlcywgcmV0OiAt MTINClsgIDE4NC4xODUyMDddIGNtYTogY21hX2FsbG9jOiBhbGxvYyBmYWlsZWQsIHJlcS1zaXpl OiAxNiBwYWdlcywgcmV0OiAtMTINClsgIDE4NC4xODUyMjddIGNtYTogY21hX2FsbG9jOiBhbGxv YyBmYWlsZWQsIHJlcS1zaXplOiA2NCBwYWdlcywgcmV0OiAtMTINClsgIDE4NC4xODUyNTldIGNt YTogY21hX2FsbG9jOiBhbGxvYyBmYWlsZWQsIHJlcS1zaXplOiAxNiBwYWdlcywgcmV0OiAtMTIN ClsgIDE4NC4xODUyNzJdIGNtYTogY21hX2FsbG9jOiBhbGxvYyBmYWlsZWQsIHJlcS1zaXplOiA2 NCBwYWdlcywgcmV0OiAtMTINClsgIDE4NC4xODUzMDVdIGNtYTogY21hX2FsbG9jOiBhbGxvYyBm YWlsZWQsIHJlcS1zaXplOiAxNiBwYWdlcywgcmV0OiAtMTINClsgIDE4NC4xODUzMThdIGNtYTog Y21hX2FsbG9jOiBhbGxvYyBmYWlsZWQsIHJlcS1zaXplOiA2NCBwYWdlcywgcmV0OiAtMTINClsg IDE4NC4xODUzNDldIGNtYTogY21hX2FsbG9jOiBhbGxvYyBmYWlsZWQsIHJlcS1zaXplOiAxNiBw YWdlcywgcmV0OiAtMTINClsgIDE4NC4xODUzNjNdIGNtYTogY21hX2FsbG9jOiBhbGxvYyBmYWls ZWQsIHJlcS1zaXplOiAzMiBwYWdlcywgcmV0OiAtMTINClsgIDE4NC4xOTI0MzNdIGNtYTogY21h X2FsbG9jOiBhbGxvYyBmYWlsZWQsIHJlcS1zaXplOiAzMiBwYWdlcywgcmV0OiAtMTINClsgIDE4 NC4xOTI0NjBdIGNtYTogY21hX2FsbG9jOiBhbGxvYyBmYWlsZWQsIHJlcS1zaXplOiAxMjggcGFn ZXMsIHJldDogLTEyDQpbICAxODQuMTkyNTIzXSBjbWE6IGNtYV9hbGxvYzogYWxsb2MgZmFpbGVk LCByZXEtc2l6ZTogMTAyNCBwYWdlcywgcmV0OiAtMTINClsgIDE4NC4xOTQ2NzBdIGhpc2lfc2Fz X3YzX2h3IDAwMDA6YjQ6MDIuMDogMTYgaHcgcXVldWVzDQpbICAxODUuMTMzNzQ1XSBtbHg1X2Nv cmUgMDAwMDowNDowMC4wOiBtbHg1X2Z1bmN0aW9uX3NldHVwOjk4NToocGlkIDUpOiBlbmFibGUg aGNhIGZhaWxlZA0KWyAgMTg1LjE1MTk5N10gbWx4NV9jb3JlIDAwMDA6MDQ6MDAuMDogaW5pdF9v bmU6MTM3MzoocGlkIDUpOiBtbHg1X2xvYWRfb25lIGZhaWxlZCB3aXRoIGVycm9yIGNvZGUgLTEx MA0KWyAgMTg1LjE3NjgxNl0gezV9W0hhcmR3YXJlIEVycm9yXTogSGFyZHdhcmUgZXJyb3IgZnJv bSBBUEVJIEdlbmVyaWMgSGFyZHdhcmUgRXJyb3IgU291cmNlOiAwDQpbICAxODUuMTc2ODQzXSB7 NX1bSGFyZHdhcmUgRXJyb3JdOiBldmVudCBzZXZlcml0eTogcmVjb3ZlcmFibGUNClsgIDE4NS4x NzY4NDldIHs1fVtIYXJkd2FyZSBFcnJvcl06ICBFcnJvciAwLCB0eXBlOiByZWNvdmVyYWJsZQ0K WyAgMTg1LjE3Njg1NV0gezV9W0hhcmR3YXJlIEVycm9yXTogICBzZWN0aW9uX3R5cGU6IFBDSWUg ZXJyb3INClsgIDE4NS4xNzY4NjBdIHs1fVtIYXJkd2FyZSBFcnJvcl06ICAgcG9ydF90eXBlOiA0 LCByb290IHBvcnQNClsgIDE4NS4xNzY4NjRdIHs1fVtIYXJkd2FyZSBFcnJvcl06ICAgdmVyc2lv bjogNC4wDQpbICAxODUuMTc2ODY5XSB7NX1bSGFyZHdhcmUgRXJyb3JdOiAgIGNvbW1hbmQ6IDB4 MDU0Nywgc3RhdHVzOiAweDQwMTANClsgIDE4NS4xNzY4NzRdIHs1fVtIYXJkd2FyZSBFcnJvcl06 ICAgZGV2aWNlX2lkOiAwMDAwOjAwOjBjLjANClsgIDE4NS4xNzY4NzhdIHs1fVtIYXJkd2FyZSBF cnJvcl06ICAgc2xvdDogMA0KWyAgMTg1LjE3Njg4MV0gezV9W0hhcmR3YXJlIEVycm9yXTogICBz ZWNvbmRhcnlfYnVzOiAweDA0DQpbICAxODUuMTc2ODg1XSB7NX1bSGFyZHdhcmUgRXJyb3JdOiAg IHZlbmRvcl9pZDogMHgxOWU1LCBkZXZpY2VfaWQ6IDB4YTEyMA0KWyAgMTg1LjE3Njg5MV0gezV9 W0hhcmR3YXJlIEVycm9yXTogICBjbGFzc19jb2RlOiAwNjA0MDANClsgIDE4NS4xNzY4OTVdIHs1 fVtIYXJkd2FyZSBFcnJvcl06ICAgYnJpZGdlOiBzZWNvbmRhcnlfc3RhdHVzOiAweDA4MDAsIGNv bnRyb2w6IDB4MDAwMA0KWyAgMjA2LjEzNzcyMV0gcmN1OiBJTkZPOiByY3Vfc2NoZWQgc2VsZi1k ZXRlY3RlZCBzdGFsbCBvbiBDUFUNClsgIDIwNi4xMzc3NTJdIHJjdTogICAgIDQ4LS4uLi46ICg1 MjQ5IHRpY2tzIHRoaXMgR1ApIGlkbGU9Mzg2LzEvMHg0MDAwMDAwMDAwMDAwMDAyIHNvZnRpcnE9 NzcvNzcgZnFzPTI2MjUNClsgIDIzMi4wNDk3MjBdIHdhdGNoZG9nOiBCVUc6IHNvZnQgbG9ja3Vw IC0gQ1BVIzQ4IHN0dWNrIGZvciAyM3MhIFtrd29ya2VyLzQ4OjI6Nzc4XQ0KWyAgMjQyLjY1Nzg2 NF0gSU5GTzogdGFzayBzeXN0ZW1kLXVkZXZkOjcxMyBibG9ja2VkIGZvciBtb3JlIHRoYW4gMTIw IHNlY29uZHMuDQpbICAyNDIuNjU3ODk2XSAgICAgICBUYWludGVkOiBHICAgICAgICBXICAgIEwg ICAgNS4xMC4wLTIzLWFybTY0ICMxIERlYmlhbiA1LjEwLjE3OS0xDQpbICAyNDIuNjU3OTAyXSAi ZWNobyAwID4gL3Byb2Mvc3lzL2tlcm5lbC9odW5nX3Rhc2tfdGltZW91dF9zZWNzIiBkaXNhYmxl cyB0aGlzIG1lc3NhZ2UuDQpbICAyNDIuNjU4MDA4XSBJTkZPOiB0YXNrIGt3b3JrZXIvMDo1Ojc4 MSBibG9ja2VkIGZvciBtb3JlIHRoYW4gMTIwIHNlY29uZHMuDQpbICAyNDIuNjU4MDE1XSAgICAg ICBUYWludGVkOiBHICAgICAgICBXICAgIEwgICAgNS4xMC4wLTIzLWFybTY0ICMxIERlYmlhbiA1 LjEwLjE3OS0xDQpbICAyNDIuNjU4MDIwXSAiZWNobyAwID4gL3Byb2Mvc3lzL2tlcm5lbC9odW5n X3Rhc2tfdGltZW91dF9zZWNzIiBkaXNhYmxlcyB0aGlzIG1lc3NhZ2UuDQpbICAyNDIuNjU4MDc5 XSBJTkZPOiB0YXNrIGt3b3JrZXIvMDo2Ojc4OCBibG9ja2VkIGZvciBtb3JlIHRoYW4gMTIwIHNl Y29uZHMuDQpbICAyNDIuNjU4MDg0XSAgICAgICBUYWludGVkOiBHICAgICAgICBXICAgIEwgICAg NS4xMC4wLTIzLWFybTY0ICMxIERlYmlhbiA1LjEwLjE3OS0xDQpbICAyNDIuNjU4MDkwXSAiZWNo byAwID4gL3Byb2Mvc3lzL2tlcm5lbC9odW5nX3Rhc2tfdGltZW91dF9zZWNzIiBkaXNhYmxlcyB0 aGlzIG1lc3NhZ2UuDQpbICAyNDQuODkwMjEzXSBscGZjIDAwMDA6ODE6MDAuMTogMDozMDI2IE1h aWxib3ggZmFpbGVkICwgbWJ4Q21kIHg5YiBHRVRfRlVOQ1RJT05fQ09ORklHLCBtYnhTdGF0dXMg eDANClsgIDI0NC44OTA0OTBdIGxwZmMgMDAwMDo4MTowMC4xOiAwOjE0MTIgRmFpbGVkIHRvIHNl dCB1cCBkcml2ZXIgcmVzb3VyY2UuDQpbICAyNDUuNTQwNzMzXSBjbWE6IGNtYV9hbGxvYzogYWxs b2MgZmFpbGVkLCByZXEtc2l6ZTogNjQgcGFnZXMsIHJldDogLTEyDQpbICAyNDUuNTQwNzg2XSBj bWE6IGNtYV9hbGxvYzogYWxsb2MgZmFpbGVkLCByZXEtc2l6ZTogMTYgcGFnZXMsIHJldDogLTEy DQpbICAyNDUuNTQwODAwXSBjbWE6IGNtYV9hbGxvYzogYWxsb2MgZmFpbGVkLCByZXEtc2l6ZTog NjQgcGFnZXMsIHJldDogLTEyDQpbICAyNDUuNTQwODMxXSBjbWE6IGNtYV9hbGxvYzogYWxsb2Mg ZmFpbGVkLCByZXEtc2l6ZTogMTYgcGFnZXMsIHJldDogLTEyDQpbICAyNDUuNTQwODQ0XSBjbWE6 IGNtYV9hbGxvYzogYWxsb2MgZmFpbGVkLCByZXEtc2l6ZTogNjQgcGFnZXMsIHJldDogLTEyDQpb ICAyNDUuNTQwODk1XSBjbWE6IGNtYV9hbGxvYzogYWxsb2MgZmFpbGVkLCByZXEtc2l6ZTogMTYg cGFnZXMsIHJldDogLTEyDQpbICAyNDUuNTQwOTA4XSBjbWE6IGNtYV9hbGxvYzogYWxsb2MgZmFp bGVkLCByZXEtc2l6ZTogNjQgcGFnZXMsIHJldDogLTEyDQpbICAyNDUuNTQwOTQwXSBjbWE6IGNt YV9hbGxvYzogYWxsb2MgZmFpbGVkLCByZXEtc2l6ZTogMTYgcGFnZXMsIHJldDogLTEyDQpbICAy NDUuNTQwOTUzXSBjbWE6IGNtYV9hbGxvYzogYWxsb2MgZmFpbGVkLCByZXEtc2l6ZTogNjQgcGFn ZXMsIHJldDogLTEyDQpbICAyNDUuNTQwOTg0XSBjbWE6IGNtYV9hbGxvYzogYWxsb2MgZmFpbGVk LCByZXEtc2l6ZTogMTYgcGFnZXMsIHJldDogLTEyDQpbICAyNDUuNTQwOTk3XSBjbWE6IGNtYV9h bGxvYzogYWxsb2MgZmFpbGVkLCByZXEtc2l6ZTogNjQgcGFnZXMsIHJldDogLTEyDQpbICAyNDUu NTQxMDI5XSBjbWE6IGNtYV9hbGxvYzogYWxsb2MgZmFpbGVkLCByZXEtc2l6ZTogMTYgcGFnZXMs IHJldDogLTEyDQpbICAyNDUuNTQxMDQyXSBjbWE6IGNtYV9hbGxvYzogYWxsb2MgZmFpbGVkLCBy ZXEtc2l6ZTogNjQgcGFnZXMsIHJldDogLTEyDQpbICAyNDUuNTQxMDczXSBjbWE6IGNtYV9hbGxv YzogYWxsb2MgZmFpbGVkLCByZXEtc2l6ZTogMTYgcGFnZXMsIHJldDogLTEyDQpbICAyNDUuNTQx MDg1XSBjbWE6IGNtYV9hbGxvYzogYWxsb2MgZmFpbGVkLCByZXEtc2l6ZTogNjQgcGFnZXMsIHJl dDogLTEyDQpbICAyNDUuNTQxMTE2XSBjbWE6IGNtYV9hbGxvYzogYWxsb2MgZmFpbGVkLCByZXEt c2l6ZTogMTYgcGFnZXMsIHJldDogLTEyDQpbICAyNDUuNTQxMTI5XSBjbWE6IGNtYV9hbGxvYzog YWxsb2MgZmFpbGVkLCByZXEtc2l6ZTogNjQgcGFnZXMsIHJldDogLTEyDQpbICAyNDUuNTQxMTYw XSBjbWE6IGNtYV9hbGxvYzogYWxsb2MgZmFpbGVkLCByZXEtc2l6ZTogMTYgcGFnZXMsIHJldDog LTEyDQpbICAyNDUuNTQxMTc3XSBjbWE6IGNtYV9hbGxvYzogYWxsb2MgZmFpbGVkLCByZXEtc2l6 ZTogNjQgcGFnZXMsIHJldDogLTEyDQpbICAyNDUuNTQxMjA5XSBjbWE6IGNtYV9hbGxvYzogYWxs b2MgZmFpbGVkLCByZXEtc2l6ZTogMTYgcGFnZXMsIHJldDogLTEyDQpbICAyNDUuNTQxMjIxXSBj bWE6IGNtYV9hbGxvYzogYWxsb2MgZmFpbGVkLCByZXEtc2l6ZTogNjQgcGFnZXMsIHJldDogLTEy DQpbICAyNDUuNTQxMjU1XSBjbWE6IGNtYV9hbGxvYzogYWxsb2MgZmFpbGVkLCByZXEtc2l6ZTog MTYgcGFnZXMsIHJldDogLTEyDQpbICAyNDUuNTQxMjY3XSBjbWE6IGNtYV9hbGxvYzogYWxsb2Mg ZmFpbGVkLCByZXEtc2l6ZTogNjQgcGFnZXMsIHJldDogLTEyDQpbICAyNDUuNTQxMjk4XSBjbWE6 IGNtYV9hbGxvYzogYWxsb2MgZmFpbGVkLCByZXEtc2l6ZTogMTYgcGFnZXMsIHJldDogLTEyDQpb ICAyNDUuNTQxMzExXSBjbWE6IGNtYV9hbGxvYzogYWxsb2MgZmFpbGVkLCByZXEtc2l6ZTogNjQg cGFnZXMsIHJldDogLTEyDQpbICAyNDUuNTQxMzQyXSBjbWE6IGNtYV9hbGxvYzogYWxsb2MgZmFp bGVkLCByZXEtc2l6ZTogMTYgcGFnZXMsIHJldDogLTEyDQpbICAyNDUuNTQxMzU1XSBjbWE6IGNt YV9hbGxvYzogYWxsb2MgZmFpbGVkLCByZXEtc2l6ZTogNjQgcGFnZXMsIHJldDogLTEyDQpbICAy NDUuNTQxMzg2XSBjbWE6IGNtYV9hbGxvYzogYWxsb2MgZmFpbGVkLCByZXEtc2l6ZTogMTYgcGFn ZXMsIHJldDogLTEyDQpbICAyNDUuNTQxMzk5XSBjbWE6IGNtYV9hbGxvYzogYWxsb2MgZmFpbGVk LCByZXEtc2l6ZTogNjQgcGFnZXMsIHJldDogLTEyDQpbICAyNDUuNTQxNDMwXSBjbWE6IGNtYV9h bGxvYzogYWxsb2MgZmFpbGVkLCByZXEtc2l6ZTogMTYgcGFnZXMsIHJldDogLTEyDQpbICAyNDUu NTQxNDQzXSBjbWE6IGNtYV9hbGxvYzogYWxsb2MgZmFpbGVkLCByZXEtc2l6ZTogNjQgcGFnZXMs IHJldDogLTEyDQpbICAyNDUuNTQxNDc0XSBjbWE6IGNtYV9hbGxvYzogYWxsb2MgZmFpbGVkLCBy ZXEtc2l6ZTogMTYgcGFnZXMsIHJldDogLTEyDQpbICAyNDUuNTQxNDg3XSBjbWE6IGNtYV9hbGxv YzogYWxsb2MgZmFpbGVkLCByZXEtc2l6ZTogMzIgcGFnZXMsIHJldDogLTEyDQpbICAyNDUuNTQ4 NDE1XSBjbWE6IGNtYV9hbGxvYzogYWxsb2MgZmFpbGVkLCByZXEtc2l6ZTogMzIgcGFnZXMsIHJl dDogLTEyDQpbICAyNDUuNTQ4NDQxXSBjbWE6IGNtYV9hbGxvYzogYWxsb2MgZmFpbGVkLCByZXEt c2l6ZTogMTI4IHBhZ2VzLCByZXQ6IC0xMg0KWyAgMjQ1LjU0ODQ5OV0gY21hOiBjbWFfYWxsb2M6 IGFsbG9jIGZhaWxlZCwgcmVxLXNpemU6IDEwMjQgcGFnZXMsIHJldDogLTEyDQpbICAyNDUuNTUw MTU4XSBoaXNpX3Nhc192M19odyAwMDAwOmI0OjA0LjA6IDE2IGh3IHF1ZXVlcw0KWyAgMjQ2LjE2 MTczN10gbWx4NV9jb3JlIDAwMDA6MDQ6MDAuMTogbWx4NV9mdW5jdGlvbl9zZXR1cDo5ODU6KHBp ZCA1KTogZW5hYmxlIGhjYSBmYWlsZWQNClsgIDI0Ni4xNzkxNTVdIG1seDVfY29yZSAwMDAwOjA0 OjAwLjE6IGluaXRfb25lOjEzNzM6KHBpZCA1KTogbWx4NV9sb2FkX29uZSBmYWlsZWQgd2l0aCBl cnJvciBjb2RlIC0xMTANClsgIDI0Ni4xNzkzOTZdIHBjaWVwb3J0IDAwMDA6MDA6MGMuMDogQUVS OiBhZXJfc3RhdHVzOiAweDAwMDA4MDAwLCBhZXJfbWFzazogMHgwNDUwMDAwMA0KWyAgMjQ2LjE3 OTQwNF0gcGNpZXBvcnQgMDAwMDowMDowYy4wOiAgICBbMTVdIENtcGx0QWJydCAgICAgICAgICAg ICAgKEZpcnN0KQ0KWyAgMjQ2LjE3OTQxMF0gcGNpZXBvcnQgMDAwMDowMDowYy4wOiBBRVI6IGFl cl9sYXllcj1UcmFuc2FjdGlvbiBMYXllciwgYWVyX2FnZW50PUNvbXBsZXRlciBJRA0KWyAgMjQ2 LjE3OTQxN10gcGNpZXBvcnQgMDAwMDowMDowYy4wOiBBRVI6IGFlcl91bmNvcl9zZXZlcml0eTog MHgwMDQ2MjAzMA0KWyAgMjQ2LjE3OTQyM10gcGNpZXBvcnQgMDAwMDowMDowYy4wOiBBRVI6ICAg VExQIEhlYWRlcjogNjAwMDAwMTAgMDQwMTAwZmYgMDAwMDAwNDIgOGQ1YjAwMDANClsgIDI0Ni4x Nzk0NzNdIGNtYTogY21hX2FsbG9jOiBhbGxvYyBmYWlsZWQsIHJlcS1zaXplOiA0IHBhZ2VzLCBy ZXQ6IC00DQpbICAyNDYuMTk5ODE0XSB7Nn1bSGFyZHdhcmUgRXJyb3JdOiBIYXJkd2FyZSBlcnJv ciBmcm9tIEFQRUkgR2VuZXJpYyBIYXJkd2FyZSBFcnJvciBTb3VyY2U6IDANClsgIDI0Ni4xOTk4 MjRdIHs2fVtIYXJkd2FyZSBFcnJvcl06IGV2ZW50IHNldmVyaXR5OiByZWNvdmVyYWJsZQ0KWyAg MjQ2LjE5OTgzMF0gezZ9W0hhcmR3YXJlIEVycm9yXTogIEVycm9yIDAsIHR5cGU6IHJlY292ZXJh YmxlDQpbICAyNDYuMTk5ODM2XSB7Nn1bSGFyZHdhcmUgRXJyb3JdOiAgIHNlY3Rpb25fdHlwZTog UENJZSBlcnJvcg0KWyAgMjQ2LjE5OTg0MV0gezZ9W0hhcmR3YXJlIEVycm9yXTogICBwb3J0X3R5 cGU6IDQsIHJvb3QgcG9ydA0KWyAgMjQ2LjE5OTg0NV0gezZ9W0hhcmR3YXJlIEVycm9yXTogICB2 ZXJzaW9uOiA0LjANClsgIDI0Ni4xOTk4NDldIHs2fVtIYXJkd2FyZSBFcnJvcl06ICAgY29tbWFu ZDogMHgwNTQ3LCBzdGF0dXM6IDB4NDAxMA0KWyAgMjQ2LjE5OTg1NV0gezZ9W0hhcmR3YXJlIEVy cm9yXTogICBkZXZpY2VfaWQ6IDAwMDA6ODA6MDQuMA0KWyAgMjQ2LjE5OTg1OV0gezZ9W0hhcmR3 YXJlIEVycm9yXTogICBzbG90OiAwDQpbICAyNDYuMTk5ODYyXSB7Nn1bSGFyZHdhcmUgRXJyb3Jd OiAgIHNlY29uZGFyeV9idXM6IDB4ODINClsgIDI0Ni4xOTk4NjddIHs2fVtIYXJkd2FyZSBFcnJv cl06ICAgdmVuZG9yX2lkOiAweDE5ZTUsIGRldmljZV9pZDogMHhhMTIwDQpbICAyNDYuMTk5ODcy XSB7Nn1bSGFyZHdhcmUgRXJyb3JdOiAgIGNsYXNzX2NvZGU6IDA2MDQwMA0KWyAgMjQ2LjE5OTg3 N10gezZ9W0hhcmR3YXJlIEVycm9yXTogICBicmlkZ2U6IHNlY29uZGFyeV9zdGF0dXM6IDB4Mjgw MCwgY29udHJvbDogMHgwMDAwDQpbICAyNDYuMTk5OTA0XSBwY2llcG9ydCAwMDAwOjgwOjA0LjA6 IEFFUjogYWVyX3N0YXR1czogMHgwMDAwODAwMCwgYWVyX21hc2s6IDB4MDQ1MDAwMDANClsgIDI0 Ni4xOTk5MTFdIHBjaWVwb3J0IDAwMDA6ODA6MDQuMDogICAgWzE1XSBDbXBsdEFicnQgICAgICAg ICAgICAgIChGaXJzdCkNClsgIDI0Ni4xOTk5MTddIHBjaWVwb3J0IDAwMDA6ODA6MDQuMDogQUVS OiBhZXJfbGF5ZXI9VHJhbnNhY3Rpb24gTGF5ZXIsIGFlcl9hZ2VudD1Db21wbGV0ZXIgSUQNClsg IDI0Ni4xOTk5MjRdIHBjaWVwb3J0IDAwMDA6ODA6MDQuMDogQUVSOiBhZXJfdW5jb3Jfc2V2ZXJp dHk6IDB4MDA0NjIwMzANClsgIDI0Ni4xOTk5MzBdIHBjaWVwb3J0IDAwMDA6ODA6MDQuMDogQUVS OiAgIFRMUCBIZWFkZXI6IDYwMDAwMDEwIDgyMDAwMGZmIDAwMDAyMDYwIGJlNTdlMDAwDQpbICAy NzMuMDk3NzI4XSBtZWdhcmFpZF9zYXMgMDAwMDowMzowMC4wOiBJbml0IGNtZCByZXR1cm4gc3Rh dHVzIEZBSUxFRCBmb3IgU0NTSSBob3N0IDANClsgIDI3My4xNTkzNzBdIG1lZ2FyYWlkX3NhcyAw MDAwOjAzOjAwLjA6IEZhaWxlZCBmcm9tIG1lZ2FzYXNfaW5pdF9mdyA2NDY3DQpbICAzMDcuMTg5 NzQ3XSBtbHg1X2NvcmUgMDAwMDo4MjowMC4wOiBtbHg1X2Z1bmN0aW9uX3NldHVwOjk4NToocGlk IDc3OCk6IGVuYWJsZSBoY2EgZmFpbGVkDQpbICAzMDcuMjA2NTkyXSBtbHg1X2NvcmUgMDAwMDo4 MjowMC4wOiBpbml0X29uZToxMzczOihwaWQgNzc4KTogbWx4NV9sb2FkX29uZSBmYWlsZWQgd2l0 aCBlcnJvciBjb2RlIC0xMTANClsgIDMwNy4yMjk2NjNdIHs3fVtIYXJkd2FyZSBFcnJvcl06IEhh cmR3YXJlIGVycm9yIGZyb20gQVBFSSBHZW5lcmljIEhhcmR3YXJlIEVycm9yIFNvdXJjZTogMA0K WyAgMzA3LjIyOTY5MV0gezd9W0hhcmR3YXJlIEVycm9yXTogZXZlbnQgc2V2ZXJpdHk6IHJlY292 ZXJhYmxlDQpbICAzMDcuMjI5Njk3XSB7N31bSGFyZHdhcmUgRXJyb3JdOiAgRXJyb3IgMCwgdHlw ZTogcmVjb3ZlcmFibGUNClsgIDMwNy4yMjk3MDNdIHs3fVtIYXJkd2FyZSBFcnJvcl06ICAgc2Vj dGlvbl90eXBlOiBQQ0llIGVycm9yDQpbICAzMDcuMjI5NzA4XSB7N31bSGFyZHdhcmUgRXJyb3Jd OiAgIHBvcnRfdHlwZTogNCwgcm9vdCBwb3J0DQpbICAzMDcuMjI5NzEyXSB7N31bSGFyZHdhcmUg RXJyb3JdOiAgIHZlcnNpb246IDQuMA0KWyAgMzA3LjIyOTcxNl0gezd9W0hhcmR3YXJlIEVycm9y XTogICBjb21tYW5kOiAweDA1NDcsIHN0YXR1czogMHg0MDEwDQpbICAzMDcuMjI5NzI0XSB7N31b SGFyZHdhcmUgRXJyb3JdOiAgIGRldmljZV9pZDogMDAwMDo4MDowNC4wDQpbICAzMDcuMjI5NzMx XSB7N31bSGFyZHdhcmUgRXJyb3JdOiAgIHNsb3Q6IDANClsgIDMwNy4yMjk3MzVdIHs3fVtIYXJk d2FyZSBFcnJvcl06ICAgc2Vjb25kYXJ5X2J1czogMHg4Mg0KWyAgMzA3LjIyOTczOV0gezd9W0hh cmR3YXJlIEVycm9yXTogICB2ZW5kb3JfaWQ6IDB4MTllNSwgZGV2aWNlX2lkOiAweGExMjANClsg IDMwNy4yMjk3NDRdIHs3fVtIYXJkd2FyZSBFcnJvcl06ICAgY2xhc3NfY29kZTogMDYwNDAwDQpb ICAzMDcuMjI5NzQ5XSB7N31bSGFyZHdhcmUgRXJyb3JdOiAgIGJyaWRnZTogc2Vjb25kYXJ5X3N0 YXR1czogMHgwODAwLCBjb250cm9sOiAweDAwMDANClsgIDM2My40ODk4NThdIElORk86IHRhc2sg a3dvcmtlci8wOjU6NzgxIGJsb2NrZWQgZm9yIG1vcmUgdGhhbiAyNDEgc2Vjb25kcy4NClsgIDM2 My40ODk4ODZdICAgICAgIFRhaW50ZWQ6IEcgICAgICAgIFcgICAgTCAgICA1LjEwLjAtMjMtYXJt NjQgIzEgRGViaWFuIDUuMTAuMTc5LTENClsgIDM2My40ODk4OTJdICJlY2hvIDAgPiAvcHJvYy9z eXMva2VybmVsL2h1bmdfdGFza190aW1lb3V0X3NlY3MiIGRpc2FibGVzIHRoaXMgbWVzc2FnZS4N ClsgIDM2My40ODk5NDldIElORk86IHRhc2sga3dvcmtlci8wOjY6Nzg4IGJsb2NrZWQgZm9yIG1v cmUgdGhhbiAyNDEgc2Vjb25kcy4NClsgIDM2My40ODk5NTRdICAgICAgIFRhaW50ZWQ6IEcgICAg ICAgIFcgICAgTCAgICA1LjEwLjAtMjMtYXJtNjQgIzEgRGViaWFuIDUuMTAuMTc5LTENClsgIDM2 My40ODk5NjBdICJlY2hvIDAgPiAvcHJvYy9zeXMva2VybmVsL2h1bmdfdGFza190aW1lb3V0X3Nl Y3MiIGRpc2FibGVzIHRoaXMgbWVzc2FnZS4NClsgIDM2OC4yMTM3NDZdIG1seDVfY29yZSAwMDAw OjgyOjAwLjE6IG1seDVfZnVuY3Rpb25fc2V0dXA6OTg1OihwaWQgNzc4KTogZW5hYmxlIGhjYSBm YWlsZWQNClsgIDM2OC4yMzAxMThdIG1seDVfY29yZSAwMDAwOjgyOjAwLjE6IGluaXRfb25lOjEz NzM6KHBpZCA3NzgpOiBtbHg1X2xvYWRfb25lIGZhaWxlZCB3aXRoIGVycm9yIGNvZGUgLTExMA0K WyAgMzY4LjIzMDM5Ml0gcGNpZXBvcnQgMDAwMDo4MDowNC4wOiBBRVI6IGFlcl9zdGF0dXM6IDB4 MDAwMDgwMDAsIGFlcl9tYXNrOiAweDA0NTAwMDAwDQpbICAzNjguMjMwNDAzXSBwY2llcG9ydCAw MDAwOjgwOjA0LjA6ICAgIFsxNV0gQ21wbHRBYnJ0ICAgICAgICAgICAgICAoRmlyc3QpDQpbICAz NjguMjMwNDExXSBwY2llcG9ydCAwMDAwOjgwOjA0LjA6IEFFUjogYWVyX2xheWVyPVRyYW5zYWN0 aW9uIExheWVyLCBhZXJfYWdlbnQ9Q29tcGxldGVyIElEDQpbICAzNjguMjMwNDE3XSBwY2llcG9y dCAwMDAwOjgwOjA0LjA6IEFFUjogYWVyX3VuY29yX3NldmVyaXR5OiAweDAwNDYyMDMwDQpbICAz NjguMjMwNDIzXSBwY2llcG9ydCAwMDAwOjgwOjA0LjA6IEFFUjogICBUTFAgSGVhZGVyOiA2MDAw MDAxMCA4MjAxMDBmZiAwMDAwMjA2MCBiZTU3ZjAwMA0KWyAgNDg0LjMyMTgxM10gSU5GTzogdGFz ayBrd29ya2VyLzA6NTo3ODEgYmxvY2tlZCBmb3IgbW9yZSB0aGFuIDM2MiBzZWNvbmRzLg0KWyAg NDg0LjMyMTg0MF0gICAgICAgVGFpbnRlZDogRyAgICAgICAgVyAgICBMICAgIDUuMTAuMC0yMy1h cm02NCAjMSBEZWJpYW4gNS4xMC4xNzktMQ0KWyAgNDg0LjMyMTg0NV0gImVjaG8gMCA+IC9wcm9j L3N5cy9rZXJuZWwvaHVuZ190YXNrX3RpbWVvdXRfc2VjcyIgZGlzYWJsZXMgdGhpcyBtZXNzYWdl Lg0KWyAgNDg0LjMyMTg5Ml0gSU5GTzogdGFzayBrd29ya2VyLzA6Njo3ODggYmxvY2tlZCBmb3Ig bW9yZSB0aGFuIDM2MiBzZWNvbmRzLg0KWyAgNDg0LjMyMTg5OF0gICAgICAgVGFpbnRlZDogRyAg ICAgICAgVyAgICBMICAgIDUuMTAuMC0yMy1hcm02NCAjMSBEZWJpYW4gNS4xMC4xNzktMQ0KWyAg NDg0LjMyMTkwNF0gImVjaG8gMCA+IC9wcm9jL3N5cy9rZXJuZWwvaHVuZ190YXNrX3RpbWVvdXRf c2VjcyIgZGlzYWJsZXMgdGhpcyBtZXNzYWdlLg0KWyAgNjA1LjE1Mzc5OV0gSU5GTzogdGFzayBr d29ya2VyLzA6NTo3ODEgYmxvY2tlZCBmb3IgbW9yZSB0aGFuIDQ4MyBzZWNvbmRzLg0KWyAgNjA1 LjE1MzgyNF0gICAgICAgVGFpbnRlZDogRyAgICAgICAgVyAgICBMICAgIDUuMTAuMC0yMy1hcm02 NCAjMSBEZWJpYW4gNS4xMC4xNzktMQ0KWyAgNjA1LjE1MzgzMF0gImVjaG8gMCA+IC9wcm9jL3N5 cy9rZXJuZWwvaHVuZ190YXNrX3RpbWVvdXRfc2VjcyIgZGlzYWJsZXMgdGhpcyBtZXNzYWdlLg0K WyAgNjA1LjE1Mzg3M10gSU5GTzogdGFzayBrd29ya2VyLzA6Njo3ODggYmxvY2tlZCBmb3IgbW9y ZSB0aGFuIDQ4MyBzZWNvbmRzLg0KWyAgNjA1LjE1Mzg3OF0gICAgICAgVGFpbnRlZDogRyAgICAg ICAgVyAgICBMICAgIDUuMTAuMC0yMy1hcm02NCAjMSBEZWJpYW4gNS4xMC4xNzktMQ0KWyAgNjA1 LjE1Mzg4NF0gImVjaG8gMCA+IC9wcm9jL3N5cy9rZXJuZWwvaHVuZ190YXNrX3RpbWVvdXRfc2Vj cyIgZGlzYWJsZXMgdGhpcyBtZXNzYWdlLg0K --000000000000c9599305fef3fe1e-- From xen-devel-bounces@lists.xenproject.org Sun Jun 25 13:26:04 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sun, 25 Jun 2023 13:26:04 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554834.866234 (Exim 4.92) (envelope-from ) id 1qDPkT-0007Qp-V2; Sun, 25 Jun 2023 13:25:49 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554834.866234; Sun, 25 Jun 2023 13:25:49 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDPkT-0007Qi-Rz; Sun, 25 Jun 2023 13:25:49 +0000 Received: by outflank-mailman (input) for mailman id 554834; Sun, 25 Jun 2023 13:25:48 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDPkS-0007Qc-6q for xen-devel@lists.xenproject.org; Sun, 25 Jun 2023 13:25:48 +0000 Received: from mail-wm1-x330.google.com (mail-wm1-x330.google.com [2a00:1450:4864:20::330]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id cb2f48e5-135b-11ee-b237-6b7b168915f2; Sun, 25 Jun 2023 15:25:46 +0200 (CEST) Received: by mail-wm1-x330.google.com with SMTP id 5b1f17b1804b1-3f90a7325f6so30074465e9.3 for ; Sun, 25 Jun 2023 06:25:46 -0700 (PDT) Received: from smtpclient.apple ([193.85.242.128]) by smtp.gmail.com with ESMTPSA id h11-20020a1ccc0b000000b003fa8158135esm5480713wmb.11.2023.06.25.06.25.45 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Sun, 25 Jun 2023 06:25:45 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: cb2f48e5-135b-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cloud.com; s=cloud; t=1687699546; x=1690291546; h=to:cc:date:message-id:subject:mime-version :content-transfer-encoding:from:from:to:cc:subject:date:message-id :reply-to; bh=5WRVe1ZuXDJDma+c1wN3BCcBeF/ACwRJp14TJTkXOHM=; b=ixOFdi/tuFQ3sEAZySaKxx6POieBP3MABXu2kT0nSsUuSM1OkqSS0rWqbN5xO9X7LT mPM0k3IPn9DXhAPS9uZrCs3y/pZQ1Q2ZNTbsRZFu9Rpi2DrT87A/CbzClVDaL3JgL5Td as0f5iQGy3UNZJdSYfIgrFBH4ONsDF4+E3Nzs= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687699546; x=1690291546; h=to:cc:date:message-id:subject:mime-version :content-transfer-encoding:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=5WRVe1ZuXDJDma+c1wN3BCcBeF/ACwRJp14TJTkXOHM=; b=LIVTZ6KK/1BKzENeySjLP3PQhjbGNss3nDybqjmWCMszUAlUca1QVL+ACGCWvdMV/M NoNRUTfj0lKd0fYrAyaG07jTHvql079HvElh0zjsCba79U4xEWB9yzq/rIba3nJoFb/Y VpKZaI8NwhhN8m9O2EKAhYNI5DIL3j+yKsZ8jU5mHXUNk3OwKP2WZHvyrNmgm6JWFyj1 R4TQ0gO2af4YRCy6oiSD6lbsIm0/JJL3+CONG67MbBnVLEiR/q0kuR4+FFeJZVoDDo6+ f1U+fFbog+5rUpd+Lc3m/ioNsLArzMgQLXFERUAJrH3sAoML+4ia760jI5fGvFA5KvjV Fsmw== X-Gm-Message-State: AC+VfDyPFxI9KGfxc40XIBh8XWuYjRnufxE46FdwUyl1WutEEeT/3FLy BdghQJCCS66htkm8r1hnR7DT71v7Sv6tHFpPh8KiR7AA X-Google-Smtp-Source: ACHHUZ67sFs3n3mDiSbku1DMr47v9VQ37DmxBgrwPrY4kdULixvCMaxm9mN/yUozvjnuSLiNmW1wpg== X-Received: by 2002:a1c:7415:0:b0:3fa:77c8:6724 with SMTP id p21-20020a1c7415000000b003fa77c86724mr7067005wmc.10.1687699545986; Sun, 25 Jun 2023 06:25:45 -0700 (PDT) From: Edwin Torok Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: quoted-printable Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3731.600.7\)) Subject: xen summit 2023 design session: distributed tracing Message-Id: Date: Sun, 25 Jun 2023 15:25:34 +0200 Cc: Marcus Granado To: Xen-devel X-Mailer: Apple Mail (2.3731.600.7) design session: distributed tracing Marcusg: proof of concept * where to start, simplest parts * how to attempt to collect the context (unique/random id),begin/end = events * e.g. domain create George: pass in id to hypervisor Andy: maybe userspace first, libraries/xenguest more difficult in calls like add_to_physmap continuable hypercall indistinguishable from userspace calling it N = times e.g. new event becomes pending george: dom0 jumps into Xen, long running hypercall finishes, if it = wasn't done it stores how far it got, and pushes the IP back one instruction so when VM runs again it will = reexecute same hypercall mark: you called first one with a context, that continuation might've = been stashed andy: you'll need large trace buffers george: write to disk might be limit, might be minutes worth of events optimization edwin: could filter on dump if needed, also hypercall could store a bit = saying we started so we don't emit repeated traces andy: we guarantee forward progress in hypercalls, but limited room to = store continuation info edwin: current context? andy: hypervisor can't tell which process is current, continuation might = be on different cpu, stashing domain-related hypercalls we can stash state in struct = domain/cpu, except for first hypercall george: multicall like wrapper for tracing, Xen is not preemptable, = store start/end other ops inbetween may get tagged incorrectly when interrupted andy: xentrace doesn't distinguish sync and async events, to ignore = interrupts andy: how big, what format? marcusg/edwin: unique ids, 128-bit for context ,span 64-bit, but has = parent/child and if child is unique it has a link to full parent edwin: spanid passed in, hypervisor george: postprocess and generate opentracing format there, hypervisor is = not preemptible, can infer parents andy/george: how to gen id? random? host unique: vcpu index + per-cpu = counter. rdtsc? not reliable pcpu bits + rdtsc bits --> unique pcpu + incrementing counter andy: tracing interrupts? not associated with anything george: sometimes you can tie it back to a high-level task, e.g. global = tlb flush andy: properties of timestamps? marcusg: begin/end event, translatable back george: xentrace has (optional) time information, correlates across = pcpus, uses scheduling as a lamport clock. TSC drift not really a problem anymore andy: invariant TSC, assume andy: host mode tsc: no scaling/offset so timestamps in guest can be = compared to Dom0 timestamps: convert to ns andy: clocks change frequency with temp, etc. Dom0 clocksource: tsc as clocksource doesn't quite work, but kernel = could have NTP adjustment info andy: what information would we want? marcusg: who/what features are being used? george: add tracing as needed marcusg: tracing what happens with nested virt andy: that would trap too often edwin: pick one op as PoC, but more than one optimization george: get ready for tracing "in anger", do a proof of concept on a = particular op to figure out the mechanism domain create, get xenalyze ready to translate= From xen-devel-bounces@lists.xenproject.org Sun Jun 25 13:33:31 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sun, 25 Jun 2023 13:33:31 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554838.866244 (Exim 4.92) (envelope-from ) id 1qDPrq-0000T8-MJ; Sun, 25 Jun 2023 13:33:26 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554838.866244; Sun, 25 Jun 2023 13:33:26 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDPrq-0000T1-JD; Sun, 25 Jun 2023 13:33:26 +0000 Received: by outflank-mailman (input) for mailman id 554838; Sun, 25 Jun 2023 13:33:25 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDPrp-0000Sr-7N; Sun, 25 Jun 2023 13:33:25 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDPro-0001BA-So; Sun, 25 Jun 2023 13:33:24 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDPro-0004BE-91; Sun, 25 Jun 2023 13:33:24 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qDPro-0006TG-8Y; Sun, 25 Jun 2023 13:33:24 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=8ipOFSdD70ucGCWsrxJecize674Goy1G14GRVTHg5UI=; b=T4SDRrKDauf8tzRpxKR7qamzAE E5Pb0CwRxqRPuVr9g18V33Fjg8lqdcQlL4f7obhIvJVy6oq+hJrLh19L8y5SDwEsswJhERkRgghFk zBcGAhrrNZa+oZ0XDujiOVXOExy+BmXbW/SMP47d1OHRZJkT3cjOvjpuc3n+H0lPCYCY=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable test] 181582: tolerable FAIL X-Osstest-Failures: xen-unstable:test-amd64-i386-migrupgrade:xen-install/dst_host:fail:heisenbug xen-unstable:test-amd64-i386-xl-qemut-debianhvm-i386-xsm:debian-hvm-install:fail:heisenbug xen-unstable:test-amd64-i386-examine-uefi:xen-install:fail:heisenbug xen-unstable:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:debian-hvm-install:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-xsm:hosts-allocate:starved:nonblocking xen-unstable:test-arm64-arm64-xl-credit2:hosts-allocate:starved:nonblocking xen-unstable:test-arm64-arm64-xl-credit1:hosts-allocate:starved:nonblocking xen-unstable:test-arm64-arm64-xl-vhd:hosts-allocate:starved:nonblocking X-Osstest-Versions-This: xen=5c84f1f636981dab5341e84aaba8d4dd00bbc2cb X-Osstest-Versions-That: xen=5c84f1f636981dab5341e84aaba8d4dd00bbc2cb From: osstest service owner Date: Sun, 25 Jun 2023 13:33:24 +0000 flight 181582 xen-unstable real [real] http://logs.test-lab.xenproject.org/osstest/logs/181582/ Failures :-/ but no regressions. Tests which are failing intermittently (not blocking): test-amd64-i386-migrupgrade 11 xen-install/dst_host fail in 181575 pass in 181582 test-amd64-i386-xl-qemut-debianhvm-i386-xsm 12 debian-hvm-install fail in 181575 pass in 181582 test-amd64-i386-examine-uefi 6 xen-install fail pass in 181575 Tests which did not succeed, but are not blocking: test-amd64-amd64-xl-qemut-debianhvm-i386-xsm 12 debian-hvm-install fail like 181558 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 181575 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop fail like 181575 test-armhf-armhf-libvirt 16 saverestore-support-check fail like 181575 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 181575 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 181575 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop fail like 181575 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop fail like 181575 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail like 181575 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 181575 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail like 181575 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop fail like 181575 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 181575 test-amd64-i386-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-i386-xl-pvshim 14 guest-start fail never pass test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-i386-libvirt 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-i386-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 15 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass test-armhf-armhf-libvirt 15 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 15 saverestore-support-check fail never pass test-armhf-armhf-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 15 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 16 saverestore-support-check fail never pass test-armhf-armhf-xl 15 migrate-support-check fail never pass test-armhf-armhf-xl 16 saverestore-support-check fail never pass test-armhf-armhf-xl-multivcpu 15 migrate-support-check fail never pass test-armhf-armhf-xl-multivcpu 16 saverestore-support-check fail never pass test-armhf-armhf-xl-credit1 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 16 saverestore-support-check fail never pass test-armhf-armhf-xl-credit2 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit2 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 3 hosts-allocate starved in 181575 n/a test-arm64-arm64-xl-credit2 3 hosts-allocate starved in 181575 n/a test-arm64-arm64-xl-credit1 3 hosts-allocate starved in 181575 n/a test-arm64-arm64-xl-vhd 3 hosts-allocate starved in 181575 n/a version targeted for testing: xen 5c84f1f636981dab5341e84aaba8d4dd00bbc2cb baseline version: xen 5c84f1f636981dab5341e84aaba8d4dd00bbc2cb Last test of basis 181582 2023-06-25 01:53:44 Z 0 days Testing same since (not found) 0 attempts jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64-xtf pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-prev pass build-i386-prev pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-xtf-amd64-amd64-1 pass test-xtf-amd64-amd64-2 pass test-xtf-amd64-amd64-3 pass test-xtf-amd64-amd64-4 pass test-xtf-amd64-amd64-5 pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl pass test-amd64-i386-xl pass test-amd64-coresched-i386-xl pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm fail test-amd64-i386-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-i386-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-i386-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-i386-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-i386-qemut-rhel6hvm-amd pass test-amd64-i386-qemuu-rhel6hvm-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-i386-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-freebsd10-amd64 pass test-amd64-amd64-qemuu-freebsd11-amd64 pass test-amd64-amd64-qemuu-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-i386-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-i386-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-i386-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-amd64-i386-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale pass test-amd64-amd64-examine-bios pass test-amd64-i386-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 pass test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 pass test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine pass test-amd64-i386-examine pass test-amd64-i386-freebsd10-i386 pass test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-i386-qemut-rhel6hvm-intel pass test-amd64-i386-qemuu-rhel6hvm-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt pass test-amd64-i386-libvirt pass test-amd64-amd64-livepatch pass test-amd64-i386-livepatch pass test-amd64-amd64-migrupgrade pass test-amd64-i386-migrupgrade pass test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu pass test-amd64-amd64-pair pass test-amd64-i386-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-i386-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-i386-xl-pvshim fail test-amd64-amd64-pygrub pass test-armhf-armhf-libvirt-qcow2 pass test-amd64-amd64-xl-qcow2 pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw pass test-amd64-i386-libvirt-raw pass test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds pass test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-amd64-i386-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-i386-examine-uefi fail test-amd64-amd64-libvirt-vhd pass test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd pass test-amd64-i386-xl-vhd pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Published tested tree is already up to date. From xen-devel-bounces@lists.xenproject.org Sun Jun 25 14:28:57 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sun, 25 Jun 2023 14:28:57 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554847.866254 (Exim 4.92) (envelope-from ) id 1qDQjA-0005uY-TP; Sun, 25 Jun 2023 14:28:32 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554847.866254; Sun, 25 Jun 2023 14:28:32 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDQjA-0005uR-QZ; Sun, 25 Jun 2023 14:28:32 +0000 Received: by outflank-mailman (input) for mailman id 554847; Sun, 25 Jun 2023 14:28:31 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDQj9-0005uL-N4 for xen-devel@lists.xenproject.org; Sun, 25 Jun 2023 14:28:31 +0000 Received: from EUR02-AM0-obe.outbound.protection.outlook.com (mail-am0eur02on2062e.outbound.protection.outlook.com [2a01:111:f400:fe13::62e]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 8cbeffd4-1364-11ee-8611-37d641c3527e; Sun, 25 Jun 2023 16:28:28 +0200 (CEST) Received: from DB7PR05CA0041.eurprd05.prod.outlook.com (2603:10a6:10:2e::18) by DU0PR08MB8884.eurprd08.prod.outlook.com (2603:10a6:10:47f::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.26; Sun, 25 Jun 2023 14:28:24 +0000 Received: from DBAEUR03FT005.eop-EUR03.prod.protection.outlook.com (2603:10a6:10:2e:cafe::c9) by DB7PR05CA0041.outlook.office365.com (2603:10a6:10:2e::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.33 via Frontend Transport; Sun, 25 Jun 2023 14:28:23 +0000 Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by DBAEUR03FT005.mail.protection.outlook.com (100.127.142.81) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.14 via Frontend Transport; Sun, 25 Jun 2023 14:28:23 +0000 Received: ("Tessian outbound e2424c13b707:v142"); Sun, 25 Jun 2023 14:28:23 +0000 Received: from e804cd5a517f.2 by 64aa7808-outbound-1.mta.getcheckrecipient.com id A947F473-BCA2-4FF9-86C1-83043F45123E.1; Sun, 25 Jun 2023 14:28:12 +0000 Received: from EUR04-VI1-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id e804cd5a517f.2 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Sun, 25 Jun 2023 14:28:12 +0000 Received: from AM9PR08MB7165.eurprd08.prod.outlook.com (2603:10a6:20b:41f::23) by PA4PR08MB7388.eurprd08.prod.outlook.com (2603:10a6:102:2a3::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.26; Sun, 25 Jun 2023 14:28:08 +0000 Received: from AM9PR08MB7165.eurprd08.prod.outlook.com ([fe80::a4db:63a3:ef32:ffd3]) by AM9PR08MB7165.eurprd08.prod.outlook.com ([fe80::a4db:63a3:ef32:ffd3%4]) with mapi id 15.20.6521.026; Sun, 25 Jun 2023 14:28:07 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 8cbeffd4-1364-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=ANaoh4H2IU1H+49jUIcLNOQtDeymUMOLFQWr6x2Z3p4=; b=g3RMIcU3ZLUpBwERBaO1JGQaQQ4+h1dhvlGSlmO/8C+X0HvwpSIy0Bp7Rw/jFOSEouHFn0hoDrTMCPbAe0+6Zwm6rTBeOvRY+iArrHNmzaXizpNBeFfjEQVI/+xs8rdiNicqmXMmeZCQwLbRVDTKsxsqMxN4pm4wrVxzlH1p1fs= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C X-CheckRecipientChecked: true X-CR-MTA-CID: 36ead1edd061a34d X-CR-MTA-TID: 64aa7808 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=T05QuoRckaSmcd5xVcLRSpcRi06mIoYNx/DnxHBVNtFxoGDZT7JeJ71CkHNQ9xAeDSWjIeFdhn7/UbfwuvxTu7i7qESRCnjj9K/vYttbpo1DwLsRBJ1dlhzqiqL1AqSpnwkgSiLWBWy1hwTEidkjbbsYUn7nQL+50tLqbbiLTppSQJR5d+GEPSKarLcQdweOBmQTiTyrkgfl29IOvLkoM+cQpEyevghnNNrcCKsPGVIFWzPO4BwbdDrI554tAKW5m7XogZsXiQR0gU532tevyQx4bXZtrpfovd5lwY7W+ZWvbxEYnd9rNrtp0OFR/rAX9JC4WRipU5tzcT75QcglwQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=ANaoh4H2IU1H+49jUIcLNOQtDeymUMOLFQWr6x2Z3p4=; b=UTO6XYVVyDo3KtnVRQZ75U4POg08ryu/qn8ZuoKkM6xVweNhQP2llXw9uL/yGyzB7eco6Icru7laR64eVI1NQx49APx7CZGq4D3ClchqOJ0HXA0W/TSvpZLytnOuDuL2m/QsAnj34qdK/cpPyrDy9Dx/e3LCUhs/AsOwebMnfTZch4Dta1aOuCH1CEhEzIOj0KyiRzbR78iwFnBkPuKq1lFMoPoKY1dAlO1+cCkx7ou9m0P/qP3kBTPlHkDLvm/j7nRy+nQ3S8EzpaUYN9ErvTSV6e+xpiS97ltN+YLy6/aneTYmqxm1nar1OLSSO0lqWZWH5S6pMAY5DPvzsLs9Hw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=ANaoh4H2IU1H+49jUIcLNOQtDeymUMOLFQWr6x2Z3p4=; b=g3RMIcU3ZLUpBwERBaO1JGQaQQ4+h1dhvlGSlmO/8C+X0HvwpSIy0Bp7Rw/jFOSEouHFn0hoDrTMCPbAe0+6Zwm6rTBeOvRY+iArrHNmzaXizpNBeFfjEQVI/+xs8rdiNicqmXMmeZCQwLbRVDTKsxsqMxN4pm4wrVxzlH1p1fs= From: Rahul Singh To: Julien Grall CC: Stewart Hildebrand , "xen-devel@lists.xenproject.org" , Stefano Stabellini , Bertrand Marquis , Volodymyr Babchuk , Jan Beulich , Paul Durrant , =?utf-8?B?Um9nZXIgUGF1IE1vbm7DqQ==?= Subject: Re: [PATCH v4 0/7] SMMU handling for PCIe Passthrough on ARM Thread-Topic: [PATCH v4 0/7] SMMU handling for PCIe Passthrough on ARM Thread-Index: AQHZmOzwkN/rzzqOXEeFGAJzMhA6y69+7w0AgA15XICADy6aAIAAGZ8A Date: Sun, 25 Jun 2023 14:28:05 +0000 Message-ID: References: <20230607030220.22698-1-stewart.hildebrand@amd.com> <1f5aa53c-a9ed-41c3-2a4d-38538912cdd5@xen.org> <4b08b38e-3beb-6b72-83fb-6dd8c8702718@amd.com> <5f0b5a38-710f-f820-1dc7-345ae16047ad@xen.org> In-Reply-To: <5f0b5a38-710f-f820-1dc7-345ae16047ad@xen.org> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-traffictypediagnostic: AM9PR08MB7165:EE_|PA4PR08MB7388:EE_|DBAEUR03FT005:EE_|DU0PR08MB8884:EE_ X-MS-Office365-Filtering-Correlation-Id: 93bbcc2f-0d80-44c3-32e7-08db75886e98 x-checkrecipientrouted: true nodisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: atzxHMVBMSBJYwZnJ28Pl5VSbf1dbm2ptDs1nlR+BUABkJjTO7mX9F1YIijD2Ldp5bexXer73ATht+7C8A8Vhjp+3GD/ha9xjnzeVGjJakVOa7/feDlO7B1CA9HXFEj34vLcbyg6AvUpGIIgQiru1CjhHrZr0Z9iaKeRbM5yG9kf4bS8efyUSSupn4aZtF8p0kQWW1CsHiD3wWAxg/0XWar5hNc482i3jfiB15c877J2mCzHuqKqxuyOUMF+a2cs3+SqJfxC4uDk0NlNV0NdFpFq0K7EpG50dQHHC787zuD3/MOG0sCDIRI9y6pYE8cVG5NZfX/AiKv3wlP9uzELMUqeCDtDAdKYGInhZOJ7WEn7qRFr4rjdjW6lPn7uczP6cpAflPTHZMKsRo+9n/Yx8F/nvJcQanR0Vi5jkf18Rj9lI53cSAg4vzd7d8EQF1NkpX5Aev1GU2qGNf3k1igaNIWNPhGBGAXGbg4Ub2kNi1tRVEV/nLJqCJEwfx1+nI8R9bZRMopBKlsIuKjsRxelJgsSiCCE1cZFVRvI4fhuLn2doGA1sWs9O7kIVOeu65JQFDARv53Hz3x7d85JNjNsHBk3WwePhqC0OE9jR2cXqGMfhGcn8gejocrN1ehNpMkNNFGaMWYHWJPJyoKdFZVLpg== X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM9PR08MB7165.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(376002)(136003)(346002)(396003)(39860400002)(366004)(451199021)(2906002)(6486002)(71200400001)(122000001)(38100700002)(83380400001)(2616005)(6506007)(26005)(186003)(53546011)(41300700001)(54906003)(86362001)(38070700005)(6512007)(478600001)(316002)(36756003)(91956017)(66476007)(66556008)(4326008)(64756008)(66946007)(66446008)(6916009)(33656002)(76116006)(5660300002)(8676002)(8936002)(45980500001);DIR:OUT;SFP:1101; Content-Type: text/plain; charset="utf-8" Content-ID: <07C818235510CE4FAE17730D687D0912@eurprd08.prod.outlook.com> Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR08MB7388 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: DBAEUR03FT005.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: b8f85017-a7f5-4617-990a-08db75886403 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: gLR7JAO0qPr5ivbOOEzKnEhBSKpAev+XmgYDEHO13Q59MhDRDP1HCDM3RHV9Gfq2CdQQf1C/CBEU6/HhKA7ipUbQx6Tz7Pr5iX6QtFVL84Qa+26lWnqvh2DtbvpBRIc/YPDifrzTAw8IouHOoKrHURJZ5TMzf/hTqT88hRIlCFLO0pgvo2RO49z/FQhLnCXkfm7PUPtWv156vi4CrQl62Ph065avQOozuVaJKvW8foWpFQEahpJ4hy+Mcc48io/bzXdjO5+fs3d21IOmCjtDsBbJbSiumGDBWjS82XB2G5KPM4wP1x/dl2DQFeH2oVlVk66sgYck9h9CgeEbGYf2yj22OZlBYdZA6Uxgr3QVahQ00Nh6/1X87gwSCOwIalBl0IkcHh7Erl5t9kIg5RKFem9G6iouQp7BqkTeSxVLMKdmrz7FxCchzNkGMFTF/GZoSYZZImN9kyaOXMnXJXzbIUVeZssJMpi44VqAkglJyl37W46Al/Qz4ERngzClqthiSIzfvpfmtrFlESW1XQMy0dLyRz3HSV16IqAxXnRQ5arpy92+p2ujQqd78k6nToszjLWsCZeJHmExi6lNOPpaRm33xB/n7jYyXMxk4J3zlXoNsL+6Cm/wyuf8AOILb+HjdR4i/D3HHB+Et+/gxu8hUDHz1SN9mUDFNP6KTIm6k4tyleWh8NvvN8+IxB6OmDVcVU/695GvkztjEPMDmrFXsA== X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230028)(4636009)(396003)(346002)(136003)(376002)(39860400002)(451199021)(46966006)(36840700001)(5660300002)(70586007)(70206006)(4326008)(33656002)(478600001)(36756003)(316002)(8676002)(6862004)(8936002)(2906002)(40480700001)(36860700001)(54906003)(86362001)(41300700001)(6486002)(82310400005)(186003)(53546011)(47076005)(336012)(6512007)(6506007)(26005)(356005)(82740400003)(107886003)(83380400001)(81166007)(2616005);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Jun 2023 14:28:23.4527 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 93bbcc2f-0d80-44c3-32e7-08db75886e98 X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: DBAEUR03FT005.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU0PR08MB8884 SGkgSnVsaWVuLA0KDQo+IE9uIDI1IEp1biAyMDIzLCBhdCAxOjU2IHBtLCBKdWxpZW4gR3JhbGwg PGp1bGllbkB4ZW4ub3JnPiB3cm90ZToNCj4gDQo+IEhpLA0KPiANCj4gT24gMTUvMDYvMjAyMyAy MjowNSwgU3Rld2FydCBIaWxkZWJyYW5kIHdyb3RlOg0KPj4gT24gNi83LzIzIDAzOjE5LCBKdWxp ZW4gR3JhbGwgd3JvdGU6DQo+Pj4gT24gMDcvMDYvMjAyMyAwNDowMiwgU3Rld2FydCBIaWxkZWJy YW5kIHdyb3RlOg0KPj4+PiBUaGlzIHNlcmllcyBpbnRyb2R1Y2VzIFNNTVUgaGFuZGxpbmcgZm9y IFBDSWUgcGFzc3Rocm91Z2ggb24gQVJNLiBUaGVzZSBwYXRjaGVzDQo+Pj4+IGFyZSBpbmRlcGVu ZGVudCBmcm9tIChhbmQgZG9uJ3QgZGVwZW5kIG9uKSB0aGUgdlBDSSByZWZlcmVuY2UgY291bnRp bmcvbG9ja2luZw0KPj4+PiB3b3JrIGluIHByb2dyZXNzLCBhbmQgc2hvdWxkIGJlIGFibGUgdG8g YmUgdXBzdHJlYW1lZCBpbmRlcGVuZGVudGx5Lg0KPj4+IA0KPj4+IENhbiB5b3UgY2xhcmlmeSBo b3cgdGhpcyBjb2RlIHdhcyB0ZXN0ZWQ/IERvZXMgdGhpcyByZXF1aXJlIGNvZGUgbm90IHlldA0K Pj4+IHVwc3RyZWFtZWQ/DQo+PiBJJ20gdGVzdGluZyB0aGUgc2VyaWVzIHN0YW5kYWxvbmUgKCsg Y29uZmlnIGNoYW5nZXMpIGJ5IHVzaW5nIGEgUENJIGRldmljZSBpbiBkb20wLCBhbmQgYWxzbyBp biBjb21iaW5hdGlvbiB3aXRoIHRoZSB2UENJIHNlcmllcyBbM10gWzRdIGZvciBwYXNzdGhyb3Vn aCB0byBhIGRvbVUuDQo+PiBIZXJlIGFyZSBzb21lIG1vcmUgZGV0YWlscyBvbiB0aGUgdGVzdCBj YXNlcyBJJ20gdXNpbmcuDQo+IA0KPiBUaGFua3MgdGhhdCdzIGhlbHBmdWwhIE9uZSBjb21tZW50 IGFib3V0IHRoZSBmaXJzdCB0ZXN0IGNhc2UuDQo+IA0KPj4gMS4gVXNpbmcgdGhlIFBDSSBkZXZp Y2UgaW4gZG9tMCB3aXRoIHRoZSBwY2ktcGFzc3Rocm91Z2g9eWVzIGFyZy4gSW4gdGhpcyBjYXNl IGEgY291cGxlIG9mIGFkZGl0aW9uYWwgY29uZmlnIGNoYW5nZXMgWzFdIFsyXSBhcmUgbmVlZGVk IHRvIHNlbGVjdCBDT05GSUdfSEFTX1BDST15LCBDT05GSUdfSEFTX1ZQQ0k9eSwgYW5kIG1ha2Ug aGFzX3ZwY2koKSByZXR1cm4gdHJ1ZS4gQXNpZGUgZnJvbSB0aGlzIHNlcmllcyBpdHNlbGYgYW5k IHRoZSBjb25maWcgY2hhbmdlcywgbm90aGluZyBlbHNlIG5vdC15ZXQtdXBzdHJlYW1lZCBpcyBy ZXF1aXJlZCBmb3IgdGhpcyB0ZXN0IGNhc2UuIEl0IGlzIG9uIG15IFRPRE8gbGlzdCB0byB1cHN0 cmVhbSB0aGVzZSBjb25maWcgY2hhbmdlcywgd2hpY2ggSSB0aGluayB3aWxsIGJlIHVzZWZ1bCBv biB0aGVpciBvd24sIG5vdCBuZWNlc3NhcmlseSBhcyBwYXJ0IG9mIGFueSBvdGhlciBzZXJpZXMu DQo+IA0KPiBJIGZpbmQgYSBiaXQgY29uZnVzaW5nIHRoYXQgdGhlIElPTU1VIHN1cHBvcnQgZm9y IGRvbTAgaXMgZ2F0ZWQgYmVoaW5kICdwY2ktcGFzc3Rocm91Z2gnLiBJIHdhcyBleHBlY3Rpbmcg dGhhdCB0aGUgaW9tbXUgd291bGQgYWxzbyBiZSBwcm9wZXJseSBjb25maWd1cmVkIGZvciBQQ0kg aWYgd2UgdXNpbmcgJ2lvbW11PXllcycuDQoNCkFzIHBlciBteSB1bmRlcnN0YW5kaW5nIFhlbiBj YW4gY29uZmlndXJlIHRoZSBpb21tdXMgZm9yIFBDSSBkZXZpY2Ugd2l0aG91dCAicGNpLXBhc3N0 aHJvdWdo4oCdIGVuYWJsZWQNCmlmIHdlIGZvbGxvdyBiZWxvdyBwYXRoOg0KDQogICAxKSBQQ0kg aG9zdCBicmlkZ2UgaXMgYWxyZWFkeSBlbnVtZXJhdGVkIGFuZCBwb3dlcmVkIG9uIGluIGZpcm13 YXJlIGJlZm9yZSBYZW4gYm9vdA0KICAgMikgUENJIGRldmljZXMgYXJlIHNjYW5uZWQgaW4gWGVu Lg0KICAgICAgIChodHRwczovL2dpdGxhYi5jb20veGVuLXByb2plY3QvcGVvcGxlL2JtYXJxdWlz L3hlbi1hcm0tcG9jLy0vY29tbWl0L2JjZTQ2M2UxNTg4YTQ1ZTFiZmRmNTlmYzBkNWY4OGIxNjYw NGU0MzkpDQogICAzKSBBZnRlciBzY2FubmluZyB0aGUgUENJIGRldmljZXMgYWRkIFBDSSBkZXZp Y2VzIHRvIGlvbW11ICggaW9tbXVfYWRkX2RldmljZSgpICkNCg0KSWYgUENJIGhvc3QgYnJpZGdl IGlzIG5vdCBlbnVtZXJhdGVkIHRoZW4gd2UgbmVlZCAicGNpLXBhc3N0aHJvdWdo4oCdIGVuYWJs ZWQgdG8gYWxsb3cgTGludXggdG8gZG8NCmVudW1lcmF0aW9uIGFuZCB0byBpbmZvcm0gWGVuIHZp YSBQSFlTREVWT1BfcGNpX2RldmljZV9hZGQgaHlwZXIgY2FsbCB0byBhZGQgUENJIGRldmljZXMg aW4gWGVuDQpUaGlzIGlzIGltcGxlbWVudGVkIGFzIHBhcnQgb2YgUENJIHBhc3N0aHJvdWdoIGZl YXR1cmUuDQoNClJlZ2FyZHMsDQpSYWh1bA0KDQo= From xen-devel-bounces@lists.xenproject.org Sun Jun 25 14:33:20 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sun, 25 Jun 2023 14:33:20 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554853.866263 (Exim 4.92) (envelope-from ) id 1qDQni-0007Py-JB; Sun, 25 Jun 2023 14:33:14 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554853.866263; Sun, 25 Jun 2023 14:33:14 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDQni-0007Pr-GG; Sun, 25 Jun 2023 14:33:14 +0000 Received: by outflank-mailman (input) for mailman id 554853; Sun, 25 Jun 2023 14:33:13 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDQnh-0007Pl-91 for xen-devel@lists.xenproject.org; Sun, 25 Jun 2023 14:33:13 +0000 Received: from EUR04-DB3-obe.outbound.protection.outlook.com (mail-db3eur04on0601.outbound.protection.outlook.com [2a01:111:f400:fe0c::601]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 3610cfde-1365-11ee-b237-6b7b168915f2; Sun, 25 Jun 2023 16:33:12 +0200 (CEST) Received: from DUZPR01CA0011.eurprd01.prod.exchangelabs.com (2603:10a6:10:3c3::19) by AS2PR08MB9151.eurprd08.prod.outlook.com (2603:10a6:20b:579::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.26; Sun, 25 Jun 2023 14:33:07 +0000 Received: from DBAEUR03FT023.eop-EUR03.prod.protection.outlook.com (2603:10a6:10:3c3:cafe::51) by DUZPR01CA0011.outlook.office365.com (2603:10a6:10:3c3::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.32 via Frontend Transport; Sun, 25 Jun 2023 14:33:07 +0000 Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by DBAEUR03FT023.mail.protection.outlook.com (100.127.142.253) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.15 via Frontend Transport; Sun, 25 Jun 2023 14:33:07 +0000 Received: ("Tessian outbound 52217515e112:v142"); Sun, 25 Jun 2023 14:33:07 +0000 Received: from a39d50f82303.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 41B70822-4154-4A81-83EC-A10492C83223.1; Sun, 25 Jun 2023 14:32:59 +0000 Received: from EUR04-VI1-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id a39d50f82303.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Sun, 25 Jun 2023 14:32:59 +0000 Received: from AM6PR08MB3749.eurprd08.prod.outlook.com (2603:10a6:20b:8f::22) by PA4PR08MB7642.eurprd08.prod.outlook.com (2603:10a6:102:260::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.26; Sun, 25 Jun 2023 14:32:55 +0000 Received: from AM6PR08MB3749.eurprd08.prod.outlook.com ([fe80::ed0b:5730:a1f9:577b]) by AM6PR08MB3749.eurprd08.prod.outlook.com ([fe80::ed0b:5730:a1f9:577b%5]) with mapi id 15.20.6521.026; Sun, 25 Jun 2023 14:32:55 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 3610cfde-1365-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=bFYCUJMn7nLyfNMjYqJvs8tm3Wlt9BfMr+Bf/klKkAw=; b=MseqwgH34eE4dhXggna7g1NTn9UdwixNc2JYw+ubNA2IEe+dAfe91JoLffo4+uzLTZJOE6DkZADQVM5Kjham+NufoEnc3QqPR73tAI27TSD9uCuGh13FLJJimtkE68AX46jLAp4UC3RjfpsCVkQqFZhN0WRaOHe/YvaW4A9o74A= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C X-CheckRecipientChecked: true X-CR-MTA-CID: 497fefe026710c5f X-CR-MTA-TID: 64aa7808 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=aD685B64IjB4USQwS3FIiUy7WaChX+itV7A8OIeoYEs83WlM5HA/GDbW6U5lHFBh2M1tOFOmhJ7xwbrDXYcPNov0QCPfMAm43IG/K1zV67Y8QrZRyI+ZGr00Tse72mMlpM5UCXu/6u7/8qi9epSQcsrU6aaQLUAvshHQQQZ41nt8o8mzCUu8MpNah7vxdD0AwRJ9VdVHhiuc/V5W8YIHnzVEbZRDV/co2CsbNijYPyj0YkvDBgLE8eUCDckcZdxqF7uSRkF9zGgM+GaJVWZnrmeJLRWidWz4PwY3nB06sVpSBt6mFfqD2JV08b67tZEatfb9HyoyMfqaum8qx1eyfw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=bFYCUJMn7nLyfNMjYqJvs8tm3Wlt9BfMr+Bf/klKkAw=; b=PC4X5QKSTwbuLr7frIwRoNulCrzMdp149A4rRwB9czqX1A2iJF/+ThYBpBuLqP6EMh6LfhIbMsdIvu1SOAE1KzeEZ8P2PcnnWdUjXB0DJr2Yejgq8xjOygDwImObGTo2wwMpLN8yLRIgaA+lIOYclhLdvENZ+vn0AVhlpg4TyjvNBaGwoEb+fpQMXoD7GPnMu8pYFCIPv97SrAWX6XJ/Ev+QDj5PDpG7NAdTT9cKwdhaMuaAL9mOjv2xy0+q5AVKawdJVmDg+i2N6Cwcd8z01uCBW1yLcVNcp4OVgxlHDT+QX+SedUCnlAgW/o87kM72o/8iLdH/gyjJhvQ/gEcS8g== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=bFYCUJMn7nLyfNMjYqJvs8tm3Wlt9BfMr+Bf/klKkAw=; b=MseqwgH34eE4dhXggna7g1NTn9UdwixNc2JYw+ubNA2IEe+dAfe91JoLffo4+uzLTZJOE6DkZADQVM5Kjham+NufoEnc3QqPR73tAI27TSD9uCuGh13FLJJimtkE68AX46jLAp4UC3RjfpsCVkQqFZhN0WRaOHe/YvaW4A9o74A= From: Luca Fancellu To: Xen-devel CC: "stewart.hildebrand@amd.com" Subject: xen summit 2023 design session: Upstreaming PCIe passthrough on ARM Thread-Topic: xen summit 2023 design session: Upstreaming PCIe passthrough on ARM Thread-Index: AQHZp3HuskwJAQrEp0CUJDcD40iX2A== Date: Sun, 25 Jun 2023 14:32:55 +0000 Message-ID: <63D0DFC4-258D-43A1-9D99-3E46220CBD24@arm.com> Accept-Language: en-GB, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-mailer: Apple Mail (2.3731.600.7) Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-traffictypediagnostic: AM6PR08MB3749:EE_|PA4PR08MB7642:EE_|DBAEUR03FT023:EE_|AS2PR08MB9151:EE_ X-MS-Office365-Filtering-Correlation-Id: 49a229f1-0f8a-4fcb-330f-08db758917d7 x-checkrecipientrouted: true nodisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: n+Tij93I/CxPhQ/3Uxib26ijL404q3kR1if7zGnIXJnNp0q5PpuLuEsHD2CHhn/+SQKtGMPDZ3LGj5/R8Wa9JjO1tUJShMo5Fezp0++GkYtMndGJc/QuifJrclUDS+Xucu9g6XWyaBgey13i9iVVs0ITQ4E5gKWshHb2eyNVyz9FGKeYoW9Cb/dFxnqRTJ2pC2TLofq6tuQnV9LRn2VkUrO2eXw/Vm9+zkH3EK8slegXph8aNM7XOcEur0p6iINzrQvV4kH/0Qj1cqGCSNhhgrpLgfSyydHUkmRTxBKOYilQbM1HDwBAEtM3sgnIbQowy0M/wqsTd+RN9U/pDsapuhzORe0bPW4VKVnzGlMrtPHMUUK+Ke6x+yEdAKRBC/I8BD0B4DKJ7cjIVS5fXerRYdjBzZkINjiHk9T3I9k1XW3yqngMYnm/fh7KhMAexKlrTNd/cDH4S2Gm2k+DLxjIBbvb43JZ47NIhcTwke3KH8evY/NIwGXCInWkaNUujuGjrGfruoQbYrO72DAArWVmdZlMnjqcWpMWRHEQjIYMNurcbDdMI+AxRXEbKgt0jDz+WGPURWiA4xBTFoqC4vXrpw3BbDlCFDIbP77vMIGwpq5syoQF5y8RpvjqjFOmCRara4Ups1qZHwltrJnQ06W9jg== X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM6PR08MB3749.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(396003)(136003)(39860400002)(376002)(366004)(346002)(451199021)(5660300002)(4326008)(6916009)(33656002)(316002)(66476007)(66946007)(66556008)(66446008)(64756008)(478600001)(36756003)(91956017)(76116006)(66899021)(8676002)(8936002)(2906002)(86362001)(38070700005)(41300700001)(6486002)(71200400001)(6512007)(6506007)(26005)(186003)(122000001)(38100700002)(83380400001)(2616005)(45980500001);DIR:OUT;SFP:1101; Content-Type: text/plain; charset="utf-8" Content-ID: <02C68DD8F6F3C14982A77ED4DF1D7BD1@eurprd08.prod.outlook.com> Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR08MB7642 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: DBAEUR03FT023.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: db2daca3-0076-48eb-5695-08db7589109b X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: enhOulpHuAMUQEkUKYGpDej8NJ/5ehhbaWTerN8WlLOZhhxQJItwnxNAVPp2RzNhy9z3R6sAMzJEE/jbT0u5c5lZMxmY40d1UisMFOuVZn5q7nwUD7OS0Of8m5fVknA+dJrBvVD+Gh2VE/AcuvWiKSUKRzKlpvceiLGcUo1Y0+eyfC1Gxh3sCgiSKBQko+flGQnhJtTAbun+ZMEcG2ReJABqplBADMKB0hVFzopozDewzZmMbI+lSV9Dk4+32XOirN2Aty3WM9Nqw75LbZol0kuO91NE0ZbRkq1znmroHWKFGIsTOUL2QHDCr+ZtMw+AUYy4wvpi6ZW/rP2rLssfMCRK2FsvcCWH2sKMk2vqlwP5DIc6Trz1XoxiWsnbb3BMTMLf9eTGDsTibtPcoWqcuAIX4DvO3CDWtHHlRmBwWIpdJdpRDXJCDfOzIhGEsd7qv4zAO8U629TcsBZQY29xatFEqqZVyl/EufJWQ0hA3mITeuRf/UCEY8oim78X/qYpCvxa0KMd6kLEXApyI78nHsVIk3UfJGnPi242pD6nvbEDLK7EVWG0s/XYjG8dQCAFAiOGdmQ1w95gGDT3louJrU8imCwp8Ookc3t3EXdts3/3TOvkc1qL2sAP3YucJlQFLGeHBbsZyX6MVFFQnS5l/+V+pOHuBDGzOgudoxWHkNFdAZQbSxUrs3NLgoyWgzoGFpgqOjesShu79nTTA/6TNQ== X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230028)(4636009)(376002)(39860400002)(396003)(346002)(136003)(451199021)(46966006)(36840700001)(66899021)(82310400005)(36860700001)(36756003)(33656002)(70206006)(356005)(5660300002)(6916009)(86362001)(8936002)(8676002)(41300700001)(81166007)(4326008)(40480700001)(316002)(70586007)(82740400003)(47076005)(6506007)(26005)(6512007)(2906002)(186003)(6486002)(478600001)(83380400001)(336012)(2616005);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Jun 2023 14:33:07.4005 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 49a229f1-0f8a-4fcb-330f-08db758917d7 X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: DBAEUR03FT023.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS2PR08MB9151 LSBCZXJ0cmFuZDogd2UgYXJlIHRhbGtpbmcgYWJvdXQgdGhlIHdvcmsgZm9yIFBDSSBwYXNzdGhy b3VnaCBvbiBBUk0gKGFuZCBQVkggW1N0ZWZhbm9dKQ0KLSBTdGVmYW5vOiB0aGUgcHJvYmxlbSBp cyB0aGF0IGl0J3MgdGFraW5nIGEgbG90IG9mIHRpbWUgdG8gbWVyZ2UgdGhlIHNlcmllLCBob3cg dG8gbWFrZSBwcm9ncmVzcz8NCiAgU3Rld2FydCBpcyBhbGxvY2F0ZWQgb24gdGhhdCwgb3JpZ2lu YWwgd29yayBmcm9tIGVwYW0gYW5kIGFybSwgdGhlIGZlYXR1cmUgd29ya3MsIGlzIG5vdCBwZXJm ZWN0LCBidXQgaXQncyB0ZXN0YWJsZS4NCi0gSmFuOiBtYWluIHByb2JsZW0gaXMgdGhlIGxvY2sN ClsuLi5dDQotIFJvZ2VyOiB0aGUgbGFzdCBzdGF0dXMgaXMgbG9va2luZyBnb29kLCBtYXliZSBq dXN0IGEgY291cGxlIG9mIGRlYWRsb2NrDQotIFN0ZWZhbm86IFNvbWUgcHJvYmxlbSBjb21lcyBh bHNvIGZyb20gdGhlIGZhY3QgdGhhdCBjb250cmlidXRvciBhbmQgbWFpbnRhaW5lciBzaG91bGQg c3luYw0KLSBKYW46IFJvZ2VyOiBbdGVjaG5pY2FsIGRpc2N1c3Npb24gYWJvdXQgbG9ja3MgaW4g cGNpIHN0cnVjdHVyZXMsIGxvY2sgaW52ZXJzaW9uXQ0KLSBKYW46IFdlIHNob3VsZCBub3QgaW50 cm9kdWNlIHRvbyBtYW55IGxvY2tzDQotIFN0ZWZhbm86IEJlcnRyYW5kOiBhZ3JlZSwgd2Ugc2hv dWxkIGV4dGVuZCBjdXJyZW50IGxvY2tzDQotIFJvZ2VyOiBNYXliZSBwZXIgZG9tYWluIGxvY2tz IGlzIHRoZSBiZXN0IG9uZSBmb3Igbm93DQotIEJlcnRyYW5kOiBJIGFncmVlIG9uIHRoYXQsIHBh cnRpYWxseSwgZXZlbiBpZiBpdCBpcyBub3QgaWRlYWwsIGJ1dCBmb3Igbm93IGl0IGNvdWxkIGJl IG9rLg0KLSBSb2dlcjogSSB3b3VsZCBsaWtlIHRoZSBzZXJpZSByZWJhc2VkDQotIFN0ZWZhbm86 IHllcyBJIGNhbiBnZXQgdGhlIHBlb3BsZSB3b3JraW5nIG9uIHRoYXQgdG8gcmViYXNlIGFuZCBz eW5jIGJldHdlZW4gdGhlbS4gd2hlbiBJIHdhcyByZXZpZXdpbmcgdGhlIGxvY2tpbmcsIGl0IHdh cyBkaWZmaWN1bHQgdG8gcmV2aWV3IHdpdGhvdXQgdGhlIG90aGVyIHBpZWNlcy4NCi0gUm9nZXI6 IFRoZXJlIGlzIGEgc2xvdyB0dXJuIGFyb3VuZCBpbiB0aGUgbWFpbGluZyBsaXN0DQotIEJlcnRy YW5kOiBDYW4gU3Rld2FydCBoZWxwIG9uIHRoZSBsb2NrIHByb2JsZW0gYW5kIGNvZGUgY2hhbmdl cz8gDQotIFN0ZWZhbm86IEkgaGF2ZSAyIGFjdGlvbnMsIHN5bmMgd2l0aCBlcGFtIHRvIGhhdmUg dGhlIHJlYmFzZSwgYW5kIHN5bmMgd2l0aCBTdGV3YXJ0IHRvIGFkZHJlc3MgaW4gYSBmYXN0IHBh Y2UgdGhlIGNvbW1lbnRzIGNvbWluZyBmcm9tIHRoZSBtYWlsaW5nIGxpc3QNCiAtIEJlcnRyYW5k OiB3ZSBuZWVkIHRvIG1hbmFnZSB0byBoYXZlIHRoZSBsb2NraW5nLiBXZSBuZWVkIHRvIGNvbnRp bnVlIHJldmlldyBhbHNvIGluIGNvZGUgZnJlZXplLCBiZWNhdXNlIHdlIGNhbiByZXZpZXcgZXZl biBpZiB3ZSBkb24ndCBjb21taXQuIFNvIG91ciBnb2FsIGlzIDQuMTkuDQogLSBKYW46IEkgdXN1 YWxseSB0ZW5kIHRvIG5vdCBzZW5kIHBhdGNoZXMgYXBhcnQgZnJvbSBidWdmaXhlcyBvbiBjb2Rl IGZyZWV6ZSwgYnV0IGluIHRoaXMgY2FzZSBpdCBjYW4gYmUgb2sgYmVjYXVzZSB0aGlzIGZlYXR1 cmUgaXMgc3R1Y2sgZnJvbSBhIGxvbmcgdGltZS4NCg0KDQpTb3JyeSBidXQgSSB3YXNu4oCZdCBh YmxlIHRvIHRha2UgbW9yZSByZWZpbmVkIG5vdGVzLg0KDQpDaGVlcnMsDQpMdWNh From xen-devel-bounces@lists.xenproject.org Sun Jun 25 18:07:53 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sun, 25 Jun 2023 18:07:53 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554865.866274 (Exim 4.92) (envelope-from ) id 1qDU95-0003Yp-QA; Sun, 25 Jun 2023 18:07:31 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554865.866274; Sun, 25 Jun 2023 18:07:31 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDU95-0003Yi-Mx; Sun, 25 Jun 2023 18:07:31 +0000 Received: by outflank-mailman (input) for mailman id 554865; Sun, 25 Jun 2023 18:07:30 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDU94-0003YY-5K; Sun, 25 Jun 2023 18:07:30 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDU93-00082c-U7; Sun, 25 Jun 2023 18:07:29 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDU93-00023v-KH; Sun, 25 Jun 2023 18:07:29 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qDU93-0005zk-Jq; Sun, 25 Jun 2023 18:07:29 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=K4SowPtzs0Fc+napQ980AuAbIRGYEF1JMrOW497DNC8=; b=7M/MjLGTLjc6MWR+0KHaqOlFpe SG+DFx2TKhDW4L/4LtSS5tykjt6o3Oz89D84PNZnzCZM5+5PYYWQsY2WxeIaCSct0DtZ48WFUzZX8 Yk5fLoPfEuksaAX+1lVOWeS0R1oG2iFGXudXwdjt99AI2KZKA1tPjzD10cqZbDTa0aws=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [linux-linus test] 181583: regressions - FAIL X-Osstest-Failures: linux-linus:test-armhf-armhf-xl-credit1:xen-boot:fail:regression linux-linus:test-armhf-armhf-xl-arndale:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-raw:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-credit2:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-rtds:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking linux-linus:test-armhf-armhf-libvirt:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-examine:reboot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-qcow2:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-vhd:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-multivcpu:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-qcow2:migrate-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-raw:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: linux=a92b7d26c743b9dc06d520f863d624e94978a1d9 X-Osstest-Versions-That: linux=6c538e1adbfc696ac4747fb10d63e704344f763d From: osstest service owner Date: Sun, 25 Jun 2023 18:07:29 +0000 flight 181583 linux-linus real [real] flight 181594 linux-linus real-retest [real] http://logs.test-lab.xenproject.org/osstest/logs/181583/ http://logs.test-lab.xenproject.org/osstest/logs/181594/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: test-armhf-armhf-xl-credit1 8 xen-boot fail REGR. vs. 180278 Tests which did not succeed, but are not blocking: test-armhf-armhf-xl-arndale 8 xen-boot fail like 180278 test-armhf-armhf-xl 8 xen-boot fail like 180278 test-armhf-armhf-libvirt-raw 8 xen-boot fail like 180278 test-armhf-armhf-xl-credit2 8 xen-boot fail like 180278 test-armhf-armhf-xl-rtds 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 180278 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 180278 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 180278 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 180278 test-armhf-armhf-libvirt 8 xen-boot fail like 180278 test-armhf-armhf-examine 8 reboot fail like 180278 test-armhf-armhf-libvirt-qcow2 8 xen-boot fail like 180278 test-armhf-armhf-xl-vhd 8 xen-boot fail like 180278 test-armhf-armhf-xl-multivcpu 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 180278 test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qcow2 14 migrate-support-check fail never pass test-amd64-amd64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass version targeted for testing: linux a92b7d26c743b9dc06d520f863d624e94978a1d9 baseline version: linux 6c538e1adbfc696ac4747fb10d63e704344f763d Last test of basis 180278 2023-04-16 19:41:46 Z 69 days Failing since 180281 2023-04-17 06:24:36 Z 69 days 130 attempts Testing same since 181573 2023-06-24 02:11:10 Z 1 days 3 attempts ------------------------------------------------------------ 2770 people touched revisions under test, not listing them all jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl fail test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-freebsd11-amd64 pass test-amd64-amd64-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale fail test-amd64-amd64-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 fail test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 fail test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine fail test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt fail test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu fail test-amd64-amd64-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-amd64-pygrub pass test-amd64-amd64-libvirt-qcow2 pass test-armhf-armhf-libvirt-qcow2 fail test-amd64-amd64-libvirt-raw pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw fail test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds fail test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-amd64-xl-vhd pass test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd fail ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 354325 lines long.) From xen-devel-bounces@lists.xenproject.org Sun Jun 25 20:49:27 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sun, 25 Jun 2023 20:49:27 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554873.866303 (Exim 4.92) (envelope-from ) id 1qDWff-00035x-Pk; Sun, 25 Jun 2023 20:49:19 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554873.866303; Sun, 25 Jun 2023 20:49:19 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDWff-00035q-Ms; Sun, 25 Jun 2023 20:49:19 +0000 Received: by outflank-mailman (input) for mailman id 554873; Sun, 25 Jun 2023 20:49:18 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDWfe-0002fU-7G for xen-devel@lists.xenproject.org; Sun, 25 Jun 2023 20:49:18 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDWfd-0003M4-Ut; Sun, 25 Jun 2023 20:49:17 +0000 Received: from 54-240-197-232.amazon.com ([54.240.197.232] helo=dev-dsk-jgrall-1b-035652ec.eu-west-1.amazon.com) by xenbits.xenproject.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qDWfd-00021M-Mu; Sun, 25 Jun 2023 20:49:17 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:MIME-Version:References: In-Reply-To:Message-Id:Date:Subject:Cc:To:From; bh=pIp2Ocf+duFQJxu0URFuhairXV4FCYWfRGikcKVLzqU=; b=qfck+/QFFLkk2WdsWO3K9gtgeW CUyhCCbYpAl5g7ea+HY5mE5aTKWMIldZc7meMakKcwPAC/RAL6UjxXfsMgiUZcmgTdYfyRMyPdepx ipCi91YDVkJvYWGQm9J5CF0/WU6SWZiMOvO7Y6Ke02fWhZLGaz62hTsSoc794BnUXHvA=; From: Julien Grall To: xen-devel@lists.xenproject.org Cc: Luca.Fancellu@arm.com, michal.orzel@amd.com, Henry.Wang@arm.com, Julien Grall , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk Subject: [PATCH 2/9] xen/arm64: head: Don't map too much in boot_third Date: Sun, 25 Jun 2023 21:49:00 +0100 Message-Id: <20230625204907.57291-3-julien@xen.org> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230625204907.57291-1-julien@xen.org> References: <20230625204907.57291-1-julien@xen.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit From: Julien Grall At the moment, we are mapping the size of the reserved area for Xen (i.e. 2MB) even if the binary is smaller. We don't exactly know what's after Xen, so it is not a good idea to map more than necessary for a couple of reasons: * We would need to use break-before-make if the extra PTE needs to be updated to point to another region * The extra area mapped may be mapped again by Xen with different memory attribute. This would result to attribue mismatch. Therefore, rework the logic in create_page_tables() to map only what's necessary. To simplify the logic, we also want to make sure _end is page-aligned. So align the symbol in the linker and add an assert to catch any change. Signed-off-by: Julien Grall --- xen/arch/arm/arm64/head.S | 15 ++++++++++++++- xen/arch/arm/xen.lds.S | 3 +++ 2 files changed, 17 insertions(+), 1 deletion(-) diff --git a/xen/arch/arm/arm64/head.S b/xen/arch/arm/arm64/head.S index f37133cf7ccd..66bc85d4c39e 100644 --- a/xen/arch/arm/arm64/head.S +++ b/xen/arch/arm/arm64/head.S @@ -572,6 +572,19 @@ create_page_tables: create_table_entry boot_first, boot_second, x0, 1, x1, x2, x3 create_table_entry boot_second, boot_third, x0, 2, x1, x2, x3 + /* + * Find the size of Xen in pages and multiply by the size of a + * PTE. This will then be compared in the mapping loop below. + * + * Note the multiplication is just to avoid using an extra + * register/instruction per iteration. + */ + ldr x0, =_start /* x0 := vaddr(_start) */ + ldr x1, =_end /* x1 := vaddr(_end) */ + sub x0, x1, x0 /* x0 := effective size of Xen */ + lsr x0, x0, #PAGE_SHIFT /* x0 := Number of pages for Xen */ + lsl x0, x0, #3 /* x0 := Number of pages * PTE size */ + /* Map Xen */ adr_l x4, boot_third @@ -585,7 +598,7 @@ create_page_tables: 1: str x2, [x4, x1] /* Map vaddr(start) */ add x2, x2, #PAGE_SIZE /* Next page */ add x1, x1, #8 /* Next slot */ - cmp x1, #(XEN_PT_LPAE_ENTRIES<<3) /* 512 entries per page */ + cmp x1, x0 /* Loop until we map all of Xen */ b.lt 1b /* diff --git a/xen/arch/arm/xen.lds.S b/xen/arch/arm/xen.lds.S index c5d8c6201423..c4627cea7482 100644 --- a/xen/arch/arm/xen.lds.S +++ b/xen/arch/arm/xen.lds.S @@ -212,6 +212,7 @@ SECTIONS . = ALIGN(POINTER_ALIGN); __bss_end = .; } :text + . = ALIGN(PAGE_SIZE); _end = . ; /* Section for the device tree blob (if any). */ @@ -241,4 +242,6 @@ ASSERT(IS_ALIGNED(__init_begin, 4), "__init_begin is misaligned") ASSERT(IS_ALIGNED(__init_end, 4), "__init_end is misaligned") ASSERT(IS_ALIGNED(__bss_start, POINTER_ALIGN), "__bss_start is misaligned") ASSERT(IS_ALIGNED(__bss_end, POINTER_ALIGN), "__bss_end is misaligned") +/* To simplify the logic in head.S, we want to _end to be page aligned */ +ASSERT(IS_ALIGNED(_end, PAGE_SIZE), "_end is not page aligned") ASSERT((_end - start) <= XEN_VIRT_SIZE, "Xen is too big") -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Sun Jun 25 20:49:27 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sun, 25 Jun 2023 20:49:27 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554877.866343 (Exim 4.92) (envelope-from ) id 1qDWfl-0004Ck-9n; Sun, 25 Jun 2023 20:49:25 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554877.866343; Sun, 25 Jun 2023 20:49:25 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDWfl-0004By-64; Sun, 25 Jun 2023 20:49:25 +0000 Received: by outflank-mailman (input) for mailman id 554877; Sun, 25 Jun 2023 20:49:23 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDWfj-0003s5-H5 for xen-devel@lists.xenproject.org; Sun, 25 Jun 2023 20:49:23 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDWfj-0003NJ-85; Sun, 25 Jun 2023 20:49:23 +0000 Received: from 54-240-197-232.amazon.com ([54.240.197.232] helo=dev-dsk-jgrall-1b-035652ec.eu-west-1.amazon.com) by xenbits.xenproject.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qDWfj-00021M-0W; Sun, 25 Jun 2023 20:49:23 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:MIME-Version:References: In-Reply-To:Message-Id:Date:Subject:Cc:To:From; bh=gXqnczAjb+wnpPlcEiazaR11OD9Idwd3JlF3anBSmFw=; b=M75UERkVFu8wYlEek+C2JfO+dv TQuIiQ7/8/x6ybcfQg6nQUAkWVJ+j7FiLj8nuoFsM5pOfYZ/hvJMuduIaPYsNytfkCids2kQ/Uzta z+2wjsPjKPTvP1KjE9MPrrAPtqiY3pt06ytqG6cXmWFvwN8CEMhOzXT69U5JKf/cfgxk=; From: Julien Grall To: xen-devel@lists.xenproject.org Cc: Luca.Fancellu@arm.com, michal.orzel@amd.com, Henry.Wang@arm.com, Julien Grall , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk Subject: [PATCH 6/9] xen/arm64: entry: Don't jump outside of an alternative Date: Sun, 25 Jun 2023 21:49:04 +0100 Message-Id: <20230625204907.57291-7-julien@xen.org> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230625204907.57291-1-julien@xen.org> References: <20230625204907.57291-1-julien@xen.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit From: Julien Grall The instruction CBNZ can only jump to a pc-relative that is in the range +/- 1MB. Alternative instructions replacement are living in a separate subsection of the init section. This is usually placed towards the end of the linker. Whereas text is towards the beginning. While today Xen is quite small (~1MB), it could grow up to 2MB in the current setup. So there is no guarantee that the target address in the text section will be within the range +/- 1MB of the CBNZ in alternative section. The easiest solution is to have the target address within the same section of the alternative. This means that we need to duplicate a couple of instructions. Signed-off-by: Julien Grall ---- I couldn't come up with a solution that would not change the number of instructions executed in the entry path. --- xen/arch/arm/arm64/entry.S | 21 ++++++++++++++++----- 1 file changed, 16 insertions(+), 5 deletions(-) diff --git a/xen/arch/arm/arm64/entry.S b/xen/arch/arm/arm64/entry.S index 95f1a9268419..492591fdef54 100644 --- a/xen/arch/arm/arm64/entry.S +++ b/xen/arch/arm/arm64/entry.S @@ -242,13 +242,24 @@ msr daifclr, \iflags bl enter_hypervisor_from_guest + /* + * CBNZ can only address an offset of +/- 1MB. This means, it is + * not possible to jump outside of an alternative because + * the .text section and .altinstr_replacement may be further + * appart. The easiest way is to duplicate the few instructions + * that need to be skipped. + */ alternative_if SKIP_SYNCHRONIZE_SERROR_ENTRY_EXIT - cbnz x19, 1f - alternative_else_nop_endif - - mov x0, sp - bl do_trap_\trap + cbnz x19, 1f + mov x0, sp + bl do_trap_\trap 1: + alternative_else + nop + mov x0, sp + bl do_trap_\trap + alternative_endif + exit hyp=0, compat=\compat .endm -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Sun Jun 25 20:49:27 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sun, 25 Jun 2023 20:49:27 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554876.866334 (Exim 4.92) (envelope-from ) id 1qDWfj-0003sc-QZ; Sun, 25 Jun 2023 20:49:23 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554876.866334; Sun, 25 Jun 2023 20:49:23 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDWfj-0003sQ-Lp; Sun, 25 Jun 2023 20:49:23 +0000 Received: by outflank-mailman (input) for mailman id 554876; Sun, 25 Jun 2023 20:49:22 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDWfi-0003jB-9H for xen-devel@lists.xenproject.org; Sun, 25 Jun 2023 20:49:22 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDWfh-0003N2-Ul; Sun, 25 Jun 2023 20:49:21 +0000 Received: from 54-240-197-232.amazon.com ([54.240.197.232] helo=dev-dsk-jgrall-1b-035652ec.eu-west-1.amazon.com) by xenbits.xenproject.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qDWfh-00021M-Jp; Sun, 25 Jun 2023 20:49:21 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:MIME-Version:References: In-Reply-To:Message-Id:Date:Subject:Cc:To:From; bh=Zz5lkbOFdCDJuz1jjvaHY6dTr1nKg4m1ZU7qib9ysjI=; b=sMK3CCjnHN2zpPQ1zHwpLwOuf0 JovbFsupmAoHmxoCfwHktot0ya6DZ/FgAGRwVun6BrpeiJk4dCVJ3ifPfAZEQLnNYwf7CuB2HGhFz qW/srwGRUVUeVa7+x5hmnsMyJ9sxJrrJW18Az2bKSmwxpj5fawBp5iN7Ia++ZUx5eWWI=; From: Julien Grall To: xen-devel@lists.xenproject.org Cc: Luca.Fancellu@arm.com, michal.orzel@amd.com, Henry.Wang@arm.com, Julien Grall , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk Subject: [PATCH 5/9] xen/arm: Rework the code mapping Xen to avoid relying on the size of Xen Date: Sun, 25 Jun 2023 21:49:03 +0100 Message-Id: <20230625204907.57291-6-julien@xen.org> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230625204907.57291-1-julien@xen.org> References: <20230625204907.57291-1-julien@xen.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit From: Julien Grall At the moment, the maximum size of Xen binary we can support is 2MB. This is what we reserved in the virtual address but also what all the code in Xen relies on as we only allocate one L3 page-table. When feature like UBSAN (will be enabled in a follow-up patch) and GCOV are enabled, the binary will be way over 2MB. The code is now reworked so it doesn't realy on a specific size but will instead look at the reversed size and compute the number of page-table to allocate/map. While at it, replace any reference to 4KB mappings with a more generic word because the page-size may change in the future. Also fix the typo s/tlb/tbl/ in code move in arm32/head.S Signed-off-by: Julien Grall --- xen/arch/arm/arm32/head.S | 61 ++++++++++++++++++++++++------- xen/arch/arm/arm64/head.S | 51 +++++++++++++++++++++----- xen/arch/arm/include/asm/config.h | 1 + xen/arch/arm/include/asm/lpae.h | 8 ++-- xen/arch/arm/mm.c | 24 +++++++----- 5 files changed, 108 insertions(+), 37 deletions(-) diff --git a/xen/arch/arm/arm32/head.S b/xen/arch/arm/arm32/head.S index 5e3692eb3abf..5448671de897 100644 --- a/xen/arch/arm/arm32/head.S +++ b/xen/arch/arm/arm32/head.S @@ -373,35 +373,55 @@ ENDPROC(cpu_init) .endm /* - * Macro to create a page table entry in \ptbl to \tbl + * Macro to create a page table entry in \ptbl to \tbl (physical + * address) * * ptbl: table symbol where the entry will be created - * tbl: table symbol to point to + * tbl: physical address of the table to point to * virt: virtual address * lvl: page-table level * * Preserves \virt - * Clobbers r1 - r4 + * Clobbers \tbl, r1 - r3 * * Also use r10 for the phys offset. * - * Note that \virt should be in a register other than r1 - r4 + * Note that \tbl and \virt should be in a register other than r1 - r3 */ -.macro create_table_entry, ptbl, tbl, virt, lvl - get_table_slot r1, \virt, \lvl /* r1 := slot in \tlb */ - lsl r1, r1, #3 /* r1 := slot offset in \tlb */ - - load_paddr r4, \tbl +.macro create_table_entry_from_paddr, ptbl, tbl, virt, lvl + get_table_slot r1, \virt, \lvl /* r1 := slot in \tbl */ + lsl r1, r1, #3 /* r1 := slot offset in \tbl */ movw r2, #PT_PT /* r2:r3 := right for linear PT */ - orr r2, r2, r4 /* + \tlb paddr */ + orr r2, r2, \tbl /* + \tbl paddr */ mov r3, #0 - adr_l r4, \ptbl + adr_l \tbl, \ptbl /* \tbl := (v,p)addr of \ptbl */ - strd r2, r3, [r4, r1] + strd r2, r3, [\tbl, r1] .endm + +/* + * Macro to create a page table entry in \ptbl to \tbl (symbol) + * + * ptbl: table symbol where the entry will be created + * tbl: table symbol to point to + * virt: virtual address + * lvl: page-table level + * + * Preserves \virt + * Clobbers r1 - r4 + * + * Also use r10 for the phys offset. + * + * Note that \virt should be in a register other than r1 - r4 + */ +.macro create_table_entry, ptbl, tbl, virt, lvl + load_paddr r4, \tbl + create_table_entry_from_paddr \ptbl, r4, \virt, \lvl + .endm + /* * Macro to create a mapping entry in \tbl to \paddr. Only mapping in 3rd * level table (i.e page granularity) is supported. @@ -451,13 +471,26 @@ ENDPROC(cpu_init) * Output: * r12: Was a temporary mapping created? * - * Clobbers r0 - r4 + * Clobbers r0 - r5 */ create_page_tables: /* Prepare the page-tables for mapping Xen */ mov_w r0, XEN_VIRT_START create_table_entry boot_pgtable, boot_second, r0, 1 - create_table_entry boot_second, boot_third, r0, 2 + + /* + * We need to use a stash register because + * create_table_entry_paddr() will clobber the register storing + * the physical address of the table to point to. + */ + load_paddr r5, boot_third + mov_w r4, XEN_VIRT_START +.rept XEN_NR_ENTRIES(2) + mov r0, r5 /* r0 := paddr(l3 table) */ + create_table_entry_from_paddr boot_second, r0, r4, 2 + add r4, r4, #XEN_PT_LEVEL_SIZE(2) /* r4 := Next vaddr */ + add r5, r5, #PAGE_SIZE /* r5 := Next table */ +.endr /* * Find the size of Xen in pages and multiply by the size of a diff --git a/xen/arch/arm/arm64/head.S b/xen/arch/arm/arm64/head.S index 66bc85d4c39e..c9e2e36506d9 100644 --- a/xen/arch/arm/arm64/head.S +++ b/xen/arch/arm/arm64/head.S @@ -490,6 +490,31 @@ ENDPROC(cpu_init) ubfx \slot, \virt, #XEN_PT_LEVEL_SHIFT(\lvl), #XEN_PT_LPAE_SHIFT .endm +/* + * Macro to create a page table entry in \ptbl to \tbl + * ptbl: table symbol where the entry will be created + * tbl: physical address of the table to point to + * virt: virtual address + * lvl: page-table level + * tmp1: scratch register + * tmp2: scratch register + * + * Preserves \virt + * Clobbers \tbl, \tmp1, \tmp2 + * + * Note that all parameters using registers should be distinct. + */ +.macro create_table_entry_from_paddr, ptbl, tbl, virt, lvl, tmp1, tmp2 + get_table_slot \tmp1, \virt, \lvl /* \tmp1 := slot in \tlb */ + + mov \tmp2, #PT_PT /* \tmp2 := right for linear PT */ + orr \tmp2, \tmp2, \tbl /* + \tlb */ + + adr_l \tbl, \ptbl /* \tlb := address(\ptbl) */ + + str \tmp2, [\tbl, \tmp1, lsl #3] +.endm + /* * Macro to create a page table entry in \ptbl to \tbl * @@ -509,15 +534,8 @@ ENDPROC(cpu_init) * Note that all parameters using registers should be distinct. */ .macro create_table_entry, ptbl, tbl, virt, lvl, tmp1, tmp2, tmp3 - get_table_slot \tmp1, \virt, \lvl /* \tmp1 := slot in \tlb */ - - load_paddr \tmp2, \tbl - mov \tmp3, #PT_PT /* \tmp3 := right for linear PT */ - orr \tmp3, \tmp3, \tmp2 /* + \tlb paddr */ - - adr_l \tmp2, \ptbl - - str \tmp3, [\tmp2, \tmp1, lsl #3] + load_paddr \tmp1, \tbl + create_table_entry_from_paddr \ptbl, \tmp1, \virt, \lvl, \tmp2, \tmp3 .endm /* @@ -570,7 +588,20 @@ create_page_tables: ldr x0, =XEN_VIRT_START create_table_entry boot_pgtable, boot_first, x0, 0, x1, x2, x3 create_table_entry boot_first, boot_second, x0, 1, x1, x2, x3 - create_table_entry boot_second, boot_third, x0, 2, x1, x2, x3 + + /* + * We need to use a stash register because + * create_table_entry_paddr() will clobber the register storing + * the physical address of the table to point to. + */ + load_paddr x4, boot_third + ldr x1, =XEN_VIRT_START +.rept XEN_NR_ENTRIES(2) + mov x0, x4 /* x0 := paddr(l3 table) */ + create_table_entry_from_paddr boot_second, x0, x1, 2, x2, x3 + add x1, x1, #XEN_PT_LEVEL_SIZE(2) /* x1 := Next vaddr */ + add x4, x4, #PAGE_SIZE /* x4 := Next table */ +.endr /* * Find the size of Xen in pages and multiply by the size of a diff --git a/xen/arch/arm/include/asm/config.h b/xen/arch/arm/include/asm/config.h index c969e6da589d..6d246ab23c48 100644 --- a/xen/arch/arm/include/asm/config.h +++ b/xen/arch/arm/include/asm/config.h @@ -125,6 +125,7 @@ #endif #define XEN_VIRT_SIZE _AT(vaddr_t, MB(2)) +#define XEN_NR_ENTRIES(lvl) (XEN_VIRT_SIZE / XEN_PT_LEVEL_SIZE(lvl)) #define FIXMAP_VIRT_START (XEN_VIRT_START + XEN_VIRT_SIZE) #define FIXMAP_VIRT_SIZE _AT(vaddr_t, MB(2)) diff --git a/xen/arch/arm/include/asm/lpae.h b/xen/arch/arm/include/asm/lpae.h index 7d2f6fd1bd5a..93e824f01125 100644 --- a/xen/arch/arm/include/asm/lpae.h +++ b/xen/arch/arm/include/asm/lpae.h @@ -267,15 +267,17 @@ lpae_t mfn_to_xen_entry(mfn_t mfn, unsigned int attr); /* * Macros to define page-tables: - * - DEFINE_BOOT_PAGE_TABLE is used to define page-table that are used + * - DEFINE_BOOT_PAGE_TABLE{,S} are used to define page-table that are used * in assembly code before BSS is zeroed. * - DEFINE_PAGE_TABLE{,S} are used to define one or multiple * page-tables to be used after BSS is zeroed (typically they are only used * in C). */ -#define DEFINE_BOOT_PAGE_TABLE(name) \ +#define DEFINE_BOOT_PAGE_TABLES(name, nr) \ lpae_t __aligned(PAGE_SIZE) __section(".data.page_aligned") \ - name[XEN_PT_LPAE_ENTRIES] + name[XEN_PT_LPAE_ENTRIES * (nr)] + +#define DEFINE_BOOT_PAGE_TABLE(name) DEFINE_BOOT_PAGE_TABLES(name, 1) #define DEFINE_PAGE_TABLES(name, nr) \ lpae_t __aligned(PAGE_SIZE) name[XEN_PT_LPAE_ENTRIES * (nr)] diff --git a/xen/arch/arm/mm.c b/xen/arch/arm/mm.c index e460249736c3..2b2ff6015ebd 100644 --- a/xen/arch/arm/mm.c +++ b/xen/arch/arm/mm.c @@ -53,8 +53,8 @@ mm_printk(const char *fmt, ...) {} * to the CPUs own pagetables. * * These pagetables have a very simple structure. They include: - * - 2MB worth of 4K mappings of xen at XEN_VIRT_START, boot_first and - * boot_second are used to populate the tables down to boot_third + * - XEN_VIRT_SIZE worth of L3 mappings of xen at XEN_VIRT_START, boot_first + * and boot_second are used to populate the tables down to boot_third * which contains the actual mapping. * - a 1:1 mapping of xen at its current physical address. This uses a * section mapping at whichever of boot_{pgtable,first,second} @@ -79,7 +79,7 @@ DEFINE_BOOT_PAGE_TABLE(boot_first_id); DEFINE_BOOT_PAGE_TABLE(boot_second_id); DEFINE_BOOT_PAGE_TABLE(boot_third_id); DEFINE_BOOT_PAGE_TABLE(boot_second); -DEFINE_BOOT_PAGE_TABLE(boot_third); +DEFINE_BOOT_PAGE_TABLES(boot_third, XEN_NR_ENTRIES(2)); /* Main runtime page tables */ @@ -115,7 +115,7 @@ DEFINE_BOOT_PAGE_TABLE(xen_fixmap); * Third level page table used to map Xen itself with the XN bit set * as appropriate. */ -static DEFINE_PAGE_TABLE(xen_xenmap); +static DEFINE_PAGE_TABLES(xen_xenmap, XEN_NR_ENTRIES(2)); /* Non-boot CPUs use this to find the correct pagetables. */ uint64_t init_ttbr; @@ -518,15 +518,15 @@ void __init setup_pagetables(unsigned long boot_phys_offset) p[0].pt.table = 1; p[0].pt.xn = 0; - /* Break up the Xen mapping into 4k pages and protect them separately. */ - for ( i = 0; i < XEN_PT_LPAE_ENTRIES; i++ ) + /* Break up the Xen mapping into pages and protect them separately. */ + for ( i = 0; i < XEN_NR_ENTRIES(3); i++ ) { vaddr_t va = XEN_VIRT_START + (i << PAGE_SHIFT); if ( !is_kernel(va) ) break; pte = pte_of_xenaddr(va); - pte.pt.table = 1; /* 4k mappings always have this bit set */ + pte.pt.table = 1; /* third level mappings always have this bit set */ if ( is_kernel_text(va) || is_kernel_inittext(va) ) { pte.pt.xn = 0; @@ -539,10 +539,14 @@ void __init setup_pagetables(unsigned long boot_phys_offset) /* Initialise xen second level entries ... */ /* ... Xen's text etc */ + for ( i = 0; i < XEN_NR_ENTRIES(2); i++ ) + { + vaddr_t va = XEN_VIRT_START + i * XEN_PT_LEVEL_SIZE(2); - pte = pte_of_xenaddr((vaddr_t)xen_xenmap); - pte.pt.table = 1; - xen_second[second_table_offset(XEN_VIRT_START)] = pte; + pte = pte_of_xenaddr((vaddr_t)(xen_xenmap + i * XEN_PT_LPAE_ENTRIES)); + pte.pt.table = 1; + xen_second[second_table_offset(va)] = pte; + } /* ... Fixmap */ pte = pte_of_xenaddr((vaddr_t)xen_fixmap); -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Sun Jun 25 20:49:27 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sun, 25 Jun 2023 20:49:27 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554872.866292 (Exim 4.92) (envelope-from ) id 1qDWfe-0002j2-Iw; Sun, 25 Jun 2023 20:49:18 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554872.866292; Sun, 25 Jun 2023 20:49:18 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDWfe-0002h6-Bc; Sun, 25 Jun 2023 20:49:18 +0000 Received: by outflank-mailman (input) for mailman id 554872; Sun, 25 Jun 2023 20:49:17 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDWfc-0002bq-Vd for xen-devel@lists.xenproject.org; Sun, 25 Jun 2023 20:49:16 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDWfc-0003Lu-La; Sun, 25 Jun 2023 20:49:16 +0000 Received: from 54-240-197-232.amazon.com ([54.240.197.232] helo=dev-dsk-jgrall-1b-035652ec.eu-west-1.amazon.com) by xenbits.xenproject.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qDWfc-00021M-DA; Sun, 25 Jun 2023 20:49:16 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:MIME-Version:References: In-Reply-To:Message-Id:Date:Subject:Cc:To:From; bh=9w0nZdIHxyhiPgNJV2nNqGag3fqrurdY4W4q6aF8hO0=; b=P4wzfzxnhQFImT7ocJPK4FhQMa MB+CM/UwBTtJdUqR1QgSF0mVJR/SdxD4ai6WIaLBAXDb6mOj64aShcnNMK89Wv1D1oQic7iEdhmUG p+9uzZu7+P3STuBKaEMsloWfgVqMQDcba58XjSOjwOM9r0ZKgXS6j8ncfXmuFy4eYT20=; From: Julien Grall To: xen-devel@lists.xenproject.org Cc: Luca.Fancellu@arm.com, michal.orzel@amd.com, Henry.Wang@arm.com, Julien Grall , Stefano Stabellini , Bertrand Marquis , Volodymyr Babchuk Subject: [PATCH 1/9] xen/arm: Check Xen size when linking Date: Sun, 25 Jun 2023 21:48:59 +0100 Message-Id: <20230625204907.57291-2-julien@xen.org> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230625204907.57291-1-julien@xen.org> References: <20230625204907.57291-1-julien@xen.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit The linker will happily link Xen if it is bigger than what we can handle (e.g 2MB). This will result to unexpected failure after boot. This unexpected failure can be prevented by forbidding linking if Xen is bigger than the area we reversed. Signed-off-by: Julien Grall --- xen/arch/arm/xen.lds.S | 1 + 1 file changed, 1 insertion(+) diff --git a/xen/arch/arm/xen.lds.S b/xen/arch/arm/xen.lds.S index be58c2c39514..c5d8c6201423 100644 --- a/xen/arch/arm/xen.lds.S +++ b/xen/arch/arm/xen.lds.S @@ -241,3 +241,4 @@ ASSERT(IS_ALIGNED(__init_begin, 4), "__init_begin is misaligned") ASSERT(IS_ALIGNED(__init_end, 4), "__init_end is misaligned") ASSERT(IS_ALIGNED(__bss_start, POINTER_ALIGN), "__bss_start is misaligned") ASSERT(IS_ALIGNED(__bss_end, POINTER_ALIGN), "__bss_end is misaligned") +ASSERT((_end - start) <= XEN_VIRT_SIZE, "Xen is too big") -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Sun Jun 25 20:49:27 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sun, 25 Jun 2023 20:49:27 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554875.866320 (Exim 4.92) (envelope-from ) id 1qDWfh-0003Ol-Gi; Sun, 25 Jun 2023 20:49:21 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554875.866320; Sun, 25 Jun 2023 20:49:21 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDWfh-0003Nz-9h; Sun, 25 Jun 2023 20:49:21 +0000 Received: by outflank-mailman (input) for mailman id 554875; Sun, 25 Jun 2023 20:49:20 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDWfg-0003Ku-Qo for xen-devel@lists.xenproject.org; Sun, 25 Jun 2023 20:49:20 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDWfg-0003Ma-Hj; Sun, 25 Jun 2023 20:49:20 +0000 Received: from 54-240-197-232.amazon.com ([54.240.197.232] helo=dev-dsk-jgrall-1b-035652ec.eu-west-1.amazon.com) by xenbits.xenproject.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qDWfg-00021M-A4; Sun, 25 Jun 2023 20:49:20 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:MIME-Version:References: In-Reply-To:Message-Id:Date:Subject:Cc:To:From; bh=e2gQb0HdlWtQqWMde+fvJ6mMzc931ddrnh3muHKVYvo=; b=eJNOekMD1tCqbAAreLgIGPa13F AokNsJsBGvgamZNdOcCJRQ+s8qW+Amune3MrV1lljAZb0IBLpNTpFKqM14P2cDG0erp9GkReF4sPc YCne/lmFLfZ4OZ6oR5fOVPJ6yEcvqYcOjK5THmWJsV0yhj6x57SotdWuZFN/O9zamkmU=; From: Julien Grall To: xen-devel@lists.xenproject.org Cc: Luca.Fancellu@arm.com, michal.orzel@amd.com, Henry.Wang@arm.com, Julien Grall , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk Subject: [PATCH 4/9] xen/arm32: head: Remove 'r6' from the clobber list of create_page_tables() Date: Sun, 25 Jun 2023 21:49:02 +0100 Message-Id: <20230625204907.57291-5-julien@xen.org> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230625204907.57291-1-julien@xen.org> References: <20230625204907.57291-1-julien@xen.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit From: Julien Grall Since commit 62529f16c8a2 ("xen/arm32: head: Use a page mapping for the 1:1 mapping in create_page_tables()"), the register 'r6' is not used anymore within create_page_tables(). So remove it from the documentation. Signed-off-by: Julien Grall --- xen/arch/arm/arm32/head.S | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/xen/arch/arm/arm32/head.S b/xen/arch/arm/arm32/head.S index 997c8a4fbbc1..5e3692eb3abf 100644 --- a/xen/arch/arm/arm32/head.S +++ b/xen/arch/arm/arm32/head.S @@ -451,10 +451,7 @@ ENDPROC(cpu_init) * Output: * r12: Was a temporary mapping created? * - * Clobbers r0 - r4, r6 - * - * Register usage within this function: - * r6 : Identity map in place + * Clobbers r0 - r4 */ create_page_tables: /* Prepare the page-tables for mapping Xen */ -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Sun Jun 25 20:49:27 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sun, 25 Jun 2023 20:49:27 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554880.866363 (Exim 4.92) (envelope-from ) id 1qDWfm-0004hf-Ug; Sun, 25 Jun 2023 20:49:26 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554880.866363; Sun, 25 Jun 2023 20:49:26 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDWfm-0004gk-PM; Sun, 25 Jun 2023 20:49:26 +0000 Received: by outflank-mailman (input) for mailman id 554880; Sun, 25 Jun 2023 20:49:26 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDWfm-0004Sx-1W for xen-devel@lists.xenproject.org; Sun, 25 Jun 2023 20:49:26 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDWfl-0003O0-Rk; Sun, 25 Jun 2023 20:49:25 +0000 Received: from 54-240-197-232.amazon.com ([54.240.197.232] helo=dev-dsk-jgrall-1b-035652ec.eu-west-1.amazon.com) by xenbits.xenproject.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qDWfl-00021M-KD; Sun, 25 Jun 2023 20:49:25 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:MIME-Version:References: In-Reply-To:Message-Id:Date:Subject:Cc:To:From; bh=eAiFR9Z75adT3afecve41CD/1YrEKTUVp4d/ZLD9OoM=; b=4W0vSFoPDDHqErzNGySTz6h8Jv JqYRViLF8SPwgIwLVedJ358uQtJ+hqaB1eiSYfiHArgGMUF/LhSrHjhsvtBTJcyV82+JwgNn2a82X 1vb4dZGj8oRKgssx7usH/om0pK3m999c76x9bA3tjewmM0TBH9MhxFPzf0loV0woqpHY=; From: Julien Grall To: xen-devel@lists.xenproject.org Cc: Luca.Fancellu@arm.com, michal.orzel@amd.com, Henry.Wang@arm.com, Julien Grall , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk Subject: [PATCH 8/9] xen/arm: Allow the user to build Xen with USBAN Date: Sun, 25 Jun 2023 21:49:06 +0100 Message-Id: <20230625204907.57291-9-julien@xen.org> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230625204907.57291-1-julien@xen.org> References: <20230625204907.57291-1-julien@xen.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit From: Julien Grall UBSAN has been enabled a few years ago on x86 but was never enabled on Arm because the final binary is bigger than 2MB ( the maximum we can currently handled). With the recent rework, it is now possible to grow Xen over 2MB. So there is no more roadblock to enable Xen other than increasing the reserved area. On my setup, for arm32, the final binaray was very close to 4MB. Furthermore, one may want to enable USBAN and GCOV which would put the binary well-over 4MB (both features require for some space). Therefore, increase the size to 8MB which should us some margin. Signed-off-by: Julien Grall ---- The drawback with this approach is that we are adding 6 new page-table (3 for boot and 3 for runtime) that are statically allocated. So the final Xen binary will be 24KB bigger when neither UBSAN nor GCOV. If this is not considered acceptable, then we could make the size of configurable in the Kconfig and decide it based on the features enabled. --- xen/arch/arm/Kconfig | 1 + xen/arch/arm/include/asm/config.h | 18 +++++++++--------- 2 files changed, 10 insertions(+), 9 deletions(-) diff --git a/xen/arch/arm/Kconfig b/xen/arch/arm/Kconfig index 61e581b8c2b0..06b5ff755c95 100644 --- a/xen/arch/arm/Kconfig +++ b/xen/arch/arm/Kconfig @@ -17,6 +17,7 @@ config ARM select HAS_PASSTHROUGH select HAS_PDX select HAS_PMAP + select HAS_UBSAN select IOMMU_FORCE_PT_SHARE config ARCH_DEFCONFIG diff --git a/xen/arch/arm/include/asm/config.h b/xen/arch/arm/include/asm/config.h index 6d246ab23c48..1bbf4cc9958d 100644 --- a/xen/arch/arm/include/asm/config.h +++ b/xen/arch/arm/include/asm/config.h @@ -74,10 +74,10 @@ /* * ARM32 layout: * 0 - 2M Unmapped - * 2M - 4M Xen text, data, bss - * 4M - 6M Fixmap: special-purpose 4K mapping slots - * 6M - 10M Early boot mapping of FDT - * 10M - 12M Livepatch vmap (if compiled in) + * 2M - 10M Xen text, data, bss + * 10M - 12M Fixmap: special-purpose 4K mapping slots + * 12M - 16M Early boot mapping of FDT + * 16M - 18M Livepatch vmap (if compiled in) * * 32M - 128M Frametable: 32 bytes per page for 12GB of RAM * 256M - 1G VMAP: ioremap and early_ioremap use this virtual address @@ -94,10 +94,10 @@ * 0x0000020000000000 - 0x0000027fffffffff (512GB, L0 slot [4]) * (Relative offsets) * 0 - 2M Unmapped - * 2M - 4M Xen text, data, bss - * 4M - 6M Fixmap: special-purpose 4K mapping slots - * 6M - 10M Early boot mapping of FDT - * 10M - 12M Livepatch vmap (if compiled in) + * 2M - 10M Xen text, data, bss + * 10M - 12M Fixmap: special-purpose 4K mapping slots + * 12M - 16M Early boot mapping of FDT + * 16M - 18M Livepatch vmap (if compiled in) * * 1G - 2G VMAP: ioremap and early_ioremap * @@ -124,7 +124,7 @@ #define XEN_VIRT_START (SLOT0(4) + _AT(vaddr_t, MB(2))) #endif -#define XEN_VIRT_SIZE _AT(vaddr_t, MB(2)) +#define XEN_VIRT_SIZE _AT(vaddr_t, MB(8)) #define XEN_NR_ENTRIES(lvl) (XEN_VIRT_SIZE / XEN_PT_LEVEL_SIZE(lvl)) #define FIXMAP_VIRT_START (XEN_VIRT_START + XEN_VIRT_SIZE) -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Sun Jun 25 20:49:27 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sun, 25 Jun 2023 20:49:27 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554879.866348 (Exim 4.92) (envelope-from ) id 1qDWfl-0004GB-KT; Sun, 25 Jun 2023 20:49:25 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554879.866348; Sun, 25 Jun 2023 20:49:25 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDWfl-0004Fu-Fd; Sun, 25 Jun 2023 20:49:25 +0000 Received: by outflank-mailman (input) for mailman id 554879; Sun, 25 Jun 2023 20:49:24 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDWfk-00049b-Sq for xen-devel@lists.xenproject.org; Sun, 25 Jun 2023 20:49:24 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDWfk-0003Nd-Hy; Sun, 25 Jun 2023 20:49:24 +0000 Received: from 54-240-197-232.amazon.com ([54.240.197.232] helo=dev-dsk-jgrall-1b-035652ec.eu-west-1.amazon.com) by xenbits.xenproject.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qDWfk-00021M-AE; Sun, 25 Jun 2023 20:49:24 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:MIME-Version:References: In-Reply-To:Message-Id:Date:Subject:Cc:To:From; bh=ze41TrTEDnEX29OT1AHfqfE9eyz1GRWB/h0Tzh6x6sw=; b=t6JvaOPPa7AuK8mxOH+M6lRRH7 I7kQWX8z/QU8gxHbAC6LKuGGrtQToawvnjjGsoCOSw3r/IigPeVa4W9ajiG/uxS/75QnIhFRrYJ4S lCebwDwGR9sJlg3z/TrvVzzoEhHiZzHZAnnAk5NHW/3l5kpMZdcnX3kH7i5yMgbCIWNA=; From: Julien Grall To: xen-devel@lists.xenproject.org Cc: Luca.Fancellu@arm.com, michal.orzel@amd.com, Henry.Wang@arm.com, Julien Grall , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk Subject: [PATCH 7/9] xen/arm64: head: Rework PRINT() to work when the string is not withing +/- 1MB Date: Sun, 25 Jun 2023 21:49:05 +0100 Message-Id: <20230625204907.57291-8-julien@xen.org> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230625204907.57291-1-julien@xen.org> References: <20230625204907.57291-1-julien@xen.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit From: Julien Grall The instruction ADR is able to load an address of a symbol that is within the range +/- 1 MB of the instruction. While today Xen is quite small (~1MB), it could grow up to 2MB in the current setup. So there is no guarantee that the instruction can load the string address (stored in rodata). So replace the instruction ADR with the pseudo-instruction ADR_L which is able to handle symbol within the range +/- 4GB. Signed-off-by: Julien Grall --- xen/arch/arm/arm64/head.S | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/xen/arch/arm/arm64/head.S b/xen/arch/arm/arm64/head.S index c9e2e36506d9..38f896bdb8e2 100644 --- a/xen/arch/arm/arm64/head.S +++ b/xen/arch/arm/arm64/head.S @@ -90,7 +90,7 @@ */ #define PRINT(_s) \ mov x3, lr ; \ - adr x0, 98f ; \ + adr_l x0, 98f ; \ bl puts ; \ mov lr, x3 ; \ RODATA_STR(98, _s) -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Sun Jun 25 20:49:27 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sun, 25 Jun 2023 20:49:27 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554874.866314 (Exim 4.92) (envelope-from ) id 1qDWfh-0003LN-3b; Sun, 25 Jun 2023 20:49:21 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554874.866314; Sun, 25 Jun 2023 20:49:21 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDWfh-0003LF-0C; Sun, 25 Jun 2023 20:49:21 +0000 Received: by outflank-mailman (input) for mailman id 554874; Sun, 25 Jun 2023 20:49:19 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDWff-00035f-Fe for xen-devel@lists.xenproject.org; Sun, 25 Jun 2023 20:49:19 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDWff-0003MI-7s; Sun, 25 Jun 2023 20:49:19 +0000 Received: from 54-240-197-232.amazon.com ([54.240.197.232] helo=dev-dsk-jgrall-1b-035652ec.eu-west-1.amazon.com) by xenbits.xenproject.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qDWff-00021M-0M; Sun, 25 Jun 2023 20:49:19 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:MIME-Version:References: In-Reply-To:Message-Id:Date:Subject:Cc:To:From; bh=ZbAv0laYLu6yT3k2hkA4Gj70LOYt07z08AMTeISDAIs=; b=gBjp3U5esOIGtiVaIIWDIkasBy svhJkygMb8nct3CANun88vUSVtpOSUgtxsaM6oW3LjZYYHAPIee8zHCW8ho+240q28aZEQzi44pwg pxebZGE+aTsoDlUD6yB08cL3CV5xjnmRtJ/oAiFvf7zce6iRzGrBzhB/U/Y9AbW+SdJw=; From: Julien Grall To: xen-devel@lists.xenproject.org Cc: Luca.Fancellu@arm.com, michal.orzel@amd.com, Henry.Wang@arm.com, Julien Grall , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk Subject: [PATCH 3/9] xen/arm32: head: Don't map too much in boot_third Date: Sun, 25 Jun 2023 21:49:01 +0100 Message-Id: <20230625204907.57291-4-julien@xen.org> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230625204907.57291-1-julien@xen.org> References: <20230625204907.57291-1-julien@xen.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit From: Julien Grall At the moment, we are mapping the size of the reserved area for Xen (i.e. 2MB) even if the binary is smaller. We don't exactly know what's after Xen, so it is not a good idea to map more than necessary for a couple of reasons: * We would need to use break-before-make if the extra PTE needs to be updated to point to another region * The extra area mapped may be mapped again by Xen with different memory attribute. This would result to attribue mismatch. Therefore, rework the logic in create_page_tables() to map only what's necessary. To simplify the logic, we also want to make sure _end is page-aligned. So align the symbol in the linker and add an assert to catch any change. Signed-off-by: Julien Grall --- xen/arch/arm/arm32/head.S | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/xen/arch/arm/arm32/head.S b/xen/arch/arm/arm32/head.S index f9f7be9588b1..997c8a4fbbc1 100644 --- a/xen/arch/arm/arm32/head.S +++ b/xen/arch/arm/arm32/head.S @@ -462,6 +462,19 @@ create_page_tables: create_table_entry boot_pgtable, boot_second, r0, 1 create_table_entry boot_second, boot_third, r0, 2 + /* + * Find the size of Xen in pages and multiply by the size of a + * PTE. This will then be compared in the mapping loop below. + * + * Note the multiplication is just to avoid using an extra + * register/instruction per iteration. + */ + mov_w r0, _start /* r0 := vaddr(_start) */ + mov_w r1, _end /* r1 := vaddr(_end) */ + sub r0, r1, r0 /* r0 := effective size of Xen */ + lsr r0, r0, #PAGE_SHIFT /* r0 := Number of pages for Xen */ + lsl r0, r0, #3 /* r0 := Number of pages * PTE size */ + /* Setup boot_third: */ adr_l r4, boot_third @@ -476,7 +489,7 @@ create_page_tables: 1: strd r2, r3, [r4, r1] /* Map vaddr(start) */ add r2, r2, #PAGE_SIZE /* Next page */ add r1, r1, #8 /* Next slot */ - cmp r1, #(XEN_PT_LPAE_ENTRIES<<3) /* 512*8-byte entries per page */ + cmp r1, r0 /* Loop until we map all of Xen */ blo 1b /* -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Sun Jun 25 20:49:27 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sun, 25 Jun 2023 20:49:27 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554871.866284 (Exim 4.92) (envelope-from ) id 1qDWfe-0002c3-11; Sun, 25 Jun 2023 20:49:18 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554871.866284; Sun, 25 Jun 2023 20:49:17 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDWfd-0002bw-UX; Sun, 25 Jun 2023 20:49:17 +0000 Received: by outflank-mailman (input) for mailman id 554871; Sun, 25 Jun 2023 20:49:16 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDWfc-0002bk-1q for xen-devel@lists.xenproject.org; Sun, 25 Jun 2023 20:49:16 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDWfb-0003Lm-FS; Sun, 25 Jun 2023 20:49:15 +0000 Received: from 54-240-197-232.amazon.com ([54.240.197.232] helo=dev-dsk-jgrall-1b-035652ec.eu-west-1.amazon.com) by xenbits.xenproject.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qDWfb-00021M-6f; Sun, 25 Jun 2023 20:49:15 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:MIME-Version:Message-Id:Date: Subject:Cc:To:From; bh=1fhIEl6j2vrUnpIMcwhx1Ag70rRvI+I121vLxzmF4o0=; b=OzIxOp ylOUGwblfw1K313bxJYeP87ZQlpYRcKp26Mxr4x/WsmRYRNskc2kTR8rgw8/EBdGS7nQhOGedh8RO QdpEzvf2puMIVBppod7nRWo6HFlgttZusl2+/axFHXnF5+J0rE37G156jgY/7OueWWF6EqNHCCM54 VDAkVo8/CAU=; From: Julien Grall To: xen-devel@lists.xenproject.org Cc: Luca.Fancellu@arm.com, michal.orzel@amd.com, Henry.Wang@arm.com, Julien Grall , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk Subject: [PATCH 0/9] xen/arm: Enable UBSAN support Date: Sun, 25 Jun 2023 21:48:58 +0100 Message-Id: <20230625204907.57291-1-julien@xen.org> X-Mailer: git-send-email 2.40.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit From: Julien Grall Hi all, At the moment, we are not able to enable UBSAN on Arm because the final binary will be over the maximum size of Xen we currently support (i.e. 2MB). This patch series aim to lift the restrictions and also enable UBSAN. Lastly, at the end of the series, there is the first issue found by USBAN. There are a few of others. One will be fixed by the MISRA work in [1] and the other is a bit tricky. One the splat is (the others seems to be for similar reasons) (XEN) ================================================================================ (XEN) UBSAN: Undefined behaviour in common/sched/credit2.c:2437:5 (XEN) member access within misaligned address 43feefbc for type 'struct csched2_runqueue_data' (XEN) which requires 8 byte alignment (XEN) Xen WARN at common/ubsan/ubsan.c:172 This is on 32-bit and UBSAN seems to complain about the check in list_for_each_entry. I haven't yet dived into the issue yet. Cheers, [1] cover.1687250177.git.gianluca.luparini@bugseng.com Julien Grall (9): xen/arm: Check Xen size when linking xen/arm64: head: Don't map too much in boot_third xen/arm32: head: Don't map too much in boot_third xen/arm32: head: Remove 'r6' from the clobber list of create_page_tables() xen/arm: Rework the code mapping Xen to avoid relying on the size of Xen xen/arm64: entry: Don't jump outside of an alternative xen/arm64: head: Rework PRINT() to work when the string is not withing +/- 1MB xen/arm: Allow the user to build Xen with USBAN xen/arm32: vfp: Add missing U for shifted constant xen/arch/arm/Kconfig | 1 + xen/arch/arm/arm32/head.S | 79 +++++++++++++++++++++------- xen/arch/arm/arm64/entry.S | 21 ++++++-- xen/arch/arm/arm64/head.S | 68 +++++++++++++++++++----- xen/arch/arm/include/asm/arm32/vfp.h | 18 +++---- xen/arch/arm/include/asm/config.h | 19 +++---- xen/arch/arm/include/asm/lpae.h | 8 +-- xen/arch/arm/mm.c | 24 +++++---- xen/arch/arm/xen.lds.S | 4 ++ 9 files changed, 176 insertions(+), 66 deletions(-) -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Sun Jun 25 20:49:29 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Sun, 25 Jun 2023 20:49:29 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554882.866373 (Exim 4.92) (envelope-from ) id 1qDWfp-000578-6K; Sun, 25 Jun 2023 20:49:29 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554882.866373; Sun, 25 Jun 2023 20:49:29 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDWfp-000571-1e; Sun, 25 Jun 2023 20:49:29 +0000 Received: by outflank-mailman (input) for mailman id 554882; Sun, 25 Jun 2023 20:49:27 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDWfn-0004qK-B4 for xen-devel@lists.xenproject.org; Sun, 25 Jun 2023 20:49:27 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDWfn-0003OM-5t; Sun, 25 Jun 2023 20:49:27 +0000 Received: from 54-240-197-232.amazon.com ([54.240.197.232] helo=dev-dsk-jgrall-1b-035652ec.eu-west-1.amazon.com) by xenbits.xenproject.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qDWfm-00021M-Tw; Sun, 25 Jun 2023 20:49:27 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:MIME-Version:References: In-Reply-To:Message-Id:Date:Subject:Cc:To:From; bh=s5wm0nqS6ULfC32q998/nCfZN762L79rLlqFVp1Zzow=; b=3rFaz7ovZPFJqdziFudpeKwltt yK1oQknZmDQSWUTCxfUks5nR5563d3DSYGRBd9QuHvGZ9SvWBbVSkPQ3vYyH3pnSSIE8RwOb/P/9u 90k/rQfumuIroJo1j60n5fmEPB5SCNN0A/7Yg0lnGjAjjT7XZBlQmdRWwFDUNIzwRO2A=; From: Julien Grall To: xen-devel@lists.xenproject.org Cc: Luca.Fancellu@arm.com, michal.orzel@amd.com, Henry.Wang@arm.com, Julien Grall , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk Subject: [PATCH 9/9] xen/arm32: vfp: Add missing U for shifted constant Date: Sun, 25 Jun 2023 21:49:07 +0100 Message-Id: <20230625204907.57291-10-julien@xen.org> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230625204907.57291-1-julien@xen.org> References: <20230625204907.57291-1-julien@xen.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit From: Julien Grall When enabling UBSAN on arm32, the following splat will be printed: (XEN) ================================================================================ (XEN) UBSAN: Undefined behaviour in arch/arm/arm32/vfp.c:75:22 (XEN) left shift of 255 by 24 places cannot be represented in type 'int' This is referring to the shift in FPSID_IMPLEMENTER_MASK. While we could only add the U to the value shift there, it would be better to be consistent and also add it for every value shifted. This should also addressing MISRA Rule 7.2: A "u" or "U" suffix shall be applied to all integer constants that are represented in an unsigned type Signed-off-by: Julien Grall --- xen/arch/arm/include/asm/arm32/vfp.h | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/xen/arch/arm/include/asm/arm32/vfp.h b/xen/arch/arm/include/asm/arm32/vfp.h index bade3bc66e1f..2f2e4b24bb40 100644 --- a/xen/arch/arm/include/asm/arm32/vfp.h +++ b/xen/arch/arm/include/asm/arm32/vfp.h @@ -1,23 +1,23 @@ #ifndef _ARM_ARM32_VFP_H #define _ARM_ARM32_VFP_H -#define FPEXC_EX (1u << 31) -#define FPEXC_EN (1u << 30) -#define FPEXC_FP2V (1u << 28) +#define FPEXC_EX (1U << 31) +#define FPEXC_EN (1U << 30) +#define FPEXC_FP2V (1U << 28) -#define MVFR0_A_SIMD_MASK (0xf << 0) +#define MVFR0_A_SIMD_MASK (0xfU << 0) #define FPSID_IMPLEMENTER_BIT (24) -#define FPSID_IMPLEMENTER_MASK (0xff << FPSID_IMPLEMENTER_BIT) +#define FPSID_IMPLEMENTER_MASK (0xffU << FPSID_IMPLEMENTER_BIT) #define FPSID_ARCH_BIT (16) -#define FPSID_ARCH_MASK (0xf << FPSID_ARCH_BIT) +#define FPSID_ARCH_MASK (0xfU << FPSID_ARCH_BIT) #define FPSID_PART_BIT (8) -#define FPSID_PART_MASK (0xff << FPSID_PART_BIT) +#define FPSID_PART_MASK (0xffU << FPSID_PART_BIT) #define FPSID_VARIANT_BIT (4) -#define FPSID_VARIANT_MASK (0xf << FPSID_VARIANT_BIT) +#define FPSID_VARIANT_MASK (0xfU << FPSID_VARIANT_BIT) #define FPSID_REV_BIT (0) -#define FPSID_REV_MASK (0xf << FPSID_REV_BIT) +#define FPSID_REV_MASK (0xfU << FPSID_REV_BIT) struct vfp_state { -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 26 01:42:54 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 01:42:54 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554942.866401 (Exim 4.92) (envelope-from ) id 1qDbFc-0003GF-88; Mon, 26 Jun 2023 01:42:44 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554942.866401; Mon, 26 Jun 2023 01:42:44 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDbFc-0003G7-2f; Mon, 26 Jun 2023 01:42:44 +0000 Received: by outflank-mailman (input) for mailman id 554942; Mon, 26 Jun 2023 01:42:42 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDbFa-0003Fv-Ti; Mon, 26 Jun 2023 01:42:42 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDbFa-0000Nt-Ik; Mon, 26 Jun 2023 01:42:42 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDbFa-0007JL-5Y; Mon, 26 Jun 2023 01:42:42 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qDbFa-0002LV-57; Mon, 26 Jun 2023 01:42:42 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=ylHs3Zz8e9fIHc4Ww66zaiSoIE7OOqniOQLmiX9mipU=; b=yTqAzkc9UNiWlncXyo2IaK1Z/a UkseiiLcVO7CqRQi3STu7P89qccT4MZ/6hd6fBEbQCUCTdxK82zaADFAWNbE9bl1C2B7qpP74r3Tk akLcOdneaHzHoNmyF8NjofjhYrgEY+NY+GLvppMPB+pH55lY/5VzLCefVSBQkLddrpr8=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [linux-linus test] 181595: regressions - FAIL X-Osstest-Failures: linux-linus:test-armhf-armhf-xl-credit1:xen-boot:fail:regression linux-linus:test-armhf-armhf-xl-arndale:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-raw:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-credit2:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-rtds:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking linux-linus:test-armhf-armhf-libvirt:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-examine:reboot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-qcow2:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-vhd:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-multivcpu:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-qcow2:migrate-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-raw:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: linux=547cc9be86f4c51c51fd429ace6c2e1ef9050d15 X-Osstest-Versions-That: linux=6c538e1adbfc696ac4747fb10d63e704344f763d From: osstest service owner Date: Mon, 26 Jun 2023 01:42:42 +0000 flight 181595 linux-linus real [real] flight 181596 linux-linus real-retest [real] http://logs.test-lab.xenproject.org/osstest/logs/181595/ http://logs.test-lab.xenproject.org/osstest/logs/181596/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: test-armhf-armhf-xl-credit1 8 xen-boot fail REGR. vs. 180278 Tests which did not succeed, but are not blocking: test-armhf-armhf-xl-arndale 8 xen-boot fail like 180278 test-armhf-armhf-xl 8 xen-boot fail like 180278 test-armhf-armhf-libvirt-raw 8 xen-boot fail like 180278 test-armhf-armhf-xl-credit2 8 xen-boot fail like 180278 test-armhf-armhf-xl-rtds 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 180278 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 180278 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 180278 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 180278 test-armhf-armhf-libvirt 8 xen-boot fail like 180278 test-armhf-armhf-examine 8 reboot fail like 180278 test-armhf-armhf-libvirt-qcow2 8 xen-boot fail like 180278 test-armhf-armhf-xl-vhd 8 xen-boot fail like 180278 test-armhf-armhf-xl-multivcpu 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 180278 test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qcow2 14 migrate-support-check fail never pass test-amd64-amd64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass version targeted for testing: linux 547cc9be86f4c51c51fd429ace6c2e1ef9050d15 baseline version: linux 6c538e1adbfc696ac4747fb10d63e704344f763d Last test of basis 180278 2023-04-16 19:41:46 Z 70 days Failing since 180281 2023-04-17 06:24:36 Z 69 days 131 attempts Testing same since 181595 2023-06-25 18:11:35 Z 0 days 1 attempts ------------------------------------------------------------ 2772 people touched revisions under test, not listing them all jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl fail test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-freebsd11-amd64 pass test-amd64-amd64-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale fail test-amd64-amd64-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 fail test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 fail test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine fail test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt fail test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu fail test-amd64-amd64-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-amd64-pygrub pass test-amd64-amd64-libvirt-qcow2 pass test-armhf-armhf-libvirt-qcow2 fail test-amd64-amd64-libvirt-raw pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw fail test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds fail test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-amd64-xl-vhd pass test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd fail ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 354554 lines long.) From xen-devel-bounces@lists.xenproject.org Mon Jun 26 02:16:38 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 02:16:38 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554950.866411 (Exim 4.92) (envelope-from ) id 1qDbm6-0007SA-RP; Mon, 26 Jun 2023 02:16:18 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554950.866411; Mon, 26 Jun 2023 02:16:18 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDbm6-0007S3-Oh; Mon, 26 Jun 2023 02:16:18 +0000 Received: by outflank-mailman (input) for mailman id 554950; Mon, 26 Jun 2023 02:16:17 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDbm5-0007Rx-IK for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 02:16:17 +0000 Received: from mail-ej1-x62d.google.com (mail-ej1-x62d.google.com [2a00:1450:4864:20::62d]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 6d674358-13c7-11ee-b237-6b7b168915f2; Mon, 26 Jun 2023 04:16:15 +0200 (CEST) Received: by mail-ej1-x62d.google.com with SMTP id a640c23a62f3a-987341238aeso326383666b.3 for ; Sun, 25 Jun 2023 19:16:15 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 6d674358-13c7-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687745774; x=1690337774; h=cc:to:subject:message-id:date:from:mime-version:from:to:cc:subject :date:message-id:reply-to; bh=hFcNjdxMTr73T7MjBCYxtsm9rGsRg46QQJOIWjTy5bY=; b=m2lRAw67V0q2HRzsKHTgA7P3wKjFd28eHLmzi+VoIvpptRUG6MfFkXYovQggmvLM9T 40IElWJo7RoNevi3dR/J7DjKbbCawwIojTpmjYNz3v34nfV7MI5jw0LXIbqFqvQX1FC4 puqJrzzBe51UgMlarIKlZ+NGF09vUpxCaf6Wch/6f0CFxb/aHdWiWfsAQpUmnpb9NOni FAPMg+gORH0PlYBBTVTPhb6EfZes5CD2btu7JqMd0ij660Usz0MtvOOGBF84acPmt1qy 0HwBl9cB4T7ccXCDKAapzUgmp7YmdCMBD/gGVCX047C9pzwuyLaujivtRQb1p+WUCcV8 Ly9A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687745774; x=1690337774; h=cc:to:subject:message-id:date:from:mime-version:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=hFcNjdxMTr73T7MjBCYxtsm9rGsRg46QQJOIWjTy5bY=; b=Cc06zyUwxV/6syuROCH6FIZNlZLX2OMN9s9AL2LJXG2arObbuIcNW1CcZrnA+MbKPX L1lcPjolGg1EIgr1NLK35KF2lUE3mf0CaeLW7ycNy1CoDSmDwXdvcieEu5xTlRJrwiET jBc8fb8hNHUFVeeJKVyNtB8QJZoVOCUn9/AQ3hdu5RZTfzdHPnZpwe2S9Ycp4kHO8sU6 vGjfRVR/kMA8qt3RS0mOMloG+CsMtt9GwW6c+hxC1a46IJoercygTdY4rkSn5Q9nNbkU O01Hquclwj6fW4XbJoiqjkanq+CjOg6+OzaKp2uv1bjwNmPyyyP1snP9EIQWaoqD/OB3 dafQ== X-Gm-Message-State: AC+VfDwlB9OCMzDwIX8ahgZZIP8BpFLBYp2bTDqn/R6AvAJl2BvRIEM+ VAuWVpjaNoCP0nfvKjSWACtvufqat21FkhVqN6r1yuhAKGM= X-Google-Smtp-Source: ACHHUZ5Tsr3bt4G5xlfKepKnJRIP69+oc/vkTUbFuPzZLOwoBMvULc0+E+ksCXQOlHAXMm0Rj31QdzKE6mM6Z2PqTuM= X-Received: by 2002:a17:907:9306:b0:978:7262:d125 with SMTP id bu6-20020a170907930600b009787262d125mr22902321ejc.76.1687745773732; Sun, 25 Jun 2023 19:16:13 -0700 (PDT) MIME-Version: 1.0 From: Christopher Clark Date: Sun, 25 Jun 2023 19:16:01 -0700 Message-ID: Subject: Xen Summit 2023 Design Session slides + notes: Hyperlaunch To: xen-devel Cc: Daniel Smith , Stefano Stabellini Content-Type: multipart/alternative; boundary="00000000000050864905fefeef09" --00000000000050864905fefeef09 Content-Type: text/plain; charset="UTF-8" # Hyperlaunch: Design Session ## Xen Summit 2023
Moderators: Christopher Clark, Daniel P. Smith
--- # Hyperlaunch: Review of Goals **Project goals:**

* HAT: Isolating Safety Critical VMs from non-Critical VMs * Fast system start * Static partitioning * Dynamic partitioning via policy and configuration * System architecture for boot domain * A strategic advantage for the Xen hypervisor

**Development goal:** Merging incremental work --- # Design Considerations * Architecture-neutral: * Hello Arm dom0less! and RISC-V and PPC and ... * Common representions of boot materials * Common domain contruction code * Abiility for arch-specific extensions to representation and construction

* Upstream maintained --- # Upcoming: Summary View **AMD** is now a sponsor in Hyperlaunch, enabling continued development by Daniel and Christopher to advance the work into Xen.

Development is active: * Series v1 being split and prepared for v2 upstream * Rebase of whole series to 4.17.1 * Preliminary work to add PVH domain construction with mulitple domain unpause --- # Patch Series Status: * v1 series: July 2022 * Review feedback helpful, thanks! * eg. approach: add fields, structure when use is introduced * no major changes in design since posting v1 * **v2 series: imminent**, being prepared to post * Plan agreed with the Xen Community on the Community Calls: * **Smaller patches, a subset of v1 series functionality** * Enables incremental merge, reduces review effort * v2 goal: refactor Xen start logic away from multiboot --- # Patch Series Status (cont'd): * Forward port v1 series to 4.17 is undergoing test in parallel * ensures full multi-VM launch functionality still working * supports testing launch with PVH Dom0 or HWDom and 1 PVH guest --- # v1 Series: x86-specific * Kconfig for max number of boot modules across all of Xen * Add all new boot structures, flag definitions, etc * Change all boot logic after __start_xen: * both PV and PVH dom0 construction, XSM, microcode loading * Change all entry points prior to __start_xen: * multiboot, PVH boot, EFI * Change command line processing to new structures * Move general flattened device tree code from Arm into common * Update docs --- # v1 Series (cont'd): * Add a new Kconfig item for a Domain Builder using FDT * New structure to introduce a Domain Builder, not yet used * Implementation of a domain builder, parsing device tree to construct domains * Conversion of dom0 creation and construction to use of the new domain builder * Generalize dom0 logic: * Domain creation, physmap, VCPU init; page alloc; multi PV domain * Populate hypfs to support boot domain and runtime system use cases * Add a tool for assisting PV domains with xenstore entries --- # v2 Series: Still x86-specific! **Shorter v2 series:** subset of v1 work, addressing prior feedback, for simpler review for initial upstream merging.

Port of full v1 series available separately for testing of the full feature behaviour. --- # v2 Series Outline (in progress): * Introduce hyperlaunch structures: convert module count * Introduce per-arch headers and data structures: convert headroom * Enable bootstrap mapping with hyperlaunch structures * Port PV and PVH dom0 construction from multiboot to hyperlaunch * Switch XSM init to hyperlaunch structures from multiboot * Switch microcode module loading to hyperlaunch structures * Convert PVH boot entry point from multiboot * ... --- # Credit and Thanks * AMD for sponsoring our current development * Star Lab (now WindRiver) for prior sponsorship of Hyperlaunch development * D. DeGraaf's development of late hardware domain and early domain builder work --- # At Summit: Discussion: #1 * There is a challenge with console I/O access as domU require Xenstore for establishing connections

"DomUs can use console_io hypercall when Xen is in debug. Daniel is working an approach that allows specifying whether domU console_io hypercall messages are allowed to be printed to Xen's console." --- # At Summit: Discussion: #2 * An ultimate goal for Safety Certified will be the ability to construct domains and have a PCI device assigned at boot

"This is complicated situation and for these, the DomB concept was created. It will allow for Linux, a Realtime OS, or a bare metal app to be ran before the completion of Xen startup to handle complicated interfaces in a lower privilege execution environment." --- # At Summit: Chat questions: #1 Q: When will Hyperlaunch be able to run a toolstack VM?
*(by stacktrust)*

"It should be doable when the full feature is merged, ie all functionality that is in the v1 series, plus the XSM roles series. v2 series will be a subset of v1 series posted, so more work will be needed to upstream the rest. Then there will be some debugging when control domain is separate from hardware domain with testing toolstack functionality to see what assumptions of dom0 structure are there." --- # At Summit: Chat questions: #2 Can a guest determine whether a system was started with Hyperlaunch?
*(by stacktrust)*

"maybe. we could surface data in ACPI tables in PVH guests, for example. It's a complicated one to answer; will consider for the design doc." --- # At Summit: Chat questions: #3 What is the expected timeline for v2 series to be merged?
*(by stacktrust)*

"v2 series posting: not far out; v2 series merging: will depend on review feedback" --- # At Summit: Chat questions: #4 Q: How much work is expected for v3 series (where v3 = v1 subset that was not part of v2)? Approx timeline?
*(by stacktrust)*

"v1 series was 18 patches; v2 series will be approx 6-8 patches derived from 3 of the v1 series patches, to prepare them for full on-list review. The remaining work (15 of the v1 patches to be revisited) is appreciable, in addition to any necessary iteration on feedback on the v2 series. ..." --- # At Summit: Chat questions: #4 *response continued:* "This is why we're also forward-porting the full 18 patch series to Xen 4.17.1, so the full feature is testable and we're tracking updates to the upstream code that it changes." --- # Additional References * Primary reference: [Hyperlaunch on the Xen Project Wiki]( https://wiki.xenproject.org/wiki/Hyperlaunch)
* [Xen Summit 2020: Reliable Platform Security Xen And The Fidelis Platform For Hardened Access Terminals - HAT](https://xen2020.sched.com/event/baXt)
* [Xen Summit 2021: Protection Hypervisor: Atto-sized Hypervisor Design]( https://events.linuxfoundation.org/archive/2021/xen-summit/program/schedule/ ) --00000000000050864905fefeef09 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
# Hyperlaunch: Design Session
## Xen Summit 2023

<center>Moderators: Christopher Clark, Daniel P. Smith</cente= r>

---

# Hyperlaunch: Review of Goals

**Project goa= ls:**
<br/><br/>

* HAT: Isolating Safety Critical VMs= from non-Critical VMs
* Fast system start
* Static partitioning
*= Dynamic partitioning via policy and configuration
* System architecture= for boot domain
* A strategic advantage for the Xen hypervisor
<b= r/><br/>

**Development goal:** Merging incremental work
=

---
# Design Considerations

* Architecture-neutral:
= =C2=A0* Hello Arm dom0less! and RISC-V and PPC and ...
=C2=A0* Common re= presentions of boot materials
=C2=A0* Common domain contruction code
= =C2=A0* Abiility for arch-specific extensions to representation and constru= ction
=C2=A0<br/><br/>
* Upstream maintained

---
# Upcoming: Summary View

**AMD** is now a sponsor in Hyperlaun= ch, enabling continued development by Daniel and
Christopher to advance = the work into Xen.<br/><br/>

Development is active:
<= br>* Series v1 being split and prepared for v2 upstream
* Rebase of whol= e series to 4.17.1
* Preliminary work to add PVH domain construction wit= h mulitple domain unpause

---

# Patch Series Status:

*= v1 series: July 2022

=C2=A0* Review feedback helpful, thanks!
= =C2=A0 =C2=A0* eg. approach: add fields, structure when use is introduced=C2=A0 =C2=A0* no major changes in design since posting v1

* **v2 = series: imminent**, being prepared to post
=C2=A0 * Plan agreed with the= Xen Community on the Community Calls:
=C2=A0 =C2=A0 * **Smaller patches= , a subset of v1 series functionality**
=C2=A0 =C2=A0 * Enables incremen= tal merge, reduces review effort
=C2=A0 =C2=A0 * v2 goal: refactor Xen s= tart logic away from multiboot

---

# Patch Series Status (con= t'd):

* Forward port v1 series to 4.17 is undergoing test in par= allel
=C2=A0 =C2=A0 * ensures full multi-VM launch functionality still w= orking
=C2=A0 =C2=A0 * supports testing launch with PVH Dom0 or HWDom an= d 1 PVH guest

---

# v1 Series: x86-specific

* Kconfig = for max number of boot modules across all of Xen
* Add all new boot stru= ctures, flag definitions, etc
* Change all boot logic after __start_xen:=
=C2=A0 * both PV and PVH dom0 construction, XSM, microcode loading
*= Change all entry points prior to __start_xen:
=C2=A0 * multiboot, PVH b= oot, EFI
* Change command line processing to new structures
* Move ge= neral flattened device tree code from Arm into common
* Update docs
<= br>---
# v1 Series (cont'd):

* Add a new Kconfig item for a D= omain Builder using FDT
* New structure to introduce a Domain Builder, n= ot yet used
* Implementation of a domain builder, parsing device tree to= construct domains
* Conversion of dom0 creation and construction to use= of the new domain builder
* Generalize dom0 logic:
=C2=A0 * Domain c= reation, physmap, VCPU init; page alloc; multi PV domain
* Populate hypf= s to support boot domain and runtime system use cases
* Add a tool for a= ssisting PV domains with xenstore entries

---

# v2 Series: St= ill x86-specific!

**Shorter v2 series:** subset of v1 work, addressi= ng prior feedback,
for simpler review for initial upstream merging.
&= lt;br/><br/>
Port of full v1 series available separately for te= sting of
the full feature behaviour.

---

# v2 Series Outli= ne (in progress):

* Introduce hyperlaunch structures: convert module= count
* Introduce per-arch headers and data structures: convert headroo= m
* Enable bootstrap mapping with hyperlaunch structures
* Port PV an= d PVH dom0 construction from multiboot to hyperlaunch
* Switch XSM init = to hyperlaunch structures from multiboot
* Switch microcode module loadi= ng to hyperlaunch structures
* Convert PVH boot entry point from multibo= ot
* ...

---

# Credit and Thanks

* AMD for sponsori= ng our current development
* Star Lab (now WindRiver) for prior sponsors= hip of Hyperlaunch development
* D. DeGraaf's development of late ha= rdware domain and early domain builder work

---

# At Summit: = Discussion: #1

* There is a challenge with console I/O access as dom= U require Xenstore for establishing connections
<br/><br/>
"DomUs can use console_io hypercall when Xen is in debug. Daniel= is working an approach that allows specifying whether domU console_io hype= rcall messages are allowed to be printed to Xen's console."
---

# At Summit: Discussion: #2

* An ultimate goal for Safet= y Certified will be the ability to construct domains and have a PCI device = assigned at boot
<br/><br/>


"This is complic= ated situation and for these, the DomB concept was created. It will allow f= or Linux, a Realtime OS, or a bare metal app to be ran before the completio= n of Xen startup to handle complicated interfaces in a lower privilege exec= ution environment."


---

# At Summit: Chat questions:= #1

Q: When will Hyperlaunch be able to run a toolstack VM?
<b= r/>*(by stacktrust)*
<br/><br/>
=C2=A0
"It sho= uld be doable when the full feature is merged, ie all functionality that is= in the v1 series, plus the XSM roles series. v2 series will be a subset of= v1 series posted, so more work will be needed to upstream the rest. Then t= here will be some debugging when control domain is separate from hardware d= omain with testing toolstack functionality to see what assumptions of dom0 = structure are there."

---

# At Summit: Chat questions: #= 2

Can a guest determine whether a system was started with Hyperlaunc= h?
<br/>*(by stacktrust)*
<br/><br/>

"m= aybe. we could surface data in ACPI tables in PVH guests, for example.
I= t's a complicated one to answer; will consider for the design doc."= ;

---

# At Summit: Chat questions: #3

What is the expe= cted timeline for v2 series to be merged?
<br/>*(by stacktrust)*<br/><br/>

"v2 series posting: not far out; v2 se= ries merging: will depend on review feedback"

---

# At S= ummit: Chat questions: #4

Q: How much work is expected for v3 series= (where v3 =3D v1 subset that was not part of v2)? Approx timeline?
<= br/>*(by stacktrust)*
<br/><br/>

"v1 series w= as 18 patches; v2 series will be approx 6-8 patches derived from 3 of the v= 1 series patches, to prepare them for full on-list review.

The remai= ning work (15 of the v1 patches to be revisited) is appreciable, in additio= n to any necessary iteration on feedback on the v2 series.

..."=

---

# At Summit: Chat questions: #4

*response continu= ed:*

"This is why we're also forward-porting the full 18 pa= tch series to Xen 4.17.1, so the full feature is testable and we're tra= cking updates to the upstream code that it changes."

---
# Additional References

* Primary reference: [Hyperlaunch on the Xe= n Project Wiki](ht= tps://wiki.xenproject.org/wiki/Hyperlaunch)
<br/>

* [Xe= n Summit 2020: Reliable Platform Security Xen And The Fidelis Platform For = Hardened Access Terminals - HAT](https://xen2020.sched.com/event/baXt)
<br/>

* [X= en Summit 2021: Protection Hypervisor: Atto-sized Hypervisor Design](https://events.linuxfoundation.org/archive/2021/xen-summit/program/= schedule/)
--00000000000050864905fefeef09-- From xen-devel-bounces@lists.xenproject.org Mon Jun 26 03:35:22 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 03:35:22 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554957.866451 (Exim 4.92) (envelope-from ) id 1qDd0Z-0008QZ-B8; Mon, 26 Jun 2023 03:35:19 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554957.866451; Mon, 26 Jun 2023 03:35:19 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd0Z-0008QS-83; Mon, 26 Jun 2023 03:35:19 +0000 Received: by outflank-mailman (input) for mailman id 554957; Mon, 26 Jun 2023 03:35:17 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd0X-0007ej-N1 for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 03:35:17 +0000 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by se1-gles-sth1.inumbo.com (Halon) with ESMTP id 779d4bbd-13d2-11ee-b237-6b7b168915f2; Mon, 26 Jun 2023 05:35:16 +0200 (CEST) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 4B93B1FB; Sun, 25 Jun 2023 20:36:00 -0700 (PDT) Received: from a011292.shanghai.arm.com (a011292.shanghai.arm.com [10.169.190.94]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id DFA903F64C; Sun, 25 Jun 2023 20:35:13 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 779d4bbd-13d2-11ee-b237-6b7b168915f2 From: Penny Zheng To: xen-devel@lists.xenproject.org Cc: Wei Chen , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk , Penny Zheng Subject: [PATCH v3 03/52] xen/arm: add an option to define Xen start address for Armv8-R Date: Mon, 26 Jun 2023 11:33:54 +0800 Message-Id: <20230626033443.2943270-4-Penny.Zheng@arm.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230626033443.2943270-1-Penny.Zheng@arm.com> References: <20230626033443.2943270-1-Penny.Zheng@arm.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit From: Wei Chen On Armv8-A, Xen has a fixed virtual start address (link address too) for all Armv8-A platforms. In an MMU based system, Xen can map its loaded address to this virtual start address. So, on Armv8-A platforms, the Xen start address does not need to be configurable. But on Armv8-R platforms, there is no MMU to map loaded address to a fixed virtual address and different platforms will have very different address space layout. So Xen cannot use a fixed physical address on MPU based system and need to have it configurable. In this patch we introduce one Kconfig option for users to define the default Xen start address for Armv8-R. Users can enter the address in config time, or select the tailored platform config file from arch/arm/configs. And as we introduced Armv8-R to Xen, that means the existed Arm64 MMU based platforms should not be listed in Armv8-R platform list, so we add !HAS_MPU dependency for these platforms. Signed-off-by: Wei Chen Signed-off-by: Penny Zheng --- v1 -> v2: 1. Remove the platform header fvp_baser.h. 2. Remove the default start address for fvp_baser64. 3. Remove the description of default address from commit log. 4. Change HAS_MPU to ARM_V8R for Xen start address dependency. No matter Arm-v8r board has MPU or not, it always need to specify the start address. --- v3: 1. Remove unrelated change of "CONFIG_FVP_BASER" 2. Change ARM_V8R to HAS_MPU for Xen start address dependency --- xen/arch/arm/Kconfig | 8 ++++++++ xen/arch/arm/platforms/Kconfig | 8 +++++--- 2 files changed, 13 insertions(+), 3 deletions(-) diff --git a/xen/arch/arm/Kconfig b/xen/arch/arm/Kconfig index 70fdc2ba63..ff17345cdb 100644 --- a/xen/arch/arm/Kconfig +++ b/xen/arch/arm/Kconfig @@ -181,6 +181,14 @@ config TEE This option enables generic TEE mediators support. It allows guests to access real TEE via one of TEE mediators implemented in XEN. +config XEN_START_ADDRESS + hex "Xen start address: keep default to use platform defined address" + default 0 + depends on HAS_MPU + help + This option allows to set the customized address at which Xen will be + linked on MPU systems. This address must be aligned to a page size. + source "arch/arm/tee/Kconfig" config STATIC_SHM diff --git a/xen/arch/arm/platforms/Kconfig b/xen/arch/arm/platforms/Kconfig index c93a6b2756..75af48b5f9 100644 --- a/xen/arch/arm/platforms/Kconfig +++ b/xen/arch/arm/platforms/Kconfig @@ -1,6 +1,7 @@ choice prompt "Platform Support" default ALL_PLAT + default NO_PLAT if HAS_MPU ---help--- Choose which hardware platform to enable in Xen. @@ -8,13 +9,14 @@ choice config ALL_PLAT bool "All Platforms" + depends on !HAS_MPU ---help--- Enable support for all available hardware platforms. It doesn't automatically select any of the related drivers. config QEMU bool "QEMU aarch virt machine support" - depends on ARM_64 + depends on ARM_64 && !HAS_MPU select GICV3 select HAS_PL011 ---help--- @@ -23,7 +25,7 @@ config QEMU config RCAR3 bool "Renesas RCar3 support" - depends on ARM_64 + depends on ARM_64 && !HAS_MPU select HAS_SCIF select IPMMU_VMSA ---help--- @@ -31,7 +33,7 @@ config RCAR3 config MPSOC bool "Xilinx Ultrascale+ MPSoC support" - depends on ARM_64 + depends on ARM_64 && !HAS_MPU select HAS_CADENCE_UART select ARM_SMMU ---help--- -- 2.25.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 26 03:35:22 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 03:35:22 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554955.866426 (Exim 4.92) (envelope-from ) id 1qDd0T-0007iF-O8; Mon, 26 Jun 2023 03:35:13 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554955.866426; Mon, 26 Jun 2023 03:35:13 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd0T-0007hI-IP; Mon, 26 Jun 2023 03:35:13 +0000 Received: by outflank-mailman (input) for mailman id 554955; Mon, 26 Jun 2023 03:35:12 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd0R-0007ej-VA for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 03:35:11 +0000 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by se1-gles-sth1.inumbo.com (Halon) with ESMTP id 744454cd-13d2-11ee-b237-6b7b168915f2; Mon, 26 Jun 2023 05:35:11 +0200 (CEST) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 9511E2F4; Sun, 25 Jun 2023 20:35:54 -0700 (PDT) Received: from a011292.shanghai.arm.com (a011292.shanghai.arm.com [10.169.190.94]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id E48BC3F64C; Sun, 25 Jun 2023 20:35:07 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 744454cd-13d2-11ee-b237-6b7b168915f2 From: Penny Zheng To: xen-devel@lists.xenproject.org Cc: Wei Chen , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk , Penny Zheng , Julien Grall Subject: [PATCH v3 01/52] xen/arm: remove xen_phys_start and xenheap_phys_end from config.h Date: Mon, 26 Jun 2023 11:33:52 +0800 Message-Id: <20230626033443.2943270-2-Penny.Zheng@arm.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230626033443.2943270-1-Penny.Zheng@arm.com> References: <20230626033443.2943270-1-Penny.Zheng@arm.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit From: Wei Chen These two variables are stale variables, they only have declarations in config.h, they don't have any definition and no any code is using these two variables. So in this patch, we remove them from config.h. Signed-off-by: Wei Chen Signed-off-by: Penny Zheng Acked-by: Julien Grall --- v1 -> v2: 1. Add Ab. --- v3: - no changes --- xen/arch/arm/include/asm/config.h | 2 -- 1 file changed, 2 deletions(-) diff --git a/xen/arch/arm/include/asm/config.h b/xen/arch/arm/include/asm/config.h index c969e6da58..30f4665ba9 100644 --- a/xen/arch/arm/include/asm/config.h +++ b/xen/arch/arm/include/asm/config.h @@ -204,8 +204,6 @@ #define STACK_SIZE (PAGE_SIZE << STACK_ORDER) #ifndef __ASSEMBLY__ -extern unsigned long xen_phys_start; -extern unsigned long xenheap_phys_end; extern unsigned long frametable_virt_end; #endif -- 2.25.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 26 03:35:22 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 03:35:22 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554954.866421 (Exim 4.92) (envelope-from ) id 1qDd0T-0007f1-DR; Mon, 26 Jun 2023 03:35:13 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554954.866421; Mon, 26 Jun 2023 03:35:13 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd0T-0007eu-AO; Mon, 26 Jun 2023 03:35:13 +0000 Received: by outflank-mailman (input) for mailman id 554954; Mon, 26 Jun 2023 03:35:11 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd0R-0007ej-K7 for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 03:35:11 +0000 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by se1-gles-sth1.inumbo.com (Halon) with ESMTP id 726f0ddd-13d2-11ee-b237-6b7b168915f2; Mon, 26 Jun 2023 05:35:08 +0200 (CEST) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 751C61FB; Sun, 25 Jun 2023 20:35:51 -0700 (PDT) Received: from a011292.shanghai.arm.com (a011292.shanghai.arm.com [10.169.190.94]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id C40EE3F64C; Sun, 25 Jun 2023 20:35:03 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 726f0ddd-13d2-11ee-b237-6b7b168915f2 From: Penny Zheng To: xen-devel@lists.xenproject.org Cc: Penny Zheng , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk , Andrew Cooper , George Dunlap , Jan Beulich , Wei Liu , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Paul Durrant Subject: [PATCH v3 00/52] xen/arm: Add Armv8-R64 MPU support to Xen - Part#1 Date: Mon, 26 Jun 2023 11:33:51 +0800 Message-Id: <20230626033443.2943270-1-Penny.Zheng@arm.com> X-Mailer: git-send-email 2.25.1 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit So sorry for the long long wait before v3 serie, since I got sidetracked to a new high priority internal project for quite a time. The Armv8-R architecture profile was designed to support use cases that have a high sensitivity to deterministic execution. (e.g. Fuel Injection, Brake control, Drive trains, Motor control etc) Arm announced Armv8-R in 2013, it is the latest generation Arm architecture targeted at the Real-time profile. It introduces virtualization at the highest security level while retaining the Protected Memory System Architecture (PMSA) based on a Memory Protection Unit (MPU). In 2020, Arm announced Cortex-R82, which is the first Arm 64-bit Cortex-R processor based on Armv8-R64. The latest Armv8-R64 document can be found [1]. And the features of Armv8-R64 architecture: - An exception model that is compatible with the Armv8-A model - Virtualization with support for guest operating systems - PMSA virtualization using MPUs In EL2. - Adds support for the 64-bit A64 instruction set. - Supports up to 48-bit physical addressing. - Supports three Exception Levels (ELs) - Secure EL2 - The Highest Privilege - Secure EL1 - RichOS (MMU) or RTOS (MPU) - Secure EL0 - Application Workloads - Supports only a single Security state - Secure. - MPU in EL1 & EL2 is configurable, MMU in EL1 is configurable. These patch series are implementing the Armv8-R64 MPU support for Xen, which are based on the discussion of "Proposal for Porting Xen to Armv8-R64 - DraftC" [2]. We will implement the Armv8-R64 and MPU support in three stages: 1. Support to boot MMU domains on Armv8-R64 Xen. 2. Support to boot MPU domains on Armv8-R64 Xen. 3. SMP and other advanced features of Xen support on Armv8-R64. For having a overall undestanding for reviewers about MPU framework on Xen, we have introduced a large patch serie here, including 52 commits. At this stage, we could successfully boot a linux guest on FVP_BaseR_AEMv8R model[3]. We will split these patches to several parts, this series is the part#1, v1 is in [4], the full PoC can be found in [5]. More software for Armv8-R64 can be found in [6]; [1] https://developer.arm.com/documentation/ddi0600/latest [2] https://lists.xenproject.org/archives/html/xen-devel/2022-05/msg00643.html [3] https://developer.arm.com/tools-and-software/simulation-models/fixed-virtual-platforms/arm-ecosystem-models [4] https://lists.xenproject.org/archives/html/xen-devel/2022-11/msg00289.html [5] https://gitlab.com/xen-project/people/weic/xen/-/tree/integration/mpu_v3 [6] https://armv8r64-refstack.docs.arm.com/en/v5.0/ Penny Zheng (41): xen/arm: introduce CONFIG_HAS_MMU xen/arm: mmu: fold FIXMAP into MMU system xen/mmu: extract early uart mapping from setup_fixmap xen/mmu: move MMU-specific setup_mm to mmu/setup.c xen: make VMAP only support in MMU system xen/mmu: relocate copy_from_paddr into setup.c xen/arm: do not give memory back to static heap xen/arm: only map the init text section RW in free_init_memory xen/arm: switch to use ioremap_xxx in common file xen/mmu: move MMU specific P2M code to mmu/p2m.c and mmu/p2m.h xen: introduce CONFIG_HAS_PAGING_MEMPOOL xen/mmu: enable SMMU subsystem only in MMU xen/mpu: build up start-of-day Xen MPU memory region map xen/mpu: introduce helpers for MPU enablement xen/mpu: map early uart when earlyprintk on xen/mpu: introduce setup_mm_mappings xen/mpu: plump virt/maddr conversion in MPU system xen/mpu: introduce a pair helper read_protection_region()/write_protection_region() xen/mpu: populate a new region in Xen MPU mapping table xen/mpu: make early_fdt_map support in MPU systems xen/mpu: implement MPU version of setup_mm in mpu/setup.c xen/mpu: initialize frametable in MPU system xen/mpu: destroy an existing entry in Xen MPU memory mapping table xen/arm: map static memory on demand xen/mpu: implememt ioremap_xxx in MPU xen/mpu: implement MPU version of copy_from_paddr xen/mpu: map domain page in MPU system xen/mpu: support free_init_memory in MPU system xen/mpu: implement remove_early_mappings in MPU system xen/mpu: Use secure hypervisor timer in MPU system xen/mpu: implement setup_virt_paging for MPU system xen/mpu: configure VSTCR_EL2 in MPU system xen/mpu: P2M initialization in MPU system xen/mpu: insert an new entry into guest physmap in MPU system xen/mpu: look up entry in p2m table xen/mpu: support vcpu context switch in MPU system xen/mpu: enable MMIO region trap in MPU system xen/mpu: enable device passthrough in MPU system xen/mpu: dump debug message in MPU system xen/mpu: create stubs of function/variables for UNSUPPORTED features xen/arm: add Kconfig option CONFIG_HAS_MPU to enable MPU system support Wei Chen (11): xen/arm: remove xen_phys_start and xenheap_phys_end from config.h xen/arm: make ARM_EFI selectable for Arm64 xen/arm: add an option to define Xen start address for Armv8-R xen/arm: add .text.idmap in ld script for Xen identity map sections xen/arm64: head: Introduce enable_boot_mmu and enable_runtime_mmu xen/arm64: prepare for moving MMU related code from head.S xen/arm64: move MMU related code from head.S to mmu/head.S xen/arm: use PA == VA for EARLY_UART_VIRTUAL_ADDRESS on MPU systems xen/arm: Move MMU related definitions from config.h to mmu/layout.h xen/mmu: extract mmu-specific codes from mm.c/mm.h xen/arm: create mpu/layout.h for MPU related address definitions xen/arch/arm/Kconfig | 52 +- xen/arch/arm/Kconfig.debug | 7 + xen/arch/arm/Makefile | 15 +- xen/arch/arm/arm32/head.S | 2 +- xen/arch/arm/arm64/Makefile | 7 +- xen/arch/arm/arm64/head.S | 472 +----- xen/arch/arm/arm64/mmu/head.S | 463 ++++++ xen/arch/arm/arm64/{ => mmu}/mm.c | 7 +- xen/arch/arm/arm64/mpu/head.S | 255 ++++ xen/arch/arm/arm64/smpboot.c | 6 +- xen/arch/arm/bootfdt.c | 2 +- xen/arch/arm/domain.c | 2 + xen/arch/arm/domain_build.c | 2 + xen/arch/arm/include/asm/arm64/macros.h | 51 + xen/arch/arm/include/asm/arm64/mm.h | 7 +- xen/arch/arm/include/asm/arm64/mpu.h | 140 ++ xen/arch/arm/include/asm/arm64/sysregs.h | 76 + xen/arch/arm/include/asm/config.h | 129 +- xen/arch/arm/include/asm/cpufeature.h | 7 + xen/arch/arm/include/asm/early_printk.h | 20 + xen/arch/arm/include/asm/fixmap.h | 31 +- xen/arch/arm/include/asm/mm.h | 79 +- xen/arch/arm/include/asm/mmu/layout.h | 141 ++ xen/arch/arm/include/asm/mmu/mm.h | 54 + xen/arch/arm/include/asm/mmu/p2m.h | 18 + xen/arch/arm/include/asm/mpu/layout.h | 32 + xen/arch/arm/include/asm/mpu/mm.h | 36 + xen/arch/arm/include/asm/mpu/p2m.h | 18 + xen/arch/arm/include/asm/p2m.h | 48 +- xen/arch/arm/include/asm/page.h | 46 +- xen/arch/arm/include/asm/processor.h | 14 + xen/arch/arm/include/asm/setup.h | 16 +- xen/arch/arm/kernel.c | 42 +- xen/arch/arm/mm.c | 1160 +------------- xen/arch/arm/mmu/mm.c | 1133 ++++++++++++++ xen/arch/arm/mmu/p2m.c | 1612 +++++++++++++++++++ xen/arch/arm/mmu/setup.c | 379 +++++ xen/arch/arm/mpu/domain_page.c | 68 + xen/arch/arm/mpu/mm.c | 959 ++++++++++++ xen/arch/arm/mpu/p2m.c | 518 +++++++ xen/arch/arm/mpu/setup.c | 102 ++ xen/arch/arm/p2m.c | 1782 ++-------------------- xen/arch/arm/platforms/Kconfig | 8 +- xen/arch/arm/setup.c | 388 +---- xen/arch/arm/smpboot.c | 6 +- xen/arch/arm/traps.c | 97 +- xen/arch/arm/xen.lds.S | 6 +- xen/arch/x86/Kconfig | 2 + xen/arch/x86/setup.c | 2 + xen/common/Kconfig | 8 + xen/common/Makefile | 2 +- xen/common/domctl.c | 2 + xen/common/vmap.c | 7 + xen/drivers/passthrough/Kconfig | 3 +- xen/include/xen/vmap.h | 11 +- 55 files changed, 6730 insertions(+), 3822 deletions(-) create mode 100644 xen/arch/arm/arm64/mmu/head.S rename xen/arch/arm/arm64/{ => mmu}/mm.c (97%) create mode 100644 xen/arch/arm/arm64/mpu/head.S create mode 100644 xen/arch/arm/include/asm/arm64/mpu.h create mode 100644 xen/arch/arm/include/asm/mmu/layout.h create mode 100644 xen/arch/arm/include/asm/mmu/mm.h create mode 100644 xen/arch/arm/include/asm/mmu/p2m.h create mode 100644 xen/arch/arm/include/asm/mpu/layout.h create mode 100644 xen/arch/arm/include/asm/mpu/mm.h create mode 100644 xen/arch/arm/include/asm/mpu/p2m.h create mode 100644 xen/arch/arm/mmu/mm.c create mode 100644 xen/arch/arm/mmu/p2m.c create mode 100644 xen/arch/arm/mmu/setup.c create mode 100644 xen/arch/arm/mpu/domain_page.c create mode 100644 xen/arch/arm/mpu/mm.c create mode 100644 xen/arch/arm/mpu/p2m.c create mode 100644 xen/arch/arm/mpu/setup.c -- 2.25.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 26 03:35:22 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 03:35:22 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554956.866441 (Exim 4.92) (envelope-from ) id 1qDd0W-000892-4R; Mon, 26 Jun 2023 03:35:16 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554956.866441; Mon, 26 Jun 2023 03:35:16 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd0W-00088t-1J; Mon, 26 Jun 2023 03:35:16 +0000 Received: by outflank-mailman (input) for mailman id 554956; Mon, 26 Jun 2023 03:35:14 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd0U-0007ej-RN for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 03:35:14 +0000 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by se1-gles-sth1.inumbo.com (Halon) with ESMTP id 75ef70ef-13d2-11ee-b237-6b7b168915f2; Mon, 26 Jun 2023 05:35:14 +0200 (CEST) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 6EAF11FB; Sun, 25 Jun 2023 20:35:57 -0700 (PDT) Received: from a011292.shanghai.arm.com (a011292.shanghai.arm.com [10.169.190.94]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id 119273F64C; Sun, 25 Jun 2023 20:35:10 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 75ef70ef-13d2-11ee-b237-6b7b168915f2 From: Penny Zheng To: xen-devel@lists.xenproject.org Cc: Wei Chen , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk , Penny Zheng Subject: [PATCH v3 02/52] xen/arm: make ARM_EFI selectable for Arm64 Date: Mon, 26 Jun 2023 11:33:53 +0800 Message-Id: <20230626033443.2943270-3-Penny.Zheng@arm.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230626033443.2943270-1-Penny.Zheng@arm.com> References: <20230626033443.2943270-1-Penny.Zheng@arm.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit From: Wei Chen Currently, ARM_EFI will mandatorily selected by Arm64. Even if the user knows for sure that their images will not start in the EFI environment, they can't disable the EFI support for Arm64. This means there will be about 3K lines unused code in their images. So in this patch, we make ARM_EFI selectable for Arm64, and based on that, we can use CONFIG_ARM_EFI to gate the EFI specific code in head.S for those images that will not be booted in EFI environment. Signed-off-by: Wei Chen Signed-off-by: Penny Zheng --- v1 -> v2: 1. New patch --- v3: 1. doc fix --- xen/arch/arm/Kconfig | 9 +++++++-- xen/arch/arm/arm64/head.S | 15 +++++++++++++-- 2 files changed, 20 insertions(+), 4 deletions(-) diff --git a/xen/arch/arm/Kconfig b/xen/arch/arm/Kconfig index 61e581b8c2..70fdc2ba63 100644 --- a/xen/arch/arm/Kconfig +++ b/xen/arch/arm/Kconfig @@ -7,7 +7,6 @@ config ARM_64 def_bool y depends on !ARM_32 select 64BIT - select ARM_EFI select HAS_FAST_MULTIPLY config ARM @@ -70,7 +69,13 @@ config ACPI an alternative to device tree on ARM64. config ARM_EFI - bool + bool "UEFI boot service support" + depends on ARM_64 + default y + help + This option provides support for boot services through + UEFI firmware. A UEFI stub is provided to allow Xen to + be booted as an EFI application. config GICV3 bool "GICv3 driver" diff --git a/xen/arch/arm/arm64/head.S b/xen/arch/arm/arm64/head.S index f37133cf7c..10a07db428 100644 --- a/xen/arch/arm/arm64/head.S +++ b/xen/arch/arm/arm64/head.S @@ -22,8 +22,11 @@ #include #include + +#ifdef CONFIG_ARM_EFI #include #include +#endif #define PT_PT 0xf7f /* nG=1 AF=1 SH=11 AP=01 NS=1 ATTR=111 T=1 P=1 */ #define PT_MEM 0xf7d /* nG=1 AF=1 SH=11 AP=01 NS=1 ATTR=111 T=0 P=1 */ @@ -172,8 +175,10 @@ efi_head: .byte 0x52 .byte 0x4d .byte 0x64 - .long pe_header - efi_head /* Offset to the PE header. */ - +#ifndef CONFIG_ARM_EFI + .long 0 /* 0 means no PE header. */ +#else + .long pe_header - efi_head /* Offset to the PE header. */ /* * Add the PE/COFF header to the file. The address of this header * is at offset 0x3c in the file, and is part of Linux "Image" @@ -279,6 +284,8 @@ section_table: .short 0 /* NumberOfLineNumbers (0 for executables) */ .long 0xe0500020 /* Characteristics (section flags) */ .align 5 +#endif /* CONFIG_ARM_EFI */ + real_start: /* BSS should be zeroed when booting without EFI */ mov x26, #0 /* x26 := skip_zero_bss */ @@ -917,6 +924,8 @@ putn: ret ENTRY(lookup_processor_type) mov x0, #0 ret + +#ifdef CONFIG_ARM_EFI /* * Function to transition from EFI loader in C, to Xen entry point. * void noreturn efi_xen_start(void *fdt_ptr, uint32_t fdt_size); @@ -975,6 +984,8 @@ ENTRY(efi_xen_start) b real_start_efi ENDPROC(efi_xen_start) +#endif /* CONFIG_ARM_EFI */ + /* * Local variables: * mode: ASM -- 2.25.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 26 03:35:24 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 03:35:24 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554961.866461 (Exim 4.92) (envelope-from ) id 1qDd0e-0000Lw-J0; Mon, 26 Jun 2023 03:35:24 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554961.866461; Mon, 26 Jun 2023 03:35:24 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd0e-0000Lp-G6; Mon, 26 Jun 2023 03:35:24 +0000 Received: by outflank-mailman (input) for mailman id 554961; Mon, 26 Jun 2023 03:35:23 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd0d-0000HH-Fg for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 03:35:23 +0000 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by se1-gles-flk1.inumbo.com (Halon) with ESMTP id 7963a96d-13d2-11ee-8611-37d641c3527e; Mon, 26 Jun 2023 05:35:19 +0200 (CEST) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 388F41FB; Sun, 25 Jun 2023 20:36:03 -0700 (PDT) Received: from a011292.shanghai.arm.com (a011292.shanghai.arm.com [10.169.190.94]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id C65593F64C; Sun, 25 Jun 2023 20:35:16 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 7963a96d-13d2-11ee-8611-37d641c3527e From: Penny Zheng To: xen-devel@lists.xenproject.org Cc: Wei Chen , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk , Penny Zheng Subject: [PATCH v3 04/52] xen/arm: add .text.idmap in ld script for Xen identity map sections Date: Mon, 26 Jun 2023 11:33:55 +0800 Message-Id: <20230626033443.2943270-5-Penny.Zheng@arm.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230626033443.2943270-1-Penny.Zheng@arm.com> References: <20230626033443.2943270-1-Penny.Zheng@arm.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit From: Wei Chen Only the first 4KB of Xen image will be mapped as identity (PA == VA). At the moment, Xen guarantees this by having everything that needs to be used in the identity mapping in .text.header section of head.S, and the size will be checked by _idmap_start and _idmap_end at link time if this fits in 4KB. In a later patch, we will move the MMU specific code out of head.S. Although we can add .text.header to the new file to guarantee all identity map code still in the first 4KB. However, the order of these two files on this 4KB depends on the build tools. Currently, we use the build tools to process the order of objs in the Makefile to ensure that head.S must be at the top. But if you change to another build tools, it might not be the same result. In this patch we introduce a new section named .text.idmap in the region between _idmap_start and _idmap_end. And in Xen link script, we force the .text.idmap contents to linked after .text.header. This will ensure code of head.S always be at the top of Xen binary. Signed-off-by: Wei Chen Signed-off-by: Penny Zheng --- v1 -> v2: 1. New patch. --- v3: 1. adapt to changes to "_end_boot" --- xen/arch/arm/xen.lds.S | 1 + 1 file changed, 1 insertion(+) diff --git a/xen/arch/arm/xen.lds.S b/xen/arch/arm/xen.lds.S index be58c2c395..4f7daa7dca 100644 --- a/xen/arch/arm/xen.lds.S +++ b/xen/arch/arm/xen.lds.S @@ -34,6 +34,7 @@ SECTIONS _stext = .; /* Text section */ _idmap_start = .; *(.text.header) + *(.text.idmap) _idmap_end = .; *(.text.cold) -- 2.25.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 26 03:35:26 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 03:35:26 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554962.866471 (Exim 4.92) (envelope-from ) id 1qDd0f-0000cV-Rk; Mon, 26 Jun 2023 03:35:25 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554962.866471; Mon, 26 Jun 2023 03:35:25 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd0f-0000cM-ON; Mon, 26 Jun 2023 03:35:25 +0000 Received: by outflank-mailman (input) for mailman id 554962; Mon, 26 Jun 2023 03:35:24 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd0e-0007ej-74 for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 03:35:24 +0000 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by se1-gles-sth1.inumbo.com (Halon) with ESMTP id 7b18fd6d-13d2-11ee-b237-6b7b168915f2; Mon, 26 Jun 2023 05:35:22 +0200 (CEST) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 1B9401FB; Sun, 25 Jun 2023 20:36:06 -0700 (PDT) Received: from a011292.shanghai.arm.com (a011292.shanghai.arm.com [10.169.190.94]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id A98723F64C; Sun, 25 Jun 2023 20:35:19 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 7b18fd6d-13d2-11ee-b237-6b7b168915f2 From: Penny Zheng To: xen-devel@lists.xenproject.org Cc: Wei Chen , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk , Penny Zheng Subject: [PATCH v3 05/52] xen/arm64: head: Introduce enable_boot_mmu and enable_runtime_mmu Date: Mon, 26 Jun 2023 11:33:56 +0800 Message-Id: <20230626033443.2943270-6-Penny.Zheng@arm.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230626033443.2943270-1-Penny.Zheng@arm.com> References: <20230626033443.2943270-1-Penny.Zheng@arm.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit From: Wei Chen At the moment, on MMU system, enable_mmu() will return to an address in the 1:1 mapping, then each path is responsible to switch to virtual runtime mapping. Then remove_identity_mapping() is called to remove all 1:1 mapping. Since remove_identity_mapping() is not necessary on Non-MMU system, and we also avoid creating empty function for Non-MMU system, trying to keep only one codeflow in arm64/head.S, we move path switch and remove_identity_mapping() in enable_mmu() on MMU system. As the remove_identity_mapping should only be called for the boot CPU only, so we introduce enable_boot_mmu for boot CPU and enable_runtime_mmu for secondary CPUs in this patch. Signed-off-by: Wei Chen Signed-off-by: Penny Zheng --- v3: - new patch --- xen/arch/arm/arm64/head.S | 87 +++++++++++++++++++++++++++++++-------- 1 file changed, 70 insertions(+), 17 deletions(-) diff --git a/xen/arch/arm/arm64/head.S b/xen/arch/arm/arm64/head.S index 10a07db428..4dfbe0bc6f 100644 --- a/xen/arch/arm/arm64/head.S +++ b/xen/arch/arm/arm64/head.S @@ -314,21 +314,12 @@ real_start_efi: bl check_cpu_mode bl cpu_init - bl create_page_tables - load_paddr x0, boot_pgtable - bl enable_mmu /* We are still in the 1:1 mapping. Jump to the runtime Virtual Address. */ - ldr x0, =primary_switched - br x0 + ldr lr, =primary_switched + b enable_boot_mmu + primary_switched: - /* - * The 1:1 map may clash with other parts of the Xen virtual memory - * layout. As it is not used anymore, remove it completely to - * avoid having to worry about replacing existing mapping - * afterwards. - */ - bl remove_identity_mapping bl setup_fixmap #ifdef CONFIG_EARLY_PRINTK /* Use a virtual address to access the UART. */ @@ -373,13 +364,11 @@ GLOBAL(init_secondary) #endif bl check_cpu_mode bl cpu_init - load_paddr x0, init_ttbr - ldr x0, [x0] - bl enable_mmu /* We are still in the 1:1 mapping. Jump to the runtime Virtual Address. */ - ldr x0, =secondary_switched - br x0 + ldr lr, =secondary_switched + b enable_runtime_mmu + secondary_switched: #ifdef CONFIG_EARLY_PRINTK /* Use a virtual address to access the UART. */ @@ -694,6 +683,70 @@ enable_mmu: ret ENDPROC(enable_mmu) +/* + * Turn on the Data Cache and the MMU. The function will return + * to the virtual address provided in LR (e.g. the runtime mapping). + * + * Inputs: + * lr : Virtual address to return to. + * + * Clobbers x0 - x5 + */ +enable_runtime_mmu: + mov x5, lr + + load_paddr x0, init_ttbr + ldr x0, [x0] + + bl enable_mmu + mov lr, x5 + + /* return to secondary_switched */ + ret +ENDPROC(enable_runtime_mmu) + +/* + * Turn on the Data Cache and the MMU. The function will return + * to the virtual address provided in LR (e.g. the runtime mapping). + * + * Inputs: + * lr : Virtual address to return to. + * + * Clobbers x0 - x5 + */ +enable_boot_mmu: + mov x5, lr + + bl create_page_tables + load_paddr x0, boot_pgtable + + bl enable_mmu + mov lr, x5 + + /* + * The MMU is turned on and we are in the 1:1 mapping. Switch + * to the runtime mapping. + */ + ldr x0, =1f + br x0 +1: + /* + * The 1:1 map may clash with other parts of the Xen virtual memory + * layout. As it is not used anymore, remove it completely to + * avoid having to worry about replacing existing mapping + * afterwards. Function will return to primary_switched. + */ + b remove_identity_mapping + + /* + * Here might not be reached, as "ret" in remove_identity_mapping + * will use the return address in LR in advance. But keep ret here + * might be more safe if "ret" in remove_identity_mapping is removed + * in future. + */ + ret +ENDPROC(enable_boot_mmu) + /* * Remove the 1:1 map from the page-tables. It is not easy to keep track * where the 1:1 map was mapped, so we will look for the top-level entry -- 2.25.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 26 03:35:33 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 03:35:33 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554967.866481 (Exim 4.92) (envelope-from ) id 1qDd0n-0001GH-89; Mon, 26 Jun 2023 03:35:33 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554967.866481; Mon, 26 Jun 2023 03:35:33 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd0n-0001Fx-1r; Mon, 26 Jun 2023 03:35:33 +0000 Received: by outflank-mailman (input) for mailman id 554967; Mon, 26 Jun 2023 03:35:30 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd0k-0000HH-Rx for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 03:35:30 +0000 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by se1-gles-flk1.inumbo.com (Halon) with ESMTP id 7eab5472-13d2-11ee-8611-37d641c3527e; Mon, 26 Jun 2023 05:35:28 +0200 (CEST) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 16C011FB; Sun, 25 Jun 2023 20:36:12 -0700 (PDT) Received: from a011292.shanghai.arm.com (a011292.shanghai.arm.com [10.169.190.94]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id AD90A3F64C; Sun, 25 Jun 2023 20:35:25 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 7eab5472-13d2-11ee-8611-37d641c3527e From: Penny Zheng To: xen-devel@lists.xenproject.org Cc: Wei Chen , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk , Penny Zheng Subject: [PATCH v3 07/52] xen/arm64: prepare for moving MMU related code from head.S Date: Mon, 26 Jun 2023 11:33:58 +0800 Message-Id: <20230626033443.2943270-8-Penny.Zheng@arm.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230626033443.2943270-1-Penny.Zheng@arm.com> References: <20230626033443.2943270-1-Penny.Zheng@arm.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit From: Wei Chen We want to reuse head.S for MPU systems, but there are some code are implemented for MMU systems only. We will move such code to another MMU specific file. But before that we will do some indentations fix in this patch to make them be easier for reviewing: 1. Fix the indentations of code comments. 2. Fix the indentations for .text.header section. 3. Rename puts() to asm_puts() for global export Signed-off-by: Wei Chen Signed-off-by: Penny Zheng --- v1 -> v2: 1. New patch. --- v3: 1. fix commit message 2. Rename puts() to asm_puts() for global export --- xen/arch/arm/arm64/head.S | 42 +++++++++++++++++++-------------------- 1 file changed, 21 insertions(+), 21 deletions(-) diff --git a/xen/arch/arm/arm64/head.S b/xen/arch/arm/arm64/head.S index 4dfbe0bc6f..66347eedcc 100644 --- a/xen/arch/arm/arm64/head.S +++ b/xen/arch/arm/arm64/head.S @@ -94,7 +94,7 @@ #define PRINT(_s) \ mov x3, lr ; \ adr x0, 98f ; \ - bl puts ; \ + bl asm_puts ; \ mov lr, x3 ; \ RODATA_STR(98, _s) @@ -136,22 +136,22 @@ add \xb, \xb, x20 .endm - .section .text.header, "ax", %progbits - /*.aarch64*/ +.section .text.header, "ax", %progbits +/*.aarch64*/ - /* - * Kernel startup entry point. - * --------------------------- - * - * The requirements are: - * MMU = off, D-cache = off, I-cache = on or off, - * x0 = physical address to the FDT blob. - * - * This must be the very first address in the loaded image. - * It should be linked at XEN_VIRT_START, and loaded at any - * 4K-aligned address. All of text+data+bss must fit in 2MB, - * or the initial pagetable code below will need adjustment. - */ +/* + * Kernel startup entry point. + * --------------------------- + * + * The requirements are: + * MMU = off, D-cache = off, I-cache = on or off, + * x0 = physical address to the FDT blob. + * + * This must be the very first address in the loaded image. + * It should be linked at XEN_VIRT_START, and loaded at any + * 4K-aligned address. All of text+data+bss must fit in 2MB, + * or the initial pagetable code below will need adjustment. + */ GLOBAL(start) /* @@ -520,7 +520,7 @@ ENDPROC(cpu_init) * Macro to create a mapping entry in \tbl to \phys. Only mapping in 3rd * level table (i.e page granularity) is supported. * - * ptbl: table symbol where the entry will be created + * ptbl: table symbol where the entry will be created * virt: virtual address * phys: physical address (should be page aligned) * tmp1: scratch register @@ -928,15 +928,15 @@ ENDPROC(init_uart) * x0: Nul-terminated string to print. * x23: Early UART base address * Clobbers x0-x1 */ -puts: +ENTRY(asm_puts) early_uart_ready x23, 1 ldrb w1, [x0], #1 /* Load next char */ cbz w1, 1f /* Exit on nul */ early_uart_transmit x23, w1 - b puts + b asm_puts 1: ret -ENDPROC(puts) +ENDPROC(asm_puts) /* * Print a 64-bit number in hex. @@ -966,7 +966,7 @@ hex: .ascii "0123456789abcdef" ENTRY(early_puts) init_uart: -puts: +asm_puts: putn: ret #endif /* !CONFIG_EARLY_PRINTK */ -- 2.25.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 26 03:35:36 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 03:35:36 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554969.866491 (Exim 4.92) (envelope-from ) id 1qDd0q-0001oS-PV; Mon, 26 Jun 2023 03:35:36 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554969.866491; Mon, 26 Jun 2023 03:35:36 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd0q-0001nU-JP; Mon, 26 Jun 2023 03:35:36 +0000 Received: by outflank-mailman (input) for mailman id 554969; Mon, 26 Jun 2023 03:35:34 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd0o-0000HH-Pq for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 03:35:34 +0000 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by se1-gles-flk1.inumbo.com (Halon) with ESMTP id 8089362d-13d2-11ee-8611-37d641c3527e; Mon, 26 Jun 2023 05:35:31 +0200 (CEST) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 4CB0E1FB; Sun, 25 Jun 2023 20:36:15 -0700 (PDT) Received: from a011292.shanghai.arm.com (a011292.shanghai.arm.com [10.169.190.94]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id 87DEE3F64C; Sun, 25 Jun 2023 20:35:28 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 8089362d-13d2-11ee-8611-37d641c3527e From: Penny Zheng To: xen-devel@lists.xenproject.org Cc: Wei Chen , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk , Penny Zheng Subject: [PATCH v3 08/52] xen/arm64: move MMU related code from head.S to mmu/head.S Date: Mon, 26 Jun 2023 11:33:59 +0800 Message-Id: <20230626033443.2943270-9-Penny.Zheng@arm.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230626033443.2943270-1-Penny.Zheng@arm.com> References: <20230626033443.2943270-1-Penny.Zheng@arm.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit From: Wei Chen There are lots of MMU specific code in head.S. This code will not be used in MPU systems. If we use #ifdef to gate them, the code will become messy and hard to maintain. So we move MMU related code to mmu/head.S, and keep common code still in head.S. We also add .text.idmap in mmu/head.S to make all code in this new file are still in identity map page but will be linked after head.S. As "fail" in head.S is very simple and this name is too easy to be conflicted, so duplicate it in mmu/head.S instead of exporting it. And some assembly macros that will be shared by MMU and MPU later, we move them to macros.h. Rename enable_boot_mmu()/enable_runtime_mmu() to a more generic name enable_boot_mm()/enable_runtime_mm(), in order to make them common interfaces to be used for both MMU and later MPU system. Signed-off-by: Wei Chen Signed-off-by: Penny Zheng --- v1 -> v2: 1. Move macros to macros.h 2. Remove the indention modification 3. Duplicate "fail" instead of exporting it. --- v3: - Rename enable_boot_mmu()/enable_runtime_mmu() to a more generic name enable_boot_mm()/enable_runtime_mm() --- xen/arch/arm/arm64/Makefile | 3 + xen/arch/arm/arm64/head.S | 469 +----------------------- xen/arch/arm/arm64/mmu/head.S | 453 +++++++++++++++++++++++ xen/arch/arm/include/asm/arm64/macros.h | 51 +++ 4 files changed, 509 insertions(+), 467 deletions(-) create mode 100644 xen/arch/arm/arm64/mmu/head.S diff --git a/xen/arch/arm/arm64/Makefile b/xen/arch/arm/arm64/Makefile index 54ad55c75c..0c4b177be9 100644 --- a/xen/arch/arm/arm64/Makefile +++ b/xen/arch/arm/arm64/Makefile @@ -8,6 +8,9 @@ obj-y += domctl.o obj-y += domain.o obj-y += entry.o obj-y += head.o +ifeq ($(CONFIG_HAS_MMU),y) +obj-y += mmu/head.o +endif obj-y += insn.o obj-$(CONFIG_LIVEPATCH) += livepatch.o obj-y += mm.o diff --git a/xen/arch/arm/arm64/head.S b/xen/arch/arm/arm64/head.S index 66347eedcc..e63886b037 100644 --- a/xen/arch/arm/arm64/head.S +++ b/xen/arch/arm/arm64/head.S @@ -28,17 +28,6 @@ #include #endif -#define PT_PT 0xf7f /* nG=1 AF=1 SH=11 AP=01 NS=1 ATTR=111 T=1 P=1 */ -#define PT_MEM 0xf7d /* nG=1 AF=1 SH=11 AP=01 NS=1 ATTR=111 T=0 P=1 */ -#define PT_MEM_L3 0xf7f /* nG=1 AF=1 SH=11 AP=01 NS=1 ATTR=111 T=1 P=1 */ -#define PT_DEV 0xe71 /* nG=1 AF=1 SH=10 AP=01 NS=1 ATTR=100 T=0 P=1 */ -#define PT_DEV_L3 0xe73 /* nG=1 AF=1 SH=10 AP=01 NS=1 ATTR=100 T=1 P=1 */ - -/* Convenience defines to get slot used by Xen mapping. */ -#define XEN_ZEROETH_SLOT zeroeth_table_offset(XEN_VIRT_START) -#define XEN_FIRST_SLOT first_table_offset(XEN_VIRT_START) -#define XEN_SECOND_SLOT second_table_offset(XEN_VIRT_START) - #define __HEAD_FLAG_PAGE_SIZE ((PAGE_SHIFT - 10) / 2) #define __HEAD_FLAG_PHYS_BASE 1 @@ -85,57 +74,6 @@ * x30 - lr */ -#ifdef CONFIG_EARLY_PRINTK -/* - * Macro to print a string to the UART, if there is one. - * - * Clobbers x0 - x3 - */ -#define PRINT(_s) \ - mov x3, lr ; \ - adr x0, 98f ; \ - bl asm_puts ; \ - mov lr, x3 ; \ - RODATA_STR(98, _s) - -/* - * Macro to print the value of register \xb - * - * Clobbers x0 - x4 - */ -.macro print_reg xb - mov x0, \xb - mov x4, lr - bl putn - mov lr, x4 -.endm - -#else /* CONFIG_EARLY_PRINTK */ -#define PRINT(s) - -.macro print_reg xb -.endm - -#endif /* !CONFIG_EARLY_PRINTK */ - -/* - * Pseudo-op for PC relative adr , where is - * within the range +/- 4GB of the PC. - * - * @dst: destination register (64 bit wide) - * @sym: name of the symbol - */ -.macro adr_l, dst, sym - adrp \dst, \sym - add \dst, \dst, :lo12:\sym -.endm - -/* Load the physical address of a symbol into xb */ -.macro load_paddr xb, sym - ldr \xb, =\sym - add \xb, \xb, x20 -.endm - .section .text.header, "ax", %progbits /*.aarch64*/ @@ -317,7 +255,7 @@ real_start_efi: /* We are still in the 1:1 mapping. Jump to the runtime Virtual Address. */ ldr lr, =primary_switched - b enable_boot_mmu + b enable_boot_mm primary_switched: bl setup_fixmap @@ -367,7 +305,7 @@ GLOBAL(init_secondary) /* We are still in the 1:1 mapping. Jump to the runtime Virtual Address. */ ldr lr, =secondary_switched - b enable_runtime_mmu + b enable_runtime_mm secondary_switched: #ifdef CONFIG_EARLY_PRINTK @@ -475,364 +413,6 @@ cpu_init: ret ENDPROC(cpu_init) -/* - * Macro to find the slot number at a given page-table level - * - * slot: slot computed - * virt: virtual address - * lvl: page-table level - */ -.macro get_table_slot, slot, virt, lvl - ubfx \slot, \virt, #XEN_PT_LEVEL_SHIFT(\lvl), #XEN_PT_LPAE_SHIFT -.endm - -/* - * Macro to create a page table entry in \ptbl to \tbl - * - * ptbl: table symbol where the entry will be created - * tbl: table symbol to point to - * virt: virtual address - * lvl: page-table level - * tmp1: scratch register - * tmp2: scratch register - * tmp3: scratch register - * - * Preserves \virt - * Clobbers \tmp1, \tmp2, \tmp3 - * - * Also use x20 for the phys offset. - * - * Note that all parameters using registers should be distinct. - */ -.macro create_table_entry, ptbl, tbl, virt, lvl, tmp1, tmp2, tmp3 - get_table_slot \tmp1, \virt, \lvl /* \tmp1 := slot in \tlb */ - - load_paddr \tmp2, \tbl - mov \tmp3, #PT_PT /* \tmp3 := right for linear PT */ - orr \tmp3, \tmp3, \tmp2 /* + \tlb paddr */ - - adr_l \tmp2, \ptbl - - str \tmp3, [\tmp2, \tmp1, lsl #3] -.endm - -/* - * Macro to create a mapping entry in \tbl to \phys. Only mapping in 3rd - * level table (i.e page granularity) is supported. - * - * ptbl: table symbol where the entry will be created - * virt: virtual address - * phys: physical address (should be page aligned) - * tmp1: scratch register - * tmp2: scratch register - * tmp3: scratch register - * type: mapping type. If not specified it will be normal memory (PT_MEM_L3) - * - * Preserves \virt, \phys - * Clobbers \tmp1, \tmp2, \tmp3 - * - * Note that all parameters using registers should be distinct. - */ -.macro create_mapping_entry, ptbl, virt, phys, tmp1, tmp2, tmp3, type=PT_MEM_L3 - and \tmp3, \phys, #THIRD_MASK /* \tmp3 := PAGE_ALIGNED(phys) */ - - get_table_slot \tmp1, \virt, 3 /* \tmp1 := slot in \tlb */ - - mov \tmp2, #\type /* \tmp2 := right for section PT */ - orr \tmp2, \tmp2, \tmp3 /* + PAGE_ALIGNED(phys) */ - - adr_l \tmp3, \ptbl - - str \tmp2, [\tmp3, \tmp1, lsl #3] -.endm - -/* - * Rebuild the boot pagetable's first-level entries. The structure - * is described in mm.c. - * - * After the CPU enables paging it will add the fixmap mapping - * to these page tables, however this may clash with the 1:1 - * mapping. So each CPU must rebuild the page tables here with - * the 1:1 in place. - * - * Inputs: - * x19: paddr(start) - * x20: phys offset - * - * Clobbers x0 - x4 - */ -create_page_tables: - /* Prepare the page-tables for mapping Xen */ - ldr x0, =XEN_VIRT_START - create_table_entry boot_pgtable, boot_first, x0, 0, x1, x2, x3 - create_table_entry boot_first, boot_second, x0, 1, x1, x2, x3 - create_table_entry boot_second, boot_third, x0, 2, x1, x2, x3 - - /* Map Xen */ - adr_l x4, boot_third - - lsr x2, x19, #THIRD_SHIFT /* Base address for 4K mapping */ - lsl x2, x2, #THIRD_SHIFT - mov x3, #PT_MEM_L3 /* x2 := Section map */ - orr x2, x2, x3 - - /* ... map of vaddr(start) in boot_third */ - mov x1, xzr -1: str x2, [x4, x1] /* Map vaddr(start) */ - add x2, x2, #PAGE_SIZE /* Next page */ - add x1, x1, #8 /* Next slot */ - cmp x1, #(XEN_PT_LPAE_ENTRIES<<3) /* 512 entries per page */ - b.lt 1b - - /* - * If Xen is loaded at exactly XEN_VIRT_START then we don't - * need an additional 1:1 mapping, the virtual mapping will - * suffice. - */ - ldr x0, =XEN_VIRT_START - cmp x19, x0 - bne 1f - ret -1: - /* - * Setup the 1:1 mapping so we can turn the MMU on. Note that - * only the first page of Xen will be part of the 1:1 mapping. - */ - - /* - * Find the zeroeth slot used. If the slot is not - * XEN_ZEROETH_SLOT, then the 1:1 mapping will use its own set of - * page-tables from the first level. - */ - get_table_slot x0, x19, 0 /* x0 := zeroeth slot */ - cmp x0, #XEN_ZEROETH_SLOT - beq 1f - create_table_entry boot_pgtable, boot_first_id, x19, 0, x0, x1, x2 - b link_from_first_id - -1: - /* - * Find the first slot used. If the slot is not XEN_FIRST_SLOT, - * then the 1:1 mapping will use its own set of page-tables from - * the second level. - */ - get_table_slot x0, x19, 1 /* x0 := first slot */ - cmp x0, #XEN_FIRST_SLOT - beq 1f - create_table_entry boot_first, boot_second_id, x19, 1, x0, x1, x2 - b link_from_second_id - -1: - /* - * Find the second slot used. If the slot is XEN_SECOND_SLOT, then the - * 1:1 mapping will use its own set of page-tables from the - * third level. For slot XEN_SECOND_SLOT, Xen is not yet able to handle - * it. - */ - get_table_slot x0, x19, 2 /* x0 := second slot */ - cmp x0, #XEN_SECOND_SLOT - beq virtphys_clash - create_table_entry boot_second, boot_third_id, x19, 2, x0, x1, x2 - b link_from_third_id - -link_from_first_id: - create_table_entry boot_first_id, boot_second_id, x19, 1, x0, x1, x2 -link_from_second_id: - create_table_entry boot_second_id, boot_third_id, x19, 2, x0, x1, x2 -link_from_third_id: - create_mapping_entry boot_third_id, x19, x19, x0, x1, x2 - ret - -virtphys_clash: - /* Identity map clashes with boot_third, which we cannot handle yet */ - PRINT("- Unable to build boot page tables - virt and phys addresses clash. -\r\n") - b fail -ENDPROC(create_page_tables) - -/* - * Turn on the Data Cache and the MMU. The function will return on the 1:1 - * mapping. In other word, the caller is responsible to switch to the runtime - * mapping. - * - * Inputs: - * x0 : Physical address of the page tables. - * - * Clobbers x0 - x4 - */ -enable_mmu: - mov x4, x0 - PRINT("- Turning on paging -\r\n") - - /* - * The state of the TLBs is unknown before turning on the MMU. - * Flush them to avoid stale one. - */ - tlbi alle2 /* Flush hypervisor TLBs */ - dsb nsh - - /* Write Xen's PT's paddr into TTBR0_EL2 */ - msr TTBR0_EL2, x4 - isb - - mrs x0, SCTLR_EL2 - orr x0, x0, #SCTLR_Axx_ELx_M /* Enable MMU */ - orr x0, x0, #SCTLR_Axx_ELx_C /* Enable D-cache */ - dsb sy /* Flush PTE writes and finish reads */ - msr SCTLR_EL2, x0 /* now paging is enabled */ - isb /* Now, flush the icache */ - ret -ENDPROC(enable_mmu) - -/* - * Turn on the Data Cache and the MMU. The function will return - * to the virtual address provided in LR (e.g. the runtime mapping). - * - * Inputs: - * lr : Virtual address to return to. - * - * Clobbers x0 - x5 - */ -enable_runtime_mmu: - mov x5, lr - - load_paddr x0, init_ttbr - ldr x0, [x0] - - bl enable_mmu - mov lr, x5 - - /* return to secondary_switched */ - ret -ENDPROC(enable_runtime_mmu) - -/* - * Turn on the Data Cache and the MMU. The function will return - * to the virtual address provided in LR (e.g. the runtime mapping). - * - * Inputs: - * lr : Virtual address to return to. - * - * Clobbers x0 - x5 - */ -enable_boot_mmu: - mov x5, lr - - bl create_page_tables - load_paddr x0, boot_pgtable - - bl enable_mmu - mov lr, x5 - - /* - * The MMU is turned on and we are in the 1:1 mapping. Switch - * to the runtime mapping. - */ - ldr x0, =1f - br x0 -1: - /* - * The 1:1 map may clash with other parts of the Xen virtual memory - * layout. As it is not used anymore, remove it completely to - * avoid having to worry about replacing existing mapping - * afterwards. Function will return to primary_switched. - */ - b remove_identity_mapping - - /* - * Here might not be reached, as "ret" in remove_identity_mapping - * will use the return address in LR in advance. But keep ret here - * might be more safe if "ret" in remove_identity_mapping is removed - * in future. - */ - ret -ENDPROC(enable_boot_mmu) - -/* - * Remove the 1:1 map from the page-tables. It is not easy to keep track - * where the 1:1 map was mapped, so we will look for the top-level entry - * exclusive to the 1:1 map and remove it. - * - * Inputs: - * x19: paddr(start) - * - * Clobbers x0 - x1 - */ -remove_identity_mapping: - /* - * Find the zeroeth slot used. Remove the entry from zeroeth - * table if the slot is not XEN_ZEROETH_SLOT. - */ - get_table_slot x1, x19, 0 /* x1 := zeroeth slot */ - cmp x1, #XEN_ZEROETH_SLOT - beq 1f - /* It is not in slot XEN_ZEROETH_SLOT, remove the entry. */ - ldr x0, =boot_pgtable /* x0 := root table */ - str xzr, [x0, x1, lsl #3] - b identity_mapping_removed - -1: - /* - * Find the first slot used. Remove the entry for the first - * table if the slot is not XEN_FIRST_SLOT. - */ - get_table_slot x1, x19, 1 /* x1 := first slot */ - cmp x1, #XEN_FIRST_SLOT - beq 1f - /* It is not in slot XEN_FIRST_SLOT, remove the entry. */ - ldr x0, =boot_first /* x0 := first table */ - str xzr, [x0, x1, lsl #3] - b identity_mapping_removed - -1: - /* - * Find the second slot used. Remove the entry for the first - * table if the slot is not XEN_SECOND_SLOT. - */ - get_table_slot x1, x19, 2 /* x1 := second slot */ - cmp x1, #XEN_SECOND_SLOT - beq identity_mapping_removed - /* It is not in slot 1, remove the entry */ - ldr x0, =boot_second /* x0 := second table */ - str xzr, [x0, x1, lsl #3] - -identity_mapping_removed: - /* See asm/arm64/flushtlb.h for the explanation of the sequence. */ - dsb nshst - tlbi alle2 - dsb nsh - isb - - ret -ENDPROC(remove_identity_mapping) - -/* - * Map the UART in the fixmap (when earlyprintk is used) and hook the - * fixmap table in the page tables. - * - * The fixmap cannot be mapped in create_page_tables because it may - * clash with the 1:1 mapping. - * - * Inputs: - * x20: Physical offset - * x23: Early UART base physical address - * - * Clobbers x0 - x3 - */ -setup_fixmap: -#ifdef CONFIG_EARLY_PRINTK - /* Add UART to the fixmap table */ - ldr x0, =EARLY_UART_VIRTUAL_ADDRESS - create_mapping_entry xen_fixmap, x0, x23, x1, x2, x3, type=PT_DEV_L3 -#endif - /* Map fixmap into boot_second */ - ldr x0, =FIXMAP_ADDR(0) - create_table_entry boot_second, xen_fixmap, x0, 2, x1, x2, x3 - /* Ensure any page table updates made above have occurred. */ - dsb nshst - - ret -ENDPROC(setup_fixmap) - /* * Setup the initial stack and jump to the C world * @@ -861,51 +441,6 @@ fail: PRINT("- Boot failed -\r\n") b 1b ENDPROC(fail) -/* - * Switch TTBR - * - * x0 ttbr - */ -ENTRY(switch_ttbr_id) - /* 1) Ensure any previous read/write have completed */ - dsb ish - isb - - /* 2) Turn off MMU */ - mrs x1, SCTLR_EL2 - bic x1, x1, #SCTLR_Axx_ELx_M - msr SCTLR_EL2, x1 - isb - - /* - * 3) Flush the TLBs. - * See asm/arm64/flushtlb.h for the explanation of the sequence. - */ - dsb nshst - tlbi alle2 - dsb nsh - isb - - /* 4) Update the TTBR */ - msr TTBR0_EL2, x0 - isb - - /* - * 5) Flush I-cache - * This should not be necessary but it is kept for safety. - */ - ic iallu - isb - - /* 6) Turn on the MMU */ - mrs x1, SCTLR_EL2 - orr x1, x1, #SCTLR_Axx_ELx_M /* Enable MMU */ - msr SCTLR_EL2, x1 - isb - - ret -ENDPROC(switch_ttbr_id) - #ifdef CONFIG_EARLY_PRINTK /* * Initialize the UART. Should only be called on the boot CPU. diff --git a/xen/arch/arm/arm64/mmu/head.S b/xen/arch/arm/arm64/mmu/head.S new file mode 100644 index 0000000000..2b209fc3ce --- /dev/null +++ b/xen/arch/arm/arm64/mmu/head.S @@ -0,0 +1,453 @@ +/* + * xen/arch/arm/mmu/head.S + * + * Start-of-day code for an ARMv8. + * + * Ian Campbell + * Copyright (c) 2012 Citrix Systems. + * + * Based on ARMv7-A head.S by + * Tim Deegan + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + */ + +#include +#include + +#define PT_PT 0xf7f /* nG=1 AF=1 SH=11 AP=01 NS=1 ATTR=111 T=1 P=1 */ +#define PT_MEM 0xf7d /* nG=1 AF=1 SH=11 AP=01 NS=1 ATTR=111 T=0 P=1 */ +#define PT_MEM_L3 0xf7f /* nG=1 AF=1 SH=11 AP=01 NS=1 ATTR=111 T=1 P=1 */ +#define PT_DEV 0xe71 /* nG=1 AF=1 SH=10 AP=01 NS=1 ATTR=100 T=0 P=1 */ +#define PT_DEV_L3 0xe73 /* nG=1 AF=1 SH=10 AP=01 NS=1 ATTR=100 T=1 P=1 */ + +/* Convenience defines to get slot used by Xen mapping. */ +#define XEN_ZEROETH_SLOT zeroeth_table_offset(XEN_VIRT_START) +#define XEN_FIRST_SLOT first_table_offset(XEN_VIRT_START) +#define XEN_SECOND_SLOT second_table_offset(XEN_VIRT_START) + +/* + * Macro to find the slot number at a given page-table level + * + * slot: slot computed + * virt: virtual address + * lvl: page-table level + */ +.macro get_table_slot, slot, virt, lvl + ubfx \slot, \virt, #XEN_PT_LEVEL_SHIFT(\lvl), #XEN_PT_LPAE_SHIFT +.endm + +/* + * Macro to create a page table entry in \ptbl to \tbl + * + * ptbl: table symbol where the entry will be created + * tbl: table symbol to point to + * virt: virtual address + * lvl: page-table level + * tmp1: scratch register + * tmp2: scratch register + * tmp3: scratch register + * + * Preserves \virt + * Clobbers \tmp1, \tmp2, \tmp3 + * + * Also use x20 for the phys offset. + * + * Note that all parameters using registers should be distinct. + */ +.macro create_table_entry, ptbl, tbl, virt, lvl, tmp1, tmp2, tmp3 + get_table_slot \tmp1, \virt, \lvl /* \tmp1 := slot in \tlb */ + + load_paddr \tmp2, \tbl + mov \tmp3, #PT_PT /* \tmp3 := right for linear PT */ + orr \tmp3, \tmp3, \tmp2 /* + \tlb paddr */ + + adr_l \tmp2, \ptbl + + str \tmp3, [\tmp2, \tmp1, lsl #3] +.endm + +/* + * Macro to create a mapping entry in \tbl to \phys. Only mapping in 3rd + * level table (i.e page granularity) is supported. + * + * ptbl: table symbol where the entry will be created + * virt: virtual address + * phys: physical address (should be page aligned) + * tmp1: scratch register + * tmp2: scratch register + * tmp3: scratch register + * type: mapping type. If not specified it will be normal memory (PT_MEM_L3) + * + * Preserves \virt, \phys + * Clobbers \tmp1, \tmp2, \tmp3 + * + * Note that all parameters using registers should be distinct. + */ +.macro create_mapping_entry, ptbl, virt, phys, tmp1, tmp2, tmp3, type=PT_MEM_L3 + and \tmp3, \phys, #THIRD_MASK /* \tmp3 := PAGE_ALIGNED(phys) */ + + get_table_slot \tmp1, \virt, 3 /* \tmp1 := slot in \tlb */ + + mov \tmp2, #\type /* \tmp2 := right for section PT */ + orr \tmp2, \tmp2, \tmp3 /* + PAGE_ALIGNED(phys) */ + + adr_l \tmp3, \ptbl + + str \tmp2, [\tmp3, \tmp1, lsl #3] +.endm + +.section .text.idmap, "ax", %progbits + +/* + * Rebuild the boot pagetable's first-level entries. The structure + * is described in mm.c. + * + * After the CPU enables paging it will add the fixmap mapping + * to these page tables, however this may clash with the 1:1 + * mapping. So each CPU must rebuild the page tables here with + * the 1:1 in place. + * + * Inputs: + * x19: paddr(start) + * x20: phys offset + * + * Clobbers x0 - x4 + */ +create_page_tables: + /* Prepare the page-tables for mapping Xen */ + ldr x0, =XEN_VIRT_START + create_table_entry boot_pgtable, boot_first, x0, 0, x1, x2, x3 + create_table_entry boot_first, boot_second, x0, 1, x1, x2, x3 + create_table_entry boot_second, boot_third, x0, 2, x1, x2, x3 + + /* Map Xen */ + adr_l x4, boot_third + + lsr x2, x19, #THIRD_SHIFT /* Base address for 4K mapping */ + lsl x2, x2, #THIRD_SHIFT + mov x3, #PT_MEM_L3 /* x2 := Section map */ + orr x2, x2, x3 + + /* ... map of vaddr(start) in boot_third */ + mov x1, xzr +1: str x2, [x4, x1] /* Map vaddr(start) */ + add x2, x2, #PAGE_SIZE /* Next page */ + add x1, x1, #8 /* Next slot */ + cmp x1, #(XEN_PT_LPAE_ENTRIES<<3) /* 512 entries per page */ + b.lt 1b + + /* + * If Xen is loaded at exactly XEN_VIRT_START then we don't + * need an additional 1:1 mapping, the virtual mapping will + * suffice. + */ + ldr x0, =XEN_VIRT_START + cmp x19, x0 + bne 1f + ret +1: + /* + * Setup the 1:1 mapping so we can turn the MMU on. Note that + * only the first page of Xen will be part of the 1:1 mapping. + */ + + /* + * Find the zeroeth slot used. If the slot is not + * XEN_ZEROETH_SLOT, then the 1:1 mapping will use its own set of + * page-tables from the first level. + */ + get_table_slot x0, x19, 0 /* x0 := zeroeth slot */ + cmp x0, #XEN_ZEROETH_SLOT + beq 1f + create_table_entry boot_pgtable, boot_first_id, x19, 0, x0, x1, x2 + b link_from_first_id + +1: + /* + * Find the first slot used. If the slot is not XEN_FIRST_SLOT, + * then the 1:1 mapping will use its own set of page-tables from + * the second level. + */ + get_table_slot x0, x19, 1 /* x0 := first slot */ + cmp x0, #XEN_FIRST_SLOT + beq 1f + create_table_entry boot_first, boot_second_id, x19, 1, x0, x1, x2 + b link_from_second_id + +1: + /* + * Find the second slot used. If the slot is XEN_SECOND_SLOT, then the + * 1:1 mapping will use its own set of page-tables from the + * third level. For slot XEN_SECOND_SLOT, Xen is not yet able to handle + * it. + */ + get_table_slot x0, x19, 2 /* x0 := second slot */ + cmp x0, #XEN_SECOND_SLOT + beq virtphys_clash + create_table_entry boot_second, boot_third_id, x19, 2, x0, x1, x2 + b link_from_third_id + +link_from_first_id: + create_table_entry boot_first_id, boot_second_id, x19, 1, x0, x1, x2 +link_from_second_id: + create_table_entry boot_second_id, boot_third_id, x19, 2, x0, x1, x2 +link_from_third_id: + create_mapping_entry boot_third_id, x19, x19, x0, x1, x2 + ret + +virtphys_clash: + /* Identity map clashes with boot_third, which we cannot handle yet */ + PRINT("- Unable to build boot page tables - virt and phys addresses clash. -\r\n") + b fail +ENDPROC(create_page_tables) + +/* + * Turn on the Data Cache and the MMU. The function will return on the 1:1 + * mapping. In other word, the caller is responsible to switch to the runtime + * mapping. + * + * Inputs: + * x0 : Physical address of the page tables. + * + * Clobbers x0 - x4 + */ +enable_mmu: + mov x4, x0 + PRINT("- Turning on paging -\r\n") + + /* + * The state of the TLBs is unknown before turning on the MMU. + * Flush them to avoid stale one. + */ + tlbi alle2 /* Flush hypervisor TLBs */ + dsb nsh + + /* Write Xen's PT's paddr into TTBR0_EL2 */ + msr TTBR0_EL2, x4 + isb + + mrs x0, SCTLR_EL2 + orr x0, x0, #SCTLR_Axx_ELx_M /* Enable MMU */ + orr x0, x0, #SCTLR_Axx_ELx_C /* Enable D-cache */ + dsb sy /* Flush PTE writes and finish reads */ + msr SCTLR_EL2, x0 /* now paging is enabled */ + isb /* Now, flush the icache */ + ret +ENDPROC(enable_mmu) + +/* + * Turn on the Data Cache and the MMU. The function will return + * to the virtual address provided in LR (e.g. the runtime mapping). + * + * Inputs: + * lr : Virtual address to return to. + * + * Clobbers x0 - x5 + */ +ENTRY(enable_runtime_mm) + /* save return address */ + mov x5, lr + + load_paddr x0, init_ttbr + ldr x0, [x0] + bl enable_mmu + mov lr, x5 + + /* return to secondary_switched */ + ret +ENDPROC(enable_runtime_mm) + +/* + * Turn on the Data Cache and the MMU. The function will return + * to the virtual address provided in LR (e.g. the runtime mapping). + * + * Inputs: + * lr : Virtual address to return to. + * + * Clobbers x0 - x5 + */ +ENTRY(enable_boot_mm) + /* save return address */ + mov x5, lr + + bl create_page_tables + load_paddr x0, boot_pgtable + bl enable_mmu + mov lr, x5 + + /* + * The MMU is turned on and we are in the 1:1 mapping. Switch + * to the runtime mapping. + */ + ldr x0, =1f + br x0 +1: + /* + * The 1:1 map may clash with other parts of the Xen virtual memory + * layout. As it is not used anymore, remove it completely to + * avoid having to worry about replacing existing mapping + * afterwards. Function will return to primary_switched. + */ + b remove_identity_mapping + + /* + * Here might not be reached, as "ret" in remove_identity_mapping + * will use the return address in LR in advance. But keep ret here + * might be more safe if "ret" in remove_identity_mapping is removed + * in future. + */ + ret +ENDPROC(enable_boot_mm) + +/* + * Remove the 1:1 map from the page-tables. It is not easy to keep track + * where the 1:1 map was mapped, so we will look for the top-level entry + * exclusive to the 1:1 map and remove it. + * + * Inputs: + * x19: paddr(start) + * + * Clobbers x0 - x1 + */ +remove_identity_mapping: + /* + * Find the zeroeth slot used. Remove the entry from zeroeth + * table if the slot is not XEN_ZEROETH_SLOT. + */ + get_table_slot x1, x19, 0 /* x1 := zeroeth slot */ + cmp x1, #XEN_ZEROETH_SLOT + beq 1f + /* It is not in slot XEN_ZEROETH_SLOT, remove the entry. */ + ldr x0, =boot_pgtable /* x0 := root table */ + str xzr, [x0, x1, lsl #3] + b identity_mapping_removed + +1: + /* + * Find the first slot used. Remove the entry for the first + * table if the slot is not XEN_FIRST_SLOT. + */ + get_table_slot x1, x19, 1 /* x1 := first slot */ + cmp x1, #XEN_FIRST_SLOT + beq 1f + /* It is not in slot XEN_FIRST_SLOT, remove the entry. */ + ldr x0, =boot_first /* x0 := first table */ + str xzr, [x0, x1, lsl #3] + b identity_mapping_removed + +1: + /* + * Find the second slot used. Remove the entry for the first + * table if the slot is not XEN_SECOND_SLOT. + */ + get_table_slot x1, x19, 2 /* x1 := second slot */ + cmp x1, #XEN_SECOND_SLOT + beq identity_mapping_removed + /* It is not in slot 1, remove the entry */ + ldr x0, =boot_second /* x0 := second table */ + str xzr, [x0, x1, lsl #3] + +identity_mapping_removed: + /* See asm/arm64/flushtlb.h for the explanation of the sequence. */ + dsb nshst + tlbi alle2 + dsb nsh + isb + + ret +ENDPROC(remove_identity_mapping) + +/* + * Map the UART in the fixmap (when earlyprintk is used) and hook the + * fixmap table in the page tables. + * + * The fixmap cannot be mapped in create_page_tables because it may + * clash with the 1:1 mapping. + * + * Inputs: + * x20: Physical offset + * x23: Early UART base physical address + * + * Clobbers x0 - x3 + */ +ENTRY(setup_fixmap) +#ifdef CONFIG_EARLY_PRINTK + /* Add UART to the fixmap table */ + ldr x0, =EARLY_UART_VIRTUAL_ADDRESS + create_mapping_entry xen_fixmap, x0, x23, x1, x2, x3, type=PT_DEV_L3 +#endif + /* Map fixmap into boot_second */ + ldr x0, =FIXMAP_ADDR(0) + create_table_entry boot_second, xen_fixmap, x0, 2, x1, x2, x3 + /* Ensure any page table updates made above have occurred. */ + dsb nshst + + ret +ENDPROC(setup_fixmap) + +/* Fail-stop */ +fail: PRINT("- Boot failed -\r\n") +1: wfe + b 1b +ENDPROC(fail) + +/* + * Switch TTBR + * + * x0 ttbr + */ +ENTRY(switch_ttbr_id) + /* 1) Ensure any previous read/write have completed */ + dsb ish + isb + + /* 2) Turn off MMU */ + mrs x1, SCTLR_EL2 + bic x1, x1, #SCTLR_Axx_ELx_M + msr SCTLR_EL2, x1 + isb + + /* + * 3) Flush the TLBs. + * See asm/arm64/flushtlb.h for the explanation of the sequence. + */ + dsb nshst + tlbi alle2 + dsb nsh + isb + + /* 4) Update the TTBR */ + msr TTBR0_EL2, x0 + isb + + /* + * 5) Flush I-cache + * This should not be necessary but it is kept for safety. + */ + ic iallu + isb + + /* 6) Turn on the MMU */ + mrs x1, SCTLR_EL2 + orr x1, x1, #SCTLR_Axx_ELx_M /* Enable MMU */ + msr SCTLR_EL2, x1 + isb + + ret +ENDPROC(switch_ttbr_id) + +/* + * Local variables: + * mode: ASM + * indent-tabs-mode: nil + * End: + */ diff --git a/xen/arch/arm/include/asm/arm64/macros.h b/xen/arch/arm/include/asm/arm64/macros.h index 140e223b4c..2116e48b7c 100644 --- a/xen/arch/arm/include/asm/arm64/macros.h +++ b/xen/arch/arm/include/asm/arm64/macros.h @@ -32,6 +32,57 @@ hint #22 .endm +#ifdef CONFIG_EARLY_PRINTK +/* + * Macro to print a string to the UART, if there is one. + * + * Clobbers x0 - x3 + */ +#define PRINT(_s) \ + mov x3, lr ; \ + adr x0, 98f ; \ + bl asm_puts ; \ + mov lr, x3 ; \ + RODATA_STR(98, _s) + +/* + * Macro to print the value of register \xb + * + * Clobbers x0 - x4 + */ +.macro print_reg xb + mov x0, \xb + mov x4, lr + bl putn + mov lr, x4 +.endm + +#else /* CONFIG_EARLY_PRINTK */ +#define PRINT(s) + +.macro print_reg xb +.endm + +#endif /* !CONFIG_EARLY_PRINTK */ + +/* + * Pseudo-op for PC relative adr , where is + * within the range +/- 4GB of the PC. + * + * @dst: destination register (64 bit wide) + * @sym: name of the symbol + */ +.macro adr_l, dst, sym + adrp \dst, \sym + add \dst, \dst, :lo12:\sym +.endm + +/* Load the physical address of a symbol into xb */ +.macro load_paddr xb, sym + ldr \xb, =\sym + add \xb, \xb, x20 +.endm + /* * Register aliases. */ -- 2.25.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 26 03:35:40 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 03:35:40 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554973.866501 (Exim 4.92) (envelope-from ) id 1qDd0u-0002PY-Ai; Mon, 26 Jun 2023 03:35:40 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554973.866501; Mon, 26 Jun 2023 03:35:40 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd0u-0002PJ-6v; Mon, 26 Jun 2023 03:35:40 +0000 Received: by outflank-mailman (input) for mailman id 554973; Mon, 26 Jun 2023 03:35:39 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd0t-0000HH-JS for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 03:35:39 +0000 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by se1-gles-flk1.inumbo.com (Halon) with ESMTP id 83ed363f-13d2-11ee-8611-37d641c3527e; Mon, 26 Jun 2023 05:35:37 +0200 (CEST) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 0D0D21FB; Sun, 25 Jun 2023 20:36:21 -0700 (PDT) Received: from a011292.shanghai.arm.com (a011292.shanghai.arm.com [10.169.190.94]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id A44103F64C; Sun, 25 Jun 2023 20:35:34 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 83ed363f-13d2-11ee-8611-37d641c3527e From: Penny Zheng To: xen-devel@lists.xenproject.org Cc: Wei Chen , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk , Penny Zheng Subject: [PATCH v3 10/52] xen/arm: Move MMU related definitions from config.h to mmu/layout.h Date: Mon, 26 Jun 2023 11:34:01 +0800 Message-Id: <20230626033443.2943270-11-Penny.Zheng@arm.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230626033443.2943270-1-Penny.Zheng@arm.com> References: <20230626033443.2943270-1-Penny.Zheng@arm.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit From: Wei Chen Xen defines some global configuration macros for Arm in config.h. We still want to use it for MMU systems, but there are some address layout related definitions that are defined for MMU systems only. These definitions could not be used by MPU systems, but adding ifdefery with CONFIG_HAS_MPU to gate these definitions will result in a messy and hard-to-read/maintain code. So we keep some common definitions still in config.h, but move MMU related definitions to a new file - mmu/layout.h to avoid spreading "#ifdef" everywhere. Signed-off-by: Wei Chen Signed-off-by: Penny Zheng --- v1 -> v2: 1. Remove duplicated FIXMAP definitions from config_mmu.h --- v3: 1. name the new header layout.h --- xen/arch/arm/include/asm/config.h | 127 +---------------------- xen/arch/arm/include/asm/mmu/layout.h | 141 ++++++++++++++++++++++++++ 2 files changed, 143 insertions(+), 125 deletions(-) create mode 100644 xen/arch/arm/include/asm/mmu/layout.h diff --git a/xen/arch/arm/include/asm/config.h b/xen/arch/arm/include/asm/config.h index 30f4665ba9..204b3dec13 100644 --- a/xen/arch/arm/include/asm/config.h +++ b/xen/arch/arm/include/asm/config.h @@ -71,131 +71,8 @@ #include #include -/* - * ARM32 layout: - * 0 - 2M Unmapped - * 2M - 4M Xen text, data, bss - * 4M - 6M Fixmap: special-purpose 4K mapping slots - * 6M - 10M Early boot mapping of FDT - * 10M - 12M Livepatch vmap (if compiled in) - * - * 32M - 128M Frametable: 32 bytes per page for 12GB of RAM - * 256M - 1G VMAP: ioremap and early_ioremap use this virtual address - * space - * - * 1G - 2G Xenheap: always-mapped memory - * 2G - 4G Domheap: on-demand-mapped - * - * ARM64 layout: - * 0x0000000000000000 - 0x000001ffffffffff (2TB, L0 slots [0..3]) - * - * Reserved to identity map Xen - * - * 0x0000020000000000 - 0x0000027fffffffff (512GB, L0 slot [4]) - * (Relative offsets) - * 0 - 2M Unmapped - * 2M - 4M Xen text, data, bss - * 4M - 6M Fixmap: special-purpose 4K mapping slots - * 6M - 10M Early boot mapping of FDT - * 10M - 12M Livepatch vmap (if compiled in) - * - * 1G - 2G VMAP: ioremap and early_ioremap - * - * 32G - 64G Frametable: 56 bytes per page for 2TB of RAM - * - * 0x0000028000000000 - 0x00007fffffffffff (125TB, L0 slots [5..255]) - * Unused - * - * 0x0000800000000000 - 0x000084ffffffffff (5TB, L0 slots [256..265]) - * 1:1 mapping of RAM - * - * 0x0000850000000000 - 0x0000ffffffffffff (123TB, L0 slots [266..511]) - * Unused - */ - -#ifdef CONFIG_ARM_32 -#define XEN_VIRT_START _AT(vaddr_t, MB(2)) -#else - -#define SLOT0_ENTRY_BITS 39 -#define SLOT0(slot) (_AT(vaddr_t,slot) << SLOT0_ENTRY_BITS) -#define SLOT0_ENTRY_SIZE SLOT0(1) - -#define XEN_VIRT_START (SLOT0(4) + _AT(vaddr_t, MB(2))) -#endif - -#define XEN_VIRT_SIZE _AT(vaddr_t, MB(2)) - -#define FIXMAP_VIRT_START (XEN_VIRT_START + XEN_VIRT_SIZE) -#define FIXMAP_VIRT_SIZE _AT(vaddr_t, MB(2)) - -#define FIXMAP_ADDR(n) (FIXMAP_VIRT_START + (n) * PAGE_SIZE) - -#define BOOT_FDT_VIRT_START (FIXMAP_VIRT_START + FIXMAP_VIRT_SIZE) -#define BOOT_FDT_VIRT_SIZE _AT(vaddr_t, MB(4)) - -#ifdef CONFIG_LIVEPATCH -#define LIVEPATCH_VMAP_START (BOOT_FDT_VIRT_START + BOOT_FDT_VIRT_SIZE) -#define LIVEPATCH_VMAP_SIZE _AT(vaddr_t, MB(2)) -#endif - -#define HYPERVISOR_VIRT_START XEN_VIRT_START - -#ifdef CONFIG_ARM_32 - -#define CONFIG_SEPARATE_XENHEAP 1 - -#define FRAMETABLE_VIRT_START _AT(vaddr_t, MB(32)) -#define FRAMETABLE_SIZE MB(128-32) -#define FRAMETABLE_NR (FRAMETABLE_SIZE / sizeof(*frame_table)) - -#define VMAP_VIRT_START _AT(vaddr_t, MB(256)) -#define VMAP_VIRT_SIZE _AT(vaddr_t, GB(1) - MB(256)) - -#define XENHEAP_VIRT_START _AT(vaddr_t, GB(1)) -#define XENHEAP_VIRT_SIZE _AT(vaddr_t, GB(1)) - -#define DOMHEAP_VIRT_START _AT(vaddr_t, GB(2)) -#define DOMHEAP_VIRT_SIZE _AT(vaddr_t, GB(2)) - -#define DOMHEAP_ENTRIES 1024 /* 1024 2MB mapping slots */ - -/* Number of domheap pagetable pages required at the second level (2MB mappings) */ -#define DOMHEAP_SECOND_PAGES (DOMHEAP_VIRT_SIZE >> FIRST_SHIFT) - -/* - * The temporary area is overlapping with the domheap area. This may - * be used to create an alias of the first slot containing Xen mappings - * when turning on/off the MMU. - */ -#define TEMPORARY_AREA_FIRST_SLOT (first_table_offset(DOMHEAP_VIRT_START)) - -/* Calculate the address in the temporary area */ -#define TEMPORARY_AREA_ADDR(addr) \ - (((addr) & ~XEN_PT_LEVEL_MASK(1)) | \ - (TEMPORARY_AREA_FIRST_SLOT << XEN_PT_LEVEL_SHIFT(1))) - -#define TEMPORARY_XEN_VIRT_START TEMPORARY_AREA_ADDR(XEN_VIRT_START) - -#else /* ARM_64 */ - -#define IDENTITY_MAPPING_AREA_NR_L0 4 - -#define VMAP_VIRT_START (SLOT0(4) + GB(1)) -#define VMAP_VIRT_SIZE GB(1) - -#define FRAMETABLE_VIRT_START (SLOT0(4) + GB(32)) -#define FRAMETABLE_SIZE GB(32) -#define FRAMETABLE_NR (FRAMETABLE_SIZE / sizeof(*frame_table)) - -#define DIRECTMAP_VIRT_START SLOT0(256) -#define DIRECTMAP_SIZE (SLOT0_ENTRY_SIZE * (266 - 256)) -#define DIRECTMAP_VIRT_END (DIRECTMAP_VIRT_START + DIRECTMAP_SIZE - 1) - -#define XENHEAP_VIRT_START directmap_virt_start - -#define HYPERVISOR_VIRT_END DIRECTMAP_VIRT_END - +#ifndef CONFIG_HAS_MPU +#include #endif #define NR_hypercalls 64 diff --git a/xen/arch/arm/include/asm/mmu/layout.h b/xen/arch/arm/include/asm/mmu/layout.h new file mode 100644 index 0000000000..8deda6b84d --- /dev/null +++ b/xen/arch/arm/include/asm/mmu/layout.h @@ -0,0 +1,141 @@ +/* SPDX-License-Identifier: GPL-2.0 */ + +#ifndef __ARM_MMU_LAYOUT_H__ +#define __ARM_MMU_LAYOUT_H__ + +/* + * ARM32 layout: + * 0 - 2M Unmapped + * 2M - 4M Xen text, data, bss + * 4M - 6M Fixmap: special-purpose 4K mapping slots + * 6M - 10M Early boot mapping of FDT + * 10M - 12M Livepatch vmap (if compiled in) + * + * 32M - 128M Frametable: 32 bytes per page for 12GB of RAM + * 256M - 1G VMAP: ioremap and early_ioremap use this virtual address + * space + * + * 1G - 2G Xenheap: always-mapped memory + * 2G - 4G Domheap: on-demand-mapped + * + * ARM64 layout: + * 0x0000000000000000 - 0x000001ffffffffff (2TB, L0 slots [0..3]) + * + * Reserved to identity map Xen + * + * 0x0000020000000000 - 0x0000027fffffffff (512GB, L0 slot [4]) + * (Relative offsets) + * 0 - 2M Unmapped + * 2M - 4M Xen text, data, bss + * 4M - 6M Fixmap: special-purpose 4K mapping slots + * 6M - 10M Early boot mapping of FDT + * 10M - 12M Livepatch vmap (if compiled in) + * + * 1G - 2G VMAP: ioremap and early_ioremap + * + * 32G - 64G Frametable: 56 bytes per page for 2TB of RAM + * + * 0x0000028000000000 - 0x00007fffffffffff (125TB, L0 slots [5..255]) + * Unused + * + * 0x0000800000000000 - 0x000084ffffffffff (5TB, L0 slots [256..265]) + * 1:1 mapping of RAM + * + * 0x0000850000000000 - 0x0000ffffffffffff (123TB, L0 slots [266..511]) + * Unused + */ + +#ifdef CONFIG_ARM_32 +#define XEN_VIRT_START _AT(vaddr_t, MB(2)) +#else + +#define SLOT0_ENTRY_BITS 39 +#define SLOT0(slot) (_AT(vaddr_t,slot) << SLOT0_ENTRY_BITS) +#define SLOT0_ENTRY_SIZE SLOT0(1) + +#define XEN_VIRT_START (SLOT0(4) + _AT(vaddr_t, MB(2))) +#endif + +#define XEN_VIRT_SIZE _AT(vaddr_t, MB(2)) + +#define FIXMAP_VIRT_START (XEN_VIRT_START + XEN_VIRT_SIZE) +#define FIXMAP_VIRT_SIZE _AT(vaddr_t, MB(2)) + +#define FIXMAP_ADDR(n) (FIXMAP_VIRT_START + (n) * PAGE_SIZE) + +#define BOOT_FDT_VIRT_START (FIXMAP_VIRT_START + FIXMAP_VIRT_SIZE) +#define BOOT_FDT_VIRT_SIZE _AT(vaddr_t, MB(4)) + +#ifdef CONFIG_LIVEPATCH +#define LIVEPATCH_VMAP_START (BOOT_FDT_VIRT_START + BOOT_FDT_VIRT_SIZE) +#define LIVEPATCH_VMAP_SIZE _AT(vaddr_t, MB(2)) +#endif + +#define HYPERVISOR_VIRT_START XEN_VIRT_START + +#ifdef CONFIG_ARM_32 + +#define CONFIG_SEPARATE_XENHEAP 1 + +#define FRAMETABLE_VIRT_START _AT(vaddr_t, MB(32)) +#define FRAMETABLE_SIZE MB(128-32) +#define FRAMETABLE_NR (FRAMETABLE_SIZE / sizeof(*frame_table)) + +#define VMAP_VIRT_START _AT(vaddr_t, MB(256)) +#define VMAP_VIRT_SIZE _AT(vaddr_t, GB(1) - MB(256)) + +#define XENHEAP_VIRT_START _AT(vaddr_t, GB(1)) +#define XENHEAP_VIRT_SIZE _AT(vaddr_t, GB(1)) + +#define DOMHEAP_VIRT_START _AT(vaddr_t, GB(2)) +#define DOMHEAP_VIRT_SIZE _AT(vaddr_t, GB(2)) + +#define DOMHEAP_ENTRIES 1024 /* 1024 2MB mapping slots */ + +/* Number of domheap pagetable pages required at the second level (2MB mappings) */ +#define DOMHEAP_SECOND_PAGES (DOMHEAP_VIRT_SIZE >> FIRST_SHIFT) + +/* + * The temporary area is overlapping with the domheap area. This may + * be used to create an alias of the first slot containing Xen mappings + * when turning on/off the MMU. + */ +#define TEMPORARY_AREA_FIRST_SLOT (first_table_offset(DOMHEAP_VIRT_START)) + +/* Calculate the address in the temporary area */ +#define TEMPORARY_AREA_ADDR(addr) \ + (((addr) & ~XEN_PT_LEVEL_MASK(1)) | \ + (TEMPORARY_AREA_FIRST_SLOT << XEN_PT_LEVEL_SHIFT(1))) + +#define TEMPORARY_XEN_VIRT_START TEMPORARY_AREA_ADDR(XEN_VIRT_START) + +#else /* ARM_64 */ + +#define IDENTITY_MAPPING_AREA_NR_L0 4 + +#define VMAP_VIRT_START (SLOT0(4) + GB(1)) +#define VMAP_VIRT_SIZE GB(1) + +#define FRAMETABLE_VIRT_START (SLOT0(4) + GB(32)) +#define FRAMETABLE_SIZE GB(32) +#define FRAMETABLE_NR (FRAMETABLE_SIZE / sizeof(*frame_table)) + +#define DIRECTMAP_VIRT_START SLOT0(256) +#define DIRECTMAP_SIZE (SLOT0_ENTRY_SIZE * (266 - 256)) +#define DIRECTMAP_VIRT_END (DIRECTMAP_VIRT_START + DIRECTMAP_SIZE - 1) + +#define XENHEAP_VIRT_START directmap_virt_start + +#define HYPERVISOR_VIRT_END DIRECTMAP_VIRT_END + +#endif + +#endif /* __ARM_MMU_LAYOUT_H__ */ +/* + * Local variables: + * mode: C + * c-file-style: "BSD" + * c-basic-offset: 4 + * indent-tabs-mode: nil + * End: + */ -- 2.25.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 26 03:39:26 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 03:39:26 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554987.866511 (Exim 4.92) (envelope-from ) id 1qDd4W-0004Ik-Sw; Mon, 26 Jun 2023 03:39:24 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554987.866511; Mon, 26 Jun 2023 03:39:24 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd4W-0004Ib-PJ; Mon, 26 Jun 2023 03:39:24 +0000 Received: by outflank-mailman (input) for mailman id 554987; Mon, 26 Jun 2023 03:39:24 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd1J-0000HH-V3 for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 03:36:05 +0000 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by se1-gles-flk1.inumbo.com (Halon) with ESMTP id 93c363e1-13d2-11ee-8611-37d641c3527e; Mon, 26 Jun 2023 05:36:04 +0200 (CEST) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 814041FB; Sun, 25 Jun 2023 20:36:47 -0700 (PDT) Received: from a011292.shanghai.arm.com (a011292.shanghai.arm.com [10.169.190.94]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id D4E8A3F64C; Sun, 25 Jun 2023 20:36:00 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 93c363e1-13d2-11ee-8611-37d641c3527e From: Penny Zheng To: xen-devel@lists.xenproject.org Cc: Penny Zheng , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk , Penny Zheng , Wei Chen Subject: [PATCH v3 18/52] xen/arm: only map the init text section RW in free_init_memory Date: Mon, 26 Jun 2023 11:34:09 +0800 Message-Id: <20230626033443.2943270-19-Penny.Zheng@arm.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230626033443.2943270-1-Penny.Zheng@arm.com> References: <20230626033443.2943270-1-Penny.Zheng@arm.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit In free_init_memory, we do not need to map the whole init section RW, as only init text section is mapped RO in boot time. Signed-off-by: Penny Zheng Signed-off-by: Wei Chen --- v3: - new commit --- xen/arch/arm/mm.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/xen/arch/arm/mm.c b/xen/arch/arm/mm.c index 4b174f4d08..97642f35d3 100644 --- a/xen/arch/arm/mm.c +++ b/xen/arch/arm/mm.c @@ -145,16 +145,17 @@ int modify_xen_mappings(unsigned long s, unsigned long e, unsigned int flags) void free_init_memory(void) { paddr_t pa = virt_to_maddr(__init_begin); + unsigned long inittext_end = round_pgup((unsigned long)_einittext); unsigned long len = __init_end - __init_begin; uint32_t insn; unsigned int i, nr = len / sizeof(insn); uint32_t *p; int rc; - rc = modify_xen_mappings((unsigned long)__init_begin, - (unsigned long)__init_end, PAGE_HYPERVISOR_RW); + rc = modify_xen_mappings((unsigned long)__init_begin, inittext_end, + PAGE_HYPERVISOR_RW); if ( rc ) - panic("Unable to map RW the init section (rc = %d)\n", rc); + panic("Unable to map RW the init text section (rc = %d)\n", rc); /* * From now on, init will not be used for execution anymore, -- 2.25.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 26 03:39:38 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 03:39:38 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554990.866521 (Exim 4.92) (envelope-from ) id 1qDd4k-0004gi-3e; Mon, 26 Jun 2023 03:39:38 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554990.866521; Mon, 26 Jun 2023 03:39:38 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd4k-0004gb-0h; Mon, 26 Jun 2023 03:39:38 +0000 Received: by outflank-mailman (input) for mailman id 554990; Mon, 26 Jun 2023 03:39:36 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd24-0007ej-Vx for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 03:36:52 +0000 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by se1-gles-sth1.inumbo.com (Halon) with ESMTP id b05c4b7f-13d2-11ee-b237-6b7b168915f2; Mon, 26 Jun 2023 05:36:52 +0200 (CEST) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 960CC1FB; Sun, 25 Jun 2023 20:37:35 -0700 (PDT) Received: from a011292.shanghai.arm.com (a011292.shanghai.arm.com [10.169.190.94]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id EEBF23F64C; Sun, 25 Jun 2023 20:36:48 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: b05c4b7f-13d2-11ee-b237-6b7b168915f2 From: Penny Zheng To: xen-devel@lists.xenproject.org Cc: Penny Zheng , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk , Penny Zheng , Wei Chen Subject: [PATCH v3 33/52] xen/mpu: initialize frametable in MPU system Date: Mon, 26 Jun 2023 11:34:24 +0800 Message-Id: <20230626033443.2943270-34-Penny.Zheng@arm.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230626033443.2943270-1-Penny.Zheng@arm.com> References: <20230626033443.2943270-1-Penny.Zheng@arm.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Xen is using page as the smallest granularity for memory managment. And we want to follow the same concept in MPU system. That is, structure page_info and the frametable which is used for storing and managing the smallest memory managment unit is also required in MPU system. In MPU system, since we can not use a fixed VA address(FRAMETABLE_VIRT_START) to map frametable like MMU system does and everything is 1:1 mapping, we instead define a variable "struct page_info *frame_table" as frametable pointer, and ask boot allocator to allocate appropriate memory for frametable. As frametable is successfully initialized, the convertion between machine frame number/machine address/"virtual address" and page-info structure is ready too, like mfn_to_page/maddr_to_page/virt_to_page, etc Signed-off-by: Penny Zheng Signed-off-by: Wei Chen --- v3: - add ASSERT() to confirm the MFN you pass is covered by the frametable. --- xen/arch/arm/include/asm/mm.h | 14 ++++++++++++++ xen/arch/arm/include/asm/mpu/mm.h | 3 +++ xen/arch/arm/mpu/mm.c | 27 +++++++++++++++++++++++++++ 3 files changed, 44 insertions(+) diff --git a/xen/arch/arm/include/asm/mm.h b/xen/arch/arm/include/asm/mm.h index daa6329505..66d98b9a29 100644 --- a/xen/arch/arm/include/asm/mm.h +++ b/xen/arch/arm/include/asm/mm.h @@ -341,6 +341,19 @@ static inline uint64_t gvirt_to_maddr(vaddr_t va, paddr_t *pa, #define virt_to_mfn(va) __virt_to_mfn(va) #define mfn_to_virt(mfn) __mfn_to_virt(mfn) +#ifdef CONFIG_HAS_MPU +/* Convert between virtual address to page-info structure. */ +static inline struct page_info *virt_to_page(const void *v) +{ + unsigned long pdx; + + pdx = paddr_to_pdx(virt_to_maddr(v)); + ASSERT(pdx >= frametable_base_pdx); + ASSERT(pdx < frametable_pdx_end); + + return frame_table + pdx - frametable_base_pdx; +} +#else /* Convert between Xen-heap virtual addresses and page-info structures. */ static inline struct page_info *virt_to_page(const void *v) { @@ -354,6 +367,7 @@ static inline struct page_info *virt_to_page(const void *v) pdx += mfn_to_pdx(directmap_mfn_start); return frame_table + pdx - frametable_base_pdx; } +#endif static inline void *page_to_virt(const struct page_info *pg) { diff --git a/xen/arch/arm/include/asm/mpu/mm.h b/xen/arch/arm/include/asm/mpu/mm.h index e26bd4f975..98f6df65b8 100644 --- a/xen/arch/arm/include/asm/mpu/mm.h +++ b/xen/arch/arm/include/asm/mpu/mm.h @@ -2,6 +2,9 @@ #ifndef __ARCH_ARM_MM_MPU__ #define __ARCH_ARM_MM_MPU__ +extern struct page_info *frame_table; +extern unsigned long frametable_pdx_end; + extern int xen_mpumap_update(paddr_t base, paddr_t limit, unsigned int flags); extern void setup_staticheap_mappings(void); diff --git a/xen/arch/arm/mpu/mm.c b/xen/arch/arm/mpu/mm.c index 7bd5609102..0a65b58dc4 100644 --- a/xen/arch/arm/mpu/mm.c +++ b/xen/arch/arm/mpu/mm.c @@ -27,6 +27,10 @@ #include #include +/* Override macros from asm/mm.h to make them work with mfn_t */ +#undef mfn_to_virt +#define mfn_to_virt(mfn) __mfn_to_virt(mfn_x(mfn)) + #ifdef NDEBUG static inline void __attribute__ ((__format__ (__printf__, 1, 2))) region_printk(const char *fmt, ...) {} @@ -58,6 +62,9 @@ static DEFINE_SPINLOCK(xen_mpumap_lock); static DEFINE_SPINLOCK(xen_mpumap_alloc_lock); +struct page_info *frame_table; +unsigned long frametable_pdx_end __read_mostly; + /* Write a MPU protection region */ #define WRITE_PROTECTION_REGION(pr, prbar_el2, prlar_el2) ({ \ const pr_t *_pr = pr; \ @@ -513,6 +520,26 @@ void __init setup_staticheap_mappings(void) } } +/* Map a frame table to cover physical addresses ps through pe */ +void __init setup_frametable_mappings(paddr_t ps, paddr_t pe) +{ + mfn_t base_mfn; + unsigned long nr_pdxs = mfn_to_pdx(mfn_add(maddr_to_mfn(pe), -1)) - + mfn_to_pdx(maddr_to_mfn(ps)) + 1; + unsigned long frametable_size = nr_pdxs * sizeof(struct page_info); + + frametable_base_pdx = paddr_to_pdx(ps); + frametable_size = ROUNDUP(frametable_size, PAGE_SIZE); + frametable_pdx_end = frametable_base_pdx + nr_pdxs; + + base_mfn = alloc_boot_pages(frametable_size >> PAGE_SHIFT, 1); + frame_table = (struct page_info *)mfn_to_virt(base_mfn); + + memset(&frame_table[0], 0, nr_pdxs * sizeof(struct page_info)); + memset(&frame_table[nr_pdxs], -1, + frametable_size - (nr_pdxs * sizeof(struct page_info))); +} + /* * Local variables: * mode: C -- 2.25.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 26 03:39:38 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 03:39:38 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554991.866527 (Exim 4.92) (envelope-from ) id 1qDd4k-0004kM-HW; Mon, 26 Jun 2023 03:39:38 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554991.866527; Mon, 26 Jun 2023 03:39:38 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd4k-0004jz-AX; Mon, 26 Jun 2023 03:39:38 +0000 Received: by outflank-mailman (input) for mailman id 554991; Mon, 26 Jun 2023 03:39:36 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd2j-0007ej-IC for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 03:37:33 +0000 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by se1-gles-sth1.inumbo.com (Halon) with ESMTP id c8960fe6-13d2-11ee-b237-6b7b168915f2; Mon, 26 Jun 2023 05:37:32 +0200 (CEST) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 2DE512F4; Sun, 25 Jun 2023 20:38:16 -0700 (PDT) Received: from a011292.shanghai.arm.com (a011292.shanghai.arm.com [10.169.190.94]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id 7996F3F64C; Sun, 25 Jun 2023 20:37:29 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: c8960fe6-13d2-11ee-b237-6b7b168915f2 From: Penny Zheng To: xen-devel@lists.xenproject.org Cc: Penny Zheng , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk , Penny Zheng , Wei Chen Subject: [PATCH v3 46/52] xen/mpu: look up entry in p2m table Date: Mon, 26 Jun 2023 11:34:37 +0800 Message-Id: <20230626033443.2943270-47-Penny.Zheng@arm.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230626033443.2943270-1-Penny.Zheng@arm.com> References: <20230626033443.2943270-1-Penny.Zheng@arm.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Function p2m_lookup() is responsible for looking up an entry in p2m table. In MPU system, We check whether mapping exists. If it does, we get the details of the guest MPU memory region in domain P2M table(p2m->root) through p2m_get_mpu_region() Signed-off-by: Penny Zheng Signed-off-by: Wei Chen --- v3: - new commit --- xen/arch/arm/include/asm/mpu/p2m.h | 18 ++++++++ xen/arch/arm/include/asm/p2m.h | 2 + xen/arch/arm/mpu/p2m.c | 73 ++++++++++++++++++++++++++++++ 3 files changed, 93 insertions(+) create mode 100644 xen/arch/arm/include/asm/mpu/p2m.h diff --git a/xen/arch/arm/include/asm/mpu/p2m.h b/xen/arch/arm/include/asm/mpu/p2m.h new file mode 100644 index 0000000000..bdb33148e3 --- /dev/null +++ b/xen/arch/arm/include/asm/mpu/p2m.h @@ -0,0 +1,18 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ +#ifndef _XEN_P2M_MPU_H +#define _XEN_P2M_MPU_H + +static inline bool region_is_p2m_valid(pr_t *pr) +{ + return (pr->prbar.reg.p2m_type != p2m_invalid); +} + +#endif /* _XEN_P2M_MPU_H */ +/* + * Local variables: + * mode: C + * c-file-style: "BSD" + * c-basic-offset: 4 + * indent-tabs-mode: nil + * End: + */ diff --git a/xen/arch/arm/include/asm/p2m.h b/xen/arch/arm/include/asm/p2m.h index 68837b6df7..395bfd4f69 100644 --- a/xen/arch/arm/include/asm/p2m.h +++ b/xen/arch/arm/include/asm/p2m.h @@ -188,6 +188,8 @@ typedef enum { #ifdef CONFIG_HAS_MMU #include +#else +#include #endif static inline bool arch_acquire_resource_check(struct domain *d) diff --git a/xen/arch/arm/mpu/p2m.c b/xen/arch/arm/mpu/p2m.c index 4838d5b625..d403479229 100644 --- a/xen/arch/arm/mpu/p2m.c +++ b/xen/arch/arm/mpu/p2m.c @@ -338,6 +338,79 @@ int p2m_set_entry(struct p2m_domain *p2m, gfn_t sgfn, unsigned long nr, return __p2m_set_entry(p2m, sgfn, nr, smfn, t, a); } +/* + * Get the details of guest MPU memory region [gfn, gfn + nr_gfns). + * + * If it is mapped, the starting MFN will be returned and according + * p2m type will get filled up. + * If it is not mapped, INVALID_MFN will be returned. + */ +static mfn_t p2m_get_mpu_region(struct p2m_domain *p2m, gfn_t gfn, + unsigned long nr_gfns, p2m_type_t *t, + bool *valid) +{ + pr_t *table, *region = NULL; + p2m_type_t _t; + uint8_t idx = INVALID_REGION_IDX; + gfn_t egfn = gfn_add(gfn, nr_gfns); + + ASSERT(p2m_is_locked(p2m)); + + /* Allow t to be NULL. */ + t = t ? : &_t; + + *t = p2m_invalid; + + if ( valid ) + *valid = false; + + /* + * Check if the ending gfn is higher than the highest the p2m map + * currently holds, or the starting gfn lower than the lowest it holds + */ + if ( (gfn_x(egfn) > gfn_x(p2m->max_mapped_gfn)) || + (gfn_x(gfn) < gfn_x(p2m->lowest_mapped_gfn)) ) + return INVALID_MFN; + + table = (pr_t *)page_to_virt(p2m->root); + /* The table should always be non-NULL and is always present. */ + if ( !table ) + ASSERT_UNREACHABLE(); + + if ( is_gfns_mapped(p2m, gfn, nr_gfns, &idx) ) + return INVALID_MFN; + + region = &table[idx]; + if ( region_is_p2m_valid(region) ) + { + *t = region->prbar.reg.p2m_type; + + if ( valid ) + *valid = region_is_valid(region); + } + + /* Always GFN == MFN in MPU system. */ + return _mfn(gfn_x(gfn)); +} + +/* + * Get the details of a given gfn. + * + * If the entry is present, the associated MFN will be returned and the + * p2m type gets filled up. + * If the entry is not present, INVALID_MFN will be returned + * + * The page_order is meaningless in MPU system, and we keep it here + * to be compatible with MMU system. + */ +mfn_t p2m_get_entry(struct p2m_domain *p2m, gfn_t gfn, + p2m_type_t *t, p2m_access_t *a, + unsigned int *page_order, + bool *valid) +{ + return p2m_get_mpu_region(p2m, gfn, 1, t, valid); +} + /* * Local variables: * mode: C -- 2.25.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 26 03:39:38 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 03:39:38 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554992.866532 (Exim 4.92) (envelope-from ) id 1qDd4k-0004ol-Rl; Mon, 26 Jun 2023 03:39:38 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554992.866532; Mon, 26 Jun 2023 03:39:38 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd4k-0004nK-Kz; Mon, 26 Jun 2023 03:39:38 +0000 Received: by outflank-mailman (input) for mailman id 554992; Mon, 26 Jun 2023 03:39:36 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd2p-0007ej-OP for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 03:37:39 +0000 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by se1-gles-sth1.inumbo.com (Halon) with ESMTP id cc4ae79f-13d2-11ee-b237-6b7b168915f2; Mon, 26 Jun 2023 05:37:38 +0200 (CEST) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 6CEE21FB; Sun, 25 Jun 2023 20:38:22 -0700 (PDT) Received: from a011292.shanghai.arm.com (a011292.shanghai.arm.com [10.169.190.94]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id B952C3F64C; Sun, 25 Jun 2023 20:37:35 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: cc4ae79f-13d2-11ee-b237-6b7b168915f2 From: Penny Zheng To: xen-devel@lists.xenproject.org Cc: Penny Zheng , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk , Penny Zheng , Wei Chen Subject: [PATCH v3 48/52] xen/mpu: enable MMIO region trap in MPU system Date: Mon, 26 Jun 2023 11:34:39 +0800 Message-Id: <20230626033443.2943270-49-Penny.Zheng@arm.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230626033443.2943270-1-Penny.Zheng@arm.com> References: <20230626033443.2943270-1-Penny.Zheng@arm.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit MMIO region traps, generating from insufficient access permissions, will lead to data abort with Permission Fault in MPU system. It is different with MMU system, which generates Translation Fault instead. We extract common codes for dealing with MMIO trap into a new helper do_mmio_trap_stage2_abort_guest(). Signed-off-by: Penny Zheng Signed-off-by: Wei Chen --- v3: - new commit --- xen/arch/arm/traps.c | 81 +++++++++++++++++++++++++++++--------------- 1 file changed, 54 insertions(+), 27 deletions(-) diff --git a/xen/arch/arm/traps.c b/xen/arch/arm/traps.c index ef5c6a8195..bffa147c36 100644 --- a/xen/arch/arm/traps.c +++ b/xen/arch/arm/traps.c @@ -1848,6 +1848,45 @@ static inline bool check_p2m(bool is_data, paddr_t gpa) return false; } +static int do_mmio_trap_stage2_abort_guest(struct cpu_user_regs *regs, + const union hsr hsr, + mmio_info_t *info, + vaddr_t gva, paddr_t gpa) +{ + enum io_state state; + + state = try_handle_mmio(regs, info); + switch ( state ) + { + case IO_ABORT: + goto inject_abt; + case IO_HANDLED: + /* + * If the instruction was decoded and has executed successfully + * on the MMIO region, then Xen should execute the next part of + * the instruction. (for eg increment the rn if it is a + * post-indexing instruction. + */ + finalize_instr_emulation(&info->dabt_instr); + advance_pc(regs, hsr); + return 0; + case IO_RETRY: + /* finish later */ + return 0; + case IO_UNHANDLED: + /* IO unhandled, try another way to handle it. */ + return -EFAULT; + } + +inject_abt: + gdprintk(XENLOG_DEBUG, + "HSR=%#"PRIregister" pc=%#"PRIregister" gva=%#"PRIvaddr" gpa=%#"PRIpaddr"\n", + hsr.bits, regs->pc, gva, gpa); + inject_dabt_exception(regs, gva, hsr.len); + + return 0; +} + static void do_trap_stage2_abort_guest(struct cpu_user_regs *regs, const union hsr hsr) { @@ -1862,7 +1901,6 @@ static void do_trap_stage2_abort_guest(struct cpu_user_regs *regs, uint8_t fsc = xabt.fsc & ~FSC_LL_MASK; bool is_data = (hsr.ec == HSR_EC_DATA_ABORT_LOWER_EL); mmio_info_t info; - enum io_state state; /* * If this bit has been set, it means that this stage-2 abort is caused @@ -1896,6 +1934,8 @@ static void do_trap_stage2_abort_guest(struct cpu_user_regs *regs, return; /* Try again */ } + info.gpa = gpa; + info.dabt = hsr.dabt; switch ( fsc ) { case FSC_FLT_PERM: @@ -1909,6 +1949,17 @@ static void do_trap_stage2_abort_guest(struct cpu_user_regs *regs, }; p2m_mem_access_check(gpa, gva, npfec); + +#ifdef CONFIG_HAS_MPU + /* + * MMIO region traps, generating from insufficient access permissions, + * will lead to data abort with Permission fault. + */ + if ( is_data && + (do_mmio_trap_stage2_abort_guest(regs, hsr, &info, gva, gpa) == 0) ) + return; +#endif + /* * The only way to get here right now is because of mem_access, * thus reinjecting the exception to the guest is never required. @@ -1917,9 +1968,6 @@ static void do_trap_stage2_abort_guest(struct cpu_user_regs *regs, } case FSC_FLT_TRANS: { - info.gpa = gpa; - info.dabt = hsr.dabt; - /* * Assumption :- Most of the times when we get a data abort and the ISS * is invalid or an instruction abort, the underlying cause is that the @@ -1948,29 +1996,8 @@ static void do_trap_stage2_abort_guest(struct cpu_user_regs *regs, if ( info.dabt_instr.state == INSTR_ERROR ) goto inject_abt; - state = try_handle_mmio(regs, &info); - - switch ( state ) - { - case IO_ABORT: - goto inject_abt; - case IO_HANDLED: - /* - * If the instruction was decoded and has executed successfully - * on the MMIO region, then Xen should execute the next part of - * the instruction. (for eg increment the rn if it is a - * post-indexing instruction. - */ - finalize_instr_emulation(&info.dabt_instr); - advance_pc(regs, hsr); - return; - case IO_RETRY: - /* finish later */ - return; - case IO_UNHANDLED: - /* IO unhandled, try another way to handle it. */ - break; - } + if ( do_mmio_trap_stage2_abort_guest(regs, hsr, &info, gva, gpa) == 0 ) + return; /* * If the instruction syndrome was invalid, then we already checked if -- 2.25.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 26 03:39:43 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 03:39:43 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554999.866551 (Exim 4.92) (envelope-from ) id 1qDd4p-0005g9-AU; Mon, 26 Jun 2023 03:39:43 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554999.866551; Mon, 26 Jun 2023 03:39:43 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd4p-0005fu-6f; Mon, 26 Jun 2023 03:39:43 +0000 Received: by outflank-mailman (input) for mailman id 554999; Mon, 26 Jun 2023 03:39:41 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd2Y-0000HH-2o for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 03:37:22 +0000 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by se1-gles-flk1.inumbo.com (Halon) with ESMTP id c12175c0-13d2-11ee-8611-37d641c3527e; Mon, 26 Jun 2023 05:37:20 +0200 (CEST) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id ACEEE1FB; Sun, 25 Jun 2023 20:38:03 -0700 (PDT) Received: from a011292.shanghai.arm.com (a011292.shanghai.arm.com [10.169.190.94]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id 01B993F64C; Sun, 25 Jun 2023 20:37:16 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: c12175c0-13d2-11ee-8611-37d641c3527e From: Penny Zheng To: xen-devel@lists.xenproject.org Cc: Penny Zheng , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk , Penny Zheng , Wei Chen Subject: [PATCH v3 42/52] xen/mpu: implement setup_virt_paging for MPU system Date: Mon, 26 Jun 2023 11:34:33 +0800 Message-Id: <20230626033443.2943270-43-Penny.Zheng@arm.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230626033443.2943270-1-Penny.Zheng@arm.com> References: <20230626033443.2943270-1-Penny.Zheng@arm.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit For MMU system, setup_virt_paging is used to configure stage 2 address translation regime, like IPA bits, VMID allocator set up, etc. Some could be inherited in MPU system, like VMID allocator set up, etc. For MPU system, we could have the following memory translation regime: - PMSAv8-64 at both EL1/EL0 and EL2 - VMSAv8-64 at EL1/EL0 and PMSAv8-64 at EL2 The default option will be the second, unless the platform could not support, which could be checked against MSA_frac bit in Memory Model Feature Register 0( ID_AA64MMFR0_EL1). Signed-off-by: Penny Zheng Signed-off-by: Wei Chen --- v3: - no change --- xen/arch/arm/Makefile | 1 + xen/arch/arm/include/asm/cpufeature.h | 7 ++ xen/arch/arm/include/asm/p2m.h | 8 +++ xen/arch/arm/include/asm/processor.h | 13 ++++ xen/arch/arm/mpu/p2m.c | 92 +++++++++++++++++++++++++++ 5 files changed, 121 insertions(+) create mode 100644 xen/arch/arm/mpu/p2m.c diff --git a/xen/arch/arm/Makefile b/xen/arch/arm/Makefile index feb49640a0..9f4b11b069 100644 --- a/xen/arch/arm/Makefile +++ b/xen/arch/arm/Makefile @@ -47,6 +47,7 @@ obj-y += mmu/p2m.o else obj-y += mpu/mm.o obj-y += mpu/setup.o +obj-y += mpu/p2m.o endif obj-y += mm.o obj-y += monitor.o diff --git a/xen/arch/arm/include/asm/cpufeature.h b/xen/arch/arm/include/asm/cpufeature.h index 894f278a4a..cbaf41881b 100644 --- a/xen/arch/arm/include/asm/cpufeature.h +++ b/xen/arch/arm/include/asm/cpufeature.h @@ -250,6 +250,12 @@ struct cpuinfo_arm { unsigned long tgranule_16K:4; unsigned long tgranule_64K:4; unsigned long tgranule_4K:4; +#ifdef CONFIG_HAS_MPU + unsigned long __res:16; + unsigned long msa:4; + unsigned long msa_frac:4; + unsigned long __res0:8; +#else unsigned long tgranule_16k_2:4; unsigned long tgranule_64k_2:4; unsigned long tgranule_4k_2:4; @@ -257,6 +263,7 @@ struct cpuinfo_arm { unsigned long __res0:8; unsigned long fgt:4; unsigned long ecv:4; +#endif /* MMFR1 */ unsigned long hafdbs:4; diff --git a/xen/arch/arm/include/asm/p2m.h b/xen/arch/arm/include/asm/p2m.h index f62d632830..d9c91d4a98 100644 --- a/xen/arch/arm/include/asm/p2m.h +++ b/xen/arch/arm/include/asm/p2m.h @@ -16,8 +16,16 @@ extern unsigned int p2m_ipa_bits; extern unsigned int p2m_root_order; extern unsigned int p2m_root_level; +#ifdef CONFIG_HAS_MPU +/* + * A 4KB Page is enough for stage 2 translation in MPU system, which could + * store at most 255 EL2 MPU memory regions. + */ +#define P2M_ROOT_ORDER 0 +#else #define P2M_ROOT_ORDER p2m_root_order #define P2M_ROOT_LEVEL p2m_root_level +#endif #define MAX_VMID_8_BIT (1UL << 8) #define MAX_VMID_16_BIT (1UL << 16) diff --git a/xen/arch/arm/include/asm/processor.h b/xen/arch/arm/include/asm/processor.h index 685f9b18fd..fe761ce50f 100644 --- a/xen/arch/arm/include/asm/processor.h +++ b/xen/arch/arm/include/asm/processor.h @@ -389,6 +389,12 @@ #define VTCR_RES1 (_AC(1,UL)<<31) +#ifdef CONFIG_HAS_MPU +#define VTCR_MSA_VMSA (_AC(0x1,UL)<<31) +#define VTCR_MSA_PMSA ~(_AC(0x1,UL)<<31) +#define NSA_SEL2 ~(_AC(0x1,UL)<<30) +#endif + /* HCPTR Hyp. Coprocessor Trap Register */ #define HCPTR_TAM ((_AC(1,U)<<30)) #define HCPTR_TTA ((_AC(1,U)<<20)) /* Trap trace registers */ @@ -449,6 +455,13 @@ #define MM64_VMID_16_BITS_SUPPORT 0x2 #endif +#ifdef CONFIG_HAS_MPU +#define MM64_MSA_PMSA_SUPPORT 0xf +#define MM64_MSA_FRAC_NONE_SUPPORT 0x0 +#define MM64_MSA_FRAC_PMSA_SUPPORT 0x1 +#define MM64_MSA_FRAC_VMSA_SUPPORT 0x2 +#endif + #ifndef __ASSEMBLY__ extern register_t __cpu_logical_map[]; diff --git a/xen/arch/arm/mpu/p2m.c b/xen/arch/arm/mpu/p2m.c new file mode 100644 index 0000000000..04c44825cb --- /dev/null +++ b/xen/arch/arm/mpu/p2m.c @@ -0,0 +1,92 @@ +/* SPDX-License-Identifier: GPL-2.0 */ +#include +#include +#include +#include + +#include +#include +#include + +void __init setup_virt_paging(void) +{ + uint64_t val = 0; + bool p2m_vmsa = true; + + /* PA size */ + const unsigned int pa_range_info[] = { 32, 36, 40, 42, 44, 48, 52, 0, /* Invalid */ }; + + /* + * Restrict "p2m_ipa_bits" if needed. As P2M table is always configured + * with IPA bits == PA bits, compare against "pabits". + */ + if ( pa_range_info[system_cpuinfo.mm64.pa_range] < p2m_ipa_bits ) + p2m_ipa_bits = pa_range_info[system_cpuinfo.mm64.pa_range]; + + /* In ARMV8R, hypervisor in secure EL2. */ + val &= NSA_SEL2; + + /* + * The MSA and MSA_frac fields in the ID_AA64MMFR0_EL1 register + * identify the memory system configurations supported at EL1. + * In Armv8-R AArch64, the only permitted value for ID_AA64MMFR0_EL1.MSA is + * 0b1111. When ID_AA64MMFR0_EL1.MSA_frac is 0b0010, the stage 1 of the + * Secure EL1&0 translation regime can enable PMSAv8-64 or VMSAv8-64 + * architecture. + */ + if ( system_cpuinfo.mm64.msa == MM64_MSA_PMSA_SUPPORT ) + { + if ( system_cpuinfo.mm64.msa_frac == MM64_MSA_FRAC_NONE_SUPPORT ) + goto fault; + + if ( system_cpuinfo.mm64.msa_frac != MM64_MSA_FRAC_VMSA_SUPPORT ) + { + p2m_vmsa = false; + warning_add("Be aware of that there is no support for VMSAv8-64 at EL1 on this platform.\n"); + } + } + else + goto fault; + + /* + * If PE supports both PMSAv8-64 and VMSAv8-64 at EL1, then VTCR_EL2.MSA + * determines the memory system architecture enabled at stage 1 of the + * Secure EL1&0 translation regime. + * + * Normally, we set the initial VTCR_EL2.MSA value VMSAv8-64 support, + * unless this platform only supports PMSAv8-64. + */ + if ( !p2m_vmsa ) + val &= VTCR_MSA_PMSA; + else + val |= VTCR_MSA_VMSA; + + /* + * cpuinfo sanitization makes sure we support 16bits VMID only if + * all cores are supporting it. + */ + if ( system_cpuinfo.mm64.vmid_bits == MM64_VMID_16_BITS_SUPPORT ) + max_vmid = MAX_VMID_16_BIT; + + /* Set the VS bit only if 16 bit VMID is supported. */ + if ( MAX_VMID == MAX_VMID_16_BIT ) + val |= VTCR_VS; + + p2m_vmid_allocator_init(); + + WRITE_SYSREG(val, VTCR_EL2); + + return; + +fault: + panic("Hardware with no PMSAv8-64 support in any translation regime.\n"); +} + +/* + * Local variables: + * mode: C + * c-file-style: "BSD" + * c-basic-offset: 4 + * indent-tabs-mode: nil + * End: + */ -- 2.25.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 26 03:39:43 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 03:39:43 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555003.866554 (Exim 4.92) (envelope-from ) id 1qDd4p-0005i0-Ma; Mon, 26 Jun 2023 03:39:43 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555003.866554; Mon, 26 Jun 2023 03:39:43 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd4p-0005h8-EC; Mon, 26 Jun 2023 03:39:43 +0000 Received: by outflank-mailman (input) for mailman id 555003; Mon, 26 Jun 2023 03:39:42 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd2E-0007ej-DN for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 03:37:02 +0000 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by se1-gles-sth1.inumbo.com (Halon) with ESMTP id b5ea710d-13d2-11ee-b237-6b7b168915f2; Mon, 26 Jun 2023 05:37:01 +0200 (CEST) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id DEFBB1FB; Sun, 25 Jun 2023 20:37:44 -0700 (PDT) Received: from a011292.shanghai.arm.com (a011292.shanghai.arm.com [10.169.190.94]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id 439C73F64C; Sun, 25 Jun 2023 20:36:58 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: b5ea710d-13d2-11ee-b237-6b7b168915f2 From: Penny Zheng To: xen-devel@lists.xenproject.org Cc: Penny Zheng , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk , Penny Zheng , Wei Chen Subject: [PATCH v3 36/52] xen/mpu: implememt ioremap_xxx in MPU Date: Mon, 26 Jun 2023 11:34:27 +0800 Message-Id: <20230626033443.2943270-37-Penny.Zheng@arm.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230626033443.2943270-1-Penny.Zheng@arm.com> References: <20230626033443.2943270-1-Penny.Zheng@arm.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit A set of function ioremap_xxx are designed to map deivce memory or remap part of memory temporarily for short-time special purpose, like using ioremap_wc to temporarily remap guest kernel non-cacheable, for copying it to guest memory. As virtual translation is not supported in MPU, and we always follow the rule of "map in demand" in MPU, we implement MPU version of ioremap_xxx, through mapping the memory with a transient MPU memory region. Signed-off-by: Penny Zheng Signed-off-by: Wei Chen --- v3: - adapt to the new rule of "map in demand" --- xen/arch/arm/include/asm/arm64/mpu.h | 4 + xen/arch/arm/include/asm/mm.h | 6 + xen/arch/arm/mpu/mm.c | 185 +++++++++++++++++++++++++++ 3 files changed, 195 insertions(+) diff --git a/xen/arch/arm/include/asm/arm64/mpu.h b/xen/arch/arm/include/asm/arm64/mpu.h index aee7947223..c5e69f239a 100644 --- a/xen/arch/arm/include/asm/arm64/mpu.h +++ b/xen/arch/arm/include/asm/arm64/mpu.h @@ -121,6 +121,10 @@ static inline bool region_is_valid(pr_t *pr) return pr->prlar.reg.en; } +static inline bool region_is_transient(pr_t *pr) +{ + return pr->prlar.reg.tran; +} #endif /* __ASSEMBLY__ */ #endif /* __ARM64_MPU_H__ */ diff --git a/xen/arch/arm/include/asm/mm.h b/xen/arch/arm/include/asm/mm.h index cffbf8a595..0352182d99 100644 --- a/xen/arch/arm/include/asm/mm.h +++ b/xen/arch/arm/include/asm/mm.h @@ -227,6 +227,7 @@ void __iomem *ioremap_attr(paddr_t start, size_t len, unsigned int attributes); extern int map_staticmem_pages_to_xen(paddr_t start, paddr_t end); extern int unmap_staticmem_pages_to_xen(paddr_t start, paddr_t end); +#ifndef CONFIG_HAS_MPU static inline void __iomem *ioremap_nocache(paddr_t start, size_t len) { return ioremap_attr(start, len, PAGE_HYPERVISOR_NOCACHE); @@ -241,6 +242,11 @@ static inline void __iomem *ioremap_wc(paddr_t start, size_t len) { return ioremap_attr(start, len, PAGE_HYPERVISOR_WC); } +#else +extern void __iomem *ioremap_nocache(paddr_t start, size_t len); +extern void __iomem *ioremap_cache(paddr_t start, size_t len); +extern void __iomem *ioremap_wc(paddr_t start, size_t len); +#endif /* XXX -- account for base */ #define mfn_valid(mfn) ({ \ diff --git a/xen/arch/arm/mpu/mm.c b/xen/arch/arm/mpu/mm.c index 9d5c1da39c..3bb1a5c7c4 100644 --- a/xen/arch/arm/mpu/mm.c +++ b/xen/arch/arm/mpu/mm.c @@ -624,6 +624,191 @@ int __init unmap_staticmem_pages_to_xen(paddr_t start, paddr_t end) return xen_mpumap_update(start, end, 0); } +/* + * Check whether memory range [pa, pa + len) is mapped in Xen MPU + * memory mapping table xen_mpumap. + * + * If it is mapped, the associated index will be returned. + * If it is not mapped, INVALID_REGION_IDX will be returned. + */ +static uint8_t is_mm_range_mapped(paddr_t pa, paddr_t len) +{ + int rc; + uint8_t idx; + + rc = mpumap_contain_region(xen_mpumap, max_xen_mpumap, pa, pa + len - 1, + &idx); + if ( (rc == MPUMAP_REGION_FOUND) || (rc == MPUMAP_REGION_INCLUSIVE) ) + return idx; + + if ( rc == MPUMAP_REGION_OVERLAP ) + panic("mpu: can not deal with overlapped MPU memory region\n"); + /* Not mapped */ + return INVALID_REGION_IDX; +} + +static bool is_mm_attr_match(pr_t *region, unsigned int attributes) +{ + if ( region->prbar.reg.ap != PAGE_AP_MASK(attributes) ) + { + printk(XENLOG_WARNING "region permission is not matched (0x%x -> 0x%x)\n", + region->prbar.reg.ap, PAGE_AP_MASK(attributes)); + return false; + } + + if ( region->prbar.reg.xn != PAGE_XN_MASK(attributes) ) + { + printk(XENLOG_WARNING "region execution permission is not matched (0x%x -> 0x%x)\n", + region->prbar.reg.xn, PAGE_XN_MASK(attributes)); + return false; + } + + if ( region->prlar.reg.ai != PAGE_AI_MASK(attributes) ) + { + printk(XENLOG_WARNING "region memory attributes is not matched (0x%x -> 0x%x)\n", + region->prlar.reg.ai, PAGE_AI_MASK(attributes)); + return false; + } + + return true; +} + +/* + * Check whether memory range [pa, pa + len) is mapped with memory + * attributes #attr in Xen MPU memory mapping table xen_mpumap. + * + * If it is mapped but with different memory attributes, Errno -EINVAL + * will be returned. + * If it is not mapped at all, Errno -ENOENT will be returned. + */ +static int is_mm_range_mapped_with_attr(paddr_t pa, paddr_t len, + unsigned int attr) +{ + uint8_t idx; + + idx = is_mm_range_mapped(pa, len); + if ( idx != INVALID_REGION_IDX ) + { + pr_t *region; + + region = &xen_mpumap[idx]; + if ( !is_mm_attr_match(region, attr) ) + return -EINVAL; + + return 0; + } + + return -ENOENT; +} + +/* + * map_mm_range shall work with unmap_mm_range to map a chunk + * of memory with a transient MPU memory region for a period of short time. + */ +static void *map_mm_range(paddr_t pa, size_t len, unsigned int attributes) +{ + if ( xen_mpumap_update(pa, pa + len, attributes | _PAGE_TRANSIENT) ) + printk(XENLOG_ERR "Failed to map_mm_range 0x%"PRIpaddr"-0x%"PRIpaddr"\n", + pa, pa + len); + + return maddr_to_virt(pa); +} + +static void unmap_mm_range(paddr_t pa) +{ + uint8_t idx; + + /* + * The mapping size in map_mm_range is at least PAGE_SIZE. + * Find the MPU memory region mapped through map_mm_range, and associated + * idx will be returned. + */ + idx = is_mm_range_mapped(pa, PAGE_SIZE); + if ( idx == INVALID_REGION_IDX ) + { + printk(XENLOG_ERR "Failed to unmap_mm_range MPU memory region at 0x%"PRIpaddr"\n", + pa); + return; + } + + if ( !region_is_transient(&xen_mpumap[idx]) ) + { + printk(XENLOG_WARNING "Failed to unmap MPU memory region at 0x%"PRIpaddr"\n, as it is not transient\n", + pa); + return; + } + + /* Disable MPU memory region and clear the according entry in xen_mpumap */ + control_mpu_region_from_index(idx, false); +} + +/* + * It works with "iounmap" as a pair to temporarily map a chunk of memory + * with a transient MPU memory region, for short-time special accessing. + */ +void *ioremap_attr(paddr_t pa, size_t len, unsigned int attributes) +{ + return map_mm_range(round_pgdown(pa), round_pgup(len), attributes); +} + +/* ioremap_nocache is normally used to map device memory */ +void __iomem *ioremap_nocache(paddr_t start, size_t len) +{ + int rc; + + /* Check whether it is already mapped as device memory */ + rc = is_mm_range_mapped_with_attr(start, len, PAGE_HYPERVISOR_NOCACHE); + if ( rc == -ENOENT ) + return ioremap_attr(start, len, PAGE_HYPERVISOR_NOCACHE); + else if ( rc != 0 ) + return NULL; + + /* Already mapped */ + return maddr_to_virt(start); +} + +/* + * ioremap_cache which is working with iounmap as a pair, is normally used to + * map a chunck of cacheable memory temporarily for short-time special purpose. + */ +void __iomem *ioremap_cache(paddr_t start, size_t len) +{ + int rc; + + rc = is_mm_range_mapped_with_attr(start, len, PAGE_HYPERVISOR); + if ( rc == -ENOENT ) + return ioremap_attr(start, len, PAGE_HYPERVISOR); + else if ( rc != 0 ) + return NULL; + + /* Already mapped */ + return maddr_to_virt(start); +} + +/* + * ioremap_wc which is working with iounmap as a pair, is normally used to + * map a chunck of non-cacheable memory temporarily for short-time special + * purpose. + */ +void __iomem *ioremap_wc(paddr_t start, size_t len) +{ + int rc; + + rc = is_mm_range_mapped_with_attr(start, len, PAGE_HYPERVISOR_WC); + if ( rc == -ENOENT ) + ioremap_attr(start, len, PAGE_HYPERVISOR_WC); + else if ( rc != 0 ) + return NULL; + + /* Already mapped */ + return maddr_to_virt(start); +} + +void iounmap(void __iomem *va) +{ + unmap_mm_range(virt_to_maddr(va)); +} + /* * Local variables: * mode: C -- 2.25.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 26 03:39:44 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 03:39:44 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555004.866562 (Exim 4.92) (envelope-from ) id 1qDd4q-0005mS-5s; Mon, 26 Jun 2023 03:39:44 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555004.866562; Mon, 26 Jun 2023 03:39:44 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd4p-0005jc-Pj; Mon, 26 Jun 2023 03:39:43 +0000 Received: by outflank-mailman (input) for mailman id 555004; Mon, 26 Jun 2023 03:39:42 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd32-0007ej-8a for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 03:37:52 +0000 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by se1-gles-sth1.inumbo.com (Halon) with ESMTP id d3e01bd9-13d2-11ee-b237-6b7b168915f2; Mon, 26 Jun 2023 05:37:51 +0200 (CEST) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 301021FB; Sun, 25 Jun 2023 20:38:35 -0700 (PDT) Received: from a011292.shanghai.arm.com (a011292.shanghai.arm.com [10.169.190.94]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id 6E9333F64C; Sun, 25 Jun 2023 20:37:48 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: d3e01bd9-13d2-11ee-b237-6b7b168915f2 From: Penny Zheng To: xen-devel@lists.xenproject.org Cc: Penny Zheng , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk , Penny Zheng , Wei Chen Subject: [PATCH v3 52/52] xen/arm: add Kconfig option CONFIG_HAS_MPU to enable MPU system support Date: Mon, 26 Jun 2023 11:34:43 +0800 Message-Id: <20230626033443.2943270-53-Penny.Zheng@arm.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230626033443.2943270-1-Penny.Zheng@arm.com> References: <20230626033443.2943270-1-Penny.Zheng@arm.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Introduce a Kconfig option CONFIG_HAS_MPU to enable MPU architecture support. STATIC_MEMORY, ARCH_MAP_DOMAIN_PAGE and ARM_SECURE_STATE will be selected by MPU system by default. Also, features like, ARM_EFI, are not supported right now. Current MPU system design is only for ARM 64-bit platform. Signed-off-by: Penny Zheng Signed-off-by: Wei Chen --- v3: - select ARCH_MAP_DOMAIN_PAGE and ARM_SECURE_STATE - remove platform-specific config: CONFIG_ARM_V8R --- xen/arch/arm/Kconfig | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/xen/arch/arm/Kconfig b/xen/arch/arm/Kconfig index 3f67aacbbf..2acdf39ec8 100644 --- a/xen/arch/arm/Kconfig +++ b/xen/arch/arm/Kconfig @@ -62,6 +62,7 @@ source "arch/Kconfig" config HAS_MMU bool "Memory Management Unit support in a VMSA system" default y + depends on !HAS_MPU select HAS_PAGING_MEMPOOL select HAS_PMAP select HAS_VMAP @@ -70,6 +71,17 @@ config HAS_MMU a memory system through a set of virtual to physical address mappings and associated memory properties held in memory-mapped tables known as translation tables. +config HAS_MPU + bool "Memory Protection Unit support in a PMSA system" + default n + depends on ARM_64 + select ARCH_MAP_DOMAIN_PAGE + select ARM_SECURE_STATE + select STATIC_MEMORY + help + The PMSA is based on a Memory Protection Unit (MPU), which provides a much simpler + memory protection scheme than the MMU based VMSA. + config HAS_FIXMAP bool "Provide special-purpose 4K mapping slots in a VMSA" depends on HAS_MMU @@ -85,7 +97,7 @@ config ACPI config ARM_EFI bool "UEFI boot service support" - depends on ARM_64 + depends on ARM_64 && !HAS_MPU default y help This option provides support for boot services through -- 2.25.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 26 03:39:45 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 03:39:45 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555006.866569 (Exim 4.92) (envelope-from ) id 1qDd4q-0005wi-Rv; Mon, 26 Jun 2023 03:39:44 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555006.866569; Mon, 26 Jun 2023 03:39:44 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd4q-0005ss-9L; Mon, 26 Jun 2023 03:39:44 +0000 Received: by outflank-mailman (input) for mailman id 555006; Mon, 26 Jun 2023 03:39:42 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd30-0000HH-6q for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 03:37:50 +0000 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by se1-gles-flk1.inumbo.com (Halon) with ESMTP id d1fab75a-13d2-11ee-8611-37d641c3527e; Mon, 26 Jun 2023 05:37:48 +0200 (CEST) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id F31831FB; Sun, 25 Jun 2023 20:38:31 -0700 (PDT) Received: from a011292.shanghai.arm.com (a011292.shanghai.arm.com [10.169.190.94]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id 587093F64C; Sun, 25 Jun 2023 20:37:45 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: d1fab75a-13d2-11ee-8611-37d641c3527e From: Penny Zheng To: xen-devel@lists.xenproject.org Cc: Penny Zheng , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk , Penny Zheng , Wei Chen Subject: [PATCH v3 51/52] xen/mpu: create stubs of function/variables for UNSUPPORTED features Date: Mon, 26 Jun 2023 11:34:42 +0800 Message-Id: <20230626033443.2943270-52-Penny.Zheng@arm.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230626033443.2943270-1-Penny.Zheng@arm.com> References: <20230626033443.2943270-1-Penny.Zheng@arm.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit As we are not introduing features like SMP, SET/WAY emulation, etc, in MPU system, so we create empty stubs of function/variables and warnings for these UNSUPPORTED features. Signed-off-by: Penny Zheng Signed-off-by: Wei Chen --- v3: - new commit --- xen/arch/arm/arm64/mpu/head.S | 6 ++++++ xen/arch/arm/mpu/mm.c | 16 ++++++++++++++++ xen/arch/arm/mpu/p2m.c | 16 ++++++++++++++++ 3 files changed, 38 insertions(+) diff --git a/xen/arch/arm/arm64/mpu/head.S b/xen/arch/arm/arm64/mpu/head.S index 147a01e977..9f3c5b8990 100644 --- a/xen/arch/arm/arm64/mpu/head.S +++ b/xen/arch/arm/arm64/mpu/head.S @@ -241,6 +241,12 @@ ENTRY(setup_early_uart) #endif ENDPROC(setup_early_uart) +ENTRY(enable_runtime_mm) + PRINT("- SMP NOT SUPPORTED -\r\n") +1: wfe + b 1b +ENDPROC(enable_runtime_mm) + /* * Local variables: * mode: ASM diff --git a/xen/arch/arm/mpu/mm.c b/xen/arch/arm/mpu/mm.c index ef8a327037..8a554a950b 100644 --- a/xen/arch/arm/mpu/mm.c +++ b/xen/arch/arm/mpu/mm.c @@ -933,6 +933,22 @@ void dump_hyp_walk(vaddr_t addr) } } +void mm_init_secondary_cpu(void) +{ + printk(XENLOG_ERR "SMP not *SUPPORTED*\n"); +} + +int init_secondary_mm(int cpu) +{ + printk(XENLOG_ERR "mpu: SMP not *SUPPORTED*\n"); + return -EINVAL; +} + +void update_mm_mapping(bool enable) +{ + printk(XENLOG_ERR "mpu: SMP not *SUPPORTED*\n"); +} + /* * Local variables: * mode: C diff --git a/xen/arch/arm/mpu/p2m.c b/xen/arch/arm/mpu/p2m.c index 87e350270d..4bc09326f5 100644 --- a/xen/arch/arm/mpu/p2m.c +++ b/xen/arch/arm/mpu/p2m.c @@ -492,6 +492,22 @@ void p2m_dump_info(struct domain *d) p2m_read_unlock(p2m); } +void setup_virt_paging_one(void *data) +{ + printk(XENLOG_ERR "mpu: SMP not *SUPPORTED*\n"); +} + +void p2m_invalidate_root(struct p2m_domain *p2m) +{ + printk(XENLOG_ERR "mpu: p2m_invalidate_root() not *SUPPORTED*\n"); +} + +bool p2m_resolve_translation_fault(struct domain *d, gfn_t gfn) +{ + printk(XENLOG_ERR "mpu: p2m_resolve_translation_fault() not *SUPPORTED*\n"); + return false; +} + /* * Local variables: * mode: C -- 2.25.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 26 03:39:45 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 03:39:45 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555007.866576 (Exim 4.92) (envelope-from ) id 1qDd4r-000657-IO; Mon, 26 Jun 2023 03:39:45 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555007.866576; Mon, 26 Jun 2023 03:39:45 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd4q-00061n-UX; Mon, 26 Jun 2023 03:39:44 +0000 Received: by outflank-mailman (input) for mailman id 555007; Mon, 26 Jun 2023 03:39:42 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd2Q-0007ej-PM for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 03:37:14 +0000 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by se1-gles-sth1.inumbo.com (Halon) with ESMTP id bd598d93-13d2-11ee-b237-6b7b168915f2; Mon, 26 Jun 2023 05:37:13 +0200 (CEST) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 5A0401FB; Sun, 25 Jun 2023 20:37:57 -0700 (PDT) Received: from a011292.shanghai.arm.com (a011292.shanghai.arm.com [10.169.190.94]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id B249C3F64C; Sun, 25 Jun 2023 20:37:10 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: bd598d93-13d2-11ee-b237-6b7b168915f2 From: Penny Zheng To: xen-devel@lists.xenproject.org Cc: Penny Zheng , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk , Penny Zheng , Wei Chen Subject: [PATCH v3 40/52] xen/mpu: implement remove_early_mappings in MPU system Date: Mon, 26 Jun 2023 11:34:31 +0800 Message-Id: <20230626033443.2943270-41-Penny.Zheng@arm.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230626033443.2943270-1-Penny.Zheng@arm.com> References: <20230626033443.2943270-1-Penny.Zheng@arm.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit We implement remove_early_mappings() to remove early mappings of FDT in MPU system. When mapping FDT in early_fdt_map(), we mapped the first 2MB firstly, and check the size and then map with an extra 2MB if needed. So the unmapping shall follow the same strategy. In MMU, we could use fixed virtual address to remove the mapping. As it is not workable for MPU, we pass the FDT physical address in remove_early_mappings() for MPU to destroy the mapping. Signed-off-by: Penny Zheng Signed-off-by: Wei Chen --- v3: - adapt to the change of mapping FDT in two 2MB chunks if needed --- xen/arch/arm/include/asm/mm.h | 2 +- xen/arch/arm/mmu/mm.c | 2 +- xen/arch/arm/mpu/mm.c | 15 +++++++++++++++ xen/arch/arm/setup.c | 3 +-- 4 files changed, 18 insertions(+), 4 deletions(-) diff --git a/xen/arch/arm/include/asm/mm.h b/xen/arch/arm/include/asm/mm.h index 0352182d99..2b119a87da 100644 --- a/xen/arch/arm/include/asm/mm.h +++ b/xen/arch/arm/include/asm/mm.h @@ -209,7 +209,7 @@ extern bool flags_has_rwx(unsigned int flags); /* Map FDT in boot pagetable */ extern void *early_fdt_map(paddr_t fdt_paddr); /* Remove early mappings */ -extern void remove_early_mappings(void); +extern void remove_early_mappings(paddr_t dtb_paddr); /* * Allocate and initialise memory mapping for a secondary CPU. * Sets init_mm to the new memory mapping table diff --git a/xen/arch/arm/mmu/mm.c b/xen/arch/arm/mmu/mm.c index 4196a55c32..f37912d066 100644 --- a/xen/arch/arm/mmu/mm.c +++ b/xen/arch/arm/mmu/mm.c @@ -361,7 +361,7 @@ lpae_t pte_of_xenaddr(vaddr_t va) return mfn_to_xen_entry(maddr_to_mfn(ma), MT_NORMAL); } -void __init remove_early_mappings(void) +void __init remove_early_mappings(paddr_t dtb_paddr) { int rc; diff --git a/xen/arch/arm/mpu/mm.c b/xen/arch/arm/mpu/mm.c index 79d1c10d05..27d924e449 100644 --- a/xen/arch/arm/mpu/mm.c +++ b/xen/arch/arm/mpu/mm.c @@ -20,9 +20,11 @@ */ #include +#include #include #include #include +#include #include #include #include @@ -857,6 +859,19 @@ bool is_mm_range_mapped_transient(paddr_t pa, paddr_t len) return false; } +void __init remove_early_mappings(paddr_t dtb_paddr) +{ + paddr_t pa = dtb_paddr & PAGE_MASK, offset = dtb_paddr % PAGE_SIZE; + uint32_t size = fdt_totalsize(maddr_to_virt(dtb_paddr)); + + if ( xen_mpumap_update(pa, pa + SZ_2M, 0) ) + panic("Unable to destroy early Device-Tree mapping.\n"); + + if ( (offset + size) > SZ_2M ) + if ( xen_mpumap_update(pa + SZ_2M, pa + SZ_2M + SZ_2M, 0) ) + panic("Unable to destroy early Device-Tree mapping.\n"); +} + /* * Local variables: * mode: C diff --git a/xen/arch/arm/setup.c b/xen/arch/arm/setup.c index c21d1db763..200fa6eb53 100644 --- a/xen/arch/arm/setup.c +++ b/xen/arch/arm/setup.c @@ -529,8 +529,6 @@ void __init discard_initial_modules(void) mi->nr_mods = 0; } - - remove_early_mappings(); } /* Relocate the FDT in Xen heap */ @@ -973,6 +971,7 @@ void __init start_xen(unsigned long boot_phys_offset, * will be scrubbed (unless suppressed). */ discard_initial_modules(); + remove_early_mappings(fdt_paddr); heap_init_late(); -- 2.25.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 26 03:39:46 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 03:39:46 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555010.866580 (Exim 4.92) (envelope-from ) id 1qDd4r-0006Ex-Uj; Mon, 26 Jun 2023 03:39:45 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555010.866580; Mon, 26 Jun 2023 03:39:45 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd4r-00069s-JY; Mon, 26 Jun 2023 03:39:45 +0000 Received: by outflank-mailman (input) for mailman id 555010; Mon, 26 Jun 2023 03:39:43 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd2U-0000HH-Iw for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 03:37:18 +0000 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by se1-gles-flk1.inumbo.com (Halon) with ESMTP id bf32e1a5-13d2-11ee-8611-37d641c3527e; Mon, 26 Jun 2023 05:37:16 +0200 (CEST) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 7A1D91FB; Sun, 25 Jun 2023 20:38:00 -0700 (PDT) Received: from a011292.shanghai.arm.com (a011292.shanghai.arm.com [10.169.190.94]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id CAB9F3F64C; Sun, 25 Jun 2023 20:37:13 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: bf32e1a5-13d2-11ee-8611-37d641c3527e From: Penny Zheng To: xen-devel@lists.xenproject.org Cc: Penny Zheng , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk , Penny Zheng , Wei Chen Subject: [PATCH v3 41/52] xen/mpu: Use secure hypervisor timer in MPU system Date: Mon, 26 Jun 2023 11:34:32 +0800 Message-Id: <20230626033443.2943270-42-Penny.Zheng@arm.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230626033443.2943270-1-Penny.Zheng@arm.com> References: <20230626033443.2943270-1-Penny.Zheng@arm.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit As MPU system only has one secure state, we have to use secure EL2 hypervisor timer for Xen in secure EL2. In this patch, we introduce a new Kconfig option ARM_SECURE_STATE and a set of secure hypervisor timer registers CNTHPS_*_EL2. We alias CNTHP_*_EL2 to CNTHPS_*_EL2 to keep the timer code flow unchanged. Signed-off-by: Penny Zheng Signed-off-by: Wei Chen --- v3: - alias CNTHP_*_EL2 to CNTHPS_*_EL2 to avoid renaming --- xen/arch/arm/Kconfig | 4 ++++ xen/arch/arm/include/asm/arm64/sysregs.h | 15 +++++++++++++++ 2 files changed, 19 insertions(+) diff --git a/xen/arch/arm/Kconfig b/xen/arch/arm/Kconfig index b2710c1c31..3f67aacbbf 100644 --- a/xen/arch/arm/Kconfig +++ b/xen/arch/arm/Kconfig @@ -92,6 +92,10 @@ config ARM_EFI UEFI firmware. A UEFI stub is provided to allow Xen to be booted as an EFI application. +config ARM_SECURE_STATE + bool "Xen will run in Arm Secure State" + default n + config GICV3 bool "GICv3 driver" depends on !NEW_VGIC diff --git a/xen/arch/arm/include/asm/arm64/sysregs.h b/xen/arch/arm/include/asm/arm64/sysregs.h index 96c025053b..ab0e6a97d3 100644 --- a/xen/arch/arm/include/asm/arm64/sysregs.h +++ b/xen/arch/arm/include/asm/arm64/sysregs.h @@ -514,6 +514,21 @@ #endif +#ifdef CONFIG_ARM_SECURE_STATE +/* + * The Armv8-R AArch64 architecture always executes code in Secure + * state with EL2 as the highest Exception. + * + * Hypervisor timer registers for Secure EL2. + */ +#define CNTHPS_TVAL_EL2 S3_4_C14_C5_0 +#define CNTHPS_CTL_EL2 S3_4_C14_C5_1 +#define CNTHPS_CVAL_EL2 S3_4_C14_C5_2 +#define CNTHP_TVAL_EL2 CNTHPS_TVAL_EL2 +#define CNTHP_CTL_EL2 CNTHPS_CTL_EL2 +#define CNTHP_CVAL_EL2 CNTHPS_CVAL_EL2 +#endif + /* Access to system registers */ #define WRITE_SYSREG64(v, name) do { \ -- 2.25.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 26 03:39:47 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 03:39:47 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555015.866590 (Exim 4.92) (envelope-from ) id 1qDd4t-0006X3-3Q; Mon, 26 Jun 2023 03:39:47 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555015.866590; Mon, 26 Jun 2023 03:39:47 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd4s-0006U4-Mf; Mon, 26 Jun 2023 03:39:46 +0000 Received: by outflank-mailman (input) for mailman id 555015; Mon, 26 Jun 2023 03:39:45 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd1W-0007ej-QY for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 03:36:18 +0000 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by se1-gles-sth1.inumbo.com (Halon) with ESMTP id 9c2175bb-13d2-11ee-b237-6b7b168915f2; Mon, 26 Jun 2023 05:36:18 +0200 (CEST) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id A46D61FB; Sun, 25 Jun 2023 20:37:01 -0700 (PDT) Received: from a011292.shanghai.arm.com (a011292.shanghai.arm.com [10.169.190.94]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id 3D9133F64C; Sun, 25 Jun 2023 20:36:14 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 9c2175bb-13d2-11ee-b237-6b7b168915f2 From: Penny Zheng To: xen-devel@lists.xenproject.org Cc: Penny Zheng , Jan Beulich , Paul Durrant , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Penny Zheng , Wei Chen Subject: [PATCH v3 22/52] xen/mmu: enable SMMU subsystem only in MMU Date: Mon, 26 Jun 2023 11:34:13 +0800 Message-Id: <20230626033443.2943270-23-Penny.Zheng@arm.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230626033443.2943270-1-Penny.Zheng@arm.com> References: <20230626033443.2943270-1-Penny.Zheng@arm.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit SMMU subsystem is only supported in MMU system, so we make it dependent on CONFIG_HAS_MMU. Signed-off-by: Penny Zheng Signed-off-by: Wei Chen --- v3: - new patch --- xen/drivers/passthrough/Kconfig | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/xen/drivers/passthrough/Kconfig b/xen/drivers/passthrough/Kconfig index 864fcf3b0c..5a8d666829 100644 --- a/xen/drivers/passthrough/Kconfig +++ b/xen/drivers/passthrough/Kconfig @@ -5,6 +5,7 @@ config HAS_PASSTHROUGH if ARM config ARM_SMMU bool "ARM SMMUv1 and v2 driver" + depends on HAS_MMU default y ---help--- Support for implementations of the ARM System MMU architecture @@ -15,7 +16,7 @@ config ARM_SMMU config ARM_SMMU_V3 bool "ARM Ltd. System MMU Version 3 (SMMUv3) Support" if EXPERT - depends on ARM_64 && (!ACPI || BROKEN) + depends on ARM_64 && (!ACPI || BROKEN) && HAS_MMU ---help--- Support for implementations of the ARM System MMU architecture version 3. Driver is in experimental stage and should not be used in -- 2.25.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 26 03:39:48 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 03:39:48 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555016.866598 (Exim 4.92) (envelope-from ) id 1qDd4u-0006m2-6P; Mon, 26 Jun 2023 03:39:48 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555016.866598; Mon, 26 Jun 2023 03:39:48 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd4t-0006jm-Jx; Mon, 26 Jun 2023 03:39:47 +0000 Received: by outflank-mailman (input) for mailman id 555016; Mon, 26 Jun 2023 03:39:45 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd2O-0000HH-Mx for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 03:37:12 +0000 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by se1-gles-flk1.inumbo.com (Halon) with ESMTP id bb901191-13d2-11ee-8611-37d641c3527e; Mon, 26 Jun 2023 05:37:10 +0200 (CEST) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 417381FB; Sun, 25 Jun 2023 20:37:54 -0700 (PDT) Received: from a011292.shanghai.arm.com (a011292.shanghai.arm.com [10.169.190.94]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id 8CDF73F64C; Sun, 25 Jun 2023 20:37:07 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: bb901191-13d2-11ee-8611-37d641c3527e From: Penny Zheng To: xen-devel@lists.xenproject.org Cc: Penny Zheng , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk , Penny Zheng , Wei Chen Subject: [PATCH v3 39/52] xen/mpu: support free_init_memory in MPU system Date: Mon, 26 Jun 2023 11:34:30 +0800 Message-Id: <20230626033443.2943270-40-Penny.Zheng@arm.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230626033443.2943270-1-Penny.Zheng@arm.com> References: <20230626033443.2943270-1-Penny.Zheng@arm.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit This commit refines free_init_memory() to make it support in MPU system. We are supporting modify_xen_mappings() in MPU system too, and it is responsible for modifying memory permission of a existing MPU memory region. Currently, we only support modifying a *WHOLE* MPU memory region, part-region modification is not supported, as in worst case, it will leave three fragments behind. In MPU system, we map init text and init data section, each with a MPU memory region. So we shall destroy it seperately in free_init_memory(). Signed-off-by: Penny Zheng Signed-off-by: Wei Chen --- v3: - As MMU and MPU could share a lot of codes, we made the changes in original function free_init_memory() in mm.c --- xen/arch/arm/mm.c | 14 +++++++++++++- xen/arch/arm/mpu/mm.c | 33 ++++++++++++++++++++++++++++++++- 2 files changed, 45 insertions(+), 2 deletions(-) diff --git a/xen/arch/arm/mm.c b/xen/arch/arm/mm.c index 247d17cfa1..ba4ae74e18 100644 --- a/xen/arch/arm/mm.c +++ b/xen/arch/arm/mm.c @@ -177,7 +177,12 @@ int modify_xen_mappings(unsigned long s, unsigned long e, unsigned int flags) ASSERT(IS_ALIGNED(s, PAGE_SIZE)); ASSERT(IS_ALIGNED(e, PAGE_SIZE)); ASSERT(s <= e); +#ifndef CONFIG_HAS_MPU return xen_pt_update(s, INVALID_MFN, (e - s) >> PAGE_SHIFT, flags); +#else + return xen_mpumap_update(virt_to_maddr((void *)s), + virt_to_maddr((void *)e), flags); +#endif } /* Release all __init and __initdata ranges to be reused */ @@ -212,10 +217,17 @@ void free_init_memory(void) for ( i = 0; i < nr; i++ ) *(p + i) = insn; + /* Remove init text section */ rc = destroy_xen_mappings((unsigned long)__init_begin, + (unsigned long)inittext_end); + if ( rc ) + panic("Unable to remove the init text section (rc = %d)\n", rc); + + /* Remove init data section */ + rc = destroy_xen_mappings((unsigned long)inittext_end, (unsigned long)__init_end); if ( rc ) - panic("Unable to remove the init section (rc = %d)\n", rc); + panic("Unable to remove the init data section (rc = %d)\n", rc); if ( !xen_is_using_staticheap() ) { diff --git a/xen/arch/arm/mpu/mm.c b/xen/arch/arm/mpu/mm.c index b2419f0603..79d1c10d05 100644 --- a/xen/arch/arm/mpu/mm.c +++ b/xen/arch/arm/mpu/mm.c @@ -496,8 +496,39 @@ static int xen_mpumap_update_entry(paddr_t base, paddr_t limit, if ( (rc < 0) || (rc == MPUMAP_REGION_OVERLAP) ) return -EINVAL; + /* We are updating the permission. */ + if ( (flags & _PAGE_PRESENT) && (rc == MPUMAP_REGION_FOUND || + rc == MPUMAP_REGION_INCLUSIVE) ) + { + /* + * Currently, we only support modifying a *WHOLE* MPU memory region, + * part-region modification is not supported, as in worst case, it will + * leave three fragments behind. + * part-region modification will be introduced only when actual usage + * come + */ + if ( rc == MPUMAP_REGION_INCLUSIVE ) + { + region_printk("mpu: part-region modification is not supported\n"); + return -EINVAL; + } + + /* We don't allow changing memory attributes. */ + if (xen_mpumap[idx].prlar.reg.ai != PAGE_AI_MASK(flags) ) + { + region_printk("Modifying memory attributes is not allowed (0x%x -> 0x%x).\n", + xen_mpumap[idx].prlar.reg.ai, PAGE_AI_MASK(flags)); + return -EINVAL; + } + + /* Set new permission */ + xen_mpumap[idx].prbar.reg.ap = PAGE_AP_MASK(flags); + xen_mpumap[idx].prbar.reg.xn = PAGE_XN_MASK(flags); + + write_protection_region((const pr_t*)(&xen_mpumap[idx]), idx); + } /* We are inserting a mapping => Create new region. */ - if ( flags & _PAGE_PRESENT ) + else if ( flags & _PAGE_PRESENT ) { if ( rc != MPUMAP_REGION_FAILED ) return -EINVAL; -- 2.25.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 26 03:39:50 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 03:39:50 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555018.866611 (Exim 4.92) (envelope-from ) id 1qDd4w-0007E7-48; Mon, 26 Jun 2023 03:39:50 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555018.866611; Mon, 26 Jun 2023 03:39:49 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd4v-00079C-EB; Mon, 26 Jun 2023 03:39:49 +0000 Received: by outflank-mailman (input) for mailman id 555018; Mon, 26 Jun 2023 03:39:47 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd0z-0000HH-H9 for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 03:35:45 +0000 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by se1-gles-flk1.inumbo.com (Halon) with ESMTP id 87bbbe50-13d2-11ee-8611-37d641c3527e; Mon, 26 Jun 2023 05:35:43 +0200 (CEST) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 617721FB; Sun, 25 Jun 2023 20:36:27 -0700 (PDT) Received: from a011292.shanghai.arm.com (a011292.shanghai.arm.com [10.169.190.94]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id 96D703F64C; Sun, 25 Jun 2023 20:35:40 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 87bbbe50-13d2-11ee-8611-37d641c3527e From: Penny Zheng To: xen-devel@lists.xenproject.org Cc: Penny Zheng , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk , Penny Zheng , Wei Chen Subject: [PATCH v3 12/52] xen/mmu: extract early uart mapping from setup_fixmap Date: Mon, 26 Jun 2023 11:34:03 +0800 Message-Id: <20230626033443.2943270-13-Penny.Zheng@arm.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230626033443.2943270-1-Penny.Zheng@arm.com> References: <20230626033443.2943270-1-Penny.Zheng@arm.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Original setup_fixmap is actually doing two seperate tasks, one is enabling the early UART when earlyprintk on, and the other is to set up the fixmap even when earlyprintk is not configured. To be more dedicated and precise, the old function shall be split into two functions, setup_early_uart and new setup_fixmap. Signed-off-by: Penny Zheng Signed-off-by: Wei Chen --- v3: - new patch --- xen/arch/arm/arm64/head.S | 3 +++ xen/arch/arm/arm64/mmu/head.S | 24 +++++++++++++++++------- 2 files changed, 20 insertions(+), 7 deletions(-) diff --git a/xen/arch/arm/arm64/head.S b/xen/arch/arm/arm64/head.S index e63886b037..55a4cfe69e 100644 --- a/xen/arch/arm/arm64/head.S +++ b/xen/arch/arm/arm64/head.S @@ -258,7 +258,10 @@ real_start_efi: b enable_boot_mm primary_switched: + bl setup_early_uart +#ifdef CONFIG_HAS_FIXMAP bl setup_fixmap +#endif #ifdef CONFIG_EARLY_PRINTK /* Use a virtual address to access the UART. */ ldr x23, =EARLY_UART_VIRTUAL_ADDRESS diff --git a/xen/arch/arm/arm64/mmu/head.S b/xen/arch/arm/arm64/mmu/head.S index 2b209fc3ce..295596aca1 100644 --- a/xen/arch/arm/arm64/mmu/head.S +++ b/xen/arch/arm/arm64/mmu/head.S @@ -367,24 +367,34 @@ identity_mapping_removed: ENDPROC(remove_identity_mapping) /* - * Map the UART in the fixmap (when earlyprintk is used) and hook the - * fixmap table in the page tables. - * - * The fixmap cannot be mapped in create_page_tables because it may - * clash with the 1:1 mapping. + * Map the UART in the fixmap (when earlyprintk is used) * * Inputs: - * x20: Physical offset * x23: Early UART base physical address * * Clobbers x0 - x3 */ -ENTRY(setup_fixmap) +ENTRY(setup_early_uart) #ifdef CONFIG_EARLY_PRINTK /* Add UART to the fixmap table */ ldr x0, =EARLY_UART_VIRTUAL_ADDRESS create_mapping_entry xen_fixmap, x0, x23, x1, x2, x3, type=PT_DEV_L3 + /* Ensure any page table updates made above have occurred. */ + dsb nshst + + ret #endif +ENDPROC(setup_early_uart) + +/* + * Map the fixmap table in the page tables. + * + * The fixmap cannot be mapped in create_page_tables because it may + * clash with the 1:1 mapping. + * + * Clobbers x0 - x3 + */ +ENTRY(setup_fixmap) /* Map fixmap into boot_second */ ldr x0, =FIXMAP_ADDR(0) create_table_entry boot_second, xen_fixmap, x0, 2, x1, x2, x3 -- 2.25.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 26 03:39:52 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 03:39:52 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555024.866622 (Exim 4.92) (envelope-from ) id 1qDd4y-0007WH-5C; Mon, 26 Jun 2023 03:39:52 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555024.866622; Mon, 26 Jun 2023 03:39:51 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd4w-0007Qy-Rc; Mon, 26 Jun 2023 03:39:50 +0000 Received: by outflank-mailman (input) for mailman id 555024; Mon, 26 Jun 2023 03:39:49 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd1k-0000HH-NE for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 03:36:32 +0000 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by se1-gles-flk1.inumbo.com (Halon) with ESMTP id a36624b4-13d2-11ee-8611-37d641c3527e; Mon, 26 Jun 2023 05:36:30 +0200 (CEST) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id C80F51FB; Sun, 25 Jun 2023 20:37:13 -0700 (PDT) Received: from a011292.shanghai.arm.com (a011292.shanghai.arm.com [10.169.190.94]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id 2C3F73F64C; Sun, 25 Jun 2023 20:36:26 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: a36624b4-13d2-11ee-8611-37d641c3527e From: Penny Zheng To: xen-devel@lists.xenproject.org Cc: Penny Zheng , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk , Penny Zheng , Wei Chen Subject: [PATCH v3 26/52] xen/mpu: map early uart when earlyprintk on Date: Mon, 26 Jun 2023 11:34:17 +0800 Message-Id: <20230626033443.2943270-27-Penny.Zheng@arm.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230626033443.2943270-1-Penny.Zheng@arm.com> References: <20230626033443.2943270-1-Penny.Zheng@arm.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit We map the early UART with a hardcoded MPU memory region at slot(#REGION_DEVICE_SEL), right after Xen image binary. CONFIG_EARLY_UART_SIZE is introduced, to let user provide physical size of early UART. It is necessary in MPU system. We also check whether user-defined EARLY_UART_SIZE is aligned to PAGE_SIZE, or we may map more than necessary in MPU system. Signed-off-by: Penny Zheng Signed-off-by: Wei Chen --- v3: - map the early UART with a hardcoded MPU memory region - error when uart size doesn't align with PAGE_SIZE --- xen/arch/arm/Kconfig.debug | 7 +++++++ xen/arch/arm/arm64/mpu/head.S | 25 +++++++++++++++++++++++++ xen/arch/arm/include/asm/arm64/mpu.h | 8 ++++++++ xen/arch/arm/include/asm/early_printk.h | 8 ++++++++ 4 files changed, 48 insertions(+) diff --git a/xen/arch/arm/Kconfig.debug b/xen/arch/arm/Kconfig.debug index eec860e88e..a3b0cb9daa 100644 --- a/xen/arch/arm/Kconfig.debug +++ b/xen/arch/arm/Kconfig.debug @@ -239,6 +239,13 @@ config EARLY_UART_BASE_ADDRESS default 0x1c020000 if EARLY_PRINTK_XGENE_STORM default 0xff000000 if EARLY_PRINTK_ZYNQMP +config EARLY_UART_SIZE + depends on EARLY_PRINTK + depends on HAS_MPU + hex "Early printk, physical size of debug UART" + range 0x0 0xffffffff if ARM_32 + default 0x10000 if EARLY_PRINTK_FASTMODEL + config EARLY_UART_PL011_BAUD_RATE depends on EARLY_UART_PL011 int "Early printk UART baud rate for pl011" diff --git a/xen/arch/arm/arm64/mpu/head.S b/xen/arch/arm/arm64/mpu/head.S index 3cfce126d5..147a01e977 100644 --- a/xen/arch/arm/arm64/mpu/head.S +++ b/xen/arch/arm/arm64/mpu/head.S @@ -18,6 +18,7 @@ */ #include +#include #include /* @@ -29,8 +30,10 @@ #define REGION_TEXT_PRBAR 0x38 /* SH=11 AP=10 XN=00 */ #define REGION_RO_PRBAR 0x3A /* SH=11 AP=10 XN=10 */ #define REGION_DATA_PRBAR 0x32 /* SH=11 AP=00 XN=10 */ +#define REGION_DEVICE_PRBAR 0x22 /* SH=10 AP=00 XN=10 */ #define REGION_NORMAL_PRLAR 0x0f /* NS=0 ATTR=111 EN=1 */ +#define REGION_DEVICE_PRLAR 0x09 /* NS=0 ATTR=100 EN=1 */ /* * Macro to round up the section address to be PAGE_SIZE aligned @@ -216,6 +219,28 @@ ENTRY(enable_boot_mm) ret ENDPROC(enable_boot_mm) +/* + * Map the early UART with a dedicated MPU memory region at + * slot(#REGION_DEVICE_SEL), right after Xen image binary. + * + * Clobbers x0 - x6 + * + */ +ENTRY(setup_early_uart) +#ifdef CONFIG_EARLY_PRINTK + mov x0, #REGION_UART_SEL + + /* Xen early UART section. */ + ldr x1, =CONFIG_EARLY_UART_BASE_ADDRESS + ldr x2, =(CONFIG_EARLY_UART_BASE_ADDRESS + CONFIG_EARLY_UART_SIZE) + prepare_xen_region x0, x1, x2, x3, x4, x5, x6, attr_prbar=REGION_DEVICE_PRBAR, attr_prlar=REGION_DEVICE_PRLAR + + /* Ensure any MPU memory mapping table updates made above have occurred. */ + dsb nshst + ret +#endif +ENDPROC(setup_early_uart) + /* * Local variables: * mode: ASM diff --git a/xen/arch/arm/include/asm/arm64/mpu.h b/xen/arch/arm/include/asm/arm64/mpu.h index 0c479086f4..6ec2c10b14 100644 --- a/xen/arch/arm/include/asm/arm64/mpu.h +++ b/xen/arch/arm/include/asm/arm64/mpu.h @@ -12,6 +12,14 @@ */ #define ARM_MAX_MPU_MEMORY_REGIONS 255 +/* + * REGION_UART_SEL defines MPU region selector value for early UART, when + * earlyuart printk is enabled. + * #REGION_DEVICE_SEL shall be compliant with what describes in xen.lds.S, + * or it needs adjustment. + */ +#define REGION_UART_SEL 0x07 + #ifndef __ASSEMBLY__ /* Protection Region Base Address Register */ diff --git a/xen/arch/arm/include/asm/early_printk.h b/xen/arch/arm/include/asm/early_printk.h index ec5bcc343c..445a3fb7de 100644 --- a/xen/arch/arm/include/asm/early_printk.h +++ b/xen/arch/arm/include/asm/early_printk.h @@ -23,6 +23,14 @@ */ #define EARLY_UART_VIRTUAL_ADDRESS CONFIG_EARLY_UART_BASE_ADDRESS +/* + * User-defined EARLY_UART_SIZE must be aligned to a PAGE_SIZE, or + * we may map more than necessary in MPU system. + */ +#if (EARLY_UART_SIZE % PAGE_SIZE) != 0 +#error "EARLY_UART_SIZE must be aligned to PAGE_SIZE" +#endif + #else /* need to add the uart address offset in page to the fixmap address */ -- 2.25.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 26 03:39:53 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 03:39:53 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555025.866627 (Exim 4.92) (envelope-from ) id 1qDd4y-0007oJ-U2; Mon, 26 Jun 2023 03:39:52 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555025.866627; Mon, 26 Jun 2023 03:39:52 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd4x-0007j3-Ut; Mon, 26 Jun 2023 03:39:51 +0000 Received: by outflank-mailman (input) for mailman id 555025; Mon, 26 Jun 2023 03:39:50 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd2d-0007ej-7C for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 03:37:27 +0000 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by se1-gles-sth1.inumbo.com (Halon) with ESMTP id c4cd8afc-13d2-11ee-b237-6b7b168915f2; Mon, 26 Jun 2023 05:37:26 +0200 (CEST) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id DE4681FB; Sun, 25 Jun 2023 20:38:09 -0700 (PDT) Received: from a011292.shanghai.arm.com (a011292.shanghai.arm.com [10.169.190.94]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id 425AF3F64C; Sun, 25 Jun 2023 20:37:23 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: c4cd8afc-13d2-11ee-b237-6b7b168915f2 From: Penny Zheng To: xen-devel@lists.xenproject.org Cc: Penny Zheng , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk , Penny Zheng , Wei Chen Subject: [PATCH v3 44/52] xen/mpu: P2M initialization in MPU system Date: Mon, 26 Jun 2023 11:34:35 +0800 Message-Id: <20230626033443.2943270-45-Penny.Zheng@arm.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230626033443.2943270-1-Penny.Zheng@arm.com> References: <20230626033443.2943270-1-Penny.Zheng@arm.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit We inherit p2m_init() to do P2M initialization in MPU system, including VMID assignment, setting up P2M MPU region mapping table, etc. p2m_alloc_table() is responsible for allocating per-domain P2M MPU memory region mapping table. As a MPU memory region structure(pr_t) takes 16 bytes, even with maximum supported MPU memory regions, 255, MPU memory mapping table at most takes up less than 4KB. VSCTLR_EL2, Virtualization System Control Register, provides configuration information for VMSAv8-64 and PMSAv8-64 virtualization using stage 2 of EL1&0 translation regime, bit[63:48] of which determines VMID for the EL1-Guest-OS. Signed-off-by: Penny Zheng Signed-off-by: Wei Chen --- v3: - new commit --- xen/arch/arm/include/asm/mpu/mm.h | 3 ++ xen/arch/arm/include/asm/p2m.h | 5 +++ xen/arch/arm/mpu/mm.c | 22 ++++++++++ xen/arch/arm/mpu/p2m.c | 69 +++++++++++++++++++++++++++++++ 4 files changed, 99 insertions(+) diff --git a/xen/arch/arm/include/asm/mpu/mm.h b/xen/arch/arm/include/asm/mpu/mm.h index a83519ad13..4df69245c6 100644 --- a/xen/arch/arm/include/asm/mpu/mm.h +++ b/xen/arch/arm/include/asm/mpu/mm.h @@ -2,6 +2,8 @@ #ifndef __ARCH_ARM_MM_MPU__ #define __ARCH_ARM_MM_MPU__ +#include + extern struct page_info *frame_table; extern unsigned long frametable_pdx_end; @@ -11,6 +13,7 @@ extern uint8_t is_mm_range_mapped(paddr_t pa, paddr_t len); extern void *map_mm_range(paddr_t pa, size_t len, unsigned int attributes); extern void unmap_mm_range(paddr_t pa); extern bool is_mm_range_mapped_transient(paddr_t pa, paddr_t len); +extern pr_t *alloc_mpumap(void); #endif /* __ARCH_ARM_MM_MPU__ */ diff --git a/xen/arch/arm/include/asm/p2m.h b/xen/arch/arm/include/asm/p2m.h index d9c91d4a98..c3598d514e 100644 --- a/xen/arch/arm/include/asm/p2m.h +++ b/xen/arch/arm/include/asm/p2m.h @@ -61,8 +61,13 @@ struct p2m_domain { /* Current VMID in use */ uint16_t vmid; +#ifndef CONFIG_HAS_MPU /* Current Translation Table Base Register for the p2m */ uint64_t vttbr; +#else + /* Current Virtualization System Control Register for the p2m */ + uint64_t vsctlr; +#endif /* Highest guest frame that's ever been mapped in the p2m */ gfn_t max_mapped_gfn; diff --git a/xen/arch/arm/mpu/mm.c b/xen/arch/arm/mpu/mm.c index 27d924e449..de5da96b80 100644 --- a/xen/arch/arm/mpu/mm.c +++ b/xen/arch/arm/mpu/mm.c @@ -872,6 +872,28 @@ void __init remove_early_mappings(paddr_t dtb_paddr) panic("Unable to destroy early Device-Tree mapping.\n"); } +/* + * Standard entry to dynamically allocate MPU memory region mapping table. + * A 4KB page is enough for holding the maximum supported MPU memory + * regions. + */ +pr_t *alloc_mpumap(void) +{ + pr_t *map; + + /* + * A MPU memory region structure(pr_t) takes 16 bytes, even with maximum + * supported MPU memory regions, 255, MPU memory mapping table at most + * takes up less than 4KB. + */ + map = alloc_xenheap_pages(0, 0); + if ( map == NULL ) + return NULL; + + clear_page(map); + return map; +} + /* * Local variables: * mode: C diff --git a/xen/arch/arm/mpu/p2m.c b/xen/arch/arm/mpu/p2m.c index a7a3912a9a..8f728f8957 100644 --- a/xen/arch/arm/mpu/p2m.c +++ b/xen/arch/arm/mpu/p2m.c @@ -4,6 +4,7 @@ #include #include +#include #include #include #include @@ -97,6 +98,74 @@ fault: panic("Hardware with no PMSAv8-64 support in any translation regime.\n"); } +static uint64_t __init generate_vsctlr(uint16_t vmid) +{ + return ((uint64_t)vmid << 48); +} + +static int __init p2m_alloc_table(struct domain *d) +{ + struct p2m_domain *p2m = p2m_get_hostp2m(d); + pr_t* p2m_map; + + p2m_map = alloc_mpumap(); + if ( !p2m_map ) + { + printk(XENLOG_G_ERR "DOM%pd: p2m: unable to allocate P2M MPU mapping table\n", d); + return -ENOMEM; + } + + p2m->root = virt_to_page((const void *)p2m_map); + + return 0; +} + +int p2m_init(struct domain *d) +{ + struct p2m_domain *p2m = p2m_get_hostp2m(d); + int rc = 0; + unsigned int cpu; + + rwlock_init(&p2m->lock); + spin_lock_init(&d->arch.paging.lock); + + p2m->vmid = INVALID_VMID; + p2m->max_mapped_gfn = _gfn(0); + p2m->lowest_mapped_gfn = _gfn(ULONG_MAX); + + p2m->default_access = p2m_access_rwx; + /* mem_access is NOT supported in MPU system. */ + p2m->mem_access_enabled = false; + + /* + * Make sure that the type chosen to is able to store an vCPU ID + * between 0 and the maximum of virtual CPUS supported as long as + * the INVALID_VCPU_ID. + */ + BUILD_BUG_ON((1 << (sizeof(p2m->last_vcpu_ran[0]) * 8)) < MAX_VIRT_CPUS); + BUILD_BUG_ON((1 << (sizeof(p2m->last_vcpu_ran[0]) * 8)) < INVALID_VCPU_ID); + + for_each_possible_cpu(cpu) + p2m->last_vcpu_ran[cpu] = INVALID_VCPU_ID; + + /* + * "Trivial" initialisation is now complete. Set the backpointer so + * p2m_teardown() and friends know to do something. + */ + p2m->domain = d; + + rc = p2m_alloc_vmid(d); + if ( rc ) + return rc; + p2m->vsctlr = generate_vsctlr(p2m->vmid); + + rc = p2m_alloc_table(d); + if ( rc ) + return rc; + + return rc; +} + /* * Local variables: * mode: C -- 2.25.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 26 03:39:56 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 03:39:56 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555031.866646 (Exim 4.92) (envelope-from ) id 1qDd52-0000El-7S; Mon, 26 Jun 2023 03:39:56 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555031.866646; Mon, 26 Jun 2023 03:39:56 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd51-0000Ah-DJ; Mon, 26 Jun 2023 03:39:55 +0000 Received: by outflank-mailman (input) for mailman id 555031; Mon, 26 Jun 2023 03:39:53 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd1U-0007ej-2x for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 03:36:16 +0000 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by se1-gles-sth1.inumbo.com (Halon) with ESMTP id 9a697aa3-13d2-11ee-b237-6b7b168915f2; Mon, 26 Jun 2023 05:36:15 +0200 (CEST) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id C0F352F4; Sun, 25 Jun 2023 20:36:58 -0700 (PDT) Received: from a011292.shanghai.arm.com (a011292.shanghai.arm.com [10.169.190.94]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id D28403F64C; Sun, 25 Jun 2023 20:36:10 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 9a697aa3-13d2-11ee-b237-6b7b168915f2 From: Penny Zheng To: xen-devel@lists.xenproject.org Cc: Penny Zheng , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk , Andrew Cooper , George Dunlap , Jan Beulich , Wei Liu , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Penny Zheng , Wei Chen Subject: [PATCH v3 21/52] xen: introduce CONFIG_HAS_PAGING_MEMPOOL Date: Mon, 26 Jun 2023 11:34:12 +0800 Message-Id: <20230626033443.2943270-22-Penny.Zheng@arm.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230626033443.2943270-1-Penny.Zheng@arm.com> References: <20230626033443.2943270-1-Penny.Zheng@arm.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit ARM MPU system doesn't need to use paging memory pool, as MPU memory mapping table(xen_mpumap) at most takes only one 4KB page, which is enough to manage the maximum 255 MPU memory regions, for all EL2 stage 1 translation and EL1 stage 2 translation. We wrap all paging-memory-pool-related codes with new Kconfig CONFIG_HAS_PAGING_MEMPOOL in common codes. Signed-off-by: Penny Zheng Signed-off-by: Wei Chen --- v3: - new patch --- xen/arch/arm/Kconfig | 1 + xen/arch/arm/domain.c | 2 ++ xen/arch/arm/domain_build.c | 2 ++ xen/arch/arm/p2m.c | 2 ++ xen/arch/x86/Kconfig | 1 + xen/common/Kconfig | 3 +++ xen/common/domctl.c | 2 ++ 7 files changed, 13 insertions(+) diff --git a/xen/arch/arm/Kconfig b/xen/arch/arm/Kconfig index a88500fb50..b2710c1c31 100644 --- a/xen/arch/arm/Kconfig +++ b/xen/arch/arm/Kconfig @@ -62,6 +62,7 @@ source "arch/Kconfig" config HAS_MMU bool "Memory Management Unit support in a VMSA system" default y + select HAS_PAGING_MEMPOOL select HAS_PMAP select HAS_VMAP help diff --git a/xen/arch/arm/domain.c b/xen/arch/arm/domain.c index add9929b79..7993cefceb 100644 --- a/xen/arch/arm/domain.c +++ b/xen/arch/arm/domain.c @@ -1072,6 +1072,7 @@ int domain_relinquish_resources(struct domain *d) */ p2m_clear_root_pages(&d->arch.p2m); +#ifdef CONFIG_HAS_PAGING_MEMPOOL PROGRESS(p2m): ret = p2m_teardown(d); if ( ret ) @@ -1081,6 +1082,7 @@ int domain_relinquish_resources(struct domain *d) ret = p2m_teardown_allocation(d); if( ret ) return ret; +#endif PROGRESS(done): break; diff --git a/xen/arch/arm/domain_build.c b/xen/arch/arm/domain_build.c index d0d6be922d..260ef9ba6f 100644 --- a/xen/arch/arm/domain_build.c +++ b/xen/arch/arm/domain_build.c @@ -3830,11 +3830,13 @@ static int __init construct_domU(struct domain *d, p2m_mem_mb << (20 - PAGE_SHIFT) : domain_p2m_pages(mem, d->max_vcpus); +#ifdef CONFIG_PAGING_MEMPOOL spin_lock(&d->arch.paging.lock); rc = p2m_set_allocation(d, p2m_pages, NULL); spin_unlock(&d->arch.paging.lock); if ( rc != 0 ) return rc; +#endif printk("*** LOADING DOMU cpus=%u memory=%#"PRIx64"KB ***\n", d->max_vcpus, mem); diff --git a/xen/arch/arm/p2m.c b/xen/arch/arm/p2m.c index b2771e0bed..e29b11334e 100644 --- a/xen/arch/arm/p2m.c +++ b/xen/arch/arm/p2m.c @@ -361,11 +361,13 @@ void p2m_final_teardown(struct domain *d) * where relinquish_p2m_mapping() has been called. */ +#ifdef CONFIG_HAS_PAGING_MEMPOOL ASSERT(page_list_empty(&p2m->pages)); while ( p2m_teardown_allocation(d) == -ERESTART ) continue; /* No preemption support here */ ASSERT(page_list_empty(&d->arch.paging.p2m_freelist)); +#endif if ( p2m->root ) free_domheap_pages(p2m->root, P2M_ROOT_ORDER); diff --git a/xen/arch/x86/Kconfig b/xen/arch/x86/Kconfig index 033cc2332e..082069f1cc 100644 --- a/xen/arch/x86/Kconfig +++ b/xen/arch/x86/Kconfig @@ -21,6 +21,7 @@ config X86 select HAS_IOPORTS select HAS_KEXEC select HAS_NS16550 + select HAS_PAGING_MEMPOOL select HAS_PASSTHROUGH select HAS_PCI select HAS_PCI_MSI diff --git a/xen/common/Kconfig b/xen/common/Kconfig index 2c29e89b75..019a123320 100644 --- a/xen/common/Kconfig +++ b/xen/common/Kconfig @@ -54,6 +54,9 @@ config HAS_IOPORTS config HAS_KEXEC bool +config HAS_PAGING_MEMPOOL + bool + config HAS_PDX bool diff --git a/xen/common/domctl.c b/xen/common/domctl.c index 505e29c0dc..c5442992b9 100644 --- a/xen/common/domctl.c +++ b/xen/common/domctl.c @@ -844,6 +844,7 @@ long do_domctl(XEN_GUEST_HANDLE_PARAM(xen_domctl_t) u_domctl) ret = iommu_do_domctl(op, d, u_domctl); break; +#ifdef CONFIG_HAS_PAGING_MEMPOOL case XEN_DOMCTL_get_paging_mempool_size: ret = arch_get_paging_mempool_size(d, &op->u.paging_mempool.size); if ( !ret ) @@ -857,6 +858,7 @@ long do_domctl(XEN_GUEST_HANDLE_PARAM(xen_domctl_t) u_domctl) ret = hypercall_create_continuation( __HYPERVISOR_domctl, "h", u_domctl); break; +#endif default: ret = arch_do_domctl(op, d, u_domctl); -- 2.25.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 26 03:39:59 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 03:39:59 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555035.866656 (Exim 4.92) (envelope-from ) id 1qDd54-0000sd-Sh; Mon, 26 Jun 2023 03:39:58 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555035.866656; Mon, 26 Jun 2023 03:39:58 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd54-0000lk-0D; Mon, 26 Jun 2023 03:39:58 +0000 Received: by outflank-mailman (input) for mailman id 555035; Mon, 26 Jun 2023 03:39:55 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd29-0000HH-1W for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 03:36:57 +0000 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by se1-gles-flk1.inumbo.com (Halon) with ESMTP id b2367ec0-13d2-11ee-8611-37d641c3527e; Mon, 26 Jun 2023 05:36:55 +0200 (CEST) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id AE1181FB; Sun, 25 Jun 2023 20:37:38 -0700 (PDT) Received: from a011292.shanghai.arm.com (a011292.shanghai.arm.com [10.169.190.94]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id 12A833F64C; Sun, 25 Jun 2023 20:36:51 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: b2367ec0-13d2-11ee-8611-37d641c3527e From: Penny Zheng To: xen-devel@lists.xenproject.org Cc: Penny Zheng , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk , Penny Zheng , Wei Chen Subject: [PATCH v3 34/52] xen/mpu: destroy an existing entry in Xen MPU memory mapping table Date: Mon, 26 Jun 2023 11:34:25 +0800 Message-Id: <20230626033443.2943270-35-Penny.Zheng@arm.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230626033443.2943270-1-Penny.Zheng@arm.com> References: <20230626033443.2943270-1-Penny.Zheng@arm.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit This commit expands xen_mpumap_update/xen_mpumap_update_entry to include destroying an existing entry. We define a new helper "control_xen_mpumap_region_from_index" to enable/disable the MPU region based on index. If region is within [0, 31], we could quickly disable the MPU region through PRENR_EL2 which provides direct access to the PRLAR_EL2.EN bits of EL2 MPU regions. Rignt now, we only support destroying a *WHOLE* MPU memory region, part-region removing is not supported, as in worst case, it will leave two fragments behind. Signed-off-by: Penny Zheng Signed-off-by: Wei Chen --- v3: - make pr_get_base()/pr_get_limit() static inline - need an isb to ensure register write visible before zeroing the entry --- xen/arch/arm/include/asm/arm64/mpu.h | 2 + xen/arch/arm/include/asm/arm64/sysregs.h | 3 + xen/arch/arm/mm.c | 5 ++ xen/arch/arm/mpu/mm.c | 74 ++++++++++++++++++++++++ 4 files changed, 84 insertions(+) diff --git a/xen/arch/arm/include/asm/arm64/mpu.h b/xen/arch/arm/include/asm/arm64/mpu.h index 715ea69884..aee7947223 100644 --- a/xen/arch/arm/include/asm/arm64/mpu.h +++ b/xen/arch/arm/include/asm/arm64/mpu.h @@ -25,6 +25,8 @@ #define REGION_UART_SEL 0x07 #define MPUIR_REGION_MASK ((_AC(1, UL) << 8) - 1) +#define MPU_PRENR_BITS 32 + /* Access permission attributes. */ /* Read/Write at EL2, No Access at EL1/EL0. */ #define AP_RW_EL2 0x0 diff --git a/xen/arch/arm/include/asm/arm64/sysregs.h b/xen/arch/arm/include/asm/arm64/sysregs.h index c8a679afdd..96c025053b 100644 --- a/xen/arch/arm/include/asm/arm64/sysregs.h +++ b/xen/arch/arm/include/asm/arm64/sysregs.h @@ -509,6 +509,9 @@ /* MPU Type registers encode */ #define MPUIR_EL2 S3_4_C0_C0_4 +/* MPU Protection Region Enable Register encode */ +#define PRENR_EL2 S3_4_C6_C1_1 + #endif /* Access to system registers */ diff --git a/xen/arch/arm/mm.c b/xen/arch/arm/mm.c index 8625066256..247d17cfa1 100644 --- a/xen/arch/arm/mm.c +++ b/xen/arch/arm/mm.c @@ -164,7 +164,12 @@ int destroy_xen_mappings(unsigned long s, unsigned long e) ASSERT(IS_ALIGNED(s, PAGE_SIZE)); ASSERT(IS_ALIGNED(e, PAGE_SIZE)); ASSERT(s <= e); +#ifndef CONFIG_HAS_MPU return xen_pt_update(s, INVALID_MFN, (e - s) >> PAGE_SHIFT, 0); +#else + return xen_mpumap_update(virt_to_maddr((void *)s), + virt_to_maddr((void *)e), 0); +#endif } int modify_xen_mappings(unsigned long s, unsigned long e, unsigned int flags) diff --git a/xen/arch/arm/mpu/mm.c b/xen/arch/arm/mpu/mm.c index 0a65b58dc4..a40055ae5e 100644 --- a/xen/arch/arm/mpu/mm.c +++ b/xen/arch/arm/mpu/mm.c @@ -425,6 +425,59 @@ static int mpumap_contain_region(pr_t *table, uint8_t nr_regions, return MPUMAP_REGION_FAILED; } +/* Disable or enable EL2 MPU memory region at index #index */ +static void control_mpu_region_from_index(uint8_t index, bool enable) +{ + pr_t region; + + read_protection_region(®ion, index); + if ( !region_is_valid(®ion) ^ enable ) + { + printk(XENLOG_WARNING + "mpu: MPU memory region[%u] is already %s\n", index, + enable ? "enabled" : "disabled"); + return; + } + + /* + * ARM64v8R provides PRENR_EL2 to have direct access to the + * PRLAR_EL2.EN bits of EL2 MPU regions from 0 to 31. + */ + if ( index < MPU_PRENR_BITS ) + { + uint64_t orig, after; + + orig = READ_SYSREG(PRENR_EL2); + if ( enable ) + /* Set respective bit */ + after = orig | (1UL << index); + else + /* Clear respective bit */ + after = orig & (~(1UL << index)); + WRITE_SYSREG(after, PRENR_EL2); + } + else + { + region.prlar.reg.en = enable ? 1 : 0; + write_protection_region((const pr_t*)®ion, index); + } + /* Ensure the write before zeroing the entry */ + isb(); + + /* Update according bitfield in xen_mpumap_mask */ + spin_lock(&xen_mpumap_alloc_lock); + + if ( enable ) + set_bit(index, xen_mpumap_mask); + else + { + clear_bit(index, xen_mpumap_mask); + memset(&xen_mpumap[index], 0, sizeof(pr_t)); + } + + spin_unlock(&xen_mpumap_alloc_lock); +} + /* * Update an entry in Xen MPU memory region mapping table(xen_mpumap) at * the index @idx. @@ -461,6 +514,27 @@ static int xen_mpumap_update_entry(paddr_t base, paddr_t limit, write_protection_region((const pr_t*)(&xen_mpumap[idx]), idx); } + else + { + /* + * Currently, we only support destroying a *WHOLE* MPU memory region, + * part-region removing is not supported, as in worst case, it will + * leave two fragments behind. + * part-region removing will be introduced only when actual usage + * comes. + */ + if ( rc == MPUMAP_REGION_INCLUSIVE ) + { + region_printk("mpu: part-region removing is not supported\n"); + return -EINVAL; + } + + /* We are removing the region */ + if ( rc != MPUMAP_REGION_FOUND ) + return -EINVAL; + + control_mpu_region_from_index(idx, false); + } return 0; } -- 2.25.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 26 03:40:01 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 03:40:01 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555042.866670 (Exim 4.92) (envelope-from ) id 1qDd57-0001UO-3D; Mon, 26 Jun 2023 03:40:01 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555042.866670; Mon, 26 Jun 2023 03:40:00 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd56-0001P7-7W; Mon, 26 Jun 2023 03:40:00 +0000 Received: by outflank-mailman (input) for mailman id 555042; Mon, 26 Jun 2023 03:39:58 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd0i-0007ej-Ad for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 03:35:28 +0000 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by se1-gles-sth1.inumbo.com (Halon) with ESMTP id 7cebead3-13d2-11ee-b237-6b7b168915f2; Mon, 26 Jun 2023 05:35:25 +0200 (CEST) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 3DF042F4; Sun, 25 Jun 2023 20:36:09 -0700 (PDT) Received: from a011292.shanghai.arm.com (a011292.shanghai.arm.com [10.169.190.94]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id 8C27C3F64C; Sun, 25 Jun 2023 20:35:22 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 7cebead3-13d2-11ee-b237-6b7b168915f2 From: Penny Zheng To: xen-devel@lists.xenproject.org Cc: Penny Zheng , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk , Penny Zheng , Wei Chen Subject: [PATCH v3 06/52] xen/arm: introduce CONFIG_HAS_MMU Date: Mon, 26 Jun 2023 11:33:57 +0800 Message-Id: <20230626033443.2943270-7-Penny.Zheng@arm.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230626033443.2943270-1-Penny.Zheng@arm.com> References: <20230626033443.2943270-1-Penny.Zheng@arm.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit This commit wants to introduce a new Kconfig CONFIG_HAS_MMU to guard MMU-related codes, to tell two different memory management architecture: VMAS and PMSA. In a VMSA system, a Memory Management Unit (MMU) provides fine-grained control of a memory system through a set of virtual to physical address mappings and associated memory properties held in memory-mapped tables known as translation tables. Signed-off-by: Penny Zheng Signed-off-by: Wei Chen --- v3: - new patch --- xen/arch/arm/Kconfig | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/xen/arch/arm/Kconfig b/xen/arch/arm/Kconfig index ff17345cdb..fb77392b82 100644 --- a/xen/arch/arm/Kconfig +++ b/xen/arch/arm/Kconfig @@ -60,6 +60,14 @@ config PADDR_BITS source "arch/Kconfig" +config HAS_MMU + bool "Memory Management Unit support in a VMSA system" + default y + help + In a VMSA system, a Memory Management Unit (MMU) provides fine-grained control of + a memory system through a set of virtual to physical address mappings and associated memory + properties held in memory-mapped tables known as translation tables. + config ACPI bool "ACPI (Advanced Configuration and Power Interface) Support (UNSUPPORTED)" if UNSUPPORTED depends on ARM_64 -- 2.25.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 26 03:40:04 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 03:40:04 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555044.866679 (Exim 4.92) (envelope-from ) id 1qDd59-0002Ak-MV; Mon, 26 Jun 2023 03:40:03 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555044.866679; Mon, 26 Jun 2023 03:40:03 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd58-000263-S1; Mon, 26 Jun 2023 03:40:02 +0000 Received: by outflank-mailman (input) for mailman id 555044; Mon, 26 Jun 2023 03:39:59 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd13-0007ej-Iq for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 03:35:49 +0000 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by se1-gles-sth1.inumbo.com (Halon) with ESMTP id 89a01ff9-13d2-11ee-b237-6b7b168915f2; Mon, 26 Jun 2023 05:35:47 +0200 (CEST) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 8B1991FB; Sun, 25 Jun 2023 20:36:30 -0700 (PDT) Received: from a011292.shanghai.arm.com (a011292.shanghai.arm.com [10.169.190.94]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id D7E4D3F64C; Sun, 25 Jun 2023 20:35:43 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 89a01ff9-13d2-11ee-b237-6b7b168915f2 From: Penny Zheng To: xen-devel@lists.xenproject.org Cc: Wei Chen , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk , Penny Zheng Subject: [PATCH v3 13/52] xen/mmu: extract mmu-specific codes from mm.c/mm.h Date: Mon, 26 Jun 2023 11:34:04 +0800 Message-Id: <20230626033443.2943270-14-Penny.Zheng@arm.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230626033443.2943270-1-Penny.Zheng@arm.com> References: <20230626033443.2943270-1-Penny.Zheng@arm.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit From: Wei Chen To make the code readable and maintainable, we move MMU-specific memory management code from mm.c to mmu/mm.c, arm64/mm.c to arm64/mmu/mm.c, and MMU-specific definitions from mm.h/page.h/setup.h to mmu/mm.h. In order to globally export a few variables/functions for both MMU and later MPU system, We rename them to more generic names, like, init_ttbr -> init_mm, mmu_init_secondary_cpu() -> mm_init_secondary_cpu(), update_identity_mapping() -> update_identity_mm(). As later we will create mpu/mm.h and mpu/mm.c for MPU-specific memory management code, this will avoid lots of #ifdef in memory management code and header files. Signed-off-by: Wei Chen Signed-off-by: Penny Zheng --- v2: - new patch --- v3: - introduce new directories: mmu/ which includes MMU-specific codes - rename init_ttbr to init_mm, mmu_init_secondary_cpu() to mm_init_secondary_cpu(), update_identity_mapping() -> update_identity_mm(). - move mmu-specific function definitions from page.h/setup.h to mmu/mm.h. --- xen/arch/arm/Makefile | 3 + xen/arch/arm/arm32/head.S | 2 +- xen/arch/arm/arm64/Makefile | 2 +- xen/arch/arm/arm64/mmu/head.S | 2 +- xen/arch/arm/arm64/{ => mmu}/mm.c | 7 +- xen/arch/arm/arm64/smpboot.c | 6 +- xen/arch/arm/include/asm/arm64/mm.h | 7 +- xen/arch/arm/include/asm/mm.h | 33 +- xen/arch/arm/include/asm/mmu/mm.h | 54 ++ xen/arch/arm/include/asm/page.h | 15 - xen/arch/arm/include/asm/setup.h | 3 - xen/arch/arm/mm.c | 1102 +------------------------- xen/arch/arm/mmu/mm.c | 1125 +++++++++++++++++++++++++++ xen/arch/arm/smpboot.c | 4 +- 14 files changed, 1216 insertions(+), 1149 deletions(-) rename xen/arch/arm/arm64/{ => mmu}/mm.c (97%) create mode 100644 xen/arch/arm/include/asm/mmu/mm.h create mode 100644 xen/arch/arm/mmu/mm.c diff --git a/xen/arch/arm/Makefile b/xen/arch/arm/Makefile index 7bf07e9920..f825d95e29 100644 --- a/xen/arch/arm/Makefile +++ b/xen/arch/arm/Makefile @@ -36,6 +36,9 @@ obj-y += irq.o obj-y += kernel.init.o obj-$(CONFIG_LIVEPATCH) += livepatch.o obj-y += mem_access.o +ifeq ($(CONFIG_HAS_MMU), y) +obj-y += mmu/mm.o +endif obj-y += mm.o obj-y += monitor.o obj-y += p2m.o diff --git a/xen/arch/arm/arm32/head.S b/xen/arch/arm/arm32/head.S index f9f7be9588..51e7e41a55 100644 --- a/xen/arch/arm/arm32/head.S +++ b/xen/arch/arm/arm32/head.S @@ -243,7 +243,7 @@ secondary_switched: * * XXX: This is not compliant with the Arm Arm. */ - mov_w r4, init_ttbr /* VA of HTTBR value stashed by CPU 0 */ + mov_w r4, init_mm /* VA of HTTBR value stashed by CPU 0 */ ldrd r4, r5, [r4] /* Actual value */ dsb mcrr CP64(r4, r5, HTTBR) diff --git a/xen/arch/arm/arm64/Makefile b/xen/arch/arm/arm64/Makefile index 0c4b177be9..55895ecb53 100644 --- a/xen/arch/arm/arm64/Makefile +++ b/xen/arch/arm/arm64/Makefile @@ -10,10 +10,10 @@ obj-y += entry.o obj-y += head.o ifeq ($(CONFIG_HAS_MMU),y) obj-y += mmu/head.o +obj-y += mmu/mm.o endif obj-y += insn.o obj-$(CONFIG_LIVEPATCH) += livepatch.o -obj-y += mm.o obj-y += smc.o obj-y += smpboot.o obj-$(CONFIG_ARM64_SVE) += sve.o sve-asm.o diff --git a/xen/arch/arm/arm64/mmu/head.S b/xen/arch/arm/arm64/mmu/head.S index 295596aca1..3f3f4be829 100644 --- a/xen/arch/arm/arm64/mmu/head.S +++ b/xen/arch/arm/arm64/mmu/head.S @@ -257,7 +257,7 @@ ENTRY(enable_runtime_mm) /* save return address */ mov x5, lr - load_paddr x0, init_ttbr + load_paddr x0, init_mm ldr x0, [x0] bl enable_mmu mov lr, x5 diff --git a/xen/arch/arm/arm64/mm.c b/xen/arch/arm/arm64/mmu/mm.c similarity index 97% rename from xen/arch/arm/arm64/mm.c rename to xen/arch/arm/arm64/mmu/mm.c index 78b7c7eb00..888ca5d8fc 100644 --- a/xen/arch/arm/arm64/mm.c +++ b/xen/arch/arm/arm64/mmu/mm.c @@ -106,7 +106,7 @@ void __init arch_setup_page_tables(void) prepare_runtime_identity_mapping(); } -void update_identity_mapping(bool enable) +static void update_identity_mapping(bool enable) { paddr_t id_addr = virt_to_maddr(_start); int rc; @@ -120,6 +120,11 @@ void update_identity_mapping(bool enable) BUG_ON(rc); } +void update_mm_mapping(bool enable) +{ + update_identity_mapping(enable); +} + extern void switch_ttbr_id(uint64_t ttbr); typedef void (switch_ttbr_fn)(uint64_t ttbr); diff --git a/xen/arch/arm/arm64/smpboot.c b/xen/arch/arm/arm64/smpboot.c index 9637f42469..2b1d086a1e 100644 --- a/xen/arch/arm/arm64/smpboot.c +++ b/xen/arch/arm/arm64/smpboot.c @@ -111,18 +111,18 @@ int arch_cpu_up(int cpu) if ( !smp_enable_ops[cpu].prepare_cpu ) return -ENODEV; - update_identity_mapping(true); + update_mm_mapping(true); rc = smp_enable_ops[cpu].prepare_cpu(cpu); if ( rc ) - update_identity_mapping(false); + update_mm_mapping(false); return rc; } void arch_cpu_up_finish(void) { - update_identity_mapping(false); + update_mm_mapping(false); } /* diff --git a/xen/arch/arm/include/asm/arm64/mm.h b/xen/arch/arm/include/asm/arm64/mm.h index e0bd23a6ed..edd9601d42 100644 --- a/xen/arch/arm/include/asm/arm64/mm.h +++ b/xen/arch/arm/include/asm/arm64/mm.h @@ -15,13 +15,14 @@ static inline bool arch_mfns_in_directmap(unsigned long mfn, unsigned long nr) void arch_setup_page_tables(void); /* - * Enable/disable the identity mapping in the live page-tables (i.e. - * the one pointed by TTBR_EL2). + * In MMU system, we enable/disable the identity mapping in the live + * page-tables (i.e. the one pointed by TTBR_EL2) through + * update_identity_mapping. * * Note that nested call (e.g. enable=true, enable=true) is not * supported. */ -void update_identity_mapping(bool enable); +void update_mm_mapping(bool enable); #endif /* __ARM_ARM64_MM_H__ */ diff --git a/xen/arch/arm/include/asm/mm.h b/xen/arch/arm/include/asm/mm.h index 4262165ce2..5d890a6a45 100644 --- a/xen/arch/arm/include/asm/mm.h +++ b/xen/arch/arm/include/asm/mm.h @@ -14,6 +14,10 @@ # error "unknown ARM variant" #endif +#ifdef CONFIG_HAS_MMU +#include +#endif + /* Align Xen to a 2 MiB boundary. */ #define XEN_PADDR_ALIGN (1 << 21) @@ -165,13 +169,6 @@ struct page_info #define _PGC_need_scrub _PGC_allocated #define PGC_need_scrub PGC_allocated -extern mfn_t directmap_mfn_start, directmap_mfn_end; -extern vaddr_t directmap_virt_end; -#ifdef CONFIG_ARM_64 -extern vaddr_t directmap_virt_start; -extern unsigned long directmap_base_pdx; -#endif - #ifdef CONFIG_ARM_32 #define is_xen_heap_page(page) is_xen_heap_mfn(page_to_mfn(page)) #define is_xen_heap_mfn(mfn) ({ \ @@ -194,7 +191,6 @@ extern unsigned long directmap_base_pdx; #define maddr_get_owner(ma) (page_get_owner(maddr_to_page((ma)))) -#define frame_table ((struct page_info *)FRAMETABLE_VIRT_START) /* PDX of the first page in the frame table. */ extern unsigned long frametable_base_pdx; @@ -203,25 +199,24 @@ extern unsigned long total_pages; #define PDX_GROUP_SHIFT SECOND_SHIFT +extern uint64_t init_mm; + /* Boot-time pagetable setup */ extern void setup_pagetables(unsigned long boot_phys_offset); /* Map FDT in boot pagetable */ extern void *early_fdt_map(paddr_t fdt_paddr); -/* Switch to a new root page-tables */ -extern void switch_ttbr(uint64_t ttbr); /* Remove early mappings */ extern void remove_early_mappings(void); -/* Allocate and initialise pagetables for a secondary CPU. Sets init_ttbr to the - * new page table */ -extern int init_secondary_pagetables(int cpu); -/* Switch secondary CPUS to its own pagetables and finalise MMU setup */ -extern void mmu_init_secondary_cpu(void); /* - * For Arm32, set up the direct-mapped xenheap: up to 1GB of contiguous, - * always-mapped memory. Base must be 32MB aligned and size a multiple of 32MB. - * For Arm64, map the region in the directmap area. + * Allocate and initialise memory mapping for a secondary CPU. + * Sets init_mm to the new memory mapping table + */ +extern int init_secondary_mm(int cpu); +/* + * Switch secondary CPUS to its own memory mapping tanle + * and finalise MMU/MPU setup */ -extern void setup_directmap_mappings(unsigned long base_mfn, unsigned long nr_mfns); +extern void mm_init_secondary_cpu(void); /* Map a frame table to cover physical addresses ps through pe */ extern void setup_frametable_mappings(paddr_t ps, paddr_t pe); /* map a physical range in virtual memory */ diff --git a/xen/arch/arm/include/asm/mmu/mm.h b/xen/arch/arm/include/asm/mmu/mm.h new file mode 100644 index 0000000000..240410f66e --- /dev/null +++ b/xen/arch/arm/include/asm/mmu/mm.h @@ -0,0 +1,54 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ +#ifndef __ARCH_ARM_MM_MMU__ +#define __ARCH_ARM_MM_MMU__ + +extern mfn_t directmap_mfn_start, directmap_mfn_end; +extern vaddr_t directmap_virt_end; +#ifdef CONFIG_ARM_64 +extern vaddr_t directmap_virt_start; +extern unsigned long directmap_base_pdx; +#endif + +#define frame_table ((struct page_info *)FRAMETABLE_VIRT_START) + +/* + * Print a walk of a page table or p2m + * + * ttbr is the base address register (TTBR0_EL2 or VTTBR_EL2) + * addr is the PA or IPA to translate + * root_level is the starting level of the page table + * (e.g. TCR_EL2.SL0 or VTCR_EL2.SL0 ) + * nr_root_tables is the number of concatenated tables at the root. + * this can only be != 1 for P2M walks starting at the first or + * subsequent level. + */ +void dump_pt_walk(paddr_t ttbr, paddr_t addr, + unsigned int root_level, + unsigned int nr_root_tables); + +/* Find where Xen will be residing at runtime and return a PT entry */ +lpae_t pte_of_xenaddr(vaddr_t); + +/* Switch to a new root page-tables */ +extern void switch_ttbr(uint64_t ttbr); +/* + * For Arm32, set up the direct-mapped xenheap: up to 1GB of contiguous, + * always-mapped memory. Base must be 32MB aligned and size a multiple of 32MB. + * For Arm64, map the region in the directmap area. + */ +extern void setup_directmap_mappings(unsigned long base_mfn, unsigned long nr_mfns); +extern int xen_pt_update(unsigned long virt, mfn_t mfn, + /* const on purpose as it is used for TLB flush */ + const unsigned long nr_mfns, + unsigned int flags); + +#endif /* __ARCH_ARM_MM_MMU__ */ + +/* + * Local variables: + * mode: C + * c-file-style: "BSD" + * c-basic-offset: 4 + * indent-tabs-mode: nil + * End: + */ diff --git a/xen/arch/arm/include/asm/page.h b/xen/arch/arm/include/asm/page.h index e7cd62190c..3893303c8f 100644 --- a/xen/arch/arm/include/asm/page.h +++ b/xen/arch/arm/include/asm/page.h @@ -240,21 +240,6 @@ static inline int clean_and_invalidate_dcache_va_range /* Flush the dcache for an entire page. */ void flush_page_to_ram(unsigned long mfn, bool sync_icache); -/* - * Print a walk of a page table or p2m - * - * ttbr is the base address register (TTBR0_EL2 or VTTBR_EL2) - * addr is the PA or IPA to translate - * root_level is the starting level of the page table - * (e.g. TCR_EL2.SL0 or VTCR_EL2.SL0 ) - * nr_root_tables is the number of concatenated tables at the root. - * this can only be != 1 for P2M walks starting at the first or - * subsequent level. - */ -void dump_pt_walk(paddr_t ttbr, paddr_t addr, - unsigned int root_level, - unsigned int nr_root_tables); - /* Print a walk of the hypervisor's page tables for a virtual addr. */ extern void dump_hyp_walk(vaddr_t addr); /* Print a walk of the p2m for a domain for a physical address. */ diff --git a/xen/arch/arm/include/asm/setup.h b/xen/arch/arm/include/asm/setup.h index 19dc637d55..f0f64d228c 100644 --- a/xen/arch/arm/include/asm/setup.h +++ b/xen/arch/arm/include/asm/setup.h @@ -176,9 +176,6 @@ extern lpae_t boot_first_id[XEN_PT_LPAE_ENTRIES]; extern lpae_t boot_second_id[XEN_PT_LPAE_ENTRIES]; extern lpae_t boot_third_id[XEN_PT_LPAE_ENTRIES]; -/* Find where Xen will be residing at runtime and return a PT entry */ -lpae_t pte_of_xenaddr(vaddr_t); - extern const char __ro_after_init_start[], __ro_after_init_end[]; struct init_info diff --git a/xen/arch/arm/mm.c b/xen/arch/arm/mm.c index e460249736..e665d1f97a 100644 --- a/xen/arch/arm/mm.c +++ b/xen/arch/arm/mm.c @@ -15,16 +15,12 @@ #include #include #include -#include -#include -#include #include #include #include #include -#include #include #include @@ -32,104 +28,9 @@ /* Override macros from asm/page.h to make them work with mfn_t */ #undef virt_to_mfn #define virt_to_mfn(va) _mfn(__virt_to_mfn(va)) -#undef mfn_to_virt -#define mfn_to_virt(mfn) __mfn_to_virt(mfn_x(mfn)) -#ifdef NDEBUG -static inline void -__attribute__ ((__format__ (__printf__, 1, 2))) -mm_printk(const char *fmt, ...) {} -#else -#define mm_printk(fmt, args...) \ - do \ - { \ - dprintk(XENLOG_ERR, fmt, ## args); \ - WARN(); \ - } while (0) -#endif - -/* Static start-of-day pagetables that we use before the allocators - * are up. These are used by all CPUs during bringup before switching - * to the CPUs own pagetables. - * - * These pagetables have a very simple structure. They include: - * - 2MB worth of 4K mappings of xen at XEN_VIRT_START, boot_first and - * boot_second are used to populate the tables down to boot_third - * which contains the actual mapping. - * - a 1:1 mapping of xen at its current physical address. This uses a - * section mapping at whichever of boot_{pgtable,first,second} - * covers that physical address. - * - * For the boot CPU these mappings point to the address where Xen was - * loaded by the bootloader. For secondary CPUs they point to the - * relocated copy of Xen for the benefit of secondary CPUs. - * - * In addition to the above for the boot CPU the device-tree is - * initially mapped in the boot misc slot. This mapping is not present - * for secondary CPUs. - * - * Finally, if EARLY_PRINTK is enabled then xen_fixmap will be mapped - * by the CPU once it has moved off the 1:1 mapping. - */ -DEFINE_BOOT_PAGE_TABLE(boot_pgtable); -#ifdef CONFIG_ARM_64 -DEFINE_BOOT_PAGE_TABLE(boot_first); -DEFINE_BOOT_PAGE_TABLE(boot_first_id); -#endif -DEFINE_BOOT_PAGE_TABLE(boot_second_id); -DEFINE_BOOT_PAGE_TABLE(boot_third_id); -DEFINE_BOOT_PAGE_TABLE(boot_second); -DEFINE_BOOT_PAGE_TABLE(boot_third); - -/* Main runtime page tables */ - -/* - * For arm32 xen_pgtable are per-PCPU and are allocated before - * bringing up each CPU. For arm64 xen_pgtable is common to all PCPUs. - * - * xen_second, xen_fixmap and xen_xenmap are always shared between all - * PCPUs. - */ - -#ifdef CONFIG_ARM_64 -#define HYP_PT_ROOT_LEVEL 0 -DEFINE_PAGE_TABLE(xen_pgtable); -static DEFINE_PAGE_TABLE(xen_first); -#define THIS_CPU_PGTABLE xen_pgtable -#else -#define HYP_PT_ROOT_LEVEL 1 -/* Per-CPU pagetable pages */ -/* xen_pgtable == root of the trie (zeroeth level on 64-bit, first on 32-bit) */ -DEFINE_PER_CPU(lpae_t *, xen_pgtable); -#define THIS_CPU_PGTABLE this_cpu(xen_pgtable) -/* Root of the trie for cpu0, other CPU's PTs are dynamically allocated */ -static DEFINE_PAGE_TABLE(cpu0_pgtable); -#endif - -/* Common pagetable leaves */ -/* Second level page table used to cover Xen virtual address space */ -static DEFINE_PAGE_TABLE(xen_second); -/* Third level page table used for fixmap */ -DEFINE_BOOT_PAGE_TABLE(xen_fixmap); -/* - * Third level page table used to map Xen itself with the XN bit set - * as appropriate. - */ -static DEFINE_PAGE_TABLE(xen_xenmap); - -/* Non-boot CPUs use this to find the correct pagetables. */ -uint64_t init_ttbr; - -static paddr_t phys_offset; - -/* Limits of the Xen heap */ -mfn_t directmap_mfn_start __read_mostly = INVALID_MFN_INITIALIZER; -mfn_t directmap_mfn_end __read_mostly; -vaddr_t directmap_virt_end __read_mostly; -#ifdef CONFIG_ARM_64 -vaddr_t directmap_virt_start __read_mostly; -unsigned long directmap_base_pdx __read_mostly; -#endif +/* Non-boot CPUs use this to find the correct memory mapping table. */ +uint64_t init_mm; unsigned long frametable_base_pdx __read_mostly; unsigned long frametable_virt_end __read_mostly; @@ -139,243 +40,6 @@ unsigned long total_pages; extern char __init_begin[], __init_end[]; -/* Checking VA memory layout alignment. */ -static void __init __maybe_unused build_assertions(void) -{ - /* 2MB aligned regions */ - BUILD_BUG_ON(XEN_VIRT_START & ~SECOND_MASK); - BUILD_BUG_ON(FIXMAP_ADDR(0) & ~SECOND_MASK); - /* 1GB aligned regions */ -#ifdef CONFIG_ARM_32 - BUILD_BUG_ON(XENHEAP_VIRT_START & ~FIRST_MASK); -#else - BUILD_BUG_ON(DIRECTMAP_VIRT_START & ~FIRST_MASK); -#endif - /* Page table structure constraints */ -#ifdef CONFIG_ARM_64 - /* - * The first few slots of the L0 table is reserved for the identity - * mapping. Check that none of the other regions are overlapping - * with it. - */ -#define CHECK_OVERLAP_WITH_IDMAP(virt) \ - BUILD_BUG_ON(zeroeth_table_offset(virt) < IDENTITY_MAPPING_AREA_NR_L0) - - CHECK_OVERLAP_WITH_IDMAP(XEN_VIRT_START); - CHECK_OVERLAP_WITH_IDMAP(VMAP_VIRT_START); - CHECK_OVERLAP_WITH_IDMAP(FRAMETABLE_VIRT_START); - CHECK_OVERLAP_WITH_IDMAP(DIRECTMAP_VIRT_START); -#undef CHECK_OVERLAP_WITH_IDMAP -#endif - BUILD_BUG_ON(first_table_offset(XEN_VIRT_START)); -#ifdef CONFIG_ARCH_MAP_DOMAIN_PAGE - BUILD_BUG_ON(DOMHEAP_VIRT_START & ~FIRST_MASK); -#endif - /* - * The boot code expects the regions XEN_VIRT_START, FIXMAP_ADDR(0), - * BOOT_FDT_VIRT_START to use the same 0th (arm64 only) and 1st - * slot in the page tables. - */ -#define CHECK_SAME_SLOT(level, virt1, virt2) \ - BUILD_BUG_ON(level##_table_offset(virt1) != level##_table_offset(virt2)) - -#define CHECK_DIFFERENT_SLOT(level, virt1, virt2) \ - BUILD_BUG_ON(level##_table_offset(virt1) == level##_table_offset(virt2)) - -#ifdef CONFIG_ARM_64 - CHECK_SAME_SLOT(zeroeth, XEN_VIRT_START, FIXMAP_ADDR(0)); - CHECK_SAME_SLOT(zeroeth, XEN_VIRT_START, BOOT_FDT_VIRT_START); -#endif - CHECK_SAME_SLOT(first, XEN_VIRT_START, FIXMAP_ADDR(0)); - CHECK_SAME_SLOT(first, XEN_VIRT_START, BOOT_FDT_VIRT_START); - - /* - * For arm32, the temporary mapping will re-use the domheap - * first slot and the second slots will match. - */ -#ifdef CONFIG_ARM_32 - CHECK_SAME_SLOT(first, TEMPORARY_XEN_VIRT_START, DOMHEAP_VIRT_START); - CHECK_DIFFERENT_SLOT(first, XEN_VIRT_START, TEMPORARY_XEN_VIRT_START); - CHECK_SAME_SLOT(second, XEN_VIRT_START, TEMPORARY_XEN_VIRT_START); -#endif - -#undef CHECK_SAME_SLOT -#undef CHECK_DIFFERENT_SLOT -} - -static lpae_t *xen_map_table(mfn_t mfn) -{ - /* - * During early boot, map_domain_page() may be unusable. Use the - * PMAP to map temporarily a page-table. - */ - if ( system_state == SYS_STATE_early_boot ) - return pmap_map(mfn); - - return map_domain_page(mfn); -} - -static void xen_unmap_table(const lpae_t *table) -{ - /* - * During early boot, xen_map_table() will not use map_domain_page() - * but the PMAP. - */ - if ( system_state == SYS_STATE_early_boot ) - pmap_unmap(table); - else - unmap_domain_page(table); -} - -void dump_pt_walk(paddr_t ttbr, paddr_t addr, - unsigned int root_level, - unsigned int nr_root_tables) -{ - static const char *level_strs[4] = { "0TH", "1ST", "2ND", "3RD" }; - const mfn_t root_mfn = maddr_to_mfn(ttbr); - DECLARE_OFFSETS(offsets, addr); - lpae_t pte, *mapping; - unsigned int level, root_table; - -#ifdef CONFIG_ARM_32 - BUG_ON(root_level < 1); -#endif - BUG_ON(root_level > 3); - - if ( nr_root_tables > 1 ) - { - /* - * Concatenated root-level tables. The table number will be - * the offset at the previous level. It is not possible to - * concatenate a level-0 root. - */ - BUG_ON(root_level == 0); - root_table = offsets[root_level - 1]; - printk("Using concatenated root table %u\n", root_table); - if ( root_table >= nr_root_tables ) - { - printk("Invalid root table offset\n"); - return; - } - } - else - root_table = 0; - - mapping = xen_map_table(mfn_add(root_mfn, root_table)); - - for ( level = root_level; ; level++ ) - { - if ( offsets[level] > XEN_PT_LPAE_ENTRIES ) - break; - - pte = mapping[offsets[level]]; - - printk("%s[0x%03x] = 0x%"PRIx64"\n", - level_strs[level], offsets[level], pte.bits); - - if ( level == 3 || !pte.walk.valid || !pte.walk.table ) - break; - - /* For next iteration */ - xen_unmap_table(mapping); - mapping = xen_map_table(lpae_get_mfn(pte)); - } - - xen_unmap_table(mapping); -} - -void dump_hyp_walk(vaddr_t addr) -{ - uint64_t ttbr = READ_SYSREG64(TTBR0_EL2); - - printk("Walking Hypervisor VA 0x%"PRIvaddr" " - "on CPU%d via TTBR 0x%016"PRIx64"\n", - addr, smp_processor_id(), ttbr); - - dump_pt_walk(ttbr, addr, HYP_PT_ROOT_LEVEL, 1); -} - -lpae_t mfn_to_xen_entry(mfn_t mfn, unsigned int attr) -{ - lpae_t e = (lpae_t) { - .pt = { - .valid = 1, /* Mappings are present */ - .table = 0, /* Set to 1 for links and 4k maps */ - .ai = attr, - .ns = 1, /* Hyp mode is in the non-secure world */ - .up = 1, /* See below */ - .ro = 0, /* Assume read-write */ - .af = 1, /* No need for access tracking */ - .ng = 1, /* Makes TLB flushes easier */ - .contig = 0, /* Assume non-contiguous */ - .xn = 1, /* No need to execute outside .text */ - .avail = 0, /* Reference count for domheap mapping */ - }}; - /* - * For EL2 stage-1 page table, up (aka AP[1]) is RES1 as the translation - * regime applies to only one exception level (see D4.4.4 and G4.6.1 - * in ARM DDI 0487B.a). If this changes, remember to update the - * hard-coded values in head.S too. - */ - - switch ( attr ) - { - case MT_NORMAL_NC: - /* - * ARM ARM: Overlaying the shareability attribute (DDI - * 0406C.b B3-1376 to 1377) - * - * A memory region with a resultant memory type attribute of Normal, - * and a resultant cacheability attribute of Inner Non-cacheable, - * Outer Non-cacheable, must have a resultant shareability attribute - * of Outer Shareable, otherwise shareability is UNPREDICTABLE. - * - * On ARMv8 sharability is ignored and explicitly treated as Outer - * Shareable for Normal Inner Non_cacheable, Outer Non-cacheable. - */ - e.pt.sh = LPAE_SH_OUTER; - break; - case MT_DEVICE_nGnRnE: - case MT_DEVICE_nGnRE: - /* - * Shareability is ignored for non-Normal memory, Outer is as - * good as anything. - * - * On ARMv8 sharability is ignored and explicitly treated as Outer - * Shareable for any device memory type. - */ - e.pt.sh = LPAE_SH_OUTER; - break; - default: - e.pt.sh = LPAE_SH_INNER; /* Xen mappings are SMP coherent */ - break; - } - - ASSERT(!(mfn_to_maddr(mfn) & ~PADDR_MASK)); - - lpae_set_mfn(e, mfn); - - return e; -} - -/* Map a 4k page in a fixmap entry */ -void set_fixmap(unsigned int map, mfn_t mfn, unsigned int flags) -{ - int res; - - res = map_pages_to_xen(FIXMAP_ADDR(map), mfn, 1, flags); - BUG_ON(res != 0); -} - -/* Remove a mapping from a fixmap entry */ -void clear_fixmap(unsigned int map) -{ - int res; - - res = destroy_xen_mappings(FIXMAP_ADDR(map), FIXMAP_ADDR(map) + PAGE_SIZE); - BUG_ON(res != 0); -} - void flush_page_to_ram(unsigned long mfn, bool sync_icache) { void *v = map_domain_page(_mfn(mfn)); @@ -395,13 +59,6 @@ void flush_page_to_ram(unsigned long mfn, bool sync_icache) invalidate_icache(); } -lpae_t pte_of_xenaddr(vaddr_t va) -{ - paddr_t ma = va + phys_offset; - - return mfn_to_xen_entry(maddr_to_mfn(ma), MT_NORMAL); -} - void * __init early_fdt_map(paddr_t fdt_paddr) { /* We are using 2MB superpage for mapping the FDT */ @@ -455,761 +112,11 @@ void * __init early_fdt_map(paddr_t fdt_paddr) return fdt_virt; } -void __init remove_early_mappings(void) -{ - int rc; - - /* destroy the _PAGE_BLOCK mapping */ - rc = modify_xen_mappings(BOOT_FDT_VIRT_START, - BOOT_FDT_VIRT_START + BOOT_FDT_VIRT_SIZE, - _PAGE_BLOCK); - BUG_ON(rc); -} - -/* - * After boot, Xen page-tables should not contain mapping that are both - * Writable and eXecutables. - * - * This should be called on each CPU to enforce the policy. - */ -static void xen_pt_enforce_wnx(void) -{ - WRITE_SYSREG(READ_SYSREG(SCTLR_EL2) | SCTLR_Axx_ELx_WXN, SCTLR_EL2); - /* - * The TLBs may cache SCTLR_EL2.WXN. So ensure it is synchronized - * before flushing the TLBs. - */ - isb(); - flush_xen_tlb_local(); -} - -/* Clear a translation table and clean & invalidate the cache */ -static void clear_table(void *table) -{ - clear_page(table); - clean_and_invalidate_dcache_va_range(table, PAGE_SIZE); -} - -/* Boot-time pagetable setup. - * Changes here may need matching changes in head.S */ -void __init setup_pagetables(unsigned long boot_phys_offset) -{ - uint64_t ttbr; - lpae_t pte, *p; - int i; - - phys_offset = boot_phys_offset; - - arch_setup_page_tables(); - -#ifdef CONFIG_ARM_64 - pte = pte_of_xenaddr((uintptr_t)xen_first); - pte.pt.table = 1; - pte.pt.xn = 0; - xen_pgtable[zeroeth_table_offset(XEN_VIRT_START)] = pte; - - p = (void *) xen_first; -#else - p = (void *) cpu0_pgtable; -#endif - - /* Map xen second level page-table */ - p[0] = pte_of_xenaddr((uintptr_t)(xen_second)); - p[0].pt.table = 1; - p[0].pt.xn = 0; - - /* Break up the Xen mapping into 4k pages and protect them separately. */ - for ( i = 0; i < XEN_PT_LPAE_ENTRIES; i++ ) - { - vaddr_t va = XEN_VIRT_START + (i << PAGE_SHIFT); - - if ( !is_kernel(va) ) - break; - pte = pte_of_xenaddr(va); - pte.pt.table = 1; /* 4k mappings always have this bit set */ - if ( is_kernel_text(va) || is_kernel_inittext(va) ) - { - pte.pt.xn = 0; - pte.pt.ro = 1; - } - if ( is_kernel_rodata(va) ) - pte.pt.ro = 1; - xen_xenmap[i] = pte; - } - - /* Initialise xen second level entries ... */ - /* ... Xen's text etc */ - - pte = pte_of_xenaddr((vaddr_t)xen_xenmap); - pte.pt.table = 1; - xen_second[second_table_offset(XEN_VIRT_START)] = pte; - - /* ... Fixmap */ - pte = pte_of_xenaddr((vaddr_t)xen_fixmap); - pte.pt.table = 1; - xen_second[second_table_offset(FIXMAP_ADDR(0))] = pte; - -#ifdef CONFIG_ARM_64 - ttbr = (uintptr_t) xen_pgtable + phys_offset; -#else - ttbr = (uintptr_t) cpu0_pgtable + phys_offset; -#endif - - switch_ttbr(ttbr); - - xen_pt_enforce_wnx(); - -#ifdef CONFIG_ARM_32 - per_cpu(xen_pgtable, 0) = cpu0_pgtable; -#endif -} - -static void clear_boot_pagetables(void) -{ - /* - * Clear the copy of the boot pagetables. Each secondary CPU - * rebuilds these itself (see head.S). - */ - clear_table(boot_pgtable); -#ifdef CONFIG_ARM_64 - clear_table(boot_first); - clear_table(boot_first_id); -#endif - clear_table(boot_second); - clear_table(boot_third); -} - -#ifdef CONFIG_ARM_64 -int init_secondary_pagetables(int cpu) -{ - clear_boot_pagetables(); - - /* Set init_ttbr for this CPU coming up. All CPus share a single setof - * pagetables, but rewrite it each time for consistency with 32 bit. */ - init_ttbr = (uintptr_t) xen_pgtable + phys_offset; - clean_dcache(init_ttbr); - return 0; -} -#else -int init_secondary_pagetables(int cpu) -{ - lpae_t *first; - - first = alloc_xenheap_page(); /* root == first level on 32-bit 3-level trie */ - - if ( !first ) - { - printk("CPU%u: Unable to allocate the first page-table\n", cpu); - return -ENOMEM; - } - - /* Initialise root pagetable from root of boot tables */ - memcpy(first, cpu0_pgtable, PAGE_SIZE); - per_cpu(xen_pgtable, cpu) = first; - - if ( !init_domheap_mappings(cpu) ) - { - printk("CPU%u: Unable to prepare the domheap page-tables\n", cpu); - per_cpu(xen_pgtable, cpu) = NULL; - free_xenheap_page(first); - return -ENOMEM; - } - - clear_boot_pagetables(); - - /* Set init_ttbr for this CPU coming up */ - init_ttbr = __pa(first); - clean_dcache(init_ttbr); - - return 0; -} -#endif - -/* MMU setup for secondary CPUS (which already have paging enabled) */ -void mmu_init_secondary_cpu(void) -{ - xen_pt_enforce_wnx(); -} - -#ifdef CONFIG_ARM_32 -/* - * Set up the direct-mapped xenheap: - * up to 1GB of contiguous, always-mapped memory. - */ -void __init setup_directmap_mappings(unsigned long base_mfn, - unsigned long nr_mfns) -{ - int rc; - - rc = map_pages_to_xen(XENHEAP_VIRT_START, _mfn(base_mfn), nr_mfns, - PAGE_HYPERVISOR_RW | _PAGE_BLOCK); - if ( rc ) - panic("Unable to setup the directmap mappings.\n"); - - /* Record where the directmap is, for translation routines. */ - directmap_virt_end = XENHEAP_VIRT_START + nr_mfns * PAGE_SIZE; -} -#else /* CONFIG_ARM_64 */ -/* Map the region in the directmap area. */ -void __init setup_directmap_mappings(unsigned long base_mfn, - unsigned long nr_mfns) -{ - int rc; - - /* First call sets the directmap physical and virtual offset. */ - if ( mfn_eq(directmap_mfn_start, INVALID_MFN) ) - { - unsigned long mfn_gb = base_mfn & ~((FIRST_SIZE >> PAGE_SHIFT) - 1); - - directmap_mfn_start = _mfn(base_mfn); - directmap_base_pdx = mfn_to_pdx(_mfn(base_mfn)); - /* - * The base address may not be aligned to the first level - * size (e.g. 1GB when using 4KB pages). This would prevent - * superpage mappings for all the regions because the virtual - * address and machine address should both be suitably aligned. - * - * Prevent that by offsetting the start of the directmap virtual - * address. - */ - directmap_virt_start = DIRECTMAP_VIRT_START + - (base_mfn - mfn_gb) * PAGE_SIZE; - } - - if ( base_mfn < mfn_x(directmap_mfn_start) ) - panic("cannot add directmap mapping at %lx below heap start %lx\n", - base_mfn, mfn_x(directmap_mfn_start)); - - rc = map_pages_to_xen((vaddr_t)__mfn_to_virt(base_mfn), - _mfn(base_mfn), nr_mfns, - PAGE_HYPERVISOR_RW | _PAGE_BLOCK); - if ( rc ) - panic("Unable to setup the directmap mappings.\n"); -} -#endif - -/* Map a frame table to cover physical addresses ps through pe */ -void __init setup_frametable_mappings(paddr_t ps, paddr_t pe) -{ - unsigned long nr_pdxs = mfn_to_pdx(mfn_add(maddr_to_mfn(pe), -1)) - - mfn_to_pdx(maddr_to_mfn(ps)) + 1; - unsigned long frametable_size = nr_pdxs * sizeof(struct page_info); - mfn_t base_mfn; - const unsigned long mapping_size = frametable_size < MB(32) ? MB(2) : MB(32); - int rc; - - /* - * The size of paddr_t should be sufficient for the complete range of - * physical address. - */ - BUILD_BUG_ON((sizeof(paddr_t) * BITS_PER_BYTE) < PADDR_BITS); - BUILD_BUG_ON(sizeof(struct page_info) != PAGE_INFO_SIZE); - - if ( frametable_size > FRAMETABLE_SIZE ) - panic("The frametable cannot cover the physical region %#"PRIpaddr" - %#"PRIpaddr"\n", - ps, pe); - - frametable_base_pdx = mfn_to_pdx(maddr_to_mfn(ps)); - /* Round up to 2M or 32M boundary, as appropriate. */ - frametable_size = ROUNDUP(frametable_size, mapping_size); - base_mfn = alloc_boot_pages(frametable_size >> PAGE_SHIFT, 32<<(20-12)); - - rc = map_pages_to_xen(FRAMETABLE_VIRT_START, base_mfn, - frametable_size >> PAGE_SHIFT, - PAGE_HYPERVISOR_RW | _PAGE_BLOCK); - if ( rc ) - panic("Unable to setup the frametable mappings.\n"); - - memset(&frame_table[0], 0, nr_pdxs * sizeof(struct page_info)); - memset(&frame_table[nr_pdxs], -1, - frametable_size - (nr_pdxs * sizeof(struct page_info))); - - frametable_virt_end = FRAMETABLE_VIRT_START + (nr_pdxs * sizeof(struct page_info)); -} - -void *__init arch_vmap_virt_end(void) -{ - return (void *)(VMAP_VIRT_START + VMAP_VIRT_SIZE); -} - -/* - * This function should only be used to remap device address ranges - * TODO: add a check to verify this assumption - */ -void *ioremap_attr(paddr_t pa, size_t len, unsigned int attributes) -{ - mfn_t mfn = _mfn(PFN_DOWN(pa)); - unsigned int offs = pa & (PAGE_SIZE - 1); - unsigned int nr = PFN_UP(offs + len); - void *ptr = __vmap(&mfn, nr, 1, 1, attributes, VMAP_DEFAULT); - - if ( ptr == NULL ) - return NULL; - - return ptr + offs; -} - void *ioremap(paddr_t pa, size_t len) { return ioremap_attr(pa, len, PAGE_HYPERVISOR_NOCACHE); } -static int create_xen_table(lpae_t *entry) -{ - mfn_t mfn; - void *p; - lpae_t pte; - - if ( system_state != SYS_STATE_early_boot ) - { - struct page_info *pg = alloc_domheap_page(NULL, 0); - - if ( pg == NULL ) - return -ENOMEM; - - mfn = page_to_mfn(pg); - } - else - mfn = alloc_boot_pages(1, 1); - - p = xen_map_table(mfn); - clear_page(p); - xen_unmap_table(p); - - pte = mfn_to_xen_entry(mfn, MT_NORMAL); - pte.pt.table = 1; - write_pte(entry, pte); - - return 0; -} - -#define XEN_TABLE_MAP_FAILED 0 -#define XEN_TABLE_SUPER_PAGE 1 -#define XEN_TABLE_NORMAL_PAGE 2 - -/* - * Take the currently mapped table, find the corresponding entry, - * and map the next table, if available. - * - * The read_only parameters indicates whether intermediate tables should - * be allocated when not present. - * - * Return values: - * XEN_TABLE_MAP_FAILED: Either read_only was set and the entry - * was empty, or allocating a new page failed. - * XEN_TABLE_NORMAL_PAGE: next level mapped normally - * XEN_TABLE_SUPER_PAGE: The next entry points to a superpage. - */ -static int xen_pt_next_level(bool read_only, unsigned int level, - lpae_t **table, unsigned int offset) -{ - lpae_t *entry; - int ret; - mfn_t mfn; - - entry = *table + offset; - - if ( !lpae_is_valid(*entry) ) - { - if ( read_only ) - return XEN_TABLE_MAP_FAILED; - - ret = create_xen_table(entry); - if ( ret ) - return XEN_TABLE_MAP_FAILED; - } - - /* The function xen_pt_next_level is never called at the 3rd level */ - if ( lpae_is_mapping(*entry, level) ) - return XEN_TABLE_SUPER_PAGE; - - mfn = lpae_get_mfn(*entry); - - xen_unmap_table(*table); - *table = xen_map_table(mfn); - - return XEN_TABLE_NORMAL_PAGE; -} - -/* Sanity check of the entry */ -static bool xen_pt_check_entry(lpae_t entry, mfn_t mfn, unsigned int level, - unsigned int flags) -{ - /* Sanity check when modifying an entry. */ - if ( (flags & _PAGE_PRESENT) && mfn_eq(mfn, INVALID_MFN) ) - { - /* We don't allow modifying an invalid entry. */ - if ( !lpae_is_valid(entry) ) - { - mm_printk("Modifying invalid entry is not allowed.\n"); - return false; - } - - /* We don't allow modifying a table entry */ - if ( !lpae_is_mapping(entry, level) ) - { - mm_printk("Modifying a table entry is not allowed.\n"); - return false; - } - - /* We don't allow changing memory attributes. */ - if ( entry.pt.ai != PAGE_AI_MASK(flags) ) - { - mm_printk("Modifying memory attributes is not allowed (0x%x -> 0x%x).\n", - entry.pt.ai, PAGE_AI_MASK(flags)); - return false; - } - - /* We don't allow modifying entry with contiguous bit set. */ - if ( entry.pt.contig ) - { - mm_printk("Modifying entry with contiguous bit set is not allowed.\n"); - return false; - } - } - /* Sanity check when inserting a mapping */ - else if ( flags & _PAGE_PRESENT ) - { - /* We should be here with a valid MFN. */ - ASSERT(!mfn_eq(mfn, INVALID_MFN)); - - /* - * We don't allow replacing any valid entry. - * - * Note that the function xen_pt_update() relies on this - * assumption and will skip the TLB flush. The function will need - * to be updated if the check is relaxed. - */ - if ( lpae_is_valid(entry) ) - { - if ( lpae_is_mapping(entry, level) ) - mm_printk("Changing MFN for a valid entry is not allowed (%#"PRI_mfn" -> %#"PRI_mfn").\n", - mfn_x(lpae_get_mfn(entry)), mfn_x(mfn)); - else - mm_printk("Trying to replace a table with a mapping.\n"); - return false; - } - } - /* Sanity check when removing a mapping. */ - else if ( (flags & (_PAGE_PRESENT|_PAGE_POPULATE)) == 0 ) - { - /* We should be here with an invalid MFN. */ - ASSERT(mfn_eq(mfn, INVALID_MFN)); - - /* We don't allow removing a table */ - if ( lpae_is_table(entry, level) ) - { - mm_printk("Removing a table is not allowed.\n"); - return false; - } - - /* We don't allow removing a mapping with contiguous bit set. */ - if ( entry.pt.contig ) - { - mm_printk("Removing entry with contiguous bit set is not allowed.\n"); - return false; - } - } - /* Sanity check when populating the page-table. No check so far. */ - else - { - ASSERT(flags & _PAGE_POPULATE); - /* We should be here with an invalid MFN */ - ASSERT(mfn_eq(mfn, INVALID_MFN)); - } - - return true; -} - -/* Update an entry at the level @target. */ -static int xen_pt_update_entry(mfn_t root, unsigned long virt, - mfn_t mfn, unsigned int target, - unsigned int flags) -{ - int rc; - unsigned int level; - lpae_t *table; - /* - * The intermediate page tables are read-only when the MFN is not valid - * and we are not populating page table. - * This means we either modify permissions or remove an entry. - */ - bool read_only = mfn_eq(mfn, INVALID_MFN) && !(flags & _PAGE_POPULATE); - lpae_t pte, *entry; - - /* convenience aliases */ - DECLARE_OFFSETS(offsets, (paddr_t)virt); - - /* _PAGE_POPULATE and _PAGE_PRESENT should never be set together. */ - ASSERT((flags & (_PAGE_POPULATE|_PAGE_PRESENT)) != (_PAGE_POPULATE|_PAGE_PRESENT)); - - table = xen_map_table(root); - for ( level = HYP_PT_ROOT_LEVEL; level < target; level++ ) - { - rc = xen_pt_next_level(read_only, level, &table, offsets[level]); - if ( rc == XEN_TABLE_MAP_FAILED ) - { - /* - * We are here because xen_pt_next_level has failed to map - * the intermediate page table (e.g the table does not exist - * and the pt is read-only). It is a valid case when - * removing a mapping as it may not exist in the page table. - * In this case, just ignore it. - */ - if ( flags & (_PAGE_PRESENT|_PAGE_POPULATE) ) - { - mm_printk("%s: Unable to map level %u\n", __func__, level); - rc = -ENOENT; - goto out; - } - else - { - rc = 0; - goto out; - } - } - else if ( rc != XEN_TABLE_NORMAL_PAGE ) - break; - } - - if ( level != target ) - { - mm_printk("%s: Shattering superpage is not supported\n", __func__); - rc = -EOPNOTSUPP; - goto out; - } - - entry = table + offsets[level]; - - rc = -EINVAL; - if ( !xen_pt_check_entry(*entry, mfn, level, flags) ) - goto out; - - /* If we are only populating page-table, then we are done. */ - rc = 0; - if ( flags & _PAGE_POPULATE ) - goto out; - - /* We are removing the page */ - if ( !(flags & _PAGE_PRESENT) ) - memset(&pte, 0x00, sizeof(pte)); - else - { - /* We are inserting a mapping => Create new pte. */ - if ( !mfn_eq(mfn, INVALID_MFN) ) - { - pte = mfn_to_xen_entry(mfn, PAGE_AI_MASK(flags)); - - /* - * First and second level pages set pte.pt.table = 0, but - * third level entries set pte.pt.table = 1. - */ - pte.pt.table = (level == 3); - } - else /* We are updating the permission => Copy the current pte. */ - pte = *entry; - - /* Set permission */ - pte.pt.ro = PAGE_RO_MASK(flags); - pte.pt.xn = PAGE_XN_MASK(flags); - /* Set contiguous bit */ - pte.pt.contig = !!(flags & _PAGE_CONTIG); - } - - write_pte(entry, pte); - - rc = 0; - -out: - xen_unmap_table(table); - - return rc; -} - -/* Return the level where mapping should be done */ -static int xen_pt_mapping_level(unsigned long vfn, mfn_t mfn, unsigned long nr, - unsigned int flags) -{ - unsigned int level; - unsigned long mask; - - /* - * Don't take into account the MFN when removing mapping (i.e - * MFN_INVALID) to calculate the correct target order. - * - * Per the Arm Arm, `vfn` and `mfn` must be both superpage aligned. - * They are or-ed together and then checked against the size of - * each level. - * - * `left` is not included and checked separately to allow - * superpage mapping even if it is not properly aligned (the - * user may have asked to map 2MB + 4k). - */ - mask = !mfn_eq(mfn, INVALID_MFN) ? mfn_x(mfn) : 0; - mask |= vfn; - - /* - * Always use level 3 mapping unless the caller request block - * mapping. - */ - if ( likely(!(flags & _PAGE_BLOCK)) ) - level = 3; - else if ( !(mask & (BIT(FIRST_ORDER, UL) - 1)) && - (nr >= BIT(FIRST_ORDER, UL)) ) - level = 1; - else if ( !(mask & (BIT(SECOND_ORDER, UL) - 1)) && - (nr >= BIT(SECOND_ORDER, UL)) ) - level = 2; - else - level = 3; - - return level; -} - -#define XEN_PT_4K_NR_CONTIG 16 - -/* - * Check whether the contiguous bit can be set. Return the number of - * contiguous entry allowed. If not allowed, return 1. - */ -static unsigned int xen_pt_check_contig(unsigned long vfn, mfn_t mfn, - unsigned int level, unsigned long left, - unsigned int flags) -{ - unsigned long nr_contig; - - /* - * Allow the contiguous bit to set when the caller requests block - * mapping. - */ - if ( !(flags & _PAGE_BLOCK) ) - return 1; - - /* - * We don't allow to remove mapping with the contiguous bit set. - * So shortcut the logic and directly return 1. - */ - if ( mfn_eq(mfn, INVALID_MFN) ) - return 1; - - /* - * The number of contiguous entries varies depending on the page - * granularity used. The logic below assumes 4KB. - */ - BUILD_BUG_ON(PAGE_SIZE != SZ_4K); - - /* - * In order to enable the contiguous bit, we should have enough entries - * to map left and both the virtual and physical address should be - * aligned to the size of 16 translation tables entries. - */ - nr_contig = BIT(XEN_PT_LEVEL_ORDER(level), UL) * XEN_PT_4K_NR_CONTIG; - - if ( (left < nr_contig) || ((mfn_x(mfn) | vfn) & (nr_contig - 1)) ) - return 1; - - return XEN_PT_4K_NR_CONTIG; -} - -static DEFINE_SPINLOCK(xen_pt_lock); - -static int xen_pt_update(unsigned long virt, - mfn_t mfn, - /* const on purpose as it is used for TLB flush */ - const unsigned long nr_mfns, - unsigned int flags) -{ - int rc = 0; - unsigned long vfn = virt >> PAGE_SHIFT; - unsigned long left = nr_mfns; - - /* - * For arm32, page-tables are different on each CPUs. Yet, they share - * some common mappings. It is assumed that only common mappings - * will be modified with this function. - * - * XXX: Add a check. - */ - const mfn_t root = maddr_to_mfn(READ_SYSREG64(TTBR0_EL2)); - - /* - * The hardware was configured to forbid mapping both writeable and - * executable. - * When modifying/creating mapping (i.e _PAGE_PRESENT is set), - * prevent any update if this happen. - */ - if ( (flags & _PAGE_PRESENT) && !PAGE_RO_MASK(flags) && - !PAGE_XN_MASK(flags) ) - { - mm_printk("Mappings should not be both Writeable and Executable.\n"); - return -EINVAL; - } - - if ( flags & _PAGE_CONTIG ) - { - mm_printk("_PAGE_CONTIG is an internal only flag.\n"); - return -EINVAL; - } - - if ( !IS_ALIGNED(virt, PAGE_SIZE) ) - { - mm_printk("The virtual address is not aligned to the page-size.\n"); - return -EINVAL; - } - - spin_lock(&xen_pt_lock); - - while ( left ) - { - unsigned int order, level, nr_contig, new_flags; - - level = xen_pt_mapping_level(vfn, mfn, left, flags); - order = XEN_PT_LEVEL_ORDER(level); - - ASSERT(left >= BIT(order, UL)); - - /* - * Check if we can set the contiguous mapping and update the - * flags accordingly. - */ - nr_contig = xen_pt_check_contig(vfn, mfn, level, left, flags); - new_flags = flags | ((nr_contig > 1) ? _PAGE_CONTIG : 0); - - for ( ; nr_contig > 0; nr_contig-- ) - { - rc = xen_pt_update_entry(root, vfn << PAGE_SHIFT, mfn, level, - new_flags); - if ( rc ) - break; - - vfn += 1U << order; - if ( !mfn_eq(mfn, INVALID_MFN) ) - mfn = mfn_add(mfn, 1U << order); - - left -= (1U << order); - } - - if ( rc ) - break; - } - - /* - * The TLBs flush can be safely skipped when a mapping is inserted - * as we don't allow mapping replacement (see xen_pt_check_entry()). - * - * For all the other cases, the TLBs will be flushed unconditionally - * even if the mapping has failed. This is because we may have - * partially modified the PT. This will prevent any unexpected - * behavior afterwards. - */ - if ( !((flags & _PAGE_PRESENT) && !mfn_eq(mfn, INVALID_MFN)) ) - flush_xen_tlb_range_va(virt, PAGE_SIZE * nr_mfns); - - spin_unlock(&xen_pt_lock); - - return rc; -} - int map_pages_to_xen(unsigned long virt, mfn_t mfn, unsigned long nr_mfns, @@ -1218,11 +125,6 @@ int map_pages_to_xen(unsigned long virt, return xen_pt_update(virt, mfn, nr_mfns, flags); } -int populate_pt_range(unsigned long virt, unsigned long nr_mfns) -{ - return xen_pt_update(virt, INVALID_MFN, nr_mfns, _PAGE_POPULATE); -} - int destroy_xen_mappings(unsigned long s, unsigned long e) { ASSERT(IS_ALIGNED(s, PAGE_SIZE)); diff --git a/xen/arch/arm/mmu/mm.c b/xen/arch/arm/mmu/mm.c new file mode 100644 index 0000000000..43c19fa914 --- /dev/null +++ b/xen/arch/arm/mmu/mm.c @@ -0,0 +1,1125 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ +/* + * xen/arch/arm/mm-mmu.c + * + * MMU code for an ARMv7-A with virt extensions. + * + * Tim Deegan + * Copyright (c) 2011 Citrix Systems. + */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include +#include + +#undef mfn_to_virt +#define mfn_to_virt(mfn) __mfn_to_virt(mfn_x(mfn)) + +#ifdef NDEBUG +static inline void +__attribute__ ((__format__ (__printf__, 1, 2))) +mm_printk(const char *fmt, ...) {} +#else +#define mm_printk(fmt, args...) \ + do \ + { \ + dprintk(XENLOG_ERR, fmt, ## args); \ + WARN(); \ + } while (0) +#endif + +/* Static start-of-day pagetables that we use before the allocators + * are up. These are used by all CPUs during bringup before switching + * to the CPUs own pagetables. + * + * These pagetables have a very simple structure. They include: + * - 2MB worth of 4K mappings of xen at XEN_VIRT_START, boot_first and + * boot_second are used to populate the tables down to boot_third + * which contains the actual mapping. + * - a 1:1 mapping of xen at its current physical address. This uses a + * section mapping at whichever of boot_{pgtable,first,second} + * covers that physical address. + * + * For the boot CPU these mappings point to the address where Xen was + * loaded by the bootloader. For secondary CPUs they point to the + * relocated copy of Xen for the benefit of secondary CPUs. + * + * In addition to the above for the boot CPU the device-tree is + * initially mapped in the boot misc slot. This mapping is not present + * for secondary CPUs. + * + * Finally, if EARLY_PRINTK is enabled then xen_fixmap will be mapped + * by the CPU once it has moved off the 1:1 mapping. + */ +DEFINE_BOOT_PAGE_TABLE(boot_pgtable); +#ifdef CONFIG_ARM_64 +DEFINE_BOOT_PAGE_TABLE(boot_first); +DEFINE_BOOT_PAGE_TABLE(boot_first_id); +#endif +DEFINE_BOOT_PAGE_TABLE(boot_second_id); +DEFINE_BOOT_PAGE_TABLE(boot_third_id); +DEFINE_BOOT_PAGE_TABLE(boot_second); +DEFINE_BOOT_PAGE_TABLE(boot_third); + +/* Main runtime page tables */ + +/* + * For arm32 xen_pgtable are per-PCPU and are allocated before + * bringing up each CPU. For arm64 xen_pgtable is common to all PCPUs. + * + * xen_second, xen_fixmap and xen_xenmap are always shared between all + * PCPUs. + */ + +#ifdef CONFIG_ARM_64 +#define HYP_PT_ROOT_LEVEL 0 +DEFINE_PAGE_TABLE(xen_pgtable); +static DEFINE_PAGE_TABLE(xen_first); +#define THIS_CPU_PGTABLE xen_pgtable +#else +#define HYP_PT_ROOT_LEVEL 1 +/* Per-CPU pagetable pages */ +/* xen_pgtable == root of the trie (zeroeth level on 64-bit, first on 32-bit) */ +DEFINE_PER_CPU(lpae_t *, xen_pgtable); +#define THIS_CPU_PGTABLE this_cpu(xen_pgtable) +/* Root of the trie for cpu0, other CPU's PTs are dynamically allocated */ +static DEFINE_PAGE_TABLE(cpu0_pgtable); +#endif + +/* Common pagetable leaves */ +/* Second level page table used to cover Xen virtual address space */ +static DEFINE_PAGE_TABLE(xen_second); +/* Third level page table used for fixmap */ +DEFINE_BOOT_PAGE_TABLE(xen_fixmap); +/* + * Third level page table used to map Xen itself with the XN bit set + * as appropriate. + */ +static DEFINE_PAGE_TABLE(xen_xenmap); + +static paddr_t phys_offset; + +/* Limits of the Xen heap */ +mfn_t directmap_mfn_start __read_mostly = INVALID_MFN_INITIALIZER; +mfn_t directmap_mfn_end __read_mostly; +vaddr_t directmap_virt_end __read_mostly; +#ifdef CONFIG_ARM_64 +vaddr_t directmap_virt_start __read_mostly; +unsigned long directmap_base_pdx __read_mostly; +#endif + +/* Checking VA memory layout alignment. */ +static void __init __maybe_unused build_assertions(void) +{ + /* 2MB aligned regions */ + BUILD_BUG_ON(XEN_VIRT_START & ~SECOND_MASK); + BUILD_BUG_ON(FIXMAP_ADDR(0) & ~SECOND_MASK); + /* 1GB aligned regions */ +#ifdef CONFIG_ARM_32 + BUILD_BUG_ON(XENHEAP_VIRT_START & ~FIRST_MASK); +#else + BUILD_BUG_ON(DIRECTMAP_VIRT_START & ~FIRST_MASK); +#endif + /* Page table structure constraints */ +#ifdef CONFIG_ARM_64 + /* + * The first few slots of the L0 table is reserved for the identity + * mapping. Check that none of the other regions are overlapping + * with it. + */ +#define CHECK_OVERLAP_WITH_IDMAP(virt) \ + BUILD_BUG_ON(zeroeth_table_offset(virt) < IDENTITY_MAPPING_AREA_NR_L0) + + CHECK_OVERLAP_WITH_IDMAP(XEN_VIRT_START); + CHECK_OVERLAP_WITH_IDMAP(VMAP_VIRT_START); + CHECK_OVERLAP_WITH_IDMAP(FRAMETABLE_VIRT_START); + CHECK_OVERLAP_WITH_IDMAP(DIRECTMAP_VIRT_START); +#undef CHECK_OVERLAP_WITH_IDMAP +#endif + BUILD_BUG_ON(first_table_offset(XEN_VIRT_START)); +#ifdef CONFIG_ARCH_MAP_DOMAIN_PAGE + BUILD_BUG_ON(DOMHEAP_VIRT_START & ~FIRST_MASK); +#endif + /* + * The boot code expects the regions XEN_VIRT_START, FIXMAP_ADDR(0), + * BOOT_FDT_VIRT_START to use the same 0th (arm64 only) and 1st + * slot in the page tables. + */ +#define CHECK_SAME_SLOT(level, virt1, virt2) \ + BUILD_BUG_ON(level##_table_offset(virt1) != level##_table_offset(virt2)) + +#define CHECK_DIFFERENT_SLOT(level, virt1, virt2) \ + BUILD_BUG_ON(level##_table_offset(virt1) == level##_table_offset(virt2)) + +#ifdef CONFIG_ARM_64 + CHECK_SAME_SLOT(zeroeth, XEN_VIRT_START, FIXMAP_ADDR(0)); + CHECK_SAME_SLOT(zeroeth, XEN_VIRT_START, BOOT_FDT_VIRT_START); +#endif + CHECK_SAME_SLOT(first, XEN_VIRT_START, FIXMAP_ADDR(0)); + CHECK_SAME_SLOT(first, XEN_VIRT_START, BOOT_FDT_VIRT_START); + + /* + * For arm32, the temporary mapping will re-use the domheap + * first slot and the second slots will match. + */ +#ifdef CONFIG_ARM_32 + CHECK_SAME_SLOT(first, TEMPORARY_XEN_VIRT_START, DOMHEAP_VIRT_START); + CHECK_DIFFERENT_SLOT(first, XEN_VIRT_START, TEMPORARY_XEN_VIRT_START); + CHECK_SAME_SLOT(second, XEN_VIRT_START, TEMPORARY_XEN_VIRT_START); +#endif + +#undef CHECK_SAME_SLOT +#undef CHECK_DIFFERENT_SLOT +} + +static lpae_t *xen_map_table(mfn_t mfn) +{ + /* + * During early boot, map_domain_page() may be unusable. Use the + * PMAP to map temporarily a page-table. + */ + if ( system_state == SYS_STATE_early_boot ) + return pmap_map(mfn); + + return map_domain_page(mfn); +} + +static void xen_unmap_table(const lpae_t *table) +{ + /* + * During early boot, xen_map_table() will not use map_domain_page() + * but the PMAP. + */ + if ( system_state == SYS_STATE_early_boot ) + pmap_unmap(table); + else + unmap_domain_page(table); +} + +void dump_pt_walk(paddr_t ttbr, paddr_t addr, + unsigned int root_level, + unsigned int nr_root_tables) +{ + static const char *level_strs[4] = { "0TH", "1ST", "2ND", "3RD" }; + const mfn_t root_mfn = maddr_to_mfn(ttbr); + DECLARE_OFFSETS(offsets, addr); + lpae_t pte, *mapping; + unsigned int level, root_table; + +#ifdef CONFIG_ARM_32 + BUG_ON(root_level < 1); +#endif + BUG_ON(root_level > 3); + + if ( nr_root_tables > 1 ) + { + /* + * Concatenated root-level tables. The table number will be + * the offset at the previous level. It is not possible to + * concatenate a level-0 root. + */ + BUG_ON(root_level == 0); + root_table = offsets[root_level - 1]; + printk("Using concatenated root table %u\n", root_table); + if ( root_table >= nr_root_tables ) + { + printk("Invalid root table offset\n"); + return; + } + } + else + root_table = 0; + + mapping = xen_map_table(mfn_add(root_mfn, root_table)); + + for ( level = root_level; ; level++ ) + { + if ( offsets[level] > XEN_PT_LPAE_ENTRIES ) + break; + + pte = mapping[offsets[level]]; + + printk("%s[0x%03x] = 0x%"PRIx64"\n", + level_strs[level], offsets[level], pte.bits); + + if ( level == 3 || !pte.walk.valid || !pte.walk.table ) + break; + + /* For next iteration */ + xen_unmap_table(mapping); + mapping = xen_map_table(lpae_get_mfn(pte)); + } + + xen_unmap_table(mapping); +} + +void dump_hyp_walk(vaddr_t addr) +{ + uint64_t ttbr = READ_SYSREG64(TTBR0_EL2); + + printk("Walking Hypervisor VA 0x%"PRIvaddr" " + "on CPU%d via TTBR 0x%016"PRIx64"\n", + addr, smp_processor_id(), ttbr); + + dump_pt_walk(ttbr, addr, HYP_PT_ROOT_LEVEL, 1); +} + +lpae_t mfn_to_xen_entry(mfn_t mfn, unsigned int attr) +{ + lpae_t e = (lpae_t) { + .pt = { + .valid = 1, /* Mappings are present */ + .table = 0, /* Set to 1 for links and 4k maps */ + .ai = attr, + .ns = 1, /* Hyp mode is in the non-secure world */ + .up = 1, /* See below */ + .ro = 0, /* Assume read-write */ + .af = 1, /* No need for access tracking */ + .ng = 1, /* Makes TLB flushes easier */ + .contig = 0, /* Assume non-contiguous */ + .xn = 1, /* No need to execute outside .text */ + .avail = 0, /* Reference count for domheap mapping */ + }}; + /* + * For EL2 stage-1 page table, up (aka AP[1]) is RES1 as the translation + * regime applies to only one exception level (see D4.4.4 and G4.6.1 + * in ARM DDI 0487B.a). If this changes, remember to update the + * hard-coded values in head.S too. + */ + + switch ( attr ) + { + case MT_NORMAL_NC: + /* + * ARM ARM: Overlaying the shareability attribute (DDI + * 0406C.b B3-1376 to 1377) + * + * A memory region with a resultant memory type attribute of Normal, + * and a resultant cacheability attribute of Inner Non-cacheable, + * Outer Non-cacheable, must have a resultant shareability attribute + * of Outer Shareable, otherwise shareability is UNPREDICTABLE. + * + * On ARMv8 sharability is ignored and explicitly treated as Outer + * Shareable for Normal Inner Non_cacheable, Outer Non-cacheable. + */ + e.pt.sh = LPAE_SH_OUTER; + break; + case MT_DEVICE_nGnRnE: + case MT_DEVICE_nGnRE: + /* + * Shareability is ignored for non-Normal memory, Outer is as + * good as anything. + * + * On ARMv8 sharability is ignored and explicitly treated as Outer + * Shareable for any device memory type. + */ + e.pt.sh = LPAE_SH_OUTER; + break; + default: + e.pt.sh = LPAE_SH_INNER; /* Xen mappings are SMP coherent */ + break; + } + + ASSERT(!(mfn_to_maddr(mfn) & ~PADDR_MASK)); + + lpae_set_mfn(e, mfn); + + return e; +} + +/* Map a 4k page in a fixmap entry */ +void set_fixmap(unsigned int map, mfn_t mfn, unsigned int flags) +{ + int res; + + res = map_pages_to_xen(FIXMAP_ADDR(map), mfn, 1, flags); + BUG_ON(res != 0); +} + +/* Remove a mapping from a fixmap entry */ +void clear_fixmap(unsigned int map) +{ + int res; + + res = destroy_xen_mappings(FIXMAP_ADDR(map), FIXMAP_ADDR(map) + PAGE_SIZE); + BUG_ON(res != 0); +} + +lpae_t pte_of_xenaddr(vaddr_t va) +{ + paddr_t ma = va + phys_offset; + + return mfn_to_xen_entry(maddr_to_mfn(ma), MT_NORMAL); +} + +void __init remove_early_mappings(void) +{ + int rc; + + /* destroy the _PAGE_BLOCK mapping */ + rc = modify_xen_mappings(BOOT_FDT_VIRT_START, + BOOT_FDT_VIRT_START + BOOT_FDT_VIRT_SIZE, + _PAGE_BLOCK); + BUG_ON(rc); +} + +/* + * After boot, Xen page-tables should not contain mapping that are both + * Writable and eXecutables. + * + * This should be called on each CPU to enforce the policy. + */ +static void xen_pt_enforce_wnx(void) +{ + WRITE_SYSREG(READ_SYSREG(SCTLR_EL2) | SCTLR_Axx_ELx_WXN, SCTLR_EL2); + /* + * The TLBs may cache SCTLR_EL2.WXN. So ensure it is synchronized + * before flushing the TLBs. + */ + isb(); + flush_xen_tlb_local(); +} + +/* Clear a translation table and clean & invalidate the cache */ +static void clear_table(void *table) +{ + clear_page(table); + clean_and_invalidate_dcache_va_range(table, PAGE_SIZE); +} + +/* Boot-time pagetable setup. + * Changes here may need matching changes in head.S */ +void __init setup_pagetables(unsigned long boot_phys_offset) +{ + uint64_t ttbr; + lpae_t pte, *p; + int i; + + phys_offset = boot_phys_offset; + + arch_setup_page_tables(); + +#ifdef CONFIG_ARM_64 + pte = pte_of_xenaddr((uintptr_t)xen_first); + pte.pt.table = 1; + pte.pt.xn = 0; + xen_pgtable[zeroeth_table_offset(XEN_VIRT_START)] = pte; + + p = (void *) xen_first; +#else + p = (void *) cpu0_pgtable; +#endif + + /* Map xen second level page-table */ + p[0] = pte_of_xenaddr((uintptr_t)(xen_second)); + p[0].pt.table = 1; + p[0].pt.xn = 0; + + /* Break up the Xen mapping into 4k pages and protect them separately. */ + for ( i = 0; i < XEN_PT_LPAE_ENTRIES; i++ ) + { + vaddr_t va = XEN_VIRT_START + (i << PAGE_SHIFT); + + if ( !is_kernel(va) ) + break; + pte = pte_of_xenaddr(va); + pte.pt.table = 1; /* 4k mappings always have this bit set */ + if ( is_kernel_text(va) || is_kernel_inittext(va) ) + { + pte.pt.xn = 0; + pte.pt.ro = 1; + } + if ( is_kernel_rodata(va) ) + pte.pt.ro = 1; + xen_xenmap[i] = pte; + } + + /* Initialise xen second level entries ... */ + /* ... Xen's text etc */ + + pte = pte_of_xenaddr((vaddr_t)xen_xenmap); + pte.pt.table = 1; + xen_second[second_table_offset(XEN_VIRT_START)] = pte; + + /* ... Fixmap */ + pte = pte_of_xenaddr((vaddr_t)xen_fixmap); + pte.pt.table = 1; + xen_second[second_table_offset(FIXMAP_ADDR(0))] = pte; + +#ifdef CONFIG_ARM_64 + ttbr = (uintptr_t) xen_pgtable + phys_offset; +#else + ttbr = (uintptr_t) cpu0_pgtable + phys_offset; +#endif + + switch_ttbr(ttbr); + + xen_pt_enforce_wnx(); + +#ifdef CONFIG_ARM_32 + per_cpu(xen_pgtable, 0) = cpu0_pgtable; +#endif +} + +static void clear_boot_pagetables(void) +{ + /* + * Clear the copy of the boot pagetables. Each secondary CPU + * rebuilds these itself (see head.S). + */ + clear_table(boot_pgtable); +#ifdef CONFIG_ARM_64 + clear_table(boot_first); + clear_table(boot_first_id); +#endif + clear_table(boot_second); + clear_table(boot_third); +} + +#ifdef CONFIG_ARM_64 +int init_secondary_mm(int cpu) +{ + clear_boot_pagetables(); + + /* Set init_mm for this CPU coming up. All CPus share a single setof + * pagetables, but rewrite it each time for consistency with 32 bit. */ + init_mm = (uintptr_t) xen_pgtable + phys_offset; + clean_dcache(init_mm); + return 0; +} +#else +int init_secondary_mm(int cpu) +{ + lpae_t *first; + + first = alloc_xenheap_page(); /* root == first level on 32-bit 3-level trie */ + + if ( !first ) + { + printk("CPU%u: Unable to allocate the first page-table\n", cpu); + return -ENOMEM; + } + + /* Initialise root pagetable from root of boot tables */ + memcpy(first, cpu0_pgtable, PAGE_SIZE); + per_cpu(xen_pgtable, cpu) = first; + + if ( !init_domheap_mappings(cpu) ) + { + printk("CPU%u: Unable to prepare the domheap page-tables\n", cpu); + per_cpu(xen_pgtable, cpu) = NULL; + free_xenheap_page(first); + return -ENOMEM; + } + + clear_boot_pagetables(); + + /* Set init_mm for this CPU coming up */ + init_mm = __pa(first); + clean_dcache(init_mm); + + return 0; +} +#endif + +/* MMU setup for secondary CPUS (which already have paging enabled) */ +void mm_init_secondary_cpu(void) +{ + xen_pt_enforce_wnx(); +} + +#ifdef CONFIG_ARM_32 +/* + * Set up the direct-mapped xenheap: + * up to 1GB of contiguous, always-mapped memory. + */ +void __init setup_directmap_mappings(unsigned long base_mfn, + unsigned long nr_mfns) +{ + int rc; + + rc = map_pages_to_xen(XENHEAP_VIRT_START, _mfn(base_mfn), nr_mfns, + PAGE_HYPERVISOR_RW | _PAGE_BLOCK); + if ( rc ) + panic("Unable to setup the directmap mappings.\n"); + + /* Record where the directmap is, for translation routines. */ + directmap_virt_end = XENHEAP_VIRT_START + nr_mfns * PAGE_SIZE; +} +#else /* CONFIG_ARM_64 */ +/* Map the region in the directmap area. */ +void __init setup_directmap_mappings(unsigned long base_mfn, + unsigned long nr_mfns) +{ + int rc; + + /* First call sets the directmap physical and virtual offset. */ + if ( mfn_eq(directmap_mfn_start, INVALID_MFN) ) + { + unsigned long mfn_gb = base_mfn & ~((FIRST_SIZE >> PAGE_SHIFT) - 1); + + directmap_mfn_start = _mfn(base_mfn); + directmap_base_pdx = mfn_to_pdx(_mfn(base_mfn)); + /* + * The base address may not be aligned to the first level + * size (e.g. 1GB when using 4KB pages). This would prevent + * superpage mappings for all the regions because the virtual + * address and machine address should both be suitably aligned. + * + * Prevent that by offsetting the start of the directmap virtual + * address. + */ + directmap_virt_start = DIRECTMAP_VIRT_START + + (base_mfn - mfn_gb) * PAGE_SIZE; + } + + if ( base_mfn < mfn_x(directmap_mfn_start) ) + panic("cannot add directmap mapping at %lx below heap start %lx\n", + base_mfn, mfn_x(directmap_mfn_start)); + + rc = map_pages_to_xen((vaddr_t)__mfn_to_virt(base_mfn), + _mfn(base_mfn), nr_mfns, + PAGE_HYPERVISOR_RW | _PAGE_BLOCK); + if ( rc ) + panic("Unable to setup the directmap mappings.\n"); +} +#endif + +/* Map a frame table to cover physical addresses ps through pe */ +void __init setup_frametable_mappings(paddr_t ps, paddr_t pe) +{ + unsigned long nr_pdxs = mfn_to_pdx(mfn_add(maddr_to_mfn(pe), -1)) - + mfn_to_pdx(maddr_to_mfn(ps)) + 1; + unsigned long frametable_size = nr_pdxs * sizeof(struct page_info); + mfn_t base_mfn; + const unsigned long mapping_size = frametable_size < MB(32) ? MB(2) : MB(32); + int rc; + + /* + * The size of paddr_t should be sufficient for the complete range of + * physical address. + */ + BUILD_BUG_ON((sizeof(paddr_t) * BITS_PER_BYTE) < PADDR_BITS); + BUILD_BUG_ON(sizeof(struct page_info) != PAGE_INFO_SIZE); + + if ( frametable_size > FRAMETABLE_SIZE ) + panic("The frametable cannot cover the physical region %#"PRIpaddr" - %#"PRIpaddr"\n", + ps, pe); + + frametable_base_pdx = mfn_to_pdx(maddr_to_mfn(ps)); + /* Round up to 2M or 32M boundary, as appropriate. */ + frametable_size = ROUNDUP(frametable_size, mapping_size); + base_mfn = alloc_boot_pages(frametable_size >> PAGE_SHIFT, 32<<(20-12)); + + rc = map_pages_to_xen(FRAMETABLE_VIRT_START, base_mfn, + frametable_size >> PAGE_SHIFT, + PAGE_HYPERVISOR_RW | _PAGE_BLOCK); + if ( rc ) + panic("Unable to setup the frametable mappings.\n"); + + memset(&frame_table[0], 0, nr_pdxs * sizeof(struct page_info)); + memset(&frame_table[nr_pdxs], -1, + frametable_size - (nr_pdxs * sizeof(struct page_info))); + + frametable_virt_end = FRAMETABLE_VIRT_START + (nr_pdxs * sizeof(struct page_info)); +} + +void *__init arch_vmap_virt_end(void) +{ + return (void *)(VMAP_VIRT_START + VMAP_VIRT_SIZE); +} + +/* + * This function should only be used to remap device address ranges + * TODO: add a check to verify this assumption + */ +void *ioremap_attr(paddr_t pa, size_t len, unsigned int attributes) +{ + mfn_t mfn = _mfn(PFN_DOWN(pa)); + unsigned int offs = pa & (PAGE_SIZE - 1); + unsigned int nr = PFN_UP(offs + len); + void *ptr = __vmap(&mfn, nr, 1, 1, attributes, VMAP_DEFAULT); + + if ( ptr == NULL ) + return NULL; + + return ptr + offs; +} + +static int create_xen_table(lpae_t *entry) +{ + mfn_t mfn; + void *p; + lpae_t pte; + + if ( system_state != SYS_STATE_early_boot ) + { + struct page_info *pg = alloc_domheap_page(NULL, 0); + + if ( pg == NULL ) + return -ENOMEM; + + mfn = page_to_mfn(pg); + } + else + mfn = alloc_boot_pages(1, 1); + + p = xen_map_table(mfn); + clear_page(p); + xen_unmap_table(p); + + pte = mfn_to_xen_entry(mfn, MT_NORMAL); + pte.pt.table = 1; + write_pte(entry, pte); + + return 0; +} + +#define XEN_TABLE_MAP_FAILED 0 +#define XEN_TABLE_SUPER_PAGE 1 +#define XEN_TABLE_NORMAL_PAGE 2 + +/* + * Take the currently mapped table, find the corresponding entry, + * and map the next table, if available. + * + * The read_only parameters indicates whether intermediate tables should + * be allocated when not present. + * + * Return values: + * XEN_TABLE_MAP_FAILED: Either read_only was set and the entry + * was empty, or allocating a new page failed. + * XEN_TABLE_NORMAL_PAGE: next level mapped normally + * XEN_TABLE_SUPER_PAGE: The next entry points to a superpage. + */ +static int xen_pt_next_level(bool read_only, unsigned int level, + lpae_t **table, unsigned int offset) +{ + lpae_t *entry; + int ret; + mfn_t mfn; + + entry = *table + offset; + + if ( !lpae_is_valid(*entry) ) + { + if ( read_only ) + return XEN_TABLE_MAP_FAILED; + + ret = create_xen_table(entry); + if ( ret ) + return XEN_TABLE_MAP_FAILED; + } + + /* The function xen_pt_next_level is never called at the 3rd level */ + if ( lpae_is_mapping(*entry, level) ) + return XEN_TABLE_SUPER_PAGE; + + mfn = lpae_get_mfn(*entry); + + xen_unmap_table(*table); + *table = xen_map_table(mfn); + + return XEN_TABLE_NORMAL_PAGE; +} + +/* Sanity check of the entry */ +static bool xen_pt_check_entry(lpae_t entry, mfn_t mfn, unsigned int level, + unsigned int flags) +{ + /* Sanity check when modifying an entry. */ + if ( (flags & _PAGE_PRESENT) && mfn_eq(mfn, INVALID_MFN) ) + { + /* We don't allow modifying an invalid entry. */ + if ( !lpae_is_valid(entry) ) + { + mm_printk("Modifying invalid entry is not allowed.\n"); + return false; + } + + /* We don't allow modifying a table entry */ + if ( !lpae_is_mapping(entry, level) ) + { + mm_printk("Modifying a table entry is not allowed.\n"); + return false; + } + + /* We don't allow changing memory attributes. */ + if ( entry.pt.ai != PAGE_AI_MASK(flags) ) + { + mm_printk("Modifying memory attributes is not allowed (0x%x -> 0x%x).\n", + entry.pt.ai, PAGE_AI_MASK(flags)); + return false; + } + + /* We don't allow modifying entry with contiguous bit set. */ + if ( entry.pt.contig ) + { + mm_printk("Modifying entry with contiguous bit set is not allowed.\n"); + return false; + } + } + /* Sanity check when inserting a mapping */ + else if ( flags & _PAGE_PRESENT ) + { + /* We should be here with a valid MFN. */ + ASSERT(!mfn_eq(mfn, INVALID_MFN)); + + /* + * We don't allow replacing any valid entry. + * + * Note that the function xen_pt_update() relies on this + * assumption and will skip the TLB flush. The function will need + * to be updated if the check is relaxed. + */ + if ( lpae_is_valid(entry) ) + { + if ( lpae_is_mapping(entry, level) ) + mm_printk("Changing MFN for a valid entry is not allowed (%#"PRI_mfn" -> %#"PRI_mfn").\n", + mfn_x(lpae_get_mfn(entry)), mfn_x(mfn)); + else + mm_printk("Trying to replace a table with a mapping.\n"); + return false; + } + } + /* Sanity check when removing a mapping. */ + else if ( (flags & (_PAGE_PRESENT|_PAGE_POPULATE)) == 0 ) + { + /* We should be here with an invalid MFN. */ + ASSERT(mfn_eq(mfn, INVALID_MFN)); + + /* We don't allow removing a table */ + if ( lpae_is_table(entry, level) ) + { + mm_printk("Removing a table is not allowed.\n"); + return false; + } + + /* We don't allow removing a mapping with contiguous bit set. */ + if ( entry.pt.contig ) + { + mm_printk("Removing entry with contiguous bit set is not allowed.\n"); + return false; + } + } + /* Sanity check when populating the page-table. No check so far. */ + else + { + ASSERT(flags & _PAGE_POPULATE); + /* We should be here with an invalid MFN */ + ASSERT(mfn_eq(mfn, INVALID_MFN)); + } + + return true; +} + +/* Update an entry at the level @target. */ +static int xen_pt_update_entry(mfn_t root, unsigned long virt, + mfn_t mfn, unsigned int target, + unsigned int flags) +{ + int rc; + unsigned int level; + lpae_t *table; + /* + * The intermediate page tables are read-only when the MFN is not valid + * and we are not populating page table. + * This means we either modify permissions or remove an entry. + */ + bool read_only = mfn_eq(mfn, INVALID_MFN) && !(flags & _PAGE_POPULATE); + lpae_t pte, *entry; + + /* convenience aliases */ + DECLARE_OFFSETS(offsets, (paddr_t)virt); + + /* _PAGE_POPULATE and _PAGE_PRESENT should never be set together. */ + ASSERT((flags & (_PAGE_POPULATE|_PAGE_PRESENT)) != (_PAGE_POPULATE|_PAGE_PRESENT)); + + table = xen_map_table(root); + for ( level = HYP_PT_ROOT_LEVEL; level < target; level++ ) + { + rc = xen_pt_next_level(read_only, level, &table, offsets[level]); + if ( rc == XEN_TABLE_MAP_FAILED ) + { + /* + * We are here because xen_pt_next_level has failed to map + * the intermediate page table (e.g the table does not exist + * and the pt is read-only). It is a valid case when + * removing a mapping as it may not exist in the page table. + * In this case, just ignore it. + */ + if ( flags & (_PAGE_PRESENT|_PAGE_POPULATE) ) + { + mm_printk("%s: Unable to map level %u\n", __func__, level); + rc = -ENOENT; + goto out; + } + else + { + rc = 0; + goto out; + } + } + else if ( rc != XEN_TABLE_NORMAL_PAGE ) + break; + } + + if ( level != target ) + { + mm_printk("%s: Shattering superpage is not supported\n", __func__); + rc = -EOPNOTSUPP; + goto out; + } + + entry = table + offsets[level]; + + rc = -EINVAL; + if ( !xen_pt_check_entry(*entry, mfn, level, flags) ) + goto out; + + /* If we are only populating page-table, then we are done. */ + rc = 0; + if ( flags & _PAGE_POPULATE ) + goto out; + + /* We are removing the page */ + if ( !(flags & _PAGE_PRESENT) ) + memset(&pte, 0x00, sizeof(pte)); + else + { + /* We are inserting a mapping => Create new pte. */ + if ( !mfn_eq(mfn, INVALID_MFN) ) + { + pte = mfn_to_xen_entry(mfn, PAGE_AI_MASK(flags)); + + /* + * First and second level pages set pte.pt.table = 0, but + * third level entries set pte.pt.table = 1. + */ + pte.pt.table = (level == 3); + } + else /* We are updating the permission => Copy the current pte. */ + pte = *entry; + + /* Set permission */ + pte.pt.ro = PAGE_RO_MASK(flags); + pte.pt.xn = PAGE_XN_MASK(flags); + /* Set contiguous bit */ + pte.pt.contig = !!(flags & _PAGE_CONTIG); + } + + write_pte(entry, pte); + + rc = 0; + +out: + xen_unmap_table(table); + + return rc; +} + +/* Return the level where mapping should be done */ +static int xen_pt_mapping_level(unsigned long vfn, mfn_t mfn, unsigned long nr, + unsigned int flags) +{ + unsigned int level; + unsigned long mask; + + /* + * Don't take into account the MFN when removing mapping (i.e + * MFN_INVALID) to calculate the correct target order. + * + * Per the Arm Arm, `vfn` and `mfn` must be both superpage aligned. + * They are or-ed together and then checked against the size of + * each level. + * + * `left` is not included and checked separately to allow + * superpage mapping even if it is not properly aligned (the + * user may have asked to map 2MB + 4k). + */ + mask = !mfn_eq(mfn, INVALID_MFN) ? mfn_x(mfn) : 0; + mask |= vfn; + + /* + * Always use level 3 mapping unless the caller request block + * mapping. + */ + if ( likely(!(flags & _PAGE_BLOCK)) ) + level = 3; + else if ( !(mask & (BIT(FIRST_ORDER, UL) - 1)) && + (nr >= BIT(FIRST_ORDER, UL)) ) + level = 1; + else if ( !(mask & (BIT(SECOND_ORDER, UL) - 1)) && + (nr >= BIT(SECOND_ORDER, UL)) ) + level = 2; + else + level = 3; + + return level; +} + +#define XEN_PT_4K_NR_CONTIG 16 + +/* + * Check whether the contiguous bit can be set. Return the number of + * contiguous entry allowed. If not allowed, return 1. + */ +static unsigned int xen_pt_check_contig(unsigned long vfn, mfn_t mfn, + unsigned int level, unsigned long left, + unsigned int flags) +{ + unsigned long nr_contig; + + /* + * Allow the contiguous bit to set when the caller requests block + * mapping. + */ + if ( !(flags & _PAGE_BLOCK) ) + return 1; + + /* + * We don't allow to remove mapping with the contiguous bit set. + * So shortcut the logic and directly return 1. + */ + if ( mfn_eq(mfn, INVALID_MFN) ) + return 1; + + /* + * The number of contiguous entries varies depending on the page + * granularity used. The logic below assumes 4KB. + */ + BUILD_BUG_ON(PAGE_SIZE != SZ_4K); + + /* + * In order to enable the contiguous bit, we should have enough entries + * to map left and both the virtual and physical address should be + * aligned to the size of 16 translation tables entries. + */ + nr_contig = BIT(XEN_PT_LEVEL_ORDER(level), UL) * XEN_PT_4K_NR_CONTIG; + + if ( (left < nr_contig) || ((mfn_x(mfn) | vfn) & (nr_contig - 1)) ) + return 1; + + return XEN_PT_4K_NR_CONTIG; +} + +static DEFINE_SPINLOCK(xen_pt_lock); + +int xen_pt_update(unsigned long virt, mfn_t mfn, + /* const on purpose as it is used for TLB flush */ + const unsigned long nr_mfns, + unsigned int flags) +{ + int rc = 0; + unsigned long vfn = virt >> PAGE_SHIFT; + unsigned long left = nr_mfns; + + /* + * For arm32, page-tables are different on each CPUs. Yet, they share + * some common mappings. It is assumed that only common mappings + * will be modified with this function. + * + * XXX: Add a check. + */ + const mfn_t root = maddr_to_mfn(READ_SYSREG64(TTBR0_EL2)); + + /* + * The hardware was configured to forbid mapping both writeable and + * executable. + * When modifying/creating mapping (i.e _PAGE_PRESENT is set), + * prevent any update if this happen. + */ + if ( (flags & _PAGE_PRESENT) && !PAGE_RO_MASK(flags) && + !PAGE_XN_MASK(flags) ) + { + mm_printk("Mappings should not be both Writeable and Executable.\n"); + return -EINVAL; + } + + if ( flags & _PAGE_CONTIG ) + { + mm_printk("_PAGE_CONTIG is an internal only flag.\n"); + return -EINVAL; + } + + if ( !IS_ALIGNED(virt, PAGE_SIZE) ) + { + mm_printk("The virtual address is not aligned to the page-size.\n"); + return -EINVAL; + } + + spin_lock(&xen_pt_lock); + + while ( left ) + { + unsigned int order, level, nr_contig, new_flags; + + level = xen_pt_mapping_level(vfn, mfn, left, flags); + order = XEN_PT_LEVEL_ORDER(level); + + ASSERT(left >= BIT(order, UL)); + + /* + * Check if we can set the contiguous mapping and update the + * flags accordingly. + */ + nr_contig = xen_pt_check_contig(vfn, mfn, level, left, flags); + new_flags = flags | ((nr_contig > 1) ? _PAGE_CONTIG : 0); + + for ( ; nr_contig > 0; nr_contig-- ) + { + rc = xen_pt_update_entry(root, vfn << PAGE_SHIFT, mfn, level, + new_flags); + if ( rc ) + break; + + vfn += 1U << order; + if ( !mfn_eq(mfn, INVALID_MFN) ) + mfn = mfn_add(mfn, 1U << order); + + left -= (1U << order); + } + + if ( rc ) + break; + } + + /* + * The TLBs flush can be safely skipped when a mapping is inserted + * as we don't allow mapping replacement (see xen_pt_check_entry()). + * + * For all the other cases, the TLBs will be flushed unconditionally + * even if the mapping has failed. This is because we may have + * partially modified the PT. This will prevent any unexpected + * behavior afterwards. + */ + if ( !((flags & _PAGE_PRESENT) && !mfn_eq(mfn, INVALID_MFN)) ) + flush_xen_tlb_range_va(virt, PAGE_SIZE * nr_mfns); + + spin_unlock(&xen_pt_lock); + + return rc; +} + +int populate_pt_range(unsigned long virt, unsigned long nr_mfns) +{ + return xen_pt_update(virt, INVALID_MFN, nr_mfns, _PAGE_POPULATE); +} + +/* + * Local variables: + * mode: C + * c-file-style: "BSD" + * c-basic-offset: 4 + * indent-tabs-mode: nil + * End: + */ diff --git a/xen/arch/arm/smpboot.c b/xen/arch/arm/smpboot.c index e107b86b7b..8bcdbea66c 100644 --- a/xen/arch/arm/smpboot.c +++ b/xen/arch/arm/smpboot.c @@ -359,7 +359,7 @@ void start_secondary(void) */ update_system_features(¤t_cpu_data); - mmu_init_secondary_cpu(); + mm_init_secondary_cpu(); gic_init_secondary_cpu(); @@ -448,7 +448,7 @@ int __cpu_up(unsigned int cpu) printk("Bringing up CPU%d\n", cpu); - rc = init_secondary_pagetables(cpu); + rc = init_secondary_mm(cpu); if ( rc < 0 ) return rc; -- 2.25.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 26 03:40:06 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 03:40:06 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555045.866689 (Exim 4.92) (envelope-from ) id 1qDd5C-0002gL-86; Mon, 26 Jun 2023 03:40:06 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555045.866689; Mon, 26 Jun 2023 03:40:05 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd5A-0002Ys-SZ; Mon, 26 Jun 2023 03:40:04 +0000 Received: by outflank-mailman (input) for mailman id 555045; Mon, 26 Jun 2023 03:40:01 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd2I-0000HH-Ci for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 03:37:06 +0000 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by se1-gles-flk1.inumbo.com (Halon) with ESMTP id b7c70753-13d2-11ee-8611-37d641c3527e; Mon, 26 Jun 2023 05:37:04 +0200 (CEST) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 0370E1FB; Sun, 25 Jun 2023 20:37:48 -0700 (PDT) Received: from a011292.shanghai.arm.com (a011292.shanghai.arm.com [10.169.190.94]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id 5BAA53F64C; Sun, 25 Jun 2023 20:37:01 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: b7c70753-13d2-11ee-8611-37d641c3527e From: Penny Zheng To: xen-devel@lists.xenproject.org Cc: Penny Zheng , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk , Penny Zheng , Wei Chen Subject: [PATCH v3 37/52] xen/mpu: implement MPU version of copy_from_paddr Date: Mon, 26 Jun 2023 11:34:28 +0800 Message-Id: <20230626033443.2943270-38-Penny.Zheng@arm.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230626033443.2943270-1-Penny.Zheng@arm.com> References: <20230626033443.2943270-1-Penny.Zheng@arm.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit When implementing MPU version of copy_from_paddr, if source physical address is not accessible, we shall map it temporarily with a transient MPU memory region for copying and pasting. Signed-off-by: Penny Zheng Signed-off-by: Wei Chen --- v3: - new patch --- xen/arch/arm/include/asm/mpu/mm.h | 3 +++ xen/arch/arm/mpu/mm.c | 6 +++--- xen/arch/arm/mpu/setup.c | 32 +++++++++++++++++++++++++++++++ 3 files changed, 38 insertions(+), 3 deletions(-) diff --git a/xen/arch/arm/include/asm/mpu/mm.h b/xen/arch/arm/include/asm/mpu/mm.h index 98f6df65b8..452fe20c5f 100644 --- a/xen/arch/arm/include/asm/mpu/mm.h +++ b/xen/arch/arm/include/asm/mpu/mm.h @@ -7,6 +7,9 @@ extern unsigned long frametable_pdx_end; extern int xen_mpumap_update(paddr_t base, paddr_t limit, unsigned int flags); extern void setup_staticheap_mappings(void); +extern uint8_t is_mm_range_mapped(paddr_t pa, paddr_t len); +extern void *map_mm_range(paddr_t pa, size_t len, unsigned int attributes); +extern void unmap_mm_range(paddr_t pa); #endif /* __ARCH_ARM_MM_MPU__ */ diff --git a/xen/arch/arm/mpu/mm.c b/xen/arch/arm/mpu/mm.c index 3bb1a5c7c4..21276d6de9 100644 --- a/xen/arch/arm/mpu/mm.c +++ b/xen/arch/arm/mpu/mm.c @@ -631,7 +631,7 @@ int __init unmap_staticmem_pages_to_xen(paddr_t start, paddr_t end) * If it is mapped, the associated index will be returned. * If it is not mapped, INVALID_REGION_IDX will be returned. */ -static uint8_t is_mm_range_mapped(paddr_t pa, paddr_t len) +uint8_t is_mm_range_mapped(paddr_t pa, paddr_t len) { int rc; uint8_t idx; @@ -705,7 +705,7 @@ static int is_mm_range_mapped_with_attr(paddr_t pa, paddr_t len, * map_mm_range shall work with unmap_mm_range to map a chunk * of memory with a transient MPU memory region for a period of short time. */ -static void *map_mm_range(paddr_t pa, size_t len, unsigned int attributes) +void *map_mm_range(paddr_t pa, size_t len, unsigned int attributes) { if ( xen_mpumap_update(pa, pa + len, attributes | _PAGE_TRANSIENT) ) printk(XENLOG_ERR "Failed to map_mm_range 0x%"PRIpaddr"-0x%"PRIpaddr"\n", @@ -714,7 +714,7 @@ static void *map_mm_range(paddr_t pa, size_t len, unsigned int attributes) return maddr_to_virt(pa); } -static void unmap_mm_range(paddr_t pa) +void unmap_mm_range(paddr_t pa) { uint8_t idx; diff --git a/xen/arch/arm/mpu/setup.c b/xen/arch/arm/mpu/setup.c index 31f412957c..9963975b4e 100644 --- a/xen/arch/arm/mpu/setup.c +++ b/xen/arch/arm/mpu/setup.c @@ -22,6 +22,7 @@ #include #include #include +#include #include #include #include @@ -60,6 +61,37 @@ void __init setup_mm(void) init_staticmem_pages(); } +/* + * copy_from_paddr - copy data from a physical address + * @dst: destination virtual address + * @paddr: source physical address + * @len: length to copy + */ +void __init copy_from_paddr(void *dst, paddr_t paddr, unsigned long len) +{ + void *src, *rc = NULL; + uint8_t idx; + + idx = is_mm_range_mapped(round_pgdown(paddr), round_pgup(len)); + if ( idx == INVALID_REGION_IDX ) + { + /* + * If source physical address is not accessible, we shall map it + * temporarily for copying and pasting + */ + rc = map_mm_range(round_pgdown(paddr), round_pgup(len), + PAGE_HYPERVISOR_WC); + if ( !rc ) + return; + } + + src = maddr_to_virt(paddr); + memcpy(dst, src, len); + + if ( rc ) + unmap_mm_range(round_pgdown(paddr)); +} + /* * Local variables: * mode: C -- 2.25.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 26 03:40:08 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 03:40:08 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555046.866698 (Exim 4.92) (envelope-from ) id 1qDd5E-0003Ge-6P; Mon, 26 Jun 2023 03:40:08 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555046.866698; Mon, 26 Jun 2023 03:40:08 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd5D-00039N-Aq; Mon, 26 Jun 2023 03:40:07 +0000 Received: by outflank-mailman (input) for mailman id 555046; Mon, 26 Jun 2023 03:40:01 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd1S-0000HH-Gj for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 03:36:14 +0000 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by se1-gles-flk1.inumbo.com (Halon) with ESMTP id 97e28437-13d2-11ee-8611-37d641c3527e; Mon, 26 Jun 2023 05:36:11 +0200 (CEST) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 6210E1FB; Sun, 25 Jun 2023 20:36:54 -0700 (PDT) Received: from a011292.shanghai.arm.com (a011292.shanghai.arm.com [10.169.190.94]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id 3C0033F64C; Sun, 25 Jun 2023 20:36:06 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 97e28437-13d2-11ee-8611-37d641c3527e From: Penny Zheng To: xen-devel@lists.xenproject.org Cc: Penny Zheng , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk , Penny Zheng , Wei Chen Subject: [PATCH v3 20/52] xen/mmu: move MMU specific P2M code to mmu/p2m.c and mmu/p2m.h Date: Mon, 26 Jun 2023 11:34:11 +0800 Message-Id: <20230626033443.2943270-21-Penny.Zheng@arm.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230626033443.2943270-1-Penny.Zheng@arm.com> References: <20230626033443.2943270-1-Penny.Zheng@arm.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Current P2M implementation is designed for MMU system only. We move the MMU-specific codes into mmu/p2m.c, and only keep generic codes in p2m.c, like VMID allocator, etc We also move MMU-specific definitions and declarations to mmu/p2m.h, like function p2m_tlb_flush_sync, etc Signed-off-by: Penny Zheng Signed-off-by: Wei Chen --- v2: - new commit --- v3: - remove MPU stubs - adapt to the introduction of new directories: mmu/ --- xen/arch/arm/Makefile | 1 + xen/arch/arm/include/asm/mmu/p2m.h | 18 + xen/arch/arm/include/asm/p2m.h | 30 +- xen/arch/arm/mmu/p2m.c | 1612 +++++++++++++++++++++++++ xen/arch/arm/p2m.c | 1770 ++-------------------------- 5 files changed, 1744 insertions(+), 1687 deletions(-) create mode 100644 xen/arch/arm/include/asm/mmu/p2m.h create mode 100644 xen/arch/arm/mmu/p2m.c diff --git a/xen/arch/arm/Makefile b/xen/arch/arm/Makefile index d01528cac6..a83a535cd7 100644 --- a/xen/arch/arm/Makefile +++ b/xen/arch/arm/Makefile @@ -39,6 +39,7 @@ obj-y += mem_access.o ifeq ($(CONFIG_HAS_MMU), y) obj-y += mmu/mm.o obj-y += mmu/setup.o +obj-y += mmu/p2m.o endif obj-y += mm.o obj-y += monitor.o diff --git a/xen/arch/arm/include/asm/mmu/p2m.h b/xen/arch/arm/include/asm/mmu/p2m.h new file mode 100644 index 0000000000..bc108bdc4b --- /dev/null +++ b/xen/arch/arm/include/asm/mmu/p2m.h @@ -0,0 +1,18 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ +#ifndef _XEN_P2M_MMU_H +#define _XEN_P2M_MMU_H + +struct p2m_domain; +void p2m_force_tlb_flush_sync(struct p2m_domain *p2m); +void p2m_tlb_flush_sync(struct p2m_domain *p2m); + +#endif /* _XEN_P2M_MMU_H */ + +/* + * Local variables: + * mode: C + * c-file-style: "BSD" + * c-basic-offset: 4 + * indent-tabs-mode: nil + * End: + */ diff --git a/xen/arch/arm/include/asm/p2m.h b/xen/arch/arm/include/asm/p2m.h index 940495d42b..f62d632830 100644 --- a/xen/arch/arm/include/asm/p2m.h +++ b/xen/arch/arm/include/asm/p2m.h @@ -19,6 +19,20 @@ extern unsigned int p2m_root_level; #define P2M_ROOT_ORDER p2m_root_order #define P2M_ROOT_LEVEL p2m_root_level +#define MAX_VMID_8_BIT (1UL << 8) +#define MAX_VMID_16_BIT (1UL << 16) + +#define INVALID_VMID 0 /* VMID 0 is reserved */ + +#ifdef CONFIG_ARM_64 +extern unsigned int max_vmid; +/* VMID is by default 8 bit width on AArch64 */ +#define MAX_VMID max_vmid +#else +/* VMID is always 8 bit width on AArch32 */ +#define MAX_VMID MAX_VMID_8_BIT +#endif + struct domain; extern void memory_type_changed(struct domain *); @@ -156,6 +170,10 @@ typedef enum { #endif #include +#ifdef CONFIG_HAS_MMU +#include +#endif + static inline bool arch_acquire_resource_check(struct domain *d) { /* @@ -180,7 +198,11 @@ void p2m_altp2m_check(struct vcpu *v, uint16_t idx) */ void p2m_restrict_ipa_bits(unsigned int ipa_bits); +void p2m_vmid_allocator_init(void); +int p2m_alloc_vmid(struct domain *d); + /* Second stage paging setup, to be called on all CPUs */ +void setup_virt_paging_one(void *data); void setup_virt_paging(void); /* Init the datastructures for later use by the p2m code */ @@ -242,8 +264,6 @@ static inline int p2m_is_write_locked(struct p2m_domain *p2m) return rw_is_write_locked(&p2m->lock); } -void p2m_tlb_flush_sync(struct p2m_domain *p2m); - /* Look up the MFN corresponding to a domain's GFN. */ mfn_t p2m_lookup(struct domain *d, gfn_t gfn, p2m_type_t *t); @@ -268,6 +288,12 @@ int p2m_set_entry(struct p2m_domain *p2m, mfn_t smfn, p2m_type_t t, p2m_access_t a); +int __p2m_set_entry(struct p2m_domain *p2m, + gfn_t sgfn, + unsigned int page_order, + mfn_t smfn, + p2m_type_t t, + p2m_access_t a); bool p2m_resolve_translation_fault(struct domain *d, gfn_t gfn); diff --git a/xen/arch/arm/mmu/p2m.c b/xen/arch/arm/mmu/p2m.c new file mode 100644 index 0000000000..ad0c7fa30e --- /dev/null +++ b/xen/arch/arm/mmu/p2m.c @@ -0,0 +1,1612 @@ +/* SPDX-License-Identifier: GPL-2.0 */ +#include +#include +#include +#include + +#include +#include +#include +#include + +unsigned int __read_mostly p2m_root_order; +unsigned int __read_mostly p2m_root_level; + +#define P2M_ROOT_PAGES (1<arch.paging.lock); + pg = page_list_remove_head(&d->arch.paging.p2m_freelist); + spin_unlock(&d->arch.paging.lock); + } + + return pg; +} + +static void p2m_free_page(struct domain *d, struct page_info *pg) +{ + if ( is_hardware_domain(d) ) + free_domheap_page(pg); + else + { + spin_lock(&d->arch.paging.lock); + page_list_add_tail(pg, &d->arch.paging.p2m_freelist); + spin_unlock(&d->arch.paging.lock); + } +} + +/* Return the size of the pool, in bytes. */ +int arch_get_paging_mempool_size(struct domain *d, uint64_t *size) +{ + *size = (uint64_t)ACCESS_ONCE(d->arch.paging.p2m_total_pages) << PAGE_SHIFT; + return 0; +} + +/* + * Set the pool of pages to the required number of pages. + * Returns 0 for success, non-zero for failure. + * Call with d->arch.paging.lock held. + */ +int p2m_set_allocation(struct domain *d, unsigned long pages, bool *preempted) +{ + struct page_info *pg; + + ASSERT(spin_is_locked(&d->arch.paging.lock)); + + for ( ; ; ) + { + if ( d->arch.paging.p2m_total_pages < pages ) + { + /* Need to allocate more memory from domheap */ + pg = alloc_domheap_page(NULL, 0); + if ( pg == NULL ) + { + printk(XENLOG_ERR "Failed to allocate P2M pages.\n"); + return -ENOMEM; + } + ACCESS_ONCE(d->arch.paging.p2m_total_pages) = + d->arch.paging.p2m_total_pages + 1; + page_list_add_tail(pg, &d->arch.paging.p2m_freelist); + } + else if ( d->arch.paging.p2m_total_pages > pages ) + { + /* Need to return memory to domheap */ + pg = page_list_remove_head(&d->arch.paging.p2m_freelist); + if( pg ) + { + ACCESS_ONCE(d->arch.paging.p2m_total_pages) = + d->arch.paging.p2m_total_pages - 1; + free_domheap_page(pg); + } + else + { + printk(XENLOG_ERR + "Failed to free P2M pages, P2M freelist is empty.\n"); + return -ENOMEM; + } + } + else + break; + + /* Check to see if we need to yield and try again */ + if ( preempted && general_preempt_check() ) + { + *preempted = true; + return -ERESTART; + } + } + + return 0; +} + +int arch_set_paging_mempool_size(struct domain *d, uint64_t size) +{ + unsigned long pages = size >> PAGE_SHIFT; + bool preempted = false; + int rc; + + if ( (size & ~PAGE_MASK) || /* Non page-sized request? */ + pages != (size >> PAGE_SHIFT) ) /* 32-bit overflow? */ + return -EINVAL; + + spin_lock(&d->arch.paging.lock); + rc = p2m_set_allocation(d, pages, &preempted); + spin_unlock(&d->arch.paging.lock); + + ASSERT(preempted == (rc == -ERESTART)); + + return rc; +} + +int p2m_teardown_allocation(struct domain *d) +{ + int ret = 0; + bool preempted = false; + + spin_lock(&d->arch.paging.lock); + if ( d->arch.paging.p2m_total_pages != 0 ) + { + ret = p2m_set_allocation(d, 0, &preempted); + if ( preempted ) + { + spin_unlock(&d->arch.paging.lock); + return -ERESTART; + } + ASSERT(d->arch.paging.p2m_total_pages == 0); + } + spin_unlock(&d->arch.paging.lock); + + return ret; +} + +int p2m_teardown(struct domain *d) +{ + struct p2m_domain *p2m = p2m_get_hostp2m(d); + unsigned long count = 0; + struct page_info *pg; + int rc = 0; + + p2m_write_lock(p2m); + + while ( (pg = page_list_remove_head(&p2m->pages)) ) + { + p2m_free_page(p2m->domain, pg); + count++; + /* Arbitrarily preempt every 512 iterations */ + if ( !(count % 512) && hypercall_preempt_check() ) + { + rc = -ERESTART; + break; + } + } + + p2m_write_unlock(p2m); + + return rc; +} + +void p2m_dump_info(struct domain *d) +{ + struct p2m_domain *p2m = p2m_get_hostp2m(d); + + p2m_read_lock(p2m); + printk("p2m mappings for domain %d (vmid %d):\n", + d->domain_id, p2m->vmid); + BUG_ON(p2m->stats.mappings[0] || p2m->stats.shattered[0]); + printk(" 1G mappings: %ld (shattered %ld)\n", + p2m->stats.mappings[1], p2m->stats.shattered[1]); + printk(" 2M mappings: %ld (shattered %ld)\n", + p2m->stats.mappings[2], p2m->stats.shattered[2]); + printk(" 4K mappings: %ld\n", p2m->stats.mappings[3]); + p2m_read_unlock(p2m); +} + +/* + * p2m_save_state and p2m_restore_state work in pair to workaround + * ARM64_WORKAROUND_AT_SPECULATE. p2m_save_state will set-up VTTBR to + * point to the empty page-tables to stop allocating TLB entries. + */ +void p2m_save_state(struct vcpu *p) +{ + p->arch.sctlr = READ_SYSREG(SCTLR_EL1); + + if ( cpus_have_const_cap(ARM64_WORKAROUND_AT_SPECULATE) ) + { + WRITE_SYSREG64(generate_vttbr(INVALID_VMID, empty_root_mfn), VTTBR_EL2); + /* + * Ensure VTTBR_EL2 is correctly synchronized so we can restore + * the next vCPU context without worrying about AT instruction + * speculation. + */ + isb(); + } +} + +void p2m_restore_state(struct vcpu *n) +{ + struct p2m_domain *p2m = p2m_get_hostp2m(n->domain); + uint8_t *last_vcpu_ran; + + if ( is_idle_vcpu(n) ) + return; + + WRITE_SYSREG(n->arch.sctlr, SCTLR_EL1); + WRITE_SYSREG(n->arch.hcr_el2, HCR_EL2); + + /* + * ARM64_WORKAROUND_AT_SPECULATE: VTTBR_EL2 should be restored after all + * registers associated to EL1/EL0 translations regime have been + * synchronized. + */ + asm volatile(ALTERNATIVE("nop", "isb", ARM64_WORKAROUND_AT_SPECULATE)); + WRITE_SYSREG64(p2m->vttbr, VTTBR_EL2); + + last_vcpu_ran = &p2m->last_vcpu_ran[smp_processor_id()]; + + /* + * While we are restoring an out-of-context translation regime + * we still need to ensure: + * - VTTBR_EL2 is synchronized before flushing the TLBs + * - All registers for EL1 are synchronized before executing an AT + * instructions targeting S1/S2. + */ + isb(); + + /* + * Flush local TLB for the domain to prevent wrong TLB translation + * when running multiple vCPU of the same domain on a single pCPU. + */ + if ( *last_vcpu_ran != INVALID_VCPU_ID && *last_vcpu_ran != n->vcpu_id ) + flush_guest_tlb_local(); + + *last_vcpu_ran = n->vcpu_id; +} + +/* + * Force a synchronous P2M TLB flush. + * + * Must be called with the p2m lock held. + */ +void p2m_force_tlb_flush_sync(struct p2m_domain *p2m) +{ + unsigned long flags = 0; + uint64_t ovttbr; + + ASSERT(p2m_is_write_locked(p2m)); + + /* + * ARM only provides an instruction to flush TLBs for the current + * VMID. So switch to the VTTBR of a given P2M if different. + */ + ovttbr = READ_SYSREG64(VTTBR_EL2); + if ( ovttbr != p2m->vttbr ) + { + uint64_t vttbr; + + local_irq_save(flags); + + /* + * ARM64_WORKAROUND_AT_SPECULATE: We need to stop AT to allocate + * TLBs entries because the context is partially modified. We + * only need the VMID for flushing the TLBs, so we can generate + * a new VTTBR with the VMID to flush and the empty root table. + */ + if ( !cpus_have_const_cap(ARM64_WORKAROUND_AT_SPECULATE) ) + vttbr = p2m->vttbr; + else + vttbr = generate_vttbr(p2m->vmid, empty_root_mfn); + + WRITE_SYSREG64(vttbr, VTTBR_EL2); + + /* Ensure VTTBR_EL2 is synchronized before flushing the TLBs */ + isb(); + } + + flush_guest_tlb(); + + if ( ovttbr != READ_SYSREG64(VTTBR_EL2) ) + { + WRITE_SYSREG64(ovttbr, VTTBR_EL2); + /* Ensure VTTBR_EL2 is back in place before continuing. */ + isb(); + local_irq_restore(flags); + } + + p2m->need_flush = false; +} + +void p2m_tlb_flush_sync(struct p2m_domain *p2m) +{ + if ( p2m->need_flush ) + p2m_force_tlb_flush_sync(p2m); +} + +/* + * Find and map the root page table. The caller is responsible for + * unmapping the table. + * + * The function will return NULL if the offset of the root table is + * invalid. + */ +static lpae_t *p2m_get_root_pointer(struct p2m_domain *p2m, + gfn_t gfn) +{ + unsigned long root_table; + + /* + * While the root table index is the offset from the previous level, + * we can't use (P2M_ROOT_LEVEL - 1) because the root level might be + * 0. Yet we still want to check if all the unused bits are zeroed. + */ + root_table = gfn_x(gfn) >> (XEN_PT_LEVEL_ORDER(P2M_ROOT_LEVEL) + + XEN_PT_LPAE_SHIFT); + if ( root_table >= P2M_ROOT_PAGES ) + return NULL; + + return __map_domain_page(p2m->root + root_table); +} + +/* + * Lookup the MFN corresponding to a domain's GFN. + * Lookup mem access in the ratrix tree. + * The entries associated to the GFN is considered valid. + */ +static p2m_access_t p2m_mem_access_radix_get(struct p2m_domain *p2m, gfn_t gfn) +{ + void *ptr; + + if ( !p2m->mem_access_enabled ) + return p2m->default_access; + + ptr = radix_tree_lookup(&p2m->mem_access_settings, gfn_x(gfn)); + if ( !ptr ) + return p2m_access_rwx; + else + return radix_tree_ptr_to_int(ptr); +} + +/* + * In the case of the P2M, the valid bit is used for other purpose. Use + * the type to check whether an entry is valid. + */ +static inline bool p2m_is_valid(lpae_t pte) +{ + return pte.p2m.type != p2m_invalid; +} + +/* + * lpae_is_* helpers don't check whether the valid bit is set in the + * PTE. Provide our own overlay to check the valid bit. + */ +static inline bool p2m_is_mapping(lpae_t pte, unsigned int level) +{ + return p2m_is_valid(pte) && lpae_is_mapping(pte, level); +} + +static inline bool p2m_is_superpage(lpae_t pte, unsigned int level) +{ + return p2m_is_valid(pte) && lpae_is_superpage(pte, level); +} + +#define GUEST_TABLE_MAP_FAILED 0 +#define GUEST_TABLE_SUPER_PAGE 1 +#define GUEST_TABLE_NORMAL_PAGE 2 + +static int p2m_create_table(struct p2m_domain *p2m, lpae_t *entry); + +/* + * Take the currently mapped table, find the corresponding GFN entry, + * and map the next table, if available. The previous table will be + * unmapped if the next level was mapped (e.g GUEST_TABLE_NORMAL_PAGE + * returned). + * + * The read_only parameters indicates whether intermediate tables should + * be allocated when not present. + * + * Return values: + * GUEST_TABLE_MAP_FAILED: Either read_only was set and the entry + * was empty, or allocating a new page failed. + * GUEST_TABLE_NORMAL_PAGE: next level mapped normally + * GUEST_TABLE_SUPER_PAGE: The next entry points to a superpage. + */ +static int p2m_next_level(struct p2m_domain *p2m, bool read_only, + unsigned int level, lpae_t **table, + unsigned int offset) +{ + lpae_t *entry; + int ret; + mfn_t mfn; + + entry = *table + offset; + + if ( !p2m_is_valid(*entry) ) + { + if ( read_only ) + return GUEST_TABLE_MAP_FAILED; + + ret = p2m_create_table(p2m, entry); + if ( ret ) + return GUEST_TABLE_MAP_FAILED; + } + + /* The function p2m_next_level is never called at the 3rd level */ + ASSERT(level < 3); + if ( p2m_is_mapping(*entry, level) ) + return GUEST_TABLE_SUPER_PAGE; + + mfn = lpae_get_mfn(*entry); + + unmap_domain_page(*table); + *table = map_domain_page(mfn); + + return GUEST_TABLE_NORMAL_PAGE; +} + +/* + * Get the details of a given gfn. + * + * If the entry is present, the associated MFN will be returned and the + * access and type filled up. The page_order will correspond to the + * order of the mapping in the page table (i.e it could be a superpage). + * + * If the entry is not present, INVALID_MFN will be returned and the + * page_order will be set according to the order of the invalid range. + * + * valid will contain the value of bit[0] (e.g valid bit) of the + * entry. + */ +mfn_t p2m_get_entry(struct p2m_domain *p2m, gfn_t gfn, + p2m_type_t *t, p2m_access_t *a, + unsigned int *page_order, + bool *valid) +{ + paddr_t addr = gfn_to_gaddr(gfn); + unsigned int level = 0; + lpae_t entry, *table; + int rc; + mfn_t mfn = INVALID_MFN; + p2m_type_t _t; + DECLARE_OFFSETS(offsets, addr); + + ASSERT(p2m_is_locked(p2m)); + BUILD_BUG_ON(THIRD_MASK != PAGE_MASK); + + /* Allow t to be NULL */ + t = t ?: &_t; + + *t = p2m_invalid; + + if ( valid ) + *valid = false; + + /* XXX: Check if the mapping is lower than the mapped gfn */ + + /* This gfn is higher than the highest the p2m map currently holds */ + if ( gfn_x(gfn) > gfn_x(p2m->max_mapped_gfn) ) + { + for ( level = P2M_ROOT_LEVEL; level < 3; level++ ) + if ( (gfn_x(gfn) & (XEN_PT_LEVEL_MASK(level) >> PAGE_SHIFT)) > + gfn_x(p2m->max_mapped_gfn) ) + break; + + goto out; + } + + table = p2m_get_root_pointer(p2m, gfn); + + /* + * the table should always be non-NULL because the gfn is below + * p2m->max_mapped_gfn and the root table pages are always present. + */ + if ( !table ) + { + ASSERT_UNREACHABLE(); + level = P2M_ROOT_LEVEL; + goto out; + } + + for ( level = P2M_ROOT_LEVEL; level < 3; level++ ) + { + rc = p2m_next_level(p2m, true, level, &table, offsets[level]); + if ( rc == GUEST_TABLE_MAP_FAILED ) + goto out_unmap; + else if ( rc != GUEST_TABLE_NORMAL_PAGE ) + break; + } + + entry = table[offsets[level]]; + + if ( p2m_is_valid(entry) ) + { + *t = entry.p2m.type; + + if ( a ) + *a = p2m_mem_access_radix_get(p2m, gfn); + + mfn = lpae_get_mfn(entry); + /* + * The entry may point to a superpage. Find the MFN associated + * to the GFN. + */ + mfn = mfn_add(mfn, + gfn_x(gfn) & ((1UL << XEN_PT_LEVEL_ORDER(level)) - 1)); + + if ( valid ) + *valid = lpae_is_valid(entry); + } + +out_unmap: + unmap_domain_page(table); + +out: + if ( page_order ) + *page_order = XEN_PT_LEVEL_ORDER(level); + + return mfn; +} + +static void p2m_set_permission(lpae_t *e, p2m_type_t t, p2m_access_t a) +{ + /* First apply type permissions */ + switch ( t ) + { + case p2m_ram_rw: + e->p2m.xn = 0; + e->p2m.write = 1; + break; + + case p2m_ram_ro: + e->p2m.xn = 0; + e->p2m.write = 0; + break; + + case p2m_iommu_map_rw: + case p2m_map_foreign_rw: + case p2m_grant_map_rw: + case p2m_mmio_direct_dev: + case p2m_mmio_direct_nc: + case p2m_mmio_direct_c: + e->p2m.xn = 1; + e->p2m.write = 1; + break; + + case p2m_iommu_map_ro: + case p2m_map_foreign_ro: + case p2m_grant_map_ro: + case p2m_invalid: + e->p2m.xn = 1; + e->p2m.write = 0; + break; + + case p2m_max_real_type: + BUG(); + break; + } + + /* Then restrict with access permissions */ + switch ( a ) + { + case p2m_access_rwx: + break; + case p2m_access_wx: + e->p2m.read = 0; + break; + case p2m_access_rw: + e->p2m.xn = 1; + break; + case p2m_access_w: + e->p2m.read = 0; + e->p2m.xn = 1; + break; + case p2m_access_rx: + case p2m_access_rx2rw: + e->p2m.write = 0; + break; + case p2m_access_x: + e->p2m.write = 0; + e->p2m.read = 0; + break; + case p2m_access_r: + e->p2m.write = 0; + e->p2m.xn = 1; + break; + case p2m_access_n: + case p2m_access_n2rwx: + e->p2m.read = e->p2m.write = 0; + e->p2m.xn = 1; + break; + } +} + +static lpae_t mfn_to_p2m_entry(mfn_t mfn, p2m_type_t t, p2m_access_t a) +{ + /* + * sh, xn and write bit will be defined in the following switches + * based on mattr and t. + */ + lpae_t e = (lpae_t) { + .p2m.af = 1, + .p2m.read = 1, + .p2m.table = 1, + .p2m.valid = 1, + .p2m.type = t, + }; + + BUILD_BUG_ON(p2m_max_real_type > (1 << 4)); + + switch ( t ) + { + case p2m_mmio_direct_dev: + e.p2m.mattr = MATTR_DEV; + e.p2m.sh = LPAE_SH_OUTER; + break; + + case p2m_mmio_direct_c: + e.p2m.mattr = MATTR_MEM; + e.p2m.sh = LPAE_SH_OUTER; + break; + + /* + * ARM ARM: Overlaying the shareability attribute (DDI + * 0406C.b B3-1376 to 1377) + * + * A memory region with a resultant memory type attribute of Normal, + * and a resultant cacheability attribute of Inner Non-cacheable, + * Outer Non-cacheable, must have a resultant shareability attribute + * of Outer Shareable, otherwise shareability is UNPREDICTABLE. + * + * On ARMv8 shareability is ignored and explicitly treated as Outer + * Shareable for Normal Inner Non_cacheable, Outer Non-cacheable. + * See the note for table D4-40, in page 1788 of the ARM DDI 0487A.j. + */ + case p2m_mmio_direct_nc: + e.p2m.mattr = MATTR_MEM_NC; + e.p2m.sh = LPAE_SH_OUTER; + break; + + default: + e.p2m.mattr = MATTR_MEM; + e.p2m.sh = LPAE_SH_INNER; + } + + p2m_set_permission(&e, t, a); + + ASSERT(!(mfn_to_maddr(mfn) & ~PADDR_MASK)); + + lpae_set_mfn(e, mfn); + + return e; +} + +/* Generate table entry with correct attributes. */ +static lpae_t page_to_p2m_table(struct page_info *page) +{ + /* + * The access value does not matter because the hardware will ignore + * the permission fields for table entry. + * + * We use p2m_ram_rw so the entry has a valid type. This is important + * for p2m_is_valid() to return valid on table entries. + */ + return mfn_to_p2m_entry(page_to_mfn(page), p2m_ram_rw, p2m_access_rwx); +} + +static inline void p2m_write_pte(lpae_t *p, lpae_t pte, bool clean_pte) +{ + write_pte(p, pte); + if ( clean_pte ) + clean_dcache(*p); +} + +static inline void p2m_remove_pte(lpae_t *p, bool clean_pte) +{ + lpae_t pte; + + memset(&pte, 0x00, sizeof(pte)); + p2m_write_pte(p, pte, clean_pte); +} + +/* Allocate a new page table page and hook it in via the given entry. */ +static int p2m_create_table(struct p2m_domain *p2m, lpae_t *entry) +{ + struct page_info *page; + lpae_t *p; + + ASSERT(!p2m_is_valid(*entry)); + + page = p2m_alloc_page(p2m->domain); + if ( page == NULL ) + return -ENOMEM; + + page_list_add(page, &p2m->pages); + + p = __map_domain_page(page); + clear_page(p); + + if ( p2m->clean_pte ) + clean_dcache_va_range(p, PAGE_SIZE); + + unmap_domain_page(p); + + p2m_write_pte(entry, page_to_p2m_table(page), p2m->clean_pte); + + return 0; +} + +static int p2m_mem_access_radix_set(struct p2m_domain *p2m, gfn_t gfn, + p2m_access_t a) +{ + int rc; + + if ( !p2m->mem_access_enabled ) + return 0; + + if ( p2m_access_rwx == a ) + { + radix_tree_delete(&p2m->mem_access_settings, gfn_x(gfn)); + return 0; + } + + rc = radix_tree_insert(&p2m->mem_access_settings, gfn_x(gfn), + radix_tree_int_to_ptr(a)); + if ( rc == -EEXIST ) + { + /* If a setting already exists, change it to the new one */ + radix_tree_replace_slot( + radix_tree_lookup_slot( + &p2m->mem_access_settings, gfn_x(gfn)), + radix_tree_int_to_ptr(a)); + rc = 0; + } + + return rc; +} + +/* + * Put any references on the single 4K page referenced by pte. + * TODO: Handle superpages, for now we only take special references for leaf + * pages (specifically foreign ones, which can't be super mapped today). + */ +static void p2m_put_l3_page(const lpae_t pte) +{ + mfn_t mfn = lpae_get_mfn(pte); + + ASSERT(p2m_is_valid(pte)); + + /* + * TODO: Handle other p2m types + * + * It's safe to do the put_page here because page_alloc will + * flush the TLBs if the page is reallocated before the end of + * this loop. + */ + if ( p2m_is_foreign(pte.p2m.type) ) + { + ASSERT(mfn_valid(mfn)); + put_page(mfn_to_page(mfn)); + } + /* Detect the xenheap page and mark the stored GFN as invalid. */ + else if ( p2m_is_ram(pte.p2m.type) && is_xen_heap_mfn(mfn) ) + page_set_xenheap_gfn(mfn_to_page(mfn), INVALID_GFN); +} + +/* Free lpae sub-tree behind an entry */ +static void p2m_free_entry(struct p2m_domain *p2m, + lpae_t entry, unsigned int level) +{ + unsigned int i; + lpae_t *table; + mfn_t mfn; + struct page_info *pg; + + /* Nothing to do if the entry is invalid. */ + if ( !p2m_is_valid(entry) ) + return; + + if ( p2m_is_superpage(entry, level) || (level == 3) ) + { +#ifdef CONFIG_IOREQ_SERVER + /* + * If this gets called then either the entry was replaced by an entry + * with a different base (valid case) or the shattering of a superpage + * has failed (error case). + * So, at worst, the spurious mapcache invalidation might be sent. + */ + if ( p2m_is_ram(entry.p2m.type) && + domain_has_ioreq_server(p2m->domain) ) + ioreq_request_mapcache_invalidate(p2m->domain); +#endif + + p2m->stats.mappings[level]--; + /* Nothing to do if the entry is a super-page. */ + if ( level == 3 ) + p2m_put_l3_page(entry); + return; + } + + table = map_domain_page(lpae_get_mfn(entry)); + for ( i = 0; i < XEN_PT_LPAE_ENTRIES; i++ ) + p2m_free_entry(p2m, *(table + i), level + 1); + + unmap_domain_page(table); + + /* + * Make sure all the references in the TLB have been removed before + * freing the intermediate page table. + * XXX: Should we defer the free of the page table to avoid the + * flush? + */ + p2m_tlb_flush_sync(p2m); + + mfn = lpae_get_mfn(entry); + ASSERT(mfn_valid(mfn)); + + pg = mfn_to_page(mfn); + + page_list_del(pg, &p2m->pages); + p2m_free_page(p2m->domain, pg); +} + +static bool p2m_split_superpage(struct p2m_domain *p2m, lpae_t *entry, + unsigned int level, unsigned int target, + const unsigned int *offsets) +{ + struct page_info *page; + unsigned int i; + lpae_t pte, *table; + bool rv = true; + + /* Convenience aliases */ + mfn_t mfn = lpae_get_mfn(*entry); + unsigned int next_level = level + 1; + unsigned int level_order = XEN_PT_LEVEL_ORDER(next_level); + + /* + * This should only be called with target != level and the entry is + * a superpage. + */ + ASSERT(level < target); + ASSERT(p2m_is_superpage(*entry, level)); + + page = p2m_alloc_page(p2m->domain); + if ( !page ) + return false; + + page_list_add(page, &p2m->pages); + table = __map_domain_page(page); + + /* + * We are either splitting a first level 1G page into 512 second level + * 2M pages, or a second level 2M page into 512 third level 4K pages. + */ + for ( i = 0; i < XEN_PT_LPAE_ENTRIES; i++ ) + { + lpae_t *new_entry = table + i; + + /* + * Use the content of the superpage entry and override + * the necessary fields. So the correct permission are kept. + */ + pte = *entry; + lpae_set_mfn(pte, mfn_add(mfn, i << level_order)); + + /* + * First and second level pages set p2m.table = 0, but third + * level entries set p2m.table = 1. + */ + pte.p2m.table = (next_level == 3); + + write_pte(new_entry, pte); + } + + /* Update stats */ + p2m->stats.shattered[level]++; + p2m->stats.mappings[level]--; + p2m->stats.mappings[next_level] += XEN_PT_LPAE_ENTRIES; + + /* + * Shatter superpage in the page to the level we want to make the + * changes. + * This is done outside the loop to avoid checking the offset to + * know whether the entry should be shattered for every entry. + */ + if ( next_level != target ) + rv = p2m_split_superpage(p2m, table + offsets[next_level], + level + 1, target, offsets); + + if ( p2m->clean_pte ) + clean_dcache_va_range(table, PAGE_SIZE); + + unmap_domain_page(table); + + /* + * Even if we failed, we should install the newly allocated LPAE + * entry. The caller will be in charge to free the sub-tree. + */ + p2m_write_pte(entry, page_to_p2m_table(page), p2m->clean_pte); + + return rv; +} + +/* + * Insert an entry in the p2m. This should be called with a mapping + * equal to a page/superpage (4K, 2M, 1G). + */ +int __p2m_set_entry(struct p2m_domain *p2m, + gfn_t sgfn, + unsigned int page_order, + mfn_t smfn, + p2m_type_t t, + p2m_access_t a) +{ + unsigned int level = 0; + unsigned int target = 3 - (page_order / XEN_PT_LPAE_SHIFT); + lpae_t *entry, *table, orig_pte; + int rc; + /* A mapping is removed if the MFN is invalid. */ + bool removing_mapping = mfn_eq(smfn, INVALID_MFN); + DECLARE_OFFSETS(offsets, gfn_to_gaddr(sgfn)); + + ASSERT(p2m_is_write_locked(p2m)); + + /* + * Check if the level target is valid: we only support + * 4K - 2M - 1G mapping. + */ + ASSERT(target > 0 && target <= 3); + + table = p2m_get_root_pointer(p2m, sgfn); + if ( !table ) + return -EINVAL; + + for ( level = P2M_ROOT_LEVEL; level < target; level++ ) + { + /* + * Don't try to allocate intermediate page table if the mapping + * is about to be removed. + */ + rc = p2m_next_level(p2m, removing_mapping, + level, &table, offsets[level]); + if ( rc == GUEST_TABLE_MAP_FAILED ) + { + /* + * We are here because p2m_next_level has failed to map + * the intermediate page table (e.g the table does not exist + * and they p2m tree is read-only). It is a valid case + * when removing a mapping as it may not exist in the + * page table. In this case, just ignore it. + */ + rc = removing_mapping ? 0 : -ENOENT; + goto out; + } + else if ( rc != GUEST_TABLE_NORMAL_PAGE ) + break; + } + + entry = table + offsets[level]; + + /* + * If we are here with level < target, we must be at a leaf node, + * and we need to break up the superpage. + */ + if ( level < target ) + { + /* We need to split the original page. */ + lpae_t split_pte = *entry; + + ASSERT(p2m_is_superpage(*entry, level)); + + if ( !p2m_split_superpage(p2m, &split_pte, level, target, offsets) ) + { + /* + * The current super-page is still in-place, so re-increment + * the stats. + */ + p2m->stats.mappings[level]++; + + /* Free the allocated sub-tree */ + p2m_free_entry(p2m, split_pte, level); + + rc = -ENOMEM; + goto out; + } + + /* + * Follow the break-before-sequence to update the entry. + * For more details see (D4.7.1 in ARM DDI 0487A.j). + */ + p2m_remove_pte(entry, p2m->clean_pte); + p2m_force_tlb_flush_sync(p2m); + + p2m_write_pte(entry, split_pte, p2m->clean_pte); + + /* then move to the level we want to make real changes */ + for ( ; level < target; level++ ) + { + rc = p2m_next_level(p2m, true, level, &table, offsets[level]); + + /* + * The entry should be found and either be a table + * or a superpage if level 3 is not targeted + */ + ASSERT(rc == GUEST_TABLE_NORMAL_PAGE || + (rc == GUEST_TABLE_SUPER_PAGE && target < 3)); + } + + entry = table + offsets[level]; + } + + /* + * We should always be there with the correct level because + * all the intermediate tables have been installed if necessary. + */ + ASSERT(level == target); + + orig_pte = *entry; + + /* + * The radix-tree can only work on 4KB. This is only used when + * memaccess is enabled and during shutdown. + */ + ASSERT(!p2m->mem_access_enabled || page_order == 0 || + p2m->domain->is_dying); + /* + * The access type should always be p2m_access_rwx when the mapping + * is removed. + */ + ASSERT(!mfn_eq(INVALID_MFN, smfn) || (a == p2m_access_rwx)); + /* + * Update the mem access permission before update the P2M. So we + * don't have to revert the mapping if it has failed. + */ + rc = p2m_mem_access_radix_set(p2m, sgfn, a); + if ( rc ) + goto out; + + /* + * Always remove the entry in order to follow the break-before-make + * sequence when updating the translation table (D4.7.1 in ARM DDI + * 0487A.j). + */ + if ( lpae_is_valid(orig_pte) || removing_mapping ) + p2m_remove_pte(entry, p2m->clean_pte); + + if ( removing_mapping ) + /* Flush can be deferred if the entry is removed */ + p2m->need_flush |= !!lpae_is_valid(orig_pte); + else + { + lpae_t pte = mfn_to_p2m_entry(smfn, t, a); + + if ( level < 3 ) + pte.p2m.table = 0; /* Superpage entry */ + + /* + * It is necessary to flush the TLB before writing the new entry + * to keep coherency when the previous entry was valid. + * + * Although, it could be defered when only the permissions are + * changed (e.g in case of memaccess). + */ + if ( lpae_is_valid(orig_pte) ) + { + if ( likely(!p2m->mem_access_enabled) || + P2M_CLEAR_PERM(pte) != P2M_CLEAR_PERM(orig_pte) ) + p2m_force_tlb_flush_sync(p2m); + else + p2m->need_flush = true; + } + else if ( !p2m_is_valid(orig_pte) ) /* new mapping */ + p2m->stats.mappings[level]++; + + p2m_write_pte(entry, pte, p2m->clean_pte); + + p2m->max_mapped_gfn = gfn_max(p2m->max_mapped_gfn, + gfn_add(sgfn, (1UL << page_order) - 1)); + p2m->lowest_mapped_gfn = gfn_min(p2m->lowest_mapped_gfn, sgfn); + } + + if ( is_iommu_enabled(p2m->domain) && + (lpae_is_valid(orig_pte) || lpae_is_valid(*entry)) ) + { + unsigned int flush_flags = 0; + + if ( lpae_is_valid(orig_pte) ) + flush_flags |= IOMMU_FLUSHF_modified; + if ( lpae_is_valid(*entry) ) + flush_flags |= IOMMU_FLUSHF_added; + + rc = iommu_iotlb_flush(p2m->domain, _dfn(gfn_x(sgfn)), + 1UL << page_order, flush_flags); + } + else + rc = 0; + + /* + * Free the entry only if the original pte was valid and the base + * is different (to avoid freeing when permission is changed). + */ + if ( p2m_is_valid(orig_pte) && + !mfn_eq(lpae_get_mfn(*entry), lpae_get_mfn(orig_pte)) ) + p2m_free_entry(p2m, orig_pte, level); + +out: + unmap_domain_page(table); + + return rc; +} + +int p2m_set_entry(struct p2m_domain *p2m, + gfn_t sgfn, + unsigned long nr, + mfn_t smfn, + p2m_type_t t, + p2m_access_t a) +{ + int rc = 0; + + /* + * Any reference taken by the P2M mappings (e.g. foreign mapping) will + * be dropped in relinquish_p2m_mapping(). As the P2M will still + * be accessible after, we need to prevent mapping to be added when the + * domain is dying. + */ + if ( unlikely(p2m->domain->is_dying) ) + return -ENOMEM; + + while ( nr ) + { + unsigned long mask; + unsigned long order; + + /* + * Don't take into account the MFN when removing mapping (i.e + * MFN_INVALID) to calculate the correct target order. + * + * XXX: Support superpage mappings if nr is not aligned to a + * superpage size. + */ + mask = !mfn_eq(smfn, INVALID_MFN) ? mfn_x(smfn) : 0; + mask |= gfn_x(sgfn) | nr; + + /* Always map 4k by 4k when memaccess is enabled */ + if ( unlikely(p2m->mem_access_enabled) ) + order = THIRD_ORDER; + else if ( !(mask & ((1UL << FIRST_ORDER) - 1)) ) + order = FIRST_ORDER; + else if ( !(mask & ((1UL << SECOND_ORDER) - 1)) ) + order = SECOND_ORDER; + else + order = THIRD_ORDER; + + rc = __p2m_set_entry(p2m, sgfn, order, smfn, t, a); + if ( rc ) + break; + + sgfn = gfn_add(sgfn, (1 << order)); + if ( !mfn_eq(smfn, INVALID_MFN) ) + smfn = mfn_add(smfn, (1 << order)); + + nr -= (1 << order); + } + + return rc; +} + +/* Invalidate all entries in the table. The p2m should be write locked. */ +static void p2m_invalidate_table(struct p2m_domain *p2m, mfn_t mfn) +{ + lpae_t *table; + unsigned int i; + + ASSERT(p2m_is_write_locked(p2m)); + + table = map_domain_page(mfn); + + for ( i = 0; i < XEN_PT_LPAE_ENTRIES; i++ ) + { + lpae_t pte = table[i]; + + /* + * Writing an entry can be expensive because it may involve + * cleaning the cache. So avoid updating the entry if the valid + * bit is already cleared. + */ + if ( !pte.p2m.valid ) + continue; + + pte.p2m.valid = 0; + + p2m_write_pte(&table[i], pte, p2m->clean_pte); + } + + unmap_domain_page(table); + + p2m->need_flush = true; +} + +/* + * Invalidate all entries in the root page-tables. This is + * useful to get fault on entry and do an action. + * + * p2m_invalid_root() should not be called when the P2M is shared with + * the IOMMU because it will cause IOMMU fault. + */ +void p2m_invalidate_root(struct p2m_domain *p2m) +{ + unsigned int i; + + ASSERT(!iommu_use_hap_pt(p2m->domain)); + + p2m_write_lock(p2m); + + for ( i = 0; i < P2M_ROOT_LEVEL; i++ ) + p2m_invalidate_table(p2m, page_to_mfn(p2m->root + i)); + + p2m_write_unlock(p2m); +} + +/* + * Resolve any translation fault due to change in the p2m. This + * includes break-before-make and valid bit cleared. + */ +bool p2m_resolve_translation_fault(struct domain *d, gfn_t gfn) +{ + struct p2m_domain *p2m = p2m_get_hostp2m(d); + unsigned int level = 0; + bool resolved = false; + lpae_t entry, *table; + + /* Convenience aliases */ + DECLARE_OFFSETS(offsets, gfn_to_gaddr(gfn)); + + p2m_write_lock(p2m); + + /* This gfn is higher than the highest the p2m map currently holds */ + if ( gfn_x(gfn) > gfn_x(p2m->max_mapped_gfn) ) + goto out; + + table = p2m_get_root_pointer(p2m, gfn); + /* + * The table should always be non-NULL because the gfn is below + * p2m->max_mapped_gfn and the root table pages are always present. + */ + if ( !table ) + { + ASSERT_UNREACHABLE(); + goto out; + } + + /* + * Go down the page-tables until an entry has the valid bit unset or + * a block/page entry has been hit. + */ + for ( level = P2M_ROOT_LEVEL; level <= 3; level++ ) + { + int rc; + + entry = table[offsets[level]]; + + if ( level == 3 ) + break; + + /* Stop as soon as we hit an entry with the valid bit unset. */ + if ( !lpae_is_valid(entry) ) + break; + + rc = p2m_next_level(p2m, true, level, &table, offsets[level]); + if ( rc == GUEST_TABLE_MAP_FAILED ) + goto out_unmap; + else if ( rc != GUEST_TABLE_NORMAL_PAGE ) + break; + } + + /* + * If the valid bit of the entry is set, it means someone was playing with + * the Stage-2 page table. Nothing to do and mark the fault as resolved. + */ + if ( lpae_is_valid(entry) ) + { + resolved = true; + goto out_unmap; + } + + /* + * The valid bit is unset. If the entry is still not valid then the fault + * cannot be resolved, exit and report it. + */ + if ( !p2m_is_valid(entry) ) + goto out_unmap; + + /* + * Now we have an entry with valid bit unset, but still valid from + * the P2M point of view. + * + * If an entry is pointing to a table, each entry of the table will + * have there valid bit cleared. This allows a function to clear the + * full p2m with just a couple of write. The valid bit will then be + * propagated on the fault. + * If an entry is pointing to a block/page, no work to do for now. + */ + if ( lpae_is_table(entry, level) ) + p2m_invalidate_table(p2m, lpae_get_mfn(entry)); + + /* + * Now that the work on the entry is done, set the valid bit to prevent + * another fault on that entry. + */ + resolved = true; + entry.p2m.valid = 1; + + p2m_write_pte(table + offsets[level], entry, p2m->clean_pte); + + /* + * No need to flush the TLBs as the modified entry had the valid bit + * unset. + */ + +out_unmap: + unmap_domain_page(table); + +out: + p2m_write_unlock(p2m); + + return resolved; +} + +static struct page_info *p2m_allocate_root(void) +{ + struct page_info *page; + unsigned int i; + + page = alloc_domheap_pages(NULL, P2M_ROOT_ORDER, 0); + if ( page == NULL ) + return NULL; + + /* Clear both first level pages */ + for ( i = 0; i < P2M_ROOT_PAGES; i++ ) + clear_and_clean_page(page + i); + + return page; +} + +static int p2m_alloc_table(struct domain *d) +{ + struct p2m_domain *p2m = p2m_get_hostp2m(d); + + p2m->root = p2m_allocate_root(); + if ( !p2m->root ) + return -ENOMEM; + + p2m->vttbr = generate_vttbr(p2m->vmid, page_to_mfn(p2m->root)); + + /* + * Make sure that all TLBs corresponding to the new VMID are flushed + * before using it + */ + p2m_write_lock(p2m); + p2m_force_tlb_flush_sync(p2m); + p2m_write_unlock(p2m); + + return 0; +} + +int p2m_init(struct domain *d) +{ + struct p2m_domain *p2m = p2m_get_hostp2m(d); + int rc; + unsigned int cpu; + + rwlock_init(&p2m->lock); + spin_lock_init(&d->arch.paging.lock); + INIT_PAGE_LIST_HEAD(&p2m->pages); + INIT_PAGE_LIST_HEAD(&d->arch.paging.p2m_freelist); + + p2m->vmid = INVALID_VMID; + p2m->max_mapped_gfn = _gfn(0); + p2m->lowest_mapped_gfn = _gfn(ULONG_MAX); + + p2m->default_access = p2m_access_rwx; + p2m->mem_access_enabled = false; + radix_tree_init(&p2m->mem_access_settings); + + /* + * Some IOMMUs don't support coherent PT walk. When the p2m is + * shared with the CPU, Xen has to make sure that the PT changes have + * reached the memory + */ + p2m->clean_pte = is_iommu_enabled(d) && + !iommu_has_feature(d, IOMMU_FEAT_COHERENT_WALK); + + /* + * Make sure that the type chosen to is able to store the an vCPU ID + * between 0 and the maximum of virtual CPUS supported as long as + * the INVALID_VCPU_ID. + */ + BUILD_BUG_ON((1 << (sizeof(p2m->last_vcpu_ran[0]) * 8)) < MAX_VIRT_CPUS); + BUILD_BUG_ON((1 << (sizeof(p2m->last_vcpu_ran[0])* 8)) < INVALID_VCPU_ID); + + for_each_possible_cpu(cpu) + p2m->last_vcpu_ran[cpu] = INVALID_VCPU_ID; + + /* + * "Trivial" initialisation is now complete. Set the backpointer so + * p2m_teardown() and friends know to do something. + */ + p2m->domain = d; + + rc = p2m_alloc_vmid(d); + if ( rc ) + return rc; + + rc = p2m_alloc_table(d); + if ( rc ) + return rc; + + return 0; +} + +/* VTCR value to be configured by all CPUs. Set only once by the boot CPU */ +static register_t __read_mostly vtcr; + +void setup_virt_paging_one(void *data) +{ + WRITE_SYSREG(vtcr, VTCR_EL2); + + /* + * ARM64_WORKAROUND_AT_SPECULATE: We want to keep the TLBs free from + * entries related to EL1/EL0 translation regime until a guest vCPU + * is running. For that, we need to set-up VTTBR to point to an empty + * page-table and turn on stage-2 translation. The TLB entries + * associated with EL1/EL0 translation regime will also be flushed in case + * an AT instruction was speculated before hand. + */ + if ( cpus_have_cap(ARM64_WORKAROUND_AT_SPECULATE) ) + { + WRITE_SYSREG64(generate_vttbr(INVALID_VMID, empty_root_mfn), VTTBR_EL2); + WRITE_SYSREG(READ_SYSREG(HCR_EL2) | HCR_VM, HCR_EL2); + isb(); + + flush_all_guests_tlb_local(); + } +} + +void __init setup_virt_paging(void) +{ + /* Setup Stage 2 address translation */ + register_t val = VTCR_RES1|VTCR_SH0_IS|VTCR_ORGN0_WBWA|VTCR_IRGN0_WBWA; + + static const struct { + unsigned int pabits; /* Physical Address Size */ + unsigned int t0sz; /* Desired T0SZ, minimum in comment */ + unsigned int root_order; /* Page order of the root of the p2m */ + unsigned int sl0; /* Desired SL0, maximum in comment */ + } pa_range_info[] __initconst = { + /* T0SZ minimum and SL0 maximum from ARM DDI 0487H.a Table D5-6 */ + /* PA size, t0sz(min), root-order, sl0(max) */ +#ifdef CONFIG_ARM_64 + [0] = { 32, 32/*32*/, 0, 1 }, + [1] = { 36, 28/*28*/, 0, 1 }, + [2] = { 40, 24/*24*/, 1, 1 }, + [3] = { 42, 22/*22*/, 3, 1 }, + [4] = { 44, 20/*20*/, 0, 2 }, + [5] = { 48, 16/*16*/, 0, 2 }, + [6] = { 52, 12/*12*/, 4, 2 }, + [7] = { 0 } /* Invalid */ +#else + { 32, 0/*0*/, 0, 1 }, + { 40, 24/*24*/, 1, 1 } +#endif + }; + + unsigned int i; + unsigned int pa_range = 0x10; /* Larger than any possible value */ + +#ifdef CONFIG_ARM_32 + /* + * Typecast pa_range_info[].t0sz into arm32 bit variant. + * + * VTCR.T0SZ is bits [3:0] and S(sign extension), bit[4] for arm322. + * Thus, pa_range_info[].t0sz is translated to its arm32 variant using + * struct bitfields. + */ + struct + { + signed int val:5; + } t0sz_32; +#else + /* + * Restrict "p2m_ipa_bits" if needed. As P2M table is always configured + * with IPA bits == PA bits, compare against "pabits". + */ + if ( pa_range_info[system_cpuinfo.mm64.pa_range].pabits < p2m_ipa_bits ) + p2m_ipa_bits = pa_range_info[system_cpuinfo.mm64.pa_range].pabits; + + /* + * cpu info sanitization made sure we support 16bits VMID only if all + * cores are supporting it. + */ + if ( system_cpuinfo.mm64.vmid_bits == MM64_VMID_16_BITS_SUPPORT ) + max_vmid = MAX_VMID_16_BIT; +#endif + + /* Choose suitable "pa_range" according to the resulted "p2m_ipa_bits". */ + for ( i = 0; i < ARRAY_SIZE(pa_range_info); i++ ) + { + if ( p2m_ipa_bits == pa_range_info[i].pabits ) + { + pa_range = i; + break; + } + } + + /* Check if we found the associated entry in the array */ + if ( pa_range >= ARRAY_SIZE(pa_range_info) || !pa_range_info[pa_range].pabits ) + panic("%u-bit P2M is not supported\n", p2m_ipa_bits); + +#ifdef CONFIG_ARM_64 + val |= VTCR_PS(pa_range); + val |= VTCR_TG0_4K; + + /* Set the VS bit only if 16 bit VMID is supported. */ + if ( MAX_VMID == MAX_VMID_16_BIT ) + val |= VTCR_VS; +#endif + + val |= VTCR_SL0(pa_range_info[pa_range].sl0); + val |= VTCR_T0SZ(pa_range_info[pa_range].t0sz); + + p2m_root_order = pa_range_info[pa_range].root_order; + p2m_root_level = 2 - pa_range_info[pa_range].sl0; + +#ifdef CONFIG_ARM_64 + p2m_ipa_bits = 64 - pa_range_info[pa_range].t0sz; +#else + t0sz_32.val = pa_range_info[pa_range].t0sz; + p2m_ipa_bits = 32 - t0sz_32.val; +#endif + + printk("P2M: %d-bit IPA with %d-bit PA and %d-bit VMID\n", + p2m_ipa_bits, + pa_range_info[pa_range].pabits, + ( MAX_VMID == MAX_VMID_16_BIT ) ? 16 : 8); + + printk("P2M: %d levels with order-%d root, VTCR 0x%"PRIregister"\n", + 4 - P2M_ROOT_LEVEL, P2M_ROOT_ORDER, val); + + p2m_vmid_allocator_init(); + + /* It is not allowed to concatenate a level zero root */ + BUG_ON( P2M_ROOT_LEVEL == 0 && P2M_ROOT_ORDER > 0 ); + vtcr = val; + + /* + * ARM64_WORKAROUND_AT_SPECULATE requires to allocate root table + * with all entries zeroed. + */ + if ( cpus_have_cap(ARM64_WORKAROUND_AT_SPECULATE) ) + { + struct page_info *root; + + root = p2m_allocate_root(); + if ( !root ) + panic("Unable to allocate root table for ARM64_WORKAROUND_AT_SPECULATE\n"); + + empty_root_mfn = page_to_mfn(root); + } + + setup_virt_paging_one(NULL); + smp_call_function(setup_virt_paging_one, NULL, 1); +} + +/* + * Local variables: + * mode: C + * c-file-style: "BSD" + * c-basic-offset: 4 + * indent-tabs-mode: nil + * End: + */ diff --git a/xen/arch/arm/p2m.c b/xen/arch/arm/p2m.c index de32a2d638..b2771e0bed 100644 --- a/xen/arch/arm/p2m.c +++ b/xen/arch/arm/p2m.c @@ -1,1466 +1,138 @@ /* SPDX-License-Identifier: GPL-2.0 */ #include -#include #include -#include #include #include #include -#include #include #include #include #include #include -#define MAX_VMID_8_BIT (1UL << 8) -#define MAX_VMID_16_BIT (1UL << 16) - -#define INVALID_VMID 0 /* VMID 0 is reserved */ - -unsigned int __read_mostly p2m_root_order; -unsigned int __read_mostly p2m_root_level; #ifdef CONFIG_ARM_64 -static unsigned int __read_mostly max_vmid = MAX_VMID_8_BIT; -/* VMID is by default 8 bit width on AArch64 */ -#define MAX_VMID max_vmid -#else -/* VMID is always 8 bit width on AArch32 */ -#define MAX_VMID MAX_VMID_8_BIT +unsigned int __read_mostly max_vmid = MAX_VMID_8_BIT; #endif -#define P2M_ROOT_PAGES (1<arch.paging.lock); - pg = page_list_remove_head(&d->arch.paging.p2m_freelist); - spin_unlock(&d->arch.paging.lock); - } - - return pg; -} - -static void p2m_free_page(struct domain *d, struct page_info *pg) -{ - if ( is_hardware_domain(d) ) - free_domheap_page(pg); - else - { - spin_lock(&d->arch.paging.lock); - page_list_add_tail(pg, &d->arch.paging.p2m_freelist); - spin_unlock(&d->arch.paging.lock); - } -} - -/* Return the size of the pool, in bytes. */ -int arch_get_paging_mempool_size(struct domain *d, uint64_t *size) -{ - *size = (uint64_t)ACCESS_ONCE(d->arch.paging.p2m_total_pages) << PAGE_SHIFT; - return 0; -} - -/* - * Set the pool of pages to the required number of pages. - * Returns 0 for success, non-zero for failure. - * Call with d->arch.paging.lock held. - */ -int p2m_set_allocation(struct domain *d, unsigned long pages, bool *preempted) -{ - struct page_info *pg; - - ASSERT(spin_is_locked(&d->arch.paging.lock)); - - for ( ; ; ) - { - if ( d->arch.paging.p2m_total_pages < pages ) - { - /* Need to allocate more memory from domheap */ - pg = alloc_domheap_page(NULL, 0); - if ( pg == NULL ) - { - printk(XENLOG_ERR "Failed to allocate P2M pages.\n"); - return -ENOMEM; - } - ACCESS_ONCE(d->arch.paging.p2m_total_pages) = - d->arch.paging.p2m_total_pages + 1; - page_list_add_tail(pg, &d->arch.paging.p2m_freelist); - } - else if ( d->arch.paging.p2m_total_pages > pages ) - { - /* Need to return memory to domheap */ - pg = page_list_remove_head(&d->arch.paging.p2m_freelist); - if( pg ) - { - ACCESS_ONCE(d->arch.paging.p2m_total_pages) = - d->arch.paging.p2m_total_pages - 1; - free_domheap_page(pg); - } - else - { - printk(XENLOG_ERR - "Failed to free P2M pages, P2M freelist is empty.\n"); - return -ENOMEM; - } - } - else - break; - - /* Check to see if we need to yield and try again */ - if ( preempted && general_preempt_check() ) - { - *preempted = true; - return -ERESTART; - } - } - - return 0; -} - -int arch_set_paging_mempool_size(struct domain *d, uint64_t size) -{ - unsigned long pages = size >> PAGE_SHIFT; - bool preempted = false; - int rc; - - if ( (size & ~PAGE_MASK) || /* Non page-sized request? */ - pages != (size >> PAGE_SHIFT) ) /* 32-bit overflow? */ - return -EINVAL; - - spin_lock(&d->arch.paging.lock); - rc = p2m_set_allocation(d, pages, &preempted); - spin_unlock(&d->arch.paging.lock); - - ASSERT(preempted == (rc == -ERESTART)); - - return rc; -} - -int p2m_teardown_allocation(struct domain *d) -{ - int ret = 0; - bool preempted = false; - - spin_lock(&d->arch.paging.lock); - if ( d->arch.paging.p2m_total_pages != 0 ) - { - ret = p2m_set_allocation(d, 0, &preempted); - if ( preempted ) - { - spin_unlock(&d->arch.paging.lock); - return -ERESTART; - } - ASSERT(d->arch.paging.p2m_total_pages == 0); - } - spin_unlock(&d->arch.paging.lock); - - return ret; -} - -/* Unlock the flush and do a P2M TLB flush if necessary */ -void p2m_write_unlock(struct p2m_domain *p2m) -{ - /* - * The final flush is done with the P2M write lock taken to avoid - * someone else modifying the P2M wbefore the TLB invalidation has - * completed. - */ - p2m_tlb_flush_sync(p2m); - - write_unlock(&p2m->lock); -} - -void p2m_dump_info(struct domain *d) -{ - struct p2m_domain *p2m = p2m_get_hostp2m(d); - - p2m_read_lock(p2m); - printk("p2m mappings for domain %d (vmid %d):\n", - d->domain_id, p2m->vmid); - BUG_ON(p2m->stats.mappings[0] || p2m->stats.shattered[0]); - printk(" 1G mappings: %ld (shattered %ld)\n", - p2m->stats.mappings[1], p2m->stats.shattered[1]); - printk(" 2M mappings: %ld (shattered %ld)\n", - p2m->stats.mappings[2], p2m->stats.shattered[2]); - printk(" 4K mappings: %ld\n", p2m->stats.mappings[3]); - p2m_read_unlock(p2m); -} - -void memory_type_changed(struct domain *d) -{ -} - -void dump_p2m_lookup(struct domain *d, paddr_t addr) -{ - struct p2m_domain *p2m = p2m_get_hostp2m(d); - - printk("dom%d IPA 0x%"PRIpaddr"\n", d->domain_id, addr); - - printk("P2M @ %p mfn:%#"PRI_mfn"\n", - p2m->root, mfn_x(page_to_mfn(p2m->root))); - - dump_pt_walk(page_to_maddr(p2m->root), addr, - P2M_ROOT_LEVEL, P2M_ROOT_PAGES); -} - -/* - * p2m_save_state and p2m_restore_state work in pair to workaround - * ARM64_WORKAROUND_AT_SPECULATE. p2m_save_state will set-up VTTBR to - * point to the empty page-tables to stop allocating TLB entries. - */ -void p2m_save_state(struct vcpu *p) -{ - p->arch.sctlr = READ_SYSREG(SCTLR_EL1); - - if ( cpus_have_const_cap(ARM64_WORKAROUND_AT_SPECULATE) ) - { - WRITE_SYSREG64(generate_vttbr(INVALID_VMID, empty_root_mfn), VTTBR_EL2); - /* - * Ensure VTTBR_EL2 is correctly synchronized so we can restore - * the next vCPU context without worrying about AT instruction - * speculation. - */ - isb(); - } -} - -void p2m_restore_state(struct vcpu *n) -{ - struct p2m_domain *p2m = p2m_get_hostp2m(n->domain); - uint8_t *last_vcpu_ran; - - if ( is_idle_vcpu(n) ) - return; - - WRITE_SYSREG(n->arch.sctlr, SCTLR_EL1); - WRITE_SYSREG(n->arch.hcr_el2, HCR_EL2); - - /* - * ARM64_WORKAROUND_AT_SPECULATE: VTTBR_EL2 should be restored after all - * registers associated to EL1/EL0 translations regime have been - * synchronized. - */ - asm volatile(ALTERNATIVE("nop", "isb", ARM64_WORKAROUND_AT_SPECULATE)); - WRITE_SYSREG64(p2m->vttbr, VTTBR_EL2); - - last_vcpu_ran = &p2m->last_vcpu_ran[smp_processor_id()]; - - /* - * While we are restoring an out-of-context translation regime - * we still need to ensure: - * - VTTBR_EL2 is synchronized before flushing the TLBs - * - All registers for EL1 are synchronized before executing an AT - * instructions targeting S1/S2. - */ - isb(); - - /* - * Flush local TLB for the domain to prevent wrong TLB translation - * when running multiple vCPU of the same domain on a single pCPU. - */ - if ( *last_vcpu_ran != INVALID_VCPU_ID && *last_vcpu_ran != n->vcpu_id ) - flush_guest_tlb_local(); - - *last_vcpu_ran = n->vcpu_id; -} - -/* - * Force a synchronous P2M TLB flush. - * - * Must be called with the p2m lock held. - */ -static void p2m_force_tlb_flush_sync(struct p2m_domain *p2m) -{ - unsigned long flags = 0; - uint64_t ovttbr; - - ASSERT(p2m_is_write_locked(p2m)); - - /* - * ARM only provides an instruction to flush TLBs for the current - * VMID. So switch to the VTTBR of a given P2M if different. - */ - ovttbr = READ_SYSREG64(VTTBR_EL2); - if ( ovttbr != p2m->vttbr ) - { - uint64_t vttbr; - - local_irq_save(flags); - - /* - * ARM64_WORKAROUND_AT_SPECULATE: We need to stop AT to allocate - * TLBs entries because the context is partially modified. We - * only need the VMID for flushing the TLBs, so we can generate - * a new VTTBR with the VMID to flush and the empty root table. - */ - if ( !cpus_have_const_cap(ARM64_WORKAROUND_AT_SPECULATE) ) - vttbr = p2m->vttbr; - else - vttbr = generate_vttbr(p2m->vmid, empty_root_mfn); - - WRITE_SYSREG64(vttbr, VTTBR_EL2); - - /* Ensure VTTBR_EL2 is synchronized before flushing the TLBs */ - isb(); - } - - flush_guest_tlb(); - - if ( ovttbr != READ_SYSREG64(VTTBR_EL2) ) - { - WRITE_SYSREG64(ovttbr, VTTBR_EL2); - /* Ensure VTTBR_EL2 is back in place before continuing. */ - isb(); - local_irq_restore(flags); - } - - p2m->need_flush = false; -} - -void p2m_tlb_flush_sync(struct p2m_domain *p2m) -{ - if ( p2m->need_flush ) - p2m_force_tlb_flush_sync(p2m); -} - -/* - * Find and map the root page table. The caller is responsible for - * unmapping the table. - * - * The function will return NULL if the offset of the root table is - * invalid. - */ -static lpae_t *p2m_get_root_pointer(struct p2m_domain *p2m, - gfn_t gfn) -{ - unsigned long root_table; - - /* - * While the root table index is the offset from the previous level, - * we can't use (P2M_ROOT_LEVEL - 1) because the root level might be - * 0. Yet we still want to check if all the unused bits are zeroed. - */ - root_table = gfn_x(gfn) >> (XEN_PT_LEVEL_ORDER(P2M_ROOT_LEVEL) + - XEN_PT_LPAE_SHIFT); - if ( root_table >= P2M_ROOT_PAGES ) - return NULL; - - return __map_domain_page(p2m->root + root_table); -} - -/* - * Lookup the MFN corresponding to a domain's GFN. - * Lookup mem access in the ratrix tree. - * The entries associated to the GFN is considered valid. - */ -static p2m_access_t p2m_mem_access_radix_get(struct p2m_domain *p2m, gfn_t gfn) -{ - void *ptr; - - if ( !p2m->mem_access_enabled ) - return p2m->default_access; - - ptr = radix_tree_lookup(&p2m->mem_access_settings, gfn_x(gfn)); - if ( !ptr ) - return p2m_access_rwx; - else - return radix_tree_ptr_to_int(ptr); -} - -/* - * In the case of the P2M, the valid bit is used for other purpose. Use - * the type to check whether an entry is valid. - */ -static inline bool p2m_is_valid(lpae_t pte) -{ - return pte.p2m.type != p2m_invalid; -} - -/* - * lpae_is_* helpers don't check whether the valid bit is set in the - * PTE. Provide our own overlay to check the valid bit. - */ -static inline bool p2m_is_mapping(lpae_t pte, unsigned int level) -{ - return p2m_is_valid(pte) && lpae_is_mapping(pte, level); -} - -static inline bool p2m_is_superpage(lpae_t pte, unsigned int level) -{ - return p2m_is_valid(pte) && lpae_is_superpage(pte, level); -} - -#define GUEST_TABLE_MAP_FAILED 0 -#define GUEST_TABLE_SUPER_PAGE 1 -#define GUEST_TABLE_NORMAL_PAGE 2 - -static int p2m_create_table(struct p2m_domain *p2m, lpae_t *entry); - -/* - * Take the currently mapped table, find the corresponding GFN entry, - * and map the next table, if available. The previous table will be - * unmapped if the next level was mapped (e.g GUEST_TABLE_NORMAL_PAGE - * returned). - * - * The read_only parameters indicates whether intermediate tables should - * be allocated when not present. - * - * Return values: - * GUEST_TABLE_MAP_FAILED: Either read_only was set and the entry - * was empty, or allocating a new page failed. - * GUEST_TABLE_NORMAL_PAGE: next level mapped normally - * GUEST_TABLE_SUPER_PAGE: The next entry points to a superpage. - */ -static int p2m_next_level(struct p2m_domain *p2m, bool read_only, - unsigned int level, lpae_t **table, - unsigned int offset) -{ - lpae_t *entry; - int ret; - mfn_t mfn; - - entry = *table + offset; - - if ( !p2m_is_valid(*entry) ) - { - if ( read_only ) - return GUEST_TABLE_MAP_FAILED; - - ret = p2m_create_table(p2m, entry); - if ( ret ) - return GUEST_TABLE_MAP_FAILED; - } - - /* The function p2m_next_level is never called at the 3rd level */ - ASSERT(level < 3); - if ( p2m_is_mapping(*entry, level) ) - return GUEST_TABLE_SUPER_PAGE; - - mfn = lpae_get_mfn(*entry); - - unmap_domain_page(*table); - *table = map_domain_page(mfn); - - return GUEST_TABLE_NORMAL_PAGE; -} - -/* - * Get the details of a given gfn. - * - * If the entry is present, the associated MFN will be returned and the - * access and type filled up. The page_order will correspond to the - * order of the mapping in the page table (i.e it could be a superpage). - * - * If the entry is not present, INVALID_MFN will be returned and the - * page_order will be set according to the order of the invalid range. - * - * valid will contain the value of bit[0] (e.g valid bit) of the - * entry. - */ -mfn_t p2m_get_entry(struct p2m_domain *p2m, gfn_t gfn, - p2m_type_t *t, p2m_access_t *a, - unsigned int *page_order, - bool *valid) -{ - paddr_t addr = gfn_to_gaddr(gfn); - unsigned int level = 0; - lpae_t entry, *table; - int rc; - mfn_t mfn = INVALID_MFN; - p2m_type_t _t; - DECLARE_OFFSETS(offsets, addr); - - ASSERT(p2m_is_locked(p2m)); - BUILD_BUG_ON(THIRD_MASK != PAGE_MASK); - - /* Allow t to be NULL */ - t = t ?: &_t; - - *t = p2m_invalid; - - if ( valid ) - *valid = false; - - /* XXX: Check if the mapping is lower than the mapped gfn */ - - /* This gfn is higher than the highest the p2m map currently holds */ - if ( gfn_x(gfn) > gfn_x(p2m->max_mapped_gfn) ) - { - for ( level = P2M_ROOT_LEVEL; level < 3; level++ ) - if ( (gfn_x(gfn) & (XEN_PT_LEVEL_MASK(level) >> PAGE_SHIFT)) > - gfn_x(p2m->max_mapped_gfn) ) - break; - - goto out; - } - - table = p2m_get_root_pointer(p2m, gfn); - - /* - * the table should always be non-NULL because the gfn is below - * p2m->max_mapped_gfn and the root table pages are always present. - */ - if ( !table ) - { - ASSERT_UNREACHABLE(); - level = P2M_ROOT_LEVEL; - goto out; - } - - for ( level = P2M_ROOT_LEVEL; level < 3; level++ ) - { - rc = p2m_next_level(p2m, true, level, &table, offsets[level]); - if ( rc == GUEST_TABLE_MAP_FAILED ) - goto out_unmap; - else if ( rc != GUEST_TABLE_NORMAL_PAGE ) - break; - } - - entry = table[offsets[level]]; - - if ( p2m_is_valid(entry) ) - { - *t = entry.p2m.type; - - if ( a ) - *a = p2m_mem_access_radix_get(p2m, gfn); - - mfn = lpae_get_mfn(entry); - /* - * The entry may point to a superpage. Find the MFN associated - * to the GFN. - */ - mfn = mfn_add(mfn, - gfn_x(gfn) & ((1UL << XEN_PT_LEVEL_ORDER(level)) - 1)); - - if ( valid ) - *valid = lpae_is_valid(entry); - } - -out_unmap: - unmap_domain_page(table); - -out: - if ( page_order ) - *page_order = XEN_PT_LEVEL_ORDER(level); - - return mfn; -} - -mfn_t p2m_lookup(struct domain *d, gfn_t gfn, p2m_type_t *t) -{ - mfn_t mfn; - struct p2m_domain *p2m = p2m_get_hostp2m(d); - - p2m_read_lock(p2m); - mfn = p2m_get_entry(p2m, gfn, t, NULL, NULL, NULL); - p2m_read_unlock(p2m); - - return mfn; -} - -struct page_info *p2m_get_page_from_gfn(struct domain *d, gfn_t gfn, - p2m_type_t *t) -{ - struct page_info *page; - p2m_type_t p2mt; - mfn_t mfn = p2m_lookup(d, gfn, &p2mt); - - if ( t ) - *t = p2mt; - - if ( !p2m_is_any_ram(p2mt) ) - return NULL; - - if ( !mfn_valid(mfn) ) - return NULL; - - page = mfn_to_page(mfn); - - /* - * get_page won't work on foreign mapping because the page doesn't - * belong to the current domain. - */ - if ( p2m_is_foreign(p2mt) ) - { - struct domain *fdom = page_get_owner_and_reference(page); - ASSERT(fdom != NULL); - ASSERT(fdom != d); - return page; - } - - return get_page(page, d) ? page : NULL; -} - -int guest_physmap_mark_populate_on_demand(struct domain *d, - unsigned long gfn, - unsigned int order) -{ - return -ENOSYS; -} - -unsigned long p2m_pod_decrease_reservation(struct domain *d, gfn_t gfn, - unsigned int order) -{ - return 0; -} - -static void p2m_set_permission(lpae_t *e, p2m_type_t t, p2m_access_t a) -{ - /* First apply type permissions */ - switch ( t ) - { - case p2m_ram_rw: - e->p2m.xn = 0; - e->p2m.write = 1; - break; - - case p2m_ram_ro: - e->p2m.xn = 0; - e->p2m.write = 0; - break; - - case p2m_iommu_map_rw: - case p2m_map_foreign_rw: - case p2m_grant_map_rw: - case p2m_mmio_direct_dev: - case p2m_mmio_direct_nc: - case p2m_mmio_direct_c: - e->p2m.xn = 1; - e->p2m.write = 1; - break; - - case p2m_iommu_map_ro: - case p2m_map_foreign_ro: - case p2m_grant_map_ro: - case p2m_invalid: - e->p2m.xn = 1; - e->p2m.write = 0; - break; - - case p2m_max_real_type: - BUG(); - break; - } - - /* Then restrict with access permissions */ - switch ( a ) - { - case p2m_access_rwx: - break; - case p2m_access_wx: - e->p2m.read = 0; - break; - case p2m_access_rw: - e->p2m.xn = 1; - break; - case p2m_access_w: - e->p2m.read = 0; - e->p2m.xn = 1; - break; - case p2m_access_rx: - case p2m_access_rx2rw: - e->p2m.write = 0; - break; - case p2m_access_x: - e->p2m.write = 0; - e->p2m.read = 0; - break; - case p2m_access_r: - e->p2m.write = 0; - e->p2m.xn = 1; - break; - case p2m_access_n: - case p2m_access_n2rwx: - e->p2m.read = e->p2m.write = 0; - e->p2m.xn = 1; - break; - } -} - -static lpae_t mfn_to_p2m_entry(mfn_t mfn, p2m_type_t t, p2m_access_t a) -{ - /* - * sh, xn and write bit will be defined in the following switches - * based on mattr and t. - */ - lpae_t e = (lpae_t) { - .p2m.af = 1, - .p2m.read = 1, - .p2m.table = 1, - .p2m.valid = 1, - .p2m.type = t, - }; - - BUILD_BUG_ON(p2m_max_real_type > (1 << 4)); - - switch ( t ) - { - case p2m_mmio_direct_dev: - e.p2m.mattr = MATTR_DEV; - e.p2m.sh = LPAE_SH_OUTER; - break; - - case p2m_mmio_direct_c: - e.p2m.mattr = MATTR_MEM; - e.p2m.sh = LPAE_SH_OUTER; - break; - - /* - * ARM ARM: Overlaying the shareability attribute (DDI - * 0406C.b B3-1376 to 1377) - * - * A memory region with a resultant memory type attribute of Normal, - * and a resultant cacheability attribute of Inner Non-cacheable, - * Outer Non-cacheable, must have a resultant shareability attribute - * of Outer Shareable, otherwise shareability is UNPREDICTABLE. - * - * On ARMv8 shareability is ignored and explicitly treated as Outer - * Shareable for Normal Inner Non_cacheable, Outer Non-cacheable. - * See the note for table D4-40, in page 1788 of the ARM DDI 0487A.j. - */ - case p2m_mmio_direct_nc: - e.p2m.mattr = MATTR_MEM_NC; - e.p2m.sh = LPAE_SH_OUTER; - break; - - default: - e.p2m.mattr = MATTR_MEM; - e.p2m.sh = LPAE_SH_INNER; - } - - p2m_set_permission(&e, t, a); - - ASSERT(!(mfn_to_maddr(mfn) & ~PADDR_MASK)); - - lpae_set_mfn(e, mfn); - - return e; -} - -/* Generate table entry with correct attributes. */ -static lpae_t page_to_p2m_table(struct page_info *page) -{ - /* - * The access value does not matter because the hardware will ignore - * the permission fields for table entry. - * - * We use p2m_ram_rw so the entry has a valid type. This is important - * for p2m_is_valid() to return valid on table entries. - */ - return mfn_to_p2m_entry(page_to_mfn(page), p2m_ram_rw, p2m_access_rwx); -} - -static inline void p2m_write_pte(lpae_t *p, lpae_t pte, bool clean_pte) -{ - write_pte(p, pte); - if ( clean_pte ) - clean_dcache(*p); -} - -static inline void p2m_remove_pte(lpae_t *p, bool clean_pte) -{ - lpae_t pte; - - memset(&pte, 0x00, sizeof(pte)); - p2m_write_pte(p, pte, clean_pte); -} - -/* Allocate a new page table page and hook it in via the given entry. */ -static int p2m_create_table(struct p2m_domain *p2m, lpae_t *entry) -{ - struct page_info *page; - lpae_t *p; - - ASSERT(!p2m_is_valid(*entry)); - - page = p2m_alloc_page(p2m->domain); - if ( page == NULL ) - return -ENOMEM; - - page_list_add(page, &p2m->pages); - - p = __map_domain_page(page); - clear_page(p); - - if ( p2m->clean_pte ) - clean_dcache_va_range(p, PAGE_SIZE); - - unmap_domain_page(p); - - p2m_write_pte(entry, page_to_p2m_table(page), p2m->clean_pte); - - return 0; -} - -static int p2m_mem_access_radix_set(struct p2m_domain *p2m, gfn_t gfn, - p2m_access_t a) -{ - int rc; - - if ( !p2m->mem_access_enabled ) - return 0; - - if ( p2m_access_rwx == a ) - { - radix_tree_delete(&p2m->mem_access_settings, gfn_x(gfn)); - return 0; - } - - rc = radix_tree_insert(&p2m->mem_access_settings, gfn_x(gfn), - radix_tree_int_to_ptr(a)); - if ( rc == -EEXIST ) - { - /* If a setting already exists, change it to the new one */ - radix_tree_replace_slot( - radix_tree_lookup_slot( - &p2m->mem_access_settings, gfn_x(gfn)), - radix_tree_int_to_ptr(a)); - rc = 0; - } - - return rc; -} - -/* - * Put any references on the single 4K page referenced by pte. - * TODO: Handle superpages, for now we only take special references for leaf - * pages (specifically foreign ones, which can't be super mapped today). - */ -static void p2m_put_l3_page(const lpae_t pte) -{ - mfn_t mfn = lpae_get_mfn(pte); - - ASSERT(p2m_is_valid(pte)); - - /* - * TODO: Handle other p2m types - * - * It's safe to do the put_page here because page_alloc will - * flush the TLBs if the page is reallocated before the end of - * this loop. - */ - if ( p2m_is_foreign(pte.p2m.type) ) - { - ASSERT(mfn_valid(mfn)); - put_page(mfn_to_page(mfn)); - } - /* Detect the xenheap page and mark the stored GFN as invalid. */ - else if ( p2m_is_ram(pte.p2m.type) && is_xen_heap_mfn(mfn) ) - page_set_xenheap_gfn(mfn_to_page(mfn), INVALID_GFN); -} - -/* Free lpae sub-tree behind an entry */ -static void p2m_free_entry(struct p2m_domain *p2m, - lpae_t entry, unsigned int level) -{ - unsigned int i; - lpae_t *table; - mfn_t mfn; - struct page_info *pg; - - /* Nothing to do if the entry is invalid. */ - if ( !p2m_is_valid(entry) ) - return; - - if ( p2m_is_superpage(entry, level) || (level == 3) ) - { -#ifdef CONFIG_IOREQ_SERVER - /* - * If this gets called then either the entry was replaced by an entry - * with a different base (valid case) or the shattering of a superpage - * has failed (error case). - * So, at worst, the spurious mapcache invalidation might be sent. - */ - if ( p2m_is_ram(entry.p2m.type) && - domain_has_ioreq_server(p2m->domain) ) - ioreq_request_mapcache_invalidate(p2m->domain); -#endif - - p2m->stats.mappings[level]--; - /* Nothing to do if the entry is a super-page. */ - if ( level == 3 ) - p2m_put_l3_page(entry); - return; - } - - table = map_domain_page(lpae_get_mfn(entry)); - for ( i = 0; i < XEN_PT_LPAE_ENTRIES; i++ ) - p2m_free_entry(p2m, *(table + i), level + 1); - - unmap_domain_page(table); - - /* - * Make sure all the references in the TLB have been removed before - * freing the intermediate page table. - * XXX: Should we defer the free of the page table to avoid the - * flush? - */ - p2m_tlb_flush_sync(p2m); - - mfn = lpae_get_mfn(entry); - ASSERT(mfn_valid(mfn)); - - pg = mfn_to_page(mfn); - - page_list_del(pg, &p2m->pages); - p2m_free_page(p2m->domain, pg); -} - -static bool p2m_split_superpage(struct p2m_domain *p2m, lpae_t *entry, - unsigned int level, unsigned int target, - const unsigned int *offsets) -{ - struct page_info *page; - unsigned int i; - lpae_t pte, *table; - bool rv = true; - - /* Convenience aliases */ - mfn_t mfn = lpae_get_mfn(*entry); - unsigned int next_level = level + 1; - unsigned int level_order = XEN_PT_LEVEL_ORDER(next_level); - - /* - * This should only be called with target != level and the entry is - * a superpage. - */ - ASSERT(level < target); - ASSERT(p2m_is_superpage(*entry, level)); - - page = p2m_alloc_page(p2m->domain); - if ( !page ) - return false; - - page_list_add(page, &p2m->pages); - table = __map_domain_page(page); - - /* - * We are either splitting a first level 1G page into 512 second level - * 2M pages, or a second level 2M page into 512 third level 4K pages. - */ - for ( i = 0; i < XEN_PT_LPAE_ENTRIES; i++ ) - { - lpae_t *new_entry = table + i; - - /* - * Use the content of the superpage entry and override - * the necessary fields. So the correct permission are kept. - */ - pte = *entry; - lpae_set_mfn(pte, mfn_add(mfn, i << level_order)); - - /* - * First and second level pages set p2m.table = 0, but third - * level entries set p2m.table = 1. - */ - pte.p2m.table = (next_level == 3); - - write_pte(new_entry, pte); - } - - /* Update stats */ - p2m->stats.shattered[level]++; - p2m->stats.mappings[level]--; - p2m->stats.mappings[next_level] += XEN_PT_LPAE_ENTRIES; - - /* - * Shatter superpage in the page to the level we want to make the - * changes. - * This is done outside the loop to avoid checking the offset to - * know whether the entry should be shattered for every entry. - */ - if ( next_level != target ) - rv = p2m_split_superpage(p2m, table + offsets[next_level], - level + 1, target, offsets); - - if ( p2m->clean_pte ) - clean_dcache_va_range(table, PAGE_SIZE); - - unmap_domain_page(table); - - /* - * Even if we failed, we should install the newly allocated LPAE - * entry. The caller will be in charge to free the sub-tree. - */ - p2m_write_pte(entry, page_to_p2m_table(page), p2m->clean_pte); - - return rv; -} - -/* - * Insert an entry in the p2m. This should be called with a mapping - * equal to a page/superpage (4K, 2M, 1G). - */ -static int __p2m_set_entry(struct p2m_domain *p2m, - gfn_t sgfn, - unsigned int page_order, - mfn_t smfn, - p2m_type_t t, - p2m_access_t a) -{ - unsigned int level = 0; - unsigned int target = 3 - (page_order / XEN_PT_LPAE_SHIFT); - lpae_t *entry, *table, orig_pte; - int rc; - /* A mapping is removed if the MFN is invalid. */ - bool removing_mapping = mfn_eq(smfn, INVALID_MFN); - DECLARE_OFFSETS(offsets, gfn_to_gaddr(sgfn)); - - ASSERT(p2m_is_write_locked(p2m)); - - /* - * Check if the level target is valid: we only support - * 4K - 2M - 1G mapping. - */ - ASSERT(target > 0 && target <= 3); - - table = p2m_get_root_pointer(p2m, sgfn); - if ( !table ) - return -EINVAL; - - for ( level = P2M_ROOT_LEVEL; level < target; level++ ) - { - /* - * Don't try to allocate intermediate page table if the mapping - * is about to be removed. - */ - rc = p2m_next_level(p2m, removing_mapping, - level, &table, offsets[level]); - if ( rc == GUEST_TABLE_MAP_FAILED ) - { - /* - * We are here because p2m_next_level has failed to map - * the intermediate page table (e.g the table does not exist - * and they p2m tree is read-only). It is a valid case - * when removing a mapping as it may not exist in the - * page table. In this case, just ignore it. - */ - rc = removing_mapping ? 0 : -ENOENT; - goto out; - } - else if ( rc != GUEST_TABLE_NORMAL_PAGE ) - break; - } - - entry = table + offsets[level]; - - /* - * If we are here with level < target, we must be at a leaf node, - * and we need to break up the superpage. - */ - if ( level < target ) - { - /* We need to split the original page. */ - lpae_t split_pte = *entry; - - ASSERT(p2m_is_superpage(*entry, level)); - - if ( !p2m_split_superpage(p2m, &split_pte, level, target, offsets) ) - { - /* - * The current super-page is still in-place, so re-increment - * the stats. - */ - p2m->stats.mappings[level]++; - - /* Free the allocated sub-tree */ - p2m_free_entry(p2m, split_pte, level); - - rc = -ENOMEM; - goto out; - } - - /* - * Follow the break-before-sequence to update the entry. - * For more details see (D4.7.1 in ARM DDI 0487A.j). - */ - p2m_remove_pte(entry, p2m->clean_pte); - p2m_force_tlb_flush_sync(p2m); - - p2m_write_pte(entry, split_pte, p2m->clean_pte); - - /* then move to the level we want to make real changes */ - for ( ; level < target; level++ ) - { - rc = p2m_next_level(p2m, true, level, &table, offsets[level]); - - /* - * The entry should be found and either be a table - * or a superpage if level 3 is not targeted - */ - ASSERT(rc == GUEST_TABLE_NORMAL_PAGE || - (rc == GUEST_TABLE_SUPER_PAGE && target < 3)); - } - - entry = table + offsets[level]; - } - - /* - * We should always be there with the correct level because - * all the intermediate tables have been installed if necessary. - */ - ASSERT(level == target); - - orig_pte = *entry; - - /* - * The radix-tree can only work on 4KB. This is only used when - * memaccess is enabled and during shutdown. - */ - ASSERT(!p2m->mem_access_enabled || page_order == 0 || - p2m->domain->is_dying); - /* - * The access type should always be p2m_access_rwx when the mapping - * is removed. - */ - ASSERT(!mfn_eq(INVALID_MFN, smfn) || (a == p2m_access_rwx)); - /* - * Update the mem access permission before update the P2M. So we - * don't have to revert the mapping if it has failed. - */ - rc = p2m_mem_access_radix_set(p2m, sgfn, a); - if ( rc ) - goto out; - - /* - * Always remove the entry in order to follow the break-before-make - * sequence when updating the translation table (D4.7.1 in ARM DDI - * 0487A.j). - */ - if ( lpae_is_valid(orig_pte) || removing_mapping ) - p2m_remove_pte(entry, p2m->clean_pte); - - if ( removing_mapping ) - /* Flush can be deferred if the entry is removed */ - p2m->need_flush |= !!lpae_is_valid(orig_pte); - else - { - lpae_t pte = mfn_to_p2m_entry(smfn, t, a); - - if ( level < 3 ) - pte.p2m.table = 0; /* Superpage entry */ - - /* - * It is necessary to flush the TLB before writing the new entry - * to keep coherency when the previous entry was valid. - * - * Although, it could be defered when only the permissions are - * changed (e.g in case of memaccess). - */ - if ( lpae_is_valid(orig_pte) ) - { - if ( likely(!p2m->mem_access_enabled) || - P2M_CLEAR_PERM(pte) != P2M_CLEAR_PERM(orig_pte) ) - p2m_force_tlb_flush_sync(p2m); - else - p2m->need_flush = true; - } - else if ( !p2m_is_valid(orig_pte) ) /* new mapping */ - p2m->stats.mappings[level]++; - - p2m_write_pte(entry, pte, p2m->clean_pte); - - p2m->max_mapped_gfn = gfn_max(p2m->max_mapped_gfn, - gfn_add(sgfn, (1UL << page_order) - 1)); - p2m->lowest_mapped_gfn = gfn_min(p2m->lowest_mapped_gfn, sgfn); - } - - if ( is_iommu_enabled(p2m->domain) && - (lpae_is_valid(orig_pte) || lpae_is_valid(*entry)) ) - { - unsigned int flush_flags = 0; - - if ( lpae_is_valid(orig_pte) ) - flush_flags |= IOMMU_FLUSHF_modified; - if ( lpae_is_valid(*entry) ) - flush_flags |= IOMMU_FLUSHF_added; - - rc = iommu_iotlb_flush(p2m->domain, _dfn(gfn_x(sgfn)), - 1UL << page_order, flush_flags); - } - else - rc = 0; - - /* - * Free the entry only if the original pte was valid and the base - * is different (to avoid freeing when permission is changed). - */ - if ( p2m_is_valid(orig_pte) && - !mfn_eq(lpae_get_mfn(*entry), lpae_get_mfn(orig_pte)) ) - p2m_free_entry(p2m, orig_pte, level); - -out: - unmap_domain_page(table); - - return rc; -} - -int p2m_set_entry(struct p2m_domain *p2m, - gfn_t sgfn, - unsigned long nr, - mfn_t smfn, - p2m_type_t t, - p2m_access_t a) -{ - int rc = 0; - - /* - * Any reference taken by the P2M mappings (e.g. foreign mapping) will - * be dropped in relinquish_p2m_mapping(). As the P2M will still - * be accessible after, we need to prevent mapping to be added when the - * domain is dying. - */ - if ( unlikely(p2m->domain->is_dying) ) - return -ENOMEM; - - while ( nr ) - { - unsigned long mask; - unsigned long order; - - /* - * Don't take into account the MFN when removing mapping (i.e - * MFN_INVALID) to calculate the correct target order. - * - * XXX: Support superpage mappings if nr is not aligned to a - * superpage size. - */ - mask = !mfn_eq(smfn, INVALID_MFN) ? mfn_x(smfn) : 0; - mask |= gfn_x(sgfn) | nr; - - /* Always map 4k by 4k when memaccess is enabled */ - if ( unlikely(p2m->mem_access_enabled) ) - order = THIRD_ORDER; - else if ( !(mask & ((1UL << FIRST_ORDER) - 1)) ) - order = FIRST_ORDER; - else if ( !(mask & ((1UL << SECOND_ORDER) - 1)) ) - order = SECOND_ORDER; - else - order = THIRD_ORDER; - - rc = __p2m_set_entry(p2m, sgfn, order, smfn, t, a); - if ( rc ) - break; - - sgfn = gfn_add(sgfn, (1 << order)); - if ( !mfn_eq(smfn, INVALID_MFN) ) - smfn = mfn_add(smfn, (1 << order)); - - nr -= (1 << order); - } - - return rc; -} - -/* Invalidate all entries in the table. The p2m should be write locked. */ -static void p2m_invalidate_table(struct p2m_domain *p2m, mfn_t mfn) -{ - lpae_t *table; - unsigned int i; - - ASSERT(p2m_is_write_locked(p2m)); - - table = map_domain_page(mfn); - - for ( i = 0; i < XEN_PT_LPAE_ENTRIES; i++ ) - { - lpae_t pte = table[i]; - - /* - * Writing an entry can be expensive because it may involve - * cleaning the cache. So avoid updating the entry if the valid - * bit is already cleared. - */ - if ( !pte.p2m.valid ) - continue; - - pte.p2m.valid = 0; - - p2m_write_pte(&table[i], pte, p2m->clean_pte); - } - - unmap_domain_page(table); - - p2m->need_flush = true; -} +#define P2M_ROOT_PAGES (1<root + i); +unsigned int __read_mostly p2m_ipa_bits = PADDR_BITS; - p2m_force_tlb_flush_sync(p2m); +/* Unlock the flush and do a P2M TLB flush if necessary */ +void p2m_write_unlock(struct p2m_domain *p2m) +{ +#ifdef CONFIG_HAS_MMU + /* + * The final flush is done with the P2M write lock taken to avoid + * someone else modifying the P2M wbefore the TLB invalidation has + * completed. + */ + p2m_tlb_flush_sync(p2m); +#endif - p2m_write_unlock(p2m); + write_unlock(&p2m->lock); } -/* - * Invalidate all entries in the root page-tables. This is - * useful to get fault on entry and do an action. - * - * p2m_invalid_root() should not be called when the P2M is shared with - * the IOMMU because it will cause IOMMU fault. - */ -void p2m_invalidate_root(struct p2m_domain *p2m) +void memory_type_changed(struct domain *d) { - unsigned int i; +} - ASSERT(!iommu_use_hap_pt(p2m->domain)); +void dump_p2m_lookup(struct domain *d, paddr_t addr) +{ + struct p2m_domain *p2m = p2m_get_hostp2m(d); - p2m_write_lock(p2m); + printk("dom%d IPA 0x%"PRIpaddr"\n", d->domain_id, addr); - for ( i = 0; i < P2M_ROOT_LEVEL; i++ ) - p2m_invalidate_table(p2m, page_to_mfn(p2m->root + i)); + printk("P2M @ %p mfn:%#"PRI_mfn"\n", + p2m->root, mfn_x(page_to_mfn(p2m->root))); - p2m_write_unlock(p2m); + dump_pt_walk(page_to_maddr(p2m->root), addr, + P2M_ROOT_LEVEL, P2M_ROOT_PAGES); } -/* - * Resolve any translation fault due to change in the p2m. This - * includes break-before-make and valid bit cleared. - */ -bool p2m_resolve_translation_fault(struct domain *d, gfn_t gfn) +mfn_t p2m_lookup(struct domain *d, gfn_t gfn, p2m_type_t *t) { + mfn_t mfn; struct p2m_domain *p2m = p2m_get_hostp2m(d); - unsigned int level = 0; - bool resolved = false; - lpae_t entry, *table; - - /* Convenience aliases */ - DECLARE_OFFSETS(offsets, gfn_to_gaddr(gfn)); - - p2m_write_lock(p2m); - /* This gfn is higher than the highest the p2m map currently holds */ - if ( gfn_x(gfn) > gfn_x(p2m->max_mapped_gfn) ) - goto out; + p2m_read_lock(p2m); + mfn = p2m_get_entry(p2m, gfn, t, NULL, NULL, NULL); + p2m_read_unlock(p2m); - table = p2m_get_root_pointer(p2m, gfn); - /* - * The table should always be non-NULL because the gfn is below - * p2m->max_mapped_gfn and the root table pages are always present. - */ - if ( !table ) - { - ASSERT_UNREACHABLE(); - goto out; - } + return mfn; +} - /* - * Go down the page-tables until an entry has the valid bit unset or - * a block/page entry has been hit. - */ - for ( level = P2M_ROOT_LEVEL; level <= 3; level++ ) - { - int rc; +struct page_info *p2m_get_page_from_gfn(struct domain *d, gfn_t gfn, + p2m_type_t *t) +{ + struct page_info *page; + p2m_type_t p2mt; + mfn_t mfn = p2m_lookup(d, gfn, &p2mt); - entry = table[offsets[level]]; + if ( t ) + *t = p2mt; - if ( level == 3 ) - break; + if ( !p2m_is_any_ram(p2mt) ) + return NULL; - /* Stop as soon as we hit an entry with the valid bit unset. */ - if ( !lpae_is_valid(entry) ) - break; + if ( !mfn_valid(mfn) ) + return NULL; - rc = p2m_next_level(p2m, true, level, &table, offsets[level]); - if ( rc == GUEST_TABLE_MAP_FAILED ) - goto out_unmap; - else if ( rc != GUEST_TABLE_NORMAL_PAGE ) - break; - } + page = mfn_to_page(mfn); /* - * If the valid bit of the entry is set, it means someone was playing with - * the Stage-2 page table. Nothing to do and mark the fault as resolved. + * get_page won't work on foreign mapping because the page doesn't + * belong to the current domain. */ - if ( lpae_is_valid(entry) ) + if ( p2m_is_foreign(p2mt) ) { - resolved = true; - goto out_unmap; + struct domain *fdom = page_get_owner_and_reference(page); + ASSERT(fdom != NULL); + ASSERT(fdom != d); + return page; } - /* - * The valid bit is unset. If the entry is still not valid then the fault - * cannot be resolved, exit and report it. - */ - if ( !p2m_is_valid(entry) ) - goto out_unmap; + return get_page(page, d) ? page : NULL; +} - /* - * Now we have an entry with valid bit unset, but still valid from - * the P2M point of view. - * - * If an entry is pointing to a table, each entry of the table will - * have there valid bit cleared. This allows a function to clear the - * full p2m with just a couple of write. The valid bit will then be - * propagated on the fault. - * If an entry is pointing to a block/page, no work to do for now. - */ - if ( lpae_is_table(entry, level) ) - p2m_invalidate_table(p2m, lpae_get_mfn(entry)); +int guest_physmap_mark_populate_on_demand(struct domain *d, + unsigned long gfn, + unsigned int order) +{ + return -ENOSYS; +} - /* - * Now that the work on the entry is done, set the valid bit to prevent - * another fault on that entry. - */ - resolved = true; - entry.p2m.valid = 1; +unsigned long p2m_pod_decrease_reservation(struct domain *d, gfn_t gfn, + unsigned int order) +{ + return 0; +} - p2m_write_pte(table + offsets[level], entry, p2m->clean_pte); +/* + * The domain will not be scheduled anymore, so in theory we should + * not need to flush the TLBs. Do it for safety purpose. + * Note that all the devices have already been de-assigned. So we don't + * need to flush the IOMMU TLB here. + */ +void p2m_clear_root_pages(struct p2m_domain *p2m) +{ + unsigned int i; - /* - * No need to flush the TLBs as the modified entry had the valid bit - * unset. - */ + p2m_write_lock(p2m); -out_unmap: - unmap_domain_page(table); + for ( i = 0; i < P2M_ROOT_PAGES; i++ ) + clear_and_clean_page(p2m->root + i); -out: - p2m_write_unlock(p2m); +#ifdef CONFIG_HAS_MMU + p2m_force_tlb_flush_sync(p2m); +#endif - return resolved; + p2m_write_unlock(p2m); } int p2m_insert_mapping(struct domain *d, gfn_t start_gfn, unsigned long nr, @@ -1612,44 +284,6 @@ int set_foreign_p2m_entry(struct domain *d, const struct domain *fd, return rc; } -static struct page_info *p2m_allocate_root(void) -{ - struct page_info *page; - unsigned int i; - - page = alloc_domheap_pages(NULL, P2M_ROOT_ORDER, 0); - if ( page == NULL ) - return NULL; - - /* Clear both first level pages */ - for ( i = 0; i < P2M_ROOT_PAGES; i++ ) - clear_and_clean_page(page + i); - - return page; -} - -static int p2m_alloc_table(struct domain *d) -{ - struct p2m_domain *p2m = p2m_get_hostp2m(d); - - p2m->root = p2m_allocate_root(); - if ( !p2m->root ) - return -ENOMEM; - - p2m->vttbr = generate_vttbr(p2m->vmid, page_to_mfn(p2m->root)); - - /* - * Make sure that all TLBs corresponding to the new VMID are flushed - * before using it - */ - p2m_write_lock(p2m); - p2m_force_tlb_flush_sync(p2m); - p2m_write_unlock(p2m); - - return 0; -} - - static spinlock_t vmid_alloc_lock = SPIN_LOCK_UNLOCKED; /* @@ -1660,7 +294,7 @@ static spinlock_t vmid_alloc_lock = SPIN_LOCK_UNLOCKED; */ static unsigned long *vmid_mask; -static void p2m_vmid_allocator_init(void) +void p2m_vmid_allocator_init(void) { /* * allocate space for vmid_mask based on MAX_VMID @@ -1673,7 +307,7 @@ static void p2m_vmid_allocator_init(void) set_bit(INVALID_VMID, vmid_mask); } -static int p2m_alloc_vmid(struct domain *d) +int p2m_alloc_vmid(struct domain *d) { struct p2m_domain *p2m = p2m_get_hostp2m(d); @@ -1713,32 +347,6 @@ static void p2m_free_vmid(struct domain *d) spin_unlock(&vmid_alloc_lock); } -int p2m_teardown(struct domain *d) -{ - struct p2m_domain *p2m = p2m_get_hostp2m(d); - unsigned long count = 0; - struct page_info *pg; - int rc = 0; - - p2m_write_lock(p2m); - - while ( (pg = page_list_remove_head(&p2m->pages)) ) - { - p2m_free_page(p2m->domain, pg); - count++; - /* Arbitrarily preempt every 512 iterations */ - if ( !(count % 512) && hypercall_preempt_check() ) - { - rc = -ERESTART; - break; - } - } - - p2m_write_unlock(p2m); - - return rc; -} - void p2m_final_teardown(struct domain *d) { struct p2m_domain *p2m = p2m_get_hostp2m(d); @@ -1771,61 +379,6 @@ void p2m_final_teardown(struct domain *d) p2m->domain = NULL; } -int p2m_init(struct domain *d) -{ - struct p2m_domain *p2m = p2m_get_hostp2m(d); - int rc; - unsigned int cpu; - - rwlock_init(&p2m->lock); - spin_lock_init(&d->arch.paging.lock); - INIT_PAGE_LIST_HEAD(&p2m->pages); - INIT_PAGE_LIST_HEAD(&d->arch.paging.p2m_freelist); - - p2m->vmid = INVALID_VMID; - p2m->max_mapped_gfn = _gfn(0); - p2m->lowest_mapped_gfn = _gfn(ULONG_MAX); - - p2m->default_access = p2m_access_rwx; - p2m->mem_access_enabled = false; - radix_tree_init(&p2m->mem_access_settings); - - /* - * Some IOMMUs don't support coherent PT walk. When the p2m is - * shared with the CPU, Xen has to make sure that the PT changes have - * reached the memory - */ - p2m->clean_pte = is_iommu_enabled(d) && - !iommu_has_feature(d, IOMMU_FEAT_COHERENT_WALK); - - /* - * Make sure that the type chosen to is able to store the an vCPU ID - * between 0 and the maximum of virtual CPUS supported as long as - * the INVALID_VCPU_ID. - */ - BUILD_BUG_ON((1 << (sizeof(p2m->last_vcpu_ran[0]) * 8)) < MAX_VIRT_CPUS); - BUILD_BUG_ON((1 << (sizeof(p2m->last_vcpu_ran[0])* 8)) < INVALID_VCPU_ID); - - for_each_possible_cpu(cpu) - p2m->last_vcpu_ran[cpu] = INVALID_VCPU_ID; - - /* - * "Trivial" initialisation is now complete. Set the backpointer so - * p2m_teardown() and friends know to do something. - */ - p2m->domain = d; - - rc = p2m_alloc_vmid(d); - if ( rc ) - return rc; - - rc = p2m_alloc_table(d); - if ( rc ) - return rc; - - return 0; -} - /* * The function will go through the p2m and remove page reference when it * is required. The mapping will be removed from the p2m. @@ -2217,159 +770,6 @@ void __init p2m_restrict_ipa_bits(unsigned int ipa_bits) p2m_ipa_bits = ipa_bits; } -/* VTCR value to be configured by all CPUs. Set only once by the boot CPU */ -static register_t __read_mostly vtcr; - -static void setup_virt_paging_one(void *data) -{ - WRITE_SYSREG(vtcr, VTCR_EL2); - - /* - * ARM64_WORKAROUND_AT_SPECULATE: We want to keep the TLBs free from - * entries related to EL1/EL0 translation regime until a guest vCPU - * is running. For that, we need to set-up VTTBR to point to an empty - * page-table and turn on stage-2 translation. The TLB entries - * associated with EL1/EL0 translation regime will also be flushed in case - * an AT instruction was speculated before hand. - */ - if ( cpus_have_cap(ARM64_WORKAROUND_AT_SPECULATE) ) - { - WRITE_SYSREG64(generate_vttbr(INVALID_VMID, empty_root_mfn), VTTBR_EL2); - WRITE_SYSREG(READ_SYSREG(HCR_EL2) | HCR_VM, HCR_EL2); - isb(); - - flush_all_guests_tlb_local(); - } -} - -void __init setup_virt_paging(void) -{ - /* Setup Stage 2 address translation */ - register_t val = VTCR_RES1|VTCR_SH0_IS|VTCR_ORGN0_WBWA|VTCR_IRGN0_WBWA; - - static const struct { - unsigned int pabits; /* Physical Address Size */ - unsigned int t0sz; /* Desired T0SZ, minimum in comment */ - unsigned int root_order; /* Page order of the root of the p2m */ - unsigned int sl0; /* Desired SL0, maximum in comment */ - } pa_range_info[] __initconst = { - /* T0SZ minimum and SL0 maximum from ARM DDI 0487H.a Table D5-6 */ - /* PA size, t0sz(min), root-order, sl0(max) */ -#ifdef CONFIG_ARM_64 - [0] = { 32, 32/*32*/, 0, 1 }, - [1] = { 36, 28/*28*/, 0, 1 }, - [2] = { 40, 24/*24*/, 1, 1 }, - [3] = { 42, 22/*22*/, 3, 1 }, - [4] = { 44, 20/*20*/, 0, 2 }, - [5] = { 48, 16/*16*/, 0, 2 }, - [6] = { 52, 12/*12*/, 4, 2 }, - [7] = { 0 } /* Invalid */ -#else - { 32, 0/*0*/, 0, 1 }, - { 40, 24/*24*/, 1, 1 } -#endif - }; - - unsigned int i; - unsigned int pa_range = 0x10; /* Larger than any possible value */ - -#ifdef CONFIG_ARM_32 - /* - * Typecast pa_range_info[].t0sz into arm32 bit variant. - * - * VTCR.T0SZ is bits [3:0] and S(sign extension), bit[4] for arm322. - * Thus, pa_range_info[].t0sz is translated to its arm32 variant using - * struct bitfields. - */ - struct - { - signed int val:5; - } t0sz_32; -#else - /* - * Restrict "p2m_ipa_bits" if needed. As P2M table is always configured - * with IPA bits == PA bits, compare against "pabits". - */ - if ( pa_range_info[system_cpuinfo.mm64.pa_range].pabits < p2m_ipa_bits ) - p2m_ipa_bits = pa_range_info[system_cpuinfo.mm64.pa_range].pabits; - - /* - * cpu info sanitization made sure we support 16bits VMID only if all - * cores are supporting it. - */ - if ( system_cpuinfo.mm64.vmid_bits == MM64_VMID_16_BITS_SUPPORT ) - max_vmid = MAX_VMID_16_BIT; -#endif - - /* Choose suitable "pa_range" according to the resulted "p2m_ipa_bits". */ - for ( i = 0; i < ARRAY_SIZE(pa_range_info); i++ ) - { - if ( p2m_ipa_bits == pa_range_info[i].pabits ) - { - pa_range = i; - break; - } - } - - /* Check if we found the associated entry in the array */ - if ( pa_range >= ARRAY_SIZE(pa_range_info) || !pa_range_info[pa_range].pabits ) - panic("%u-bit P2M is not supported\n", p2m_ipa_bits); - -#ifdef CONFIG_ARM_64 - val |= VTCR_PS(pa_range); - val |= VTCR_TG0_4K; - - /* Set the VS bit only if 16 bit VMID is supported. */ - if ( MAX_VMID == MAX_VMID_16_BIT ) - val |= VTCR_VS; -#endif - - val |= VTCR_SL0(pa_range_info[pa_range].sl0); - val |= VTCR_T0SZ(pa_range_info[pa_range].t0sz); - - p2m_root_order = pa_range_info[pa_range].root_order; - p2m_root_level = 2 - pa_range_info[pa_range].sl0; - -#ifdef CONFIG_ARM_64 - p2m_ipa_bits = 64 - pa_range_info[pa_range].t0sz; -#else - t0sz_32.val = pa_range_info[pa_range].t0sz; - p2m_ipa_bits = 32 - t0sz_32.val; -#endif - - printk("P2M: %d-bit IPA with %d-bit PA and %d-bit VMID\n", - p2m_ipa_bits, - pa_range_info[pa_range].pabits, - ( MAX_VMID == MAX_VMID_16_BIT ) ? 16 : 8); - - printk("P2M: %d levels with order-%d root, VTCR 0x%"PRIregister"\n", - 4 - P2M_ROOT_LEVEL, P2M_ROOT_ORDER, val); - - p2m_vmid_allocator_init(); - - /* It is not allowed to concatenate a level zero root */ - BUG_ON( P2M_ROOT_LEVEL == 0 && P2M_ROOT_ORDER > 0 ); - vtcr = val; - - /* - * ARM64_WORKAROUND_AT_SPECULATE requires to allocate root table - * with all entries zeroed. - */ - if ( cpus_have_cap(ARM64_WORKAROUND_AT_SPECULATE) ) - { - struct page_info *root; - - root = p2m_allocate_root(); - if ( !root ) - panic("Unable to allocate root table for ARM64_WORKAROUND_AT_SPECULATE\n"); - - empty_root_mfn = page_to_mfn(root); - } - - setup_virt_paging_one(NULL); - smp_call_function(setup_virt_paging_one, NULL, 1); -} - static int cpu_virt_paging_callback(struct notifier_block *nfb, unsigned long action, void *hcpu) -- 2.25.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 26 03:40:10 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 03:40:10 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555049.866706 (Exim 4.92) (envelope-from ) id 1qDd5G-0003pF-1s; Mon, 26 Jun 2023 03:40:10 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555049.866706; Mon, 26 Jun 2023 03:40:09 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd5F-0003hT-7m; Mon, 26 Jun 2023 03:40:09 +0000 Received: by outflank-mailman (input) for mailman id 555049; Mon, 26 Jun 2023 03:40:03 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd1w-0007ej-4x for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 03:36:44 +0000 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by se1-gles-sth1.inumbo.com (Halon) with ESMTP id aad60b95-13d2-11ee-b237-6b7b168915f2; Mon, 26 Jun 2023 05:36:42 +0200 (CEST) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 473F21FB; Sun, 25 Jun 2023 20:37:26 -0700 (PDT) Received: from a011292.shanghai.arm.com (a011292.shanghai.arm.com [10.169.190.94]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id 9C3963F64C; Sun, 25 Jun 2023 20:36:39 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: aad60b95-13d2-11ee-b237-6b7b168915f2 From: Penny Zheng To: xen-devel@lists.xenproject.org Cc: Penny Zheng , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk , Penny Zheng , Wei Chen Subject: [PATCH v3 30/52] xen/mpu: populate a new region in Xen MPU mapping table Date: Mon, 26 Jun 2023 11:34:21 +0800 Message-Id: <20230626033443.2943270-31-Penny.Zheng@arm.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230626033443.2943270-1-Penny.Zheng@arm.com> References: <20230626033443.2943270-1-Penny.Zheng@arm.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit The new helper xen_mpumap_update() is responsible for updating Xen MPU memory mapping table(xen_mpumap), including creating a new entry, updating or destroying an existing one. It is equivalent to xen_pt_update in MMU. This commit only talks about populating a new entry in Xen MPU memory mapping table(xen_mpumap). Others will be introduced in the following commits. When populating a new entry in Xen MPU memory mapping table(xen_mpumap), firstly, we shall check if requested address range [base, limit) is mapped. If not, we shall find a free slot in xen_mpumap to insert, based on bitmap xen_mpumap_mask, and use standard entry pr_of_xenaddr() to build up MPU memory region structure(pr_t) In the last, we set memory attribute and permission based on variable @flags. To summarize all region attributes in one variable @flags, layout of the flags is elaborated as follows: [0:2] Memory attribute Index [3:4] Execute Never [5:6] Access Permission [7] Region Present Also, we provide a set of definitions(REGION_HYPERVISOR_RW, etc) that combine the memory attribute and permission for common combinations. Signed-off-by: Penny Zheng Signed-off-by: Wei Chen --- v3: - implement pr_set_base/pr_set_limit/region_is_valid using static inline. - define index uint8_t to limit its size - stay the same major entry map_pages_to_xen, then go different path in different context(xen_pt_update in MMU, and xen_mpumap_update in MPU) --- xen/arch/arm/include/asm/arm64/mpu.h | 64 +++++++ xen/arch/arm/include/asm/mm.h | 3 + xen/arch/arm/include/asm/mpu/mm.h | 16 ++ xen/arch/arm/include/asm/page.h | 22 +++ xen/arch/arm/mm.c | 20 +++ xen/arch/arm/mmu/mm.c | 9 +- xen/arch/arm/mpu/mm.c | 255 +++++++++++++++++++++++++++ 7 files changed, 381 insertions(+), 8 deletions(-) create mode 100644 xen/arch/arm/include/asm/mpu/mm.h diff --git a/xen/arch/arm/include/asm/arm64/mpu.h b/xen/arch/arm/include/asm/arm64/mpu.h index 407fec66c9..a6b07bab02 100644 --- a/xen/arch/arm/include/asm/arm64/mpu.h +++ b/xen/arch/arm/include/asm/arm64/mpu.h @@ -6,6 +6,10 @@ #ifndef __ARM64_MPU_H__ #define __ARM64_MPU_H__ +#define MPU_REGION_SHIFT 6 +#define MPU_REGION_ALIGN (_AC(1, UL) << MPU_REGION_SHIFT) +#define MPU_REGION_MASK (~(MPU_REGION_ALIGN - 1)) + /* * MPUIR_EL2.Region identifies the number of regions supported by the EL2 MPU. * It is a 8-bit field, so 255 MPU memory regions at most. @@ -21,8 +25,33 @@ #define REGION_UART_SEL 0x07 #define MPUIR_REGION_MASK ((_AC(1, UL) << 8) - 1) +/* Access permission attributes. */ +/* Read/Write at EL2, No Access at EL1/EL0. */ +#define AP_RW_EL2 0x0 +/* Read/Write at EL2/EL1/EL0 all levels. */ +#define AP_RW_ALL 0x1 +/* Read-only at EL2, No Access at EL1/EL0. */ +#define AP_RO_EL2 0x2 +/* Read-only at EL2/EL1/EL0 all levels. */ +#define AP_RO_ALL 0x3 + +/* + * Excute never. + * Stage 1 EL2 translation regime. + * XN[1] determines whether execution of the instruction fetched from the MPU + * memory region is permitted. + * Stage 2 EL1/EL0 translation regime. + * XN[0] determines whether execution of the instruction fetched from the MPU + * memory region is permitted. + */ +#define XN_DISABLED 0x0 +#define XN_P2M_ENABLED 0x1 +#define XN_ENABLED 0x2 + #ifndef __ASSEMBLY__ +#define INVALID_REGION_IDX 0xff + /* Protection Region Base Address Register */ typedef union { struct __packed { @@ -54,6 +83,41 @@ typedef struct { prlar_t prlar; } pr_t; +/* Access to set base address of MPU protection region(pr_t). */ +static inline void pr_set_base(pr_t *pr, paddr_t base) +{ + pr->prbar.reg.base = (base >> MPU_REGION_SHIFT); +} + +/* Access to set limit address of MPU protection region(pr_t). */ +static inline void pr_set_limit(pr_t *pr, paddr_t limit) +{ + pr->prlar.reg.limit = (limit >> MPU_REGION_SHIFT); +} + +/* + * Access to get base address of MPU protection region(pr_t). + * The base address shall be zero extended. + */ +static inline paddr_t pr_get_base(pr_t *pr) +{ + return (paddr_t)(pr->prbar.reg.base << MPU_REGION_SHIFT); +} + +/* + * Access to get limit address of MPU protection region(pr_t). + * The limit address shall be concatenated with 0x3f. + */ +static inline paddr_t pr_get_limit(pr_t *pr) +{ + return (paddr_t)((pr->prlar.reg.limit << MPU_REGION_SHIFT) | ~MPU_REGION_MASK); +} + +static inline bool region_is_valid(pr_t *pr) +{ + return pr->prlar.reg.en; +} + #endif /* __ASSEMBLY__ */ #endif /* __ARM64_MPU_H__ */ diff --git a/xen/arch/arm/include/asm/mm.h b/xen/arch/arm/include/asm/mm.h index ea4847c12b..daa6329505 100644 --- a/xen/arch/arm/include/asm/mm.h +++ b/xen/arch/arm/include/asm/mm.h @@ -16,6 +16,8 @@ #ifdef CONFIG_HAS_MMU #include +#else +#include #endif /* Align Xen to a 2 MiB boundary. */ @@ -203,6 +205,7 @@ extern uint64_t init_mm; /* Boot-time memory mapping setup */ extern void setup_mm_mappings(unsigned long boot_phys_offset); +extern bool flags_has_rwx(unsigned int flags); /* Map FDT in boot pagetable */ extern void *early_fdt_map(paddr_t fdt_paddr); /* Remove early mappings */ diff --git a/xen/arch/arm/include/asm/mpu/mm.h b/xen/arch/arm/include/asm/mpu/mm.h new file mode 100644 index 0000000000..eec572ecfc --- /dev/null +++ b/xen/arch/arm/include/asm/mpu/mm.h @@ -0,0 +1,16 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ +#ifndef __ARCH_ARM_MM_MPU__ +#define __ARCH_ARM_MM_MPU__ + +extern int xen_mpumap_update(paddr_t base, paddr_t limit, unsigned int flags); + +#endif /* __ARCH_ARM_MM_MPU__ */ + +/* + * Local variables: + * mode: C + * c-file-style: "BSD" + * c-basic-offset: 4 + * indent-tabs-mode: nil + * End: + */ diff --git a/xen/arch/arm/include/asm/page.h b/xen/arch/arm/include/asm/page.h index 3893303c8f..85ecd5e4de 100644 --- a/xen/arch/arm/include/asm/page.h +++ b/xen/arch/arm/include/asm/page.h @@ -62,6 +62,7 @@ #define MAIRVAL (MAIR1VAL << 32 | MAIR0VAL) +#ifndef CONFIG_HAS_MPU /* * Layout of the flags used for updating the hypervisor page tables * @@ -89,6 +90,27 @@ #define _PAGE_CONTIG_BIT 8 #define _PAGE_CONTIG (1U << _PAGE_CONTIG_BIT) +#else +/* + * Layout of the flags used for updating MPU memory region attributes + * [0:2] Memory attribute Index + * [3:4] Execute Never + * [5:6] Access Permission + * [7] Region Present + */ +#define _PAGE_AI_BIT 0 +#define _PAGE_XN_BIT 3 +#define _PAGE_AP_BIT 5 +#define _PAGE_PRESENT_BIT 7 +#define _PAGE_AI (7U << _PAGE_AI_BIT) +#define _PAGE_XN (2U << _PAGE_XN_BIT) +#define _PAGE_RO (2U << _PAGE_AP_BIT) +#define _PAGE_PRESENT (1U << _PAGE_PRESENT_BIT) +#define PAGE_AI_MASK(x) (((x) >> _PAGE_AI_BIT) & 0x7U) +#define PAGE_XN_MASK(x) (((x) >> _PAGE_XN_BIT) & 0x3U) +#define PAGE_AP_MASK(x) (((x) >> _PAGE_AP_BIT) & 0x3U) +#define PAGE_RO_MASK(x) (((x) >> _PAGE_AP_BIT) & 0x2U) +#endif /* CONFIG_HAS_MPU */ /* * _PAGE_DEVICE and _PAGE_NORMAL are convenience defines. They are not diff --git a/xen/arch/arm/mm.c b/xen/arch/arm/mm.c index 97642f35d3..d35e7e280f 100644 --- a/xen/arch/arm/mm.c +++ b/xen/arch/arm/mm.c @@ -117,12 +117,32 @@ void *ioremap(paddr_t pa, size_t len) return ioremap_attr(pa, len, PAGE_HYPERVISOR_NOCACHE); } +bool flags_has_rwx(unsigned int flags) +{ + /* + * The hardware was configured to forbid mapping both writeable and + * executable. + * When modifying/creating mapping (i.e _PAGE_PRESENT is set), + * prevent any update if this happen. + */ + if ( (flags & _PAGE_PRESENT) && !PAGE_RO_MASK(flags) && + !PAGE_XN_MASK(flags) ) + return true; + else + return false; +} + int map_pages_to_xen(unsigned long virt, mfn_t mfn, unsigned long nr_mfns, unsigned int flags) { +#ifndef CONFIG_HAS_MPU return xen_pt_update(virt, mfn, nr_mfns, flags); +#else + return xen_mpumap_update(mfn_to_maddr(mfn), + mfn_to_maddr(mfn_add(mfn, nr_mfns)), flags); +#endif } int destroy_xen_mappings(unsigned long s, unsigned long e) diff --git a/xen/arch/arm/mmu/mm.c b/xen/arch/arm/mmu/mm.c index d7d5bf7287..2f29cb53fe 100644 --- a/xen/arch/arm/mmu/mm.c +++ b/xen/arch/arm/mmu/mm.c @@ -1037,14 +1037,7 @@ int xen_pt_update(unsigned long virt, mfn_t mfn, */ const mfn_t root = maddr_to_mfn(READ_SYSREG64(TTBR0_EL2)); - /* - * The hardware was configured to forbid mapping both writeable and - * executable. - * When modifying/creating mapping (i.e _PAGE_PRESENT is set), - * prevent any update if this happen. - */ - if ( (flags & _PAGE_PRESENT) && !PAGE_RO_MASK(flags) && - !PAGE_XN_MASK(flags) ) + if ( flags_has_rwx(flags) ) { mm_printk("Mappings should not be both Writeable and Executable.\n"); return -EINVAL; diff --git a/xen/arch/arm/mpu/mm.c b/xen/arch/arm/mpu/mm.c index 7b1b5d6e27..14a1309ca1 100644 --- a/xen/arch/arm/mpu/mm.c +++ b/xen/arch/arm/mpu/mm.c @@ -23,6 +23,19 @@ #include #include #include +#include + +#ifdef NDEBUG +static inline void __attribute__ ((__format__ (__printf__, 1, 2))) +region_printk(const char *fmt, ...) {} +#else +#define region_printk(fmt, args...) \ + do \ + { \ + dprintk(XENLOG_ERR, fmt, ## args); \ + WARN(); \ + } while (0) +#endif /* EL2 Xen MPU memory region mapping table. */ pr_t __aligned(PAGE_SIZE) __section(".data.page_aligned") @@ -39,6 +52,10 @@ uint8_t __ro_after_init max_xen_mpumap; */ static DECLARE_BITMAP(xen_mpumap_mask, ARM_MAX_MPU_MEMORY_REGIONS); +static DEFINE_SPINLOCK(xen_mpumap_lock); + +static DEFINE_SPINLOCK(xen_mpumap_alloc_lock); + /* Write a MPU protection region */ #define WRITE_PROTECTION_REGION(pr, prbar_el2, prlar_el2) ({ \ const pr_t *_pr = pr; \ @@ -230,6 +247,244 @@ static void write_protection_region(const pr_t *pr_write, uint8_t sel) } } +/* + * Standard entry for building up the structure of MPU memory region(pr_t). + * It is equivalent to mfn_to_xen_entry in MMU system. + * base and limit both refer to inclusive address. + */ +static inline pr_t pr_of_xenaddr(paddr_t base, paddr_t limit, unsigned attr) +{ + prbar_t prbar; + prlar_t prlar; + pr_t region; + + /* Build up value for PRBAR_EL2. */ + prbar = (prbar_t) { + .reg = { + .ap = AP_RW_EL2, /* Read/Write at EL2, no access at EL1/EL0. */ + .xn = XN_ENABLED, /* No need to execute outside .text */ + }}; + + switch ( attr ) + { + case MT_NORMAL_NC: + /* + * ARM ARM: Overlaying the shareability attribute (DDI + * 0406C.b B3-1376 to 1377) + * + * A memory region with a resultant memory type attribute of normal, + * and a resultant cacheability attribute of Inner non-cacheable, + * outer non-cacheable, must have a resultant shareability attribute + * of outer shareable, otherwise shareability is UNPREDICTABLE. + * + * On ARMv8 sharability is ignored and explicitly treated as outer + * shareable for normal inner non-cacheable, outer non-cacheable. + */ + prbar.reg.sh = LPAE_SH_OUTER; + break; + case MT_DEVICE_nGnRnE: + case MT_DEVICE_nGnRE: + /* + * Shareability is ignored for non-normal memory, Outer is as + * good as anything. + * + * On ARMv8 sharability is ignored and explicitly treated as outer + * shareable for any device memory type. + */ + prbar.reg.sh = LPAE_SH_OUTER; + break; + default: + /* Xen mappings are SMP coherent */ + prbar.reg.sh = LPAE_SH_INNER; + break; + } + + /* Build up value for PRLAR_EL2. */ + prlar = (prlar_t) { + .reg = { + .ns = 0, /* Hyp mode is in secure world */ + .ai = attr, + .en = 1, /* Region enabled */ + }}; + + /* Build up MPU memory region. */ + region = (pr_t) { + .prbar = prbar, + .prlar = prlar, + }; + + /* Set base address and limit address. */ + pr_set_base(®ion, base); + pr_set_limit(®ion, limit); + + return region; +} + +/* + * Allocate a new free EL2 MPU memory region, based on bitmap xen_mpumap_mask. + * If success, the associated index will be filled up. + * If failed, non-zero value -ENOENT will be returned. + */ +static int xen_mpumap_alloc_entry(uint8_t *idx) +{ + int rc = 0; + + spin_lock(&xen_mpumap_alloc_lock); + + *idx = find_first_zero_bit(xen_mpumap_mask, max_xen_mpumap); + if ( *idx == max_xen_mpumap ) + { + rc = -ENOENT; + printk(XENLOG_ERR "mpu: EL2 MPU memory region mapping pool exhausted\n"); + goto out; + } + + set_bit(*idx, xen_mpumap_mask); + +out: + spin_unlock(&xen_mpumap_alloc_lock); + return rc; +} + +#define MPUMAP_REGION_FAILED 0 +#define MPUMAP_REGION_FOUND 1 +#define MPUMAP_REGION_INCLUSIVE 2 +#define MPUMAP_REGION_OVERLAP 3 +/* + * Check whether memory range [base, limit] is mapped in MPU memory region + * mapping table #table. Only address range is checked, memory attributes + * and permission are not considered here. + * If we find the match, the associated index will be filled up. + * If the entry is not present, INVALID_REGION will be set in #index and + * specific non-zero error message will be returned. + * + * Make sure that parameter #base and #limit are both referring + * inclusive addresss + * + * Return values: + * MPUMAP_REGION_FAILED: no mapping and no overlapping + * MPUMAP_REGION_FOUND: find an exact match in #table + * MPUMAP_REGION_INCLUSIVE: find an inclusive match in #table + * MPUMAP_REGION_OVERLAP: overlap with the existing mapping + */ +static int mpumap_contain_region(pr_t *table, uint8_t nr_regions, + paddr_t base, paddr_t limit, uint8_t *index) +{ + uint8_t i = 0, _index = INVALID_REGION_IDX; + + /* Allow index to be NULL */ + index = index ? : &_index; + + if ( limit < base ) + { + region_printk("Base address 0x%"PRIpaddr" must be smaller than limit address 0x%"PRIpaddr"\n", + base, limit); + return -EINVAL; + } + + for ( ; i < nr_regions; i++ ) + { + paddr_t iter_base = pr_get_base(&table[i]); + paddr_t iter_limit = pr_get_limit(&table[i]); + + /* Found an exact valid match */ + if ( (iter_base == base) && (iter_limit == limit) && + region_is_valid(&table[i]) ) + { + *index = i; + return MPUMAP_REGION_FOUND; + } + + /* No overlapping */ + if ( (iter_limit < base) || (iter_base > limit) ) + continue; + /* Inclusive and valid */ + else if ( (base >= iter_base) && (limit <= iter_limit) && + region_is_valid(&table[i]) ) + { + *index = i; + return MPUMAP_REGION_INCLUSIVE; + } + else + { + region_printk("Range 0x%"PRIpaddr" - 0x%"PRIpaddr" overlaps with the existing region 0x%"PRIpaddr" - 0x%"PRIpaddr"\n", + base, limit + 1, iter_base, iter_limit + 1); + return MPUMAP_REGION_OVERLAP; + } + } + + return MPUMAP_REGION_FAILED; +} + +/* + * Update an entry in Xen MPU memory region mapping table(xen_mpumap) at + * the index @idx. + * @base: base address(inclusive) + * @limit: limit address(exclusive) + * @flags: region attributes, should be the combination of PAGE_HYPERVISOR_xx + */ +static int xen_mpumap_update_entry(paddr_t base, paddr_t limit, + unsigned int flags) +{ + uint8_t idx; + int rc; + + rc = mpumap_contain_region(xen_mpumap, max_xen_mpumap, base, limit - 1, + &idx); + if ( (rc < 0) || (rc == MPUMAP_REGION_OVERLAP) ) + return -EINVAL; + + /* We are inserting a mapping => Create new region. */ + if ( flags & _PAGE_PRESENT ) + { + if ( rc != MPUMAP_REGION_FAILED ) + return -EINVAL; + + rc = xen_mpumap_alloc_entry(&idx); + if ( rc ) + return -ENOENT; + + xen_mpumap[idx] = pr_of_xenaddr(base, limit - 1, PAGE_AI_MASK(flags)); + /* Set permission */ + xen_mpumap[idx].prbar.reg.ap = PAGE_AP_MASK(flags); + xen_mpumap[idx].prbar.reg.xn = PAGE_XN_MASK(flags); + + write_protection_region((const pr_t*)(&xen_mpumap[idx]), idx); + } + + return 0; +} + +/* + * It is equivalent to xen_pt_update in MMU system. + * base refers to inclusive address and limit refers to exclusive address. + */ +int xen_mpumap_update(paddr_t base, paddr_t limit, unsigned int flags) +{ + int rc; + + if ( flags_has_rwx(flags) ) + { + region_printk("Mappings should not be both Writeable and Executable\n"); + return -EINVAL; + } + + if ( !IS_ALIGNED(base, PAGE_SIZE) || !IS_ALIGNED(limit, PAGE_SIZE) ) + { + region_printk("base address 0x%"PRIpaddr", or limit address 0x%"PRIpaddr" is not page aligned\n", + base, limit); + return -EINVAL; + } + + spin_lock(&xen_mpumap_lock); + + rc = xen_mpumap_update_entry(base, limit, flags); + + spin_unlock(&xen_mpumap_lock); + + return rc; +} + /* * Local variables: * mode: C -- 2.25.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 26 03:40:12 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 03:40:12 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555050.866715 (Exim 4.92) (envelope-from ) id 1qDd5H-00049z-HX; Mon, 26 Jun 2023 03:40:11 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555050.866715; Mon, 26 Jun 2023 03:40:11 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd5G-00044K-Ib; Mon, 26 Jun 2023 03:40:10 +0000 Received: by outflank-mailman (input) for mailman id 555050; Mon, 26 Jun 2023 03:40:05 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd1g-0007ej-37 for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 03:36:28 +0000 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by se1-gles-sth1.inumbo.com (Halon) with ESMTP id a18573a0-13d2-11ee-b237-6b7b168915f2; Mon, 26 Jun 2023 05:36:27 +0200 (CEST) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id AF7C01FB; Sun, 25 Jun 2023 20:37:10 -0700 (PDT) Received: from a011292.shanghai.arm.com (a011292.shanghai.arm.com [10.169.190.94]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id 13BC73F64C; Sun, 25 Jun 2023 20:36:23 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: a18573a0-13d2-11ee-b237-6b7b168915f2 From: Penny Zheng To: xen-devel@lists.xenproject.org Cc: Penny Zheng , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk , Penny Zheng , Wei Chen Subject: [PATCH v3 25/52] xen/mpu: introduce helpers for MPU enablement Date: Mon, 26 Jun 2023 11:34:16 +0800 Message-Id: <20230626033443.2943270-26-Penny.Zheng@arm.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230626033443.2943270-1-Penny.Zheng@arm.com> References: <20230626033443.2943270-1-Penny.Zheng@arm.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit We introduce new helpers for Xen to enable MPU in boot-time. enable_boot_mm() is implemented to be semantically consistent with the MMU version. If the Background region is enabled, then the MPU uses the default memory map as the Background region for generating the memory attributes when MPU is disabled. Since the default memory map of the Armv8-R AArch64 architecture is IMPLEMENTATION DEFINED, we always turn off the Background region. Signed-off-by: Penny Zheng Signed-off-by: Wei Chen --- v3: - introduce code clearing SCTLR_EL2.BR - document the reason of isb --- xen/arch/arm/arm64/mpu/head.S | 46 ++++++++++++++++++++++++++++ xen/arch/arm/include/asm/processor.h | 1 + 2 files changed, 47 insertions(+) diff --git a/xen/arch/arm/arm64/mpu/head.S b/xen/arch/arm/arm64/mpu/head.S index 93a7a75029..3cfce126d5 100644 --- a/xen/arch/arm/arm64/mpu/head.S +++ b/xen/arch/arm/arm64/mpu/head.S @@ -170,6 +170,52 @@ ENTRY(prepare_early_mappings) ret ENDPROC(prepare_early_mappings) +/* + * Enable EL2 MPU and data cache + * If the Background region is enabled, then the MPU uses the default memory + * map as the Background region for generating the memory + * attributes when MPU is disabled. + * Since the default memory map of the Armv8-R AArch64 architecture is + * IMPLEMENTATION DEFINED, we intend to turn off the Background region here. + * + * Clobbers x0 + * + */ +ENTRY(enable_mpu) + mrs x0, SCTLR_EL2 + orr x0, x0, #SCTLR_Axx_ELx_M /* Enable MPU */ + orr x0, x0, #SCTLR_Axx_ELx_C /* Enable D-cache */ + orr x0, x0, #SCTLR_Axx_ELx_WXN /* Enable WXN */ + and x0, x0, #SCTLR_Axx_ELx_BR /* Disable Background region */ + msr SCTLR_EL2, x0 /* now mpu memory mapping is enabled */ + isb /* Now, flush the icache */ + ret +ENDPROC(enable_mpu) + +/* + * Turn on the Data Cache and the MPU. The function will return + * to the virtual address provided in LR (e.g. the runtime mapping). + * + * Inputs: + * lr : Virtual address to return to. + * + * Clobbers x0 - x7 + */ +ENTRY(enable_boot_mm) + /* save return address */ + mov x7, lr + + bl prepare_early_mappings + bl enable_mpu + + mov lr, x7 + /* + * The "ret" here will use the return address in LR to + * return to primary_switched + */ + ret +ENDPROC(enable_boot_mm) + /* * Local variables: * mode: ASM diff --git a/xen/arch/arm/include/asm/processor.h b/xen/arch/arm/include/asm/processor.h index 7e42ff8811..685f9b18fd 100644 --- a/xen/arch/arm/include/asm/processor.h +++ b/xen/arch/arm/include/asm/processor.h @@ -167,6 +167,7 @@ /* Common bits for SCTLR_ELx on all architectures */ #define SCTLR_Axx_ELx_EE BIT(25, UL) #define SCTLR_Axx_ELx_WXN BIT(19, UL) +#define SCTLR_Axx_ELx_BR (~BIT(17, UL)) #define SCTLR_Axx_ELx_I BIT(12, UL) #define SCTLR_Axx_ELx_C BIT(2, UL) #define SCTLR_Axx_ELx_A BIT(1, UL) -- 2.25.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 26 03:40:13 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 03:40:13 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555053.866722 (Exim 4.92) (envelope-from ) id 1qDd5I-0004XV-Vt; Mon, 26 Jun 2023 03:40:12 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555053.866722; Mon, 26 Jun 2023 03:40:12 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd5H-0004R4-Vj; Mon, 26 Jun 2023 03:40:11 +0000 Received: by outflank-mailman (input) for mailman id 555053; Mon, 26 Jun 2023 03:40:07 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd1Z-0007ej-T6 for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 03:36:21 +0000 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by se1-gles-sth1.inumbo.com (Halon) with ESMTP id 9dd5d6f8-13d2-11ee-b237-6b7b168915f2; Mon, 26 Jun 2023 05:36:20 +0200 (CEST) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 7E8EB1FB; Sun, 25 Jun 2023 20:37:04 -0700 (PDT) Received: from a011292.shanghai.arm.com (a011292.shanghai.arm.com [10.169.190.94]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id 218053F64C; Sun, 25 Jun 2023 20:36:17 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 9dd5d6f8-13d2-11ee-b237-6b7b168915f2 From: Penny Zheng To: xen-devel@lists.xenproject.org Cc: Wei Chen , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk , Penny Zheng Subject: [PATCH v3 23/52] xen/arm: create mpu/layout.h for MPU related address definitions Date: Mon, 26 Jun 2023 11:34:14 +0800 Message-Id: <20230626033443.2943270-24-Penny.Zheng@arm.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230626033443.2943270-1-Penny.Zheng@arm.com> References: <20230626033443.2943270-1-Penny.Zheng@arm.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit From: Wei Chen As we have done for MMU systems, we instroduce mpu/layout.h for MPU systems to store their address layout definitions. To avoid spreading #ifdef everywhere, we keep the same definition names for MPU systems, like XEN_VIRT_START and HYPERVISOR_VIRT_START, but the definition contents are MPU specific. Signed-off-by: Wei Chen Signed-off-by: Penny Zheng --- v3: - new commit --- xen/arch/arm/include/asm/config.h | 2 ++ xen/arch/arm/include/asm/mpu/layout.h | 32 +++++++++++++++++++++++++++ 2 files changed, 34 insertions(+) create mode 100644 xen/arch/arm/include/asm/mpu/layout.h diff --git a/xen/arch/arm/include/asm/config.h b/xen/arch/arm/include/asm/config.h index 204b3dec13..bd71cc1373 100644 --- a/xen/arch/arm/include/asm/config.h +++ b/xen/arch/arm/include/asm/config.h @@ -73,6 +73,8 @@ #ifndef CONFIG_HAS_MPU #include +#else +#include #endif #define NR_hypercalls 64 diff --git a/xen/arch/arm/include/asm/mpu/layout.h b/xen/arch/arm/include/asm/mpu/layout.h new file mode 100644 index 0000000000..84c55cb2bd --- /dev/null +++ b/xen/arch/arm/include/asm/mpu/layout.h @@ -0,0 +1,32 @@ +/* SPDX-License-Identifier: GPL-2.0 */ + +#ifndef __ARM_MPU_LAYOUT_H__ +#define __ARM_MPU_LAYOUT_H__ + +#define FRAMETABLE_SIZE GB(32) +#define FRAMETABLE_NR (FRAMETABLE_SIZE / sizeof(*frame_table)) + +#define XEN_START_ADDRESS CONFIG_XEN_START_ADDRESS + +/* + * All MPU platforms need to provide a XEN_START_ADDRESS for linker. This + * address indicates where Xen image will be loaded and run from. This + * address must be aligned to a PAGE_SIZE. + */ +#if (XEN_START_ADDRESS % PAGE_SIZE) != 0 +#error "XEN_START_ADDRESS must be aligned to PAGE_SIZE" +#endif + +#define XEN_VIRT_START _AT(paddr_t, XEN_START_ADDRESS) + +#define HYPERVISOR_VIRT_START XEN_VIRT_START + +#endif /* __ARM_MPU_LAYOUT_H__ */ +/* + * Local variables: + * mode: C + * c-file-style: "BSD" + * c-basic-offset: 4 + * indent-tabs-mode: nil + * End: + */ -- 2.25.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 26 03:40:15 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 03:40:15 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555057.866733 (Exim 4.92) (envelope-from ) id 1qDd5L-00058x-0P; Mon, 26 Jun 2023 03:40:15 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555057.866733; Mon, 26 Jun 2023 03:40:14 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd5K-00054m-3O; Mon, 26 Jun 2023 03:40:14 +0000 Received: by outflank-mailman (input) for mailman id 555057; Mon, 26 Jun 2023 03:40:11 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd1p-0007ej-4G for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 03:36:37 +0000 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by se1-gles-sth1.inumbo.com (Halon) with ESMTP id a719f79e-13d2-11ee-b237-6b7b168915f2; Mon, 26 Jun 2023 05:36:36 +0200 (CEST) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 136B41FB; Sun, 25 Jun 2023 20:37:20 -0700 (PDT) Received: from a011292.shanghai.arm.com (a011292.shanghai.arm.com [10.169.190.94]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id 604803F64C; Sun, 25 Jun 2023 20:36:33 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: a719f79e-13d2-11ee-b237-6b7b168915f2 From: Penny Zheng To: xen-devel@lists.xenproject.org Cc: Penny Zheng , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk , Penny Zheng , Wei Chen Subject: [PATCH v3 28/52] xen/mpu: plump virt/maddr conversion in MPU system Date: Mon, 26 Jun 2023 11:34:19 +0800 Message-Id: <20230626033443.2943270-29-Penny.Zheng@arm.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230626033443.2943270-1-Penny.Zheng@arm.com> References: <20230626033443.2943270-1-Penny.Zheng@arm.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit virt_to_maddr and maddr_to_virt are used widely in Xen code. So even there is no VMSA in MPU system, we keep the interface in MPU to stay the same code flow. The MPU version of virt/maddr conversion is simple, and we just return the input address as the output with type conversion. Signed-off-by: Penny Zheng Signed-off-by: Wei Chen --- v3: - Fix typos - Move the implementation from mm/mpu.h to mm.h, to share as much as possible with MMU system. --- xen/arch/arm/include/asm/mm.h | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/xen/arch/arm/include/asm/mm.h b/xen/arch/arm/include/asm/mm.h index eb520b49e3..ea4847c12b 100644 --- a/xen/arch/arm/include/asm/mm.h +++ b/xen/arch/arm/include/asm/mm.h @@ -267,13 +267,22 @@ static inline void __iomem *ioremap_wc(paddr_t start, size_t len) /* Page-align address and convert to frame number format */ #define paddr_to_pfn_aligned(paddr) paddr_to_pfn(PAGE_ALIGN(paddr)) +#ifndef CONFIG_HAS_MPU static inline paddr_t __virt_to_maddr(vaddr_t va) { uint64_t par = va_to_par(va); return (par & PADDR_MASK & PAGE_MASK) | (va & ~PAGE_MASK); } +#else +static inline paddr_t __virt_to_maddr(vaddr_t va) +{ + return (paddr_t)va; +} +#endif /* CONFIG_HAS_MPU */ + #define virt_to_maddr(va) __virt_to_maddr((vaddr_t)(va)) +#ifndef CONFIG_HAS_MPU #ifdef CONFIG_ARM_32 static inline void *maddr_to_virt(paddr_t ma) { @@ -292,6 +301,12 @@ static inline void *maddr_to_virt(paddr_t ma) ((ma & ma_top_mask) >> pfn_pdx_hole_shift))); } #endif +#else /* CONFIG_HAS_MPU */ +static inline void *maddr_to_virt(paddr_t ma) +{ + return (void *)(unsigned long)ma; +} +#endif /* * Translate a guest virtual address to a machine address. -- 2.25.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 26 03:40:17 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 03:40:17 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555060.866742 (Exim 4.92) (envelope-from ) id 1qDd5M-0005Zn-OT; Mon, 26 Jun 2023 03:40:16 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555060.866742; Mon, 26 Jun 2023 03:40:16 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd5L-0005UX-Ne; Mon, 26 Jun 2023 03:40:15 +0000 Received: by outflank-mailman (input) for mailman id 555060; Mon, 26 Jun 2023 03:40:12 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd2w-0007ej-6M for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 03:37:46 +0000 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by se1-gles-sth1.inumbo.com (Halon) with ESMTP id d0226451-13d2-11ee-b237-6b7b168915f2; Mon, 26 Jun 2023 05:37:45 +0200 (CEST) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id DC6C61FB; Sun, 25 Jun 2023 20:38:28 -0700 (PDT) Received: from a011292.shanghai.arm.com (a011292.shanghai.arm.com [10.169.190.94]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id 2788C3F64C; Sun, 25 Jun 2023 20:37:41 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: d0226451-13d2-11ee-b237-6b7b168915f2 From: Penny Zheng To: xen-devel@lists.xenproject.org Cc: Penny Zheng , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk , Penny Zheng , Wei Chen Subject: [PATCH v3 50/52] xen/mpu: dump debug message in MPU system Date: Mon, 26 Jun 2023 11:34:41 +0800 Message-Id: <20230626033443.2943270-51-Penny.Zheng@arm.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230626033443.2943270-1-Penny.Zheng@arm.com> References: <20230626033443.2943270-1-Penny.Zheng@arm.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit A set of helpers dump_xxx and show_registers are responsible for dumping memory mapping info and register info when debugging. In this commit, we implement them all in MPU system too. Signed-off-by: Penny Zheng Signed-off-by: Wei Chen --- v3: - new commit --- xen/arch/arm/include/asm/mpu/mm.h | 3 +++ xen/arch/arm/mpu/mm.c | 35 +++++++++++++++++++++++++++++++ xen/arch/arm/mpu/p2m.c | 11 ++++++++++ xen/arch/arm/p2m.c | 4 ++++ xen/arch/arm/traps.c | 16 ++++++++++++++ 5 files changed, 69 insertions(+) diff --git a/xen/arch/arm/include/asm/mpu/mm.h b/xen/arch/arm/include/asm/mpu/mm.h index 0abb0a6c92..d3dcf0024a 100644 --- a/xen/arch/arm/include/asm/mpu/mm.h +++ b/xen/arch/arm/include/asm/mpu/mm.h @@ -21,6 +21,9 @@ extern pr_t *alloc_mpumap(void); extern int mpumap_contain_region(pr_t *table, uint8_t nr_regions, paddr_t base, paddr_t limit, uint8_t *index); +/* Print a walk of a MPU memory mapping table */ +void dump_mpu_walk(pr_t *table, uint8_t nr_regions); + #endif /* __ARCH_ARM_MM_MPU__ */ /* diff --git a/xen/arch/arm/mpu/mm.c b/xen/arch/arm/mpu/mm.c index c6b287b3aa..ef8a327037 100644 --- a/xen/arch/arm/mpu/mm.c +++ b/xen/arch/arm/mpu/mm.c @@ -898,6 +898,41 @@ pr_t *alloc_mpumap(void) return map; } +void dump_mpu_walk(pr_t *table, uint8_t nr_regions) +{ + uint8_t i = 0; + + for ( ; i < nr_regions; i++ ) + { + paddr_t base, limit; + + if ( region_is_valid(&table[i]) ) + { + base = pr_get_base(&table[i]); + limit = pr_get_limit(&table[i]); + + printk(XENLOG_INFO + "Walking MPU memory mapping table: Region[%u]: 0x%"PRIpaddr"-0x%"PRIpaddr"\n", + i, base, limit); + } + } +} + +void dump_hyp_walk(vaddr_t addr) +{ + uint8_t i = 0; + pr_t region; + + for ( i = 0; i < max_xen_mpumap; i++ ) + { + read_protection_region(®ion, i); + if ( region_is_valid(®ion) ) + printk(XENLOG_INFO + "Walking hypervisor MPU memory region [%u]: 0x%"PRIpaddr"-0x%"PRIpaddr"\n", + i, pr_get_base(®ion), pr_get_limit(®ion)); + } +} + /* * Local variables: * mode: C diff --git a/xen/arch/arm/mpu/p2m.c b/xen/arch/arm/mpu/p2m.c index a68a06105f..87e350270d 100644 --- a/xen/arch/arm/mpu/p2m.c +++ b/xen/arch/arm/mpu/p2m.c @@ -481,6 +481,17 @@ void p2m_restore_state(struct vcpu *n) *last_vcpu_ran = n->vcpu_id; } +void p2m_dump_info(struct domain *d) +{ + struct p2m_domain *p2m = p2m_get_hostp2m(d); + + p2m_read_lock(p2m); + printk("p2m mappings for domain %d (vmid %d):\n", + d->domain_id, p2m->vmid); + printk(" Number of P2M Memory Region: %u \n", p2m->nr_regions); + p2m_read_unlock(p2m); +} + /* * Local variables: * mode: C diff --git a/xen/arch/arm/p2m.c b/xen/arch/arm/p2m.c index e29b11334e..d3961997d0 100644 --- a/xen/arch/arm/p2m.c +++ b/xen/arch/arm/p2m.c @@ -51,8 +51,12 @@ void dump_p2m_lookup(struct domain *d, paddr_t addr) printk("P2M @ %p mfn:%#"PRI_mfn"\n", p2m->root, mfn_x(page_to_mfn(p2m->root))); +#ifndef CONFIG_HAS_MPU dump_pt_walk(page_to_maddr(p2m->root), addr, P2M_ROOT_LEVEL, P2M_ROOT_PAGES); +#else + dump_mpu_walk((pr_t *)page_to_virt(p2m->root), p2m->nr_regions); +#endif } mfn_t p2m_lookup(struct domain *d, gfn_t gfn, p2m_type_t *t) diff --git a/xen/arch/arm/traps.c b/xen/arch/arm/traps.c index bffa147c36..0592eee91c 100644 --- a/xen/arch/arm/traps.c +++ b/xen/arch/arm/traps.c @@ -710,7 +710,11 @@ struct reg_ctxt { #endif /* Hypervisor-side state */ +#ifdef CONFIG_HAS_MPU + uint64_t vsctlr_el2; +#else uint64_t vttbr_el2; +#endif }; static const char *mode_string(register_t cpsr) @@ -908,7 +912,11 @@ static void _show_registers(const struct cpu_user_regs *regs, #endif } printk(" VTCR_EL2: %"PRIregister"\n", READ_SYSREG(VTCR_EL2)); +#ifndef CONFIG_HAS_MPU printk(" VTTBR_EL2: %016"PRIx64"\n", ctxt->vttbr_el2); +#else + printk(" VSCTLR_EL2: %016"PRIx64"\n", ctxt->vsctlr_el2); +#endif printk("\n"); printk(" SCTLR_EL2: %"PRIregister"\n", READ_SYSREG(SCTLR_EL2)); @@ -945,7 +953,11 @@ void show_registers(const struct cpu_user_regs *regs) if ( guest_mode(regs) && is_32bit_domain(current->domain) ) ctxt.ifsr32_el2 = READ_SYSREG(IFSR32_EL2); #endif +#ifndef CONFIG_HAS_MPU ctxt.vttbr_el2 = READ_SYSREG64(VTTBR_EL2); +#else + ctxt.vsctlr_el2 = READ_SYSREG64(VSCTLR_EL2); +#endif _show_registers(regs, &ctxt, guest_mode(regs), current); } @@ -968,7 +980,11 @@ void vcpu_show_registers(const struct vcpu *v) ctxt.ifsr32_el2 = v->arch.ifsr; #endif +#ifdef CONFIG_HAS_MPU + ctxt.vsctlr_el2 = v->domain->arch.p2m.vsctlr; +#else ctxt.vttbr_el2 = v->domain->arch.p2m.vttbr; +#endif _show_registers(&v->arch.cpu_info->guest_cpu_user_regs, &ctxt, 1, v); } -- 2.25.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 26 03:40:25 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 03:40:25 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555074.866781 (Exim 4.92) (envelope-from ) id 1qDd5U-0007af-Bl; Mon, 26 Jun 2023 03:40:24 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555074.866781; Mon, 26 Jun 2023 03:40:24 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd5T-0007Wt-LQ; Mon, 26 Jun 2023 03:40:23 +0000 Received: by outflank-mailman (input) for mailman id 555074; Mon, 26 Jun 2023 03:40:21 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd2Z-0007ej-Ve for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 03:37:23 +0000 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by se1-gles-sth1.inumbo.com (Halon) with ESMTP id c2f443a7-13d2-11ee-b237-6b7b168915f2; Mon, 26 Jun 2023 05:37:23 +0200 (CEST) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id C57022F4; Sun, 25 Jun 2023 20:38:06 -0700 (PDT) Received: from a011292.shanghai.arm.com (a011292.shanghai.arm.com [10.169.190.94]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id 29A203F64C; Sun, 25 Jun 2023 20:37:19 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: c2f443a7-13d2-11ee-b237-6b7b168915f2 From: Penny Zheng To: xen-devel@lists.xenproject.org Cc: Penny Zheng , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk , Penny Zheng , Wei Chen Subject: [PATCH v3 43/52] xen/mpu: configure VSTCR_EL2 in MPU system Date: Mon, 26 Jun 2023 11:34:34 +0800 Message-Id: <20230626033443.2943270-44-Penny.Zheng@arm.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230626033443.2943270-1-Penny.Zheng@arm.com> References: <20230626033443.2943270-1-Penny.Zheng@arm.com> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit VSTCR_EL2, Virtualization Secure Translation Control Register,is the control register for stage 2 of the Secure EL1&0 translation regime. VSTCR_EL2.SA defines secure stage 2 translation output address space. To make sure that all stage 2 translations for the Secure PA space access the Secure PA space, we keep SA bit as 0. VSTCR_EL2.SC is NS check enable bit. To make sure that Stage 2 NS configuration is checked against stage 1 NS configuration in EL1&0 translation regime for the given address, and generates a fault if they are different, we set SC bit 1. Signed-off-by: Penny Zheng Signed-off-by: Wei Chen --- v3: - new commit --- xen/arch/arm/include/asm/arm64/sysregs.h | 6 ++++++ xen/arch/arm/mpu/p2m.c | 17 ++++++++++++++++- 2 files changed, 22 insertions(+), 1 deletion(-) diff --git a/xen/arch/arm/include/asm/arm64/sysregs.h b/xen/arch/arm/include/asm/arm64/sysregs.h index ab0e6a97d3..35d7da411d 100644 --- a/xen/arch/arm/include/asm/arm64/sysregs.h +++ b/xen/arch/arm/include/asm/arm64/sysregs.h @@ -512,6 +512,12 @@ /* MPU Protection Region Enable Register encode */ #define PRENR_EL2 S3_4_C6_C1_1 +/* Virtualization Secure Translation Control Register */ +#define VSTCR_EL2 S3_4_C2_C6_2 +#define VSTCR_EL2_RES1_SHIFT 31 +#define VSTCR_EL2_SA ~(_AC(0x1,UL)<<30) +#define VSTCR_EL2_SC (_AC(0x1,UL)<<20) + #endif #ifdef CONFIG_ARM_SECURE_STATE diff --git a/xen/arch/arm/mpu/p2m.c b/xen/arch/arm/mpu/p2m.c index 04c44825cb..a7a3912a9a 100644 --- a/xen/arch/arm/mpu/p2m.c +++ b/xen/arch/arm/mpu/p2m.c @@ -10,7 +10,7 @@ void __init setup_virt_paging(void) { - uint64_t val = 0; + uint64_t val = 0, val2 = 0; bool p2m_vmsa = true; /* PA size */ @@ -76,6 +76,21 @@ void __init setup_virt_paging(void) WRITE_SYSREG(val, VTCR_EL2); + /* + * VSTCR_EL2.SA defines secure stage 2 translation output address space. + * To make sure that all stage 2 translations for the Secure PA space + * access the Secure PA space, we keep SA bit as 0. + * + * VSTCR_EL2.SC is NS check enable bit. + * To make sure that Stage 2 NS configuration is checked against stage 1 + * NS configuration in EL1&0 translation regime for the given address, and + * generates a fault if they are different, we set SC bit 1. + */ + val2 = 1 << VSTCR_EL2_RES1_SHIFT; + val2 &= VSTCR_EL2_SA; + val2 |= VSTCR_EL2_SC; + WRITE_SYSREG(val2, VSTCR_EL2); + return; fault: -- 2.25.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 26 03:40:25 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 03:40:25 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555072.866769 (Exim 4.92) (envelope-from ) id 1qDd5S-0007NK-P5; Mon, 26 Jun 2023 03:40:22 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555072.866769; Mon, 26 Jun 2023 03:40:22 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd5S-0007ML-Fb; Mon, 26 Jun 2023 03:40:22 +0000 Received: by outflank-mailman (input) for mailman id 555072; Mon, 26 Jun 2023 03:40:20 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd2B-0007ej-Bm for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 03:36:59 +0000 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by se1-gles-sth1.inumbo.com (Halon) with ESMTP id b41595ed-13d2-11ee-b237-6b7b168915f2; Mon, 26 Jun 2023 05:36:58 +0200 (CEST) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id C69601FB; Sun, 25 Jun 2023 20:37:41 -0700 (PDT) Received: from a011292.shanghai.arm.com (a011292.shanghai.arm.com [10.169.190.94]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id 2ACB33F64C; Sun, 25 Jun 2023 20:36:54 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: b41595ed-13d2-11ee-b237-6b7b168915f2 From: Penny Zheng To: xen-devel@lists.xenproject.org Cc: Penny Zheng , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk , Penny Zheng , Wei Chen Subject: [PATCH v3 35/52] xen/arm: map static memory on demand Date: Mon, 26 Jun 2023 11:34:26 +0800 Message-Id: <20230626033443.2943270-36-Penny.Zheng@arm.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230626033443.2943270-1-Penny.Zheng@arm.com> References: <20230626033443.2943270-1-Penny.Zheng@arm.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit In function init_staticmem_pages, we need the access to static memory for proper initialization. It is not a problem in MMU system, as Xen map the whole RAM in setup_mm(). However, with limited MPU memory regions, it is too luxury to map the whole RAM. As a result, we follow the rule of "map on demand", to map static memory temporarily before its initialization, and unmap immediately after its initialization. Signed-off-by: Penny Zheng Signed-off-by: Wei Chen --- v3: - new commit --- xen/arch/arm/include/asm/mm.h | 2 ++ xen/arch/arm/mmu/mm.c | 10 ++++++++++ xen/arch/arm/mpu/mm.c | 10 ++++++++++ xen/arch/arm/setup.c | 21 +++++++++++++++++++++ 4 files changed, 43 insertions(+) diff --git a/xen/arch/arm/include/asm/mm.h b/xen/arch/arm/include/asm/mm.h index 66d98b9a29..cffbf8a595 100644 --- a/xen/arch/arm/include/asm/mm.h +++ b/xen/arch/arm/include/asm/mm.h @@ -224,6 +224,8 @@ extern void mm_init_secondary_cpu(void); extern void setup_frametable_mappings(paddr_t ps, paddr_t pe); /* map a physical range in virtual memory */ void __iomem *ioremap_attr(paddr_t start, size_t len, unsigned int attributes); +extern int map_staticmem_pages_to_xen(paddr_t start, paddr_t end); +extern int unmap_staticmem_pages_to_xen(paddr_t start, paddr_t end); static inline void __iomem *ioremap_nocache(paddr_t start, size_t len) { diff --git a/xen/arch/arm/mmu/mm.c b/xen/arch/arm/mmu/mm.c index 2f29cb53fe..4196a55c32 100644 --- a/xen/arch/arm/mmu/mm.c +++ b/xen/arch/arm/mmu/mm.c @@ -1113,6 +1113,16 @@ int populate_pt_range(unsigned long virt, unsigned long nr_mfns) return xen_pt_update(virt, INVALID_MFN, nr_mfns, _PAGE_POPULATE); } +int __init map_staticmem_pages_to_xen(paddr_t start, paddr_t end) +{ + return 0; +} + +int __init unmap_staticmem_pages_to_xen(paddr_t start, paddr_t end) +{ + return 0; +} + /* * Local variables: * mode: C diff --git a/xen/arch/arm/mpu/mm.c b/xen/arch/arm/mpu/mm.c index a40055ae5e..9d5c1da39c 100644 --- a/xen/arch/arm/mpu/mm.c +++ b/xen/arch/arm/mpu/mm.c @@ -614,6 +614,16 @@ void __init setup_frametable_mappings(paddr_t ps, paddr_t pe) frametable_size - (nr_pdxs * sizeof(struct page_info))); } +int __init map_staticmem_pages_to_xen(paddr_t start, paddr_t end) +{ + return xen_mpumap_update(start, end, PAGE_HYPERVISOR | _PAGE_TRANSIENT); +} + +int __init unmap_staticmem_pages_to_xen(paddr_t start, paddr_t end) +{ + return xen_mpumap_update(start, end, 0); +} + /* * Local variables: * mode: C diff --git a/xen/arch/arm/setup.c b/xen/arch/arm/setup.c index f42b53d17b..c21d1db763 100644 --- a/xen/arch/arm/setup.c +++ b/xen/arch/arm/setup.c @@ -637,12 +637,33 @@ void __init init_staticmem_pages(void) mfn_t bank_start = _mfn(PFN_UP(bootinfo.reserved_mem.bank[bank].start)); unsigned long bank_pages = PFN_DOWN(bootinfo.reserved_mem.bank[bank].size); mfn_t bank_end = mfn_add(bank_start, bank_pages); + int res; if ( mfn_x(bank_end) <= mfn_x(bank_start) ) return; + /* Map temporarily before initialization */ + res = map_staticmem_pages_to_xen(mfn_to_maddr(bank_start), + mfn_to_maddr(bank_end)); + if ( res ) + { + printk(XENLOG_ERR "Failed to map static memory to Xen: %d\n", + res); + return; + } + unprepare_staticmem_pages(mfn_to_page(bank_start), bank_pages, false); + + /* Unmap immediately after initialization */ + res = unmap_staticmem_pages_to_xen(mfn_to_maddr(bank_start), + mfn_to_maddr(bank_end)); + if ( res ) + { + printk(XENLOG_ERR "Failed to unmap static memory to Xen: %d\n", + res); + return; + } } } #endif -- 2.25.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 26 03:40:25 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 03:40:25 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555073.866773 (Exim 4.92) (envelope-from ) id 1qDd5T-0007Th-Cv; Mon, 26 Jun 2023 03:40:23 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555073.866773; Mon, 26 Jun 2023 03:40:23 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd5T-0007QM-0R; Mon, 26 Jun 2023 03:40:23 +0000 Received: by outflank-mailman (input) for mailman id 555073; Mon, 26 Jun 2023 03:40:21 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd1L-0007ej-Vr for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 03:36:07 +0000 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by se1-gles-sth1.inumbo.com (Halon) with ESMTP id 95a48964-13d2-11ee-b237-6b7b168915f2; Mon, 26 Jun 2023 05:36:07 +0200 (CEST) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id BBB071FB; Sun, 25 Jun 2023 20:36:50 -0700 (PDT) Received: from a011292.shanghai.arm.com (a011292.shanghai.arm.com [10.169.190.94]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id F381B3F64C; Sun, 25 Jun 2023 20:36:03 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 95a48964-13d2-11ee-b237-6b7b168915f2 From: Penny Zheng To: xen-devel@lists.xenproject.org Cc: Penny Zheng , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk , Penny Zheng , Wei Chen Subject: [PATCH v3 19/52] xen/arm: switch to use ioremap_xxx in common file Date: Mon, 26 Jun 2023 11:34:10 +0800 Message-Id: <20230626033443.2943270-20-Penny.Zheng@arm.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230626033443.2943270-1-Penny.Zheng@arm.com> References: <20230626033443.2943270-1-Penny.Zheng@arm.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit In arm, with the introduction of MPU system, VMAP scheme, taking advantage of virtual translation, will become a MMU-only feature. So we want to avoid using direct access to all vmap-related functions, like __vmap(), in common files, and switch to use more generic eoremap_xxx instead. Then later, we also just need to implement MPU version of ioremap_xxx. Signed-off-by: Penny Zheng Signed-off-by: Wei Chen --- v3: - new commit --- xen/arch/arm/kernel.c | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/xen/arch/arm/kernel.c b/xen/arch/arm/kernel.c index d13ef0330b..30f8bc5923 100644 --- a/xen/arch/arm/kernel.c +++ b/xen/arch/arm/kernel.c @@ -172,7 +172,6 @@ static __init int kernel_decompress(struct bootmodule *mod, uint32_t offset) unsigned int kernel_order_out; paddr_t output_size; struct page_info *pages; - mfn_t mfn; int i; paddr_t addr = mod->start; paddr_t size = mod->size; @@ -209,13 +208,18 @@ static __init int kernel_decompress(struct bootmodule *mod, uint32_t offset) iounmap(input); return -ENOMEM; } - mfn = page_to_mfn(pages); - output = __vmap(&mfn, 1 << kernel_order_out, 1, 1, PAGE_HYPERVISOR, VMAP_DEFAULT); + output = ioremap_cache(page_to_maddr(pages), + pfn_to_paddr(1UL << kernel_order_out)); + if ( output == NULL ) + { + iounmap(output); + return -EFAULT; + } rc = perform_gunzip(output, input, size); clean_dcache_va_range(output, output_size); iounmap(input); - vunmap(output); + iounmap(output); if ( rc ) { -- 2.25.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 26 03:40:36 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 03:40:36 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555075.866785 (Exim 4.92) (envelope-from ) id 1qDd5V-0007sT-QJ; Mon, 26 Jun 2023 03:40:25 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555075.866785; Mon, 26 Jun 2023 03:40:25 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd5U-0007oh-V6; Mon, 26 Jun 2023 03:40:24 +0000 Received: by outflank-mailman (input) for mailman id 555075; Mon, 26 Jun 2023 03:40:22 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd1D-0000HH-Em for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 03:35:59 +0000 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by se1-gles-flk1.inumbo.com (Halon) with ESMTP id 9006f57d-13d2-11ee-8611-37d641c3527e; Mon, 26 Jun 2023 05:35:57 +0200 (CEST) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 4CA722F4; Sun, 25 Jun 2023 20:36:41 -0700 (PDT) Received: from a011292.shanghai.arm.com (a011292.shanghai.arm.com [10.169.190.94]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id 8C04B3F64C; Sun, 25 Jun 2023 20:35:54 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 9006f57d-13d2-11ee-8611-37d641c3527e From: Penny Zheng To: xen-devel@lists.xenproject.org Cc: Penny Zheng , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk , Penny Zheng , Wei Chen Subject: [PATCH v3 16/52] xen/mmu: relocate copy_from_paddr into setup.c Date: Mon, 26 Jun 2023 11:34:07 +0800 Message-Id: <20230626033443.2943270-17-Penny.Zheng@arm.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230626033443.2943270-1-Penny.Zheng@arm.com> References: <20230626033443.2943270-1-Penny.Zheng@arm.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Function copy_from_paddr() is defined in asm/setup.h, so it is better to be implemented in setup.c. Current copy_from_paddr() implementation is mmu-specific, so this commit moves copy_from_paddr() into mmu/setup.c, and it is also benefical for us to implement MPU version of copy_from_paddr() in later commit. Signed-off-by: Penny Zheng Signed-off-by: Wei Chen --- v3: - new commit --- xen/arch/arm/kernel.c | 27 --------------------------- xen/arch/arm/mmu/setup.c | 27 +++++++++++++++++++++++++++ 2 files changed, 27 insertions(+), 27 deletions(-) diff --git a/xen/arch/arm/kernel.c b/xen/arch/arm/kernel.c index ca5318515e..2e64612ab3 100644 --- a/xen/arch/arm/kernel.c +++ b/xen/arch/arm/kernel.c @@ -41,33 +41,6 @@ struct minimal_dtb_header { #define DTB_MAGIC 0xd00dfeed -/** - * copy_from_paddr - copy data from a physical address - * @dst: destination virtual address - * @paddr: source physical address - * @len: length to copy - */ -void __init copy_from_paddr(void *dst, paddr_t paddr, unsigned long len) -{ - void *src = (void *)FIXMAP_ADDR(FIXMAP_MISC); - - while (len) { - unsigned long l, s; - - s = paddr & (PAGE_SIZE-1); - l = min(PAGE_SIZE - s, len); - - set_fixmap(FIXMAP_MISC, maddr_to_mfn(paddr), PAGE_HYPERVISOR_WC); - memcpy(dst, src + s, l); - clean_dcache_va_range(dst, l); - clear_fixmap(FIXMAP_MISC); - - paddr += l; - dst += l; - len -= l; - } -} - static void __init place_modules(struct kernel_info *info, paddr_t kernbase, paddr_t kernend) { diff --git a/xen/arch/arm/mmu/setup.c b/xen/arch/arm/mmu/setup.c index f4de0cb29d..a7590a2443 100644 --- a/xen/arch/arm/mmu/setup.c +++ b/xen/arch/arm/mmu/setup.c @@ -342,6 +342,33 @@ void __init setup_mm(void) } #endif +/* + * copy_from_paddr - copy data from a physical address + * @dst: destination virtual address + * @paddr: source physical address + * @len: length to copy + */ +void __init copy_from_paddr(void *dst, paddr_t paddr, unsigned long len) +{ + void *src = (void *)FIXMAP_ADDR(FIXMAP_MISC); + + while (len) { + unsigned long l, s; + + s = paddr & (PAGE_SIZE-1); + l = min(PAGE_SIZE - s, len); + + set_fixmap(FIXMAP_MISC, maddr_to_mfn(paddr), PAGE_HYPERVISOR_WC); + memcpy(dst, src + s, l); + clean_dcache_va_range(dst, l); + clear_fixmap(FIXMAP_MISC); + + paddr += l; + dst += l; + len -= l; + } +} + /* * Local variables: * mode: C -- 2.25.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 26 03:40:38 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 03:40:38 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555076.866795 (Exim 4.92) (envelope-from ) id 1qDd5X-0008Ai-JI; Mon, 26 Jun 2023 03:40:27 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555076.866795; Mon, 26 Jun 2023 03:40:27 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd5W-00083m-7k; Mon, 26 Jun 2023 03:40:26 +0000 Received: by outflank-mailman (input) for mailman id 555076; Mon, 26 Jun 2023 03:40:22 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd0p-0007ej-9f for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 03:35:35 +0000 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by se1-gles-sth1.inumbo.com (Halon) with ESMTP id 8244304c-13d2-11ee-b237-6b7b168915f2; Mon, 26 Jun 2023 05:35:34 +0200 (CEST) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 33DF32F4; Sun, 25 Jun 2023 20:36:18 -0700 (PDT) Received: from a011292.shanghai.arm.com (a011292.shanghai.arm.com [10.169.190.94]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id BE9583F64C; Sun, 25 Jun 2023 20:35:31 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 8244304c-13d2-11ee-b237-6b7b168915f2 From: Penny Zheng To: xen-devel@lists.xenproject.org Cc: Wei Chen , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk , Penny Zheng Subject: [PATCH v3 09/52] xen/arm: use PA == VA for EARLY_UART_VIRTUAL_ADDRESS on MPU systems Date: Mon, 26 Jun 2023 11:34:00 +0800 Message-Id: <20230626033443.2943270-10-Penny.Zheng@arm.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230626033443.2943270-1-Penny.Zheng@arm.com> References: <20230626033443.2943270-1-Penny.Zheng@arm.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit From: Wei Chen There is no VMSA support on MPU systems, so we can not map early UART to FIXMAP_CONSOLE. In stead, we can use PA == VA for early UART on MPU systems. Signed-off-by: Wei Chen Signed-off-by: Penny Zheng --- v2: 1. New patch --- v3: 1. fix comment 2. change CONFIG_ARM_V8R to !CONFIG_HAS_MMU --- xen/arch/arm/include/asm/early_printk.h | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/xen/arch/arm/include/asm/early_printk.h b/xen/arch/arm/include/asm/early_printk.h index c5149b2976..ec5bcc343c 100644 --- a/xen/arch/arm/include/asm/early_printk.h +++ b/xen/arch/arm/include/asm/early_printk.h @@ -15,10 +15,22 @@ #ifdef CONFIG_EARLY_PRINTK +#ifndef CONFIG_HAS_MMU + +/* + * For MPU systems, there is no VMSA support in EL2, so we use VA == PA + * for EARLY_UART_VIRTUAL_ADDRESS. + */ +#define EARLY_UART_VIRTUAL_ADDRESS CONFIG_EARLY_UART_BASE_ADDRESS + +#else + /* need to add the uart address offset in page to the fixmap address */ #define EARLY_UART_VIRTUAL_ADDRESS \ (FIXMAP_ADDR(FIXMAP_CONSOLE) + (CONFIG_EARLY_UART_BASE_ADDRESS & ~PAGE_MASK)) +#endif /* CONFIG_HAS_MMU */ + #endif /* !CONFIG_EARLY_PRINTK */ #endif -- 2.25.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 26 03:40:39 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 03:40:39 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555077.866802 (Exim 4.92) (envelope-from ) id 1qDd5Y-0008Q9-MF; Mon, 26 Jun 2023 03:40:28 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555077.866802; Mon, 26 Jun 2023 03:40:28 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd5X-0008Kr-CF; Mon, 26 Jun 2023 03:40:27 +0000 Received: by outflank-mailman (input) for mailman id 555077; Mon, 26 Jun 2023 03:40:22 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd1A-0007ej-3s for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 03:35:56 +0000 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by se1-gles-sth1.inumbo.com (Halon) with ESMTP id 8e148bdf-13d2-11ee-b237-6b7b168915f2; Mon, 26 Jun 2023 05:35:54 +0200 (CEST) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 180BB1FB; Sun, 25 Jun 2023 20:36:38 -0700 (PDT) Received: from a011292.shanghai.arm.com (a011292.shanghai.arm.com [10.169.190.94]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id 20FCE3F64C; Sun, 25 Jun 2023 20:35:49 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 8e148bdf-13d2-11ee-b237-6b7b168915f2 From: Penny Zheng To: xen-devel@lists.xenproject.org Cc: Penny Zheng , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk , Andrew Cooper , George Dunlap , Jan Beulich , Wei Liu , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Penny Zheng , Wei Chen Subject: [PATCH v3 15/52] xen: make VMAP only support in MMU system Date: Mon, 26 Jun 2023 11:34:06 +0800 Message-Id: <20230626033443.2943270-16-Penny.Zheng@arm.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230626033443.2943270-1-Penny.Zheng@arm.com> References: <20230626033443.2943270-1-Penny.Zheng@arm.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit VMAP is widely used in ALTERNATIVE feature, CPUERRATA feature, Grant Table feature, LIVEPATCH feature etc, to remap a range of memory with new memory attributes. Since this is highly dependent on virtual address translation, we choose to fold VMAP in MMU system. In this patch, we introduce a new Kconfig CONFIG_HAS_VMAP, and make it only support in MMU system on ARM architecture. And we make features like ALTERNATIVE, CPUERRATA, LIVEPATCH, Grant Table, etc, now depend on VMAP. Signed-off-by: Penny Zheng Signed-off-by: Wei Chen --- v2: - new commit --- v3: - make LIVEPATCH/ALTERNATIVE/CPUERRATA/Grant Table/LIVEPATCH depend on HAS_VMAP - function call should be wrapped in context, then we could remove inline stubs --- xen/arch/arm/Kconfig | 3 ++- xen/arch/arm/Makefile | 2 +- xen/arch/arm/setup.c | 7 +++++++ xen/arch/arm/smpboot.c | 2 ++ xen/arch/x86/Kconfig | 1 + xen/arch/x86/setup.c | 2 ++ xen/common/Kconfig | 5 +++++ xen/common/Makefile | 2 +- xen/common/vmap.c | 7 +++++++ xen/include/xen/vmap.h | 11 ++++------- 10 files changed, 32 insertions(+), 10 deletions(-) diff --git a/xen/arch/arm/Kconfig b/xen/arch/arm/Kconfig index 22b28b8ba2..a88500fb50 100644 --- a/xen/arch/arm/Kconfig +++ b/xen/arch/arm/Kconfig @@ -11,7 +11,7 @@ config ARM_64 config ARM def_bool y - select HAS_ALTERNATIVE + select HAS_ALTERNATIVE if HAS_VMAP select HAS_DEVICE_TREE select HAS_PASSTHROUGH select HAS_PDX @@ -63,6 +63,7 @@ config HAS_MMU bool "Memory Management Unit support in a VMSA system" default y select HAS_PMAP + select HAS_VMAP help In a VMSA system, a Memory Management Unit (MMU) provides fine-grained control of a memory system through a set of virtual to physical address mappings and associated memory diff --git a/xen/arch/arm/Makefile b/xen/arch/arm/Makefile index c1babdba6a..d01528cac6 100644 --- a/xen/arch/arm/Makefile +++ b/xen/arch/arm/Makefile @@ -10,7 +10,7 @@ obj-$(CONFIG_HAS_VPCI) += vpci.o obj-$(CONFIG_HAS_ALTERNATIVE) += alternative.o obj-y += bootfdt.init.o -obj-y += cpuerrata.o +obj-$(CONFIG_HAS_VMAP) += cpuerrata.o obj-y += cpufeature.o obj-y += decode.o obj-y += device.o diff --git a/xen/arch/arm/setup.c b/xen/arch/arm/setup.c index 50259552a0..34923d9984 100644 --- a/xen/arch/arm/setup.c +++ b/xen/arch/arm/setup.c @@ -812,7 +812,9 @@ void __init start_xen(unsigned long boot_phys_offset, */ system_state = SYS_STATE_boot; +#ifdef CONFIG_HAS_VMAP vm_init(); +#endif if ( acpi_disabled ) { @@ -844,11 +846,13 @@ void __init start_xen(unsigned long boot_phys_offset, nr_cpu_ids = smp_get_max_cpus(); printk(XENLOG_INFO "SMP: Allowing %u CPUs\n", nr_cpu_ids); +#ifdef CONFIG_HAS_VMAP /* * Some errata relies on SMCCC version which is detected by psci_init() * (called from smp_init_cpus()). */ check_local_cpu_errata(); +#endif check_local_cpu_features(); @@ -915,12 +919,15 @@ void __init start_xen(unsigned long boot_phys_offset, do_initcalls(); + +#ifdef CONFIG_HAS_VMAP /* * It needs to be called after do_initcalls to be able to use * stop_machine (tasklets initialized via an initcall). */ apply_alternatives_all(); enable_errata_workarounds(); +#endif enable_cpu_features(); /* Create initial domain 0. */ diff --git a/xen/arch/arm/smpboot.c b/xen/arch/arm/smpboot.c index 8bcdbea66c..0796e534ec 100644 --- a/xen/arch/arm/smpboot.c +++ b/xen/arch/arm/smpboot.c @@ -388,7 +388,9 @@ void start_secondary(void) local_abort_enable(); +#ifdef CONFIG_HAS_VMAP check_local_cpu_errata(); +#endif check_local_cpu_features(); printk(XENLOG_DEBUG "CPU %u booted.\n", smp_processor_id()); diff --git a/xen/arch/x86/Kconfig b/xen/arch/x86/Kconfig index 406445a358..033cc2332e 100644 --- a/xen/arch/x86/Kconfig +++ b/xen/arch/x86/Kconfig @@ -27,6 +27,7 @@ config X86 select HAS_PDX select HAS_SCHED_GRANULARITY select HAS_UBSAN + select HAS_VMAP select HAS_VPCI if HVM select NEEDS_LIBELF diff --git a/xen/arch/x86/setup.c b/xen/arch/x86/setup.c index 74e3915a4d..9f06879225 100644 --- a/xen/arch/x86/setup.c +++ b/xen/arch/x86/setup.c @@ -1750,12 +1750,14 @@ void __init noreturn __start_xen(unsigned long mbi_p) end_boot_allocator(); system_state = SYS_STATE_boot; +#ifdef CONFIG_HAS_VMAP /* * No calls involving ACPI code should go between the setting of * SYS_STATE_boot and vm_init() (or else acpi_os_{,un}map_memory() * will break). */ vm_init(); +#endif bsp_stack = cpu_alloc_stack(0); if ( !bsp_stack ) diff --git a/xen/common/Kconfig b/xen/common/Kconfig index 3d2123a783..2c29e89b75 100644 --- a/xen/common/Kconfig +++ b/xen/common/Kconfig @@ -15,6 +15,7 @@ config CORE_PARKING config GRANT_TABLE bool "Grant table support" if EXPERT default y + depends on HAS_VMAP ---help--- Grant table provides a generic mechanism to memory sharing between domains. This shared memory interface underpins the @@ -65,6 +66,9 @@ config HAS_SCHED_GRANULARITY config HAS_UBSAN bool +config HAS_VMAP + bool + config MEM_ACCESS_ALWAYS_ON bool @@ -367,6 +371,7 @@ config LIVEPATCH bool "Live patching support" default X86 depends on "$(XEN_HAS_BUILD_ID)" = "y" + depends on HAS_VMAP select CC_SPLIT_SECTIONS ---help--- Allows a running Xen hypervisor to be dynamically patched using diff --git a/xen/common/Makefile b/xen/common/Makefile index 46049eac35..4803282d62 100644 --- a/xen/common/Makefile +++ b/xen/common/Makefile @@ -51,7 +51,7 @@ obj-$(CONFIG_TRACEBUFFER) += trace.o obj-y += version.o obj-y += virtual_region.o obj-y += vm_event.o -obj-y += vmap.o +obj-$(CONFIG_HAS_VMAP) += vmap.o obj-y += vsprintf.o obj-y += wait.o obj-bin-y += warning.init.o diff --git a/xen/common/vmap.c b/xen/common/vmap.c index 4fd6b3067e..51e13e17ed 100644 --- a/xen/common/vmap.c +++ b/xen/common/vmap.c @@ -331,4 +331,11 @@ void vfree(void *va) while ( (pg = page_list_remove_head(&pg_list)) != NULL ) free_domheap_page(pg); } + +void iounmap(void __iomem *va) +{ + unsigned long addr = (unsigned long)(void __force *)va; + + vunmap((void *)(addr & PAGE_MASK)); +} #endif diff --git a/xen/include/xen/vmap.h b/xen/include/xen/vmap.h index b0f7632e89..d7ef4df452 100644 --- a/xen/include/xen/vmap.h +++ b/xen/include/xen/vmap.h @@ -1,4 +1,4 @@ -#if !defined(__XEN_VMAP_H__) && defined(VMAP_VIRT_START) +#if !defined(__XEN_VMAP_H__) && (defined(VMAP_VIRT_START) || !defined(CONFIG_HAS_VMAP)) #define __XEN_VMAP_H__ #include @@ -25,17 +25,14 @@ void vfree(void *va); void __iomem *ioremap(paddr_t, size_t); -static inline void iounmap(void __iomem *va) -{ - unsigned long addr = (unsigned long)(void __force *)va; - - vunmap((void *)(addr & PAGE_MASK)); -} +void iounmap(void __iomem *va); void *arch_vmap_virt_end(void); static inline void vm_init(void) { +#if defined(VMAP_VIRT_START) vm_init_type(VMAP_DEFAULT, (void *)VMAP_VIRT_START, arch_vmap_virt_end()); +#endif } #endif /* __XEN_VMAP_H__ */ -- 2.25.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 26 03:40:41 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 03:40:41 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555078.866809 (Exim 4.92) (envelope-from ) id 1qDd5a-0000kj-Qy; Mon, 26 Jun 2023 03:40:30 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555078.866809; Mon, 26 Jun 2023 03:40:30 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd5Z-0000ad-V1; Mon, 26 Jun 2023 03:40:29 +0000 Received: by outflank-mailman (input) for mailman id 555078; Mon, 26 Jun 2023 03:40:23 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd1t-0007ej-6U for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 03:36:41 +0000 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by se1-gles-sth1.inumbo.com (Halon) with ESMTP id a8f28c11-13d2-11ee-b237-6b7b168915f2; Mon, 26 Jun 2023 05:36:39 +0200 (CEST) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 2B2AE1FB; Sun, 25 Jun 2023 20:37:23 -0700 (PDT) Received: from a011292.shanghai.arm.com (a011292.shanghai.arm.com [10.169.190.94]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id 840103F64C; Sun, 25 Jun 2023 20:36:36 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: a8f28c11-13d2-11ee-b237-6b7b168915f2 From: Penny Zheng To: xen-devel@lists.xenproject.org Cc: Penny Zheng , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk , Penny Zheng , Wei Chen Subject: [PATCH v3 29/52] xen/mpu: introduce a pair helper read_protection_region()/write_protection_region() Date: Mon, 26 Jun 2023 11:34:20 +0800 Message-Id: <20230626033443.2943270-30-Penny.Zheng@arm.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230626033443.2943270-1-Penny.Zheng@arm.com> References: <20230626033443.2943270-1-Penny.Zheng@arm.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Each EL2 MPU protection region could be configured using PRBAR_EL2 and PRLAR_EL2. This commit introduces a pair helper read_protection_region()/ write_protection_region() to read/write EL2 MPU protection region. As explained in section G1.3.18 of the reference manual for AArch64v8R, a set of system register PRBAR_EL2 and PRLAR_EL2 provide access to the EL2 MPU region which is determined by the value of 'n' and PRSELR_EL2.REGION as PRSELR_EL2.REGION<7:4>:n(n = 0, 1, 2, ... , 15). For example to access regions from 16 to 31: - Set PRSELR_EL2 to 0b1xxxx - Region 16 configuration is accessible through PRBAR0_EL2 and PRLAR0_EL2 - Region 17 configuration is accessible through PRBAR1_EL2 and PRLAR1_EL2 - Region 18 configuration is accessible through PRBAR2_EL2 and PRLAR2_EL2 - ... - Region 31 configuration is accessible through PRBAR15_EL2 and PRLAR15_EL2 Signed-off-by: Penny Zheng Signed-off-by: Wei Chen --- v3: - use WRITE_SYSREG()/READ_SYSREG() to avoid open-coding - move the selection part outside of the macro, So it could be outside of the switch and reduce the code generation. - introduce two helpers (one for the read operation, the other for the write operation). This would make the code a bit easier to read. - error out when the caller pass a number higher than 15 --- xen/arch/arm/include/asm/arm64/sysregs.h | 32 +++++ xen/arch/arm/mpu/mm.c | 173 +++++++++++++++++++++++ 2 files changed, 205 insertions(+) diff --git a/xen/arch/arm/include/asm/arm64/sysregs.h b/xen/arch/arm/include/asm/arm64/sysregs.h index a249a660a8..c8a679afdd 100644 --- a/xen/arch/arm/include/asm/arm64/sysregs.h +++ b/xen/arch/arm/include/asm/arm64/sysregs.h @@ -467,9 +467,41 @@ /* EL2 MPU Protection Region Base Address Register encode */ #define PRBAR_EL2 S3_4_C6_C8_0 +#define PRBAR0_EL2 S3_4_C6_C8_0 +#define PRBAR1_EL2 S3_4_C6_C8_4 +#define PRBAR2_EL2 S3_4_C6_C9_0 +#define PRBAR3_EL2 S3_4_C6_C9_4 +#define PRBAR4_EL2 S3_4_C6_C10_0 +#define PRBAR5_EL2 S3_4_C6_C10_4 +#define PRBAR6_EL2 S3_4_C6_C11_0 +#define PRBAR7_EL2 S3_4_C6_C11_4 +#define PRBAR8_EL2 S3_4_C6_C12_0 +#define PRBAR9_EL2 S3_4_C6_C12_4 +#define PRBAR10_EL2 S3_4_C6_C13_0 +#define PRBAR11_EL2 S3_4_C6_C13_4 +#define PRBAR12_EL2 S3_4_C6_C14_0 +#define PRBAR13_EL2 S3_4_C6_C14_4 +#define PRBAR14_EL2 S3_4_C6_C15_0 +#define PRBAR15_EL2 S3_4_C6_C15_4 /* EL2 MPU Protection Region Limit Address Register encode */ #define PRLAR_EL2 S3_4_C6_C8_1 +#define PRLAR0_EL2 S3_4_C6_C8_1 +#define PRLAR1_EL2 S3_4_C6_C8_5 +#define PRLAR2_EL2 S3_4_C6_C9_1 +#define PRLAR3_EL2 S3_4_C6_C9_5 +#define PRLAR4_EL2 S3_4_C6_C10_1 +#define PRLAR5_EL2 S3_4_C6_C10_5 +#define PRLAR6_EL2 S3_4_C6_C11_1 +#define PRLAR7_EL2 S3_4_C6_C11_5 +#define PRLAR8_EL2 S3_4_C6_C12_1 +#define PRLAR9_EL2 S3_4_C6_C12_5 +#define PRLAR10_EL2 S3_4_C6_C13_1 +#define PRLAR11_EL2 S3_4_C6_C13_5 +#define PRLAR12_EL2 S3_4_C6_C14_1 +#define PRLAR13_EL2 S3_4_C6_C14_5 +#define PRLAR14_EL2 S3_4_C6_C15_1 +#define PRLAR15_EL2 S3_4_C6_C15_5 /* MPU Protection Region Selection Register encode */ #define PRSELR_EL2 S3_4_C6_C2_1 diff --git a/xen/arch/arm/mpu/mm.c b/xen/arch/arm/mpu/mm.c index e06a6e5810..7b1b5d6e27 100644 --- a/xen/arch/arm/mpu/mm.c +++ b/xen/arch/arm/mpu/mm.c @@ -39,6 +39,23 @@ uint8_t __ro_after_init max_xen_mpumap; */ static DECLARE_BITMAP(xen_mpumap_mask, ARM_MAX_MPU_MEMORY_REGIONS); +/* Write a MPU protection region */ +#define WRITE_PROTECTION_REGION(pr, prbar_el2, prlar_el2) ({ \ + const pr_t *_pr = pr; \ + \ + WRITE_SYSREG(_pr->prbar.bits, prbar_el2); \ + WRITE_SYSREG(_pr->prlar.bits, prlar_el2); \ +}) + +/* Read a MPU protection region */ +#define READ_PROTECTION_REGION(prbar_el2, prlar_el2) ({ \ + pr_t _pr; \ + \ + _pr.prbar.bits = READ_SYSREG(prbar_el2); \ + _pr.prlar.bits = READ_SYSREG(prlar_el2); \ + _pr; \ +}) + void __init setup_mm_mappings(unsigned long boot_phys_offset) { unsigned int nr_regions = REGION_UART_SEL, i = 0; @@ -57,6 +74,162 @@ void __init setup_mm_mappings(unsigned long boot_phys_offset) set_bit(i, xen_mpumap_mask); } +/* + * Armv8-R AArch64 at most supports 255 MPU protection regions. + * See section G1.3.18 of the reference manual for Armv8-R AArch64, + * PRBAR_EL2 and PRLAR_EL2 provide access to the EL2 MPU region + * determined by the value of 'n' and PRSELR_EL2.REGION as + * PRSELR_EL2.REGION<7:4>:n(n = 0, 1, 2, ... , 15) + * For example to access regions from 16 to 31 (0b10000 to 0b11111): + * - Set PRSELR_EL2 to 0b1xxxx + * - Region 16 configuration is accessible through PRBAR0_EL2 and PRLAR0_EL2 + * - Region 17 configuration is accessible through PRBAR1_EL2 and PRLAR1_EL2 + * - Region 18 configuration is accessible through PRBAR2_EL2 and PRLAR2_EL2 + * - ... + * - Region 31 configuration is accessible through PRBAR15_EL2 and PRLAR15_EL2 + */ +/* + * Read EL2 MPU Protection Region. + * + * @pr_read: mpu protection region returned by read op. + * @sel: mpu protection region selector + */ +static void read_protection_region(pr_t *pr_read, uint8_t sel) +{ + /* + * Before accessing EL2 MPU region register PRBAR_EL2/PRLAR_EL2, + * make sure PRSELR_EL2 is set, as it determines which MPU region + * is selected. + */ + WRITE_SYSREG(sel, PRSELR_EL2); + isb(); + + switch ( sel & 0x0f ) + { + case 0: + *pr_read = READ_PROTECTION_REGION(PRBAR0_EL2, PRLAR0_EL2); + break; + case 1: + *pr_read = READ_PROTECTION_REGION(PRBAR1_EL2, PRLAR1_EL2); + break; + case 2: + *pr_read = READ_PROTECTION_REGION(PRBAR2_EL2, PRLAR2_EL2); + break; + case 3: + *pr_read = READ_PROTECTION_REGION(PRBAR3_EL2, PRLAR3_EL2); + break; + case 4: + *pr_read = READ_PROTECTION_REGION(PRBAR4_EL2, PRLAR4_EL2); + break; + case 5: + *pr_read = READ_PROTECTION_REGION(PRBAR5_EL2, PRLAR5_EL2); + break; + case 6: + *pr_read = READ_PROTECTION_REGION(PRBAR6_EL2, PRLAR6_EL2); + break; + case 7: + *pr_read = READ_PROTECTION_REGION(PRBAR7_EL2, PRLAR7_EL2); + break; + case 8: + *pr_read = READ_PROTECTION_REGION(PRBAR8_EL2, PRLAR8_EL2); + break; + case 9: + *pr_read = READ_PROTECTION_REGION(PRBAR9_EL2, PRLAR9_EL2); + break; + case 10: + *pr_read = READ_PROTECTION_REGION(PRBAR10_EL2, PRLAR10_EL2); + break; + case 11: + *pr_read = READ_PROTECTION_REGION(PRBAR11_EL2, PRLAR11_EL2); + break; + case 12: + *pr_read = READ_PROTECTION_REGION(PRBAR12_EL2, PRLAR12_EL2); + break; + case 13: + *pr_read = READ_PROTECTION_REGION(PRBAR13_EL2, PRLAR13_EL2); + break; + case 14: + *pr_read = READ_PROTECTION_REGION(PRBAR14_EL2, PRLAR14_EL2); + break; + case 15: + *pr_read = READ_PROTECTION_REGION(PRBAR15_EL2, PRLAR15_EL2); + break; + default: + panic("Unsupported selector %u\n", sel); + } +} + +/* + * Write EL2 MPU Protection Region. + * + * @pr_write: const mpu protection region passed through write op. + * @sel: mpu protection region selector + */ +static void write_protection_region(const pr_t *pr_write, uint8_t sel) +{ + /* + * Before accessing EL2 MPU region register PRBAR_EL2/PRLAR_EL2, + * make sure PRSELR_EL2 is set, as it determines which MPU region + * is selected. + */ + WRITE_SYSREG(sel, PRSELR_EL2); + isb(); + + switch ( sel & 0x0f ) + { + case 0: + WRITE_PROTECTION_REGION(pr_write, PRBAR0_EL2, PRLAR0_EL2); + break; + case 1: + WRITE_PROTECTION_REGION(pr_write, PRBAR1_EL2, PRLAR1_EL2); + break; + case 2: + WRITE_PROTECTION_REGION(pr_write, PRBAR2_EL2, PRLAR2_EL2); + break; + case 3: + WRITE_PROTECTION_REGION(pr_write, PRBAR3_EL2, PRLAR3_EL2); + break; + case 4: + WRITE_PROTECTION_REGION(pr_write, PRBAR4_EL2, PRLAR4_EL2); + break; + case 5: + WRITE_PROTECTION_REGION(pr_write, PRBAR5_EL2, PRLAR5_EL2); + break; + case 6: + WRITE_PROTECTION_REGION(pr_write, PRBAR6_EL2, PRLAR6_EL2); + break; + case 7: + WRITE_PROTECTION_REGION(pr_write, PRBAR7_EL2, PRLAR7_EL2); + break; + case 8: + WRITE_PROTECTION_REGION(pr_write, PRBAR8_EL2, PRLAR8_EL2); + break; + case 9: + WRITE_PROTECTION_REGION(pr_write, PRBAR9_EL2, PRLAR9_EL2); + break; + case 10: + WRITE_PROTECTION_REGION(pr_write, PRBAR10_EL2, PRLAR10_EL2); + break; + case 11: + WRITE_PROTECTION_REGION(pr_write, PRBAR11_EL2, PRLAR11_EL2); + break; + case 12: + WRITE_PROTECTION_REGION(pr_write, PRBAR12_EL2, PRLAR12_EL2); + break; + case 13: + WRITE_PROTECTION_REGION(pr_write, PRBAR13_EL2, PRLAR13_EL2); + break; + case 14: + WRITE_PROTECTION_REGION(pr_write, PRBAR14_EL2, PRLAR14_EL2); + break; + case 15: + WRITE_PROTECTION_REGION(pr_write, PRBAR15_EL2, PRLAR15_EL2); + break; + default: + panic("Unsupported selector %u\n", sel); + } +} + /* * Local variables: * mode: C -- 2.25.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 26 03:40:44 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 03:40:44 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555090.866863 (Exim 4.92) (envelope-from ) id 1qDd5n-0003np-Gk; Mon, 26 Jun 2023 03:40:43 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555090.866863; Mon, 26 Jun 2023 03:40:43 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd5m-0003fE-4O; Mon, 26 Jun 2023 03:40:42 +0000 Received: by outflank-mailman (input) for mailman id 555090; Mon, 26 Jun 2023 03:40:37 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd0w-0000HH-M8 for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 03:35:42 +0000 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by se1-gles-flk1.inumbo.com (Halon) with ESMTP id 85cf78f1-13d2-11ee-8611-37d641c3527e; Mon, 26 Jun 2023 05:35:40 +0200 (CEST) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 256A01FB; Sun, 25 Jun 2023 20:36:24 -0700 (PDT) Received: from a011292.shanghai.arm.com (a011292.shanghai.arm.com [10.169.190.94]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id 7DE363F64C; Sun, 25 Jun 2023 20:35:37 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 85cf78f1-13d2-11ee-8611-37d641c3527e From: Penny Zheng To: xen-devel@lists.xenproject.org Cc: Penny Zheng , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk , Penny Zheng , Wei Chen Subject: [PATCH v3 11/52] xen/arm: mmu: fold FIXMAP into MMU system Date: Mon, 26 Jun 2023 11:34:02 +0800 Message-Id: <20230626033443.2943270-12-Penny.Zheng@arm.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230626033443.2943270-1-Penny.Zheng@arm.com> References: <20230626033443.2943270-1-Penny.Zheng@arm.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit FIXMAP in MMU system is used to do special-purpose 4K mapping, like mapping early UART, temporarily mapping source codes for copy and paste (copy_from_paddr), etc. As FIXMAP feature is highly dependent on virtual address translation, we introduce a new Kconfig CONFIG_HAS_FIXMAP to wrap all releated codes, then we fold it into MMU system. Since PMAP relies on FIXMAP, so we fold it too into MMU system. Under !CONFIG_HAS_FIXMAP, we provide empty stubbers for not breaking compilation. Signed-off-by: Penny Zheng Signed-off-by: Wei Chen --- v1 -> v2 - new patch --- v3: - fold CONFIG_HAS_FIXMAP into CONFIG_HAS_MMU - change CONFIG_HAS_FIXMAP to an Arm-specific Kconfig --- xen/arch/arm/Kconfig | 7 ++++++- xen/arch/arm/include/asm/fixmap.h | 31 ++++++++++++++++++++++++++++--- 2 files changed, 34 insertions(+), 4 deletions(-) diff --git a/xen/arch/arm/Kconfig b/xen/arch/arm/Kconfig index fb77392b82..22b28b8ba2 100644 --- a/xen/arch/arm/Kconfig +++ b/xen/arch/arm/Kconfig @@ -15,7 +15,6 @@ config ARM select HAS_DEVICE_TREE select HAS_PASSTHROUGH select HAS_PDX - select HAS_PMAP select IOMMU_FORCE_PT_SHARE config ARCH_DEFCONFIG @@ -63,11 +62,17 @@ source "arch/Kconfig" config HAS_MMU bool "Memory Management Unit support in a VMSA system" default y + select HAS_PMAP help In a VMSA system, a Memory Management Unit (MMU) provides fine-grained control of a memory system through a set of virtual to physical address mappings and associated memory properties held in memory-mapped tables known as translation tables. +config HAS_FIXMAP + bool "Provide special-purpose 4K mapping slots in a VMSA" + depends on HAS_MMU + default y + config ACPI bool "ACPI (Advanced Configuration and Power Interface) Support (UNSUPPORTED)" if UNSUPPORTED depends on ARM_64 diff --git a/xen/arch/arm/include/asm/fixmap.h b/xen/arch/arm/include/asm/fixmap.h index d0c9a52c8c..1b5b62866b 100644 --- a/xen/arch/arm/include/asm/fixmap.h +++ b/xen/arch/arm/include/asm/fixmap.h @@ -4,9 +4,6 @@ #ifndef __ASM_FIXMAP_H #define __ASM_FIXMAP_H -#include -#include - /* Fixmap slots */ #define FIXMAP_CONSOLE 0 /* The primary UART */ #define FIXMAP_MISC 1 /* Ephemeral mappings of hardware */ @@ -22,6 +19,11 @@ #ifndef __ASSEMBLY__ +#ifdef CONFIG_HAS_FIXMAP + +#include +#include + /* * Direct access to xen_fixmap[] should only happen when {set, * clear}_fixmap() is unusable (e.g. where we would end up to @@ -43,6 +45,29 @@ static inline unsigned int virt_to_fix(vaddr_t vaddr) return ((vaddr - FIXADDR_START) >> PAGE_SHIFT); } +#else /* !CONFIG_HAS_FIXMAP */ + +#include +#include + +static inline void set_fixmap(unsigned int map, mfn_t mfn, + unsigned int attributes) +{ + ASSERT_UNREACHABLE(); +} + +static inline void clear_fixmap(unsigned int map) +{ + ASSERT_UNREACHABLE(); +} + +static inline unsigned int virt_to_fix(vaddr_t vaddr) +{ + ASSERT_UNREACHABLE(); + return -EINVAL; +} +#endif /* !CONFIG_HAS_FIXMAP */ + #endif /* __ASSEMBLY__ */ #endif /* __ASM_FIXMAP_H */ -- 2.25.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 26 03:40:44 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 03:40:44 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555084.866832 (Exim 4.92) (envelope-from ) id 1qDd5g-0001vI-8P; Mon, 26 Jun 2023 03:40:36 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555084.866832; Mon, 26 Jun 2023 03:40:36 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd5f-0001mQ-3h; Mon, 26 Jun 2023 03:40:35 +0000 Received: by outflank-mailman (input) for mailman id 555084; Mon, 26 Jun 2023 03:40:32 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd2h-0000HH-Kl for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 03:37:31 +0000 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by se1-gles-flk1.inumbo.com (Halon) with ESMTP id c6b0abc6-13d2-11ee-8611-37d641c3527e; Mon, 26 Jun 2023 05:37:29 +0200 (CEST) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 034751FB; Sun, 25 Jun 2023 20:38:13 -0700 (PDT) Received: from a011292.shanghai.arm.com (a011292.shanghai.arm.com [10.169.190.94]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id 5B0603F64C; Sun, 25 Jun 2023 20:37:26 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: c6b0abc6-13d2-11ee-8611-37d641c3527e From: Penny Zheng To: xen-devel@lists.xenproject.org Cc: Penny Zheng , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk , Penny Zheng , Wei Chen Subject: [PATCH v3 45/52] xen/mpu: insert an new entry into guest physmap in MPU system Date: Mon, 26 Jun 2023 11:34:36 +0800 Message-Id: <20230626033443.2943270-46-Penny.Zheng@arm.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230626033443.2943270-1-Penny.Zheng@arm.com> References: <20230626033443.2943270-1-Penny.Zheng@arm.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Function p2m_set_entry/__p2m_set_entry is responsible for inserting an entry in the p2m. In MPU system, it includes the following steps: - checking whether mapping already exists(sgfn -> mfn) - constituting a new P2M MPU memory region structure(pr_t) through standard entry region_to_p2m_entry() - insert the new entry into domain P2M table(p2m->root) Signed-off-by: Penny Zheng Signed-off-by: Wei Chen --- v3: - new commit --- xen/arch/arm/include/asm/arm64/mpu.h | 3 +- xen/arch/arm/include/asm/mpu/mm.h | 6 + xen/arch/arm/include/asm/p2m.h | 3 + xen/arch/arm/mpu/mm.c | 4 +- xen/arch/arm/mpu/p2m.c | 172 +++++++++++++++++++++++++++ 5 files changed, 185 insertions(+), 3 deletions(-) diff --git a/xen/arch/arm/include/asm/arm64/mpu.h b/xen/arch/arm/include/asm/arm64/mpu.h index c5e69f239a..444ca716b8 100644 --- a/xen/arch/arm/include/asm/arm64/mpu.h +++ b/xen/arch/arm/include/asm/arm64/mpu.h @@ -61,7 +61,8 @@ typedef union { unsigned long ap:2; /* Acess Permission */ unsigned long sh:2; /* Sharebility */ unsigned long base:42; /* Base Address */ - unsigned long pad:16; + unsigned long pad:12; + unsigned long p2m_type:4; /* Ignore by hardware. Used to store p2m types.*/ } reg; uint64_t bits; } prbar_t; diff --git a/xen/arch/arm/include/asm/mpu/mm.h b/xen/arch/arm/include/asm/mpu/mm.h index 4df69245c6..0abb0a6c92 100644 --- a/xen/arch/arm/include/asm/mpu/mm.h +++ b/xen/arch/arm/include/asm/mpu/mm.h @@ -14,6 +14,12 @@ extern void *map_mm_range(paddr_t pa, size_t len, unsigned int attributes); extern void unmap_mm_range(paddr_t pa); extern bool is_mm_range_mapped_transient(paddr_t pa, paddr_t len); extern pr_t *alloc_mpumap(void); +#define MPUMAP_REGION_FAILED 0 +#define MPUMAP_REGION_FOUND 1 +#define MPUMAP_REGION_INCLUSIVE 2 +#define MPUMAP_REGION_OVERLAP 3 +extern int mpumap_contain_region(pr_t *table, uint8_t nr_regions, + paddr_t base, paddr_t limit, uint8_t *index); #endif /* __ARCH_ARM_MM_MPU__ */ diff --git a/xen/arch/arm/include/asm/p2m.h b/xen/arch/arm/include/asm/p2m.h index c3598d514e..68837b6df7 100644 --- a/xen/arch/arm/include/asm/p2m.h +++ b/xen/arch/arm/include/asm/p2m.h @@ -67,6 +67,9 @@ struct p2m_domain { #else /* Current Virtualization System Control Register for the p2m */ uint64_t vsctlr; + + /* Number of MPU memory regions in P2M MPU memory mapping table. */ + uint8_t nr_regions; #endif /* Highest guest frame that's ever been mapped in the p2m */ diff --git a/xen/arch/arm/mpu/mm.c b/xen/arch/arm/mpu/mm.c index de5da96b80..8cdb7d7219 100644 --- a/xen/arch/arm/mpu/mm.c +++ b/xen/arch/arm/mpu/mm.c @@ -378,8 +378,8 @@ out: * MPUMAP_REGION_INCLUSIVE: find an inclusive match in #table * MPUMAP_REGION_OVERLAP: overlap with the existing mapping */ -static int mpumap_contain_region(pr_t *table, uint8_t nr_regions, - paddr_t base, paddr_t limit, uint8_t *index) +int mpumap_contain_region(pr_t *table, uint8_t nr_regions, + paddr_t base, paddr_t limit, uint8_t *index) { uint8_t i = 0, _index = INVALID_REGION_IDX; diff --git a/xen/arch/arm/mpu/p2m.c b/xen/arch/arm/mpu/p2m.c index 8f728f8957..4838d5b625 100644 --- a/xen/arch/arm/mpu/p2m.c +++ b/xen/arch/arm/mpu/p2m.c @@ -166,6 +166,178 @@ int p2m_init(struct domain *d) return rc; } +static void p2m_set_permission(pr_t *region, p2m_type_t t) +{ + switch ( t ) + { + case p2m_ram_rw: + region->prbar.reg.xn = XN_DISABLED; + region->prbar.reg.ap = AP_RW_ALL; + break; + + case p2m_ram_ro: + region->prbar.reg.xn = XN_DISABLED; + region->prbar.reg.ap = AP_RO_ALL; + break; + + case p2m_invalid: + region->prbar.reg.xn = XN_P2M_ENABLED; + region->prbar.reg.ap = AP_RO_ALL; + break; + + case p2m_max_real_type: + BUG(); + break; + + case p2m_mmio_direct_dev: + case p2m_mmio_direct_nc: + case p2m_mmio_direct_c: + case p2m_iommu_map_ro: + case p2m_iommu_map_rw: + case p2m_map_foreign_ro: + case p2m_map_foreign_rw: + case p2m_grant_map_ro: + case p2m_grant_map_rw: + panic(XENLOG_G_ERR "p2m: UNIMPLEMENTED p2m permission in MPU system\n"); + break; + } +} + +static inline pr_t region_to_p2m_entry(mfn_t smfn, unsigned long nr_mfn, + p2m_type_t t) +{ + prbar_t prbar; + prlar_t prlar; + pr_t region; + + prbar = (prbar_t) { + .reg = { + .p2m_type = t, /* P2M Type */ + }}; + + prlar = (prlar_t) { + .reg = { + .ns = 0, /* Hyp mode is in secure world */ + .en = 1, /* Region enabled */ + }}; + + BUILD_BUG_ON(p2m_max_real_type > (1 << 4)); + + switch ( t ) + { + case p2m_invalid: + case p2m_ram_rw: + case p2m_ram_ro: + case p2m_max_real_type: + prbar.reg.sh = LPAE_SH_INNER; + prlar.reg.ai = MT_NORMAL; + break; + + default: + panic(XENLOG_G_ERR "p2m: UNIMPLEMENTED p2m type in MPU system\n"); + break; + } + + region = (pr_t) { + .prbar = prbar, + .prlar = prlar, + }; + + /* + * xn and ap bit will be defined in the p2m_set_permission + * based on t. + */ + p2m_set_permission(®ion, t); + + /* Set base address and limit address */ + pr_set_base(®ion, mfn_to_maddr(smfn)); + pr_set_limit(®ion, (mfn_to_maddr(mfn_add(smfn, nr_mfn)) - 1)); + + return region; +} + +/* + * Check whether guest memory [sgfn, sgfn + nr_gfns) is mapped. + * + * If it is mapped, the index of associated MPU memory region will be filled + * up, and 0 is returned. + * If it is not mapped, -ENOENT errno will be returned. + */ +static int is_gfns_mapped(struct p2m_domain *p2m, gfn_t sgfn, + unsigned long nr_gfns, uint8_t *idx) +{ + paddr_t gbase = gfn_to_gaddr(sgfn), + glimit = gfn_to_gaddr(gfn_add(sgfn, nr_gfns)) - 1; + int rc; + pr_t *table; + + table = (pr_t *)page_to_virt(p2m->root); + if ( !table ) + return -EEXIST; + + rc = mpumap_contain_region(table, p2m->nr_regions, gbase, glimit, idx); + if ( (rc == MPUMAP_REGION_FOUND) || (rc == MPUMAP_REGION_INCLUSIVE) ) + return 0; + else if ( rc == MPUMAP_REGION_FAILED ) + return -ENOENT; + + /* Partially mapped */ + return -EINVAL; +} + +int __p2m_set_entry(struct p2m_domain *p2m, gfn_t sgfn, unsigned int nr, + mfn_t smfn, p2m_type_t t, p2m_access_t a) +{ + pr_t *table; + mfn_t emfn = mfn_add(smfn, nr); + uint8_t idx = INVALID_REGION_IDX; + + /* + * Other than removing mapping (i.e MFN_INVALID), + * gfn == mfn in MPU system. + */ + if ( !mfn_eq(smfn, INVALID_MFN) ) + if ( gfn_x(sgfn) != mfn_x(smfn) ) + { + printk(XENLOG_G_ERR "Unable to map MFN %#"PRI_mfn" at %#"PRI_mfn"\n", + mfn_x(smfn), gfn_x(sgfn)); + return -EINVAL; + } + + if ( is_gfns_mapped(p2m, sgfn, nr, &idx) != -ENOENT ) + { + printk(XENLOG_G_ERR "p2m: unable to insert P2M MPU memory region 0x%"PRIpaddr"-0x%"PRIpaddr"\n", + gfn_to_gaddr(sgfn), gfn_to_gaddr(gfn_add(sgfn, nr))); + return -EINVAL; + } + + table = (pr_t *)page_to_virt(p2m->root); + if ( !table ) + return -EEXIST; + table[p2m->nr_regions] = region_to_p2m_entry(smfn, nr, t); + p2m->nr_regions++; + + p2m->max_mapped_gfn = gfn_max(p2m->max_mapped_gfn, _gfn(mfn_x(emfn))); + p2m->lowest_mapped_gfn = gfn_min(p2m->lowest_mapped_gfn, _gfn(mfn_x(smfn))); + + return 0; +} + +int p2m_set_entry(struct p2m_domain *p2m, gfn_t sgfn, unsigned long nr, + mfn_t smfn, p2m_type_t t, p2m_access_t a) +{ + /* + * Any reference taken by the P2M mappings (e.g. foreign mapping) will + * be dropped in relinquish_p2m_mapping(). As the P2M will still + * be accessible after, we need to prevent mapping to be added when the + * domain is dying. + */ + if ( unlikely(p2m->domain->is_dying) ) + return -ENOMEM; + + return __p2m_set_entry(p2m, sgfn, nr, smfn, t, a); +} + /* * Local variables: * mode: C -- 2.25.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 26 03:40:44 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 03:40:44 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555082.866820 (Exim 4.92) (envelope-from ) id 1qDd5d-0001Gu-Ec; Mon, 26 Jun 2023 03:40:33 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555082.866820; Mon, 26 Jun 2023 03:40:33 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd5c-0001C3-Bc; Mon, 26 Jun 2023 03:40:32 +0000 Received: by outflank-mailman (input) for mailman id 555082; Mon, 26 Jun 2023 03:40:29 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd1G-0007ej-38 for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 03:36:02 +0000 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by se1-gles-sth1.inumbo.com (Halon) with ESMTP id 91d915d0-13d2-11ee-b237-6b7b168915f2; Mon, 26 Jun 2023 05:36:00 +0200 (CEST) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 65C7A1FB; Sun, 25 Jun 2023 20:36:44 -0700 (PDT) Received: from a011292.shanghai.arm.com (a011292.shanghai.arm.com [10.169.190.94]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id BCC283F64C; Sun, 25 Jun 2023 20:35:57 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 91d915d0-13d2-11ee-b237-6b7b168915f2 From: Penny Zheng To: xen-devel@lists.xenproject.org Cc: Penny Zheng , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk , Penny Zheng , Wei Chen Subject: [PATCH v3 17/52] xen/arm: do not give memory back to static heap Date: Mon, 26 Jun 2023 11:34:08 +0800 Message-Id: <20230626033443.2943270-18-Penny.Zheng@arm.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230626033443.2943270-1-Penny.Zheng@arm.com> References: <20230626033443.2943270-1-Penny.Zheng@arm.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit If Xenheap is statically configured in Device Tree, its size is definite. So, we shall not give memory back into static heap, like we normally do in free_init_memory, etc, once it finishes initialization. We extract static_heap flag from init data bootinfo, as we also need it after we destroy init data section. we introduce a new helper xen_is_using_staticheap to tell whether Xenheap is statically configured in Device Tree. It is always returning false when !CONFIG_STATIC_MEMORY, since static heap depends on static memory feature. Signed-off-by: Penny Zheng Signed-off-by: Wei Chen --- v3: - new commit --- xen/arch/arm/bootfdt.c | 2 +- xen/arch/arm/include/asm/setup.h | 8 +++++++- xen/arch/arm/kernel.c | 3 ++- xen/arch/arm/mm.c | 8 ++++++-- xen/arch/arm/mmu/setup.c | 4 ++-- xen/arch/arm/setup.c | 29 +++++++++++++++++------------ 6 files changed, 35 insertions(+), 19 deletions(-) diff --git a/xen/arch/arm/bootfdt.c b/xen/arch/arm/bootfdt.c index 2673ad17a1..c4497e3b31 100644 --- a/xen/arch/arm/bootfdt.c +++ b/xen/arch/arm/bootfdt.c @@ -341,7 +341,7 @@ static int __init process_chosen_node(const void *fdt, int node, if ( rc ) return rc; - bootinfo.static_heap = true; + static_heap = true; } printk("Checking for initrd in /chosen\n"); diff --git a/xen/arch/arm/include/asm/setup.h b/xen/arch/arm/include/asm/setup.h index 0922549631..d691f6bf93 100644 --- a/xen/arch/arm/include/asm/setup.h +++ b/xen/arch/arm/include/asm/setup.h @@ -104,9 +104,15 @@ struct bootinfo { #ifdef CONFIG_ACPI struct meminfo acpi; #endif - bool static_heap; }; +extern bool static_heap; +#ifdef CONFIG_STATIC_MEMORY +#define xen_is_using_staticheap() (static_heap) +#else +#define xen_is_using_staticheap() (false) +#endif + struct map_range_data { struct domain *d; diff --git a/xen/arch/arm/kernel.c b/xen/arch/arm/kernel.c index 2e64612ab3..d13ef0330b 100644 --- a/xen/arch/arm/kernel.c +++ b/xen/arch/arm/kernel.c @@ -246,7 +246,8 @@ static __init int kernel_decompress(struct bootmodule *mod, uint32_t offset) * Free the original kernel, update the pointers to the * decompressed kernel */ - fw_unreserved_regions(addr, addr + size, init_domheap_pages, 0); + if ( !xen_is_using_staticheap() ) + fw_unreserved_regions(addr, addr + size, init_domheap_pages, 0); return 0; } diff --git a/xen/arch/arm/mm.c b/xen/arch/arm/mm.c index e665d1f97a..4b174f4d08 100644 --- a/xen/arch/arm/mm.c +++ b/xen/arch/arm/mm.c @@ -177,8 +177,12 @@ void free_init_memory(void) if ( rc ) panic("Unable to remove the init section (rc = %d)\n", rc); - init_domheap_pages(pa, pa + len); - printk("Freed %ldkB init memory.\n", (long)(__init_end-__init_begin)>>10); + if ( !xen_is_using_staticheap() ) + { + init_domheap_pages(pa, pa + len); + printk("Freed %ldkB init memory.\n", + (long)(__init_end-__init_begin)>>10); + } } void arch_dump_shared_mem_info(void) diff --git a/xen/arch/arm/mmu/setup.c b/xen/arch/arm/mmu/setup.c index a7590a2443..cf7018b190 100644 --- a/xen/arch/arm/mmu/setup.c +++ b/xen/arch/arm/mmu/setup.c @@ -196,7 +196,7 @@ void __init setup_mm(void) total_pages = ram_size >> PAGE_SHIFT; - if ( bootinfo.static_heap ) + if ( xen_is_using_staticheap() ) { for ( i = 0 ; i < bootinfo.reserved_mem.nr_banks; i++ ) { @@ -241,7 +241,7 @@ void __init setup_mm(void) do { - e = bootinfo.static_heap ? + e = xen_is_using_staticheap() ? fit_xenheap_in_static_heap(pfn_to_paddr(xenheap_pages), MB(32)) : consider_modules(ram_start, ram_end, pfn_to_paddr(xenheap_pages), diff --git a/xen/arch/arm/setup.c b/xen/arch/arm/setup.c index 34923d9984..6f8dd98d6b 100644 --- a/xen/arch/arm/setup.c +++ b/xen/arch/arm/setup.c @@ -59,6 +59,8 @@ bool __read_mostly acpi_disabled; domid_t __read_mostly max_init_domid; +bool __read_mostly static_heap; + static __used void init_done(void) { int rc; @@ -508,22 +510,25 @@ void __init discard_initial_modules(void) struct bootmodules *mi = &bootinfo.modules; int i; - for ( i = 0; i < mi->nr_mods; i++ ) + if ( !xen_is_using_staticheap() ) { - paddr_t s = mi->module[i].start; - paddr_t e = s + PAGE_ALIGN(mi->module[i].size); + for ( i = 0; i < mi->nr_mods; i++ ) + { + paddr_t s = mi->module[i].start; + paddr_t e = s + PAGE_ALIGN(mi->module[i].size); - if ( mi->module[i].kind == BOOTMOD_XEN ) - continue; + if ( mi->module[i].kind == BOOTMOD_XEN ) + continue; - if ( !mfn_valid(maddr_to_mfn(s)) || - !mfn_valid(maddr_to_mfn(e)) ) - continue; + if ( !mfn_valid(maddr_to_mfn(s)) || + !mfn_valid(maddr_to_mfn(e)) ) + continue; - fw_unreserved_regions(s, e, init_domheap_pages, 0); - } + fw_unreserved_regions(s, e, init_domheap_pages, 0); + } - mi->nr_mods = 0; + mi->nr_mods = 0; + } remove_early_mappings(); } @@ -660,7 +665,7 @@ void __init populate_boot_allocator(void) const struct meminfo *banks = &bootinfo.mem; paddr_t s, e; - if ( bootinfo.static_heap ) + if ( xen_is_using_staticheap() ) { for ( i = 0 ; i < bootinfo.reserved_mem.nr_banks; i++ ) { -- 2.25.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 26 03:40:44 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 03:40:44 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555086.866845 (Exim 4.92) (envelope-from ) id 1qDd5j-0002k0-FD; Mon, 26 Jun 2023 03:40:39 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555086.866845; Mon, 26 Jun 2023 03:40:39 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd5i-0002Yk-38; Mon, 26 Jun 2023 03:40:38 +0000 Received: by outflank-mailman (input) for mailman id 555086; Mon, 26 Jun 2023 03:40:33 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd1m-0007ej-DR for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 03:36:34 +0000 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by se1-gles-sth1.inumbo.com (Halon) with ESMTP id a5415410-13d2-11ee-b237-6b7b168915f2; Mon, 26 Jun 2023 05:36:33 +0200 (CEST) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id E0A9C1FB; Sun, 25 Jun 2023 20:37:16 -0700 (PDT) Received: from a011292.shanghai.arm.com (a011292.shanghai.arm.com [10.169.190.94]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id 44BE13F64C; Sun, 25 Jun 2023 20:36:30 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: a5415410-13d2-11ee-b237-6b7b168915f2 From: Penny Zheng To: xen-devel@lists.xenproject.org Cc: Penny Zheng , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk , Penny Zheng , Wei Chen Subject: [PATCH v3 27/52] xen/mpu: introduce setup_mm_mappings Date: Mon, 26 Jun 2023 11:34:18 +0800 Message-Id: <20230626033443.2943270-28-Penny.Zheng@arm.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230626033443.2943270-1-Penny.Zheng@arm.com> References: <20230626033443.2943270-1-Penny.Zheng@arm.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Function setup_pagetables is responsible for boot-time pagetable setup in MMU system at C world. In MPU system, as we have already built up start-of-day Xen MPU memory region mapping in assembly boot-time, here we only need to do a few memory management data initializtion, including reading the number of maximum MPU regions supported by the EL2 MPU, and setting the according bitfield for regions enabled in assembly boot-time, in bitmap xen_mpumap_mask. This bitmap xen_mpumap_mask is responsible for recording the usage of EL2 MPU memory regions. In order to keep only one codeflow in arm/setup.c, setup_mm_mappings , with a more generic name, is introduced to replace setup_pagetables. Signed-off-by: Penny Zheng Signed-off-by: Wei Chen --- v3: - introduce bitmap xen_mpumap_mask for dynamic allocation on MPU regions --- xen/arch/arm/include/asm/arm64/mpu.h | 1 + xen/arch/arm/include/asm/arm64/sysregs.h | 3 +++ xen/arch/arm/include/asm/mm.h | 4 ++-- xen/arch/arm/mmu/mm.c | 7 +++++- xen/arch/arm/mpu/mm.c | 30 ++++++++++++++++++++++++ xen/arch/arm/setup.c | 2 +- 6 files changed, 43 insertions(+), 4 deletions(-) diff --git a/xen/arch/arm/include/asm/arm64/mpu.h b/xen/arch/arm/include/asm/arm64/mpu.h index 6ec2c10b14..407fec66c9 100644 --- a/xen/arch/arm/include/asm/arm64/mpu.h +++ b/xen/arch/arm/include/asm/arm64/mpu.h @@ -19,6 +19,7 @@ * or it needs adjustment. */ #define REGION_UART_SEL 0x07 +#define MPUIR_REGION_MASK ((_AC(1, UL) << 8) - 1) #ifndef __ASSEMBLY__ diff --git a/xen/arch/arm/include/asm/arm64/sysregs.h b/xen/arch/arm/include/asm/arm64/sysregs.h index c41d805fde..a249a660a8 100644 --- a/xen/arch/arm/include/asm/arm64/sysregs.h +++ b/xen/arch/arm/include/asm/arm64/sysregs.h @@ -474,6 +474,9 @@ /* MPU Protection Region Selection Register encode */ #define PRSELR_EL2 S3_4_C6_C2_1 +/* MPU Type registers encode */ +#define MPUIR_EL2 S3_4_C0_C0_4 + #endif /* Access to system registers */ diff --git a/xen/arch/arm/include/asm/mm.h b/xen/arch/arm/include/asm/mm.h index 5d890a6a45..eb520b49e3 100644 --- a/xen/arch/arm/include/asm/mm.h +++ b/xen/arch/arm/include/asm/mm.h @@ -201,8 +201,8 @@ extern unsigned long total_pages; extern uint64_t init_mm; -/* Boot-time pagetable setup */ -extern void setup_pagetables(unsigned long boot_phys_offset); +/* Boot-time memory mapping setup */ +extern void setup_mm_mappings(unsigned long boot_phys_offset); /* Map FDT in boot pagetable */ extern void *early_fdt_map(paddr_t fdt_paddr); /* Remove early mappings */ diff --git a/xen/arch/arm/mmu/mm.c b/xen/arch/arm/mmu/mm.c index 43c19fa914..d7d5bf7287 100644 --- a/xen/arch/arm/mmu/mm.c +++ b/xen/arch/arm/mmu/mm.c @@ -398,7 +398,7 @@ static void clear_table(void *table) /* Boot-time pagetable setup. * Changes here may need matching changes in head.S */ -void __init setup_pagetables(unsigned long boot_phys_offset) +static void __init setup_pagetables(unsigned long boot_phys_offset) { uint64_t ttbr; lpae_t pte, *p; @@ -470,6 +470,11 @@ void __init setup_pagetables(unsigned long boot_phys_offset) #endif } +void setup_mm_mappings(unsigned long boot_phys_offset) +{ + setup_pagetables(boot_phys_offset); +} + static void clear_boot_pagetables(void) { /* diff --git a/xen/arch/arm/mpu/mm.c b/xen/arch/arm/mpu/mm.c index fb6bb721b1..e06a6e5810 100644 --- a/xen/arch/arm/mpu/mm.c +++ b/xen/arch/arm/mpu/mm.c @@ -20,6 +20,7 @@ */ #include +#include #include #include @@ -27,6 +28,35 @@ pr_t __aligned(PAGE_SIZE) __section(".data.page_aligned") xen_mpumap[ARM_MAX_MPU_MEMORY_REGIONS]; +/* Maximum number of supported MPU memory regions by the EL2 MPU. */ +uint8_t __ro_after_init max_xen_mpumap; + +/* + * Bitmap xen_mpumap_mask is to record the usage of EL2 MPU memory regions. + * Bit 0 represents MPU memory region 0, bit 1 represents MPU memory + * region 1, ..., and so on. + * If a MPU memory region gets enabled, set the according bit to 1. + */ +static DECLARE_BITMAP(xen_mpumap_mask, ARM_MAX_MPU_MEMORY_REGIONS); + +void __init setup_mm_mappings(unsigned long boot_phys_offset) +{ + unsigned int nr_regions = REGION_UART_SEL, i = 0; + + /* + * MPUIR_EL2.Region[0:7] identifies the number of regions supported by + * the EL2 MPU. + */ + max_xen_mpumap = (uint8_t)(READ_SYSREG(MPUIR_EL2) & MPUIR_REGION_MASK); + + /* Set the bitfield for regions enabled in assembly boot-time. */ +#ifdef CONFIG_EARLY_PRINTK + nr_regions = REGION_UART_SEL + 1; +#endif + for ( ; i < nr_regions; i++ ) + set_bit(i, xen_mpumap_mask); +} + /* * Local variables: * mode: C diff --git a/xen/arch/arm/setup.c b/xen/arch/arm/setup.c index 6f8dd98d6b..f42b53d17b 100644 --- a/xen/arch/arm/setup.c +++ b/xen/arch/arm/setup.c @@ -781,7 +781,7 @@ void __init start_xen(unsigned long boot_phys_offset, /* Initialize traps early allow us to get backtrace when an error occurred */ init_traps(); - setup_pagetables(boot_phys_offset); + setup_mm_mappings(boot_phys_offset); smp_clear_cpu_maps(); -- 2.25.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 26 03:40:44 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 03:40:44 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555087.866853 (Exim 4.92) (envelope-from ) id 1qDd5l-0003Pz-Li; Mon, 26 Jun 2023 03:40:41 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555087.866853; Mon, 26 Jun 2023 03:40:41 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd5k-0003IV-F2; Mon, 26 Jun 2023 03:40:40 +0000 Received: by outflank-mailman (input) for mailman id 555087; Mon, 26 Jun 2023 03:40:35 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd2m-0007ej-M2 for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 03:37:36 +0000 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by se1-gles-sth1.inumbo.com (Halon) with ESMTP id ca704925-13d2-11ee-b237-6b7b168915f2; Mon, 26 Jun 2023 05:37:35 +0200 (CEST) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 485401FB; Sun, 25 Jun 2023 20:38:19 -0700 (PDT) Received: from a011292.shanghai.arm.com (a011292.shanghai.arm.com [10.169.190.94]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id 9FEE23F64C; Sun, 25 Jun 2023 20:37:32 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: ca704925-13d2-11ee-b237-6b7b168915f2 From: Penny Zheng To: xen-devel@lists.xenproject.org Cc: Penny Zheng , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk , Penny Zheng , Wei Chen Subject: [PATCH v3 47/52] xen/mpu: support vcpu context switch in MPU system Date: Mon, 26 Jun 2023 11:34:38 +0800 Message-Id: <20230626033443.2943270-48-Penny.Zheng@arm.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230626033443.2943270-1-Penny.Zheng@arm.com> References: <20230626033443.2943270-1-Penny.Zheng@arm.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit When vcpu switching into guest mode, in MMU system, we update VTTBR_EL2 with the incoming guest's P2M table, simple and fast. While in MPU system, we have MPU register PRBAR_EL2/PRLAR_EL2 for both stage 1 EL2 address translation and stage 2 EL1&EL0 address translation. That is, MPU memory region mapping table(xen_mpumap) shall be also updated with P2M regions during context switch. In p2m_save_state(), we need to manually disable all P2M MPU memory regions from last-running vcpu, and in p2m_restore_state(), we need to manually enable incoming guest's P2M MPU memory regions. Signed-off-by: Penny Zheng Signed-off-by: Wei Chen --- v3: - new commit --- xen/arch/arm/include/asm/arm64/sysregs.h | 3 ++ xen/arch/arm/include/asm/page.h | 4 ++ xen/arch/arm/mpu/mm.c | 6 ++- xen/arch/arm/mpu/p2m.c | 61 ++++++++++++++++++++++++ 4 files changed, 73 insertions(+), 1 deletion(-) diff --git a/xen/arch/arm/include/asm/arm64/sysregs.h b/xen/arch/arm/include/asm/arm64/sysregs.h index 35d7da411d..aa6c07cd4f 100644 --- a/xen/arch/arm/include/asm/arm64/sysregs.h +++ b/xen/arch/arm/include/asm/arm64/sysregs.h @@ -512,6 +512,9 @@ /* MPU Protection Region Enable Register encode */ #define PRENR_EL2 S3_4_C6_C1_1 +/* Virtualization System Control Register */ +#define VSCTLR_EL2 S3_4_C2_C0_0 + /* Virtualization Secure Translation Control Register */ #define VSTCR_EL2 S3_4_C2_C6_2 #define VSTCR_EL2_RES1_SHIFT 31 diff --git a/xen/arch/arm/include/asm/page.h b/xen/arch/arm/include/asm/page.h index a434e2205a..e28c3d59c5 100644 --- a/xen/arch/arm/include/asm/page.h +++ b/xen/arch/arm/include/asm/page.h @@ -99,22 +99,26 @@ * [7] Region Present * [8] Transient Region, e.g. MPU memory region is temproraily * mapped for a short time + * [9] P2M Region for stage 2 translation */ #define _PAGE_AI_BIT 0 #define _PAGE_XN_BIT 3 #define _PAGE_AP_BIT 5 #define _PAGE_PRESENT_BIT 7 #define _PAGE_TRANSIENT_BIT 8 +#define _PAGE_P2M_BIT 9 #define _PAGE_AI (7U << _PAGE_AI_BIT) #define _PAGE_XN (2U << _PAGE_XN_BIT) #define _PAGE_RO (2U << _PAGE_AP_BIT) #define _PAGE_PRESENT (1U << _PAGE_PRESENT_BIT) #define _PAGE_TRANSIENT (1U << _PAGE_TRANSIENT_BIT) +#define _PAGE_P2M (1U << _PAGE_P2M_BIT) #define PAGE_AI_MASK(x) (((x) >> _PAGE_AI_BIT) & 0x7U) #define PAGE_XN_MASK(x) (((x) >> _PAGE_XN_BIT) & 0x3U) #define PAGE_AP_MASK(x) (((x) >> _PAGE_AP_BIT) & 0x3U) #define PAGE_RO_MASK(x) (((x) >> _PAGE_AP_BIT) & 0x2U) #define PAGE_TRANSIENT_MASK(x) (((x) >> _PAGE_TRANSIENT_BIT) & 0x1U) +#define PAGE_P2M_MASK(x) (((x) >> _PAGE_P2M_BIT) & 0x1U) #endif /* CONFIG_HAS_MPU */ /* diff --git a/xen/arch/arm/mpu/mm.c b/xen/arch/arm/mpu/mm.c index 8cdb7d7219..c6b287b3aa 100644 --- a/xen/arch/arm/mpu/mm.c +++ b/xen/arch/arm/mpu/mm.c @@ -580,7 +580,11 @@ int xen_mpumap_update(paddr_t base, paddr_t limit, unsigned int flags) { int rc; - if ( flags_has_rwx(flags) ) + /* + * Mappings should not be both Writeable and Executable, unless + * it is for guest P2M mapping. + */ + if ( flags_has_rwx(flags) && !PAGE_P2M_MASK(flags) ) { region_printk("Mappings should not be both Writeable and Executable\n"); return -EINVAL; diff --git a/xen/arch/arm/mpu/p2m.c b/xen/arch/arm/mpu/p2m.c index d403479229..e21b76813d 100644 --- a/xen/arch/arm/mpu/p2m.c +++ b/xen/arch/arm/mpu/p2m.c @@ -411,6 +411,67 @@ mfn_t p2m_get_entry(struct p2m_domain *p2m, gfn_t gfn, return p2m_get_mpu_region(p2m, gfn, 1, t, valid); } +static unsigned int build_p2m_memory_region_flags(pr_t *p2m_region) +{ + return (p2m_region->prlar.reg.ai << _PAGE_AI_BIT | + p2m_region->prbar.reg.ap << _PAGE_AP_BIT | + p2m_region->prbar.reg.xn << _PAGE_XN_BIT); +} + +static int p2m_xenmpu_update(struct p2m_domain *p2m, bool online) +{ + pr_t *p2m_table; + unsigned int i = 0; + unsigned int flags = online ? (_PAGE_PRESENT | _PAGE_P2M) : 0; + + p2m_table = (pr_t *)page_to_virt(p2m->root); + if ( !p2m_table ) + return -EINVAL; + + for ( ; i < p2m->nr_regions; i++ ) + { + paddr_t base = pr_get_base(&p2m_table[i]); + paddr_t limit = pr_get_limit(&p2m_table[i]); + unsigned int region_flags; + + region_flags = build_p2m_memory_region_flags(&p2m_table[i]) | flags; + if ( xen_mpumap_update(base, limit + 1, region_flags) ) + { + printk(XENLOG_G_ERR "p2m: unable to update MPU memory mapping with P2M region 0x%"PRIpaddr"-0x%"PRIpaddr"\n", + base, limit + 1); + return -EINVAL; + } + } + + return 0; +} + +/* p2m_save_state and p2m_restore_state work in pair. */ +void p2m_save_state(struct vcpu *p) +{ + struct p2m_domain *p2m = p2m_get_hostp2m(p->domain); + + p->arch.sctlr = READ_SYSREG(SCTLR_EL1); + + if ( p2m_xenmpu_update(p2m, false) ) + panic("Failed to offline P2M MPU memory mapping\n"); +} + +void p2m_restore_state(struct vcpu *n) +{ + struct p2m_domain *p2m = p2m_get_hostp2m(n->domain); + uint8_t *last_vcpu_ran = &p2m->last_vcpu_ran[smp_processor_id()]; + + WRITE_SYSREG(n->arch.sctlr, SCTLR_EL1); + WRITE_SYSREG(n->arch.hcr_el2, HCR_EL2); + + WRITE_SYSREG64(p2m->vsctlr, VSCTLR_EL2); + if ( p2m_xenmpu_update(p2m, true) ) + panic("Failed to online P2M MPU memory mapping\n"); + + *last_vcpu_ran = n->vcpu_id; +} + /* * Local variables: * mode: C -- 2.25.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 26 03:40:45 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 03:40:45 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555097.866872 (Exim 4.92) (envelope-from ) id 1qDd5p-0004RK-IU; Mon, 26 Jun 2023 03:40:45 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555097.866872; Mon, 26 Jun 2023 03:40:45 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd5o-0004Me-Jy; Mon, 26 Jun 2023 03:40:44 +0000 Received: by outflank-mailman (input) for mailman id 555097; Mon, 26 Jun 2023 03:40:42 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd17-0000HH-Dt for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 03:35:53 +0000 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by se1-gles-flk1.inumbo.com (Halon) with ESMTP id 8b931d09-13d2-11ee-8611-37d641c3527e; Mon, 26 Jun 2023 05:35:50 +0200 (CEST) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id A3A7F2F4; Sun, 25 Jun 2023 20:36:33 -0700 (PDT) Received: from a011292.shanghai.arm.com (a011292.shanghai.arm.com [10.169.190.94]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id 082083F64C; Sun, 25 Jun 2023 20:35:46 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 8b931d09-13d2-11ee-8611-37d641c3527e From: Penny Zheng To: xen-devel@lists.xenproject.org Cc: Penny Zheng , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk , Penny Zheng , Wei Chen Subject: [PATCH v3 14/52] xen/mmu: move MMU-specific setup_mm to mmu/setup.c Date: Mon, 26 Jun 2023 11:34:05 +0800 Message-Id: <20230626033443.2943270-15-Penny.Zheng@arm.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230626033443.2943270-1-Penny.Zheng@arm.com> References: <20230626033443.2943270-1-Penny.Zheng@arm.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit setup_mm is used for Xen to setup memory management subsystem at boot time, like boot allocator, direct-mapping, xenheap initialization, frametable and static memory pages. We could inherit some components seamlessly in later MPU system like boot allocator, whilst we need to implement some components differently in MPU, like xenheap, etc. There are some components that is specific to MMU only, like direct-mapping. In the commit, we move MMU-specific components into mmu/setup.c, in preparation of implementing MPU version of setup_mm later in future commit. Signed-off-by: Penny Zheng Signed-off-by: Wei Chen --- v3: - adapt to the introduction of new directories: mmu/ --- xen/arch/arm/Makefile | 1 + xen/arch/arm/include/asm/setup.h | 5 + xen/arch/arm/mmu/setup.c | 352 +++++++++++++++++++++++++++++++ xen/arch/arm/setup.c | 326 +--------------------------- 4 files changed, 362 insertions(+), 322 deletions(-) create mode 100644 xen/arch/arm/mmu/setup.c diff --git a/xen/arch/arm/Makefile b/xen/arch/arm/Makefile index f825d95e29..c1babdba6a 100644 --- a/xen/arch/arm/Makefile +++ b/xen/arch/arm/Makefile @@ -38,6 +38,7 @@ obj-$(CONFIG_LIVEPATCH) += livepatch.o obj-y += mem_access.o ifeq ($(CONFIG_HAS_MMU), y) obj-y += mmu/mm.o +obj-y += mmu/setup.o endif obj-y += mm.o obj-y += monitor.o diff --git a/xen/arch/arm/include/asm/setup.h b/xen/arch/arm/include/asm/setup.h index f0f64d228c..0922549631 100644 --- a/xen/arch/arm/include/asm/setup.h +++ b/xen/arch/arm/include/asm/setup.h @@ -156,6 +156,11 @@ struct bootcmdline *boot_cmdline_find_by_kind(bootmodule_kind kind); struct bootcmdline * boot_cmdline_find_by_name(const char *name); const char *boot_module_kind_as_string(bootmodule_kind kind); +extern void init_pdx(void); +extern void init_staticmem_pages(void); +extern void populate_boot_allocator(void); +extern void setup_mm(void); + extern uint32_t hyp_traps_vector[]; void init_traps(void); diff --git a/xen/arch/arm/mmu/setup.c b/xen/arch/arm/mmu/setup.c new file mode 100644 index 0000000000..f4de0cb29d --- /dev/null +++ b/xen/arch/arm/mmu/setup.c @@ -0,0 +1,352 @@ +/* SPDX-License-Identifier: GPL-2.0 */ +/* + * xen/arch/arm/mmu/setup.c + * + * Early bringup code for an ARMv7-A with virt extensions. + * + * Tim Deegan + * Copyright (c) 2011 Citrix Systems. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#ifdef CONFIG_ARM_32 +static unsigned long opt_xenheap_megabytes __initdata; +integer_param("xenheap_megabytes", opt_xenheap_megabytes); + +/* + * Returns the end address of the highest region in the range s..e + * with required size and alignment that does not conflict with the + * modules from first_mod to nr_modules. + * + * For non-recursive callers first_mod should normally be 0 (all + * modules and Xen itself) or 1 (all modules but not Xen). + */ +static paddr_t __init consider_modules(paddr_t s, paddr_t e, + uint32_t size, paddr_t align, + int first_mod) +{ + const struct bootmodules *mi = &bootinfo.modules; + int i; + int nr; + + s = (s+align-1) & ~(align-1); + e = e & ~(align-1); + + if ( s > e || e - s < size ) + return 0; + + /* First check the boot modules */ + for ( i = first_mod; i < mi->nr_mods; i++ ) + { + paddr_t mod_s = mi->module[i].start; + paddr_t mod_e = mod_s + mi->module[i].size; + + if ( s < mod_e && mod_s < e ) + { + mod_e = consider_modules(mod_e, e, size, align, i+1); + if ( mod_e ) + return mod_e; + + return consider_modules(s, mod_s, size, align, i+1); + } + } + + /* Now check any fdt reserved areas. */ + + nr = fdt_num_mem_rsv(device_tree_flattened); + + for ( ; i < mi->nr_mods + nr; i++ ) + { + paddr_t mod_s, mod_e; + + if ( fdt_get_mem_rsv_paddr(device_tree_flattened, + i - mi->nr_mods, + &mod_s, &mod_e ) < 0 ) + /* If we can't read it, pretend it doesn't exist... */ + continue; + + /* fdt_get_mem_rsv_paddr returns length */ + mod_e += mod_s; + + if ( s < mod_e && mod_s < e ) + { + mod_e = consider_modules(mod_e, e, size, align, i+1); + if ( mod_e ) + return mod_e; + + return consider_modules(s, mod_s, size, align, i+1); + } + } + + /* + * i is the current bootmodule we are evaluating, across all + * possible kinds of bootmodules. + * + * When retrieving the corresponding reserved-memory addresses, we + * need to index the bootinfo.reserved_mem bank starting from 0, and + * only counting the reserved-memory modules. Hence, we need to use + * i - nr. + */ + nr += mi->nr_mods; + for ( ; i - nr < bootinfo.reserved_mem.nr_banks; i++ ) + { + paddr_t r_s = bootinfo.reserved_mem.bank[i - nr].start; + paddr_t r_e = r_s + bootinfo.reserved_mem.bank[i - nr].size; + + if ( s < r_e && r_s < e ) + { + r_e = consider_modules(r_e, e, size, align, i + 1); + if ( r_e ) + return r_e; + + return consider_modules(s, r_s, size, align, i + 1); + } + } + return e; +} + +/* + * Find a contiguous region that fits in the static heap region with + * required size and alignment, and return the end address of the region + * if found otherwise 0. + */ +static paddr_t __init fit_xenheap_in_static_heap(uint32_t size, paddr_t align) +{ + unsigned int i; + paddr_t end = 0, aligned_start, aligned_end; + paddr_t bank_start, bank_size, bank_end; + + for ( i = 0 ; i < bootinfo.reserved_mem.nr_banks; i++ ) + { + if ( bootinfo.reserved_mem.bank[i].type != MEMBANK_STATIC_HEAP ) + continue; + + bank_start = bootinfo.reserved_mem.bank[i].start; + bank_size = bootinfo.reserved_mem.bank[i].size; + bank_end = bank_start + bank_size; + + if ( bank_size < size ) + continue; + + aligned_end = bank_end & ~(align - 1); + aligned_start = (aligned_end - size) & ~(align - 1); + + if ( aligned_start > bank_start ) + /* + * Allocate the xenheap as high as possible to keep low-memory + * available (assuming the admin supplied region below 4GB) + * for other use (e.g. domain memory allocation). + */ + end = max(end, aligned_end); + } + + return end; +} + +void __init setup_mm(void) +{ + paddr_t ram_start, ram_end, ram_size, e, bank_start, bank_end, bank_size; + paddr_t static_heap_end = 0, static_heap_size = 0; + unsigned long heap_pages, xenheap_pages, domheap_pages; + unsigned int i; + const uint32_t ctr = READ_CP32(CTR); + + if ( !bootinfo.mem.nr_banks ) + panic("No memory bank\n"); + + /* We only supports instruction caches implementing the IVIPT extension. */ + if ( ((ctr >> CTR_L1IP_SHIFT) & CTR_L1IP_MASK) == ICACHE_POLICY_AIVIVT ) + panic("AIVIVT instruction cache not supported\n"); + + init_pdx(); + + ram_start = bootinfo.mem.bank[0].start; + ram_size = bootinfo.mem.bank[0].size; + ram_end = ram_start + ram_size; + + for ( i = 1; i < bootinfo.mem.nr_banks; i++ ) + { + bank_start = bootinfo.mem.bank[i].start; + bank_size = bootinfo.mem.bank[i].size; + bank_end = bank_start + bank_size; + + ram_size = ram_size + bank_size; + ram_start = min(ram_start,bank_start); + ram_end = max(ram_end,bank_end); + } + + total_pages = ram_size >> PAGE_SHIFT; + + if ( bootinfo.static_heap ) + { + for ( i = 0 ; i < bootinfo.reserved_mem.nr_banks; i++ ) + { + if ( bootinfo.reserved_mem.bank[i].type != MEMBANK_STATIC_HEAP ) + continue; + + bank_start = bootinfo.reserved_mem.bank[i].start; + bank_size = bootinfo.reserved_mem.bank[i].size; + bank_end = bank_start + bank_size; + + static_heap_size += bank_size; + static_heap_end = max(static_heap_end, bank_end); + } + + heap_pages = static_heap_size >> PAGE_SHIFT; + } + else + heap_pages = total_pages; + + /* + * If the user has not requested otherwise via the command line + * then locate the xenheap using these constraints: + * + * - must be contiguous + * - must be 32 MiB aligned + * - must not include Xen itself or the boot modules + * - must be at most 1GB or 1/32 the total RAM in the system (or static + heap if enabled) if less + * - must be at least 32M + * + * We try to allocate the largest xenheap possible within these + * constraints. + */ + if ( opt_xenheap_megabytes ) + xenheap_pages = opt_xenheap_megabytes << (20-PAGE_SHIFT); + else + { + xenheap_pages = (heap_pages/32 + 0x1fffUL) & ~0x1fffUL; + xenheap_pages = max(xenheap_pages, 32UL<<(20-PAGE_SHIFT)); + xenheap_pages = min(xenheap_pages, 1UL<<(30-PAGE_SHIFT)); + } + + do + { + e = bootinfo.static_heap ? + fit_xenheap_in_static_heap(pfn_to_paddr(xenheap_pages), MB(32)) : + consider_modules(ram_start, ram_end, + pfn_to_paddr(xenheap_pages), + 32<<20, 0); + if ( e ) + break; + + xenheap_pages >>= 1; + } while ( !opt_xenheap_megabytes && xenheap_pages > 32<<(20-PAGE_SHIFT) ); + + if ( ! e ) + panic("Not enough space for xenheap\n"); + + domheap_pages = heap_pages - xenheap_pages; + + printk("Xen heap: %"PRIpaddr"-%"PRIpaddr" (%lu pages%s)\n", + e - (pfn_to_paddr(xenheap_pages)), e, xenheap_pages, + opt_xenheap_megabytes ? ", from command-line" : ""); + printk("Dom heap: %lu pages\n", domheap_pages); + + /* + * We need some memory to allocate the page-tables used for the + * directmap mappings. So populate the boot allocator first. + * + * This requires us to set directmap_mfn_{start, end} first so the + * direct-mapped Xenheap region can be avoided. + */ + directmap_mfn_start = _mfn((e >> PAGE_SHIFT) - xenheap_pages); + directmap_mfn_end = mfn_add(directmap_mfn_start, xenheap_pages); + + populate_boot_allocator(); + + setup_directmap_mappings(mfn_x(directmap_mfn_start), xenheap_pages); + + /* Frame table covers all of RAM region, including holes */ + setup_frametable_mappings(ram_start, ram_end); + max_page = PFN_DOWN(ram_end); + + /* + * The allocators may need to use map_domain_page() (such as for + * scrubbing pages). So we need to prepare the domheap area first. + */ + if ( !init_domheap_mappings(smp_processor_id()) ) + panic("CPU%u: Unable to prepare the domheap page-tables\n", + smp_processor_id()); + + /* Add xenheap memory that was not already added to the boot allocator. */ + init_xenheap_pages(mfn_to_maddr(directmap_mfn_start), + mfn_to_maddr(directmap_mfn_end)); + + init_staticmem_pages(); +} +#else /* CONFIG_ARM_64 */ +void __init setup_mm(void) +{ + const struct meminfo *banks = &bootinfo.mem; + paddr_t ram_start = INVALID_PADDR; + paddr_t ram_end = 0; + paddr_t ram_size = 0; + unsigned int i; + + init_pdx(); + + /* + * We need some memory to allocate the page-tables used for the directmap + * mappings. But some regions may contain memory already allocated + * for other uses (e.g. modules, reserved-memory...). + * + * For simplicity, add all the free regions in the boot allocator. + */ + populate_boot_allocator(); + + total_pages = 0; + + for ( i = 0; i < banks->nr_banks; i++ ) + { + const struct membank *bank = &banks->bank[i]; + paddr_t bank_end = bank->start + bank->size; + + ram_size = ram_size + bank->size; + ram_start = min(ram_start, bank->start); + ram_end = max(ram_end, bank_end); + + setup_directmap_mappings(PFN_DOWN(bank->start), + PFN_DOWN(bank->size)); + } + + total_pages += ram_size >> PAGE_SHIFT; + + directmap_virt_end = XENHEAP_VIRT_START + ram_end - ram_start; + directmap_mfn_start = maddr_to_mfn(ram_start); + directmap_mfn_end = maddr_to_mfn(ram_end); + + setup_frametable_mappings(ram_start, ram_end); + max_page = PFN_DOWN(ram_end); + + init_staticmem_pages(); +} +#endif + +/* + * Local variables: + * mode: C + * c-file-style: "BSD" + * c-basic-offset: 4 + * indent-tabs-mode: nil + * End: + */ diff --git a/xen/arch/arm/setup.c b/xen/arch/arm/setup.c index bbf72b69aa..50259552a0 100644 --- a/xen/arch/arm/setup.c +++ b/xen/arch/arm/setup.c @@ -2,7 +2,7 @@ /* * xen/arch/arm/setup.c * - * Early bringup code for an ARMv7-A with virt extensions. + * Early bringup code for an ARMv7-A/ARM64v8R with virt extensions. * * Tim Deegan * Copyright (c) 2011 Citrix Systems. @@ -57,11 +57,6 @@ struct cpuinfo_arm __read_mostly system_cpuinfo; bool __read_mostly acpi_disabled; #endif -#ifdef CONFIG_ARM_32 -static unsigned long opt_xenheap_megabytes __initdata; -integer_param("xenheap_megabytes", opt_xenheap_megabytes); -#endif - domid_t __read_mostly max_init_domid; static __used void init_done(void) @@ -546,138 +541,6 @@ static void * __init relocate_fdt(paddr_t dtb_paddr, size_t dtb_size) return fdt; } -#ifdef CONFIG_ARM_32 -/* - * Returns the end address of the highest region in the range s..e - * with required size and alignment that does not conflict with the - * modules from first_mod to nr_modules. - * - * For non-recursive callers first_mod should normally be 0 (all - * modules and Xen itself) or 1 (all modules but not Xen). - */ -static paddr_t __init consider_modules(paddr_t s, paddr_t e, - uint32_t size, paddr_t align, - int first_mod) -{ - const struct bootmodules *mi = &bootinfo.modules; - int i; - int nr; - - s = (s+align-1) & ~(align-1); - e = e & ~(align-1); - - if ( s > e || e - s < size ) - return 0; - - /* First check the boot modules */ - for ( i = first_mod; i < mi->nr_mods; i++ ) - { - paddr_t mod_s = mi->module[i].start; - paddr_t mod_e = mod_s + mi->module[i].size; - - if ( s < mod_e && mod_s < e ) - { - mod_e = consider_modules(mod_e, e, size, align, i+1); - if ( mod_e ) - return mod_e; - - return consider_modules(s, mod_s, size, align, i+1); - } - } - - /* Now check any fdt reserved areas. */ - - nr = fdt_num_mem_rsv(device_tree_flattened); - - for ( ; i < mi->nr_mods + nr; i++ ) - { - paddr_t mod_s, mod_e; - - if ( fdt_get_mem_rsv_paddr(device_tree_flattened, - i - mi->nr_mods, - &mod_s, &mod_e ) < 0 ) - /* If we can't read it, pretend it doesn't exist... */ - continue; - - /* fdt_get_mem_rsv_paddr returns length */ - mod_e += mod_s; - - if ( s < mod_e && mod_s < e ) - { - mod_e = consider_modules(mod_e, e, size, align, i+1); - if ( mod_e ) - return mod_e; - - return consider_modules(s, mod_s, size, align, i+1); - } - } - - /* - * i is the current bootmodule we are evaluating, across all - * possible kinds of bootmodules. - * - * When retrieving the corresponding reserved-memory addresses, we - * need to index the bootinfo.reserved_mem bank starting from 0, and - * only counting the reserved-memory modules. Hence, we need to use - * i - nr. - */ - nr += mi->nr_mods; - for ( ; i - nr < bootinfo.reserved_mem.nr_banks; i++ ) - { - paddr_t r_s = bootinfo.reserved_mem.bank[i - nr].start; - paddr_t r_e = r_s + bootinfo.reserved_mem.bank[i - nr].size; - - if ( s < r_e && r_s < e ) - { - r_e = consider_modules(r_e, e, size, align, i + 1); - if ( r_e ) - return r_e; - - return consider_modules(s, r_s, size, align, i + 1); - } - } - return e; -} - -/* - * Find a contiguous region that fits in the static heap region with - * required size and alignment, and return the end address of the region - * if found otherwise 0. - */ -static paddr_t __init fit_xenheap_in_static_heap(uint32_t size, paddr_t align) -{ - unsigned int i; - paddr_t end = 0, aligned_start, aligned_end; - paddr_t bank_start, bank_size, bank_end; - - for ( i = 0 ; i < bootinfo.reserved_mem.nr_banks; i++ ) - { - if ( bootinfo.reserved_mem.bank[i].type != MEMBANK_STATIC_HEAP ) - continue; - - bank_start = bootinfo.reserved_mem.bank[i].start; - bank_size = bootinfo.reserved_mem.bank[i].size; - bank_end = bank_start + bank_size; - - if ( bank_size < size ) - continue; - - aligned_end = bank_end & ~(align - 1); - aligned_start = (aligned_end - size) & ~(align - 1); - - if ( aligned_start > bank_start ) - /* - * Allocate the xenheap as high as possible to keep low-memory - * available (assuming the admin supplied region below 4GB) - * for other use (e.g. domain memory allocation). - */ - end = max(end, aligned_end); - } - - return end; -} -#endif - /* * Return the end of the non-module region starting at s. In other * words return s the start of the next modules after s. @@ -712,7 +575,7 @@ static paddr_t __init next_module(paddr_t s, paddr_t *end) return lowest; } -static void __init init_pdx(void) +void __init init_pdx(void) { paddr_t bank_start, bank_size, bank_end; @@ -757,7 +620,7 @@ static void __init init_pdx(void) } /* Static memory initialization */ -static void __init init_staticmem_pages(void) +void __init init_staticmem_pages(void) { #ifdef CONFIG_STATIC_MEMORY unsigned int bank; @@ -791,7 +654,7 @@ static void __init init_staticmem_pages(void) * allocator with the corresponding regions only, but with Xenheap excluded * on arm32. */ -static void __init populate_boot_allocator(void) +void __init populate_boot_allocator(void) { unsigned int i; const struct meminfo *banks = &bootinfo.mem; @@ -860,187 +723,6 @@ static void __init populate_boot_allocator(void) } } -#ifdef CONFIG_ARM_32 -static void __init setup_mm(void) -{ - paddr_t ram_start, ram_end, ram_size, e, bank_start, bank_end, bank_size; - paddr_t static_heap_end = 0, static_heap_size = 0; - unsigned long heap_pages, xenheap_pages, domheap_pages; - unsigned int i; - const uint32_t ctr = READ_CP32(CTR); - - if ( !bootinfo.mem.nr_banks ) - panic("No memory bank\n"); - - /* We only supports instruction caches implementing the IVIPT extension. */ - if ( ((ctr >> CTR_L1IP_SHIFT) & CTR_L1IP_MASK) == ICACHE_POLICY_AIVIVT ) - panic("AIVIVT instruction cache not supported\n"); - - init_pdx(); - - ram_start = bootinfo.mem.bank[0].start; - ram_size = bootinfo.mem.bank[0].size; - ram_end = ram_start + ram_size; - - for ( i = 1; i < bootinfo.mem.nr_banks; i++ ) - { - bank_start = bootinfo.mem.bank[i].start; - bank_size = bootinfo.mem.bank[i].size; - bank_end = bank_start + bank_size; - - ram_size = ram_size + bank_size; - ram_start = min(ram_start,bank_start); - ram_end = max(ram_end,bank_end); - } - - total_pages = ram_size >> PAGE_SHIFT; - - if ( bootinfo.static_heap ) - { - for ( i = 0 ; i < bootinfo.reserved_mem.nr_banks; i++ ) - { - if ( bootinfo.reserved_mem.bank[i].type != MEMBANK_STATIC_HEAP ) - continue; - - bank_start = bootinfo.reserved_mem.bank[i].start; - bank_size = bootinfo.reserved_mem.bank[i].size; - bank_end = bank_start + bank_size; - - static_heap_size += bank_size; - static_heap_end = max(static_heap_end, bank_end); - } - - heap_pages = static_heap_size >> PAGE_SHIFT; - } - else - heap_pages = total_pages; - - /* - * If the user has not requested otherwise via the command line - * then locate the xenheap using these constraints: - * - * - must be contiguous - * - must be 32 MiB aligned - * - must not include Xen itself or the boot modules - * - must be at most 1GB or 1/32 the total RAM in the system (or static - heap if enabled) if less - * - must be at least 32M - * - * We try to allocate the largest xenheap possible within these - * constraints. - */ - if ( opt_xenheap_megabytes ) - xenheap_pages = opt_xenheap_megabytes << (20-PAGE_SHIFT); - else - { - xenheap_pages = (heap_pages/32 + 0x1fffUL) & ~0x1fffUL; - xenheap_pages = max(xenheap_pages, 32UL<<(20-PAGE_SHIFT)); - xenheap_pages = min(xenheap_pages, 1UL<<(30-PAGE_SHIFT)); - } - - do - { - e = bootinfo.static_heap ? - fit_xenheap_in_static_heap(pfn_to_paddr(xenheap_pages), MB(32)) : - consider_modules(ram_start, ram_end, - pfn_to_paddr(xenheap_pages), - 32<<20, 0); - if ( e ) - break; - - xenheap_pages >>= 1; - } while ( !opt_xenheap_megabytes && xenheap_pages > 32<<(20-PAGE_SHIFT) ); - - if ( ! e ) - panic("Not enough space for xenheap\n"); - - domheap_pages = heap_pages - xenheap_pages; - - printk("Xen heap: %"PRIpaddr"-%"PRIpaddr" (%lu pages%s)\n", - e - (pfn_to_paddr(xenheap_pages)), e, xenheap_pages, - opt_xenheap_megabytes ? ", from command-line" : ""); - printk("Dom heap: %lu pages\n", domheap_pages); - - /* - * We need some memory to allocate the page-tables used for the - * directmap mappings. So populate the boot allocator first. - * - * This requires us to set directmap_mfn_{start, end} first so the - * direct-mapped Xenheap region can be avoided. - */ - directmap_mfn_start = _mfn((e >> PAGE_SHIFT) - xenheap_pages); - directmap_mfn_end = mfn_add(directmap_mfn_start, xenheap_pages); - - populate_boot_allocator(); - - setup_directmap_mappings(mfn_x(directmap_mfn_start), xenheap_pages); - - /* Frame table covers all of RAM region, including holes */ - setup_frametable_mappings(ram_start, ram_end); - max_page = PFN_DOWN(ram_end); - - /* - * The allocators may need to use map_domain_page() (such as for - * scrubbing pages). So we need to prepare the domheap area first. - */ - if ( !init_domheap_mappings(smp_processor_id()) ) - panic("CPU%u: Unable to prepare the domheap page-tables\n", - smp_processor_id()); - - /* Add xenheap memory that was not already added to the boot allocator. */ - init_xenheap_pages(mfn_to_maddr(directmap_mfn_start), - mfn_to_maddr(directmap_mfn_end)); - - init_staticmem_pages(); -} -#else /* CONFIG_ARM_64 */ -static void __init setup_mm(void) -{ - const struct meminfo *banks = &bootinfo.mem; - paddr_t ram_start = INVALID_PADDR; - paddr_t ram_end = 0; - paddr_t ram_size = 0; - unsigned int i; - - init_pdx(); - - /* - * We need some memory to allocate the page-tables used for the directmap - * mappings. But some regions may contain memory already allocated - * for other uses (e.g. modules, reserved-memory...). - * - * For simplicity, add all the free regions in the boot allocator. - */ - populate_boot_allocator(); - - total_pages = 0; - - for ( i = 0; i < banks->nr_banks; i++ ) - { - const struct membank *bank = &banks->bank[i]; - paddr_t bank_end = bank->start + bank->size; - - ram_size = ram_size + bank->size; - ram_start = min(ram_start, bank->start); - ram_end = max(ram_end, bank_end); - - setup_directmap_mappings(PFN_DOWN(bank->start), - PFN_DOWN(bank->size)); - } - - total_pages += ram_size >> PAGE_SHIFT; - - directmap_virt_end = XENHEAP_VIRT_START + ram_end - ram_start; - directmap_mfn_start = maddr_to_mfn(ram_start); - directmap_mfn_end = maddr_to_mfn(ram_end); - - setup_frametable_mappings(ram_start, ram_end); - max_page = PFN_DOWN(ram_end); - - init_staticmem_pages(); -} -#endif - static bool __init is_dom0less_mode(void) { struct bootmodules *mods = &bootinfo.modules; -- 2.25.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 26 03:40:48 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 03:40:48 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555101.866885 (Exim 4.92) (envelope-from ) id 1qDd5s-0005J1-EM; Mon, 26 Jun 2023 03:40:48 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555101.866885; Mon, 26 Jun 2023 03:40:48 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd5r-0005Cr-OS; Mon, 26 Jun 2023 03:40:47 +0000 Received: by outflank-mailman (input) for mailman id 555101; Mon, 26 Jun 2023 03:40:44 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd1z-0000HH-Su for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 03:36:47 +0000 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by se1-gles-flk1.inumbo.com (Halon) with ESMTP id acb2b9d8-13d2-11ee-8611-37d641c3527e; Mon, 26 Jun 2023 05:36:45 +0200 (CEST) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 5FEB22F4; Sun, 25 Jun 2023 20:37:29 -0700 (PDT) Received: from a011292.shanghai.arm.com (a011292.shanghai.arm.com [10.169.190.94]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id B83B73F64C; Sun, 25 Jun 2023 20:36:42 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: acb2b9d8-13d2-11ee-8611-37d641c3527e From: Penny Zheng To: xen-devel@lists.xenproject.org Cc: Penny Zheng , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk , Penny Zheng , Wei Chen Subject: [PATCH v3 31/52] xen/mpu: make early_fdt_map support in MPU systems Date: Mon, 26 Jun 2023 11:34:22 +0800 Message-Id: <20230626033443.2943270-32-Penny.Zheng@arm.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230626033443.2943270-1-Penny.Zheng@arm.com> References: <20230626033443.2943270-1-Penny.Zheng@arm.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit In MPU system, MPU memory region is always mapped PAGE_ALIGN, so in order to not access unexpected memory area, dtb section in xen.lds.S should be made page-aligned too. We add . = ALIGN(PAGE_SIZE); in the head of dtb section to make it happen. In this commit, we map early FDT with a transient MPU memory region, as it will be relocated into heap and unmapped at the end of boot. Signed-off-by: Penny Zheng Signed-off-by: Wei Chen --- v3: - map the first 2MB. Check the size and then re-map with an extra 2MB if needed --- xen/arch/arm/include/asm/arm64/mpu.h | 3 ++- xen/arch/arm/include/asm/page.h | 5 +++++ xen/arch/arm/mm.c | 26 ++++++++++++++++++++------ xen/arch/arm/mpu/mm.c | 1 + xen/arch/arm/xen.lds.S | 5 ++++- 5 files changed, 32 insertions(+), 8 deletions(-) diff --git a/xen/arch/arm/include/asm/arm64/mpu.h b/xen/arch/arm/include/asm/arm64/mpu.h index a6b07bab02..715ea69884 100644 --- a/xen/arch/arm/include/asm/arm64/mpu.h +++ b/xen/arch/arm/include/asm/arm64/mpu.h @@ -72,7 +72,8 @@ typedef union { unsigned long ns:1; /* Not-Secure */ unsigned long res:1; /* Reserved 0 by hardware */ unsigned long limit:42; /* Limit Address */ - unsigned long pad:16; + unsigned long pad:15; + unsigned long tran:1; /* Transient region */ } reg; uint64_t bits; } prlar_t; diff --git a/xen/arch/arm/include/asm/page.h b/xen/arch/arm/include/asm/page.h index 85ecd5e4de..a434e2205a 100644 --- a/xen/arch/arm/include/asm/page.h +++ b/xen/arch/arm/include/asm/page.h @@ -97,19 +97,24 @@ * [3:4] Execute Never * [5:6] Access Permission * [7] Region Present + * [8] Transient Region, e.g. MPU memory region is temproraily + * mapped for a short time */ #define _PAGE_AI_BIT 0 #define _PAGE_XN_BIT 3 #define _PAGE_AP_BIT 5 #define _PAGE_PRESENT_BIT 7 +#define _PAGE_TRANSIENT_BIT 8 #define _PAGE_AI (7U << _PAGE_AI_BIT) #define _PAGE_XN (2U << _PAGE_XN_BIT) #define _PAGE_RO (2U << _PAGE_AP_BIT) #define _PAGE_PRESENT (1U << _PAGE_PRESENT_BIT) +#define _PAGE_TRANSIENT (1U << _PAGE_TRANSIENT_BIT) #define PAGE_AI_MASK(x) (((x) >> _PAGE_AI_BIT) & 0x7U) #define PAGE_XN_MASK(x) (((x) >> _PAGE_XN_BIT) & 0x3U) #define PAGE_AP_MASK(x) (((x) >> _PAGE_AP_BIT) & 0x3U) #define PAGE_RO_MASK(x) (((x) >> _PAGE_AP_BIT) & 0x2U) +#define PAGE_TRANSIENT_MASK(x) (((x) >> _PAGE_TRANSIENT_BIT) & 0x1U) #endif /* CONFIG_HAS_MPU */ /* diff --git a/xen/arch/arm/mm.c b/xen/arch/arm/mm.c index d35e7e280f..8625066256 100644 --- a/xen/arch/arm/mm.c +++ b/xen/arch/arm/mm.c @@ -61,8 +61,17 @@ void flush_page_to_ram(unsigned long mfn, bool sync_icache) void * __init early_fdt_map(paddr_t fdt_paddr) { +#ifndef CONFIG_HAS_MPU /* We are using 2MB superpage for mapping the FDT */ paddr_t base_paddr = fdt_paddr & SECOND_MASK; + unsigned int flags = PAGE_HYPERVISOR_RO | _PAGE_BLOCK; + unsigned long base_virt = BOOT_FDT_VIRT_START; +#else + /* MPU region must be PAGE aligned */ + paddr_t base_paddr = fdt_paddr & PAGE_MASK; + unsigned int flags = PAGE_HYPERVISOR_RO | _PAGE_TRANSIENT; + unsigned long base_virt = ~0UL; +#endif paddr_t offset; void *fdt_virt; uint32_t size; @@ -79,18 +88,24 @@ void * __init early_fdt_map(paddr_t fdt_paddr) if ( !fdt_paddr || fdt_paddr % MIN_FDT_ALIGN ) return NULL; +#ifndef CONFIG_HAS_MPU /* The FDT is mapped using 2MB superpage */ BUILD_BUG_ON(BOOT_FDT_VIRT_START % SZ_2M); +#endif - rc = map_pages_to_xen(BOOT_FDT_VIRT_START, maddr_to_mfn(base_paddr), - SZ_2M >> PAGE_SHIFT, - PAGE_HYPERVISOR_RO | _PAGE_BLOCK); + rc = map_pages_to_xen(base_virt, maddr_to_mfn(base_paddr), + SZ_2M >> PAGE_SHIFT, flags); if ( rc ) panic("Unable to map the device-tree.\n"); +#ifndef CONFIG_HAS_MPU offset = fdt_paddr % SECOND_SIZE; fdt_virt = (void *)BOOT_FDT_VIRT_START + offset; +#else + offset = fdt_paddr % PAGE_SIZE; + fdt_virt = (void *)fdt_paddr; +#endif if ( fdt_magic(fdt_virt) != FDT_MAGIC ) return NULL; @@ -101,10 +116,9 @@ void * __init early_fdt_map(paddr_t fdt_paddr) if ( (offset + size) > SZ_2M ) { - rc = map_pages_to_xen(BOOT_FDT_VIRT_START + SZ_2M, + rc = map_pages_to_xen(base_virt + SZ_2M, maddr_to_mfn(base_paddr + SZ_2M), - SZ_2M >> PAGE_SHIFT, - PAGE_HYPERVISOR_RO | _PAGE_BLOCK); + SZ_2M >> PAGE_SHIFT, flags); if ( rc ) panic("Unable to map the device-tree\n"); } diff --git a/xen/arch/arm/mpu/mm.c b/xen/arch/arm/mpu/mm.c index 14a1309ca1..f4ce19d36a 100644 --- a/xen/arch/arm/mpu/mm.c +++ b/xen/arch/arm/mpu/mm.c @@ -448,6 +448,7 @@ static int xen_mpumap_update_entry(paddr_t base, paddr_t limit, /* Set permission */ xen_mpumap[idx].prbar.reg.ap = PAGE_AP_MASK(flags); xen_mpumap[idx].prbar.reg.xn = PAGE_XN_MASK(flags); + xen_mpumap[idx].prlar.reg.tran = PAGE_TRANSIENT_MASK(flags); write_protection_region((const pr_t*)(&xen_mpumap[idx]), idx); } diff --git a/xen/arch/arm/xen.lds.S b/xen/arch/arm/xen.lds.S index 4f7daa7dca..f2715d7cb7 100644 --- a/xen/arch/arm/xen.lds.S +++ b/xen/arch/arm/xen.lds.S @@ -216,7 +216,10 @@ SECTIONS _end = . ; /* Section for the device tree blob (if any). */ - .dtb : { *(.dtb) } :text + .dtb : { + . = ALIGN(PAGE_SIZE); + *(.dtb) + } :text DWARF2_DEBUG_SECTIONS -- 2.25.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 26 03:40:50 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 03:40:50 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555104.866893 (Exim 4.92) (envelope-from ) id 1qDd5t-0005X5-MQ; Mon, 26 Jun 2023 03:40:49 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555104.866893; Mon, 26 Jun 2023 03:40:49 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd5s-0005Sx-Q0; Mon, 26 Jun 2023 03:40:48 +0000 Received: by outflank-mailman (input) for mailman id 555104; Mon, 26 Jun 2023 03:40:46 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd2t-0000HH-NL for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 03:37:43 +0000 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by se1-gles-flk1.inumbo.com (Halon) with ESMTP id ce34796e-13d2-11ee-8611-37d641c3527e; Mon, 26 Jun 2023 05:37:42 +0200 (CEST) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id A525B1FB; Sun, 25 Jun 2023 20:38:25 -0700 (PDT) Received: from a011292.shanghai.arm.com (a011292.shanghai.arm.com [10.169.190.94]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id DE5633F64C; Sun, 25 Jun 2023 20:37:38 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: ce34796e-13d2-11ee-8611-37d641c3527e From: Penny Zheng To: xen-devel@lists.xenproject.org Cc: Penny Zheng , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk , Penny Zheng , Wei Chen Subject: [PATCH v3 49/52] xen/mpu: enable device passthrough in MPU system Date: Mon, 26 Jun 2023 11:34:40 +0800 Message-Id: <20230626033443.2943270-50-Penny.Zheng@arm.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230626033443.2943270-1-Penny.Zheng@arm.com> References: <20230626033443.2943270-1-Penny.Zheng@arm.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit In order to enable device passthrough in MPU system, we only need to provide p2m_mmio_direct_dev permission set up. Signed-off-by: Penny Zheng Signed-off-by: Wei Chen --- v3: - new commit --- xen/arch/arm/mpu/p2m.c | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/xen/arch/arm/mpu/p2m.c b/xen/arch/arm/mpu/p2m.c index e21b76813d..a68a06105f 100644 --- a/xen/arch/arm/mpu/p2m.c +++ b/xen/arch/arm/mpu/p2m.c @@ -185,11 +185,15 @@ static void p2m_set_permission(pr_t *region, p2m_type_t t) region->prbar.reg.ap = AP_RO_ALL; break; + case p2m_mmio_direct_dev: + region->prbar.reg.xn = XN_P2M_ENABLED; + region->prbar.reg.ap = AP_RW_ALL; + break; + case p2m_max_real_type: BUG(); break; - case p2m_mmio_direct_dev: case p2m_mmio_direct_nc: case p2m_mmio_direct_c: case p2m_iommu_map_ro: @@ -233,6 +237,11 @@ static inline pr_t region_to_p2m_entry(mfn_t smfn, unsigned long nr_mfn, prlar.reg.ai = MT_NORMAL; break; + case p2m_mmio_direct_dev: + prbar.reg.sh = LPAE_SH_OUTER; + prlar.reg.ai = MT_DEVICE_nGnRE; + break; + default: panic(XENLOG_G_ERR "p2m: UNIMPLEMENTED p2m type in MPU system\n"); break; -- 2.25.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 26 03:40:51 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 03:40:51 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555106.866899 (Exim 4.92) (envelope-from ) id 1qDd5u-0005kM-LM; Mon, 26 Jun 2023 03:40:50 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555106.866899; Mon, 26 Jun 2023 03:40:50 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd5t-0005es-MR; Mon, 26 Jun 2023 03:40:49 +0000 Received: by outflank-mailman (input) for mailman id 555106; Mon, 26 Jun 2023 03:40:47 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd2L-0000HH-IC for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 03:37:09 +0000 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by se1-gles-flk1.inumbo.com (Halon) with ESMTP id b9a4e930-13d2-11ee-8611-37d641c3527e; Mon, 26 Jun 2023 05:37:07 +0200 (CEST) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 1BF951FB; Sun, 25 Jun 2023 20:37:51 -0700 (PDT) Received: from a011292.shanghai.arm.com (a011292.shanghai.arm.com [10.169.190.94]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id 745663F64C; Sun, 25 Jun 2023 20:37:04 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: b9a4e930-13d2-11ee-8611-37d641c3527e From: Penny Zheng To: xen-devel@lists.xenproject.org Cc: Penny Zheng , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk , Penny Zheng , Wei Chen Subject: [PATCH v3 38/52] xen/mpu: map domain page in MPU system Date: Mon, 26 Jun 2023 11:34:29 +0800 Message-Id: <20230626033443.2943270-39-Penny.Zheng@arm.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230626033443.2943270-1-Penny.Zheng@arm.com> References: <20230626033443.2943270-1-Penny.Zheng@arm.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit In MPU system, we implement map_domain_page()/unmap_domain_page() through mapping the domain page with a transient MPU region on demand. Signed-off-by: Penny Zheng Signed-off-by: Wei Chen --- v3: - new patch --- xen/arch/arm/Makefile | 4 ++ xen/arch/arm/include/asm/mpu/mm.h | 1 + xen/arch/arm/mpu/domain_page.c | 68 +++++++++++++++++++++++++++++++ xen/arch/arm/mpu/mm.c | 17 ++++++++ 4 files changed, 90 insertions(+) create mode 100644 xen/arch/arm/mpu/domain_page.c diff --git a/xen/arch/arm/Makefile b/xen/arch/arm/Makefile index 5f6ee817ad..feb49640a0 100644 --- a/xen/arch/arm/Makefile +++ b/xen/arch/arm/Makefile @@ -17,7 +17,11 @@ obj-y += device.o obj-$(CONFIG_IOREQ_SERVER) += dm.o obj-y += domain.o obj-y += domain_build.init.o +ifneq ($(CONFIG_HAS_MPU),y) obj-$(CONFIG_ARCH_MAP_DOMAIN_PAGE) += domain_page.o +else +obj-$(CONFIG_ARCH_MAP_DOMAIN_PAGE) += mpu/domain_page.o +endif obj-y += domctl.o obj-$(CONFIG_EARLY_PRINTK) += early_printk.o obj-y += efi/ diff --git a/xen/arch/arm/include/asm/mpu/mm.h b/xen/arch/arm/include/asm/mpu/mm.h index 452fe20c5f..a83519ad13 100644 --- a/xen/arch/arm/include/asm/mpu/mm.h +++ b/xen/arch/arm/include/asm/mpu/mm.h @@ -10,6 +10,7 @@ extern void setup_staticheap_mappings(void); extern uint8_t is_mm_range_mapped(paddr_t pa, paddr_t len); extern void *map_mm_range(paddr_t pa, size_t len, unsigned int attributes); extern void unmap_mm_range(paddr_t pa); +extern bool is_mm_range_mapped_transient(paddr_t pa, paddr_t len); #endif /* __ARCH_ARM_MM_MPU__ */ diff --git a/xen/arch/arm/mpu/domain_page.c b/xen/arch/arm/mpu/domain_page.c new file mode 100644 index 0000000000..da408bb9e0 --- /dev/null +++ b/xen/arch/arm/mpu/domain_page.c @@ -0,0 +1,68 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ +#include +#include + +/* Override macros from asm/mm.h to make them work with mfn_t */ +#undef mfn_to_virt +#define mfn_to_virt(mfn) __mfn_to_virt(mfn_x(mfn)) + +void *map_domain_page_global(mfn_t mfn) +{ + /* TODO: map shared domain page globally */ + printk(XENLOG_ERR + "mpu: mapping shared domain page not SUPPORTED right now!\n"); + return NULL; +} + +void unmap_domain_page_global(const void *va) +{ + /* TODO: map shared domain page globally */ + printk(XENLOG_ERR + "mpu: mapping shared domain page not SUPPORTED right now!\n"); + return; +} + +/* Map a page of domain memory */ +void *map_domain_page(mfn_t mfn) +{ + uint8_t idx; + paddr_t pa = mfn_to_maddr(mfn); + + idx = is_mm_range_mapped(pa, PAGE_SIZE); + if ( idx != INVALID_REGION_IDX ) + /* Already mapped */ + return mfn_to_virt(mfn); + else + /* + * Map it temporarily with a transient MPU region. + * And it is caller's responsibity to unmap it + * through unmap_domain_page. + */ + return map_mm_range(pa, PAGE_SIZE, PAGE_HYPERVISOR_RW); +} + +/* Release a mapping taken with map_domain_page() */ +void unmap_domain_page(const void *va) +{ + paddr_t pa = (paddr_t)(unsigned long)(va); + + /* Only unmap transient page */ + if ( is_mm_range_mapped_transient(pa, PAGE_SIZE) ) + unmap_mm_range(pa); +} + +mfn_t domain_page_map_to_mfn(const void *ptr) +{ + printk(XENLOG_ERR + "mpu: domain_page_map_to_mfn() not SUPPORTED right now!\n"); + return INVALID_MFN; +} + +/* + * Local variables: + * mode: C + * c-file-style: "BSD" + * c-basic-offset: 4 + * indent-tabs-mode: nil + * End: + */ diff --git a/xen/arch/arm/mpu/mm.c b/xen/arch/arm/mpu/mm.c index 21276d6de9..b2419f0603 100644 --- a/xen/arch/arm/mpu/mm.c +++ b/xen/arch/arm/mpu/mm.c @@ -809,6 +809,23 @@ void iounmap(void __iomem *va) unmap_mm_range(virt_to_maddr(va)); } +bool is_mm_range_mapped_transient(paddr_t pa, paddr_t len) +{ + uint8_t idx; + + idx = is_mm_range_mapped(pa, len); + if ( idx != INVALID_REGION_IDX ) + { + pr_t *region; + + region = &xen_mpumap[idx]; + if ( region_is_transient(region) ) + return true; + } + + return false; +} + /* * Local variables: * mode: C -- 2.25.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 26 03:40:54 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 03:40:54 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555107.866910 (Exim 4.92) (envelope-from ) id 1qDd5x-0006Ny-Ez; Mon, 26 Jun 2023 03:40:53 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555107.866910; Mon, 26 Jun 2023 03:40:53 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd5w-0006Ep-5B; Mon, 26 Jun 2023 03:40:52 +0000 Received: by outflank-mailman (input) for mailman id 555107; Mon, 26 Jun 2023 03:40:49 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd1e-0000HH-A0 for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 03:36:26 +0000 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by se1-gles-flk1.inumbo.com (Halon) with ESMTP id 9fb1b15c-13d2-11ee-8611-37d641c3527e; Mon, 26 Jun 2023 05:36:24 +0200 (CEST) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 96FA21FB; Sun, 25 Jun 2023 20:37:07 -0700 (PDT) Received: from a011292.shanghai.arm.com (a011292.shanghai.arm.com [10.169.190.94]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id EF6F33F64C; Sun, 25 Jun 2023 20:36:20 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 9fb1b15c-13d2-11ee-8611-37d641c3527e From: Penny Zheng To: xen-devel@lists.xenproject.org Cc: Penny Zheng , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk , Penny Zheng , Wei Chen Subject: [PATCH v3 24/52] xen/mpu: build up start-of-day Xen MPU memory region map Date: Mon, 26 Jun 2023 11:34:15 +0800 Message-Id: <20230626033443.2943270-25-Penny.Zheng@arm.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230626033443.2943270-1-Penny.Zheng@arm.com> References: <20230626033443.2943270-1-Penny.Zheng@arm.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit The start-of-day Xen MPU memory region layout shall be like as follows: xen_mpumap[0] : Xen text xen_mpumap[1] : Xen read-only data xen_mpumap[2] : Xen read-only after init data xen_mpumap[3] : Xen read-write data xen_mpumap[4] : Xen BSS xen_mpumap[5] : Xen init text xen_mpumap[6] : Xen init data The layout shall be compliant with what we describe in xen.lds.S, or the codes need adjustment. Signed-off-by: Penny Zheng Signed-off-by: Wei Chen --- v3: - cache maintanence for safety when modifying MPU memory mapping table - Hardcode index for all data/text sections - To make sure that alternative instructions are included, use "_einitext" as the start of the "Init data" section. --- xen/arch/arm/Makefile | 2 + xen/arch/arm/arm64/Makefile | 2 + xen/arch/arm/arm64/mpu/head.S | 178 +++++++++++++++++++++++ xen/arch/arm/include/asm/arm64/mpu.h | 59 ++++++++ xen/arch/arm/include/asm/arm64/sysregs.h | 14 ++ xen/arch/arm/mpu/mm.c | 37 +++++ 6 files changed, 292 insertions(+) create mode 100644 xen/arch/arm/arm64/mpu/head.S create mode 100644 xen/arch/arm/include/asm/arm64/mpu.h create mode 100644 xen/arch/arm/mpu/mm.c diff --git a/xen/arch/arm/Makefile b/xen/arch/arm/Makefile index a83a535cd7..3bd193ee32 100644 --- a/xen/arch/arm/Makefile +++ b/xen/arch/arm/Makefile @@ -40,6 +40,8 @@ ifeq ($(CONFIG_HAS_MMU), y) obj-y += mmu/mm.o obj-y += mmu/setup.o obj-y += mmu/p2m.o +else +obj-y += mpu/mm.o endif obj-y += mm.o obj-y += monitor.o diff --git a/xen/arch/arm/arm64/Makefile b/xen/arch/arm/arm64/Makefile index 55895ecb53..2641fb13ba 100644 --- a/xen/arch/arm/arm64/Makefile +++ b/xen/arch/arm/arm64/Makefile @@ -11,6 +11,8 @@ obj-y += head.o ifeq ($(CONFIG_HAS_MMU),y) obj-y += mmu/head.o obj-y += mmu/mm.o +else +obj-y += mpu/head.o endif obj-y += insn.o obj-$(CONFIG_LIVEPATCH) += livepatch.o diff --git a/xen/arch/arm/arm64/mpu/head.S b/xen/arch/arm/arm64/mpu/head.S new file mode 100644 index 0000000000..93a7a75029 --- /dev/null +++ b/xen/arch/arm/arm64/mpu/head.S @@ -0,0 +1,178 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ +/* + * Start-of-day code for an Armv8-R AArch64 MPU system. + * + * Copyright (C) 2023 Arm Ltd. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 2 as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +#include +#include + +/* + * One entry in Xen MPU memory region mapping table(xen_mpumap) is a structure + * of pr_t, which is 16-bytes size, so the entry offset is the order of 4. + */ +#define MPU_ENTRY_SHIFT 0x4 + +#define REGION_TEXT_PRBAR 0x38 /* SH=11 AP=10 XN=00 */ +#define REGION_RO_PRBAR 0x3A /* SH=11 AP=10 XN=10 */ +#define REGION_DATA_PRBAR 0x32 /* SH=11 AP=00 XN=10 */ + +#define REGION_NORMAL_PRLAR 0x0f /* NS=0 ATTR=111 EN=1 */ + +/* + * Macro to round up the section address to be PAGE_SIZE aligned + * Each section(e.g. .text, .data, etc) in xen.lds.S is page-aligned, + * which is usually guarded with ". = ALIGN(PAGE_SIZE)" in the head, + * or in the end + */ +.macro roundup_section, xb + add \xb, \xb, #(PAGE_SIZE-1) + and \xb, \xb, #PAGE_MASK +.endm + +/* + * Macro to prepare and configure a particular EL2 MPU memory region with + * base address as \base and limit address as \limit. + * We will also create an according MPU memory region entry, which + * is a structure of pr_t, in Xen EL2 mpu memory region mapping table + * xen_mpumap. + * + * Inputs: + * base: reg storing base address (should be page-aligned) + * limit: reg storing limit address + * sel: region selector + * prbar: store computed PRBAR_EL2 value + * prlar: store computed PRLAR_EL2 value + * attr_prbar: PRBAR_EL2-related memory attributes. If not specified it will be REGION_DATA_PRBAR + * attr_prlar: PRLAR_EL2-related memory attributes. If not specified it will be REGION_NORMAL_PRLAR + * + * Clobber \tmp1, \tmp2 + * + */ +.macro prepare_xen_region, sel, base, limit, prbar, prlar, tmp1, tmp2, attr_prbar=REGION_DATA_PRBAR, attr_prlar=REGION_NORMAL_PRLAR + /* Prepare value for PRBAR_EL2 reg and preserve it in \prbar.*/ + and \base, \base, #MPU_REGION_MASK + mov \prbar, #\attr_prbar + orr \prbar, \prbar, \base + + /* Prepare value for PRLAR_EL2 reg and preserve it in \prlar.*/ + /* Round up limit address to be PAGE_SIZE aligned */ + roundup_section \limit + /* Limit address should be inclusive */ + sub \limit, \limit, #1 + and \limit, \limit, #MPU_REGION_MASK + mov \prlar, #\attr_prlar + orr \prlar, \prlar, \limit + + /* + * Before accessing EL2 MPU region register PRBAR_EL2/PRLAR_EL2, + * PRSELR_EL2.REGION determines which MPU region is selected. + */ + msr PRSELR_EL2, \sel + isb + msr PRBAR_EL2, \prbar + msr PRLAR_EL2, \prlar + isb + + mov \tmp1, \sel + lsl \tmp1, \tmp1, #MPU_ENTRY_SHIFT + load_paddr \tmp2, xen_mpumap + add \tmp2, \tmp2, \tmp1 + stp \prbar, \prlar, [\tmp2] + /* Invalidate data cache for safety */ + dc ivac, \tmp2 + isb +.endm + +.section .text.idmap, "ax", %progbits + +/* + * Static start-of-day Xen EL2 MPU memory region layout: + * + * xen_mpumap[0] : Xen text + * xen_mpumap[1] : Xen read-only data + * xen_mpumap[2] : Xen read-only after init data + * xen_mpumap[3] : Xen read-write data + * xen_mpumap[4] : Xen BSS + * xen_mpumap[5] : Xen init text + * xen_mpumap[6] : Xen init data + * + * Clobbers x0 - x6 + * + * It shall be compliant with what describes in xen.lds.S, or the below + * codes need adjustment. + */ +ENTRY(prepare_early_mappings) + /* x0: region sel */ + mov x0, xzr + /* Xen text section. */ + load_paddr x1, _stext + load_paddr x2, _etext + prepare_xen_region x0, x1, x2, x3, x4, x5, x6, attr_prbar=REGION_TEXT_PRBAR + + add x0, x0, #1 + /* Xen read-only data section. */ + load_paddr x1, _srodata + load_paddr x2, _erodata + prepare_xen_region x0, x1, x2, x3, x4, x5, x6, attr_prbar=REGION_RO_PRBAR + + add x0, x0, #1 + /* Xen read-only after init data section. */ + load_paddr x1, __ro_after_init_start + load_paddr x2, __ro_after_init_end + prepare_xen_region x0, x1, x2, x3, x4, x5, x6 + + add x0, x0, #1 + /* Xen read-write data section. */ + load_paddr x1, __ro_after_init_end + load_paddr x2, __init_begin + prepare_xen_region x0, x1, x2, x3, x4, x5, x6 + + add x0, x0, #1 + /* Xen BSS section. */ + load_paddr x1, __bss_start + load_paddr x2, __bss_end + prepare_xen_region x0, x1, x2, x3, x4, x5, x6 + + add x0, x0, #1 + /* Xen init text section. */ + load_paddr x1, _sinittext + load_paddr x2, _einittext + prepare_xen_region x0, x1, x2, x3, x4, x5, x6, attr_prbar=REGION_TEXT_PRBAR + + add x0, x0, #1 + /* Xen init data section. */ + /* + * Even though we are not using alternative instructions in MPU yet, + * we want to use "_einitext" for the start of the "Init data" section + * to make sure they are included. + */ + load_paddr x1, _einittext + roundup_section x1 + load_paddr x2, __init_end + prepare_xen_region x0, x1, x2, x3, x4, x5, x6 + + /* Ensure any MPU memory mapping table updates made above have occurred. */ + dsb nshst + ret +ENDPROC(prepare_early_mappings) + +/* + * Local variables: + * mode: ASM + * indent-tabs-mode: nil + * End: + */ diff --git a/xen/arch/arm/include/asm/arm64/mpu.h b/xen/arch/arm/include/asm/arm64/mpu.h new file mode 100644 index 0000000000..0c479086f4 --- /dev/null +++ b/xen/arch/arm/include/asm/arm64/mpu.h @@ -0,0 +1,59 @@ +// SPDX-License-Identifier: GPL-2.0-only +/* + * mpu.h: Arm Memory Protection Region definitions. + */ + +#ifndef __ARM64_MPU_H__ +#define __ARM64_MPU_H__ + +/* + * MPUIR_EL2.Region identifies the number of regions supported by the EL2 MPU. + * It is a 8-bit field, so 255 MPU memory regions at most. + */ +#define ARM_MAX_MPU_MEMORY_REGIONS 255 + +#ifndef __ASSEMBLY__ + +/* Protection Region Base Address Register */ +typedef union { + struct __packed { + unsigned long xn:2; /* Execute-Never */ + unsigned long ap:2; /* Acess Permission */ + unsigned long sh:2; /* Sharebility */ + unsigned long base:42; /* Base Address */ + unsigned long pad:16; + } reg; + uint64_t bits; +} prbar_t; + +/* Protection Region Limit Address Register */ +typedef union { + struct __packed { + unsigned long en:1; /* Region enable */ + unsigned long ai:3; /* Memory Attribute Index */ + unsigned long ns:1; /* Not-Secure */ + unsigned long res:1; /* Reserved 0 by hardware */ + unsigned long limit:42; /* Limit Address */ + unsigned long pad:16; + } reg; + uint64_t bits; +} prlar_t; + +/* MPU Protection Region */ +typedef struct { + prbar_t prbar; + prlar_t prlar; +} pr_t; + +#endif /* __ASSEMBLY__ */ + +#endif /* __ARM64_MPU_H__ */ + +/* + * Local variables: + * mode: C + * c-file-style: "BSD" + * c-basic-offset: 4 + * indent-tabs-mode: nil + * End: + */ diff --git a/xen/arch/arm/include/asm/arm64/sysregs.h b/xen/arch/arm/include/asm/arm64/sysregs.h index 3fdeb9d8cd..c41d805fde 100644 --- a/xen/arch/arm/include/asm/arm64/sysregs.h +++ b/xen/arch/arm/include/asm/arm64/sysregs.h @@ -462,6 +462,20 @@ #define ZCR_ELx_LEN_SIZE 9 #define ZCR_ELx_LEN_MASK 0x1ff +/* System registers for Armv8-R AArch64 */ +#ifdef CONFIG_HAS_MPU + +/* EL2 MPU Protection Region Base Address Register encode */ +#define PRBAR_EL2 S3_4_C6_C8_0 + +/* EL2 MPU Protection Region Limit Address Register encode */ +#define PRLAR_EL2 S3_4_C6_C8_1 + +/* MPU Protection Region Selection Register encode */ +#define PRSELR_EL2 S3_4_C6_C2_1 + +#endif + /* Access to system registers */ #define WRITE_SYSREG64(v, name) do { \ diff --git a/xen/arch/arm/mpu/mm.c b/xen/arch/arm/mpu/mm.c new file mode 100644 index 0000000000..fb6bb721b1 --- /dev/null +++ b/xen/arch/arm/mpu/mm.c @@ -0,0 +1,37 @@ +/* SPDX-License-Identifier: GPL-2.0 */ +/* + * xen/arch/arm/mpu/mm.c + * + * MPU-based memory managment code for Armv8-R AArch64. + * + * Copyright (C) 2023 Arm Ltd. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 2 as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +#include +#include +#include + +/* EL2 Xen MPU memory region mapping table. */ +pr_t __aligned(PAGE_SIZE) __section(".data.page_aligned") + xen_mpumap[ARM_MAX_MPU_MEMORY_REGIONS]; + +/* + * Local variables: + * mode: C + * c-file-style: "BSD" + * c-basic-offset: 4 + * indent-tabs-mode: nil + * End: + */ -- 2.25.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 26 03:40:56 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 03:40:56 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555110.866923 (Exim 4.92) (envelope-from ) id 1qDd5z-0007B1-Vv; Mon, 26 Jun 2023 03:40:55 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555110.866923; Mon, 26 Jun 2023 03:40:55 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd5z-00074p-3s; Mon, 26 Jun 2023 03:40:55 +0000 Received: by outflank-mailman (input) for mailman id 555110; Mon, 26 Jun 2023 03:40:51 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDd21-0007ej-Q9 for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 03:36:49 +0000 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by se1-gles-sth1.inumbo.com (Halon) with ESMTP id ae818a65-13d2-11ee-b237-6b7b168915f2; Mon, 26 Jun 2023 05:36:48 +0200 (CEST) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 7A7131FB; Sun, 25 Jun 2023 20:37:32 -0700 (PDT) Received: from a011292.shanghai.arm.com (a011292.shanghai.arm.com [10.169.190.94]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id D0CD03F64C; Sun, 25 Jun 2023 20:36:45 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: ae818a65-13d2-11ee-b237-6b7b168915f2 From: Penny Zheng To: xen-devel@lists.xenproject.org Cc: Penny Zheng , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk , Penny Zheng , Wei Chen Subject: [PATCH v3 32/52] xen/mpu: implement MPU version of setup_mm in mpu/setup.c Date: Mon, 26 Jun 2023 11:34:23 +0800 Message-Id: <20230626033443.2943270-33-Penny.Zheng@arm.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230626033443.2943270-1-Penny.Zheng@arm.com> References: <20230626033443.2943270-1-Penny.Zheng@arm.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit In MPU system, resource, like Xenheap, must be statically configured to meet the requirement of static system with expected behavior. Then, in MPU version of setup_mm, we introduce setup_staticheap_mappings to map fixed MPU memory region for static Xenheap. Signed-off-by: Penny Zheng Signed-off-by: Wei Chen --- v3: - move the changes to mpu/setup.c --- xen/arch/arm/Makefile | 1 + xen/arch/arm/include/asm/mpu/mm.h | 1 + xen/arch/arm/mpu/mm.c | 27 ++++++++++++ xen/arch/arm/mpu/setup.c | 70 +++++++++++++++++++++++++++++++ 4 files changed, 99 insertions(+) create mode 100644 xen/arch/arm/mpu/setup.c diff --git a/xen/arch/arm/Makefile b/xen/arch/arm/Makefile index 3bd193ee32..5f6ee817ad 100644 --- a/xen/arch/arm/Makefile +++ b/xen/arch/arm/Makefile @@ -42,6 +42,7 @@ obj-y += mmu/setup.o obj-y += mmu/p2m.o else obj-y += mpu/mm.o +obj-y += mpu/setup.o endif obj-y += mm.o obj-y += monitor.o diff --git a/xen/arch/arm/include/asm/mpu/mm.h b/xen/arch/arm/include/asm/mpu/mm.h index eec572ecfc..e26bd4f975 100644 --- a/xen/arch/arm/include/asm/mpu/mm.h +++ b/xen/arch/arm/include/asm/mpu/mm.h @@ -3,6 +3,7 @@ #define __ARCH_ARM_MM_MPU__ extern int xen_mpumap_update(paddr_t base, paddr_t limit, unsigned int flags); +extern void setup_staticheap_mappings(void); #endif /* __ARCH_ARM_MM_MPU__ */ diff --git a/xen/arch/arm/mpu/mm.c b/xen/arch/arm/mpu/mm.c index f4ce19d36a..7bd5609102 100644 --- a/xen/arch/arm/mpu/mm.c +++ b/xen/arch/arm/mpu/mm.c @@ -22,8 +22,10 @@ #include #include #include +#include #include #include +#include #ifdef NDEBUG static inline void __attribute__ ((__format__ (__printf__, 1, 2))) @@ -486,6 +488,31 @@ int xen_mpumap_update(paddr_t base, paddr_t limit, unsigned int flags) return rc; } +/* + * Heap must be statically configured in Device Tree through + * "xen,static-heap" in MPU system. + */ +void __init setup_staticheap_mappings(void) +{ + unsigned int bank = 0; + + for ( ; bank < bootinfo.reserved_mem.nr_banks; bank++ ) + { + if ( bootinfo.reserved_mem.bank[bank].type == MEMBANK_STATIC_HEAP ) + { + paddr_t bank_start = round_pgup( + bootinfo.reserved_mem.bank[bank].start); + paddr_t bank_size = round_pgdown( + bootinfo.reserved_mem.bank[bank].size); + paddr_t bank_end = bank_start + bank_size; + + /* Map static heap with fixed MPU memory region */ + if ( xen_mpumap_update(bank_start, bank_end, PAGE_HYPERVISOR) ) + panic("mpu: failed to map static heap\n"); + } + } +} + /* * Local variables: * mode: C diff --git a/xen/arch/arm/mpu/setup.c b/xen/arch/arm/mpu/setup.c new file mode 100644 index 0000000000..31f412957c --- /dev/null +++ b/xen/arch/arm/mpu/setup.c @@ -0,0 +1,70 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ +/* + * xen/arch/arm/mpu/setup.c + * + * Early bringup code for an Armv8-R with virt extensions. + * + * Copyright (C) 2023 Arm Ltd. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 2 as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +#include +#include +#include +#include +#include +#include + +void __init setup_mm(void) +{ + paddr_t ram_start = ~0, ram_end = 0, ram_size = 0; + unsigned int bank; + + if ( !bootinfo.mem.nr_banks ) + panic("No memory bank\n"); + + init_pdx(); + + populate_boot_allocator(); + + total_pages = 0; + for ( bank = 0 ; bank < bootinfo.mem.nr_banks; bank++ ) + { + paddr_t bank_start = round_pgup(bootinfo.mem.bank[bank].start); + paddr_t bank_size = bootinfo.mem.bank[bank].size; + paddr_t bank_end = round_pgdown(bank_start + bank_size); + + ram_size = ram_size + bank_size; + ram_start = min(ram_start, bank_start); + ram_end = max(ram_end, bank_end); + } + + setup_staticheap_mappings(); + + total_pages += ram_size >> PAGE_SHIFT; + max_page = PFN_DOWN(ram_end); + + setup_frametable_mappings(ram_start, ram_end); + + init_staticmem_pages(); +} + +/* + * Local variables: + * mode: C + * c-file-style: "BSD" + * c-basic-offset: 4 + * indent-tabs-mode: nil + * End: + */ -- 2.25.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 26 04:16:59 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 04:16:59 +0000 Received: from list by lists.xenproject.org with outflank-mailman.554863.866951 (Exim 4.92) (envelope-from ) id 1qDdeh-0008Sz-Fk; Mon, 26 Jun 2023 04:16:47 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 554863.866951; Mon, 26 Jun 2023 04:16:47 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDdeh-0008Ss-CX; Mon, 26 Jun 2023 04:16:47 +0000 Received: by outflank-mailman (input) for mailman id 554863; Sun, 25 Jun 2023 16:48:55 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDSv1-0004AO-CS for xen-devel@lists.xenproject.org; Sun, 25 Jun 2023 16:48:55 +0000 Received: from out203-205-221-245.mail.qq.com (out203-205-221-245.mail.qq.com [203.205.221.245]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 27ad0021-1378-11ee-b237-6b7b168915f2; Sun, 25 Jun 2023 18:48:50 +0200 (CEST) Received: from localhost.localdomain ([122.14.229.236]) by newxmesmtplogicsvrsza10-0.qq.com (NewEsmtp) with SMTP id A9A2A055; Mon, 26 Jun 2023 00:42:26 +0800 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 27ad0021-1378-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=foxmail.com; s=s201512; t=1687711719; bh=ULx3wX+XMVeigercXBoqPiB3jqlbn7oDvMIMzYZ5TSs=; h=From:To:Cc:Subject:Date; b=lcnKagj/AVLXeiy0XWleoj7AZvTy9LB6XnAkvIv8eHW31xnU2xgQ5tUqChl/nOJMS wSEyVKoZCBX8EHFx8VCPO2ciM6vMaTc9iZ/q7hRS//MigdnjbI0UU+mbaXUYsrMyPI T0WFMEplEUqfFZIK6enDTyF7kKGCsf370cLYCdJg= X-QQ-mid: xmsmtpt1687711346tg34imyg9 Message-ID: X-QQ-XMAILINFO: NUoqT9CRNGLktLe03EA26suTrp/6WoKbh3uyq6gI6Laf3iYIlrsVt+j5hNNtSs fLYRD/A6zL8h6i2kOPpD0flQHcJ3x4+RjEmPTOqeGMR4MF7djfr9nTzfyy16d5sITFmOouzOuVdT m5BeNGvLZrTqLTl1rVfMjZQlIJ3YhzNLm/hDWbzLWirEJAIveTRSQy0tMVEDJV4hRdlT/KmZELnc jUGvGqyEN4+q8UUX3pGzFn35Atc+U/I2rFqq1D7h3sPX22e/BXi2FYQCanbwor0ESnL1dDs3s2fU ayeNk4h7cM2xEeeIC95x7cF+S7JX1+IF17gfEFDU+vBEvPi+IouiHT2jqI7rIhS5WNWohdVaqRzf MpyzRW11ay4nC6JvrHAr8p8YlaeeZGr+GxU8RtR2IwwneFejF/EtjnkmTjHTw3Ha/zUge7JnEgWd dPmrzqEBLjNti4CJsm0q2gxmupNN3jNSNJGzrok9k58vjttdeLLSZPkdeALLuvHauydujeeFI7Q6 QhIGoB/ZXKfkUBWLy9qfbbKelYm8DIVG/ZtS5iPZfMdbtXjEwIZZ744A9oC4nU2O9og2NxB97cqp addINjibYwepbHwcBsJu/xT1yGXlxb1MEoOtxlLIxVa9MkROjFySkhD3TJSesjfkXdImPOFTWJEr Fq4QJz5x3o11fsbccWPVBqijqjm15K3u7APd5YcvarTD+DMyTBkJ5k7J4qchCQW/OYr1XQinnMPQ wmL/NBImn52FIkeFzE5jtoa43dOOqo80IGAsSAEqRqpyNW2jEADsdWGMvJXy2ORocIIir2Qs9HxE GUeSacyIb7QdAgxh5DZHN18GsO9bId+GnsUEhQcARu5kinI8H7VsbAZlWuuOC3wi6njBJySUlnlM SpN8QltQpHNAa6hHOexNgHacdalcJE2prZkyN0TqE1e58hB+yfbT8i/daQdtA91xsSpSElfpE83g l9ZYvyMQ0swsLePKVdDDJpjZZeKG2o/NzG0mrGAD8nfy/HJsMUFx+lfwfomt+h8HgPQ4WT+I4= X-QQ-XMRINFO: M0RWTeBkoNRBR1Uh12iQNRvA1CSLhD8+1Q== From: Zhang Shurong To: jgross@suse.com Cc: gregkh@linuxfoundation.org, xen-devel@lists.xenproject.org, linux-usb@vger.kernel.org, linux-kernel@vger.kernel.org, Zhang Shurong Subject: [PATCH] xen: fix potential shift out-of-bounds in xenhcd_hub_control() Date: Mon, 26 Jun 2023 00:42:18 +0800 X-OQ-MSGID: <20230625164218.7134-1-zhang_shurong@foxmail.com> X-Mailer: git-send-email 2.41.0 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Fix potential shift out-of-bounds in xenhcd_hub_control() ClearPortFeature handling and SetPortFeature handling. wValue may be greater than 32 which can not be used for shifting. similar patch: https://patchwork.kernel.org/patch/12162547 Signed-off-by: Zhang Shurong --- drivers/usb/host/xen-hcd.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/drivers/usb/host/xen-hcd.c b/drivers/usb/host/xen-hcd.c index 46fdab940092..c0e7207d3857 100644 --- a/drivers/usb/host/xen-hcd.c +++ b/drivers/usb/host/xen-hcd.c @@ -456,6 +456,8 @@ static int xenhcd_hub_control(struct usb_hcd *hcd, __u16 typeReq, __u16 wValue, info->ports[wIndex - 1].c_connection = false; fallthrough; default: + if (wValue >= 32) + goto error; info->ports[wIndex - 1].status &= ~(1 << wValue); break; } @@ -527,6 +529,8 @@ static int xenhcd_hub_control(struct usb_hcd *hcd, __u16 typeReq, __u16 wValue, xenhcd_rhport_suspend(info, wIndex); break; default: + if (wValue >= 32) + goto error; if (info->ports[wIndex-1].status & USB_PORT_STAT_POWER) info->ports[wIndex-1].status |= (1 << wValue); } -- 2.41.0 From xen-devel-bounces@lists.xenproject.org Mon Jun 26 05:45:40 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 05:45:40 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555302.866960 (Exim 4.92) (envelope-from ) id 1qDf2O-0001V1-Sb; Mon, 26 Jun 2023 05:45:20 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555302.866960; Mon, 26 Jun 2023 05:45:20 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDf2O-0001Uu-Q0; Mon, 26 Jun 2023 05:45:20 +0000 Received: by outflank-mailman (input) for mailman id 555302; Mon, 26 Jun 2023 05:45:20 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDf2O-0001Uo-9b for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 05:45:20 +0000 Received: from EUR02-AM0-obe.outbound.protection.outlook.com (mail-am0eur02on2060c.outbound.protection.outlook.com [2a01:111:f400:fe13::60c]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id a11f787f-13e4-11ee-b237-6b7b168915f2; Mon, 26 Jun 2023 07:45:17 +0200 (CEST) Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23) by DB9PR04MB8187.eurprd04.prod.outlook.com (2603:10a6:10:24a::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.26; Mon, 26 Jun 2023 05:45:14 +0000 Received: from DU2PR04MB8790.eurprd04.prod.outlook.com ([fe80::9bd3:48c9:ff58:9880]) by DU2PR04MB8790.eurprd04.prod.outlook.com ([fe80::9bd3:48c9:ff58:9880%4]) with mapi id 15.20.6521.026; Mon, 26 Jun 2023 05:45:14 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: a11f787f-13e4-11ee-b237-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Fq3f+NlR8lQ9IVQzIN8mp50TutrIXgU2Wub7g/KHHmpk3ZTEW/KNSIfrPwHyZqK9JZwJHF1lOGm+s7lcHZbEU0jrNQTfkpQCMgSLq/q63l78ZgeB12hIoArWm3G/JnzL3BGePoLjwQR2Ycxjz6CnYOqeo3QNFLVrPdy1W1njc7WPhaDFfZSyubeYnmjSJAGmEW9sslv0V1+4EEA68CjtyerP0jHcClC/8NBcoUzsfx98ntVInT8Zgo/d3ribLXXWNLkKG8vyh2dFmxwzFsZbwUXJ194PI9BBNBDPjs5sobLctHSbgUCvLkqaxuUayAk1Ai6H0eDdWz5eaIGIt7jwgQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=osy2r5Vr+/zIZXhlsFCIzg6PPd+zfEb4uA78Zi23SnQ=; b=KGCtJcz3M+3VjAE//jZU8m8tNY8HH6eqFh5c7kz3naxC+lmOXyVi3fFruSepAjRt43A9/8LdoGoiHGTyxWQLE4Pp3d29LPNocLmoL4W0qXEFcX/Dv2NhdzsezzoGmOIXpLWjeGambEbDXLuSn+wwjAsZSqnoGyRvxbkvJ1HlQmsBNiG9+ZdvGgnNhpKUYlbBPrr30pVqQVb2dX6maB87BC2FcVZ4OT0HxJLODceYGs8evfPg5IyPz8HT4K9qaiZ0MbubngIlT7U0iS1jm3NVr6Anb3L0zBqGJBQFmC9Rt38RCgAzYb/cEenQ+d2ub2z6jVg3dXrEF6VmsfsIA/Dg4A== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=osy2r5Vr+/zIZXhlsFCIzg6PPd+zfEb4uA78Zi23SnQ=; b=eX+eI7LUW1C/EgTCxQBsjbYoSzBGinaVSZGeBDE9zz/zKamwR6obl276AEFy4yBOiGdxhkpIIdQVQC//6TCCaSecflSShQsw1gT5wK0dYLlUjIIHQuDpBNbd6sxJlhJ5jqDt3pgqgTKfP4o+OxffLZ4rqCzLylFZlVYqBxzfS67u07LHDxpFWatgVOKbs2I4SovZKGyvucmT+hinY9JHAqYSZSZMsGQiqw6M3CLFZsFHbWWOV1c3AZ+J/x456nr4YXfqaFHkDHuEB9452BDstl1hfk721bZ5VKN2sFfr+K+JsAZbZrmy/x2oSkSvsjPMxeCeOSj8GiPw6NmrV3R3WQ== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <2f916d99-6c1b-eb3d-e40e-6c881dbf4185@suse.com> Date: Mon, 26 Jun 2023 07:45:11 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH 0/9] xen/arm: Enable UBSAN support To: Julien Grall Cc: Luca.Fancellu@arm.com, michal.orzel@amd.com, Henry.Wang@arm.com, Julien Grall , Stefano Stabellini , Bertrand Marquis , Volodymyr Babchuk , xen-devel@lists.xenproject.org References: <20230625204907.57291-1-julien@xen.org> Content-Language: en-US From: Jan Beulich In-Reply-To: <20230625204907.57291-1-julien@xen.org> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: AM0PR03CA0099.eurprd03.prod.outlook.com (2603:10a6:208:69::40) To DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|DB9PR04MB8187:EE_ X-MS-Office365-Filtering-Correlation-Id: b3603a3f-918d-45cd-0235-08db760883b9 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: parLegnif4Ym9aTEyyxjQmAQ0416ff1IGKL8aJqjc70rWNkeOyLUyLTEVyGNQoWzmpH5ZAdpv3RvxCMzBO4IeFtKyoAQfICcHlupVMQpty+8YsUK8hBnYOGXDbQ/5DWAVCX7BfvSBZnW/95IulOCVCivHxpu0Ii2p3LJ75NWjOe/fPNa3s18XZ3m6KQzndOmJoz8+Xale2PTJFwyxW8IvyGBgyr6pMV/JgpwZ9jQMgnTvOE06vGUoBk9RK/kgm6iS2chJXUJB7NQk1zBS61+D/3YRToPzG+VPx5ylBJOuXxmiorqMqXW1l7gBDNWTsUmXjkdvtT9zRYRXyevVjAhJVrceAvAiMvycjyZYeXu046VNOn6PKZKfapfCWUVPN+jZpYUJP5hPc1AT87BkFYwZtNFbdXPAPwgqM4+fdslBMszqEhNqJIcB+iOYnd6Fl5rDaGUZnBgizvm6mvIlD6bCEJA51jnPRoho+SJvltqweqJrWc39kM1Uh9B2sKtyPeAVpD9ZECFIGJR2P1pKWrlGXr7VWqOzhqIlN9vu89x4890L+ajQNYkX1yYXN87oomRMnEWqi5/i/WOuKmvrIup3JdXedip0rLI3HkKB2DmdubetWj3zEfrS9ce1ODuYmUE3cSF282CjvUAop4qDahKDQ== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(39860400002)(396003)(366004)(346002)(376002)(136003)(451199021)(2906002)(186003)(26005)(38100700002)(2616005)(53546011)(6512007)(6506007)(5660300002)(41300700001)(66556008)(83380400001)(66946007)(66476007)(8936002)(8676002)(36756003)(31696002)(6666004)(54906003)(6486002)(86362001)(4326008)(478600001)(6916009)(316002)(31686004)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?NjdFR1ZUVnNzUnFmbDRnb2kwVTdFTWRxMEh3Z1BaMHhYbURBSkowVzU1U0hz?= =?utf-8?B?elIvMThjdkJwV29takYzRXpVcExWR0pkSFlIRHdXTVYyV3RnZzNOQ0RTNFo0?= =?utf-8?B?WDJZQyt0UWk3Yzlqc1gyVGlrQmpiamRYRlcrU25ZU1BOZGVWa3VNb0xESENp?= =?utf-8?B?akJCUDQzYzJtdGFPSXFucHJXcDVtTmRoaGNVZU8wL2ljekt6UHUwdkhCRmhU?= =?utf-8?B?N3cwWmlxcVhCZGc2UlhpQ1RNcnN3dFBsUFpRYkErNmRIMEQxQXYvaUVXRlov?= =?utf-8?B?SndmYkZ2T0t6eVJWQzU0emgvMHJYRG9GWUZWdjRkN3BkZ1oxbW9NWWFlcFpD?= =?utf-8?B?ODlBQjhUK2JjM1UyVjR1SEZwZ1hmMFJDUXBqZmhlZmFXdlY3SWJaVFRQRHdQ?= =?utf-8?B?TUI0Q1VDQTBodThoR253M1krdm9XM2tDNkV1SXBQR0tSaGo3ZjNOSVJMRU5p?= =?utf-8?B?d0ROb01NOVNSeXZBZ0xkNkFBcVV0Q2lscS82MURIZFVOMnU1OGVsVzZyR3RM?= =?utf-8?B?Vnk2SDBEMk1GckN0czFmb2QwLzRlM2c4b0pQT3hLdlNqb2ZiRXgwTWhiaFFp?= =?utf-8?B?N0pORDgraHB4TjNXVUR5Wlk1UWdNUGhONVJ1ckpJdFZlYUVtOGE0U2ZuRXZm?= =?utf-8?B?SDBEc09qS2F0U2lOVEVoZ1ZDcjVuSmorUnZCekd0ZHkvcERwZkNkalhoM1hR?= =?utf-8?B?TU1pRXl2NVlLdXIxRlQzbSs5UjVkOFFtUzBXRU1YK1pyK0U1YTR3bFE4b3E5?= =?utf-8?B?TTNMM084Z1RyaS9OUVpDQlNLSExFYTBlRDZ1TlEwc2F0ZXAwN0kxWmFUZ3NC?= =?utf-8?B?Yis3VlozaTQ0TWtkazBMMmJKa2NrY2pqdjUwTVJNdmQ3d2dwUzhMZlY1d2pJ?= =?utf-8?B?NjAvWEZySWVzbUJpL1JKZWRrRE44eThVSUhreXVSVlZZek81cDhEUERiWjRs?= =?utf-8?B?MEVXU0ZYblVqd3hlbTdHR2M0SFFOOXlTSzV6anRLb3AyZG81cW50Nk1Kd0JH?= =?utf-8?B?MzVFbk4rY3JrSEZOejkvenRqVnBzK1VOYUFkc1llRWQyaFV5d3JrVTN0YnRv?= =?utf-8?B?SzIrbGxPZDZrQ0JReS9hM3VSMW1YTkdoQWp3Q3NXcW8vRFE5SDczQ3RzcVRN?= =?utf-8?B?ME1tZjhvY3V3MXAvS3lVbFNjb1lmdUZ6dkZzcWZqcE4vUlc1aDR6N3FBcEV0?= =?utf-8?B?WW9WZzhSV0xlQWxxdU1FN09qbHdPMGtMb0N3NzMvSFNyZnhyanZlSnE2K1g4?= =?utf-8?B?WlZ0WWVhL00xY202SWw1NUlsUWNYemJWeWdqV0tXS0pNUzlzVWdybk9CNDdl?= =?utf-8?B?TmpPMW1qYTN0YUVhVkFzV0o5UWdUQ3puZUdnVTdqakEzUDFLNHJXN2hONGZn?= =?utf-8?B?Tkpjc2ZpY0UzZk90bUxSY2NtZXNuQXdoQmRmWEl1RnQ1ejc3L3ZYb01jL1V4?= =?utf-8?B?RVRqVVdZeERFNldnZDNNaFlPV3NVcW8rNloxcVpuRkF0djRzTFpCZ2wwQk83?= =?utf-8?B?VUNqWjNTSlVSaEMvbnFCYzI1Mlg2a3dKNFRRMnBsYkE2VUtDSTc4ODl2TjdL?= =?utf-8?B?L1FhZDZGcEJwYS8xTTUxc3hyRVZpZWdVcWwyZk9XZkxlMkQyTzN3MnRaZzBi?= =?utf-8?B?SkhZTmkxeGhQY0M4eFJkM1F1a0p2cW1iYjN2TGNFOFoxeTRoVG4yZFN4dzdF?= =?utf-8?B?a1oybG1MTTc3Z0dPSDlzazA3cXFqYnlXaDJQT0tGMVp3M3RPWHpIR0lhdUI1?= =?utf-8?B?ZjVXVVlvbDdUaFEwNnpwUU1sVWxtZm1nY2crQ2FyNXRTOUVyVllKVkV3d2ti?= =?utf-8?B?eHNxVnNhaWlzUjgwcFc2blVFRlNFVVVxUzVZVkNCQUR4SE5RcHFBcFhNMEJV?= =?utf-8?B?eXQyMDBveFlrRU5KS3FBWllndkhYa1F5eksyYmxueDQ0OHgvVmQyb29JbnZ4?= =?utf-8?B?MWNwQXdoL0xnb1g2WWN5VnJldFVoZ3JhRnJaN2xIS3dOOExzNFphQ3RMR2lS?= =?utf-8?B?MDRsNHhNZlNkZUpqd0FqbHphZjV6bjJiMm1FWjRiM29YUTZ0aUZQc1EvUnVH?= =?utf-8?B?Y0lKbXNRTHBUSkpRTG5PSmh3bSt1VmoySEZaNWJwMnRDOWRmdzhiRFN6Q2Ry?= =?utf-8?Q?TRDzdRjLie4tt4cmvEFm6QfQs?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: b3603a3f-918d-45cd-0235-08db760883b9 X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Jun 2023 05:45:14.6937 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: ZF2h9Mwti+yaIMdyBLhKimGvPGQ51eWFYF2UgMFDtJfTOgjuHdlAapw9do3A6xK/PZCxkBzKc8zXcsBkBjv2rw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR04MB8187 On 25.06.2023 22:48, Julien Grall wrote: > From: Julien Grall > > Hi all, > > At the moment, we are not able to enable UBSAN on Arm because the > final binary will be over the maximum size of Xen we currently support > (i.e. 2MB). > > This patch series aim to lift the restrictions and also > enable UBSAN. Lastly, at the end of the series, there is the first > issue found by USBAN. > > There are a few of others. One will be fixed by the MISRA work > in [1] and the other is a bit tricky. One the splat is (the > others seems to be for similar reasons) > > (XEN) ================================================================================ > (XEN) UBSAN: Undefined behaviour in common/sched/credit2.c:2437:5 > (XEN) member access within misaligned address 43feefbc for type 'struct csched2_runqueue_data' > (XEN) which requires 8 byte alignment > (XEN) Xen WARN at common/ubsan/ubsan.c:172 > > This is on 32-bit and UBSAN seems to complain about the check in > list_for_each_entry. I haven't yet dived into the issue yet. At a guess this is because the list head struct, living in struct csched2_private, has only 32-bit alignment, while on the last loop iteration pos doesn't hold a real struct csched2_runqueue_data * (which ought to b 64-bit aligned, but isn't in the special case of having reached the list head again). If I'm not mistaken rwlock_t is 12 bytes for Arm32, which would match with the address above ending in c, assuming that xmalloc() returns at least 16-byte-aligned space on Arm32 as well. If so, in this particular case some rearrangement of struct csched2_private ought to help, but as you say this is a more general issue and hence likely wants addressing in a generic way. Jan From xen-devel-bounces@lists.xenproject.org Mon Jun 26 05:48:14 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 05:48:14 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555306.866972 (Exim 4.92) (envelope-from ) id 1qDf5B-00022d-Bi; Mon, 26 Jun 2023 05:48:13 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555306.866972; Mon, 26 Jun 2023 05:48:13 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDf5B-00022W-7L; Mon, 26 Jun 2023 05:48:13 +0000 Received: by outflank-mailman (input) for mailman id 555306; Mon, 26 Jun 2023 05:48:12 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDf5A-00022M-9b for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 05:48:12 +0000 Received: from EUR02-DB5-obe.outbound.protection.outlook.com (mail-db5eur02on20622.outbound.protection.outlook.com [2a01:111:f400:fe12::622]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 07ec54e4-13e5-11ee-8611-37d641c3527e; Mon, 26 Jun 2023 07:48:10 +0200 (CEST) Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23) by AM0PR04MB7028.eurprd04.prod.outlook.com (2603:10a6:208:19a::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.26; Mon, 26 Jun 2023 05:48:08 +0000 Received: from DU2PR04MB8790.eurprd04.prod.outlook.com ([fe80::9bd3:48c9:ff58:9880]) by DU2PR04MB8790.eurprd04.prod.outlook.com ([fe80::9bd3:48c9:ff58:9880%4]) with mapi id 15.20.6521.026; Mon, 26 Jun 2023 05:48:07 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 07ec54e4-13e5-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=nGALV/Bgjr9Zgr/jaXsWO667wUCIXnS00EhJbUAORrfQcoT800jr6YNULnserDwGYs7neQhVbR9BjgrdRrzjkMGWel8L/yestQU4LbT4gExU/4O7/T1+4BjJxwyVODjAq+myIaVsD8Uzs2Cf6V3HKlrO4URS5Eo18MLFhUgWTRaDlWAb/2vMkBwG+iQ+MaNpczUO7Yg3uKKppC/+RrfccMtBi+9JVIXMSaVMsHNzJCGLH7V5RF+BDbCiUyb2MxFpu4yRNFJ6Uwj7IV3UW6JceCloSFNaqmGdJRvze8sUl8Sf4eQbnw6xh2jgSv5zSFGOHeAJDcngWrGvPW/DGNojyw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=5OIfhZel9OSIrMnwV9oqQHwKNabLshgbuxOifQmEuME=; b=n2nY33vbEHPNnUclYBujDTni5548h3VaKnjyC6VKHjmC4t4mx4qwtLWDyuYgTUOf9/ZocoAUTNw7LcT+L0FFxeeB862giB6xc4TkGB86gSvMuUmBoLCyrKYsGu5usUBRZOhGBDc9dzQ45eYtWpN3/ycMbZ8qGriTx9zL/G+crIAHeW+xAD+DHzZTO4FK/a/lDeQvzMdUVUeGhCsWvcZwvcEd8Vqw5NkoIbirUmgl+eP3ccEuRynsMs6Itdx2EPMAfq9jaL63fC/6enrX91hzKGhcGegvKa3j9YHY2sTcWVEJeaB4nwwNrs/LYXxVx4WKHmUoE2xNKOoGpagMPJoAsw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=5OIfhZel9OSIrMnwV9oqQHwKNabLshgbuxOifQmEuME=; b=QbEQd3om9N8XlGHiXHkO7Lgegxtes1q2FZd59e+UiuTDx/qYIhqAjYBaZCdFdvJsXOc8wD3uvOEhq8xOhNgzwyF3poog0g+a0YPB8K5uP6v1hWdqMcMMxDqfaKKW1Lbqv7+yavYfZWhnXiEGfpH20vCB3xPXqmlNixcxXNLIL4FCSeHkFYowLC00TSZDKS+DXTUx48TboY1d3/HPRSCQJd3kV2AOrd4HVs32obAjXcpdUDzO3iHR2Bme3owrfk9P9ZDHUnBKxWuZFwJ14SHWMfYJbos1j2XjVwj9oeSh3u6IvY0SJG/ZLvWOvHvejFY6H1wEPWK0TX8Uc2vECKFEqw== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <1c8ff405-2bfe-37ff-42ba-aa4f81853475@suse.com> Date: Mon, 26 Jun 2023 07:48:05 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH] xen: fix potential shift out-of-bounds in xenhcd_hub_control() Content-Language: en-US To: Zhang Shurong Cc: gregkh@linuxfoundation.org, xen-devel@lists.xenproject.org, linux-usb@vger.kernel.org, linux-kernel@vger.kernel.org, jgross@suse.com References: From: Jan Beulich In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: AS4P191CA0003.EURP191.PROD.OUTLOOK.COM (2603:10a6:20b:5d5::18) To DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AM0PR04MB7028:EE_ X-MS-Office365-Filtering-Correlation-Id: 6f82fd14-42cc-436e-3c9d-08db7608eaff X-LD-Processed: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: nF9SemVm3OVNylZqEv1SRMwbuul3RsgFO3cpD8IALrGWMYH3S9bUp09glPbP8rMSOJ9Pe108r8O3NhgjyjmkDjJoc7Wgh/qloQbCuJcAv5+YS2IZo1B+ObbVkamdJkYtnGGitKfxAyJf8xbq5V2BlOPkk/dah5yb1ADbajy2bqn4XYC35wQKuALDcYNKueQ6ZWYvf1rNuSEBTT7Bi9JK+Af14wmGtqf7XylAKCsEmXzcT/LYB1nbVEAxPILsUzCuPlHX+fkHoj5Fy8YHAMJunvwM+Qc01M47AF6OArPtNFI9x8bPquXlBnMPoEYWd16R+rcexJ6bAu2NO5C76F//M3t3EUPmQLFHYLlGmqgEvCS0KfPpFWA4vJPBTUbzWTACQKJ7z/kpu9zCRIY2FW2rT7td1AtnV1sl5VhKIpWUGybdUBstt744QHdHJgHBZ0OiX17szi6dPfemDtxTbBXvB8yERrJW9ZbChEAB6udPpw0jBa0tw8ehxmFEohq7UAaBY83YfHsg8WbIeuBaua2k7O5bTTMtPkvjyK7LxFfmWe8A0AKQlO3fbauoxuvLVVKG+W8YF1OOT8ictnUsMzceLKU63jU9j78BVjkn4hdnHe26ws4o4xouoMArjt3u+Nwds1UpiR/jPQQ9G/APzu6CBw== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(376002)(39860400002)(366004)(346002)(396003)(136003)(451199021)(31686004)(26005)(36756003)(5660300002)(6916009)(66476007)(8936002)(8676002)(316002)(86362001)(4326008)(41300700001)(66556008)(38100700002)(31696002)(66946007)(107886003)(6486002)(6506007)(2906002)(4744005)(6512007)(53546011)(186003)(478600001)(2616005)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?WVlpZU05cU40enFtSWlDVDZuSmdPMHo1Y1d0ZFhhVVR2eEM1TFM4OHVlSUZQ?= =?utf-8?B?bFRQZ2FscEZUaVZXcXlUSk02ek9ZZGpsdkpTM0JiQnhiYzB1UjMvVGFzQXl0?= =?utf-8?B?MzlaZW00QXR3ZUxHM2JKUXNCVkM2M3krUmhHWHhmamNmaEFFN21OT0ZLQ1B2?= =?utf-8?B?OSszdnIrY1hvaWlRRW8vYlVkVHdIZHFBZWxWbTk3QUhLTmpaQnBqOEdIMnU3?= =?utf-8?B?N2l4a0dHZ3FvN1I5VG9tVzNTTGpSeVF5ektOM3czRWhqaWVEVDV5bkRteUdV?= =?utf-8?B?ZWRtSjRIeXYyV1haYUI4WkhXY1pWQlc3ZkxrRmxDVXhkcHRrWjZFV2VKRlU5?= =?utf-8?B?bzJTYU1PQmdyYTNTclZWRS9tQ3N1YlU4ZGl5ZGhDSVZQbFdJWUpObk91ZDhM?= =?utf-8?B?bkxWeEdRM05BM2N0b1VtVGN1S3NHd2JMTERQcy9hODBqZUo3eWt5ZFc2Y0li?= =?utf-8?B?N2dhVy9vVXJOQzdPZDRBS0xRTEZUSEg3K3NBR1JEa2RjK1pRcGlGdjFXV2dr?= =?utf-8?B?Q3c5aDJxMzN5SWF3Q0lvcVZaZ0FWR0JpWDRMaWZ3RWVySzFUR3I4cWtvWDNR?= =?utf-8?B?NHd0bFpraHpJYUJNWmxrR1FZRml3cllwWHlLMGJ0bWVmWkdaSzNzNjROd05Y?= =?utf-8?B?RDlJWEMvV2d4U2swdmQrV09rZmdZMkhYdW9OeDVyZnlRckZNTHNDeVArcVNN?= =?utf-8?B?aGxnZ3ErRGxHUTRGb0pQY2FIVVZpek1zUElNZVNXUDVpTkpqQ2JkL3UzdjNI?= =?utf-8?B?c01wR3Vpa2hKUVNrV3FNdHQwRm0vSWRBeFAxay8zQWx0VE1kRjZTeVZVRldm?= =?utf-8?B?dkNiWlczc0IxMU01TEVnRlhFa1BaYnRQMkEzaHQvNlZVdmZZUmRuelBEZ0hW?= =?utf-8?B?TXFpL2lPUXNsSSttNkNXc1p1bmZvTDltV1h2UGJHbzlWRFB0eFM1TXdyam4z?= =?utf-8?B?dXFzdkd1OVB4eGxISmRZVmpnSEV2dnFzR2V6MGlKaHU0UlExYmVvQ1pkSWVi?= =?utf-8?B?ZXJVR2hqaTUrMkN2alpsVXFXc2VJNUJvL1Q2SExJRlA2WktreU1FZGJVT0Z1?= =?utf-8?B?bHV3UkxkdmdpYlFnVGNNR0NuZUY2bTdUdW5QY3VWd3k2d0NaWkFkTFNmaWtC?= =?utf-8?B?TVFyZVcrVHRNYnFTSWFxTWhmR1RZbGFRcXhoRUpjaDBqanhMMWFhZ1NSc0Nk?= =?utf-8?B?YXhaRDVVVUUzaEhBQUkwZGEyMjVId01MejM2b1NnVm9HWkxPRzhCbkx4L2px?= =?utf-8?B?OEZzN1BHMWNGU0JVT2NvNU5BQkw0SDV3VWxHczdvV2M2QkFMWmNxMDBCMmd2?= =?utf-8?B?TDhIUURRNVlQRC9TR0hGVnFEUEVvZGpqTHdCSUE3ck9JWUdocmhpVXU4VTVr?= =?utf-8?B?S2tPYnQ1bVZWRlBwZUVucDFkYVJMNk9KN05WRVNRWXdQbkx2c3AyUC8vajlh?= =?utf-8?B?emJyNjkrMXBEeUJ1ZXNvWmpxM3BlZEZ4ZlZEakx5WSszOUpEMEhQWjlKaUUr?= =?utf-8?B?RmMvcHExS253VTVIU3VaRW9heXE1dmt6QWMrWFN1ZnhzWVVOVEZOMEFnSDVM?= =?utf-8?B?bHF6T05uc0M1dmNlZFJYYmdPSFM0dHR0cFltMjN3TEhMOVJOSTNOMklvOUlU?= =?utf-8?B?THpncklhMm80SVFVem5pZVV1aDFRSEVTdVV5N2xPMkxkeTNHU0lYS1lJSVUv?= =?utf-8?B?N3lhL2IxUXRNa2pYMWljQ1dCUHZEaWlrMENCWTllMURHd3FYUzBkUDhQSW9D?= =?utf-8?B?ZS9aUEZtZllTYnJLOHMyaTZLK1pHS0FTUlRjdFk0K053K2paaUhQenZhb2Rw?= =?utf-8?B?T2lYQlZpeUpmNlZ5cnZSdkZiL0RJWWs5ZjVCTnBVSi9xRFZKY0xpVGNzNWVy?= =?utf-8?B?VllhclYyUTNPUFp6cXBEMjhUdTFNNVVjQzlhUXB4dzY5MEQvUDJ3YTRtS0dT?= =?utf-8?B?a00vdGFiUTRQZWxsaHBscFVnaHNPU3Rhak51S3RQL2ViN3Mra1JVdTUyOHJX?= =?utf-8?B?V3VxMmhNejFjYTZkeW1IQkx4SkZkV3luRFZyWWxtU3Q4aHE0Q3ZBUU1TMEMz?= =?utf-8?B?a1RSRXRZV01wS1h2N1NTZytqMmV5WnR0NkxycnR0T09qWGlYQkNsdDduWmZ5?= =?utf-8?Q?AgPy/d17cOBqTvxvGLuHkC2uk?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 6f82fd14-42cc-436e-3c9d-08db7608eaff X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Jun 2023 05:48:07.8926 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: pXOFLzBhORRexMX92nieAgueVNeErH35rI/2chGIpuf3PUAxqN/q6d2NyB74lJQrtFz0gUoUZ2O3nbVHDhFOhg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0PR04MB7028 On 25.06.2023 18:42, Zhang Shurong wrote: > --- a/drivers/usb/host/xen-hcd.c > +++ b/drivers/usb/host/xen-hcd.c > @@ -456,6 +456,8 @@ static int xenhcd_hub_control(struct usb_hcd *hcd, __u16 typeReq, __u16 wValue, > info->ports[wIndex - 1].c_connection = false; > fallthrough; > default: > + if (wValue >= 32) > + goto error; > info->ports[wIndex - 1].status &= ~(1 << wValue); Even 31 is out of bounds (as in: UB) as long as it's 1 here rather than 1u. Jan From xen-devel-bounces@lists.xenproject.org Mon Jun 26 05:52:15 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 05:52:15 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555312.866980 (Exim 4.92) (envelope-from ) id 1qDf90-0003Zo-Tx; Mon, 26 Jun 2023 05:52:10 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555312.866980; Mon, 26 Jun 2023 05:52:10 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDf90-0003Zh-RH; Mon, 26 Jun 2023 05:52:10 +0000 Received: by outflank-mailman (input) for mailman id 555312; Mon, 26 Jun 2023 05:52:09 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDf8z-0003Za-1x for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 05:52:09 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 9521fb95-13e5-11ee-b237-6b7b168915f2; Mon, 26 Jun 2023 07:52:07 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 2F55960B01; Mon, 26 Jun 2023 05:52:06 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 39EA9C433C0; Mon, 26 Jun 2023 05:52:05 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 9521fb95-13e5-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org; s=korg; t=1687758725; bh=Q/Jx4hUMTo4PbW0+37Rx0hnjf5b3/J11HUc9EDQu0M8=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=EDnRus/73cUBJt1KENvBFHrmmhm+JYVyU2VV816M7TP16lKsYV+74Dmn3a78QfEBT 1NhFxG8a2NJTiP76ziq0ougRA33fMSL3T2zGU8j3OlOzxrkOXMdeoI2mVa5GPj60Bx zcmX2JnnEnKzhswXn0t/0MVsGHKsCDtWZUJGByko= Date: Mon, 26 Jun 2023 07:52:02 +0200 From: Greg KH To: Jan Beulich , Zhang Shurong Cc: xen-devel@lists.xenproject.org, linux-usb@vger.kernel.org, linux-kernel@vger.kernel.org, jgross@suse.com Subject: Re: [PATCH] xen: fix potential shift out-of-bounds in xenhcd_hub_control() Message-ID: <2023062628-shame-ebook-56f2@gregkh> References: <1c8ff405-2bfe-37ff-42ba-aa4f81853475@suse.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1c8ff405-2bfe-37ff-42ba-aa4f81853475@suse.com> On Mon, Jun 26, 2023 at 07:48:05AM +0200, Jan Beulich wrote: > On 25.06.2023 18:42, Zhang Shurong wrote: > > --- a/drivers/usb/host/xen-hcd.c > > +++ b/drivers/usb/host/xen-hcd.c > > @@ -456,6 +456,8 @@ static int xenhcd_hub_control(struct usb_hcd *hcd, __u16 typeReq, __u16 wValue, > > info->ports[wIndex - 1].c_connection = false; > > fallthrough; > > default: > > + if (wValue >= 32) > > + goto error; > > info->ports[wIndex - 1].status &= ~(1 << wValue); > > Even 31 is out of bounds (as in: UB) as long as it's 1 here rather > than 1u. Why isn't the caller fixed so this type of value could never be passed to the hub_control callback? thanks, greg k-h From xen-devel-bounces@lists.xenproject.org Mon Jun 26 06:01:37 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 06:01:37 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555316.866990 (Exim 4.92) (envelope-from ) id 1qDfHt-00059q-OS; Mon, 26 Jun 2023 06:01:21 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555316.866990; Mon, 26 Jun 2023 06:01:21 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDfHt-00059j-Lg; Mon, 26 Jun 2023 06:01:21 +0000 Received: by outflank-mailman (input) for mailman id 555316; Mon, 26 Jun 2023 06:01:20 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDfHs-00059d-CT for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 06:01:20 +0000 Received: from EUR04-HE1-obe.outbound.protection.outlook.com (mail-he1eur04on2084.outbound.protection.outlook.com [40.107.7.84]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id dd343d5b-13e6-11ee-8611-37d641c3527e; Mon, 26 Jun 2023 08:01:17 +0200 (CEST) Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23) by AS8PR04MB8056.eurprd04.prod.outlook.com (2603:10a6:20b:288::5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.26; Mon, 26 Jun 2023 06:00:47 +0000 Received: from DU2PR04MB8790.eurprd04.prod.outlook.com ([fe80::9bd3:48c9:ff58:9880]) by DU2PR04MB8790.eurprd04.prod.outlook.com ([fe80::9bd3:48c9:ff58:9880%4]) with mapi id 15.20.6521.026; Mon, 26 Jun 2023 06:00:47 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: dd343d5b-13e6-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=EhkGXHeDCw7vSUjsXcZeB1dmft/eCIytUhCGCgvpPtSRQG/PKn4CcHAspctcEE/hYN4m1l1YEzf8a417VP68j1/uvtOf9QBxq0Y+vMbm3/dccthTZA8+qGukmhF0qHwDoZGhVASbPAfnt6RlWHs+9ueI64FYpGH1dKXKhhoLSy5H4pZwOvp+IBUnOm7alVxyAVKnOcO9DE70BEAQI2k7ZwtoihUpctsmLQyFxPwLoF+dI1yuS94ajKECXEpqikCFXZ0BIOf7cIh0DIMZ4inrpnHA5CRKcAmArPoIcfZdFAN/rcD1XLxg27kJQAA7QGhmBJErKGpGuKXoCNdnk0tZ8w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=QnDFlnnqXjdf8W9/XTU0JknxQCkE1zMQbgsLXDH4ZL8=; b=GAMHK+bPT7ZYCZvdqMyhrp8vFZui46943LMj7gaed9F4UUTe4bGNc/i+AqjwF9R6l2sBA3tEhm56+MB90oMXmVSELmsA1HYAsloxpQM67BiNdIEceADpVXAie2zfawOuvi8HSPeQrxjnZfvK4r5mfip3Om2EFDjYoccUuSodGHeglbRjxCSjUulvO33CL20SxED8/Z04Xl/7/tQe1D5HPVUI9PqbTEYhMMwLrN7dyI12FsqifyHWObAaicuo66S5Z0wCMCzX64An2xj7KQcQCXLKdVheOQlN44SJqz/8lhSNnVZbUtepKesO7IDlaR4C2cjQ2KwztTel3XYEePoMTA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=QnDFlnnqXjdf8W9/XTU0JknxQCkE1zMQbgsLXDH4ZL8=; b=JK6Mzm+2ckuaKLCi5dchPZSsFnmlcajp7NccM5nkpLnzGATnVKkNPMHLSb42ZAHpAiuyc6JRDEEZIMxaz1dJb4JuOXMMCvNIVy06wUTouOlrY6BfdwThe7FHWKYoWgzuZat3f1t5Ts3ZbU8wjxLtu4OJM/w4bkaLGS9fUOpza0ybEcgbC6gnY16/WsZG1s3JHKNzpmPJiAGd98dvG03jAdTm4wH5w0pMkRYJCFVNxGH5Jx6+w5mTu4i4XbKE+i9h1GfduHxSKeGImuDQTWBN2N47Nz9FgASnX0lSV1xV7LNRF3q4iYJTAms72BfcyZ0PERj9Dyy7DQ+NEA46niLn4g== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <654c9925-565a-80d4-5e93-129f6f0f691a@suse.com> Date: Mon, 26 Jun 2023 08:00:44 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v3 15/52] xen: make VMAP only support in MMU system Content-Language: en-US To: Penny Zheng Cc: Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk , Andrew Cooper , George Dunlap , Wei Liu , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Chen , xen-devel@lists.xenproject.org References: <20230626033443.2943270-1-Penny.Zheng@arm.com> <20230626033443.2943270-16-Penny.Zheng@arm.com> From: Jan Beulich In-Reply-To: <20230626033443.2943270-16-Penny.Zheng@arm.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: BE1P281CA0096.DEUP281.PROD.OUTLOOK.COM (2603:10a6:b10:79::8) To DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AS8PR04MB8056:EE_ X-MS-Office365-Filtering-Correlation-Id: 61f4bce0-a630-45d2-4c06-08db760aafb9 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 3zGRTvaGL862eGNDmohaoUXYZdOF6hEZDYIbWqAd1v2YRLenC1WMCTqAZfDsVgIjVnS0pyPxwcnh27RBxIfhLIREvAY/YsPg+s56S25+anmQkEMl0hh+hVTz0diAoGAd90I3D5QsqIjm99sMcPypo2OrHy8koDgCjFQtZv67QSdvlFeKft1E6A4PabaWWK9cckrN/aORrN5vzGUW+yvcAE13rbv5GYSW5AZ3RRvD1+Zn19VDnYvWTaYkOm4NjxUnYUWaxzpMSriKD4ODDQp2keBw3yqKoN5XqNvg6rp0tPZR8x3svOSYf/zZWekyM6J5XGTcopCLhFe5F0AijXk8GsgWOFSmFM83DO+V7/qibVCZdNWsnRt21zknTVGJ6wDRyUcokmdd8BOuk1cCWFAsUXj0OySlQFXb6A1CVlHUfSEkcLOx/m8m5ev+q2F8BkOga9Ox1Xt4CskgT6ar3J7QeAEYZUavpvQU7Xw/SRbGDSsl1CA3JwRzOZVuFPFiwhPgwlWGn9xd+sUTmDJCGOV1ZaHDfk+l6NXTgsQpFUkUSiqEk9ppEN74X7LqfmXAhSqCABnnSYv5XnD25nac3PedIk5+scv1PBFmCaTUkGjQJzxFo/AQ48J702fWSOQGbqlbR6RxTQFThHskAryqdrKy0g== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(346002)(39860400002)(396003)(136003)(376002)(366004)(451199021)(31686004)(36756003)(5660300002)(7416002)(41300700001)(316002)(86362001)(66476007)(6916009)(8936002)(8676002)(66556008)(4326008)(38100700002)(31696002)(66946007)(6486002)(6512007)(26005)(6506007)(53546011)(2906002)(186003)(478600001)(54906003)(6666004)(2616005)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?MU4vcHJ4V2k2cWJ6dVh0M2hDWkw4eHY2RFRLWDZhNjVTdTVaM3d0ekxJRnly?= =?utf-8?B?bEt5U0FzeHlBU0ZyTlVySENSbHpKQVRObWw3ZTNVTVBnT1RLZ2kxNFFIK093?= =?utf-8?B?cUNsUU0zTWFQNFpTY05CK2lBcmhLOEZEQVNkVGE4VU81YlVMV1R6VC9NZTN1?= =?utf-8?B?M1o0QVMwSGdpUXV2bGRsTXlLQVI1Mkp1bnZSS1JMMXFsalA5RmpxSW12ckdM?= =?utf-8?B?RDlNc21KOU9ucGVodE53cjNtNHQxU2hUZ0U4ZE9mZ2kyZ3c2Y0ttblgxR29n?= =?utf-8?B?dC9vaXlMWWxxZytlY08vUEJPQTJEVE9UbE5hQ0RmMzRoMFFJYkVMWkRVWmlH?= =?utf-8?B?M0tPR1JMbm81M0dYclVUQ01VejVqRWJNRFV3eTZQNW1Pc3B0aXpEWlUrUHRj?= =?utf-8?B?ei84bTVDaHlWNkVxSU1udUczMFpvK3VwT00zNUt6UWlJdXM4bGd3RGtKWENy?= =?utf-8?B?UEZsY3lwRlQrNUhydVNvQlhsZmNBcUM4Z1FSQjZ0RTM4ZG5CU3JDdUw4aVNj?= =?utf-8?B?UmpBU2t4dU1FWG4vbVhQWG1mMENyaTlzYk8zaUZWQ2lwYjZGcGdZY3hCYWhE?= =?utf-8?B?WjN3K1RSY1FqTW1FWjRSWmVQZE5xT3pMc2o0NFo5b3dhWXhYN3lmYzZ5djky?= =?utf-8?B?TEpQVU04RnozQVljWERBQjRjMTh4NXhSTGMvRmFpMFVsVlFsUGl4QzN1bGJM?= =?utf-8?B?Nk5DSk1TU3NlQjFIS2dieER1NmhLSFhteDVhYVNHMkh3QUR3bEdDeUF2b3dL?= =?utf-8?B?R0haZ1dseTF0MmFPY0N6Sm9YWGlXbDc4NzhqUEdhOHl1V3lDMUFQVElqQzJm?= =?utf-8?B?Z1dBYVErZXhINUZiQW5adG9PTkZBY3YwazBaREdyM2VzOXVBM2VmRVhIS3ly?= =?utf-8?B?YW5sMThZWVJXQmlhZHdWM09FUm1CUlpxTnk2ckdQb2xXSTFZa040bEowb1RC?= =?utf-8?B?eUFXRWFpVFNEZlllb3RYS3dTd3o4N3dqRXdoTVl1cGRkN2dWM0xvbEdaOE5X?= =?utf-8?B?V05nMFU1TGc2RFE2bmdxb1krS0hBblk4Wm9Xd0w1QzF0L1hWd1ArOHBUVnpW?= =?utf-8?B?RTc2Uk50V1NwT0dqdlc4WnhhNHNHeFl2SzFnWTQwU3ovaGN5MmQvdm05S0Ir?= =?utf-8?B?OGVWbGgxNjNXUVAxUnJqUGFvNXlzaUJKaHI4Q1VxdEwrQkpsQmlmUkpDUldt?= =?utf-8?B?b28zWGwrL0VRTG5ZSkhxUVBSYUJONFZmWjl5YTFodkh1ZTJJMWNLSHlRZ0Fj?= =?utf-8?B?SkhpNC9ESnFGelJxdXBhK0hzMzZkcE5NbVR6NG1QaENZdEhWclpHR0Q1RzZw?= =?utf-8?B?MDNSaXVYVlRjV0FXZVB3Uk1RcXZRR0NWcy90Z3NKUWl2OXU4VkF6NFBLbnA1?= =?utf-8?B?WnJORDZocVd2N0pjUHZVSU9kV1dGbXBFSWh3Y3F0aTFOSnBOVmVRUUNLU0o2?= =?utf-8?B?dG9OWllwbzYvMjNEajJQWm9Ub1VaSE9Qdyt0R1JNUEFzNnA1KytoSGtGUXU4?= =?utf-8?B?MjB3TzZkMlpnZE1JS2ZOQUoxaFIwakNSWmJoU1B6Qyt1QzdMZklXL09JV0VZ?= =?utf-8?B?blRMOFZSOGIycTlDQXpkSm5RNmR6ZVUvT1NmYmZ4UmFId0FuOGF5TWh5MVpk?= =?utf-8?B?eG9obTRRQzNiRnZXc2FYSEJ2ZzJsUzVkd2l0Mm85emJHVm5BbmdCQ3NrQWph?= =?utf-8?B?ZTVxMzJWQ3JhZWM5SXRvZXgwVFdZbXN1MVFPREUxVmhsSG5HUWhLV2FEcVhq?= =?utf-8?B?azAwQUQ5clJLMGxRMmZFdE5ieFllSW4wY0x2MS9IeHNhd21oMTBsR3l2ZG0w?= =?utf-8?B?dG12K1JEbm5IY210dlkwRkdxSWN2a05JbkkwWHZIYTdLOEt6OGtnZFhsMUpw?= =?utf-8?B?bEx2bkhZNi80TFhUZkx1Rnp2NjBkbTl3a3hXNzNLYnZtRVE1ZFkrN2gvSjha?= =?utf-8?B?c2dnbDFJUmszVXlCU3RDWDg4Zmw3ZmZKRlFTYVhmRWZGTFNJTjkxSU5SS0xW?= =?utf-8?B?TFA4YVZ0bEQ4Ym0rbG1KZWNvOSs3aFNOQlRHeTMzTHYzNUk5bnpXS0tOVzBm?= =?utf-8?B?UkFoeU95d2hpYzBuR3pGT291QXBnaURSSWZEd1l5UUlQYWRjRG9vci9CSytC?= =?utf-8?Q?kego7cl3Pbca0QXiVZzWMmhPW?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 61f4bce0-a630-45d2-4c06-08db760aafb9 X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Jun 2023 06:00:47.4833 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: aq2aBZq76/UjtC9s7RyvT+tsLeqQFvIozNUfg4zayxPsOFL9Do3NJo/7LoJr9deR+ChAZUCLG9Xg1gnhfMs1Uw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB8056 On 26.06.2023 05:34, Penny Zheng wrote: > --- a/xen/arch/x86/Kconfig > +++ b/xen/arch/x86/Kconfig > @@ -27,6 +27,7 @@ config X86 > select HAS_PDX > select HAS_SCHED_GRANULARITY > select HAS_UBSAN > + select HAS_VMAP With this being unconditional, ... > --- a/xen/arch/x86/setup.c > +++ b/xen/arch/x86/setup.c > @@ -1750,12 +1750,14 @@ void __init noreturn __start_xen(unsigned long mbi_p) > end_boot_allocator(); > > system_state = SYS_STATE_boot; > +#ifdef CONFIG_HAS_VMAP > /* > * No calls involving ACPI code should go between the setting of > * SYS_STATE_boot and vm_init() (or else acpi_os_{,un}map_memory() > * will break). > */ > vm_init(); > +#endif ... there's no need to make this code less readable by adding #ifdef. Even for the Arm side I question the #ifdef-ary - it likely would be better to have an empty stub in the header for that case. > --- a/xen/common/Kconfig > +++ b/xen/common/Kconfig > @@ -15,6 +15,7 @@ config CORE_PARKING > config GRANT_TABLE > bool "Grant table support" if EXPERT > default y > + depends on HAS_VMAP Looking back at the commit which added use of vmap.h there, I can't seem to be bale to spot why it did. Where's the dependency there? And even if there is one, I think you don't want to unconditionally turn off a core, guest-visible feature. Instead you would want to identify a way to continue to support the feature in perhaps slightly less efficient a way. > --- a/xen/common/vmap.c > +++ b/xen/common/vmap.c > @@ -331,4 +331,11 @@ void vfree(void *va) > while ( (pg = page_list_remove_head(&pg_list)) != NULL ) > free_domheap_page(pg); > } > + > +void iounmap(void __iomem *va) > +{ > + unsigned long addr = (unsigned long)(void __force *)va; > + > + vunmap((void *)(addr & PAGE_MASK)); > +} Why does this move here? > --- a/xen/include/xen/vmap.h > +++ b/xen/include/xen/vmap.h > @@ -1,4 +1,4 @@ > -#if !defined(__XEN_VMAP_H__) && defined(VMAP_VIRT_START) > +#if !defined(__XEN_VMAP_H__) && (defined(VMAP_VIRT_START) || !defined(CONFIG_HAS_VMAP)) > #define __XEN_VMAP_H__ > > #include > @@ -25,17 +25,14 @@ void vfree(void *va); > > void __iomem *ioremap(paddr_t, size_t); > > -static inline void iounmap(void __iomem *va) > -{ > - unsigned long addr = (unsigned long)(void __force *)va; > - > - vunmap((void *)(addr & PAGE_MASK)); > -} > +void iounmap(void __iomem *va); > > void *arch_vmap_virt_end(void); > static inline void vm_init(void) > { > +#if defined(VMAP_VIRT_START) > vm_init_type(VMAP_DEFAULT, (void *)VMAP_VIRT_START, arch_vmap_virt_end()); > +#endif > } Why the (seemingly unrelated) #ifdef-ary here? You've eliminated the problematic caller already. Didn't you mean to add wider scope #ifdef CONFIG_HAS_VMAP to this header? Jan From xen-devel-bounces@lists.xenproject.org Mon Jun 26 06:16:08 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 06:16:08 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555320.867000 (Exim 4.92) (envelope-from ) id 1qDfW4-0006jX-W0; Mon, 26 Jun 2023 06:16:00 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555320.867000; Mon, 26 Jun 2023 06:16:00 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDfW4-0006jQ-TB; Mon, 26 Jun 2023 06:16:00 +0000 Received: by outflank-mailman (input) for mailman id 555320; Mon, 26 Jun 2023 06:15:59 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDfW3-0006j1-Bh for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 06:15:59 +0000 Received: from EUR03-DBA-obe.outbound.protection.outlook.com (mail-dbaeur03on20607.outbound.protection.outlook.com [2a01:111:f400:fe1a::607]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id e90f4b80-13e8-11ee-8611-37d641c3527e; Mon, 26 Jun 2023 08:15:56 +0200 (CEST) Received: from AM6PR08CA0037.eurprd08.prod.outlook.com (2603:10a6:20b:c0::25) by DB9PR08MB6651.eurprd08.prod.outlook.com (2603:10a6:10:26e::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.26; Mon, 26 Jun 2023 06:15:52 +0000 Received: from AM7EUR03FT008.eop-EUR03.prod.protection.outlook.com (2603:10a6:20b:c0:cafe::b7) by AM6PR08CA0037.outlook.office365.com (2603:10a6:20b:c0::25) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.33 via Frontend Transport; Mon, 26 Jun 2023 06:15:52 +0000 Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by AM7EUR03FT008.mail.protection.outlook.com (100.127.141.25) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.15 via Frontend Transport; Mon, 26 Jun 2023 06:15:52 +0000 Received: ("Tessian outbound b11b8bb4dfe8:v142"); Mon, 26 Jun 2023 06:15:52 +0000 Received: from 1717989c256a.2 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 3360613E-57D4-472E-AF95-C1D121F9736B.1; Mon, 26 Jun 2023 06:15:41 +0000 Received: from EUR04-VI1-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 1717989c256a.2 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Mon, 26 Jun 2023 06:15:41 +0000 Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15) by PAXPR08MB6606.eurprd08.prod.outlook.com (2603:10a6:102:157::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.24; Mon, 26 Jun 2023 06:15:39 +0000 Received: from AS8PR08MB7991.eurprd08.prod.outlook.com ([fe80::1024:cf14:d520:9b38]) by AS8PR08MB7991.eurprd08.prod.outlook.com ([fe80::1024:cf14:d520:9b38%7]) with mapi id 15.20.6521.026; Mon, 26 Jun 2023 06:15:39 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: e90f4b80-13e8-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=jeo8+7oEOCBoHb+Ou1kIWqrZIsHIYMZD/l8MLXVWJ1Y=; b=mu39aMlEorKmiITccQ8gpNQZWhdO1GfXrtqUEkQjM4+/J+DygHtCTdHAeA0f3h8TN/xKRtS0rNpe7sp67RK0pb7BNzHzE5VdhqP7p8NhMwXxxIb9DkkjARdV1fOjMD4GspUcnKYWalKxM5IJuWAwdwVeBN8Lly6XJdDMP01/Muo= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C X-CR-MTA-TID: 64aa7808 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=j2bpVU+w3N73tg1dQYVHMydXKdZ1qX4ieIeJ7bT7mqHQEmFRFhbuRtGNkINkGhWWTh4/e0Jd/ciUeqGDx8vBkmKlIXVqv/haz412peslVYb5DdZYdLBa8ZikLr9gx6GaFMdRu+gL5GF+a8dTklx74SfXzLR707zUuVLYtmMBSvWB8CUbyp/crdtxun7/Y+bqQf5zgOkJLDd5r6kQg8gmr1/OoM2xiiNICtL+zWZXTAofrHYA+S+D9L6d7H6BeeOFylXGd4O+vS592JROD/75sXfbAMponna5pm3auwgBvSnWTqq3SH8xVvKd147PwCelOMCyqEk/KqHYiUpwvNgm6w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=jeo8+7oEOCBoHb+Ou1kIWqrZIsHIYMZD/l8MLXVWJ1Y=; b=Zz40m5K9Qc24FABUlSyMRIDiiZZS/sYJdB8RsIUo1LgidH7Nr7Brwkri7DcNJwmXHOUOG8a9brVlUndXaBQigLuZGCEmvPUxnIiJrbn8BDYFnIGijfJUvYonDjeblFSsamccZxpQDszdwXNWRYhwznxC9VRSB5nP3ogw7ONzHnB69p7r2JcYaFMs5vRjzNQSnKkJP3bdXYkL2JKMuw2XjWgbLkuw8vg3pdR4gme4FcARCn7/NmeJkyeq1Egcc1DGrXS1VGS4iWVaqPoHOQ12o1dOeyUdGo6iDsl7T4aKAnTyxxmVS8Lc8MPiYfdgufv+x02pusPstExxAjIEHd3IBQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=jeo8+7oEOCBoHb+Ou1kIWqrZIsHIYMZD/l8MLXVWJ1Y=; b=mu39aMlEorKmiITccQ8gpNQZWhdO1GfXrtqUEkQjM4+/J+DygHtCTdHAeA0f3h8TN/xKRtS0rNpe7sp67RK0pb7BNzHzE5VdhqP7p8NhMwXxxIb9DkkjARdV1fOjMD4GspUcnKYWalKxM5IJuWAwdwVeBN8Lly6XJdDMP01/Muo= From: Henry Wang To: Julien Grall , "xen-devel@lists.xenproject.org" CC: Luca Fancellu , "michal.orzel@amd.com" , Stefano Stabellini , Bertrand Marquis , Volodymyr Babchuk Subject: RE: [PATCH 1/9] xen/arm: Check Xen size when linking Thread-Topic: [PATCH 1/9] xen/arm: Check Xen size when linking Thread-Index: AQHZp6aLOomj+n7mMk6Gpm2cByrsNq+cmVMw Date: Mon, 26 Jun 2023 06:15:39 +0000 Message-ID: References: <20230625204907.57291-1-julien@xen.org> <20230625204907.57291-2-julien@xen.org> In-Reply-To: <20230625204907.57291-2-julien@xen.org> Accept-Language: zh-CN, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ts-tracking-id: 663328E82D655D4A82A267F93F7C0BC3.0 x-checkrecipientchecked: true Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-traffictypediagnostic: AS8PR08MB7991:EE_|PAXPR08MB6606:EE_|AM7EUR03FT008:EE_|DB9PR08MB6651:EE_ X-MS-Office365-Filtering-Correlation-Id: 7c81c840-cb4b-4113-e15b-08db760ccb4c x-checkrecipientrouted: true nodisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: 3X5xYzCwrURogBEXfiZbH3EOZf4wpjGvzYoTUZAcK0+hSsDL3C3fuMUPS1Yu7SAPLgJTwVfPyBSN4wm5T5MxE/q5GHxZ4Y3VDhZm5TTLq5JZSiZwX3ml8b3ENvYPOUPGtdqnHyfMKrsvAF32VXpRP3aAjktYv4FBpiyNj+U7VitaNKnnMeQdF/MVWC3qKa8em0qXyVgoJEiQgbF5Yuqqu4+4EDyVQGr0Mr4oOJFcNJD1NdrBxKBn+lzoHkae8R0h6yIvh3j9kX7TcFFZOow5etfCNx4J/p6+ILci40FVKbsxRnAjuQy6/nRbN4nLbEpwtaUAsFFkCg42B3mebhDDQUypHlpcQH+qtfsLprSoH2pWqm1ohPux2BgnYvH8OhG4FmuyceZd5Kk9HzTvKW5I7fFrrGAANqMVtzuxb+OQkIha+ADKzOfyNmJQLVdvKKVKukUjdgt/217FeibOV/OvfCAxkLLJqi1yfCuCiXewSpjzRNE1vXc/Gyd5WcjBq9EggkpGHrZ1TJJVrEsCsVjyw9a7xL4zLIpRzJ3MvN9NjfI8s+mhe5ZLIdSBscXjydKeaqDw6H2p2/k+IKLVAmPcDxCKjC7sO+X77w88bncxk4o4Un0op9iETXPPaRvAnbMN X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB7991.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(396003)(39860400002)(376002)(346002)(136003)(366004)(451199021)(26005)(2906002)(4744005)(186003)(71200400001)(38100700002)(122000001)(9686003)(6506007)(52536014)(5660300002)(83380400001)(8936002)(41300700001)(76116006)(64756008)(66946007)(66446008)(66556008)(66476007)(8676002)(33656002)(55016003)(38070700005)(54906003)(7696005)(86362001)(478600001)(4326008)(316002)(110136005);DIR:OUT;SFP:1101; Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR08MB6606 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: AM7EUR03FT008.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: 11663982-5b2e-4b24-7adf-08db760cc34f X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: GNauEhFDo2mteWW+cGyFa2PXED+w9Y2zUhqPyF88eibr77b9OnV0B4CJXsQ+3qbY9F/h8s2FrsMaJSS3b3rJjIKk9iTP5oEYc46wBmmF9QinRBrfwuHn9U7E6LGQakMaA8YTvec7yHZrvP73JPs92ErFim4+UIkMAPlr9P+c3FQSAjZ7Gz3iWHSRV/wmSCI1UsSG3Yt+wI/JjTZCBY7MUvJhRQhuzduC2vMgPfvR6ZeWki7xo4oal0fQmUd9I39P2etdgAFPREooJgDWSo2sqleo/wf8Cw9qSk1Gjsue36H/8Yvw4eEmz+vd5c1Imb2RQfHbHQfianGjDSBSeyjnbdVJdDM5GErkpyZAUdJ1nztPP/Icr8VBmwr13Z9slXkOTgon59AnQHROleF023KVcQr4l+lliwh6Q1z3rEXHPCfaPrnRQlWaF84hDcjjsthQgp/eHNE3YgKZitLd2v5d7l4BCMxQDiLaTCBq6dsN2Y8Aw9NcY/1aCV37MIfbAqC+KfWnl0ogK8D3PIVLbw9Wp+3P1h2n3Ry3yq7Bf8HFdzt4KUvmXFqidHQIr2NMQZJBWwRcq6fOScoa/+Wl+EwN5bc94S0YorLTP8Zm4qcXHd0uIANWuSIwcUKBp1drfDJKXIJeEdsH8OdKp//Xr1H6wuki6fP1ngJ9jf/W3WStkPksBB6NaFhzOCYRN5yLo9bBHOtqV7xKCpeKhjpYVFUBT3dQKxBVgcHOG+p4hVochOm0oACkDTrWHuP7pvxrA4Jw X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(346002)(136003)(396003)(376002)(451199021)(46966006)(36840700001)(40470700004)(81166007)(356005)(82740400003)(47076005)(83380400001)(33656002)(36860700001)(86362001)(478600001)(110136005)(9686003)(54906003)(7696005)(40460700003)(41300700001)(70586007)(55016003)(316002)(8936002)(70206006)(8676002)(336012)(6506007)(4326008)(26005)(107886003)(186003)(2906002)(82310400005)(40480700001)(5660300002)(52536014);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Jun 2023 06:15:52.4930 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 7c81c840-cb4b-4113-e15b-08db760ccb4c X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: AM7EUR03FT008.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR08MB6651 Hi Julien, > -----Original Message----- > Subject: [PATCH 1/9] xen/arm: Check Xen size when linking >=20 > The linker will happily link Xen if it is bigger than what we can handle > (e.g 2MB). This will result to unexpected failure after boot. I found this a little bit misleading because when I looked for XEN_VIRT_SIZE, I am having: #define XEN_VIRT_SIZE _AT(vaddr_t, MB(8)) May I please suggest it is better to keep the example in commit message consistent with the actual value used in code?=20 >=20 > This unexpected failure can be prevented by forbidding linking if Xen is > bigger than the area we reversed. I am not sure this is a typo: s/reversed/reserved/, but I find the current sentence a little bit hard to understand. >=20 > Signed-off-by: Julien Grall Both comment above can be fixed on commit, so: Reviewed-by: Henry Wang I've also tested this patch on top of today's staging by our internal CI, and I don't see any build error there, hence also: Tested-by: Henry Wang Kind regards, Henry From xen-devel-bounces@lists.xenproject.org Mon Jun 26 06:38:24 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 06:38:24 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555324.867011 (Exim 4.92) (envelope-from ) id 1qDfrT-0000n1-OG; Mon, 26 Jun 2023 06:38:07 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555324.867011; Mon, 26 Jun 2023 06:38:07 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDfrT-0000mu-Lb; Mon, 26 Jun 2023 06:38:07 +0000 Received: by outflank-mailman (input) for mailman id 555324; Mon, 26 Jun 2023 06:38:06 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDfrS-0000mo-Sn for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 06:38:06 +0000 Received: from EUR05-DB8-obe.outbound.protection.outlook.com (mail-db8eur05on20601.outbound.protection.outlook.com [2a01:111:f400:7e1a::601]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 00dd9c50-13ec-11ee-8611-37d641c3527e; Mon, 26 Jun 2023 08:38:04 +0200 (CEST) Received: from AM0PR10CA0084.EURPRD10.PROD.OUTLOOK.COM (2603:10a6:208:15::37) by DU0PR08MB8115.eurprd08.prod.outlook.com (2603:10a6:10:3eb::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.26; Mon, 26 Jun 2023 06:37:51 +0000 Received: from AM7EUR03FT024.eop-EUR03.prod.protection.outlook.com (2603:10a6:208:15:cafe::75) by AM0PR10CA0084.outlook.office365.com (2603:10a6:208:15::37) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.33 via Frontend Transport; Mon, 26 Jun 2023 06:37:51 +0000 Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by AM7EUR03FT024.mail.protection.outlook.com (100.127.140.238) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.15 via Frontend Transport; Mon, 26 Jun 2023 06:37:51 +0000 Received: ("Tessian outbound 7c913606c6e6:v142"); Mon, 26 Jun 2023 06:37:51 +0000 Received: from 69f9ac3a6256.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 9F3C3845-AFD6-41F1-9E57-8DCF8B967F34.1; Mon, 26 Jun 2023 06:37:44 +0000 Received: from EUR01-VE1-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 69f9ac3a6256.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Mon, 26 Jun 2023 06:37:44 +0000 Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15) by DU0PR08MB9902.eurprd08.prod.outlook.com (2603:10a6:10:476::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.26; Mon, 26 Jun 2023 06:37:39 +0000 Received: from AS8PR08MB7991.eurprd08.prod.outlook.com ([fe80::1024:cf14:d520:9b38]) by AS8PR08MB7991.eurprd08.prod.outlook.com ([fe80::1024:cf14:d520:9b38%7]) with mapi id 15.20.6521.026; Mon, 26 Jun 2023 06:37:39 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 00dd9c50-13ec-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=ferisvNy9e27IgA7vh9aB23Z45vU94YrxS3hYrKPy2o=; b=MxZdoRh31LhKw0+7NyzutzmSe/JnCrXZ6SlH5Mi1O3aV35RFmGj9Gykkx1OH64k5pMfs9etrpKMCt3EW62Pu17KfbHAZgkctL3clQ4bWhGhsw2WQuaFoU/Nd4Id/9p0qyOvHTV+kT7U3Z4cJJuoFl34bo5soH3C+GCKZ2M61Iug= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C X-CR-MTA-TID: 64aa7808 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=iUflJLn2vN8y2noQtLqF4JznwEbryLhTQTNLXrUfSE6YpVi3ePiAYoNYwWVGVtUu4xs/L1OFkE3bUQA9Dv5U2fdfx39aS1lKjmaf6gjlx0cMU9OSu5lk93RPAS516v2SZ7yDP2PUOzLsoysj3ITixQxCFwi2nB7SIJITKX99mbS+cBFovP+kKJyAT2nVMBxQaUPtpettmnKoiEV1vph7IlxWbmmbl+S8BTTxlDIiwLtyrq0FfmqNAEW+kBEjrmH5ws+GS/4aC7FU56pTpqfWWolb3wMdxpJsK/7RF8vlyHYW13nxCQZHCz4HwNMdGpkeupyY0huMnh10EKvUlcktgg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=ferisvNy9e27IgA7vh9aB23Z45vU94YrxS3hYrKPy2o=; b=SQ6GNGgwndJf3ARm7/ZquU8sQi9V69/CuVj3pP6i3AsYPXZAXmNcPH7CaugaVc5jvFgvQJuKys/hDP19VTS4XG46ue72z2h9WvEtMBTeUeNBTVIuAqWEKLPi9ArcV2FCwMMZEp2qO4UIJQ1/lppdX7C6Z1f3Y05Zpl22VsJktR2FySAwBRjhmTvU0SZYFs/CaYivtbvsgkgEuDO15tZGeszuIxYraQP1oD8Bz0YrxTXDNfshtLfH3cGGNW3T57RWEkaqfjTnd2efdSDIL0nrbyeaAlO/dkGi/nJSwS0+ZS7KYtQ/RHriK0wkRlVd8x5VylBuowy69TchR3pqHWNG6w== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=ferisvNy9e27IgA7vh9aB23Z45vU94YrxS3hYrKPy2o=; b=MxZdoRh31LhKw0+7NyzutzmSe/JnCrXZ6SlH5Mi1O3aV35RFmGj9Gykkx1OH64k5pMfs9etrpKMCt3EW62Pu17KfbHAZgkctL3clQ4bWhGhsw2WQuaFoU/Nd4Id/9p0qyOvHTV+kT7U3Z4cJJuoFl34bo5soH3C+GCKZ2M61Iug= From: Henry Wang To: Julien Grall , "xen-devel@lists.xenproject.org" CC: Luca Fancellu , "michal.orzel@amd.com" , Julien Grall , Stefano Stabellini , Bertrand Marquis , Volodymyr Babchuk Subject: RE: [PATCH 4/9] xen/arm32: head: Remove 'r6' from the clobber list of create_page_tables() Thread-Topic: [PATCH 4/9] xen/arm32: head: Remove 'r6' from the clobber list of create_page_tables() Thread-Index: AQHZp6aNphiDCO/BkkCsUZAyj9Agbq+cof4A Date: Mon, 26 Jun 2023 06:37:39 +0000 Message-ID: References: <20230625204907.57291-1-julien@xen.org> <20230625204907.57291-5-julien@xen.org> In-Reply-To: <20230625204907.57291-5-julien@xen.org> Accept-Language: zh-CN, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ts-tracking-id: 6F1BCC4FCEFEB34A813AE2D32025DEEC.0 x-checkrecipientchecked: true Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-traffictypediagnostic: AS8PR08MB7991:EE_|DU0PR08MB9902:EE_|AM7EUR03FT024:EE_|DU0PR08MB8115:EE_ X-MS-Office365-Filtering-Correlation-Id: ee5547a7-787f-449f-2ef2-08db760fdd53 x-checkrecipientrouted: true nodisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: Ink96l/CR18FOe+XOexTijxSnmkepad9NBfl+5JulJOE07UNF2g8bRPM77gOPU2oEaAtlXE7h3JDlVbo63h2OM8VcPOW/mmqHEqB1HR35LzzXvtN5BYYUYfNkY6O2pMgShpJQmtGENlf2WL7vrnGbKdDfmr+ZvmR01ecIf4FrkCk9OjthZsOpTNMBezgiTlrHmJ1FSJRvY071B36s3LOnTnNIzPtNp9aJpFJmN1j7J/E4wUBQSR4UK72HXLck+TK7pwtJxCY1XNIsHFqVxy6oR0frRwJLOfscBNlub3T5wf0HgEHTM3BWqdms9ikexzEMtgHNf0+EbgL0jcGXzatH3L4ayhq9uhgakut6xRwE2cVaBQrjqkwUWQ/XpbiwnWmN8omqwgA6uSDRAuMhrpVL/iG90qaiE04pomVVqEPK+/1o0HQbSkgwqSYi7DkWigzDSbsNN/rLtBjHKQApkxegIRtfE6selV577MHRnqGKDTLXBMQxYLp9WMzgkhaqA6q0WZKhyx41n3dVbeLASKZgzBPPXeGYKnvPOUYf6qTaAm+/IwLh8dLwSKnjZgKNkUiWU6ZlRquIbaYuuKKyEwayxtqmfANBnvgcmvDKLSxK4lilYGeht0ZSM6TsfyMs8kj X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB7991.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(366004)(376002)(39860400002)(396003)(136003)(346002)(451199021)(26005)(33656002)(5660300002)(52536014)(8936002)(66556008)(8676002)(66446008)(4326008)(41300700001)(38070700005)(64756008)(86362001)(66476007)(38100700002)(122000001)(76116006)(55016003)(316002)(66946007)(6506007)(2906002)(4744005)(9686003)(186003)(478600001)(7696005)(71200400001)(83380400001)(54906003)(110136005);DIR:OUT;SFP:1101; Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU0PR08MB9902 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: AM7EUR03FT024.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: 86a12a24-3793-41a3-5281-08db760fd677 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 9nOe7qZy1nu5Ps9W+1O1zL7Aw6x3yQT+q8f6YI25HfaqCfPmIAEuTtaKLzQ1g4RR6BOa8+Lp65RZPLV1lr0uVUqJiK7a6RBP+RdZ/yj6lE2L2T4fn3Sjmh3hcuNg8szbdTpzwPuudiEQehStHb3dN8NOEVHAqm/6bZHqxX+A4FA4aOtCHS5hm4aopsUKum5W3iaYNMvJKMwRlmyoygWo+EnGY3AKZBOhdW8gAVgUOaTKGwdgpSlzu9Wn3S3rIFmPkSKtRqqsGNBcUhONwB8HpBnybllrU6rApzDZLVM8J6CU6scxUdebhAwaO7v4U6+Npbi7SIFY3czcWcI2u10j5rt32GwhdgWnWvGG9DuJEjioZnXbmFU0lnndRKzxRmCETfN+BV23649eTzvFeYpRUk4OO8fE1o/xlFWb611M4KaQBNWtcXJa2LnsOIliekwh23+Wcn/k4V3mDkuGl/tazEQtWVNH1vGz6kPOxgE7F+md+WMvQmXBF33qrJFCxZ0Bo2B09GRvW5fiYbRgG7eZGMSIr1bYtsA2R+PLfoIIF+40qSJNPMIrrvOcr5Ztw61rTfjmU90oQwNWDXcjsWUhwaN9rD5bCTP1t339J9bpTzVn5hTv+pvOCXJOuoHREGBmjdzMZhh3cM3bRBpQF6SYyrTUMf9h3J3Vkd8FxBfg9HkAMf1UuZVYbb/hQddzL/JeR4nJ6gkcXYvUvOPO6WmTVCwv4x9s4W1fO0qR8ApH73JZZSX9VifvylimPqfhWQP6 X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230028)(4636009)(346002)(136003)(376002)(39860400002)(396003)(451199021)(46966006)(36840700001)(40470700004)(5660300002)(52536014)(33656002)(70206006)(316002)(70586007)(4326008)(478600001)(8936002)(8676002)(40460700003)(55016003)(36860700001)(40480700001)(86362001)(110136005)(54906003)(41300700001)(7696005)(82310400005)(4744005)(2906002)(9686003)(186003)(336012)(6506007)(26005)(47076005)(82740400003)(356005)(81166007)(83380400001)(107886003);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Jun 2023 06:37:51.2391 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: ee5547a7-787f-449f-2ef2-08db760fdd53 X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: AM7EUR03FT024.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU0PR08MB8115 Hi Julien, > -----Original Message----- > Subject: [PATCH 4/9] xen/arm32: head: Remove 'r6' from the clobber list o= f > create_page_tables() >=20 > From: Julien Grall >=20 > Since commit 62529f16c8a2 ("xen/arm32: head: Use a page mapping for the > 1:1 mapping in create_page_tables()"), the register 'r6' is not used > anymore within create_page_tables(). So remove it from the documentation. >=20 > Signed-off-by: Julien Grall Reviewed-by: Henry Wang Kind regards, Henry From xen-devel-bounces@lists.xenproject.org Mon Jun 26 06:44:16 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 06:44:16 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555330.867021 (Exim 4.92) (envelope-from ) id 1qDfxG-0002Iu-Fv; Mon, 26 Jun 2023 06:44:06 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555330.867021; Mon, 26 Jun 2023 06:44:06 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDfxG-0002In-D9; Mon, 26 Jun 2023 06:44:06 +0000 Received: by outflank-mailman (input) for mailman id 555330; Mon, 26 Jun 2023 06:44:05 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDfxE-0002Ig-VP for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 06:44:04 +0000 Received: from EUR04-VI1-obe.outbound.protection.outlook.com (mail-vi1eur04on061f.outbound.protection.outlook.com [2a01:111:f400:fe0e::61f]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id d6bbb829-13ec-11ee-b237-6b7b168915f2; Mon, 26 Jun 2023 08:44:03 +0200 (CEST) Received: from DB9PR06CA0003.eurprd06.prod.outlook.com (2603:10a6:10:1db::8) by PAWPR08MB10168.eurprd08.prod.outlook.com (2603:10a6:102:365::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.23; Mon, 26 Jun 2023 06:43:56 +0000 Received: from DBAEUR03FT059.eop-EUR03.prod.protection.outlook.com (2603:10a6:10:1db:cafe::62) by DB9PR06CA0003.outlook.office365.com (2603:10a6:10:1db::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.33 via Frontend Transport; Mon, 26 Jun 2023 06:43:56 +0000 Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by DBAEUR03FT059.mail.protection.outlook.com (100.127.142.102) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.15 via Frontend Transport; Mon, 26 Jun 2023 06:43:55 +0000 Received: ("Tessian outbound e2424c13b707:v142"); Mon, 26 Jun 2023 06:43:55 +0000 Received: from f56bda53f7c8.2 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 2C37B6FE-FD5F-4A34-9096-D86F580541D0.1; Mon, 26 Jun 2023 06:43:44 +0000 Received: from EUR04-HE1-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id f56bda53f7c8.2 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Mon, 26 Jun 2023 06:43:44 +0000 Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15) by VI1PR08MB10076.eurprd08.prod.outlook.com (2603:10a6:800:1bd::5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.26; Mon, 26 Jun 2023 06:43:40 +0000 Received: from AS8PR08MB7991.eurprd08.prod.outlook.com ([fe80::1024:cf14:d520:9b38]) by AS8PR08MB7991.eurprd08.prod.outlook.com ([fe80::1024:cf14:d520:9b38%7]) with mapi id 15.20.6521.026; Mon, 26 Jun 2023 06:43:40 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: d6bbb829-13ec-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=s/Kps7qecb5gahzM/SpqUwmWytmxzmEO6Mj21PiKjsE=; b=Ccoq3VtneGin40tHBZIG2p3jsnA8GVEP3FFnw74VgL6OOhFvGsJYKH9jH+0eSq6nEdHfqwsayBw6N9dyqoloGGXS2kz0ve8RICbo1kJwdiyMQ+GJVdL6vpdeAmbTC+QiydaxKGoe7/bWUfyKRc9anUe+c5NrSMm3Kjl6Ehue1NU= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C X-CR-MTA-TID: 64aa7808 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=YTgrrTxWctqjKr+e4b0F2zKTPBg5BXVXcfsI+bRTx8UZd2P1v0eHjKC/IphLOMOhF0Mb9JiUf3KNleD1r+InU+E/1gd3qD8JIeSV7xtLCBrfY1+1HyzTlckefeA+Dgv8b0lr6RhkCCipwk35F8BaVBQhQzX8kdRy9B7EpczyoqG47pgQYR1iTHtlqb7GOHeqKZ5nC7BoTbhOqr5pGeO5GQwWjI63cCkL1PBC523o7RtlWAWXz9oKOWM6I/Bapy/L2TKUsdGPcl6QYLxdiJHYc0XVx4OTPzcg60cHLor/DHLgxku8Ik8ixVLRK8j1UItuc5Mez2kkknS1Oca6jMJOtg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=s/Kps7qecb5gahzM/SpqUwmWytmxzmEO6Mj21PiKjsE=; b=mWnP8MGvmh30mflek3nvWho0Ucre8onv6rPwbqXNWtZIT4kl9TjvVcupsCefQhtEhwdnCzzZlp9WHgj8ZRLUrUJBisz626mqzmu8Wi/YcMimDb4Lcq6oVSJEq8/wPUr3U1M7Ca7DCgurBv7TQHc4IYt51ePnQz5qk5nYbJZ6YguNpQgnBxS0YMnIC7Ii2hQawPrkCk2aoulHM07idlYB9HVXNrREeh1ql5xf+PbOlSBcEBRlHnLHz9Sa6ucUlHx1OeG4VTMIV4if0uO/rtfRUgQ5s8qJLjpPUlR8fsqE6Gph2uT0NN8NZ4xMeP7U5jp/g5HynofCeGCMWvLtfUaxFA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=s/Kps7qecb5gahzM/SpqUwmWytmxzmEO6Mj21PiKjsE=; b=Ccoq3VtneGin40tHBZIG2p3jsnA8GVEP3FFnw74VgL6OOhFvGsJYKH9jH+0eSq6nEdHfqwsayBw6N9dyqoloGGXS2kz0ve8RICbo1kJwdiyMQ+GJVdL6vpdeAmbTC+QiydaxKGoe7/bWUfyKRc9anUe+c5NrSMm3Kjl6Ehue1NU= From: Henry Wang To: Julien Grall , "xen-devel@lists.xenproject.org" CC: Luca Fancellu , "michal.orzel@amd.com" , Julien Grall , Stefano Stabellini , Bertrand Marquis , Volodymyr Babchuk Subject: RE: [PATCH 9/9] xen/arm32: vfp: Add missing U for shifted constant Thread-Topic: [PATCH 9/9] xen/arm32: vfp: Add missing U for shifted constant Thread-Index: AQHZp6aOcmGkZ2VYKUmiFKMJReLdUq+co60w Date: Mon, 26 Jun 2023 06:43:40 +0000 Message-ID: References: <20230625204907.57291-1-julien@xen.org> <20230625204907.57291-10-julien@xen.org> In-Reply-To: <20230625204907.57291-10-julien@xen.org> Accept-Language: zh-CN, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ts-tracking-id: 5112000859ADEB4CA84E0D603B3B451A.0 x-checkrecipientchecked: true Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-traffictypediagnostic: AS8PR08MB7991:EE_|VI1PR08MB10076:EE_|DBAEUR03FT059:EE_|PAWPR08MB10168:EE_ X-MS-Office365-Filtering-Correlation-Id: 0f2d2056-b3b4-4394-fa11-08db7610b698 x-checkrecipientrouted: true nodisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: z7KexkqJJiU236GlP70/EKYEqn1GebXEcyrriq7ZKfFBTGSLiQ6P5XYdEm/dseuz3C9T0CLEu70BXTyA222736oxs4Frrin1v9KNXshynjSNvqhDJohpndeS7h13cpRFMAIQ7bZUNWV4caqREpl5qt2FJix4nSSMLruR7PyhKcy9gMlwVwIW7WaI2KSuXAJbKz1eYMm5CppH2diIw4XD1GJXGfc4HziFEcCOMkTG6IezgnDQa0ozEryT94I1TDgk+Orb5s5Vbjej3YyC0XTUatifaJtyFpKu9Ytv5Jx4Yqkp8HwpzzogOBFScw31t1U8bqQ1RQoBu6rFd/BpMO4fCY+Dw5O3PmnfeWANGnTQwCO9pk27nnxuPDFGwNogJZXx0Dg9v60f93nPQsyZB6Iznt83l/9WgKKo/0zN+qDG1dkcC2Rpzie03uSMnnH3E+QZnS0XHEXQyFOwNc1L3NqWvbA6X67yWfR6KxuhnB5IbAhQb8Oh8SxwOl5AMCpvvEKZg00zGa7x0LFsAB+o2x7I4lWWeeiV/JUWZusL+fKuLLnEuEGJdCDYpRZXR5GuPz+84BEe63R14M81gKtDEnx873Wu2U1KTxrGX1xzb4CTpEDQdcF5B0IQffjdpRJxoV5I X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB7991.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(396003)(346002)(136003)(376002)(39850400004)(366004)(451199021)(5660300002)(52536014)(4326008)(76116006)(66946007)(66556008)(66446008)(33656002)(64756008)(66476007)(478600001)(316002)(8676002)(8936002)(2906002)(4744005)(55016003)(110136005)(54906003)(38070700005)(86362001)(41300700001)(7696005)(9686003)(6506007)(26005)(186003)(38100700002)(122000001)(71200400001)(83380400001);DIR:OUT;SFP:1101; Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR08MB10076 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: DBAEUR03FT059.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: a3905d48-6b7b-4846-361f-08db7610ad48 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: lnuv6B7vtB8S2qafM2c62R1Bwafd8VeJFXigTZ042x3f/NgLF07YHw37zLtK4mFeQUpfMoToAyftp/u4iHG6d3sxI6Pma2Bwzdo8QzJW5xG6y99Kko3JLhvbJISudYqsbJhEYpCXzDrNBSDLvaiUnkU6hw+R56U9bVXyUzPwJn4r+8t0irldlbSTNwLEMhFm9JKx1ssPV4yJCegxlvFHxDER6MJz4S0Gx38Xt3l5H4atM6bsr3aLOcHNye22d4UTK84zzXAGU09XmFaMLPr61z9jV/JcdsZeuJZTqzpnM9ZfKrO0C6NaCL1uXFEQo/BCSTztdLDr8mFOJQS5Bqof2egL6poWPskLBSEf8CeTksZuEnGhC4N5CDgn2DvXNnjrK4XdbX111VjAA5isjuhKZqpemR9qmzPLEzWBFttAiOlYKE92TyTa2LoK7lUli+5CPSdpN+2+gUTGxn2dCmIqDbxMCK2nedxkV2Pbt/lwZsLxl84djDS7GXiP8N9omsxHbANZv0ZAqmcmptCfW5mxXafmyf8/ER1qU49lw6He3PLeZqK1PWYIIXTdLtn0HcApAIkbbLKvd3QsGG6ks+CS+TqT3A6r8POsVaiciKtVTGiyrknmaXYAWolB9JAFEAXalQKDe4uXUdZzFCB6xUjkyrwPOGXVNlquFPRuwsI9b/BI9e/EqvOmrFT16kCfoR6KM+hIOWLPscaMS/dwjn2mShbxA+P+FVTiq71Qv/5ExstkznDW+9Rj9kJe1ld+HYA/ X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(136003)(376002)(396003)(346002)(451199021)(36840700001)(40470700004)(46966006)(5660300002)(82310400005)(41300700001)(7696005)(70206006)(70586007)(4326008)(316002)(110136005)(86362001)(40460700003)(54906003)(83380400001)(186003)(47076005)(336012)(26005)(81166007)(478600001)(9686003)(107886003)(356005)(4744005)(82740400003)(55016003)(33656002)(52536014)(2906002)(8936002)(8676002)(36860700001)(6506007)(40480700001);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Jun 2023 06:43:55.8090 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 0f2d2056-b3b4-4394-fa11-08db7610b698 X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: DBAEUR03FT059.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAWPR08MB10168 Hi Julien, > -----Original Message----- > Subject: [PATCH 9/9] xen/arm32: vfp: Add missing U for shifted constant >=20 > From: Julien Grall >=20 > When enabling UBSAN on arm32, the following splat will be printed: >=20 > (XEN) > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D > (XEN) UBSAN: Undefined behaviour in arch/arm/arm32/vfp.c:75:22 > (XEN) left shift of 255 by 24 places cannot be represented in type 'int' >=20 > This is referring to the shift in FPSID_IMPLEMENTER_MASK. While we could > only add the U to the value shift there, it would be better to be > consistent and also add it for every value shifted. >=20 > This should also addressing MISRA Rule 7.2: >=20 > A "u" or "U" suffix shall be applied to all integer constants that > are represented in an unsigned type >=20 > Signed-off-by: Julien Grall Reviewed-by: Henry Wang Kind regards, Henry From xen-devel-bounces@lists.xenproject.org Mon Jun 26 07:01:27 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 07:01:27 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555334.867031 (Exim 4.92) (envelope-from ) id 1qDgDq-0004nb-Vi; Mon, 26 Jun 2023 07:01:14 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555334.867031; Mon, 26 Jun 2023 07:01:14 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDgDq-0004nU-Rr; Mon, 26 Jun 2023 07:01:14 +0000 Received: by outflank-mailman (input) for mailman id 555334; Mon, 26 Jun 2023 07:01:13 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDgDp-0004nN-8U for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 07:01:13 +0000 Received: from EUR05-VI1-obe.outbound.protection.outlook.com (mail-vi1eur05on2061f.outbound.protection.outlook.com [2a01:111:f400:7d00::61f]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 3935a0bd-13ef-11ee-8611-37d641c3527e; Mon, 26 Jun 2023 09:01:08 +0200 (CEST) Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23) by PAXPR04MB9124.eurprd04.prod.outlook.com (2603:10a6:102:22f::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.24; Mon, 26 Jun 2023 07:01:03 +0000 Received: from DU2PR04MB8790.eurprd04.prod.outlook.com ([fe80::9bd3:48c9:ff58:9880]) by DU2PR04MB8790.eurprd04.prod.outlook.com ([fe80::9bd3:48c9:ff58:9880%4]) with mapi id 15.20.6521.026; Mon, 26 Jun 2023 07:01:03 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 3935a0bd-13ef-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=hkTxt/okZInFj2gMhp2TxH/+34gNc44O6Xkv96EYbn+UcChgqlTaJzww5jY7hacHJCmdRZFcNpy/FE+ARRt1Ze+OLq7nOKNiEE+BqMBSUxXtZKUSRT6ZoOAyK9hTpb/ibekMdT2wjbmO40KK6uKFnJCiUy4guzDVQjKh/1iC2fMGwh3ycq2hsmgzmZEULbzfLC4v8Iq8u4mR1vle0fkcBmB8FWxl8SErzIZAJ9MxUGzIoTtp+8zTWYrIw4ISJJJq/Ghk3rNZ+mp5VQgZAL86IXkxil+ncrB3yQLns2ocYj+nXg7LQTrHjO0rYP+EyOCqbDdEb9r9R5NJo7PGe9bOfg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=ziQBtY/vCXPacWsma6Ji4xwTPOkjPa6xuf7cYjualXM=; b=Xxfp7+z9J+pNKYRXLX4r+q8awkgxiZ6D1goPnIS3uSCHRtvOVW7gZms0UpAYbDe5pst74GA/gOrWQ4nE10KNoEhO6NOhJIJ0GjQnq5Ht5CtOdhr1cNNcIZGEl3Y/TlDA3ubvZbNQZkbRf6hUa+0NnLxWpk308VDy6VCvouIRcWI7AXa7V1AWSO2NpnTrE4xiHCKRXunLRQ3VSR05XojPe/x1U8pw0uEpeV/dxBt8UjZvBZdu1PZC7VkCEaYEhw508F3seRaCqO3v6uqvdTr5Z93/O0gaiVcALThuUXWpcPJkG5sl+xXE20VZUskxvyPlSm1DH8XN+fcl5GhEttcELA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=ziQBtY/vCXPacWsma6Ji4xwTPOkjPa6xuf7cYjualXM=; b=gCA56LB3BkKXJ660bgwzKjVQuviv/GYyXHPWt7pMOrG9ufbYG2K/UqctJzhgUjuCbc6l6chY3S0qQKpEnBGzn9hADxeLnyovRaXW4bxhx5iuyH2l4egjXbC7Clu0YLJU+5FFH3ajKpIeDbsY7VucLyFvl1iSwFZ+q7YSgUzftwW3f/qwf9s6PNkB4RSpplRBknxEFcnu19vNcjzzAtrbCbczw9HvBHEhLVXDJd6XUUGgEBVThT4+FsSHTSBZhl7LAlgBcp+MjuPnb9EfX80cZYmtUAM4nCl8UfnReSWpqM2sSqyNDAbB9ytr6QhhO7MmZVEznwMiGTF4YhWicjInzw== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <3115e211-7ed6-32ea-892c-a133b101dd31@suse.com> Date: Mon, 26 Jun 2023 09:01:01 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v3 21/52] xen: introduce CONFIG_HAS_PAGING_MEMPOOL To: Penny Zheng Cc: Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk , Andrew Cooper , George Dunlap , Wei Liu , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Chen , xen-devel@lists.xenproject.org References: <20230626033443.2943270-1-Penny.Zheng@arm.com> <20230626033443.2943270-22-Penny.Zheng@arm.com> Content-Language: en-US From: Jan Beulich In-Reply-To: <20230626033443.2943270-22-Penny.Zheng@arm.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR3P281CA0140.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:95::12) To DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|PAXPR04MB9124:EE_ X-MS-Office365-Filtering-Correlation-Id: e12c1b78-ee94-4702-3f40-08db76131afb X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: wNIO9qtLEQXh7JmyeqhNwnFVSQ+VbHciX0cJcVGiv5QLhqZ0ge4iocY4DOWIuTHmOfu7WfBP5raPwwJLLrtqrQQbaWwsLA/6E3hYbTwIDmN5g1WcvLaHxZwA5pHF80Eg5QoPnYXz2VUZJtJ2m2MCHtqkTK/Hi4qSWubrjIxQzLzzHAQQ3x/UdMYN8Uq7eOriv9lZOe+e+sp7Oi0CxmLoriGQKTexkyymyPMsqL40e0iq8gXqHOtZJS4i2y/wDm4KWowiR1/Ei3Q3OLz9tVWuBctlhMwqMQl94zP6B8LR9Zu3ABnl75kmTBBBm7072kp0t7jIVYKrS+M7Yw6KAVvLjOEFAr8LaFJmi3RbvYQ2vcQpaJQ41gZmmUqJgpgWVvLmo72Jk8rUhYxxlBqB6IIa4zkCjVVBkGU4XUFaf5dcGFAeNpsomXieSZs0wk07jIhIbKKtQV+aRgMNpiESHIVh5IaTbwkhXfYgbg8Mq9TO/09Z3ZS7ckVtGv0yobffwsw1Z+531y7rh2vd3GfhBMO13d0N9LrfA+uW/i6bYuNY2n/P1XpsgPoNGfD+U7J+R3exH+CyRP4AW1oFUv17oGYTiLVi4mODgnd4lTMu3BuSqZNSAJQGUPpk/fuRaJZO4T0jSMWTanK9QPOeIJKl0BcKzQ== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(346002)(39860400002)(136003)(376002)(366004)(396003)(451199021)(31686004)(6486002)(54906003)(478600001)(2616005)(86362001)(31696002)(66476007)(53546011)(186003)(26005)(6506007)(2906002)(6512007)(4326008)(36756003)(6916009)(316002)(66556008)(66946007)(7416002)(38100700002)(8936002)(5660300002)(8676002)(41300700001)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?N3J0VWR6eFFNZHA3dkRiRHRHK3Q1TTZ4NXNrbWNZc2lBSnprVXFOaXVjUG1O?= =?utf-8?B?NXZCYU1kdWlVelNRazBwTWZLQ1hmOGdxLzM5K044UWlHNktZa1VINVFxYnE3?= =?utf-8?B?clgxVjFxbjJCSHdNWGJjZGVab3c4bmtJbnJoRWRUZld6eFFlVFBDWUNlRjkv?= =?utf-8?B?dXIrcUF4UC80R1o1Mjk0YllkOG55RkFTK0FYdCtkM3Z1ZFJCWFp4SVJKTTNK?= =?utf-8?B?aEdYanJzWkIxZnBXZGR3aFBmbHdWQVBtR2hkc2lKZVhneEtPYTZuS1ZDdFk4?= =?utf-8?B?RTliNjkxMFU0UGh2TEp3My9VbFMvU25QSm1zcFMrRzlPSWQ5dmMrM2Jsb1Nz?= =?utf-8?B?R21FdjFqcytyTVhDdXZHN0NtaWd6MXMwM05wNUJ3TEptOHdRb3JXOXRrZFhE?= =?utf-8?B?MzlyUXFFTUxNSW9KVndlTFVVVmtHWEpzSUlqT1QyNVZ4Q09mSGwySGRDZDAr?= =?utf-8?B?RFFCY05GZGxWbGh2MEpYeFdmUXcvOVZRdG5uWnlQM0s2S0JscitreTZ5Ym40?= =?utf-8?B?Zlg2WXAvZEl4L1RDdERMRDJHZ1N4M05MT1J1VE0vemQxOWFDeDlodlZ3bk04?= =?utf-8?B?RmxGS3dhWkwzaVRBNlRsMkhyZktkYWtzREtNdUJVampxNFAxVU1SZGR6M2dz?= =?utf-8?B?b2t6L2lFQ21FUFo2SFFaWm8ySjNkdjFzR0M3M1o1RndSZmdjcENIODhPM3NF?= =?utf-8?B?NVhjYkxOZ1BZQzJIN1ZpcXFUakpQeEk1M0RhN1dHUkErOTRKbVdaSmV6aWtO?= =?utf-8?B?cEw4bEVBNUpDT3FpNDh5eC9XOXE0MTFzYnROazBBc0sxenlreVlEMUh5L1c3?= =?utf-8?B?RE5jREFPaCtySVh0aTIzTlVjU0d2ckpqdWV6dGFOTFUxQXYwV2I2Zkd6THJl?= =?utf-8?B?R1BHeHRHZUdBQmJ3c1JLUy9pV3RqbE16ZWxWUzBvN1k4cVVLbzZ6T3lNTnI5?= =?utf-8?B?bWxyOENrTEhLZ1lZN3g5dGpWOFp2VnRxZDR2aTNwaGg1NjFOU1RBcE5ucWdv?= =?utf-8?B?ZjQ1VHBnTGNHUzM5UVdxeWJhRlNFb1kybEZkQis5UVZ3cXhWWGF0bXV2eVhu?= =?utf-8?B?WkFMRTJKQ2RyWlpXMEhCaUg2RnhtUExuOXppOCtxb1BUeWhLOUx1eHU0c25M?= =?utf-8?B?VENNS2RGSWxFVWJiVUJmcFpWYTVqOWJ3VXcxaWd0Y0NISm9RSXJiOERLTUZk?= =?utf-8?B?dGxXTlBhSnY2SklaQTNkb21Zc05GMkcyS1liSjhiNi9jN2k4bHZpZExaeEJS?= =?utf-8?B?czFTaExrYjZjVXYybkVRNjgxZDNvWndJQW9iVzYvNXI2WUVSeXhBS09vVmVM?= =?utf-8?B?UmEzVmJ5MlRrT0ZwSTR1czNlN0hJQnZJdjIzOTI1dy9zb3ZxMVNtQVNWK2c1?= =?utf-8?B?dlRmK0FDaFBuc2xZcXNaVTZ1OGtrZU94VUMrR29zS3M3ZGJjQlg5YW1TQyt2?= =?utf-8?B?QmZXQXRaSjRGSmlIREdkK21aZkE5STVvK29jUlIxRGl2cHFjSUJjNkM0cXdo?= =?utf-8?B?dGV4emFhSElLdjN6dE40NFFocS9YZ2thRXZ2RzBpeVQyYW1GWkpqY0RiOWZW?= =?utf-8?B?TlBOenF6ZUZDcnMzR2ExT0ZOOXl3dEI2OEVHOUsycVUzOEpxVU1BYUVzTXdv?= =?utf-8?B?SmJoUUJiaEFEQlEvSjNYbHh1eGtlc3JnOVJoNHpBUGkvN3pPYkhqLzFwN3RX?= =?utf-8?B?bTdZeEZxZEdjaWZqanJpNVpDemdBUFNyRlF0OW5Ma2tHdjhxdzk3eVlwNWx0?= =?utf-8?B?ZisrOEx2dUkzcXU3M2h3V2Q0cDRVRmZDNmpmenM5YUd3UUdvaWU0dmNIdlg4?= =?utf-8?B?T3dBcy9Bb2dEUmhzcS9xRUVvMHdPdUI3cVQ4MDJCVWo5dlFnZEFWRUU0K21q?= =?utf-8?B?ZWlnV1VqcGlHZTcwaXg5S3J2cXZUQ0UzSXZobTY5bzJtY1UxSmFWV1JvcFNI?= =?utf-8?B?OUg0MnJJcVg2N1RVQm93dFdvMndIczc5TU5SM0dxdmVBb3FXSUp6UmI5WVNM?= =?utf-8?B?bEtBNlFZUHh6OXVnM0RQaERiWDRvSWF0bXk1MTJnNjQwc2JvZFR5MS9tQk02?= =?utf-8?B?eE1Ta21BZlBDR0huSjNwNytEWENzMmYzWk9zbW90aEVUVXRGR1FaTTVHdTJi?= =?utf-8?Q?KS/umQeNe7bzLi9DE7c22uM9S?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: e12c1b78-ee94-4702-3f40-08db76131afb X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Jun 2023 07:01:03.3675 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: HA3dLfcEz6fBcMl+e3SrJvvEfey1kBFnyEgMLEwBjoUNVA1tal+IrtHo1rYTywdt1PypIxL+u+6LB8IJEewwaQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB9124 On 26.06.2023 05:34, Penny Zheng wrote: > --- a/xen/common/Kconfig > +++ b/xen/common/Kconfig > @@ -54,6 +54,9 @@ config HAS_IOPORTS > config HAS_KEXEC > bool > > +config HAS_PAGING_MEMPOOL > + bool > + > config HAS_PDX > bool > > --- a/xen/common/domctl.c > +++ b/xen/common/domctl.c > @@ -844,6 +844,7 @@ long do_domctl(XEN_GUEST_HANDLE_PARAM(xen_domctl_t) u_domctl) > ret = iommu_do_domctl(op, d, u_domctl); > break; > > +#ifdef CONFIG_HAS_PAGING_MEMPOOL > case XEN_DOMCTL_get_paging_mempool_size: > ret = arch_get_paging_mempool_size(d, &op->u.paging_mempool.size); > if ( !ret ) > @@ -857,6 +858,7 @@ long do_domctl(XEN_GUEST_HANDLE_PARAM(xen_domctl_t) u_domctl) > ret = hypercall_create_continuation( > __HYPERVISOR_domctl, "h", u_domctl); > break; > +#endif While I'm not outright opposed to doing it this way, I wonder whether it wouldn't be better to leave common code untouched by making arch_get_paging_mempool_size() do what you want done. That's part of what arch hooks are for, after all. Jan From xen-devel-bounces@lists.xenproject.org Mon Jun 26 07:10:56 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 07:10:56 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555339.867040 (Exim 4.92) (envelope-from ) id 1qDgN4-0006KB-Ql; Mon, 26 Jun 2023 07:10:46 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555339.867040; Mon, 26 Jun 2023 07:10:46 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDgN4-0006K3-Ny; Mon, 26 Jun 2023 07:10:46 +0000 Received: by outflank-mailman (input) for mailman id 555339; Mon, 26 Jun 2023 07:10:44 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDgN2-0006Jx-Hu for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 07:10:44 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDgN1-0001NG-VM; Mon, 26 Jun 2023 07:10:43 +0000 Received: from [193.85.242.128] (helo=[192.168.148.103]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qDgN1-0003Tq-PB; Mon, 26 Jun 2023 07:10:43 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=0IoRZ8EeuelEdknPZn5rOg0nLTbd9JLAnP4fYyxlVB4=; b=I3qBdkBVOY0f9IoU7J1cIq3CKL tOXTMYuECfdOrR7tdmNHdNZhwmd6fzwpFLRiYEx+DblW1P8rBA1XaKRU4piMULMQvoseDl7hHkg8a 2Ia3b6lpDkaJz7G/bgqj1ds99mSEsAOr3W96bQB4ppDzneHhowFN+Mm2BjGX2+SQtFYY=; Message-ID: <90c07118-a028-2abc-8252-f9807a2e99f1@xen.org> Date: Mon, 26 Jun 2023 08:10:41 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH 1/9] xen/arm: Check Xen size when linking Content-Language: en-US To: Henry Wang , "xen-devel@lists.xenproject.org" Cc: Luca Fancellu , "michal.orzel@amd.com" , Stefano Stabellini , Bertrand Marquis , Volodymyr Babchuk References: <20230625204907.57291-1-julien@xen.org> <20230625204907.57291-2-julien@xen.org> From: Julien Grall In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit On 26/06/2023 07:15, Henry Wang wrote: > Hi Julien, Hi Henry, >> -----Original Message----- >> Subject: [PATCH 1/9] xen/arm: Check Xen size when linking >> >> The linker will happily link Xen if it is bigger than what we can handle >> (e.g 2MB). This will result to unexpected failure after boot. > > I found this a little bit misleading because when I looked for > XEN_VIRT_SIZE, I am having: > > #define XEN_VIRT_SIZE _AT(vaddr_t, MB(8)) I think you looked at the tree with my series applied because patch #9 will bump the reserved size. The value in the commit message match the current value in staging. [...] >> This unexpected failure can be prevented by forbidding linking if Xen is >> bigger than the area we reversed. > > I am not sure this is a typo: s/reversed/reserved/, but I find the current > sentence a little bit hard to understand. It is a typo. I will fix it. > >> >> Signed-off-by: Julien Grall > > Both comment above can be fixed on commit, so: > > Reviewed-by: Henry Wang > > I've also tested this patch on top of today's staging by our internal CI, > and I don't see any build error there, hence also: > > Tested-by: Henry Wang Thanks! Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Mon Jun 26 07:15:25 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 07:15:25 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555344.867051 (Exim 4.92) (envelope-from ) id 1qDgRR-0006wJ-CA; Mon, 26 Jun 2023 07:15:17 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555344.867051; Mon, 26 Jun 2023 07:15:17 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDgRR-0006wC-9D; Mon, 26 Jun 2023 07:15:17 +0000 Received: by outflank-mailman (input) for mailman id 555344; Mon, 26 Jun 2023 07:15:16 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDgRQ-0006w4-2Y for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 07:15:16 +0000 Received: from EUR04-HE1-obe.outbound.protection.outlook.com (mail-he1eur04on2080.outbound.protection.outlook.com [40.107.7.80]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 319d0d87-13f1-11ee-8611-37d641c3527e; Mon, 26 Jun 2023 09:15:13 +0200 (CEST) Received: from DB7PR02CA0026.eurprd02.prod.outlook.com (2603:10a6:10:52::39) by PAWPR08MB10134.eurprd08.prod.outlook.com (2603:10a6:102:35d::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.26; Mon, 26 Jun 2023 07:14:42 +0000 Received: from DBAEUR03FT052.eop-EUR03.prod.protection.outlook.com (2603:10a6:10:52:cafe::99) by DB7PR02CA0026.outlook.office365.com (2603:10a6:10:52::39) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.33 via Frontend Transport; Mon, 26 Jun 2023 07:14:42 +0000 Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by DBAEUR03FT052.mail.protection.outlook.com (100.127.142.144) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.15 via Frontend Transport; Mon, 26 Jun 2023 07:14:41 +0000 Received: ("Tessian outbound d6c4ee3ba1eb:v142"); Mon, 26 Jun 2023 07:14:41 +0000 Received: from e2089ff5a2e3.2 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 3D035F21-0893-44E4-9A95-EC1A0A3CFD95.1; Mon, 26 Jun 2023 07:14:35 +0000 Received: from EUR03-AM7-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id e2089ff5a2e3.2 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Mon, 26 Jun 2023 07:14:35 +0000 Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15) by GV2PR08MB8172.eurprd08.prod.outlook.com (2603:10a6:150:7c::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.24; Mon, 26 Jun 2023 07:14:31 +0000 Received: from AS8PR08MB7991.eurprd08.prod.outlook.com ([fe80::1024:cf14:d520:9b38]) by AS8PR08MB7991.eurprd08.prod.outlook.com ([fe80::1024:cf14:d520:9b38%7]) with mapi id 15.20.6521.026; Mon, 26 Jun 2023 07:14:31 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 319d0d87-13f1-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=rOdHiVsKiJmrNqD6scxTR2DQE/gaMOpqsMK4cj8vyOs=; b=iGQMDdNhZ5VDtgzDqXwQpim3mhcmuNtkRnMiVHF9YIoWp+DyH8Ce5GoXB+RWeEo+SlI947nFbfD0EQlYCqykkQEYT9poA8FnNt2Ox4exbEY21R5xcoEtHmmb1vSJIjFikLtWrORhBlrW3q1nb8l2cyG/AVLC9vIlS9iN+f/sISc= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C X-CR-MTA-TID: 64aa7808 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=ZNuQ36XD+b9TitBo4TkwJhVRUv8N3Ibm7VzY9a97qFP3NzE5rEH8bXavcI/5GISmTYq66VrSGn9YbN0bZxKw2gmKMFjbnRsV8ouvur9sNyuVD0LSwAnsndTSsrXs8ySaOzIRF4d5gmSn+teOeRT7Ttwow8rHkcfHVkRQXcXWfIGuwE8KytXInF7pAHYCd0tGQ4ufDfTRk9cqyfs9DYjXsbAzUykL+Dl2ClGHyPZ2rQm7AabCyKvX73Q7xCxUWToyEH8JPrgegUK01J5vxku3CMCnAHZLxPBLcIXdmIy8XoVtX71mWEnwiSti+p1hftWQRIfro9CryL0LX7rzwf68tw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=rOdHiVsKiJmrNqD6scxTR2DQE/gaMOpqsMK4cj8vyOs=; b=kFhAf5G7k4H/XAuov8W3quADubs5JUhuLr/nQakmBBxiEBua9h/VF82cl5P+bqJW6Dnp9C+20/yaqDffXaYAEVenB5bg9IXLzJ1/cpi2obVlCsUPdHugXbnW9+AJ4E/7FIppsX7+Z3cnlvzwfTIoLM23zMd0qS1UWhEc01ykRyOJpD7PFZR0PR2O4Ik7pqZElaFBbYT2GZ2I31zU07uosadhj8xWJWAWx0Cni54ib+FF3hWwW6czGoeOLtYW2+Ems+9VnsXBxRL8nytXS08xiEIvgm6Q9hjLX/gVo0zeD4IEoLncgTTekVlzKLd3YW4OqPqZt7x/F7wq9YjedMKj1Q== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=rOdHiVsKiJmrNqD6scxTR2DQE/gaMOpqsMK4cj8vyOs=; b=iGQMDdNhZ5VDtgzDqXwQpim3mhcmuNtkRnMiVHF9YIoWp+DyH8Ce5GoXB+RWeEo+SlI947nFbfD0EQlYCqykkQEYT9poA8FnNt2Ox4exbEY21R5xcoEtHmmb1vSJIjFikLtWrORhBlrW3q1nb8l2cyG/AVLC9vIlS9iN+f/sISc= From: Henry Wang To: Julien Grall , "xen-devel@lists.xenproject.org" CC: Luca Fancellu , "michal.orzel@amd.com" , Stefano Stabellini , Bertrand Marquis , Volodymyr Babchuk Subject: RE: [PATCH 1/9] xen/arm: Check Xen size when linking Thread-Topic: [PATCH 1/9] xen/arm: Check Xen size when linking Thread-Index: AQHZp6aLOomj+n7mMk6Gpm2cByrsNq+cmVMwgAASAYCAAABpAA== Date: Mon, 26 Jun 2023 07:14:31 +0000 Message-ID: References: <20230625204907.57291-1-julien@xen.org> <20230625204907.57291-2-julien@xen.org> <90c07118-a028-2abc-8252-f9807a2e99f1@xen.org> In-Reply-To: <90c07118-a028-2abc-8252-f9807a2e99f1@xen.org> Accept-Language: zh-CN, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ts-tracking-id: C164512DE0B609479A287CE6D7EE4032.0 x-checkrecipientchecked: true Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-traffictypediagnostic: AS8PR08MB7991:EE_|GV2PR08MB8172:EE_|DBAEUR03FT052:EE_|PAWPR08MB10134:EE_ X-MS-Office365-Filtering-Correlation-Id: 441eb7a5-b47b-42ea-b75c-08db761502e3 x-checkrecipientrouted: true nodisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: elMwxUhHcCx4r5mPXHgLvdxNtr1rwpopxPyk5asvQ/5kqaMhTM7+JC9fNf6mUZyFGBBVs6CFrbol7Bckrt2X8XhY3iPxLyfUrIj6fekbT0yC6qC8OGtUyHkT1Yga0SM2RhZ7TFo8VaACm9p2Wc93iqhQR4V+cAc8cJy5fHiGcllxflw89YqgNrRz2GTXfRbhc4wmDRRrIfXDDmhH+7/lsaDtPgjBC/KlPCXo11caf9xWFzVpJTLi810OJtpFCDSAUArOlHTnW4twoQDYwdTRJnmCCB/vbNogvgdB5kPESbo8JW663pLXzhDAvBbRIem6N78ZLTvtLWtWA/aUMqr+W/MfA83nWlC9tPr3XtigtGp/KHM1af28Hg4UhR03IxUN7o9ByCdAZuzxTZTuZh2uDuAwrG9iJbZsoZPtstVYcSISFNFb/2cwQZgMx2hFexNTcSjeYEyHeK6dL2oHZoJPcIAMFHf+B+64pZ0HI5JHCUCDY9fqoBY9gR0XYYavIqPQcbq2Fwgk7ZOcf2tnDyjAaNFz4Gwpb1YQ0ONL4bIE819dF8XdRm31rjXsb0kYvS5cAkYeRQWXknwlskBtCAq6tlByyBHMlpZrTC0GbmVi9bhhfz6nzgwYvkkFuK9a8H/6 X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB7991.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(136003)(346002)(39860400002)(376002)(366004)(396003)(451199021)(2906002)(4744005)(38070700005)(7696005)(71200400001)(38100700002)(83380400001)(122000001)(26005)(9686003)(53546011)(186003)(55016003)(41300700001)(110136005)(54906003)(86362001)(478600001)(316002)(76116006)(66556008)(64756008)(66446008)(4326008)(66946007)(66476007)(33656002)(6506007)(5660300002)(52536014)(8676002)(8936002);DIR:OUT;SFP:1101; Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: GV2PR08MB8172 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: DBAEUR03FT052.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: 8ed17f61-418f-46e8-5b0a-08db7614fcc4 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 5j8EangdyoskUOatDCaul7sjaRug4+AQwHh/nsM3Rl2OEy4zz7CSV9MMYMAFzVHHpZi23faQ9dxP63qK1EtjQSDILsuxZuCx93yMfBqAmwtMhrx8tHcv5fwYH7MhbZ8nLVmopDbRZp2FFNnGLwi4Fy04gDVb2tFCExuZ8m9JmlSJQabQMHeSnWGyPdlGHuyfaL/yh96d7f5od4zPJ2Lzj3nymQC7pPrquoZMYi3h9Znj/eVNfn8XAZ6uw/cIF+UBEDBpqxwvNZd9k9GFO1uWDGnENiZbsmdZtGzg7YQOuiOM+l+CzL3ir/XO8w06xq3W2fISgJUacbfapjrRQ+hb7+FmipKHSjnxf4osorYUsJsVLy8wny16uhQALBteVH+wySinlWG7NhQrXa92HkZoM5kZykr4HZR7x6Kd+auIx9+hfkBafo6AhLXqg9G0ZdCPKLFQ7mwbOhH8O9htKhpc2NSLv5DjkgUUNKaoQhHx9kvpq9Dmzn/inwt3IQC2Bu/jf9vpJwJh+BxM02JSXJKAbsBXE0BbFYjvmrv1dd7Fg03SG9ya75Ch4k5ur4ZGvXri5l+s642ZcFOjKelNzHHcVgVMfEUkWRXStk9rTtF40q0zEBxKkWf54QaKQESF2Dnj+A/RdkBNtl3fTnboI4/u0AfebmUBg7Brquj3/tGk0zk8ctwdqThxg9ZTa+RQx5TO1tOgSiRIiUpa5s1Ria7q490uFhsxUgpFEsmIGqEWlA0UgOmgZF8MmVXl12U22RGB X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230028)(4636009)(376002)(39860400002)(396003)(136003)(346002)(451199021)(36840700001)(46966006)(40470700004)(82310400005)(36860700001)(33656002)(40460700003)(52536014)(70206006)(356005)(5660300002)(55016003)(8936002)(8676002)(41300700001)(86362001)(81166007)(40480700001)(4326008)(316002)(70586007)(82740400003)(107886003)(47076005)(6506007)(9686003)(26005)(53546011)(2906002)(4744005)(478600001)(186003)(7696005)(54906003)(110136005)(336012)(83380400001);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Jun 2023 07:14:41.7769 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 441eb7a5-b47b-42ea-b75c-08db761502e3 X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: DBAEUR03FT052.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAWPR08MB10134 SGkgSnVsaWVuLA0KDQo+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+IEZyb206IEp1bGll biBHcmFsbCA8anVsaWVuQHhlbi5vcmc+DQo+IFN1YmplY3Q6IFJlOiBbUEFUQ0ggMS85XSB4ZW4v YXJtOiBDaGVjayBYZW4gc2l6ZSB3aGVuIGxpbmtpbmcNCj4gDQo+IE9uIDI2LzA2LzIwMjMgMDc6 MTUsIEhlbnJ5IFdhbmcgd3JvdGU6DQo+ID4gSGkgSnVsaWVuLA0KPiANCj4gSGkgSGVucnksDQo+ IA0KPiANCj4gPj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gPj4gU3ViamVjdDogW1BB VENIIDEvOV0geGVuL2FybTogQ2hlY2sgWGVuIHNpemUgd2hlbiBsaW5raW5nDQo+ID4+DQo+ID4+ IFRoZSBsaW5rZXIgd2lsbCBoYXBwaWx5IGxpbmsgWGVuIGlmIGl0IGlzIGJpZ2dlciB0aGFuIHdo YXQgd2UgY2FuIGhhbmRsZQ0KPiA+PiAoZS5nIDJNQikuIFRoaXMgd2lsbCByZXN1bHQgdG8gdW5l eHBlY3RlZCBmYWlsdXJlIGFmdGVyIGJvb3QuDQo+ID4NCj4gPiBJIGZvdW5kIHRoaXMgYSBsaXR0 bGUgYml0IG1pc2xlYWRpbmcgYmVjYXVzZSB3aGVuIEkgbG9va2VkIGZvcg0KPiA+IFhFTl9WSVJU X1NJWkUsIEkgYW0gaGF2aW5nOg0KPiA+DQo+ID4gI2RlZmluZSBYRU5fVklSVF9TSVpFICAgICAg ICAgICBfQVQodmFkZHJfdCwgTUIoOCkpDQo+IA0KPiBJIHRoaW5rIHlvdSBsb29rZWQgYXQgdGhl IHRyZWUgd2l0aCBteSBzZXJpZXMgYXBwbGllZCBiZWNhdXNlIHBhdGNoICM5DQo+IHdpbGwgYnVt cCB0aGUgcmVzZXJ2ZWQgc2l6ZS4gVGhlIHZhbHVlIGluIHRoZSBjb21taXQgbWVzc2FnZSBtYXRj aCB0aGUNCj4gY3VycmVudCB2YWx1ZSBpbiBzdGFnaW5nLg0KDQpZZWFoIGV4YWN0bHksIEkgc3Rh cnRlZCBteSByZXZpZXcgZnJvbSBwYXRjaCAjMSBhbmQgd2hlbiBJIHNhdyBwYXRjaCAjOSBJDQpy ZWFsaXplZCB0aGUgc2l6ZSBpcyBidW1wZWQgdGhlcmUsIGJ1dCB0aGUgZW1haWwgd2FzIGFscmVh ZHkgc2VudCB0aGVuLi4uLg0KDQpTb3JyeSBmb3IgdGhlIGNvbmZ1c2lvbi4NCg0KS2luZCByZWdh cmRzLA0KSGVucnkNCg== From xen-devel-bounces@lists.xenproject.org Mon Jun 26 07:18:24 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 07:18:24 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555351.867060 (Exim 4.92) (envelope-from ) id 1qDgUE-0007Zn-SR; Mon, 26 Jun 2023 07:18:10 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555351.867060; Mon, 26 Jun 2023 07:18:10 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDgUE-0007Zg-Pt; Mon, 26 Jun 2023 07:18:10 +0000 Received: by outflank-mailman (input) for mailman id 555351; Mon, 26 Jun 2023 07:18:10 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDgUE-0007Za-4s for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 07:18:10 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDgU8-0001Ue-I1; Mon, 26 Jun 2023 07:18:04 +0000 Received: from [193.85.242.128] (helo=[192.168.148.103]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qDgU8-0003rT-AB; Mon, 26 Jun 2023 07:18:04 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=rBFUNpTn+eg7DnGJiuKQyKC1bmZAODhZpG6KTDB5WXM=; b=wmzL2C9pW93LjifP1OGDrvbnUn d0B9EW/jbKSMNANcUWBi4wPu71DoNsAJJpvlm4DrTVDrQpb9+Hxx7L6lnzpmy+OMv+NfWshb4J87G 0Qe9Gaq4OnyAC8ZseOaph1DKvvUdczpNoP4KfNpi8pZzXuxJACPYBFk1W8cjcZrov1W0=; Message-ID: <0e9fdd98-2f3b-edd0-d337-d30dc3284fd1@xen.org> Date: Mon, 26 Jun 2023 08:18:01 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH 0/9] xen/arm: Enable UBSAN support Content-Language: en-US To: Jan Beulich Cc: Luca.Fancellu@arm.com, michal.orzel@amd.com, Henry.Wang@arm.com, Julien Grall , Stefano Stabellini , Bertrand Marquis , Volodymyr Babchuk , xen-devel@lists.xenproject.org, George Dunlap , Andrew Cooper , Wei Liu References: <20230625204907.57291-1-julien@xen.org> <2f916d99-6c1b-eb3d-e40e-6c881dbf4185@suse.com> From: Julien Grall In-Reply-To: <2f916d99-6c1b-eb3d-e40e-6c881dbf4185@suse.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit (+ The rest) Hi Jan, On 26/06/2023 06:45, Jan Beulich wrote: > On 25.06.2023 22:48, Julien Grall wrote: >> From: Julien Grall >> >> Hi all, >> >> At the moment, we are not able to enable UBSAN on Arm because the >> final binary will be over the maximum size of Xen we currently support >> (i.e. 2MB). >> >> This patch series aim to lift the restrictions and also >> enable UBSAN. Lastly, at the end of the series, there is the first >> issue found by USBAN. >> >> There are a few of others. One will be fixed by the MISRA work >> in [1] and the other is a bit tricky. One the splat is (the >> others seems to be for similar reasons) >> >> (XEN) ================================================================================ >> (XEN) UBSAN: Undefined behaviour in common/sched/credit2.c:2437:5 >> (XEN) member access within misaligned address 43feefbc for type 'struct csched2_runqueue_data' >> (XEN) which requires 8 byte alignment >> (XEN) Xen WARN at common/ubsan/ubsan.c:172 >> >> This is on 32-bit and UBSAN seems to complain about the check in >> list_for_each_entry. I haven't yet dived into the issue yet. > > At a guess this is because the list head struct, living in > struct csched2_private, has only 32-bit alignment, while on the > last loop iteration pos doesn't hold a real struct > csched2_runqueue_data * (which ought to b 64-bit aligned, but > isn't in the special case of having reached the list head again). > If I'm not mistaken rwlock_t is 12 bytes for Arm32, which would > match with the address above ending in c, assuming that xmalloc() > returns at least 16-byte-aligned space on Arm32 as well. If so, > in this particular case some rearrangement of struct > csched2_private ought to help, but as you say this is a more > general issue and hence likely wants addressing in a generic way. Your analysis is correct. So far I have only seen the splats in the credit2 code. But it feels a little be odd to fix only there. Our list implementation is based on the Linux one. I checked a recent version but I couldn't find any hints that they may have fixed the issue. For a more generic fix, I was thinking to force the alignment of the list head to 8-bytes. This is not perfect but would cover most of the use-cases where list head is used. Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Mon Jun 26 07:30:29 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 07:30:29 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555356.867071 (Exim 4.92) (envelope-from ) id 1qDgfs-0001XT-Td; Mon, 26 Jun 2023 07:30:12 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555356.867071; Mon, 26 Jun 2023 07:30:12 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDgfs-0001XM-Qk; Mon, 26 Jun 2023 07:30:12 +0000 Received: by outflank-mailman (input) for mailman id 555356; Mon, 26 Jun 2023 07:30:11 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDgfr-0001XE-45 for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 07:30:11 +0000 Received: from EUR05-DB8-obe.outbound.protection.outlook.com (mail-db8eur05on20621.outbound.protection.outlook.com [2a01:111:f400:7e1a::621]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 47305eca-13f3-11ee-8611-37d641c3527e; Mon, 26 Jun 2023 09:30:09 +0200 (CEST) Received: from AM6P193CA0115.EURP193.PROD.OUTLOOK.COM (2603:10a6:209:85::20) by DBBPR08MB5961.eurprd08.prod.outlook.com (2603:10a6:10:203::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.26; Mon, 26 Jun 2023 07:30:04 +0000 Received: from AM7EUR03FT016.eop-EUR03.prod.protection.outlook.com (2603:10a6:209:85:cafe::aa) by AM6P193CA0115.outlook.office365.com (2603:10a6:209:85::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.33 via Frontend Transport; Mon, 26 Jun 2023 07:30:04 +0000 Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by AM7EUR03FT016.mail.protection.outlook.com (100.127.140.106) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.15 via Frontend Transport; Mon, 26 Jun 2023 07:30:04 +0000 Received: ("Tessian outbound b11b8bb4dfe8:v142"); Mon, 26 Jun 2023 07:30:03 +0000 Received: from 257ea5bb51f6.2 by 64aa7808-outbound-1.mta.getcheckrecipient.com id ABFE5644-1E02-433E-BEAE-83BCF624974E.1; Mon, 26 Jun 2023 07:29:53 +0000 Received: from EUR03-AM7-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 257ea5bb51f6.2 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Mon, 26 Jun 2023 07:29:53 +0000 Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15) by GV1PR08MB8307.eurprd08.prod.outlook.com (2603:10a6:150:a4::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.24; Mon, 26 Jun 2023 07:29:48 +0000 Received: from AS8PR08MB7991.eurprd08.prod.outlook.com ([fe80::1024:cf14:d520:9b38]) by AS8PR08MB7991.eurprd08.prod.outlook.com ([fe80::1024:cf14:d520:9b38%7]) with mapi id 15.20.6521.026; Mon, 26 Jun 2023 07:29:48 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 47305eca-13f3-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=lfAVLzyyapTdK3kvigyp1nQMe2J5k58O3GqP1opX5nk=; b=UtWP8BFiUVwt53ikcqveGxVN2saNtDN16QJCaRLj7DY6Gn/6/Y9H1PCo8K+ygE6KDve2i8Aur/v5QXeUor7CZFGfu5tp/YtIQsUhDDbze6QkbOUzAcOUmIT+X1BQr6ZLLrFNLX27BxWXDvI2SFDlYg6pKKdueNHqy7TGD1aspF0= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C X-CR-MTA-TID: 64aa7808 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=I3RwAucSVnx6I7lAUbIrcReGpuYx3Uw42i44wtC9ZS08YtJQUh6c4sKGLFez4KUMk+UHg6hhm70w0ID/7wNH4hjPM2gLfkxOJt35fDJ0OFWW44WwdIkmgJ50aYdFqwDvy2XvNJuCZQ6t4mYatTGVe4ieK1AUUwobIwtlkmnnR4pbTqHHJqMXgwvJTSmoqphIIcObi93PAtCGPeW5zGj9ld7L4Vbdon3bxJrPwciBAe1SnVJBopi18tFL2UML1F3hh/wvir4B+nnrHG1nC9vcGuwTqpLibo7fBbleneX4DCD2z4DvDPNwxjRaSaKXvMFhqJ6uRY3VT5MHCHQVXDGAMg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=lfAVLzyyapTdK3kvigyp1nQMe2J5k58O3GqP1opX5nk=; b=ObBk+zhQXhrjRyyupPaZEfAq9vPN5K4xSoHpZztEXn8BsLpyGUMPScbmt9dpwY9Gdd/23dlCYvr5XzqOIA2X/6oCKaDhm1rzlmCbvp26GKKNtXKb17Ifue4pbTUVxUP/3ZxbnHjXu/wawSrKJwwIyTlCATItq+zFjpZcQ85eBfU4WvnXRI08EOxdvshLIoH7IiJ36WOKH6bzxGXWlf2WuO1xS/8o89TtpEqCE3V8LjBwAIVWBLsuKZE8SIzeQYpuXXvVFkfo2sfQMtijnOSD+LhRN48JPozs0qS53Bbu5rds9GbYdqz2aIt3mfcs1tw8M/XaAsJGfjPr4tzVHj+tTg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=lfAVLzyyapTdK3kvigyp1nQMe2J5k58O3GqP1opX5nk=; b=UtWP8BFiUVwt53ikcqveGxVN2saNtDN16QJCaRLj7DY6Gn/6/Y9H1PCo8K+ygE6KDve2i8Aur/v5QXeUor7CZFGfu5tp/YtIQsUhDDbze6QkbOUzAcOUmIT+X1BQr6ZLLrFNLX27BxWXDvI2SFDlYg6pKKdueNHqy7TGD1aspF0= From: Henry Wang To: Julien Grall , "xen-devel@lists.xenproject.org" CC: Luca Fancellu , "michal.orzel@amd.com" , Julien Grall , Stefano Stabellini , Bertrand Marquis , Volodymyr Babchuk Subject: RE: [PATCH 8/9] xen/arm: Allow the user to build Xen with USBAN Thread-Topic: [PATCH 8/9] xen/arm: Allow the user to build Xen with USBAN Thread-Index: AQHZp6aSsRUjsp5X0kuhcvqBjbjyw6+crs2w Date: Mon, 26 Jun 2023 07:29:48 +0000 Message-ID: References: <20230625204907.57291-1-julien@xen.org> <20230625204907.57291-9-julien@xen.org> In-Reply-To: <20230625204907.57291-9-julien@xen.org> Accept-Language: zh-CN, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ts-tracking-id: 2E0D137271F7FB45A11AB812F9A8D197.0 x-checkrecipientchecked: true Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-traffictypediagnostic: AS8PR08MB7991:EE_|GV1PR08MB8307:EE_|AM7EUR03FT016:EE_|DBBPR08MB5961:EE_ X-MS-Office365-Filtering-Correlation-Id: 8e488348-a5b1-4a73-0f73-08db761728b8 x-checkrecipientrouted: true nodisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: Lif3gNIvtokHXq5QFBktZQwTPE8R9l67wzsSzkwQOXie0RlxBaSTyzuhIHdFsBsXNDl2GeKMXJcQx40JqKIkm2EzdmrT71vSZQmTMHrcNIRShBcO6MCTeVIljb+yoAJ1jhl20vg2p0iaiYbhTHL3SA2t4CNFTPLVF9jRnaLkEuFWjoQ4USRXVtNWCIKiKEDreIQDEyMuSiKbqGphYX+7MNCkZ976Hx0QcpkaaZNVH4Uvb+GK81/i/E34ugP6R/ydiguTv4b8XmLKQCdyrlMUwSvJj5DjrQSu76z8Lm4zKcGwAJZmDlW0SIEnQpyoDmgoqM0mAO/mvjOQ+1zO8EIYRzikm3mV4vMN785SN/fOfiug9zO+tf8QvqmkMBet4QMhXFuhJeSHPkLLwbiH6Get4+9QoiSJQ83Hv1Tlhy/CKxT+z99kETVwV+a4v+Sj9u20Edlh6UExXeH+WcwAXKa6BQKGXH4exwsxDYdWaUcRswomQjrN29WAJvOY2dGNAlrtUvZHp7aRTGk4A42V20SvZqU8+276mX1kaOfhZzIrUtY21PUkuJflYP0olOGqwuFx5Ftruv0858rev1tLEtLRpBOyvW1GSKud2q+6DCuMB+4Awlagtg8wdEOykT7Pzfli X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB7991.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(366004)(136003)(396003)(39860400002)(376002)(346002)(451199021)(33656002)(5660300002)(52536014)(86362001)(8936002)(8676002)(41300700001)(66556008)(64756008)(66476007)(38070700005)(76116006)(4326008)(38100700002)(122000001)(316002)(66946007)(55016003)(9686003)(6506007)(26005)(186003)(66446008)(2906002)(7696005)(71200400001)(54906003)(478600001)(110136005)(83380400001);DIR:OUT;SFP:1101; Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: GV1PR08MB8307 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: AM7EUR03FT016.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: 3c5933a6-d78c-4f6a-28d3-08db76171f74 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: E9/jHEx1/rsvPRTwiR2lA6AV+sSvvDM2vGwhkorWWWupjCpPeMRE+uBjjkjVDejFuLeKjXNizdyY3aqc1FUdQOxT9BNVrKsBrhY5volqEDpiFsSqduSvjMK/uk2BRNKFis8RomNzxJZydGAYuP2l3UBhy6mZkW5oBotLNizX918V/55OdZDOlGzXCUJGC0ktFAvXT2Zvoyrv/Cg4cij/IuhssP6pcnPUeJabO/YxLnaoDYnLZmh9At7CAVW3Fq3T6MVWkKnlEpu9+Ozm27qoHr6N97H9Ht/CDqhA+ahqlmIH9rfNVqGDetsNA/KJJ8HsGTiF44/T/qEoHK+vUL0VGfrokxNl3KfMdPGFdkyOE6SacCuYrBGCohJ9yCP6KLBorB9jfFYAVR0zaFNZYwAVvtkOQDzEm/H5mWiTEZVndpKXIXfn4t/y9/ZocIWGsX8UKADelDzA7Y1Dcf0tHlrAmSNYaRaTZUwSe3IXdrZbwr4h348ehwett7nzWFoHALYpScPyVIr2RpxxYsRH8IyQ4i02JAyWwkr14PR50EeapvfQEaU+RU9pTDbYf53hMtndltiyl45aq8x1SS09yTTgrvqt3WZ+wsWK8HcjSUl+zEydwr/QW0Z+pYvfi3MgX6knGQwwEGI58gIRcVvpxOJJ1p8uRNX7fqQVmQZL010w0kwheD4Gszbcs0Fa14DvhwaUXBzSSsDxliHhz8CTAHk7dxW0/6rcRu2WmqZAOhRC1pIiUMs0pbrp6S5iazjOcjcU X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(396003)(346002)(136003)(376002)(451199021)(40470700004)(46966006)(36840700001)(5660300002)(52536014)(70586007)(70206006)(4326008)(33656002)(478600001)(316002)(8676002)(8936002)(40460700003)(2906002)(55016003)(40480700001)(36860700001)(110136005)(54906003)(86362001)(41300700001)(7696005)(82310400005)(9686003)(336012)(6506007)(26005)(47076005)(186003)(356005)(82740400003)(107886003)(83380400001)(81166007);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Jun 2023 07:30:04.1908 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 8e488348-a5b1-4a73-0f73-08db761728b8 X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: AM7EUR03FT016.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBBPR08MB5961 Hi Julien, > -----Original Message----- > From: Julien Grall > Subject: [PATCH 8/9] xen/arm: Allow the user to build Xen with USBAN Typo in title: s/USBAN/UBSAN/ and... >=20 > From: Julien Grall >=20 > UBSAN has been enabled a few years ago on x86 but was never > enabled on Arm because the final binary is bigger than 2MB ( > the maximum we can currently handled). >=20 > With the recent rework, it is now possible to grow Xen over 2MB. > So there is no more roadblock to enable Xen other than increasing > the reserved area. >=20 > On my setup, for arm32, the final binaray was very close to 4MB. > Furthermore, one may want to enable USBAN and GCOV which would put ...here also. > the binary well-over 4MB (both features require for some space). > Therefore, increase the size to 8MB which should us some margin. >=20 > Signed-off-by: Julien Grall Both typos can be fixed on commit and I think I am good with the current approach, so: Reviewed-by: Henry Wang I did a play with UBSAN enabled on FVP (arm64), in my setup, the result Xen file is 3.7MB: -rwxrwxr-x 1 xinwan02 xinwan02 3.7M Jun 26 14:47 xen lrwxrwxrwx 1 xinwan02 xinwan02 3 Jun 26 14:47 xen.efi -> xen -rwxrwxr-x 1 xinwan02 xinwan02 14M Jun 26 14:47 xen-syms and the Xen and Dom0 booted fine and I can login Dom0. So technically: Tested-by: Henry Wang However, I noticed Xen will print below during the Dom0 boot: (XEN) =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D (XEN) UBSAN: Undefined behaviour in arch/arm/vgic.c:371:15 (XEN) left shift of 1 by 31 places cannot be represented in type 'int' (XEN) Xen WARN at common/ubsan/ubsan.c:172 Just want to make sure you also noticed this, otherwise maybe you can include another patch in the series to fix this? Or I can do that in case you don't have enough bandwidth. Kind regards, Henry From xen-devel-bounces@lists.xenproject.org Mon Jun 26 07:44:45 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 07:44:45 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555360.867080 (Exim 4.92) (envelope-from ) id 1qDgtl-00037C-3C; Mon, 26 Jun 2023 07:44:33 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555360.867080; Mon, 26 Jun 2023 07:44:33 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDgtl-000375-0h; Mon, 26 Jun 2023 07:44:33 +0000 Received: by outflank-mailman (input) for mailman id 555360; Mon, 26 Jun 2023 07:44:32 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDgtj-00036v-Vp; Mon, 26 Jun 2023 07:44:31 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDgtj-00024G-NG; Mon, 26 Jun 2023 07:44:31 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDgtj-0008RX-8O; Mon, 26 Jun 2023 07:44:31 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qDgtj-0002RY-7w; Mon, 26 Jun 2023 07:44:31 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=5L4lCWovWHvfg395vi348ygv30s02ptqz7bRSVqK/mw=; b=HnN8hr9pNrkNO6hyE9SxFpazsR ezD3TLo3an+FekQD/bjRtZrYY43f/k+CWhQJylcztcxmgPdyj/KWSACybMfi1R00tyU38LwajmuBc ZW3FQ/a9Ox3itIof4ELC36cKIRAwKTufPqCJcAEcIKy0pUoGLjFMnwkkSnmgbTirtfQ8=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [ovmf test] 181599: all pass - PUSHED X-Osstest-Versions-This: ovmf=ac33eee8b83999ba591af04fe22e773cf8fc8193 X-Osstest-Versions-That: ovmf=57796711371d42d980d50bc9299972b109d09035 From: osstest service owner Date: Mon, 26 Jun 2023 07:44:31 +0000 flight 181599 ovmf real [real] http://logs.test-lab.xenproject.org/osstest/logs/181599/ Perfect :-) All tests in this flight passed as required version targeted for testing: ovmf ac33eee8b83999ba591af04fe22e773cf8fc8193 baseline version: ovmf 57796711371d42d980d50bc9299972b109d09035 Last test of basis 181569 2023-06-23 20:44:26 Z 2 days Testing same since 181599 2023-06-26 05:12:27 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Aishwarya, KurugoduMelmatamX kurugodx jobs: build-amd64-xsm pass build-i386-xsm pass build-amd64 pass build-i386 pass build-amd64-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-i386-pvops pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Pushing revision : To xenbits.xen.org:/home/xen/git/osstest/ovmf.git 5779671137..ac33eee8b8 ac33eee8b83999ba591af04fe22e773cf8fc8193 -> xen-tested-master From xen-devel-bounces@lists.xenproject.org Mon Jun 26 09:21:03 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 09:21:03 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555371.867091 (Exim 4.92) (envelope-from ) id 1qDiOw-0005Lk-Ib; Mon, 26 Jun 2023 09:20:50 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555371.867091; Mon, 26 Jun 2023 09:20:50 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDiOw-0005Ld-Dm; Mon, 26 Jun 2023 09:20:50 +0000 Received: by outflank-mailman (input) for mailman id 555371; Mon, 26 Jun 2023 09:20:49 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDiOv-0005LT-4p; Mon, 26 Jun 2023 09:20:49 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDiOu-0004eD-RQ; Mon, 26 Jun 2023 09:20:48 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDiOu-0004VO-9D; Mon, 26 Jun 2023 09:20:48 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qDiOu-0008Bo-8l; Mon, 26 Jun 2023 09:20:48 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=WCLIIXWfDrrutULcEnOy6KDe9Z8Th4CQ+aGmh3a2Ui0=; b=EJhyrYSFWNuFGoI7PFo+mmBqHA wgnIJW57BACeYeXEgSFLYFjsonE6maoO3RCiex5XY7OJw+Jcses03zuK/jQffJGh4qn82ckcvwtHW T2hYwhM8QWq73dzLW89NPUWzKwhn2OlVf7xOVl++ukI4AiSfwJ8DTfLf8tgKcFD8prhw=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable test] 181597: tolerable FAIL X-Osstest-Failures: xen-unstable:test-amd64-i386-examine-uefi:xen-install:fail:heisenbug xen-unstable:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:debian-hvm-install:fail:heisenbug xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:windows-install:fail:heisenbug xen-unstable:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:debian-hvm-install:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking X-Osstest-Versions-This: xen=5c84f1f636981dab5341e84aaba8d4dd00bbc2cb X-Osstest-Versions-That: xen=5c84f1f636981dab5341e84aaba8d4dd00bbc2cb From: osstest service owner Date: Mon, 26 Jun 2023 09:20:48 +0000 flight 181597 xen-unstable real [real] http://logs.test-lab.xenproject.org/osstest/logs/181597/ Failures :-/ but no regressions. Tests which are failing intermittently (not blocking): test-amd64-i386-examine-uefi 6 xen-install fail in 181582 pass in 181597 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 12 debian-hvm-install fail pass in 181582 test-amd64-amd64-xl-qemuu-win7-amd64 12 windows-install fail pass in 181582 Tests which did not succeed, but are not blocking: test-amd64-amd64-xl-qemut-debianhvm-i386-xsm 12 debian-hvm-install fail in 181582 like 181558 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail in 181582 like 181575 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 181582 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop fail like 181582 test-armhf-armhf-libvirt 16 saverestore-support-check fail like 181582 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 181582 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 181582 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop fail like 181582 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop fail like 181582 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail like 181582 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 181582 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail like 181582 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop fail like 181582 test-amd64-i386-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-i386-xl-pvshim 14 guest-start fail never pass test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-i386-libvirt 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-i386-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 15 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass test-armhf-armhf-libvirt 15 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 15 saverestore-support-check fail never pass test-armhf-armhf-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 15 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 16 saverestore-support-check fail never pass test-armhf-armhf-xl 15 migrate-support-check fail never pass test-armhf-armhf-xl 16 saverestore-support-check fail never pass test-armhf-armhf-xl-multivcpu 15 migrate-support-check fail never pass test-armhf-armhf-xl-multivcpu 16 saverestore-support-check fail never pass test-armhf-armhf-xl-credit1 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 16 saverestore-support-check fail never pass test-armhf-armhf-xl-credit2 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit2 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail never pass version targeted for testing: xen 5c84f1f636981dab5341e84aaba8d4dd00bbc2cb baseline version: xen 5c84f1f636981dab5341e84aaba8d4dd00bbc2cb Last test of basis 181597 2023-06-26 01:53:35 Z 0 days Testing same since (not found) 0 attempts jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64-xtf pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-prev pass build-i386-prev pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-xtf-amd64-amd64-1 pass test-xtf-amd64-amd64-2 pass test-xtf-amd64-amd64-3 pass test-xtf-amd64-amd64-4 pass test-xtf-amd64-amd64-5 pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl pass test-amd64-i386-xl pass test-amd64-coresched-i386-xl pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-i386-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm fail test-amd64-i386-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-i386-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-i386-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-i386-qemut-rhel6hvm-amd pass test-amd64-i386-qemuu-rhel6hvm-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-i386-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-freebsd10-amd64 pass test-amd64-amd64-qemuu-freebsd11-amd64 pass test-amd64-amd64-qemuu-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-i386-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-i386-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-i386-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-amd64-i386-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale pass test-amd64-amd64-examine-bios pass test-amd64-i386-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 pass test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 pass test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine pass test-amd64-i386-examine pass test-amd64-i386-freebsd10-i386 pass test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-i386-qemut-rhel6hvm-intel pass test-amd64-i386-qemuu-rhel6hvm-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt pass test-amd64-i386-libvirt pass test-amd64-amd64-livepatch pass test-amd64-i386-livepatch pass test-amd64-amd64-migrupgrade pass test-amd64-i386-migrupgrade pass test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu pass test-amd64-amd64-pair pass test-amd64-i386-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-i386-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-i386-xl-pvshim fail test-amd64-amd64-pygrub pass test-armhf-armhf-libvirt-qcow2 pass test-amd64-amd64-xl-qcow2 pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw pass test-amd64-i386-libvirt-raw pass test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds pass test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-amd64-i386-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-i386-examine-uefi pass test-amd64-amd64-libvirt-vhd pass test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd pass test-amd64-i386-xl-vhd pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Published tested tree is already up to date. From xen-devel-bounces@lists.xenproject.org Mon Jun 26 09:52:44 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 09:52:44 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555380.867111 (Exim 4.92) (envelope-from ) id 1qDito-0000fk-9S; Mon, 26 Jun 2023 09:52:44 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555380.867111; Mon, 26 Jun 2023 09:52:44 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDito-0000fd-6a; Mon, 26 Jun 2023 09:52:44 +0000 Received: by outflank-mailman (input) for mailman id 555380; Mon, 26 Jun 2023 09:52:43 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDitn-0000Ov-1P for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 09:52:43 +0000 Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 30c1f93d-1407-11ee-8611-37d641c3527e; Mon, 26 Jun 2023 11:52:41 +0200 (CEST) Received: from Dell.bugseng.com (unknown [37.163.27.55]) by support.bugseng.com (Postfix) with ESMTPSA id C6D044EE0739; Mon, 26 Jun 2023 11:52:39 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 30c1f93d-1407-11ee-8611-37d641c3527e From: Federico Serafini To: xen-devel@lists.xenproject.org Cc: consulting@bugseng.com, Federico Serafini , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk , Michal Orzel , Xenia Ragiadakou , Ayan Kumar Halder Subject: [XEN PATCH v3 1/6] xen/arm: change names in function access_guest_memory_by_ipa(). Date: Mon, 26 Jun 2023 11:52:13 +0200 Message-Id: <89e96c5d4b95a35540757235e838fd65f5e4077e.1687771796.git.federico.serafini@bugseng.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Change the function name 'access_guest_memory_by_ipa' to 'access_guest_memory_by_gpa' and change its formal parameter name from 'ipa' to 'gpa' because of the following: 1) 'gpa' is used more frequently and therefore is preferable; 2) changing parameter name makes the declaration consistent with the corresponding definition thus fixing a violation of MISRA C:2012 Rule 8.3. Signed-off-by: Federico Serafini --- xen/arch/arm/guest_walk.c | 6 +++--- xen/arch/arm/guestcopy.c | 2 +- xen/arch/arm/include/asm/guest_access.h | 2 +- xen/arch/arm/tee/optee.c | 10 +++++----- xen/arch/arm/vgic-v3-its.c | 16 ++++++++-------- 5 files changed, 18 insertions(+), 18 deletions(-) diff --git a/xen/arch/arm/guest_walk.c b/xen/arch/arm/guest_walk.c index c80a0ce55b..d99b411f3b 100644 --- a/xen/arch/arm/guest_walk.c +++ b/xen/arch/arm/guest_walk.c @@ -85,7 +85,7 @@ static bool guest_walk_sd(const struct vcpu *v, paddr |= (gva & mask) >> 18; /* Access the guest's memory to read only one PTE. */ - ret = access_guest_memory_by_ipa(d, paddr, &pte, sizeof(short_desc_t), false); + ret = access_guest_memory_by_gpa(d, paddr, &pte, sizeof(short_desc_t), false); if ( ret ) return false; @@ -110,7 +110,7 @@ static bool guest_walk_sd(const struct vcpu *v, paddr = ((paddr_t)pte.walk.base << 10) | ((gva & mask) >> 10); /* Access the guest's memory to read only one PTE. */ - ret = access_guest_memory_by_ipa(d, paddr, &pte, sizeof(short_desc_t), false); + ret = access_guest_memory_by_gpa(d, paddr, &pte, sizeof(short_desc_t), false); if ( ret ) return false; @@ -481,7 +481,7 @@ static bool guest_walk_ld(const struct vcpu *v, paddr |= LPAE_TABLE_INDEX_GS(grainsizes[gran], level, gva) << 3; /* Access the guest's memory to read only one PTE. */ - ret = access_guest_memory_by_ipa(d, paddr, &pte, sizeof(lpae_t), false); + ret = access_guest_memory_by_gpa(d, paddr, &pte, sizeof(lpae_t), false); if ( ret ) return false; diff --git a/xen/arch/arm/guestcopy.c b/xen/arch/arm/guestcopy.c index 225fd343dd..6716b03561 100644 --- a/xen/arch/arm/guestcopy.c +++ b/xen/arch/arm/guestcopy.c @@ -142,7 +142,7 @@ unsigned long copy_to_guest_phys_flush_dcache(struct domain *d, COPY_to_guest | COPY_ipa | COPY_flush_dcache); } -int access_guest_memory_by_ipa(struct domain *d, paddr_t gpa, void *buf, +int access_guest_memory_by_gpa(struct domain *d, paddr_t gpa, void *buf, uint32_t size, bool is_write) { unsigned long left; diff --git a/xen/arch/arm/include/asm/guest_access.h b/xen/arch/arm/include/asm/guest_access.h index 4421e43611..8278a45dbf 100644 --- a/xen/arch/arm/include/asm/guest_access.h +++ b/xen/arch/arm/include/asm/guest_access.h @@ -16,7 +16,7 @@ unsigned long copy_to_guest_phys_flush_dcache(struct domain *d, void *buf, unsigned int len); -int access_guest_memory_by_ipa(struct domain *d, paddr_t ipa, void *buf, +int access_guest_memory_by_gpa(struct domain *d, paddr_t gpa, void *buf, uint32_t size, bool is_write); #define __raw_copy_to_guest raw_copy_to_guest diff --git a/xen/arch/arm/tee/optee.c b/xen/arch/arm/tee/optee.c index 9cb9f16d43..301d205a36 100644 --- a/xen/arch/arm/tee/optee.c +++ b/xen/arch/arm/tee/optee.c @@ -951,7 +951,7 @@ static bool copy_std_request(struct cpu_user_regs *regs, map_xen_arg(call); - if ( access_guest_memory_by_ipa(current->domain, call->guest_arg_ipa, + if ( access_guest_memory_by_gpa(current->domain, call->guest_arg_ipa, call->xen_arg, OPTEE_MSG_NONCONTIG_PAGE_SIZE, false) ) { @@ -1106,7 +1106,7 @@ static int handle_rpc_return(struct optee_domain *ctx, shm_rpc->xen_arg = __map_domain_page(shm_rpc->xen_arg_pg); - if ( access_guest_memory_by_ipa(current->domain, + if ( access_guest_memory_by_gpa(current->domain, gfn_to_gaddr(shm_rpc->gfn), shm_rpc->xen_arg, OPTEE_MSG_GET_ARG_SIZE(shm_rpc->xen_arg->num_params), @@ -1329,7 +1329,7 @@ static bool issue_rpc_cmd_free(struct optee_domain *ctx, shm_rpc->xen_arg->params[0].u.value.a = call->rpc_buffer_type; shm_rpc->xen_arg->params[0].u.value.b = cookie; - if ( access_guest_memory_by_ipa(current->domain, + if ( access_guest_memory_by_gpa(current->domain, gfn_to_gaddr(shm_rpc->gfn), shm_rpc->xen_arg, OPTEE_MSG_GET_ARG_SIZE(1), @@ -1462,7 +1462,7 @@ static void handle_rpc_cmd(struct optee_domain *ctx, struct cpu_user_regs *regs, shm_rpc->xen_arg = __map_domain_page(shm_rpc->xen_arg_pg); /* First, copy only header to read number of arguments */ - if ( access_guest_memory_by_ipa(current->domain, + if ( access_guest_memory_by_gpa(current->domain, gfn_to_gaddr(shm_rpc->gfn), shm_rpc->xen_arg, sizeof(struct optee_msg_arg), @@ -1480,7 +1480,7 @@ static void handle_rpc_cmd(struct optee_domain *ctx, struct cpu_user_regs *regs, } /* Read the whole command structure */ - if ( access_guest_memory_by_ipa(current->domain, gfn_to_gaddr(shm_rpc->gfn), + if ( access_guest_memory_by_gpa(current->domain, gfn_to_gaddr(shm_rpc->gfn), shm_rpc->xen_arg, arg_size, false) ) { shm_rpc->xen_arg->ret = TEEC_ERROR_GENERIC; diff --git a/xen/arch/arm/vgic-v3-its.c b/xen/arch/arm/vgic-v3-its.c index 299b384250..05429030b5 100644 --- a/xen/arch/arm/vgic-v3-its.c +++ b/xen/arch/arm/vgic-v3-its.c @@ -121,7 +121,7 @@ static int its_set_collection(struct virt_its *its, uint16_t collid, if ( collid >= its->max_collections ) return -ENOENT; - return access_guest_memory_by_ipa(its->d, + return access_guest_memory_by_gpa(its->d, addr + collid * sizeof(coll_table_entry_t), &vcpu_id, sizeof(vcpu_id), true); } @@ -139,7 +139,7 @@ static struct vcpu *get_vcpu_from_collection(struct virt_its *its, if ( collid >= its->max_collections ) return NULL; - ret = access_guest_memory_by_ipa(its->d, + ret = access_guest_memory_by_gpa(its->d, addr + collid * sizeof(coll_table_entry_t), &vcpu_id, sizeof(coll_table_entry_t), false); if ( ret ) @@ -161,7 +161,7 @@ static int its_set_itt_address(struct virt_its *its, uint32_t devid, if ( devid >= its->max_devices ) return -ENOENT; - return access_guest_memory_by_ipa(its->d, + return access_guest_memory_by_gpa(its->d, addr + devid * sizeof(dev_table_entry_t), &itt_entry, sizeof(itt_entry), true); } @@ -179,7 +179,7 @@ static int its_get_itt(struct virt_its *its, uint32_t devid, if ( devid >= its->max_devices ) return -EINVAL; - return access_guest_memory_by_ipa(its->d, + return access_guest_memory_by_gpa(its->d, addr + devid * sizeof(dev_table_entry_t), itt, sizeof(*itt), false); } @@ -226,7 +226,7 @@ static bool read_itte(struct virt_its *its, uint32_t devid, uint32_t evid, if ( addr == INVALID_PADDR ) return false; - if ( access_guest_memory_by_ipa(its->d, addr, &itte, sizeof(itte), false) ) + if ( access_guest_memory_by_gpa(its->d, addr, &itte, sizeof(itte), false) ) return false; vcpu = get_vcpu_from_collection(its, itte.collection); @@ -260,7 +260,7 @@ static bool write_itte(struct virt_its *its, uint32_t devid, itte.collection = collid; itte.vlpi = vlpi; - if ( access_guest_memory_by_ipa(its->d, addr, &itte, sizeof(itte), true) ) + if ( access_guest_memory_by_gpa(its->d, addr, &itte, sizeof(itte), true) ) return false; return true; @@ -405,7 +405,7 @@ static int update_lpi_property(struct domain *d, struct pending_irq *p) addr = d->arch.vgic.rdist_propbase & GENMASK(51, 12); - ret = access_guest_memory_by_ipa(d, addr + p->irq - LPI_OFFSET, + ret = access_guest_memory_by_gpa(d, addr + p->irq - LPI_OFFSET, &property, sizeof(property), false); if ( ret ) return ret; @@ -910,7 +910,7 @@ static int vgic_its_handle_cmds(struct domain *d, struct virt_its *its) { int ret; - ret = access_guest_memory_by_ipa(d, addr + its->creadr, + ret = access_guest_memory_by_gpa(d, addr + its->creadr, command, sizeof(command), false); if ( ret ) return ret; -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 26 09:52:44 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 09:52:44 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555379.867101 (Exim 4.92) (envelope-from ) id 1qDitg-0000P8-1k; Mon, 26 Jun 2023 09:52:36 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555379.867101; Mon, 26 Jun 2023 09:52:36 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDitf-0000P1-UJ; Mon, 26 Jun 2023 09:52:35 +0000 Received: by outflank-mailman (input) for mailman id 555379; Mon, 26 Jun 2023 09:52:34 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDite-0000Ov-Kt for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 09:52:34 +0000 Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 2a8e5802-1407-11ee-8611-37d641c3527e; Mon, 26 Jun 2023 11:52:31 +0200 (CEST) Received: from Dell.bugseng.com (unknown [37.163.27.55]) by support.bugseng.com (Postfix) with ESMTPSA id 2E3904EE0738; Mon, 26 Jun 2023 11:52:28 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 2a8e5802-1407-11ee-8611-37d641c3527e From: Federico Serafini To: xen-devel@lists.xenproject.org Cc: consulting@bugseng.com, Federico Serafini , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk , Michal Orzel , Xenia Ragiadakou , Ayan Kumar Halder Subject: [XEN PATCH v3 0/6] fix violations of MISRA C:2012 Rule 8.3 on parameter names. Date: Mon, 26 Jun 2023 11:52:12 +0200 Message-Id: X-Mailer: git-send-email 2.34.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit To comply with Rule 8.3 ("All declarations of an object or function shall use the same names and type qualifiers") change the parameter names in order to have function declarations consistent with the corresponding definitions. Changes in v3: - split previous patch in multiple parts to facilitate review. Changes in v2: - adapted parameter names in function definitions to the names used in function declarations when the context requires it; - reflected changes to the function identifier in order to maintain consistency with modifications on parameter names; - extended changes to definitions under xen/arch/arm/vgic Federico Serafini (6): xen/arm: change names in function access_guest_memory_by_ipa(). xen/arm: change parameter name 'vcpu' in domain() function definition. xen/arm: change parameter name 'pa' in ioremap_addr() definition. xen/arm: vgic: change parameter name in 'init' and 'free' functions. xen/arm: make parameter names of function declarations consistent. xen/arm: change parameter names in replace_grant_host_mapping(). xen/arch/arm/domain.c | 10 +++++----- xen/arch/arm/guest_walk.c | 6 +++--- xen/arch/arm/guestcopy.c | 2 +- xen/arch/arm/include/asm/fixmap.h | 2 +- xen/arch/arm/include/asm/gic.h | 2 +- xen/arch/arm/include/asm/gic_v3_its.h | 5 +++-- xen/arch/arm/include/asm/grant_table.h | 4 ++-- xen/arch/arm/include/asm/guest_access.h | 4 ++-- xen/arch/arm/include/asm/irq.h | 2 +- xen/arch/arm/include/asm/regs.h | 2 +- xen/arch/arm/include/asm/vgic.h | 4 ++-- xen/arch/arm/mm.c | 20 ++++++++++---------- xen/arch/arm/tee/optee.c | 10 +++++----- xen/arch/arm/vgic-v3-its.c | 16 ++++++++-------- xen/arch/arm/vgic/vgic-init.c | 12 ++++++------ 15 files changed, 51 insertions(+), 50 deletions(-) -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 26 09:52:46 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 09:52:46 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555382.867121 (Exim 4.92) (envelope-from ) id 1qDitq-0000wD-HU; Mon, 26 Jun 2023 09:52:46 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555382.867121; Mon, 26 Jun 2023 09:52:46 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDitq-0000w6-DJ; Mon, 26 Jun 2023 09:52:46 +0000 Received: by outflank-mailman (input) for mailman id 555382; Mon, 26 Jun 2023 09:52:45 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDitp-0000fc-1A for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 09:52:45 +0000 Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 31f811af-1407-11ee-b237-6b7b168915f2; Mon, 26 Jun 2023 11:52:43 +0200 (CEST) Received: from Dell.bugseng.com (unknown [37.163.27.55]) by support.bugseng.com (Postfix) with ESMTPSA id 1F0A24EE073D; Mon, 26 Jun 2023 11:52:41 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 31f811af-1407-11ee-b237-6b7b168915f2 From: Federico Serafini To: xen-devel@lists.xenproject.org Cc: consulting@bugseng.com, Federico Serafini , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk , Michal Orzel , Xenia Ragiadakou , Ayan Kumar Halder Subject: [XEN PATCH v3 2/6] xen/arm: change parameter name 'vcpu' in domain() function definition. Date: Mon, 26 Jun 2023 11:52:14 +0200 Message-Id: X-Mailer: git-send-email 2.34.1 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit In the current version of domain() function, the declaration (correctly) uses the parameter name 'v' while the definition uses the parameter name 'vcpu'. Since it is common to use 'v' to denote a vCPU, change the parameter name 'vcpu' of function definition to 'v', thus fixing a violation of MISRA C:2012 Rule 8.3. Signed-off-by: Federico Serafini --- xen/arch/arm/domain.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/xen/arch/arm/domain.c b/xen/arch/arm/domain.c index add9929b79..8c18e92079 100644 --- a/xen/arch/arm/domain.c +++ b/xen/arch/arm/domain.c @@ -1155,15 +1155,15 @@ void vcpu_block_unless_event_pending(struct vcpu *v) vcpu_unblock(current); } -void vcpu_kick(struct vcpu *vcpu) +void vcpu_kick(struct vcpu *v) { - bool running = vcpu->is_running; + bool running = v->is_running; - vcpu_unblock(vcpu); - if ( running && vcpu != current ) + vcpu_unblock(v); + if ( running && v != current ) { perfc_incr(vcpu_kick); - smp_send_event_check_mask(cpumask_of(vcpu->processor)); + smp_send_event_check_mask(cpumask_of(v->processor)); } } -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 26 09:52:48 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 09:52:48 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555384.867130 (Exim 4.92) (envelope-from ) id 1qDits-0001D7-Nd; Mon, 26 Jun 2023 09:52:48 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555384.867130; Mon, 26 Jun 2023 09:52:48 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDits-0001Cy-Kx; Mon, 26 Jun 2023 09:52:48 +0000 Received: by outflank-mailman (input) for mailman id 555384; Mon, 26 Jun 2023 09:52:46 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDitq-0000Ov-M8 for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 09:52:46 +0000 Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 331ca6ce-1407-11ee-8611-37d641c3527e; Mon, 26 Jun 2023 11:52:45 +0200 (CEST) Received: from Dell.bugseng.com (unknown [37.163.27.55]) by support.bugseng.com (Postfix) with ESMTPSA id 501624EE0741; Mon, 26 Jun 2023 11:52:43 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 331ca6ce-1407-11ee-8611-37d641c3527e From: Federico Serafini To: xen-devel@lists.xenproject.org Cc: consulting@bugseng.com, Federico Serafini , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk , Michal Orzel , Xenia Ragiadakou , Ayan Kumar Halder Subject: [XEN PATCH v3 3/6] xen/arm: change parameter name 'pa' in ioremap_addr() definition. Date: Mon, 26 Jun 2023 11:52:15 +0200 Message-Id: <74fdc69fd08d1a0e35d4f226ea0c47a6f6a3a241.1687771796.git.federico.serafini@bugseng.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit In the current version of ioremap_addr() function, the declaration uses the parameter name 'start' (consistenly with the other ioremap_* function declarations), while the definition uses the parameter name 'pa'. Change the parameter name 'pa' of function definition to 'start', thus fixing a violation of MISRA C:2012 Rule 8.3 and keeping the consistency with other ioremap_* functions. Signed-off-by: Federico Serafini --- xen/arch/arm/mm.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/xen/arch/arm/mm.c b/xen/arch/arm/mm.c index e460249736..2e9860a754 100644 --- a/xen/arch/arm/mm.c +++ b/xen/arch/arm/mm.c @@ -736,10 +736,10 @@ void *__init arch_vmap_virt_end(void) * This function should only be used to remap device address ranges * TODO: add a check to verify this assumption */ -void *ioremap_attr(paddr_t pa, size_t len, unsigned int attributes) +void *ioremap_attr(paddr_t start, size_t len, unsigned int attributes) { - mfn_t mfn = _mfn(PFN_DOWN(pa)); - unsigned int offs = pa & (PAGE_SIZE - 1); + mfn_t mfn = _mfn(PFN_DOWN(start)); + unsigned int offs = start & (PAGE_SIZE - 1); unsigned int nr = PFN_UP(offs + len); void *ptr = __vmap(&mfn, nr, 1, 1, attributes, VMAP_DEFAULT); @@ -1579,7 +1579,7 @@ void put_page_type(struct page_info *page) return; } -int create_grant_host_mapping(unsigned long addr, mfn_t frame, +int create_grant_host_mapping(unsigned long gpaddr, mfn_t frame, unsigned int flags, unsigned int cache_flags) { int rc; @@ -1591,7 +1591,7 @@ int create_grant_host_mapping(unsigned long addr, mfn_t frame, if ( flags & GNTMAP_readonly ) t = p2m_grant_map_ro; - rc = guest_physmap_add_entry(current->domain, gaddr_to_gfn(addr), + rc = guest_physmap_add_entry(current->domain, gaddr_to_gfn(gpaddr), frame, 0, t); if ( rc ) -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 26 09:52:50 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 09:52:50 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555385.867141 (Exim 4.92) (envelope-from ) id 1qDitu-0001Tz-1U; Mon, 26 Jun 2023 09:52:50 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555385.867141; Mon, 26 Jun 2023 09:52:50 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDitt-0001Tq-UE; Mon, 26 Jun 2023 09:52:49 +0000 Received: by outflank-mailman (input) for mailman id 555385; Mon, 26 Jun 2023 09:52:48 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDits-0000Ov-MW for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 09:52:48 +0000 Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 344ca788-1407-11ee-8611-37d641c3527e; Mon, 26 Jun 2023 11:52:47 +0200 (CEST) Received: from Dell.bugseng.com (unknown [37.163.27.55]) by support.bugseng.com (Postfix) with ESMTPSA id 4170B4EE073F; Mon, 26 Jun 2023 11:52:45 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 344ca788-1407-11ee-8611-37d641c3527e From: Federico Serafini To: xen-devel@lists.xenproject.org Cc: consulting@bugseng.com, Federico Serafini , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk , Michal Orzel , Xenia Ragiadakou , Ayan Kumar Halder Subject: [XEN PATCH v3 4/6] xen/arm: vgic: change parameter name in 'init' and 'free' functions. Date: Mon, 26 Jun 2023 11:52:16 +0200 Message-Id: <0332cf060e181d60e249a004182be011f93602a2.1687771796.git.federico.serafini@bugseng.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit In the current versions of vcpu_vgic_init() and vcpu_vgic_free(), the declarations (correctly) use the parameter name 'v' while the corresponding definitions use the parameter name 'vcpu'. Since it is common to use 'v' to denote a vCPU, change the parameter name 'vcpu' of function definitions to 'v', thus fixing violations of MISRA C:2012 Rule 8.3. Signed-off-by: Federico Serafini --- xen/arch/arm/vgic/vgic-init.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/xen/arch/arm/vgic/vgic-init.c b/xen/arch/arm/vgic/vgic-init.c index ea739d081e..76b85ea823 100644 --- a/xen/arch/arm/vgic/vgic-init.c +++ b/xen/arch/arm/vgic/vgic-init.c @@ -196,16 +196,16 @@ int domain_vgic_init(struct domain *d, unsigned int nr_spis) * vcpu_vgic_init() - Register VCPU-specific KVM iodevs * was: kvm_vgic_vcpu_init() * Xen: adding vgic_vx_enable() call - * @vcpu: pointer to the VCPU being created and initialized + * @v: pointer to the VCPU being created and initialized */ -int vcpu_vgic_init(struct vcpu *vcpu) +int vcpu_vgic_init(struct vcpu *v) { int ret = 0; - vgic_vcpu_early_init(vcpu); + vgic_vcpu_early_init(v); if ( gic_hw_version() == GIC_V2 ) - vgic_v2_enable(vcpu); + vgic_v2_enable(v); else ret = -ENXIO; @@ -239,9 +239,9 @@ void domain_vgic_free(struct domain *d) dist->nr_spis = 0; } -int vcpu_vgic_free(struct vcpu *vcpu) +int vcpu_vgic_free(struct vcpu *v) { - struct vgic_cpu *vgic_cpu = &vcpu->arch.vgic; + struct vgic_cpu *vgic_cpu = &v->arch.vgic; INIT_LIST_HEAD(&vgic_cpu->ap_list_head); -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 26 09:52:51 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 09:52:51 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555386.867151 (Exim 4.92) (envelope-from ) id 1qDitv-0001l1-9s; Mon, 26 Jun 2023 09:52:51 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555386.867151; Mon, 26 Jun 2023 09:52:51 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDitv-0001kq-5v; Mon, 26 Jun 2023 09:52:51 +0000 Received: by outflank-mailman (input) for mailman id 555386; Mon, 26 Jun 2023 09:52:50 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDitu-0000Ov-62 for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 09:52:50 +0000 Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 3518813d-1407-11ee-8611-37d641c3527e; Mon, 26 Jun 2023 11:52:48 +0200 (CEST) Received: from Dell.bugseng.com (unknown [37.163.27.55]) by support.bugseng.com (Postfix) with ESMTPSA id 1A37A4EE0740; Mon, 26 Jun 2023 11:52:47 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 3518813d-1407-11ee-8611-37d641c3527e From: Federico Serafini To: xen-devel@lists.xenproject.org Cc: consulting@bugseng.com, Federico Serafini , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk , Michal Orzel , Xenia Ragiadakou , Ayan Kumar Halder Subject: [XEN PATCH v3 5/6] xen/arm: make parameter names of function declarations consistent. Date: Mon, 26 Jun 2023 11:52:17 +0200 Message-Id: <5d0075418f0674e0ca1f63744b87b27085a0d865.1687771796.git.federico.serafini@bugseng.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Change the parameter names of function declarations to be consistent with the names used in the corresponding function definitions, thus fixing violations of MISRA C:2012 Rule 8.3. Signed-off-by: Federico Serafini --- xen/arch/arm/include/asm/fixmap.h | 2 +- xen/arch/arm/include/asm/gic.h | 2 +- xen/arch/arm/include/asm/gic_v3_its.h | 5 +++-- xen/arch/arm/include/asm/grant_table.h | 2 +- xen/arch/arm/include/asm/guest_access.h | 2 +- xen/arch/arm/include/asm/irq.h | 2 +- xen/arch/arm/include/asm/regs.h | 2 +- xen/arch/arm/include/asm/vgic.h | 4 ++-- 8 files changed, 11 insertions(+), 10 deletions(-) diff --git a/xen/arch/arm/include/asm/fixmap.h b/xen/arch/arm/include/asm/fixmap.h index d0c9a52c8c..734eb9b1d4 100644 --- a/xen/arch/arm/include/asm/fixmap.h +++ b/xen/arch/arm/include/asm/fixmap.h @@ -30,7 +30,7 @@ extern lpae_t xen_fixmap[XEN_PT_LPAE_ENTRIES]; /* Map a page in a fixmap entry */ -extern void set_fixmap(unsigned int map, mfn_t mfn, unsigned int attributes); +extern void set_fixmap(unsigned int map, mfn_t mfn, unsigned int flags); /* Remove a mapping from a fixmap entry */ extern void clear_fixmap(unsigned int map); diff --git a/xen/arch/arm/include/asm/gic.h b/xen/arch/arm/include/asm/gic.h index 76e3fa5dc4..f1ef347edc 100644 --- a/xen/arch/arm/include/asm/gic.h +++ b/xen/arch/arm/include/asm/gic.h @@ -257,7 +257,7 @@ int gic_remove_irq_from_guest(struct domain *d, unsigned int virq, extern void gic_clear_pending_irqs(struct vcpu *v); extern void init_maintenance_interrupt(void); -extern void gic_raise_guest_irq(struct vcpu *v, unsigned int irq, +extern void gic_raise_guest_irq(struct vcpu *v, unsigned int virtual_irq, unsigned int priority); extern void gic_raise_inflight_irq(struct vcpu *v, unsigned int virtual_irq); diff --git a/xen/arch/arm/include/asm/gic_v3_its.h b/xen/arch/arm/include/asm/gic_v3_its.h index fae3f6ecef..c24d4752d0 100644 --- a/xen/arch/arm/include/asm/gic_v3_its.h +++ b/xen/arch/arm/include/asm/gic_v3_its.h @@ -190,8 +190,9 @@ struct pending_irq *gicv3_its_get_event_pending_irq(struct domain *d, uint32_t eventid); int gicv3_remove_guest_event(struct domain *d, paddr_t vdoorbell_address, uint32_t vdevid, uint32_t eventid); -struct pending_irq *gicv3_assign_guest_event(struct domain *d, paddr_t doorbell, - uint32_t devid, uint32_t eventid, +struct pending_irq *gicv3_assign_guest_event(struct domain *d, + paddr_t vdoorbell_address, + uint32_t vdevid, uint32_t eventid, uint32_t virt_lpi); void gicv3_lpi_update_host_entry(uint32_t host_lpi, int domain_id, uint32_t virt_lpi); diff --git a/xen/arch/arm/include/asm/grant_table.h b/xen/arch/arm/include/asm/grant_table.h index e13dfeefa5..265e598e56 100644 --- a/xen/arch/arm/include/asm/grant_table.h +++ b/xen/arch/arm/include/asm/grant_table.h @@ -36,7 +36,7 @@ static inline bool gnttab_release_host_mappings(const struct domain *d) return true; } -int create_grant_host_mapping(unsigned long gpaddr, mfn_t mfn, +int create_grant_host_mapping(unsigned long gpaddr, mfn_t frame, unsigned int flags, unsigned int cache_flags); int replace_grant_host_mapping(unsigned long gpaddr, mfn_t mfn, unsigned long new_gpaddr, unsigned int flags); diff --git a/xen/arch/arm/include/asm/guest_access.h b/xen/arch/arm/include/asm/guest_access.h index 8278a45dbf..18c88b70d7 100644 --- a/xen/arch/arm/include/asm/guest_access.h +++ b/xen/arch/arm/include/asm/guest_access.h @@ -12,7 +12,7 @@ unsigned long raw_clear_guest(void *to, unsigned int len); /* Copy data to guest physical address, then clean the region. */ unsigned long copy_to_guest_phys_flush_dcache(struct domain *d, - paddr_t phys, + paddr_t gpa, void *buf, unsigned int len); diff --git a/xen/arch/arm/include/asm/irq.h b/xen/arch/arm/include/asm/irq.h index 11bc85d111..105b33b37d 100644 --- a/xen/arch/arm/include/asm/irq.h +++ b/xen/arch/arm/include/asm/irq.h @@ -76,7 +76,7 @@ void init_IRQ(void); int route_irq_to_guest(struct domain *d, unsigned int virq, unsigned int irq, const char *devname); -int release_guest_irq(struct domain *d, unsigned int irq); +int release_guest_irq(struct domain *d, unsigned int virq); void arch_move_irqs(struct vcpu *v); diff --git a/xen/arch/arm/include/asm/regs.h b/xen/arch/arm/include/asm/regs.h index 0693a68131..ef34b38aa1 100644 --- a/xen/arch/arm/include/asm/regs.h +++ b/xen/arch/arm/include/asm/regs.h @@ -58,7 +58,7 @@ static inline bool guest_mode(const struct cpu_user_regs *r) } register_t get_user_reg(struct cpu_user_regs *regs, int reg); -void set_user_reg(struct cpu_user_regs *regs, int reg, register_t val); +void set_user_reg(struct cpu_user_regs *regs, int reg, register_t value); #endif diff --git a/xen/arch/arm/include/asm/vgic.h b/xen/arch/arm/include/asm/vgic.h index 328fd46d1b..aa9f49409e 100644 --- a/xen/arch/arm/include/asm/vgic.h +++ b/xen/arch/arm/include/asm/vgic.h @@ -355,8 +355,8 @@ bool vgic_evtchn_irq_pending(struct vcpu *v); int domain_vgic_register(struct domain *d, int *mmio_count); int domain_vgic_init(struct domain *d, unsigned int nr_spis); void domain_vgic_free(struct domain *d); -int vcpu_vgic_init(struct vcpu *vcpu); -int vcpu_vgic_free(struct vcpu *vcpu); +int vcpu_vgic_init(struct vcpu *v); +int vcpu_vgic_free(struct vcpu *v); void vgic_inject_irq(struct domain *d, struct vcpu *v, unsigned int virq, bool level); -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 26 09:52:54 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 09:52:54 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555387.867161 (Exim 4.92) (envelope-from ) id 1qDity-0002Ah-MS; Mon, 26 Jun 2023 09:52:54 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555387.867161; Mon, 26 Jun 2023 09:52:54 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDity-0002AW-I8; Mon, 26 Jun 2023 09:52:54 +0000 Received: by outflank-mailman (input) for mailman id 555387; Mon, 26 Jun 2023 09:52:51 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDitv-0000Ov-J4 for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 09:52:51 +0000 Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 36049170-1407-11ee-8611-37d641c3527e; Mon, 26 Jun 2023 11:52:50 +0200 (CEST) Received: from Dell.bugseng.com (unknown [37.163.27.55]) by support.bugseng.com (Postfix) with ESMTPSA id 6EE0D4EE0742; Mon, 26 Jun 2023 11:52:48 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 36049170-1407-11ee-8611-37d641c3527e From: Federico Serafini To: xen-devel@lists.xenproject.org Cc: consulting@bugseng.com, Federico Serafini , Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk , Michal Orzel , Xenia Ragiadakou , Ayan Kumar Halder Subject: [XEN PATCH v3 6/6] xen/arm: change parameter names in replace_grant_host_mapping(). Date: Mon, 26 Jun 2023 11:52:18 +0200 Message-Id: <2c2b9b3c53e556945baab3dd387bf029e12434b6.1687771796.git.federico.serafini@bugseng.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit In the current version of replace_grant_host_mapping() function, the declaration (correctly) uses the parameter names 'gpaddr' and 'new_gpaddr', while the definition uses the parameter names 'addr' and 'new_addr'. Change the parameter names of the definition to 'gpaddr' and 'new_gpaddr' so that it is clear what type of address is expected and violations of MISRA C:2012 Rule 8.3 are fixed. In both declaration and definition of function replace_grant_host_mapping() change the parameter name 'mfn' to 'frame', thus improving readability and keeping consistency with name used in create_grant_host_mapping(). Signed-off-by: Federico Serafini --- xen/arch/arm/include/asm/grant_table.h | 2 +- xen/arch/arm/mm.c | 10 +++++----- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/xen/arch/arm/include/asm/grant_table.h b/xen/arch/arm/include/asm/grant_table.h index 265e598e56..f2d115b97d 100644 --- a/xen/arch/arm/include/asm/grant_table.h +++ b/xen/arch/arm/include/asm/grant_table.h @@ -38,7 +38,7 @@ static inline bool gnttab_release_host_mappings(const struct domain *d) int create_grant_host_mapping(unsigned long gpaddr, mfn_t frame, unsigned int flags, unsigned int cache_flags); -int replace_grant_host_mapping(unsigned long gpaddr, mfn_t mfn, +int replace_grant_host_mapping(unsigned long gpaddr, mfn_t frame, unsigned long new_gpaddr, unsigned int flags); /* diff --git a/xen/arch/arm/mm.c b/xen/arch/arm/mm.c index 2e9860a754..0a3e1f3b64 100644 --- a/xen/arch/arm/mm.c +++ b/xen/arch/arm/mm.c @@ -1600,17 +1600,17 @@ int create_grant_host_mapping(unsigned long gpaddr, mfn_t frame, return GNTST_okay; } -int replace_grant_host_mapping(unsigned long addr, mfn_t mfn, - unsigned long new_addr, unsigned int flags) +int replace_grant_host_mapping(unsigned long gpaddr, mfn_t frame, + unsigned long new_gpaddr, unsigned int flags) { - gfn_t gfn = gaddr_to_gfn(addr); + gfn_t gfn = gaddr_to_gfn(gpaddr); struct domain *d = current->domain; int rc; - if ( new_addr != 0 || (flags & GNTMAP_contains_pte) ) + if ( new_gpaddr != 0 || (flags & GNTMAP_contains_pte) ) return GNTST_general_error; - rc = guest_physmap_remove_page(d, gfn, mfn, 0); + rc = guest_physmap_remove_page(d, gfn, frame, 0); return rc ? GNTST_general_error : GNTST_okay; } -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 26 10:10:30 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 10:10:30 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555423.867171 (Exim 4.92) (envelope-from ) id 1qDjAl-0006JC-2E; Mon, 26 Jun 2023 10:10:15 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555423.867171; Mon, 26 Jun 2023 10:10:15 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDjAk-0006J5-Vk; Mon, 26 Jun 2023 10:10:14 +0000 Received: by outflank-mailman (input) for mailman id 555423; Mon, 26 Jun 2023 10:10:13 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDjAj-0005SQ-H3 for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 10:10:13 +0000 Received: from mail-lf1-x133.google.com (mail-lf1-x133.google.com [2a00:1450:4864:20::133]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id a3218cc5-1409-11ee-b237-6b7b168915f2; Mon, 26 Jun 2023 12:10:11 +0200 (CEST) Received: by mail-lf1-x133.google.com with SMTP id 2adb3069b0e04-4f867700f36so4010414e87.0 for ; Mon, 26 Jun 2023 03:10:12 -0700 (PDT) Received: from [192.168.157.227] (141.pool92-176-132.dynamic.orange.es. [92.176.132.141]) by smtp.gmail.com with ESMTPSA id j19-20020a5d4533000000b0030fafcbbd33sm6833820wra.50.2023.06.26.03.10.08 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Mon, 26 Jun 2023 03:10:10 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: a3218cc5-1409-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1687774211; x=1690366211; h=content-transfer-encoding:in-reply-to:from:references:cc:to :content-language:subject:user-agent:mime-version:date:message-id :from:to:cc:subject:date:message-id:reply-to; bh=74FM579RKOmTf3FtTjRf/xU5EA/KuNtZjlzUaBEQ9kQ=; b=S8VAOmGaHb+ynWL6PZdVTf20DDVl7Z0It/rfFFEA3rSrWW+j7oWDON4RLsGfkPpCqg 5K6cTpsgQ/ww7o9lKt0rscznpi0y3ON8sIMjAotM5fWDSWqhA2sWG/QGwe6xuOPyTbgu TYNlDvI/QyqlbLGhnBaJ/x1CdnyNNWscnSzCSnH3cVi1dvHW9i/qn8ytvt5RZg2BcSxY JAqOG8lDnR76XNPVCf8bQuQBr0C1oux9e3zeBHuaJ35patRNb5yVtEzDD4NinVJuEZ09 w5m4X5x6pIzlQvYSzuUAYIMRreEMGvvUVLY1IEIXa36eyW8RjH0UxtomgZPp9sG1XXId Bm2Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687774211; x=1690366211; h=content-transfer-encoding:in-reply-to:from:references:cc:to :content-language:subject:user-agent:mime-version:date:message-id :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=74FM579RKOmTf3FtTjRf/xU5EA/KuNtZjlzUaBEQ9kQ=; b=bS/ushDLHULNYqoIBRrBoBbmSCtUZ+WyWvzvs6+8IMQpvNKtQbCOVrTK0nWOLEQrPs 6gV6YQeMtZNf8flfVra0ucpzC4cNhNPIW+ZUUBUOq4xDKC8Fq2+8w4BwI6V+jU1Y4ZcI wp3OORh5ZuA9hZ35DNYIqph9QWcOmDwsEAqFf0vgq38UzTJiOYb797G/jCadkvCweN1Z IQW5FhNH9ffrQjk2FaOQY1vVHkukBYFWSFQy1gXmxDsHgdZY6OZb6iWaLZvChlwu2xqi ZVBfICvWOEyvH38nwJOlE/zdf/iL1dkc059axMzTayphEL9mIQaSAgws74TMpwfIdx6l 5SOA== X-Gm-Message-State: AC+VfDz7SiHO5Thd+I4ghly92YcQXV19WzObSEiavd2C5G92y1rKmNs6 TJFm06Guehvicd6R65Sc1Oasqw== X-Google-Smtp-Source: ACHHUZ6vqORSRxMfrjz7CD/A/+w802FrwEYPSRxttM5nM7zy+gOj9GIQg8wRk+pyySrD350QiwEj1A== X-Received: by 2002:a19:7108:0:b0:4ef:f11c:f5b0 with SMTP id m8-20020a197108000000b004eff11cf5b0mr15203630lfc.54.1687774210741; Mon, 26 Jun 2023 03:10:10 -0700 (PDT) Message-ID: <93dda239-00cb-3c5a-c7c2-6ade248e147b@linaro.org> Date: Mon, 26 Jun 2023 12:10:05 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH v3 07/16] accel: Rename HAX 'struct hax_vcpu_state' -> AccelCPUState Content-Language: en-US To: =?UTF-8?Q?Philippe_Mathieu-Daud=c3=a9?= , qemu-devel@nongnu.org Cc: kvm@vger.kernel.org, Marcel Apfelbaum , Peter Maydell , Roman Bolshakov , qemu-arm@nongnu.org, Alexander Graf , xen-devel@lists.xenproject.org, Sunil Muthuswamy , Anthony Perard , Stefano Stabellini , Yanan Wang , Paul Durrant , Reinoud Zandijk , Eduardo Habkost , Cameron Esfahani , Paolo Bonzini References: <20230624174121.11508-1-philmd@linaro.org> <20230624174121.11508-8-philmd@linaro.org> From: Richard Henderson In-Reply-To: <20230624174121.11508-8-philmd@linaro.org> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit On 6/24/23 19:41, Philippe Mathieu-Daudé wrote: > We want all accelerators to share the same opaque pointer in > CPUState. Start with the HAX context, renaming its forward > declarated structure 'hax_vcpu_state' as 'AccelCPUState'. > Document the CPUState field. Directly use the typedef. > > Remove the amusing but now unnecessary casts in NVMM / WHPX. > > Signed-off-by: Philippe Mathieu-Daudé > --- > include/hw/core/cpu.h | 5 ++--- > include/qemu/typedefs.h | 1 + > target/i386/hax/hax-i386.h | 9 +++++---- > target/i386/hax/hax-all.c | 16 ++++++++-------- > target/i386/hax/hax-posix.c | 4 ++-- > target/i386/hax/hax-windows.c | 4 ++-- > target/i386/nvmm/nvmm-all.c | 2 +- > target/i386/whpx/whpx-all.c | 2 +- > 8 files changed, 22 insertions(+), 21 deletions(-) Reviewed-by: Richard Henderson r~ From xen-devel-bounces@lists.xenproject.org Mon Jun 26 11:06:45 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 11:06:45 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555429.867181 (Exim 4.92) (envelope-from ) id 1qDk3D-0003PX-8G; Mon, 26 Jun 2023 11:06:31 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555429.867181; Mon, 26 Jun 2023 11:06:31 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDk3D-0003PQ-5I; Mon, 26 Jun 2023 11:06:31 +0000 Received: by outflank-mailman (input) for mailman id 555429; Mon, 26 Jun 2023 11:06:30 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDk3C-0003PK-Mm for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 11:06:30 +0000 Received: from smtp-out2.suse.de (smtp-out2.suse.de [2001:67c:2178:6::1d]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 7f095ac0-1411-11ee-8611-37d641c3527e; Mon, 26 Jun 2023 13:06:27 +0200 (CEST) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by smtp-out2.suse.de (Postfix) with ESMTPS id F1A4E1F898; Mon, 26 Jun 2023 11:06:26 +0000 (UTC) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id C196F13483; Mon, 26 Jun 2023 11:06:26 +0000 (UTC) Received: from dovecot-director2.suse.de ([192.168.254.65]) by imap2.suse-dmz.suse.de with ESMTPSA id 0NtqLTJxmWRNIQAAMHmgww (envelope-from ); Mon, 26 Jun 2023 11:06:26 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 7f095ac0-1411-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1; t=1687777586; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=q06njBzDZ06pzPoqAfFSa9o2emzaxXz08iy1AQ4CwQ8=; b=VKzgjI5+iXg3baKxnLTgruTnVsLMW0HsgsPmKz/Ie3KcZjVthZYpKstdLGmQww0kfxGoXe EqwoyGiZprPKkK8nYEFsgdrlvAeoYHXaqGFA63vCSPD+4VIJlKtWZ/EZd/mG2EK1YGJfFN I8ASasOKxDgC8jfhoaAJIQPy43/7/Dc= Message-ID: <2bfc737a-53c5-ef13-835e-97933a57f414@suse.com> Date: Mon, 26 Jun 2023 13:06:26 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Content-Language: en-US To: Julien Grall , xen-devel@lists.xenproject.org Cc: Wei Liu , Anthony PERARD References: <20230530091333.7678-1-jgross@suse.com> <20230530091333.7678-11-jgross@suse.com> From: Juergen Gross Subject: Re: [PATCH 10/11] tools/xenstore: drop use of tdb In-Reply-To: Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="------------m0K8SS3FOBwsKMdH0zXhNuIL" This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --------------m0K8SS3FOBwsKMdH0zXhNuIL Content-Type: multipart/mixed; boundary="------------gDXxzU0TCsafvRKtdcwLnrCH"; protected-headers="v1" From: Juergen Gross To: Julien Grall , xen-devel@lists.xenproject.org Cc: Wei Liu , Anthony PERARD Message-ID: <2bfc737a-53c5-ef13-835e-97933a57f414@suse.com> Subject: Re: [PATCH 10/11] tools/xenstore: drop use of tdb References: <20230530091333.7678-1-jgross@suse.com> <20230530091333.7678-11-jgross@suse.com> In-Reply-To: --------------gDXxzU0TCsafvRKtdcwLnrCH Content-Type: multipart/mixed; boundary="------------zuxdjpFnzN780GEyrBuIPjIv" --------------zuxdjpFnzN780GEyrBuIPjIv Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: base64 T24gMTkuMDYuMjMgMjA6MjIsIEp1bGllbiBHcmFsbCB3cm90ZToNCj4gSGkgSnVlcmdlbiwN Cj4gDQo+IEkgaGF2ZW4ndCBsb29rZWQgYXQgdGhlIGNvZGUgaW4gZGV0YWlscyB5ZXQuIEJ1 dCBJIGhhdmUgYSBmZXcgcXVlc3Rpb25zIA0KPiByZWdhcmRpbmcgdGhlIGNvbW1pdCBtZXNz YWdlLw0KPiANCj4gT24gMzAvMDUvMjAyMyAxMDoxMywgSnVlcmdlbiBHcm9zcyB3cm90ZToN Cj4+IFRvZGF5IGFsbCBYZW5zdG9yZSBub2RlcyBhcmUgc3RvcmVkIGluIGEgVERCIGRhdGEg YmFzZS4gVGhpcyBkYXRhIGJhc2UNCj4+IGhhcyBzZXZlcmFsIGRpc2FkdmFudGFnZXM6DQo+ Pg0KPj4gLSBpdCBpcyB1c2luZyBhIGZpeGVkIHNpemVkIGhhc2ggdGFibGUsIHJlc3VsdGlu ZyBpbiBoaWdoIG1lbW9yeQ0KPj4gwqDCoCBvdmVyaGVhZCBmb3Igc21hbGwgaW5zdGFsbGF0 aW9ucyB3aXRoIG9ubHkgdmVyeSBmZXcgVk1zLCBhbmQgYSByYXRoZXINCj4+IMKgwqAgbGFy Z2UgcGVyZm9ybWFuY2UgaGl0IGZvciBzeXN0ZW1zIHdpdGggbG90cyBvZiBWTXMgZHVlIHRv IG1hbnkNCj4+IMKgwqAgY29sbGlzaW9ucw0KPiANCj4gQ2FuIHlvdSBwcm92aWRlIHNvbWUg Y29uY3JldGUgbnVtYmVycyBhbmQgYSBzZXR1cCBpbiBtaW5kPyBUaGlzIHdvdWxkIGhlbHAg aWYgDQo+IHNvbWVvbmUgaW4gdGhlIGZ1dHVyZSBzYXlzIHRoYXQgdGhleSBzZWUgdGhlIGlu dmVyc2UgYW5kIHdlIG5lZWQgdG8gcmV3b3JrIHRoZSANCj4gbG9naWMuDQoNClRoZSBoYXNo IHRhYmxlIHNpemUgdG9kYXkgaXMgNzkxOSBlbnRyaWVzLiBUaGlzIG1lYW5zIHRoYXQgZS5n LiBpbiBjYXNlDQpvZiBhIHNpbXBsZSBkZXNrdG9wIHVzZSBjYXNlIHdpdGggMiBvciAzIFZN cyBwcm9iYWJseSBmYXIgbGVzcyB0aGFuIDEwJQ0Kb2YgdGhlIGVudHJpZXMgd2lsbCBiZSB1 c2VkIChhc3N1bWluZyByb3VnaGx5IDEwMCBub2RlcyBwZXIgVk0pLiBPVE9IIGENCnNldHVw IG9uIGEgbGFyZ2Ugc2VydmVyIHdpdGggNTAwIFZNcyB3b3VsZCByZXN1bHQgaW4gaGVhdnkg Y29uZmxpY3RzIGluDQp0aGUgaGFzaCBsaXN0IHdpdGggNS0xMCBub2RlcyBwZXIgaGFzaCB0 YWJsZSBlbnRyeS4NCg0KPiANCj4+DQo+PiAtIFhlbnN0b3JlIGlzIG9ubHkgc2luZ2xlLXRo cmVhZGVkLCB3aGlsZSBUREIgaXMgZGVzaWduZWQgdG8gYmUgZml0DQo+PiDCoMKgIGZvciBt dWx0aS10aHJlYWRlZCB1c2UgY2FzZXMsIHJlc3VsdGluZyBpbiBtdWNoIGhpZ2hlciBjb2Rl DQo+PiDCoMKgIGNvbXBsZXhpdHkgdGhhbiBuZWVkZWQNCj4+DQo+PiAtIHNwZWNpYWwgdXNl IGNhc2VzIG9mIFhlbnN0b3JlIGFyZSBub3QgcG9zc2libGUgdG8gaW1wbGVtZW50IHdpdGgg VEQNCj4gDQo+IEJ5IHNwZWNpYWwgdXNlIGNhc2VzLCBhcmUgeW91IHJlZmVycmluZyB0byBv bmx5IHRoZSB0cmFuc2FjdGlvbiBiZWxvdz8gSWYgbm90IA0KPiBjYW4geW91IG91dGxpbmUg aXQ/DQoNCkkgd2FzIHRoaW5raW5nIG9mIHNwbGl0dGluZyBlYWNoIG5vZGUgaW4gdGhlIGRh dGEgYmFzZSBpbnRvIGEgaGVhZGVyLCB0aGUNCmNoaWxkcmVuIGxpc3QgYW5kIHRoZSBub2Rl IGNvbnRlbnRzLiBUaGlzIHdvdWxkIGVuYWJsZSB1cyB0byB1cGRhdGUgb25seQ0KdGhlIHBh cnRzIHdoaWNoIGFyZSBjaGFuZ2VkLiBBZGRpdGlvbmFsbHkgcmVhZC1vbmx5IG9wZXJhdGlv bnMgY291bGQganVzdA0KdXNlIHRoZSBpbnN0YW5jZSBvZiB0aGUgbm9kZSBpbiB0aGUgZGF0 YSBiYXNlIHZpYSBhIHBvaW50ZXIgaW5zdGVhZCBvZg0KYWxsb2NhdGluZyBtZW1vcnkgZm9y IGEgY29weSBvZiB0aGUgbm9kZS4NCg0KRm9yIHRyYW5zYWN0aW9ucyBJJ2QgbGlrZSB0byB1 c2UgYSBjb3B5LW9uLXdyaXRlIHNjaGVtZSB3aXRoIGEgcGVyLW5vZGUNCmxpc3Qgb2YgdGhl IGRpZmZlcmVudCB0cmFuc2FjdGlvbiBzcGVjaWZpYyBpbnN0YW5jZXMgb2YgYSBub2RlICh0 aGlzIG5lZWRzDQpzb21lIG1vcmUgdGhvdWdodCwgdGhvdWdoKS4NCg0KPiANCj4+IMKgwqAg aW4gYW4gZWZmZWN0aXZlIHdheSwgd2hpbGUgYW4gaW1wbGVtZW50YXRpb24gb2YgYSBkYXRh IGJhc2UgdGFpbG9yZWQNCj4+IMKgwqAgZm9yIFhlbnN0b3JlIGNvdWxkIHNpbXBsaWZ5IHNv bWUgaGFuZGxpbmcgKGUuZy4gdHJhbnNhY3Rpb25zKSBhIGxvdA0KPiANCj4gRG8geW91IGhh dmUgZm9sbG93LXVwIHBhdGNoZXMgdGhhdCB3b3VsZCBoZWxwIHRvIGZpZ3VyaW5nIG91dCB3 aGV0aGVyIHlvdXIgbmV3IA0KPiBpbnRlcmZhY2UgbWFrZXMgc2Vuc2U/DQoNCk5vdCB5ZXQu DQoNCj4gDQo+Pg0KPj4gU28gZHJvcCB1c2luZyBUREIgYW5kIHN0b3JlIHRoZSBub2RlcyBk aXJlY3RseSBpbiBtZW1vcnkgbWFraW5nIHRoZW0NCj4+IGVhc2lseSBhY2Nlc3NpYmxlLiBV c2UgYSBoYXNoLWJhc2VkIGxvb2t1cCBtZWNoYW5pc20gZm9yIGZhc3QgbG9va3VwDQo+PiBv ZiBub2RlcyBieSB0aGVpciBmdWxsIHBhdGguDQo+Pg0KPj4gRm9yIG5vdyBvbmx5IHJlcGxh Y2UgVERCIGtlZXBpbmcgdGhlIGN1cnJlbnQgYWNjZXNzIGZ1bmN0aW9ucy4NCj4gDQo+IERv IHlvdSBwbGFuIHRvIGhhdmUgdGhlIHJlc3Qgb2YgdGhlIHdvcmsgdXBzdHJlYW1lZCBmb3Ig NC4xOD8gQWxzbywgaWYgZm9yIHNvbWUgDQo+IHJlYXNvbnMsIG9ubHkgdGhpcyB3b3JrIHdp bGwgYmUgbWVyZ2VkLiBXaWxsIHRoaXMgaGF2ZSBhbiBpbXBhY3Qgb24gWGVuc3RvcmVkIA0K PiBtZW1vcnkgdXNhZ2UvcGVyZm9ybWFuY2U/DQoNCk1lbW9yeSB1c2FnZSBzaG91bGQgZ28g ZG93biwgZXNwZWNpYWxseSBhZnRlciBkZWxldGluZyBsb3RzIG9mIGVudHJpZXMNCihBRkFJ SyBUREIgd2lsbCBuZXZlciBmcmVlIHRoZSB1bnVzZWQgbWVtb3J5IGFnYWluLCBpdCB3aWxs IGp1c3Qga2VlcCBpdA0KZm9yIHRoZSBmdXR1cmUpLg0KDQpNZW1vcnkgZnJhZ21lbnRhdGlv biBtaWdodCBnbyB1cCwgdGhvdWdoLg0KDQpQZXJmb3JtYW5jZSBtaWdodCBiZSBiZXR0ZXIs IHRvbywgYXMgdGhlcmUgaXMgbm8gbmVlZCB0byByZWFsbG9jKCkgdGhlDQptZW1vcnkgd2hl biBhZGRpbmcgbm9kZXMuDQoNCg0KSnVlcmdlbg0K --------------zuxdjpFnzN780GEyrBuIPjIv Content-Type: application/pgp-keys; name="OpenPGP_0xB0DE9DD628BF132F.asc" Content-Disposition: attachment; filename="OpenPGP_0xB0DE9DD628BF132F.asc" Content-Description: OpenPGP public key Content-Transfer-Encoding: quoted-printable -----BEGIN PGP PUBLIC KEY BLOCK----- xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjri oyspZKOBycWxw3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2 kaV2KL9650I1SJvedYm8Of8Zd621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i 1TXkH09XSSI8mEQ/ouNcMvIJNwQpd369y9bfIhWUiVXEK7MlRgUG6MvIj6Y3Am/B BLUVbDa4+gmzDC9ezlZkTZG2t14zWPvxXP3FAp2pkW0xqG7/377qptDmrk42GlSK N4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEBAAHNHEp1ZXJnZW4gR3Jvc3Mg PGpnQHBmdXBmLm5ldD7CwHkEEwECACMFAlOMcBYCGwMHCwkIBwMCAQYVCAIJCgsE FgIDAQIeAQIXgAAKCRCw3p3WKL8TL0KdB/93FcIZ3GCNwFU0u3EjNbNjmXBKDY4F UGNQH2lvWAUy+dnyThpwdtF/jQ6j9RwE8VP0+NXcYpGJDWlNb9/JmYqLiX2Q3Tye vpB0CA3dbBQp0OW0fgCetToGIQrg0MbD1C/sEOv8Mr4NAfbauXjZlvTj30H2jO0u +6WGM6nHwbh2l5O8ZiHkH32iaSTfN7Eu5RnNVUJbvoPHZ8SlM4KWm8rG+lIkGurq qu5gu8q8ZMKdsdGC4bBxdQKDKHEFExLJK/nRPFmAuGlId1E3fe10v5QL+qHI3EIP tyfE7i9Hz6rVwi7lWKgh7pe0ZvatAudZ+JNIlBKptb64FaiIOAWDCx1SzR9KdWVy Z2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+wsB5BBMBAgAjBQJTjHCvAhsDBwsJ CAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey/HmQf/RtI7kv5A2PS4 RF7HoZhPVPogNVbC4YA6lW7DrWf0teC0RR3MzXfy6pJ+7KLgkqMlrAbN/8Dvjoz7 8X+5vhH/rDLa9BuZQlhFmvcGtCF8eR0T1v0nC/nuAFVGy+67q2DH8As3KPu0344T BDpAvr2uYM4tSqxK4DURx5INz4ZZ0WNFHcqsfvlGJALDeE0LhITTd9jLzdDad1pQ SToCnLl6SBJZjDOX9QQcyUigZFtCXFst4dlsvddrxyqT1f17+2cFSdu7+ynLmXBK 7abQ3rwJY8SbRO2iRulogc5vr/RLMMlscDAiDkaFQWLoqHHOdfO9rURssHNN8WkM nQfvUewRz80hSnVlcmdlbiBHcm9zcyA8amdyb3NzQG5vdmVsbC5jb20+wsB5BBMB AgAjBQJTjHDXAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/ Ey8PUQf/ehmgCI9jB9hlgexLvgOtf7PJnFOXgMLdBQgBlVPO3/D9R8LtF9DBAFPN hlrsfIG/SqICoRCqUcJ96Pn3P7UUinFG/I0ECGF4EvTE1jnDkfJZr6jrbjgyoZHi w/4BNwSTL9rWASyLgqlA8u1mf+c2yUwcGhgkRAd1gOwungxcwzwqgljf0N51N5Jf VRHRtyfwq/ge+YEkDGcTU6Y0sPOuj4Dyfm8fJzdfHNQsWq3PnczLVELStJNdapwP OoE+lotufe3AM2vAEYJ9rTz3Cki4JFUsgLkHFqGZarrPGi1eyQcXeluldO3m91NK /1xMI3/+8jbO0tsn1tqSEUGIJi7ox80eSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1 c2UuZGU+wsB5BBMBAgAjBQJTjHDrAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgEC F4AACgkQsN6d1ii/Ey+LhQf9GL45eU5vOowA2u5N3g3OZUEBmDHVVbqMtzwlmNC4 k9Kx39r5s2vcFl4tXqW7g9/ViXYuiDXb0RfUpZiIUW89siKrkzmQ5dM7wRqzgJpJ wK8Bn2MIxAKArekWpiCKvBOB/Cc+3EXE78XdlxLyOi/NrmSGRIov0karw2RzMNOu 5D+jLRZQd1Sv27AR+IP3I8U4aqnhLpwhK7MEy9oCILlgZ1QZe49kpcumcZKORmzB TNh30FVKK1EvmV2xAKDoaEOgQB4iFQLhJCdP1I5aSgM5IVFdn7v5YgEYuJYx37Io N1EblHI//x/e2AaIHpzK5h88NEawQsaNRpNSrcfbFmAg987ATQRTjHAWAQgAyzH6 AOODMBjgfWE9VeCgsrwH3exNAU32gLq2xvjpWnHIs98ndPUDpnoxWQugJ6MpMncr 0xSwFmHEgnSEjK/PAjppgmyc57BwKII3sV4on+gDVFJR6Y8ZRwgnBC5mVM6JjQ5x Dk8WRXljExRfUX9pNhdE5eBOZJrDRoLUmmjDtKzWaDhIg/+1Hzz93X4fCQkNVbVF LELU9bMaLPBG/x5q4iYZ2k2ex6d47YE1ZFdMm6YBYMOljGkZKwYde5ldM9mo45mm we0icXKLkpEdIXKTZeKDO+Hdv1aqFuAcccTg9RXDQjmwhC3yEmrmcfl0+rPghO0I v3OOImwTEe4co3c1mwARAQABwsBfBBgBAgAJBQJTjHAWAhsMAAoJELDendYovxMv Q/gH/1ha96vm4P/L+bQpJwrZ/dneZcmEwTbe8YFsw2V/Buv6Z4Mysln3nQK5ZadD 534CF7TDVft7fC4tU4PONxF5D+/tvgkPfDAfF77zy2AH1vJzQ1fOU8lYFpZXTXIH b+559UqvIB8AdgR3SAJGHHt4RKA0F7f5ipYBBrC6cyXJyyoprT10EMvU8VGiwXvT yJz3fjoYsdFzpWPlJEBRMedCot60g5dmbdrZ5DWClAr0yau47zpWj3enf1tLWaqc suylWsviuGjKGw7KHQd3bxALOknAp4dN3QwBYCKuZ7AddY9yjynVaD5X7nF9nO5B jR/i1DG86lem3iBDXzXsZDn8R38=3D =3D2wuH -----END PGP PUBLIC KEY BLOCK----- --------------zuxdjpFnzN780GEyrBuIPjIv-- --------------gDXxzU0TCsafvRKtdcwLnrCH-- --------------m0K8SS3FOBwsKMdH0zXhNuIL Content-Type: application/pgp-signature; name="OpenPGP_signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="OpenPGP_signature" -----BEGIN PGP SIGNATURE----- wsB5BAABCAAjFiEEhRJncuj2BJSl0Jf3sN6d1ii/Ey8FAmSZcTIFAwAAAAAACgkQsN6d1ii/Ey9m /wf/XucPqrVPFFCKw4EItepNPtgV3hRMiHH9hSf+joyHsmKZau/M5Pg0lKkKgtAo4ACIfeOcyFzP 9YLodEMqMM0dQ3gnM2TV3/vbTHJMPnjU2i/mhIPaTN0tYbPvIjfmQRa41Ymr5nDbB4rpPW5i+gCh QySEXl2UP2NWwpKz/Y08XZWUlSHZw6+A2fOd4G+94iX8KAAxH6VrRRG6ESZ+j4/4V2r4QeiegHXI ZlhioqA7zZIbi9XG07K7lyhVVKRTbYQqpM5TIIVm7cXLijTfbnTs/R9oySBVbt12QHd+VnbBJHel kbkRCiHx27GsgizZr5/HRFNGI/XkKGD/iIsph9dvlw== =CPBg -----END PGP SIGNATURE----- --------------m0K8SS3FOBwsKMdH0zXhNuIL-- From xen-devel-bounces@lists.xenproject.org Mon Jun 26 11:25:24 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 11:25:24 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555433.867191 (Exim 4.92) (envelope-from ) id 1qDkLF-0005v2-PX; Mon, 26 Jun 2023 11:25:09 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555433.867191; Mon, 26 Jun 2023 11:25:09 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDkLF-0005uv-MM; Mon, 26 Jun 2023 11:25:09 +0000 Received: by outflank-mailman (input) for mailman id 555433; Mon, 26 Jun 2023 11:25:08 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDkLE-0005uo-Oc for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 11:25:08 +0000 Received: from NAM02-BN1-obe.outbound.protection.outlook.com (mail-bn1nam02on2061d.outbound.protection.outlook.com [2a01:111:f400:7eb2::61d]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 19c53b7f-1414-11ee-b237-6b7b168915f2; Mon, 26 Jun 2023 13:25:06 +0200 (CEST) Received: from MW4PR04CA0059.namprd04.prod.outlook.com (2603:10b6:303:6a::34) by SJ0PR12MB6902.namprd12.prod.outlook.com (2603:10b6:a03:484::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.23; Mon, 26 Jun 2023 11:25:03 +0000 Received: from CO1NAM11FT050.eop-nam11.prod.protection.outlook.com (2603:10b6:303:6a:cafe::70) by MW4PR04CA0059.outlook.office365.com (2603:10b6:303:6a::34) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.33 via Frontend Transport; Mon, 26 Jun 2023 11:25:03 +0000 Received: from SATLEXMB04.amd.com (165.204.84.17) by CO1NAM11FT050.mail.protection.outlook.com (10.13.174.79) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6500.47 via Frontend Transport; Mon, 26 Jun 2023 11:25:02 +0000 Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Mon, 26 Jun 2023 06:25:01 -0500 Received: from [10.71.193.39] (10.180.168.240) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.23 via Frontend Transport; Mon, 26 Jun 2023 06:25:00 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 19c53b7f-1414-11ee-b237-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=KoIlPHRpi6+aa3LbiXjXlSK0dc0qxd9OGAM88iYl5piptuhgJaqSW4BRz9WaghqqFHf20eqsrHXuh/bumPiKr9LUXTiwmGjPQE0O0W4OFyBWQJ3R9VLuEP5/taIfLOeaAN0XGFVLlYrOAGiOvHl7jvaewahr3j3Z1jTGTxWoXnAJrcZIjmQOscYGTfKC15K3Acnvxcpm6kjibMbC8XvVuMPhor2XYUCb4C7iobrMVTMsR48fYamN99cF0o1lq6fe4LzIpI+zjULKeiWTLtMVL1faZolJgO2e0gqBzn3YcAW5mHzkMQvMx/S8gUK1d5AkOnQ/Xc1k1LZkDWe0+/JOrQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=75PuDGlVf5/qnqFXq4vjtQDZbcDiFxmbyDYQh2ee2Bk=; b=OvLlZYf2J/cWXLi+o8KI2fEROhOtlIfIIrtedVIptIY5qSPYbs6gBgD1wg4wR9I0iEg4Y1hcTBmMMgjZiduUVy+cB//uakd67qwzBkpj/mBHaGEeEdFSG9qWXIJEA24WEiWdUpenAmDB0IyBpp0bYEP9IJD8+Jxp2GVIdhCoYozGWDgijCVi8R5KHGNiKaEN07e6qKuxvwyA4mYc86z/Grx5K4ATt2e9BIcUtfp8gHd0Zw12Flx4Nh5xFWIZkyFCyvhfHLAdKOOG6ikfNDcYWvDoepLyAwXwpRCE3kG8cmkvGYr148o2y8LodyWky8IQFzquP9bm4+Cv6mED2gjLsw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=xen.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=75PuDGlVf5/qnqFXq4vjtQDZbcDiFxmbyDYQh2ee2Bk=; b=qrg8k1S+3IgZaY79GlI6HT4CHC7x7c4T96dzp9sTZS4lIuIAkTkJlm4k1bMf80tqJsCg43uEFd4P/Q5PEBDaQnMphb4kRcFVc1C9oLXdiqcDevqM8uMQlKc87+WvSACJrCzbvuZVzM6BXD5eHgWgTXZPxXrBpWY3OsqATGwP9J4= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C Message-ID: Date: Mon, 26 Jun 2023 13:24:59 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH 1/9] xen/arm: Check Xen size when linking To: Julien Grall , CC: , , Stefano Stabellini , Bertrand Marquis , Volodymyr Babchuk References: <20230625204907.57291-1-julien@xen.org> <20230625204907.57291-2-julien@xen.org> Content-Language: en-US From: Michal Orzel In-Reply-To: <20230625204907.57291-2-julien@xen.org> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO1NAM11FT050:EE_|SJ0PR12MB6902:EE_ X-MS-Office365-Filtering-Correlation-Id: 68fc914a-d445-4207-3e1e-08db7637fc10 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: B8k2RD1NXC1HINRvQanimq6IiOlzUZVYL7IUyQOzES/lWEhyJrhTb+nd972QO+MOQhlBLMJ4A3TSxAXMOkIffpyHD9MfRuzrXgq1r5+CIoVK1xObTQYAWryM6HHeWSItkhBbC9QhxrDwF/sadAUD5bZPh5rRd66pfX75YzpQWUJuvfhOZ50eoarFsUwZ9C8q54bYN4lLmDJkC5wqP/F3FNFr04/hpmyLiwnw76Tp8zsavNoSvey/HGrr3+WssgMpk1GmXr5At+ArBKgSQuOIlzoxlP94cLyqqHCvHVU16xK0ZyeK/m1wP0FPSfouUkj7GMoD/R/3kmNmHgJnHH7t+/HVTHI2ZY8meSIaiN0vrd1dN+75WemR9j/0i9SyVGfkpHYarlKsO+cLokOed58EWc4T6ZdLXlaSE6pW0BmO7f+UFIV32lAlNsOVRTpMS9KbToFzpMpz3510B1B5T+CaJswLdp3O3DzVt+PIrEx0OJXtJQxp/uF/2nxceZUQndqDk1Eub5bbJpkfoY7VgZ40kZk8ZwSY0Rf0vTCNBoKkgjrePFEcuLg0PeIIovmSmAkeuBVMgCuxs4TI4DrY6LhWRzLS7OvjxPk2/hPk60mD0fnUUank7N6SoRtfG042InWpAKyHGM42S5LH2tBqNf/nivB4STAskJnXs+K8y2e1U/L9BODBTIACjeGPacZHXrM2ra1Opit+sHaw1bE0TYUluxR/BNiFULdA1XQgbN+t4WONx+paY8TqBRiY3u+TMVl6Kd2G9OKUM6Zo4gyqmxXHhNKf67CReiIDv0BsVnVn3CrTYg77wEpZk/16Ty51bwQz X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(396003)(136003)(376002)(346002)(451199021)(36840700001)(46966006)(40470700004)(44832011)(31686004)(5660300002)(70586007)(70206006)(4326008)(478600001)(36756003)(316002)(8676002)(8936002)(2906002)(40460700003)(40480700001)(36860700001)(110136005)(54906003)(16576012)(31696002)(86362001)(41300700001)(82310400005)(53546011)(336012)(426003)(26005)(47076005)(186003)(356005)(82740400003)(2616005)(83380400001)(81166007)(36900700001)(43740500002);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Jun 2023 11:25:02.5540 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 68fc914a-d445-4207-3e1e-08db7637fc10 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com] X-MS-Exchange-CrossTenant-AuthSource: CO1NAM11FT050.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR12MB6902 On 25/06/2023 22:48, Julien Grall wrote: > > > The linker will happily link Xen if it is bigger than what we can handle > (e.g 2MB). This will result to unexpected failure after boot. > > This unexpected failure can be prevented by forbidding linking if Xen is > bigger than the area we reversed. s/reversed/reserved > > Signed-off-by: Julien Grall > --- > xen/arch/arm/xen.lds.S | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/xen/arch/arm/xen.lds.S b/xen/arch/arm/xen.lds.S > index be58c2c39514..c5d8c6201423 100644 > --- a/xen/arch/arm/xen.lds.S > +++ b/xen/arch/arm/xen.lds.S > @@ -241,3 +241,4 @@ ASSERT(IS_ALIGNED(__init_begin, 4), "__init_begin is misaligned") > ASSERT(IS_ALIGNED(__init_end, 4), "__init_end is misaligned") > ASSERT(IS_ALIGNED(__bss_start, POINTER_ALIGN), "__bss_start is misaligned") > ASSERT(IS_ALIGNED(__bss_end, POINTER_ALIGN), "__bss_end is misaligned") > +ASSERT((_end - start) <= XEN_VIRT_SIZE, "Xen is too big") Would it be possible to use _start so that we can have a consolidated way of calculating xen size across arch linker scripts and C code? It makes it easier for grepping. All in all, Reviewed-by: Michal Orzel ~Michal From xen-devel-bounces@lists.xenproject.org Mon Jun 26 11:29:06 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 11:29:06 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555439.867201 (Exim 4.92) (envelope-from ) id 1qDkP3-0006Yf-CH; Mon, 26 Jun 2023 11:29:05 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555439.867201; Mon, 26 Jun 2023 11:29:05 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDkP3-0006YY-91; Mon, 26 Jun 2023 11:29:05 +0000 Received: by outflank-mailman (input) for mailman id 555439; Mon, 26 Jun 2023 11:29:04 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDkP2-0006YS-4e for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 11:29:04 +0000 Received: from NAM12-MW2-obe.outbound.protection.outlook.com (mail-mw2nam12on20605.outbound.protection.outlook.com [2a01:111:f400:fe5a::605]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id a5531582-1414-11ee-8611-37d641c3527e; Mon, 26 Jun 2023 13:29:01 +0200 (CEST) Received: from MWH0EPF00056D12.namprd21.prod.outlook.com (2603:10b6:30f:fff2:0:1:0:15) by BL0PR12MB5508.namprd12.prod.outlook.com (2603:10b6:208:1c1::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.24; Mon, 26 Jun 2023 11:28:57 +0000 Received: from CO1NAM11FT094.eop-nam11.prod.protection.outlook.com (2a01:111:f400:7eab::200) by MWH0EPF00056D12.outlook.office365.com (2603:1036:d20::b) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.11 via Frontend Transport; Mon, 26 Jun 2023 11:28:57 +0000 Received: from SATLEXMB03.amd.com (165.204.84.17) by CO1NAM11FT094.mail.protection.outlook.com (10.13.174.161) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6500.47 via Frontend Transport; Mon, 26 Jun 2023 11:28:56 +0000 Received: from SATLEXMB07.amd.com (10.181.41.45) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Mon, 26 Jun 2023 06:28:55 -0500 Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB07.amd.com (10.181.41.45) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.6; Mon, 26 Jun 2023 04:28:55 -0700 Received: from [10.71.193.39] (10.180.168.240) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.23 via Frontend Transport; Mon, 26 Jun 2023 06:28:53 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: a5531582-1414-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=iM/9Dk9tacIyyO7UQqCmn8vy6C4nDxM019ic/EiBgthiQ3ZG6T4NbXwoiWrY+8+Xs/ABhxHoDQdGU8GRXGeOXMy2SvhsUunxaLv8dB3bpzaPH9umFiEoP7iq+g5KYAt4ruaE5Gw9n7d5SbsefdbdqPbkxsNUmEhZlLRcdrjZ7NC2Dqh/z6FXBeTHTcIHykwJEMTun5yZAH7Z4IlOUoFgKZpRFO3dKhjQVASgexm3clf8WC2Ve3T2pTcQoI3oONCTUEW8wSXZCxzOUCMoZy16GZUvdxb8aSBtr47+LsGtJQtyMWZ1VAsFLNjG7nvRqMGMwJtoHrT+Sm7ztAKUe9XWkw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=fEMjlyfz11+zfZvWX2Op5i4BQP+/ppJsce2J3bHhaAg=; b=Ia8MsjMMS2V3EuhWACYB/9jt44raUcDAbiCz8gyO3/AK14SgO4D/pVWQuv5V06o09M2185uiCRiQxC2paWo4CfdzI++VVbfRYW/VMr5wcVqlI2fxSq1sbyoZ8uLUo2azzr7obqL3ZMO9uLDTHEV0Yg5T32ztKe0LQ3gDU1IT4qlX//FErEIrgJie8mhxVN8AdQ0HM0n9wpdVETLZmaOOQqSrL431bsnoR6ruxd5CNp5iQ2T7hiXYxsR9MqodaxpWSX5PvXXgZrONa9+Hb3zgoxXG6hPLNxe7SGlrXKr2QDnw8GsjHcDQ1ndXDzBAxmaQy/9xCTIgkMrR8ycYHbddOQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=xen.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=fEMjlyfz11+zfZvWX2Op5i4BQP+/ppJsce2J3bHhaAg=; b=I+rdDOac5m6536r/8fDMMpkMf2JwnOLB71egrSRsIj9wqWcUxsTIVq1aWUyiwANPl7e/J8L0DlkySghKgDbvpZLpCTxDAyG1TO8AJ3ZKq4fxnCI5QiXggQIJiLu7jf8nXgGTzvBxaiH1Gz6ys4NakOsEIMjnBvaSHtLSgFqI+4U= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C Message-ID: <38f33ede-0d55-bd47-412a-eccb3d4618f2@amd.com> Date: Mon, 26 Jun 2023 13:28:48 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH 2/9] xen/arm64: head: Don't map too much in boot_third Content-Language: en-US To: Julien Grall , CC: , , Julien Grall , Stefano Stabellini , "Bertrand Marquis" , Volodymyr Babchuk References: <20230625204907.57291-1-julien@xen.org> <20230625204907.57291-3-julien@xen.org> From: Michal Orzel In-Reply-To: <20230625204907.57291-3-julien@xen.org> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO1NAM11FT094:EE_|BL0PR12MB5508:EE_ X-MS-Office365-Filtering-Correlation-Id: 60a8d4e3-ce33-41e0-fb9b-08db76388766 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: Yy2RoZi0V777hwMkPz5mwkiSMFJipExkIE6LyYt1J+/uMXB/xO8Rl0qS+xLeW8dS1Et1dIGwDxC9m5xFT22NNVJqD4wQtoLkwTXKs273BUN2xh8CcTtwnAEMTfQLRIHcpBZsw5JUMn9Wj+anSoaQRanqKxMITLQWFTpYq+ABTh466AFiMy16AIDfSoQz8DbqYLVdrzI+YTvAEp5Ie98sorrjmY5BXaihA/BWOaWlbzNapSrQan0tRosdvnfRllcCyuVsQB0ZEGSMpjipHoauGxyDaF07I3vS7cNAPFt2QNj6G+4+rLdoDmgesvdoYvh+qJaQesJtiq2uIhdynwEDIfTSDY0A2iRtu46+IPWZbFZAuRBYxkctxHRszjR0xWzMR+vaGlxCEY9XKNwpkPf6+x/iBQZFiX2lusyfGDy1BMcIf7YjykdXNPFgcbupneR0GwQGIqLF5UDawp9ghYx7YnsKogk5NNrsWmU4zfWjpAH2LOubTbv+g2vTYUh/Mmq7TL2LnYI4BdVjHe9IizOtrR1HewARXvIAj+AXk7+TByTypo6oioe9CT1iQtBgEWGA/0fobXq6pjXNmOnU0PJXM6aG7GtszFVV9Jgyavjw2KXG0mYNztwZU+axBOlZsNsJjNATlAiGflVm1fi+xJPbKFu6X51KvfxanbOW9qfwEgMVA3u2v/LV8fN3lZiNIouuOzyXgCyjRydlFTRTul4IPTfiKfbRWN4dSJKAhNFpJmQpPFiu3khXKRwfJUIFASU/WyxMzRk6RR0Gu6xUmPw1ZfpsAq0jfNS7JhbDnsb/KNXJKqAVX15rT5xes+tTQfIx X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(136003)(39860400002)(396003)(376002)(346002)(451199021)(40470700004)(36840700001)(46966006)(31686004)(82310400005)(36860700001)(40460700003)(36756003)(356005)(5660300002)(44832011)(70206006)(86362001)(8936002)(8676002)(41300700001)(4326008)(81166007)(316002)(31696002)(40480700001)(82740400003)(70586007)(47076005)(53546011)(186003)(26005)(2906002)(2616005)(478600001)(6666004)(54906003)(426003)(110136005)(83380400001)(336012)(16576012)(43740500002)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Jun 2023 11:28:56.3257 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 60a8d4e3-ce33-41e0-fb9b-08db76388766 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com] X-MS-Exchange-CrossTenant-AuthSource: CO1NAM11FT094.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: BL0PR12MB5508 On 25/06/2023 22:49, Julien Grall wrote: > > > From: Julien Grall > > At the moment, we are mapping the size of the reserved area for Xen > (i.e. 2MB) even if the binary is smaller. We don't exactly know what's > after Xen, so it is not a good idea to map more than necessary for a > couple of reasons: > * We would need to use break-before-make if the extra PTE needs to > be updated to point to another region > * The extra area mapped may be mapped again by Xen with different > memory attribute. This would result to attribue mismatch. s/attribue/attribute > > Therefore, rework the logic in create_page_tables() to map only what's > necessary. To simplify the logic, we also want to make sure _end > is page-aligned. So align the symbol in the linker and add an assert > to catch any change. > > Signed-off-by: Julien Grall > --- > xen/arch/arm/arm64/head.S | 15 ++++++++++++++- > xen/arch/arm/xen.lds.S | 3 +++ > 2 files changed, 17 insertions(+), 1 deletion(-) > > diff --git a/xen/arch/arm/arm64/head.S b/xen/arch/arm/arm64/head.S > index f37133cf7ccd..66bc85d4c39e 100644 > --- a/xen/arch/arm/arm64/head.S > +++ b/xen/arch/arm/arm64/head.S > @@ -572,6 +572,19 @@ create_page_tables: > create_table_entry boot_first, boot_second, x0, 1, x1, x2, x3 > create_table_entry boot_second, boot_third, x0, 2, x1, x2, x3 > > + /* > + * Find the size of Xen in pages and multiply by the size of a > + * PTE. This will then be compared in the mapping loop below. > + * > + * Note the multiplication is just to avoid using an extra > + * register/instruction per iteration. > + */ > + ldr x0, =_start /* x0 := vaddr(_start) */ x0 is already set to vaddr of _start by the first instruction of create_page_tables and is preserved by create_table_entry. You could just reuse it instead of re-loading. > + ldr x1, =_end /* x1 := vaddr(_end) */ > + sub x0, x1, x0 /* x0 := effective size of Xen */ > + lsr x0, x0, #PAGE_SHIFT /* x0 := Number of pages for Xen */ > + lsl x0, x0, #3 /* x0 := Number of pages * PTE size */ > + > /* Map Xen */ > adr_l x4, boot_third > > @@ -585,7 +598,7 @@ create_page_tables: > 1: str x2, [x4, x1] /* Map vaddr(start) */ > add x2, x2, #PAGE_SIZE /* Next page */ > add x1, x1, #8 /* Next slot */ > - cmp x1, #(XEN_PT_LPAE_ENTRIES<<3) /* 512 entries per page */ > + cmp x1, x0 /* Loop until we map all of Xen */ > b.lt 1b > > /* > diff --git a/xen/arch/arm/xen.lds.S b/xen/arch/arm/xen.lds.S > index c5d8c6201423..c4627cea7482 100644 > --- a/xen/arch/arm/xen.lds.S > +++ b/xen/arch/arm/xen.lds.S > @@ -212,6 +212,7 @@ SECTIONS > . = ALIGN(POINTER_ALIGN); > __bss_end = .; > } :text > + . = ALIGN(PAGE_SIZE); > _end = . ; > > /* Section for the device tree blob (if any). */ > @@ -241,4 +242,6 @@ ASSERT(IS_ALIGNED(__init_begin, 4), "__init_begin is misaligned") > ASSERT(IS_ALIGNED(__init_end, 4), "__init_end is misaligned") > ASSERT(IS_ALIGNED(__bss_start, POINTER_ALIGN), "__bss_start is misaligned") > ASSERT(IS_ALIGNED(__bss_end, POINTER_ALIGN), "__bss_end is misaligned") > +/* To simplify the logic in head.S, we want to _end to be page aligned */ > +ASSERT(IS_ALIGNED(_end, PAGE_SIZE), "_end is not page aligned") one more space if you want to align PAGE_SIZE to POINTER_ALIGN All in all: Reviewed-by: Michal Orzel ~Michal From xen-devel-bounces@lists.xenproject.org Mon Jun 26 11:31:00 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 11:31:00 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555443.867211 (Exim 4.92) (envelope-from ) id 1qDkQq-0007yG-NG; Mon, 26 Jun 2023 11:30:56 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555443.867211; Mon, 26 Jun 2023 11:30:56 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDkQq-0007y9-KJ; Mon, 26 Jun 2023 11:30:56 +0000 Received: by outflank-mailman (input) for mailman id 555443; Mon, 26 Jun 2023 11:30:55 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDkQp-0007y1-9a for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 11:30:55 +0000 Received: from NAM11-DM6-obe.outbound.protection.outlook.com (mail-dm6nam11on2062a.outbound.protection.outlook.com [2a01:111:f400:7eaa::62a]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id e834d455-1414-11ee-8611-37d641c3527e; Mon, 26 Jun 2023 13:30:53 +0200 (CEST) Received: from MW4PR04CA0315.namprd04.prod.outlook.com (2603:10b6:303:82::20) by DM6PR12MB4137.namprd12.prod.outlook.com (2603:10b6:5:218::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.26; Mon, 26 Jun 2023 11:30:50 +0000 Received: from CO1NAM11FT080.eop-nam11.prod.protection.outlook.com (2603:10b6:303:82:cafe::8f) by MW4PR04CA0315.outlook.office365.com (2603:10b6:303:82::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.33 via Frontend Transport; Mon, 26 Jun 2023 11:30:50 +0000 Received: from SATLEXMB03.amd.com (165.204.84.17) by CO1NAM11FT080.mail.protection.outlook.com (10.13.174.99) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6500.47 via Frontend Transport; Mon, 26 Jun 2023 11:30:49 +0000 Received: from SATLEXMB05.amd.com (10.181.40.146) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Mon, 26 Jun 2023 06:30:49 -0500 Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB05.amd.com (10.181.40.146) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Mon, 26 Jun 2023 06:30:48 -0500 Received: from [10.71.193.39] (10.180.168.240) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.23 via Frontend Transport; Mon, 26 Jun 2023 06:30:47 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: e834d455-1414-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=fLwEFL/SdpAUgdugWglQKntKT6AnsU2UoBYif0QMNq1KNS9gXlU2ZWZ87A52CRLb2OHGacyXkPuLvfXzqJ0Yf75EUcrJ7SStHK4KEkHU/vcXJaC6ECYlVWozebAjJqEGWQadfsiDfKvzg7wxRqy1iqiQYEifxTeUW9hvZvdZJGjmJCn+V0Kee3QT7ZVb79CGCTdXhC+YDLJvg4oXkY6DhBTCvGoWUMIt7T8hcbw2hHNZcera409ogQBYwgKJjZ+LK/rT2EP3jrCkwOjpDNOWF+ZfLuFsjPj0qySOntZ9dj+koXZihJPYBv5Huzg5935JuMO6LPoMIaM8inXpZoHRXg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=9eoC6BRxpy61KJY+ez9tmSMIB3a1ZQz02pGHY6ypFJ8=; b=Gtvh0k7KSM1nzChTLGl+vUL+6o8LR7xt5ciIUSyzW+ovZuDh8TptNeraBGq1WIn18SeIUrIlcColpC2hbf/V6J24GXOiu+5flzXxsHjIB1vJ8OBwMoSpzsrBuPC0fdR5nNk5SsheF4chrmvn5qfImbsERZKyO72KM02B/GrW7v2EkZWj68NXdosG9KEs0Co4F++KJu2ya9jr2/DdLZ5az8ICMejzptWYfmImT5woJMYuqPFx1AX43TSLnB9C/h72y5MtzOlQp/V024uRDDl7Y8TounYsPUn8p4Y9Xb7QLZELG45+/LKXBQ1CuQ04SP5SPIG1+S2Xh95S0JDHkX/cpg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=xen.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=9eoC6BRxpy61KJY+ez9tmSMIB3a1ZQz02pGHY6ypFJ8=; b=KP3BfQ5RL1fnV/hk5G79wLfvS+LB6Wj9IAAYwDPSennxDaN7mGxH3qxOxYvNmofbXWHC/b+rdRihFPN6Mo056v5sXK8nUcqsCOOmIjKHcfP+xoZNiX4c63DvgkQToOXGzkK9z+TTOMXoUFRPst228J0Ib9WjglLYPSCNDTIKyao= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C Message-ID: <3b118c75-2fa6-994a-2d5f-487a01ec4272@amd.com> Date: Mon, 26 Jun 2023 13:30:46 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH 3/9] xen/arm32: head: Don't map too much in boot_third Content-Language: en-US To: Julien Grall , CC: , , Julien Grall , Stefano Stabellini , "Bertrand Marquis" , Volodymyr Babchuk References: <20230625204907.57291-1-julien@xen.org> <20230625204907.57291-4-julien@xen.org> From: Michal Orzel In-Reply-To: <20230625204907.57291-4-julien@xen.org> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO1NAM11FT080:EE_|DM6PR12MB4137:EE_ X-MS-Office365-Filtering-Correlation-Id: 429499b6-8a7d-488a-296a-08db7638caed X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: GGUBDvwuvD2PjK3Z89PBJ4B9vlCiWirnUcuigl3AsBtf3uiE3LtdiYj0ZBvdeNhosI1hM9WndPsX6FLgGIntaDz4kSem9UoYrLjlTxMV6qDDGSEaGYkC82XaxLUlcwwh6s6RL3wl7YGE1Dje5xUOxSQ9xDwrGVQtEFCpBAzNiF5lSFVN3vV1DJkjLYtxHrAk8qw5jsJ5yQwjJPg4M786fmOVlyNV7+R2kWCyxVdjGqjhbdQxOrQB715MXyXaTPgUkc84BAJ3LhBc8blKRs/3V1I0MpGzqNr0abwZRPPfzNG0tvren8uNSYspzbecQoGFk9Fit5OjmrL6BI9y0mHbKoM0T1qMdLZcZWGAy9eTTTc9IBdk0mZWG5UqhHIPp4wvqxvSgjXZtKVMMGZ9rRm/DvU5ZDSqY6W4fJVDwu+B6G/VJbuiRnJekFgbaq8JY2i675Mx2onhEHYXR/iKy+lyLnnHuIf6LdnSnqG4275kXjybvQTzpZ3VI8Xz0GYlwhbBkpZmzhkGIwKc0KWRSoTMfXfVNHbmMPs2iNNORUkwotwEZMLim966lRq4I/g/Zs5dLmLN0UMWUdXj9047jr68kRk2JSDP5C5OSG37c7/p7fA9dkDduqVgwGCELpy869Hkm68yhMRBTevDjO7a7ipnFsKe6rtlE0vJcqN7Mi9A4FmTM9BgQJJ1pjTuzVeClm/w3KknKk1Ta69UgThEmU8y35p8OpGh8n8iBGKcxi4tJnykTKp1QxEHURIhcBkplKVb8YIA7MTRWCWUgNFEGbQlbvP8fhqE8BoWEsCsePVV6CXiI7iX4C0mX/qMSzcXHmjr X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(396003)(136003)(346002)(39860400002)(376002)(451199021)(36840700001)(40470700004)(46966006)(31686004)(36860700001)(82310400005)(36756003)(40460700003)(70206006)(5660300002)(356005)(44832011)(8936002)(8676002)(41300700001)(86362001)(81166007)(40480700001)(316002)(4326008)(31696002)(70586007)(82740400003)(47076005)(2906002)(26005)(53546011)(4744005)(186003)(478600001)(426003)(2616005)(83380400001)(336012)(16576012)(110136005)(54906003)(43740500002)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Jun 2023 11:30:49.6281 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 429499b6-8a7d-488a-296a-08db7638caed X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com] X-MS-Exchange-CrossTenant-AuthSource: CO1NAM11FT080.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR12MB4137 On 25/06/2023 22:49, Julien Grall wrote: > > > From: Julien Grall > > At the moment, we are mapping the size of the reserved area for Xen > (i.e. 2MB) even if the binary is smaller. We don't exactly know what's > after Xen, so it is not a good idea to map more than necessary for a > couple of reasons: > * We would need to use break-before-make if the extra PTE needs to > be updated to point to another region > * The extra area mapped may be mapped again by Xen with different > memory attribute. This would result to attribue mismatch. > > Therefore, rework the logic in create_page_tables() to map only what's > necessary. To simplify the logic, we also want to make sure _end > is page-aligned. So align the symbol in the linker and add an assert > to catch any change. > > Signed-off-by: Julien Grall The same comments apply as for the previous patch. But all in all: Reviewed-by: Michal Orzel ~Michal From xen-devel-bounces@lists.xenproject.org Mon Jun 26 11:31:36 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 11:31:36 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555447.867221 (Exim 4.92) (envelope-from ) id 1qDkRU-0008U5-16; Mon, 26 Jun 2023 11:31:36 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555447.867221; Mon, 26 Jun 2023 11:31:36 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDkRT-0008Ty-TS; Mon, 26 Jun 2023 11:31:35 +0000 Received: by outflank-mailman (input) for mailman id 555447; Mon, 26 Jun 2023 11:31:33 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDkRR-0008Pa-Sv for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 11:31:33 +0000 Received: from NAM12-MW2-obe.outbound.protection.outlook.com (mail-mw2nam12on2062d.outbound.protection.outlook.com [2a01:111:f400:fe5a::62d]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id ffc6d0c0-1414-11ee-b237-6b7b168915f2; Mon, 26 Jun 2023 13:31:33 +0200 (CEST) Received: from MWH0EPF00056D12.namprd21.prod.outlook.com (2603:10b6:30f:fff2:0:1:0:15) by IA0PR12MB8206.namprd12.prod.outlook.com (2603:10b6:208:403::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.24; Mon, 26 Jun 2023 11:31:29 +0000 Received: from CO1NAM11FT038.eop-nam11.prod.protection.outlook.com (2a01:111:f400:7eab::204) by MWH0EPF00056D12.outlook.office365.com (2603:1036:d20::b) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.11 via Frontend Transport; Mon, 26 Jun 2023 11:31:28 +0000 Received: from SATLEXMB03.amd.com (165.204.84.17) by CO1NAM11FT038.mail.protection.outlook.com (10.13.174.231) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6500.47 via Frontend Transport; Mon, 26 Jun 2023 11:31:28 +0000 Received: from SATLEXMB07.amd.com (10.181.41.45) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Mon, 26 Jun 2023 06:31:27 -0500 Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB07.amd.com (10.181.41.45) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.6; Mon, 26 Jun 2023 04:31:27 -0700 Received: from [10.71.193.39] (10.180.168.240) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.23 via Frontend Transport; Mon, 26 Jun 2023 06:31:25 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: ffc6d0c0-1414-11ee-b237-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=dzBtjwu+0/ads2SvWFBzypHxwONFL7p4Vdxw+nkQVPwB5SZA0ZXV+vC1V643ZPvtD6mtA//mK8qg6bHgti0GxBoj3owGXIrZyzOl/EosSutpX2ySjGi1NDvsH9DbVMRkzi7QnBMp7Eko4ju7elSoUMSWtzRzQ+A4v2teaWvJy//9MH2UHgoKCPX+CSF2BjMQOOFkbmL6y7GXBMmS0fqRZrRoqoTsRUd6aCnS/Q+YMOjLcRYo1HYT8CN7JHb3Sc8biqK1SsrM17FOvqlqcACOxA8kBXvUSiY3LTuwLLMwKClI0frvMAFSAp6FSeIG5T5CPpzxvdx5LNpYg4j6+t2L/w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=WRzXEuCdUF6N9Cf0yuaoWMNHh8QNFwi+UQgq+EnFytA=; b=FfPgIekGE8nyrE7aO6ifvOA4gp+qJI2wrGnOf4GQfVMTcrFLGr8RGSCfu4+QJv2MBkckPeSnarrJrUJ7nvpcOZjBfqmgo5R3af0hNCLoddgZkWjYyBb7otGNhF3N+kPQlHcPX489Z973+8pA7qD4SMDY3yWk/c01NGy5C9rd1EKjjmNp3tM2ze4abuIwbDobnOmX8inhRSi8aNf5se4SIJuufuSJXX/qEiV9ZBjvgbRNwB7mxSUgW+tC+fdIB/0mpELMSpil0oc+YYnf9m40lzZMe/yK/LHdI81/BgCr/2HDxDrnSzFsWd5wZAhzAyFvA35IbdV/IbvIsjNEqeYqiw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=xen.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=WRzXEuCdUF6N9Cf0yuaoWMNHh8QNFwi+UQgq+EnFytA=; b=OxY26xYccQYTMUIDQF6dExPP/wenvhsjiSFd+7BWYeXOvlfRid87Q5g5gHLeXTCHRnRo3GbOWeS3KsfT7gy2wPjRsv57tKgbCzbZkijWEqo15ZDPLht3XJ9Ga7RiKelfGWlMYkYQ9M/iKb05v53QNZ/Q9YY+hycWAzdfyWQgS0w= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C Message-ID: Date: Mon, 26 Jun 2023 13:31:25 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH 4/9] xen/arm32: head: Remove 'r6' from the clobber list of create_page_tables() Content-Language: en-US To: Julien Grall , CC: , , Julien Grall , Stefano Stabellini , "Bertrand Marquis" , Volodymyr Babchuk References: <20230625204907.57291-1-julien@xen.org> <20230625204907.57291-5-julien@xen.org> From: Michal Orzel In-Reply-To: <20230625204907.57291-5-julien@xen.org> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO1NAM11FT038:EE_|IA0PR12MB8206:EE_ X-MS-Office365-Filtering-Correlation-Id: a09fe06c-f86b-48a8-eb2e-08db7638e1ed X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 7fxQ2FDYswm9rFW4xYNTMY7xFO2ZJCJ0iMuitAUOGqbcPkEm9uzh5pBy8xl9ipThd61BZhVJjr0VYCYGdT8KIYhk33eTcS8ohAKPXVnl62pqoGgfJO1N5nf+YoDfB9ReAvA+SSLXgPcqCwkCMsgfaEGxpYZFwA7r2kTDJopgS7MOnBIRJkZc7/f+WJ14nLszFftq/Qzt88vvjExbQS27EvE3us5fP+1LypwlwOWAjh9ZWkEl58cSn1uuJfYGmeC4un+d9BU8IHzoHx0xWftt+WYCrAYWJpoFmJdx3eGDoun+rcM9zYKv0pi4hP1BJgY/qrUKZjX1ZZIPssNAP8gsUDe+9Wx+X6la0QFvgWpAEFxJKnm0+udXtZKVuw4RjUcraEdbQ9IYb4h5PpPdcoeXTz4IRviiPUNw1JHUJT1c89fVoI0/OU+qhpPiwqQ6nBrtaqGfJt5aOGUHtPlCJQ0eLKfkoVVinlGXBX5W1rSpTZ1DNkHbbbPm7lhF6OZ9E0i/bxa9+goEWHo3CiRpCVtpQgFQBIOaSLA5hCczlAKfSJNFNO4VV/JIQVR+gHNxRfGYExzmyVX1RgbZPTw+L94LHgToWOx5pbvn5ZSBezS5b10GhGcTINUlTblAXfJZmcX5Se5dfQJ8bW8Fm/+Q4kjXtjyuDfjwSIlD1cSxzVEy+s7l5YWfjfijKOy1eYXe1AutAfH4zim1JcAncBtD4kb9Of12WlcemiCNnOoZqYiKuz4G94yC4ac1L+M4TZQVVt7EkTQw97rCZxAocXjXlKuOJKf+lwfRrrF1d3AU3FhfkUMkQmwQfQv6+q5iqY3MnxTh X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(376002)(136003)(346002)(396003)(39860400002)(451199021)(40470700004)(36840700001)(46966006)(82310400005)(36860700001)(47076005)(110136005)(2616005)(54906003)(478600001)(16576012)(426003)(336012)(26005)(53546011)(186003)(4744005)(2906002)(5660300002)(44832011)(356005)(40460700003)(36756003)(70206006)(31696002)(70586007)(82740400003)(81166007)(40480700001)(8936002)(8676002)(41300700001)(86362001)(4326008)(316002)(31686004)(36900700001)(43740500002);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Jun 2023 11:31:28.2050 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: a09fe06c-f86b-48a8-eb2e-08db7638e1ed X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com] X-MS-Exchange-CrossTenant-AuthSource: CO1NAM11FT038.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: IA0PR12MB8206 On 25/06/2023 22:49, Julien Grall wrote: > > > From: Julien Grall > > Since commit 62529f16c8a2 ("xen/arm32: head: Use a page mapping for the > 1:1 mapping in create_page_tables()"), the register 'r6' is not used > anymore within create_page_tables(). So remove it from the documentation. > > Signed-off-by: Julien Grall Reviewed-by: Michal Orzel ~Michal From xen-devel-bounces@lists.xenproject.org Mon Jun 26 11:33:20 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 11:33:20 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555451.867231 (Exim 4.92) (envelope-from ) id 1qDkT9-0000eQ-F9; Mon, 26 Jun 2023 11:33:19 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555451.867231; Mon, 26 Jun 2023 11:33:19 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDkT9-0000eG-8o; Mon, 26 Jun 2023 11:33:19 +0000 Received: by outflank-mailman (input) for mailman id 555451; Mon, 26 Jun 2023 11:33:18 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDkT8-0000e1-1R; Mon, 26 Jun 2023 11:33:18 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDkT7-0007or-QB; Mon, 26 Jun 2023 11:33:17 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDkT7-0007rX-Ar; Mon, 26 Jun 2023 11:33:17 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qDkT7-0005N6-AN; Mon, 26 Jun 2023 11:33:17 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=3froo6ZvIPLBHNip4zjvIkT+osg8q713t0iHSr0arrY=; b=Vj6xs+FXvCTBOzTpp35S0GNHuT Gf1+OX2RYGoNLE6aqd33V53KwO/qrb6Zmn/B6SfwfXaOd3OYxOBlncx/5VXU48whO/08ipc1tGnT4 LKdDUWrEdv7+RKTvi3yPpzzF+qy0RBCDF7tjkS8SsjMMH9DtXW5pm7yUxdFkPP8moRRA=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [ovmf test] 181601: all pass - PUSHED X-Osstest-Versions-This: ovmf=5542e528cd2710f521e8bf5dd4efd5adbdf86b71 X-Osstest-Versions-That: ovmf=ac33eee8b83999ba591af04fe22e773cf8fc8193 From: osstest service owner Date: Mon, 26 Jun 2023 11:33:17 +0000 flight 181601 ovmf real [real] http://logs.test-lab.xenproject.org/osstest/logs/181601/ Perfect :-) All tests in this flight passed as required version targeted for testing: ovmf 5542e528cd2710f521e8bf5dd4efd5adbdf86b71 baseline version: ovmf ac33eee8b83999ba591af04fe22e773cf8fc8193 Last test of basis 181599 2023-06-26 05:12:27 Z 0 days Testing same since 181601 2023-06-26 09:43:47 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Ard Biesheuvel jobs: build-amd64-xsm pass build-i386-xsm pass build-amd64 pass build-i386 pass build-amd64-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-i386-pvops pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Pushing revision : To xenbits.xen.org:/home/xen/git/osstest/ovmf.git ac33eee8b8..5542e528cd 5542e528cd2710f521e8bf5dd4efd5adbdf86b71 -> xen-tested-master From xen-devel-bounces@lists.xenproject.org Mon Jun 26 11:43:48 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 11:43:48 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555459.867241 (Exim 4.92) (envelope-from ) id 1qDkd2-0002F5-DA; Mon, 26 Jun 2023 11:43:32 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555459.867241; Mon, 26 Jun 2023 11:43:32 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDkd2-0002Ey-A9; Mon, 26 Jun 2023 11:43:32 +0000 Received: by outflank-mailman (input) for mailman id 555459; Mon, 26 Jun 2023 11:43:31 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDkd1-0002Es-Fz for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 11:43:31 +0000 Received: from NAM12-BN8-obe.outbound.protection.outlook.com (mail-bn8nam12on2062d.outbound.protection.outlook.com [2a01:111:f400:fe5b::62d]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id ab1a9143-1416-11ee-b237-6b7b168915f2; Mon, 26 Jun 2023 13:43:29 +0200 (CEST) Received: from BN9PR03CA0671.namprd03.prod.outlook.com (2603:10b6:408:10e::16) by DM4PR12MB6087.namprd12.prod.outlook.com (2603:10b6:8:b1::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.24; Mon, 26 Jun 2023 11:43:25 +0000 Received: from BN8NAM11FT074.eop-nam11.prod.protection.outlook.com (2603:10b6:408:10e:cafe::db) by BN9PR03CA0671.outlook.office365.com (2603:10b6:408:10e::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.33 via Frontend Transport; Mon, 26 Jun 2023 11:43:25 +0000 Received: from SATLEXMB03.amd.com (165.204.84.17) by BN8NAM11FT074.mail.protection.outlook.com (10.13.176.154) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6500.47 via Frontend Transport; Mon, 26 Jun 2023 11:43:24 +0000 Received: from SATLEXMB07.amd.com (10.181.41.45) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Mon, 26 Jun 2023 06:43:23 -0500 Received: from SATLEXMB04.amd.com (10.181.40.145) by SATLEXMB07.amd.com (10.181.41.45) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.6; Mon, 26 Jun 2023 04:43:23 -0700 Received: from [10.71.193.39] (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server id 15.1.2507.23 via Frontend Transport; Mon, 26 Jun 2023 06:43:21 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: ab1a9143-1416-11ee-b237-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=giJwezzJHw6611jedAUUVKOLru7+6CzF4zmaJXz4BNFvEZeZrIhwG5jftykf+Ygnh2B201JdYUF+5qKjQFiRmTzPfz1M/wFgkL6540TnEC7RR5TNnJkHp2Q7R0sU2j0zt1Q76ExxrCHyzxEGEn7huCAGWLiZ18ejxNpjSvN+QYh5yetkqtCOZ5POop7pS2gQBiYGzBiONoFBYYuHLd+V4S5IdWrQEMzfdltiapPiSpf/9reptRAwLKdpjx6/XdaEEL97Ap6eFGIAo0D84fqXk11rosvKCBpg/fovvk9AnnTiRXUX8VZcW5jvl1VUIulDwjovmnlVPGkXyZ/8syfVFQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=xNUmSJMVKl0uSHP40181BLwYmBqK/2F05E/fv2k2LeM=; b=Ul5BzaYSBgHXOhc2F9hDg/qHG2m0Sh2zXOLI9xPJxl9K48Yro9jFcXKbTmHEVGLUgtHVZbr8IGW5x4fsFzqoFgdE7YOYgiICeKir6HQa6djR/DhqNncw6vWs/jZME2PwrH6VIByNvgKer2ciSNYDm5eQpiwsbyful/xhNc4VkosUWfU9v7GfLlvIz3I3q45Wu8r4yOjF03F9LG6wf5bOowitIXbPeoSp+GY21vfnOp+P1G/3YrZsFJsmu60K3cBArRwCnxp9N6eu5KmS2t407fElna9wxTiVTJvJ7m8qawp56+h8GjDgIA+3HQRIbwimOKNd8yHyFqocdFiMtn5f6g== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=xen.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=xNUmSJMVKl0uSHP40181BLwYmBqK/2F05E/fv2k2LeM=; b=A0kHqPKUvLKkcvblBNS3lsSXb3ulG7bgUZWEqQ6Y9hiLuoyi+7D+EDZ7vlxWna/SZu+3K3YHN5jmTNlxz1dE9TBhNOUF/eaV3tVvRte7p7XraLnIsdJDAfIYpxxFprI9vztR/NunTJTw4TDCAok/DEmNFnFHz1ovatp8ZWDzxVo= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C Message-ID: <170a1f3c-526a-dfd9-0d87-101fb77f3415@amd.com> Date: Mon, 26 Jun 2023 13:43:21 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH 5/9] xen/arm: Rework the code mapping Xen to avoid relying on the size of Xen Content-Language: en-US To: Julien Grall , CC: , , Julien Grall , Stefano Stabellini , "Bertrand Marquis" , Volodymyr Babchuk References: <20230625204907.57291-1-julien@xen.org> <20230625204907.57291-6-julien@xen.org> From: Michal Orzel In-Reply-To: <20230625204907.57291-6-julien@xen.org> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BN8NAM11FT074:EE_|DM4PR12MB6087:EE_ X-MS-Office365-Filtering-Correlation-Id: 47325097-960e-448e-6e81-08db763a8d0e X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 94bem0Rvo6JtZjRqr+GDKOZpvDoP2lEFYzC4ZOT/0jS6u5feYLG0E8LMlc5YVMBu88hxI9R4t7KWc4PFDb2fJj2Y2R9T0hBy2AApq5TZgNyHczKUpSwBmomUhEf4Qor+L9mI45HD3WDDbLujmbeor+WwF1DzRenFxPK97HFNbmhtTjXz5kkWxyHrqpwhqoxgyRo6JAePMkAz9AhBGb2lnuN8JGRNbQUIpFJ1dp2qSJ1wYz3T8UslXoKYGPpi3EfcpHaWBda6Sg+aWQw5C1mhI5OGJAFJjBc4uDw4NaUuxpTlp0xpeA2WplvPtEp1DfiAGCx1M60l6+/D43eGFaVbUXwbnbKQQgZw90VEU1ghjwTFGu0UOD8HrPhiMVE/gUudUqxPJgGnD4ye5IfWzPgLw+Gpubf+zknzpYxIa86KeKBItMmaXPcLCIdqwvc+EDxql9X4KMkXfnsqZsRS9WRoTOfFJU1kihJoqEw+FQDeh0n/9qCKTE5+H+cGGZrIicOTvxl++GCCyXvbHR/f8gsMQL07HFN1VBr0CrqQ+EuPzR0evqn98ZnRpprXNXlZkjm5gLjFnXzM4Igo6IW3B6IUCLOD16JMHadVu7Lox0f6ZfWTa8bMkFt9tr1LnDcT+WLwi6Ho3yxKb4bxpPwV7eeDsnKtNvYqF9J73+kNcavrHDC4V9YDObO58Dgcn9BJg+dshSc5BRunCK4bWmph25b4zzM7YHOjP3TghBcaKL91sm1xQKY04PiDsw9vLRqZCtFFSK7bw5yhlcFvUg1f2hftzui1a0uEdcigQKwecZDSESBig5EPMzS7E0ElVHSYK4ib X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(396003)(376002)(136003)(346002)(39860400002)(451199021)(46966006)(40470700004)(36840700001)(31686004)(82310400005)(36860700001)(36756003)(40460700003)(70206006)(30864003)(5660300002)(44832011)(356005)(8936002)(8676002)(41300700001)(86362001)(81166007)(40480700001)(4326008)(316002)(70586007)(31696002)(82740400003)(47076005)(26005)(53546011)(2906002)(478600001)(186003)(2616005)(16576012)(426003)(54906003)(110136005)(336012)(83380400001)(43740500002)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Jun 2023 11:43:24.9302 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 47325097-960e-448e-6e81-08db763a8d0e X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com] X-MS-Exchange-CrossTenant-AuthSource: BN8NAM11FT074.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR12MB6087 On 25/06/2023 22:49, Julien Grall wrote: > > > From: Julien Grall > > At the moment, the maximum size of Xen binary we can support is 2MB. > This is what we reserved in the virtual address but also what all > the code in Xen relies on as we only allocate one L3 page-table. > > When feature like UBSAN (will be enabled in a follow-up patch) and GCOV > are enabled, the binary will be way over 2MB. > > The code is now reworked so it doesn't realy on a specific size but s/realy/rely > will instead look at the reversed size and compute the number of > page-table to allocate/map. > > While at it, replace any reference to 4KB mappings with a more > generic word because the page-size may change in the future. > > Also fix the typo s/tlb/tbl/ in code move in arm32/head.S > > Signed-off-by: Julien Grall > --- > xen/arch/arm/arm32/head.S | 61 ++++++++++++++++++++++++------- > xen/arch/arm/arm64/head.S | 51 +++++++++++++++++++++----- > xen/arch/arm/include/asm/config.h | 1 + > xen/arch/arm/include/asm/lpae.h | 8 ++-- > xen/arch/arm/mm.c | 24 +++++++----- > 5 files changed, 108 insertions(+), 37 deletions(-) > > diff --git a/xen/arch/arm/arm32/head.S b/xen/arch/arm/arm32/head.S > index 5e3692eb3abf..5448671de897 100644 > --- a/xen/arch/arm/arm32/head.S > +++ b/xen/arch/arm/arm32/head.S > @@ -373,35 +373,55 @@ ENDPROC(cpu_init) > .endm > > /* > - * Macro to create a page table entry in \ptbl to \tbl > + * Macro to create a page table entry in \ptbl to \tbl (physical > + * address) > * > * ptbl: table symbol where the entry will be created > - * tbl: table symbol to point to > + * tbl: physical address of the table to point to > * virt: virtual address > * lvl: page-table level > * > * Preserves \virt > - * Clobbers r1 - r4 > + * Clobbers \tbl, r1 - r3 > * > * Also use r10 for the phys offset. This no longer applies. > * > - * Note that \virt should be in a register other than r1 - r4 > + * Note that \tbl and \virt should be in a register other than r1 - r3 > */ > -.macro create_table_entry, ptbl, tbl, virt, lvl > - get_table_slot r1, \virt, \lvl /* r1 := slot in \tlb */ > - lsl r1, r1, #3 /* r1 := slot offset in \tlb */ > - > - load_paddr r4, \tbl > +.macro create_table_entry_from_paddr, ptbl, tbl, virt, lvl > + get_table_slot r1, \virt, \lvl /* r1 := slot in \tbl */ > + lsl r1, r1, #3 /* r1 := slot offset in \tbl */ > > movw r2, #PT_PT /* r2:r3 := right for linear PT */ > - orr r2, r2, r4 /* + \tlb paddr */ > + orr r2, r2, \tbl /* + \tbl paddr */ > mov r3, #0 > > - adr_l r4, \ptbl > + adr_l \tbl, \ptbl /* \tbl := (v,p)addr of \ptbl */ > > - strd r2, r3, [r4, r1] > + strd r2, r3, [\tbl, r1] > .endm > > + > +/* > + * Macro to create a page table entry in \ptbl to \tbl (symbol) > + * > + * ptbl: table symbol where the entry will be created > + * tbl: table symbol to point to > + * virt: virtual address > + * lvl: page-table level > + * > + * Preserves \virt > + * Clobbers r1 - r4 > + * > + * Also use r10 for the phys offset. > + * > + * Note that \virt should be in a register other than r1 - r4 > + */ > +.macro create_table_entry, ptbl, tbl, virt, lvl > + load_paddr r4, \tbl > + create_table_entry_from_paddr \ptbl, r4, \virt, \lvl > + .endm > + > /* > * Macro to create a mapping entry in \tbl to \paddr. Only mapping in 3rd > * level table (i.e page granularity) is supported. > @@ -451,13 +471,26 @@ ENDPROC(cpu_init) > * Output: > * r12: Was a temporary mapping created? > * > - * Clobbers r0 - r4 > + * Clobbers r0 - r5 > */ > create_page_tables: > /* Prepare the page-tables for mapping Xen */ > mov_w r0, XEN_VIRT_START > create_table_entry boot_pgtable, boot_second, r0, 1 > - create_table_entry boot_second, boot_third, r0, 2 > + > + /* > + * We need to use a stash register because > + * create_table_entry_paddr() will clobber the register storing > + * the physical address of the table to point to. > + */ > + load_paddr r5, boot_third > + mov_w r4, XEN_VIRT_START Can you just reuse r0 that is already set to XEN_VIRT_START not to repeat this operation over and over again? > +.rept XEN_NR_ENTRIES(2) > + mov r0, r5 /* r0 := paddr(l3 table) */ > + create_table_entry_from_paddr boot_second, r0, r4, 2 > + add r4, r4, #XEN_PT_LEVEL_SIZE(2) /* r4 := Next vaddr */ > + add r5, r5, #PAGE_SIZE /* r5 := Next table */ > +.endr > > /* > * Find the size of Xen in pages and multiply by the size of a > diff --git a/xen/arch/arm/arm64/head.S b/xen/arch/arm/arm64/head.S > index 66bc85d4c39e..c9e2e36506d9 100644 > --- a/xen/arch/arm/arm64/head.S > +++ b/xen/arch/arm/arm64/head.S > @@ -490,6 +490,31 @@ ENDPROC(cpu_init) > ubfx \slot, \virt, #XEN_PT_LEVEL_SHIFT(\lvl), #XEN_PT_LPAE_SHIFT > .endm > > +/* > + * Macro to create a page table entry in \ptbl to \tbl > + * ptbl: table symbol where the entry will be created > + * tbl: physical address of the table to point to > + * virt: virtual address > + * lvl: page-table level > + * tmp1: scratch register > + * tmp2: scratch register > + * > + * Preserves \virt > + * Clobbers \tbl, \tmp1, \tmp2 > + * > + * Note that all parameters using registers should be distinct. > + */ > +.macro create_table_entry_from_paddr, ptbl, tbl, virt, lvl, tmp1, tmp2 > + get_table_slot \tmp1, \virt, \lvl /* \tmp1 := slot in \tlb */ s/tlb/tbl > + > + mov \tmp2, #PT_PT /* \tmp2 := right for linear PT */ > + orr \tmp2, \tmp2, \tbl /* + \tlb */ s/tlb/tbl > + > + adr_l \tbl, \ptbl /* \tlb := address(\ptbl) */ s/tlb/tbl > + > + str \tmp2, [\tbl, \tmp1, lsl #3] > +.endm > + > /* > * Macro to create a page table entry in \ptbl to \tbl > * > @@ -509,15 +534,8 @@ ENDPROC(cpu_init) > * Note that all parameters using registers should be distinct. > */ > .macro create_table_entry, ptbl, tbl, virt, lvl, tmp1, tmp2, tmp3 > - get_table_slot \tmp1, \virt, \lvl /* \tmp1 := slot in \tlb */ > - > - load_paddr \tmp2, \tbl > - mov \tmp3, #PT_PT /* \tmp3 := right for linear PT */ > - orr \tmp3, \tmp3, \tmp2 /* + \tlb paddr */ > - > - adr_l \tmp2, \ptbl > - > - str \tmp3, [\tmp2, \tmp1, lsl #3] > + load_paddr \tmp1, \tbl > + create_table_entry_from_paddr \ptbl, \tmp1, \virt, \lvl, \tmp2, \tmp3 > .endm > > /* > @@ -570,7 +588,20 @@ create_page_tables: > ldr x0, =XEN_VIRT_START > create_table_entry boot_pgtable, boot_first, x0, 0, x1, x2, x3 > create_table_entry boot_first, boot_second, x0, 1, x1, x2, x3 > - create_table_entry boot_second, boot_third, x0, 2, x1, x2, x3 > + > + /* > + * We need to use a stash register because > + * create_table_entry_paddr() will clobber the register storing > + * the physical address of the table to point to. > + */ > + load_paddr x4, boot_third > + ldr x1, =XEN_VIRT_START Can you just reuse x0 that is already set to XEN_VIRT_START not to repeat this operation over and over again? > +.rept XEN_NR_ENTRIES(2) > + mov x0, x4 /* x0 := paddr(l3 table) */ > + create_table_entry_from_paddr boot_second, x0, x1, 2, x2, x3 > + add x1, x1, #XEN_PT_LEVEL_SIZE(2) /* x1 := Next vaddr */ > + add x4, x4, #PAGE_SIZE /* x4 := Next table */ > +.endr > > /* > * Find the size of Xen in pages and multiply by the size of a > diff --git a/xen/arch/arm/include/asm/config.h b/xen/arch/arm/include/asm/config.h > index c969e6da589d..6d246ab23c48 100644 > --- a/xen/arch/arm/include/asm/config.h > +++ b/xen/arch/arm/include/asm/config.h > @@ -125,6 +125,7 @@ > #endif > > #define XEN_VIRT_SIZE _AT(vaddr_t, MB(2)) > +#define XEN_NR_ENTRIES(lvl) (XEN_VIRT_SIZE / XEN_PT_LEVEL_SIZE(lvl)) > > #define FIXMAP_VIRT_START (XEN_VIRT_START + XEN_VIRT_SIZE) > #define FIXMAP_VIRT_SIZE _AT(vaddr_t, MB(2)) > diff --git a/xen/arch/arm/include/asm/lpae.h b/xen/arch/arm/include/asm/lpae.h > index 7d2f6fd1bd5a..93e824f01125 100644 > --- a/xen/arch/arm/include/asm/lpae.h > +++ b/xen/arch/arm/include/asm/lpae.h > @@ -267,15 +267,17 @@ lpae_t mfn_to_xen_entry(mfn_t mfn, unsigned int attr); > > /* > * Macros to define page-tables: > - * - DEFINE_BOOT_PAGE_TABLE is used to define page-table that are used > + * - DEFINE_BOOT_PAGE_TABLE{,S} are used to define page-table that are used s/page-table/page-table(s)/ or maybe using the same comment as for runtime pgt macro > * in assembly code before BSS is zeroed. > * - DEFINE_PAGE_TABLE{,S} are used to define one or multiple > * page-tables to be used after BSS is zeroed (typically they are only used > * in C). > */ > -#define DEFINE_BOOT_PAGE_TABLE(name) \ > +#define DEFINE_BOOT_PAGE_TABLES(name, nr) \ > lpae_t __aligned(PAGE_SIZE) __section(".data.page_aligned") \ > - name[XEN_PT_LPAE_ENTRIES] > + name[XEN_PT_LPAE_ENTRIES * (nr)] > + > +#define DEFINE_BOOT_PAGE_TABLE(name) DEFINE_BOOT_PAGE_TABLES(name, 1) > > #define DEFINE_PAGE_TABLES(name, nr) \ > lpae_t __aligned(PAGE_SIZE) name[XEN_PT_LPAE_ENTRIES * (nr)] > diff --git a/xen/arch/arm/mm.c b/xen/arch/arm/mm.c > index e460249736c3..2b2ff6015ebd 100644 > --- a/xen/arch/arm/mm.c > +++ b/xen/arch/arm/mm.c > @@ -53,8 +53,8 @@ mm_printk(const char *fmt, ...) {} > * to the CPUs own pagetables. > * > * These pagetables have a very simple structure. They include: > - * - 2MB worth of 4K mappings of xen at XEN_VIRT_START, boot_first and > - * boot_second are used to populate the tables down to boot_third > + * - XEN_VIRT_SIZE worth of L3 mappings of xen at XEN_VIRT_START, boot_first > + * and boot_second are used to populate the tables down to boot_third > * which contains the actual mapping. > * - a 1:1 mapping of xen at its current physical address. This uses a > * section mapping at whichever of boot_{pgtable,first,second} > @@ -79,7 +79,7 @@ DEFINE_BOOT_PAGE_TABLE(boot_first_id); > DEFINE_BOOT_PAGE_TABLE(boot_second_id); > DEFINE_BOOT_PAGE_TABLE(boot_third_id); > DEFINE_BOOT_PAGE_TABLE(boot_second); > -DEFINE_BOOT_PAGE_TABLE(boot_third); > +DEFINE_BOOT_PAGE_TABLES(boot_third, XEN_NR_ENTRIES(2)); > > /* Main runtime page tables */ > > @@ -115,7 +115,7 @@ DEFINE_BOOT_PAGE_TABLE(xen_fixmap); > * Third level page table used to map Xen itself with the XN bit set > * as appropriate. > */ > -static DEFINE_PAGE_TABLE(xen_xenmap); > +static DEFINE_PAGE_TABLES(xen_xenmap, XEN_NR_ENTRIES(2)); > > /* Non-boot CPUs use this to find the correct pagetables. */ > uint64_t init_ttbr; > @@ -518,15 +518,15 @@ void __init setup_pagetables(unsigned long boot_phys_offset) > p[0].pt.table = 1; > p[0].pt.xn = 0; > > - /* Break up the Xen mapping into 4k pages and protect them separately. */ > - for ( i = 0; i < XEN_PT_LPAE_ENTRIES; i++ ) > + /* Break up the Xen mapping into pages and protect them separately. */ > + for ( i = 0; i < XEN_NR_ENTRIES(3); i++ ) > { > vaddr_t va = XEN_VIRT_START + (i << PAGE_SHIFT); > > if ( !is_kernel(va) ) > break; > pte = pte_of_xenaddr(va); > - pte.pt.table = 1; /* 4k mappings always have this bit set */ > + pte.pt.table = 1; /* third level mappings always have this bit set */ > if ( is_kernel_text(va) || is_kernel_inittext(va) ) > { > pte.pt.xn = 0; > @@ -539,10 +539,14 @@ void __init setup_pagetables(unsigned long boot_phys_offset) > > /* Initialise xen second level entries ... */ > /* ... Xen's text etc */ > + for ( i = 0; i < XEN_NR_ENTRIES(2); i++ ) > + { > + vaddr_t va = XEN_VIRT_START + i * XEN_PT_LEVEL_SIZE(2); For consistency with the upper loop, maybe (i << XEN_PT_LEVEL_SHIFT(2)) ? These are all just minor comments, so: Reviewed-by: Michal Orzel ~Michal From xen-devel-bounces@lists.xenproject.org Mon Jun 26 11:50:25 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 11:50:25 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555463.867251 (Exim 4.92) (envelope-from ) id 1qDkjY-0003kl-3d; Mon, 26 Jun 2023 11:50:16 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555463.867251; Mon, 26 Jun 2023 11:50:16 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDkjX-0003ke-VW; Mon, 26 Jun 2023 11:50:15 +0000 Received: by outflank-mailman (input) for mailman id 555463; Mon, 26 Jun 2023 11:50:14 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDkjW-0003kY-FO for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 11:50:14 +0000 Received: from NAM11-DM6-obe.outbound.protection.outlook.com (mail-dm6nam11on2062f.outbound.protection.outlook.com [2a01:111:f400:7eaa::62f]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 9b118f01-1417-11ee-8611-37d641c3527e; Mon, 26 Jun 2023 13:50:12 +0200 (CEST) Received: from MW4PR03CA0250.namprd03.prod.outlook.com (2603:10b6:303:b4::15) by MN2PR12MB4550.namprd12.prod.outlook.com (2603:10b6:208:24e::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.26; Mon, 26 Jun 2023 11:50:07 +0000 Received: from CO1NAM11FT049.eop-nam11.prod.protection.outlook.com (2603:10b6:303:b4:cafe::a7) by MW4PR03CA0250.outlook.office365.com (2603:10b6:303:b4::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.33 via Frontend Transport; Mon, 26 Jun 2023 11:50:06 +0000 Received: from SATLEXMB03.amd.com (165.204.84.17) by CO1NAM11FT049.mail.protection.outlook.com (10.13.175.50) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6500.47 via Frontend Transport; Mon, 26 Jun 2023 11:50:06 +0000 Received: from SATLEXMB04.amd.com (10.181.40.145) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Mon, 26 Jun 2023 06:50:05 -0500 Received: from [10.71.193.39] (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server id 15.1.2507.23 via Frontend Transport; Mon, 26 Jun 2023 06:50:03 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 9b118f01-1417-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Ad/KZ5ps0ePKC4ZeBKzl6m8XoX3H73+L2tDXmvRzrO4q3x8GdQkeRBYpbK3gTZDJx9GSPK6TCOa3LySO+tjJbP9WMbFO2TER+3kbkzBdzFn2jgOzLymN4FgEz4kOyrA9aoBoiwwk3QVzFEjp/bjKeuuTvYKJUcZZPc2n803yMm9GFKkGLr4dUFUweVcD0mKko6Z5zg7X0dQBOlw+3AlEfqvT1nXLbIyndLf636vmWm8CMhxeSCwCM4XokYzdCKpsewLBcFqO4wGSQtH/XN1d7SSf2fqqEMhhTx8X+0wYBo5iCgOePYX5G37XYByW7rBNEQyOVG++eL4AKN3UyxpySA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=jZY1EpuHSSSRsOWezBO/ldLf2F3jscxHI4/L3u/0T8w=; b=gpXLS1BLhrMhVRT152DvxQGlql1X9MzsXxKT5/6ew/COoNyI+JmfTEpTVeNX5QfCQOol2KrMN/X3nqraaUoXB3TRVVHem7VWNovqS8mtyqfa/rFvutgGdAq+ivvIVyiKDZqBb9UHYk1sfRQZL+KlPNFcViU83YuatTQoG3f8pI9KCOmCbDFiPtBup7nE6ppoAtpAloOsEJd/pSKzIilvpUDeJm4CeKEUJD6lI4PvvyAvbBPv7TYu0M/6256zgF47dddK64su/DTSdUGeADQMDb6m/JDzMjh6sOhahWAG0fnGpOPbhocrYKRUg0xW4/al8RhdBqgv1RnW1ieYy18xQA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=xen.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=jZY1EpuHSSSRsOWezBO/ldLf2F3jscxHI4/L3u/0T8w=; b=SoGzFZyAfVd4VVVj2p1gfYajfJsMK6KsJ4d3XqpGfbsWlI8+IPbAqWc+cHqskSHdtgMRk5mUDnvMuqfTIxA32D140lUzNLvmsozHn7UEOTT69rB1Uu/C8rynMl4D7Eln+dFC7QeUQCqXP/718X6/j1+ITal4Dq/0exzUjy1pPDc= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C Message-ID: Date: Mon, 26 Jun 2023 13:50:03 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH 7/9] xen/arm64: head: Rework PRINT() to work when the string is not withing +/- 1MB Content-Language: en-US To: Julien Grall , CC: , , Julien Grall , Stefano Stabellini , Bertrand Marquis , Volodymyr Babchuk References: <20230625204907.57291-1-julien@xen.org> <20230625204907.57291-8-julien@xen.org> From: Michal Orzel In-Reply-To: <20230625204907.57291-8-julien@xen.org> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO1NAM11FT049:EE_|MN2PR12MB4550:EE_ X-MS-Office365-Filtering-Correlation-Id: cc4f8c9c-a594-4e30-9d70-08db763b7c3c X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: c1voGW1aVxrJIiImAEiNkj8iLJ867Cil+oQX0Z9y12vrHNr/V31VLtkSO9gWemNdsDsq/CIFa3l+WgRfBInZuLoqxMNZulroM0oZmIcJWIsM7j6qD4X0KhvAe7T27tGx0Z6vpCKeIguTfJEvZqvjCrn724ggGxuLCl9Wa6UCl269eGoYheMH07thDX9JXGCSYRb/6Pki8QD0ZiP0mFGgXEUn9iEnYCkpCa2CmMU95JRNTojGWls4lJ+Vex9RGh329eC8PrgMZ5Rx8zgM8I8q8jMjzqLk7KJhi1YzlxD4uj52kTueMKnCnH/pS4+J91Eh0kpNQlcgy4/C9dGAQDj3CWzpnpFEj/c3fnOTiZX6Ner6LpBgTN4vlib1Y1WFRvjP8g42qOxxuf5cZSGfhKoofaR2QNjTvg3GdJKjARCiiahzSmuuPg2hZz3O8NIcl0VY/UwHS/x/IsvPVh3pq92nrz0zgBW6yXEu/R1gm1rhbekPvkGAuS498sRHAaVa67a1BJUiTi38z3X+94klDHoGgAAtqObzFESjLUqpWDO7/CSfSKauQEuzq8sLncbeGOBc7T1FPHbA94n731+UKloAU49oSYwRhKginWonW9GIv4RsM+tFGE0ftvJZ3KEkcDqHxd/T/zquMwchp3yjipTqFwtXZDSXqDLZu2apOtD8MICMoUCC7EUo9vdPQXyq0gOjXiOmMIlnQOmaUkqA0EpJ1ZegFg7wbMxccRbLduliGA0k5a5DeBEuH4O+NUDjiRMWSil4BmDDVIIATVfQP79jkRiDxsYshzoVPtZmFdLgHbb09ux4LeXlYEaqNowx4r/6 X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(396003)(376002)(136003)(346002)(39860400002)(451199021)(46966006)(40470700004)(36840700001)(31686004)(82310400005)(36860700001)(36756003)(40460700003)(70206006)(5660300002)(44832011)(356005)(8936002)(8676002)(41300700001)(86362001)(81166007)(40480700001)(4326008)(316002)(70586007)(31696002)(82740400003)(47076005)(26005)(53546011)(2906002)(4744005)(478600001)(186003)(2616005)(16576012)(426003)(54906003)(110136005)(336012)(43740500002)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Jun 2023 11:50:06.0990 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: cc4f8c9c-a594-4e30-9d70-08db763b7c3c X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com] X-MS-Exchange-CrossTenant-AuthSource: CO1NAM11FT049.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN2PR12MB4550 On 25/06/2023 22:49, Julien Grall wrote: > > > From: Julien Grall > > The instruction ADR is able to load an address of a symbol that is > within the range +/- 1 MB of the instruction. > > While today Xen is quite small (~1MB), it could grow up to 2MB in the > current setup. So there is no guarantee that the instruction can > load the string address (stored in rodata). > > So replace the instruction ADR with the pseudo-instruction ADR_L > which is able to handle symbol within the range +/- 4GB. > > Signed-off-by: Julien Grall Reviewed-by: Michal Orzel ~Michal From xen-devel-bounces@lists.xenproject.org Mon Jun 26 11:56:57 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 11:56:57 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555467.867261 (Exim 4.92) (envelope-from ) id 1qDkpq-0004NN-OB; Mon, 26 Jun 2023 11:56:46 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555467.867261; Mon, 26 Jun 2023 11:56:46 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDkpq-0004NG-LI; Mon, 26 Jun 2023 11:56:46 +0000 Received: by outflank-mailman (input) for mailman id 555467; Mon, 26 Jun 2023 11:56:45 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDkpp-0004NA-2Q for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 11:56:45 +0000 Received: from NAM12-MW2-obe.outbound.protection.outlook.com (mail-mw2nam12on20608.outbound.protection.outlook.com [2a01:111:f400:fe5a::608]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 83278a8d-1418-11ee-8611-37d641c3527e; Mon, 26 Jun 2023 13:56:42 +0200 (CEST) Received: from MW4P222CA0002.NAMP222.PROD.OUTLOOK.COM (2603:10b6:303:114::7) by PH0PR12MB8173.namprd12.prod.outlook.com (2603:10b6:510:296::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.23; Mon, 26 Jun 2023 11:56:38 +0000 Received: from CO1NAM11FT005.eop-nam11.prod.protection.outlook.com (2603:10b6:303:114:cafe::55) by MW4P222CA0002.outlook.office365.com (2603:10b6:303:114::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.34 via Frontend Transport; Mon, 26 Jun 2023 11:56:37 +0000 Received: from SATLEXMB03.amd.com (165.204.84.17) by CO1NAM11FT005.mail.protection.outlook.com (10.13.174.147) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6500.47 via Frontend Transport; Mon, 26 Jun 2023 11:56:37 +0000 Received: from SATLEXMB04.amd.com (10.181.40.145) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Mon, 26 Jun 2023 06:56:36 -0500 Received: from [10.71.193.39] (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server id 15.1.2507.23 via Frontend Transport; Mon, 26 Jun 2023 06:56:34 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 83278a8d-1418-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=C6KBU1dYYbIECh+c2rW+J2r2ojws3o8upt6lgEakd0N5tS7LNIuRZL3vH1/OUXXSvQEv8oSMoXMTNpBMCu0vtF9g0zjlGKCNuGbJCwsuCTzNowL71v380FOjBlsMtB31W+38ByPEMbrPkNq4lH19ULLK7OwrBeDc+csf9Bw9ddXZWmmGSLVoto/MCqKWtJXX+MotmDPfVItN3w+PB5MeHQm08Tpx9/lGDQQCMMycr07+N8/xqAz5BhW1m4MJMMeoMg+8Xuf+yeomtDfGKDZbl6RBnpanD3DxtxpVYArRW2MnQ99ur7AyHJFQWc/cGsBkbiHXJf1Z9d8jFND04f3kew== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=e8clPIsIJDfgxgDxyUqxHnCDuPH9LTf+Jzd0sj2FwRw=; b=CJzHWXgSRkvGWIOqNq3bing4kVTkMmGi2NY8H2VJ4EjFtcaT0RPiQVVPFfMlf90B4UE08SLP//QCuhuUU4dqAG1ALbzj6vswiU+MeNxoRH5L9zxMfolYu5gE4gPFKjZcQBM2ABpCDfOQiCb/FhhE3ucXml/OPP0ln+RR/h8Sc/pNr02Z3LjYkd7ZvX9Fg8SO2O+raZXd8kWpkBfj0j/9z7QRM5lsiP77bgrRuct6iPF1BqrfiXyLfDI2OXIvIsEUsy5EbsZsYRyRWFPn8O151JYbtZMDDM0XahgAHNnoQuVQTfOp9BA+MkUS6bbORJjXHWqnJTn2isGfAXekV/iupQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=xen.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=e8clPIsIJDfgxgDxyUqxHnCDuPH9LTf+Jzd0sj2FwRw=; b=ECHzSDbXL3jGs1OV3LsL87kJyk8T4l0ijuyKATUK5mxIDSvI6O1S/Oz37DUXwhfSyfNMOiZ8N7sJpTyBYyAYQpUyi6ZnSGVcs298/Z8fxYDkClPxqfqDuT72jkGfTc8e7OW9TpDg0LI0FjIRnLa2Biw6XvFZFA+UfKXA0icZuyU= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C Message-ID: <804682ce-ad88-34dc-1501-c9ff6347fb8b@amd.com> Date: Mon, 26 Jun 2023 13:56:34 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH 8/9] xen/arm: Allow the user to build Xen with USBAN Content-Language: en-US To: Julien Grall , CC: , , Julien Grall , Stefano Stabellini , Bertrand Marquis , Volodymyr Babchuk References: <20230625204907.57291-1-julien@xen.org> <20230625204907.57291-9-julien@xen.org> From: Michal Orzel In-Reply-To: <20230625204907.57291-9-julien@xen.org> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO1NAM11FT005:EE_|PH0PR12MB8173:EE_ X-MS-Office365-Filtering-Correlation-Id: 972446aa-63bf-4009-a63d-08db763c6570 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: ea86I73chB2EsYBvOxWqDy5oRRyvKBpDjFMvV5L51Gx5YCB5e/HqHfW+UYosnPq5NjNVr6KJ7LQPKDwnQSMHTQ/cglhnYJoMTs2s099SXsMSUwsgMT4NP8KNlqU3uy/RBeqjqaLsxp83HR5GKyqE1mAd8qtY6pbI7RFqf9MezgsFi6XFEOESKUMGDom4ptLGAFerpwf+Ka3d1B11E6BYizT+Ecm6eW1UqnFUpLrF24JpWza5ZfJyHo0UBUiAgZusA/0XFwOhQGgYm8OeSF3uur3D9R0bmruOwymU4YU9FxesR/Dc9xipvYy7FILbclyTPocr3uMtRfUQO97uo46YLaRrZucVfmguqJokLmQXO0maMS1kFbecKMTUhkLZsY21rVUe2LCEx9DWA4Ubg3a0yduNMBnYUI3xsnSC8YN/vs5iUkz/tXWJN+WIz++8DIDotxTlOc68o9AeEZsvO1ZgpyyOBl+VJce3J03rN+M/JNHa66fCG/GqakX6H99nYFcHZyk25dnL7pisi+IIozcrmFBuGm8yNLGGMWH7RULTfEG/kHMa5J50XXoBtVgn51KH2jmLcOg2psffuHMZGwB/r461Oc7XFTzvJkn8yp/oyrnVak5CcaQS7HNl79GI5Vtmx8vQ7lANiaeBF16AehDFDS8G05lafQYfK0NafLPIjspqb1iwKxk9S6z4xu2kTzN5I75HwIv77jANsC9j9p4Y0WdTNPRmaWbVoLKk26kfcKjxkQqtja2dHEGJwjEi4Tec0cWWvd+6lsxV0xVZygiYORgFXxCA/udDg7mJicSDgSr/vgKG4N4XSw2oHHwHWoU8 X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(396003)(39860400002)(346002)(136003)(376002)(451199021)(46966006)(40470700004)(36840700001)(40460700003)(2906002)(82310400005)(81166007)(2616005)(83380400001)(356005)(426003)(26005)(47076005)(53546011)(186003)(336012)(82740400003)(36860700001)(41300700001)(40480700001)(31696002)(86362001)(16576012)(110136005)(54906003)(478600001)(70206006)(70586007)(4326008)(316002)(36756003)(5660300002)(31686004)(8936002)(8676002)(44832011)(36900700001)(43740500002);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Jun 2023 11:56:37.3179 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 972446aa-63bf-4009-a63d-08db763c6570 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com] X-MS-Exchange-CrossTenant-AuthSource: CO1NAM11FT005.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR12MB8173 On 25/06/2023 22:49, Julien Grall wrote: > > > From: Julien Grall > > UBSAN has been enabled a few years ago on x86 but was never > enabled on Arm because the final binary is bigger than 2MB ( > the maximum we can currently handled). > > With the recent rework, it is now possible to grow Xen over 2MB. > So there is no more roadblock to enable Xen other than increasing > the reserved area. > > On my setup, for arm32, the final binaray was very close to 4MB. > Furthermore, one may want to enable USBAN and GCOV which would put > the binary well-over 4MB (both features require for some space). > Therefore, increase the size to 8MB which should us some margin. > > Signed-off-by: Julien Grall > > ---- > > The drawback with this approach is that we are adding 6 new > page-table (3 for boot and 3 for runtime) that are statically > allocated. So the final Xen binary will be 24KB bigger when > neither UBSAN nor GCOV. > > If this is not considered acceptable, then we could make the > size of configurable in the Kconfig and decide it based on the > features enabled. Both of these features are enabled only in a debug build of Xen, so another option would be to increase Xen size only for a debug build. ~Michal From xen-devel-bounces@lists.xenproject.org Mon Jun 26 11:57:46 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 11:57:46 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555473.867271 (Exim 4.92) (envelope-from ) id 1qDkqo-0004xH-4g; Mon, 26 Jun 2023 11:57:46 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555473.867271; Mon, 26 Jun 2023 11:57:46 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDkqo-0004xA-1t; Mon, 26 Jun 2023 11:57:46 +0000 Received: by outflank-mailman (input) for mailman id 555473; Mon, 26 Jun 2023 11:57:44 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDkqm-0004ww-3h for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 11:57:44 +0000 Received: from esa1.hc3370-68.iphmx.com (esa1.hc3370-68.iphmx.com [216.71.145.142]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id a645c19a-1418-11ee-8611-37d641c3527e; Mon, 26 Jun 2023 13:57:41 +0200 (CEST) Received: from mail-bn7nam10lp2103.outbound.protection.outlook.com (HELO NAM10-BN7-obe.outbound.protection.outlook.com) ([104.47.70.103]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 26 Jun 2023 07:57:30 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by SA0PR03MB5516.namprd03.prod.outlook.com (2603:10b6:806:bf::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.24; Mon, 26 Jun 2023 11:57:27 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606%4]) with mapi id 15.20.6521.023; Mon, 26 Jun 2023 11:57:27 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: a645c19a-1418-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1687780661; h=message-id:date:subject:to:cc:references:from: in-reply-to:content-transfer-encoding:mime-version; bh=5VdrAXXyi4JezGRZpr4Np32WIRyDhhRgUyHIrT188PI=; b=JKBBKQ/A06s26BNd2MGop6USAKZkMXGwW21b20Ho0Ma+DcR5Gx31oxEe omsH5baFjSk3Ueor16QTyj2a3lJyqecrF0cFTlo3KC1LQqem8SrYavIM+ BZ5piKX3PWnWkqPcuoxFl7hBN99lDCXWTigX4JbAG5L5m+QLch/736VpW U=; X-IronPort-RemoteIP: 104.47.70.103 X-IronPort-MID: 114571769 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:rgSsoqBd61vI8BVW/5Diw5YqxClBgxIJ4kV8jS/XYbTApDNwhjRUy zMYWW3UP62IYWfyf4ojaom2pk4O757Qzd43QQY4rX1jcSlH+JHPbTi7wuUcHAvJd5GeExg3h yk6QoOdRCzhZiaE/n9BCpC48T8nk/nOHuGmYAL9EngZbRd+Tys8gg5Ulec8g4p56fC0GArIs t7pyyHlEAbNNwVcbCRMsspvlDs15K6p4G1C4ARnDRx2lAS2e0c9Xcp3yZ6ZdxMUcqEMdsamS uDKyq2O/2+x13/B3fv8z94X2mVTKlLjFVDmZkh+AsBOsTAbzsAG6Y4pNeJ0VKtio27hc+ada jl6ncfYpQ8BZsUgkQmGOvVSO3kW0aZuoNcrLZUj2CA6IoKvn3bEmp1T4E8K0YIw4/dVI0R/z OIiJ2o0UjWqjb7nzpn4Vbw57igjBJGD0II3nFhFlGmcJ9B5BJfJTuPN+MNS2yo2ioZWB/HCa sEFaD1pKhPdfxlIPVRRA5U79AuqriCnL3sE9xTK/exuuzO7IA9ZidABNPL8fNCQSNoTtUGfv m/cpEzyAw0ANczZwj2Amp6prraWwX6kAd1MRdVU8NZV0XmdyUMTDCZLdni8saW5tVO4S49Af hl8Fi0G6PJaGFaQZvnwWQep5kGNuBE0UsBVVeY97WmlyLfQ4gufLngJSHhGctNOnN87Q3km2 0GEm/vtBCdzq/uFRHSF7LCWoDiufy8PIgcqQTIPRE0r6t/orYU3kzrGVNMlG6mw5vXwGDrwy jTMqzIsirE7hMsHka68+DjvgT22r5zNZgcw7xfQWCSu6QYRTJW+e4Wi5Fzf7PBBBIWUVF+Mu D4Dgcf2xMoDF42XnSqBBsAEBqi05u2tOSfZx1VoGvEJyTOp/HKyeJFK1xt3LkxpL8UsdCfgZ QnYvgY52XNIFH6jbKsyaYTuDc0vlPDkDY68DquSacdSaJ9scgPB5DtpeUObw2Hqlg4rjL07P pCYN82rCB72FJha8dZ/fM9FuZdD+8z07TiJLXwn53xLCYajWUM= IronPort-HdrOrdr: A9a23:eZJr4aGauymeRVMcpLqFjpLXdLJyesId70hD6qkvc3Fom52j/f xGws5x6faVslkssb8b6La90dq7MBfhHPlOkPQs1NaZLXPbUQ6TQL2KgrGSoAEIdxeOjtK1kJ 0QCJSWa+eAc2SS7/yb3ODQKb9Jrri6GeKT9J7jJh9WPH5XgspbnmJE42igYypLrUV9dPgE/M 323Ls6m9PsQwVfUu2LQl0+G8TTrdzCk5zrJTYAGh4c8QGLyR+49bLgFBCc/xEGFxdC260r/2 TpmxHwovzLiYD39jbsk0voq7hGktrozdVOQOSKl8guMz3pziq4eYh7XLWGnTYt5MWi8kwjnt Xgqwope+5z93TSVGeopgaF4Xir7B8er1vZjXOIi3rqpsL0ABo8Fsp6nIpcNj/U8VApst1Q2L 9CmzvxjesdMTrw2ADGo/TYXRBjkUS55VIkjO4olnRaFa8TcqVYo4Az9F5cVL0AACX5woY6F/ QGNrCV2N9mNXehK1zJtGhmx9KhGlw1Axe9W0AH/veY1jBH9UoJu3cw9Yg6pDMt5Zg9Q55L66 DvKaJzjoxDSccQcOZUGPoBadHfMB2NfTv8dEapZXj3HqAOPHzA77Tt5q8u2e2scJsUiLMvhZ X6Vk9Cv2JaQTOhNSS35uwJzvnxehT+Ydy0ofsuoqSR+4eMC4YDCBfzCGzHyKCb0rEi6s6yYY fHBHsZOY6lEYLUI/c74+TPYegiFZAgarxkhj8aYSP4niuZEPydisXrNNDuGZHKLREIHkvCP1 prZkmAGCwH1DHmZkPF X-Talos-CUID: 9a23:uGIn32P3roVaIe5DQThF1mslI94ffSfk8FL5KRPpB00qV+jA X-Talos-MUID: 9a23:cYOPFAtqM6zYlzf0VM2nu2BGOshH46CVVWMuloVau/aZMzwtJGLI X-IronPort-AV: E=Sophos;i="6.01,159,1684814400"; d="scan'208";a="114571769" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=WP324cSVECKXBmBeSOPdmw4KEsRj0PC6o2FAxB2+KYohhmq5jYQme20pIx/J9YPApNopdCqK/tPAdKMoqpkeSgHGBtGonGWAegrVIbtW+7AZZplOOD8ymdalL8YZ4KawvVEq9lFjALi879Y9ZlWlMXiRAuMdCsheOrz16Z6Mkj95aeL7gpR7imbelD1D5Mbi6GKtPp8i1k7zAJKmXFrs+q+ZRNx8PxTzIoVpRW8XzdIdD1kaYtzbYaMP2AQFRIKrN32PTl+FvMrPctR2J4apbjegfejGOcsqFGwFI2NXJdtriye/v2ZOd79FzHjNHp+l52l4JFGzatbkoX6HJ/m8gQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=5VdrAXXyi4JezGRZpr4Np32WIRyDhhRgUyHIrT188PI=; b=eJ7bH8l+N3jx8Uwd+G3etopv74imuEB+1PgEowhXtat6ldyd22+E03LvIDtOfVu8V9GqtGA0RfHFOagGDiFvbctWgGxCZhkg+HYuUjKdVQwktdq8C5CaLmCn7k61REw6uH0zyLccJS3Cs/p7MgbWT/qwOUMES53ffEZxJQvqAs/A4CCqWkMCN5JeIbNBsjDOH32tmq6LskLyV6vzAT4ODWxh0wHi8j16jAa37y6MAOrOEfT5qWfeNKSbo2hjWHInzBLS9UN487ypOJt3QbGtniGCKtOGl3UTSvEvlc07sXPEoWG4QC3Q/m0mGorak9pITdYIDR95CJ+mc7PhrFif4A== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=5VdrAXXyi4JezGRZpr4Np32WIRyDhhRgUyHIrT188PI=; b=hs6oRJmOSc3hE3/4BYXS2McrpxAMhsG0euXQGXo/nIx3YJs1C7GWy9mlibFJJ6YUNVBWjylzDjA1HAq8V4HzUA2GerSxWrVvW+b6QI1S5SBxIA8jeVuOen3ShI05UNtiKPWc8CRwWGHRQDgijz3KP+TIjMEN3nT3VYFBl/meqMI= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: <26a025ae-a23a-4554-4a1f-bd606e171b8f@citrix.com> Date: Mon, 26 Jun 2023 12:57:20 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH 8/9] xen/arm: Allow the user to build Xen with USBAN Content-Language: en-GB To: Henry Wang , Julien Grall , "xen-devel@lists.xenproject.org" Cc: Luca Fancellu , "michal.orzel@amd.com" , Julien Grall , Stefano Stabellini , Bertrand Marquis , Volodymyr Babchuk References: <20230625204907.57291-1-julien@xen.org> <20230625204907.57291-9-julien@xen.org> From: Andrew Cooper In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: FR0P281CA0122.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:97::12) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|SA0PR03MB5516:EE_ X-MS-Office365-Filtering-Correlation-Id: bd7e58f8-4747-4f69-ce68-08db763c82ad X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: aVVsR38SxIwx7AxqBY2ZLXNisd2kiogPO7rXEjpwTUUgE0OzDIV4YDOM4qEKk0ouk0ilXuH5qs0c+S4wPl/JVXW8e1FWAIcjHDG2q3J1nxBSXyWtcXwDwVw+3UObGMXZ4Img9tF3EC98NR90G/al6S61clcVLEE8MPv0HTxo1cknZt6QVnHfu9mkwDs6+Gi3RgGO5P8C7cXuGmA1Gdwp6aBFK/ENHs+fjrfNH4HdeD4PJfskDePqY0CZ6pZ4zeUOZEsbshxCdf9atZK00tuBlgy792rdQ9ueNqt9PULRKRlatI0E5U79iyH/w1k1332juV92cnpTV8lOoQgcRswuKCw0fQevjIbBcHBkj6mRNzS2zOcA/HAX6qdMiTJxs8FzQB7V9FoGO0CQeoJ0w6+acZgbgQqLcBDCeBEX3OXqFAB0RoWLA/9VRn3HFERP+5dcv5zGlE4k2ld1jubxDXDP5tGPgcg/UcVAl2fRpa8nc/IEq8eTb/vhJ5W8ys4GWGO5ipbL1Ac2Qcy2o2VDkbqxbiSDaojcl7fKYNKfY1kZQ6zYvFxJXuF/brBVzWR8GAS6XL/0fNNz/JXLELaFkF+ZYYJXg3DgcG5Gkc9nPkIBzsnuZJTALhMDHsjhkzDl09+mNu1BOP7kTcH9D/KTleqVfw== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(136003)(366004)(346002)(376002)(39860400002)(396003)(451199021)(6486002)(6512007)(53546011)(6666004)(186003)(478600001)(54906003)(2616005)(31696002)(82960400001)(86362001)(110136005)(66476007)(66946007)(66556008)(4326008)(6506007)(31686004)(83380400001)(41300700001)(316002)(5660300002)(2906002)(4744005)(26005)(38100700002)(36756003)(8936002)(8676002)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?UUdRM3JxMjN4c0pyNE9aeWc5dUtRd0tMbnl3ajdzVGQ4bCtZRFc4a0pTU01D?= =?utf-8?B?OWVpTEFKYkxqVUMzV0hmRGtvV2lRNzBvZHhBcmpIYmU2T1BWdWVYZW9NWkR4?= =?utf-8?B?d2ZZdDB0a01QSkRuV0Q0azNlOXJ0OWo5Tlg0bUwvQlFSQzlPMXlvZDFUc2NR?= =?utf-8?B?aFYyVzdrU2UrdzRnZC8zL25RVWkzSWExaEZvaVJxNDVTZURESHZQNlJ1MGw3?= =?utf-8?B?azJTaXdONFhlbERxMmhVVUF0VEdkd1VGMUpKSGtIQ2lIZkw2alo3a0tlOTc4?= =?utf-8?B?bjlmZUg2aElJeWxPblowaUhCcTM3ekcrY3NlLzh0UUwzVjJPbTZqOG9uaUkz?= =?utf-8?B?RFJNMVVBOExwWnJ5TjVnTEluNjVlWVJiQUFxL2VraWI4aituaFM0VytjUlRv?= =?utf-8?B?Qld4elBabE82YitVektMZkdzcmpZRTcyajQ0OHBDSkVKMkp2a2dnVHROcGFo?= =?utf-8?B?YWFpdURzNkh5V3JzaDd6UE1EQXhuajVKZnFRT3M3K2Y5NnQ5ZXEzbVpxaGZJ?= =?utf-8?B?M1FFbEtJQTFubWU5MjA1elcwZm44dXErNlp2QjArQnZNeXgvWWxxSS9KeFFi?= =?utf-8?B?b2d5SDVJK2RZaWtkSHlRdjBZNTIwb3M3K2FMUDF5a25lUjBmQjFsd0ZmVTRY?= =?utf-8?B?b3MzeE1FU2E3c0tQa08zSVdaOENqeG9wOWg5UnpYM242VGs5WDBtZHpML21O?= =?utf-8?B?cHdnZU1aQ01jT1R4U1dSZDB5NXdtY1orMXVyMEM0UGE1emRtQ3dkS1RCdVRJ?= =?utf-8?B?S1JXSkZ3R01DRnJjYjlQU2w5V3gwTi95eHRTS2dDdlVZOUNZMlhsUmxzM01L?= =?utf-8?B?N0YwZGpBRTlxSnRKYlBKU2Y3NDhISWhYRUZrdWNrS1FNRHBhdVJDb2pSaUFz?= =?utf-8?B?WE1NNWt5UmdnUy9RbDFGbmVBcmNYZ2ZSeS9rN3pWWDNmZXZ0YnJSZXZ2KzNa?= =?utf-8?B?SE9xNW1FSXdYcG1hbS9qQzV2SjlZVDMvN3BCUVdPek8rQTBqOTExdnVKVlRu?= =?utf-8?B?YlhlMS9QTTlQM1FWcmZWanBNT3F1M1ZXTTRueThxUVNzM0dyc1FjM3gwYWk1?= =?utf-8?B?T09qTEpRZW5ka3ZkSEV1OGZvaFVQV00zZlAva01Lcml6Tkc1ZEYzblFVeVRn?= =?utf-8?B?MXJCaWxuaHF2ZExUalpKYVBMbmVoV3F6L3F4MEkzK1BuNGRTODJYNDJMYm96?= =?utf-8?B?ZlhDR3p4cEZHVXFpU0RSU3hwWi81UlNwcEQvTWZndzlDek9wanRQNkg0QjZK?= =?utf-8?B?N3BkZjB0WVlVTlVWYjgycGJTL0Y4Z3JwSFhGQ1NOK0diN2lzWnZUR2srLzNY?= =?utf-8?B?cHRWeFl5MUYwMjJoR0dvbldkZ3JWKzBSNTdzcFNPUnExU1JPN0V6djFhRDFZ?= =?utf-8?B?Z0NpcHB5SFQ2Y2lSWUtPTXBlVUFOZWMwb0p4cGk4N1Fma0RINzZ3MGJ3Qmkw?= =?utf-8?B?TTBGNnZBL3ArVG12RXlrSUhRYklHYzFUWHE0YU9vZWZZdE8wczVyY29INHhV?= =?utf-8?B?RG53ZjZDSE9VbitZZFB1TUFCMUtpWXFBVUp0WFpSOW84RTVRRmRReDduRldQ?= =?utf-8?B?UGJQTGFTSWhpVnArd2ViZDdEVzRhZk9YZUsyY1BGYmZSRjJucUdmZ0pxR0dM?= =?utf-8?B?d3ZqUU85bERhSU1reHpodE1qWjBLWHA2UFViaG8vb1ZobXd4NWY0VEx5d0pj?= =?utf-8?B?eVUwejl5R3dsNDJXbE5PdWRhWFFVSVdjRXIxYk9QdUQ4N1FyR1VoZFNDRUto?= =?utf-8?B?YkNDakVDTUZ0Z253dlVKUUhPQkplTXVsNGduaUVtOUpJQzIxand6UTh2cmIw?= =?utf-8?B?U29WdGpKZzNONUliVnhRL1RKNWtQa2h3QkJrWXlncUNCemdYSy9RYmNwVmlP?= =?utf-8?B?TzZGTnl5TzR4Y29tM3ozZmFycFJuZmNuV3BkMkFsYmVxc2NEVEZObm9DN3cz?= =?utf-8?B?Y1RMYjZwWktJY2RTcUlRdi85MEpMV3hJYVJNd3JLclFuSFdzcm9RVlNBb2No?= =?utf-8?B?NktnRHcvcEJyS0hSZ0tmenF5UW9vRWxwMWJlRlZiQ2ViOFdkRVhld1BhT2tV?= =?utf-8?B?elJBcHZuYWJMaUxURWc3azkwUk5wQjBXcGVObFc4eEhzdHFMSExXQ1RMQTVu?= =?utf-8?B?emk3aWFjTG5oaUo1SlY3NXYyOFRBNWV3L0tOa2lxbTlPcXBhc1h3REFrUVBB?= =?utf-8?B?OEE9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: 3eYHlLVHE0vsbpquAGUmmwb+6uLKofR6Y7PkTffeQTQ1WeftURssHtB4BiDrcv+cQEpMqP43CQKJ2JH00O92LVkbvC1LhlSXYZRD0nduX5q928FN8KSk4x0QXGi3mTgMsEeRmjemvgFIlSgbYTrOKRjU5OnA6c5Pg4jSxnHnY9aYQd8Ahnjg/9Eu8ycvn3SxZiM7u2qt05ayHfHTEIls5zyoWwltlouohblWldARw6/cdimf8k3GefNP18SozPP2iFY/+D/RPFmCqDj4xnEl7LbUjb8/dK1BkCcTbWn15GPT6mA3pmYW+8nu+K8fUMvNvWbDBm5of6/XFFcm/rroPT+qMRfMQB8Op32vTb76WZNmjHoPRCV4aiPLqxpy8RdKr847gPfjFV3h7BWUs/FnVGO/gxS6vDbUhsYYDvgmCDbsuTqyR+REOdZOXFSVdIiFAU3UeFsZ7gc81MSIkdwRMvu/EoR03BFKRPhYC6vfjG6rAs+hyU4rMRJInOKM5zoiBgTxsa0xWsqSp8oKdmXMN0k47of3g7xxM9xxShgiMAhi9JYzyd3XMbEQQupbg2LdKG5+j42U+7OrGcyImr5QCfPHdE0GYXhSNs0KvwaBbnq1M8gCYzMkuPQZMQ4DK5r4Ooir1y2ep143QByfRK/andQZnC02flCyHhaNKzBAkOsqBinl3o7feH0NlXlxaw18DFLiOQexw6n2dL0SvT3h+k04h/FmWrdhc7FlHGSy0jY7LJlTA+0OKUG68aI0s9iHcabjkYjcwg6FdTRyjhI2z/N8zcgSMXfc6rO3ve7HmhDBGE8wP8cds2I8j+BjKzdKtetkARPwveqrze6mRZmmymZ8bfchT7U3z8xxCEYM5tNgSYLovBdQJuVpPIQAUy7C3TQnA6UFwjXW4nSebjt7CRGKgT9lkVkh1l6s4v2ZSe4= X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: bd7e58f8-4747-4f69-ce68-08db763c82ad X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Jun 2023 11:57:26.9287 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: JeSSYYe4sdbiIMNsMr3ijT1rnqeG4EdQYcFt01CQJJpuOrWo2j+bOx0rhaqaq4hQlsDNAgaTUSnFJLUYWPMzzictXeWkEr8C20Rv2ygWl/A= X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA0PR03MB5516 On 26/06/2023 8:29 am, Henry Wang wrote: > However, I noticed Xen will print below during the Dom0 boot: > (XEN) ================================================================================ > (XEN) UBSAN: Undefined behaviour in arch/arm/vgic.c:371:15 > (XEN) left shift of 1 by 31 places cannot be represented in type 'int' > (XEN) Xen WARN at common/ubsan/ubsan.c:172 > > Just want to make sure you also noticed this, otherwise maybe you > can include another patch in the series to fix this? Or I can do that > in case you don't have enough bandwidth. Just as a general note.  What UBSAN does and doesn't notice depends on your compiler, optimisation level, etc, and whether you encounter a problem case depends on your hardware. Finding differing reports from different people is entirely normal. ~Andrew From xen-devel-bounces@lists.xenproject.org Mon Jun 26 12:56:52 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 12:56:52 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555489.867280 (Exim 4.92) (envelope-from ) id 1qDllh-0003E7-MQ; Mon, 26 Jun 2023 12:56:33 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555489.867280; Mon, 26 Jun 2023 12:56:33 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDllh-0003E0-Jy; Mon, 26 Jun 2023 12:56:33 +0000 Received: by outflank-mailman (input) for mailman id 555489; Mon, 26 Jun 2023 12:56:32 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDllg-0003Du-2s for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 12:56:32 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDllf-0001DD-Hr; Mon, 26 Jun 2023 12:56:31 +0000 Received: from [193.85.242.128] (helo=[192.168.148.103]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qDllf-0001jx-AI; Mon, 26 Jun 2023 12:56:31 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=Z6bKlifNNL2nNncyyhgDWPhEo7/OHIGlFfdyNxEmG28=; b=qrLrddHrIw2medpgx8SsJcSVnG bltP2poxNXBIjTjIbyFAuS/7oi0c192g1m3dyJHhe/4aI23L9+RhK5U6+b+WMpRYI4yHngTqz0Lo0 1gPiYnB7k/2ogWRiLbjNqFg1pGtN3TMQnXMUJW43VBTahPGPFDS/AE2sv5aTBHlpUxp4=; Message-ID: Date: Mon, 26 Jun 2023 13:56:28 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH 8/9] xen/arm: Allow the user to build Xen with USBAN Content-Language: en-US To: Michal Orzel , xen-devel@lists.xenproject.org Cc: Luca.Fancellu@arm.com, Henry.Wang@arm.com, Julien Grall , Stefano Stabellini , Bertrand Marquis , Volodymyr Babchuk References: <20230625204907.57291-1-julien@xen.org> <20230625204907.57291-9-julien@xen.org> <804682ce-ad88-34dc-1501-c9ff6347fb8b@amd.com> From: Julien Grall In-Reply-To: <804682ce-ad88-34dc-1501-c9ff6347fb8b@amd.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi, On 26/06/2023 12:56, Michal Orzel wrote: > > > On 25/06/2023 22:49, Julien Grall wrote: >> >> >> From: Julien Grall >> >> UBSAN has been enabled a few years ago on x86 but was never >> enabled on Arm because the final binary is bigger than 2MB ( >> the maximum we can currently handled). >> >> With the recent rework, it is now possible to grow Xen over 2MB. >> So there is no more roadblock to enable Xen other than increasing >> the reserved area. >> >> On my setup, for arm32, the final binaray was very close to 4MB. >> Furthermore, one may want to enable USBAN and GCOV which would put >> the binary well-over 4MB (both features require for some space). >> Therefore, increase the size to 8MB which should us some margin. >> >> Signed-off-by: Julien Grall >> >> ---- >> >> The drawback with this approach is that we are adding 6 new >> page-table (3 for boot and 3 for runtime) that are statically >> allocated. So the final Xen binary will be 24KB bigger when >> neither UBSAN nor GCOV. >> >> If this is not considered acceptable, then we could make the >> size of configurable in the Kconfig and decide it based on the >> features enabled. > Both of these features are enabled only in a debug build of Xen, so > another option would be to increase Xen size only for a debug build. At least UBSAN can be selected without DEBUG. For that you need to add EXPERT. Anyway, from your comment, it is not clear to me whether you dislike the existing approach (and why) or you are OK with the increase. Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Mon Jun 26 13:05:32 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 13:05:32 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555493.867291 (Exim 4.92) (envelope-from ) id 1qDlu9-0004kl-IT; Mon, 26 Jun 2023 13:05:17 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555493.867291; Mon, 26 Jun 2023 13:05:17 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDlu9-0004ke-F2; Mon, 26 Jun 2023 13:05:17 +0000 Received: by outflank-mailman (input) for mailman id 555493; Mon, 26 Jun 2023 13:05:16 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDlu7-0004kY-SA for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 13:05:15 +0000 Received: from smtp-out1.suse.de (smtp-out1.suse.de [195.135.220.28]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 168ede52-1422-11ee-8611-37d641c3527e; Mon, 26 Jun 2023 15:05:13 +0200 (CEST) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by smtp-out1.suse.de (Postfix) with ESMTPS id 2A3B221864; Mon, 26 Jun 2023 13:05:13 +0000 (UTC) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id C27B513483; Mon, 26 Jun 2023 13:05:12 +0000 (UTC) Received: from dovecot-director2.suse.de ([192.168.254.65]) by imap2.suse-dmz.suse.de with ESMTPSA id mKnRLQiNmWT3WwAAMHmgww (envelope-from ); Mon, 26 Jun 2023 13:05:12 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 168ede52-1422-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1; t=1687784713; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=+g/GMqyOz9lm9pTM8+oSAfP3jml3Motfjlaje+sFNS8=; b=Fy8ZOWM5Ds+zQ9FLCw0RR4SEDSoe2XZ+bQSV3K+huO+mXgko+vlqmZaFpRaCO7KE/Nm6lZ zpQoZ1FjaqZ6vhu+MsmG/Jxhjvsnko1H1PWcWPkUMoFrxvmKoLSUqm2wIU0Z0MrWkeUeRX L+8uGc7Wv0IMxOLO0ZsVDd0+jefjQH0= Message-ID: Date: Mon, 26 Jun 2023 15:05:12 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Content-Language: en-US To: Demi Marie Obenour , Stefano Stabellini , Oleksandr Tyshchenko , Jan Beulich , Konrad Rzeszutek Wilk Cc: Xen developer discussion , Linux Kernel Mailing List , =?UTF-8?Q?Marek_Marczykowski-G=c3=b3recki?= , stable@vger.kernel.org References: <20230624205624.1817-1-demi@invisiblethingslab.com> From: Juergen Gross Subject: Re: [PATCH v3] xen: speed up grant-table reclaim In-Reply-To: <20230624205624.1817-1-demi@invisiblethingslab.com> Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="------------mHeC0WOb7yJmfde0byhVaLMj" This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --------------mHeC0WOb7yJmfde0byhVaLMj Content-Type: multipart/mixed; boundary="------------ebp0q1YcSwFAPG6JD0b6JUuK"; protected-headers="v1" From: Juergen Gross To: Demi Marie Obenour , Stefano Stabellini , Oleksandr Tyshchenko , Jan Beulich , Konrad Rzeszutek Wilk Cc: Xen developer discussion , Linux Kernel Mailing List , =?UTF-8?Q?Marek_Marczykowski-G=c3=b3recki?= , stable@vger.kernel.org Message-ID: Subject: Re: [PATCH v3] xen: speed up grant-table reclaim References: <20230624205624.1817-1-demi@invisiblethingslab.com> In-Reply-To: <20230624205624.1817-1-demi@invisiblethingslab.com> --------------ebp0q1YcSwFAPG6JD0b6JUuK Content-Type: multipart/mixed; boundary="------------mIrZ7XrDfqM0HIVUtnWjfwgm" --------------mIrZ7XrDfqM0HIVUtnWjfwgm Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: base64 T24gMjQuMDYuMjMgMjI6NTYsIERlbWkgTWFyaWUgT2Jlbm91ciB3cm90ZToNCj4gV2hlbiBh IGdyYW50IGVudHJ5IGlzIHN0aWxsIGluIHVzZSBieSB0aGUgcmVtb3RlIGRvbWFpbiwgTGlu dXggbXVzdCBwdXQNCj4gaXQgb24gYSBkZWZlcnJlZCBsaXN0LiAgTm9ybWFsbHksIHRoaXMg bGlzdCBpcyB2ZXJ5IHNob3J0LCBiZWNhdXNlDQo+IHRoZSBQViBuZXR3b3JrIGFuZCBibG9j ayBwcm90b2NvbHMgZXhwZWN0IHRoZSBiYWNrZW5kIHRvIHVubWFwIHRoZSBncmFudA0KPiBm aXJzdC4gIEhvd2V2ZXIsIFF1YmVzIE9TJ3MgR1VJIHByb3RvY29sIGlzIHN1YmplY3QgdG8g dGhlIGNvbnN0cmFpbnRzDQo+IG9mIHRoZSBYIFdpbmRvdyBTeXN0ZW0sIGFuZCBhcyBzdWNo IHdpbmRzIHVwIHdpdGggdGhlIGZyb250ZW5kIHVubWFwcGluZw0KPiB0aGUgd2luZG93IGZp cnN0LiAgQXMgYSByZXN1bHQsIHRoZSBsaXN0IGNhbiBncm93IHZlcnkgbGFyZ2UsIHJlc3Vs dGluZw0KPiBpbiBhIG1hc3NpdmUgbWVtb3J5IGxlYWsgYW5kIGV2ZW50dWFsIFZNIGZyZWV6 ZS4NCj4gDQo+IFRvIHBhcnRpYWxseSBzb2x2ZSB0aGlzIHByb2JsZW0sIG1ha2UgdGhlIG51 bWJlciBvZiBlbnRyaWVzIHRoYXQgdGhlIFZNDQo+IHdpbGwgYXR0ZW1wdCB0byBmcmVlIGF0 IGVhY2ggaXRlcmF0aW9uIHR1bmFibGUuICBUaGUgZGVmYXVsdCBpcyBzdGlsbA0KPiAxMCwg YnV0IGl0IGNhbiBiZSBvdmVycmlkZGVuIGF0IGNvbXBpbGUtdGltZSAodmlhIEtjb25maWcp LCBib290LXRpbWUNCj4gKHZpYSBhIGtlcm5lbCBjb21tYW5kLWxpbmUgb3B0aW9uKSwgb3Ig cnVudGltZSAodmlhIHN5c2ZzKS4NCg0KVXNpbmcgS2NvbmZpZyBoYXMgYmVlbiBkcm9wcGVk Lg0KDQo+IA0KPiBUaGlzIGlzIENjOiBzdGFibGUgYmVjYXVzZSAod2hlbiBjb21iaW5lZCB3 aXRoIGFwcHJvcHJpYXRlIHVzZXJzcGFjZQ0KPiBjaGFuZ2VzKSBpdCBmaXhlcyBhIHNldmVy ZSBwZXJmb3JtYW5jZSBhbmQgc3RhYmlsaXR5IHByb2JsZW0gZm9yIFF1YmVzDQo+IE9TIHVz ZXJzLg0KPiANCj4gQ2M6IHN0YWJsZUB2Z2VyLmtlcm5lbC5vcmcNCj4gU2lnbmVkLW9mZi1i eTogRGVtaSBNYXJpZSBPYmVub3VyIDxkZW1pQGludmlzaWJsZXRoaW5nc2xhYi5jb20+DQo+ IC0tLQ0KPiAgIGRyaXZlcnMveGVuL2dyYW50LXRhYmxlLmMgfCA0MCArKysrKysrKysrKysr KysrKysrKysrKysrKysrLS0tLS0tLS0tLS0NCj4gICAyIGZpbGVzIGNoYW5nZWQsIDQxIGlu c2VydGlvbnMoKyksIDExIGRlbGV0aW9ucygtKQ0KPiANCj4gZGlmZiAtLWdpdCBhL2RyaXZl cnMveGVuL2dyYW50LXRhYmxlLmMgYi9kcml2ZXJzL3hlbi9ncmFudC10YWJsZS5jDQo+IGlu ZGV4IGUxZWM3MjVjMjgxOWQ0ZDVkZWRlMDYzZWIwMGQ4NmE2ZDUyOTQ0YzAuLmZhNjY2YWE2 YWJjM2U3ODZkZGRjOTRmODk1NjQxNTA1ZWMwYjIzZDggMTAwNjQ0DQo+IC0tLSBhL2RyaXZl cnMveGVuL2dyYW50LXRhYmxlLmMNCj4gKysrIGIvZHJpdmVycy94ZW4vZ3JhbnQtdGFibGUu Yw0KPiBAQCAtNDk4LDE0ICs0OTgsMjAgQEAgc3RhdGljIExJU1RfSEVBRChkZWZlcnJlZF9s aXN0KTsNCj4gICBzdGF0aWMgdm9pZCBnbnR0YWJfaGFuZGxlX2RlZmVycmVkKHN0cnVjdCB0 aW1lcl9saXN0ICopOw0KPiAgIHN0YXRpYyBERUZJTkVfVElNRVIoZGVmZXJyZWRfdGltZXIs IGdudHRhYl9oYW5kbGVfZGVmZXJyZWQpOw0KPiAgIA0KPiArc3RhdGljIGF0b21pYzY0X3Qg ZGVmZXJyZWRfY291bnQ7DQo+ICtzdGF0aWMgYXRvbWljNjRfdCBsZWFrZWRfY291bnQ7DQo+ ICtzdGF0aWMgdW5zaWduZWQgaW50IGZyZWVfcGVyX2l0ZXJhdGlvbiA9IDEwOw0KPiArDQo+ ICAgc3RhdGljIHZvaWQgZ250dGFiX2hhbmRsZV9kZWZlcnJlZChzdHJ1Y3QgdGltZXJfbGlz dCAqdW51c2VkKQ0KPiAgIHsNCj4gLQl1bnNpZ25lZCBpbnQgbnIgPSAxMDsNCj4gKwl1bnNp Z25lZCBpbnQgbnIgPSBSRUFEX09OQ0UoZnJlZV9wZXJfaXRlcmF0aW9uKTsNCj4gKwljb25z dCBib29sIGlnbm9yZV9saW1pdCA9IG5yID09IDA7DQo+ICAgCXN0cnVjdCBkZWZlcnJlZF9l bnRyeSAqZmlyc3QgPSBOVUxMOw0KPiAgIAl1bnNpZ25lZCBsb25nIGZsYWdzOw0KPiArCXNp emVfdCBmcmVlZCA9IDA7DQo+ICAgDQo+ICAgCXNwaW5fbG9ja19pcnFzYXZlKCZnbnR0YWJf bGlzdF9sb2NrLCBmbGFncyk7DQo+IC0Jd2hpbGUgKG5yLS0pIHsNCj4gKwl3aGlsZSAoKGln bm9yZV9saW1pdCB8fCBuci0tKSAmJiAhbGlzdF9lbXB0eSgmZGVmZXJyZWRfbGlzdCkpIHsN Cj4gICAJCXN0cnVjdCBkZWZlcnJlZF9lbnRyeSAqZW50cnkNCj4gICAJCQk9IGxpc3RfZmly c3RfZW50cnkoJmRlZmVycmVkX2xpc3QsDQo+ICAgCQkJCQkgICBzdHJ1Y3QgZGVmZXJyZWRf ZW50cnksIGxpc3QpOw0KPiBAQCAtNTE1LDEwICs1MjEsMTMgQEAgc3RhdGljIHZvaWQgZ250 dGFiX2hhbmRsZV9kZWZlcnJlZChzdHJ1Y3QgdGltZXJfbGlzdCAqdW51c2VkKQ0KPiAgIAkJ bGlzdF9kZWwoJmVudHJ5LT5saXN0KTsNCj4gICAJCXNwaW5fdW5sb2NrX2lycXJlc3RvcmUo JmdudHRhYl9saXN0X2xvY2ssIGZsYWdzKTsNCj4gICAJCWlmIChfZ250dGFiX2VuZF9mb3Jl aWduX2FjY2Vzc19yZWYoZW50cnktPnJlZikpIHsNCj4gKwkJCXVpbnQ2NF90IHJldCA9IGF0 b21pYzY0X3N1Yl9yZXR1cm4oMSwgJmRlZmVycmVkX2NvdW50KTsNCg0KVXNlIGF0b21pYzY0 X2RlY19yZXR1cm4oKT8NCg0KUGxlYXNlIGFkZCBhbiBlbXB0eSBsaW5lIGhlcmUuDQoNCj4g ICAJCQlwdXRfZnJlZV9lbnRyeShlbnRyeS0+cmVmKTsNCj4gLQkJCXByX2RlYnVnKCJmcmVl aW5nIGcuZS4gJSN4IChwZm4gJSNseClcbiIsDQo+IC0JCQkJIGVudHJ5LT5yZWYsIHBhZ2Vf dG9fcGZuKGVudHJ5LT5wYWdlKSk7DQo+ICsJCQlwcl9kZWJ1ZygiZnJlZWluZyBnLmUuICUj eCAocGZuICUjbHgpLCAlbGx1IHJlbWFpbmluZ1xuIiwNCj4gKwkJCQkgZW50cnktPnJlZiwg cGFnZV90b19wZm4oZW50cnktPnBhZ2UpLA0KPiArCQkJCSAodW5zaWduZWQgbG9uZyBsb25n KXJldCk7DQo+ICAgCQkJcHV0X3BhZ2UoZW50cnktPnBhZ2UpOw0KPiArCQkJZnJlZWQrKzsN Cj4gICAJCQlrZnJlZShlbnRyeSk7DQo+ICAgCQkJZW50cnkgPSBOVUxMOw0KPiAgIAkJfSBl bHNlIHsNCj4gQEAgLTUzMCwyMSArNTM5LDIyIEBAIHN0YXRpYyB2b2lkIGdudHRhYl9oYW5k bGVfZGVmZXJyZWQoc3RydWN0IHRpbWVyX2xpc3QgKnVudXNlZCkNCj4gICAJCXNwaW5fbG9j a19pcnFzYXZlKCZnbnR0YWJfbGlzdF9sb2NrLCBmbGFncyk7DQo+ICAgCQlpZiAoZW50cnkp DQo+ICAgCQkJbGlzdF9hZGRfdGFpbCgmZW50cnktPmxpc3QsICZkZWZlcnJlZF9saXN0KTsN Cj4gLQkJZWxzZSBpZiAobGlzdF9lbXB0eSgmZGVmZXJyZWRfbGlzdCkpDQo+IC0JCQlicmVh azsNCj4gICAJfQ0KPiAtCWlmICghbGlzdF9lbXB0eSgmZGVmZXJyZWRfbGlzdCkgJiYgIXRp bWVyX3BlbmRpbmcoJmRlZmVycmVkX3RpbWVyKSkgew0KPiArCWlmIChsaXN0X2VtcHR5KCZk ZWZlcnJlZF9saXN0KSkNCj4gKwkJV0FSTl9PTihhdG9taWM2NF9yZWFkKCZkZWZlcnJlZF9j b3VudCkpOw0KPiArCWVsc2UgaWYgKCF0aW1lcl9wZW5kaW5nKCZkZWZlcnJlZF90aW1lcikp IHsNCj4gICAJCWRlZmVycmVkX3RpbWVyLmV4cGlyZXMgPSBqaWZmaWVzICsgSFo7DQo+ICAg CQlhZGRfdGltZXIoJmRlZmVycmVkX3RpbWVyKTsNCj4gICAJfQ0KPiAgIAlzcGluX3VubG9j a19pcnFyZXN0b3JlKCZnbnR0YWJfbGlzdF9sb2NrLCBmbGFncyk7DQo+ICsJcHJfZGVidWco IkZyZWVkICV6dSByZWZlcmVuY2VzIiwgZnJlZWQpOw0KPiAgIH0NCj4gICANCj4gICBzdGF0 aWMgdm9pZCBnbnR0YWJfYWRkX2RlZmVycmVkKGdyYW50X3JlZl90IHJlZiwgc3RydWN0IHBh Z2UgKnBhZ2UpDQo+ICAgew0KPiAgIAlzdHJ1Y3QgZGVmZXJyZWRfZW50cnkgKmVudHJ5Ow0K PiAgIAlnZnBfdCBnZnAgPSAoaW5fYXRvbWljKCkgfHwgaXJxc19kaXNhYmxlZCgpKSA/IEdG UF9BVE9NSUMgOiBHRlBfS0VSTkVMOw0KPiAtCWNvbnN0IGNoYXIgKndoYXQgPSBLRVJOX1dB Uk5JTkcgImxlYWtpbmciOw0KPiArCXVpbnQ2NF90IGxlYWtlZCwgZGVmZXJyZWQ7DQo+ICAg DQo+ICAgCWVudHJ5ID0ga21hbGxvYyhzaXplb2YoKmVudHJ5KSwgZ2ZwKTsNCj4gICAJaWYg KCFwYWdlKSB7DQo+IEBAIC01NjcsMTIgKzU3NywyMCBAQCBzdGF0aWMgdm9pZCBnbnR0YWJf YWRkX2RlZmVycmVkKGdyYW50X3JlZl90IHJlZiwgc3RydWN0IHBhZ2UgKnBhZ2UpDQo+ICAg CQkJYWRkX3RpbWVyKCZkZWZlcnJlZF90aW1lcik7DQo+ICAgCQl9DQo+ICAgCQlzcGluX3Vu bG9ja19pcnFyZXN0b3JlKCZnbnR0YWJfbGlzdF9sb2NrLCBmbGFncyk7DQo+IC0JCXdoYXQg PSBLRVJOX0RFQlVHICJkZWZlcnJpbmciOw0KPiArCQlkZWZlcnJlZCA9IGF0b21pYzY0X2Fk ZF9yZXR1cm4oMSwgJmRlZmVycmVkX2NvdW50KTsNCg0KVXNlIGF0b21pYzY0X2luY19yZXR1 cm4oKSAoc2FtZSBiZWxvdyk/DQoNCj4gKwkJbGVha2VkID0gYXRvbWljNjRfcmVhZCgmbGVh a2VkX2NvdW50KTsNCj4gKwkJcHJfZGVidWcoImRlZmVycmluZyBnLmUuICUjeCAocGZuICUj bHgpICh0b3RhbCBkZWZlcnJlZCAlbGx1LCB0b3RhbCBsZWFrZWQgJWxsdSlcbiIsDQo+ICsJ CQkgcmVmLCBwYWdlID8gcGFnZV90b19wZm4ocGFnZSkgOiAtMSwgZGVmZXJyZWQsIGxlYWtl ZCk7DQo+ICsJfSBlbHNlIHsNCj4gKwkJZGVmZXJyZWQgPSBhdG9taWM2NF9yZWFkKCZkZWZl cnJlZF9jb3VudCk7DQo+ICsJCWxlYWtlZCA9IGF0b21pYzY0X2FkZF9yZXR1cm4oMSwgJmxl YWtlZF9jb3VudCk7DQo+ICsJCXByX3dhcm4oImxlYWtpbmcgZy5lLiAlI3ggKHBmbiAlI2x4 KSAodG90YWwgZGVmZXJyZWQgJWxsdSwgdG90YWwgbGVha2VkICVsbHUpXG4iLA0KPiArCQkJ cmVmLCBwYWdlID8gcGFnZV90b19wZm4ocGFnZSkgOiAtMSwgZGVmZXJyZWQsIGxlYWtlZCk7 DQo+ICAgCX0NCj4gLQlwcmludGsoIiVzIGcuZS4gJSN4IChwZm4gJSNseClcbiIsDQo+IC0J ICAgICAgIHdoYXQsIHJlZiwgcGFnZSA/IHBhZ2VfdG9fcGZuKHBhZ2UpIDogLTEpOw0KPiAg IH0NCj4gICANCj4gK21vZHVsZV9wYXJhbShmcmVlX3Blcl9pdGVyYXRpb24sIHVpbnQsIDA2 MDApOw0KPiArDQoNCkFzIHNhaWQgZm9yIHYyIGFscmVhZHk6IHBsZWFzZSBtb3ZlIHRoaXMg Y2xvc2VyIHRvIHRoZSByZWxhdGVkIHZhcmlhYmxlDQpkZWZpbml0aW9uLg0KDQo+ICAgaW50 IGdudHRhYl90cnlfZW5kX2ZvcmVpZ25fYWNjZXNzKGdyYW50X3JlZl90IHJlZikNCj4gICB7 DQo+ICAgCWludCByZXQgPSBfZ250dGFiX2VuZF9mb3JlaWduX2FjY2Vzc19yZWYocmVmKTsN Cg0KDQpKdWVyZ2VuDQo= --------------mIrZ7XrDfqM0HIVUtnWjfwgm Content-Type: application/pgp-keys; name="OpenPGP_0xB0DE9DD628BF132F.asc" Content-Disposition: attachment; filename="OpenPGP_0xB0DE9DD628BF132F.asc" Content-Description: OpenPGP public key Content-Transfer-Encoding: quoted-printable -----BEGIN PGP PUBLIC KEY BLOCK----- xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjri oyspZKOBycWxw3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2 kaV2KL9650I1SJvedYm8Of8Zd621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i 1TXkH09XSSI8mEQ/ouNcMvIJNwQpd369y9bfIhWUiVXEK7MlRgUG6MvIj6Y3Am/B BLUVbDa4+gmzDC9ezlZkTZG2t14zWPvxXP3FAp2pkW0xqG7/377qptDmrk42GlSK N4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEBAAHNHEp1ZXJnZW4gR3Jvc3Mg PGpnQHBmdXBmLm5ldD7CwHkEEwECACMFAlOMcBYCGwMHCwkIBwMCAQYVCAIJCgsE FgIDAQIeAQIXgAAKCRCw3p3WKL8TL0KdB/93FcIZ3GCNwFU0u3EjNbNjmXBKDY4F UGNQH2lvWAUy+dnyThpwdtF/jQ6j9RwE8VP0+NXcYpGJDWlNb9/JmYqLiX2Q3Tye vpB0CA3dbBQp0OW0fgCetToGIQrg0MbD1C/sEOv8Mr4NAfbauXjZlvTj30H2jO0u +6WGM6nHwbh2l5O8ZiHkH32iaSTfN7Eu5RnNVUJbvoPHZ8SlM4KWm8rG+lIkGurq qu5gu8q8ZMKdsdGC4bBxdQKDKHEFExLJK/nRPFmAuGlId1E3fe10v5QL+qHI3EIP tyfE7i9Hz6rVwi7lWKgh7pe0ZvatAudZ+JNIlBKptb64FaiIOAWDCx1SzR9KdWVy Z2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+wsB5BBMBAgAjBQJTjHCvAhsDBwsJ CAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey/HmQf/RtI7kv5A2PS4 RF7HoZhPVPogNVbC4YA6lW7DrWf0teC0RR3MzXfy6pJ+7KLgkqMlrAbN/8Dvjoz7 8X+5vhH/rDLa9BuZQlhFmvcGtCF8eR0T1v0nC/nuAFVGy+67q2DH8As3KPu0344T BDpAvr2uYM4tSqxK4DURx5INz4ZZ0WNFHcqsfvlGJALDeE0LhITTd9jLzdDad1pQ SToCnLl6SBJZjDOX9QQcyUigZFtCXFst4dlsvddrxyqT1f17+2cFSdu7+ynLmXBK 7abQ3rwJY8SbRO2iRulogc5vr/RLMMlscDAiDkaFQWLoqHHOdfO9rURssHNN8WkM nQfvUewRz80hSnVlcmdlbiBHcm9zcyA8amdyb3NzQG5vdmVsbC5jb20+wsB5BBMB AgAjBQJTjHDXAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/ Ey8PUQf/ehmgCI9jB9hlgexLvgOtf7PJnFOXgMLdBQgBlVPO3/D9R8LtF9DBAFPN hlrsfIG/SqICoRCqUcJ96Pn3P7UUinFG/I0ECGF4EvTE1jnDkfJZr6jrbjgyoZHi w/4BNwSTL9rWASyLgqlA8u1mf+c2yUwcGhgkRAd1gOwungxcwzwqgljf0N51N5Jf VRHRtyfwq/ge+YEkDGcTU6Y0sPOuj4Dyfm8fJzdfHNQsWq3PnczLVELStJNdapwP OoE+lotufe3AM2vAEYJ9rTz3Cki4JFUsgLkHFqGZarrPGi1eyQcXeluldO3m91NK /1xMI3/+8jbO0tsn1tqSEUGIJi7ox80eSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1 c2UuZGU+wsB5BBMBAgAjBQJTjHDrAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgEC F4AACgkQsN6d1ii/Ey+LhQf9GL45eU5vOowA2u5N3g3OZUEBmDHVVbqMtzwlmNC4 k9Kx39r5s2vcFl4tXqW7g9/ViXYuiDXb0RfUpZiIUW89siKrkzmQ5dM7wRqzgJpJ wK8Bn2MIxAKArekWpiCKvBOB/Cc+3EXE78XdlxLyOi/NrmSGRIov0karw2RzMNOu 5D+jLRZQd1Sv27AR+IP3I8U4aqnhLpwhK7MEy9oCILlgZ1QZe49kpcumcZKORmzB TNh30FVKK1EvmV2xAKDoaEOgQB4iFQLhJCdP1I5aSgM5IVFdn7v5YgEYuJYx37Io N1EblHI//x/e2AaIHpzK5h88NEawQsaNRpNSrcfbFmAg987ATQRTjHAWAQgAyzH6 AOODMBjgfWE9VeCgsrwH3exNAU32gLq2xvjpWnHIs98ndPUDpnoxWQugJ6MpMncr 0xSwFmHEgnSEjK/PAjppgmyc57BwKII3sV4on+gDVFJR6Y8ZRwgnBC5mVM6JjQ5x Dk8WRXljExRfUX9pNhdE5eBOZJrDRoLUmmjDtKzWaDhIg/+1Hzz93X4fCQkNVbVF LELU9bMaLPBG/x5q4iYZ2k2ex6d47YE1ZFdMm6YBYMOljGkZKwYde5ldM9mo45mm we0icXKLkpEdIXKTZeKDO+Hdv1aqFuAcccTg9RXDQjmwhC3yEmrmcfl0+rPghO0I v3OOImwTEe4co3c1mwARAQABwsBfBBgBAgAJBQJTjHAWAhsMAAoJELDendYovxMv Q/gH/1ha96vm4P/L+bQpJwrZ/dneZcmEwTbe8YFsw2V/Buv6Z4Mysln3nQK5ZadD 534CF7TDVft7fC4tU4PONxF5D+/tvgkPfDAfF77zy2AH1vJzQ1fOU8lYFpZXTXIH b+559UqvIB8AdgR3SAJGHHt4RKA0F7f5ipYBBrC6cyXJyyoprT10EMvU8VGiwXvT yJz3fjoYsdFzpWPlJEBRMedCot60g5dmbdrZ5DWClAr0yau47zpWj3enf1tLWaqc suylWsviuGjKGw7KHQd3bxALOknAp4dN3QwBYCKuZ7AddY9yjynVaD5X7nF9nO5B jR/i1DG86lem3iBDXzXsZDn8R38=3D =3D2wuH -----END PGP PUBLIC KEY BLOCK----- --------------mIrZ7XrDfqM0HIVUtnWjfwgm-- --------------ebp0q1YcSwFAPG6JD0b6JUuK-- --------------mHeC0WOb7yJmfde0byhVaLMj Content-Type: application/pgp-signature; name="OpenPGP_signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="OpenPGP_signature" -----BEGIN PGP SIGNATURE----- wsB5BAABCAAjFiEEhRJncuj2BJSl0Jf3sN6d1ii/Ey8FAmSZjQgFAwAAAAAACgkQsN6d1ii/Ey9n rwgAl9aj+/RACmJfgKRH3lah4xrX0a2jqW1I4fOkGIUknEQkHfyVIyjip3+AJCcIw9XRVbx8aDqt U22ktQekf6n0tVwAy2SKbxgzSqyvoYWrcBjpkeb3GtsMRDGtU5GJKgImFcCKDEB+PFPMdGiUisMv nQx8CC7fHcb6JvI6Slw5cwZAjMPvSOQ1iD0zKRKCcvHp/r6SuQbhIhWIK5myLKljSpkJGBYkGd5U eubdCk9pX733hzXRKkIyTqHkbKzvvVgjoYyfAN2pvLZrrr4LiyJ9nAeNOrm6VgxDxZDjzRrNXvej /Dkr1wzQQC31oOChMHt+r7lQRH95Hy6+EoZFtvDHlg== =hjdC -----END PGP SIGNATURE----- --------------mHeC0WOb7yJmfde0byhVaLMj-- From xen-devel-bounces@lists.xenproject.org Mon Jun 26 13:10:43 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 13:10:43 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555498.867301 (Exim 4.92) (envelope-from ) id 1qDlzJ-0006Cg-6l; Mon, 26 Jun 2023 13:10:37 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555498.867301; Mon, 26 Jun 2023 13:10:37 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDlzJ-0006CZ-2p; Mon, 26 Jun 2023 13:10:37 +0000 Received: by outflank-mailman (input) for mailman id 555498; Mon, 26 Jun 2023 13:10:35 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDlzH-0006CT-QW for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 13:10:35 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDlzG-0001d4-QZ; Mon, 26 Jun 2023 13:10:34 +0000 Received: from [193.85.242.128] (helo=[192.168.148.103]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qDlzG-0002QC-Kc; Mon, 26 Jun 2023 13:10:34 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=G4eWSyMvDC+09Qyd6/bjrGtcvaBOXYbn/TNk/q6T63I=; b=mK0yt+vjmnvM2YPtHbfS+hRojN uMvxflsAFY1d+xOa37hkvRnyI00TLfBfRZTowbSq/ZkxCHh4UofaV6GsF481ETWp8EaNx+F6KpTkC o0omTPk8+CbYx0bMaDiCs5KS+HQ9P6O9/vSWkoHFvxCirmTP4V9+cq5FJq+jjjNDpw4Q=; Message-ID: Date: Mon, 26 Jun 2023 14:10:32 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH 10/11] tools/xenstore: drop use of tdb Content-Language: en-US To: Juergen Gross , xen-devel@lists.xenproject.org Cc: Wei Liu , Anthony PERARD References: <20230530091333.7678-1-jgross@suse.com> <20230530091333.7678-11-jgross@suse.com> <2bfc737a-53c5-ef13-835e-97933a57f414@suse.com> From: Julien Grall In-Reply-To: <2bfc737a-53c5-ef13-835e-97933a57f414@suse.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Hi Juergen, On 26/06/2023 12:06, Juergen Gross wrote: > On 19.06.23 20:22, Julien Grall wrote: >> Hi Juergen, >> >> I haven't looked at the code in details yet. But I have a few >> questions regarding the commit message/ >> >> On 30/05/2023 10:13, Juergen Gross wrote: >>> Today all Xenstore nodes are stored in a TDB data base. This data base >>> has several disadvantages: >>> >>> - it is using a fixed sized hash table, resulting in high memory >>>    overhead for small installations with only very few VMs, and a rather >>>    large performance hit for systems with lots of VMs due to many >>>    collisions >> >> Can you provide some concrete numbers and a setup in mind? This would >> help if someone in the future says that they see the inverse and we >> need to rework the logic. > > The hash table size today is 7919 entries. This means that e.g. in case > of a simple desktop use case with 2 or 3 VMs probably far less than 10% > of the entries will be used (assuming roughly 100 nodes per VM). OTOH a > setup on a large server with 500 VMs would result in heavy conflicts in > the hash list with 5-10 nodes per hash table entry. Thanks! Can this be written down in the commit message? >>> So drop using TDB and store the nodes directly in memory making them >>> easily accessible. Use a hash-based lookup mechanism for fast lookup >>> of nodes by their full path. >>> >>> For now only replace TDB keeping the current access functions. >> >> Do you plan to have the rest of the work upstreamed for 4.18? Also, if >> for some reasons, only this work will be merged. Will this have an >> impact on Xenstored memory usage/performance? > > Memory usage should go down, especially after deleting lots of entries > (AFAIK TDB will never free the unused memory again, it will just keep it > for the future). > > Memory fragmentation might go up, though. > > Performance might be better, too, as there is no need to realloc() the > memory when adding nodes. What you write seems to be quite hypothetical so far. Given there this is not gated by an #ifdef, I think it would be good to have a good idea of the impact to have only the partial rework. Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Mon Jun 26 13:17:27 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 13:17:27 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555503.867310 (Exim 4.92) (envelope-from ) id 1qDm5j-0006pP-R8; Mon, 26 Jun 2023 13:17:15 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555503.867310; Mon, 26 Jun 2023 13:17:15 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDm5j-0006pI-OH; Mon, 26 Jun 2023 13:17:15 +0000 Received: by outflank-mailman (input) for mailman id 555503; Mon, 26 Jun 2023 13:17:15 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDm5i-0006pC-P7 for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 13:17:14 +0000 Received: from EUR05-VI1-obe.outbound.protection.outlook.com (mail-vi1eur05on20616.outbound.protection.outlook.com [2a01:111:f400:7d00::616]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id c2e346eb-1423-11ee-8611-37d641c3527e; Mon, 26 Jun 2023 15:17:12 +0200 (CEST) Received: from AM0PR0402MB3395.eurprd04.prod.outlook.com (2603:10a6:208:1a::16) by AM9PR04MB8555.eurprd04.prod.outlook.com (2603:10a6:20b:436::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.26; Mon, 26 Jun 2023 13:17:10 +0000 Received: from AM0PR0402MB3395.eurprd04.prod.outlook.com ([fe80::551e:9fcf:5b65:ca5b]) by AM0PR0402MB3395.eurprd04.prod.outlook.com ([fe80::551e:9fcf:5b65:ca5b%2]) with mapi id 15.20.6521.026; Mon, 26 Jun 2023 13:17:09 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: c2e346eb-1423-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=PrftI9YAseXHsl4ZzUA6Z0AOhQXTg8BoEVkty0KAgIxiSyKTywVwGq/L1eccJusWnleddboaEZAYaBosEMnf4BEeo8JCuc8erzkgBDLPGJSuDVRYym90IaTz4s4QE2qssH9q8nC+UABz5xAzSXL+fyD4BOpF6briLFsWl/rSG9UCm1uDneEcYjmfM/skw17xLQt902mVTQyHbYxleKryMetj43Ml2cB+pXLSHH3/Xq4UYEa+GkMthDDAHZyKxSZZscFeaMT27jymncANmwqqAuqP5EO+rVEyA48xSd4WvYrlW+XTmDCKeCWHhZmzvQtsMXLuvktiEMgYlVV/xkjepA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=1YYsqb8fAGwighP0b6BGte+MLWO683Qx6jkr8ncM5BA=; b=IXJBNCpvUfxPETEKcVpJaNcmJSmh79Cy/aIS/CQM6b2jsQurFuZ9DKrtog5VsAZT23RJRAGiBblsL6fdZsQg/j3icoUClDu3SyPmxjEy4EHwNN/JBs+zKoFngpZ+ZYpq3x1djOhdxXl+rRqdD91xmvfPMFxIc7anE+gBzb12Dc1cUOYf7Cc5UaLnSqtDkitEOkhbt2FctHX97P32SvtugjNSV8sSyOMm20GCv28Tk6DCTdOUDxgnV1rNyRJtPGBCZ+xrZR9xmvHVrv6ghzLnK6vVdqqGxybDjfPiJt8gPXMWNlZXuScF/tIWHiiPDQ0gauC7dV4qQ9kcisvTIJBNbQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=1YYsqb8fAGwighP0b6BGte+MLWO683Qx6jkr8ncM5BA=; b=y0JIJXq+4pzOGKTOu56AhDvwACmnz2W6kMJ3GUf3dmyCA+q58Mq8Q26dhCrmMvQMYVC1NTwARKkoAImiXHJWQx+599sRvYCOnMD3BHoAHHRAvQVIyuLNOPnEqY5AywEmAPP95loBRIn3OQEpFPpYCrPesjnb4VHqdKdIl96TeAiY4OgCGYVfObKSdYGL+GpL/41EmzPI1Kh98593ek3UTpd4Th/4PTFnk2m/vPZK7cYA3VENRhEEVSlLgt0qtte7gXiAbdfdcnkmnYkVJiL979X0KFErF2bi5Z7KWakTXKgqLAKT8NkFHlPlTqTao4EcoBv2NgC1nD83I2ON/afPEA== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <551a1594-9c8b-d447-6bf3-a4a208d5550f@suse.com> Date: Mon, 26 Jun 2023 15:17:08 +0200 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.6.1 Subject: Re: [PATCH 2/2] xen/virtio: Avoid use of the dom0 backend in dom0 Content-Language: en-US To: Oleksandr Tyshchenko Cc: "xen-devel@lists.xenproject.org" , "linux-kernel@vger.kernel.org" , "jgross@suse.com" , "sstabellini@kernel.org" References: <20230621131214.9398-1-petr.pavlu@suse.com> <20230621131214.9398-3-petr.pavlu@suse.com> <15e31609-6c45-7372-76ee-0adf7a64fe88@epam.com> From: Petr Pavlu In-Reply-To: <15e31609-6c45-7372-76ee-0adf7a64fe88@epam.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR2P281CA0121.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:9d::12) To AM0PR0402MB3395.eurprd04.prod.outlook.com (2603:10a6:208:1a::16) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: AM0PR0402MB3395:EE_|AM9PR04MB8555:EE_ X-MS-Office365-Filtering-Correlation-Id: 1968c6f5-7125-4b43-090d-08db7647a57c X-LD-Processed: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: oAY+yaBua0SAjbp0ARjtBlOO3Zo9SlO1oAvREc7ZQ18lZsln8zlOQyzKC1J61WjzQ20mq/lCucewmOF6QH8Uq6bU2Bx2EAzQC1oyYKksjCCNfgzzYzlEiXTNcKsxa+rDyXLAaqy2tNh780LiXSd0r9kdAIxUpLTVke3s/s2iN51dKYLBSlg/Qp/qokopLHG4OpGbfGQmwt2l+oCpGyT7Qb/DcLlQH3sb2oBFNyJHJJyIROUUghVTSbr5VltNMu7y/s6Kt/76nk882O52QV3krnM8OQvSumfZAmCoCFxzmUQPlokwefExAaBz8+4e8JyBjOSLmGHsZwJfqKWA71qP0BZcIipXxb9APpYRji6JxW5nYNHMs8FXyvHGLDewQrTItKj2NpgmKbypw8JVchp9zHi/vEfgxaerowXSjfiVzTxy9G2lZwI8/G6zsx45FmBkhSvhj0+S5RAWAXLaKyxp4FEEefiehGgBY/IcRXCJYS+PPEasvGz4hjhkCjBRaquThzWdCmQKs2JmVUsyPGQ7+9vg3oJTuCsU20FIOVVPLB6A19DGkHdVIPxxz+U4h86yVrFEk8n3ciT859Ol/4ib7AfGN5bGH6w4IkmFsfKSbGIfVNdJH9S2u1HOJ1RxxFjY7ov5zwZqxdmiHoUhIxfIpA== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM0PR0402MB3395.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(39860400002)(376002)(136003)(396003)(366004)(346002)(451199021)(31686004)(2906002)(66946007)(478600001)(6916009)(66556008)(66476007)(6486002)(4326008)(316002)(31696002)(54906003)(86362001)(186003)(83380400001)(6512007)(36756003)(6506007)(2616005)(26005)(38100700002)(8936002)(53546011)(55236004)(41300700001)(8676002)(5660300002)(44832011)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?bU1YMXRBYkIyajBhRmVWWWtDT1MrS2N5cmM3MCs3TUd1dHNwaWpET3lBeFJW?= =?utf-8?B?YXNsRWFZaGpaaWlqYTFxdlQrb29SWDk1UGQ2aFp3cTVoeVJqV05kZFRNaGxa?= =?utf-8?B?VExWYlVZT21HZVhZTCtLa0F2Sm9HbURUS1Q0Z0FnUTJycFFpdVVHY2hKK3Ny?= =?utf-8?B?cDFEWlFTMFlRejgvVVlCRHdxMUF3d0xNL0ZxaUlvbk9sd1AvSzZhZlRBZDdj?= =?utf-8?B?NVMvdWRPS0hISW9HdHc3dzFWZVJQYTVQZ1RZRTFUWWg0YXR3TlgyRDlUK2Qy?= =?utf-8?B?b0xyTEd2cUFvRHJnYjJRYjIvamdNZDd6NnVPTUtxODhlNzVKTGRpSDl4dE1L?= =?utf-8?B?SnVhNE5sY1Q5anZCS0JhU1JaSElGeU9yZ1Q5QmNBNndETzl2QVFGeXB5MEJ0?= =?utf-8?B?N0cwcnNCaFAzU29OOFpEZkl6cHI4dk45MDI1NlNINmRNY3RqbEYxb0IyOEo5?= =?utf-8?B?ZVlDbjZEN3E0T05KQXZTUlUwRDRrOHlqUk9nQVJrTlNrSnpzb25uMlVZbnE0?= =?utf-8?B?SHprY1ZUUzVrN0ZqN0Q5TEp4blJjejB5UUNPQm9DelFQdzl6cnF2WXpzUGhZ?= =?utf-8?B?OFNUYmNOekVkZUh6NlBuSUEyVUU5N3EzQ29aMmxYVXhKT3hTUXNKQ0h5Mkho?= =?utf-8?B?T3FhMGtPTllQbXFscWE0TDhDUWtWbk5kUFgzOW5CZlk0NWloN3FldFRWS1BL?= =?utf-8?B?N2Jucks1TVdGTlgzQ09UZGlpbnhlYVdGNnNyTjZSTGdnZG9PSlcvbWVQWkZ3?= =?utf-8?B?bVl5bC9SNTdFOTJHNlUvMXBZQVNUQXZqS0Jja09Zc2wvWjVrODBCQjZNcnRR?= =?utf-8?B?RVU0ZXVjRDdRQXVoTzJCbGF0bldMYyt6OC9kajhPaDVNWGkrNjNlV29YbnlR?= =?utf-8?B?THlFTlE3STNjMDd6K2EwS2VNV0tFakVOWmtYL09TT2xpMTRzR3R2d1ZKbmdE?= =?utf-8?B?MjBOZEFuWXNPSjlpN0ppMjlwVDR1ZXVTNnEyK3d1Y1MvdTdPaUU0VGhDdXcr?= =?utf-8?B?MWRYMzF3M0dBODZNOXJaeUxHemJkZXBYNE9ES2tUais4aTk2a3NJUlRNNEc4?= =?utf-8?B?d0ZTSUtHWndQWnZkUncvUlpUQ3VRVmREdGV1MGphQjdIMDFPbzFDZm1IOVNo?= =?utf-8?B?NVZDQ3lkMjZnTVNYbDRjWVJFQlFEaEhKZFR1SEE4c0RoOGtSdStIenhUYXZt?= =?utf-8?B?M2p3TkttMWc2V0dQK2NnUXZWQUIwTGsrMGtGWm9qNlRJTi9IbXdrZjE5M01n?= =?utf-8?B?WldvQkZqZHRVWjdWbkVwNFNWSXowd2l1MlcwallXVGlnTHlnMnRudnVuTTZZ?= =?utf-8?B?RGREbGlKRUJWQXdaUHNOL1RPS0UvUnFoT2JTSkRnWndwLzI4YXhsZ0QvSUkv?= =?utf-8?B?cm5ac2pCQnVsU25DQ2kzS1ZYOU9BZXVtL3RTMWJoWDBtais2dW45L09kYWR5?= =?utf-8?B?VFVMN2tUMUEvUFNPOHplY3VnNU5wcTlKbUhQWFRSOWI3ZU51WFZKRkE5VTBp?= =?utf-8?B?S0t6Q1Bqc20vai9LREVGdXlscDNJR21SNXBuMGh3dyswU1dKYTNPT1pBMFpN?= =?utf-8?B?WWt4d0RXc3VmdUxJVm9RU2NMMjEvVkVmQkQ0ZEdVdmpMemo2U1lSYkdTR283?= =?utf-8?B?TE52UWhmV0NpMkhHenk2MkNOeDdBU0R3SWx6NFFRa1J1dllIdjV2a3g4N2lv?= =?utf-8?B?K0JtT2syTHl2MWJYM3JLREl5U0l3WVl5RFlaKzlwTGx6Y0YzVGtDVmwyZXZV?= =?utf-8?B?VlZtR2sweGZNbm92VGFkSEQ4UENCZjFCQ2JjVjBLenFmTldxRkxYa21hUm5Z?= =?utf-8?B?cm92L095M3lmY2ZnMktuZHl0M0VFQnlGSlh2RHAvQXBTUU11WmtEVFBOb1FN?= =?utf-8?B?aVNmWHBxL2hzTDM5NjRLTmN3YmJsVE1lWGcxZmxpU2Z1T04rTDE5SGhQZHha?= =?utf-8?B?MFJXNjByTUh4QTlBMHVsQ1orSUQzemJRenNGc3NTcHJDcWhiNmdDc05uRDJE?= =?utf-8?B?VDI1NGpLM3d4WG1LZmwzTVRtWTRGaXA4Z1RacytJTVNjYmM5em1QdTRtRXd5?= =?utf-8?B?Qi9jaitjU21BT0xuYS9EeU93OUhKRnpZOWJrVmlyYzVLWm1ObUxFM05PVWFa?= =?utf-8?Q?Qr8pLopspSK2YiJ9Dhj1d4F1g?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 1968c6f5-7125-4b43-090d-08db7647a57c X-MS-Exchange-CrossTenant-AuthSource: AM0PR0402MB3395.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Jun 2023 13:17:09.7523 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: XpI9INJF8jhfrkQz5HsSNLXr9MId8BPE4tA2FI0c/jSkUZblz8j9SRCsxA7mN4jTeImagp5KSse1jxSvYAZFww== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR04MB8555 On 6/21/23 19:58, Oleksandr Tyshchenko wrote: > On 21.06.23 16:12, Petr Pavlu wrote: >> When attempting to run Xen on a QEMU/KVM virtual machine with virtio >> devices (all x86_64), dom0 tries to establish a grant for itself which >> eventually results in a hang during the boot. >> >> The backtrace looks as follows, the while loop in __send_control_msg() >> makes no progress: >> >> #0 virtqueue_get_buf_ctx (_vq=_vq@entry=0xffff8880074a8400, len=len@entry=0xffffc90000413c94, ctx=ctx@entry=0x0 ) at ../drivers/virtio/virtio_ring.c:2326 >> #1 0xffffffff817086b7 in virtqueue_get_buf (_vq=_vq@entry=0xffff8880074a8400, len=len@entry=0xffffc90000413c94) at ../drivers/virtio/virtio_ring.c:2333 >> #2 0xffffffff8175f6b2 in __send_control_msg (portdev=, port_id=0xffffffff, event=0x0, value=0x1) at ../drivers/char/virtio_console.c:562 >> #3 0xffffffff8175f6ee in __send_control_msg (portdev=, port_id=, event=, value=) at ../drivers/char/virtio_console.c:569 >> #4 0xffffffff817618b1 in virtcons_probe (vdev=0xffff88800585e800) at ../drivers/char/virtio_console.c:2098 >> #5 0xffffffff81707117 in virtio_dev_probe (_d=0xffff88800585e810) at ../drivers/virtio/virtio.c:305 >> #6 0xffffffff8198e348 in call_driver_probe (drv=0xffffffff82be40c0 , drv=0xffffffff82be40c0 , dev=0xffff88800585e810) at ../drivers/base/dd.c:579 >> #7 really_probe (dev=dev@entry=0xffff88800585e810, drv=drv@entry=0xffffffff82be40c0 ) at ../drivers/base/dd.c:658 >> #8 0xffffffff8198e58f in __driver_probe_device (drv=drv@entry=0xffffffff82be40c0 , dev=dev@entry=0xffff88800585e810) at ../drivers/base/dd.c:800 >> #9 0xffffffff8198e65a in driver_probe_device (drv=drv@entry=0xffffffff82be40c0 , dev=dev@entry=0xffff88800585e810) at ../drivers/base/dd.c:830 >> #10 0xffffffff8198e832 in __driver_attach (dev=0xffff88800585e810, data=0xffffffff82be40c0 ) at ../drivers/base/dd.c:1216 >> #11 0xffffffff8198bfb2 in bus_for_each_dev (bus=, start=start@entry=0x0 , data=data@entry=0xffffffff82be40c0 , >> fn=fn@entry=0xffffffff8198e7b0 <__driver_attach>) at ../drivers/base/bus.c:368 >> #12 0xffffffff8198db65 in driver_attach (drv=drv@entry=0xffffffff82be40c0 ) at ../drivers/base/dd.c:1233 >> #13 0xffffffff8198d207 in bus_add_driver (drv=drv@entry=0xffffffff82be40c0 ) at ../drivers/base/bus.c:673 >> #14 0xffffffff8198f550 in driver_register (drv=drv@entry=0xffffffff82be40c0 ) at ../drivers/base/driver.c:246 >> #15 0xffffffff81706b47 in register_virtio_driver (driver=driver@entry=0xffffffff82be40c0 ) at ../drivers/virtio/virtio.c:357 >> #16 0xffffffff832cd34b in virtio_console_init () at ../drivers/char/virtio_console.c:2258 >> #17 0xffffffff8100105c in do_one_initcall (fn=0xffffffff832cd2e0 ) at ../init/main.c:1246 >> #18 0xffffffff83277293 in do_initcall_level (command_line=0xffff888003e2f900 "root", level=0x6) at ../init/main.c:1319 >> #19 do_initcalls () at ../init/main.c:1335 >> #20 do_basic_setup () at ../init/main.c:1354 >> #21 kernel_init_freeable () at ../init/main.c:1571 >> #22 0xffffffff81f64be1 in kernel_init (unused=) at ../init/main.c:1462 >> #23 0xffffffff81001f49 in ret_from_fork () at ../arch/x86/entry/entry_64.S:308 >> #24 0x0000000000000000 in ?? () >> >> Fix the problem by preventing xen_grant_init_backend_domid() from >> setting dom0 as a backend when running in dom0. >> >> Fixes: 035e3a4321f7 ("xen/virtio: Optimize the setup of "xen-grant-dma" devices") > > > I am not 100% sure whether the Fixes tag points to precise commit. If I > am not mistaken, the said commit just moves the code in the context > without changing the logic of CONFIG_XEN_VIRTIO_FORCE_GRANT, this was > introduced before. I see, the tag should better point to 7228113d1fa0 ("xen/virtio: use dom0 as default backend for CONFIG_XEN_VIRTIO_FORCE_GRANT") which introduced the original logic to use dom0 as backend. Commit 035e3a4321f7 ("xen/virtio: Optimize the setup of "xen-grant-dma" devices") is relevant in sense that it extended when this logic is active by adding an OR check for xen_pv_domain(). > > >> Signed-off-by: Petr Pavlu >> --- >> drivers/xen/grant-dma-ops.c | 4 +++- >> 1 file changed, 3 insertions(+), 1 deletion(-) >> >> diff --git a/drivers/xen/grant-dma-ops.c b/drivers/xen/grant-dma-ops.c >> index 76f6f26265a3..29ed27ac450e 100644 >> --- a/drivers/xen/grant-dma-ops.c >> +++ b/drivers/xen/grant-dma-ops.c >> @@ -362,7 +362,9 @@ static int xen_grant_init_backend_domid(struct device *dev, >> if (np) { >> ret = xen_dt_grant_init_backend_domid(dev, np, backend_domid); >> of_node_put(np); >> - } else if (IS_ENABLED(CONFIG_XEN_VIRTIO_FORCE_GRANT) || xen_pv_domain()) { >> + } else if ((IS_ENABLED(CONFIG_XEN_VIRTIO_FORCE_GRANT) || >> + xen_pv_domain()) && >> + !xen_initial_domain()) { > > The commit lgtm, just one note: > > > I would even bail out early in xen_virtio_restricted_mem_acc() instead, > as I assume the same issue could happen on Arm with DT (although there > we don't guess the backend's domid, we read it from DT and quite > unlikely we get Dom0 being in Dom0 with correct DT). > > Something like: > > @@ -416,6 +421,10 @@ bool xen_virtio_restricted_mem_acc(struct > virtio_device *dev) > { > domid_t backend_domid; > > + /* Xen grant DMA ops are not used when running as initial domain */ > + if (xen_initial_domain()) > + return false; > + > if (!xen_grant_init_backend_domid(dev->dev.parent, > &backend_domid)) { > xen_grant_setup_dma_ops(dev->dev.parent, backend_domid); > return true; > (END) > > > > If so, that commit subject would need to be updated accordingly. > > Let's see what other reviewers will say. Ok, makes sense. Thanks, Petr From xen-devel-bounces@lists.xenproject.org Mon Jun 26 13:22:06 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 13:22:06 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555509.867321 (Exim 4.92) (envelope-from ) id 1qDmAJ-0008KT-Fx; Mon, 26 Jun 2023 13:21:59 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555509.867321; Mon, 26 Jun 2023 13:21:59 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDmAJ-0008KM-Cp; Mon, 26 Jun 2023 13:21:59 +0000 Received: by outflank-mailman (input) for mailman id 555509; Mon, 26 Jun 2023 13:21:58 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDmAI-0008KC-Ql; Mon, 26 Jun 2023 13:21:58 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDmAI-0001nx-D8; Mon, 26 Jun 2023 13:21:58 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDmAH-0001x3-S4; Mon, 26 Jun 2023 13:21:57 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qDmAH-0006WV-Rb; Mon, 26 Jun 2023 13:21:57 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=pi/M8bV3+ozJ7fgwLZ5YzCzJRXUzwz8f7wry4JpuQd8=; b=BhBS2OHB3bE2ikmff+hasaFGKS Oy599k+N7AgLBYPG//VcRKPkBrtukoq37yD55hJUqbAVUnBXBKItG7+JprhgegAnpzZN4wVSpgsQ5 9+tBM+A+N3G+AZhcb1QpH5871+YhrmgO8L2evaBTUx4Z1XTJ7q8/0DFI33saFrrQsfeE=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [linux-linus test] 181598: regressions - FAIL X-Osstest-Failures: linux-linus:test-armhf-armhf-xl-credit1:xen-boot:fail:regression linux-linus:test-armhf-armhf-xl-arndale:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-raw:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-credit2:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-rtds:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking linux-linus:test-armhf-armhf-libvirt:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-examine:reboot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-qcow2:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-vhd:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-multivcpu:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-qcow2:migrate-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-raw:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: linux=6995e2de6891c724bfeb2db33d7b87775f913ad1 X-Osstest-Versions-That: linux=6c538e1adbfc696ac4747fb10d63e704344f763d From: osstest service owner Date: Mon, 26 Jun 2023 13:21:57 +0000 flight 181598 linux-linus real [real] flight 181603 linux-linus real-retest [real] http://logs.test-lab.xenproject.org/osstest/logs/181598/ http://logs.test-lab.xenproject.org/osstest/logs/181603/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: test-armhf-armhf-xl-credit1 8 xen-boot fail REGR. vs. 180278 Tests which did not succeed, but are not blocking: test-armhf-armhf-xl-arndale 8 xen-boot fail like 180278 test-armhf-armhf-xl 8 xen-boot fail like 180278 test-armhf-armhf-libvirt-raw 8 xen-boot fail like 180278 test-armhf-armhf-xl-credit2 8 xen-boot fail like 180278 test-armhf-armhf-xl-rtds 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 180278 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 180278 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 180278 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 180278 test-armhf-armhf-libvirt 8 xen-boot fail like 180278 test-armhf-armhf-examine 8 reboot fail like 180278 test-armhf-armhf-libvirt-qcow2 8 xen-boot fail like 180278 test-armhf-armhf-xl-vhd 8 xen-boot fail like 180278 test-armhf-armhf-xl-multivcpu 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 180278 test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-amd64-libvirt-qcow2 14 migrate-support-check fail never pass test-amd64-amd64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass version targeted for testing: linux 6995e2de6891c724bfeb2db33d7b87775f913ad1 baseline version: linux 6c538e1adbfc696ac4747fb10d63e704344f763d Last test of basis 180278 2023-04-16 19:41:46 Z 70 days Failing since 180281 2023-04-17 06:24:36 Z 70 days 132 attempts Testing same since 181598 2023-06-26 01:56:17 Z 0 days 1 attempts ------------------------------------------------------------ 2774 people touched revisions under test, not listing them all jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl fail test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-freebsd11-amd64 pass test-amd64-amd64-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale fail test-amd64-amd64-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 fail test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 fail test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine fail test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt fail test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu fail test-amd64-amd64-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-amd64-pygrub pass test-amd64-amd64-libvirt-qcow2 pass test-armhf-armhf-libvirt-qcow2 fail test-amd64-amd64-libvirt-raw pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw fail test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds fail test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-amd64-xl-vhd pass test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd fail ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 354627 lines long.) From xen-devel-bounces@lists.xenproject.org Mon Jun 26 13:50:27 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 13:50:27 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555515.867331 (Exim 4.92) (envelope-from ) id 1qDmba-0003Ka-MJ; Mon, 26 Jun 2023 13:50:10 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555515.867331; Mon, 26 Jun 2023 13:50:10 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDmba-0003KT-Ir; Mon, 26 Jun 2023 13:50:10 +0000 Received: by outflank-mailman (input) for mailman id 555515; Mon, 26 Jun 2023 13:50:09 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDmbZ-0003KJ-Sf; Mon, 26 Jun 2023 13:50:09 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDmbZ-0002OM-Ke; Mon, 26 Jun 2023 13:50:09 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDmbZ-0002eM-3C; Mon, 26 Jun 2023 13:50:09 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qDmbZ-0005eT-2m; Mon, 26 Jun 2023 13:50:09 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=FeapFizS6o3P3muZEOUMRmwhrLP5hYeG7FLsdjainu4=; b=QTIl1M15Vn3cWwGk1mxG90hB5o iWx3hzTDqOt9cZjeCZxtDo9CV8KfM6ctbWOc2KpUIK0bHE02EMck5uzIDoZV9dOK5cxjL68rayRRi U1zxW5RpffBDK2bruVFJyLuTPZ7H2gkfppsXFF1iNHO/2+/emXLJNtneWc/+W3+rCzWg=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [ovmf test] 181602: all pass - PUSHED X-Osstest-Versions-This: ovmf=638dfb4135441347f4bb8f242b4003a4e4395456 X-Osstest-Versions-That: ovmf=5542e528cd2710f521e8bf5dd4efd5adbdf86b71 From: osstest service owner Date: Mon, 26 Jun 2023 13:50:09 +0000 flight 181602 ovmf real [real] http://logs.test-lab.xenproject.org/osstest/logs/181602/ Perfect :-) All tests in this flight passed as required version targeted for testing: ovmf 638dfb4135441347f4bb8f242b4003a4e4395456 baseline version: ovmf 5542e528cd2710f521e8bf5dd4efd5adbdf86b71 Last test of basis 181601 2023-06-26 09:43:47 Z 0 days Testing same since 181602 2023-06-26 11:42:13 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Gerd Hoffmann jobs: build-amd64-xsm pass build-i386-xsm pass build-amd64 pass build-i386 pass build-amd64-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-i386-pvops pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Pushing revision : To xenbits.xen.org:/home/xen/git/osstest/ovmf.git 5542e528cd..638dfb4135 638dfb4135441347f4bb8f242b4003a4e4395456 -> xen-tested-master From xen-devel-bounces@lists.xenproject.org Mon Jun 26 13:52:28 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 13:52:28 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555521.867341 (Exim 4.92) (envelope-from ) id 1qDmdn-0003sm-2l; Mon, 26 Jun 2023 13:52:27 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555521.867341; Mon, 26 Jun 2023 13:52:27 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDmdn-0003sf-05; Mon, 26 Jun 2023 13:52:27 +0000 Received: by outflank-mailman (input) for mailman id 555521; Mon, 26 Jun 2023 13:52:25 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDmdl-0003sZ-UY for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 13:52:25 +0000 Received: from smtp-out2.suse.de (smtp-out2.suse.de [195.135.220.29]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id ad7eceb0-1428-11ee-8611-37d641c3527e; Mon, 26 Jun 2023 15:52:23 +0200 (CEST) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by smtp-out2.suse.de (Postfix) with ESMTPS id 734D11F898; Mon, 26 Jun 2023 13:52:23 +0000 (UTC) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id 3F1FE13483; Mon, 26 Jun 2023 13:52:23 +0000 (UTC) Received: from dovecot-director2.suse.de ([192.168.254.65]) by imap2.suse-dmz.suse.de with ESMTPSA id REjbDReYmWSEcwAAMHmgww (envelope-from ); Mon, 26 Jun 2023 13:52:23 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: ad7eceb0-1428-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1; t=1687787543; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=Lzth4Sx29xjaSLfIoyIJ4zwdue10uluRR6cpznhU/xI=; b=bW47Qs3BUGg77b6IlEkFs33Og9LMZQg1S2RZYUEHYC1e69FtVot1Z2rRNW+Cj8gT9grGiR ueuYy7K9cB7fI1bodigHZ2/DIIwQVHN5iFJoQBpHeq+viWItrtfjQcGa1rSHAfKHnQGOm6 c/GdtcJF/FlCQEjkaYbvlWbbb6A4p14= Message-ID: <2ded70cd-dde8-640b-866a-bc9d357963e2@suse.com> Date: Mon, 26 Jun 2023 15:52:22 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH 10/11] tools/xenstore: drop use of tdb Content-Language: en-US To: Julien Grall , xen-devel@lists.xenproject.org Cc: Wei Liu , Anthony PERARD References: <20230530091333.7678-1-jgross@suse.com> <20230530091333.7678-11-jgross@suse.com> <2bfc737a-53c5-ef13-835e-97933a57f414@suse.com> From: Juergen Gross In-Reply-To: Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="------------SmDqFT5bujW77jyQOhpM3vJe" This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --------------SmDqFT5bujW77jyQOhpM3vJe Content-Type: multipart/mixed; boundary="------------CEpDAPNp0sa0tB2ou9L6qv0d"; protected-headers="v1" From: Juergen Gross To: Julien Grall , xen-devel@lists.xenproject.org Cc: Wei Liu , Anthony PERARD Message-ID: <2ded70cd-dde8-640b-866a-bc9d357963e2@suse.com> Subject: Re: [PATCH 10/11] tools/xenstore: drop use of tdb References: <20230530091333.7678-1-jgross@suse.com> <20230530091333.7678-11-jgross@suse.com> <2bfc737a-53c5-ef13-835e-97933a57f414@suse.com> In-Reply-To: --------------CEpDAPNp0sa0tB2ou9L6qv0d Content-Type: multipart/mixed; boundary="------------7MLjRQtPRQNYigJg3m07ubMi" --------------7MLjRQtPRQNYigJg3m07ubMi Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: base64 T24gMjYuMDYuMjMgMTU6MTAsIEp1bGllbiBHcmFsbCB3cm90ZToNCj4gSGkgSnVlcmdlbiwN Cj4gDQo+IE9uIDI2LzA2LzIwMjMgMTI6MDYsIEp1ZXJnZW4gR3Jvc3Mgd3JvdGU6DQo+PiBP biAxOS4wNi4yMyAyMDoyMiwgSnVsaWVuIEdyYWxsIHdyb3RlOg0KPj4+IEhpIEp1ZXJnZW4s DQo+Pj4NCj4+PiBJIGhhdmVuJ3QgbG9va2VkIGF0IHRoZSBjb2RlIGluIGRldGFpbHMgeWV0 LiBCdXQgSSBoYXZlIGEgZmV3IHF1ZXN0aW9ucyANCj4+PiByZWdhcmRpbmcgdGhlIGNvbW1p dCBtZXNzYWdlLw0KPj4+DQo+Pj4gT24gMzAvMDUvMjAyMyAxMDoxMywgSnVlcmdlbiBHcm9z cyB3cm90ZToNCj4+Pj4gVG9kYXkgYWxsIFhlbnN0b3JlIG5vZGVzIGFyZSBzdG9yZWQgaW4g YSBUREIgZGF0YSBiYXNlLiBUaGlzIGRhdGEgYmFzZQ0KPj4+PiBoYXMgc2V2ZXJhbCBkaXNh ZHZhbnRhZ2VzOg0KPj4+Pg0KPj4+PiAtIGl0IGlzIHVzaW5nIGEgZml4ZWQgc2l6ZWQgaGFz aCB0YWJsZSwgcmVzdWx0aW5nIGluIGhpZ2ggbWVtb3J5DQo+Pj4+IMKgwqAgb3ZlcmhlYWQg Zm9yIHNtYWxsIGluc3RhbGxhdGlvbnMgd2l0aCBvbmx5IHZlcnkgZmV3IFZNcywgYW5kIGEg cmF0aGVyDQo+Pj4+IMKgwqAgbGFyZ2UgcGVyZm9ybWFuY2UgaGl0IGZvciBzeXN0ZW1zIHdp dGggbG90cyBvZiBWTXMgZHVlIHRvIG1hbnkNCj4+Pj4gwqDCoCBjb2xsaXNpb25zDQo+Pj4N Cj4+PiBDYW4geW91IHByb3ZpZGUgc29tZSBjb25jcmV0ZSBudW1iZXJzIGFuZCBhIHNldHVw IGluIG1pbmQ/IFRoaXMgd291bGQgaGVscCBpZiANCj4+PiBzb21lb25lIGluIHRoZSBmdXR1 cmUgc2F5cyB0aGF0IHRoZXkgc2VlIHRoZSBpbnZlcnNlIGFuZCB3ZSBuZWVkIHRvIHJld29y ayANCj4+PiB0aGUgbG9naWMuDQo+Pg0KPj4gVGhlIGhhc2ggdGFibGUgc2l6ZSB0b2RheSBp cyA3OTE5IGVudHJpZXMuIFRoaXMgbWVhbnMgdGhhdCBlLmcuIGluIGNhc2UNCj4+IG9mIGEg c2ltcGxlIGRlc2t0b3AgdXNlIGNhc2Ugd2l0aCAyIG9yIDMgVk1zIHByb2JhYmx5IGZhciBs ZXNzIHRoYW4gMTAlDQo+PiBvZiB0aGUgZW50cmllcyB3aWxsIGJlIHVzZWQgKGFzc3VtaW5n IHJvdWdobHkgMTAwIG5vZGVzIHBlciBWTSkuIE9UT0ggYQ0KPj4gc2V0dXAgb24gYSBsYXJn ZSBzZXJ2ZXIgd2l0aCA1MDAgVk1zIHdvdWxkIHJlc3VsdCBpbiBoZWF2eSBjb25mbGljdHMg aW4NCj4+IHRoZSBoYXNoIGxpc3Qgd2l0aCA1LTEwIG5vZGVzIHBlciBoYXNoIHRhYmxlIGVu dHJ5Lg0KPiANCj4gVGhhbmtzISBDYW4gdGhpcyBiZSB3cml0dGVuIGRvd24gaW4gdGhlIGNv bW1pdCBtZXNzYWdlPw0KDQpPa2F5Lg0KDQo+IA0KPj4+PiBTbyBkcm9wIHVzaW5nIFREQiBh bmQgc3RvcmUgdGhlIG5vZGVzIGRpcmVjdGx5IGluIG1lbW9yeSBtYWtpbmcgdGhlbQ0KPj4+ PiBlYXNpbHkgYWNjZXNzaWJsZS4gVXNlIGEgaGFzaC1iYXNlZCBsb29rdXAgbWVjaGFuaXNt IGZvciBmYXN0IGxvb2t1cA0KPj4+PiBvZiBub2RlcyBieSB0aGVpciBmdWxsIHBhdGguDQo+ Pj4+DQo+Pj4+IEZvciBub3cgb25seSByZXBsYWNlIFREQiBrZWVwaW5nIHRoZSBjdXJyZW50 IGFjY2VzcyBmdW5jdGlvbnMuDQo+Pj4NCj4+PiBEbyB5b3UgcGxhbiB0byBoYXZlIHRoZSBy ZXN0IG9mIHRoZSB3b3JrIHVwc3RyZWFtZWQgZm9yIDQuMTg/IEFsc28sIGlmIGZvciANCj4+ PiBzb21lIHJlYXNvbnMsIG9ubHkgdGhpcyB3b3JrIHdpbGwgYmUgbWVyZ2VkLiBXaWxsIHRo aXMgaGF2ZSBhbiBpbXBhY3Qgb24gDQo+Pj4gWGVuc3RvcmVkIG1lbW9yeSB1c2FnZS9wZXJm b3JtYW5jZT8NCj4+DQo+PiBNZW1vcnkgdXNhZ2Ugc2hvdWxkIGdvIGRvd24sIGVzcGVjaWFs bHkgYWZ0ZXIgZGVsZXRpbmcgbG90cyBvZiBlbnRyaWVzDQo+PiAoQUZBSUsgVERCIHdpbGwg bmV2ZXIgZnJlZSB0aGUgdW51c2VkIG1lbW9yeSBhZ2FpbiwgaXQgd2lsbCBqdXN0IGtlZXAg aXQNCj4+IGZvciB0aGUgZnV0dXJlKS4NCj4+DQo+PiBNZW1vcnkgZnJhZ21lbnRhdGlvbiBt aWdodCBnbyB1cCwgdGhvdWdoLg0KPj4NCj4+IFBlcmZvcm1hbmNlIG1pZ2h0IGJlIGJldHRl ciwgdG9vLCBhcyB0aGVyZSBpcyBubyBuZWVkIHRvIHJlYWxsb2MoKSB0aGUNCj4+IG1lbW9y eSB3aGVuIGFkZGluZyBub2Rlcy4NCj4gDQo+IFdoYXQgeW91IHdyaXRlIHNlZW1zIHRvIGJl IHF1aXRlIGh5cG90aGV0aWNhbCBzbyBmYXIuIEdpdmVuIHRoZXJlIHRoaXMgaXMgbm90IA0K PiBnYXRlZCBieSBhbiAjaWZkZWYsIEkgdGhpbmsgaXQgd291bGQgYmUgZ29vZCB0byBoYXZl IGEgZ29vZCBpZGVhIG9mIHRoZSBpbXBhY3QgDQo+IHRvIGhhdmUgb25seSB0aGUgcGFydGlh bCByZXdvcmsuDQoNCkkgaGF2ZSBjaGVja2VkIGl0LiBXaXRob3V0IG15IHBhdGNoZXMgbWVt b3J5IGNvbnN1bXB0aW9uIGlzIGFib3V0IDgwayBhZnRlcg0KY3JlYXRpbmcgYW5kIHNodXR0 aW5nIGRvd24gYSBndWVzdCBhZ2Fpbi4gV2l0aCBteSBwYXRjaGVzIGl0IGlzIDE4ay4NCg0K UGVyZm9ybWFuY2Ugc2VlbXMgYSBsaXR0bGUgYml0IGJldHRlciB3aXRoIG15IHBhdGNoZXMs IGJ1dCB0aGlzIG1pZ2h0IGJlDQpyZWFsdGVkIHRvIGEgYmFkIHRlc3QgKEkganVzdCB1c2Vk IHhlbnN0b3JlLXRlc3Qgd2hpY2ggZG9lc24ndCBkbyBtYW55IG5vZGVzDQppbiBwYXJhbGxl bCkuDQoNCg0KSnVlcmdlbg0K --------------7MLjRQtPRQNYigJg3m07ubMi Content-Type: application/pgp-keys; name="OpenPGP_0xB0DE9DD628BF132F.asc" Content-Disposition: attachment; filename="OpenPGP_0xB0DE9DD628BF132F.asc" Content-Description: OpenPGP public key Content-Transfer-Encoding: quoted-printable -----BEGIN PGP PUBLIC KEY BLOCK----- xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjri oyspZKOBycWxw3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2 kaV2KL9650I1SJvedYm8Of8Zd621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i 1TXkH09XSSI8mEQ/ouNcMvIJNwQpd369y9bfIhWUiVXEK7MlRgUG6MvIj6Y3Am/B BLUVbDa4+gmzDC9ezlZkTZG2t14zWPvxXP3FAp2pkW0xqG7/377qptDmrk42GlSK N4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEBAAHNHEp1ZXJnZW4gR3Jvc3Mg PGpnQHBmdXBmLm5ldD7CwHkEEwECACMFAlOMcBYCGwMHCwkIBwMCAQYVCAIJCgsE FgIDAQIeAQIXgAAKCRCw3p3WKL8TL0KdB/93FcIZ3GCNwFU0u3EjNbNjmXBKDY4F UGNQH2lvWAUy+dnyThpwdtF/jQ6j9RwE8VP0+NXcYpGJDWlNb9/JmYqLiX2Q3Tye vpB0CA3dbBQp0OW0fgCetToGIQrg0MbD1C/sEOv8Mr4NAfbauXjZlvTj30H2jO0u +6WGM6nHwbh2l5O8ZiHkH32iaSTfN7Eu5RnNVUJbvoPHZ8SlM4KWm8rG+lIkGurq qu5gu8q8ZMKdsdGC4bBxdQKDKHEFExLJK/nRPFmAuGlId1E3fe10v5QL+qHI3EIP tyfE7i9Hz6rVwi7lWKgh7pe0ZvatAudZ+JNIlBKptb64FaiIOAWDCx1SzR9KdWVy Z2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+wsB5BBMBAgAjBQJTjHCvAhsDBwsJ CAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey/HmQf/RtI7kv5A2PS4 RF7HoZhPVPogNVbC4YA6lW7DrWf0teC0RR3MzXfy6pJ+7KLgkqMlrAbN/8Dvjoz7 8X+5vhH/rDLa9BuZQlhFmvcGtCF8eR0T1v0nC/nuAFVGy+67q2DH8As3KPu0344T BDpAvr2uYM4tSqxK4DURx5INz4ZZ0WNFHcqsfvlGJALDeE0LhITTd9jLzdDad1pQ SToCnLl6SBJZjDOX9QQcyUigZFtCXFst4dlsvddrxyqT1f17+2cFSdu7+ynLmXBK 7abQ3rwJY8SbRO2iRulogc5vr/RLMMlscDAiDkaFQWLoqHHOdfO9rURssHNN8WkM nQfvUewRz80hSnVlcmdlbiBHcm9zcyA8amdyb3NzQG5vdmVsbC5jb20+wsB5BBMB AgAjBQJTjHDXAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/ Ey8PUQf/ehmgCI9jB9hlgexLvgOtf7PJnFOXgMLdBQgBlVPO3/D9R8LtF9DBAFPN hlrsfIG/SqICoRCqUcJ96Pn3P7UUinFG/I0ECGF4EvTE1jnDkfJZr6jrbjgyoZHi w/4BNwSTL9rWASyLgqlA8u1mf+c2yUwcGhgkRAd1gOwungxcwzwqgljf0N51N5Jf VRHRtyfwq/ge+YEkDGcTU6Y0sPOuj4Dyfm8fJzdfHNQsWq3PnczLVELStJNdapwP OoE+lotufe3AM2vAEYJ9rTz3Cki4JFUsgLkHFqGZarrPGi1eyQcXeluldO3m91NK /1xMI3/+8jbO0tsn1tqSEUGIJi7ox80eSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1 c2UuZGU+wsB5BBMBAgAjBQJTjHDrAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgEC F4AACgkQsN6d1ii/Ey+LhQf9GL45eU5vOowA2u5N3g3OZUEBmDHVVbqMtzwlmNC4 k9Kx39r5s2vcFl4tXqW7g9/ViXYuiDXb0RfUpZiIUW89siKrkzmQ5dM7wRqzgJpJ wK8Bn2MIxAKArekWpiCKvBOB/Cc+3EXE78XdlxLyOi/NrmSGRIov0karw2RzMNOu 5D+jLRZQd1Sv27AR+IP3I8U4aqnhLpwhK7MEy9oCILlgZ1QZe49kpcumcZKORmzB TNh30FVKK1EvmV2xAKDoaEOgQB4iFQLhJCdP1I5aSgM5IVFdn7v5YgEYuJYx37Io N1EblHI//x/e2AaIHpzK5h88NEawQsaNRpNSrcfbFmAg987ATQRTjHAWAQgAyzH6 AOODMBjgfWE9VeCgsrwH3exNAU32gLq2xvjpWnHIs98ndPUDpnoxWQugJ6MpMncr 0xSwFmHEgnSEjK/PAjppgmyc57BwKII3sV4on+gDVFJR6Y8ZRwgnBC5mVM6JjQ5x Dk8WRXljExRfUX9pNhdE5eBOZJrDRoLUmmjDtKzWaDhIg/+1Hzz93X4fCQkNVbVF LELU9bMaLPBG/x5q4iYZ2k2ex6d47YE1ZFdMm6YBYMOljGkZKwYde5ldM9mo45mm we0icXKLkpEdIXKTZeKDO+Hdv1aqFuAcccTg9RXDQjmwhC3yEmrmcfl0+rPghO0I v3OOImwTEe4co3c1mwARAQABwsBfBBgBAgAJBQJTjHAWAhsMAAoJELDendYovxMv Q/gH/1ha96vm4P/L+bQpJwrZ/dneZcmEwTbe8YFsw2V/Buv6Z4Mysln3nQK5ZadD 534CF7TDVft7fC4tU4PONxF5D+/tvgkPfDAfF77zy2AH1vJzQ1fOU8lYFpZXTXIH b+559UqvIB8AdgR3SAJGHHt4RKA0F7f5ipYBBrC6cyXJyyoprT10EMvU8VGiwXvT yJz3fjoYsdFzpWPlJEBRMedCot60g5dmbdrZ5DWClAr0yau47zpWj3enf1tLWaqc suylWsviuGjKGw7KHQd3bxALOknAp4dN3QwBYCKuZ7AddY9yjynVaD5X7nF9nO5B jR/i1DG86lem3iBDXzXsZDn8R38=3D =3D2wuH -----END PGP PUBLIC KEY BLOCK----- --------------7MLjRQtPRQNYigJg3m07ubMi-- --------------CEpDAPNp0sa0tB2ou9L6qv0d-- --------------SmDqFT5bujW77jyQOhpM3vJe Content-Type: application/pgp-signature; name="OpenPGP_signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="OpenPGP_signature" -----BEGIN PGP SIGNATURE----- wsB5BAABCAAjFiEEhRJncuj2BJSl0Jf3sN6d1ii/Ey8FAmSZmBYFAwAAAAAACgkQsN6d1ii/Ey9Q kwgAlDoHcDutLIdfeksVAuX1Vzqejj5o06K/pwTjgTl+RuOvigbGg8GhJHroOGYUhMNZUv+FBvFN Sz6K2n8378Ke1KH0rX/pVYoz6tK+SL3eaJQDrz3QCnK5OD56M5GtyCZ6qVTE7LjVyf5FemaDIZNG 5SG5el+qrUqU5d9QqNOU+A251Gr04b+/wZ7vaQkZYKvqgq2XOGXROSCaV0dakJi7/YKoR9DAVugF D+qRuLYJcwo6b1ACTlT/7/nu5AIK0OUsg72PE9cBfyZKUkKIZy46gSN+h9WXktlXNN1XEHFJnptS HOvk9+9MPd5ghhUqRvG7960/btHFWFRrn8in8YDwaw== =dEvV -----END PGP SIGNATURE----- --------------SmDqFT5bujW77jyQOhpM3vJe-- From xen-devel-bounces@lists.xenproject.org Mon Jun 26 14:12:39 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 14:12:39 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555527.867351 (Exim 4.92) (envelope-from ) id 1qDmwv-0006Tn-RK; Mon, 26 Jun 2023 14:12:13 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555527.867351; Mon, 26 Jun 2023 14:12:13 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDmwv-0006Tg-O0; Mon, 26 Jun 2023 14:12:13 +0000 Received: by outflank-mailman (input) for mailman id 555527; Mon, 26 Jun 2023 14:12:12 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDmwu-0006Ta-I6 for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 14:12:12 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDmwt-000307-NK; Mon, 26 Jun 2023 14:12:11 +0000 Received: from [193.85.242.128] (helo=[192.168.148.103]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qDmwt-0005Iu-HI; Mon, 26 Jun 2023 14:12:11 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=xHDpglMamX19FrrAaUfEqsI6ZELmMLlFS+sR73TLYjo=; b=qB6sDBNQA+VdRPTEDPSShjCeOt lnPENgIya3jbIvgRRrYeZAev/kmZVi1Z2XEy0joYZBXxxiUY01JsxLOSOGTTmB0pbmlG1ViQqsFM9 KiKpAQEgcFiGQwVxbetbULNU9zlwWmgP0kVdDZMyxJHNpfsiOTpoq/1q/X7MFza3yECg=; Message-ID: <0529f52f-4448-fd9b-8d87-de5e96efc5cc@xen.org> Date: Mon, 26 Jun 2023 15:12:09 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [XEN PATCH v3 1/6] xen/arm: change names in function access_guest_memory_by_ipa(). Content-Language: en-US To: Federico Serafini , xen-devel@lists.xenproject.org Cc: consulting@bugseng.com, Stefano Stabellini , Bertrand Marquis , Volodymyr Babchuk , Michal Orzel , Xenia Ragiadakou , Ayan Kumar Halder References: <89e96c5d4b95a35540757235e838fd65f5e4077e.1687771796.git.federico.serafini@bugseng.com> From: Julien Grall In-Reply-To: <89e96c5d4b95a35540757235e838fd65f5e4077e.1687771796.git.federico.serafini@bugseng.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi, On 26/06/2023 10:52, Federico Serafini wrote: > Change the function name 'access_guest_memory_by_ipa' to > 'access_guest_memory_by_gpa' and change its formal parameter name from > 'ipa' to 'gpa' because of the following: > 1) 'gpa' is used more frequently and therefore is preferable; > 2) changing parameter name makes the declaration consistent with the > corresponding definition thus fixing a violation of MISRA C:2012 Rule > 8.3. > > Signed-off-by: Federico Serafini Reviewed-by: Julien Grall Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Mon Jun 26 14:13:04 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 14:13:04 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555529.867361 (Exim 4.92) (envelope-from ) id 1qDmxa-0006vc-3K; Mon, 26 Jun 2023 14:12:54 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555529.867361; Mon, 26 Jun 2023 14:12:54 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDmxZ-0006vV-WA; Mon, 26 Jun 2023 14:12:53 +0000 Received: by outflank-mailman (input) for mailman id 555529; Mon, 26 Jun 2023 14:12:52 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDmxY-0006vP-UJ for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 14:12:52 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDmxY-00030W-9C; Mon, 26 Jun 2023 14:12:52 +0000 Received: from [193.85.242.128] (helo=[192.168.148.103]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qDmxY-0005Jo-1n; Mon, 26 Jun 2023 14:12:52 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=bhBa63lLLRZExQfr8fx9uhxf1l03JoDUHSbVdVPJWis=; b=mjd2sgAbM9BvduCRSxOd+9vEeS I+Stq4ZC/K2zpX4m7PIC8vJTJMf5Bh+Cka5ucb9w5d7zdu88uaB6wnA/xLU0xPeDGXmGpdBLjB0uQ /4FvbhcK4V3hPmFbcXcc+W1E3V3N9AT/9ewCblaHQ2v4FMnXJ0SOrX8FIwgezaQ7peVw=; Message-ID: Date: Mon, 26 Jun 2023 15:12:49 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [XEN PATCH v3 2/6] xen/arm: change parameter name 'vcpu' in domain() function definition. Content-Language: en-US To: Federico Serafini , xen-devel@lists.xenproject.org Cc: consulting@bugseng.com, Stefano Stabellini , Bertrand Marquis , Volodymyr Babchuk , Michal Orzel , Xenia Ragiadakou , Ayan Kumar Halder References: From: Julien Grall In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi, On 26/06/2023 10:52, Federico Serafini wrote: > In the current version of domain() function, the declaration > (correctly) uses the parameter name 'v' while the definition uses the > parameter name 'vcpu'. > Since it is common to use 'v' to denote a vCPU, change the parameter > name 'vcpu' of function definition to 'v', thus fixing a violation of > MISRA C:2012 Rule 8.3. > > Signed-off-by: Federico Serafini Reviewed-by: Julien Grall Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Mon Jun 26 14:13:52 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 14:13:52 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555535.867371 (Exim 4.92) (envelope-from ) id 1qDmyL-0007UA-BD; Mon, 26 Jun 2023 14:13:41 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555535.867371; Mon, 26 Jun 2023 14:13:41 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDmyL-0007U3-8Q; Mon, 26 Jun 2023 14:13:41 +0000 Received: by outflank-mailman (input) for mailman id 555535; Mon, 26 Jun 2023 14:13:39 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDmyJ-0007Tr-Cp for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 14:13:39 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDmyI-00031b-SN; Mon, 26 Jun 2023 14:13:38 +0000 Received: from [193.85.242.128] (helo=[192.168.148.103]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qDmyI-0005LV-MT; Mon, 26 Jun 2023 14:13:38 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=onEkaE+5LW+KtrfNQG6bA4FkTtG44NsdFOthtKfinTg=; b=3emIa0Ka/LgU8zSqQCGxlkAbtW t9i1JgQ2MS1yG7MTxSWpEbLIrBzlYBAt0SxsrhBGAu/XHJuJQQpC5kleX6N/iQyr9OG+Cpdg2FVpG xqpsXg4CVcmxS2+K0vK3OtAE8EQUvCyrR426KrgOGDVezPmLZetb20dx2YwLW8OTFiXo=; Message-ID: Date: Mon, 26 Jun 2023 15:13:36 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [XEN PATCH v3 3/6] xen/arm: change parameter name 'pa' in ioremap_addr() definition. Content-Language: en-US To: Federico Serafini , xen-devel@lists.xenproject.org Cc: consulting@bugseng.com, Stefano Stabellini , Bertrand Marquis , Volodymyr Babchuk , Michal Orzel , Xenia Ragiadakou , Ayan Kumar Halder References: <74fdc69fd08d1a0e35d4f226ea0c47a6f6a3a241.1687771796.git.federico.serafini@bugseng.com> From: Julien Grall In-Reply-To: <74fdc69fd08d1a0e35d4f226ea0c47a6f6a3a241.1687771796.git.federico.serafini@bugseng.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi, On 26/06/2023 10:52, Federico Serafini wrote: > In the current version of ioremap_addr() function, the declaration > uses the parameter name 'start' (consistenly with the other ioremap_* > function declarations), while the definition uses the parameter name > 'pa'. > Change the parameter name 'pa' of function definition to 'start', thus > fixing a violation of MISRA C:2012 Rule 8.3 and keeping the consistency > with other ioremap_* functions. > > Signed-off-by: Federico Serafini Reviewed-by: Julien Grall Cheers, > --- > xen/arch/arm/mm.c | 10 +++++----- > 1 file changed, 5 insertions(+), 5 deletions(-) > > diff --git a/xen/arch/arm/mm.c b/xen/arch/arm/mm.c > index e460249736..2e9860a754 100644 > --- a/xen/arch/arm/mm.c > +++ b/xen/arch/arm/mm.c > @@ -736,10 +736,10 @@ void *__init arch_vmap_virt_end(void) > * This function should only be used to remap device address ranges > * TODO: add a check to verify this assumption > */ > -void *ioremap_attr(paddr_t pa, size_t len, unsigned int attributes) > +void *ioremap_attr(paddr_t start, size_t len, unsigned int attributes) > { > - mfn_t mfn = _mfn(PFN_DOWN(pa)); > - unsigned int offs = pa & (PAGE_SIZE - 1); > + mfn_t mfn = _mfn(PFN_DOWN(start)); > + unsigned int offs = start & (PAGE_SIZE - 1); > unsigned int nr = PFN_UP(offs + len); > void *ptr = __vmap(&mfn, nr, 1, 1, attributes, VMAP_DEFAULT); > > @@ -1579,7 +1579,7 @@ void put_page_type(struct page_info *page) > return; > } > > -int create_grant_host_mapping(unsigned long addr, mfn_t frame, > +int create_grant_host_mapping(unsigned long gpaddr, mfn_t frame, > unsigned int flags, unsigned int cache_flags) > { > int rc; > @@ -1591,7 +1591,7 @@ int create_grant_host_mapping(unsigned long addr, mfn_t frame, > if ( flags & GNTMAP_readonly ) > t = p2m_grant_map_ro; > > - rc = guest_physmap_add_entry(current->domain, gaddr_to_gfn(addr), > + rc = guest_physmap_add_entry(current->domain, gaddr_to_gfn(gpaddr), > frame, 0, t); > > if ( rc ) -- Julien Grall From xen-devel-bounces@lists.xenproject.org Mon Jun 26 14:14:26 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 14:14:26 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555539.867381 (Exim 4.92) (envelope-from ) id 1qDmz3-00083D-Ix; Mon, 26 Jun 2023 14:14:25 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555539.867381; Mon, 26 Jun 2023 14:14:25 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDmz3-000836-GF; Mon, 26 Jun 2023 14:14:25 +0000 Received: by outflank-mailman (input) for mailman id 555539; Mon, 26 Jun 2023 14:14:24 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDmz2-00082u-Oq for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 14:14:24 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDmz2-00032u-4h; Mon, 26 Jun 2023 14:14:24 +0000 Received: from [193.85.242.128] (helo=[192.168.148.103]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qDmz1-0005MQ-Vf; Mon, 26 Jun 2023 14:14:24 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=FEGRbh+dF/6L5N1zlI8iq4DyMhetv1WYKpNtg10lqGY=; b=4cS5crr9XgbLpCzJLIsdEkyj3a lrnzXKW6jJIwwXn5OJPBdlck8YV1ZssWPgwDArxJq+CLrBPBQM7u+gFy65psLTJ8FBczzPK7xLSlH wAiWBwXFBmqEfk44UKyOTL70uWKb5OuERynoQ0YHukYZmfFrIsLHvS/vEgFFhl/ObZLo=; Message-ID: <5c9a625a-cdba-9793-b86a-c49f220aa22c@xen.org> Date: Mon, 26 Jun 2023 15:14:22 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [XEN PATCH v3 4/6] xen/arm: vgic: change parameter name in 'init' and 'free' functions. Content-Language: en-US To: Federico Serafini , xen-devel@lists.xenproject.org Cc: consulting@bugseng.com, Stefano Stabellini , Bertrand Marquis , Volodymyr Babchuk , Michal Orzel , Xenia Ragiadakou , Ayan Kumar Halder References: <0332cf060e181d60e249a004182be011f93602a2.1687771796.git.federico.serafini@bugseng.com> From: Julien Grall In-Reply-To: <0332cf060e181d60e249a004182be011f93602a2.1687771796.git.federico.serafini@bugseng.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi, On 26/06/2023 10:52, Federico Serafini wrote: > In the current versions of vcpu_vgic_init() and vcpu_vgic_free(), > the declarations (correctly) use the parameter name 'v' while the > corresponding definitions use the parameter name 'vcpu'. > Since it is common to use 'v' to denote a vCPU, change the parameter > name 'vcpu' of function definitions to 'v', thus fixing violations of > MISRA C:2012 Rule 8.3. > > Signed-off-by: Federico Serafini Reviewed-by: Julien Grall Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Mon Jun 26 14:16:22 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 14:16:22 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555543.867391 (Exim 4.92) (envelope-from ) id 1qDn0l-0000Hj-V9; Mon, 26 Jun 2023 14:16:11 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555543.867391; Mon, 26 Jun 2023 14:16:11 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDn0l-0000Hc-Re; Mon, 26 Jun 2023 14:16:11 +0000 Received: by outflank-mailman (input) for mailman id 555543; Mon, 26 Jun 2023 14:16:10 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDn0k-0000HU-Qo for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 14:16:10 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDn0k-00036Y-65; Mon, 26 Jun 2023 14:16:10 +0000 Received: from [193.85.242.128] (helo=[192.168.148.103]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qDn0j-0005Pr-WA; Mon, 26 Jun 2023 14:16:10 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=8PgEWNFxeFPY/09ttZMAQ0sVqLHuUKS5hKvExuSbXe8=; b=iXff8gYA8yJx22yBz7Gg1mLaN6 Zc59rzvEHPkgItDEjJS6hsygKDJTITDqksXhQge9rX7Xc+woknZgAUaO6q1ixNuz6NBHGLiKaX75X p6qh9WhaFWTH7QlINcpAMuWP1xrZU9lsbm1TJKumC0fNV7pHc+uhDtk4K9ppGj7FSitc=; Message-ID: Date: Mon, 26 Jun 2023 15:16:07 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [XEN PATCH v3 5/6] xen/arm: make parameter names of function declarations consistent. Content-Language: en-US To: Federico Serafini , xen-devel@lists.xenproject.org Cc: consulting@bugseng.com, Stefano Stabellini , Bertrand Marquis , Volodymyr Babchuk , Michal Orzel , Xenia Ragiadakou , Ayan Kumar Halder References: <5d0075418f0674e0ca1f63744b87b27085a0d865.1687771796.git.federico.serafini@bugseng.com> From: Julien Grall In-Reply-To: <5d0075418f0674e0ca1f63744b87b27085a0d865.1687771796.git.federico.serafini@bugseng.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi, On 26/06/2023 10:52, Federico Serafini wrote: > Change the parameter names of function declarations to be consistent > with the names used in the corresponding function definitions, thus > fixing violations of MISRA C:2012 Rule 8.3. > > Signed-off-by: Federico Serafini Reviewed-by: Julien Grall Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Mon Jun 26 14:17:50 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 14:17:50 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555547.867402 (Exim 4.92) (envelope-from ) id 1qDn2D-0000r6-9N; Mon, 26 Jun 2023 14:17:41 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555547.867402; Mon, 26 Jun 2023 14:17:41 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDn2D-0000qz-4i; Mon, 26 Jun 2023 14:17:41 +0000 Received: by outflank-mailman (input) for mailman id 555547; Mon, 26 Jun 2023 14:17:40 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDn2C-0000qt-5a for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 14:17:40 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDn2B-00037h-C7; Mon, 26 Jun 2023 14:17:39 +0000 Received: from [193.85.242.128] (helo=[192.168.148.103]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qDn2B-0005SE-4X; Mon, 26 Jun 2023 14:17:39 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=KwyfllzkPI9B3LF9TCxd8RU/2YaW4pwrA8W//Kf/iro=; b=j6zcVoFW7H5m5343JaAglJinWx jz+PaIOAo0BmcTytVi5hxGSkIEnQRwaSUwhnPNQ9otGybjHIa3mIZW8pwf5f2LJyMyraW45qB92vk NGwNIism7Gq8Js94TICEiSBmc6TGhiHjwLSNXo+DSOhGM15BFSniqYPUHDE6/devmFiI=; Message-ID: <0222d2f5-5ad2-7804-6e01-fb3e7e1367e8@xen.org> Date: Mon, 26 Jun 2023 15:17:36 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [XEN PATCH v3 6/6] xen/arm: change parameter names in replace_grant_host_mapping(). Content-Language: en-US To: Federico Serafini , xen-devel@lists.xenproject.org Cc: consulting@bugseng.com, Stefano Stabellini , Bertrand Marquis , Volodymyr Babchuk , Michal Orzel , Xenia Ragiadakou , Ayan Kumar Halder References: <2c2b9b3c53e556945baab3dd387bf029e12434b6.1687771796.git.federico.serafini@bugseng.com> From: Julien Grall In-Reply-To: <2c2b9b3c53e556945baab3dd387bf029e12434b6.1687771796.git.federico.serafini@bugseng.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi, On 26/06/2023 10:52, Federico Serafini wrote: > In the current version of replace_grant_host_mapping() function, the > declaration (correctly) uses the parameter names 'gpaddr' and > 'new_gpaddr', while the definition uses the parameter names 'addr' and > 'new_addr'. > Change the parameter names of the definition to 'gpaddr' and > 'new_gpaddr' so that it is clear what type of address is expected and > violations of MISRA C:2012 Rule 8.3 are fixed. > > In both declaration and definition of function > replace_grant_host_mapping() change the parameter name 'mfn' to 'frame', > thus improving readability and keeping consistency with name used in > create_grant_host_mapping(). > > Signed-off-by: Federico Serafini Reviewed-by: Julien Grall Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Mon Jun 26 14:20:17 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 14:20:17 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555551.867410 (Exim 4.92) (envelope-from ) id 1qDn4i-0002IZ-Kz; Mon, 26 Jun 2023 14:20:16 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555551.867410; Mon, 26 Jun 2023 14:20:16 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDn4i-0002IS-IG; Mon, 26 Jun 2023 14:20:16 +0000 Received: by outflank-mailman (input) for mailman id 555551; Mon, 26 Jun 2023 14:20:14 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDn4g-0002Hu-MT for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 14:20:14 +0000 Received: from smtp-out1.suse.de (smtp-out1.suse.de [2001:67c:2178:6::1c]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 8f9b3bfa-142c-11ee-8611-37d641c3527e; Mon, 26 Jun 2023 16:20:11 +0200 (CEST) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by smtp-out1.suse.de (Postfix) with ESMTPS id CC50E21853; Mon, 26 Jun 2023 14:20:11 +0000 (UTC) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id 97A5A13905; Mon, 26 Jun 2023 14:20:11 +0000 (UTC) Received: from dovecot-director2.suse.de ([192.168.254.65]) by imap2.suse-dmz.suse.de with ESMTPSA id o75UI5uemWQdAwAAMHmgww (envelope-from ); Mon, 26 Jun 2023 14:20:11 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 8f9b3bfa-142c-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1; t=1687789211; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=EltClA5u0TUDFHKFw7r+hzNaT4Om8S5Z/wedAU9uOSc=; b=alqw+Ig/yWsrULzk4kp+IHcLGdbXI7M/TYBHlHhWxecLLmt9u4JQ1+qvwNaaK49HVKHWU9 VCn15+dGxehOLgZuVGhlZ9ttvVYDM9i63rRCnxMFWFnCLp93+Lln+XCtH8Mpvw3kUR8pNQ ZLGuAiEks2mbkxBSS+pFkNh3WC/5USE= Message-ID: <8b8dfceb-f164-d82d-4526-6f975f1bfe97@suse.com> Date: Mon, 26 Jun 2023 16:20:10 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH 01/11] tools/xenstore: explicitly specify create or modify for tdb_store() Content-Language: en-US To: Julien Grall , xen-devel@lists.xenproject.org Cc: Wei Liu , Anthony PERARD References: <20230530091333.7678-1-jgross@suse.com> <20230530091333.7678-2-jgross@suse.com> From: Juergen Gross In-Reply-To: Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="------------U0xeZK0ZwF7kOzNpBpBBTL6l" This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --------------U0xeZK0ZwF7kOzNpBpBBTL6l Content-Type: multipart/mixed; boundary="------------6xL1pCvk7buHHSH2qFqV6OkD"; protected-headers="v1" From: Juergen Gross To: Julien Grall , xen-devel@lists.xenproject.org Cc: Wei Liu , Anthony PERARD Message-ID: <8b8dfceb-f164-d82d-4526-6f975f1bfe97@suse.com> Subject: Re: [PATCH 01/11] tools/xenstore: explicitly specify create or modify for tdb_store() References: <20230530091333.7678-1-jgross@suse.com> <20230530091333.7678-2-jgross@suse.com> In-Reply-To: --------------6xL1pCvk7buHHSH2qFqV6OkD Content-Type: multipart/mixed; boundary="------------bw8Oc7tQvs0TT7xiOLhDwu0M" --------------bw8Oc7tQvs0TT7xiOLhDwu0M Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: base64 T24gMTkuMDYuMjMgMjA6NDMsIEp1bGllbiBHcmFsbCB3cm90ZToNCj4gSGkgSnVlcmdlbiwN Cj4gDQo+IE9uIDMwLzA1LzIwMjMgMTA6MTMsIEp1ZXJnZW4gR3Jvc3Mgd3JvdGU6DQo+PiBJ bnN0ZWFkIG9mIHVzaW5nIFREQl9SRVBMQUNFIGZvciBlaXRoZXIgY3JlYXRpbmcgb3IgbW9k aWZ5aW5nIGEgVERCDQo+PiBlbnRyeSwgdXNlIGVpdGhlciBUREJfSU5TRVJUIG9yIFREQl9N T0RJRlkgd2hlbiBjYWxsaW5nIHRkYl9zdG9yZSgpLg0KPj4NCj4+IEF0IGhpZ2hlciBmdW5j dGlvbiBsZXZlbHMgdXNlIHRoZSBhYnN0cmFjdCBmbGFnIHZhbHVlcyBOT0RFX0NSRUFURQ0K Pj4gYW5kIE5PREVfTU9ESUZZLg0KPj4NCj4+IFRoaXMgaXMgZm9yIHByZXBhcmluZyB0byBn ZXQgcmlkIG9mIFREQi4NCj4gDQo+IElJVUMsIHlvdSB3YW50IHRvIG1ha2UgdGhlIGNoYW5n ZSBzbyBkb24ndCBuZWVkIHRvIGNoZWNrIGlmIHRoZSBub2RlIGV4aXN0cyB3aGVuIA0KPiB3 ZSBhcmUgY3JlYXRpbmcgYSBuZXcgbm9kZS4gSWYgc28sIGlzbid0IHRoaXMgY2hhbmdlIGFs c28gYmVuZWZpY2lhbCBmb3IgVERCPw0KDQpIbW0sIG1heWJlLg0KDQo+IA0KPj4NCj4+IFNp Z25lZC1vZmYtYnk6IEp1ZXJnZW4gR3Jvc3MgPGpncm9zc0BzdXNlLmNvbT4NCj4+IC0tLQ0K Pj4gwqAgdG9vbHMveGVuc3RvcmUveGVuc3RvcmVkX2NvcmUuY8KgwqDCoMKgwqDCoMKgIHwg MjkgKysrKysrKysrKysrKystLS0tLS0tLS0tLS0NCj4+IMKgIHRvb2xzL3hlbnN0b3JlL3hl bnN0b3JlZF9jb3JlLmjCoMKgwqDCoMKgwqDCoCB8wqAgNiArKysrLS0NCj4+IMKgIHRvb2xz L3hlbnN0b3JlL3hlbnN0b3JlZF9kb21haW4uY8KgwqDCoMKgwqAgfMKgIDIgKy0NCj4+IMKg IHRvb2xzL3hlbnN0b3JlL3hlbnN0b3JlZF90cmFuc2FjdGlvbi5jIHzCoCA4ICsrKysrLS0N Cj4+IMKgIDQgZmlsZXMgY2hhbmdlZCwgMjcgaW5zZXJ0aW9ucygrKSwgMTggZGVsZXRpb25z KC0pDQo+Pg0KPj4gZGlmZiAtLWdpdCBhL3Rvb2xzL3hlbnN0b3JlL3hlbnN0b3JlZF9jb3Jl LmMgYi90b29scy94ZW5zdG9yZS94ZW5zdG9yZWRfY29yZS5jDQo+PiBpbmRleCAzMWE4NjJi NzE1Li45MGMwYmM3NDIzIDEwMDY0NA0KPj4gLS0tIGEvdG9vbHMveGVuc3RvcmUveGVuc3Rv cmVkX2NvcmUuYw0KPj4gKysrIGIvdG9vbHMveGVuc3RvcmUveGVuc3RvcmVkX2NvcmUuYw0K Pj4gQEAgLTYwMSw3ICs2MDEsNyBAQCBzdGF0aWMgdW5zaWduZWQgaW50IGdldF9hY2NfZG9t aWQoc3RydWN0IGNvbm5lY3Rpb24gKmNvbm4sIA0KPj4gVERCX0RBVEEgKmtleSwNCj4+IMKg IH0NCj4+IMKgIGludCBkb190ZGJfd3JpdGUoc3RydWN0IGNvbm5lY3Rpb24gKmNvbm4sIFRE Ql9EQVRBICprZXksIFREQl9EQVRBICpkYXRhLA0KPj4gLcKgwqDCoMKgwqDCoMKgwqAgc3Ry dWN0IG5vZGVfYWNjb3VudF9kYXRhICphY2MsIGJvb2wgbm9fcXVvdGFfY2hlY2spDQo+PiAr wqDCoMKgwqDCoMKgwqDCoCBzdHJ1Y3Qgbm9kZV9hY2NvdW50X2RhdGEgKmFjYywgaW50IGZs YWcsIGJvb2wgbm9fcXVvdGFfY2hlY2spDQo+IA0KPiAnaW50JyBpcyB0aGUgd3JvbmcgdHlw ZSBmb3IgYSBmbGFnLg0KPiANCj4gSXMgZmxhZyBvbmx5IG1lYW50IHRvIGhhdmUgdHdvIHZh bHVlcz8gSWYgeWVzLCB0aGVuIGl0IHdvdWxkIGJlIGJlc3QgdG8gc3dpdGNoIA0KPiB0byBi b29sICh3aXRoIGRlZmluZSBpZiB5b3Ugc3RpbGwgd2FudCBleHBsaWNpdCBuYW1lKS4NCj4g DQo+IElmIG5vdCwgdGhlbiBJIHRoaW5rIHRoaXMgc2hvdWxkIGJlIGFuIGVudW0uDQo+IA0K PiBSYXRoZXIgdGhhbiBib29sLCBJIHdvdWxkIGFsc28gYmUgaGFwcHkgaWYgeW91IHdhbnQg ZW51bSB3aXRoIHR3byB2YWx1ZXMuDQoNClRoZSAiaW50IiBpcyBhIGxlZnRvdmVyIGZyb20g YSBwcmV2aW91cyB2ZXJzaW9uIHdoZXJlIEkgdXNlZCB0aGUgVERCXyoNCmRlZmluZXMgZGly ZWN0bHkuIEknbGwgc3dpdGNoIHRvIGFuIGVudW0uDQoNCj4gDQo+PiDCoCB7DQo+PiDCoMKg wqDCoMKgIHN0cnVjdCB4c190ZGJfcmVjb3JkX2hkciAqaGRyID0gKHZvaWQgKilkYXRhLT5k cHRyOw0KPj4gwqDCoMKgwqDCoCBzdHJ1Y3Qgbm9kZV9hY2NvdW50X2RhdGEgb2xkX2FjYyA9 IHt9Ow0KPj4gQEAgLTYzNSw3ICs2MzUsOCBAQCBpbnQgZG9fdGRiX3dyaXRlKHN0cnVjdCBj b25uZWN0aW9uICpjb25uLCBUREJfREFUQSAqa2V5LCANCj4+IFREQl9EQVRBICpkYXRhLA0K Pj4gwqDCoMKgwqDCoCB9DQo+PiDCoMKgwqDCoMKgIC8qIFREQiBzaG91bGQgc2V0IGVycm5v LCBidXQgZG9lc24ndCBldmVuIHNldCBlY29kZSBBRkFJQ1QuICovDQo+PiAtwqDCoMKgIGlm ICh0ZGJfc3RvcmUodGRiX2N0eCwgKmtleSwgKmRhdGEsIFREQl9SRVBMQUNFKSAhPSAwKSB7 DQo+PiArwqDCoMKgIGlmICh0ZGJfc3RvcmUodGRiX2N0eCwgKmtleSwgKmRhdGEsDQo+PiAr wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGZsYWcgPT0gTk9ERV9DUkVBVEUpID8gVERC X0lOU0VSVCA6IFREQl9NT0RJRlkpICE9IDApIHsNCj4+IMKgwqDCoMKgwqDCoMKgwqDCoCBk b21haW5fbWVtb3J5X2FkZF9ub2Noayhjb25uLCBuZXdfZG9taWQsDQo+PiDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgLWRhdGEtPmRzaXplIC0ga2V5LT5k c2l6ZSk7DQo+PiDCoMKgwqDCoMKgwqDCoMKgwqAgLyogRXJyb3IgcGF0aCwgc28gbm8gcXVv dGEgY2hlY2suICovDQo+PiBAQCAtNzc0LDcgKzc3NSw3IEBAIHN0YXRpYyBib29sIHJlYWRf bm9kZV9jYW5fcHJvcGFnYXRlX2Vycm5vKHZvaWQpDQo+PiDCoCB9DQo+PiDCoCBpbnQgd3Jp dGVfbm9kZV9yYXcoc3RydWN0IGNvbm5lY3Rpb24gKmNvbm4sIFREQl9EQVRBICprZXksIHN0 cnVjdCBub2RlICpub2RlLA0KPj4gLcKgwqDCoMKgwqDCoMKgwqDCoMKgIGJvb2wgbm9fcXVv dGFfY2hlY2spDQo+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqAgaW50IGZsYWcsIGJvb2wgbm9f cXVvdGFfY2hlY2spDQo+PiDCoCB7DQo+PiDCoMKgwqDCoMKgIFREQl9EQVRBIGRhdGE7DQo+ PiDCoMKgwqDCoMKgIHZvaWQgKnA7DQo+PiBAQCAtODEyLDcgKzgxMyw3IEBAIGludCB3cml0 ZV9ub2RlX3JhdyhzdHJ1Y3QgY29ubmVjdGlvbiAqY29ubiwgVERCX0RBVEEgKmtleSwgDQo+ PiBzdHJ1Y3Qgbm9kZSAqbm9kZSwNCj4+IMKgwqDCoMKgwqAgcCArPSBub2RlLT5kYXRhbGVu Ow0KPj4gwqDCoMKgwqDCoCBtZW1jcHkocCwgbm9kZS0+Y2hpbGRyZW4sIG5vZGUtPmNoaWxk bGVuKTsNCj4+IC3CoMKgwqAgaWYgKGRvX3RkYl93cml0ZShjb25uLCBrZXksICZkYXRhLCAm bm9kZS0+YWNjLCBub19xdW90YV9jaGVjaykpDQo+PiArwqDCoMKgIGlmIChkb190ZGJfd3Jp dGUoY29ubiwga2V5LCAmZGF0YSwgJm5vZGUtPmFjYywgZmxhZywgbm9fcXVvdGFfY2hlY2sp KQ0KPj4gwqDCoMKgwqDCoMKgwqDCoMKgIHJldHVybiBFSU87DQo+PiDCoMKgwqDCoMKgIHJl dHVybiAwOw0KPj4gQEAgLTgyMywxNCArODI0LDE0IEBAIGludCB3cml0ZV9ub2RlX3Jhdyhz dHJ1Y3QgY29ubmVjdGlvbiAqY29ubiwgVERCX0RBVEEgDQo+PiAqa2V5LCBzdHJ1Y3Qgbm9k ZSAqbm9kZSwNCj4+IMKgwqAgKiBub2RlLT5rZXkuIFRoaXMgY2FuIGxhdGVyIGJlIHVzZWQg aWYgdGhlIGNoYW5nZSBuZWVkcyB0byBiZSByZXZlcnRlZC4NCj4+IMKgwqAgKi8NCj4+IMKg IHN0YXRpYyBpbnQgd3JpdGVfbm9kZShzdHJ1Y3QgY29ubmVjdGlvbiAqY29ubiwgc3RydWN0 IG5vZGUgKm5vZGUsDQo+PiAtwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgYm9vbCBub19x dW90YV9jaGVjaykNCj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBpbnQgZmxhZywg Ym9vbCBub19xdW90YV9jaGVjaykNCj4+IMKgIHsNCj4+IMKgwqDCoMKgwqAgaW50IHJldDsN Cj4+IMKgwqDCoMKgwqAgaWYgKGFjY2Vzc19ub2RlKGNvbm4sIG5vZGUsIE5PREVfQUNDRVNT X1dSSVRFLCAmbm9kZS0+a2V5KSkNCj4+IMKgwqDCoMKgwqDCoMKgwqDCoCByZXR1cm4gZXJy bm87DQo+PiAtwqDCoMKgIHJldCA9IHdyaXRlX25vZGVfcmF3KGNvbm4sICZub2RlLT5rZXks IG5vZGUsIG5vX3F1b3RhX2NoZWNrKTsNCj4+ICvCoMKgwqAgcmV0ID0gd3JpdGVfbm9kZV9y YXcoY29ubiwgJm5vZGUtPmtleSwgbm9kZSwgZmxhZywgbm9fcXVvdGFfY2hlY2spOw0KPj4g wqDCoMKgwqDCoCBpZiAocmV0ICYmIGNvbm4gJiYgY29ubi0+dHJhbnNhY3Rpb24pIHsNCj4+ IMKgwqDCoMKgwqDCoMKgwqDCoCAvKg0KPj4gwqDCoMKgwqDCoMKgwqDCoMKgwqAgKiBSZXZl cnRpbmcgYWNjZXNzX25vZGUoKSBpcyBoYXJkLCBzbyBqdXN0IGZhaWwgdGhlDQo+PiBAQCAt MTQ5Niw3ICsxNDk3LDggQEAgc3RhdGljIHN0cnVjdCBub2RlICpjcmVhdGVfbm9kZShzdHJ1 Y3QgY29ubmVjdGlvbiAqY29ubiwgDQo+PiBjb25zdCB2b2lkICpjdHgsDQo+PiDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoCBnb3RvIGVycjsNCj4+IMKgwqDCoMKgwqDCoMKgwqDCoCB9 DQo+PiAtwqDCoMKgwqDCoMKgwqAgcmV0ID0gd3JpdGVfbm9kZShjb25uLCBpLCBmYWxzZSk7 DQo+PiArwqDCoMKgwqDCoMKgwqAgcmV0ID0gd3JpdGVfbm9kZShjb25uLCBpLCBpLT5wYXJl bnQgPyBOT0RFX0NSRUFURSA6IE5PREVfTU9ESUZZLA0KPj4gK8KgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgIGZhbHNlKTsNCj4+IMKgwqDCoMKgwqDCoMKgwqDCoCBpZiAocmV0 KQ0KPj4gwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgZ290byBlcnI7DQo+PiBAQCAtMTU2 MCw3ICsxNTYyLDcgQEAgc3RhdGljIGludCBkb193cml0ZShjb25zdCB2b2lkICpjdHgsIHN0 cnVjdCBjb25uZWN0aW9uIA0KPj4gKmNvbm4sDQo+PiDCoMKgwqDCoMKgIH0gZWxzZSB7DQo+ PiDCoMKgwqDCoMKgwqDCoMKgwqAgbm9kZS0+ZGF0YSA9IGluLT5idWZmZXIgKyBvZmZzZXQ7 DQo+PiDCoMKgwqDCoMKgwqDCoMKgwqAgbm9kZS0+ZGF0YWxlbiA9IGRhdGFsZW47DQo+PiAt wqDCoMKgwqDCoMKgwqAgaWYgKHdyaXRlX25vZGUoY29ubiwgbm9kZSwgZmFsc2UpKQ0KPj4g K8KgwqDCoMKgwqDCoMKgIGlmICh3cml0ZV9ub2RlKGNvbm4sIG5vZGUsIE5PREVfTU9ESUZZ LCBmYWxzZSkpDQo+PiDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCByZXR1cm4gZXJybm87 DQo+PiDCoMKgwqDCoMKgIH0NCj4+IEBAIC0xNjEwLDcgKzE2MTIsNyBAQCBzdGF0aWMgaW50 IHJlbW92ZV9jaGlsZF9lbnRyeShzdHJ1Y3QgY29ubmVjdGlvbiAqY29ubiwgDQo+PiBzdHJ1 Y3Qgbm9kZSAqbm9kZSwNCj4+IMKgwqDCoMKgwqAgbWVtZGVsKG5vZGUtPmNoaWxkcmVuLCBv ZmZzZXQsIGNoaWxkbGVuICsgMSwgbm9kZS0+Y2hpbGRsZW4pOw0KPj4gwqDCoMKgwqDCoCBu b2RlLT5jaGlsZGxlbiAtPSBjaGlsZGxlbiArIDE7DQo+PiAtwqDCoMKgIHJldHVybiB3cml0 ZV9ub2RlKGNvbm4sIG5vZGUsIHRydWUpOw0KPj4gK8KgwqDCoCByZXR1cm4gd3JpdGVfbm9k ZShjb25uLCBub2RlLCBOT0RFX01PRElGWSwgdHJ1ZSk7DQo+PiDCoCB9DQo+PiDCoCBzdGF0 aWMgaW50IGRlbGV0ZV9jaGlsZChzdHJ1Y3QgY29ubmVjdGlvbiAqY29ubiwNCj4+IEBAIC0x ODA3LDcgKzE4MDksNyBAQCBzdGF0aWMgaW50IGRvX3NldF9wZXJtcyhjb25zdCB2b2lkICpj dHgsIHN0cnVjdCANCj4+IGNvbm5lY3Rpb24gKmNvbm4sDQo+PiDCoMKgwqDCoMKgIGlmIChk b21haW5fbmJlbnRyeV9pbmMoY29ubiwgZ2V0X25vZGVfb3duZXIobm9kZSkpKQ0KPj4gwqDC oMKgwqDCoMKgwqDCoMKgIHJldHVybiBFTk9NRU07DQo+PiAtwqDCoMKgIGlmICh3cml0ZV9u b2RlKGNvbm4sIG5vZGUsIGZhbHNlKSkNCj4+ICvCoMKgwqAgaWYgKHdyaXRlX25vZGUoY29u biwgbm9kZSwgTk9ERV9NT0RJRlksIGZhbHNlKSkNCj4+IMKgwqDCoMKgwqDCoMKgwqDCoCBy ZXR1cm4gZXJybm87DQo+PiDCoMKgwqDCoMKgIGZpcmVfd2F0Y2hlcyhjb25uLCBjdHgsIG5h bWUsIG5vZGUsIGZhbHNlLCAmb2xkX3Blcm1zKTsNCj4+IEBAIC0yMzIxLDcgKzIzMjMsNyBA QCBzdGF0aWMgdm9pZCBtYW51YWxfbm9kZShjb25zdCBjaGFyICpuYW1lLCBjb25zdCBjaGFy IA0KPj4gKmNoaWxkKQ0KPj4gwqDCoMKgwqDCoCBpZiAoY2hpbGQpDQo+PiDCoMKgwqDCoMKg wqDCoMKgwqAgbm9kZS0+Y2hpbGRsZW4gPSBzdHJsZW4oY2hpbGQpICsgMTsNCj4+IC3CoMKg wqAgaWYgKHdyaXRlX25vZGUoTlVMTCwgbm9kZSwgZmFsc2UpKQ0KPj4gK8KgwqDCoCBpZiAo d3JpdGVfbm9kZShOVUxMLCBub2RlLCBOT0RFX0NSRUFURSwgZmFsc2UpKQ0KPj4gwqDCoMKg wqDCoMKgwqDCoMKgIGJhcmZfcGVycm9yKCJDb3VsZCBub3QgY3JlYXRlIGluaXRpYWwgbm9k ZSAlcyIsIG5hbWUpOw0KPj4gwqDCoMKgwqDCoCB0YWxsb2NfZnJlZShub2RlKTsNCj4+IMKg IH0NCj4+IEBAIC0zNDY5LDEyICszNDcxLDEzIEBAIHZvaWQgcmVhZF9zdGF0ZV9ub2RlKGNv bnN0IHZvaWQgKmN0eCwgY29uc3Qgdm9pZCAqc3RhdGUpDQo+PiDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoCBiYXJmKCJhbGxvY2F0aW9uIGVycm9yIHJlc3RvcmluZyBub2RlIik7DQo+ PiDCoMKgwqDCoMKgwqDCoMKgwqAgc2V0X3RkYl9rZXkocGFyZW50bmFtZSwgJmtleSk7DQo+ PiAtwqDCoMKgwqDCoMKgwqAgaWYgKHdyaXRlX25vZGVfcmF3KE5VTEwsICZrZXksIHBhcmVu dCwgdHJ1ZSkpDQo+PiArwqDCoMKgwqDCoMKgwqAgaWYgKHdyaXRlX25vZGVfcmF3KE5VTEws ICZrZXksIHBhcmVudCwgTk9ERV9NT0RJRlksIHRydWUpKQ0KPj4gwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqAgYmFyZigid3JpdGUgcGFyZW50IGVycm9yIHJlc3RvcmluZyBub2RlIik7 DQo+PiDCoMKgwqDCoMKgIH0NCj4+IMKgwqDCoMKgwqAgc2V0X3RkYl9rZXkobmFtZSwgJmtl eSk7DQo+PiAtwqDCoMKgIGlmICh3cml0ZV9ub2RlX3JhdyhOVUxMLCAma2V5LCBub2RlLCB0 cnVlKSkNCj4+ICvCoMKgwqAgaWYgKHdyaXRlX25vZGVfcmF3KE5VTEwsICZrZXksIG5vZGUs DQo+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBzdHJjbXAobmFtZSwgIi8iKSA/ IE5PREVfQ1JFQVRFIDogTk9ERV9NT0RJRlksIHRydWUpKQ0KPiANCj4gSSB0aGluayBhIGNv bW1lbnQgZm9yIHRoZSBjaGVjayB3b3VsZCBiZSB1c2VmdWwuIEFGQVVJLCB0aGlzIGlzIGJl Y2F1c2UgIi8iIGlzIA0KPiBhbHdheXMgY3JlYXRlZCBiZWZvcmUgcmVzdG9yaW5nIHRoZSBz dGF0ZS4NCg0KQ29ycmVjdC4gSSdsbCBhZGQgYSBjb21tZW50Lg0KDQoNCkp1ZXJnZW4NCg== --------------bw8Oc7tQvs0TT7xiOLhDwu0M Content-Type: application/pgp-keys; name="OpenPGP_0xB0DE9DD628BF132F.asc" Content-Disposition: attachment; filename="OpenPGP_0xB0DE9DD628BF132F.asc" Content-Description: OpenPGP public key Content-Transfer-Encoding: quoted-printable -----BEGIN PGP PUBLIC KEY BLOCK----- xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjri oyspZKOBycWxw3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2 kaV2KL9650I1SJvedYm8Of8Zd621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i 1TXkH09XSSI8mEQ/ouNcMvIJNwQpd369y9bfIhWUiVXEK7MlRgUG6MvIj6Y3Am/B BLUVbDa4+gmzDC9ezlZkTZG2t14zWPvxXP3FAp2pkW0xqG7/377qptDmrk42GlSK N4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEBAAHNHEp1ZXJnZW4gR3Jvc3Mg PGpnQHBmdXBmLm5ldD7CwHkEEwECACMFAlOMcBYCGwMHCwkIBwMCAQYVCAIJCgsE FgIDAQIeAQIXgAAKCRCw3p3WKL8TL0KdB/93FcIZ3GCNwFU0u3EjNbNjmXBKDY4F UGNQH2lvWAUy+dnyThpwdtF/jQ6j9RwE8VP0+NXcYpGJDWlNb9/JmYqLiX2Q3Tye vpB0CA3dbBQp0OW0fgCetToGIQrg0MbD1C/sEOv8Mr4NAfbauXjZlvTj30H2jO0u +6WGM6nHwbh2l5O8ZiHkH32iaSTfN7Eu5RnNVUJbvoPHZ8SlM4KWm8rG+lIkGurq qu5gu8q8ZMKdsdGC4bBxdQKDKHEFExLJK/nRPFmAuGlId1E3fe10v5QL+qHI3EIP tyfE7i9Hz6rVwi7lWKgh7pe0ZvatAudZ+JNIlBKptb64FaiIOAWDCx1SzR9KdWVy Z2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+wsB5BBMBAgAjBQJTjHCvAhsDBwsJ CAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey/HmQf/RtI7kv5A2PS4 RF7HoZhPVPogNVbC4YA6lW7DrWf0teC0RR3MzXfy6pJ+7KLgkqMlrAbN/8Dvjoz7 8X+5vhH/rDLa9BuZQlhFmvcGtCF8eR0T1v0nC/nuAFVGy+67q2DH8As3KPu0344T BDpAvr2uYM4tSqxK4DURx5INz4ZZ0WNFHcqsfvlGJALDeE0LhITTd9jLzdDad1pQ SToCnLl6SBJZjDOX9QQcyUigZFtCXFst4dlsvddrxyqT1f17+2cFSdu7+ynLmXBK 7abQ3rwJY8SbRO2iRulogc5vr/RLMMlscDAiDkaFQWLoqHHOdfO9rURssHNN8WkM nQfvUewRz80hSnVlcmdlbiBHcm9zcyA8amdyb3NzQG5vdmVsbC5jb20+wsB5BBMB AgAjBQJTjHDXAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/ Ey8PUQf/ehmgCI9jB9hlgexLvgOtf7PJnFOXgMLdBQgBlVPO3/D9R8LtF9DBAFPN hlrsfIG/SqICoRCqUcJ96Pn3P7UUinFG/I0ECGF4EvTE1jnDkfJZr6jrbjgyoZHi w/4BNwSTL9rWASyLgqlA8u1mf+c2yUwcGhgkRAd1gOwungxcwzwqgljf0N51N5Jf VRHRtyfwq/ge+YEkDGcTU6Y0sPOuj4Dyfm8fJzdfHNQsWq3PnczLVELStJNdapwP OoE+lotufe3AM2vAEYJ9rTz3Cki4JFUsgLkHFqGZarrPGi1eyQcXeluldO3m91NK /1xMI3/+8jbO0tsn1tqSEUGIJi7ox80eSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1 c2UuZGU+wsB5BBMBAgAjBQJTjHDrAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgEC F4AACgkQsN6d1ii/Ey+LhQf9GL45eU5vOowA2u5N3g3OZUEBmDHVVbqMtzwlmNC4 k9Kx39r5s2vcFl4tXqW7g9/ViXYuiDXb0RfUpZiIUW89siKrkzmQ5dM7wRqzgJpJ wK8Bn2MIxAKArekWpiCKvBOB/Cc+3EXE78XdlxLyOi/NrmSGRIov0karw2RzMNOu 5D+jLRZQd1Sv27AR+IP3I8U4aqnhLpwhK7MEy9oCILlgZ1QZe49kpcumcZKORmzB TNh30FVKK1EvmV2xAKDoaEOgQB4iFQLhJCdP1I5aSgM5IVFdn7v5YgEYuJYx37Io N1EblHI//x/e2AaIHpzK5h88NEawQsaNRpNSrcfbFmAg987ATQRTjHAWAQgAyzH6 AOODMBjgfWE9VeCgsrwH3exNAU32gLq2xvjpWnHIs98ndPUDpnoxWQugJ6MpMncr 0xSwFmHEgnSEjK/PAjppgmyc57BwKII3sV4on+gDVFJR6Y8ZRwgnBC5mVM6JjQ5x Dk8WRXljExRfUX9pNhdE5eBOZJrDRoLUmmjDtKzWaDhIg/+1Hzz93X4fCQkNVbVF LELU9bMaLPBG/x5q4iYZ2k2ex6d47YE1ZFdMm6YBYMOljGkZKwYde5ldM9mo45mm we0icXKLkpEdIXKTZeKDO+Hdv1aqFuAcccTg9RXDQjmwhC3yEmrmcfl0+rPghO0I v3OOImwTEe4co3c1mwARAQABwsBfBBgBAgAJBQJTjHAWAhsMAAoJELDendYovxMv Q/gH/1ha96vm4P/L+bQpJwrZ/dneZcmEwTbe8YFsw2V/Buv6Z4Mysln3nQK5ZadD 534CF7TDVft7fC4tU4PONxF5D+/tvgkPfDAfF77zy2AH1vJzQ1fOU8lYFpZXTXIH b+559UqvIB8AdgR3SAJGHHt4RKA0F7f5ipYBBrC6cyXJyyoprT10EMvU8VGiwXvT yJz3fjoYsdFzpWPlJEBRMedCot60g5dmbdrZ5DWClAr0yau47zpWj3enf1tLWaqc suylWsviuGjKGw7KHQd3bxALOknAp4dN3QwBYCKuZ7AddY9yjynVaD5X7nF9nO5B jR/i1DG86lem3iBDXzXsZDn8R38=3D =3D2wuH -----END PGP PUBLIC KEY BLOCK----- --------------bw8Oc7tQvs0TT7xiOLhDwu0M-- --------------6xL1pCvk7buHHSH2qFqV6OkD-- --------------U0xeZK0ZwF7kOzNpBpBBTL6l Content-Type: application/pgp-signature; name="OpenPGP_signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="OpenPGP_signature" -----BEGIN PGP SIGNATURE----- wsB5BAABCAAjFiEEhRJncuj2BJSl0Jf3sN6d1ii/Ey8FAmSZnpoFAwAAAAAACgkQsN6d1ii/Ey9O nwf/dpQcOcGRi84UXjj2gwxU23CYrZI/YLE51CjWuoWX8vnNH2KBt0Czt3doCyOIxf3eymdLS31c vGHqEXedqul7roCcb8M5Al55MEjsJB+Ur1P8PLo8wgIFtwhyq/ufueeBc4xVba7phop0mHK61Ho/ a6GgDvCzBd9u0fQqXpe6x44RmM/M82MqPZLgokZGFvVC6EUir1IvCG0VEGumvzty5KMvaTuPpoSe /affKSkpbzIgFnqwqAHfDiLNBCrJSblDQXy76GzSqAQcVJMLTeM4FGiEENZwbhbHOdQTNnMhszdH nBMF8vvPWmR8ZDpfNnlRPw8QmPE5qaaGLb14mgXtsw== =WGj+ -----END PGP SIGNATURE----- --------------U0xeZK0ZwF7kOzNpBpBBTL6l-- From xen-devel-bounces@lists.xenproject.org Mon Jun 26 14:23:45 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 14:23:45 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555557.867420 (Exim 4.92) (envelope-from ) id 1qDn7z-0002wC-7E; Mon, 26 Jun 2023 14:23:39 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555557.867420; Mon, 26 Jun 2023 14:23:39 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDn7z-0002w5-4S; Mon, 26 Jun 2023 14:23:39 +0000 Received: by outflank-mailman (input) for mailman id 555557; Mon, 26 Jun 2023 14:23:38 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDn7y-0002vx-1s for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 14:23:38 +0000 Received: from smtp-out1.suse.de (smtp-out1.suse.de [195.135.220.28]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 0910c213-142d-11ee-8611-37d641c3527e; Mon, 26 Jun 2023 16:23:35 +0200 (CEST) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by smtp-out1.suse.de (Postfix) with ESMTPS id D7195216DC; Mon, 26 Jun 2023 14:23:35 +0000 (UTC) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id A97F813905; Mon, 26 Jun 2023 14:23:35 +0000 (UTC) Received: from dovecot-director2.suse.de ([192.168.254.65]) by imap2.suse-dmz.suse.de with ESMTPSA id +1CcJ2efmWSwBAAAMHmgww (envelope-from ); Mon, 26 Jun 2023 14:23:35 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 0910c213-142d-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1; t=1687789415; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=LsHf9jAGOg70AbCiHmh/VpIYTjKRiDc0/Ydd8GiX+Co=; b=r4akE3sENCcehuwxO3g6vmuP78SDTWERrW+0QI9HcOw+0B5P5XBhctwOPC6hlEXZn1MmWf UisVpxTYS57NPPIYfPt9jgmQONS0QhygCMlYgGXIdrcnnhiQn0JZEGc4c3pw0vUF0vgEv9 NvCLtTq7rtVrod5kjZPE5VHzrFXddaE= Message-ID: <4ed502c9-c1e3-790e-0f33-1a889fa022c3@suse.com> Date: Mon, 26 Jun 2023 16:23:35 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH 03/11] tools/xenstore: let transaction_prepend() return the name for access Content-Language: en-US To: Julien Grall , xen-devel@lists.xenproject.org Cc: Wei Liu , Anthony PERARD References: <20230530091333.7678-1-jgross@suse.com> <20230530091333.7678-4-jgross@suse.com> From: Juergen Gross In-Reply-To: Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="------------Pvqk8fu9Icfuu7PGcrXtDOhf" This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --------------Pvqk8fu9Icfuu7PGcrXtDOhf Content-Type: multipart/mixed; boundary="------------MNqsXmvFHsWXyzhWacM96ppA"; protected-headers="v1" From: Juergen Gross To: Julien Grall , xen-devel@lists.xenproject.org Cc: Wei Liu , Anthony PERARD Message-ID: <4ed502c9-c1e3-790e-0f33-1a889fa022c3@suse.com> Subject: Re: [PATCH 03/11] tools/xenstore: let transaction_prepend() return the name for access References: <20230530091333.7678-1-jgross@suse.com> <20230530091333.7678-4-jgross@suse.com> In-Reply-To: --------------MNqsXmvFHsWXyzhWacM96ppA Content-Type: multipart/mixed; boundary="------------xgPWrTH75IC0YJWqxUYdVNOf" --------------xgPWrTH75IC0YJWqxUYdVNOf Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: base64 T24gMjAuMDYuMjMgMTM6MTksIEp1bGllbiBHcmFsbCB3cm90ZToNCj4gSGkgSnVlcmdlbiwN Cj4gDQo+IE9uIDMwLzA1LzIwMjMgMTA6MTMsIEp1ZXJnZW4gR3Jvc3Mgd3JvdGU6DQo+PiBJ bnN0ZWFkIG9mIHNldHRpbmcgdGhlIFREQiBrZXkgZm9yIGFjY2Vzc2luZyB0aGUgbm9kZSBp biB0aGUgZGF0YSBiYXNlLA0KPj4gbGV0IHRyYW5zYWN0aW9uX3ByZXBlbmQoKSByZXR1cm4g dGhlIGFzc29jaWF0ZWQgbmFtZSBpbnN0ZWFkLg0KPj4NCj4+IFRoaXMgaXMgaW4gcHJlcGFy YXRpb24gdG8gcmVwbGFjZSBUREIgd2l0aCBhIG1vcmUgc2ltcGxlIGRhdGEgc3RvcmFnZS4N Cj4+DQo+PiBTaWduZWQtb2ZmLWJ5OiBKdWVyZ2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+ DQo+PiAtLS0NCj4+IMKgIHRvb2xzL3hlbnN0b3JlL3hlbnN0b3JlZF9jb3JlLmPCoMKgwqDC oMKgwqDCoCB8wqAgNCArKystDQo+PiDCoCB0b29scy94ZW5zdG9yZS94ZW5zdG9yZWRfdHJh bnNhY3Rpb24uYyB8IDExICsrKystLS0tLS0tDQo+PiDCoCB0b29scy94ZW5zdG9yZS94ZW5z dG9yZWRfdHJhbnNhY3Rpb24uaCB8wqAgMyArLS0NCj4+IMKgIDMgZmlsZXMgY2hhbmdlZCwg OCBpbnNlcnRpb25zKCspLCAxMCBkZWxldGlvbnMoLSkNCj4+DQo+PiBkaWZmIC0tZ2l0IGEv dG9vbHMveGVuc3RvcmUveGVuc3RvcmVkX2NvcmUuYyBiL3Rvb2xzL3hlbnN0b3JlL3hlbnN0 b3JlZF9jb3JlLmMNCj4+IGluZGV4IGExZDVkNGE0MTkuLjIzOWY4YzZiYzQgMTAwNjQ0DQo+ PiAtLS0gYS90b29scy94ZW5zdG9yZS94ZW5zdG9yZWRfY29yZS5jDQo+PiArKysgYi90b29s cy94ZW5zdG9yZS94ZW5zdG9yZWRfY29yZS5jDQo+PiBAQCAtNjk0LDYgKzY5NCw3IEBAIHN0 cnVjdCBub2RlICpyZWFkX25vZGUoc3RydWN0IGNvbm5lY3Rpb24gKmNvbm4sIGNvbnN0IHZv aWQgDQo+PiAqY3R4LA0KPj4gwqDCoMKgwqDCoCBUREJfREFUQSBrZXksIGRhdGE7DQo+PiDC oMKgwqDCoMKgIHN0cnVjdCB4c190ZGJfcmVjb3JkX2hkciAqaGRyOw0KPj4gwqDCoMKgwqDC oCBzdHJ1Y3Qgbm9kZSAqbm9kZTsNCj4+ICvCoMKgwqAgY29uc3QgY2hhciAqZGJfbmFtZTsN Cj4gDQo+IE5JVDogQXQgdGhlIG1vbWVudCB0aGUgbG9jYWwgdmFyaWFibGUgc2VlbXMgcG9p bnRsZXNzIGdpdmVuLi4uDQo+IA0KPj4gwqDCoMKgwqDCoCBpbnQgZXJyOw0KPj4gwqDCoMKg wqDCoCBub2RlID0gdGFsbG9jKGN0eCwgc3RydWN0IG5vZGUpOw0KPj4gQEAgLTcwOCw3ICs3 MDksOCBAQCBzdHJ1Y3Qgbm9kZSAqcmVhZF9ub2RlKHN0cnVjdCBjb25uZWN0aW9uICpjb25u LCBjb25zdCB2b2lkIA0KPj4gKmN0eCwNCj4+IMKgwqDCoMKgwqDCoMKgwqDCoCByZXR1cm4g TlVMTDsNCj4+IMKgwqDCoMKgwqAgfQ0KPj4gLcKgwqDCoCB0cmFuc2FjdGlvbl9wcmVwZW5k KGNvbm4sIG5hbWUsICZrZXkpOw0KPj4gK8KgwqDCoCBkYl9uYW1lID0gdHJhbnNhY3Rpb25f cHJlcGVuZChjb25uLCBuYW1lKTsNCj4+ICvCoMKgwqAgc2V0X3RkYl9rZXkoZGJfbmFtZSwg JmtleSk7DQo+IA0KPiAuLi4geW91IG9ubHkgdXNlIGluIG9uZSBwbGFjZS4gV2lsbCB0aGlz IGNoYW5nZSBpbiBmb2xsb3ctdXAgcGF0Y2g/DQoNClllcy4gVGhlIGFkZGl0aW9uYWwgdXNl IGNhc2Ugd2lsbCBiZSBhZGRlZCBpbiBwYXRjaCA3Lg0KDQo+IA0KPiBBbnl3YXk6DQo+IA0K PiBSZXZpZXdlZC1ieTogSnVsaWVuIEdyYWxsIDxqZ3JhbGxAYW1hem9uLmNvbT4NCg0KVGhh bmtzLA0KDQoNCkp1ZXJnZW4NCg0K --------------xgPWrTH75IC0YJWqxUYdVNOf Content-Type: application/pgp-keys; name="OpenPGP_0xB0DE9DD628BF132F.asc" Content-Disposition: attachment; filename="OpenPGP_0xB0DE9DD628BF132F.asc" Content-Description: OpenPGP public key Content-Transfer-Encoding: quoted-printable -----BEGIN PGP PUBLIC KEY BLOCK----- xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjri oyspZKOBycWxw3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2 kaV2KL9650I1SJvedYm8Of8Zd621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i 1TXkH09XSSI8mEQ/ouNcMvIJNwQpd369y9bfIhWUiVXEK7MlRgUG6MvIj6Y3Am/B BLUVbDa4+gmzDC9ezlZkTZG2t14zWPvxXP3FAp2pkW0xqG7/377qptDmrk42GlSK N4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEBAAHNHEp1ZXJnZW4gR3Jvc3Mg PGpnQHBmdXBmLm5ldD7CwHkEEwECACMFAlOMcBYCGwMHCwkIBwMCAQYVCAIJCgsE FgIDAQIeAQIXgAAKCRCw3p3WKL8TL0KdB/93FcIZ3GCNwFU0u3EjNbNjmXBKDY4F UGNQH2lvWAUy+dnyThpwdtF/jQ6j9RwE8VP0+NXcYpGJDWlNb9/JmYqLiX2Q3Tye vpB0CA3dbBQp0OW0fgCetToGIQrg0MbD1C/sEOv8Mr4NAfbauXjZlvTj30H2jO0u +6WGM6nHwbh2l5O8ZiHkH32iaSTfN7Eu5RnNVUJbvoPHZ8SlM4KWm8rG+lIkGurq qu5gu8q8ZMKdsdGC4bBxdQKDKHEFExLJK/nRPFmAuGlId1E3fe10v5QL+qHI3EIP tyfE7i9Hz6rVwi7lWKgh7pe0ZvatAudZ+JNIlBKptb64FaiIOAWDCx1SzR9KdWVy Z2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+wsB5BBMBAgAjBQJTjHCvAhsDBwsJ CAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey/HmQf/RtI7kv5A2PS4 RF7HoZhPVPogNVbC4YA6lW7DrWf0teC0RR3MzXfy6pJ+7KLgkqMlrAbN/8Dvjoz7 8X+5vhH/rDLa9BuZQlhFmvcGtCF8eR0T1v0nC/nuAFVGy+67q2DH8As3KPu0344T BDpAvr2uYM4tSqxK4DURx5INz4ZZ0WNFHcqsfvlGJALDeE0LhITTd9jLzdDad1pQ SToCnLl6SBJZjDOX9QQcyUigZFtCXFst4dlsvddrxyqT1f17+2cFSdu7+ynLmXBK 7abQ3rwJY8SbRO2iRulogc5vr/RLMMlscDAiDkaFQWLoqHHOdfO9rURssHNN8WkM nQfvUewRz80hSnVlcmdlbiBHcm9zcyA8amdyb3NzQG5vdmVsbC5jb20+wsB5BBMB AgAjBQJTjHDXAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/ Ey8PUQf/ehmgCI9jB9hlgexLvgOtf7PJnFOXgMLdBQgBlVPO3/D9R8LtF9DBAFPN hlrsfIG/SqICoRCqUcJ96Pn3P7UUinFG/I0ECGF4EvTE1jnDkfJZr6jrbjgyoZHi w/4BNwSTL9rWASyLgqlA8u1mf+c2yUwcGhgkRAd1gOwungxcwzwqgljf0N51N5Jf VRHRtyfwq/ge+YEkDGcTU6Y0sPOuj4Dyfm8fJzdfHNQsWq3PnczLVELStJNdapwP OoE+lotufe3AM2vAEYJ9rTz3Cki4JFUsgLkHFqGZarrPGi1eyQcXeluldO3m91NK /1xMI3/+8jbO0tsn1tqSEUGIJi7ox80eSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1 c2UuZGU+wsB5BBMBAgAjBQJTjHDrAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgEC F4AACgkQsN6d1ii/Ey+LhQf9GL45eU5vOowA2u5N3g3OZUEBmDHVVbqMtzwlmNC4 k9Kx39r5s2vcFl4tXqW7g9/ViXYuiDXb0RfUpZiIUW89siKrkzmQ5dM7wRqzgJpJ wK8Bn2MIxAKArekWpiCKvBOB/Cc+3EXE78XdlxLyOi/NrmSGRIov0karw2RzMNOu 5D+jLRZQd1Sv27AR+IP3I8U4aqnhLpwhK7MEy9oCILlgZ1QZe49kpcumcZKORmzB TNh30FVKK1EvmV2xAKDoaEOgQB4iFQLhJCdP1I5aSgM5IVFdn7v5YgEYuJYx37Io N1EblHI//x/e2AaIHpzK5h88NEawQsaNRpNSrcfbFmAg987ATQRTjHAWAQgAyzH6 AOODMBjgfWE9VeCgsrwH3exNAU32gLq2xvjpWnHIs98ndPUDpnoxWQugJ6MpMncr 0xSwFmHEgnSEjK/PAjppgmyc57BwKII3sV4on+gDVFJR6Y8ZRwgnBC5mVM6JjQ5x Dk8WRXljExRfUX9pNhdE5eBOZJrDRoLUmmjDtKzWaDhIg/+1Hzz93X4fCQkNVbVF LELU9bMaLPBG/x5q4iYZ2k2ex6d47YE1ZFdMm6YBYMOljGkZKwYde5ldM9mo45mm we0icXKLkpEdIXKTZeKDO+Hdv1aqFuAcccTg9RXDQjmwhC3yEmrmcfl0+rPghO0I v3OOImwTEe4co3c1mwARAQABwsBfBBgBAgAJBQJTjHAWAhsMAAoJELDendYovxMv Q/gH/1ha96vm4P/L+bQpJwrZ/dneZcmEwTbe8YFsw2V/Buv6Z4Mysln3nQK5ZadD 534CF7TDVft7fC4tU4PONxF5D+/tvgkPfDAfF77zy2AH1vJzQ1fOU8lYFpZXTXIH b+559UqvIB8AdgR3SAJGHHt4RKA0F7f5ipYBBrC6cyXJyyoprT10EMvU8VGiwXvT yJz3fjoYsdFzpWPlJEBRMedCot60g5dmbdrZ5DWClAr0yau47zpWj3enf1tLWaqc suylWsviuGjKGw7KHQd3bxALOknAp4dN3QwBYCKuZ7AddY9yjynVaD5X7nF9nO5B jR/i1DG86lem3iBDXzXsZDn8R38=3D =3D2wuH -----END PGP PUBLIC KEY BLOCK----- --------------xgPWrTH75IC0YJWqxUYdVNOf-- --------------MNqsXmvFHsWXyzhWacM96ppA-- --------------Pvqk8fu9Icfuu7PGcrXtDOhf Content-Type: application/pgp-signature; name="OpenPGP_signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="OpenPGP_signature" -----BEGIN PGP SIGNATURE----- wsB5BAABCAAjFiEEhRJncuj2BJSl0Jf3sN6d1ii/Ey8FAmSZn2cFAwAAAAAACgkQsN6d1ii/Ey9i ugf+KFiHG+FDWhuwE965pAyFI+Iy/wfRs2BquTg7KWtq6Y1UmAnq8/o26zB28KsCHNAljVNasK8s JkRpqDJiJmfn695U0TG1pVs+BK3OwNJ0e6oWMsjUdlYvVBLQqqFTx8IpHlYIb6tKSzHogodRB+n2 pHIOtv6BzZMy9c36HuR8qbmKkB6CMwDRgvRP+Nobx331UaNlBy9zzOlR8EcFddeqbIFFid9FuUL7 6zoEkrsVS67Vk9iaohRCbIciSwr8uX23xsIIq/I3v0u8vo7kQ+wYbp4Warg2HAB111zaovqCB4oU RPamea6ACpxN4ICqe4ZrYbcldXBS+Y5gdnqTPDDePg== =1IvH -----END PGP SIGNATURE----- --------------Pvqk8fu9Icfuu7PGcrXtDOhf-- From xen-devel-bounces@lists.xenproject.org Mon Jun 26 14:32:31 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 14:32:31 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555561.867431 (Exim 4.92) (envelope-from ) id 1qDnGL-0004Rz-0t; Mon, 26 Jun 2023 14:32:17 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555561.867431; Mon, 26 Jun 2023 14:32:16 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDnGK-0004Rs-UU; Mon, 26 Jun 2023 14:32:16 +0000 Received: by outflank-mailman (input) for mailman id 555561; Mon, 26 Jun 2023 14:32:15 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDnGJ-0004Rm-OH for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 14:32:15 +0000 Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 3e39ef0a-142e-11ee-b237-6b7b168915f2; Mon, 26 Jun 2023 16:32:14 +0200 (CEST) Received: from [192.168.1.198] (unknown [151.35.129.1]) by support.bugseng.com (Postfix) with ESMTPSA id A575A4EE0738; Mon, 26 Jun 2023 16:32:11 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 3e39ef0a-142e-11ee-b237-6b7b168915f2 Message-ID: Date: Mon, 26 Jun 2023 16:32:09 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [XEN PATCH v4] xen/include: avoid using a compiler extension for BUILD_BUG_ON_ZERO. Content-Language: en-US To: Jan Beulich , Julien Grall Cc: sstabellini@kernel.org, michal.orzel@amd.com, xenia.ragiadakou@amd.com, ayan.kumar.halder@amd.com, consulting@bugseng.com, andrew.cooper3@citrix.com, roger.pau@citrix.com, bertrand.marquis@arm.com, George Dunlap , Wei Liu , xen-devel@lists.xenproject.org References: <4ab190bd0d80898311aa9f1e912f18e7cdef2762.1687510380.git.nicola.vetrini@bugseng.com> <63d48b43-8ce9-3df6-1407-17c2af734828@xen.org> From: Nicola Vetrini In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit On 24/06/23 09:32, Jan Beulich wrote: > On 24.06.2023 09:11, Julien Grall wrote: >> On 23/06/2023 18:16, Jan Beulich wrote: >>> I'm not happy to, with the continued use of the >>> two U suffixes. It may seem minor, but to me it feels like setting a >>> bad precedent. >> >> I wasn't able to find the reasoning behind your objections in the >> archive. I would like to understand your concern before providing any >> ack. Would you be able to give a pointer? > > I appreciate the Misra-invoked desire to add U suffixes where > otherwise (visual) ambiguities may exist. But on numbers like > 0 or 1, and when use of e.g. resulting #define-s doesn't require > the constants to be of unsigned type, I view such suffixes purely > as clutter. In the specific case I might go as far as questioning > why, when U is added, L isn't added as well, to "support" the > size_t result aspect also from the "width of type" perspective. > > Jan I will purge the 'U's in a v5 (and correct the wrong commit message as well), since they are not necessary for this patch. Regards, -- Nicola Vetrini, BSc Software Engineer, BUGSENG srl (https://bugseng.com) From xen-devel-bounces@lists.xenproject.org Mon Jun 26 14:39:07 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 14:39:07 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555567.867441 (Exim 4.92) (envelope-from ) id 1qDnMh-00054I-Nc; Mon, 26 Jun 2023 14:38:51 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555567.867441; Mon, 26 Jun 2023 14:38:51 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDnMh-00054B-KI; Mon, 26 Jun 2023 14:38:51 +0000 Received: by outflank-mailman (input) for mailman id 555567; Mon, 26 Jun 2023 14:38:50 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDnMg-000545-If for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 14:38:50 +0000 Received: from EUR01-VE1-obe.outbound.protection.outlook.com (mail-ve1eur01on0603.outbound.protection.outlook.com [2a01:111:f400:fe1f::603]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 28382318-142f-11ee-8611-37d641c3527e; Mon, 26 Jun 2023 16:38:47 +0200 (CEST) Received: from DU2P251CA0030.EURP251.PROD.OUTLOOK.COM (2603:10a6:10:230::30) by PA4PR08MB6016.eurprd08.prod.outlook.com (2603:10a6:102:e3::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.26; Mon, 26 Jun 2023 14:38:41 +0000 Received: from DBAEUR03FT009.eop-EUR03.prod.protection.outlook.com (2603:10a6:10:230:cafe::46) by DU2P251CA0030.outlook.office365.com (2603:10a6:10:230::30) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.33 via Frontend Transport; Mon, 26 Jun 2023 14:38:41 +0000 Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by DBAEUR03FT009.mail.protection.outlook.com (100.127.143.21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.15 via Frontend Transport; Mon, 26 Jun 2023 14:38:40 +0000 Received: ("Tessian outbound 7c913606c6e6:v142"); Mon, 26 Jun 2023 14:38:40 +0000 Received: from 5a94b628fb86.2 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 5342CE41-3376-49E2-966A-FD100A29CD67.1; Mon, 26 Jun 2023 14:38:35 +0000 Received: from EUR05-AM6-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 5a94b628fb86.2 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Mon, 26 Jun 2023 14:38:35 +0000 Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15) by AS8PR08MB9479.eurprd08.prod.outlook.com (2603:10a6:20b:5ec::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.26; Mon, 26 Jun 2023 14:38:33 +0000 Received: from AS8PR08MB7991.eurprd08.prod.outlook.com ([fe80::1024:cf14:d520:9b38]) by AS8PR08MB7991.eurprd08.prod.outlook.com ([fe80::1024:cf14:d520:9b38%7]) with mapi id 15.20.6521.026; Mon, 26 Jun 2023 14:38:33 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 28382318-142f-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=rjZb7Cxr7kYTBm43aobBHPpZfLcwdpqGYl5mGGIPGZo=; b=kPcBTC6pFxTfMY/sSuF2Qz7euwMe7uFFPT3OK/NAKWgQcIpdiWrzMRiJI8gB8OHSLGsTKoN9CTxm3VMWz4CAq9bWWuX4pBz5Cv3/4NY4Kq4LzpWMRJnd+HBGJMeb8BqJcxLMku15qI7jxwCILIoB423EYkxXYeLK0Z9yf4V4Dz4= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C X-CR-MTA-TID: 64aa7808 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=JPLDsKylJGOBSRS68B7s3JiRAxI6D+BWUuzPeZhs66zromdGA8Y7SyWeCMhhfulwhB9qR73huIM3Ma0M86qVh0BlA0GBmoeJau/kMBMa0Iuofp2aYQ98TTThd7d/Rdv5reFm8ZZe0QJjkMJH3rKe3RVuZYJt3CDGo9zQpZgGB1f6iEHyfWX9PmXolrdsxoZDhQFcK2XbxwnIfnfmI7knm/jtZiFTbq5lZULgAH5sy5xBpV8SwXWNw8upzoQHNJNRurU3jA3543rYWxQdfDyaE+PCMUmaiHfLzoKKPq7WxRXmaJfGM8r1NxZ1NH8MBw6/28QWOSvjtOY8xbFRnhV7cA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=rjZb7Cxr7kYTBm43aobBHPpZfLcwdpqGYl5mGGIPGZo=; b=nSRCiTo1W15LyAG+5DiriMl7DI2dxG9bzhwvsFVgSCw7VttXqvZV0mSYKn4dLGM8fNAou1KWgHMSnsSGPcC4KSbbZhE8wLu12R1c8emNJ1s0Di0f+F9Bls9HwjDp8pG4aO2jD9Qi3xwQWXNy7rWC+0do2M33VpJXlLrbUY+oBdksHiav6h9COv3hgCNH5EkxMY4sPHKfbv5HBxVxdDrQ4kC1KN0yyFWZ2YIvccxjk/EW78FSsP5AjBuKJ2B7ZigKwjUgka1immO/pnxzjS2XEnZIL+bJ+cUyFiAo9OnjS0XP5lHdijdqeUkDTJHubCj3TLr6C7PoxDdZ/oHO1abdpQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=rjZb7Cxr7kYTBm43aobBHPpZfLcwdpqGYl5mGGIPGZo=; b=kPcBTC6pFxTfMY/sSuF2Qz7euwMe7uFFPT3OK/NAKWgQcIpdiWrzMRiJI8gB8OHSLGsTKoN9CTxm3VMWz4CAq9bWWuX4pBz5Cv3/4NY4Kq4LzpWMRJnd+HBGJMeb8BqJcxLMku15qI7jxwCILIoB423EYkxXYeLK0Z9yf4V4Dz4= From: Henry Wang To: Julien Grall , "xen-devel@lists.xenproject.org" CC: Luca Fancellu , "michal.orzel@amd.com" , Julien Grall , Stefano Stabellini , Bertrand Marquis , Volodymyr Babchuk Subject: RE: [PATCH 0/9] xen/arm: Enable UBSAN support Thread-Topic: [PATCH 0/9] xen/arm: Enable UBSAN support Thread-Index: AQHZp6aHjOc4oNmRbEG6FK4/WdqFwa+dJu5Q Date: Mon, 26 Jun 2023 14:38:33 +0000 Message-ID: References: <20230625204907.57291-1-julien@xen.org> In-Reply-To: <20230625204907.57291-1-julien@xen.org> Accept-Language: zh-CN, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ts-tracking-id: A3C28D4811AEF14CAB02AB5A9D8A2C3B.0 x-checkrecipientchecked: true Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-traffictypediagnostic: AS8PR08MB7991:EE_|AS8PR08MB9479:EE_|DBAEUR03FT009:EE_|PA4PR08MB6016:EE_ X-MS-Office365-Filtering-Correlation-Id: f2a55b36-97ac-43f9-d68c-08db765308fc x-checkrecipientrouted: true nodisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: mOyX5Q0OtURGPTxOqmQYa6Oxc7M5sqSEE5j/grYqjJhQ18vRDRGT2jXP2shF5G1FggVpcb9z/6AYWc8pBPL4CHQAjNnfHzYXNGoKYTlPx483hOVvFl24jXBifthgri1Ey8KSdULFZSzq0KxsDAYky4fzOxfWLXezM5fh5Yw07bIJOJPPyqmVd4eu46+NDZtBdZOBNZEtaXk9vRjS2poWWdQL++Kl+98t7KowCeuRwfqs5QPKyaBXpTbk/FV02uCtsX3IMOdaOwzdzI+RvYCBeD+1e/2r9e6JvD+8LitB9m2FanY6+zYjm4FDP1wl8+fT0poKF2DNiOw+Nwt9d6MwV4xc1CousyQSAa2MwZ/LVH+4OVcXMG0JDPYrSY7cRsuLvlYGcP6NTT+Xrxbf68vaO4OFeYlTqjuTLeUJwkmrDlscJZizI6M4lI62X1I4ujHNhm7CFiVwZ2+dZgAgWv+gA8kQZw6Qh9IYm/u3fyMknpOP5al8eRTzeuUAhD2Rw31gwNzyau2pX5nS28aG7MsduCRqjODSDz31D++epY+wZQ2elWtXRgZPhV8Vkavz0Q5raJAl3mHIb6ls97n2YOANKawgUXkKvO3uQ5bxIsiexbewHsfRWDIMo/O1Tri3xPNm X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB7991.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(346002)(376002)(136003)(366004)(396003)(39860400002)(451199021)(110136005)(71200400001)(83380400001)(54906003)(478600001)(7696005)(26005)(186003)(6506007)(9686003)(2906002)(5660300002)(52536014)(33656002)(38100700002)(122000001)(316002)(55016003)(76116006)(66946007)(8936002)(8676002)(41300700001)(66446008)(86362001)(4326008)(66476007)(64756008)(66556008)(38070700005);DIR:OUT;SFP:1101; Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR08MB9479 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: DBAEUR03FT009.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: 5b62e84e-d7b2-47c5-2ea3-08db7653047d X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: sIlFFvEDBZ7G3uy196Lv/s4tWw2KEJGWgBikLnkPwPtrw10y26FJZTm0JeCr2JvWJcUolpwtgsEpNEznBbobS7HavI6EIrKg86lwvtiIx1hG8PxvikCu5MhNIXUG0N2BdR4+9ONpzv5uVND2JTwOzWZw3DlkqtZftdpmo90qLQ0NUpxXraRKNebrJu0++T8s72NdiNTS67rHuUGr04k++bVTQ5TIDj6c3XBHlbB+5BqYrvxFeyMv6Q+2ky2oPfk1EG8HWDVl8bV5KoC+SPaMln2FqWJ13RfgppI5acS7Hd47xadK9jS13KtgDCgsZoHek4Zs/MacB4+RKMdX0TjhcWJuioMmbNyRC2yUTj8Nxm0ln1TudzVbdCwZ3JyhbyTW8sBlAi8XyQsS0HVrmX0VxddJ49k31ozujyHKGOWaQOHVU2yDXDTC2naY1JHtXr6J1vu1ehb/LZbI3A/SMHyyR69FibiN7fUseAHDkm6MyftPME/DEuSti/IERhICWeP8MFiihhx9zQvK6YBo3asHl91g9H9W+1fi57KFfJxv/5hD2XQYllNcOsQf1Uk213rC8nsrX4ugNLSGFsbpHUE+x+Pcvj3n7AzUlYOTuct2zA/Bt3iUC9JDjWyt3bVaTLFtvzsKZiDdhapwh3uEgfDfxIi2MXsUI39nT5cJQi4krLbMe3qeZEjMR8Mt/1XcmzD0ubI/YkGf3y2rvNoVZmmX5eg74plZ3InnhRV/0Arkzzrff3oQ+quQQSKDNGOGRz0E X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230028)(4636009)(376002)(346002)(136003)(396003)(39850400004)(451199021)(46966006)(36840700001)(40470700004)(110136005)(7696005)(478600001)(54906003)(33656002)(107886003)(2906002)(9686003)(186003)(6506007)(26005)(82310400005)(316002)(70206006)(52536014)(8676002)(41300700001)(5660300002)(70586007)(8936002)(81166007)(356005)(4326008)(40460700003)(86362001)(82740400003)(55016003)(36860700001)(83380400001)(47076005)(40480700001)(336012);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Jun 2023 14:38:40.8051 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: f2a55b36-97ac-43f9-d68c-08db765308fc X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: DBAEUR03FT009.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR08MB6016 Hi Julien, > -----Original Message----- > From: Julien Grall > Subject: [PATCH 0/9] xen/arm: Enable UBSAN support >=20 > Julien Grall (9): > xen/arm: Check Xen size when linking > xen/arm64: head: Don't map too much in boot_third > xen/arm32: head: Don't map too much in boot_third > xen/arm32: head: Remove 'r6' from the clobber list of > create_page_tables() > xen/arm: Rework the code mapping Xen to avoid relying on the size of > Xen > xen/arm64: entry: Don't jump outside of an alternative > xen/arm64: head: Rework PRINT() to work when the string is not withing > +/- 1MB > xen/arm: Allow the user to build Xen with USBAN > xen/arm32: vfp: Add missing U for shifted constant I put the series in our CI this morning and I can now confirm each of these patches will not breaking existing current Xen functionality, so: Tested-by: Henry Wang I put the tag in the cover letter to avoid the spamming mails in the mailin= g list. Feel free to apply the tag to each commit if you want to. Kind regards, Henry From xen-devel-bounces@lists.xenproject.org Mon Jun 26 14:45:05 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 14:45:05 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555571.867451 (Exim 4.92) (envelope-from ) id 1qDnSY-0006We-CE; Mon, 26 Jun 2023 14:44:54 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555571.867451; Mon, 26 Jun 2023 14:44:54 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDnSY-0006WX-9Q; Mon, 26 Jun 2023 14:44:54 +0000 Received: by outflank-mailman (input) for mailman id 555571; Mon, 26 Jun 2023 14:44:53 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDnSX-0006WP-3o for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 14:44:53 +0000 Received: from EUR04-HE1-obe.outbound.protection.outlook.com (mail-he1eur04on2057.outbound.protection.outlook.com [40.107.7.57]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 01ece363-1430-11ee-b237-6b7b168915f2; Mon, 26 Jun 2023 16:44:52 +0200 (CEST) Received: from DB7PR05CA0010.eurprd05.prod.outlook.com (2603:10a6:10:36::23) by DB9PR08MB8740.eurprd08.prod.outlook.com (2603:10a6:10:3d0::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.24; Mon, 26 Jun 2023 14:44:22 +0000 Received: from DBAEUR03FT065.eop-EUR03.prod.protection.outlook.com (2603:10a6:10:36:cafe::5f) by DB7PR05CA0010.outlook.office365.com (2603:10a6:10:36::23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.33 via Frontend Transport; Mon, 26 Jun 2023 14:44:22 +0000 Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by DBAEUR03FT065.mail.protection.outlook.com (100.127.142.147) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.15 via Frontend Transport; Mon, 26 Jun 2023 14:44:22 +0000 Received: ("Tessian outbound d6c4ee3ba1eb:v142"); Mon, 26 Jun 2023 14:44:22 +0000 Received: from 9fa633d52cb4.2 by 64aa7808-outbound-1.mta.getcheckrecipient.com id F15CC4D9-D045-4117-8A85-C3103FBE5F35.1; Mon, 26 Jun 2023 14:44:16 +0000 Received: from EUR02-VI1-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 9fa633d52cb4.2 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Mon, 26 Jun 2023 14:44:16 +0000 Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15) by DBAPR08MB5687.eurprd08.prod.outlook.com (2603:10a6:10:1b1::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.26; Mon, 26 Jun 2023 14:44:13 +0000 Received: from AS8PR08MB7991.eurprd08.prod.outlook.com ([fe80::1024:cf14:d520:9b38]) by AS8PR08MB7991.eurprd08.prod.outlook.com ([fe80::1024:cf14:d520:9b38%7]) with mapi id 15.20.6521.026; Mon, 26 Jun 2023 14:44:13 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 01ece363-1430-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=c6opY+aZQujdikmovOWyStccBto0lwrAnsqxf0G6S40=; b=1AmRk0GdjMlZ/Kjxzc6kJQnBgMQQFgeNRHWHcPhS+JPExM2OJOoaN8wUmz8pZY7efvHAs5dvAek/PS/2tvaK9bOy4k1PwhOD9NhnezuSdsi87eV4CyS9EOughgEGT6KMp5DQ+NdGtJTHHr1Alxdvn7GFN5Y7cB7/5MwFlFvMh/g= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C X-CR-MTA-TID: 64aa7808 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=YeAyZyfmpekO8W5RPZ5SAvyRYoQch5k+DohO0gGo+MPh/DemgMG+XtpBlEGE7oQ6tOZYvz91C5VSsoKe718piHumss5HsYpzXlmx1kG4iZMZHu3QW5l8BtVac0wFNacw+e2k/8DBYHsqDZPwQdCPdzsJ4OehoZiH9WnPqB3msT94eXajimP0i4zuIioTCN+ivC70Z2aEoBKmHuvnZGGNoZXfIaSxWYo2DybtrtBxL7ZCsOs3bTGfECK+22fakK3xxdjpkdTelrc8ATBqFOKkt58Rf2JBTOWw2rd0cdwU+KQbYb87BRRoT+x6iXq/RaX5bVnVXt+RaDHC06NwN7LPwA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=c6opY+aZQujdikmovOWyStccBto0lwrAnsqxf0G6S40=; b=Q3KKdm3xWLIIXju26Dussb+VI4AR7vrxDI6wJVLPbJLyyrOntsCtvBA8xKUSGWyIJKYIxgKZ1HQlHRAnfKw72HJcJYCJEzVRuKjVc7L/4sL54Z11YWIE5esWTaFMekWgUTvxHlcf7VmvlgYyHgNZg8L/tocLFv/tvd/uXNIkqgrhk6QpaBCOymUBAkYeddJ4MJXQgPZQBbzrbMPRxQCKhCD+kZaqkptrz3uMpmGTzRbSiHh6ZcCzo4nqPbNIzj5I9J+LwPSV+4IBwCIRkGKDrQ2desrDHIcQE6u+a4MgjhdyQRmoWbXILflblX0x8Cw32X18hi/3oNbT14TALOWdhw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=c6opY+aZQujdikmovOWyStccBto0lwrAnsqxf0G6S40=; b=1AmRk0GdjMlZ/Kjxzc6kJQnBgMQQFgeNRHWHcPhS+JPExM2OJOoaN8wUmz8pZY7efvHAs5dvAek/PS/2tvaK9bOy4k1PwhOD9NhnezuSdsi87eV4CyS9EOughgEGT6KMp5DQ+NdGtJTHHr1Alxdvn7GFN5Y7cB7/5MwFlFvMh/g= From: Henry Wang To: Julien Grall , "xen-devel@lists.xenproject.org" CC: Luca Fancellu , "michal.orzel@amd.com" , Julien Grall , Stefano Stabellini , Bertrand Marquis , Volodymyr Babchuk Subject: RE: [PATCH 7/9] xen/arm64: head: Rework PRINT() to work when the string is not withing +/- 1MB Thread-Topic: [PATCH 7/9] xen/arm64: head: Rework PRINT() to work when the string is not withing +/- 1MB Thread-Index: AQHZp6aOU3BIgupHiUmzMkZr6l2qFK+dKdeQ Date: Mon, 26 Jun 2023 14:44:13 +0000 Message-ID: References: <20230625204907.57291-1-julien@xen.org> <20230625204907.57291-8-julien@xen.org> In-Reply-To: <20230625204907.57291-8-julien@xen.org> Accept-Language: zh-CN, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ts-tracking-id: 551957A0D23DA64FA46C0F9B6DCD8076.0 x-checkrecipientchecked: true Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-traffictypediagnostic: AS8PR08MB7991:EE_|DBAPR08MB5687:EE_|DBAEUR03FT065:EE_|DB9PR08MB8740:EE_ X-MS-Office365-Filtering-Correlation-Id: ffc27e41-2184-488c-7a27-08db7653d476 x-checkrecipientrouted: true nodisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: h/0F3ib1TEqqsXNiGduTWH8e+M+o4szJESe/iJhwli6eYwEPC4vYiZ3IYI1GdlXpFBSJUeiuASzotUDrh26Rq5BFfMuUm6PY9KzOKLaTGuwOfP2jcn9yP2D7T5hiPqiLjoFkK2Vv8cVNT+owVMD8Q2HB+VXCJvTeFl6ThaTt76dgi2eZ+FdZHc9I8dht6HUx2G8qzIxOwylyNtrqsNyveyAAKgdl1MuDTiL6VY/uFY/fmG6IWcoG/2QEqtZrar+xpzP2qBQyi8jrqnyPdrLfruF3mV/Y1RroCiKeVT3kkzGihazj2Y139qIaRetHaFy9sgB1ln8mVe50eLG/h5ZjAZVMldCjNU6nHawSMDkq9lw0wy4Mb0lQpYvWIUuLlSDS2DlYn3foC8gUaAUilmYdKAe+Egw2k1ks2KV5uQAOeYgTWxNGCc8gMjvekRHBA0beeaGYLNOaB6F36eUbH5ZF1xUOIbpWX1r3VHyXecoH2Xo5vl3KQSHbhHmC5XNewhILNGoR1QbV25xaNuefW3oJ6PWzeDvH8xPGeCzGU476vS3yfLg9qjvsbO69t/enYnBCo/A2Et97a9PntdMRCFLqNVTB6gpTAfpDt2DaTWFSI8jA1DKgsR8C/tRu86TYEgve X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB7991.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(396003)(346002)(136003)(39850400004)(366004)(376002)(451199021)(9686003)(478600001)(7696005)(71200400001)(54906003)(110136005)(83380400001)(26005)(186003)(6506007)(66446008)(2906002)(4744005)(5660300002)(52536014)(33656002)(38100700002)(122000001)(4326008)(66946007)(55016003)(76116006)(316002)(86362001)(8936002)(8676002)(41300700001)(66556008)(64756008)(66476007)(38070700005);DIR:OUT;SFP:1101; Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBAPR08MB5687 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: DBAEUR03FT065.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: b2d4e54f-a722-4632-c938-08db7653cf7a X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: d2HqDS5eq+qnjJns1/3S0gBT6PMVpOtBYc0yuilc/BM1TqPfvSAkH3zrI76Ohv5i0ojZErsdklX1BzB/l1nDR7tCDwWJivwtQ0lEJTxjK9Sjd9N+MPnJhEFtGS036RVj8VNqBdrB4RXNGRnGAHEdDb15O6ytVE40ZBfCEeK+E+YzR96Ff/E5grRwq17UAlUQ00qaiOKX7+Rloy8yBnmhnu6dmPrg/QHz9/qSdfQgHnWF5Ddxi0osITMOiCj9FtpzmWgoawJHz/xHld5TbrKYb5EqwwlZjuoXx5bd87hGjhDzBxdv+nICtNIejfm3jm+RBc3tNprNnnZvUDVYyydic3Rc5gh+PUJJ02QQF3l3i5StHDBF3bz2OeEqTHhmGZTpLNxkYOYczGFdvxaOJx7R6CywEixkvhuB8bFeIH4nYMBEN/HMJNXN4Wb73qcnY2HIPTOEpkgrqVICxT421gVgPc1/wjtHp0svoH/U2HHXzmbcaIivRnAJ/TXDuFnBsOQ8DIXW6Z9+7Kv1AOH7Z9TUWCYd4+KwY5LXxqVU/hNnzwG5y3WiMsNTbcvgJS1ZTiCa859TeYYnnd2pCCrF3D3EUswUWYQX7QMQl0Exrvg+NcmO2PDfd1/E0UcZ82KZktjQxFoieiD8jh9Ho/d22SJDUuX9wNbTPxQbhBO2MDDicENeyR/QA81Ug9VoE+PIxawn6bcH4jaGFlM6iLtL9ze1F9iZOhdWectMrjCWojfC/+4= X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230028)(4636009)(376002)(346002)(39860400002)(136003)(396003)(451199021)(46966006)(36840700001)(40470700004)(2906002)(4744005)(7696005)(82310400005)(107886003)(356005)(81166007)(82740400003)(83380400001)(336012)(6506007)(26005)(47076005)(9686003)(186003)(36860700001)(55016003)(40480700001)(40460700003)(41300700001)(110136005)(54906003)(86362001)(478600001)(316002)(70206006)(4326008)(33656002)(70586007)(5660300002)(52536014)(8676002)(8936002);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Jun 2023 14:44:22.1954 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: ffc27e41-2184-488c-7a27-08db7653d476 X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: DBAEUR03FT065.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR08MB8740 Hi Julien, > -----Original Message----- > Subject: [PATCH 7/9] xen/arm64: head: Rework PRINT() to work when the > string is not withing +/- 1MB >=20 > From: Julien Grall >=20 > The instruction ADR is able to load an address of a symbol that is > within the range +/- 1 MB of the instruction. >=20 > While today Xen is quite small (~1MB), it could grow up to 2MB in the > current setup. So there is no guarantee that the instruction can > load the string address (stored in rodata). >=20 > So replace the instruction ADR with the pseudo-instruction ADR_L > which is able to handle symbol within the range +/- 4GB. >=20 > Signed-off-by: Julien Grall Reviewed-by: Henry Wang Kind regards, Henry From xen-devel-bounces@lists.xenproject.org Mon Jun 26 15:25:44 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 15:25:44 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555578.867460 (Exim 4.92) (envelope-from ) id 1qDo5p-0002fd-Gu; Mon, 26 Jun 2023 15:25:29 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555578.867460; Mon, 26 Jun 2023 15:25:29 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDo5p-0002fW-EP; Mon, 26 Jun 2023 15:25:29 +0000 Received: by outflank-mailman (input) for mailman id 555578; Mon, 26 Jun 2023 15:25:27 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDo5n-0002fM-KH for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 15:25:27 +0000 Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id ab4645b6-1435-11ee-8611-37d641c3527e; Mon, 26 Jun 2023 17:25:23 +0200 (CEST) Received: from nico.bugseng.com (unknown [151.35.129.1]) by support.bugseng.com (Postfix) with ESMTPSA id 3C40E4EE0738; Mon, 26 Jun 2023 17:25:20 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: ab4645b6-1435-11ee-8611-37d641c3527e From: Nicola Vetrini To: xen-devel@lists.xenproject.org Cc: sstabellini@kernel.org, michal.orzel@amd.com, xenia.ragiadakou@amd.com, ayan.kumar.halder@amd.com, consulting@bugseng.com, jbeulich@suse.com, andrew.cooper3@citrix.com, roger.pau@citrix.com, bertrand.marquis@arm.com, julien@xen.org, Nicola Vetrini , George Dunlap , Wei Liu Subject: [XEN PATCH v5] xen/include: avoid using a compiler extension for BUILD_BUG_ON_ZERO Date: Mon, 26 Jun 2023 17:24:35 +0200 Message-Id: <10f8685626fa4a9d131186a23b293479cb92da38.1687791626.git.nicola.vetrini@bugseng.com> X-Mailer: git-send-email 2.34.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Redefine BUILD_BUG_ON_ZERO to avoid using a compiler extension that gives an acceptable semantics to C99 undefined behavior 58 ("A structure or union is defined as containing no named members (6.7.2.1)"). The first definition includes an additional named field of type char. The chosen ill-formed construct for the second definition is a struct with a named bitfield of width 0 when the condition is true, which prevents the UB without using the compiler extension while keeping the semantics of the construct. The choice of the bitwise AND operation to bring the result to 0 when cond is false boils down to possibly better portability. Signed-off-by: Nicola Vetrini --- Changes in V2: - Avoid using a VLA as the compile-time assertion - Do not drop _Static_assert Changes in V3: - Changed the operation to bring the result to 0 when the construct does not lead to a compilation error Changes in V4: - Switched to a shorter construct for the second definition. Changes in V5: - Dropped 'U's from the macro definitions --- xen/include/xen/lib.h | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/xen/include/xen/lib.h b/xen/include/xen/lib.h index 67fc7c1d7e..460cab6734 100644 --- a/xen/include/xen/lib.h +++ b/xen/include/xen/lib.h @@ -51,9 +51,10 @@ e.g. in a structure initializer (or where-ever else comma expressions aren't permitted). */ #define BUILD_BUG_ON_ZERO(cond) \ - sizeof(struct { _Static_assert(!(cond), "!(" #cond ")"); }) + (sizeof(struct { char c; _Static_assert(!(cond), "!(" #cond ")"); }) & 0U) #else -#define BUILD_BUG_ON_ZERO(cond) sizeof(struct { int:-!!(cond); }) +#define BUILD_BUG_ON_ZERO(cond) \ + (sizeof(struct { unsigned u : !(cond); }) & 0U) #define BUILD_BUG_ON(cond) ((void)BUILD_BUG_ON_ZERO(cond)) #endif -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 26 15:28:44 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 15:28:44 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555584.867471 (Exim 4.92) (envelope-from ) id 1qDo8n-0003ER-VC; Mon, 26 Jun 2023 15:28:33 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555584.867471; Mon, 26 Jun 2023 15:28:33 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDo8n-0003EK-S5; Mon, 26 Jun 2023 15:28:33 +0000 Received: by outflank-mailman (input) for mailman id 555584; Mon, 26 Jun 2023 15:28:33 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDo8n-0003EC-7O for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 15:28:33 +0000 Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 1bd8d44c-1436-11ee-b237-6b7b168915f2; Mon, 26 Jun 2023 17:28:32 +0200 (CEST) Received: from [192.168.1.198] (unknown [151.35.129.1]) by support.bugseng.com (Postfix) with ESMTPSA id A04964EE0738; Mon, 26 Jun 2023 17:28:29 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 1bd8d44c-1436-11ee-b237-6b7b168915f2 Message-ID: <7224e5c3-fd82-bc2a-7278-73b9adb44955@bugseng.com> Date: Mon, 26 Jun 2023 17:28:27 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [XEN PATCH v5] xen/include: avoid using a compiler extension for BUILD_BUG_ON_ZERO Content-Language: en-US To: xen-devel@lists.xenproject.org Cc: sstabellini@kernel.org, michal.orzel@amd.com, xenia.ragiadakou@amd.com, ayan.kumar.halder@amd.com, consulting@bugseng.com, jbeulich@suse.com, andrew.cooper3@citrix.com, roger.pau@citrix.com, bertrand.marquis@arm.com, julien@xen.org, George Dunlap , Wei Liu References: <10f8685626fa4a9d131186a23b293479cb92da38.1687791626.git.nicola.vetrini@bugseng.com> From: Nicola Vetrini In-Reply-To: <10f8685626fa4a9d131186a23b293479cb92da38.1687791626.git.nicola.vetrini@bugseng.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Sorry, this patch was not meant to be sent. -- Nicola Vetrini, BSc Software Engineer, BUGSENG srl (https://bugseng.com) From xen-devel-bounces@lists.xenproject.org Mon Jun 26 15:39:18 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 15:39:18 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555612.867499 (Exim 4.92) (envelope-from ) id 1qDoJ1-0005jv-8t; Mon, 26 Jun 2023 15:39:07 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555612.867499; Mon, 26 Jun 2023 15:39:07 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDoJ1-0005jo-43; Mon, 26 Jun 2023 15:39:07 +0000 Received: by outflank-mailman (input) for mailman id 555612; Mon, 26 Jun 2023 15:39:05 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDoIz-0005jP-O1 for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 15:39:05 +0000 Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 93ea932a-1437-11ee-8611-37d641c3527e; Mon, 26 Jun 2023 17:39:03 +0200 (CEST) Received: from nico.bugseng.com (unknown [151.35.129.1]) by support.bugseng.com (Postfix) with ESMTPSA id 237064EE073A; Mon, 26 Jun 2023 17:38:59 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 93ea932a-1437-11ee-8611-37d641c3527e From: Nicola Vetrini To: xen-devel@lists.xenproject.org Cc: sstabellini@kernel.org, michal.orzel@amd.com, xenia.ragiadakou@amd.com, ayan.kumar.halder@amd.com, consulting@bugseng.com, jbeulich@suse.com, andrew.cooper3@citrix.com, roger.pau@citrix.com, bertrand.marquis@arm.com, julien@xen.org, Nicola Vetrini , George Dunlap , Wei Liu Subject: [XEN PATCH v6] xen/include: avoid using a compiler extension for BUILD_BUG_ON_ZERO Date: Mon, 26 Jun 2023 17:37:41 +0200 Message-Id: <0b0d9a5614daac653b3bfbcfaa29a9b4c11286bb.1687793572.git.nicola.vetrini@bugseng.com> X-Mailer: git-send-email 2.34.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Redefine BUILD_BUG_ON_ZERO to avoid using a compiler extension that gives an acceptable semantics to C99 undefined behavior 58 ("A structure or union is defined as containing no named members (6.7.2.1)"). The first definition includes an additional named field of type char. The chosen ill-formed construct for the second definition is a struct with a named bitfield of width 0 when the condition is true, which prevents the UB without using the compiler extension while keeping the semantic of the construct. The choice of the bitwise AND operation to bring the result to 0 when cond is false boils down to possibly better portability. Signed-off-by: Nicola Vetrini --- Changes in V2: - Avoid using a VLA as the compile-time assertion - Do not drop _Static_assert Changes in V3: - Changed the operation to bring the result to 0 when the construct does not lead to a compilation error Changes in V4: - Switched to a shorter construct for the second definition. Changes in V5: - Dropped 'U's from the macro definitions. Changes in V6: - Fixed patch submission. --- xen/include/xen/lib.h | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/xen/include/xen/lib.h b/xen/include/xen/lib.h index 67fc7c1d7e..a8958ed57b 100644 --- a/xen/include/xen/lib.h +++ b/xen/include/xen/lib.h @@ -51,9 +51,10 @@ e.g. in a structure initializer (or where-ever else comma expressions aren't permitted). */ #define BUILD_BUG_ON_ZERO(cond) \ - sizeof(struct { _Static_assert(!(cond), "!(" #cond ")"); }) + (sizeof(struct { char c; _Static_assert(!(cond), "!(" #cond ")"); }) & 0) #else -#define BUILD_BUG_ON_ZERO(cond) sizeof(struct { int:-!!(cond); }) +#define BUILD_BUG_ON_ZERO(cond) \ + (sizeof(struct { unsigned u : !(cond); }) & 0) #define BUILD_BUG_ON(cond) ((void)BUILD_BUG_ON_ZERO(cond)) #endif -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 26 18:08:34 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 18:08:34 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555622.867507 (Exim 4.92) (envelope-from ) id 1qDqdB-0004Ra-AX; Mon, 26 Jun 2023 18:08:05 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555622.867507; Mon, 26 Jun 2023 18:08:05 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDqdB-0004RT-7u; Mon, 26 Jun 2023 18:08:05 +0000 Received: by outflank-mailman (input) for mailman id 555622; Mon, 26 Jun 2023 18:08:04 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDqd9-0004RL-SA for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 18:08:04 +0000 Received: from wout3-smtp.messagingengine.com (wout3-smtp.messagingengine.com [64.147.123.19]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 5f8d24c0-144c-11ee-8611-37d641c3527e; Mon, 26 Jun 2023 20:07:58 +0200 (CEST) Received: from compute5.internal (compute5.nyi.internal [10.202.2.45]) by mailout.west.internal (Postfix) with ESMTP id 386A0320095B; Mon, 26 Jun 2023 14:07:53 -0400 (EDT) Received: from mailfrontend1 ([10.202.2.162]) by compute5.internal (MEProxy); Mon, 26 Jun 2023 14:07:53 -0400 Received: by mail.messagingengine.com (Postfix) with ESMTPA; Mon, 26 Jun 2023 14:07:50 -0400 (EDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 5f8d24c0-144c-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= invisiblethingslab.com; h=cc:cc:content-type:content-type:date :date:from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:sender:subject:subject:to:to; s=fm2; t= 1687802872; x=1687889272; bh=NKYlru5Q8zyii4/RLMHTs5aFTdaMFCYIUB3 DGGzv8BI=; b=ZVMoOYbJ5EWeVEVChkCyEfWTN1kYNJgJJQnvkT3OJ5GO32Gh2Fs yEzda5itzvRvnXhCkSFwl9Gx5iFl0sLoJrJt0Den3fGG4qbYXg599pynQmrpAtGQ w5QWvgzQ9Oliw0j+BlYU7C3ei5gtPTimPAZLiXo0T8N0nvpxmBKsQxTqc7bLx945 2xls8r+sVjXLl1T0Po0Vk39/6uPVur8JoloqcvhArCAJhpQGFu26EElscgc+y82x uqj2ESxQT8CemMG0HiSmUs6nrAVqKHCX6Tl0iWBj/sP9YlalNsA0VlH1jNuZaOdq 9KZP9lr7gUKtn+xUdMCVAZpJCmcvxKKdwkQ== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-type:content-type:date:date :feedback-id:feedback-id:from:from:in-reply-to:in-reply-to :message-id:mime-version:references:reply-to:sender:subject :subject:to:to:x-me-proxy:x-me-proxy:x-me-sender:x-me-sender :x-sasl-enc; s=fm2; t=1687802872; x=1687889272; bh=NKYlru5Q8zyii 4/RLMHTs5aFTdaMFCYIUB3DGGzv8BI=; b=Sx86gt5SZcLtaVHVrdUCm+Qz4Zr4q 5UrSiWXMlC5J2vYIMn/t+3glVTglOH5uNn3BBvvBdlXvz+O9e8eY/1Fns9/Bovpx l/cNL3eSnkv1u7AhZFOb7+4twg003IWudiQPngh/wyLfWu7wjNqmvyzBY2L7sphq EsXMSwVfIA69GMan3mLUeWUJyhRlQOEqDV2WovGKVBtSX5qRH2FtVGbKO+iVigLk pwr15VcEW/rinjMiaCGz7Dqb/AaPNXNUPtiHCB5+0SIGuL+xIm9hKC8ytU+IjbGf jcgnb0tkFrguWMVEhtnsawWeYapaHBU35pVLmSZlGqJTzOz5hvpnYOE1w== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvhedrgeehfedgudduiecutefuodetggdotefrod ftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfgh necuuegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmd enucfjughrpeffhffvvefukfhfgggtuggjsehgtderredttdejnecuhfhrohhmpeforghr vghkucforghrtgiihihkohifshhkihdqifpkrhgvtghkihcuoehmrghrmhgrrhgvkhesih hnvhhishhisghlvghthhhinhhgshhlrggsrdgtohhmqeenucggtffrrghtthgvrhhnpefg udelteefvefhfeehieetleeihfejhfeludevteetkeevtedtvdegueetfeejudenucevlh hushhtvghrufhiiigvpedtnecurfgrrhgrmhepmhgrihhlfhhrohhmpehmrghrmhgrrhgv khesihhnvhhishhisghlvghthhhinhhgshhlrggsrdgtohhm X-ME-Proxy: Feedback-ID: i1568416f:Fastmail Date: Mon, 26 Jun 2023 20:07:46 +0200 From: Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= To: Luca Fancellu Cc: xen-devel@lists.xenproject.org, bertrand.marquis@arm.com, wei.chen@arm.com, Wei Liu , Anthony PERARD , Andrew Cooper Subject: Re: [PATCH 2/2] tools/python: Fix memory leak on error path Message-ID: References: <20230608135913.560413-1-luca.fancellu@arm.com> <20230608135913.560413-2-luca.fancellu@arm.com> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="Q7VND38KbmXZn2zz" Content-Disposition: inline In-Reply-To: <20230608135913.560413-2-luca.fancellu@arm.com> --Q7VND38KbmXZn2zz Content-Type: text/plain; protected-headers=v1; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Date: Mon, 26 Jun 2023 20:07:46 +0200 From: Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= To: Luca Fancellu Cc: xen-devel@lists.xenproject.org, bertrand.marquis@arm.com, wei.chen@arm.com, Wei Liu , Anthony PERARD , Andrew Cooper Subject: Re: [PATCH 2/2] tools/python: Fix memory leak on error path On Thu, Jun 08, 2023 at 02:59:13PM +0100, Luca Fancellu wrote: > Commit 56a7aaa16bfe introduced a memory leak on the error path for a > Py_BuildValue built object that on some newly introduced error path > has not the correct reference count handling, fix that by decrementing > the refcount in these path. >=20 > Fixes: 56a7aaa16bfe ("tools: add physinfo arch_capabilities handling for = Arm") > Signed-off-by: Luca Fancellu > Reported-by: Andrew Cooper Acked-by: Marek Marczykowski-G=C3=B3recki > --- > tools/python/xen/lowlevel/xc/xc.c | 9 +++++++-- > 1 file changed, 7 insertions(+), 2 deletions(-) >=20 > diff --git a/tools/python/xen/lowlevel/xc/xc.c b/tools/python/xen/lowleve= l/xc/xc.c > index e14e223ec903..d3ea350e07b9 100644 > --- a/tools/python/xen/lowlevel/xc/xc.c > +++ b/tools/python/xen/lowlevel/xc/xc.c > @@ -919,11 +919,16 @@ static PyObject *pyxc_physinfo(XcObject *self) > sve_vl_bits =3D arch_capabilities_arm_sve(pinfo.arch_capabilitie= s); > py_arm_sve_vl =3D PyLong_FromUnsignedLong(sve_vl_bits); > =20 > - if ( !py_arm_sve_vl ) > + if ( !py_arm_sve_vl ) { > + Py_DECREF(objret); > return NULL; > + } > =20 > - if( PyDict_SetItemString(objret, "arm_sve_vl", py_arm_sve_vl) ) > + if( PyDict_SetItemString(objret, "arm_sve_vl", py_arm_sve_vl) ) { > + Py_DECREF(py_arm_sve_vl); > + Py_DECREF(objret); > return NULL; > + } > } > #endif > =20 > --=20 > 2.34.1 >=20 --=20 Best Regards, Marek Marczykowski-G=C3=B3recki Invisible Things Lab --Q7VND38KbmXZn2zz Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQEzBAEBCAAdFiEEhrpukzGPukRmQqkK24/THMrX1ywFAmSZ0/IACgkQ24/THMrX 1yzkqgf+OrPOM0qKb03qS48qBXD9MmpOk8e34lOHB6btFKrC/glsw7ZrPMuhVPM0 evLyzDfULn1jAEYc+i8aPXOOtzFrFDxtS+2zA9IGdOSJUpyr/yjbPz1Gp8jTPhZN s7vvg+vhtlOIFabvaO4Ao/9/0N97qMZZw3wmer9cdjsHSHb14xhxV2VbLk4W17rz jOiWGHv1pNAghxteUpWWYSUcJRTbw6DS2lxFwNSsPEL0gtH4MttySzsG0FsyFr78 2Txg5aeD3aHq94hTXtT014paxTRn21MFQPqhcfjDoXQMIjEdHmFJPAGlpAhNsbei M8DlqnagmzKE7Rwaj7HybAXCaMTkMA== =6F/O -----END PGP SIGNATURE----- --Q7VND38KbmXZn2zz-- From xen-devel-bounces@lists.xenproject.org Mon Jun 26 18:15:02 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 18:15:02 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555628.867518 (Exim 4.92) (envelope-from ) id 1qDqjq-0005vo-2P; Mon, 26 Jun 2023 18:14:58 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555628.867518; Mon, 26 Jun 2023 18:14:58 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDqjp-0005vh-Ur; Mon, 26 Jun 2023 18:14:57 +0000 Received: by outflank-mailman (input) for mailman id 555628; Mon, 26 Jun 2023 18:14:56 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDqjo-0005vZ-56 for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 18:14:56 +0000 Received: from NAM11-CO1-obe.outbound.protection.outlook.com (mail-co1nam11on20610.outbound.protection.outlook.com [2a01:111:f400:7eab::610]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 57f1e880-144d-11ee-8611-37d641c3527e; Mon, 26 Jun 2023 20:14:53 +0200 (CEST) Received: from MW4PR04CA0386.namprd04.prod.outlook.com (2603:10b6:303:81::31) by PH7PR12MB5735.namprd12.prod.outlook.com (2603:10b6:510:1e2::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.23; Mon, 26 Jun 2023 18:14:49 +0000 Received: from CO1NAM11FT015.eop-nam11.prod.protection.outlook.com (2603:10b6:303:81:cafe::82) by MW4PR04CA0386.outlook.office365.com (2603:10b6:303:81::31) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.33 via Frontend Transport; Mon, 26 Jun 2023 18:14:48 +0000 Received: from SATLEXMB04.amd.com (165.204.84.17) by CO1NAM11FT015.mail.protection.outlook.com (10.13.175.130) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6500.47 via Frontend Transport; Mon, 26 Jun 2023 18:14:48 +0000 Received: from SATLEXMB06.amd.com (10.181.40.147) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Mon, 26 Jun 2023 13:14:47 -0500 Received: from SATLEXMB04.amd.com (10.181.40.145) by SATLEXMB06.amd.com (10.181.40.147) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Mon, 26 Jun 2023 13:14:47 -0500 Received: from xcbayankuma40.xilinx.com (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server id 15.1.2507.23 via Frontend Transport; Mon, 26 Jun 2023 13:14:46 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 57f1e880-144d-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=nPms2fW+NGjL8xmVhSmiK5ykPeQHyTYjxpzm5yziXrMoZW8UZlY/5xD5NvJDA38uTAuEZPymFQK3RN58veFjG4Qv+sm8ZGrXgGbVgKY98YJ2Q4E1DQ1xZLBs64l94C08mMRL/kZGNI0go+dfjS+MElMixmmY3fjDXq/RbOQi+EFXfIW+h5DT9QPWsOqWLrIiNIWa9FmvXIlxmGp4gvdLZU7wfRlhetPYw0k5MbCwZwnGbFVMI2h+pEh5S4JFyZYVsKLmQ8OylXKfuH7All96hNzjyLa/rgPHTITNwBBhGIOYtxaNsRkZAQRDWlA2Su+D265XDUY0jk/58TmM4mm4Gw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=V6yihoa+/80SBfUX8wWhjluFGN6I/haOtnxcY6AQwwc=; b=BS6iKZVR+BO/4DWLJlapv2cWrnAq6NBiOLaCraZym+rqjg+Fk1qXQOKc9jePCL850M49jER027IYS58yc1kPJuAi+T6pwq0ZgjUaCv5cZ7sMFPSjCVgsCRyaS4yY6FmOktWSwq21VPQ+S35XFV2oozSCWgDuAeD+QaQaFIPucGzPzuHba+EJlTHyfrwwPFc1m6nUA8pmLxH5TD4h/2c0W8r3gjDqDAcZ9HHneiuwK/eohuGx9p7wbV4N2M5uOvUL9GRIfL5IJ1BKb6r8L4kku6LICa+cGHsojf7MtvMurYGIu1Sve67IZe6uak7E057GHQwFst3b+3zF32eIG8qYlA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=V6yihoa+/80SBfUX8wWhjluFGN6I/haOtnxcY6AQwwc=; b=WG/k700E8BBMv1oO3db6F4HZ9NeoBnIyy7FEFjpkHJFqTXWo2QsPxuDQh8+GwV1nnLOOz6qWhQuWfkXKREg0hX70pF/OUavSmP2Qk84gQFAslRHGepuSaoqGhN1/eMHemz54QZ+VOBpXxQkSOpgAPA3rMDngzxHs5VebdoBVOHw= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C From: Ayan Kumar Halder To: CC: , , , , , Ayan Kumar Halder Subject: [XEN v2] xen/arm: arm32: Allow Xen to boot on unidentified CPUs Date: Mon, 26 Jun 2023 19:14:44 +0100 Message-ID: <20230626181444.2305769-1-ayan.kumar.halder@amd.com> X-Mailer: git-send-email 2.25.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO1NAM11FT015:EE_|PH7PR12MB5735:EE_ X-MS-Office365-Filtering-Correlation-Id: 8b6239a9-18dc-4a91-2395-08db76713a5f X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: n8Tza29vAMltl/hYUw7uY9T4fgG1WmMzatdgVyXM3sFLR+K9CzQeZ7Ub83sGMEQ9byyfJLFquZE+bhoiK1zF1rVyZDoR+4kMHOIB98kNXHM+epegL2SMH5ci30+0lqzfnh34W52KYl8uEkOehl+0cD86bugjeyi4kp1VGiSHaLyduhvXNMbEZI83rO5IKHHo6VvveZ9f8SiqLYuMSd42iNR3uXM74lH+1gPdaX+q4CNymQCdkn4oaQvXj15t11Oof5mD8YIGzRrB1QsM+eIZ7QmiI03a6cMt4S73XxM7p127Gv+tE9LONYIh3hJtYyA6u3izWcm4h23vhJ/9icd8SWWp9Ov6Mx3+7q3iJ1T3KXfQ6ceQ15ic4jW5ZWIzZVjCeR0SG19H1Kbtfpp9pNTw+tEJizxTFyiEaJ6seM0Wjm3WV4cITDH0xWY10i9Lrjf54+dTrbEqxyiyZGThj5zgt5BP2SXaMLDOHqcniA0YzF1h0vI6Y421xlpuSAYl/1JcEhzyOL2hpEJyVLefSs9TvJgpwJHu4uACLU6su8w5Lvg/MXpVLjK6iv7xPwBnREkPUB62mwLf9T/1Vda06P6Ltg393iPDCJg01gtObZ43EHF5PqcxvQfsWeZsrYzd3wa1sEUowILY+Rtm0g1GurILN4vZEaeyHs0gRP7qBZFK6ZYykNiugthg/OWDGbvvm1Jm2jRI4exlok/5ketgKcnXt7tLWjMHEAuGPYjbOsfv/Jafz18n8yBDHlKGUo+yUV3Denn6cmXOtWS5EfdV/voFpg== X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(376002)(136003)(396003)(346002)(451199021)(40470700004)(36840700001)(46966006)(2906002)(4744005)(186003)(82310400005)(2616005)(82740400003)(83380400001)(81166007)(1076003)(26005)(47076005)(336012)(426003)(356005)(36860700001)(40480700001)(40460700003)(41300700001)(54906003)(86362001)(478600001)(316002)(36756003)(4326008)(70206006)(103116003)(6916009)(70586007)(5660300002)(8676002)(8936002)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Jun 2023 18:14:48.4034 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 8b6239a9-18dc-4a91-2395-08db76713a5f X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com] X-MS-Exchange-CrossTenant-AuthSource: CO1NAM11FT015.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH7PR12MB5735 Currently if the processor id is not identified (ie it is missing in proc-v7.S) , then Xen boot fails quite early. We have removed this restriction as for some CPUs (eg Cortex-R52), there isn't any special initialization required. Signed-off-by: Ayan Kumar Halder --- Changes from - v1 - "[PATCH v1] xen/arm: arm32: Add support to identify the Cortex-R52 processor" No need to add R52 proc id and empty stubs as there is no cpu initialization required. xen/arch/arm/arm32/head.S | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/xen/arch/arm/arm32/head.S b/xen/arch/arm/arm32/head.S index f9f7be9588..3e88178552 100644 --- a/xen/arch/arm/arm32/head.S +++ b/xen/arch/arm/arm32/head.S @@ -324,7 +324,7 @@ cpu_init: PRINT("- Missing processor info: ") print_reg r4 PRINT(" -\r\n") - b fail + b cpu_init_done 1: /* Jump to cpu_init */ ldr r1, [r1, #PROCINFO_cpu_init] /* r1 := vaddr(init func) */ -- 2.25.1 From xen-devel-bounces@lists.xenproject.org Mon Jun 26 18:17:26 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 18:17:26 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555632.867528 (Exim 4.92) (envelope-from ) id 1qDqm3-0006Vu-EY; Mon, 26 Jun 2023 18:17:15 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555632.867528; Mon, 26 Jun 2023 18:17:15 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDqm3-0006Vn-Aj; Mon, 26 Jun 2023 18:17:15 +0000 Received: by outflank-mailman (input) for mailman id 555632; Mon, 26 Jun 2023 18:17:14 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDqm2-0006Vg-4O for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 18:17:14 +0000 Received: from NAM10-DM6-obe.outbound.protection.outlook.com (mail-dm6nam10on2061c.outbound.protection.outlook.com [2a01:111:f400:7e88::61c]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id ab4fc033-144d-11ee-b237-6b7b168915f2; Mon, 26 Jun 2023 20:17:12 +0200 (CEST) Received: from SN6PR12MB2621.namprd12.prod.outlook.com (2603:10b6:805:73::15) by MN0PR12MB6246.namprd12.prod.outlook.com (2603:10b6:208:3c2::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.23; Mon, 26 Jun 2023 18:17:07 +0000 Received: from SN6PR12MB2621.namprd12.prod.outlook.com ([fe80::8018:78f7:1b08:7a54]) by SN6PR12MB2621.namprd12.prod.outlook.com ([fe80::8018:78f7:1b08:7a54%2]) with mapi id 15.20.6521.026; Mon, 26 Jun 2023 18:17:07 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: ab4fc033-144d-11ee-b237-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=gwk2IyBnTKtpf5qDF7Rg5Rpmi8IwwDjsGLaTCH2xzR1aJTvk5mMzwLDWlC9xtDf7X4CwKF8o5SkbZcbo48Y1tcCUVnpxJ7QZZJSWaYeIT8Az50Oqs+Du49XN4qJN3nZg63xJ6CHPSB6yfHVQxu6OGx+0GLJqKtMxPuqkjYv0yflcOhH6XM45kQYtOfE9Vvx6tgirqmWzO/PtdsjfNplpDPleB7ATHpmHgH6xnL0GFeYkfWqKnBZU8FGo7VZavukpTWsCZb3kyqp3wqskXIrMXkYwUAnJrFUUmwy+fHNrxpSnuH9y1dm3sVHemSn765JSVDOTSnCs6HN74RWRe0u9fA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=oeHXLEtbheAf+jFSN86qIDwoxCZcTUTBwyQiWyrKNnI=; b=It5d2T3i0OwubxPz4kS1Tpm2B1hOcQCSCv1aNa3i3WjCTFWbip9K40GsBHLIzbHl0p8Qnw3fEzPKtdpJFS1753At+j3Rf6oWK4KphtMHloQTEI3tavSrCV3tzFtDzs2TMjPtMXToB8UXdrP4tXTC2z9JT6QDdd1KGq4v8S4p9p2RkMzRWU0ejse0/W8l12zdoMTNJS8ZLOBSm4duE7wkZa5Hf5GEykVFlREfDkhn44HPZlpFrQNvg9XjdbgbcSANthal9SuMvtK3exjGh2AVjCud9zLlxD1ftUjDk/wTfs0mzY8/+6WmF+GALU/Uxq07RCe8RfyzsjPb4pLp4cN2Bw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass header.d=amd.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=oeHXLEtbheAf+jFSN86qIDwoxCZcTUTBwyQiWyrKNnI=; b=eES5qDzQ048BbeFru90VewRopXvaCkwp03ygtVfXwcHtkhybjX82oU7LLgs81H4u0J7eFhrDrVoOd9XOYyqIagbBYusZv2wNYgUCj0uBImDhBnbxTW1yrQXI+DiYxoC2Sr2N9YWskCzQx0KiSISb0f+Gy95fJoOwL4ybcMCWozI= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=amd.com; Message-ID: <90c0f648-9413-74a2-0f65-c250106dfbcc@amd.com> Date: Mon, 26 Jun 2023 19:17:00 +0100 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v1] xen/arm: arm32: Add support to identify the Cortex-R52 processor To: Julien Grall , Ayan Kumar Halder , xen-devel@lists.xenproject.org Cc: sstabellini@kernel.org, stefano.stabellini@amd.com, Volodymyr_Babchuk@epam.com, bertrand.marquis@arm.com References: <20230620151736.3720850-1-ayan.kumar.halder@amd.com> <3b7f584e-700e-4598-f36e-51a96140323e@xen.org> <030fc5e8-8293-2306-06eb-9275c2a2c9e5@xen.org> <2fbf6885-5bb8-4b49-522d-eb265349d4b7@xen.org> <75008370-7141-757c-0768-14b654724f07@amd.com> From: Ayan Kumar Halder In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-ClientProxiedBy: PR3P193CA0054.EURP193.PROD.OUTLOOK.COM (2603:10a6:102:51::29) To SN6PR12MB2621.namprd12.prod.outlook.com (2603:10b6:805:73::15) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SN6PR12MB2621:EE_|MN0PR12MB6246:EE_ X-MS-Office365-Filtering-Correlation-Id: 220f1f77-6f9d-489d-3867-08db76718d08 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: SttnXFh90Tsg7Rlh8i7lch9L2RiDfMi5ByI3fhbOWOFo4c8lXUcgyxG60dwF545M7d5iG/KnbQXzfl9pjzysgQgEZBQ+wC2tx/ShD9mWVW+Eea+tLKa1Mn7OiFBmOsGs34mlJ9W3KAT8Waw8xHKU8SYAOiX0emMzfpKtn1bkZZMAB3RePC/Q2ulhyQsAdChAaOHqK1A4OpLBJD+e7fKEDLdoPgs/Covp+lNv725uP0DSGMGjD4L1W/IzXCy9OVB3/CipjUG3E+mZe9+CutuRlse+3knKOwsltZBx0YTBq/oGWfgkGNpBxbfmeCUZ8U2pCuxQ9xOKzq4a51v6P4N0RS5AGVeeivsHrqgCXy/3g9iGMA3CC1pHSN8nH6S0YpSrEQITdjU84Rwxai+lOuSrn8sbNHddoVZwkS4L9u/VpOfTXdv3r6Keum0+l8bU0ist/usQivV9u30tDWI6v3BWJkL2nmlkhjKUPrxTeqbYqfq0lzg7IBj4JB/Hq5xwZvXL9AAcmLbTzaVyLCG1LYAD8aLsfuW6wsYZEjeODpGCGYDpVXQNdgj4jK7xA9Hw01/fw19X9bOEhzjZqtZZtPTDY8LuX3Qh1rIpvxZu5lnFles90JGr7+oDpjJAzxwfxBcZcrbOxtAuDaLSzOvEPs9Ddg== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SN6PR12MB2621.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(136003)(366004)(396003)(346002)(376002)(451199021)(8676002)(8936002)(66476007)(66556008)(66946007)(316002)(6512007)(4326008)(6506007)(26005)(186003)(53546011)(6486002)(478600001)(110136005)(2616005)(41300700001)(6666004)(2906002)(5660300002)(38100700002)(36756003)(31696002)(31686004)(83380400001)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?VTNZUXlwM0xreC93dnRjUVJBUVV2SllKanF1eWY0QlBuczhLTkExM0FmZFll?= =?utf-8?B?d0ZwNjBEYk9GS0JBb0tjc2pmbkl0a0RGa25hc2VHdzJjcXFBQm5zaVVmaVo1?= =?utf-8?B?ajFPQlhsWE9wNTNzNThiVCt0ZmVwREx4OTZJMTh0MjRsTzN3WlNqN2pLcDRE?= =?utf-8?B?ajlIeVFNdGl1VWl0SXA3eVBWbjZmZFBHcmJFNEVUa1lRRUZ5cFdFQmduL2Jt?= =?utf-8?B?MzVlUWExU092TFhwYnZSZUx0NThmNnBMMHFIMXNnLy9hUFBhNTlXVG9vMG11?= =?utf-8?B?eExaMURWU3JBb21NZjB5R0JWSWJjbFk0d0swNlUycDdjR3hpRWVsTXAzTktt?= =?utf-8?B?ejdVUDlPNGlqbElLMUVmV2paSmdPanp1cU1oN2VyOWU2M2tPenlkVThkbEdj?= =?utf-8?B?dDg2SFl0Ukl4V2pweVhFODlEdzRwckg4bkJFWlFVUlg0NjdKZmdUdHRvZERh?= =?utf-8?B?RUl4UzY3c2V3dlY0Wk9pL21KOGZkS1VGbTJzRWF6VFBoWEo4bThLN3JSTFdt?= =?utf-8?B?ZkFtMW9JWDh1cU1Pc1JzNHhsNFc5REdWMjNFVURXWkNQWnlTRmluOWZjREpL?= =?utf-8?B?aUtKSU8xdjg2cUtTQm1HMzFPWFR2ZDg5NkVmMXBEcFhCL2w4TExrSWpCSE9J?= =?utf-8?B?S3B2WUxhb1lPNlFrMVBFdDBYcTJlOUU5MWMyR3hzckY2ZVZ0K1dGYVZaUi9I?= =?utf-8?B?aVBUY3Bkb091VWkwTGU5TWc2VzU5S2NIMXNFVmpOeDk3dHBzWnRDRjRaL1dn?= =?utf-8?B?cktvc1JmUEZ0OXF2QnJMdVlrR0JLdk9UYWw2aTVicFRqTWE5aUhpVHdDWElK?= =?utf-8?B?NVc4blZTYktRZ0UyWmMxZGQ4dElaV280cnZBZUl1T0xLamxmZUxHZjJ2b1I1?= =?utf-8?B?ZGtMU2Z6RDI2alhyTkFUdlk0bXcvckE3ZjRTRmZUL3ZDUm9IYzh2MkpJOWtj?= =?utf-8?B?aTN1ekRyTk5BUTNFVG13RHR6cWQ4Mnp5RXdvU0phZUNxaTc3d2tBeVhaWDkw?= =?utf-8?B?ZUx5ZzFmSFZCQ3JkK3g0dUlKUlJSeXhWeVJBS01pN2xpUXNyK1hGNkNBeENy?= =?utf-8?B?UzlJKzEwL3BQbFFGdTVNeU5mOHBLRWYyTnRxOWYyM1QyR3BBcTVLU3FKSi9N?= =?utf-8?B?ejVvSDBscVdxVVdkZXVOVSt4a1F1TGtaYytzalBSaEZDM2FUZ3paZUlZTDI2?= =?utf-8?B?amtSWmdxcm04L1hlUFEzM2xGYyswcTh3RUlUOFJPc2ZBNGUyRmxmQUFUNVJy?= =?utf-8?B?VExIM3NBQ1A2clh6YmlEenZJbHJCWXJiSDlrRnI3cXVXM0Jid1UwSHhHbExV?= =?utf-8?B?bVVENUozWmlUd0lhcEVxb3VFY2FrTFIxem85ME9GbGVIOTkybko4bC93cVlB?= =?utf-8?B?NWVacWdOMHc5d0pKcERNTjNtaW83NFluc28zYTJVTmdjZWthbGl1bmlncWg3?= =?utf-8?B?NzhHd3lmRC9EcGtzNFJSQzhnZHJ0Y28zanNQeitINDJYYVJLREc5Nkh3Njda?= =?utf-8?B?ZFVQTFRYMTVNcmxQUDlOTDB3NU42WklFZ2p1RCtTbVRrSjROUys3djg3SVpl?= =?utf-8?B?dnYxN05VNGcwcmFjbkpVVkt3T0tlZlZlWFVrcXh3YU9TTzQzV3pIcHUzL3V5?= =?utf-8?B?b0N3S1VKb0xET0VOVDQ3TGNmQnVmTjlTWjVCMkN2dmQ1aEVURm1UeGN3ek1t?= =?utf-8?B?VDFuQitEWWV6Y2pmVHRHSno2dXFpQSthL2ZKTjhuVzlmYmxhallKT3ljbXZa?= =?utf-8?B?Ky9INHp6MkRjVHkwemczK2NPaTFXOHNkRGxXUGo4QmhhZXU5UW10WTVvdmNT?= =?utf-8?B?VFE0cGJkZEVjZGpiZ1pJaktyRTFyNkN0NEpwVFNQM0NMMllzMCs3R2o4RjBY?= =?utf-8?B?RW00ZmdEQjQ0aktUWE9HOHJwLzM2aVk5cllINDJyK0x1OExHbW9ia2Jxenpv?= =?utf-8?B?Mnp5ek9YY1JieEhyMlBoV1pXanZnVjJMeXRxSVlPN1VpbG9MVzBwN0h3NW9O?= =?utf-8?B?RVQrajZOZlptU3JVWDkrOHNxeXJWcnhvN1ArZk5FU0pVNkxxRnoxWlpTSUJn?= =?utf-8?B?M1NIOUpUK2d4RElvd0hRRFpON0JnWndsTUFrQ2VkOE4rNU1kZ09iOVBUaGdH?= =?utf-8?Q?/S3F9jok5/DwYRrfCncVW2Zwd?= X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-Network-Message-Id: 220f1f77-6f9d-489d-3867-08db76718d08 X-MS-Exchange-CrossTenant-AuthSource: SN6PR12MB2621.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Jun 2023 18:17:07.5203 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: LdNPWaD0EID+MX/7ANcjTWNMANA4AmXFzpduRA1kdFMWIsVTxaDb0uG+dxwSgTeY0NWZ2CY++xN1J5Wuo3Preg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN0PR12MB6246 On 24/06/2023 08:04, Julien Grall wrote: > Hi, Hi Julien, > > On 23/06/2023 22:26, Julien Grall wrote: >>> --- a/xen/arch/arm/arm32/head.S >>> +++ b/xen/arch/arm/arm32/head.S >>> @@ -322,7 +322,7 @@ cpu_init: >>>           PRINT("- Setting up control registers -\r\n") >>> >>>           mov   r5, lr                       /* r5 := return address */ >>> - >>> +#ifndef CONFIG_ARM_NO_PROC_INIT >>>           /* Get processor specific proc info into r1 */ >>>           bl    __lookup_processor_type >>>           teq   r1, #0 >>> @@ -337,7 +337,7 @@ cpu_init: >>>           ldr   r1, [r1, #PROCINFO_cpu_init]  /* r1 := vaddr(init >>> func) */ >>>           adr   lr, cpu_init_done             /* Save return address */ >>>           add   pc, r1, r10                   /* Call paddr(init >>> func) */ >>> - >>> +#endif >> >> I think it would be best if you just #ifdef the fail below. So if the >> config selected, then you will still be able to have a Xen that can >> boot Cortex-A15 or a core that don't need _init. >> >> Note that for now, we should only select this new config for Armv8-R >> because there are some work to confirm it would be safe for us to >> boot Xen 32-bit Arm on any CPUs. I vaguely remember that we were >> making some assumptions on the cache type in the past. But maybe we >> other check in place to check such assumption. >> >> If this can be confirm (I am not ask you to do it, but you can) then >> we could even get rid of the #ifdef. > > I had a look through the code. We have a check in the 32-bit version > of setup_mm() for the instruction cache type. So I think it would be > OK to relax the check in head.S. > > Bertrand, Stefano, what do you think? As per discussion, I have sent "[XEN v2] xen/arm: arm32: Allow Xen to boot on unidentified CPUs" with the comment addressed. - Ayan > > Cheers, > From xen-devel-bounces@lists.xenproject.org Mon Jun 26 18:52:28 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 18:52:28 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555638.867538 (Exim 4.92) (envelope-from ) id 1qDrK1-0002Z6-87; Mon, 26 Jun 2023 18:52:21 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555638.867538; Mon, 26 Jun 2023 18:52:21 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDrK1-0002Yz-59; Mon, 26 Jun 2023 18:52:21 +0000 Received: by outflank-mailman (input) for mailman id 555638; Mon, 26 Jun 2023 18:52:20 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDrK0-0002Yt-JZ for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 18:52:20 +0000 Received: from wout3-smtp.messagingengine.com (wout3-smtp.messagingengine.com [64.147.123.19]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 92ca4255-1452-11ee-b237-6b7b168915f2; Mon, 26 Jun 2023 20:52:18 +0200 (CEST) Received: from compute4.internal (compute4.nyi.internal [10.202.2.44]) by mailout.west.internal (Postfix) with ESMTP id 2518A3200971; Mon, 26 Jun 2023 14:52:16 -0400 (EDT) Received: from mailfrontend1 ([10.202.2.162]) by compute4.internal (MEProxy); Mon, 26 Jun 2023 14:52:16 -0400 Received: by mail.messagingengine.com (Postfix) with ESMTPA; Mon, 26 Jun 2023 14:52:12 -0400 (EDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 92ca4255-1452-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= invisiblethingslab.com; h=cc:cc:content-type:content-type:date :date:from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:sender:subject:subject:to:to; s=fm2; t= 1687805535; x=1687891935; bh=tXZ71alGKxL1L2Jgq+exPzmNgEqTh8KcN/R gEzPenow=; b=QwxvAEh8S0ZzI5xsg4rAW9vX8hxms6JsPkjW0+wmE88/jDCBuqS egXM9YZvyQUsCmGpKZJpoLZhG3GCOkF/xhP4gZJ3yMS23ZYLl1GJgYq4qqPKsVEE RUX0xOyOL9Slj2qYakeioVJhOB5s1FSGihdEFoSOWokdcQqR4oj8dervcig48X1a HpY5jtKoAEJMUoXf/f4VpZUp34VASQ/0uuFSDWH575zHrLNejJhr/fiPrbY3IdV3 K7dLUw4tAQnf04fLNvuNpaYRh2Y3PNqVYwBUm4+yfThXIRJzmxEbtx5/HIg1vpJB 1nhxnbFUytI59bVxaXJjU3puunaJVesZaJQ== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-type:content-type:date:date :feedback-id:feedback-id:from:from:in-reply-to:in-reply-to :message-id:mime-version:references:reply-to:sender:subject :subject:to:to:x-me-proxy:x-me-proxy:x-me-sender:x-me-sender :x-sasl-enc; s=fm2; t=1687805535; x=1687891935; bh=tXZ71alGKxL1L 2Jgq+exPzmNgEqTh8KcN/RgEzPenow=; b=isrsh9ANDFueHW4C1Avpa9gTWxDPf 9H5O79Mukjga/LFXeK1i5oKYpRgiRgzAtlMbHwyV7Nwsk9CRwUSu/5vQc2Ujs0E/ FwxTSMb6T9jSSIWD+7WT9wV5rG/AqvaFVVC+ujCXcWj0oO+YKJI/uCbfMOrE6ugV zeIOrBbbr17m3KMMNSft1GsZLW7FL19TsRLjE+jS2LS7Kz8Ypr0ZfXgOWrqDDDX4 x1WmCOikTOfcmlXupKfjs6AAeRiPQXN4bfQPTGXkPZSwIXez6++mr8vbJFEg08BP vlXyzkLGBlbPbxe8XOMoQXNERge4SntIN3axJYiYzvfGfOJcYWsaE41jw== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvhedrgeehfedguddviecutefuodetggdotefrod ftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfgh necuuegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmd enucfjughrpeffhffvvefukfhfgggtuggjsehgtderredttdejnecuhfhrohhmpeforghr vghkucforghrtgiihihkohifshhkihdqifpkrhgvtghkihcuoehmrghrmhgrrhgvkhesih hnvhhishhisghlvghthhhinhhgshhlrggsrdgtohhmqeenucggtffrrghtthgvrhhnpefg udelteefvefhfeehieetleeihfejhfeludevteetkeevtedtvdegueetfeejudenucevlh hushhtvghrufhiiigvpedtnecurfgrrhgrmhepmhgrihhlfhhrohhmpehmrghrmhgrrhgv khesihhnvhhishhisghlvghthhhinhhgshhlrggsrdgtohhm X-ME-Proxy: Feedback-ID: i1568416f:Fastmail Date: Mon, 26 Jun 2023 20:52:08 +0200 From: Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= To: Luca Fancellu Cc: xen-devel@lists.xenproject.org, bertrand.marquis@arm.com, wei.chen@arm.com, Wei Liu , Anthony PERARD , Andrew Cooper Subject: Re: [PATCH 1/2] tools: Fix ifdef for aarch64 that should include also arm Message-ID: References: <20230608135913.560413-1-luca.fancellu@arm.com> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="9mYewJK/SwC36Ru1" Content-Disposition: inline In-Reply-To: <20230608135913.560413-1-luca.fancellu@arm.com> --9mYewJK/SwC36Ru1 Content-Type: text/plain; protected-headers=v1; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Date: Mon, 26 Jun 2023 20:52:08 +0200 From: Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= To: Luca Fancellu Cc: xen-devel@lists.xenproject.org, bertrand.marquis@arm.com, wei.chen@arm.com, Wei Liu , Anthony PERARD , Andrew Cooper Subject: Re: [PATCH 1/2] tools: Fix ifdef for aarch64 that should include also arm On Thu, Jun 08, 2023 at 02:59:12PM +0100, Luca Fancellu wrote: > Commit 56a7aaa16bfe introduced some SVE related code that is protected by > '#if defined(__aarch64__)', the issue is that this doesn't take into > consideration when the toolstack is compiled for an arm32 Dom0 running on > an arm64 platform, it should be able to create SVE enabled guests but with > the current code it's not. >=20 > So fix the issue by compiling the code when the toolstack is compiled for > both arm32 and arm64. >=20 > Fixes: 56a7aaa16bfe ("tools: add physinfo arch_capabilities handling for = Arm") > Signed-off-by: Luca Fancellu > Reported-by: Andrew Cooper Acked-by: Marek Marczykowski-G=C3=B3recki > --- > tools/include/xen-tools/arm-arch-capabilities.h | 2 +- > tools/python/xen/lowlevel/xc/xc.c | 2 +- > tools/xl/xl_info.c | 2 +- > 3 files changed, 3 insertions(+), 3 deletions(-) >=20 > diff --git a/tools/include/xen-tools/arm-arch-capabilities.h b/tools/incl= ude/xen-tools/arm-arch-capabilities.h > index 3849e897925d..4aa4c6c34a99 100644 > --- a/tools/include/xen-tools/arm-arch-capabilities.h > +++ b/tools/include/xen-tools/arm-arch-capabilities.h > @@ -14,7 +14,7 @@ > static inline > unsigned int arch_capabilities_arm_sve(unsigned int arch_capabilities) > { > -#if defined(__aarch64__) > +#if defined(__arm__) || defined(__aarch64__) > unsigned int sve_vl =3D MASK_EXTR(arch_capabilities, > XEN_SYSCTL_PHYSCAP_ARM_SVE_MASK); > =20 > diff --git a/tools/python/xen/lowlevel/xc/xc.c b/tools/python/xen/lowleve= l/xc/xc.c > index 491e88977fd3..e14e223ec903 100644 > --- a/tools/python/xen/lowlevel/xc/xc.c > +++ b/tools/python/xen/lowlevel/xc/xc.c > @@ -911,7 +911,7 @@ static PyObject *pyxc_physinfo(XcObject *self) > "hw_caps", cpu_cap, > "virt_caps", virt_caps); > =20 > -#if defined(__aarch64__) > +#if defined(__arm__) || defined(__aarch64__) > if ( objret ) { > unsigned int sve_vl_bits; > PyObject *py_arm_sve_vl; > diff --git a/tools/xl/xl_info.c b/tools/xl/xl_info.c > index ddc42f96b979..72e87eac46d1 100644 > --- a/tools/xl/xl_info.c > +++ b/tools/xl/xl_info.c > @@ -226,7 +226,7 @@ static void output_physinfo(void) > ); > =20 > /* Print arm SVE vector length only on ARM platforms */ > -#if defined(__aarch64__) > +#if defined(__arm__) || defined(__aarch64__) > maybe_printf("arm_sve_vector_length : %u\n", > arch_capabilities_arm_sve(info.arch_capabilities) > ); > --=20 > 2.34.1 >=20 --=20 Best Regards, Marek Marczykowski-G=C3=B3recki Invisible Things Lab --9mYewJK/SwC36Ru1 Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQEzBAEBCAAdFiEEhrpukzGPukRmQqkK24/THMrX1ywFAmSZ3lkACgkQ24/THMrX 1yyydQf/dNiLi0dAXMus45Pad29fbPOuTQg7bnA3ey7iygLbPsCPARcWtFsVh/N9 fANneqbx0B3JvBB/DBYs0Dnw8Ey6nCoV80sGdugm3nZxoHlZzPnGMXicUa5q8IGv A/Tghj4VkzNvG2zJf1nkOfA2zKzui69hdkd7KthT+XOT6ztFpLaKcwzXWS/O4XXS K68I5rmh0L9YumVBgFpHDlrmo8J2Ko/yBaUfnEVcAFQ4nLXKdD924ioBoufYDf+P hFPqcceQpyjGwKjZcZkp3h2KsiB0sQkvwvWI7YIT4sRBYP90zdQ6QLMmz8XToN8d pIqS/sdpNz7nskJ32s3qifLAr0HiEg== =nMW+ -----END PGP SIGNATURE----- --9mYewJK/SwC36Ru1-- From xen-devel-bounces@lists.xenproject.org Mon Jun 26 20:13:44 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 20:13:44 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555644.867548 (Exim 4.92) (envelope-from ) id 1qDsaV-0002c4-TV; Mon, 26 Jun 2023 20:13:27 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555644.867548; Mon, 26 Jun 2023 20:13:27 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDsaV-0002bx-PM; Mon, 26 Jun 2023 20:13:27 +0000 Received: by outflank-mailman (input) for mailman id 555644; Mon, 26 Jun 2023 20:13:26 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDsaU-0002br-N7 for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 20:13:26 +0000 Received: from EUR05-VI1-obe.outbound.protection.outlook.com (mail-vi1eur05on2062a.outbound.protection.outlook.com [2a01:111:f400:7d00::62a]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id e7713e18-145d-11ee-b237-6b7b168915f2; Mon, 26 Jun 2023 22:13:24 +0200 (CEST) Received: from AS8P189CA0026.EURP189.PROD.OUTLOOK.COM (2603:10a6:20b:31f::30) by PA4PR08MB7524.eurprd08.prod.outlook.com (2603:10a6:102:26d::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.26; Mon, 26 Jun 2023 20:13:10 +0000 Received: from AM7EUR03FT064.eop-EUR03.prod.protection.outlook.com (2603:10a6:20b:31f:cafe::ec) by AS8P189CA0026.outlook.office365.com (2603:10a6:20b:31f::30) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.33 via Frontend Transport; Mon, 26 Jun 2023 20:13:10 +0000 Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by AM7EUR03FT064.mail.protection.outlook.com (100.127.140.127) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.15 via Frontend Transport; Mon, 26 Jun 2023 20:13:10 +0000 Received: ("Tessian outbound b11b8bb4dfe8:v142"); Mon, 26 Jun 2023 20:13:09 +0000 Received: from 53de5a3694dc.2 by 64aa7808-outbound-1.mta.getcheckrecipient.com id BAFE3E89-5F77-4612-BCAF-E0067973023B.1; Mon, 26 Jun 2023 20:13:02 +0000 Received: from EUR05-AM6-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 53de5a3694dc.2 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Mon, 26 Jun 2023 20:13:02 +0000 Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15) by DBBPR08MB6250.eurprd08.prod.outlook.com (2603:10a6:10:1f5::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.26; Mon, 26 Jun 2023 20:13:00 +0000 Received: from AS8PR08MB7991.eurprd08.prod.outlook.com ([fe80::1024:cf14:d520:9b38]) by AS8PR08MB7991.eurprd08.prod.outlook.com ([fe80::1024:cf14:d520:9b38%7]) with mapi id 15.20.6521.026; Mon, 26 Jun 2023 20:13:00 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: e7713e18-145d-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=xtTFkdtLGLjGQbWWy/+YMDMPBv3qdeC6YuDwRjCpNcc=; b=gkg3Ix/zMPYfDzRuqLmxmfohbRf5SOnB6gpzfzmEavzrT2GN6lhOGSw4QvcKalO5Ehw61rW14+U2E2BF+N93dBfLuz4jDb1k9ne/ypzFLcZ50ScTtIHTABk+PFKx0QTkeCm7bAOKDMkeE0cU2khju4FKTv1mTA3JDDXmkxveaV8= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C X-CheckRecipientChecked: true X-CR-MTA-CID: 8ee8d8b02bec805e X-CR-MTA-TID: 64aa7808 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=PooGw3D7dltyXKBiVlOig+rlQksbp1Ju/idO9ujHsJ928xabYP2lrPVK5cPXbZxEOMr2r436mDT2eD188Ejb38ET8SY/RkTEvUfia+pkjC6rkKR8H80f9QcGDjlljI7vCB0j6zPdR23nM/a5EjeSIjd3uBFETC7e2v2iGcmFqF1p2eFzpaGW5PfSqrQvcKx8tW2TGs8vgFhffe0SZwH+7+8A2rT6+InNfqu2AUlGKA+3vvRJjdMKl4rbcOndr+LhjtrDijptbl62uXpo0tQZY0d61QOldtmGRGoixTYE+EffPjBAOFO/x8npBphrBLAjC7uc6ng0PcQc8+1bujbIGQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=xtTFkdtLGLjGQbWWy/+YMDMPBv3qdeC6YuDwRjCpNcc=; b=U1QUEhfixVF8TYlrGhYpLJpsN5JNJVB6oTVSX4xLKCTEb2oconrfEmo3pa7rhzSKm1cKu0hwSDFJGSgg2xuRTyAjgiml/00feZFSwrVFIe2gDvXfMYJSFo8Ht8NnA9JqCKuBXEvmpRethj4iMlnmBNo7Jl0Y4U6MYMREbeLzceKszdxcS1hEGxeFvVGv2RsJqibFN/3uNqRyzh2wJR1TalXI0ylIhH4CCFt3p8gJLKkHr3u6VEICbxxjVXwS59M9B4smPdILQs0GL2/zb/zTEnu139tYZb72E9HrOx3lJY5Jr78ke4ghnJ+Uv9rFHULPHXlAKoLShtSMgqEGnzIxhg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=xtTFkdtLGLjGQbWWy/+YMDMPBv3qdeC6YuDwRjCpNcc=; b=gkg3Ix/zMPYfDzRuqLmxmfohbRf5SOnB6gpzfzmEavzrT2GN6lhOGSw4QvcKalO5Ehw61rW14+U2E2BF+N93dBfLuz4jDb1k9ne/ypzFLcZ50ScTtIHTABk+PFKx0QTkeCm7bAOKDMkeE0cU2khju4FKTv1mTA3JDDXmkxveaV8= From: Henry Wang To: "xen-devel@lists.xenproject.org" CC: Julien Grall , "sstabellini@kernel.org" , Bertrand Marquis , Wei Chen , Penny Zheng , Luca Fancellu , Ayan Kumar Halder , Jan Beulich Subject: Xen Summit 2023 Design Session: R82/R52 Upstream Thread-Topic: Xen Summit 2023 Design Session: R82/R52 Upstream Thread-Index: AdmoaYOzBL78EMmRQsKUGzHLWfv8Hw== Date: Mon, 26 Jun 2023 20:13:00 +0000 Message-ID: Accept-Language: zh-CN, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ts-tracking-id: D1424E0D40F17741BD328B9C7ED3A0F4.0 Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-traffictypediagnostic: AS8PR08MB7991:EE_|DBBPR08MB6250:EE_|AM7EUR03FT064:EE_|PA4PR08MB7524:EE_ X-MS-Office365-Filtering-Correlation-Id: 7c7a1382-c96d-415b-efb3-08db7681c355 x-checkrecipientrouted: true nodisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: m/jLDgZhgg6nMLzEIJjWsd/zuYGHLgFlmer3jSXLSVbQ49GP4rqXN0//f8gpl7rR1zi8eSafIPdoBo5E4kK55h0ASyaIT5qLP6ncgho4fpHzA86Z3frLQfwJBPg/4PJOnw4S78MBBcP5XWcBCneoUVuIWOWlYWCnA1jezJE2EHCyKrF5u3jJjPBZQKbqETDXycp+Fa66vaktpSFAq6KnJghw7vSivL+AsXe4RYIUK+biLnGxBoQ5hErzSa1JCk6+qn07b6kHF7Q5BC4miNHtdOC3FTTXcYbl+QRA1TtzyZcP5DZaHAnIy4w8sl7eT43klDG9OCmUMHSeZY6uKk5V5MFPzKYNTSAfDKFz2RfsoKQ+SiKTmJrWuoASbF3Y/UwW5ErU12xlsAeUyxxjkDEtssJ+IJE32VC474f3GreLIz6hPa100oX4X7HYW8f1DHcuUA0mKMftnU4zD31vlCIpMOL+hbAAA/1gQChbD0dA8E4iE8JTMml6y9iqHXQ0+9S0ocuwy7Ejoa0BqAjIfv9drUcfqb79G3J1lZZMSTDcI8FWgm+p0DqjN72G+wNNGa91TlJ6gdYhEpJvONO0XNZExyBhVetSznvLncHGQHoyxcqxD3UuvlcJyTIJiRH6fQE3 X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB7991.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(376002)(396003)(366004)(39860400002)(346002)(136003)(451199021)(2906002)(45080400002)(7696005)(38100700002)(122000001)(83380400001)(71200400001)(6506007)(26005)(186003)(9686003)(55016003)(966005)(41300700001)(86362001)(54906003)(38070700005)(478600001)(64756008)(4326008)(66556008)(66446008)(33656002)(66946007)(66476007)(316002)(76116006)(6916009)(52536014)(5660300002)(8676002)(8936002)(66899021)(21314003);DIR:OUT;SFP:1101; Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBBPR08MB6250 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: AM7EUR03FT064.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: 4d2987fe-83eb-48c4-053e-08db7681bd91 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: eWmoowEXOoFh7t8UV4xS8m5g41Prehs9FVSWsUsCYKU6JZoZu4x/YRjz/OrerUKyFBWBd/CAtXwJQRgcsm0z9FubczmqiHhCyy+4wMy6QL4wEnfh3Spm/UU3S8cWYBjlZe6AG028VcuxrIuh4fs3y6d0W9s0cjkOtiEdEfvdwCd7uN8D3EgiapaAKs56rPpcNxkH+Mnz+itksYnJ3faJfyneu+swzYe+uVfu2RtUJwtP/b6V4BLMQfnKqIRG9of/KaAceXh8ixmamXs7ZwM2tF2L6jzh8FIg8q49MKz4zOLgyrmsZDdy+x93VWF4Y8KJ3JEbD1LTGGYEzi+nCMEwr+wVtOC8kfwHrT0ZUTRp6Ab+3xL9CGXDobLLZtlxSILIlN93FCsznWXOhvD06WxM5lsyGyKhuVcAjyg66S+JZxCXSTSTPbvzidYjJ3SglALLbj5v0b5woRp5AqbDHvWjqXmRAfNb1iR78tYwc0u+Wi9L+soWyxpeDts5l+Engi2pKSNY+Leo4taG0HQ14zmBR/rmWO6nQa5QrhJie2/Y/J99l+8aItMXBqCpMSQkBIkD87zFG4DG95Vc/Ut57KZiq3coIVI6CWkRH9b0FVLoeJXsbRyYOl4VG9ZI0CvqI32a8AYfJ3X5y8BwbnDBmynJyNoSYDUx4inAN1C7h6oiZ80Fr+pTIWE4fv59qLZe+5FXvmvUDaCTgHoZs/HGql6F+tbrwnzTVZewwPMREZI2f/XdwBUxK6X1MvmPotlVfITw X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230028)(4636009)(376002)(136003)(346002)(396003)(39860400002)(451199021)(46966006)(36840700001)(40470700004)(2906002)(82310400005)(45080400002)(7696005)(356005)(107886003)(83380400001)(81166007)(26005)(9686003)(186003)(47076005)(82740400003)(336012)(36860700001)(40460700003)(55016003)(966005)(40480700001)(41300700001)(54906003)(86362001)(478600001)(70206006)(4326008)(6916009)(33656002)(70586007)(316002)(6506007)(5660300002)(52536014)(8676002)(8936002)(66899021)(21314003);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Jun 2023 20:13:10.2323 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 7c7a1382-c96d-415b-efb3-08db7681c355 X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: AM7EUR03FT064.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR08MB7524 Hi all, Below is the (merged) note take from the R82/R52 design session. Thanks Luc= a and Ayan for sharing the notes taken from their side. B: Status of current R82? Summary of the changes from last version? P: R82 updated patches are on mailing list. A lot of change, now map on demand, and deleted "mpu,xxx-section" properties in device tree, only need to specify static heap J: Problem is how to split and integrate the MPU code to the current code base S: better to split MPU and MMU, I wouldn't mind p2m to be duplicated, instead of ifdefs and things like that. J: Better to look at the whole series to have a overview of the current cod= e. B: We need to maintain the MPU code for a long time. S: Keeping MMU and MPU so close together now might be not a really good ide= a B: We should make sure MPU is not an Arm specific thing because RISCV also has MPU solutions, we need to take this into account, Do we want some MP= U on common code? Jan: if code to be shared by x86, arm, riscv etc, they should be common cod= e. A: Possibility to cut the series short? P: The latest series out in ML already doing MMU refactoring first (the fir= st 22/23 patches), then introduce MPU B: It is tricky to just see the first part without looking what is being do= ne later, because one change on the first can make sense reading maybe the last patches. We are introducing a core concept in xen and finding the correct approac= h is important From the review point of view, we should not cut the series to parts J: I agree. B: The first (refactoring MMU) part is also critical for the MMU users in production, we need to make sure we do things right. S: We should look at the whole series first, then iterate only the first pa= rt? J: Yes and no... B: Important for Ayan to look at what penny has done to avoid rework from h= is or both side. Review from Ayan as a reminder for arm32 MPU work is impor= tant. Is there any major code refactoring (of Penny's series) required to make= it run on R52? The expectation is that the MPU code should be common between R82 and R5= 2. If so, Ayan put appropriate comments in Penny's patches. J: We need to review the whole series. This might should take some time (1-= 2 full days).=20 B: We are near to the release, any goal for this series? J: MMU/MPU split to merge as the release goal would be nice. Some rework of= the mmu is fine for 4.18, MPU won't be in for this release. Ayan: Like linux kernel, creating topic branch is a good idea? B & S: We had these discussions, I dont think to create topic branch for MP= U is a good idea, but a topic branch makes sure everyone has a same view of t= he code instead of their own pieces. B: Once Ayan does the rebase, we can have a place in gitlab to store the co= de Ayan: I will point the "problematic" part from Penny's series during my reb= ase process and signal in mailing list. B: I think penny has limited time on MPU, wei what's your input? Wei: I've convinced internal management to include Henry in MPU Wei: Also in current work containing 52 patches, we already split the patch= =20 logically in parts which can be committed separately. B: Will try to achieve the above goal for 4.18 J: Tell maintainers how to test MPU S: Upstream gitlab runner might have the license issue. B: upstream yocto (might) solved this issue? S & Ayan: R series EL2 emulation is not possible in QEMU Wei: Zephyr is already using FVP_BaseR in CI B: Zephyr is not using gitlab, EULA is difficult, but it is a known issue a= nd=20 possible to solve this Ayan: Summary - (1) B & J & S will look the series to see if the MMU MPU sp= lit=20 is fine (2) Ayan will try to rebase and signal penny about gaps for R52 (3) Check if the EULA license permits FVP to be used in docker. S: 3 design questions: - how do we split the mmu and mpu, Things like P2M is difficult, how to m= ake p2m work - a lot of static inline return 0 (stubs), can we use common instead? - MPU is even more static than the normal dom0less, so usually for differe= nt platform it's a build time configuration. Having it dynamic it's not rea= lly=20 a use case, it's nice to have but it's not necessary. B: Nobody will use MPU without recompile Xen, also we dont have bootloader = for R series J: why not PIE? B & Wei: toolchain support is bad. GCC has weak support for PIE, also for realtime purpose PIE isn't used. Statically allocated resources are hard= to=20 deal with the PIE case. Wei: We also have discussed the PIC/PIE possiblity in=20 https://lore.kernel.org/all/PAXPR08MB74206746246D1754682AA1959E999@PAXPR08M= B7420.eurprd08.prod.outlook.com/t/#m77cbaf5b606901e5834e7c6fb3e30841da589d4= b=20 section#3.3 J: Linux is able to do it. But we can start from things that are easy. B: Introducing too much "dynamic" part is not good for real time. S: Although I personally like the dynamic stuff, but most users will not us= e them. B: You dont have firmware, booting on several platform is already a problem= . We will investigate PIE, but not a good idea for the current stage. We can relax the check in head.S for arm32. Kind regards, Henry From xen-devel-bounces@lists.xenproject.org Mon Jun 26 20:19:35 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 20:19:35 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555648.867558 (Exim 4.92) (envelope-from ) id 1qDsgN-0003F9-HA; Mon, 26 Jun 2023 20:19:31 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555648.867558; Mon, 26 Jun 2023 20:19:31 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDsgN-0003F2-EO; Mon, 26 Jun 2023 20:19:31 +0000 Received: by outflank-mailman (input) for mailman id 555648; Mon, 26 Jun 2023 20:19:29 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDsgL-0003Es-Oz; Mon, 26 Jun 2023 20:19:29 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDsgL-0003XP-1u; Mon, 26 Jun 2023 20:19:29 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDsgK-0006U7-K9; Mon, 26 Jun 2023 20:19:28 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qDsgK-0005u7-Jb; Mon, 26 Jun 2023 20:19:28 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=TQnXvgOivYhLSY9XZKbBvwuqRcAosPypjTEi28jTu34=; b=2tp0xcL0X5rrONUJseNCLQhac/ aBK3LYAMnZVc2aiyhuKlGqp1DlZeM5C443Zd4ekwJEFR24FyQ7kmWRww3HIZEgeEtozmH1IzUHgY7 9JzKY4QmbTYb/Z/uFbl95Sa/cZAWPgQcG6+Qh3LVMfPKgoNyiDzeLaBNuUEt6kyVNgYs=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [linux-linus test] 181604: regressions - FAIL X-Osstest-Failures: linux-linus:test-armhf-armhf-xl-credit1:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:debian-hvm-install:fail:heisenbug linux-linus:test-armhf-armhf-xl-arndale:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-raw:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-credit2:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-rtds:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking linux-linus:test-armhf-armhf-libvirt:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-examine:reboot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-qcow2:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-vhd:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-multivcpu:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-qcow2:migrate-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-raw:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: linux=6995e2de6891c724bfeb2db33d7b87775f913ad1 X-Osstest-Versions-That: linux=6c538e1adbfc696ac4747fb10d63e704344f763d From: osstest service owner Date: Mon, 26 Jun 2023 20:19:28 +0000 flight 181604 linux-linus real [real] http://logs.test-lab.xenproject.org/osstest/logs/181604/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: test-armhf-armhf-xl-credit1 8 xen-boot fail REGR. vs. 180278 Tests which are failing intermittently (not blocking): test-amd64-amd64-xl-qemut-debianhvm-i386-xsm 12 debian-hvm-install fail pass in 181598 Tests which did not succeed, but are not blocking: test-armhf-armhf-xl-arndale 8 xen-boot fail like 180278 test-armhf-armhf-xl 8 xen-boot fail like 180278 test-armhf-armhf-libvirt-raw 8 xen-boot fail like 180278 test-armhf-armhf-xl-credit2 8 xen-boot fail like 180278 test-armhf-armhf-xl-rtds 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 180278 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 180278 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 180278 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 180278 test-armhf-armhf-libvirt 8 xen-boot fail like 180278 test-armhf-armhf-examine 8 reboot fail like 180278 test-armhf-armhf-libvirt-qcow2 8 xen-boot fail like 180278 test-armhf-armhf-xl-vhd 8 xen-boot fail like 180278 test-armhf-armhf-xl-multivcpu 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 180278 test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-amd64-libvirt-qcow2 14 migrate-support-check fail never pass test-amd64-amd64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass version targeted for testing: linux 6995e2de6891c724bfeb2db33d7b87775f913ad1 baseline version: linux 6c538e1adbfc696ac4747fb10d63e704344f763d Last test of basis 180278 2023-04-16 19:41:46 Z 71 days Failing since 180281 2023-04-17 06:24:36 Z 70 days 133 attempts Testing same since 181598 2023-06-26 01:56:17 Z 0 days 2 attempts ------------------------------------------------------------ 2774 people touched revisions under test, not listing them all jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl fail test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm fail test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-freebsd11-amd64 pass test-amd64-amd64-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale fail test-amd64-amd64-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 fail test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 fail test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine fail test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt fail test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu fail test-amd64-amd64-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-amd64-pygrub pass test-amd64-amd64-libvirt-qcow2 pass test-armhf-armhf-libvirt-qcow2 fail test-amd64-amd64-libvirt-raw pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw fail test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds fail test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-amd64-xl-vhd pass test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd fail ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 354627 lines long.) From xen-devel-bounces@lists.xenproject.org Mon Jun 26 20:31:43 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 20:31:43 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555656.867568 (Exim 4.92) (envelope-from ) id 1qDsru-0005f8-Li; Mon, 26 Jun 2023 20:31:26 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555656.867568; Mon, 26 Jun 2023 20:31:26 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDsru-0005f1-Ih; Mon, 26 Jun 2023 20:31:26 +0000 Received: by outflank-mailman (input) for mailman id 555656; Mon, 26 Jun 2023 20:31:25 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDsrt-0005ev-Fb for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 20:31:25 +0000 Received: from EUR04-DB3-obe.outbound.protection.outlook.com (mail-db3eur04on0602.outbound.protection.outlook.com [2a01:111:f400:fe0c::602]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 6a29447a-1460-11ee-8611-37d641c3527e; Mon, 26 Jun 2023 22:31:22 +0200 (CEST) Received: from AS4P189CA0007.EURP189.PROD.OUTLOOK.COM (2603:10a6:20b:5d7::18) by DB9PR08MB7581.eurprd08.prod.outlook.com (2603:10a6:10:305::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.24; Mon, 26 Jun 2023 20:31:16 +0000 Received: from AM7EUR03FT013.eop-EUR03.prod.protection.outlook.com (2603:10a6:20b:5d7:cafe::23) by AS4P189CA0007.outlook.office365.com (2603:10a6:20b:5d7::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.33 via Frontend Transport; Mon, 26 Jun 2023 20:31:16 +0000 Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by AM7EUR03FT013.mail.protection.outlook.com (100.127.140.191) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.15 via Frontend Transport; Mon, 26 Jun 2023 20:31:15 +0000 Received: ("Tessian outbound c08fa2e31830:v142"); Mon, 26 Jun 2023 20:31:15 +0000 Received: from 062de056ab1c.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 07B6B930-6C4B-4012-8C7E-90A8E9A7C837.1; Mon, 26 Jun 2023 20:31:05 +0000 Received: from EUR03-AM7-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 062de056ab1c.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Mon, 26 Jun 2023 20:31:05 +0000 Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15) by DB9PR08MB9588.eurprd08.prod.outlook.com (2603:10a6:10:45e::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.24; Mon, 26 Jun 2023 20:31:03 +0000 Received: from AS8PR08MB7991.eurprd08.prod.outlook.com ([fe80::1024:cf14:d520:9b38]) by AS8PR08MB7991.eurprd08.prod.outlook.com ([fe80::1024:cf14:d520:9b38%7]) with mapi id 15.20.6521.026; Mon, 26 Jun 2023 20:31:03 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 6a29447a-1460-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=GBM6UfEb0tfydvZVwh/Qvf8w7fmLo3MsFup7d7Get+o=; b=j0jpTKhgbv/RjYD6weMZSKcTtU8A8XFu9msu4ylim/3daK7XvnMaieobZnGuu0IUvGNpY222cOcmdWcI3cMUDoNmySV1FYAZ+ePs9OODEZ9DwqyUtGClXfnx6/uTrh1qJeKU2si0pU6GqRl/dFnOb659MhPF+6dZv7JZ9+igzoc= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C X-CR-MTA-TID: 64aa7808 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=dYOat4n4q7h7/9YXIzunJ0vbURQ43d/IFlufN+XLx4d41QSEfvIM2lTLiVH8X+kXnOM9kTBVBduLjb36+tISrDV08hXeOhzkCrirSt0vIZ1jX44DwWFSGkSFPshjm+AfkI/n57sgRJ1EdSRkISLNjNnQrpLDOYijsCJgLRNPcvQfBXFdj9prw8tFCTFl7rK2gtNwugLALRR6a2fuiFsty8QZdEMzngqGX2kMqtpDRS2iHEt6Cf1/R8JM3SKT6S6Gv+8nYdeE8jIwYpNW19GTLUwUEcIKOcUD2M8S8UgMOL8ypqf0y0hMaSolwFZtPSIn/0XahMENnzTvwXJbESNPFw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=GBM6UfEb0tfydvZVwh/Qvf8w7fmLo3MsFup7d7Get+o=; b=bJaL5/honfv7n1ZszvsZn5DKs+3DfBpb/RlLqc0gCc8/kq7nT63l0RiFylCc6CQuyHo9VYwtcTL2yZtv+TUFsyrC7yts/XzEHM7BXalEYL27Rfl1DawbT4+GgHIscE1ZMAgw3CT87TaQGE+9RXxNZTSKVUF64ik1jBp5K5iK/IDrSVuRIFqxO48xjDKik0nd03JuUX+fWf8Vp6P8aJtOiHaIHCQSfAnHzhDfBgN0ORTSylTJw9agb9UsHaCxDUPs0hVEYUCIUY7xcEl/ZC7N76SW5XouUs/fdSlK61RF6FOZBjoy018MNOxHm1XOeMphPiNmaQShk8lpnto9wRdiSg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=GBM6UfEb0tfydvZVwh/Qvf8w7fmLo3MsFup7d7Get+o=; b=j0jpTKhgbv/RjYD6weMZSKcTtU8A8XFu9msu4ylim/3daK7XvnMaieobZnGuu0IUvGNpY222cOcmdWcI3cMUDoNmySV1FYAZ+ePs9OODEZ9DwqyUtGClXfnx6/uTrh1qJeKU2si0pU6GqRl/dFnOb659MhPF+6dZv7JZ9+igzoc= From: Henry Wang To: "xen-devel@lists.xenproject.org" CC: Jan Beulich , Andrew Cooper , George Dunlap , Julien Grall , Bertrand Marquis , Luca Fancellu Subject: Xen Summit 2023 Design Session: Stable Releases Thread-Topic: Xen Summit 2023 Design Session: Stable Releases Thread-Index: AdmobMSQTHaF+Lp8SkK9E1+SOwB5PA== Date: Mon, 26 Jun 2023 20:31:03 +0000 Message-ID: Accept-Language: zh-CN, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ts-tracking-id: AA09D4D31A72BF45BBF8AA9CE7B3287A.0 x-checkrecipientchecked: true Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-traffictypediagnostic: AS8PR08MB7991:EE_|DB9PR08MB9588:EE_|AM7EUR03FT013:EE_|DB9PR08MB7581:EE_ X-MS-Office365-Filtering-Correlation-Id: 66cd51bf-7a9b-4570-754e-08db76844a70 x-checkrecipientrouted: true nodisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: v51vxdZVpdfB+/08EqI6HDrC48cukWxJP1HAWqhYiI675pYMzC/fm2lQzOgecvIzIS0tTlQ83fbSWQP5R8GcrFcj/Lb+F0MvMyW2NKd6lIiWLbyYlGmXO5nnFy944Wziyr8niNTsDNGaxx1lYbl9YVwxBtAax1w+7zR1dd0GheykDdnhTdYJz4IOL6NvEoLiNQB2UR9tHGfVXDptczrFuu8V1SJNSzhwelh306NC98blZ3i23uvn5wS4IhQWfRfPNCMlvU+kWO4Xbh3Kww9LI/wq8iP9TdxF/41kZfth0SJx2k3oTGWDISqRV2tRfv/u0MmUawVOO7jM/L0Yt/x1WDbfTTjpF7qa/4nb7WkC0n1onC76xCQOZ8uvn80leEvqH31XWcZXg2qDkz1JmjRQUCVchLr/D3AnQeRjmBLG0aEI8/F5Auzt7cwNSLHAi8JF1HhT5hC52rr91Z/bnI0318kKWKKb0HDl3uScPyqXktZWW78IShfBZDDGfaTJmeNi4OTul94HcriuDfqyYQZ91dpN71pCiIMZyT5bRDqv6YW0iR8DmESDFUxo1W+/Njdtq+YLVywHtx8K4Nys/SU06F/aj3D1sRgGEB8oXLSjpL5MmZLH/JxWgaCyM3pBk1kj X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB7991.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(376002)(136003)(346002)(39860400002)(366004)(396003)(451199021)(66574015)(478600001)(6506007)(7696005)(71200400001)(54906003)(83380400001)(66446008)(26005)(9686003)(186003)(2906002)(5660300002)(52536014)(33656002)(122000001)(64756008)(316002)(55016003)(66946007)(76116006)(38100700002)(8936002)(8676002)(41300700001)(6916009)(86362001)(4326008)(66556008)(66476007)(38070700005);DIR:OUT;SFP:1101; Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR08MB9588 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: AM7EUR03FT013.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: 907c6018-b15f-4e74-2189-08db768442bb X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: +zRkrgR0y+4Z7gHhKUo/vHj5FY4ma1C4gceiCwh+eJEKDyI1WgB8CkTvl8ZMG9vv4hyV0kJA3mat1waMrHH48FNxJPBCT7vHZ2avOQNKRjcG3qsi1uut4yqKZcj3Hrdcy5iW/Qzn1alljCtDAxjRrMMzQo2H9f8P+2I7dc52ojm5hsXIqoWsTnlszj+/8uVpNdGij7yYDNlMglvTX8Hp6jYsiq8Stez+CqcrmeR/VHCzRDDXheqNDkzVN3yO6bFxYIIN4UtCkajtlMectmTEVPLnT7UP0n7nY9n6OoDbgV1WDViuUO2BgttoKvnwAvG7g5WnzfjTssau8tN8oAJX+I/FCXX77GLKFmLjjZb5qZEVMrcLfRY3p2Qaw0o4/EcTrV0TRH8Xpj58TuGA1BW/rBHj6jeWaBk3OwEE8DCsWCxZbGu2MWN90pc1xm5PFR1JqRp4YSygpS67gCdoCugvHENkPF9sA4UtpF6Uh6L83NwDnZShp2sO91iRQKHJnELW5+cq8NgB4Xz2BsCCjBfIMpmvr8Loiaj04p27/A0pwwMDc9Af2S9yrlxrR1QIC+3bziHOY+Lm9GE21sCr6/h3Tkf6IRFyGW2HtHhTDTbcfC/cUddzXPbWj6KaH10JmU5GKC6Yi7zh1gMq5fpVmdi3bk/ap6uPHhOoWGm1eeNyRFozGGLFuHO0kY+FQ26aWhfKV9aWx82/SibwNGHa7iYJX9gmtoRDqX395Wr1cfgZ6Uakn8v3d7r6OCy0jhIUHKXX X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(376002)(136003)(346002)(396003)(451199021)(36840700001)(40470700004)(46966006)(36860700001)(82310400005)(33656002)(40460700003)(70206006)(52536014)(356005)(5660300002)(6916009)(8676002)(41300700001)(86362001)(8936002)(81166007)(55016003)(70586007)(4326008)(82740400003)(40480700001)(316002)(66574015)(47076005)(9686003)(26005)(2906002)(186003)(478600001)(6506007)(7696005)(83380400001)(54906003)(336012);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Jun 2023 20:31:15.9233 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 66cd51bf-7a9b-4570-754e-08db76844a70 X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: AM7EUR03FT013.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR08MB7581 Hi all, Below is the note that me and Luca have taken for the stable release design= session. Thanks Luca for sharing his notes. Jan: for long time we've done time-based stable releases, but overtime it is brought up purely time based release is not a good idea. Sometimes because of XSA, sometimes backported patch does not apply cleanly. One possible solution is one stable release per XSA, but we need to consider we need to be practical, too frequent releases brings problem for people. One of the problem is, that patches are not public, before the embargo= , so the public tree cannot be prepared for the release until the embarg= o expires. Maybe some preparation can be done upfront? Jan: Should we change the stable release strategy, Do people think that we= =20 should change timely cadence of the release? B: This is only for stable release? Jan: Yes, Major release are going to stay as they are, stable release are the subjects. G: We need to know what the users of stable releases, what do they want A: Current thing is good for Qubes A: I've been informed that some customers in mailing list wants more freque= nt release, fedora, etc. A: I know some projects cut releases once per security fix. I got the=20 impression from customers that they want one release per security issue. what they want is after the embargo, they can pull the tag with the secu= rity fix. B: I am on the yocto side, having downstream patches stored in yocto is not= =20 good. Bumping versions is easier. A: sometimes the people preparing the tarball of Xen is not technically "users". The point of Xen security team is to deliver the security fixes as easy as possible to everywhere. Jan: Sometimes it is hard to get the binaries on time after the embargo. We= =20 need to have a model to have binaries right after the embargo B: Most of the time yocto is in the middle. Xen version is bumped in yocto= =20 every yocto release, by then the XSAs are pulled in. for yocto it is not possible to maintain the single XSA by downstream patches Jan: why dont we do partial release, tags but no tarballs A: that would be satisfactory for the people who complains, normally no one uses tarballs now. This would be entirely fine. G: We can ask who is using the tarballs, we can ask LF. Jan: dependency for the leaf trees and qemu B: tarballs is useful for students and new starters without Xen knowledge. Julien: We can use gitlab to make the tarball? A: tarballs from Xen dir is not 100% the tree. It contains more such as qem= u dep so not be directly done by gitlab. B: we need to be realistic about what we can do in short terms. The number = of tarball downloads would be the initial question. Jan: mini-os A: Just add a tag for sub-releases in xen.org would be good for most of peo= ple complaining. G: we can ask in xen-devel to collect feedback about tarball. maybe a surve= y. B: You can apply the tag as soon as you apply the XSA. We can also not limi= t=20 this way to only XSA. Jan: Too many releases? A: we can have even more digits in the release numbers Jan: for interim releases, make no announcements, no tarballs, no website, = but=20 for normal stable releases, do them all. A: Users do not really cares about tarballs, websites.=20 G: we can put more info about these release in the new website or gitlab instead of xenbits website. Julien: Can we check the number of downloads? A: We check the number of downloads, if nobody care, we announce that we mo= ve the website etc. about the releases to new places. G: also ask users what do they need. B: You need a phase out. You cannot do all the movement instantly. You do i= t=20 step by step with proper guidance for users. Jan: If we do more frequent release, we cannot ping people about backports = as a=20 new release is coming, because this means revealing there is a security = hole in the code and the XSA is coming. we need to ask for more frequent of=20 backports and probably give Anthony commit privileges for maintaining th= e=20 tools. G: Summary: if we don't have to do the tarballs for sub release, it is fine= . If=20 we have to try to figure out who is consuming the releases as an underst= anding, then start from there. Putting a tag will solve the complaints from people, there is a general = agreement. Check the number of downloads, put something out something in a public p= age=20 to ask feedback on the retirement of the tarball. So we should phase out= =20 that, in an agreed time. Jan: Discuss in community call Kind regards, Henry From xen-devel-bounces@lists.xenproject.org Mon Jun 26 20:39:19 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 20:39:19 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555660.867578 (Exim 4.92) (envelope-from ) id 1qDszS-0006IL-DH; Mon, 26 Jun 2023 20:39:14 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555660.867578; Mon, 26 Jun 2023 20:39:14 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDszS-0006IE-AR; Mon, 26 Jun 2023 20:39:14 +0000 Received: by outflank-mailman (input) for mailman id 555660; Mon, 26 Jun 2023 20:39:13 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDszR-0006I8-0a for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 20:39:13 +0000 Received: from EUR01-HE1-obe.outbound.protection.outlook.com (mail-he1eur01on2073.outbound.protection.outlook.com [40.107.13.73]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 8135f33a-1461-11ee-8611-37d641c3527e; Mon, 26 Jun 2023 22:39:10 +0200 (CEST) Received: from DU2PR04CA0212.eurprd04.prod.outlook.com (2603:10a6:10:2b1::7) by GV1PR08MB8426.eurprd08.prod.outlook.com (2603:10a6:150:8a::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.26; Mon, 26 Jun 2023 20:38:37 +0000 Received: from DBAEUR03FT039.eop-EUR03.prod.protection.outlook.com (2603:10a6:10:2b1:cafe::ad) by DU2PR04CA0212.outlook.office365.com (2603:10a6:10:2b1::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.33 via Frontend Transport; Mon, 26 Jun 2023 20:38:37 +0000 Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by DBAEUR03FT039.mail.protection.outlook.com (100.127.142.225) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.16 via Frontend Transport; Mon, 26 Jun 2023 20:38:37 +0000 Received: ("Tessian outbound c08fa2e31830:v142"); Mon, 26 Jun 2023 20:38:37 +0000 Received: from 580e0799811c.2 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 5A5FE0AA-D0D4-495C-8BFB-881F7873598F.1; Mon, 26 Jun 2023 20:38:30 +0000 Received: from EUR05-DB8-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 580e0799811c.2 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Mon, 26 Jun 2023 20:38:30 +0000 Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15) by DB9PR08MB9588.eurprd08.prod.outlook.com (2603:10a6:10:45e::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.24; Mon, 26 Jun 2023 20:38:28 +0000 Received: from AS8PR08MB7991.eurprd08.prod.outlook.com ([fe80::1024:cf14:d520:9b38]) by AS8PR08MB7991.eurprd08.prod.outlook.com ([fe80::1024:cf14:d520:9b38%7]) with mapi id 15.20.6521.026; Mon, 26 Jun 2023 20:38:28 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 8135f33a-1461-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=QuoYncLmyqqqfjY93ASrwaN9MkGxY9nGUal9WLlsMJk=; b=unknOtXPb5qvb3HwmT8kLJN7mffhwSqSGErqyVhSoPubAOQnXV7JSNZEjedGhNMAPTK3MbATZiXfExalCsrQGEq55QvZehjNn3Gc3J+7Z9bwbWzLFKBq78j9omia0QQ2wzM7VqRrL+JYO56tQfp0IkePv8s08WtMOdEUEW4W+bk= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C X-CheckRecipientChecked: true X-CR-MTA-CID: bc9c8a9bab8d46fc X-CR-MTA-TID: 64aa7808 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=DSVdqDgBKXH6U48qGiQ0INUindfRa7khgyxFkvheQlpXKFWHP7hFEGgfWX/imMm5VZHfowoaVnTUCEoCl7F3X7DdBFCTZrZ67f8HKjC8GMckfo+2Norcbd+AvSSDywuxvg7Hi5SLy38Jcf3geOfcNlU/HfEURgI2gisd1JfR/QxLpNrS0MQorc6WRwbYh+aeMpQDmaH/Ogl6N3lY8EuOBHvtlaE0xsHuVYgM54MqmvVqaZ3tesyAHf+oIUKyzRKki/pZBDUCYHdr37iwlkZP9yZMscwuuDIoSYKsikd2OPKxYMuUwkxJ31h95Wnh4BzCAat1t8ankiAFP99iEMlTtA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=QuoYncLmyqqqfjY93ASrwaN9MkGxY9nGUal9WLlsMJk=; b=ebCvp2u5D5rKveNX6MrLwjmoTGfM27zgk9AGiiALdh6jbKgTqX+ZsM36ABTINRQRAbZ/sS2tgleMqeehSktYV74svmgbj7GrH2oAiN7U0yGMYw1qd+9hEwT+HqcxBmJGwmippxxTtecByfw5CFqokpyB9YmzNyZByo9RIJAYFOzv+sL772s85hP2j9hOFnwUR8jp1quxNa+YWy+uSeJ7wahfAGhPPfvujxteBshaQGgkkBpf72NJi2OGdom/Ye1GVs9w/hPP3Ho+6MXXQ0a5PkxUzZTEKPH+M0G01zoOrareQMm03KkJzf62Ng6rxuvZ+0mUXaRKlRGUdUKlYOZyHA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=QuoYncLmyqqqfjY93ASrwaN9MkGxY9nGUal9WLlsMJk=; b=unknOtXPb5qvb3HwmT8kLJN7mffhwSqSGErqyVhSoPubAOQnXV7JSNZEjedGhNMAPTK3MbATZiXfExalCsrQGEq55QvZehjNn3Gc3J+7Z9bwbWzLFKBq78j9omia0QQ2wzM7VqRrL+JYO56tQfp0IkePv8s08WtMOdEUEW4W+bk= From: Henry Wang To: "xen-devel@lists.xenproject.org" CC: Bertrand Marquis , Julien Grall , "sstabellini@kernel.org" , Andrew Cooper Subject: Xen Summit 2023 Design Session: FF-A Challanges Thread-Topic: Xen Summit 2023 Design Session: FF-A Challanges Thread-Index: AdmobVENtwj0rqU7RBOhAApc4UEreQ== Date: Mon, 26 Jun 2023 20:38:27 +0000 Message-ID: Accept-Language: zh-CN, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ts-tracking-id: 5AA0892B6B0DA84D9F0D989DFB0D43B1.0 Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-traffictypediagnostic: AS8PR08MB7991:EE_|DB9PR08MB9588:EE_|DBAEUR03FT039:EE_|GV1PR08MB8426:EE_ X-MS-Office365-Filtering-Correlation-Id: c7b05031-58d8-43d8-2cb0-08db76855169 x-checkrecipientrouted: true nodisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: v2NG/gCZ92XiYQVCJ2MUnIEdss/aw5WRud93cVv9inlXNdcpPGGJVz49KI90Il0h/ZONzPtvRTWwWqQCcrPgkHU/CdCH8VW5ztKVb4KsEGX61mc3BQOzd8ZSnlSMRRmfAuTWqMkfv4KEjudAlaEqTMjRFSlLi4aMwzXtiBd5rUPU5KRwfJNZJ0u4qzl4KvebxGwXCKpoxdrLURmrCGSujidaHvOr1KMr2mDKPJ/qm0nzjMLYWfZ0qGUZ+HQB53MleauOKO13oI//RXni1TNYk92DaJJHWtLFTMokndwA1fIQ4Jy/sTGGYxU6X4AVxcYyoSzLkYgaESvsySq5KtxPf8q5QzWp00Qxqu+dUkffYqR11DdKI7xhC6LOCPPtfAhqxELHgnS3TEeUYU8Gb73Ihi3GoADg6Fs2p7pL4rgpayCxtryOGmurv6J8DRxFukhA+cDXL/BxriD1tcVVYnZGHbc6iP/kUC+3Tg7NozRPe7lYsG8K0DTPHM9xJzDeA8y4vjug4cPN7Y6361D+71jwdJ6QUUi/CuQ6jIZ4XiIIpT1BRiWIb5KiukWF7vAAzHEGfrXQ5VQTTfqC+zQLhpLpx9d+F2xSbC9nJPTdSYKr0z1oBptE7Mq361rI9g/I1rbA X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB7991.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(376002)(136003)(346002)(39860400002)(366004)(396003)(451199021)(478600001)(6506007)(7696005)(71200400001)(54906003)(83380400001)(66446008)(26005)(9686003)(186003)(2906002)(4744005)(5660300002)(52536014)(33656002)(122000001)(64756008)(316002)(55016003)(66946007)(76116006)(38100700002)(8936002)(8676002)(41300700001)(6916009)(86362001)(4326008)(66556008)(66476007)(38070700005);DIR:OUT;SFP:1101; Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR08MB9588 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: DBAEUR03FT039.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: 8fdbbf52-c24b-4b00-b17f-08db76854bfc X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: Lbz/2u7yhNNi4BOHUA3PZeAy5BQKMi7NWbi86S1ifqrY16aT6Wh+amLeeJV9k1WbyU4mUyDSm0CBaSJz5zCt4hUMJAYO3nDW322PxGHyHwdRNkeMUisNU8/jucs+1U07wIz+Jtyrjm9V1+KPrljAAyb9qPut1rLgqPCDIOS0AUB2wTcorXm/clNNFRaLg7NK+N41KI6WKRNGCbOLnTk6CzMKp4bFX9llaqbKddflYFjyndJa6MURZGN6+BCnyp83mq/OmbaBq3DAvwTqb2QmInbuaV4N94s3+xPwS3gREssPI6zNdHpZnmMV1d7hxvnTr6i1Wu0GWje5Lm2d60gGDgfhBg/kbwoeSCV1HVtcTAA70pGUucAVmephSey0kR90rABkWpWiIcn/7AjuOn9rQ6fEEno1Y1L7y0bPbw0yteRq0yy9bwbyRB22a07ZbUK441+t0WY0YU/cBAjNDI0rSVmRnPGtGadKVUHSwbHIoqfwDj0gWmbt4/9vHA///mzieO5Mq97Rl3gn8ETg1hEsFSFh1naCOSzlUIAPc7zIR+xfnc7iA1PRqaRLz/TFqbjd0QWPu/JbLwuwq8L3ma2HHZR9WKtB8IyNKQFy/pOLUj9VW632yvFF+/hlwWyGPHe6ZbJtuAPBaElR6LVGIl5ZALFcre3J1hHPpDxVJ08VvxySRYVG05T1DbMWKkB2B7FhSFXLoIQD+Evte4Ew5DTJY2QivodvGSXhBj8HSDQwdFc= X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230028)(4636009)(396003)(346002)(136003)(39860400002)(376002)(451199021)(46966006)(40470700004)(36840700001)(36860700001)(82310400005)(47076005)(107886003)(7696005)(83380400001)(336012)(54906003)(26005)(9686003)(6506007)(478600001)(2906002)(186003)(4744005)(5660300002)(356005)(52536014)(33656002)(40460700003)(70206006)(6916009)(4326008)(316002)(81166007)(82740400003)(55016003)(40480700001)(70586007)(8676002)(41300700001)(86362001)(8936002);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Jun 2023 20:38:37.1632 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: c7b05031-58d8-43d8-2cb0-08db76855169 X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: DBAEUR03FT039.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: GV1PR08MB8426 Hi all, Below is the summary for the FF-A Challenges design session. I apologize for being unable to completely follow of the design session... - Scatter gather list and the critical section issue: Summary: we need to have a continuation system on the memory call in the FFA spec - The guest OS sharing memory with the secure world may be "killed" issue: Summary: For the domain destroy, we need to investigate a potential notification system. We need to keep the guest virtually alive till we manage to reclaim the memory. Kind regards, Henry From xen-devel-bounces@lists.xenproject.org Mon Jun 26 20:54:35 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 20:54:35 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555664.867588 (Exim 4.92) (envelope-from ) id 1qDtE2-0000GL-Lh; Mon, 26 Jun 2023 20:54:18 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555664.867588; Mon, 26 Jun 2023 20:54:18 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDtE2-0000GE-II; Mon, 26 Jun 2023 20:54:18 +0000 Received: by outflank-mailman (input) for mailman id 555664; Mon, 26 Jun 2023 20:54:17 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDtE1-0000G8-HF for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 20:54:17 +0000 Received: from EUR04-DB3-obe.outbound.protection.outlook.com (mail-db3eur04on0613.outbound.protection.outlook.com [2a01:111:f400:fe0c::613]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 9bb54150-1463-11ee-8611-37d641c3527e; Mon, 26 Jun 2023 22:54:14 +0200 (CEST) Received: from AM6PR0502CA0043.eurprd05.prod.outlook.com (2603:10a6:20b:56::20) by AS2PR08MB8877.eurprd08.prod.outlook.com (2603:10a6:20b:5e6::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.26; Mon, 26 Jun 2023 20:54:12 +0000 Received: from AM7EUR03FT037.eop-EUR03.prod.protection.outlook.com (2603:10a6:20b:56:cafe::f3) by AM6PR0502CA0043.outlook.office365.com (2603:10a6:20b:56::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.34 via Frontend Transport; Mon, 26 Jun 2023 20:54:11 +0000 Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by AM7EUR03FT037.mail.protection.outlook.com (100.127.140.225) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.15 via Frontend Transport; Mon, 26 Jun 2023 20:54:11 +0000 Received: ("Tessian outbound e2424c13b707:v142"); Mon, 26 Jun 2023 20:54:10 +0000 Received: from af778688d290.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id ED6AEADB-9DAE-422D-8A7F-79AE16C78D1E.1; Mon, 26 Jun 2023 20:54:05 +0000 Received: from EUR04-DB3-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id af778688d290.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Mon, 26 Jun 2023 20:54:05 +0000 Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15) by DB9PR08MB9564.eurprd08.prod.outlook.com (2603:10a6:10:456::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.26; Mon, 26 Jun 2023 20:54:02 +0000 Received: from AS8PR08MB7991.eurprd08.prod.outlook.com ([fe80::1024:cf14:d520:9b38]) by AS8PR08MB7991.eurprd08.prod.outlook.com ([fe80::1024:cf14:d520:9b38%7]) with mapi id 15.20.6521.026; Mon, 26 Jun 2023 20:54:02 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 9bb54150-1463-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=AmFJVhpCI6znewtftscvwD3zMzz33nwPhiW8ifHN6qo=; b=iLjmt5FV4klVQy9h4hbmGB6MUef5emvD76pUkHa6JCf+tAgEgYVkJzM+B66gb0FxQekzDSTyIW7QrTyCbPE4eh8MMqNvh6R8x0fO8RYk5E/PI7+aMar8Vx/i2dXylXW2YqdZ/O50sgza+kII8U1nrTYLCtv6BIJJCXFpExifNO4= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C X-CR-MTA-TID: 64aa7808 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=UEuf1tSv12UpQLLDCw7MCUEF9ZgSMrneA6f0eMr2TwwAZ3UPBNLR5NUtb2LlJewyv1Q4OeW6NqgXFr24G2HCQiD8jgYVslUVmMlsrywlw7Tuvp0En3ATEuRTK4hn2dejfPugTOredyyDbG9id5rNZTwqdUPHTYXn8kVKiOXCvk9wyPyOCdVI4k3+pOwZh/6LC/BDUOYLCa7zXa6Dvv2JND7JpKqS0kKbuhgzZ4yfeA3c4Y9u3qzCsV8E7VYHEk7+JmUyFnU072A9idDQYtAkH6cZNjTLZFJInp2iuT+2XBNhiydkOfFMNx5At+PiwPlicFMKKvijpnBgWmcebPVHAA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=AmFJVhpCI6znewtftscvwD3zMzz33nwPhiW8ifHN6qo=; b=DoauJT12jZu++8aKN6XoWJ3kh1lJhYtcSqZD8rAyO4/ffeq7JXQ58VzmHZGHDI0tZtU+vBsOmct0HAvMGcTet+JQAn6+4fAVDGiYyzkRq4F9znNdwcfRwf7t8OyZoU57UtCWA87H+B8vWLxlidMimudrpCQ3TE2mgmLWFW74RbbWSCTxY186a526Zfv9qjKFKpiKpzGm+8vFROiC1iSZDBgqL0vJDkNLv8Pgxmrev23aL8Q9CTz4J7sPW49pHZcsl31uTDCYsZWP0k/hTzqF/QUZTcfxdDYspy1de9eRBEqUYVDsUMRwwYaNkiguwDCzoLg+qU9lCAQfOGUDSQEgGg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=AmFJVhpCI6znewtftscvwD3zMzz33nwPhiW8ifHN6qo=; b=iLjmt5FV4klVQy9h4hbmGB6MUef5emvD76pUkHa6JCf+tAgEgYVkJzM+B66gb0FxQekzDSTyIW7QrTyCbPE4eh8MMqNvh6R8x0fO8RYk5E/PI7+aMar8Vx/i2dXylXW2YqdZ/O50sgza+kII8U1nrTYLCtv6BIJJCXFpExifNO4= From: Henry Wang To: "xen-devel@lists.xenproject.org" CC: Luca Fancellu , "sstabellini@kernel.org" , Bertrand Marquis , Julien Grall , Anthony PERARD , "alejandro.vallejo@cloud.com" Subject: Xen Summit 2023 Design Session: Doxygen Thread-Topic: Xen Summit 2023 Design Session: Doxygen Thread-Index: AdmocBRMK0dHrUOwQbGVwm1jyHsL3A== Date: Mon, 26 Jun 2023 20:54:02 +0000 Message-ID: Accept-Language: zh-CN, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ts-tracking-id: 557CDB15D79A934E8A62E89BD7B27B03.0 x-checkrecipientchecked: true Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-traffictypediagnostic: AS8PR08MB7991:EE_|DB9PR08MB9564:EE_|AM7EUR03FT037:EE_|AS2PR08MB8877:EE_ X-MS-Office365-Filtering-Correlation-Id: d21fd09b-5274-4991-9e93-08db76877e14 x-checkrecipientrouted: true nodisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: KrDFzkMKox8Ag6aHlX1qtF73b5YqoNcw/XPGjFkfy31/amPcIVCorKhq+40kJ9Y65PcSDVk3j7XQvw6u5utUHt9fqR+SajvGl4NwvKjgZT2eVUCX4jCI8sLP36slwAwXQtALl6fTEj7Fn4k7N3DwTVD6ClM9ERMMNWqd0RH/Vu+Zj5FJmhmJeePCMosTBL6TSevxstWyzIxKnwmko/MId/q1n3b7rP2Bb7u02Q5I3jIFb0iUAz2vZ5CSI7pp58BlMFamDdbWGO+2VnsGaYJdmEdleE7QRnCv8cqUUv/xWQPfZesDj3vYv84Pw4s5XFNatB9c/jgbxE2iE6xXnjM4kIBlIMQgu8tk9jV9DIdBL4jV81K7kd7H/kJ54V1+6ZVQapYf4WT12FTXzxZvpFYZcFm8TuysBWGCj8hgPIk2zeSnkwoJBEP7+BtkeTU3Wj8u2V+yPf8vrQU4Y59LfsbJAP3knRfZmklQtSmWbXnezwOHgTfmQ8EQJ6UyRe2xNF+ZHV8mH8/LZj9Ao+BtIVc7RCB1DEkr2cOYUdO28fSnspGgRxi30Qz7cKNoHHWlYpqRNa+j9smqw2ZcGiYGrSLxbNPfDW4mdQg61hP2IvG1chZVgPAV1z7+6vqouBrdRTvT X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB7991.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(136003)(366004)(376002)(39860400002)(396003)(346002)(451199021)(2906002)(186003)(71200400001)(7696005)(122000001)(38100700002)(6506007)(26005)(9686003)(55016003)(41300700001)(54906003)(38070700005)(86362001)(478600001)(316002)(66556008)(66446008)(4326008)(66946007)(6916009)(33656002)(64756008)(66476007)(76116006)(5660300002)(52536014)(8676002)(8936002);DIR:OUT;SFP:1101; Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR08MB9564 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: AM7EUR03FT037.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: bfcb6caa-f52d-44de-119e-08db768778d5 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: KVtgdhbh0Nfe/E2X+3o8qmph0lJcFeP7tB/k9zidnJRnIBi6VUvqYBuHKacD9EkTcSGIzWd0I7/Phv49m98t+IcMMGAz1AnoXspK18rClXOYbLZALeeLXjf6gosDGX0NXRezxSv7K1wjxH0LIkUrK9xKe7bdD69skPsed6ZHinCYPC8bE3fZUeK08KVjc0SyAPpSTlymlcTgm0yZw7C7b3Dh/tT9qTABqux1Q8073dOvMc2uociZhbzYRC2DHIJ1wEDrlyfMKEaZNU1J17pUopxDNpzfBObrvr/F4u4xulFwHrSUr38LrTd/XMlUQk68DvD9aGrDfYzQpYUQkCLLauz9tawC/AP3kCgKiFTd69t71FGLw2ZeY2uMeKgtEhr5dJNhYdnA2dBTmoJq0R8Jlezi2b0/OA/x78K4KhgIj8SdrlRpc5cQmxRYDgxo6J16Hzl/Xptaf8/7Y0zuSPru3m2W0Y4K5eIKMzLOQP6Rp5x3XFTgRR7sHaqpWo5rFh9IPZZClw4y4eo07dVpUIr1ZwRwlE982O6PYuEGN0rKOH+Hxuu+qgeecWS5QGb1mRl7ZlDwbuC/gj/oTKq9A5lSOfIsdaVTJoBvoVyH73Cj6Ea8qj/a1ENCxqPec+bRHEHH7cS3IJElxCrjj7HGwgoyB+POcmFh/1FcryOUDv9VYtt5ZlLiUpEb/1CN81CBLjz1VDzjOwzFFhKHAKaW0YJmCOqvX3YeiihqggwRApcvF0n1XAndeJTP1W09k6cmO40F X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230028)(4636009)(376002)(396003)(136003)(346002)(39860400002)(451199021)(40470700004)(36840700001)(46966006)(26005)(82310400005)(36860700001)(47076005)(107886003)(478600001)(336012)(7696005)(54906003)(2906002)(6506007)(186003)(5660300002)(52536014)(356005)(40460700003)(33656002)(70206006)(6916009)(81166007)(55016003)(82740400003)(9686003)(40480700001)(70586007)(316002)(8676002)(41300700001)(4326008)(86362001)(8936002);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Jun 2023 20:54:11.0531 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: d21fd09b-5274-4991-9e93-08db76877e14 X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: AM7EUR03FT037.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS2PR08MB8877 Hi all, Below is the note that I've taken for the doxygen design session. Please co= rrect me if I made mistakes. Thanks. Luca: this is to discuss our current documentation and improvements. We started at Arm 2 years ago to introduce sphinx and doxygen. There are some problems as doxygen sometimes needs some in-code comme= nts. Wondering if having doxygen in Xen is a good idea, we can start from maintaining 2 docs in the project, one is the current and the other i= s=20 the experimental one and then evolve from there. Luca: we have a series Arm internally, we need to rebase it again and again= . S: We have a scripts by Ian Jackson available to do things related to the d= oc=20 and the website. The script is unmaintained now and we might need to get rid of it. doxygen is better in terms of maintenance than perl, but the= =20 problem is doxygen is not really "improvement" of the doc itself. J: It is more about, for example, list all the hypercalls description in th= e=20 same doc instead of maintaining the large series. S: If we want to have 2 docs, we need to keep consistent between docs, the = 2 docs should both have complete information about every hypercalls. L: We can start from smaller steps, maybe we can just start to construct th= e=20 new doc instead of directly introduce the hypercall description. B: if we agree the doxygen is the format we go with, the change is more or less mechanical, but the problem is to determine the format we will use and the correct things to do, like how we build the doc S: agreed B: doing the mechanical change should not change the existing contents at a= ll. Otherwise it is hard to review. we need also to take notes about the=20 possible improvements during the review, and gitlab would be a good plac= e to have such noted down. L: our build system is able to build sphinx and html based doxygen doc. can= we=20 push something to the community about introducing such doc? B: Also take the opportunity to introduce the gitlab pipeline for building = the doc Alejandro: I know there is a way to do that Anthony & S: someone knows the xenbits webpage and doc would be good to spe= nd some time to help B: we need to keep the old doc for a while because we need also to provide = the=20 doc for older xen releases L: suggestions about introducing the doxygen S & B: I would start with a 1 to 1 doc instead of too many redirections and= =20 things complicated L & J: Since an agreement is more or less reached to start to introducing t= he=20 doxygen + sphinx, maybe we can continue the discussion in the next commu= nity call to involve other community members unavailable today Anthony & Bertrand: we start from use doxygen to replace what it is current= now and then even start to work on constructing the function API doc using=20 doxygen in the future. This is useful also for MISRA. Luca: For now I cannot commit anything to it, but I will ask for internal opinions and others can also contribute to this. Kind regards, Henry From xen-devel-bounces@lists.xenproject.org Mon Jun 26 21:19:46 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Mon, 26 Jun 2023 21:19:46 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555670.867598 (Exim 4.92) (envelope-from ) id 1qDtcT-0002wR-KD; Mon, 26 Jun 2023 21:19:33 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555670.867598; Mon, 26 Jun 2023 21:19:33 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDtcT-0002wK-HN; Mon, 26 Jun 2023 21:19:33 +0000 Received: by outflank-mailman (input) for mailman id 555670; Mon, 26 Jun 2023 21:19:33 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDtcS-0002wD-MC for xen-devel@lists.xenproject.org; Mon, 26 Jun 2023 21:19:32 +0000 Received: from mo4-p00-ob.smtp.rzone.de (mo4-p00-ob.smtp.rzone.de [81.169.146.217]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 2301b786-1467-11ee-b237-6b7b168915f2; Mon, 26 Jun 2023 23:19:30 +0200 (CEST) Received: from sender by smtp.strato.de (RZmta 49.6.0 AUTH) with ESMTPSA id y5401az5QLJDifg (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256 bits)) (Client did not present a certificate); Mon, 26 Jun 2023 23:19:13 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 2301b786-1467-11ee-b237-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; t=1687814354; cv=none; d=strato.com; s=strato-dkim-0002; b=hTJCBdkND0+z0biJCn1S1yamaOFFq9MwBPlM457hYZqSQqnS0+4df9GxCMaWRBIyIo 9aEuCVRPM745wXq87+gt90itzWvc031C0/aDJPo2bGqK0sI+lNlM470/WcDlQn8o2X2n /Su/yr6F7QUZVttk5kgJBg52kEv4MRHRIVfg0BhbtVxP5+J7P3+iyIbh4uXJRXnRNNT7 SnLGnY8eqqzbedmO2cgHKCiERkxZpngIabllGwlzRU3d6636cZXEDLTni+dfc1HSAvNU BoGbgx4EcsNeh20Gd6noj7XRBqzZ8F50ZF3LI1TyWxdgZpGoziHD1DpXS2YHal4yT0R9 RQDA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; t=1687814354; s=strato-dkim-0002; d=strato.com; h=References:In-Reply-To:Message-ID:Subject:Cc:To:From:Date:Cc:Date: From:Subject:Sender; bh=ZVP9K9M74+FeliftJ4CR3Y0x5CVjLjTW3Jxl9061L0o=; b=Beb4QRo7tQE0pF/u697OkrNMIPbjm0FDYqmJ7GeLUWA1cjHgkjkKA50ovg3hOKSMzE P941MnEi2B1XjwFMELMn3XMGRek5VKj9/Q6ZG+/c12cg2k874+/tJYaoscPG0OSuEYB0 yZBRPVsRs8s2Semw1cE8UMDD2ZyyS6C4GVwOzWqKbjAkX2Htq/10ZANkczERB1MRBTZH YgJRiRKjFJCdQLzzZGHtS0tKWI779WdEDhp2EYYnMwlOI8OL6HXiGtxzlbNxSsDSqTbE 3zBKeG9FTyvrvqcgnGOJYidsznZGbvpBPb8E5/Xdye4FZerQ4HB6RKdEcI6jqfek8dbu FQFg== ARC-Authentication-Results: i=1; strato.com; arc=none; dkim=none X-RZG-CLASS-ID: mo00 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; t=1687814354; s=strato-dkim-0002; d=aepfle.de; h=References:In-Reply-To:Message-ID:Subject:Cc:To:From:Date:Cc:Date: From:Subject:Sender; bh=ZVP9K9M74+FeliftJ4CR3Y0x5CVjLjTW3Jxl9061L0o=; b=rWjQfRiZYN0Q4gbSfbGfKiEy/KVuUvPCe2gI1lxDuwU/BriBp0vnzR0mDwTw/yERu7 Ke7qC7yujA7uB0j6iYtSuZBD1sL4PkbgGSWn5QnYe8Vp6ti3twUyEJsoGEZdPIK4iF3k BVlTpXHkTuBApILGZM5yaLGxEBHe+E7S7J80lAf9tw+HEhS1IQZNdf4b2wUq39h7w6PS 7Sm0KUnuKRybfs/IlXLa0YOtpp3xvRH9W8qGxPm5x9esFiZ2OO/cb0q86ondQ+CLaNgZ iz62G+ZmgLKtfbVby8uZVaPRHyo0xRzvW/xWt+5+KyReOOwHPnOSVj5qbbimEWfft6fU ITog== DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; t=1687814354; s=strato-dkim-0003; d=aepfle.de; h=References:In-Reply-To:Message-ID:Subject:Cc:To:From:Date:Cc:Date: From:Subject:Sender; bh=ZVP9K9M74+FeliftJ4CR3Y0x5CVjLjTW3Jxl9061L0o=; b=3JwhWAhuMMQsBdLBhJY81reAq3TQL0ubmzW3pxfvABuzIcnhTRW9rYhDhg1uqW4DCr tG0OGFJmTX7bCgrp+1Bg== X-RZG-AUTH: ":P2EQZWCpfu+qG7CngxMFH1J+3q8wa/QLpd5ylWvMDX3y/OuD5rXWiuRyeUQh3GC6w0BTiV2X9kN/WAr0rdTE7oY1qJzPNA==" Date: Mon, 26 Jun 2023 23:19:01 +0200 From: Olaf Hering To: Paolo Bonzini , John Snow Cc: xen-devel@lists.xenproject.org, Stefano Stabellini , qemu-devel@nongnu.org Subject: Re: [PATCH v2] piix: fix regression during unplug in Xen HVM domUs Message-ID: <20230626231901.5b5d11c1.olaf@aepfle.de> In-Reply-To: <20230509225818.GA16290@aepfle.de> References: <20210317070046.17860-1-olaf@aepfle.de> <4441d32f-bd52-9408-cabc-146b59f0e4dc@redhat.com> <20210325121219.7b5daf76.olaf@aepfle.de> <20230509225818.GA16290@aepfle.de> X-Mailer: Claws Mail 20230601T090920.68bc28c0 hat ein Softwareproblem, kann man nichts machen. MIME-Version: 1.0 Content-Type: multipart/signed; boundary="Sig_/fVb/B18uuY.hGWIv7Lfyb.S"; protocol="application/pgp-signature"; micalg=pgp-sha256 Content-Transfer-Encoding: 7bit --Sig_/fVb/B18uuY.hGWIv7Lfyb.S Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: quoted-printable I need advice on how to debug this. One thing that stands out is uhci_irq(). It reads a u16 from the USBSTS register.=20 On the qemu side, this read is served from bmdma_read. Since the read size is 2, the result is ~0, and uhci_irq() turns the controller off. In other words, memory_region_ops_read from addr=3D0xc102 is served from "p= iix-bmdma" If the pci_set_word calls in piix_ide_reset are skipped, the read is served from uhci_port_write. This is the expected behavior. In other words, memory_region_ops_read from addr=3D0xc102 is served from "u= hci". So far I was unable to decipher how the pci_set_word calls can possibly affect the outcome and the owner of memory_region_ops_read. Thanks, Olaf Wed, 10 May 2023 00:58:27 +0200 Olaf Hering : > Resuming this old thread about an unfixed bug, which was introduced in qe= mu-4.2: >=20 > qemu ends up in piix_ide_reset from pci_unplug_disks. > This was not the case prior 4.2, the removed call to > qemu_register_reset(piix3_reset, d) in > ee358e919e385fdc79d59d0d47b4a81e349cd5c9 did apparently nothing. >=20 > In my debugging (with v8.0.0) it turned out the three pci_set_word > causes the domU to hang. In fact, it is just the last one: >=20 > pci_set_byte(pci_conf + 0x20, 0x01); /* BMIBA: 20-23h */ >=20 > It changes the value from 0xc121 to 0x1. >=20 > The question is: what does this do in practice? >=20 > Starting with recent qemu (like 7.2), the domU sometimes proceeds with > these messages: >=20 > [ 1.631161] uhci_hcd 0000:00:01.2: host system error, PCI problems? > [ 1.634965] uhci_hcd 0000:00:01.2: host controller process error, = something bad happened! > [ 1.634965] uhci_hcd 0000:00:01.2: host controller halted, very ba= d! > [ 1.634965] uhci_hcd 0000:00:01.2: HC died; cleaning up > Loading basic drivers...[ 2.398048] Disabling IRQ #23 --Sig_/fVb/B18uuY.hGWIv7Lfyb.S Content-Type: application/pgp-signature Content-Description: Digitale Signatur von OpenPGP -----BEGIN PGP SIGNATURE----- iQIzBAEBCAAdFiEE97o7Um30LT3B+5b/86SN7mm1DoAFAmSaAMUACgkQ86SN7mm1 DoBgzQ//QQAr3EXzx2IZheH59Coe/CRrgqw7mEhc68l/67kzRTFXXFq2hTwyeNz/ HQMsl8DwIycsUUgYOWfXsXBJAeH7ixW7Y4bUz4Dnt/cuR6ywCwo1TDbVrJ/8Rx3J Zd4LGpCMsg6vdYIEv83V0+abYRO8X0k9S4ZLoesj42bCjHH6oCinQxI633s6hGXN o101pN9PB0Zp5OWeLaqkd0fnJMZYuIf7BEciOqQHeg7YrKB55VQi/yXXxwogrGsc NtwzTI0PvjeqQFMUxHpQuFaEEnEuxFSRjrGO1wZ3l4Mrx6ZSs2Q5OHqDQ2PGB7hk U8W8FX8IMcuU2fYQkF8JW+f3583RCWNz4JcteWxqD5TJaneBxK7THuCXeFdx8yhp oSE3qUUFkeFzSz7goy69bv9iv5nMfsICP+TP7+SQf3tJyoVYJ4Afaez50GeBazBE fMJ6LJfwpM8Uba2UN/8qaXcq8Oi5r95OIVdFQcqp5/ExLeXkKyltRz+ESJ01rdSC 6sIfdL5dzfvjrxxAlmAwIwyi2r1326ZUewh/HLV2dpXDHtXNYaogbmPFXMMTbFlh 9kHBh7hmfhFVbpsLKR4wOB6qU1kfqVJF9VQ0XHyB8nmTYFfqOb24yR+NWC6yDu2f xHbZEVFovDRZaRprRwKEKxsvp1IZhcV4Z6lzoCnCU1iITT0Iu1s= =XXoH -----END PGP SIGNATURE----- --Sig_/fVb/B18uuY.hGWIv7Lfyb.S-- From xen-devel-bounces@lists.xenproject.org Tue Jun 27 03:15:24 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 03:15:24 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555683.867618 (Exim 4.92) (envelope-from ) id 1qDzAh-00045F-0H; Tue, 27 Jun 2023 03:15:15 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555683.867618; Tue, 27 Jun 2023 03:15:14 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDzAg-000458-TS; Tue, 27 Jun 2023 03:15:14 +0000 Received: by outflank-mailman (input) for mailman id 555683; Tue, 27 Jun 2023 03:15:14 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDzAf-0003uL-WF for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 03:15:14 +0000 Received: from mail-yw1-x1129.google.com (mail-yw1-x1129.google.com [2607:f8b0:4864:20::1129]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id d30baba6-1498-11ee-8611-37d641c3527e; Tue, 27 Jun 2023 05:15:11 +0200 (CEST) Received: by mail-yw1-x1129.google.com with SMTP id 00721157ae682-57015b368c3so30863617b3.3 for ; Mon, 26 Jun 2023 20:15:11 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::16]) by smtp.googlemail.com with ESMTPSA id s4-20020a0dd004000000b0057399b3bd26sm1614798ywd.33.2023.06.26.20.15.07 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 26 Jun 2023 20:15:09 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: d30baba6-1498-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687835710; x=1690427710; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=DXYENedStYVsFXpaqy8X3+wmlabVR1q8JHyD5+dxFj0=; b=Y5YNwg/QZrK+aHp3q3F/s+zHvk1fnDqd1/MV2/FtyEws8x/EU1okIb5gZ0g0bwjJIl 5VUUqN9Wuh0HLMtWdAEYbmMx90i6AJPptQg4hAlIbSGwOvljd5Q6n3O/2f8tA77gBCdK YDhNGdvPzlezHyk8L+H+QUfnc3k/4+57L174UxCkkys5LGiYJFRoujM3bGB1Ibcn91ui mqfwiux2PkGJoz2g2vjn5ccwHyr655voiBf0XjjuTxpjhEe8LJcN7Q6CvIBEB03riKFC EsDpQXncNNWQyJs9hFhiDQn510NXqp1Pgv3vGtCcL2I6tmdj8XTW1jmQN/FUgbsQGPmI XxjQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687835710; x=1690427710; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=DXYENedStYVsFXpaqy8X3+wmlabVR1q8JHyD5+dxFj0=; b=Xn/7qR5c7635679ceaB6D8+Rv5PfivHBcCSaMMdPNjrSKEZtDMfSy9xcQvLW/vSEUo 1EiHzz4iD1gUPx0C18vPew0NU7dk+wSnklNPo6W6PUQRcHAhyKKB1OrgkdCkooYqfyEG rclP/RFrAB2bAPnRsLFSwDK4B9ufc/bvgu3/JMNyYvSLjQq3uy7vDUz5lARt8p+9Oz2/ QrpnIibahP2N+s0/DbyiBtg9KEPTzDQCuFEdFsnfPFY0vy3p2b7ukHveMRMAhjgxEi28 pOSHCBu+rStJ/I9QM+/lQ3nGR+hmv68/nWC4McKpmQDUPtXmBbPFvY8JYOaluGFdh/H1 6cyQ== X-Gm-Message-State: AC+VfDy6JlZw0uF+HEjW8zOW7puHpfPMGbOrycg0CSMUpS94cIK9Qx0v ACm8gJAhuwg8d0E/R1ZSkbmJVEOYJ4hegQ== X-Google-Smtp-Source: ACHHUZ6evDL0HWuUOw/E7eS1sxmpRauJbQh+5KyxG9iaYPnpfZgG5Wrtu7krHuwGR/MT62H3t8vWEA== X-Received: by 2002:a0d:d681:0:b0:561:81b:7319 with SMTP id y123-20020a0dd681000000b00561081b7319mr25124050ywd.32.1687835709872; Mon, 26 Jun 2023 20:15:09 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" , Mike Rapoport Subject: [PATCH v6 01/33] mm: Add PAGE_TYPE_OP folio functions Date: Mon, 26 Jun 2023 20:13:59 -0700 Message-Id: <20230627031431.29653-2-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230627031431.29653-1-vishal.moola@gmail.com> References: <20230627031431.29653-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit No folio equivalents for page type operations have been defined, so define them for later folio conversions. Also changes the Page##uname macros to take in const struct page* since we only read the memory here. Signed-off-by: Vishal Moola (Oracle) Acked-by: Mike Rapoport (IBM) --- include/linux/page-flags.h | 30 +++++++++++++++++++++++------- 1 file changed, 23 insertions(+), 7 deletions(-) diff --git a/include/linux/page-flags.h b/include/linux/page-flags.h index 92a2063a0a23..9218028caf33 100644 --- a/include/linux/page-flags.h +++ b/include/linux/page-flags.h @@ -908,6 +908,8 @@ static inline bool is_page_hwpoison(struct page *page) #define PageType(page, flag) \ ((page->page_type & (PAGE_TYPE_BASE | flag)) == PAGE_TYPE_BASE) +#define folio_test_type(folio, flag) \ + ((folio->page.page_type & (PAGE_TYPE_BASE | flag)) == PAGE_TYPE_BASE) static inline int page_type_has_type(unsigned int page_type) { @@ -919,27 +921,41 @@ static inline int page_has_type(struct page *page) return page_type_has_type(page->page_type); } -#define PAGE_TYPE_OPS(uname, lname) \ -static __always_inline int Page##uname(struct page *page) \ +#define PAGE_TYPE_OPS(uname, lname, fname) \ +static __always_inline int Page##uname(const struct page *page) \ { \ return PageType(page, PG_##lname); \ } \ +static __always_inline int folio_test_##fname(const struct folio *folio)\ +{ \ + return folio_test_type(folio, PG_##lname); \ +} \ static __always_inline void __SetPage##uname(struct page *page) \ { \ VM_BUG_ON_PAGE(!PageType(page, 0), page); \ page->page_type &= ~PG_##lname; \ } \ +static __always_inline void __folio_set_##fname(struct folio *folio) \ +{ \ + VM_BUG_ON_FOLIO(!folio_test_type(folio, 0), folio); \ + folio->page.page_type &= ~PG_##lname; \ +} \ static __always_inline void __ClearPage##uname(struct page *page) \ { \ VM_BUG_ON_PAGE(!Page##uname(page), page); \ page->page_type |= PG_##lname; \ -} +} \ +static __always_inline void __folio_clear_##fname(struct folio *folio) \ +{ \ + VM_BUG_ON_FOLIO(!folio_test_##fname(folio), folio); \ + folio->page.page_type |= PG_##lname; \ +} \ /* * PageBuddy() indicates that the page is free and in the buddy system * (see mm/page_alloc.c). */ -PAGE_TYPE_OPS(Buddy, buddy) +PAGE_TYPE_OPS(Buddy, buddy, buddy) /* * PageOffline() indicates that the page is logically offline although the @@ -963,7 +979,7 @@ PAGE_TYPE_OPS(Buddy, buddy) * pages should check PageOffline() and synchronize with such drivers using * page_offline_freeze()/page_offline_thaw(). */ -PAGE_TYPE_OPS(Offline, offline) +PAGE_TYPE_OPS(Offline, offline, offline) extern void page_offline_freeze(void); extern void page_offline_thaw(void); @@ -973,12 +989,12 @@ extern void page_offline_end(void); /* * Marks pages in use as page tables. */ -PAGE_TYPE_OPS(Table, table) +PAGE_TYPE_OPS(Table, table, pgtable) /* * Marks guardpages used with debug_pagealloc. */ -PAGE_TYPE_OPS(Guard, guard) +PAGE_TYPE_OPS(Guard, guard, guard) extern bool is_free_buddy_page(struct page *page); -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Tue Jun 27 03:15:24 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 03:15:24 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555685.867638 (Exim 4.92) (envelope-from ) id 1qDzAk-0004aw-Ig; Tue, 27 Jun 2023 03:15:18 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555685.867638; Tue, 27 Jun 2023 03:15:18 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDzAk-0004al-FS; Tue, 27 Jun 2023 03:15:18 +0000 Received: by outflank-mailman (input) for mailman id 555685; Tue, 27 Jun 2023 03:15:17 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDzAj-0003uL-3j for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 03:15:17 +0000 Received: from mail-yw1-x112c.google.com (mail-yw1-x112c.google.com [2607:f8b0:4864:20::112c]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id d5aac543-1498-11ee-8611-37d641c3527e; Tue, 27 Jun 2023 05:15:15 +0200 (CEST) Received: by mail-yw1-x112c.google.com with SMTP id 00721157ae682-57001c0baddso32901277b3.2 for ; Mon, 26 Jun 2023 20:15:15 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::16]) by smtp.googlemail.com with ESMTPSA id s4-20020a0dd004000000b0057399b3bd26sm1614798ywd.33.2023.06.26.20.15.12 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 26 Jun 2023 20:15:13 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: d5aac543-1498-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687835714; x=1690427714; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=g10wkISUfh+NWh/zmhT9FX+m3ZttfvdTUqPKBonJP24=; b=YbS6It5/jG4gj9GV1WnqlWfE48J9CdnxNvOxOEYb2jkpFBwkcijgogv5/2FTyBYSJu izIlhC4BKNDwS5s1e4kK9kflroiGbN+V3CM6t7L2EFgtcSkg+ReKLemBNYF5Y3oVXg4d FUK6TJROlYVwfl34r2gL5piZl88lZtnh5mJi4W6rFRki4guA/8D+KKFrkkfHcSu1EJOJ fncA5E4mKOaGZV6UHnLSf+mughQQ2/sG6vdU9OT//BnRvDPbrV7dVSZuLKiGxg9g4JB4 L4rqAG2yhTX1HWLW8k7KKi4wHWH5luhyXPrJQJ+E2hOyRozoqBZDlMJstEk3Y4X/0/Xj 8nVg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687835714; x=1690427714; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=g10wkISUfh+NWh/zmhT9FX+m3ZttfvdTUqPKBonJP24=; b=Rt3kWxtJXqPX0bXfJ0UD6mQadmlVXkFEqWq9kvvpijqC0vOM/vCGtV7pvf1Pd55h/H Rr8mDYsYaBx9nRgjciPwfQqaeQDtW3Slrqu+4/wiQWzy7BK6Jg6/M2aJSij3PpHtXfM6 W0qjzldUw6OQfnba5XUDVPiHu2Z97n/WBNccptY4tQp9klKLj9SfbA3vJO9dgxRXB907 +Au48RtJsQV4fNQJWKfPb+06DGdEnTdkE2YhKfL44G6MrnxbTW/b4/tlx2T1mB+mqOwo qsTqgrJpRdjuu5j6ZOk7l8etcaniPm11S8/sbRbllyTLvtWFUoao1zWTCfQ5sFlEhqqA XTCg== X-Gm-Message-State: AC+VfDz3IplNLCs71JIJh63cmWjRvNh4ndLH4Z+1MaORcqUuUlhbJ06p VKSRaZt/Tx4ZNK832QL2fsQ= X-Google-Smtp-Source: ACHHUZ4trddfgXzjmNYnvfIX3UyOWVfVwt64/0k1X+1Ib62f54dPN/U9UUyskS0pcHiYwtqCWDYcTQ== X-Received: by 2002:a81:4e44:0:b0:56f:ff55:2b74 with SMTP id c65-20020a814e44000000b0056fff552b74mr21585770ywb.37.1687835714203; Mon, 26 Jun 2023 20:15:14 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" , Mike Rapoport Subject: [PATCH v6 03/33] pgtable: Create struct ptdesc Date: Mon, 26 Jun 2023 20:14:01 -0700 Message-Id: <20230627031431.29653-4-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230627031431.29653-1-vishal.moola@gmail.com> References: <20230627031431.29653-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Currently, page table information is stored within struct page. As part of simplifying struct page, create struct ptdesc for page table information. Signed-off-by: Vishal Moola (Oracle) Acked-by: Mike Rapoport (IBM) --- include/linux/pgtable.h | 68 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 68 insertions(+) diff --git a/include/linux/pgtable.h b/include/linux/pgtable.h index 5063b482e34f..d46cb709ce08 100644 --- a/include/linux/pgtable.h +++ b/include/linux/pgtable.h @@ -987,6 +987,74 @@ static inline void ptep_modify_prot_commit(struct vm_area_struct *vma, #endif /* __HAVE_ARCH_PTEP_MODIFY_PROT_TRANSACTION */ #endif /* CONFIG_MMU */ + +/** + * struct ptdesc - Memory descriptor for page tables. + * @__page_flags: Same as page flags. Unused for page tables. + * @pt_rcu_head: For freeing page table pages. + * @pt_list: List of used page tables. Used for s390 and x86. + * @_pt_pad_1: Padding that aliases with page's compound head. + * @pmd_huge_pte: Protected by ptdesc->ptl, used for THPs. + * @_pt_s390_gaddr: Aliases with page's mapping. Used for s390 gmap only. + * @pt_mm: Used for x86 pgds. + * @pt_frag_refcount: For fragmented page table tracking. Powerpc and s390 only. + * @ptl: Lock for the page table. + * @__page_type: Same as page->page_type. Unused for page tables. + * @_refcount: Same as page refcount. Used for s390 page tables. + * @pt_memcg_data: Memcg data. Tracked for page tables here. + * + * This struct overlays struct page for now. Do not modify without a good + * understanding of the issues. + */ +struct ptdesc { + unsigned long __page_flags; + + union { + struct rcu_head pt_rcu_head; + struct list_head pt_list; + struct { + unsigned long _pt_pad_1; + pgtable_t pmd_huge_pte; + }; + }; + unsigned long _pt_s390_gaddr; + + union { + struct mm_struct *pt_mm; + atomic_t pt_frag_refcount; + }; + + union { + unsigned long _pt_pad_2; +#if ALLOC_SPLIT_PTLOCKS + spinlock_t *ptl; +#else + spinlock_t ptl; +#endif + }; + unsigned int __page_type; + atomic_t _refcount; +#ifdef CONFIG_MEMCG + unsigned long pt_memcg_data; +#endif +}; + +#define TABLE_MATCH(pg, pt) \ + static_assert(offsetof(struct page, pg) == offsetof(struct ptdesc, pt)) +TABLE_MATCH(flags, __page_flags); +TABLE_MATCH(compound_head, pt_list); +TABLE_MATCH(compound_head, _pt_pad_1); +TABLE_MATCH(pmd_huge_pte, pmd_huge_pte); +TABLE_MATCH(mapping, _pt_s390_gaddr); +TABLE_MATCH(pt_mm, pt_mm); +TABLE_MATCH(ptl, ptl); +TABLE_MATCH(rcu_head, pt_rcu_head); +#ifdef CONFIG_MEMCG +TABLE_MATCH(memcg_data, pt_memcg_data); +#endif +#undef TABLE_MATCH +static_assert(sizeof(struct ptdesc) <= sizeof(struct page)); + /* * No-op macros that just return the current protection value. Defined here * because these macros can be used even if CONFIG_MMU is not defined. -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Tue Jun 27 03:15:24 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 03:15:24 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555686.867648 (Exim 4.92) (envelope-from ) id 1qDzAl-0004rC-QB; Tue, 27 Jun 2023 03:15:19 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555686.867648; Tue, 27 Jun 2023 03:15:19 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDzAl-0004qz-Me; Tue, 27 Jun 2023 03:15:19 +0000 Received: by outflank-mailman (input) for mailman id 555686; Tue, 27 Jun 2023 03:15:18 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDzAk-0003pv-5W for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 03:15:18 +0000 Received: from mail-yw1-x1130.google.com (mail-yw1-x1130.google.com [2607:f8b0:4864:20::1130]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id d6ecc93e-1498-11ee-b237-6b7b168915f2; Tue, 27 Jun 2023 05:15:17 +0200 (CEST) Received: by mail-yw1-x1130.google.com with SMTP id 00721157ae682-573491c4deeso42149687b3.0 for ; Mon, 26 Jun 2023 20:15:17 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::16]) by smtp.googlemail.com with ESMTPSA id s4-20020a0dd004000000b0057399b3bd26sm1614798ywd.33.2023.06.26.20.15.14 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 26 Jun 2023 20:15:15 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: d6ecc93e-1498-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687835716; x=1690427716; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=HtFJ7gYDDt6nFtJ3t4rf4iEtrxS/aE7Nt5tBsex6r9A=; b=ezZY2RRaBsO8vupgw2jirYZqUqmGibvIwA82DEMWpf56igWuBXAqitT4X8HFP0H1em qInNajfNuzHXRKyCsOjr1ow6YjtmBJmSGwTpqkLixyNIhU7k9Ph16qz2hibDBlk4ocWn RdQq60FSFIq8+C1zjLLZN/Rg7C2lIgGdw5ZwRyR727fqaxVVL271FHYTSlcEWFbnTW+n ai4y6LrhJ2fQPdUOuCCIjPAYCrwucE/VRobbMg4Tdi7YBB6HSEEQoC+LDsht9wreS+ur 2ZI4rM/c7NVhKyeNzOFTFN1TecKoEZQs/ZCcRhwVVJL+smX0rtd7NxGtRSoeSJDmpM8H CrQw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687835716; x=1690427716; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=HtFJ7gYDDt6nFtJ3t4rf4iEtrxS/aE7Nt5tBsex6r9A=; b=LpVpNDdXgwRIkadLmgSVWAd9GrncqLIiCNluaviIUHwGYUFpk5lwuKQHEKi4R7Cyw8 G9/6sW3fuU15Ox+elSd2sejEYjSy3asqT3K3OdvyMPkB4v9/afgLYypEBnvH1Ix3WwIT /3SmUPBq1b2kvnA428EPQg4shMM1St46sJbpjOkPf0XQ6plI9ruMw5BcegJVNDsGcALe WHeeyVRun2PXJQ+Kh85zCXFXo8OWc1ETgwTBz7voyHjVBHsUUX18jD8NBJuRJcyLoFxm sjlpa44eKJVyZ+Xv/2ZrIXePy7HfPrKyESULKTDgm7UncG/Pj26IVHSe96lbs4zeUgWM fVTQ== X-Gm-Message-State: AC+VfDwuvXbKmtoahrhGk9N3Wem7pIMXQf67vxSVPZ+b66PxKw8YQZoX d+QsD/azBAo04jw/SB0WmSA= X-Google-Smtp-Source: ACHHUZ4EM4P6arjbVFZ7FT16PBM+ahxIjoFzjt7cHsivb9z4gadBenbNhcBrFTzqfItdDpBTwEdG4w== X-Received: by 2002:a0d:c786:0:b0:570:8854:8e9e with SMTP id j128-20020a0dc786000000b0057088548e9emr26427874ywd.33.1687835716265; Mon, 26 Jun 2023 20:15:16 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" Subject: [PATCH v6 04/33] mm: add utility functions for ptdesc Date: Mon, 26 Jun 2023 20:14:02 -0700 Message-Id: <20230627031431.29653-5-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230627031431.29653-1-vishal.moola@gmail.com> References: <20230627031431.29653-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Introduce utility functions setting the foundation for ptdescs. These will also assist in the splitting out of ptdesc from struct page. Functions that focus on the descriptor are prefixed with ptdesc_* while functions that focus on the pagetable are prefixed with pagetable_*. pagetable_alloc() is defined to allocate new ptdesc pages as compound pages. This is to standardize ptdescs by allowing for one allocation and one free function, in contrast to 2 allocation and 2 free functions. Signed-off-by: Vishal Moola (Oracle) --- include/asm-generic/tlb.h | 11 ++++++++ include/linux/mm.h | 56 +++++++++++++++++++++++++++++++++++++++ include/linux/pgtable.h | 12 +++++++++ 3 files changed, 79 insertions(+) diff --git a/include/asm-generic/tlb.h b/include/asm-generic/tlb.h index b46617207c93..6bade9e0e799 100644 --- a/include/asm-generic/tlb.h +++ b/include/asm-generic/tlb.h @@ -481,6 +481,17 @@ static inline void tlb_remove_page(struct mmu_gather *tlb, struct page *page) return tlb_remove_page_size(tlb, page, PAGE_SIZE); } +static inline void tlb_remove_ptdesc(struct mmu_gather *tlb, void *pt) +{ + tlb_remove_table(tlb, pt); +} + +/* Like tlb_remove_ptdesc, but for page-like page directories. */ +static inline void tlb_remove_page_ptdesc(struct mmu_gather *tlb, struct ptdesc *pt) +{ + tlb_remove_page(tlb, ptdesc_page(pt)); +} + static inline void tlb_change_page_size(struct mmu_gather *tlb, unsigned int page_size) { diff --git a/include/linux/mm.h b/include/linux/mm.h index 0dad5f40ef96..14d95d494958 100644 --- a/include/linux/mm.h +++ b/include/linux/mm.h @@ -2744,6 +2744,57 @@ static inline pmd_t *pmd_alloc(struct mm_struct *mm, pud_t *pud, unsigned long a } #endif /* CONFIG_MMU */ +static inline struct ptdesc *virt_to_ptdesc(const void *x) +{ + return page_ptdesc(virt_to_page(x)); +} + +static inline void *ptdesc_to_virt(const struct ptdesc *pt) +{ + return page_to_virt(ptdesc_page(pt)); +} + +static inline void *ptdesc_address(const struct ptdesc *pt) +{ + return folio_address(ptdesc_folio(pt)); +} + +static inline bool pagetable_is_reserved(struct ptdesc *pt) +{ + return folio_test_reserved(ptdesc_folio(pt)); +} + +/** + * pagetable_alloc - Allocate pagetables + * @gfp: GFP flags + * @order: desired pagetable order + * + * pagetable_alloc allocates memory for page tables as well as a page table + * descriptor to describe that memory. + * + * Return: The ptdesc describing the allocated page tables. + */ +static inline struct ptdesc *pagetable_alloc(gfp_t gfp, unsigned int order) +{ + struct page *page = alloc_pages(gfp | __GFP_COMP, order); + + return page_ptdesc(page); +} + +/** + * pagetable_free - Free pagetables + * @pt: The page table descriptor + * + * pagetable_free frees the memory of all page tables described by a page + * table descriptor and the memory for the descriptor itself. + */ +static inline void pagetable_free(struct ptdesc *pt) +{ + struct page *page = ptdesc_page(pt); + + __free_pages(page, compound_order(page)); +} + #if USE_SPLIT_PTE_PTLOCKS #if ALLOC_SPLIT_PTLOCKS void __init ptlock_cache_init(void); @@ -2981,6 +3032,11 @@ static inline void mark_page_reserved(struct page *page) adjust_managed_page_count(page, -1); } +static inline void free_reserved_ptdesc(struct ptdesc *pt) +{ + free_reserved_page(ptdesc_page(pt)); +} + /* * Default method to free all the __init memory into the buddy system. * The freed pages will be poisoned with pattern "poison" if it's within diff --git a/include/linux/pgtable.h b/include/linux/pgtable.h index d46cb709ce08..e9bb5f18cade 100644 --- a/include/linux/pgtable.h +++ b/include/linux/pgtable.h @@ -1055,6 +1055,18 @@ TABLE_MATCH(memcg_data, pt_memcg_data); #undef TABLE_MATCH static_assert(sizeof(struct ptdesc) <= sizeof(struct page)); +#define ptdesc_page(pt) (_Generic((pt), \ + const struct ptdesc *: (const struct page *)(pt), \ + struct ptdesc *: (struct page *)(pt))) + +#define ptdesc_folio(pt) (_Generic((pt), \ + const struct ptdesc *: (const struct folio *)(pt), \ + struct ptdesc *: (struct folio *)(pt))) + +#define page_ptdesc(p) (_Generic((p), \ + const struct page *: (const struct ptdesc *)(p), \ + struct page *: (struct ptdesc *)(p))) + /* * No-op macros that just return the current protection value. Defined here * because these macros can be used even if CONFIG_MMU is not defined. -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Tue Jun 27 03:15:24 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 03:15:24 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555684.867628 (Exim 4.92) (envelope-from ) id 1qDzAi-0004K6-8Z; Tue, 27 Jun 2023 03:15:16 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555684.867628; Tue, 27 Jun 2023 03:15:16 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDzAi-0004Jz-45; Tue, 27 Jun 2023 03:15:16 +0000 Received: by outflank-mailman (input) for mailman id 555684; Tue, 27 Jun 2023 03:15:15 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDzAh-0003uL-DK for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 03:15:15 +0000 Received: from mail-yw1-x1132.google.com (mail-yw1-x1132.google.com [2607:f8b0:4864:20::1132]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id d4708607-1498-11ee-8611-37d641c3527e; Tue, 27 Jun 2023 05:15:13 +0200 (CEST) Received: by mail-yw1-x1132.google.com with SMTP id 00721157ae682-56fff21c2ebso42594687b3.3 for ; Mon, 26 Jun 2023 20:15:13 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::16]) by smtp.googlemail.com with ESMTPSA id s4-20020a0dd004000000b0057399b3bd26sm1614798ywd.33.2023.06.26.20.15.10 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 26 Jun 2023 20:15:11 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: d4708607-1498-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687835712; x=1690427712; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=qrvvNogNsRIG83AHolsa9VCJSL8m6r0U+Sd+5GfHivE=; b=KFVPW/L1EGxf5onR9E38PakeUBm7Bbz4cFtahphLQ1sSUVNZGd7nER5RaL9WyA/UoL PgHHcs40P3f/vASt7RkKBQRHT9dThfptLWW5jKgWLlumWguDDfYLL3SZytXiaD4+4jm3 +atBVT37Sy/bJdoy89PSRnhwLs21WCXUyqFfA474pZoTc/BYDk8coSLDXM596R5kRLhl TefvIuFAqXot7lehideoP0lQvT6kZ9W44JAb3vqqx0E/oORJxSklOEhBggPE04qM7hKm 4F8j8xTI+8DdC5lHV59rBabQmofEn421JCLtxF3k9d/+4bYzPJjNOJQB3f4xHw6c3xwN WsmQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687835712; x=1690427712; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=qrvvNogNsRIG83AHolsa9VCJSL8m6r0U+Sd+5GfHivE=; b=ezJqIVNe7apsicOW3hXNAPNaMdrmJ5WNYe85tByXzhJFwz6mAmWVMvim65EQKF8bej 3KQ8TK5WiEXJWEDtjbkU+hb7UbJUfZcMGlFVPKvM1ygwaPPJQg+Z3e6ZbhQlZ73k53He Q0Mq6xqUkvBo+MD6BT/hQm6/0tXeAU+FnU9KyOwFcSiErQC2xbEVmOwBbs7v3Cn3UN3/ FgwR6ShOtbhAhHuCdpzfN7TtHq6eOplmPyfabG+ADsMyB3tRS6m9vfF1yL0SJETmkRm4 iT9XTK0Jw4hrqygehq34mw0wQFqQuoU5IQIDvGAg5mywS+2TSQzmKrlj5gJuX6WypKNx Egog== X-Gm-Message-State: AC+VfDzR9RwjOFo8P+/OW3yfHTltKc9dZRewyit27qmGhdiLqB0lccK1 9vbKFz8fq8qtPEA1jemkl5o= X-Google-Smtp-Source: ACHHUZ4EjEEup/VuemcyzWvx8SgfEca6vpQ2dFXd0lLvBvj7yBbGJ1thxu6SdSgQ7bisiJP7oRqBcQ== X-Received: by 2002:a81:7d84:0:b0:576:9b21:2411 with SMTP id y126-20020a817d84000000b005769b212411mr8527217ywc.20.1687835712129; Mon, 26 Jun 2023 20:15:12 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" , David Hildenbrand , Claudio Imbrenda , Mike Rapoport Subject: [PATCH v6 02/33] s390: Use _pt_s390_gaddr for gmap address tracking Date: Mon, 26 Jun 2023 20:14:00 -0700 Message-Id: <20230627031431.29653-3-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230627031431.29653-1-vishal.moola@gmail.com> References: <20230627031431.29653-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit s390 uses page->index to keep track of page tables for the guest address space. In an attempt to consolidate the usage of page fields in s390, replace _pt_pad_2 with _pt_s390_gaddr to replace page->index in gmap. Since page->_pt_s390_gaddr aliases with mapping, ensure its set to NULL before freeing the pages as well. This also reverts commit 7e25de77bc5ea ("s390/mm: use pmd_pgtable_page() helper in __gmap_segment_gaddr()") which had s390 use pmd_pgtable_page() to get a gmap page table, as pmd_pgtable_page() should be used for more generic process page tables. Signed-off-by: Vishal Moola (Oracle) Acked-by: Mike Rapoport (IBM) --- arch/s390/mm/gmap.c | 56 +++++++++++++++++++++++++++------------- include/linux/mm_types.h | 2 +- 2 files changed, 39 insertions(+), 19 deletions(-) diff --git a/arch/s390/mm/gmap.c b/arch/s390/mm/gmap.c index f4b6fc746fce..beb4804d9ca8 100644 --- a/arch/s390/mm/gmap.c +++ b/arch/s390/mm/gmap.c @@ -70,7 +70,7 @@ static struct gmap *gmap_alloc(unsigned long limit) page = alloc_pages(GFP_KERNEL_ACCOUNT, CRST_ALLOC_ORDER); if (!page) goto out_free; - page->index = 0; + page->_pt_s390_gaddr = 0; list_add(&page->lru, &gmap->crst_list); table = page_to_virt(page); crst_table_init(table, etype); @@ -187,16 +187,20 @@ static void gmap_free(struct gmap *gmap) if (!(gmap_is_shadow(gmap) && gmap->removed)) gmap_flush_tlb(gmap); /* Free all segment & region tables. */ - list_for_each_entry_safe(page, next, &gmap->crst_list, lru) + list_for_each_entry_safe(page, next, &gmap->crst_list, lru) { + page->_pt_s390_gaddr = 0; __free_pages(page, CRST_ALLOC_ORDER); + } gmap_radix_tree_free(&gmap->guest_to_host); gmap_radix_tree_free(&gmap->host_to_guest); /* Free additional data for a shadow gmap */ if (gmap_is_shadow(gmap)) { /* Free all page tables. */ - list_for_each_entry_safe(page, next, &gmap->pt_list, lru) + list_for_each_entry_safe(page, next, &gmap->pt_list, lru) { + page->_pt_s390_gaddr = 0; page_table_free_pgste(page); + } gmap_rmap_radix_tree_free(&gmap->host_to_rmap); /* Release reference to the parent */ gmap_put(gmap->parent); @@ -318,12 +322,14 @@ static int gmap_alloc_table(struct gmap *gmap, unsigned long *table, list_add(&page->lru, &gmap->crst_list); *table = __pa(new) | _REGION_ENTRY_LENGTH | (*table & _REGION_ENTRY_TYPE_MASK); - page->index = gaddr; + page->_pt_s390_gaddr = gaddr; page = NULL; } spin_unlock(&gmap->guest_table_lock); - if (page) + if (page) { + page->_pt_s390_gaddr = 0; __free_pages(page, CRST_ALLOC_ORDER); + } return 0; } @@ -336,12 +342,14 @@ static int gmap_alloc_table(struct gmap *gmap, unsigned long *table, static unsigned long __gmap_segment_gaddr(unsigned long *entry) { struct page *page; - unsigned long offset; + unsigned long offset, mask; offset = (unsigned long) entry / sizeof(unsigned long); offset = (offset & (PTRS_PER_PMD - 1)) * PMD_SIZE; - page = pmd_pgtable_page((pmd_t *) entry); - return page->index + offset; + mask = ~(PTRS_PER_PMD * sizeof(pmd_t) - 1); + page = virt_to_page((void *)((unsigned long) entry & mask)); + + return page->_pt_s390_gaddr + offset; } /** @@ -1351,6 +1359,7 @@ static void gmap_unshadow_pgt(struct gmap *sg, unsigned long raddr) /* Free page table */ page = phys_to_page(pgt); list_del(&page->lru); + page->_pt_s390_gaddr = 0; page_table_free_pgste(page); } @@ -1379,6 +1388,7 @@ static void __gmap_unshadow_sgt(struct gmap *sg, unsigned long raddr, /* Free page table */ page = phys_to_page(pgt); list_del(&page->lru); + page->_pt_s390_gaddr = 0; page_table_free_pgste(page); } } @@ -1409,6 +1419,7 @@ static void gmap_unshadow_sgt(struct gmap *sg, unsigned long raddr) /* Free segment table */ page = phys_to_page(sgt); list_del(&page->lru); + page->_pt_s390_gaddr = 0; __free_pages(page, CRST_ALLOC_ORDER); } @@ -1437,6 +1448,7 @@ static void __gmap_unshadow_r3t(struct gmap *sg, unsigned long raddr, /* Free segment table */ page = phys_to_page(sgt); list_del(&page->lru); + page->_pt_s390_gaddr = 0; __free_pages(page, CRST_ALLOC_ORDER); } } @@ -1467,6 +1479,7 @@ static void gmap_unshadow_r3t(struct gmap *sg, unsigned long raddr) /* Free region 3 table */ page = phys_to_page(r3t); list_del(&page->lru); + page->_pt_s390_gaddr = 0; __free_pages(page, CRST_ALLOC_ORDER); } @@ -1495,6 +1508,7 @@ static void __gmap_unshadow_r2t(struct gmap *sg, unsigned long raddr, /* Free region 3 table */ page = phys_to_page(r3t); list_del(&page->lru); + page->_pt_s390_gaddr = 0; __free_pages(page, CRST_ALLOC_ORDER); } } @@ -1525,6 +1539,7 @@ static void gmap_unshadow_r2t(struct gmap *sg, unsigned long raddr) /* Free region 2 table */ page = phys_to_page(r2t); list_del(&page->lru); + page->_pt_s390_gaddr = 0; __free_pages(page, CRST_ALLOC_ORDER); } @@ -1557,6 +1572,7 @@ static void __gmap_unshadow_r1t(struct gmap *sg, unsigned long raddr, /* Free region 2 table */ page = phys_to_page(r2t); list_del(&page->lru); + page->_pt_s390_gaddr = 0; __free_pages(page, CRST_ALLOC_ORDER); } } @@ -1762,9 +1778,9 @@ int gmap_shadow_r2t(struct gmap *sg, unsigned long saddr, unsigned long r2t, page = alloc_pages(GFP_KERNEL_ACCOUNT, CRST_ALLOC_ORDER); if (!page) return -ENOMEM; - page->index = r2t & _REGION_ENTRY_ORIGIN; + page->_pt_s390_gaddr = r2t & _REGION_ENTRY_ORIGIN; if (fake) - page->index |= GMAP_SHADOW_FAKE_TABLE; + page->_pt_s390_gaddr |= GMAP_SHADOW_FAKE_TABLE; s_r2t = page_to_phys(page); /* Install shadow region second table */ spin_lock(&sg->guest_table_lock); @@ -1814,6 +1830,7 @@ int gmap_shadow_r2t(struct gmap *sg, unsigned long saddr, unsigned long r2t, return rc; out_free: spin_unlock(&sg->guest_table_lock); + page->_pt_s390_gaddr = 0; __free_pages(page, CRST_ALLOC_ORDER); return rc; } @@ -1846,9 +1863,9 @@ int gmap_shadow_r3t(struct gmap *sg, unsigned long saddr, unsigned long r3t, page = alloc_pages(GFP_KERNEL_ACCOUNT, CRST_ALLOC_ORDER); if (!page) return -ENOMEM; - page->index = r3t & _REGION_ENTRY_ORIGIN; + page->_pt_s390_gaddr = r3t & _REGION_ENTRY_ORIGIN; if (fake) - page->index |= GMAP_SHADOW_FAKE_TABLE; + page->_pt_s390_gaddr |= GMAP_SHADOW_FAKE_TABLE; s_r3t = page_to_phys(page); /* Install shadow region second table */ spin_lock(&sg->guest_table_lock); @@ -1898,6 +1915,7 @@ int gmap_shadow_r3t(struct gmap *sg, unsigned long saddr, unsigned long r3t, return rc; out_free: spin_unlock(&sg->guest_table_lock); + page->_pt_s390_gaddr = 0; __free_pages(page, CRST_ALLOC_ORDER); return rc; } @@ -1930,9 +1948,9 @@ int gmap_shadow_sgt(struct gmap *sg, unsigned long saddr, unsigned long sgt, page = alloc_pages(GFP_KERNEL_ACCOUNT, CRST_ALLOC_ORDER); if (!page) return -ENOMEM; - page->index = sgt & _REGION_ENTRY_ORIGIN; + page->_pt_s390_gaddr = sgt & _REGION_ENTRY_ORIGIN; if (fake) - page->index |= GMAP_SHADOW_FAKE_TABLE; + page->_pt_s390_gaddr |= GMAP_SHADOW_FAKE_TABLE; s_sgt = page_to_phys(page); /* Install shadow region second table */ spin_lock(&sg->guest_table_lock); @@ -1982,6 +2000,7 @@ int gmap_shadow_sgt(struct gmap *sg, unsigned long saddr, unsigned long sgt, return rc; out_free: spin_unlock(&sg->guest_table_lock); + page->_pt_s390_gaddr = 0; __free_pages(page, CRST_ALLOC_ORDER); return rc; } @@ -2014,9 +2033,9 @@ int gmap_shadow_pgt_lookup(struct gmap *sg, unsigned long saddr, if (table && !(*table & _SEGMENT_ENTRY_INVALID)) { /* Shadow page tables are full pages (pte+pgste) */ page = pfn_to_page(*table >> PAGE_SHIFT); - *pgt = page->index & ~GMAP_SHADOW_FAKE_TABLE; + *pgt = page->_pt_s390_gaddr & ~GMAP_SHADOW_FAKE_TABLE; *dat_protection = !!(*table & _SEGMENT_ENTRY_PROTECT); - *fake = !!(page->index & GMAP_SHADOW_FAKE_TABLE); + *fake = !!(page->_pt_s390_gaddr & GMAP_SHADOW_FAKE_TABLE); rc = 0; } else { rc = -EAGAIN; @@ -2054,9 +2073,9 @@ int gmap_shadow_pgt(struct gmap *sg, unsigned long saddr, unsigned long pgt, page = page_table_alloc_pgste(sg->mm); if (!page) return -ENOMEM; - page->index = pgt & _SEGMENT_ENTRY_ORIGIN; + page->_pt_s390_gaddr = pgt & _SEGMENT_ENTRY_ORIGIN; if (fake) - page->index |= GMAP_SHADOW_FAKE_TABLE; + page->_pt_s390_gaddr |= GMAP_SHADOW_FAKE_TABLE; s_pgt = page_to_phys(page); /* Install shadow page table */ spin_lock(&sg->guest_table_lock); @@ -2101,6 +2120,7 @@ int gmap_shadow_pgt(struct gmap *sg, unsigned long saddr, unsigned long pgt, return rc; out_free: spin_unlock(&sg->guest_table_lock); + page->_pt_s390_gaddr = 0; page_table_free_pgste(page); return rc; diff --git a/include/linux/mm_types.h b/include/linux/mm_types.h index de10fc797c8e..fbbe4e93a9ba 100644 --- a/include/linux/mm_types.h +++ b/include/linux/mm_types.h @@ -144,7 +144,7 @@ struct page { struct { /* Page table pages */ unsigned long _pt_pad_1; /* compound_head */ pgtable_t pmd_huge_pte; /* protected by page->ptl */ - unsigned long _pt_pad_2; /* mapping */ + unsigned long _pt_s390_gaddr; /* mapping */ union { struct mm_struct *pt_mm; /* x86 pgds only */ atomic_t pt_frag_refcount; /* powerpc */ -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Tue Jun 27 03:15:24 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 03:15:24 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555689.867667 (Exim 4.92) (envelope-from ) id 1qDzAp-0005Qu-CK; Tue, 27 Jun 2023 03:15:23 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555689.867667; Tue, 27 Jun 2023 03:15:23 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDzAp-0005Ql-8x; Tue, 27 Jun 2023 03:15:23 +0000 Received: by outflank-mailman (input) for mailman id 555689; Tue, 27 Jun 2023 03:15:22 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDzAo-0003pv-9P for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 03:15:22 +0000 Received: from mail-yw1-x112d.google.com (mail-yw1-x112d.google.com [2607:f8b0:4864:20::112d]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id d9716771-1498-11ee-b237-6b7b168915f2; Tue, 27 Jun 2023 05:15:21 +0200 (CEST) Received: by mail-yw1-x112d.google.com with SMTP id 00721157ae682-5701eaf0d04so39989277b3.2 for ; Mon, 26 Jun 2023 20:15:21 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::16]) by smtp.googlemail.com with ESMTPSA id s4-20020a0dd004000000b0057399b3bd26sm1614798ywd.33.2023.06.26.20.15.18 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 26 Jun 2023 20:15:20 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: d9716771-1498-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687835720; x=1690427720; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=sr5TgrSX24KD5rPSp2rkPhxpII4heal/IIgk1FACoIs=; b=GRJmT9zZCc6VZLx9VY+7Q8GbOsBn33lZq/FXBv0aXORmxRac0rj/lSqIwgsFHnmh66 6cAHAx0KI5Lagl5OZRxl+lTWKC9rW3K7h91Q6uOR2njTfEcjIvHn1/QWkX3jlNssdRYv kPZ6iyIVFwiYJpTBLvXR9/yIre3tRTqt009ghcdse7E6cPjs19QO0aXvNJJOMDpClaY7 t8HHPKKx/NAZrk3fhoJWolRioMxC3Zc40A+aLrsXlHiTMIf/9zaAkHOq7TYNlbv+VzGn jItTpyFNqlbWxSgJZgFIeDKcVXb95B0vXbDJ5HgCdgCt4hiGi9xgNTBoUpG/3ZX1ru9x fM2Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687835720; x=1690427720; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=sr5TgrSX24KD5rPSp2rkPhxpII4heal/IIgk1FACoIs=; b=ZgdCSmkxk5otn+kyDJZ8i0nsj2AWwdNSpEPSUyp37ZkcAbpvYOghGYYqslTWGQv6ac lMa1Mw5flE8k3Bzygm7No67Ud9UC5VL/4pLNK5uHzl0wZ7ttW+9tTyTOLrGij2x6/5pc HGI6nXA8ceK6O1HQoJD0FJ/jFrMxm1X+x4dm7Gt4qEA/paskB+oFQziKzVW3XXYNGcQQ H5CQBpktkg24JTo+iH0ATt8PziPMhB3z2aa7S+lx+A3NZ0Di4O1aZqdqAh5hw1qekNxG ak/LUzperQaM7vYhcpNMbdGSohJryHYsWV4muYzKzV4mflvp1HPiL8AwQA+6lcc6LjKZ gtiw== X-Gm-Message-State: AC+VfDxSxr5rj+1tI4WEaUTwDf7aArNqU0YQ+h2gG77KNLwbviEer+R+ xJw9+Bbg35Ub+WWXDwwkMvs= X-Google-Smtp-Source: ACHHUZ63yguTuEDNtqBAUu0oFztqBMiblJl9iKmWyGby1Nlfce/DGMkGkkGcggiUUjYXFR4C+z9ptA== X-Received: by 2002:a0d:d78c:0:b0:56f:ff75:abcc with SMTP id z134-20020a0dd78c000000b0056fff75abccmr30306915ywd.29.1687835720566; Mon, 26 Jun 2023 20:15:20 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" , Mike Rapoport Subject: [PATCH v6 06/33] mm: Convert ptlock_alloc() to use ptdescs Date: Mon, 26 Jun 2023 20:14:04 -0700 Message-Id: <20230627031431.29653-7-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230627031431.29653-1-vishal.moola@gmail.com> References: <20230627031431.29653-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit This removes some direct accesses to struct page, working towards splitting out struct ptdesc from struct page. Signed-off-by: Vishal Moola (Oracle) Acked-by: Mike Rapoport (IBM) --- include/linux/mm.h | 6 +++--- mm/memory.c | 4 ++-- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/include/linux/mm.h b/include/linux/mm.h index 1511faf0263c..39b0a4661e44 100644 --- a/include/linux/mm.h +++ b/include/linux/mm.h @@ -2798,7 +2798,7 @@ static inline void pagetable_free(struct ptdesc *pt) #if USE_SPLIT_PTE_PTLOCKS #if ALLOC_SPLIT_PTLOCKS void __init ptlock_cache_init(void); -extern bool ptlock_alloc(struct page *page); +bool ptlock_alloc(struct ptdesc *ptdesc); extern void ptlock_free(struct page *page); static inline spinlock_t *ptlock_ptr(struct page *page) @@ -2810,7 +2810,7 @@ static inline void ptlock_cache_init(void) { } -static inline bool ptlock_alloc(struct page *page) +static inline bool ptlock_alloc(struct ptdesc *ptdesc) { return true; } @@ -2840,7 +2840,7 @@ static inline bool ptlock_init(struct page *page) * slab code uses page->slab_cache, which share storage with page->ptl. */ VM_BUG_ON_PAGE(*(unsigned long *)&page->ptl, page); - if (!ptlock_alloc(page)) + if (!ptlock_alloc(page_ptdesc(page))) return false; spin_lock_init(ptlock_ptr(page)); return true; diff --git a/mm/memory.c b/mm/memory.c index 80faf3e76232..2ff14f50c7b3 100644 --- a/mm/memory.c +++ b/mm/memory.c @@ -5920,14 +5920,14 @@ void __init ptlock_cache_init(void) SLAB_PANIC, NULL); } -bool ptlock_alloc(struct page *page) +bool ptlock_alloc(struct ptdesc *ptdesc) { spinlock_t *ptl; ptl = kmem_cache_alloc(page_ptl_cachep, GFP_KERNEL); if (!ptl) return false; - page->ptl = ptl; + ptdesc->ptl = ptl; return true; } -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Tue Jun 27 03:15:24 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 03:15:24 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555688.867658 (Exim 4.92) (envelope-from ) id 1qDzAn-000587-3E; Tue, 27 Jun 2023 03:15:21 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555688.867658; Tue, 27 Jun 2023 03:15:21 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDzAm-00057x-VT; Tue, 27 Jun 2023 03:15:20 +0000 Received: by outflank-mailman (input) for mailman id 555688; Tue, 27 Jun 2023 03:15:20 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDzAm-0003pv-4g for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 03:15:20 +0000 Received: from mail-yw1-x112b.google.com (mail-yw1-x112b.google.com [2607:f8b0:4864:20::112b]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id d83eb13c-1498-11ee-b237-6b7b168915f2; Tue, 27 Jun 2023 05:15:19 +0200 (CEST) Received: by mail-yw1-x112b.google.com with SMTP id 00721157ae682-56ffd7d7fedso42547747b3.2 for ; Mon, 26 Jun 2023 20:15:19 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::16]) by smtp.googlemail.com with ESMTPSA id s4-20020a0dd004000000b0057399b3bd26sm1614798ywd.33.2023.06.26.20.15.16 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 26 Jun 2023 20:15:17 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: d83eb13c-1498-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687835718; x=1690427718; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=5MMx6i8bJUxARp5QNqsq1CJUY3hOxlwkAEMcUNtK7dI=; b=MeM3v1KjtFoJ68g67QFEF1NyVxMiMYgvdlNUvONCKTcddCTBLfXbCvjdDQ2rkMkntp NglXMwE26fCvz5F9nMSZMUxoetH1ZAcsVpi0efOXfEwN4DA6ftYlLFo1JApHI/tubC37 33sHqn+NMB2tr9HBuBdSW/hwIa8uL6U/SOUDWuLzyTAiHAPzWUOM8CjVLD+EbbHd/5kR FnMJGohaY21AmJl4Lrba1v1FCtiqCThvY8//FgKgMI5nMolrkjqa5ElszWe7So6X4/NA 29o+uMEWd5I0Ihfj0/TIUUwfyyspThDiVrfoH9mpbEwmREVQeVNhmFuIVnTUiZMir9ah 1F3g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687835718; x=1690427718; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=5MMx6i8bJUxARp5QNqsq1CJUY3hOxlwkAEMcUNtK7dI=; b=SgKzdCbLEy1TpPkssJLEXEEJTv6gw8XVUd4eZdw1coVF/e4G+S3v7o1YPcrk72vcpJ r6uZ5m2/qjddL3URY+OqjDvZEvfEa4VapN0y5dyso9ZzVy5ffyGcP7AtByJ4Fqk6Ay4u FAxu7rGBp9VJcdj/Ppw/qW3mMz29o7+LapCN3emFa4aiBS/7sLJOfei5h4eoI2tFK37c yHIdxG2JcUNOCAE+Ohe8fhjca8QaV3BG4/YoNfpAnPBqXyJXrFJdoj6O4RbEBkDFfHDh mtouv55aaZ68jhv4J//tKWObDD20qLgzVRgegwHhDol3LDbAHkVJp5PS8ai4CF67yWsx W41g== X-Gm-Message-State: AC+VfDzeoXC6LEtqhXxATK3FPcg0rE/JEaboJH/YQFN37c9zixsZ3rAo ZIOH2WUICK38O6EhiW8mvMQ= X-Google-Smtp-Source: ACHHUZ7jG3JdEOLXHoTlHZs7iMneXhbSi5TTL08hXZ/YgCW6ZXi6BK/DGPcEgnHcQP1gwkgg+JH2AQ== X-Received: by 2002:a0d:c506:0:b0:56f:e627:8545 with SMTP id h6-20020a0dc506000000b0056fe6278545mr30778532ywd.39.1687835718493; Mon, 26 Jun 2023 20:15:18 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" , Mike Rapoport Subject: [PATCH v6 05/33] mm: Convert pmd_pgtable_page() to pmd_ptdesc() Date: Mon, 26 Jun 2023 20:14:03 -0700 Message-Id: <20230627031431.29653-6-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230627031431.29653-1-vishal.moola@gmail.com> References: <20230627031431.29653-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Converts pmd_pgtable_page() to pmd_ptdesc() and all its callers. This removes some direct accesses to struct page, working towards splitting out struct ptdesc from struct page. Signed-off-by: Vishal Moola (Oracle) Acked-by: Mike Rapoport (IBM) --- include/linux/mm.h | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/include/linux/mm.h b/include/linux/mm.h index 14d95d494958..1511faf0263c 100644 --- a/include/linux/mm.h +++ b/include/linux/mm.h @@ -2915,15 +2915,15 @@ pte_t *pte_offset_map_nolock(struct mm_struct *mm, pmd_t *pmd, #if USE_SPLIT_PMD_PTLOCKS -static inline struct page *pmd_pgtable_page(pmd_t *pmd) +static inline struct ptdesc *pmd_ptdesc(pmd_t *pmd) { unsigned long mask = ~(PTRS_PER_PMD * sizeof(pmd_t) - 1); - return virt_to_page((void *)((unsigned long) pmd & mask)); + return virt_to_ptdesc((void *)((unsigned long) pmd & mask)); } static inline spinlock_t *pmd_lockptr(struct mm_struct *mm, pmd_t *pmd) { - return ptlock_ptr(pmd_pgtable_page(pmd)); + return ptlock_ptr(ptdesc_page(pmd_ptdesc(pmd))); } static inline bool pmd_ptlock_init(struct page *page) @@ -2942,7 +2942,7 @@ static inline void pmd_ptlock_free(struct page *page) ptlock_free(page); } -#define pmd_huge_pte(mm, pmd) (pmd_pgtable_page(pmd)->pmd_huge_pte) +#define pmd_huge_pte(mm, pmd) (pmd_ptdesc(pmd)->pmd_huge_pte) #else -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Tue Jun 27 03:15:24 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 03:15:24 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555682.867608 (Exim 4.92) (envelope-from ) id 1qDzAe-0003q9-RK; Tue, 27 Jun 2023 03:15:12 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555682.867608; Tue, 27 Jun 2023 03:15:12 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDzAe-0003q1-MW; Tue, 27 Jun 2023 03:15:12 +0000 Received: by outflank-mailman (input) for mailman id 555682; Tue, 27 Jun 2023 03:15:10 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDzAc-0003pv-Iu for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 03:15:10 +0000 Received: from mail-yw1-x112e.google.com (mail-yw1-x112e.google.com [2607:f8b0:4864:20::112e]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id d1e89f71-1498-11ee-b237-6b7b168915f2; Tue, 27 Jun 2023 05:15:09 +0200 (CEST) Received: by mail-yw1-x112e.google.com with SMTP id 00721157ae682-5704ddda6dfso44572627b3.1 for ; Mon, 26 Jun 2023 20:15:08 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::16]) by smtp.googlemail.com with ESMTPSA id s4-20020a0dd004000000b0057399b3bd26sm1614798ywd.33.2023.06.26.20.15.04 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 26 Jun 2023 20:15:07 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: d1e89f71-1498-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687835708; x=1690427708; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=iYTDP3CVo/pn4MBpnsVYDf65SVee1q+w6kCUgJokK48=; b=kFdRpygS4WguFY2TIXFMCd2xbUYUslDwOhJ095L7ozx9CL0OSI6zj/K4mM+s7TbWhS 9zIZyA70hoFifzCOd1aewZ1yhLO2rBPOLuIElBxKRi5m6cvGDxzOV5z6misqLTfIRCXL XPKfCVIPeKEk1w/EtT2SlKc18aMxKl81RwWtDJHCQOOQwTat12hCBR/UJwcCsUByCQnp xPIqCDYl6eeVttXMi5drV03T1r0uzwcB8eqR424vWOHJ9pfaxoKjvFS/+eIWFJtobwVv zZV6muAWYcpIcnBMA6UzmFfsZ6RlIit91ynY1KCJiFuPe3YS3HQ1OCdsGe5+lkqZWZwe tjMQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687835708; x=1690427708; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=iYTDP3CVo/pn4MBpnsVYDf65SVee1q+w6kCUgJokK48=; b=dyaIQsMv75gHVrv06x96I2T3M9GFvP7nCtkvrSc9yf6wGyv+DeLst3wF9WGOtIMoql D6+c1jdzCt101y+kdqpq9ZiAU3cG0bDV4Je8ayUv3j4m2U1fsJC5WElewEaT0fKyIINz T3APJRWHmS8eS6t5RH1QzfSVaT8evWLzQYkG1XVpQqMajG2kyvB0Qw4jH6Zth09mlt+s MuuE95/XSd8FoQMl3zuv3TEbURiAQPA6Y7/sd4kTrhp8RZTEZuULa6uIITJUNZassaer cbEc5XVv3Oh6Hm0FASnzLJkamGeoeFp2MhJe0/ZlPA2K6rGtXU8KYa7P1MEoFGs4eVeG OQww== X-Gm-Message-State: AC+VfDxn6mAbv9RsABbZS8iOvijrwUlhF/Rz/itN9xTUwHO2lzwRQWXT DOXjNvmsc3RBkyrWxzgZUfc= X-Google-Smtp-Source: ACHHUZ4ATK/fn+XGL+Tqd6Lbx5sr7g8FEnC/NPQWKHVXRjdEDS0JhBnwpRdiXqnqBIQnqfKuzcysxA== X-Received: by 2002:a81:83ce:0:b0:570:28c6:a321 with SMTP id t197-20020a8183ce000000b0057028c6a321mr38284183ywf.18.1687835707756; Mon, 26 Jun 2023 20:15:07 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" , Catalin Marinas , Huacai Chen , Geert Uytterhoeven , Thomas Bogendoerfer , Dinh Nguyen , Jonas Bonn , David Hildenbrand , Claudio Imbrenda , Paul Walmsley , "David S. Miller" , Richard Weinberger , Yoshinori Sato , Dave Hansen , Arnd Bergmann , Christophe Leroy Subject: [PATCH v6 00/33] Split ptdesc from struct page Date: Mon, 26 Jun 2023 20:13:58 -0700 Message-Id: <20230627031431.29653-1-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit The MM subsystem is trying to shrink struct page. This patchset introduces a memory descriptor for page table tracking - struct ptdesc. This patchset introduces ptdesc, splits ptdesc from struct page, and converts many callers of page table constructor/destructors to use ptdescs. Ptdesc is a foundation to further standardize page tables, and eventually allow for dynamic allocation of page tables independent of struct page. However, the use of pages for page table tracking is quite deeply ingrained and varied across archictectures, so there is still a lot of work to be done before that can happen. This is rebased on next-20230626. There is a minor conflict with patch 24 and the mm-unstable tree in arch/m68k/mm/motorola.c - The end result of applying the patch should be the same. v6: Fix compiler warnings/errors v5: More Acked-bys :) Cleanup some documentation wording and formatting Add pt_rcu_head to ptdesc Add memcg to ptdesc (and align it with struct page) Ensure all get_free_page() callers prohibit HIGHMEM for 32 bit support. Renamed folio_{set, clear}_table() to folio_{set, clear}_pgtable() Removed pagetable_clear() as it is not necessary right now Dropped s390 _refcount to _pt_frag_refcount conversion Vishal Moola (Oracle) (33): mm: Add PAGE_TYPE_OP folio functions s390: Use _pt_s390_gaddr for gmap address tracking pgtable: Create struct ptdesc mm: add utility functions for ptdesc mm: Convert pmd_pgtable_page() to pmd_ptdesc() mm: Convert ptlock_alloc() to use ptdescs mm: Convert ptlock_ptr() to use ptdescs mm: Convert pmd_ptlock_init() to use ptdescs mm: Convert ptlock_init() to use ptdescs mm: Convert pmd_ptlock_free() to use ptdescs mm: Convert ptlock_free() to use ptdescs mm: Create ptdesc equivalents for pgtable_{pte,pmd}_page_{ctor,dtor} powerpc: Convert various functions to use ptdescs x86: Convert various functions to use ptdescs s390: Convert various gmap functions to use ptdescs s390: Convert various pgalloc functions to use ptdescs mm: Remove page table members from struct page pgalloc: Convert various functions to use ptdescs arm: Convert various functions to use ptdescs arm64: Convert various functions to use ptdescs csky: Convert __pte_free_tlb() to use ptdescs hexagon: Convert __pte_free_tlb() to use ptdescs loongarch: Convert various functions to use ptdescs m68k: Convert various functions to use ptdescs mips: Convert various functions to use ptdescs nios2: Convert __pte_free_tlb() to use ptdescs openrisc: Convert __pte_free_tlb() to use ptdescs riscv: Convert alloc_{pmd, pte}_late() to use ptdescs sh: Convert pte_free_tlb() to use ptdescs sparc64: Convert various functions to use ptdescs sparc: Convert pgtable_pte_page_{ctor, dtor}() to ptdesc equivalents um: Convert {pmd, pte}_free_tlb() to use ptdescs mm: Remove pgtable_{pmd, pte}_page_{ctor, dtor}() wrappers Documentation/mm/split_page_table_lock.rst | 12 +- .../zh_CN/mm/split_page_table_lock.rst | 14 +- arch/arm/include/asm/tlb.h | 12 +- arch/arm/mm/mmu.c | 7 +- arch/arm64/include/asm/tlb.h | 14 +- arch/arm64/mm/mmu.c | 7 +- arch/csky/include/asm/pgalloc.h | 4 +- arch/hexagon/include/asm/pgalloc.h | 8 +- arch/loongarch/include/asm/pgalloc.h | 27 ++- arch/loongarch/mm/pgtable.c | 7 +- arch/m68k/include/asm/mcf_pgalloc.h | 47 ++-- arch/m68k/include/asm/sun3_pgalloc.h | 8 +- arch/m68k/mm/motorola.c | 4 +- arch/mips/include/asm/pgalloc.h | 32 +-- arch/mips/mm/pgtable.c | 8 +- arch/nios2/include/asm/pgalloc.h | 8 +- arch/openrisc/include/asm/pgalloc.h | 8 +- arch/powerpc/mm/book3s64/mmu_context.c | 10 +- arch/powerpc/mm/book3s64/pgtable.c | 32 +-- arch/powerpc/mm/pgtable-frag.c | 46 ++-- arch/riscv/include/asm/pgalloc.h | 8 +- arch/riscv/mm/init.c | 16 +- arch/s390/include/asm/pgalloc.h | 4 +- arch/s390/include/asm/tlb.h | 4 +- arch/s390/mm/gmap.c | 207 ++++++++++-------- arch/s390/mm/pgalloc.c | 108 ++++----- arch/sh/include/asm/pgalloc.h | 9 +- arch/sparc/mm/init_64.c | 17 +- arch/sparc/mm/srmmu.c | 5 +- arch/um/include/asm/pgalloc.h | 18 +- arch/x86/mm/pgtable.c | 47 ++-- arch/x86/xen/mmu_pv.c | 2 +- include/asm-generic/pgalloc.h | 88 +++++--- include/asm-generic/tlb.h | 11 + include/linux/mm.h | 153 +++++++++---- include/linux/mm_types.h | 14 -- include/linux/page-flags.h | 30 ++- include/linux/pgtable.h | 77 +++++++ mm/memory.c | 8 +- 39 files changed, 686 insertions(+), 455 deletions(-) -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Tue Jun 27 03:15:25 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 03:15:25 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555690.867678 (Exim 4.92) (envelope-from ) id 1qDzAr-0005mH-M0; Tue, 27 Jun 2023 03:15:25 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555690.867678; Tue, 27 Jun 2023 03:15:25 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDzAr-0005m8-IM; Tue, 27 Jun 2023 03:15:25 +0000 Received: by outflank-mailman (input) for mailman id 555690; Tue, 27 Jun 2023 03:15:24 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDzAq-0003pv-A0 for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 03:15:24 +0000 Received: from mail-yw1-x1133.google.com (mail-yw1-x1133.google.com [2607:f8b0:4864:20::1133]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id dab21e74-1498-11ee-b237-6b7b168915f2; Tue, 27 Jun 2023 05:15:23 +0200 (CEST) Received: by mail-yw1-x1133.google.com with SMTP id 00721157ae682-57026f4bccaso42387567b3.2 for ; Mon, 26 Jun 2023 20:15:23 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::16]) by smtp.googlemail.com with ESMTPSA id s4-20020a0dd004000000b0057399b3bd26sm1614798ywd.33.2023.06.26.20.15.20 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 26 Jun 2023 20:15:22 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: dab21e74-1498-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687835722; x=1690427722; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=Z9Q71kHk0zB6vt5ahL9ZHs7069+SCA/PofhBzVdlAuY=; b=dOSQZ2OiXRbn7dKMKT1JXAgsN/C3jxCnB5LBHCK9iXILo1l4gDWq1J3cX5+exLYTxn wYoORsV8t6fPDceGwULdTPoZYpfiYfI04T4bOuvjwcHJfivuVIRVY0M+R3Uhc5iOpVeL 0vND8iKDAhmvYQiXoqAJRaFlNkMa3Bk4ZwjVbqbFjHFv+wwgHdDhUknddaUHcnd7Lv+F XfvU3AUvFbk/B6hNpVu5vRnlx39aUpFS25FcgH8ICpzs8p4la51sSmvC+1TP3EUm2inI tzhySMFhH/VY7MUDkzq18xgDM3Cn6KetwRARgLmNOPJ/2w0oaiVuiWvL7GVUeKg27bSV B58A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687835722; x=1690427722; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=Z9Q71kHk0zB6vt5ahL9ZHs7069+SCA/PofhBzVdlAuY=; b=UGmXdAvccU3LOBfBOqv9W+F5kJ9KBKUioB7+HKDzLMboS+hJCV+1xKqBVeBufcxZtk ap8K1jqqechDM0hiuPAxFonVl6urBW9dO+8/qV/VZ0c0Uq9xAi+rDs+CFzWFl8dYnJjx 3cdKlOKpQBfkl/d/rnszsnmkd6nNOiaqNL7bPR66v6eP8uF8lfAlNkOX0N7Y1bddMHAR CiIijWboDTQPGRon4tAMNj35nCYfuDalvRvjITsrx/Xv/18KCTKy++LQIuLD08pdQ5gt TKkws91RIls5uTcNBoXf+OH8OHH4D3OmL1XNmL7qOuerkSRnK6vaPd+WdGM+cXtQ+pJr bQ8w== X-Gm-Message-State: AC+VfDwlkfc1qvqKfKr6VHmxxwdw155qUK2AgOKhRSISMQcU+nl+6qeD ByYy/gjf1QztptUw8xHZmlI= X-Google-Smtp-Source: ACHHUZ5sPmbirZ+Hp/U6Mh5uEO5OmHRgtgjjLF/hS5R/U+jD4/eUdYkFVTE6CQ/xsnAMAlWUQublhg== X-Received: by 2002:a0d:ea89:0:b0:56c:e4b1:19f6 with SMTP id t131-20020a0dea89000000b0056ce4b119f6mr32348296ywe.44.1687835722632; Mon, 26 Jun 2023 20:15:22 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" , Mike Rapoport Subject: [PATCH v6 07/33] mm: Convert ptlock_ptr() to use ptdescs Date: Mon, 26 Jun 2023 20:14:05 -0700 Message-Id: <20230627031431.29653-8-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230627031431.29653-1-vishal.moola@gmail.com> References: <20230627031431.29653-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit This removes some direct accesses to struct page, working towards splitting out struct ptdesc from struct page. Signed-off-by: Vishal Moola (Oracle) Acked-by: Mike Rapoport (IBM) --- arch/x86/xen/mmu_pv.c | 2 +- include/linux/mm.h | 14 +++++++------- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/arch/x86/xen/mmu_pv.c b/arch/x86/xen/mmu_pv.c index e0a975165de7..8796ec310483 100644 --- a/arch/x86/xen/mmu_pv.c +++ b/arch/x86/xen/mmu_pv.c @@ -667,7 +667,7 @@ static spinlock_t *xen_pte_lock(struct page *page, struct mm_struct *mm) spinlock_t *ptl = NULL; #if USE_SPLIT_PTE_PTLOCKS - ptl = ptlock_ptr(page); + ptl = ptlock_ptr(page_ptdesc(page)); spin_lock_nest_lock(ptl, &mm->page_table_lock); #endif diff --git a/include/linux/mm.h b/include/linux/mm.h index 39b0a4661e44..0b230d5d229a 100644 --- a/include/linux/mm.h +++ b/include/linux/mm.h @@ -2801,9 +2801,9 @@ void __init ptlock_cache_init(void); bool ptlock_alloc(struct ptdesc *ptdesc); extern void ptlock_free(struct page *page); -static inline spinlock_t *ptlock_ptr(struct page *page) +static inline spinlock_t *ptlock_ptr(struct ptdesc *ptdesc) { - return page->ptl; + return ptdesc->ptl; } #else /* ALLOC_SPLIT_PTLOCKS */ static inline void ptlock_cache_init(void) @@ -2819,15 +2819,15 @@ static inline void ptlock_free(struct page *page) { } -static inline spinlock_t *ptlock_ptr(struct page *page) +static inline spinlock_t *ptlock_ptr(struct ptdesc *ptdesc) { - return &page->ptl; + return &ptdesc->ptl; } #endif /* ALLOC_SPLIT_PTLOCKS */ static inline spinlock_t *pte_lockptr(struct mm_struct *mm, pmd_t *pmd) { - return ptlock_ptr(pmd_page(*pmd)); + return ptlock_ptr(page_ptdesc(pmd_page(*pmd))); } static inline bool ptlock_init(struct page *page) @@ -2842,7 +2842,7 @@ static inline bool ptlock_init(struct page *page) VM_BUG_ON_PAGE(*(unsigned long *)&page->ptl, page); if (!ptlock_alloc(page_ptdesc(page))) return false; - spin_lock_init(ptlock_ptr(page)); + spin_lock_init(ptlock_ptr(page_ptdesc(page))); return true; } @@ -2923,7 +2923,7 @@ static inline struct ptdesc *pmd_ptdesc(pmd_t *pmd) static inline spinlock_t *pmd_lockptr(struct mm_struct *mm, pmd_t *pmd) { - return ptlock_ptr(ptdesc_page(pmd_ptdesc(pmd))); + return ptlock_ptr(pmd_ptdesc(pmd)); } static inline bool pmd_ptlock_init(struct page *page) -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Tue Jun 27 03:15:29 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 03:15:29 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555691.867687 (Exim 4.92) (envelope-from ) id 1qDzAv-0006Bp-60; Tue, 27 Jun 2023 03:15:29 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555691.867687; Tue, 27 Jun 2023 03:15:29 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDzAv-0006BK-2a; Tue, 27 Jun 2023 03:15:29 +0000 Received: by outflank-mailman (input) for mailman id 555691; Tue, 27 Jun 2023 03:15:27 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDzAt-0003uL-DN for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 03:15:27 +0000 Received: from mail-yw1-x1133.google.com (mail-yw1-x1133.google.com [2607:f8b0:4864:20::1133]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id dbda51c8-1498-11ee-8611-37d641c3527e; Tue, 27 Jun 2023 05:15:25 +0200 (CEST) Received: by mail-yw1-x1133.google.com with SMTP id 00721157ae682-5768a7e3adbso46467257b3.0 for ; Mon, 26 Jun 2023 20:15:25 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::16]) by smtp.googlemail.com with ESMTPSA id s4-20020a0dd004000000b0057399b3bd26sm1614798ywd.33.2023.06.26.20.15.22 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 26 Jun 2023 20:15:24 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: dbda51c8-1498-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687835724; x=1690427724; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=QwvXTPG+SvX1bm+f7lh9ddV99LBkA8HMSnaL5DvtP/w=; b=bw9pNUcuMxpubm9pq3maPyXbc62B+bsuNNloL1m8ijygS8iq7WYtlX4XdEVQIeg/Zh Ngyg1Az+rnDUxxJdpkw2Xv9RrFezRnlEtGz+ikp5CpgXDK/wyBh05TsohR9gIqLikIrz XQJZpHLygL22WsyZKTUtr35hO5G+O3BbEJWU1trW1sFmIRDgY2iyZUpnQW0acaV8lKSP bClQykA4VjSGm4LzvwTtemLaGQIugu/qzT0WXVHTnnvGtI1PeGca+HTzzD6jettWBhDo 8pn250bIB0NJGxFmMTfFNawkBicAYzNWGl1omwNwRWLI+9cdDNXLQFqbUAr8KIK7W1AA kzkA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687835724; x=1690427724; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=QwvXTPG+SvX1bm+f7lh9ddV99LBkA8HMSnaL5DvtP/w=; b=WsyfHCCAhlV0JQksdBV60i6tHhbyMTgQRAgIzAaWT+zjX/URCdOI97HqUFvTpaEtgW gef6RBhZeir+T0CWqK6C1le7KzY1dPC4KE39r1o5+XLuZ71Xm5iFQQ3FG+fuBqzUfx8J ZTtfDNHlDWqetJaDpanx4FYhwUeH4m58iO3yRmbYypjQko1PXeZfMOn2IYdZmd7u7aaY XmpigwdDI957kz2ulAoEGAwo5rm08qvzWSrKgXhj78RGmP2ZR7XMRLQ846LsQXAoFqo7 u3Gr8OW7ni7tisZv3ppFa808XlRVXprEIMLxNMiMsNASj3qt5u0m5i5mrU26A7LrcdwL 8hCw== X-Gm-Message-State: AC+VfDzh+gI4hlcGaI9CZoVaVpOoUjSfHJAWxMGmq2bsJztp8mtYllwS sD+GDkSSVCDt2S/wZBICVPc= X-Google-Smtp-Source: ACHHUZ4U3kYwykXpP1FzDZUmgCkvLtNAT31XIQI7+ns8f+sP4iaCy71EJqjX8aE3VjJuNDesXn/JrA== X-Received: by 2002:a81:48d0:0:b0:56d:6dd:c1e0 with SMTP id v199-20020a8148d0000000b0056d06ddc1e0mr35914739ywa.21.1687835724632; Mon, 26 Jun 2023 20:15:24 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" , Mike Rapoport Subject: [PATCH v6 08/33] mm: Convert pmd_ptlock_init() to use ptdescs Date: Mon, 26 Jun 2023 20:14:06 -0700 Message-Id: <20230627031431.29653-9-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230627031431.29653-1-vishal.moola@gmail.com> References: <20230627031431.29653-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit This removes some direct accesses to struct page, working towards splitting out struct ptdesc from struct page. Signed-off-by: Vishal Moola (Oracle) Acked-by: Mike Rapoport (IBM) --- include/linux/mm.h | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/include/linux/mm.h b/include/linux/mm.h index 0b230d5d229a..1c4c6a7b69b3 100644 --- a/include/linux/mm.h +++ b/include/linux/mm.h @@ -2926,12 +2926,12 @@ static inline spinlock_t *pmd_lockptr(struct mm_struct *mm, pmd_t *pmd) return ptlock_ptr(pmd_ptdesc(pmd)); } -static inline bool pmd_ptlock_init(struct page *page) +static inline bool pmd_ptlock_init(struct ptdesc *ptdesc) { #ifdef CONFIG_TRANSPARENT_HUGEPAGE - page->pmd_huge_pte = NULL; + ptdesc->pmd_huge_pte = NULL; #endif - return ptlock_init(page); + return ptlock_init(ptdesc_page(ptdesc)); } static inline void pmd_ptlock_free(struct page *page) @@ -2951,7 +2951,7 @@ static inline spinlock_t *pmd_lockptr(struct mm_struct *mm, pmd_t *pmd) return &mm->page_table_lock; } -static inline bool pmd_ptlock_init(struct page *page) { return true; } +static inline bool pmd_ptlock_init(struct ptdesc *ptdesc) { return true; } static inline void pmd_ptlock_free(struct page *page) {} #define pmd_huge_pte(mm, pmd) ((mm)->pmd_huge_pte) @@ -2967,7 +2967,7 @@ static inline spinlock_t *pmd_lock(struct mm_struct *mm, pmd_t *pmd) static inline bool pgtable_pmd_page_ctor(struct page *page) { - if (!pmd_ptlock_init(page)) + if (!pmd_ptlock_init(page_ptdesc(page))) return false; __SetPageTable(page); inc_lruvec_page_state(page, NR_PAGETABLE); -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Tue Jun 27 03:15:30 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 03:15:30 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555693.867699 (Exim 4.92) (envelope-from ) id 1qDzAw-0006Wr-Nt; Tue, 27 Jun 2023 03:15:30 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555693.867699; Tue, 27 Jun 2023 03:15:30 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDzAw-0006WG-Gq; Tue, 27 Jun 2023 03:15:30 +0000 Received: by outflank-mailman (input) for mailman id 555693; Tue, 27 Jun 2023 03:15:29 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDzAv-0003uL-I1 for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 03:15:29 +0000 Received: from mail-yw1-x1132.google.com (mail-yw1-x1132.google.com [2607:f8b0:4864:20::1132]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id dd2441ad-1498-11ee-8611-37d641c3527e; Tue, 27 Jun 2023 05:15:27 +0200 (CEST) Received: by mail-yw1-x1132.google.com with SMTP id 00721157ae682-570002c9b38so42369387b3.1 for ; Mon, 26 Jun 2023 20:15:27 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::16]) by smtp.googlemail.com with ESMTPSA id s4-20020a0dd004000000b0057399b3bd26sm1614798ywd.33.2023.06.26.20.15.24 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 26 Jun 2023 20:15:26 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: dd2441ad-1498-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687835727; x=1690427727; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=uRcW1jW+95PozpJhE7MOWGztyyXp9a8KAqI8T3AvQGQ=; b=pvA/vO4MDeq4kIIhsE3yrV9+ALefWilKkLuNIgHhecd9VDeKpQ3CrB44RRLXN/wH9a v+3v6EJOL2IcXShzxOvXaOjl2qaDyEgyn03s8SsAgafbqCa5mGXGEFvhH716JQIAT0SC QEIWs35jWLlJpDE0C433qu5q7ESJ8UkDS3w921ZCRctPmdDsHkPUrtmlpYzw5VwqW3do SQRdIAIjkZikdiXvEEkKtp7sFgpQSLF0GRJH1HdPtksJU7st37GWKQiDw1MyawGMKHo0 s5ztl+d6CGvn0kzD8aZyh2iX1osumXcuHPhisUrTXBEX0Rdvq7Iup64Z2b22TeYu/gRr mzYg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687835727; x=1690427727; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=uRcW1jW+95PozpJhE7MOWGztyyXp9a8KAqI8T3AvQGQ=; b=Jis7PpxOkJ+df+Z1njF51pNg3r+dCNlWoXHZfDZg+RwthebID2upBbY4+LPpvCup5D +IKKXBWxSUWSdxd3/+CrUxvejF89Inp7DP7Uulr3yiSm999gNDykgVkxx9WKaJYSToXg l1QQuMVqI7Wf4JYSReAYQH8B1qee/LT/ert6i19qhRFT6TTXJ1lywIq0cniocyAtBptL weRU8ljR7M5g0nAFicUi43IpGPVe4BEWhfeFn8efJd2dG2O9JtWCfNbNCRIsxZcj3wZv ERXSF+bittqWPsGpx/r1deUz0EPRSyzPRPH/VWGMU6p/Q2ZdvCN5NkEA+PNZ8CRTsNTn pMfw== X-Gm-Message-State: AC+VfDwPoAIWTsNk+aza8rX7Kw4J3l8yNrZZwBXnmn8opyfV5H2t7uJx Dri8pfqHx6ctEv6YoydfPm8SJU9scIbqtw== X-Google-Smtp-Source: ACHHUZ44nBppmQGdd8zdkRU4D5yhqKKKAoy0EjGlUrIReqb1/1yiuyQcU5hRXay6VI94GfMmMF8RKg== X-Received: by 2002:a81:c203:0:b0:561:da0d:6488 with SMTP id z3-20020a81c203000000b00561da0d6488mr27417977ywc.50.1687835726781; Mon, 26 Jun 2023 20:15:26 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" , Mike Rapoport Subject: [PATCH v6 09/33] mm: Convert ptlock_init() to use ptdescs Date: Mon, 26 Jun 2023 20:14:07 -0700 Message-Id: <20230627031431.29653-10-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230627031431.29653-1-vishal.moola@gmail.com> References: <20230627031431.29653-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit This removes some direct accesses to struct page, working towards splitting out struct ptdesc from struct page. Signed-off-by: Vishal Moola (Oracle) Acked-by: Mike Rapoport (IBM) --- include/linux/mm.h | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/include/linux/mm.h b/include/linux/mm.h index 1c4c6a7b69b3..4af424e4015a 100644 --- a/include/linux/mm.h +++ b/include/linux/mm.h @@ -2830,7 +2830,7 @@ static inline spinlock_t *pte_lockptr(struct mm_struct *mm, pmd_t *pmd) return ptlock_ptr(page_ptdesc(pmd_page(*pmd))); } -static inline bool ptlock_init(struct page *page) +static inline bool ptlock_init(struct ptdesc *ptdesc) { /* * prep_new_page() initialize page->private (and therefore page->ptl) @@ -2839,10 +2839,10 @@ static inline bool ptlock_init(struct page *page) * It can happen if arch try to use slab for page table allocation: * slab code uses page->slab_cache, which share storage with page->ptl. */ - VM_BUG_ON_PAGE(*(unsigned long *)&page->ptl, page); - if (!ptlock_alloc(page_ptdesc(page))) + VM_BUG_ON_PAGE(*(unsigned long *)&ptdesc->ptl, ptdesc_page(ptdesc)); + if (!ptlock_alloc(ptdesc)) return false; - spin_lock_init(ptlock_ptr(page_ptdesc(page))); + spin_lock_init(ptlock_ptr(ptdesc)); return true; } @@ -2855,13 +2855,13 @@ static inline spinlock_t *pte_lockptr(struct mm_struct *mm, pmd_t *pmd) return &mm->page_table_lock; } static inline void ptlock_cache_init(void) {} -static inline bool ptlock_init(struct page *page) { return true; } +static inline bool ptlock_init(struct ptdesc *ptdesc) { return true; } static inline void ptlock_free(struct page *page) {} #endif /* USE_SPLIT_PTE_PTLOCKS */ static inline bool pgtable_pte_page_ctor(struct page *page) { - if (!ptlock_init(page)) + if (!ptlock_init(page_ptdesc(page))) return false; __SetPageTable(page); inc_lruvec_page_state(page, NR_PAGETABLE); @@ -2931,7 +2931,7 @@ static inline bool pmd_ptlock_init(struct ptdesc *ptdesc) #ifdef CONFIG_TRANSPARENT_HUGEPAGE ptdesc->pmd_huge_pte = NULL; #endif - return ptlock_init(ptdesc_page(ptdesc)); + return ptlock_init(ptdesc); } static inline void pmd_ptlock_free(struct page *page) -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Tue Jun 27 03:15:33 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 03:15:33 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555694.867708 (Exim 4.92) (envelope-from ) id 1qDzAz-00074R-33; Tue, 27 Jun 2023 03:15:33 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555694.867708; Tue, 27 Jun 2023 03:15:33 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDzAy-000749-TL; Tue, 27 Jun 2023 03:15:32 +0000 Received: by outflank-mailman (input) for mailman id 555694; Tue, 27 Jun 2023 03:15:31 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDzAx-0003uL-IO for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 03:15:31 +0000 Received: from mail-yw1-x1129.google.com (mail-yw1-x1129.google.com [2607:f8b0:4864:20::1129]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id de6187ef-1498-11ee-8611-37d641c3527e; Tue, 27 Jun 2023 05:15:30 +0200 (CEST) Received: by mail-yw1-x1129.google.com with SMTP id 00721157ae682-57028539aadso44554257b3.2 for ; Mon, 26 Jun 2023 20:15:30 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::16]) by smtp.googlemail.com with ESMTPSA id s4-20020a0dd004000000b0057399b3bd26sm1614798ywd.33.2023.06.26.20.15.26 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 26 Jun 2023 20:15:28 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: de6187ef-1498-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687835729; x=1690427729; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=wSwuU7fg/k+TT5PagWIdYLap7GxOydHG9fnVI01D6B4=; b=Lg2sjw4Fq7Jsh/1bPb8/Bz5bb4WbWygT3r2OYZVXGMBEwfozbqxm0/F6bIElAKjdHD k9tw765etUmPaJavNHOgRAh4TrN9WtYkyFJDXO4e8zB0CLQ7CKYG2S6Z4giPdak3TlLV dBQDIQS2mzx3Rkho31FJSGH9B3yVhFoSm33zMOn6yvA7Um5yH03kqWlR3ymYgVkxmZrE IJEFqdSDC0V+0/+0zxMFLR8Zuzl0eiDJ5KrxbBEu73g+J0vEbUyjW5NugtcJ2jWIZ/MO 3IUWIpYlYW1hiX8BTPI8estSfzK1mYASEDhKfgKz4greHIhYdQhx0bK/LpN/7ezGhpY+ FpXA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687835729; x=1690427729; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=wSwuU7fg/k+TT5PagWIdYLap7GxOydHG9fnVI01D6B4=; b=SNGX3COpInCw/BYS7+DvxpiQhLPPQxMkCURCUTuoD9l871FBX8bUfYaB6TZW9yTgXb w1WsA+jGO8ZqZ6bbNvn50uPH42LbgkkWnjhrrS/8wUBwEbKYryJ0CSF2HCpQyWE0MsdV 7O/SJEhddag3M7G8Oxi4TLKV1pq1iFhOoCBhPoJ1ISNeUQ3wRTAHWPf4dVT9bzUt6DuC 8r5kRitfIWdel1dwSlBBh+m90dVWIgYlDT+BCdBeKimTgQXZGzhRTq1lLfIf6/9Jf+OH lBiHiCgBwtNPJrb67hUOxMyp/CGmxpaPoE3poH2MFp7BTIcDdSjyp0QjkWJTn0rngrZV +F+A== X-Gm-Message-State: AC+VfDwks6qTvcKrvputCONF8uGUq/Kbs73uj8da46FhVaWJkJUUuu1q 1z0CbqfZH/weq2fIjkk0jdg= X-Google-Smtp-Source: ACHHUZ46AY3BqwTWqQUYpGbmhIWT6fwcR58AoQIOUKYPJMkYvs0jOnx1fxcN7fC61p35DP7uAiDexw== X-Received: by 2002:a81:6887:0:b0:565:cf47:7331 with SMTP id d129-20020a816887000000b00565cf477331mr37299896ywc.2.1687835728818; Mon, 26 Jun 2023 20:15:28 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" , Mike Rapoport Subject: [PATCH v6 10/33] mm: Convert pmd_ptlock_free() to use ptdescs Date: Mon, 26 Jun 2023 20:14:08 -0700 Message-Id: <20230627031431.29653-11-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230627031431.29653-1-vishal.moola@gmail.com> References: <20230627031431.29653-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit This removes some direct accesses to struct page, working towards splitting out struct ptdesc from struct page. Signed-off-by: Vishal Moola (Oracle) Acked-by: Mike Rapoport (IBM) --- include/linux/mm.h | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/include/linux/mm.h b/include/linux/mm.h index 4af424e4015a..0221675e4dc5 100644 --- a/include/linux/mm.h +++ b/include/linux/mm.h @@ -2934,12 +2934,12 @@ static inline bool pmd_ptlock_init(struct ptdesc *ptdesc) return ptlock_init(ptdesc); } -static inline void pmd_ptlock_free(struct page *page) +static inline void pmd_ptlock_free(struct ptdesc *ptdesc) { #ifdef CONFIG_TRANSPARENT_HUGEPAGE - VM_BUG_ON_PAGE(page->pmd_huge_pte, page); + VM_BUG_ON_PAGE(ptdesc->pmd_huge_pte, ptdesc_page(ptdesc)); #endif - ptlock_free(page); + ptlock_free(ptdesc_page(ptdesc)); } #define pmd_huge_pte(mm, pmd) (pmd_ptdesc(pmd)->pmd_huge_pte) @@ -2952,7 +2952,7 @@ static inline spinlock_t *pmd_lockptr(struct mm_struct *mm, pmd_t *pmd) } static inline bool pmd_ptlock_init(struct ptdesc *ptdesc) { return true; } -static inline void pmd_ptlock_free(struct page *page) {} +static inline void pmd_ptlock_free(struct ptdesc *ptdesc) {} #define pmd_huge_pte(mm, pmd) ((mm)->pmd_huge_pte) @@ -2976,7 +2976,7 @@ static inline bool pgtable_pmd_page_ctor(struct page *page) static inline void pgtable_pmd_page_dtor(struct page *page) { - pmd_ptlock_free(page); + pmd_ptlock_free(page_ptdesc(page)); __ClearPageTable(page); dec_lruvec_page_state(page, NR_PAGETABLE); } -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Tue Jun 27 03:15:34 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 03:15:34 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555695.867716 (Exim 4.92) (envelope-from ) id 1qDzB0-0007TR-E7; Tue, 27 Jun 2023 03:15:34 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555695.867716; Tue, 27 Jun 2023 03:15:34 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDzB0-0007Ru-6b; Tue, 27 Jun 2023 03:15:34 +0000 Received: by outflank-mailman (input) for mailman id 555695; Tue, 27 Jun 2023 03:15:32 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDzAy-0003pv-GM for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 03:15:32 +0000 Received: from mail-yw1-x1129.google.com (mail-yw1-x1129.google.com [2607:f8b0:4864:20::1129]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id df982c28-1498-11ee-b237-6b7b168915f2; Tue, 27 Jun 2023 05:15:32 +0200 (CEST) Received: by mail-yw1-x1129.google.com with SMTP id 00721157ae682-57688a146ecso35954577b3.2 for ; Mon, 26 Jun 2023 20:15:31 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::16]) by smtp.googlemail.com with ESMTPSA id s4-20020a0dd004000000b0057399b3bd26sm1614798ywd.33.2023.06.26.20.15.28 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 26 Jun 2023 20:15:30 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: df982c28-1498-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687835731; x=1690427731; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=bhgUYiKwQSwYMGFv9d1r56wjiuPfdLCT9N5JwdJpvSY=; b=NN6JuQbcJSEhuQl119fqyrzmvfTJLSgZNGPIizHO44moV6zy7vRkkkGbpzNnm+T/zk LfpssTQxYHLCLcRT6ur03GhfUH0PR3hr1gEAZWn4KlOVQ/bRaXKu0XwyzIXh7FK2T78w GV5aBHngJRtwmpryMrqg1wnpyNcK63Z6rXozTP8pqdze8wtkdCn+4d6Nxd1VmHHTwiSp Hj2gVskjJaa7d3mxLgebdTWNoaiyWHEkTnVETMwzQNfFNqae/PKVEKJL0sEqbBCs/7Gc Lg3rR1WUfvzFXQfsjuyOG1PSX82wJS5wL2NRG2ks6qk/cPnX1GTuY36dOOOiPPB0JsGq 3KdQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687835731; x=1690427731; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=bhgUYiKwQSwYMGFv9d1r56wjiuPfdLCT9N5JwdJpvSY=; b=ZUJIGSBcAnzl5l96ktVyr+JmRtbFAdekimuUG9p716FHW9OMRzM9RWGy4jBRqr+TBb u8Z6Us6Ip5S1hZ+RVqSq+C6RiYY1CQDtCXfHJiXtjZNly3abaGPxqNzdBNHNXK2VCmvs KpaJq7eEmjz386jtI2VbK1bbIlqwtmT70odwxD/cBan4oFFqPMaphJGWNZrJq/EOHgux fFegZXqnqo87nwp7SmdjaUwzG4xaPdhbOE2mRzG6tNahB6oxf0OI7k1cupdiFujNlvCi t2mJRPhthFUCmXxBMMdfe0EF7EZzcegV/CcekAhX1qgWVQ8/h8fvv0aQsf+RWGZsSLT/ 81jg== X-Gm-Message-State: AC+VfDxjKf5D7RUxN+FO/06BnUgrTU5o9s+9+NbxU0rjv1h+99zYNkIQ 6wzT2vsrHGc1xydzmzFV2sheX8p3jvIGEg== X-Google-Smtp-Source: ACHHUZ77IlfDYtyaiNtbQBvQ+hst+uMDswEhJokbRedTnkaskK+XBmCINjFgoTdvnk/TaS9G8YnT8Q== X-Received: by 2002:a81:6cc3:0:b0:56f:fcb0:26f6 with SMTP id h186-20020a816cc3000000b0056ffcb026f6mr25623334ywc.52.1687835730840; Mon, 26 Jun 2023 20:15:30 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" , Mike Rapoport Subject: [PATCH v6 11/33] mm: Convert ptlock_free() to use ptdescs Date: Mon, 26 Jun 2023 20:14:09 -0700 Message-Id: <20230627031431.29653-12-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230627031431.29653-1-vishal.moola@gmail.com> References: <20230627031431.29653-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit This removes some direct accesses to struct page, working towards splitting out struct ptdesc from struct page. Signed-off-by: Vishal Moola (Oracle) Acked-by: Mike Rapoport (IBM) --- include/linux/mm.h | 10 +++++----- mm/memory.c | 4 ++-- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/include/linux/mm.h b/include/linux/mm.h index 0221675e4dc5..69e6d6696c44 100644 --- a/include/linux/mm.h +++ b/include/linux/mm.h @@ -2799,7 +2799,7 @@ static inline void pagetable_free(struct ptdesc *pt) #if ALLOC_SPLIT_PTLOCKS void __init ptlock_cache_init(void); bool ptlock_alloc(struct ptdesc *ptdesc); -extern void ptlock_free(struct page *page); +void ptlock_free(struct ptdesc *ptdesc); static inline spinlock_t *ptlock_ptr(struct ptdesc *ptdesc) { @@ -2815,7 +2815,7 @@ static inline bool ptlock_alloc(struct ptdesc *ptdesc) return true; } -static inline void ptlock_free(struct page *page) +static inline void ptlock_free(struct ptdesc *ptdesc) { } @@ -2856,7 +2856,7 @@ static inline spinlock_t *pte_lockptr(struct mm_struct *mm, pmd_t *pmd) } static inline void ptlock_cache_init(void) {} static inline bool ptlock_init(struct ptdesc *ptdesc) { return true; } -static inline void ptlock_free(struct page *page) {} +static inline void ptlock_free(struct ptdesc *ptdesc) {} #endif /* USE_SPLIT_PTE_PTLOCKS */ static inline bool pgtable_pte_page_ctor(struct page *page) @@ -2870,7 +2870,7 @@ static inline bool pgtable_pte_page_ctor(struct page *page) static inline void pgtable_pte_page_dtor(struct page *page) { - ptlock_free(page); + ptlock_free(page_ptdesc(page)); __ClearPageTable(page); dec_lruvec_page_state(page, NR_PAGETABLE); } @@ -2939,7 +2939,7 @@ static inline void pmd_ptlock_free(struct ptdesc *ptdesc) #ifdef CONFIG_TRANSPARENT_HUGEPAGE VM_BUG_ON_PAGE(ptdesc->pmd_huge_pte, ptdesc_page(ptdesc)); #endif - ptlock_free(ptdesc_page(ptdesc)); + ptlock_free(ptdesc); } #define pmd_huge_pte(mm, pmd) (pmd_ptdesc(pmd)->pmd_huge_pte) diff --git a/mm/memory.c b/mm/memory.c index 2ff14f50c7b3..8743aef6095b 100644 --- a/mm/memory.c +++ b/mm/memory.c @@ -5931,8 +5931,8 @@ bool ptlock_alloc(struct ptdesc *ptdesc) return true; } -void ptlock_free(struct page *page) +void ptlock_free(struct ptdesc *ptdesc) { - kmem_cache_free(page_ptl_cachep, page->ptl); + kmem_cache_free(page_ptl_cachep, ptdesc->ptl); } #endif -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Tue Jun 27 03:15:36 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 03:15:36 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555697.867728 (Exim 4.92) (envelope-from ) id 1qDzB2-0008BJ-QJ; Tue, 27 Jun 2023 03:15:36 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555697.867728; Tue, 27 Jun 2023 03:15:36 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDzB2-0008Ar-KY; Tue, 27 Jun 2023 03:15:36 +0000 Received: by outflank-mailman (input) for mailman id 555697; Tue, 27 Jun 2023 03:15:35 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDzB1-0003uL-QA for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 03:15:35 +0000 Received: from mail-yw1-x1130.google.com (mail-yw1-x1130.google.com [2607:f8b0:4864:20::1130]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id e0d2faa5-1498-11ee-8611-37d641c3527e; Tue, 27 Jun 2023 05:15:34 +0200 (CEST) Received: by mail-yw1-x1130.google.com with SMTP id 00721157ae682-5702415be17so30769937b3.2 for ; Mon, 26 Jun 2023 20:15:34 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::16]) by smtp.googlemail.com with ESMTPSA id s4-20020a0dd004000000b0057399b3bd26sm1614798ywd.33.2023.06.26.20.15.30 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 26 Jun 2023 20:15:32 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: e0d2faa5-1498-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687835733; x=1690427733; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=RnNdr5PDFTKJu1h5zX1p1xVUKJvhUfKvVUh/w7ZbrdI=; b=GTe2EUys5qOsmL9h+39HkmdbRnOOR/ecm3IZWO97nmipqYf9WxPQOFqim+diknH7FN cktZXimy2BTWcqn/5d10bb15uuq3PUdsia+9j36BiOqVzXj30Geeor6rYSL1Rhj9WqCn LmJ9N5OLeEYa/H4vUyKvc7Otfz8SqaPNrXVtQODdE9ilutCJ24KAZJChe9ZmvWB1bUx1 7bpUWrAZkpPXIiT5JcrWxhsn1qZ9K0WItSWhparWMs+/rm9Q3PdTkYO+KF0D1GfwN1hv 0eQBee2svyGNdGSpwEO15WqpXr0WlpHBW3JMLWAP0NGZGcgLzbwqXYAJu19e1eeZo9JE G7Dw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687835733; x=1690427733; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=RnNdr5PDFTKJu1h5zX1p1xVUKJvhUfKvVUh/w7ZbrdI=; b=PSP7Wk/aMtLeQJEluPcPsA4FXsZrMKGTOLSYi+WLQSE32ro0cEofqM8iYNMitpfGtA DizuN+vWVGP23eg8vXSEdvuKBkpRYbsW0W0zgc59bXwJL3y2Ide/hantm7hc945Qdery /d3mV94+owDA6tE1aAPGLvaWfPJ+9zpj9B2BLHVw0pWMYXIP+y3c7DS6ppzBXgCJoJj8 ylxVGoBatlRgzS9jMXgqarYP2acsvfrX8+Tij272A30yTJS1LXSbi9GoWnIVUTvYKKQ7 /aXBrg+dWR7fFohmtqrakKKJ2Z75wUleLLEGvIOPXrScyGioeXyPSF6Q+0By2xNW6Fg0 Yomw== X-Gm-Message-State: AC+VfDzY1BN1F8XxlCHdWOXUxLSrwzfJgn6CrS6gYPymhTIAWPe7nYSN QOzqXv6KJ0mP92ePYBFpAgQ= X-Google-Smtp-Source: ACHHUZ42Y/0xAZG9OHSM8VrbwgLQ6VZ3weOziZPodRcVkI1essgSTHJwJyadoUyqzcMtcD2kr7P2zg== X-Received: by 2002:a0d:e005:0:b0:573:4d89:ecb5 with SMTP id j5-20020a0de005000000b005734d89ecb5mr19780303ywe.39.1687835732948; Mon, 26 Jun 2023 20:15:32 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" , Mike Rapoport Subject: [PATCH v6 12/33] mm: Create ptdesc equivalents for pgtable_{pte,pmd}_page_{ctor,dtor} Date: Mon, 26 Jun 2023 20:14:10 -0700 Message-Id: <20230627031431.29653-13-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230627031431.29653-1-vishal.moola@gmail.com> References: <20230627031431.29653-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Create pagetable_pte_ctor(), pagetable_pmd_ctor(), pagetable_pte_dtor(), and pagetable_pmd_dtor() and make the original pgtable constructor/destructors wrappers. Signed-off-by: Vishal Moola (Oracle) Acked-by: Mike Rapoport (IBM) --- include/linux/mm.h | 56 ++++++++++++++++++++++++++++++++++------------ 1 file changed, 42 insertions(+), 14 deletions(-) diff --git a/include/linux/mm.h b/include/linux/mm.h index 69e6d6696c44..356e79984cf9 100644 --- a/include/linux/mm.h +++ b/include/linux/mm.h @@ -2859,20 +2859,34 @@ static inline bool ptlock_init(struct ptdesc *ptdesc) { return true; } static inline void ptlock_free(struct ptdesc *ptdesc) {} #endif /* USE_SPLIT_PTE_PTLOCKS */ -static inline bool pgtable_pte_page_ctor(struct page *page) +static inline bool pagetable_pte_ctor(struct ptdesc *ptdesc) { - if (!ptlock_init(page_ptdesc(page))) + struct folio *folio = ptdesc_folio(ptdesc); + + if (!ptlock_init(ptdesc)) return false; - __SetPageTable(page); - inc_lruvec_page_state(page, NR_PAGETABLE); + __folio_set_pgtable(folio); + lruvec_stat_add_folio(folio, NR_PAGETABLE); return true; } +static inline bool pgtable_pte_page_ctor(struct page *page) +{ + return pagetable_pte_ctor(page_ptdesc(page)); +} + +static inline void pagetable_pte_dtor(struct ptdesc *ptdesc) +{ + struct folio *folio = ptdesc_folio(ptdesc); + + ptlock_free(ptdesc); + __folio_clear_pgtable(folio); + lruvec_stat_sub_folio(folio, NR_PAGETABLE); +} + static inline void pgtable_pte_page_dtor(struct page *page) { - ptlock_free(page_ptdesc(page)); - __ClearPageTable(page); - dec_lruvec_page_state(page, NR_PAGETABLE); + pagetable_pte_dtor(page_ptdesc(page)); } pte_t *__pte_offset_map(pmd_t *pmd, unsigned long addr, pmd_t *pmdvalp); @@ -2965,20 +2979,34 @@ static inline spinlock_t *pmd_lock(struct mm_struct *mm, pmd_t *pmd) return ptl; } -static inline bool pgtable_pmd_page_ctor(struct page *page) +static inline bool pagetable_pmd_ctor(struct ptdesc *ptdesc) { - if (!pmd_ptlock_init(page_ptdesc(page))) + struct folio *folio = ptdesc_folio(ptdesc); + + if (!pmd_ptlock_init(ptdesc)) return false; - __SetPageTable(page); - inc_lruvec_page_state(page, NR_PAGETABLE); + __folio_set_pgtable(folio); + lruvec_stat_add_folio(folio, NR_PAGETABLE); return true; } +static inline bool pgtable_pmd_page_ctor(struct page *page) +{ + return pagetable_pmd_ctor(page_ptdesc(page)); +} + +static inline void pagetable_pmd_dtor(struct ptdesc *ptdesc) +{ + struct folio *folio = ptdesc_folio(ptdesc); + + pmd_ptlock_free(ptdesc); + __folio_clear_pgtable(folio); + lruvec_stat_sub_folio(folio, NR_PAGETABLE); +} + static inline void pgtable_pmd_page_dtor(struct page *page) { - pmd_ptlock_free(page_ptdesc(page)); - __ClearPageTable(page); - dec_lruvec_page_state(page, NR_PAGETABLE); + pagetable_pmd_dtor(page_ptdesc(page)); } /* -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Tue Jun 27 03:15:39 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 03:15:39 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555699.867738 (Exim 4.92) (envelope-from ) id 1qDzB5-0000I0-C1; Tue, 27 Jun 2023 03:15:39 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555699.867738; Tue, 27 Jun 2023 03:15:39 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDzB5-0000Hg-7X; Tue, 27 Jun 2023 03:15:39 +0000 Received: by outflank-mailman (input) for mailman id 555699; Tue, 27 Jun 2023 03:15:37 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDzB3-0003pv-GE for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 03:15:37 +0000 Received: from mail-yw1-x112d.google.com (mail-yw1-x112d.google.com [2607:f8b0:4864:20::112d]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id e21f0005-1498-11ee-b237-6b7b168915f2; Tue, 27 Jun 2023 05:15:36 +0200 (CEST) Received: by mail-yw1-x112d.google.com with SMTP id 00721157ae682-5704fce0f23so42034027b3.3 for ; Mon, 26 Jun 2023 20:15:36 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::16]) by smtp.googlemail.com with ESMTPSA id s4-20020a0dd004000000b0057399b3bd26sm1614798ywd.33.2023.06.26.20.15.33 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 26 Jun 2023 20:15:34 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: e21f0005-1498-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687835735; x=1690427735; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=JO1uHT8He+Av5NkiVAKHRKBK8X3I83QFDr1CeWVeYZ4=; b=dat1wDV0hFLhWxYH0r8ddz1H8BGcTEWHVyi5Rs5rk43A9IksDrk+3mqoUiUkRQ1bdc PR81Ap1TsQpZ2VWOAqt25hxf/tbd3WLQzV54B0l4aeb76JcfUJ+wAECtozZ2I0UZuoRC uh/oOwQmqyqFuyDBqIX7eJx8OEjtqbDmrxv7FxX1ASzR4qd3FXDZ91LjXYV0TyzIprFw kPqkd4c0XzfvJ4/7zzjtkJRieqZM2Ms5EHtEVe+Q06Qv77iK8p1yxt5xwpUsINGiVcuX C3CUZrMaWADT5iPU+9qU+7PbI5xUFKj2+rJ+T40oMZKgcYMP/C+Ckh8hFjolQrjk+muF NBQQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687835735; x=1690427735; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=JO1uHT8He+Av5NkiVAKHRKBK8X3I83QFDr1CeWVeYZ4=; b=VjmIpxGyCOA4T8gam13j11QFB5s5SbH5iuZ0zv0y6CQx6ECTQq2L3JXGmMLDJ4Lm74 /FS70V4cwmkE87CEYJvjpUeTKyQXj5HthfM9w9BtVcp6ZTVvlFG7XazZUcGovDPpzwXd sLjsB08liqWMcsDX2fyQUa+Ksymw+M9/8xtjpDnG94knD92kY/uGcJ39MhdY+V9WBqJl LpiccNwPdVKWbUALwMyt/JwijXLD1DQ5EOVk1oFpl4LTBj7St+eprKQ3zTCd0iRThcLB /cvqyO2b0WLFkPeqx40FA2lA7ByEL69v6t3EmXmimDxI+aIOdnXS2t1C9pPvnTS4QQH7 twNg== X-Gm-Message-State: AC+VfDzcK/ypOzE1aDh9+o+u8oURhrLv9MBDiTU63jkgwW6y/MvgyNZ2 aqPW2nfljTSquLHBVP8Xg/M= X-Google-Smtp-Source: ACHHUZ6zABvTWGv3CxHnfopD7sHdOjFX2mae0AdIm6lQEgrZTtH2zvRSehpouTlujo5zm4bK/E+peg== X-Received: by 2002:a0d:f306:0:b0:56d:2b76:1d2 with SMTP id c6-20020a0df306000000b0056d2b7601d2mr29033748ywf.10.1687835735078; Mon, 26 Jun 2023 20:15:35 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" , Christophe Leroy , Mike Rapoport Subject: [PATCH v6 13/33] powerpc: Convert various functions to use ptdescs Date: Mon, 26 Jun 2023 20:14:11 -0700 Message-Id: <20230627031431.29653-14-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230627031431.29653-1-vishal.moola@gmail.com> References: <20230627031431.29653-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit In order to split struct ptdesc from struct page, convert various functions to use ptdescs. Signed-off-by: Vishal Moola (Oracle) Acked-by: Mike Rapoport (IBM) --- arch/powerpc/mm/book3s64/mmu_context.c | 10 +++--- arch/powerpc/mm/book3s64/pgtable.c | 32 +++++++++--------- arch/powerpc/mm/pgtable-frag.c | 46 +++++++++++++------------- 3 files changed, 44 insertions(+), 44 deletions(-) diff --git a/arch/powerpc/mm/book3s64/mmu_context.c b/arch/powerpc/mm/book3s64/mmu_context.c index c766e4c26e42..1715b07c630c 100644 --- a/arch/powerpc/mm/book3s64/mmu_context.c +++ b/arch/powerpc/mm/book3s64/mmu_context.c @@ -246,15 +246,15 @@ static void destroy_contexts(mm_context_t *ctx) static void pmd_frag_destroy(void *pmd_frag) { int count; - struct page *page; + struct ptdesc *ptdesc; - page = virt_to_page(pmd_frag); + ptdesc = virt_to_ptdesc(pmd_frag); /* drop all the pending references */ count = ((unsigned long)pmd_frag & ~PAGE_MASK) >> PMD_FRAG_SIZE_SHIFT; /* We allow PTE_FRAG_NR fragments from a PTE page */ - if (atomic_sub_and_test(PMD_FRAG_NR - count, &page->pt_frag_refcount)) { - pgtable_pmd_page_dtor(page); - __free_page(page); + if (atomic_sub_and_test(PMD_FRAG_NR - count, &ptdesc->pt_frag_refcount)) { + pagetable_pmd_dtor(ptdesc); + pagetable_free(ptdesc); } } diff --git a/arch/powerpc/mm/book3s64/pgtable.c b/arch/powerpc/mm/book3s64/pgtable.c index 85c84e89e3ea..1212deeabe15 100644 --- a/arch/powerpc/mm/book3s64/pgtable.c +++ b/arch/powerpc/mm/book3s64/pgtable.c @@ -306,22 +306,22 @@ static pmd_t *get_pmd_from_cache(struct mm_struct *mm) static pmd_t *__alloc_for_pmdcache(struct mm_struct *mm) { void *ret = NULL; - struct page *page; + struct ptdesc *ptdesc; gfp_t gfp = GFP_KERNEL_ACCOUNT | __GFP_ZERO; if (mm == &init_mm) gfp &= ~__GFP_ACCOUNT; - page = alloc_page(gfp); - if (!page) + ptdesc = pagetable_alloc(gfp, 0); + if (!ptdesc) return NULL; - if (!pgtable_pmd_page_ctor(page)) { - __free_pages(page, 0); + if (!pagetable_pmd_ctor(ptdesc)) { + pagetable_free(ptdesc); return NULL; } - atomic_set(&page->pt_frag_refcount, 1); + atomic_set(&ptdesc->pt_frag_refcount, 1); - ret = page_address(page); + ret = ptdesc_address(ptdesc); /* * if we support only one fragment just return the * allocated page. @@ -331,12 +331,12 @@ static pmd_t *__alloc_for_pmdcache(struct mm_struct *mm) spin_lock(&mm->page_table_lock); /* - * If we find pgtable_page set, we return + * If we find ptdesc_page set, we return * the allocated page with single fragment * count. */ if (likely(!mm->context.pmd_frag)) { - atomic_set(&page->pt_frag_refcount, PMD_FRAG_NR); + atomic_set(&ptdesc->pt_frag_refcount, PMD_FRAG_NR); mm->context.pmd_frag = ret + PMD_FRAG_SIZE; } spin_unlock(&mm->page_table_lock); @@ -357,15 +357,15 @@ pmd_t *pmd_fragment_alloc(struct mm_struct *mm, unsigned long vmaddr) void pmd_fragment_free(unsigned long *pmd) { - struct page *page = virt_to_page(pmd); + struct ptdesc *ptdesc = virt_to_ptdesc(pmd); - if (PageReserved(page)) - return free_reserved_page(page); + if (pagetable_is_reserved(ptdesc)) + return free_reserved_ptdesc(ptdesc); - BUG_ON(atomic_read(&page->pt_frag_refcount) <= 0); - if (atomic_dec_and_test(&page->pt_frag_refcount)) { - pgtable_pmd_page_dtor(page); - __free_page(page); + BUG_ON(atomic_read(&ptdesc->pt_frag_refcount) <= 0); + if (atomic_dec_and_test(&ptdesc->pt_frag_refcount)) { + pagetable_pmd_dtor(ptdesc); + pagetable_free(ptdesc); } } diff --git a/arch/powerpc/mm/pgtable-frag.c b/arch/powerpc/mm/pgtable-frag.c index 20652daa1d7e..8961f1540209 100644 --- a/arch/powerpc/mm/pgtable-frag.c +++ b/arch/powerpc/mm/pgtable-frag.c @@ -18,15 +18,15 @@ void pte_frag_destroy(void *pte_frag) { int count; - struct page *page; + struct ptdesc *ptdesc; - page = virt_to_page(pte_frag); + ptdesc = virt_to_ptdesc(pte_frag); /* drop all the pending references */ count = ((unsigned long)pte_frag & ~PAGE_MASK) >> PTE_FRAG_SIZE_SHIFT; /* We allow PTE_FRAG_NR fragments from a PTE page */ - if (atomic_sub_and_test(PTE_FRAG_NR - count, &page->pt_frag_refcount)) { - pgtable_pte_page_dtor(page); - __free_page(page); + if (atomic_sub_and_test(PTE_FRAG_NR - count, &ptdesc->pt_frag_refcount)) { + pagetable_pte_dtor(ptdesc); + pagetable_free(ptdesc); } } @@ -55,25 +55,25 @@ static pte_t *get_pte_from_cache(struct mm_struct *mm) static pte_t *__alloc_for_ptecache(struct mm_struct *mm, int kernel) { void *ret = NULL; - struct page *page; + struct ptdesc *ptdesc; if (!kernel) { - page = alloc_page(PGALLOC_GFP | __GFP_ACCOUNT); - if (!page) + ptdesc = pagetable_alloc(PGALLOC_GFP | __GFP_ACCOUNT, 0); + if (!ptdesc) return NULL; - if (!pgtable_pte_page_ctor(page)) { - __free_page(page); + if (!pagetable_pte_ctor(ptdesc)) { + pagetable_free(ptdesc); return NULL; } } else { - page = alloc_page(PGALLOC_GFP); - if (!page) + ptdesc = pagetable_alloc(PGALLOC_GFP, 0); + if (!ptdesc) return NULL; } - atomic_set(&page->pt_frag_refcount, 1); + atomic_set(&ptdesc->pt_frag_refcount, 1); - ret = page_address(page); + ret = ptdesc_address(ptdesc); /* * if we support only one fragment just return the * allocated page. @@ -82,12 +82,12 @@ static pte_t *__alloc_for_ptecache(struct mm_struct *mm, int kernel) return ret; spin_lock(&mm->page_table_lock); /* - * If we find pgtable_page set, we return + * If we find ptdesc_page set, we return * the allocated page with single fragment * count. */ if (likely(!pte_frag_get(&mm->context))) { - atomic_set(&page->pt_frag_refcount, PTE_FRAG_NR); + atomic_set(&ptdesc->pt_frag_refcount, PTE_FRAG_NR); pte_frag_set(&mm->context, ret + PTE_FRAG_SIZE); } spin_unlock(&mm->page_table_lock); @@ -108,15 +108,15 @@ pte_t *pte_fragment_alloc(struct mm_struct *mm, int kernel) void pte_fragment_free(unsigned long *table, int kernel) { - struct page *page = virt_to_page(table); + struct ptdesc *ptdesc = virt_to_ptdesc(table); - if (PageReserved(page)) - return free_reserved_page(page); + if (pagetable_is_reserved(ptdesc)) + return free_reserved_ptdesc(ptdesc); - BUG_ON(atomic_read(&page->pt_frag_refcount) <= 0); - if (atomic_dec_and_test(&page->pt_frag_refcount)) { + BUG_ON(atomic_read(&ptdesc->pt_frag_refcount) <= 0); + if (atomic_dec_and_test(&ptdesc->pt_frag_refcount)) { if (!kernel) - pgtable_pte_page_dtor(page); - __free_page(page); + pagetable_pte_dtor(ptdesc); + pagetable_free(ptdesc); } } -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Tue Jun 27 03:19:26 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 03:19:26 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555719.867748 (Exim 4.92) (envelope-from ) id 1qDzEi-00037Q-U2; Tue, 27 Jun 2023 03:19:24 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555719.867748; Tue, 27 Jun 2023 03:19:24 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDzEi-00037G-PP; Tue, 27 Jun 2023 03:19:24 +0000 Received: by outflank-mailman (input) for mailman id 555719; Tue, 27 Jun 2023 03:19:24 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDzBU-0003pv-Al for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 03:16:04 +0000 Received: from mail-yw1-x1130.google.com (mail-yw1-x1130.google.com [2607:f8b0:4864:20::1130]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id f2a1f92f-1498-11ee-b237-6b7b168915f2; Tue, 27 Jun 2023 05:16:03 +0200 (CEST) Received: by mail-yw1-x1130.google.com with SMTP id 00721157ae682-5700401acbeso42707367b3.0 for ; Mon, 26 Jun 2023 20:16:03 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::16]) by smtp.googlemail.com with ESMTPSA id s4-20020a0dd004000000b0057399b3bd26sm1614798ywd.33.2023.06.26.20.16.00 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 26 Jun 2023 20:16:02 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: f2a1f92f-1498-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687835763; x=1690427763; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=DOzSOLTncjJXn0AvJQqE6PD7zrtBe8MIuyz5zw7TzDY=; b=pYu/np5E02v9D4l9kp2NKvJbLly/W4E/pytzpciEjQbyT6+cb3MtewkIWSZ/wCYqXd G1Xr/QkETq+9GbOV2yhW+2wZnwokC/KdlaanhyggpRl1yOJr09K81oiMFpOqkCSKUN1U FaF0VsjnMFKldVgjw5dM4Iy6YMJ/sIWl4pMPKU4lAMjDSOWrwT/y3HEK7DZHkwf96llK iirmdX85Js3ztXjDiHDLqtShs9EXg3guUWkHRosbVKtQGujpNsiEApphQ37yRcHluKce hLpePft/RQblwSLVA6U8/x8zaLVFAB0Ea9ymuNJLOKqGjd9fA49LoIOpslhGIKWxr+Yx skeg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687835763; x=1690427763; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=DOzSOLTncjJXn0AvJQqE6PD7zrtBe8MIuyz5zw7TzDY=; b=Z5tX7pVbkc3FpwZC9ahH4jWWUatKqBDKTr+AkWT9CECdGtCGI2h7iel0U4qZInCdv5 tNjOGoBq77SuibS84xD+RFj5bEVu+8DAhKda4Sv+eZIQAbhMTnxrbVIZF26cpfd4slW9 +ppsmqJ5N+RrjJ7eUvFZ+tIlPKdFrmEvHSJVoyzw2bu88E1TvN7HFspteRf8Tl5S3FnR UXVG69JZHLIzjs7qKSG/EhGXFpagA7ERv0R9VtO72SB77olZqpJ2tJJDzG6qBgqA12VI UueK996jqnXXaee8KxSHGBBOPh/h3vrJ6oQBeWfFSmnXy9u3Upq9TCVOg8Rl8c7bxlUb p/5w== X-Gm-Message-State: AC+VfDzrmR0C7pMAOWfHnbqivMTrr8X9uksYZCx9/60pKte6vH+yXZjC PGgIe75bZvzaNsI/sjdANZk= X-Google-Smtp-Source: ACHHUZ4sbsRgQIL7xgoFeCT8hAtH3rltXvvkgvi4T0uDEBiqb265+aHLns97dzgLS2JgA0bF/wvN3w== X-Received: by 2002:a0d:ddc5:0:b0:576:8a5a:87e5 with SMTP id g188-20020a0dddc5000000b005768a5a87e5mr10382513ywe.26.1687835762791; Mon, 26 Jun 2023 20:16:02 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" , Mike Rapoport , Dinh Nguyen Subject: [PATCH v6 26/33] nios2: Convert __pte_free_tlb() to use ptdescs Date: Mon, 26 Jun 2023 20:14:24 -0700 Message-Id: <20230627031431.29653-27-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230627031431.29653-1-vishal.moola@gmail.com> References: <20230627031431.29653-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Part of the conversions to replace pgtable constructor/destructors with ptdesc equivalents. Signed-off-by: Vishal Moola (Oracle) Acked-by: Mike Rapoport (IBM) Acked-by: Dinh Nguyen --- arch/nios2/include/asm/pgalloc.h | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/arch/nios2/include/asm/pgalloc.h b/arch/nios2/include/asm/pgalloc.h index ecd1657bb2ce..ce6bb8e74271 100644 --- a/arch/nios2/include/asm/pgalloc.h +++ b/arch/nios2/include/asm/pgalloc.h @@ -28,10 +28,10 @@ static inline void pmd_populate(struct mm_struct *mm, pmd_t *pmd, extern pgd_t *pgd_alloc(struct mm_struct *mm); -#define __pte_free_tlb(tlb, pte, addr) \ - do { \ - pgtable_pte_page_dtor(pte); \ - tlb_remove_page((tlb), (pte)); \ +#define __pte_free_tlb(tlb, pte, addr) \ + do { \ + pagetable_pte_dtor(page_ptdesc(pte)); \ + tlb_remove_page_ptdesc((tlb), (page_ptdesc(pte))); \ } while (0) #endif /* _ASM_NIOS2_PGALLOC_H */ -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Tue Jun 27 03:19:26 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 03:19:26 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555720.867753 (Exim 4.92) (envelope-from ) id 1qDzEj-0003AM-58; Tue, 27 Jun 2023 03:19:25 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555720.867753; Tue, 27 Jun 2023 03:19:25 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDzEj-00039o-0n; Tue, 27 Jun 2023 03:19:25 +0000 Received: by outflank-mailman (input) for mailman id 555720; Tue, 27 Jun 2023 03:19:24 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDzBh-0003pv-BH for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 03:16:17 +0000 Received: from mail-yw1-x1129.google.com (mail-yw1-x1129.google.com [2607:f8b0:4864:20::1129]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id fa37eb58-1498-11ee-b237-6b7b168915f2; Tue, 27 Jun 2023 05:16:16 +0200 (CEST) Received: by mail-yw1-x1129.google.com with SMTP id 00721157ae682-57045429f76so40114357b3.0 for ; Mon, 26 Jun 2023 20:16:16 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::16]) by smtp.googlemail.com with ESMTPSA id s4-20020a0dd004000000b0057399b3bd26sm1614798ywd.33.2023.06.26.20.16.13 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 26 Jun 2023 20:16:15 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: fa37eb58-1498-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687835775; x=1690427775; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=JRfRtQSkmDpdaHgWU+x8J8rVDSFtmuGYMRjnXDV0vQY=; b=Gr8f3MEz3obvDl9KABhIuO70HTBkoFbuWEeimu9z4yQhoBxpIMzXHt4/zQiD/35FR2 Rou/oVuLMNuircs5Aw55ugfL83e83sFrRKh4nGjfNUBrs0Ns51CypHUWM+aHwKiIGCB4 bDbKAJJc6ueglTVv6Zd/8VvPqPuBRwfoUXOaXnwyPF0zCFc73NfT/c9Q8XEzBzPYIVow QBI9GU/YA6Md8J3UGn6Xw0CXbMe3aYnpOaLZmcH+kLxI6o4K+ynL8B23lQ0U//mVHlcw WbYitL1St1RrPY9jH0d0TpkVmHfz+e14q0Nl7+sag9AUsUOnDCmyHqhFNRZORMjuCsmz kdWw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687835775; x=1690427775; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=JRfRtQSkmDpdaHgWU+x8J8rVDSFtmuGYMRjnXDV0vQY=; b=BJ1023+V/bRiMjWAt1t+0kB5CUTzXUin2ga20sZNEM/SjYwNw92Rg370+gumUoLFYa Kf73Wq2U9WV3PvXj3qxX4kBNHYKrSURuCv1DH28WIo7wuE8EyL4yVkb+MDg0OyV0xFHT ezjDcx2670kD/VlGcOM55cMyP8FQkDDNBauWbOMQdeUAHox81bwePfZtQbgxLnGvCmGr sFaB0A/+7wGOprNtTtcIaC7sOmzFmuGlTPdGs0G3M8ZGQyC1UGddxPynArq+4RJASSD5 MboCv2R2aSaQkyI/J2pYX+n2nQW38ARoJpO3zCAcLGItZa4CG7EOf08pASrosCLkBU1o iL8A== X-Gm-Message-State: AC+VfDzaaQpbBHpPFivQgEp4yGpfgeAQ1tRpsvrAMoheAv/Z/PjXZ/6k uLgSoi5pkWoZQZk9vEbr24g= X-Google-Smtp-Source: ACHHUZ4XU3sOm1xs9Jcr5rbSZbAjZaSOolmfhgi2qcsz6PmREIffAwTevHZjKc/Hdw6V5zHvfavIAw== X-Received: by 2002:a0d:cd46:0:b0:576:7902:f4dd with SMTP id p67-20020a0dcd46000000b005767902f4ddmr12132465ywd.47.1687835775530; Mon, 26 Jun 2023 20:16:15 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" , Richard Weinberger , Mike Rapoport Subject: [PATCH v6 32/33] um: Convert {pmd, pte}_free_tlb() to use ptdescs Date: Mon, 26 Jun 2023 20:14:30 -0700 Message-Id: <20230627031431.29653-33-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230627031431.29653-1-vishal.moola@gmail.com> References: <20230627031431.29653-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Part of the conversions to replace pgtable constructor/destructors with ptdesc equivalents. Also cleans up some spacing issues. Signed-off-by: Vishal Moola (Oracle) Acked-by: Mike Rapoport (IBM) --- arch/um/include/asm/pgalloc.h | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/arch/um/include/asm/pgalloc.h b/arch/um/include/asm/pgalloc.h index 8ec7cd46dd96..de5e31c64793 100644 --- a/arch/um/include/asm/pgalloc.h +++ b/arch/um/include/asm/pgalloc.h @@ -25,19 +25,19 @@ */ extern pgd_t *pgd_alloc(struct mm_struct *); -#define __pte_free_tlb(tlb,pte, address) \ -do { \ - pgtable_pte_page_dtor(pte); \ - tlb_remove_page((tlb),(pte)); \ +#define __pte_free_tlb(tlb, pte, address) \ +do { \ + pagetable_pte_dtor(page_ptdesc(pte)); \ + tlb_remove_page_ptdesc((tlb), (page_ptdesc(pte))); \ } while (0) #ifdef CONFIG_3_LEVEL_PGTABLES -#define __pmd_free_tlb(tlb, pmd, address) \ -do { \ - pgtable_pmd_page_dtor(virt_to_page(pmd)); \ - tlb_remove_page((tlb),virt_to_page(pmd)); \ -} while (0) \ +#define __pmd_free_tlb(tlb, pmd, address) \ +do { \ + pagetable_pmd_dtor(virt_to_ptdesc(pmd)); \ + tlb_remove_page_ptdesc((tlb), virt_to_ptdesc(pmd)); \ +} while (0) #endif -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Tue Jun 27 03:19:26 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 03:19:26 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555725.867768 (Exim 4.92) (envelope-from ) id 1qDzEk-0003aG-Dh; Tue, 27 Jun 2023 03:19:26 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555725.867768; Tue, 27 Jun 2023 03:19:26 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDzEk-0003ZM-7J; Tue, 27 Jun 2023 03:19:26 +0000 Received: by outflank-mailman (input) for mailman id 555725; Tue, 27 Jun 2023 03:19:25 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDzBW-0003pv-Pk for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 03:16:06 +0000 Received: from mail-yw1-x1134.google.com (mail-yw1-x1134.google.com [2607:f8b0:4864:20::1134]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id f3e14531-1498-11ee-b237-6b7b168915f2; Tue, 27 Jun 2023 05:16:06 +0200 (CEST) Received: by mail-yw1-x1134.google.com with SMTP id 00721157ae682-573491c4deeso42155297b3.0 for ; Mon, 26 Jun 2023 20:16:06 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::16]) by smtp.googlemail.com with ESMTPSA id s4-20020a0dd004000000b0057399b3bd26sm1614798ywd.33.2023.06.26.20.16.02 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 26 Jun 2023 20:16:04 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: f3e14531-1498-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687835765; x=1690427765; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=0AnRv7d38hHUVaoAGins0CaWMMRgzo0GwUb20Y9YoSw=; b=e60Y6sevaT4oQ/L5KuHLcNtraCcaqymJSw0Pta6sshcpf6ZZ6QManSmR0ZQpDOB1TG Zv6Fux3N6RAGTYaqlaV6L/vXV7y5TNrp+A8hP8/1TroaBlBjnjU2829v3J+cnc+AhOb5 JN+Np+61YaCNuusYO6cIWgMGGdhyo7H5wD/egNG2vy+zzD2dD0OPETzsjKXbKfq9Y/2e UqWfUGJ07+JZFMPC47CCL6nCuIIVod63+MvhTRgj6G4ml0xqLiHcn4xnMK5EG5kSpCpR IaKEXBQ7G4bgWt8P3QrMWU+dPATv19IcGEhHsTfe2EI7sEKEiwRzexwBCQnzrxDWjBM/ K5Og== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687835765; x=1690427765; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=0AnRv7d38hHUVaoAGins0CaWMMRgzo0GwUb20Y9YoSw=; b=ljwqEljY3+C8w7so66jpy+7l9ZZvA5JDSg39WKCDH4y+TsH2wdnYsTddrzn3uNdc7v 3ISblIMUd76gxcxAmBA4a7ImlkzzUQ/aCeIUzx2ek326wuJYmpgpn+oTCjNTSzdekKb4 wYRJyonuY+4RValuz2/PXhIQspAxoQOXAlFGIG7ha+ag4/yW+Xu9nnfD0hjzKlc45Hw9 n4lgdkQNemwv+daLEYYFKAklTa4jEOmtBe1bW21MQF1VzqAStcHBZLklPAEY5zhy6Rhl u4AzUKv9rImCHKyCfKHMUgojIRKyNuTt8n8hRdJZr6vsS8DHbXvAwIGQ9Nip8AhiA6ta RDiA== X-Gm-Message-State: AC+VfDxOvL8rom3FzIcPC36LzOmPxV2Z+HZszX9yhde3xTxkYV1hcpia MRGBP5eOeLs0JfXUcTjRGEw= X-Google-Smtp-Source: ACHHUZ5DGQdkUnjmZtvUypsIHEbjelQEN0sIFmuzviWoifvHBxszYaVoeD06anXcP6T6X+bEflb+Ug== X-Received: by 2002:a0d:fb86:0:b0:573:5071:2a12 with SMTP id l128-20020a0dfb86000000b0057350712a12mr24368068ywf.18.1687835764817; Mon, 26 Jun 2023 20:16:04 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" , Mike Rapoport Subject: [PATCH v6 27/33] openrisc: Convert __pte_free_tlb() to use ptdescs Date: Mon, 26 Jun 2023 20:14:25 -0700 Message-Id: <20230627031431.29653-28-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230627031431.29653-1-vishal.moola@gmail.com> References: <20230627031431.29653-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Part of the conversions to replace pgtable constructor/destructors with ptdesc equivalents. Signed-off-by: Vishal Moola (Oracle) Acked-by: Mike Rapoport (IBM) --- arch/openrisc/include/asm/pgalloc.h | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/arch/openrisc/include/asm/pgalloc.h b/arch/openrisc/include/asm/pgalloc.h index b7b2b8d16fad..c6a73772a546 100644 --- a/arch/openrisc/include/asm/pgalloc.h +++ b/arch/openrisc/include/asm/pgalloc.h @@ -66,10 +66,10 @@ extern inline pgd_t *pgd_alloc(struct mm_struct *mm) extern pte_t *pte_alloc_one_kernel(struct mm_struct *mm); -#define __pte_free_tlb(tlb, pte, addr) \ -do { \ - pgtable_pte_page_dtor(pte); \ - tlb_remove_page((tlb), (pte)); \ +#define __pte_free_tlb(tlb, pte, addr) \ +do { \ + pagetable_pte_dtor(page_ptdesc(pte)); \ + tlb_remove_page_ptdesc((tlb), (page_ptdesc(pte))); \ } while (0) #endif -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Tue Jun 27 03:19:27 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 03:19:27 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555729.867778 (Exim 4.92) (envelope-from ) id 1qDzEl-0003te-MM; Tue, 27 Jun 2023 03:19:27 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555729.867778; Tue, 27 Jun 2023 03:19:27 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDzEl-0003si-JD; Tue, 27 Jun 2023 03:19:27 +0000 Received: by outflank-mailman (input) for mailman id 555729; Tue, 27 Jun 2023 03:19:26 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDzBj-0003pv-FC for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 03:16:19 +0000 Received: from mail-yw1-x1133.google.com (mail-yw1-x1133.google.com [2607:f8b0:4864:20::1133]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id fb8e17bc-1498-11ee-b237-6b7b168915f2; Tue, 27 Jun 2023 05:16:18 +0200 (CEST) Received: by mail-yw1-x1133.google.com with SMTP id 00721157ae682-5704ddda6dfso44581027b3.1 for ; Mon, 26 Jun 2023 20:16:18 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::16]) by smtp.googlemail.com with ESMTPSA id s4-20020a0dd004000000b0057399b3bd26sm1614798ywd.33.2023.06.26.20.16.15 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 26 Jun 2023 20:16:17 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: fb8e17bc-1498-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687835778; x=1690427778; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=UurGuuLzED1CKQ5+YtAa+uldlNlkULcrhOlEPtYgkts=; b=Bw6j1qqbA7rK2Dm84VNEOP66RtUUiWxR5Sye2bW+eq3uYQIAY2EgG1iwdb2DLJnhG8 GeCT0K/ZwJIKUih4HIgcFRg+mw1EU/RmQtL9RCws+bBmnGeSgMwKEqV8Sq7OOh2ekNKy KxZzPsUUwTKcYY2uR69y6/3CJ/yQh13J76r7SLJTov+ctRLrvX63ZMz8HGYd0YBMtxPR d4bJ4wdUGuyrpgX3PWgY/0ePtHqJFHhYHpUgd8NRua4eh9nOB+MqmDgdNijgrl/iljgo W4AbA6WKPV5xVJmow0GDfY5w1hM9Ipzkd6LQ2xSzFc3wc9cyZI8JF3nhcsteILote3wU 0FOQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687835778; x=1690427778; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=UurGuuLzED1CKQ5+YtAa+uldlNlkULcrhOlEPtYgkts=; b=L3ZoBsDXiE8AcguSteUR6mAuEyaaiJc8ksr66+5tU9MPyhXP8vA40xXKmCK3k+l9R5 Vc/mZn9OwOYha5kDf8+HZgkoAjEk1pQYvThvf7/lB6uh59x5Hr6Zgkw4/Rdp5SEvbTJE FfRs0gdQSCYB5/J7PUdcTxbJxlpIVsbXCYCR02Ks71/QPaWeW7TdzRJAXomCZev49cuk iJshY9Brkf99x2D04xXWcnll6vJio/2tsDXxlsNJ+XdkhAS9AHeQ46dCPUZ6AMTR9s7K 3O266YPtd4vgtozxZFdbbXMxLPhaaRzukG1n3gYqugYgKv+I/JBpwwG5bU6jliWpMQ9D J0GQ== X-Gm-Message-State: AC+VfDwqQ6JC//6oyYmCoMVocpAyxz7nonuWagu9QJIMRjCm2assUWns cDdOby0mAKvjww8lhUckvJ8= X-Google-Smtp-Source: ACHHUZ48cJY/DPvk+Kk12K3DwipJ5tKtap76NQbk/m6+l8TYs0OHWXs1Miee1fTjpWtp4A4P8vJjEA== X-Received: by 2002:a81:4e88:0:b0:565:ba4b:aa81 with SMTP id c130-20020a814e88000000b00565ba4baa81mr32811368ywb.45.1687835777737; Mon, 26 Jun 2023 20:16:17 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" , Mike Rapoport Subject: [PATCH v6 33/33] mm: Remove pgtable_{pmd, pte}_page_{ctor, dtor}() wrappers Date: Mon, 26 Jun 2023 20:14:31 -0700 Message-Id: <20230627031431.29653-34-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230627031431.29653-1-vishal.moola@gmail.com> References: <20230627031431.29653-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit These functions are no longer necessary. Remove them and cleanup Documentation referencing them. Signed-off-by: Vishal Moola (Oracle) Acked-by: Mike Rapoport (IBM) --- Documentation/mm/split_page_table_lock.rst | 12 +++++------ .../zh_CN/mm/split_page_table_lock.rst | 14 ++++++------- include/linux/mm.h | 20 ------------------- 3 files changed, 13 insertions(+), 33 deletions(-) diff --git a/Documentation/mm/split_page_table_lock.rst b/Documentation/mm/split_page_table_lock.rst index a834fad9de12..e4f6972eb6c0 100644 --- a/Documentation/mm/split_page_table_lock.rst +++ b/Documentation/mm/split_page_table_lock.rst @@ -58,7 +58,7 @@ Support of split page table lock by an architecture =================================================== There's no need in special enabling of PTE split page table lock: everything -required is done by pgtable_pte_page_ctor() and pgtable_pte_page_dtor(), which +required is done by pagetable_pte_ctor() and pagetable_pte_dtor(), which must be called on PTE table allocation / freeing. Make sure the architecture doesn't use slab allocator for page table @@ -68,8 +68,8 @@ This field shares storage with page->ptl. PMD split lock only makes sense if you have more than two page table levels. -PMD split lock enabling requires pgtable_pmd_page_ctor() call on PMD table -allocation and pgtable_pmd_page_dtor() on freeing. +PMD split lock enabling requires pagetable_pmd_ctor() call on PMD table +allocation and pagetable_pmd_dtor() on freeing. Allocation usually happens in pmd_alloc_one(), freeing in pmd_free() and pmd_free_tlb(), but make sure you cover all PMD table allocation / freeing @@ -77,7 +77,7 @@ paths: i.e X86_PAE preallocate few PMDs on pgd_alloc(). With everything in place you can set CONFIG_ARCH_ENABLE_SPLIT_PMD_PTLOCK. -NOTE: pgtable_pte_page_ctor() and pgtable_pmd_page_ctor() can fail -- it must +NOTE: pagetable_pte_ctor() and pagetable_pmd_ctor() can fail -- it must be handled properly. page->ptl @@ -97,7 +97,7 @@ trick: split lock with enabled DEBUG_SPINLOCK or DEBUG_LOCK_ALLOC, but costs one more cache line for indirect access; -The spinlock_t allocated in pgtable_pte_page_ctor() for PTE table and in -pgtable_pmd_page_ctor() for PMD table. +The spinlock_t allocated in pagetable_pte_ctor() for PTE table and in +pagetable_pmd_ctor() for PMD table. Please, never access page->ptl directly -- use appropriate helper. diff --git a/Documentation/translations/zh_CN/mm/split_page_table_lock.rst b/Documentation/translations/zh_CN/mm/split_page_table_lock.rst index 4fb7aa666037..a2c288670a24 100644 --- a/Documentation/translations/zh_CN/mm/split_page_table_lock.rst +++ b/Documentation/translations/zh_CN/mm/split_page_table_lock.rst @@ -56,16 +56,16 @@ Hugetlb特定的辅助函数: 架构对分页表锁的支持 ==================== -没有必要特别启用PTE分页表锁:所有需要的东西都由pgtable_pte_page_ctor() -和pgtable_pte_page_dtor()完成,它们必须在PTE表分配/释放时被调用。 +没有必要特别启用PTE分页表锁:所有需要的东西都由pagetable_pte_ctor() +和pagetable_pte_dtor()完成,它们必须在PTE表分配/释放时被调用。 确保架构不使用slab分配器来分配页表:slab使用page->slab_cache来分配其页 面。这个区域与page->ptl共享存储。 PMD分页锁只有在你有两个以上的页表级别时才有意义。 -启用PMD分页锁需要在PMD表分配时调用pgtable_pmd_page_ctor(),在释放时调 -用pgtable_pmd_page_dtor()。 +启用PMD分页锁需要在PMD表分配时调用pagetable_pmd_ctor(),在释放时调 +用pagetable_pmd_dtor()。 分配通常发生在pmd_alloc_one()中,释放发生在pmd_free()和pmd_free_tlb() 中,但要确保覆盖所有的PMD表分配/释放路径:即X86_PAE在pgd_alloc()中预先 @@ -73,7 +73,7 @@ PMD分页锁只有在你有两个以上的页表级别时才有意义。 一切就绪后,你可以设置CONFIG_ARCH_ENABLE_SPLIT_PMD_PTLOCK。 -注意:pgtable_pte_page_ctor()和pgtable_pmd_page_ctor()可能失败--必 +注意:pagetable_pte_ctor()和pagetable_pmd_ctor()可能失败--必 须正确处理。 page->ptl @@ -90,7 +90,7 @@ page->ptl用于访问分割页表锁,其中'page'是包含该表的页面struc 的指针并动态分配它。这允许在启用DEBUG_SPINLOCK或DEBUG_LOCK_ALLOC的 情况下使用分页锁,但由于间接访问而多花了一个缓存行。 -PTE表的spinlock_t分配在pgtable_pte_page_ctor()中,PMD表的spinlock_t -分配在pgtable_pmd_page_ctor()中。 +PTE表的spinlock_t分配在pagetable_pte_ctor()中,PMD表的spinlock_t +分配在pagetable_pmd_ctor()中。 请不要直接访问page->ptl - -使用适当的辅助函数。 diff --git a/include/linux/mm.h b/include/linux/mm.h index 0e4d5f6d10e5..dc0f19f35424 100644 --- a/include/linux/mm.h +++ b/include/linux/mm.h @@ -2873,11 +2873,6 @@ static inline bool pagetable_pte_ctor(struct ptdesc *ptdesc) return true; } -static inline bool pgtable_pte_page_ctor(struct page *page) -{ - return pagetable_pte_ctor(page_ptdesc(page)); -} - static inline void pagetable_pte_dtor(struct ptdesc *ptdesc) { struct folio *folio = ptdesc_folio(ptdesc); @@ -2887,11 +2882,6 @@ static inline void pagetable_pte_dtor(struct ptdesc *ptdesc) lruvec_stat_sub_folio(folio, NR_PAGETABLE); } -static inline void pgtable_pte_page_dtor(struct page *page) -{ - pagetable_pte_dtor(page_ptdesc(page)); -} - pte_t *__pte_offset_map(pmd_t *pmd, unsigned long addr, pmd_t *pmdvalp); static inline pte_t *pte_offset_map(pmd_t *pmd, unsigned long addr) { @@ -2993,11 +2983,6 @@ static inline bool pagetable_pmd_ctor(struct ptdesc *ptdesc) return true; } -static inline bool pgtable_pmd_page_ctor(struct page *page) -{ - return pagetable_pmd_ctor(page_ptdesc(page)); -} - static inline void pagetable_pmd_dtor(struct ptdesc *ptdesc) { struct folio *folio = ptdesc_folio(ptdesc); @@ -3007,11 +2992,6 @@ static inline void pagetable_pmd_dtor(struct ptdesc *ptdesc) lruvec_stat_sub_folio(folio, NR_PAGETABLE); } -static inline void pgtable_pmd_page_dtor(struct page *page) -{ - pagetable_pmd_dtor(page_ptdesc(page)); -} - /* * No scalability reason to split PUD locks yet, but follow the same pattern * as the PMD locks to make it easier if we decide to. The VM should not be -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Tue Jun 27 03:19:29 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 03:19:29 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555731.867788 (Exim 4.92) (envelope-from ) id 1qDzEn-0004Cw-82; Tue, 27 Jun 2023 03:19:29 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555731.867788; Tue, 27 Jun 2023 03:19:29 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDzEn-0004Bi-2k; Tue, 27 Jun 2023 03:19:29 +0000 Received: by outflank-mailman (input) for mailman id 555731; Tue, 27 Jun 2023 03:19:26 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDzBL-0003pv-MZ for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 03:15:55 +0000 Received: from mail-yw1-x112c.google.com (mail-yw1-x112c.google.com [2607:f8b0:4864:20::112c]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id ec6adde9-1498-11ee-b237-6b7b168915f2; Tue, 27 Jun 2023 05:15:54 +0200 (CEST) Received: by mail-yw1-x112c.google.com with SMTP id 00721157ae682-5703d12ab9aso42009247b3.2 for ; Mon, 26 Jun 2023 20:15:53 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::16]) by smtp.googlemail.com with ESMTPSA id s4-20020a0dd004000000b0057399b3bd26sm1614798ywd.33.2023.06.26.20.15.50 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 26 Jun 2023 20:15:52 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: ec6adde9-1498-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687835752; x=1690427752; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=/CuYJ7liBLmFxtlpmCAIL/qtog0vkZLk1dVk72P32nA=; b=Z2y492L3/D8WlJ5Hq0dqKp0BKJYUW7Eb9G7qdf3vIGRQ+O8SF6z7cY8de1pnrMmDqQ +a96x8kX3opEhwfyHnlNFTWX5OwZauzWBj6C4ouPJiZfrfA0EmnR4gOkOWCXT0Tt5rk7 XHfLS6CI7/qHcQlfDrYckrQudKqfd53TugdHSOAC54JEXTOgwU9ogsxc/TSIilUUybaL /EAuzpcVE6dEZDr0iMV3l0ZL5CrHH5SQ2tSWsVIXTRE6S7JRWuiJGvbxR8kbv1x+D3dj SKo4oZP9xKp5iaeAAmMvP/qF+1bKjojF2HvsjQLLw57QGCxHLxvjF/rVFYkYGLWd7pTO F1LA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687835752; x=1690427752; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=/CuYJ7liBLmFxtlpmCAIL/qtog0vkZLk1dVk72P32nA=; b=Kt7KlCMTg4yoCDOyYINypC+RMs3PxyIMv/A/+xOemAMTHXfng25xv1OssnyPGS/T3W DK1JomRD0qx+TmRTEnqX2emKWX56KNJOiU2rOa5VRiwp7NSj0WX7YjuEf8ptoBSewuUf 2dv8UAx+9NYj8lknXCWUu+RDdkuXifq2d702C5odifl/M8/UxWR0k9tiy6XMrEn/zXHJ SBq8AfIh9WR+IEuAQH2i4SmpAT0J6rPjxAVN1oeyA6PsB0N37S8z21VIZg8vKxu20gPl GBCBTLIhOYwYPlKFEVfHqh5eCBHkK5gWE8f/pqLLLjTsnWPkwbLzw54Ia97mQiJ4huNm XuVA== X-Gm-Message-State: AC+VfDw/LJeIo1d6J2pKlXxRTuHgiDFNQxI/XmLuF6EdSW3wmRORhP9f gUrnyeK0dVDN23STN4Iiu+c= X-Google-Smtp-Source: ACHHUZ5CQK8kRHJUPJM2uDCPFRj7p03JLp7keUZBkce6O+8d/iMl0gg4/oyJxvTRdTEHePf390CKKQ== X-Received: by 2002:a81:4689:0:b0:573:9751:ad15 with SMTP id t131-20020a814689000000b005739751ad15mr18645821ywa.17.1687835752283; Mon, 26 Jun 2023 20:15:52 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" , Guo Ren , Mike Rapoport Subject: [PATCH v6 21/33] csky: Convert __pte_free_tlb() to use ptdescs Date: Mon, 26 Jun 2023 20:14:19 -0700 Message-Id: <20230627031431.29653-22-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230627031431.29653-1-vishal.moola@gmail.com> References: <20230627031431.29653-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Part of the conversions to replace pgtable constructor/destructors with ptdesc equivalents. Signed-off-by: Vishal Moola (Oracle) Acked-by: Guo Ren Acked-by: Mike Rapoport (IBM) --- arch/csky/include/asm/pgalloc.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/arch/csky/include/asm/pgalloc.h b/arch/csky/include/asm/pgalloc.h index 7d57e5da0914..9c84c9012e53 100644 --- a/arch/csky/include/asm/pgalloc.h +++ b/arch/csky/include/asm/pgalloc.h @@ -63,8 +63,8 @@ static inline pgd_t *pgd_alloc(struct mm_struct *mm) #define __pte_free_tlb(tlb, pte, address) \ do { \ - pgtable_pte_page_dtor(pte); \ - tlb_remove_page(tlb, pte); \ + pagetable_pte_dtor(page_ptdesc(pte)); \ + tlb_remove_page_ptdesc(tlb, page_ptdesc(pte)); \ } while (0) extern void pagetable_init(void); -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Tue Jun 27 03:19:29 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 03:19:29 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555733.867793 (Exim 4.92) (envelope-from ) id 1qDzEn-0004FO-Pd; Tue, 27 Jun 2023 03:19:29 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555733.867793; Tue, 27 Jun 2023 03:19:29 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDzEn-0004EY-D3; Tue, 27 Jun 2023 03:19:29 +0000 Received: by outflank-mailman (input) for mailman id 555733; Tue, 27 Jun 2023 03:19:27 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDzBR-0003pv-Nt for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 03:16:01 +0000 Received: from mail-yw1-x1133.google.com (mail-yw1-x1133.google.com [2607:f8b0:4864:20::1133]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id f02bddc7-1498-11ee-b237-6b7b168915f2; Tue, 27 Jun 2023 05:15:59 +0200 (CEST) Received: by mail-yw1-x1133.google.com with SMTP id 00721157ae682-5707b429540so62186137b3.1 for ; Mon, 26 Jun 2023 20:15:59 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::16]) by smtp.googlemail.com with ESMTPSA id s4-20020a0dd004000000b0057399b3bd26sm1614798ywd.33.2023.06.26.20.15.56 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 26 Jun 2023 20:15:58 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: f02bddc7-1498-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687835758; x=1690427758; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=PAg5qbCpsu4QeXC2CiYcNVSx9jEaugPagVbNncebk84=; b=HwE9+CZ1/MplCMi7Dd3y6gsJURyNL7dWtCmym2tEO6RLfYDnkDNvgC79iMqV9euLNn oVO0tEUHDhiP0KRiFP5iP4q3wggvsZxNdlBp3O9pE0RV47pjcEcaBTmVZLvdVziVmkiN gnSeJULzSpSwzOVkoSp8BjrvY4/vuL0/IWrHFgVmjaO0yw1AUh35UrvuuREuQfZ+tpcw 9rFnkC2jafbB81zXFV2qvI6ZqjiQ1IYXHHbUsS7aTvWca4xplkb3IO0wrERoA+osEcaT dwBDuf+P0WX2zQaokYGQLzNk5fMi+yQC6tDn43/lzPeNFLEgDUuF9Wyio0Rv0IcsuBq4 Vk5Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687835758; x=1690427758; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=PAg5qbCpsu4QeXC2CiYcNVSx9jEaugPagVbNncebk84=; b=I4thY+u9L1BTrdO4OVpA0eWv1cDMJS+CkA/yLU51A9P1WCy1u3NPkNfal/ggxX5zin DST9YCrRp2RTiQtVanpbZ+Nq/50SUWt7RxsB6xLDTGr4ayLMA7jSUgCdJl3rG9Ni6wJD 3rTQN+8giDg/KhzEVoEGEcEGAoM0Qd193y8/agQpwIQRpvD5n0OXLAhdDQXx98Yevj/Q mrv4iiYlloSzwZcmLbDf3ODIzgNDFDn53FxFXP4pUozNTcDhamgzJOgSs+fQhy7C7pJr Fx/vbzB4lrE0VfpUSXkLqFcd3ApCL0T//86eQMSLwVBg11kRE6TUnM/WuXSDpgb4JHae B4Qw== X-Gm-Message-State: AC+VfDyupJarVuhoajzVFmpd+drrYsLnEFwrap5ZelTGDCkBlvJyfC8R 7Ec6xLeEwczc8R/8mUFcts0= X-Google-Smtp-Source: ACHHUZ5t5DVTD+g/5WvyBpKjpLFbmoJ8U0LjdfQz8YgnU+ZmoVAy6rR6pXI+3pmYZp1NNhYIufsQrw== X-Received: by 2002:a0d:e657:0:b0:569:ef2b:e20 with SMTP id p84-20020a0de657000000b00569ef2b0e20mr35915592ywe.23.1687835758576; Mon, 26 Jun 2023 20:15:58 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" , Geert Uytterhoeven , Mike Rapoport Subject: [PATCH v6 24/33] m68k: Convert various functions to use ptdescs Date: Mon, 26 Jun 2023 20:14:22 -0700 Message-Id: <20230627031431.29653-25-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230627031431.29653-1-vishal.moola@gmail.com> References: <20230627031431.29653-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit As part of the conversions to replace pgtable constructor/destructors with ptdesc equivalents, convert various page table functions to use ptdescs. Some of the functions use the *get*page*() helper functions. Convert these to use pagetable_alloc() and ptdesc_address() instead to help standardize page tables further. Signed-off-by: Vishal Moola (Oracle) Acked-by: Mike Rapoport (IBM) Acked-by: Geert Uytterhoeven --- arch/m68k/include/asm/mcf_pgalloc.h | 47 ++++++++++++++-------------- arch/m68k/include/asm/sun3_pgalloc.h | 8 ++--- arch/m68k/mm/motorola.c | 4 +-- 3 files changed, 30 insertions(+), 29 deletions(-) diff --git a/arch/m68k/include/asm/mcf_pgalloc.h b/arch/m68k/include/asm/mcf_pgalloc.h index 5c2c0a864524..302c5bf67179 100644 --- a/arch/m68k/include/asm/mcf_pgalloc.h +++ b/arch/m68k/include/asm/mcf_pgalloc.h @@ -5,22 +5,22 @@ #include #include -extern inline void pte_free_kernel(struct mm_struct *mm, pte_t *pte) +static inline void pte_free_kernel(struct mm_struct *mm, pte_t *pte) { - free_page((unsigned long) pte); + pagetable_free(virt_to_ptdesc(pte)); } extern const char bad_pmd_string[]; -extern inline pte_t *pte_alloc_one_kernel(struct mm_struct *mm) +static inline pte_t *pte_alloc_one_kernel(struct mm_struct *mm) { - unsigned long page = __get_free_page(GFP_DMA); + struct ptdesc *ptdesc = pagetable_alloc((GFP_DMA | __GFP_ZERO) & + ~__GFP_HIGHMEM, 0); - if (!page) + if (!ptdesc) return NULL; - memset((void *)page, 0, PAGE_SIZE); - return (pte_t *) (page); + return ptdesc_address(ptdesc); } extern inline pmd_t *pmd_alloc_kernel(pgd_t *pgd, unsigned long address) @@ -35,36 +35,34 @@ extern inline pmd_t *pmd_alloc_kernel(pgd_t *pgd, unsigned long address) static inline void __pte_free_tlb(struct mmu_gather *tlb, pgtable_t pgtable, unsigned long address) { - struct page *page = virt_to_page(pgtable); + struct ptdesc *ptdesc = virt_to_ptdesc(pgtable); - pgtable_pte_page_dtor(page); - __free_page(page); + pagetable_pte_dtor(ptdesc); + pagetable_free(ptdesc); } static inline pgtable_t pte_alloc_one(struct mm_struct *mm) { - struct page *page = alloc_pages(GFP_DMA, 0); + struct ptdesc *ptdesc = pagetable_alloc(GFP_DMA | __GFP_ZERO, 0); pte_t *pte; - if (!page) + if (!ptdesc) return NULL; - if (!pgtable_pte_page_ctor(page)) { - __free_page(page); + if (!pagetable_pte_ctor(ptdesc)) { + pagetable_free(ptdesc); return NULL; } - pte = page_address(page); - clear_page(pte); - + pte = ptdesc_address(ptdesc); return pte; } static inline void pte_free(struct mm_struct *mm, pgtable_t pgtable) { - struct page *page = virt_to_page(pgtable); + struct ptdesc *ptdesc = virt_to_ptdesc(pgtable); - pgtable_pte_page_dtor(page); - __free_page(page); + pagetable_pte_dtor(ptdesc); + pagetable_free(ptdesc); } /* @@ -75,16 +73,19 @@ static inline void pte_free(struct mm_struct *mm, pgtable_t pgtable) static inline void pgd_free(struct mm_struct *mm, pgd_t *pgd) { - free_page((unsigned long) pgd); + pagetable_free(virt_to_ptdesc(pgd)); } static inline pgd_t *pgd_alloc(struct mm_struct *mm) { pgd_t *new_pgd; + struct ptdesc *ptdesc = pagetable_alloc((GFP_DMA | __GFP_NOWARN) & + ~__GFP_HIGHMEM, 0); - new_pgd = (pgd_t *)__get_free_page(GFP_DMA | __GFP_NOWARN); - if (!new_pgd) + if (!ptdesc) return NULL; + new_pgd = ptdesc_address(ptdesc); + memcpy(new_pgd, swapper_pg_dir, PTRS_PER_PGD * sizeof(pgd_t)); memset(new_pgd, 0, PAGE_OFFSET >> PGDIR_SHIFT); return new_pgd; diff --git a/arch/m68k/include/asm/sun3_pgalloc.h b/arch/m68k/include/asm/sun3_pgalloc.h index 198036aff519..ff48573db2c0 100644 --- a/arch/m68k/include/asm/sun3_pgalloc.h +++ b/arch/m68k/include/asm/sun3_pgalloc.h @@ -17,10 +17,10 @@ extern const char bad_pmd_string[]; -#define __pte_free_tlb(tlb,pte,addr) \ -do { \ - pgtable_pte_page_dtor(pte); \ - tlb_remove_page((tlb), pte); \ +#define __pte_free_tlb(tlb, pte, addr) \ +do { \ + pagetable_pte_dtor(page_ptdesc(pte)); \ + tlb_remove_page_ptdesc((tlb), page_ptdesc(pte)); \ } while (0) static inline void pmd_populate_kernel(struct mm_struct *mm, pmd_t *pmd, pte_t *pte) diff --git a/arch/m68k/mm/motorola.c b/arch/m68k/mm/motorola.c index c75984e2d86b..594575a0780c 100644 --- a/arch/m68k/mm/motorola.c +++ b/arch/m68k/mm/motorola.c @@ -161,7 +161,7 @@ void *get_pointer_table(int type) * m68k doesn't have SPLIT_PTE_PTLOCKS for not having * SMP. */ - pgtable_pte_page_ctor(virt_to_page(page)); + pagetable_pte_ctor(virt_to_ptdesc(page)); } mmu_page_ctor(page); @@ -201,7 +201,7 @@ int free_pointer_table(void *table, int type) list_del(dp); mmu_page_dtor((void *)page); if (type == TABLE_PTE) - pgtable_pte_page_dtor(virt_to_page((void *)page)); + pagetable_pte_dtor(virt_to_ptdesc((void *)page)); free_page (page); return 1; } else if (ptable_list[type].next != dp) { -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Tue Jun 27 03:19:30 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 03:19:30 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555734.867798 (Exim 4.92) (envelope-from ) id 1qDzEo-0004Lm-4A; Tue, 27 Jun 2023 03:19:30 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555734.867798; Tue, 27 Jun 2023 03:19:30 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDzEn-0004Jp-SE; Tue, 27 Jun 2023 03:19:29 +0000 Received: by outflank-mailman (input) for mailman id 555734; Tue, 27 Jun 2023 03:19:27 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDzBJ-0003pv-M2 for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 03:15:53 +0000 Received: from mail-yw1-x112b.google.com (mail-yw1-x112b.google.com [2607:f8b0:4864:20::112b]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id e9db63e7-1498-11ee-b237-6b7b168915f2; Tue, 27 Jun 2023 05:15:49 +0200 (CEST) Received: by mail-yw1-x112b.google.com with SMTP id 00721157ae682-5707b429540so62184757b3.1 for ; Mon, 26 Jun 2023 20:15:49 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::16]) by smtp.googlemail.com with ESMTPSA id s4-20020a0dd004000000b0057399b3bd26sm1614798ywd.33.2023.06.26.20.15.45 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 26 Jun 2023 20:15:47 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: e9db63e7-1498-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687835748; x=1690427748; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=jHkn+4hWn6cNWfQmftBQOtWQYQb9iJJIYcRZZNmu6iY=; b=pEoqTDJnBy0mCqMkui4NdE0+Cwn3eLpTYrB/bC5trNXcVXfSLt5Z5R8YIAYFQDP+fU oHaVR+r3yqYLt41ruRoFntv6iwVJI6k1WqPqr0CaczRFTmURyku+1Wh096jhdpaix/Yw TPjMea9fKHZjosCsh+ySOFuhqRhCq2RDcuYke4iWdPlhdEuluthF5cnNEQKZ+c5Hc7fG +fx7g6BPukH/s549n7Tu5GqJ8+5PFdtaVRB8v1bDc72Rwv3o28GHJ8X1zhRwfXU/u/w5 Ysny8z2GqEVJln+w7kgofDjg2/U0lPQrPRqE+xKNvOs2VewEz52G+iOBPJ4WaFg8E+aM IwPQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687835748; x=1690427748; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=jHkn+4hWn6cNWfQmftBQOtWQYQb9iJJIYcRZZNmu6iY=; b=dIkXDJkmpzgPeInItEM5fR0EqLyq9QE7L9ejohxyZ3u/ufKjZqXenAT82IZclieM1+ UU1VqmYTK9RfbuTdOt73LNM138YG6x8+8dMuoXihQDAyHXp+yfcansZDxaT3/2HZKU4o LIuWyvf/+6jF2GGGmMLg0THZRdaxWw/IEd0XzU6J8QJaqKpzWOUK1hjEwFyxhppZ7MaX u+tWkLA20xRfxtYSTOXxwxnHnlfcEVXgh9gK9dDCsi80Xesap8P0esVMnvWnyW8F9J+N Mm5a9mOd1XqtYq/Ie9o238kHlJJJHYKdTaVBNujuW/esMvWxa90ptm4gEu+hsT9abHKP dx7g== X-Gm-Message-State: AC+VfDwOWsGLcHkfgUXle93xBKHvrPEYoaMX7kbiEQN0nNk68u+Osnl/ RSNbkzAQ/XX9TcdLIdNu9Yo= X-Google-Smtp-Source: ACHHUZ6p2ufkJSMv8EFIrIVima6CHOhkXf0TNdBTXqyjA7XsBDI65pfDIOBZhup550aSGjYhkYTA/w== X-Received: by 2002:a0d:d988:0:b0:56c:e260:e2d5 with SMTP id b130-20020a0dd988000000b0056ce260e2d5mr41557377ywe.7.1687835748072; Mon, 26 Jun 2023 20:15:48 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" , Catalin Marinas , Mike Rapoport Subject: [PATCH v6 19/33] arm: Convert various functions to use ptdescs Date: Mon, 26 Jun 2023 20:14:17 -0700 Message-Id: <20230627031431.29653-20-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230627031431.29653-1-vishal.moola@gmail.com> References: <20230627031431.29653-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit As part of the conversions to replace pgtable constructor/destructors with ptdesc equivalents, convert various page table functions to use ptdescs. late_alloc() also uses the __get_free_pages() helper function. Convert this to use pagetable_alloc() and ptdesc_address() instead to help standardize page tables further. Signed-off-by: Vishal Moola (Oracle) Acked-by: Mike Rapoport (IBM) --- arch/arm/include/asm/tlb.h | 12 +++++++----- arch/arm/mm/mmu.c | 7 ++++--- 2 files changed, 11 insertions(+), 8 deletions(-) diff --git a/arch/arm/include/asm/tlb.h b/arch/arm/include/asm/tlb.h index b8cbe03ad260..f40d06ad5d2a 100644 --- a/arch/arm/include/asm/tlb.h +++ b/arch/arm/include/asm/tlb.h @@ -39,7 +39,9 @@ static inline void __tlb_remove_table(void *_table) static inline void __pte_free_tlb(struct mmu_gather *tlb, pgtable_t pte, unsigned long addr) { - pgtable_pte_page_dtor(pte); + struct ptdesc *ptdesc = page_ptdesc(pte); + + pagetable_pte_dtor(ptdesc); #ifndef CONFIG_ARM_LPAE /* @@ -50,17 +52,17 @@ __pte_free_tlb(struct mmu_gather *tlb, pgtable_t pte, unsigned long addr) __tlb_adjust_range(tlb, addr - PAGE_SIZE, 2 * PAGE_SIZE); #endif - tlb_remove_table(tlb, pte); + tlb_remove_ptdesc(tlb, ptdesc); } static inline void __pmd_free_tlb(struct mmu_gather *tlb, pmd_t *pmdp, unsigned long addr) { #ifdef CONFIG_ARM_LPAE - struct page *page = virt_to_page(pmdp); + struct ptdesc *ptdesc = virt_to_ptdesc(pmdp); - pgtable_pmd_page_dtor(page); - tlb_remove_table(tlb, page); + pagetable_pmd_dtor(ptdesc); + tlb_remove_ptdesc(tlb, ptdesc); #endif } diff --git a/arch/arm/mm/mmu.c b/arch/arm/mm/mmu.c index 13fc4bb5f792..fdeaee30d167 100644 --- a/arch/arm/mm/mmu.c +++ b/arch/arm/mm/mmu.c @@ -737,11 +737,12 @@ static void __init *early_alloc(unsigned long sz) static void *__init late_alloc(unsigned long sz) { - void *ptr = (void *)__get_free_pages(GFP_PGTABLE_KERNEL, get_order(sz)); + void *ptdesc = pagetable_alloc(GFP_PGTABLE_KERNEL & ~__GFP_HIGHMEM, + get_order(sz)); - if (!ptr || !pgtable_pte_page_ctor(virt_to_page(ptr))) + if (!ptdesc || !pagetable_pte_ctor(ptdesc)) BUG(); - return ptr; + return ptdesc_to_virt(ptdesc); } static pte_t * __init arm_pte_alloc(pmd_t *pmd, unsigned long addr, -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Tue Jun 27 03:19:31 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 03:19:31 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555736.867806 (Exim 4.92) (envelope-from ) id 1qDzEp-0004YZ-1o; Tue, 27 Jun 2023 03:19:31 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555736.867806; Tue, 27 Jun 2023 03:19:30 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDzEo-0004W9-Km; Tue, 27 Jun 2023 03:19:30 +0000 Received: by outflank-mailman (input) for mailman id 555736; Tue, 27 Jun 2023 03:19:27 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDzBP-0003pv-NJ for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 03:15:59 +0000 Received: from mail-yw1-x112f.google.com (mail-yw1-x112f.google.com [2607:f8b0:4864:20::112f]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id eed4aa06-1498-11ee-b237-6b7b168915f2; Tue, 27 Jun 2023 05:15:57 +0200 (CEST) Received: by mail-yw1-x112f.google.com with SMTP id 00721157ae682-56fff21c2ebso42599627b3.3 for ; Mon, 26 Jun 2023 20:15:57 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::16]) by smtp.googlemail.com with ESMTPSA id s4-20020a0dd004000000b0057399b3bd26sm1614798ywd.33.2023.06.26.20.15.54 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 26 Jun 2023 20:15:56 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: eed4aa06-1498-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687835756; x=1690427756; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=pBiyp2dfMpzV+NvCt1JbKOh6Ic1GEYp83948mVxRzoc=; b=lEtqmrwI3pH1F9NhuLSu+lhrJuJBeaNoc0B/a+jtRpylRNiz6lnVYqwXFylSaxIlSS fal5MuqlLO46M8tgspmd3hSeZZQkHzVCiF/enKflZ1M3hEbA15QMn0yHyWiDxK+YUgaZ GWFcNw4Uez0C21+p6DRUZFT6brtk9p0VoxgHF26jewVOVnyhkSQ3DRQfrpXYXTkzJvdt UKT9r8byFkYtRNMun/mKCKgBDEtBv/scAQyWpgjFy69JlQUU0QN5ljLcHnq80rGO/875 /+CaEkKEPeM1zZ6Ui2wCINBbaXnsdbhwpMR3GV5pLj1s7PximB5Gycu9naEXtrlwl71V d+Sw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687835756; x=1690427756; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=pBiyp2dfMpzV+NvCt1JbKOh6Ic1GEYp83948mVxRzoc=; b=lURPPtEtxMdHA3IsIToR6u7370fQEfvAgflyWzEq+pzitwdCcZSqFEA713NSQBxD1M DV6mWj890dA1smBmPGz+pza1FMgw14F+nYpSDjF3Wez4aBe95374bc1HGgpnJnAaizyy uOhZBOUfMZJCHqtWKdiH1udZvGy566ll8wb4XT+3wJA5H8n7o9nPTgoDCCxTyCO9ZrBW G0n4VuGLP5u/goSSK43HJORcSdfpIRuE2lzhcK/FYlQGCe7C9nf0wb8YnliZ6vwxfITW IZgcFgC5dxNBQv180O0xATZ/BMPZg5HUIAnhn0LoPRUatwvTkwg5y6mZeONr4pQ0m5iM rX/A== X-Gm-Message-State: AC+VfDyTZ0wJmrVsC6uxvnNsfIPa79Vx2qXaYcYkOX6/iNEXVWWzuMTd z8viAEEyVJ8O8yylYqXKQCU= X-Google-Smtp-Source: ACHHUZ6AsPEMPaYNwMvJ9C/uUytKifTWfNOxJlUh8Y26CFwkBAjPl8zEubY5Kzi6Ted2kFoKwje9oQ== X-Received: by 2002:a0d:e24c:0:b0:56c:fc62:a5a2 with SMTP id l73-20020a0de24c000000b0056cfc62a5a2mr32690358ywe.7.1687835756402; Mon, 26 Jun 2023 20:15:56 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" , Huacai Chen , Mike Rapoport Subject: [PATCH v6 23/33] loongarch: Convert various functions to use ptdescs Date: Mon, 26 Jun 2023 20:14:21 -0700 Message-Id: <20230627031431.29653-24-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230627031431.29653-1-vishal.moola@gmail.com> References: <20230627031431.29653-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit As part of the conversions to replace pgtable constructor/destructors with ptdesc equivalents, convert various page table functions to use ptdescs. Some of the functions use the *get*page*() helper functions. Convert these to use pagetable_alloc() and ptdesc_address() instead to help standardize page tables further. Signed-off-by: Vishal Moola (Oracle) Acked-by: Mike Rapoport (IBM) --- arch/loongarch/include/asm/pgalloc.h | 27 +++++++++++++++------------ arch/loongarch/mm/pgtable.c | 7 ++++--- 2 files changed, 19 insertions(+), 15 deletions(-) diff --git a/arch/loongarch/include/asm/pgalloc.h b/arch/loongarch/include/asm/pgalloc.h index af1d1e4a6965..23f5b1107246 100644 --- a/arch/loongarch/include/asm/pgalloc.h +++ b/arch/loongarch/include/asm/pgalloc.h @@ -45,9 +45,9 @@ extern void pagetable_init(void); extern pgd_t *pgd_alloc(struct mm_struct *mm); #define __pte_free_tlb(tlb, pte, address) \ -do { \ - pgtable_pte_page_dtor(pte); \ - tlb_remove_page((tlb), pte); \ +do { \ + pagetable_pte_dtor(page_ptdesc(pte)); \ + tlb_remove_page_ptdesc((tlb), page_ptdesc(pte)); \ } while (0) #ifndef __PAGETABLE_PMD_FOLDED @@ -55,18 +55,18 @@ do { \ static inline pmd_t *pmd_alloc_one(struct mm_struct *mm, unsigned long address) { pmd_t *pmd; - struct page *pg; + struct ptdesc *ptdesc; - pg = alloc_page(GFP_KERNEL_ACCOUNT); - if (!pg) + ptdesc = pagetable_alloc(GFP_KERNEL_ACCOUNT, 0); + if (!ptdesc) return NULL; - if (!pgtable_pmd_page_ctor(pg)) { - __free_page(pg); + if (!pagetable_pmd_ctor(ptdesc)) { + pagetable_free(ptdesc); return NULL; } - pmd = (pmd_t *)page_address(pg); + pmd = ptdesc_address(ptdesc); pmd_init(pmd); return pmd; } @@ -80,10 +80,13 @@ static inline pmd_t *pmd_alloc_one(struct mm_struct *mm, unsigned long address) static inline pud_t *pud_alloc_one(struct mm_struct *mm, unsigned long address) { pud_t *pud; + struct ptdesc *ptdesc = pagetable_alloc(GFP_KERNEL & ~__GFP_HIGHMEM, 0); - pud = (pud_t *) __get_free_page(GFP_KERNEL); - if (pud) - pud_init(pud); + if (!ptdesc) + return NULL; + pud = ptdesc_address(ptdesc); + + pud_init(pud); return pud; } diff --git a/arch/loongarch/mm/pgtable.c b/arch/loongarch/mm/pgtable.c index 36a6dc0148ae..5bd102b51f7c 100644 --- a/arch/loongarch/mm/pgtable.c +++ b/arch/loongarch/mm/pgtable.c @@ -11,10 +11,11 @@ pgd_t *pgd_alloc(struct mm_struct *mm) { - pgd_t *ret, *init; + pgd_t *init, *ret = NULL; + struct ptdesc *ptdesc = pagetable_alloc(GFP_KERNEL & ~__GFP_HIGHMEM, 0); - ret = (pgd_t *) __get_free_page(GFP_KERNEL); - if (ret) { + if (ptdesc) { + ret = (pgd_t *)ptdesc_address(ptdesc); init = pgd_offset(&init_mm, 0UL); pgd_init(ret); memcpy(ret + USER_PTRS_PER_PGD, init + USER_PTRS_PER_PGD, -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Tue Jun 27 03:19:31 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 03:19:31 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555738.867811 (Exim 4.92) (envelope-from ) id 1qDzEp-0004gt-Hj; Tue, 27 Jun 2023 03:19:31 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555738.867811; Tue, 27 Jun 2023 03:19:31 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDzEp-0004cv-6C; Tue, 27 Jun 2023 03:19:31 +0000 Received: by outflank-mailman (input) for mailman id 555738; Tue, 27 Jun 2023 03:19:28 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDzBG-0003pv-LS for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 03:15:50 +0000 Received: from mail-yw1-x1129.google.com (mail-yw1-x1129.google.com [2607:f8b0:4864:20::1129]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id e879bc77-1498-11ee-b237-6b7b168915f2; Tue, 27 Jun 2023 05:15:46 +0200 (CEST) Received: by mail-yw1-x1129.google.com with SMTP id 00721157ae682-5707b429540so62184457b3.1 for ; Mon, 26 Jun 2023 20:15:46 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::16]) by smtp.googlemail.com with ESMTPSA id s4-20020a0dd004000000b0057399b3bd26sm1614798ywd.33.2023.06.26.20.15.43 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 26 Jun 2023 20:15:45 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: e879bc77-1498-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687835746; x=1690427746; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=bBkB4loM/Mt006iaxsYk7j8UnaAx8a9/NTd5FkPootg=; b=H1qFd5ryATtw8t405nCe3wIlgG+rX1BXYLLKuv1YpYWhPdhPiNJLVH72Jw72yhkr/h 3iJdbhNcvDeJj1R/7QZzbVvdYp8+Ef/D3y8M93HMkREuKVm52xA1EryWULik3f4dSL7k 14E+NJ36RkQ5e6TdqjWSx7Fc6bbQU9Nra+93+Jt2nhawSIssAg+z8tZmqu6fpDttBNOM ca/S4ptlU/TspyqfylxkdmdBeNsH9f2Hrm83Obo7DrdaBuxczqOW9lHL1iMbAqq171gX B7pt5M7+TmTNcw4OD4CiyQ2ipIhxzKH/nEdZ2UyNN8D+QQdMlcx6LBXeqPnQpiIanV21 tW0A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687835746; x=1690427746; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=bBkB4loM/Mt006iaxsYk7j8UnaAx8a9/NTd5FkPootg=; b=ZyBnuUAlgR/kMO0/xDGPl8gBOU4h2jmt79KG5JMlasr0FycNwrcz2MJ74o5Gvdiv3y +4tp71yw8pSfyZevBDt/0bze+UswiWR1uvn4foKIRBwP2I/f8p+xfkxkF7eVN0d/o1nU DFROd6R7mr8EpAO/pDP+SZRqLhNZuVvpKJuQPXZQMoNB+YYs4LdUFwSIlVPtCrFioCKK uaNtiTsZkYLulFdm+6RpJ0r1r1XaZO53q+eEOlq6t3MIegn2+MefIWGvoagM6kGXvrTy eMY57+JploxQUcxG+h0qVy/gJnZ+uyfDz/GvD3lyT9VYZjP3w6hNv4gRwiY2MAr7AExl Jgag== X-Gm-Message-State: AC+VfDzTz2AW9g7m5RKHnijwS6F8kFtqafun3p11uT7HCRhlQp5vcre6 ut2INnXpOf2m8K+3WWPUmuo= X-Google-Smtp-Source: ACHHUZ6u2uv6uT2cSLb5CcuORgExO8yy2prZOQQwKiPsRPUBkVmf/UzBxwtB6MEmnnGsXK2WOg9dTA== X-Received: by 2002:a0d:ea81:0:b0:565:b76d:82c8 with SMTP id t123-20020a0dea81000000b00565b76d82c8mr32046751ywe.5.1687835745750; Mon, 26 Jun 2023 20:15:45 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" Subject: [PATCH v6 18/33] pgalloc: Convert various functions to use ptdescs Date: Mon, 26 Jun 2023 20:14:16 -0700 Message-Id: <20230627031431.29653-19-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230627031431.29653-1-vishal.moola@gmail.com> References: <20230627031431.29653-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit As part of the conversions to replace pgtable constructor/destructors with ptdesc equivalents, convert various page table functions to use ptdescs. Some of the functions use the *get*page*() helper functions. Convert these to use pagetable_alloc() and ptdesc_address() instead to help standardize page tables further. Signed-off-by: Vishal Moola (Oracle) --- include/asm-generic/pgalloc.h | 88 +++++++++++++++++++++-------------- 1 file changed, 52 insertions(+), 36 deletions(-) diff --git a/include/asm-generic/pgalloc.h b/include/asm-generic/pgalloc.h index a7cf825befae..c75d4a753849 100644 --- a/include/asm-generic/pgalloc.h +++ b/include/asm-generic/pgalloc.h @@ -8,7 +8,7 @@ #define GFP_PGTABLE_USER (GFP_PGTABLE_KERNEL | __GFP_ACCOUNT) /** - * __pte_alloc_one_kernel - allocate a page for PTE-level kernel page table + * __pte_alloc_one_kernel - allocate memory for a PTE-level kernel page table * @mm: the mm_struct of the current context * * This function is intended for architectures that need @@ -18,12 +18,17 @@ */ static inline pte_t *__pte_alloc_one_kernel(struct mm_struct *mm) { - return (pte_t *)__get_free_page(GFP_PGTABLE_KERNEL); + struct ptdesc *ptdesc = pagetable_alloc(GFP_PGTABLE_KERNEL & + ~__GFP_HIGHMEM, 0); + + if (!ptdesc) + return NULL; + return ptdesc_address(ptdesc); } #ifndef __HAVE_ARCH_PTE_ALLOC_ONE_KERNEL /** - * pte_alloc_one_kernel - allocate a page for PTE-level kernel page table + * pte_alloc_one_kernel - allocate memory for a PTE-level kernel page table * @mm: the mm_struct of the current context * * Return: pointer to the allocated memory or %NULL on error @@ -35,40 +40,40 @@ static inline pte_t *pte_alloc_one_kernel(struct mm_struct *mm) #endif /** - * pte_free_kernel - free PTE-level kernel page table page + * pte_free_kernel - free PTE-level kernel page table memory * @mm: the mm_struct of the current context * @pte: pointer to the memory containing the page table */ static inline void pte_free_kernel(struct mm_struct *mm, pte_t *pte) { - free_page((unsigned long)pte); + pagetable_free(virt_to_ptdesc(pte)); } /** - * __pte_alloc_one - allocate a page for PTE-level user page table + * __pte_alloc_one - allocate memory for a PTE-level user page table * @mm: the mm_struct of the current context * @gfp: GFP flags to use for the allocation * - * Allocates a page and runs the pgtable_pte_page_ctor(). + * Allocate memory for a page table and ptdesc and runs pagetable_pte_ctor(). * * This function is intended for architectures that need * anything beyond simple page allocation or must have custom GFP flags. * - * Return: `struct page` initialized as page table or %NULL on error + * Return: `struct page` referencing the ptdesc or %NULL on error */ static inline pgtable_t __pte_alloc_one(struct mm_struct *mm, gfp_t gfp) { - struct page *pte; + struct ptdesc *ptdesc; - pte = alloc_page(gfp); - if (!pte) + ptdesc = pagetable_alloc(gfp, 0); + if (!ptdesc) return NULL; - if (!pgtable_pte_page_ctor(pte)) { - __free_page(pte); + if (!pagetable_pte_ctor(ptdesc)) { + pagetable_free(ptdesc); return NULL; } - return pte; + return ptdesc_page(ptdesc); } #ifndef __HAVE_ARCH_PTE_ALLOC_ONE @@ -76,9 +81,9 @@ static inline pgtable_t __pte_alloc_one(struct mm_struct *mm, gfp_t gfp) * pte_alloc_one - allocate a page for PTE-level user page table * @mm: the mm_struct of the current context * - * Allocates a page and runs the pgtable_pte_page_ctor(). + * Allocate memory for a page table and ptdesc and runs pagetable_pte_ctor(). * - * Return: `struct page` initialized as page table or %NULL on error + * Return: `struct page` referencing the ptdesc or %NULL on error */ static inline pgtable_t pte_alloc_one(struct mm_struct *mm) { @@ -92,14 +97,16 @@ static inline pgtable_t pte_alloc_one(struct mm_struct *mm) */ /** - * pte_free - free PTE-level user page table page + * pte_free - free PTE-level user page table memory * @mm: the mm_struct of the current context - * @pte_page: the `struct page` representing the page table + * @pte_page: the `struct page` referencing the ptdesc */ static inline void pte_free(struct mm_struct *mm, struct page *pte_page) { - pgtable_pte_page_dtor(pte_page); - __free_page(pte_page); + struct ptdesc *ptdesc = page_ptdesc(pte_page); + + pagetable_pte_dtor(ptdesc); + pagetable_free(ptdesc); } @@ -107,10 +114,11 @@ static inline void pte_free(struct mm_struct *mm, struct page *pte_page) #ifndef __HAVE_ARCH_PMD_ALLOC_ONE /** - * pmd_alloc_one - allocate a page for PMD-level page table + * pmd_alloc_one - allocate memory for a PMD-level page table * @mm: the mm_struct of the current context * - * Allocates a page and runs the pgtable_pmd_page_ctor(). + * Allocate memory for a page table and ptdesc and runs pagetable_pmd_ctor(). + * * Allocations use %GFP_PGTABLE_USER in user context and * %GFP_PGTABLE_KERNEL in kernel context. * @@ -118,28 +126,30 @@ static inline void pte_free(struct mm_struct *mm, struct page *pte_page) */ static inline pmd_t *pmd_alloc_one(struct mm_struct *mm, unsigned long addr) { - struct page *page; + struct ptdesc *ptdesc; gfp_t gfp = GFP_PGTABLE_USER; if (mm == &init_mm) gfp = GFP_PGTABLE_KERNEL; - page = alloc_page(gfp); - if (!page) + ptdesc = pagetable_alloc(gfp, 0); + if (!ptdesc) return NULL; - if (!pgtable_pmd_page_ctor(page)) { - __free_page(page); + if (!pagetable_pmd_ctor(ptdesc)) { + pagetable_free(ptdesc); return NULL; } - return (pmd_t *)page_address(page); + return ptdesc_address(ptdesc); } #endif #ifndef __HAVE_ARCH_PMD_FREE static inline void pmd_free(struct mm_struct *mm, pmd_t *pmd) { + struct ptdesc *ptdesc = virt_to_ptdesc(pmd); + BUG_ON((unsigned long)pmd & (PAGE_SIZE-1)); - pgtable_pmd_page_dtor(virt_to_page(pmd)); - free_page((unsigned long)pmd); + pagetable_pmd_dtor(ptdesc); + pagetable_free(ptdesc); } #endif @@ -150,19 +160,25 @@ static inline void pmd_free(struct mm_struct *mm, pmd_t *pmd) static inline pud_t *__pud_alloc_one(struct mm_struct *mm, unsigned long addr) { gfp_t gfp = GFP_PGTABLE_USER; + struct ptdesc *ptdesc; if (mm == &init_mm) gfp = GFP_PGTABLE_KERNEL; - return (pud_t *)get_zeroed_page(gfp); + gfp &= ~__GFP_HIGHMEM; + + ptdesc = pagetable_alloc(gfp, 0); + if (!ptdesc) + return NULL; + return ptdesc_address(ptdesc); } #ifndef __HAVE_ARCH_PUD_ALLOC_ONE /** - * pud_alloc_one - allocate a page for PUD-level page table + * pud_alloc_one - allocate memory for a PUD-level page table * @mm: the mm_struct of the current context * - * Allocates a page using %GFP_PGTABLE_USER for user context and - * %GFP_PGTABLE_KERNEL for kernel context. + * Allocate memory for a page table using %GFP_PGTABLE_USER for user context + * and %GFP_PGTABLE_KERNEL for kernel context. * * Return: pointer to the allocated memory or %NULL on error */ @@ -175,7 +191,7 @@ static inline pud_t *pud_alloc_one(struct mm_struct *mm, unsigned long addr) static inline void __pud_free(struct mm_struct *mm, pud_t *pud) { BUG_ON((unsigned long)pud & (PAGE_SIZE-1)); - free_page((unsigned long)pud); + pagetable_free(virt_to_ptdesc(pud)); } #ifndef __HAVE_ARCH_PUD_FREE @@ -190,7 +206,7 @@ static inline void pud_free(struct mm_struct *mm, pud_t *pud) #ifndef __HAVE_ARCH_PGD_FREE static inline void pgd_free(struct mm_struct *mm, pgd_t *pgd) { - free_page((unsigned long)pgd); + pagetable_free(virt_to_ptdesc(pgd)); } #endif -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Tue Jun 27 03:19:32 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 03:19:32 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555740.867822 (Exim 4.92) (envelope-from ) id 1qDzEq-0004xg-LN; Tue, 27 Jun 2023 03:19:32 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555740.867822; Tue, 27 Jun 2023 03:19:32 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDzEq-0004u8-5s; Tue, 27 Jun 2023 03:19:32 +0000 Received: by outflank-mailman (input) for mailman id 555740; Tue, 27 Jun 2023 03:19:28 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDzBN-0003pv-N4 for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 03:15:57 +0000 Received: from mail-yw1-x1131.google.com (mail-yw1-x1131.google.com [2607:f8b0:4864:20::1131]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id eda6bebc-1498-11ee-b237-6b7b168915f2; Tue, 27 Jun 2023 05:15:55 +0200 (CEST) Received: by mail-yw1-x1131.google.com with SMTP id 00721157ae682-570284c7e61so43272317b3.1 for ; Mon, 26 Jun 2023 20:15:55 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::16]) by smtp.googlemail.com with ESMTPSA id s4-20020a0dd004000000b0057399b3bd26sm1614798ywd.33.2023.06.26.20.15.52 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 26 Jun 2023 20:15:54 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: eda6bebc-1498-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687835754; x=1690427754; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=aUnc1suNAj/KzreaB6s7vAsOWiJZx3FNBLzDbQjj/SU=; b=m20u0ufiAKGaCJ1eF+oXsWKBIRL5JTjyvtae8lqFZvtXfIrM7cJtjjAu/m4Uz73Z8l 2OzyWyLCkpN3ueHXh3OYTXgBp8fMDOqyT852NuEeBcWkgEMJmVKnx3KmXsByRx3AKFHF Vg5wuji9LMQRgJRH1HqmX3jxPY497r0xZlE76FEouiAeDZpP9QjhFrAgiTXpIz8r0/Pn raAur9OcS2AWjvRxW5kW7BBQEK8M8XOe3JN2fYON+zb1b/iUEGPKmhswAXipr/RMjiJ1 5Ou/YPdkNRNCdvvgrCiDyHNc6JnGXPl8TTudPcGz7r3XrC0of8M4idYi+6qLUVc137gj TxEA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687835754; x=1690427754; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=aUnc1suNAj/KzreaB6s7vAsOWiJZx3FNBLzDbQjj/SU=; b=aj9eE6HgaouSdVybo7a5ysz3c0/+UJaGUv6hs/+coQGyN29B97vw/GnKYrHHGb1MQh 0vN6H89434zv6EwnZl9wOQKkr/qDYmLaq++KPyuUJjkALvsD31PPI7XL0TyZCtuzE2FJ x+huNGYe9SM7nvMdp6y4uZAZtqAPA4NkfsKbfKnUAlv9BZO6YSYbxFCY8yTY2V7P5OMq P/Q+0xKkRkO02+t5f2zCTNZXZTsvkJ0xJNavxsBtAA1EkWciRVWSz8K0gDR3lMpR+Blk u7xwmzJTvyR/OSNbjqS38WX/FM7hSZN2Eazo85lFR90SaEB8zBu1EwS0MlFWD1Wyp8Lt hgpQ== X-Gm-Message-State: AC+VfDxc6iTjuto8kea8a4fcbTrXwcy+nefmbNHuqs+jiOpG2H8oM9lI p16oY9mZkCXCBf3V2E/7RSk= X-Google-Smtp-Source: ACHHUZ5MOzNqvj1LDJTcnkC+L2S0i67qvPaFwWjlYeZ+6A+ljBIE978bk3O2AZxZRJ0D8kmPxN2z/Q== X-Received: by 2002:a81:7189:0:b0:56f:ecdd:ded7 with SMTP id m131-20020a817189000000b0056fecddded7mr30983642ywc.10.1687835754377; Mon, 26 Jun 2023 20:15:54 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" , Mike Rapoport Subject: [PATCH v6 22/33] hexagon: Convert __pte_free_tlb() to use ptdescs Date: Mon, 26 Jun 2023 20:14:20 -0700 Message-Id: <20230627031431.29653-23-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230627031431.29653-1-vishal.moola@gmail.com> References: <20230627031431.29653-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Part of the conversions to replace pgtable constructor/destructors with ptdesc equivalents. Signed-off-by: Vishal Moola (Oracle) Acked-by: Mike Rapoport (IBM) --- arch/hexagon/include/asm/pgalloc.h | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/arch/hexagon/include/asm/pgalloc.h b/arch/hexagon/include/asm/pgalloc.h index f0c47e6a7427..55988625e6fb 100644 --- a/arch/hexagon/include/asm/pgalloc.h +++ b/arch/hexagon/include/asm/pgalloc.h @@ -87,10 +87,10 @@ static inline void pmd_populate_kernel(struct mm_struct *mm, pmd_t *pmd, max_kernel_seg = pmdindex; } -#define __pte_free_tlb(tlb, pte, addr) \ -do { \ - pgtable_pte_page_dtor((pte)); \ - tlb_remove_page((tlb), (pte)); \ +#define __pte_free_tlb(tlb, pte, addr) \ +do { \ + pagetable_pte_dtor((page_ptdesc(pte))); \ + tlb_remove_page_ptdesc((tlb), (page_ptdesc(pte))); \ } while (0) #endif -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Tue Jun 27 03:19:33 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 03:19:33 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555742.867826 (Exim 4.92) (envelope-from ) id 1qDzEr-00058x-Cv; Tue, 27 Jun 2023 03:19:33 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555742.867826; Tue, 27 Jun 2023 03:19:33 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDzEq-00055e-Sk; Tue, 27 Jun 2023 03:19:32 +0000 Received: by outflank-mailman (input) for mailman id 555742; Tue, 27 Jun 2023 03:19:29 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDzB6-0003uL-2r for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 03:15:40 +0000 Received: from mail-yw1-x1131.google.com (mail-yw1-x1131.google.com [2607:f8b0:4864:20::1131]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id e34dbb47-1498-11ee-8611-37d641c3527e; Tue, 27 Jun 2023 05:15:38 +0200 (CEST) Received: by mail-yw1-x1131.google.com with SMTP id 00721157ae682-57026f4bccaso42388877b3.2 for ; Mon, 26 Jun 2023 20:15:38 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::16]) by smtp.googlemail.com with ESMTPSA id s4-20020a0dd004000000b0057399b3bd26sm1614798ywd.33.2023.06.26.20.15.35 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 26 Jun 2023 20:15:36 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: e34dbb47-1498-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687835737; x=1690427737; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=sltDOqqNfHEtvz8jLXUjW/r74sJCuRKUMVTEbSHBWCo=; b=QrI1aOGwmRyx1aG/1jUWgOOlctjtzMuSnwhAF489vBWlZq/T3WvrQqLmr1ZsHa3z9f KMuR8bUnQVshf/a2XJDnp4tBiTRfYlQJkd76z10JNyfa2AKxYm8pQZSInnTFwDV0P9Qn 6Ey5MjY+vGUMOaBE0CtREaS5w9oSlx1P3EZIsa6ss9NVkfJ+VRZ8LRFwypU6kVxWJIuF J8TvqLduMYlxzEPQNlBqIgKNLnzpQj5acaQr/A3KnaUPK86vURXRnYY+Ty7Rf6Hk2iF8 qfuryvFc/G562SwsCPua2Ciim8h2kDAtybagPQ8pIMgfSUCuDCG9cQelahJlIzPK0uv7 jK8A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687835737; x=1690427737; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=sltDOqqNfHEtvz8jLXUjW/r74sJCuRKUMVTEbSHBWCo=; b=Uw3qFIxvLWGASaroXNnPuMs/eB+0lIGOhoA6vvjsKIHYXKcpOCmwjqIGnUCyOy+Af2 uJPybH9XyZICmbVtwbEUv5M/4ccsM0IHwx55+eYSYaC0eBaU9Bry8r4HNf42ZxV31Ao/ 2L/m6GFOjZjwtEvGEpRQQi3AIpolOS1KA0YQ+DFQzTyg4e+DWz1ltsYlHQVQ+Pua8GoK UCB7okLjTnmC+8ScnX31WYdxxzMjt2QZhGqvc7BMF2c2YJpZJnFPlZvoBcu0dtR0J4xV JXqTfK7QjFlf9v+rwnfxATRfVL/b6NZ7q735q1tZxxtKcn0gH/A4+1PYEn8BCIH87OSw LQcw== X-Gm-Message-State: AC+VfDx9NpFs+fcIT3p2giF5QpcGHCLJpSgeP21YFm4xTCQHDoKBsW+G hwiEJKP6PyyogwFetjfNHcg= X-Google-Smtp-Source: ACHHUZ4JE7nBItej+vq0Vl4Eri4cTOSZA2h3Tcd4FX2deMd/F+CeONudm5Ey9sNjlWrn9sHNr8vp1Q== X-Received: by 2002:a0d:c001:0:b0:570:6d74:21d5 with SMTP id b1-20020a0dc001000000b005706d7421d5mr30801318ywd.13.1687835737124; Mon, 26 Jun 2023 20:15:37 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" , Dave Hansen Subject: [PATCH v6 14/33] x86: Convert various functions to use ptdescs Date: Mon, 26 Jun 2023 20:14:12 -0700 Message-Id: <20230627031431.29653-15-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230627031431.29653-1-vishal.moola@gmail.com> References: <20230627031431.29653-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit In order to split struct ptdesc from struct page, convert various functions to use ptdescs. Some of the functions use the *get*page*() helper functions. Convert these to use pagetable_alloc() and ptdesc_address() instead to help standardize page tables further. Signed-off-by: Vishal Moola (Oracle) --- arch/x86/mm/pgtable.c | 47 ++++++++++++++++++++++++++----------------- 1 file changed, 28 insertions(+), 19 deletions(-) diff --git a/arch/x86/mm/pgtable.c b/arch/x86/mm/pgtable.c index 15a8009a4480..d3a93e8766ee 100644 --- a/arch/x86/mm/pgtable.c +++ b/arch/x86/mm/pgtable.c @@ -52,7 +52,7 @@ early_param("userpte", setup_userpte); void ___pte_free_tlb(struct mmu_gather *tlb, struct page *pte) { - pgtable_pte_page_dtor(pte); + pagetable_pte_dtor(page_ptdesc(pte)); paravirt_release_pte(page_to_pfn(pte)); paravirt_tlb_remove_table(tlb, pte); } @@ -60,7 +60,7 @@ void ___pte_free_tlb(struct mmu_gather *tlb, struct page *pte) #if CONFIG_PGTABLE_LEVELS > 2 void ___pmd_free_tlb(struct mmu_gather *tlb, pmd_t *pmd) { - struct page *page = virt_to_page(pmd); + struct ptdesc *ptdesc = virt_to_ptdesc(pmd); paravirt_release_pmd(__pa(pmd) >> PAGE_SHIFT); /* * NOTE! For PAE, any changes to the top page-directory-pointer-table @@ -69,8 +69,8 @@ void ___pmd_free_tlb(struct mmu_gather *tlb, pmd_t *pmd) #ifdef CONFIG_X86_PAE tlb->need_flush_all = 1; #endif - pgtable_pmd_page_dtor(page); - paravirt_tlb_remove_table(tlb, page); + pagetable_pmd_dtor(ptdesc); + paravirt_tlb_remove_table(tlb, ptdesc_page(ptdesc)); } #if CONFIG_PGTABLE_LEVELS > 3 @@ -92,16 +92,16 @@ void ___p4d_free_tlb(struct mmu_gather *tlb, p4d_t *p4d) static inline void pgd_list_add(pgd_t *pgd) { - struct page *page = virt_to_page(pgd); + struct ptdesc *ptdesc = virt_to_ptdesc(pgd); - list_add(&page->lru, &pgd_list); + list_add(&ptdesc->pt_list, &pgd_list); } static inline void pgd_list_del(pgd_t *pgd) { - struct page *page = virt_to_page(pgd); + struct ptdesc *ptdesc = virt_to_ptdesc(pgd); - list_del(&page->lru); + list_del(&ptdesc->pt_list); } #define UNSHARED_PTRS_PER_PGD \ @@ -112,12 +112,12 @@ static inline void pgd_list_del(pgd_t *pgd) static void pgd_set_mm(pgd_t *pgd, struct mm_struct *mm) { - virt_to_page(pgd)->pt_mm = mm; + virt_to_ptdesc(pgd)->pt_mm = mm; } struct mm_struct *pgd_page_get_mm(struct page *page) { - return page->pt_mm; + return page_ptdesc(page)->pt_mm; } static void pgd_ctor(struct mm_struct *mm, pgd_t *pgd) @@ -213,11 +213,14 @@ void pud_populate(struct mm_struct *mm, pud_t *pudp, pmd_t *pmd) static void free_pmds(struct mm_struct *mm, pmd_t *pmds[], int count) { int i; + struct ptdesc *ptdesc; for (i = 0; i < count; i++) if (pmds[i]) { - pgtable_pmd_page_dtor(virt_to_page(pmds[i])); - free_page((unsigned long)pmds[i]); + ptdesc = virt_to_ptdesc(pmds[i]); + + pagetable_pmd_dtor(ptdesc); + pagetable_free(ptdesc); mm_dec_nr_pmds(mm); } } @@ -230,18 +233,24 @@ static int preallocate_pmds(struct mm_struct *mm, pmd_t *pmds[], int count) if (mm == &init_mm) gfp &= ~__GFP_ACCOUNT; + gfp &= ~__GFP_HIGHMEM; for (i = 0; i < count; i++) { - pmd_t *pmd = (pmd_t *)__get_free_page(gfp); - if (!pmd) + pmd_t *pmd = NULL; + struct ptdesc *ptdesc = pagetable_alloc(gfp, 0); + + if (!ptdesc) failed = true; - if (pmd && !pgtable_pmd_page_ctor(virt_to_page(pmd))) { - free_page((unsigned long)pmd); - pmd = NULL; + if (ptdesc && !pagetable_pmd_ctor(ptdesc)) { + pagetable_free(ptdesc); + ptdesc = NULL; failed = true; } - if (pmd) + if (ptdesc) { mm_inc_nr_pmds(mm); + pmd = ptdesc_address(ptdesc); + } + pmds[i] = pmd; } @@ -830,7 +839,7 @@ int pud_free_pmd_page(pud_t *pud, unsigned long addr) free_page((unsigned long)pmd_sv); - pgtable_pmd_page_dtor(virt_to_page(pmd)); + pagetable_pmd_dtor(virt_to_ptdesc(pmd)); free_page((unsigned long)pmd); return 1; -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Tue Jun 27 03:19:34 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 03:19:34 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555743.867835 (Exim 4.92) (envelope-from ) id 1qDzEs-0005M2-7b; Tue, 27 Jun 2023 03:19:34 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555743.867835; Tue, 27 Jun 2023 03:19:34 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDzEr-0005Hg-Ry; Tue, 27 Jun 2023 03:19:33 +0000 Received: by outflank-mailman (input) for mailman id 555743; Tue, 27 Jun 2023 03:19:29 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDzBc-0003uL-1a for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 03:16:12 +0000 Received: from mail-yw1-x1135.google.com (mail-yw1-x1135.google.com [2607:f8b0:4864:20::1135]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id f6612b94-1498-11ee-8611-37d641c3527e; Tue, 27 Jun 2023 05:16:10 +0200 (CEST) Received: by mail-yw1-x1135.google.com with SMTP id 00721157ae682-5701eaf0d04so39993357b3.2 for ; Mon, 26 Jun 2023 20:16:10 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::16]) by smtp.googlemail.com with ESMTPSA id s4-20020a0dd004000000b0057399b3bd26sm1614798ywd.33.2023.06.26.20.16.07 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 26 Jun 2023 20:16:08 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: f6612b94-1498-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687835769; x=1690427769; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=NG13BwzmmAIpXpcduEwvRHFbS3iQhU18W2JpKLteVDY=; b=eyYuDUlXPMdgLVymoCPm6l0B5AkMkP0MJVgww2Dc7/3sqQmnGU1ku6H9CU98Kx8HDx 01E8lwPN+qvwNuBvO2TKM7cIgKQ3CJY1x5BttlhhMCAu/eXz9REbxcYgAP/6CQkWy6Cf lQ90mc5ZocMFbyDKOmgQ6JtaRafPtmT5vpmCcu1CHVchruI6mMlKmB0nAjhundO2FScF dwi9LCyq+7qGXz1usN+jVcsXjJuTQQ04p4sKanEFFQJoYolDJUzZRawaXCZwSYL33znl 4r4UGf7Bdp39+qapNSstfbw+OcAirA3yy9mzGZ+ruj3Aqj6H943hd4iO/NnOtCq31XtZ 136A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687835769; x=1690427769; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=NG13BwzmmAIpXpcduEwvRHFbS3iQhU18W2JpKLteVDY=; b=ZuqM4JJOqjQ1K40XPVYQtXb3N3J7KyccxWheoN6swfUeEKx1x/G3RHdUmSz2U0mAsV Vc7cRRqVD4rr4VzdgcY9s+Hh3TREGwWJjHIy/4JRJEpk6++45HhNVLxkbW93Q4giBbdN 7p4iSNUQSPMTk66xt3KX9fx1/nRme7SvJrrgxeV/PZxz0ac0emnRyoLUoE60DvaIfCIW /EeFFPKI5cgv8mbuSDEECJ/h/IqU3BOJmlalovX0Pz2edg9msa9YHShoZRhLVwdv3aJ3 q1fv5Pf576RZQpoRSZHK0IMHww4hpwD/DXwW+YAgJVl8wVUlZvAW228Q6br4Y3Zx2K9x zhcA== X-Gm-Message-State: AC+VfDziQw5C9SMSILJca2kFZDSdWuCKW0OEFPbF/au0b8Qi1Q1DfojG DpsfOJ4+3iLmtTWJEWXlpzc= X-Google-Smtp-Source: ACHHUZ5BRaD177tE1K+/zidTaxecch2WxFQR5MI/tG/yJGMKk055pAnLHtqYXsbXJZWlLLkzghbGoA== X-Received: by 2002:a81:8684:0:b0:576:e4b6:9272 with SMTP id w126-20020a818684000000b00576e4b69272mr1982237ywf.30.1687835769172; Mon, 26 Jun 2023 20:16:09 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" , Yoshinori Sato , Geert Uytterhoeven , John Paul Adrian Glaubitz , Mike Rapoport Subject: [PATCH v6 29/33] sh: Convert pte_free_tlb() to use ptdescs Date: Mon, 26 Jun 2023 20:14:27 -0700 Message-Id: <20230627031431.29653-30-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230627031431.29653-1-vishal.moola@gmail.com> References: <20230627031431.29653-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Part of the conversions to replace pgtable constructor/destructors with ptdesc equivalents. Also cleans up some spacing issues. Signed-off-by: Vishal Moola (Oracle) Reviewed-by: Geert Uytterhoeven Acked-by: John Paul Adrian Glaubitz Acked-by: Mike Rapoport (IBM) --- arch/sh/include/asm/pgalloc.h | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/arch/sh/include/asm/pgalloc.h b/arch/sh/include/asm/pgalloc.h index a9e98233c4d4..5d8577ab1591 100644 --- a/arch/sh/include/asm/pgalloc.h +++ b/arch/sh/include/asm/pgalloc.h @@ -2,6 +2,7 @@ #ifndef __ASM_SH_PGALLOC_H #define __ASM_SH_PGALLOC_H +#include #include #define __HAVE_ARCH_PMD_ALLOC_ONE @@ -31,10 +32,10 @@ static inline void pmd_populate(struct mm_struct *mm, pmd_t *pmd, set_pmd(pmd, __pmd((unsigned long)page_address(pte))); } -#define __pte_free_tlb(tlb,pte,addr) \ -do { \ - pgtable_pte_page_dtor(pte); \ - tlb_remove_page((tlb), (pte)); \ +#define __pte_free_tlb(tlb, pte, addr) \ +do { \ + pagetable_pte_dtor(page_ptdesc(pte)); \ + tlb_remove_page_ptdesc((tlb), (page_ptdesc(pte))); \ } while (0) #endif /* __ASM_SH_PGALLOC_H */ -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Tue Jun 27 03:19:37 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 03:19:37 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555746.867845 (Exim 4.92) (envelope-from ) id 1qDzEu-0005mA-HS; Tue, 27 Jun 2023 03:19:36 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555746.867845; Tue, 27 Jun 2023 03:19:36 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDzEt-0005ih-NO; Tue, 27 Jun 2023 03:19:35 +0000 Received: by outflank-mailman (input) for mailman id 555746; Tue, 27 Jun 2023 03:19:30 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDzB9-0003pv-MS for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 03:15:43 +0000 Received: from mail-yw1-x112f.google.com (mail-yw1-x112f.google.com [2607:f8b0:4864:20::112f]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id e60b0d7b-1498-11ee-b237-6b7b168915f2; Tue, 27 Jun 2023 05:15:42 +0200 (CEST) Received: by mail-yw1-x112f.google.com with SMTP id 00721157ae682-570002c9b38so42370627b3.1 for ; Mon, 26 Jun 2023 20:15:42 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::16]) by smtp.googlemail.com with ESMTPSA id s4-20020a0dd004000000b0057399b3bd26sm1614798ywd.33.2023.06.26.20.15.39 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 26 Jun 2023 20:15:41 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: e60b0d7b-1498-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687835741; x=1690427741; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=TkWAvuRnBcdDxQyUnHPccd2fzUbRvSLtPtfAdfkK0D0=; b=Y29oLBo54IelkOx322p2iVXWfA4IaT3l9yF0tlkE7TIOLncY8qGbD0oBXUadhtPpBr ox9bcqf07tpeqzwcnY+iasgqeZXejAOVjtaJjAsb7WJ15Uy0POLJ3MxCZns1FcM5WPjP +JbOozXOilFCizwLt/mpoCnI1UBR9D6cbicNOi3gepwC7mGMoITq+lzxvsSHsVo1SDEj Mu7JBT23VNXCvVL/f5whQ8wp1S6+w1a74gEslVRxsbEnv+d7SoOA5E7Rsd4oM5np6JgZ 2uL9Cbj4u7ByOSSRN6KflmiiGBGWbxgqL+M+RNd5GWw1ztOmw5rlB1y9QWz6YFnxA8My wgNw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687835741; x=1690427741; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=TkWAvuRnBcdDxQyUnHPccd2fzUbRvSLtPtfAdfkK0D0=; b=atkbFal/vbGL+rRARuXQoNSIhO8Bvhg4reK3EumJovAjAg4bB038eHbK0UOOjFL+8K mHwZJS+dWQCjJ1H1qVM4LTuIgmLUXiJ6Kxqau21UBjZH4JvIOQE4PzKT9OOiiUIuc/LT A6WOuScXpCdiOmt+dKbuuWP2rgKVJQ0Bgoz0N8hPL5/Og94CRRU3TWQKrNlTKtt6VAph C+TMNBXuVaJ3/xOa1UXPBBkTTRFIJKujzhdNp1y22yKZGIZBRdZSDNpDcQXIlkoqeR8Y I/4kV2dA2/eyaxJs2SXNs3hA3+fE71nzmdwGgY3BGOIUmgNcY0Ryy9jNiiV2yKsVHM5X rbrQ== X-Gm-Message-State: AC+VfDwb/MQYtzR4GsLWoyQF31Z7hs2+bsEChPhHub4B5e5qcJF2G7vJ 2S9LroMqILUyg2lodoPw01k= X-Google-Smtp-Source: ACHHUZ6zo/heeKGErFKSgHt9WPTzp866BV9Vxkz2nD8Fm51KKhKDyA9uiul/2kgbaOeGxMWVqoUNKQ== X-Received: by 2002:a0d:d742:0:b0:569:feee:3950 with SMTP id z63-20020a0dd742000000b00569feee3950mr33893914ywd.2.1687835741628; Mon, 26 Jun 2023 20:15:41 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" , David Hildenbrand , Claudio Imbrenda , Mike Rapoport Subject: [PATCH v6 16/33] s390: Convert various pgalloc functions to use ptdescs Date: Mon, 26 Jun 2023 20:14:14 -0700 Message-Id: <20230627031431.29653-17-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230627031431.29653-1-vishal.moola@gmail.com> References: <20230627031431.29653-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit As part of the conversions to replace pgtable constructor/destructors with ptdesc equivalents, convert various page table functions to use ptdescs. Some of the functions use the *get*page*() helper functions. Convert these to use pagetable_alloc() and ptdesc_address() instead to help standardize page tables further. Signed-off-by: Vishal Moola (Oracle) Acked-by: Mike Rapoport (IBM) --- arch/s390/include/asm/pgalloc.h | 4 +- arch/s390/include/asm/tlb.h | 4 +- arch/s390/mm/pgalloc.c | 108 ++++++++++++++++---------------- 3 files changed, 59 insertions(+), 57 deletions(-) diff --git a/arch/s390/include/asm/pgalloc.h b/arch/s390/include/asm/pgalloc.h index 17eb618f1348..00ad9b88fda9 100644 --- a/arch/s390/include/asm/pgalloc.h +++ b/arch/s390/include/asm/pgalloc.h @@ -86,7 +86,7 @@ static inline pmd_t *pmd_alloc_one(struct mm_struct *mm, unsigned long vmaddr) if (!table) return NULL; crst_table_init(table, _SEGMENT_ENTRY_EMPTY); - if (!pgtable_pmd_page_ctor(virt_to_page(table))) { + if (!pagetable_pmd_ctor(virt_to_ptdesc(table))) { crst_table_free(mm, table); return NULL; } @@ -97,7 +97,7 @@ static inline void pmd_free(struct mm_struct *mm, pmd_t *pmd) { if (mm_pmd_folded(mm)) return; - pgtable_pmd_page_dtor(virt_to_page(pmd)); + pagetable_pmd_dtor(virt_to_ptdesc(pmd)); crst_table_free(mm, (unsigned long *) pmd); } diff --git a/arch/s390/include/asm/tlb.h b/arch/s390/include/asm/tlb.h index b91f4a9b044c..383b1f91442c 100644 --- a/arch/s390/include/asm/tlb.h +++ b/arch/s390/include/asm/tlb.h @@ -89,12 +89,12 @@ static inline void pmd_free_tlb(struct mmu_gather *tlb, pmd_t *pmd, { if (mm_pmd_folded(tlb->mm)) return; - pgtable_pmd_page_dtor(virt_to_page(pmd)); + pagetable_pmd_dtor(virt_to_ptdesc(pmd)); __tlb_adjust_range(tlb, address, PAGE_SIZE); tlb->mm->context.flush_mm = 1; tlb->freed_tables = 1; tlb->cleared_puds = 1; - tlb_remove_table(tlb, pmd); + tlb_remove_ptdesc(tlb, pmd); } /* diff --git a/arch/s390/mm/pgalloc.c b/arch/s390/mm/pgalloc.c index 66ab68db9842..79b1c2458d85 100644 --- a/arch/s390/mm/pgalloc.c +++ b/arch/s390/mm/pgalloc.c @@ -43,17 +43,17 @@ __initcall(page_table_register_sysctl); unsigned long *crst_table_alloc(struct mm_struct *mm) { - struct page *page = alloc_pages(GFP_KERNEL, CRST_ALLOC_ORDER); + struct ptdesc *ptdesc = pagetable_alloc(GFP_KERNEL, CRST_ALLOC_ORDER); - if (!page) + if (!ptdesc) return NULL; - arch_set_page_dat(page, CRST_ALLOC_ORDER); - return (unsigned long *) page_to_virt(page); + arch_set_page_dat(ptdesc_page(ptdesc), CRST_ALLOC_ORDER); + return (unsigned long *) ptdesc_to_virt(ptdesc); } void crst_table_free(struct mm_struct *mm, unsigned long *table) { - free_pages((unsigned long)table, CRST_ALLOC_ORDER); + pagetable_free(virt_to_ptdesc(table)); } static void __crst_table_upgrade(void *arg) @@ -140,21 +140,21 @@ static inline unsigned int atomic_xor_bits(atomic_t *v, unsigned int bits) struct page *page_table_alloc_pgste(struct mm_struct *mm) { - struct page *page; + struct ptdesc *ptdesc; u64 *table; - page = alloc_page(GFP_KERNEL); - if (page) { - table = (u64 *)page_to_virt(page); + ptdesc = pagetable_alloc(GFP_KERNEL, 0); + if (ptdesc) { + table = (u64 *)ptdesc_to_virt(ptdesc); memset64(table, _PAGE_INVALID, PTRS_PER_PTE); memset64(table + PTRS_PER_PTE, 0, PTRS_PER_PTE); } - return page; + return ptdesc_page(ptdesc); } void page_table_free_pgste(struct page *page) { - __free_page(page); + pagetable_free(page_ptdesc(page)); } #endif /* CONFIG_PGSTE */ @@ -233,7 +233,7 @@ void page_table_free_pgste(struct page *page) unsigned long *page_table_alloc(struct mm_struct *mm) { unsigned long *table; - struct page *page; + struct ptdesc *ptdesc; unsigned int mask, bit; /* Try to get a fragment of a 4K page as a 2K page table */ @@ -241,9 +241,9 @@ unsigned long *page_table_alloc(struct mm_struct *mm) table = NULL; spin_lock_bh(&mm->context.lock); if (!list_empty(&mm->context.pgtable_list)) { - page = list_first_entry(&mm->context.pgtable_list, - struct page, lru); - mask = atomic_read(&page->_refcount) >> 24; + ptdesc = list_first_entry(&mm->context.pgtable_list, + struct ptdesc, pt_list); + mask = atomic_read(&ptdesc->_refcount) >> 24; /* * The pending removal bits must also be checked. * Failure to do so might lead to an impossible @@ -255,13 +255,13 @@ unsigned long *page_table_alloc(struct mm_struct *mm) */ mask = (mask | (mask >> 4)) & 0x03U; if (mask != 0x03U) { - table = (unsigned long *) page_to_virt(page); + table = (unsigned long *) ptdesc_to_virt(ptdesc); bit = mask & 1; /* =1 -> second 2K */ if (bit) table += PTRS_PER_PTE; - atomic_xor_bits(&page->_refcount, + atomic_xor_bits(&ptdesc->_refcount, 0x01U << (bit + 24)); - list_del(&page->lru); + list_del(&ptdesc->pt_list); } } spin_unlock_bh(&mm->context.lock); @@ -269,27 +269,27 @@ unsigned long *page_table_alloc(struct mm_struct *mm) return table; } /* Allocate a fresh page */ - page = alloc_page(GFP_KERNEL); - if (!page) + ptdesc = pagetable_alloc(GFP_KERNEL, 0); + if (!ptdesc) return NULL; - if (!pgtable_pte_page_ctor(page)) { - __free_page(page); + if (!pagetable_pte_ctor(ptdesc)) { + pagetable_free(ptdesc); return NULL; } - arch_set_page_dat(page, 0); + arch_set_page_dat(ptdesc_page(ptdesc), 0); /* Initialize page table */ - table = (unsigned long *) page_to_virt(page); + table = (unsigned long *) ptdesc_to_virt(ptdesc); if (mm_alloc_pgste(mm)) { /* Return 4K page table with PGSTEs */ - atomic_xor_bits(&page->_refcount, 0x03U << 24); + atomic_xor_bits(&ptdesc->_refcount, 0x03U << 24); memset64((u64 *)table, _PAGE_INVALID, PTRS_PER_PTE); memset64((u64 *)table + PTRS_PER_PTE, 0, PTRS_PER_PTE); } else { /* Return the first 2K fragment of the page */ - atomic_xor_bits(&page->_refcount, 0x01U << 24); + atomic_xor_bits(&ptdesc->_refcount, 0x01U << 24); memset64((u64 *)table, _PAGE_INVALID, 2 * PTRS_PER_PTE); spin_lock_bh(&mm->context.lock); - list_add(&page->lru, &mm->context.pgtable_list); + list_add(&ptdesc->pt_list, &mm->context.pgtable_list); spin_unlock_bh(&mm->context.lock); } return table; @@ -311,9 +311,8 @@ static void page_table_release_check(struct page *page, void *table, void page_table_free(struct mm_struct *mm, unsigned long *table) { unsigned int mask, bit, half; - struct page *page; + struct ptdesc *ptdesc = virt_to_ptdesc(table); - page = virt_to_page(table); if (!mm_alloc_pgste(mm)) { /* Free 2K page table fragment of a 4K page */ bit = ((unsigned long) table & ~PAGE_MASK)/(PTRS_PER_PTE*sizeof(pte_t)); @@ -323,42 +322,41 @@ void page_table_free(struct mm_struct *mm, unsigned long *table) * will happen outside of the critical section from this * function or from __tlb_remove_table() */ - mask = atomic_xor_bits(&page->_refcount, 0x11U << (bit + 24)); + mask = atomic_xor_bits(&ptdesc->_refcount, 0x11U << (bit + 24)); mask >>= 24; if (mask & 0x03U) - list_add(&page->lru, &mm->context.pgtable_list); + list_add(&ptdesc->pt_list, &mm->context.pgtable_list); else - list_del(&page->lru); + list_del(&ptdesc->pt_list); spin_unlock_bh(&mm->context.lock); - mask = atomic_xor_bits(&page->_refcount, 0x10U << (bit + 24)); + mask = atomic_xor_bits(&ptdesc->_refcount, 0x10U << (bit + 24)); mask >>= 24; if (mask != 0x00U) return; half = 0x01U << bit; } else { half = 0x03U; - mask = atomic_xor_bits(&page->_refcount, 0x03U << 24); + mask = atomic_xor_bits(&ptdesc->_refcount, 0x03U << 24); mask >>= 24; } - page_table_release_check(page, table, half, mask); - pgtable_pte_page_dtor(page); - __free_page(page); + page_table_release_check(ptdesc_page(ptdesc), table, half, mask); + pagetable_pte_dtor(ptdesc); + pagetable_free(ptdesc); } void page_table_free_rcu(struct mmu_gather *tlb, unsigned long *table, unsigned long vmaddr) { struct mm_struct *mm; - struct page *page; unsigned int bit, mask; + struct ptdesc *ptdesc = virt_to_ptdesc(table); mm = tlb->mm; - page = virt_to_page(table); if (mm_alloc_pgste(mm)) { gmap_unlink(mm, table, vmaddr); table = (unsigned long *) ((unsigned long)table | 0x03U); - tlb_remove_table(tlb, table); + tlb_remove_ptdesc(tlb, table); return; } bit = ((unsigned long) table & ~PAGE_MASK) / (PTRS_PER_PTE*sizeof(pte_t)); @@ -368,12 +366,12 @@ void page_table_free_rcu(struct mmu_gather *tlb, unsigned long *table, * outside of the critical section from __tlb_remove_table() or from * page_table_free() */ - mask = atomic_xor_bits(&page->_refcount, 0x11U << (bit + 24)); + mask = atomic_xor_bits(&ptdesc->_refcount, 0x11U << (bit + 24)); mask >>= 24; if (mask & 0x03U) - list_add_tail(&page->lru, &mm->context.pgtable_list); + list_add_tail(&ptdesc->pt_list, &mm->context.pgtable_list); else - list_del(&page->lru); + list_del(&ptdesc->pt_list); spin_unlock_bh(&mm->context.lock); table = (unsigned long *) ((unsigned long) table | (0x01U << bit)); tlb_remove_table(tlb, table); @@ -383,7 +381,7 @@ void __tlb_remove_table(void *_table) { unsigned int mask = (unsigned long) _table & 0x03U, half = mask; void *table = (void *)((unsigned long) _table ^ mask); - struct page *page = virt_to_page(table); + struct ptdesc *ptdesc = virt_to_ptdesc(table); switch (half) { case 0x00U: /* pmd, pud, or p4d */ @@ -391,20 +389,20 @@ void __tlb_remove_table(void *_table) return; case 0x01U: /* lower 2K of a 4K page table */ case 0x02U: /* higher 2K of a 4K page table */ - mask = atomic_xor_bits(&page->_refcount, mask << (4 + 24)); + mask = atomic_xor_bits(&ptdesc->_refcount, mask << (4 + 24)); mask >>= 24; if (mask != 0x00U) return; break; case 0x03U: /* 4K page table with pgstes */ - mask = atomic_xor_bits(&page->_refcount, 0x03U << 24); + mask = atomic_xor_bits(&ptdesc->_refcount, 0x03U << 24); mask >>= 24; break; } - page_table_release_check(page, table, half, mask); - pgtable_pte_page_dtor(page); - __free_page(page); + page_table_release_check(ptdesc_page(ptdesc), table, half, mask); + pagetable_pte_dtor(ptdesc); + pagetable_free(ptdesc); } /* @@ -432,16 +430,20 @@ static void base_pgt_free(unsigned long *table) static unsigned long *base_crst_alloc(unsigned long val) { unsigned long *table; + struct ptdesc *ptdesc; - table = (unsigned long *)__get_free_pages(GFP_KERNEL, CRST_ALLOC_ORDER); - if (table) - crst_table_init(table, val); + ptdesc = pagetable_alloc(GFP_KERNEL & ~__GFP_HIGHMEM, CRST_ALLOC_ORDER); + if (!ptdesc) + return NULL; + table = ptdesc_address(ptdesc); + + crst_table_init(table, val); return table; } static void base_crst_free(unsigned long *table) { - free_pages((unsigned long)table, CRST_ALLOC_ORDER); + pagetable_free(virt_to_ptdesc(table)); } #define BASE_ADDR_END_FUNC(NAME, SIZE) \ -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Tue Jun 27 03:19:40 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 03:19:40 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555750.867860 (Exim 4.92) (envelope-from ) id 1qDzEx-0006OY-Nm; Tue, 27 Jun 2023 03:19:39 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555750.867860; Tue, 27 Jun 2023 03:19:39 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDzEw-0006Gx-G0; Tue, 27 Jun 2023 03:19:38 +0000 Received: by outflank-mailman (input) for mailman id 555750; Tue, 27 Jun 2023 03:19:35 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDzB9-0003uL-2s for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 03:15:43 +0000 Received: from mail-yw1-x1133.google.com (mail-yw1-x1133.google.com [2607:f8b0:4864:20::1133]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id e4a7eae6-1498-11ee-8611-37d641c3527e; Tue, 27 Jun 2023 05:15:40 +0200 (CEST) Received: by mail-yw1-x1133.google.com with SMTP id 00721157ae682-57040e313c5so62555457b3.0 for ; Mon, 26 Jun 2023 20:15:40 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::16]) by smtp.googlemail.com with ESMTPSA id s4-20020a0dd004000000b0057399b3bd26sm1614798ywd.33.2023.06.26.20.15.37 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 26 Jun 2023 20:15:38 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: e4a7eae6-1498-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687835739; x=1690427739; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=xnT0OuFQgSMPBMpNBMcjRtrAID2j2J/z+99kPRjsdFc=; b=C9lK0LHuN5lKypvu+Aj6aeuTYWXXF635p2/pwdffwMnvgLPQ5DfNtjJwGjF0xWaGtG k4CBfAborCW+hCWMhZ2oUELsTotpY/LgKDoPzYRghFuc0ywrV2kgKg/Bf03R4RrxER14 8aFizXA8XvmvkijHxeK5b0ar2PYZmVlLjrBJOqZ59csukgFcxnmc3Xf5i7RxtGtOgHDV jxfjAgQfXU+ZB0gWRP2dwNno3Yad8q9D+y808smsM+9/wszItlWIKVHjO8VqsouceqTf m31MSyOhX7e2LHwarw7nCVK/K8Mtdnr1+ICaXDV8yqHnDrMeoBLMORe+kyEQDKvPPqv1 8mBw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687835739; x=1690427739; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=xnT0OuFQgSMPBMpNBMcjRtrAID2j2J/z+99kPRjsdFc=; b=XVWllxmc8Xw0SRH7hoYVd4kYpnr242TtF1TBLphSpQEyqW6DHIAIZARa5wqeLpBBRd FCvMvUgffYtBsZZClanqoHDD4PVj8/UDcS2AryHRcp9zMX45hwk3hFiiwjlyvZnoA+lF LI+2TU9+xT2rJkOxCmQw4TRKLe1aJ4Co5bP/6KHZdB0lGolQaga4NzHG4Kw50qUpuws8 Lm52JGY6ecNccDrSsNEbmIIpLNE58wQXbRaNll19O1auXsP9LFehZDbZciu8Tcn08bhZ z6yK1+koM1nrXT1Iw6avy9iZIHQsOkPvxmaQMhoCmX2vN4XLTDW1BOnwGI4XIHbqz1B5 StQw== X-Gm-Message-State: AC+VfDyFwnHVWJav57nV2h0m12+ve+oIevaudXgfP8M4AXhqLhQKDX56 H9jH9EKKrGl9qX/ZUP283ig= X-Google-Smtp-Source: ACHHUZ4s0sSEGcPfreheHOmEbwOCo2wccO0ZlMx4KueotfvtG5g+MVgAzB4cpcvHGs8z0aON7ghJ0A== X-Received: by 2002:a81:a191:0:b0:56d:50a:c0bb with SMTP id y139-20020a81a191000000b0056d050ac0bbmr37686199ywg.25.1687835739285; Mon, 26 Jun 2023 20:15:39 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" , David Hildenbrand , Claudio Imbrenda , Mike Rapoport Subject: [PATCH v6 15/33] s390: Convert various gmap functions to use ptdescs Date: Mon, 26 Jun 2023 20:14:13 -0700 Message-Id: <20230627031431.29653-16-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230627031431.29653-1-vishal.moola@gmail.com> References: <20230627031431.29653-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit In order to split struct ptdesc from struct page, convert various functions to use ptdescs. Some of the functions use the *get*page*() helper functions. Convert these to use pagetable_alloc() and ptdesc_address() instead to help standardize page tables further. Since we're now using pagetable_free(), set _pt_s390_gaddr (which aliases with page->mapping) to NULL in that function instead. Signed-off-by: Vishal Moola (Oracle) Acked-by: Mike Rapoport (IBM) --- arch/s390/mm/gmap.c | 217 +++++++++++++++++++++++--------------------- include/linux/mm.h | 3 + 2 files changed, 117 insertions(+), 103 deletions(-) diff --git a/arch/s390/mm/gmap.c b/arch/s390/mm/gmap.c index beb4804d9ca8..8dbe0fdc0e44 100644 --- a/arch/s390/mm/gmap.c +++ b/arch/s390/mm/gmap.c @@ -34,7 +34,7 @@ static struct gmap *gmap_alloc(unsigned long limit) { struct gmap *gmap; - struct page *page; + struct ptdesc *ptdesc; unsigned long *table; unsigned long etype, atype; @@ -67,12 +67,12 @@ static struct gmap *gmap_alloc(unsigned long limit) spin_lock_init(&gmap->guest_table_lock); spin_lock_init(&gmap->shadow_lock); refcount_set(&gmap->ref_count, 1); - page = alloc_pages(GFP_KERNEL_ACCOUNT, CRST_ALLOC_ORDER); - if (!page) + ptdesc = pagetable_alloc(GFP_KERNEL_ACCOUNT, CRST_ALLOC_ORDER); + if (!ptdesc) goto out_free; - page->_pt_s390_gaddr = 0; - list_add(&page->lru, &gmap->crst_list); - table = page_to_virt(page); + ptdesc->_pt_s390_gaddr = 0; + list_add(&ptdesc->pt_list, &gmap->crst_list); + table = ptdesc_to_virt(ptdesc); crst_table_init(table, etype); gmap->table = table; gmap->asce = atype | _ASCE_TABLE_LENGTH | @@ -181,25 +181,23 @@ static void gmap_rmap_radix_tree_free(struct radix_tree_root *root) */ static void gmap_free(struct gmap *gmap) { - struct page *page, *next; + struct ptdesc *ptdesc, *next; /* Flush tlb of all gmaps (if not already done for shadows) */ if (!(gmap_is_shadow(gmap) && gmap->removed)) gmap_flush_tlb(gmap); /* Free all segment & region tables. */ - list_for_each_entry_safe(page, next, &gmap->crst_list, lru) { - page->_pt_s390_gaddr = 0; - __free_pages(page, CRST_ALLOC_ORDER); + list_for_each_entry_safe(ptdesc, next, &gmap->crst_list, pt_list) { + pagetable_free(ptdesc); } gmap_radix_tree_free(&gmap->guest_to_host); gmap_radix_tree_free(&gmap->host_to_guest); /* Free additional data for a shadow gmap */ if (gmap_is_shadow(gmap)) { - /* Free all page tables. */ - list_for_each_entry_safe(page, next, &gmap->pt_list, lru) { - page->_pt_s390_gaddr = 0; - page_table_free_pgste(page); + /* Free all ptdesc tables. */ + list_for_each_entry_safe(ptdesc, next, &gmap->pt_list, pt_list) { + page_table_free_pgste(ptdesc_page(ptdesc)); } gmap_rmap_radix_tree_free(&gmap->host_to_rmap); /* Release reference to the parent */ @@ -308,28 +306,27 @@ EXPORT_SYMBOL_GPL(gmap_get_enabled); static int gmap_alloc_table(struct gmap *gmap, unsigned long *table, unsigned long init, unsigned long gaddr) { - struct page *page; + struct ptdesc *ptdesc; unsigned long *new; /* since we dont free the gmap table until gmap_free we can unlock */ - page = alloc_pages(GFP_KERNEL_ACCOUNT, CRST_ALLOC_ORDER); - if (!page) + ptdesc = pagetable_alloc(GFP_KERNEL_ACCOUNT, CRST_ALLOC_ORDER); + if (!ptdesc) return -ENOMEM; - new = page_to_virt(page); + new = ptdesc_to_virt(ptdesc); crst_table_init(new, init); spin_lock(&gmap->guest_table_lock); if (*table & _REGION_ENTRY_INVALID) { - list_add(&page->lru, &gmap->crst_list); + list_add(&ptdesc->pt_list, &gmap->crst_list); *table = __pa(new) | _REGION_ENTRY_LENGTH | (*table & _REGION_ENTRY_TYPE_MASK); - page->_pt_s390_gaddr = gaddr; - page = NULL; + ptdesc->_pt_s390_gaddr = gaddr; + ptdesc = NULL; } spin_unlock(&gmap->guest_table_lock); - if (page) { - page->_pt_s390_gaddr = 0; - __free_pages(page, CRST_ALLOC_ORDER); - } + if (ptdesc) + pagetable_free(ptdesc); + return 0; } @@ -341,15 +338,15 @@ static int gmap_alloc_table(struct gmap *gmap, unsigned long *table, */ static unsigned long __gmap_segment_gaddr(unsigned long *entry) { - struct page *page; + struct ptdesc *ptdesc; unsigned long offset, mask; offset = (unsigned long) entry / sizeof(unsigned long); offset = (offset & (PTRS_PER_PMD - 1)) * PMD_SIZE; mask = ~(PTRS_PER_PMD * sizeof(pmd_t) - 1); - page = virt_to_page((void *)((unsigned long) entry & mask)); + ptdesc = virt_to_ptdesc((void *)((unsigned long) entry & mask)); - return page->_pt_s390_gaddr + offset; + return ptdesc->_pt_s390_gaddr + offset; } /** @@ -1345,6 +1342,7 @@ static void gmap_unshadow_pgt(struct gmap *sg, unsigned long raddr) unsigned long *ste; phys_addr_t sto, pgt; struct page *page; + struct ptdesc *ptdesc; BUG_ON(!gmap_is_shadow(sg)); ste = gmap_table_walk(sg, raddr, 1); /* get segment pointer */ @@ -1358,9 +1356,10 @@ static void gmap_unshadow_pgt(struct gmap *sg, unsigned long raddr) __gmap_unshadow_pgt(sg, raddr, __va(pgt)); /* Free page table */ page = phys_to_page(pgt); - list_del(&page->lru); - page->_pt_s390_gaddr = 0; - page_table_free_pgste(page); + + ptdesc = page_ptdesc(page); + list_del(&ptdesc->pt_list); + page_table_free_pgste(ptdesc_page(ptdesc)); } /** @@ -1374,9 +1373,10 @@ static void gmap_unshadow_pgt(struct gmap *sg, unsigned long raddr) static void __gmap_unshadow_sgt(struct gmap *sg, unsigned long raddr, unsigned long *sgt) { - struct page *page; phys_addr_t pgt; int i; + struct page *page; + struct ptdesc *ptdesc; BUG_ON(!gmap_is_shadow(sg)); for (i = 0; i < _CRST_ENTRIES; i++, raddr += _SEGMENT_SIZE) { @@ -1387,9 +1387,10 @@ static void __gmap_unshadow_sgt(struct gmap *sg, unsigned long raddr, __gmap_unshadow_pgt(sg, raddr, __va(pgt)); /* Free page table */ page = phys_to_page(pgt); - list_del(&page->lru); - page->_pt_s390_gaddr = 0; - page_table_free_pgste(page); + + ptdesc = page_ptdesc(page); + list_del(&ptdesc->pt_list); + page_table_free_pgste(ptdesc_page(ptdesc)); } } @@ -1405,6 +1406,7 @@ static void gmap_unshadow_sgt(struct gmap *sg, unsigned long raddr) unsigned long r3o, *r3e; phys_addr_t sgt; struct page *page; + struct ptdesc *ptdesc; BUG_ON(!gmap_is_shadow(sg)); r3e = gmap_table_walk(sg, raddr, 2); /* get region-3 pointer */ @@ -1418,9 +1420,10 @@ static void gmap_unshadow_sgt(struct gmap *sg, unsigned long raddr) __gmap_unshadow_sgt(sg, raddr, __va(sgt)); /* Free segment table */ page = phys_to_page(sgt); - list_del(&page->lru); - page->_pt_s390_gaddr = 0; - __free_pages(page, CRST_ALLOC_ORDER); + + ptdesc = page_ptdesc(page); + list_del(&ptdesc->pt_list); + pagetable_free(ptdesc); } /** @@ -1434,9 +1437,10 @@ static void gmap_unshadow_sgt(struct gmap *sg, unsigned long raddr) static void __gmap_unshadow_r3t(struct gmap *sg, unsigned long raddr, unsigned long *r3t) { - struct page *page; phys_addr_t sgt; int i; + struct page *page; + struct ptdesc *ptdesc; BUG_ON(!gmap_is_shadow(sg)); for (i = 0; i < _CRST_ENTRIES; i++, raddr += _REGION3_SIZE) { @@ -1447,9 +1451,10 @@ static void __gmap_unshadow_r3t(struct gmap *sg, unsigned long raddr, __gmap_unshadow_sgt(sg, raddr, __va(sgt)); /* Free segment table */ page = phys_to_page(sgt); - list_del(&page->lru); - page->_pt_s390_gaddr = 0; - __free_pages(page, CRST_ALLOC_ORDER); + + ptdesc = page_ptdesc(page); + list_del(&ptdesc->pt_list); + pagetable_free(ptdesc); } } @@ -1465,6 +1470,7 @@ static void gmap_unshadow_r3t(struct gmap *sg, unsigned long raddr) unsigned long r2o, *r2e; phys_addr_t r3t; struct page *page; + struct ptdesc *ptdesc; BUG_ON(!gmap_is_shadow(sg)); r2e = gmap_table_walk(sg, raddr, 3); /* get region-2 pointer */ @@ -1478,9 +1484,10 @@ static void gmap_unshadow_r3t(struct gmap *sg, unsigned long raddr) __gmap_unshadow_r3t(sg, raddr, __va(r3t)); /* Free region 3 table */ page = phys_to_page(r3t); - list_del(&page->lru); - page->_pt_s390_gaddr = 0; - __free_pages(page, CRST_ALLOC_ORDER); + + ptdesc = page_ptdesc(page); + list_del(&ptdesc->pt_list); + pagetable_free(ptdesc); } /** @@ -1495,8 +1502,9 @@ static void __gmap_unshadow_r2t(struct gmap *sg, unsigned long raddr, unsigned long *r2t) { phys_addr_t r3t; - struct page *page; int i; + struct page *page; + struct ptdesc *ptdesc; BUG_ON(!gmap_is_shadow(sg)); for (i = 0; i < _CRST_ENTRIES; i++, raddr += _REGION2_SIZE) { @@ -1507,9 +1515,10 @@ static void __gmap_unshadow_r2t(struct gmap *sg, unsigned long raddr, __gmap_unshadow_r3t(sg, raddr, __va(r3t)); /* Free region 3 table */ page = phys_to_page(r3t); - list_del(&page->lru); - page->_pt_s390_gaddr = 0; - __free_pages(page, CRST_ALLOC_ORDER); + + ptdesc = page_ptdesc(page); + list_del(&ptdesc->pt_list); + pagetable_free(ptdesc); } } @@ -1525,6 +1534,7 @@ static void gmap_unshadow_r2t(struct gmap *sg, unsigned long raddr) unsigned long r1o, *r1e; struct page *page; phys_addr_t r2t; + struct ptdesc *ptdesc; BUG_ON(!gmap_is_shadow(sg)); r1e = gmap_table_walk(sg, raddr, 4); /* get region-1 pointer */ @@ -1538,9 +1548,10 @@ static void gmap_unshadow_r2t(struct gmap *sg, unsigned long raddr) __gmap_unshadow_r2t(sg, raddr, __va(r2t)); /* Free region 2 table */ page = phys_to_page(r2t); - list_del(&page->lru); - page->_pt_s390_gaddr = 0; - __free_pages(page, CRST_ALLOC_ORDER); + + ptdesc = page_ptdesc(page); + list_del(&ptdesc->pt_list); + pagetable_free(ptdesc); } /** @@ -1558,6 +1569,7 @@ static void __gmap_unshadow_r1t(struct gmap *sg, unsigned long raddr, struct page *page; phys_addr_t r2t; int i; + struct ptdesc *ptdesc; BUG_ON(!gmap_is_shadow(sg)); asce = __pa(r1t) | _ASCE_TYPE_REGION1; @@ -1571,9 +1583,10 @@ static void __gmap_unshadow_r1t(struct gmap *sg, unsigned long raddr, r1t[i] = _REGION1_ENTRY_EMPTY; /* Free region 2 table */ page = phys_to_page(r2t); - list_del(&page->lru); - page->_pt_s390_gaddr = 0; - __free_pages(page, CRST_ALLOC_ORDER); + + ptdesc = page_ptdesc(page); + list_del(&ptdesc->pt_list); + pagetable_free(ptdesc); } } @@ -1770,18 +1783,18 @@ int gmap_shadow_r2t(struct gmap *sg, unsigned long saddr, unsigned long r2t, unsigned long raddr, origin, offset, len; unsigned long *table; phys_addr_t s_r2t; - struct page *page; + struct ptdesc *ptdesc; int rc; BUG_ON(!gmap_is_shadow(sg)); /* Allocate a shadow region second table */ - page = alloc_pages(GFP_KERNEL_ACCOUNT, CRST_ALLOC_ORDER); - if (!page) + ptdesc = pagetable_alloc(GFP_KERNEL_ACCOUNT, CRST_ALLOC_ORDER); + if (!ptdesc) return -ENOMEM; - page->_pt_s390_gaddr = r2t & _REGION_ENTRY_ORIGIN; + ptdesc->_pt_s390_gaddr = r2t & _REGION_ENTRY_ORIGIN; if (fake) - page->_pt_s390_gaddr |= GMAP_SHADOW_FAKE_TABLE; - s_r2t = page_to_phys(page); + ptdesc->_pt_s390_gaddr |= GMAP_SHADOW_FAKE_TABLE; + s_r2t = page_to_phys(ptdesc_page(ptdesc)); /* Install shadow region second table */ spin_lock(&sg->guest_table_lock); table = gmap_table_walk(sg, saddr, 4); /* get region-1 pointer */ @@ -1802,7 +1815,7 @@ int gmap_shadow_r2t(struct gmap *sg, unsigned long saddr, unsigned long r2t, _REGION_ENTRY_TYPE_R1 | _REGION_ENTRY_INVALID; if (sg->edat_level >= 1) *table |= (r2t & _REGION_ENTRY_PROTECT); - list_add(&page->lru, &sg->crst_list); + list_add(&ptdesc->pt_list, &sg->crst_list); if (fake) { /* nothing to protect for fake tables */ *table &= ~_REGION_ENTRY_INVALID; @@ -1830,8 +1843,7 @@ int gmap_shadow_r2t(struct gmap *sg, unsigned long saddr, unsigned long r2t, return rc; out_free: spin_unlock(&sg->guest_table_lock); - page->_pt_s390_gaddr = 0; - __free_pages(page, CRST_ALLOC_ORDER); + pagetable_free(ptdesc); return rc; } EXPORT_SYMBOL_GPL(gmap_shadow_r2t); @@ -1855,18 +1867,18 @@ int gmap_shadow_r3t(struct gmap *sg, unsigned long saddr, unsigned long r3t, unsigned long raddr, origin, offset, len; unsigned long *table; phys_addr_t s_r3t; - struct page *page; + struct ptdesc *ptdesc; int rc; BUG_ON(!gmap_is_shadow(sg)); /* Allocate a shadow region second table */ - page = alloc_pages(GFP_KERNEL_ACCOUNT, CRST_ALLOC_ORDER); - if (!page) + ptdesc = pagetable_alloc(GFP_KERNEL_ACCOUNT, CRST_ALLOC_ORDER); + if (!ptdesc) return -ENOMEM; - page->_pt_s390_gaddr = r3t & _REGION_ENTRY_ORIGIN; + ptdesc->_pt_s390_gaddr = r3t & _REGION_ENTRY_ORIGIN; if (fake) - page->_pt_s390_gaddr |= GMAP_SHADOW_FAKE_TABLE; - s_r3t = page_to_phys(page); + ptdesc->_pt_s390_gaddr |= GMAP_SHADOW_FAKE_TABLE; + s_r3t = page_to_phys(ptdesc_page(ptdesc)); /* Install shadow region second table */ spin_lock(&sg->guest_table_lock); table = gmap_table_walk(sg, saddr, 3); /* get region-2 pointer */ @@ -1887,7 +1899,7 @@ int gmap_shadow_r3t(struct gmap *sg, unsigned long saddr, unsigned long r3t, _REGION_ENTRY_TYPE_R2 | _REGION_ENTRY_INVALID; if (sg->edat_level >= 1) *table |= (r3t & _REGION_ENTRY_PROTECT); - list_add(&page->lru, &sg->crst_list); + list_add(&ptdesc->pt_list, &sg->crst_list); if (fake) { /* nothing to protect for fake tables */ *table &= ~_REGION_ENTRY_INVALID; @@ -1915,8 +1927,7 @@ int gmap_shadow_r3t(struct gmap *sg, unsigned long saddr, unsigned long r3t, return rc; out_free: spin_unlock(&sg->guest_table_lock); - page->_pt_s390_gaddr = 0; - __free_pages(page, CRST_ALLOC_ORDER); + pagetable_free(ptdesc); return rc; } EXPORT_SYMBOL_GPL(gmap_shadow_r3t); @@ -1940,18 +1951,18 @@ int gmap_shadow_sgt(struct gmap *sg, unsigned long saddr, unsigned long sgt, unsigned long raddr, origin, offset, len; unsigned long *table; phys_addr_t s_sgt; - struct page *page; + struct ptdesc *ptdesc; int rc; BUG_ON(!gmap_is_shadow(sg) || (sgt & _REGION3_ENTRY_LARGE)); /* Allocate a shadow segment table */ - page = alloc_pages(GFP_KERNEL_ACCOUNT, CRST_ALLOC_ORDER); - if (!page) + ptdesc = pagetable_alloc(GFP_KERNEL_ACCOUNT, CRST_ALLOC_ORDER); + if (!ptdesc) return -ENOMEM; - page->_pt_s390_gaddr = sgt & _REGION_ENTRY_ORIGIN; + ptdesc->_pt_s390_gaddr = sgt & _REGION_ENTRY_ORIGIN; if (fake) - page->_pt_s390_gaddr |= GMAP_SHADOW_FAKE_TABLE; - s_sgt = page_to_phys(page); + ptdesc->_pt_s390_gaddr |= GMAP_SHADOW_FAKE_TABLE; + s_sgt = page_to_phys(ptdesc_page(ptdesc)); /* Install shadow region second table */ spin_lock(&sg->guest_table_lock); table = gmap_table_walk(sg, saddr, 2); /* get region-3 pointer */ @@ -1972,7 +1983,7 @@ int gmap_shadow_sgt(struct gmap *sg, unsigned long saddr, unsigned long sgt, _REGION_ENTRY_TYPE_R3 | _REGION_ENTRY_INVALID; if (sg->edat_level >= 1) *table |= sgt & _REGION_ENTRY_PROTECT; - list_add(&page->lru, &sg->crst_list); + list_add(&ptdesc->pt_list, &sg->crst_list); if (fake) { /* nothing to protect for fake tables */ *table &= ~_REGION_ENTRY_INVALID; @@ -2000,8 +2011,7 @@ int gmap_shadow_sgt(struct gmap *sg, unsigned long saddr, unsigned long sgt, return rc; out_free: spin_unlock(&sg->guest_table_lock); - page->_pt_s390_gaddr = 0; - __free_pages(page, CRST_ALLOC_ORDER); + pagetable_free(ptdesc); return rc; } EXPORT_SYMBOL_GPL(gmap_shadow_sgt); @@ -2024,8 +2034,9 @@ int gmap_shadow_pgt_lookup(struct gmap *sg, unsigned long saddr, int *fake) { unsigned long *table; - struct page *page; int rc; + struct page *page; + struct ptdesc *ptdesc; BUG_ON(!gmap_is_shadow(sg)); spin_lock(&sg->guest_table_lock); @@ -2033,9 +2044,10 @@ int gmap_shadow_pgt_lookup(struct gmap *sg, unsigned long saddr, if (table && !(*table & _SEGMENT_ENTRY_INVALID)) { /* Shadow page tables are full pages (pte+pgste) */ page = pfn_to_page(*table >> PAGE_SHIFT); - *pgt = page->_pt_s390_gaddr & ~GMAP_SHADOW_FAKE_TABLE; + ptdesc = page_ptdesc(page); + *pgt = ptdesc->_pt_s390_gaddr & ~GMAP_SHADOW_FAKE_TABLE; *dat_protection = !!(*table & _SEGMENT_ENTRY_PROTECT); - *fake = !!(page->_pt_s390_gaddr & GMAP_SHADOW_FAKE_TABLE); + *fake = !!(ptdesc->_pt_s390_gaddr & GMAP_SHADOW_FAKE_TABLE); rc = 0; } else { rc = -EAGAIN; @@ -2064,19 +2076,19 @@ int gmap_shadow_pgt(struct gmap *sg, unsigned long saddr, unsigned long pgt, { unsigned long raddr, origin; unsigned long *table; - struct page *page; + struct ptdesc *ptdesc; phys_addr_t s_pgt; int rc; BUG_ON(!gmap_is_shadow(sg) || (pgt & _SEGMENT_ENTRY_LARGE)); /* Allocate a shadow page table */ - page = page_table_alloc_pgste(sg->mm); - if (!page) + ptdesc = page_ptdesc(page_table_alloc_pgste(sg->mm)); + if (!ptdesc) return -ENOMEM; - page->_pt_s390_gaddr = pgt & _SEGMENT_ENTRY_ORIGIN; + ptdesc->_pt_s390_gaddr = pgt & _SEGMENT_ENTRY_ORIGIN; if (fake) - page->_pt_s390_gaddr |= GMAP_SHADOW_FAKE_TABLE; - s_pgt = page_to_phys(page); + ptdesc->_pt_s390_gaddr |= GMAP_SHADOW_FAKE_TABLE; + s_pgt = page_to_phys(ptdesc_page(ptdesc)); /* Install shadow page table */ spin_lock(&sg->guest_table_lock); table = gmap_table_walk(sg, saddr, 1); /* get segment pointer */ @@ -2094,7 +2106,7 @@ int gmap_shadow_pgt(struct gmap *sg, unsigned long saddr, unsigned long pgt, /* mark as invalid as long as the parent table is not protected */ *table = (unsigned long) s_pgt | _SEGMENT_ENTRY | (pgt & _SEGMENT_ENTRY_PROTECT) | _SEGMENT_ENTRY_INVALID; - list_add(&page->lru, &sg->pt_list); + list_add(&ptdesc->pt_list, &sg->pt_list); if (fake) { /* nothing to protect for fake tables */ *table &= ~_SEGMENT_ENTRY_INVALID; @@ -2120,8 +2132,7 @@ int gmap_shadow_pgt(struct gmap *sg, unsigned long saddr, unsigned long pgt, return rc; out_free: spin_unlock(&sg->guest_table_lock); - page->_pt_s390_gaddr = 0; - page_table_free_pgste(page); + page_table_free_pgste(ptdesc_page(ptdesc)); return rc; } @@ -2821,11 +2832,11 @@ EXPORT_SYMBOL_GPL(__s390_uv_destroy_range); */ void s390_unlist_old_asce(struct gmap *gmap) { - struct page *old; + struct ptdesc *old; - old = virt_to_page(gmap->table); + old = virt_to_ptdesc(gmap->table); spin_lock(&gmap->guest_table_lock); - list_del(&old->lru); + list_del(&old->pt_list); /* * Sometimes the topmost page might need to be "removed" multiple * times, for example if the VM is rebooted into secure mode several @@ -2840,7 +2851,7 @@ void s390_unlist_old_asce(struct gmap *gmap) * pointers, so list_del can work (and do nothing) without * dereferencing stale or invalid pointers. */ - INIT_LIST_HEAD(&old->lru); + INIT_LIST_HEAD(&old->pt_list); spin_unlock(&gmap->guest_table_lock); } EXPORT_SYMBOL_GPL(s390_unlist_old_asce); @@ -2861,7 +2872,7 @@ EXPORT_SYMBOL_GPL(s390_unlist_old_asce); int s390_replace_asce(struct gmap *gmap) { unsigned long asce; - struct page *page; + struct ptdesc *ptdesc; void *table; s390_unlist_old_asce(gmap); @@ -2870,10 +2881,10 @@ int s390_replace_asce(struct gmap *gmap) if ((gmap->asce & _ASCE_TYPE_MASK) == _ASCE_TYPE_SEGMENT) return -EINVAL; - page = alloc_pages(GFP_KERNEL_ACCOUNT, CRST_ALLOC_ORDER); - if (!page) + ptdesc = pagetable_alloc(GFP_KERNEL_ACCOUNT, CRST_ALLOC_ORDER); + if (!ptdesc) return -ENOMEM; - table = page_to_virt(page); + table = ptdesc_to_virt(ptdesc); memcpy(table, gmap->table, 1UL << (CRST_ALLOC_ORDER + PAGE_SHIFT)); /* @@ -2882,7 +2893,7 @@ int s390_replace_asce(struct gmap *gmap) * it will be freed when the VM is torn down. */ spin_lock(&gmap->guest_table_lock); - list_add(&page->lru, &gmap->crst_list); + list_add(&ptdesc->pt_list, &gmap->crst_list); spin_unlock(&gmap->guest_table_lock); /* Set new table origin while preserving existing ASCE control bits */ diff --git a/include/linux/mm.h b/include/linux/mm.h index 356e79984cf9..0e4d5f6d10e5 100644 --- a/include/linux/mm.h +++ b/include/linux/mm.h @@ -2792,6 +2792,9 @@ static inline void pagetable_free(struct ptdesc *pt) { struct page *page = ptdesc_page(pt); + /* set page->mapping to NULL since s390 gmap may have used it */ + pt->_pt_s390_gaddr = 0; + __free_pages(page, compound_order(page)); } -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Tue Jun 27 03:19:46 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 03:19:46 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555761.867885 (Exim 4.92) (envelope-from ) id 1qDzF4-0008Lr-8H; Tue, 27 Jun 2023 03:19:46 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555761.867885; Tue, 27 Jun 2023 03:19:46 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDzF3-0008JZ-Rq; Tue, 27 Jun 2023 03:19:45 +0000 Received: by outflank-mailman (input) for mailman id 555761; Tue, 27 Jun 2023 03:19:43 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDzBg-0003uL-6x for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 03:16:16 +0000 Received: from mail-yw1-x112e.google.com (mail-yw1-x112e.google.com [2607:f8b0:4864:20::112e]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id f8fb58a9-1498-11ee-8611-37d641c3527e; Tue, 27 Jun 2023 05:16:14 +0200 (CEST) Received: by mail-yw1-x112e.google.com with SMTP id 00721157ae682-57040e313c5so62559987b3.0 for ; Mon, 26 Jun 2023 20:16:14 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::16]) by smtp.googlemail.com with ESMTPSA id s4-20020a0dd004000000b0057399b3bd26sm1614798ywd.33.2023.06.26.20.16.11 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 26 Jun 2023 20:16:13 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: f8fb58a9-1498-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687835773; x=1690427773; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=ES9RfFz84BcV9KH4Nk3AfkjPOEvVVRdPbPMSiTejLcw=; b=dLHeJwfXKaTxpO4c0sQBm93zd4wQrUxFt2CjFz5qWQ7T65DNPYbc5uKxnR+eK0IL7t R2V9BA+60dIzn1DRHNiAM8OyrAJAml6DoS1l2PV4PYnoH4WUW9ywNy9TDf3yz7ME+vFq NLGTD2cyLj0S/PJY2GAWd4utoHoRGPP+jS/tnomFzM8g/lVPns4ABJt0M6rzW8rsiL9B m29bDYcQGdb38WDxMbx9Hk40CYhBq3UtQSCa5gjYXZKOF2lc/8CEcIQNZ6Wo9PGTUZtN IYAVdG9F0aChBdAkISeJXlJPZbPB7Nf1GhV5RWEzzuTieYJGBF1MgcwOgT5miNq4avun mLuw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687835773; x=1690427773; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=ES9RfFz84BcV9KH4Nk3AfkjPOEvVVRdPbPMSiTejLcw=; b=eroDWxjCwgICCESNW3fdXQm0Dh3sBfjX5SF8pytPXDK7kUvm7U+mTAZr49mXe+QHR2 OE/kIUZtd5ovOimJjFp4EuEjVgvPL6tfJzywmrwX6qKeFliWraOmEkWIxzc+w98aGGUs LL8LYMYtn2QQIgof8LF2U5wxSpN03vnnuf10xAfuDxFPTET0A7thY2EAJVcRBpcQZayK zgG+TD6CzeO5IJJc3hzQN24bWJ8aZNPJY6NfqMw+aLXAa7jGnevqS7iGZW6r2C00lyem anxC6aHIl6v6W3NWFx8IBnb80VSFacDbcqUN0GF9yQ/a5F3oU32QoQskDrYFzxecttv9 7wqQ== X-Gm-Message-State: AC+VfDw5zdNdNc4XGCmzPKSD7shY1PTlAhMHU59hOeEbEN+ejd4EFurP y/6zcfNhfwWhBXneRdcSBYs= X-Google-Smtp-Source: ACHHUZ7mviCb8EMix7g2GoIipUtqwtEpnZ4nIwFH1XOniyUWELa3iqb5sNl3hiYnjR+jSDWsaWi7Kw== X-Received: by 2002:a0d:cbcb:0:b0:56c:e5a3:3e09 with SMTP id n194-20020a0dcbcb000000b0056ce5a33e09mr43279069ywd.15.1687835773500; Mon, 26 Jun 2023 20:16:13 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" , "David S. Miller" , Mike Rapoport Subject: [PATCH v6 31/33] sparc: Convert pgtable_pte_page_{ctor, dtor}() to ptdesc equivalents Date: Mon, 26 Jun 2023 20:14:29 -0700 Message-Id: <20230627031431.29653-32-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230627031431.29653-1-vishal.moola@gmail.com> References: <20230627031431.29653-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Part of the conversions to replace pgtable pte constructor/destructors with ptdesc equivalents. Signed-off-by: Vishal Moola (Oracle) Acked-by: Mike Rapoport (IBM) --- arch/sparc/mm/srmmu.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/arch/sparc/mm/srmmu.c b/arch/sparc/mm/srmmu.c index 13f027afc875..8393faa3e596 100644 --- a/arch/sparc/mm/srmmu.c +++ b/arch/sparc/mm/srmmu.c @@ -355,7 +355,8 @@ pgtable_t pte_alloc_one(struct mm_struct *mm) return NULL; page = pfn_to_page(__nocache_pa((unsigned long)ptep) >> PAGE_SHIFT); spin_lock(&mm->page_table_lock); - if (page_ref_inc_return(page) == 2 && !pgtable_pte_page_ctor(page)) { + if (page_ref_inc_return(page) == 2 && + !pagetable_pte_ctor(page_ptdesc(page))) { page_ref_dec(page); ptep = NULL; } @@ -371,7 +372,7 @@ void pte_free(struct mm_struct *mm, pgtable_t ptep) page = pfn_to_page(__nocache_pa((unsigned long)ptep) >> PAGE_SHIFT); spin_lock(&mm->page_table_lock); if (page_ref_dec_return(page) == 1) - pgtable_pte_page_dtor(page); + pagetable_pte_dtor(page_ptdesc(page)); spin_unlock(&mm->page_table_lock); srmmu_free_nocache(ptep, SRMMU_PTE_TABLE_SIZE); -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Tue Jun 27 03:19:48 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 03:19:48 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555767.867892 (Exim 4.92) (envelope-from ) id 1qDzF5-0000FG-U3; Tue, 27 Jun 2023 03:19:47 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555767.867892; Tue, 27 Jun 2023 03:19:47 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDzF5-00008O-9j; Tue, 27 Jun 2023 03:19:47 +0000 Received: by outflank-mailman (input) for mailman id 555767; Tue, 27 Jun 2023 03:19:45 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDzBZ-0003uL-RT for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 03:16:09 +0000 Received: from mail-yw1-x1136.google.com (mail-yw1-x1136.google.com [2607:f8b0:4864:20::1136]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id f5139ae4-1498-11ee-8611-37d641c3527e; Tue, 27 Jun 2023 05:16:08 +0200 (CEST) Received: by mail-yw1-x1136.google.com with SMTP id 00721157ae682-56ff9cc91b4so44758637b3.0 for ; Mon, 26 Jun 2023 20:16:08 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::16]) by smtp.googlemail.com with ESMTPSA id s4-20020a0dd004000000b0057399b3bd26sm1614798ywd.33.2023.06.26.20.16.04 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 26 Jun 2023 20:16:06 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: f5139ae4-1498-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687835767; x=1690427767; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=0VT4pshsioiI3cvxCaccwxS3QnyiZywL9n+n1KwplTM=; b=BTT3Mzd5pMJTg1qQFpEMV1yFnXFEE6dhiGZIFIlGfqbhlgUNcX3lP+0Xoq0dD8MFSr RK3vHi5QnyAo7T8lNR0m2sSqGWtPBPRWNiWjHN3rFdDhGGO7T9MFTERmHBgNR4sgVMS+ JUT/NdTfBaBAKs5kycCS3l/TBhEAp+C90btW4rno0I/EAboZKF9q6wEak2gDddjsGCi1 q2GUAru2ftFNSTo28kLQL6bJa4wXILET/IeOTUMnQplkR5BiuM2QbQkizw1eBdbmDbmG 65E54NzNO8/RkUogmqdZk7khZ+p+IpCeUb+CDcGS40pgjK7sLmx4u40SPJ3RJUKs7fxl Kwyg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687835767; x=1690427767; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=0VT4pshsioiI3cvxCaccwxS3QnyiZywL9n+n1KwplTM=; b=HaFk2u3gE0v58AGvkfngA1HmrypaYXKxNomVt9wlewxfq7nOcMxwlGvnUqiumRpLvw CgYEf69KAinugeeXHXDUvdQu81h5oiLvN3pNIzr145h72vSdPLpD4mQEQ99+PLn4dS0A AhpsZ4Rz0XlhGFPZNoFrvFZ7nbTWgMtn1IgPEbBXrjYeJMdPIRQzqmobsAC1OLiWrYH7 pQbm7EF3lpdpK71wB5qQv6sXz15G1sTHPkB7wzaV2ETl8Uv7zOs5/sSEOGrxxtvH4MWY WjneL9QWNWxwakBeiUzYtqhENJa9AF6RIy/FgJNXvWvazFER6HI4gbN/xwJXvMyAgJ5F tEgA== X-Gm-Message-State: AC+VfDzLmIdAaTLKou4yjDAxjLNOYCT4wqyEfTg/gRVknPq5WiEAHMDN tLIjoOZSMT5jxyKCdCatFJo= X-Google-Smtp-Source: ACHHUZ4rZA4ZO6uIUbBCVKZtf01FpSGP007O6nK+owIo75GKh2wlbCSJx7/xiS4iS/AR11yVX11PjQ== X-Received: by 2002:a81:6d53:0:b0:570:6665:4646 with SMTP id i80-20020a816d53000000b0057066654646mr37647298ywc.1.1687835766960; Mon, 26 Jun 2023 20:16:06 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" , Paul Walmsley , Palmer Dabbelt , Mike Rapoport Subject: [PATCH v6 28/33] riscv: Convert alloc_{pmd, pte}_late() to use ptdescs Date: Mon, 26 Jun 2023 20:14:26 -0700 Message-Id: <20230627031431.29653-29-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230627031431.29653-1-vishal.moola@gmail.com> References: <20230627031431.29653-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit As part of the conversions to replace pgtable constructor/destructors with ptdesc equivalents, convert various page table functions to use ptdescs. Some of the functions use the *get*page*() helper functions. Convert these to use pagetable_alloc() and ptdesc_address() instead to help standardize page tables further. Signed-off-by: Vishal Moola (Oracle) Acked-by: Palmer Dabbelt Acked-by: Mike Rapoport (IBM) --- arch/riscv/include/asm/pgalloc.h | 8 ++++---- arch/riscv/mm/init.c | 16 ++++++---------- 2 files changed, 10 insertions(+), 14 deletions(-) diff --git a/arch/riscv/include/asm/pgalloc.h b/arch/riscv/include/asm/pgalloc.h index 59dc12b5b7e8..d169a4f41a2e 100644 --- a/arch/riscv/include/asm/pgalloc.h +++ b/arch/riscv/include/asm/pgalloc.h @@ -153,10 +153,10 @@ static inline pgd_t *pgd_alloc(struct mm_struct *mm) #endif /* __PAGETABLE_PMD_FOLDED */ -#define __pte_free_tlb(tlb, pte, buf) \ -do { \ - pgtable_pte_page_dtor(pte); \ - tlb_remove_page((tlb), pte); \ +#define __pte_free_tlb(tlb, pte, buf) \ +do { \ + pagetable_pte_dtor(page_ptdesc(pte)); \ + tlb_remove_page_ptdesc((tlb), page_ptdesc(pte));\ } while (0) #endif /* CONFIG_MMU */ diff --git a/arch/riscv/mm/init.c b/arch/riscv/mm/init.c index 4b95d8999120..efff9c752fcf 100644 --- a/arch/riscv/mm/init.c +++ b/arch/riscv/mm/init.c @@ -354,12 +354,10 @@ static inline phys_addr_t __init alloc_pte_fixmap(uintptr_t va) static phys_addr_t __init alloc_pte_late(uintptr_t va) { - unsigned long vaddr; - - vaddr = __get_free_page(GFP_KERNEL); - BUG_ON(!vaddr || !pgtable_pte_page_ctor(virt_to_page((void *)vaddr))); + struct ptdesc *ptdesc = pagetable_alloc(GFP_KERNEL & ~__GFP_HIGHMEM, 0); - return __pa(vaddr); + BUG_ON(!ptdesc || !pagetable_pte_ctor(ptdesc)); + return __pa((pte_t *)ptdesc_address(ptdesc)); } static void __init create_pte_mapping(pte_t *ptep, @@ -437,12 +435,10 @@ static phys_addr_t __init alloc_pmd_fixmap(uintptr_t va) static phys_addr_t __init alloc_pmd_late(uintptr_t va) { - unsigned long vaddr; - - vaddr = __get_free_page(GFP_KERNEL); - BUG_ON(!vaddr || !pgtable_pmd_page_ctor(virt_to_page((void *)vaddr))); + struct ptdesc *ptdesc = pagetable_alloc(GFP_KERNEL & ~__GFP_HIGHMEM, 0); - return __pa(vaddr); + BUG_ON(!ptdesc || !pagetable_pmd_ctor(ptdesc)); + return __pa((pmd_t *)ptdesc_address(ptdesc)); } static void __init create_pmd_mapping(pmd_t *pmdp, -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Tue Jun 27 03:19:49 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 03:19:49 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555768.867898 (Exim 4.92) (envelope-from ) id 1qDzF6-0000Xt-TY; Tue, 27 Jun 2023 03:19:48 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555768.867898; Tue, 27 Jun 2023 03:19:48 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDzF6-0000Qc-CL; Tue, 27 Jun 2023 03:19:48 +0000 Received: by outflank-mailman (input) for mailman id 555768; Tue, 27 Jun 2023 03:19:45 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDzBS-0003pv-OC for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 03:16:02 +0000 Received: from mail-yw1-x112e.google.com (mail-yw1-x112e.google.com [2607:f8b0:4864:20::112e]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id f16409a2-1498-11ee-b237-6b7b168915f2; Tue, 27 Jun 2023 05:16:01 +0200 (CEST) Received: by mail-yw1-x112e.google.com with SMTP id 00721157ae682-56ff9cc91b4so44757757b3.0 for ; Mon, 26 Jun 2023 20:16:01 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::16]) by smtp.googlemail.com with ESMTPSA id s4-20020a0dd004000000b0057399b3bd26sm1614798ywd.33.2023.06.26.20.15.58 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 26 Jun 2023 20:16:00 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: f16409a2-1498-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687835761; x=1690427761; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=Z2eVDlXL8alglJUGVXcc8JA7ix0brgT+4DYqdXjkOuM=; b=Rm5e85CxLSywqFxegbM92lF42neHfR0fR+lQK4IGVo6rv84p4nUjka/pX4hUXrlpwO WD89hdl3l7+Q82fCWDirVtfl1UdPVGFAIR8Pji+LBlOshyqJG18LS5xzOpOCQe2DamDu jKvOLad62fOFII4Rcx9NR2LrprdDjwL6rx6EBRmhcfI68ty/WxtUVuYaOl3yyA6VAcm8 kllPQdGN+P459ax9lvyxifjF3Qc52jw7EuJ0L5rjpr2rzqsA5k+0IGd/73X59eOaGEjw K+/CutY1Ags92Fdl/Y8Zq5PhNziANc4vxThpN5vTFQCoz8gt8gqyoqM1KvT2g/UvZYfQ zR+w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687835761; x=1690427761; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=Z2eVDlXL8alglJUGVXcc8JA7ix0brgT+4DYqdXjkOuM=; b=UPcnxp0V/w1G17fgqfSjN2wtzzfmGNCFr3nnYQytpU0taUSyScEXsmydEYy6L+2slS uirqYp8Mio/rZHcbu7/b2zWMyfphguRSm9tCuYCDnt1/in+atggAuRQ0qw931Ni0vT6l hzNL8bDa6ZZDXzzwuu5YLjtT32mTVXUmcFNChrSaDMsKcplw0lg6n6XpcPOGwY7NF8fU KI+V84X+tYGUuUa4zNWW1yGn/sKYtq+gI4S3enRwIOTQ2l6zW1hcTiMgGn5nCwg3pnR3 L9usW50+ewnyYzvYfk+Ji1YBAoEKx6+wtgPDLpyHFdVRIrcRx/pGjOJkUg0maqED5nhM OpDw== X-Gm-Message-State: AC+VfDw26rYr98CI0CyLl30okRWGjpzxi+pyFH0zaUZMDoOoi0gUQV/v 3d8yvhg5E7pPicxk4RtEnGM= X-Google-Smtp-Source: ACHHUZ7ohgVca4eugfFM/saLKJ40V7MYdUNGfKx6MOO12TR+JS8tS/aqfK1zXJTwp/W9GOKug+ymcA== X-Received: by 2002:a0d:d8c2:0:b0:565:8c16:a0e1 with SMTP id a185-20020a0dd8c2000000b005658c16a0e1mr39842823ywe.13.1687835760682; Mon, 26 Jun 2023 20:16:00 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" , Thomas Bogendoerfer , Mike Rapoport Subject: [PATCH v6 25/33] mips: Convert various functions to use ptdescs Date: Mon, 26 Jun 2023 20:14:23 -0700 Message-Id: <20230627031431.29653-26-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230627031431.29653-1-vishal.moola@gmail.com> References: <20230627031431.29653-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit As part of the conversions to replace pgtable constructor/destructors with ptdesc equivalents, convert various page table functions to use ptdescs. Some of the functions use the *get*page*() helper functions. Convert these to use pagetable_alloc() and ptdesc_address() instead to help standardize page tables further. Signed-off-by: Vishal Moola (Oracle) Acked-by: Mike Rapoport (IBM) --- arch/mips/include/asm/pgalloc.h | 32 ++++++++++++++++++-------------- arch/mips/mm/pgtable.c | 8 +++++--- 2 files changed, 23 insertions(+), 17 deletions(-) diff --git a/arch/mips/include/asm/pgalloc.h b/arch/mips/include/asm/pgalloc.h index f72e737dda21..40e40a7eb94a 100644 --- a/arch/mips/include/asm/pgalloc.h +++ b/arch/mips/include/asm/pgalloc.h @@ -51,13 +51,13 @@ extern pgd_t *pgd_alloc(struct mm_struct *mm); static inline void pgd_free(struct mm_struct *mm, pgd_t *pgd) { - free_pages((unsigned long)pgd, PGD_TABLE_ORDER); + pagetable_free(virt_to_ptdesc(pgd)); } -#define __pte_free_tlb(tlb,pte,address) \ -do { \ - pgtable_pte_page_dtor(pte); \ - tlb_remove_page((tlb), pte); \ +#define __pte_free_tlb(tlb, pte, address) \ +do { \ + pagetable_pte_dtor(page_ptdesc(pte)); \ + tlb_remove_page_ptdesc((tlb), page_ptdesc(pte)); \ } while (0) #ifndef __PAGETABLE_PMD_FOLDED @@ -65,18 +65,18 @@ do { \ static inline pmd_t *pmd_alloc_one(struct mm_struct *mm, unsigned long address) { pmd_t *pmd; - struct page *pg; + struct ptdesc *ptdesc; - pg = alloc_pages(GFP_KERNEL_ACCOUNT, PMD_TABLE_ORDER); - if (!pg) + ptdesc = pagetable_alloc(GFP_KERNEL_ACCOUNT, PMD_TABLE_ORDER); + if (!ptdesc) return NULL; - if (!pgtable_pmd_page_ctor(pg)) { - __free_pages(pg, PMD_TABLE_ORDER); + if (!pagetable_pmd_ctor(ptdesc)) { + pagetable_free(ptdesc); return NULL; } - pmd = (pmd_t *)page_address(pg); + pmd = ptdesc_address(ptdesc); pmd_init(pmd); return pmd; } @@ -90,10 +90,14 @@ static inline pmd_t *pmd_alloc_one(struct mm_struct *mm, unsigned long address) static inline pud_t *pud_alloc_one(struct mm_struct *mm, unsigned long address) { pud_t *pud; + struct ptdesc *ptdesc = pagetable_alloc(GFP_KERNEL & ~__GFP_HIGHMEM, + PUD_TABLE_ORDER); - pud = (pud_t *) __get_free_pages(GFP_KERNEL, PUD_TABLE_ORDER); - if (pud) - pud_init(pud); + if (!ptdesc) + return NULL; + pud = ptdesc_address(ptdesc); + + pud_init(pud); return pud; } diff --git a/arch/mips/mm/pgtable.c b/arch/mips/mm/pgtable.c index b13314be5d0e..1506e458040d 100644 --- a/arch/mips/mm/pgtable.c +++ b/arch/mips/mm/pgtable.c @@ -10,10 +10,12 @@ pgd_t *pgd_alloc(struct mm_struct *mm) { - pgd_t *ret, *init; + pgd_t *init, *ret = NULL; + struct ptdesc *ptdesc = pagetable_alloc(GFP_KERNEL & ~__GFP_HIGHMEM, + PGD_TABLE_ORDER); - ret = (pgd_t *) __get_free_pages(GFP_KERNEL, PGD_TABLE_ORDER); - if (ret) { + if (ptdesc) { + ret = ptdesc_address(ptdesc); init = pgd_offset(&init_mm, 0UL); pgd_init(ret); memcpy(ret + USER_PTRS_PER_PGD, init + USER_PTRS_PER_PGD, -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Tue Jun 27 03:19:52 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 03:19:52 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555769.867906 (Exim 4.92) (envelope-from ) id 1qDzF9-0000t5-G3; Tue, 27 Jun 2023 03:19:51 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555769.867906; Tue, 27 Jun 2023 03:19:50 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDzF7-0000ne-PN; Tue, 27 Jun 2023 03:19:49 +0000 Received: by outflank-mailman (input) for mailman id 555769; Tue, 27 Jun 2023 03:19:46 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDzBC-0003uL-JJ for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 03:15:46 +0000 Received: from mail-yw1-x112e.google.com (mail-yw1-x112e.google.com [2607:f8b0:4864:20::112e]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id e7378e54-1498-11ee-8611-37d641c3527e; Tue, 27 Jun 2023 05:15:44 +0200 (CEST) Received: by mail-yw1-x112e.google.com with SMTP id 00721157ae682-57015b368c3so30867587b3.3 for ; Mon, 26 Jun 2023 20:15:44 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::16]) by smtp.googlemail.com with ESMTPSA id s4-20020a0dd004000000b0057399b3bd26sm1614798ywd.33.2023.06.26.20.15.41 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 26 Jun 2023 20:15:43 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: e7378e54-1498-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687835744; x=1690427744; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=nccUzLka7Xkr4OuMpYk05u/KaIGQrzDFYQttz/vcmHQ=; b=HLcNThhCjrF2lW2DbUB2arEo4ko3B6allhXZIcElXjdr6H7L2X1FZfSho548An2x+c a+9K7HsBcoezl8dCiHuvfAoLyrYuTYtD9E2TWwaVAxGHkBxxc2/5TZ6nFsMXNvk6remM jx+8EfWgo0KYBg7GjeDiKlLbwiB7jM460FpLAi7tKdSlKxxDWqFHsa1UXC/mbPJcCtbU yj4Rp4J3hy1xGdNYGZKCLJPZo1cDJDTZZ/8LhFsRol7Jja96ui1kFTq+O1Fx747WJ4sF vLKKmUtgz/Vt/5vQzW3HaVNESXDRtjCa2KGe7DVgUo3lXiMXBnrUqjQNRU6qXKgQgpLj HQ8Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687835744; x=1690427744; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=nccUzLka7Xkr4OuMpYk05u/KaIGQrzDFYQttz/vcmHQ=; b=PQyyEWNzJwpkLeuOaEnnWFeHseNg9p/XN0Jhl4VdH9Vaymd3oti/qmf3FQpyHAJ44t XIeRDzUW/Ip8l+vo7TiBaU8tqYi2eIO2vHqES3/Xd2oBIzP0Y9nTHTx0nIIlcMeik8Hg uuhDGfqbeQuMOCMQli+j3He4Aq3fa/BkTlkmPC3q6ZrWGRb5tCtofbHNRBbtSff7Gglf vtTeWEgSu+rcDK/dwRevvrKjapfl5rEl5F06doqa+UjZ48u1Zt1T/J43V1/hNIDUxK/R 9XQa2in3vJTQbMW712gquXq+0s+BNvo4+SjzxKM7y3SiMYco5lGuOVqYjJ9xf1CapiLI 42CA== X-Gm-Message-State: AC+VfDxb++NdYXwufC8QhY/Zz1Osrf+PTRgG0+BIj/KksH069As7XEwg 5kmCKyVKw+gYN4m3GFbVLKw= X-Google-Smtp-Source: ACHHUZ4vo/lElRqyF24hRbACCzJ93507ECpcyy5/0zyyAPcDbkzDTEVAwpHPMKxzXN5UZzQtaYrpVQ== X-Received: by 2002:a81:6bc5:0:b0:576:8fcd:270f with SMTP id g188-20020a816bc5000000b005768fcd270fmr7059365ywc.19.1687835743726; Mon, 26 Jun 2023 20:15:43 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" , Mike Rapoport Subject: [PATCH v6 17/33] mm: Remove page table members from struct page Date: Mon, 26 Jun 2023 20:14:15 -0700 Message-Id: <20230627031431.29653-18-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230627031431.29653-1-vishal.moola@gmail.com> References: <20230627031431.29653-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit The page table members are now split out into their own ptdesc struct. Remove them from struct page. Signed-off-by: Vishal Moola (Oracle) Acked-by: Mike Rapoport (IBM) --- include/linux/mm_types.h | 14 -------------- include/linux/pgtable.h | 3 --- 2 files changed, 17 deletions(-) diff --git a/include/linux/mm_types.h b/include/linux/mm_types.h index fbbe4e93a9ba..434e54440686 100644 --- a/include/linux/mm_types.h +++ b/include/linux/mm_types.h @@ -141,20 +141,6 @@ struct page { struct { /* Tail pages of compound page */ unsigned long compound_head; /* Bit zero is set */ }; - struct { /* Page table pages */ - unsigned long _pt_pad_1; /* compound_head */ - pgtable_t pmd_huge_pte; /* protected by page->ptl */ - unsigned long _pt_s390_gaddr; /* mapping */ - union { - struct mm_struct *pt_mm; /* x86 pgds only */ - atomic_t pt_frag_refcount; /* powerpc */ - }; -#if ALLOC_SPLIT_PTLOCKS - spinlock_t *ptl; -#else - spinlock_t ptl; -#endif - }; struct { /* ZONE_DEVICE pages */ /** @pgmap: Points to the hosting device page map. */ struct dev_pagemap *pgmap; diff --git a/include/linux/pgtable.h b/include/linux/pgtable.h index e9bb5f18cade..daeacfe3930d 100644 --- a/include/linux/pgtable.h +++ b/include/linux/pgtable.h @@ -1044,10 +1044,7 @@ struct ptdesc { TABLE_MATCH(flags, __page_flags); TABLE_MATCH(compound_head, pt_list); TABLE_MATCH(compound_head, _pt_pad_1); -TABLE_MATCH(pmd_huge_pte, pmd_huge_pte); TABLE_MATCH(mapping, _pt_s390_gaddr); -TABLE_MATCH(pt_mm, pt_mm); -TABLE_MATCH(ptl, ptl); TABLE_MATCH(rcu_head, pt_rcu_head); #ifdef CONFIG_MEMCG TABLE_MATCH(memcg_data, pt_memcg_data); -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Tue Jun 27 03:19:52 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 03:19:52 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555772.867910 (Exim 4.92) (envelope-from ) id 1qDzFA-0001Ck-4Q; Tue, 27 Jun 2023 03:19:52 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555772.867910; Tue, 27 Jun 2023 03:19:51 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDzF9-00018f-EK; Tue, 27 Jun 2023 03:19:51 +0000 Received: by outflank-mailman (input) for mailman id 555772; Tue, 27 Jun 2023 03:19:47 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDzBe-0003uL-3M for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 03:16:14 +0000 Received: from mail-yw1-x1133.google.com (mail-yw1-x1133.google.com [2607:f8b0:4864:20::1133]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id f7acb9b7-1498-11ee-8611-37d641c3527e; Tue, 27 Jun 2023 05:16:12 +0200 (CEST) Received: by mail-yw1-x1133.google.com with SMTP id 00721157ae682-570877f7838so42437077b3.0 for ; Mon, 26 Jun 2023 20:16:12 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::16]) by smtp.googlemail.com with ESMTPSA id s4-20020a0dd004000000b0057399b3bd26sm1614798ywd.33.2023.06.26.20.16.09 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 26 Jun 2023 20:16:10 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: f7acb9b7-1498-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687835771; x=1690427771; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=2x+E7/HO6cxS1FKNHsH+YAjV99GeoJ7wX0XOkEEtc8g=; b=PChVo0lfe7Am1Juwq3iG7RGGrP0XqVtToprVlSbVPrmyTboyAd49pm1+evSB9B2tFw kXjlu6Q/E8ApcKDqDyfQ8SExeWZmFlXQXipKcu1XJWfNM69YhOWXhf3ISbUTXIBhFgb0 96QCzhEZra+XSmonTSpvrhyWNfhcBtgM1hIeMstisaUf5aqytakahkQIURxFAuMmzadV 6ZXbtsztDtfR61NxP+OmIDHBWYbrG0Ze8ny7+vi6zis0kg+kLkgyVN6ua8e4P9XYJM+O StKP4NZwkZwEtlTvPnxWtxrHSt+7T/pJDNCTHMVfEfjXHYKpAk/tbkRioOk7ft8zrct2 Kzpg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687835771; x=1690427771; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=2x+E7/HO6cxS1FKNHsH+YAjV99GeoJ7wX0XOkEEtc8g=; b=Nwtl5I69LlzGrWLJw47wC+zhZ2w5Mzdo+UsN3U8yoqL0RcYpwprz+yvcE9OjD11sfs 8meNbTB2ACvlhj2ham4n+7BtK9TKaDQeP7aSZPwvPxV0KMRRvYqkKIIMYbEko+Tr40Uy dEnnikZRZnnqLFiojvTe6V2YepMIsB5qRubz4d8kEjrXGCkoJnFAh4pA1TC3fSxhtWG6 9IFVYHGMtUHY0kuuHavOQIMLXlYkwxy2eWjY3wrkOTUSAle7U3hbtDb7pzH0Z8r4VF22 OxgDYSx7C3RhxNIk3mEPtCt199b5Cix4WUiFrfKc3DpDNKIrY1jib+Dgd47F3PrsV5Yc sd6w== X-Gm-Message-State: AC+VfDwl9krIGKMak2NAkCxJRco/lZtRhJvIFo2MDBO2JosbcZE7ZsED O3qN6IsT8WhAHm0EDhifjMY= X-Google-Smtp-Source: ACHHUZ6W45+nYYtPli9FO9SD+YRunw+Uuhdk8hdZzeF/68wsjhLAFg0GoFHHxkB57Ykeq0XvBZGu+Q== X-Received: by 2002:a0d:e293:0:b0:561:d25b:672a with SMTP id l141-20020a0de293000000b00561d25b672amr31395214ywe.21.1687835771352; Mon, 26 Jun 2023 20:16:11 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" , "David S. Miller" , Mike Rapoport Subject: [PATCH v6 30/33] sparc64: Convert various functions to use ptdescs Date: Mon, 26 Jun 2023 20:14:28 -0700 Message-Id: <20230627031431.29653-31-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230627031431.29653-1-vishal.moola@gmail.com> References: <20230627031431.29653-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit As part of the conversions to replace pgtable constructor/destructors with ptdesc equivalents, convert various page table functions to use ptdescs. Signed-off-by: Vishal Moola (Oracle) Acked-by: Mike Rapoport (IBM) --- arch/sparc/mm/init_64.c | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/arch/sparc/mm/init_64.c b/arch/sparc/mm/init_64.c index 04f9db0c3111..105915cd2eee 100644 --- a/arch/sparc/mm/init_64.c +++ b/arch/sparc/mm/init_64.c @@ -2893,14 +2893,15 @@ pte_t *pte_alloc_one_kernel(struct mm_struct *mm) pgtable_t pte_alloc_one(struct mm_struct *mm) { - struct page *page = alloc_page(GFP_KERNEL | __GFP_ZERO); - if (!page) + struct ptdesc *ptdesc = pagetable_alloc(GFP_KERNEL | __GFP_ZERO, 0); + + if (!ptdesc) return NULL; - if (!pgtable_pte_page_ctor(page)) { - __free_page(page); + if (!pagetable_pte_ctor(ptdesc)) { + pagetable_free(ptdesc); return NULL; } - return (pte_t *) page_address(page); + return ptdesc_address(ptdesc); } void pte_free_kernel(struct mm_struct *mm, pte_t *pte) @@ -2910,10 +2911,10 @@ void pte_free_kernel(struct mm_struct *mm, pte_t *pte) static void __pte_free(pgtable_t pte) { - struct page *page = virt_to_page(pte); + struct ptdesc *ptdesc = virt_to_ptdesc(pte); - pgtable_pte_page_dtor(page); - __free_page(page); + pagetable_pte_dtor(ptdesc); + pagetable_free(ptdesc); } void pte_free(struct mm_struct *mm, pgtable_t pte) -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Tue Jun 27 03:19:55 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 03:19:55 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555781.867921 (Exim 4.92) (envelope-from ) id 1qDzFC-0001sJ-O0; Tue, 27 Jun 2023 03:19:54 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555781.867921; Tue, 27 Jun 2023 03:19:54 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDzFC-0001np-2C; Tue, 27 Jun 2023 03:19:54 +0000 Received: by outflank-mailman (input) for mailman id 555781; Tue, 27 Jun 2023 03:19:51 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDzBI-0003uL-Vi for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 03:15:52 +0000 Received: from mail-yw1-x1132.google.com (mail-yw1-x1132.google.com [2607:f8b0:4864:20::1132]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id eb2284e1-1498-11ee-8611-37d641c3527e; Tue, 27 Jun 2023 05:15:51 +0200 (CEST) Received: by mail-yw1-x1132.google.com with SMTP id 00721157ae682-57083a06b71so40015537b3.1 for ; Mon, 26 Jun 2023 20:15:51 -0700 (PDT) Received: from unknowna0e70b2ca394.attlocal.net ([2600:1700:2f7d:1800::16]) by smtp.googlemail.com with ESMTPSA id s4-20020a0dd004000000b0057399b3bd26sm1614798ywd.33.2023.06.26.20.15.48 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 26 Jun 2023 20:15:49 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: eb2284e1-1498-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687835750; x=1690427750; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=1W6z1I6yvWrQZbHmgHYBEGZZDstSbvELOPET/EcKlKw=; b=VXFgZtILJXGVZEJYMvHJGtbDmmBoKn8mX0/dAC+EY4RvTpIsJK+gJ5UUjyLzd+tcaA Wa8E/Q/hReN0LGOCZNJ2CPK66hXv4CHL1RcwD7G2hwKgrVV+r9MdE8P4UKG8hPoTp4Um SIrbyRIEF8122yBtjbfkSdTM8KV9j17ll3YIHe1LlzxS/E/9XISE37/ArykIbO2T/+U0 rkTOBMVwTfe5aMKf0k+p5UGbW9JxArSdzVKMpa8hS9FCRAuPQzNFBaUszCNNpnt8LHI6 yAZrECaEr3SZfaO8vcK6fiSyK9T57SgwrpEkJPc2S/OPeKfITI7S9cxAkwbxJnf5XUxM do4Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687835750; x=1690427750; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=1W6z1I6yvWrQZbHmgHYBEGZZDstSbvELOPET/EcKlKw=; b=lY9IVkzeh4L+syuJ1XHMu1k08Sr+nCpIcGnsQmzL3SdfmPE8mo97QPzTQSSxh6FK9O b498MtjRKrXClHSa7HhKzlDNNdpOqmzCjWDLdP3ZakPVlnHO6aObmrLPAUd0I+W9T7Vm ljW//BrmMdvLtgycHiLDdoMDKHPMDOusAelaqsZD4+PT+4f6VEPMNzCM4kC3BwD10rep rXJQZjNR6/zKRtGZ9QA8VEZ0ELK1RlKF3UBSAkZ3hZATQ+nV1DqK4eo4t3EVFZredXVh iAtCt9vlc/1KLqyxr+8hb7kpU5Pm1w2eeEzuoTDFZ+0f3rna1yzRIvIwIcJQrYq4VHZ9 hyxQ== X-Gm-Message-State: AC+VfDywQMLo0bhWCV/BsMXvw7l/nG0oajli42IPO+5XEqkQmc5okAx7 oM1AxprMcrFnhoaJ0MUXSEG+CuB7CCPkaQ== X-Google-Smtp-Source: ACHHUZ5fFv9vf2BaGzqImDQ1UeHA1UgOFch4VJlKuLrykfvZA/f5SK3BTYMlrNUhfUsCVi2Zl8lSjg== X-Received: by 2002:a81:498a:0:b0:570:215b:190 with SMTP id w132-20020a81498a000000b00570215b0190mr27857555ywa.31.1687835750176; Mon, 26 Jun 2023 20:15:50 -0700 (PDT) From: "Vishal Moola (Oracle)" To: Andrew Morton , Matthew Wilcox Cc: linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , "Vishal Moola (Oracle)" , Catalin Marinas , Mike Rapoport Subject: [PATCH v6 20/33] arm64: Convert various functions to use ptdescs Date: Mon, 26 Jun 2023 20:14:18 -0700 Message-Id: <20230627031431.29653-21-vishal.moola@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230627031431.29653-1-vishal.moola@gmail.com> References: <20230627031431.29653-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit As part of the conversions to replace pgtable constructor/destructors with ptdesc equivalents, convert various page table functions to use ptdescs. Signed-off-by: Vishal Moola (Oracle) Acked-by: Mike Rapoport (IBM) Acked-by: Catalin Marinas --- arch/arm64/include/asm/tlb.h | 14 ++++++++------ arch/arm64/mm/mmu.c | 7 ++++--- 2 files changed, 12 insertions(+), 9 deletions(-) diff --git a/arch/arm64/include/asm/tlb.h b/arch/arm64/include/asm/tlb.h index c995d1f4594f..2c29239d05c3 100644 --- a/arch/arm64/include/asm/tlb.h +++ b/arch/arm64/include/asm/tlb.h @@ -75,18 +75,20 @@ static inline void tlb_flush(struct mmu_gather *tlb) static inline void __pte_free_tlb(struct mmu_gather *tlb, pgtable_t pte, unsigned long addr) { - pgtable_pte_page_dtor(pte); - tlb_remove_table(tlb, pte); + struct ptdesc *ptdesc = page_ptdesc(pte); + + pagetable_pte_dtor(ptdesc); + tlb_remove_ptdesc(tlb, ptdesc); } #if CONFIG_PGTABLE_LEVELS > 2 static inline void __pmd_free_tlb(struct mmu_gather *tlb, pmd_t *pmdp, unsigned long addr) { - struct page *page = virt_to_page(pmdp); + struct ptdesc *ptdesc = virt_to_ptdesc(pmdp); - pgtable_pmd_page_dtor(page); - tlb_remove_table(tlb, page); + pagetable_pmd_dtor(ptdesc); + tlb_remove_ptdesc(tlb, ptdesc); } #endif @@ -94,7 +96,7 @@ static inline void __pmd_free_tlb(struct mmu_gather *tlb, pmd_t *pmdp, static inline void __pud_free_tlb(struct mmu_gather *tlb, pud_t *pudp, unsigned long addr) { - tlb_remove_table(tlb, virt_to_page(pudp)); + tlb_remove_ptdesc(tlb, virt_to_ptdesc(pudp)); } #endif diff --git a/arch/arm64/mm/mmu.c b/arch/arm64/mm/mmu.c index 95d360805f8a..47781bec6171 100644 --- a/arch/arm64/mm/mmu.c +++ b/arch/arm64/mm/mmu.c @@ -426,6 +426,7 @@ static phys_addr_t __pgd_pgtable_alloc(int shift) static phys_addr_t pgd_pgtable_alloc(int shift) { phys_addr_t pa = __pgd_pgtable_alloc(shift); + struct ptdesc *ptdesc = page_ptdesc(phys_to_page(pa)); /* * Call proper page table ctor in case later we need to @@ -433,12 +434,12 @@ static phys_addr_t pgd_pgtable_alloc(int shift) * this pre-allocated page table. * * We don't select ARCH_ENABLE_SPLIT_PMD_PTLOCK if pmd is - * folded, and if so pgtable_pmd_page_ctor() becomes nop. + * folded, and if so pagetable_pte_ctor() becomes nop. */ if (shift == PAGE_SHIFT) - BUG_ON(!pgtable_pte_page_ctor(phys_to_page(pa))); + BUG_ON(!pagetable_pte_ctor(ptdesc)); else if (shift == PMD_SHIFT) - BUG_ON(!pgtable_pmd_page_ctor(phys_to_page(pa))); + BUG_ON(!pagetable_pmd_ctor(ptdesc)); return pa; } -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Tue Jun 27 03:28:53 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 03:28:53 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555809.867947 (Exim 4.92) (envelope-from ) id 1qDzNf-000783-3Y; Tue, 27 Jun 2023 03:28:39 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555809.867947; Tue, 27 Jun 2023 03:28:39 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDzNf-00077w-0a; Tue, 27 Jun 2023 03:28:39 +0000 Received: by outflank-mailman (input) for mailman id 555809; Tue, 27 Jun 2023 03:28:37 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDzNd-00077m-4F; Tue, 27 Jun 2023 03:28:37 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDzNc-0004NO-Q1; Tue, 27 Jun 2023 03:28:36 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDzNc-0003Z3-CZ; Tue, 27 Jun 2023 03:28:36 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qDzNc-0003kr-C6; Tue, 27 Jun 2023 03:28:36 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=KwQu8wz/5TQz6lRzm3mF9IyYVzrlBQigV806M1KGpOM=; b=HHtiA+p+Gpv3HPkizc/j06ONxB GNXVPV2sN5+JXOWIlH7qLKnw+2nnc9CxNjtPv4JgUUxpa8j9lAeAbWmGcRrQenLiRm43hAU4Mozkr 2ZN0rsARNrBPirfPjc3KOVneCOtG6QcGKiIFnq/dxcSCTFrqq26apu1vrShp3Um1rajs=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [ovmf test] 181606: all pass - PUSHED X-Osstest-Versions-This: ovmf=81cb0371f9db299048525cfd2a96d81a5c791568 X-Osstest-Versions-That: ovmf=638dfb4135441347f4bb8f242b4003a4e4395456 From: osstest service owner Date: Tue, 27 Jun 2023 03:28:36 +0000 flight 181606 ovmf real [real] http://logs.test-lab.xenproject.org/osstest/logs/181606/ Perfect :-) All tests in this flight passed as required version targeted for testing: ovmf 81cb0371f9db299048525cfd2a96d81a5c791568 baseline version: ovmf 638dfb4135441347f4bb8f242b4003a4e4395456 Last test of basis 181602 2023-06-26 11:42:13 Z 0 days Testing same since 181606 2023-06-27 01:12:10 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Ard Biesheuvel Oliver Steffen jobs: build-amd64-xsm pass build-i386-xsm pass build-amd64 pass build-i386 pass build-amd64-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-i386-pvops pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Pushing revision : To xenbits.xen.org:/home/xen/git/osstest/ovmf.git 638dfb4135..81cb0371f9 81cb0371f9db299048525cfd2a96d81a5c791568 -> xen-tested-master From xen-devel-bounces@lists.xenproject.org Tue Jun 27 04:00:33 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 04:00:33 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555840.867957 (Exim 4.92) (envelope-from ) id 1qDzsQ-0003V8-EV; Tue, 27 Jun 2023 04:00:26 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555840.867957; Tue, 27 Jun 2023 04:00:26 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDzsQ-0003V1-Br; Tue, 27 Jun 2023 04:00:26 +0000 Received: by outflank-mailman (input) for mailman id 555840; Tue, 27 Jun 2023 04:00:24 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDzsO-0003Ur-N2; Tue, 27 Jun 2023 04:00:24 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDzsO-0005Db-Dp; Tue, 27 Jun 2023 04:00:24 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qDzsN-00053l-Ux; Tue, 27 Jun 2023 04:00:24 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qDzsN-0006Aj-UP; Tue, 27 Jun 2023 04:00:23 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=MmZ7N2k/ejFnh3vffN9+9Lw91Wi/xxiGKt68gzFn0nQ=; b=fmodqbQTMZhG/sV3r8kDbwy+fw 5Lq97eidFK29xgfmymXkY9hH0SFYbEhpSUIv+dBvMXatytVk5oVLxJMUjsKrwp+OFWDMOrRhAB/iC Q7VZT8JUgc5K4cv5aZnqlUUV5VDbdZG09W7HRQnspKE2RoPJqY7Q9S3Is69MJrqhy6Lk=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [linux-linus test] 181605: regressions - FAIL X-Osstest-Failures: linux-linus:test-armhf-armhf-xl-credit1:xen-boot:fail:regression linux-linus:test-amd64-amd64-libvirt-qcow2:guest-start/debian.repeat:fail:heisenbug linux-linus:test-armhf-armhf-xl-arndale:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-raw:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-credit2:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-rtds:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking linux-linus:test-armhf-armhf-libvirt:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-examine:reboot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-qcow2:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-vhd:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-multivcpu:xen-boot:fail:nonblocking linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking linux-linus:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-qcow2:migrate-support-check:fail:nonblocking linux-linus:test-amd64-amd64-libvirt-raw:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: linux=a0433f8cae3ac51f59b4b1863032822aaa2d8164 X-Osstest-Versions-That: linux=6c538e1adbfc696ac4747fb10d63e704344f763d From: osstest service owner Date: Tue, 27 Jun 2023 04:00:23 +0000 flight 181605 linux-linus real [real] flight 181608 linux-linus real-retest [real] http://logs.test-lab.xenproject.org/osstest/logs/181605/ http://logs.test-lab.xenproject.org/osstest/logs/181608/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: test-armhf-armhf-xl-credit1 8 xen-boot fail REGR. vs. 180278 Tests which are failing intermittently (not blocking): test-amd64-amd64-libvirt-qcow2 19 guest-start/debian.repeat fail pass in 181608-retest Tests which did not succeed, but are not blocking: test-armhf-armhf-xl-arndale 8 xen-boot fail like 180278 test-armhf-armhf-xl 8 xen-boot fail like 180278 test-armhf-armhf-libvirt-raw 8 xen-boot fail like 180278 test-armhf-armhf-xl-credit2 8 xen-boot fail like 180278 test-armhf-armhf-xl-rtds 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 180278 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 180278 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 180278 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 180278 test-armhf-armhf-libvirt 8 xen-boot fail like 180278 test-armhf-armhf-examine 8 reboot fail like 180278 test-armhf-armhf-libvirt-qcow2 8 xen-boot fail like 180278 test-armhf-armhf-xl-vhd 8 xen-boot fail like 180278 test-armhf-armhf-xl-multivcpu 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 180278 test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-amd64-libvirt-qcow2 14 migrate-support-check fail never pass test-amd64-amd64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass version targeted for testing: linux a0433f8cae3ac51f59b4b1863032822aaa2d8164 baseline version: linux 6c538e1adbfc696ac4747fb10d63e704344f763d Last test of basis 180278 2023-04-16 19:41:46 Z 71 days Failing since 180281 2023-04-17 06:24:36 Z 70 days 134 attempts Testing same since 181605 2023-06-26 20:43:17 Z 0 days 1 attempts ------------------------------------------------------------ 2813 people touched revisions under test, not listing them all jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl fail test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-freebsd11-amd64 pass test-amd64-amd64-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale fail test-amd64-amd64-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 fail test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 fail test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine fail test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt fail test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu fail test-amd64-amd64-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-amd64-pygrub pass test-amd64-amd64-libvirt-qcow2 fail test-armhf-armhf-libvirt-qcow2 fail test-amd64-amd64-libvirt-raw pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw fail test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds fail test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-amd64-xl-vhd pass test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd fail ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 370680 lines long.) From xen-devel-bounces@lists.xenproject.org Tue Jun 27 04:44:41 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 04:44:41 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555846.867968 (Exim 4.92) (envelope-from ) id 1qE0Z1-0008B4-HR; Tue, 27 Jun 2023 04:44:27 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555846.867968; Tue, 27 Jun 2023 04:44:27 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE0Z1-0008Ax-E1; Tue, 27 Jun 2023 04:44:27 +0000 Received: by outflank-mailman (input) for mailman id 555846; Tue, 27 Jun 2023 04:44:26 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE0Z0-0008Ar-Ac for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 04:44:26 +0000 Received: from mail-yw1-x1134.google.com (mail-yw1-x1134.google.com [2607:f8b0:4864:20::1134]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 4812b8ce-14a5-11ee-8611-37d641c3527e; Tue, 27 Jun 2023 06:44:23 +0200 (CEST) Received: by mail-yw1-x1134.google.com with SMTP id 00721157ae682-5703d12ab9aso42541967b3.2 for ; Mon, 26 Jun 2023 21:44:21 -0700 (PDT) Received: from ripple.attlocal.net (172-10-233-147.lightspeed.sntcca.sbcglobal.net. [172.10.233.147]) by smtp.gmail.com with ESMTPSA id j8-20020a252308000000b00bf44703efd3sm1487805ybj.6.2023.06.26.21.44.17 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 26 Jun 2023 21:44:19 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 4812b8ce-14a5-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20221208; t=1687841060; x=1690433060; h=mime-version:references:message-id:in-reply-to:subject:cc:to:from :date:from:to:cc:subject:date:message-id:reply-to; bh=dVtrcXbE5qXWKdJhq2ArhetT4KPRpQBwbjTOuMnTdxE=; b=501HLYHctmk8sIJeTmzxhRx3/mgKpv1jRi1zyxe6IKd5PzvxEUvUlafEKoDqL6yZVr 8LPzltfzYfOsnNGE3T6BklB22lAMitCgdhFuhtcXDNR8cn90bt0hxS6/rFyMCnKABSjm /oRswCkgkHFa78/d8yQxqLAP7w+UcywLgaNVEk0kQUj/E5gzTgG4U1Ib/QTJ68K6B1lq DHiArvPKR0yaKTV4AcdaFGyA0a3QVzlRHTqcAyQmjJhyBDsZIisDj9Axezm4VTj3plhb Dus4mDTAcMi1b8nttzH3dDwb6//iZcVcKmqu+MryYnw/GG09jfr1xcEP4Qfwx6utRJkj zVzA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687841060; x=1690433060; h=mime-version:references:message-id:in-reply-to:subject:cc:to:from :date:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=dVtrcXbE5qXWKdJhq2ArhetT4KPRpQBwbjTOuMnTdxE=; b=ZtYjGbWWIOYDo69VpTlDwi6C98F3TP1VC/k84MFAkOAKfL2etDl4pmYTIT2tLspaO+ i/adSTUrV7BVwGTSzId10etUgAjjNQrngy4sS6bC59wmoPBWtvsqFn/YyJQYhpClDdGJ judhji+G6Lhy6D/26foUMm3T0SGpmzM7+2CSLcpUU4qUFV0PEmKYRmafSOkupzETbhpm GVhLn0Yzhr6xerOomak3CVrDOHMgaCDY1NGhSPzuyPNjqgGgoqTQlJW+HohI1ON3M3bl HfStm0VDDspBR5anwq858qHSsIsApxhnv6tUPS05eI1PoewKhNg9+zoIOqCNSQFcrKNb TLyw== X-Gm-Message-State: AC+VfDxvEohMl2Idq4AL7Ibno8JxMz8bjS6GuxWQW9C6XIczGkbDoMc3 H2E74Jc+GEHj3gqXLAgpgoZckg== X-Google-Smtp-Source: ACHHUZ4LBcIHJ/ynOcwzWzKYI9Mk2cjEWGfgZGpKdMoBZ7/XKupPMOzNiMbSCmgeKveyN334gs70/g== X-Received: by 2002:a81:7bc2:0:b0:56d:43cb:da98 with SMTP id w185-20020a817bc2000000b0056d43cbda98mr29864359ywc.29.1687841059932; Mon, 26 Jun 2023 21:44:19 -0700 (PDT) Date: Mon, 26 Jun 2023 21:44:08 -0700 (PDT) From: Hugh Dickins X-X-Sender: hugh@ripple.attlocal.net To: "Vishal Moola (Oracle)" cc: Andrew Morton , Matthew Wilcox , linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , Catalin Marinas , Huacai Chen , Geert Uytterhoeven , Thomas Bogendoerfer , Dinh Nguyen , Jonas Bonn , David Hildenbrand , Claudio Imbrenda , Paul Walmsley , "David S. Miller" , Richard Weinberger , Yoshinori Sato , Dave Hansen , Arnd Bergmann , Christophe Leroy Subject: Re: [PATCH v6 00/33] Split ptdesc from struct page In-Reply-To: <20230627031431.29653-1-vishal.moola@gmail.com> Message-ID: References: <20230627031431.29653-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII On Mon, 26 Jun 2023, Vishal Moola (Oracle) wrote: > The MM subsystem is trying to shrink struct page. This patchset > introduces a memory descriptor for page table tracking - struct ptdesc. ... > 39 files changed, 686 insertions(+), 455 deletions(-) I don't see the point of this patchset: to me it is just obfuscation of the present-day tight relationship between page table and struct page. Matthew already explained: > The intent is to get ptdescs to be dynamically allocated at some point > in the ~2-3 years out future when we have finished the folio project ... So in a kindly mood, I'd say that this patchset is ahead of its time. But I can certainly adapt to it, if everyone else sees some point to it. Hugh From xen-devel-bounces@lists.xenproject.org Tue Jun 27 05:48:09 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 05:48:09 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555851.867977 (Exim 4.92) (envelope-from ) id 1qE1YT-0006T8-2d; Tue, 27 Jun 2023 05:47:57 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555851.867977; Tue, 27 Jun 2023 05:47:57 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE1YT-0006T1-04; Tue, 27 Jun 2023 05:47:57 +0000 Received: by outflank-mailman (input) for mailman id 555851; Tue, 27 Jun 2023 05:47:55 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE1YR-0006Sv-Gt for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 05:47:55 +0000 Received: from mail-pg1-x533.google.com (mail-pg1-x533.google.com [2607:f8b0:4864:20::533]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 27919a11-14ae-11ee-b237-6b7b168915f2; Tue, 27 Jun 2023 07:47:52 +0200 (CEST) Received: by mail-pg1-x533.google.com with SMTP id 41be03b00d2f7-54290603887so1779782a12.1 for ; Mon, 26 Jun 2023 22:47:52 -0700 (PDT) Received: from server.roeck-us.net ([2600:1700:e321:62f0:329c:23ff:fee3:9d7c]) by smtp.gmail.com with ESMTPSA id je5-20020a170903264500b001b8004ff609sm3033756plb.270.2023.06.26.22.47.49 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 26 Jun 2023 22:47:50 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list X-Inumbo-ID: 27919a11-14ae-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687844871; x=1690436871; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:sender:from:to:cc:subject:date:message-id :reply-to; bh=bjTPMlxWt9nC/sXrGsrew1h8LID7KP4FRrxfXfknacs=; b=CKCXCuWl0gYpQ4q8YGqBYIHt4kiR1AhHpEiDPYQrq6u+C1EcCN199Rf+TEI2yZgN+R yHF4vksLQaZZNCW1AKLUCeBUhO/zz1T+Q9/6Dn0kQ15ZW6K5TqPmtUB9rSpHUKgxZgiA HSTUVKDZ4xM6L9+zGQEVzY8EH5rZJBCsvXHjcbbzvbKrE2StJxwwReSDEN5b3GfPvLfH eqtt0xPcEOboGwjNakJZJtyOpw0n8CltvqJLvaWUUnjMuBH5yNe38AlJDiG6mzZTOhDy hB/teSyin+eBzVwUgFatWumtP7LykGuBvZNNj+IJUNFfPVWNZBZUcFVQKEBMH4tHKOww HTig== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687844871; x=1690436871; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:sender:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=bjTPMlxWt9nC/sXrGsrew1h8LID7KP4FRrxfXfknacs=; b=LzUmAf01JDni4BM2DPKty5uuIs64B/I8Cem4tG6lIIlNBhuPGnmNP70XNAjfbhoVkY bGWqTY4wPkRHhd2l+Qg6yjZiCAW0BpD24UjDUP835fYHdOt7O4V2w2PNZFt+OE2B1EA/ qbb2TcZdJcvNeqGQT8vAoOWOaaXveu/1QYljMYGVC/5E/jTL3TVDn5N0DdLz9+fATOov v0/prQqDPPt1vQVdLW6rx3jxGGipBJoD5QixCl8J1KYDx6HFldkBDYFhMYGEtVoHnghr jgEeNr2ZnQksydDxTznBoimXcwqbVY+Fr/8FOrCXkzby9Rr0apsbxti9IwfKJQxrsalk Og1w== X-Gm-Message-State: AC+VfDwH3qOZLCeRiPB77HM23p8h8GooqSr/RI6P/4oUxfR1sLH2WovL rCgIHHZ//HuqEtKIvoHPsw4= X-Google-Smtp-Source: ACHHUZ7JjW8b6fgOe+JthCsQbs9/NjABXgCew6ba8g3n2m02um8mxuD9LeyNll8XOwuywhMwRgh5kw== X-Received: by 2002:a05:6a20:7491:b0:126:8ddd:d786 with SMTP id p17-20020a056a20749100b001268dddd786mr5575003pzd.46.1687844870738; Mon, 26 Jun 2023 22:47:50 -0700 (PDT) Sender: Guenter Roeck Date: Mon, 26 Jun 2023 22:47:49 -0700 From: Guenter Roeck To: "Vishal Moola (Oracle)" Cc: Andrew Morton , Matthew Wilcox , linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , Dinh Nguyen , Mike Rapoport Subject: Re: [PATCH v5 26/33] nios2: Convert __pte_free_tlb() to use ptdescs Message-ID: <13bab37c-0f0a-431a-8b67-4379bf4dc541@roeck-us.net> References: <20230622205745.79707-1-vishal.moola@gmail.com> <20230622205745.79707-27-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20230622205745.79707-27-vishal.moola@gmail.com> On Thu, Jun 22, 2023 at 01:57:38PM -0700, Vishal Moola (Oracle) wrote: > Part of the conversions to replace pgtable constructor/destructors with > ptdesc equivalents. > > Signed-off-by: Vishal Moola (Oracle) > Acked-by: Mike Rapoport (IBM) This patch causes all nios2 builds to fail. Building nios2:allnoconfig ... failed -------------- Error log: :1519:2: warning: #warning syscall clone3 not implemented [-Wcpp] In file included from mm/memory.c:85: mm/memory.c: In function 'free_pte_range': arch/nios2/include/asm/pgalloc.h:33:17: error: implicit declaration of function 'pagetable_pte_dtor'; did you mean 'pgtable_pte_page_dtor'? [-Werror=implicit-function-declaration] 33 | pagetable_pte_dtor(page_ptdesc(pte)); \ | ^~~~~~~~~~~~~~~~~~ include/asm-generic/tlb.h:666:17: note: in expansion of macro '__pte_free_tlb' 666 | __pte_free_tlb(tlb, ptep, address); \ | ^~~~~~~~~~~~~~ mm/memory.c:193:9: note: in expansion of macro 'pte_free_tlb' 193 | pte_free_tlb(tlb, token, addr); | ^~~~~~~~~~~~ arch/nios2/include/asm/pgalloc.h:33:36: error: implicit declaration of function 'page_ptdesc' [-Werror=implicit-function-declaration] 33 | pagetable_pte_dtor(page_ptdesc(pte)); \ | ^~~~~~~~~~~ include/asm-generic/tlb.h:666:17: note: in expansion of macro '__pte_free_tlb' 666 | __pte_free_tlb(tlb, ptep, address); \ | ^~~~~~~~~~~~~~ mm/memory.c:193:9: note: in expansion of macro 'pte_free_tlb' 193 | pte_free_tlb(tlb, token, addr); | ^~~~~~~~~~~~ arch/nios2/include/asm/pgalloc.h:34:17: error: implicit declaration of function 'tlb_remove_page_ptdesc'; did you mean 'tlb_remove_page_size'? [-Werror=implicit-function-declaration] 34 | tlb_remove_page_ptdesc((tlb), (page_ptdesc(pte))); \ | ^~~~~~~~~~~~~~~~~~~~~~ include/asm-generic/tlb.h:666:17: note: in expansion of macro '__pte_free_tlb' 666 | __pte_free_tlb(tlb, ptep, address); \ | ^~~~~~~~~~~~~~ mm/memory.c:193:9: note: in expansion of macro 'pte_free_tlb' 193 | pte_free_tlb(tlb, token, addr); > --- > arch/nios2/include/asm/pgalloc.h | 8 ++++---- > 1 file changed, 4 insertions(+), 4 deletions(-) > > diff --git a/arch/nios2/include/asm/pgalloc.h b/arch/nios2/include/asm/pgalloc.h > index ecd1657bb2ce..ce6bb8e74271 100644 > --- a/arch/nios2/include/asm/pgalloc.h > +++ b/arch/nios2/include/asm/pgalloc.h > @@ -28,10 +28,10 @@ static inline void pmd_populate(struct mm_struct *mm, pmd_t *pmd, > > extern pgd_t *pgd_alloc(struct mm_struct *mm); > > -#define __pte_free_tlb(tlb, pte, addr) \ > - do { \ > - pgtable_pte_page_dtor(pte); \ > - tlb_remove_page((tlb), (pte)); \ > +#define __pte_free_tlb(tlb, pte, addr) \ > + do { \ > + pagetable_pte_dtor(page_ptdesc(pte)); \ > + tlb_remove_page_ptdesc((tlb), (page_ptdesc(pte))); \ > } while (0) > > #endif /* _ASM_NIOS2_PGALLOC_H */ > -- > 2.40.1 > > From xen-devel-bounces@lists.xenproject.org Tue Jun 27 06:09:18 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 06:09:18 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555857.867987 (Exim 4.92) (envelope-from ) id 1qE1t0-0000dk-SM; Tue, 27 Jun 2023 06:09:10 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555857.867987; Tue, 27 Jun 2023 06:09:10 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE1t0-0000dd-PF; Tue, 27 Jun 2023 06:09:10 +0000 Received: by outflank-mailman (input) for mailman id 555857; Tue, 27 Jun 2023 06:09:09 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE1sz-0000dX-HN for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 06:09:09 +0000 Received: from smtp-out1.suse.de (smtp-out1.suse.de [195.135.220.28]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 2019a569-14b1-11ee-b237-6b7b168915f2; Tue, 27 Jun 2023 08:09:07 +0200 (CEST) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by smtp-out1.suse.de (Postfix) with ESMTPS id 2F71421864; Tue, 27 Jun 2023 06:09:07 +0000 (UTC) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id 02BE813276; Tue, 27 Jun 2023 06:09:06 +0000 (UTC) Received: from dovecot-director2.suse.de ([192.168.254.65]) by imap2.suse-dmz.suse.de with ESMTPSA id pJK6OgJ9mmQ3dQAAMHmgww (envelope-from ); Tue, 27 Jun 2023 06:09:06 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 2019a569-14b1-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1; t=1687846147; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version: content-transfer-encoding:content-transfer-encoding; bh=49rhAYE/xDlCYNBwhU7TuEWvhe0toiSWL8jdPfXh+RE=; b=cz72qwCW1DHGJlJCOq5CadsH+lvtWSSZsLPRBS9gsiuaIbaeOz+kojb79E0r1dlgemJ3Y/ kXeUBRLWE6lLbHvpv4FzDGwvpH79MFNS6Jj5TGx4ZtYpW8aTDCf7CXAwXtImocaolSnIp0 MivRQy1UhE+TjukfCoo6B/fdvwdlu0A= From: Juergen Gross To: torvalds@linux-foundation.org Cc: linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org, sstabellini@kernel.org Subject: [GIT PULL] xen: branch for v6.5-rc1 Date: Tue, 27 Jun 2023 08:09:06 +0200 Message-Id: <20230627060906.14981-1-jgross@suse.com> X-Mailer: git-send-email 2.35.3 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Linus, Please git pull the following tag: git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip.git for-linus-6.5-rc1-tag xen: branch for v6.5-rc1 It contains the following patches: - 3 patches adding missing prototypes - a fix for finding the iBFT in a Xen dom0 for supporting discless iSCSI boot Thanks. Juergen arch/x86/kernel/setup.c | 2 +- arch/x86/xen/efi.c | 2 ++ arch/x86/xen/mmu_pv.c | 16 ++++++++++++++++ arch/x86/xen/setup.c | 28 +++++++++++++++++++--------- arch/x86/xen/smp.h | 4 ++++ arch/x86/xen/smp_pv.c | 1 - arch/x86/xen/xen-ops.h | 5 +++-- drivers/firmware/iscsi_ibft_find.c | 26 +++++++++++++++++--------- include/linux/iscsi_ibft.h | 10 +++++++++- include/xen/events.h | 3 +++ include/xen/xen.h | 3 +++ 11 files changed, 77 insertions(+), 23 deletions(-) Arnd Bergmann (2): xen: xen_debug_interrupt prototype to global header x86: xen: add missing prototypes Juergen Gross (1): x86/xen: add prototypes for paravirt mmu functions Ross Lagerwall (1): iscsi_ibft: Fix finding the iBFT under Xen Dom 0 From xen-devel-bounces@lists.xenproject.org Tue Jun 27 07:05:18 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 07:05:18 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555862.867998 (Exim 4.92) (envelope-from ) id 1qE2l5-00074y-0J; Tue, 27 Jun 2023 07:05:03 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555862.867998; Tue, 27 Jun 2023 07:05:02 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE2l4-00074r-Tm; Tue, 27 Jun 2023 07:05:02 +0000 Received: by outflank-mailman (input) for mailman id 555862; Tue, 27 Jun 2023 07:05:02 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE2l4-00074l-2g for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 07:05:02 +0000 Received: from smtp-out2.suse.de (smtp-out2.suse.de [195.135.220.29]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id ec0b729d-14b8-11ee-8611-37d641c3527e; Tue, 27 Jun 2023 09:04:56 +0200 (CEST) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by smtp-out2.suse.de (Postfix) with ESMTPS id 3FE111F8BA; Tue, 27 Jun 2023 07:04:56 +0000 (UTC) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id EFF7313462; Tue, 27 Jun 2023 07:04:55 +0000 (UTC) Received: from dovecot-director2.suse.de ([192.168.254.65]) by imap2.suse-dmz.suse.de with ESMTPSA id L/rQOBeKmmTNEAAAMHmgww (envelope-from ); Tue, 27 Jun 2023 07:04:55 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: ec0b729d-14b8-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1; t=1687849496; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=JbVvGd8Ypf9Dg3FeuffhhjHqA1IzrhFctCXgoKplMvY=; b=nBUdk9Q9e0+zTt1u3kb3v5l/bCR12Wz5yf1n+Q2DajC8XKkX55lHObRomf8Cuoi4J/yl4T M1vp076FwTLSoPrEBg0HT+R0DiQMUfUl6EvD4siAzYL8S4iu/GyBkMhvGX3NPNkhUho9se U1VI6sXUcv4F8tqPnqCPukGJIzp3zBE= Message-ID: Date: Tue, 27 Jun 2023 09:04:55 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH 1/1] doc: clarify intended usage of ~/control/ xentore path Content-Language: en-US To: Julien Grall , Yann Dirson , xen-devel@lists.xenproject.org Cc: Andrew Cooper , George Dunlap , Jan Beulich , Stefano Stabellini , Wei Liu References: <20230531103427.1551719-1-yann.dirson@vates.fr> <20230531103427.1551719-2-yann.dirson@vates.fr> From: Juergen Gross In-Reply-To: Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="------------Zv90Zum6ayqTnb0bVkxU1qzn" This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --------------Zv90Zum6ayqTnb0bVkxU1qzn Content-Type: multipart/mixed; boundary="------------3uv83bdeqdBZKA7lnu0pcm4u"; protected-headers="v1" From: Juergen Gross To: Julien Grall , Yann Dirson , xen-devel@lists.xenproject.org Cc: Andrew Cooper , George Dunlap , Jan Beulich , Stefano Stabellini , Wei Liu Message-ID: Subject: Re: [PATCH 1/1] doc: clarify intended usage of ~/control/ xentore path References: <20230531103427.1551719-1-yann.dirson@vates.fr> <20230531103427.1551719-2-yann.dirson@vates.fr> In-Reply-To: --------------3uv83bdeqdBZKA7lnu0pcm4u Content-Type: multipart/mixed; boundary="------------ESvYPfo0FqwsiIB0jX1bOJL4" --------------ESvYPfo0FqwsiIB0jX1bOJL4 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: base64 T24gMjQuMDYuMjMgMTY6MDcsIEp1bGllbiBHcmFsbCB3cm90ZToNCj4gSGkgWWFubiwNCj4g DQo+IEFkZGluZyBKdWVyZ2VuLg0KPiANCj4gT24gMzEvMDUvMjAyMyAxMTozNSwgWWFubiBE aXJzb24gd3JvdGU6DQo+PiBTaWduZWQtb2ZmLWJ5OiBZYW5uIERpcnNvbiA8eWFubi5kaXJz b25AdmF0ZXMuZnI+DQo+IA0KPiBSZXZpZXdlZC1ieTogSnVsaWVuIEdyYWxsIDxqZ3JhbGxA YW1hem9uLmNvbT4NCg0KUmV2aWV3ZWQtYnk6IEp1ZXJnZW4gR3Jvc3MgPGpncm9zc0BzdXNl LmNvbT4NCg0KDQpKdWVyZ2VuDQoNCg== --------------ESvYPfo0FqwsiIB0jX1bOJL4 Content-Type: application/pgp-keys; name="OpenPGP_0xB0DE9DD628BF132F.asc" Content-Disposition: attachment; filename="OpenPGP_0xB0DE9DD628BF132F.asc" Content-Description: OpenPGP public key Content-Transfer-Encoding: quoted-printable -----BEGIN PGP PUBLIC KEY BLOCK----- xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjri oyspZKOBycWxw3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2 kaV2KL9650I1SJvedYm8Of8Zd621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i 1TXkH09XSSI8mEQ/ouNcMvIJNwQpd369y9bfIhWUiVXEK7MlRgUG6MvIj6Y3Am/B BLUVbDa4+gmzDC9ezlZkTZG2t14zWPvxXP3FAp2pkW0xqG7/377qptDmrk42GlSK N4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEBAAHNHEp1ZXJnZW4gR3Jvc3Mg PGpnQHBmdXBmLm5ldD7CwHkEEwECACMFAlOMcBYCGwMHCwkIBwMCAQYVCAIJCgsE FgIDAQIeAQIXgAAKCRCw3p3WKL8TL0KdB/93FcIZ3GCNwFU0u3EjNbNjmXBKDY4F UGNQH2lvWAUy+dnyThpwdtF/jQ6j9RwE8VP0+NXcYpGJDWlNb9/JmYqLiX2Q3Tye vpB0CA3dbBQp0OW0fgCetToGIQrg0MbD1C/sEOv8Mr4NAfbauXjZlvTj30H2jO0u +6WGM6nHwbh2l5O8ZiHkH32iaSTfN7Eu5RnNVUJbvoPHZ8SlM4KWm8rG+lIkGurq qu5gu8q8ZMKdsdGC4bBxdQKDKHEFExLJK/nRPFmAuGlId1E3fe10v5QL+qHI3EIP tyfE7i9Hz6rVwi7lWKgh7pe0ZvatAudZ+JNIlBKptb64FaiIOAWDCx1SzR9KdWVy Z2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+wsB5BBMBAgAjBQJTjHCvAhsDBwsJ CAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey/HmQf/RtI7kv5A2PS4 RF7HoZhPVPogNVbC4YA6lW7DrWf0teC0RR3MzXfy6pJ+7KLgkqMlrAbN/8Dvjoz7 8X+5vhH/rDLa9BuZQlhFmvcGtCF8eR0T1v0nC/nuAFVGy+67q2DH8As3KPu0344T BDpAvr2uYM4tSqxK4DURx5INz4ZZ0WNFHcqsfvlGJALDeE0LhITTd9jLzdDad1pQ SToCnLl6SBJZjDOX9QQcyUigZFtCXFst4dlsvddrxyqT1f17+2cFSdu7+ynLmXBK 7abQ3rwJY8SbRO2iRulogc5vr/RLMMlscDAiDkaFQWLoqHHOdfO9rURssHNN8WkM nQfvUewRz80hSnVlcmdlbiBHcm9zcyA8amdyb3NzQG5vdmVsbC5jb20+wsB5BBMB AgAjBQJTjHDXAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/ Ey8PUQf/ehmgCI9jB9hlgexLvgOtf7PJnFOXgMLdBQgBlVPO3/D9R8LtF9DBAFPN hlrsfIG/SqICoRCqUcJ96Pn3P7UUinFG/I0ECGF4EvTE1jnDkfJZr6jrbjgyoZHi w/4BNwSTL9rWASyLgqlA8u1mf+c2yUwcGhgkRAd1gOwungxcwzwqgljf0N51N5Jf VRHRtyfwq/ge+YEkDGcTU6Y0sPOuj4Dyfm8fJzdfHNQsWq3PnczLVELStJNdapwP OoE+lotufe3AM2vAEYJ9rTz3Cki4JFUsgLkHFqGZarrPGi1eyQcXeluldO3m91NK /1xMI3/+8jbO0tsn1tqSEUGIJi7ox80eSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1 c2UuZGU+wsB5BBMBAgAjBQJTjHDrAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgEC F4AACgkQsN6d1ii/Ey+LhQf9GL45eU5vOowA2u5N3g3OZUEBmDHVVbqMtzwlmNC4 k9Kx39r5s2vcFl4tXqW7g9/ViXYuiDXb0RfUpZiIUW89siKrkzmQ5dM7wRqzgJpJ wK8Bn2MIxAKArekWpiCKvBOB/Cc+3EXE78XdlxLyOi/NrmSGRIov0karw2RzMNOu 5D+jLRZQd1Sv27AR+IP3I8U4aqnhLpwhK7MEy9oCILlgZ1QZe49kpcumcZKORmzB TNh30FVKK1EvmV2xAKDoaEOgQB4iFQLhJCdP1I5aSgM5IVFdn7v5YgEYuJYx37Io N1EblHI//x/e2AaIHpzK5h88NEawQsaNRpNSrcfbFmAg987ATQRTjHAWAQgAyzH6 AOODMBjgfWE9VeCgsrwH3exNAU32gLq2xvjpWnHIs98ndPUDpnoxWQugJ6MpMncr 0xSwFmHEgnSEjK/PAjppgmyc57BwKII3sV4on+gDVFJR6Y8ZRwgnBC5mVM6JjQ5x Dk8WRXljExRfUX9pNhdE5eBOZJrDRoLUmmjDtKzWaDhIg/+1Hzz93X4fCQkNVbVF LELU9bMaLPBG/x5q4iYZ2k2ex6d47YE1ZFdMm6YBYMOljGkZKwYde5ldM9mo45mm we0icXKLkpEdIXKTZeKDO+Hdv1aqFuAcccTg9RXDQjmwhC3yEmrmcfl0+rPghO0I v3OOImwTEe4co3c1mwARAQABwsBfBBgBAgAJBQJTjHAWAhsMAAoJELDendYovxMv Q/gH/1ha96vm4P/L+bQpJwrZ/dneZcmEwTbe8YFsw2V/Buv6Z4Mysln3nQK5ZadD 534CF7TDVft7fC4tU4PONxF5D+/tvgkPfDAfF77zy2AH1vJzQ1fOU8lYFpZXTXIH b+559UqvIB8AdgR3SAJGHHt4RKA0F7f5ipYBBrC6cyXJyyoprT10EMvU8VGiwXvT yJz3fjoYsdFzpWPlJEBRMedCot60g5dmbdrZ5DWClAr0yau47zpWj3enf1tLWaqc suylWsviuGjKGw7KHQd3bxALOknAp4dN3QwBYCKuZ7AddY9yjynVaD5X7nF9nO5B jR/i1DG86lem3iBDXzXsZDn8R38=3D =3D2wuH -----END PGP PUBLIC KEY BLOCK----- --------------ESvYPfo0FqwsiIB0jX1bOJL4-- --------------3uv83bdeqdBZKA7lnu0pcm4u-- --------------Zv90Zum6ayqTnb0bVkxU1qzn Content-Type: application/pgp-signature; name="OpenPGP_signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="OpenPGP_signature" -----BEGIN PGP SIGNATURE----- wsB5BAABCAAjFiEEhRJncuj2BJSl0Jf3sN6d1ii/Ey8FAmSaihcFAwAAAAAACgkQsN6d1ii/Ey/b pAf+MsXtdw5irm0Uu1AvkohPmpN9mNheDzHvz0y0ti9d5buK6slNylGdQkA9+11nuVzyifscuZNk v5Znc/THEVsrtevdHeWt+XEm/TB9Uj10NadoYn3VEgyovSLKEbA+h3l17gzZegVtvCtCYDqtUVkm +wl1/QHAiv32mzNKSUfznOCA8kDcn+Y41d6zYrZJ7WOSCxBjJp+wKDOeFeUN37DGE+Jv32VuYt0D U7mZCzYsRg19IFVzqNIE6NXep9GvlCbx6XzlO5FaRNhTOxfRntZNz2gcXKwQ5Pq5qn52wC2Bq88Q cx+POEmZdjNe9BCHNQ7UMr9PeP1LiQvZSZgzfZrzWQ== =g71A -----END PGP SIGNATURE----- --------------Zv90Zum6ayqTnb0bVkxU1qzn-- From xen-devel-bounces@lists.xenproject.org Tue Jun 27 07:11:51 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 07:11:51 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555866.868008 (Exim 4.92) (envelope-from ) id 1qE2rZ-00007n-M1; Tue, 27 Jun 2023 07:11:45 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555866.868008; Tue, 27 Jun 2023 07:11:45 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE2rZ-00007g-J8; Tue, 27 Jun 2023 07:11:45 +0000 Received: by outflank-mailman (input) for mailman id 555866; Tue, 27 Jun 2023 07:11:44 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE2rY-00007a-1V for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 07:11:44 +0000 Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.133.124]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id dd8879f2-14b9-11ee-b237-6b7b168915f2; Tue, 27 Jun 2023 09:11:42 +0200 (CEST) Received: from mail-wr1-f70.google.com (mail-wr1-f70.google.com [209.85.221.70]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-596--n1mgtHqOKakQh3derAS-A-1; Tue, 27 Jun 2023 03:11:36 -0400 Received: by mail-wr1-f70.google.com with SMTP id ffacd0b85a97d-313f5021d9bso716170f8f.2 for ; Tue, 27 Jun 2023 00:11:36 -0700 (PDT) Received: from ?IPV6:2001:b07:6468:f312:9af8:e5f5:7516:fa89? ([2001:b07:6468:f312:9af8:e5f5:7516:fa89]) by smtp.googlemail.com with ESMTPSA id d1-20020a5d6dc1000000b00304adbeeabbsm9439847wrz.99.2023.06.27.00.11.34 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Tue, 27 Jun 2023 00:11:34 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: dd8879f2-14b9-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1687849901; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=6VVhVzXs6+8xF41LtPYoUG8bj5MGwR49pfsVcwj9t1w=; b=ae/hp4jhSRfUl5G6DwDNti9TB1MPxovKGZlejGro1PLOs5MIqZz2o3iBIrtM4+gjYOYVBe oDEYJVI8qz8gwnh0tQBe3xTry4X0JnsQeCLSHy1gD934P4zKlNxuaSz9Amgm8NJzeBxYj8 t4DkMAGO8DoRzZJWfP20zZ3+6CCTnK4= X-MC-Unique: -n1mgtHqOKakQh3derAS-A-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687849895; x=1690441895; h=content-transfer-encoding:in-reply-to:from:references:cc:to :content-language:subject:user-agent:mime-version:date:message-id :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=6VVhVzXs6+8xF41LtPYoUG8bj5MGwR49pfsVcwj9t1w=; b=jaH8QLP42ehsuhlT36P8HUPF66sLK8X5MusYBULm2CYjo0KDtuC6DxAbpjDhKTcSVK 1UtW3T2mTkHEeZtuWZLEfnB5KGoqjYJKsak7C9AXylz7slP+mrw/xjlYT4UakCEEYSI1 ZXe6Rn8B/sQWGX/DU4bTSDr0qES+TwalmwewV4WbtnmHFMVkPdQRNBhjwkBFOHT7k9Fj AO/n+5WiFkFu4Xu8gnf1XNYiIVq9/JB7WSL7j1nc0lsKdhZiFvrtB7DWQM2Dx2qYvEtV pg8wCQjoMyNzX4mourvDXpod4JhfFPjlt+srAeX135em7CwfLfTDH4/HHbDTax+ADK5A /FZg== X-Gm-Message-State: AC+VfDxnHFvnBQvyFIPb67jj+9KFQYmnCW+mA+WvJldiTLmhq1Ghtf68 jbUaYIjb0guWkflZRc4qK8guqdRiNcx7rBRZKMVp/7YXuX0IZyXSH+9kVWD2uCxgyNusUFMfSZY GafBHpeEgg0/31T0I7fk/1+5QvbQ= X-Received: by 2002:adf:f24c:0:b0:313:f152:d7f2 with SMTP id b12-20020adff24c000000b00313f152d7f2mr3411359wrp.36.1687849895422; Tue, 27 Jun 2023 00:11:35 -0700 (PDT) X-Google-Smtp-Source: ACHHUZ4J0rxCyrrQw+AA+6R0HF8+A45hIRxv5L1efnDXk13eePybHu/MGpnTkhS12Kw8pRPV67ZBeg== X-Received: by 2002:adf:f24c:0:b0:313:f152:d7f2 with SMTP id b12-20020adff24c000000b00313f152d7f2mr3411352wrp.36.1687849895119; Tue, 27 Jun 2023 00:11:35 -0700 (PDT) Message-ID: Date: Tue, 27 Jun 2023 09:11:33 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v2] piix: fix regression during unplug in Xen HVM domUs To: Olaf Hering , John Snow Cc: xen-devel@lists.xenproject.org, Stefano Stabellini , qemu-devel@nongnu.org References: <20210317070046.17860-1-olaf@aepfle.de> <4441d32f-bd52-9408-cabc-146b59f0e4dc@redhat.com> <20210325121219.7b5daf76.olaf@aepfle.de> <20230509225818.GA16290@aepfle.de> <20230626231901.5b5d11c1.olaf@aepfle.de> From: Paolo Bonzini In-Reply-To: <20230626231901.5b5d11c1.olaf@aepfle.de> X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Language: en-US Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit On 6/26/23 23:19, Olaf Hering wrote: > I need advice on how to debug this. > > One thing that stands out is uhci_irq(). > It reads a u16 from the USBSTS register. > > On the qemu side, this read is served from bmdma_read. Since the read > size is 2, the result is ~0, and uhci_irq() turns the controller off. > In other words, memory_region_ops_read from addr=0xc102 is served from "piix-bmdma" > > If the pci_set_word calls in piix_ide_reset are skipped, the read is > served from uhci_port_write. This is the expected behavior. > In other words, memory_region_ops_read from addr=0xc102 is served from "uhci". I think what's happening is that pci_set_byte(pci_conf + 0x20, 0x01); /* BMIBA: 20-23h */ is setting the BAR to 0xC100, therefore overlapping the UHCI device's region. In principle this line shouldn't be necessary at all though; it's enough to clear the COMMAND register. Can you check the value of the COMMAND register (pci_conf + 0x04, 16 bits, little endian)? Something might be causing the register to be set back to a nonzero value, therefore re-enabling the I/O at the address that overlaps the UHCI device. Paolo From xen-devel-bounces@lists.xenproject.org Tue Jun 27 07:11:58 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 07:11:58 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555867.868017 (Exim 4.92) (envelope-from ) id 1qE2rl-0000Qu-Ts; Tue, 27 Jun 2023 07:11:57 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555867.868017; Tue, 27 Jun 2023 07:11:57 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE2rl-0000Qn-Qx; Tue, 27 Jun 2023 07:11:57 +0000 Received: by outflank-mailman (input) for mailman id 555867; Tue, 27 Jun 2023 07:11:56 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE2rk-0000Q4-IH for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 07:11:56 +0000 Received: from smtp-out1.suse.de (smtp-out1.suse.de [195.135.220.28]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id e50f7946-14b9-11ee-8611-37d641c3527e; Tue, 27 Jun 2023 09:11:54 +0200 (CEST) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by smtp-out1.suse.de (Postfix) with ESMTPS id 0091E21892; Tue, 27 Jun 2023 07:11:54 +0000 (UTC) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id C5EA313462; Tue, 27 Jun 2023 07:11:53 +0000 (UTC) Received: from dovecot-director2.suse.de ([192.168.254.65]) by imap2.suse-dmz.suse.de with ESMTPSA id CUrnLbmLmmQNFAAAMHmgww (envelope-from ); Tue, 27 Jun 2023 07:11:53 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: e50f7946-14b9-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1; t=1687849914; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=jdZCCe8zGFsqTvVG1F70S1wqNKDrzIu74Vl0hUG1jDM=; b=nRb9Ea9EL0HLtucEZFgOvW6HvXNdU4rAgKyxJ1OEHdcKHg9kV7fkITK+hTSoFDCffXBamc kgGDvuMSqfrIoWRHETHgq5zt3NZ5KRoB6mdeLQtDkbq94BhUo5ZJ7j2nvrU1JNPBZPGemw p1LYoGwjVgabzGMIiBq4GSeFwnxyyIs= Message-ID: Date: Tue, 27 Jun 2023 09:11:53 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v2] x86/Xen: tidy xen-head.S Content-Language: en-US To: Jan Beulich , "xen-devel@lists.xenproject.org" Cc: Boris Ostrovsky References: From: Juergen Gross In-Reply-To: Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="------------y0KXmCk07sGKtGptMmO01Kj7" This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --------------y0KXmCk07sGKtGptMmO01Kj7 Content-Type: multipart/mixed; boundary="------------J4CFifFihhwrzi8i0W4HlkiH"; protected-headers="v1" From: Juergen Gross To: Jan Beulich , "xen-devel@lists.xenproject.org" Cc: Boris Ostrovsky Message-ID: Subject: Re: [PATCH v2] x86/Xen: tidy xen-head.S References: In-Reply-To: --------------J4CFifFihhwrzi8i0W4HlkiH Content-Type: multipart/mixed; boundary="------------05t0xuXZJscnF6c2q5fIjgms" --------------05t0xuXZJscnF6c2q5fIjgms Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: base64 T24gMTYuMDYuMjMgMDg6MzYsIEphbiBCZXVsaWNoIHdyb3RlOg0KPiBGaXJzdCBvZiBhbGwg bW92ZSBQVi1vbmx5IEVMRiBub3RlcyBpbnNpZGUgdGhlIFhFTl9QViBjb25kaXRpb25hbDsg bm90ZQ0KPiB0aGF0DQo+IC0gSFZfU1RBUlRfTE9XIGlzIGRyb3BwZWQgYWx0b2dldGhlciwg YXMgaXQgd2FzIG1lYW5pbmdmdWwgZm9yIDMyLWJpdCBQVg0KPiAgICBvbmx5LA0KPiAtIHRo ZSAzMi1iaXQgaW5zdGFuY2Ugb2YgVklSVF9CQVNFIGlzIGRyb3BwZWQsIGFzIGl0IHdvdWxk IGJlIGRlYWQgY29kZQ0KPiAgICBvbmNlIGluc2lkZSB0aGUgY29uZGl0aW9uYWwsDQo+IC0g d2hpbGUgUEFERFJfT0ZGU0VUIGlzIG5vdCBleGFjdGx5IHVudXNlZCBmb3IgUFZILCBpdCBk ZWZhdWx0cyB0byB6ZXJvDQo+ICAgIHRoZXJlLCBhbmQgdGhlIGh5cGVydmlzb3IgKG9yIHRv b2wgc3RhY2spIGNvbXBsYWlucyBpZiBpdCBpcyBwcmVzZW50DQo+ICAgIGJ1dCBWSVJUX0JB U0UgaXNuJ3QuDQo+IFRoZW4gaGF2ZSB0aGUgInN1cHBvcnRlZCBmZWF0dXJlcyIgbm90ZSBh Y3R1YWxseSByZXBvcnQgcmVhbGl0eTogQWxsDQo+IHRocmVlIG9mIHRoZSBmZWF0dXJlcyB0 aGVyZSBhcmUgc3VwcG9ydGVkIGFuZC9vciBhcHBsaWNhYmxlIG9ubHkgaW4NCj4gY2VydGFp biBjYXNlcy4NCj4gDQo+IFNpZ25lZC1vZmYtYnk6IEphbiBCZXVsaWNoIDxqYmV1bGljaEBz dXNlLmNvbT4NCg0KUmV2aWV3ZWQtYnk6IEp1ZXJnZW4gR3Jvc3MgPGpncm9zc0BzdXNlLmNv bT4NCg0KDQpKdWVyZ2VuDQoNCg== --------------05t0xuXZJscnF6c2q5fIjgms Content-Type: application/pgp-keys; name="OpenPGP_0xB0DE9DD628BF132F.asc" Content-Disposition: attachment; filename="OpenPGP_0xB0DE9DD628BF132F.asc" Content-Description: OpenPGP public key Content-Transfer-Encoding: quoted-printable -----BEGIN PGP PUBLIC KEY BLOCK----- xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjri oyspZKOBycWxw3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2 kaV2KL9650I1SJvedYm8Of8Zd621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i 1TXkH09XSSI8mEQ/ouNcMvIJNwQpd369y9bfIhWUiVXEK7MlRgUG6MvIj6Y3Am/B BLUVbDa4+gmzDC9ezlZkTZG2t14zWPvxXP3FAp2pkW0xqG7/377qptDmrk42GlSK N4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEBAAHNHEp1ZXJnZW4gR3Jvc3Mg PGpnQHBmdXBmLm5ldD7CwHkEEwECACMFAlOMcBYCGwMHCwkIBwMCAQYVCAIJCgsE FgIDAQIeAQIXgAAKCRCw3p3WKL8TL0KdB/93FcIZ3GCNwFU0u3EjNbNjmXBKDY4F UGNQH2lvWAUy+dnyThpwdtF/jQ6j9RwE8VP0+NXcYpGJDWlNb9/JmYqLiX2Q3Tye vpB0CA3dbBQp0OW0fgCetToGIQrg0MbD1C/sEOv8Mr4NAfbauXjZlvTj30H2jO0u +6WGM6nHwbh2l5O8ZiHkH32iaSTfN7Eu5RnNVUJbvoPHZ8SlM4KWm8rG+lIkGurq qu5gu8q8ZMKdsdGC4bBxdQKDKHEFExLJK/nRPFmAuGlId1E3fe10v5QL+qHI3EIP tyfE7i9Hz6rVwi7lWKgh7pe0ZvatAudZ+JNIlBKptb64FaiIOAWDCx1SzR9KdWVy Z2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+wsB5BBMBAgAjBQJTjHCvAhsDBwsJ CAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey/HmQf/RtI7kv5A2PS4 RF7HoZhPVPogNVbC4YA6lW7DrWf0teC0RR3MzXfy6pJ+7KLgkqMlrAbN/8Dvjoz7 8X+5vhH/rDLa9BuZQlhFmvcGtCF8eR0T1v0nC/nuAFVGy+67q2DH8As3KPu0344T BDpAvr2uYM4tSqxK4DURx5INz4ZZ0WNFHcqsfvlGJALDeE0LhITTd9jLzdDad1pQ SToCnLl6SBJZjDOX9QQcyUigZFtCXFst4dlsvddrxyqT1f17+2cFSdu7+ynLmXBK 7abQ3rwJY8SbRO2iRulogc5vr/RLMMlscDAiDkaFQWLoqHHOdfO9rURssHNN8WkM nQfvUewRz80hSnVlcmdlbiBHcm9zcyA8amdyb3NzQG5vdmVsbC5jb20+wsB5BBMB AgAjBQJTjHDXAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/ Ey8PUQf/ehmgCI9jB9hlgexLvgOtf7PJnFOXgMLdBQgBlVPO3/D9R8LtF9DBAFPN hlrsfIG/SqICoRCqUcJ96Pn3P7UUinFG/I0ECGF4EvTE1jnDkfJZr6jrbjgyoZHi w/4BNwSTL9rWASyLgqlA8u1mf+c2yUwcGhgkRAd1gOwungxcwzwqgljf0N51N5Jf VRHRtyfwq/ge+YEkDGcTU6Y0sPOuj4Dyfm8fJzdfHNQsWq3PnczLVELStJNdapwP OoE+lotufe3AM2vAEYJ9rTz3Cki4JFUsgLkHFqGZarrPGi1eyQcXeluldO3m91NK /1xMI3/+8jbO0tsn1tqSEUGIJi7ox80eSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1 c2UuZGU+wsB5BBMBAgAjBQJTjHDrAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgEC F4AACgkQsN6d1ii/Ey+LhQf9GL45eU5vOowA2u5N3g3OZUEBmDHVVbqMtzwlmNC4 k9Kx39r5s2vcFl4tXqW7g9/ViXYuiDXb0RfUpZiIUW89siKrkzmQ5dM7wRqzgJpJ wK8Bn2MIxAKArekWpiCKvBOB/Cc+3EXE78XdlxLyOi/NrmSGRIov0karw2RzMNOu 5D+jLRZQd1Sv27AR+IP3I8U4aqnhLpwhK7MEy9oCILlgZ1QZe49kpcumcZKORmzB TNh30FVKK1EvmV2xAKDoaEOgQB4iFQLhJCdP1I5aSgM5IVFdn7v5YgEYuJYx37Io N1EblHI//x/e2AaIHpzK5h88NEawQsaNRpNSrcfbFmAg987ATQRTjHAWAQgAyzH6 AOODMBjgfWE9VeCgsrwH3exNAU32gLq2xvjpWnHIs98ndPUDpnoxWQugJ6MpMncr 0xSwFmHEgnSEjK/PAjppgmyc57BwKII3sV4on+gDVFJR6Y8ZRwgnBC5mVM6JjQ5x Dk8WRXljExRfUX9pNhdE5eBOZJrDRoLUmmjDtKzWaDhIg/+1Hzz93X4fCQkNVbVF LELU9bMaLPBG/x5q4iYZ2k2ex6d47YE1ZFdMm6YBYMOljGkZKwYde5ldM9mo45mm we0icXKLkpEdIXKTZeKDO+Hdv1aqFuAcccTg9RXDQjmwhC3yEmrmcfl0+rPghO0I v3OOImwTEe4co3c1mwARAQABwsBfBBgBAgAJBQJTjHAWAhsMAAoJELDendYovxMv Q/gH/1ha96vm4P/L+bQpJwrZ/dneZcmEwTbe8YFsw2V/Buv6Z4Mysln3nQK5ZadD 534CF7TDVft7fC4tU4PONxF5D+/tvgkPfDAfF77zy2AH1vJzQ1fOU8lYFpZXTXIH b+559UqvIB8AdgR3SAJGHHt4RKA0F7f5ipYBBrC6cyXJyyoprT10EMvU8VGiwXvT yJz3fjoYsdFzpWPlJEBRMedCot60g5dmbdrZ5DWClAr0yau47zpWj3enf1tLWaqc suylWsviuGjKGw7KHQd3bxALOknAp4dN3QwBYCKuZ7AddY9yjynVaD5X7nF9nO5B jR/i1DG86lem3iBDXzXsZDn8R38=3D =3D2wuH -----END PGP PUBLIC KEY BLOCK----- --------------05t0xuXZJscnF6c2q5fIjgms-- --------------J4CFifFihhwrzi8i0W4HlkiH-- --------------y0KXmCk07sGKtGptMmO01Kj7 Content-Type: application/pgp-signature; name="OpenPGP_signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="OpenPGP_signature" -----BEGIN PGP SIGNATURE----- wsB5BAABCAAjFiEEhRJncuj2BJSl0Jf3sN6d1ii/Ey8FAmSai7kFAwAAAAAACgkQsN6d1ii/Ey/r Hwf/eBLk4fYruatNEUKEt0PUHwjY+27SEKb+KD5jVX/1nu1QY1zCfQjg33ucHFAHbtljtrUN79hp jdJj96cwrNyDKm3Zk7gdxGCXXSevsQNO04k7kyNtwhciq1NtdVrl7JsXa4pBV04XUla8WTCBtMrf n+VlXqsVI9cA/0nIiIS+pXMIQRRaR/Dbr6dWQPwpj9jmPqpqj9SqDBWrdqCjMxk6ssCebFXy0tUv /N1U/LEEMu+W+JSf0ZlfPT/ZWl0tj4gtnnU+QBM3Todnr5uNf5we9gMD/zkZ32n2l0pW0U6ds5db 3t43PIDl7fN9lyoiQaroM33kFy9H+s5qxu6Aob7dKQ== =xcsl -----END PGP SIGNATURE----- --------------y0KXmCk07sGKtGptMmO01Kj7-- From xen-devel-bounces@lists.xenproject.org Tue Jun 27 07:14:49 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 07:14:49 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555874.868027 (Exim 4.92) (envelope-from ) id 1qE2uM-0001Ei-A9; Tue, 27 Jun 2023 07:14:38 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555874.868027; Tue, 27 Jun 2023 07:14:38 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE2uM-0001Eb-7e; Tue, 27 Jun 2023 07:14:38 +0000 Received: by outflank-mailman (input) for mailman id 555874; Tue, 27 Jun 2023 07:14:37 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE2uL-0001ET-N9 for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 07:14:37 +0000 Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.133.124]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 45660713-14ba-11ee-b237-6b7b168915f2; Tue, 27 Jun 2023 09:14:36 +0200 (CEST) Received: from mail-wm1-f72.google.com (mail-wm1-f72.google.com [209.85.128.72]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-502--EKyO_lEN2mmsYowDpUkPw-1; Tue, 27 Jun 2023 03:14:33 -0400 Received: by mail-wm1-f72.google.com with SMTP id 5b1f17b1804b1-3fa979d0c32so8080525e9.2 for ; Tue, 27 Jun 2023 00:14:33 -0700 (PDT) Received: from ?IPV6:2003:cb:c737:4900:68b3:e93b:e07a:558b? (p200300cbc737490068b3e93be07a558b.dip0.t-ipconnect.de. [2003:cb:c737:4900:68b3:e93b:e07a:558b]) by smtp.gmail.com with ESMTPSA id 21-20020a05600c22d500b003f96d10eafbsm9778433wmg.12.2023.06.27.00.14.30 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Tue, 27 Jun 2023 00:14:31 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 45660713-14ba-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1687850075; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=N1scKhPxxz/YxysE64BuheSdyQmgV4XhiinPf6icWX8=; b=gLHtxCt7YxT7fD4RUMsMt5nkuqomgRGHLVnhkE5mtTO9G6qqlrV6MupV/chx6JnAHldSvj wk86egqixoIqEzSgzOQ0uzhhe50WyoLlDU0uUS0mQ8IJsOJB9b5honExYv+XEhLrorqKcT tv5LsStXpK5QhintwqeKkiF2P9peTmQ= X-MC-Unique: -EKyO_lEN2mmsYowDpUkPw-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687850072; x=1690442072; h=content-transfer-encoding:in-reply-to:organization:from:references :cc:to:content-language:subject:user-agent:mime-version:date :message-id:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=N1scKhPxxz/YxysE64BuheSdyQmgV4XhiinPf6icWX8=; b=VWzjCisqDGRsHyv+GDiqw5gZ0JURRgq4Qhq7Jg0IyFvYrPnrJpaaKsA1V4XL/LCh4D YEujccaf0kq/2NPq7rWbB3JizSQHHUo+VzeTvtwet1KlS1Y3Gmr+rTrija7L2iXjhJrG A1WOpUvQFR9uOz64fditZBZaM3S/rmhAYwCvg+sS0XyH/Qnt+L+TxB9AxkA11OJYHlcN gyGk4VnJ0f2uNTD91tAsTsuinBPKHLoZXQWx4UDttrBXz1GUaruLdD3/u3mXLZIDug63 pb08mZquSknJvRSr4VI0LRi5HaPBT/mDJ7x3p2+klpupMmv9tCfH3VXjCVKW3LJGYsrU TSnQ== X-Gm-Message-State: AC+VfDwMlwnlsVKj8W1Qz1FHl0h75YG2u/9TWOiB2zyJbGu6drkg6wxV /Je8dIz/3sjFGMmuCrluTdmSFMw3rzK9Iid0/bjEoE+K/7umX58VC10FGXyA0axkolVsuOjbwRr bRZhVCwX8b/AE0CkDvlPC/mrLW1k= X-Received: by 2002:a05:600c:3655:b0:3fa:9d0f:f1e1 with SMTP id y21-20020a05600c365500b003fa9d0ff1e1mr2936789wmq.35.1687850072226; Tue, 27 Jun 2023 00:14:32 -0700 (PDT) X-Google-Smtp-Source: ACHHUZ6HIpOGvancvhac5jw2GR0kOhKc72MxDndtCuN9HZ1pSF+uaoBl/D52ddajPiSHV9uK1Eb9sw== X-Received: by 2002:a05:600c:3655:b0:3fa:9d0f:f1e1 with SMTP id y21-20020a05600c365500b003fa9d0ff1e1mr2936755wmq.35.1687850071891; Tue, 27 Jun 2023 00:14:31 -0700 (PDT) Message-ID: Date: Tue, 27 Jun 2023 09:14:29 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v6 00/33] Split ptdesc from struct page To: Hugh Dickins , "Vishal Moola (Oracle)" Cc: Andrew Morton , Matthew Wilcox , linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Catalin Marinas , Huacai Chen , Geert Uytterhoeven , Thomas Bogendoerfer , Dinh Nguyen , Jonas Bonn , Claudio Imbrenda , Paul Walmsley , "David S. Miller" , Richard Weinberger , Yoshinori Sato , Dave Hansen , Arnd Bergmann , Christophe Leroy References: <20230627031431.29653-1-vishal.moola@gmail.com> From: David Hildenbrand Organization: Red Hat In-Reply-To: X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Language: en-US Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit On 27.06.23 06:44, Hugh Dickins wrote: > On Mon, 26 Jun 2023, Vishal Moola (Oracle) wrote: > >> The MM subsystem is trying to shrink struct page. This patchset >> introduces a memory descriptor for page table tracking - struct ptdesc. > ... >> 39 files changed, 686 insertions(+), 455 deletions(-) > > I don't see the point of this patchset: to me it is just obfuscation of > the present-day tight relationship between page table and struct page. > > Matthew already explained: > >> The intent is to get ptdescs to be dynamically allocated at some point >> in the ~2-3 years out future when we have finished the folio project ... > > So in a kindly mood, I'd say that this patchset is ahead of its time. > But I can certainly adapt to it, if everyone else sees some point to it. I share your thoughts, that code churn which will help eventually in the far, far future (not wanting to sound too pessimistic, but it's not going to be there tomorrow ;) ). However, if it's just the same as the other conversions we already did (e.g., struct slab), then I guess there is no reason to stop now -- the obfuscation already happened. ... or is there a difference regarding this conversion and the previous ones? -- Cheers, David / dhildenb From xen-devel-bounces@lists.xenproject.org Tue Jun 27 07:19:27 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 07:19:27 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555880.868037 (Exim 4.92) (envelope-from ) id 1qE2yw-0001vT-VV; Tue, 27 Jun 2023 07:19:22 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555880.868037; Tue, 27 Jun 2023 07:19:22 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE2yw-0001vM-Sq; Tue, 27 Jun 2023 07:19:22 +0000 Received: by outflank-mailman (input) for mailman id 555880; Tue, 27 Jun 2023 07:19:21 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE2yv-0001vG-R3 for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 07:19:21 +0000 Received: from smtp-out1.suse.de (smtp-out1.suse.de [2001:67c:2178:6::1c]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id eeee87c3-14ba-11ee-b237-6b7b168915f2; Tue, 27 Jun 2023 09:19:20 +0200 (CEST) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by smtp-out1.suse.de (Postfix) with ESMTPS id C23372189A; Tue, 27 Jun 2023 07:19:19 +0000 (UTC) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id 5169813462; Tue, 27 Jun 2023 07:19:19 +0000 (UTC) Received: from dovecot-director2.suse.de ([192.168.254.65]) by imap2.suse-dmz.suse.de with ESMTPSA id WJkJEneNmmSRFwAAMHmgww (envelope-from ); Tue, 27 Jun 2023 07:19:19 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: eeee87c3-14ba-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1; t=1687850359; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=G3g7htCxdgEvSH+pTCW3FzUe9616RS2fbsWoWAYrlfY=; b=U1MOxVHypBt9Lvwl7oTOS01VK+i7hdVXohdsVIuuP4dYD0wJoZQyRpVBY/NXrxJEY960Q8 nudzeniP3GjRY8eDoFnb42R+zDTTODlYBMHJDJmAUAUGtMwzFAtWSdNooZYrXD3jU/K69t 6+184yh/YMbD5aqTrqtzPOdb1hND8po= Message-ID: <660606b7-7c11-1c7a-fda4-2fdaf4d2a389@suse.com> Date: Tue, 27 Jun 2023 09:19:18 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH 2/3] x86: always initialize xen-swiotlb when xen-pcifront is enabling Content-Language: en-US To: Christoph Hellwig , Stefano Stabellini , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , x86@kernel.org, "H. Peter Anvin" Cc: xen-devel@lists.xenproject.org, iommu@lists.linux.dev, linux-kernel@vger.kernel.org References: <20230612142542.111581-1-hch@lst.de> <20230612142542.111581-3-hch@lst.de> From: Juergen Gross In-Reply-To: <20230612142542.111581-3-hch@lst.de> Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="------------2Byll301BjgQI0ew3m6OU7AA" This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --------------2Byll301BjgQI0ew3m6OU7AA Content-Type: multipart/mixed; boundary="------------kmYXaQytq7rdmI1XKD81L4KN"; protected-headers="v1" From: Juergen Gross To: Christoph Hellwig , Stefano Stabellini , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , x86@kernel.org, "H. Peter Anvin" Cc: xen-devel@lists.xenproject.org, iommu@lists.linux.dev, linux-kernel@vger.kernel.org Message-ID: <660606b7-7c11-1c7a-fda4-2fdaf4d2a389@suse.com> Subject: Re: [PATCH 2/3] x86: always initialize xen-swiotlb when xen-pcifront is enabling References: <20230612142542.111581-1-hch@lst.de> <20230612142542.111581-3-hch@lst.de> In-Reply-To: <20230612142542.111581-3-hch@lst.de> --------------kmYXaQytq7rdmI1XKD81L4KN Content-Type: multipart/mixed; boundary="------------yqCPSwCHUiEVidWgiTnDUMPX" --------------yqCPSwCHUiEVidWgiTnDUMPX Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: base64 T24gMTIuMDYuMjMgMTY6MjUsIENocmlzdG9waCBIZWxsd2lnIHdyb3RlOg0KPiBSZW1vdmUg dGhlIGRhbmdlcm91cyBsYXRlIGluaXRpYWxpemF0aW9uIG9mIHhlbi1zd2lvdGxiIGluDQo+ IHBjaV94ZW5fc3dpb3RsYl9pbml0X2xhdGUgYW5kIGluc3RlYWQganVzdCBhbHdheXMgaW5p dGlhbGl6ZQ0KPiB4ZW4tc3dpb3RsYiBpbiB0aGUgYm9vdCBjb2RlIGlmIENPTkZJR19YRU5f UENJREVWX0ZST05URU5EIGlzDQo+IGVuYWJsZWQgYW5kIFhlbiBQViBQQ0kgaXMgcG9zc2li bGUuDQo+IA0KPiBTaWduZWQtb2ZmLWJ5OiBDaHJpc3RvcGggSGVsbHdpZyA8aGNoQGxzdC5k ZT4NCg0KUmV2aWV3ZWQtYnk6IEp1ZXJnZW4gR3Jvc3MgPGpncm9zc0BzdXNlLmNvbT4NCg0K DQpKdWVyZ2VuDQoNCg== --------------yqCPSwCHUiEVidWgiTnDUMPX Content-Type: application/pgp-keys; name="OpenPGP_0xB0DE9DD628BF132F.asc" Content-Disposition: attachment; filename="OpenPGP_0xB0DE9DD628BF132F.asc" Content-Description: OpenPGP public key Content-Transfer-Encoding: quoted-printable -----BEGIN PGP PUBLIC KEY BLOCK----- xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjri oyspZKOBycWxw3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2 kaV2KL9650I1SJvedYm8Of8Zd621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i 1TXkH09XSSI8mEQ/ouNcMvIJNwQpd369y9bfIhWUiVXEK7MlRgUG6MvIj6Y3Am/B BLUVbDa4+gmzDC9ezlZkTZG2t14zWPvxXP3FAp2pkW0xqG7/377qptDmrk42GlSK N4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEBAAHNHEp1ZXJnZW4gR3Jvc3Mg PGpnQHBmdXBmLm5ldD7CwHkEEwECACMFAlOMcBYCGwMHCwkIBwMCAQYVCAIJCgsE FgIDAQIeAQIXgAAKCRCw3p3WKL8TL0KdB/93FcIZ3GCNwFU0u3EjNbNjmXBKDY4F UGNQH2lvWAUy+dnyThpwdtF/jQ6j9RwE8VP0+NXcYpGJDWlNb9/JmYqLiX2Q3Tye vpB0CA3dbBQp0OW0fgCetToGIQrg0MbD1C/sEOv8Mr4NAfbauXjZlvTj30H2jO0u +6WGM6nHwbh2l5O8ZiHkH32iaSTfN7Eu5RnNVUJbvoPHZ8SlM4KWm8rG+lIkGurq qu5gu8q8ZMKdsdGC4bBxdQKDKHEFExLJK/nRPFmAuGlId1E3fe10v5QL+qHI3EIP tyfE7i9Hz6rVwi7lWKgh7pe0ZvatAudZ+JNIlBKptb64FaiIOAWDCx1SzR9KdWVy Z2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+wsB5BBMBAgAjBQJTjHCvAhsDBwsJ CAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey/HmQf/RtI7kv5A2PS4 RF7HoZhPVPogNVbC4YA6lW7DrWf0teC0RR3MzXfy6pJ+7KLgkqMlrAbN/8Dvjoz7 8X+5vhH/rDLa9BuZQlhFmvcGtCF8eR0T1v0nC/nuAFVGy+67q2DH8As3KPu0344T BDpAvr2uYM4tSqxK4DURx5INz4ZZ0WNFHcqsfvlGJALDeE0LhITTd9jLzdDad1pQ SToCnLl6SBJZjDOX9QQcyUigZFtCXFst4dlsvddrxyqT1f17+2cFSdu7+ynLmXBK 7abQ3rwJY8SbRO2iRulogc5vr/RLMMlscDAiDkaFQWLoqHHOdfO9rURssHNN8WkM nQfvUewRz80hSnVlcmdlbiBHcm9zcyA8amdyb3NzQG5vdmVsbC5jb20+wsB5BBMB AgAjBQJTjHDXAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/ Ey8PUQf/ehmgCI9jB9hlgexLvgOtf7PJnFOXgMLdBQgBlVPO3/D9R8LtF9DBAFPN hlrsfIG/SqICoRCqUcJ96Pn3P7UUinFG/I0ECGF4EvTE1jnDkfJZr6jrbjgyoZHi w/4BNwSTL9rWASyLgqlA8u1mf+c2yUwcGhgkRAd1gOwungxcwzwqgljf0N51N5Jf VRHRtyfwq/ge+YEkDGcTU6Y0sPOuj4Dyfm8fJzdfHNQsWq3PnczLVELStJNdapwP OoE+lotufe3AM2vAEYJ9rTz3Cki4JFUsgLkHFqGZarrPGi1eyQcXeluldO3m91NK /1xMI3/+8jbO0tsn1tqSEUGIJi7ox80eSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1 c2UuZGU+wsB5BBMBAgAjBQJTjHDrAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgEC F4AACgkQsN6d1ii/Ey+LhQf9GL45eU5vOowA2u5N3g3OZUEBmDHVVbqMtzwlmNC4 k9Kx39r5s2vcFl4tXqW7g9/ViXYuiDXb0RfUpZiIUW89siKrkzmQ5dM7wRqzgJpJ wK8Bn2MIxAKArekWpiCKvBOB/Cc+3EXE78XdlxLyOi/NrmSGRIov0karw2RzMNOu 5D+jLRZQd1Sv27AR+IP3I8U4aqnhLpwhK7MEy9oCILlgZ1QZe49kpcumcZKORmzB TNh30FVKK1EvmV2xAKDoaEOgQB4iFQLhJCdP1I5aSgM5IVFdn7v5YgEYuJYx37Io N1EblHI//x/e2AaIHpzK5h88NEawQsaNRpNSrcfbFmAg987ATQRTjHAWAQgAyzH6 AOODMBjgfWE9VeCgsrwH3exNAU32gLq2xvjpWnHIs98ndPUDpnoxWQugJ6MpMncr 0xSwFmHEgnSEjK/PAjppgmyc57BwKII3sV4on+gDVFJR6Y8ZRwgnBC5mVM6JjQ5x Dk8WRXljExRfUX9pNhdE5eBOZJrDRoLUmmjDtKzWaDhIg/+1Hzz93X4fCQkNVbVF LELU9bMaLPBG/x5q4iYZ2k2ex6d47YE1ZFdMm6YBYMOljGkZKwYde5ldM9mo45mm we0icXKLkpEdIXKTZeKDO+Hdv1aqFuAcccTg9RXDQjmwhC3yEmrmcfl0+rPghO0I v3OOImwTEe4co3c1mwARAQABwsBfBBgBAgAJBQJTjHAWAhsMAAoJELDendYovxMv Q/gH/1ha96vm4P/L+bQpJwrZ/dneZcmEwTbe8YFsw2V/Buv6Z4Mysln3nQK5ZadD 534CF7TDVft7fC4tU4PONxF5D+/tvgkPfDAfF77zy2AH1vJzQ1fOU8lYFpZXTXIH b+559UqvIB8AdgR3SAJGHHt4RKA0F7f5ipYBBrC6cyXJyyoprT10EMvU8VGiwXvT yJz3fjoYsdFzpWPlJEBRMedCot60g5dmbdrZ5DWClAr0yau47zpWj3enf1tLWaqc suylWsviuGjKGw7KHQd3bxALOknAp4dN3QwBYCKuZ7AddY9yjynVaD5X7nF9nO5B jR/i1DG86lem3iBDXzXsZDn8R38=3D =3D2wuH -----END PGP PUBLIC KEY BLOCK----- --------------yqCPSwCHUiEVidWgiTnDUMPX-- --------------kmYXaQytq7rdmI1XKD81L4KN-- --------------2Byll301BjgQI0ew3m6OU7AA Content-Type: application/pgp-signature; name="OpenPGP_signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="OpenPGP_signature" -----BEGIN PGP SIGNATURE----- wsB5BAABCAAjFiEEhRJncuj2BJSl0Jf3sN6d1ii/Ey8FAmSajXYFAwAAAAAACgkQsN6d1ii/Ey/M ygf+IT5x8RaVgj+bU1Rsp3wrLmcD2TQgg0E2u/QCIT/3CjVRucuqbkKkc+ETB6GZ86wU7/RjZuwy MzqSk73Ea6hDXwd7lCuMPfXiKLwLYFcwkaaN4MF9KwKDL47yb2tTA0k8Wyx01fOsiF94GeUFIjFS E3+sB+viEtO/v4cH+Uhmit5cxyne7moq3yJfYs15tXvLL3C7NmHrSf0m7ucc3sULYWk2R/mWGWIo 7ZUuupWU8JY4EpdoHYe2EXaa3P9b9T1s7O2KfE1ThdYD8LZAvmWGUGfwvPPJRfIlVW0TERv2s0f3 KuX3WnvldoEr3zQwVt+GG7bG0KM+d1zAHFh2eq4+fQ== =NUwE -----END PGP SIGNATURE----- --------------2Byll301BjgQI0ew3m6OU7AA-- From xen-devel-bounces@lists.xenproject.org Tue Jun 27 07:19:58 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 07:19:58 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555882.868048 (Exim 4.92) (envelope-from ) id 1qE2zW-0002Pl-74; Tue, 27 Jun 2023 07:19:58 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555882.868048; Tue, 27 Jun 2023 07:19:58 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE2zW-0002Pe-4I; Tue, 27 Jun 2023 07:19:58 +0000 Received: by outflank-mailman (input) for mailman id 555882; Tue, 27 Jun 2023 07:19:56 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE2zU-0002PT-AH for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 07:19:56 +0000 Received: from smtp-out1.suse.de (smtp-out1.suse.de [195.135.220.28]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 0332284d-14bb-11ee-8611-37d641c3527e; Tue, 27 Jun 2023 09:19:54 +0200 (CEST) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by smtp-out1.suse.de (Postfix) with ESMTPS id E1BDD211DE; Tue, 27 Jun 2023 07:19:53 +0000 (UTC) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id 8186813462; Tue, 27 Jun 2023 07:19:53 +0000 (UTC) Received: from dovecot-director2.suse.de ([192.168.254.65]) by imap2.suse-dmz.suse.de with ESMTPSA id Ig8UHpmNmmTnFwAAMHmgww (envelope-from ); Tue, 27 Jun 2023 07:19:53 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 0332284d-14bb-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1; t=1687850393; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=RF7xwYhJXKfHTpIm6OPtmWD8/BjyWG9MJjiitg4CML4=; b=Fa1iQLQt0hsyoIBEWMYYF3kOoMoR7MTndsSuvNCn0mk8f+yXU+mSj7x6OJXFbp52ZgquLK v2ZbL8RoUBUTGEzHkcMuzRpjB8JZMjiDCGEjGCI+BfhbC4E6rSYolRSol9jrus3+MBiw9I ez7FkC1BDOBXaYNqtZeru+VU8fZ0ZRM= Message-ID: <25602998-d4d5-fec9-043e-c8959dd82602@suse.com> Date: Tue, 27 Jun 2023 09:19:52 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH 3/3] swiotlb: unexport is_swiotlb_active Content-Language: en-US To: Christoph Hellwig , Stefano Stabellini , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , x86@kernel.org, "H. Peter Anvin" Cc: xen-devel@lists.xenproject.org, iommu@lists.linux.dev, linux-kernel@vger.kernel.org References: <20230612142542.111581-1-hch@lst.de> <20230612142542.111581-4-hch@lst.de> From: Juergen Gross In-Reply-To: <20230612142542.111581-4-hch@lst.de> Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="------------ZXX0M06KtxYsXVfyv8cZf6yL" This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --------------ZXX0M06KtxYsXVfyv8cZf6yL Content-Type: multipart/mixed; boundary="------------uPEf70P1cgirWsAdSRzG8gim"; protected-headers="v1" From: Juergen Gross To: Christoph Hellwig , Stefano Stabellini , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , x86@kernel.org, "H. Peter Anvin" Cc: xen-devel@lists.xenproject.org, iommu@lists.linux.dev, linux-kernel@vger.kernel.org Message-ID: <25602998-d4d5-fec9-043e-c8959dd82602@suse.com> Subject: Re: [PATCH 3/3] swiotlb: unexport is_swiotlb_active References: <20230612142542.111581-1-hch@lst.de> <20230612142542.111581-4-hch@lst.de> In-Reply-To: <20230612142542.111581-4-hch@lst.de> --------------uPEf70P1cgirWsAdSRzG8gim Content-Type: multipart/mixed; boundary="------------qDwZMH5oRYG1ME31VoABVgq9" --------------qDwZMH5oRYG1ME31VoABVgq9 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: base64 T24gMTIuMDYuMjMgMTY6MjUsIENocmlzdG9waCBIZWxsd2lnIHdyb3RlOg0KPiBEcml2ZXJz IGhhdmUgbm8gYnVzaW5lc3MgbG9va2luZyBhdCBkbWEtbWFwcGluZyBvciBzd2lvdGxiIGlu dGVybmFscy4NCj4gDQo+IFNpZ25lZC1vZmYtYnk6IENocmlzdG9waCBIZWxsd2lnIDxoY2hA bHN0LmRlPg0KDQpSZXZpZXdlZC1ieTogSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1c2UuY29t Pg0KDQoNCkp1ZXJnZW4NCg0K --------------qDwZMH5oRYG1ME31VoABVgq9 Content-Type: application/pgp-keys; name="OpenPGP_0xB0DE9DD628BF132F.asc" Content-Disposition: attachment; filename="OpenPGP_0xB0DE9DD628BF132F.asc" Content-Description: OpenPGP public key Content-Transfer-Encoding: quoted-printable -----BEGIN PGP PUBLIC KEY BLOCK----- xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjri oyspZKOBycWxw3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2 kaV2KL9650I1SJvedYm8Of8Zd621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i 1TXkH09XSSI8mEQ/ouNcMvIJNwQpd369y9bfIhWUiVXEK7MlRgUG6MvIj6Y3Am/B BLUVbDa4+gmzDC9ezlZkTZG2t14zWPvxXP3FAp2pkW0xqG7/377qptDmrk42GlSK N4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEBAAHNHEp1ZXJnZW4gR3Jvc3Mg PGpnQHBmdXBmLm5ldD7CwHkEEwECACMFAlOMcBYCGwMHCwkIBwMCAQYVCAIJCgsE FgIDAQIeAQIXgAAKCRCw3p3WKL8TL0KdB/93FcIZ3GCNwFU0u3EjNbNjmXBKDY4F UGNQH2lvWAUy+dnyThpwdtF/jQ6j9RwE8VP0+NXcYpGJDWlNb9/JmYqLiX2Q3Tye vpB0CA3dbBQp0OW0fgCetToGIQrg0MbD1C/sEOv8Mr4NAfbauXjZlvTj30H2jO0u +6WGM6nHwbh2l5O8ZiHkH32iaSTfN7Eu5RnNVUJbvoPHZ8SlM4KWm8rG+lIkGurq qu5gu8q8ZMKdsdGC4bBxdQKDKHEFExLJK/nRPFmAuGlId1E3fe10v5QL+qHI3EIP tyfE7i9Hz6rVwi7lWKgh7pe0ZvatAudZ+JNIlBKptb64FaiIOAWDCx1SzR9KdWVy Z2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+wsB5BBMBAgAjBQJTjHCvAhsDBwsJ CAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey/HmQf/RtI7kv5A2PS4 RF7HoZhPVPogNVbC4YA6lW7DrWf0teC0RR3MzXfy6pJ+7KLgkqMlrAbN/8Dvjoz7 8X+5vhH/rDLa9BuZQlhFmvcGtCF8eR0T1v0nC/nuAFVGy+67q2DH8As3KPu0344T BDpAvr2uYM4tSqxK4DURx5INz4ZZ0WNFHcqsfvlGJALDeE0LhITTd9jLzdDad1pQ SToCnLl6SBJZjDOX9QQcyUigZFtCXFst4dlsvddrxyqT1f17+2cFSdu7+ynLmXBK 7abQ3rwJY8SbRO2iRulogc5vr/RLMMlscDAiDkaFQWLoqHHOdfO9rURssHNN8WkM nQfvUewRz80hSnVlcmdlbiBHcm9zcyA8amdyb3NzQG5vdmVsbC5jb20+wsB5BBMB AgAjBQJTjHDXAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/ Ey8PUQf/ehmgCI9jB9hlgexLvgOtf7PJnFOXgMLdBQgBlVPO3/D9R8LtF9DBAFPN hlrsfIG/SqICoRCqUcJ96Pn3P7UUinFG/I0ECGF4EvTE1jnDkfJZr6jrbjgyoZHi w/4BNwSTL9rWASyLgqlA8u1mf+c2yUwcGhgkRAd1gOwungxcwzwqgljf0N51N5Jf VRHRtyfwq/ge+YEkDGcTU6Y0sPOuj4Dyfm8fJzdfHNQsWq3PnczLVELStJNdapwP OoE+lotufe3AM2vAEYJ9rTz3Cki4JFUsgLkHFqGZarrPGi1eyQcXeluldO3m91NK /1xMI3/+8jbO0tsn1tqSEUGIJi7ox80eSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1 c2UuZGU+wsB5BBMBAgAjBQJTjHDrAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgEC F4AACgkQsN6d1ii/Ey+LhQf9GL45eU5vOowA2u5N3g3OZUEBmDHVVbqMtzwlmNC4 k9Kx39r5s2vcFl4tXqW7g9/ViXYuiDXb0RfUpZiIUW89siKrkzmQ5dM7wRqzgJpJ wK8Bn2MIxAKArekWpiCKvBOB/Cc+3EXE78XdlxLyOi/NrmSGRIov0karw2RzMNOu 5D+jLRZQd1Sv27AR+IP3I8U4aqnhLpwhK7MEy9oCILlgZ1QZe49kpcumcZKORmzB TNh30FVKK1EvmV2xAKDoaEOgQB4iFQLhJCdP1I5aSgM5IVFdn7v5YgEYuJYx37Io N1EblHI//x/e2AaIHpzK5h88NEawQsaNRpNSrcfbFmAg987ATQRTjHAWAQgAyzH6 AOODMBjgfWE9VeCgsrwH3exNAU32gLq2xvjpWnHIs98ndPUDpnoxWQugJ6MpMncr 0xSwFmHEgnSEjK/PAjppgmyc57BwKII3sV4on+gDVFJR6Y8ZRwgnBC5mVM6JjQ5x Dk8WRXljExRfUX9pNhdE5eBOZJrDRoLUmmjDtKzWaDhIg/+1Hzz93X4fCQkNVbVF LELU9bMaLPBG/x5q4iYZ2k2ex6d47YE1ZFdMm6YBYMOljGkZKwYde5ldM9mo45mm we0icXKLkpEdIXKTZeKDO+Hdv1aqFuAcccTg9RXDQjmwhC3yEmrmcfl0+rPghO0I v3OOImwTEe4co3c1mwARAQABwsBfBBgBAgAJBQJTjHAWAhsMAAoJELDendYovxMv Q/gH/1ha96vm4P/L+bQpJwrZ/dneZcmEwTbe8YFsw2V/Buv6Z4Mysln3nQK5ZadD 534CF7TDVft7fC4tU4PONxF5D+/tvgkPfDAfF77zy2AH1vJzQ1fOU8lYFpZXTXIH b+559UqvIB8AdgR3SAJGHHt4RKA0F7f5ipYBBrC6cyXJyyoprT10EMvU8VGiwXvT yJz3fjoYsdFzpWPlJEBRMedCot60g5dmbdrZ5DWClAr0yau47zpWj3enf1tLWaqc suylWsviuGjKGw7KHQd3bxALOknAp4dN3QwBYCKuZ7AddY9yjynVaD5X7nF9nO5B jR/i1DG86lem3iBDXzXsZDn8R38=3D =3D2wuH -----END PGP PUBLIC KEY BLOCK----- --------------qDwZMH5oRYG1ME31VoABVgq9-- --------------uPEf70P1cgirWsAdSRzG8gim-- --------------ZXX0M06KtxYsXVfyv8cZf6yL Content-Type: application/pgp-signature; name="OpenPGP_signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="OpenPGP_signature" -----BEGIN PGP SIGNATURE----- wsB5BAABCAAjFiEEhRJncuj2BJSl0Jf3sN6d1ii/Ey8FAmSajZgFAwAAAAAACgkQsN6d1ii/Ey9U LAf7B6HozsAptLSzGaI6ZMH0yPcRviKRdiwiXMKQ8E7yy1kDoIlmKAWDJLmmrA5KNRkejILXWMDB 30+QYNkUOCGb237vlOn73DAmnwLdH6dd7clOusGZMASfSDaJQjofKIiDl8kHuHLMvjEgUbvDnj8f rHtzNvHuqFdnCVmZleFm8bjap205m3qhCmLwiU62oW4xossyQZOBgUOXC26r50CICECxaZboU4Cr MIHIRQyLS6mdxDlcR15N7yhMQ4mu1Vha/5ldVdVCp+il1ZOftByu/5zVsyZ14FV/HV/JtRJRYoiP yaQ84GHwlepd9KngFiXxsY+g1Xrw5hGDHVzii+iLlw== =XVnJ -----END PGP SIGNATURE----- --------------ZXX0M06KtxYsXVfyv8cZf6yL-- From xen-devel-bounces@lists.xenproject.org Tue Jun 27 07:35:31 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 07:35:31 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555888.868057 (Exim 4.92) (envelope-from ) id 1qE3EI-000501-F9; Tue, 27 Jun 2023 07:35:14 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555888.868057; Tue, 27 Jun 2023 07:35:14 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE3EI-0004zu-CU; Tue, 27 Jun 2023 07:35:14 +0000 Received: by outflank-mailman (input) for mailman id 555888; Tue, 27 Jun 2023 07:35:13 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE3EH-0004zo-17 for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 07:35:13 +0000 Received: from mail136-22.atl41.mandrillapp.com (mail136-22.atl41.mandrillapp.com [198.2.136.22]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 24e7ec05-14bd-11ee-8611-37d641c3527e; Tue, 27 Jun 2023 09:35:10 +0200 (CEST) Received: from pmta11.mandrill.prod.atl01.rsglab.com (localhost [127.0.0.1]) by mail136-22.atl41.mandrillapp.com (Mailchimp) with ESMTP id 4QqxM117HNzFCWYbg for ; Tue, 27 Jun 2023 07:35:09 +0000 (GMT) Received: from [37.26.189.201] by mandrillapp.com id 609155a8b5504464ad2be0f722b1f101; Tue, 27 Jun 2023 07:35:09 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 24e7ec05-14bd-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=vates.fr; s=mandrill; t=1687851309; x=1688111809; i=yann.dirson@vates.fr; bh=OkqwrC9aV5kjEbZ5lyL+O0Q6loF+qbwkSSkhYCoatTM=; h=From:Subject:Message-Id:To:Cc:References:In-Reply-To:Feedback-ID: Date:MIME-Version:Content-Type:Content-Transfer-Encoding:CC:Date: Subject:From; b=hb4zEaAGkSJ3AuGf7mxP93XCdrHiWEcDVfdXsUgtHSSlrIdhQPNrUwq/W0gPTeUOZ UI9ZR3/x7ciWjmX3FoimhsoYwP5O43/G1c6qGU+PA5I4vk3uLEo/HKescuqCkWxx8u HgsGfCuzF78vr5QitC/VBEQoZvdMnoIfDKbHP1yY= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=mandrillapp.com; i=@mandrillapp.com; q=dns/txt; s=mandrill; t=1687851309; h=From : Subject : Message-Id : To : Cc : References : In-Reply-To : Date : MIME-Version : Content-Type : Content-Transfer-Encoding : From : Subject : Date : X-Mandrill-User : List-Unsubscribe; bh=OkqwrC9aV5kjEbZ5lyL+O0Q6loF+qbwkSSkhYCoatTM=; b=ZvtNXDmwc3RmE0xaV+VGGkKsIJdRh4d41HDIHrocV+U1pTqjE8iPgOAIT3NCJRAKOjWA7x PNdc9UfJ6TFfVMtuL0AgIDwMt+cD3PqK5bM2J2gieSLkfxDg4QxR86FUz4yvCTz8SILUQASr 1si4hLp+OoxgEaGb9XgNmSO7Omj3c= From: Yann Dirson Subject: =?utf-8?Q?Re:=20[PATCH=201/1]=20doc:=20clarify=20intended=20usage=20of=20~/control/=20xentore=20path?= X-Bm-Disclaimer: Yes X-Bm-Milter-Handled: 39f1d088-dab6-450b-998d-f0ee110bfa80 X-Bm-Transport-Timestamp: 1687851306505 Message-Id: <046475ca-a940-d9c6-9913-26bf7fe3ca25@vates.fr> To: Juergen Gross , Julien Grall , xen-devel@lists.xenproject.org Cc: Andrew Cooper , George Dunlap , Jan Beulich , Stefano Stabellini , Wei Liu References: <20230531103427.1551719-1-yann.dirson@vates.fr> <20230531103427.1551719-2-yann.dirson@vates.fr> In-Reply-To: X-Native-Encoded: 1 X-Report-Abuse: =?UTF-8?Q?Please=20forward=20a=20copy=20of=20this=20message,=20including=20all=20headers,=20to=20abuse@mandrill.com.=20You=20can=20also=20report=20abuse=20here:=20https://mandrillapp.com/contact/abuse=3Fid=3D30504962.609155a8b5504464ad2be0f722b1f101?= X-Mandrill-User: md_30504962 Feedback-ID: 30504962:30504962.20230627:md Date: Tue, 27 Jun 2023 07:35:09 +0000 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit As discussed in Xen Summit, we likely don't want to merge it as is after all, but rather acknowledge that XAPI has taken the opposite route and allow the toolstack to give ownership of ~/control (or at least write permission?) to the guest -- maybe also recommending not to do that. Would that sound OK to everyone? On 6/27/23 09:04, Juergen Gross wrote: > On 24.06.23 16:07, Julien Grall wrote: >> Hi Yann, >> >> Adding Juergen. >> >> On 31/05/2023 11:35, Yann Dirson wrote: >>> Signed-off-by: Yann Dirson >> >> Reviewed-by: Julien Grall > > Reviewed-by: Juergen Gross > > > Juergen > -- Yann Dirson | Vates Platform Developer XCP-ng & Xen Orchestra - Vates solutions w: vates.tech | xcp-ng.org | xen-orchestra.com Yann Dirson | Vates Platform Developer XCP-ng & Xen Orchestra - Vates solutions web: https://vates.tech From xen-devel-bounces@lists.xenproject.org Tue Jun 27 07:53:01 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 07:53:01 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555892.868068 (Exim 4.92) (envelope-from ) id 1qE3VE-0007YA-W7; Tue, 27 Jun 2023 07:52:44 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555892.868068; Tue, 27 Jun 2023 07:52:44 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE3VE-0007Y3-TJ; Tue, 27 Jun 2023 07:52:44 +0000 Received: by outflank-mailman (input) for mailman id 555892; Tue, 27 Jun 2023 07:52:44 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE3VE-0007Xx-36 for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 07:52:44 +0000 Received: from NAM10-MW2-obe.outbound.protection.outlook.com (mail-mw2nam10on20611.outbound.protection.outlook.com [2a01:111:f400:7e89::611]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 97d74929-14bf-11ee-b237-6b7b168915f2; Tue, 27 Jun 2023 09:52:42 +0200 (CEST) Received: from MW3PR06CA0014.namprd06.prod.outlook.com (2603:10b6:303:2a::19) by CY5PR12MB6035.namprd12.prod.outlook.com (2603:10b6:930:2d::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.23; Tue, 27 Jun 2023 07:52:39 +0000 Received: from CO1NAM11FT014.eop-nam11.prod.protection.outlook.com (2603:10b6:303:2a:cafe::32) by MW3PR06CA0014.outlook.office365.com (2603:10b6:303:2a::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.34 via Frontend Transport; Tue, 27 Jun 2023 07:52:38 +0000 Received: from SATLEXMB04.amd.com (165.204.84.17) by CO1NAM11FT014.mail.protection.outlook.com (10.13.175.99) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6500.47 via Frontend Transport; Tue, 27 Jun 2023 07:52:38 +0000 Received: from SATLEXMB05.amd.com (10.181.40.146) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Tue, 27 Jun 2023 02:52:33 -0500 Received: from SATLEXMB04.amd.com (10.181.40.145) by SATLEXMB05.amd.com (10.181.40.146) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Tue, 27 Jun 2023 02:52:25 -0500 Received: from [10.71.193.39] (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server id 15.1.2507.23 via Frontend Transport; Tue, 27 Jun 2023 02:52:23 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 97d74929-14bf-11ee-b237-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=YP5g1+25gVgodSWutKnkomO/ZWKDnpaNoivl+YSx1xPVXeiEpMfUJSk5lf5qCTRKzdDdwbp7N6+pCtoF803HoAdwANjcINr9Ka8VBOY3ljOKlJJdBZKBrrfPHMfTYrQvOFkovSu14Bc8451nQKHIF4DZ0nhYUO+MZIFlJ4N0DiD/Bhm/aCTpeKuQ1cmr2wUzr7XO3bsmgDp90GGx+zr5FuC9SKRtnLek9ppJbAELDrGZKNYH3paJgfMkwFgtBQQugLeYHU2xpIfA+ax1SWeLmez4p9S79VTANM9cPDONyy9o5BR7VEbNWPnChPvzi1V1EdPi7rP1ejBFaRqm7exC5Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=mqXPWbi9gCNFb/0cjUi0Lw/8NKO/jfoYhBLXew9oV6s=; b=hHIKfusgAy3iJB6LboKBxbXCl+3SKotZZPEmsXaav1TKNvW/dPEBOhB47fKYVfMbazrJRNrkzu3LMGpHOlZmYQmhYZiBcdaVR8GvUG6fcNeP8KfEj08tgV640xz2eLz4K/U94eJqHqOJxDWFXkDJPHlPuy6dVh4DL81ujh2WywdGTj5DrjagmBei+myNOwG0uY4swHhCL+SP0yL8Te08xFqROXy1NCT9a+BehyARiply+I/YyJzSbmE/2sdNFE3Hbl6p9SHlydbtMcxLmfO2gFAsWsL/8H1xlEJRJDmZIFrSFBSDG8AT+gXPh2KN81+gneDzyCNhIKS/REREqdbR1Q== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=xen.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=mqXPWbi9gCNFb/0cjUi0Lw/8NKO/jfoYhBLXew9oV6s=; b=LxykMGJui/p5soC4e3+PXJ+fzqZvAMe0z3x4qVTUWuWiAkXGCpXhF03f6N9WRYqbfZncvNkxgmGoRSkEDJCxbE7qhEsIysredgs1mfuE7u3ziJdV/4eErRFgrP8Au7cE8T7EK4ntPT2Wal2KvWX/znPr+GSCHj2enqF4gdxoeXI= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C Message-ID: <487bf03d-3c11-e5b1-74d9-7c9ae9d57521@amd.com> Date: Tue, 27 Jun 2023 09:52:23 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH 6/9] xen/arm64: entry: Don't jump outside of an alternative To: Julien Grall , CC: , , Julien Grall , Stefano Stabellini , "Bertrand Marquis" , Volodymyr Babchuk References: <20230625204907.57291-1-julien@xen.org> <20230625204907.57291-7-julien@xen.org> Content-Language: en-US From: Michal Orzel In-Reply-To: <20230625204907.57291-7-julien@xen.org> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO1NAM11FT014:EE_|CY5PR12MB6035:EE_ X-MS-Office365-Filtering-Correlation-Id: 54509b5f-1490-4ccd-531a-08db76e37a52 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: KKsS/uw3p0zTUAME2WbNfZVMdI9p3hMtJUa8bzkzhNa0v7djMJuVOKzJUD2PYW9K4hMqrfU0U+eycxPj0mLyfpnK4n06AWoX1Tipb88DSAJic70OATXsb+wwOydwMQTWxRdMQf5xOX/nDdzaCetamt9L3NrbAVYc9Y34y1ltZyhZ37EpkhPoHmKndO40E7AhG43l2ycAKOad2YzltuKp5JC3GBDWSlzXzU2MAbPq7coVkeuknCWEWGSCrl3I8FZj5w0x6WbFVrYH2gyGxvg8gwyYtGaMFUqzJBZN/jtEQg1f+qYlzq4hOQZWIriT4GW9bgLYbgzzKjw+Rv2zeTbwW3U+k2T//vQCYKDVobObfXJJTB/jEgLVZoB1A7MCSw8aQ1VNykRcmmn7VhiookRIMzMgLHzmgkefH1lKcyOx7GI99kcljwjOLcdD17+GomltCHDNVmLgB3147s4LmDX861O+Jbc+az1klAiCv0d4P9WPpw1JXMXIxG2fu8QqPC9I9drUh+LSGPmX0pCPimwli87C+ZNba+KHyM57OtFLdIqNih2+a6abYueVOLVqMyZEHXUxz53BtcwOyIE9q2L56EYFmT0/Qy26TkzM1Hboiy+x8LgpkjGX1LSqmSej1SMXez4BWqIafOKVqLMY6OLBK0bcbwYqMolKF5V9JpoHMtMwyiOv+z9eEDWQF/gAQ68gzPZDl7QqRltfXFxU/MdtLHHHiG1HAxEHxA0+Cc3+HT8KEPAnZiVcCuqoQMJzM/2HL11viw85nuPSDCn5ZEeEfTRbOfPL8ad8LySB7XjzCQQiCEuEilwZy0UOWY8S5fw4 X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(136003)(39860400002)(396003)(346002)(376002)(451199021)(36840700001)(46966006)(40470700004)(31686004)(41300700001)(82310400005)(36860700001)(26005)(86362001)(40460700003)(36756003)(70206006)(356005)(5660300002)(44832011)(316002)(4326008)(8936002)(8676002)(81166007)(40480700001)(31696002)(70586007)(53546011)(82740400003)(47076005)(186003)(2906002)(478600001)(336012)(2616005)(16576012)(83380400001)(110136005)(426003)(54906003)(36900700001)(43740500002);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Jun 2023 07:52:38.3207 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 54509b5f-1490-4ccd-531a-08db76e37a52 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com] X-MS-Exchange-CrossTenant-AuthSource: CO1NAM11FT014.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY5PR12MB6035 On 25/06/2023 22:49, Julien Grall wrote: > > > From: Julien Grall > > The instruction CBNZ can only jump to a pc-relative that is in the > range +/- 1MB. > > Alternative instructions replacement are living in a separate > subsection of the init section. This is usually placed towards > the end of the linker. Whereas text is towards the beginning. > > While today Xen is quite small (~1MB), it could grow up to > 2MB in the current setup. So there is no guarantee that the > target address in the text section will be within the range +/- > 1MB of the CBNZ in alternative section. > > The easiest solution is to have the target address within the > same section of the alternative. This means that we need to > duplicate a couple of instructions. > > Signed-off-by: Julien Grall > > ---- > > I couldn't come up with a solution that would not change the number > of instructions executed in the entry path. It looks like the max offset is indeed 1MB for conditional branches and I cannot think of any better way of doing this, so: Reviewed-by: Michal Orzel > --- > xen/arch/arm/arm64/entry.S | 21 ++++++++++++++++----- > 1 file changed, 16 insertions(+), 5 deletions(-) > > diff --git a/xen/arch/arm/arm64/entry.S b/xen/arch/arm/arm64/entry.S > index 95f1a9268419..492591fdef54 100644 > --- a/xen/arch/arm/arm64/entry.S > +++ b/xen/arch/arm/arm64/entry.S > @@ -242,13 +242,24 @@ > msr daifclr, \iflags > bl enter_hypervisor_from_guest > > + /* > + * CBNZ can only address an offset of +/- 1MB. This means, it is > + * not possible to jump outside of an alternative because > + * the .text section and .altinstr_replacement may be further > + * appart. The easiest way is to duplicate the few instructions s/appart/apart ~Michal From xen-devel-bounces@lists.xenproject.org Tue Jun 27 07:56:43 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 07:56:43 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555899.868077 (Exim 4.92) (envelope-from ) id 1qE3Yz-0008EZ-Ib; Tue, 27 Jun 2023 07:56:37 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555899.868077; Tue, 27 Jun 2023 07:56:37 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE3Yz-0008ES-Fl; Tue, 27 Jun 2023 07:56:37 +0000 Received: by outflank-mailman (input) for mailman id 555899; Tue, 27 Jun 2023 07:56:36 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE3Yy-0008EH-F4 for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 07:56:36 +0000 Received: from esa5.hc3370-68.iphmx.com (esa5.hc3370-68.iphmx.com [216.71.155.168]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 21207e20-14c0-11ee-8611-37d641c3527e; Tue, 27 Jun 2023 09:56:33 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 21207e20-14c0-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1687852594; h=from:to:cc:subject:date:message-id:mime-version: content-transfer-encoding; bh=w1Y6LCC9aAEnxKJ9NeUrKZ5mF72vpjRHNCqYLSN4LfU=; b=QcbzJmZ3lVQWBwhroPxlbGepBhi5v+i+6LKov6tbG7jl6Jw8E2ugCR9s vRz4BK4fiM+Wj1eRiAkI9wiBZTx20nGmDeOFEf2ZtxQfAadkJb9Bi+NUp c/C8DSPjlcBnQN0E3XGo7Z8jRNMef9wSLi8lTShe4SP6YBfTPsWDOG6Ci 4=; Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none X-SBRS: 4.0 X-MesageID: 113007166 X-Ironport-Server: esa5.hc3370-68.iphmx.com X-Remote-IP: 162.221.156.123 X-Policy: $RELAYED IronPort-Data: A9a23:zCSvga9VkKelvrrCRjD9DrUDgHmTJUtcMsCJ2f8bNWPcYEJGY0x3y 2FNWWqEbPvYMTHxedp3PYSwp0hXsJ6Gn4M3GQE+/yw8E34SpcT7XtnIdU2Y0wF+jCHgZBk+s 5hBMImowOQcFCK0SsKFa+C5xZVE/fjUAOG6UKicYXoZqTZMEE8JkQhkl/MynrlmiN24BxLlk d7pqojUNUTNNwRcawr40Ird7ks21BjOkGlA5AdmO6oU5Aa2e0Q9V/rzG4ngdxMUfaEMdgKKb 76r5K20+Grf4yAsBruN+losWhRXKlJ6FVHmZkt+A8BOsDAbzsAB+v9T2M4nQVVWk120c+VZk 72hg3ASpTABZcUgkMxFO/VR/roX0aduoNcrKlDn2SCfItGvn9IBDJyCAWlvVbD09NqbDkl8r 6YeIWlXbyrdoNq/252hUbhXiJkKeZyD0IM34hmMzBncBPciB5vCX7/L9ZlT2zJYasJmRKiEI ZBDMHw2MUqGOkcUUrsUIMtWcOOAr3/zaTBH7nmSorI6+TP7xw1tyrn9dtHSf7RmQO0Mxx3A/ j2foTqR7hcyDNOx5gqo0yuWr+bikmDSVL4rGpmB6as/6LGU7jNKU0BHPbehmtGph0j7V99BJ kg8/is1sbN05EGtVsP6XRCzvDiDpBF0c/h6HvA+6QqN4rHJ+AvfDW8BJhZac8AvvsIyQT0s1 3eKksnvCDgpt6eaIVqC8p+EoDX0PjIaRUcAeCsFQA0t89Tl5oYpgXrncNFnF6Kki8zvLhv5y TuKsSsWiq0aiIgA0KDT1VrKmS62r57FCAs8/BzKX3mN5xl8IoWiYuSA4Fza9upJLZzfQEOIu nMFgOCB4OtIBpaI/ASHR+8HDbyy5/KINTTaqVFqFpglsT+q/haLdodW5jZ8KE53M90sdjrgY UuVsgRUjLdUOHapdq52JYGsEcMhzavnPdvgX/HQKNFJZ/BZbwaB9TpybFWR2Ej3mVAwlrsyP 5iad8uhF3ccBuJsyz/eb/sF3LYx3Sc47XnaXYz81Rmh3ruYaXOPSLEKdlCJa4gEALis+VuPt YwFbo3TlksZCbelCsXKzWINBWJQd34yXMr3kZJwTueYDRB9SVovVtaElNvNZLdZc7Rpevbgp y/tBR8FkQql2xUrOi3RNCk9NeqHsYJX6CtiYHdyZQvAN20LO97H0UsJS3cgkVDLHsRHxOU8c fQKct7o7h9nGmWeoGR1gXUQQeVfmPWXaeGmZXDNjMAXJcIIeuAw0oaMkvHT3CcPFDGrksA1v qet0AjWKbJaGVQ9XJ6KNKv+kAvv1ZT4pA6VdxGSSuS/hW22qNQ6Q8APpqFfzz4wxeXrmWLBi lf+7eYwrujRuY4lmOQldojdx7pF59BWRxIAd0GCtObeCMUv1jb7qWO2eLrSLG+1uaKd0PnKW Ni5ONmmb6FczQcR6tohe1uppIpnj+bSS3Zh5lwMNB32g56DUduM/lHuMRFzi5Bw IronPort-HdrOrdr: A9a23:34tWhKF3Pj0RtavfpLqE0seALOsnbusQ8zAXPidKOH9om62j9/ xG+c5x6faaslkssR0b9exoW5PgfZq/z+8R3WB5B97LNmTbUQCTQr2Kg7GSpAHIKmnT8fNcyL clU4UWMqyXMbEDt7eZ3OBgKadF/OW6 X-Talos-CUID: 9a23:7n2zN2y2lc/9zre00L6YBgUmQJojeySHzU2OBHexEklzU+yuRwK5rfY= X-Talos-MUID: 9a23:HJgtggjmngX5GWaweA5wDcMpDMhGzJSDKRk3uJwrtIqtORBJNROkk2Hi X-IronPort-AV: E=Sophos;i="6.01,161,1684814400"; d="scan'208";a="113007166" From: Andrew Cooper To: Xen-devel CC: Andrew Cooper , Jan Beulich , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Wei Liu , Stefano Stabellini , Julien Grall , Volodymyr Babchuk , Bertrand Marquis , Bob Eshleman , Alistair Francis , Connor Davis , "Oleksii Kurochko" , Shawn Anastasio , Timothy Pearson Subject: [PATCH v2 0/3] xen/types: Cleanup Date: Tue, 27 Jun 2023 08:56:15 +0100 Message-ID: <20230627075618.1180248-1-andrew.cooper3@citrix.com> X-Mailer: git-send-email 2.30.2 MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit v2, adjusted per the discussion at XenSummit https://cirrus-ci.com/build/6611877547999232 https://gitlab.com/xen-project/people/andyhhp/xen/-/pipelines/912782128 Andrew Cooper (3): xen/types: Drop #ifdefary for __{SIZE,PTRDIFF}_TYPE__ treewide: Avoid including asm/types.h xen/types: Rework stdint vs __{u,s}$N types xen/arch/arm/arm64/lib/find_next_bit.c | 2 +- xen/arch/arm/include/asm/types.h | 19 ------------ xen/arch/riscv/include/asm/types.h | 19 ------------ xen/arch/x86/cpu/mcheck/mce.h | 1 - xen/arch/x86/cpu/vpmu.c | 1 - xen/arch/x86/cpu/vpmu_intel.c | 1 - xen/arch/x86/hvm/hvm.c | 1 - xen/arch/x86/hvm/vmx/vvmx.c | 1 - xen/arch/x86/include/asm/byteorder.h | 2 +- xen/arch/x86/include/asm/hvm/svm/svmdebug.h | 2 +- xen/arch/x86/include/asm/hvm/vmx/vmx.h | 3 +- xen/arch/x86/include/asm/io_apic.h | 3 +- xen/arch/x86/include/asm/page.h | 2 +- xen/arch/x86/include/asm/processor.h | 1 - xen/arch/x86/include/asm/types.h | 14 --------- xen/arch/x86/include/asm/x86_64/page.h | 2 +- xen/arch/x86/mm/p2m-ept.c | 1 - xen/common/trace.c | 1 - xen/drivers/char/arm-uart.c | 2 +- xen/include/xen/bitops.h | 2 +- xen/include/xen/spinlock.h | 3 +- xen/include/xen/stdint.h | 33 +++++++++++++++++++++ xen/include/xen/types.h | 29 +++++++----------- 23 files changed, 56 insertions(+), 89 deletions(-) create mode 100644 xen/include/xen/stdint.h -- 2.30.2 From xen-devel-bounces@lists.xenproject.org Tue Jun 27 07:56:43 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 07:56:43 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555900.868088 (Exim 4.92) (envelope-from ) id 1qE3Z0-0008TW-QN; Tue, 27 Jun 2023 07:56:38 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555900.868088; Tue, 27 Jun 2023 07:56:38 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE3Z0-0008TP-MV; Tue, 27 Jun 2023 07:56:38 +0000 Received: by outflank-mailman (input) for mailman id 555900; Tue, 27 Jun 2023 07:56:37 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE3Yz-0008EH-3z for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 07:56:37 +0000 Received: from esa4.hc3370-68.iphmx.com (esa4.hc3370-68.iphmx.com [216.71.155.144]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 2149129d-14c0-11ee-8611-37d641c3527e; Tue, 27 Jun 2023 09:56:34 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 2149129d-14c0-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1687852594; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=rEzOoITBgpwDiJCCnFkjnD9qLBpCoNJN36r0v427lIA=; b=fTjuJmOv38lw2906L0YVrn6/PdXBh6z/rWCbpVl1x86dMVdv5BVaflu3 NGYtDBGONqHBiu5SHsblhQzOTog43oLqVBTrKLyJW5Za+1XeedWsMBk7a 0O/+KR5FoanQhfhRGA1di3o/XyRjkrbJZFGXvCvFzP9ib6ilZPwvBTJNl c=; Authentication-Results: esa4.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none X-SBRS: 4.0 X-MesageID: 116835822 X-Ironport-Server: esa4.hc3370-68.iphmx.com X-Remote-IP: 162.221.156.123 X-Policy: $RELAYED IronPort-Data: A9a23:YpLqrqjc6qMw0z17sc7c9YAuX161YBcKZh0ujC45NGQN5FlHY01je htvWWqHbPneYDHwet52PYm2oUkG78LdnNMxTgU5qX9hQyob9cadCdqndUqhZCn6wu8v7q5Ex 55HNoSfdpBcolv0/ErF3m3J9CEkvU2wbuOgTrWCYmYpHlUMpB4J0XpLg/Q+jpNjne+3CgaMv cKai8DEMRqu1iUc3lg8sspvkzsx+qyr0N8klgZmP6sT4gWBzyB94K83fsldEVOpGuG4IcbiL wrz5OnR1n/U+R4rFuSknt7TGqHdauePVeQmoiM+t5mK2nCulARrukoIHKN0hXNsoyeIh7hMJ OBl7vRcf+uL0prkw4zxWzEAe8130DYvFLXveRBTuuTLp6HKnueFL1yDwyjaMKVBktubD12i+ tQUMRMEbDuNpNi3xbKWGuhHnN8NFNvSadZ3VnFIlVk1DN4jSJHHBa7L+cVZzHE7gcUm8fT2P pRDL2A1NVKZPkMJYw1MYH49tL7Aan3XWjtUsl+K44Ew5HDe1ldZ27nxKtvFPNeNQK25m27B/ zyWpDmpWEty2Nq3+Dq3tUyllLLztyq4Qp4gNpizzvI7uQjGroAUIEJPDgbqyRWjsWauVtQaJ 0EK9y4Gqakp6FftXtT7Rwe/onOPolgbQdU4O88Q5RyJy6HUyx2EHWVCRTlEAPQ9r9M/TzEu0 l6PnvvqCCZpvbnTTmiSnp+LqRuiNC5TKnUNDQcGUA8E7t/LsIw1yBXVQb5LLqmxidHkHCDq9 BqDpiM+mrY7gNYC0uOw+lWvqzihvITTRwg5oADeRHu47xhRbZSgIYev7DDz5PJBN5qQT0PHs mINncOf98gRAZrLnyuIKM0HG7uj9vueMDnRhFdpN5Yk/jWpvXWkeOh46zZ4IkBrPs8aeCTBb 0rauAcX75hWVFOtaaJ0eIOwTcc316/rFdfifv/RZ9tKJJN2cWev5yhobFWM1nvsl2A2mLkjP o2Wd8mtC3sXE6Vhw3y9QOJ1+aMzyykk3mTVbYry1wigy7eYa3+TRLofMV2BKOs+6cu5TB79q ogFcZHQklMGDbO4O3OMmWIOEbwUBXQiJpn0gMJ0TO+GIic2GUo7ENHp04p0LuSJgJ9pevf0E mCVAxEIlwqi3C2dd21meVg4NuqxAM8XQWYTeHV1YA32gyVLjZOHtv93SnchQVUwGAWPJ9ZQR uJNRciPC+8npt/vq2VENsmVQGCPmX2WaeOy08mNOmJXk2ZIHVChxzMdVlKHGNMyJiS2r9Aih LaryxnWR5EOLyw7UpaJOKrzkwrg4iBD8A6XY6cvCoMJEHgADaAwc3Ch5hPJC59kxer/Ksuyi F/NXEZwSRjlqI4p6tjZ7Z1oXK/we9aS6nFyRjGBhZ7vbHmyw4ZW6dMYOAp+VWyHBTycFWTLT bk98swQx9VdwwoR4tsnSuY2pU/8jvO2z4JnIs1fNC2jRzyW5nlIeBFqAeEnWnVx+4Jk IronPort-HdrOrdr: A9a23:GoMyK6vWN7l6iQQ81LNKJ8rN7skDYdV00zEX/kB9WHVpm6uj9/ xG/c576faQsl16ZJhOo6HjBED+ewK4yXcY2+Qs1NSZMjUO2lHYT72KhLGKqwEIcBeQygcy78 tdmqFFebnNMWQ= X-Talos-CUID: 9a23:bInOcWC/HH6s1u36EyV+10cWMc4GSHzYzFqAImSiEkhRWoTAHA== X-Talos-MUID: 9a23:alGz8grotK85Rv15lTcezwBiBoBW6rbzNGoE0o8aieuhPhR8ag7I2Q== X-IronPort-AV: E=Sophos;i="6.01,161,1684814400"; d="scan'208";a="116835822" From: Andrew Cooper To: Xen-devel CC: Andrew Cooper , Jan Beulich , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Wei Liu , Stefano Stabellini , Julien Grall , Volodymyr Babchuk , Bertrand Marquis , Bob Eshleman , Alistair Francis , Connor Davis , "Oleksii Kurochko" , Shawn Anastasio , Timothy Pearson Subject: [PATCH v2 2/3] treewide: Avoid including asm/types.h Date: Tue, 27 Jun 2023 08:56:17 +0100 Message-ID: <20230627075618.1180248-3-andrew.cooper3@citrix.com> X-Mailer: git-send-email 2.30.2 In-Reply-To: <20230627075618.1180248-1-andrew.cooper3@citrix.com> References: <20230627075618.1180248-1-andrew.cooper3@citrix.com> MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit We're about to rearrange the common and arch types.h split. While most users already include , a few do not and some files fail to compile as a result. Almost all logic is going to have types very early in the include chain. Drop the include entirely from C files, and swap to the common types.h in headers. No functional change. Signed-off-by: Andrew Cooper --- CC: Jan Beulich CC: Roger Pau Monné CC: Wei Liu CC: Stefano Stabellini CC: Julien Grall CC: Volodymyr Babchuk CC: Bertrand Marquis CC: Bob Eshleman CC: Alistair Francis CC: Connor Davis CC: Oleksii Kurochko CC: Shawn Anastasio CC: Timothy Pearson --- v2: New xen/arch/arm/arm64/lib/find_next_bit.c | 2 +- xen/arch/x86/cpu/mcheck/mce.h | 1 - xen/arch/x86/cpu/vpmu.c | 1 - xen/arch/x86/cpu/vpmu_intel.c | 1 - xen/arch/x86/hvm/hvm.c | 1 - xen/arch/x86/hvm/vmx/vvmx.c | 1 - xen/arch/x86/include/asm/byteorder.h | 2 +- xen/arch/x86/include/asm/hvm/svm/svmdebug.h | 2 +- xen/arch/x86/include/asm/hvm/vmx/vmx.h | 3 ++- xen/arch/x86/include/asm/io_apic.h | 3 ++- xen/arch/x86/include/asm/page.h | 2 +- xen/arch/x86/include/asm/processor.h | 1 - xen/arch/x86/include/asm/x86_64/page.h | 2 +- xen/arch/x86/mm/p2m-ept.c | 1 - xen/common/trace.c | 1 - xen/drivers/char/arm-uart.c | 2 +- xen/include/xen/bitops.h | 2 +- xen/include/xen/spinlock.h | 3 ++- 18 files changed, 13 insertions(+), 18 deletions(-) diff --git a/xen/arch/arm/arm64/lib/find_next_bit.c b/xen/arch/arm/arm64/lib/find_next_bit.c index 8ebf8bfe973c..ca6f82277e77 100644 --- a/xen/arch/arm/arm64/lib/find_next_bit.c +++ b/xen/arch/arm/arm64/lib/find_next_bit.c @@ -9,7 +9,7 @@ * 2 of the License, or (at your option) any later version. */ #include -#include + #include #ifndef find_next_bit diff --git a/xen/arch/x86/cpu/mcheck/mce.h b/xen/arch/x86/cpu/mcheck/mce.h index bea08bdc7464..dd5d258362e6 100644 --- a/xen/arch/x86/cpu/mcheck/mce.h +++ b/xen/arch/x86/cpu/mcheck/mce.h @@ -7,7 +7,6 @@ #include #include -#include #include #include diff --git a/xen/arch/x86/cpu/vpmu.c b/xen/arch/x86/cpu/vpmu.c index f31c32bcf3a6..a022126f18fd 100644 --- a/xen/arch/x86/cpu/vpmu.c +++ b/xen/arch/x86/cpu/vpmu.c @@ -14,7 +14,6 @@ #include #include #include -#include #include #include #include diff --git a/xen/arch/x86/cpu/vpmu_intel.c b/xen/arch/x86/cpu/vpmu_intel.c index 35e350578b84..ab122b22f3ac 100644 --- a/xen/arch/x86/cpu/vpmu_intel.c +++ b/xen/arch/x86/cpu/vpmu_intel.c @@ -12,7 +12,6 @@ #include #include #include -#include #include #include #include diff --git a/xen/arch/x86/hvm/hvm.c b/xen/arch/x86/hvm/hvm.c index a67ef79dc003..57363c2ae124 100644 --- a/xen/arch/x86/hvm/hvm.c +++ b/xen/arch/x86/hvm/hvm.c @@ -38,7 +38,6 @@ #include #include #include -#include #include #include #include diff --git a/xen/arch/x86/hvm/vmx/vvmx.c b/xen/arch/x86/hvm/vmx/vvmx.c index 1034534c977b..16b0ef82b6c8 100644 --- a/xen/arch/x86/hvm/vmx/vvmx.c +++ b/xen/arch/x86/hvm/vmx/vvmx.c @@ -10,7 +10,6 @@ #include -#include #include #include #include diff --git a/xen/arch/x86/include/asm/byteorder.h b/xen/arch/x86/include/asm/byteorder.h index 1f77e502a528..e935f7b2b03b 100644 --- a/xen/arch/x86/include/asm/byteorder.h +++ b/xen/arch/x86/include/asm/byteorder.h @@ -1,7 +1,7 @@ #ifndef __ASM_X86_BYTEORDER_H__ #define __ASM_X86_BYTEORDER_H__ -#include +#include #include static inline __attribute_const__ __u32 ___arch__swab32(__u32 x) diff --git a/xen/arch/x86/include/asm/hvm/svm/svmdebug.h b/xen/arch/x86/include/asm/hvm/svm/svmdebug.h index f1cde676dca1..2fb76ec24c76 100644 --- a/xen/arch/x86/include/asm/hvm/svm/svmdebug.h +++ b/xen/arch/x86/include/asm/hvm/svm/svmdebug.h @@ -8,7 +8,7 @@ #ifndef __ASM_X86_HVM_SVM_SVMDEBUG_H__ #define __ASM_X86_HVM_SVM_SVMDEBUG_H__ -#include +#include #include void svm_sync_vmcb(struct vcpu *v, enum vmcb_sync_state new_state); diff --git a/xen/arch/x86/include/asm/hvm/vmx/vmx.h b/xen/arch/x86/include/asm/hvm/vmx/vmx.h index 36c108d8797d..c84acc221daa 100644 --- a/xen/arch/x86/include/asm/hvm/vmx/vmx.h +++ b/xen/arch/x86/include/asm/hvm/vmx/vmx.h @@ -8,7 +8,8 @@ #define __ASM_X86_HVM_VMX_VMX_H__ #include -#include +#include + #include #include #include diff --git a/xen/arch/x86/include/asm/io_apic.h b/xen/arch/x86/include/asm/io_apic.h index ef0878b09e24..bd8cb95f46b1 100644 --- a/xen/arch/x86/include/asm/io_apic.h +++ b/xen/arch/x86/include/asm/io_apic.h @@ -1,7 +1,8 @@ #ifndef __ASM_IO_APIC_H #define __ASM_IO_APIC_H -#include +#include + #include #include #include diff --git a/xen/arch/x86/include/asm/page.h b/xen/arch/x86/include/asm/page.h index b585235d064a..3647bb1260c2 100644 --- a/xen/arch/x86/include/asm/page.h +++ b/xen/arch/x86/include/asm/page.h @@ -9,7 +9,7 @@ #define PAGE_ORDER_1G 18 #ifndef __ASSEMBLY__ -# include +# include # include #endif diff --git a/xen/arch/x86/include/asm/processor.h b/xen/arch/x86/include/asm/processor.h index f983ff501d95..3b3cf51814f8 100644 --- a/xen/arch/x86/include/asm/processor.h +++ b/xen/arch/x86/include/asm/processor.h @@ -9,7 +9,6 @@ #include #include #include -#include #include #include #endif diff --git a/xen/arch/x86/include/asm/x86_64/page.h b/xen/arch/x86/include/asm/x86_64/page.h index 26bdb4b19bb9..53faa7875baf 100644 --- a/xen/arch/x86/include/asm/x86_64/page.h +++ b/xen/arch/x86/include/asm/x86_64/page.h @@ -19,7 +19,7 @@ static inline unsigned long canonicalise_addr(unsigned long addr) return addr & ~CANONICAL_MASK; } -#include +#include #include diff --git a/xen/arch/x86/mm/p2m-ept.c b/xen/arch/x86/mm/p2m-ept.c index ffd34a1cc65f..85c4e8e54f66 100644 --- a/xen/arch/x86/mm/p2m-ept.c +++ b/xen/arch/x86/mm/p2m-ept.c @@ -11,7 +11,6 @@ #include #include #include -#include #include #include #include diff --git a/xen/common/trace.c b/xen/common/trace.c index df4a719e4b43..17d62f70561f 100644 --- a/xen/common/trace.c +++ b/xen/common/trace.c @@ -16,7 +16,6 @@ * it's possible to reconstruct a chronological record of trace events. */ -#include #include #include #include diff --git a/xen/drivers/char/arm-uart.c b/xen/drivers/char/arm-uart.c index eeb9ceefc06a..8098a968c285 100644 --- a/xen/drivers/char/arm-uart.c +++ b/xen/drivers/char/arm-uart.c @@ -18,7 +18,7 @@ */ #include -#include + #include #include #include diff --git a/xen/include/xen/bitops.h b/xen/include/xen/bitops.h index 33619a0873fe..4cd0310789b5 100644 --- a/xen/include/xen/bitops.h +++ b/xen/include/xen/bitops.h @@ -1,6 +1,6 @@ #ifndef _LINUX_BITOPS_H #define _LINUX_BITOPS_H -#include +#include /* * Create a contiguous bitmask starting at bit position @l and ending at diff --git a/xen/include/xen/spinlock.h b/xen/include/xen/spinlock.h index ca40c71c88f9..0a02a527dc59 100644 --- a/xen/include/xen/spinlock.h +++ b/xen/include/xen/spinlock.h @@ -2,9 +2,10 @@ #define __SPINLOCK_H__ #include +#include + #include #include -#include #define SPINLOCK_CPU_BITS 12 -- 2.30.2 From xen-devel-bounces@lists.xenproject.org Tue Jun 27 07:56:44 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 07:56:44 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555902.868105 (Exim 4.92) (envelope-from ) id 1qE3Z2-0000RP-Ix; Tue, 27 Jun 2023 07:56:40 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555902.868105; Tue, 27 Jun 2023 07:56:40 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE3Z2-0000PY-Ea; Tue, 27 Jun 2023 07:56:40 +0000 Received: by outflank-mailman (input) for mailman id 555902; Tue, 27 Jun 2023 07:56:39 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE3Z1-0008Ub-7a for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 07:56:39 +0000 Received: from esa5.hc3370-68.iphmx.com (esa5.hc3370-68.iphmx.com [216.71.155.168]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 23ce6c26-14c0-11ee-b237-6b7b168915f2; Tue, 27 Jun 2023 09:56:37 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 23ce6c26-14c0-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1687852598; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=k1fxdFveWZOwPq//vleO1HJJOO6CSm3z/ztSLPP21Wo=; b=YyvF46bSiDdKRMk+88YQjFJdS1ersHFXC9YoYTu/T39oc+F6nGovFhUU uHywfmdfGV9FX9sYaq9Z4I/Pll0HxHlqmhxrqEDhwhx1tTyg21XfPcsr1 EKDF5ejNTxA8WYZSwpR+aU+fbdijn/PlAP2j2kQzno0z4eI+XEH0DO8oG g=; Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none X-SBRS: 4.0 X-MesageID: 113007171 X-Ironport-Server: esa5.hc3370-68.iphmx.com X-Remote-IP: 162.221.156.123 X-Policy: $RELAYED IronPort-Data: A9a23:ocFjo6ATnRO1ZBVW/ynkw5YqxClBgxIJ4kV8jS/XYbTApGlz1DRTy mNOXWjVO/rbYWTzKdwlaNu3/BkFuZTUzdNrQQY4rX1jcSlH+JHPbTi7wuUcHAvJd5GeExg3h yk6QoOdRCzhZiaE/n9BCpC48T8nk/nOHuGmYAL9EngZbRd+Tys8gg5Ulec8g4p56fC0GArIs t7pyyHlEAbNNwVcbCRMsspvlDs15K6p4G1C4QRnDRx2lAS2e0c9Xcp3yZ6ZdxMUcqEMdsamS uDKyq2O/2+x13/B3fv8z94X2mVTKlLjFVDmZkh+AsBOsTAbzsAG6Y4pNeJ0VKtio27hc+ada jl6ncfYpQ8BZsUgkQmGOvVSO3kW0aZuoNcrLZUj2CA6IoKvn3bEmp1T4E8K0YIw1LpuGn9P/ KwkAykqTA2vi8K5+6KbVbw57igjBJGD0II3v3hhyXfSDOo8QICFSKLPjTNa9G5u3IYUR6+YP pdHL2M1N3wsYDUWUrsTILs4kP2lmT/UdDpApUjOjaE2/3LS3Ep6172F3N/9I4XRHZ0KxxnBz o7A12/nWygbBeWd8xGqtXSGl8HklyrHVLtHQdVU8dY12QbOlwT/EiY+RVa95PW0lEO6c9ZeM FAPvDojq7Ao806mRcW7WAe3yFaNuh8HR9NRCas08giLwavPyxmVDS4PSTspQN4sudIyRDcq/ kSUhN6vDjtq2JWOUm6U/LqQqTK0OAAWIHUEaCtCShEKi/H8pKkjgxSJScxseIa3k9n0FDfY0 z2M6i8kiN07s8kP0Kmq+EHdtBilrJPJUw0d6x3eWySu6QYRTISofZCy4F7Xq/NJNp+ET0Kpt WIB3cOZ6YgmB5aHnj2AW+UJEbSg4d6KNTTdhRhkGJxJ3z+q/Xikf4xZ/jBlDEhsO8cAPzTuZ Sf7vgdc54RSPT2pcLVwaIKyDOwlyKHhEZLuUfW8RsFHZJFqaAac/SZGf0eIw2f3nU4jkKcyN I2ad8nqBnEfYYx71De/Xfwa15cxzzgiwnneQ5/6yRmqy7uYazieTrJtDbeVRrlntuXe+lyTq osBcZLQkH2zTdESfAH5rZcIM1EDfUQQHLfUtuBbVuG4Mip5TTRJ5+Dq/V8xR2B0t/0LxriYo yjtABEwJEnX3iOed1jTApx3QPa2BMsk8ypmVcA5FQzws0XPd7pD+0v2m3EfWbA8vNJuwvdvJ xXuU5XRW68fItgrFtl0UHUckGCBXE7x7e52F3D5CAXThrY5L+AzxvfqfxH06A4FBTetuM01r tWIj12LHspbG1g7XZmONppDKm9dWlBHwopPs7bgeIEPKC0ADqA0Q8AOshPHC55VckiSrtdr/ w2XHQ0ZtYHwT3wdqbH0aVS/h97xSYNWRxMKd1Q3GJ7qbUE2CEL/m94fOAtJFBiBPF7JFFKKP 7oJlKCta6RXwT6nceNUSt5W8E733PO3z5cy8+iuNCyjg4iDYl+4HkS74A== IronPort-HdrOrdr: A9a23:Kijq1KzoqX54I12jwYdiKrPwFr1zdoMgy1knxilNoHtuA6+lfq GV/MjzsCWetN9/Yh4dcLy7VJVoIkm8yXcW2/h1AV7KZmCP0gaVxepZg7cKrQeQfBHWx6pw0r phbrg7KPCYNykdsS+D2njbLz/4+qjizJyV X-Talos-CUID: =?us-ascii?q?9a23=3AoupztWkRvEPokZWYViDHhtJ4QSTXOVOB1WzOIkb?= =?us-ascii?q?oNU1wb5+IZVOw95h0s9U7zg=3D=3D?= X-Talos-MUID: 9a23:YvC48AR42OW4cmeXRXTnmmhbNfZR4Z6FJwcLu4QokMONCSBJbmI= X-IronPort-AV: E=Sophos;i="6.01,161,1684814400"; d="scan'208";a="113007171" From: Andrew Cooper To: Xen-devel CC: Andrew Cooper , Jan Beulich , Alistair Francis , Jan Beulich , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Wei Liu , Stefano Stabellini , Julien Grall , Volodymyr Babchuk , Bertrand Marquis , Bob Eshleman , Connor Davis , Oleksii Kurochko , Shawn Anastasio , Timothy Pearson Subject: [PATCH v2 1/3] xen/types: Drop #ifdefary for __{SIZE,PTRDIFF}_TYPE__ Date: Tue, 27 Jun 2023 08:56:16 +0100 Message-ID: <20230627075618.1180248-2-andrew.cooper3@citrix.com> X-Mailer: git-send-email 2.30.2 In-Reply-To: <20230627075618.1180248-1-andrew.cooper3@citrix.com> References: <20230627075618.1180248-1-andrew.cooper3@citrix.com> MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit All supported compilers have these types. No functional change. Signed-off-by: Andrew Cooper Reviewed-by: Jan Beulich Reviewed-by: Alistair Francis --- CC: Jan Beulich CC: Roger Pau Monné CC: Wei Liu CC: Stefano Stabellini CC: Julien Grall CC: Volodymyr Babchuk CC: Bertrand Marquis CC: Bob Eshleman CC: Alistair Francis CC: Connor Davis CC: Oleksii Kurochko CC: Shawn Anastasio CC: Timothy Pearson https://godbolt.org/z/Y6PWcd6js --- xen/include/xen/types.h | 9 +-------- 1 file changed, 1 insertion(+), 8 deletions(-) diff --git a/xen/include/xen/types.h b/xen/include/xen/types.h index 6aba80500aaf..8b22a02eeaa4 100644 --- a/xen/include/xen/types.h +++ b/xen/include/xen/types.h @@ -5,18 +5,11 @@ #include -#if defined(__SIZE_TYPE__) typedef __SIZE_TYPE__ size_t; -#else -typedef unsigned long size_t; -#endif + typedef signed long ssize_t; -#if defined(__PTRDIFF_TYPE__) typedef __PTRDIFF_TYPE__ ptrdiff_t; -#else -typedef signed long ptrdiff_t; -#endif #define BITS_TO_LONGS(bits) \ (((bits)+BITS_PER_LONG-1)/BITS_PER_LONG) -- 2.30.2 From xen-devel-bounces@lists.xenproject.org Tue Jun 27 07:56:45 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 07:56:45 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555901.868098 (Exim 4.92) (envelope-from ) id 1qE3Z2-0000IM-1i; Tue, 27 Jun 2023 07:56:40 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555901.868098; Tue, 27 Jun 2023 07:56:40 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE3Z1-0000I6-Ue; Tue, 27 Jun 2023 07:56:39 +0000 Received: by outflank-mailman (input) for mailman id 555901; Tue, 27 Jun 2023 07:56:38 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE3Z0-0008EH-Bw for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 07:56:38 +0000 Received: from esa5.hc3370-68.iphmx.com (esa5.hc3370-68.iphmx.com [216.71.155.168]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 2351cd2f-14c0-11ee-8611-37d641c3527e; Tue, 27 Jun 2023 09:56:35 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 2351cd2f-14c0-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1687852596; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=WF6+MO8uRCqSL2DrFswTeiveqvFOb1H6UCIU4GeCi+k=; b=ID0vt8raTQrK7znBArIqamxjI2dz+ivQuK1r4OxRFDCNJNf81eoruraf fjO4sqaJTzYOP+5dVG0Q36lt1s4v+KCYznoA4OI2lwsyYvPjnBqocyl+U mudhIXa9cyjIpV6kawKkm6G7yZZ5c8jCYlBDyR/q60gD4KBpjvp9ez1Cb 4=; Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none X-SBRS: 4.0 X-MesageID: 113007169 X-Ironport-Server: esa5.hc3370-68.iphmx.com X-Remote-IP: 162.221.156.123 X-Policy: $RELAYED IronPort-Data: A9a23:dl2UWqAVKAkIVRVW/w7kw5YqxClBgxIJ4kV8jS/XYbTApDgn02QBz 2AXUT3UP/eLZGX2Kd13aIu/9U1XvpXQn4M1QQY4rX1jcSlH+JHPbTi7wuUcHAvJd5GeExg3h yk6QoOdRCzhZiaE/n9BCpC48T8nk/nOHuGmYAL9EngZbRd+Tys8gg5Ulec8g4p56fC0GArIs t7pyyHlEAbNNwVcbCRMsspvlDs15K6p4G1C4QRnDRx2lAS2e0c9Xcp3yZ6ZdxMUcqEMdsamS uDKyq2O/2+x13/B3fv8z94X2mVTKlLjFVDmZkh+AsBOsTAbzsAG6Y4pNeJ0VKtio27hc+ada jl6ncfYpQ8BZsUgkQmGOvVSO3kW0aZuoNcrLZUj2CA6IoKvn3bEmp1T4E8K0YIwyLwtB2gXr /0idhc1Zwusnfnn+7zmY7w57igjBJGD0II3v3hhyXfSDOo8QICFSKLPjTNa9G5u3IYUR6+YP pdHL2M1N3wsYDUWUrsTILs4kP2lmT/UdDpApUjOjaE2/3LS3Ep6172F3N/9I4XRHZ0KxxjJz o7A133WXxEkLsCw8jrf1Cnro6jGtCjBXp1HQdVU8dY12QbOlwT/EiY+RVa95PW0lEO6c9ZeM FAPvDojq7Ao806mRcW7WAe3yFamlBMBX9tbE8Uh9RqAjKHT5m6xHXMYRzRMbNgnss4eRjEw0 FKN2dTzClRHr7m9WX+bsLCOoluaOzURLGIETT8JS00C+daLiL80ihXDX9NyCpmfh9f+GSzz6 z2SpS14jLIW5eYB2r+n51nBj3Spr4LQUw8uzgzNWySu6QYRTIehZpe04FnBq/haJYCST0Kpo 3QP3cOZ6YgmB5aHnj2AW+UJEbSg4d6KNTTdhRhkGJxJ3z+q/Xikf4xZ/jBlDEhsO8cAPzTuZ Sf7vgdc54RSPT2pcLVwaIKyDOwlyKHhEZLuUfW8RsFHZJFqaAac/SZGf0eIw2f3nU4jkKcyN I2ad8nqBnEfYYx71De/Xfwa15cxzzgiwnneQ5/6yRmqy7uYazieTrJtGEGJZO0j8KTCqgza9 d9FPuOA1hpEXevxJCLQ9OYuwUsidCZhQ8qs8ooOK7DFe1A9cI08NxPP6YF7IYpsxv5UrLnvx nimdVVDmWHx2FSSfG1mdUtfhKPTsYdX9CxrYnxxZAbyhRDPcq70sv5BKsJfka0PsbU6kKUqF 6Rtl9CoWKwnd9jRx9gKgXARRqRGfQ/juw+BNjHNjNMXL885HFyhFjMJk2LSGMgy4smf75FWT 0WIjF+zfHb6b10K4DzqQPyu1UitmnMWhfh/WUDFSvEKJhWzoNA2d3Wg0adpSy3pFfkk7mHAv zt6/D9C/bWdy2PL2IehaV+4Q3eBTLIlQxsy85jz5reqLyjKlldPMqcZONtkiQv1DTuukI37P LU98h0JGKFf9Lq8m9YmQukDIGNXz4eHmoK2OSw+QymQPgXwU+M9SpREtOEW3pBwKnZikVPec iqyFhNyZd1l5OuN/IYtGTcY IronPort-HdrOrdr: A9a23:S+hlBa4Sx2du2tLjMwPXwPLXdLJyesId70hD6qkXc203TiX4ra CTdZEgviMc5wx/ZJhNo7y90cq7IE80l6QFhLX5VI3KNGOKhILCFu9fBOXZslrdMhy72ulB1b pxN4hSYeeAa2SS9fyKgjVQyuxQpOW6zA== X-Talos-CUID: 9a23:DWPtTm+/WLEwxpVg8uKVv3xOQMYsKyfc9in3G0ajJnxyGYabFHbFrQ== X-Talos-MUID: 9a23:/EgCkwvHh68B5MyQoM2nnR4/NPly/4uVCBorytIj/MCtPhZ2JGLI X-IronPort-AV: E=Sophos;i="6.01,161,1684814400"; d="scan'208";a="113007169" From: Andrew Cooper To: Xen-devel CC: Andrew Cooper , Jan Beulich , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Wei Liu , Stefano Stabellini , Julien Grall , Volodymyr Babchuk , Bertrand Marquis , Bob Eshleman , Alistair Francis , Connor Davis , "Oleksii Kurochko" , Shawn Anastasio , Timothy Pearson , Roberto Bagnara Subject: [PATCH v2 3/3] xen/types: Rework stdint vs __{u,s}$N types Date: Tue, 27 Jun 2023 08:56:18 +0100 Message-ID: <20230627075618.1180248-4-andrew.cooper3@citrix.com> X-Mailer: git-send-email 2.30.2 In-Reply-To: <20230627075618.1180248-1-andrew.cooper3@citrix.com> References: <20230627075618.1180248-1-andrew.cooper3@citrix.com> MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit Xen uses the stdint types. Rearrange the types headers to define the compatibility __{u,s}$N types in terms of the stdint types, not the other way around. All all supported compilers on architectures other than x86 support the stdint __*_TYPE__ macros. Move these into a new xen/stdint.h to avoid them being duplicated in each architecture. For the compilers which don't support the __*_TYPE__ macros, synthesize appropriate alternatives. This cleanup has the side effect of removing all use of the undocumented __signed__ GCC keyword. This is a vestigial remnant of `gcc -traditional` mode for dialetcs of C prior to the introduction of the signed keyword. No functional change. Signed-off-by: Andrew Cooper --- CC: Jan Beulich CC: Roger Pau Monné CC: Wei Liu CC: Stefano Stabellini CC: Julien Grall CC: Volodymyr Babchuk CC: Bertrand Marquis CC: Bob Eshleman CC: Alistair Francis CC: Connor Davis CC: Oleksii Kurochko CC: Shawn Anastasio CC: Timothy Pearson CC: Roberto Bagnara v2: * Introduce xen/stdint.h as discussed at XenSummit --- xen/arch/arm/include/asm/types.h | 19 ----------------- xen/arch/riscv/include/asm/types.h | 19 ----------------- xen/arch/x86/include/asm/types.h | 14 ------------- xen/include/xen/stdint.h | 33 ++++++++++++++++++++++++++++++ xen/include/xen/types.h | 20 ++++++++---------- 5 files changed, 42 insertions(+), 63 deletions(-) create mode 100644 xen/include/xen/stdint.h diff --git a/xen/arch/arm/include/asm/types.h b/xen/arch/arm/include/asm/types.h index fb6618ef247f..545a5e9d1175 100644 --- a/xen/arch/arm/include/asm/types.h +++ b/xen/arch/arm/include/asm/types.h @@ -1,25 +1,6 @@ #ifndef __ARM_TYPES_H__ #define __ARM_TYPES_H__ -typedef __signed__ char __s8; -typedef unsigned char __u8; - -typedef __signed__ short __s16; -typedef unsigned short __u16; - -typedef __signed__ int __s32; -typedef unsigned int __u32; - -#if defined(__GNUC__) && !defined(__STRICT_ANSI__) -#if defined(CONFIG_ARM_32) -typedef __signed__ long long __s64; -typedef unsigned long long __u64; -#elif defined (CONFIG_ARM_64) -typedef __signed__ long __s64; -typedef unsigned long __u64; -#endif -#endif - typedef signed char s8; typedef unsigned char u8; diff --git a/xen/arch/riscv/include/asm/types.h b/xen/arch/riscv/include/asm/types.h index 0c0ce78c8f6e..93a680a8f323 100644 --- a/xen/arch/riscv/include/asm/types.h +++ b/xen/arch/riscv/include/asm/types.h @@ -1,25 +1,6 @@ #ifndef __RISCV_TYPES_H__ #define __RISCV_TYPES_H__ -typedef __signed__ char __s8; -typedef unsigned char __u8; - -typedef __signed__ short __s16; -typedef unsigned short __u16; - -typedef __signed__ int __s32; -typedef unsigned int __u32; - -#if defined(__GNUC__) && !defined(__STRICT_ANSI__) -#if defined(CONFIG_RISCV_32) -typedef __signed__ long long __s64; -typedef unsigned long long __u64; -#elif defined (CONFIG_RISCV_64) -typedef __signed__ long __s64; -typedef unsigned long __u64; -#endif -#endif - typedef signed char s8; typedef unsigned char u8; diff --git a/xen/arch/x86/include/asm/types.h b/xen/arch/x86/include/asm/types.h index 2d56aed66782..c9d257716551 100644 --- a/xen/arch/x86/include/asm/types.h +++ b/xen/arch/x86/include/asm/types.h @@ -1,20 +1,6 @@ #ifndef __X86_TYPES_H__ #define __X86_TYPES_H__ -typedef __signed__ char __s8; -typedef unsigned char __u8; - -typedef __signed__ short __s16; -typedef unsigned short __u16; - -typedef __signed__ int __s32; -typedef unsigned int __u32; - -#if defined(__GNUC__) && !defined(__STRICT_ANSI__) -typedef __signed__ long __s64; -typedef unsigned long __u64; -#endif - typedef signed char s8; typedef unsigned char u8; diff --git a/xen/include/xen/stdint.h b/xen/include/xen/stdint.h new file mode 100644 index 000000000000..4cf82790f196 --- /dev/null +++ b/xen/include/xen/stdint.h @@ -0,0 +1,33 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ +#ifndef __XEN_STDINT_H__ +#define __XEN_STDINT_H__ + +#ifndef __INT8_TYPE__ /* GCC <= 4.4 */ + +typedef __INT8_TYPE__ int8_t; +typedef __UINT8_TYPE__ uint8_t; +typedef __INT16_TYPE__ int16_t; +typedef __UINT16_TYPE__ uint16_t; +typedef __INT32_TYPE__ int32_t; +typedef __UINT32_TYPE__ uint32_t; +typedef __INT64_TYPE__ int64_t; +typedef __UINT64_TYPE__ uint64_t; + +#else + +/* + * Define the types using GCC internal notation. Clang understands this too. + * https://gcc.gnu.org/onlinedocs/gcc/Common-Variable-Attributes.html + */ +typedef signed __attribute__((__mode__(QI))) int8_t; +typedef unsigned __attribute__((__mode__(QI))) uint8_t; +typedef signed __attribute__((__mode__(HI))) int16_t; +typedef unsigned __attribute__((__mode__(HI))) uint16_t; +typedef signed __attribute__((__mode__(SI))) int32_t; +typedef unsigned __attribute__((__mode__(SI))) uint32_t; +typedef signed __attribute__((__mode__(DI))) int64_t; +typedef unsigned __attribute__((__mode__(DI))) uint64_t; + +#endif + +#endif /* __XEN_STDINT_H__ */ diff --git a/xen/include/xen/types.h b/xen/include/xen/types.h index 8b22a02eeaa4..c873c81ccf06 100644 --- a/xen/include/xen/types.h +++ b/xen/include/xen/types.h @@ -2,6 +2,7 @@ #define __TYPES_H__ #include +#include #include @@ -39,17 +40,14 @@ typedef __PTRDIFF_TYPE__ ptrdiff_t; #define LONG_MIN (-LONG_MAX - 1) #define ULONG_MAX (~0UL) -typedef __u8 uint8_t; -typedef __s8 int8_t; - -typedef __u16 uint16_t; -typedef __s16 int16_t; - -typedef __u32 uint32_t; -typedef __s32 int32_t; - -typedef __u64 uint64_t; -typedef __s64 int64_t; +typedef uint8_t __u8; +typedef int8_t __s8; +typedef uint16_t __u16; +typedef int16_t __s16; +typedef uint32_t __u32; +typedef int32_t __s32; +typedef uint64_t __u64; +typedef int64_t __s64; typedef __u16 __le16; typedef __u16 __be16; -- 2.30.2 From xen-devel-bounces@lists.xenproject.org Tue Jun 27 08:10:03 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 08:10:03 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555929.868117 (Exim 4.92) (envelope-from ) id 1qE3lg-0003f9-1s; Tue, 27 Jun 2023 08:09:44 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555929.868117; Tue, 27 Jun 2023 08:09:44 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE3lf-0003f2-Va; Tue, 27 Jun 2023 08:09:43 +0000 Received: by outflank-mailman (input) for mailman id 555929; Tue, 27 Jun 2023 08:09:42 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE3le-0003eu-4X for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 08:09:42 +0000 Received: from NAM02-DM3-obe.outbound.protection.outlook.com (mail-dm3nam02on20610.outbound.protection.outlook.com [2a01:111:f400:7e83::610]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id f61fb78a-14c1-11ee-b237-6b7b168915f2; Tue, 27 Jun 2023 10:09:39 +0200 (CEST) Received: from MW2PR16CA0034.namprd16.prod.outlook.com (2603:10b6:907::47) by MW4PR12MB5668.namprd12.prod.outlook.com (2603:10b6:303:16b::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.26; Tue, 27 Jun 2023 08:09:36 +0000 Received: from CO1NAM11FT028.eop-nam11.prod.protection.outlook.com (2603:10b6:907:0:cafe::fd) by MW2PR16CA0034.outlook.office365.com (2603:10b6:907::47) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.33 via Frontend Transport; Tue, 27 Jun 2023 08:09:36 +0000 Received: from SATLEXMB03.amd.com (165.204.84.17) by CO1NAM11FT028.mail.protection.outlook.com (10.13.175.214) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6500.47 via Frontend Transport; Tue, 27 Jun 2023 08:09:35 +0000 Received: from SATLEXMB08.amd.com (10.181.40.132) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Tue, 27 Jun 2023 03:09:34 -0500 Received: from SATLEXMB04.amd.com (10.181.40.145) by SATLEXMB08.amd.com (10.181.40.132) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Tue, 27 Jun 2023 01:09:34 -0700 Received: from [10.71.193.39] (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server id 15.1.2507.23 via Frontend Transport; Tue, 27 Jun 2023 03:09:33 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: f61fb78a-14c1-11ee-b237-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=DiUBxaGa++6XPm//dBkqg0PSp+Qhh2rtXAklfpGV9bCEcVx3WI348WVtuXFmzX7+oJ19QnQ8Ls1P7Bm1ymrzh64OQ46/pgeGm7uZZZbdCoMmV7f0W+9ktDLdO1AeMrNN452Iicm+oTFIIrj9RcVRPA6X66VtKj43hC8LB38ojji44TvmKJBWy8r+c9JJ3qX1c4/Yzh1ahS8dqN++EBdtntS7dIEctItKAs+k0607r81Jy4WlXiguaM4q11dlhWvzjlwl5N1HmhsRP80eZQeSTOGFz5uSFl18mVVJwcm3plyDuE1+k59yrzxoSN6tnX9zEUAN55Kk87OiJG383mPiAw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=R88fq9ogQ2owywQM64SA3x6PE4QsQk17DhiGpWWPvKQ=; b=KoqMLRec6F7QxR6cBIXMPdfk8MaqjE2NjSeQxc0u4Kz3MWF+jFaj0xRS+4d9QkKulPwZskgPNnQ20JaD4M1imo1g5Bkzqdx7n6mw0SQ2ZqoMH3ncLcNHDNg3NIz+RHm/jHSyG4OUpwY+SXHZuM+x4y8iZmOgES9kpkms2oqNM7Km2Y/C9ZLlk5/opJDYFB6x1yv4Tzhn8X8KaAp87dGqGM3OLQawv8G13xhr7k4nuT2V8j8Qye5fJzbe8+Yh04dbF+L0H4+bwp4ozIHd9MtyoBGfsZbBBLewgCfHIu7AccZRMwFg8d1Xr5VvSWfSx4tTyVkuLZtGo0sLTXjseSM8sA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=xen.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=R88fq9ogQ2owywQM64SA3x6PE4QsQk17DhiGpWWPvKQ=; b=ry+1BpjETDepqbshxgUj4nfqu2vsSIo7yjcag+9Vvob0luNH/TAL6eu1Erc/ORxE1CAo9WXbpW04s+gdcGyh1KTxQ/bIRpfBVqRX5LWGHezbxXqxmZ2Ejz9FWU0WiX7H46w8v2D0p607I0NNbN0LMEVEmpz9ewdXTimRjDf9bF8= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C Message-ID: Date: Tue, 27 Jun 2023 10:09:32 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH 8/9] xen/arm: Allow the user to build Xen with USBAN Content-Language: en-US To: Julien Grall , CC: , , Julien Grall , Stefano Stabellini , "Bertrand Marquis" , Volodymyr Babchuk References: <20230625204907.57291-1-julien@xen.org> <20230625204907.57291-9-julien@xen.org> <804682ce-ad88-34dc-1501-c9ff6347fb8b@amd.com> From: Michal Orzel In-Reply-To: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO1NAM11FT028:EE_|MW4PR12MB5668:EE_ X-MS-Office365-Filtering-Correlation-Id: 952f73ea-80ee-4640-f552-08db76e5d8b2 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 29o1DQ7Vy2mX165cA/s9163Nxz24gZrretwVUla29LRGMepQd3FA2LLTxHUyM2QfuPJBSPLgefOM1JzCPrS4n17aMmJtQbaJsLLNbcY7NmTTJJKLFJIRppKnpf9U0/+NM6LHYexRxExG7tgcR9iU8qhW8hSxunrn58ywWSNrBIVDy//lYPzgXdgttV1HHD9SI1A4ESQpJRixO1IZGDr+q3cJqCwNeNJ6685qGEA4FwmtwHvTbFycmjzjwKFdtoaIbR7sN5JeP74WvAoc1u7sY1SlcWPurqn+ulsA4Em0ey7cAADaf+mGD4lDe/inimwEX9s639il2i1xsVz2tH1vxiXRiqUI3yQzwzwWVu/+fWwwsYMnyVcbK8zk2FxMwZEDaEXvC1qgLNcq4g1Dt8CiLI4K6oWCCbXJhJbyHneLOXos7ZPCMHEw7uOoXstxRcKfYgyHVU1uce+kug3mWZDZ5RiER1EyopW2H1MLouebyRLj5AZJUeF9dIjU4wdk2cOjnIBdMc6dTsvVeUb4TLSJCQsQzq5quOjm13rBSvMUfHo+YFN36LYQM+1e9lGVhIXzTKrAB+FellAXmjmVHchOkp5QGyWejUbMU+8zSrvH6wuzS/gJVp7Nt1wZyPXKbBAnu9l1sC+SzmtJtzQ6v3hP8V/5F7WfTAuzBTDN9gteCzPbb4v3wEFfq6+RKJRv5T12hC0roRmKjFxNaQavNAHO7T1yI4EMn3evzKWYFZwEXDAwVtW2lTMJWq5n/rde2o+w8SV0HLsC6xHEqSXqXlXgXIE0eM2Hc1M7fXi/efyTufd83oiT+gaYfl2zxCy0EKiI X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(376002)(396003)(136003)(346002)(39860400002)(451199021)(46966006)(36840700001)(40470700004)(31686004)(186003)(26005)(2906002)(5660300002)(82740400003)(8676002)(36756003)(336012)(82310400005)(316002)(16576012)(54906003)(81166007)(86362001)(110136005)(478600001)(31696002)(4326008)(2616005)(426003)(47076005)(83380400001)(44832011)(41300700001)(70206006)(8936002)(40460700003)(70586007)(53546011)(356005)(36860700001)(40480700001)(36900700001)(43740500002);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Jun 2023 08:09:35.6689 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 952f73ea-80ee-4640-f552-08db76e5d8b2 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com] X-MS-Exchange-CrossTenant-AuthSource: CO1NAM11FT028.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW4PR12MB5668 Hi Julien, On 26/06/2023 14:56, Julien Grall wrote: > > > Hi, > > On 26/06/2023 12:56, Michal Orzel wrote: >> >> >> On 25/06/2023 22:49, Julien Grall wrote: >>> >>> >>> From: Julien Grall >>> >>> UBSAN has been enabled a few years ago on x86 but was never >>> enabled on Arm because the final binary is bigger than 2MB ( >>> the maximum we can currently handled). >>> >>> With the recent rework, it is now possible to grow Xen over 2MB. >>> So there is no more roadblock to enable Xen other than increasing >>> the reserved area. >>> >>> On my setup, for arm32, the final binaray was very close to 4MB. >>> Furthermore, one may want to enable USBAN and GCOV which would put >>> the binary well-over 4MB (both features require for some space). >>> Therefore, increase the size to 8MB which should us some margin. >>> >>> Signed-off-by: Julien Grall >>> >>> ---- >>> >>> The drawback with this approach is that we are adding 6 new >>> page-table (3 for boot and 3 for runtime) that are statically >>> allocated. So the final Xen binary will be 24KB bigger when >>> neither UBSAN nor GCOV. >>> >>> If this is not considered acceptable, then we could make the >>> size of configurable in the Kconfig and decide it based on the >>> features enabled. >> Both of these features are enabled only in a debug build of Xen, so >> another option would be to increase Xen size only for a debug build. > > At least UBSAN can be selected without DEBUG. For that you need to add > EXPERT. > > Anyway, from your comment, it is not clear to me whether you dislike the > existing approach (and why) or you are OK with the increase. Sorry, I was traveling and did not have time to complete review. I cannot see why increasing the size would be problematic so it is ok. That said, it could be a good idea to write some comment above XEN_VIRT_SIZE, that this value is somewhat exaggerated, so that we are on the safe side at the time of activating features like UBSAN/GCOV. Also, it would be nice to update comments in head.S of both arm32 and arm64 above GLOBAL(start) that were left stating: "All of text+data+bss must fit in 2MB, or the initial pagetable code below will need adjustment." Other than that: Reviewed-by: Michal Orzel ~Michal From xen-devel-bounces@lists.xenproject.org Tue Jun 27 08:26:48 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 08:26:48 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555935.868128 (Exim 4.92) (envelope-from ) id 1qE425-00068r-CM; Tue, 27 Jun 2023 08:26:41 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555935.868128; Tue, 27 Jun 2023 08:26:41 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE425-00068k-8b; Tue, 27 Jun 2023 08:26:41 +0000 Received: by outflank-mailman (input) for mailman id 555935; Tue, 27 Jun 2023 08:26:39 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE423-00068e-3E for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 08:26:39 +0000 Received: from mail-lf1-x130.google.com (mail-lf1-x130.google.com [2a00:1450:4864:20::130]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 55ab23f2-14c4-11ee-b237-6b7b168915f2; Tue, 27 Jun 2023 10:26:37 +0200 (CEST) Received: by mail-lf1-x130.google.com with SMTP id 2adb3069b0e04-4f86fbe5e4fso5538652e87.2 for ; Tue, 27 Jun 2023 01:26:37 -0700 (PDT) Received: from [192.168.203.175] ([94.75.70.14]) by smtp.gmail.com with ESMTPSA id c18-20020ac244b2000000b004f843f31fefsm1422098lfm.281.2023.06.27.01.26.36 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 27 Jun 2023 01:26:36 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 55ab23f2-14c4-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687854397; x=1690446397; h=mime-version:user-agent:content-transfer-encoding:references :in-reply-to:date:cc:to:from:subject:message-id:from:to:cc:subject :date:message-id:reply-to; bh=72IHbVBD99VSHWTYqh7JmGpvBP5E8dLV6bukMnyN/rc=; b=k6FVJo6i43CAynJ6zVGuiO71rJZt0zZOXaSzHiSXkjVEXBFOlozOuRVKySWbIgESeR paPz9PQQBKJ15/4W6tj2G2Fygj4WoSTxCRT9GGCf/K3vVz0X+1oLROFou0jcOvGLTjQJ 80cM1K8EgAQB+usItgMXK1SZnSRDjjnHn1TMafqUyKWCEIXV7cAuLFLFovRFeZpRaAwo 5MEIsXws5WefgEAehozX4K+5eYb5WaNiSsIaGnTYnkal/5XlJ7fkmR/CE4nQqkylN8CP 3AiK8Q55k4kvXXevET8iKHy1xZHgex20twflhsQIO8mwaxhaEeTsLRDl4thcNVVpU6D4 3l/w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687854397; x=1690446397; h=mime-version:user-agent:content-transfer-encoding:references :in-reply-to:date:cc:to:from:subject:message-id:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=72IHbVBD99VSHWTYqh7JmGpvBP5E8dLV6bukMnyN/rc=; b=RB8X8cyyQG/I51fUiithQGoVUfdBTt7x5iJFQ1rRh+JR+2ShzynQCKGsmL5Uh7nmlJ hO9GL8kwmoK9yysMmWk5PWQYcz+JiJw398slS8rlyUFMSl4T54VY6lUadlxIQYfnbShn 396wnVCpbPUZ88ToiSkXSxujEpQ6JDl/qG+lMWgZaT0wdWSC+TwOCyGz52+TgczaBtCx WrfPvecHlsvlmeIg5xBndT/niU93RRkjDEsCpSyHA3g8Cl0Uz+7qwLAjt39VesAMR+Qp 3eQoGJA58uDycONZZRksj81/PcB6IZJtuo7WGJSj4OQ0oxceFFtuaJyAIVgX56Tth/kv xpCQ== X-Gm-Message-State: AC+VfDxSKEmYPDHK4N1dH2m8C2qQChH9cAXBm/jHaoy7rCfxF4QCSHTG zMI8Ot9ptcU2sjj1tqNAtfU= X-Google-Smtp-Source: ACHHUZ6b/iPSP4PEM/ol4BAxHotZt4DZNdy42wdKtaQDXWD24fE9LgDgeABpWMVt0X1y9dK3DSNSCA== X-Received: by 2002:a05:6512:1295:b0:4fb:8771:e898 with SMTP id u21-20020a056512129500b004fb8771e898mr663903lfs.15.1687854397050; Tue, 27 Jun 2023 01:26:37 -0700 (PDT) Message-ID: Subject: Re: [PATCH v2 1/3] xen/types: Drop #ifdefary for __{SIZE,PTRDIFF}_TYPE__ From: Oleksii To: Andrew Cooper , Xen-devel Cc: Jan Beulich , Alistair Francis , Roger Pau =?ISO-8859-1?Q?Monn=E9?= , Wei Liu , Stefano Stabellini , Julien Grall , Volodymyr Babchuk , Bertrand Marquis , Bob Eshleman , Connor Davis , Shawn Anastasio , Timothy Pearson Date: Tue, 27 Jun 2023 11:26:35 +0300 In-Reply-To: <20230627075618.1180248-2-andrew.cooper3@citrix.com> References: <20230627075618.1180248-1-andrew.cooper3@citrix.com> <20230627075618.1180248-2-andrew.cooper3@citrix.com> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable User-Agent: Evolution 3.48.3 (3.48.3-1.fc38) MIME-Version: 1.0 Reviewed-by: Oleksii Kurochko On Tue, 2023-06-27 at 08:56 +0100, Andrew Cooper wrote: > All supported compilers have these types. >=20 > No functional change. >=20 > Signed-off-by: Andrew Cooper > Reviewed-by: Jan Beulich > Reviewed-by: Alistair Francis > --- > CC: Jan Beulich > CC: Roger Pau Monn=C3=A9 > CC: Wei Liu > CC: Stefano Stabellini > CC: Julien Grall > CC: Volodymyr Babchuk > CC: Bertrand Marquis > CC: Bob Eshleman > CC: Alistair Francis > CC: Connor Davis > CC: Oleksii Kurochko > CC: Shawn Anastasio > CC: Timothy Pearson >=20 > https://godbolt.org/z/Y6PWcd6js > --- > =C2=A0xen/include/xen/types.h | 9 +-------- > =C2=A01 file changed, 1 insertion(+), 8 deletions(-) >=20 > diff --git a/xen/include/xen/types.h b/xen/include/xen/types.h > index 6aba80500aaf..8b22a02eeaa4 100644 > --- a/xen/include/xen/types.h > +++ b/xen/include/xen/types.h > @@ -5,18 +5,11 @@ > =C2=A0 > =C2=A0#include > =C2=A0 > -#if defined(__SIZE_TYPE__) > =C2=A0typedef __SIZE_TYPE__ size_t; > -#else > -typedef unsigned long size_t; > -#endif > + > =C2=A0typedef signed long ssize_t; > =C2=A0 > -#if defined(__PTRDIFF_TYPE__) > =C2=A0typedef __PTRDIFF_TYPE__ ptrdiff_t; > -#else > -typedef signed long ptrdiff_t; > -#endif > =C2=A0 > =C2=A0#define BITS_TO_LONGS(bits) \ > =C2=A0=C2=A0=C2=A0=C2=A0 (((bits)+BITS_PER_LONG-1)/BITS_PER_LONG) From xen-devel-bounces@lists.xenproject.org Tue Jun 27 08:27:25 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 08:27:25 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555940.868138 (Exim 4.92) (envelope-from ) id 1qE42n-0006cr-K7; Tue, 27 Jun 2023 08:27:25 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555940.868138; Tue, 27 Jun 2023 08:27:25 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE42n-0006ck-HB; Tue, 27 Jun 2023 08:27:25 +0000 Received: by outflank-mailman (input) for mailman id 555940; Tue, 27 Jun 2023 08:27:24 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE42m-0006cN-C5 for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 08:27:24 +0000 Received: from mail-lj1-x22f.google.com (mail-lj1-x22f.google.com [2a00:1450:4864:20::22f]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 6fa824c4-14c4-11ee-8611-37d641c3527e; Tue, 27 Jun 2023 10:27:21 +0200 (CEST) Received: by mail-lj1-x22f.google.com with SMTP id 38308e7fff4ca-2b6a0d91e80so29699631fa.3 for ; Tue, 27 Jun 2023 01:27:22 -0700 (PDT) Received: from [192.168.203.175] ([94.75.70.14]) by smtp.gmail.com with ESMTPSA id w15-20020a05651c102f00b002b330c8c0fdsm1626507ljm.83.2023.06.27.01.27.20 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 27 Jun 2023 01:27:21 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 6fa824c4-14c4-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687854442; x=1690446442; h=mime-version:user-agent:content-transfer-encoding:references :in-reply-to:date:cc:to:from:subject:message-id:from:to:cc:subject :date:message-id:reply-to; bh=Pd43LfQ7Fgpi5HWBCdDglO9bwJDKVD+816GelcqXXS4=; b=CrUs8INk0bh/p86OG0WIsDffidsf7S5lTLwuYMJnthngJkKtwz3mq6BFO1lkYPTiW3 eaTH8MYMA1f8JjgkITznvoD+/BDLT6d1nd1P9LWn1fDs/T2ihOP85uonn+JhTCWUhAkS vZ6LRNS69XStFKAWsrtCBarJfBLRyxFBfAV6UXNfI6yA4GWdtCK3n8/jPN10m/Fy2mNv aB4UToEcijhOnOSaTUqyYMdr0XAccS1DZO+vKaCTb9iByt0GWJhUl2RnPQVlAYMKQmIO X/ACCukx48HctYYUzKVi2lSe34BiNOQKGcDy25fOhD7R509sQodT9CUXeeMB7RK+psr9 exFg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687854442; x=1690446442; h=mime-version:user-agent:content-transfer-encoding:references :in-reply-to:date:cc:to:from:subject:message-id:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=Pd43LfQ7Fgpi5HWBCdDglO9bwJDKVD+816GelcqXXS4=; b=Auw+JC5e2iE0FpTDX49BK1cS+WnpLZW06g4TQcPUEaFaWYm59Q5UdQxngmtAArtm+C gvm6DmUFC3QWRPw9kZrED8kEMihvWuuSKL3JOBjCO18vTyex9V7IDTv+dMU16N5A6oFZ 89b3i/lPANcWtnDvK16uZMOO984WDmlU2HatBdfw3Sg/0Jy58Pe15MOE/WeFvbMUYULB 2wqNU3zIalBYyP8N+St2b+QbG4ZqvOuvG/hHGHjVg8M15hw7vZo3+Pkey5pMJ3nsOE68 MKQJWmIvVLxoUxvmdFi8K766D+kCDeAixvgHarVO/AqzsOgtX6od4ZQq7z4Ne+k2HXbO AgvQ== X-Gm-Message-State: AC+VfDyL++ZGhIwgh04rHhM0DxR4c909SHO5KZ0zr7DD8NwcRNQ+TTcB 2JJYFtaF6x2hJKKF/H97qAE= X-Google-Smtp-Source: ACHHUZ6yPwJgCklCycyWYaJRY0l9HCSWcElLUxyOxWXwKnvng5aaFiL/Qo2yxcA54lKOr8Fm3QImug== X-Received: by 2002:a2e:8003:0:b0:2b6:a021:7a93 with SMTP id j3-20020a2e8003000000b002b6a0217a93mr3534510ljg.35.1687854441758; Tue, 27 Jun 2023 01:27:21 -0700 (PDT) Message-ID: Subject: Re: [PATCH v2 3/3] xen/types: Rework stdint vs __{u,s}$N types From: Oleksii To: Andrew Cooper , Xen-devel Cc: Jan Beulich , Roger Pau =?ISO-8859-1?Q?Monn=E9?= , Wei Liu , Stefano Stabellini , Julien Grall , Volodymyr Babchuk , Bertrand Marquis , Bob Eshleman , Alistair Francis , Connor Davis , Shawn Anastasio , Timothy Pearson , Roberto Bagnara Date: Tue, 27 Jun 2023 11:27:20 +0300 In-Reply-To: <20230627075618.1180248-4-andrew.cooper3@citrix.com> References: <20230627075618.1180248-1-andrew.cooper3@citrix.com> <20230627075618.1180248-4-andrew.cooper3@citrix.com> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable User-Agent: Evolution 3.48.3 (3.48.3-1.fc38) MIME-Version: 1.0 Reviewed-by: Oleksii Kurochko On Tue, 2023-06-27 at 08:56 +0100, Andrew Cooper wrote: > Xen uses the stdint types.=C2=A0 Rearrange the types headers to define th= e > compatibility __{u,s}$N types in terms of the stdint types, not the > other way > around. >=20 > All all supported compilers on architectures other than x86 support > the stdint > __*_TYPE__ macros.=C2=A0 Move these into a new xen/stdint.h to avoid them > being > duplicated in each architecture. >=20 > For the compilers which don't support the __*_TYPE__ macros, > synthesize > appropriate alternatives. >=20 > This cleanup has the side effect of removing all use of the > undocumented > __signed__ GCC keyword.=C2=A0 This is a vestigial remnant of `gcc - > traditional` > mode for dialetcs of C prior to the introduction of the signed > keyword. >=20 > No functional change. >=20 > Signed-off-by: Andrew Cooper > --- > CC: Jan Beulich > CC: Roger Pau Monn=C3=A9 > CC: Wei Liu > CC: Stefano Stabellini > CC: Julien Grall > CC: Volodymyr Babchuk > CC: Bertrand Marquis > CC: Bob Eshleman > CC: Alistair Francis > CC: Connor Davis > CC: Oleksii Kurochko > CC: Shawn Anastasio > CC: Timothy Pearson > CC: Roberto Bagnara >=20 > v2: > =C2=A0* Introduce xen/stdint.h as discussed at XenSummit > --- > =C2=A0xen/arch/arm/include/asm/types.h=C2=A0=C2=A0 | 19 ----------------- > =C2=A0xen/arch/riscv/include/asm/types.h | 19 ----------------- > =C2=A0xen/arch/x86/include/asm/types.h=C2=A0=C2=A0 | 14 ------------- > =C2=A0xen/include/xen/stdint.h=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0 | 33 > ++++++++++++++++++++++++++++++ > =C2=A0xen/include/xen/types.h=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0 | 20 ++++++++---------- > =C2=A05 files changed, 42 insertions(+), 63 deletions(-) > =C2=A0create mode 100644 xen/include/xen/stdint.h >=20 > diff --git a/xen/arch/arm/include/asm/types.h > b/xen/arch/arm/include/asm/types.h > index fb6618ef247f..545a5e9d1175 100644 > --- a/xen/arch/arm/include/asm/types.h > +++ b/xen/arch/arm/include/asm/types.h > @@ -1,25 +1,6 @@ > =C2=A0#ifndef __ARM_TYPES_H__ > =C2=A0#define __ARM_TYPES_H__ > =C2=A0 > -typedef __signed__ char __s8; > -typedef unsigned char __u8; > - > -typedef __signed__ short __s16; > -typedef unsigned short __u16; > - > -typedef __signed__ int __s32; > -typedef unsigned int __u32; > - > -#if defined(__GNUC__) && !defined(__STRICT_ANSI__) > -#if defined(CONFIG_ARM_32) > -typedef __signed__ long long __s64; > -typedef unsigned long long __u64; > -#elif defined (CONFIG_ARM_64) > -typedef __signed__ long __s64; > -typedef unsigned long __u64; > -#endif > -#endif > - > =C2=A0typedef signed char s8; > =C2=A0typedef unsigned char u8; > =C2=A0 > diff --git a/xen/arch/riscv/include/asm/types.h > b/xen/arch/riscv/include/asm/types.h > index 0c0ce78c8f6e..93a680a8f323 100644 > --- a/xen/arch/riscv/include/asm/types.h > +++ b/xen/arch/riscv/include/asm/types.h > @@ -1,25 +1,6 @@ > =C2=A0#ifndef __RISCV_TYPES_H__ > =C2=A0#define __RISCV_TYPES_H__ > =C2=A0 > -typedef __signed__ char __s8; > -typedef unsigned char __u8; > - > -typedef __signed__ short __s16; > -typedef unsigned short __u16; > - > -typedef __signed__ int __s32; > -typedef unsigned int __u32; > - > -#if defined(__GNUC__) && !defined(__STRICT_ANSI__) > -#if defined(CONFIG_RISCV_32) > -typedef __signed__ long long __s64; > -typedef unsigned long long __u64; > -#elif defined (CONFIG_RISCV_64) > -typedef __signed__ long __s64; > -typedef unsigned long __u64; > -#endif > -#endif > - > =C2=A0typedef signed char s8; > =C2=A0typedef unsigned char u8; > =C2=A0 > diff --git a/xen/arch/x86/include/asm/types.h > b/xen/arch/x86/include/asm/types.h > index 2d56aed66782..c9d257716551 100644 > --- a/xen/arch/x86/include/asm/types.h > +++ b/xen/arch/x86/include/asm/types.h > @@ -1,20 +1,6 @@ > =C2=A0#ifndef __X86_TYPES_H__ > =C2=A0#define __X86_TYPES_H__ > =C2=A0 > -typedef __signed__ char __s8; > -typedef unsigned char __u8; > - > -typedef __signed__ short __s16; > -typedef unsigned short __u16; > - > -typedef __signed__ int __s32; > -typedef unsigned int __u32; > - > -#if defined(__GNUC__) && !defined(__STRICT_ANSI__) > -typedef __signed__ long __s64; > -typedef unsigned long __u64; > -#endif > - > =C2=A0typedef signed char s8; > =C2=A0typedef unsigned char u8; > =C2=A0 > diff --git a/xen/include/xen/stdint.h b/xen/include/xen/stdint.h > new file mode 100644 > index 000000000000..4cf82790f196 > --- /dev/null > +++ b/xen/include/xen/stdint.h > @@ -0,0 +1,33 @@ > +/* SPDX-License-Identifier: GPL-2.0-only */ > +#ifndef __XEN_STDINT_H__ > +#define __XEN_STDINT_H__ > + > +#ifndef __INT8_TYPE__ /* GCC <=3D 4.4 */ > + > +typedef __INT8_TYPE__=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 int8_t; > +typedef __UINT8_TYPE__=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 uint8_t; > +typedef __INT16_TYPE__=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 int16_t; > +typedef __UINT16_TYPE__=C2=A0=C2=A0=C2=A0 uint16_t; > +typedef __INT32_TYPE__=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 int32_t; > +typedef __UINT32_TYPE__=C2=A0=C2=A0=C2=A0 uint32_t; > +typedef __INT64_TYPE__=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 int64_t; > +typedef __UINT64_TYPE__=C2=A0=C2=A0=C2=A0 uint64_t; > + > +#else > + > +/* > + * Define the types using GCC internal notation.=C2=A0 Clang understands > this too. > + * > https://gcc.gnu.org/onlinedocs/gcc/Common-Variable-Attributes.html > + */ > +typedef=C2=A0=C2=A0 signed __attribute__((__mode__(QI)))=C2=A0=C2=A0=C2= =A0=C2=A0 int8_t; > +typedef unsigned __attribute__((__mode__(QI)))=C2=A0=C2=A0=C2=A0 uint8_t= ; > +typedef=C2=A0=C2=A0 signed __attribute__((__mode__(HI)))=C2=A0=C2=A0=C2= =A0 int16_t; > +typedef unsigned __attribute__((__mode__(HI)))=C2=A0=C2=A0 uint16_t; > +typedef=C2=A0=C2=A0 signed __attribute__((__mode__(SI)))=C2=A0=C2=A0=C2= =A0 int32_t; > +typedef unsigned __attribute__((__mode__(SI)))=C2=A0=C2=A0 uint32_t; > +typedef=C2=A0=C2=A0 signed __attribute__((__mode__(DI)))=C2=A0=C2=A0=C2= =A0 int64_t; > +typedef unsigned __attribute__((__mode__(DI)))=C2=A0=C2=A0 uint64_t; > + > +#endif > + > +#endif /* __XEN_STDINT_H__ */ > diff --git a/xen/include/xen/types.h b/xen/include/xen/types.h > index 8b22a02eeaa4..c873c81ccf06 100644 > --- a/xen/include/xen/types.h > +++ b/xen/include/xen/types.h > @@ -2,6 +2,7 @@ > =C2=A0#define __TYPES_H__ > =C2=A0 > =C2=A0#include > +#include > =C2=A0 > =C2=A0#include > =C2=A0 > @@ -39,17 +40,14 @@ typedef __PTRDIFF_TYPE__ ptrdiff_t; > =C2=A0#define LONG_MIN=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (-LONG_M= AX - 1) > =C2=A0#define ULONG_MAX=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (~0UL) > =C2=A0 > -typedef=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 __u8=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 uint8_t; > -typedef=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 __s8=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 int8_t; > - > -typedef=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 __u16=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 uint16_t; > -typedef=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 __s16=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 int16_t; > - > -typedef=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 __u32=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 uint32_t; > -typedef=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 __s32=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 int32_t; > - > -typedef=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 __u64=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 uint64_t; > -typedef=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 __s64=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 int64_t; > +typedef uint8_t=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 __u8; > +typedef int8_t=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 __s= 8; > +typedef uint16_t=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 __u16; > +typedef int16_t=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 __s16; > +typedef uint32_t=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 __u32; > +typedef int32_t=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 __s32; > +typedef uint64_t=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 __u64; > +typedef int64_t=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 __s64; > =C2=A0 > =C2=A0typedef __u16 __le16; > =C2=A0typedef __u16 __be16; From xen-devel-bounces@lists.xenproject.org Tue Jun 27 08:51:51 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 08:51:51 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555947.868148 (Exim 4.92) (envelope-from ) id 1qE4QA-0001gx-FA; Tue, 27 Jun 2023 08:51:34 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555947.868148; Tue, 27 Jun 2023 08:51:34 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE4QA-0001gq-Bj; Tue, 27 Jun 2023 08:51:34 +0000 Received: by outflank-mailman (input) for mailman id 555947; Tue, 27 Jun 2023 08:51:32 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE4Q8-0001gg-Qs; Tue, 27 Jun 2023 08:51:32 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE4Q8-0004qh-Ig; Tue, 27 Jun 2023 08:51:32 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE4Q8-0001Pq-3N; Tue, 27 Jun 2023 08:51:32 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qE4Q8-0001Ih-2x; Tue, 27 Jun 2023 08:51:32 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=zr59v/1U80O1zh4/1iBuENQKOqVlxiusluE97je11To=; b=vVoV0Dio2EGQQwYmk7mVvZR+82 T8zzPvba01s7dL1xbEVc0rMhog5PEYcx4w5Cj4SwK3bxErsMCJynkdUXakPqaCEHCI9egR1HIIxud k39CDzwab1/GvcrN73BICsiNg4p7OIoCMk/2VOpp2srgbWvIlR1hQyPzP/dTaLg7u+mc=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable test] 181607: regressions - FAIL X-Osstest-Failures: xen-unstable:build-arm64-pvops:kernel-build:fail:regression xen-unstable:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:debian-hvm-install:fail:heisenbug xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:windows-install:fail:heisenbug xen-unstable:test-amd64-i386-xl-qemuu-debianhvm-amd64:xen-install:fail:heisenbug xen-unstable:test-amd64-i386-pair:xen-install/src_host:fail:heisenbug xen-unstable:test-arm64-arm64-examine:build-check(1):blocked:nonblocking xen-unstable:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking xen-unstable:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking xen-unstable:test-arm64-arm64-xl:build-check(1):blocked:nonblocking xen-unstable:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking xen-unstable:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking xen-unstable:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking xen-unstable:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking xen-unstable:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking X-Osstest-Versions-This: xen=5c84f1f636981dab5341e84aaba8d4dd00bbc2cb X-Osstest-Versions-That: xen=5c84f1f636981dab5341e84aaba8d4dd00bbc2cb From: osstest service owner Date: Tue, 27 Jun 2023 08:51:32 +0000 flight 181607 xen-unstable real [real] http://logs.test-lab.xenproject.org/osstest/logs/181607/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-arm64-pvops 6 kernel-build fail REGR. vs. 181597 Tests which are failing intermittently (not blocking): test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 12 debian-hvm-install fail in 181597 pass in 181607 test-amd64-amd64-xl-qemuu-win7-amd64 12 windows-install fail in 181597 pass in 181607 test-amd64-i386-xl-qemuu-debianhvm-amd64 7 xen-install fail pass in 181597 test-amd64-i386-pair 10 xen-install/src_host fail pass in 181597 Tests which did not succeed, but are not blocking: test-arm64-arm64-examine 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-raw 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-xsm 1 build-check(1) blocked n/a test-arm64-arm64-xl 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit1 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit2 1 build-check(1) blocked n/a test-arm64-arm64-xl-thunderx 1 build-check(1) blocked n/a test-arm64-arm64-xl-vhd 1 build-check(1) blocked n/a test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a test-arm64-arm64-xl 15 migrate-support-check fail in 181597 never pass test-arm64-arm64-xl 16 saverestore-support-check fail in 181597 never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail in 181597 never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail in 181597 never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail in 181597 never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail in 181597 never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail in 181597 never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail in 181597 never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail in 181597 never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail in 181597 never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail in 181597 never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail in 181597 never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail in 181597 never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail in 181597 never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail in 181597 never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail in 181597 never pass test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 181582 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 181597 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop fail like 181597 test-armhf-armhf-libvirt 16 saverestore-support-check fail like 181597 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 181597 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 181597 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop fail like 181597 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop fail like 181597 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail like 181597 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 181597 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail like 181597 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop fail like 181597 test-amd64-i386-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-i386-xl-pvshim 14 guest-start fail never pass test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-i386-libvirt 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-check fail never pass test-amd64-i386-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 15 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt 15 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 15 saverestore-support-check fail never pass test-armhf-armhf-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 15 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 16 saverestore-support-check fail never pass test-armhf-armhf-xl 15 migrate-support-check fail never pass test-armhf-armhf-xl 16 saverestore-support-check fail never pass test-armhf-armhf-xl-multivcpu 15 migrate-support-check fail never pass test-armhf-armhf-xl-multivcpu 16 saverestore-support-check fail never pass test-armhf-armhf-xl-credit1 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 16 saverestore-support-check fail never pass test-armhf-armhf-xl-credit2 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit2 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail never pass version targeted for testing: xen 5c84f1f636981dab5341e84aaba8d4dd00bbc2cb baseline version: xen 5c84f1f636981dab5341e84aaba8d4dd00bbc2cb Last test of basis 181607 2023-06-27 01:53:32 Z 0 days Testing same since (not found) 0 attempts jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64-xtf pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-prev pass build-i386-prev pass build-amd64-pvops pass build-arm64-pvops fail build-armhf-pvops pass build-i386-pvops pass test-xtf-amd64-amd64-1 pass test-xtf-amd64-amd64-2 pass test-xtf-amd64-amd64-3 pass test-xtf-amd64-amd64-4 pass test-xtf-amd64-amd64-5 pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl blocked test-armhf-armhf-xl pass test-amd64-i386-xl pass test-amd64-coresched-i386-xl pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-i386-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-i386-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm blocked test-amd64-i386-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm blocked test-amd64-i386-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-i386-qemut-rhel6hvm-amd pass test-amd64-i386-qemuu-rhel6hvm-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-i386-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-xl-qemuu-debianhvm-amd64 fail test-amd64-i386-freebsd10-amd64 pass test-amd64-amd64-qemuu-freebsd11-amd64 pass test-amd64-amd64-qemuu-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-i386-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-i386-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-i386-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-amd64-i386-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale pass test-amd64-amd64-examine-bios pass test-amd64-i386-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 blocked test-armhf-armhf-xl-credit1 pass test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 blocked test-armhf-armhf-xl-credit2 pass test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine blocked test-armhf-armhf-examine pass test-amd64-i386-examine pass test-amd64-i386-freebsd10-i386 pass test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-i386-qemut-rhel6hvm-intel pass test-amd64-i386-qemuu-rhel6hvm-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt pass test-amd64-i386-libvirt pass test-amd64-amd64-livepatch pass test-amd64-i386-livepatch pass test-amd64-amd64-migrupgrade pass test-amd64-i386-migrupgrade pass test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu pass test-amd64-amd64-pair pass test-amd64-i386-pair fail test-amd64-amd64-libvirt-pair pass test-amd64-i386-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-i386-xl-pvshim fail test-amd64-amd64-pygrub pass test-armhf-armhf-libvirt-qcow2 pass test-amd64-amd64-xl-qcow2 pass test-arm64-arm64-libvirt-raw blocked test-armhf-armhf-libvirt-raw pass test-amd64-i386-libvirt-raw pass test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds pass test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-amd64-i386-xl-shadow pass test-arm64-arm64-xl-thunderx blocked test-amd64-amd64-examine-uefi pass test-amd64-i386-examine-uefi pass test-amd64-amd64-libvirt-vhd pass test-arm64-arm64-xl-vhd blocked test-armhf-armhf-xl-vhd pass test-amd64-i386-xl-vhd pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Published tested tree is already up to date. From xen-devel-bounces@lists.xenproject.org Tue Jun 27 10:00:33 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 10:00:33 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555961.868180 (Exim 4.92) (envelope-from ) id 1qE5Ue-0001PV-QU; Tue, 27 Jun 2023 10:00:16 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555961.868180; Tue, 27 Jun 2023 10:00:16 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE5Ue-0001Me-Lf; Tue, 27 Jun 2023 10:00:16 +0000 Received: by outflank-mailman (input) for mailman id 555961; Tue, 27 Jun 2023 09:56:18 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE5Qo-0008WP-KL for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 09:56:18 +0000 Received: from frasgout11.his.huawei.com (unknown [14.137.139.23]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id db9d9ca3-14d0-11ee-b237-6b7b168915f2; Tue, 27 Jun 2023 11:56:16 +0200 (CEST) Received: from mail02.huawei.com (unknown [172.18.147.229]) by frasgout11.his.huawei.com (SkyGuard) with ESMTP id 4Qr0FM0VNfz9v7HB for ; Tue, 27 Jun 2023 17:45:27 +0800 (CST) Received: from A2101119013HW2.china.huawei.com (unknown [10.45.153.185]) by APP1 (Coremail) with SMTP id LxC2BwBnwdzesZpknnvHAw--.39096S5; Tue, 27 Jun 2023 10:55:49 +0100 (CET) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: db9d9ca3-14d0-11ee-b237-6b7b168915f2 From: Petr Tesarik To: Stefano Stabellini , Thomas Bogendoerfer , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , x86@kernel.org (maintainer:X86 ARCHITECTURE (32-BIT AND 64-BIT)), "H. Peter Anvin" , Greg Kroah-Hartman , "Rafael J. Wysocki" , Juergen Gross , Oleksandr Tyshchenko , Christoph Hellwig , Marek Szyprowski , Robin Murphy , Andy Shevchenko , Hans de Goede , Jason Gunthorpe , Kees Cook , Saravana Kannan , xen-devel@lists.xenproject.org (moderated list:XEN HYPERVISOR ARM), linux-arm-kernel@lists.infradead.org (moderated list:ARM PORT), linux-kernel@vger.kernel.org (open list), linux-mips@vger.kernel.org (open list:MIPS), iommu@lists.linux.dev (open list:XEN SWIOTLB SUBSYSTEM) Cc: Roberto Sassu , Kefeng Wang , petr@tesarici.cz Subject: [PATCH v3 3/7] swiotlb: separate memory pool data from other allocator data Date: Tue, 27 Jun 2023 11:54:25 +0200 Message-Id: X-Mailer: git-send-email 2.25.1 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-CM-TRANSID:LxC2BwBnwdzesZpknnvHAw--.39096S5 X-Coremail-Antispam: 1UD129KBjvAXoWfCF45Kr47KF1ftryDJr1rtFb_yoW8ur4DCo W7GFnrXw4ftryjkFW2yan3Jr17uayqka1rAF1rZay5Wayjyr4Ygw1fKa15Xw13Wr1fGFWx AwnxWa48WF4kAr18n29KB7ZKAUJUUUUU529EdanIXcx71UUUUU7v73VFW2AGmfu7bjvjm3 AaLaJ3UjIYCTnIWjp_UUUO37AC8VAFwI0_Wr0E3s1l1xkIjI8I6I8E6xAIw20EY4v20xva j40_Wr0E3s1l1IIY67AEw4v_Jr0_Jr4l82xGYIkIc2x26280x7IE14v26r1rM28IrcIa0x kI8VCY1x0267AKxVW5JVCq3wA2ocxC64kIII0Yj41l84x0c7CEw4AK67xGY2AK021l84AC jcxK6xIIjxv20xvE14v26r1j6r1xM28EF7xvwVC0I7IYx2IY6xkF7I0E14v26r4UJVWxJr 1l84ACjcxK6I8E87Iv67AKxVW8JVWxJwA2z4x0Y4vEx4A2jsIEc7CjxVAFwI0_Gr1j6F4U JwAS0I0E0xvYzxvE52x082IY62kv0487Mc02F40EFcxC0VAKzVAqx4xG6I80ewAv7VC0I7 IYx2IY67AKxVWUJVWUGwAv7VC2z280aVAFwI0_Jr0_Gr1lOx8S6xCaFVCjc4AY6r1j6r4U M4x0Y48IcxkI7VAKI48JM4x0x7Aq67IIx4CEVc8vx2IErcIFxwACI402YVCY1x02628vn2 kIc2xKxwCY1x0264kExVAvwVAq07x20xyl42xK82IYc2Ij64vIr41l4I8I3I0E4IkC6x0Y z7v_Jr0_Gr1lx2IqxVAqx4xG67AKxVWUJVWUGwC20s026x8GjcxK67AKxVWUGVWUWwC2zV AF1VAY17CE14v26rWY6r4UJwCIc40Y0x0EwIxGrwCI42IY6xIIjxv20xvE14v26r1j6r1x MIIF0xvE2Ix0cI8IcVCY1x0267AKxVW8Jr0_Cr1UMIIF0xvE42xK8VAvwI8IcIk0rVWUJV WUCwCI42IY6I8E87Iv67AKxVW8JVWxJwCI42IY6I8E87Iv6xkF7I0E14v26r4UJVWxJrUv cSsGvfC2KfnxnUUI43ZEXa7VUj1xR3UUUUU== X-CM-SenderInfo: hshw23xhvd2x3n6k3tpzhluzxrxghudrp/ X-CFilter-Loop: Reflected From: Petr Tesarik Carve out memory pool specific fields from struct io_tlb_mem. The original struct now contains shared data for the whole allocator, while the new struct io_tlb_pool contains data that is specific to one memory pool of (potentially) many. Allocate both structures together for restricted DMA pools to keep the error cleanup path simple. Signed-off-by: Petr Tesarik --- include/linux/device.h | 2 +- include/linux/swiotlb.h | 49 ++++++----- kernel/dma/swiotlb.c | 181 +++++++++++++++++++++++++--------------- 3 files changed, 147 insertions(+), 85 deletions(-) diff --git a/include/linux/device.h b/include/linux/device.h index 472dd24d4823..83081aa99e6a 100644 --- a/include/linux/device.h +++ b/include/linux/device.h @@ -509,7 +509,7 @@ struct device_physical_location { * @dma_pools: Dma pools (if dma'ble device). * @dma_mem: Internal for coherent mem override. * @cma_area: Contiguous memory area for dma allocations - * @dma_io_tlb_mem: Pointer to the swiotlb pool used. Not for driver use. + * @dma_io_tlb_mem: Software IO TLB allocator. Not for driver use. * @archdata: For arch-specific additions. * @of_node: Associated device tree node. * @fwnode: Associated device node supplied by platform firmware. diff --git a/include/linux/swiotlb.h b/include/linux/swiotlb.h index 9f486843a66a..0aa6868cb68c 100644 --- a/include/linux/swiotlb.h +++ b/include/linux/swiotlb.h @@ -62,8 +62,7 @@ dma_addr_t swiotlb_map(struct device *dev, phys_addr_t phys, #ifdef CONFIG_SWIOTLB /** - * struct io_tlb_mem - IO TLB Memory Pool Descriptor - * + * struct io_tlb_pool - IO TLB memory pool descriptor * @start: The start address of the swiotlb memory pool. Used to do a quick * range check to see if the memory was in fact allocated by this * API. @@ -73,16 +72,36 @@ dma_addr_t swiotlb_map(struct device *dev, phys_addr_t phys, * @vaddr: The vaddr of the swiotlb memory pool. The swiotlb memory pool * may be remapped in the memory encrypted case and store virtual * address for bounce buffer operation. - * @nslabs: The number of IO TLB blocks (in groups of 64) between @start and - * @end. For default swiotlb, this is command line adjustable via - * setup_io_tlb_npages. - * @used: The number of used IO TLB block. + * @nslabs: The number of IO TLB slots between @start and @end. For the + * default swiotlb, this can be adjusted with a boot parameter, + * see setup_io_tlb_npages(). + * @used: The number of used IO TLB slots. + * @late_alloc: %true if allocated using the page allocator. + * @nareas: Number of areas in the pool. + * @area_nslabs: Number of slots in each area. + * @areas: Array of memory area descriptors. + * @slots: Array of slot descriptors. + */ +struct io_tlb_pool { + phys_addr_t start; + phys_addr_t end; + void *vaddr; + unsigned long nslabs; + unsigned long used; + bool late_alloc; + unsigned int nareas; + unsigned int area_nslabs; + struct io_tlb_area *areas; + struct io_tlb_slot *slots; +}; + +/** + * struct io_tlb_mem - Software IO TLB allocator + * @pool: IO TLB memory pool descriptor. + * @nslabs: Total number of IO TLB slabs in all pools. * @debugfs: The dentry to debugfs. - * @late_alloc: %true if allocated using the page allocator * @force_bounce: %true if swiotlb bouncing is forced * @for_alloc: %true if the pool is used for memory allocation - * @nareas: The area number in the pool. - * @area_nslabs: The slot number in the area. * @total_used: The total number of slots in the pool that are currently used * across all areas. Used only for calculating used_hiwater in * debugfs. @@ -90,19 +109,11 @@ dma_addr_t swiotlb_map(struct device *dev, phys_addr_t phys, * in debugfs. */ struct io_tlb_mem { - phys_addr_t start; - phys_addr_t end; - void *vaddr; + struct io_tlb_pool *pool; unsigned long nslabs; - unsigned long used; struct dentry *debugfs; - bool late_alloc; bool force_bounce; bool for_alloc; - unsigned int nareas; - unsigned int area_nslabs; - struct io_tlb_area *areas; - struct io_tlb_slot *slots; #ifdef CONFIG_DEBUG_FS atomic_long_t total_used; atomic_long_t used_hiwater; @@ -124,7 +135,7 @@ static inline bool is_swiotlb_buffer(struct device *dev, phys_addr_t paddr) { struct io_tlb_mem *mem = dev->dma_io_tlb_mem; - return mem && paddr >= mem->start && paddr < mem->end; + return mem && paddr >= mem->pool->start && paddr < mem->pool->end; } static inline bool is_swiotlb_force_bounce(struct device *dev) diff --git a/kernel/dma/swiotlb.c b/kernel/dma/swiotlb.c index 888c25a9bfcc..4c5de91bda57 100644 --- a/kernel/dma/swiotlb.c +++ b/kernel/dma/swiotlb.c @@ -78,7 +78,10 @@ struct io_tlb_slot { static bool swiotlb_force_bounce; static bool swiotlb_force_disable; -static struct io_tlb_mem io_tlb_default_mem; +static struct io_tlb_pool io_tlb_default_pool; +static struct io_tlb_mem io_tlb_default_mem = { + .pool = &io_tlb_default_pool, +}; static unsigned long default_nslabs = IO_TLB_DEFAULT_SIZE >> IO_TLB_SHIFT; static unsigned long default_nareas; @@ -209,7 +212,7 @@ void __init swiotlb_adjust_size(unsigned long size) void swiotlb_print_info(void) { - struct io_tlb_mem *mem = &io_tlb_default_mem; + struct io_tlb_pool *mem = &io_tlb_default_pool; if (!mem->nslabs) { pr_warn("No low mem\n"); @@ -238,7 +241,7 @@ static inline unsigned long nr_slots(u64 val) */ void __init swiotlb_update_mem_attributes(void) { - struct io_tlb_mem *mem = &io_tlb_default_mem; + struct io_tlb_pool *mem = &io_tlb_default_pool; unsigned long bytes; if (!mem->nslabs || mem->late_alloc) @@ -247,9 +250,8 @@ void __init swiotlb_update_mem_attributes(void) set_memory_decrypted((unsigned long)mem->vaddr, bytes >> PAGE_SHIFT); } -static void swiotlb_init_io_tlb_mem(struct io_tlb_mem *mem, phys_addr_t start, - unsigned long nslabs, unsigned int flags, - bool late_alloc, unsigned int nareas) +static void swiotlb_init_io_tlb_pool(struct io_tlb_pool *mem, phys_addr_t start, + unsigned long nslabs, bool late_alloc, unsigned int nareas) { void *vaddr = phys_to_virt(start); unsigned long bytes = nslabs << IO_TLB_SHIFT, i; @@ -261,8 +263,6 @@ static void swiotlb_init_io_tlb_mem(struct io_tlb_mem *mem, phys_addr_t start, mem->nareas = nareas; mem->area_nslabs = nslabs / mem->nareas; - mem->force_bounce = swiotlb_force_bounce || (flags & SWIOTLB_FORCE); - for (i = 0; i < mem->nareas; i++) { spin_lock_init(&mem->areas[i].lock); mem->areas[i].index = 0; @@ -319,7 +319,7 @@ static void __init *swiotlb_memblock_alloc(unsigned long nslabs, void __init swiotlb_init_remap(bool addressing_limit, unsigned int flags, int (*remap)(void *tlb, unsigned long nslabs)) { - struct io_tlb_mem *mem = &io_tlb_default_mem; + struct io_tlb_pool *mem = &io_tlb_default_pool; unsigned long nslabs; unsigned int nareas; size_t alloc_size; @@ -330,6 +330,9 @@ void __init swiotlb_init_remap(bool addressing_limit, unsigned int flags, if (swiotlb_force_disable) return; + io_tlb_default_mem.force_bounce = + swiotlb_force_bounce || (flags & SWIOTLB_FORCE); + if (!default_nareas) swiotlb_adjust_nareas(num_possible_cpus()); @@ -363,8 +366,9 @@ void __init swiotlb_init_remap(bool addressing_limit, unsigned int flags, return; } - swiotlb_init_io_tlb_mem(mem, __pa(tlb), nslabs, flags, false, - default_nareas); + swiotlb_init_io_tlb_pool(mem, __pa(tlb), nslabs, false, + default_nareas); + io_tlb_default_mem.nslabs = nslabs; if (flags & SWIOTLB_VERBOSE) swiotlb_print_info(); @@ -383,7 +387,7 @@ void __init swiotlb_init(bool addressing_limit, unsigned int flags) int swiotlb_init_late(size_t size, gfp_t gfp_mask, int (*remap)(void *tlb, unsigned long nslabs)) { - struct io_tlb_mem *mem = &io_tlb_default_mem; + struct io_tlb_pool *mem = &io_tlb_default_pool; unsigned long nslabs = ALIGN(size >> IO_TLB_SHIFT, IO_TLB_SEGSIZE); unsigned int nareas; unsigned char *vstart = NULL; @@ -394,6 +398,8 @@ int swiotlb_init_late(size_t size, gfp_t gfp_mask, if (swiotlb_force_disable) return 0; + io_tlb_default_mem.force_bounce = swiotlb_force_bounce; + if (!default_nareas) swiotlb_adjust_nareas(num_possible_cpus()); @@ -445,8 +451,9 @@ int swiotlb_init_late(size_t size, gfp_t gfp_mask, set_memory_decrypted((unsigned long)vstart, (nslabs << IO_TLB_SHIFT) >> PAGE_SHIFT); - swiotlb_init_io_tlb_mem(mem, virt_to_phys(vstart), nslabs, 0, true, - nareas); + swiotlb_init_io_tlb_pool(mem, virt_to_phys(vstart), nslabs, true, + nareas); + io_tlb_default_mem.nslabs = nslabs; swiotlb_print_info(); return 0; @@ -460,7 +467,7 @@ int swiotlb_init_late(size_t size, gfp_t gfp_mask, void __init swiotlb_exit(void) { - struct io_tlb_mem *mem = &io_tlb_default_mem; + struct io_tlb_pool *mem = &io_tlb_default_pool; unsigned long tbl_vaddr; size_t tbl_size, slots_size; unsigned int area_order; @@ -516,7 +523,7 @@ static unsigned int swiotlb_align_offset(struct device *dev, u64 addr) static void swiotlb_bounce(struct device *dev, phys_addr_t tlb_addr, size_t size, enum dma_data_direction dir) { - struct io_tlb_mem *mem = dev->dma_io_tlb_mem; + struct io_tlb_pool *mem = dev->dma_io_tlb_mem->pool; int index = (tlb_addr - mem->start) >> IO_TLB_SHIFT; phys_addr_t orig_addr = mem->slots[index].orig_addr; size_t alloc_size = mem->slots[index].alloc_size; @@ -598,7 +605,7 @@ static inline unsigned long get_max_slots(unsigned long boundary_mask) return nr_slots(boundary_mask + 1); } -static unsigned int wrap_area_index(struct io_tlb_mem *mem, unsigned int index) +static unsigned int wrap_area_index(struct io_tlb_pool *mem, unsigned int index) { if (index >= mem->area_nslabs) return 0; @@ -642,6 +649,7 @@ static void dec_used(struct io_tlb_mem *mem, unsigned int nslots) /** * area_find_slots() - search for slots in one IO TLB memory area * @dev: Device which maps the buffer. + * @pool: Memory pool to be searched. * @area_index: Index of the IO TLB memory area to be searched. * @orig_addr: Original (non-bounced) IO buffer address. * @alloc_size: Total requested size of the bounce buffer, @@ -654,15 +662,14 @@ static void dec_used(struct io_tlb_mem *mem, unsigned int nslots) * * Return: Index of the first allocated slot, or -1 on error. */ -static int area_find_slots(struct device *dev, int area_index, - phys_addr_t orig_addr, size_t alloc_size, +static int area_find_slots(struct device *dev, struct io_tlb_pool *pool, + int area_index, phys_addr_t orig_addr, size_t alloc_size, unsigned int alloc_align_mask) { - struct io_tlb_mem *mem = dev->dma_io_tlb_mem; - struct io_tlb_area *area = mem->areas + area_index; + struct io_tlb_area *area = pool->areas + area_index; unsigned long boundary_mask = dma_get_seg_boundary(dev); dma_addr_t tbl_dma_addr = - phys_to_dma_unencrypted(dev, mem->start) & boundary_mask; + phys_to_dma_unencrypted(dev, pool->start) & boundary_mask; unsigned long max_slots = get_max_slots(boundary_mask); unsigned int iotlb_align_mask = dma_get_min_align_mask(dev) | alloc_align_mask; @@ -674,7 +681,7 @@ static int area_find_slots(struct device *dev, int area_index, unsigned int slot_index; BUG_ON(!nslots); - BUG_ON(area_index >= mem->nareas); + BUG_ON(area_index >= pool->nareas); /* * For allocations of PAGE_SIZE or larger only look for page aligned @@ -691,19 +698,19 @@ static int area_find_slots(struct device *dev, int area_index, stride = (iotlb_align_mask >> IO_TLB_SHIFT) + 1; spin_lock_irqsave(&area->lock, flags); - if (unlikely(nslots > mem->area_nslabs - area->used)) + if (unlikely(nslots > pool->area_nslabs - area->used)) goto not_found; - slot_base = area_index * mem->area_nslabs; + slot_base = area_index * pool->area_nslabs; index = area->index; - for (slots_checked = 0; slots_checked < mem->area_nslabs; ) { + for (slots_checked = 0; slots_checked < pool->area_nslabs; ) { slot_index = slot_base + index; if (orig_addr && (slot_addr(tbl_dma_addr, slot_index) & iotlb_align_mask) != (orig_addr & iotlb_align_mask)) { - index = wrap_area_index(mem, index + 1); + index = wrap_area_index(pool, index + 1); slots_checked++; continue; } @@ -716,10 +723,10 @@ static int area_find_slots(struct device *dev, int area_index, if (!iommu_is_span_boundary(slot_index, nslots, nr_slots(tbl_dma_addr), max_slots)) { - if (mem->slots[slot_index].list >= nslots) + if (pool->slots[slot_index].list >= nslots) goto found; } - index = wrap_area_index(mem, index + stride); + index = wrap_area_index(pool, index + stride); slots_checked += stride; } @@ -729,58 +736,97 @@ static int area_find_slots(struct device *dev, int area_index, found: for (i = slot_index; i < slot_index + nslots; i++) { - mem->slots[i].list = 0; - mem->slots[i].alloc_size = alloc_size - (offset + + pool->slots[i].list = 0; + pool->slots[i].alloc_size = alloc_size - (offset + ((i - slot_index) << IO_TLB_SHIFT)); } for (i = slot_index - 1; io_tlb_offset(i) != IO_TLB_SEGSIZE - 1 && - mem->slots[i].list; i--) - mem->slots[i].list = ++count; + pool->slots[i].list; i--) + pool->slots[i].list = ++count; /* * Update the indices to avoid searching in the next round. */ - area->index = wrap_area_index(mem, index + nslots); + area->index = wrap_area_index(pool, index + nslots); area->used += nslots; spin_unlock_irqrestore(&area->lock, flags); - inc_used_and_hiwater(mem, nslots); + inc_used_and_hiwater(dev->dma_io_tlb_mem, nslots); return slot_index; } /** - * swiotlb_find_slots() - search for slots in the whole swiotlb + * pool_find_slots() - search for slots in one memory pool * @dev: Device which maps the buffer. + * @pool: Memory pool to be searched. * @orig_addr: Original (non-bounced) IO buffer address. * @alloc_size: Total requested size of the bounce buffer, * including initial alignment padding. * @alloc_align_mask: Required alignment of the allocated buffer. * - * Search through the whole software IO TLB to find a sequence of slots that - * match the allocation constraints. + * Search through one memory pool to find a sequence of slots that match the + * allocation constraints. * * Return: Index of the first allocated slot, or -1 on error. */ -static int swiotlb_find_slots(struct device *dev, phys_addr_t orig_addr, - size_t alloc_size, unsigned int alloc_align_mask) +static int pool_find_slots(struct device *dev, struct io_tlb_pool *pool, + phys_addr_t orig_addr, size_t alloc_size, + unsigned int alloc_align_mask) { - struct io_tlb_mem *mem = dev->dma_io_tlb_mem; - int start = raw_smp_processor_id() & (mem->nareas - 1); + int start = raw_smp_processor_id() & (pool->nareas - 1); int i = start, index; do { - index = area_find_slots(dev, i, orig_addr, alloc_size, + index = area_find_slots(dev, pool, i, orig_addr, alloc_size, alloc_align_mask); if (index >= 0) return index; - if (++i >= mem->nareas) + if (++i >= pool->nareas) i = 0; } while (i != start); return -1; } +/** + * swiotlb_find_slots() - search for slots in the whole swiotlb + * @dev: Device which maps the buffer. + * @orig_addr: Original (non-bounced) IO buffer address. + * @alloc_size: Total requested size of the bounce buffer, + * including initial alignment padding. + * @alloc_align_mask: Required alignment of the allocated buffer. + * + * Search through the whole software IO TLB to find a sequence of slots that + * match the allocation constraints. + * + * Return: Index of the first allocated slot, or -1 on error. + */ +static int swiotlb_find_slots(struct device *dev, phys_addr_t orig_addr, + size_t alloc_size, unsigned int alloc_align_mask) +{ + return pool_find_slots(dev, dev->dma_io_tlb_mem->pool, orig_addr, + alloc_size, alloc_align_mask); +} + +/** + * mem_pool_used() - get number of used slots in a memory pool + * @pool: Software IO TLB memory pool. + * + * The result is not accurate, see mem_used(). + * + * Return: Approximate number of used slots. + */ +static unsigned long mem_pool_used(struct io_tlb_pool *pool) +{ + int i; + unsigned long used = 0; + + for (i = 0; i < pool->nareas; i++) + used += pool->areas[i].used; + return used; +} + /** * mem_used() - get number of used slots in an allocator * @mem: Software IO TLB allocator. @@ -792,12 +838,7 @@ static int swiotlb_find_slots(struct device *dev, phys_addr_t orig_addr, */ static unsigned long mem_used(struct io_tlb_mem *mem) { - int i; - unsigned long used = 0; - - for (i = 0; i < mem->nareas; i++) - used += mem->areas[i].used; - return used; + return mem_pool_used(mem->pool); } phys_addr_t swiotlb_tbl_map_single(struct device *dev, phys_addr_t orig_addr, @@ -807,6 +848,7 @@ phys_addr_t swiotlb_tbl_map_single(struct device *dev, phys_addr_t orig_addr, { struct io_tlb_mem *mem = dev->dma_io_tlb_mem; unsigned int offset = swiotlb_align_offset(dev, orig_addr); + struct io_tlb_pool *pool; unsigned int i; int index; phys_addr_t tlb_addr; @@ -841,9 +883,10 @@ phys_addr_t swiotlb_tbl_map_single(struct device *dev, phys_addr_t orig_addr, * This is needed when we sync the memory. Then we sync the buffer if * needed. */ + pool = mem->pool; for (i = 0; i < nr_slots(alloc_size + offset); i++) - mem->slots[index + i].orig_addr = slot_addr(orig_addr, i); - tlb_addr = slot_addr(mem->start, index) + offset; + pool->slots[index + i].orig_addr = slot_addr(orig_addr, i); + tlb_addr = slot_addr(pool->start, index) + offset; /* * When dir == DMA_FROM_DEVICE we could omit the copy from the orig * to the tlb buffer, if we knew for sure the device will @@ -857,7 +900,7 @@ phys_addr_t swiotlb_tbl_map_single(struct device *dev, phys_addr_t orig_addr, static void swiotlb_release_slots(struct device *dev, phys_addr_t tlb_addr) { - struct io_tlb_mem *mem = dev->dma_io_tlb_mem; + struct io_tlb_pool *mem = dev->dma_io_tlb_mem->pool; unsigned long flags; unsigned int offset = swiotlb_align_offset(dev, tlb_addr); int index = (tlb_addr - offset - mem->start) >> IO_TLB_SHIFT; @@ -901,7 +944,7 @@ static void swiotlb_release_slots(struct device *dev, phys_addr_t tlb_addr) area->used -= nslots; spin_unlock_irqrestore(&area->lock, flags); - dec_used(mem, nslots); + dec_used(dev->dma_io_tlb_mem, nslots); } /* @@ -1009,7 +1052,7 @@ EXPORT_SYMBOL_GPL(is_swiotlb_active); */ phys_addr_t default_swiotlb_start(void) { - return io_tlb_default_mem.start; + return io_tlb_default_pool.start; } /** @@ -1019,7 +1062,7 @@ phys_addr_t default_swiotlb_start(void) */ phys_addr_t default_swiotlb_limit(void) { - return io_tlb_default_mem.end - 1; + return io_tlb_default_pool.end - 1; } #ifdef CONFIG_DEBUG_FS @@ -1095,6 +1138,7 @@ static inline void swiotlb_create_debugfs_files(struct io_tlb_mem *mem, struct page *swiotlb_alloc(struct device *dev, size_t size) { struct io_tlb_mem *mem = dev->dma_io_tlb_mem; + struct io_tlb_pool *pool; phys_addr_t tlb_addr; int index; @@ -1105,7 +1149,8 @@ struct page *swiotlb_alloc(struct device *dev, size_t size) if (index == -1) return NULL; - tlb_addr = slot_addr(mem->start, index); + pool = mem->pool; + tlb_addr = slot_addr(pool->start, index); return pfn_to_page(PFN_DOWN(tlb_addr)); } @@ -1142,29 +1187,35 @@ static int rmem_swiotlb_device_init(struct reserved_mem *rmem, * to it. */ if (!mem) { - mem = kzalloc(sizeof(*mem), GFP_KERNEL); + struct io_tlb_pool *pool; + + mem = kzalloc(sizeof(*mem) + sizeof(*pool), GFP_KERNEL); if (!mem) return -ENOMEM; + pool = (void*)mem + sizeof(*mem); - mem->slots = kcalloc(nslabs, sizeof(*mem->slots), GFP_KERNEL); - if (!mem->slots) { + pool->slots = kcalloc(nslabs, sizeof(*pool->slots), GFP_KERNEL); + if (!pool->slots) { kfree(mem); return -ENOMEM; } - mem->areas = kcalloc(nareas, sizeof(*mem->areas), + pool->areas = kcalloc(nareas, sizeof(*pool->areas), GFP_KERNEL); - if (!mem->areas) { - kfree(mem->slots); + if (!pool->areas) { + kfree(pool->slots); kfree(mem); return -ENOMEM; } set_memory_decrypted((unsigned long)phys_to_virt(rmem->base), rmem->size >> PAGE_SHIFT); - swiotlb_init_io_tlb_mem(mem, rmem->base, nslabs, SWIOTLB_FORCE, - false, nareas); + swiotlb_init_io_tlb_pool(pool, rmem->base, nslabs, + false, nareas); + mem->force_bounce = true; mem->for_alloc = true; + mem->pool = pool; + mem->nslabs = nslabs; rmem->priv = mem; -- 2.25.1 From xen-devel-bounces@lists.xenproject.org Tue Jun 27 10:00:33 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 10:00:33 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555957.868165 (Exim 4.92) (envelope-from ) id 1qE5Ue-00019z-3Y; Tue, 27 Jun 2023 10:00:16 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555957.868165; Tue, 27 Jun 2023 10:00:16 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE5Ud-00018W-Vi; Tue, 27 Jun 2023 10:00:15 +0000 Received: by outflank-mailman (input) for mailman id 555957; Tue, 27 Jun 2023 09:55:47 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE5QJ-0008Sr-6a for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 09:55:47 +0000 Received: from frasgout12.his.huawei.com (unknown [14.137.139.154]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id c8603752-14d0-11ee-8611-37d641c3527e; Tue, 27 Jun 2023 11:55:45 +0200 (CEST) Received: from mail02.huawei.com (unknown [172.18.147.227]) by frasgout12.his.huawei.com (SkyGuard) with ESMTP id 4Qr0Bs2wPsz9xGYX for ; Tue, 27 Jun 2023 17:43:17 +0800 (CST) Received: from A2101119013HW2.china.huawei.com (unknown [10.45.153.185]) by APP1 (Coremail) with SMTP id LxC2BwBnwdzesZpknnvHAw--.39096S3; Tue, 27 Jun 2023 10:55:17 +0100 (CET) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: c8603752-14d0-11ee-8611-37d641c3527e From: Petr Tesarik To: Stefano Stabellini , Thomas Bogendoerfer , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , x86@kernel.org (maintainer:X86 ARCHITECTURE (32-BIT AND 64-BIT)), "H. Peter Anvin" , Greg Kroah-Hartman , "Rafael J. Wysocki" , Juergen Gross , Oleksandr Tyshchenko , Christoph Hellwig , Marek Szyprowski , Robin Murphy , Andy Shevchenko , Hans de Goede , Jason Gunthorpe , Kees Cook , Saravana Kannan , xen-devel@lists.xenproject.org (moderated list:XEN HYPERVISOR ARM), linux-arm-kernel@lists.infradead.org (moderated list:ARM PORT), linux-kernel@vger.kernel.org (open list), linux-mips@vger.kernel.org (open list:MIPS), iommu@lists.linux.dev (open list:XEN SWIOTLB SUBSYSTEM) Cc: Roberto Sassu , Kefeng Wang , petr@tesarici.cz Subject: [PATCH v3 1/7] swiotlb: make io_tlb_default_mem local to swiotlb.c Date: Tue, 27 Jun 2023 11:54:23 +0200 Message-Id: X-Mailer: git-send-email 2.25.1 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-CM-TRANSID:LxC2BwBnwdzesZpknnvHAw--.39096S3 X-Coremail-Antispam: 1UD129KBjvJXoW3WF1DXF45KFykCry5JFyxKrg_yoWxuw1fpr y7AFyrGF42grn7ArW3C3WkAF1Y93Z7K3yxCryS9w1Ygr15Cwn8Ja1DtrWYyr1rJrW8uF4f AFy0vryaka17Aw7anT9S1TB71UUUUUUqnTZGkaVYY2UrUUUUjbIjqfuFe4nvWSU5nxnvy2 9KBjDU0xBIdaVrnRJUUUma14x267AKxVWrJVCq3wAFc2x0x2IEx4CE42xK8VAvwI8IcIk0 rVWrJVCq3wAFIxvE14AKwVWUJVWUGwA2048vs2IY020E87I2jVAFwI0_Jr4l82xGYIkIc2 x26xkF7I0E14v26ryj6s0DM28lY4IEw2IIxxk0rwA2F7IY1VAKz4vEj48ve4kI8wA2z4x0 Y4vE2Ix0cI8IcVAFwI0_Jr0_JF4l84ACjcxK6xIIjxv20xvEc7CjxVAFwI0_Cr0_Gr1UM2 8EF7xvwVC2z280aVAFwI0_Gr0_Cr1l84ACjcxK6I8E87Iv6xkF7I0E14v26r4UJVWxJr1l e2I262IYc4CY6c8Ij28IcVAaY2xG8wAqx4xG64xvF2IEw4CE5I8CrVC2j2WlYx0E2Ix0cI 8IcVAFwI0_Jr0_Jr4lYx0Ex4A2jsIE14v26r1j6r4UMcvjeVCFs4IE7xkEbVWUJVW8JwAC jcxG0xvY0x0EwIxGrwACjI8F5VA0II8E6IAqYI8I648v4I1lFIxGxcIEc7CjxVA2Y2ka0x kIwI1lc7CjxVAKzI0EY4vE52x082I5MxAIw28IcxkI7VAKI48JMxC20s026xCaFVCjc4AY 6r1j6r4UMI8I3I0E5I8CrVAFwI0_Jr0_Jr4lx2IqxVCjr7xvwVAFwI0_JrI_JrWlx4CE17 CEb7AF67AKxVWrXVW8Jr1lIxkGc2Ij64vIr41lIxAIcVC0I7IYx2IY67AKxVWUJVWUCwCI 42IY6xIIjxv20xvEc7CjxVAFwI0_Cr0_Gr1UMIIF0xvE42xK8VAvwI8IcIk0rVWUJVWUCw CI42IY6I8E87Iv67AKxVWUJVW8JwCI42IY6I8E87Iv6xkF7I0E14v26r4UJVWxJrUvcSsG vfC2KfnxnUUI43ZEXa7VUjb_-PUUUUU== X-CM-SenderInfo: hshw23xhvd2x3n6k3tpzhluzxrxghudrp/ X-CFilter-Loop: Reflected From: Petr Tesarik SWIOTLB implementation details should not be exposed to the rest of the kernel. This will allow to make changes to the implementation without modifying non-swiotlb code. To avoid breaking existing users, provide helper functions for the few required fields. Enhance is_swiotlb_active() to work with the default IO TLB pool when passed a NULL device. As a bonus, using a helper function to initialize struct device allows to get rid of an #ifdef in driver core. Signed-off-by: Petr Tesarik --- arch/arm/xen/mm.c | 2 +- arch/mips/pci/pci-octeon.c | 2 +- arch/x86/kernel/pci-dma.c | 2 +- drivers/base/core.c | 4 +--- drivers/xen/swiotlb-xen.c | 2 +- include/linux/swiotlb.h | 17 ++++++++++++++++- kernel/dma/swiotlb.c | 39 ++++++++++++++++++++++++++++++++++++-- 7 files changed, 58 insertions(+), 10 deletions(-) diff --git a/arch/arm/xen/mm.c b/arch/arm/xen/mm.c index 3d826c0b5fee..529aabc1be38 100644 --- a/arch/arm/xen/mm.c +++ b/arch/arm/xen/mm.c @@ -125,7 +125,7 @@ static int __init xen_mm_init(void) return 0; /* we can work with the default swiotlb */ - if (!io_tlb_default_mem.nslabs) { + if (!is_swiotlb_active(NULL)) { rc = swiotlb_init_late(swiotlb_size_or_default(), xen_swiotlb_gfp(), NULL); if (rc < 0) diff --git a/arch/mips/pci/pci-octeon.c b/arch/mips/pci/pci-octeon.c index e457a18cbdc5..c5c4c1f7d5e4 100644 --- a/arch/mips/pci/pci-octeon.c +++ b/arch/mips/pci/pci-octeon.c @@ -664,7 +664,7 @@ static int __init octeon_pci_setup(void) /* BAR1 movable regions contiguous to cover the swiotlb */ octeon_bar1_pci_phys = - io_tlb_default_mem.start & ~((1ull << 22) - 1); + default_swiotlb_start() & ~((1ull << 22) - 1); for (index = 0; index < 32; index++) { union cvmx_pci_bar1_indexx bar1_index; diff --git a/arch/x86/kernel/pci-dma.c b/arch/x86/kernel/pci-dma.c index de6be0a3965e..33e960672837 100644 --- a/arch/x86/kernel/pci-dma.c +++ b/arch/x86/kernel/pci-dma.c @@ -90,7 +90,7 @@ int pci_xen_swiotlb_init_late(void) return 0; /* we can work with the default swiotlb */ - if (!io_tlb_default_mem.nslabs) { + if (!is_swiotlb_active(NULL)) { int rc = swiotlb_init_late(swiotlb_size_or_default(), GFP_KERNEL, xen_swiotlb_fixup); if (rc < 0) diff --git a/drivers/base/core.c b/drivers/base/core.c index 3dff5037943e..46d1d78c5beb 100644 --- a/drivers/base/core.c +++ b/drivers/base/core.c @@ -3108,9 +3108,7 @@ void device_initialize(struct device *dev) defined(CONFIG_ARCH_HAS_SYNC_DMA_FOR_CPU_ALL) dev->dma_coherent = dma_default_coherent; #endif -#ifdef CONFIG_SWIOTLB - dev->dma_io_tlb_mem = &io_tlb_default_mem; -#endif + swiotlb_dev_init(dev); } EXPORT_SYMBOL_GPL(device_initialize); diff --git a/drivers/xen/swiotlb-xen.c b/drivers/xen/swiotlb-xen.c index 67aa74d20162..946bd56f0ac5 100644 --- a/drivers/xen/swiotlb-xen.c +++ b/drivers/xen/swiotlb-xen.c @@ -381,7 +381,7 @@ xen_swiotlb_sync_sg_for_device(struct device *dev, struct scatterlist *sgl, static int xen_swiotlb_dma_supported(struct device *hwdev, u64 mask) { - return xen_phys_to_dma(hwdev, io_tlb_default_mem.end - 1) <= mask; + return xen_phys_to_dma(hwdev, default_swiotlb_limit()) <= mask; } const struct dma_map_ops xen_swiotlb_dma_ops = { diff --git a/include/linux/swiotlb.h b/include/linux/swiotlb.h index 7af2673b47ba..b38045be532d 100644 --- a/include/linux/swiotlb.h +++ b/include/linux/swiotlb.h @@ -112,7 +112,6 @@ struct io_tlb_mem { atomic_long_t used_hiwater; #endif }; -extern struct io_tlb_mem io_tlb_default_mem; static inline bool is_swiotlb_buffer(struct device *dev, phys_addr_t paddr) { @@ -130,13 +129,19 @@ static inline bool is_swiotlb_force_bounce(struct device *dev) void swiotlb_init(bool addressing_limited, unsigned int flags); void __init swiotlb_exit(void); +void swiotlb_dev_init(struct device *dev); size_t swiotlb_max_mapping_size(struct device *dev); bool is_swiotlb_active(struct device *dev); void __init swiotlb_adjust_size(unsigned long size); +phys_addr_t default_swiotlb_start(void); +phys_addr_t default_swiotlb_limit(void); #else static inline void swiotlb_init(bool addressing_limited, unsigned int flags) { } +static inline void swiotlb_dev_init(struct device *dev) +{ +} static inline bool is_swiotlb_buffer(struct device *dev, phys_addr_t paddr) { return false; @@ -161,6 +166,16 @@ static inline bool is_swiotlb_active(struct device *dev) static inline void swiotlb_adjust_size(unsigned long size) { } + +static inline phys_addr_t default_swiotlb_start(void) +{ + return 0; +} + +static inline phys_addr_t default_swiotlb_limit(void) +{ + return 0; +} #endif /* CONFIG_SWIOTLB */ extern void swiotlb_print_info(void); diff --git a/kernel/dma/swiotlb.c b/kernel/dma/swiotlb.c index 079df5ad38d0..63d318059f27 100644 --- a/kernel/dma/swiotlb.c +++ b/kernel/dma/swiotlb.c @@ -71,7 +71,7 @@ struct io_tlb_slot { static bool swiotlb_force_bounce; static bool swiotlb_force_disable; -struct io_tlb_mem io_tlb_default_mem; +static struct io_tlb_mem io_tlb_default_mem; static unsigned long default_nslabs = IO_TLB_DEFAULT_SIZE >> IO_TLB_SHIFT; static unsigned long default_nareas; @@ -486,6 +486,15 @@ void __init swiotlb_exit(void) memset(mem, 0, sizeof(*mem)); } +/** + * swiotlb_dev_init() - initialize swiotlb fields in &struct device + * @dev: Device to be initialized. + */ +void swiotlb_dev_init(struct device *dev) +{ + dev->dma_io_tlb_mem = &io_tlb_default_mem; +} + /* * Return the offset into a iotlb slot required to keep the device happy. */ @@ -939,14 +948,40 @@ size_t swiotlb_max_mapping_size(struct device *dev) return ((size_t)IO_TLB_SIZE) * IO_TLB_SEGSIZE - min_align; } +/** + * is_swiotlb_active() - check if the software IO TLB is initialized + * @dev: Device to check, or %NULL for the default IO TLB. + */ bool is_swiotlb_active(struct device *dev) { - struct io_tlb_mem *mem = dev->dma_io_tlb_mem; + struct io_tlb_mem *mem = dev + ? dev->dma_io_tlb_mem + : &io_tlb_default_mem; return mem && mem->nslabs; } EXPORT_SYMBOL_GPL(is_swiotlb_active); +/** + * default_swiotlb_start() - get the start of the default SWIOTLB + * + * Get the lowest physical address used by the default software IO TLB pool. + */ +phys_addr_t default_swiotlb_start(void) +{ + return io_tlb_default_mem.start; +} + +/** + * default_swiotlb_limit() - get the highest address in the default SWIOTLB + * + * Get the highest physical address used by the default software IO TLB pool. + */ +phys_addr_t default_swiotlb_limit(void) +{ + return io_tlb_default_mem.end - 1; +} + #ifdef CONFIG_DEBUG_FS static int io_tlb_used_get(void *data, u64 *val) -- 2.25.1 From xen-devel-bounces@lists.xenproject.org Tue Jun 27 10:00:33 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 10:00:33 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555959.868172 (Exim 4.92) (envelope-from ) id 1qE5Ue-0001I7-Ex; Tue, 27 Jun 2023 10:00:16 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555959.868172; Tue, 27 Jun 2023 10:00:16 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE5Ue-0001GE-9H; Tue, 27 Jun 2023 10:00:16 +0000 Received: by outflank-mailman (input) for mailman id 555959; Tue, 27 Jun 2023 09:56:07 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE5Qd-0008WP-0W for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 09:56:07 +0000 Received: from frasgout12.his.huawei.com (unknown [14.137.139.154]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id d288e18c-14d0-11ee-b237-6b7b168915f2; Tue, 27 Jun 2023 11:56:02 +0200 (CEST) Received: from mail02.huawei.com (unknown [172.18.147.228]) by frasgout12.his.huawei.com (SkyGuard) with ESMTP id 4Qr0C92NY3z9xGXS for ; Tue, 27 Jun 2023 17:43:33 +0800 (CST) Received: from A2101119013HW2.china.huawei.com (unknown [10.45.153.185]) by APP1 (Coremail) with SMTP id LxC2BwBnwdzesZpknnvHAw--.39096S4; Tue, 27 Jun 2023 10:55:33 +0100 (CET) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: d288e18c-14d0-11ee-b237-6b7b168915f2 From: Petr Tesarik To: Stefano Stabellini , Thomas Bogendoerfer , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , x86@kernel.org (maintainer:X86 ARCHITECTURE (32-BIT AND 64-BIT)), "H. Peter Anvin" , Greg Kroah-Hartman , "Rafael J. Wysocki" , Juergen Gross , Oleksandr Tyshchenko , Christoph Hellwig , Marek Szyprowski , Robin Murphy , Andy Shevchenko , Hans de Goede , Jason Gunthorpe , Kees Cook , Saravana Kannan , xen-devel@lists.xenproject.org (moderated list:XEN HYPERVISOR ARM), linux-arm-kernel@lists.infradead.org (moderated list:ARM PORT), linux-kernel@vger.kernel.org (open list), linux-mips@vger.kernel.org (open list:MIPS), iommu@lists.linux.dev (open list:XEN SWIOTLB SUBSYSTEM) Cc: Roberto Sassu , Kefeng Wang , petr@tesarici.cz Subject: [PATCH v3 2/7] swiotlb: add documentation and rename swiotlb_do_find_slots() Date: Tue, 27 Jun 2023 11:54:24 +0200 Message-Id: X-Mailer: git-send-email 2.25.1 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-CM-TRANSID:LxC2BwBnwdzesZpknnvHAw--.39096S4 X-Coremail-Antispam: 1UD129KBjvJXoW3GrWfGF48Gr13WrW3tFWUArb_yoW7XF43pF 4rKFs0qFZ8Jr1xC3sFkw48uF1Ska1kK347uayS9ryF9rnxJr9agFyqyrW5Xa4rJrs7uF4U Ja4avrW8GF45Xr7anT9S1TB71UUUUUUqnTZGkaVYY2UrUUUUjbIjqfuFe4nvWSU5nxnvy2 9KBjDU0xBIdaVrnRJUUUma14x267AKxVWrJVCq3wAFc2x0x2IEx4CE42xK8VAvwI8IcIk0 rVWrJVCq3wAFIxvE14AKwVWUJVWUGwA2048vs2IY020E87I2jVAFwI0_Jryl82xGYIkIc2 x26xkF7I0E14v26ryj6s0DM28lY4IEw2IIxxk0rwA2F7IY1VAKz4vEj48ve4kI8wA2z4x0 Y4vE2Ix0cI8IcVAFwI0_Jr0_JF4l84ACjcxK6xIIjxv20xvEc7CjxVAFwI0_Cr0_Gr1UM2 8EF7xvwVC2z280aVAFwI0_Gr0_Cr1l84ACjcxK6I8E87Iv6xkF7I0E14v26r4UJVWxJr1l e2I262IYc4CY6c8Ij28IcVAaY2xG8wAqx4xG64xvF2IEw4CE5I8CrVC2j2WlYx0E2Ix0cI 8IcVAFwI0_Jr0_Jr4lYx0Ex4A2jsIE14v26r1j6r4UMcvjeVCFs4IE7xkEbVWUJVW8JwAC jcxG0xvY0x0EwIxGrwACjI8F5VA0II8E6IAqYI8I648v4I1lFIxGxcIEc7CjxVA2Y2ka0x kIwI1lc7CjxVAKzI0EY4vE52x082I5MxAIw28IcxkI7VAKI48JMxC20s026xCaFVCjc4AY 6r1j6r4UMI8I3I0E5I8CrVAFwI0_Jr0_Jr4lx2IqxVCjr7xvwVAFwI0_JrI_JrWlx4CE17 CEb7AF67AKxVWrXVW8Jr1lIxkGc2Ij64vIr41lIxAIcVC0I7IYx2IY67AKxVWUJVWUCwCI 42IY6xIIjxv20xvEc7CjxVAFwI0_Cr0_Gr1UMIIF0xvE42xK8VAvwI8IcIk0rVWUJVWUCw CI42IY6I8E87Iv67AKxVW8JVWxJwCI42IY6I8E87Iv6xkF7I0E14v26r4UJVWxJrUvcSsG vfC2KfnxnUUI43ZEXa7VUURwZ5UUUUU== X-CM-SenderInfo: hshw23xhvd2x3n6k3tpzhluzxrxghudrp/ X-CFilter-Loop: Reflected From: Petr Tesarik Add some kernel-doc comments and move the existing documentation of struct io_tlb_slot to its correct location. The latter was forgotten in commit 942a8186eb445 ("swiotlb: move struct io_tlb_slot to swiotlb.c"). Use the opportunity to give swiotlb_do_find_slots() a more descriptive name, which makes it clear how it differs from swiotlb_find_slots(). Signed-off-by: Petr Tesarik --- include/linux/swiotlb.h | 15 ++++++++---- kernel/dma/swiotlb.c | 52 ++++++++++++++++++++++++++++++++++++----- 2 files changed, 57 insertions(+), 10 deletions(-) diff --git a/include/linux/swiotlb.h b/include/linux/swiotlb.h index b38045be532d..9f486843a66a 100644 --- a/include/linux/swiotlb.h +++ b/include/linux/swiotlb.h @@ -77,10 +77,6 @@ dma_addr_t swiotlb_map(struct device *dev, phys_addr_t phys, * @end. For default swiotlb, this is command line adjustable via * setup_io_tlb_npages. * @used: The number of used IO TLB block. - * @list: The free list describing the number of free entries available - * from each index. - * @orig_addr: The original address corresponding to a mapped entry. - * @alloc_size: Size of the allocated buffer. * @debugfs: The dentry to debugfs. * @late_alloc: %true if allocated using the page allocator * @force_bounce: %true if swiotlb bouncing is forced @@ -113,6 +109,17 @@ struct io_tlb_mem { #endif }; +/** + * is_swiotlb_buffer() - check if a physical address belongs to a swiotlb + * @dev: Device which has mapped the buffer. + * @paddr: Physical address within the DMA buffer. + * + * Check if @paddr points into a bounce buffer. + * + * Return: + * * %true if @paddr points into a bounce buffer + * * %false otherwise + */ static inline bool is_swiotlb_buffer(struct device *dev, phys_addr_t paddr) { struct io_tlb_mem *mem = dev->dma_io_tlb_mem; diff --git a/kernel/dma/swiotlb.c b/kernel/dma/swiotlb.c index 63d318059f27..888c25a9bfcc 100644 --- a/kernel/dma/swiotlb.c +++ b/kernel/dma/swiotlb.c @@ -62,6 +62,13 @@ #define INVALID_PHYS_ADDR (~(phys_addr_t)0) +/** + * struct io_tlb_slot - IO TLB slot descriptor + * @orig_addr: The original address corresponding to a mapped entry. + * @alloc_size: Size of the allocated buffer. + * @list: The free list describing the number of free entries available + * from each index. + */ struct io_tlb_slot { phys_addr_t orig_addr; size_t alloc_size; @@ -632,11 +639,22 @@ static void dec_used(struct io_tlb_mem *mem, unsigned int nslots) } #endif /* CONFIG_DEBUG_FS */ -/* - * Find a suitable number of IO TLB entries size that will fit this request and - * allocate a buffer from that IO TLB pool. +/** + * area_find_slots() - search for slots in one IO TLB memory area + * @dev: Device which maps the buffer. + * @area_index: Index of the IO TLB memory area to be searched. + * @orig_addr: Original (non-bounced) IO buffer address. + * @alloc_size: Total requested size of the bounce buffer, + * including initial alignment padding. + * @alloc_align_mask: Required alignment of the allocated buffer. + * + * Find a suitable sequence of IO TLB entries for the request and allocate + * a buffer from the given IO TLB memory area. + * This function takes care of locking. + * + * Return: Index of the first allocated slot, or -1 on error. */ -static int swiotlb_do_find_slots(struct device *dev, int area_index, +static int area_find_slots(struct device *dev, int area_index, phys_addr_t orig_addr, size_t alloc_size, unsigned int alloc_align_mask) { @@ -731,6 +749,19 @@ static int swiotlb_do_find_slots(struct device *dev, int area_index, return slot_index; } +/** + * swiotlb_find_slots() - search for slots in the whole swiotlb + * @dev: Device which maps the buffer. + * @orig_addr: Original (non-bounced) IO buffer address. + * @alloc_size: Total requested size of the bounce buffer, + * including initial alignment padding. + * @alloc_align_mask: Required alignment of the allocated buffer. + * + * Search through the whole software IO TLB to find a sequence of slots that + * match the allocation constraints. + * + * Return: Index of the first allocated slot, or -1 on error. + */ static int swiotlb_find_slots(struct device *dev, phys_addr_t orig_addr, size_t alloc_size, unsigned int alloc_align_mask) { @@ -739,8 +770,8 @@ static int swiotlb_find_slots(struct device *dev, phys_addr_t orig_addr, int i = start, index; do { - index = swiotlb_do_find_slots(dev, i, orig_addr, alloc_size, - alloc_align_mask); + index = area_find_slots(dev, i, orig_addr, alloc_size, + alloc_align_mask); if (index >= 0) return index; if (++i >= mem->nareas) @@ -750,6 +781,15 @@ static int swiotlb_find_slots(struct device *dev, phys_addr_t orig_addr, return -1; } +/** + * mem_used() - get number of used slots in an allocator + * @mem: Software IO TLB allocator. + * + * The result is not accurate, because there is no locking of individual + * areas. + * + * Return: Approximate number of used slots. + */ static unsigned long mem_used(struct io_tlb_mem *mem) { int i; -- 2.25.1 From xen-devel-bounces@lists.xenproject.org Tue Jun 27 10:00:33 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 10:00:33 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555963.868184 (Exim 4.92) (envelope-from ) id 1qE5Uf-0001Wg-36; Tue, 27 Jun 2023 10:00:17 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555963.868184; Tue, 27 Jun 2023 10:00:17 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE5Ue-0001UV-U9; Tue, 27 Jun 2023 10:00:16 +0000 Received: by outflank-mailman (input) for mailman id 555963; Tue, 27 Jun 2023 09:56:35 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE5R5-00006I-6Q for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 09:56:35 +0000 Received: from frasgout11.his.huawei.com (unknown [14.137.139.23]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id e51ab88b-14d0-11ee-8611-37d641c3527e; Tue, 27 Jun 2023 11:56:32 +0200 (CEST) Received: from mail02.huawei.com (unknown [172.18.147.227]) by frasgout11.his.huawei.com (SkyGuard) with ESMTP id 4Qr0Fg19Jzz9v7HG for ; Tue, 27 Jun 2023 17:45:43 +0800 (CST) Received: from A2101119013HW2.china.huawei.com (unknown [10.45.153.185]) by APP1 (Coremail) with SMTP id LxC2BwBnwdzesZpknnvHAw--.39096S6; Tue, 27 Jun 2023 10:56:05 +0100 (CET) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: e51ab88b-14d0-11ee-8611-37d641c3527e From: Petr Tesarik To: Stefano Stabellini , Thomas Bogendoerfer , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , x86@kernel.org (maintainer:X86 ARCHITECTURE (32-BIT AND 64-BIT)), "H. Peter Anvin" , Greg Kroah-Hartman , "Rafael J. Wysocki" , Juergen Gross , Oleksandr Tyshchenko , Christoph Hellwig , Marek Szyprowski , Robin Murphy , Andy Shevchenko , Hans de Goede , Jason Gunthorpe , Kees Cook , Saravana Kannan , xen-devel@lists.xenproject.org (moderated list:XEN HYPERVISOR ARM), linux-arm-kernel@lists.infradead.org (moderated list:ARM PORT), linux-kernel@vger.kernel.org (open list), linux-mips@vger.kernel.org (open list:MIPS), iommu@lists.linux.dev (open list:XEN SWIOTLB SUBSYSTEM) Cc: Roberto Sassu , Kefeng Wang , petr@tesarici.cz Subject: [PATCH v3 4/7] swiotlb: if swiotlb is full, fall back to a transient memory pool Date: Tue, 27 Jun 2023 11:54:26 +0200 Message-Id: <34c2a1ba721a7bc496128aac5e20724e4077f1ab.1687859323.git.petr.tesarik.ext@huawei.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-CM-TRANSID:LxC2BwBnwdzesZpknnvHAw--.39096S6 X-Coremail-Antispam: 1UD129KBjvAXoW3Cr4UZr48ZrW8XFyfAry5urg_yoW8AryfXo W7CFn7Ww4fJryUCF45GFZ7GF47Za1kKF48AF4fuayqgayjvryYgrW3ta15X3sxur1xKFWx Ar1Sqa4fWF4xAry8n29KB7ZKAUJUUUUU529EdanIXcx71UUUUU7v73VFW2AGmfu7bjvjm3 AaLaJ3UjIYCTnIWjp_UUUOT7AC8VAFwI0_Wr0E3s1l1xkIjI8I6I8E6xAIw20EY4v20xva j40_Wr0E3s1l1IIY67AEw4v_Jr0_Jr4l82xGYIkIc2x26280x7IE14v26r126s0DM28Irc Ia0xkI8VCY1x0267AKxVW5JVCq3wA2ocxC64kIII0Yj41l84x0c7CEw4AK67xGY2AK021l 84ACjcxK6xIIjxv20xvE14v26r1j6r1xM28EF7xvwVC0I7IYx2IY6xkF7I0E14v26r4UJV WxJr1l84ACjcxK6I8E87Iv67AKxVW8JVWxJwA2z4x0Y4vEx4A2jsIEc7CjxVAFwI0_Gr1j 6F4UJwAS0I0E0xvYzxvE52x082IY62kv0487Mc02F40EFcxC0VAKzVAqx4xG6I80ewAv7V C0I7IYx2IY67AKxVWUJVWUGwAv7VC2z280aVAFwI0_Jr0_Gr1lOx8S6xCaFVCjc4AY6r1j 6r4UM4x0Y48IcxkI7VAKI48JM4x0x7Aq67IIx4CEVc8vx2IErcIFxwACI402YVCY1x0262 8vn2kIc2xKxwCY1x0264kExVAvwVAq07x20xyl42xK82IYc2Ij64vIr41l4I8I3I0E4IkC 6x0Yz7v_Jr0_Gr1lx2IqxVAqx4xG67AKxVWUJVWUGwC20s026x8GjcxK67AKxVWUGVWUWw C2zVAF1VAY17CE14v26rWY6r4UJwCIc40Y0x0EwIxGrwCI42IY6xIIjxv20xvE14v26r1j 6r1xMIIF0xvE2Ix0cI8IcVCY1x0267AKxVW8Jr0_Cr1UMIIF0xvE42xK8VAvwI8IcIk0rV WUJVWUCwCI42IY6I8E87Iv67AKxVW8JVWxJwCI42IY6I8E87Iv6xkF7I0E14v26r4UJVWx JrUvcSsGvfC2KfnxnUUI43ZEXa7VUU_Ma5UUUUU== X-CM-SenderInfo: hshw23xhvd2x3n6k3tpzhluzxrxghudrp/ X-CFilter-Loop: Reflected From: Petr Tesarik Try to allocate a transient memory pool if no suitable slots can be found, except when allocating from a restricted pool. The transient pool is just enough big for this one bounce buffer. It is inserted into a per-device list of transient memory pools, and it is freed again when the bounce buffer is unmapped. Transient memory pools are kept in an RCU list. A memory barrier is required after adding a new entry, because any address within a transient buffer must be immediately recognized as belonging to the SWIOTLB, even if it is passed to another CPU. Deletion does not require any synchronization beyond RCU ordering guarantees. After a buffer is unmapped, its physical addresses may no longer be passed to the DMA API, so the memory range of the corresponding stale entry in the RCU list never matches. If the memory range gets allocated again, then it happens only after a RCU quiescent state. Since bounce buffers can now be allocated from different pools, add a parameter to swiotlb_alloc_pool() to let the caller know which memory pool is used. Add swiotlb_find_pool() to find the memory pool corresponding to an address. This function is now also used by is_swiotlb_buffer(), because a simple boundary check is no longer sufficient. The logic in swiotlb_alloc_tlb() is taken from __dma_direct_alloc_pages(), simplified and enhanced to use coherent memory pools if needed. Note that this is not the most efficient way to provide a bounce buffer, but when a DMA buffer can't be mapped, something may (and will) actually break. At that point it is better to make an allocation, even if it may be an expensive operation. Signed-off-by: Petr Tesarik --- include/linux/device.h | 4 + include/linux/dma-mapping.h | 2 + include/linux/swiotlb.h | 13 +- kernel/dma/direct.c | 2 +- kernel/dma/swiotlb.c | 265 ++++++++++++++++++++++++++++++++++-- 5 files changed, 272 insertions(+), 14 deletions(-) diff --git a/include/linux/device.h b/include/linux/device.h index 83081aa99e6a..a1ee4c5924b8 100644 --- a/include/linux/device.h +++ b/include/linux/device.h @@ -510,6 +510,8 @@ struct device_physical_location { * @dma_mem: Internal for coherent mem override. * @cma_area: Contiguous memory area for dma allocations * @dma_io_tlb_mem: Software IO TLB allocator. Not for driver use. + * @dma_io_tlb_pools: List of transient swiotlb memory pools. + * @dma_io_tlb_lock: Protects changes to the list of active pools. * @archdata: For arch-specific additions. * @of_node: Associated device tree node. * @fwnode: Associated device node supplied by platform firmware. @@ -615,6 +617,8 @@ struct device { #endif #ifdef CONFIG_SWIOTLB struct io_tlb_mem *dma_io_tlb_mem; + struct list_head dma_io_tlb_pools; + spinlock_t dma_io_tlb_lock; #endif /* arch specific additions */ struct dev_archdata archdata; diff --git a/include/linux/dma-mapping.h b/include/linux/dma-mapping.h index 0ee20b764000..c36c5a546787 100644 --- a/include/linux/dma-mapping.h +++ b/include/linux/dma-mapping.h @@ -417,6 +417,8 @@ static inline void dma_sync_sgtable_for_device(struct device *dev, #define dma_get_sgtable(d, t, v, h, s) dma_get_sgtable_attrs(d, t, v, h, s, 0) #define dma_mmap_coherent(d, v, c, h, s) dma_mmap_attrs(d, v, c, h, s, 0) +bool dma_coherent_ok(struct device *dev, phys_addr_t phys, size_t size); + static inline void *dma_alloc_coherent(struct device *dev, size_t size, dma_addr_t *dma_handle, gfp_t gfp) { diff --git a/include/linux/swiotlb.h b/include/linux/swiotlb.h index 0aa6868cb68c..ae1688438850 100644 --- a/include/linux/swiotlb.h +++ b/include/linux/swiotlb.h @@ -63,6 +63,7 @@ dma_addr_t swiotlb_map(struct device *dev, phys_addr_t phys, /** * struct io_tlb_pool - IO TLB memory pool descriptor + * @node: Member of the IO TLB memory pool list. * @start: The start address of the swiotlb memory pool. Used to do a quick * range check to see if the memory was in fact allocated by this * API. @@ -77,22 +78,27 @@ dma_addr_t swiotlb_map(struct device *dev, phys_addr_t phys, * see setup_io_tlb_npages(). * @used: The number of used IO TLB slots. * @late_alloc: %true if allocated using the page allocator. + * @transient: %true if transient memory pool. * @nareas: Number of areas in the pool. * @area_nslabs: Number of slots in each area. * @areas: Array of memory area descriptors. * @slots: Array of slot descriptors. + * @rcu: RCU head for swiotlb_dyn_free(). */ struct io_tlb_pool { + struct list_head node; phys_addr_t start; phys_addr_t end; void *vaddr; unsigned long nslabs; unsigned long used; bool late_alloc; + bool transient; unsigned int nareas; unsigned int area_nslabs; struct io_tlb_area *areas; struct io_tlb_slot *slots; + struct rcu_head rcu; }; /** @@ -120,6 +126,8 @@ struct io_tlb_mem { #endif }; +struct io_tlb_pool *swiotlb_find_pool(struct device *dev, phys_addr_t paddr); + /** * is_swiotlb_buffer() - check if a physical address belongs to a swiotlb * @dev: Device which has mapped the buffer. @@ -133,9 +141,8 @@ struct io_tlb_mem { */ static inline bool is_swiotlb_buffer(struct device *dev, phys_addr_t paddr) { - struct io_tlb_mem *mem = dev->dma_io_tlb_mem; - - return mem && paddr >= mem->pool->start && paddr < mem->pool->end; + return dev->dma_io_tlb_mem && + !!swiotlb_find_pool(dev, paddr); } static inline bool is_swiotlb_force_bounce(struct device *dev) diff --git a/kernel/dma/direct.c b/kernel/dma/direct.c index 5595d1d5cdcc..820561cab38d 100644 --- a/kernel/dma/direct.c +++ b/kernel/dma/direct.c @@ -66,7 +66,7 @@ static gfp_t dma_direct_optimal_gfp_mask(struct device *dev, u64 *phys_limit) return 0; } -static bool dma_coherent_ok(struct device *dev, phys_addr_t phys, size_t size) +bool dma_coherent_ok(struct device *dev, phys_addr_t phys, size_t size) { dma_addr_t dma_addr = phys_to_dma_direct(dev, phys); diff --git a/kernel/dma/swiotlb.c b/kernel/dma/swiotlb.c index 4c5de91bda57..06b4fa7c2e9b 100644 --- a/kernel/dma/swiotlb.c +++ b/kernel/dma/swiotlb.c @@ -35,6 +35,7 @@ #include #include #include +#include #include #include #include @@ -500,6 +501,157 @@ void __init swiotlb_exit(void) memset(mem, 0, sizeof(*mem)); } +/** + * alloc_dma_pages() - allocate pages to be used for DMA + * @gfp: GFP flags for the allocation. + * @bytes: Size of the buffer. + * + * Allocate pages from the buddy allocator. If successful, make the allocated + * pages decrypted that they can be used for DMA. + * + * Return: Decrypted pages, or %NULL on failure. + */ +static struct page *alloc_dma_pages(gfp_t gfp, size_t bytes) +{ + unsigned int order = get_order(bytes); + struct page *page; + void *vaddr; + + page = alloc_pages(gfp, order); + if (!page) + return NULL; + + vaddr = page_address(page); + if (set_memory_decrypted((unsigned long)vaddr, PFN_UP(bytes))) { + __free_pages(page, order); + return NULL; + } + + return page; +} + +/** + * swiotlb_alloc_tlb() - allocate a dynamic IO TLB buffer + * @dev: Device for which a memory pool is allocated. + * @bytes: Size of the buffer. + * @phys_limit: Maximum allowed physical address of the buffer. + * @gfp: GFP flags for the allocation. + * + * Return: Allocated pages, or %NULL on allocation failure. + */ +static struct page *swiotlb_alloc_tlb(struct device *dev, size_t bytes, + u64 phys_limit, gfp_t gfp) +{ + struct page *page; + + /* + * Allocate from the atomic pools if memory is encrypted and + * the allocation is atomic, because decrypting may block. + */ + if (dev && force_dma_unencrypted(dev) && !gfpflags_allow_blocking(gfp)) { + void *vaddr; + + return IS_ENABLED(CONFIG_DMA_COHERENT_POOL) + ? dma_alloc_from_pool(dev, bytes, &vaddr, gfp, + dma_coherent_ok) + : NULL; + } + + gfp &= ~GFP_ZONEMASK; + if (phys_limit <= DMA_BIT_MASK(zone_dma_bits)) + gfp |= __GFP_DMA; + else if (phys_limit <= DMA_BIT_MASK(32)) + gfp |= __GFP_DMA32; + + while ((page = alloc_dma_pages(gfp, bytes)) && + page_to_phys(page) + bytes - 1 > phys_limit) { + /* allocated, but too high */ + __free_pages(page, get_order(bytes)); + + if (IS_ENABLED(CONFIG_ZONE_DMA32) && + phys_limit < DMA_BIT_MASK(64) && + !(gfp & (__GFP_DMA32 | __GFP_DMA))) + gfp |= __GFP_DMA32; + else if (IS_ENABLED(CONFIG_ZONE_DMA) && + !(gfp & __GFP_DMA)) + gfp = (gfp & ~__GFP_DMA32) | __GFP_DMA; + else + return NULL; + } + + return page; +} + +/** + * swiotlb_free_tlb() - free a dynamically allocated IO TLB buffer + * @vaddr: Virtual address of the buffer. + * @bytes: Size of the buffer. + */ +static void swiotlb_free_tlb(void *vaddr, size_t bytes) +{ + if (IS_ENABLED(CONFIG_DMA_COHERENT_POOL) && + dma_free_from_pool(NULL, vaddr, bytes)) + return; + + /* Intentional leak if pages cannot be encrypted again. */ + if (!set_memory_encrypted((unsigned long)vaddr, PFN_UP(bytes))) + __free_pages(virt_to_page(vaddr), get_order(bytes)); +} + +/** + * swiotlb_alloc_pool() - allocate a new IO TLB memory pool + * @dev: Device for which a memory pool is allocated. + * @nslabs: Desired number of slabs. + * @phys_limit: Maximum DMA buffer physical address. + * @gfp: GFP flags for the allocations. + * + * Allocate and initialize a new IO TLB memory pool. + * + * Return: New memory pool, or %NULL on allocation failure. + */ +static struct io_tlb_pool *swiotlb_alloc_pool(struct device *dev, + unsigned int nslabs, u64 phys_limit, gfp_t gfp) +{ + struct io_tlb_pool *pool; + struct page *tlb; + size_t pool_size; + size_t tlb_size; + + pool_size = sizeof(*pool) + array_size(sizeof(*pool->areas), 1) + + array_size(sizeof(*pool->slots), nslabs); + pool = kzalloc(pool_size, gfp); + if (!pool) + goto error; + pool->areas = (void *)pool + sizeof(*pool); + pool->slots = (void *)pool->areas + sizeof(*pool->areas); + + tlb_size = nslabs << IO_TLB_SHIFT; + tlb = swiotlb_alloc_tlb(dev, tlb_size, phys_limit, gfp); + if (!tlb) + goto error_tlb; + + swiotlb_init_io_tlb_pool(pool, page_to_phys(tlb), nslabs, true, 1); + return pool; + +error_tlb: + kfree(pool); +error: + return NULL; +} + +/** + * swiotlb_dyn_free() - RCU callback to free a memory pool + * @rcu: RCU head in the corresponding struct io_tlb_pool. + */ +static void swiotlb_dyn_free(struct rcu_head *rcu) +{ + struct io_tlb_pool *pool = container_of(rcu, struct io_tlb_pool, rcu); + size_t tlb_size = pool->end - pool->start; + + swiotlb_free_tlb(pool->vaddr, tlb_size); + kfree(pool); +} + /** * swiotlb_dev_init() - initialize swiotlb fields in &struct device * @dev: Device to be initialized. @@ -507,6 +659,56 @@ void __init swiotlb_exit(void) void swiotlb_dev_init(struct device *dev) { dev->dma_io_tlb_mem = &io_tlb_default_mem; + INIT_LIST_HEAD(&dev->dma_io_tlb_pools); + spin_lock_init(&dev->dma_io_tlb_lock); +} + +/** + * swiotlb_find_pool() - find the IO TLB pool for a physical address + * @dev: Device which has mapped the DMA buffer. + * @paddr: Physical address within the DMA buffer. + * + * Find the IO TLB memory pool descriptor which contains the given physical + * address, if any. + * + * Return: Memory pool which contains @paddr, or %NULL if none. + */ +struct io_tlb_pool *swiotlb_find_pool(struct device *dev, phys_addr_t paddr) +{ + struct io_tlb_mem *mem = dev->dma_io_tlb_mem; + struct io_tlb_pool *pool = mem->pool; + + if (paddr >= pool->start && paddr < pool->end) + return pool; + + /* Pairs with smp_wmb() in swiotlb_find_slots(). */ + smp_rmb(); + + rcu_read_lock(); + list_for_each_entry_rcu(pool, &dev->dma_io_tlb_pools, node) { + if (paddr >= pool->start && paddr < pool->end) + goto out; + } + pool = NULL; +out: + rcu_read_unlock(); + return pool; +} + +/** + * swiotlb_del_pool() - remove an IO TLB pool from a device + * @dev: Owning device. + * @pool: Memory pool to be removed. + */ +static void swiotlb_del_pool(struct device *dev, struct io_tlb_pool *pool) +{ + unsigned long flags; + + spin_lock_irqsave(&dev->dma_io_tlb_lock, flags); + list_del_rcu(&pool->node); + spin_unlock_irqrestore(&dev->dma_io_tlb_lock, flags); + + call_rcu(&pool->rcu, swiotlb_dyn_free); } /* @@ -523,7 +725,7 @@ static unsigned int swiotlb_align_offset(struct device *dev, u64 addr) static void swiotlb_bounce(struct device *dev, phys_addr_t tlb_addr, size_t size, enum dma_data_direction dir) { - struct io_tlb_pool *mem = dev->dma_io_tlb_mem->pool; + struct io_tlb_pool *mem = swiotlb_find_pool(dev, tlb_addr); int index = (tlb_addr - mem->start) >> IO_TLB_SHIFT; phys_addr_t orig_addr = mem->slots[index].orig_addr; size_t alloc_size = mem->slots[index].alloc_size; @@ -796,6 +998,7 @@ static int pool_find_slots(struct device *dev, struct io_tlb_pool *pool, * @alloc_size: Total requested size of the bounce buffer, * including initial alignment padding. * @alloc_align_mask: Required alignment of the allocated buffer. + * @retpool: Used memory pool, updated on return. * * Search through the whole software IO TLB to find a sequence of slots that * match the allocation constraints. @@ -803,10 +1006,46 @@ static int pool_find_slots(struct device *dev, struct io_tlb_pool *pool, * Return: Index of the first allocated slot, or -1 on error. */ static int swiotlb_find_slots(struct device *dev, phys_addr_t orig_addr, - size_t alloc_size, unsigned int alloc_align_mask) + size_t alloc_size, unsigned int alloc_align_mask, + struct io_tlb_pool **retpool) { - return pool_find_slots(dev, dev->dma_io_tlb_mem->pool, orig_addr, - alloc_size, alloc_align_mask); + struct io_tlb_pool *pool; + unsigned long flags; + u64 phys_limit; + int index; + + pool = dev->dma_io_tlb_mem->pool; + index = pool_find_slots(dev, pool, orig_addr, + alloc_size, alloc_align_mask); + if (index >= 0) + goto found; + + if (dev->dma_io_tlb_mem->for_alloc) + return -1; + + phys_limit = min_not_zero(dev->coherent_dma_mask, dev->bus_dma_limit); + pool = swiotlb_alloc_pool(dev, nr_slots(alloc_size), phys_limit, + GFP_NOWAIT | __GFP_NOWARN); + if (!pool) + return -1; + + index = pool_find_slots(dev, pool, orig_addr, + alloc_size, alloc_align_mask); + if (index < 0) { + swiotlb_dyn_free(&pool->rcu); + return -1; + } + + pool->transient = true; + spin_lock_irqsave(&dev->dma_io_tlb_lock, flags); + list_add_rcu(&pool->node, &dev->dma_io_tlb_pools); + spin_unlock_irqrestore(&dev->dma_io_tlb_lock, flags); + + /* Pairs with smp_rmb() in swiotlb_find_pool(). */ + smp_wmb(); +found: + *retpool = pool; + return index; } /** @@ -869,7 +1108,7 @@ phys_addr_t swiotlb_tbl_map_single(struct device *dev, phys_addr_t orig_addr, } index = swiotlb_find_slots(dev, orig_addr, - alloc_size + offset, alloc_align_mask); + alloc_size + offset, alloc_align_mask, &pool); if (index == -1) { if (!(attrs & DMA_ATTR_NO_WARN)) dev_warn_ratelimited(dev, @@ -883,7 +1122,6 @@ phys_addr_t swiotlb_tbl_map_single(struct device *dev, phys_addr_t orig_addr, * This is needed when we sync the memory. Then we sync the buffer if * needed. */ - pool = mem->pool; for (i = 0; i < nr_slots(alloc_size + offset); i++) pool->slots[index + i].orig_addr = slot_addr(orig_addr, i); tlb_addr = slot_addr(pool->start, index) + offset; @@ -900,7 +1138,7 @@ phys_addr_t swiotlb_tbl_map_single(struct device *dev, phys_addr_t orig_addr, static void swiotlb_release_slots(struct device *dev, phys_addr_t tlb_addr) { - struct io_tlb_pool *mem = dev->dma_io_tlb_mem->pool; + struct io_tlb_pool *mem = swiotlb_find_pool(dev, tlb_addr); unsigned long flags; unsigned int offset = swiotlb_align_offset(dev, tlb_addr); int index = (tlb_addr - offset - mem->start) >> IO_TLB_SHIFT; @@ -954,6 +1192,8 @@ void swiotlb_tbl_unmap_single(struct device *dev, phys_addr_t tlb_addr, size_t mapping_size, enum dma_data_direction dir, unsigned long attrs) { + struct io_tlb_pool *pool; + /* * First, sync the memory before unmapping the entry */ @@ -961,7 +1201,13 @@ void swiotlb_tbl_unmap_single(struct device *dev, phys_addr_t tlb_addr, (dir == DMA_FROM_DEVICE || dir == DMA_BIDIRECTIONAL)) swiotlb_bounce(dev, tlb_addr, mapping_size, DMA_FROM_DEVICE); - swiotlb_release_slots(dev, tlb_addr); + pool = swiotlb_find_pool(dev, tlb_addr); + if (pool->transient) { + dec_used(dev->dma_io_tlb_mem, pool->nslabs); + swiotlb_del_pool(dev, pool); + } else { + swiotlb_release_slots(dev, tlb_addr); + } } void swiotlb_sync_single_for_device(struct device *dev, phys_addr_t tlb_addr, @@ -1145,11 +1391,10 @@ struct page *swiotlb_alloc(struct device *dev, size_t size) if (!mem) return NULL; - index = swiotlb_find_slots(dev, 0, size, 0); + index = swiotlb_find_slots(dev, 0, size, 0, &pool); if (index == -1) return NULL; - pool = mem->pool; tlb_addr = slot_addr(pool->start, index); return pfn_to_page(PFN_DOWN(tlb_addr)); -- 2.25.1 From xen-devel-bounces@lists.xenproject.org Tue Jun 27 10:00:33 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 10:00:33 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555965.868190 (Exim 4.92) (envelope-from ) id 1qE5Uf-0001bf-Bs; Tue, 27 Jun 2023 10:00:17 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555965.868190; Tue, 27 Jun 2023 10:00:17 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE5Uf-0001ZO-5u; Tue, 27 Jun 2023 10:00:17 +0000 Received: by outflank-mailman (input) for mailman id 555965; Tue, 27 Jun 2023 09:56:51 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE5RL-00006u-LQ for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 09:56:51 +0000 Received: from frasgout11.his.huawei.com (unknown [14.137.139.23]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id eff8835f-14d0-11ee-b237-6b7b168915f2; Tue, 27 Jun 2023 11:56:50 +0200 (CEST) Received: from mail02.huawei.com (unknown [172.18.147.228]) by frasgout11.his.huawei.com (SkyGuard) with ESMTP id 4Qr0Fz12pjz9v7Hg for ; Tue, 27 Jun 2023 17:45:59 +0800 (CST) Received: from A2101119013HW2.china.huawei.com (unknown [10.45.153.185]) by APP1 (Coremail) with SMTP id LxC2BwBnwdzesZpknnvHAw--.39096S7; Tue, 27 Jun 2023 10:56:21 +0100 (CET) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: eff8835f-14d0-11ee-b237-6b7b168915f2 From: Petr Tesarik To: Stefano Stabellini , Thomas Bogendoerfer , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , x86@kernel.org (maintainer:X86 ARCHITECTURE (32-BIT AND 64-BIT)), "H. Peter Anvin" , Greg Kroah-Hartman , "Rafael J. Wysocki" , Juergen Gross , Oleksandr Tyshchenko , Christoph Hellwig , Marek Szyprowski , Robin Murphy , Andy Shevchenko , Hans de Goede , Jason Gunthorpe , Kees Cook , Saravana Kannan , xen-devel@lists.xenproject.org (moderated list:XEN HYPERVISOR ARM), linux-arm-kernel@lists.infradead.org (moderated list:ARM PORT), linux-kernel@vger.kernel.org (open list), linux-mips@vger.kernel.org (open list:MIPS), iommu@lists.linux.dev (open list:XEN SWIOTLB SUBSYSTEM) Cc: Roberto Sassu , Kefeng Wang , petr@tesarici.cz Subject: [PATCH v3 5/7] swiotlb: determine potential physical address limit Date: Tue, 27 Jun 2023 11:54:27 +0200 Message-Id: X-Mailer: git-send-email 2.25.1 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-CM-TRANSID:LxC2BwBnwdzesZpknnvHAw--.39096S7 X-Coremail-Antispam: 1UD129KBjvJXoWxXw4fJr1DCF4Dtr1kuF1DAwb_yoW5WF48pF y8Aa1rtFsFqF1xAryxC3W7AFn3Ka1kC3y7urWa9r15Ar13Gr1rKrsrKr4Yqr1FqF409F4I vFyFvayYvF4aqw7anT9S1TB71UUUUUUqnTZGkaVYY2UrUUUUjbIjqfuFe4nvWSU5nxnvy2 9KBjDU0xBIdaVrnRJUUUml14x267AKxVWrJVCq3wAFc2x0x2IEx4CE42xK8VAvwI8IcIk0 rVWrJVCq3wAFIxvE14AKwVWUJVWUGwA2048vs2IY020E87I2jVAFwI0_JF0E3s1l82xGYI kIc2x26xkF7I0E14v26ryj6s0DM28lY4IEw2IIxxk0rwA2F7IY1VAKz4vEj48ve4kI8wA2 z4x0Y4vE2Ix0cI8IcVAFwI0_JFI_Gr1l84ACjcxK6xIIjxv20xvEc7CjxVAFwI0_Gr1j6F 4UJwA2z4x0Y4vEx4A2jsIE14v26r4j6F4UM28EF7xvwVC2z280aVCY1x0267AKxVW8Jr0_ Cr1UM2AIxVAIcxkEcVAq07x20xvEncxIr21l5I8CrVACY4xI64kE6c02F40Ex7xfMcIj6x IIjxv20xvE14v26r1j6r18McIj6I8E87Iv67AKxVWUJVW8JwAm72CE4IkC6x0Yz7v_Jr0_ Gr1lF7xvr2IYc2Ij64vIr41lF7I21c0EjII2zVCS5cI20VAGYxC7M4IIrI8v6xkF7I0E8c xan2IY04v7MxkF7I0Ew4C26cxK6c8Ij28IcwCF04k20xvY0x0EwIxGrwCFx2IqxVCFs4IE 7xkEbVWUJVW8JwC20s026c02F40E14v26r1j6r18MI8I3I0E7480Y4vE14v26r106r1rMI 8E67AF67kF1VAFwI0_Wrv_Gr1UMIIYrxkI7VAKI48JMIIF0xvE2Ix0cI8IcVAFwI0_JFI_ Gr1lIxAIcVC0I7IYx2IY6xkF7I0E14v26r4UJVWxJr1lIxAIcVCF04k26cxKx2IYs7xG6r 1j6r1xMIIF0xvEx4A2jsIE14v26r4j6F4UMIIF0xvEx4A2jsIEc7CjxVAFwI0_Gr1j6F4U JbIYCTnIWIevJa73UjIFyTuYvjfU1WlkDUUUU X-CM-SenderInfo: hshw23xhvd2x3n6k3tpzhluzxrxghudrp/ X-CFilter-Loop: Reflected From: Petr Tesarik The value returned by default_swiotlb_limit() should not change, because it is used to decide whether DMA can be used. To allow allocating memory pools on the fly, use the maximum possible physical address rather than the highest address used by the default pool. For swiotlb_init_remap(), this is either an arch-specific limit used by memblock_alloc_low(), or the highest directly mapped physical address if the initialization flags include SWIOTLB_ANY. For swiotlb_init_late(), the highest address is determined by the GFP flags. Signed-off-by: Petr Tesarik --- include/linux/swiotlb.h | 2 ++ kernel/dma/swiotlb.c | 11 ++++++++++- 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/include/linux/swiotlb.h b/include/linux/swiotlb.h index ae1688438850..4a3af1c216d0 100644 --- a/include/linux/swiotlb.h +++ b/include/linux/swiotlb.h @@ -105,6 +105,7 @@ struct io_tlb_pool { * struct io_tlb_mem - Software IO TLB allocator * @pool: IO TLB memory pool descriptor. * @nslabs: Total number of IO TLB slabs in all pools. + * @phys_limit: Maximum allowed physical address. * @debugfs: The dentry to debugfs. * @force_bounce: %true if swiotlb bouncing is forced * @for_alloc: %true if the pool is used for memory allocation @@ -117,6 +118,7 @@ struct io_tlb_pool { struct io_tlb_mem { struct io_tlb_pool *pool; unsigned long nslabs; + u64 phys_limit; struct dentry *debugfs; bool force_bounce; bool for_alloc; diff --git a/kernel/dma/swiotlb.c b/kernel/dma/swiotlb.c index 06b4fa7c2e9b..5bb83097ade6 100644 --- a/kernel/dma/swiotlb.c +++ b/kernel/dma/swiotlb.c @@ -333,6 +333,9 @@ void __init swiotlb_init_remap(bool addressing_limit, unsigned int flags, io_tlb_default_mem.force_bounce = swiotlb_force_bounce || (flags & SWIOTLB_FORCE); + io_tlb_default_mem.phys_limit = flags & SWIOTLB_ANY + ? virt_to_phys(high_memory - 1) + : ARCH_LOW_ADDRESS_LIMIT; if (!default_nareas) swiotlb_adjust_nareas(num_possible_cpus()); @@ -400,6 +403,12 @@ int swiotlb_init_late(size_t size, gfp_t gfp_mask, return 0; io_tlb_default_mem.force_bounce = swiotlb_force_bounce; + io_tlb_default_mem.phys_limit = + IS_ENABLED(CONFIG_ZONE_DMA) && (gfp_mask & __GFP_DMA) + ? DMA_BIT_MASK(zone_dma_bits) + : (IS_ENABLED(CONFIG_ZONE_DMA32) && (gfp_mask & __GFP_DMA32) + ? DMA_BIT_MASK(32) + : virt_to_phys(high_memory - 1)); if (!default_nareas) swiotlb_adjust_nareas(num_possible_cpus()); @@ -1308,7 +1317,7 @@ phys_addr_t default_swiotlb_start(void) */ phys_addr_t default_swiotlb_limit(void) { - return io_tlb_default_pool.end - 1; + return io_tlb_default_mem.phys_limit; } #ifdef CONFIG_DEBUG_FS -- 2.25.1 From xen-devel-bounces@lists.xenproject.org Tue Jun 27 10:00:33 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 10:00:33 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555969.868208 (Exim 4.92) (envelope-from ) id 1qE5Ug-000230-DI; Tue, 27 Jun 2023 10:00:18 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555969.868208; Tue, 27 Jun 2023 10:00:18 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE5Ug-0001xm-3L; Tue, 27 Jun 2023 10:00:18 +0000 Received: by outflank-mailman (input) for mailman id 555969; Tue, 27 Jun 2023 09:57:23 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE5Rr-00008W-OU for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 09:57:23 +0000 Received: from frasgout11.his.huawei.com (unknown [14.137.139.23]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 02515b5f-14d1-11ee-8611-37d641c3527e; Tue, 27 Jun 2023 11:57:21 +0200 (CEST) Received: from mail02.huawei.com (unknown [172.18.147.228]) by frasgout11.his.huawei.com (SkyGuard) with ESMTP id 4Qr0Gb1LKNz9v7Hc for ; Tue, 27 Jun 2023 17:46:31 +0800 (CST) Received: from A2101119013HW2.china.huawei.com (unknown [10.45.153.185]) by APP1 (Coremail) with SMTP id LxC2BwBnwdzesZpknnvHAw--.39096S9; Tue, 27 Jun 2023 10:56:53 +0100 (CET) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 02515b5f-14d1-11ee-8611-37d641c3527e From: Petr Tesarik To: Stefano Stabellini , Thomas Bogendoerfer , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , x86@kernel.org (maintainer:X86 ARCHITECTURE (32-BIT AND 64-BIT)), "H. Peter Anvin" , Greg Kroah-Hartman , "Rafael J. Wysocki" , Juergen Gross , Oleksandr Tyshchenko , Christoph Hellwig , Marek Szyprowski , Robin Murphy , Andy Shevchenko , Hans de Goede , Jason Gunthorpe , Kees Cook , Saravana Kannan , xen-devel@lists.xenproject.org (moderated list:XEN HYPERVISOR ARM), linux-arm-kernel@lists.infradead.org (moderated list:ARM PORT), linux-kernel@vger.kernel.org (open list), linux-mips@vger.kernel.org (open list:MIPS), iommu@lists.linux.dev (open list:XEN SWIOTLB SUBSYSTEM) Cc: Roberto Sassu , Kefeng Wang , petr@tesarici.cz Subject: [PATCH v3 7/7] swiotlb: search the software IO TLB only if a device makes use of it Date: Tue, 27 Jun 2023 11:54:29 +0200 Message-Id: <34b9a218e9a152dd53eb0d4b0a819c6de987c8c1.1687859323.git.petr.tesarik.ext@huawei.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-CM-TRANSID:LxC2BwBnwdzesZpknnvHAw--.39096S9 X-Coremail-Antispam: 1UD129KBjvJXoWxZF15Ww18ZF1fWr1UtFW7XFb_yoWrXF1DpF 9xAFZ8KayDXr97Cr97CF4UZ3Wagw4vkw43CryagrnYkr1DJwnYqFyDKrWYv3s5Ar47ZFW7 Xryj939Ykw17Xr7anT9S1TB71UUUUUUqnTZGkaVYY2UrUUUUjbIjqfuFe4nvWSU5nxnvy2 9KBjDU0xBIdaVrnRJUUUml14x267AKxVWrJVCq3wAFc2x0x2IEx4CE42xK8VAvwI8IcIk0 rVWrJVCq3wAFIxvE14AKwVWUJVWUGwA2048vs2IY020E87I2jVAFwI0_JF0E3s1l82xGYI kIc2x26xkF7I0E14v26ryj6s0DM28lY4IEw2IIxxk0rwA2F7IY1VAKz4vEj48ve4kI8wA2 z4x0Y4vE2Ix0cI8IcVAFwI0_JFI_Gr1l84ACjcxK6xIIjxv20xvEc7CjxVAFwI0_Gr1j6F 4UJwA2z4x0Y4vEx4A2jsIE14v26r4j6F4UM28EF7xvwVC2z280aVCY1x0267AKxVW8Jr0_ Cr1UM2AIxVAIcxkEcVAq07x20xvEncxIr21l5I8CrVACY4xI64kE6c02F40Ex7xfMcIj6x IIjxv20xvE14v26r1j6r18McIj6I8E87Iv67AKxVWUJVW8JwAm72CE4IkC6x0Yz7v_Jr0_ Gr1lF7xvr2IYc2Ij64vIr41lF7I21c0EjII2zVCS5cI20VAGYxC7M4IIrI8v6xkF7I0E8c xan2IY04v7MxkF7I0Ew4C26cxK6c8Ij28IcwCF04k20xvY0x0EwIxGrwCFx2IqxVCFs4IE 7xkEbVWUJVW8JwC20s026c02F40E14v26r1j6r18MI8I3I0E7480Y4vE14v26r106r1rMI 8E67AF67kF1VAFwI0_Wrv_Gr1UMIIYrxkI7VAKI48JMIIF0xvE2Ix0cI8IcVAFwI0_JFI_ Gr1lIxAIcVC0I7IYx2IY6xkF7I0E14v26r4UJVWxJr1lIxAIcVCF04k26cxKx2IYs7xG6r 1j6r1xMIIF0xvEx4A2jsIE14v26r4j6F4UMIIF0xvEx4A2jsIEc7CjxVAFwI0_Gr1j6F4U JbIYCTnIWIevJa73UjIFyTuYvjfU1WlkDUUUU X-CM-SenderInfo: hshw23xhvd2x3n6k3tpzhluzxrxghudrp/ X-CFilter-Loop: Reflected From: Petr Tesarik Skip searching the software IO TLB if a device has never used it, making sure these devices are not affected by the introduction of multiple IO TLB memory pools. Additional memory barrier is required to ensure that the new value of the flag is visible to other CPUs after mapping a new bounce buffer. For efficiency, the flag check should be inlined, and then the memory barrier must be moved to is_swiotlb_buffer(). However, it can replace the existing barrier in swiotlb_find_pool(), because all callers use is_swiotlb_buffer() first to verify that the buffer address belongs to the software IO TLB. Signed-off-by: Petr Tesarik --- include/linux/device.h | 2 ++ include/linux/swiotlb.h | 6 +++++- kernel/dma/swiotlb.c | 14 ++++++-------- 3 files changed, 13 insertions(+), 9 deletions(-) diff --git a/include/linux/device.h b/include/linux/device.h index a1ee4c5924b8..d4b35925a6d1 100644 --- a/include/linux/device.h +++ b/include/linux/device.h @@ -512,6 +512,7 @@ struct device_physical_location { * @dma_io_tlb_mem: Software IO TLB allocator. Not for driver use. * @dma_io_tlb_pools: List of transient swiotlb memory pools. * @dma_io_tlb_lock: Protects changes to the list of active pools. + * @dma_uses_io_tlb: %true if device has used the software IO TLB. * @archdata: For arch-specific additions. * @of_node: Associated device tree node. * @fwnode: Associated device node supplied by platform firmware. @@ -619,6 +620,7 @@ struct device { struct io_tlb_mem *dma_io_tlb_mem; struct list_head dma_io_tlb_pools; spinlock_t dma_io_tlb_lock; + bool dma_uses_io_tlb; #endif /* arch specific additions */ struct dev_archdata archdata; diff --git a/include/linux/swiotlb.h b/include/linux/swiotlb.h index ae402890ba41..eb30b5c624f1 100644 --- a/include/linux/swiotlb.h +++ b/include/linux/swiotlb.h @@ -148,7 +148,11 @@ struct io_tlb_pool *swiotlb_find_pool(struct device *dev, phys_addr_t paddr); */ static inline bool is_swiotlb_buffer(struct device *dev, phys_addr_t paddr) { - return dev->dma_io_tlb_mem && + /* Pairs with smp_wmb() in swiotlb_find_slots() and + * swiotlb_dyn_alloc(), which modify the RCU lists. + */ + smp_rmb(); + return dev->dma_uses_io_tlb && !!swiotlb_find_pool(dev, paddr); } diff --git a/kernel/dma/swiotlb.c b/kernel/dma/swiotlb.c index 7661a6402e80..26ab9ed2921b 100644 --- a/kernel/dma/swiotlb.c +++ b/kernel/dma/swiotlb.c @@ -701,7 +701,7 @@ static void swiotlb_dyn_alloc(struct work_struct *work) add_mem_pool(mem, pool); - /* Pairs with smp_rmb() in swiotlb_find_pool(). */ + /* Pairs with smp_rmb() in is_swiotlb_buffer(). */ smp_wmb(); } @@ -729,6 +729,7 @@ void swiotlb_dev_init(struct device *dev) dev->dma_io_tlb_mem = &io_tlb_default_mem; INIT_LIST_HEAD(&dev->dma_io_tlb_pools); spin_lock_init(&dev->dma_io_tlb_lock); + dev->dma_uses_io_tlb = false; } /** @@ -746,11 +747,6 @@ struct io_tlb_pool *swiotlb_find_pool(struct device *dev, phys_addr_t paddr) struct io_tlb_mem *mem = dev->dma_io_tlb_mem; struct io_tlb_pool *pool; - /* Pairs with smp_wmb() in swiotlb_find_slots() and - * swiotlb_dyn_alloc(), which modify the RCU lists. - */ - smp_rmb(); - rcu_read_lock(); list_for_each_entry_rcu(pool, &mem->pools, node) { if (paddr >= pool->start && paddr < pool->end) @@ -1125,9 +1121,11 @@ static int swiotlb_find_slots(struct device *dev, phys_addr_t orig_addr, list_add_rcu(&pool->node, &dev->dma_io_tlb_pools); spin_unlock_irqrestore(&dev->dma_io_tlb_lock, flags); - /* Pairs with smp_rmb() in swiotlb_find_pool(). */ - smp_wmb(); found: + dev->dma_uses_io_tlb = true; + /* Pairs with smp_rmb() in is_swiotlb_buffer() */ + smp_wmb(); + *retpool = pool; return index; } -- 2.25.1 From xen-devel-bounces@lists.xenproject.org Tue Jun 27 10:00:33 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 10:00:33 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555955.868161 (Exim 4.92) (envelope-from ) id 1qE5Ud-00016w-Rg; Tue, 27 Jun 2023 10:00:15 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555955.868161; Tue, 27 Jun 2023 10:00:15 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE5Ud-00016p-O8; Tue, 27 Jun 2023 10:00:15 +0000 Received: by outflank-mailman (input) for mailman id 555955; Tue, 27 Jun 2023 09:55:35 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE5Q7-0008Sr-Rj for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 09:55:35 +0000 Received: from frasgout11.his.huawei.com (unknown [14.137.139.23]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id c02b6ce2-14d0-11ee-8611-37d641c3527e; Tue, 27 Jun 2023 11:55:31 +0200 (CEST) Received: from mail02.huawei.com (unknown [172.18.147.227]) by frasgout11.his.huawei.com (SkyGuard) with ESMTP id 4Qr0DQ65dFz9v7Gq for ; Tue, 27 Jun 2023 17:44:38 +0800 (CST) Received: from A2101119013HW2.china.huawei.com (unknown [10.45.153.185]) by APP1 (Coremail) with SMTP id LxC2BwBnwdzesZpknnvHAw--.39096S2; Tue, 27 Jun 2023 10:54:59 +0100 (CET) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: c02b6ce2-14d0-11ee-8611-37d641c3527e From: Petr Tesarik To: Stefano Stabellini , Thomas Bogendoerfer , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , x86@kernel.org (maintainer:X86 ARCHITECTURE (32-BIT AND 64-BIT)), "H. Peter Anvin" , Greg Kroah-Hartman , "Rafael J. Wysocki" , Juergen Gross , Oleksandr Tyshchenko , Christoph Hellwig , Marek Szyprowski , Robin Murphy , Andy Shevchenko , Hans de Goede , Jason Gunthorpe , Kees Cook , Saravana Kannan , xen-devel@lists.xenproject.org (moderated list:XEN HYPERVISOR ARM), linux-arm-kernel@lists.infradead.org (moderated list:ARM PORT), linux-kernel@vger.kernel.org (open list), linux-mips@vger.kernel.org (open list:MIPS), iommu@lists.linux.dev (open list:XEN SWIOTLB SUBSYSTEM) Cc: Roberto Sassu , Kefeng Wang , petr@tesarici.cz Subject: [PATCH v3 0/7] Allow dynamic allocation of software IO TLB bounce buffers Date: Tue, 27 Jun 2023 11:54:22 +0200 Message-Id: X-Mailer: git-send-email 2.25.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-CM-TRANSID:LxC2BwBnwdzesZpknnvHAw--.39096S2 X-Coremail-Antispam: 1UD129KBjvJXoW3Xr1DZF1kWr45Zr1DCr18uFg_yoWfWrWkpF WrK34xtF4qqryfAwn7Ca1UGryrK3WkCry5G3yFvryrur13Cw1j93Z7tayrXFyUGrW0vF1j qFyjvw17uw1DX3DanT9S1TB71UUUUUUqnTZGkaVYY2UrUUUUjbIjqfuFe4nvWSU5nxnvy2 9KBjDU0xBIdaVrnRJUUU9S14x267AKxVWrJVCq3wAFc2x0x2IEx4CE42xK8VAvwI8IcIk0 rVWrJVCq3wAFIxvE14AKwVWUJVWUGwA2ocxC64kIII0Yj41l84x0c7CEw4AK67xGY2AK02 1l84ACjcxK6xIIjxv20xvE14v26r1j6r1xM28EF7xvwVC0I7IYx2IY6xkF7I0E14v26r4j 6F4UM28EF7xvwVC2z280aVAFwI0_Gr0_Cr1l84ACjcxK6I8E87Iv6xkF7I0E14v26r4UJV WxJr1le2I262IYc4CY6c8Ij28IcVAaY2xG8wAqx4xG64xvF2IEw4CE5I8CrVC2j2WlYx0E 2Ix0cI8IcVAFwI0_Jr0_Jr4lYx0Ex4A2jsIE14v26r1j6r4UMcvjeVCFs4IE7xkEbVWUJV W8JwACjcxG0xvY0x0EwIxGrwACjI8F5VA0II8E6IAqYI8I648v4I1lFIxGxcIEc7CjxVA2 Y2ka0xkIwI1lc7CjxVAKzI0EY4vE52x082I5MxAIw28IcxkI7VAKI48JMxC20s026xCaFV Cjc4AY6r1j6r4UMI8I3I0E5I8CrVAFwI0_Jr0_Jr4lx2IqxVCjr7xvwVAFwI0_JrI_JrWl x4CE17CEb7AF67AKxVWrXVW8Jr1lIxkGc2Ij64vIr41lIxAIcVC0I7IYx2IY67AKxVWUJV WUCwCI42IY6xIIjxv20xvEc7CjxVAFwI0_Gr0_Cr1lIxAIcVCF04k26cxKx2IYs7xG6rW3 Jr0E3s1lIxAIcVC2z280aVAFwI0_Jr0_Gr1lIxAIcVC2z280aVCY1x0267AKxVW8Jr0_Cr 1UYxBIdaVFxhVjvjDU0xZFpf9x0JU7CzZUUUUU= X-CM-SenderInfo: hshw23xhvd2x3n6k3tpzhluzxrxghudrp/ X-CFilter-Loop: Reflected From: Petr Tesarik Note: This patch series depends on fixes from this thread: https://lore.kernel.org/linux-iommu/cover.1687784289.git.petr.tesarik.ext@huawei.com/T/ Motivation ========== The software IO TLB was designed with these assumptions: 1) It would not be used much. Small systems (little RAM) don't need it, and big systems (lots of RAM) would have modern DMA controllers and an IOMMU chip to handle legacy devices. 2) A small fixed memory area (64 MiB by default) is sufficient to handle the few cases which require a bounce buffer. 3) 64 MiB is little enough that it has no impact on the rest of the system. 4) Bounce buffers require large contiguous chunks of low memory. Such memory is precious and can be allocated only early at boot. It turns out they are not always true: 1) Embedded systems may have more than 4GiB RAM but no IOMMU and legacy 32-bit peripheral busses and/or DMA controllers. 2) CoCo VMs use bounce buffers for all I/O but may need substantially more than 64 MiB. 3) Embedded developers put as many features as possible into the available memory. A few dozen "missing" megabytes may limit what features can be implemented. 4) If CMA is available, it can allocate large continuous chunks even after the system has run for some time. Goals ===== The goal of this work is to start with a small software IO TLB at boot and expand it later when/if needed. Design ====== This version of the patch series retains the current slot allocation algorithm with multiple areas to reduce lock contention, but additional slots can be added when necessary. These alternatives have been considered: - Allocate and free buffers as needed using direct DMA API. This works quite well, except in CoCo VMs where each allocation/free requires decrypting/encrypting memory, which is a very expensive operation. - Allocate a very large software IO TLB at boot, but allow to migrate pages to/from it (like CMA does). For systems with CMA, this would mean two big allocations at boot. Finding the balance between CMA, SWIOTLB and rest of available RAM can be challenging. More importantly, there is no clear benefit compared to allocating SWIOTLB memory pools from the CMA. Implementation Constraints ========================== These constraints have been taken into account: 1) Minimize impact on devices which do not benefit from the change. 2) Minimize the number of memory decryption/encryption operations. 3) Avoid contention on a lock or atomic variable to preserve parallel scalability. Additionally, the software IO TLB code is also used to implement restricted DMA pools. These pools are restricted to a pre-defined physical memory region and must not use any other memory. In other words, dynamic allocation of memory pools must be disabled for restricted DMA pools. Data Structures =============== The existing struct io_tlb_mem is the central type for a SWIOTLB allocator, but it now contains multiple memory pools:: io_tlb_mem +---------+ io_tlb_pool | SWIOTLB | +-------+ +-------+ +-------+ |allocator|-->|default|-->|dynamic|-->|dynamic|-->... | | |memory | |memory | |memory | +---------+ | pool | | pool | | pool | +-------+ +-------+ +-------+ The allocator structure contains global state (such as flags and counters) and structures needed to schedule new allocations. Each memory pool contains the actual buffer slots and metadata. The first memory pool in the list is the default memory pool allocated statically at early boot. New memory pools are allocated from a kernel worker thread. That's because bounce buffers are allocated when mapping a DMA buffer, which may happen in interrupt context where large atomic allocations would probably fail. Allocation from process context is much more likely to succeed, especially if it can use CMA. Nonetheless, the onset of a load spike may fill up the SWIOTLB before the worker has a chance to run. In that case, try to allocate a small transient memory pool to accommodate the request. If memory is encrypted and the device cannot do DMA to encrypted memory, this buffer is allocated from the coherent atomic DMA memory pool. Reducing the size of SWIOTLB may therefore require increasing the size of the coherent pool with the "coherent_pool" command-line parameter. Performance =========== All testing compared a vanilla v6.4-rc6 kernel with a fully patched kernel. The kernel was booted with "swiotlb=force" to allow stress-testing the software IO TLB on a high-performance device that would otherwise not need it. CONFIG_DEBUG_FS was set to 'y' to match the configuration of popular distribution kernels; it is understood that parallel workloads suffer from contention on the recently added debugfs atomic counters. These benchmarks were run: - small: single-threaded I/O of 4 KiB blocks, - big: single-threaded I/O of 64 KiB blocks, - 4way: 4-way parallel I/O of 4 KiB blocks. In all tested cases, the default 64 MiB SWIOTLB would be sufficient (but wasteful). The "default" pair of columns shows performance impact when booted with 64 MiB SWIOTLB (i.e. current state). The "growing" pair of columns shows the impact when booted with a 1 MiB initial SWIOTLB, which grew to 5 MiB at run time. The "var" column in the tables below is the coefficient of variance over 5 runs of the test, the "diff" column is the difference in read-write I/O bandwidth (MiB/s). The very first column is the coefficient of variance in the results of the base unpatched kernel. First, on an x86 VM against a QEMU virtio SATA driver backed by a RAM-based block device on the host: base default growing var var diff var diff small 1.96% 0.47% -1.5% 0.52% -2.2% big 2.03% 1.35% +0.9% 2.22% +2.9% 4way 0.80% 0.45% -0.7% 1.22% <0.1% Second, on a Raspberry Pi4 with 8G RAM and a class 10 A1 microSD card: base default growing var var diff var diff small 1.09% 1.69% +0.5% 2.14% -0.2% big 0.03% 0.28% -0.5% 0.03% -0.1% 4way 5.15% 2.39% +0.2% 0.66% <0.1% Third, on a CoCo VM. This was a bigger system, so I also added a 24-thread parallel I/O test: base default growing var var diff var diff small 2.41% 6.02% +1.1% 10.33% +6.7% big 9.20% 2.81% -0.6% 16.84% -0.2% 4way 0.86% 2.66% -0.1% 2.22% -4.9% 24way 3.19% 6.19% +4.4% 4.08% -5.9% Note the increased variance of the CoCo VM, although the host was not otherwise loaded. These are caused by the first run, which includes the overhead of allocating additional bounce buffers and sharing them with the hypervisor. The system was not rebooted between successive runs. Parallel tests suffer from a reduced number of areas in the dynamically allocated memory pools. This can be improved by allocating a larger pool from CMA (not implemented in this series yet). I have no good explanation for the increase in performance of the 24-thread I/O test with the default (non-growing) memory pool. Although the difference is within variance, it seems to be real. The average bandwidth is consistently above that of the unpatched kernel. To sum it up: - All workloads benefit from reduced memory footprint. - No performance regressions have been observed with the default size of the software IO TLB. - Most workloads retain their former performance even if the software IO TLB grows at run time. Changelog ========= Changes from v2: - Complete rewrite using dynamically allocated memory pools rather than a list of individual buffers - Depend on other SWIOTLB fixes (already sent) - Fix Xen and MIPS Octeon builds Changes from RFC: - Track dynamic buffers per device instead of per swiotlb - Use a linked list instead of a maple tree - Move initialization of swiotlb fields of struct device to a helper function - Rename __lookup_dyn_slot() to lookup_dyn_slot_locked() - Introduce per-device flag if dynamic buffers are in use - Add one more user of DMA_ATTR_MAY_SLEEP - Add kernel-doc comments for new (and some old) code - Properly escape '*' in dma-attributes.rst Petr Tesarik (7): swiotlb: make io_tlb_default_mem local to swiotlb.c swiotlb: add documentation and rename swiotlb_do_find_slots() swiotlb: separate memory pool data from other allocator data swiotlb: if swiotlb is full, fall back to a transient memory pool swiotlb: determine potential physical address limit swiotlb: allocate a new memory pool when existing pools are full swiotlb: search the software IO TLB only if a device makes use of it arch/arm/xen/mm.c | 2 +- arch/mips/pci/pci-octeon.c | 2 +- arch/x86/kernel/pci-dma.c | 2 +- drivers/base/core.c | 4 +- drivers/xen/swiotlb-xen.c | 2 +- include/linux/device.h | 8 +- include/linux/dma-mapping.h | 2 + include/linux/swiotlb.h | 103 +++++-- kernel/dma/direct.c | 2 +- kernel/dma/swiotlb.c | 591 ++++++++++++++++++++++++++++++++---- 10 files changed, 618 insertions(+), 100 deletions(-) -- 2.25.1 From xen-devel-bounces@lists.xenproject.org Tue Jun 27 10:00:34 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 10:00:34 +0000 Received: from list by lists.xenproject.org with outflank-mailman.555967.868200 (Exim 4.92) (envelope-from ) id 1qE5Uf-0001nI-Qh; Tue, 27 Jun 2023 10:00:17 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 555967.868200; Tue, 27 Jun 2023 10:00:17 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE5Uf-0001kT-IZ; Tue, 27 Jun 2023 10:00:17 +0000 Received: by outflank-mailman (input) for mailman id 555967; Tue, 27 Jun 2023 09:57:05 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE5RZ-00006u-Ni for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 09:57:05 +0000 Received: from frasgout12.his.huawei.com (unknown [14.137.139.154]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id f86ccd42-14d0-11ee-b237-6b7b168915f2; Tue, 27 Jun 2023 11:57:05 +0200 (CEST) Received: from mail02.huawei.com (unknown [172.18.147.228]) by frasgout12.his.huawei.com (SkyGuard) with ESMTP id 4Qr0DP4p2Sz9v7cZ for ; Tue, 27 Jun 2023 17:44:37 +0800 (CST) Received: from A2101119013HW2.china.huawei.com (unknown [10.45.153.185]) by APP1 (Coremail) with SMTP id LxC2BwBnwdzesZpknnvHAw--.39096S8; Tue, 27 Jun 2023 10:56:37 +0100 (CET) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: f86ccd42-14d0-11ee-b237-6b7b168915f2 From: Petr Tesarik To: Stefano Stabellini , Thomas Bogendoerfer , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , x86@kernel.org (maintainer:X86 ARCHITECTURE (32-BIT AND 64-BIT)), "H. Peter Anvin" , Greg Kroah-Hartman , "Rafael J. Wysocki" , Juergen Gross , Oleksandr Tyshchenko , Christoph Hellwig , Marek Szyprowski , Robin Murphy , Andy Shevchenko , Hans de Goede , Jason Gunthorpe , Kees Cook , Saravana Kannan , xen-devel@lists.xenproject.org (moderated list:XEN HYPERVISOR ARM), linux-arm-kernel@lists.infradead.org (moderated list:ARM PORT), linux-kernel@vger.kernel.org (open list), linux-mips@vger.kernel.org (open list:MIPS), iommu@lists.linux.dev (open list:XEN SWIOTLB SUBSYSTEM) Cc: Roberto Sassu , Kefeng Wang , petr@tesarici.cz Subject: [PATCH v3 6/7] swiotlb: allocate a new memory pool when existing pools are full Date: Tue, 27 Jun 2023 11:54:28 +0200 Message-Id: <3d51c5c0f59d74e2f79b4ce06f7e00b8c09f6b3a.1687859323.git.petr.tesarik.ext@huawei.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-CM-TRANSID:LxC2BwBnwdzesZpknnvHAw--.39096S8 X-Coremail-Antispam: 1UD129KBjvJXoW3ZrWfGFyxAryxCr4UJFWfAFb_yoWkXF13pF y5Aa43KFWUXrnrCFy7C3WUAF1akw4vkr47Cryavr1rZrn7Wr95tFyvk3yYqrWrJFWkuF13 tFWFvF4ruw47Zr7anT9S1TB71UUUUUUqnTZGkaVYY2UrUUUUjbIjqfuFe4nvWSU5nxnvy2 9KBjDU0xBIdaVrnRJUUUml14x267AKxVWrJVCq3wAFc2x0x2IEx4CE42xK8VAvwI8IcIk0 rVWrJVCq3wAFIxvE14AKwVWUJVWUGwA2048vs2IY020E87I2jVAFwI0_JF0E3s1l82xGYI kIc2x26xkF7I0E14v26ryj6s0DM28lY4IEw2IIxxk0rwA2F7IY1VAKz4vEj48ve4kI8wA2 z4x0Y4vE2Ix0cI8IcVAFwI0_JFI_Gr1l84ACjcxK6xIIjxv20xvEc7CjxVAFwI0_Gr1j6F 4UJwA2z4x0Y4vEx4A2jsIE14v26r4j6F4UM28EF7xvwVC2z280aVCY1x0267AKxVW8Jr0_ Cr1UM2AIxVAIcxkEcVAq07x20xvEncxIr21l5I8CrVACY4xI64kE6c02F40Ex7xfMcIj6x IIjxv20xvE14v26r1j6r18McIj6I8E87Iv67AKxVWUJVW8JwAm72CE4IkC6x0Yz7v_Jr0_ Gr1lF7xvr2IYc2Ij64vIr41lF7I21c0EjII2zVCS5cI20VAGYxC7M4IIrI8v6xkF7I0E8c xan2IY04v7MxkF7I0Ew4C26cxK6c8Ij28IcwCF04k20xvY0x0EwIxGrwCFx2IqxVCFs4IE 7xkEbVWUJVW8JwC20s026c02F40E14v26r1j6r18MI8I3I0E7480Y4vE14v26r106r1rMI 8E67AF67kF1VAFwI0_Wrv_Gr1UMIIYrxkI7VAKI48JMIIF0xvE2Ix0cI8IcVAFwI0_JFI_ Gr1lIxAIcVC0I7IYx2IY6xkF7I0E14v26r4UJVWxJr1lIxAIcVCF04k26cxKx2IYs7xG6r 1j6r1xMIIF0xvEx4A2jsIE14v26r4j6F4UMIIF0xvEx4A2jsIEc7CjxVAFwI0_Gr1j6F4U JbIYCTnIWIevJa73UjIFyTuYvjfU1WlkDUUUU X-CM-SenderInfo: hshw23xhvd2x3n6k3tpzhluzxrxghudrp/ X-CFilter-Loop: Reflected From: Petr Tesarik When swiotlb_find_slots() cannot find suitable slots, schedule the allocation of a new memory pool. It is not possible to allocate the pool immediately, because this code may run in interrupt context, which is not suitable for large memory allocations. This means that the memory pool will be available too late for the currently requested mapping, but the stress on the software IO TLB allocator is likely to continue, and subsequent allocations will benefit from the additional pool eventually. Keep all memory pools for an allocator in an RCU list to avoid locking on the read side. For modifications, add a new spinlock to struct io_tlb_mem. The spinlock also protects updates to the total number of slabs (nslabs in struct io_tlb_mem), but not reads of the value. Readers may therefore encounter a stale value, but this is not an issue: - swiotlb_tbl_map_single() and is_swiotlb_active() only check for non-zero value. This is ensured by the existence of the default memory pool, allocated at boot. - The exact value is used only for non-critical purposes (debugfs, kernel messages). Signed-off-by: Petr Tesarik --- include/linux/swiotlb.h | 9 ++- kernel/dma/swiotlb.c | 141 +++++++++++++++++++++++++++++++--------- 2 files changed, 119 insertions(+), 31 deletions(-) diff --git a/include/linux/swiotlb.h b/include/linux/swiotlb.h index 4a3af1c216d0..ae402890ba41 100644 --- a/include/linux/swiotlb.h +++ b/include/linux/swiotlb.h @@ -8,6 +8,7 @@ #include #include #include +#include struct device; struct page; @@ -103,12 +104,14 @@ struct io_tlb_pool { /** * struct io_tlb_mem - Software IO TLB allocator - * @pool: IO TLB memory pool descriptor. + * @lock: Lock to synchronize changes to the list. + * @pools: List of IO TLB memory pool descriptors. * @nslabs: Total number of IO TLB slabs in all pools. * @phys_limit: Maximum allowed physical address. * @debugfs: The dentry to debugfs. * @force_bounce: %true if swiotlb bouncing is forced * @for_alloc: %true if the pool is used for memory allocation + * @dyn_alloc: Dynamic IO TLB pool allocation work. * @total_used: The total number of slots in the pool that are currently used * across all areas. Used only for calculating used_hiwater in * debugfs. @@ -116,12 +119,14 @@ struct io_tlb_pool { * in debugfs. */ struct io_tlb_mem { - struct io_tlb_pool *pool; + spinlock_t lock; + struct list_head pools; unsigned long nslabs; u64 phys_limit; struct dentry *debugfs; bool force_bounce; bool for_alloc; + struct work_struct dyn_alloc; #ifdef CONFIG_DEBUG_FS atomic_long_t total_used; atomic_long_t used_hiwater; diff --git a/kernel/dma/swiotlb.c b/kernel/dma/swiotlb.c index 5bb83097ade6..7661a6402e80 100644 --- a/kernel/dma/swiotlb.c +++ b/kernel/dma/swiotlb.c @@ -79,9 +79,14 @@ struct io_tlb_slot { static bool swiotlb_force_bounce; static bool swiotlb_force_disable; +static void swiotlb_dyn_alloc(struct work_struct *work); + static struct io_tlb_pool io_tlb_default_pool; -static struct io_tlb_mem io_tlb_default_mem = { - .pool = &io_tlb_default_pool, +struct io_tlb_mem io_tlb_default_mem = { + .lock = __SPIN_LOCK_UNLOCKED(io_tlb_default_mem.lock), + .pools = LIST_HEAD_INIT(io_tlb_default_mem.pools), + .dyn_alloc = __WORK_INITIALIZER(io_tlb_default_mem.dyn_alloc, + swiotlb_dyn_alloc), }; static unsigned long default_nslabs = IO_TLB_DEFAULT_SIZE >> IO_TLB_SHIFT; @@ -281,6 +286,19 @@ static void swiotlb_init_io_tlb_pool(struct io_tlb_pool *mem, phys_addr_t start, return; } +/** + * add_mem_pool() - add a memory pool to the allocator + * @mem: Software IO TLB allocator. + * @pool: Memory pool to be added. + */ +static void add_mem_pool(struct io_tlb_mem *mem, struct io_tlb_pool *pool) +{ + spin_lock(&mem->lock); + list_add_rcu(&pool->node, &mem->pools); + mem->nslabs += pool->nslabs; + spin_unlock(&mem->lock); +} + static void __init *swiotlb_memblock_alloc(unsigned long nslabs, unsigned int flags, int (*remap)(void *tlb, unsigned long nslabs)) @@ -372,7 +390,7 @@ void __init swiotlb_init_remap(bool addressing_limit, unsigned int flags, swiotlb_init_io_tlb_pool(mem, __pa(tlb), nslabs, false, default_nareas); - io_tlb_default_mem.nslabs = nslabs; + add_mem_pool(&io_tlb_default_mem, mem); if (flags & SWIOTLB_VERBOSE) swiotlb_print_info(); @@ -463,7 +481,7 @@ int swiotlb_init_late(size_t size, gfp_t gfp_mask, (nslabs << IO_TLB_SHIFT) >> PAGE_SHIFT); swiotlb_init_io_tlb_pool(mem, virt_to_phys(vstart), nslabs, true, nareas); - io_tlb_default_mem.nslabs = nslabs; + add_mem_pool(&io_tlb_default_mem, mem); swiotlb_print_info(); return 0; @@ -610,44 +628,83 @@ static void swiotlb_free_tlb(void *vaddr, size_t bytes) /** * swiotlb_alloc_pool() - allocate a new IO TLB memory pool * @dev: Device for which a memory pool is allocated. - * @nslabs: Desired number of slabs. + * @minslabs: Minimum number of slabs. + * @nslabs: Desired (maximum) number of slabs. + * @nareas: Number of areas. * @phys_limit: Maximum DMA buffer physical address. * @gfp: GFP flags for the allocations. * - * Allocate and initialize a new IO TLB memory pool. + * Allocate and initialize a new IO TLB memory pool. The actual number of + * slabs may be reduced if allocation of @nslabs fails. If even + * @minslabs cannot be allocated, this function fails. * * Return: New memory pool, or %NULL on allocation failure. */ static struct io_tlb_pool *swiotlb_alloc_pool(struct device *dev, - unsigned int nslabs, u64 phys_limit, gfp_t gfp) + unsigned long minslabs, unsigned long nslabs, + unsigned int nareas, u64 phys_limit, gfp_t gfp) { struct io_tlb_pool *pool; + unsigned int slot_order; struct page *tlb; size_t pool_size; size_t tlb_size; - pool_size = sizeof(*pool) + array_size(sizeof(*pool->areas), 1) + - array_size(sizeof(*pool->slots), nslabs); + pool_size = sizeof(*pool) + array_size(sizeof(*pool->areas), nareas); pool = kzalloc(pool_size, gfp); if (!pool) goto error; pool->areas = (void *)pool + sizeof(*pool); - pool->slots = (void *)pool->areas + sizeof(*pool->areas); tlb_size = nslabs << IO_TLB_SHIFT; - tlb = swiotlb_alloc_tlb(dev, tlb_size, phys_limit, gfp); - if (!tlb) - goto error_tlb; + while (!(tlb = swiotlb_alloc_tlb(dev, tlb_size, phys_limit, gfp))) { + if (nslabs <= minslabs) + goto error_tlb; + nslabs = ALIGN(nslabs >> 1, IO_TLB_SEGSIZE); + nareas = limit_nareas(nareas, nslabs); + tlb_size = nslabs << IO_TLB_SHIFT; + } - swiotlb_init_io_tlb_pool(pool, page_to_phys(tlb), nslabs, true, 1); + slot_order = get_order(array_size(sizeof(*pool->slots), nslabs)); + pool->slots = (struct io_tlb_slot *) + __get_free_pages(gfp, slot_order); + if (!pool->slots) + goto error_slots; + + swiotlb_init_io_tlb_pool(pool, page_to_phys(tlb), nslabs, true, nareas); return pool; +error_slots: + swiotlb_free_tlb(page_address(tlb), tlb_size); error_tlb: kfree(pool); error: return NULL; } +/** + * swiotlb_dyn_alloc() - dynamic memory pool allocation worker + * @work: Pointer to dyn_alloc in struct io_tlb_mem. + */ +static void swiotlb_dyn_alloc(struct work_struct *work) +{ + struct io_tlb_mem *mem = + container_of(work, struct io_tlb_mem, dyn_alloc); + struct io_tlb_pool *pool; + + pool = swiotlb_alloc_pool(NULL, IO_TLB_MIN_SLABS, default_nslabs, + default_nareas, mem->phys_limit, GFP_KERNEL); + if (!pool) { + pr_warn_ratelimited("Failed to allocate new pool"); + return; + } + + add_mem_pool(mem, pool); + + /* Pairs with smp_rmb() in swiotlb_find_pool(). */ + smp_wmb(); +} + /** * swiotlb_dyn_free() - RCU callback to free a memory pool * @rcu: RCU head in the corresponding struct io_tlb_pool. @@ -655,8 +712,10 @@ static struct io_tlb_pool *swiotlb_alloc_pool(struct device *dev, static void swiotlb_dyn_free(struct rcu_head *rcu) { struct io_tlb_pool *pool = container_of(rcu, struct io_tlb_pool, rcu); + size_t slots_size = array_size(sizeof(*pool->slots), pool->nslabs); size_t tlb_size = pool->end - pool->start; + free_pages((unsigned long)pool->slots, get_order(slots_size)); swiotlb_free_tlb(pool->vaddr, tlb_size); kfree(pool); } @@ -685,15 +744,19 @@ void swiotlb_dev_init(struct device *dev) struct io_tlb_pool *swiotlb_find_pool(struct device *dev, phys_addr_t paddr) { struct io_tlb_mem *mem = dev->dma_io_tlb_mem; - struct io_tlb_pool *pool = mem->pool; - - if (paddr >= pool->start && paddr < pool->end) - return pool; + struct io_tlb_pool *pool; - /* Pairs with smp_wmb() in swiotlb_find_slots(). */ + /* Pairs with smp_wmb() in swiotlb_find_slots() and + * swiotlb_dyn_alloc(), which modify the RCU lists. + */ smp_rmb(); rcu_read_lock(); + list_for_each_entry_rcu(pool, &mem->pools, node) { + if (paddr >= pool->start && paddr < pool->end) + goto out; + } + list_for_each_entry_rcu(pool, &dev->dma_io_tlb_pools, node) { if (paddr >= pool->start && paddr < pool->end) goto out; @@ -1019,22 +1082,34 @@ static int swiotlb_find_slots(struct device *dev, phys_addr_t orig_addr, struct io_tlb_pool **retpool) { struct io_tlb_pool *pool; + struct io_tlb_mem *mem; + unsigned long nslabs; unsigned long flags; u64 phys_limit; int index; - pool = dev->dma_io_tlb_mem->pool; - index = pool_find_slots(dev, pool, orig_addr, - alloc_size, alloc_align_mask); - if (index >= 0) - goto found; + mem = dev->dma_io_tlb_mem; + + rcu_read_lock(); + list_for_each_entry_rcu(pool, &mem->pools, node) { + index = pool_find_slots(dev, pool, orig_addr, + alloc_size, alloc_align_mask); + if (index >= 0) { + rcu_read_unlock(); + goto found; + } + } + rcu_read_unlock(); if (dev->dma_io_tlb_mem->for_alloc) return -1; + schedule_work(&mem->dyn_alloc); + phys_limit = min_not_zero(dev->coherent_dma_mask, dev->bus_dma_limit); - pool = swiotlb_alloc_pool(dev, nr_slots(alloc_size), phys_limit, - GFP_NOWAIT | __GFP_NOWARN); + nslabs = nr_slots(alloc_size); + pool = swiotlb_alloc_pool(dev, nslabs, nslabs, 1, phys_limit, + GFP_NOWAIT | __GFP_NOWARN); if (!pool) return -1; @@ -1086,7 +1161,15 @@ static unsigned long mem_pool_used(struct io_tlb_pool *pool) */ static unsigned long mem_used(struct io_tlb_mem *mem) { - return mem_pool_used(mem->pool); + struct io_tlb_pool *pool; + unsigned long used = 0; + + rcu_read_lock(); + list_for_each_entry_rcu(pool, &mem->pools, node) + used += mem_pool_used(pool); + rcu_read_unlock(); + + return used; } phys_addr_t swiotlb_tbl_map_single(struct device *dev, phys_addr_t orig_addr, @@ -1468,8 +1551,8 @@ static int rmem_swiotlb_device_init(struct reserved_mem *rmem, false, nareas); mem->force_bounce = true; mem->for_alloc = true; - mem->pool = pool; - mem->nslabs = nslabs; + spin_lock_init(&mem->lock); + add_mem_pool(mem, pool); rmem->priv = mem; -- 2.25.1 From xen-devel-bounces@lists.xenproject.org Tue Jun 27 10:21:33 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 10:21:33 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556017.868241 (Exim 4.92) (envelope-from ) id 1qE5p9-0007gF-VD; Tue, 27 Jun 2023 10:21:27 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556017.868241; Tue, 27 Jun 2023 10:21:27 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE5p9-0007g8-SI; Tue, 27 Jun 2023 10:21:27 +0000 Received: by outflank-mailman (input) for mailman id 556017; Tue, 27 Jun 2023 10:21:26 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE5p8-0007g2-4Q for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 10:21:26 +0000 Received: from mail-ej1-x62e.google.com (mail-ej1-x62e.google.com [2a00:1450:4864:20::62e]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 5d7d8bfd-14d4-11ee-8611-37d641c3527e; Tue, 27 Jun 2023 12:21:23 +0200 (CEST) Received: by mail-ej1-x62e.google.com with SMTP id a640c23a62f3a-9923833737eso28796966b.3 for ; Tue, 27 Jun 2023 03:21:23 -0700 (PDT) Received: from smtpclient.apple (default-46-102-197-194.interdsl.co.uk. [46.102.197.194]) by smtp.gmail.com with ESMTPSA id qc5-20020a170906d8a500b00992076f4a01sm886503ejb.190.2023.06.27.03.21.22 for (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Tue, 27 Jun 2023 03:21:22 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 5d7d8bfd-14d4-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cloud.com; s=cloud; t=1687861283; x=1690453283; h=to:date:message-id:subject:mime-version:content-transfer-encoding :from:from:to:cc:subject:date:message-id:reply-to; bh=ndZA4BPfU+FceQpEgeBH1Ewx7zzZ5krG3I7Wjsxllfs=; b=g7k2fbDb0Qe7mLPMaYfdyx/4szgF1sf6wzNvv7Xal4j0YksmAfezKFedM7m1tbpDeD cNZvD7UjnGvh+UlgBGaSm6sDQdawnqSszeIZMsBvywRr/6+neEse5/gKsGflI+G0jRx4 NJSpOlBVTdGHi2JupINXFqcoVivw8tkyhGHkQ= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687861283; x=1690453283; h=to:date:message-id:subject:mime-version:content-transfer-encoding :from:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=ndZA4BPfU+FceQpEgeBH1Ewx7zzZ5krG3I7Wjsxllfs=; b=iY/3o1EEpDmTLaK5q3OYxXFrSGkj/F4yXmy+7O8zQ9JK6ehHAPCIdibQ9P2mvjKlbu 8fdsc6FHmVSGHlh6wD7Yg9px8xKDkDgHMZQYypWK8T2DONMBIH9gbDWeByeHcuMfiXUu u7hZRTxmgNTzUGz4bxsnQpkmvd7AZpt39OGnqTCAoA/Q2RW0bTDVv+EhGjjdirYrJEtu 3a0cJprZo/ynqJEMILksKQV0lTHgA205afRbC1w+f/2VP9ahyBchS0bTGNQnajmYsx17 FQ69LUA1x6aVkbqhzVxbEE4G8a5dRb4N24ML2NOV4r+rJTebN/9gR7eV9XX08v+1aRrM llMQ== X-Gm-Message-State: AC+VfDzUF/G/sHNPElyXZi/AflpYQmB2Hc8ZpzKTRN0/CmK3+SFhvEDG BwOHwa0ZYrF1I30yCajjGE+ti37o+3UHPznAAp5zlg== X-Google-Smtp-Source: ACHHUZ6ZO00rIEj4uMJZXoLntLDy/u8Yf6osfBxv70CGfniC3ETBOITyV0WWJx/ze2KNQql554BJIw== X-Received: by 2002:a17:907:7884:b0:98e:23d3:bf47 with SMTP id ku4-20020a170907788400b0098e23d3bf47mr6028164ejc.36.1687861282927; Tue, 27 Jun 2023 03:21:22 -0700 (PDT) From: Edwin Torok Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: quoted-printable Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3731.600.7\)) Subject: xen summit 2023 design session: Using only stable interfaces for (o)xenstored Message-Id: Date: Tue, 27 Jun 2023 11:21:12 +0100 To: Xen-devel X-Mailer: Apple Mail (2.3731.600.7) Background: = https://design-sessions.xenproject.org/uid/discussion/disc_MEXyUIXV6clI8n1= kgzQ9/view Possible solutions: Andrew Cooper: use get domain info list instead of querying domains = one-by-one to reduce number of hypercalls, even though Alejandro's patch = makes the get_domainfo lookups O(1). To avoid a hypercall a shared read-only memory page between Xen and = Dom0, containing a bitmap of domain existence and shutdown state. We have 32k domains max and this fits into a small number of 4K pages. Hypervisor can update it using atomic set/clear-bit, Dom0 will memcpy = and then check for differences Bernhardt/Andrew: discussion about efficiency and find first bit set, = XOR. A *lot* more efficient than using hypercalls anyway Edwin: do I have to implement that for various architectures? Andrew Cooper: already implemented for all arches. Some architectures = can only do atomic updates on natural register width (RISC-V), but that = is already handled Edwin: how would the stable interface look like? Memory layout = definition in the header and ..? Andrew Cooper: use acquire_resource with a new resource type, already = have stable xen libs for resource mapping Christopher Clarke/Daniel Smith (virtually from chatroom): alternatives = to bitmap, how is it indexed? Andrew Coooper: indexed by domid, we only have 32k Marcus Granado: what if we want to increase that? Andrew Coooper: 16-bit domid is baked into so many ABIs that if we want = to increase that then this API won't be the blocker. No need to worry = about more than 32k domids. Christopher Clark: how about using an Argo ring Andrew Cooper: Xen must NOT block when delivering the notification and = notification delivery cannot be lossy, cannot afford to drop events: = toolstacks/xenstored critically rely on this information. Christopher Clark: bip buffers: = https://www.codeproject.com/Articles/3479/The-Bip-Buffer-The-Circular-Buff= er-with-a-Twist as possible solution to avoid running out of space Andrew Cooper: bitmap also avoids having to take the domctl lock and = reduce background idle CPU usage Edwin: on that topic: we should also fix xcp-rrdd so it doesn't shell = out to xenpm every 5s to collect statistics... Andrew Cooper: should be possible to use libxenctrl directly for that Edwin Torok: there are other interfacs that would need to be stabilized = (see xenopsd), but lets start small and fix just this one for now, which = will result in an immediate improvement for (o)xenstored since this was = the final blocker to getting off stable interfaces (there is one other = usage, but that already has a patch posted/solution) Edwin Torok: how about release cadence? Doesn't necessarily have to go = into immediately next Xen release, but don't know in which phase the = release is in right now Andrew Cooper: probably about 6 weeks time to get into next release From xen-devel-bounces@lists.xenproject.org Tue Jun 27 10:24:44 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 10:24:44 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556021.868251 (Exim 4.92) (envelope-from ) id 1qE5s9-0008Ex-DA; Tue, 27 Jun 2023 10:24:33 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556021.868251; Tue, 27 Jun 2023 10:24:33 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE5s9-0008Eq-A5; Tue, 27 Jun 2023 10:24:33 +0000 Received: by outflank-mailman (input) for mailman id 556021; Tue, 27 Jun 2023 10:24:31 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE5s7-0008Ek-DT for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 10:24:31 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id cb820194-14d4-11ee-8611-37d641c3527e; Tue, 27 Jun 2023 12:24:28 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 6982461085; Tue, 27 Jun 2023 10:24:27 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 4D5F7C433C9; Tue, 27 Jun 2023 10:24:26 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: cb820194-14d4-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org; s=korg; t=1687861466; bh=F1Hg7UsWABbNZA5AQvDBMQsjEQe6h9OaplyEUWz37bw=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=V2NwjqsUMcDX/nRTxfVAJKchvBq0J8/jCjoiPE/BVWSq5g708DSLg16ic9OHGuGIA yuU5bxvGd6YG+SSKFuayAVa/x5wvWepMKMdGGFdgfHwAvR+pb341M0KuWKavjeak5J sma7fq1Z3LAEcoV/YQiR7MTXGlucUZab2xSmpk5M= Date: Tue, 27 Jun 2023 12:24:24 +0200 From: Greg Kroah-Hartman To: Petr Tesarik Cc: Stefano Stabellini , Thomas Bogendoerfer , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , "maintainer:X86 ARCHITECTURE (32-BIT AND 64-BIT)" , "H. Peter Anvin" , "Rafael J. Wysocki" , Juergen Gross , Oleksandr Tyshchenko , Christoph Hellwig , Marek Szyprowski , Robin Murphy , Andy Shevchenko , Hans de Goede , Jason Gunthorpe , Kees Cook , Saravana Kannan , "moderated list:XEN HYPERVISOR ARM" , "moderated list:ARM PORT" , open list , "open list:MIPS" , "open list:XEN SWIOTLB SUBSYSTEM" , Roberto Sassu , Kefeng Wang , petr@tesarici.cz Subject: Re: [PATCH v3 1/7] swiotlb: make io_tlb_default_mem local to swiotlb.c Message-ID: <2023062745-routing-palace-d0b4@gregkh> References: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: On Tue, Jun 27, 2023 at 11:54:23AM +0200, Petr Tesarik wrote: > +/** > + * is_swiotlb_active() - check if the software IO TLB is initialized > + * @dev: Device to check, or %NULL for the default IO TLB. > + */ > bool is_swiotlb_active(struct device *dev) > { > - struct io_tlb_mem *mem = dev->dma_io_tlb_mem; > + struct io_tlb_mem *mem = dev > + ? dev->dma_io_tlb_mem > + : &io_tlb_default_mem; That's impossible to read and maintain over time, sorry. Please use real "if () else" lines, so that it can be maintained over time. thanks, greg k-h From xen-devel-bounces@lists.xenproject.org Tue Jun 27 10:45:48 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 10:45:48 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556047.868273 (Exim 4.92) (envelope-from ) id 1qE6Cb-0002WA-56; Tue, 27 Jun 2023 10:45:41 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556047.868273; Tue, 27 Jun 2023 10:45:41 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE6Cb-0002W3-2Q; Tue, 27 Jun 2023 10:45:41 +0000 Received: by outflank-mailman (input) for mailman id 556047; Tue, 27 Jun 2023 10:45:39 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE6CZ-0002Vw-N8 for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 10:45:39 +0000 Received: from smtp-out1.suse.de (smtp-out1.suse.de [195.135.220.28]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id c04f1f2b-14d7-11ee-8611-37d641c3527e; Tue, 27 Jun 2023 12:45:37 +0200 (CEST) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by smtp-out1.suse.de (Postfix) with ESMTPS id DEB89211C5; Tue, 27 Jun 2023 10:45:36 +0000 (UTC) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id C111F13276; Tue, 27 Jun 2023 10:45:36 +0000 (UTC) Received: from dovecot-director2.suse.de ([192.168.254.65]) by imap2.suse-dmz.suse.de with ESMTPSA id atOPLdC9mmS9CwAAMHmgww (envelope-from ); Tue, 27 Jun 2023 10:45:36 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: c04f1f2b-14d7-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1; t=1687862736; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc: mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=021za+vfJxfdr2UPb7JBd3HhtPhFVlrLJhgcmd2b+8g=; b=uYwgrRo9JPxfmYASz6lkxK1zqmt4pmc9nUzyK0ThPfrfSRPXMnVRQ6xVMQvNorvEh3tZQp ze8jx4ocyxkUaN5C32PugKlsgRTwVYGnIFAVPtkTgyYrHDsB4fQZS/dufKbWKY7ZKYPuEf 24sjha6zJ3CDAktD6Gexl7ygtKCy58s= Message-ID: Date: Tue, 27 Jun 2023 12:45:36 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: xen summit 2023 design session: Using only stable interfaces for (o)xenstored Content-Language: en-US To: Edwin Torok , Xen-devel References: From: Juergen Gross In-Reply-To: Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="------------ik4Au7oDRCjz1DchtyjbF00S" This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --------------ik4Au7oDRCjz1DchtyjbF00S Content-Type: multipart/mixed; boundary="------------gHLfNmJfF0TAN2EnRwojFgiH"; protected-headers="v1" From: Juergen Gross To: Edwin Torok , Xen-devel Message-ID: Subject: Re: xen summit 2023 design session: Using only stable interfaces for (o)xenstored References: In-Reply-To: --------------gHLfNmJfF0TAN2EnRwojFgiH Content-Type: multipart/mixed; boundary="------------Q1CEqYcgmaB6SAOSRfAloC3y" --------------Q1CEqYcgmaB6SAOSRfAloC3y Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: base64 T24gMjcuMDYuMjMgMTI6MjEsIEVkd2luIFRvcm9rIHdyb3RlOg0KPiBCYWNrZ3JvdW5kOiBo dHRwczovL2Rlc2lnbi1zZXNzaW9ucy54ZW5wcm9qZWN0Lm9yZy91aWQvZGlzY3Vzc2lvbi9k aXNjX01FWHlVSVhWNmNsSThuMWtnelE5L3ZpZXcNCj4gDQo+IFBvc3NpYmxlIHNvbHV0aW9u czoNCj4gQW5kcmV3IENvb3BlcjogdXNlIGdldCBkb21haW4gaW5mbyBsaXN0IGluc3RlYWQg b2YgcXVlcnlpbmcgZG9tYWlucyBvbmUtYnktb25lIHRvIHJlZHVjZSBudW1iZXIgb2YgaHlw ZXJjYWxscywgZXZlbiB0aG91Z2ggQWxlamFuZHJvJ3MgcGF0Y2ggbWFrZXMgdGhlIGdldF9k b21haW5mbyBsb29rdXBzIE8oMSkuDQo+IFRvIGF2b2lkIGEgaHlwZXJjYWxsIGEgc2hhcmVk IHJlYWQtb25seSBtZW1vcnkgcGFnZSBiZXR3ZWVuIFhlbiBhbmQgRG9tMCwgY29udGFpbmlu ZyBhIGJpdG1hcCBvZiBkb21haW4gZXhpc3RlbmNlIGFuZCBzaHV0ZG93biBzdGF0ZS4NCj4g V2UgaGF2ZSAzMmsgZG9tYWlucyBtYXggYW5kIHRoaXMgZml0cyBpbnRvIGEgc21hbGwgbnVt YmVyIG9mIDRLIHBhZ2VzLg0KPiBIeXBlcnZpc29yIGNhbiB1cGRhdGUgaXQgdXNpbmcgYXRv bWljIHNldC9jbGVhci1iaXQsIERvbTAgd2lsbCBtZW1jcHkgYW5kIHRoZW4gY2hlY2sgZm9y IGRpZmZlcmVuY2VzDQo+IEJlcm5oYXJkdC9BbmRyZXc6IGRpc2N1c3Npb24gYWJvdXQgZWZm aWNpZW5jeSBhbmQgZmluZCBmaXJzdCBiaXQgc2V0LCBYT1IuIEEgKmxvdCogbW9yZSBlZmZp Y2llbnQgdGhhbiB1c2luZyBoeXBlcmNhbGxzIGFueXdheQ0KPiBFZHdpbjogZG8gSSBoYXZl IHRvIGltcGxlbWVudCB0aGF0IGZvciB2YXJpb3VzIGFyY2hpdGVjdHVyZXM/DQo+IEFuZHJl dyBDb29wZXI6IGFscmVhZHkgaW1wbGVtZW50ZWQgZm9yIGFsbCBhcmNoZXMuIFNvbWUgYXJj aGl0ZWN0dXJlcyBjYW4gb25seSBkbyBhdG9taWMgdXBkYXRlcyBvbiBuYXR1cmFsIHJlZ2lz dGVyIHdpZHRoIChSSVNDLVYpLCBidXQgdGhhdCBpcyBhbHJlYWR5IGhhbmRsZWQNCj4gRWR3 aW46IGhvdyB3b3VsZCB0aGUgc3RhYmxlIGludGVyZmFjZSBsb29rIGxpa2U/IE1lbW9yeSBs YXlvdXQgZGVmaW5pdGlvbiBpbiB0aGUgaGVhZGVyIGFuZCAuLj8NCj4gQW5kcmV3IENvb3Bl cjogdXNlIGFjcXVpcmVfcmVzb3VyY2Ugd2l0aCBhIG5ldyByZXNvdXJjZSB0eXBlLCBhbHJl YWR5IGhhdmUgc3RhYmxlIHhlbiBsaWJzIGZvciByZXNvdXJjZSBtYXBwaW5nDQo+IA0KPiBD aHJpc3RvcGhlciBDbGFya2UvRGFuaWVsIFNtaXRoICh2aXJ0dWFsbHkgZnJvbSBjaGF0cm9v bSk6IGFsdGVybmF0aXZlcyB0byBiaXRtYXAsIGhvdyBpcyBpdCBpbmRleGVkPw0KPiBBbmRy ZXcgQ29vb3BlcjogaW5kZXhlZCBieSBkb21pZCwgd2Ugb25seSBoYXZlIDMyaw0KPiBNYXJj dXMgR3JhbmFkbzogd2hhdCBpZiB3ZSB3YW50IHRvIGluY3JlYXNlIHRoYXQ/DQo+IEFuZHJl dyBDb29vcGVyOiAxNi1iaXQgZG9taWQgaXMgYmFrZWQgaW50byBzbyBtYW55IEFCSXMgdGhh dCBpZiB3ZSB3YW50IHRvIGluY3JlYXNlIHRoYXQgdGhlbiB0aGlzIEFQSSB3b24ndCBiZSB0 aGUgYmxvY2tlci4gTm8gbmVlZCB0byB3b3JyeSBhYm91dCBtb3JlIHRoYW4gMzJrIGRvbWlk cy4NCj4gQ2hyaXN0b3BoZXIgQ2xhcms6IGhvdyBhYm91dCB1c2luZyBhbiBBcmdvIHJpbmcN Cj4gQW5kcmV3IENvb3BlcjogWGVuIG11c3QgTk9UIGJsb2NrIHdoZW4gZGVsaXZlcmluZyB0 aGUgbm90aWZpY2F0aW9uIGFuZCBub3RpZmljYXRpb24gZGVsaXZlcnkgY2Fubm90IGJlIGxv c3N5LCBjYW5ub3QgYWZmb3JkIHRvIGRyb3AgZXZlbnRzOiB0b29sc3RhY2tzL3hlbnN0b3Jl ZCBjcml0aWNhbGx5IHJlbHkgb24gdGhpcyBpbmZvcm1hdGlvbi4NCj4gQ2hyaXN0b3BoZXIg Q2xhcms6IGJpcCBidWZmZXJzOiBodHRwczovL3d3dy5jb2RlcHJvamVjdC5jb20vQXJ0aWNs ZXMvMzQ3OS9UaGUtQmlwLUJ1ZmZlci1UaGUtQ2lyY3VsYXItQnVmZmVyLXdpdGgtYS1Ud2lz dCBhcyBwb3NzaWJsZSBzb2x1dGlvbiB0byBhdm9pZCBydW5uaW5nIG91dCBvZiBzcGFjZQ0K PiBBbmRyZXcgQ29vcGVyOiBiaXRtYXAgYWxzbyBhdm9pZHMgaGF2aW5nIHRvIHRha2UgdGhl IGRvbWN0bCBsb2NrIGFuZCByZWR1Y2UgYmFja2dyb3VuZCBpZGxlIENQVSB1c2FnZQ0KPiBF ZHdpbjogb24gdGhhdCB0b3BpYzogd2Ugc2hvdWxkIGFsc28gZml4IHhjcC1ycmRkIHNvIGl0 IGRvZXNuJ3Qgc2hlbGwgb3V0IHRvIHhlbnBtIGV2ZXJ5IDVzIHRvIGNvbGxlY3Qgc3RhdGlz dGljcy4uLg0KPiBBbmRyZXcgQ29vcGVyOiBzaG91bGQgYmUgcG9zc2libGUgdG8gdXNlIGxp YnhlbmN0cmwgZGlyZWN0bHkgZm9yIHRoYXQNCj4gRWR3aW4gVG9yb2s6IHRoZXJlIGFyZSBv dGhlciBpbnRlcmZhY3MgdGhhdCB3b3VsZCBuZWVkIHRvIGJlIHN0YWJpbGl6ZWQgKHNlZSB4 ZW5vcHNkKSwgYnV0IGxldHMgc3RhcnQgc21hbGwgYW5kIGZpeCBqdXN0IHRoaXMgb25lIGZv ciBub3csIHdoaWNoIHdpbGwgcmVzdWx0IGluIGFuIGltbWVkaWF0ZSBpbXByb3ZlbWVudCBm b3IgKG8peGVuc3RvcmVkIHNpbmNlIHRoaXMgd2FzIHRoZSBmaW5hbCBibG9ja2VyIHRvIGdl dHRpbmcgb2ZmIHN0YWJsZSBpbnRlcmZhY2VzICh0aGVyZSBpcyBvbmUgb3RoZXIgdXNhZ2Us IGJ1dCB0aGF0IGFscmVhZHkgaGFzIGEgcGF0Y2ggcG9zdGVkL3NvbHV0aW9uKQ0KPiANCj4g RWR3aW4gVG9yb2s6IGhvdyBhYm91dCByZWxlYXNlIGNhZGVuY2U/IERvZXNuJ3QgbmVjZXNz YXJpbHkgaGF2ZSB0byBnbyBpbnRvIGltbWVkaWF0ZWx5IG5leHQgWGVuIHJlbGVhc2UsIGJ1 dCBkb24ndCBrbm93IGluIHdoaWNoIHBoYXNlIHRoZSByZWxlYXNlIGlzIGluIHJpZ2h0IG5v dw0KPiBBbmRyZXcgQ29vcGVyOiBwcm9iYWJseSBhYm91dCA2IHdlZWtzIHRpbWUgdG8gZ2V0 IGludG8gbmV4dCByZWxlYXNlDQoNClNlZSBodHRwczovL2xpc3RzLnhlbi5vcmcvYXJjaGl2 ZXMvaHRtbC94ZW4tZGV2ZWwvMjAyMS0wOS9tc2cwMTA5OC5odG1sDQoNCg0KSnVlcmdlbg0K DQo= --------------Q1CEqYcgmaB6SAOSRfAloC3y Content-Type: application/pgp-keys; name="OpenPGP_0xB0DE9DD628BF132F.asc" Content-Disposition: attachment; filename="OpenPGP_0xB0DE9DD628BF132F.asc" Content-Description: OpenPGP public key Content-Transfer-Encoding: quoted-printable -----BEGIN PGP PUBLIC KEY BLOCK----- xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjri oyspZKOBycWxw3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2 kaV2KL9650I1SJvedYm8Of8Zd621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i 1TXkH09XSSI8mEQ/ouNcMvIJNwQpd369y9bfIhWUiVXEK7MlRgUG6MvIj6Y3Am/B BLUVbDa4+gmzDC9ezlZkTZG2t14zWPvxXP3FAp2pkW0xqG7/377qptDmrk42GlSK N4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEBAAHNHEp1ZXJnZW4gR3Jvc3Mg PGpnQHBmdXBmLm5ldD7CwHkEEwECACMFAlOMcBYCGwMHCwkIBwMCAQYVCAIJCgsE FgIDAQIeAQIXgAAKCRCw3p3WKL8TL0KdB/93FcIZ3GCNwFU0u3EjNbNjmXBKDY4F UGNQH2lvWAUy+dnyThpwdtF/jQ6j9RwE8VP0+NXcYpGJDWlNb9/JmYqLiX2Q3Tye vpB0CA3dbBQp0OW0fgCetToGIQrg0MbD1C/sEOv8Mr4NAfbauXjZlvTj30H2jO0u +6WGM6nHwbh2l5O8ZiHkH32iaSTfN7Eu5RnNVUJbvoPHZ8SlM4KWm8rG+lIkGurq qu5gu8q8ZMKdsdGC4bBxdQKDKHEFExLJK/nRPFmAuGlId1E3fe10v5QL+qHI3EIP tyfE7i9Hz6rVwi7lWKgh7pe0ZvatAudZ+JNIlBKptb64FaiIOAWDCx1SzR9KdWVy Z2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+wsB5BBMBAgAjBQJTjHCvAhsDBwsJ CAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey/HmQf/RtI7kv5A2PS4 RF7HoZhPVPogNVbC4YA6lW7DrWf0teC0RR3MzXfy6pJ+7KLgkqMlrAbN/8Dvjoz7 8X+5vhH/rDLa9BuZQlhFmvcGtCF8eR0T1v0nC/nuAFVGy+67q2DH8As3KPu0344T BDpAvr2uYM4tSqxK4DURx5INz4ZZ0WNFHcqsfvlGJALDeE0LhITTd9jLzdDad1pQ SToCnLl6SBJZjDOX9QQcyUigZFtCXFst4dlsvddrxyqT1f17+2cFSdu7+ynLmXBK 7abQ3rwJY8SbRO2iRulogc5vr/RLMMlscDAiDkaFQWLoqHHOdfO9rURssHNN8WkM nQfvUewRz80hSnVlcmdlbiBHcm9zcyA8amdyb3NzQG5vdmVsbC5jb20+wsB5BBMB AgAjBQJTjHDXAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/ Ey8PUQf/ehmgCI9jB9hlgexLvgOtf7PJnFOXgMLdBQgBlVPO3/D9R8LtF9DBAFPN hlrsfIG/SqICoRCqUcJ96Pn3P7UUinFG/I0ECGF4EvTE1jnDkfJZr6jrbjgyoZHi w/4BNwSTL9rWASyLgqlA8u1mf+c2yUwcGhgkRAd1gOwungxcwzwqgljf0N51N5Jf VRHRtyfwq/ge+YEkDGcTU6Y0sPOuj4Dyfm8fJzdfHNQsWq3PnczLVELStJNdapwP OoE+lotufe3AM2vAEYJ9rTz3Cki4JFUsgLkHFqGZarrPGi1eyQcXeluldO3m91NK /1xMI3/+8jbO0tsn1tqSEUGIJi7ox80eSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1 c2UuZGU+wsB5BBMBAgAjBQJTjHDrAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgEC F4AACgkQsN6d1ii/Ey+LhQf9GL45eU5vOowA2u5N3g3OZUEBmDHVVbqMtzwlmNC4 k9Kx39r5s2vcFl4tXqW7g9/ViXYuiDXb0RfUpZiIUW89siKrkzmQ5dM7wRqzgJpJ wK8Bn2MIxAKArekWpiCKvBOB/Cc+3EXE78XdlxLyOi/NrmSGRIov0karw2RzMNOu 5D+jLRZQd1Sv27AR+IP3I8U4aqnhLpwhK7MEy9oCILlgZ1QZe49kpcumcZKORmzB TNh30FVKK1EvmV2xAKDoaEOgQB4iFQLhJCdP1I5aSgM5IVFdn7v5YgEYuJYx37Io N1EblHI//x/e2AaIHpzK5h88NEawQsaNRpNSrcfbFmAg987ATQRTjHAWAQgAyzH6 AOODMBjgfWE9VeCgsrwH3exNAU32gLq2xvjpWnHIs98ndPUDpnoxWQugJ6MpMncr 0xSwFmHEgnSEjK/PAjppgmyc57BwKII3sV4on+gDVFJR6Y8ZRwgnBC5mVM6JjQ5x Dk8WRXljExRfUX9pNhdE5eBOZJrDRoLUmmjDtKzWaDhIg/+1Hzz93X4fCQkNVbVF LELU9bMaLPBG/x5q4iYZ2k2ex6d47YE1ZFdMm6YBYMOljGkZKwYde5ldM9mo45mm we0icXKLkpEdIXKTZeKDO+Hdv1aqFuAcccTg9RXDQjmwhC3yEmrmcfl0+rPghO0I v3OOImwTEe4co3c1mwARAQABwsBfBBgBAgAJBQJTjHAWAhsMAAoJELDendYovxMv Q/gH/1ha96vm4P/L+bQpJwrZ/dneZcmEwTbe8YFsw2V/Buv6Z4Mysln3nQK5ZadD 534CF7TDVft7fC4tU4PONxF5D+/tvgkPfDAfF77zy2AH1vJzQ1fOU8lYFpZXTXIH b+559UqvIB8AdgR3SAJGHHt4RKA0F7f5ipYBBrC6cyXJyyoprT10EMvU8VGiwXvT yJz3fjoYsdFzpWPlJEBRMedCot60g5dmbdrZ5DWClAr0yau47zpWj3enf1tLWaqc suylWsviuGjKGw7KHQd3bxALOknAp4dN3QwBYCKuZ7AddY9yjynVaD5X7nF9nO5B jR/i1DG86lem3iBDXzXsZDn8R38=3D =3D2wuH -----END PGP PUBLIC KEY BLOCK----- --------------Q1CEqYcgmaB6SAOSRfAloC3y-- --------------gHLfNmJfF0TAN2EnRwojFgiH-- --------------ik4Au7oDRCjz1DchtyjbF00S Content-Type: application/pgp-signature; name="OpenPGP_signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="OpenPGP_signature" -----BEGIN PGP SIGNATURE----- wsB5BAABCAAjFiEEhRJncuj2BJSl0Jf3sN6d1ii/Ey8FAmSavdAFAwAAAAAACgkQsN6d1ii/Ey9q Pgf/Y5lhU1DAqjlK5ekyZLlSJhu+RaEPkWhOP7/LJmlkBO3Kvkk9OJWvqb+Zy6TrUZ1CEWPagS8/ GfIsogZikmLNDaRMwISjfOIvr60IMFfWM3/od0XuU/vcjTkzlXfcouGUXkIrxttoJzTC2NGPRNqE 8VXUGo0jRsulkJudtEQKN+i9nrLx399zdkKhieUdZGq9QDwsbGrCzJTfG7GW6xeUC0C0YirGMH/D XrsLGGNr5qhq9tNkzZg74aDDEezWvuMK4YqDD/bRh//M+FD7/JUFAlkfgEPUeJRQEhwcf5X4+81d X7vhSW18E8gJh+KJ997LLGmtUjVf8PD/hGlT5Y/dvg== =cc0s -----END PGP SIGNATURE----- --------------ik4Au7oDRCjz1DchtyjbF00S-- From xen-devel-bounces@lists.xenproject.org Tue Jun 27 10:55:20 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 10:55:20 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556060.868287 (Exim 4.92) (envelope-from ) id 1qE6Ln-00049t-4p; Tue, 27 Jun 2023 10:55:11 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556060.868287; Tue, 27 Jun 2023 10:55:11 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE6Ln-00049m-1C; Tue, 27 Jun 2023 10:55:11 +0000 Received: by outflank-mailman (input) for mailman id 556060; Tue, 27 Jun 2023 10:55:10 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE6Lm-00048p-0L for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 10:55:10 +0000 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by se1-gles-sth1.inumbo.com (Halon) with ESMTP id 14e0a97a-14d9-11ee-b237-6b7b168915f2; Tue, 27 Jun 2023 12:55:09 +0200 (CEST) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 2088D2F4; Tue, 27 Jun 2023 03:55:52 -0700 (PDT) Received: from [10.1.196.40] (e121345-lin.cambridge.arm.com [10.1.196.40]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id CAF8C3F64C; Tue, 27 Jun 2023 03:55:04 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 14e0a97a-14d9-11ee-b237-6b7b168915f2 Message-ID: <73f11258-1562-17c1-969e-b134dcb5f35c@arm.com> Date: Tue, 27 Jun 2023 11:55:00 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux aarch64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH v3 1/7] swiotlb: make io_tlb_default_mem local to swiotlb.c To: Greg Kroah-Hartman , Petr Tesarik Cc: Stefano Stabellini , Thomas Bogendoerfer , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , "maintainer:X86 ARCHITECTURE (32-BIT AND 64-BIT)" , "H. Peter Anvin" , "Rafael J. Wysocki" , Juergen Gross , Oleksandr Tyshchenko , Christoph Hellwig , Marek Szyprowski , Andy Shevchenko , Hans de Goede , Jason Gunthorpe , Kees Cook , Saravana Kannan , "moderated list:XEN HYPERVISOR ARM" , "moderated list:ARM PORT" , open list , "open list:MIPS" , "open list:XEN SWIOTLB SUBSYSTEM" , Roberto Sassu , Kefeng Wang , petr@tesarici.cz References: <2023062745-routing-palace-d0b4@gregkh> Content-Language: en-GB From: Robin Murphy In-Reply-To: <2023062745-routing-palace-d0b4@gregkh> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit On 27/06/2023 11:24 am, Greg Kroah-Hartman wrote: > On Tue, Jun 27, 2023 at 11:54:23AM +0200, Petr Tesarik wrote: >> +/** >> + * is_swiotlb_active() - check if the software IO TLB is initialized >> + * @dev: Device to check, or %NULL for the default IO TLB. >> + */ >> bool is_swiotlb_active(struct device *dev) >> { >> - struct io_tlb_mem *mem = dev->dma_io_tlb_mem; >> + struct io_tlb_mem *mem = dev >> + ? dev->dma_io_tlb_mem >> + : &io_tlb_default_mem; > > That's impossible to read and maintain over time, sorry. > > Please use real "if () else" lines, so that it can be maintained over > time. Moreover, it makes for a horrible interface anyway. If there's a need for a non-specific "is SWIOTLB present at all?" check unrelated to any particular device (which arguably still smells of poking into implementation details...), please encapsulate it in its own distinct helper like, say, is_swiotlb_present(void). However, the more I think about it, the more I doubt that logic like octeon_pci_setup() can continue to work properly at all if SWIOTLB allocation becomes dynamic... :/ Thanks, Robin. From xen-devel-bounces@lists.xenproject.org Tue Jun 27 11:00:15 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 11:00:15 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556067.868298 (Exim 4.92) (envelope-from ) id 1qE6QZ-0005Xc-O0; Tue, 27 Jun 2023 11:00:07 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556067.868298; Tue, 27 Jun 2023 11:00:07 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE6QZ-0005XV-J4; Tue, 27 Jun 2023 11:00:07 +0000 Received: by outflank-mailman (input) for mailman id 556067; Tue, 27 Jun 2023 11:00:06 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE6QY-0005Wa-Lr; Tue, 27 Jun 2023 11:00:06 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE6QY-0007rd-Ae; Tue, 27 Jun 2023 11:00:06 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE6QX-0004MS-RV; Tue, 27 Jun 2023 11:00:05 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qE6QX-0005Bq-R5; Tue, 27 Jun 2023 11:00:05 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=k/B7myw1WQxYBfnMxyDZWHsv7aV29jFg4uwgcDNjbkY=; b=c6tMe0FNBiEAVck8JOrcfbVM7a Zayw0nuPCjKjebAH/VRgmWl+9AIpqkER7+C5GFjqa+CIFdaa3A9RtXCjj5zSMlloQ7KoiVt/lHRCx 1uGpeflMNZOaRa3sC2+tlMD98ZMEvwjSEkMLfSjE0RwdTz82xwD59LCbSezNr1ysmlmo=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [linux-linus test] 181609: regressions - FAIL X-Osstest-Failures: linux-linus:test-amd64-amd64-qemuu-nested-amd:leak-check/basis(11):fail:regression linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:xen-boot:fail:regression linux-linus:test-amd64-amd64-pygrub:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:xen-boot:fail:regression linux-linus:test-amd64-amd64-libvirt-qcow2:xen-boot:fail:regression linux-linus:test-amd64-amd64-libvirt-xsm:xen-boot:fail:regression linux-linus:test-amd64-amd64-libvirt:leak-check/basis(11):fail:regression linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64:leak-check/basis(11):fail:regression linux-linus:test-amd64-amd64-xl-pvhv2-amd:leak-check/basis(11):fail:regression linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:xen-boot:fail:regression linux-linus:test-amd64-amd64-freebsd11-amd64:leak-check/basis(11):fail:regression linux-linus:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:xen-boot:fail:regression linux-linus:test-amd64-amd64-freebsd12-amd64:xen-boot:fail:regression linux-linus:test-amd64-amd64-libvirt-raw:xen-boot:fail:regression linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-shadow:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-pvhv2-intel:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm:leak-check/basis(11):fail:regression linux-linus:test-amd64-amd64-xl-qemut-debianhvm-amd64:leak-check/basis(11):fail:regression linux-linus:test-amd64-amd64-xl:debian-install:fail:regression linux-linus:test-amd64-amd64-xl-multivcpu:guest-start:fail:regression linux-linus:test-amd64-coresched-amd64-xl:debian-fixup:fail:regression linux-linus:test-amd64-amd64-libvirt-pair:xen-boot/dst_host:fail:regression linux-linus:test-amd64-amd64-pair:xen-boot/src_host:fail:regression linux-linus:test-amd64-amd64-pair:xen-boot/dst_host:fail:regression linux-linus:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-credit1:leak-check/basis(11):fail:regression linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:debian-hvm-install:fail:regression linux-linus:test-amd64-amd64-xl-qemuu-ovmf-amd64:debian-hvm-install:fail:regression linux-linus:test-amd64-amd64-dom0pvh-xl-amd:guest-start/debian.repeat:fail:regression linux-linus:test-amd64-amd64-qemuu-nested-intel:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-pvshim:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-credit2:debian-install:fail:regression linux-linus:test-armhf-armhf-xl-credit1:xen-boot:fail:regression linux-linus:test-amd64-amd64-examine:reboot:fail:regression linux-linus:test-amd64-amd64-examine-bios:reboot:fail:regression linux-linus:test-amd64-amd64-xl-vhd:guest-start/debian.repeat:fail:regression linux-linus:test-amd64-amd64-xl-rtds:leak-check/basis(11):fail:allowable linux-linus:test-armhf-armhf-xl-arndale:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-raw:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-credit2:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-rtds:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-examine:reboot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-qcow2:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-vhd:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-multivcpu:xen-boot:fail:nonblocking linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: linux=1ef6663a587ba3e57dc5065a477db1c64481eedd X-Osstest-Versions-That: linux=6c538e1adbfc696ac4747fb10d63e704344f763d From: osstest service owner Date: Tue, 27 Jun 2023 11:00:05 +0000 flight 181609 linux-linus real [real] http://logs.test-lab.xenproject.org/osstest/logs/181609/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: test-amd64-amd64-qemuu-nested-amd 11 leak-check/basis(11) fail REGR. vs. 180278 test-amd64-amd64-xl-qemuu-ws16-amd64 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-xl-qemuu-win7-amd64 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-pygrub 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-xl-qemut-win7-amd64 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-libvirt-qcow2 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-libvirt-xsm 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-libvirt 11 leak-check/basis(11) fail REGR. vs. 180278 test-amd64-amd64-xl-qemuu-debianhvm-amd64 11 leak-check/basis(11) fail REGR. vs. 180278 test-amd64-amd64-xl-pvhv2-amd 11 leak-check/basis(11) fail REGR. vs. 180278 test-amd64-amd64-xl-qemut-ws16-amd64 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-freebsd11-amd64 11 leak-check/basis(11) fail REGR. vs. 180278 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-freebsd12-amd64 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-libvirt-raw 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-xl-shadow 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-xl-pvhv2-intel 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm 11 leak-check/basis(11) fail REGR. vs. 180278 test-amd64-amd64-xl-qemut-debianhvm-amd64 11 leak-check/basis(11) fail REGR. vs. 180278 test-amd64-amd64-xl 12 debian-install fail REGR. vs. 180278 test-amd64-amd64-xl-multivcpu 14 guest-start fail REGR. vs. 180278 test-amd64-coresched-amd64-xl 13 debian-fixup fail REGR. vs. 180278 test-amd64-amd64-libvirt-pair 13 xen-boot/dst_host fail REGR. vs. 180278 test-amd64-amd64-pair 12 xen-boot/src_host fail REGR. vs. 180278 test-amd64-amd64-pair 13 xen-boot/dst_host fail REGR. vs. 180278 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-xl-credit1 11 leak-check/basis(11) fail REGR. vs. 180278 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 12 debian-hvm-install fail REGR. vs. 180278 test-amd64-amd64-xl-qemuu-ovmf-amd64 12 debian-hvm-install fail REGR. vs. 180278 test-amd64-amd64-dom0pvh-xl-amd 22 guest-start/debian.repeat fail REGR. vs. 180278 test-amd64-amd64-qemuu-nested-intel 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-xl-pvshim 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-xl-credit2 12 debian-install fail REGR. vs. 180278 test-armhf-armhf-xl-credit1 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-examine 8 reboot fail REGR. vs. 180278 test-amd64-amd64-examine-bios 8 reboot fail REGR. vs. 180278 test-amd64-amd64-xl-vhd 21 guest-start/debian.repeat fail REGR. vs. 180278 Regressions which are regarded as allowable (not blocking): test-amd64-amd64-xl-rtds 11 leak-check/basis(11) fail REGR. vs. 180278 Tests which did not succeed, but are not blocking: test-armhf-armhf-xl-arndale 8 xen-boot fail like 180278 test-armhf-armhf-xl 8 xen-boot fail like 180278 test-armhf-armhf-libvirt-raw 8 xen-boot fail like 180278 test-armhf-armhf-xl-credit2 8 xen-boot fail like 180278 test-armhf-armhf-xl-rtds 8 xen-boot fail like 180278 test-armhf-armhf-libvirt 8 xen-boot fail like 180278 test-armhf-armhf-examine 8 reboot fail like 180278 test-armhf-armhf-libvirt-qcow2 8 xen-boot fail like 180278 test-armhf-armhf-xl-vhd 8 xen-boot fail like 180278 test-armhf-armhf-xl-multivcpu 8 xen-boot fail like 180278 test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass version targeted for testing: linux 1ef6663a587ba3e57dc5065a477db1c64481eedd baseline version: linux 6c538e1adbfc696ac4747fb10d63e704344f763d Last test of basis 180278 2023-04-16 19:41:46 Z 71 days Failing since 180281 2023-04-17 06:24:36 Z 71 days 135 attempts Testing same since 181609 2023-06-27 04:04:49 Z 0 days 1 attempts ------------------------------------------------------------ 2860 people touched revisions under test, not listing them all jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl fail test-amd64-coresched-amd64-xl fail test-arm64-arm64-xl pass test-armhf-armhf-xl fail test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm fail test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm fail test-amd64-amd64-xl-qemut-debianhvm-i386-xsm fail test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm fail test-arm64-arm64-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd fail test-amd64-amd64-dom0pvh-xl-amd fail test-amd64-amd64-xl-qemut-debianhvm-amd64 fail test-amd64-amd64-xl-qemuu-debianhvm-amd64 fail test-amd64-amd64-freebsd11-amd64 fail test-amd64-amd64-freebsd12-amd64 fail test-amd64-amd64-xl-qemuu-ovmf-amd64 fail test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale fail test-amd64-amd64-examine-bios fail test-amd64-amd64-xl-credit1 fail test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 fail test-amd64-amd64-xl-credit2 fail test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 fail test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict fail test-amd64-amd64-examine fail test-arm64-arm64-examine pass test-armhf-armhf-examine fail test-amd64-amd64-qemuu-nested-intel fail test-amd64-amd64-xl-pvhv2-intel fail test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt fail test-armhf-armhf-libvirt fail test-amd64-amd64-xl-multivcpu fail test-armhf-armhf-xl-multivcpu fail test-amd64-amd64-pair fail test-amd64-amd64-libvirt-pair fail test-amd64-amd64-xl-pvshim fail test-amd64-amd64-pygrub fail test-amd64-amd64-libvirt-qcow2 fail test-armhf-armhf-libvirt-qcow2 fail test-amd64-amd64-libvirt-raw fail test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw fail test-amd64-amd64-xl-rtds fail test-armhf-armhf-xl-rtds fail test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow fail test-amd64-amd64-xl-shadow fail test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-amd64-xl-vhd fail test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd fail ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 383259 lines long.) From xen-devel-bounces@lists.xenproject.org Tue Jun 27 11:11:34 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 11:11:34 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556073.868307 (Exim 4.92) (envelope-from ) id 1qE6bH-00078f-Hu; Tue, 27 Jun 2023 11:11:11 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556073.868307; Tue, 27 Jun 2023 11:11:11 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE6bH-00078Y-EV; Tue, 27 Jun 2023 11:11:11 +0000 Received: by outflank-mailman (input) for mailman id 556073; Tue, 27 Jun 2023 11:11:10 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE6bF-00078S-9i for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 11:11:09 +0000 Received: from bee.tesarici.cz (bee.tesarici.cz [77.93.223.253]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 4e5d5669-14db-11ee-b237-6b7b168915f2; Tue, 27 Jun 2023 13:11:04 +0200 (CEST) Received: from meshulam.tesarici.cz (dynamic-2a00-1028-83b8-1e7a-4427-cc85-6706-c595.ipv6.o2.cz [IPv6:2a00:1028:83b8:1e7a:4427:cc85:6706:c595]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (P-256) server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by bee.tesarici.cz (Postfix) with ESMTPSA id 8C5948C9CB; Tue, 27 Jun 2023 13:11:01 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 4e5d5669-14db-11ee-b237-6b7b168915f2 Authentication-Results: mail.tesarici.cz; dmarc=fail (p=none dis=none) header.from=tesarici.cz DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=tesarici.cz; s=mail; t=1687864261; bh=qV5FgT4RgSJppKtj0fLN/J7cUeZK9GPTjiJP3fPSLqg=; h=Date:From:To:Cc:Subject:In-Reply-To:References:From; b=gjFY6ZJmmGKpykzVlsS77fpY32kAzzHLfddjKOGLIrtTY1sRj1XTgGb6CUYpBqlnR imB7mHimhNMwspVUHmIKcQ8Y0HXaUGDkHBp/D9bPQbjM/D+ZEeO16xMudTMMfH7PqQ PVKMOyjp718f6Jq5gC2N5P9/n0EqDfu7iZbW+wN+uUzOxQwga+bgmDJQNKt7AMOfQm hBW7r7pIi48iOcROYf/m1SZa6iv6yiuGnOQ6g1G1ALFlIXupl4u+XiSYvbUimKHDR3 0fuJtcV4xwQLNeWpXtYdoz4z9GX7+FH8MF1QOBR+NdXzUxvGRAgSZH/KaQumsOtEmU Vdnpw+LVD4PcQ== Date: Tue, 27 Jun 2023 13:11:00 +0200 From: Petr =?UTF-8?B?VGVzYcWZw61r?= To: Robin Murphy Cc: Greg Kroah-Hartman , Petr Tesarik , Stefano Stabellini , Thomas Bogendoerfer , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , "maintainer:X86 ARCHITECTURE (32-BIT AND 64-BIT)" , "H. Peter Anvin" , "Rafael J. Wysocki" , Juergen Gross , Oleksandr Tyshchenko , Christoph Hellwig , Marek Szyprowski , Andy Shevchenko , Hans de Goede , Jason Gunthorpe , Kees Cook , Saravana Kannan , "moderated list:XEN HYPERVISOR ARM" , "moderated list:ARM PORT" , open list , "open list:MIPS" , "open list:XEN SWIOTLB SUBSYSTEM" , Roberto Sassu , Kefeng Wang Subject: Re: [PATCH v3 1/7] swiotlb: make io_tlb_default_mem local to swiotlb.c Message-ID: <20230627131100.661d5297@meshulam.tesarici.cz> In-Reply-To: <73f11258-1562-17c1-969e-b134dcb5f35c@arm.com> References: <2023062745-routing-palace-d0b4@gregkh> <73f11258-1562-17c1-969e-b134dcb5f35c@arm.com> X-Mailer: Claws Mail 4.1.1 (GTK 3.24.38; x86_64-suse-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit On Tue, 27 Jun 2023 11:55:00 +0100 Robin Murphy wrote: > On 27/06/2023 11:24 am, Greg Kroah-Hartman wrote: > > On Tue, Jun 27, 2023 at 11:54:23AM +0200, Petr Tesarik wrote: > >> +/** > >> + * is_swiotlb_active() - check if the software IO TLB is initialized > >> + * @dev: Device to check, or %NULL for the default IO TLB. > >> + */ > >> bool is_swiotlb_active(struct device *dev) > >> { > >> - struct io_tlb_mem *mem = dev->dma_io_tlb_mem; > >> + struct io_tlb_mem *mem = dev > >> + ? dev->dma_io_tlb_mem > >> + : &io_tlb_default_mem; > > > > That's impossible to read and maintain over time, sorry. > > > > Please use real "if () else" lines, so that it can be maintained over > > time. > > Moreover, it makes for a horrible interface anyway. If there's a need > for a non-specific "is SWIOTLB present at all?" check unrelated to any > particular device (which arguably still smells of poking into > implementation details...), please encapsulate it in its own distinct > helper like, say, is_swiotlb_present(void). > > However, the more I think about it, the more I doubt that logic like > octeon_pci_setup() can continue to work properly at all if SWIOTLB > allocation becomes dynamic... :/ Good, so I'm not alone. I don't know enough of the Octeon hardware to understand how much magic is behind these PCI BARs and why one of them should be (sometimes) programmed the way it is. OTOH it doesn't seem to me that this platform forces DMA through SWIOTLB. At least all calls to swiotlb_init() under arch/mips take this form: swiotlb_init(true, SWIOTLB_VERBOSE); This makes me believe that this PCI BAR setup is merely an optimization. However, if nobody has a clear answer, a fallback solution is to stay on the safe side and add a flag to struct io_tlb_mem whether SWIOTLB can grow dynamically. The helper function would then set this flag and make sure that on this Octeon platform, the SWIOTLB stays restricted to the default pool. Hopefully, Thomas Bogendoerfer can shed some light on that code. Petr T From xen-devel-bounces@lists.xenproject.org Tue Jun 27 11:11:35 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 11:11:35 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556075.868317 (Exim 4.92) (envelope-from ) id 1qE6bU-0007RX-Sr; Tue, 27 Jun 2023 11:11:24 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556075.868317; Tue, 27 Jun 2023 11:11:24 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE6bU-0007RQ-P9; Tue, 27 Jun 2023 11:11:24 +0000 Received: by outflank-mailman (input) for mailman id 556075; Tue, 27 Jun 2023 11:11:23 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE6bT-00078S-TB for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 11:11:23 +0000 Received: from mail-lf1-x131.google.com (mail-lf1-x131.google.com [2a00:1450:4864:20::131]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 59cac562-14db-11ee-b237-6b7b168915f2; Tue, 27 Jun 2023 13:11:23 +0200 (CEST) Received: by mail-lf1-x131.google.com with SMTP id 2adb3069b0e04-4f9fdb0ef35so4089192e87.0 for ; Tue, 27 Jun 2023 04:11:23 -0700 (PDT) Received: from [127.0.0.1] ([90.187.110.129]) by smtp.gmail.com with ESMTPSA id m21-20020a7bcb95000000b003faabd8fcb8sm4411668wmi.46.2023.06.27.04.11.21 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Tue, 27 Jun 2023 04:11:21 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 59cac562-14db-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687864283; x=1690456283; h=content-transfer-encoding:mime-version:message-id:references :in-reply-to:subject:cc:to:from:date:from:to:cc:subject:date :message-id:reply-to; bh=CuduRVloJOVw7jW4g3I3eFfyX2ilk9akjT9KLl191qk=; b=TDoACJzckX9CCQtr3x+2iKY1Wpf9JPbZr9Tmac61Yrls/8jq1PEuy/0e16W9lYfBKt CX5uC1mt/uFzHpuLVDMX+61rxme4sPuE0PAaqkupSSyHq8aB9MClZQozkwR7L5EGQWEy Lbcr+F6YnU2wYx59+jPuZ3eXVie2PXbUGFqCRhU/xSPmq1lSAOpAlAgnVtE/DeH70WAU /xZGKCB9ZoLyyTdaKN/r8RwdrnBXuWjsXO1E0D5MHjNGYFjz1E4MIzxHi7PLFTd+tnQ8 iiHhNj44gPCUuQhFqEMr6iuOnpfzFDMq+/BRXnNnHFXgYCWTOxhKQrl9Haq8lcEdTA6s hypg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687864283; x=1690456283; h=content-transfer-encoding:mime-version:message-id:references :in-reply-to:subject:cc:to:from:date:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=CuduRVloJOVw7jW4g3I3eFfyX2ilk9akjT9KLl191qk=; b=GB0bK3I8A9Bcbr3Hk6hdXYm0+MTNSPFU6QJ1aC66h3C/V1ef8cv1vUUwp0H2HvvpFr 9HA5zKJryMOAOp4kpPpZ7av2RPhdf1dj8bYNoyOId89XF0wsuGjRmoljBrp/qVzQJFJd geYTjSQCfa5omRKBP/Q1YvPw6lQNynZn3U8zMB7pVzSSqLSE3dbBXQPGh8VFBOzo8YUm w0uqgOQGNLB+5A0xx0ow7EKpACtE5oYc36pd3h2GCv3EgAJH12IVSyktL+JJefyIS408 0TSJteuszKs68wbgJHKVWAkURoaPQjZZmqzbSnN3EUh6oCfxY5h1govaOUgSGVFk6fOy kj7g== X-Gm-Message-State: AC+VfDwnqgrE8pKf1FDVKE95j5KdGLBNgeAwtm1uI9nuqEkp4/S6xfD+ ciY+sTsrLGdijH9GJ/keGws= X-Google-Smtp-Source: ACHHUZ7J5RrJuR4cS5VYw9/2DPvrBv3doY3V0OY17oqYQcbyWh46th0VA2CJ3pt7g/atF7ipiMo3Fg== X-Received: by 2002:a05:6512:2090:b0:4fb:893a:d322 with SMTP id t16-20020a056512209000b004fb893ad322mr428099lfr.68.1687864282417; Tue, 27 Jun 2023 04:11:22 -0700 (PDT) Date: Tue, 27 Jun 2023 10:12:50 +0000 From: Bernhard Beschow To: qemu-devel@nongnu.org, Paolo Bonzini , Olaf Hering , John Snow CC: xen-devel@lists.xenproject.org, Stefano Stabellini Subject: Re: [PATCH v2] piix: fix regression during unplug in Xen HVM domUs In-Reply-To: References: <20210317070046.17860-1-olaf@aepfle.de> <4441d32f-bd52-9408-cabc-146b59f0e4dc@redhat.com> <20210325121219.7b5daf76.olaf@aepfle.de> <20230509225818.GA16290@aepfle.de> <20230626231901.5b5d11c1.olaf@aepfle.de> Message-ID: <5DB37FA5-41DF-4ED6-8C8A-CDDD6F276F42@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Am 27=2E Juni 2023 07:11:33 UTC schrieb Paolo Bonzini : >On 6/26/23 23:19, Olaf Hering wrote: >> I need advice on how to debug this=2E >>=20 >> One thing that stands out is uhci_irq()=2E >> It reads a u16 from the USBSTS register=2E >>=20 >> On the qemu side, this read is served from bmdma_read=2E Since the read >> size is 2, the result is ~0, and uhci_irq() turns the controller off=2E >> In other words, memory_region_ops_read from addr=3D0xc102 is served fro= m "piix-bmdma" >>=20 >> If the pci_set_word calls in piix_ide_reset are skipped, the read is >> served from uhci_port_write=2E This is the expected behavior=2E >> In other words, memory_region_ops_read from addr=3D0xc102 is served fro= m "uhci"=2E > >I think what's happening is that > > pci_set_byte(pci_conf + 0x20, 0x01); /* BMIBA: 20-23h */ > >is setting the BAR to 0xC100, therefore overlapping the UHCI device's reg= ion=2E In principle this line shouldn't be necessary at all though; it's e= nough to clear the COMMAND register=2E Interesting=2E The BAR is a 32 bit register whose default value is 0x00000= 001=2E I think what's supposed to happen here is a pci_set_long() rather th= an a pci_set_byte()=2E Bits 4=2E=2E15 represent the BAR address, and pci_set_byte() only clears b= its 4=2E=2E7, leaving bits 8=2E=2E15 unchanged=2E Perhaps this causes the B= AR to be moved into the UHCI region? Does changing the call to pci_set_long= () fix the problem? Best regards, Bernhard > >Can you check the value of the COMMAND register (pci_conf + 0x04, 16 bits= , little endian)? Something might be causing the register to be set back t= o a nonzero value, therefore re-enabling the I/O at the address that overla= ps the UHCI device=2E > >Paolo > > From xen-devel-bounces@lists.xenproject.org Tue Jun 27 11:30:21 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 11:30:21 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556083.868327 (Exim 4.92) (envelope-from ) id 1qE6th-0001mg-B8; Tue, 27 Jun 2023 11:30:13 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556083.868327; Tue, 27 Jun 2023 11:30:13 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE6th-0001mZ-7q; Tue, 27 Jun 2023 11:30:13 +0000 Received: by outflank-mailman (input) for mailman id 556083; Tue, 27 Jun 2023 11:30:11 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE6tf-0001mT-QT for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 11:30:11 +0000 Received: from bee.tesarici.cz (bee.tesarici.cz [2a03:3b40:fe:2d4::1]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id f971248d-14dd-11ee-b237-6b7b168915f2; Tue, 27 Jun 2023 13:30:10 +0200 (CEST) Received: from meshulam.tesarici.cz (dynamic-2a00-1028-83b8-1e7a-4427-cc85-6706-c595.ipv6.o2.cz [IPv6:2a00:1028:83b8:1e7a:4427:cc85:6706:c595]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (P-256) server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by bee.tesarici.cz (Postfix) with ESMTPSA id 0630888EE8; Tue, 27 Jun 2023 13:30:06 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: f971248d-14dd-11ee-b237-6b7b168915f2 Authentication-Results: mail.tesarici.cz; dmarc=fail (p=none dis=none) header.from=tesarici.cz DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=tesarici.cz; s=mail; t=1687865407; bh=PMTYuWEHp4RzWxSHWEhXWEo5d5MHLxZfnxLeMEnfGD4=; h=Date:From:To:Cc:Subject:In-Reply-To:References:From; b=pcG7sqNkBFFgow2Mmh7j1elzlR0/jjXSQNzKLduKGlzVYfZajP/QiJ4lkbDtFwJLi pESn5wq4anP0MZET52ZTEyNhiqUsxP6UEtpu4YIthoSaYFSns/v6oXVDnx7k0HKw2V fYAaQSUKIxmzf+4SjVZDWmH+40O4FvNXNR2gRt4a7LRHTWA5RAf9DfPWrmi6XJhYTD rriJpAd+AMIr+QRiWzJl6V91faWGK5BevB3Xt+t2O00J/1rFoj0fHl+yvxQGUd1PD2 VqpnCoIh+9t2srRILgq8MxkRXkjjqcpIMUU0TxphHFBmcdXdM+KPz3HUteGJKKi+tI tEwiLAN1YW+8Q== Date: Tue, 27 Jun 2023 13:30:06 +0200 From: Petr =?UTF-8?B?VGVzYcWZw61r?= To: Robin Murphy Cc: Greg Kroah-Hartman , Petr Tesarik , Stefano Stabellini , Thomas Bogendoerfer , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , "maintainer:X86 ARCHITECTURE (32-BIT AND 64-BIT)" , "H. Peter Anvin" , "Rafael J. Wysocki" , Juergen Gross , Oleksandr Tyshchenko , Christoph Hellwig , Marek Szyprowski , Andy Shevchenko , Hans de Goede , Jason Gunthorpe , Kees Cook , Saravana Kannan , "moderated list:XEN HYPERVISOR ARM" , "moderated list:ARM PORT" , open list , "open list:MIPS" , "open list:XEN SWIOTLB SUBSYSTEM" , Roberto Sassu , Kefeng Wang Subject: Re: [PATCH v3 1/7] swiotlb: make io_tlb_default_mem local to swiotlb.c Message-ID: <20230627133006.16ee11af@meshulam.tesarici.cz> In-Reply-To: <73f11258-1562-17c1-969e-b134dcb5f35c@arm.com> References: <2023062745-routing-palace-d0b4@gregkh> <73f11258-1562-17c1-969e-b134dcb5f35c@arm.com> X-Mailer: Claws Mail 4.1.1 (GTK 3.24.38; x86_64-suse-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Oops, originally sent only to Robin. Restoring the recipient list here... On Tue, 27 Jun 2023 11:55:00 +0100 Robin Murphy wrote: > On 27/06/2023 11:24 am, Greg Kroah-Hartman wrote: > > On Tue, Jun 27, 2023 at 11:54:23AM +0200, Petr Tesarik wrote: > >> +/** > >> + * is_swiotlb_active() - check if the software IO TLB is initialized > >> + * @dev: Device to check, or %NULL for the default IO TLB. > >> + */ > >> bool is_swiotlb_active(struct device *dev) > >> { > >> - struct io_tlb_mem *mem = dev->dma_io_tlb_mem; > >> + struct io_tlb_mem *mem = dev > >> + ? dev->dma_io_tlb_mem > >> + : &io_tlb_default_mem; > > > > That's impossible to read and maintain over time, sorry. > > > > Please use real "if () else" lines, so that it can be maintained over > > time. > > Moreover, it makes for a horrible interface anyway. If there's a need > for a non-specific "is SWIOTLB present at all?" check unrelated to any > particular device (which arguably still smells of poking into > implementation details...), please encapsulate it in its own distinct > helper like, say, is_swiotlb_present(void). I'm sorry for writing two replies, but I realized too late that this part is unrelated to the MIPS Octeon platform. Xen is the only user of an "is SWIOTLB present" interface. IIUC Xen needs bounce buffers for the PCI frontend driver, but if there is no other reason to have a SWIOTLB, the system does not set up one at boot. Yeah, they should probably do things differently. At least this code in arch/x86/kernel/pci-dma.c is fishy: /* XXX: this switches the dma ops under live devices! */ dma_ops = &xen_swiotlb_dma_ops; However, I don't think it's up to me to fix that... To sum it up, I can certainly provide a separate function instead of overloading the is_swiotlb_active() API. Thanks for the suggestion! Petr T From xen-devel-bounces@lists.xenproject.org Tue Jun 27 11:33:17 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 11:33:17 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556087.868337 (Exim 4.92) (envelope-from ) id 1qE6wT-0002LV-OG; Tue, 27 Jun 2023 11:33:05 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556087.868337; Tue, 27 Jun 2023 11:33:05 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE6wT-0002LO-LX; Tue, 27 Jun 2023 11:33:05 +0000 Received: by outflank-mailman (input) for mailman id 556087; Tue, 27 Jun 2023 11:33:03 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE6wR-0002LI-Km for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 11:33:03 +0000 Received: from mo4-p00-ob.smtp.rzone.de (mo4-p00-ob.smtp.rzone.de [81.169.146.218]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 5eb2448d-14de-11ee-8611-37d641c3527e; Tue, 27 Jun 2023 13:33:00 +0200 (CEST) Received: from sender by smtp.strato.de (RZmta 49.6.0 AUTH) with ESMTPSA id y5401az5RBWglIF (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256 bits)) (Client did not present a certificate); Tue, 27 Jun 2023 13:32:42 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 5eb2448d-14de-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; t=1687865562; cv=none; d=strato.com; s=strato-dkim-0002; b=JHvG/liOOg9x6bnQUkcNB+uwuHKGh19BHSc2yGolHCmpCFwyM8g+cf4fSLIGrYPcIQ 3zl9J56v0bksT6YYxzGc2W3LtPYwxVO+Zs0J1YhjEiY8GfKRUFBRqXtfJFGMCg05nlbe 4TXF0N/UXVkykrOYwwwXaCiKYRhsWarEC94uXqKMeGApd7ReA5NKGyrQ9c0cUAy4EOTH 9zYhp8eIHBGPmkWqKa6NO8RH51VvPMTKJqVWd2kTg2hWtFiDFcNYVYQTbmYZsA+61aAE imj/+hoV2GEICOIv/FR/WHCRH0sl11I+W+EjzKuP+QJX8H9Xqmu95QWpLu8uVw7jb0kc Rkdw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; t=1687865562; s=strato-dkim-0002; d=strato.com; h=References:In-Reply-To:Message-ID:Subject:Cc:To:From:Date:Cc:Date: From:Subject:Sender; bh=3wLDUR1nX20PA1ahDWpaygAfJBpRhBHco6snOa6yefU=; b=Pff1dk9aKUS7uTsYK9YBps7/+OabGa4UyCXeC274kjdOQFiM9jOJxti9Cl3qWrNIes 2pRI9IIUJ06WXXz1oAPlXDk8datpiYAFw8gsylcAZ565s4gBhOHMumKDe2IRRgOdvfbF glfDrVxJoc6tKG0CKoveHrtQFKDtEXy+08zloJtGTydraFc17Wx3TdW63fd7M3G3qC4K M6j/qyrDwwqWYNEOian0QwooYM7Wq3s3gst0N7ecrn1iII3hEs4tTBG3k/x/SZG+SkhT +YgjqsJ+uUXGDfchK3xPjtPiT+RxZ/lO5ES3oW5YQSON5WsZBZfRPN366A6h9XeplfJ5 ktGw== ARC-Authentication-Results: i=1; strato.com; arc=none; dkim=none X-RZG-CLASS-ID: mo00 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; t=1687865562; s=strato-dkim-0002; d=aepfle.de; h=References:In-Reply-To:Message-ID:Subject:Cc:To:From:Date:Cc:Date: From:Subject:Sender; bh=3wLDUR1nX20PA1ahDWpaygAfJBpRhBHco6snOa6yefU=; b=HialoChl9s6Ch3YWMLvvcUSZ0m95Wzq3PsoRwJPTv2DWMjx14jpopvL7CtUEDAcCwZ jzNvCZK63rrgvs0HBNx2FDfg44Q0Q2xEvH55rCuBW3YaBEz7TPazUOyjAF0IkOaFzXT3 /hSZIPB9PaxD89PR6HIsVAhEOCNa/fnX8H/PzmCOgdVaqIsTKFaF/SLO/QmPSlYRUihv X9H2BGqeDjsZ0pwJRmORh/T7ZcxDv9DcehQ0AYLF4TEA/pCqDjMjJZ+m8frcjiJA8FCZ hJQiZt+N0R87MP1h2bGeHuOwWC5zWFoqvTEVXL+i5NpfJhjjb1k4xAo5sPz3J/AxlnkU 4f4w== DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; t=1687865562; s=strato-dkim-0003; d=aepfle.de; h=References:In-Reply-To:Message-ID:Subject:Cc:To:From:Date:Cc:Date: From:Subject:Sender; bh=3wLDUR1nX20PA1ahDWpaygAfJBpRhBHco6snOa6yefU=; b=jUs35QFYM0UDsF3kErXrKoeYeOdy/tHUl251QMJjmDdApYUsQCVK8SnoFwdxpDwqXM nSng0EHsy7BbFM1iT0Aw== X-RZG-AUTH: ":P2EQZWCpfu+qG7CngxMFH1J+3q8wa/QLpd5ylWvMDX3y/OuD5rXWiuRyeUQh3GC6w0BTiV2X9kN/WAr0rdTE7oY1qJzPNA==" Date: Tue, 27 Jun 2023 13:32:34 +0200 From: Olaf Hering To: Paolo Bonzini , John Snow Cc: xen-devel@lists.xenproject.org, Stefano Stabellini , qemu-devel@nongnu.org Subject: Re: [PATCH v2] piix: fix regression during unplug in Xen HVM domUs Message-ID: <20230627133234.400a2ec7.olaf@aepfle.de> In-Reply-To: <20230626231901.5b5d11c1.olaf@aepfle.de> References: <20210317070046.17860-1-olaf@aepfle.de> <4441d32f-bd52-9408-cabc-146b59f0e4dc@redhat.com> <20210325121219.7b5daf76.olaf@aepfle.de> <20230509225818.GA16290@aepfle.de> <20230626231901.5b5d11c1.olaf@aepfle.de> X-Mailer: Claws Mail 20230601T090920.68bc28c0 hat ein Softwareproblem, kann man nichts machen. MIME-Version: 1.0 Content-Type: multipart/signed; boundary="Sig_/FGoC2=mDpSn8iKH.kGPuoRS"; protocol="application/pgp-signature"; micalg=pgp-sha256 Content-Transfer-Encoding: 7bit --Sig_/FGoC2=mDpSn8iKH.kGPuoRS Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: quoted-printable Mon, 26 Jun 2023 23:19:01 +0200 Olaf Hering : > So far I was unable to decipher how the pci_set_word calls can > possibly affect the outcome and the owner of memory_region_ops_read. It is enough to return from piix_ide_reset right after pci_set_word(pci_conf + PCI_COMMAND, 0) to trigger the issue. One thing which was not mentioned yet: the order in which kernel drivers are loaded matters. Usually it is xen-platform-pci/uhci-hcd/ata_piix. When uhci loads, it scans the USB bus, finds the tablet, loads usbhid. While this happens, ata_piix loads. It finds the PCI device in state disabled. The PCI code enables the device. On the qemu side this ends up in pci_default_write_config for PCI device "piix3-ide" with addr=3D4, val=3D1, len=3D2. This calls pci_update_mappings, which for region #4 changes the addr from 0xc120 to 0xc100. This causes the issue. Now usbhid tries to use the USB bus, but uhci_irq fails. If ata_piix is not loaded, uhci works. If ata_piix is loaded before uhci-hcd, the USB bus can not be scanned, udev is killed after a timeout and boot proceeds. If usbhid is loaded before ata_piix, USB bus discovery usually finishes before ata_piix enables its PCI device, boot proceeds. Olaf --Sig_/FGoC2=mDpSn8iKH.kGPuoRS Content-Type: application/pgp-signature Content-Description: Digitale Signatur von OpenPGP -----BEGIN PGP SIGNATURE----- iQIzBAEBCAAdFiEE97o7Um30LT3B+5b/86SN7mm1DoAFAmSayNIACgkQ86SN7mm1 DoBqPA//dGvrfziGG00PI5ukQu5SnCSppRsgQehXnpEajUx7U9nGEVo3TW9+gGVq TuPxxstwUwZkmrfAIwKTX32LEGlDswOt7+mzDruAR4mmdwu3B1niqdyFwFRlwRCc cdMSesNCwhUBxcvdYCofmwurVJhGccEpGWbttXcSTqF6bQztDds3N2b9n1ixwVkW tHLcuOpTUC8i+sWe26w4MuVQF0A/aYKmIMw4WU5RcDFcAjQWrmb5qcOe6/HIWGW/ N0WBkBy90DkAOEIV9l1jeSVoy5E2Lhrhp0nyR0srPH+RCu8ELQ771mTYQ4co0Duf CZcXRsji3yI8PL2g514tJGbsEsn7ZgOEbtDKoqUizi3VhaumRpZCAoKTG8VnYVd0 qrw/X4aAU9cH3LL5qxBMsoMEntjmK5+dbZf7iDwQ2QitSsIPWONN/X9KJMV8vmuv hRxPV+JuQ2qLW8ynMictmd24LhQzDwsFIXktk4NCDdvfXnOJMXH8i2ppgsG7yf3v CnbgJ+U2bVc0c9+z/F4Cc9Yd6psdb9m8OCcV9hd5aMloJnJ9gB9xJI/oiaXj8LKR y6nTuN4vp/jEwh4/sQ2qhGhsDurGpJPIcYGieWnKQzPYnRsl1ZjZyvTX/aOvnhPG Cp6KHHdCxSv4K4BIVyLaAArluBIi/MuT1uuXEWGi9BFDsWgk5pY= =lOjw -----END PGP SIGNATURE----- --Sig_/FGoC2=mDpSn8iKH.kGPuoRS-- From xen-devel-bounces@lists.xenproject.org Tue Jun 27 11:40:51 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 11:40:51 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556093.868346 (Exim 4.92) (envelope-from ) id 1qE73t-0003rq-HC; Tue, 27 Jun 2023 11:40:45 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556093.868346; Tue, 27 Jun 2023 11:40:45 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE73t-0003rj-EO; Tue, 27 Jun 2023 11:40:45 +0000 Received: by outflank-mailman (input) for mailman id 556093; Tue, 27 Jun 2023 11:40:44 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE73s-0003rd-Rk for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 11:40:44 +0000 Received: from mo4-p01-ob.smtp.rzone.de (mo4-p01-ob.smtp.rzone.de [85.215.255.52]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 71e29d15-14df-11ee-8611-37d641c3527e; Tue, 27 Jun 2023 13:40:41 +0200 (CEST) Received: from sender by smtp.strato.de (RZmta 49.6.0 AUTH) with ESMTPSA id y5401az5RBeUlKX (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256 bits)) (Client did not present a certificate); Tue, 27 Jun 2023 13:40:30 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 71e29d15-14df-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; t=1687866030; cv=none; d=strato.com; s=strato-dkim-0002; b=Oycm2VcwANSg283vPXjXFfOfEYI4mX0rMOypTsUMKITbLIxtoMVdkMT5w0TDfKIvMn x1FhfV+McbAw8YQfrEgz2xHHzwPw60cXsCHOkvFDiSAsw/Nz4XpWeksBB1xjcu+lzWAQ yyvFShfwWzVnkh2mB6iI3GF4OA6HDSWLzQr6aYm4RihtQsDA6tnjzsWcfaLkfTUD7St3 p067LJRqj6unJBmnQAsELGBgoSrE8kUmp26zdLwX3pTRi/KjSMhlzgtsTE4AjQBnOlht 3LAOxV1so8t4Pdvps97y73bu6UaTjHLWNJtz2wATTQIPfxGN0O97gDV33sBRarc4PlY2 9swQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; t=1687866030; s=strato-dkim-0002; d=strato.com; h=References:In-Reply-To:Message-ID:Subject:Cc:To:From:Date:Cc:Date: From:Subject:Sender; bh=7r7Vjrw1pT3+QPmalZ8Jntj7FY0ixbMGjMuzuV9qPEE=; b=sDwbQu/UIoacr023i8yOcxth2qqqPqSSNFo7V6umDgYLvI5U9KlWTjq02Iptzk4qPi W1t3wFRIMWnpi/REvbgA/c6o/3bGpOZfrFt8lL65ymiVvjN+Euy6Q4WJttjtbWtAKxMF Nd0jW3jPv6IM3pXgvF5V4bcmYN202jSZbMf4+1hNbl1ERewX9cGfmBGeSxgbgGym6agW LR6MX3sjiJzu2pgve8XHJwVjoeNN5KEdUacIEqDT3erjMRhWVZSpzkSo+cQik2SJvHZP bpHRK3J0xWYC2qJxUN+t9TkLT2WoaJGJyFs/1qAI29JbcpMP64Nidhm2V+uyJipJ9+mh ZCXw== ARC-Authentication-Results: i=1; strato.com; arc=none; dkim=none X-RZG-CLASS-ID: mo01 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; t=1687866030; s=strato-dkim-0002; d=aepfle.de; h=References:In-Reply-To:Message-ID:Subject:Cc:To:From:Date:Cc:Date: From:Subject:Sender; bh=7r7Vjrw1pT3+QPmalZ8Jntj7FY0ixbMGjMuzuV9qPEE=; b=WJjTwo9I+vTHWQ9zk2BvfgEJ/1POJVlt8n3H0L3heQDE3YJvzYDjU05fPj8B9eLYKd 8fGSJts2F2TUzLGkZv/RQG97iM+a6hVP+YCkFlto8xEDcKiXiAlZ/42GsfrqfJxD+NrO KI+xQGQT185Vp330AiLMn8AkqxpURoV13elk4maxWWKgDxO0aC407E/J11+hJZ0TjhTC GB/POTA70mKJaWk/qi+lpXk+Aa828duBDvrillbJZptKSLBPAcNuqJKAWY5Z+iPPoAlL u18q9kVc7DdRthevphTCIvmVE/ptZRjgVxhRkfliRvFkm9gmJacEy+hvATfXJl3YOg5h t8jQ== DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; t=1687866030; s=strato-dkim-0003; d=aepfle.de; h=References:In-Reply-To:Message-ID:Subject:Cc:To:From:Date:Cc:Date: From:Subject:Sender; bh=7r7Vjrw1pT3+QPmalZ8Jntj7FY0ixbMGjMuzuV9qPEE=; b=U2LFzJk8D3WdR4FR4eO2htNO+6bCj49iMYTpAXye4lZs8R4VIt2NNhoBPz5B5UVIiQ SI2ngtioGjUY1dC4ESCg== X-RZG-AUTH: ":P2EQZWCpfu+qG7CngxMFH1J+3q8wa/QLpd5ylWvMDX3y/OuD5rXWiuRyeUQh3GC6w0BTiV2X9kN/WAr0rdTE7oY1qJzPNA==" Date: Tue, 27 Jun 2023 13:40:28 +0200 From: Olaf Hering To: Bernhard Beschow Cc: qemu-devel@nongnu.org, Paolo Bonzini , John Snow , xen-devel@lists.xenproject.org, Stefano Stabellini Subject: Re: [PATCH v2] piix: fix regression during unplug in Xen HVM domUs Message-ID: <20230627134028.648924f4.olaf@aepfle.de> In-Reply-To: <5DB37FA5-41DF-4ED6-8C8A-CDDD6F276F42@gmail.com> References: <20210317070046.17860-1-olaf@aepfle.de> <4441d32f-bd52-9408-cabc-146b59f0e4dc@redhat.com> <20210325121219.7b5daf76.olaf@aepfle.de> <20230509225818.GA16290@aepfle.de> <20230626231901.5b5d11c1.olaf@aepfle.de> <5DB37FA5-41DF-4ED6-8C8A-CDDD6F276F42@gmail.com> X-Mailer: Claws Mail 20230601T090920.68bc28c0 hat ein Softwareproblem, kann man nichts machen. MIME-Version: 1.0 Content-Type: multipart/signed; boundary="Sig_/JIfyy9HKszghr4sGGJ93kPh"; protocol="application/pgp-signature"; micalg=pgp-sha256 Content-Transfer-Encoding: 7bit --Sig_/JIfyy9HKszghr4sGGJ93kPh Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: quoted-printable Tue, 27 Jun 2023 10:12:50 +0000 Bernhard Beschow : > Bits 4..15 represent the BAR address, and pci_set_byte() only clears bits= 4..7, leaving bits 8..15 unchanged. Perhaps this causes the BAR to be move= d into the UHCI region? Does changing the call to pci_set_long() fix the pr= oblem? Thanks, it seems this fixes the issue. Let me verify this with a clean buil= d. Olaf --Sig_/JIfyy9HKszghr4sGGJ93kPh Content-Type: application/pgp-signature Content-Description: Digitale Signatur von OpenPGP -----BEGIN PGP SIGNATURE----- iQIzBAEBCAAdFiEE97o7Um30LT3B+5b/86SN7mm1DoAFAmSayqwACgkQ86SN7mm1 DoCD2A//eY3W0UJDn5/pvvsnpT3NQHRDbW9+K55otIvepS72amDYfnZOvZi+hSzy gUqcSYMOLbanHOtV6OQgWfj18tCAZ7CpQ5qGK3kjtvPJ8TLJnzMKsgNTS4Kmzse0 Z3jJ2tJVMsDS5in5dDrsSHvLVGbb/Kcm3mCCl/ahf6nbqYmqJ2MO8IF0Td2khWH8 tX79p/cANEpNJIriCRb/hiNnuvlQr7WF6HxvaYPMibtyH4bE9FehV9maOWIMwnw5 GeAqSbr5xVRbw4bT3xKaw95cRi1gwLqWVr6QOWI7kbMSL/lPvwLXyLDTfSCh7iXj H95TwjniQwHW7hKG1+NRSaEPh5AzFDKbQzmJPjC5x+CS1iN8ud4vAknihMn8qDu1 vMyMAi3xsYcrS7DuDrXbcfygSS/yGbU3ejflwQqdgOPBJhBqLbpeQ3VmjiCURpSp 21/pZJvvHkwn9Y9qdC2FjtkM13cxMgKIqk00dVYtmdaFwSgA0F5+aj75JUhWxeIF uiwBMJR0IsIP+1CmxfF9jJQiJhMe88oWBEiYpakqkxuYzGaGqoG+eGD5+LMnqOEH y7eQCwAjXZBpjb28qQE1oVR3nRRiDyE5vLUu8iqlZ+7ho/YV917vVd43szD44xH0 GIF1t8AJ9dldDHXtPijpIT7ngD9v4PhcujxmPK9EplU/w5ggdbc= =8mEl -----END PGP SIGNATURE----- --Sig_/JIfyy9HKszghr4sGGJ93kPh-- From xen-devel-bounces@lists.xenproject.org Tue Jun 27 12:08:24 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 12:08:24 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556110.868357 (Exim 4.92) (envelope-from ) id 1qE7UN-0006eE-UX; Tue, 27 Jun 2023 12:08:07 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556110.868357; Tue, 27 Jun 2023 12:08:07 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE7UN-0006e7-Rr; Tue, 27 Jun 2023 12:08:07 +0000 Received: by outflank-mailman (input) for mailman id 556110; Tue, 27 Jun 2023 12:08:06 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE7UL-0006e1-Rw for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 12:08:06 +0000 Received: from mo4-p01-ob.smtp.rzone.de (mo4-p01-ob.smtp.rzone.de [81.169.146.167]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 44e66638-14e3-11ee-b237-6b7b168915f2; Tue, 27 Jun 2023 14:08:04 +0200 (CEST) Received: from sender by smtp.strato.de (RZmta 49.6.0 AUTH) with ESMTPSA id y5401az5RC7qlTW (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256 bits)) (Client did not present a certificate); Tue, 27 Jun 2023 14:07:52 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 44e66638-14e3-11ee-b237-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; t=1687867672; cv=none; d=strato.com; s=strato-dkim-0002; b=Z5J84F76Y2pHDpWAhgTn6P9MzSnJwW7BZNFyhgbvF6ZKXCmKqpanCgWh+Tha+o8p6H la1V6F6y0Zv+UOAGS8FH6T7gqGtDruj/jASYfp+kxJx0PuqOoBDQ9YAGO2XHDWV7jgNi mmUm36um7yIr3HAkRoKij37ivmC//79pvApzPsqJOLUjF9PrzcLkXcbTzT32OLmweLRf U5j89NZtEHb3KBoSo6utv1kyk/K6WtZVWkti94estXLkVBOY56D1y6G1lJAto/viK1+M lzyt1wgRogpKImbzv/mibhPgH/D2dsiszn3NbcT5MgBoaLkw9V5VvgRCFCFZvMts0Kr/ UUFg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; t=1687867672; s=strato-dkim-0002; d=strato.com; h=References:In-Reply-To:Message-ID:Subject:Cc:To:From:Date:Cc:Date: From:Subject:Sender; bh=tx8S908wrSoiDBE8MNdPbWlWFv0DUqhlBPowJD3iDxY=; b=A+LQU8cNhOkdi5EoI3u4TaM9wEhatrZovAwl2zaByL+6NzgBh64Xy9CIos/qj+IsTp 22/sDF4KE0Z3JxrWYkLUe0LZIcy8O1GqvxAOoJneoq+t4wEu5HoP1SjgW0wOM6O5uACY 4thS931rEL93JKJ8slvlsc5EQ8OUBkxUuSf8co9qpVlxLZxjQ34mVMqfw6hh0Yu96CPD CNVfKGy6mVbcI8DhC9UKnsVXP5FgIwiCHzD/BL7tNo13HoXf5qZnzmWFKrJrPf494X5d A5cwHz2qjEX59s7DekEzcEwIv2XbJ3QGR2i37jzS94JkFlweHPw7TWnk45HGLw2JUUYc IAnQ== ARC-Authentication-Results: i=1; strato.com; arc=none; dkim=none X-RZG-CLASS-ID: mo01 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; t=1687867672; s=strato-dkim-0002; d=aepfle.de; h=References:In-Reply-To:Message-ID:Subject:Cc:To:From:Date:Cc:Date: From:Subject:Sender; bh=tx8S908wrSoiDBE8MNdPbWlWFv0DUqhlBPowJD3iDxY=; b=LTGZ8IIDUZBcJg+kznzXi/ilPFivPQ1cekWdtvb1EpOp+IPn29VhdfSyyCK+A3U8lw jO7RgR0rSdHefHA9/C4oLAF0zEdR/WH67K3dR/tqWMaNul6ugMt7u9/dWXcVg9Xgyxv0 9fHxSJaoAZwYgSDi1Nq1n++OlsCwxPhjdms43poCxCQZQT2bBsd6U6AxPJqZyqThZ+RF IytYm/eEjFAvz7lWQ2ZLl/3jx7t8/dT4QG+YAmCoffOBK7X/L1L/XI80i48iQE9GD9Y6 igKNdn+NwAj/kYPpcBzpT3/Dpf/PBgYftql14+I5l+VaHIpHObXVPnnTz5G7gZYXm0TD on7A== DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; t=1687867672; s=strato-dkim-0003; d=aepfle.de; h=References:In-Reply-To:Message-ID:Subject:Cc:To:From:Date:Cc:Date: From:Subject:Sender; bh=tx8S908wrSoiDBE8MNdPbWlWFv0DUqhlBPowJD3iDxY=; b=P4uUlc5zpulTSMQrewpzWItDt5YZulGrPs3FvKjFCffo+f8/z9S/XpBgRwVpBR1oaR WqbdLpKtfMTo8GH897Cw== X-RZG-AUTH: ":P2EQZWCpfu+qG7CngxMFH1J+3q8wa/QLpd5ylWvMDX3y/OuD5rXWiuRyeUQh3GC6w0BTiV2X9kN/WAr0rdTE7oY1qJzPNA==" Date: Tue, 27 Jun 2023 14:07:40 +0200 From: Olaf Hering To: Bernhard Beschow Cc: qemu-devel@nongnu.org, Paolo Bonzini , John Snow , xen-devel@lists.xenproject.org, Stefano Stabellini Subject: Re: [PATCH v2] piix: fix regression during unplug in Xen HVM domUs Message-ID: <20230627140740.2736f6e8.olaf@aepfle.de> In-Reply-To: <5DB37FA5-41DF-4ED6-8C8A-CDDD6F276F42@gmail.com> References: <20210317070046.17860-1-olaf@aepfle.de> <4441d32f-bd52-9408-cabc-146b59f0e4dc@redhat.com> <20210325121219.7b5daf76.olaf@aepfle.de> <20230509225818.GA16290@aepfle.de> <20230626231901.5b5d11c1.olaf@aepfle.de> <5DB37FA5-41DF-4ED6-8C8A-CDDD6F276F42@gmail.com> X-Mailer: Claws Mail 20230601T090920.68bc28c0 hat ein Softwareproblem, kann man nichts machen. MIME-Version: 1.0 Content-Type: multipart/signed; boundary="Sig_/1+315bbqjMVp=z=Vx.W5NN2"; protocol="application/pgp-signature"; micalg=pgp-sha256 Content-Transfer-Encoding: 7bit --Sig_/1+315bbqjMVp=z=Vx.W5NN2 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: quoted-printable Tue, 27 Jun 2023 10:12:50 +0000 Bernhard Beschow : > The BAR is a 32 bit register whose default value is 0x00000001. I think w= hat's supposed to happen here is a pci_set_long() rather than a pci_set_byt= e(). Indeed, the u32 at that address changes from c121 to c101 with the current = code. Olaf --Sig_/1+315bbqjMVp=z=Vx.W5NN2 Content-Type: application/pgp-signature Content-Description: Digitale Signatur von OpenPGP -----BEGIN PGP SIGNATURE----- iQIzBAEBCAAdFiEE97o7Um30LT3B+5b/86SN7mm1DoAFAmSa0QwACgkQ86SN7mm1 DoCGbg/+KP49nafrg8nrPI64mYG580E7pJzqqzgHClvUn7NqE+jBpQ+P3rom9Yxo 5sUx/U8WVYHF8NJM4Hyik3nbpIUindEmg6Y4hBFOSC+rHB+XFzjpnsudno5YDWKh AEFFXEIbzA2ckQJ6/Vu4EZ/8zDKA8C6HY5yGhICk25X5ESFfkJG5sKcrmfB/MhIQ UOOsrWkk3fV+xBHW8U94+P6zSJ8UMEHHick1pP/csIrK1VqUgPcg+nLL/JI5oCiS XqzzQvEsp7H+tq1q42syxXytNtdAoOJ9kTI0/teKOUqykwJwEHLIGxM40KGO1ZWM DY6XcPZAiRmrhHqaMw+Z/4ilcRyn5a8yY8uZZqF7b8jYIRUgMCYeqJY8ZyzjRiJt +M8uRzcM5lotYjv3+bNEOlfhKWZ4uzxNlSsg3At1Yolw1LbtoRtOE+I1Q2up2EZM JpDjaxcnUalJa9NdbCElgd3gM6fATSb5W/wDhm71NiJ0BK/8WHuoLLArFma47GcD 7vBaFl0fMTXsMeabH2eFP4cg0KgeUzK76SvQn2YaAkThUZTwvXvdMqq3vTuRsG1m F4JS+2smXhFv3N2lXBSyWqyi8rU/y3sI/e22BTKpsh1AE41nqIVIIMyr0xoHXBwX HTaYjY/jGdSJz8yeBZFwo9/pHrpu3wG3yqCDz0LA55zWtwcZbD4= =WuKj -----END PGP SIGNATURE----- --Sig_/1+315bbqjMVp=z=Vx.W5NN2-- From xen-devel-bounces@lists.xenproject.org Tue Jun 27 12:28:18 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 12:28:18 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556119.868376 (Exim 4.92) (envelope-from ) id 1qE7nf-0000vg-Qq; Tue, 27 Jun 2023 12:28:03 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556119.868376; Tue, 27 Jun 2023 12:28:03 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE7nf-0000vZ-Ns; Tue, 27 Jun 2023 12:28:03 +0000 Received: by outflank-mailman (input) for mailman id 556119; Tue, 27 Jun 2023 12:28:02 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE7ne-0000v0-AG for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 12:28:02 +0000 Received: from smtp-out1.suse.de (smtp-out1.suse.de [2001:67c:2178:6::1c]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 0d0004b8-14e6-11ee-8611-37d641c3527e; Tue, 27 Jun 2023 14:27:59 +0200 (CEST) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by smtp-out1.suse.de (Postfix) with ESMTPS id B1BF821887; Tue, 27 Jun 2023 12:27:58 +0000 (UTC) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id 74F0E13462; Tue, 27 Jun 2023 12:27:58 +0000 (UTC) Received: from dovecot-director2.suse.de ([192.168.254.65]) by imap2.suse-dmz.suse.de with ESMTPSA id s4b7Gs7VmmQ0SAAAMHmgww (envelope-from ); Tue, 27 Jun 2023 12:27:58 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 0d0004b8-14e6-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1; t=1687868878; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=W8JQBKjxhniaE/zxcvmS+z9dFa/XBunKMQ4z3sK0ltY=; b=dI6hkgyC+J6T/bu9T6u67G7T5QDTGGnb3FQ8f3ZJh1b3yuEBFux4rXRAaLOn3Az3GLprPj 5GhV7mYYhD1LHlQDy+MBCxVv01no491R8uPmmzK3N2L0EBLECVp+HbYk3HrvjOSQC3V3Ys nxOye7hzlyFycf93taGbHdq869eDO6Y= From: Juergen Gross To: xen-devel@lists.xenproject.org Cc: Juergen Gross , Wei Liu , Julien Grall , Anthony PERARD , Julien Grall Subject: [PATCH v4 1/5] tools/xenstore: remove no longer needed functions from xs_lib.c Date: Tue, 27 Jun 2023 14:27:46 +0200 Message-Id: <20230627122750.2007-2-jgross@suse.com> X-Mailer: git-send-email 2.35.3 In-Reply-To: <20230627122750.2007-1-jgross@suse.com> References: <20230627122750.2007-1-jgross@suse.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit xs_daemon_tdb() in xs_lib.c is no longer used at all, so it can be removed. xs_domain_dev() and xs_write_all() are not used by xenstored, so they can be moved to tools/libs/store/xs.c. xs_daemon_rootdir() is used by xenstored only and it only calls xs_daemon_rundir(), so replace its use cases with xs_daemon_rundir() and remove it from xs_lib.c. xs_daemon_socket_ro() is needed in libxenstore only, so move it to tools/libs/store/xs.c. Move functions used by xenstore-client only to xenstore_client.c. Signed-off-by: Juergen Gross Acked-by: Julien Grall --- V2: - move xs_write_all(), too V3: - remove xs_daemon_rootdir(), move xs_daemon_socket_ro() --- tools/include/xenstore.h | 3 + tools/include/xenstore_lib.h | 3 - tools/libs/store/xs.c | 43 ++++++++ tools/xenstore/xenstore_client.c | 129 ++++++++++++++++++++++ tools/xenstore/xenstored_control.c | 4 +- tools/xenstore/xenstored_core.c | 3 +- tools/xenstore/xs_lib.c | 166 ----------------------------- tools/xenstore/xs_lib.h | 19 ---- 8 files changed, 178 insertions(+), 192 deletions(-) diff --git a/tools/include/xenstore.h b/tools/include/xenstore.h index 2b3f69fb61..a442252849 100644 --- a/tools/include/xenstore.h +++ b/tools/include/xenstore.h @@ -113,6 +113,9 @@ void *xs_read(struct xs_handle *h, xs_transaction_t t, bool xs_write(struct xs_handle *h, xs_transaction_t t, const char *path, const void *data, unsigned int len); +/* Simple write function: loops for you. */ +bool xs_write_all(int fd, const void *data, unsigned int len); + /* Create a new directory. * Returns false on failure, or success if it already exists. */ diff --git a/tools/include/xenstore_lib.h b/tools/include/xenstore_lib.h index 2266009ec1..43eec87379 100644 --- a/tools/include/xenstore_lib.h +++ b/tools/include/xenstore_lib.h @@ -47,9 +47,6 @@ const char *xs_daemon_rundir(void); const char *xs_daemon_socket(void); const char *xs_daemon_socket_ro(void); -/* Simple write function: loops for you. */ -bool xs_write_all(int fd, const void *data, unsigned int len); - /* Convert strings to permissions. False if a problem. */ bool xs_strings_to_perms(struct xs_permissions *perms, unsigned int num, const char *strings); diff --git a/tools/libs/store/xs.c b/tools/libs/store/xs.c index 76ffb1be45..bb93246bfb 100644 --- a/tools/libs/store/xs.c +++ b/tools/libs/store/xs.c @@ -311,6 +311,26 @@ struct xs_handle *xs_domain_open(void) return xs_open(0); } +static const char *xs_domain_dev(void) +{ + char *s = getenv("XENSTORED_PATH"); + if (s) + return s; +#if defined(__RUMPUSER_XEN__) || defined(__RUMPRUN__) + return "/dev/xen/xenbus"; +#elif defined(__linux__) + if (access("/dev/xen/xenbus", F_OK) == 0) + return "/dev/xen/xenbus"; + return "/proc/xen/xenbus"; +#elif defined(__NetBSD__) + return "/kern/xen/xenbus"; +#elif defined(__FreeBSD__) + return "/dev/xen/xenstore"; +#else + return "/dev/xen/xenbus"; +#endif +} + struct xs_handle *xs_open(unsigned long flags) { struct xs_handle *xsh = NULL; @@ -431,6 +451,24 @@ out_false: #ifdef XSTEST #define read_all read_all_choice #define xs_write_all write_all_choice +#else +/* Simple routine for writing to sockets, etc. */ +bool xs_write_all(int fd, const void *data, unsigned int len) +{ + while (len) { + int done; + + done = write(fd, data, len); + if (done < 0 && errno == EINTR) + continue; + if (done <= 0) + return false; + data += done; + len -= done; + } + + return true; +} #endif static int get_error(const char *errorstring) @@ -1328,6 +1366,11 @@ error: return ret; } +const char *xs_daemon_socket_ro(void) +{ + return xs_daemon_socket(); +} + #ifdef USE_PTHREAD static void *read_thread(void *arg) { diff --git a/tools/xenstore/xenstore_client.c b/tools/xenstore/xenstore_client.c index de788b3e0a..27fda81401 100644 --- a/tools/xenstore/xenstore_client.c +++ b/tools/xenstore/xenstore_client.c @@ -8,6 +8,7 @@ * */ +#include #include #include #include @@ -40,12 +41,140 @@ enum mode { MODE_watch, }; +/* Sanitising (quoting) possibly-binary strings. */ +struct expanding_buffer { + char *buf; + int avail; +}; + static char *output_buf = NULL; static int output_pos = 0; static struct expanding_buffer ebuf; static int output_size = 0; +/* Ensure that given expanding buffer has at least min_avail characters. */ +static char *expanding_buffer_ensure(struct expanding_buffer *ebuf, + int min_avail) +{ + int want; + char *got; + + if ( ebuf->avail >= min_avail ) + return ebuf->buf; + + if ( min_avail >= INT_MAX/3 ) + return 0; + + want = ebuf->avail + min_avail + 10; + got = realloc(ebuf->buf, want); + if ( !got ) + return 0; + + ebuf->buf = got; + ebuf->avail = want; + return ebuf->buf; +} + +/* sanitise_value() may return NULL if malloc fails. */ +static char *sanitise_value(struct expanding_buffer *ebuf, + const char *val, unsigned len) +{ + int used, remain, c; + unsigned char *ip; + +#define ADD(c) (ebuf->buf[used++] = (c)) +#define ADDF(f,c) (used += sprintf(ebuf->buf+used, (f), (c))) + + assert(len < INT_MAX/5); + + ip = (unsigned char *)val; + used = 0; + remain = len; + + if ( !expanding_buffer_ensure(ebuf, remain + 1) ) + return NULL; + + while ( remain-- > 0 ) + { + c= *ip++; + + if ( c >= ' ' && c <= '~' && c != '\\' ) + { + ADD(c); + continue; + } + + if ( !expanding_buffer_ensure(ebuf, used + remain + 5) ) + /* for "\\nnn\0" */ + return 0; + + ADD('\\'); + switch (c) + { + case '\t': ADD('t'); break; + case '\n': ADD('n'); break; + case '\r': ADD('r'); break; + case '\\': ADD('\\'); break; + default: + if ( c < 010 ) ADDF("%03o", c); + else ADDF("x%02x", c); + } + } + + ADD(0); + assert(used <= ebuf->avail); + return ebuf->buf; + +#undef ADD +#undef ADDF +} + +/* *out_len_r on entry is ignored; out must be at least strlen(in)+1 bytes. */ +static void unsanitise_value(char *out, unsigned *out_len_r, const char *in) +{ + const char *ip; + char *op; + unsigned c; + int n; + + for ( ip = in, op = out; (c = *ip++); *op++ = c ) + { + if ( c == '\\' ) + { + c = *ip++; + +#define GETF(f) do \ +{ \ + n = 0; \ + sscanf(ip, f "%n", &c, &n); \ + ip += n; \ +} while ( 0 ) + + switch ( c ) + { + case 't': c= '\t'; break; + case 'n': c= '\n'; break; + case 'r': c= '\r'; break; + case '\\': c= '\\'; break; + case 'x': GETF("%2x"); break; + case '0': case '4': + case '1': case '5': + case '2': case '6': + case '3': case '7': --ip; GETF("%3o"); break; + case 0: --ip; break; + default:; + } +#undef GETF + } + } + + *op = 0; + + if ( out_len_r ) + *out_len_r = op - out; +} + /* make sure there is at least 'len' more space in output_buf */ static void expand_buffer(size_t len) { diff --git a/tools/xenstore/xenstored_control.c b/tools/xenstore/xenstored_control.c index ed80924ee4..6ef800ff64 100644 --- a/tools/xenstore/xenstored_control.c +++ b/tools/xenstore/xenstored_control.c @@ -560,7 +560,7 @@ static FILE *lu_dump_open(const void *ctx) char *filename; int fd; - filename = talloc_asprintf(ctx, "%s/state_dump", xs_daemon_rootdir()); + filename = talloc_asprintf(ctx, "%s/state_dump", xs_daemon_rundir()); if (!filename) return NULL; @@ -583,7 +583,7 @@ static void lu_get_dump_state(struct lu_dump_state *state) state->size = 0; state->filename = talloc_asprintf(NULL, "%s/state_dump", - xs_daemon_rootdir()); + xs_daemon_rundir()); if (!state->filename) barf("Allocation failure"); diff --git a/tools/xenstore/xenstored_core.c b/tools/xenstore/xenstored_core.c index 07fbac55ac..a78cbf1116 100644 --- a/tools/xenstore/xenstored_core.c +++ b/tools/xenstore/xenstored_core.c @@ -2888,10 +2888,9 @@ int main(int argc, char *argv[]) reopen_log(); - /* make sure xenstored directories exist */ + /* Make sure xenstored directory exists. */ /* Errors ignored here, will be reported when we open files */ mkdir(xs_daemon_rundir(), 0755); - mkdir(xs_daemon_rootdir(), 0755); if (dofork) { openlog("xenstored", 0, LOG_DAEMON); diff --git a/tools/xenstore/xs_lib.c b/tools/xenstore/xs_lib.c index b9941c567c..826fa7b5a8 100644 --- a/tools/xenstore/xs_lib.c +++ b/tools/xenstore/xs_lib.c @@ -32,11 +32,6 @@ const char *xs_daemon_rundir(void) return (s ? s : XEN_RUN_STORED); } -const char *xs_daemon_rootdir(void) -{ - return xs_daemon_rundir(); -} - static const char *xs_daemon_path(void) { static char buf[PATH_MAX]; @@ -49,61 +44,11 @@ static const char *xs_daemon_path(void) return buf; } -const char *xs_daemon_tdb(void) -{ - static char buf[PATH_MAX]; - snprintf(buf, sizeof(buf), "%s/tdb", xs_daemon_rootdir()); - return buf; -} - const char *xs_daemon_socket(void) { return xs_daemon_path(); } -const char *xs_daemon_socket_ro(void) -{ - return xs_daemon_path(); -} - -const char *xs_domain_dev(void) -{ - char *s = getenv("XENSTORED_PATH"); - if (s) - return s; -#if defined(__RUMPUSER_XEN__) || defined(__RUMPRUN__) - return "/dev/xen/xenbus"; -#elif defined(__linux__) - if (access("/dev/xen/xenbus", F_OK) == 0) - return "/dev/xen/xenbus"; - return "/proc/xen/xenbus"; -#elif defined(__NetBSD__) - return "/kern/xen/xenbus"; -#elif defined(__FreeBSD__) - return "/dev/xen/xenstore"; -#else - return "/dev/xen/xenbus"; -#endif -} - -/* Simple routines for writing to sockets, etc. */ -bool xs_write_all(int fd, const void *data, unsigned int len) -{ - while (len) { - int done; - - done = write(fd, data, len); - if (done < 0 && errno == EINTR) - continue; - if (done <= 0) - return false; - data += done; - len -= done; - } - - return true; -} - /* Convert strings to permissions. False if a problem. */ bool xs_strings_to_perms(struct xs_permissions *perms, unsigned int num, const char *strings) @@ -179,114 +124,3 @@ unsigned int xs_count_strings(const char *strings, unsigned int len) return num; } - -char *expanding_buffer_ensure(struct expanding_buffer *ebuf, int min_avail) -{ - int want; - char *got; - - if (ebuf->avail >= min_avail) - return ebuf->buf; - - if (min_avail >= INT_MAX/3) - return 0; - - want = ebuf->avail + min_avail + 10; - got = realloc(ebuf->buf, want); - if (!got) - return 0; - - ebuf->buf = got; - ebuf->avail = want; - return ebuf->buf; -} - -char *sanitise_value(struct expanding_buffer *ebuf, - const char *val, unsigned len) -{ - int used, remain, c; - unsigned char *ip; - -#define ADD(c) (ebuf->buf[used++] = (c)) -#define ADDF(f,c) (used += sprintf(ebuf->buf+used, (f), (c))) - - assert(len < INT_MAX/5); - - ip = (unsigned char *)val; - used = 0; - remain = len; - - if (!expanding_buffer_ensure(ebuf, remain + 1)) - return NULL; - - while (remain-- > 0) { - c= *ip++; - - if (c >= ' ' && c <= '~' && c != '\\') { - ADD(c); - continue; - } - - if (!expanding_buffer_ensure(ebuf, used + remain + 5)) - /* for "\\nnn\0" */ - return 0; - - ADD('\\'); - switch (c) { - case '\t': ADD('t'); break; - case '\n': ADD('n'); break; - case '\r': ADD('r'); break; - case '\\': ADD('\\'); break; - default: - if (c < 010) ADDF("%03o", c); - else ADDF("x%02x", c); - } - } - - ADD(0); - assert(used <= ebuf->avail); - return ebuf->buf; - -#undef ADD -#undef ADDF -} - -void unsanitise_value(char *out, unsigned *out_len_r, const char *in) -{ - const char *ip; - char *op; - unsigned c; - int n; - - for (ip = in, op = out; (c = *ip++); *op++ = c) { - if (c == '\\') { - c = *ip++; - -#define GETF(f) do { \ - n = 0; \ - sscanf(ip, f "%n", &c, &n); \ - ip += n; \ - } while (0) - - switch (c) { - case 't': c= '\t'; break; - case 'n': c= '\n'; break; - case 'r': c= '\r'; break; - case '\\': c= '\\'; break; - case 'x': GETF("%2x"); break; - case '0': case '4': - case '1': case '5': - case '2': case '6': - case '3': case '7': --ip; GETF("%3o"); break; - case 0: --ip; break; - default:; - } -#undef GETF - } - } - - *op = 0; - - if (out_len_r) - *out_len_r = op - out; -} diff --git a/tools/xenstore/xs_lib.h b/tools/xenstore/xs_lib.h index efa05997d6..5b9874d741 100644 --- a/tools/xenstore/xs_lib.h +++ b/tools/xenstore/xs_lib.h @@ -21,10 +21,6 @@ #include "xenstore_lib.h" -const char *xs_daemon_rootdir(void); -const char *xs_domain_dev(void); -const char *xs_daemon_tdb(void); - /* Convert permissions to a string (up to len MAX_STRLEN(unsigned int)+1). */ bool xs_perm_to_string(const struct xs_permissions *perm, char *buffer, size_t buf_len); @@ -32,19 +28,4 @@ bool xs_perm_to_string(const struct xs_permissions *perm, /* Given a string and a length, count how many strings (nul terms). */ unsigned int xs_count_strings(const char *strings, unsigned int len); -/* Sanitising (quoting) possibly-binary strings. */ -struct expanding_buffer { - char *buf; - int avail; -}; - -/* Ensure that given expanding buffer has at least min_avail characters. */ -char *expanding_buffer_ensure(struct expanding_buffer *, int min_avail); - -/* sanitise_value() may return NULL if malloc fails. */ -char *sanitise_value(struct expanding_buffer *, const char *val, unsigned len); - -/* *out_len_r on entry is ignored; out must be at least strlen(in)+1 bytes. */ -void unsanitise_value(char *out, unsigned *out_len_r, const char *in); - #endif /* XS_LIB_H */ -- 2.35.3 From xen-devel-bounces@lists.xenproject.org Tue Jun 27 12:28:18 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 12:28:18 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556118.868366 (Exim 4.92) (envelope-from ) id 1qE7nY-0000ft-Hq; Tue, 27 Jun 2023 12:27:56 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556118.868366; Tue, 27 Jun 2023 12:27:56 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE7nY-0000fm-Eq; Tue, 27 Jun 2023 12:27:56 +0000 Received: by outflank-mailman (input) for mailman id 556118; Tue, 27 Jun 2023 12:27:54 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE7nW-0000fg-Jj for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 12:27:54 +0000 Received: from smtp-out1.suse.de (smtp-out1.suse.de [195.135.220.28]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 09c503ce-14e6-11ee-b237-6b7b168915f2; Tue, 27 Jun 2023 14:27:53 +0200 (CEST) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by smtp-out1.suse.de (Postfix) with ESMTPS id 0B9D021887; Tue, 27 Jun 2023 12:27:53 +0000 (UTC) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id AF44613462; Tue, 27 Jun 2023 12:27:52 +0000 (UTC) Received: from dovecot-director2.suse.de ([192.168.254.65]) by imap2.suse-dmz.suse.de with ESMTPSA id WV4wKcjVmmQiSAAAMHmgww (envelope-from ); Tue, 27 Jun 2023 12:27:52 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 09c503ce-14e6-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1; t=1687868873; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version: content-transfer-encoding:content-transfer-encoding; bh=oS+rJ3FtOvnPFrtRuK/7J1djKwFNaiM+bAdUkXGuDiI=; b=SCIcUkkHARF49BiLzlPdGPt9aLV9VKNERvlGtAdNvTBFZ0ZAxre2EBWKcrC4B3r6CKuPLf 1UWth+8pyo0l+AH2//g0ZpABskZ99cQVpjNC1H7tLoKs1YHtPE7rH+QWOO/a8LwVrEneB0 dh/aYkaaRXrOH0rZ1ctKAzzUogsiq3M= From: Juergen Gross To: xen-devel@lists.xenproject.org Cc: Juergen Gross , Wei Liu , Julien Grall , Anthony PERARD , Andrew Cooper , George Dunlap , Jan Beulich , Stefano Stabellini Subject: [PATCH v4 0/5] tools/xenstore: more cleanups Date: Tue, 27 Jun 2023 14:27:45 +0200 Message-Id: <20230627122750.2007-1-jgross@suse.com> X-Mailer: git-send-email 2.35.3 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Some more cleanups of Xenstore. Changes in V2: - rebase - one small modification of patch 10 - added patches 11-13 Changes in V3: - rebase - modified patch 4 - added patches 10, 11 and 13 Changes in V4: - patches 1-11 already committed - modified patch 3 - rebased patch 4 after modifying patch 3 Juergen Gross (5): tools/xenstore: remove no longer needed functions from xs_lib.c tools/xenstore: replace xs_lib.c with a header tools/xenstore: split out environment specific live update code tools/xenstore: split out rest of live update control code tools/xenstore: remove unused stuff from list.h MAINTAINERS | 1 + tools/include/xen-tools/xenstore-common.h | 128 +++++ tools/include/xenstore.h | 3 + tools/include/xenstore_lib.h | 3 - tools/libs/store/Makefile | 4 - tools/libs/store/xs.c | 71 ++- tools/xenstore/COPYING | 514 ----------------- tools/xenstore/Makefile | 2 +- tools/xenstore/Makefile.common | 12 +- tools/xenstore/list.h | 227 -------- tools/xenstore/xenstore_client.c | 133 ++++- tools/xenstore/xenstored_control.c | 661 +--------------------- tools/xenstore/xenstored_control.h | 8 - tools/xenstore/xenstored_core.c | 19 +- tools/xenstore/xenstored_lu.c | 408 +++++++++++++ tools/xenstore/xenstored_lu.h | 81 +++ tools/xenstore/xenstored_lu_daemon.c | 130 +++++ tools/xenstore/xenstored_lu_minios.c | 118 ++++ tools/xenstore/xs_lib.c | 292 ---------- tools/xenstore/xs_lib.h | 50 -- 20 files changed, 1085 insertions(+), 1780 deletions(-) create mode 100644 tools/include/xen-tools/xenstore-common.h delete mode 100644 tools/xenstore/COPYING create mode 100644 tools/xenstore/xenstored_lu.c create mode 100644 tools/xenstore/xenstored_lu.h create mode 100644 tools/xenstore/xenstored_lu_daemon.c create mode 100644 tools/xenstore/xenstored_lu_minios.c delete mode 100644 tools/xenstore/xs_lib.c delete mode 100644 tools/xenstore/xs_lib.h -- 2.35.3 From xen-devel-bounces@lists.xenproject.org Tue Jun 27 12:28:20 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 12:28:20 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556120.868386 (Exim 4.92) (envelope-from ) id 1qE7nm-0001Db-1m; Tue, 27 Jun 2023 12:28:10 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556120.868386; Tue, 27 Jun 2023 12:28:10 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE7nl-0001DU-Uv; Tue, 27 Jun 2023 12:28:09 +0000 Received: by outflank-mailman (input) for mailman id 556120; Tue, 27 Jun 2023 12:28:08 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE7nk-0000v0-MS for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 12:28:08 +0000 Received: from smtp-out2.suse.de (smtp-out2.suse.de [2001:67c:2178:6::1d]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 106e5414-14e6-11ee-8611-37d641c3527e; Tue, 27 Jun 2023 14:28:04 +0200 (CEST) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by smtp-out2.suse.de (Postfix) with ESMTPS id 825151F459; Tue, 27 Jun 2023 12:28:04 +0000 (UTC) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id 241AF13462; Tue, 27 Jun 2023 12:28:04 +0000 (UTC) Received: from dovecot-director2.suse.de ([192.168.254.65]) by imap2.suse-dmz.suse.de with ESMTPSA id onBEB9TVmmRISAAAMHmgww (envelope-from ); Tue, 27 Jun 2023 12:28:04 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 106e5414-14e6-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1; t=1687868884; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=vfUPsy9njdIloFdqX3w6ZfeC7y44yYDbvFPwWQK9nb8=; b=rIxp7663taH4q3mmcIazK8w1MEZIb0HrQLio5/jQy6oYtJm4G6al3dWbfIw4M2hqfWxkmM MUfscWkkWUy8JXL+XP7Hoj2Dc/OtjQaI1PkxuubTIwnYbJIjAHOqQ/5WQGPdvDzN+b7d2C D+pzT0bbFfYUufYqbkKAJCwNPZNdDws= From: Juergen Gross To: xen-devel@lists.xenproject.org Cc: Juergen Gross , Andrew Cooper , George Dunlap , Jan Beulich , Julien Grall , Stefano Stabellini , Wei Liu , Anthony PERARD , Julien Grall Subject: [PATCH v4 2/5] tools/xenstore: replace xs_lib.c with a header Date: Tue, 27 Jun 2023 14:27:47 +0200 Message-Id: <20230627122750.2007-3-jgross@suse.com> X-Mailer: git-send-email 2.35.3 In-Reply-To: <20230627122750.2007-1-jgross@suse.com> References: <20230627122750.2007-1-jgross@suse.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Instead of including the same small C source in multiple binaries from 2 source directories, use a header file with inline functions as a replacement. As some of the functions are exported by libxenstore, rename the inline functions from xs_*() do xenstore_*() and add xs_*() wrappers to libxenstore. With that no sources required to build libxenstore are left in tools/xenstore, so the file COPYING can be removed now. Signed-off-by: Juergen Gross Acked-by: Julien Grall --- V3: - new patch --- MAINTAINERS | 1 + tools/include/xen-tools/xenstore-common.h | 128 ++++++ tools/libs/store/Makefile | 4 - tools/libs/store/xs.c | 28 +- tools/xenstore/COPYING | 514 ---------------------- tools/xenstore/Makefile | 2 +- tools/xenstore/Makefile.common | 2 +- tools/xenstore/xenstore_client.c | 4 +- tools/xenstore/xenstored_control.c | 9 +- tools/xenstore/xenstored_core.c | 15 +- tools/xenstore/xs_lib.c | 126 ------ tools/xenstore/xs_lib.h | 31 -- 12 files changed, 168 insertions(+), 696 deletions(-) create mode 100644 tools/include/xen-tools/xenstore-common.h delete mode 100644 tools/xenstore/COPYING delete mode 100644 tools/xenstore/xs_lib.c delete mode 100644 tools/xenstore/xs_lib.h diff --git a/MAINTAINERS b/MAINTAINERS index 7a07949e1d..d21c2fa8ee 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -656,6 +656,7 @@ F: tools/helpers/init-xenstore-domain.c F: tools/include/xenstore-compat/ F: tools/include/xenstore.h F: tools/include/xenstore_lib.h +F: tools/include/xen-tools/xenstore-common.h F: tools/libs/store/ F: tools/xenstore/ diff --git a/tools/include/xen-tools/xenstore-common.h b/tools/include/xen-tools/xenstore-common.h new file mode 100644 index 0000000000..8cb097a8fc --- /dev/null +++ b/tools/include/xen-tools/xenstore-common.h @@ -0,0 +1,128 @@ +/* SPDX-License-Identifier: LGPL-2.1-or-later */ +/* Common functions for libxenstore, xenstored and xenstore-clients. */ + +#ifndef __XEN_TOOLS_XENSTORE_COMMON__ +#define __XEN_TOOLS_XENSTORE_COMMON__ + +#include +#include +#include +#include + +static inline const char *xenstore_daemon_rundir(void) +{ + char *s = getenv("XENSTORED_RUNDIR"); + + return s ? s : XEN_RUN_STORED; +} + +static inline const char *xenstore_daemon_path(void) +{ + static char buf[PATH_MAX]; + char *s = getenv("XENSTORED_PATH"); + + if ( s ) + return s; + + if ( snprintf(buf, sizeof(buf), "%s/socket", xenstore_daemon_rundir()) >= + PATH_MAX ) + return NULL; + + return buf; +} + +/* Convert strings to permissions. False if a problem. */ +static inline bool xenstore_strings_to_perms(struct xs_permissions *perms, + unsigned int num, + const char *strings) +{ + const char *p; + char *end; + unsigned int i; + + for ( p = strings, i = 0; i < num; i++ ) + { + /* "r", "w", or "b" for both. */ + switch ( *p ) + { + case 'r': + perms[i].perms = XS_PERM_READ; + break; + + case 'w': + perms[i].perms = XS_PERM_WRITE; + break; + + case 'b': + perms[i].perms = XS_PERM_READ|XS_PERM_WRITE; + break; + + case 'n': + perms[i].perms = XS_PERM_NONE; + break; + + default: + errno = EINVAL; + return false; + } + + p++; + perms[i].id = strtol(p, &end, 0); + if ( *end || !*p ) + { + errno = EINVAL; + return false; + } + + p = end + 1; + } + + return true; +} + +/* Convert permissions to a string (up to len MAX_STRLEN(unsigned int)+1). */ +static inline bool xenstore_perm_to_string(const struct xs_permissions *perm, + char *buffer, size_t buf_len) +{ + switch ( (int)perm->perms & ~XS_PERM_IGNORE ) + { + case XS_PERM_WRITE: + *buffer = 'w'; + break; + + case XS_PERM_READ: + *buffer = 'r'; + break; + + case XS_PERM_READ|XS_PERM_WRITE: + *buffer = 'b'; + break; + + case XS_PERM_NONE: + *buffer = 'n'; + break; + + default: + errno = EINVAL; + return false; + } + + snprintf(buffer + 1, buf_len - 1, "%i", (int)perm->id); + + return true; +} + +/* Given a string and a length, count how many strings (nul terms). */ +static inline unsigned int xenstore_count_strings(const char *strings, + unsigned int len) +{ + unsigned int num; + const char *p; + + for ( p = strings, num = 0; p < strings + len; p++ ) + if ( *p == '\0' ) + num++; + + return num; +} +#endif /* __XEN_TOOLS_XENSTORE_COMMON__ */ diff --git a/tools/libs/store/Makefile b/tools/libs/store/Makefile index daed9d148f..c1a1508713 100644 --- a/tools/libs/store/Makefile +++ b/tools/libs/store/Makefile @@ -9,7 +9,6 @@ ifeq ($(CONFIG_Linux),y) LDLIBS += -ldl endif -OBJS-y += xs_lib.o OBJS-y += xs.o LIBHEADER = xenstore.h xenstore_lib.h @@ -21,9 +20,6 @@ CFLAGS += -include $(XEN_ROOT)/tools/config.h CFLAGS += $(CFLAGS_libxentoolcore) CFLAGS += -DXEN_RUN_STORED="\"$(XEN_RUN_STORED)\"" -vpath xs_lib.c $(XEN_ROOT)/tools/xenstore -CFLAGS += -iquote $(XEN_ROOT)/tools/xenstore - xs.opic: CFLAGS += -DUSE_PTHREAD ifeq ($(CONFIG_Linux),y) xs.opic: CFLAGS += -DUSE_DLSYM diff --git a/tools/libs/store/xs.c b/tools/libs/store/xs.c index bb93246bfb..140b9a2839 100644 --- a/tools/libs/store/xs.c +++ b/tools/libs/store/xs.c @@ -34,8 +34,8 @@ #include #include #include +#include #include "xenstore.h" -#include "xs_lib.h" #include #include @@ -627,7 +627,7 @@ static char **xs_directory_common(char *strings, unsigned int len, char *p, **ret; /* Count the strings. */ - *num = xs_count_strings(strings, len); + *num = xenstore_count_strings(strings, len); /* Transfer to one big alloc for easy freeing. */ ret = malloc(*num * sizeof(char *) + len); @@ -775,7 +775,7 @@ struct xs_permissions *xs_get_permissions(struct xs_handle *h, return NULL; /* Count the strings: each one perms then domid. */ - *num = xs_count_strings(strings, len); + *num = xenstore_count_strings(strings, len); /* Transfer to one big alloc for easy freeing. */ ret = malloc(*num * sizeof(struct xs_permissions)); @@ -784,7 +784,7 @@ struct xs_permissions *xs_get_permissions(struct xs_handle *h, return NULL; } - if (!xs_strings_to_perms(ret, *num, strings)) { + if (!xenstore_strings_to_perms(ret, *num, strings)) { free_no_errno(ret); ret = NULL; } @@ -811,7 +811,7 @@ bool xs_set_permissions(struct xs_handle *h, for (i = 0; i < num_perms; i++) { char buffer[MAX_STRLEN(unsigned int)+1]; - if (!xs_perm_to_string(&perms[i], buffer, sizeof(buffer))) + if (!xenstore_perm_to_string(&perms[i], buffer, sizeof(buffer))) goto unwind; iov[i+1].iov_base = strdup(buffer); @@ -977,7 +977,7 @@ static char **read_watch_internal(struct xs_handle *h, unsigned int *num, assert(msg->hdr.type == XS_WATCH_EVENT); strings = msg->body; - num_strings = xs_count_strings(strings, msg->hdr.len); + num_strings = xenstore_count_strings(strings, msg->hdr.len); ret = malloc(sizeof(char*) * num_strings + msg->hdr.len); if (!ret) { @@ -1366,11 +1366,27 @@ error: return ret; } +const char *xs_daemon_socket(void) +{ + return xenstore_daemon_path(); +} + const char *xs_daemon_socket_ro(void) { return xs_daemon_socket(); } +const char *xs_daemon_rundir(void) +{ + return xenstore_daemon_rundir(); +} + +bool xs_strings_to_perms(struct xs_permissions *perms, unsigned int num, + const char *strings) +{ + return xenstore_strings_to_perms(perms, num, strings); +} + #ifdef USE_PTHREAD static void *read_thread(void *arg) { diff --git a/tools/xenstore/COPYING b/tools/xenstore/COPYING deleted file mode 100644 index c764b2e329..0000000000 --- a/tools/xenstore/COPYING +++ /dev/null @@ -1,514 +0,0 @@ -This license (LGPL) applies to the xenstore library which interfaces -with the xenstore daemon (as stated in xs.c, xenstore.h, xs_lib.c and -xenstore_lib.h). The remaining files in the directory are licensed as -stated in the comments (as of this writing, GPL, see ../../COPYING). - - - GNU LESSER GENERAL PUBLIC LICENSE - Version 2.1, February 1999 - - Copyright (C) 1991, 1999 Free Software Foundation, Inc. - 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - Everyone is permitted to copy and distribute verbatim copies - of this license document, but changing it is not allowed. - -[This is the first released version of the Lesser GPL. It also counts - as the successor of the GNU Library Public License, version 2, hence - the version number 2.1.] - - Preamble - - The licenses for most software are designed to take away your -freedom to share and change it. By contrast, the GNU General Public -Licenses are intended to guarantee your freedom to share and change -free software--to make sure the software is free for all its users. - - This license, the Lesser General Public License, applies to some -specially designated software packages--typically libraries--of the -Free Software Foundation and other authors who decide to use it. You -can use it too, but we suggest you first think carefully about whether -this license or the ordinary General Public License is the better -strategy to use in any particular case, based on the explanations -below. - - When we speak of free software, we are referring to freedom of use, -not price. Our General Public Licenses are designed to make sure that -you have the freedom to distribute copies of free software (and charge -for this service if you wish); that you receive source code or can get -it if you want it; that you can change the software and use pieces of -it in new free programs; and that you are informed that you can do -these things. - - To protect your rights, we need to make restrictions that forbid -distributors to deny you these rights or to ask you to surrender these -rights. These restrictions translate to certain responsibilities for -you if you distribute copies of the library or if you modify it. - - For example, if you distribute copies of the library, whether gratis -or for a fee, you must give the recipients all the rights that we gave -you. You must make sure that they, too, receive or can get the source -code. If you link other code with the library, you must provide -complete object files to the recipients, so that they can relink them -with the library after making changes to the library and recompiling -it. And you must show them these terms so they know their rights. - - We protect your rights with a two-step method: (1) we copyright the -library, and (2) we offer you this license, which gives you legal -permission to copy, distribute and/or modify the library. - - To protect each distributor, we want to make it very clear that -there is no warranty for the free library. Also, if the library is -modified by someone else and passed on, the recipients should know -that what they have is not the original version, so that the original -author's reputation will not be affected by problems that might be -introduced by others. - - Finally, software patents pose a constant threat to the existence of -any free program. We wish to make sure that a company cannot -effectively restrict the users of a free program by obtaining a -restrictive license from a patent holder. Therefore, we insist that -any patent license obtained for a version of the library must be -consistent with the full freedom of use specified in this license. - - Most GNU software, including some libraries, is covered by the -ordinary GNU General Public License. This license, the GNU Lesser -General Public License, applies to certain designated libraries, and -is quite different from the ordinary General Public License. We use -this license for certain libraries in order to permit linking those -libraries into non-free programs. - - When a program is linked with a library, whether statically or using -a shared library, the combination of the two is legally speaking a -combined work, a derivative of the original library. The ordinary -General Public License therefore permits such linking only if the -entire combination fits its criteria of freedom. The Lesser General -Public License permits more lax criteria for linking other code with -the library. - - We call this license the "Lesser" General Public License because it -does Less to protect the user's freedom than the ordinary General -Public License. It also provides other free software developers Less -of an advantage over competing non-free programs. These disadvantages -are the reason we use the ordinary General Public License for many -libraries. However, the Lesser license provides advantages in certain -special circumstances. - - For example, on rare occasions, there may be a special need to -encourage the widest possible use of a certain library, so that it -becomes a de-facto standard. To achieve this, non-free programs must -be allowed to use the library. A more frequent case is that a free -library does the same job as widely used non-free libraries. In this -case, there is little to gain by limiting the free library to free -software only, so we use the Lesser General Public License. - - In other cases, permission to use a particular library in non-free -programs enables a greater number of people to use a large body of -free software. For example, permission to use the GNU C Library in -non-free programs enables many more people to use the whole GNU -operating system, as well as its variant, the GNU/Linux operating -system. - - Although the Lesser General Public License is Less protective of the -users' freedom, it does ensure that the user of a program that is -linked with the Library has the freedom and the wherewithal to run -that program using a modified version of the Library. - - The precise terms and conditions for copying, distribution and -modification follow. Pay close attention to the difference between a -"work based on the library" and a "work that uses the library". The -former contains code derived from the library, whereas the latter must -be combined with the library in order to run. - - GNU LESSER GENERAL PUBLIC LICENSE - TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION - - 0. This License Agreement applies to any software library or other -program which contains a notice placed by the copyright holder or -other authorized party saying it may be distributed under the terms of -this Lesser General Public License (also called "this License"). -Each licensee is addressed as "you". - - A "library" means a collection of software functions and/or data -prepared so as to be conveniently linked with application programs -(which use some of those functions and data) to form executables. - - The "Library", below, refers to any such software library or work -which has been distributed under these terms. A "work based on the -Library" means either the Library or any derivative work under -copyright law: that is to say, a work containing the Library or a -portion of it, either verbatim or with modifications and/or translated -straightforwardly into another language. (Hereinafter, translation is -included without limitation in the term "modification".) - - "Source code" for a work means the preferred form of the work for -making modifications to it. For a library, complete source code means -all the source code for all modules it contains, plus any associated -interface definition files, plus the scripts used to control -compilation and installation of the library. - - Activities other than copying, distribution and modification are not -covered by this License; they are outside its scope. The act of -running a program using the Library is not restricted, and output from -such a program is covered only if its contents constitute a work based -on the Library (independent of the use of the Library in a tool for -writing it). Whether that is true depends on what the Library does -and what the program that uses the Library does. - - 1. You may copy and distribute verbatim copies of the Library's -complete source code as you receive it, in any medium, provided that -you conspicuously and appropriately publish on each copy an -appropriate copyright notice and disclaimer of warranty; keep intact -all the notices that refer to this License and to the absence of any -warranty; and distribute a copy of this License along with the -Library. - - You may charge a fee for the physical act of transferring a copy, -and you may at your option offer warranty protection in exchange for a -fee. - - 2. You may modify your copy or copies of the Library or any portion -of it, thus forming a work based on the Library, and copy and -distribute such modifications or work under the terms of Section 1 -above, provided that you also meet all of these conditions: - - a) The modified work must itself be a software library. - - b) You must cause the files modified to carry prominent notices - stating that you changed the files and the date of any change. - - c) You must cause the whole of the work to be licensed at no - charge to all third parties under the terms of this License. - - d) If a facility in the modified Library refers to a function or a - table of data to be supplied by an application program that uses - the facility, other than as an argument passed when the facility - is invoked, then you must make a good faith effort to ensure that, - in the event an application does not supply such function or - table, the facility still operates, and performs whatever part of - its purpose remains meaningful. - - (For example, a function in a library to compute square roots has - a purpose that is entirely well-defined independent of the - application. Therefore, Subsection 2d requires that any - application-supplied function or table used by this function must - be optional: if the application does not supply it, the square - root function must still compute square roots.) - -These requirements apply to the modified work as a whole. If -identifiable sections of that work are not derived from the Library, -and can be reasonably considered independent and separate works in -themselves, then this License, and its terms, do not apply to those -sections when you distribute them as separate works. But when you -distribute the same sections as part of a whole which is a work based -on the Library, the distribution of the whole must be on the terms of -this License, whose permissions for other licensees extend to the -entire whole, and thus to each and every part regardless of who wrote -it. - -Thus, it is not the intent of this section to claim rights or contest -your rights to work written entirely by you; rather, the intent is to -exercise the right to control the distribution of derivative or -collective works based on the Library. - -In addition, mere aggregation of another work not based on the Library -with the Library (or with a work based on the Library) on a volume of -a storage or distribution medium does not bring the other work under -the scope of this License. - - 3. You may opt to apply the terms of the ordinary GNU General Public -License instead of this License to a given copy of the Library. To do -this, you must alter all the notices that refer to this License, so -that they refer to the ordinary GNU General Public License, version 2, -instead of to this License. (If a newer version than version 2 of the -ordinary GNU General Public License has appeared, then you can specify -that version instead if you wish.) Do not make any other change in -these notices. - - Once this change is made in a given copy, it is irreversible for -that copy, so the ordinary GNU General Public License applies to all -subsequent copies and derivative works made from that copy. - - This option is useful when you wish to copy part of the code of -the Library into a program that is not a library. - - 4. You may copy and distribute the Library (or a portion or -derivative of it, under Section 2) in object code or executable form -under the terms of Sections 1 and 2 above provided that you accompany -it with the complete corresponding machine-readable source code, which -must be distributed under the terms of Sections 1 and 2 above on a -medium customarily used for software interchange. - - If distribution of object code is made by offering access to copy -from a designated place, then offering equivalent access to copy the -source code from the same place satisfies the requirement to -distribute the source code, even though third parties are not -compelled to copy the source along with the object code. - - 5. A program that contains no derivative of any portion of the -Library, but is designed to work with the Library by being compiled or -linked with it, is called a "work that uses the Library". Such a -work, in isolation, is not a derivative work of the Library, and -therefore falls outside the scope of this License. - - However, linking a "work that uses the Library" with the Library -creates an executable that is a derivative of the Library (because it -contains portions of the Library), rather than a "work that uses the -library". The executable is therefore covered by this License. -Section 6 states terms for distribution of such executables. - - When a "work that uses the Library" uses material from a header file -that is part of the Library, the object code for the work may be a -derivative work of the Library even though the source code is not. -Whether this is true is especially significant if the work can be -linked without the Library, or if the work is itself a library. The -threshold for this to be true is not precisely defined by law. - - If such an object file uses only numerical parameters, data -structure layouts and accessors, and small macros and small inline -functions (ten lines or less in length), then the use of the object -file is unrestricted, regardless of whether it is legally a derivative -work. (Executables containing this object code plus portions of the -Library will still fall under Section 6.) - - Otherwise, if the work is a derivative of the Library, you may -distribute the object code for the work under the terms of Section 6. -Any executables containing that work also fall under Section 6, -whether or not they are linked directly with the Library itself. - - 6. As an exception to the Sections above, you may also combine or -link a "work that uses the Library" with the Library to produce a -work containing portions of the Library, and distribute that work -under terms of your choice, provided that the terms permit -modification of the work for the customer's own use and reverse -engineering for debugging such modifications. - - You must give prominent notice with each copy of the work that the -Library is used in it and that the Library and its use are covered by -this License. You must supply a copy of this License. If the work -during execution displays copyright notices, you must include the -copyright notice for the Library among them, as well as a reference -directing the user to the copy of this License. Also, you must do one -of these things: - - a) Accompany the work with the complete corresponding - machine-readable source code for the Library including whatever - changes were used in the work (which must be distributed under - Sections 1 and 2 above); and, if the work is an executable linked - with the Library, with the complete machine-readable "work that - uses the Library", as object code and/or source code, so that the - user can modify the Library and then relink to produce a modified - executable containing the modified Library. (It is understood - that the user who changes the contents of definitions files in the - Library will not necessarily be able to recompile the application - to use the modified definitions.) - - b) Use a suitable shared library mechanism for linking with the - Library. A suitable mechanism is one that (1) uses at run time a - copy of the library already present on the user's computer system, - rather than copying library functions into the executable, and (2) - will operate properly with a modified version of the library, if - the user installs one, as long as the modified version is - interface-compatible with the version that the work was made with. - - c) Accompany the work with a written offer, valid for at least - three years, to give the same user the materials specified in - Subsection 6a, above, for a charge no more than the cost of - performing this distribution. - - d) If distribution of the work is made by offering access to copy - from a designated place, offer equivalent access to copy the above - specified materials from the same place. - - e) Verify that the user has already received a copy of these - materials or that you have already sent this user a copy. - - For an executable, the required form of the "work that uses the -Library" must include any data and utility programs needed for -reproducing the executable from it. However, as a special exception, -the materials to be distributed need not include anything that is -normally distributed (in either source or binary form) with the major -components (compiler, kernel, and so on) of the operating system on -which the executable runs, unless that component itself accompanies -the executable. - - It may happen that this requirement contradicts the license -restrictions of other proprietary libraries that do not normally -accompany the operating system. Such a contradiction means you cannot -use both them and the Library together in an executable that you -distribute. - - 7. You may place library facilities that are a work based on the -Library side-by-side in a single library together with other library -facilities not covered by this License, and distribute such a combined -library, provided that the separate distribution of the work based on -the Library and of the other library facilities is otherwise -permitted, and provided that you do these two things: - - a) Accompany the combined library with a copy of the same work - based on the Library, uncombined with any other library - facilities. This must be distributed under the terms of the - Sections above. - - b) Give prominent notice with the combined library of the fact - that part of it is a work based on the Library, and explaining - where to find the accompanying uncombined form of the same work. - - 8. You may not copy, modify, sublicense, link with, or distribute -the Library except as expressly provided under this License. Any -attempt otherwise to copy, modify, sublicense, link with, or -distribute the Library is void, and will automatically terminate your -rights under this License. However, parties who have received copies, -or rights, from you under this License will not have their licenses -terminated so long as such parties remain in full compliance. - - 9. You are not required to accept this License, since you have not -signed it. However, nothing else grants you permission to modify or -distribute the Library or its derivative works. These actions are -prohibited by law if you do not accept this License. Therefore, by -modifying or distributing the Library (or any work based on the -Library), you indicate your acceptance of this License to do so, and -all its terms and conditions for copying, distributing or modifying -the Library or works based on it. - - 10. Each time you redistribute the Library (or any work based on the -Library), the recipient automatically receives a license from the -original licensor to copy, distribute, link with or modify the Library -subject to these terms and conditions. You may not impose any further -restrictions on the recipients' exercise of the rights granted herein. -You are not responsible for enforcing compliance by third parties with -this License. - - 11. If, as a consequence of a court judgment or allegation of patent -infringement or for any other reason (not limited to patent issues), -conditions are imposed on you (whether by court order, agreement or -otherwise) that contradict the conditions of this License, they do not -excuse you from the conditions of this License. If you cannot -distribute so as to satisfy simultaneously your obligations under this -License and any other pertinent obligations, then as a consequence you -may not distribute the Library at all. For example, if a patent -license would not permit royalty-free redistribution of the Library by -all those who receive copies directly or indirectly through you, then -the only way you could satisfy both it and this License would be to -refrain entirely from distribution of the Library. - -If any portion of this section is held invalid or unenforceable under -any particular circumstance, the balance of the section is intended to -apply, and the section as a whole is intended to apply in other -circumstances. - -It is not the purpose of this section to induce you to infringe any -patents or other property right claims or to contest validity of any -such claims; this section has the sole purpose of protecting the -integrity of the free software distribution system which is -implemented by public license practices. Many people have made -generous contributions to the wide range of software distributed -through that system in reliance on consistent application of that -system; it is up to the author/donor to decide if he or she is willing -to distribute software through any other system and a licensee cannot -impose that choice. - -This section is intended to make thoroughly clear what is believed to -be a consequence of the rest of this License. - - 12. If the distribution and/or use of the Library is restricted in -certain countries either by patents or by copyrighted interfaces, the -original copyright holder who places the Library under this License -may add an explicit geographical distribution limitation excluding those -countries, so that distribution is permitted only in or among -countries not thus excluded. In such case, this License incorporates -the limitation as if written in the body of this License. - - 13. The Free Software Foundation may publish revised and/or new -versions of the Lesser General Public License from time to time. -Such new versions will be similar in spirit to the present version, -but may differ in detail to address new problems or concerns. - -Each version is given a distinguishing version number. If the Library -specifies a version number of this License which applies to it and -"any later version", you have the option of following the terms and -conditions either of that version or of any later version published by -the Free Software Foundation. If the Library does not specify a -license version number, you may choose any version ever published by -the Free Software Foundation. - - 14. If you wish to incorporate parts of the Library into other free -programs whose distribution conditions are incompatible with these, -write to the author to ask for permission. For software which is -copyrighted by the Free Software Foundation, write to the Free -Software Foundation; we sometimes make exceptions for this. Our -decision will be guided by the two goals of preserving the free status -of all derivatives of our free software and of promoting the sharing -and reuse of software generally. - - NO WARRANTY - - 15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO -WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW. -EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR -OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY -KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE -IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR -PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE -LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME -THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. - - 16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN -WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY -AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU -FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR -CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE -LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING -RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A -FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF -SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH -DAMAGES. - - END OF TERMS AND CONDITIONS - - How to Apply These Terms to Your New Libraries - - If you develop a new library, and you want it to be of the greatest -possible use to the public, we recommend making it free software that -everyone can redistribute and change. You can do so by permitting -redistribution under these terms (or, alternatively, under the terms -of the ordinary General Public License). - - To apply these terms, attach the following notices to the library. -It is safest to attach them to the start of each source file to most -effectively convey the exclusion of warranty; and each file should -have at least the "copyright" line and a pointer to where the full -notice is found. - - - - Copyright (C) - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - This library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with this library; If not, see . - -Also add information on how to contact you by electronic and paper mail. - -You should also get your employer (if you work as a programmer) or -your school, if any, to sign a "copyright disclaimer" for the library, -if necessary. Here is a sample; alter the names: - - Yoyodyne, Inc., hereby disclaims all copyright interest in the - library `Frob' (a library for tweaking knobs) written by James - Random Hacker. - - , 1 April 1990 - Ty Coon, President of Vice - -That's all there is to it! - - diff --git a/tools/xenstore/Makefile b/tools/xenstore/Makefile index 56723139a1..dc39b6cb31 100644 --- a/tools/xenstore/Makefile +++ b/tools/xenstore/Makefile @@ -44,7 +44,7 @@ xenstored: $(XENSTORED_OBJS-y) $(CLIENTS): xenstore ln -f xenstore $@ -xenstore: xenstore_client.o xs_lib.o +xenstore: xenstore_client.o $(CC) $(LDFLAGS) $^ $(LDLIBS) -o $@ $(APPEND_LDFLAGS) xenstore-control: xenstore_control.o diff --git a/tools/xenstore/Makefile.common b/tools/xenstore/Makefile.common index b18f95c103..f71c9bfd55 100644 --- a/tools/xenstore/Makefile.common +++ b/tools/xenstore/Makefile.common @@ -2,7 +2,7 @@ XENSTORED_OBJS-y := xenstored_core.o xenstored_watch.o xenstored_domain.o XENSTORED_OBJS-y += xenstored_transaction.o xenstored_control.o -XENSTORED_OBJS-y += xs_lib.o talloc.o utils.o tdb.o hashtable.o +XENSTORED_OBJS-y += talloc.o utils.o tdb.o hashtable.o XENSTORED_OBJS-$(CONFIG_Linux) += xenstored_posix.o XENSTORED_OBJS-$(CONFIG_NetBSD) += xenstored_posix.o diff --git a/tools/xenstore/xenstore_client.c b/tools/xenstore/xenstore_client.c index 27fda81401..a104cf6487 100644 --- a/tools/xenstore/xenstore_client.c +++ b/tools/xenstore/xenstore_client.c @@ -23,7 +23,7 @@ #include -#include "xs_lib.h" +#include #define PATH_SEP '/' #define MAX_PATH_LEN 256 @@ -361,7 +361,7 @@ static void do_ls(struct xs_handle *h, char *path, int cur_depth, int show_perms for (i = 0; i < nperms; i++) { if (i) putchar(','); - xs_perm_to_string(perms+i, buf, sizeof(buf)); + xenstore_perm_to_string(perms+i, buf, sizeof(buf)); fputs(buf, stdout); } putchar(')'); diff --git a/tools/xenstore/xenstored_control.c b/tools/xenstore/xenstored_control.c index 6ef800ff64..0d131e2ebc 100644 --- a/tools/xenstore/xenstored_control.c +++ b/tools/xenstore/xenstored_control.c @@ -31,10 +31,10 @@ #include #include #include +#include #include "utils.h" #include "talloc.h" -#include "xs_lib.h" #include "xenstored_core.h" #include "xenstored_control.h" #include "xenstored_domain.h" @@ -560,7 +560,8 @@ static FILE *lu_dump_open(const void *ctx) char *filename; int fd; - filename = talloc_asprintf(ctx, "%s/state_dump", xs_daemon_rundir()); + filename = talloc_asprintf(ctx, "%s/state_dump", + xenstore_daemon_rundir()); if (!filename) return NULL; @@ -583,7 +584,7 @@ static void lu_get_dump_state(struct lu_dump_state *state) state->size = 0; state->filename = talloc_asprintf(NULL, "%s/state_dump", - xs_daemon_rundir()); + xenstore_daemon_rundir()); if (!state->filename) barf("Allocation failure"); @@ -1017,7 +1018,7 @@ int do_control(const void *ctx, struct connection *conn, if (cmd == ARRAY_SIZE(cmds)) return EINVAL; - num = xs_count_strings(in->buffer, in->used); + num = xenstore_count_strings(in->buffer, in->used); if (cmds[cmd].max_pars) num = min(num, cmds[cmd].max_pars); vec = talloc_array(ctx, char *, num); diff --git a/tools/xenstore/xenstored_core.c b/tools/xenstore/xenstored_core.c index a78cbf1116..62deee9cb9 100644 --- a/tools/xenstore/xenstored_core.c +++ b/tools/xenstore/xenstored_core.c @@ -42,11 +42,11 @@ #include #include +#include #include "utils.h" #include "list.h" #include "talloc.h" -#include "xs_lib.h" #include "xenstored_core.h" #include "xenstored_watch.h" #include "xenstored_transaction.h" @@ -1201,7 +1201,8 @@ static char *perms_to_strings(const void *ctx, const struct node_perms *perms, char buffer[MAX_STRLEN(unsigned int) + 1]; for (*len = 0, i = 0; i < perms->num; i++) { - if (!xs_perm_to_string(&perms->p[i], buffer, sizeof(buffer))) + if (!xenstore_perm_to_string(&perms->p[i], buffer, + sizeof(buffer))) return NULL; strings = talloc_realloc(ctx, strings, char, @@ -1279,7 +1280,7 @@ static int send_directory_part(const void *ctx, struct connection *conn, struct node *node; char gen[24]; - if (xs_count_strings(in->buffer, in->used) != 2) + if (xenstore_count_strings(in->buffer, in->used) != 2) return EINVAL; /* First arg is node name. */ @@ -1766,7 +1767,7 @@ static int do_set_perms(const void *ctx, struct connection *conn, char *name, *permstr; struct node *node; - perms.num = xs_count_strings(in->buffer, in->used); + perms.num = xenstore_count_strings(in->buffer, in->used); if (perms.num < 2) return EINVAL; @@ -1779,7 +1780,7 @@ static int do_set_perms(const void *ctx, struct connection *conn, perms.p = talloc_array(ctx, struct xs_permissions, perms.num); if (!perms.p) return ENOMEM; - if (!xs_strings_to_perms(perms.p, perms.num, permstr)) + if (!xenstore_strings_to_perms(perms.p, perms.num, permstr)) return errno; if (domain_alloc_permrefs(&perms) < 0) @@ -2575,7 +2576,7 @@ static void destroy_fds(void) static void init_sockets(void) { struct sockaddr_un addr; - const char *soc_str = xs_daemon_socket(); + const char *soc_str = xenstore_daemon_path(); if (!soc_str) barf_perror("Failed to obtain xs domain socket"); @@ -2890,7 +2891,7 @@ int main(int argc, char *argv[]) /* Make sure xenstored directory exists. */ /* Errors ignored here, will be reported when we open files */ - mkdir(xs_daemon_rundir(), 0755); + mkdir(xenstore_daemon_rundir(), 0755); if (dofork) { openlog("xenstored", 0, LOG_DAEMON); diff --git a/tools/xenstore/xs_lib.c b/tools/xenstore/xs_lib.c deleted file mode 100644 index 826fa7b5a8..0000000000 --- a/tools/xenstore/xs_lib.c +++ /dev/null @@ -1,126 +0,0 @@ -/* - Common routines between Xen store user library and daemon. - Copyright (C) 2005 Rusty Russell IBM Corporation - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - This library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with this library; If not, see . -*/ - -#include -#include -#include -#include -#include -#include -#include "xs_lib.h" - -/* Common routines for the Xen store daemon and client library. */ - -const char *xs_daemon_rundir(void) -{ - char *s = getenv("XENSTORED_RUNDIR"); - return (s ? s : XEN_RUN_STORED); -} - -static const char *xs_daemon_path(void) -{ - static char buf[PATH_MAX]; - char *s = getenv("XENSTORED_PATH"); - if (s) - return s; - if (snprintf(buf, sizeof(buf), "%s/socket", - xs_daemon_rundir()) >= PATH_MAX) - return NULL; - return buf; -} - -const char *xs_daemon_socket(void) -{ - return xs_daemon_path(); -} - -/* Convert strings to permissions. False if a problem. */ -bool xs_strings_to_perms(struct xs_permissions *perms, unsigned int num, - const char *strings) -{ - const char *p; - char *end; - unsigned int i; - - for (p = strings, i = 0; i < num; i++) { - /* "r", "w", or "b" for both. */ - switch (*p) { - case 'r': - perms[i].perms = XS_PERM_READ; - break; - case 'w': - perms[i].perms = XS_PERM_WRITE; - break; - case 'b': - perms[i].perms = XS_PERM_READ|XS_PERM_WRITE; - break; - case 'n': - perms[i].perms = XS_PERM_NONE; - break; - default: - errno = EINVAL; - return false; - } - p++; - perms[i].id = strtol(p, &end, 0); - if (*end || !*p) { - errno = EINVAL; - return false; - } - p = end + 1; - } - return true; -} - -/* Convert permissions to a string (up to len MAX_STRLEN(unsigned int)+1). */ -bool xs_perm_to_string(const struct xs_permissions *perm, - char *buffer, size_t buf_len) -{ - switch ((int)perm->perms & ~XS_PERM_IGNORE) { - case XS_PERM_WRITE: - *buffer = 'w'; - break; - case XS_PERM_READ: - *buffer = 'r'; - break; - case XS_PERM_READ|XS_PERM_WRITE: - *buffer = 'b'; - break; - case XS_PERM_NONE: - *buffer = 'n'; - break; - default: - errno = EINVAL; - return false; - } - snprintf(buffer+1, buf_len-1, "%i", (int)perm->id); - return true; -} - -/* Given a string and a length, count how many strings (nul terms). */ -unsigned int xs_count_strings(const char *strings, unsigned int len) -{ - unsigned int num; - const char *p; - - for (p = strings, num = 0; p < strings + len; p++) - if (*p == '\0') - num++; - - return num; -} diff --git a/tools/xenstore/xs_lib.h b/tools/xenstore/xs_lib.h deleted file mode 100644 index 5b9874d741..0000000000 --- a/tools/xenstore/xs_lib.h +++ /dev/null @@ -1,31 +0,0 @@ -/* - Common routines between Xen store user library and daemon. - Copyright (C) 2005 Rusty Russell IBM Corporation - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - This library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with this library; If not, see . -*/ - -#ifndef XS_LIB_H -#define XS_LIB_H - -#include "xenstore_lib.h" - -/* Convert permissions to a string (up to len MAX_STRLEN(unsigned int)+1). */ -bool xs_perm_to_string(const struct xs_permissions *perm, - char *buffer, size_t buf_len); - -/* Given a string and a length, count how many strings (nul terms). */ -unsigned int xs_count_strings(const char *strings, unsigned int len); - -#endif /* XS_LIB_H */ -- 2.35.3 From xen-devel-bounces@lists.xenproject.org Tue Jun 27 12:28:23 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 12:28:23 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556121.868396 (Exim 4.92) (envelope-from ) id 1qE7np-0001VZ-EG; Tue, 27 Jun 2023 12:28:13 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556121.868396; Tue, 27 Jun 2023 12:28:13 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE7np-0001VS-BE; Tue, 27 Jun 2023 12:28:13 +0000 Received: by outflank-mailman (input) for mailman id 556121; Tue, 27 Jun 2023 12:28:11 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE7nn-0000fg-F7 for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 12:28:11 +0000 Received: from smtp-out2.suse.de (smtp-out2.suse.de [195.135.220.29]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 13cd77f5-14e6-11ee-b237-6b7b168915f2; Tue, 27 Jun 2023 14:28:10 +0200 (CEST) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by smtp-out2.suse.de (Postfix) with ESMTPS id 239A71F898; Tue, 27 Jun 2023 12:28:10 +0000 (UTC) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id E5DE813462; Tue, 27 Jun 2023 12:28:09 +0000 (UTC) Received: from dovecot-director2.suse.de ([192.168.254.65]) by imap2.suse-dmz.suse.de with ESMTPSA id NNmaNtnVmmRUSAAAMHmgww (envelope-from ); Tue, 27 Jun 2023 12:28:09 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 13cd77f5-14e6-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1; t=1687868890; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=0lmDSOzNGqLK8c7swzzgALv2u+YxRV1MuLwjYxjFGHE=; b=bF1QIufFwxbQP98F0CexJQ2K4a47Nln9sij4V+maV48RhSR4AV8uHGJG5qFBB7N1ZrSU43 g4ovhg/wud13xYCEilBrkXQ/eO5tkRY1eQY6tafulmz+A9Ygm1oFpz2xFl9s5P5CQcm3XP bKTmWWXQEk9pbxmp2GyR1j+7J5zmBA8= From: Juergen Gross To: xen-devel@lists.xenproject.org Cc: Juergen Gross , Wei Liu , Julien Grall , Anthony PERARD Subject: [PATCH v4 3/5] tools/xenstore: split out environment specific live update code Date: Tue, 27 Jun 2023 14:27:48 +0200 Message-Id: <20230627122750.2007-4-jgross@suse.com> X-Mailer: git-send-email 2.35.3 In-Reply-To: <20230627122750.2007-1-jgross@suse.com> References: <20230627122750.2007-1-jgross@suse.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Instead of using #ifdef in xenstored_control.c split out the code of environment specific functions (daemon or Mini-OS) to dedicated source files. Signed-off-by: Juergen Gross --- V4: - split lu_destroy() in common and specific parts (Julien Grall) --- tools/xenstore/Makefile.common | 8 +- tools/xenstore/xenstored_control.c | 247 +-------------------------- tools/xenstore/xenstored_lu.h | 56 ++++++ tools/xenstore/xenstored_lu_daemon.c | 130 ++++++++++++++ tools/xenstore/xenstored_lu_minios.c | 118 +++++++++++++ 5 files changed, 312 insertions(+), 247 deletions(-) create mode 100644 tools/xenstore/xenstored_lu.h create mode 100644 tools/xenstore/xenstored_lu_daemon.c create mode 100644 tools/xenstore/xenstored_lu_minios.c diff --git a/tools/xenstore/Makefile.common b/tools/xenstore/Makefile.common index f71c9bfd55..c42796fe34 100644 --- a/tools/xenstore/Makefile.common +++ b/tools/xenstore/Makefile.common @@ -4,10 +4,10 @@ XENSTORED_OBJS-y := xenstored_core.o xenstored_watch.o xenstored_domain.o XENSTORED_OBJS-y += xenstored_transaction.o xenstored_control.o XENSTORED_OBJS-y += talloc.o utils.o tdb.o hashtable.o -XENSTORED_OBJS-$(CONFIG_Linux) += xenstored_posix.o -XENSTORED_OBJS-$(CONFIG_NetBSD) += xenstored_posix.o -XENSTORED_OBJS-$(CONFIG_FreeBSD) += xenstored_posix.o -XENSTORED_OBJS-$(CONFIG_MiniOS) += xenstored_minios.o +XENSTORED_OBJS-$(CONFIG_Linux) += xenstored_posix.o xenstored_lu_daemon.o +XENSTORED_OBJS-$(CONFIG_NetBSD) += xenstored_posix.o xenstored_lu_daemon.o +XENSTORED_OBJS-$(CONFIG_FreeBSD) += xenstored_posix.o xenstored_lu_daemon.o +XENSTORED_OBJS-$(CONFIG_MiniOS) += xenstored_minios.o xenstored_lu_minios.o # Include configure output (config.h) CFLAGS += -include $(XEN_ROOT)/tools/config.h diff --git a/tools/xenstore/xenstored_control.c b/tools/xenstore/xenstored_control.c index 0d131e2ebc..8f1f31fd6a 100644 --- a/tools/xenstore/xenstored_control.c +++ b/tools/xenstore/xenstored_control.c @@ -38,63 +38,21 @@ #include "xenstored_core.h" #include "xenstored_control.h" #include "xenstored_domain.h" +#include "xenstored_lu.h" #include "xenstored_watch.h" -/* Mini-OS only knows about MAP_ANON. */ -#ifndef MAP_ANONYMOUS -#define MAP_ANONYMOUS MAP_ANON -#endif - #ifndef NO_LIVE_UPDATE -struct live_update { - /* For verification the correct connection is acting. */ - struct connection *conn; - - /* Pointer to the command used to request LU */ - struct buffered_data *in; - -#ifdef __MINIOS__ - void *kernel; - unsigned int kernel_size; - unsigned int kernel_off; - - void *dump_state; - unsigned long dump_size; -#else - char *filename; -#endif - - char *cmdline; - - /* Start parameters. */ - bool force; - unsigned int timeout; - time_t started_at; -}; - -static struct live_update *lu_status; - -struct lu_dump_state { - void *buf; - unsigned int size; -#ifndef __MINIOS__ - int fd; - char *filename; -#endif -}; +struct live_update *lu_status; static int lu_destroy(void *data) { -#ifdef __MINIOS__ - if (lu_status->dump_state) - munmap(lu_status->dump_state, lu_status->dump_size); -#endif + lu_destroy_arch(data); lu_status = NULL; return 0; } -static const char *lu_begin(struct connection *conn) +const char *lu_begin(struct connection *conn) { if (lu_status) return "live-update session already active."; @@ -431,203 +389,6 @@ static const char *lu_cmdline(const void *ctx, struct connection *conn, return NULL; } -#ifdef __MINIOS__ -static const char *lu_binary_alloc(const void *ctx, struct connection *conn, - unsigned long size) -{ - const char *ret; - - syslog(LOG_INFO, "live-update: binary size %lu\n", size); - - ret = lu_begin(conn); - if (ret) - return ret; - - lu_status->kernel = talloc_size(lu_status, size); - if (!lu_status->kernel) - return "Allocation failure."; - - lu_status->kernel_size = size; - lu_status->kernel_off = 0; - - errno = 0; - return NULL; -} - -static const char *lu_binary_save(const void *ctx, struct connection *conn, - unsigned int size, const char *data) -{ - if (!lu_status || lu_status->conn != conn) - return "Not in live-update session."; - - if (lu_status->kernel_off + size > lu_status->kernel_size) - return "Too much kernel data."; - - memcpy(lu_status->kernel + lu_status->kernel_off, data, size); - lu_status->kernel_off += size; - - errno = 0; - return NULL; -} - -static const char *lu_arch(const void *ctx, struct connection *conn, - char **vec, int num) -{ - if (num == 2 && !strcmp(vec[0], "-b")) - return lu_binary_alloc(ctx, conn, atol(vec[1])); - if (num > 2 && !strcmp(vec[0], "-d")) - return lu_binary_save(ctx, conn, atoi(vec[1]), vec[2]); - - errno = EINVAL; - return NULL; -} - -static FILE *lu_dump_open(const void *ctx) -{ - lu_status->dump_size = ROUNDUP(talloc_total_size(NULL) * 2, - XC_PAGE_SHIFT); - lu_status->dump_state = mmap(NULL, lu_status->dump_size, - PROT_READ | PROT_WRITE, - MAP_PRIVATE | MAP_ANONYMOUS, -1, 0); - if (lu_status->dump_state == MAP_FAILED) - return NULL; - - return fmemopen(lu_status->dump_state, lu_status->dump_size, "w"); -} - -static void lu_dump_close(FILE *fp) -{ - size_t size; - - size = ftell(fp); - size = ROUNDUP(size, XC_PAGE_SHIFT); - munmap(lu_status->dump_state + size, lu_status->dump_size - size); - lu_status->dump_size = size; - - fclose(fp); -} - -static void lu_get_dump_state(struct lu_dump_state *state) -{ -} - -static void lu_close_dump_state(struct lu_dump_state *state) -{ -} - -static char *lu_exec(const void *ctx, int argc, char **argv) -{ - return "NYI"; -} -#else -static const char *lu_binary(const void *ctx, struct connection *conn, - const char *filename) -{ - const char *ret; - struct stat statbuf; - - syslog(LOG_INFO, "live-update: binary %s\n", filename); - - if (stat(filename, &statbuf)) - return "File not accessible."; - if (!(statbuf.st_mode & (S_IXOTH | S_IXGRP | S_IXUSR))) - return "File not executable."; - - ret = lu_begin(conn); - if (ret) - return ret; - - lu_status->filename = talloc_strdup(lu_status, filename); - if (!lu_status->filename) - return "Allocation failure."; - - errno = 0; - return NULL; -} - -static const char *lu_arch(const void *ctx, struct connection *conn, - char **vec, int num) -{ - if (num == 2 && !strcmp(vec[0], "-f")) - return lu_binary(ctx, conn, vec[1]); - - errno = EINVAL; - return NULL; -} - -static FILE *lu_dump_open(const void *ctx) -{ - char *filename; - int fd; - - filename = talloc_asprintf(ctx, "%s/state_dump", - xenstore_daemon_rundir()); - if (!filename) - return NULL; - - fd = open(filename, O_WRONLY | O_CREAT | O_TRUNC, S_IRUSR | S_IWUSR); - if (fd < 0) - return NULL; - - return fdopen(fd, "w"); -} - -static void lu_dump_close(FILE *fp) -{ - fclose(fp); -} - -static void lu_get_dump_state(struct lu_dump_state *state) -{ - struct stat statbuf; - - state->size = 0; - - state->filename = talloc_asprintf(NULL, "%s/state_dump", - xenstore_daemon_rundir()); - if (!state->filename) - barf("Allocation failure"); - - state->fd = open(state->filename, O_RDONLY); - if (state->fd < 0) - return; - if (fstat(state->fd, &statbuf) != 0) - goto out_close; - state->size = statbuf.st_size; - - state->buf = mmap(NULL, state->size, PROT_READ, MAP_PRIVATE, - state->fd, 0); - if (state->buf == MAP_FAILED) { - state->size = 0; - goto out_close; - } - - return; - - out_close: - close(state->fd); -} - -static void lu_close_dump_state(struct lu_dump_state *state) -{ - assert(state->filename != NULL); - - munmap(state->buf, state->size); - close(state->fd); - - unlink(state->filename); - talloc_free(state->filename); -} - -static char *lu_exec(const void *ctx, int argc, char **argv) -{ - argv[0] = lu_status->filename; - execvp(argv[0], argv); - - return "Error activating new binary."; -} -#endif - static bool lu_check_lu_allowed(void) { struct connection *conn; diff --git a/tools/xenstore/xenstored_lu.h b/tools/xenstore/xenstored_lu.h new file mode 100644 index 0000000000..1c09b9b639 --- /dev/null +++ b/tools/xenstore/xenstored_lu.h @@ -0,0 +1,56 @@ +/* SPDX-License-Identifier: MIT */ + +/* + * Live Update interfaces for Xen Store Daemon. + * Copyright (C) 2022 Juergen Gross, SUSE LLC + */ + +#ifndef NO_LIVE_UPDATE +struct live_update { + /* For verification the correct connection is acting. */ + struct connection *conn; + + /* Pointer to the command used to request LU */ + struct buffered_data *in; + +#ifdef __MINIOS__ + void *kernel; + unsigned int kernel_size; + unsigned int kernel_off; + + void *dump_state; + unsigned long dump_size; +#else + char *filename; +#endif + + char *cmdline; + + /* Start parameters. */ + bool force; + unsigned int timeout; + time_t started_at; +}; + +struct lu_dump_state { + void *buf; + unsigned int size; +#ifndef __MINIOS__ + int fd; + char *filename; +#endif +}; + +extern struct live_update *lu_status; + +/* Live update private interfaces. */ +void lu_get_dump_state(struct lu_dump_state *state); +void lu_close_dump_state(struct lu_dump_state *state); +FILE *lu_dump_open(const void *ctx); +void lu_dump_close(FILE *fp); +char *lu_exec(const void *ctx, int argc, char **argv); +const char *lu_arch(const void *ctx, struct connection *conn, char **vec, + int num); +const char *lu_begin(struct connection *conn); +void lu_destroy_arch(void *data); +#endif diff --git a/tools/xenstore/xenstored_lu_daemon.c b/tools/xenstore/xenstored_lu_daemon.c new file mode 100644 index 0000000000..310fb8c2e6 --- /dev/null +++ b/tools/xenstore/xenstored_lu_daemon.c @@ -0,0 +1,130 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ + +/* + * Live Update for Xen Store Daemon. + * Copyright (C) 2022 Juergen Gross, SUSE LLC + */ + +#include +#include +#include +#include +#include +#include + +#include "talloc.h" +#include "xenstored_core.h" +#include "xenstored_lu.h" + +#ifndef NO_LIVE_UPDATE +void lu_get_dump_state(struct lu_dump_state *state) +{ + struct stat statbuf; + + state->size = 0; + + state->filename = talloc_asprintf(NULL, "%s/state_dump", + xenstore_daemon_rundir()); + if (!state->filename) + barf("Allocation failure"); + + state->fd = open(state->filename, O_RDONLY); + if (state->fd < 0) + return; + if (fstat(state->fd, &statbuf) != 0) + goto out_close; + state->size = statbuf.st_size; + + state->buf = mmap(NULL, state->size, PROT_READ, MAP_PRIVATE, + state->fd, 0); + if (state->buf == MAP_FAILED) { + state->size = 0; + goto out_close; + } + + return; + + out_close: + close(state->fd); +} + +void lu_close_dump_state(struct lu_dump_state *state) +{ + assert(state->filename != NULL); + + munmap(state->buf, state->size); + close(state->fd); + + unlink(state->filename); + talloc_free(state->filename); +} + +FILE *lu_dump_open(const void *ctx) +{ + char *filename; + int fd; + + filename = talloc_asprintf(ctx, "%s/state_dump", + xenstore_daemon_rundir()); + if (!filename) + return NULL; + + fd = open(filename, O_WRONLY | O_CREAT | O_TRUNC, S_IRUSR | S_IWUSR); + if (fd < 0) + return NULL; + + return fdopen(fd, "w"); +} + +void lu_dump_close(FILE *fp) +{ + fclose(fp); +} + +char *lu_exec(const void *ctx, int argc, char **argv) +{ + argv[0] = lu_status->filename; + execvp(argv[0], argv); + + return "Error activating new binary."; +} + +void lu_destroy_arch(void *data) +{ +} + +static const char *lu_binary(const void *ctx, struct connection *conn, + const char *filename) +{ + const char *ret; + struct stat statbuf; + + syslog(LOG_INFO, "live-update: binary %s\n", filename); + + if (stat(filename, &statbuf)) + return "File not accessible."; + if (!(statbuf.st_mode & (S_IXOTH | S_IXGRP | S_IXUSR))) + return "File not executable."; + + ret = lu_begin(conn); + if (ret) + return ret; + + lu_status->filename = talloc_strdup(lu_status, filename); + if (!lu_status->filename) + return "Allocation failure."; + + errno = 0; + return NULL; +} + +const char *lu_arch(const void *ctx, struct connection *conn, char **vec, + int num) +{ + if (num == 2 && !strcmp(vec[0], "-f")) + return lu_binary(ctx, conn, vec[1]); + + errno = EINVAL; + return NULL; +} +#endif diff --git a/tools/xenstore/xenstored_lu_minios.c b/tools/xenstore/xenstored_lu_minios.c new file mode 100644 index 0000000000..88fb9e0f38 --- /dev/null +++ b/tools/xenstore/xenstored_lu_minios.c @@ -0,0 +1,118 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ + +/* + * Live Update for Xen Store Daemon. + * Copyright (C) 2022 Juergen Gross, SUSE LLC + */ + +#include +#include +#include +#include +#include +#include +#include + +#include "talloc.h" +#include "xenstored_lu.h" + +/* Mini-OS only knows about MAP_ANON. */ +#ifndef MAP_ANONYMOUS +#define MAP_ANONYMOUS MAP_ANON +#endif + +#ifndef NO_LIVE_UPDATE +void lu_get_dump_state(struct lu_dump_state *state) +{ +} + +void lu_close_dump_state(struct lu_dump_state *state) +{ +} + +FILE *lu_dump_open(const void *ctx) +{ + lu_status->dump_size = ROUNDUP(talloc_total_size(NULL) * 2, + XC_PAGE_SHIFT); + lu_status->dump_state = mmap(NULL, lu_status->dump_size, + PROT_READ | PROT_WRITE, + MAP_PRIVATE | MAP_ANONYMOUS, -1, 0); + if (lu_status->dump_state == MAP_FAILED) + return NULL; + + return fmemopen(lu_status->dump_state, lu_status->dump_size, "w"); +} + +void lu_dump_close(FILE *fp) +{ + size_t size; + + size = ftell(fp); + size = ROUNDUP(size, XC_PAGE_SHIFT); + munmap(lu_status->dump_state + size, lu_status->dump_size - size); + lu_status->dump_size = size; + + fclose(fp); +} + +char *lu_exec(const void *ctx, int argc, char **argv) +{ + return "NYI"; +} + +void lu_destroy_arch(void *data) +{ + if (lu_status->dump_state) + munmap(lu_status->dump_state, lu_status->dump_size); +} + +static const char *lu_binary_alloc(const void *ctx, struct connection *conn, + unsigned long size) +{ + const char *ret; + + syslog(LOG_INFO, "live-update: binary size %lu\n", size); + + ret = lu_begin(conn); + if (ret) + return ret; + + lu_status->kernel = talloc_size(lu_status, size); + if (!lu_status->kernel) + return "Allocation failure."; + + lu_status->kernel_size = size; + lu_status->kernel_off = 0; + + errno = 0; + return NULL; +} + +static const char *lu_binary_save(const void *ctx, struct connection *conn, + unsigned int size, const char *data) +{ + if (!lu_status || lu_status->conn != conn) + return "Not in live-update session."; + + if (lu_status->kernel_off + size > lu_status->kernel_size) + return "Too much kernel data."; + + memcpy(lu_status->kernel + lu_status->kernel_off, data, size); + lu_status->kernel_off += size; + + errno = 0; + return NULL; +} + +const char *lu_arch(const void *ctx, struct connection *conn, char **vec, + int num) +{ + if (num == 2 && !strcmp(vec[0], "-b")) + return lu_binary_alloc(ctx, conn, atol(vec[1])); + if (num > 2 && !strcmp(vec[0], "-d")) + return lu_binary_save(ctx, conn, atoi(vec[1]), vec[2]); + + errno = EINVAL; + return NULL; +} +#endif -- 2.35.3 From xen-devel-bounces@lists.xenproject.org Tue Jun 27 12:28:30 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 12:28:30 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556124.868407 (Exim 4.92) (envelope-from ) id 1qE7nw-0001zf-MT; Tue, 27 Jun 2023 12:28:20 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556124.868407; Tue, 27 Jun 2023 12:28:20 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE7nw-0001zM-JX; Tue, 27 Jun 2023 12:28:20 +0000 Received: by outflank-mailman (input) for mailman id 556124; Tue, 27 Jun 2023 12:28:19 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE7nu-0000v0-ST for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 12:28:19 +0000 Received: from smtp-out1.suse.de (smtp-out1.suse.de [195.135.220.28]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 1724a9d1-14e6-11ee-8611-37d641c3527e; Tue, 27 Jun 2023 14:28:16 +0200 (CEST) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by smtp-out1.suse.de (Postfix) with ESMTPS id C0E5B21887; Tue, 27 Jun 2023 12:28:15 +0000 (UTC) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id 8A3C213462; Tue, 27 Jun 2023 12:28:15 +0000 (UTC) Received: from dovecot-director2.suse.de ([192.168.254.65]) by imap2.suse-dmz.suse.de with ESMTPSA id uKU4IN/VmmRnSAAAMHmgww (envelope-from ); Tue, 27 Jun 2023 12:28:15 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 1724a9d1-14e6-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1; t=1687868895; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=Uded6oY6Ay2EcxlEmvhHiri4cvIDg6QKAnrdw83iZnM=; b=saQL5MENUDALuquTVxuF4iTrFJFw2K5xvb2fEVOZCGgQwZ/suLGaLeq/GALETaQVyxQqjh P0nXw2xEX+F2HtoiQ33s0LU4G0n7mT77OBs3pt9PBgIDiG7+Yc6UsDK0l9KIuTZRgkjfYr ftfHe8x3IFrmCJhJajsBB/gqNww8Akk= From: Juergen Gross To: xen-devel@lists.xenproject.org Cc: Juergen Gross , Wei Liu , Julien Grall , Anthony PERARD Subject: [PATCH v4 4/5] tools/xenstore: split out rest of live update control code Date: Tue, 27 Jun 2023 14:27:49 +0200 Message-Id: <20230627122750.2007-5-jgross@suse.com> X-Mailer: git-send-email 2.35.3 In-Reply-To: <20230627122750.2007-1-jgross@suse.com> References: <20230627122750.2007-1-jgross@suse.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Move the rest of live update related code from xenstored_control.c to a dedicated new source file. Signed-off-by: Juergen Gross --- tools/xenstore/Makefile.common | 2 +- tools/xenstore/xenstored_control.c | 417 ----------------------------- tools/xenstore/xenstored_control.h | 8 - tools/xenstore/xenstored_core.c | 1 + tools/xenstore/xenstored_lu.c | 408 ++++++++++++++++++++++++++++ tools/xenstore/xenstored_lu.h | 25 ++ 6 files changed, 435 insertions(+), 426 deletions(-) create mode 100644 tools/xenstore/xenstored_lu.c diff --git a/tools/xenstore/Makefile.common b/tools/xenstore/Makefile.common index c42796fe34..657a16849e 100644 --- a/tools/xenstore/Makefile.common +++ b/tools/xenstore/Makefile.common @@ -1,7 +1,7 @@ # Makefile shared with stubdom XENSTORED_OBJS-y := xenstored_core.o xenstored_watch.o xenstored_domain.o -XENSTORED_OBJS-y += xenstored_transaction.o xenstored_control.o +XENSTORED_OBJS-y += xenstored_transaction.o xenstored_control.o xenstored_lu.o XENSTORED_OBJS-y += talloc.o utils.o tdb.o hashtable.o XENSTORED_OBJS-$(CONFIG_Linux) += xenstored_posix.o xenstored_lu_daemon.o diff --git a/tools/xenstore/xenstored_control.c b/tools/xenstore/xenstored_control.c index 8f1f31fd6a..145a0e5aff 100644 --- a/tools/xenstore/xenstored_control.c +++ b/tools/xenstore/xenstored_control.c @@ -16,21 +16,13 @@ along with this program; If not, see . */ -#include -#include #include #include #include #include #include -#include -#include #include -#include -#include -#include #include -#include #include #include "utils.h" @@ -39,77 +31,6 @@ #include "xenstored_control.h" #include "xenstored_domain.h" #include "xenstored_lu.h" -#include "xenstored_watch.h" - -#ifndef NO_LIVE_UPDATE -struct live_update *lu_status; - -static int lu_destroy(void *data) -{ - lu_destroy_arch(data); - lu_status = NULL; - - return 0; -} - -const char *lu_begin(struct connection *conn) -{ - if (lu_status) - return "live-update session already active."; - - lu_status = talloc_zero(conn, struct live_update); - if (!lu_status) - return "Allocation failure."; - lu_status->conn = conn; - talloc_set_destructor(lu_status, lu_destroy); - - return NULL; -} - -struct connection *lu_get_connection(void) -{ - return lu_status ? lu_status->conn : NULL; -} - -unsigned int lu_write_response(FILE *fp) -{ - struct xsd_sockmsg msg; - - assert(lu_status); - - msg = lu_status->in->hdr.msg; - - msg.len = sizeof("OK"); - if (fp && fwrite(&msg, sizeof(msg), 1, fp) != 1) - return 0; - if (fp && fwrite("OK", msg.len, 1, fp) != 1) - return 0; - - return sizeof(msg) + msg.len; -} - -bool lu_is_pending(void) -{ - return lu_status != NULL; -} - -#else -struct connection *lu_get_connection(void) -{ - return NULL; -} - -unsigned int lu_write_response(FILE *fp) -{ - /* Unsupported */ - return 0; -} - -bool lu_is_pending(void) -{ - return false; -} -#endif struct cmd_s { char *cmd; @@ -360,344 +281,6 @@ static int do_control_print(const void *ctx, struct connection *conn, return 0; } -#ifndef NO_LIVE_UPDATE -static const char *lu_abort(const void *ctx, struct connection *conn) -{ - syslog(LOG_INFO, "live-update: abort\n"); - - if (!lu_status) - return "No live-update session active."; - - /* Destructor will do the real abort handling. */ - talloc_free(lu_status); - - return NULL; -} - -static const char *lu_cmdline(const void *ctx, struct connection *conn, - const char *cmdline) -{ - syslog(LOG_INFO, "live-update: cmdline %s\n", cmdline); - - if (!lu_status || lu_status->conn != conn) - return "Not in live-update session."; - - lu_status->cmdline = talloc_strdup(lu_status, cmdline); - if (!lu_status->cmdline) - return "Allocation failure."; - - return NULL; -} - -static bool lu_check_lu_allowed(void) -{ - struct connection *conn; - time_t now = time(NULL); - unsigned int ta_total = 0, ta_long = 0; - - list_for_each_entry(conn, &connections, list) { - if (conn->ta_start_time) { - ta_total++; - if (now - conn->ta_start_time >= lu_status->timeout) - ta_long++; - } - } - - /* - * Allow LiveUpdate if one of the following conditions is met: - * - There is no active transactions - * - All transactions are long running (e.g. they have been - * active for more than lu_status->timeout sec) and the admin as - * requested to force the operation. - */ - return ta_total ? (lu_status->force && ta_long == ta_total) : true; -} - -static const char *lu_reject_reason(const void *ctx) -{ - char *ret = NULL; - struct connection *conn; - time_t now = time(NULL); - - list_for_each_entry(conn, &connections, list) { - unsigned long tdiff = now - conn->ta_start_time; - - if (conn->ta_start_time && (tdiff >= lu_status->timeout)) { - ret = talloc_asprintf(ctx, "%s\nDomain %u: %ld s", - ret ? : "Domains with long running transactions:", - conn->id, tdiff); - } - } - - return ret ? (const char *)ret : "Overlapping transactions"; -} - -static const char *lu_dump_state(const void *ctx, struct connection *conn) -{ - FILE *fp; - const char *ret; - struct xs_state_record_header end; - struct xs_state_preamble pre; - - fp = lu_dump_open(ctx); - if (!fp) - return "Dump state open error"; - - memcpy(pre.ident, XS_STATE_IDENT, sizeof(pre.ident)); - pre.version = htobe32(XS_STATE_VERSION); - pre.flags = XS_STATE_FLAGS; - if (fwrite(&pre, sizeof(pre), 1, fp) != 1) { - ret = "Dump write error"; - goto out; - } - - ret = dump_state_global(fp); - if (ret) - goto out; - ret = dump_state_connections(fp); - if (ret) - goto out; - ret = dump_state_nodes(fp, ctx); - if (ret) - goto out; - - end.type = XS_STATE_TYPE_END; - end.length = 0; - if (fwrite(&end, sizeof(end), 1, fp) != 1) - ret = "Dump write error"; - - out: - lu_dump_close(fp); - - return ret; -} - -void lu_read_state(void) -{ - struct lu_dump_state state = {}; - struct xs_state_record_header *head; - void *ctx = talloc_new(NULL); /* Work context for subfunctions. */ - struct xs_state_preamble *pre; - - syslog(LOG_INFO, "live-update: read state\n"); - lu_get_dump_state(&state); - if (state.size == 0) - barf_perror("No state found after live-update"); - - pre = state.buf; - if (memcmp(pre->ident, XS_STATE_IDENT, sizeof(pre->ident)) || - pre->version != htobe32(XS_STATE_VERSION) || - pre->flags != XS_STATE_FLAGS) - barf("Unknown record identifier"); - for (head = state.buf + sizeof(*pre); - head->type != XS_STATE_TYPE_END && - (void *)head - state.buf < state.size; - head = (void *)head + sizeof(*head) + head->length) { - switch (head->type) { - case XS_STATE_TYPE_GLOBAL: - read_state_global(ctx, head + 1); - break; - case XS_STATE_TYPE_CONN: - read_state_connection(ctx, head + 1); - break; - case XS_STATE_TYPE_WATCH: - read_state_watch(ctx, head + 1); - break; - case XS_STATE_TYPE_TA: - xprintf("live-update: ignore transaction record\n"); - break; - case XS_STATE_TYPE_NODE: - read_state_node(ctx, head + 1); - break; - default: - xprintf("live-update: unknown state record %08x\n", - head->type); - break; - } - } - - lu_close_dump_state(&state); - - talloc_free(ctx); - - /* - * We may have missed the VIRQ_DOM_EXC notification and a domain may - * have died while we were live-updating. So check all the domains are - * still alive. - */ - check_domains(); -} - -static const char *lu_activate_binary(const void *ctx) -{ - int argc; - char **argv; - unsigned int i; - - if (lu_status->cmdline) { - argc = 4; /* At least one arg + progname + "-U" + NULL. */ - for (i = 0; lu_status->cmdline[i]; i++) - if (isspace(lu_status->cmdline[i])) - argc++; - argv = talloc_array(ctx, char *, argc); - if (!argv) - return "Allocation failure."; - - i = 0; - argc = 1; - argv[1] = strtok(lu_status->cmdline, " \t"); - while (argv[argc]) { - if (!strcmp(argv[argc], "-U")) - i = 1; - argc++; - argv[argc] = strtok(NULL, " \t"); - } - - if (!i) { - argv[argc++] = "-U"; - argv[argc] = NULL; - } - } else { - for (i = 0; i < orig_argc; i++) - if (!strcmp(orig_argv[i], "-U")) - break; - - argc = orig_argc; - argv = talloc_array(ctx, char *, orig_argc + 2); - if (!argv) - return "Allocation failure."; - - memcpy(argv, orig_argv, orig_argc * sizeof(*argv)); - if (i == orig_argc) - argv[argc++] = "-U"; - argv[argc] = NULL; - } - - domain_deinit(); - - return lu_exec(ctx, argc, argv); -} - -static bool do_lu_start(struct delayed_request *req) -{ - time_t now = time(NULL); - const char *ret; - struct buffered_data *saved_in; - struct connection *conn = req->data; - - /* - * Cancellation may have been requested asynchronously. In this - * case, lu_status will be NULL. - */ - if (!lu_status) { - ret = "Cancellation was requested"; - goto out; - } - - assert(lu_status->conn == conn); - - if (!lu_check_lu_allowed()) { - if (now < lu_status->started_at + lu_status->timeout) - return false; - if (!lu_status->force) { - ret = lu_reject_reason(req); - goto out; - } - } - - assert(req->in == lu_status->in); - /* Dump out internal state, including "OK" for live update. */ - ret = lu_dump_state(req->in, conn); - if (!ret) { - /* Perform the activation of new binary. */ - ret = lu_activate_binary(req->in); - } - - /* We will reach this point only in case of failure. */ - out: - /* - * send_reply() will send the response for conn->in. Save the current - * conn->in and restore it afterwards. - */ - saved_in = conn->in; - conn->in = req->in; - send_reply(conn, XS_CONTROL, ret, strlen(ret) + 1); - conn->in = saved_in; - talloc_free(lu_status); - - return true; -} - -static const char *lu_start(const void *ctx, struct connection *conn, - bool force, unsigned int to) -{ - syslog(LOG_INFO, "live-update: start, force=%d, to=%u\n", force, to); - - if (!lu_status || lu_status->conn != conn) - return "Not in live-update session."; - -#ifdef __MINIOS__ - if (lu_status->kernel_size != lu_status->kernel_off) - return "Kernel not complete."; -#endif - - lu_status->force = force; - lu_status->timeout = to; - lu_status->started_at = time(NULL); - lu_status->in = conn->in; - - errno = delay_request(conn, conn->in, do_lu_start, conn, false); - - return NULL; -} - -static int do_control_lu(const void *ctx, struct connection *conn, - char **vec, int num) -{ - const char *ret = NULL; - unsigned int i; - bool force = false; - unsigned int to = 0; - - if (num < 1) - return EINVAL; - - if (!strcmp(vec[0], "-a")) { - if (num == 1) - ret = lu_abort(ctx, conn); - else - return EINVAL; - } else if (!strcmp(vec[0], "-c")) { - if (num == 2) - ret = lu_cmdline(ctx, conn, vec[1]); - else - return EINVAL; - } else if (!strcmp(vec[0], "-s")) { - for (i = 1; i < num; i++) { - if (!strcmp(vec[i], "-F")) - force = true; - else if (!strcmp(vec[i], "-t") && i < num - 1) { - i++; - to = atoi(vec[i]); - } else - return EINVAL; - } - ret = lu_start(ctx, conn, force, to); - if (!ret) - return errno; - } else { - ret = lu_arch(ctx, conn, vec, num); - if (!ret && errno) - return errno; - } - - if (!ret) - ret = "OK"; - send_reply(conn, XS_CONTROL, ret, strlen(ret) + 1); - return 0; -} -#endif - static int do_control_help(const void *, struct connection *, char **, int); static struct cmd_s cmds[] = { diff --git a/tools/xenstore/xenstored_control.h b/tools/xenstore/xenstored_control.h index a8cb76559b..faa955968d 100644 --- a/tools/xenstore/xenstored_control.h +++ b/tools/xenstore/xenstored_control.h @@ -18,11 +18,3 @@ int do_control(const void *ctx, struct connection *conn, struct buffered_data *in); -void lu_read_state(void); - -struct connection *lu_get_connection(void); - -/* Write the "OK" response for the live-update command */ -unsigned int lu_write_response(FILE *fp); - -bool lu_is_pending(void); diff --git a/tools/xenstore/xenstored_core.c b/tools/xenstore/xenstored_core.c index 62deee9cb9..31a862b715 100644 --- a/tools/xenstore/xenstored_core.c +++ b/tools/xenstore/xenstored_core.c @@ -52,6 +52,7 @@ #include "xenstored_transaction.h" #include "xenstored_domain.h" #include "xenstored_control.h" +#include "xenstored_lu.h" #include "tdb.h" #ifndef NO_SOCKETS diff --git a/tools/xenstore/xenstored_lu.c b/tools/xenstore/xenstored_lu.c new file mode 100644 index 0000000000..b20d0d37ea --- /dev/null +++ b/tools/xenstore/xenstored_lu.c @@ -0,0 +1,408 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ + +/* + * Live Update interfaces for Xen Store Daemon. + * Copyright (C) 2022 Juergen Gross, SUSE LLC + */ + +#include +#include +#include +#include +#include +#include + +#include "talloc.h" +#include "xenstored_core.h" +#include "xenstored_domain.h" +#include "xenstored_lu.h" +#include "xenstored_watch.h" + +#ifndef NO_LIVE_UPDATE +struct live_update *lu_status; + +static int lu_destroy(void *data) +{ + lu_destroy_arch(data); + lu_status = NULL; + + return 0; +} + +const char *lu_begin(struct connection *conn) +{ + if (lu_status) + return "live-update session already active."; + + lu_status = talloc_zero(conn, struct live_update); + if (!lu_status) + return "Allocation failure."; + lu_status->conn = conn; + talloc_set_destructor(lu_status, lu_destroy); + + return NULL; +} + +struct connection *lu_get_connection(void) +{ + return lu_status ? lu_status->conn : NULL; +} + +unsigned int lu_write_response(FILE *fp) +{ + struct xsd_sockmsg msg; + + assert(lu_status); + + msg = lu_status->in->hdr.msg; + + msg.len = sizeof("OK"); + if (fp && fwrite(&msg, sizeof(msg), 1, fp) != 1) + return 0; + if (fp && fwrite("OK", msg.len, 1, fp) != 1) + return 0; + + return sizeof(msg) + msg.len; +} + +bool lu_is_pending(void) +{ + return lu_status != NULL; +} + +void lu_read_state(void) +{ + struct lu_dump_state state = {}; + struct xs_state_record_header *head; + void *ctx = talloc_new(NULL); /* Work context for subfunctions. */ + struct xs_state_preamble *pre; + + syslog(LOG_INFO, "live-update: read state\n"); + lu_get_dump_state(&state); + if (state.size == 0) + barf_perror("No state found after live-update"); + + pre = state.buf; + if (memcmp(pre->ident, XS_STATE_IDENT, sizeof(pre->ident)) || + pre->version != htobe32(XS_STATE_VERSION) || + pre->flags != XS_STATE_FLAGS) + barf("Unknown record identifier"); + for (head = state.buf + sizeof(*pre); + head->type != XS_STATE_TYPE_END && + (void *)head - state.buf < state.size; + head = (void *)head + sizeof(*head) + head->length) { + switch (head->type) { + case XS_STATE_TYPE_GLOBAL: + read_state_global(ctx, head + 1); + break; + case XS_STATE_TYPE_CONN: + read_state_connection(ctx, head + 1); + break; + case XS_STATE_TYPE_WATCH: + read_state_watch(ctx, head + 1); + break; + case XS_STATE_TYPE_TA: + xprintf("live-update: ignore transaction record\n"); + break; + case XS_STATE_TYPE_NODE: + read_state_node(ctx, head + 1); + break; + default: + xprintf("live-update: unknown state record %08x\n", + head->type); + break; + } + } + + lu_close_dump_state(&state); + + talloc_free(ctx); + + /* + * We may have missed the VIRQ_DOM_EXC notification and a domain may + * have died while we were live-updating. So check all the domains are + * still alive. + */ + check_domains(); +} + +static const char *lu_abort(const void *ctx, struct connection *conn) +{ + syslog(LOG_INFO, "live-update: abort\n"); + + if (!lu_status) + return "No live-update session active."; + + /* Destructor will do the real abort handling. */ + talloc_free(lu_status); + + return NULL; +} + +static const char *lu_cmdline(const void *ctx, struct connection *conn, + const char *cmdline) +{ + syslog(LOG_INFO, "live-update: cmdline %s\n", cmdline); + + if (!lu_status || lu_status->conn != conn) + return "Not in live-update session."; + + lu_status->cmdline = talloc_strdup(lu_status, cmdline); + if (!lu_status->cmdline) + return "Allocation failure."; + + return NULL; +} + +static bool lu_check_lu_allowed(void) +{ + struct connection *conn; + time_t now = time(NULL); + unsigned int ta_total = 0, ta_long = 0; + + list_for_each_entry(conn, &connections, list) { + if (conn->ta_start_time) { + ta_total++; + if (now - conn->ta_start_time >= lu_status->timeout) + ta_long++; + } + } + + /* + * Allow LiveUpdate if one of the following conditions is met: + * - There is no active transactions + * - All transactions are long running (e.g. they have been + * active for more than lu_status->timeout sec) and the admin as + * requested to force the operation. + */ + return ta_total ? (lu_status->force && ta_long == ta_total) : true; +} + +static const char *lu_reject_reason(const void *ctx) +{ + char *ret = NULL; + struct connection *conn; + time_t now = time(NULL); + + list_for_each_entry(conn, &connections, list) { + unsigned long tdiff = now - conn->ta_start_time; + + if (conn->ta_start_time && (tdiff >= lu_status->timeout)) { + ret = talloc_asprintf(ctx, "%s\nDomain %u: %ld s", + ret ? : "Domains with long running transactions:", + conn->id, tdiff); + } + } + + return ret ? (const char *)ret : "Overlapping transactions"; +} + +static const char *lu_dump_state(const void *ctx, struct connection *conn) +{ + FILE *fp; + const char *ret; + struct xs_state_record_header end; + struct xs_state_preamble pre; + + fp = lu_dump_open(ctx); + if (!fp) + return "Dump state open error"; + + memcpy(pre.ident, XS_STATE_IDENT, sizeof(pre.ident)); + pre.version = htobe32(XS_STATE_VERSION); + pre.flags = XS_STATE_FLAGS; + if (fwrite(&pre, sizeof(pre), 1, fp) != 1) { + ret = "Dump write error"; + goto out; + } + + ret = dump_state_global(fp); + if (ret) + goto out; + ret = dump_state_connections(fp); + if (ret) + goto out; + ret = dump_state_nodes(fp, ctx); + if (ret) + goto out; + + end.type = XS_STATE_TYPE_END; + end.length = 0; + if (fwrite(&end, sizeof(end), 1, fp) != 1) + ret = "Dump write error"; + + out: + lu_dump_close(fp); + + return ret; +} + +static const char *lu_activate_binary(const void *ctx) +{ + int argc; + char **argv; + unsigned int i; + + if (lu_status->cmdline) { + argc = 4; /* At least one arg + progname + "-U" + NULL. */ + for (i = 0; lu_status->cmdline[i]; i++) + if (isspace(lu_status->cmdline[i])) + argc++; + argv = talloc_array(ctx, char *, argc); + if (!argv) + return "Allocation failure."; + + i = 0; + argc = 1; + argv[1] = strtok(lu_status->cmdline, " \t"); + while (argv[argc]) { + if (!strcmp(argv[argc], "-U")) + i = 1; + argc++; + argv[argc] = strtok(NULL, " \t"); + } + + if (!i) { + argv[argc++] = "-U"; + argv[argc] = NULL; + } + } else { + for (i = 0; i < orig_argc; i++) + if (!strcmp(orig_argv[i], "-U")) + break; + + argc = orig_argc; + argv = talloc_array(ctx, char *, orig_argc + 2); + if (!argv) + return "Allocation failure."; + + memcpy(argv, orig_argv, orig_argc * sizeof(*argv)); + if (i == orig_argc) + argv[argc++] = "-U"; + argv[argc] = NULL; + } + + domain_deinit(); + + return lu_exec(ctx, argc, argv); +} + +static bool do_lu_start(struct delayed_request *req) +{ + time_t now = time(NULL); + const char *ret; + struct buffered_data *saved_in; + struct connection *conn = req->data; + + /* + * Cancellation may have been requested asynchronously. In this + * case, lu_status will be NULL. + */ + if (!lu_status) { + ret = "Cancellation was requested"; + goto out; + } + + assert(lu_status->conn == conn); + + if (!lu_check_lu_allowed()) { + if (now < lu_status->started_at + lu_status->timeout) + return false; + if (!lu_status->force) { + ret = lu_reject_reason(req); + goto out; + } + } + + assert(req->in == lu_status->in); + /* Dump out internal state, including "OK" for live update. */ + ret = lu_dump_state(req->in, conn); + if (!ret) { + /* Perform the activation of new binary. */ + ret = lu_activate_binary(req->in); + } + + /* We will reach this point only in case of failure. */ + out: + /* + * send_reply() will send the response for conn->in. Save the current + * conn->in and restore it afterwards. + */ + saved_in = conn->in; + conn->in = req->in; + send_reply(conn, XS_CONTROL, ret, strlen(ret) + 1); + conn->in = saved_in; + talloc_free(lu_status); + + return true; +} + +static const char *lu_start(const void *ctx, struct connection *conn, + bool force, unsigned int to) +{ + syslog(LOG_INFO, "live-update: start, force=%d, to=%u\n", force, to); + + if (!lu_status || lu_status->conn != conn) + return "Not in live-update session."; + +#ifdef __MINIOS__ + if (lu_status->kernel_size != lu_status->kernel_off) + return "Kernel not complete."; +#endif + + lu_status->force = force; + lu_status->timeout = to; + lu_status->started_at = time(NULL); + lu_status->in = conn->in; + + errno = delay_request(conn, conn->in, do_lu_start, conn, false); + + return NULL; +} + +int do_control_lu(const void *ctx, struct connection *conn, char **vec, + int num) +{ + const char *ret = NULL; + unsigned int i; + bool force = false; + unsigned int to = 0; + + if (num < 1) + return EINVAL; + + if (!strcmp(vec[0], "-a")) { + if (num == 1) + ret = lu_abort(ctx, conn); + else + return EINVAL; + } else if (!strcmp(vec[0], "-c")) { + if (num == 2) + ret = lu_cmdline(ctx, conn, vec[1]); + else + return EINVAL; + } else if (!strcmp(vec[0], "-s")) { + for (i = 1; i < num; i++) { + if (!strcmp(vec[i], "-F")) + force = true; + else if (!strcmp(vec[i], "-t") && i < num - 1) { + i++; + to = atoi(vec[i]); + } else + return EINVAL; + } + ret = lu_start(ctx, conn, force, to); + if (!ret) + return errno; + } else { + ret = lu_arch(ctx, conn, vec, num); + if (!ret && errno) + return errno; + } + + if (!ret) + ret = "OK"; + send_reply(conn, XS_CONTROL, ret, strlen(ret) + 1); + return 0; +} +#endif diff --git a/tools/xenstore/xenstored_lu.h b/tools/xenstore/xenstored_lu.h index 1c09b9b639..d633a765a3 100644 --- a/tools/xenstore/xenstored_lu.h +++ b/tools/xenstore/xenstored_lu.h @@ -43,6 +43,16 @@ struct lu_dump_state { extern struct live_update *lu_status; +struct connection *lu_get_connection(void); +bool lu_is_pending(void); +void lu_read_state(void); + +/* Write the "OK" response for the live-update command */ +unsigned int lu_write_response(FILE *fp); + +int do_control_lu(const void *ctx, struct connection *conn, char **vec, + int num); + /* Live update private interfaces. */ void lu_get_dump_state(struct lu_dump_state *state); void lu_close_dump_state(struct lu_dump_state *state); @@ -53,4 +63,19 @@ const char *lu_arch(const void *ctx, struct connection *conn, char **vec, int num); const char *lu_begin(struct connection *conn); void lu_destroy_arch(void *data); +#else +static inline struct connection *lu_get_connection(void) +{ + return NULL; +} + +static inline unsigned int lu_write_response(FILE *fp) +{ + return 0; +} + +static inline bool lu_is_pending(void) +{ + return false; +} #endif -- 2.35.3 From xen-devel-bounces@lists.xenproject.org Tue Jun 27 12:28:35 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 12:28:35 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556125.868417 (Exim 4.92) (envelope-from ) id 1qE7o1-0002Sl-6H; Tue, 27 Jun 2023 12:28:25 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556125.868417; Tue, 27 Jun 2023 12:28:25 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE7o1-0002SX-2v; Tue, 27 Jun 2023 12:28:25 +0000 Received: by outflank-mailman (input) for mailman id 556125; Tue, 27 Jun 2023 12:28:23 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE7nz-0000v0-LY for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 12:28:23 +0000 Received: from smtp-out1.suse.de (smtp-out1.suse.de [2001:67c:2178:6::1c]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 1a80c782-14e6-11ee-8611-37d641c3527e; Tue, 27 Jun 2023 14:28:21 +0200 (CEST) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by smtp-out1.suse.de (Postfix) with ESMTPS id 6D8EE218A4; Tue, 27 Jun 2023 12:28:21 +0000 (UTC) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id 35CEF13462; Tue, 27 Jun 2023 12:28:21 +0000 (UTC) Received: from dovecot-director2.suse.de ([192.168.254.65]) by imap2.suse-dmz.suse.de with ESMTPSA id 39t/C+XVmmR1SAAAMHmgww (envelope-from ); Tue, 27 Jun 2023 12:28:21 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 1a80c782-14e6-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1; t=1687868901; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=e+AL7E5KGOqOlaCDidWTO0QIZcUe7+XVvrp9pgAXvoM=; b=BFwqQtf0BAyRSjltwM8CyjuFCUtkGt++g9NhlznjMqA71ucns9m2yBP9R1i7VbM0WLoISc cOLOPAp/r3x7JcvTnSEgJjzQh/v+Lf9kYI9RD7+DKGhsOJjVGo8Zp/AoR/WT/hL/Z6ZnzO H6SdL0G9jzZitf8HOzp99ZGBeyZa0Ng= From: Juergen Gross To: xen-devel@lists.xenproject.org Cc: Juergen Gross , Wei Liu , Julien Grall , Anthony PERARD , Julien Grall Subject: [PATCH v4 5/5] tools/xenstore: remove unused stuff from list.h Date: Tue, 27 Jun 2023 14:27:50 +0200 Message-Id: <20230627122750.2007-6-jgross@suse.com> X-Mailer: git-send-email 2.35.3 In-Reply-To: <20230627122750.2007-1-jgross@suse.com> References: <20230627122750.2007-1-jgross@suse.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Remove the hlist defines/functions and the rcu related functions from tools/xenstore/list.h, as they are not used. Signed-off-by: Juergen Gross Acked-by: Julien Grall --- tools/xenstore/list.h | 227 ------------------------------------------ 1 file changed, 227 deletions(-) diff --git a/tools/xenstore/list.h b/tools/xenstore/list.h index a464a38b61..d722a91220 100644 --- a/tools/xenstore/list.h +++ b/tools/xenstore/list.h @@ -88,48 +88,6 @@ static inline void list_add_tail(struct list_head *new, struct list_head *head) __list_add(new, head->prev, head); } -/* - * Insert a new entry between two known consecutive entries. - * - * This is only for internal list manipulation where we know - * the prev/next entries already! - */ -static __inline__ void __list_add_rcu(struct list_head * new, - struct list_head * prev, - struct list_head * next) -{ - new->next = next; - new->prev = prev; - next->prev = new; - prev->next = new; -} - -/** - * list_add_rcu - add a new entry to rcu-protected list - * @new: new entry to be added - * @head: list head to add it after - * - * Insert a new entry after the specified head. - * This is good for implementing stacks. - */ -static __inline__ void list_add_rcu(struct list_head *new, struct list_head *head) -{ - __list_add_rcu(new, head, head->next); -} - -/** - * list_add_tail_rcu - add a new entry to rcu-protected list - * @new: new entry to be added - * @head: list head to add it before - * - * Insert a new entry before the specified head. - * This is useful for implementing queues. - */ -static __inline__ void list_add_tail_rcu(struct list_head *new, struct list_head *head) -{ - __list_add_rcu(new, head->prev, head); -} - /* * Delete a list entry by making the prev/next entries * point to each other. @@ -156,23 +114,6 @@ static inline void list_del(struct list_head *entry) entry->prev = LIST_POISON2; } -/** - * list_del_rcu - deletes entry from list without re-initialization - * @entry: the element to delete from the list. - * - * Note: list_empty on entry does not return true after this, - * the entry is in an undefined state. It is useful for RCU based - * lockfree traversal. - * - * In particular, it means that we can not poison the forward - * pointers that may still be used for walking the list. - */ -static inline void list_del_rcu(struct list_head *entry) -{ - __list_del(entry->prev, entry->next); - entry->prev = LIST_POISON2; -} - /** * list_del_init - deletes entry from list and reinitialize it. * @entry: the element to delete from the list. @@ -339,172 +280,4 @@ static inline void list_splice_init(struct list_head *list, &pos->member != (head); \ pos = n, n = list_entry(n->member.next, typeof(*n), member)) - -/* - * Double linked lists with a single pointer list head. - * Mostly useful for hash tables where the two pointer list head is - * too wasteful. - * You lose the ability to access the tail in O(1). - */ - -struct hlist_head { - struct hlist_node *first; -}; - -struct hlist_node { - struct hlist_node *next, **pprev; -}; - -#define HLIST_HEAD_INIT { .first = NULL } -#define HLIST_HEAD(name) struct hlist_head name = { .first = NULL } -#define INIT_HLIST_HEAD(ptr) ((ptr)->first = NULL) -#define INIT_HLIST_NODE(ptr) ((ptr)->next = NULL, (ptr)->pprev = NULL) - -static __inline__ int hlist_unhashed(struct hlist_node *h) -{ - return !h->pprev; -} - -static __inline__ int hlist_empty(struct hlist_head *h) -{ - return !h->first; -} - -static __inline__ void __hlist_del(struct hlist_node *n) -{ - struct hlist_node *next = n->next; - struct hlist_node **pprev = n->pprev; - *pprev = next; - if (next) - next->pprev = pprev; -} - -static __inline__ void hlist_del(struct hlist_node *n) -{ - __hlist_del(n); - n->next = LIST_POISON1; - n->pprev = LIST_POISON2; -} - -/** - * hlist_del_rcu - deletes entry from hash list without re-initialization - * @entry: the element to delete from the hash list. - * - * Note: list_unhashed() on entry does not return true after this, - * the entry is in an undefined state. It is useful for RCU based - * lockfree traversal. - * - * In particular, it means that we can not poison the forward - * pointers that may still be used for walking the hash list. - */ -static inline void hlist_del_rcu(struct hlist_node *n) -{ - __hlist_del(n); - n->pprev = LIST_POISON2; -} - -static __inline__ void hlist_del_init(struct hlist_node *n) -{ - if (n->pprev) { - __hlist_del(n); - INIT_HLIST_NODE(n); - } -} - -#define hlist_del_rcu_init hlist_del_init - -static __inline__ void hlist_add_head(struct hlist_node *n, struct hlist_head *h) -{ - struct hlist_node *first = h->first; - n->next = first; - if (first) - first->pprev = &n->next; - h->first = n; - n->pprev = &h->first; -} - -static __inline__ void hlist_add_head_rcu(struct hlist_node *n, struct hlist_head *h) -{ - struct hlist_node *first = h->first; - n->next = first; - n->pprev = &h->first; - if (first) - first->pprev = &n->next; - h->first = n; -} - -/* next must be != NULL */ -static __inline__ void hlist_add_before(struct hlist_node *n, struct hlist_node *next) -{ - n->pprev = next->pprev; - n->next = next; - next->pprev = &n->next; - *(n->pprev) = n; -} - -static __inline__ void hlist_add_after(struct hlist_node *n, - struct hlist_node *next) -{ - next->next = n->next; - *(next->pprev) = n; - n->next = next; -} - -#define hlist_entry(ptr, type, member) container_of(ptr,type,member) - -/* Cannot easily do prefetch unfortunately */ -#define hlist_for_each(pos, head) \ - for (pos = (head)->first; pos; pos = pos->next) - -#define hlist_for_each_safe(pos, n, head) \ - for (pos = (head)->first; n = pos ? pos->next : 0, pos; \ - pos = n) - -/** - * hlist_for_each_entry - iterate over list of given type - * @tpos: the type * to use as a loop counter. - * @pos: the &struct hlist_node to use as a loop counter. - * @head: the head for your list. - * @member: the name of the hlist_node within the struct. - */ -#define hlist_for_each_entry(tpos, pos, head, member) \ - for (pos = (head)->first; \ - pos && ({ tpos = hlist_entry(pos, typeof(*tpos), member); 1;}); \ - pos = pos->next) - -/** - * hlist_for_each_entry_continue - iterate over a hlist continuing after existing point - * @tpos: the type * to use as a loop counter. - * @pos: the &struct hlist_node to use as a loop counter. - * @member: the name of the hlist_node within the struct. - */ -#define hlist_for_each_entry_continue(tpos, pos, member) \ - for (pos = (pos)->next; \ - pos && ({ tpos = hlist_entry(pos, typeof(*tpos), member); 1;}); \ - pos = pos->next) - -/** - * hlist_for_each_entry_from - iterate over a hlist continuing from existing point - * @tpos: the type * to use as a loop counter. - * @pos: the &struct hlist_node to use as a loop counter. - * @member: the name of the hlist_node within the struct. - */ -#define hlist_for_each_entry_from(tpos, pos, member) \ - for (; pos && ({ tpos = hlist_entry(pos, typeof(*tpos), member); 1;}); \ - pos = pos->next) - -/** - * hlist_for_each_entry_safe - iterate over list of given type safe against removal of list entry - * @tpos: the type * to use as a loop counter. - * @pos: the &struct hlist_node to use as a loop counter. - * @n: another &struct hlist_node to use as temporary storage - * @head: the head for your list. - * @member: the name of the hlist_node within the struct. - */ -#define hlist_for_each_entry_safe(tpos, pos, n, head, member) \ - for (pos = (head)->first; \ - pos && ({ n = pos->next; 1; }) && \ - ({ tpos = hlist_entry(pos, typeof(*tpos), member); 1;}); \ - pos = n) - #endif -- 2.35.3 From xen-devel-bounces@lists.xenproject.org Tue Jun 27 12:29:40 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 12:29:40 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556147.868427 (Exim 4.92) (envelope-from ) id 1qE7p8-00040f-GT; Tue, 27 Jun 2023 12:29:34 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556147.868427; Tue, 27 Jun 2023 12:29:34 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE7p8-00040Y-CX; Tue, 27 Jun 2023 12:29:34 +0000 Received: by outflank-mailman (input) for mailman id 556147; Tue, 27 Jun 2023 12:29:33 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE7p6-00040A-Qt for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 12:29:33 +0000 Received: from wout1-smtp.messagingengine.com (wout1-smtp.messagingengine.com [64.147.123.24]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 42a1fb4b-14e6-11ee-b237-6b7b168915f2; Tue, 27 Jun 2023 14:29:30 +0200 (CEST) Received: from compute4.internal (compute4.nyi.internal [10.202.2.44]) by mailout.west.internal (Postfix) with ESMTP id 1AE23320085B; Tue, 27 Jun 2023 08:29:27 -0400 (EDT) Received: from mailfrontend2 ([10.202.2.163]) by compute4.internal (MEProxy); Tue, 27 Jun 2023 08:29:27 -0400 Received: by mail.messagingengine.com (Postfix) with ESMTPA; Tue, 27 Jun 2023 08:29:25 -0400 (EDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 42a1fb4b-14e6-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= invisiblethingslab.com; h=cc:cc:content-type:content-type:date :date:from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:sender:subject:subject:to:to; s=fm2; t= 1687868966; x=1687955366; bh=b3QbE2TbZMM3ES0XZnBpe6sWnX5ijMeOyft 7pcZLwwA=; b=fLkn4smWzqD2FIl1ZoPhjdJu/1iMUUg8psRiiwufcFWcNOJsb7o xQCS9z1VCzFF77WqirfXd2hw77EEzPgNF/+vaRA/y7j1g3o4R8CRU+DF1ms7Gnyt 6YidyLXYxDkUGprpiSI0/Lq6amw9sLm8xwETdNtVTAyscpHvHnjqsB7VKEBBeTcf xqdwtDi6Mc/fEhnRA0lVBF3HeM8zGoALWpLidtjezn/yc7qeikb4E0dSpMBGUmLB Ax75YP/KtlvfR2gYlEZvJoUhW0vo9Uvp/Y8a16bJalrGQu8+O0Vf0/t2ZfRhzsYl DyWOXoyuY4DUTTZ1JW0/GY3OsuTNVK4r9WQ== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-type:content-type:date:date :feedback-id:feedback-id:from:from:in-reply-to:in-reply-to :message-id:mime-version:references:reply-to:sender:subject :subject:to:to:x-me-proxy:x-me-proxy:x-me-sender:x-me-sender :x-sasl-enc; s=fm2; t=1687868966; x=1687955366; bh=b3QbE2TbZMM3E S0XZnBpe6sWnX5ijMeOyft7pcZLwwA=; b=RB89iHxcmA4J9vrBRChu1Iu2h2jVU Nzk5rsOwgOK55NaFV9exeMROMon3WctKMoke5JDnvDqQIN7nC6H9uJLSLHqIaWLL gt/5/t1pWg5YttpLrmRnRlR1JsO6w99ASObExpzlMIJoD83qJw12ZsjZvGrZCu8w KIiLj4bnzdsobLxWfvCFc2E3JBNNiVGIaQEamE14rykij1RrVADteInF7a4k14q9 5upSG3thFNqZ5MERNXd8cLzIzpcQHc03VNdOZ2SPNx9nHLf1UhSsx3xZZZsA98hT XslSf05lJIDKMbMWqG1YsWJ8TimERXbAlilxGCTOr/oHElZYVejnSp0LA== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedviedrtddtgdduudcutefuodetggdotefrodftvf curfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfghnecu uegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmdenuc fjughrpeffhffvvefukfhfgggtuggjsehgtderredttdejnecuhfhrohhmpeforghrvghk ucforghrtgiihihkohifshhkihdqifpkrhgvtghkihcuoehmrghrmhgrrhgvkhesihhnvh hishhisghlvghthhhinhhgshhlrggsrdgtohhmqeenucggtffrrghtthgvrhhnpefgudel teefvefhfeehieetleeihfejhfeludevteetkeevtedtvdegueetfeejudenucevlhhush htvghrufhiiigvpedtnecurfgrrhgrmhepmhgrihhlfhhrohhmpehmrghrmhgrrhgvkhes ihhnvhhishhisghlvghthhhinhhgshhlrggsrdgtohhm X-ME-Proxy: Feedback-ID: i1568416f:Fastmail Date: Tue, 27 Jun 2023 14:29:21 +0200 From: Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= To: Luca Fancellu Cc: xen-devel@lists.xenproject.org, bertrand.marquis@arm.com, wei.chen@arm.com, Wei Liu , Anthony PERARD , Andrew Cooper Subject: Re: [PATCH 2/2] tools/python: Fix memory leak on error path Message-ID: References: <20230608135913.560413-1-luca.fancellu@arm.com> <20230608135913.560413-2-luca.fancellu@arm.com> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="HCBT5xK9kEbVAaTE" Content-Disposition: inline In-Reply-To: --HCBT5xK9kEbVAaTE Content-Type: text/plain; protected-headers=v1; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Date: Tue, 27 Jun 2023 14:29:21 +0200 From: Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= To: Luca Fancellu Cc: xen-devel@lists.xenproject.org, bertrand.marquis@arm.com, wei.chen@arm.com, Wei Liu , Anthony PERARD , Andrew Cooper Subject: Re: [PATCH 2/2] tools/python: Fix memory leak on error path On Mon, Jun 26, 2023 at 08:07:46PM +0200, Marek Marczykowski-G=C3=B3recki w= rote: > On Thu, Jun 08, 2023 at 02:59:13PM +0100, Luca Fancellu wrote: > > Commit 56a7aaa16bfe introduced a memory leak on the error path for a > > Py_BuildValue built object that on some newly introduced error path > > has not the correct reference count handling, fix that by decrementing > > the refcount in these path. > >=20 > > Fixes: 56a7aaa16bfe ("tools: add physinfo arch_capabilities handling fo= r Arm") > > Signed-off-by: Luca Fancellu > > Reported-by: Andrew Cooper >=20 > Acked-by: Marek Marczykowski-G=C3=B3recki Oh, and BTW, in relation to the discussion on the summit about committing process, the buggy version was committed without my ack, after waiting for my review for about two weeks. --=20 Best Regards, Marek Marczykowski-G=C3=B3recki Invisible Things Lab --HCBT5xK9kEbVAaTE Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQEzBAEBCAAdFiEEhrpukzGPukRmQqkK24/THMrX1ywFAmSa1iIACgkQ24/THMrX 1yywKwgAmGMxw8NWWMccoY/8B6zKn4KQjcAFz36tqYPbUTz0yGTaHbOE6UmJiLm+ gyVOta/sp1WWGSpJtnpT2ZMJaM9UTHqhv6Yy2FqQbv5OAem3iNVFY2ufUGSOMW6F IoVe20nN1c+1m9J4pgSDUcRvPBtIVv4ugEsn0aCDtDG/sRqeiIxuFsZvXp/7e+x9 Ii+wCN+ti8L8IVU6jY2mVWdjIzPP8V2FU9qc5yx/Lww6D0mESUG6XoI+20Xobimt 8iwOmmVcr5/ZQwshCuVPWv+1lEPlKCm1eGTPT4fxKMAQV1q0omttETb9yv0Ll55M r5u0cXVfKfcX9Tj3oW7wIT/giVZdoQ== =b2eV -----END PGP SIGNATURE----- --HCBT5xK9kEbVAaTE-- From xen-devel-bounces@lists.xenproject.org Tue Jun 27 12:43:33 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 12:43:33 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556153.868437 (Exim 4.92) (envelope-from ) id 1qE82O-0006VX-MX; Tue, 27 Jun 2023 12:43:16 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556153.868437; Tue, 27 Jun 2023 12:43:16 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE82O-0006VQ-I9; Tue, 27 Jun 2023 12:43:16 +0000 Received: by outflank-mailman (input) for mailman id 556153; Tue, 27 Jun 2023 12:43:14 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE82M-0006VK-Mu for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 12:43:14 +0000 Received: from mail-ej1-x630.google.com (mail-ej1-x630.google.com [2a00:1450:4864:20::630]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 2d88e55d-14e8-11ee-b237-6b7b168915f2; Tue, 27 Jun 2023 14:43:12 +0200 (CEST) Received: by mail-ej1-x630.google.com with SMTP id a640c23a62f3a-991c786369cso268351066b.1 for ; Tue, 27 Jun 2023 05:43:12 -0700 (PDT) Received: from [192.168.69.115] ([176.187.199.204]) by smtp.gmail.com with ESMTPSA id kg1-20020a17090776e100b0098e2eaec395sm3430672ejc.130.2023.06.27.05.43.10 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Tue, 27 Jun 2023 05:43:11 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 2d88e55d-14e8-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1687869792; x=1690461792; h=content-transfer-encoding:in-reply-to:from:references:cc:to :content-language:subject:user-agent:mime-version:date:message-id :from:to:cc:subject:date:message-id:reply-to; bh=oiGMShFqsK5vy0r+ZoVprgd+7ONOa51b6TZq+l7w8nA=; b=N9jYqZxdR661UImV0f2eqz9etcpnHRQWFJOWqbKzx+pPrr0rGpTyRrmz5XuUcm1Jel baeVg/QwQJBCIEde+fmbP7LG4Izl1AuD0EKT+rEyp5sfJSH192El68xs7rbT6+K4WH9y IfQhrB0iGU5wf9XPYsYmDFUbqjvN0yAjtDAbR5RKLJJX7UPC2owKWr4ScVk8mulj3v1M rUlnRkKpW+k6Vp3tBKcP/u8zcAy+nchDJTbp1UFf/jwRX/gpGEnEqqlo9lImfk5IYIgt /E/zRUzGds4zgAE/1m6/1FiPOwoCYKzmruujyCiOPEFDktm5hG65u6lqnFuN24x3EXwg 3F0g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687869792; x=1690461792; h=content-transfer-encoding:in-reply-to:from:references:cc:to :content-language:subject:user-agent:mime-version:date:message-id :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=oiGMShFqsK5vy0r+ZoVprgd+7ONOa51b6TZq+l7w8nA=; b=jTQP+gMPS9tsgcb8P+2xkWlByONWSBfdKshRB3aG5HhWGr5a1Q4hdovXbbiKnI5mtw NzLMX57h9+6JjVgBt+r2Q8QYo8WmU5KWNC/frnTpmRw9hpqzEoZB9pmZpM4eGPb89TD6 5hZGfwwNAjay8cNkMW0A3pcVgka8uAdPWpgWJnuMwOTPiPDDsWW9ea8uk3d5Y3FvDaWY 46WjNd3Iwi/jWSLefyfKlf5dgMWaF929t5C0QSfe9oKxozLjn3P2dtSUGk3faGTTSS9w gk2RdGJWkH6F6dzx1vlfO86EUlOyEC26g5gLKpXr8rNR7sUWCmGTS7Po1hDHEnompSHk xEDA== X-Gm-Message-State: AC+VfDwlUkkavl0W5KzkBdQAlu/0umcg30YY2vrNY3mBiVQoTMkSlapq /hLqYImsoOVdyrv7XelXPOPF4g== X-Google-Smtp-Source: ACHHUZ6zoAvKTmIUPl7vS48VUGVb/8NUBU9FbZNA+3XvIM6YbbuEMppTKmcZbeQKq+uiXwT/1/ecVw== X-Received: by 2002:a17:907:c0a:b0:96f:d345:d0f7 with SMTP id ga10-20020a1709070c0a00b0096fd345d0f7mr28092609ejc.62.1687869792013; Tue, 27 Jun 2023 05:43:12 -0700 (PDT) Message-ID: <9d54d187-dd61-9d48-01bc-d0d6a44d119e@linaro.org> Date: Tue, 27 Jun 2023 14:43:08 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v3 15/16] accel: Rename 'cpu_state' -> 'cs' Content-Language: en-US To: qemu-devel@nongnu.org Cc: kvm@vger.kernel.org, Marcel Apfelbaum , Peter Maydell , Roman Bolshakov , qemu-arm@nongnu.org, Richard Henderson , Alexander Graf , xen-devel@lists.xenproject.org, Sunil Muthuswamy , Anthony Perard , Stefano Stabellini , Yanan Wang , Paul Durrant , Reinoud Zandijk , Eduardo Habkost , Cameron Esfahani , Paolo Bonzini References: <20230624174121.11508-1-philmd@linaro.org> <20230624174121.11508-16-philmd@linaro.org> From: =?UTF-8?Q?Philippe_Mathieu-Daud=c3=a9?= In-Reply-To: <20230624174121.11508-16-philmd@linaro.org> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit On 24/6/23 19:41, Philippe Mathieu-Daudé wrote: > Most of the codebase uses 'CPUState *cpu' or 'CPUState *cs'. > While 'cpu_state' is kind of explicit, it makes the code > harder to review. Simply rename as 'cs'. > > Acked-by: Richard Henderson > Signed-off-by: Philippe Mathieu-Daudé > --- > target/i386/hvf/x86hvf.h | 18 +- > target/i386/hvf/x86hvf.c | 372 +++++++++++++++++++-------------------- > 2 files changed, 195 insertions(+), 195 deletions(-) Per IRC chat: Tested-by: Peter Maydell From xen-devel-bounces@lists.xenproject.org Tue Jun 27 12:43:43 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 12:43:43 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556154.868446 (Exim 4.92) (envelope-from ) id 1qE82e-0006pi-Sp; Tue, 27 Jun 2023 12:43:32 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556154.868446; Tue, 27 Jun 2023 12:43:32 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE82e-0006pZ-Pq; Tue, 27 Jun 2023 12:43:32 +0000 Received: by outflank-mailman (input) for mailman id 556154; Tue, 27 Jun 2023 12:43:31 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE82d-0006VK-BS for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 12:43:31 +0000 Received: from mail-ej1-x631.google.com (mail-ej1-x631.google.com [2a00:1450:4864:20::631]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 38029d86-14e8-11ee-b237-6b7b168915f2; Tue, 27 Jun 2023 14:43:30 +0200 (CEST) Received: by mail-ej1-x631.google.com with SMTP id a640c23a62f3a-98e0c1d5289so397270966b.2 for ; Tue, 27 Jun 2023 05:43:30 -0700 (PDT) Received: from [192.168.69.115] ([176.187.199.204]) by smtp.gmail.com with ESMTPSA id k19-20020a1709061c1300b0098dd3981be9sm4477872ejg.224.2023.06.27.05.43.27 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Tue, 27 Jun 2023 05:43:29 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 38029d86-14e8-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1687869809; x=1690461809; h=content-transfer-encoding:in-reply-to:from:references:cc:to :content-language:subject:user-agent:mime-version:date:message-id :from:to:cc:subject:date:message-id:reply-to; bh=1mTG0cvKU+zMeoqHlEai9X0XN4bdRY0Fj+S2ZVFglsw=; b=JGscvSjGoIt5zVRLMj+z4pQB3/0FtPmXup22DqGc0zhhp0riN4aIMg20E/BBLW2E98 WdgKEMXAsf/vjSlW+0rzfMzh92/bntJIhsUWrs+pYQ2RCqNBJn7CruxkEX4Num2CPpjq Cu1VAziumpAykPKlGGwPoVrLybX8oEiiXC+oMQ6cOOpJ6MspwTxN5xTynf2HfJc/4PuS agFOT6HJF3FjtKyGBOUzZ4+wnAxZAWbCIkMijKhC8/MTL7fmrPW4o1umQGjvwNPZj3qk Dv8C/gAh/xvAnE5RsFwiY2mA4XOXlcUBSuvjWJC3jAaqrWkQFNjoTjLU6ISTyg2Xge7U FZ4A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687869809; x=1690461809; h=content-transfer-encoding:in-reply-to:from:references:cc:to :content-language:subject:user-agent:mime-version:date:message-id :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=1mTG0cvKU+zMeoqHlEai9X0XN4bdRY0Fj+S2ZVFglsw=; b=kW6g1usvwQP011kZUzCAnsiZKMKmCs6GmKnZsw0/fIBfEEesfZRGkD2TnEFUrceBQp sSv7IKCNGQtfRppdjSmcbUZeHLnXICK+IUauWen9adM1Z5nYdFfllzXubpL582Oq4S+j /5VLaJ0YPdzI5w1bP0nOA+NKJlsfOtlU5jyhRsqF9EDPzIdKnL19z9QvLLTH++dKm/cd /5/HgPWj4Dgrxk65VKaPYopLr7H5Fg7ckAilGBl5hMNFiF+LfVKx2D/pzjB+IMhrfb3Y abTWcG/JwmKMPQM2tv+MnUuId61H9JKoQr+BGOAdJJW41QEbxjJbfHy7zOdwoEwhiKDh R0Xg== X-Gm-Message-State: AC+VfDyuPi+GocKR9/ecPcAm3IHWhhROIT6MSrmpG5haVHQ6hHgaKHW/ HUYIh2VLdNLQnGtUVaNek7fUFgig8FtNSB7BiXU= X-Google-Smtp-Source: ACHHUZ7fuT0GL83RVg8Gj86ErRvzE6j5P8CLlQ8jWsCVG81jwLRBBrRfpqNvsX0LXyM1vFUtszJWyg== X-Received: by 2002:a17:907:a42c:b0:991:bf04:204f with SMTP id sg44-20020a170907a42c00b00991bf04204fmr5098434ejc.60.1687869809706; Tue, 27 Jun 2023 05:43:29 -0700 (PDT) Message-ID: <7b6c659f-a9d3-c883-ff53-3226c8d31bb8@linaro.org> Date: Tue, 27 Jun 2023 14:43:26 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v3 16/16] accel: Rename HVF 'struct hvf_vcpu_state' -> AccelCPUState Content-Language: en-US To: qemu-devel@nongnu.org Cc: kvm@vger.kernel.org, Marcel Apfelbaum , Peter Maydell , Roman Bolshakov , qemu-arm@nongnu.org, Richard Henderson , Alexander Graf , xen-devel@lists.xenproject.org, Sunil Muthuswamy , Anthony Perard , Stefano Stabellini , Yanan Wang , Paul Durrant , Reinoud Zandijk , Eduardo Habkost , Cameron Esfahani , Paolo Bonzini References: <20230624174121.11508-1-philmd@linaro.org> <20230624174121.11508-17-philmd@linaro.org> From: =?UTF-8?Q?Philippe_Mathieu-Daud=c3=a9?= In-Reply-To: <20230624174121.11508-17-philmd@linaro.org> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit On 24/6/23 19:41, Philippe Mathieu-Daudé wrote: > We want all accelerators to share the same opaque pointer in > CPUState. > > Rename the 'hvf_vcpu_state' structure as 'AccelCPUState'. > > Use the generic 'accel' field of CPUState instead of 'hvf'. > > Replace g_malloc0() by g_new0() for readability. > > Signed-off-by: Philippe Mathieu-Daudé > Reviewed-by: Richard Henderson > --- > Not even built on x86! Per IRC chat: Tested-by: Peter Maydell > --- > include/hw/core/cpu.h | 4 - > include/sysemu/hvf_int.h | 2 +- > target/i386/hvf/vmx.h | 22 ++-- > accel/hvf/hvf-accel-ops.c | 18 ++-- > target/arm/hvf/hvf.c | 108 +++++++++---------- > target/i386/hvf/hvf.c | 104 +++++++++--------- > target/i386/hvf/x86.c | 28 ++--- > target/i386/hvf/x86_descr.c | 26 ++--- > target/i386/hvf/x86_emu.c | 62 +++++------ > target/i386/hvf/x86_mmu.c | 4 +- > target/i386/hvf/x86_task.c | 10 +- > target/i386/hvf/x86hvf.c | 208 ++++++++++++++++++------------------ > 12 files changed, 296 insertions(+), 300 deletions(-) From xen-devel-bounces@lists.xenproject.org Tue Jun 27 12:52:54 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 12:52:54 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556161.868458 (Exim 4.92) (envelope-from ) id 1qE8Bd-00008B-Qi; Tue, 27 Jun 2023 12:52:49 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556161.868458; Tue, 27 Jun 2023 12:52:49 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE8Bd-000084-LH; Tue, 27 Jun 2023 12:52:49 +0000 Received: by outflank-mailman (input) for mailman id 556161; Tue, 27 Jun 2023 12:52:48 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE8Bc-00007u-E9; Tue, 27 Jun 2023 12:52:48 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE8Bc-00022Z-8Q; Tue, 27 Jun 2023 12:52:48 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE8Bb-0007G0-Oy; Tue, 27 Jun 2023 12:52:47 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qE8Bb-0003KX-OW; Tue, 27 Jun 2023 12:52:47 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=yy41MQRtGJJ1xlo9R0H6wy1cT2rD7MQ+ih/DKTdrU9Q=; b=Q3kUEbInuQYEX6jieoGXjq3gaf 8xXiA+6Ig1BPvYJ0Jv3lbWllslujI0uuIs7R6x8JJcgCCa2hZSNQiJt5eDYP3w+sme8j7bobEBJWB nig4nwlhRMM39OgJIDCBDqzY2mHkjCqre77qcGJih+TrhTph6PxIg5/ByfFmbTfmPbfo=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [ovmf test] 181612: all pass - PUSHED X-Osstest-Versions-This: ovmf=28eb51dd54217d48869a8f02534243404308482a X-Osstest-Versions-That: ovmf=81cb0371f9db299048525cfd2a96d81a5c791568 From: osstest service owner Date: Tue, 27 Jun 2023 12:52:47 +0000 flight 181612 ovmf real [real] http://logs.test-lab.xenproject.org/osstest/logs/181612/ Perfect :-) All tests in this flight passed as required version targeted for testing: ovmf 28eb51dd54217d48869a8f02534243404308482a baseline version: ovmf 81cb0371f9db299048525cfd2a96d81a5c791568 Last test of basis 181606 2023-06-27 01:12:10 Z 0 days Testing same since 181612 2023-06-27 10:43:49 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Gerd Hoffmann Ray Ni jobs: build-amd64-xsm pass build-i386-xsm pass build-amd64 pass build-i386 pass build-amd64-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-i386-pvops pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Pushing revision : To xenbits.xen.org:/home/xen/git/osstest/ovmf.git 81cb0371f9..28eb51dd54 28eb51dd54217d48869a8f02534243404308482a -> xen-tested-master From xen-devel-bounces@lists.xenproject.org Tue Jun 27 13:52:14 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 13:52:14 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556169.868467 (Exim 4.92) (envelope-from ) id 1qE96j-0006c8-2r; Tue, 27 Jun 2023 13:51:49 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556169.868467; Tue, 27 Jun 2023 13:51:49 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE96i-0006c1-VM; Tue, 27 Jun 2023 13:51:48 +0000 Received: by outflank-mailman (input) for mailman id 556169; Tue, 27 Jun 2023 13:51:47 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qE96h-0006bv-My for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 13:51:47 +0000 Received: from smtp-out2.suse.de (smtp-out2.suse.de [195.135.220.29]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id c027a9bc-14f1-11ee-8611-37d641c3527e; Tue, 27 Jun 2023 15:51:44 +0200 (CEST) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by smtp-out2.suse.de (Postfix) with ESMTPS id 972FA1F8B4; Tue, 27 Jun 2023 13:51:43 +0000 (UTC) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id 4CA6413276; Tue, 27 Jun 2023 13:51:43 +0000 (UTC) Received: from dovecot-director2.suse.de ([192.168.254.65]) by imap2.suse-dmz.suse.de with ESMTPSA id /tjtEG/pmmRNeAAAMHmgww (envelope-from ); Tue, 27 Jun 2023 13:51:43 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: c027a9bc-14f1-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1; t=1687873903; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=Xh2fLbzcvw+bR6rZPMtoAGrpbqaOY8T8nWBJkcP5p8Y=; b=FzvkWJZfU+IzMlOPPnUW99cQKLXueXAnxs4J8Y9at+3Fn9ptHq77WwSLOgfsgrHFeRySAK BZhFHn7FCD5CDLVOKPi//yA/qNxr4lNeGvJWZIK6yBDJs5HCqlrtNh6TyETPwgyVGdSYk/ resqL0HJXiXXGaeOIXvPVhVJ9ENgsm8= Message-ID: <11942629-dc10-d26e-1bf8-2c1b8751106c@suse.com> Date: Tue, 27 Jun 2023 15:51:42 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Content-Language: en-US To: Yann Dirson , Julien Grall , xen-devel@lists.xenproject.org Cc: Andrew Cooper , George Dunlap , Jan Beulich , Stefano Stabellini , Wei Liu References: <20230531103427.1551719-1-yann.dirson@vates.fr> <20230531103427.1551719-2-yann.dirson@vates.fr> <046475ca-a940-d9c6-9913-26bf7fe3ca25@vates.fr> From: Juergen Gross Subject: Re: [PATCH 1/1] doc: clarify intended usage of ~/control/ xentore path In-Reply-To: <046475ca-a940-d9c6-9913-26bf7fe3ca25@vates.fr> Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="------------3LJ1USBl2pyul8ZhpjrQdhP7" This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --------------3LJ1USBl2pyul8ZhpjrQdhP7 Content-Type: multipart/mixed; boundary="------------UymK5MUw59LV0ODFU3ooKlv8"; protected-headers="v1" From: Juergen Gross To: Yann Dirson , Julien Grall , xen-devel@lists.xenproject.org Cc: Andrew Cooper , George Dunlap , Jan Beulich , Stefano Stabellini , Wei Liu Message-ID: <11942629-dc10-d26e-1bf8-2c1b8751106c@suse.com> Subject: Re: [PATCH 1/1] doc: clarify intended usage of ~/control/ xentore path References: <20230531103427.1551719-1-yann.dirson@vates.fr> <20230531103427.1551719-2-yann.dirson@vates.fr> <046475ca-a940-d9c6-9913-26bf7fe3ca25@vates.fr> In-Reply-To: <046475ca-a940-d9c6-9913-26bf7fe3ca25@vates.fr> --------------UymK5MUw59LV0ODFU3ooKlv8 Content-Type: multipart/mixed; boundary="------------VbbGTI5401trzLDlj3OZegxH" --------------VbbGTI5401trzLDlj3OZegxH Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: base64 T24gMjcuMDYuMjMgMDk6MzUsIFlhbm4gRGlyc29uIHdyb3RlOg0KPiBBcyBkaXNjdXNzZWQg aW4gWGVuIFN1bW1pdCwgd2UgbGlrZWx5IGRvbid0IHdhbnQgdG8gbWVyZ2UgaXQgYXMgaXMg YWZ0ZXINCj4gYWxsLCBidXQgcmF0aGVyIGFja25vd2xlZGdlIHRoYXQgWEFQSSBoYXMgdGFr ZW4gdGhlIG9wcG9zaXRlIHJvdXRlIGFuZA0KPiBhbGxvdyB0aGUgdG9vbHN0YWNrIHRvIGdp dmUgb3duZXJzaGlwIG9mIH4vY29udHJvbCAob3IgYXQgbGVhc3Qgd3JpdGUNCj4gcGVybWlz c2lvbj8pIHRvIHRoZSBndWVzdCAtLSBtYXliZSBhbHNvIHJlY29tbWVuZGluZyBub3QgdG8g ZG8gdGhhdC4NCj4gDQo+IFdvdWxkIHRoYXQgc291bmQgT0sgdG8gZXZlcnlvbmU/DQoNClRo YXQgd291bGQgYmUgZmluZSB3aXRoIG1lLiBBcyB0aGVyZSBhcmUgb3RoZXIgZ3Vlc3Qgd3Jp dGFibGUgbm9kZXMgYW55d2F5LA0KdGhpcyB3b3VsZG4ndCBhZGQgYW55IHNlY3VyaXR5IHBy b2JsZW1zLg0KDQoNCkp1ZXJnZW4NCg== --------------VbbGTI5401trzLDlj3OZegxH Content-Type: application/pgp-keys; name="OpenPGP_0xB0DE9DD628BF132F.asc" Content-Disposition: attachment; filename="OpenPGP_0xB0DE9DD628BF132F.asc" Content-Description: OpenPGP public key Content-Transfer-Encoding: quoted-printable -----BEGIN PGP PUBLIC KEY BLOCK----- xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjri oyspZKOBycWxw3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2 kaV2KL9650I1SJvedYm8Of8Zd621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i 1TXkH09XSSI8mEQ/ouNcMvIJNwQpd369y9bfIhWUiVXEK7MlRgUG6MvIj6Y3Am/B BLUVbDa4+gmzDC9ezlZkTZG2t14zWPvxXP3FAp2pkW0xqG7/377qptDmrk42GlSK N4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEBAAHNHEp1ZXJnZW4gR3Jvc3Mg PGpnQHBmdXBmLm5ldD7CwHkEEwECACMFAlOMcBYCGwMHCwkIBwMCAQYVCAIJCgsE FgIDAQIeAQIXgAAKCRCw3p3WKL8TL0KdB/93FcIZ3GCNwFU0u3EjNbNjmXBKDY4F UGNQH2lvWAUy+dnyThpwdtF/jQ6j9RwE8VP0+NXcYpGJDWlNb9/JmYqLiX2Q3Tye vpB0CA3dbBQp0OW0fgCetToGIQrg0MbD1C/sEOv8Mr4NAfbauXjZlvTj30H2jO0u +6WGM6nHwbh2l5O8ZiHkH32iaSTfN7Eu5RnNVUJbvoPHZ8SlM4KWm8rG+lIkGurq qu5gu8q8ZMKdsdGC4bBxdQKDKHEFExLJK/nRPFmAuGlId1E3fe10v5QL+qHI3EIP tyfE7i9Hz6rVwi7lWKgh7pe0ZvatAudZ+JNIlBKptb64FaiIOAWDCx1SzR9KdWVy Z2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+wsB5BBMBAgAjBQJTjHCvAhsDBwsJ CAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey/HmQf/RtI7kv5A2PS4 RF7HoZhPVPogNVbC4YA6lW7DrWf0teC0RR3MzXfy6pJ+7KLgkqMlrAbN/8Dvjoz7 8X+5vhH/rDLa9BuZQlhFmvcGtCF8eR0T1v0nC/nuAFVGy+67q2DH8As3KPu0344T BDpAvr2uYM4tSqxK4DURx5INz4ZZ0WNFHcqsfvlGJALDeE0LhITTd9jLzdDad1pQ SToCnLl6SBJZjDOX9QQcyUigZFtCXFst4dlsvddrxyqT1f17+2cFSdu7+ynLmXBK 7abQ3rwJY8SbRO2iRulogc5vr/RLMMlscDAiDkaFQWLoqHHOdfO9rURssHNN8WkM nQfvUewRz80hSnVlcmdlbiBHcm9zcyA8amdyb3NzQG5vdmVsbC5jb20+wsB5BBMB AgAjBQJTjHDXAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/ Ey8PUQf/ehmgCI9jB9hlgexLvgOtf7PJnFOXgMLdBQgBlVPO3/D9R8LtF9DBAFPN hlrsfIG/SqICoRCqUcJ96Pn3P7UUinFG/I0ECGF4EvTE1jnDkfJZr6jrbjgyoZHi w/4BNwSTL9rWASyLgqlA8u1mf+c2yUwcGhgkRAd1gOwungxcwzwqgljf0N51N5Jf VRHRtyfwq/ge+YEkDGcTU6Y0sPOuj4Dyfm8fJzdfHNQsWq3PnczLVELStJNdapwP OoE+lotufe3AM2vAEYJ9rTz3Cki4JFUsgLkHFqGZarrPGi1eyQcXeluldO3m91NK /1xMI3/+8jbO0tsn1tqSEUGIJi7ox80eSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1 c2UuZGU+wsB5BBMBAgAjBQJTjHDrAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgEC F4AACgkQsN6d1ii/Ey+LhQf9GL45eU5vOowA2u5N3g3OZUEBmDHVVbqMtzwlmNC4 k9Kx39r5s2vcFl4tXqW7g9/ViXYuiDXb0RfUpZiIUW89siKrkzmQ5dM7wRqzgJpJ wK8Bn2MIxAKArekWpiCKvBOB/Cc+3EXE78XdlxLyOi/NrmSGRIov0karw2RzMNOu 5D+jLRZQd1Sv27AR+IP3I8U4aqnhLpwhK7MEy9oCILlgZ1QZe49kpcumcZKORmzB TNh30FVKK1EvmV2xAKDoaEOgQB4iFQLhJCdP1I5aSgM5IVFdn7v5YgEYuJYx37Io N1EblHI//x/e2AaIHpzK5h88NEawQsaNRpNSrcfbFmAg987ATQRTjHAWAQgAyzH6 AOODMBjgfWE9VeCgsrwH3exNAU32gLq2xvjpWnHIs98ndPUDpnoxWQugJ6MpMncr 0xSwFmHEgnSEjK/PAjppgmyc57BwKII3sV4on+gDVFJR6Y8ZRwgnBC5mVM6JjQ5x Dk8WRXljExRfUX9pNhdE5eBOZJrDRoLUmmjDtKzWaDhIg/+1Hzz93X4fCQkNVbVF LELU9bMaLPBG/x5q4iYZ2k2ex6d47YE1ZFdMm6YBYMOljGkZKwYde5ldM9mo45mm we0icXKLkpEdIXKTZeKDO+Hdv1aqFuAcccTg9RXDQjmwhC3yEmrmcfl0+rPghO0I v3OOImwTEe4co3c1mwARAQABwsBfBBgBAgAJBQJTjHAWAhsMAAoJELDendYovxMv Q/gH/1ha96vm4P/L+bQpJwrZ/dneZcmEwTbe8YFsw2V/Buv6Z4Mysln3nQK5ZadD 534CF7TDVft7fC4tU4PONxF5D+/tvgkPfDAfF77zy2AH1vJzQ1fOU8lYFpZXTXIH b+559UqvIB8AdgR3SAJGHHt4RKA0F7f5ipYBBrC6cyXJyyoprT10EMvU8VGiwXvT yJz3fjoYsdFzpWPlJEBRMedCot60g5dmbdrZ5DWClAr0yau47zpWj3enf1tLWaqc suylWsviuGjKGw7KHQd3bxALOknAp4dN3QwBYCKuZ7AddY9yjynVaD5X7nF9nO5B jR/i1DG86lem3iBDXzXsZDn8R38=3D =3D2wuH -----END PGP PUBLIC KEY BLOCK----- --------------VbbGTI5401trzLDlj3OZegxH-- --------------UymK5MUw59LV0ODFU3ooKlv8-- --------------3LJ1USBl2pyul8ZhpjrQdhP7 Content-Type: application/pgp-signature; name="OpenPGP_signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="OpenPGP_signature" -----BEGIN PGP SIGNATURE----- wsB5BAABCAAjFiEEhRJncuj2BJSl0Jf3sN6d1ii/Ey8FAmSa6W4FAwAAAAAACgkQsN6d1ii/Ey9g 4Qf/TrA6AYdm1a4K0LEhEUD8n9jrENIKLWTuAGOso5j21L71mRE20/mU/DSX4gkyd9gGn/2jfDE8 xe2zr9Pgu8ST4SCw8ht+u+KhQA49lxTblNRVha3azywUE0P/YUtQ6xkzq2IwtyrCV0Fbh4Z4FcLm jHGoer+uGnUhhjZ6jY6IVM4k4CKvPMyQNv0afxHDwK5gujGib/r+XtWuVIYEKeDehY4WznQX4K2K Uvvq3cyfmkTeZAcStd1Ri/bhjnW2HN0ER4eGOGyRPMJ/KVHDwBzeBistthPtQGaZlps6nauhvLD9 S4Yg9zDhvJIMRQsXm/+CsXijTDJnJy/bhlXdX5pFHA== =LCjk -----END PGP SIGNATURE----- --------------3LJ1USBl2pyul8ZhpjrQdhP7-- From xen-devel-bounces@lists.xenproject.org Tue Jun 27 15:07:14 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 15:07:14 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556173.868477 (Exim 4.92) (envelope-from ) id 1qEAHV-0005kJ-AL; Tue, 27 Jun 2023 15:07:01 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556173.868477; Tue, 27 Jun 2023 15:07:01 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEAHV-0005kC-6n; Tue, 27 Jun 2023 15:07:01 +0000 Received: by outflank-mailman (input) for mailman id 556173; Tue, 27 Jun 2023 15:07:00 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEAHU-0005k2-Hf; Tue, 27 Jun 2023 15:07:00 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEAHU-0004yJ-A1; Tue, 27 Jun 2023 15:07:00 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEAHT-0001xR-Pk; Tue, 27 Jun 2023 15:06:59 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qEAHT-0007EZ-PE; Tue, 27 Jun 2023 15:06:59 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=cAPnId0tnbGmhFC5iZ1i7jU0lu9AX5ocRTZn/855+GI=; b=i5NWbAriKAb3EHwuURZL6CkUNG gaW7bUPDt+7TTSsSlJCbQ4eiMhw3wonz6B6J5NPMIsr1zDLrSI0poISDvtBJq0LA90sSX87vUEZ4c J9d9jzzgWq7tjGZBL1mrv/PN+HFULTGS4Orm3Cwrh/lpJcP9vrSUwIiu+J9RDnetRkuA=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [libvirt test] 181610: tolerable FAIL - PUSHED X-Osstest-Failures: libvirt:test-arm64-arm64-libvirt-qcow2:guest-start.2:fail:heisenbug libvirt:test-armhf-armhf-libvirt-qcow2:guest-start.2:fail:heisenbug libvirt:test-armhf-armhf-libvirt-raw:guest-start:fail:heisenbug libvirt:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking libvirt:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking libvirt:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking libvirt:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking libvirt:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking libvirt:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking libvirt:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking libvirt:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking libvirt:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt:saverestore-support-check:fail:nonblocking libvirt:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-qcow2:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-qcow2:saverestore-support-check:fail:nonblocking libvirt:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking libvirt:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking libvirt:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking libvirt:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking X-Osstest-Versions-This: libvirt=ceb4dc8e17aa077a3254bace82554015d72bd71c X-Osstest-Versions-That: libvirt=1dddd444519717c785a9fd93f393c3313c87c342 From: osstest service owner Date: Tue, 27 Jun 2023 15:06:59 +0000 flight 181610 libvirt real [real] flight 181614 libvirt real-retest [real] http://logs.test-lab.xenproject.org/osstest/logs/181610/ http://logs.test-lab.xenproject.org/osstest/logs/181614/ Failures :-/ but no regressions. Tests which are failing intermittently (not blocking): test-arm64-arm64-libvirt-qcow2 18 guest-start.2 fail pass in 181614-retest test-armhf-armhf-libvirt-qcow2 18 guest-start.2 fail pass in 181614-retest test-armhf-armhf-libvirt-raw 13 guest-start fail pass in 181614-retest Tests which did not succeed, but are not blocking: test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail in 181614 like 181560 test-armhf-armhf-libvirt-raw 14 migrate-support-check fail in 181614 never pass test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail like 181560 test-armhf-armhf-libvirt 16 saverestore-support-check fail like 181560 test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-i386-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-i386-libvirt 15 migrate-support-check fail never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt 15 migrate-support-check fail never pass test-arm64-arm64-libvirt 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-arm64-arm64-libvirt-qcow2 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-qcow2 15 saverestore-support-check fail never pass test-amd64-i386-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail never pass test-armhf-armhf-libvirt 15 migrate-support-check fail never pass version targeted for testing: libvirt ceb4dc8e17aa077a3254bace82554015d72bd71c baseline version: libvirt 1dddd444519717c785a9fd93f393c3313c87c342 Last test of basis 181560 2023-06-23 04:18:49 Z 4 days Testing same since 181610 2023-06-27 04:18:54 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Jean-Louis Dupond Michal Privoznik Oleg Vasilev Peter Krempa zuo boqun zuoboqun jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-i386-libvirt-xsm pass test-amd64-amd64-libvirt pass test-arm64-arm64-libvirt pass test-armhf-armhf-libvirt pass test-amd64-i386-libvirt pass test-amd64-amd64-libvirt-pair pass test-amd64-i386-libvirt-pair pass test-arm64-arm64-libvirt-qcow2 fail test-armhf-armhf-libvirt-qcow2 fail test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw fail test-amd64-i386-libvirt-raw pass test-amd64-amd64-libvirt-vhd pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Pushing revision : To xenbits.xen.org:/home/xen/git/libvirt.git 1dddd44451..ceb4dc8e17 ceb4dc8e17aa077a3254bace82554015d72bd71c -> xen-tested-master From xen-devel-bounces@lists.xenproject.org Tue Jun 27 15:14:34 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 15:14:34 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556179.868486 (Exim 4.92) (envelope-from ) id 1qEAOP-0007Da-1O; Tue, 27 Jun 2023 15:14:09 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556179.868486; Tue, 27 Jun 2023 15:14:09 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEAOO-0007DT-V5; Tue, 27 Jun 2023 15:14:08 +0000 Received: by outflank-mailman (input) for mailman id 556179; Tue, 27 Jun 2023 15:14:07 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEAON-0007DN-Hu for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 15:14:07 +0000 Received: from mail-ej1-x62a.google.com (mail-ej1-x62a.google.com [2a00:1450:4864:20::62a]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 4010309b-14fd-11ee-b237-6b7b168915f2; Tue, 27 Jun 2023 17:14:05 +0200 (CEST) Received: by mail-ej1-x62a.google.com with SMTP id a640c23a62f3a-98e109525d6so568192066b.0 for ; Tue, 27 Jun 2023 08:14:03 -0700 (PDT) Received: from [192.168.69.115] ([176.187.199.204]) by smtp.gmail.com with ESMTPSA id ss26-20020a170907039a00b0098e422d6758sm3262608ejb.219.2023.06.27.08.14.00 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Tue, 27 Jun 2023 08:14:02 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 4010309b-14fd-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1687878842; x=1690470842; h=content-transfer-encoding:in-reply-to:from:references:cc:to :content-language:subject:user-agent:mime-version:date:message-id :from:to:cc:subject:date:message-id:reply-to; bh=1hLkHKgBAbZUuk0W8oE9AqIRXF820+oX61/uVYQAwns=; b=RHSJC9x8UfCPz2FSbqOh2Ao54TcsCXhLbDK36yeB1DEJ4hj8Sl//hI37GaNYUgS+fs y4GXgRTnzQOM1uZVi38YmTqIyNo79pOMoci/EMI21MPW3l/lqt4OWFxhD0crUv1+Jlb9 HAOtsR6oW56BaUJI4kAcsAxbPwP1gziEWSlXXCLlw13fsJZ46+EXCC7yWYT+y9jAT4m2 e37yJcRCJEf80dlpoCKw2ihRR+G97nQEWmYOKSl3kIWFhrwA65/8u/9cIRWyQlcvD9VH FtltpgqEHEOcfVtyLsREChlxiSDkV4CjXzltjoOAxfty5o4YqGw18zEI/gJw6anC6zz4 g8oA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687878842; x=1690470842; h=content-transfer-encoding:in-reply-to:from:references:cc:to :content-language:subject:user-agent:mime-version:date:message-id :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=1hLkHKgBAbZUuk0W8oE9AqIRXF820+oX61/uVYQAwns=; b=NTFKtYs2dumhFtMqGhuPljCOG0s+Xxgb7PagAy1Xs3Ai2BvzKCOdwoPHhRPfqMrsj/ kyYvIP0+9ODslZgceXN10f2Zzs8nQLPDma1x/DAtMd+zEbKJTDzsCWE+qZIQcT5VrHEy 3hNIyajznenGK1qdpWDb5lm/CRvgvWIz1DPbfODfnbjbN8OnQVMszmurT8R1OH6DZwRv FUkeIcq/1ItYPeJY1vDWmXgeqnuh5kGAfId/V76dcp/4V0ZcN8Ak6eG17j48QvPhnfJF A1F8GLVmYUkQRf2KGeGi/4FPwHR6n6cB2FXidJZGYsSHuHBLUuHE5PoL7Exq9AvvEDbp xLFg== X-Gm-Message-State: AC+VfDwB0NG8LI8ojQjnCRWQQrOnDJe0ytbuGOyMHiTO8rdq7k8GylIG Z9Mr6tLZknvPZgWFeykbiWB3BA== X-Google-Smtp-Source: ACHHUZ4N32hEou6vtUW/NAB1itCDeEMec+9QDxvX9fKtvB6/ovOV17I4ogYzFcIiFUizKhcJXoAQ3g== X-Received: by 2002:a17:907:3f87:b0:977:d660:c5aa with SMTP id hr7-20020a1709073f8700b00977d660c5aamr30961510ejc.31.1687878842634; Tue, 27 Jun 2023 08:14:02 -0700 (PDT) Message-ID: Date: Tue, 27 Jun 2023 17:13:58 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v3 00/16] accel: Share CPUState accel context (HAX/NVMM/WHPX/HVF) Content-Language: en-US To: qemu-devel@nongnu.org Cc: kvm@vger.kernel.org, Marcel Apfelbaum , Peter Maydell , Roman Bolshakov , qemu-arm@nongnu.org, Richard Henderson , Alexander Graf , xen-devel@lists.xenproject.org, Sunil Muthuswamy , Anthony Perard , Stefano Stabellini , Yanan Wang , Paul Durrant , Reinoud Zandijk , Eduardo Habkost , Cameron Esfahani , Paolo Bonzini References: <20230624174121.11508-1-philmd@linaro.org> From: =?UTF-8?Q?Philippe_Mathieu-Daud=c3=a9?= In-Reply-To: <20230624174121.11508-1-philmd@linaro.org> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit On 24/6/23 19:41, Philippe Mathieu-Daudé wrote: > This series is part of the single binary effort. > > All accelerator will share their per-vCPU context in > an opaque 'accel' pointer within the CPUState. > > First handle HAX/NVMM/WHPX/HVF. KVM and TCG will follow > as two different (bigger) follow-up series. > > Except HVF/intel, all has been (cross-)build tested. > > I plan to send the PR myself. > > Since v2: > - Addressed rth's review comments > - Added rth's R-b tag > > Since v1: > - Addressed rth's review comments > - Added rth's R-b tag > - Converted HVF intel (untested) > - Rebased > > Philippe Mathieu-Daudé (16): > MAINTAINERS: Update Roman Bolshakov email address > accel: Document generic accelerator headers > accel: Remove unused hThread variable on TCG/WHPX > accel: Fix a leak on Windows HAX > accel: Destroy HAX vCPU threads once done > accel: Rename 'hax_vcpu' as 'accel' in CPUState > accel: Rename HAX 'struct hax_vcpu_state' -> AccelCPUState > accel: Move HAX hThread to accelerator context > accel: Remove NVMM unreachable error path > accel: Rename NVMM 'struct qemu_vcpu' -> AccelCPUState > accel: Inline NVMM get_qemu_vcpu() > accel: Remove WHPX unreachable error path > accel: Rename WHPX 'struct whpx_vcpu' -> AccelCPUState > accel: Inline WHPX get_whpx_vcpu() > accel: Rename 'cpu_state' -> 'cs' > accel: Rename HVF 'struct hvf_vcpu_state' -> AccelCPUState Except the MAINTAINERS patch, all the rest is reviewed, so I plan to send a PR tomorrow (dropping the first patch, nobody complained about Roman email bouncing for months so we can keep ignoring the automated emails). From xen-devel-bounces@lists.xenproject.org Tue Jun 27 15:48:20 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 15:48:20 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556183.868497 (Exim 4.92) (envelope-from ) id 1qEAvI-0002Oa-Jw; Tue, 27 Jun 2023 15:48:08 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556183.868497; Tue, 27 Jun 2023 15:48:08 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEAvI-0002OT-GS; Tue, 27 Jun 2023 15:48:08 +0000 Received: by outflank-mailman (input) for mailman id 556183; Tue, 27 Jun 2023 15:48:07 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEAvH-0002ON-OM for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 15:48:07 +0000 Received: from verein.lst.de (verein.lst.de [213.95.11.211]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 01e3fda7-1502-11ee-b237-6b7b168915f2; Tue, 27 Jun 2023 17:48:06 +0200 (CEST) Received: by verein.lst.de (Postfix, from userid 2407) id 555E667373; Tue, 27 Jun 2023 17:48:02 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 01e3fda7-1502-11ee-b237-6b7b168915f2 Date: Tue, 27 Jun 2023 17:48:02 +0200 From: Christoph Hellwig To: Petr =?utf-8?B?VGVzYcWZw61r?= Cc: Robin Murphy , Greg Kroah-Hartman , Petr Tesarik , Stefano Stabellini , Thomas Bogendoerfer , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , "maintainer:X86 ARCHITECTURE (32-BIT AND 64-BIT)" , "H. Peter Anvin" , "Rafael J. Wysocki" , Juergen Gross , Oleksandr Tyshchenko , Christoph Hellwig , Marek Szyprowski , Andy Shevchenko , Hans de Goede , Jason Gunthorpe , Kees Cook , Saravana Kannan , "moderated list:XEN HYPERVISOR ARM" , "moderated list:ARM PORT" , open list , "open list:MIPS" , "open list:XEN SWIOTLB SUBSYSTEM" , Roberto Sassu , Kefeng Wang Subject: Re: [PATCH v3 1/7] swiotlb: make io_tlb_default_mem local to swiotlb.c Message-ID: <20230627154802.GA29567@lst.de> References: <2023062745-routing-palace-d0b4@gregkh> <73f11258-1562-17c1-969e-b134dcb5f35c@arm.com> <20230627133006.16ee11af@meshulam.tesarici.cz> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <20230627133006.16ee11af@meshulam.tesarici.cz> User-Agent: Mutt/1.5.17 (2007-11-01) On Tue, Jun 27, 2023 at 01:30:06PM +0200, Petr Tesařík wrote: > Xen is the only user of an "is SWIOTLB present" interface. IIUC Xen > needs bounce buffers for the PCI frontend driver, but if there is no > other reason to have a SWIOTLB, the system does not set up one at boot. Please take a look at my "unexport swiotlb_active v2" series that unfortunately missed the 6.5 merge window waiting for reviews. From xen-devel-bounces@lists.xenproject.org Tue Jun 27 15:57:45 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 15:57:45 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556191.868506 (Exim 4.92) (envelope-from ) id 1qEB4X-0003ym-JI; Tue, 27 Jun 2023 15:57:41 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556191.868506; Tue, 27 Jun 2023 15:57:41 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEB4X-0003yf-Ga; Tue, 27 Jun 2023 15:57:41 +0000 Received: by outflank-mailman (input) for mailman id 556191; Tue, 27 Jun 2023 15:57:39 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEB4V-0003yZ-1G for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 15:57:39 +0000 Received: from casper.infradead.org (casper.infradead.org [2001:8b0:10b:1236::1]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 5550bb70-1503-11ee-8611-37d641c3527e; Tue, 27 Jun 2023 17:57:36 +0200 (CEST) Received: from willy by casper.infradead.org with local (Exim 4.94.2 #2 (Red Hat Linux)) id 1qEB4A-002rlX-EZ; Tue, 27 Jun 2023 15:57:18 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 5550bb70-1503-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=casper.20170209; h=In-Reply-To:Content-Type:MIME-Version: References:Message-ID:Subject:Cc:To:From:Date:Sender:Reply-To: Content-Transfer-Encoding:Content-ID:Content-Description; bh=grdde8Xiu7qmn+xeWQjS6jhM9eMOIEx2FTKQKHA0qcE=; b=O4LgnaJa+96/pjOun/grMWRgf0 LntDzHo/Nz16KvqxiEr1HwXvA//H8Xwaltp+tupPUb4EjOFyVKwNxLm4bicLOTqp/7aKDRUtZ+Ti+ YkZNFYgufWM7VfJ37zBwafjppANl7Ov4YfJ/3SNrxho42WxRJ90YRkLRkEz9110OQT69JgyQix3bE 1UUN6JmWKzg8Bc5AERWCg8k1In+54bOFEIjoHmAhuJ48uTlyrsgS9ASEoWWfFX2oCx8vHeEKiHBK2 0ATl5M0lbW4dygkvrSWQNrInCol2nuI3Fn1fE8BBqWu2s6F5FIZzUwvO8Dgsb04PN8JGsMx2K7RYi V5QQ1b6Q==; Date: Tue, 27 Jun 2023 16:57:18 +0100 From: Matthew Wilcox To: Hugh Dickins Cc: "Vishal Moola (Oracle)" , Andrew Morton , linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Catalin Marinas , Huacai Chen , Geert Uytterhoeven , Thomas Bogendoerfer , Dinh Nguyen , Jonas Bonn , David Hildenbrand , Claudio Imbrenda , Paul Walmsley , "David S. Miller" , Richard Weinberger , Yoshinori Sato , Dave Hansen , Arnd Bergmann , Christophe Leroy Subject: Re: [PATCH v6 00/33] Split ptdesc from struct page Message-ID: References: <20230627031431.29653-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: On Mon, Jun 26, 2023 at 09:44:08PM -0700, Hugh Dickins wrote: > On Mon, 26 Jun 2023, Vishal Moola (Oracle) wrote: > > > The MM subsystem is trying to shrink struct page. This patchset > > introduces a memory descriptor for page table tracking - struct ptdesc. > ... > > 39 files changed, 686 insertions(+), 455 deletions(-) > > I don't see the point of this patchset: to me it is just obfuscation of > the present-day tight relationship between page table and struct page. > > Matthew already explained: > > > The intent is to get ptdescs to be dynamically allocated at some point > > in the ~2-3 years out future when we have finished the folio project ... > > So in a kindly mood, I'd say that this patchset is ahead of its time. > But I can certainly adapt to it, if everyone else sees some point to it. If you think this patchset is ahead of its time, we can certainly put it on hold. We're certainly prepared to redo it to be merged after your current patch series. I think you can see the advantage of the destination, so I don't think you're against that. Are you opposed to the sequencing of the work to get us there? I'd be happy to discuss another way to do it. For example, we could dynamically allocate ptdescs right now. We'd get the benefit of having an arbitrary amount of space in the ptdesc, although not the benefit of a smaller memmap until everything else is also dynamically allocated. From xen-devel-bounces@lists.xenproject.org Tue Jun 27 16:07:27 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 16:07:27 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556196.868516 (Exim 4.92) (envelope-from ) id 1qEBDk-00061L-F2; Tue, 27 Jun 2023 16:07:12 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556196.868516; Tue, 27 Jun 2023 16:07:12 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEBDk-00061E-CX; Tue, 27 Jun 2023 16:07:12 +0000 Received: by outflank-mailman (input) for mailman id 556196; Tue, 27 Jun 2023 16:01:45 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEB8T-0005ww-0p for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 16:01:45 +0000 Received: from mail-qv1-xf32.google.com (mail-qv1-xf32.google.com [2607:f8b0:4864:20::f32]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id e615fb41-1503-11ee-b237-6b7b168915f2; Tue, 27 Jun 2023 18:01:39 +0200 (CEST) Received: by mail-qv1-xf32.google.com with SMTP id 6a1803df08f44-635dccdf17dso21313446d6.3 for ; Tue, 27 Jun 2023 09:01:39 -0700 (PDT) Received: from localhost.localdomain (2603-7081-7e3f-df30-170b-5a28-3b3f-767c.res6.spectrum.com. [2603:7081:7e3f:df30:170b:5a28:3b3f:767c]) by smtp.gmail.com with ESMTPSA id q5-20020ad45ca5000000b00623950fbe48sm4692135qvh.41.2023.06.27.09.01.35 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 27 Jun 2023 09:01:36 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: e615fb41-1503-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=exostellar.io; s=google; t=1687881697; x=1690473697; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=B5ddogz6ssKMprKcwC91sbBtEGvoKYSyZ4oIHsEh4mw=; b=HN0SiQ1xHT6WpiINAd3P1pCHNKxxIlYRjbfsERYjn2n2xaXW1ILaCv6OGTMoRAeUcb BzZyXOcB/o2e9C7Aljgr8zdZjv1DWrfxVjW3Uf+79aonXfZes0WhITisie8qjdwbjIRH uTcLHjo7m2KgjIejQ8YQ1SRFO4wwV6B4Mf/a1BuWbvkE+D/QbOwq7MpeOGCgn6IyG/ov +++WbF4ieeeDPQvWl7Ngfg0ZmsCrfRYTx4lC3Md/Zl4fwO6ORM/3MM2GtRprnGogi2Gn m/jEXjEZnYVIjf/GybIog/nl6N5DgY8ABDoEG0Qv7HUOnDN0eSpOzQ7WRXRdIWj2rC9b 3SDw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687881697; x=1690473697; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=B5ddogz6ssKMprKcwC91sbBtEGvoKYSyZ4oIHsEh4mw=; b=KqTbJUvSXPSiaA2JbRRUCfUD/x5p27LimaUvs13/ZVvEAhEfpo1eWmu1Pi5TbsXc+G 625KO5JtSQBC6ixEtYNYUkVexNAG6Q0/guayHhwsow18BeXr0LBq+GVW/OI1gwqW+Kk3 ZA+5xEo+CXhTSzJdUrnSebKmPmL0fwtVydr4I596zISj7hBWYv2muUjpRWfvVedS4CKX IdGOjf3P9fiMc0sW9Dd4LxhVjQQtIJml++lHi366zmQB/NiEvvKt9iMdGzWYomLjCzxU q4OZBU0HAc6spPc+OneiTpiEesotopfr61KDkpXNjkQ5QZ1+sBku0HnkCRIXjcvnGKvk zPcA== X-Gm-Message-State: AC+VfDw2UatXE2YP+XUL+LUHl6AtGLUGJ5MjDrgU6EVBwuaJ4UPtnSEf WOUypWQcT3EOAZR76Ytwn211UL7wgUA25i4rYRuw/zbZ X-Google-Smtp-Source: ACHHUZ6ZRrlWRX6vSh1OFUzWjcypD0RZqkkCTJ9vabGBr4B5qwQ7XYWKdBoLb2ZEBIr1pSF77sD8iw== X-Received: by 2002:a05:6214:2409:b0:62f:effe:3dca with SMTP id fv9-20020a056214240900b0062feffe3dcamr41454649qvb.2.1687881696648; Tue, 27 Jun 2023 09:01:36 -0700 (PDT) From: Kevin Alarcon Negy To: xen-devel@lists.xenproject.org Cc: Kevin Alarcon Negy , Wei Liu , Anthony PERARD , Juergen Gross Subject: [PATCH] libxl: Make domain build xc_domain_setmaxmem() call use max_memkb Date: Tue, 27 Jun 2023 11:59:34 -0400 Message-Id: X-Mailer: git-send-email 2.25.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit When building a domain, xc_domain_setmaxmem() is called with target_memkb (memory in domain config file). If a config specifies maxmem > memory, any attempts to increase the domain memory size to its max, outside of xl mem-set or xl mem-max, which already call xc_domain_setmaxmem() properly, will fail. Changed xc_domain_setmaxmem() call inside libxl__build_pre() to use max_memkb. Signed-off-by: Kevin Alarcon Negy --- tools/libs/light/libxl_dom.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tools/libs/light/libxl_dom.c b/tools/libs/light/libxl_dom.c index 94fef37401..16aa255aad 100644 --- a/tools/libs/light/libxl_dom.c +++ b/tools/libs/light/libxl_dom.c @@ -355,7 +355,7 @@ int libxl__build_pre(libxl__gc *gc, uint32_t domid, return ERROR_FAIL; } - if (xc_domain_setmaxmem(ctx->xch, domid, info->target_memkb + size) < 0) { + if (xc_domain_setmaxmem(ctx->xch, domid, info->max_memkb + size) < 0) { LOGE(ERROR, "Couldn't set max memory"); return ERROR_FAIL; } -- 2.25.1 From xen-devel-bounces@lists.xenproject.org Tue Jun 27 16:07:52 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 16:07:52 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556200.868527 (Exim 4.92) (envelope-from ) id 1qEBEN-0006U7-O9; Tue, 27 Jun 2023 16:07:51 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556200.868527; Tue, 27 Jun 2023 16:07:51 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEBEN-0006U0-Kx; Tue, 27 Jun 2023 16:07:51 +0000 Received: by outflank-mailman (input) for mailman id 556200; Tue, 27 Jun 2023 16:07:50 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEBEM-0006Qv-BK for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 16:07:50 +0000 Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.129.124]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id c28d0313-1504-11ee-b237-6b7b168915f2; Tue, 27 Jun 2023 18:07:49 +0200 (CEST) Received: from mail-qk1-f198.google.com (mail-qk1-f198.google.com [209.85.222.198]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-513-dbn0Ts7vNT6chnTzKkXGiQ-1; Tue, 27 Jun 2023 12:07:46 -0400 Received: by mail-qk1-f198.google.com with SMTP id af79cd13be357-765ad67e690so36464985a.1 for ; Tue, 27 Jun 2023 09:07:46 -0700 (PDT) Received: from x1n (cpe5c7695f3aee0-cm5c7695f3aede.cpe.net.cable.rogers.com. [99.254.144.39]) by smtp.gmail.com with ESMTPSA id m21-20020a05620a13b500b0075ecdc937ffsm1342302qki.41.2023.06.27.09.07.44 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 27 Jun 2023 09:07:45 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: c28d0313-1504-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1687882068; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=hJDOCrbidQ6SQFQe4MgEFJjZ7UTNPrXFah4ZUMjVF/Y=; b=Cc0KwX7LyXS8JYv5xGW2+kada08T3uFyGsb8yTCVnIZMX4XtJxbocE5Ojds0u20/K+87is myxitS0nc+jnkl3smPQ3i2/vDsQnyna8j92dy+nE2BauC8pcvPB3aet2VXVwCWMCIfP96f FZgTv+82jeH/NQ6orFj0L1Qu8UqSMoQ= X-MC-Unique: dbn0Ts7vNT6chnTzKkXGiQ-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687882066; x=1690474066; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=hJDOCrbidQ6SQFQe4MgEFJjZ7UTNPrXFah4ZUMjVF/Y=; b=bcHRa2cMQ/O+oVleqsd3tzUkJYPk8bhpgXGD4Wv9zGb5LQBuWwqtAlIWa97/FJyDV2 Vkkw8oIPuuAycqJTW9u/oWqo1EKs4MBYLEKGYkIdQtyzFW52NO12byiQQNN9VjKVZ7vm +Z1TQ2SzvS2wWna+hXrS0gXt5NKdc9QdukDpPQkSkDwyxJXJs3QoyaPwMmXF5TAphTp5 h9J2hAFnldHOUziE6+nyWsW6ih2goUFcmd6br9VpdTvrNmXkvAK+MV+Y8bh8SRN2EHzu 7KLTn7juNDZ3YjuhaIJ6d4HGWt+fWkhW8wa3PGLtB/gj4J+LyBS1woXFPoSOBC2m4l1N Hb5Q== X-Gm-Message-State: AC+VfDzGEWHlszVLNiEgizANnNdwiWOzNKvKktvEE8c7v0P12mpqgKZ7 KqDWA31tgSVnWZQxtF/HnE+KPJj453Fg4C29IGZF+BsLu5h0Dr6Kkr7Mo0vSzsxbbF7x+aj8hTx I0BsjJq9wgrCM8Fp9/L1we1ITShM= X-Received: by 2002:a05:620a:4007:b0:765:7b61:46fc with SMTP id h7-20020a05620a400700b007657b6146fcmr12614179qko.7.1687882066186; Tue, 27 Jun 2023 09:07:46 -0700 (PDT) X-Google-Smtp-Source: ACHHUZ7UY1eApNq4tXkhQSQVDzyCNrRRXMA0KLJ6oWun1WyljocOJD3jbWnq1iikbRngPAZ/IFjT9Q== X-Received: by 2002:a05:620a:4007:b0:765:7b61:46fc with SMTP id h7-20020a05620a400700b007657b6146fcmr12614153qko.7.1687882065917; Tue, 27 Jun 2023 09:07:45 -0700 (PDT) Date: Tue, 27 Jun 2023 12:07:43 -0400 From: Peter Xu To: "Vishal Moola (Oracle)" Cc: Andrew Morton , Matthew Wilcox , linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , Mike Rapoport Subject: Re: [PATCH v6 03/33] pgtable: Create struct ptdesc Message-ID: References: <20230627031431.29653-1-vishal.moola@gmail.com> <20230627031431.29653-4-vishal.moola@gmail.com> MIME-Version: 1.0 In-Reply-To: <20230627031431.29653-4-vishal.moola@gmail.com> X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset=utf-8 Content-Disposition: inline On Mon, Jun 26, 2023 at 08:14:01PM -0700, Vishal Moola (Oracle) wrote: > Currently, page table information is stored within struct page. As part > of simplifying struct page, create struct ptdesc for page table > information. > > Signed-off-by: Vishal Moola (Oracle) > Acked-by: Mike Rapoport (IBM) > --- > include/linux/pgtable.h | 68 +++++++++++++++++++++++++++++++++++++++++ > 1 file changed, 68 insertions(+) > > diff --git a/include/linux/pgtable.h b/include/linux/pgtable.h > index 5063b482e34f..d46cb709ce08 100644 > --- a/include/linux/pgtable.h > +++ b/include/linux/pgtable.h > @@ -987,6 +987,74 @@ static inline void ptep_modify_prot_commit(struct vm_area_struct *vma, > #endif /* __HAVE_ARCH_PTEP_MODIFY_PROT_TRANSACTION */ > #endif /* CONFIG_MMU */ > > + > +/** > + * struct ptdesc - Memory descriptor for page tables. > + * @__page_flags: Same as page flags. Unused for page tables. > + * @pt_rcu_head: For freeing page table pages. > + * @pt_list: List of used page tables. Used for s390 and x86. > + * @_pt_pad_1: Padding that aliases with page's compound head. > + * @pmd_huge_pte: Protected by ptdesc->ptl, used for THPs. > + * @_pt_s390_gaddr: Aliases with page's mapping. Used for s390 gmap only. Should some arch-specific bits (and a few others) always under some #ifdefs, so it shouldn't appear on other archs? > + * @pt_mm: Used for x86 pgds. > + * @pt_frag_refcount: For fragmented page table tracking. Powerpc and s390 only. > + * @ptl: Lock for the page table. > + * @__page_type: Same as page->page_type. Unused for page tables. > + * @_refcount: Same as page refcount. Used for s390 page tables. > + * @pt_memcg_data: Memcg data. Tracked for page tables here. > + * > + * This struct overlays struct page for now. Do not modify without a good > + * understanding of the issues. > + */ > +struct ptdesc { > + unsigned long __page_flags; > + > + union { > + struct rcu_head pt_rcu_head; > + struct list_head pt_list; > + struct { > + unsigned long _pt_pad_1; > + pgtable_t pmd_huge_pte; > + }; > + }; > + unsigned long _pt_s390_gaddr; > + > + union { > + struct mm_struct *pt_mm; > + atomic_t pt_frag_refcount; > + }; > + > + union { > + unsigned long _pt_pad_2; > +#if ALLOC_SPLIT_PTLOCKS > + spinlock_t *ptl; > +#else > + spinlock_t ptl; > +#endif > + }; > + unsigned int __page_type; > + atomic_t _refcount; > +#ifdef CONFIG_MEMCG > + unsigned long pt_memcg_data; > +#endif > +}; -- Peter Xu From xen-devel-bounces@lists.xenproject.org Tue Jun 27 17:18:55 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 17:18:55 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556205.868536 (Exim 4.92) (envelope-from ) id 1qECKo-0005fB-R2; Tue, 27 Jun 2023 17:18:34 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556205.868536; Tue, 27 Jun 2023 17:18:34 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qECKo-0005f4-OZ; Tue, 27 Jun 2023 17:18:34 +0000 Received: by outflank-mailman (input) for mailman id 556205; Tue, 27 Jun 2023 17:18:33 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qECKn-0005ey-7S for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 17:18:33 +0000 Received: from bee.tesarici.cz (bee.tesarici.cz [77.93.223.253]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id a214372b-150e-11ee-8611-37d641c3527e; Tue, 27 Jun 2023 19:18:29 +0200 (CEST) Received: from meshulam.tesarici.cz (dynamic-2a00-1028-83b8-1e7a-4427-cc85-6706-c595.ipv6.o2.cz [IPv6:2a00:1028:83b8:1e7a:4427:cc85:6706:c595]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (P-256) server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by bee.tesarici.cz (Postfix) with ESMTPSA id CAE6D8C3F3; Tue, 27 Jun 2023 19:18:27 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: a214372b-150e-11ee-8611-37d641c3527e Authentication-Results: mail.tesarici.cz; dmarc=fail (p=none dis=none) header.from=tesarici.cz DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=tesarici.cz; s=mail; t=1687886308; bh=6gFDNhhGJv90UdgxcbzryDH6ZG6dLvIYFXDAuTPtvSU=; h=Date:From:To:Cc:Subject:In-Reply-To:References:From; b=bySKOQZltr9ohomUzM2aa5V74hK2GS3Z0zDb44uDmzzs/QvDRuAyvfkpp/sqmUsbo TYNOTc/GZ87znxp5/6S40uTgA1tFep572/XZFIr4a0dvnpFyyemllCPFmTL8ejWTBR jtihWMAS44zGXF3GRLhcBphwoEtpIHavdX+JxLcjBcAgrze60nJp9hzy2wm/xMLv2W f3DxfaFhc3IY3NIsJPaGj3Z1shXXSEaD9AOnCOuEnsKIDh9ZxDEfwP+mpg5g+evpr2 SvnstvX48os/E5D1n8oEawxiBdrFV1sIno0QU0c2fjDy6lmqnnEG5s2xs8if27cr6c HuelAtwFx36+A== Date: Tue, 27 Jun 2023 19:18:26 +0200 From: Petr =?UTF-8?B?VGVzYcWZw61r?= To: Christoph Hellwig Cc: Juergen Gross , Stefano Stabellini , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , x86@kernel.org, "H. Peter Anvin" , xen-devel@lists.xenproject.org, iommu@lists.linux.dev, linux-kernel@vger.kernel.org Subject: Re: unexport swiotlb_active v2 Message-ID: <20230627191826.41aba02e@meshulam.tesarici.cz> In-Reply-To: <20230619091941.GA17034@lst.de> References: <20230612142542.111581-1-hch@lst.de> <20230619091941.GA17034@lst.de> X-Mailer: Claws Mail 4.1.1 (GTK 3.24.38; x86_64-suse-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit On Mon, 19 Jun 2023 11:19:41 +0200 Christoph Hellwig wrote: > Any comments? I'd really like to finish this off this merge window.. Let me second this request. My dynamic SWIOTLB patch series also has a dependence on this. Petr T From xen-devel-bounces@lists.xenproject.org Tue Jun 27 17:21:38 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 17:21:38 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556210.868546 (Exim 4.92) (envelope-from ) id 1qECNm-00075E-7l; Tue, 27 Jun 2023 17:21:38 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556210.868546; Tue, 27 Jun 2023 17:21:38 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qECNm-000757-5F; Tue, 27 Jun 2023 17:21:38 +0000 Received: by outflank-mailman (input) for mailman id 556210; Tue, 27 Jun 2023 17:21:37 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qECNl-00074z-2F for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 17:21:37 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qECNj-0000FW-V1; Tue, 27 Jun 2023 17:21:35 +0000 Received: from ip-185-104-136-31.ptr.icomera.net ([185.104.136.31] helo=[192.168.2.131]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qECNj-0000Gk-LV; Tue, 27 Jun 2023 17:21:35 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=0JtjPygEMgH67KBCAB/ahS1Nf4A3HVPZj0xHyEJdLLs=; b=AvTPm9SZi5uq3wXvcQIJIu065O Jdekbr6xtLV2iSXyLXDg0kRlLxgHtH7cUy51idFBsr0ij6mSoJ7mwJTThLBO/xgMSaCv5Mzf0cpr5 iPz+1fBc2x2WjWdBd2a662IaXZr8JKiQU4z6onw74zDG8m7sZF2sYOlDJbd+ngNQMKbg=; Message-ID: <0e086551-eb0c-743b-5daa-9576c219e041@xen.org> Date: Tue, 27 Jun 2023 18:21:30 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH 2/2] tools/python: Fix memory leak on error path Content-Language: en-US To: =?UTF-8?Q?Marek_Marczykowski-G=c3=b3recki?= , Luca Fancellu Cc: xen-devel@lists.xenproject.org, bertrand.marquis@arm.com, wei.chen@arm.com, Wei Liu , Anthony PERARD , Andrew Cooper References: <20230608135913.560413-1-luca.fancellu@arm.com> <20230608135913.560413-2-luca.fancellu@arm.com> From: Julien Grall In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Hi Marek, On 27/06/2023 13:29, Marek Marczykowski-Górecki wrote: > On Mon, Jun 26, 2023 at 08:07:46PM +0200, Marek Marczykowski-Górecki wrote: >> On Thu, Jun 08, 2023 at 02:59:13PM +0100, Luca Fancellu wrote: >>> Commit 56a7aaa16bfe introduced a memory leak on the error path for a >>> Py_BuildValue built object that on some newly introduced error path >>> has not the correct reference count handling, fix that by decrementing >>> the refcount in these path. >>> >>> Fixes: 56a7aaa16bfe ("tools: add physinfo arch_capabilities handling for Arm") >>> Signed-off-by: Luca Fancellu >>> Reported-by: Andrew Cooper >> >> Acked-by: Marek Marczykowski-Górecki > > Oh, and BTW, in relation to the discussion on the summit about > committing process, the buggy version was committed without my ack, > after waiting for my review for about two weeks. I was the committer for the series. In this case, this was not a case of committing because I thought the patch was uncontroversial. Instead, this was a lack of my side to properly check the acks on the patch. Sorry for that. In general, as I mentioned during the design session, I don't commit with missing acks without explicitly saying so on the mailing list and this is often after consulting with others on IRC. On a similar topic. So far, checking the ack is a manual process for me. So this is not entirely an error-free process (in particular for patch requiring multiple maintainers acks). I would love to have a script that could tell me if a patch is fully approved and/or what acks are missing. Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Tue Jun 27 17:22:34 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 17:22:34 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556213.868556 (Exim 4.92) (envelope-from ) id 1qECOf-0007bB-Gs; Tue, 27 Jun 2023 17:22:33 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556213.868556; Tue, 27 Jun 2023 17:22:33 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qECOf-0007ab-ED; Tue, 27 Jun 2023 17:22:33 +0000 Received: by outflank-mailman (input) for mailman id 556213; Tue, 27 Jun 2023 17:22:31 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qECOd-0007Yr-LJ for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 17:22:31 +0000 Received: from wout5-smtp.messagingengine.com (wout5-smtp.messagingengine.com [64.147.123.21]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 305150d5-150f-11ee-b237-6b7b168915f2; Tue, 27 Jun 2023 19:22:29 +0200 (CEST) Received: from compute3.internal (compute3.nyi.internal [10.202.2.43]) by mailout.west.internal (Postfix) with ESMTP id 9A9DA320094F; Tue, 27 Jun 2023 13:22:25 -0400 (EDT) Received: from mailfrontend1 ([10.202.2.162]) by compute3.internal (MEProxy); Tue, 27 Jun 2023 13:22:26 -0400 Received: by mail.messagingengine.com (Postfix) with ESMTPA; Tue, 27 Jun 2023 13:22:24 -0400 (EDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 305150d5-150f-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= invisiblethingslab.com; h=cc:cc:content-transfer-encoding :content-type:date:date:from:from:in-reply-to:message-id :mime-version:reply-to:sender:subject:subject:to:to; s=fm2; t= 1687886545; x=1687972945; bh=UGy1h7/yBoCL+NGQDbYT9sVoQM4JXCJ8XYZ vW+aIHhY=; b=FN5HL4LiZK8BnmJSMpE/4/zQ5W/C8nfSKvARuC3qSq5gs0uzq2Z oKV9lxM4Qc2b1v+0NeVUYTnghdAEqs4CVyQGuB1jdf+0VZaCdduxQhZ4Gx6gVyvX nrZMzI5jwpenVLXlL7rUiKFvAE3hOZ3RRdGvt6ncXLcovTcTjHSKRz2LKL9P2/7T 7Xr8a9WA5fCeh3SZXwtC9NJUZTWdosp13qA+USMGIQrEuPVUfnxhqD7kPzIBSFKT Pwuo/LrPxNLs84OiTDhQRE/oeqC/EmebfB9/3fiLV+gT/fdk6wb49Q2+Xz1z4EmL kXE5p+sowB/15dDvqJOSWAkqoAfhZt8xwzQ== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-transfer-encoding :content-type:date:date:feedback-id:feedback-id:from:from :in-reply-to:message-id:mime-version:reply-to:sender:subject :subject:to:to:x-me-proxy:x-me-proxy:x-me-sender:x-me-sender :x-sasl-enc; s=fm2; t=1687886545; x=1687972945; bh=UGy1h7/yBoCL+ NGQDbYT9sVoQM4JXCJ8XYZvW+aIHhY=; b=RshzrOgydTM6POsx2gvl8qpFBzQY+ hfLxI4ngsrp2Yak8y0oehjzX17FaEp0rjXapJyK7rBuKeZTOM9SwLz4gxv4iLT+R KCusRoBW2iXI72N3ec7O9LHmTFBMMfe44SwyRdhE604wBjlB/IsCq6hXXRGke+Lz 120dVvdIXTG5kE2F/+B3HFIgC6MWg7B1ziCvfaH/Uz/wawVnGI0MDyS3xqKSFdkR fZz3tKU2JVa6GRV9jN82ECheBGOUOW8XhcmNh2SWTIH2A098spvle6YVeTQRS/sP S2pQng0onjmgm2fdJic5bxsVEgTWttdIhw0z5sZ3NQIG6SAxXIOP9K8Eg== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedviedrtddtgdeilecutefuodetggdotefrodftvf curfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfghnecu uegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmdenuc fjughrpefhvfevufffkffoggfgsedtkeertdertddtnecuhfhrohhmpeffvghmihcuofgr rhhivgcuqfgsvghnohhurhcuoeguvghmihesihhnvhhishhisghlvghthhhinhhgshhlrg gsrdgtohhmqeenucggtffrrghtthgvrhhnpedvfeegkedvkefgffegkefhieejtdffkeeh hfelheefjeeutefgleeggfdtveeileenucevlhhushhtvghrufhiiigvpedtnecurfgrrh grmhepmhgrihhlfhhrohhmpeguvghmihesihhnvhhishhisghlvghthhhinhhgshhlrggs rdgtohhm X-ME-Proxy: Feedback-ID: iac594737:Fastmail From: Demi Marie Obenour To: Juergen Gross , Stefano Stabellini , Oleksandr Tyshchenko , Jan Beulich , Konrad Rzeszutek Wilk Cc: Demi Marie Obenour , Xen developer discussion , Linux Kernel Mailing List , stable@vger.kernel.org Subject: [PATCH v3] xen: speed up grant-table reclaim Date: Tue, 27 Jun 2023 13:22:14 -0400 Message-ID: <20230627172216.1359-1-demi@invisiblethingslab.com> X-Mailer: git-send-email 2.41.0 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit When a grant entry is still in use by the remote domain, Linux must put it on a deferred list. Normally, this list is very short, because the PV network and block protocols expect the backend to unmap the grant first. However, Qubes OS's GUI protocol is subject to the constraints of the X Window System, and as such winds up with the frontend unmapping the window first. As a result, the list can grow very large, resulting in a massive memory leak and eventual VM freeze. To partially solve this problem, make the number of entries that the VM will attempt to free at each iteration tunable. The default is still 10, but it can be overridden at compile-time (via Kconfig), boot-time (via a kernel command-line option), or runtime (via sysfs). This is Cc: stable because (when combined with appropriate userspace changes) it fixes a severe performance and stability problem for Qubes OS users. Cc: stable@vger.kernel.org Signed-off-by: Demi Marie Obenour --- drivers/xen/grant-table.c | 40 ++++++++++++++++++++++++++++----------- 1 file changed, 29 insertions(+), 11 deletions(-) Changes since v2: - use atomic_inc_return(x) and atomic_dec_return(x) instead of atomic_add_return(1, x) and atomic_sub_return(1, x) respectively. - move module_param macro closer to the definition of free_per_iteration. - add blank line between declarations and statements. Changes since v1: - drop setting default via Kconfig diff --git a/drivers/xen/grant-table.c b/drivers/xen/grant-table.c index e1ec725c2819d4d5dede063eb00d86a6d52944c0..f13c3b76ad1eb7110e2a2981e9fa4e504174e431 100644 --- a/drivers/xen/grant-table.c +++ b/drivers/xen/grant-table.c @@ -498,14 +498,21 @@ static LIST_HEAD(deferred_list); static void gnttab_handle_deferred(struct timer_list *); static DEFINE_TIMER(deferred_timer, gnttab_handle_deferred); +static atomic64_t deferred_count; +static atomic64_t leaked_count; +static unsigned int free_per_iteration = 10; +module_param(free_per_iteration, uint, 0600); + static void gnttab_handle_deferred(struct timer_list *unused) { - unsigned int nr = 10; + unsigned int nr = READ_ONCE(free_per_iteration); + const bool ignore_limit = nr == 0; struct deferred_entry *first = NULL; unsigned long flags; + size_t freed = 0; spin_lock_irqsave(&gnttab_list_lock, flags); - while (nr--) { + while ((ignore_limit || nr--) && !list_empty(&deferred_list)) { struct deferred_entry *entry = list_first_entry(&deferred_list, struct deferred_entry, list); @@ -515,10 +522,14 @@ static void gnttab_handle_deferred(struct timer_list *unused) list_del(&entry->list); spin_unlock_irqrestore(&gnttab_list_lock, flags); if (_gnttab_end_foreign_access_ref(entry->ref)) { + uint64_t ret = atomic64_dec_return(&deferred_count); + put_free_entry(entry->ref); - pr_debug("freeing g.e. %#x (pfn %#lx)\n", - entry->ref, page_to_pfn(entry->page)); + pr_debug("freeing g.e. %#x (pfn %#lx), %llu remaining\n", + entry->ref, page_to_pfn(entry->page), + (unsigned long long)ret); put_page(entry->page); + freed++; kfree(entry); entry = NULL; } else { @@ -530,21 +541,22 @@ static void gnttab_handle_deferred(struct timer_list *unused) spin_lock_irqsave(&gnttab_list_lock, flags); if (entry) list_add_tail(&entry->list, &deferred_list); - else if (list_empty(&deferred_list)) - break; } - if (!list_empty(&deferred_list) && !timer_pending(&deferred_timer)) { + if (list_empty(&deferred_list)) + WARN_ON(atomic64_read(&deferred_count)); + else if (!timer_pending(&deferred_timer)) { deferred_timer.expires = jiffies + HZ; add_timer(&deferred_timer); } spin_unlock_irqrestore(&gnttab_list_lock, flags); + pr_debug("Freed %zu references", freed); } static void gnttab_add_deferred(grant_ref_t ref, struct page *page) { struct deferred_entry *entry; gfp_t gfp = (in_atomic() || irqs_disabled()) ? GFP_ATOMIC : GFP_KERNEL; - const char *what = KERN_WARNING "leaking"; + uint64_t leaked, deferred; entry = kmalloc(sizeof(*entry), gfp); if (!page) { @@ -567,10 +579,16 @@ static void gnttab_add_deferred(grant_ref_t ref, struct page *page) add_timer(&deferred_timer); } spin_unlock_irqrestore(&gnttab_list_lock, flags); - what = KERN_DEBUG "deferring"; + deferred = atomic64_inc_return(&deferred_count); + leaked = atomic64_read(&leaked_count); + pr_debug("deferring g.e. %#x (pfn %#lx) (total deferred %llu, total leaked %llu)\n", + ref, page ? page_to_pfn(page) : -1, deferred, leaked); + } else { + deferred = atomic64_read(&deferred_count); + leaked = atomic64_inc_return(&leaked_count); + pr_warn("leaking g.e. %#x (pfn %#lx) (total deferred %llu, total leaked %llu)\n", + ref, page ? page_to_pfn(page) : -1, deferred, leaked); } - printk("%s g.e. %#x (pfn %#lx)\n", - what, ref, page ? page_to_pfn(page) : -1); } int gnttab_try_end_foreign_access(grant_ref_t ref) -- Sincerely, Demi Marie Obenour (she/her/hers) Invisible Things Lab From xen-devel-bounces@lists.xenproject.org Tue Jun 27 17:24:37 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 17:24:37 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556223.868567 (Exim 4.92) (envelope-from ) id 1qECQS-0008GK-1E; Tue, 27 Jun 2023 17:24:24 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556223.868567; Tue, 27 Jun 2023 17:24:24 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qECQR-0008GD-Tk; Tue, 27 Jun 2023 17:24:23 +0000 Received: by outflank-mailman (input) for mailman id 556223; Tue, 27 Jun 2023 17:24:22 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qECQQ-0008Fp-PE for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 17:24:22 +0000 Received: from bee.tesarici.cz (bee.tesarici.cz [2a03:3b40:fe:2d4::1]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 733da51f-150f-11ee-8611-37d641c3527e; Tue, 27 Jun 2023 19:24:20 +0200 (CEST) Received: from meshulam.tesarici.cz (dynamic-2a00-1028-83b8-1e7a-4427-cc85-6706-c595.ipv6.o2.cz [IPv6:2a00:1028:83b8:1e7a:4427:cc85:6706:c595]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (P-256) server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by bee.tesarici.cz (Postfix) with ESMTPSA id A106C8CA7A; Tue, 27 Jun 2023 19:24:17 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 733da51f-150f-11ee-8611-37d641c3527e Authentication-Results: mail.tesarici.cz; dmarc=fail (p=none dis=none) header.from=tesarici.cz DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=tesarici.cz; s=mail; t=1687886658; bh=9vOPDa2+EN3LYAg4BMAohZm6Jl+lEOuMGaVCuwssnaA=; h=Date:From:To:Cc:Subject:In-Reply-To:References:From; b=cNk0Wgm3mOOYkdgD7o2P8zkmXB9DlvZdjG1JAbNclP/xyBhjIkW/MPZDpjjOIIR/4 B9+HxmW+8I3uNmUoF2WJM3IeX5oZSGC91EY5GZSR8WKa47+bB0udthwtHptF4jFmDq lFCLX6B2Yr/tH2MwMKBIsmuFeha/poInE0dXhO4Y7A7lA05YKl5OI/Eyk1xSheX2cy h14303BG8tneIYkRKh6qzWOQX7gkga2Yzn2C/EfYREZxN+VAdmn3fVxCXSQk6+WedL KZR5SVZBabIZT9t27FMrWa5mVOrttNHWaNXGkP2NNngdNbplu/tQyrPCNag/3ednN1 lN2OqtGQuTTlA== Date: Tue, 27 Jun 2023 19:24:14 +0200 From: Petr =?UTF-8?B?VGVzYcWZw61r?= To: Christoph Hellwig Cc: Robin Murphy , Greg Kroah-Hartman , Petr Tesarik , Stefano Stabellini , Thomas Bogendoerfer , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , "maintainer:X86 ARCHITECTURE (32-BIT AND 64-BIT)" , "H. Peter Anvin" , "Rafael J. Wysocki" , Juergen Gross , Oleksandr Tyshchenko , Marek Szyprowski , Andy Shevchenko , Hans de Goede , Jason Gunthorpe , Kees Cook , Saravana Kannan , "moderated list:XEN HYPERVISOR ARM" , "moderated list:ARM PORT" , open list , "open list:MIPS" , "open list:XEN SWIOTLB SUBSYSTEM" , Roberto Sassu , Kefeng Wang Subject: Re: [PATCH v3 1/7] swiotlb: make io_tlb_default_mem local to swiotlb.c Message-ID: <20230627192414.6b78fdb8@meshulam.tesarici.cz> In-Reply-To: <20230627154802.GA29567@lst.de> References: <2023062745-routing-palace-d0b4@gregkh> <73f11258-1562-17c1-969e-b134dcb5f35c@arm.com> <20230627133006.16ee11af@meshulam.tesarici.cz> <20230627154802.GA29567@lst.de> X-Mailer: Claws Mail 4.1.1 (GTK 3.24.38; x86_64-suse-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable On Tue, 27 Jun 2023 17:48:02 +0200 Christoph Hellwig wrote: > On Tue, Jun 27, 2023 at 01:30:06PM +0200, Petr Tesa=C5=99=C3=ADk wrote: > > Xen is the only user of an "is SWIOTLB present" interface. IIUC Xen > > needs bounce buffers for the PCI frontend driver, but if there is no > > other reason to have a SWIOTLB, the system does not set up one at boot.= =20 >=20 > Please take a look at my "unexport swiotlb_active v2" series that > unfortunately missed the 6.5 merge window waiting for reviews. I noticed it, but it seems I missed the part which completely removes pci_xen_swiotlb_init_late(). Then we're left only with a reference from xen_mm_init() in arch/arm/xen/mm.c, and I believe this one can also be solved differently. Petr T From xen-devel-bounces@lists.xenproject.org Tue Jun 27 17:42:39 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 17:42:39 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556228.868576 (Exim 4.92) (envelope-from ) id 1qEChr-0002IV-EZ; Tue, 27 Jun 2023 17:42:23 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556228.868576; Tue, 27 Jun 2023 17:42:23 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEChr-0002IO-C3; Tue, 27 Jun 2023 17:42:23 +0000 Received: by outflank-mailman (input) for mailman id 556228; Tue, 27 Jun 2023 17:42:22 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEChq-0002I2-4S for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 17:42:22 +0000 Received: from mail-yw1-x1135.google.com (mail-yw1-x1135.google.com [2607:f8b0:4864:20::1135]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id f690f734-1511-11ee-8611-37d641c3527e; Tue, 27 Jun 2023 19:42:19 +0200 (CEST) Received: by mail-yw1-x1135.google.com with SMTP id 00721157ae682-57688a146ecso45090907b3.2 for ; Tue, 27 Jun 2023 10:42:20 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: f690f734-1511-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687887739; x=1690479739; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=i618d6TBDc9eRPjFDJkpeqKfOfbO3uM7uCEV9XLltFk=; b=HvOjTHjCD8itMm1xp5AnK/TmYH5tQiF1El2gyMO5zpqTY4wM1G2ir3ku6089UY1inQ ilXwuLjIDRYIMPHiQPHPbFQRy/hIa9oVwH0QYqAm53mZsyIpL6HgYzNNL/NNLIh2SC53 /Joi55NqQPacIQIaSPLnjCH7o6qvV31ICWbCQ8IiY+RsTUhqfYiVoVRzcNBSzvMpURs/ f/RKmZePqghHrHdV5n1so0lsBS2EaZX77ICe7eDI+jllhbMiPBHJhxnD9h+Hh+PnGjAo 7epexu03a+N5aJGPnt128CQw+E8IVZS3OeUo6R0hlPLkskRaMfOu6WUJJOIpsapTfYI9 tHRw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687887739; x=1690479739; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=i618d6TBDc9eRPjFDJkpeqKfOfbO3uM7uCEV9XLltFk=; b=LpOJqes9wTpkQRGFRM+huXEMl6KPEKTpw4b/rMP0Z+TIazWsIFmoGX8ggky6II1nIV jTJz1qZN14bXCSRdhxVNafvzrKv14XhJEthMTT1x0ZSQHw3aHuziEBjEV/8JDrxGR4JA 3AG1MmCybkLVBeleeRNXGgl5QzTIpyxk3Kyj3bSZMfUujqIQ0K3IoCQtZuA4reYLHkWB 3s9ONSKwFyiYiWlgkWeD7kRjYgPTqpeo7yMuuDgGTxIpOBLdGUPTpBVHwthxm6ft1TWr Tf48rIt33lKlNyG9KfcfRsrfv5BupZupkxMWH/GTJyZItcLS+fnHZLnc3mhYlBEsDpr3 o5qQ== X-Gm-Message-State: AC+VfDwbRU7bLSB/QZbQJZUOgR9bx083COspf8r3RXcFytyo+2XEyY+w 2Jhx4s++d0qoW+zaFl18x7NEdVoYFMB65T0tH6I= X-Google-Smtp-Source: ACHHUZ5ixDfcfZvsP+Sk9Q2uIR96dLCuXZPewVmRsckC25R1Wt8J/1BC8EjmOgQOvqL4+PjmfxQNP2ok9/vuUSXcV8M= X-Received: by 2002:a25:86c8:0:b0:c16:ba32:1b1c with SMTP id y8-20020a2586c8000000b00c16ba321b1cmr8446597ybm.58.1687887738923; Tue, 27 Jun 2023 10:42:18 -0700 (PDT) MIME-Version: 1.0 References: <20230622205745.79707-1-vishal.moola@gmail.com> <20230622205745.79707-27-vishal.moola@gmail.com> <13bab37c-0f0a-431a-8b67-4379bf4dc541@roeck-us.net> In-Reply-To: <13bab37c-0f0a-431a-8b67-4379bf4dc541@roeck-us.net> From: Vishal Moola Date: Tue, 27 Jun 2023 10:42:07 -0700 Message-ID: Subject: Re: [PATCH v5 26/33] nios2: Convert __pte_free_tlb() to use ptdescs To: Guenter Roeck Cc: Andrew Morton , Matthew Wilcox , linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , Dinh Nguyen , Mike Rapoport Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Mon, Jun 26, 2023 at 10:47=E2=80=AFPM Guenter Roeck = wrote: > > On Thu, Jun 22, 2023 at 01:57:38PM -0700, Vishal Moola (Oracle) wrote: > > Part of the conversions to replace pgtable constructor/destructors with > > ptdesc equivalents. > > > > Signed-off-by: Vishal Moola (Oracle) > > Acked-by: Mike Rapoport (IBM) > > This patch causes all nios2 builds to fail. It looks like you tried to apply this patch on its own. This patch depends on patches 01-12 of this patchset to compile properly. I've cross-compiled this architecture and it worked, but let me know if something fails when its applied on top of those patches (or the rest of the patchset). From xen-devel-bounces@lists.xenproject.org Tue Jun 27 17:52:23 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 17:52:23 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556233.868587 (Exim 4.92) (envelope-from ) id 1qECrO-0003oN-BY; Tue, 27 Jun 2023 17:52:14 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556233.868587; Tue, 27 Jun 2023 17:52:14 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qECrO-0003oG-93; Tue, 27 Jun 2023 17:52:14 +0000 Received: by outflank-mailman (input) for mailman id 556233; Tue, 27 Jun 2023 17:52:13 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qECrN-0003oA-9r for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 17:52:13 +0000 Received: from mail-ot1-x336.google.com (mail-ot1-x336.google.com [2607:f8b0:4864:20::336]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 57a73d5b-1513-11ee-b237-6b7b168915f2; Tue, 27 Jun 2023 19:52:12 +0200 (CEST) Received: by mail-ot1-x336.google.com with SMTP id 46e09a7af769-6b708b97418so4267344a34.3 for ; Tue, 27 Jun 2023 10:52:12 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 57a73d5b-1513-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687888331; x=1690480331; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=ya0gjT04wvrkPEwxsIo0SrjOZFrw43ACMJ5aI2sBKGs=; b=jU0XSQm/UgQNqhqQcjqaxOHJKL3Tu8GM/GwEobHZGDkP+x8DVdgSjRkU85h/Lj/+te oZwK4Q1yO37Pzbn1i7oZRsd+yfivOXZX9DLv/iX+OOzSZ/17s4ytR4cUrCKbaq8ScVjb y4NBy98BQyt8WGI73+o5s1aq7cUaSdPW95ULfQ6FlPkdUprfA5PQkMvKjJsZAGVBcKqi qlieckJVpQyRqbWlQMoi71Q4k95ldkAZz69rpAi1h8kLQ3wxt3idqYMSWF1Mqn3mJooy Rs2GGbK0m2G7LUgnIAcus/1X+0dgeX1Usy3dZ/2MF2ihQvsHs5fE8nG3/WrSESAbmo+3 LPFw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687888331; x=1690480331; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=ya0gjT04wvrkPEwxsIo0SrjOZFrw43ACMJ5aI2sBKGs=; b=Z0HPCaUtZFOY8yhWQAMrBKa1g5IgHbsdEG46ez8hGdX8H+aAoIyg5/SPmEja6o8ZDJ 0No9bS2R1Ym1trlceN1xmRTvhBNdSN2XUEpW8rTZXYSSBg6f/rX0g8iTcfyVuPQpoVmm 2mHlr7csrOFlGxIl485/WONK9EJbNvFnfDyTRrWpsNl/d2gqIHm/jQWRDmo73E/h+U80 VFi/u65ylGHaoTOdvUrW6zHuHEYS6xx4eUg5vb0eLHPlOstBJKVP/iermr358+6sf2SK Zbd2aVp0K1z0DzpbKwtZSXVyb0NzUc4ynqd9aYMHHpiUJqMEF356jq6eI5Bf2pKne6Ji jHHg== X-Gm-Message-State: AC+VfDzMDCrryLEkNyOUVDgRG2oM1+p7PdRd13o6HxXs+iiM1nji9ZO+ HnXUo5OY+v2THfKBv9YB7dZ0oo/yslDACKxqO24= X-Google-Smtp-Source: ACHHUZ60PXVLGXFjCZbPL4+H89P+QaultgII2fPTXJpRhifF/y6voZRlslPkfFetToA56imkT1WhjHNqMU1RYiBUm6M= X-Received: by 2002:a05:6359:d23:b0:133:a55:7e26 with SMTP id gp35-20020a0563590d2300b001330a557e26mr5444430rwb.7.1687888330839; Tue, 27 Jun 2023 10:52:10 -0700 (PDT) MIME-Version: 1.0 References: <20230627031431.29653-1-vishal.moola@gmail.com> <20230627031431.29653-4-vishal.moola@gmail.com> In-Reply-To: From: Vishal Moola Date: Tue, 27 Jun 2023 10:51:59 -0700 Message-ID: Subject: Re: [PATCH v6 03/33] pgtable: Create struct ptdesc To: Peter Xu Cc: Andrew Morton , Matthew Wilcox , linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , Mike Rapoport Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Tue, Jun 27, 2023 at 9:07=E2=80=AFAM Peter Xu wrote: > > On Mon, Jun 26, 2023 at 08:14:01PM -0700, Vishal Moola (Oracle) wrote: > > Currently, page table information is stored within struct page. As part > > of simplifying struct page, create struct ptdesc for page table > > information. > > > > Signed-off-by: Vishal Moola (Oracle) > > Acked-by: Mike Rapoport (IBM) > > --- > > include/linux/pgtable.h | 68 +++++++++++++++++++++++++++++++++++++++++ > > 1 file changed, 68 insertions(+) > > > > diff --git a/include/linux/pgtable.h b/include/linux/pgtable.h > > index 5063b482e34f..d46cb709ce08 100644 > > --- a/include/linux/pgtable.h > > +++ b/include/linux/pgtable.h > > @@ -987,6 +987,74 @@ static inline void ptep_modify_prot_commit(struct = vm_area_struct *vma, > > #endif /* __HAVE_ARCH_PTEP_MODIFY_PROT_TRANSACTION */ > > #endif /* CONFIG_MMU */ > > > > + > > +/** > > + * struct ptdesc - Memory descriptor for page tables. > > + * @__page_flags: Same as page flags. Unused for page tables. > > + * @pt_rcu_head: For freeing page table pages. > > + * @pt_list: List of used page tables. Used for s390 and x86. > > + * @_pt_pad_1: Padding that aliases with page's compound head. > > + * @pmd_huge_pte: Protected by ptdesc->ptl, used for THPs. > > + * @_pt_s390_gaddr: Aliases with page's mapping. Used for s390 gmap = only. > > Should some arch-specific bits (and a few others) always under some > #ifdefs, so it shouldn't appear on other archs? Right now this struct completely overlays struct page, so the padding as well as any arch-specific fields have to stay. Whenever we get ptdescs independent of struct page we can cleanup any unnecessary fields, as well as omit unnecessary fields from unrelated architectures. From xen-devel-bounces@lists.xenproject.org Tue Jun 27 18:34:32 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 18:34:32 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556237.868596 (Exim 4.92) (envelope-from ) id 1qEDVx-0008L6-FF; Tue, 27 Jun 2023 18:34:09 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556237.868596; Tue, 27 Jun 2023 18:34:09 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEDVx-0008Kz-Bo; Tue, 27 Jun 2023 18:34:09 +0000 Received: by outflank-mailman (input) for mailman id 556237; Tue, 27 Jun 2023 18:34:07 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEDVv-0008Kp-NW; Tue, 27 Jun 2023 18:34:07 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEDVv-0001rp-D1; Tue, 27 Jun 2023 18:34:07 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEDVv-0006pV-0Q; Tue, 27 Jun 2023 18:34:07 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qEDVu-0001ol-WF; Tue, 27 Jun 2023 18:34:07 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=+eBDZqMJGehslz3cMVhbRQ1pw7jlZIll0CfALl6Yq3U=; b=KRt+g+q6/d3sLD6v/Nz0EbgNFx 1vBNerpWGNqQYL47jdVx1DeM/hx1fzTWKJE+zXW2/jMbjf0FcG1fsW/5687xLwF1TVxmH7M2SVpj9 DP0wLqOLeHq/9RijdGyuzXHMQyGq4dxaHyQzqyVKwM+KkpoMWgt1Ah5I+kfkyNq/Az/M=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [ovmf test] 181615: all pass - PUSHED X-Osstest-Versions-This: ovmf=ea7a3015a2404e1358218463dd25df5ae7615352 X-Osstest-Versions-That: ovmf=28eb51dd54217d48869a8f02534243404308482a From: osstest service owner Date: Tue, 27 Jun 2023 18:34:06 +0000 flight 181615 ovmf real [real] http://logs.test-lab.xenproject.org/osstest/logs/181615/ Perfect :-) All tests in this flight passed as required version targeted for testing: ovmf ea7a3015a2404e1358218463dd25df5ae7615352 baseline version: ovmf 28eb51dd54217d48869a8f02534243404308482a Last test of basis 181612 2023-06-27 10:43:49 Z 0 days Testing same since 181615 2023-06-27 16:42:22 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Ard Biesheuvel Gerd Hoffmann jobs: build-amd64-xsm pass build-i386-xsm pass build-amd64 pass build-i386 pass build-amd64-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-i386-pvops pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Pushing revision : To xenbits.xen.org:/home/xen/git/osstest/ovmf.git 28eb51dd54..ea7a3015a2 ea7a3015a2404e1358218463dd25df5ae7615352 -> xen-tested-master From xen-devel-bounces@lists.xenproject.org Tue Jun 27 18:53:23 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 18:53:23 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556243.868606 (Exim 4.92) (envelope-from ) id 1qEDoK-0002Ni-WC; Tue, 27 Jun 2023 18:53:09 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556243.868606; Tue, 27 Jun 2023 18:53:08 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEDoK-0002Nb-TV; Tue, 27 Jun 2023 18:53:08 +0000 Received: by outflank-mailman (input) for mailman id 556243; Tue, 27 Jun 2023 18:53:07 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEDoJ-0002NR-CV; Tue, 27 Jun 2023 18:53:07 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEDoI-0002Jw-Qa; Tue, 27 Jun 2023 18:53:06 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEDoI-0007Ff-C0; Tue, 27 Jun 2023 18:53:06 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qEDoI-0006Tg-Bb; Tue, 27 Jun 2023 18:53:06 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=Y+PdHl9bCUUTyoUZmLo+T3H4hSV7z2dLvwihMc4goUk=; b=DRvEZiVsBXDvXV0wCtTvEIrGlF BpJoAchWtqR16mFbgj4XuurPUFcAYS13jp3E29kfR2tLckyXR1GHu50wPKeTibYFrhTfP8d6KGvD5 s/q13EH0GQO8EVTBUPM9vKA15Y5azLQqjM97ZxBwZ3cVSLDzRCSogbaDtaon2J9c/zNA=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [linux-linus test] 181613: regressions - FAIL X-Osstest-Failures: linux-linus:test-amd64-amd64-qemuu-nested-amd:leak-check/basis(11):fail:regression linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:leak-check/basis(11):fail:regression linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:xen-boot:fail:regression linux-linus:test-amd64-amd64-pygrub:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:xen-boot:fail:regression linux-linus:test-amd64-amd64-libvirt-xsm:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64:leak-check/basis(11):fail:regression linux-linus:test-amd64-amd64-freebsd11-amd64:leak-check/basis(11):fail:regression linux-linus:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:xen-boot:fail:regression linux-linus:test-amd64-amd64-libvirt-raw:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-qemut-debianhvm-amd64:leak-check/basis(11):fail:regression linux-linus:test-amd64-amd64-xl-pvhv2-amd:debian-install:fail:regression linux-linus:test-amd64-amd64-xl:debian-install:fail:regression linux-linus:test-amd64-amd64-xl-multivcpu:guest-start:fail:regression linux-linus:test-amd64-amd64-xl-shadow:debian-install:fail:regression linux-linus:test-amd64-amd64-libvirt-pair:xen-boot/dst_host:fail:regression linux-linus:test-amd64-amd64-xl-pvhv2-intel:xen-boot:fail:regression linux-linus:test-amd64-amd64-pair:xen-boot/src_host:fail:regression linux-linus:test-amd64-amd64-pair:xen-boot/dst_host:fail:regression linux-linus:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-credit1:leak-check/basis(11):fail:regression linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:debian-hvm-install:fail:regression linux-linus:test-amd64-amd64-freebsd12-amd64:xen-boot:fail:regression linux-linus:test-amd64-amd64-qemuu-nested-intel:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-pvshim:xen-boot:fail:regression linux-linus:test-amd64-amd64-libvirt-qcow2:debian-di-install:fail:regression linux-linus:test-amd64-amd64-xl-credit2:debian-install:fail:regression linux-linus:test-armhf-armhf-xl-credit1:xen-boot:fail:regression linux-linus:test-amd64-amd64-examine:reboot:fail:regression linux-linus:test-amd64-amd64-xl-vhd:guest-start/debian.repeat:fail:regression linux-linus:test-amd64-amd64-libvirt:leak-check/basis(11):fail:regression linux-linus:test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm:leak-check/basis(11):fail:regression linux-linus:test-amd64-coresched-amd64-xl:debian-fixup:fail:regression linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:debian-hvm-install:fail:regression linux-linus:test-amd64-amd64-xl-qemuu-ovmf-amd64:debian-hvm-install:fail:regression linux-linus:test-amd64-amd64-libvirt-qcow2:xen-boot:fail:heisenbug linux-linus:test-amd64-amd64-xl-pvhv2-amd:leak-check/basis(11):fail:heisenbug linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:xen-boot:fail:heisenbug linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:xen-boot:fail:heisenbug linux-linus:test-amd64-amd64-xl-shadow:xen-boot:fail:heisenbug linux-linus:test-amd64-amd64-dom0pvh-xl-amd:guest-start/debian.repeat:fail:heisenbug linux-linus:test-amd64-amd64-examine-bios:reboot:fail:heisenbug linux-linus:test-amd64-amd64-xl-qemuu-ovmf-amd64:leak-check/basis(11):fail:heisenbug linux-linus:test-amd64-amd64-libvirt:xen-boot:fail:heisenbug linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:xen-boot:fail:heisenbug linux-linus:test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm:xen-boot:fail:heisenbug linux-linus:test-amd64-coresched-amd64-xl:debian-install:fail:heisenbug linux-linus:test-amd64-amd64-libvirt-pair:xen-boot/src_host:fail:heisenbug linux-linus:test-amd64-amd64-examine-uefi:examine-iommu:fail:heisenbug linux-linus:test-amd64-amd64-xl-rtds:leak-check/basis(11):fail:allowable linux-linus:test-armhf-armhf-examine:reboot:fail:nonblocking linux-linus:test-armhf-armhf-xl-arndale:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-raw:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-credit2:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-rtds:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-qcow2:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-vhd:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-multivcpu:xen-boot:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: linux=1ef6663a587ba3e57dc5065a477db1c64481eedd X-Osstest-Versions-That: linux=6c538e1adbfc696ac4747fb10d63e704344f763d From: osstest service owner Date: Tue, 27 Jun 2023 18:53:06 +0000 flight 181613 linux-linus real [real] http://logs.test-lab.xenproject.org/osstest/logs/181613/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: test-amd64-amd64-qemuu-nested-amd 11 leak-check/basis(11) fail REGR. vs. 180278 test-amd64-amd64-xl-qemut-ws16-amd64 11 leak-check/basis(11) fail REGR. vs. 180278 test-amd64-amd64-xl-qemuu-ws16-amd64 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-pygrub 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-xl-qemuu-win7-amd64 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-xl-qemut-win7-amd64 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-libvirt-xsm 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-xl-qemuu-debianhvm-amd64 11 leak-check/basis(11) fail REGR. vs. 180278 test-amd64-amd64-freebsd11-amd64 11 leak-check/basis(11) fail REGR. vs. 180278 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-libvirt-raw 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-xl-qemut-debianhvm-amd64 11 leak-check/basis(11) fail REGR. vs. 180278 test-amd64-amd64-xl-pvhv2-amd 12 debian-install fail REGR. vs. 180278 test-amd64-amd64-xl 12 debian-install fail REGR. vs. 180278 test-amd64-amd64-xl-multivcpu 14 guest-start fail REGR. vs. 180278 test-amd64-amd64-xl-shadow 12 debian-install fail REGR. vs. 180278 test-amd64-amd64-libvirt-pair 13 xen-boot/dst_host fail REGR. vs. 180278 test-amd64-amd64-xl-pvhv2-intel 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-pair 12 xen-boot/src_host fail REGR. vs. 180278 test-amd64-amd64-pair 13 xen-boot/dst_host fail REGR. vs. 180278 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-xl-credit1 11 leak-check/basis(11) fail REGR. vs. 180278 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 12 debian-hvm-install fail REGR. vs. 180278 test-amd64-amd64-freebsd12-amd64 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-qemuu-nested-intel 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-xl-pvshim 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-libvirt-qcow2 12 debian-di-install fail REGR. vs. 180278 test-amd64-amd64-xl-credit2 12 debian-install fail REGR. vs. 180278 test-armhf-armhf-xl-credit1 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-examine 8 reboot fail REGR. vs. 180278 test-amd64-amd64-xl-vhd 21 guest-start/debian.repeat fail REGR. vs. 180278 test-amd64-amd64-libvirt 11 leak-check/basis(11) fail in 181609 REGR. vs. 180278 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm 11 leak-check/basis(11) fail in 181609 REGR. vs. 180278 test-amd64-coresched-amd64-xl 13 debian-fixup fail in 181609 REGR. vs. 180278 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 12 debian-hvm-install fail in 181609 REGR. vs. 180278 test-amd64-amd64-xl-qemuu-ovmf-amd64 12 debian-hvm-install fail in 181609 REGR. vs. 180278 Tests which are failing intermittently (not blocking): test-amd64-amd64-libvirt-qcow2 8 xen-boot fail in 181609 pass in 181613 test-amd64-amd64-xl-pvhv2-amd 11 leak-check/basis(11) fail in 181609 pass in 181613 test-amd64-amd64-xl-qemut-ws16-amd64 8 xen-boot fail in 181609 pass in 181613 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 8 xen-boot fail in 181609 pass in 181613 test-amd64-amd64-xl-shadow 8 xen-boot fail in 181609 pass in 181613 test-amd64-amd64-dom0pvh-xl-amd 22 guest-start/debian.repeat fail in 181609 pass in 181613 test-amd64-amd64-examine-bios 8 reboot fail in 181609 pass in 181613 test-amd64-amd64-xl-qemuu-ovmf-amd64 11 leak-check/basis(11) fail pass in 181609 test-amd64-amd64-libvirt 8 xen-boot fail pass in 181609 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 8 xen-boot fail pass in 181609 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm 8 xen-boot fail pass in 181609 test-amd64-coresched-amd64-xl 12 debian-install fail pass in 181609 test-amd64-amd64-libvirt-pair 12 xen-boot/src_host fail pass in 181609 test-amd64-amd64-examine-uefi 13 examine-iommu fail pass in 181609 Regressions which are regarded as allowable (not blocking): test-amd64-amd64-xl-rtds 11 leak-check/basis(11) fail REGR. vs. 180278 Tests which did not succeed, but are not blocking: test-armhf-armhf-examine 8 reboot fail like 180278 test-armhf-armhf-xl-arndale 8 xen-boot fail like 180278 test-armhf-armhf-xl 8 xen-boot fail like 180278 test-armhf-armhf-libvirt-raw 8 xen-boot fail like 180278 test-armhf-armhf-xl-credit2 8 xen-boot fail like 180278 test-armhf-armhf-xl-rtds 8 xen-boot fail like 180278 test-armhf-armhf-libvirt 8 xen-boot fail like 180278 test-armhf-armhf-libvirt-qcow2 8 xen-boot fail like 180278 test-armhf-armhf-xl-vhd 8 xen-boot fail like 180278 test-armhf-armhf-xl-multivcpu 8 xen-boot fail like 180278 test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass version targeted for testing: linux 1ef6663a587ba3e57dc5065a477db1c64481eedd baseline version: linux 6c538e1adbfc696ac4747fb10d63e704344f763d Last test of basis 180278 2023-04-16 19:41:46 Z 71 days Failing since 180281 2023-04-17 06:24:36 Z 71 days 136 attempts Testing same since 181609 2023-06-27 04:04:49 Z 0 days 2 attempts ------------------------------------------------------------ 2860 people touched revisions under test, not listing them all jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl fail test-amd64-coresched-amd64-xl fail test-arm64-arm64-xl pass test-armhf-armhf-xl fail test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm fail test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm fail test-amd64-amd64-xl-qemut-debianhvm-i386-xsm fail test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm fail test-arm64-arm64-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd fail test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 fail test-amd64-amd64-xl-qemuu-debianhvm-amd64 fail test-amd64-amd64-freebsd11-amd64 fail test-amd64-amd64-freebsd12-amd64 fail test-amd64-amd64-xl-qemuu-ovmf-amd64 fail test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale fail test-amd64-amd64-examine-bios pass test-amd64-amd64-xl-credit1 fail test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 fail test-amd64-amd64-xl-credit2 fail test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 fail test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict fail test-amd64-amd64-examine fail test-arm64-arm64-examine pass test-armhf-armhf-examine fail test-amd64-amd64-qemuu-nested-intel fail test-amd64-amd64-xl-pvhv2-intel fail test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt fail test-armhf-armhf-libvirt fail test-amd64-amd64-xl-multivcpu fail test-armhf-armhf-xl-multivcpu fail test-amd64-amd64-pair fail test-amd64-amd64-libvirt-pair fail test-amd64-amd64-xl-pvshim fail test-amd64-amd64-pygrub fail test-amd64-amd64-libvirt-qcow2 fail test-armhf-armhf-libvirt-qcow2 fail test-amd64-amd64-libvirt-raw fail test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw fail test-amd64-amd64-xl-rtds fail test-armhf-armhf-xl-rtds fail test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow fail test-amd64-amd64-xl-shadow fail test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi fail test-amd64-amd64-xl-vhd fail test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd fail ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 383259 lines long.) From xen-devel-bounces@lists.xenproject.org Tue Jun 27 19:10:46 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 19:10:46 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556251.868617 (Exim 4.92) (envelope-from ) id 1qEE58-0004vT-HU; Tue, 27 Jun 2023 19:10:30 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556251.868617; Tue, 27 Jun 2023 19:10:30 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEE58-0004vM-Eo; Tue, 27 Jun 2023 19:10:30 +0000 Received: by outflank-mailman (input) for mailman id 556251; Tue, 27 Jun 2023 19:10:29 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEE57-0004vC-2k for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 19:10:29 +0000 Received: from mail-pg1-x536.google.com (mail-pg1-x536.google.com [2607:f8b0:4864:20::536]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 455398d3-151e-11ee-8611-37d641c3527e; Tue, 27 Jun 2023 21:10:26 +0200 (CEST) Received: by mail-pg1-x536.google.com with SMTP id 41be03b00d2f7-543c692db30so3991517a12.3 for ; Tue, 27 Jun 2023 12:10:25 -0700 (PDT) Received: from ?IPV6:2600:1700:e321:62f0:329c:23ff:fee3:9d7c? ([2600:1700:e321:62f0:329c:23ff:fee3:9d7c]) by smtp.gmail.com with ESMTPSA id n91-20020a17090a5ae400b002471deb13fcsm6684270pji.6.2023.06.27.12.10.21 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Tue, 27 Jun 2023 12:10:23 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list X-Inumbo-ID: 455398d3-151e-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687893024; x=1690485024; h=content-transfer-encoding:in-reply-to:from:references:cc:to :content-language:subject:user-agent:mime-version:date:message-id :sender:from:to:cc:subject:date:message-id:reply-to; bh=yS/xmFpqe6+k8T+yWQv7frf8UxF7B6Cm+1CNfhqUPlA=; b=BMqSkVfZP75OxNlOqvaghKGJv9m0y4sm8KFw5SHceiXFQz/e0SiiKJT9I5B52iAH17 cMt4KC2GjU9iq0SnaoF95JUsMa0mk+JEcq2FkRIOzoow88IvYkDfH7aBL3K5PbCOKOue txhLzT7BLkzfYn4DxxqSwsZ2KmDA6ILNOIWpC3UOJTW+EHWbeQQdlcmGoaBUyJofM5AY lnVmBNLdubBt20V6jFfi37xAvQhhTT8MryCyACblmLywm5IjXVYJCWSIUi3pbGc+j98S r4FtzORgbma5+HwlZ2RT9hRW9y3a8jxCdKlGNGBWvRri5+DzenA7COAJXTL5/EtGEK0g cong== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687893024; x=1690485024; h=content-transfer-encoding:in-reply-to:from:references:cc:to :content-language:subject:user-agent:mime-version:date:message-id :sender:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=yS/xmFpqe6+k8T+yWQv7frf8UxF7B6Cm+1CNfhqUPlA=; b=VUiF7Xo01tHar2L8DQcpbFea3Qt26j9ayZBnPY1BFmNy1MSZHarysblozxv35Iu0PK CeDqwFGUdO7hSqrnH2dqYGDwGnrYyCJKAsKMK/l8B1lvQ/zqYXqGsEr6Yip8+RHpTW82 r2/umE056sX1jXEIy17RGTtR8enrF1vfmPjmjDMeKA/LWzUd4Kb5LLOTOTdnsw1sLril 2yOklcohGHWaJVBGDTrqhYilqbqA/yULD2gv5otsx/C2zC5S23l38af+Z3BiV9BAL/4q Q3Qkz8Z7fdZWR6ngCRSzIxNF94PFeoE8KjwFccbxiRgrfme0mz2ZdPcGsc06xZ0eQEfl Aq4A== X-Gm-Message-State: AC+VfDwlD6btysujZNUnEgRt67kDw+xc7f/TsxqjIRo8BGKgmp6kU0YZ CBC5rF5ppmffkarYNOUvEVg= X-Google-Smtp-Source: ACHHUZ4TyTsIrCRAZ6UdXT5Omt1I9QGIq3lGO+AmEbof8hKm4unG6pcuoo4CdZZ1APibznjic8nqlQ== X-Received: by 2002:a17:90a:3cc6:b0:262:df8e:fcb6 with SMTP id k6-20020a17090a3cc600b00262df8efcb6mr9240150pjd.43.1687893024298; Tue, 27 Jun 2023 12:10:24 -0700 (PDT) Sender: Guenter Roeck Message-ID: Date: Tue, 27 Jun 2023 12:10:20 -0700 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH v5 26/33] nios2: Convert __pte_free_tlb() to use ptdescs Content-Language: en-US To: Vishal Moola Cc: Andrew Morton , Matthew Wilcox , linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , Dinh Nguyen , Mike Rapoport References: <20230622205745.79707-1-vishal.moola@gmail.com> <20230622205745.79707-27-vishal.moola@gmail.com> <13bab37c-0f0a-431a-8b67-4379bf4dc541@roeck-us.net> From: Guenter Roeck In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit On 6/27/23 10:42, Vishal Moola wrote: > On Mon, Jun 26, 2023 at 10:47 PM Guenter Roeck wrote: >> >> On Thu, Jun 22, 2023 at 01:57:38PM -0700, Vishal Moola (Oracle) wrote: >>> Part of the conversions to replace pgtable constructor/destructors with >>> ptdesc equivalents. >>> >>> Signed-off-by: Vishal Moola (Oracle) >>> Acked-by: Mike Rapoport (IBM) >> >> This patch causes all nios2 builds to fail. > > It looks like you tried to apply this patch on its own. This patch depends > on patches 01-12 of this patchset to compile properly. I've cross-compiled > this architecture and it worked, but let me know if something fails > when its applied on top of those patches (or the rest of the patchset). No, I did not try to apply this patch on its own. I tried to build yesterday's pending-fixes branch of linux-next. Guenter From xen-devel-bounces@lists.xenproject.org Tue Jun 27 19:14:09 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 19:14:09 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556255.868626 (Exim 4.92) (envelope-from ) id 1qEE8d-0005Uh-SC; Tue, 27 Jun 2023 19:14:07 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556255.868626; Tue, 27 Jun 2023 19:14:07 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEE8d-0005Ua-PX; Tue, 27 Jun 2023 19:14:07 +0000 Received: by outflank-mailman (input) for mailman id 556255; Tue, 27 Jun 2023 19:14:06 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEE8c-0005UU-RN for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 19:14:06 +0000 Received: from mail-pf1-x42c.google.com (mail-pf1-x42c.google.com [2607:f8b0:4864:20::42c]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id c7a885b3-151e-11ee-8611-37d641c3527e; Tue, 27 Jun 2023 21:14:04 +0200 (CEST) Received: by mail-pf1-x42c.google.com with SMTP id d2e1a72fcca58-66869feb7d1so2817372b3a.3 for ; Tue, 27 Jun 2023 12:14:04 -0700 (PDT) Received: from ?IPV6:2600:1700:e321:62f0:329c:23ff:fee3:9d7c? ([2600:1700:e321:62f0:329c:23ff:fee3:9d7c]) by smtp.gmail.com with ESMTPSA id s1-20020aa78281000000b0065a1b05193asm5742654pfm.185.2023.06.27.12.14.00 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Tue, 27 Jun 2023 12:14:02 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list X-Inumbo-ID: c7a885b3-151e-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687893243; x=1690485243; h=content-transfer-encoding:in-reply-to:references:cc:to:from :content-language:subject:user-agent:mime-version:date:message-id :sender:from:to:cc:subject:date:message-id:reply-to; bh=kvHLvhv1Vboi73O1yp/Tlc9InhlPe7nOe1kq7T+MFRo=; b=bM9Je+tOekLovPkvT+/l7nbya5CmvdUQjXrADEm1UMcV4/Dft3yRiRDI0ZDflduo0a eCCHc/eGgHA3aTnPLKW75ZP3+msGkQAgAajr0fU475B6t9dnUbkeGDGaGhTQuEs9G8Em fP/NIDTeV8LmgxO8Ql0wOGFl7SgfrLikcvULFnS16kiPfzK7oAB1YpIUgqh/lMxpHyod tqWpPiE4/bUvsjhZfVbvFSWKmV4p5zoSojTJH1B4PXJkJ5GFHQt4ps0dwXEGoW/rFJ5j 7OEFRkR/4WYv521gDAmtenL688/6yjI/zD/BFplexhWDCjqz/HwvAM7QaYSh0oWP3Dui ALeA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687893243; x=1690485243; h=content-transfer-encoding:in-reply-to:references:cc:to:from :content-language:subject:user-agent:mime-version:date:message-id :sender:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=kvHLvhv1Vboi73O1yp/Tlc9InhlPe7nOe1kq7T+MFRo=; b=Ebi2coiLDpddHgaHm/2iYzCFQ3BcpcUfAVKgeUJ5pNr/3cxZVBF3GxLe+99FEmnXR/ EO5/qBcC9m02jheCpaAZ//J5miyIfnD+vRKv0PK+hMhFZGNWNRF7wg0kW9vMRij+pkqE 1E2gBC96ON9YeI1Z8964KN5J3gMngNv15Mter8nEK3oZGpGKnU0Bm7QijX9GzE+iCSiD WKnqCOOtUz8WdPDFDR66I9PteKgHIaKDkCTL+UTt/ustu0yCFWUjSlgQ3jCY/MK0bmzM yIhbgSCpGbCQ7Rvl8LbySlef1ZdLa00hwC8H4IQsV1FqMdEe2wwAmo/w91aBO+APJC2H BkKw== X-Gm-Message-State: AC+VfDx4HNl2ylzUirMV2SMrYFzuH4SqOg4MMcDWbwPYF/J9JMOnHneu 32hlnrTBR+uTCfYWgqp7QRQ= X-Google-Smtp-Source: ACHHUZ7LJIGe+68y+/f7zW8IDz+Iq/yBUPpzssEQrXLR8wKbF9q9Wu20nywq5XNVdfXVbWMgiaxYCw== X-Received: by 2002:a05:6a00:2490:b0:668:7209:1856 with SMTP id c16-20020a056a00249000b0066872091856mr26446249pfv.14.1687893243046; Tue, 27 Jun 2023 12:14:03 -0700 (PDT) Sender: Guenter Roeck Message-ID: Date: Tue, 27 Jun 2023 12:14:00 -0700 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH v5 26/33] nios2: Convert __pte_free_tlb() to use ptdescs Content-Language: en-US From: Guenter Roeck To: Vishal Moola Cc: Andrew Morton , Matthew Wilcox , linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , Dinh Nguyen , Mike Rapoport References: <20230622205745.79707-1-vishal.moola@gmail.com> <20230622205745.79707-27-vishal.moola@gmail.com> <13bab37c-0f0a-431a-8b67-4379bf4dc541@roeck-us.net> In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit On 6/27/23 12:10, Guenter Roeck wrote: > On 6/27/23 10:42, Vishal Moola wrote: >> On Mon, Jun 26, 2023 at 10:47 PM Guenter Roeck wrote: >>> >>> On Thu, Jun 22, 2023 at 01:57:38PM -0700, Vishal Moola (Oracle) wrote: >>>> Part of the conversions to replace pgtable constructor/destructors with >>>> ptdesc equivalents. >>>> >>>> Signed-off-by: Vishal Moola (Oracle) >>>> Acked-by: Mike Rapoport (IBM) >>> >>> This patch causes all nios2 builds to fail. >> >> It looks like you tried to apply this patch on its own. This patch depends >> on patches 01-12 of this patchset to compile properly. I've cross-compiled >> this architecture and it worked, but let me know if something fails >> when its applied on top of those patches (or the rest of the patchset). > > > No, I did not try to apply this patch on its own. I tried to build yesterday's > pending-fixes branch of linux-next. > A quick check shows that the build fails with next-20230627. See log below. Guenter --- $ git describe next-20230627 $ git describe --match 'v*' v6.4-12601-g53cdf865f90b Build reference: v6.4-12601-g53cdf865f90b Compiler version: nios2-linux-gcc (GCC) 11.4.0 Assembler version: GNU assembler (GNU Binutils) 2.40 Building nios2:allnoconfig ... failed -------------- Error log: :1519:2: warning: #warning syscall clone3 not implemented [-Wcpp] In file included from mm/memory.c:86: mm/memory.c: In function 'free_pte_range': arch/nios2/include/asm/pgalloc.h:33:17: error: implicit declaration of function 'pagetable_pte_dtor'; did you mean 'pgtable_pte_page_dtor'? [-Werror=implicit-function-declaration] 33 | pagetable_pte_dtor(page_ptdesc(pte)); \ | ^~~~~~~~~~~~~~~~~~ include/asm-generic/tlb.h:666:17: note: in expansion of macro '__pte_free_tlb' 666 | __pte_free_tlb(tlb, ptep, address); \ | ^~~~~~~~~~~~~~ mm/memory.c:194:9: note: in expansion of macro 'pte_free_tlb' 194 | pte_free_tlb(tlb, token, addr); | ^~~~~~~~~~~~ arch/nios2/include/asm/pgalloc.h:33:36: error: implicit declaration of function 'page_ptdesc' [-Werror=implicit-function-declaration] 33 | pagetable_pte_dtor(page_ptdesc(pte)); \ | ^~~~~~~~~~~ include/asm-generic/tlb.h:666:17: note: in expansion of macro '__pte_free_tlb' 666 | __pte_free_tlb(tlb, ptep, address); \ | ^~~~~~~~~~~~~~ mm/memory.c:194:9: note: in expansion of macro 'pte_free_tlb' 194 | pte_free_tlb(tlb, token, addr); | ^~~~~~~~~~~~ arch/nios2/include/asm/pgalloc.h:34:17: error: implicit declaration of function 'tlb_remove_page_ptdesc'; did you mean 'tlb_remove_page_size'? [-Werror=implicit-function-declaration] 34 | tlb_remove_page_ptdesc((tlb), (page_ptdesc(pte))); \ | ^~~~~~~~~~~~~~~~~~~~~~ include/asm-generic/tlb.h:666:17: note: in expansion of macro '__pte_free_tlb' 666 | __pte_free_tlb(tlb, ptep, address); \ | ^~~~~~~~~~~~~~ mm/memory.c:194:9: note: in expansion of macro 'pte_free_tlb' 194 | pte_free_tlb(tlb, token, addr); | ^~~~~~~~~~~~ cc1: some warnings being treated as errors make[3]: *** [scripts/Makefile.build:243: mm/memory.o] Error 1 make[3]: *** Waiting for unfinished jobs.... make[2]: *** [scripts/Makefile.build:477: mm] Error 2 make[2]: *** Waiting for unfinished jobs.... make[1]: *** [Makefile:2022: .] Error 2 make: *** [Makefile:226: __sub-make] Error 2 From xen-devel-bounces@lists.xenproject.org Tue Jun 27 19:56:58 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 19:56:58 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556259.868637 (Exim 4.92) (envelope-from ) id 1qEEnr-0001YF-2K; Tue, 27 Jun 2023 19:56:43 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556259.868637; Tue, 27 Jun 2023 19:56:43 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEEnq-0001Y8-VU; Tue, 27 Jun 2023 19:56:42 +0000 Received: by outflank-mailman (input) for mailman id 556259; Tue, 27 Jun 2023 19:56:41 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEEnp-0001Y2-09 for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 19:56:41 +0000 Received: from mail-yw1-x112a.google.com (mail-yw1-x112a.google.com [2607:f8b0:4864:20::112a]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id b96a9524-1524-11ee-8611-37d641c3527e; Tue, 27 Jun 2023 21:56:37 +0200 (CEST) Received: by mail-yw1-x112a.google.com with SMTP id 00721157ae682-5704ddda6dfso54929907b3.1 for ; Tue, 27 Jun 2023 12:56:37 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: b96a9524-1524-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687895796; x=1690487796; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=Zdquro6/1dmVZnYjtrQgFcMxkU4TUJVZmkWoLqAkDfs=; b=f28I8lHAi89ozlaNg/BctKdKMs3ZV6m8KXjBDM6pClsFtWadf95y0x4g3i//E8BwZz W+z8+saIIFbmoUgBUaIpSnUEoRcLDnuqLYQnOFRS+j34fc48uptWzZzEtuGsHAJp24eW schrHDJX1LmM4MqcKy9Kl1+LnP3eq11QJcl+8rxobGaBQBGKgLHNc4OHDPWjyNPyHr8O 3NCVuR4QFNH+Qpn6H6NXaags2ruLb1/5mkhPFAz5CmyBZqkztlzk4kjRiIcxN74282q0 ok16c0PiSUSoXbXu9Py6nAmtPZ8zTkEwR31ZaDkNSc5taFwAdZNAWg6IT3kt5o5vZVZ6 A8Fw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687895796; x=1690487796; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=Zdquro6/1dmVZnYjtrQgFcMxkU4TUJVZmkWoLqAkDfs=; b=iZN9hwRZg2+xc1hmEsYSODYZLRjxdVEkpnEwBm91k/+tubcoK+FRYtnytVcfK2FN2v 2IpAk9zbRwF0MB1r9Sep+RK2x+1uUSA3XhNF7qWS+jZB7adWK8loRI3bF9ZHyho5WDhO pM8B3g5lLSyBqTpmGf4qho2HGQJaoEwcr+vrW9cVGh4wzvZNShARhh4sV2ATvWYJGApX wQX/4dWdqgNNmDcLKSke+itoAa34z/ywLoRe0XelndhQn1ABQFLUueTBhxirDIklNxEC RFpNND1qWds5HI47KtYKhl2LTAwT7qCk4581qOp9mzCalBlZ7/O+zycZGMQkmofiZs3y MMnA== X-Gm-Message-State: AC+VfDy33UpUXZQ4an027QAoLgH42X2I2fkx/mrVzXv2rM/XNj8+DiV4 ZnUAf6WNgz8Cy3iVX2BBJ2ZhjDLpmRv7i1H27tc= X-Google-Smtp-Source: ACHHUZ5reIcGnTN97W0IND8v2qM1C2Qu4uLolES6NdKMr/CmT1WqgUFXujo/fo7+ykti4Dwr2zsHLXj/ugW36Uy1oLg= X-Received: by 2002:a0d:de45:0:b0:576:e678:21d6 with SMTP id h66-20020a0dde45000000b00576e67821d6mr4351768ywe.12.1687895796450; Tue, 27 Jun 2023 12:56:36 -0700 (PDT) MIME-Version: 1.0 References: <20230622205745.79707-1-vishal.moola@gmail.com> <20230622205745.79707-27-vishal.moola@gmail.com> <13bab37c-0f0a-431a-8b67-4379bf4dc541@roeck-us.net> In-Reply-To: From: Vishal Moola Date: Tue, 27 Jun 2023 12:56:25 -0700 Message-ID: Subject: Re: [PATCH v5 26/33] nios2: Convert __pte_free_tlb() to use ptdescs To: Guenter Roeck Cc: Andrew Morton , Matthew Wilcox , linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , Dinh Nguyen , Mike Rapoport , Stephen Rothwell Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Tue, Jun 27, 2023 at 12:14=E2=80=AFPM Guenter Roeck = wrote: > > On 6/27/23 12:10, Guenter Roeck wrote: > > On 6/27/23 10:42, Vishal Moola wrote: > >> On Mon, Jun 26, 2023 at 10:47=E2=80=AFPM Guenter Roeck wrote: > >>> > >>> On Thu, Jun 22, 2023 at 01:57:38PM -0700, Vishal Moola (Oracle) wrote= : > >>>> Part of the conversions to replace pgtable constructor/destructors w= ith > >>>> ptdesc equivalents. > >>>> > >>>> Signed-off-by: Vishal Moola (Oracle) > >>>> Acked-by: Mike Rapoport (IBM) > >>> > >>> This patch causes all nios2 builds to fail. > >> > >> It looks like you tried to apply this patch on its own. This patch dep= ends > >> on patches 01-12 of this patchset to compile properly. I've cross-comp= iled > >> this architecture and it worked, but let me know if something fails > >> when its applied on top of those patches (or the rest of the patchset)= . > > > > > > No, I did not try to apply this patch on its own. I tried to build yest= erday's > > pending-fixes branch of linux-next. > > > > A quick check shows that the build fails with next-20230627. See log belo= w. Ah it looks like this one slipped into -next on its own somehow? Stephen, p= lease drop this patch from -next; it shouldn't be in without the rest of the patchset which I intend to have Andrew take through the mm tree. > Guenter > > --- > > $ git describe > next-20230627 > $ git describe --match 'v*' > v6.4-12601-g53cdf865f90b > > Build reference: v6.4-12601-g53cdf865f90b > Compiler version: nios2-linux-gcc (GCC) 11.4.0 > Assembler version: GNU assembler (GNU Binutils) 2.40 > > Building nios2:allnoconfig ... failed > -------------- > Error log: > :1519:2: warning: #warning syscall clone3 not implemented [-Wcpp] > In file included from mm/memory.c:86: > mm/memory.c: In function 'free_pte_range': > arch/nios2/include/asm/pgalloc.h:33:17: error: implicit declaration of fu= nction 'pagetable_pte_dtor'; did you mean 'pgtable_pte_page_dtor'? [-Werror= =3Dimplicit-function-declaration] > 33 | pagetable_pte_dtor(page_ptdesc(pte)); = \ > | ^~~~~~~~~~~~~~~~~~ > include/asm-generic/tlb.h:666:17: note: in expansion of macro '__pte_free= _tlb' > 666 | __pte_free_tlb(tlb, ptep, address); = \ > | ^~~~~~~~~~~~~~ > mm/memory.c:194:9: note: in expansion of macro 'pte_free_tlb' > 194 | pte_free_tlb(tlb, token, addr); > | ^~~~~~~~~~~~ > arch/nios2/include/asm/pgalloc.h:33:36: error: implicit declaration of fu= nction 'page_ptdesc' [-Werror=3Dimplicit-function-declaration] > 33 | pagetable_pte_dtor(page_ptdesc(pte)); = \ > | ^~~~~~~~~~~ > include/asm-generic/tlb.h:666:17: note: in expansion of macro '__pte_free= _tlb' > 666 | __pte_free_tlb(tlb, ptep, address); = \ > | ^~~~~~~~~~~~~~ > mm/memory.c:194:9: note: in expansion of macro 'pte_free_tlb' > 194 | pte_free_tlb(tlb, token, addr); > | ^~~~~~~~~~~~ > arch/nios2/include/asm/pgalloc.h:34:17: error: implicit declaration of fu= nction 'tlb_remove_page_ptdesc'; did you mean 'tlb_remove_page_size'? [-Wer= ror=3Dimplicit-function-declaration] > 34 | tlb_remove_page_ptdesc((tlb), (page_ptdesc(pte))= ); \ > | ^~~~~~~~~~~~~~~~~~~~~~ > include/asm-generic/tlb.h:666:17: note: in expansion of macro '__pte_free= _tlb' > 666 | __pte_free_tlb(tlb, ptep, address); = \ > | ^~~~~~~~~~~~~~ > mm/memory.c:194:9: note: in expansion of macro 'pte_free_tlb' > 194 | pte_free_tlb(tlb, token, addr); > | ^~~~~~~~~~~~ > cc1: some warnings being treated as errors > make[3]: *** [scripts/Makefile.build:243: mm/memory.o] Error 1 > make[3]: *** Waiting for unfinished jobs.... > make[2]: *** [scripts/Makefile.build:477: mm] Error 2 > make[2]: *** Waiting for unfinished jobs.... > make[1]: *** [Makefile:2022: .] Error 2 > make: *** [Makefile:226: __sub-make] Error 2 From xen-devel-bounces@lists.xenproject.org Tue Jun 27 20:05:45 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 20:05:45 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556263.868646 (Exim 4.92) (envelope-from ) id 1qEEwS-000383-Rq; Tue, 27 Jun 2023 20:05:36 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556263.868646; Tue, 27 Jun 2023 20:05:36 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEEwS-00037w-PN; Tue, 27 Jun 2023 20:05:36 +0000 Received: by outflank-mailman (input) for mailman id 556263; Tue, 27 Jun 2023 20:05:35 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEEwR-00037q-PQ for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 20:05:35 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id f8ea660c-1525-11ee-b237-6b7b168915f2; Tue, 27 Jun 2023 22:05:34 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 6B06F61187; Tue, 27 Jun 2023 20:05:32 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id D7059C433C8; Tue, 27 Jun 2023 20:05:28 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: f8ea660c-1525-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1687896331; bh=nxdHwM18qWYe/olgwzu19FISC5RuQmNbEVvkLxl2VBY=; h=Date:Subject:To:Cc:References:From:In-Reply-To:From; b=ZjE+m6TsP7/JcneLIcHUQel0hil1iUviVqfTyM+RmrZXtI/kbVQFRNoD4ArZJbLU5 4zXDW9VUtIBpTBpsYvBq5PnpEDQDOlXJKhHy+sm7jtZkBQvoQSE1wSsOzbpudlC+Pd sL4Mh0jQneg4s31yTcnwH46d5iOXHuw/38OyZqmz/LfqWaBAbJU7kwNjDJPcPN9MhY 5TVIOZI5hoLTyoGuAsXGQTmXmS3NexTmFkWRmRChTwd7DACRyJXRXzGHrpU99Dq1ux qzo4guCFMo24k0Ik6ctKYSpdIkJqigF4j5lDwN6AneeMBgw/flE/ruM58JFYwrciDp T1OMj/Q26nvmA== Message-ID: Date: Tue, 27 Jun 2023 15:05:26 -0500 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH v5 26/33] nios2: Convert __pte_free_tlb() to use ptdescs Content-Language: en-US To: Vishal Moola , Guenter Roeck Cc: Andrew Morton , Matthew Wilcox , linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , Mike Rapoport , Stephen Rothwell References: <20230622205745.79707-1-vishal.moola@gmail.com> <20230622205745.79707-27-vishal.moola@gmail.com> <13bab37c-0f0a-431a-8b67-4379bf4dc541@roeck-us.net> From: Dinh Nguyen In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit On 6/27/23 14:56, Vishal Moola wrote: > On Tue, Jun 27, 2023 at 12:14 PM Guenter Roeck wrote: >> >> On 6/27/23 12:10, Guenter Roeck wrote: >>> On 6/27/23 10:42, Vishal Moola wrote: >>>> On Mon, Jun 26, 2023 at 10:47 PM Guenter Roeck wrote: >>>>> >>>>> On Thu, Jun 22, 2023 at 01:57:38PM -0700, Vishal Moola (Oracle) wrote: >>>>>> Part of the conversions to replace pgtable constructor/destructors with >>>>>> ptdesc equivalents. >>>>>> >>>>>> Signed-off-by: Vishal Moola (Oracle) >>>>>> Acked-by: Mike Rapoport (IBM) >>>>> >>>>> This patch causes all nios2 builds to fail. >>>> >>>> It looks like you tried to apply this patch on its own. This patch depends >>>> on patches 01-12 of this patchset to compile properly. I've cross-compiled >>>> this architecture and it worked, but let me know if something fails >>>> when its applied on top of those patches (or the rest of the patchset). >>> >>> >>> No, I did not try to apply this patch on its own. I tried to build yesterday's >>> pending-fixes branch of linux-next. >>> >> >> A quick check shows that the build fails with next-20230627. See log below. > > Ah it looks like this one slipped into -next on its own somehow? Stephen, please > drop this patch from -next; it shouldn't be in without the rest of the > patchset which > I intend to have Andrew take through the mm tree. > I apologize, but I queue this patch up for Linus and it's been pulled for this merge window. I didn't realize you were going to take this patchset through another tree. Sorry about that. Dinh From xen-devel-bounces@lists.xenproject.org Tue Jun 27 20:13:37 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 20:13:37 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556267.868657 (Exim 4.92) (envelope-from ) id 1qEF3x-0004aE-Lc; Tue, 27 Jun 2023 20:13:21 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556267.868657; Tue, 27 Jun 2023 20:13:21 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEF3x-0004a7-Ht; Tue, 27 Jun 2023 20:13:21 +0000 Received: by outflank-mailman (input) for mailman id 556267; Tue, 27 Jun 2023 20:13:20 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEF3w-0004Zx-M9; Tue, 27 Jun 2023 20:13:20 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEF3w-0004ES-9d; Tue, 27 Jun 2023 20:13:20 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEF3v-0000gB-TP; Tue, 27 Jun 2023 20:13:19 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qEF3v-0003rs-T0; Tue, 27 Jun 2023 20:13:19 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=15YVfNyArbRRL4HBIc7WhBXTJVK3FlPfw6B6XGXz3yg=; b=cnxGc+IRzvZYAAEp1PUGCw4lvJ ZfTHDVXLG9uU0o+QrOdgg2dTeopLLcrD4L6WLlQDmAlFlGh5cJMCgQ55v1P0Jge3cfRhIbDZxvYrM byBya3cmAnUkbYjakRv1NBsq8LxutU23jQeSEAH/9T5aOhLPyzgWTn4+UjxQArVASY0E=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [ovmf test] 181616: all pass - PUSHED X-Osstest-Versions-This: ovmf=1a39bdf2c53858ebb39e6de1362203c65c163c63 X-Osstest-Versions-That: ovmf=ea7a3015a2404e1358218463dd25df5ae7615352 From: osstest service owner Date: Tue, 27 Jun 2023 20:13:19 +0000 flight 181616 ovmf real [real] http://logs.test-lab.xenproject.org/osstest/logs/181616/ Perfect :-) All tests in this flight passed as required version targeted for testing: ovmf 1a39bdf2c53858ebb39e6de1362203c65c163c63 baseline version: ovmf ea7a3015a2404e1358218463dd25df5ae7615352 Last test of basis 181615 2023-06-27 16:42:22 Z 0 days Testing same since 181616 2023-06-27 18:40:38 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Sunil V L jobs: build-amd64-xsm pass build-i386-xsm pass build-amd64 pass build-i386 pass build-amd64-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-i386-pvops pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Pushing revision : To xenbits.xen.org:/home/xen/git/osstest/ovmf.git ea7a3015a2..1a39bdf2c5 1a39bdf2c53858ebb39e6de1362203c65c163c63 -> xen-tested-master From xen-devel-bounces@lists.xenproject.org Tue Jun 27 20:14:13 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 20:14:13 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556274.868666 (Exim 4.92) (envelope-from ) id 1qEF4d-00059M-0y; Tue, 27 Jun 2023 20:14:03 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556274.868666; Tue, 27 Jun 2023 20:14:02 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEF4c-00059F-UY; Tue, 27 Jun 2023 20:14:02 +0000 Received: by outflank-mailman (input) for mailman id 556274; Tue, 27 Jun 2023 20:14:01 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEF4b-0004wv-R8 for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 20:14:01 +0000 Received: from mail-oi1-x22e.google.com (mail-oi1-x22e.google.com [2607:f8b0:4864:20::22e]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 27761493-1527-11ee-b237-6b7b168915f2; Tue, 27 Jun 2023 22:14:01 +0200 (CEST) Received: by mail-oi1-x22e.google.com with SMTP id 5614622812f47-3a1a47b33d8so4401374b6e.2 for ; Tue, 27 Jun 2023 13:14:01 -0700 (PDT) Received: from ripple.attlocal.net (172-10-233-147.lightspeed.sntcca.sbcglobal.net. [172.10.233.147]) by smtp.gmail.com with ESMTPSA id q131-20020a817589000000b00565eb8af1fesm1991442ywc.132.2023.06.27.13.13.56 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 27 Jun 2023 13:13:59 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 27761493-1527-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20221208; t=1687896840; x=1690488840; h=mime-version:references:message-id:in-reply-to:subject:cc:to:from :date:from:to:cc:subject:date:message-id:reply-to; bh=Omz0x3K5VJ2j7KfDH2649X9QbCItdU3t+DCvtH+dE30=; b=qLT/FXnF9fYy8bz41ZGqzPs/xLiMCCfewgfWuzZzcLVjcItB7JcMRZfi6IZL1dCSx3 OsWOmERj0hyOKFLw3jnnNfW5CTsqZqse181Md9/KF69O7aJpxHwXe5KyY7KekYXV4G1r zVWUAFUddyly86sbQfglXGlLJ+Dw6fbYNcanLL/4qX6MAv9NG432kDe3kyebDDkyTfob goI5J8lS8Nlzpf0h6eGjsC3OSSCP5RIprmv8BuvIbtDrufzgn/Q2le4t+ExH2qGopi70 i11eeGh9ltkwfbMdr3qGqDnVah9352dUuKEVj6Z46bgWdO+OozUTmUPxCUjV8K1vxlvi swng== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687896840; x=1690488840; h=mime-version:references:message-id:in-reply-to:subject:cc:to:from :date:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=Omz0x3K5VJ2j7KfDH2649X9QbCItdU3t+DCvtH+dE30=; b=kJLG8Kqy6u763XTO8meeTQN5iYbJuqK+ef1vikGSfY8o3c2ycnMiWOZFkXadmHHM1G TDAxsItjeKRbBSEFv2QQ0pJ1DSbh8/2+WjZIht+uKpjWITYfOYvYffW2UQpZE8F1Eb3h qPpI8foePDZlL/Q7k+qlu0oqDbXEeaMYLESodDqBVevjUVC3tuiEWWmiekTzCfm2xtri OR67wsrpbLQJtA0D6la+x7SIQ++nnnmINP/n+b0IvGMRsxEGb4A7u/WdLbpTLazKC4g1 YAK6dXPHlnPmjOHRvPbwRR11G8Js/kxyzWhRdEWECGwXEpWX+7xA+tmm5pRSSN/TbNfL nOOA== X-Gm-Message-State: AC+VfDzMNiEvmMCo+S7Z4RrfNQrngs/7IMbN6hsDearIsF951HIru5mJ kncRs40zcRisEVC+gYfhEfK88w== X-Google-Smtp-Source: ACHHUZ7e3joAt7KSpSbDLhKkkEe6hRd92o1ATH/0oO6vi+mlTpkmMRcA4IUypqa5SFzU0uL+mRFuMQ== X-Received: by 2002:a05:6359:2af:b0:133:9da:8d9f with SMTP id ek47-20020a05635902af00b0013309da8d9fmr5361549rwb.14.1687896839740; Tue, 27 Jun 2023 13:13:59 -0700 (PDT) Date: Tue, 27 Jun 2023 13:13:49 -0700 (PDT) From: Hugh Dickins X-X-Sender: hugh@ripple.attlocal.net To: David Hildenbrand cc: Hugh Dickins , "Vishal Moola (Oracle)" , Andrew Morton , Matthew Wilcox , linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Catalin Marinas , Huacai Chen , Geert Uytterhoeven , Thomas Bogendoerfer , Dinh Nguyen , Jonas Bonn , Claudio Imbrenda , Paul Walmsley , "David S. Miller" , Richard Weinberger , Yoshinori Sato , Dave Hansen , Arnd Bergmann , Christophe Leroy Subject: Re: [PATCH v6 00/33] Split ptdesc from struct page In-Reply-To: Message-ID: <90e643ca-de72-2f4c-f4fe-35e06e1a9277@google.com> References: <20230627031431.29653-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII On Tue, 27 Jun 2023, David Hildenbrand wrote: > On 27.06.23 06:44, Hugh Dickins wrote: > > On Mon, 26 Jun 2023, Vishal Moola (Oracle) wrote: > > > >> The MM subsystem is trying to shrink struct page. This patchset > >> introduces a memory descriptor for page table tracking - struct ptdesc. > > ... > >> 39 files changed, 686 insertions(+), 455 deletions(-) > > > > I don't see the point of this patchset: to me it is just obfuscation of > > the present-day tight relationship between page table and struct page. > > > > Matthew already explained: > > > >> The intent is to get ptdescs to be dynamically allocated at some point > >> in the ~2-3 years out future when we have finished the folio project ... > > > > So in a kindly mood, I'd say that this patchset is ahead of its time. > > But I can certainly adapt to it, if everyone else sees some point to it. > > I share your thoughts, that code churn which will help eventually in the far, > far future (not wanting to sound too pessimistic, but it's not going to be > there tomorrow ;) ). > > However, if it's just the same as the other conversions we already did (e.g., > struct slab), then I guess there is no reason to stop now -- the obfuscation > already happened. > > ... or is there a difference regarding this conversion and the previous ones? I was aware of the struct slab thing, didn't see much point there myself either; but it was welcomed by Vlastimil, and barely affected outside of slab allocators, so I had no reason to object. You think that if a little unnecessary churn (a *lot* of churn if you include folios, which did save some repeated calls to compound_head()) has already occurred, that's a good precedent for allowing more and more? My opinion happens to differ on that. Hugh From xen-devel-bounces@lists.xenproject.org Tue Jun 27 20:26:07 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 20:26:07 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556280.868676 (Exim 4.92) (envelope-from ) id 1qEFGC-0006lr-0C; Tue, 27 Jun 2023 20:26:00 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556280.868676; Tue, 27 Jun 2023 20:25:59 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEFGB-0006lk-Ty; Tue, 27 Jun 2023 20:25:59 +0000 Received: by outflank-mailman (input) for mailman id 556280; Tue, 27 Jun 2023 20:25:58 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEFGA-0006lb-FG for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 20:25:58 +0000 Received: from mail-oo1-xc34.google.com (mail-oo1-xc34.google.com [2607:f8b0:4864:20::c34]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id d234d338-1528-11ee-b237-6b7b168915f2; Tue, 27 Jun 2023 22:25:57 +0200 (CEST) Received: by mail-oo1-xc34.google.com with SMTP id 006d021491bc7-563439ea4a2so1979730eaf.0 for ; Tue, 27 Jun 2023 13:25:57 -0700 (PDT) Received: from ripple.attlocal.net (172-10-233-147.lightspeed.sntcca.sbcglobal.net. [172.10.233.147]) by smtp.gmail.com with ESMTPSA id p79-20020a0de652000000b00573a2a0808esm2002459ywe.77.2023.06.27.13.25.52 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 27 Jun 2023 13:25:55 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: d234d338-1528-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20221208; t=1687897556; x=1690489556; h=mime-version:references:message-id:in-reply-to:subject:cc:to:from :date:from:to:cc:subject:date:message-id:reply-to; bh=LZAV5n644nbF2fspex915RKKOQRg7bETsj2bpveqEMY=; b=xNz2k+2fBy79SBSN7O3Nv7cLANq5HCaENIBFu+yQEGe96a1YOHtJEoPaKnyife8HRe 5dU95/2GVD5K+lpOCTP593eJsZJwf/2wZp9yo1OQfO/oNZwywWrdmA09H1o2gjeFBMGa 2z17oC13XR4C8ajUueC5PeNsuXdi61YrDmFXBoVZVdvnVAtqQrU5JobTasqjeN7xrIeJ MpmBPZJhwD6ptkxugjRgmTxswvpeogN6O0bHDNZg4lSF5UmKAFt+JTRw6jFkbjRuUe/7 Do+RKbNuWG1nZ+QFgPFa8R4odd5nhFz3t0Eq/rbGXPI4aHvGzMWePtxiLYZ9tzwtN2+N 73Ng== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687897556; x=1690489556; h=mime-version:references:message-id:in-reply-to:subject:cc:to:from :date:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=LZAV5n644nbF2fspex915RKKOQRg7bETsj2bpveqEMY=; b=RJFqFuh20luLdAkp6wqhxlSTqMCq1qHs6iakSkFhX/WAFZOXnGodqxtktCYDkD+Dne ncmvka5jbLbrlwaHlnK8271AkjA5d6Vq/zSDJOB8N5110J27i1zQ+IrLRqa5KVa8h2UW ejlN57RfFgmq6vTcxF/xVw+knKULl7pvooSvQoZA1kROJRbSXfdVuociCul00nEKoUbd pvMOrpKAhrguXrvjPPQR80NoXVMzN2pKwunG599ayr0Tq+/1iZlYHJuQHbKv/52EGX+s +fWOyd7sX5j6l8MFWoUCL+/y376UWqicxf0q9wUNv3tt1dYqIlqwWNWWEUr6C/AF9+0i eqDw== X-Gm-Message-State: AC+VfDyb7GuctRnfXU5bfvTnhWFNSbga3GCZ0RiIAnfaHjE1QisBu5lt +2nzeCEuRz/ZKDtHqZapPigFNg== X-Google-Smtp-Source: ACHHUZ4XO8G5i/7kBsDqN0SkVyZDmn1Y3+y5XriSrT6/YkoTOhARrZtNyfUTkKT2V2obJFMfnoberA== X-Received: by 2002:a05:6808:1a8d:b0:39e:ff3d:af9d with SMTP id bm13-20020a0568081a8d00b0039eff3daf9dmr24552508oib.46.1687897555783; Tue, 27 Jun 2023 13:25:55 -0700 (PDT) Date: Tue, 27 Jun 2023 13:25:52 -0700 (PDT) From: Hugh Dickins X-X-Sender: hugh@ripple.attlocal.net To: Matthew Wilcox cc: Hugh Dickins , "Vishal Moola (Oracle)" , Andrew Morton , linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Catalin Marinas , Huacai Chen , Geert Uytterhoeven , Thomas Bogendoerfer , Dinh Nguyen , Jonas Bonn , David Hildenbrand , Claudio Imbrenda , Paul Walmsley , "David S. Miller" , Richard Weinberger , Yoshinori Sato , Dave Hansen , Arnd Bergmann , Christophe Leroy Subject: Re: [PATCH v6 00/33] Split ptdesc from struct page In-Reply-To: Message-ID: <8f1f3dd-50a-3726-87f2-b66d35804ba7@google.com> References: <20230627031431.29653-1-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII On Tue, 27 Jun 2023, Matthew Wilcox wrote: > On Mon, Jun 26, 2023 at 09:44:08PM -0700, Hugh Dickins wrote: > > On Mon, 26 Jun 2023, Vishal Moola (Oracle) wrote: > > > > > The MM subsystem is trying to shrink struct page. This patchset > > > introduces a memory descriptor for page table tracking - struct ptdesc. > > ... > > > 39 files changed, 686 insertions(+), 455 deletions(-) > > > > I don't see the point of this patchset: to me it is just obfuscation of > > the present-day tight relationship between page table and struct page. > > > > Matthew already explained: > > > > > The intent is to get ptdescs to be dynamically allocated at some point > > > in the ~2-3 years out future when we have finished the folio project ... > > > > So in a kindly mood, I'd say that this patchset is ahead of its time. > > But I can certainly adapt to it, if everyone else sees some point to it. > > If you think this patchset is ahead of its time, we can certainly put > it on hold. We're certainly prepared to redo it to be merged after your > current patch series. Thank you, but I can adapt. That was not my point: I'm claiming this patchset is ~2-3 years ahead of its time. > > I think you can see the advantage of the destination, so I don't think > you're against that. Maybe - I have some scepticism, but I'll be happy for that to be dissolved. > Are you opposed to the sequencing of the work to > get us there? I'd be happy to discuss another way to do it. Yes, I'm opposed to churn for no benefit. > > For example, we could dynamically allocate ptdescs right now. We'd get > the benefit of having an arbitrary amount of space in the ptdesc, > although not the benefit of a smaller memmap until everything else is > also dynamically allocated. That sounded much better, at first: churn serving good purpose. But now I suspect you're offering to dynamically allocate a ptdesc, in addition to the struct page of the page table(s) itself, which will be wasted: more memory consumption to no advantage. If that's so, no thanks. Hugh From xen-devel-bounces@lists.xenproject.org Tue Jun 27 21:01:53 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 21:01:53 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556285.868687 (Exim 4.92) (envelope-from ) id 1qEFog-0002iY-N1; Tue, 27 Jun 2023 21:01:38 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556285.868687; Tue, 27 Jun 2023 21:01:38 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEFog-0002iR-JM; Tue, 27 Jun 2023 21:01:38 +0000 Received: by outflank-mailman (input) for mailman id 556285; Tue, 27 Jun 2023 21:01:36 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEFoe-0002iL-Nk for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 21:01:36 +0000 Received: from mail-pf1-x42b.google.com (mail-pf1-x42b.google.com [2607:f8b0:4864:20::42b]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id cbdfbd4d-152d-11ee-b237-6b7b168915f2; Tue, 27 Jun 2023 23:01:34 +0200 (CEST) Received: by mail-pf1-x42b.google.com with SMTP id d2e1a72fcca58-666ecb21f86so4881823b3a.3 for ; Tue, 27 Jun 2023 14:01:34 -0700 (PDT) Received: from ?IPV6:2600:1700:e321:62f0:329c:23ff:fee3:9d7c? ([2600:1700:e321:62f0:329c:23ff:fee3:9d7c]) by smtp.gmail.com with ESMTPSA id jl3-20020a170903134300b001ac6b926621sm6363521plb.292.2023.06.27.14.01.30 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Tue, 27 Jun 2023 14:01:31 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list X-Inumbo-ID: cbdfbd4d-152d-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687899692; x=1690491692; h=content-transfer-encoding:in-reply-to:from:references:cc:to :content-language:subject:user-agent:mime-version:date:message-id :sender:from:to:cc:subject:date:message-id:reply-to; bh=P+M7tEnjJDtu150UIK78eMZjmbGUtM7e5Fjt8nWZ0yk=; b=EEAFfmkXxvxLQKSckNGd2ZSV3KFogeID+Fu07F5vObGax9BbbGTHMjNPkWpqJAJVcH pQvHfFi3MuvS2en7hgib7UJpPWUapwBCg8rlberKLmSq3DFWM7/xIZN7INLmmqEHLsUh qitezyDQfhSscafezpHggVgt0WLI8tgIl0uMXCJdPAHvlcj4VIjJKb6j7/ZGCnIDizgv wo2zP75PWYpQesW5XMNkIMNlUWOk9aqZVrMomyrANyuVHFRGKdh0f6XzxRPe0kewrYvm 0KzGKCqgMKcTqBBhxX7lyhj56QxI4SK/fKCSdPeLy85gsmtVFv88cBuoZEpsI4YCe97K o/WQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687899692; x=1690491692; h=content-transfer-encoding:in-reply-to:from:references:cc:to :content-language:subject:user-agent:mime-version:date:message-id :sender:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=P+M7tEnjJDtu150UIK78eMZjmbGUtM7e5Fjt8nWZ0yk=; b=Sl6EFUrPQaEVUQyr1L6qbLP80pX80HPY6clGOBUz1dVkJhdfuh02jtug7kLO9O42Xw QyTaNd2sojDTLfHnIeQkKVhYyt6xctp348AE9qPnVILrQ1a5K9AsUBYLx6qExGkd6X7Y u54onVY/0AvMfTNy67wsJIybtCGMgtdzG/ALZsiYKtrBG+9WBl0rdUatFZusLC98oZvo BUr71n4WAB9FQLYeCZn+P9AVFmUU4ZAoSXQ+VN+GQQjVz1e22PNHAmEEd0JZDMzU8MUX NSNn66ZMZVzxKPIUQuszz3CmVR2c51T5k+K9smkVks6KxrDp3NanYzffOcTNoWlbk+nh jKbg== X-Gm-Message-State: AC+VfDwDnMoDo2qxQsjICxYkZ1npbPUTugGxslW3ewViB40726B4Fb7s Hhv5K52w3AwQbjHQ6c/WbaU= X-Google-Smtp-Source: ACHHUZ5Ms+IS+/rtXxolIJxIsutHi1fnnUiL8cEAZTZ1vZL/Fg4JF6S5Mmuw32zf0DumOU0QNMHuig== X-Received: by 2002:a17:902:f542:b0:1b5:91:4693 with SMTP id h2-20020a170902f54200b001b500914693mr14752161plf.1.1687899692466; Tue, 27 Jun 2023 14:01:32 -0700 (PDT) Sender: Guenter Roeck Message-ID: <2b7e8b1d-1697-6a25-434d-352f95e6fff2@roeck-us.net> Date: Tue, 27 Jun 2023 14:01:29 -0700 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH v5 26/33] nios2: Convert __pte_free_tlb() to use ptdescs Content-Language: en-US To: Dinh Nguyen , Vishal Moola Cc: Andrew Morton , Matthew Wilcox , linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , Mike Rapoport , Stephen Rothwell References: <20230622205745.79707-1-vishal.moola@gmail.com> <20230622205745.79707-27-vishal.moola@gmail.com> <13bab37c-0f0a-431a-8b67-4379bf4dc541@roeck-us.net> From: Guenter Roeck In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit On 6/27/23 13:05, Dinh Nguyen wrote: > > > On 6/27/23 14:56, Vishal Moola wrote: >> On Tue, Jun 27, 2023 at 12:14 PM Guenter Roeck wrote: >>> >>> On 6/27/23 12:10, Guenter Roeck wrote: >>>> On 6/27/23 10:42, Vishal Moola wrote: >>>>> On Mon, Jun 26, 2023 at 10:47 PM Guenter Roeck wrote: >>>>>> >>>>>> On Thu, Jun 22, 2023 at 01:57:38PM -0700, Vishal Moola (Oracle) wrote: >>>>>>> Part of the conversions to replace pgtable constructor/destructors with >>>>>>> ptdesc equivalents. >>>>>>> >>>>>>> Signed-off-by: Vishal Moola (Oracle) >>>>>>> Acked-by: Mike Rapoport (IBM) >>>>>> >>>>>> This patch causes all nios2 builds to fail. >>>>> >>>>> It looks like you tried to apply this patch on its own. This patch depends >>>>> on patches 01-12 of this patchset to compile properly. I've cross-compiled >>>>> this architecture and it worked, but let me know if something fails >>>>> when its applied on top of those patches (or the rest of the patchset). >>>> >>>> >>>> No, I did not try to apply this patch on its own. I tried to build yesterday's >>>> pending-fixes branch of linux-next. >>>> >>> >>> A quick check shows that the build fails with next-20230627. See log below. >> >> Ah it looks like this one slipped into -next on its own somehow? Stephen, please >> drop this patch from -next; it shouldn't be in without the rest of the >> patchset which >> I intend to have Andrew take through the mm tree. >> > > I apologize, but I queue this patch up for Linus and it's been pulled for this merge window. I didn't realize you were going to take this patchset through another tree. > > Sorry about that. > Yes, indeed, I just confirmed that all nios2 builds in the mainline kernel are now broken. Guenter From xen-devel-bounces@lists.xenproject.org Tue Jun 27 21:46:32 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 21:46:32 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556289.868696 (Exim 4.92) (envelope-from ) id 1qEGVs-0007Ei-Vf; Tue, 27 Jun 2023 21:46:16 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556289.868696; Tue, 27 Jun 2023 21:46:16 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEGVs-0007Eb-T3; Tue, 27 Jun 2023 21:46:16 +0000 Received: by outflank-mailman (input) for mailman id 556289; Tue, 27 Jun 2023 21:46:15 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEGVr-0007EV-JU for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 21:46:15 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 0866b3eb-1534-11ee-8611-37d641c3527e; Tue, 27 Jun 2023 23:46:12 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 8C06861230; Tue, 27 Jun 2023 21:46:11 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 6B828C433C0; Tue, 27 Jun 2023 21:46:08 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 0866b3eb-1534-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1687902371; bh=kNRWvXJ4xm/ToNiiufH10E8eFH/kz2M9O+MlUTHu8xs=; h=Date:Subject:To:Cc:References:From:In-Reply-To:From; b=dCRVJo7cFQXZ8fu18KEwzUAM8G0H5FyGdPaG2Z+qvBFFcyKeAxATUHfslPZ9gYM65 fUBiDpVsOz7s37BrDNtKQR45m2YXiVV1qCXDc7/IqTUyGPp94swp1hVlVD46GBE2I6 ROQnI6XrB6lpqjS5yIx1Y45Syzn50mAuAt/l6x8z9hM8jKvnyg9/ULLIdryM37oYq/ Yh/pcTOLxD63zBFcAF7ckd4qr+sAF7rCAPraQ9w49bcBc1D8+6l9awCNsC+QptysIi WJeJrxhrcTPAEZJCX0+/n8roXYpzomEdplofCwlGlHS3mGUetW7sVNo6hPwc3Lqpw5 gb3eeXBRWUy2g== Message-ID: <70776142-a778-9c20-5594-835ed6f7e7a2@kernel.org> Date: Tue, 27 Jun 2023 16:46:06 -0500 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH v5 26/33] nios2: Convert __pte_free_tlb() to use ptdescs Content-Language: en-US To: Guenter Roeck , Vishal Moola Cc: Andrew Morton , Matthew Wilcox , linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , Mike Rapoport , Stephen Rothwell References: <20230622205745.79707-1-vishal.moola@gmail.com> <20230622205745.79707-27-vishal.moola@gmail.com> <13bab37c-0f0a-431a-8b67-4379bf4dc541@roeck-us.net> <2b7e8b1d-1697-6a25-434d-352f95e6fff2@roeck-us.net> From: Dinh Nguyen In-Reply-To: <2b7e8b1d-1697-6a25-434d-352f95e6fff2@roeck-us.net> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit On 6/27/23 16:01, Guenter Roeck wrote: > On 6/27/23 13:05, Dinh Nguyen wrote: >> >> >> On 6/27/23 14:56, Vishal Moola wrote: >>> On Tue, Jun 27, 2023 at 12:14 PM Guenter Roeck >>> wrote: >>>> >>>> On 6/27/23 12:10, Guenter Roeck wrote: >>>>> On 6/27/23 10:42, Vishal Moola wrote: >>>>>> On Mon, Jun 26, 2023 at 10:47 PM Guenter Roeck >>>>>> wrote: >>>>>>> >>>>>>> On Thu, Jun 22, 2023 at 01:57:38PM -0700, Vishal Moola (Oracle) >>>>>>> wrote: >>>>>>>> Part of the conversions to replace pgtable >>>>>>>> constructor/destructors with >>>>>>>> ptdesc equivalents. >>>>>>>> >>>>>>>> Signed-off-by: Vishal Moola (Oracle) >>>>>>>> Acked-by: Mike Rapoport (IBM) >>>>>>> >>>>>>> This patch causes all nios2 builds to fail. >>>>>> >>>>>> It looks like you tried to apply this patch on its own. This patch >>>>>> depends >>>>>> on patches 01-12 of this patchset to compile properly. I've >>>>>> cross-compiled >>>>>> this architecture and it worked, but let me know if something fails >>>>>> when its applied on top of those patches (or the rest of the >>>>>> patchset). >>>>> >>>>> >>>>> No, I did not try to apply this patch on its own. I tried to build >>>>> yesterday's >>>>> pending-fixes branch of linux-next. >>>>> >>>> >>>> A quick check shows that the build fails with next-20230627. See log >>>> below. >>> >>> Ah it looks like this one slipped into -next on its own somehow? >>> Stephen, please >>> drop this patch from -next; it shouldn't be in without the rest of the >>> patchset which >>> I intend to have Andrew take through the mm tree. >>> >> >> I apologize, but I queue this patch up for Linus and it's been pulled >> for this merge window. I didn't realize you were going to take this >> patchset through another tree. >> >> Sorry about that. >> > > Yes, indeed, I just confirmed that all nios2 builds in the mainline kernel > are now broken. > Please let me know if you need to do anything. I'm going to out for a week starting tomorrow. Dinh From xen-devel-bounces@lists.xenproject.org Tue Jun 27 21:58:10 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 21:58:10 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556293.868706 (Exim 4.92) (envelope-from ) id 1qEGhD-0000MC-VC; Tue, 27 Jun 2023 21:57:59 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556293.868706; Tue, 27 Jun 2023 21:57:59 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEGhD-0000M5-SW; Tue, 27 Jun 2023 21:57:59 +0000 Received: by outflank-mailman (input) for mailman id 556293; Tue, 27 Jun 2023 21:57:58 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEGhC-0000Lz-UT for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 21:57:58 +0000 Received: from mail-pl1-x629.google.com (mail-pl1-x629.google.com [2607:f8b0:4864:20::629]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id ac5aadf8-1535-11ee-b237-6b7b168915f2; Tue, 27 Jun 2023 23:57:57 +0200 (CEST) Received: by mail-pl1-x629.google.com with SMTP id d9443c01a7336-1b7fb02edfaso26343475ad.3 for ; Tue, 27 Jun 2023 14:57:57 -0700 (PDT) Received: from ?IPV6:2600:1700:e321:62f0:329c:23ff:fee3:9d7c? ([2600:1700:e321:62f0:329c:23ff:fee3:9d7c]) by smtp.gmail.com with ESMTPSA id e16-20020a17090301d000b001b69303db65sm6438851plh.26.2023.06.27.14.57.53 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Tue, 27 Jun 2023 14:57:55 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list X-Inumbo-ID: ac5aadf8-1535-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687903076; x=1690495076; h=content-transfer-encoding:in-reply-to:from:references:cc:to :content-language:subject:user-agent:mime-version:date:message-id :sender:from:to:cc:subject:date:message-id:reply-to; bh=t1QqN2jdF+WL3G2Fn2F+gnSyyU4sNUKe3JWXuNtILlE=; b=g+t5RbdhRiaLoYyDKYrUABIe+H7AyRcVTK6Ps8KX11dLH3rVyHHxTIp4jo1F1MLfJ/ 7iNHUg8lMtHSGaBwqfjHucjm6wwc/jl78+I2QtBt+NVF52zFOTO8iGbXC2EXZcfaizxp syPg/dBUX2hToZvcUTpD+czYfrRw5crN2vey7CoePIDlxvhbRn4jKEtVasFgYbYadRKT uIII/cayZYqptv+yRMmyM+Wfpd5/UPoabOL1LFJ6elItbp/e6VHQDna35ucIS9DgJdAS QwUA3GiJRf5dQk/OTJ3hXfUBDFz7VSwh76MedBtdvOPKN3bvoe9PwVVR6Es4OllczpXD WRDQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687903076; x=1690495076; h=content-transfer-encoding:in-reply-to:from:references:cc:to :content-language:subject:user-agent:mime-version:date:message-id :sender:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=t1QqN2jdF+WL3G2Fn2F+gnSyyU4sNUKe3JWXuNtILlE=; b=SK/w6Zcv+jeOOGguFlou3guvCq4I/J6v2Uqw2qnWzvS7CSyHQ2ebSTef3HM7pyHziR lc5frr3oksrsZ019ztJ3gU92VLZvI3rFUD58ivp7HPdTK/UO0CtQyoKV+2MdJYdH7d16 0gWhPExkYxHB28nE/bF4qsgitELAiDRLHaFxTOazU0W55+LGMtFFfuvL6k4IBR9u7lKb hYV9Qlib7hvX5Qq3UWgeo81B6TejIB8pvAMEyvjhlXzglCvYwrRF3SW8NPkeEUgS4Ddd 5hFS8WjzVikiOUks6T40kgapO3Mj0aWPzXJbuL/pcnC9OHta2fsI34tfttiNKTN6m1YZ iI5Q== X-Gm-Message-State: AC+VfDxOprt27FOiBB4o49PPtjkp6e6xW5Am8b/Ll3pTP2TYltSTumBQ cYXz+Qs7gsyIdiNToZPve7I= X-Google-Smtp-Source: ACHHUZ6lN48OedTSkLTDBhYcXWegZDranrwbL7k9xhFTjM3m37Ei4jw/mCpSF8qmoSte/cwaCNHhUw== X-Received: by 2002:a17:902:c407:b0:1ac:8717:d436 with SMTP id k7-20020a170902c40700b001ac8717d436mr14008978plk.60.1687903075769; Tue, 27 Jun 2023 14:57:55 -0700 (PDT) Sender: Guenter Roeck Message-ID: Date: Tue, 27 Jun 2023 14:57:52 -0700 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH v5 26/33] nios2: Convert __pte_free_tlb() to use ptdescs Content-Language: en-US To: Dinh Nguyen , Vishal Moola Cc: Andrew Morton , Matthew Wilcox , linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Hugh Dickins , Mike Rapoport , Stephen Rothwell References: <20230622205745.79707-1-vishal.moola@gmail.com> <20230622205745.79707-27-vishal.moola@gmail.com> <13bab37c-0f0a-431a-8b67-4379bf4dc541@roeck-us.net> <2b7e8b1d-1697-6a25-434d-352f95e6fff2@roeck-us.net> <70776142-a778-9c20-5594-835ed6f7e7a2@kernel.org> From: Guenter Roeck In-Reply-To: <70776142-a778-9c20-5594-835ed6f7e7a2@kernel.org> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit On 6/27/23 14:46, Dinh Nguyen wrote: > > > On 6/27/23 16:01, Guenter Roeck wrote: >> On 6/27/23 13:05, Dinh Nguyen wrote: >>> >>> >>> On 6/27/23 14:56, Vishal Moola wrote: >>>> On Tue, Jun 27, 2023 at 12:14 PM Guenter Roeck wrote: >>>>> >>>>> On 6/27/23 12:10, Guenter Roeck wrote: >>>>>> On 6/27/23 10:42, Vishal Moola wrote: >>>>>>> On Mon, Jun 26, 2023 at 10:47 PM Guenter Roeck wrote: >>>>>>>> >>>>>>>> On Thu, Jun 22, 2023 at 01:57:38PM -0700, Vishal Moola (Oracle) wrote: >>>>>>>>> Part of the conversions to replace pgtable constructor/destructors with >>>>>>>>> ptdesc equivalents. >>>>>>>>> >>>>>>>>> Signed-off-by: Vishal Moola (Oracle) >>>>>>>>> Acked-by: Mike Rapoport (IBM) >>>>>>>> >>>>>>>> This patch causes all nios2 builds to fail. >>>>>>> >>>>>>> It looks like you tried to apply this patch on its own. This patch depends >>>>>>> on patches 01-12 of this patchset to compile properly. I've cross-compiled >>>>>>> this architecture and it worked, but let me know if something fails >>>>>>> when its applied on top of those patches (or the rest of the patchset). >>>>>> >>>>>> >>>>>> No, I did not try to apply this patch on its own. I tried to build yesterday's >>>>>> pending-fixes branch of linux-next. >>>>>> >>>>> >>>>> A quick check shows that the build fails with next-20230627. See log below. >>>> >>>> Ah it looks like this one slipped into -next on its own somehow? Stephen, please >>>> drop this patch from -next; it shouldn't be in without the rest of the >>>> patchset which >>>> I intend to have Andrew take through the mm tree. >>>> >>> >>> I apologize, but I queue this patch up for Linus and it's been pulled for this merge window. I didn't realize you were going to take this patchset through another tree. >>> >>> Sorry about that. >>> >> >> Yes, indeed, I just confirmed that all nios2 builds in the mainline kernel >> are now broken. >> > > Please let me know if you need to do anything. I'm going to out for a week starting tomorrow. > Not sure I understand. It seems to me that it would have to be you to do something. After all, you are the nios2 maintainer, and nios2 builds in mainline are now broken. Maybe send a revert ? Am I missing something ? Guenter From xen-devel-bounces@lists.xenproject.org Tue Jun 27 23:10:36 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Tue, 27 Jun 2023 23:10:36 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556300.868717 (Exim 4.92) (envelope-from ) id 1qEHpF-0000BR-CV; Tue, 27 Jun 2023 23:10:21 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556300.868717; Tue, 27 Jun 2023 23:10:21 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEHpF-0000BK-9D; Tue, 27 Jun 2023 23:10:21 +0000 Received: by outflank-mailman (input) for mailman id 556300; Tue, 27 Jun 2023 23:10:19 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEHpD-0000BE-Kf for xen-devel@lists.xenproject.org; Tue, 27 Jun 2023 23:10:19 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id c70a3092-153f-11ee-b237-6b7b168915f2; Wed, 28 Jun 2023 01:10:17 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id C40F36123F; Tue, 27 Jun 2023 23:10:15 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPS id 38753C433CC; Tue, 27 Jun 2023 23:10:15 +0000 (UTC) Received: from aws-us-west-2-korg-oddjob-1.ci.codeaurora.org (localhost.localdomain [127.0.0.1]) by aws-us-west-2-korg-oddjob-1.ci.codeaurora.org (Postfix) with ESMTP id 0D412E5380A; Tue, 27 Jun 2023 23:10:15 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: c70a3092-153f-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1687907415; bh=yng0FmqgKRoBmPf/eooWitt8N2NyVf7Z939LZHz7L4M=; h=Subject:From:In-Reply-To:References:Date:To:Cc:From; b=jk2JGaIBYH30CQ8nYzHdI8GQNE4FsBYyS7QRDWce5o2xbnJbFJcj23X+c7ZIi3RS/ ncABrrLEpfjFG0bzz4lcbefVQSLQuMv+yQ0oek6+vL++P/AOAuHZILmRRYuqSZ2Ogr fgkL362nzZy/2S68s+OExOpbOyXDPawH/tFma4rWyANykcbYqlK32Sk6aBphQJ8vxM V8wi7nX6lKsX1W5M7cnIlh2N+UBrdfpAOmRKdogZd/quUfQGgCM53mv8ihoXp6rzSG CNK+w6zOqUihHd2HbHlnMGKyoJwYaiPgrQHlUuvQraKDzS5AZuDSbkteqrIYeB3C9J lTZWDfwOkhSJQ== Subject: Re: [GIT PULL] xen: branch for v6.5-rc1 From: pr-tracker-bot@kernel.org In-Reply-To: <20230627060906.14981-1-jgross@suse.com> References: <20230627060906.14981-1-jgross@suse.com> X-PR-Tracked-List-Id: Xen developer discussion X-PR-Tracked-Message-Id: <20230627060906.14981-1-jgross@suse.com> X-PR-Tracked-Remote: git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip.git for-linus-6.5-rc1-tag X-PR-Tracked-Commit-Id: fb9b7b4b2b82d72031bff6d615215c1c74064bb3 X-PR-Merge-Tree: torvalds/linux.git X-PR-Merge-Refname: refs/heads/master X-PR-Merge-Commit-Id: 18eb3b6dff007f2e4ef4f0d8567dfb5cdb6086fc Message-Id: <168790741504.21322.17901076437712757797.pr-tracker-bot@kernel.org> Date: Tue, 27 Jun 2023 23:10:15 +0000 To: Juergen Gross Cc: torvalds@linux-foundation.org, linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org, sstabellini@kernel.org The pull request you sent on Tue, 27 Jun 2023 08:09:06 +0200: > git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip.git for-linus-6.5-rc1-tag has been merged into torvalds/linux.git: https://git.kernel.org/torvalds/c/18eb3b6dff007f2e4ef4f0d8567dfb5cdb6086fc Thank you! -- Deet-doot-dot, I am a bot. https://korg.docs.kernel.org/prtracker.html From xen-devel-bounces@lists.xenproject.org Wed Jun 28 01:58:58 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 28 Jun 2023 01:58:58 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556304.868727 (Exim 4.92) (envelope-from ) id 1qEKS8-0006zM-EJ; Wed, 28 Jun 2023 01:58:40 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556304.868727; Wed, 28 Jun 2023 01:58:40 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEKS8-0006z0-7T; Wed, 28 Jun 2023 01:58:40 +0000 Received: by outflank-mailman (input) for mailman id 556304; Wed, 28 Jun 2023 01:58:39 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEKS7-0006yq-EW; Wed, 28 Jun 2023 01:58:39 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEKS7-0002Kr-5y; Wed, 28 Jun 2023 01:58:39 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEKS6-0008VT-Gb; Wed, 28 Jun 2023 01:58:38 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qEKS6-0007Wh-FZ; Wed, 28 Jun 2023 01:58:38 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=I9tI0LfaBNUgTp91aG9Qc38SL0QJgDf6AcdZPQLNbvg=; b=Y58KdUq2dJOfHMEou5Qx/NdaLz OYm6awUh7I/G3Oti8QIUoMsFFLbKNe5nv5ow86gQ828TrU2NdcdknX9QUkV0LUSLEf6vuIbfcQOhj O4cwliypfRCS5siBG0EUaEniuAdhlxVF/R5/gkT0yK1N4eoPskkyYr6+Ow7fptcK9eF0=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [linux-linus test] 181617: regressions - FAIL X-Osstest-Failures: linux-linus:test-amd64-amd64-qemuu-nested-amd:leak-check/basis(11):fail:regression linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:xen-boot:fail:regression linux-linus:test-amd64-amd64-pygrub:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-vhd:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-multivcpu:xen-boot:fail:regression linux-linus:test-amd64-amd64-libvirt-xsm:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:xen-boot:fail:regression linux-linus:test-amd64-amd64-libvirt-qcow2:leak-check/basis(11):fail:regression linux-linus:test-amd64-amd64-xl:leak-check/basis(11):fail:regression linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64:leak-check/basis(11):fail:regression linux-linus:test-amd64-amd64-xl-qemuu-ovmf-amd64:leak-check/basis(11):fail:regression linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:xen-boot:fail:regression linux-linus:test-amd64-amd64-freebsd11-amd64:leak-check/basis(11):fail:regression linux-linus:test-amd64-amd64-libvirt-raw:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:leak-check/basis(11):fail:regression linux-linus:test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm:xen-boot:fail:regression linux-linus:test-amd64-coresched-amd64-xl:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-shadow:xen-boot:fail:regression linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:leak-check/basis(11):fail:regression linux-linus:test-amd64-amd64-xl-xsm:debian-install:fail:regression linux-linus:test-amd64-amd64-libvirt:debian-install:fail:regression linux-linus:test-amd64-amd64-xl-pvhv2-amd:debian-install:fail:regression linux-linus:test-amd64-amd64-libvirt-pair:xen-boot/dst_host:fail:regression linux-linus:test-amd64-amd64-xl-pvhv2-intel:xen-boot:fail:regression linux-linus:test-amd64-amd64-pair:xen-boot/src_host:fail:regression linux-linus:test-amd64-amd64-pair:xen-boot/dst_host:fail:regression linux-linus:test-amd64-amd64-xl-credit1:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-qemut-debianhvm-amd64:debian-hvm-install:fail:regression linux-linus:test-amd64-amd64-freebsd12-amd64:xen-boot:fail:regression linux-linus:test-amd64-amd64-qemuu-nested-intel:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-pvshim:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:guest-localmigrate:fail:regression linux-linus:test-amd64-amd64-xl-credit2:debian-install:fail:regression linux-linus:test-armhf-armhf-xl-credit1:xen-boot:fail:regression linux-linus:test-amd64-amd64-examine:reboot:fail:regression linux-linus:test-amd64-amd64-xl-rtds:leak-check/basis(11):fail:allowable linux-linus:test-armhf-armhf-examine:reboot:fail:nonblocking linux-linus:test-armhf-armhf-xl-arndale:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-raw:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-credit2:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-rtds:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-qcow2:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-vhd:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-multivcpu:xen-boot:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: linux=04fc8904d5d18a132f5ad67b79ee980b6602c8c6 X-Osstest-Versions-That: linux=6c538e1adbfc696ac4747fb10d63e704344f763d From: osstest service owner Date: Wed, 28 Jun 2023 01:58:38 +0000 flight 181617 linux-linus real [real] http://logs.test-lab.xenproject.org/osstest/logs/181617/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: test-amd64-amd64-qemuu-nested-amd 11 leak-check/basis(11) fail REGR. vs. 180278 test-amd64-amd64-xl-qemuu-ws16-amd64 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-pygrub 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-xl-qemuu-win7-amd64 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-xl-qemut-win7-amd64 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-xl-vhd 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-xl-multivcpu 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-libvirt-xsm 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-libvirt-qcow2 11 leak-check/basis(11) fail REGR. vs. 180278 test-amd64-amd64-xl 11 leak-check/basis(11) fail REGR. vs. 180278 test-amd64-amd64-xl-qemuu-debianhvm-amd64 11 leak-check/basis(11) fail REGR. vs. 180278 test-amd64-amd64-xl-qemuu-ovmf-amd64 11 leak-check/basis(11) fail REGR. vs. 180278 test-amd64-amd64-xl-qemut-ws16-amd64 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-freebsd11-amd64 11 leak-check/basis(11) fail REGR. vs. 180278 test-amd64-amd64-libvirt-raw 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 11 leak-check/basis(11) fail REGR. vs. 180278 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm 8 xen-boot fail REGR. vs. 180278 test-amd64-coresched-amd64-xl 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-xl-shadow 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 11 leak-check/basis(11) fail REGR. vs. 180278 test-amd64-amd64-xl-xsm 12 debian-install fail REGR. vs. 180278 test-amd64-amd64-libvirt 12 debian-install fail REGR. vs. 180278 test-amd64-amd64-xl-pvhv2-amd 12 debian-install fail REGR. vs. 180278 test-amd64-amd64-libvirt-pair 13 xen-boot/dst_host fail REGR. vs. 180278 test-amd64-amd64-xl-pvhv2-intel 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-pair 12 xen-boot/src_host fail REGR. vs. 180278 test-amd64-amd64-pair 13 xen-boot/dst_host fail REGR. vs. 180278 test-amd64-amd64-xl-credit1 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-xl-qemut-debianhvm-amd64 12 debian-hvm-install fail REGR. vs. 180278 test-amd64-amd64-freebsd12-amd64 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-qemuu-nested-intel 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-xl-pvshim 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm 16 guest-localmigrate fail REGR. vs. 180278 test-amd64-amd64-xl-credit2 12 debian-install fail REGR. vs. 180278 test-armhf-armhf-xl-credit1 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-examine 8 reboot fail REGR. vs. 180278 Regressions which are regarded as allowable (not blocking): test-amd64-amd64-xl-rtds 11 leak-check/basis(11) fail REGR. vs. 180278 Tests which did not succeed, but are not blocking: test-armhf-armhf-examine 8 reboot fail like 180278 test-armhf-armhf-xl-arndale 8 xen-boot fail like 180278 test-armhf-armhf-xl 8 xen-boot fail like 180278 test-armhf-armhf-libvirt-raw 8 xen-boot fail like 180278 test-armhf-armhf-xl-credit2 8 xen-boot fail like 180278 test-armhf-armhf-xl-rtds 8 xen-boot fail like 180278 test-armhf-armhf-libvirt 8 xen-boot fail like 180278 test-armhf-armhf-libvirt-qcow2 8 xen-boot fail like 180278 test-armhf-armhf-xl-vhd 8 xen-boot fail like 180278 test-armhf-armhf-xl-multivcpu 8 xen-boot fail like 180278 test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass version targeted for testing: linux 04fc8904d5d18a132f5ad67b79ee980b6602c8c6 baseline version: linux 6c538e1adbfc696ac4747fb10d63e704344f763d Last test of basis 180278 2023-04-16 19:41:46 Z 72 days Failing since 180281 2023-04-17 06:24:36 Z 71 days 137 attempts Testing same since 181617 2023-06-27 19:11:24 Z 0 days 1 attempts ------------------------------------------------------------ 2871 people touched revisions under test, not listing them all jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl fail test-amd64-coresched-amd64-xl fail test-arm64-arm64-xl pass test-armhf-armhf-xl fail test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm fail test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm fail test-amd64-amd64-xl-qemut-debianhvm-i386-xsm fail test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm fail test-amd64-amd64-libvirt-xsm fail test-arm64-arm64-libvirt-xsm pass test-amd64-amd64-xl-xsm fail test-arm64-arm64-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd fail test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 fail test-amd64-amd64-xl-qemuu-debianhvm-amd64 fail test-amd64-amd64-freebsd11-amd64 fail test-amd64-amd64-freebsd12-amd64 fail test-amd64-amd64-xl-qemuu-ovmf-amd64 fail test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale fail test-amd64-amd64-examine-bios pass test-amd64-amd64-xl-credit1 fail test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 fail test-amd64-amd64-xl-credit2 fail test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 fail test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict fail test-amd64-amd64-examine fail test-arm64-arm64-examine pass test-armhf-armhf-examine fail test-amd64-amd64-qemuu-nested-intel fail test-amd64-amd64-xl-pvhv2-intel fail test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt fail test-armhf-armhf-libvirt fail test-amd64-amd64-xl-multivcpu fail test-armhf-armhf-xl-multivcpu fail test-amd64-amd64-pair fail test-amd64-amd64-libvirt-pair fail test-amd64-amd64-xl-pvshim fail test-amd64-amd64-pygrub fail test-amd64-amd64-libvirt-qcow2 fail test-armhf-armhf-libvirt-qcow2 fail test-amd64-amd64-libvirt-raw fail test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw fail test-amd64-amd64-xl-rtds fail test-armhf-armhf-xl-rtds fail test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow fail test-amd64-amd64-xl-shadow fail test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-amd64-xl-vhd fail test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd fail ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 386307 lines long.) From xen-devel-bounces@lists.xenproject.org Wed Jun 28 05:39:07 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 28 Jun 2023 05:39:07 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556310.868738 (Exim 4.92) (envelope-from ) id 1qENt9-0004Mo-AP; Wed, 28 Jun 2023 05:38:47 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556310.868738; Wed, 28 Jun 2023 05:38:47 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qENt9-0004Mh-5d; Wed, 28 Jun 2023 05:38:47 +0000 Received: by outflank-mailman (input) for mailman id 556310; Wed, 28 Jun 2023 05:38:46 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qENt8-0004Mb-8G for xen-devel@lists.xenproject.org; Wed, 28 Jun 2023 05:38:46 +0000 Received: from EUR02-DB5-obe.outbound.protection.outlook.com (mail-db5eur02on2061f.outbound.protection.outlook.com [2a01:111:f400:fe12::61f]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 09d47f70-1576-11ee-8611-37d641c3527e; Wed, 28 Jun 2023 07:38:42 +0200 (CEST) Received: from DUZPR01CA0035.eurprd01.prod.exchangelabs.com (2603:10a6:10:468::13) by DU0PR08MB8323.eurprd08.prod.outlook.com (2603:10a6:10:40c::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.23; Wed, 28 Jun 2023 05:38:33 +0000 Received: from DBAEUR03FT028.eop-EUR03.prod.protection.outlook.com (2603:10a6:10:468:cafe::b4) by DUZPR01CA0035.outlook.office365.com (2603:10a6:10:468::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.18 via Frontend Transport; Wed, 28 Jun 2023 05:38:33 +0000 Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by DBAEUR03FT028.mail.protection.outlook.com (100.127.142.236) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.16 via Frontend Transport; Wed, 28 Jun 2023 05:38:33 +0000 Received: ("Tessian outbound e2424c13b707:v142"); Wed, 28 Jun 2023 05:38:32 +0000 Received: from 9fb7a5597d47.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 91C9EBAA-8A9B-4B2D-B384-3CD06643AA90.1; Wed, 28 Jun 2023 05:38:26 +0000 Received: from EUR03-AM7-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 9fb7a5597d47.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Wed, 28 Jun 2023 05:38:26 +0000 Received: from DUZPR01CA0200.eurprd01.prod.exchangelabs.com (2603:10a6:10:4b6::10) by DU0PR08MB8661.eurprd08.prod.outlook.com (2603:10a6:10:403::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.26; Wed, 28 Jun 2023 05:38:22 +0000 Received: from DBAEUR03FT014.eop-EUR03.prod.protection.outlook.com (2603:10a6:10:4b6:cafe::f4) by DUZPR01CA0200.outlook.office365.com (2603:10a6:10:4b6::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.37 via Frontend Transport; Wed, 28 Jun 2023 05:38:22 +0000 Received: from nebula.arm.com (40.67.248.234) by DBAEUR03FT014.mail.protection.outlook.com (100.127.143.22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6544.18 via Frontend Transport; Wed, 28 Jun 2023 05:38:22 +0000 Received: from AZ-NEU-EX02.Emea.Arm.com (10.251.26.5) by AZ-NEU-EX03.Arm.com (10.251.24.31) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Wed, 28 Jun 2023 05:38:22 +0000 Received: from AZ-NEU-EX03.Arm.com (10.251.24.31) by AZ-NEU-EX02.Emea.Arm.com (10.251.26.5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Wed, 28 Jun 2023 05:38:21 +0000 Received: from [10.169.188.49] (10.169.188.49) by mail.arm.com (10.251.24.31) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27 via Frontend Transport; Wed, 28 Jun 2023 05:38:18 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 09d47f70-1576-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=FyyXQKfnbwsrbZDjXyXdLte2vnTos8AOFBG83A6bL7U=; b=WOge6jjy/QG3GIU81WD12CfLVGwcCh+8sILo5Ua42k6ZVbut/9QP1YXf43OnLTZAhpqorHplApKMzz9ITY8A5R+/rVDdlmuS7057/0YosVDlIXiXF0XbTG1PQA6MBXVnBjBu+Py83J2sApKSpIKhrZI+L9xOTtovhNSENWLbLww= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C X-CheckRecipientChecked: true X-CR-MTA-CID: 869535a7e408df9d X-CR-MTA-TID: 64aa7808 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=B9EnE0EwieCAyQ2Fy3PcB0oSCuOw9NGINvUxDTyt6ePme7/mCIzp3w9OwwYQNjDMLXJ0uX8fQys3bgmvqxM2spH+ZAYmhbFALn1EiB/7Un0mD964bQMRX9llGl4OdX6mlgw/dw7SAkUfbZNnXLFXbptW4C1zX2cuyoyr+Sx47lXLNCnNq8TfWe0opY1cwbSEXcSoAwm7YSAynrjxzuhYZ90DZ2ezOiYfNtaZiCCNyJ5Hf9bF8K9GWK9tBJfGru8nKcfLaGOURAM119TjKci9CnsSAol6/gouVEQsA/Y53Z4QyDNlSTqCn/HXxUImdeWX9DDghG0wDrrAnAFj+0osfw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=FyyXQKfnbwsrbZDjXyXdLte2vnTos8AOFBG83A6bL7U=; b=lmyR/+OBCDAClZags0HxWeg2xWGaXg8Y8XrtWS/winmW8+O+OIHLG3HXpUzQIQ8MgKB510+PkZKXh2QZjOAmlaSx3Amr9k0hfUDnEwnnw7b3gkOjUOaOjZ/woPbTA5NJODwqfcMgwGhBJ7fgusjnr4pQLFGfiDe8HPDpewR+7j/dZxt3p+WMGxjsAkSCVeKN5R2NssgPujQ2PgCqV7mPQqJ0gezWkuVvjWO2dpq84baUJZadOEIhnKSUAYnmb3ySjxqcFCVzf2SWB50XG1grClBSU3VtWGQa+92X9w3aGOQId+Vzyn2w3UZVc2S+19mXQrCi5HoQjJklt77qSSSQPQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 40.67.248.234) smtp.rcpttodomain=suse.com smtp.mailfrom=arm.com; dmarc=pass (p=none sp=none pct=100) action=none header.from=arm.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=FyyXQKfnbwsrbZDjXyXdLte2vnTos8AOFBG83A6bL7U=; b=WOge6jjy/QG3GIU81WD12CfLVGwcCh+8sILo5Ua42k6ZVbut/9QP1YXf43OnLTZAhpqorHplApKMzz9ITY8A5R+/rVDdlmuS7057/0YosVDlIXiXF0XbTG1PQA6MBXVnBjBu+Py83J2sApKSpIKhrZI+L9xOTtovhNSENWLbLww= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 40.67.248.234) smtp.mailfrom=arm.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 40.67.248.234 as permitted sender) receiver=protection.outlook.com; client-ip=40.67.248.234; helo=nebula.arm.com; pr=C Message-ID: <7d3ff868-60a4-1eab-0b9b-f6ca649cfdeb@arm.com> Date: Wed, 28 Jun 2023 13:38:16 +0800 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.11.2 Subject: Re: [PATCH v3 15/52] xen: make VMAP only support in MMU system Content-Language: en-US To: Jan Beulich CC: Stefano Stabellini , Julien Grall , Bertrand Marquis , "Volodymyr Babchuk" , Andrew Cooper , George Dunlap , "Wei Liu" , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Chen , References: <20230626033443.2943270-1-Penny.Zheng@arm.com> <20230626033443.2943270-16-Penny.Zheng@arm.com> <654c9925-565a-80d4-5e93-129f6f0f691a@suse.com> From: Penny Zheng In-Reply-To: <654c9925-565a-80d4-5e93-129f6f0f691a@suse.com> Content-Type: text/plain; charset="UTF-8"; format=flowed Content-Transfer-Encoding: 8bit X-EOPAttributedMessage: 1 X-MS-TrafficTypeDiagnostic: DBAEUR03FT014:EE_|DU0PR08MB8661:EE_|DBAEUR03FT028:EE_|DU0PR08MB8323:EE_ X-MS-Office365-Filtering-Correlation-Id: 4eae6d90-0adc-44a1-e55e-08db7799e943 x-checkrecipientrouted: true NoDisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: RESHwkRlAVj90Ss/ymFBOboFeEM31QyWOQ1bwc+FUj632Yt6jozQnKw7DP1gLUhM0gy4jkSboyHx+mmqxzvKAC68OsjjcuBme4g17Bo0pGZFpKMD8J1FEbT5Zp9rg8xsgqA6qGfIrAUevKaahLTDxHjb0paywuxtxq+W9Q9/Kq5nqp33DFPbzqmlsvhk0F6NJ0UJ6Kh/1j5BaOnbL74Q7n/oXZxRR0nefAIyrgoSFQ3vuVY7N7Ema3K3uqColUQ6OCrimn2JpXbRJlDfOLBiBTsAmSofIUUhfgriqfcFFjYFVAeddpun74qynRHysWRUbBdEkzZBbRG92QBQWH+ETKcziQa8HTRYpKIJE2BIByS2apQFXxrgMatUoO0Bpf70WodbIkbBtVU+bd5Rpso6NWQ2CUjlMRDHAKhPuP8Cn5UtADCh4RxXRG1RGuhRhlGw8K0ngwnNG5lFP0VaUZBAJHsbzQZJf3NNm7izBHdIt4zETFPLWznF4FDFU8KiPe4izWIgz7Miv8+2Bfau/l0mcapc2CNaOL1bSvdN5EYN2EJ3jo1ZWcdOAzeo0F1neZw3hp2Yc3qYs6kkHb8rIJWw+qS9qWTc0CWO+qfL3ziwTTfmhfmfybb6SirMu5csfAR9MXWa02KX2TjxHypvAwdkD5HDKTwVvJn+i63AA+3jX8CNTc09gg7kXp7hwo53wYwKqA3UU2U14lLtNn62diFRwFXglVYnjdgywFcS7fgCvDK1L6m47rcN66bEeK7GlJasJv8EdvQcS0/uCRNsUfCLqZn5hPM4BR1K4CiAFskVJFz/defxe+ipN5gRzJs9+6zyE6Ay6547rU9TCUWdLO7/uNjb3WYGZI/+Lt1EmexsyHc= X-Forefront-Antispam-Report-Untrusted: CIP:40.67.248.234;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:nebula.arm.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(396003)(136003)(376002)(39860400002)(346002)(451199021)(40470700004)(36840700001)(46966006)(26005)(36756003)(82310400005)(36860700001)(47076005)(54906003)(2616005)(478600001)(336012)(426003)(16576012)(83380400001)(186003)(2906002)(44832011)(70206006)(356005)(8936002)(4326008)(82740400003)(31696002)(5660300002)(40480700001)(70586007)(81166007)(41300700001)(316002)(8676002)(6916009)(40460700003)(86362001)(31686004)(53546011)(3940600001)(21314003)(43740500002)(36900700001);DIR:OUT;SFP:1101; X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU0PR08MB8661 X-MS-Exchange-Transport-CrossTenantHeadersStripped: DBAEUR03FT028.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: 4434cc3e-1674-4648-7a76-08db7799e2fe X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 6UhmWLjWCpnLl1O9nYf7YD+Ir/qvNE6OJXEBDkb/iL+kQWggqA1O9u8dUzlTR4jQn51RRu0FpZBBVMbsKmjr4rScSCmk0hYlt733AhoLIdJF358efcobal9XUI1vXY6B5z9hibUi5Ibrp9adBa8xRblXKHAT/41aGojlTG6EXxAYHxyH/M1Qvx6071xDr+hNr5oVCVbTalzPm9MSX3ORDaNwCScLxkEaMCrTk6+YI15J9IRD0yo/++qXEZTxL0j6SYYVFknUh6Df4fg12Ggf9GTpjLZrfKC8KhlnzyLQfuqFExXXyprBUM5VSMBnCXmAx2OROhriSDzXyuySBMP2l4pqm7fKLbJEyiYTPH1Pei4It1F93SHtW4mItxu5sMf5gz+j0zI5SIc6o56j5m6k4005HqZ8BFV5i/7OyNbX6lFZa2zPKk4GNuM8br2SssANCMvPZwLnA9j2cU2k1cnTp2rQeoazuh+4zJXqmFiPxEQ0bGYdPgDsUvCZL8aTCALsGrlzlGM9YDC0bfeuTpgoX3Ptw3tHSwkKU3wqynw5EgLi7F9kEyVEwZttsF6D/OWq/hjY6QsbIv2Arko+uzCVFv96FYD9Qu4TIr4k9NvhuyclIT4B7HEKuj/vJ4EuUwRxob2HN5lDejJgUFX9RoXZ0EyQLYhrttSFcRitDC3V4VhGiGqjuo9fN2q+pK5DSzEIFTjk5vwF0V4VlcOYu+MOop2L+bf/1TFHJNxYXhYNJZk0FjCMu0OANsMmOTE8Qm36DXIV+VKemTtFAo5FoBSMy1IG//LcyXYWGw02LGq76mkcKpBEdFoANhrO73bV9niGV/NzKpVWeH8DAj5DPn24nQ== X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230028)(4636009)(136003)(396003)(39860400002)(346002)(376002)(451199021)(40470700004)(46966006)(36840700001)(316002)(70586007)(4326008)(70206006)(478600001)(36756003)(6862004)(8936002)(5660300002)(8676002)(31686004)(44832011)(40460700003)(36860700001)(31696002)(86362001)(16576012)(40480700001)(54906003)(41300700001)(82310400005)(2906002)(53546011)(426003)(186003)(47076005)(336012)(83380400001)(26005)(82740400003)(81166007)(2616005)(3940600001)(21314003)(43740500002);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Jun 2023 05:38:33.0143 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 4eae6d90-0adc-44a1-e55e-08db7799e943 X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: DBAEUR03FT028.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU0PR08MB8323 Hi Jan On 2023/6/26 14:00, Jan Beulich wrote: > On 26.06.2023 05:34, Penny Zheng wrote: >> --- a/xen/arch/x86/Kconfig >> +++ b/xen/arch/x86/Kconfig >> @@ -27,6 +27,7 @@ config X86 >> select HAS_PDX >> select HAS_SCHED_GRANULARITY >> select HAS_UBSAN >> + select HAS_VMAP > > With this being unconditional, ... > >> --- a/xen/arch/x86/setup.c >> +++ b/xen/arch/x86/setup.c >> @@ -1750,12 +1750,14 @@ void __init noreturn __start_xen(unsigned long mbi_p) >> end_boot_allocator(); >> >> system_state = SYS_STATE_boot; >> +#ifdef CONFIG_HAS_VMAP >> /* >> * No calls involving ACPI code should go between the setting of >> * SYS_STATE_boot and vm_init() (or else acpi_os_{,un}map_memory() >> * will break). >> */ >> vm_init(); >> +#endif > > ... there's no need to make this code less readable by adding #ifdef. > Even for the Arm side I question the #ifdef-ary - it likely would be > better to have an empty stub in the header for that case. > I may misunderstand what you said in last serie and thought #ifdef-ary is preferred compared with inline stubs, referring here to recall ''' Do you really need this and all other inline stubs? Imo the goal ought to be to have as few of them as possible: The one above won't be referenced if you further make LIVEPATCH depend on HAS_VMAP (which I think you need to do anyway), and the only other call to the function is visible in context above (i.e. won't be used either when !HAS_VMAP). In other cases merely having a declaration (but no definition) may be sufficient, as the compiler may be able to eliminate calls. ''' So maybe the preferring order is "declaration > empty inline stubs > #ifdef-ary" ? As having a declaration is not enough for vm_init()(when !HAS_VMAP), we provide static inline empty stub here. >> --- a/xen/common/Kconfig >> +++ b/xen/common/Kconfig >> @@ -15,6 +15,7 @@ config CORE_PARKING >> config GRANT_TABLE >> bool "Grant table support" if EXPERT >> default y >> + depends on HAS_VMAP > > Looking back at the commit which added use of vmap.h there, I can't > seem to be bale to spot why it did. Where's the dependency there? vzalloc() is used in grant_table_init() in xen/common/grantable.c:2023 > And even if there is one, I think you don't want to unconditionally > turn off a core, guest-visible feature. Instead you would want to > identify a way to continue to support the feature in perhaps > slightly less efficient a way. > We have discussed in MPU design, normally, xen guest in MPU system will be a linux guest with no pv(with CONFIG_XEN=n), so advanced features like grant table is in no use there. >> --- a/xen/common/vmap.c >> +++ b/xen/common/vmap.c >> @@ -331,4 +331,11 @@ void vfree(void *va) >> while ( (pg = page_list_remove_head(&pg_list)) != NULL ) >> free_domheap_page(pg); >> } >> + >> +void iounmap(void __iomem *va) >> +{ >> + unsigned long addr = (unsigned long)(void __force *)va; >> + >> + vunmap((void *)(addr & PAGE_MASK)); >> +} > > Why does this move here? ioremap/iounmap is using vmap, at least in ARM. So for this more generic interface, I was intending to implement it on MPU system. In commit "[PATCH v3 19/52] xen/arm: switch to use ioremap_xxx in common file", I'm trying to replace all direct vmap interface with ioremap_xxx in common files. Then I, in commit "[PATCH v3 36/52] xen/mpu: implememt ioremap_xxx in MPU", will implement MPU version of ioremap_xxx. > >> --- a/xen/include/xen/vmap.h >> +++ b/xen/include/xen/vmap.h >> @@ -1,4 +1,4 @@ >> -#if !defined(__XEN_VMAP_H__) && defined(VMAP_VIRT_START) >> +#if !defined(__XEN_VMAP_H__) && (defined(VMAP_VIRT_START) || !defined(CONFIG_HAS_VMAP)) >> #define __XEN_VMAP_H__ >> >> #include >> @@ -25,17 +25,14 @@ void vfree(void *va); >> >> void __iomem *ioremap(paddr_t, size_t); >> >> -static inline void iounmap(void __iomem *va) >> -{ >> - unsigned long addr = (unsigned long)(void __force *)va; >> - >> - vunmap((void *)(addr & PAGE_MASK)); >> -} >> +void iounmap(void __iomem *va); >> >> void *arch_vmap_virt_end(void); >> static inline void vm_init(void) >> { >> +#if defined(VMAP_VIRT_START) >> vm_init_type(VMAP_DEFAULT, (void *)VMAP_VIRT_START, arch_vmap_virt_end()); >> +#endif >> } > > Why the (seemingly unrelated) #ifdef-ary here? You've eliminated > the problematic caller already. Didn't you mean to add wider scope > #ifdef CONFIG_HAS_VMAP to this header? > plz correct me if I'm wrong, in MPU system with !HAS_VMAP, if we don't #ifdef-ary here, we will have the following compilation error, I guess it's because that vm_init() is a static inline stub: ``` ./include/xen/vmap.h: In function ‘vm_init’: ./include/xen/vmap.h:33:40: error: ‘VMAP_VIRT_START’ undeclared (first use in this function); did you mean ‘XEN_VIRT_START’? 33 | vm_init_type(VMAP_DEFAULT, (void *)VMAP_VIRT_START, arch_vmap_virt_end()); | ^~~~~~~~~~~~~~~ | XEN_VIRT_START ``` > Jan > From xen-devel-bounces@lists.xenproject.org Wed Jun 28 05:41:10 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 28 Jun 2023 05:41:10 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556317.868747 (Exim 4.92) (envelope-from ) id 1qENvR-0005pt-OR; Wed, 28 Jun 2023 05:41:09 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556317.868747; Wed, 28 Jun 2023 05:41:09 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qENvR-0005pm-LW; Wed, 28 Jun 2023 05:41:09 +0000 Received: by outflank-mailman (input) for mailman id 556317; Wed, 28 Jun 2023 05:41:07 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qENvP-0005pg-S9 for xen-devel@lists.xenproject.org; Wed, 28 Jun 2023 05:41:07 +0000 Received: from EUR04-DB3-obe.outbound.protection.outlook.com (mail-db3eur04on0609.outbound.protection.outlook.com [2a01:111:f400:fe0c::609]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 607dbe2b-1576-11ee-b237-6b7b168915f2; Wed, 28 Jun 2023 07:41:06 +0200 (CEST) Received: from AM6P195CA0054.EURP195.PROD.OUTLOOK.COM (2603:10a6:209:87::31) by DU2PR08MB7359.eurprd08.prod.outlook.com (2603:10a6:10:2f2::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.26; Wed, 28 Jun 2023 05:40:57 +0000 Received: from AM7EUR03FT004.eop-EUR03.prod.protection.outlook.com (2603:10a6:209:87:cafe::d4) by AM6P195CA0054.outlook.office365.com (2603:10a6:209:87::31) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.34 via Frontend Transport; Wed, 28 Jun 2023 05:40:57 +0000 Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by AM7EUR03FT004.mail.protection.outlook.com (100.127.140.210) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.18 via Frontend Transport; Wed, 28 Jun 2023 05:40:56 +0000 Received: ("Tessian outbound e2424c13b707:v142"); Wed, 28 Jun 2023 05:40:56 +0000 Received: from c6c37f26f608.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id F6E626B3-F5A4-4D0E-AE95-1A45265E1D86.1; Wed, 28 Jun 2023 05:40:49 +0000 Received: from EUR03-DBA-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id c6c37f26f608.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Wed, 28 Jun 2023 05:40:49 +0000 Received: from DB8PR06CA0045.eurprd06.prod.outlook.com (2603:10a6:10:120::19) by DU0PR08MB9463.eurprd08.prod.outlook.com (2603:10a6:10:42d::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.24; Wed, 28 Jun 2023 05:40:43 +0000 Received: from DBAEUR03FT051.eop-EUR03.prod.protection.outlook.com (2603:10a6:10:120:cafe::73) by DB8PR06CA0045.outlook.office365.com (2603:10a6:10:120::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.19 via Frontend Transport; Wed, 28 Jun 2023 05:40:43 +0000 Received: from nebula.arm.com (40.67.248.234) by DBAEUR03FT051.mail.protection.outlook.com (100.127.142.148) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6544.20 via Frontend Transport; Wed, 28 Jun 2023 05:40:43 +0000 Received: from AZ-NEU-EX03.Arm.com (10.251.24.31) by AZ-NEU-EX03.Arm.com (10.251.24.31) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Wed, 28 Jun 2023 05:40:43 +0000 Received: from [10.169.188.49] (10.169.188.49) by mail.arm.com (10.251.24.31) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27 via Frontend Transport; Wed, 28 Jun 2023 05:40:40 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 607dbe2b-1576-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=ZGQuW9+dkHZh6Tpwky9V38WCBfRDJO4wWC7XlFezq/E=; b=CGHc4FaueZKdRUXSb/zGHng5IX+IJeKcSErQ3NBW9pNAVbSw0rTsCqXcAdE0LRCRy1XQQicEIVLFbUsQCh/UPcpF0u4JlBL8YSpy/LAO9v0OAk7Ip4s4I5bMmzmDN6/7i6zF1gezy154w4YFGWNxF5y3WBciAmetyuYuRrZUrrI= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C X-CheckRecipientChecked: true X-CR-MTA-CID: 6b01043b66fbcc7f X-CR-MTA-TID: 64aa7808 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=b0dxj1yRqib3tnIooZqeDhQ9d1QQzH3fGa1Aq8XJKW+Un1gG8IxKNGalEzDY8QiEzeIN/UihxUvQxTZ55qV9V98UV7OEawvE1lpcc2Ukt6K30kVnQMyKXdHIK68Pvad9ls64ayZA79LVmlntpRgEJnxbBbs0lr2zE9tjjJsRidrVTmfOQ56GmPPassDJO4zPAjh1y7sekZENq84l1WgWjQxCXIaclpr5C9MN9Dvbqp9p/bYNmPnpNohZt76aT/gxHp9kzPhGOlbp8Kpv2d4+h/gQr6hPdsvuFaVLw/GOgr0zdZE3HOaNLM8gAWweW2wdRbeKOMY1Y6LmOgNbxIn1gA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=ZGQuW9+dkHZh6Tpwky9V38WCBfRDJO4wWC7XlFezq/E=; b=odptxlw1f+zx/uwIKDniW0DtTgB7l3kyVQPNHsJggxPz6opXjH0S2TuiQzBRSVWFUlATdnAV+8F7MrjtYQrRMI4MDs9CAX530QvdQwAIRUvR/DzXu7hkAP+6poGkhkNB01XTfVuzFEReVFuCmPOjW7wDavqp9kG6lxP/MfmKPfOqNG9oupnBgPqdk58cZaydjUxTlPTwI1amBRxwQy9vapNEYDKHhlYqkIwQ6r16OInC0Fafc5+/CCBbq1ZXg6a2Lwb3XQLCaTBuzAu16smzeqW0RFXh4pTv93SSTpX8Z41neUiXN2RUPt6xX8K4V7TucU9NGgxWSv8BKTjZ2Xh66w== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 40.67.248.234) smtp.rcpttodomain=suse.com smtp.mailfrom=arm.com; dmarc=pass (p=none sp=none pct=100) action=none header.from=arm.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=ZGQuW9+dkHZh6Tpwky9V38WCBfRDJO4wWC7XlFezq/E=; b=CGHc4FaueZKdRUXSb/zGHng5IX+IJeKcSErQ3NBW9pNAVbSw0rTsCqXcAdE0LRCRy1XQQicEIVLFbUsQCh/UPcpF0u4JlBL8YSpy/LAO9v0OAk7Ip4s4I5bMmzmDN6/7i6zF1gezy154w4YFGWNxF5y3WBciAmetyuYuRrZUrrI= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 40.67.248.234) smtp.mailfrom=arm.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 40.67.248.234 as permitted sender) receiver=protection.outlook.com; client-ip=40.67.248.234; helo=nebula.arm.com; pr=C Message-ID: Date: Wed, 28 Jun 2023 13:40:38 +0800 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.11.2 Subject: Re: [PATCH v3 21/52] xen: introduce CONFIG_HAS_PAGING_MEMPOOL Content-Language: en-US To: Jan Beulich CC: Stefano Stabellini , Julien Grall , Bertrand Marquis , "Volodymyr Babchuk" , Andrew Cooper , George Dunlap , "Wei Liu" , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Chen , References: <20230626033443.2943270-1-Penny.Zheng@arm.com> <20230626033443.2943270-22-Penny.Zheng@arm.com> <3115e211-7ed6-32ea-892c-a133b101dd31@suse.com> From: Penny Zheng In-Reply-To: <3115e211-7ed6-32ea-892c-a133b101dd31@suse.com> Content-Type: text/plain; charset="UTF-8"; format=flowed Content-Transfer-Encoding: 7bit X-EOPAttributedMessage: 1 X-MS-TrafficTypeDiagnostic: DBAEUR03FT051:EE_|DU0PR08MB9463:EE_|AM7EUR03FT004:EE_|DU2PR08MB7359:EE_ X-MS-Office365-Filtering-Correlation-Id: 2c958cca-cc91-48ce-166d-08db779a3f14 x-checkrecipientrouted: true NoDisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: u0g6n1PzlEMW43qG6Lq211MCwyJSaZ1RkW1Qdn++8f4gYLjJzw3VTUzelL8//V0yFQDxOLQTRjN+G4wTd8cLn3zaDGfmpV+pd/gbcr5iE3xRh5na3J0SNx3SAa7J+wHafwmokcXHxTQ75MezKREvPDhL0Uja0MzmrJWbNjKc9wwLtcVc/w87e45dXM0BCL3Ta2pmgQ+VOX/m4las7qqU2MX02ha5IL1cxf4n3ZlZMbJXc/m6zMnSnj6H2qNT8y3rRXe3xJ0N2o2yjMgjrrPZNclqdIx9e9wh07lhZFmVEM1gm+w66avatY43UziVlOqVxWSQ0a3yJeVnmKLcC5XzDE1ILb34PuwPuW3AyCw7j+W7wbUoljkhWutEIYREy7w3pILetyPb8M3R984lydxH5qOQNGyOCFrzV8Q7wBw3I9Y8GGtjQOa/nHWoc+to9AwnOnLNV+5GRiiXzISI7sf4OeR4cwgym+fFsCWTt9uLokPDp5zgrBvU3h+0evdeWTVQ586Pn3RuDzDv48rqCgDVwpt4cAjNBiYZLJnnRLmW/Zj7oI92xi+mA/3PwHlHiiTS0VnibUnnsaT05+QR3XN+QFHgk+/mfY3tcPx+mSiOmzS9cra/fa7WXtoT5REUjuY4P1PzNlWmQoYgLdkKr20u77Fh7FjrMBJ1AayKwJh7Cinj0D0E1MPXYmN86ahu+fa9GOmYY6i0kKoFQn7HFNX/TYO/3+m84eEQisfbmAfIMIZw26KTAqVRHB/U7sJTTtVsMq6KToxBcU3QEHAHJJ607qPFLr3dklVIPJgDfRK0Ut0awxA/ZSzj9oowOQOehZk3TJum0sHtntiQfFtnyjQxIQ== X-Forefront-Antispam-Report-Untrusted: CIP:40.67.248.234;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:nebula.arm.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(376002)(396003)(136003)(346002)(39860400002)(451199021)(40470700004)(46966006)(36840700001)(82310400005)(41300700001)(36860700001)(70206006)(47076005)(26005)(54906003)(426003)(2616005)(336012)(478600001)(16576012)(186003)(53546011)(2906002)(356005)(44832011)(36756003)(40460700003)(5660300002)(31696002)(81166007)(70586007)(82740400003)(8936002)(40480700001)(4326008)(316002)(6916009)(86362001)(8676002)(31686004)(3940600001)(43740500002)(36900700001);DIR:OUT;SFP:1101; X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU0PR08MB9463 X-MS-Exchange-Transport-CrossTenantHeadersStripped: AM7EUR03FT004.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: 5cf1719e-9c5f-49b2-9a6d-08db779a3741 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: zjExZX5bp8ZFhm2wMRvm4I6pvWV6GxFliRfCzSoTXC2BxQY2KH8e0tuWxQv4l6Yez6b1TVDQcSbGyrCIVew5urIu9FEeOSY0YK53Znf+me0PaJha64CZjgFD96wB7aBg3i1YEyR+d5hjw4M22FVpUbdrIccJHmO00vvp/eC40Ntp8cQLf2cU/pA/VT1iHYnLYHjsNroYHVKuhgQGYeWNlSQrstudWHCl8BCOL6uKMDabipRJU8W9ClEzEAiQDSCemtH7UlqRz1fBWltsjIjI8NMsKY2LizX8Mq4jqpOHg/Ks47wkUW8CIi/D1s3KOztVcODUI+a9KLJeVC6P1o5/rXsWgi1qFZDawa3GJIiZzqyQyGiGGvY9OybjwKd0tVN24SbkMPKOnnpOPkbuRiusuePNELMlUa9Q2XnvIDtcBF0QTtAkhsJA5/6gicSMDtHgFeH1YPwK96JGrE5/dlG8QJA5OuqReMqKhwrIWrN+SO3NMJnJL2klDVVycWfpngJShnnsZ6OdBLvTpFAnlmiw/9pCo8dT+0gPGWg5Nl/Ui2nWaOd7hrz4V+aY6eBdZuAvB/q3ixdePU7AdzYvtqo1dcR0QCCAVsmAAAKUfBNSW9T/4KNAmgm49UNFtPOKIvJVtKepw9akaU9nKIq0Oke5l2K2ihh1F0Cl8CjzfG5Bp+vl4WipswVcunlV+sNKOw87L5Gj7ZkCSaBvHl5YeJimbZA4e3JFDazRA0tJiUTBnn0uJUlg3AryQ3LWbvDcvYLn9NpYPuIocRxpW5WiPAh53Iv2cJgNYR2Qc5UaEO/CK7bGA8pt30zAAXEep4zxI55j X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230028)(4636009)(396003)(136003)(39860400002)(346002)(376002)(451199021)(36840700001)(40470700004)(46966006)(31686004)(82310400005)(36860700001)(26005)(36756003)(6862004)(44832011)(70206006)(86362001)(41300700001)(40460700003)(40480700001)(4326008)(81166007)(82740400003)(31696002)(316002)(70586007)(8936002)(8676002)(5660300002)(47076005)(53546011)(186003)(54906003)(2906002)(16576012)(426003)(336012)(2616005)(478600001)(3940600001)(43740500002);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Jun 2023 05:40:56.9382 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 2c958cca-cc91-48ce-166d-08db779a3f14 X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: AM7EUR03FT004.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU2PR08MB7359 Hi Jan On 2023/6/26 15:01, Jan Beulich wrote: > On 26.06.2023 05:34, Penny Zheng wrote: >> --- a/xen/common/Kconfig >> +++ b/xen/common/Kconfig >> @@ -54,6 +54,9 @@ config HAS_IOPORTS >> config HAS_KEXEC >> bool >> >> +config HAS_PAGING_MEMPOOL >> + bool >> + >> config HAS_PDX >> bool >> >> --- a/xen/common/domctl.c >> +++ b/xen/common/domctl.c >> @@ -844,6 +844,7 @@ long do_domctl(XEN_GUEST_HANDLE_PARAM(xen_domctl_t) u_domctl) >> ret = iommu_do_domctl(op, d, u_domctl); >> break; >> >> +#ifdef CONFIG_HAS_PAGING_MEMPOOL >> case XEN_DOMCTL_get_paging_mempool_size: >> ret = arch_get_paging_mempool_size(d, &op->u.paging_mempool.size); >> if ( !ret ) >> @@ -857,6 +858,7 @@ long do_domctl(XEN_GUEST_HANDLE_PARAM(xen_domctl_t) u_domctl) >> ret = hypercall_create_continuation( >> __HYPERVISOR_domctl, "h", u_domctl); >> break; >> +#endif > > While I'm not outright opposed to doing it this way, I wonder > whether it wouldn't be better to leave common code untouched by > making arch_get_paging_mempool_size() do what you want done. > That's part of what arch hooks are for, after all. > Sure, I'll try. > Jan From xen-devel-bounces@lists.xenproject.org Wed Jun 28 06:30:43 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 28 Jun 2023 06:30:43 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556321.868757 (Exim 4.92) (envelope-from ) id 1qEOhI-0002sD-7r; Wed, 28 Jun 2023 06:30:36 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556321.868757; Wed, 28 Jun 2023 06:30:36 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEOhI-0002s6-3Z; Wed, 28 Jun 2023 06:30:36 +0000 Received: by outflank-mailman (input) for mailman id 556321; Wed, 28 Jun 2023 06:20:41 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEOXh-0001ul-43 for xen-devel@lists.xenproject.org; Wed, 28 Jun 2023 06:20:41 +0000 Received: from outbound-ip7a.ess.barracuda.com (outbound-ip7a.ess.barracuda.com [209.222.82.174]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id cf1f6c1a-157b-11ee-8611-37d641c3527e; Wed, 28 Jun 2023 08:20:37 +0200 (CEST) Received: from NAM04-MW2-obe.outbound.protection.outlook.com (mail-mw2nam04lp2177.outbound.protection.outlook.com [104.47.73.177]) by mx-outbound41-38.us-east-2c.ess.aws.cudaops.com (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NO); Wed, 28 Jun 2023 06:19:56 +0000 Received: from LV8PR19MB8249.namprd19.prod.outlook.com (2603:10b6:408:191::12) by CO6PR19MB5353.namprd19.prod.outlook.com (2603:10b6:303:144::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.26; Wed, 28 Jun 2023 06:19:52 +0000 Received: from LV8PR19MB8249.namprd19.prod.outlook.com ([fe80::a05d:58f5:99dc:75ef]) by LV8PR19MB8249.namprd19.prod.outlook.com ([fe80::a05d:58f5:99dc:75ef%4]) with mapi id 15.20.6500.045; Wed, 28 Jun 2023 06:19:52 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: cf1f6c1a-157b-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=eoMdz46ehLEsEusQRqidDoSR6Wy2gXJiu1/+e76Vwuor8pJ0/QRjkASvMhbg3OZIWWpHOzQn+aRFGAq3lgYqut3Pp4USIG5PzLQyglr+iRqYHI+NJjLokB3gdlxOF81zjLgGqDb41h8P8sa+sPDfUtjCmgjkwoMD+zu/3Izfhgb+G0H3+VcztNUgPtuJoGTDbBQ7rTZ+BDa0csRxd/qmmWRfeggr3U69shHBo1oFJValvFkK2+YiqFzSmUkkZy+HIK3n+3le97qUsPadTqbM8PnoEu8xxkGfk1TpbSOoFa6JqMtbk0g7nloazi1D6Cr6CfNFVFj5bJ7DdxXV7u+moQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=Wpkr5HQR/3UKw9Mrv3wM4ePxX7APx1l1v6UxLpgpJBo=; b=oRcYaXBBK8SPIP/G1TIP43F5GBilWa5WXeRpWzrT8KQMo5oF0qTlN9V5aacUzgrIWmqj89q1wWOEeWQN44Z4KDtY2Dakztnr+sg6z08Bot8J2Wkxuclah+JarMHTXhTPl3hFCgtOIvYieoAnAbPJKLQq7ce8WOalFmZCW60BqYpA3J5JJitONAUZA+yJ57zlXsMLlWD9rbS1qIcSnYUkXsNm2XwVUesmXVkufUAMkwFmVdyg+0GvDrwAiKxLv0PfTjlAZSG0QLANnJnKSGn7ld611SFpW/QeP0ckrR8C+37GBxe5Sk1Y7tnmP8oXp0YrtRcrbLkTkDqgQ4VOLv+5lA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=ddn.com; dmarc=pass action=none header.from=ddn.com; dkim=pass header.d=ddn.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ddn.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Wpkr5HQR/3UKw9Mrv3wM4ePxX7APx1l1v6UxLpgpJBo=; b=nvZ6CV3CRdv0FzgoJT09vXaDS3nfSuJPaGWhp7htdz9ZadeTRn8OxVeHHmww8DjVGNmPgU7VTXAMkchZ7cWa4Pfin6K4nENtdPyVvCJ8vKvSsGQcuhiMnPc+tZTQpS0wc/bCcBsr5o3tMY1vqnHDefi7MHX9jkuR63pHKJHO8/Y= From: Roman Bolshakov To: =?utf-8?B?UGhpbGlwcGUgTWF0aGlldS1EYXVkw6k=?= , "qemu-devel@nongnu.org" CC: "kvm@vger.kernel.org" , Marcel Apfelbaum , Peter Maydell , "qemu-arm@nongnu.org" , Richard Henderson , Alexander Graf , "xen-devel@lists.xenproject.org" , Sunil Muthuswamy , Anthony Perard , Stefano Stabellini , Yanan Wang , Paul Durrant , Reinoud Zandijk , Eduardo Habkost , Cameron Esfahani , Paolo Bonzini Subject: Re: [PATCH v3 01/16] MAINTAINERS: Update Roman Bolshakov email address Thread-Topic: [PATCH v3 01/16] MAINTAINERS: Update Roman Bolshakov email address Thread-Index: AQHZpsMheyi/SuGliUuOPtsU0HotzK+fw5cA Date: Wed, 28 Jun 2023 06:19:51 +0000 Message-ID: References: <20230624174121.11508-1-philmd@linaro.org> <20230624174121.11508-2-philmd@linaro.org> In-Reply-To: <20230624174121.11508-2-philmd@linaro.org> Accept-Language: ru-RU, en-US Content-Language: ru-RU X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=ddn.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: LV8PR19MB8249:EE_|CO6PR19MB5353:EE_ x-ms-office365-filtering-correlation-id: 363550ed-5cd1-490f-6c65-08db779faedc x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: OxR44FwCmEgoxDRsdH/NgqalO+BB/vao4G62Fuc8gDS+M1pdiBlIgJaZe6XrzWdOyUx2P8SEDI/0drTc4Z+BZ6TtAykS9QIYwREXNa8KbTvVnM2QODgO+jok80rlopvblukfy5LTQgvXYlfTC/8sEK4IqQwB1X287Y5XAJAQUSqVZ41mlEZFdKSaWi3VZ2LMjjlJhSRjs/fjNGTMuEIG+upmUOypl1fSEtmZE547FQJlE3mG+ywzc0Qpv0dwEsDD/rsyDQLSjppRlBVLWwRbV3yIoeIyfj4WM0gE8Wmkwk+rc0oqroHJf0D8MuctvCFjTW3ZazdcvTYV80TO8EngcLqT7eZ+Ex5QJ4LMJ15d+QlgKV8D348lQ+0k5Bv+PYecwhaZ7IFGuUeKMlqYBV8FuoSpJye8PKWyfboyBaORCY0n944eYflmnvX1fqP01MQh0rAJ6jii2yv9E7QCD1tyoBKuE35Ay6dMJLsltWYUY6Qd9Ms1PQzHgqjq7bQfCPHIHQWUz9rMi3SFw5f9XHeB21zgewuRLDsTQe5KepBbUX+OTFzydR/V3aUPmPSyy6LIooi+nTfJM7HSc3pnmQvoSLaKSVOJDDFv2qyWYTxPC30cqmP9AIerWF2B2MnqSFrOh4MsyqD3+6bMN1GVFogoZg== x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:LV8PR19MB8249.namprd19.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(366004)(396003)(136003)(39850400004)(346002)(376002)(451199021)(6512007)(66446008)(31686004)(38070700005)(26005)(66556008)(66476007)(122000001)(5660300002)(7416002)(66574015)(86362001)(8936002)(41300700001)(4326008)(316002)(8676002)(66946007)(76116006)(64756008)(31696002)(38100700002)(110136005)(966005)(36756003)(6506007)(6486002)(186003)(2906002)(15650500001)(71200400001)(83380400001)(54906003)(2616005)(478600001)(45980500001);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?RVNRcitVREYwbzBneEdlelhUT2JocXM5MG9nSWI1c0d6RnZ3SmR1c3ROSDEx?= =?utf-8?B?aFVIbTk4M0h6QTlXSCtOZVk5ZlZ4RTRrbDIzUkRpUXlZQ0F1L2R0RXZPaUNN?= =?utf-8?B?TXBjSlp3WFRUcmR5QmQ2OGJkZ1Q3akZxWVBuN0t4MnlQc0RrNXlLUm5vL2o5?= =?utf-8?B?Z3dJS3NjVGF6NVdxWVBtaGhxMjlaME4ydjlLTEtxZjMwMjU1SkpaWEVGNlhX?= =?utf-8?B?TG1WUmFab1N2K3NNUVBldVNTdWRTZDllU2c5Z2JWVGdzV1Q3eUNsWWY3cTZG?= =?utf-8?B?YWxwZ0xOUEgwYnJyVGxoWFBNOXZXZGJQaE5UNm93Zk9MYk5XZ2Q3dUFLZ2M1?= =?utf-8?B?V0R6bEx6bXE0TVhhWTR5N05IMVBlc25uSlpDVWZKb2pyOHdkT1NCOEdBanhw?= =?utf-8?B?WkhhTExCMktoRGVrRlVCMHNVYnRySFc2SWpteFl2MEZLVEVENzc4SjJGU2Fl?= =?utf-8?B?ODBHNlZtSlNGS1RVRDNJdjZrL05JUUlJTkdPNmJ4ZjF1OTVoSm1WbCtuaUYx?= =?utf-8?B?QndRRmFKUVUvVmRLREV6WFJ4T2xuQ2R2djM0bWNPL0JHL2ZZMjgwbGx3T3dH?= =?utf-8?B?NHJLbFNUUGpBV1psSEZLUm1OWjY0TnQzWTMwM1lMZWp1YStNUzc4QU9wci9y?= =?utf-8?B?Tlc2TW40QzNja01RWGduY0ovQmJwWndDdXNpdlBKdTZ0RnhYYm8rQzZBZU1u?= =?utf-8?B?M3VhamxOSWhtQnpLaVZVelAxbzNHeE9laTRHWlMrM2hRZGxiRGZCUFlCb1pJ?= =?utf-8?B?clVMa3NFSjF1c1ZZbE44NVJyL2sycDk0dnQ3QytMc3VkTHZybzRsTjNBa2Q3?= =?utf-8?B?Uk9WS05DeTFPdVpxTGZPbmNBS25KWVNML1FVSlpmZVFFMFg1YktkMHc4cG9X?= =?utf-8?B?d1NFMXlxNDUvY0Nyck90WnBmditLTmxUS1kxazdBQUNYNW9JVEhOS3o5R0s2?= =?utf-8?B?ZHNvSXJUWXdCWGVHYmdoODd2ZFlxMTR0TjdSdGI1eW9QQWE2eUszWHB6a09S?= =?utf-8?B?MDhId1ZBNzN6VWVNOFZVTXVKYUk0YVBRb0VqelFIL29NNDJrL0cwL1BHeTNw?= =?utf-8?B?NVNTUlJEWXZ1cUphdjRudEpudFI0R3l5MVI1RkdZTWJBZU9NQ042VG5MWGlh?= =?utf-8?B?SDJiaTdJRU1ObkZkQlQxSUVKOUl5alJxMjh1MGswMDRCTFZ3dVRmekJjZ0ND?= =?utf-8?B?Y1cwcUNXL1hkVEFxUzExdmwyV0d3bktRY0FDWVczVFdIdTFUUzNuZTBjV1dL?= =?utf-8?B?cGI1MGdtTUhwajN3Z3hiem81L0tJaFlkYVVtTlpkSGlXS1l5TVozUVFwTkxB?= =?utf-8?B?RTZJSW9McndqZXV2NHNjaFJWNk9zdTZyRi80YUphbW9Ja1hCMXN4R3VCTTlw?= =?utf-8?B?N3NyVHNiZ3FidGE4dERMbXNwS3JBN1hBdWozUHBZWSthaG85cWVUUTkvVXBW?= =?utf-8?B?QSszTDhGclFPR2NGd2dVZnk4L0MyQXpNRGRSNE5TTG92WTJjM3JlN0dPaDJH?= =?utf-8?B?VXlNeVVFc1NjcURpVmVLT2kwOUtONnlXcGpjUUZGSmM4dUhWYXlKdmZzb1Nq?= =?utf-8?B?QVpKSEV3eFFIWmtWd1BzMnEyZnBQZVdFQmpBdHNMdXVCRFpVVXVSdmtsVlZL?= =?utf-8?B?VkV2MTJYYmtKeGpTWEp5N29GT25od2lnckFnOE1Ic1cyRTJWb2EvaEpBQzdD?= =?utf-8?B?SzdMSFlWOG9rVjBaYnRrK1BuNVpvang1OERINVB0MXV2WTdXK000RDY1Zzdk?= =?utf-8?B?VE1jWmNvQzdCR214SHBrWU1wMFVpNUM0Y0tJNGpSUUNiWXpZaTlqeHV2aWhN?= =?utf-8?B?SmI0T3RXeE5zczdLM1FyY1lOSFRJUXBCVGZiS1RPTE9EVTZlUVo2M1daeEVT?= =?utf-8?B?OTVOWDZTamF2V0kzK05mVWRGQzkyejREbHkwR1VGb0NXaXhzZzNFU095TW5X?= =?utf-8?B?VjNJZ0hVSE5LeDhZZDRvRm51cUhBQ1F6eVFsc3E2bHB4bFYwRVhHNjhZOFB4?= =?utf-8?B?MkNmZTlRMzZ3WC9uTy9wTTdYOVdJWllYNFkxdi8zVFNSc3VyM2JQVkp2Q0R4?= =?utf-8?B?MlBFemZzOUIyL3hRN1E3ajVBWHNsZEYxdHdNeU5XU0NhMjNGMlJMR3JHSUJK?= =?utf-8?Q?ovVI=3D?= Content-Type: text/plain; charset="utf-8" Content-ID: Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: =?utf-8?B?dEpOWkR4ZGxtdVpoVTlXNjUxQzE5Q1dycUpyQ3pPWHNjc01NRllIa25LZ2Fq?= =?utf-8?B?K3kyMk1zazR2di8vVE84enZuTXl5cVBtOTROeDM0aUUrZGRqcnNyVzFzWmVP?= =?utf-8?B?eE9mS3czMmJzVU55ZGkzYVZNYTlIWXFzRkVKRXIvZHFwSzBDVGN4SjlxWGpV?= =?utf-8?B?K2lKU1Bmc3ZBdjg0ZDhXVWFmMDBDTkQ5ZDJmdWZhbnZrTUVtblNaWFVxNG1q?= =?utf-8?B?VzF2bmg0V3U5SURUOFd4cUJpSXVRZFQ2d3RwV2RZR2daYXdrWk50Ty8rU2Nm?= =?utf-8?B?UHY3SnNDRHJ5aHFrdElqTC84bTYvLzR6TWpvV01yL21VRUtLRThhZXRsaUV4?= =?utf-8?B?clBuTmJLdndQT1lPL29ISFhXamxiN2pDbWY4aEd4QWpTS2tTQWJybnZGbG94?= =?utf-8?B?aENBVTdQbXJlQXBJdmRWME8wcHpxRnZtT1ZFU0NNVWZJMHgvZTJzS2lxdlZ1?= =?utf-8?B?ZkJwNTJZMm84NnZXakdEcm5PSFNReVkxMHJxQlVLTnl1T0h6cVdENFd1dEdM?= =?utf-8?B?THJNR3A0M2ZtME1qeXhncG1HU3VOV054NHlGZW5BdEp2b0xsTTg3SmVoREZx?= =?utf-8?B?WmdYOWJPTGRTVVZJWEMreWdSMnBWQkoxODdHay90YURaV0d4ZjdPQnZnWlRj?= =?utf-8?B?YXhOZnNXUUg5cjRPWU9pSmtvVGVYYzFNazBIRDlUL1p6a2xBMGNvdGFoY2Ni?= =?utf-8?B?ZWxMRHc1NDdwWnRqcEJXb3BDeGxxbC9WWFI0SCtIVSt5SFBNUStmZXJMNXNP?= =?utf-8?B?SU5wSHRCc29IYlU0NTEvMmZyRmxrR21LTWtUQjJtTFVPeXl4R1FuWG1HZUxh?= =?utf-8?B?SGthcEp4WlBjZXlOV1FHYUlWam9hZk1NYjh4bEVhM3NadmxTWnNWM2VxYnNi?= =?utf-8?B?OVJ2NVVhdG8xVGRVMU9kU0UxQ1V6VGw4bWZVUmNtSkJvWHRiRzRlb2RSN1NN?= =?utf-8?B?bmQzOUdja3k1RlhDcCthNE4yOENPbEhQazJyZDBtSGNDMm50bENmdnlGMVdM?= =?utf-8?B?MW82VC9USHJuMzZXYnJwaHdxdmlQL25OemxuNnY1OXpwM2JWQnlOT1dkdGlQ?= =?utf-8?B?b2Z2eGZGcFltWDh0TEFXYlVQVVpwMkhNSnFBcEJCZ1JNVlkvUll0THVoRUF5?= =?utf-8?B?eGxBRWt1eTdIbEJwZGZsbURsdGdrUW5TdHBhZEE1L0VEOGZmcFZZZHFpblRo?= =?utf-8?B?UnE5eFQ2ZnZGb2t6TDMwZXBZWFRhLzZBbUpqVTVsQUJVYWNyaGF5dnlMNVRY?= =?utf-8?B?c05vMnRVYkdTZmlmck55UEdsRE9ReXNkUzloL1ppdXF5SVIvV1MrNC95NWpo?= =?utf-8?B?Qy9md3Y0OWQ3dWlsNjA2TGxRT09YVnI5N2kwSU5Xbno4Z3ZjUjB6aWx1SytT?= =?utf-8?B?TDREVUNiR1I4RXZQTHF3QnhWZkZWWmJuNEd2Skl3WEIxR2NibjQ4a0tJS0Jl?= =?utf-8?B?cnJHRnpXdHUzMXFJN3BJd1FQaXcrWGcrZ25HZnlod0dzOUlibFF0TCtoOG1X?= =?utf-8?B?cFgrV0lRMlpCNlpGREN4cW5EaStHNzFwWXROeFRaT1BuYUFTRlRzMEpQYkl4?= =?utf-8?B?Tjg5WjVHVmNodmpDVnd6aVJybmxWMFFwSGZZeTFvQlcxdXg0S1V4bGZ2TlRu?= =?utf-8?Q?fnNWRgVBGcTsqP3Et6w94esh1XXYp2IEiBfVG1eylizk=3D?= X-OriginatorOrg: ddn.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: LV8PR19MB8249.namprd19.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 363550ed-5cd1-490f-6c65-08db779faedc X-MS-Exchange-CrossTenant-originalarrivaltime: 28 Jun 2023 06:19:51.9759 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 753b6e26-6fd3-43e6-8248-3f1735d59bb4 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: txC4pu41dSOMYjTTPu/qICBOQjD5uW9hn4P8EKJ3TvNtIWtgc9OV71094kj45jtcMXrwVzECiMpc4uWp4bfQ5A== X-MS-Exchange-Transport-CrossTenantHeadersStamped: CO6PR19MB5353 X-BESS-ID: 1687933195-110534-5423-89471-1 X-BESS-VER: 2019.1_20230620.2205 X-BESS-Apparent-Source-IP: 104.47.73.177 X-BESS-Parts: H4sIAAAAAAACA4uuVkqtKFGyUioBkjpK+cVKVkYGRoZAVgZQ0MAwJckyKSXJNC nZzMzCwsIsJdHIwCIx2cg4KSUxzcJYqTYWADYob8lBAAAA X-BESS-Outbound-Spam-Score: 0.50 X-BESS-Outbound-Spam-Report: Code version 3.2, rules version 3.2.2.249133 [from cloudscan16-57.us-east-2b.ess.aws.cudaops.com] Rule breakdown below pts rule name description ---- ---------------------- -------------------------------- 0.50 BSF_RULE7568M META: Custom Rule 7568M 0.00 BSF_BESS_OUTBOUND META: BESS Outbound X-BESS-Outbound-Spam-Status: SCORE=0.50 using account:ESS124931 scores of KILL_LEVEL=7.0 tests=BSF_RULE7568M, BSF_BESS_OUTBOUND X-BESS-BRTS-Status:1 MjQuMDYuMjAyMyAyMDo0MSwgUGhpbGlwcGUgTWF0aGlldS1EYXVkw6kg0L/QuNGI0LXRgjoNCj4g ci5ib2xzaGFrb3ZAeWFkcm8uY29tIGlzIGJvdW5jaW5nOiBVcGRhdGUgUm9tYW4ncyBlbWFpbCBh ZGRyZXNzDQo+IHVzaW5nIG9uZSBmb3VuZCBzb21ld2hlcmUgb24gdGhlIEludGVybmV0OyB0aGlz IHdheSBoZSBjYW4gQWNrLWJ5Lg0KPg0KPiAoUmVvcmRlciBUYXlsb3IncyBsaW5lIHRvIGtlZXAg dGhlIHNlY3Rpb24gc29ydGVkIGFscGhhYmV0aWNhbGx5KS4NCj4NCj4gU2lnbmVkLW9mZi1ieTog UGhpbGlwcGUgTWF0aGlldS1EYXVkw6kgPHBoaWxtZEBsaW5hcm8ub3JnPg0KPiAtLS0NCj4gICBN QUlOVEFJTkVSUyB8IDQgKystLQ0KPiAgIC5tYWlsbWFwICAgIHwgMyArKy0NCj4gICAyIGZpbGVz IGNoYW5nZWQsIDQgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkNCj4NCj4gZGlmZiAtLWdp dCBhL01BSU5UQUlORVJTIGIvTUFJTlRBSU5FUlMNCj4gaW5kZXggN2YzMjNjZDJlYi4uMWRhMTM1 YjBjOCAxMDA2NDQNCj4gLS0tIGEvTUFJTlRBSU5FUlMNCj4gKysrIGIvTUFJTlRBSU5FUlMNCj4g QEAgLTQ5NywxNCArNDk3LDE0IEBAIEY6IHRhcmdldC9hcm0vaHZmLw0KPiAgIA0KPiAgIFg4NiBI VkYgQ1BVcw0KPiAgIE06IENhbWVyb24gRXNmYWhhbmkgPGRpcnR5QGFwcGxlLmNvbT4NCj4gLU06 IFJvbWFuIEJvbHNoYWtvdiA8ci5ib2xzaGFrb3ZAeWFkcm8uY29tPg0KPiArTTogUm9tYW4gQm9s c2hha292IDxyYm9sc2hha292QGRkbi5jb20+DQo+ICAgVzogaHR0cHM6Ly93aWtpLnFlbXUub3Jn L0ZlYXR1cmVzL0hWRg0KPiAgIFM6IE1haW50YWluZWQNCj4gICBGOiB0YXJnZXQvaTM4Ni9odmYv DQo+ICAgDQo+ICAgSFZGDQo+ICAgTTogQ2FtZXJvbiBFc2ZhaGFuaSA8ZGlydHlAYXBwbGUuY29t Pg0KPiAtTTogUm9tYW4gQm9sc2hha292IDxyLmJvbHNoYWtvdkB5YWRyby5jb20+DQo+ICtNOiBS b21hbiBCb2xzaGFrb3YgPHJib2xzaGFrb3ZAZGRuLmNvbT4NCj4gICBXOiBodHRwczovL3dpa2ku cWVtdS5vcmcvRmVhdHVyZXMvSFZGDQo+ICAgUzogTWFpbnRhaW5lZA0KPiAgIEY6IGFjY2VsL2h2 Zi8NCj4gZGlmZiAtLWdpdCBhLy5tYWlsbWFwIGIvLm1haWxtYXANCj4gaW5kZXggYjU3ZGE0ODI3 ZS4uNjRlZjlmNGRlNiAxMDA2NDQNCj4gLS0tIGEvLm1haWxtYXANCj4gKysrIGIvLm1haWxtYXAN Cj4gQEAgLTc2LDkgKzc2LDEwIEBAIFBhdWwgQnVydG9uIDxwYXVsYnVydG9uQGtlcm5lbC5vcmc+ IDxwYnVydG9uQHdhdmVjb21wLmNvbT4NCj4gICBQaGlsaXBwZSBNYXRoaWV1LURhdWTDqSA8cGhp bG1kQGxpbmFyby5vcmc+IDxmNGJ1Z0BhbXNhdC5vcmc+DQo+ICAgUGhpbGlwcGUgTWF0aGlldS1E YXVkw6kgPHBoaWxtZEBsaW5hcm8ub3JnPiA8cGhpbG1kQHJlZGhhdC5jb20+DQo+ICAgUGhpbGlw cGUgTWF0aGlldS1EYXVkw6kgPHBoaWxtZEBsaW5hcm8ub3JnPiA8cGhpbG1kQGZ1bmdpYmxlLmNv bT4NCj4gK1JvbWFuIEJvbHNoYWtvdiA8cmJvbHNoYWtvdkBkZG4uY29tPiA8ci5ib2xzaGFrb3ZA eWFkcm8uY29tPg0KPiAgIFN0ZWZhbiBCcmFua292aWMgPHN0ZWZhbi5icmFua292aWNAc3lybWlh LmNvbT4gPHN0ZWZhbi5icmFua292aWNAcnQtcmsuY29tLmNvbT4NCj4gLVlvbmdib2sgS2ltIDx5 b25nYm9rLmtpbUBtaXBzLmNvbT4gPHlvbmdib2sua2ltQGltZ3RlYy5jb20+DQo+ICAgVGF5bG9y IFNpbXBzb24gPGx0YXlsb3JzaW1wc29uQGdtYWlsLmNvbT4gPHRzaW1wc29uQHF1aWNpbmMuY29t Pg0KPiArWW9uZ2JvayBLaW0gPHlvbmdib2sua2ltQG1pcHMuY29tPiA8eW9uZ2Jvay5raW1AaW1n dGVjLmNvbT4NCj4gICANCj4gICAjIEFsc28gbGlzdCBwcmVmZXJyZWQgbmFtZSBmb3JtcyB3aGVy ZSBwZW9wbGUgaGF2ZSBjaGFuZ2VkIHRoZWlyDQo+ICAgIyBnaXQgYXV0aG9yIGNvbmZpZywgb3Ig aGFkIHV0ZjgvbGF0aW4xIGVuY29kaW5nIGlzc3Vlcy4NCg0KSGkgUGhpbGlwcGUsDQoNClJldmll d2VkLWJ5OiBSb21hbiBCb2xzaGFrb3YgPHJib2xzaGFrb3ZAZGRuLmNvbT4NCg0KVGhhbmtzIGZv ciB1cGRhdGluZyB0aGUgZW1haWwuDQoNCg== From xen-devel-bounces@lists.xenproject.org Wed Jun 28 07:11:01 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 28 Jun 2023 07:11:01 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556327.868767 (Exim 4.92) (envelope-from ) id 1qEPKB-0007KH-3f; Wed, 28 Jun 2023 07:10:47 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556327.868767; Wed, 28 Jun 2023 07:10:47 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEPKA-0007KA-Vk; Wed, 28 Jun 2023 07:10:46 +0000 Received: by outflank-mailman (input) for mailman id 556327; Wed, 28 Jun 2023 07:10:45 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEPK9-0007Jy-1J; Wed, 28 Jun 2023 07:10:45 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEPK8-0002o3-LL; Wed, 28 Jun 2023 07:10:44 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEPK8-0007Ui-8t; Wed, 28 Jun 2023 07:10:44 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qEPK8-0002IP-8W; Wed, 28 Jun 2023 07:10:44 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=sYF8wrSNSBf4DA6p108FfJQvxkLGm5ahNPPMq4z/5rI=; b=vq8lhDfrH6wdycnD1ogNQQeCeY j2t23pFD3rn7MVojNjD52aIvGtlpXbV24VU+0dyKnMqgnnLdDFJZ6hAcmfeNefkr2M9+YEUpqQCyu laGqjrRa8wE/Q18SWqUHcOwvCRaP/B8dgAyaYM5zCqjOwu+BtX2WH4HEXdwHwR8eWqtA=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [ovmf test] 181620: all pass - PUSHED X-Osstest-Versions-This: ovmf=44a3d93af3fc3f3762d0e1f48137a370610dab2b X-Osstest-Versions-That: ovmf=1a39bdf2c53858ebb39e6de1362203c65c163c63 From: osstest service owner Date: Wed, 28 Jun 2023 07:10:44 +0000 flight 181620 ovmf real [real] http://logs.test-lab.xenproject.org/osstest/logs/181620/ Perfect :-) All tests in this flight passed as required version targeted for testing: ovmf 44a3d93af3fc3f3762d0e1f48137a370610dab2b baseline version: ovmf 1a39bdf2c53858ebb39e6de1362203c65c163c63 Last test of basis 181616 2023-06-27 18:40:38 Z 0 days Testing same since 181620 2023-06-28 02:40:51 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Saloni Kasbekar jobs: build-amd64-xsm pass build-i386-xsm pass build-amd64 pass build-i386 pass build-amd64-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-i386-pvops pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Pushing revision : To xenbits.xen.org:/home/xen/git/osstest/ovmf.git 1a39bdf2c5..44a3d93af3 44a3d93af3fc3f3762d0e1f48137a370610dab2b -> xen-tested-master From xen-devel-bounces@lists.xenproject.org Wed Jun 28 07:41:38 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 28 Jun 2023 07:41:38 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556335.868777 (Exim 4.92) (envelope-from ) id 1qEPnv-0002Nb-Ik; Wed, 28 Jun 2023 07:41:31 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556335.868777; Wed, 28 Jun 2023 07:41:31 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEPnv-0002NU-Fr; Wed, 28 Jun 2023 07:41:31 +0000 Received: by outflank-mailman (input) for mailman id 556335; Wed, 28 Jun 2023 07:41:29 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEPnt-0002NO-Ho for xen-devel@lists.xenproject.org; Wed, 28 Jun 2023 07:41:29 +0000 Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.133.124]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 3015fd41-1587-11ee-b237-6b7b168915f2; Wed, 28 Jun 2023 09:41:27 +0200 (CEST) Received: from mail-lf1-f69.google.com (mail-lf1-f69.google.com [209.85.167.69]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-646-gnqE8qFxMz-gRsOfKocUdg-1; Wed, 28 Jun 2023 03:41:22 -0400 Received: by mail-lf1-f69.google.com with SMTP id 2adb3069b0e04-4edbdd8268bso4851652e87.2 for ; Wed, 28 Jun 2023 00:41:22 -0700 (PDT) Received: from ?IPV6:2003:cb:c715:ef00:fa40:f6df:a68d:a0e4? (p200300cbc715ef00fa40f6dfa68da0e4.dip0.t-ipconnect.de. [2003:cb:c715:ef00:fa40:f6df:a68d:a0e4]) by smtp.gmail.com with ESMTPSA id hn10-20020a05600ca38a00b003fba586100fsm3970092wmb.6.2023.06.28.00.41.18 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Wed, 28 Jun 2023 00:41:20 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 3015fd41-1587-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1687938086; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=SH32jNlN6Jqg7DPKFWcTzn8QudVshhtxY6DizRJx1h4=; b=Fz4IIN84tOBJ9RZKWNlH8ThOWFhnJfLbuwsl2Xfo5krBuqLiY7URpNFluNvdsrcjRRJ0eU stIKMPRgvt9x3w7Cm8O0r94bt6tT7e47xkdehSPo7poIxHuSreTOwN3e+xzeGUXrDeDapc JGnab5Xig7oS0pi/voMx65AXIp1Us7s= X-MC-Unique: gnqE8qFxMz-gRsOfKocUdg-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687938081; x=1690530081; h=content-transfer-encoding:in-reply-to:subject:organization:from :content-language:references:cc:to:user-agent:mime-version:date :message-id:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=SH32jNlN6Jqg7DPKFWcTzn8QudVshhtxY6DizRJx1h4=; b=W6RC6wYdEgExBBrzWVWDhukd1ie1/kUltjsFvIITHRJuQyNb2cO5NZOs5ix/ggnlFC 3C9oeg/BJLH3xJqgK7NfyIqImNeunX0fJTx6VnzBtGf7qdocHMT8bqGffjq6rXqU5h5P TEBUgUyAsqZYE5nU7bgxX/piCmN4Qc8eN3K6bOyHg6RsUAEzSov+OjoqVZNpx8AnEIN2 D2+fLrvPoDVnM5zy6R8S2VLV7wQZScrh50tSJr97h7dVSs2zGbQ3l4bv9XRXe/OOSx9g 6g8ZrcShlhNbap7OQzJBZQ+qiWycQLYFtCBuge02IZvWw3gzJu1fu63S3EkX1umSbzKi ao/Q== X-Gm-Message-State: AC+VfDyySJj+7i0Mx9P5T0y20e23pjUvNsTiQUErSbQM0RT4bxhnxr1C NxH1fpapdgZ5EyXQCfEqITo1ERnwfc/Alx7OP5Piagi7/zhruYVKfHOw+lpBLg4FTrnOKHsgNX5 4dIJ/UwtQTjLBTeeV8ekGs4Nf8Rs= X-Received: by 2002:a05:6512:10cb:b0:4fb:9341:9921 with SMTP id k11-20020a05651210cb00b004fb93419921mr540056lfg.52.1687938081198; Wed, 28 Jun 2023 00:41:21 -0700 (PDT) X-Google-Smtp-Source: ACHHUZ4/LL8Q6ptsPVewMKWY4urM5AzIoWSMnfr2lL0PypvevicnXRpVgfkYzOOBDpLnug9qgwbQPw== X-Received: by 2002:a05:6512:10cb:b0:4fb:9341:9921 with SMTP id k11-20020a05651210cb00b004fb93419921mr540021lfg.52.1687938080672; Wed, 28 Jun 2023 00:41:20 -0700 (PDT) Message-ID: <26282cb8-b6b0-f3a0-e82d-b4fec45c5f72@redhat.com> Date: Wed, 28 Jun 2023 09:41:18 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 To: Hugh Dickins Cc: "Vishal Moola (Oracle)" , Andrew Morton , Matthew Wilcox , linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Catalin Marinas , Huacai Chen , Geert Uytterhoeven , Thomas Bogendoerfer , Dinh Nguyen , Jonas Bonn , Claudio Imbrenda , Paul Walmsley , "David S. Miller" , Richard Weinberger , Yoshinori Sato , Dave Hansen , Arnd Bergmann , Christophe Leroy References: <20230627031431.29653-1-vishal.moola@gmail.com> <90e643ca-de72-2f4c-f4fe-35e06e1a9277@google.com> From: David Hildenbrand Organization: Red Hat Subject: Re: [PATCH v6 00/33] Split ptdesc from struct page In-Reply-To: <90e643ca-de72-2f4c-f4fe-35e06e1a9277@google.com> X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Language: en-US Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit On 27.06.23 22:13, Hugh Dickins wrote: > On Tue, 27 Jun 2023, David Hildenbrand wrote: >> On 27.06.23 06:44, Hugh Dickins wrote: >>> On Mon, 26 Jun 2023, Vishal Moola (Oracle) wrote: >>> >>>> The MM subsystem is trying to shrink struct page. This patchset >>>> introduces a memory descriptor for page table tracking - struct ptdesc. >>> ... >>>> 39 files changed, 686 insertions(+), 455 deletions(-) >>> >>> I don't see the point of this patchset: to me it is just obfuscation of >>> the present-day tight relationship between page table and struct page. >>> >>> Matthew already explained: >>> >>>> The intent is to get ptdescs to be dynamically allocated at some point >>>> in the ~2-3 years out future when we have finished the folio project ... >>> >>> So in a kindly mood, I'd say that this patchset is ahead of its time. >>> But I can certainly adapt to it, if everyone else sees some point to it. >> >> I share your thoughts, that code churn which will help eventually in the far, >> far future (not wanting to sound too pessimistic, but it's not going to be >> there tomorrow ;) ). >> >> However, if it's just the same as the other conversions we already did (e.g., >> struct slab), then I guess there is no reason to stop now -- the obfuscation >> already happened. >> >> ... or is there a difference regarding this conversion and the previous ones? > > I was aware of the struct slab thing, didn't see much point there myself > either; but it was welcomed by Vlastimil, and barely affected outside of > slab allocators, so I had no reason to object. > > You think that if a little unnecessary churn (a *lot* of churn if you > include folios, which did save some repeated calls to compound_head()) > has already occurred, that's a good precedent for allowing more and more? Well, if you phrase it like that ... no, I'm not in favor of unnecessary churn at all. Yes, folios were/are a lot of churn (IMHO not unnecessary, though). I'm not a friend of these "overlays"; it all only really makes sense to me once we actually allocate the descriptors dynamically. Maybe some of the existing/ongoing conversions were different (that's why I was asking for the difference, as you said the "struct slab" thing was well received). If they are primarily only unnecessary churn for now (and unclear when/how it will become useful), I share your opinion. -- Cheers, David / dhildenb From xen-devel-bounces@lists.xenproject.org Wed Jun 28 08:00:24 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 28 Jun 2023 08:00:24 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556343.868787 (Exim 4.92) (envelope-from ) id 1qEQ5w-0005Gp-E4; Wed, 28 Jun 2023 08:00:08 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556343.868787; Wed, 28 Jun 2023 08:00:08 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEQ5w-0005Gi-9h; Wed, 28 Jun 2023 08:00:08 +0000 Received: by outflank-mailman (input) for mailman id 556343; Wed, 28 Jun 2023 08:00:07 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEQ5v-0005B5-Gg for xen-devel@lists.xenproject.org; Wed, 28 Jun 2023 08:00:07 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEQ5p-0003qO-Uv; Wed, 28 Jun 2023 08:00:01 +0000 Received: from gw1.octic.net ([88.97.20.152] helo=[10.0.1.240]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qEQ5p-00036C-Oo; Wed, 28 Jun 2023 08:00:01 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=ClC5iu+u0VGA1ueq3ddoeIRNzAgKMsPeRDZz94Z3TXM=; b=mN9Law+Rsqn6yXI+6YwdzLv0Sn TI3vy2XoSg7M2PNx+ZxMlPFlT8ScfAzJIeDYbuRYjSCaOJKQaXOmXSurqJXbz2vb0ifkFFgxd6FH5 lrZ/DM3arbBW+9vYylYUQy/tAbdEeI1KDLPy0URODmZE6qubcl24+fMRwcOAHmDlBuy8=; Message-ID: Date: Wed, 28 Jun 2023 08:59:59 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v3 15/52] xen: make VMAP only support in MMU system Content-Language: en-US To: Penny Zheng , Jan Beulich Cc: Stefano Stabellini , Bertrand Marquis , Volodymyr Babchuk , Andrew Cooper , George Dunlap , Wei Liu , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Chen , xen-devel@lists.xenproject.org References: <20230626033443.2943270-1-Penny.Zheng@arm.com> <20230626033443.2943270-16-Penny.Zheng@arm.com> <654c9925-565a-80d4-5e93-129f6f0f691a@suse.com> <7d3ff868-60a4-1eab-0b9b-f6ca649cfdeb@arm.com> From: Julien Grall In-Reply-To: <7d3ff868-60a4-1eab-0b9b-f6ca649cfdeb@arm.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Hi, On 28/06/2023 06:38, Penny Zheng wrote: > On 2023/6/26 14:00, Jan Beulich wrote: >> On 26.06.2023 05:34, Penny Zheng wrote: >>> --- a/xen/common/vmap.c >>> +++ b/xen/common/vmap.c >>> @@ -331,4 +331,11 @@ void vfree(void *va) >>>       while ( (pg = page_list_remove_head(&pg_list)) != NULL ) >>>           free_domheap_page(pg); >>>   } >>> + >>> +void iounmap(void __iomem *va) >>> +{ >>> +    unsigned long addr = (unsigned long)(void __force *)va; >>> + >>> +    vunmap((void *)(addr & PAGE_MASK)); >>> +} >> >> Why does this move here? > > ioremap/iounmap is using vmap, at least in ARM. So for this more > generic interface, I was intending to implement it on MPU system. > In commit "[PATCH v3 19/52] xen/arm: switch to use ioremap_xxx in common > file", I'm trying to replace all direct vmap interface with ioremap_xxx > in common files. While the implementation of ioremap() is based on vmap(), the intended usage is not the same. ioremap() is for MMIO regions while vmap() is for RAM. So I don't think this is correct to replace vmap() with ioremap(). Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Wed Jun 28 08:05:06 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 28 Jun 2023 08:05:06 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556347.868797 (Exim 4.92) (envelope-from ) id 1qEQAh-000606-W2; Wed, 28 Jun 2023 08:05:03 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556347.868797; Wed, 28 Jun 2023 08:05:03 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEQAh-0005zz-T0; Wed, 28 Jun 2023 08:05:03 +0000 Received: by outflank-mailman (input) for mailman id 556347; Wed, 28 Jun 2023 08:05:02 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEQAg-0005zt-DG for xen-devel@lists.xenproject.org; Wed, 28 Jun 2023 08:05:02 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEQAg-0004Rn-5X; Wed, 28 Jun 2023 08:05:02 +0000 Received: from gw1.octic.net ([88.97.20.152] helo=[10.0.1.240]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qEQAg-0003RI-0J; Wed, 28 Jun 2023 08:05:02 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=xeE+COy3hQqN3URoO7GZ4U+Yg+rZy27QXI3uX3zcEWQ=; b=bnnmSqOtJGwIqx30rglS3MYJdL 1e3QuV2w7ipFph6Mo5fz9sUdHEsRhzSY4FrSM/Wdu1KZPnQ0UBS8ajhUe9PZ9jQbNfkmSLWr96c0j wBjA1/Kg05XaP1HgjGHd3AJFybi5Te/x4XDNjf0u0ImPR3dr1qKynFvTbBsHjrfF7SM4=; Message-ID: Date: Wed, 28 Jun 2023 09:05:00 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v3 02/52] xen/arm: make ARM_EFI selectable for Arm64 Content-Language: en-US To: Penny Zheng , xen-devel@lists.xenproject.org Cc: Wei Chen , Stefano Stabellini , Bertrand Marquis , Volodymyr Babchuk References: <20230626033443.2943270-1-Penny.Zheng@arm.com> <20230626033443.2943270-3-Penny.Zheng@arm.com> From: Julien Grall In-Reply-To: <20230626033443.2943270-3-Penny.Zheng@arm.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit On 26/06/2023 04:33, Penny Zheng wrote: > From: Wei Chen > > Currently, ARM_EFI will mandatorily selected by Arm64. I think there is a missing 'be' after 'mandatorily'. > Even if the user knows for sure that their images will not > start in the EFI environment, they can't disable the EFI > support for Arm64. This means there will be about 3K lines > unused code in their images. > > So in this patch, we make ARM_EFI selectable for Arm64, and > based on that, we can use CONFIG_ARM_EFI to gate the EFI > specific code in head.S for those images that will not be > booted in EFI environment. > > Signed-off-by: Wei Chen > Signed-off-by: Penny Zheng Reviewed-by: Julien Grall Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Wed Jun 28 08:15:12 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 28 Jun 2023 08:15:12 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556352.868806 (Exim 4.92) (envelope-from ) id 1qEQKH-0007WE-Sx; Wed, 28 Jun 2023 08:14:57 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556352.868806; Wed, 28 Jun 2023 08:14:57 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEQKH-0007W7-QP; Wed, 28 Jun 2023 08:14:57 +0000 Received: by outflank-mailman (input) for mailman id 556352; Wed, 28 Jun 2023 08:14:56 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEQKG-0007W1-4b for xen-devel@lists.xenproject.org; Wed, 28 Jun 2023 08:14:56 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEQKE-0004n7-G5; Wed, 28 Jun 2023 08:14:54 +0000 Received: from gw1.octic.net ([88.97.20.152] helo=[10.0.1.240]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qEQKE-0003sh-9p; Wed, 28 Jun 2023 08:14:54 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=aZuHNlETlWi5/9MaP1VGmdktDM8z7JBZrXhEMNTRI94=; b=ctRTqj6eCwCVjVXeXnBpqEvKN+ ae/wII85kIgt4cmLeWgvPgLIzeCNT0EsFSrMfkwqjd4jxY3Ji9SPLFZqu2YN33Tf2V12IJk0MPZXg TjuCLdTolesYL1RVjTIu6+yg68iA7RRdwh53wea6F72YDcBWdx9QgMoU6QTcy/77PaxM=; Message-ID: <2731b06d-4a54-f51c-2285-ea2cf1fac3ba@xen.org> Date: Wed, 28 Jun 2023 09:14:52 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v4 0/7] SMMU handling for PCIe Passthrough on ARM Content-Language: en-US To: Rahul Singh Cc: Stewart Hildebrand , "xen-devel@lists.xenproject.org" , Stefano Stabellini , Bertrand Marquis , Volodymyr Babchuk , Jan Beulich , Paul Durrant , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= References: <20230607030220.22698-1-stewart.hildebrand@amd.com> <1f5aa53c-a9ed-41c3-2a4d-38538912cdd5@xen.org> <4b08b38e-3beb-6b72-83fb-6dd8c8702718@amd.com> <5f0b5a38-710f-f820-1dc7-345ae16047ad@xen.org> From: Julien Grall In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Hi Rahul, On 25/06/2023 15:28, Rahul Singh wrote: >> On 25 Jun 2023, at 1:56 pm, Julien Grall wrote: >> On 15/06/2023 22:05, Stewart Hildebrand wrote: >>> On 6/7/23 03:19, Julien Grall wrote: >>>> On 07/06/2023 04:02, Stewart Hildebrand wrote: >>>>> This series introduces SMMU handling for PCIe passthrough on ARM. These patches >>>>> are independent from (and don't depend on) the vPCI reference counting/locking >>>>> work in progress, and should be able to be upstreamed independently. >>>> >>>> Can you clarify how this code was tested? Does this require code not yet >>>> upstreamed? >>> I'm testing the series standalone (+ config changes) by using a PCI device in dom0, and also in combination with the vPCI series [3] [4] for passthrough to a domU. >>> Here are some more details on the test cases I'm using. >> >> Thanks that's helpful! One comment about the first test case. >> >>> 1. Using the PCI device in dom0 with the pci-passthrough=yes arg. In this case a couple of additional config changes [1] [2] are needed to select CONFIG_HAS_PCI=y, CONFIG_HAS_VPCI=y, and make has_vpci() return true. Aside from this series itself and the config changes, nothing else not-yet-upstreamed is required for this test case. It is on my TODO list to upstream these config changes, which I think will be useful on their own, not necessarily as part of any other series. >> >> I find a bit confusing that the IOMMU support for dom0 is gated behind 'pci-passthrough'. I was expecting that the iommu would also be properly configured for PCI if we using 'iommu=yes'. > > As per my understanding Xen can configure the iommus for PCI device without "pci-passthrough” enabled > if we follow below path: > > 1) PCI host bridge is already enumerated and powered on in firmware before Xen boot > 2) PCI devices are scanned in Xen. > (https://gitlab.com/xen-project/people/bmarquis/xen-arm-poc/-/commit/bce463e1588a45e1bfdf59fc0d5f88b16604e439) > 3) After scanning the PCI devices add PCI devices to iommu ( iommu_add_device() ) > > If PCI host bridge is not enumerated then we need "pci-passthrough” enabled to allow Linux to do > enumeration and to inform Xen via PHYSDEVOP_pci_device_add hyper call to add PCI devices in Xen > This is implemented as part of PCI passthrough feature. Right, but selecting "pci-passthrough" to be able to use the IOMMU in dom0 is confusing. We already support PCI in dom0 and adding the support (IOMMU + PCI) has no relation with assigning a device to the guest. IOW one may want to use IOMMU in dom0 without assigning devices to the guest. I think part of the code gated by "pci-passthrough" should also be available when the IOMMU is enabled. This would allow users to use IOMMU + PCI in dom0 without any extra patches and/or command line option. Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Wed Jun 28 08:38:39 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 28 Jun 2023 08:38:39 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556358.868817 (Exim 4.92) (envelope-from ) id 1qEQgx-0001ar-NJ; Wed, 28 Jun 2023 08:38:23 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556358.868817; Wed, 28 Jun 2023 08:38:23 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEQgx-0001ak-JX; Wed, 28 Jun 2023 08:38:23 +0000 Received: by outflank-mailman (input) for mailman id 556358; Wed, 28 Jun 2023 08:38:21 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEQgv-0001ae-AX for xen-devel@lists.xenproject.org; Wed, 28 Jun 2023 08:38:21 +0000 Received: from NAM04-MW2-obe.outbound.protection.outlook.com (mail-mw2nam04on2062f.outbound.protection.outlook.com [2a01:111:f400:7e8c::62f]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 1f9dc448-158f-11ee-8611-37d641c3527e; Wed, 28 Jun 2023 10:38:16 +0200 (CEST) Received: from BN9PR03CA0721.namprd03.prod.outlook.com (2603:10b6:408:110::6) by PH0PR12MB7888.namprd12.prod.outlook.com (2603:10b6:510:28b::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.35; Wed, 28 Jun 2023 08:37:11 +0000 Received: from BN8NAM11FT104.eop-nam11.prod.protection.outlook.com (2603:10b6:408:110:cafe::26) by BN9PR03CA0721.outlook.office365.com (2603:10b6:408:110::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.20 via Frontend Transport; Wed, 28 Jun 2023 08:37:11 +0000 Received: from SATLEXMB03.amd.com (165.204.84.17) by BN8NAM11FT104.mail.protection.outlook.com (10.13.177.160) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6500.47 via Frontend Transport; Wed, 28 Jun 2023 08:37:10 +0000 Received: from SATLEXMB06.amd.com (10.181.40.147) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Wed, 28 Jun 2023 03:37:09 -0500 Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB06.amd.com (10.181.40.147) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Wed, 28 Jun 2023 03:37:09 -0500 Received: from XIR-MICHALO-L1.xilinx.com (10.180.168.240) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.23 via Frontend Transport; Wed, 28 Jun 2023 03:37:07 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 1f9dc448-158f-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=kZgt1ob4RSQ+hWP1uBK+YQUzf0exwGEafpcNBS0oNp60osuYzQo8hI2YRXDOTJVomG0TZqacc8j9uyexrdgGIro+lbaHg3gR2qvExDCTjcZ4JwqsvxgpzZGGNPsqP0fV1hGsApLUpz9LOkjyNAAA0PTRZVWGFU8imL39OPp1Yr/zz+D2vQ6RTKmGk0eMFq/ej9x/9wXkoPOkPJsndGNwO1J5TOnZj+w/ZCpSMXWJ1ZzcFXUwBZBxP8K0CaT9NIhGsI3+IRHHhwefigVPRpu31eZRUFq9s0YXe0agYB9z0BEnGX7uCgoX0cliF0Q8VEPghhLmuzAa4U5M5nj1isSp7Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=MAv1sXZBHR7pPNer3e1bTfvINX9ZNhIBLaSL2gGt88s=; b=mFeLtSCziXyPV4nYDal0oAPiVpBlNvpDD5i+asrIzzTFv9b0WhFDpI3jWmWqb59aFdBH0enXU0WgWm0OL283pubX1cJea0CPRLqieEeUFGPuMTqxJbnfjG87g7nQLhfUa8t8zU76SKIVyPYVxaXwWqydhMcK8zEh1p3EjibSBN0X0O0lmL3l+v+YGc/rtuyGC6NiXIny3zoWuTwWbdatZ29bWikE8GeUSjYXcJ7YJ1V7FtoVx0dnCbwDmUrGtZK0Iils9E2TCSc/lzFrhKsZX4pj+mkEoUXfxzQBB18mlDkrvwxcZ2WitbLIoHFbGSPZaTRvxT6ljQqKZoTN9aLl/A== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=MAv1sXZBHR7pPNer3e1bTfvINX9ZNhIBLaSL2gGt88s=; b=nWt9rxxXOa3ypd4bY9rGB1OtCFZ1X69dJewHmJygJ/M/3lwVYPgSDDCVhXVg5X1GgTv6J4iI87UbQhiS+YnMXkXcXz6NcepXXzKO1KSKV2nxi0VoxP8UATs/lIWsNcEciX4zeNvnnvh93Af2Q7kATZQM2THUqY5NywNVTF1cLv8= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C From: Michal Orzel To: CC: Michal Orzel , Andrew Cooper , George Dunlap , "Jan Beulich" , Julien Grall , "Stefano Stabellini" , Wei Liu Subject: [PATCH] docs/misra: rules: Remove incorrect deviation guidance Date: Wed, 28 Jun 2023 10:37:01 +0200 Message-ID: <20230628083701.5489-1-michal.orzel@amd.com> X-Mailer: git-send-email 2.25.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BN8NAM11FT104:EE_|PH0PR12MB7888:EE_ X-MS-Office365-Filtering-Correlation-Id: 23b0c9fe-9ec7-41f9-f7a5-08db77b2dd8b X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 2RGsi/SmHZ0cUPuJPP1B5RXuAJGId2aqoHSi7Q2HYyZmTnyiNcQCe7cw0d/9jKeb79wywagDywP5GUDxrcSnoBrUCVpzM3ODu2yRVo4+fETuOtHvqvZyC7bjuVXuQUAnIhZVrjCXp0J3mMu6Oj9ctYOIGuGiPT+QKZd6vcuVCH8YphbSWfKnuO+3Sa5cc3xu+ipYOocS9gCv9mqC5caWPAexKrL6hl9Nii2WAjbZpICm4ygCr/H140QEAbKKg4O60ldCH41c0HGlvZ678hY2mOmFf9K2idD2HIVqQJ6ggrpPP1xlsrO8RICV9pBwhozvcpF8N4aWKVZhWh0LoL6XcBosioCVE+X7NTIKqiXHkeG8RbZMp9bptQsUy8GA26qZdTNL1an3aZuIZW7BjWejtbbT4IM/HhUxVUR9ncp5eLKTGfoG2TC+rzqJt++NX5oLWDzGgfsrTlEN/MmH7tiOQg+qlJNxGxpg3nxRuSty46z5EA27gYefpjkzZ+MBAsWr5atTKfXAECwONkRFOsFUC/F7b5iFwzocJzgmjSUK75ZBNVpRgAP6zfvTmG6IE7OU1BoEBb3otn4deXFSBN3JQYY/0cxawLNvmyrwYO6C9xMSLzAFIOAftC7iPpq9cg9yyq40rCxV+VkkpRUdwm3Ux4BhrHqvjrQ1naPGAdzaJc04spZZxV657v+hP8m6S2dzSpqgR7+MEz2BHJBzdG0h40V7nsdQDuv1kEimyVcScvYch5v1dcPasstXefXfRrrgtxXPivvJtfDeO5Rp8pfwOg== X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(376002)(136003)(39860400002)(396003)(346002)(451199021)(46966006)(40470700004)(36840700001)(82310400005)(36860700001)(478600001)(6666004)(83380400001)(2616005)(426003)(336012)(54906003)(1076003)(2906002)(186003)(47076005)(4744005)(26005)(70206006)(4326008)(86362001)(44832011)(41300700001)(356005)(36756003)(5660300002)(40460700003)(40480700001)(70586007)(81166007)(82740400003)(6916009)(316002)(8936002)(8676002)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Jun 2023 08:37:10.7410 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 23b0c9fe-9ec7-41f9-f7a5-08db77b2dd8b X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com] X-MS-Exchange-CrossTenant-AuthSource: BN8NAM11FT104.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR12MB7888 It creates confusion since the new format of documenting violations can be found in: docs/misra/documenting-violations.rst. Signed-off-by: Michal Orzel --- docs/misra/rules.rst | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/docs/misra/rules.rst b/docs/misra/rules.rst index 11b9c42b70e6..6244598665e2 100644 --- a/docs/misra/rules.rst +++ b/docs/misra/rules.rst @@ -17,13 +17,8 @@ hypervisor. It is possible that in specific circumstances it is best not to follow a rule because it is not possible or because the alternative leads to better code quality. Those cases are called "deviations". They are -permissible as long as they are documented as an in-code comment using -the following format:: - - /* - * MISRA_DEV: Rule ID - * Justification text. - */ +permissible as long as they are documented. For details, please refer to +docs/misra/documenting-violations.rst Other documentation mechanisms are work-in-progress. -- 2.25.1 From xen-devel-bounces@lists.xenproject.org Wed Jun 28 08:41:36 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 28 Jun 2023 08:41:36 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556364.868827 (Exim 4.92) (envelope-from ) id 1qEQjt-00034C-7v; Wed, 28 Jun 2023 08:41:25 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556364.868827; Wed, 28 Jun 2023 08:41:25 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEQjt-000345-4H; Wed, 28 Jun 2023 08:41:25 +0000 Received: by outflank-mailman (input) for mailman id 556364; Wed, 28 Jun 2023 08:41:24 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEQjs-00033x-1f for xen-devel@lists.xenproject.org; Wed, 28 Jun 2023 08:41:24 +0000 Received: from EUR05-VI1-obe.outbound.protection.outlook.com (mail-vi1eur05on20602.outbound.protection.outlook.com [2a01:111:f400:7d00::602]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 8dd1ab58-158f-11ee-8611-37d641c3527e; Wed, 28 Jun 2023 10:41:20 +0200 (CEST) Received: from AM9P250CA0026.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:21c::31) by AM9PR08MB6036.eurprd08.prod.outlook.com (2603:10a6:20b:2dc::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.26; Wed, 28 Jun 2023 08:41:18 +0000 Received: from AM7EUR03FT013.eop-EUR03.prod.protection.outlook.com (2603:10a6:20b:21c:cafe::b8) by AM9P250CA0026.outlook.office365.com (2603:10a6:20b:21c::31) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.34 via Frontend Transport; Wed, 28 Jun 2023 08:41:18 +0000 Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by AM7EUR03FT013.mail.protection.outlook.com (100.127.140.191) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.16 via Frontend Transport; Wed, 28 Jun 2023 08:41:17 +0000 Received: ("Tessian outbound c08fa2e31830:v142"); Wed, 28 Jun 2023 08:41:17 +0000 Received: from e64ec6806c7a.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 5867DB8B-9FAD-4342-A2B3-D161D1DDB0B1.1; Wed, 28 Jun 2023 08:41:10 +0000 Received: from EUR04-HE1-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id e64ec6806c7a.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Wed, 28 Jun 2023 08:41:10 +0000 Received: from AM6P191CA0075.EURP191.PROD.OUTLOOK.COM (2603:10a6:209:8a::16) by GV2PR08MB8049.eurprd08.prod.outlook.com (2603:10a6:150:ae::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.23; Wed, 28 Jun 2023 08:41:07 +0000 Received: from AM7EUR03FT040.eop-EUR03.prod.protection.outlook.com (2603:10a6:209:8a:cafe::b7) by AM6P191CA0075.outlook.office365.com (2603:10a6:209:8a::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.19 via Frontend Transport; Wed, 28 Jun 2023 08:41:07 +0000 Received: from nebula.arm.com (40.67.248.234) by AM7EUR03FT040.mail.protection.outlook.com (100.127.140.128) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6544.16 via Frontend Transport; Wed, 28 Jun 2023 08:41:06 +0000 Received: from AZ-NEU-EX03.Arm.com (10.251.24.31) by AZ-NEU-EX04.Arm.com (10.251.24.32) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Wed, 28 Jun 2023 08:41:06 +0000 Received: from [10.169.188.49] (10.169.188.49) by mail.arm.com (10.251.24.31) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27 via Frontend Transport; Wed, 28 Jun 2023 08:41:02 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 8dd1ab58-158f-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=kec2iNBqSnaFv2sP0scr0R1i3SyFtLZVqLlXqhqnukg=; b=A6fJDDGeNrtFKbrTnzj+nfSE2qAu8ad1OS+SknppopUu/eU5rWdkC8p6Lj1/erDjQSjgb3Beu4k647oltmPlMFFMt80SitcctDLmOINOeOsXLx27Y/3vdKmtdq6XzZy7L2tGpGWvjUskj2OxYB1qC2faWPu8HE+Nz+Gj3ieLa1Q= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C X-CheckRecipientChecked: true X-CR-MTA-CID: 3576ed5d19b7ecd3 X-CR-MTA-TID: 64aa7808 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=aImCt8MNa2qoS7ss/oVkMlSgMUemBGHOOhGNrK//DGNvgSz3LJCrljaT7ApS1Dbxb2xc/B4DBiPyMJ9iqB2k7gGLCndSRPjJpgO9SYFr8TAnwpUd39RiZEW+bFFnguMOseZwWMY/OVQEKBh77NSqXQIizrxFLkJuIYKzgmjwjcE87XTkrZT5FItqyMkxJXfTP/3n4bU1+42qQQpl4rgdlnAJVUSWByznhwq1AHx873UvhGRyF6mTl/9L424vWr9Bsb2q73QZ1q13gzV2EvyoAeuu2/0rYYb/AcG0Grarl5bQMNqRXkbCHkfDZVWvbnGH5OgG9YZ2I63VfDgiuQ7gxg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=kec2iNBqSnaFv2sP0scr0R1i3SyFtLZVqLlXqhqnukg=; b=LkcSO9T9B/aYJRBamjNypXKP9qy9+n+AntncHnjhvSwhYF3GOkD/MDQlYlJbebVr2ZS3IDSiyzfxmXyCL/wUc46pn643ashyLr1q6cedR9ZMT4fjYqEmzTSNlk/PVQlotJUIbSEU4BGuEen3ezPUdKXlC5SAVW1ATkEHRULGNZ6GgFLLXOmYIAXgpVVVzlCjlxy0D+mnTwK/GZn31/SgykGaK04RjO8sH3rN3F6Ct8NlVns5Oow9mo1G2CtZNY68bytuHZ3LbEq1/aqkSP1PElKe6eb+PAfAH9oPL1VaHyw8MW9AwIXddQRp08MoB89/zzVexu0YjZlszU21peFHzQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 40.67.248.234) smtp.rcpttodomain=xen.org smtp.mailfrom=arm.com; dmarc=pass (p=none sp=none pct=100) action=none header.from=arm.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=kec2iNBqSnaFv2sP0scr0R1i3SyFtLZVqLlXqhqnukg=; b=A6fJDDGeNrtFKbrTnzj+nfSE2qAu8ad1OS+SknppopUu/eU5rWdkC8p6Lj1/erDjQSjgb3Beu4k647oltmPlMFFMt80SitcctDLmOINOeOsXLx27Y/3vdKmtdq6XzZy7L2tGpGWvjUskj2OxYB1qC2faWPu8HE+Nz+Gj3ieLa1Q= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 40.67.248.234) smtp.mailfrom=arm.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 40.67.248.234 as permitted sender) receiver=protection.outlook.com; client-ip=40.67.248.234; helo=nebula.arm.com; pr=C Message-ID: <37124ccc-3cf6-6632-4b2e-d23072de9128@arm.com> Date: Wed, 28 Jun 2023 16:41:00 +0800 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.11.2 Subject: Re: [PATCH v3 15/52] xen: make VMAP only support in MMU system Content-Language: en-US To: Julien Grall , Jan Beulich CC: Stefano Stabellini , Bertrand Marquis , Volodymyr Babchuk , Andrew Cooper , George Dunlap , Wei Liu , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Chen , References: <20230626033443.2943270-1-Penny.Zheng@arm.com> <20230626033443.2943270-16-Penny.Zheng@arm.com> <654c9925-565a-80d4-5e93-129f6f0f691a@suse.com> <7d3ff868-60a4-1eab-0b9b-f6ca649cfdeb@arm.com> From: Penny Zheng In-Reply-To: Content-Type: text/plain; charset="UTF-8"; format=flowed Content-Transfer-Encoding: 8bit X-EOPAttributedMessage: 1 X-MS-TrafficTypeDiagnostic: AM7EUR03FT040:EE_|GV2PR08MB8049:EE_|AM7EUR03FT013:EE_|AM9PR08MB6036:EE_ X-MS-Office365-Filtering-Correlation-Id: 63142483-fbe4-4630-d868-08db77b370b0 x-checkrecipientrouted: true NoDisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: q63NeYjAmShoQHrsoGleUfCLlj2UfhM+Nu0yVPTeR8bFlfRpyTnms88ZzTRDwRKbUZ5kMlxyoPB6ZrEuuj1aRWzFMtYT/L6aXK3xKs8oWCel5tJgba2Ze+KKQygShJX6mm8zA0ObjcWwtd+dxmOQmOmIB42EB/hvmNdpiD8TmBZNzVnuP06nXdY2DkES6i9LW6GJArNePLoT+SQ2Ay5VlOXeqgur3+7PnTGAyoNG+BlE7FZN8/hHZFPWB+9Z9xQIPNOucz+S5g2l9eDXcDBzGbz9UE7kYKVfFRKj9n3w7fZLYoDlngLogYgCfwJR2ZqVhzuk0IrUtUYRzh0Viz6GdSCxSZ/8h4BEKm713nwMqi2WsW2x1kQgduC2SmEC30d+glRS65n8VBuO3153zjE/mQl2UV3dtCrMl06KDFH+i4KrhZBdF+Mt0PrlcHkYXtPDjxPkF/W8xQuhBHwz4AR+C2IN9J+rbP/9OFWcAr830tVNqEf77SnMyaL+YX7DdaomCFFOgfP706bMvmmN0NjyUrJQoDmHdr7rR2nmA+uN28JYymtUH3q7w3SzpN8XjaEDMo5+1yqyA+u1yOLKP7nzPLTR0mg/yPw+ZcfNpAa/J+5vYx+oK4O1JkIr/CZ2YDbSag5Z/ictMWf+wwkmO0BoaiNRkQDjItmFZ4JoLhGh9lbO+azDdQr0M9wQJmrY7UcBbJe+N3GSg5Ao1l+0ZzWCzDncBLuJhDP4ReXIHqpmbDujoJGN/tFuawAtYUFgIQ9qKsuL2UNq2/jALIlutQPAJuExNfdHbx8IAx9qZX+sjfPBuvEU3gcxP3JOazVvFrDFuJQB7NN5yZ3uH+qM7cgYILgoZUQMiY4mEBinwr6Y0Rk= X-Forefront-Antispam-Report-Untrusted: CIP:40.67.248.234;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:nebula.arm.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(396003)(376002)(136003)(39860400002)(346002)(451199021)(40470700004)(36840700001)(46966006)(44832011)(31686004)(5660300002)(316002)(478600001)(36756003)(70586007)(4326008)(70206006)(8936002)(8676002)(2906002)(186003)(40460700003)(16576012)(36860700001)(54906003)(110136005)(86362001)(82310400005)(31696002)(40480700001)(41300700001)(53546011)(26005)(47076005)(426003)(336012)(81166007)(356005)(82740400003)(2616005)(21314003)(3940600001)(36900700001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-Transport-CrossTenantHeadersStamped: GV2PR08MB8049 X-MS-Exchange-Transport-CrossTenantHeadersStripped: AM7EUR03FT013.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: 9e31b32a-eab0-4551-a2b6-08db77b36a40 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: c6npeWF+tcX2nGEbvvNHelYzo9SHCnjqRdV/1saMHIKs5Kxs2enbOcScHmyS5lBW+1f5Cg7U/FUhqLybnGrFZJNhdu1+7hMyJdk311Ce1pVy4EcdBtALLQ0T2mzvtzyUC5jKaPb9okejlQ6V7iPYQcMBMrPSIX8QF6fQy/QV0j8pe1QMH8OXBHwcPdWXvlp1sUktK7HEvya1cpcYXjPvYMWuZ3RCSi5otwq1Il0Yw0cCUq6NsCHBoOm4NoWmO2OTlmMK2mtAbkO74LqBsU5ezcy5tYt6fsdxELNJyO99H96IMW0BQLLQTglAexuW0LiHRUa/9p9hJr7fYq6kDH6Kw1zgQPkHYJ6i7Ko//5Kde1asRj2G2Z3DXTfUUiPwYzJUHP5naxMuBtjvSqZqH/QGAcRO4b2fwvNBFCv1dzHhU/lN4YzCZNSBmux++c3PYeJpCbJv+cgb3LTAOUVzOXQSJ65cUPz3l6NztgZ3HlTVFd0IHF5ZRZb1a0qqvL4cciXMQtnco4rLc7i6WS/mhecHddM1XRjvh7ol+V9AYzuc+CcFZBSHLcX+4urNQWhWHSCzow3nWG3YKlIyjHUr8HvcRzE0KRwuAF9gwILxhfRkhcW3dMpNtG3tb2nuT4VBDIZgJpWREfaWW4hMVrTeSUVHS769tH+8ws3PjVEiKasR8yO5s3BtTyQzUBY61YSfE0sVg9VwcYtCBfvUnMX/4kFcRMg3ydAOJnv13/jHgMZBGSTcvh428FIAVZSkIcELqXFzz14ZB1k/7enkNvHz1r3Ej8D8pxFIaoNEJ3hM0skcb6YZuz8kjJuBJZenxmzigu4LODFAqPejqogN/PGQPZCtEQ== X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230028)(4636009)(346002)(136003)(376002)(396003)(39860400002)(451199021)(36840700001)(40470700004)(46966006)(5660300002)(31686004)(4326008)(316002)(70586007)(478600001)(70206006)(36756003)(44832011)(8936002)(8676002)(40460700003)(110136005)(54906003)(86362001)(36860700001)(31696002)(40480700001)(16576012)(41300700001)(82310400005)(2906002)(186003)(426003)(26005)(47076005)(53546011)(336012)(82740400003)(81166007)(2616005)(21314003)(3940600001)(43740500002);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Jun 2023 08:41:17.5921 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 63142483-fbe4-4630-d868-08db77b370b0 X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: AM7EUR03FT013.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR08MB6036 Hi Julien On 2023/6/28 15:59, Julien Grall wrote: > Hi, > > On 28/06/2023 06:38, Penny Zheng wrote: >> On 2023/6/26 14:00, Jan Beulich wrote: >>> On 26.06.2023 05:34, Penny Zheng wrote: >>>> --- a/xen/common/vmap.c >>>> +++ b/xen/common/vmap.c >>>> @@ -331,4 +331,11 @@ void vfree(void *va) >>>>       while ( (pg = page_list_remove_head(&pg_list)) != NULL ) >>>>           free_domheap_page(pg); >>>>   } >>>> + >>>> +void iounmap(void __iomem *va) >>>> +{ >>>> +    unsigned long addr = (unsigned long)(void __force *)va; >>>> + >>>> +    vunmap((void *)(addr & PAGE_MASK)); >>>> +} >>> >>> Why does this move here? >> >> ioremap/iounmap is using vmap, at least in ARM. So for this more >> generic interface, I was intending to implement it on MPU system. >> In commit "[PATCH v3 19/52] xen/arm: switch to use ioremap_xxx in >> common file", I'm trying to replace all direct vmap interface with >> ioremap_xxx in common files. > > While the implementation of ioremap() is based on vmap(), the intended > usage is not the same. ioremap() is for MMIO regions while vmap() is for > RAM. > > So I don't think this is correct to replace vmap() with ioremap(). > Sure, understood now. So then the current usage of ioremap_xxx in xen/arch/arm/kernel.c, like ``` kernel_zimage_load() ... kernel = ioremap_wc(paddr, len); ... ``` ioremap_wc() is used for remapping and then copying guest kernel image to guest memory. Since ioremap_xxx is for MMIO regions, maybe we shall provide a new pair of interfaces for RAM, like ramremap_xxx, to replace the ioremap_xxx here? > Cheers, From xen-devel-bounces@lists.xenproject.org Wed Jun 28 08:53:22 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 28 Jun 2023 08:53:22 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556368.868837 (Exim 4.92) (envelope-from ) id 1qEQvL-0004b3-8n; Wed, 28 Jun 2023 08:53:15 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556368.868837; Wed, 28 Jun 2023 08:53:15 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEQvL-0004aw-68; Wed, 28 Jun 2023 08:53:15 +0000 Received: by outflank-mailman (input) for mailman id 556368; Wed, 28 Jun 2023 08:53:14 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEQvK-0004aq-20 for xen-devel@lists.xenproject.org; Wed, 28 Jun 2023 08:53:14 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEQvE-0005fZ-8x; Wed, 28 Jun 2023 08:53:08 +0000 Received: from gw1.octic.net ([88.97.20.152] helo=[10.0.1.240]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qEQvE-0005Nj-2a; Wed, 28 Jun 2023 08:53:08 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=Q1l99Y7QqWyg2c0B+utmVn1lR1sQpGAJDf322D056QQ=; b=mHNFy9RPh+y+W8J5IHFdJwkbsP x8vCN5KS19oog0iAnpihtyXBhkbSB4fzlWudc+YXKGItG3dygP9emd0ZZBiKnjEbaoin3tx9WZHha n44HRyoGQAge66Aj6tJTCYvfEj7HBPl+61JZcFC3hirele2I2oVWSGuw8x8ZDjo8EWBg=; Message-ID: <0548bec8-c666-12f8-6704-f6026c16c745@xen.org> Date: Wed, 28 Jun 2023 09:53:05 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v3 15/52] xen: make VMAP only support in MMU system Content-Language: en-US To: Penny Zheng , Jan Beulich Cc: Stefano Stabellini , Bertrand Marquis , Volodymyr Babchuk , Andrew Cooper , George Dunlap , Wei Liu , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Chen , xen-devel@lists.xenproject.org References: <20230626033443.2943270-1-Penny.Zheng@arm.com> <20230626033443.2943270-16-Penny.Zheng@arm.com> <654c9925-565a-80d4-5e93-129f6f0f691a@suse.com> <7d3ff868-60a4-1eab-0b9b-f6ca649cfdeb@arm.com> <37124ccc-3cf6-6632-4b2e-d23072de9128@arm.com> From: Julien Grall In-Reply-To: <37124ccc-3cf6-6632-4b2e-d23072de9128@arm.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Hi, On 28/06/2023 09:41, Penny Zheng wrote: > On 2023/6/28 15:59, Julien Grall wrote: >> Hi, >> >> On 28/06/2023 06:38, Penny Zheng wrote: >>> On 2023/6/26 14:00, Jan Beulich wrote: >>>> On 26.06.2023 05:34, Penny Zheng wrote: >>>>> --- a/xen/common/vmap.c >>>>> +++ b/xen/common/vmap.c >>>>> @@ -331,4 +331,11 @@ void vfree(void *va) >>>>>       while ( (pg = page_list_remove_head(&pg_list)) != NULL ) >>>>>           free_domheap_page(pg); >>>>>   } >>>>> + >>>>> +void iounmap(void __iomem *va) >>>>> +{ >>>>> +    unsigned long addr = (unsigned long)(void __force *)va; >>>>> + >>>>> +    vunmap((void *)(addr & PAGE_MASK)); >>>>> +} >>>> >>>> Why does this move here? >>> >>> ioremap/iounmap is using vmap, at least in ARM. So for this more >>> generic interface, I was intending to implement it on MPU system. >>> In commit "[PATCH v3 19/52] xen/arm: switch to use ioremap_xxx in >>> common file", I'm trying to replace all direct vmap interface with >>> ioremap_xxx in common files. >> >> While the implementation of ioremap() is based on vmap(), the intended >> usage is not the same. ioremap() is for MMIO regions while vmap() is >> for RAM. >> >> So I don't think this is correct to replace vmap() with ioremap(). >> > > Sure, understood now. > So then the current usage of ioremap_xxx in xen/arch/arm/kernel.c, like > ``` > kernel_zimage_load() > ... > kernel = ioremap_wc(paddr, len); > ... > ``` > ioremap_wc() is used for remapping and then copying guest kernel image > to guest memory. Since ioremap_xxx is for MMIO regions, maybe we shall > provide a new pair of interfaces for RAM, like ramremap_xxx, to replace > the ioremap_xxx here? I always wondered why we were using ioremap_wc() there. But I have never made up my mind for this one. We would need to look at the history to understand why it was used. Anyway, if we want to replace it, then I think this would be a plain vmap() rather inventing a new API. Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Wed Jun 28 08:53:29 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 28 Jun 2023 08:53:29 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556369.868847 (Exim 4.92) (envelope-from ) id 1qEQvZ-0004tY-Fz; Wed, 28 Jun 2023 08:53:29 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556369.868847; Wed, 28 Jun 2023 08:53:29 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEQvZ-0004tP-D4; Wed, 28 Jun 2023 08:53:29 +0000 Received: by outflank-mailman (input) for mailman id 556369; Wed, 28 Jun 2023 08:53:28 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEQvY-0004sz-G5; Wed, 28 Jun 2023 08:53:28 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEQvY-0005g5-Dn; Wed, 28 Jun 2023 08:53:28 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEQvX-0001a9-U8; Wed, 28 Jun 2023 08:53:28 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qEQvX-0004Jx-Tc; Wed, 28 Jun 2023 08:53:27 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=Ev8AoJjk6oC3vQZlCBID4NIfqKDGefGFS+xVu95dLpA=; b=4c9Ctj34HlZPw5rWYEGzDwPmRg QYopjDueXxHM+SX3f39SS0XCKNi4JvS9yAvjwkUJV/FjCcPJsvH9zefm42Hq3yo+DNFlcRyKjGSyR uV7HrgEgVsE05I9vY2DcJIh5K92esTsH7oJWtglDHnMD/X2b6ckA/Lo5riBKWmOhdm/M=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable test] 181618: regressions - FAIL X-Osstest-Failures: xen-unstable:build-arm64-pvops:kernel-build:fail:regression xen-unstable:test-amd64-i386-pair:xen-install/src_host:fail:heisenbug xen-unstable:test-amd64-i386-examine-bios:xen-install:fail:heisenbug xen-unstable:test-armhf-armhf-libvirt-qcow2:guest-start:fail:heisenbug xen-unstable:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking xen-unstable:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking xen-unstable:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking xen-unstable:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking xen-unstable:test-arm64-arm64-examine:build-check(1):blocked:nonblocking xen-unstable:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking xen-unstable:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking xen-unstable:test-arm64-arm64-xl:build-check(1):blocked:nonblocking xen-unstable:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking xen-unstable:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:debian-hvm-install:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemuu-debianhvm-amd64:xen-install:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: xen=5c84f1f636981dab5341e84aaba8d4dd00bbc2cb X-Osstest-Versions-That: xen=5c84f1f636981dab5341e84aaba8d4dd00bbc2cb From: osstest service owner Date: Wed, 28 Jun 2023 08:53:27 +0000 flight 181618 xen-unstable real [real] http://logs.test-lab.xenproject.org/osstest/logs/181618/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-arm64-pvops 6 kernel-build fail in 181607 REGR. vs. 181618 Tests which are failing intermittently (not blocking): test-amd64-i386-pair 10 xen-install/src_host fail in 181607 pass in 181618 test-amd64-i386-examine-bios 6 xen-install fail pass in 181607 test-armhf-armhf-libvirt-qcow2 13 guest-start fail pass in 181607 Tests which did not succeed, but are not blocking: test-arm64-arm64-xl-xsm 1 build-check(1) blocked in 181607 n/a test-arm64-arm64-xl-credit1 1 build-check(1) blocked in 181607 n/a test-arm64-arm64-xl-vhd 1 build-check(1) blocked in 181607 n/a test-arm64-arm64-xl-credit2 1 build-check(1) blocked in 181607 n/a test-arm64-arm64-examine 1 build-check(1) blocked in 181607 n/a test-arm64-arm64-libvirt-xsm 1 build-check(1) blocked in 181607 n/a test-arm64-arm64-libvirt-raw 1 build-check(1) blocked in 181607 n/a test-arm64-arm64-xl 1 build-check(1) blocked in 181607 n/a test-arm64-arm64-xl-thunderx 1 build-check(1) blocked in 181607 n/a test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail in 181607 like 181597 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail in 181607 never pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 12 debian-hvm-install fail like 181597 test-amd64-i386-xl-qemuu-debianhvm-amd64 7 xen-install fail like 181607 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 181607 test-armhf-armhf-libvirt 16 saverestore-support-check fail like 181607 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop fail like 181607 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 181607 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 181607 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop fail like 181607 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop fail like 181607 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail like 181607 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 181607 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop fail like 181607 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 181607 test-amd64-i386-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-i386-xl-pvshim 14 guest-start fail never pass test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-i386-libvirt 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-armhf-armhf-xl 15 migrate-support-check fail never pass test-armhf-armhf-xl 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-check fail never pass test-amd64-i386-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 15 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-armhf-armhf-xl-credit1 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt 15 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass test-armhf-armhf-xl-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 15 saverestore-support-check fail never pass test-armhf-armhf-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 15 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 16 saverestore-support-check fail never pass test-armhf-armhf-xl-credit2 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit2 16 saverestore-support-check fail never pass test-armhf-armhf-xl-multivcpu 15 migrate-support-check fail never pass test-armhf-armhf-xl-multivcpu 16 saverestore-support-check fail never pass version targeted for testing: xen 5c84f1f636981dab5341e84aaba8d4dd00bbc2cb baseline version: xen 5c84f1f636981dab5341e84aaba8d4dd00bbc2cb Last test of basis 181618 2023-06-28 01:53:32 Z 0 days Testing same since (not found) 0 attempts jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64-xtf pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-prev pass build-i386-prev pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-xtf-amd64-amd64-1 pass test-xtf-amd64-amd64-2 pass test-xtf-amd64-amd64-3 pass test-xtf-amd64-amd64-4 pass test-xtf-amd64-amd64-5 pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl pass test-amd64-i386-xl pass test-amd64-coresched-i386-xl pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-i386-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm fail test-amd64-i386-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-i386-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-i386-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-i386-qemut-rhel6hvm-amd pass test-amd64-i386-qemuu-rhel6hvm-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-i386-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-xl-qemuu-debianhvm-amd64 fail test-amd64-i386-freebsd10-amd64 pass test-amd64-amd64-qemuu-freebsd11-amd64 pass test-amd64-amd64-qemuu-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-i386-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-i386-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-i386-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-amd64-i386-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale pass test-amd64-amd64-examine-bios pass test-amd64-i386-examine-bios fail test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 pass test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 pass test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine pass test-amd64-i386-examine pass test-amd64-i386-freebsd10-i386 pass test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-i386-qemut-rhel6hvm-intel pass test-amd64-i386-qemuu-rhel6hvm-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt pass test-amd64-i386-libvirt pass test-amd64-amd64-livepatch pass test-amd64-i386-livepatch pass test-amd64-amd64-migrupgrade pass test-amd64-i386-migrupgrade pass test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu pass test-amd64-amd64-pair pass test-amd64-i386-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-i386-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-i386-xl-pvshim fail test-amd64-amd64-pygrub pass test-armhf-armhf-libvirt-qcow2 fail test-amd64-amd64-xl-qcow2 pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw pass test-amd64-i386-libvirt-raw pass test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds pass test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-amd64-i386-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-i386-examine-uefi pass test-amd64-amd64-libvirt-vhd pass test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd pass test-amd64-i386-xl-vhd pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Published tested tree is already up to date. From xen-devel-bounces@lists.xenproject.org Wed Jun 28 08:55:34 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 28 Jun 2023 08:55:34 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556380.868857 (Exim 4.92) (envelope-from ) id 1qEQxQ-0005m9-2q; Wed, 28 Jun 2023 08:55:24 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556380.868857; Wed, 28 Jun 2023 08:55:24 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEQxP-0005m2-V8; Wed, 28 Jun 2023 08:55:23 +0000 Received: by outflank-mailman (input) for mailman id 556380; Wed, 28 Jun 2023 08:55:22 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEQxO-0005lw-D1 for xen-devel@lists.xenproject.org; Wed, 28 Jun 2023 08:55:22 +0000 Received: from EUR02-DB5-obe.outbound.protection.outlook.com (mail-db5eur02on2060c.outbound.protection.outlook.com [2a01:111:f400:fe12::60c]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 829d372a-1591-11ee-b237-6b7b168915f2; Wed, 28 Jun 2023 10:55:20 +0200 (CEST) Received: from AS9PR05CA0279.eurprd05.prod.outlook.com (2603:10a6:20b:492::11) by PAXPR08MB6415.eurprd08.prod.outlook.com (2603:10a6:102:12f::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.26; Wed, 28 Jun 2023 08:55:18 +0000 Received: from AM7EUR03FT019.eop-EUR03.prod.protection.outlook.com (2603:10a6:20b:492:cafe::22) by AS9PR05CA0279.outlook.office365.com (2603:10a6:20b:492::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.19 via Frontend Transport; Wed, 28 Jun 2023 08:55:17 +0000 Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by AM7EUR03FT019.mail.protection.outlook.com (100.127.140.245) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.20 via Frontend Transport; Wed, 28 Jun 2023 08:55:17 +0000 Received: ("Tessian outbound 7c913606c6e6:v142"); Wed, 28 Jun 2023 08:55:17 +0000 Received: from c02235538a2a.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 58C4809E-F1C3-4937-8CBE-FFAC97946FA6.1; Wed, 28 Jun 2023 08:55:10 +0000 Received: from EUR05-VI1-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id c02235538a2a.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Wed, 28 Jun 2023 08:55:10 +0000 Received: from AM6PR08MB3749.eurprd08.prod.outlook.com (2603:10a6:20b:8f::22) by GVXPR08MB7847.eurprd08.prod.outlook.com (2603:10a6:150:17::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.26; Wed, 28 Jun 2023 08:55:03 +0000 Received: from AM6PR08MB3749.eurprd08.prod.outlook.com ([fe80::ed0b:5730:a1f9:577b]) by AM6PR08MB3749.eurprd08.prod.outlook.com ([fe80::ed0b:5730:a1f9:577b%5]) with mapi id 15.20.6521.026; Wed, 28 Jun 2023 08:55:03 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 829d372a-1591-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=iQMPeHCQEzdChE4PGAl3hjPNfnVenvvJ2WYu4sj4Jkg=; b=AOws0X3SKXUPIMOl0E6aZNAYGNEPWGTrT7Ku48aDylIE8P3gpTkDTMwE04+dbGGc5B2DoALDdF3bMaRp+0jqYJgH9cS8qbGFrdTKrq3MfURnvJtqte2leZfztvc0q/yzzjAHkYbnaVoDGTaL4vicbyf6fVQOyxBoaDywTg64Y+4= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C X-CheckRecipientChecked: true X-CR-MTA-CID: 2cf2b6354553d9d1 X-CR-MTA-TID: 64aa7808 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=VFN+xN3BRDl4Zof4B8/8JvnxId3rl2A6S4a0aOwO0GNq2eaEIVZaIAcDn58nW5FTd04DpkAhVbg6qianZFOM1ZyEiilWw/ClhRhyEIHYNCBxl7E/+XqghwRIcErgekMbnZm9B77GL0VHLmJo9leCDc5X80aNSOrJMDkUonQf74xpqz6QPgz57PRdGdy34KYibAQNllA7UAv0G2g/0268hG7r5ZVGrna152eTLrjRvyRJ0Pgw9dR+OgD2W5nk5MO5ceL/aLJbN7vG9p7RIFK94p9FL7Bge1txmFtwxagWZTpUyaurz04ZqA8Q5NRey52iCc0Kj4LTSmQXUbNAY2lnUg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=iQMPeHCQEzdChE4PGAl3hjPNfnVenvvJ2WYu4sj4Jkg=; b=cZ88MkIxLw1IrFgrK14CKSsuen+qRldfnfDylU4E+6qVpn5eAlflUTeExPB0uX1LfDNkMyauvk+4+ygnny/ZI0Wf4hkfbtxSh7a8QRAhF2u/69Sl8qYiyqK8YqaF9qMsqB0QiyWemVlDDtda3jkjrHIeaDqhK9xOItzcaOLG5A1Ojz2Bb7YSw/l4zdrUCvWIucsaSAkX5bqdX/zMENJ2L684+6wWYIkxnV6WRq5cyRrLgzVZl54l/ujiz1hfxY9y4c2aX8/+lufB2B/F5yv8xlrPbWXcpr+pOe6+V5H/IyRw8aW+H5XpVgYUP617RSlwpMMGuRivk1Y3AYPvVDQCiQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=iQMPeHCQEzdChE4PGAl3hjPNfnVenvvJ2WYu4sj4Jkg=; b=AOws0X3SKXUPIMOl0E6aZNAYGNEPWGTrT7Ku48aDylIE8P3gpTkDTMwE04+dbGGc5B2DoALDdF3bMaRp+0jqYJgH9cS8qbGFrdTKrq3MfURnvJtqte2leZfztvc0q/yzzjAHkYbnaVoDGTaL4vicbyf6fVQOyxBoaDywTg64Y+4= From: Luca Fancellu To: Michal Orzel CC: Xen-devel , Andrew Cooper , George Dunlap , Jan Beulich , Julien Grall , Stefano Stabellini , Wei Liu Subject: Re: [PATCH] docs/misra: rules: Remove incorrect deviation guidance Thread-Topic: [PATCH] docs/misra: rules: Remove incorrect deviation guidance Thread-Index: AQHZqZv9OVNjtLVRFU+PYttzx4+TS6+f6S8A Date: Wed, 28 Jun 2023 08:55:03 +0000 Message-ID: <5B96F3AA-804C-4245-83B9-D3DABE02A942@arm.com> References: <20230628083701.5489-1-michal.orzel@amd.com> In-Reply-To: <20230628083701.5489-1-michal.orzel@amd.com> Accept-Language: en-GB, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-mailer: Apple Mail (2.3731.600.7) Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-traffictypediagnostic: AM6PR08MB3749:EE_|GVXPR08MB7847:EE_|AM7EUR03FT019:EE_|PAXPR08MB6415:EE_ X-MS-Office365-Filtering-Correlation-Id: 72d8e6b6-1b83-4bda-ba98-08db77b5655f x-checkrecipientrouted: true nodisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: eUWz0CFleTzKBTIfPOPUetn2G+nyxM92yNBxIvkD3sMikY1ID2GduC7zOI+EZJUHqbyJJnqYDgL4N+HV44ZK2+Y5rh9nFi4occUbQ8DiJlSMFCKHdU0dDsOy+H2coE8ElIB2jKlYHn39FJljsOQXgKk1W6OnAgQ5a+yacystK7MEXrsg336IphvoluANI47d7xYTRl+uXBPiB6dlVHfebhzGhcdFLIxbtA20IqKibI+h6Upio2xOc92q9t6cMCa4SwXFQ45ub0QgSTdlbj3OhILe1czHbkZlMwHfHcX9yk/sQpKsIjqt03nIk3nTrj8CmXBBUH89EMoIuF6mZXoX42A0jRvdND+QiewQPXPAT0xjmXZNLWdukecw3jCR1xYZoq6VZl1RjE5Qsp8dn9wYd+Mrdimnsl5E7anXxbJgDWF9pwNzlfe4ne97vlBYbvOs89FoT9ky9LeuXqXsbV8OKF0Nr0c6eR3nYLRMZniZ4B4TilkJcMh2GIFUkav5yYiXYYKnfxO79Pj+tbxXsd8Ld2fGvoBRlm/6yveVTxUJwPyF4sgewLrmWvzwMv6Hu8MUWDr8u+69cCJVXWi0oafF/HkPWEmp6y4z1biGKxyXIrLHyUAfLQaqMWfCj7zTomU4yYdPueoCabG2AyNO4NeVeQ== X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM6PR08MB3749.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(396003)(376002)(346002)(136003)(39860400002)(366004)(451199021)(6506007)(5660300002)(66446008)(33656002)(66556008)(316002)(64756008)(66946007)(36756003)(478600001)(4326008)(6916009)(91956017)(66476007)(76116006)(8676002)(8936002)(86362001)(2906002)(6512007)(26005)(54906003)(41300700001)(6486002)(186003)(38070700005)(122000001)(38100700002)(53546011)(71200400001)(2616005)(83380400001)(45980500001);DIR:OUT;SFP:1101; Content-Type: text/plain; charset="us-ascii" Content-ID: <221FA021E0F05A4A9B972E0139ECC312@eurprd08.prod.outlook.com> Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: GVXPR08MB7847 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: AM7EUR03FT019.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: b2868dbb-0566-4e3f-8cdd-08db77b55cd6 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: pwq7h4q8dOq+NRmOSYpRclsSC5pl8uOuRChADqt6nDBA9YvASejFGgMdds6pSET7tQZdZ0vznlCnBWgA6e1Pi/Vg1sFz5ypfzIrHmy2Ck3rvlN2q9WBVh1mTDWDXD3hfofAigPTGe/Jfmz0d5eck1HCPsDW4RcvHC50v4uOEhKQ6NmfPoy9TFM8c8CJjhBxF+hPbf8+4ANolC1CdWGzKD5/zo1UmFOtSfCN+QET1qVM2oyQ35sS/kjyv/dfKwjggXXSs9rqJ9djirlHx8H/SVnxXjO1huYRrR2mYv2VThXF0FyIOcAWzcROd3yGimB0S954+tAYPTH+3idoiMqfx8gxd5CtTkdjsEzYBGWlBqPK8wsGhVXeBAbvgPlfhfM1wh16CUmVUkZwn7iiBXzOox4R/ewEbroS2mEvSgE0hfVsjqpWdV62/PG71YipKyO3khrxDL9HYQsXr5j7S4kJGo601UNq8KLt/q/fWlOXmnYiTuVQIFsCq5BgsnV5uLcCHMO82PMldBpSbY0f7q0KgCkKihsx8jIcIW2HTDe3eTrJwT7iA3Z13qwxH/jjHe1InW2k/QocrDXjSUeZxKMHpmNZ+376PpMpiov3qy7xM4mkFBzutupaCkrRVcnGQ3M2Ek176b/5xC9g11SbDE2vPKH2dweNdxssgDCDG6qdnoif6Dct9YxoYRrLJ85tAsqHeWxMIjfzdo6aqqfLytMrqRtfduagjQtGXE1mZfQZ9pik= X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230028)(4636009)(346002)(136003)(396003)(376002)(39860400002)(451199021)(40470700004)(46966006)(36840700001)(82310400005)(2906002)(36860700001)(26005)(36756003)(40460700003)(70206006)(356005)(6862004)(33656002)(4326008)(8936002)(8676002)(86362001)(316002)(81166007)(82740400003)(5660300002)(70586007)(40480700001)(41300700001)(6486002)(47076005)(6512007)(186003)(53546011)(6506007)(54906003)(336012)(478600001)(83380400001)(2616005);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Jun 2023 08:55:17.5990 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 72d8e6b6-1b83-4bda-ba98-08db77b5655f X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: AM7EUR03FT019.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR08MB6415 > On 28 Jun 2023, at 09:37, Michal Orzel wrote: >=20 > It creates confusion since the new format of documenting violations can > be found in: docs/misra/documenting-violations.rst. >=20 > Signed-off-by: Michal Orzel > --- Wow we missed that! Thanks! Reviewed-by: Luca Fancellu > docs/misra/rules.rst | 9 ++------- > 1 file changed, 2 insertions(+), 7 deletions(-) >=20 > diff --git a/docs/misra/rules.rst b/docs/misra/rules.rst > index 11b9c42b70e6..6244598665e2 100644 > --- a/docs/misra/rules.rst > +++ b/docs/misra/rules.rst > @@ -17,13 +17,8 @@ hypervisor. > It is possible that in specific circumstances it is best not to follow a > rule because it is not possible or because the alternative leads to > better code quality. Those cases are called "deviations". They are > -permissible as long as they are documented as an in-code comment using > -the following format:: > - > - /* > - * MISRA_DEV: Rule ID > - * Justification text. > - */ > +permissible as long as they are documented. For details, please refer to > +docs/misra/documenting-violations.rst >=20 > Other documentation mechanisms are work-in-progress. >=20 From xen-devel-bounces@lists.xenproject.org Wed Jun 28 09:23:46 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 28 Jun 2023 09:23:46 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556384.868867 (Exim 4.92) (envelope-from ) id 1qEROS-0000oY-6R; Wed, 28 Jun 2023 09:23:20 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556384.868867; Wed, 28 Jun 2023 09:23:20 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEROS-0000oR-3k; Wed, 28 Jun 2023 09:23:20 +0000 Received: by outflank-mailman (input) for mailman id 556384; Wed, 28 Jun 2023 09:23:18 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEROQ-0000o9-ED; Wed, 28 Jun 2023 09:23:18 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEROQ-0006MR-9F; Wed, 28 Jun 2023 09:23:18 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEROP-0002MR-P3; Wed, 28 Jun 2023 09:23:17 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qEROP-0005yo-Oa; Wed, 28 Jun 2023 09:23:17 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=6gC99CcKzv75Gq7xwqqkqTKmLjolsjkqpvyeqjZcCyI=; b=t3uXplNNjSbIdvGFQ6M+tGxmB1 26XlQnHpJGFH/gUwu4sXGW+rWhu2FtVWVFj15No9AGjrbpv90w8CDSBiiDa1ADDModX3ippGH1rie NIlS7WQ35rRzsEf9FnDPKdPIpoWJaOUmG7zOnf3fP9ijq2o2SNcbNIzw9ur/NcUKd7tc=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [ovmf test] 181622: all pass - PUSHED X-Osstest-Versions-This: ovmf=4416bf3383485d2265b8e1baca7ed9c9c04eb40b X-Osstest-Versions-That: ovmf=44a3d93af3fc3f3762d0e1f48137a370610dab2b From: osstest service owner Date: Wed, 28 Jun 2023 09:23:17 +0000 flight 181622 ovmf real [real] http://logs.test-lab.xenproject.org/osstest/logs/181622/ Perfect :-) All tests in this flight passed as required version targeted for testing: ovmf 4416bf3383485d2265b8e1baca7ed9c9c04eb40b baseline version: ovmf 44a3d93af3fc3f3762d0e1f48137a370610dab2b Last test of basis 181620 2023-06-28 02:40:51 Z 0 days Testing same since 181622 2023-06-28 07:43:45 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: devel@edk2.groups.io Yi Li jobs: build-amd64-xsm pass build-i386-xsm pass build-amd64 pass build-i386 pass build-amd64-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-i386-pvops pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Pushing revision : To xenbits.xen.org:/home/xen/git/osstest/ovmf.git 44a3d93af3..4416bf3383 4416bf3383485d2265b8e1baca7ed9c9c04eb40b -> xen-tested-master From xen-devel-bounces@lists.xenproject.org Wed Jun 28 09:47:22 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 28 Jun 2023 09:47:22 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556390.868876 (Exim 4.92) (envelope-from ) id 1qERlb-0003Jh-WB; Wed, 28 Jun 2023 09:47:15 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556390.868876; Wed, 28 Jun 2023 09:47:15 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qERlb-0003Ja-Tc; Wed, 28 Jun 2023 09:47:15 +0000 Received: by outflank-mailman (input) for mailman id 556390; Wed, 28 Jun 2023 09:47:14 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qERla-0003JT-C5 for xen-devel@lists.xenproject.org; Wed, 28 Jun 2023 09:47:14 +0000 Received: from esa3.hc3370-68.iphmx.com (esa3.hc3370-68.iphmx.com [216.71.145.155]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id be1e2ab7-1598-11ee-8611-37d641c3527e; Wed, 28 Jun 2023 11:47:08 +0200 (CEST) Received: from mail-dm6nam04lp2043.outbound.protection.outlook.com (HELO NAM04-DM6-obe.outbound.protection.outlook.com) ([104.47.73.43]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 28 Jun 2023 05:47:05 -0400 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) by DS7PR03MB5623.namprd03.prod.outlook.com (2603:10b6:5:2cf::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.26; Wed, 28 Jun 2023 09:47:03 +0000 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::1c83:1877:a68b:8902]) by SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::1c83:1877:a68b:8902%7]) with mapi id 15.20.6521.024; Wed, 28 Jun 2023 09:47:03 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: be1e2ab7-1598-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1687945628; h=date:from:to:cc:subject:message-id:references: in-reply-to:mime-version; bh=d1Vnu9lVqRHk4Rkwu4APMdLAew86W/6C1dQPby1f81s=; b=GWdbZVJu/lrU+NNK0Y+YVOU9pHWjM8DkabtRwOMKuohCkwn7T4jNefPX LOd6FvCVlqZ/+9kmYvuAeuT170eVpv6Obtb24wNUlZOrdfMzJhOZflWqW mn7kmDzC2F/C1q+6sWpVXR/a4KIOpPOMtvIOj1FV9njD21dbQ8kU3eF7Y M=; X-IronPort-RemoteIP: 104.47.73.43 X-IronPort-MID: 114463633 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:LXA+RK0LlZARoeURtfbD5eVwkn2cJEfYwER7XKvMYLTBsI5bpzEPm GZNXGmDM/uDa2LwfYp0Oom29UIEv5WEytdiG1dlpC1hF35El5HIVI+TRqvS04F+DeWYFR46s J9OAjXkBJppJpMJjk71atANlVEliefTAOK6ULWeUsxIbVcMYD87jh5+kPIOjIdtgNyoayuAo tq3qMDEULOf82cc3lk8teTb8XuDgNyo4GlD5gJkNagR1LPjvyJ94Kw3dPnZw0TQGuG4LsbiL 87fwbew+H/u/htFIrtJRZ6iLyXm6paLVeS/oiI+t5qK23CulQRrukoPD9IOaF8/ttm8t4sZJ OOhF3CHYVxB0qXkwIzxWvTDes10FfUuFLTveRBTvSEPpqFvnrSFL/hGVSkL0YMkFulfIj1// sERJws3bx2aoviQg5uycNFev5F2RCXrFNt3VnBI6xj8VapjbbWdBqLA6JlfwSs6gd1IEbDGf c0FZDFzbRPGJRpSJlMQD5F4l+Ct7pX9W2QA9BTJ+uxouC6Pl2Sd05C0WDbRUsaNSshP2F6Ru 0rN/njjAwFcP9uaodaA2iv12rORxn2gA+r+EpWEq+ZWnGyiyVcsCRA1RXGjq/Wd0XeHDoc3x 0s8v3BGQbIJ3E6hQ8T5Xha4iGWZpRNaUN1Ve8Uq5QfIxqfK7gKxAmkfUiUHeNEgrNUxRzEhy hmOhdyBLSNrmK2YTzSa7Lj8hTG9Iy8ONkcZeDQJCwAC5rHeTJobixvOSpNvFfCzh9itRTXom WjW9245mqkZitMN2+Oj51fbjjmwp5/PCAko+gHQWWHj5QR8DGK4W7GVBZHgxa4oBO6kopOp5 hDoR+D2ADgyMKyw IronPort-HdrOrdr: A9a23:jjHrG6lQYk6DykMZQasl5/Bz8VrpDfLW3DAbv31ZSRFFG/Fw9/ rCoB3U73/JYVcqKRUdcLW7UpVoLkmyyXcY2+cs1NSZLWzbUQmTXeJfBOLZqlWNJ8SXzIVgPM xbAspD4bPLbGSTjazBkXSF+9RL+qj6zEh/792usEuETmtRGt9dBx8SMHf9LqXvLjM2fqbQEv Cnl6x6jgvlQ1s7ROKhCEIIWuDSzue77q4PMXY9dmcaABDlt0LR1ILH X-Talos-CUID: 9a23:AE95TG6LAkv+TFJ3Dtss1xIlEf0sfUbnzXrJBlWeSk9gcoWncArF X-Talos-MUID: 9a23:i9CHLgvAZBu3ebZtac2nuGx6CNtZ0quVN0EAsoUso8OIEXdJAmLI X-IronPort-AV: E=Sophos;i="6.01,165,1684814400"; d="scan'208";a="114463633" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=NwlPEjIRooAUPO3uhm6Wzn2CEws1yU4MhBt5OF9ZMutXucPlQLZeufj2LHu1Hvg4sxou/s5Ayco1D1idM69WGvUE/tMG9GgYv+PQTYzkTS3ImGr1F518zr4tooeOAzfY5XB+AR5HLGOM0EG2LMyuq1W3yLE3+0YWULzSvAm9A580SAw8mIgnOB/YhKFVoVAJLl/OcIvl2oL2tHTtaMRbwxZOrbU+LDPBZsQdmArCswskGiebm3nQhHZXYwByNLol2FX2yboQDj32n4RJvvgwwvqcDRg8FgxujiJeP/O3RxAu0uweM9kpzuhkck82ZClLhoRqUvyAt34aPmgJfEj6RA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=+tqn1k01s1zHltLb+dpIvJoj9VAdEq/o9GGWidjbOZM=; b=Fkc+HStL522sMtw8ywOSRgE2lSHHhajpWCpTVNWqPuC+jwKBW4VH+HCiJHvLUlSBrKND7bqV5JszdZbJSiYBZBtEDpVBWTBl9JA6aX/49plc7i9b01PpsltYAibLunzd+rIjwbBqoJlx6epgiz6oNcWf5JRQzyc8oavuUO2EzZw4SrZFqWBmRTYIZ4vNHLqbsGEDOwvLCHmQV3ZFt8I0zKY7NAhIe7JVSHmGcbgY3yct2Vpfi2xA0lOcaPpE1fYIy8X7skrEs4FpuvtBpGA15Vg8SNAXcpre6p7PqIFt2o1BP4wM6Zj2x5bQ3kI04hnMl8MYVDf1R4wiS1g+KLU+AA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=+tqn1k01s1zHltLb+dpIvJoj9VAdEq/o9GGWidjbOZM=; b=AgSpKyrNpENsMTFpJZeJq5u7xx5fZYvys9dm4/eDFdCgkQtF5FceTu7LtVI9BxLmK6m90w6Bb3pR3HgCgYYgHzFABxP8b7np2RDYSFZq9c+0Na657BA0F4Ki5BUAmm0vXbcm8bvYDdPxhVq+Zm4amGZ/SX8QoSD+krVds1gQxEY= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Date: Wed, 28 Jun 2023 11:46:56 +0200 From: Roger Pau =?utf-8?B?TW9ubsOp?= To: Anthony PERARD , Jan Beulich Cc: xen-devel@lists.xenproject.org, Wei Liu , Juergen Gross , George Dunlap Subject: Backport request (was: [PATCH v2] tools: convert bitfields to unsigned type) Message-ID: References: <20230508164618.21496-1-olaf@aepfle.de> Content-Type: text/plain; charset=utf-8 Content-Disposition: inline In-Reply-To: <20230508164618.21496-1-olaf@aepfle.de> X-ClientProxiedBy: MRXP264CA0042.FRAP264.PROD.OUTLOOK.COM (2603:10a6:500:14::30) To SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|DS7PR03MB5623:EE_ X-MS-Office365-Filtering-Correlation-Id: 3675e9b4-4aa9-4cfe-ea1f-08db77bca02c X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: Tsto6ILTO6IPx9jMDI1o6Z4VldkFGg4YN497GQbsrBXoGmWaqEWX04/7Ia+SXqKMYTY26gF2aR8UT62GI78c17Kqj1N4tXy2bB3e9XqKoHhvG18IKdWSTFLGa9UUmrd2uHu79dmF91Rs02IGbEWOvGV+09aCaaTmPppYSaFx7Mr/scEQ5z0siE5oZUlr9Und5i2xCxsdkia0QavyMeN5lCIschk2Luol2QHK0aS7rto0zI1f2fullNfJSz3S/eaK9eyZnx4qb/BHyd6fTGaawflhz3FNf6pq1Zw+FpKF3YP+u2vT5QHL/EzJNwXg1FEh6ksgfvtZabp0pm1fCmd8rwyaGEtyU/GcSp3lth0IyukozTWTQuiEMJgpqGp/7WWS0XHbNmGm+XlL+CKrdkbRRHij3vBZO2kCGJayXXm8lGZc+7Jumcxpxll1bIJyJYNG7gNUhEMytrHkgCg/+H7FCXB9MTaqwpNyrW4el3Z/FejeWMHFKfDxSow1ARpZ6G26EAp5HaQLxKZdxMCXVMZwJlCG0LxGSmie5Pyg5uLX9XDlJ9cfP9r+rvQSC1HmJ7Bk X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(396003)(376002)(346002)(136003)(39860400002)(366004)(451199021)(6506007)(5660300002)(66556008)(316002)(66946007)(85182001)(478600001)(4326008)(66476007)(8676002)(8936002)(86362001)(4744005)(2906002)(6512007)(26005)(9686003)(110136005)(54906003)(41300700001)(6666004)(6486002)(186003)(107886003)(38100700002)(82960400001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?YlowVnhrektINWZGUW5VQzFDbFlQUU4ybHg2OTRzSTFwaXpYcytVWkhHbHVR?= =?utf-8?B?L3laZTAxUXV0YWNSUHBDc1ZjMU1DQUdzV1hXWVJBWmEvbWwyYTdUa1dwaThm?= =?utf-8?B?TUxXT1hVZmZiMkdrK0ptdE9mOTF6RzBzWEhzYStLbjdLQXp1MmZQa1gvenZV?= =?utf-8?B?Y2J6U1ZKbTBCREliN0JNcENGMWwwekdNYzMrU1RkLzhQZkh6TElBN0IzWXZq?= =?utf-8?B?TkJnRlpieUJZcHFaRm04andzenZtV2sxMVRIajhZZ21iUFNWRy9NcTZxTitx?= =?utf-8?B?UFZPUTgvVllJbk5tYnF1MDZoY1ZqMXExQ0dVSWxmZ1R0aERXWnRha1FTNTFP?= =?utf-8?B?RUZ1bnZuTGZta2xFdVd1U0RSTkF5VWR3NEF5azhMRFpBbThNMFcvaFQxdHMx?= =?utf-8?B?cjhYaUVHMHljMm1ab3NGNFQwWnFNd0ZqT1lrRUs5TDVnRWVRT0paUE0wOGox?= =?utf-8?B?QXRLVDhaSXZmNzlXQzhGNS9jb3creW14dEZDb050RnlWMVc1VmVRSGtuNm5q?= =?utf-8?B?eWI2Q0xCVFFpOHdZYW83Y1ZUb1cxazkrTEx1bEFGNTFLNU9BRlFZK0YzZTBh?= =?utf-8?B?cU1uT2dWdmFGQ3owbUpCUXFvOER2amFUQWl5TlVFOXgrZUhQMThjb0JnR0dH?= =?utf-8?B?STZNSzJIUXllVjlWZWFRaEdaT01NZWszMlNXNjE4U1pYTEpNYXkvN3hGb01t?= =?utf-8?B?V2owYzZJWW0xY2JuOFROaUs3d0x6MmVmTHFMWWh4b3R5ZSswanZ4NHlDN1ll?= =?utf-8?B?VWFXYXh3ZWVXaDJIV2dDY0RxdGNWaURIWWZSSnRUcjN0OGcyUFNVRVl0c1Ex?= =?utf-8?B?MTJLUmNhTFQyUVNtcGhId2dRdi9KNWE0ZTRiWXRVWVcxeE9zWm9JNTlwbWJx?= =?utf-8?B?UnVkdU12UkdCK1d4cGltZ0tQK3h0NmNJUVdmRDR0RytlM3pvSXNPUncwbWh4?= =?utf-8?B?S1QwOERFcE9GRyt0aVBob0hvM2JCaWliZkQ0SGhodWt6ZTNGODI2cDFzUGJv?= =?utf-8?B?YWlsYUxPTXoyOGRmSGdXdzRxaWgxWmdTMm1xaW56NnpnMnpXK1pjWUI0dU9T?= =?utf-8?B?VkMvdUZjZWV0T1lGUGxPeWNjVlRsK1RoQW8yS1RuTk01UkVhODJCVmRMQ09L?= =?utf-8?B?VGJza0s0QVNKRDZBL0ZCS0NQYUNyK1hmbWpOYUMwdjhZWWZIZy80bGE2Zzh0?= =?utf-8?B?MHdmL2dHMGkrcVFFVXh0Z1p6NnRJMmwrQU5iRUJtMDBuRmZEZVFLK0tUeTJi?= =?utf-8?B?eC9GcUlRMEdZaElsejFQaUljdWVHVktWS3ZmZUtidE9RU2hMTWYzbUJudEpm?= =?utf-8?B?ZHd1K0Z1UG5QMXErenlycG9UMDhyanVXUkl6Ymgvdk8vT2JBYTYvTENrWU1T?= =?utf-8?B?WXhHdlZzVC9FR0x1eHgzZnlWN2JkZllFSDNpVWVEUFhDSFF6NUhXUmZTaDJy?= =?utf-8?B?OG1rVHRFMUJyR3NFb0JtWHlYc1NpL21PR1VadmZkMmpxQjFzSHlPUkZLNnNW?= =?utf-8?B?MG5PNjVYTzFXNVZXV0VoQzN4bXRlZmlUMGRCYVNiRmdGbzM0SjkvMlZXZWRr?= =?utf-8?B?Mm1JYmllYWp4bmlBRTF4TUszZ2tFcmxHRTBTaTVFL1RyUTFRb3hpZjBJdThS?= =?utf-8?B?QmdMY2FUY1dlclIvbDdqRGNJbjZ2VkdsKzNLelJ2d0pIMER4VjRwS0hkTTRU?= =?utf-8?B?QkYxbWtzZ05KN1RhbTZvZEoxY0J4SnJyUHFvRkx4c0NVMHZOQU96U3FsM20x?= =?utf-8?B?WU1CcDBqMzdSbDRLNWdpNFZXaHFjSHNJQXBZcU1uZ3lTY2Izc0U2VVFiMjMw?= =?utf-8?B?M2ovY0NtNXNzNlI5TDRPRVo4T3h6RG52QThyT3VJZ1RTQVJCbXVwWUljSVZC?= =?utf-8?B?RzNPSHBUVXpyQUVIN2k3akcxOGhrMXV2bVo4UDJaMVRSY0Zka2lWTDB3NEZt?= =?utf-8?B?bmdsdFZjTC9udGwxRFluR01wTkhEVzRoWGtJNU9VYTQzQXBtU1Zqa2drSml0?= =?utf-8?B?MVY3Z0Q3WG03WHowKzAra1ZKSUc5VzR4bVh0UFlRODdmLzdpRit1ZUljSzla?= =?utf-8?B?UHN4T2lETWUwd1MxblFZWVUyYms4MzI5b3h6akhpc2djQ0tqUFY4WEdIRTBk?= =?utf-8?Q?6ueMlqWHfDgkLAqw48X1psk/F?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: KPMBC303KIVsOnoKHBAsMrIx4Fy40c2fmtZRd4Gt0xOG93E/Y3+Qy67j1/vLbGh5DEicdIcq7pp9QeJqt5auvs7j3RHl8t6Nc+Kl5HNOt5roF6KZr4lct8D0YjSQjZvipQr4fEwPcGL157lhdQDac9sKOOz3TXQNS5Lfp2CplPHYTkcxbTFc+o3fESi7uiRubfPnb9dTRqxdtQa4gncJhmZz/loWlU0sZclOi8m5E425OtBSh99xJyoYG7P2sf9aVvkpSh+k0VVrxvNdHxArNlxIrwmkaQKF+y9x3/7V0iQ01F9Ik6tSoE55Ahry1Fipgl1r6j2co/pXZ1TspgP5b5mhWIupT+TWb4Aol2xWQB+w0jPGYs+VgJXGezAFcoQS6LI9EnhDostCr2eVSKqDTo8J5/QHSxglKjtzoB5sK9LsX57jOqDJtUTcJRq5ECPmw4Tul6iBdDM133whskKPLU2HmqXzkg0l0afNOUTwRdlh4D5M08E/ul7ybtkae/4so8EwEGrX6b3GRmAmqtYRT2dLhLl4zHqE9mrEhpPV/GhGvuoRaQD0mPxlZuZvsJXK8bddhaS6DPbjiNZXoVuACh3+Bkt9iFSGy8qNMn4EIbWbGSl7fRPaNKUkhcrmQKWiA3KQaFj2EOeOZ5yulNjfWQXuSvsgpE3bX4KQSHzy7bO3HV2O8THS+IPsTd4gAQS/oVn1PwWPtwFCE4XGGLzVW0R5pIJReL7qbmHwRhTRrR6I6Blr1entMrCYyDw7oxRVkLpqf3wu5b6ZBkhJ5drfexeqdGSxY7udeWZIFlSBXMdJcOScsrjTNGus94mygTsn X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 3675e9b4-4aa9-4cfe-ea1f-08db77bca02c X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Jun 2023 09:47:02.9652 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: esDNrX12GddsfKq9njdsGKJhIde8+/A+VpX9sY9aIBUAjVEZVE4TCPkum8yW1hubNVOKkTzEyOuje5ozzwaKNg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR03MB5623 On Mon, May 08, 2023 at 04:46:18PM +0000, Olaf Hering wrote: > clang complains about the signed type: > > implicit truncation from 'int' to a one-bit wide bit-field changes value from 1 to -1 [-Wsingle-bit-bitfield-constant-conversion] > > The potential ABI change in libxenvchan is covered by the Xen version based SONAME. > > Signed-off-by: Olaf Hering Can we have this one backported to 4.17 at least? Thanks, Roger. From xen-devel-bounces@lists.xenproject.org Wed Jun 28 10:06:07 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 28 Jun 2023 10:06:07 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556395.868887 (Exim 4.92) (envelope-from ) id 1qES3a-0005s2-Fk; Wed, 28 Jun 2023 10:05:50 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556395.868887; Wed, 28 Jun 2023 10:05:50 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qES3a-0005rv-Bj; Wed, 28 Jun 2023 10:05:50 +0000 Received: by outflank-mailman (input) for mailman id 556395; Wed, 28 Jun 2023 10:05:48 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qES3Y-0005rp-Qn for xen-devel@lists.xenproject.org; Wed, 28 Jun 2023 10:05:48 +0000 Received: from NAM11-CO1-obe.outbound.protection.outlook.com (mail-co1nam11on2060b.outbound.protection.outlook.com [2a01:111:f400:7eab::60b]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 586b9a29-159b-11ee-8611-37d641c3527e; Wed, 28 Jun 2023 12:05:45 +0200 (CEST) Received: from SN6PR12MB2621.namprd12.prod.outlook.com (2603:10b6:805:73::15) by PH7PR12MB9104.namprd12.prod.outlook.com (2603:10b6:510:2f3::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.23; Wed, 28 Jun 2023 10:05:42 +0000 Received: from SN6PR12MB2621.namprd12.prod.outlook.com ([fe80::8018:78f7:1b08:7a54]) by SN6PR12MB2621.namprd12.prod.outlook.com ([fe80::8018:78f7:1b08:7a54%2]) with mapi id 15.20.6521.026; Wed, 28 Jun 2023 10:05:41 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 586b9a29-159b-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=mqbUU7GLt583959hwrkRVMPxS+cv+j6CspCR4eiCSc/wOU6HuebeATu9OTmWEO6/ivci3k1KLHv1aonxhhtiFa/Um7tCan8kNdfGZb2Aatmdyh+6juqrKKKvaaD/oo2YHFkgLQVTejhSq7TTwfKRXCKQdsxhHIvqSEHPmv/m3CemHeUVdV7C44lQq4ColQNlvWLE1VitYzap+zzO49PTScXEqWV8fca7jzv0I23g5xSG8OVqTtmdfQ5ogmqdnmACmntAXile4Kcy0WPlv8DXQrFtsTLLX2NOouBMXXJUm1tjoNkwv60mOTm7ViCv4T92tHTpEpWmt3UqDw9cCnA57g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=XZ4JW294WQfTWKK9eV1cDEOFkWdpPNaBi8DgSkdciYM=; b=h+ps7V9SrIUYcoV0yK+Q2afZWzGgpRGLMbKoI6q+pySZs4wmQ+dmLY4XGXjZQoXv0oWk8Zuj3EX1hjf/etqJz+k6Es+zeYWy53SIqAl11s2QZfofgrheRYbTMSvyahIBMkrH6gZOimi0sgkrwsPXMvXX+05+oV3v/ZiO1UhRdAhyesRC657aGVH98cpZqyiy1f9Me6u3SUhJS7a3tB4AFe10bMfajgFt9bxPgghddMR2nNdTWIgvLZEu6vV1INYrRpA6yACOZI9+AztYOzC3emcFsFaUNvsZ/S8XCtqccpNuBexL9tT5oEjmowL/FzT0f9z/iVOQNvX7ppre//OMuA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass header.d=amd.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=XZ4JW294WQfTWKK9eV1cDEOFkWdpPNaBi8DgSkdciYM=; b=cJrgQZUJs947P3TXeK0sVZhYjZOdNai0OKWTiySbV3bw2bO5Zmzl0TgSIot836Rin1DNztGXDyyG/zsOjVum+bjBbjT+Xb9BBlq5PbLRVU444MBfaYDhwMsCgwmJvn90gyROfIMD8LXEQU4oQIm+V9sq11CHUveWCs374SxBEcU= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=amd.com; Message-ID: <864e467d-2ad8-7210-ca59-a9e34b95bc81@amd.com> Date: Wed, 28 Jun 2023 11:05:36 +0100 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v3 30/52] xen/mpu: populate a new region in Xen MPU mapping table To: xen-devel@lists.xenproject.org References: <20230626033443.2943270-1-Penny.Zheng@arm.com> <20230626033443.2943270-31-Penny.Zheng@arm.com> From: Ayan Kumar Halder In-Reply-To: <20230626033443.2943270-31-Penny.Zheng@arm.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-ClientProxiedBy: LO4P265CA0246.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:350::9) To SN6PR12MB2621.namprd12.prod.outlook.com (2603:10b6:805:73::15) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SN6PR12MB2621:EE_|PH7PR12MB9104:EE_ X-MS-Office365-Filtering-Correlation-Id: 6cf0259a-c5c2-40ef-033f-08db77bf3ae4 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: JeRUmKFQg1YrJaCYR1ziQt24AtUyCDMygGElZpW1IRDLruqIFm0FYBzdPZRiTZbgLiivwfzw3QUpRolkZuqmJMl4AYE5iv8S70MBR2pbjo/Iyy/TSfsJgM4wNyDfanzhvGD7PNJTc/qJGSJWqOyo+dCKR7ZpJ7IJIRuU53ybs7YxKW0gJjGFXF6bZNGdzMJjo0Y9+AB66PIL875hkajX/B1cOLGzHPr1q0Rqcfih3wJBJiMM/GPEcMVazedBtLEth71wstxZrR64I+h/OspgvtUYSNoxX9C237K57hAV7ue02G5ugi3d3Yi8G8Lb/in9Q4s62Pmjt0nZqkUZAGa0y/PgVv5etBp3FmlSFbuv/qA2Zp/wnSUOyLYF398jMHGqmwrJcgYpNfr8rDcdQ3i5O60/0QYTjOzj0VpCdbFkCOrNIZXblejvCEmpIePC9qpY8vPq7iQ1uBgbeCbPkiZnE4rCkvQOq8z3WkuQBho7JHiLLErY9AADdVLwU4MMFlhpC8NdhuZ+Ou1RxjXtohosLoDHx9KnZhMXmiAPC3L5eeLv3jeXx3QNfmXRoX8UEXNnG2e/F4I8HxUNUky4u51H2eUNcGhfWrw+uxaMJ8yDhIKXJvo7kIZOKjiukmOKkIcwDTOrxMrvsO3LTT4VrcGxxciE8IJW4HhXFoaUKmaraxgLzq8WGliBInLPo4VDaFkP X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SN6PR12MB2621.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(366004)(39860400002)(396003)(136003)(376002)(346002)(451199021)(31686004)(36756003)(53546011)(6506007)(66476007)(5660300002)(316002)(6916009)(66556008)(41300700001)(8936002)(38100700002)(31696002)(66946007)(8676002)(6486002)(966005)(6512007)(2906002)(186003)(26005)(478600001)(83380400001)(6666004)(2616005)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?L0VJNnNoc0tUeUxBRERNOUY3WXVoMTVSRkpYNGNwa1VJSmtRZ29uaThGbDlB?= =?utf-8?B?dTN0blV1UWJYeEE4aWdxMC93aGpuRWNUTmRuUzNHWk43NklBVkJYWkVxMEl1?= =?utf-8?B?ZmZ3U3lwc010ampNYVhlMFBUSkVIajR3ZFh6OXdLTWZQbkxuZVpBNkxMVnh1?= =?utf-8?B?QmdQOUJkaTljNDFqU2YwS2Y4a1M2UWxFdXBKOE45bThrMVE3MlRDQ1BtbVpI?= =?utf-8?B?OWNsSHlkT2lIaVVDTlh1NllRT29ZK0N0d0tKaXhFZzgrandrRGtxWGdvczVC?= =?utf-8?B?QTVTdkpnSmVsd0hwVjVNcHBaaFlWT25ldTZWTWJsMkRPakxHelFXWGc0RDg4?= =?utf-8?B?SUQvcTlBcXhGZmxRWjMvTUJWZ3d0aDE2WWVpK2tQdWw5K3lOc2pSaVZ2ZHdN?= =?utf-8?B?U0FjVjhabjRESTZZd2hzT0U3dlhtci9CeG1SRkRZR3NERFdtV0tnNEkxSkVN?= =?utf-8?B?eGt1WGpZSHZPT0p2Yjk4S3c1UmtKNjQyakt3aGMzQ2hlRTVyeEZxbzhhcXA5?= =?utf-8?B?M1kvS0Rud3Bab2ZoYTRMY1BEVGhTOXRpdXozTFJPTVRGY04rbUp0djh2d3ho?= =?utf-8?B?NWZ2OHJIbDdqSHFEdTZTcmhGZy9ES241YU54RVlsWVBIOFJEb3VEcU5LSkli?= =?utf-8?B?bDdCY20vS0NCRTBHQnErRXlKbllmTkoxWm5LUHNncTBLQVR2SEtaa2NqSzZY?= =?utf-8?B?S3NJQUlxQlVSQmJGVWxOcWRkUC9NTTVTMVJrdzZqUldBbHhwbUlHOTdTY0o5?= =?utf-8?B?enFyemNXQ1RWL3h6WVAvOUVNekdmcnUvczRybDZWcXg0Q0YvdS9xNDF3TlVH?= =?utf-8?B?M2R6ZzBwVmZ6OVFITWdYMmh3eHZheG9PK2FRSWd2RDYycmlBVXZ5VHgvMTNz?= =?utf-8?B?YUFDazR1T2FMTXZueS9qblc2eDlTRS8wSC9udUVvWmNBWkJTMnp4MkN2REN2?= =?utf-8?B?ZWRxSVp1Zi9HVGFWRnF5cmg1cnZraVR1T2V4RXRtbEpMandicU9wWUJpcE1x?= =?utf-8?B?ODlXQ1RTWGNHNWVPeUM1K2ZHK0tUK3BqNzZQdUhqVC9oc0tpcG16RTlJWnJG?= =?utf-8?B?ajNHQVgxcnowMStYcDVSMVJqbDljZEtkN3QveTZ0cVFNeXRsSEJUWkhqaURK?= =?utf-8?B?SFNKQzhOM0V0VEhqcXpYZklNd2hvSlpCU0hnZGUwQTJGWXZ6bURtY0phbkxy?= =?utf-8?B?b281dnVoU05RWDV6eWw3WU5oUzljbkZNVThlNlVwWTMyYWM1RHM5RUxrSEJw?= =?utf-8?B?SzFwQ0xKM3FhU0xQTzZZYk96SXBXQk83UUg2dGhKbmtyajE2ODg3eGdCRXhj?= =?utf-8?B?YndibDNFUVZqOTRHVVIvcDhRYm1abHZTNzZNQVZsR0k2dEJQekVqKzlpUml6?= =?utf-8?B?SGc3UCtpQkFTMTZ4L0J1UWFGWGl2YTk5cjJZVVJKOU9UNTRUSVBoYTlYZHZp?= =?utf-8?B?K3RhU2lMRUxTVlQ5TjBFUllBazJwSWVpOFJ3VTI2REhnL3JleCtqUmI5NWJM?= =?utf-8?B?NTNDTjlmcGw0U2pwQXdhQW1wVExIcUVaY01wNVl5Mlh2VTVWTWYwZi9LNExu?= =?utf-8?B?QjZiOCtvU3ZEU1ZucGRvcFVsUGc2T1BaazBFZXhFdW1KVWJqTG43cE02cHpl?= =?utf-8?B?K0xnTTZxYVR6czlZb0daQU1rOEdlWmtGeVlWejJVS2J4eUhpbDQ2TmVtTGU3?= =?utf-8?B?TGNveEZJWDM0WS8vS0tvQTNzMGFrUWdsNU11RGxwdVRlMjNFMjdkQ2xjd1Zk?= =?utf-8?B?akZ1eklMVWVhb2liMEphM1dJRHErQnVRQ01rTUhVb3dINVNjblJ4L2VTN2JY?= =?utf-8?B?S3YySHZqdlU0Njh3S0xGbTRjc0dQK3VJVlU4ZVhNL2lVL0dEalhYQVFvUWFW?= =?utf-8?B?eUJIWnpMUlRDM3BlU1RFWE83cUJ3NlNLb0ZsNElJOCtLeUtyQ2FtUGRyZ3VB?= =?utf-8?B?MVRYNEhldGVJUEtXUjhMSktZM3RUQTBKL0thT1ArY2x5ck53eDBEWlpBQ2tQ?= =?utf-8?B?djZmTGVEcmhacUxnT1h0T1czUlFhbXZydklTOFZXQ1BzRjhUTEg5VVJxeDR0?= =?utf-8?B?WG8yZk1ZOTgyVjJSTlQwSmlrM0ZVL200ZjN1U0VpMi9xMzd0NTVVNXh0UHE5?= =?utf-8?Q?FiGHJXMp7nxt6EgKc7E2N+/ge?= X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-Network-Message-Id: 6cf0259a-c5c2-40ef-033f-08db77bf3ae4 X-MS-Exchange-CrossTenant-AuthSource: SN6PR12MB2621.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Jun 2023 10:05:41.6895 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: dENd00krJ/mjR4bISJz32brZ2EczSXhy0KfeTbBDhoem998Z+lLj++WRFgg+LXE0O7bQtA0XYfsO777df89f0Q== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH7PR12MB9104 Hi Penny, On 26/06/2023 04:34, Penny Zheng wrote: > CAUTION: This message has originated from an External Source. Please use proper judgment and caution when opening attachments, clicking links, or responding to this email. > > > The new helper xen_mpumap_update() is responsible for updating Xen MPU memory > mapping table(xen_mpumap), including creating a new entry, updating > or destroying an existing one. It is equivalent to xen_pt_update in MMU. > This commit only talks about populating a new entry in Xen MPU memory mapping > table(xen_mpumap). Others will be introduced in the following commits. > > When populating a new entry in Xen MPU memory mapping table(xen_mpumap), > firstly, we shall check if requested address range [base, limit) is mapped. > If not, we shall find a free slot in xen_mpumap to insert, based on bitmap > xen_mpumap_mask, and use standard entry pr_of_xenaddr() to build up MPU memory > region structure(pr_t) > In the last, we set memory attribute and permission based on variable @flags. > > To summarize all region attributes in one variable @flags, layout of the > flags is elaborated as follows: > [0:2] Memory attribute Index > [3:4] Execute Never > [5:6] Access Permission > [7] Region Present > Also, we provide a set of definitions(REGION_HYPERVISOR_RW, etc) that combine > the memory attribute and permission for common combinations. > > Signed-off-by: Penny Zheng > Signed-off-by: Wei Chen > --- > v3: > - implement pr_set_base/pr_set_limit/region_is_valid using static > inline. > - define index uint8_t to limit its size > - stay the same major entry map_pages_to_xen, then go different path > in different context(xen_pt_update in MMU, and xen_mpumap_update in MPU) > --- > xen/arch/arm/include/asm/arm64/mpu.h | 64 +++++++ > xen/arch/arm/include/asm/mm.h | 3 + > xen/arch/arm/include/asm/mpu/mm.h | 16 ++ > xen/arch/arm/include/asm/page.h | 22 +++ > xen/arch/arm/mm.c | 20 +++ > xen/arch/arm/mmu/mm.c | 9 +- > xen/arch/arm/mpu/mm.c | 255 +++++++++++++++++++++++++++ > 7 files changed, 381 insertions(+), 8 deletions(-) > create mode 100644 xen/arch/arm/include/asm/mpu/mm.h > > diff --git a/xen/arch/arm/include/asm/arm64/mpu.h b/xen/arch/arm/include/asm/arm64/mpu.h > index 407fec66c9..a6b07bab02 100644 > --- a/xen/arch/arm/include/asm/arm64/mpu.h > +++ b/xen/arch/arm/include/asm/arm64/mpu.h > @@ -6,6 +6,10 @@ > #ifndef __ARM64_MPU_H__ > #define __ARM64_MPU_H__ > > +#define MPU_REGION_SHIFT 6 You are using this macro in patch 24/52 and you are defining it here. Please consider moving the definition to patch 24/52. > +#define MPU_REGION_ALIGN (_AC(1, UL) << MPU_REGION_SHIFT) > +#define MPU_REGION_MASK (~(MPU_REGION_ALIGN - 1)) > + > /* > * MPUIR_EL2.Region identifies the number of regions supported by the EL2 MPU. > * It is a 8-bit field, so 255 MPU memory regions at most. > @@ -21,8 +25,33 @@ > #define REGION_UART_SEL 0x07 > #define MPUIR_REGION_MASK ((_AC(1, UL) << 8) - 1) > > +/* Access permission attributes. */ > +/* Read/Write at EL2, No Access at EL1/EL0. */ > +#define AP_RW_EL2 0x0 > +/* Read/Write at EL2/EL1/EL0 all levels. */ > +#define AP_RW_ALL 0x1 > +/* Read-only at EL2, No Access at EL1/EL0. */ > +#define AP_RO_EL2 0x2 > +/* Read-only at EL2/EL1/EL0 all levels. */ > +#define AP_RO_ALL 0x3 > + > +/* > + * Excute never. > + * Stage 1 EL2 translation regime. > + * XN[1] determines whether execution of the instruction fetched from the MPU > + * memory region is permitted. > + * Stage 2 EL1/EL0 translation regime. > + * XN[0] determines whether execution of the instruction fetched from the MPU > + * memory region is permitted. > + */ > +#define XN_DISABLED 0x0 > +#define XN_P2M_ENABLED 0x1 > +#define XN_ENABLED 0x2 > + > #ifndef __ASSEMBLY__ > > +#define INVALID_REGION_IDX 0xff > + > /* Protection Region Base Address Register */ > typedef union { > struct __packed { > @@ -54,6 +83,41 @@ typedef struct { > prlar_t prlar; > } pr_t; > > +/* Access to set base address of MPU protection region(pr_t). */ > +static inline void pr_set_base(pr_t *pr, paddr_t base) > +{ > + pr->prbar.reg.base = (base >> MPU_REGION_SHIFT); > +} > + > +/* Access to set limit address of MPU protection region(pr_t). */ > +static inline void pr_set_limit(pr_t *pr, paddr_t limit) > +{ > + pr->prlar.reg.limit = (limit >> MPU_REGION_SHIFT); > +} > + > +/* > + * Access to get base address of MPU protection region(pr_t). > + * The base address shall be zero extended. > + */ > +static inline paddr_t pr_get_base(pr_t *pr) > +{ > + return (paddr_t)(pr->prbar.reg.base << MPU_REGION_SHIFT); > +} > + > +/* > + * Access to get limit address of MPU protection region(pr_t). > + * The limit address shall be concatenated with 0x3f. > + */ > +static inline paddr_t pr_get_limit(pr_t *pr) > +{ > + return (paddr_t)((pr->prlar.reg.limit << MPU_REGION_SHIFT) | ~MPU_REGION_MASK); > +} > + > +static inline bool region_is_valid(pr_t *pr) > +{ > + return pr->prlar.reg.en; > +} A lot of these macros and inlines can be reused on arm32 as well. I have split them as follows :- Refer https://github.com/Xilinx/xen/blob/xlnx_rebase_4.17/xen/arch/arm_mpu/include/asm/armv8r/mpu.h for the common definitions. Refer https://github.com/Xilinx/xen/blob/xlnx_rebase_4.17/xen/arch/arm_mpu/include/asm/armv8r/arm64/mpu.h for the 64 bit specific definitions Refer https://github.com/Xilinx/xen/blob/xlnx_rebase_4.17/xen/arch/arm_mpu/include/asm/armv8r/arm32/mpu.h for the 32 bit specific definitions (This I can add later as part of R52 port). Please consider splitting the definitions so that R52 can reuse the common ones. - Ayan From xen-devel-bounces@lists.xenproject.org Wed Jun 28 10:08:19 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 28 Jun 2023 10:08:19 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556401.868896 (Exim 4.92) (envelope-from ) id 1qES5y-0006VB-Vu; Wed, 28 Jun 2023 10:08:18 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556401.868896; Wed, 28 Jun 2023 10:08:18 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qES5y-0006V4-TP; Wed, 28 Jun 2023 10:08:18 +0000 Received: by outflank-mailman (input) for mailman id 556401; Wed, 28 Jun 2023 10:08:17 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qES5x-0006Us-CB for xen-devel@lists.xenproject.org; Wed, 28 Jun 2023 10:08:17 +0000 Received: from NAM04-BN8-obe.outbound.protection.outlook.com (mail-bn8nam04on20600.outbound.protection.outlook.com [2a01:111:f400:7e8d::600]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id b19dca14-159b-11ee-b237-6b7b168915f2; Wed, 28 Jun 2023 12:08:15 +0200 (CEST) Received: from SN6PR12MB2621.namprd12.prod.outlook.com (2603:10b6:805:73::15) by PH7PR12MB9104.namprd12.prod.outlook.com (2603:10b6:510:2f3::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.23; Wed, 28 Jun 2023 10:08:11 +0000 Received: from SN6PR12MB2621.namprd12.prod.outlook.com ([fe80::8018:78f7:1b08:7a54]) by SN6PR12MB2621.namprd12.prod.outlook.com ([fe80::8018:78f7:1b08:7a54%2]) with mapi id 15.20.6521.026; Wed, 28 Jun 2023 10:08:11 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: b19dca14-159b-11ee-b237-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=QcjtftQEsaVGQF8CwMhyC9RM33cet8yZBYNL7xbLdN/QKKG86B6+SlVgG0LlUz2B5meL/TXheD0xy71+8osxFUvhnGM5KeMURRGX7OqtGAdAqLZNy9kC/GlKz3ERXNSYJ4hpMDWoGfyiHiRjhzPi4bWAvUdJ0Nd1H9t2UAfacY33pW/hv5ZVq9D6YZbYpAkLGFIeoX7+BORE+GdwyktBRBb8QbZWvOrMjEoeki6om4ZjX+WtJzAiwsThpIzIljEOjzIrWGEXsdVsx6YeQ0VAtZ2e9e0qu9nageTfQKbu5Qn5qCBLAccy9DLhAAAQTRgSACMaIih0xlDdIH/4nJPntQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=noiZ0+5Ph+APC5sRXmtvUNmu4TqKbm9LN3N2A3OKlbQ=; b=nuN81ww2A2NRbvSRT3pGa1jMJc3bty9T2XZLzKuU7xVRgPLXTAf935QIe7v6mqhk9UnILHJVyR/BaXhhCmckmtLrMpzeEiT0YBo2dckk4JdaPctoqzj2xfK8ExaqPM4kcC+0rq8kM8SWriJVz5gY15+j9xACOQxnGxA3Ctk6SVukh1wDkGcBBK29krekJ1wEdB6C6Z1d7ctd4iUcm3Pj5rmROMFBowmSgCOnPNtQFdOQdqluUzuSIB6mlxmAPAh9YMC30ypsFroYj4beTr+lqUyNjPdSamROi0yIxAlD7kEsdd2RsN9XVQYIXomL9Ix9FI0PRBh23De3WU3UGebW0w== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass header.d=amd.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=noiZ0+5Ph+APC5sRXmtvUNmu4TqKbm9LN3N2A3OKlbQ=; b=e51wKWczRJphPhs9mqK5cNkg7a8RH16Dma94UlUFG6craAQDtBE43avtX6NJFJ+9RJplKph5jYUzHdOB6jJ++NeEQ4+RGdHtXoCQvdh4jQN/A9Xn43YeW/ZlTK8ZoHOw5rtoFTii1Rk6Z2rD7YlPJZreaSHXBS1xfDYZgesddO0= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=amd.com; Message-ID: Date: Wed, 28 Jun 2023 11:08:04 +0100 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v3 30/52] xen/mpu: populate a new region in Xen MPU mapping table From: Ayan Kumar Halder To: xen-devel@lists.xenproject.org References: <20230626033443.2943270-1-Penny.Zheng@arm.com> <20230626033443.2943270-31-Penny.Zheng@arm.com> <864e467d-2ad8-7210-ca59-a9e34b95bc81@amd.com> Cc: Wei Chen , Penny Zheng , Bertrand Marquis , Henry Wang , Julien Grall , Stefano Stabellini , "Volodymyr_Babchuk@epam.com" In-Reply-To: <864e467d-2ad8-7210-ca59-a9e34b95bc81@amd.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO4P123CA0383.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:18f::10) To SN6PR12MB2621.namprd12.prod.outlook.com (2603:10b6:805:73::15) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SN6PR12MB2621:EE_|PH7PR12MB9104:EE_ X-MS-Office365-Filtering-Correlation-Id: 55e29781-7a40-43b3-92d8-08db77bf944a X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: UA/boK67mAEMs4/sWFhvsadOrrK5aXiFfTKXczd6AN0llrVDKdZkRu3WQLv6bu++V9HsgIDtd0nCzKTu+8uLAYhRJ/8PGIiWcz0KeDchSN0DtiNnXLTIYtE16RD9faj/UYjg7q1xDkB4LljW8gBT3iuzf1bzD+CDCB1tkLWlNhdeVECe67zymbknUdtSLGivZyXric+GJxUZ4P7wx8d3BwBFjEVYLX6VbIsMbHMQp+ejwNxxX7gIAc+343nyJwaUViEkldSKqvaKDZTqQ511dJbxY084zKhgXzwt0pRUg7EONceps96XZMJlFyL8qYmdZT0UUjxddaoej8yZxhVSlQzr+2GBzyG5HE6p7eaZz2g+jUKXxkzaipXzay55nbth4znw9nRZX/DxaHluifqgeiGbRRodVeeTMyhoZSy5sZTYvb1LOzRAEdeRB0dKQRG02HBuZvp3kZxtKstITK/dMQbBc9Rsh2b7Gf6linRGGWCcrswH2x7BZ7d6V6VGfW/ScMCeW8KKrE0cr5dNAJFvWqkn0UWDUD052LsZMrhHGnUNcnw5txtk0ongVdt5cQTm3MdUU8FE5qgHE9ceNv6C7duYR3NLfnwyXCVPQeh3Q0g/Qrz5e/pM8scsaJzR+y5xy3MC+ny9oSj7dNGCEAZBxyIAe8DlpO0lqrXZs33kMaH9qPFnTlUzSzFU/TmnOevc X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SN6PR12MB2621.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(366004)(39860400002)(396003)(136003)(376002)(346002)(451199021)(31686004)(36756003)(53546011)(6506007)(66476007)(5660300002)(316002)(6916009)(4326008)(66556008)(41300700001)(8936002)(38100700002)(31696002)(66946007)(8676002)(6486002)(966005)(6512007)(2906002)(186003)(26005)(478600001)(83380400001)(54906003)(6666004)(2616005)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?SEdNdDhPWG9PU2ZJcVU5NHFmcWtYYzF1TjBER1lMMmZoamlOQjN3TExxVU9u?= =?utf-8?B?YjgxM3BoTHc3RExNWEYzV01LaThHZHlFUDhpUk84cWcxZk1qcHJJREt6Mndn?= =?utf-8?B?ZHBDZ2hnWWRKL0hMS1pzdkswdVBXODR2ZlErbTAyNXJ6TUh2Nm9aMnVxS00y?= =?utf-8?B?VUc4c1UrTENpNTRQeERLeWNVT3d2Zlo3M3dyOEFqZzBJSUZiNWQ4d09PaTdO?= =?utf-8?B?VENGenVSdjg5L2dqNXR6R3N2UmpVUWRRTUlmUytva3R3K1NRaENGWmZCdEhH?= =?utf-8?B?N3JZT2JlVUVyRVBDdUt1WDN5Q1drM3lYVnJCMmNmOFlZVDhHdktXd0E2Nk5a?= =?utf-8?B?UjBVeXRJZFpWUC9VRnJkck1kZ0JTTWVHaFNPWDM3ekpFOHFhOVEyRVRzRXNs?= =?utf-8?B?TjdBTmlFbEs0RXh0VVQybThlN3I0ZHZ0UVZsdHpGK3NPVWJlcmdTRzVsL251?= =?utf-8?B?Y0N3TXR0aEdhV3Z5Z29UTm9Fd2lWYllZSHF3Z2tGNk9xVVpFU0t5Zi8yUlJ4?= =?utf-8?B?NXBmM3F1M0RoWWZiY2l2WFhVSEh6clJrS09NSUJQd1JxdGpyZE5GZ2puVXgw?= =?utf-8?B?VkU4OU1jeEVTYlBWYkZNYUJnSUo4ZjlqT1RJdlJ2YmpyWnZXYVFkKzdxMXd3?= =?utf-8?B?Z1lkUEFVOGhDam1kL0RhL25YeklNNW16ZmMwWk1WTlZzclBCa29SeG1hMGZ6?= =?utf-8?B?Mi80WHZTMFhtbDd0czZraWV4RUxKTDRRdmNPelpidmgxZzJDbU5vVFdrYzR4?= =?utf-8?B?T1JHbFp1RzgrUGx2UVkwbDlEdExHdU5tZlF2a09ncXNwdU5yUzNHVDNYZ1FN?= =?utf-8?B?STNKSmxUeGduYmlvRDZ2UGloS1ZUVmYwazFURFJTNGZCSEtzbEhtOGhudFFr?= =?utf-8?B?ckRXUGJieTB0eitQVHpFdnU4YzFsY3hSaEZhNndJTTB3TGN4Y3ZMeXFyTy85?= =?utf-8?B?Vm4wamhqVDJyVjF1L2g2OHlhNGlxYXpBdStDU21aOUFPWVp0TC9DUmZyckt4?= =?utf-8?B?VGpzTDY2bVc2VDlFbC9XVGVVL3A5RVh0MTZiMkxLQ09XSm5hdVZtRExPOGdB?= =?utf-8?B?MTNlYVlieFJWVVdqSUhvQTRicktOTjRndVlIV2RVWm81MnVPTXJLTmliNklL?= =?utf-8?B?aitkTjU4a1ZlMUc3djRSbi9IWWh1TVB3YnE2YVUzVnNRU3EwcW81S3ZUVkxQ?= =?utf-8?B?c0tVU0hyT3I4cXNvZ0t1VTlMQStYcW82SFdPOUV6NWtvOXNBbWd5NGNhM2kw?= =?utf-8?B?Y2xmdGI3Z1hRS3MxNjVaQjZWUFh0c0NZVzBtdUdSYjI2SlU0eDF4K09qZUFy?= =?utf-8?B?aUNPd283TDljOVhKTFEvVXlzQmV1QWwzWllCbjJVMXVENGpmalRNMzVkUXlh?= =?utf-8?B?MGN6MnZvajgvd1B1YnF0WTRTdFNaTG03TXpoKzB0VUViTFhBT2pHUzhNVHky?= =?utf-8?B?TkZSQWhvdU4vQS8xRGFFa1hDZkdFaW1tVDU1QURsZzdHVDdZTEFZRStvTEZa?= =?utf-8?B?Vlh4KzhqN29sb0t1RVdSSUhQTEp1VENLUWNieDdCaEQrYmtNMmV3NGJ2czRR?= =?utf-8?B?SzdEUzVRVndONmcxQU5BRDc1SXpSTkV4MnVpZXVuQk1FYi9Pbm9zK0t6Q0F0?= =?utf-8?B?V0puQkVmMGxnZGduaDVwOU5oUlcyZXR2a0dHYkFua2ZoSFpjTVNDRE1Sb2li?= =?utf-8?B?TjdxTU90cTl5VTJqdHRGREtBOHlOK0MwL1VYV0kzSVhOYkY3NjFna2phcDFv?= =?utf-8?B?NkVrVVVJYksyb2V0RHBsbThsTjJTK0RYQUtxYTNWRFUzMTdZK2l2VE5WWG4w?= =?utf-8?B?WWQ5ZFJPandFNDQyZUY4VGlOdnhoNWJwV2dUWDVJYzY2YVR1MGlxT0xoeUpw?= =?utf-8?B?djFpUGNMMWNqQzVNR1l4b3RNZ25yVXh1V3lqM3FMQjUrMGhWbytoMC9tL3J6?= =?utf-8?B?eVI5QUJCR1h3ellndEhCYSt2R3RtUDM0M00vT1VnbVZtbW1pUy9iQitsNmsr?= =?utf-8?B?NlFoUkx0WDJIc2pUQ28wNHI2S1F1OGlqanVzWWVqUHRRTDVtUmxaekJYam0z?= =?utf-8?B?c2xtdzNObXhaUGs5WCtLczBVL3Y4RVhEb1BxSEgwMVJGZTZUUkY0dWg1VExN?= =?utf-8?Q?hFbvbIQh06vJlWu0PhLYOSKOr?= X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-Network-Message-Id: 55e29781-7a40-43b3-92d8-08db77bf944a X-MS-Exchange-CrossTenant-AuthSource: SN6PR12MB2621.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Jun 2023 10:08:11.5305 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: pnFQ9eIedX13icxAvtceqV2NrZUIg/O6qYJXmfgKfGQzHn2bPoXO9BFaNkjxQcqr9AaV3wWM5WNNURd82rrXUQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH7PR12MB9104 (Forgot to cc) On 28/06/2023 11:05, Ayan Kumar Halder wrote: > Hi Penny, > > On 26/06/2023 04:34, Penny Zheng wrote: >> CAUTION: This message has originated from an External Source. Please >> use proper judgment and caution when opening attachments, clicking >> links, or responding to this email. >> >> >> The new helper xen_mpumap_update() is responsible for updating Xen >> MPU memory >> mapping table(xen_mpumap), including creating a new entry, updating >> or destroying an existing one. It is equivalent to xen_pt_update in MMU. >> This commit only talks about populating a new entry in Xen MPU memory >> mapping >> table(xen_mpumap). Others will be introduced in the following commits. >> >> When populating a new entry in Xen MPU memory mapping table(xen_mpumap), >> firstly, we shall check if requested address range [base, limit) is >> mapped. >> If not, we shall find a free slot in xen_mpumap to insert, based on >> bitmap >> xen_mpumap_mask, and use standard entry pr_of_xenaddr() to build up >> MPU memory >> region structure(pr_t) >> In the last, we set memory attribute and permission based on variable >> @flags. >> >> To summarize all region attributes in one variable @flags, layout of the >> flags is elaborated as follows: >> [0:2] Memory attribute Index >> [3:4] Execute Never >> [5:6] Access Permission >> [7]   Region Present >> Also, we provide a set of definitions(REGION_HYPERVISOR_RW, etc) that >> combine >> the memory attribute and permission for common combinations. >> >> Signed-off-by: Penny Zheng >> Signed-off-by: Wei Chen >> --- >> v3: >> - implement pr_set_base/pr_set_limit/region_is_valid using static >> inline. >> - define index uint8_t to limit its size >> - stay the same major entry map_pages_to_xen, then go different path >> in different context(xen_pt_update in MMU, and xen_mpumap_update in MPU) >> --- >>   xen/arch/arm/include/asm/arm64/mpu.h |  64 +++++++ >>   xen/arch/arm/include/asm/mm.h        |   3 + >>   xen/arch/arm/include/asm/mpu/mm.h    |  16 ++ >>   xen/arch/arm/include/asm/page.h      |  22 +++ >>   xen/arch/arm/mm.c                    |  20 +++ >>   xen/arch/arm/mmu/mm.c                |   9 +- >>   xen/arch/arm/mpu/mm.c                | 255 +++++++++++++++++++++++++++ >>   7 files changed, 381 insertions(+), 8 deletions(-) >>   create mode 100644 xen/arch/arm/include/asm/mpu/mm.h >> >> diff --git a/xen/arch/arm/include/asm/arm64/mpu.h >> b/xen/arch/arm/include/asm/arm64/mpu.h >> index 407fec66c9..a6b07bab02 100644 >> --- a/xen/arch/arm/include/asm/arm64/mpu.h >> +++ b/xen/arch/arm/include/asm/arm64/mpu.h >> @@ -6,6 +6,10 @@ >>   #ifndef __ARM64_MPU_H__ >>   #define __ARM64_MPU_H__ >> >> +#define MPU_REGION_SHIFT  6 > > You are using this macro in patch 24/52 and you are defining it here. > > Please consider moving the definition to patch 24/52. > >> +#define MPU_REGION_ALIGN  (_AC(1, UL) << MPU_REGION_SHIFT) >> +#define MPU_REGION_MASK   (~(MPU_REGION_ALIGN - 1)) >> + >>   /* >>    * MPUIR_EL2.Region identifies the number of regions supported by >> the EL2 MPU. >>    * It is a 8-bit field, so 255 MPU memory regions at most. >> @@ -21,8 +25,33 @@ >>   #define REGION_UART_SEL            0x07 >>   #define MPUIR_REGION_MASK          ((_AC(1, UL) << 8) - 1) >> >> +/* Access permission attributes. */ >> +/* Read/Write at EL2, No Access at EL1/EL0. */ >> +#define AP_RW_EL2 0x0 >> +/* Read/Write at EL2/EL1/EL0 all levels. */ >> +#define AP_RW_ALL 0x1 >> +/* Read-only at EL2, No Access at EL1/EL0. */ >> +#define AP_RO_EL2 0x2 >> +/* Read-only at EL2/EL1/EL0 all levels. */ >> +#define AP_RO_ALL 0x3 >> + >> +/* >> + * Excute never. >> + * Stage 1 EL2 translation regime. >> + * XN[1] determines whether execution of the instruction fetched >> from the MPU >> + * memory region is permitted. >> + * Stage 2 EL1/EL0 translation regime. >> + * XN[0] determines whether execution of the instruction fetched >> from the MPU >> + * memory region is permitted. >> + */ >> +#define XN_DISABLED    0x0 >> +#define XN_P2M_ENABLED 0x1 >> +#define XN_ENABLED     0x2 >> + >>   #ifndef __ASSEMBLY__ >> >> +#define INVALID_REGION_IDX 0xff >> + >>   /* Protection Region Base Address Register */ >>   typedef union { >>       struct __packed { >> @@ -54,6 +83,41 @@ typedef struct { >>       prlar_t prlar; >>   } pr_t; >> >> +/* Access to set base address of MPU protection region(pr_t). */ >> +static inline void pr_set_base(pr_t *pr, paddr_t base) >> +{ >> +    pr->prbar.reg.base = (base >> MPU_REGION_SHIFT); >> +} >> + >> +/* Access to set limit address of MPU protection region(pr_t). */ >> +static inline void pr_set_limit(pr_t *pr, paddr_t limit) >> +{ >> +    pr->prlar.reg.limit = (limit >> MPU_REGION_SHIFT); >> +} >> + >> +/* >> + * Access to get base address of MPU protection region(pr_t). >> + * The base address shall be zero extended. >> + */ >> +static inline paddr_t pr_get_base(pr_t *pr) >> +{ >> +    return (paddr_t)(pr->prbar.reg.base << MPU_REGION_SHIFT); >> +} >> + >> +/* >> + * Access to get limit address of MPU protection region(pr_t). >> + * The limit address shall be concatenated with 0x3f. >> + */ >> +static inline paddr_t pr_get_limit(pr_t *pr) >> +{ >> +    return (paddr_t)((pr->prlar.reg.limit << MPU_REGION_SHIFT) | >> ~MPU_REGION_MASK); >> +} >> + >> +static inline bool region_is_valid(pr_t *pr) >> +{ >> +    return pr->prlar.reg.en; >> +} > > A lot of these macros and inlines can be reused on arm32 as well. I > have split them as follows :- > > Refer > https://github.com/Xilinx/xen/blob/xlnx_rebase_4.17/xen/arch/arm_mpu/include/asm/armv8r/mpu.h > for the common definitions. > > Refer > https://github.com/Xilinx/xen/blob/xlnx_rebase_4.17/xen/arch/arm_mpu/include/asm/armv8r/arm64/mpu.h > for the 64 bit specific definitions > > Refer > https://github.com/Xilinx/xen/blob/xlnx_rebase_4.17/xen/arch/arm_mpu/include/asm/armv8r/arm32/mpu.h > for the 32 bit specific definitions (This I can add later as part of > R52 port). > > Please consider splitting the definitions so that R52 can reuse the > common ones. > > - Ayan > > From xen-devel-bounces@lists.xenproject.org Wed Jun 28 10:10:37 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 28 Jun 2023 10:10:37 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556405.868907 (Exim 4.92) (envelope-from ) id 1qES8B-0007vp-CI; Wed, 28 Jun 2023 10:10:35 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556405.868907; Wed, 28 Jun 2023 10:10:35 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qES8B-0007vi-9O; Wed, 28 Jun 2023 10:10:35 +0000 Received: by outflank-mailman (input) for mailman id 556405; Wed, 28 Jun 2023 10:10:34 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qES8A-0007vc-Hg for xen-devel@lists.xenproject.org; Wed, 28 Jun 2023 10:10:34 +0000 Received: from EUR02-AM0-obe.outbound.protection.outlook.com (mail-am0eur02on20606.outbound.protection.outlook.com [2a01:111:f400:fe13::606]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 0311a0fd-159c-11ee-8611-37d641c3527e; Wed, 28 Jun 2023 12:10:30 +0200 (CEST) Received: from AS9PR06CA0676.eurprd06.prod.outlook.com (2603:10a6:20b:49c::25) by AM7PR08MB5317.eurprd08.prod.outlook.com (2603:10a6:20b:101::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.26; Wed, 28 Jun 2023 10:10:25 +0000 Received: from AM7EUR03FT006.eop-EUR03.prod.protection.outlook.com (2603:10a6:20b:49c:cafe::29) by AS9PR06CA0676.outlook.office365.com (2603:10a6:20b:49c::25) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.34 via Frontend Transport; Wed, 28 Jun 2023 10:10:25 +0000 Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by AM7EUR03FT006.mail.protection.outlook.com (100.127.141.21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.18 via Frontend Transport; Wed, 28 Jun 2023 10:10:25 +0000 Received: ("Tessian outbound c63645f235c1:v142"); Wed, 28 Jun 2023 10:10:24 +0000 Received: from 923b1fa9e7e1.2 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 855A7908-601B-410A-B980-01C568B6AD92.1; Wed, 28 Jun 2023 10:10:18 +0000 Received: from EUR01-VE1-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 923b1fa9e7e1.2 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Wed, 28 Jun 2023 10:10:18 +0000 Received: from AM6PR08MB3784.eurprd08.prod.outlook.com (2603:10a6:20b:85::25) by VE1PR08MB5856.eurprd08.prod.outlook.com (2603:10a6:800:1ab::23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.24; Wed, 28 Jun 2023 10:10:16 +0000 Received: from AM6PR08MB3784.eurprd08.prod.outlook.com ([fe80::5e17:39a6:eec7:c482]) by AM6PR08MB3784.eurprd08.prod.outlook.com ([fe80::5e17:39a6:eec7:c482%4]) with mapi id 15.20.6521.026; Wed, 28 Jun 2023 10:10:15 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 0311a0fd-159c-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=CKR03phD3dRP3Urwh39UQB0Hts893vl94mkAPhjn9X0=; b=mX9JYD7NdDuSqnYcxuUUfPAy5UZwYiF3xuakEFVHxPDuE5hFofcrAdxG/LcFrWp47vhHHooEKC/yrz+xBEdP5imHgqZtKJTU1j/UBK9vho7t1cEml96YR5dDrDrXtI+/rLziOrsxeS47HZMtEsDPs+VpF7ZjMdUTkndAbYWE7yk= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C X-CheckRecipientChecked: true X-CR-MTA-CID: eb7a620feb4ad48a X-CR-MTA-TID: 64aa7808 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=ln/9IsQHYu1kIPvLL0Tx3td2VdcTsUh2s2RUffuaCx0LzRepmdCsKKgrkvbynGzaxElYPvL9/YtZl++woH3MQfzEwrcuQHpHsDJV9EpahKb8waAxURz/Nmim3L0U+9dK1YqAslF99SxZywDkHMG92RvvIN8SoYIA0VTk4d70TDszUXQY4KACbm2SZHJeKI2uDlwMfT6dEmMF2Ii9oL+Akm8KrZCPtjNVoAyFNyuBbYb/I+7qssGlWPV0CaCTkDlNdXzFFqjqnLIWSUDXvL65ooplxyM9SQETVnFBZCqQ37HgyKqEbqzI9xZOhdexQThN21S6BRZVtuqgYSWoIAjR5g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=CKR03phD3dRP3Urwh39UQB0Hts893vl94mkAPhjn9X0=; b=VULsxpwG6luZnlvm1P7oJ1qSAskTWSI8jjF76hXnsxv5F4U/cnhIcpzEua35wKAd4y6ZFXauaeLG8kSJyYstSK8QREvWviPD+KLMOSwmtKqgS00zhRxUHC4WR6lF0Os2ByIuRy5ljxhTUhYv8Vp3CnHLfudLVElqzFccnBGDBVUMmmhv6RC8OL1OOBM/yydhibSPpNGPB8S11CBZupcRCCMlJdBQBAewUhM2buCovP/LVTr0qAIVqhZLGe/1cufGhjWcSXn/feUl3NT7dM+7mQHbVM+3kVNXG+2wCRlz+PLyjPDiRWdjWt4zlQ7PHIIG5eIKlP88S4wySmZeN37gMQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=CKR03phD3dRP3Urwh39UQB0Hts893vl94mkAPhjn9X0=; b=mX9JYD7NdDuSqnYcxuUUfPAy5UZwYiF3xuakEFVHxPDuE5hFofcrAdxG/LcFrWp47vhHHooEKC/yrz+xBEdP5imHgqZtKJTU1j/UBK9vho7t1cEml96YR5dDrDrXtI+/rLziOrsxeS47HZMtEsDPs+VpF7ZjMdUTkndAbYWE7yk= From: Bertrand Marquis To: Julien Grall CC: Xen-devel , Luca Fancellu , Michal Orzel , Henry Wang , Julien Grall , Stefano Stabellini , Volodymyr Babchuk Subject: Re: [PATCH 9/9] xen/arm32: vfp: Add missing U for shifted constant Thread-Topic: [PATCH 9/9] xen/arm32: vfp: Add missing U for shifted constant Thread-Index: AQHZp6aOLBykvD4LPk6JYGpa4zjTC6+gAgAA Date: Wed, 28 Jun 2023 10:09:50 +0000 Message-ID: <5B295B9C-5DC9-4024-A89F-5B41F998F7C4@arm.com> References: <20230625204907.57291-1-julien@xen.org> <20230625204907.57291-10-julien@xen.org> In-Reply-To: <20230625204907.57291-10-julien@xen.org> Accept-Language: en-GB, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-mailer: Apple Mail (2.3731.600.7) Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-traffictypediagnostic: AM6PR08MB3784:EE_|VE1PR08MB5856:EE_|AM7EUR03FT006:EE_|AM7PR08MB5317:EE_ X-MS-Office365-Filtering-Correlation-Id: 17ced4e9-445e-4630-72e7-08db77bfe41d x-checkrecipientrouted: true nodisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: WTcIbeFifLv+9+H56946830khmJINvXuBZ4xG08CD+2ss47Y89HEWOdcZGR25cebpnkpDhn5zMAdfgzZx1EvfL4pBX8Dg4D+8XO0oKA5a3YUlv7wAIISJEg3sSb3VHWmBQXwSLuWNC1PH07GciWUqTdDsil5YLwNFVJP7K/mAFW+/ClhbZzZ1uJtJO2Q4njJBvJlYkr+FT1H4JqrUSq7dCfoIym/j7c8tjciiusD0Qm4qLSr8HXnTFZZs72Pft+1oeRiVYpFX4+5k6deekx6VJOvNm1R21w6sqXF2EaY7BQCJ9y5RAyAp8WMN9RlPu9LP4doMQktTqM3zhbv+m3WPXpbEEkTy6wtG1Evlrk6xbWTnmNL9TZbHTTAeY6jOHralhujL0F5VdOYv4A2dk8XpZTJOxzpRqL9+qi3TU2OlYNYZ4uerVTf4fN3k0gd8DSSmPzi2RfjmG2oVsVUvJQqik4vWQQCs+7zz3M9KPV59DzWuMcofBhjy9NNmDVa7YsjKTWKsEEdk+exQJzsNIkk5fJgU33Vlri/JsxOU5vqrivm8CPJEjPvkgCydFu6sLjDhBsYjXOKgNpCzRdvb/W7uOsRd+JIfvRtIaFilpTNveOuON0qxZAFNVanY8Q90MnbsjhZJFfQshFA3+lOhiGlpA== X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM6PR08MB3784.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(366004)(376002)(136003)(396003)(39860400002)(346002)(451199021)(64756008)(66946007)(6666004)(66556008)(71200400001)(91956017)(478600001)(54906003)(4326008)(66476007)(76116006)(6916009)(36756003)(86362001)(33656002)(66446008)(186003)(83380400001)(53546011)(2616005)(41300700001)(5660300002)(2906002)(316002)(122000001)(6486002)(6506007)(38070700005)(8676002)(8936002)(38100700002)(6512007)(45980500001);DIR:OUT;SFP:1101; Content-Type: text/plain; charset="us-ascii" Content-ID: <2E4EC20AE70C8648BD52AC67683CDFF3@eurprd08.prod.outlook.com> Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: VE1PR08MB5856 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: AM7EUR03FT006.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: ef48ed30-0a36-406e-f58b-08db77bfcf9e X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 8RCqcFH+o4ce3pshpqUFbLd8IQQzaiJRfcdP4cVp11g37K3kUJkihhJxphAVLkcs8VnjOx/6zdFiScpQKRy0X8kzGOB5RziDI8UdJHBscOPwkU+jsOzQmZJtY4Vma7UFHB4iCQf6BUk9RMU5wgHX3S3E/IDZlve2HAZZKxeXbNc3mBWqM8U16NsIDXVn/qApLozFjgBQGw9qdyKqFTbQoqjGCesjfIF68+j7GUXuEY/olXEUu9/vfzC5NRHv4dCMGqk7wds0o12fN/weTZLUmOQifN8IpreAOs1rABanC5xL+j/XGagQQoVUBC6YsyBsE0tE7Qwbhd5JwGKYlDGI7pdkru5IMtIMWRXSeezIkcq8rZLQr7YQVtHQ2aXy5EtxhoNiLA3vqWUwWCWUe/kHQjcomZYLs2s+4/vXNz8+Q2gVNaPRmL6LhAdF33SM39gVjFTvgKdlzoEcofTJ7XHcZ9TMkJIssTmLjjwQ6gTS4YFBCiHkffaN7jEfGb+fr48jP7wJo3brc5z0pAOmU+qD/v2jNulV+OF7WeniuRTuG+OZC7+53dUdLZoFKudhL0PCHXWfZaOz2M1pTxm0f1L9DBlYiBCMZEiRYwZngK4L9ZcgaunRH2Jewss19FREiSSUNK1zihUagSF/xk7700le3k4FraFui9gSPKAN5kbp1JpNjz4IGLD/r4c7r5Tv8IEzCYZ9e3m4ZQaB2H9IjX2sD8C9lpYSf46bxOQuKJZlHOwKE7+tiuTZzVgSAzJjiDfH X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230028)(4636009)(136003)(346002)(39860400002)(396003)(376002)(451199021)(40470700004)(36840700001)(46966006)(82310400005)(36860700001)(70206006)(47076005)(107886003)(6486002)(2616005)(83380400001)(336012)(6666004)(54906003)(53546011)(6512007)(6506007)(26005)(2906002)(186003)(478600001)(6862004)(356005)(5660300002)(36756003)(40460700003)(81166007)(40480700001)(4326008)(316002)(8936002)(70586007)(41300700001)(82740400003)(33656002)(8676002)(86362001);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Jun 2023 10:10:25.2026 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 17ced4e9-445e-4630-72e7-08db77bfe41d X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: AM7EUR03FT006.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM7PR08MB5317 Hi Julien, > On 25 Jun 2023, at 22:49, Julien Grall wrote: >=20 > From: Julien Grall >=20 > When enabling UBSAN on arm32, the following splat will be printed: >=20 > (XEN) =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D > (XEN) UBSAN: Undefined behaviour in arch/arm/arm32/vfp.c:75:22 > (XEN) left shift of 255 by 24 places cannot be represented in type 'int' >=20 > This is referring to the shift in FPSID_IMPLEMENTER_MASK. While we could > only add the U to the value shift there, it would be better to be > consistent and also add it for every value shifted. >=20 > This should also addressing MISRA Rule 7.2: >=20 > A "u" or "U" suffix shall be applied to all integer constants that > are represented in an unsigned type >=20 > Signed-off-by: Julien Grall Reviewed-by: Bertrand Marquis Cheers Bertrand > --- > xen/arch/arm/include/asm/arm32/vfp.h | 18 +++++++++--------- > 1 file changed, 9 insertions(+), 9 deletions(-) >=20 > diff --git a/xen/arch/arm/include/asm/arm32/vfp.h b/xen/arch/arm/include/= asm/arm32/vfp.h > index bade3bc66e1f..2f2e4b24bb40 100644 > --- a/xen/arch/arm/include/asm/arm32/vfp.h > +++ b/xen/arch/arm/include/asm/arm32/vfp.h > @@ -1,23 +1,23 @@ > #ifndef _ARM_ARM32_VFP_H > #define _ARM_ARM32_VFP_H >=20 > -#define FPEXC_EX (1u << 31) > -#define FPEXC_EN (1u << 30) > -#define FPEXC_FP2V (1u << 28) > +#define FPEXC_EX (1U << 31) > +#define FPEXC_EN (1U << 30) > +#define FPEXC_FP2V (1U << 28) >=20 > -#define MVFR0_A_SIMD_MASK (0xf << 0) > +#define MVFR0_A_SIMD_MASK (0xfU << 0) >=20 >=20 > #define FPSID_IMPLEMENTER_BIT (24) > -#define FPSID_IMPLEMENTER_MASK (0xff << FPSID_IMPLEMENTER_BIT) > +#define FPSID_IMPLEMENTER_MASK (0xffU << FPSID_IMPLEMENTER_BIT) > #define FPSID_ARCH_BIT (16) > -#define FPSID_ARCH_MASK (0xf << FPSID_ARCH_BIT) > +#define FPSID_ARCH_MASK (0xfU << FPSID_ARCH_BIT) > #define FPSID_PART_BIT (8) > -#define FPSID_PART_MASK (0xff << FPSID_PART_BIT) > +#define FPSID_PART_MASK (0xffU << FPSID_PART_BIT) > #define FPSID_VARIANT_BIT (4) > -#define FPSID_VARIANT_MASK (0xf << FPSID_VARIANT_BIT) > +#define FPSID_VARIANT_MASK (0xfU << FPSID_VARIANT_BIT) > #define FPSID_REV_BIT (0) > -#define FPSID_REV_MASK (0xf << FPSID_REV_BIT) > +#define FPSID_REV_MASK (0xfU << FPSID_REV_BIT) >=20 > struct vfp_state > { > --=20 > 2.40.1 >=20 From xen-devel-bounces@lists.xenproject.org Wed Jun 28 10:13:15 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 28 Jun 2023 10:13:15 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556409.868917 (Exim 4.92) (envelope-from ) id 1qESAc-0008Vd-Qy; Wed, 28 Jun 2023 10:13:06 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556409.868917; Wed, 28 Jun 2023 10:13:06 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qESAc-0008VW-NQ; Wed, 28 Jun 2023 10:13:06 +0000 Received: by outflank-mailman (input) for mailman id 556409; Wed, 28 Jun 2023 10:13:04 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qESAa-0008VM-U4 for xen-devel@lists.xenproject.org; Wed, 28 Jun 2023 10:13:04 +0000 Received: from EUR01-VE1-obe.outbound.protection.outlook.com (mail-ve1eur01on0621.outbound.protection.outlook.com [2a01:111:f400:fe1f::621]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 5e4f75cd-159c-11ee-b237-6b7b168915f2; Wed, 28 Jun 2023 12:13:04 +0200 (CEST) Received: from AS4PR10CA0008.EURPRD10.PROD.OUTLOOK.COM (2603:10a6:20b:5dc::10) by DU0PR08MB9653.eurprd08.prod.outlook.com (2603:10a6:10:449::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.26; Wed, 28 Jun 2023 10:12:56 +0000 Received: from AM7EUR03FT046.eop-EUR03.prod.protection.outlook.com (2603:10a6:20b:5dc:cafe::29) by AS4PR10CA0008.outlook.office365.com (2603:10a6:20b:5dc::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.18 via Frontend Transport; Wed, 28 Jun 2023 10:12:56 +0000 Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by AM7EUR03FT046.mail.protection.outlook.com (100.127.140.78) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.18 via Frontend Transport; Wed, 28 Jun 2023 10:12:55 +0000 Received: ("Tessian outbound d6c4ee3ba1eb:v142"); Wed, 28 Jun 2023 10:12:55 +0000 Received: from 5eee9c5af022.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 8D25C07E-0379-49E9-A956-CFCFEB586F68.1; Wed, 28 Jun 2023 10:12:48 +0000 Received: from EUR05-DB8-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 5eee9c5af022.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Wed, 28 Jun 2023 10:12:48 +0000 Received: from AM6PR08MB3784.eurprd08.prod.outlook.com (2603:10a6:20b:85::25) by PAXPR08MB7465.eurprd08.prod.outlook.com (2603:10a6:102:2b9::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.26; Wed, 28 Jun 2023 10:12:45 +0000 Received: from AM6PR08MB3784.eurprd08.prod.outlook.com ([fe80::5e17:39a6:eec7:c482]) by AM6PR08MB3784.eurprd08.prod.outlook.com ([fe80::5e17:39a6:eec7:c482%4]) with mapi id 15.20.6521.026; Wed, 28 Jun 2023 10:12:45 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 5e4f75cd-159c-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=ytMUx1H7ss0hd3UytxPThLf5zo6q5W6W3wvb57CT95c=; b=DHbk4gIbC2VyYrlm9oI6YDGlBp/2HUhZOZ0/B6NiXRvY/ERvxv98rONXtoTiwHxOU9XYn8E/VceNWZ3hPfX/gAmumfx/4eDsyRCkd5lxWgKaTKoCKhX5Leaxsbt4Yi6DtFLvR5q0W/KqDiOaSXeGVkmNvAV8YZnFOqNI5i1Wgyc= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C X-CheckRecipientChecked: true X-CR-MTA-CID: 1b14e92bdc0e73e7 X-CR-MTA-TID: 64aa7808 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=AzTBrVVC4bmnj+4D8vZBaCbPq5/Jf/ApXCjwXAIfwhPVgrqGEi1HQOFs0Kdq6qsrm2wrjRCvHRWgf2KoHxK2DXf9jPqWRSVEtCxQGJbRuTA09st1ZI7XqL9D/7XLuy+sZuFGsJ16u+Re7Kln6sqjCwQJaSl3vuJJZ8Ch63wlszd4Ow65TDpPFbUab2peCeGFppdRV83WPkq5cR9y9yjcDm+5mJumYpHb9WL7lUuJkmkMauRQahOeG7T99k27LmiieLGKSCy9OlGN6uu6/qPGOL8O/kIrFAr99xvMcElLkvHM85c9BJiMXtk4ApPW0b2i+2ziJqkYfxm7TU5b24vxjg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=ytMUx1H7ss0hd3UytxPThLf5zo6q5W6W3wvb57CT95c=; b=j81gRI3ZF+CnIT2/fjuDACN+QWpZBWYf4E50/MLEDA7VNdsAMPrLIZCgcToUWzLgPuSwOf97h8ACS745zm6ExZGDo/kfhJ4LHOaXwRDlQAta3rLLgjsRtJe5xOkI3LyI+sQdrRQ5Ki22oxl++K71sR1L99QsSwhql6NUzFEE1lPC8F7Mf5HB1q1oQK/2b2GXLQHFERdJLLjJoJHpJDjtGEGBhXKalW4tZ3IYnaBppy2owDPIIjibO34PT46j/rVCwCHXbS8rNBhl39sR5RY4KVbJ5L3JNMP1+k9vAX4c6wD5xMcRqeHg2/UDrh72TJqoquA7BgkGYLD+I8TtC4lBsg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=ytMUx1H7ss0hd3UytxPThLf5zo6q5W6W3wvb57CT95c=; b=DHbk4gIbC2VyYrlm9oI6YDGlBp/2HUhZOZ0/B6NiXRvY/ERvxv98rONXtoTiwHxOU9XYn8E/VceNWZ3hPfX/gAmumfx/4eDsyRCkd5lxWgKaTKoCKhX5Leaxsbt4Yi6DtFLvR5q0W/KqDiOaSXeGVkmNvAV8YZnFOqNI5i1Wgyc= From: Bertrand Marquis To: Julien Grall CC: Xen-devel , Luca Fancellu , Michal Orzel , Henry Wang , Julien Grall , Stefano Stabellini , Volodymyr Babchuk Subject: Re: [PATCH 4/9] xen/arm32: head: Remove 'r6' from the clobber list of create_page_tables() Thread-Topic: [PATCH 4/9] xen/arm32: head: Remove 'r6' from the clobber list of create_page_tables() Thread-Index: AQHZp6aNAcSElr/BRUqZZ/p1BOWK86+gAs8A Date: Wed, 28 Jun 2023 10:12:45 +0000 Message-ID: <17C9FAB2-9BA6-46B5-9E6B-99E9C674C5B3@arm.com> References: <20230625204907.57291-1-julien@xen.org> <20230625204907.57291-5-julien@xen.org> In-Reply-To: <20230625204907.57291-5-julien@xen.org> Accept-Language: en-GB, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-mailer: Apple Mail (2.3731.600.7) Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-traffictypediagnostic: AM6PR08MB3784:EE_|PAXPR08MB7465:EE_|AM7EUR03FT046:EE_|DU0PR08MB9653:EE_ X-MS-Office365-Filtering-Correlation-Id: c5067e13-4b64-45f4-2cc0-08db77c03df4 x-checkrecipientrouted: true nodisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: qNQQchDrMb1i3dxlM728UL5w6c12slq4yXvL34raOk3lp5whQkb0WM7MzmkwoqOht/yh1Q+tPT4P3LczbytsNVllaA2RTTj59YAT5SONO0loJOFUZyzCP/p1EBSix0HICKAwcQyxBUc1LC+iIi+qxyfz6x8y73czdMdjFb6mPZMJCrqjS5lD91DnPPAm28bE4gdjDw5ezn+ZS8X+k28VxIaVAP2hSbgi9KsezBL04xAvaLduq2+etzYbS7oBwbnhrjhM478S3sLPi4IIuU+ANIsAdrYPEjM47MYHD3S/7jP/xqGnFtV97n6Squv1YkxnBqKoxsNRlSSOLGv7frJs9rj+qYLVY6HyIG6IimcgcSxvBVkf+QjKoqZbQMC6lClQKCfI2az2jDQBl7jMEQ3hselOoIHjJzAhaaGTJNFQSc8FNCW+rG04pLJQ2C3kM+kf0T9baxKLdtqNp5kn+r+f50KyOwCvPUMQMJnNVFoX9o6RLl1jMAA2NyyUPUpXc8uTGsCXtMQDOQOukzZMtVzWfhAMvZNdpAH9nUKvplg2j4T3LAzFF/jvjEuXjE3trDhpZqgaBnjWuBTdBqeF1XdDxzjSBHoYcVpgqeVk4khAH3mNvK7Ms6e4mMhJPP4cMEoj+9y9kbs+1F6+ss1povTQ4g== X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM6PR08MB3784.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(396003)(346002)(376002)(366004)(39860400002)(136003)(451199021)(6506007)(5660300002)(66446008)(33656002)(66556008)(316002)(64756008)(66946007)(36756003)(478600001)(4326008)(6916009)(91956017)(66476007)(76116006)(8676002)(8936002)(86362001)(4744005)(2906002)(6512007)(54906003)(41300700001)(6486002)(186003)(38070700005)(122000001)(38100700002)(53546011)(71200400001)(2616005)(83380400001)(45980500001);DIR:OUT;SFP:1101; Content-Type: text/plain; charset="us-ascii" Content-ID: Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR08MB7465 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: AM7EUR03FT046.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: 5fcea62d-3808-4b49-1611-08db77c03792 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: fQWKtV8AOW2K9JkKqxNd7l8QFFiCWIVfO7XjFMQE3CSn/KawBqkde75nAn9jMJRi22dE2Wgxfz/xsyDsScGfcxgQ8c8lAhkY9PFWuhe62B3FAcGcZQ2d/Qlr/vDbanXHW8g5+fcChWPKmYHRet8O5tr8U2OnTEz5L3PNan+Bl7XSAWsQh5F1ivlZnZn2ZXPyn37egTmE0tURyi854A0cCf46kMKC9f7f+MJ+jDrZp0ILc0g2LbJlHuV6rpfaTk8WgFMefUnIF6QuNeFwNKFbPwDQFY2+cP14gZn1WrkoGdT9FBIXZX+SkTbPp/BxywgAoth2Evs9m2k4sU22HhrtppamrXC4q+oNCIpdhzPZjsJn3lg0eNAf6uN3fRpYMQleVTWxCaxfZm6EyB+XYf+4kDMP5amcmEh3mEaX/WfE9DGyJdLdN/eswpzJr2zkzFUnqZhEKX7Xpy97DRupVBPziXruqUVSuj7mSMhm96SYZbjAzA1stc7tYHLFDdcM+NIxqnziAPiMP2Jpk9oNmERGTuIhL5E2VWvuiMnEAnvBQ/GUlDbj3MBJ8oC8Wjw4IexUPYbIevW9g8lNTBus0KTDCtomffWQ+TYeOQq+XIFPv5Z4a7YnZ7oP3UHQl0NTkNbBycj1D/gpxIs/P/ms13u+0sSUiM8k5YS6eFk8xarKVaz8K0qb6SlS2gW/KJLytu2ZUGdlrMAIDshj0vseOtSC4oVKbRI8jqmNYMXNCQcFqiQczyW+/ND3LnVjaKmMoDa9 X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230028)(4636009)(396003)(376002)(346002)(136003)(39860400002)(451199021)(46966006)(40470700004)(36840700001)(82310400005)(53546011)(36860700001)(70206006)(40460700003)(36756003)(33656002)(5660300002)(356005)(6862004)(86362001)(8936002)(8676002)(41300700001)(316002)(4326008)(81166007)(70586007)(40480700001)(82740400003)(107886003)(47076005)(2906002)(26005)(478600001)(6506007)(186003)(2616005)(6512007)(83380400001)(6486002)(336012)(54906003);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Jun 2023 10:12:55.9427 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: c5067e13-4b64-45f4-2cc0-08db77c03df4 X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: AM7EUR03FT046.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU0PR08MB9653 Hi Julien, > On 25 Jun 2023, at 22:49, Julien Grall wrote: >=20 > From: Julien Grall >=20 > Since commit 62529f16c8a2 ("xen/arm32: head: Use a page mapping for the > 1:1 mapping in create_page_tables()"), the register 'r6' is not used > anymore within create_page_tables(). So remove it from the documentation. >=20 > Signed-off-by: Julien Grall Reviewed-by: Bertrand Marquis Cheers Bertrand > --- > xen/arch/arm/arm32/head.S | 5 +---- > 1 file changed, 1 insertion(+), 4 deletions(-) >=20 > diff --git a/xen/arch/arm/arm32/head.S b/xen/arch/arm/arm32/head.S > index 997c8a4fbbc1..5e3692eb3abf 100644 > --- a/xen/arch/arm/arm32/head.S > +++ b/xen/arch/arm/arm32/head.S > @@ -451,10 +451,7 @@ ENDPROC(cpu_init) > * Output: > * r12: Was a temporary mapping created? > * > - * Clobbers r0 - r4, r6 > - * > - * Register usage within this function: > - * r6 : Identity map in place > + * Clobbers r0 - r4 > */ > create_page_tables: > /* Prepare the page-tables for mapping Xen */ > --=20 > 2.40.1 >=20 From xen-devel-bounces@lists.xenproject.org Wed Jun 28 10:14:11 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 28 Jun 2023 10:14:11 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556415.868927 (Exim 4.92) (envelope-from ) id 1qESBf-0000g7-82; Wed, 28 Jun 2023 10:14:11 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556415.868927; Wed, 28 Jun 2023 10:14:11 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qESBf-0000g0-4Y; Wed, 28 Jun 2023 10:14:11 +0000 Received: by outflank-mailman (input) for mailman id 556415; Wed, 28 Jun 2023 10:14:09 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qESBd-0000fk-Cf for xen-devel@lists.xenproject.org; Wed, 28 Jun 2023 10:14:09 +0000 Received: from EUR02-VI1-obe.outbound.protection.outlook.com (mail-vi1eur02on2060c.outbound.protection.outlook.com [2a01:111:f400:fe16::60c]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 84826991-159c-11ee-b237-6b7b168915f2; Wed, 28 Jun 2023 12:14:08 +0200 (CEST) Received: from AM0P190CA0007.EURP190.PROD.OUTLOOK.COM (2603:10a6:208:190::17) by GV1PR08MB8130.eurprd08.prod.outlook.com (2603:10a6:150:92::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.24; Wed, 28 Jun 2023 10:14:04 +0000 Received: from AM7EUR03FT052.eop-EUR03.prod.protection.outlook.com (2603:10a6:208:190:cafe::cb) by AM0P190CA0007.outlook.office365.com (2603:10a6:208:190::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.18 via Frontend Transport; Wed, 28 Jun 2023 10:14:04 +0000 Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by AM7EUR03FT052.mail.protection.outlook.com (100.127.140.214) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.16 via Frontend Transport; Wed, 28 Jun 2023 10:14:04 +0000 Received: ("Tessian outbound d6c4ee3ba1eb:v142"); Wed, 28 Jun 2023 10:14:04 +0000 Received: from 95d6c6da6128.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 7097331F-2E8B-48FC-A293-FA96F832BB29.1; Wed, 28 Jun 2023 10:13:57 +0000 Received: from EUR03-DBA-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 95d6c6da6128.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Wed, 28 Jun 2023 10:13:57 +0000 Received: from DUZPR01CA0282.eurprd01.prod.exchangelabs.com (2603:10a6:10:4b9::17) by PAWPR08MB10210.eurprd08.prod.outlook.com (2603:10a6:102:367::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.26; Wed, 28 Jun 2023 10:13:56 +0000 Received: from DBAEUR03FT017.eop-EUR03.prod.protection.outlook.com (2603:10a6:10:4b9:cafe::df) by DUZPR01CA0282.outlook.office365.com (2603:10a6:10:4b9::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.18 via Frontend Transport; Wed, 28 Jun 2023 10:13:56 +0000 Received: from nebula.arm.com (40.67.248.234) by DBAEUR03FT017.mail.protection.outlook.com (100.127.142.243) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6544.18 via Frontend Transport; Wed, 28 Jun 2023 10:13:55 +0000 Received: from AZ-NEU-EX03.Arm.com (10.251.24.31) by AZ-NEU-EX03.Arm.com (10.251.24.31) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Wed, 28 Jun 2023 10:13:55 +0000 Received: from [10.169.188.49] (10.169.188.49) by mail.arm.com (10.251.24.31) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27 via Frontend Transport; Wed, 28 Jun 2023 10:13:52 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 84826991-159c-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=xvGt607iE7681TxKu57G/P6q4W8FTDdZzeJJM8xPZJQ=; b=XryED17fnEidZIX+NzdOF6DX16svsBessiWXYBYybEetzOCkwc9QrQdWfhY3sawU0kTNK68hi4HzaqTN4edAgfMD99Vd5S9yjV60SaHtEuzE5Y55cHb81oBLM3rCSNrPBcGfmG4q1i3S40zLa8rmJ7RbRJXqYudlrJhdIqD5rMk= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C X-CheckRecipientChecked: true X-CR-MTA-CID: 71cb83595572bdf1 X-CR-MTA-TID: 64aa7808 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=KLb8HN3AQZVqZ7ktFxmYJbnXGpB7TZZEAynhQ27fZoAI9/mzFzHy5aR38efchq3efxPIm8SgBVTVDKWgBPLHCcEMH1FdJh4gRLP533XsnqdrIjm+F7EQhM5MNoG0Z03txsavuNgNmlDykOVsf169ewLE09JlJMjGXpMOkIJQEdzIuPGj4yjWvGmL4FT1JEPaIPnXLuS1gF2XnVF8ABT3knXYs+r7M41oTYx2NMkAJGRyUP8sjFq4bK/Pjt5VeoZ+ijKzYibcT3HXys99R6EGk+WlMRTaWD1H6aJo55I2fyzTNH0pOkyNuwVT4ToVqdGl0pDUQbA1N12eGvqdGE85FA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=xvGt607iE7681TxKu57G/P6q4W8FTDdZzeJJM8xPZJQ=; b=gjgctThTpLulzeCbnWAPnrErspHOjWmzhT5oh1+rwtXpNXzTx+vuw2ahqkMxr3VggglzxAOk35GYmeLkM1+sVyOcGq5vr5zrfQputUDKAO0lkRRfCfPqVv6Af4vSuwfbu3ldqJ/D/x48XWgdKwBcodSPK9cJ9I0D4n7jwR2//jux81H84jCVDmGsLG7mEKipt6eFXke+RBPAc3Asrmax0OyzR3qLdc0TP/k3cW2lNHYkqaosHlv6N9BDjUK1Mq67uOW5nb7PbV76BLarnqY+W+MGns4PYUqq17tbJbs3IJBuQiheT8qsFYEAUbkItpa45R8wRj/PSCNSKupJj+rEww== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 40.67.248.234) smtp.rcpttodomain=amd.com smtp.mailfrom=arm.com; dmarc=pass (p=none sp=none pct=100) action=none header.from=arm.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=xvGt607iE7681TxKu57G/P6q4W8FTDdZzeJJM8xPZJQ=; b=XryED17fnEidZIX+NzdOF6DX16svsBessiWXYBYybEetzOCkwc9QrQdWfhY3sawU0kTNK68hi4HzaqTN4edAgfMD99Vd5S9yjV60SaHtEuzE5Y55cHb81oBLM3rCSNrPBcGfmG4q1i3S40zLa8rmJ7RbRJXqYudlrJhdIqD5rMk= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 40.67.248.234) smtp.mailfrom=arm.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 40.67.248.234 as permitted sender) receiver=protection.outlook.com; client-ip=40.67.248.234; helo=nebula.arm.com; pr=C Message-ID: <3f30dbd3-5530-e9d3-eae9-3cb6c3072bbb@arm.com> Date: Wed, 28 Jun 2023 18:13:50 +0800 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.11.2 Subject: Re: [PATCH v3 30/52] xen/mpu: populate a new region in Xen MPU mapping table Content-Language: en-US To: Ayan Kumar Halder , CC: Wei Chen , Bertrand Marquis , Henry Wang , Julien Grall , "Stefano Stabellini" , "Volodymyr_Babchuk@epam.com" References: <20230626033443.2943270-1-Penny.Zheng@arm.com> <20230626033443.2943270-31-Penny.Zheng@arm.com> <864e467d-2ad8-7210-ca59-a9e34b95bc81@amd.com> From: Penny Zheng In-Reply-To: Content-Type: text/plain; charset="UTF-8"; format=flowed Content-Transfer-Encoding: 8bit X-EOPAttributedMessage: 1 X-MS-TrafficTypeDiagnostic: DBAEUR03FT017:EE_|PAWPR08MB10210:EE_|AM7EUR03FT052:EE_|GV1PR08MB8130:EE_ X-MS-Office365-Filtering-Correlation-Id: 309143be-d003-418c-f133-08db77c066c5 x-checkrecipientrouted: true NoDisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: i0xEzwj5i/26hZK6h1SoDKvTBk7bvRZQRvTx8VHg8moP2T1p+uNuXNepUfny+krJfN6sYaB5M0Hm9peBwitafseUVTN/8xqdviBSTzU6ozVsJzm4dnOXBHxuCw9CGvRvqXG21oIcymBA/JKPpbLUcOkRHsId+g4mfsg3yO1xQY2dpKz5WXDmvWmge3rY0asfM7gBGuZkF2bL6bARKbqk0DAeqY6tPDYJxPamJajsBKtqOHvYr/sG8rDTMZLQ4mEn+W6zeWTGNnOjyA9XwCpNPKH+dxBa8UtlVpHEgqz6Wbqi5+vlVkkr6rNqRdHyDo+AWAC48aZHA1P/bju9MdETcXSNKhpTV0dJVawPASnWl8sYO91V92gxf6fkCM27cRAM5tC8odmDum6YdP5L4t4c6Q/M+cidqQPBDAwhMwSixR0EAmCV5EW5EN9Jz2wN21j8bqZmtdM6Gj9A1qninDYLj2Taxr678DI5Ldf3ZkaaFKfkrKlrbWq3wslMWpZvDnTYVGHLUxc28fXeeBsF3l0M6J3tJzHnUgCeeDrJ0NQZygpGQ2Qxvd5cjpZj62NECyuPyEUm/exwBxqEplRiKva1Bo7kQVbQCxLDb+agNssjUribCsfQ5+Mlo9mHhHnD4fDi7PCgtA9nQrfsZUTe0QjbNE7lxZGqAMIK1JQMAbAw2Pvyd1C5NE2Z59tWCDyjkdLMU3Vf+os/tNH0HZYHOQ15j/LATo8oMg3IChXL1qVrpem1c3vfqZPMjkoll63RhhQhbgIgZ1g3n4vLXWZMn986p5wPObS2mnRPIEEvtopmeDum76KYM7Nc8VwzNXJ4+E4Pe0YiFj/DCmL0ce/Zspyi9BzGFgu5RMS0k51JIeOOWFE= X-Forefront-Antispam-Report-Untrusted: CIP:40.67.248.234;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:nebula.arm.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(376002)(396003)(346002)(136003)(39860400002)(451199021)(40470700004)(36840700001)(46966006)(8676002)(8936002)(41300700001)(70206006)(70586007)(4326008)(316002)(186003)(26005)(53546011)(336012)(2616005)(110136005)(478600001)(54906003)(16576012)(40460700003)(966005)(82310400005)(2906002)(40480700001)(44832011)(5660300002)(82740400003)(81166007)(356005)(36756003)(31696002)(86362001)(31686004)(47076005)(36860700001)(83380400001)(426003)(3940600001)(36900700001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAWPR08MB10210 X-MS-Exchange-Transport-CrossTenantHeadersStripped: AM7EUR03FT052.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: 568bb33d-b7bb-4e62-7605-08db77c061b7 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: RnEFKNw8seG4TMCt1L45XZzyGX4kxMI1aHX6dxe+GOFnZjUs0laf9xzebEUIWo2Byl6qUGh2VAFBYqles984BhZ8A2c4CfncZ1hfTEv9dpWo/J69DtdXamQLaklbrB9TglhbBQ2uz018SMM6GGYhvNDxHpzbNaGpOhZrwvEabE81WVc26MQFFi9bvgCXtXZN/vmZpaubP58GY8XMhZ2JyZjPWh4+IMvOnJlb4EwbyMaNdxipI0KtEZ9ISgc3IiOnm2I45BD/sLI7INKNlL3jDuVsJ8ck53ezHUz4KM9GLb91Hw3d84f1L5pMBEGXpvdPXkX72bDNKEm3G7yZYr6SBPidcrxTgUB4eUDtOfhM4bMAib2159szityczOQVpbqWVaVCxBaguSgE9nr1867PaajrrMMimfbFGQ0H16P+wwhu/n5UuPudkfF0IZfECc/Z/6hkOoGTmFAXCiiItzQcFgcoFNVOmg0ZDS2y3gju4W+c+kt14S5VoLAUQqnrp3rNQ8ppyA58KJX0ykPYofg4gCxvoD7HFIbxzZNPgfMTiCdsXQeB7usQcTTqez4qQAMAj0UWE6ey5Qki2vwxQSPMkgOyUVgz0nb/TXntEGzU7VA0EKq7HwVkydFNjnWf2CqzpgD9QCI+Z39Bm5hm/PeKpwGHMsCocaZq08kpIxM4OoNZuKuqFAprUFq44Ji4ZKFXbE40MYJLWKxUkVVbB6Q6mbbto/KvXZrxlF6uwhAbGdu4zEVypnkdjjTzlP8K+mrjJ4/RVoIsjySTAmajfbdwb0ibmwD9NC+ZAElVqfUV5Rx+X/biGa3ZvgZB57KY6/x9MdaazGsL5iZLNxU7Qv+g7w== X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230028)(4636009)(396003)(39860400002)(136003)(376002)(346002)(451199021)(36840700001)(46966006)(40470700004)(44832011)(5660300002)(31686004)(4326008)(70206006)(478600001)(36756003)(316002)(70586007)(8936002)(8676002)(2906002)(40460700003)(966005)(110136005)(36860700001)(54906003)(16576012)(31696002)(41300700001)(82310400005)(186003)(40480700001)(336012)(86362001)(26005)(53546011)(47076005)(426003)(107886003)(81166007)(2616005)(82740400003)(83380400001)(3940600001)(43740500002);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Jun 2023 10:14:04.4262 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 309143be-d003-418c-f133-08db77c066c5 X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: AM7EUR03FT052.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: GV1PR08MB8130 Hi Ayan On 2023/6/28 18:08, Ayan Kumar Halder wrote: > (Forgot to cc) > > On 28/06/2023 11:05, Ayan Kumar Halder wrote: >> Hi Penny, >> >> On 26/06/2023 04:34, Penny Zheng wrote: >>> CAUTION: This message has originated from an External Source. Please >>> use proper judgment and caution when opening attachments, clicking >>> links, or responding to this email. >>> >>> >>> The new helper xen_mpumap_update() is responsible for updating Xen >>> MPU memory >>> mapping table(xen_mpumap), including creating a new entry, updating >>> or destroying an existing one. It is equivalent to xen_pt_update in MMU. >>> This commit only talks about populating a new entry in Xen MPU memory >>> mapping >>> table(xen_mpumap). Others will be introduced in the following commits. >>> >>> When populating a new entry in Xen MPU memory mapping table(xen_mpumap), >>> firstly, we shall check if requested address range [base, limit) is >>> mapped. >>> If not, we shall find a free slot in xen_mpumap to insert, based on >>> bitmap >>> xen_mpumap_mask, and use standard entry pr_of_xenaddr() to build up >>> MPU memory >>> region structure(pr_t) >>> In the last, we set memory attribute and permission based on variable >>> @flags. >>> >>> To summarize all region attributes in one variable @flags, layout of the >>> flags is elaborated as follows: >>> [0:2] Memory attribute Index >>> [3:4] Execute Never >>> [5:6] Access Permission >>> [7]   Region Present >>> Also, we provide a set of definitions(REGION_HYPERVISOR_RW, etc) that >>> combine >>> the memory attribute and permission for common combinations. >>> >>> Signed-off-by: Penny Zheng >>> Signed-off-by: Wei Chen >>> --- >>> v3: >>> - implement pr_set_base/pr_set_limit/region_is_valid using static >>> inline. >>> - define index uint8_t to limit its size >>> - stay the same major entry map_pages_to_xen, then go different path >>> in different context(xen_pt_update in MMU, and xen_mpumap_update in MPU) >>> --- >>>   xen/arch/arm/include/asm/arm64/mpu.h |  64 +++++++ >>>   xen/arch/arm/include/asm/mm.h        |   3 + >>>   xen/arch/arm/include/asm/mpu/mm.h    |  16 ++ >>>   xen/arch/arm/include/asm/page.h      |  22 +++ >>>   xen/arch/arm/mm.c                    |  20 +++ >>>   xen/arch/arm/mmu/mm.c                |   9 +- >>>   xen/arch/arm/mpu/mm.c                | 255 +++++++++++++++++++++++++++ >>>   7 files changed, 381 insertions(+), 8 deletions(-) >>>   create mode 100644 xen/arch/arm/include/asm/mpu/mm.h >>> >>> diff --git a/xen/arch/arm/include/asm/arm64/mpu.h >>> b/xen/arch/arm/include/asm/arm64/mpu.h >>> index 407fec66c9..a6b07bab02 100644 >>> --- a/xen/arch/arm/include/asm/arm64/mpu.h >>> +++ b/xen/arch/arm/include/asm/arm64/mpu.h >>> @@ -6,6 +6,10 @@ >>>   #ifndef __ARM64_MPU_H__ >>>   #define __ARM64_MPU_H__ >>> >>> +#define MPU_REGION_SHIFT  6 >> >> You are using this macro in patch 24/52 and you are defining it here. >> >> Please consider moving the definition to patch 24/52. >> Thanks for pointing out. I'll move. >>> +#define MPU_REGION_ALIGN  (_AC(1, UL) << MPU_REGION_SHIFT) >>> +#define MPU_REGION_MASK   (~(MPU_REGION_ALIGN - 1)) >>> + >>>   /* >>>    * MPUIR_EL2.Region identifies the number of regions supported by >>> the EL2 MPU. >>>    * It is a 8-bit field, so 255 MPU memory regions at most. >>> @@ -21,8 +25,33 @@ >>>   #define REGION_UART_SEL            0x07 >>>   #define MPUIR_REGION_MASK          ((_AC(1, UL) << 8) - 1) >>> ... >>> +static inline bool region_is_valid(pr_t *pr) >>> +{ >>> +    return pr->prlar.reg.en; >>> +} >> >> A lot of these macros and inlines can be reused on arm32 as well. I >> have split them as follows :- >> >> Refer >> https://github.com/Xilinx/xen/blob/xlnx_rebase_4.17/xen/arch/arm_mpu/include/asm/armv8r/mpu.h for the common definitions. >> >> Refer >> https://github.com/Xilinx/xen/blob/xlnx_rebase_4.17/xen/arch/arm_mpu/include/asm/armv8r/arm64/mpu.h for the 64 bit specific definitions >> >> Refer >> https://github.com/Xilinx/xen/blob/xlnx_rebase_4.17/xen/arch/arm_mpu/include/asm/armv8r/arm32/mpu.h for the 32 bit specific definitions (This I can add later as part of R52 port). >> >> Please consider splitting the definitions so that R52 can reuse the >> common ones. >> Sure. I'll try to split. >> - Ayan >> >> From xen-devel-bounces@lists.xenproject.org Wed Jun 28 10:56:33 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 28 Jun 2023 10:56:33 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556419.868937 (Exim 4.92) (envelope-from ) id 1qESqN-0005DG-7U; Wed, 28 Jun 2023 10:56:15 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556419.868937; Wed, 28 Jun 2023 10:56:15 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qESqN-0005D9-3c; Wed, 28 Jun 2023 10:56:15 +0000 Received: by outflank-mailman (input) for mailman id 556419; Wed, 28 Jun 2023 10:56:14 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qESqM-0005D2-As for xen-devel@lists.xenproject.org; Wed, 28 Jun 2023 10:56:14 +0000 Received: from NAM11-CO1-obe.outbound.protection.outlook.com (mail-co1nam11on20602.outbound.protection.outlook.com [2a01:111:f400:7eab::602]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 6442b489-15a2-11ee-b237-6b7b168915f2; Wed, 28 Jun 2023 12:56:12 +0200 (CEST) Received: from SN6PR12MB2621.namprd12.prod.outlook.com (2603:10b6:805:73::15) by PH8PR12MB7231.namprd12.prod.outlook.com (2603:10b6:510:225::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.23; Wed, 28 Jun 2023 10:56:06 +0000 Received: from SN6PR12MB2621.namprd12.prod.outlook.com ([fe80::8018:78f7:1b08:7a54]) by SN6PR12MB2621.namprd12.prod.outlook.com ([fe80::8018:78f7:1b08:7a54%2]) with mapi id 15.20.6521.026; Wed, 28 Jun 2023 10:56:05 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 6442b489-15a2-11ee-b237-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=kFiW5AxI89spkwzhHq8fQZQvmrC+I1g5ndSpVa3isFe0+RHhcy2gXgJyboYvXN1h2GJZJ8BWJ5mlyuS//QsBqJbMMLzwqPF+CZeP30Jjrhfyc66rbhOJMt4egDEWnMiO53oWM+K60rOzewczoX+q7Qb3atMqHjCjaPjfjc6oTYTNduYOz8otN0UR8Oho5vyIL23cGy5WsAELrGVZqQh/f4hgWZaSL3jo81pz7RCDqmL5hsJo01WTsPWjvijvTIubdPsbN6hcyjeRs4I4tDNIrtsedElzVGTgwO2/K9F5dze4N37E0OjeQivl4Osoze3C8hjRqVFdW/Bsk1uJSkga4Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=48zWHUfS3duXEvXlukQsJaNTtV6BJEvUhkptiCBa56o=; b=MWfgo4B5YjXD+27RfQmCmjOXNstK2VqkydiOZ3ijvQyueZhT3ZuTxnG/cBbzeJyYQBrMwz3r0Ip7R8blM8NOPLYcWBex4xFA3yfji5qi2RwvCXt+p+4QOc1+Vi/0WFL6eYWgNKx3BUowWAw4KRfjH1+ZUFmNZnZC8SyKwjHnliapCxoexQOZjAxpUHjcIFNGGwwtdT19zguBi6CHioLeIJEUezemZwBfjNQsNVfEs0lxv0tIE7bn+2DmGIttBjmFhL4X3dzpEpMBLYVGt4qhjQx7bO0/xUqx0Rvzarrl7XuP5OFGh4CxjeIoFe1/uj4ddadjaTR+wfLW5o7WhB7ODg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass header.d=amd.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=48zWHUfS3duXEvXlukQsJaNTtV6BJEvUhkptiCBa56o=; b=07W0wqU/R0YfxYJL6xtKH2zVEKe3q+j2hh6a4dqmR3IoanTrlwG7LHCCM2fJIhWPVt6b1SZpeeivEuYlU0zp2XS0Wkdo3OHMO+RwtfpTf8FaaXMJcyNBO+kWVhnNy1qqBtw/vk7vpkTsOlTABPSwltkHBP41heUWPlzDXKIAYdU= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=amd.com; Message-ID: <778688ab-8fd4-2b06-e644-b5a013bb56f7@amd.com> Date: Wed, 28 Jun 2023 11:55:59 +0100 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v3 24/52] xen/mpu: build up start-of-day Xen MPU memory region map To: Penny Zheng , xen-devel@lists.xenproject.org Cc: Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk , Wei Chen References: <20230626033443.2943270-1-Penny.Zheng@arm.com> <20230626033443.2943270-25-Penny.Zheng@arm.com> From: Ayan Kumar Halder In-Reply-To: <20230626033443.2943270-25-Penny.Zheng@arm.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-ClientProxiedBy: LO4P123CA0187.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:1a4::12) To SN6PR12MB2621.namprd12.prod.outlook.com (2603:10b6:805:73::15) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SN6PR12MB2621:EE_|PH8PR12MB7231:EE_ X-MS-Office365-Filtering-Correlation-Id: 41ce2bf9-8fe3-427e-97a2-08db77c6456b X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: hGRyS47e+uYUVCr89c8U8jHqB6+lZdDaROreacnTU+le97QPJiIYs+IIbHsSicMBPY7EhLpZUvzWhwJxVPhapipvyIt61zqyKZdsJuR4bidebxAzsABod9ZkauNQWtUSBsxvo2aSrI3wKmn7g/labyxxEqyggNpleOExttmdp2Ynwlkx5OPPX3TKnCKCWYAdFoU6tCvVkMepIdhMA7i9QYZea2eDznWhiA8thRNG76yHaBp0RUM8gE5qT/CaFPtGSRs4hGpaTLmj7hrNCED/7XuVkY+/WeE5F9THa/6E56uXLG6qQrjIgUG3hetWRt1qCePSWGxOukYdX40Dyiy/87r+0jAJXGSzm+AgRyBfc51p5T2dfJyour2TA5Ll+7fUOLXkgyCKC1H8tN2iv8MHypjJ7FxZADczi6Gw2VcW83CFpKGlxPDjpiV1trfRTqo5ZQ467hnVdVxZnaFvDOJA2aMfhmjbKjCINxkZNn+wsWXb9fKbJeyl3ou9eXd8B6IwNogVVQW92bSJbsmCl1tafYaYwc1j2Q6OJmO7b6qQuc9WBOiJxJY+pXryHi+BgBpuSLV9FZb18urOl8ftoV/UI/IcuXA+AZHHagtQrTI9oBIEngxnv3ARqau4KsujtOOu04N9oK7ShDFW8OftkUbjYg== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SN6PR12MB2621.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(136003)(366004)(376002)(396003)(346002)(39860400002)(451199021)(83380400001)(2906002)(2616005)(186003)(4326008)(66946007)(316002)(54906003)(66476007)(66556008)(6666004)(966005)(478600001)(5660300002)(53546011)(6512007)(26005)(8936002)(6506007)(41300700001)(8676002)(6486002)(38100700002)(31696002)(36756003)(31686004)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?RUQ3TFBVcnRXc0N2Y2ptQndLRStoZ3RrdHErdXNlS3h5eFhEazFxWXdFV2ow?= =?utf-8?B?dmFJVlpoeFIzYytDa3JTVTJZd3Y4QnAyalY1SmZjRGxCc2hzem9maUdEdGsr?= =?utf-8?B?UEdJSmlFSWwvUFlnaWRUNDFNanBzSWllZC9hZ3EyM1V4dUMwMElMeUtLcyta?= =?utf-8?B?Mk9uVU10c1FWZ1ZrUmtNL242VFl5RDI5Lzc4Z2NkcWJVZXl0UHVUTmRuNlAy?= =?utf-8?B?YlFIL0pJd3NqQUpKa1BlYUdlTDhEaWt1YUtwd2RjUWQxZ05UcXFOck5QaEVH?= =?utf-8?B?OXd2MVZWOVdJKzNBdFBOWUNDTkRrNHhXdEE4dFFyaC95TmdvR0NxR3R6cCtX?= =?utf-8?B?L1YrdmM5VHJnZzRncS9TUit1ZGpPSXFOZndRNGhLejMwVTNadHQ2TWZ2dHZt?= =?utf-8?B?ZXVkN0RpcDRtRDYvdGZOUExlczluMHpDQzlLMDRyU2V5bjhqNU40bnk0SFZq?= =?utf-8?B?MTM2SnhNeDJtNThJUTlXRm1MSnBIdDcweHBKbTRxSUR4U1gxUkxRK2xKQ05R?= =?utf-8?B?M1dtaXFlcFQ4UXRyRkoraFBaMmw1NjBadzZnWW9YVWRROFFTcXZndDByZlcw?= =?utf-8?B?eG1xSHZadEcrbUxwbDhHNkhMVlBHQmNnYlhwai83Ni9wYi9EV3l1bTlFTURK?= =?utf-8?B?OUQzU3NZZE0xdURFL1Y5R0hHK05MUUNvY3RIeVRQS0MvT2VZb3JHeUxsZldI?= =?utf-8?B?S0gwVmpONlFoYlR5c0JpZUl6d2NBc3BjNlFrRkhXNzQvTUZFc2FjdlAxVzZV?= =?utf-8?B?ZkpIYnAxRTQ4bldnMGtNeU5LYzYydVpYdktOTXF2N3luTFVERFdRbURhekdp?= =?utf-8?B?ekNJRTNLU3JYOEFsUFdOOTZsazU5TnNQazdjdG9sNWxUM0JtVHpSeWgvZFgy?= =?utf-8?B?SHNEQkdBYWZtdVhmcGtkdDl3V2hlelN0Q1VMVjVSb2JDRUlzUTIwYW0xWWNL?= =?utf-8?B?Y1NvTjlPdXBmTHF4WE5jWXU4NVdwWkxQNzAvZVJ1S2YxcTJ1eFIySHZVNGcy?= =?utf-8?B?Ykx6M0dQMzQ2UHRPeWVJYWxNVGg0ZGdGbTk1azRzL1BmaFhIMmFRTDVYTWl3?= =?utf-8?B?cVh4NnRiMDR6SUt2Ui9Hb1ZXWlRaS0JvVGlTU3pnY0E0Z1NVUndVcG1wS3Jo?= =?utf-8?B?RDlWYm94YWRHSmQ5Q2MvM0lPU0VicEZKOGlNN3Bkc0xCNkgzMUUrdnZLRVli?= =?utf-8?B?eTBTVmhtVUZyODc3UUhNVWdQMDM5NzJ5clAxTnhHR2hsTG1QSzF3ckV4TU9D?= =?utf-8?B?RXVocFNxMno4Y2E2UHBNcHNVdHh3YlpRRXRzS0Qrd3NtU3d3MUd3MEYrYlVF?= =?utf-8?B?dVNXZmdFZ3dEdnpPbG9FTEZQLzRCK29VUm1vaU9GYjBCTEcraVRSQU9DODZk?= =?utf-8?B?TjV3czVSVlVqVVlFRmRHK0h6U2VxTHZDd3gxSEJKSW4zMDBsVnZ5a2NJaTZj?= =?utf-8?B?SFR3ZG1XbmNMdUR1Ly8zY1paYVVoQ2hCaitkeHJpbVNja25zNFloaEd6OHRE?= =?utf-8?B?YTlzTzBCcGlranFxZGlZc1FqZ012ajAwZkVmT0pZTzJCOXRzdWNiS3I0UjJi?= =?utf-8?B?V3ZMUVRYUWhpYVB3NEtCZEZqYnFNSmFwWlU2ZjBwT0szNGNqM1JvaU5GMW9H?= =?utf-8?B?Qy94T21WN0ZGcDZjbFVybHFRZ2pKU2V2VnNYdWxKaVlrQVo1aFJCWjlJdStn?= =?utf-8?B?czVMT2VaUVpYNU9ZZVVORHM4OXp5R3NNNmszdmxHYzF5YklHZ0pwM0dYZTVW?= =?utf-8?B?Tk5mN3J2cDJVdDBvOGxkOXk5OVhxWlpZN25aVDVTQnF1dytPR2VYanYyeVVS?= =?utf-8?B?OHBIK1RyZlZ1QU91RSszSjVVRTVlbVpYZG4xSkxzWkVXK0VmZ3hXRWNBVmJ3?= =?utf-8?B?M3VBRmFIMmZjcXl4S2Ezcm9lU0lJOVVpTi96ZmtkcnlIb0N5SzhtSjlHYWtP?= =?utf-8?B?ZGxJMDRRUlk5WUxhMVlsOGFBY3RDSnlMNGZnN2xRdXlXdE1pamhzWGplZG1Y?= =?utf-8?B?WjRLd1dKZ25NR3BhczN6c2NMUDBTZVgyZHc4aWFSaEEwU2ZnbXM5L21SS0FM?= =?utf-8?B?enJrNHhNUHRsQlEvd0F1WmlPUHBTM0NYS0RZNGFxN3hLMW9rUGlUeXdMWWNu?= =?utf-8?Q?lUqVG6mYb/MAaYFUNLoETGK6g?= X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-Network-Message-Id: 41ce2bf9-8fe3-427e-97a2-08db77c6456b X-MS-Exchange-CrossTenant-AuthSource: SN6PR12MB2621.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Jun 2023 10:56:05.7556 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: SApgKzadIDHf1LLnUv5eWDzYG9JqO/FlCx5L6n3ZHLR6TQ7d0md69KoHmRH/UksDZQDQj+O0f58bZensCFidEw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH8PR12MB7231 Hi Penny, On 26/06/2023 04:34, Penny Zheng wrote: > CAUTION: This message has originated from an External Source. Please use proper judgment and caution when opening attachments, clicking links, or responding to this email. > > > The start-of-day Xen MPU memory region layout shall be like > as follows: > > xen_mpumap[0] : Xen text > xen_mpumap[1] : Xen read-only data > xen_mpumap[2] : Xen read-only after init data > xen_mpumap[3] : Xen read-write data > xen_mpumap[4] : Xen BSS > xen_mpumap[5] : Xen init text > xen_mpumap[6] : Xen init data > > The layout shall be compliant with what we describe in xen.lds.S, > or the codes need adjustment. > > Signed-off-by: Penny Zheng > Signed-off-by: Wei Chen > --- > v3: > - cache maintanence for safety when modifying MPU memory mapping table > - Hardcode index for all data/text sections > - To make sure that alternative instructions are included, use "_einitext" > as the start of the "Init data" section. > --- < snip> > +/* > + * Static start-of-day Xen EL2 MPU memory region layout: > + * > + * xen_mpumap[0] : Xen text > + * xen_mpumap[1] : Xen read-only data > + * xen_mpumap[2] : Xen read-only after init data > + * xen_mpumap[3] : Xen read-write data > + * xen_mpumap[4] : Xen BSS > + * xen_mpumap[5] : Xen init text > + * xen_mpumap[6] : Xen init data > + * > + * Clobbers x0 - x6 > + * > + * It shall be compliant with what describes in xen.lds.S, or the below > + * codes need adjustment. > + */ > +ENTRY(prepare_early_mappings) > + /* x0: region sel */ > + mov x0, xzr > + /* Xen text section. */ > + load_paddr x1, _stext > + load_paddr x2, _etext > + prepare_xen_region x0, x1, x2, x3, x4, x5, x6, attr_prbar=REGION_TEXT_PRBAR > + > + add x0, x0, #1 > + /* Xen read-only data section. */ > + load_paddr x1, _srodata > + load_paddr x2, _erodata > + prepare_xen_region x0, x1, x2, x3, x4, x5, x6, attr_prbar=REGION_RO_PRBAR > + > + add x0, x0, #1 > + /* Xen read-only after init data section. */ > + load_paddr x1, __ro_after_init_start > + load_paddr x2, __ro_after_init_end > + prepare_xen_region x0, x1, x2, x3, x4, x5, x6 > + > + add x0, x0, #1 > + /* Xen read-write data section. */ > + load_paddr x1, __ro_after_init_end > + load_paddr x2, __init_begin > + prepare_xen_region x0, x1, x2, x3, x4, x5, x6 > + > + add x0, x0, #1 > + /* Xen BSS section. */ > + load_paddr x1, __bss_start > + load_paddr x2, __bss_end > + prepare_xen_region x0, x1, x2, x3, x4, x5, x6 > + > + add x0, x0, #1 > + /* Xen init text section. */ > + load_paddr x1, _sinittext > + load_paddr x2, _einittext > + prepare_xen_region x0, x1, x2, x3, x4, x5, x6, attr_prbar=REGION_TEXT_PRBAR > + > + add x0, x0, #1 > + /* Xen init data section. */ > + /* > + * Even though we are not using alternative instructions in MPU yet, > + * we want to use "_einitext" for the start of the "Init data" section > + * to make sure they are included. > + */ > + load_paddr x1, _einittext > + roundup_section x1 > + load_paddr x2, __init_end > + prepare_xen_region x0, x1, x2, x3, x4, x5, x6 > + > + /* Ensure any MPU memory mapping table updates made above have occurred. */ > + dsb nshst > + ret > +ENDPROC(prepare_early_mappings) Any reason why this is in assembly ? We have implemented it in C https://github.com/Xilinx/xen/blob/d1258f1cefe406a3f91237b8106746c089864651/xen/arch/arm_mpu/mm_mpu.c#L941 , so that it can be common between R82 and R52. - Ayan From xen-devel-bounces@lists.xenproject.org Wed Jun 28 11:09:10 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 28 Jun 2023 11:09:10 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556423.868947 (Exim 4.92) (envelope-from ) id 1qET2m-0006mh-AN; Wed, 28 Jun 2023 11:09:04 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556423.868947; Wed, 28 Jun 2023 11:09:04 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qET2m-0006ma-7c; Wed, 28 Jun 2023 11:09:04 +0000 Received: by outflank-mailman (input) for mailman id 556423; Wed, 28 Jun 2023 11:09:02 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qET2k-0006mS-64 for xen-devel@lists.xenproject.org; Wed, 28 Jun 2023 11:09:02 +0000 Received: from esa3.hc3370-68.iphmx.com (esa3.hc3370-68.iphmx.com [216.71.145.155]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 2d5b75f7-15a4-11ee-8611-37d641c3527e; Wed, 28 Jun 2023 13:08:59 +0200 (CEST) Received: from mail-bn1nam02lp2047.outbound.protection.outlook.com (HELO NAM02-BN1-obe.outbound.protection.outlook.com) ([104.47.51.47]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 28 Jun 2023 07:08:54 -0400 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) by SJ0PR03MB6794.namprd03.prod.outlook.com (2603:10b6:a03:40d::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.31; Wed, 28 Jun 2023 11:08:46 +0000 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::1c83:1877:a68b:8902]) by SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::1c83:1877:a68b:8902%7]) with mapi id 15.20.6521.024; Wed, 28 Jun 2023 11:08:46 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 2d5b75f7-15a4-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1687950538; h=date:from:to:cc:subject:message-id:references: in-reply-to:mime-version; bh=T1o6298kNE7ixWaIRHuLRQBqSbmpS2wejkueFFIAhLM=; b=IBPcH2jpxYKkL9H4SzHXFxRdVa2+LcOHSTdO5Kdurz49ur3PQyDw3XEz 86BIr58r1K7hCRYpULrGm/6MtQxt85NyuFB7WAtfyhYJKBy4fvSX0jlYn lt1MpXBt8w3qO+HBI1EfvezNBUJ+sgz0+CB7x2Fe+s3DvH8RYONHLaXk3 w=; X-IronPort-RemoteIP: 104.47.51.47 X-IronPort-MID: 114471629 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:fr/zOqjLQWSEJMhRQKdlUIn1X161oBAKZh0ujC45NGQN5FlHY01je htvWmvVPaqKNmD1LYx3Po2xpkkEv5CBx4BjSFc+qSg8Qi4b9cadCdqndUqhZCn6wu8v7q5Ex 55HNoSfdpBcolv0/ErF3m3J9CEkvU2wbuOgTrWCYmYpHlUMpB4J0XpLg/Q+jpNjne+3CgaMv cKai8DEMRqu1iUc3lg8sspvkzsx+qyr0N8klgZmP6sT4gWOzyN94K83fsldEVOpGuG4IcbiL wrz5OnR1n/U+R4rFuSknt7TGqHdauePVeQmoiM+t5mK2nCulARrukoIHKN0hXNsoyeIh7hMJ OBl7vRcf+uL0prkw4zxWzEAe8130DYvFLXveRBTuuTLp6HKnueFL1yDwyjaMKVBktubD12i+ tQ+GCIDUh/egt6Ng46aSPQ0rM4hHMD0adZ3VnFIlVk1DN4AaLWbGeDgw4Yd2z09wMdTAfzZe swVLyJ1awjNaAFOPVFRD48imOCvhT/0dDgwRFC9/PJrpTSMilEoluSyWDbWUoXiqcF9hEGXq 3iA523kKhobKMae2XyO9XfEaurnxHqnBN1LSufpnhJsqAXO6i8OKxMHaXS++aaDiGydYItzA kNBr0LCqoB3riRHVOLVTxC+5XKJoBMYc95RCPEhrhGAzLLO5ASUDXRCSSROAPQEnsIrQT0h1 neSgsjkQzdotdW9Vna15rqS6zSoNkA9NnQebCUJSQ8E5djLo4wpiB/LCNF5H8adjMDxGDz26 yCHqm45nbp7pfAM06K37FXWmQWGr5LCThM2zgjPV2fj5QR8DKavapa081Hd4bBFJZyAU1ial HEeno6V6+VmJZuKniacTf4NGLys7vCtPzjVgFopFJ4knxyk/3+4YYlR+ndwPk5vOccfUSDla wnYvgY5zJRUOn2tb6N+fYOqI8svxKnkU9/iU5j8ad5DYYNwdUmE4Ttpbk6T2EjilUEtlec0P pLzWd2lC38BFa18zT2eXe4FzbgxyyYxxGXeSIr6yRvh2r2bDFaJUboMKkCJaMgj5buYpx/Y9 dleMcaH0RRZX6v1ZSy/2ZQUJ10QMX99D5n5rcVNf8aJPwV9FWcuTfTWxNscl5dNmq1UkqLC+ Ci7U0oAkl7n3yWbdkONd2xpb67pUdBnt3UnMCcwPFGunX8+fYKo66RZfJwyFVU6yNFeITdPZ 6FtU6297j5nEVwrJxx1gUHBkbFf IronPort-HdrOrdr: A9a23:KpKqLKBcf6yH6BjlHejNsseALOsnbusQ8zAXPh9KJCC9I/bzqy nxpp8mPH/P5wr5lktQ/OxoHJPwOU80lKQFmLX5WI3PYOCIgguVxe1ZnOjfKnjbalbDH41mpN tdmspFebrN5DFB5K6VgTVQUexQpuVvmJrY+Ns2pE0dKT2CBZsQjTuQXW2gYzdLrUR9dOwE/N 323Ls2mxOQPVAsKuirDHgMWObO4/XNiZLdeBYDQzI39QWUijusybjiVzyVxA0XXT9jyaortT GtqX2y2oyT99WAjjPM3W7a6Jpb3PPn19t4HcSJzuQFNzn2jQ6sRYJ5H5mPpio8ru2D4Esj1P PMvxAjFcJu7G65RBD/nTLdny3blBo+4X7rzlGVxVPlvMzCXTo/T+5Mn5hQfBf141cp+IgU6t MC40up875sST/QliX04NbFEzlsi0qPuHIn1coelWZWX4cyYKJY6aYf4ERWOpEdGz+S0vFvLM BeSOXnoNpGe1KTaH7U+kFp3dyXR3w2WiyLR0AT0/blpgR+rTRc9Q811cYflnAP+NYWUJ9f/d nJNaxuifVnUtIWRbgVPpZOfeKHTkj2BT7cOmObJlrqUIsdPWjWlpLx6LIpoMm3ZZ0zyocokp ipaiIWiYcLQTOvNSSy5uwJzviUK1/NHwgFi/suq6SRg4eMBYYCaka4ORUTe8jJmYRsPiSUYY f2BHtsOY6TEYLfI/c34+TAYegtFZA/arxghj9pYSP4nuv7bqvXi8f8TNH/YJLQLBdMYBKNPp JEZkm/GPl9 X-Talos-CUID: =?us-ascii?q?9a23=3AlyIl9mtsTn4pp+6P0/Ml6bKk6IsDQm/T8HiNJnO?= =?us-ascii?q?DSlpISqDNY1WSyKp7xp8=3D?= X-Talos-MUID: =?us-ascii?q?9a23=3AOKJjLA7oqRUIVobhJ4kZBO5PxowwvojtFWMDgKk?= =?us-ascii?q?pvpHbDy5SGAzEoB24F9o=3D?= X-IronPort-AV: E=Sophos;i="6.01,165,1684814400"; d="scan'208";a="114471629" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=POf2Ik4nRoXwp6iMC+TtdiOGdyaAPAUV1Qq7zjBhm0LW8f9Qf6nOepf23KMF1lqg8xY41fn/+OlePlMaF15TUGqAjCGNXJtP3uK42jKYQn/NB0eHh7/CqNUVyYMm1KRbeNIK4Yj0P9FU4YS1Ukn97Nt+g26tI2OD3iZbBUM6oJkVrjhoTuIkE8ZWuR1enRxKDTNyvev0OK6GD5ITAYIGItkrl+94rm4HeH5qphWlBz+58X9f/pzULonlzhecm/fg6OrWS8Ibq6Qkuwx63v33/fcfyJ9Qqz1bBJlxDqATa0L5d5Jr9v+xfz9gEGrYs0PDObGVrao8wLWLhNXEJocGpw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=WdQjIBfTzR0IEWNUdj1wku4BPvPZSXv8beqDEbrltCY=; b=ZVAkLxXRBOt/vQ95029qdKyPtW6D/ix9ChmjunueWSBmrzF+hpAyEA/YzUIl+PNai0xTTs+Q1W41dPSs+6gls9DCoD4U147ybnlcalQDmCJ+79CkxDaKSZmD0bUqXFE4Q7tr2o8J9A7942XSM3+ry4J/JBzbpDrt5hNg0ItT3bB8udIpdzhNqsoFLOKe//IXLRkxPPvcrTrqqsAjIMhl7QTTxxP9uzUTAZAcy2GVHklcyo8zC4HPCx3M/pXv2WRdBSaCjG69xQK/nR4RQZodFlESn9HOM3mKhRAulGk5K7mJbhLqSN/c37tRnDoL+hUSHNQylGlm5oxJb3K5TzxwoA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=WdQjIBfTzR0IEWNUdj1wku4BPvPZSXv8beqDEbrltCY=; b=AyH0tZXyymk9CvQZGZ5YgjM+6ZfTgI7XfSfylcwnzcDX8fXnD787ng2sTSwOH+6kUYbLAcW4mxzR1PR9LJZrBv4+M/PKL8J6dXG4v+BiMp2Dnn6JB7DENhTzkreO2spwZGZXUSYEZCEdklK3QfObSWsSMsEWVnj6hAtLYYk0Ks8= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Date: Wed, 28 Jun 2023 13:08:39 +0200 From: Roger Pau =?utf-8?B?TW9ubsOp?= To: Andrew Cooper Cc: Xen-devel , Jan Beulich , Wei Liu , Stefano Stabellini , Julien Grall , Volodymyr Babchuk , Bertrand Marquis , Bob Eshleman , Alistair Francis , Connor Davis , Oleksii Kurochko , Shawn Anastasio , Timothy Pearson , Roberto Bagnara Subject: Re: [PATCH v2 3/3] xen/types: Rework stdint vs __{u,s}$N types Message-ID: References: <20230627075618.1180248-1-andrew.cooper3@citrix.com> <20230627075618.1180248-4-andrew.cooper3@citrix.com> Content-Type: text/plain; charset=utf-8 Content-Disposition: inline In-Reply-To: <20230627075618.1180248-4-andrew.cooper3@citrix.com> X-ClientProxiedBy: MR1P264CA0077.FRAP264.PROD.OUTLOOK.COM (2603:10a6:501:3f::9) To SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|SJ0PR03MB6794:EE_ X-MS-Office365-Filtering-Correlation-Id: bc8477c8-db2a-4f99-a6ce-08db77c80a88 X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: E/H/UnZIuC2ejkAw+jr07gGPL2/S5CcQosyROu8VODMF545lCCcOouo/IE7GOgLg3533RN6DRM05XgVCW6vTIy+wnoZN8M5eFJ9jJmOSuIrabDuzCvRMesRgFAH5hh0m4CI741QQ8MYhsz0Q6rXlgmMmJo5zVdRRPnh3CegBbDXBH0oTGpCHiEu5OEEBW5ZZ8vy1b1R9QbeaMKxlBKWvMYE4oebd7leavLRS+f9q8rtFRh3ZMXPqcMc+PhVFLZ40gDcNTAQOwT7Ve9EsJgu3SWmkbtYVsZ4zxQLlBG+ion+hWXT1bLmogKR6UeLsQGxlTpe9a3YjeBim+rlpieAJgVcli3RY9EES7TLZWRBLDs9g5aho1qhYVhcw7Oyai2HN6KspNv4HjXW4BUyfaU2NzDOhybx6F77b42UiE75lf4JfEQvHSMFq2f8QIplqKSsa1ajAd5kpEtRK9lOtpZOXIz4WXwKwubtDF3L+7q+x6x5jxr/NeqCndKc1Wz4LkonAkvew7rrdZESexdKV4TdjXrWU1i7O7QABAejzydLTahaS+Av4LOY5xXpWZAOwfFYK X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(346002)(376002)(136003)(39860400002)(396003)(366004)(451199021)(66946007)(4326008)(66556008)(6636002)(86362001)(82960400001)(66476007)(26005)(9686003)(6512007)(186003)(38100700002)(6506007)(85182001)(54906003)(478600001)(6486002)(6666004)(41300700001)(2906002)(5660300002)(7416002)(6862004)(8936002)(8676002)(316002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?azBkSXBGWkloR05XVmFOblhydklyeVlpNWJKZCtHejN1S1V1T2R2bG5kbEVt?= =?utf-8?B?WlAycUNTVUpDME5DaEQ4N3k3SWljUHFFMXl2ZTZsOFFaTlRpTFhEdlBVOGFC?= =?utf-8?B?MW15end6OWlrZWx2cGtKeGNNQW9nSGk5Y1BybWNoenBRL05ZZytRUS9lN2JD?= =?utf-8?B?Um9kb0xueWkyOWc5L1lPOStBc3NNTHZDS3NUSGVVUVBkTXIxbmQyN2taRXZ2?= =?utf-8?B?K080L3hKeDR4R2ZYa2NRM080bDFKaTljcVpQNFpYVkl5YXh6VU1YUmFmdWdE?= =?utf-8?B?OUFHd3JPV21Qa25XTm5uUjcxc003a1NEVHFTSzZSRzJEUmNuVUNkZ1NiYjNU?= =?utf-8?B?UERKSk1UMm1aTWJaSXFCUWVUNGVNcS8vMUNoQk1HbS9uY0R0V3QzbG1YTG14?= =?utf-8?B?M0JheVZzQkkycU5XakpXaXRKMkx3OG10dGptT3g5TjFFWlh1aXhjcHgwTFly?= =?utf-8?B?UWJuazRpMzlyVDIzSHdLNTFtZ2t3emk2alo2dVd5WVNEUGlSVGpvU3FzSWNh?= =?utf-8?B?K0ZzbDVKVjRFZ0R0VjlIa2hxMnJrZWJ6RE1YUGZhelV1ei9TTklmT09peGdR?= =?utf-8?B?ZmZQdjVzdk5nQm5SSlJwVUlnOU5xRGVDTkk5c3Yyd3J5WWxzUmlMbXhMdGlo?= =?utf-8?B?ZTJUQkpmMVdqT1FWKzc2TisxWkZEcFZHblhjdGFlRnBzbVZkcEZxdmlyckU5?= =?utf-8?B?WkF4cjRWSm9heEVJQ1k3U0ZreDBnSFJhSXBaWld1NHdHQWJhVDZNaEFNNVNh?= =?utf-8?B?eGZPSFYydkk1T1h6RU5NS0ZDT2daNnFLWFh4TE1rQTBHSEJNZXA3OWZpcHdI?= =?utf-8?B?c1NIbWsrZ0xVQzBSNldXKzIydy9tVDZZYlJ2NU1SUVZPRkdjZW5Wb2dFV2Nm?= =?utf-8?B?K21uOVZxRi9ZN1EyamRkT1JvVlJocnl0VE9Vcms3UlVLc3g4NkRRUlIzQUll?= =?utf-8?B?VzFaQkZhSUl3SVF4UzdpOXIyZkM4V3MvNnNrdGJad1F3Skx5ZW1DQkVpdVRZ?= =?utf-8?B?V3d3UUhBajhtMWU2TEtlWGNhN2tZRjIzbXZacmhrZ1lyN1pHbk16UEJOQTVL?= =?utf-8?B?UW9ocjd4Y25mRWxDRzlhZmNEMXBRZVFrZDR2bEhFUG15bG5XTE9yemJ3RnVj?= =?utf-8?B?S0hEd0w4a2lIa2dVY2lJaTBIajlpVExVVmZVUEVRMmhDSXhuc2ROUzN1MWdx?= =?utf-8?B?MHJzV0FUNTlBaFhtVm9icStLVVRMajVsRWUvNmIzbzNjeVg2OXpiT2U3OUhV?= =?utf-8?B?MTduTVpvck5ZWnNIemhvVE1tR3YwcTgzMG96bUxiajJTN0o5bUhEY0pCRDVK?= =?utf-8?B?enA0ZlNFWkNxcG9iNHljSG9HL2J1bnNONDcveG11MTl3Y3ljUGJYM29pNjlS?= =?utf-8?B?Rmgwem1vU0pLZGs5TW11a1dwYllKeVFYTHdha1Q2SmR5MU01azAzMkFvb3lj?= =?utf-8?B?LzhEU01BeHk0SEx6Snpzc2RFLzkzc0lxM0gvbmh2MWI2NXA2Q1pIYm11cWta?= =?utf-8?B?TGpKTHpwdUFxa3NmVDF2OEJnMm91UU42elp5VmordTB6MFVlekQ0SDRzdVBx?= =?utf-8?B?M0xPQ1k2RWpSWjEwYWZZK1I4dXE5SW5JVzJSb2NXTHVQY2hZZXZpSmc2b1RG?= =?utf-8?B?ZVkvc0prYk9jeDhqakJLbmhDTmw1VmxPVzVMVXpQcU9iNlY0S2JSNCtNeE82?= =?utf-8?B?ZzEwQnBSdkZhMWg0TWc4d1V6NUJUV3NnejRRR0haWTc5ZFFnMFhLUm54czMz?= =?utf-8?B?b2QyUUkxc0NGUVpEWDhnYldXeHFab1JCc2o3dGlhdXdsMWdiZzd0RXZQM2po?= =?utf-8?B?K2ZGaHBxbFZDQmRKUHh0eTdRc1d6M1pabjYvZHpWQmpDM2ovS014UjRtaTYx?= =?utf-8?B?N2hSUm1iZGJtMEUyam5yZnhZVERLdjE4d0Nad3RKdzlGTWdhaDdVRS9uUUV4?= =?utf-8?B?VTl4eFVhSEdZNzU5OHE0NE1nUTFtTUtLNHY0a29JVXVVRjEzUW83WEx3VjJQ?= =?utf-8?B?b3lyL0g4VWRJNHhxN3pPWXlKQUNDSTJ4OGc0N1BzOG1PQnJYd2I2V3cwSEdt?= =?utf-8?B?ZDZXaUxvcUExV3dSR21uWi91cldFaEdPV09yU2JlZ3YxYVdFZXpjTzNFNXhN?= =?utf-8?Q?xGy7/uLrFwSabI9pBZde7OQAw?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: =?utf-8?B?a21EVDhNWjREMGVvNXhoTlRMT0VrQ2gyb21EcDVuZFVEQThLVGx6K2dtOHFl?= =?utf-8?B?YzQyRWlnZVZNemlSN2NPcFE1TC9GN0swM1dkMkdSUkJVRzZTY3ZOU2p3bkdn?= =?utf-8?B?SVNETDBzUW94a2E5NXI1YWU2Mlo5aWFDampQTDlQZEVPQ2Z3OVVaQkRWVi80?= =?utf-8?B?WUJ5SHhlYTBtTklIMU9FTmxlQWROcFNFbm1XN0hyeC9tUVBaOWFJMjViT05h?= =?utf-8?B?UU5qK1Fodk8xdjJya2lKL0drREVUQ0JicWhXUGVUU09ELzAvalI3QWxKdVlE?= =?utf-8?B?bjVUU2hTOWZJRE1JYmVjTG1FdXQ1RjNiNjdmakM3eVVkdXR6RkZjb0J5aEx3?= =?utf-8?B?Wk5TTVdyUlNrWUhqbzVubmRhUjFrZXJBN2JrcUVwMVlHUFVZM1dqemQ1NXRq?= =?utf-8?B?TmtrMnV5VWVTaUdpVktrVXljYnlSMDByZTZtcFdTZ2QwMW9uMy9QM1hNWE4w?= =?utf-8?B?UEUrbWE4M2pvYTR0WlRSZ0dnTDR6VGR5Y2E5dWRraHVNVldIZ2pqc29jT012?= =?utf-8?B?bUpVaFB0cGtZRXBKeEpmMzRHeTQwaVEvYWtvUjE1MHErTURyOHRPdFY0R3pE?= =?utf-8?B?ZUhya2NCRTgvdldMVnJKRk1UNi84ZXFmU3RpNnRKblhWV2dYd1Q2ZitONUU4?= =?utf-8?B?QXdSbGtWbnkza3k0Vmk4Qk9YY0ZDZ3Y4TEJLcE9FRnRMYVdMNzdaekRaSmJz?= =?utf-8?B?RnhNNVdXK2RSdlpiUTFiNDBmNzRUZHNOUm1zcDJkeFdYSjRwVlBGOUZSYXRO?= =?utf-8?B?YU1PaGRsL2Z4RnVZTnBOdFdUN3ljd2hpMm5LREU2bVJ3WU1RdkpPdHRxWURu?= =?utf-8?B?WEtHNndVdmhqSW1YOFpnaVFORkovY2ZaZ2lVVE9TZnpHSUVETWw3R01ZTC9h?= =?utf-8?B?VThTTUd1UW1Gai85TTQyRllaV1dBV3B0ZDNvRldkODFlUEpVY3hkNzlRZUJh?= =?utf-8?B?bFVlcytQYTRHbTAvRk92ZkVzNW1WUTNQK0xmL1QxN3ZtdkNneXZLRGNmQVJF?= =?utf-8?B?OXc1c2ZjMFpxdENLT2hqVVlvNUp0ZDM1dWtCVzJUeXp2MGNFMDhTaWFDUzVU?= =?utf-8?B?Q2VCbVJxNlNYbHluVW9qaXVlRGU2VHFuT2tMMnk2OXo3Nzc3dVg3dFFWbnBy?= =?utf-8?B?NFdTdnB2T1dTaUxReFpxUXpGTkFnVS9JZCt0SHN0UjI5QW93OU5NQnZ3cy82?= =?utf-8?B?dEFJQWdzcHhKYnhKdE9nRWRqeVRMaStocnBIb1VFaE9aTnBEaERlc3RkQ04y?= =?utf-8?B?VFlMNFB5WFI4bm1ES2d0SU96dmNMQUtEZENobWc0ZCs3M2RwTkEvMzBSeWFi?= =?utf-8?B?czQyMG1sNnRrVnJibHBNVndGdDl1YXZtQWZRSHJ1Y3NpbDBQOGpReXp1ckZO?= =?utf-8?Q?zV91vMxntndpBJr1quWpkIhiSh1EJpYc=3D?= X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: bc8477c8-db2a-4f99-a6ce-08db77c80a88 X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Jun 2023 11:08:46.0170 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: fycY0i0tCZajWiIgiPOdJQvzpQ4Kjq+5DHx1DD6MVLQKhrHiTqkdW6VYHVdS8E4J29RWv2rJbdQwxpoAg6jM3w== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR03MB6794 On Tue, Jun 27, 2023 at 08:56:18AM +0100, Andrew Cooper wrote: > Xen uses the stdint types. Rearrange the types headers to define the > compatibility __{u,s}$N types in terms of the stdint types, not the other way > around. > > All all supported compilers on architectures other than x86 support the stdint Duplicated "all". > diff --git a/xen/include/xen/stdint.h b/xen/include/xen/stdint.h > new file mode 100644 > index 000000000000..4cf82790f196 > --- /dev/null > +++ b/xen/include/xen/stdint.h > @@ -0,0 +1,33 @@ > +/* SPDX-License-Identifier: GPL-2.0-only */ > +#ifndef __XEN_STDINT_H__ > +#define __XEN_STDINT_H__ > + > +#ifndef __INT8_TYPE__ /* GCC <= 4.4 */ I'm possibly confused, but don't you want to use __INT8_TYPE__ if it's defined, and hence this should be an ifdef instead of an ifndef? > + > +typedef __INT8_TYPE__ int8_t; > +typedef __UINT8_TYPE__ uint8_t; > +typedef __INT16_TYPE__ int16_t; > +typedef __UINT16_TYPE__ uint16_t; > +typedef __INT32_TYPE__ int32_t; > +typedef __UINT32_TYPE__ uint32_t; > +typedef __INT64_TYPE__ int64_t; > +typedef __UINT64_TYPE__ uint64_t; Thanks, Roger. From xen-devel-bounces@lists.xenproject.org Wed Jun 28 11:17:56 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 28 Jun 2023 11:17:56 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556430.868956 (Exim 4.92) (envelope-from ) id 1qETB7-0008Lo-84; Wed, 28 Jun 2023 11:17:41 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556430.868956; Wed, 28 Jun 2023 11:17:41 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qETB7-0008Lh-4r; Wed, 28 Jun 2023 11:17:41 +0000 Received: by outflank-mailman (input) for mailman id 556430; Wed, 28 Jun 2023 11:17:39 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qETB5-0008Lb-Fo for xen-devel@lists.xenproject.org; Wed, 28 Jun 2023 11:17:39 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qETB4-0000XM-TB; Wed, 28 Jun 2023 11:17:38 +0000 Received: from 54-240-197-238.amazon.com ([54.240.197.238] helo=[192.168.5.86]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qETB4-0003kt-Kn; Wed, 28 Jun 2023 11:17:38 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=XHo7IpfHntvuyKmeo7WzPgL1gmmtsZasO50OjKEBY8Y=; b=DmTOI/9MxtoIE4nOZWk4PUtO43 sbmQ0sKYmiHcvS99sYC+YWQtxmpW5si2NUvOj/o5vi87q8pQnzdIc814+LM5gFO1kcKVG5vgvjelV 8ry+n9IQ7zZ69evijZvJnh8Em5v0HbCp5GsFggYy13adBESvXNkEQ3HDZe85n/VUMeno=; Message-ID: <39a5a729-0099-67e4-bf4a-c65ae99a4619@xen.org> Date: Wed, 28 Jun 2023 12:17:36 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v3 24/52] xen/mpu: build up start-of-day Xen MPU memory region map Content-Language: en-US To: Ayan Kumar Halder , Penny Zheng , xen-devel@lists.xenproject.org Cc: Stefano Stabellini , Bertrand Marquis , Volodymyr Babchuk , Wei Chen References: <20230626033443.2943270-1-Penny.Zheng@arm.com> <20230626033443.2943270-25-Penny.Zheng@arm.com> <778688ab-8fd4-2b06-e644-b5a013bb56f7@amd.com> From: Julien Grall In-Reply-To: <778688ab-8fd4-2b06-e644-b5a013bb56f7@amd.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Hi, On 28/06/2023 11:55, Ayan Kumar Halder wrote: > On 26/06/2023 04:34, Penny Zheng wrote: >> CAUTION: This message has originated from an External Source. Please >> use proper judgment and caution when opening attachments, clicking >> links, or responding to this email. >> >> >> The start-of-day Xen MPU memory region layout shall be like >> as follows: >> >> xen_mpumap[0] : Xen text >> xen_mpumap[1] : Xen read-only data >> xen_mpumap[2] : Xen read-only after init data >> xen_mpumap[3] : Xen read-write data >> xen_mpumap[4] : Xen BSS >> xen_mpumap[5] : Xen init text >> xen_mpumap[6] : Xen init data >> >> The layout shall be compliant with what we describe in xen.lds.S, >> or the codes need adjustment. >> >> Signed-off-by: Penny Zheng >> Signed-off-by: Wei Chen >> --- >> v3: >> - cache maintanence for safety when modifying MPU memory mapping table >> - Hardcode index for all data/text sections >> - To make sure that alternative instructions are included, use >> "_einitext" >> as the start of the "Init data" section. >> --- > < snip> >> +/* >> + * Static start-of-day Xen EL2 MPU memory region layout: >> + * >> + *     xen_mpumap[0] : Xen text >> + *     xen_mpumap[1] : Xen read-only data >> + *     xen_mpumap[2] : Xen read-only after init data >> + *     xen_mpumap[3] : Xen read-write data >> + *     xen_mpumap[4] : Xen BSS >> + *     xen_mpumap[5] : Xen init text >> + *     xen_mpumap[6] : Xen init data >> + * >> + * Clobbers x0 - x6 >> + * >> + * It shall be compliant with what describes in xen.lds.S, or the below >> + * codes need adjustment. >> + */ >> +ENTRY(prepare_early_mappings) >> +    /* x0: region sel */ >> +    mov   x0, xzr >> +    /* Xen text section. */ >> +    load_paddr x1, _stext >> +    load_paddr x2, _etext >> +    prepare_xen_region x0, x1, x2, x3, x4, x5, x6, >> attr_prbar=REGION_TEXT_PRBAR >> + >> +    add   x0, x0, #1 >> +    /* Xen read-only data section. */ >> +    load_paddr x1, _srodata >> +    load_paddr x2, _erodata >> +    prepare_xen_region x0, x1, x2, x3, x4, x5, x6, >> attr_prbar=REGION_RO_PRBAR >> + >> +    add   x0, x0, #1 >> +    /* Xen read-only after init data section. */ >> +    load_paddr x1, __ro_after_init_start >> +    load_paddr x2, __ro_after_init_end >> +    prepare_xen_region x0, x1, x2, x3, x4, x5, x6 >> + >> +    add   x0, x0, #1 >> +    /* Xen read-write data section. */ >> +    load_paddr x1, __ro_after_init_end >> +    load_paddr x2, __init_begin >> +    prepare_xen_region x0, x1, x2, x3, x4, x5, x6 >> + >> +    add   x0, x0, #1 >> +    /* Xen BSS section. */ >> +    load_paddr x1, __bss_start >> +    load_paddr x2, __bss_end >> +    prepare_xen_region x0, x1, x2, x3, x4, x5, x6 >> + >> +    add   x0, x0, #1 >> +    /* Xen init text section. */ >> +    load_paddr x1, _sinittext >> +    load_paddr x2, _einittext >> +    prepare_xen_region x0, x1, x2, x3, x4, x5, x6, >> attr_prbar=REGION_TEXT_PRBAR >> + >> +    add   x0, x0, #1 >> +    /* Xen init data section. */ >> +    /* >> +     * Even though we are not using alternative instructions in MPU yet, >> +     * we want to use "_einitext" for the start of the "Init data" >> section >> +     * to make sure they are included. >> +     */ >> +    load_paddr x1, _einittext >> +    roundup_section x1 >> +    load_paddr x2, __init_end >> +    prepare_xen_region x0, x1, x2, x3, x4, x5, x6 >> + >> +    /* Ensure any MPU memory mapping table updates made above have >> occurred. */ >> +    dsb   nshst >> +    ret >> +ENDPROC(prepare_early_mappings) > > Any reason why this is in assembly ? I am not Penny. But from my understanding, in your approach, you will require to disable to switch the disable the MPU for using the new sections. While I agree... > > We have implemented it in C > https://github.com/Xilinx/xen/blob/d1258f1cefe406a3f91237b8106746c089864651/xen/arch/arm_mpu/mm_mpu.c#L941 , so that it can be common between R82 and R52. ... this means you can share the code. It also means: * You can't protect Xen properly from the start * You need to flush the cache (not great for performance) * You need to be more cautious as the MPU will be disabled for a short period of time. In fact looking at your switch code in setup_protection_regions(), I am not convinced you can disable the MPU in C and then call set_boot_mpumap(). I think the enable/disable would need to be moved in the assembly function. There are potentially more issues. So overall, I am not convinced of the C/common approach. Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Wed Jun 28 11:27:54 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 28 Jun 2023 11:27:54 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556434.868966 (Exim 4.92) (envelope-from ) id 1qETKt-0001R0-1S; Wed, 28 Jun 2023 11:27:47 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556434.868966; Wed, 28 Jun 2023 11:27:47 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qETKs-0001Qt-VC; Wed, 28 Jun 2023 11:27:46 +0000 Received: by outflank-mailman (input) for mailman id 556434; Wed, 28 Jun 2023 11:27:45 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qETKr-0001Qj-9S; Wed, 28 Jun 2023 11:27:45 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qETKr-0000hY-33; Wed, 28 Jun 2023 11:27:45 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qETKq-0008Pi-HW; Wed, 28 Jun 2023 11:27:44 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qETKq-00055B-Gs; Wed, 28 Jun 2023 11:27:44 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=bVnnv1PMlDnyVO8p0sKxRMztrXUMgIBigHtRiSvdLZU=; b=FnR2hte4GZKbsuNL4aPoswRqj+ F3JdZVRSXtzZ8RvHLAJzwxK49kPIZUyg6pGkk6CUFBKzXsVvOSO2uxImBqYaaPeNCrsXpxAlAeXJ1 fEE9MsZRQwviXdpcF5OwbxYpKWRXfHgZM/PmQpB9uiN5mSEN3vh3ZjFud+H+RDGJ9NNg=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [linux-linus test] 181619: regressions - FAIL X-Osstest-Failures: linux-linus:test-amd64-amd64-qemuu-nested-amd:leak-check/basis(11):fail:regression linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:leak-check/basis(11):fail:regression linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:xen-boot:fail:regression linux-linus:test-amd64-amd64-pygrub:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-qemut-debianhvm-amd64:xen-boot:fail:regression linux-linus:test-amd64-amd64-libvirt-xsm:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl:leak-check/basis(11):fail:regression linux-linus:test-amd64-amd64-xl-qemuu-ovmf-amd64:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-xsm:leak-check/basis(11):fail:regression linux-linus:test-amd64-amd64-xl-credit2:leak-check/basis(11):fail:regression linux-linus:test-amd64-amd64-libvirt:xen-boot:fail:regression linux-linus:test-amd64-amd64-freebsd11-amd64:leak-check/basis(11):fail:regression linux-linus:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:xen-boot:fail:regression linux-linus:test-amd64-amd64-libvirt-raw:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:leak-check/basis(11):fail:regression linux-linus:test-amd64-amd64-xl-shadow:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm:leak-check/basis(11):fail:regression linux-linus:test-amd64-amd64-xl-multivcpu:debian-install:fail:regression linux-linus:test-amd64-amd64-xl-pvhv2-amd:debian-install:fail:regression linux-linus:test-amd64-amd64-xl-credit1:debian-install:fail:regression linux-linus:test-amd64-amd64-libvirt-pair:xen-boot/dst_host:fail:regression linux-linus:test-amd64-amd64-xl-pvhv2-intel:xen-boot:fail:regression linux-linus:test-amd64-amd64-pair:xen-boot/src_host:fail:regression linux-linus:test-amd64-amd64-pair:xen-boot/dst_host:fail:regression linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:debian-hvm-install:fail:regression linux-linus:test-amd64-amd64-freebsd12-amd64:xen-boot:fail:regression linux-linus:test-amd64-amd64-qemuu-nested-intel:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-pvshim:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:debian-hvm-install:fail:regression linux-linus:test-amd64-amd64-libvirt-qcow2:debian-di-install:fail:regression linux-linus:test-amd64-coresched-amd64-xl:leak-check/check:fail:regression linux-linus:test-armhf-armhf-xl-credit1:xen-boot:fail:regression linux-linus:test-amd64-amd64-examine:reboot:fail:regression linux-linus:test-amd64-amd64-examine-uefi:reboot:fail:regression linux-linus:build-arm64-pvops:kernel-build:fail:regression linux-linus:test-amd64-amd64-xl-rtds:debian-install:fail:allowable linux-linus:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking linux-linus:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking linux-linus:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking linux-linus:test-arm64-arm64-examine:build-check(1):blocked:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking linux-linus:test-arm64-arm64-xl:build-check(1):blocked:nonblocking linux-linus:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking linux-linus:test-armhf-armhf-examine:reboot:fail:nonblocking linux-linus:test-armhf-armhf-xl-arndale:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-raw:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-credit2:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-rtds:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-qcow2:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-vhd:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-multivcpu:xen-boot:fail:nonblocking X-Osstest-Versions-This: linux=98be618ad03010b1173fc3c35f6cbb4447ee2b07 X-Osstest-Versions-That: linux=6c538e1adbfc696ac4747fb10d63e704344f763d From: osstest service owner Date: Wed, 28 Jun 2023 11:27:44 +0000 flight 181619 linux-linus real [real] http://logs.test-lab.xenproject.org/osstest/logs/181619/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: test-amd64-amd64-qemuu-nested-amd 11 leak-check/basis(11) fail REGR. vs. 180278 test-amd64-amd64-xl-qemut-ws16-amd64 11 leak-check/basis(11) fail REGR. vs. 180278 test-amd64-amd64-xl-qemuu-ws16-amd64 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-pygrub 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-xl-qemut-win7-amd64 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-xl-qemuu-win7-amd64 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-xl-qemut-debianhvm-amd64 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-libvirt-xsm 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-xl-qemuu-debianhvm-amd64 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-xl 11 leak-check/basis(11) fail REGR. vs. 180278 test-amd64-amd64-xl-qemuu-ovmf-amd64 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-xl-xsm 11 leak-check/basis(11) fail REGR. vs. 180278 test-amd64-amd64-xl-credit2 11 leak-check/basis(11) fail REGR. vs. 180278 test-amd64-amd64-libvirt 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-freebsd11-amd64 11 leak-check/basis(11) fail REGR. vs. 180278 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-libvirt-raw 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 11 leak-check/basis(11) fail REGR. vs. 180278 test-amd64-amd64-xl-shadow 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm 11 leak-check/basis(11) fail REGR. vs. 180278 test-amd64-amd64-xl-multivcpu 12 debian-install fail REGR. vs. 180278 test-amd64-amd64-xl-pvhv2-amd 12 debian-install fail REGR. vs. 180278 test-amd64-amd64-xl-credit1 12 debian-install fail REGR. vs. 180278 test-amd64-amd64-libvirt-pair 13 xen-boot/dst_host fail REGR. vs. 180278 test-amd64-amd64-xl-pvhv2-intel 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-pair 12 xen-boot/src_host fail REGR. vs. 180278 test-amd64-amd64-pair 13 xen-boot/dst_host fail REGR. vs. 180278 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 12 debian-hvm-install fail REGR. vs. 180278 test-amd64-amd64-freebsd12-amd64 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-qemuu-nested-intel 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-xl-pvshim 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 12 debian-hvm-install fail REGR. vs. 180278 test-amd64-amd64-libvirt-qcow2 12 debian-di-install fail REGR. vs. 180278 test-amd64-coresched-amd64-xl 25 leak-check/check fail REGR. vs. 180278 test-armhf-armhf-xl-credit1 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-examine 8 reboot fail REGR. vs. 180278 test-amd64-amd64-examine-uefi 8 reboot fail REGR. vs. 180278 build-arm64-pvops 6 kernel-build fail REGR. vs. 180278 Regressions which are regarded as allowable (not blocking): test-amd64-amd64-xl-rtds 12 debian-install fail REGR. vs. 180278 Tests which did not succeed, but are not blocking: test-arm64-arm64-xl-credit2 1 build-check(1) blocked n/a test-arm64-arm64-xl-thunderx 1 build-check(1) blocked n/a test-arm64-arm64-xl-vhd 1 build-check(1) blocked n/a test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a test-arm64-arm64-examine 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-raw 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-xsm 1 build-check(1) blocked n/a test-arm64-arm64-xl 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit1 1 build-check(1) blocked n/a test-armhf-armhf-examine 8 reboot fail like 180278 test-armhf-armhf-xl-arndale 8 xen-boot fail like 180278 test-armhf-armhf-xl 8 xen-boot fail like 180278 test-armhf-armhf-libvirt-raw 8 xen-boot fail like 180278 test-armhf-armhf-xl-credit2 8 xen-boot fail like 180278 test-armhf-armhf-xl-rtds 8 xen-boot fail like 180278 test-armhf-armhf-libvirt 8 xen-boot fail like 180278 test-armhf-armhf-libvirt-qcow2 8 xen-boot fail like 180278 test-armhf-armhf-xl-vhd 8 xen-boot fail like 180278 test-armhf-armhf-xl-multivcpu 8 xen-boot fail like 180278 version targeted for testing: linux 98be618ad03010b1173fc3c35f6cbb4447ee2b07 baseline version: linux 6c538e1adbfc696ac4747fb10d63e704344f763d Last test of basis 180278 2023-04-16 19:41:46 Z 72 days Failing since 180281 2023-04-17 06:24:36 Z 72 days 138 attempts Testing same since 181619 2023-06-28 02:01:09 Z 0 days 1 attempts ------------------------------------------------------------ 2901 people touched revisions under test, not listing them all jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops fail build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl fail test-amd64-coresched-amd64-xl fail test-arm64-arm64-xl blocked test-armhf-armhf-xl fail test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm fail test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm fail test-amd64-amd64-xl-qemut-debianhvm-i386-xsm fail test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm fail test-amd64-amd64-libvirt-xsm fail test-arm64-arm64-libvirt-xsm blocked test-amd64-amd64-xl-xsm fail test-arm64-arm64-xl-xsm blocked test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd fail test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 fail test-amd64-amd64-xl-qemuu-debianhvm-amd64 fail test-amd64-amd64-freebsd11-amd64 fail test-amd64-amd64-freebsd12-amd64 fail test-amd64-amd64-xl-qemuu-ovmf-amd64 fail test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale fail test-amd64-amd64-examine-bios pass test-amd64-amd64-xl-credit1 fail test-arm64-arm64-xl-credit1 blocked test-armhf-armhf-xl-credit1 fail test-amd64-amd64-xl-credit2 fail test-arm64-arm64-xl-credit2 blocked test-armhf-armhf-xl-credit2 fail test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict fail test-amd64-amd64-examine fail test-arm64-arm64-examine blocked test-armhf-armhf-examine fail test-amd64-amd64-qemuu-nested-intel fail test-amd64-amd64-xl-pvhv2-intel fail test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt fail test-armhf-armhf-libvirt fail test-amd64-amd64-xl-multivcpu fail test-armhf-armhf-xl-multivcpu fail test-amd64-amd64-pair fail test-amd64-amd64-libvirt-pair fail test-amd64-amd64-xl-pvshim fail test-amd64-amd64-pygrub fail test-amd64-amd64-libvirt-qcow2 fail test-armhf-armhf-libvirt-qcow2 fail test-amd64-amd64-libvirt-raw fail test-arm64-arm64-libvirt-raw blocked test-armhf-armhf-libvirt-raw fail test-amd64-amd64-xl-rtds fail test-armhf-armhf-xl-rtds fail test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow fail test-amd64-amd64-xl-shadow fail test-arm64-arm64-xl-thunderx blocked test-amd64-amd64-examine-uefi fail test-amd64-amd64-xl-vhd pass test-arm64-arm64-xl-vhd blocked test-armhf-armhf-xl-vhd fail ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 394231 lines long.) From xen-devel-bounces@lists.xenproject.org Wed Jun 28 11:28:22 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 28 Jun 2023 11:28:22 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556438.868977 (Exim 4.92) (envelope-from ) id 1qETLS-0001vL-CO; Wed, 28 Jun 2023 11:28:22 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556438.868977; Wed, 28 Jun 2023 11:28:22 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qETLS-0001vC-8H; Wed, 28 Jun 2023 11:28:22 +0000 Received: by outflank-mailman (input) for mailman id 556438; Wed, 28 Jun 2023 11:28:20 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qETLQ-0001uu-NH for xen-devel@lists.xenproject.org; Wed, 28 Jun 2023 11:28:20 +0000 Received: from mail-ed1-x52b.google.com (mail-ed1-x52b.google.com [2a00:1450:4864:20::52b]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id e1f621c4-15a6-11ee-b237-6b7b168915f2; Wed, 28 Jun 2023 13:28:19 +0200 (CEST) Received: by mail-ed1-x52b.google.com with SMTP id 4fb4d7f45d1cf-51d9865b7bdso3659927a12.1 for ; Wed, 28 Jun 2023 04:28:19 -0700 (PDT) Received: from [127.0.0.1] ([90.187.110.129]) by smtp.gmail.com with ESMTPSA id v21-20020a170906565500b00991bba473e1sm3565236ejr.3.2023.06.28.04.28.18 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Wed, 28 Jun 2023 04:28:18 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: e1f621c4-15a6-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687951699; x=1690543699; h=content-transfer-encoding:mime-version:message-id:references :in-reply-to:subject:cc:to:from:date:from:to:cc:subject:date :message-id:reply-to; bh=m71/o/G171aVR8A+7xTRHGvVpEgwswY5zKXzBViWocU=; b=k2isNveHKZxBtTLEMMulb1S/ua0NYPqk6AAPGIdZM9KMdHYEE12hHA2gjCRoRw7aA+ x2tsDVYe5yDuitLP7uap7gIacGYdTbX8+i9EkkUfpueft2TdeK+gOloOhLRBnx9SGijj jEyD4gtyuMiCaMzm7Wp2388t1qZwzcM32xZpALDH4H4EPyc9KYDoBJW7do2kIEYyTvL/ 8RqYCVPMxsmVgLkdbKXhDa9+Eqb8lYxYXFIxNM+PUNuF8WB+d0lYHAH2eIrwQsfWNf0/ ErT9Zyf1fOzle7Z5AZIh4TalyZh/jS/3/2eZYKvPslexdtZIK42o9i0e4w7XjdZzkUZ3 luvQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687951699; x=1690543699; h=content-transfer-encoding:mime-version:message-id:references :in-reply-to:subject:cc:to:from:date:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=m71/o/G171aVR8A+7xTRHGvVpEgwswY5zKXzBViWocU=; b=KMMegILRhSsq7Psu25+dFpF/AFlnuIf/zqJJbsWYmvpaQDMVmcqsymXgNihEyIo8Ko 1dMDTr8qJ2CT5/Sy6O4Bab5XfMccsgUixuurBHlynjwJUAlRWZmw0Iht9lPTqQsPtOAk Mjqw83Zy/1JJqGISJ7Vk1aTdSFp3gxAFGM83ZRHnrgIX8Wk7B387GnwhOc/WoxEflOuG Cp/qRw4TS0cEtu7QJLjTWVH9/C/g+Mx7XWA7bpKv/OBq4YZIjNOtBqjh1s6pSUMpJuUA 7t5SobAfuIcL+Z0o9+S14VTLxW6Q5hg86qBmbHaPyZde0PRI/lUIBSoSvC06jcWzW7el Vb8g== X-Gm-Message-State: AC+VfDydyCH73UcbYuNl80krDd5G/1mbaHQQWHA6Xe5eA422ExVAbwg6 mG6U6rW3NES1yXWRxDnyD40= X-Google-Smtp-Source: ACHHUZ53bBhM+ZFnfkclLsOB3uAYk8E4AwmHM6NQwKQFrXZxP0QjGSDsDw12FR2s8QmYxIHZThdZnQ== X-Received: by 2002:a17:907:1c9c:b0:960:d9d:ffb5 with SMTP id nb28-20020a1709071c9c00b009600d9dffb5mr34137625ejc.41.1687951698870; Wed, 28 Jun 2023 04:28:18 -0700 (PDT) Date: Wed, 28 Jun 2023 09:27:16 +0000 From: Bernhard Beschow To: Olaf Hering CC: qemu-devel@nongnu.org, Paolo Bonzini , John Snow , xen-devel@lists.xenproject.org, Stefano Stabellini Subject: Re: [PATCH v2] piix: fix regression during unplug in Xen HVM domUs In-Reply-To: <20230627140740.2736f6e8.olaf@aepfle.de> References: <20210317070046.17860-1-olaf@aepfle.de> <4441d32f-bd52-9408-cabc-146b59f0e4dc@redhat.com> <20210325121219.7b5daf76.olaf@aepfle.de> <20230509225818.GA16290@aepfle.de> <20230626231901.5b5d11c1.olaf@aepfle.de> <5DB37FA5-41DF-4ED6-8C8A-CDDD6F276F42@gmail.com> <20230627140740.2736f6e8.olaf@aepfle.de> Message-ID: <4F5609FD-4A89-4450-89E2-3311CC5A9317@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Am 27=2E Juni 2023 12:07:40 UTC schrieb Olaf Hering : >Tue, 27 Jun 2023 10:12:50 +0000 Bernhard Beschow : > >> The BAR is a 32 bit register whose default value is 0x00000001=2E I thi= nk what's supposed to happen here is a pci_set_long() rather than a pci_set= _byte()=2E > >Indeed, the u32 at that address changes from c121 to c101 with the curren= t code=2E Neat! Would you mind sending a patch fixing the BMIBA register to be reset= as 32 bit? Best regards, Bernhard > >Olaf From xen-devel-bounces@lists.xenproject.org Wed Jun 28 11:28:31 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 28 Jun 2023 11:28:31 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556441.868988 (Exim 4.92) (envelope-from ) id 1qETLb-0002EN-Nv; Wed, 28 Jun 2023 11:28:31 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556441.868988; Wed, 28 Jun 2023 11:28:31 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qETLb-0002EE-JM; Wed, 28 Jun 2023 11:28:31 +0000 Received: by outflank-mailman (input) for mailman id 556441; Wed, 28 Jun 2023 11:28:30 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qETLa-0002BC-Eb for xen-devel@lists.xenproject.org; Wed, 28 Jun 2023 11:28:30 +0000 Received: from esa3.hc3370-68.iphmx.com (esa3.hc3370-68.iphmx.com [216.71.145.155]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id e597a3c2-15a6-11ee-8611-37d641c3527e; Wed, 28 Jun 2023 13:28:27 +0200 (CEST) Received: from mail-mw2nam10lp2103.outbound.protection.outlook.com (HELO NAM10-MW2-obe.outbound.protection.outlook.com) ([104.47.55.103]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 28 Jun 2023 07:28:24 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by MW4PR03MB6667.namprd03.prod.outlook.com (2603:10b6:303:122::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.15; Wed, 28 Jun 2023 11:28:22 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606%4]) with mapi id 15.20.6521.023; Wed, 28 Jun 2023 11:28:22 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: e597a3c2-15a6-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1687951706; h=message-id:date:from:subject:to:cc:references: in-reply-to:content-transfer-encoding:mime-version; bh=GZ9RQ8aRBtTlyEXhMFf90N3jkT5j1uK1bYOFn+ipJ4o=; b=IMdO12csALaKscv6RVXGILD+efRil6ouenwa2JqzjDg2+Th8Pe9wAEzd zRbyNl4ak2WDPq5GKe/QdEOCN575MPoI2iOD1bmSHdDFG7EfmyiOyQC6J YYeBN9WukJQsBwSvFQcNYkUliDFhfP8VOHtzRWA3Xn+l/fUZdoE6f7K1G A=; X-IronPort-RemoteIP: 104.47.55.103 X-IronPort-MID: 114473554 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:OjwOTamibo9mACfT4Fk5DwHo5gxPJkRdPkR7XQ2eYbSJt1+Wr1Gzt xIbCGjXaP7ZYzDyKYsnPIu+8U8CvJ+Eyd9mQAc5qSk3FCMWpZLJC+rCIxarNUt+DCFhoGFPt JxCN4aafKjYaleG+39B55C49SEUOZmgH+a6U6icfHgqH2eIcQ954Tp7gek1n4V0ttawBgKJq LvartbWfVSowFaYCEpNg064gE0p5K2aVA8w5ARkPqgV5g+GzRH5MbpETU2PByqgKmVrNrbSq 9brlNmR4m7f9hExPdKp+p6TnpoiG+O60aCm0xK6aoD66vRwjnVaPpUTbZLwXXx/mTSR9+2d/ f0W3XCGpaXFCYWX8AgVe0Ew/yiTpsSq8pefSZS0mZT7I0Er7xIAahihZa07FdRwxwp5PY1B3 cc4JDMRSR/fvM71+e+qachem908INa+aevzulk4pd3YJdAPZMmbBoD1v5pf1jp2gd1SF/HDY cZfcSBocBnLfxxIPBEQFY46m+CrwHL4dlW0qnrM/fZxvzeVkVE3ieC2WDbWUoXiqcF9t0CUv G/ZuU/+BQkXLoe3wjuZ6HO8wOTImEsXXapLTeHkqaU33QH7Kmo7VTQcU1W6jOOCtF+wZs5UA WkVpnEPsv1nnKCsZpynN/Gim1aUsxhZV9dOHukS7ACW1rGS8wufHnIDTDNKdJohrsBebR4A2 0KNntjpLSdyq7DTQnWYnp+LqRuiNC5TKnUNDQcfVhcM6dTnpIA1jzrMQ8xlHarzicf6cRny3 jSLoS4Wl7gVy8kR2M2Tw1fDhD69o4nTeSQ87A7XQ2GN4xtwYciuYInAwVLW9+paJYCVCFyIp mEZmtO25foLS5qKkUSlSuIHFqCk/PaBPTjVh3ZgGpAg83Km/HvLVYlU4SpiLUZzdMgecDniY VT7pg9aopRUOROCZqhxZYWzB800zLPIGtHsV/SSZd1LCrB2cAKE5yBvI02NxWfmkEsrua46M JafN82rCB4yEq1hxSGqTvwc1pcxzzgiwnneQ5/6yRmqy7uYazieTrJtGEeWY+kj96SCiB/c6 8pYLcaMxBRZXeDkYy/Yt4UUKDgiN38xCIrqrIpdf+GFKxBvMGs8BOTcx7xncItg95m5jc/N9 3C5H0pHklz2gCSfLR3QMyg4LrTyQZx4sHQ3ezQ2Okql0GQiZoDp67oDc5wwfv8s8+kLIeNIc sTpsv6oWpxnIgkrMRxEBXUhhOSOrCiWuD8= IronPort-HdrOrdr: A9a23:FJBuOqsnzayRe7d2kJAozDQE7skDhtV00zEX/kB9WHVpm6yj+v xG/c5rsSMc7Qx6ZJhOo7+90cW7L080lqQFhLX5X43SPzUO0VHARO1fBO3ZogEIcxeUygc379 YDT0ERMr3N5CNB/KHHCAnTKadd/DGEmprY+ts3GR1WPH9Xg6IL1XYJNu6CeHcGIjWvnfACZe ChDswsnUvYRV0nKv6VK1MiROb5q9jChPvdEGM7705O0nj3sduwgoSKaCSl4g== X-Talos-CUID: 9a23:vYMh5GxdnGcNC5C7/DLPBgUvOswmblrSkEz8YHblGEVIeqCMVlOPrfY= X-Talos-MUID: 9a23:VZdLzwZvKLUOCuBT6hbmgj9jGd1T3bWgNVwGu7AH55KlKnkl X-IronPort-AV: E=Sophos;i="6.01,165,1684814400"; d="scan'208";a="114473554" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Vs+JKBRpaP/EyEvoGf+O9/BnUIXt1RVy6typMLNaVcIARXoKr06PRV5i0nNkaiRoXBH1FpLS50ltQo7T4vwyKBkPeQXRZ4TKtIZd5nnOfYo+FIK8NAOZg9TWSwcusD0gwDFs3nlrjC8NJZu+ltB/QPsYsD6ZFIg3/2xBo0BwofYUKFUcdlLZtjjDNXlD7yL6k7aHEsFvjeq4RSFapTpio2ItA0ld1YN+6vUk63btXGfSnNg1Oxc2ddJs8AYP2qd4vbTTQ9Z0ENz0O0XyXnzQXRRwI3i6XO9ZNwME7ms2zHv10KYrGQX6LXFoWqXfAivdLJM10eX3clKZWm5DWotRHw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=jWf9FE5JByjue4Vxq37Qy8ZDTnEca4oZWiP9ciZ1/ps=; b=QV9XDMgBwzDGy9k3uafCYOLWC6eUzWh9JWXcBPHmMUmFCgxkzfre5LqLXg81eHFlgj/OL8S06UHY2Taxz+4ncDyiHuzJdFD3XMXJYSK9LYIWR0Lk+p9fqLH8COJLROLReqY7Vg3aiMeqpaf2MM7Dp6Bzmz/RDfr78+KndQ+3iZH18LJLISXRlgqMH5g7Jxr0MRVhGeIQyClstJlx8LhNtb59co73OmdhTMR2hxhltCpa7l9d0ewJDkk1zjCO2/EvG/UjntIOp3irnY0qI6tYD977Xgznhpa8aN++tMh1TLWhTLPUbWibWWve7HYYpqUCjLX3ptwXErJ6iAGGHo1nYA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=jWf9FE5JByjue4Vxq37Qy8ZDTnEca4oZWiP9ciZ1/ps=; b=ayCPFejalOqq2UCf/PA+7/6XKu3ZFxrAYl9f3XsCslGpTTAtVlOv13+zoiOehjv8TgHkgsdO6TMFXJIu+oblO/SYPJC11r2elDfqu6Geba2l3VEIPGR9y//lV3/CeVd4VBgD19LbfzCx3HJFXfkzmexcz+eIKXlzBEK0OfSRO5o= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: <2e2f73af-4953-6b49-a404-4fce0e2f2fe3@citrix.com> Date: Wed, 28 Jun 2023 12:28:15 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 From: Andrew Cooper Subject: Re: [PATCH v2 3/3] xen/types: Rework stdint vs __{u,s}$N types Content-Language: en-GB To: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= Cc: Xen-devel , Jan Beulich , Wei Liu , Stefano Stabellini , Julien Grall , Volodymyr Babchuk , Bertrand Marquis , Bob Eshleman , Alistair Francis , Connor Davis , Oleksii Kurochko , Shawn Anastasio , Timothy Pearson , Roberto Bagnara References: <20230627075618.1180248-1-andrew.cooper3@citrix.com> <20230627075618.1180248-4-andrew.cooper3@citrix.com> In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO3P265CA0021.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:387::8) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|MW4PR03MB6667:EE_ X-MS-Office365-Filtering-Correlation-Id: 3b83e3a7-f384-4ae0-0c29-08db77cac7b8 X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: GrhiYc++du209UU6+lyVP1I5RkNhbUh1+v2nrGTzEOPrOMPe63i3bUYLdgkk0knk3p253PkKvksQ4j2ibzOTnmAYrknBQqagfus0FlVxHBknVavQhknliifc22uEVNQ7LP+lZ7vfXYArMjIb5UHJJIbDctpLOl27n1psBt7VGDUsglc9GUTOXaCG2oaUIXgmYpUhwtwHix+xZecQ5y+/HihLsQnXFaLG0TsfKup+mGKNeLqZT3h/DIll/i8dlUybaLZG7xIYBcANfgZUwLOl6GlHBHNmeJQqWrAUabQ04aItG9Oj+4xkMShz3Sd5jo7giwgNbL/DqEuauodvpRt3Vk3MjKhvng9vW3gidz7qY8I6gtvHPJpNKjftFpjyeg/E5ZPS4/2y2jU6b3xCbBvlQAGvIW/XYMoaLv3NjrCTe/jkUH29IZ9CIfprZ9IZtBxi0MJI5kgRXz/t3I0Kq5Mj4+7LV6036mCbFmXD7QmVo2TU2pOZ5oruhuJU+YUYXrbwIiCmeVUvFt0A4mppnUYTbNNTL9rk6OUEy7cOrjhRAehsSI2YKEXPYfKXZaoixw4rkHhpVzghjll7HtNtqWoakE73HNvv9jngsKEpdxtuyfJlXXc0jyv91XwIFoZEogEsFgN3437mx5IX7KLHxKF6yA== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(136003)(376002)(346002)(366004)(396003)(451199021)(478600001)(83380400001)(31696002)(86362001)(82960400001)(38100700002)(6666004)(6486002)(53546011)(186003)(2616005)(6506007)(36756003)(6512007)(2906002)(26005)(37006003)(54906003)(4326008)(6636002)(316002)(5660300002)(66946007)(66556008)(31686004)(41300700001)(6862004)(66476007)(8676002)(8936002)(7416002)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?ZzZUcU9ON2JPdUM2bjhUdVdQVTF4c1dXenJ5QjB0S29jSTIwdFZ6S3FmOUtl?= =?utf-8?B?SC9DOGVQV1RNNjZYMlQxUC9ZdlJEVWx4TFQ3R0RjbUk0OVNKV0JLQ1RkZ1VG?= =?utf-8?B?a0JhU09sR3pYanVKWURMMlBKa1Jpc0RaNmpmTjNkdUw1MFZKcDl6aE1MRmtS?= =?utf-8?B?QW9odVcwOUFFUmFEMWdDMUR4T3BLYzFTY0hqK01DZUoxZUFQQy8zY0lUdzhC?= =?utf-8?B?T0NrdGt0STRaUDNOK3NRTkg5YkFWUWFKRExUNjNQSWY0TkJQek5iM3ljaE9r?= =?utf-8?B?RFZhT2Q3bVYvbTAzNStWdDN6K0sxa09TTXBFNzhWTFRBOEhHQkthbUxVaFN5?= =?utf-8?B?M2toU3dOREFXQUpndWlEdHBZblJqcmJlME9jYW1XSWY1bXVzQlJ1ZVdIUDVy?= =?utf-8?B?TlRCd3g3aDZTTVM5VjFHT1grdTdMUVlUeHhFRGN5eHdsVTVGSmlCWEpIMVhy?= =?utf-8?B?WmdHMTJGdC93aUd0VXlLNkpIWjR4SU4weTVHZzdhZnd3L0srUnpVYjI3TFpB?= =?utf-8?B?cE9JTUlEeEw5OXlYMytTT0tzSGVKcndzZEVpUEVNTENUaFFrOWZhamJid3E4?= =?utf-8?B?VlRrTms2OTRIWWdVQkZIb0hiZTVyMFhwMGFYMGxKUTR3N3BuYmIzWVNnQVpX?= =?utf-8?B?K0NrVmp4ZGhZZEhOaTlXZGhrVU9kTEd1TXhZQ0JhVUpTSFlWVXdIUFk1N0xG?= =?utf-8?B?VU9DNXhMdko3NlpwMmtyMWt0SFhGWXA3WStkZFNvVlhVbitsV3NGWXY1L2pq?= =?utf-8?B?eEEzcjQ3eGcvRVk5Yk9ka3JlY2FRZnR5QnZwRDVwdFJBNEVpL2NWQUpOcE52?= =?utf-8?B?YmxoSjE2RUFWNnluem9NN1V3L1F3OERYdSswdHhUeEsvcUZ5K2tmekRFdG5D?= =?utf-8?B?dzErSEVMeVJBT1YxeXJTZnl4dThoVlNMMmpxRm8wWjhzSUtVUDVGNFVOcGJN?= =?utf-8?B?Z3J3d3dtQlRhVTdwcWZzYWxBam5OaVc2YmhiZk9iR1ZCUlAyZVY1cEJPbWpR?= =?utf-8?B?aFU2dXBoYVoyR0hLQ0FhQTVqOFBMMFFnekM1bkk1UTlFWmkyaW00dzRudnBR?= =?utf-8?B?OHdZRjVGakZKKzE3SG5kUjNXZElXZ1k1ZFJVN1BaTlkrNVhGbVpJdjJyd2No?= =?utf-8?B?ME1YSTBaaDR1YytURlN2NkJqZVp2bmZIaE8vdXl0aXowVTJzTjI4UmxOdlFk?= =?utf-8?B?TjlnRkg3YVIyQlMxc3JUQmwwNUpYVTNDL3FxR2thL05UWW9jQ1J6b01MSXdq?= =?utf-8?B?eVFhR0NSUXZsZUI5SWZiQUpGcmc0bE1jenhYV0k1TXB6aW1RZHRPS0dPWm9j?= =?utf-8?B?RXAvYUlCVUdseTJPUFRPdTAvVUZnRXk0emJiVVVkV2FyZjVmcW1tY2lvNFdl?= =?utf-8?B?WUpNR2VpVWl0MWthdGozVGh6Y0F4M09SZlZENk55UGRzaS9INm4zbTlXcTE4?= =?utf-8?B?d1NWTjdhWWJ4aUllcVJBb01iNHJNSUc0cUJrbXFiL2hHQ1c0dlVPZjJsN3Zk?= =?utf-8?B?bmJwUkpDWlRqUzloUDFmUXNXUUFhM0xnU1FTaElMRlJxYkhMRFF3Snp4eTEv?= =?utf-8?B?cUM3TGd1V1d3S0Y1TkFGR2N0KzJrelYvVHozeWp6aW9YNlpvQzNYYmFiOS9p?= =?utf-8?B?b3lFSDJpVWRMSndaemwycS9OV2hGcnk1ZDgzSDlCZkpVS0ZrTkoxZGdhcTdJ?= =?utf-8?B?VjNhVENLMk05dm9hZlU2Y3ZHQmU1Z1BuVVljSzZxQTZ0eE84MmgvcXVKVUxL?= =?utf-8?B?QXlKK21MTjMxQnRwTW9BTHRadzN1cTB6VjNtKy92TUpjS0VPb1hiejQ4RjRi?= =?utf-8?B?bUt4b3gyRUNnK2NoV1dnbU5adjF1QkttS1lUTmp2MzFXK20vOUNDMWdMVFFj?= =?utf-8?B?czl1d1dJZkVHczFjdmVHYmIrd3BOVFFxd1JmaTlMT1NRL3p5ZUhYOWppamVK?= =?utf-8?B?QWZDWTRZQjdSNjZ5VWt0c25uZmtWM0VkV1VsRlhrdkFNREVDcVZBMDZ2YUk5?= =?utf-8?B?cjNuRlFYbkNGNFlsam1VUWRjVHB3RVJiTUxNbjdnYVZxVmxCT2V5RjFsTVc2?= =?utf-8?B?Snp3VElPQTZpOERXUVFCUE53OG5tNk0rNkIwMGxtZFRTY2ZxdXBtQkNrMHpl?= =?utf-8?B?aUF0ZXprRDZTZWZXSnIrOWJOQ0ZiY2xtS0tFUEhvVTlDTXFkblh5dWNOYU42?= =?utf-8?B?bEE9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: =?utf-8?B?WFNIaWczanVpaEozVG1lT1kra2VlNmM1QjZHYkE0c2llOHVKcEV0ZlNiQ3dY?= =?utf-8?B?N0xEWGE3MnN2RUIreEM3VFlVSjdzUWt5SCtjclFrdVNiTFM0L0dTSTZZekNC?= =?utf-8?B?T0ZYR2hyV2xXVTF1dVNSWEllQjNOeHJ4Q2t0bnppdG1OWlZwMXZJTzNXcGxU?= =?utf-8?B?YlhrK2ljUUVkbTA5SVlCR0s3MWNRYkJFbVhwR2dlbCtsMnZKZ053cHYwOG91?= =?utf-8?B?bDduTk1iZVdFY0xwcU9nS2gwZ1NId0RGRElMMm43ZzNuR3JKZGszSGFjK2R6?= =?utf-8?B?dHBVaDRWTEJJL202c2xialkzVytZNWJjc3dOcm1uNzV5eFRKaW1JZzFBOHJU?= =?utf-8?B?MWRpRGpEbzk0UC94NDdyT1VGdDEyNGMwV2ZSWVRSNmEvUlBnYWtzU2pRQ05a?= =?utf-8?B?cXhUQkJZblhRT2VXUGpac09XTmdUNUUwK3B3SDJPNDQ0bUtsOWVqdlYzTld4?= =?utf-8?B?MjY1aUNUMlU3Vm1TaXZuZVpZbVJzckhMaGhzYmx4azZaZS8vbkFSTi93RHVS?= =?utf-8?B?M0s3RkgzeHFYYkNpVXVTQWZucllxbVRlSHB5cDJNQWlRRUNGdFI4ajZKTk5z?= =?utf-8?B?d2o2RXFIbGNxSXNqMHdwRnRkZlljeUN2RExOMEU5Nk5EVGdWSGdWbG1WbmNH?= =?utf-8?B?UDJxQ1lEZEw0WUJza1piS2RrRXpiT0tkSDM3b2p2cVdxSEwrb1Jxa3Izc1Rp?= =?utf-8?B?VWNtYWtOT0E4WEppRGJBUkRQK1FaYXpTWkRTYjZZcytlN1RJWjdKWUhNeFlB?= =?utf-8?B?aVZPWjFDQ2xKQWxTV3Fob3J0ckdWR2syR2R5T1dXRTE4NHRiMWtlZFRlWkNs?= =?utf-8?B?dVdQMHlyOVlNVXFxcytRUVdBZm1ZcDJMNTVzc3g3RHZtUGczQ2Y0SitKRkNv?= =?utf-8?B?aVp2NWFjb0d3ZGx6WEpTcE9LaXc0UkdrTkZ2MXV3RFl3MkJVSHk3Yy9YSi8z?= =?utf-8?B?UDBaTzBVZE5sMEdjbDl2d2lqUVN6bTRJenJLaUFWOXpLNjlqTE9acW9oYW1I?= =?utf-8?B?Qnh2SHl2MFFiTTFZNzF0ZklNczlsVkZoRjBDT29jdy8wRHB4ZG5vcEdQK3BO?= =?utf-8?B?c3RzMlIvUHF4eCtwTkd4YnlkVVZOYlFESHVJOHZHenRaWmI4MmRZbEF1MEtv?= =?utf-8?B?WU9MSkdtRER0SjFvTzY1YVVDdjA1WEZSWjVkZXBFWmVlelB2cERJSmRDUU4v?= =?utf-8?B?ZnVYczJXYzAxMlVLT3RqUDg4QzBnZFUraGovN1lxLy9uK3FobmpMOW9TUUFV?= =?utf-8?B?TFBqTGJZTHoyQTZnaThZSGo3MU4vUFVkVVV0RlJyZ3RUU1RnbVVqK0JWci85?= =?utf-8?B?bFpwS2xPRVNqajNLcEFYWmtINEZzckl1YXBraW8zT2ZJY2JRdnVMQnF6RUtq?= =?utf-8?Q?xeFbyZyULzblkLl8zE7NVSA9SqinY6eQ=3D?= X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 3b83e3a7-f384-4ae0-0c29-08db77cac7b8 X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Jun 2023 11:28:22.3911 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 3kFownup5K/mu5VpMhw58/eeTaeE1HU3uSa8o2dRlGTsptg3rjMIzwUz0vDx1ypUYLrV5/9/5t/G2ZHOAP6zVzkLMkEAE6ZOHwT2JYTE5/A= X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW4PR03MB6667 On 28/06/2023 12:08 pm, Roger Pau Monné wrote: > On Tue, Jun 27, 2023 at 08:56:18AM +0100, Andrew Cooper wrote: >> Xen uses the stdint types. Rearrange the types headers to define the >> compatibility __{u,s}$N types in terms of the stdint types, not the other way >> around. >> >> All all supported compilers on architectures other than x86 support the stdint > Duplicated "all". Yeah, already noticed and adjusted. > >> diff --git a/xen/include/xen/stdint.h b/xen/include/xen/stdint.h >> new file mode 100644 >> index 000000000000..4cf82790f196 >> --- /dev/null >> +++ b/xen/include/xen/stdint.h >> @@ -0,0 +1,33 @@ >> +/* SPDX-License-Identifier: GPL-2.0-only */ >> +#ifndef __XEN_STDINT_H__ >> +#define __XEN_STDINT_H__ >> + >> +#ifndef __INT8_TYPE__ /* GCC <= 4.4 */ > I'm possibly confused, but don't you want to use __INT8_TYPE__ if it's > defined, and hence this should be an ifdef instead of an ifndef? You're right.  I was too tired while putting this together. Originally, this was going to be #ifndef __INT8_TYPE__ #define __INT8_TYPE__ ... #endif typedef ...; but decided to get rid of the intermediate and use a plain if/else.  I'll fix. ~Andrew From xen-devel-bounces@lists.xenproject.org Wed Jun 28 11:33:09 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 28 Jun 2023 11:33:09 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556451.868997 (Exim 4.92) (envelope-from ) id 1qETPq-00042R-7L; Wed, 28 Jun 2023 11:32:54 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556451.868997; Wed, 28 Jun 2023 11:32:54 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qETPq-00042K-4R; Wed, 28 Jun 2023 11:32:54 +0000 Received: by outflank-mailman (input) for mailman id 556451; Wed, 28 Jun 2023 11:32:52 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qETPo-00042E-M5 for xen-devel@lists.xenproject.org; Wed, 28 Jun 2023 11:32:52 +0000 Received: from esa1.hc3370-68.iphmx.com (esa1.hc3370-68.iphmx.com [216.71.145.142]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 83190690-15a7-11ee-b237-6b7b168915f2; Wed, 28 Jun 2023 13:32:51 +0200 (CEST) Received: from mail-mw2nam04lp2172.outbound.protection.outlook.com (HELO NAM04-MW2-obe.outbound.protection.outlook.com) ([104.47.73.172]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 28 Jun 2023 07:32:48 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by DM6PR03MB4955.namprd03.prod.outlook.com (2603:10b6:5:1e4::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.15; Wed, 28 Jun 2023 11:32:46 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606%4]) with mapi id 15.20.6521.023; Wed, 28 Jun 2023 11:32:46 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 83190690-15a7-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1687951971; h=message-id:date:to:from:subject:cc: content-transfer-encoding:mime-version; bh=4OIk/274qQ20YnMD/8rPK0rrt52xpMux86cXtadDmSo=; b=aoghuPW0/aDRXfaRJeZp03joCP4lSCsA96sureGviq2cFH9vCXYuxy9Y Xh45P0AtHh06miWfLN7S2ohcYrhz6b0jPhgFv8MQhvCZjVdm0Ab+jH/D3 1u3N/0cv6Y+HS92ExSkBCTB1ddbe6U6OrAKGkiIoQRnQStKFHyCSxmP5A 8=; X-IronPort-RemoteIP: 104.47.73.172 X-IronPort-MID: 114869216 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:DAc2m68Xf4ywTRzQjkqfDrUDkX6TJUtcMsCJ2f8bNWPcYEJGY0x3n WUcW2GBP6uMamWmf992Otm/9hlUusTWn94yTFQ/qX88E34SpcT7XtnIdU2Y0wF+jCHgZBk+s 5hBMImowOQcFCK0SsKFa+C5xZVE/fjUAOG6UKicYXoZqTZMEE8JkQhkl/MynrlmiN24BxLlk d7pqojUNUTNNwRcawr40Ird7ks21BjOkGlA5AdmO6ob5AW2e0Q9V/rzG4ngdxMUfaEMdgKKb 76r5K20+Grf4yAsBruN+losWhRXKlJ6FVHmZkt+A8BOsDAbzsAB+v9T2M4nQVVWk120c+VZk 72hg3ASpTABZcUgkMxFO/VR/roX0aduoNcrKlDn2SCfItGvn9IBDJyCAWlvVbD09NqbDklhz PsROWszfiyjoOGz7u2lRrcrucYseZyD0IM34hmMzBn/JNN+HdXmfP+P4tVVmjAtmspJAPDSI dIDbiZiZwjBZBsJPUoLDJU5n6GjgXyXnz9w8QrJ4/ZopTeIilUuitABM/KMEjCObexTklyVu STt+GPhDwtBHNee1SCE4jSngeqncSbTAdtOROPprKc06LGV7kIeLFo7X0G7ndqglGCla8l7c 2VFoyV7+MDe82TuFLERRSaQsHOC+xIRRddUO+k78x2WjLrZ5R6DAWoJRSIHb8Yp3Oc0TzE30 l6Cn/vyGCdi9raSTBq16bO8vT60fy8PIgcqfjQYRAEI593ipoAbjR/VSNtnVqmvgbXdGyz0w j2MhDgzgfMUl8Fj/5u8+VfLkje9vK/jRwQ+5hjUdm+95wY/b4mgD6Si7lLR/PtbLIKUS1CHl HcBksmaqusJCPmlnSiMW/kEHavv6eyMNjbdmnZwE5Jn/DOok1aoeoZW5zNyLVloKe4LfDboZ AnYvgY5zJhXMXixbK4xYJ+rDM8qzq/IGtHsV/SSZd1LCrBqfQmO5z1nfk+X93rkiFQri6w5N padfMu2DHAVT69gyVKeW/8Q2KUwwSYW32rLWZfhwhKo0LyTaWSUT7hDO1yLBt3V94uBqQTRt tNAbc2Dzk0DVPWkO3aNt4kOMVoNMH43Q4jsrNBaffKCJQwgH3w9D/jWwvUqfIkNc7lpq9okN 0qVAidwoGcTT1WdQelWQhiPsI/SYKs= IronPort-HdrOrdr: A9a23:h/h3cqwQFpz5n1o2AFAUKrPx6+skLtp133Aq2lEZdPU0SKKlf8 DHpoVj6faGskd3ZJhGo6H9BEDgewKgyXcb2/hzAV6dZniihILFFvAY0WKm+UybJ8URntQtlJ uJXcBFeZ7N5HJB/InHCDDRKadh/DFsmJrYx9s2tk0dAz2CCJsQjTuRaDz6LqQsfngLOXNRLv P1jaAry1WdlGwsH7CG7zs+LpD+TvLw5dbbiHU9dnoaAWe1/FWVAfLBYn2lNtZ3aUIE/V90ml K17TAQac2YwryG4y6Z8VDTq75SmNfn1/tbbfbstiFDEESSti+YIKJ/Wvm+pzg+rPrqxmoLvb D30mYdFvU2zWzROlyvqRHgwE3B3V8Vmg/f4G7du2LqpfrwTi87Dc0pv/MTTjLpr3A4tNVL26 pRtljp/qZ/PFf7hSz40cPFThdwiyOP0DIfuN9WtWVWVb0FYrlLoeUkjTVoOaZFJjvz7LY8Gu 90APfd4+s+SyLsU1np+lZVhOaUdlAYNiu9biE5y7mo+gkTo0s89XIx4PY0uEwtnahNOaVs1q D6CeBTrZlrdPI/UI4VPpZzffeK X-Talos-CUID: 9a23:5XTAf2EcmgnyPkE8qmJIzUkdC5sbYkH963TVDRCmBTgud7+aHAo= X-Talos-MUID: 9a23:CPiAfgqDgQo2goGAHfIezx9vEIBF6b6uNGMUj7sdi9KgbQUhYjjI2Q== X-IronPort-AV: E=Sophos;i="6.01,165,1684814400"; d="scan'208";a="114869216" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=LUVdAmRUX22JWIGiiXL3ZEQA/FO3rCmgGtU8lPMBsLmzCU9XaDPlzXlCESrmhXG5GlNX5DVMTBuBf2Cb7SToYp7w4tDJ6uCJ4FjNfH2iKT0a7AsF4UEUy27iSpeh+2qnktNB5IFhiNyZLDinw99ZlSm0oPHtQ+rWFi6OYwO+FsR9UDRbcTfCvU4sIywMNL7ozYpSLEOuJwBIC8w7/29VCFmX/HebpUMmGGxhgNHzgadUyI6GOYpzVix52MUFxWfELncbjt8Kc9hn5jdLYSyumRtS9/bx0SPc1MjSUP85zzPtCrAk54bh7D6rWPBmzWd+3TkK2oG/0ucP6Z04NGtQIQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=4OIk/274qQ20YnMD/8rPK0rrt52xpMux86cXtadDmSo=; b=hN5xWAF/nvnVISPDC0JaDavLKSJo2kpa3nkQOGiPPHOJeIxyE87I2DqwhfcpwIbBaXz2UcA7iTazGXZBnteNunyn6npvYHFkJuFiGUz0SfMT/o3HCVZKP3QbAGtXskvV0+TJc6Lz6riC2qtx47p3wFI8gSyeimwVPv+/b0Gfk7zgd5fokSsQT3KuhaME6yW6iGsb22zBQi4a7G+4w5j65zWBJdbv95ru6Yg2X9cD1wMyEE4YTSBcPsP6UuCDbymVLYEI1U/bJASn7b8rqJJs7Xx6s32QlgM6MBDjEcBdpAAcYjIMWYEsyC0KAYYE+IRUv0lYRzUJQLLSh+K6XJuCNA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=4OIk/274qQ20YnMD/8rPK0rrt52xpMux86cXtadDmSo=; b=U9opAoBGpIA5oX4fabsoxQMyUWDPwsk0lbmR19DefolEyqTwVnOmvwEnsQ61e2hkIeGUW4RD9oq9Cut8ZTB3SjEyF6FNgupv1rTeoYCjx8dtf0FnZMWtF0H2Del47t7/k8pgmvHVycXxJwFtPV3AOZwEsBa77cRFjlJ6hDHatUw= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: <2aabfb63-1a2f-bb02-488a-ea79136bc6c0@citrix.com> Date: Wed, 28 Jun 2023 12:32:39 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Content-Language: en-GB To: xen-devel From: Andrew Cooper Subject: XenSummit: Empty per-arch files Cc: Jan Beulich , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , Stefano Stabellini , Julien Grall , Volodymyr Babchuk , Bobby Eshleman , Alistair Francis , Connor Davis , Oleksii Kurochko , Shawn Anastasio , Timothy Pearson Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO4P123CA0633.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:294::20) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|DM6PR03MB4955:EE_ X-MS-Office365-Filtering-Correlation-Id: be5471fb-f9ba-4cb8-9800-08db77cb652a X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: ea5teCUjku+xslzKrNDwPpB6cpIiDh2nMYcK9c8RKJV2pxp/iv3Fr7WujWbTtOILFmq32LcOT1LmHtt2pjluRTWB5rQfqsSAJZsIe20I1naLP5Y0nE9NvVWP+OpLC7b63U9EXWpKVXWR6UfLLJQVGmMiZYzgecK1/l0IANUMuwndmtSQLJ1Y3Oi/2oJEhYKnS5nvfxnPKFRfhkKaO6sVX9ydJXgf9JGbO0kgBgpRd1BRNtHpPZzH3+hCRfn1zYQgxUNmVN0cF/DqR3Lfh2d0wR0HOkLdgZtML5ihfwljk0wStTtVbjtWxGwThqzgH1ivxGDBNpUJgx5at1DnwrZa4SY4FIkjfmfEDZLUx6bQBdM59BPDamowxv+KTZbP3ZK+1ju1OoIawJhuK+ji9T9Lv0RUMoKzZBEQbTC9TCRh54brMwtugpszNZZYwRkrYCHAzFmbi2t2wdXYBZ00a4x6gZaec5zZjXG3FX+mfncpCqFX/8SPmXeim4J8NWDix4SgWRqPt9oQqCiB6LDMdlDKEzRYkBY7zT2n3cwXTPbtwlUdsnsGKnYZQLeWB4FzbB5papsDAsRz/6MMi1gmZ3dcias4ZRLiZq4/mLJz9W1N9QlEXdNX0j+cXeStUO2+8aO39SClCrbUBVQ0aoAwuM3tog== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(366004)(376002)(396003)(136003)(39860400002)(346002)(451199021)(5660300002)(54906003)(478600001)(8936002)(41300700001)(8676002)(6486002)(316002)(26005)(186003)(6512007)(7416002)(66899021)(6506007)(66946007)(66476007)(66556008)(31686004)(6666004)(6916009)(4326008)(2906002)(31696002)(86362001)(2616005)(82960400001)(38100700002)(36756003)(4744005)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?UDVCcWZnb1JscWhhbkQ3bTNIbXJhK0hLbHh3Q2YxSFZheUNzZzVKU3puMUJW?= =?utf-8?B?NmE5RE1zNDNXcUs0UStRcEZQQTFHTFdtVWRzSmZlSVVjK3JIN0VZbWVpbmls?= =?utf-8?B?RUpBZ29SeEhBby9pNnlabUUyZWxFSXhEb0MyVzdzVW1hS2kvdG9ac1A4Yitz?= =?utf-8?B?UXpaQmJTYjNZWk1Icng3TitMUTRZZWk5dVErekFDSDA4Zk1hdDFjdmVuckVw?= =?utf-8?B?NHV6cTBXMkhNeVROTTNxT1YrRGQwYU1RZGZCcEkxUWR1ajY1bVdsQzY4MFpE?= =?utf-8?B?eDhnNHQ1TXhORTk4a21QeDlCLzNvZVdhVEJ6ai9mOGt0WkJTbjVzaHlkUkdr?= =?utf-8?B?ZEZxVDVvZW1vZUN1cDlxZzdZUHFoZzBIV2dkRytXUEQ4ck0rbFhYcjhxVVJp?= =?utf-8?B?am5MUUcxWkk4V0lTRnVDSG14bkE2aE9NUEVWRitBdVZsT3UvTE5LUE1saEk1?= =?utf-8?B?M3g1cG5OR0JqbVRYWlRtRjZuRUdCWWtKWmpMUzV0L0JnUk1YSUZ4bHJlcmt6?= =?utf-8?B?czhFZSt2NG1FYWhkbWlLdmkzODZZQkxuM3lwNHRpZlRpMUlTaHRSTDJzOGFY?= =?utf-8?B?SXdkSFgxaEY4eDRIQXljWURiQlpPeWhMZHJ6Q0NjUEZkZHdZeHNweGlmSlVQ?= =?utf-8?B?ZmdHUnFuQWQ0RDRZak1pRUg0OWExTmlFbUJNSVFrWHJEK0Rkd2hIYlNiTlB0?= =?utf-8?B?bzQxYzZHQ1cvOFlYdVArQ1dKSjk2aHNiWThSNWswd0lXZkoyaGJldW5tL0ZZ?= =?utf-8?B?MHJRREpSMnhETFVlTkwxUld2QWdNZmZWL0F2UkhRWExPbXJSQTlKZjg0a3I0?= =?utf-8?B?L0dqV3llRnp0ZFp6ZjRLTWppNDE3eEd0dHNSQmNuYVhuQ25SMElYV1NjZVgv?= =?utf-8?B?NmpNZlF6Vm1WeDQxR2RVdDFvL3FIdEdqU0V0N3FCWEZHZGd6WXJUVyt5aGRM?= =?utf-8?B?ak0wMitMcldlUnpZYndFckh2azY0aE1hNTJwdGJiN2lNaEd0ZGdmNzlKeHlU?= =?utf-8?B?VWdEUTdYV2NReWU3bVpKZjJrZkdVUklTOUd5S2J2M0U1QzBCRlNmRVoyWmtG?= =?utf-8?B?KzB6U3M2OXFVNFRJVmQ4TFhJNFFXakp5ZEF2MG96OU9oazgwVHVLZ1p1LzhP?= =?utf-8?B?OFBSeE1kdlQ2eGhrTGk2OG5ZZEU4cW9FOG1iL2lIaFFtWk9lTW50blFCZER1?= =?utf-8?B?TkNUVzhPeURNdmxlUmx4UmFzWVRLNU9VVWpyMkp3ZVZOSWZhVXpwUm12WHUz?= =?utf-8?B?cmlzeE9ZbXZjaXJkNE5mTDdJbkxHSTdMbFYrOFlzMmRISGlLMXBkVHhuT09O?= =?utf-8?B?SHJGd2l1dTFFRk8vYVpLbzJjZGtBLytvTDFQVG92UGZaTXRaU0s0eXhJZEhE?= =?utf-8?B?VVdWL2h5UFdWckM3WlZ6OHB6QzJKekl0UCtUdzlPTlNaYmVPTndKZDNBREVE?= =?utf-8?B?MDdBcGUxUk85SURwbFBRMG1YSlhXR0RNYURabEpBNVZmQ294SFFMS1EvdEY4?= =?utf-8?B?SjE0UTdLVk45eGhsc2ZxZkg0NUZVOHJvekYweVFWK0dZOC9JM1U1NWhFcmpj?= =?utf-8?B?Z3pKTXBheGwwRjFsSE1veEx0YXpTemQ1U051Z0t6Z05YUjFaZ2ZyNjJTVHVH?= =?utf-8?B?eVZISW51dXk1SGw3Qy9SSzhlc2FvRGJIMjRkejMva05zSUo1akZ0K0IvOWVE?= =?utf-8?B?eTkreVBrQkU1UFVCYVJ2VGxoTG8vTklCVngxc0tFd282b0JFNUFybmp6NCtU?= =?utf-8?B?UlBla2I1Qk9WN3kzcE1Fa3BPeUtIU2d3blBqUWpmaTVZNXpocHM4a1RsWVdN?= =?utf-8?B?VVdKcU5XZS9vK08zNmhlUlZFbGhZZ2d5SEJ5cldheWpEWkZSQ3RBUHJhN3JF?= =?utf-8?B?YXR1RzNZYXAzMjkyeHlYNklMZWJTMWkwYmNWV1dYODRYd3Q5NHZpV1ovMWpS?= =?utf-8?B?T2JuT1NkcmtQT1NSaEhxRVY0ckI0MVEwZmVWZnMwTW1kQkVtYmh4K2QzREVR?= =?utf-8?B?dk0rbk9xUlJXTnNaS0xwejh0UFRDazkrVWtKeENmcVJ0NEo0Q0UvcXJ0ZENl?= =?utf-8?B?Y1k1M1g5Umh5aTZUbnIvN3BZdXZjT2psTlhpaWJlMnY4UHdrNlhuK0d3cXNJ?= =?utf-8?B?UmFIZ0lJUEFVMTUxcjhSaHdsS3EwN3EybFBQV2F1Uk0xYjRWUFVKdjFvTXor?= =?utf-8?B?cWc9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: =?utf-8?B?c2tSck9CWjhhTXFra0p5KzdvY056RUFKUTQ5US9DaXNWbnlHbG5hWXVNR1dt?= =?utf-8?B?SmZsU0MxeDl2S1M1bzBZa1JDOHdYUWp6S3g5Q2xPSndxYU04c3loUW1rYVN4?= =?utf-8?B?MWhjWjdhSUJubXc3RFZoeEV1L1pRK1VJWDZRWEgvZjhaZ1lxUDFIZVBLK01j?= =?utf-8?B?NnRwK0JMZ2RCS3hxTmhFYTlqQ0pnc1pFbmRMTStQQzY5RmVWU3J4SVNJcm8r?= =?utf-8?B?dlZvRlZ4eGRLbEs4R29sUmhmYUJ3dXBtdlBYZERSM09wSkpnMEhLNHdWb3pJ?= =?utf-8?B?M0FKWTgxZERBOTNOMlJDaklhcFA4Zk5ibWpubVU5dncrcFdTUjlXTTh4eG10?= =?utf-8?B?ckNaVmpQT0xuOXM1MTJ0QnhpM2lyam9Sem1mclJSekI2MHdWdzFsOU4yTk1F?= =?utf-8?B?U0hZRTlwb1k5eE1CVDM2ejVPRHhUaXVzZDlCdjMxUWtUQnVSYnRNZHhNZkxz?= =?utf-8?B?a0Q0UkttQ3FHOVdhSlY2N2hFRTV6dWIvYnpoQWRoZFBMZi9udnRtRk5tOTFx?= =?utf-8?B?NmtLYmQ5NXRFSmFDbG9JeUt2NG0vdElhYmFwbVBwZzlCQjVsSkdxZWs4RTRk?= =?utf-8?B?MWZtYnA2dVhhdlArSmRRY0dCUmEvaDUrSkZZTjkvOXIxWEpDMGhoWm0zelhI?= =?utf-8?B?NDhZVEFtd0FrSWx3QTRxbkhUN2FrT3NCbTdLOVJhcDMrU2ttNUs5WXFqZWZX?= =?utf-8?B?L25jd1h3WFdGc2RadkN1QVI5ZUEvN0lUNVFMMk1ENDRxR05UNHZ3WHB2VWlW?= =?utf-8?B?TjYzTk1veUZqbENoWlgyWWt1cXZmVjA1a1diZVpZNnlHSUtYNk5MY1N1M1Er?= =?utf-8?B?OEFvZDJrdE80YldqUC8xMUo3TFR4eWpkOXVjRCtTWlNzdksxckRLN2RhUmMy?= =?utf-8?B?a1RHdHA0R1RicTJ3Sy91SEZsRGRlaUFpY1RUQXdZaVh5MVpLZXlkTVpOVkFB?= =?utf-8?B?Z2o0eHBJTU1FendoS3VnS2lqY0tQZ0R4OXlUbTlYd2JuZVdOajYzb09Najdp?= =?utf-8?B?Y244WWNpVUtLbzlPRWUvSTJseURGT1FLZGxBK1BQbjB3cjlHUXAwRzVYYXll?= =?utf-8?B?WGRuU2pKUWJVQ0NaM2h1YTBDMEJuQSt1K0J3cFpadWx6d29WUU5waURUSDFO?= =?utf-8?B?TmdROUJXZ2REbXFnVFhQaUtMRUl6ZkUvVmxpbmw0d0xrakNKai9tZ3c2UHo2?= =?utf-8?B?Yk9JOGRYK2ZjZTVKT3E4TDExZEpqTmppWU5uOTh2WUFQR0twdnpHdVBjRDZk?= =?utf-8?B?WjFESTNxc1k4YlVyTEF4RnFQN2VBUWRDQkFXM2tUYzA4MTlleWRFTUR2eXkz?= =?utf-8?Q?IXUBy76SN5R/4=3D?= X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: be5471fb-f9ba-4cb8-9800-08db77cb652a X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Jun 2023 11:32:46.5011 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: INeXXiqxW7Ch/4Ol3IJq4r/WsTafqmPD6YgIGUqOQWNkMVGyKVOZHjcuBNi9fcfwFHBMUWiVpzOue3qefXacX/gShwfBJ8bKFlo29seCwDY= X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR03MB4955 Hello, This wasn't a formal discussion point at XenSummit, but Oleksii pointed out that it was still a problem, hence this thread. As we take on more architectures, it becomes more and more important for things to be handled in a mostly-common way.  With that comes quite a lot of including , and the arch one being a stub in simple cases. It would be nice to get rid of the stub files; they're irritating to deal with, both when refactoring and simply for the file bloat they create. There are two options which come to mind. 1) Use __has_include().  This would be ideal, but would require us bumping the minimum GCC version to 4.9.2 as a prerequisite.  I'm not aware of any way to emulate the necessary behaviour on older toolchains. 2) Have a stub "architecture" which is always last on the include path.  This would reduce the number of stub files from one set per arch, to only one set. Anything else that I've missed? ~Andrew From xen-devel-bounces@lists.xenproject.org Wed Jun 28 11:47:25 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 28 Jun 2023 11:47:25 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556458.869006 (Exim 4.92) (envelope-from ) id 1qETdd-0005hH-Gr; Wed, 28 Jun 2023 11:47:09 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556458.869006; Wed, 28 Jun 2023 11:47:09 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qETdd-0005hA-EE; Wed, 28 Jun 2023 11:47:09 +0000 Received: by outflank-mailman (input) for mailman id 556458; Wed, 28 Jun 2023 11:47:08 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qETdc-0005h4-5g for Xen-devel@lists.xenproject.org; Wed, 28 Jun 2023 11:47:08 +0000 Received: from mail-wr1-x42a.google.com (mail-wr1-x42a.google.com [2a00:1450:4864:20::42a]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 819fa3e5-15a9-11ee-b237-6b7b168915f2; Wed, 28 Jun 2023 13:47:06 +0200 (CEST) Received: by mail-wr1-x42a.google.com with SMTP id ffacd0b85a97d-313f3cd6bb4so3008465f8f.3 for ; Wed, 28 Jun 2023 04:47:06 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 819fa3e5-15a9-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cloud.com; s=cloud; t=1687952825; x=1690544825; h=to:subject:message-id:date:from:mime-version:from:to:cc:subject :date:message-id:reply-to; bh=KXKvCSRn4IGfPiX72SJZB7Wvzl+FXtJmx6qtdvnVfTw=; b=cIGRIuPrBlL2mxMNXQF8QuOIFSJJF9p9J0z2v9mrJGZIoIA2iLf171OllyRB7pjren i2tWKDzKibcYruX2uMfXepKA4TKZ/H7AOb9xOq9Tm5WtxiyZEIQBizEwuddkmVcdPIw1 q8Sre+36OZu0Ha3QkrwSc7oxH1oh+YV7KvsXs= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687952825; x=1690544825; h=to:subject:message-id:date:from:mime-version:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=KXKvCSRn4IGfPiX72SJZB7Wvzl+FXtJmx6qtdvnVfTw=; b=SzCRhgxNQh9iVZanV9zBiIjATdYtCmt0EbQb9V/P2JRhwZKEVCZwBMBosqq7UAddjy IFg0ax/dv7oTQ7eUg7cphUpaDZ9a4XQ6dm68iipy3eifc9a8zHInw2bgLCpVnETbXm33 DlXd3BRbcDvpdE/LnhiluBQ5owueAeP4ubkCkE6ArmCMGaUuO8SQYeqmZgv697VGAn8g PZIDlnNBCCs2y/JbpcgWhwLN9DznQfezcrdGtEV5URMqih/oKkDlJyPufQ3hbnCMRs1I +dvr9hPBr0J8u0s3ZdjTTR7YTHNe9A/TE/m3d4m4IAq/5tZoYcr4OgDp4tIm59X1a5+S 1x0w== X-Gm-Message-State: ABy/qLZjdOjFFyGm9HyOPwHkqH8qnfBmR92XJmuC7HxaY4TBtFJP9N5/ ZI5VQWtzruQmGG1VmmC/tsHfWBesO+6pbJdEG58pldRmCJEJRHQmr04= X-Google-Smtp-Source: APBJJlEFPxY2G6KaVf9f3vJyuVOcz2rELDiwmgbPOUcg/Xmnrrx3U/k785GvptxDkcbdvs4tkqLvvGU7M8Vifxb3w80= X-Received: by 2002:adf:dece:0:b0:314:11ea:480d with SMTP id i14-20020adfdece000000b0031411ea480dmr22367wrn.9.1687952825600; Wed, 28 Jun 2023 04:47:05 -0700 (PDT) MIME-Version: 1.0 From: Mark Syms Date: Wed, 28 Jun 2023 12:46:54 +0100 Message-ID: Subject: Xen Summit 2023: Design Session Notes: SMAPIv3 To: Xen-devel@lists.xenproject.org Content-Type: text/plain; charset="UTF-8" Slides used for scene setting - https://github.com/xapi-project/xen-api/discussions/5080. Example code in Github - https://github.com/xapi-project/xen-api/tree/master/ocaml/xapi-storage/python/examples Notes taken in the session ------------------------------------ Since scene setting slides were written SMAPIv3 has actually been converted to python3 (pending merges etc) How would you like SMAPIv3 evolve in future? - Gaps compared to other SR types: - Storage Migration (no implementation on either side, XenServer keen on implementing this) - Change block tracking (start of an API definition exists for this) Potential future thoughts to move the traditional LVM and FC SMAPIv1 SRs to SMAPIv3 SRs to resolve technical debt, would need storage migration support. Could other toolstacks (e.g. xl, libvirt) use SMAPIv3? - They're just python scripts, so nothing to prevent it, but the current XenServer team has no particular experience with other toolstacks - happy to assist, but would need someone else to lead. Documentation - does it need improvement / is it clear, feedback invited. Code for a plugin is very simple (e.g. example is 130 lines, a lot of which is boilerplate) Cycle for a disk attached to a VM is: open attach activate deactivate detach close open/close are start and end of use of volume overall (VM activation lifecycle) During live migration you may do e.g. migrating from H1 to H2: H2: attach H1: deactivate H2: activate H1: detach The idea being activate/deactivate is in the critical region where the VM is paused so should be as quick as possible, longer tasks can go in attach/detach. Multiple volume URIs can be returned to give multiple ways for a consumer to access the volume Q: Is there a way to expose SMAPIv3 SRs in a way for backup, e.g. for incremental backup etc? The change block tracking (CBT) functionality is relevant here, to allow for a way of identifying what needs backing up etc. - Could we use nbd as a universal way of exposing things? Endpoints are implementation specific, so would need the SRs to implement it, or something else to access another method and re-expose it. Storage motion support may also give more possibilities here as it'll be a general API update, would be good to include other required capabilities as part of this work, e.g. any new `implementation`s required. (Hoping to avoid breaking changes in API) Vates have done an implementation of a zfs SR using SMAPIv3 (https://github.com/xcp-ng/xcp-ng-xapi-storage/pull/11), would be good to review and see if it identifies any required API improvements etc. Existing implementations don't implement `copy`, which would ideally support an offloaded copy operation where the backend storage device / mechanism can do the work. Needs toolstack work to plumb through and handle cases where different SRs are in use that can't offload copy between them etc. Thanks to everyone who attended and contributed. Mark. From xen-devel-bounces@lists.xenproject.org Wed Jun 28 11:59:29 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 28 Jun 2023 11:59:29 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556462.869018 (Exim 4.92) (envelope-from ) id 1qETpF-0007GC-JJ; Wed, 28 Jun 2023 11:59:09 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556462.869018; Wed, 28 Jun 2023 11:59:09 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qETpF-0007G5-Ev; Wed, 28 Jun 2023 11:59:09 +0000 Received: by outflank-mailman (input) for mailman id 556462; Wed, 28 Jun 2023 11:59:07 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qETpD-0007Fx-Ay for xen-devel@lists.xenproject.org; Wed, 28 Jun 2023 11:59:07 +0000 Received: from mail-wr1-x42e.google.com (mail-wr1-x42e.google.com [2a00:1450:4864:20::42e]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 2c835b76-15ab-11ee-8611-37d641c3527e; Wed, 28 Jun 2023 13:59:02 +0200 (CEST) Received: by mail-wr1-x42e.google.com with SMTP id ffacd0b85a97d-313f58d6652so3120155f8f.2 for ; Wed, 28 Jun 2023 04:59:03 -0700 (PDT) Received: from [192.168.69.115] ([176.187.207.229]) by smtp.gmail.com with ESMTPSA id t5-20020a05600001c500b00313f7b077fesm6513263wrx.59.2023.06.28.04.59.00 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Wed, 28 Jun 2023 04:59:01 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 2c835b76-15ab-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1687953542; x=1690545542; h=content-transfer-encoding:in-reply-to:from:references:cc:to :content-language:subject:user-agent:mime-version:date:message-id :from:to:cc:subject:date:message-id:reply-to; bh=XAnNOBqj7/aZOLa/iEWVdgiwRfPn+uBhlnTFYDZDHtw=; b=XE7Vi2wrCeeILyk3U/eN0QEw2vyalWxVrmJf4lD0tUb7oMCiVJf8wS7IHVCfWF1ljm UcYgRcV+vj/TBd9upybrGu2ZGnWQcYk115AdgEaWs35KGlrLBhcqG0BEhTcU7YjZck4e hZnPymWrPJt5bpB6buQ8HEi1nwHGrrdsvvsmSmYanpPr8vBk4Iw+l38CFXHwaRUuBcEw oO5si+rS6KwqffIjHKgUWwn6ziExQo+Lxfh6bCrhbutF0UwXkHqNHNbT49sTTF/BwM5b xVXU+6JUZHdDPEpQFm8vio/70Zk337UqTeAm/3QQDEKOChBQNaN3tDnqXgvim7JECTXh ovwA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687953542; x=1690545542; h=content-transfer-encoding:in-reply-to:from:references:cc:to :content-language:subject:user-agent:mime-version:date:message-id :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=XAnNOBqj7/aZOLa/iEWVdgiwRfPn+uBhlnTFYDZDHtw=; b=ceGpitmQWmV6lMTsGNaKIsAMF+sZtIZzlFx+iAaX84rEM47C4WX0w0p+7HYKmvx9Ph CDUjb6YKn6Vft2pSDn82sVsMfwG5oLxTc3jBlCoegrDWqXYtq1vB/nimBGC42MwPLJr8 wNUE9qGREB5sOa/TSyZE0PQQackXzokcBHK9koaFlZ3/KQeeHhHJvurtTOovGyx2dVzz UtX0XuHosLjHVP1oAvCSir9XY/bcfGLsm0YolhbCNBr37IrtfKz5YucGp5RpnzTk0ZmO iFlH9xAn1mq72Gy7Au2ZOeiNn1LUL9ol4PM/R7Xf0RhM2OmkMuIAYvp3EWFmKcGzEyaQ V1ng== X-Gm-Message-State: AC+VfDxKaXPuxhsgpkKIVU12z4DtfJGQAiIBwMgsCwUCkxBYVzYvMnCB 4pcMPyFGttSIKOiXX9ueCGGhLQ== X-Google-Smtp-Source: ACHHUZ5EJieVTJ0ylfA8kzbRNwsOjUJqO0iacg3Gk1TjS5ordwDft3hLui2kj4QeSRA9jXw9Lp4yWQ== X-Received: by 2002:a05:6000:1b81:b0:313:f957:fc0c with SMTP id r1-20020a0560001b8100b00313f957fc0cmr5011317wru.47.1687953542430; Wed, 28 Jun 2023 04:59:02 -0700 (PDT) Message-ID: <19821e47-0ea0-ca79-2c1c-3f663c9921f7@linaro.org> Date: Wed, 28 Jun 2023 13:58:58 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v3 00/16] accel: Share CPUState accel context (HAX/NVMM/WHPX/HVF) Content-Language: en-US To: qemu-devel@nongnu.org Cc: kvm@vger.kernel.org, Marcel Apfelbaum , Peter Maydell , Roman Bolshakov , qemu-arm@nongnu.org, Richard Henderson , Alexander Graf , xen-devel@lists.xenproject.org, Sunil Muthuswamy , Anthony Perard , Stefano Stabellini , Yanan Wang , Paul Durrant , Reinoud Zandijk , Eduardo Habkost , Cameron Esfahani , Paolo Bonzini References: <20230624174121.11508-1-philmd@linaro.org> From: =?UTF-8?Q?Philippe_Mathieu-Daud=c3=a9?= In-Reply-To: <20230624174121.11508-1-philmd@linaro.org> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit On 24/6/23 19:41, Philippe Mathieu-Daudé wrote: > Philippe Mathieu-Daudé (16): > MAINTAINERS: Update Roman Bolshakov email address > accel: Document generic accelerator headers > accel: Remove unused hThread variable on TCG/WHPX > accel: Fix a leak on Windows HAX > accel: Destroy HAX vCPU threads once done > accel: Rename 'hax_vcpu' as 'accel' in CPUState > accel: Rename HAX 'struct hax_vcpu_state' -> AccelCPUState > accel: Move HAX hThread to accelerator context > accel: Remove NVMM unreachable error path > accel: Rename NVMM 'struct qemu_vcpu' -> AccelCPUState > accel: Inline NVMM get_qemu_vcpu() > accel: Remove WHPX unreachable error path > accel: Rename WHPX 'struct whpx_vcpu' -> AccelCPUState > accel: Inline WHPX get_whpx_vcpu() > accel: Rename 'cpu_state' -> 'cs' > accel: Rename HVF 'struct hvf_vcpu_state' -> AccelCPUState Series queued. From xen-devel-bounces@lists.xenproject.org Wed Jun 28 13:23:06 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 28 Jun 2023 13:23:06 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556468.869027 (Exim 4.92) (envelope-from ) id 1qEV8A-00087C-Lc; Wed, 28 Jun 2023 13:22:46 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556468.869027; Wed, 28 Jun 2023 13:22:46 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEV8A-000875-IV; Wed, 28 Jun 2023 13:22:46 +0000 Received: by outflank-mailman (input) for mailman id 556468; Wed, 28 Jun 2023 13:22:45 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEV89-00086z-Lu for xen-devel@lists.xenproject.org; Wed, 28 Jun 2023 13:22:45 +0000 Received: from NAM11-DM6-obe.outbound.protection.outlook.com (mail-dm6nam11on20614.outbound.protection.outlook.com [2a01:111:f400:7eaa::614]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id da900902-15b6-11ee-8611-37d641c3527e; Wed, 28 Jun 2023 15:22:40 +0200 (CEST) Received: from SN6PR12MB2621.namprd12.prod.outlook.com (2603:10b6:805:73::15) by BY5PR12MB4997.namprd12.prod.outlook.com (2603:10b6:a03:1d6::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.24; Wed, 28 Jun 2023 13:22:33 +0000 Received: from SN6PR12MB2621.namprd12.prod.outlook.com ([fe80::8018:78f7:1b08:7a54]) by SN6PR12MB2621.namprd12.prod.outlook.com ([fe80::8018:78f7:1b08:7a54%2]) with mapi id 15.20.6521.026; Wed, 28 Jun 2023 13:22:33 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: da900902-15b6-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Gf/YZ1GaQlLUQdakMa8GLf/tDYKEJPokdhENXoe8ladeEsog4Zax98sxh5lL6yjCR4YAPBCd/ooE8qi9R4eWRor7bQ2mokG0q2nUMSEu2hs1JgShRurtVVMUN17j3Kk1b9ehKwwK6WtcQskTY6Q1QrWZXxXfrmAg9XsSePWUFKMlFfouh7DqiGVTxZaysB37YHb8ZiXRKPIrgaII0fPNZjuRietIYMX+T/HNwxNI/XpUIkL9kD3SXs4Bbt5XdBtbfoTF+GQQx2iCs/dRZu6Lb6Hp/4sg2h1pQB2QeJaeowPpap3Cn5CZP3o000qZR7LS12R7rAeAIrz24hbmafy7GQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=0IRiwh3T3XE+/vQ6pxKqFOD4DW4v0rEJY0C7FTMjfLc=; b=KRwDfXN5y8/aaSdlgcUiGOThf+EadkHl7RI0klDrTCX/V5XMSJC5mCPWRsKX/liqu98XNB9q1f/SMf/24p5dE0G/tRvExzsIgQyxZvF2qjaHBls9c7DO6BpO5B1C/0LyKFan5B7TavRsTE0MogM5zeIcu1rEZm1/cXFDSVeaqhEbXUylzhf2FRjR/cs7gIgy8/Wh3ZjSg6D9LoQ8GbgzpwW5ampMEwaPUh9b4nocyeJNAIRPAKoJlEwwb2xQuCguHbU6oiFTe3TYgubv0G27gFVd8HqhpVKl+Fu3SM65QosFkImFx8xmwRZtKVzVXi/f8P53/QRBhy/m4WRgtE5HBg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass header.d=amd.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=0IRiwh3T3XE+/vQ6pxKqFOD4DW4v0rEJY0C7FTMjfLc=; b=Bh42+KWxLwPGGIsyGparqy5FTI57vBSI5jqRRy6HTd3qGtiJSN+kMSr7iLxAhn96m9Fz2FNjUYRsvcfMB7DsCKbVgtOMVMuXIHhwZHAGin3PjymVxp/A8fD5cmg9eqejbRHxXVqTtbmjOa5UnqevXk/WrhtPExlrK3ADNcLfqyk= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=amd.com; Message-ID: <37e2856b-038e-6a3a-a6ff-c518dfeda552@amd.com> Date: Wed, 28 Jun 2023 14:22:27 +0100 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v3 24/52] xen/mpu: build up start-of-day Xen MPU memory region map To: Julien Grall , Penny Zheng , xen-devel@lists.xenproject.org Cc: Stefano Stabellini , Bertrand Marquis , Volodymyr Babchuk , Wei Chen References: <20230626033443.2943270-1-Penny.Zheng@arm.com> <20230626033443.2943270-25-Penny.Zheng@arm.com> <778688ab-8fd4-2b06-e644-b5a013bb56f7@amd.com> <39a5a729-0099-67e4-bf4a-c65ae99a4619@xen.org> From: Ayan Kumar Halder In-Reply-To: <39a5a729-0099-67e4-bf4a-c65ae99a4619@xen.org> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO4P123CA0253.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:194::6) To SN6PR12MB2621.namprd12.prod.outlook.com (2603:10b6:805:73::15) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SN6PR12MB2621:EE_|BY5PR12MB4997:EE_ X-MS-Office365-Filtering-Correlation-Id: ec713899-c81a-48ae-b5b5-08db77dabb32 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 1Dwy84rGQQIFbbyTqHAtsrXZiQG5F11zu4bRh/1Dq3SnythS4XLXbvizhGbmw1gnqHw8ie4cUi8H5V7YvR7hN9FhL6N7IoHmeGh0+orMsMNaHYeaRQnuJ00wEsS4XS1oqJbPABEiwoi5LU2RbDMfa5+b+m0x2NJg4WsW23FW4psmQ7RyP6d1gMIQR/X4f4N/St+a07Si87vhbu6FaC31nBH09AZZRmb9rzNqKjeQmcwX+5saMM+J5Ui/deYl6K+JLQP+cvW0zb0D2Vhfprys4VNSx9Ips69L+9z8i0IlUMMZXjMAC7KBMR/An65DF8dbf9OrWvf6Qgb6oBrBwbilc4xnfqOHsH33XwGwCye5/9wh2884+la6X/8ZOhxMl27CFff9URjsfyIr/Kj0sQJ+VGw81qcSU7QUZ3umFNOtuKG6NQv3Nm3fNZ1yZgLXRrLaYynIhEs8WIm4/3wHhNUXBwr/YUWp1JLmak34yP9mwQ4fcaEWqC5apu7q89nC5ryEmL0dzvPlRZgQX10T9V13TRLiID1pAZu8OdGnQnTcGUVlzrEpJG9BhcbRzZ7VRL1Wc5bAgC6hBAPyu/0QiZD/IpZikeQA/zZVGwtKYeXigH3uCGGfBibfA/YrHosSUtmC5+U7GqWgwdi89N0Ri8Nwpdydw96rm7Oj0myapcRyKCabVFJwRa2wF9vFsPeaLP0A X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SN6PR12MB2621.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(136003)(366004)(346002)(39860400002)(396003)(376002)(451199021)(31686004)(186003)(2906002)(5660300002)(66476007)(26005)(6666004)(36756003)(316002)(54906003)(31696002)(6486002)(966005)(8676002)(110136005)(4326008)(478600001)(2616005)(38100700002)(66946007)(41300700001)(8936002)(66556008)(83380400001)(6512007)(6506007)(53546011)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?QTNPR0VTVnFDUjhXVlRlb2pGZVlpOXJtMGFqUDlaRmNsZFJvQkM4QVFnTmpy?= =?utf-8?B?bHNNTHAvajBEakxPR0pVR1VoZFRHMHY3bHNYWHJkU2QxSjdJV1NBOGpVemNi?= =?utf-8?B?RHJjOHhxUWJJeXpqT2kwcGRPamJHWTBDaGtia1NFeGw3S0cvY1ZHTDU5cWky?= =?utf-8?B?ZkZhWmNjd0xOaUpiSXovZHZLR28xaGlDd3FPeWRiRlVPR3Y0WEUrdkp4WWVh?= =?utf-8?B?dVZwZTkvOUorYTY0MDRyTEhRQkllTmRBTE9hTWNiSGVXeFRDbXNpdHNLUGlR?= =?utf-8?B?TjFxWWh4UERGaVVOWVUyekRpeGJKcHpJaXgvejFudWc5OUtmTktkd1dsbitM?= =?utf-8?B?UlAxQm5nOWRrRFF3eHY5NS8zSWRvWm44SVlkbkFFbmFwNENuMm5LOXF0cUx0?= =?utf-8?B?VFZqSXRrVWpMU1U0UG5oemZQdmFhQkMvUVZmaHYweFVldUxkcEZnVUZ6RXZo?= =?utf-8?B?eUlIQTJwQWYzZUJNU1BlNHpNZ2tJQWtMblRPZ2YzVlA1U1lyQjQxc3dzcjlQ?= =?utf-8?B?NFJ2UjhMRCt1OUVLUi9Bd1lIWUN0enNUK3ZXb0dELzBZWUUyWTVUOHFSSldj?= =?utf-8?B?eHlBMitPUWYrY0xzWTAwYzJpQ291NHdnUk1iNndoSWR6SHBrcTRoKy92akJl?= =?utf-8?B?dk02TEc4TEhGQWlFMEhoRTdJTW5MWEZ2MTZiQ2Z1Qk00ZWMvNGJicUNZWXJH?= =?utf-8?B?RjZhczU1cTVvTUFLVERpR05uK0ZHMVdrejRYN3paRmF6eVdESVoxT1YrZjE5?= =?utf-8?B?L093bDFHaHB0bldUR1NKbjFjMXBwdjBRR3dJODlBdjNnUW9rVFNqeEFON3ND?= =?utf-8?B?TlBobUp1SFFuK3dnckFIaHdlOW5ESkF5VUdVRHAwTVpYVUdlTC9oRjdhb2pO?= =?utf-8?B?clQ1YUExMjFBaUZOWXV3aUpQTS9GVDJiaUd5RTVFTEhHUnVaUmRCTjdLblpu?= =?utf-8?B?WEQ1bjZwUFdzVUN3ZWpsa0tDZUhHeDZlNDNwTnFTenZ3WG85MUhmMkxESnRn?= =?utf-8?B?Q21Ha3dlTnJ1L0ltYk54YTRBa01YMXZkdkVVeDFRcTRpWURIL2FPYm9tUjg0?= =?utf-8?B?Y081em5QVXNwSDZxOW1HYzBtTDJpMUtnSWVXdTdPQWNJUkt1VUZlK2ZRYzhP?= =?utf-8?B?ckZmTVBqZHRVRUpzYzFCNGhLaEpyTnNKZDhPZmc2N3JpRlh1RjE5TXNwTXhj?= =?utf-8?B?eWVxVjZQd0ZJaW1vNFdYMVZCbWRnOEFsTGhPdFRnOHhLMFVYVGpEbVJLYWtq?= =?utf-8?B?aHZ0Vlh2NlIzanpuMy8rVGwybUN6RlVSSExCOE51cFZOVlRmYkVRdWdUYWFO?= =?utf-8?B?b1JuY2tqVTBMd3RiSUd3TGFVMWNXK0FydVVLQU1CbDB6eEUrd1BMRnVobVdw?= =?utf-8?B?TWQvWmJ5Rk9DYXZmKzQ2cGVMWlZ0Mm53dFVBZzRidnZTSk0zV1R5dnJ2YW5U?= =?utf-8?B?U25Tcml0SHdFWXlNakFBZ25Xb2VnMWo5SUNiZDJSMHJyWlExaUdLS0IrSi9O?= =?utf-8?B?WUZMdEJ0Z0c4ZnVzUGdxNFJUcUczQk4zZjFVRVhPbHJRMzVBeVpBRG9USWN3?= =?utf-8?B?cHc1MkxMWGU5UCszcWpwREFHL3FZMFBVemUxcytwUXdRN0V1Qnl5SzB2cGxK?= =?utf-8?B?SU1Tc0xHNUhmMkhvNmdsRmNlbnhvZ0dIdlo5dXJRNVo3VjN0ZFk5VDJvdUVX?= =?utf-8?B?QWFBYXpTS3RVYTVSQVVLaEk3aFlsa2lKb2hveXA0Z2MzRytvRWp1RlpJckVo?= =?utf-8?B?UHdRczc5cUlTL0JaS1djTmVYNEQvK085R0hJSHFGdVFQOFlpMHNidHgrUVlx?= =?utf-8?B?SkFCNUpIUXBJV245R3Nac1ZIdC91RHBhV2cwc0xVM0JlMHNiY3FaRmRYZzFv?= =?utf-8?B?SGN1ckJuUm0rbWhYeUhmSmF3UUdzMmRrSDdiaFpWS0FSdERKSkdyVzg3eW5P?= =?utf-8?B?TDRtNUVvcDRCYzhMWmJmZFh6bDBJeE9EOVNMdHYwUFB1Q0ZhYUU3WHZTVXBG?= =?utf-8?B?RWFiRFZvd3JnZmFQRitmS21aZFdYUGtkaFpIQXZnSjFVVnNJelpFTldUTWtk?= =?utf-8?B?Tkg5V0hmR3ZRZlpLaWw1cUdxYlNpQWxZd3BSMklHSDB5aFRpSGpWZE9leDFS?= =?utf-8?Q?maqPGvImpSPeX+lh5zU6s5c8z?= X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-Network-Message-Id: ec713899-c81a-48ae-b5b5-08db77dabb32 X-MS-Exchange-CrossTenant-AuthSource: SN6PR12MB2621.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Jun 2023 13:22:33.2443 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: dg0dDmjbTGUukH+MacDir6Ww+0GPfZjWs9S3VPzS5Rmret08IUP4zgFFUL+vm5wIJTb6yXZn/NzrzabzuaM0aA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY5PR12MB4997 On 28/06/2023 12:17, Julien Grall wrote: > Hi, Hi Julien, > > On 28/06/2023 11:55, Ayan Kumar Halder wrote: >> On 26/06/2023 04:34, Penny Zheng wrote: >>> CAUTION: This message has originated from an External Source. Please >>> use proper judgment and caution when opening attachments, clicking >>> links, or responding to this email. >>> >>> >>> The start-of-day Xen MPU memory region layout shall be like >>> as follows: >>> >>> xen_mpumap[0] : Xen text >>> xen_mpumap[1] : Xen read-only data >>> xen_mpumap[2] : Xen read-only after init data >>> xen_mpumap[3] : Xen read-write data >>> xen_mpumap[4] : Xen BSS >>> xen_mpumap[5] : Xen init text >>> xen_mpumap[6] : Xen init data >>> >>> The layout shall be compliant with what we describe in xen.lds.S, >>> or the codes need adjustment. >>> >>> Signed-off-by: Penny Zheng >>> Signed-off-by: Wei Chen >>> --- >>> v3: >>> - cache maintanence for safety when modifying MPU memory mapping table >>> - Hardcode index for all data/text sections >>> - To make sure that alternative instructions are included, use >>> "_einitext" >>> as the start of the "Init data" section. >>> --- >> < snip> >>> +/* >>> + * Static start-of-day Xen EL2 MPU memory region layout: >>> + * >>> + *     xen_mpumap[0] : Xen text >>> + *     xen_mpumap[1] : Xen read-only data >>> + *     xen_mpumap[2] : Xen read-only after init data >>> + *     xen_mpumap[3] : Xen read-write data >>> + *     xen_mpumap[4] : Xen BSS >>> + *     xen_mpumap[5] : Xen init text >>> + *     xen_mpumap[6] : Xen init data >>> + * >>> + * Clobbers x0 - x6 >>> + * >>> + * It shall be compliant with what describes in xen.lds.S, or the >>> below >>> + * codes need adjustment. >>> + */ >>> +ENTRY(prepare_early_mappings) >>> +    /* x0: region sel */ >>> +    mov   x0, xzr >>> +    /* Xen text section. */ >>> +    load_paddr x1, _stext >>> +    load_paddr x2, _etext >>> +    prepare_xen_region x0, x1, x2, x3, x4, x5, x6, >>> attr_prbar=REGION_TEXT_PRBAR >>> + >>> +    add   x0, x0, #1 >>> +    /* Xen read-only data section. */ >>> +    load_paddr x1, _srodata >>> +    load_paddr x2, _erodata >>> +    prepare_xen_region x0, x1, x2, x3, x4, x5, x6, >>> attr_prbar=REGION_RO_PRBAR >>> + >>> +    add   x0, x0, #1 >>> +    /* Xen read-only after init data section. */ >>> +    load_paddr x1, __ro_after_init_start >>> +    load_paddr x2, __ro_after_init_end >>> +    prepare_xen_region x0, x1, x2, x3, x4, x5, x6 >>> + >>> +    add   x0, x0, #1 >>> +    /* Xen read-write data section. */ >>> +    load_paddr x1, __ro_after_init_end >>> +    load_paddr x2, __init_begin >>> +    prepare_xen_region x0, x1, x2, x3, x4, x5, x6 >>> + >>> +    add   x0, x0, #1 >>> +    /* Xen BSS section. */ >>> +    load_paddr x1, __bss_start >>> +    load_paddr x2, __bss_end >>> +    prepare_xen_region x0, x1, x2, x3, x4, x5, x6 >>> + >>> +    add   x0, x0, #1 >>> +    /* Xen init text section. */ >>> +    load_paddr x1, _sinittext >>> +    load_paddr x2, _einittext >>> +    prepare_xen_region x0, x1, x2, x3, x4, x5, x6, >>> attr_prbar=REGION_TEXT_PRBAR >>> + >>> +    add   x0, x0, #1 >>> +    /* Xen init data section. */ >>> +    /* >>> +     * Even though we are not using alternative instructions in MPU >>> yet, >>> +     * we want to use "_einitext" for the start of the "Init data" >>> section >>> +     * to make sure they are included. >>> +     */ >>> +    load_paddr x1, _einittext >>> +    roundup_section x1 >>> +    load_paddr x2, __init_end >>> +    prepare_xen_region x0, x1, x2, x3, x4, x5, x6 >>> + >>> +    /* Ensure any MPU memory mapping table updates made above have >>> occurred. */ >>> +    dsb   nshst >>> +    ret >>> +ENDPROC(prepare_early_mappings) >> >> Any reason why this is in assembly ? > > I am not Penny. But from my understanding, in your approach, you will > require to disable to switch the disable the MPU for using the new > sections. While I agree... > >> >> We have implemented it in C >> https://github.com/Xilinx/xen/blob/d1258f1cefe406a3f91237b8106746c089864651/xen/arch/arm_mpu/mm_mpu.c#L941 >> , so that it can be common between R82 and R52. > > ... this means you can share the code. It also means: >   * You can't protect Xen properly from the start Yes, I see what you mean. Refer https://github.com/Xilinx/xen/blob/d1258f1cefe406a3f91237b8106746c089864651/xen/arch/arm_mpu/arm32/mpu_v8r.S#L82C7-L82C15 , I am mapping CONFIG_XEN_START_ADDRESS + 2 MB. But, probably you mean individual sections should be properly mapped from the beginning. >   * You need to flush the cache (not great for performance) >   * You need to be more cautious as the MPU will be disabled for a > short period of time. Yes, MPU is disabled when set_boot_mpumap() is invoked. But is this really a security issue ? I mean only a single core is running and it is executing Xen. The MPU is turned off for few cycles. > > In fact looking at your switch code in setup_protection_regions(), I > am not convinced you can disable the MPU in C and then call > set_boot_mpumap(). I think the enable/disable would need to be moved > in the assembly function. There are potentially more issues. disable_mpu(), enable_mpu() are written in assembly. See https://github.com/Xilinx/xen/blob/d1258f1cefe406a3f91237b8106746c089864651/xen/arch/arm_mpu/arm32/mpu_v8r.S#L128 - Ayan > > So overall, I am not convinced of the C/common approach. > > Cheers, > From xen-devel-bounces@lists.xenproject.org Wed Jun 28 13:26:41 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 28 Jun 2023 13:26:41 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556472.869037 (Exim 4.92) (envelope-from ) id 1qEVBw-0000HA-5S; Wed, 28 Jun 2023 13:26:40 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556472.869037; Wed, 28 Jun 2023 13:26:40 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEVBw-0000H3-2A; Wed, 28 Jun 2023 13:26:40 +0000 Received: by outflank-mailman (input) for mailman id 556472; Wed, 28 Jun 2023 13:26:39 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEVBv-0000Gx-7p for xen-devel@lists.xenproject.org; Wed, 28 Jun 2023 13:26:39 +0000 Received: from smtp-out1.suse.de (smtp-out1.suse.de [195.135.220.28]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 65ea9a3e-15b7-11ee-8611-37d641c3527e; Wed, 28 Jun 2023 15:26:33 +0200 (CEST) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by smtp-out1.suse.de (Postfix) with ESMTPS id 7E5912189A; Wed, 28 Jun 2023 13:26:32 +0000 (UTC) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id 07BFB138E8; Wed, 28 Jun 2023 13:26:31 +0000 (UTC) Received: from dovecot-director2.suse.de ([192.168.254.65]) by imap2.suse-dmz.suse.de with ESMTPSA id 5H2QOwc1nGRJfQAAMHmgww (envelope-from ); Wed, 28 Jun 2023 13:26:31 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 65ea9a3e-15b7-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1; t=1687958792; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=YyHCjzXuvPQIeBDCs1BxS68n7glhXsM6xqPhDWv+ZxQ=; b=Azyx6XA84zc77D+GGqT5U5lFyHekPFZxU+KrMDYhwiubNetMa1UGmMXfv85ilVQ85YIFzd GZ86xOZW1ysBJdpTIlynKmBD8IhL44bTHKrskYBhbYQgZMTUgEh4U2HnM/6S0Nw+jTMbXG laW4TqxhDaHic3RANPBZaTWfxgDqcuc= Message-ID: <58622fcf-0939-95c5-7318-60c93307f991@suse.com> Date: Wed, 28 Jun 2023 15:26:31 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: XenSummit: Empty per-arch files Content-Language: en-US To: Andrew Cooper , xen-devel Cc: Jan Beulich , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , Stefano Stabellini , Julien Grall , Volodymyr Babchuk , Bobby Eshleman , Alistair Francis , Connor Davis , Oleksii Kurochko , Shawn Anastasio , Timothy Pearson References: <2aabfb63-1a2f-bb02-488a-ea79136bc6c0@citrix.com> From: Juergen Gross In-Reply-To: <2aabfb63-1a2f-bb02-488a-ea79136bc6c0@citrix.com> Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="------------nRMx0BW9HlmifNF96on0apbh" This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --------------nRMx0BW9HlmifNF96on0apbh Content-Type: multipart/mixed; boundary="------------XPd1t1yE7xlNTQDsN4r4WuFo"; protected-headers="v1" From: Juergen Gross To: Andrew Cooper , xen-devel Cc: Jan Beulich , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , Stefano Stabellini , Julien Grall , Volodymyr Babchuk , Bobby Eshleman , Alistair Francis , Connor Davis , Oleksii Kurochko , Shawn Anastasio , Timothy Pearson Message-ID: <58622fcf-0939-95c5-7318-60c93307f991@suse.com> Subject: Re: XenSummit: Empty per-arch files References: <2aabfb63-1a2f-bb02-488a-ea79136bc6c0@citrix.com> In-Reply-To: <2aabfb63-1a2f-bb02-488a-ea79136bc6c0@citrix.com> --------------XPd1t1yE7xlNTQDsN4r4WuFo Content-Type: multipart/mixed; boundary="------------bEMcJF9U9ZnK2iguif3dCN58" --------------bEMcJF9U9ZnK2iguif3dCN58 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: base64 T24gMjguMDYuMjMgMTM6MzIsIEFuZHJldyBDb29wZXIgd3JvdGU6DQo+IEhlbGxvLA0KPiAN Cj4gVGhpcyB3YXNuJ3QgYSBmb3JtYWwgZGlzY3Vzc2lvbiBwb2ludCBhdCBYZW5TdW1taXQs IGJ1dCBPbGVrc2lpIHBvaW50ZWQNCj4gb3V0IHRoYXQgaXQgd2FzIHN0aWxsIGEgcHJvYmxl bSwgaGVuY2UgdGhpcyB0aHJlYWQuDQo+IA0KPiBBcyB3ZSB0YWtlIG9uIG1vcmUgYXJjaGl0 ZWN0dXJlcywgaXQgYmVjb21lcyBtb3JlIGFuZCBtb3JlIGltcG9ydGFudCBmb3INCj4gdGhp bmdzIHRvIGJlIGhhbmRsZWQgaW4gYSBtb3N0bHktY29tbW9uIHdheS7CoCBXaXRoIHRoYXQg Y29tZXMgcXVpdGUgYQ0KPiBsb3Qgb2YgPHhlbi9mb28uaD4gaW5jbHVkaW5nIDxhc20vZm9v Lmg+LCBhbmQgdGhlIGFyY2ggb25lIGJlaW5nIGEgc3R1Yg0KPiBpbiBzaW1wbGUgY2FzZXMu DQo+IA0KPiBJdCB3b3VsZCBiZSBuaWNlIHRvIGdldCByaWQgb2YgdGhlIHN0dWIgZmlsZXM7 IHRoZXkncmUgaXJyaXRhdGluZyB0bw0KPiBkZWFsIHdpdGgsIGJvdGggd2hlbiByZWZhY3Rv cmluZyBhbmQgc2ltcGx5IGZvciB0aGUgZmlsZSBibG9hdCB0aGV5IGNyZWF0ZS4NCj4gDQo+ IFRoZXJlIGFyZSB0d28gb3B0aW9ucyB3aGljaCBjb21lIHRvIG1pbmQuDQo+IA0KPiAxKSBV c2UgX19oYXNfaW5jbHVkZSgpLsKgIFRoaXMgd291bGQgYmUgaWRlYWwsIGJ1dCB3b3VsZCBy ZXF1aXJlIHVzDQo+IGJ1bXBpbmcgdGhlIG1pbmltdW0gR0NDIHZlcnNpb24gdG8gNC45LjIg YXMgYSBwcmVyZXF1aXNpdGUuwqAgSSdtIG5vdA0KPiBhd2FyZSBvZiBhbnkgd2F5IHRvIGVt dWxhdGUgdGhlIG5lY2Vzc2FyeSBiZWhhdmlvdXIgb24gb2xkZXIgdG9vbGNoYWlucy4NCj4g DQo+IDIpIEhhdmUgYSBzdHViICJhcmNoaXRlY3R1cmUiIHdoaWNoIGlzIGFsd2F5cyBsYXN0 IG9uIHRoZSBpbmNsdWRlIHBhdGguDQo+IFRoaXMgd291bGQgcmVkdWNlIHRoZSBudW1iZXIg b2Ygc3R1YiBmaWxlcyBmcm9tIG9uZSBzZXQgcGVyIGFyY2gsIHRvDQo+IG9ubHkgb25lIHNl dC4NCj4gDQo+IEFueXRoaW5nIGVsc2UgdGhhdCBJJ3ZlIG1pc3NlZD8NCg0KV2hhdCBhYm91 dCBhIG1ha2UgcnVsZSBjcmVhdGluZyBhbiBlbXB0eSBpbmNsdWRlIGZpbGUgaWYgaXQgaXMg bWlzc2luZz8NCg0KDQpKdWVyZ2VuDQoNCg== --------------bEMcJF9U9ZnK2iguif3dCN58 Content-Type: application/pgp-keys; name="OpenPGP_0xB0DE9DD628BF132F.asc" Content-Disposition: attachment; filename="OpenPGP_0xB0DE9DD628BF132F.asc" Content-Description: OpenPGP public key Content-Transfer-Encoding: quoted-printable -----BEGIN PGP PUBLIC KEY BLOCK----- xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjri oyspZKOBycWxw3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2 kaV2KL9650I1SJvedYm8Of8Zd621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i 1TXkH09XSSI8mEQ/ouNcMvIJNwQpd369y9bfIhWUiVXEK7MlRgUG6MvIj6Y3Am/B BLUVbDa4+gmzDC9ezlZkTZG2t14zWPvxXP3FAp2pkW0xqG7/377qptDmrk42GlSK N4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEBAAHNHEp1ZXJnZW4gR3Jvc3Mg PGpnQHBmdXBmLm5ldD7CwHkEEwECACMFAlOMcBYCGwMHCwkIBwMCAQYVCAIJCgsE FgIDAQIeAQIXgAAKCRCw3p3WKL8TL0KdB/93FcIZ3GCNwFU0u3EjNbNjmXBKDY4F UGNQH2lvWAUy+dnyThpwdtF/jQ6j9RwE8VP0+NXcYpGJDWlNb9/JmYqLiX2Q3Tye vpB0CA3dbBQp0OW0fgCetToGIQrg0MbD1C/sEOv8Mr4NAfbauXjZlvTj30H2jO0u +6WGM6nHwbh2l5O8ZiHkH32iaSTfN7Eu5RnNVUJbvoPHZ8SlM4KWm8rG+lIkGurq qu5gu8q8ZMKdsdGC4bBxdQKDKHEFExLJK/nRPFmAuGlId1E3fe10v5QL+qHI3EIP tyfE7i9Hz6rVwi7lWKgh7pe0ZvatAudZ+JNIlBKptb64FaiIOAWDCx1SzR9KdWVy Z2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+wsB5BBMBAgAjBQJTjHCvAhsDBwsJ CAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey/HmQf/RtI7kv5A2PS4 RF7HoZhPVPogNVbC4YA6lW7DrWf0teC0RR3MzXfy6pJ+7KLgkqMlrAbN/8Dvjoz7 8X+5vhH/rDLa9BuZQlhFmvcGtCF8eR0T1v0nC/nuAFVGy+67q2DH8As3KPu0344T BDpAvr2uYM4tSqxK4DURx5INz4ZZ0WNFHcqsfvlGJALDeE0LhITTd9jLzdDad1pQ SToCnLl6SBJZjDOX9QQcyUigZFtCXFst4dlsvddrxyqT1f17+2cFSdu7+ynLmXBK 7abQ3rwJY8SbRO2iRulogc5vr/RLMMlscDAiDkaFQWLoqHHOdfO9rURssHNN8WkM nQfvUewRz80hSnVlcmdlbiBHcm9zcyA8amdyb3NzQG5vdmVsbC5jb20+wsB5BBMB AgAjBQJTjHDXAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/ Ey8PUQf/ehmgCI9jB9hlgexLvgOtf7PJnFOXgMLdBQgBlVPO3/D9R8LtF9DBAFPN hlrsfIG/SqICoRCqUcJ96Pn3P7UUinFG/I0ECGF4EvTE1jnDkfJZr6jrbjgyoZHi w/4BNwSTL9rWASyLgqlA8u1mf+c2yUwcGhgkRAd1gOwungxcwzwqgljf0N51N5Jf VRHRtyfwq/ge+YEkDGcTU6Y0sPOuj4Dyfm8fJzdfHNQsWq3PnczLVELStJNdapwP OoE+lotufe3AM2vAEYJ9rTz3Cki4JFUsgLkHFqGZarrPGi1eyQcXeluldO3m91NK /1xMI3/+8jbO0tsn1tqSEUGIJi7ox80eSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1 c2UuZGU+wsB5BBMBAgAjBQJTjHDrAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgEC F4AACgkQsN6d1ii/Ey+LhQf9GL45eU5vOowA2u5N3g3OZUEBmDHVVbqMtzwlmNC4 k9Kx39r5s2vcFl4tXqW7g9/ViXYuiDXb0RfUpZiIUW89siKrkzmQ5dM7wRqzgJpJ wK8Bn2MIxAKArekWpiCKvBOB/Cc+3EXE78XdlxLyOi/NrmSGRIov0karw2RzMNOu 5D+jLRZQd1Sv27AR+IP3I8U4aqnhLpwhK7MEy9oCILlgZ1QZe49kpcumcZKORmzB TNh30FVKK1EvmV2xAKDoaEOgQB4iFQLhJCdP1I5aSgM5IVFdn7v5YgEYuJYx37Io N1EblHI//x/e2AaIHpzK5h88NEawQsaNRpNSrcfbFmAg987ATQRTjHAWAQgAyzH6 AOODMBjgfWE9VeCgsrwH3exNAU32gLq2xvjpWnHIs98ndPUDpnoxWQugJ6MpMncr 0xSwFmHEgnSEjK/PAjppgmyc57BwKII3sV4on+gDVFJR6Y8ZRwgnBC5mVM6JjQ5x Dk8WRXljExRfUX9pNhdE5eBOZJrDRoLUmmjDtKzWaDhIg/+1Hzz93X4fCQkNVbVF LELU9bMaLPBG/x5q4iYZ2k2ex6d47YE1ZFdMm6YBYMOljGkZKwYde5ldM9mo45mm we0icXKLkpEdIXKTZeKDO+Hdv1aqFuAcccTg9RXDQjmwhC3yEmrmcfl0+rPghO0I v3OOImwTEe4co3c1mwARAQABwsBfBBgBAgAJBQJTjHAWAhsMAAoJELDendYovxMv Q/gH/1ha96vm4P/L+bQpJwrZ/dneZcmEwTbe8YFsw2V/Buv6Z4Mysln3nQK5ZadD 534CF7TDVft7fC4tU4PONxF5D+/tvgkPfDAfF77zy2AH1vJzQ1fOU8lYFpZXTXIH b+559UqvIB8AdgR3SAJGHHt4RKA0F7f5ipYBBrC6cyXJyyoprT10EMvU8VGiwXvT yJz3fjoYsdFzpWPlJEBRMedCot60g5dmbdrZ5DWClAr0yau47zpWj3enf1tLWaqc suylWsviuGjKGw7KHQd3bxALOknAp4dN3QwBYCKuZ7AddY9yjynVaD5X7nF9nO5B jR/i1DG86lem3iBDXzXsZDn8R38=3D =3D2wuH -----END PGP PUBLIC KEY BLOCK----- --------------bEMcJF9U9ZnK2iguif3dCN58-- --------------XPd1t1yE7xlNTQDsN4r4WuFo-- --------------nRMx0BW9HlmifNF96on0apbh Content-Type: application/pgp-signature; name="OpenPGP_signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="OpenPGP_signature" -----BEGIN PGP SIGNATURE----- wsB5BAABCAAjFiEEhRJncuj2BJSl0Jf3sN6d1ii/Ey8FAmScNQcFAwAAAAAACgkQsN6d1ii/Ey9F Kgf6As+CFitJBM06BxDZAVDTcGUqopkZ0gmfVMs2Yi/FTK/caImJ38QkIfGMelzE5efqR/kr3jlU jHqXILUvzLpbDjDdS64iKsZknRRsQ/pPd8G3Ru6BGb56Y+mSI5EyNKGPKv77LKeWbE8aQiSTwSKt 1c+UBEaKoxS/EWoGWu+IEGb+7xAAY3dLUALp1jSVFWvhI/5Irh2ydp7DNTBXEIWXkcGqNxR2tfSX Y1EEozlcfcNmE+eucXlOOsjYeL7fbmvyFWxXacOYzA2syqBpjmrxK7CLgt4/43+zFcsxHz7UDsx3 AaEjH36wPa62XVaWHny+mx4zE1eRtKSdC+XV2W0cpw== =qWJO -----END PGP SIGNATURE----- --------------nRMx0BW9HlmifNF96on0apbh-- From xen-devel-bounces@lists.xenproject.org Wed Jun 28 13:31:01 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 28 Jun 2023 13:31:01 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556476.869047 (Exim 4.92) (envelope-from ) id 1qEVFu-0001ij-MA; Wed, 28 Jun 2023 13:30:46 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556476.869047; Wed, 28 Jun 2023 13:30:46 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEVFu-0001ic-JE; Wed, 28 Jun 2023 13:30:46 +0000 Received: by outflank-mailman (input) for mailman id 556476; Wed, 28 Jun 2023 13:30:45 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEVFt-0001iW-2n for xen-devel@lists.xenproject.org; Wed, 28 Jun 2023 13:30:45 +0000 Received: from esa3.hc3370-68.iphmx.com (esa3.hc3370-68.iphmx.com [216.71.145.155]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id f9cbe589-15b7-11ee-b237-6b7b168915f2; Wed, 28 Jun 2023 15:30:43 +0200 (CEST) Received: from mail-mw2nam10lp2106.outbound.protection.outlook.com (HELO NAM10-MW2-obe.outbound.protection.outlook.com) ([104.47.55.106]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 28 Jun 2023 09:30:34 -0400 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) by SJ0PR03MB5647.namprd03.prod.outlook.com (2603:10b6:a03:279::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.15; Wed, 28 Jun 2023 13:30:33 +0000 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::1c83:1877:a68b:8902]) by SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::1c83:1877:a68b:8902%7]) with mapi id 15.20.6521.024; Wed, 28 Jun 2023 13:30:32 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: f9cbe589-15b7-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1687959042; h=date:from:to:cc:subject:message-id:references: content-transfer-encoding:in-reply-to:mime-version; bh=QmKpoXh0q9IyF+GtCNx+LTPuvVKISp9kjElp2H+OnvU=; b=iVNmzxs2cnplWbBljUFTxMIIGwSj4NEUjYRh9dNVYkvEnT1JgiqqbQID yHrr/mUZ4qTKXMRkbjkoKaoWNbgOBbFBqXtIyNWHnWTn65RXQjwD1ng64 kIPXIpIEbSmTQFXPHz5VjyLyrhVOPpzjfAP1Q476F0BJ3pxXky45FbBNS c=; X-IronPort-RemoteIP: 104.47.55.106 X-IronPort-MID: 114486605 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:qhhduqp7jN7r2opYa4Rvozrgy8ZeBmIyZBIvgKrLsJaIsI4StFCzt garIBnXOf6IYzHxfI9+aI7j905SuZ+Ax9MyHgc/q3owQyMVopuZCYyVIHmrMnLJJKUvbq7FA +Y2MYCccZ9uHhcwgj/3b9ANeFEljfngqoLUUbKCYWYpA1c/Ek/NsDo788YhmIlknNOlNA2Ev NL2sqX3NUSsnjV5KQr40YrawP9UlKq04GpwUmAWP6gR5weAzSlNVvrzGInqR5fGatgMdgKFb 76rIIGRpgvx4xorA9W5pbf3GmVirmn6ZFXmZtJ+AsBOszAazsAA+v9T2Mk0MC+7vw6hjdFpo OihgLTrIesf0g8gr8xGO/VQO3kW0aSrY9YrK1Dn2SCY5xWun3cBX5yCpaz5VGEV0r8fPI1Ay RAXAAk9Yw28o+7p+4O+RrFmmuEzMfjSZapK7xmMzRmBZRonabbqZvySoPpnhnI3jM0IGuvCb c0EbzYpdA7HfxBEJlYQDtQ5gfusgX78NTZfrTp5p4JuuzSVkFM3jeWraYKLEjCJbZw9ckKwv GXJ8n6/GhgHHNee1SCE4jSngeqncSbTAdtOSO3mqKY36LGV7kc3LBxRSnyRmv+4l0mjdosHE G4boxN7+MDe82TuFLERRSaQsHOC+xIRRddUO+k78x2WjLrZ5R6DAWoJRSIHb8Yp3Oc0TzE30 l6Cn/vyGCdi9raSTBq177qRsHa+NDYYKUcEYikLSxZD5MPsyLzflTrKR9dnVauq1Nv8HGiox yjQ9XBgwbIOkcQMyqO3u0jdhC6hrYTISQhz4RjLWmWi7UVyY4vNi5GU1GU3JM1odO6xJmRtd lBewKByMMhm4UmxqRGw IronPort-HdrOrdr: A9a23:KPuhw6Gn9kLW+gw4pLqE0ceALOsnbusQ8zAXPiFKOGVom6mj/f xG885rsCMc5AxhOk3I3OrwW5VoIkm8yXcW2/h0AV7KZmCP01dAbrsD0WKI+UyGJ8SRzJ866U 6iScRD4R/LYGSSQfyU3OBwKbgd/OU= X-Talos-CUID: =?us-ascii?q?9a23=3AspHupGuLdhP+f59ek0pYe9bB6IscQnDA81PcfHS?= =?us-ascii?q?JDGoxQqGwWUKhwfpNxp8=3D?= X-Talos-MUID: 9a23:dIDHvgnRBNw6X0iJxMAidnpJEONppLuJInsLkIgBpuTdbRdSNG6k2WE= X-IronPort-AV: E=Sophos;i="6.01,165,1684814400"; d="scan'208";a="114486605" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=S4g9c4YwQ0WtCrBhV1V5IziWZsGMOGHd+tqpcl0EA4Vmq+ajCTuSNbP9DAsRkBqvBBzJyBmw14ZRlF2H6sXz/JQvSdbHseKrCdCn4shrsJGBmX3XYAixnEhSJcm/V6f1PaI7af98dUbGDmk4E/RDxMLRNjZRrbBMplmVnt6EPBdRXojmXCMtQyfRt1A5xufANY/rJJA3HPse7DkpjmbfLjo9GOwbHOWshNRBXIpyakcrZklo4qAK2BqilvFTj8YQTyxTWbSpx5hEfO3mbGi+fU3VFBzU0+1obCuLlgbKXqlzovObAW9Kz7Fgj2g6armWH8yzgqPyQ95I1Ia+I2ok2w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=Y8QDkzeJKWMWSET+9ZsFxDedtBmOzxg9Hl8z+lRGViE=; b=OcP9b5Vjo3FF3EWQ25G9X7v3RvQZURiNVpm26u8TK4CGh0+Ld7y8WnMGvcfI+8eNFU5go9cumOldEx/yPQQ/yS12FNZbGfex9lm19j9GHucSk860Zztl90yYxN1MQKaPG7eYHm8N1ZFBovSpzqwXwdphUw0menGGztKP7V+uP0SDl98/rZ54llaoGnKvXNBjqmSEKmkyN1b+jqyuCtQ1c1k3zpPjCBjgKTnr9QSUiLgK+FwBhta/X4n4onyazzGFV2hbb1sOOAsEjCqn0eLQLaHyQK8W6MZhig5kYXroyIOkQvFMO4hRhN8Hkd+Sb4FfsVxDe1S1wcJOoyWlUJDjpA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Y8QDkzeJKWMWSET+9ZsFxDedtBmOzxg9Hl8z+lRGViE=; b=CKWqlyOxVrDwYEIOEwaa6122x6p6LhEHbqmfSzHyYfitYRdnRelwbts3PT7kqMlcZY69uzS1PCbhLWr+Sy+mshviN0q5pQ19ahESJCVaYYRJ0QXKg8XkHSYocmWuWNMXxmiIBXhD6No2sPcPgNfb6OmHpG9RkoDPRumS7WiFNcY= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Date: Wed, 28 Jun 2023 15:30:25 +0200 From: Roger Pau =?utf-8?B?TW9ubsOp?= To: xen-devel@lists.xenproject.org Cc: Anthony PERARD , Jan Beulich , qemu-devel@nongnu.org Subject: Re: QEMU assert (was: [xen-unstable test] 181558: regressions - FAIL) Message-ID: References: Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: X-ClientProxiedBy: MR1P264CA0029.FRAP264.PROD.OUTLOOK.COM (2603:10a6:501:2f::16) To SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|SJ0PR03MB5647:EE_ X-MS-Office365-Filtering-Correlation-Id: e74ad293-1c9e-4ae6-af6e-08db77dbd8d4 X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: S43GAhgjh5YM0a/KZl4CCxvLpFTtHdd2b/96oXS6fHC9xywu0jNKrQ42ubJAf4ihtXV9yC3w6qSZRfMAMiA80Wr6lxppu0r4U1fCFUZOqlANpgz0zp9JvWIh7+NfCARfNGvk1pQvbUx5CqtwKn+8VxJJjxjQQtmUFOLSou+CRlnZ9LVvC8iaQDgvV72HEnuwOSMctoNvWjxVR7wHpGnLg57fR4rqI66SHfzAT2gSMxciTNpHjBqA2iCNZrRxPukrALZ5ijmyMHJhHzOzIeUVUnISJlRrrjmQqCJrj7B7rfGJqY048qYgMssE2IKR5ik2gKgDlcSuyb/OLhddLIRew89C90L0MBT2Lr7xvZku42jQyb1IYri/kTcfYfSS1kzECp/DAZED1mnKIjl1MtR/TdQrijwZdLdUi4rOSU9DUgfDKfnRC5zZMWa5uvWG7paeaePMyClcj1nM2sJ9KjikL/KhW2RcGXQKio012dsN0c7nLWwHTJm87JMKJl5fpHbYGS/ZpYXdX1XapjNxhvitj1eZ9wiewlzcrX8Z8JrxLTY= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(396003)(376002)(39860400002)(346002)(366004)(136003)(451199021)(6666004)(54906003)(966005)(6486002)(478600001)(83380400001)(82960400001)(86362001)(66556008)(6512007)(2906002)(66476007)(186003)(26005)(9686003)(6506007)(85182001)(4326008)(316002)(66946007)(6916009)(5660300002)(38100700002)(41300700001)(8676002)(8936002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?dEhkcmhHaStSL3c3ODFxNlVPc1JRbEJYSzFYUmJKdzd4emdEL1RvcUdoTms2?= =?utf-8?B?QnZTaUUvNmY2ajdCK280UXZ2Y3pycDh3T3BxRDFJbU9zL2x6Z29NUXloMVMz?= =?utf-8?B?TVQyQXJIYndpWWlEcytxak9Rd01hSThsVzlqVXVJc0g3VW5Yc1dzcXlWNmFp?= =?utf-8?B?Zkp2ZENIODVrTytteGFPRysxQVRzdXkvZVR3UkY2Z2VtWGFUSFJwb0lMMDU5?= =?utf-8?B?b3Njc0FET0hvRzJGSkl3NVVFbDlLR2lIejZkRlpkemNKN1l3bGVBS2kzNWxj?= =?utf-8?B?M2tyekE2VmNWRFRpdndIQm1IbnJBZEtsampKWUdYL2pmMWJpZG1zSFVpU3h5?= =?utf-8?B?OXBDeXl6VWN3Z1dwYXBJaFA5M3pydElZdWgrelIxZGRyWlpJdjc5ZE91ZzRo?= =?utf-8?B?YmZjdGhHNjRQYVBvK0lmbjRDTWF6MzBzWlQvOWs4QitoaHlsT25WeiszQXJH?= =?utf-8?B?MERtZUlESVBJNktrNi9iVUhNNFd6UE1Gd3hTOHRuaGpnWlZIajBwK1lDL1Ur?= =?utf-8?B?SDFNNUI2cnA3Z0dqVmJVR2lWZUpmTFp6NTR3RUVualZPNkFTaTV1cFdETFEv?= =?utf-8?B?amw2ZUdRS200YkgvUGh2T0syc0E0a0R0a2hyM1NkOVVBZ240UDJaREJ1RWhW?= =?utf-8?B?d2J2UmFPRUpRb1VpbmhVdTJLZ0loUmZQVVYvZGJVemwyTzloWEdxY1d6UkFF?= =?utf-8?B?c2FIM2NuVW5teWpSQUxPeHBUNDdSNTd5QXc4QW9VbWdiZ1E0SHoxM0dtRVVs?= =?utf-8?B?WHVjU3Rka2NOdm1HKzBMd0RKMVVUc3dyVktrcys0N0pxYlQvSWxjcEVNbG9L?= =?utf-8?B?NVJIM1JDcTJvaUw3MTBJTWFoZjF2dWlQckJZOGdDYmJTMm9SUEY2NWROdTFD?= =?utf-8?B?TDNGcDdOcCtHVEExTzg2WW9YR1FwdFRUU3o0eFJBN3ZURlNsNUtOMVBheUpl?= =?utf-8?B?QzJRWk1PeXVCa1k5MHJiRXJzdDJYS2xqcVB4VjNWVE1YQXZGM1hGOFdpMjdF?= =?utf-8?B?OWtSS0JzZTVCQ0ZwQ3QyMzBGWmJYZjNwUDZHZzR5bFpFamprN2ExbHIrTThR?= =?utf-8?B?OXQ4b21MRjJGL3dvSm9Eby85WGc5UlNRbGtubkpVNUNNUmJqTHorak1uZkVx?= =?utf-8?B?NnlGNnFWR2libmdOandBaWlpM3NZTnNhRy8xQjI5cHZJSnFGN0IrRHNUekFX?= =?utf-8?B?VmR4ZVpKbjNXTC92bWJha0ZkcDZ0VDhudjlPTUN3ejhlaE0xRmMwQW9lQzNK?= =?utf-8?B?a1RmdHlDZHE2UmJvS1JkK2NsSm9lYTF0Qld4eFJPanhCYklweDlzai9HQ28y?= =?utf-8?B?ZllqeXd5WENYdkdXRlNNWmpUUGkzODEzYUpFamJvYVFtQStNdDlocEp5NXp2?= =?utf-8?B?aTU5T3BRNTFUWmVGQncyazVTSGNRY2VYaStQQ0Z4aGdmWTBReFdTZ0pGVmNs?= =?utf-8?B?dGVGdEY5TDVodGJaM3JkRTVXZm8xZmR6dmk2YVV1em9jaWNEQzRmMTdCeWRx?= =?utf-8?B?MVJ5N0s4UnFubE1jK1BHSGFSdUJFK3lSUFRpMVRKNTBscWhUZDZtSldmQmg1?= =?utf-8?B?MklRaTBRVzE5anphRHR1bGp3NEhFNGgyLzU2ZGVEZUcvRW9hTTVoOVFFdmpR?= =?utf-8?B?L0xraWR3anJFblFWTU1xeW1UOTVSL1NjTUVzNUxnTkh0SU55USs5OGJadFUr?= =?utf-8?B?RCs5by9IZ21OaVlOc1dRRFp2a0VXRWJrNmVnU0JwZ1I1cHF5VmRyWnJHQXJW?= =?utf-8?B?cUZ4MEtBdVlmY2pEbE9CTEFBaXBVUzI1MHoxM1lDc1ZWbk1BNXRlUUIxRVZi?= =?utf-8?B?OCtpUmlTNi85MUI2a1VsRGFVWWtuTFdNWmR6VkNRcGhaRzJkUE9PTGVuZWpr?= =?utf-8?B?WmdUQm1Bd1QyV2xXNEN5dlVvMkY1aGFDNzlYSk1YRkdKNy80WmpkallGNXln?= =?utf-8?B?SUQ0OGE1a3diVWVxRFd2MzRDaUJwY3NmV0lnNk5VR1BDUGpMUzV4NTNtT3c4?= =?utf-8?B?eGhPMk5uVW9yeHowNU1DRG42S1E1MWVna3AvUUhQY3Nob1BPYWVMWE1SUGhB?= =?utf-8?B?NjlmY2xkaUU4NkQ2T0VZSVJHekdlKzYwWmhzR09reVpQZ0gyMWllb1lVWmlG?= =?utf-8?B?NXFndjc1UjRWaW5MOVdkbXhoNGtRTjFmZHVIQXp6OUQ5RC9yQkVyTXNMVDBN?= =?utf-8?B?bHc9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: avhNPEl7NUPs9vjcn4HJeI6SA/9yG36+5ORKOd+sOesIDcGSHJy9cBh14HH0deel5X8ZmuNcb3OcNanQFH2Ff5fWYQlWRwWmeObWD3q2A0l+y4HaG+hgw6bzRW5lGhaVtXQMziHhRBix3S9jV1ui5tSPtfDGxvThwr8kQDMfjbvMGkEWXe2Jz04Rowe7v87Rv8pO8c9y3h6f4CBxpwfsdqBxKpR/yW+4jGl0EsmXM/xMw+J+eVuj+UrKE/ETw2K6TjouX1VractJv/cpFGHPVeoXYOhH9aBjMppsdsskd4CV4ov00fQfn5GaQxkIZPiFvVM9vWoz4fYQ+VXVQtHIjZzPvfm7UZpiELHtRwenhfNEHiJQdLxxEsHyBhQ6k171IWTD/8LQmIdsElnNAgeoYvi8LcV6U22ojQWOnNBDD7FFkISqROxIzFgqS7PG2ymWZhVz34OtxG9O4LGL6V/1g4fPU8A6X1fiCKyP2gvlsT2Mol9RMfC+d5X2n0tCfQwL5gMApW4+vS+I7p/LQfFGdPUke9eN7EQPmT1+IUvEQxg2E1S3UU5Yllm4nPe53A3AKPzcvSH3w6GFk2owocde43KSS2Job/jgFlPe3OxD/U3DYCJiuySEE4ya1y9f6e5XH0FH4O3v7khkqehgXvL0tOjuu3biSdvYx7HEcXGaVBOvWOF1vFCTjDagLlgE21jPawoRg874vqPR578K6+xAkfGnk5GnfaHiath6KhuEAmqGYqZq8djuBwVsKoIwZPFz50qxtnEiEXcmtZ1K4iGaUkcgaPLCq8suOy1t1U4+1Fn68SjWmeuPq57uTFvQp9+9DLqQAT02zcw/XLZgWXu+iA== X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: e74ad293-1c9e-4ae6-af6e-08db77dbd8d4 X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Jun 2023 13:30:32.5493 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: dDxjQBTGzphCEggSO7Z2W35EMtrJZVK7Qw4oWlwbiQD1Ecy3PD34jDUUKkl6vELK/dsdKd5iGImXkO8/19wf8w== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR03MB5647 Dropped xen-devel, adding back. On Wed, Jun 28, 2023 at 02:31:39PM +0200, Roger Pau Monné wrote: > On Fri, Jun 23, 2023 at 03:04:21PM +0000, osstest service owner wrote: > > flight 181558 xen-unstable real [real] > > http://logs.test-lab.xenproject.org/osstest/logs/181558/ > > > > Regressions :-( > > > > Tests which did not succeed and are blocking, > > including tests which could not be run: > > test-amd64-amd64-xl-qcow2 21 guest-start/debian.repeat fail REGR. vs. 181545 > > The test failing here is hitting the assert in qemu_cond_signal() as > called by worker_thread(): > > #0 __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:50 > #1 0x00007ffff740b535 in __GI_abort () at abort.c:79 > #2 0x00007ffff740b40f in __assert_fail_base (fmt=0x7ffff756cef0 "%s%s%s:%u: %s%sAssertion `%s' failed.\n%n", assertion=0x55555614abcb "cond->initialized", > file=0x55555614ab88 "../qemu-xen-dir-remote/util/qemu-thread-posix.c", line=198, function=) at assert.c:92 > #3 0x00007ffff74191a2 in __GI___assert_fail (assertion=0x55555614abcb "cond->initialized", file=0x55555614ab88 "../qemu-xen-dir-remote/util/qemu-thread-posix.c", line=198, > function=0x55555614ad80 <__PRETTY_FUNCTION__.17104> "qemu_cond_signal") at assert.c:101 > #4 0x0000555555f1c8d2 in qemu_cond_signal (cond=0x7fffb800db30) at ../qemu-xen-dir-remote/util/qemu-thread-posix.c:198 > #5 0x0000555555f36973 in worker_thread (opaque=0x7fffb800dab0) at ../qemu-xen-dir-remote/util/thread-pool.c:129 > #6 0x0000555555f1d1d2 in qemu_thread_start (args=0x7fffb8000b20) at ../qemu-xen-dir-remote/util/qemu-thread-posix.c:505 > #7 0x00007ffff75b0fa3 in start_thread (arg=) at pthread_create.c:486 > #8 0x00007ffff74e206f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95 > > I've been trying to figure out how it can get in such state, but so > far I had no luck. I'm not a QEMU expert, so it's probably better if > someone else could handle this. > > In the failures I've seen, and the reproduction I have, the assert > triggers in the QEMU dom0 instance responsible for locally-attaching > the disk to dom0 in order to run pygrub. > > This is also with QEMU 7.2, as testing with upstream QEMU is blocked > ATM, so there's a chance it has already been fixed upstream. > > Thanks, Roger. > From xen-devel-bounces@lists.xenproject.org Wed Jun 28 13:43:15 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 28 Jun 2023 13:43:15 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556483.869056 (Exim 4.92) (envelope-from ) id 1qEVRj-0003IB-Qe; Wed, 28 Jun 2023 13:42:59 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556483.869056; Wed, 28 Jun 2023 13:42:59 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEVRj-0003I4-Nt; Wed, 28 Jun 2023 13:42:59 +0000 Received: by outflank-mailman (input) for mailman id 556483; Wed, 28 Jun 2023 13:42:57 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEVRh-0003Hy-NA for xen-devel@lists.xenproject.org; Wed, 28 Jun 2023 13:42:57 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEVRg-0003sT-WB; Wed, 28 Jun 2023 13:42:57 +0000 Received: from 54-240-197-238.amazon.com ([54.240.197.238] helo=[192.168.5.86]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qEVRg-0001v3-Pu; Wed, 28 Jun 2023 13:42:56 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=67KCTjUDq+i8BNGLlG0CY6xCuFnPSN1ERt3b4aSYd0A=; b=x5rWrOrkOfjjQ9OnhKyggO9gNT 6PpVVZsgDFwViTxkP7OBARYJevvlzqInssg8/IjhqwNJ3NO9jZTI1Dv4gJhmrcGpBp28PpIeQzxaH 8nS22pVli2Xkgtujrw+5mELctPnioXamzAThz2Tf18ySrOApiu3oxNVOI5zWPwXDt4hk=; Message-ID: Date: Wed, 28 Jun 2023 14:42:54 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v3 24/52] xen/mpu: build up start-of-day Xen MPU memory region map Content-Language: en-US To: Ayan Kumar Halder , Penny Zheng , xen-devel@lists.xenproject.org Cc: Stefano Stabellini , Bertrand Marquis , Volodymyr Babchuk , Wei Chen References: <20230626033443.2943270-1-Penny.Zheng@arm.com> <20230626033443.2943270-25-Penny.Zheng@arm.com> <778688ab-8fd4-2b06-e644-b5a013bb56f7@amd.com> <39a5a729-0099-67e4-bf4a-c65ae99a4619@xen.org> <37e2856b-038e-6a3a-a6ff-c518dfeda552@amd.com> From: Julien Grall In-Reply-To: <37e2856b-038e-6a3a-a6ff-c518dfeda552@amd.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Hi Ayan, On 28/06/2023 14:22, Ayan Kumar Halder wrote: > > On 28/06/2023 12:17, Julien Grall wrote: >> Hi, > Hi Julien, >> >> On 28/06/2023 11:55, Ayan Kumar Halder wrote: >>> On 26/06/2023 04:34, Penny Zheng wrote: >>>> CAUTION: This message has originated from an External Source. Please >>>> use proper judgment and caution when opening attachments, clicking >>>> links, or responding to this email. >>>> >>>> >>>> The start-of-day Xen MPU memory region layout shall be like >>>> as follows: >>>> >>>> xen_mpumap[0] : Xen text >>>> xen_mpumap[1] : Xen read-only data >>>> xen_mpumap[2] : Xen read-only after init data >>>> xen_mpumap[3] : Xen read-write data >>>> xen_mpumap[4] : Xen BSS >>>> xen_mpumap[5] : Xen init text >>>> xen_mpumap[6] : Xen init data >>>> >>>> The layout shall be compliant with what we describe in xen.lds.S, >>>> or the codes need adjustment. >>>> >>>> Signed-off-by: Penny Zheng >>>> Signed-off-by: Wei Chen >>>> --- >>>> v3: >>>> - cache maintanence for safety when modifying MPU memory mapping table >>>> - Hardcode index for all data/text sections >>>> - To make sure that alternative instructions are included, use >>>> "_einitext" >>>> as the start of the "Init data" section. >>>> --- >>> < snip> >>>> +/* >>>> + * Static start-of-day Xen EL2 MPU memory region layout: >>>> + * >>>> + *     xen_mpumap[0] : Xen text >>>> + *     xen_mpumap[1] : Xen read-only data >>>> + *     xen_mpumap[2] : Xen read-only after init data >>>> + *     xen_mpumap[3] : Xen read-write data >>>> + *     xen_mpumap[4] : Xen BSS >>>> + *     xen_mpumap[5] : Xen init text >>>> + *     xen_mpumap[6] : Xen init data >>>> + * >>>> + * Clobbers x0 - x6 >>>> + * >>>> + * It shall be compliant with what describes in xen.lds.S, or the >>>> below >>>> + * codes need adjustment. >>>> + */ >>>> +ENTRY(prepare_early_mappings) >>>> +    /* x0: region sel */ >>>> +    mov   x0, xzr >>>> +    /* Xen text section. */ >>>> +    load_paddr x1, _stext >>>> +    load_paddr x2, _etext >>>> +    prepare_xen_region x0, x1, x2, x3, x4, x5, x6, >>>> attr_prbar=REGION_TEXT_PRBAR >>>> + >>>> +    add   x0, x0, #1 >>>> +    /* Xen read-only data section. */ >>>> +    load_paddr x1, _srodata >>>> +    load_paddr x2, _erodata >>>> +    prepare_xen_region x0, x1, x2, x3, x4, x5, x6, >>>> attr_prbar=REGION_RO_PRBAR >>>> + >>>> +    add   x0, x0, #1 >>>> +    /* Xen read-only after init data section. */ >>>> +    load_paddr x1, __ro_after_init_start >>>> +    load_paddr x2, __ro_after_init_end >>>> +    prepare_xen_region x0, x1, x2, x3, x4, x5, x6 >>>> + >>>> +    add   x0, x0, #1 >>>> +    /* Xen read-write data section. */ >>>> +    load_paddr x1, __ro_after_init_end >>>> +    load_paddr x2, __init_begin >>>> +    prepare_xen_region x0, x1, x2, x3, x4, x5, x6 >>>> + >>>> +    add   x0, x0, #1 >>>> +    /* Xen BSS section. */ >>>> +    load_paddr x1, __bss_start >>>> +    load_paddr x2, __bss_end >>>> +    prepare_xen_region x0, x1, x2, x3, x4, x5, x6 >>>> + >>>> +    add   x0, x0, #1 >>>> +    /* Xen init text section. */ >>>> +    load_paddr x1, _sinittext >>>> +    load_paddr x2, _einittext >>>> +    prepare_xen_region x0, x1, x2, x3, x4, x5, x6, >>>> attr_prbar=REGION_TEXT_PRBAR >>>> + >>>> +    add   x0, x0, #1 >>>> +    /* Xen init data section. */ >>>> +    /* >>>> +     * Even though we are not using alternative instructions in MPU >>>> yet, >>>> +     * we want to use "_einitext" for the start of the "Init data" >>>> section >>>> +     * to make sure they are included. >>>> +     */ >>>> +    load_paddr x1, _einittext >>>> +    roundup_section x1 >>>> +    load_paddr x2, __init_end >>>> +    prepare_xen_region x0, x1, x2, x3, x4, x5, x6 >>>> + >>>> +    /* Ensure any MPU memory mapping table updates made above have >>>> occurred. */ >>>> +    dsb   nshst >>>> +    ret >>>> +ENDPROC(prepare_early_mappings) >>> >>> Any reason why this is in assembly ? >> >> I am not Penny. But from my understanding, in your approach, you will >> require to disable to switch the disable the MPU for using the new >> sections. While I agree... >> >>> >>> We have implemented it in C >>> https://github.com/Xilinx/xen/blob/d1258f1cefe406a3f91237b8106746c089864651/xen/arch/arm_mpu/mm_mpu.c#L941 , so that it can be common between R82 and R52. >> >> ... this means you can share the code. It also means: >>   * You can't protect Xen properly from the start > > Yes, I see what you mean. Refer > https://github.com/Xilinx/xen/blob/d1258f1cefe406a3f91237b8106746c089864651/xen/arch/arm_mpu/arm32/mpu_v8r.S#L82C7-L82C15 , > > I am mapping CONFIG_XEN_START_ADDRESS + 2 MB. But, probably you mean > individual sections should be properly mapped from the beginning. > >>   * You need to flush the cache (not great for performance) >>   * You need to be more cautious as the MPU will be disabled for a >> short period of time. > > Yes, MPU is disabled when set_boot_mpumap() is invoked. But is this > really a security issue ? My second point is not about security, it is about been compliant with the Arm Arm. To quote what you wrote: " To avoid unexpected unaligment access fault during MPU disabled, set_boot_mpumap shall be written in assembly code." What's the guarantee that the compiler will not generate any instructions that could generate an alignment fault? Furthermore, from my understanding, at least on Armv8-A, there are caching problem because you will need to save some registers (for the call to set_boot_mpumap()) on the stack with cache disabled. This means the cache will be bypassed. But you may then restore the registers with the cache enabled (the compiler could decide that it is not necessary to read the stack before hand). So you could read the wrong data if there is a stale cacheline. So overall, I think you want to tightly control the section where the MPU is off. This means writing the logic in assembly rather than C. > > I mean only a single core is running and it is executing Xen. The MPU is > turned off for few cycles. > >> >> In fact looking at your switch code in setup_protection_regions(), I >> am not convinced you can disable the MPU in C and then call >> set_boot_mpumap(). I think the enable/disable would need to be moved >> in the assembly function. There are potentially more issues. > > disable_mpu(), enable_mpu() are written in assembly. See > https://github.com/Xilinx/xen/blob/d1258f1cefe406a3f91237b8106746c089864651/xen/arch/arm_mpu/arm32/mpu_v8r.S#L128 Right, but then you return to C world to then call set_boot_mpumap(). So you have still some part in C even if it is small. Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Wed Jun 28 13:47:18 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 28 Jun 2023 13:47:18 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556488.869067 (Exim 4.92) (envelope-from ) id 1qEVVo-0003tc-Be; Wed, 28 Jun 2023 13:47:12 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556488.869067; Wed, 28 Jun 2023 13:47:12 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEVVo-0003tV-7d; Wed, 28 Jun 2023 13:47:12 +0000 Received: by outflank-mailman (input) for mailman id 556488; Wed, 28 Jun 2023 13:47:11 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEVVm-0003tP-Sw for xen-devel@lists.xenproject.org; Wed, 28 Jun 2023 13:47:11 +0000 Received: from esa1.hc3370-68.iphmx.com (esa1.hc3370-68.iphmx.com [216.71.145.142]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 445db39b-15ba-11ee-8611-37d641c3527e; Wed, 28 Jun 2023 15:47:06 +0200 (CEST) Received: from mail-mw2nam12lp2043.outbound.protection.outlook.com (HELO NAM12-MW2-obe.outbound.protection.outlook.com) ([104.47.66.43]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 28 Jun 2023 09:47:03 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by DM6PR03MB5052.namprd03.prod.outlook.com (2603:10b6:5:1f2::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.26; Wed, 28 Jun 2023 13:46:58 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606%4]) with mapi id 15.20.6521.023; Wed, 28 Jun 2023 13:46:57 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 445db39b-15ba-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1687960027; h=message-id:date:from:subject:to:cc:references: in-reply-to:content-transfer-encoding:mime-version; bh=aNfJrvNrpuFW/ZssGos9i515PIxNEG10/+JpgklfQjk=; b=IhF2QMQol7gexyr/1jIIdJH+rhdNEwJzTpknYp+TpNWGEt+XKSoj3/Hz 8fCFs5GncVBk8+t9hyBY2iXDMpCcqCiQ+RjUcxcLROGptOvUrOuOXkaiN rC21KBQ1uaf8G/TTcDXHW413Y2R0EUdz2Fbu535tyE6F77xaIe8pX6fL9 4=; X-IronPort-RemoteIP: 104.47.66.43 X-IronPort-MID: 114884583 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:fJzga640ILLyEnvduduZIAxRtBnHchMFZxGqfqrLsTDasY5as4F+v jAeUWvTbveIYzbzeY8kb4WyoE4O65eEn9M1QVc6pSw0Hi5G8cbLO4+Ufxz6V8+wwm8vb2o8t plDNYOQRCwQZiWBzvt4GuG59RGQ7YnRGvynTraCYnsrLeNdYH9JoQp5nOIkiZJfj9G8Agec0 fv/uMSaM1K+s9JOGjt8B5mr9lU35ZwehBtC5gZlPa4R7AeE/5UoJMl3yZ+ZfiOQrrZ8RoZWd 86bpJml82XQ+QsaC9/Nut4XpWVTH9Y+lSDX4pZnc/DKbipq/0Te4Y5iXBYoUm9Fii3hojxE4 I4lWapc6+seFvakdOw1C3G0GszlVEFM0OevzXOX6aR/w6BaGpdFLjoH4EweZOUlFuhL7W5m+ fERdCJUXgq6mf+a+Im8CeRz3pUnI5y+VG8fkikIITDxK98DGMqGZpqQoNhS0XE3m9xEGuvYa 4wBcz1zYR/cYhpJfFAKFJY5m+TujX76G9FagAvN+exrvC6Nkkoti9ABM/KMEjCObexTklyVu STt+GPhDwtBHNee1SCE4jSngeqncSbTAdtORO3kq64x6LGV7jUeMjgTTleAmvWem3SwXtl2d GY+5wN7+MDe82TuFLERRSaQonGeuQUHc8FNCOB84waIooLE7gDcCmUaQzppbN09qNRwVTEsz kWOnd7iGXpoqrL9YXCX+6qQrDiyETMINmJEbigBJSMa5/HzrYd1iQjAJv54C7K8hNDxHTD2w hiJoTI4irFVitQEv4254FTGjjSEtpXPCAkv6W3/YGWh6Q9oYZ+/UKah41Pb8PVoIZ6QSx+Ku 31ss8KZ5uofAIqNkCGISeMlE7Sg5vLDOzrZ6XZmG5g66z2s4TitZ4lW6zBlDFhlOYAPfjqBS ETUvwVW5pNaInqxRaByaoO1Tc8tyMDIEtDoVevVb5xNf4J2fw+E+wlhYEeR2ybml01Eubo2P 56Abc+3DHEyE61/0D2sSuES0Lkmyzo/w2yVTpf+pzy7ybeXfmWST58fOUOSafo06qyFpgjY6 ddZOI2BzBA3bQHlSize8IpWKE9QK3E+XMrys5YPKrXFJRd6EmY8DfOX2akmZ4Fug6VSkKHP4 225XUhbjlH4gBUrNDm3V5yqU5u3Nb4XkJ7xFXZE0YqAs5T7XbuS0Q== IronPort-HdrOrdr: A9a23:tBZ+natiFwx/fTvc2nrfQtLJ7skDrtV00zEX/kB9WHVpm6uj+f xG/c576faQsl0ssR4b6LK90cW7MBbhHP1OgbX5Q43SOjUO0VHARO5fBODZslrd8kPFh4pgPN 9bAstDIey1N35crey/zSuZN5Ib4PehmZrDuc7ui01qSgFhL4FMhj0UNi+rVndxQwlNQb4Xfa Dw2vZ6 X-Talos-CUID: 9a23:sqaViGGKfBRlCnKbqmJr+UdICJkVaETD0VvoGEj7BHkxGbmaHAo= X-Talos-MUID: =?us-ascii?q?9a23=3AwhmkOA1P3I6iIPCyUQ5Oy9OOjzUjuqmULUUWna4?= =?us-ascii?q?9t+6VDyJ1MB7Cph6qa9py?= X-IronPort-AV: E=Sophos;i="6.01,165,1684814400"; d="scan'208";a="114884583" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=WPGd/zr8ecwywcW4nQ6XFkQ2DvCqtuD3jWtV50/FgsleDWTw+kGIClA3s11enHs3ZDPpmEvAbRlTYYgteclyJxLJwXC6E4S9f/LWXZ9KVo9IIDLOHIHUAlJDv4lubCUCuqUyicQFHhcVVf0iFXgC3ERX7xn6HP2dvmXactLeFt6UVDKHN6OA6xqj43OFa6cIybq6UxRYiW9/QurP6MCsK9oxwma2Ef/0g4SyTnYHAKJVgkJ9Dx7o4Gctz/t/rcQFnwFifXIiI9Qf+yLOuQ4u8a7xEal6LSHXjzROXEWfOgs15a+KuZq7ZGeTXEgWOphmMDHq4HNPjFxxoDzUHp7jlw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=aNfJrvNrpuFW/ZssGos9i515PIxNEG10/+JpgklfQjk=; b=PI4GNdl6oFIIf4/JuvxMfWu/+9Myc70IdeUeWXL9AKRo3883HHFL8ctQXhqEXwTTdVm8626WgaKGXiC3uQlt3+k4/ZTVX1O/gM4dwcfuURF50NFkCzW9nES4uAbzW9I1q0cm0xs+OHMUUwM1bgfgeotqT0pGDOnUXzjH3onavSFi6gxYx/T5GaisGkoDfJg1u8H21ox0t4cEwhBgrcAxRHbY9Nk/qWHuCJvSZX5jaWoqTeEPm1x2+NuiNUQon0d+OsdGiwPN0TZ9WPWnouLkNeGk91bkFhOvrNUAPB8/98P+hJZ+1VqudTvriU+TlTFdv+sC+lnN3Q2Cgi1OOzRceA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=aNfJrvNrpuFW/ZssGos9i515PIxNEG10/+JpgklfQjk=; b=Vt4F/uMXTC210CBFuOIf5iUT7JtHCYNpb6FCRdWH2VRwjyfo9oBF7zSVjPB9pZvBjtz//haiWlsEr57JwsU+33MdZMe7LuasJPY9nFO8vs/xCBV86YBxkKpYGpQq+2z9znCadfMaJq+US007i9LaugMJp0GVq/fYTNOC2vVpXCc= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: <2a195157-fe59-3bfd-f5cb-c377d883cef4@citrix.com> Date: Wed, 28 Jun 2023 14:46:49 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 From: Andrew Cooper Subject: Re: XenSummit: Empty per-arch files Content-Language: en-GB To: Juergen Gross , xen-devel Cc: Jan Beulich , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , Stefano Stabellini , Julien Grall , Volodymyr Babchuk , Bobby Eshleman , Alistair Francis , Connor Davis , Oleksii Kurochko , Shawn Anastasio , Timothy Pearson References: <2aabfb63-1a2f-bb02-488a-ea79136bc6c0@citrix.com> <58622fcf-0939-95c5-7318-60c93307f991@suse.com> In-Reply-To: <58622fcf-0939-95c5-7318-60c93307f991@suse.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO2P265CA0279.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:a1::27) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|DM6PR03MB5052:EE_ X-MS-Office365-Filtering-Correlation-Id: 54aa276f-4cf7-4585-1a54-08db77de23dd X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: xmaHpn0JCuzHthK/Ix+9+2yyMA1iUKu5Fi8ZTIpRftdC0+abnsxUmXzXDLuuPbX2EK1xrkZep2LMw+gU8OrL0TwIuLF5l+hVmdoRdXZfKDsdcvyYshtHfJsWz6N72Wi0PJ8YS93RQBHDSaQHFxH7x6n4r5+wTUd8iEvw3HwaNOlwZWehe0QduXQsElpJP/xSQ1qs4IMXCLdpneeeSslT3YDj9SMpX037RZm9RJr/vJNaY1ir/pM/IfUPxN0DJ5JdpykPW02rdg4utZvF4/YoUMeSpCtHwy7FaGt1uOcmIsj0RqGXMBRTMsZrXGd+oOdVo1i/f84MPoKeNcl2pMwCpIVosDCu8nNRsM4jaaJOOVfyM6vZmvStSrxr1/NwI9NAdOrt+kZZo0KrcVg+Rx63RPrlSGuD+xlXbtco24xemsKQfRVKXowxiRqiAbEqhQqsJik1ih53Bun4iLV1PxXV2H6ezVEgSOyLnfIVl9OOq1K5792aT5iF6TwqVsvZBSF9xAnzFPgrogMShs4qLTL/Bt7XKcPCRAkvmA90TP2BRcUBQLnv8uT4efE70aMp1qOIfEdCmeDCdRVJNAZt/g1+8O1+IwG7bpZvAafw9FIdaVwLgaNV7dXjnLtP2lcVQxVR/2SDMapUA1Z2ypBKHDulgg== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(366004)(39860400002)(396003)(136003)(376002)(346002)(451199021)(31686004)(66899021)(36756003)(53546011)(6506007)(66476007)(5660300002)(86362001)(7416002)(316002)(4326008)(66556008)(41300700001)(8936002)(38100700002)(31696002)(66946007)(82960400001)(8676002)(6486002)(6512007)(2906002)(186003)(26005)(478600001)(110136005)(54906003)(6666004)(2616005)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?OUlFMWkzMFMrRUZydGhRMjJlMlVERVFGdHBuRnNWOEFqb2U3eUEyQjFSamI5?= =?utf-8?B?empPMGMzOUE4RDlHckg5U2IvNXRtdG5LQjVXSXhKd0N3Y1BJeWRmQVpreWtu?= =?utf-8?B?enlrcStWdnpETEV0UytCaGltN2tOSit2NTBLN1VaSWMwNkpvb0t5YS9nS29Z?= =?utf-8?B?cjlESHRwMFpzelpqWElqMVJQY3JYNFZMOTNXSmZYR0ZxcG83Vkg2UStsdFV0?= =?utf-8?B?aEUyZU55ZjE0a0x6aHhEM0xOczJvTmgzME1sRHU2eUdkbGJuS01FZjBtZ2p1?= =?utf-8?B?S09sbC9NaGU1RG5jNVE4Snp1STdHLytjSW0vakxYeWxiaGwvcDM2dDJLazRX?= =?utf-8?B?RlJoZXRCM0s1aU1lVGpaTk91TjF1YXBtRm5tcFczdEtWWWI2aTVCN0tCMkM5?= =?utf-8?B?UWhpWS8yYVVnQmFKYmQwc1BnbTh1Ymx1Rml3OVh4QjBCSWs1L29OcWZ2S0NG?= =?utf-8?B?Z1hJV0lXSE9TcHp6Unp2L0xFc21ocUdtRjd3akgwSG5UVFNWb0hxdFNCOXpt?= =?utf-8?B?ZGhJY2hDbTU2enR6S2hVa1hOVmZwYlJOVHFBQlBKRjR3OWwwaTVmRWczVFV5?= =?utf-8?B?YTEzNnFwSXJORDdtK3dqeUJMcWVUNmRmSUVpOERKMld5d2NjbVBYZDBMRXVP?= =?utf-8?B?cHNnWFJMUDhOYklBWmt6UjZWTHNsTnBLbVRhanA4a1J3MjNUNjZhdkdVcm5u?= =?utf-8?B?clo3S2VCMjgyQ3JkS0wwODl6Ry9NeUhjWWFLRG5SQjI1emg4SnM4eWRvRG1Y?= =?utf-8?B?UWczZTMvRWxNaHN4YWZGU3M2TWJnZXM2ZTZrclc4QjNDMEp4OGVpN3VoY3FM?= =?utf-8?B?TkVOMW81cWNaN2JnamlidU1oalh4N3NoVWhyakdRZ0M2b3NGWStNM1piS3BL?= =?utf-8?B?TkJuK2NIVzN3Qzd3U0Z3UkJKUXdiY0NGc3dad3BRdVY2c3p0RWJVcXRiTlA5?= =?utf-8?B?OHRnamNFbkIvWFVIUkJxS0F3WXFhWEN1UWFoMldPVVNLOXlUdS9MUFBuTzMy?= =?utf-8?B?QndKSmVEV2NuTE1lZ3dLVG1iSWJVa1VNUnpuRDlHNzcxNXRDU3F5blBySTZX?= =?utf-8?B?MzNPd25Ya0VYdUp3N01IZ2tuZlpFeWFxckdaWkF3cnMzMWt0b0RMYlROTnor?= =?utf-8?B?SEY1N1VDSlFHS2FBZFk5VFhjZmhMdWVjUDJmMFUwWWFQK1Axb1FJRlZwRGJt?= =?utf-8?B?VWRnRnJqNVNheFJudjJaeGJQeVFwU3VRNE1KRHhIMUhyTzZPd3dZa0tiOTNL?= =?utf-8?B?NG9OYmRPN3BFZytxSllWMUVib01DTGVuL3ZLcUtPMHNkVlRYYUl4dGRUSWdF?= =?utf-8?B?VFc2bWQvcHcrWFNWcElDSkMvVGZOZVdJUU1OM3R0akVxbFI1S0JSMitCSEs2?= =?utf-8?B?aitVWGxiTUJxUEEwVjU4U3EvVnN3MkFzU2lGWDVyVDdwbGIzeTQrTS9xdHUx?= =?utf-8?B?QWhzaTF2V3NkZUZYdVJ6RCtiL3laNHRRakExTGxOeEdOVDJPYTdZYlFFN0Ny?= =?utf-8?B?c2hnaHBzT3BLZ2xWdXZjWlRta2xVZS8wUm9QUWpRaDF1cHk2MjFpSjF2bG5Y?= =?utf-8?B?eCt0U1habmFGRGgxU0tqR1EyeFpTM05HbHBROWYwMXNHNGkwcDJ0VWROT0Ji?= =?utf-8?B?aEVkRU1SNi95ektHQkg1OEpqNExPYVlYb3Jvc3k1SlBqZ1BhcXZqWENScjVp?= =?utf-8?B?TzFsRlgrc054QU9UMmFkYUNUN3ZseStEdzlqQmRHenVjRERhRmVJWkRqcGc1?= =?utf-8?B?VFArTzQwQWZxcGZGcnEzeUJ6M2EvQWxxeEEyY1BFbFV4RjZQSXc3WDhpZnZ4?= =?utf-8?B?U1hNRk53TnRMbWovZmpwb2F3a3I1cFRXZS9TK0ZWaUpWWFNTSTlPOHlKRjFS?= =?utf-8?B?MkZ1VE83M3hjb0VRY2FIVjMxTkJMSnZyd0d0b1RsS0syenNsWStrRjFuNTdI?= =?utf-8?B?TXpvU0dpKzg3RDBvVWl4dG5oRU52MCtyUUY5OXoxbVMwWklwaG42U2hBUzls?= =?utf-8?B?eFpEbFVHUHRyZ3YwbXRSekErTXN5aExTeDdPRGtyelZLRzRwWEU0K2pmZnBt?= =?utf-8?B?TG1TL3k0NDVuazl0b0lGMWpZRHNKUHVXV2JKRDhxbjlROTJvQTI4bTVHWFRW?= =?utf-8?B?ZENpM3V3ODQ1eENuU2V3a2ZIaEVEbnhOdWN0bm1jb0cyUGFSUXYrMEdWclJo?= =?utf-8?B?K3c9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: =?utf-8?B?OTU4aGpGMGRGSTZBUmJrbzFIMlZDWU9FMDRZRFYxVURoMi9uSXBhQ2dFYVhW?= =?utf-8?B?ck80dHM5eVBCRzVidks2MjliSGt2NHFXaUtnNnR2blVlUHcwTDl3QVVJZzdD?= =?utf-8?B?bTNUTEpZY1NKRXB5QU1XTWMzRVNGNVlOKzJ1YTdlNkdMYUNyRXJRSnRRRmRX?= =?utf-8?B?R1hrRXpjelR4SzgxcXlEMk5pVVJPT08vN04zbXZWTDZNRklMTTdnU2pFN2pE?= =?utf-8?B?WFBYQjhINW5kb3A2U1ZTOVNwWDR0QkZFMEg2SjEreXZuTWloVEF3akdBTE9O?= =?utf-8?B?allrNldveThHcHFuY0dELzFrMnZrTFUwc2pERlF6UXBLSWt5emxwTWxqNGVh?= =?utf-8?B?V3JUK3pydHREcHc0czZoTWptQnVacTBDRmJUSmxVM29aM3hCU2dtSml5WkNr?= =?utf-8?B?bDZuZ2lrNFRvZ282M2VOditrSzhJQzZnNG9DdDBKUThVUDZRRkZveERTWU1m?= =?utf-8?B?d2d1Q05BVTdodG5SM2dMc003dFFTOUFFUXZJMS9IcU5xMmRGY042Z1RDdUtn?= =?utf-8?B?dDZYZjJkTVZIK29tVk9JQUZkaVlxMm1wUW9zeExCbkJYUzJRbjk1VGRhQktQ?= =?utf-8?B?ZExXcjVoOXJrQWZpdDc3TG54eWFMbHB4blRnRGxEN25vVE9ERkF3QUFiREJw?= =?utf-8?B?MXFrSGZpdlg0YVVDUW1kNVd2TWxkMEVMUzMxS2dLMTVhRVliY3pFcVVGRnFm?= =?utf-8?B?b0ljR3NsZFVwSEhDcW4yYUhMN2l3S0VaSmIyWVp0eEE5aWNGbmFmTTRQTisx?= =?utf-8?B?WVBUR1lsOElxNlpWNlBZbXhJQVhIRUtpSlM2N3dvT2JMaXg0WHEzVFJKbW5Q?= =?utf-8?B?Y3JBVnNvRkpZb2drWTFFUE1JR3NEM2VqSzhyem1PWlhsZE41eisza2F5OWNX?= =?utf-8?B?SS9SUmhlalBlV0dsRUpyNW5YM3BEc3FSZStSeHVaRGkxS1BIZWMzMC9aWGJw?= =?utf-8?B?cmQ5OVhVM3JrREQvVVpwREdjM1pMSEVBRVo4THF5WjlmY0tXQXd0NUNBcStF?= =?utf-8?B?YnhSbC9XWGJRbjJrMld5bjVrcktMT2VEdWtkcjdSalpBeEsxTEdsOHJ4eXNN?= =?utf-8?B?bzNmY012YWZUTEhTWUxJeWcyazVGVEJhTUJYRzFCYnNUY3A4RGhScTdFUW5x?= =?utf-8?B?SDJrN2VsL0pTQ3Rkc1lTNUJHQldxdlhJdGhCS2tZSWx3ZWk0bHh2UWtZajdE?= =?utf-8?B?N3E4S3l3Y1Zka1RyM2UwS0VoQTROa3JTQ09CQ3hSUUpEbTJpRkdJRllnU2ZR?= =?utf-8?B?ckdzbjRnZVJIQ0FHRHJJZUFydDNudFNrck8xdXVVK0NhM3B6UG9pZDgxdFZ4?= =?utf-8?Q?g7WT5o7yujj7k=3D?= X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 54aa276f-4cf7-4585-1a54-08db77de23dd X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Jun 2023 13:46:57.4095 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: db6zSdWfCLPWWtkkJk5AGulJrsuvgZTQPlJB1k3ZZsuA/vo6nQ36CQUZ8j1DwWGn2T0VxkijRLUiIQ2kx106ZRY2rH9hUgg+wuaosUlzdFs= X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR03MB5052 On 28/06/2023 2:26 pm, Juergen Gross wrote: > On 28.06.23 13:32, Andrew Cooper wrote: >> Hello, >> >> This wasn't a formal discussion point at XenSummit, but Oleksii pointed >> out that it was still a problem, hence this thread. >> >> As we take on more architectures, it becomes more and more important for >> things to be handled in a mostly-common way.  With that comes quite a >> lot of including , and the arch one being a stub >> in simple cases. >> >> It would be nice to get rid of the stub files; they're irritating to >> deal with, both when refactoring and simply for the file bloat they >> create. >> >> There are two options which come to mind. >> >> 1) Use __has_include().  This would be ideal, but would require us >> bumping the minimum GCC version to 4.9.2 as a prerequisite.  I'm not >> aware of any way to emulate the necessary behaviour on older toolchains. >> >> 2) Have a stub "architecture" which is always last on the include path. >> This would reduce the number of stub files from one set per arch, to >> only one set. >> >> Anything else that I've missed? > > What about a make rule creating an empty include file if it is missing? Wouldn't that cause a typo'd header file name to spring into existence ? And it would cause a build to leave the working tree dirty. ~Andrew From xen-devel-bounces@lists.xenproject.org Wed Jun 28 13:54:28 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 28 Jun 2023 13:54:28 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556493.869076 (Exim 4.92) (envelope-from ) id 1qEVce-0005Lo-1N; Wed, 28 Jun 2023 13:54:16 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556493.869076; Wed, 28 Jun 2023 13:54:16 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEVcd-0005Lh-Ug; Wed, 28 Jun 2023 13:54:15 +0000 Received: by outflank-mailman (input) for mailman id 556493; Wed, 28 Jun 2023 13:54:15 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEVcd-0005La-26 for xen-devel@lists.xenproject.org; Wed, 28 Jun 2023 13:54:15 +0000 Received: from smtp-out1.suse.de (smtp-out1.suse.de [195.135.220.28]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 438f14ca-15bb-11ee-b237-6b7b168915f2; Wed, 28 Jun 2023 15:54:13 +0200 (CEST) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by smtp-out1.suse.de (Postfix) with ESMTPS id EE1F82189A; Wed, 28 Jun 2023 13:54:12 +0000 (UTC) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id 75EFF138EF; Wed, 28 Jun 2023 13:54:12 +0000 (UTC) Received: from dovecot-director2.suse.de ([192.168.254.65]) by imap2.suse-dmz.suse.de with ESMTPSA id 2fE6G4Q7nGQ0DgAAMHmgww (envelope-from ); Wed, 28 Jun 2023 13:54:12 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 438f14ca-15bb-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1; t=1687960452; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=dFpQfUxUsCp/V+QjVU55xiHyRkbe4P7IY0pmI1UEDJM=; b=pky9Q/sVQuP963cR8aD325/jeA7M3SaK4e+dq6qaMjtHHCb41z51X35m1rBnmQ9YGnPboC 89TuuZ6f6eoaTMrHGqit3nFF+geO1GXOdcrB/n30gyKPCaV45PZZC3LrJauKMzKNaigg9h ZzwIqPk91PLJ+mkpHNAGjNZJ2OpmsoA= Message-ID: Date: Wed, 28 Jun 2023 15:54:11 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Content-Language: en-US To: Andrew Cooper , xen-devel Cc: Jan Beulich , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , Stefano Stabellini , Julien Grall , Volodymyr Babchuk , Bobby Eshleman , Alistair Francis , Connor Davis , Oleksii Kurochko , Shawn Anastasio , Timothy Pearson References: <2aabfb63-1a2f-bb02-488a-ea79136bc6c0@citrix.com> <58622fcf-0939-95c5-7318-60c93307f991@suse.com> <2a195157-fe59-3bfd-f5cb-c377d883cef4@citrix.com> From: Juergen Gross Subject: Re: XenSummit: Empty per-arch files In-Reply-To: <2a195157-fe59-3bfd-f5cb-c377d883cef4@citrix.com> Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="------------5B8zfuquakIOvB8XYE6cSaNh" This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --------------5B8zfuquakIOvB8XYE6cSaNh Content-Type: multipart/mixed; boundary="------------l6nmx8Fr3zFFzSug2WmSF2DT"; protected-headers="v1" From: Juergen Gross To: Andrew Cooper , xen-devel Cc: Jan Beulich , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , Stefano Stabellini , Julien Grall , Volodymyr Babchuk , Bobby Eshleman , Alistair Francis , Connor Davis , Oleksii Kurochko , Shawn Anastasio , Timothy Pearson Message-ID: Subject: Re: XenSummit: Empty per-arch files References: <2aabfb63-1a2f-bb02-488a-ea79136bc6c0@citrix.com> <58622fcf-0939-95c5-7318-60c93307f991@suse.com> <2a195157-fe59-3bfd-f5cb-c377d883cef4@citrix.com> In-Reply-To: <2a195157-fe59-3bfd-f5cb-c377d883cef4@citrix.com> --------------l6nmx8Fr3zFFzSug2WmSF2DT Content-Type: multipart/mixed; boundary="------------54Molu28xgQqsYXqf0GBQ960" --------------54Molu28xgQqsYXqf0GBQ960 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: base64 T24gMjguMDYuMjMgMTU6NDYsIEFuZHJldyBDb29wZXIgd3JvdGU6DQo+IE9uIDI4LzA2LzIw MjMgMjoyNiBwbSwgSnVlcmdlbiBHcm9zcyB3cm90ZToNCj4+IE9uIDI4LjA2LjIzIDEzOjMy LCBBbmRyZXcgQ29vcGVyIHdyb3RlOg0KPj4+IEhlbGxvLA0KPj4+DQo+Pj4gVGhpcyB3YXNu J3QgYSBmb3JtYWwgZGlzY3Vzc2lvbiBwb2ludCBhdCBYZW5TdW1taXQsIGJ1dCBPbGVrc2lp IHBvaW50ZWQNCj4+PiBvdXQgdGhhdCBpdCB3YXMgc3RpbGwgYSBwcm9ibGVtLCBoZW5jZSB0 aGlzIHRocmVhZC4NCj4+Pg0KPj4+IEFzIHdlIHRha2Ugb24gbW9yZSBhcmNoaXRlY3R1cmVz LCBpdCBiZWNvbWVzIG1vcmUgYW5kIG1vcmUgaW1wb3J0YW50IGZvcg0KPj4+IHRoaW5ncyB0 byBiZSBoYW5kbGVkIGluIGEgbW9zdGx5LWNvbW1vbiB3YXkuwqAgV2l0aCB0aGF0IGNvbWVz IHF1aXRlIGENCj4+PiBsb3Qgb2YgPHhlbi9mb28uaD4gaW5jbHVkaW5nIDxhc20vZm9vLmg+ LCBhbmQgdGhlIGFyY2ggb25lIGJlaW5nIGEgc3R1Yg0KPj4+IGluIHNpbXBsZSBjYXNlcy4N Cj4+Pg0KPj4+IEl0IHdvdWxkIGJlIG5pY2UgdG8gZ2V0IHJpZCBvZiB0aGUgc3R1YiBmaWxl czsgdGhleSdyZSBpcnJpdGF0aW5nIHRvDQo+Pj4gZGVhbCB3aXRoLCBib3RoIHdoZW4gcmVm YWN0b3JpbmcgYW5kIHNpbXBseSBmb3IgdGhlIGZpbGUgYmxvYXQgdGhleQ0KPj4+IGNyZWF0 ZS4NCj4+Pg0KPj4+IFRoZXJlIGFyZSB0d28gb3B0aW9ucyB3aGljaCBjb21lIHRvIG1pbmQu DQo+Pj4NCj4+PiAxKSBVc2UgX19oYXNfaW5jbHVkZSgpLsKgIFRoaXMgd291bGQgYmUgaWRl YWwsIGJ1dCB3b3VsZCByZXF1aXJlIHVzDQo+Pj4gYnVtcGluZyB0aGUgbWluaW11bSBHQ0Mg dmVyc2lvbiB0byA0LjkuMiBhcyBhIHByZXJlcXVpc2l0ZS7CoCBJJ20gbm90DQo+Pj4gYXdh cmUgb2YgYW55IHdheSB0byBlbXVsYXRlIHRoZSBuZWNlc3NhcnkgYmVoYXZpb3VyIG9uIG9s ZGVyIHRvb2xjaGFpbnMuDQo+Pj4NCj4+PiAyKSBIYXZlIGEgc3R1YiAiYXJjaGl0ZWN0dXJl IiB3aGljaCBpcyBhbHdheXMgbGFzdCBvbiB0aGUgaW5jbHVkZSBwYXRoLg0KPj4+IFRoaXMg d291bGQgcmVkdWNlIHRoZSBudW1iZXIgb2Ygc3R1YiBmaWxlcyBmcm9tIG9uZSBzZXQgcGVy IGFyY2gsIHRvDQo+Pj4gb25seSBvbmUgc2V0Lg0KPj4+DQo+Pj4gQW55dGhpbmcgZWxzZSB0 aGF0IEkndmUgbWlzc2VkPw0KPj4NCj4+IFdoYXQgYWJvdXQgYSBtYWtlIHJ1bGUgY3JlYXRp bmcgYW4gZW1wdHkgaW5jbHVkZSBmaWxlIGlmIGl0IGlzIG1pc3Npbmc/DQo+IA0KPiBXb3Vs ZG4ndCB0aGF0IGNhdXNlIGEgdHlwbydkIGhlYWRlciBmaWxlIG5hbWUgdG8gc3ByaW5nIGlu dG8gZXhpc3RlbmNlID8NCj4gDQo+IEFuZCBpdCB3b3VsZCBjYXVzZSBhIGJ1aWxkIHRvIGxl YXZlIHRoZSB3b3JraW5nIHRyZWUgZGlydHkuDQoNCkRlcGVuZHMgaG93IGl0IGlzIGRvbmUu DQoNClRoZXJlIGNvdWxkIGJlIGEgZmlsZSBjb250YWluaW5nIHRoZSBhbGxvd2VkIGhlYWRl ciBuYW1lcyB0byBiZSBnZW5lcmF0ZWQuDQoNCkFuZCB0aGUgZmlsZXMgd291bGRuJ3QgbmVl ZCB0byBiZSBnZW5lcmF0ZWQgaW4gYXJjaC88YXJjaD4vaW5jbHVkZS9hc20sIGJ1dA0KY291 bGQgYmUgZ2VuZXJhdGVkIGluIGUuZy4gaW5jbHVkZS9nZW5lcmF0ZWQvYXNtIHdoaWNoIHdv dWxkIGJlIHVzZWQgYWZ0ZXINCnRoZSBhcmNoIGluY2x1ZGUgcGF0aC4NCg0KVGhpcyB3b3Vs ZCBiYXNpY2FsbHkgYmUgdGhlIGNlbnRyYWwgc3R1YiB2YXJpYW50IHlvdSB3ZXJlIG1lbnRp b25pbmcsIGJ1dA0KYnVpbGRpbmcgaXQgZHluYW1pY2FsbHkuDQoNCg0KSnVlcmdlbg0K --------------54Molu28xgQqsYXqf0GBQ960 Content-Type: application/pgp-keys; name="OpenPGP_0xB0DE9DD628BF132F.asc" Content-Disposition: attachment; filename="OpenPGP_0xB0DE9DD628BF132F.asc" Content-Description: OpenPGP public key Content-Transfer-Encoding: quoted-printable -----BEGIN PGP PUBLIC KEY BLOCK----- xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjri oyspZKOBycWxw3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2 kaV2KL9650I1SJvedYm8Of8Zd621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i 1TXkH09XSSI8mEQ/ouNcMvIJNwQpd369y9bfIhWUiVXEK7MlRgUG6MvIj6Y3Am/B BLUVbDa4+gmzDC9ezlZkTZG2t14zWPvxXP3FAp2pkW0xqG7/377qptDmrk42GlSK N4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEBAAHNHEp1ZXJnZW4gR3Jvc3Mg PGpnQHBmdXBmLm5ldD7CwHkEEwECACMFAlOMcBYCGwMHCwkIBwMCAQYVCAIJCgsE FgIDAQIeAQIXgAAKCRCw3p3WKL8TL0KdB/93FcIZ3GCNwFU0u3EjNbNjmXBKDY4F UGNQH2lvWAUy+dnyThpwdtF/jQ6j9RwE8VP0+NXcYpGJDWlNb9/JmYqLiX2Q3Tye vpB0CA3dbBQp0OW0fgCetToGIQrg0MbD1C/sEOv8Mr4NAfbauXjZlvTj30H2jO0u +6WGM6nHwbh2l5O8ZiHkH32iaSTfN7Eu5RnNVUJbvoPHZ8SlM4KWm8rG+lIkGurq qu5gu8q8ZMKdsdGC4bBxdQKDKHEFExLJK/nRPFmAuGlId1E3fe10v5QL+qHI3EIP tyfE7i9Hz6rVwi7lWKgh7pe0ZvatAudZ+JNIlBKptb64FaiIOAWDCx1SzR9KdWVy Z2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+wsB5BBMBAgAjBQJTjHCvAhsDBwsJ CAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey/HmQf/RtI7kv5A2PS4 RF7HoZhPVPogNVbC4YA6lW7DrWf0teC0RR3MzXfy6pJ+7KLgkqMlrAbN/8Dvjoz7 8X+5vhH/rDLa9BuZQlhFmvcGtCF8eR0T1v0nC/nuAFVGy+67q2DH8As3KPu0344T BDpAvr2uYM4tSqxK4DURx5INz4ZZ0WNFHcqsfvlGJALDeE0LhITTd9jLzdDad1pQ SToCnLl6SBJZjDOX9QQcyUigZFtCXFst4dlsvddrxyqT1f17+2cFSdu7+ynLmXBK 7abQ3rwJY8SbRO2iRulogc5vr/RLMMlscDAiDkaFQWLoqHHOdfO9rURssHNN8WkM nQfvUewRz80hSnVlcmdlbiBHcm9zcyA8amdyb3NzQG5vdmVsbC5jb20+wsB5BBMB AgAjBQJTjHDXAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/ Ey8PUQf/ehmgCI9jB9hlgexLvgOtf7PJnFOXgMLdBQgBlVPO3/D9R8LtF9DBAFPN hlrsfIG/SqICoRCqUcJ96Pn3P7UUinFG/I0ECGF4EvTE1jnDkfJZr6jrbjgyoZHi w/4BNwSTL9rWASyLgqlA8u1mf+c2yUwcGhgkRAd1gOwungxcwzwqgljf0N51N5Jf VRHRtyfwq/ge+YEkDGcTU6Y0sPOuj4Dyfm8fJzdfHNQsWq3PnczLVELStJNdapwP OoE+lotufe3AM2vAEYJ9rTz3Cki4JFUsgLkHFqGZarrPGi1eyQcXeluldO3m91NK /1xMI3/+8jbO0tsn1tqSEUGIJi7ox80eSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1 c2UuZGU+wsB5BBMBAgAjBQJTjHDrAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgEC F4AACgkQsN6d1ii/Ey+LhQf9GL45eU5vOowA2u5N3g3OZUEBmDHVVbqMtzwlmNC4 k9Kx39r5s2vcFl4tXqW7g9/ViXYuiDXb0RfUpZiIUW89siKrkzmQ5dM7wRqzgJpJ wK8Bn2MIxAKArekWpiCKvBOB/Cc+3EXE78XdlxLyOi/NrmSGRIov0karw2RzMNOu 5D+jLRZQd1Sv27AR+IP3I8U4aqnhLpwhK7MEy9oCILlgZ1QZe49kpcumcZKORmzB TNh30FVKK1EvmV2xAKDoaEOgQB4iFQLhJCdP1I5aSgM5IVFdn7v5YgEYuJYx37Io N1EblHI//x/e2AaIHpzK5h88NEawQsaNRpNSrcfbFmAg987ATQRTjHAWAQgAyzH6 AOODMBjgfWE9VeCgsrwH3exNAU32gLq2xvjpWnHIs98ndPUDpnoxWQugJ6MpMncr 0xSwFmHEgnSEjK/PAjppgmyc57BwKII3sV4on+gDVFJR6Y8ZRwgnBC5mVM6JjQ5x Dk8WRXljExRfUX9pNhdE5eBOZJrDRoLUmmjDtKzWaDhIg/+1Hzz93X4fCQkNVbVF LELU9bMaLPBG/x5q4iYZ2k2ex6d47YE1ZFdMm6YBYMOljGkZKwYde5ldM9mo45mm we0icXKLkpEdIXKTZeKDO+Hdv1aqFuAcccTg9RXDQjmwhC3yEmrmcfl0+rPghO0I v3OOImwTEe4co3c1mwARAQABwsBfBBgBAgAJBQJTjHAWAhsMAAoJELDendYovxMv Q/gH/1ha96vm4P/L+bQpJwrZ/dneZcmEwTbe8YFsw2V/Buv6Z4Mysln3nQK5ZadD 534CF7TDVft7fC4tU4PONxF5D+/tvgkPfDAfF77zy2AH1vJzQ1fOU8lYFpZXTXIH b+559UqvIB8AdgR3SAJGHHt4RKA0F7f5ipYBBrC6cyXJyyoprT10EMvU8VGiwXvT yJz3fjoYsdFzpWPlJEBRMedCot60g5dmbdrZ5DWClAr0yau47zpWj3enf1tLWaqc suylWsviuGjKGw7KHQd3bxALOknAp4dN3QwBYCKuZ7AddY9yjynVaD5X7nF9nO5B jR/i1DG86lem3iBDXzXsZDn8R38=3D =3D2wuH -----END PGP PUBLIC KEY BLOCK----- --------------54Molu28xgQqsYXqf0GBQ960-- --------------l6nmx8Fr3zFFzSug2WmSF2DT-- --------------5B8zfuquakIOvB8XYE6cSaNh Content-Type: application/pgp-signature; name="OpenPGP_signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="OpenPGP_signature" -----BEGIN PGP SIGNATURE----- wsB5BAABCAAjFiEEhRJncuj2BJSl0Jf3sN6d1ii/Ey8FAmScO4MFAwAAAAAACgkQsN6d1ii/Ey9/ Hwf+O63vwOJ/dY/zUhMJQXDf9Zm0bpFsSg/PdW/1S82cR0buelXdOtegQPU7QzoI445cCTaImZq4 qUYPv8XhqhLz+Ko5rYg9kUbIAyZ6Olc67J5w7fcp14UYQLRlvevpDITnGCW8k8R8awZI4313LGA3 ++UlEUFfsXX8aOVAHlREFqHUkmTZVYg5tJGE+x0P2Z1VGMgqfOWIuohc5tBQEGaXHJ3U4R3sZmIo TeYg2PymDbl8M0VkiGpug8+g/LC0zY6W7LF0wHFaiIMQzRWzIsObNBW+I9xzI7GhYuYKVkrO4urN t9h39G6dp8Pbl6x5WwH/lStZSUWHqilOvJkr1k+VbA== =vrle -----END PGP SIGNATURE----- --------------5B8zfuquakIOvB8XYE6cSaNh-- From xen-devel-bounces@lists.xenproject.org Wed Jun 28 14:54:28 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 28 Jun 2023 14:54:28 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556508.869091 (Exim 4.92) (envelope-from ) id 1qEWYg-0003br-JI; Wed, 28 Jun 2023 14:54:14 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556508.869091; Wed, 28 Jun 2023 14:54:14 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEWYg-0003bk-G6; Wed, 28 Jun 2023 14:54:14 +0000 Received: by outflank-mailman (input) for mailman id 556508; Wed, 28 Jun 2023 14:54:13 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEWYf-0003be-5r for xen-devel@lists.xenproject.org; Wed, 28 Jun 2023 14:54:13 +0000 Received: from esa1.hc3370-68.iphmx.com (esa1.hc3370-68.iphmx.com [216.71.145.142]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id a28ed2de-15c3-11ee-b237-6b7b168915f2; Wed, 28 Jun 2023 16:54:10 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: a28ed2de-15c3-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1687964050; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=QwT7e436gD/rR6Mf07LsXwBWFj0yrd1gB8rRc4oOkAM=; b=MEqUgtu+SVZi4l6cHbgJCUB8ME6xE2DfiVuQhrlerv0VMe0B6bP1bLCV +JXDw3Hr6gIH2AQxBfM+nzM6yF+u7TRJJK72vRo2H0T6AFKJX8bcekfxN NzZ2iAHua/pEeFuZ7UQHtD+o9uc/wTSMJ4EGS1EKNiDF2RA7PmkXIqPq+ A=; Authentication-Results: esa1.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none X-SBRS: 4.0 X-MesageID: 114894457 X-Ironport-Server: esa1.hc3370-68.iphmx.com X-Remote-IP: 162.221.156.123 X-Policy: $RELAYED IronPort-Data: A9a23:8C1Sb6zu6sIRcgthEZh6t+cawSrEfRIJ4+MujC+fZmUNrF6WrkUDz TBND27QO/3bYjDzL9knPtjjoBtTuJ+Dz4VqTgdl+SAxQypGp/SeCIXCJC8cHc8wwu7rFxs7s ppEOrEsCOhuExcwcz/0auCJQUFUjP3OHfykTrafYEidfCc8IA85kxVvhuUltYBhhNm9Emult Mj75sbSIzdJ4RYtWo4vw/zF8EoHUMja4mtC5QRgP6AT5jcyqlFOZH4hDfDpR5fHatE88t6SH 47r0Ly/92XFyBYhYvvNfmHTKxBirhb6ZGBiu1IOM0SQqkEqSh8ai87XAME0e0ZP4whlqvgqo Dl7WT5cfi9yVkHEsLx1vxC1iEiSN4UekFPMCSDXXcB+UyQq2pYjqhljJBheAGEWxgp4KUtA+ qcVDgAUVwC4jsCM5ei4VcU3g9t2eaEHPKtH0p1h5TTQDPJgSpHfWaTao9Rf2V/chOgXQ6yYP ZBAL2MyMlKZOUYn1lQ/UfrSmM+BgHXlfiIeg1WSvactuEDYzRBr0airO93QEjCPbZwMwhbJ+ j6boAwVBDkqJYHPyTWs90iAn8PIlyfDUblRBZCno6sCbFq7mTVIVUx+uUGAiem0jAuyVsxSL 2QQ+zEytu4i+UqzVN7/Uhak5nmesXY0efBdDuk74wGl0bfP7kCSAW1sZiVadNUsucsyRDor/ lyEhdXkAXpoqrL9YW2Z3qeZq3W1Iyd9BW0fYS4JSyMV7t+lp5s85jrxSdJkHL+wn8fCMzj6y DCXrwAzn7wWy8UM0s2T913dnyiloJSPSwcv/xjWRUqs9AY/b4mgD6Sh7VnA8f9BNsCXVFCHt 3kfs9eS56YFCpTlvCaKSu8cEaqp4/uAOTv0jltmHp1n/DOok1aoeoZW5zNyLVloKe4LfDboZ AnYvgY5zJhXMXixbK4xYJ+rDM8qzq/IGtHsV/SSZd1LCrBqfQmO5z1nfk+X93rkiFQri6w5N padfMu2DHAVT69gyVKeW/8Q2KUwwSYW32rLWZfhwhKo0LyTaWSUT7hDO1yLBsgj66mJuhnSt dxWOM2D0Rx3WvDxeSTR/sgYKlViEJQgLcmo8YoNLLfFe1c4Xjh7UJc93I/NZaRPkasOm8H45 0itYUZ68n+lhmLrcgCVPyULhKzUYXpvkZ4qFXVybQn5gCh5PdvHALQ3LMVuI+R+nAB35bstF qReJZ3dahhaYm6fkwnxe6URu2CLmP6DoQuVdxSobzEkF3KLb1yYo4S0FucDGcRnM8ZWiSfdi +f6vu8jacBfLzmO9e6PAB5V83u/vGIGhMV5VFbSL99YdS3EqdY6dHGt06dqeJlUcH0vIwd2M S7MX3/0QsGX+ecIHCTh3/jY/+9F7cMgdqalI4UrxenvbnSLloZS6YRBTPyJbVjguJDcoc2fi RFu56ikapUvxQ8a27eQ5p43lcrSEfOz/e4FpumldV2XB2mW5kRIeSLdhpkU7fESnNe0e2KeA yqyxzWTAp3RUOuNLbLbDFNNgjirvR3MpgTv0A== IronPort-HdrOrdr: A9a23:82FkNq/0YdjAoj4jimluk+AcI+orL9Y04lQ7vn2ZKSY5TiX4rb HKoB1/73XJYVkqN03I9ervBEDiewK/yXcW2+ks1N6ZNWGLhILBFupfBODZsl7d8kPFl9K01c 1bAtJD4N+bNykGsS4tijPIb+rJw7O8gd+Vbf+19QYIcenzAZsQlzuQDGygYypLbTgDP7UVPr yG6PFKojKxEE5nFfhSVhE+Lo7+T8SgruOeXSI7 X-Talos-CUID: =?us-ascii?q?9a23=3AYvtStGnc+L7EYXljqF3pmITBDxPXOVfTwyzdBX+?= =?us-ascii?q?hMHZSQZ+vbAWT548/ltU7zg=3D=3D?= X-Talos-MUID: =?us-ascii?q?9a23=3A9K1xvg7ZOceCO5SxmpctvfJ9xoxY8vn+CE8klK8?= =?us-ascii?q?qouWDPyhIMgzenRmoF9o=3D?= X-IronPort-AV: E=Sophos;i="6.01,165,1684814400"; d="scan'208";a="114894457" From: Andrew Cooper To: Xen-devel CC: Andrew Cooper , Jan Beulich , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Wei Liu , Stefano Stabellini , Julien Grall , Volodymyr Babchuk , Bertrand Marquis , Bob Eshleman , Alistair Francis , Connor Davis , "Oleksii Kurochko" , Shawn Anastasio , Timothy Pearson , Roberto Bagnara Subject: [PATCH v2.5 3/3] xen/types: Rework stdint vs __{u,s}$N types Date: Wed, 28 Jun 2023 15:54:03 +0100 Message-ID: <20230628145403.3630-1-andrew.cooper3@citrix.com> X-Mailer: git-send-email 2.30.2 In-Reply-To: <20230627075618.1180248-4-andrew.cooper3@citrix.com> References: <20230627075618.1180248-4-andrew.cooper3@citrix.com> MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit Xen uses the stdint types. Rearrange the types headers to define the compatibility __{u,s}$N types in terms of the stdint types, not the other way around. All supported compilers on architectures other than x86 support the stdint __*_TYPE__ macros. Move these into a new xen/stdint.h to avoid them being duplicated in each architecture. For the very old x86 compilers, synthesize suitable types using GCC internals. This cleanup has the side effect of removing all use of the undocumented __signed__ GCC keyword. This is a vestigial remnant of `gcc -traditional` mode for dialetcs of C prior to the introduction of the signed keyword. No functional change. Signed-off-by: Andrew Cooper --- CC: Jan Beulich CC: Roger Pau Monné CC: Wei Liu CC: Stefano Stabellini CC: Julien Grall CC: Volodymyr Babchuk CC: Bertrand Marquis CC: Bob Eshleman CC: Alistair Francis CC: Connor Davis CC: Oleksii Kurochko CC: Shawn Anastasio CC: Timothy Pearson CC: Roberto Bagnara v2.5: * Get the #ifdef-ary the right way around v2: * Introduce xen/stdint.h as discussed at XenSummit --- xen/arch/arm/include/asm/types.h | 19 ----------------- xen/arch/riscv/include/asm/types.h | 19 ----------------- xen/arch/x86/include/asm/types.h | 14 ------------- xen/include/xen/stdint.h | 33 ++++++++++++++++++++++++++++++ xen/include/xen/types.h | 20 ++++++++---------- 5 files changed, 42 insertions(+), 63 deletions(-) create mode 100644 xen/include/xen/stdint.h diff --git a/xen/arch/arm/include/asm/types.h b/xen/arch/arm/include/asm/types.h index fb6618ef247f..545a5e9d1175 100644 --- a/xen/arch/arm/include/asm/types.h +++ b/xen/arch/arm/include/asm/types.h @@ -1,25 +1,6 @@ #ifndef __ARM_TYPES_H__ #define __ARM_TYPES_H__ -typedef __signed__ char __s8; -typedef unsigned char __u8; - -typedef __signed__ short __s16; -typedef unsigned short __u16; - -typedef __signed__ int __s32; -typedef unsigned int __u32; - -#if defined(__GNUC__) && !defined(__STRICT_ANSI__) -#if defined(CONFIG_ARM_32) -typedef __signed__ long long __s64; -typedef unsigned long long __u64; -#elif defined (CONFIG_ARM_64) -typedef __signed__ long __s64; -typedef unsigned long __u64; -#endif -#endif - typedef signed char s8; typedef unsigned char u8; diff --git a/xen/arch/riscv/include/asm/types.h b/xen/arch/riscv/include/asm/types.h index 0c0ce78c8f6e..93a680a8f323 100644 --- a/xen/arch/riscv/include/asm/types.h +++ b/xen/arch/riscv/include/asm/types.h @@ -1,25 +1,6 @@ #ifndef __RISCV_TYPES_H__ #define __RISCV_TYPES_H__ -typedef __signed__ char __s8; -typedef unsigned char __u8; - -typedef __signed__ short __s16; -typedef unsigned short __u16; - -typedef __signed__ int __s32; -typedef unsigned int __u32; - -#if defined(__GNUC__) && !defined(__STRICT_ANSI__) -#if defined(CONFIG_RISCV_32) -typedef __signed__ long long __s64; -typedef unsigned long long __u64; -#elif defined (CONFIG_RISCV_64) -typedef __signed__ long __s64; -typedef unsigned long __u64; -#endif -#endif - typedef signed char s8; typedef unsigned char u8; diff --git a/xen/arch/x86/include/asm/types.h b/xen/arch/x86/include/asm/types.h index 2d56aed66782..c9d257716551 100644 --- a/xen/arch/x86/include/asm/types.h +++ b/xen/arch/x86/include/asm/types.h @@ -1,20 +1,6 @@ #ifndef __X86_TYPES_H__ #define __X86_TYPES_H__ -typedef __signed__ char __s8; -typedef unsigned char __u8; - -typedef __signed__ short __s16; -typedef unsigned short __u16; - -typedef __signed__ int __s32; -typedef unsigned int __u32; - -#if defined(__GNUC__) && !defined(__STRICT_ANSI__) -typedef __signed__ long __s64; -typedef unsigned long __u64; -#endif - typedef signed char s8; typedef unsigned char u8; diff --git a/xen/include/xen/stdint.h b/xen/include/xen/stdint.h new file mode 100644 index 000000000000..8c8a5899373a --- /dev/null +++ b/xen/include/xen/stdint.h @@ -0,0 +1,33 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ +#ifndef __XEN_STDINT_H__ +#define __XEN_STDINT_H__ + +#ifndef __INT8_TYPE__ /* GCC <= 4.4 */ + +/* + * Define the types using GCC internal notation. Clang understands this too. + * https://gcc.gnu.org/onlinedocs/gcc/Common-Variable-Attributes.html + */ +typedef signed __attribute__((__mode__(QI))) int8_t; +typedef unsigned __attribute__((__mode__(QI))) uint8_t; +typedef signed __attribute__((__mode__(HI))) int16_t; +typedef unsigned __attribute__((__mode__(HI))) uint16_t; +typedef signed __attribute__((__mode__(SI))) int32_t; +typedef unsigned __attribute__((__mode__(SI))) uint32_t; +typedef signed __attribute__((__mode__(DI))) int64_t; +typedef unsigned __attribute__((__mode__(DI))) uint64_t; + +#else + +typedef __INT8_TYPE__ int8_t; +typedef __UINT8_TYPE__ uint8_t; +typedef __INT16_TYPE__ int16_t; +typedef __UINT16_TYPE__ uint16_t; +typedef __INT32_TYPE__ int32_t; +typedef __UINT32_TYPE__ uint32_t; +typedef __INT64_TYPE__ int64_t; +typedef __UINT64_TYPE__ uint64_t; + +#endif + +#endif /* __XEN_STDINT_H__ */ diff --git a/xen/include/xen/types.h b/xen/include/xen/types.h index 8b22a02eeaa4..c873c81ccf06 100644 --- a/xen/include/xen/types.h +++ b/xen/include/xen/types.h @@ -2,6 +2,7 @@ #define __TYPES_H__ #include +#include #include @@ -39,17 +40,14 @@ typedef __PTRDIFF_TYPE__ ptrdiff_t; #define LONG_MIN (-LONG_MAX - 1) #define ULONG_MAX (~0UL) -typedef __u8 uint8_t; -typedef __s8 int8_t; - -typedef __u16 uint16_t; -typedef __s16 int16_t; - -typedef __u32 uint32_t; -typedef __s32 int32_t; - -typedef __u64 uint64_t; -typedef __s64 int64_t; +typedef uint8_t __u8; +typedef int8_t __s8; +typedef uint16_t __u16; +typedef int16_t __s16; +typedef uint32_t __u32; +typedef int32_t __s32; +typedef uint64_t __u64; +typedef int64_t __s64; typedef __u16 __le16; typedef __u16 __be16; -- 2.30.2 From xen-devel-bounces@lists.xenproject.org Wed Jun 28 15:22:10 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 28 Jun 2023 15:22:10 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556522.869106 (Exim 4.92) (envelope-from ) id 1qEWza-0007C3-TX; Wed, 28 Jun 2023 15:22:02 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556522.869106; Wed, 28 Jun 2023 15:22:02 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEWza-0007Bw-No; Wed, 28 Jun 2023 15:22:02 +0000 Received: by outflank-mailman (input) for mailman id 556522; Wed, 28 Jun 2023 15:22:02 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEWza-0007Bm-2Y; Wed, 28 Jun 2023 15:22:02 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEWzZ-0006Iq-Ta; Wed, 28 Jun 2023 15:22:01 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEWzZ-0000dG-Er; Wed, 28 Jun 2023 15:22:01 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qEWzZ-00049c-EL; Wed, 28 Jun 2023 15:22:01 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=O2nFc4lNIVQ35rXHTKpzkP90v+kgQnp1UY5v55Sw69k=; b=in6DY1xpv1k0WxNIGtxRQcnNS7 4Kmw4RhV7hL41cMLDEfZKC4pG+gnNxxv7D1nVlRJswty61NqBuAhcYe0zCbPN4aXfTDQlJbM2OSbf WQoG7tW1zcdDwX7fqpLxlIKMX30sP6c1+Css+PYhshBDdloh9E/r2/vQhCuHFQpct6mw=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [libvirt test] 181621: tolerable FAIL - PUSHED X-Osstest-Failures: libvirt:test-amd64-i386-libvirt-pair:xen-install/dst_host:fail:heisenbug libvirt:test-amd64-i386-libvirt-raw:xen-install:fail:heisenbug libvirt:test-amd64-i386-libvirt-pair:xen-install/src_host:fail:heisenbug libvirt:test-amd64-amd64-libvirt-vhd:guest-start/debian.repeat:fail:heisenbug libvirt:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking libvirt:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking libvirt:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking libvirt:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking libvirt:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking libvirt:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking libvirt:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking libvirt:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt:saverestore-support-check:fail:nonblocking libvirt:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking libvirt:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking libvirt:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-qcow2:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-qcow2:saverestore-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking libvirt:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking libvirt:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking libvirt:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking X-Osstest-Versions-This: libvirt=d725932a283fdc8b827d83cfc5d54b38cf40592b X-Osstest-Versions-That: libvirt=ceb4dc8e17aa077a3254bace82554015d72bd71c From: osstest service owner Date: Wed, 28 Jun 2023 15:22:01 +0000 flight 181621 libvirt real [real] flight 181625 libvirt real-retest [real] http://logs.test-lab.xenproject.org/osstest/logs/181621/ http://logs.test-lab.xenproject.org/osstest/logs/181625/ Failures :-/ but no regressions. Tests which are failing intermittently (not blocking): test-amd64-i386-libvirt-pair 11 xen-install/dst_host fail in 181625 pass in 181621 test-amd64-i386-libvirt-raw 7 xen-install fail pass in 181625-retest test-amd64-i386-libvirt-pair 10 xen-install/src_host fail pass in 181625-retest test-amd64-amd64-libvirt-vhd 19 guest-start/debian.repeat fail pass in 181625-retest Tests which did not succeed, but are not blocking: test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail blocked in 181610 test-amd64-i386-libvirt-raw 14 migrate-support-check fail in 181625 never pass test-armhf-armhf-libvirt 16 saverestore-support-check fail like 181610 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail like 181610 test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-i386-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-i386-libvirt 15 migrate-support-check fail never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt 15 migrate-support-check fail never pass test-arm64-arm64-libvirt 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-armhf-armhf-libvirt 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-qcow2 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-qcow2 15 saverestore-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-armhf-armhf-libvirt-raw 14 migrate-support-check fail never pass version targeted for testing: libvirt d725932a283fdc8b827d83cfc5d54b38cf40592b baseline version: libvirt ceb4dc8e17aa077a3254bace82554015d72bd71c Last test of basis 181610 2023-06-27 04:18:54 Z 1 days Testing same since 181621 2023-06-28 04:20:33 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Fedora Weblate Translation Jiri Denemark Michal Privoznik Nikolai Barybin Weblate 김인수 jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-i386-libvirt-xsm pass test-amd64-amd64-libvirt pass test-arm64-arm64-libvirt pass test-armhf-armhf-libvirt pass test-amd64-i386-libvirt pass test-amd64-amd64-libvirt-pair pass test-amd64-i386-libvirt-pair fail test-arm64-arm64-libvirt-qcow2 pass test-armhf-armhf-libvirt-qcow2 pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw pass test-amd64-i386-libvirt-raw fail test-amd64-amd64-libvirt-vhd fail ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Pushing revision : To xenbits.xen.org:/home/xen/git/libvirt.git ceb4dc8e17..d725932a28 d725932a283fdc8b827d83cfc5d54b38cf40592b -> xen-tested-master From xen-devel-bounces@lists.xenproject.org Wed Jun 28 16:23:10 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 28 Jun 2023 16:23:10 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556528.869115 (Exim 4.92) (envelope-from ) id 1qEXwV-0005fy-5j; Wed, 28 Jun 2023 16:22:55 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556528.869115; Wed, 28 Jun 2023 16:22:55 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEXwV-0005fq-2s; Wed, 28 Jun 2023 16:22:55 +0000 Received: by outflank-mailman (input) for mailman id 556528; Wed, 28 Jun 2023 16:22:53 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEXwT-0005fj-Rg for xen-devel@lists.xenproject.org; Wed, 28 Jun 2023 16:22:53 +0000 Received: from esa1.hc3370-68.iphmx.com (esa1.hc3370-68.iphmx.com [216.71.145.142]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 039e6866-15d0-11ee-8611-37d641c3527e; Wed, 28 Jun 2023 18:22:47 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 039e6866-15d0-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1687969367; h=date:from:to:cc:subject:message-id:mime-version: content-transfer-encoding; bh=4bET0VFEQ/yWoZT9e59qk3/7ikezHUiT8HTgU0WeGmY=; b=ZG3FM3PvwRUg9QYXBOQ3UWN0bRpog7h6q6H52LcA03uDivocfXdNAVvd bzZwjq5F02jSA6nexGGTB4w7YVLPC995HE8QnthK5z9Fnh3ULLENcfl3k 7p6GFX2QbbEwBC2xpIfg1GOGv3JVe7wYAqvwF3BukGT47dzOXRPcQJMeb k=; Authentication-Results: esa1.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none X-SBRS: 4.0 X-MesageID: 114907622 X-Ironport-Server: esa1.hc3370-68.iphmx.com X-Remote-IP: 162.221.156.123 X-Policy: $RELAYED IronPort-Data: A9a23:zPB0uqIALuqeEVq6FE+R6pUlxSXFcZb7ZxGr2PjKsXjdYENSgjIAn GYYCj3Vb6mLMzT9Ltknb9629U4C6MSEy4M1TQFlqX01Q3x08seUXt7xwmUcnc+xBpaaEB84t ZV2hv3odp1coqr0/0/1WlTZhSAgk/rOHvykU7Ss1hlZHWdMUD0mhQ9oh9k3i4tphcnRKw6Ws Jb5rta31GWNglaYCUpKrfrawP9TlK6q4mhA4AZuPaojUGL2zBH5MrpOfcldEFOgKmVkNrbSb /rOyri/4lTY838FYj9yuu+mGqGiaue60Tmm0hK6aYD76vRxjnVaPpIAHOgdcS9qZwChxLid/ jnvWauYEm/FNoWU8AgUvoIx/ytWZcWq85efSZSzXFD6I+QrvBIAzt03ZHzaM7H09c5HP31M8 v8ZFwtdQUra28CG4rC7R+hV05FLwMnDZOvzu1llxDDdS/0nXYrCU+PB4towMDUY354UW6yEP oxANGQpNU6bC/FMEg5/5JYWleG0hn75YntApUicv6Yf6GnP1g1hlrPqNbI5f/TTHJkExhnG/ DiuE2LRIg5KbeKxxX258WuyitPttj/2c607C+jtnhJtqALKnTFCYPEMbnOrrP/8hkOgVtZ3L 00P5jFovaU07FasTNT2Q1u/unHslhwWVsdUEuY6wBqQ0aeS6AGcbkAfVSJIYtEisM4wRBQp2 0WPktevAiZg2JWfRGiB7L6SoXW3MDIMMG4ZTSYeSE0O5NyLiIgrgwjGVNpLDK+/hdqzEjb1q w1mtwBn2e9V15RSkfzmoxae2WnESoX1ohAd1jvLXGWm7zxCNKH/PtCK2XrZ7ftBFdPMJrWeh 0Toi/Ry/chXU8HSyXDUHbxXdF26z63baWOB2DaDC7Fkrm3woCD7IOi89RkkfC9U3tA4lSgFi aM5kSdY/9dtMXSjdsebiKrhWp1xncAM+TkIP804j+aigbArLmdrBAk0OSatM5nFySDAa50XN 5aBatqLBn0HE6lhxzfeb75DgeB2mn1mmDiLHcmTI/GbPVy2PiD9pVAtagHmUwzExPnc/FW9H yh3aaNmNCmzoMWhO3KKoOb/3HgBLGQhBICeliCkXrfrH+aSI0l4U6W56ep4K+RYc1F9yr+gE oeVBhUJlzISRBTvdW23V5yUQOi0Bs0v9ilnYnZE0JTB8yFLXLtDJZw3L/MfFYTLPsQ6pRKoZ 5Hpo/m9P8k= IronPort-HdrOrdr: A9a23:YgGzT63VDHY0+4tRvwsJ+wqjBHYkLtp133Aq2lEZdPU0SKGlfq GV7ZEmPHrP4gr5N0tOpTntAse9qBDnhPxICOsqXYtKNTOO0AeVxelZhrcKqAeQeBEWmNQ96U 9hGZIOcuEZDzJB/LvHCN/TKadd/DGFmprY+ts31x1WPGVXgzkL1XYANu6ceHcGIzVuNN4CO7 e3wNFInDakcWR/VLXBOpFUN9KzweEijfjdEGc7OyI= X-Talos-CUID: =?us-ascii?q?9a23=3ARDfhcGgnVGV5O7s3/or9+PSyKTJuQkPBznDTInC?= =?us-ascii?q?DWUkzEeG3eX2S+K5lqp87?= X-Talos-MUID: =?us-ascii?q?9a23=3AaNS66A89QHE4+ODGUyHx9h2Qf+d3s/2QJkxKrZY?= =?us-ascii?q?fpcW4FwdsNhyypSviFw=3D=3D?= X-IronPort-AV: E=Sophos;i="6.01,165,1684814400"; d="scan'208";a="114907622" Date: Wed, 28 Jun 2023 17:22:40 +0100 From: Anthony PERARD To: CC: Jan Beulich , Stefano Stabellini , George Dunlap , "Andrew Cooper" , Bertrand Marquis Subject: Design session notes: possible improvements to our documented committing process Message-ID: <0cd24cfb-6638-4e7e-8056-9ed43ee163ff@perard> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Disposition: inline Content-Transfer-Encoding: 8bit Notes from the design session: possible improvements to our documented committing process Description about the intended discussion: > Various typically smaller changes have difficulty getting acks from all > relevant maintainers. It is often quite reasonable to not wait long with > such, and pinging - besides often being fruitless - may also be excessive. > The possibility to “fall back to THE REST” is also fuzzy at best. > Furthermore what gets (or doesn't get) committed would also be nice to not > depend on the particular committer, but be (somewhat / more) predictable / > consistent across committers instead. > > In this context also remember that the chasing of acks is generally the job > of the submitter, yet in particular infrequent submitters frequently won’t > do so (possibly because they don't even know). > > Main intended audience here are the committers, without any intention to > restrict this discussion to just them. Notes: Committing patch without formal acks is only for emergency before ianj was slow to ack tools patches for tools with anthony taking over, formal acks situation improved libxc situation is weirds libxc-x86 is kind of own by x86 should be in maintainer files libxc should formaly acks patches but edition to it, are usually obvious and self contains but committing libxc edition should be ack by toolstack by rules (from MAINTAINERS file) but that may not be necessary vtx area, maintainer takes a long time to respond, if ever so part of the maintainer files may needs to be updated it may be better to have an area without maintainer than with unresponsive maintainers. we would want maintainers to each area, but it's difficult to find maintainers, like we still don't have co-maintainers for tools. george: I receive too many patches that I don't need to responds (due to be "THE REST" maintainer) this delay respond for patch that needs to be looked at. sometime, patch get some review, but may not have the right kind of review, then they gets commited with security issue, because the had enough acks/review how to tell if a patch have enough review? could be on by case by case basis how long should we wait for maintainers? should we remove maintainer when they don't respond fast enough? this could be an issue in our situation, This is a people problem, people problem are always the worst. when a maintainer isn't responding, we could try to discus with them. does libxc could be maintainer by hypervisor maintainers? how about libxenguest? was part of libxc before. libxc could be under the rest. it's common code. common code hypervisor maintainer? "the rest" has too much stuff as the rest maintainer, you receive too many patch that may not need review by the rest. adding a committers section? so some committer could remove themselfs from "the rest" we need a new entry for hypervisor, common... with this, committer could lose visibility on what to commit. (by not be cced) if only we have a tool, that could check if patch are ready to be committed, under current rules. lars did try to have a tools, but was too complicated, expensive, close source we could try to have a simpler tools instead. should we rely on maintainer (contributer?) to ping committer when patch are ready? New contributer may not know that they can ping, get committer/maintainer attention. so a tools would be better tools to ping maintainer when no review happened yet, e.g. it would be ideal if we have a toolsmith, which can write such tools. (whisper: chatgpt?) some situation are still going to be fuzzy exception could be ok, instead of insisting on rules when a maintainer is "absent", could we ask them if they are ok with going forward without a formal ack/review. sometime, we did end-up with timing-out waiting on formal ack. ianj did extend maintainers rules for his area, where obvious patch could be committed without following the written rules, and without his ack. (that rules is normally for emergency) with relax rules, it can be hard to find-out where to draw the line maybe we could have two committers/maintainers agree that a patch don't need a formal ack (when they are unresponsive) having two persons is better, maybe it's safer, make taking the decision more comfortable. when committers disagree, there's a process to resolve the situation, with votes. when a maintainer disagree with a patch committed, after the fact, discussion could happen to re-adjust the expectation of the committers ping by email make problem worst, it create more email ping by irc is a better approach what next? Straw poll vote? discussion at community call? -> Yes! we could try the explicits second opinion call first. This would give data QEMU as trivial mailing list for trivial patches. not really an issue for us, trivial patch are easier to spot, so the mailing list doesn't seems useful (mailing list / list of trivial patch maintainers) some maintainers prefer ping by mail, other are ok with ping by irc. TODO: add "ping committers on irc" on beginner's page. there's a committers@ TODO: discussion at community call. -- Anthony PERARD From xen-devel-bounces@lists.xenproject.org Wed Jun 28 18:13:27 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 28 Jun 2023 18:13:27 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556536.869125 (Exim 4.92) (envelope-from ) id 1qEZf9-0000Gg-9k; Wed, 28 Jun 2023 18:13:07 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556536.869125; Wed, 28 Jun 2023 18:13:07 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEZf9-0000GX-6z; Wed, 28 Jun 2023 18:13:07 +0000 Received: by outflank-mailman (input) for mailman id 556536; Wed, 28 Jun 2023 18:13:05 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEZf7-0000GK-Bv for xen-devel@lists.xenproject.org; Wed, 28 Jun 2023 18:13:05 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEZf4-0002DG-Dw; Wed, 28 Jun 2023 18:13:02 +0000 Received: from 54-240-197-238.amazon.com ([54.240.197.238] helo=[192.168.5.86]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qEZf4-0001wB-7x; Wed, 28 Jun 2023 18:13:02 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=EbQSYKSnDxAjzUfGzm/E4uMZ/kBfSrWn6I7gcmllw4Y=; b=AG6zUmz8aB79OzqqqOWGlW12wj 0QPmTBMOWDBk5O3nsUzJRdJmeI3RJLs/9ErVyd1yHbyQtHPcm1SwJ4+mhEfgJ+C6TEkAaHj0IPnrV gDHDcG0Ua98iuFKwp9kIesffw2uY7rHNsybr+kxBBA45RjwSZ8GIGuTLogLZROrO37eU=; Message-ID: <0a3c05b5-246a-7e7a-c95c-fef726f7426a@xen.org> Date: Wed, 28 Jun 2023 19:13:00 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH 1/9] xen/arm: Check Xen size when linking Content-Language: en-US To: Michal Orzel , xen-devel@lists.xenproject.org Cc: Luca.Fancellu@arm.com, Henry.Wang@arm.com, Stefano Stabellini , Bertrand Marquis , Volodymyr Babchuk References: <20230625204907.57291-1-julien@xen.org> <20230625204907.57291-2-julien@xen.org> From: Julien Grall In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi Michal, On 26/06/2023 12:24, Michal Orzel wrote: > > > On 25/06/2023 22:48, Julien Grall wrote: >> >> >> The linker will happily link Xen if it is bigger than what we can handle >> (e.g 2MB). This will result to unexpected failure after boot. >> >> This unexpected failure can be prevented by forbidding linking if Xen is >> bigger than the area we reversed. > s/reversed/reserved > >> >> Signed-off-by: Julien Grall >> --- >> xen/arch/arm/xen.lds.S | 1 + >> 1 file changed, 1 insertion(+) >> >> diff --git a/xen/arch/arm/xen.lds.S b/xen/arch/arm/xen.lds.S >> index be58c2c39514..c5d8c6201423 100644 >> --- a/xen/arch/arm/xen.lds.S >> +++ b/xen/arch/arm/xen.lds.S >> @@ -241,3 +241,4 @@ ASSERT(IS_ALIGNED(__init_begin, 4), "__init_begin is misaligned") >> ASSERT(IS_ALIGNED(__init_end, 4), "__init_end is misaligned") >> ASSERT(IS_ALIGNED(__bss_start, POINTER_ALIGN), "__bss_start is misaligned") >> ASSERT(IS_ALIGNED(__bss_end, POINTER_ALIGN), "__bss_end is misaligned") >> +ASSERT((_end - start) <= XEN_VIRT_SIZE, "Xen is too big") > Would it be possible to use _start so that we can have a consolidated way of calculating xen size > across arch linker scripts and C code? It makes it easier for grepping. Fair point. I have renamed to _start. > > All in all, > Reviewed-by: Michal Orzel Thanks! Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Wed Jun 28 18:21:18 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 28 Jun 2023 18:21:18 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556540.869134 (Exim 4.92) (envelope-from ) id 1qEZmy-0001pE-3o; Wed, 28 Jun 2023 18:21:12 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556540.869134; Wed, 28 Jun 2023 18:21:12 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEZmy-0001p7-1F; Wed, 28 Jun 2023 18:21:12 +0000 Received: by outflank-mailman (input) for mailman id 556540; Wed, 28 Jun 2023 18:21:10 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEZmw-0001p0-Sm for xen-devel@lists.xenproject.org; Wed, 28 Jun 2023 18:21:10 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEZmw-0002Mf-E6; Wed, 28 Jun 2023 18:21:10 +0000 Received: from 54-240-197-238.amazon.com ([54.240.197.238] helo=[192.168.5.86]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qEZmw-00028E-7P; Wed, 28 Jun 2023 18:21:10 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=+Zs9yRBNCddJvP+k19wSb3/I107ANE3RZ69wTMI1k68=; b=CKx6Xrn7+yxoW7MdMmJvDoOdud twf+cLpYKcGWHgnR0YLlslexQ59h3COflk0xQes3RpJheo7iaVdrwsbRV+PkpBK7pEikzHHlIbFPQ 50/HcrrM30xZMHwDyfHXRTLXI+oUW60C3r1u3sAOQo6KOEjyTB7ykDE4Bo+yG3HW7H4I=; Message-ID: <7877f5af-12e2-808c-b2a2-fa0e302a00c3@xen.org> Date: Wed, 28 Jun 2023 19:21:07 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH 2/9] xen/arm64: head: Don't map too much in boot_third Content-Language: en-US To: Michal Orzel , xen-devel@lists.xenproject.org Cc: Luca.Fancellu@arm.com, Henry.Wang@arm.com, Julien Grall , Stefano Stabellini , Bertrand Marquis , Volodymyr Babchuk References: <20230625204907.57291-1-julien@xen.org> <20230625204907.57291-3-julien@xen.org> <38f33ede-0d55-bd47-412a-eccb3d4618f2@amd.com> From: Julien Grall In-Reply-To: <38f33ede-0d55-bd47-412a-eccb3d4618f2@amd.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi, On 26/06/2023 12:28, Michal Orzel wrote: > On 25/06/2023 22:49, Julien Grall wrote: >> From: Julien Grall >> >> At the moment, we are mapping the size of the reserved area for Xen >> (i.e. 2MB) even if the binary is smaller. We don't exactly know what's >> after Xen, so it is not a good idea to map more than necessary for a >> couple of reasons: >> * We would need to use break-before-make if the extra PTE needs to >> be updated to point to another region >> * The extra area mapped may be mapped again by Xen with different >> memory attribute. This would result to attribue mismatch. > s/attribue/attribute > >> >> Therefore, rework the logic in create_page_tables() to map only what's >> necessary. To simplify the logic, we also want to make sure _end >> is page-aligned. So align the symbol in the linker and add an assert >> to catch any change. >> >> Signed-off-by: Julien Grall >> --- >> xen/arch/arm/arm64/head.S | 15 ++++++++++++++- >> xen/arch/arm/xen.lds.S | 3 +++ >> 2 files changed, 17 insertions(+), 1 deletion(-) >> >> diff --git a/xen/arch/arm/arm64/head.S b/xen/arch/arm/arm64/head.S >> index f37133cf7ccd..66bc85d4c39e 100644 >> --- a/xen/arch/arm/arm64/head.S >> +++ b/xen/arch/arm/arm64/head.S >> @@ -572,6 +572,19 @@ create_page_tables: >> create_table_entry boot_first, boot_second, x0, 1, x1, x2, x3 >> create_table_entry boot_second, boot_third, x0, 2, x1, x2, x3 >> >> + /* >> + * Find the size of Xen in pages and multiply by the size of a >> + * PTE. This will then be compared in the mapping loop below. >> + * >> + * Note the multiplication is just to avoid using an extra >> + * register/instruction per iteration. >> + */ >> + ldr x0, =_start /* x0 := vaddr(_start) */ > x0 is already set to vaddr of _start by the first instruction of create_page_tables > and is preserved by create_table_entry. You could just reuse it instead of re-loading. I agree that the load is technically redundant. However, I find this approach easier to read (you don't have to remember that _start equals XEN_VIRT_START). > >> + ldr x1, =_end /* x1 := vaddr(_end) */ >> + sub x0, x1, x0 /* x0 := effective size of Xen */ >> + lsr x0, x0, #PAGE_SHIFT /* x0 := Number of pages for Xen */ >> + lsl x0, x0, #3 /* x0 := Number of pages * PTE size */ >> + >> /* Map Xen */ >> adr_l x4, boot_third >> >> @@ -585,7 +598,7 @@ create_page_tables: >> 1: str x2, [x4, x1] /* Map vaddr(start) */ >> add x2, x2, #PAGE_SIZE /* Next page */ >> add x1, x1, #8 /* Next slot */ >> - cmp x1, #(XEN_PT_LPAE_ENTRIES<<3) /* 512 entries per page */ >> + cmp x1, x0 /* Loop until we map all of Xen */ >> b.lt 1b >> >> /* >> diff --git a/xen/arch/arm/xen.lds.S b/xen/arch/arm/xen.lds.S >> index c5d8c6201423..c4627cea7482 100644 >> --- a/xen/arch/arm/xen.lds.S >> +++ b/xen/arch/arm/xen.lds.S >> @@ -212,6 +212,7 @@ SECTIONS >> . = ALIGN(POINTER_ALIGN); >> __bss_end = .; >> } :text >> + . = ALIGN(PAGE_SIZE); >> _end = . ; >> >> /* Section for the device tree blob (if any). */ >> @@ -241,4 +242,6 @@ ASSERT(IS_ALIGNED(__init_begin, 4), "__init_begin is misaligned") >> ASSERT(IS_ALIGNED(__init_end, 4), "__init_end is misaligned") >> ASSERT(IS_ALIGNED(__bss_start, POINTER_ALIGN), "__bss_start is misaligned") >> ASSERT(IS_ALIGNED(__bss_end, POINTER_ALIGN), "__bss_end is misaligned") >> +/* To simplify the logic in head.S, we want to _end to be page aligned */ >> +ASSERT(IS_ALIGNED(_end, PAGE_SIZE), "_end is not page aligned") > one more space if you want to align PAGE_SIZE to POINTER_ALIGN I have updated in my tree. > > All in all: > Reviewed-by: Michal Orzel Thanks! Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Wed Jun 28 18:23:46 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 28 Jun 2023 18:23:46 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556544.869144 (Exim 4.92) (envelope-from ) id 1qEZpF-0002NT-Ft; Wed, 28 Jun 2023 18:23:33 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556544.869144; Wed, 28 Jun 2023 18:23:33 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEZpF-0002NM-Cb; Wed, 28 Jun 2023 18:23:33 +0000 Received: by outflank-mailman (input) for mailman id 556544; Wed, 28 Jun 2023 18:23:31 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEZpD-0002NC-P8; Wed, 28 Jun 2023 18:23:31 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEZpD-0002Ox-OG; Wed, 28 Jun 2023 18:23:31 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEZpD-0004nw-4w; Wed, 28 Jun 2023 18:23:31 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qEZpD-00048p-4V; Wed, 28 Jun 2023 18:23:31 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=+glZRiXcXF7mk3ZIHkyge2tXCZe5MP0MaEjqOWNNDm0=; b=gJUCO1I6ySYyROkz7dGXmAsIPs /qWcE6HA0BVpPU8kvqxL2BJk6QiriR1zCrKq7i6iaaqX7TcfqYT5pNxsW3oVstNOh5lLNYHmH7gu3 PSroTUMdo0cgtG1uDUw7UxlYvR+yo172ycEZtM2RzVgvGMbrxpQmxMXX89Yc0UswkDc4=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable-smoke test] 181627: regressions - FAIL X-Osstest-Failures: xen-unstable-smoke:build-arm64-xsm:xen-build:fail:regression xen-unstable-smoke:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking xen-unstable-smoke:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking xen-unstable-smoke:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking xen-unstable-smoke:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: xen=6c32a08e2b7e6d796081ed84c84ad682bcc4b3a6 X-Osstest-Versions-That: xen=5c84f1f636981dab5341e84aaba8d4dd00bbc2cb From: osstest service owner Date: Wed, 28 Jun 2023 18:23:31 +0000 flight 181627 xen-unstable-smoke real [real] http://logs.test-lab.xenproject.org/osstest/logs/181627/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-arm64-xsm 6 xen-build fail REGR. vs. 181547 Tests which did not succeed, but are not blocking: test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-armhf-armhf-xl 15 migrate-support-check fail never pass test-armhf-armhf-xl 16 saverestore-support-check fail never pass version targeted for testing: xen 6c32a08e2b7e6d796081ed84c84ad682bcc4b3a6 baseline version: xen 5c84f1f636981dab5341e84aaba8d4dd00bbc2cb Last test of basis 181547 2023-06-22 03:02:21 Z 6 days Testing same since 181627 2023-06-28 16:00:25 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Andrew Cooper jobs: build-arm64-xsm fail build-amd64 pass build-armhf pass build-amd64-libvirt pass test-armhf-armhf-xl pass test-arm64-arm64-xl-xsm blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-libvirt pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. ------------------------------------------------------------ commit 6c32a08e2b7e6d796081ed84c84ad682bcc4b3a6 Author: Andrew Cooper Date: Tue Jun 20 17:36:19 2023 +0100 x86/vpmu: Simplify is_pmc_quirk This should be static, and there's no need for a separate (non-init, even) function to perform a simple equality test. Drop the is_ prefix which is gramatically questionable, and make it __ro_after_init. Leave a TODO, because the behaviour is definitely wrong to be applied to all modern Intel CPUs. The question has been raised on xen-devel previously without conclusion. No functional change. Signed-off-by: Andrew Cooper Reviewed-by: Jan Beulich (qemu changes not included) From xen-devel-bounces@lists.xenproject.org Wed Jun 28 18:28:48 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 28 Jun 2023 18:28:48 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556551.869158 (Exim 4.92) (envelope-from ) id 1qEZuC-00030u-3F; Wed, 28 Jun 2023 18:28:40 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556551.869158; Wed, 28 Jun 2023 18:28:40 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEZuC-00030n-0c; Wed, 28 Jun 2023 18:28:40 +0000 Received: by outflank-mailman (input) for mailman id 556551; Wed, 28 Jun 2023 18:28:39 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEZuA-00030R-WE for xen-devel@lists.xenproject.org; Wed, 28 Jun 2023 18:28:39 +0000 Received: from mail-lf1-x130.google.com (mail-lf1-x130.google.com [2a00:1450:4864:20::130]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 97f7dfc9-15e1-11ee-b237-6b7b168915f2; Wed, 28 Jun 2023 20:28:38 +0200 (CEST) Received: by mail-lf1-x130.google.com with SMTP id 2adb3069b0e04-4f766777605so8675494e87.1 for ; Wed, 28 Jun 2023 11:28:35 -0700 (PDT) Received: from [192.168.203.175] ([94.75.70.14]) by smtp.gmail.com with ESMTPSA id r4-20020ac25a44000000b004fb86662871sm715047lfn.233.2023.06.28.11.28.33 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 28 Jun 2023 11:28:34 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 97f7dfc9-15e1-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687976915; x=1690568915; h=mime-version:user-agent:content-transfer-encoding:references :in-reply-to:date:cc:to:from:subject:message-id:from:to:cc:subject :date:message-id:reply-to; bh=zWVZTP9gogT+Pci8qVD/lZisHNgTQ0LkHWBj3W8Ggvw=; b=qAPH4CNkHA/brLCzjwyCOAiW8qANo1okfoyiFBbXG12uqBdHhVmHPjrf2VRIlV8zjG /uVYelPfgwSbUYVQ7qtEUNVQKW6lmm/K4QZqhsMLhP3XDuNsrnQ8qTgfwa7n+AVle9b8 pcneFTVxuhIlypHFOcYbEKdw4Cu1JfLQtp0370eFaRFX3Dtxd+MZrlXhcMjZheRmxZvw HGsbNGNuLUa0DJ1Bb78F2AEOgqfG+MwAnl4VKNIl4qRdHdTW3CtHgMDrekOrlw9DoLDd mQps3v/SXUAmdoR/ha/WYiW0zUWHWRuwkLhi3UeRYlEVHziiQeYdDFL8xLHbbn4majE0 FkKw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687976915; x=1690568915; h=mime-version:user-agent:content-transfer-encoding:references :in-reply-to:date:cc:to:from:subject:message-id:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=zWVZTP9gogT+Pci8qVD/lZisHNgTQ0LkHWBj3W8Ggvw=; b=jEIjdLTluIeqZBqz6g3GSsSW5pFnmc3qplKcnnjzgNTBZk6+VOdv1ZHpYvCh5BbY6O CfEuJ+0mwRa9GVy8wreoxXF8JDeiPZuK4e/9oyd2tLkIeDMMKSEUnIo38Twj7tYvplsb BInn2rpvZBH33S/zKpYMLBZI3FmKRneMK4RfTjBuhW+tpfbJoEpTpSPFUUo3YVWTHYGH DLtdqyzBG1j01C1myaJStdMVcxUNkdkSelp3DWAgtAGhsrF9mm1BZbyLpwjdqJu+IHYg GkduaqDXPv93PWJ/GUe1yUd2U5cpysi0PcXbkKzwIxnn9RaE9NocgeYRoZYsD8gM0T19 mk1Q== X-Gm-Message-State: AC+VfDyAmXb+jMATCpsZIsrk/Gt5ee7Wiotopp6D/f0GTu37shanxqBZ MTB/Nn9bB4T2ZcZcEpnxu0w= X-Google-Smtp-Source: ACHHUZ4AyOXoxYKbRYOwUk9e80pcMfnVyQgt36u5ftnRMgPEmg6sA5carxOiM5hWmAHcivSMwxQ1AQ== X-Received: by 2002:a19:5e47:0:b0:4f3:b708:f554 with SMTP id z7-20020a195e47000000b004f3b708f554mr19683248lfi.47.1687976914828; Wed, 28 Jun 2023 11:28:34 -0700 (PDT) Message-ID: Subject: Re: XenSummit: Empty per-arch files From: Oleksii To: Juergen Gross , Andrew Cooper , xen-devel Cc: Jan Beulich , Roger Pau =?ISO-8859-1?Q?Monn=E9?= , Wei Liu , Stefano Stabellini , Julien Grall , Volodymyr Babchuk , Bobby Eshleman , Alistair Francis , Connor Davis , Shawn Anastasio , Timothy Pearson Date: Wed, 28 Jun 2023 21:28:33 +0300 In-Reply-To: References: <2aabfb63-1a2f-bb02-488a-ea79136bc6c0@citrix.com> <58622fcf-0939-95c5-7318-60c93307f991@suse.com> <2a195157-fe59-3bfd-f5cb-c377d883cef4@citrix.com> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable User-Agent: Evolution 3.48.3 (3.48.3-1.fc38) MIME-Version: 1.0 Hello, On Wed, 2023-06-28 at 15:54 +0200, Juergen Gross wrote: > On 28.06.23 15:46, Andrew Cooper wrote: > > On 28/06/2023 2:26 pm, Juergen Gross wrote: > > > On 28.06.23 13:32, Andrew Cooper wrote: > > > > Hello, > > > >=20 > > > > This wasn't a formal discussion point at XenSummit, but Oleksii > > > > pointed > > > > out that it was still a problem, hence this thread. > > > >=20 > > > > As we take on more architectures, it becomes more and more > > > > important for > > > > things to be handled in a mostly-common way.=C2=A0 With that comes > > > > quite a > > > > lot of including , and the arch one > > > > being a stub > > > > in simple cases. > > > >=20 > > > > It would be nice to get rid of the stub files; they're > > > > irritating to > > > > deal with, both when refactoring and simply for the file bloat > > > > they > > > > create. > > > >=20 > > > > There are two options which come to mind. > > > >=20 > > > > 1) Use __has_include().=C2=A0 This would be ideal, but would requir= e > > > > us > > > > bumping the minimum GCC version to 4.9.2 as a prerequisite.=C2=A0 > > > > I'm not > > > > aware of any way to emulate the necessary behaviour on older > > > > toolchains. > > > >=20 > > > > 2) Have a stub "architecture" which is always last on the > > > > include path. > > > > This would reduce the number of stub files from one set per > > > > arch, to > > > > only one set. > > > >=20 > > > > Anything else that I've missed? > > >=20 > > > What about a make rule creating an empty include file if it is > > > missing? > >=20 > > Wouldn't that cause a typo'd header file name to spring into > > existence ? > >=20 > > And it would cause a build to leave the working tree dirty. >=20 > Depends how it is done. >=20 > There could be a file containing the allowed header names to be > generated. >=20 > And the files wouldn't need to be generated in > arch//include/asm, but > could be generated in e.g. include/generated/asm which would be used > after > the arch include path. >=20 > This would basically be the central stub variant you were mentioning, > but > building it dynamically. I started to analyze how many headers right now are empty, and it looks not too many for ARM and x86. For RISC-V, when the building of common code is enabled, the number of empty headers will be around 4-5. But at the end ( when will be enough functionality to run dom0 ), the amount of empty headers is 2 (probably a little bit bigger, I don't remember and don't have access to my source code ) However, at least between ARM and RISC-V, many headers are the same ( or they can be the same after some refactoring, f.e cache.h ). So, it would be better to use stubs instead of dynamically generated empty headers, as it looks like overkill only for a few empty headers. But who knows what will be in the future, and possible it makes sense to have a combination of stubs and dynamically created empty headers. If no one is fine with me, I can implement that as common code will be enabled for RISC-V soon. It may be helpful for PPC too soon. ~ Oleksii From xen-devel-bounces@lists.xenproject.org Wed Jun 28 18:43:55 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 28 Jun 2023 18:43:55 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556555.869168 (Exim 4.92) (envelope-from ) id 1qEa8Y-0005Od-AN; Wed, 28 Jun 2023 18:43:30 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556555.869168; Wed, 28 Jun 2023 18:43:30 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEa8Y-0005OW-7b; Wed, 28 Jun 2023 18:43:30 +0000 Received: by outflank-mailman (input) for mailman id 556555; Wed, 28 Jun 2023 18:43:29 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEa8X-0005OM-6n; Wed, 28 Jun 2023 18:43:29 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEa8W-0002wx-VC; Wed, 28 Jun 2023 18:43:29 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEa8W-0005GA-K8; Wed, 28 Jun 2023 18:43:28 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qEa8W-0001k6-Jh; Wed, 28 Jun 2023 18:43:28 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=HOKmEYlZQoUz/cMQbVjBT+Ey9z+7GoCRg8PWgZgeaM8=; b=pw4mc6w8OtM9TolcrXzlSUM8dn pnihLhw9RIIUmJcjNmMw1eeqaMsG/mdUQaI7dWGRImbXDUxz7GPdqEsIdf8KHABWHjVGjVGHE0B/z UPEzgdtwnffTZopx9UwY5/oTghWsqG5lfYUuuTUHwGNGxEzNb2/PGxJsxKbXd+ggmM80=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [linux-5.4 test] 181623: tolerable FAIL - PUSHED X-Osstest-Failures: linux-5.4:test-armhf-armhf-libvirt-raw:guest-start:fail:heisenbug linux-5.4:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-rtds:guest-start/debian.repeat:fail:nonblocking linux-5.4:test-armhf-armhf-xl-credit1:guest-start/debian.repeat:fail:nonblocking linux-5.4:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-i386-xl-vhd:guest-start/debian.repeat:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking linux-5.4:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking linux-5.4:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking linux-5.4:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking linux-5.4:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking linux-5.4:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking linux-5.4:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking linux-5.4:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking linux-5.4:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking linux-5.4:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: linux=b30db4f7e45f3c17cca2ba5be6f22762837a6e34 X-Osstest-Versions-That: linux=f2b499c27a959d062db9ea5c3036052d90110ee4 From: osstest service owner Date: Wed, 28 Jun 2023 18:43:28 +0000 flight 181623 linux-5.4 real [real] flight 181626 linux-5.4 real-retest [real] http://logs.test-lab.xenproject.org/osstest/logs/181623/ http://logs.test-lab.xenproject.org/osstest/logs/181626/ Failures :-/ but no regressions. Tests which are failing intermittently (not blocking): test-armhf-armhf-libvirt-raw 13 guest-start fail pass in 181626-retest Tests which did not succeed, but are not blocking: test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail in 181626 like 181581 test-armhf-armhf-libvirt-raw 14 migrate-support-check fail in 181626 never pass test-armhf-armhf-xl-rtds 18 guest-start/debian.repeat fail like 181577 test-armhf-armhf-xl-credit1 18 guest-start/debian.repeat fail like 181577 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 181581 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop fail like 181581 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop fail like 181581 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 181581 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 181581 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 181581 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop fail like 181581 test-amd64-i386-xl-vhd 21 guest-start/debian.repeat fail like 181581 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail like 181581 test-armhf-armhf-libvirt 16 saverestore-support-check fail like 181581 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop fail like 181581 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 181581 test-amd64-i386-xl-pvshim 14 guest-start fail never pass test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-i386-libvirt 15 migrate-support-check fail never pass test-amd64-i386-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-armhf-armhf-xl-credit2 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit2 16 saverestore-support-check fail never pass test-armhf-armhf-xl-arndale 15 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 16 saverestore-support-check fail never pass test-armhf-armhf-xl-multivcpu 15 migrate-support-check fail never pass test-armhf-armhf-xl-multivcpu 16 saverestore-support-check fail never pass test-amd64-i386-libvirt-raw 14 migrate-support-check fail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-armhf-armhf-xl-credit1 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 16 saverestore-support-check fail never pass test-armhf-armhf-xl-rtds 15 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 16 saverestore-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass test-armhf-armhf-xl 15 migrate-support-check fail never pass test-armhf-armhf-xl 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail never pass test-armhf-armhf-libvirt 15 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 15 saverestore-support-check fail never pass version targeted for testing: linux b30db4f7e45f3c17cca2ba5be6f22762837a6e34 baseline version: linux f2b499c27a959d062db9ea5c3036052d90110ee4 Last test of basis 181581 2023-06-24 22:43:41 Z 3 days Testing same since 181623 2023-06-28 08:40:44 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Adrian Hunter Alex Deucher Alexander Gordeev Andrew Morton Arnd Bergmann Arınç ÜNAL Ben Segall Benjamin Segall Borislav Petkov (AMD) Carlos Song Chandan Babu R Chen Aotian Chris Paterson (CIP) Clark Wang Dan Carpenter Darrick J. Wong Dave Chinner Dave Hansen David S. Miller Denis Arefev Dexuan Cui Dheeraj Kumar Srivastava Dinghao Liu Edson Juliano Drosdeck Eric Dumazet Francesco Dolcini Greg Kroah-Hartman Guenter Roeck Hans Verkuil Harshit Mogalapalli Hugh Dickins Hyunwoo Kim Inki Dae Jakub Kicinski Jiri Kosina Jon Hunter Julian Anastasov Lee Jones Linus Torvalds Linus Walleij Linux Kernel Functional Testing Lorenzo Pieralisi Marc Zyngier Mark Brown Martin Hundebøll Martin K. Petersen Mathias Krause Matthias May Maurizio Lombardi Mauro Carvalho Chehab Mauro Carvalho Chehab Michael Kelley Min Li Osama Muhammad Ovidiu Panait Pablo Neira Ayuso Paolo Abeni Paul E. McKenney Paulo Alcantara (SUSE) Rafael Aquini Ricardo Ribalda Ricardo Ribalda Delgado Richard W.M. Jones Rishabh Bhatnagar Ross Lagerwall Ryusuke Konishi Sasha Levin Sean Young Sebastian Andrzej Siewior SeongJae Park Sergey Shtylyov Simon Horman Stefan Schmidt Stefan Wahren Steffen Klassert Steve French Steven Rostedt (Google) Tejun Heo Terin Stock Thomas Gleixner Ulf Hansson Vineeth Vijayan Wei Liu Wolfram Sang Xiu Jianfeng Yangtao Li Zheng Yejian jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl pass test-amd64-i386-xl pass test-amd64-coresched-i386-xl pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-i386-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-i386-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-i386-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-i386-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-i386-qemut-rhel6hvm-amd pass test-amd64-i386-qemuu-rhel6hvm-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-i386-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-freebsd10-amd64 pass test-amd64-amd64-qemuu-freebsd11-amd64 pass test-amd64-amd64-qemuu-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-i386-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-i386-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-i386-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-amd64-i386-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale pass test-amd64-amd64-examine-bios pass test-amd64-i386-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 fail test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 pass test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine pass test-amd64-i386-examine pass test-amd64-i386-freebsd10-i386 pass test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-i386-qemut-rhel6hvm-intel pass test-amd64-i386-qemuu-rhel6hvm-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt pass test-amd64-i386-libvirt pass test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu pass test-amd64-amd64-pair pass test-amd64-i386-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-i386-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-i386-xl-pvshim fail test-amd64-amd64-pygrub pass test-armhf-armhf-libvirt-qcow2 pass test-amd64-amd64-xl-qcow2 pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw fail test-amd64-i386-libvirt-raw pass test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds fail test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-amd64-i386-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-i386-examine-uefi pass test-amd64-amd64-libvirt-vhd pass test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd pass test-amd64-i386-xl-vhd fail ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Pushing revision : hint: The 'hooks/update' hook was ignored because it's not set as executable. hint: You can disable this warning with `git config advice.ignoredHook false`. hint: The 'hooks/post-receive' hook was ignored because it's not set as executable. hint: You can disable this warning with `git config advice.ignoredHook false`. hint: The 'hooks/post-update' hook was ignored because it's not set as executable. hint: You can disable this warning with `git config advice.ignoredHook false`. To xenbits.xen.org:/home/xen/git/linux-pvops.git f2b499c27a95..b30db4f7e45f b30db4f7e45f3c17cca2ba5be6f22762837a6e34 -> tested/linux-5.4 From xen-devel-bounces@lists.xenproject.org Wed Jun 28 18:51:46 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 28 Jun 2023 18:51:46 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556563.869177 (Exim 4.92) (envelope-from ) id 1qEaGO-0006yH-7y; Wed, 28 Jun 2023 18:51:36 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556563.869177; Wed, 28 Jun 2023 18:51:36 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEaGO-0006yA-5P; Wed, 28 Jun 2023 18:51:36 +0000 Received: by outflank-mailman (input) for mailman id 556563; Wed, 28 Jun 2023 18:51:35 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEaGM-0006y1-H4 for xen-devel@lists.xenproject.org; Wed, 28 Jun 2023 18:51:35 +0000 Received: from casper.infradead.org (casper.infradead.org [2001:8b0:10b:1236::1]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id cba5d0cd-15e4-11ee-b237-6b7b168915f2; Wed, 28 Jun 2023 20:51:32 +0200 (CEST) Received: from willy by casper.infradead.org with local (Exim 4.94.2 #2 (Red Hat Linux)) id 1qEaFx-0047Cx-Rw; Wed, 28 Jun 2023 18:51:09 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: cba5d0cd-15e4-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=casper.20170209; h=In-Reply-To:Content-Type:MIME-Version: References:Message-ID:Subject:Cc:To:From:Date:Sender:Reply-To: Content-Transfer-Encoding:Content-ID:Content-Description; bh=gzBVL7uWfH/0QncUeiWSVvNT7tu19KKFpZm/SdtHfy0=; b=F0geF1mDFUhFwejscu79P5AerF ChPxlz8AungTNw2nYlH8TmeT0FdBYZ403uLo6dwYbFZivePasVeM2QOKhl+SGZUnj3aelPYXtEfM9 SrOHM/3oUTni3eU+S6cGIy3fXu368hUaiU/EA6YN2NOx+dDC0fkki3YX0I7X5QXDEfuDII33co6YT AgpMwEBC4ya/EPvRDl80CtdVgP3e2XagbMLqDsAoh6VP3gh2KZpEwz3m1/E0HTdSv3vSxKIUbldmu z9Fsmk0Dd2L6fefBSyj6JHJ0VqW7vTaNglMS0xkY6KNSksqhU+OkIfDiDfBXKznANmEoK/ikyWU4U 7raG+AtA==; Date: Wed, 28 Jun 2023 19:51:09 +0100 From: Matthew Wilcox To: David Hildenbrand Cc: Hugh Dickins , "Vishal Moola (Oracle)" , Andrew Morton , linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-um@lists.infradead.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Catalin Marinas , Huacai Chen , Geert Uytterhoeven , Thomas Bogendoerfer , Dinh Nguyen , Jonas Bonn , Claudio Imbrenda , Paul Walmsley , "David S. Miller" , Richard Weinberger , Yoshinori Sato , Dave Hansen , Arnd Bergmann , Christophe Leroy Subject: Re: [PATCH v6 00/33] Split ptdesc from struct page Message-ID: References: <20230627031431.29653-1-vishal.moola@gmail.com> <90e643ca-de72-2f4c-f4fe-35e06e1a9277@google.com> <26282cb8-b6b0-f3a0-e82d-b4fec45c5f72@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <26282cb8-b6b0-f3a0-e82d-b4fec45c5f72@redhat.com> On Wed, Jun 28, 2023 at 09:41:18AM +0200, David Hildenbrand wrote: > I'm not a friend of these "overlays"; it all only really makes sense to me > once we actually allocate the descriptors dynamically. Maybe some of the > existing/ongoing conversions were different (that's why I was asking for the > difference, as you said the "struct slab" thing was well received). > > If they are primarily only unnecessary churn for now (and unclear when/how > it will become useful), I share your opinion. One of the reasons for doing these conversions "early" is that it helps people who work on this code know what fields they can actually use in their memory descriptor. We have a _lot_ of historical baggage with people just using random bits in struct page for their own purposes without necessarily considering the effects on the rest of the system. By creating specific types for each user of struct page, we can see what's actually going on. Before the ptdesc conversion started, I could not have told you which bits in struct page were used by the s390 code. I knew they were playing some fun games with the refcount (it's even documented in the s390 code!) but I didn't know they were using ... whetever it is; page->private to point to the kvm private data? So maybe it is harder for MM developers right now to see what fields in memdesc A overlap with which fields in memdesc B. That _ought_ not to be a concern! We document which fields are available in each memdesc, and have various assertions to trip when people make things not line up any more. There can still be problems, of course; we haven't set the assertions quite tightly enough in some cases. People are going to keep adding crap to struct page, and they're going to keep misusing the crap that's in struct page. That has to stop. From xen-devel-bounces@lists.xenproject.org Wed Jun 28 20:02:23 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 28 Jun 2023 20:02:23 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556570.869194 (Exim 4.92) (envelope-from ) id 1qEbMd-0005rE-CA; Wed, 28 Jun 2023 20:02:07 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556570.869194; Wed, 28 Jun 2023 20:02:07 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEbMd-0005r7-8U; Wed, 28 Jun 2023 20:02:07 +0000 Received: by outflank-mailman (input) for mailman id 556570; Wed, 28 Jun 2023 20:02:05 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEbMb-0005r1-44 for xen-devel@lists.xenproject.org; Wed, 28 Jun 2023 20:02:05 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEbMa-0004iX-LU; Wed, 28 Jun 2023 20:02:04 +0000 Received: from 54-240-197-238.amazon.com ([54.240.197.238] helo=[192.168.5.86]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qEbMa-0006MN-Cv; Wed, 28 Jun 2023 20:02:04 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=z7kaW0DkKEMRASFh8v49K6iHDnepn4M2siDcYffrRP8=; b=YhV2+o6dFGTwZ7jY2EfAePnW6U o/bUXXUXtqqGoS1eGR74RHJR+SheTLDcXYfOuN5N2ZrZk0b7KAxo3wL8sjVXLmuEnhjpvY1JNynFm gW8Hv5qxJ2TIDGcxryJZIeLmCmE02Ausu24ZUODRT1ybcN9MIP11Aks81Gz4isvHgIF8=; Message-ID: <158d8b0a-77dc-fccb-716d-36887524a4df@xen.org> Date: Wed, 28 Jun 2023 21:02:02 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH 5/9] xen/arm: Rework the code mapping Xen to avoid relying on the size of Xen Content-Language: en-US To: Michal Orzel , xen-devel@lists.xenproject.org Cc: Luca.Fancellu@arm.com, Henry.Wang@arm.com, Julien Grall , Stefano Stabellini , Bertrand Marquis , Volodymyr Babchuk References: <20230625204907.57291-1-julien@xen.org> <20230625204907.57291-6-julien@xen.org> <170a1f3c-526a-dfd9-0d87-101fb77f3415@amd.com> From: Julien Grall In-Reply-To: <170a1f3c-526a-dfd9-0d87-101fb77f3415@amd.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi, On 26/06/2023 12:43, Michal Orzel wrote: > > > On 25/06/2023 22:49, Julien Grall wrote: >> >> >> From: Julien Grall >> >> At the moment, the maximum size of Xen binary we can support is 2MB. >> This is what we reserved in the virtual address but also what all >> the code in Xen relies on as we only allocate one L3 page-table. >> >> When feature like UBSAN (will be enabled in a follow-up patch) and GCOV >> are enabled, the binary will be way over 2MB. >> >> The code is now reworked so it doesn't realy on a specific size but > s/realy/rely > >> will instead look at the reversed size and compute the number of >> page-table to allocate/map. >> >> While at it, replace any reference to 4KB mappings with a more >> generic word because the page-size may change in the future. >> >> Also fix the typo s/tlb/tbl/ in code move in arm32/head.S >> >> Signed-off-by: Julien Grall >> --- >> xen/arch/arm/arm32/head.S | 61 ++++++++++++++++++++++++------- >> xen/arch/arm/arm64/head.S | 51 +++++++++++++++++++++----- >> xen/arch/arm/include/asm/config.h | 1 + >> xen/arch/arm/include/asm/lpae.h | 8 ++-- >> xen/arch/arm/mm.c | 24 +++++++----- >> 5 files changed, 108 insertions(+), 37 deletions(-) >> >> diff --git a/xen/arch/arm/arm32/head.S b/xen/arch/arm/arm32/head.S >> index 5e3692eb3abf..5448671de897 100644 >> --- a/xen/arch/arm/arm32/head.S >> +++ b/xen/arch/arm/arm32/head.S >> @@ -373,35 +373,55 @@ ENDPROC(cpu_init) >> .endm >> >> /* >> - * Macro to create a page table entry in \ptbl to \tbl >> + * Macro to create a page table entry in \ptbl to \tbl (physical >> + * address) >> * >> * ptbl: table symbol where the entry will be created >> - * tbl: table symbol to point to >> + * tbl: physical address of the table to point to >> * virt: virtual address >> * lvl: page-table level >> * >> * Preserves \virt >> - * Clobbers r1 - r4 >> + * Clobbers \tbl, r1 - r3 >> * >> * Also use r10 for the phys offset. > This no longer applies. Good point. I will remove it. > >> * >> - * Note that \virt should be in a register other than r1 - r4 >> + * Note that \tbl and \virt should be in a register other than r1 - r3 >> */ >> -.macro create_table_entry, ptbl, tbl, virt, lvl >> - get_table_slot r1, \virt, \lvl /* r1 := slot in \tlb */ >> - lsl r1, r1, #3 /* r1 := slot offset in \tlb */ >> - >> - load_paddr r4, \tbl >> +.macro create_table_entry_from_paddr, ptbl, tbl, virt, lvl >> + get_table_slot r1, \virt, \lvl /* r1 := slot in \tbl */ >> + lsl r1, r1, #3 /* r1 := slot offset in \tbl */ >> >> movw r2, #PT_PT /* r2:r3 := right for linear PT */ >> - orr r2, r2, r4 /* + \tlb paddr */ >> + orr r2, r2, \tbl /* + \tbl paddr */ >> mov r3, #0 >> >> - adr_l r4, \ptbl >> + adr_l \tbl, \ptbl /* \tbl := (v,p)addr of \ptbl */ >> >> - strd r2, r3, [r4, r1] >> + strd r2, r3, [\tbl, r1] >> .endm >> >> + >> +/* >> + * Macro to create a page table entry in \ptbl to \tbl (symbol) >> + * >> + * ptbl: table symbol where the entry will be created >> + * tbl: table symbol to point to >> + * virt: virtual address >> + * lvl: page-table level >> + * >> + * Preserves \virt >> + * Clobbers r1 - r4 >> + * >> + * Also use r10 for the phys offset. >> + * >> + * Note that \virt should be in a register other than r1 - r4 >> + */ >> +.macro create_table_entry, ptbl, tbl, virt, lvl >> + load_paddr r4, \tbl >> + create_table_entry_from_paddr \ptbl, r4, \virt, \lvl >> + .endm >> + >> /* >> * Macro to create a mapping entry in \tbl to \paddr. Only mapping in 3rd >> * level table (i.e page granularity) is supported. >> @@ -451,13 +471,26 @@ ENDPROC(cpu_init) >> * Output: >> * r12: Was a temporary mapping created? >> * >> - * Clobbers r0 - r4 >> + * Clobbers r0 - r5 >> */ >> create_page_tables: >> /* Prepare the page-tables for mapping Xen */ >> mov_w r0, XEN_VIRT_START >> create_table_entry boot_pgtable, boot_second, r0, 1 >> - create_table_entry boot_second, boot_third, r0, 2 >> + >> + /* >> + * We need to use a stash register because >> + * create_table_entry_paddr() will clobber the register storing >> + * the physical address of the table to point to. >> + */ >> + load_paddr r5, boot_third >> + mov_w r4, XEN_VIRT_START > Can you just reuse r0 that is already set to XEN_VIRT_START not to repeat this operation over and over again? I decided against this approach for a few reasons: * I wanted the register to be ordered when create_table_entry_from_paddr is called. * There is a necessary largish comment on top of XEN_VIRT_START. So it makes more "difficult" to find the content of the registers. I am actually a bit puzzled with your comment given you were recently the one that was pushing for adding extra ISB in the code (I still need to send a patch for that) to make the code clearer. ISBs are way more expensive than executing two instructions. So is this request just down to a matter of taste? > >> +.rept XEN_NR_ENTRIES(2) >> + mov r0, r5 /* r0 := paddr(l3 table) */ >> + create_table_entry_from_paddr boot_second, r0, r4, 2 >> + add r4, r4, #XEN_PT_LEVEL_SIZE(2) /* r4 := Next vaddr */ >> + add r5, r5, #PAGE_SIZE /* r5 := Next table */ >> +.endr >> >> /* >> * Find the size of Xen in pages and multiply by the size of a >> diff --git a/xen/arch/arm/arm64/head.S b/xen/arch/arm/arm64/head.S >> index 66bc85d4c39e..c9e2e36506d9 100644 >> --- a/xen/arch/arm/arm64/head.S >> +++ b/xen/arch/arm/arm64/head.S >> @@ -490,6 +490,31 @@ ENDPROC(cpu_init) >> ubfx \slot, \virt, #XEN_PT_LEVEL_SHIFT(\lvl), #XEN_PT_LPAE_SHIFT >> .endm >> >> +/* >> + * Macro to create a page table entry in \ptbl to \tbl >> + * ptbl: table symbol where the entry will be created >> + * tbl: physical address of the table to point to >> + * virt: virtual address >> + * lvl: page-table level >> + * tmp1: scratch register >> + * tmp2: scratch register >> + * >> + * Preserves \virt >> + * Clobbers \tbl, \tmp1, \tmp2 >> + * >> + * Note that all parameters using registers should be distinct. >> + */ >> +.macro create_table_entry_from_paddr, ptbl, tbl, virt, lvl, tmp1, tmp2 >> + get_table_slot \tmp1, \virt, \lvl /* \tmp1 := slot in \tlb */ > s/tlb/tbl I will fix this one... > >> + >> + mov \tmp2, #PT_PT /* \tmp2 := right for linear PT */ >> + orr \tmp2, \tmp2, \tbl /* + \tlb */ > s/tlb/tbl ... this one and ... > >> + >> + adr_l \tbl, \ptbl /* \tlb := address(\ptbl) */ > s/tlb/tbl this one. > >> + >> + str \tmp2, [\tbl, \tmp1, lsl #3] >> +.endm >> + >> /* >> * Macro to create a page table entry in \ptbl to \tbl >> * >> @@ -509,15 +534,8 @@ ENDPROC(cpu_init) >> * Note that all parameters using registers should be distinct. >> */ >> .macro create_table_entry, ptbl, tbl, virt, lvl, tmp1, tmp2, tmp3 >> - get_table_slot \tmp1, \virt, \lvl /* \tmp1 := slot in \tlb */ >> - >> - load_paddr \tmp2, \tbl >> - mov \tmp3, #PT_PT /* \tmp3 := right for linear PT */ >> - orr \tmp3, \tmp3, \tmp2 /* + \tlb paddr */ >> - >> - adr_l \tmp2, \ptbl >> - >> - str \tmp3, [\tmp2, \tmp1, lsl #3] >> + load_paddr \tmp1, \tbl >> + create_table_entry_from_paddr \ptbl, \tmp1, \virt, \lvl, \tmp2, \tmp3 >> .endm >> >> /* >> @@ -570,7 +588,20 @@ create_page_tables: >> ldr x0, =XEN_VIRT_START >> create_table_entry boot_pgtable, boot_first, x0, 0, x1, x2, x3 >> create_table_entry boot_first, boot_second, x0, 1, x1, x2, x3 >> - create_table_entry boot_second, boot_third, x0, 2, x1, x2, x3 >> + >> + /* >> + * We need to use a stash register because >> + * create_table_entry_paddr() will clobber the register storing >> + * the physical address of the table to point to. >> + */ >> + load_paddr x4, boot_third >> + ldr x1, =XEN_VIRT_START > Can you just reuse x0 that is already set to XEN_VIRT_START not to repeat this operation over and over again? Same as above. > >> +.rept XEN_NR_ENTRIES(2) >> + mov x0, x4 /* x0 := paddr(l3 table) */ >> + create_table_entry_from_paddr boot_second, x0, x1, 2, x2, x3 >> + add x1, x1, #XEN_PT_LEVEL_SIZE(2) /* x1 := Next vaddr */ >> + add x4, x4, #PAGE_SIZE /* x4 := Next table */ >> +.endr >> >> /* >> * Find the size of Xen in pages and multiply by the size of a >> diff --git a/xen/arch/arm/include/asm/config.h b/xen/arch/arm/include/asm/config.h >> index c969e6da589d..6d246ab23c48 100644 >> --- a/xen/arch/arm/include/asm/config.h >> +++ b/xen/arch/arm/include/asm/config.h >> @@ -125,6 +125,7 @@ >> #endif >> >> #define XEN_VIRT_SIZE _AT(vaddr_t, MB(2)) >> +#define XEN_NR_ENTRIES(lvl) (XEN_VIRT_SIZE / XEN_PT_LEVEL_SIZE(lvl)) >> >> #define FIXMAP_VIRT_START (XEN_VIRT_START + XEN_VIRT_SIZE) >> #define FIXMAP_VIRT_SIZE _AT(vaddr_t, MB(2)) >> diff --git a/xen/arch/arm/include/asm/lpae.h b/xen/arch/arm/include/asm/lpae.h >> index 7d2f6fd1bd5a..93e824f01125 100644 >> --- a/xen/arch/arm/include/asm/lpae.h >> +++ b/xen/arch/arm/include/asm/lpae.h >> @@ -267,15 +267,17 @@ lpae_t mfn_to_xen_entry(mfn_t mfn, unsigned int attr); >> >> /* >> * Macros to define page-tables: >> - * - DEFINE_BOOT_PAGE_TABLE is used to define page-table that are used >> + * - DEFINE_BOOT_PAGE_TABLE{,S} are used to define page-table that are used > s/page-table/page-table(s)/ or maybe using the same comment as for runtime pgt macro I will re-use the same wording as DEFINE_PAGE_TABLE{,S}. >> - /* Break up the Xen mapping into 4k pages and protect them separately. */ >> - for ( i = 0; i < XEN_PT_LPAE_ENTRIES; i++ ) >> + /* Break up the Xen mapping into pages and protect them separately. */ >> + for ( i = 0; i < XEN_NR_ENTRIES(3); i++ ) >> { >> vaddr_t va = XEN_VIRT_START + (i << PAGE_SHIFT); >> >> if ( !is_kernel(va) ) >> break; >> pte = pte_of_xenaddr(va); >> - pte.pt.table = 1; /* 4k mappings always have this bit set */ >> + pte.pt.table = 1; /* third level mappings always have this bit set */ >> if ( is_kernel_text(va) || is_kernel_inittext(va) ) >> { >> pte.pt.xn = 0; >> @@ -539,10 +539,14 @@ void __init setup_pagetables(unsigned long boot_phys_offset) >> >> /* Initialise xen second level entries ... */ >> /* ... Xen's text etc */ >> + for ( i = 0; i < XEN_NR_ENTRIES(2); i++ ) >> + { >> + vaddr_t va = XEN_VIRT_START + i * XEN_PT_LEVEL_SIZE(2); > For consistency with the upper loop, maybe (i << XEN_PT_LEVEL_SHIFT(2)) ? > > These are all just minor comments, so: > Reviewed-by: Michal Orzel Thanks. Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Wed Jun 28 20:35:38 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 28 Jun 2023 20:35:38 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556575.869206 (Exim 4.92) (envelope-from ) id 1qEbsw-0000ui-RO; Wed, 28 Jun 2023 20:35:30 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556575.869206; Wed, 28 Jun 2023 20:35:30 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEbsw-0000ub-Ol; Wed, 28 Jun 2023 20:35:30 +0000 Received: by outflank-mailman (input) for mailman id 556575; Wed, 28 Jun 2023 20:35:29 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEbsv-0000uV-F5 for xen-devel@lists.xenproject.org; Wed, 28 Jun 2023 20:35:29 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEbsu-0005QZ-LR; Wed, 28 Jun 2023 20:35:28 +0000 Received: from 54-240-197-238.amazon.com ([54.240.197.238] helo=[192.168.5.86]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qEbsu-0007a8-FQ; Wed, 28 Jun 2023 20:35:28 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=g8BVXC2zyb1KXr5ogLVdxzZCb/RRyNAhftQfMKBDpKU=; b=NSjmj9DsddtP9QRdIhui9fLBn2 2YF+JZ4nOXXOSlYA/X4fO7zCXqe1mPTTQZe3YbfuJQkBI6lRq8M1nlZYdZmTg33TzuNFD6REhEVSB QJ12sd2Lj1360e55K1oo/FN1mt0Pgfmmexc9pH3Fgpv0szT+LyziQNE2yygO7T6omebI=; Message-ID: <3caaf967-b7ba-0915-56aa-aeff5450a456@xen.org> Date: Wed, 28 Jun 2023 21:35:26 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH 8/9] xen/arm: Allow the user to build Xen with USBAN Content-Language: en-US To: Henry Wang , "xen-devel@lists.xenproject.org" Cc: Luca Fancellu , "michal.orzel@amd.com" , Julien Grall , Stefano Stabellini , Bertrand Marquis , Volodymyr Babchuk References: <20230625204907.57291-1-julien@xen.org> <20230625204907.57291-9-julien@xen.org> From: Julien Grall In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit On 26/06/2023 08:29, Henry Wang wrote: > Hi Julien, Hi Henry, >> -----Original Message----- >> From: Julien Grall >> Subject: [PATCH 8/9] xen/arm: Allow the user to build Xen with USBAN > > Typo in title: s/USBAN/UBSAN/ and... > >> >> From: Julien Grall >> >> UBSAN has been enabled a few years ago on x86 but was never >> enabled on Arm because the final binary is bigger than 2MB ( >> the maximum we can currently handled). >> >> With the recent rework, it is now possible to grow Xen over 2MB. >> So there is no more roadblock to enable Xen other than increasing >> the reserved area. >> >> On my setup, for arm32, the final binaray was very close to 4MB. >> Furthermore, one may want to enable USBAN and GCOV which would put > > ...here also. > >> the binary well-over 4MB (both features require for some space). >> Therefore, increase the size to 8MB which should us some margin. >> >> Signed-off-by: Julien Grall > > Both typos can be fixed on commit and I think I am good with the > current approach, so: > > Reviewed-by: Henry Wang Thanks, I will fix both typos. > > I did a play with UBSAN enabled on FVP (arm64), in my setup, > the result Xen file is 3.7MB: > > -rwxrwxr-x 1 xinwan02 xinwan02 3.7M Jun 26 14:47 xen > lrwxrwxrwx 1 xinwan02 xinwan02 3 Jun 26 14:47 xen.efi -> xen > -rwxrwxr-x 1 xinwan02 xinwan02 14M Jun 26 14:47 xen-syms > > and the Xen and Dom0 booted fine and I can login Dom0. So > technically: > > Tested-by: Henry Wang > > However, I noticed Xen will print below during the Dom0 boot: > (XEN) ================================================================================ > (XEN) UBSAN: Undefined behaviour in arch/arm/vgic.c:371:15 > (XEN) left shift of 1 by 31 places cannot be represented in type 'int' > (XEN) Xen WARN at common/ubsan/ubsan.c:172 > > Just want to make sure you also noticed this, otherwise maybe you > can include another patch in the series to fix this? I haven't seen this one. Probably because you would need a setup where interrupts are around ID 1022. Or I can do that > in case you don't have enough bandwidth. You have the setup to exercise the problem. So it would be best if you do it. Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Wed Jun 28 20:39:41 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 28 Jun 2023 20:39:41 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556579.869217 (Exim 4.92) (envelope-from ) id 1qEbwo-0001VL-An; Wed, 28 Jun 2023 20:39:30 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556579.869217; Wed, 28 Jun 2023 20:39:30 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEbwo-0001VE-7w; Wed, 28 Jun 2023 20:39:30 +0000 Received: by outflank-mailman (input) for mailman id 556579; Wed, 28 Jun 2023 20:39:29 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEbwn-0001V7-Ma for xen-devel@lists.xenproject.org; Wed, 28 Jun 2023 20:39:29 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEbwn-0005Ta-Bj; Wed, 28 Jun 2023 20:39:29 +0000 Received: from 54-240-197-238.amazon.com ([54.240.197.238] helo=[192.168.5.86]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qEbwn-0007kM-5o; Wed, 28 Jun 2023 20:39:29 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=RrqkAOx4LkYD6BhbuQ+sR1xGXRky6FwwKXDWIOmrGbM=; b=dJJYY7OWJ+ZLS05+5s/SESDc47 7tVhJTWOGRu34WpnihyjnitNibLI4tVdvQLHHG3b1H0Zj6Mp4kcdF3RHVLUmHbmo6l3yxyGpHEzLG bmY4nOHcH7i45pW/uQ88s87ZY/XjaIuMf+We5iQBp1nPwIVOTF2BxrsKW55sq2sd72n0=; Message-ID: Date: Wed, 28 Jun 2023 21:39:27 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH 8/9] xen/arm: Allow the user to build Xen with USBAN Content-Language: en-US To: Michal Orzel , xen-devel@lists.xenproject.org Cc: Luca.Fancellu@arm.com, Henry.Wang@arm.com, Julien Grall , Stefano Stabellini , Bertrand Marquis , Volodymyr Babchuk References: <20230625204907.57291-1-julien@xen.org> <20230625204907.57291-9-julien@xen.org> <804682ce-ad88-34dc-1501-c9ff6347fb8b@amd.com> From: Julien Grall In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit On 27/06/2023 09:09, Michal Orzel wrote: > Hi Julien, > > On 26/06/2023 14:56, Julien Grall wrote: >> >> >> Hi, >> >> On 26/06/2023 12:56, Michal Orzel wrote: >>> >>> >>> On 25/06/2023 22:49, Julien Grall wrote: >>>> >>>> >>>> From: Julien Grall >>>> >>>> UBSAN has been enabled a few years ago on x86 but was never >>>> enabled on Arm because the final binary is bigger than 2MB ( >>>> the maximum we can currently handled). >>>> >>>> With the recent rework, it is now possible to grow Xen over 2MB. >>>> So there is no more roadblock to enable Xen other than increasing >>>> the reserved area. >>>> >>>> On my setup, for arm32, the final binaray was very close to 4MB. >>>> Furthermore, one may want to enable USBAN and GCOV which would put >>>> the binary well-over 4MB (both features require for some space). >>>> Therefore, increase the size to 8MB which should us some margin. >>>> >>>> Signed-off-by: Julien Grall >>>> >>>> ---- >>>> >>>> The drawback with this approach is that we are adding 6 new >>>> page-table (3 for boot and 3 for runtime) that are statically >>>> allocated. So the final Xen binary will be 24KB bigger when >>>> neither UBSAN nor GCOV. >>>> >>>> If this is not considered acceptable, then we could make the >>>> size of configurable in the Kconfig and decide it based on the >>>> features enabled. >>> Both of these features are enabled only in a debug build of Xen, so >>> another option would be to increase Xen size only for a debug build. >> >> At least UBSAN can be selected without DEBUG. For that you need to add >> EXPERT. >> >> Anyway, from your comment, it is not clear to me whether you dislike the >> existing approach (and why) or you are OK with the increase. > Sorry, I was traveling and did not have time to complete review. > I cannot see why increasing the size would be problematic so it is ok. That said, it could be > a good idea to write some comment above XEN_VIRT_SIZE, that this value is somewhat exaggerated, > so that we are on the safe side at the time of activating features like UBSAN/GCOV. Sure. I will add a comment in this patch. For ... > > Also, it would be nice to update comments in head.S of both arm32 and arm64 above > GLOBAL(start) that were left stating: > "All of text+data+bss must fit in 2MB, or the initial pagetable code below will need adjustment." ... this one, I am thinking to drop the comments in patch #5. They don't make sense anymore as we can now in theory deal with Xen up to the size of a L2 mapping (1GB for 4KB). > > Other than that: > Reviewed-by: Michal Orzel Thanks. Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Wed Jun 28 21:23:51 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 28 Jun 2023 21:23:51 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556585.869226 (Exim 4.92) (envelope-from ) id 1qEcdV-0006tV-LG; Wed, 28 Jun 2023 21:23:37 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556585.869226; Wed, 28 Jun 2023 21:23:37 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEcdV-0006tO-Ij; Wed, 28 Jun 2023 21:23:37 +0000 Received: by outflank-mailman (input) for mailman id 556585; Wed, 28 Jun 2023 21:23:36 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEcdU-0006tE-Ia; Wed, 28 Jun 2023 21:23:36 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEcdU-0006VN-B4; Wed, 28 Jun 2023 21:23:36 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEcdT-0000q4-MA; Wed, 28 Jun 2023 21:23:35 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qEcdT-00044g-Lm; Wed, 28 Jun 2023 21:23:35 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=3eOPeEdFS6QRdBDgaLxMt0H5lL4gNpaWKPYrBnlt+0g=; b=3DjEFX94xao2+t3ypRtrOQnnlE byJUbknoB4751rd0UmpEda17ZBp1Od0syIr+LfzE+MpZvpSlI04C7QmiSjGPhwxJyJGvP23FWMsrt U7LZx4oR8NTVWHrrz8IoDzpCpvygxdC7PrNzVxyT5Dh4n/+4cmmEPjOMNSGsj/4ZKUj4=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable-smoke test] 181629: tolerable all pass - PUSHED X-Osstest-Failures: xen-unstable-smoke:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking xen-unstable-smoke:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking xen-unstable-smoke:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking xen-unstable-smoke:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking xen-unstable-smoke:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: xen=6c32a08e2b7e6d796081ed84c84ad682bcc4b3a6 X-Osstest-Versions-That: xen=5c84f1f636981dab5341e84aaba8d4dd00bbc2cb From: osstest service owner Date: Wed, 28 Jun 2023 21:23:35 +0000 flight 181629 xen-unstable-smoke real [real] http://logs.test-lab.xenproject.org/osstest/logs/181629/ Failures :-/ but no regressions. Tests which did not succeed, but are not blocking: test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-armhf-armhf-xl 15 migrate-support-check fail never pass test-armhf-armhf-xl 16 saverestore-support-check fail never pass version targeted for testing: xen 6c32a08e2b7e6d796081ed84c84ad682bcc4b3a6 baseline version: xen 5c84f1f636981dab5341e84aaba8d4dd00bbc2cb Last test of basis 181547 2023-06-22 03:02:21 Z 6 days Testing same since 181627 2023-06-28 16:00:25 Z 0 days 2 attempts ------------------------------------------------------------ People who touched revisions under test: Andrew Cooper jobs: build-arm64-xsm pass build-amd64 pass build-armhf pass build-amd64-libvirt pass test-armhf-armhf-xl pass test-arm64-arm64-xl-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-libvirt pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Pushing revision : To xenbits.xen.org:/home/xen/git/xen.git 5c84f1f636..6c32a08e2b 6c32a08e2b7e6d796081ed84c84ad682bcc4b3a6 -> smoke From xen-devel-bounces@lists.xenproject.org Wed Jun 28 21:26:25 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 28 Jun 2023 21:26:25 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556591.869238 (Exim 4.92) (envelope-from ) id 1qEcg7-0007UE-5F; Wed, 28 Jun 2023 21:26:19 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556591.869238; Wed, 28 Jun 2023 21:26:19 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEcg7-0007U7-0R; Wed, 28 Jun 2023 21:26:19 +0000 Received: by outflank-mailman (input) for mailman id 556591; Wed, 28 Jun 2023 21:26:17 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEcg5-0007Tx-QV; Wed, 28 Jun 2023 21:26:17 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEcg5-0006Yv-Pe; Wed, 28 Jun 2023 21:26:17 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEcg5-0000uM-Fv; Wed, 28 Jun 2023 21:26:17 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qEcg5-0005mh-FT; Wed, 28 Jun 2023 21:26:17 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=CbG0fGpbJoI0J4VeophSsYB+mGvBhbINCnKKdI3QeXA=; b=vRmSEVIlgi47SAmBjLJS/+Az3F yiTq0lC+QHGNBQjmbeia6RXe/dyA8fDLXYhwSHgJ/tCnLfwEC7JqXVw2fjFP7ScIvMRSj4nMAyA3H YgjfgkWP1pfAghlPa/hibic8fTpOq9bAxaX8OsDg405bgANIBinHl+M0/HIfbcE3+vvA=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [ovmf test] 181630: all pass - PUSHED X-Osstest-Versions-This: ovmf=6607062e91f676db8764871e2a40ee8704e8a731 X-Osstest-Versions-That: ovmf=4416bf3383485d2265b8e1baca7ed9c9c04eb40b From: osstest service owner Date: Wed, 28 Jun 2023 21:26:17 +0000 flight 181630 ovmf real [real] http://logs.test-lab.xenproject.org/osstest/logs/181630/ Perfect :-) All tests in this flight passed as required version targeted for testing: ovmf 6607062e91f676db8764871e2a40ee8704e8a731 baseline version: ovmf 4416bf3383485d2265b8e1baca7ed9c9c04eb40b Last test of basis 181622 2023-06-28 07:43:45 Z 0 days Testing same since 181630 2023-06-28 19:40:44 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Kun Qin jobs: build-amd64-xsm pass build-i386-xsm pass build-amd64 pass build-i386 pass build-amd64-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-i386-pvops pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Pushing revision : To xenbits.xen.org:/home/xen/git/osstest/ovmf.git 4416bf3383..6607062e91 6607062e91f676db8764871e2a40ee8704e8a731 -> xen-tested-master From xen-devel-bounces@lists.xenproject.org Wed Jun 28 21:58:36 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 28 Jun 2023 21:58:36 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556597.869247 (Exim 4.92) (envelope-from ) id 1qEdBA-0002YY-Gz; Wed, 28 Jun 2023 21:58:24 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556597.869247; Wed, 28 Jun 2023 21:58:24 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEdBA-0002YR-EG; Wed, 28 Jun 2023 21:58:24 +0000 Received: by outflank-mailman (input) for mailman id 556597; Wed, 28 Jun 2023 21:58:23 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEdB9-0002YH-3U; Wed, 28 Jun 2023 21:58:23 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEdB8-0007IC-Uh; Wed, 28 Jun 2023 21:58:22 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEdB8-0001eD-EJ; Wed, 28 Jun 2023 21:58:22 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qEdB8-0007I2-Do; Wed, 28 Jun 2023 21:58:22 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=TdTFfFLdHgvUDNzueMolxBTk7UXHnmOERImslbLLaTA=; b=RcwAFoY6m9/6choEny/kQ5Bskn 8K1XsBWrn0rNbXVHHD8spWaczdtPfoVLxzf3CN06MnlZqEP2S2k/VRqK2oKjfj1f+DpI8rL2BSSlg yyzsaVQn7T1p5BqXKHOmWGDE5zoPWm++/P7u56zv5YdauiTcrN/SJxDoNHQA2rIGXLS0=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [linux-linus test] 181624: regressions - FAIL X-Osstest-Failures: linux-linus:test-amd64-amd64-qemuu-nested-amd:leak-check/basis(11):fail:regression linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:xen-boot:fail:regression linux-linus:test-amd64-amd64-pygrub:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:xen-boot:fail:regression linux-linus:test-amd64-amd64-libvirt-xsm:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-xsm:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-qemut-debianhvm-amd64:leak-check/basis(11):fail:regression linux-linus:test-amd64-amd64-libvirt:leak-check/basis(11):fail:regression linux-linus:test-amd64-amd64-libvirt-qcow2:leak-check/basis(11):fail:regression linux-linus:test-amd64-amd64-xl-credit2:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64:leak-check/basis(11):fail:regression linux-linus:test-amd64-amd64-xl-pvhv2-amd:leak-check/basis(11):fail:regression linux-linus:test-amd64-amd64-xl-qemuu-ovmf-amd64:leak-check/basis(11):fail:regression linux-linus:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:xen-boot:fail:regression linux-linus:test-amd64-amd64-freebsd11-amd64:freebsd-install:fail:regression linux-linus:test-amd64-amd64-libvirt-raw:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:leak-check/basis(11):fail:regression linux-linus:test-amd64-amd64-xl-shadow:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-multivcpu:debian-install:fail:regression linux-linus:test-amd64-amd64-xl:debian-install:fail:regression linux-linus:test-amd64-amd64-xl-credit1:debian-install:fail:regression linux-linus:test-amd64-coresched-amd64-xl:debian-install:fail:regression linux-linus:test-amd64-amd64-libvirt-pair:xen-boot/src_host:fail:regression linux-linus:test-amd64-amd64-libvirt-pair:xen-boot/dst_host:fail:regression linux-linus:test-amd64-amd64-xl-pvhv2-intel:xen-boot:fail:regression linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:debian-hvm-install:fail:regression linux-linus:test-amd64-amd64-xl-vhd:xen-boot:fail:regression linux-linus:test-amd64-amd64-freebsd12-amd64:xen-boot:fail:regression linux-linus:test-amd64-amd64-qemuu-nested-intel:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm:debian-hvm-install:fail:regression linux-linus:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-pvshim:xen-boot:fail:regression linux-linus:test-amd64-amd64-pair:xen-boot/src_host:fail:regression linux-linus:test-amd64-amd64-pair:xen-boot/dst_host:fail:regression linux-linus:test-armhf-armhf-xl-credit1:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:windows-install:fail:regression linux-linus:test-amd64-amd64-examine:reboot:fail:regression linux-linus:test-amd64-amd64-examine-uefi:reboot:fail:regression linux-linus:test-amd64-amd64-examine-bios:reboot:fail:regression linux-linus:test-amd64-amd64-xl-rtds:xen-boot:fail:allowable linux-linus:test-armhf-armhf-examine:reboot:fail:nonblocking linux-linus:test-armhf-armhf-xl-arndale:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-raw:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-credit2:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-rtds:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-qcow2:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-vhd:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-multivcpu:xen-boot:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: linux=6aeadf7896bff4ca230702daba8788455e6b866e X-Osstest-Versions-That: linux=6c538e1adbfc696ac4747fb10d63e704344f763d From: osstest service owner Date: Wed, 28 Jun 2023 21:58:22 +0000 flight 181624 linux-linus real [real] http://logs.test-lab.xenproject.org/osstest/logs/181624/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: test-amd64-amd64-qemuu-nested-amd 11 leak-check/basis(11) fail REGR. vs. 180278 test-amd64-amd64-xl-qemuu-ws16-amd64 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-pygrub 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-xl-qemuu-win7-amd64 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-xl-qemut-win7-amd64 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-libvirt-xsm 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-xl-xsm 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-xl-qemut-debianhvm-amd64 11 leak-check/basis(11) fail REGR. vs. 180278 test-amd64-amd64-libvirt 11 leak-check/basis(11) fail REGR. vs. 180278 test-amd64-amd64-libvirt-qcow2 11 leak-check/basis(11) fail REGR. vs. 180278 test-amd64-amd64-xl-credit2 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-xl-qemuu-debianhvm-amd64 11 leak-check/basis(11) fail REGR. vs. 180278 test-amd64-amd64-xl-pvhv2-amd 11 leak-check/basis(11) fail REGR. vs. 180278 test-amd64-amd64-xl-qemuu-ovmf-amd64 11 leak-check/basis(11) fail REGR. vs. 180278 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-freebsd11-amd64 12 freebsd-install fail REGR. vs. 180278 test-amd64-amd64-libvirt-raw 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 11 leak-check/basis(11) fail REGR. vs. 180278 test-amd64-amd64-xl-shadow 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-xl-multivcpu 12 debian-install fail REGR. vs. 180278 test-amd64-amd64-xl 12 debian-install fail REGR. vs. 180278 test-amd64-amd64-xl-credit1 12 debian-install fail REGR. vs. 180278 test-amd64-coresched-amd64-xl 12 debian-install fail REGR. vs. 180278 test-amd64-amd64-libvirt-pair 12 xen-boot/src_host fail REGR. vs. 180278 test-amd64-amd64-libvirt-pair 13 xen-boot/dst_host fail REGR. vs. 180278 test-amd64-amd64-xl-pvhv2-intel 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 12 debian-hvm-install fail REGR. vs. 180278 test-amd64-amd64-xl-vhd 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-freebsd12-amd64 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-qemuu-nested-intel 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm 12 debian-hvm-install fail REGR. vs. 180278 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-xl-pvshim 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-pair 12 xen-boot/src_host fail REGR. vs. 180278 test-amd64-amd64-pair 13 xen-boot/dst_host fail REGR. vs. 180278 test-armhf-armhf-xl-credit1 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-xl-qemut-ws16-amd64 12 windows-install fail REGR. vs. 180278 test-amd64-amd64-examine 8 reboot fail REGR. vs. 180278 test-amd64-amd64-examine-uefi 8 reboot fail REGR. vs. 180278 test-amd64-amd64-examine-bios 8 reboot fail REGR. vs. 180278 Regressions which are regarded as allowable (not blocking): test-amd64-amd64-xl-rtds 8 xen-boot fail REGR. vs. 180278 Tests which did not succeed, but are not blocking: test-armhf-armhf-examine 8 reboot fail like 180278 test-armhf-armhf-xl-arndale 8 xen-boot fail like 180278 test-armhf-armhf-xl 8 xen-boot fail like 180278 test-armhf-armhf-libvirt-raw 8 xen-boot fail like 180278 test-armhf-armhf-xl-credit2 8 xen-boot fail like 180278 test-armhf-armhf-xl-rtds 8 xen-boot fail like 180278 test-armhf-armhf-libvirt 8 xen-boot fail like 180278 test-armhf-armhf-libvirt-qcow2 8 xen-boot fail like 180278 test-armhf-armhf-xl-vhd 8 xen-boot fail like 180278 test-armhf-armhf-xl-multivcpu 8 xen-boot fail like 180278 test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass version targeted for testing: linux 6aeadf7896bff4ca230702daba8788455e6b866e baseline version: linux 6c538e1adbfc696ac4747fb10d63e704344f763d Last test of basis 180278 2023-04-16 19:41:46 Z 73 days Failing since 180281 2023-04-17 06:24:36 Z 72 days 139 attempts Testing same since 181624 2023-06-28 11:43:59 Z 0 days 1 attempts ------------------------------------------------------------ 2904 people touched revisions under test, not listing them all jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl fail test-amd64-coresched-amd64-xl fail test-arm64-arm64-xl pass test-armhf-armhf-xl fail test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm fail test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm fail test-amd64-amd64-xl-qemut-debianhvm-i386-xsm fail test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm fail test-amd64-amd64-libvirt-xsm fail test-arm64-arm64-libvirt-xsm pass test-amd64-amd64-xl-xsm fail test-arm64-arm64-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd fail test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 fail test-amd64-amd64-xl-qemuu-debianhvm-amd64 fail test-amd64-amd64-freebsd11-amd64 fail test-amd64-amd64-freebsd12-amd64 fail test-amd64-amd64-xl-qemuu-ovmf-amd64 fail test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale fail test-amd64-amd64-examine-bios fail test-amd64-amd64-xl-credit1 fail test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 fail test-amd64-amd64-xl-credit2 fail test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 fail test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict fail test-amd64-amd64-examine fail test-arm64-arm64-examine pass test-armhf-armhf-examine fail test-amd64-amd64-qemuu-nested-intel fail test-amd64-amd64-xl-pvhv2-intel fail test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt fail test-armhf-armhf-libvirt fail test-amd64-amd64-xl-multivcpu fail test-armhf-armhf-xl-multivcpu fail test-amd64-amd64-pair fail test-amd64-amd64-libvirt-pair fail test-amd64-amd64-xl-pvshim fail test-amd64-amd64-pygrub fail test-amd64-amd64-libvirt-qcow2 fail test-armhf-armhf-libvirt-qcow2 fail test-amd64-amd64-libvirt-raw fail test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw fail test-amd64-amd64-xl-rtds fail test-armhf-armhf-xl-rtds fail test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow fail test-amd64-amd64-xl-shadow fail test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi fail test-amd64-amd64-xl-vhd fail test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd fail ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 395829 lines long.) From xen-devel-bounces@lists.xenproject.org Wed Jun 28 22:02:33 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 28 Jun 2023 22:02:33 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556603.869257 (Exim 4.92) (envelope-from ) id 1qEdF0-00041e-25; Wed, 28 Jun 2023 22:02:22 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556603.869257; Wed, 28 Jun 2023 22:02:22 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEdEz-00041X-V5; Wed, 28 Jun 2023 22:02:21 +0000 Received: by outflank-mailman (input) for mailman id 556603; Wed, 28 Jun 2023 22:02:21 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEdEz-00041R-09 for xen-devel@lists.xenproject.org; Wed, 28 Jun 2023 22:02:21 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 7295c44a-15ff-11ee-8611-37d641c3527e; Thu, 29 Jun 2023 00:02:18 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id E3BEF61414; Wed, 28 Jun 2023 22:02:16 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 34358C433C8; Wed, 28 Jun 2023 22:02:15 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 7295c44a-15ff-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1687989736; bh=jpBov/pu9cRHFHNhDmVsdX9yyRWKa2xMdjyeoBAG7ww=; h=Date:From:To:cc:Subject:In-Reply-To:References:From; b=MEfo14DOHiNMVvL+Ch9UyiXEB2DGF6xaczCnuEKue5ad2Y3uPL3FkQNqvbf7uw/iV 2WqQbOHcCZzSgd0gjp4s7/CtptoAy+5er0mnqQegRinAOzYUikzuNDp/2H7sEABi1q 6xJOlkipXrxHUVmeYDHrq9YhHgSiFspX3XHCGaL+EXXwgkp7cF3iidOsmXry7MT4R1 5xizyXv2eI6l3JDDkpF+sV7yPfoRPcwy7bQEE/U8I7D6VHIVbcoMN4Ps8PuU1TCTVk tmHejFmcxEgvn0R+V2mQDCnqcv/9pqs3mAHPtgvoTfUmGXPX+u+mQZ4nAQYAYwHd0M n1zK+NZNuJUXQ== Date: Wed, 28 Jun 2023 15:02:05 -0700 (PDT) From: Stefano Stabellini X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop To: Luca Fancellu cc: Michal Orzel , Xen-devel , Andrew Cooper , George Dunlap , Jan Beulich , Julien Grall , Stefano Stabellini , Wei Liu Subject: Re: [PATCH] docs/misra: rules: Remove incorrect deviation guidance In-Reply-To: <5B96F3AA-804C-4245-83B9-D3DABE02A942@arm.com> Message-ID: References: <20230628083701.5489-1-michal.orzel@amd.com> <5B96F3AA-804C-4245-83B9-D3DABE02A942@arm.com> User-Agent: Alpine 2.22 (DEB 394 2020-01-19) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII On Wed, 28 Jun 2023, Luca Fancellu wrote: > > On 28 Jun 2023, at 09:37, Michal Orzel wrote: > > > > It creates confusion since the new format of documenting violations can > > be found in: docs/misra/documenting-violations.rst. > > > > Signed-off-by: Michal Orzel > > --- > > Wow we missed that! Thanks! > > Reviewed-by: Luca Fancellu Reviewed-by: Stefano Stabellini From xen-devel-bounces@lists.xenproject.org Wed Jun 28 22:16:58 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 28 Jun 2023 22:16:58 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556609.869267 (Exim 4.92) (envelope-from ) id 1qEdT2-0005gj-Bu; Wed, 28 Jun 2023 22:16:52 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556609.869267; Wed, 28 Jun 2023 22:16:52 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEdT2-0005gc-9B; Wed, 28 Jun 2023 22:16:52 +0000 Received: by outflank-mailman (input) for mailman id 556609; Wed, 28 Jun 2023 22:16:51 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEdT1-0005gW-4l for xen-devel@lists.xenproject.org; Wed, 28 Jun 2023 22:16:51 +0000 Received: from EUR04-HE1-obe.outbound.protection.outlook.com (mail-he1eur04on2082.outbound.protection.outlook.com [40.107.7.82]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 79a396d8-1601-11ee-8611-37d641c3527e; Thu, 29 Jun 2023 00:16:48 +0200 (CEST) Received: from AS9PR06CA0172.eurprd06.prod.outlook.com (2603:10a6:20b:45c::35) by AM8PR08MB5619.eurprd08.prod.outlook.com (2603:10a6:20b:1d8::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.26; Wed, 28 Jun 2023 22:16:18 +0000 Received: from AM7EUR03FT022.eop-EUR03.prod.protection.outlook.com (2603:10a6:20b:45c:cafe::44) by AS9PR06CA0172.outlook.office365.com (2603:10a6:20b:45c::35) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.21 via Frontend Transport; Wed, 28 Jun 2023 22:16:18 +0000 Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by AM7EUR03FT022.mail.protection.outlook.com (100.127.140.217) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.20 via Frontend Transport; Wed, 28 Jun 2023 22:16:17 +0000 Received: ("Tessian outbound e2424c13b707:v142"); Wed, 28 Jun 2023 22:16:17 +0000 Received: from 65d37b63d849.2 by 64aa7808-outbound-1.mta.getcheckrecipient.com id EB84C7ED-6BCD-44DC-809E-99E11C799CDC.1; Wed, 28 Jun 2023 22:16:10 +0000 Received: from EUR05-DB8-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 65d37b63d849.2 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Wed, 28 Jun 2023 22:16:10 +0000 Received: from AM6PR08MB3749.eurprd08.prod.outlook.com (2603:10a6:20b:8f::22) by VI1PR08MB9983.eurprd08.prod.outlook.com (2603:10a6:800:1c8::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.23; Wed, 28 Jun 2023 22:16:07 +0000 Received: from AM6PR08MB3749.eurprd08.prod.outlook.com ([fe80::ed0b:5730:a1f9:577b]) by AM6PR08MB3749.eurprd08.prod.outlook.com ([fe80::ed0b:5730:a1f9:577b%5]) with mapi id 15.20.6521.026; Wed, 28 Jun 2023 22:16:06 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 79a396d8-1601-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=YL+8vO1fPuHLtr+haOPeUDb5vAQltYsrQHcAvuNg/aE=; b=DCT09L562MCyjL1hZ775dummbATsJ0w1qu0Qhhy6B/M79R7HvGEEYrZ7nnEu6dGCWLm7Qdk9zXX1U3Q3TZ8UGUTV8BYDE/JvPlKnu4u8cjgN66GdUQCV2azt6AhpsGwBSLjMmoBoKVCjE71tlbG1xDahe3Who5PQTa0WHt0qcLM= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C X-CheckRecipientChecked: true X-CR-MTA-CID: e9fce5e95aea0427 X-CR-MTA-TID: 64aa7808 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=GTzfgDISrDMYgDyR3972AqI0U5HCchRly27fn1syYQN41ITAcdwVsFS7SbyPJgRqdoYSEZvme6Ui6iTdeCo5Of+Iagm6A8arYrnJfk+VN7midsiaCq6zqz4jXKIU+r8EWEj0P0D18DTBuJslCR0KgAegEeWAoiuRlWza26C7LcWq3Aa59IMg2XDtukdayYrwJXXYMg2tF0mlzqTyEMTtczWumojgSmXP06nmrT1WbNavXxAQxzzVreS2io1bBSGoNeAq8ELYTsCRvIPwDHNeRYup3DdNnWvTv2ycB4Nsi33cJz3qURHXuteSk5qQZyK7nH1BytPjWQsG053L5p4lqA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=YL+8vO1fPuHLtr+haOPeUDb5vAQltYsrQHcAvuNg/aE=; b=VU9MswOXK3EY/0cSLlMAXlmtPMGTmJONquMn/Nt6JVTVJGsZCDZP/L8jEYw+Upl5CcTfjZ1zD2V8tKdgfmB1p76gdfvBBEzHuPT+0BAd6VPgzdcY39FQveVAdIZoKtS8kuVUn50zShTMEnqx70KoNDVCc1reFbKxZfWqY75k/adyfrsXNpNtTqt/9dWmn1JpHLBLg0UGtDqJeIHr93NQNsrSxYV6W4Jr0dF/5meazDlYs6Fc9LhyuRgbyXatXDYAkCVVjHuOegP2yUeBLV/Y0LC7ADGZS4uXOVLfPyaRPnprczuwFEn3gDkpUcEzmGS+n0N1a7TJhFzWoG4/TUi0Tg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=YL+8vO1fPuHLtr+haOPeUDb5vAQltYsrQHcAvuNg/aE=; b=DCT09L562MCyjL1hZ775dummbATsJ0w1qu0Qhhy6B/M79R7HvGEEYrZ7nnEu6dGCWLm7Qdk9zXX1U3Q3TZ8UGUTV8BYDE/JvPlKnu4u8cjgN66GdUQCV2azt6AhpsGwBSLjMmoBoKVCjE71tlbG1xDahe3Who5PQTa0WHt0qcLM= From: Luca Fancellu To: Julien Grall CC: Michal Orzel , Xen-devel , Henry Wang , Julien Grall , Stefano Stabellini , Bertrand Marquis , Volodymyr Babchuk Subject: Re: [PATCH 8/9] xen/arm: Allow the user to build Xen with USBAN Thread-Topic: [PATCH 8/9] xen/arm: Allow the user to build Xen with USBAN Thread-Index: AQHZqCVKqSS9NESvYkiMqVhGapxYkq+dCvMAgAFCKgCAAmPbgIAAGvUA Date: Wed, 28 Jun 2023 22:16:06 +0000 Message-ID: <6D9B991F-C812-498C-97C8-5B6600022994@arm.com> References: <20230625204907.57291-1-julien@xen.org> <20230625204907.57291-9-julien@xen.org> <804682ce-ad88-34dc-1501-c9ff6347fb8b@amd.com> In-Reply-To: Accept-Language: en-GB, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-mailer: Apple Mail (2.3731.600.7) Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-traffictypediagnostic: AM6PR08MB3749:EE_|VI1PR08MB9983:EE_|AM7EUR03FT022:EE_|AM8PR08MB5619:EE_ X-MS-Office365-Filtering-Correlation-Id: 5be733f7-4086-4d81-ed62-08db78254b69 x-checkrecipientrouted: true nodisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: t70yQa8/Wiycfmb1LSjelQTEJvlJTCTih5NH6ggn91WrIH26DxX4Mxbv5R0E7cUohqK8tAo4bwss+vBt1Di1U5t3ihAf2t2RnkvaVKdD4fNDDz+reIL0Mn4rd/zpV7wauydH2k/gptmhV4YST2T0eM6hOcU492b/Q0HwAJ0temAoUPt3A0OJiDDRTeKQr3YJAS8i8LZmou8N2Z4UMzK2/0s51wqalFz83qLIITzLXvbmrbgfIuceLgHIBr7vSEvBAFvdOlLz8DWI9ySbtv1Ni2g2NHel3gsSlaEUrgP3ymYLpaFk/4beQ1ycC+zA3J8PA//uNYXTpCh9ocwSJigvK94nUj+ufF6pm9ydkuXvIytB4C2n+znhyax2pyd9DaCZpB9z/zn4ZccI1iLx4y3GsLi4tzg0XfXrzknf8XR5k4nq5DDIIlEgrIoumUmT1gqLNPyGcgGLwno9GCYTMZdV1odZNw3Ii1ehzFWHRl4yQGTWPI/vFi9d5wp8vJVc7UgLXN5JPfh3XRgW5dj1W3theCkUH+HE4qxwrTYHkLp7A245lDjFMw8slHyzigzP9pf3s1CyLvKMkrpJH8qZnD3YTba65tjKLTHt1aayKEhCnLYEv91StqF6BJ11iMJI3QRyOPX9XDc2dQzWXp2O8sBucg== X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM6PR08MB3749.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(346002)(376002)(366004)(39860400002)(136003)(396003)(451199021)(316002)(38100700002)(8936002)(8676002)(38070700005)(2616005)(33656002)(86362001)(6916009)(4326008)(36756003)(54906003)(66476007)(76116006)(83380400001)(66446008)(64756008)(66946007)(66556008)(41300700001)(2906002)(91956017)(71200400001)(5660300002)(6512007)(6486002)(186003)(26005)(478600001)(6506007)(66899021)(122000001)(53546011)(45980500001);DIR:OUT;SFP:1101; Content-Type: text/plain; charset="utf-8" Content-ID: <6700186ED736C64AA5553DA8E7AEBA7D@eurprd08.prod.outlook.com> Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR08MB9983 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: AM7EUR03FT022.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: 154130a3-182f-4a71-7c98-08db782544f7 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: Fx3F41D3VE67uXZKeM0uZL0WQIj5YeeKfAe7djbQsZoDuioWBonCFhmVFEr4E8kXWMStYTB34wKrnbx2BB8cBORpuV+7D6qwq3eOpbdlqiSm5EwK1Fu0iDMIsSWy340VT918s3cGAWv+XOmdeLmaFyIb/x7i+fyyQC/ULzjem5h6hWiNIKFDprSg6O+LK0MJzve3zBdTCdTlJnPFbjk1CSsu1927pIMTJ3gG1dzTuzUCPJIwzT4iFpo70BHwHz4cu5Um+xapGzvoyX1qUz7nVxvkUExaF9Z/rMfYbu4z9WJrAQEnvl9hNwOjuIt22y6bZgc3XV9B6B6luJXDIWFIoCOhJkEXH57XVKJX/T1dy79GvO0nu9NLYrJkX48nR9VwOwJKBhnCMEenWD791i+SSg1/pOmah3UDhdvLwmE6V0VhNMVapeqq8+2i9NuNbVoSE/pGnvKkK332wPFaPn89YOuvGw3DBv9Yy30RyX8lwKOZN2XiFOuZoH6wGJFLC1RhVxKdEb0OG/Qy3osil+MMgYVGNk7yPujUXRbxMTF58/VmaHn3T8+uEIL3tReADlpBXoouAD/Ll05jXkiHS66nVi9aObmsJRE+MFyxvFxc3MJLrncojMLWuQBvAAjC38m5ztImZ8zws/20e2NZUKLNawr0+yRHJOfLISbLyleHzPrTkSgTMh+6g6GVnWZ6Syq/gB+USeLNQurALnzvm0J4bA2l8L5e8vhwdB2xXuKrmsOWuMGHPZ4DH42j00BuBgJt X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230028)(4636009)(396003)(346002)(136003)(39860400002)(376002)(451199021)(46966006)(40470700004)(36840700001)(36860700001)(53546011)(82310400005)(47076005)(107886003)(336012)(54906003)(6486002)(83380400001)(26005)(2906002)(2616005)(6512007)(478600001)(6506007)(186003)(5660300002)(356005)(6862004)(33656002)(70206006)(40460700003)(36756003)(70586007)(4326008)(81166007)(316002)(40480700001)(82740400003)(8936002)(8676002)(86362001)(41300700001)(66899021);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Jun 2023 22:16:17.6632 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 5be733f7-4086-4d81-ed62-08db78254b69 X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: AM7EUR03FT022.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM8PR08MB5619 DQoNCj4gT24gMjggSnVuIDIwMjMsIGF0IDIxOjM5LCBKdWxpZW4gR3JhbGwgPGp1bGllbkB4ZW4u b3JnPiB3cm90ZToNCj4gDQo+IA0KPiANCj4gT24gMjcvMDYvMjAyMyAwOTowOSwgTWljaGFsIE9y emVsIHdyb3RlOg0KPj4gSGkgSnVsaWVuLA0KPj4gT24gMjYvMDYvMjAyMyAxNDo1NiwgSnVsaWVu IEdyYWxsIHdyb3RlOg0KPj4+IA0KPj4+IA0KPj4+IEhpLA0KPj4+IA0KPj4+IE9uIDI2LzA2LzIw MjMgMTI6NTYsIE1pY2hhbCBPcnplbCB3cm90ZToNCj4+Pj4gDQo+Pj4+IA0KPj4+PiBPbiAyNS8w Ni8yMDIzIDIyOjQ5LCBKdWxpZW4gR3JhbGwgd3JvdGU6DQo+Pj4+PiANCj4+Pj4+IA0KPj4+Pj4g RnJvbTogSnVsaWVuIEdyYWxsIDxqZ3JhbGxAYW1hem9uLmNvbT4NCj4+Pj4+IA0KPj4+Pj4gVUJT QU4gaGFzIGJlZW4gZW5hYmxlZCBhIGZldyB5ZWFycyBhZ28gb24geDg2IGJ1dCB3YXMgbmV2ZXIN Cj4+Pj4+IGVuYWJsZWQgb24gQXJtIGJlY2F1c2UgdGhlIGZpbmFsIGJpbmFyeSBpcyBiaWdnZXIg dGhhbiAyTUIgKA0KPj4+Pj4gdGhlIG1heGltdW0gd2UgY2FuIGN1cnJlbnRseSBoYW5kbGVkKS4N Cj4+Pj4+IA0KPj4+Pj4gV2l0aCB0aGUgcmVjZW50IHJld29yaywgaXQgaXMgbm93IHBvc3NpYmxl IHRvIGdyb3cgWGVuIG92ZXIgMk1CLg0KPj4+Pj4gU28gdGhlcmUgaXMgbm8gbW9yZSByb2FkYmxv Y2sgdG8gZW5hYmxlIFhlbiBvdGhlciB0aGFuIGluY3JlYXNpbmcNCj4+Pj4+IHRoZSByZXNlcnZl ZCBhcmVhLg0KPj4+Pj4gDQo+Pj4+PiBPbiBteSBzZXR1cCwgZm9yIGFybTMyLCB0aGUgZmluYWwg YmluYXJheSB3YXMgdmVyeSBjbG9zZSB0byA0TUIuDQo+Pj4+PiBGdXJ0aGVybW9yZSwgb25lIG1h eSB3YW50IHRvIGVuYWJsZSBVU0JBTiBhbmQgR0NPViB3aGljaCB3b3VsZCBwdXQNCj4+Pj4+IHRo ZSBiaW5hcnkgd2VsbC1vdmVyIDRNQiAoYm90aCBmZWF0dXJlcyByZXF1aXJlIGZvciBzb21lIHNw YWNlKS4NCj4+Pj4+IFRoZXJlZm9yZSwgaW5jcmVhc2UgdGhlIHNpemUgdG8gOE1CIHdoaWNoIHNo b3VsZCB1cyBzb21lIG1hcmdpbi4NCj4+Pj4+IA0KPj4+Pj4gU2lnbmVkLW9mZi1ieTogSnVsaWVu IEdyYWxsIDxqZ3JhbGxAYW1hem9uLmNvbT4NCj4+Pj4+IA0KPj4+Pj4gLS0tLQ0KPj4+Pj4gDQo+ Pj4+PiBUaGUgZHJhd2JhY2sgd2l0aCB0aGlzIGFwcHJvYWNoIGlzIHRoYXQgd2UgYXJlIGFkZGlu ZyA2IG5ldw0KPj4+Pj4gcGFnZS10YWJsZSAoMyBmb3IgYm9vdCBhbmQgMyBmb3IgcnVudGltZSkg dGhhdCBhcmUgc3RhdGljYWxseQ0KPj4+Pj4gYWxsb2NhdGVkLiBTbyB0aGUgZmluYWwgWGVuIGJp bmFyeSB3aWxsIGJlIDI0S0IgYmlnZ2VyIHdoZW4NCj4+Pj4+IG5laXRoZXIgVUJTQU4gbm9yIEdD T1YuDQo+Pj4+PiANCj4+Pj4+IElmIHRoaXMgaXMgbm90IGNvbnNpZGVyZWQgYWNjZXB0YWJsZSwg dGhlbiB3ZSBjb3VsZCBtYWtlIHRoZQ0KPj4+Pj4gc2l6ZSBvZiBjb25maWd1cmFibGUgaW4gdGhl IEtjb25maWcgYW5kIGRlY2lkZSBpdCBiYXNlZCBvbiB0aGUNCj4+Pj4+IGZlYXR1cmVzIGVuYWJs ZWQuDQo+Pj4+IEJvdGggb2YgdGhlc2UgZmVhdHVyZXMgYXJlIGVuYWJsZWQgb25seSBpbiBhIGRl YnVnIGJ1aWxkIG9mIFhlbiwgc28NCj4+Pj4gYW5vdGhlciBvcHRpb24gd291bGQgYmUgdG8gaW5j cmVhc2UgWGVuIHNpemUgb25seSBmb3IgYSBkZWJ1ZyBidWlsZC4NCj4+PiANCj4+PiBBdCBsZWFz dCBVQlNBTiBjYW4gYmUgc2VsZWN0ZWQgd2l0aG91dCBERUJVRy4gRm9yIHRoYXQgeW91IG5lZWQg dG8gYWRkDQo+Pj4gRVhQRVJULg0KPj4+IA0KPj4+IEFueXdheSwgZnJvbSB5b3VyIGNvbW1lbnQs IGl0IGlzIG5vdCBjbGVhciB0byBtZSB3aGV0aGVyIHlvdSBkaXNsaWtlIHRoZQ0KPj4+IGV4aXN0 aW5nIGFwcHJvYWNoIChhbmQgd2h5KSBvciB5b3UgYXJlIE9LIHdpdGggdGhlIGluY3JlYXNlLg0K Pj4gU29ycnksIEkgd2FzIHRyYXZlbGluZyBhbmQgZGlkIG5vdCBoYXZlIHRpbWUgdG8gY29tcGxl dGUgcmV2aWV3Lg0KPj4gSSBjYW5ub3Qgc2VlIHdoeSBpbmNyZWFzaW5nIHRoZSBzaXplIHdvdWxk IGJlIHByb2JsZW1hdGljIHNvIGl0IGlzIG9rLiBUaGF0IHNhaWQsIGl0IGNvdWxkIGJlDQo+PiBh IGdvb2QgaWRlYSB0byB3cml0ZSBzb21lIGNvbW1lbnQgYWJvdmUgWEVOX1ZJUlRfU0laRSwgdGhh dCB0aGlzIHZhbHVlIGlzIHNvbWV3aGF0IGV4YWdnZXJhdGVkLA0KPj4gc28gdGhhdCB3ZSBhcmUg b24gdGhlIHNhZmUgc2lkZSBhdCB0aGUgdGltZSBvZiBhY3RpdmF0aW5nIGZlYXR1cmVzIGxpa2Ug VUJTQU4vR0NPVi4NCj4gDQo+IFN1cmUuIEkgd2lsbCBhZGQgYSBjb21tZW50IGluIHRoaXMgcGF0 Y2guIEZvciAuLi4NCj4gDQo+PiBBbHNvLCBpdCB3b3VsZCBiZSBuaWNlIHRvIHVwZGF0ZSBjb21t ZW50cyBpbiBoZWFkLlMgb2YgYm90aCBhcm0zMiBhbmQgYXJtNjQgYWJvdmUNCj4+IEdMT0JBTChz dGFydCkgdGhhdCB3ZXJlIGxlZnQgc3RhdGluZzoNCj4+ICJBbGwgb2YgdGV4dCtkYXRhK2JzcyBt dXN0IGZpdCBpbiAyTUIsIG9yIHRoZSBpbml0aWFsIHBhZ2V0YWJsZSBjb2RlIGJlbG93IHdpbGwg bmVlZCBhZGp1c3RtZW50LiINCj4gDQo+IC4uLiB0aGlzIG9uZSwgSSBhbSB0aGlua2luZyB0byBk cm9wIHRoZSBjb21tZW50cyBpbiBwYXRjaCAjNS4gVGhleSBkb24ndCBtYWtlIHNlbnNlIGFueW1v cmUgYXMgd2UgY2FuIG5vdyBpbiB0aGVvcnkgZGVhbCB3aXRoIFhlbiB1cCB0byB0aGUgc2l6ZSBv ZiBhIEwyIG1hcHBpbmcgKDFHQiBmb3IgNEtCKS4NCj4gDQo+PiBPdGhlciB0aGFuIHRoYXQ6DQo+ PiBSZXZpZXdlZC1ieTogTWljaGFsIE9yemVsIDxtaWNoYWwub3J6ZWxAYW1kLmNvbT4NCj4gDQo+ IFRoYW5rcy4NCj4gDQo+IENoZWVycywNCj4gDQo+IC0tIA0KPiBKdWxpZW4gR3JhbGwNCg0KSGkg SnVsaWVuLA0KDQpEb27igJl0IGtub3cgaWYgaXQgd2FzIHBvaW50ZWQgb3V0IGJlZm9yZSwgYnV0 IHRoZSBjb21taXQgbWVzc2FnZSBoYXMgYSB0eXBvIHMvVVNCQU4vVUJTQU4vDQoNCkNoZWVycywN Ckx1Y2ENCg0KDQo= From xen-devel-bounces@lists.xenproject.org Wed Jun 28 22:45:26 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 28 Jun 2023 22:45:26 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556613.869277 (Exim 4.92) (envelope-from ) id 1qEduO-0000ik-FR; Wed, 28 Jun 2023 22:45:08 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556613.869277; Wed, 28 Jun 2023 22:45:08 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEduO-0000id-CM; Wed, 28 Jun 2023 22:45:08 +0000 Received: by outflank-mailman (input) for mailman id 556613; Wed, 28 Jun 2023 22:45:07 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEduN-0000h0-6U for xen-devel@lists.xenproject.org; Wed, 28 Jun 2023 22:45:07 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 6b814295-1605-11ee-8611-37d641c3527e; Thu, 29 Jun 2023 00:45:03 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 5AA8361489; Wed, 28 Jun 2023 22:45:02 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 02690C433CA; Wed, 28 Jun 2023 22:45:00 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 6b814295-1605-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1687992302; bh=6whENEwABsMRkExAukDa7ytNyweNg9fMwkbBSEHMAuM=; h=Date:From:To:cc:Subject:In-Reply-To:References:From; b=fMelqwfNHbxTlb2I4Ii1sRzj6OZhpkhb+9U+XXgE8/kqhK4fWHr8VeEHVfautvm1y jPjtLEA/DEiKxk4IMSWY7ExinF41R3AU/RROgVLOwh1sTGkE619Pz2ZDepV6hLvmrb eLrSmuA+w+55kJtPAh/HXHYCuOL6yy4f8hvHJxOUc+5W7urHp0qVLpRxzwOKgnKTzF MXdcNlydoBJgHHL6+fDzloAnNCbQffl6U+BJSCHTTSqsZREQuob5Bl+V6K+E/aNArt ySeuoC6lk8jZY26MQbcgScA5/A7WFW0+0kbHd33dG56qFJaUNUgho3V3iv3+aRwCw4 74rik8Mn+ZEig== Date: Wed, 28 Jun 2023 15:44:59 -0700 (PDT) From: Stefano Stabellini X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop To: Shawn Anastasio cc: xen-devel@lists.xenproject.org, Timothy Pearson , Andrew Cooper , Jan Beulich , Julien Grall , Doug Goldstein , Stefano Stabellini Subject: Re: [PATCH v2 3/3] automation: Add smoke test for ppc64le In-Reply-To: Message-ID: References: User-Agent: Alpine 2.22 (DEB 394 2020-01-19) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII On Thu, 22 Jun 2023, Shawn Anastasio wrote: > Add an initial smoke test that boots xen on a ppc64/pseries machine and > checks for a magic string. Based on the riscv smoke test. > > Eventually the powernv9 (POWER9 bare metal) machine type will want to be > tested as well, but for now we only boot on pseries. > > Signed-off-by: Shawn Anastasio Reviewed-by: Stefano Stabellini > --- > automation/gitlab-ci/test.yaml | 20 ++++++++++++++++++ > automation/scripts/qemu-smoke-ppc64le.sh | 27 ++++++++++++++++++++++++ > 2 files changed, 47 insertions(+) > create mode 100755 automation/scripts/qemu-smoke-ppc64le.sh > > diff --git a/automation/gitlab-ci/test.yaml b/automation/gitlab-ci/test.yaml > index d5cb238b0a..45e8ddb7a3 100644 > --- a/automation/gitlab-ci/test.yaml > +++ b/automation/gitlab-ci/test.yaml > @@ -71,6 +71,19 @@ > tags: > - x86_64 > > +.qemu-ppc64le: > + extends: .test-jobs-common > + variables: > + CONTAINER: debian:bullseye-ppc64le > + LOGFILE: qemu-smoke-ppc64le.log > + artifacts: > + paths: > + - smoke.serial > + - '*.log' > + when: always > + tags: > + - x86_64 > + > .xilinx-arm64: > extends: .test-jobs-common > variables: > @@ -444,3 +457,10 @@ qemu-smoke-riscv64-gcc: > - ./automation/scripts/qemu-smoke-riscv64.sh 2>&1 | tee ${LOGFILE} > needs: > - archlinux-current-gcc-riscv64-debug > + > +qemu-smoke-ppc64le-pseries-gcc: > + extends: .qemu-ppc64le > + script: > + - ./automation/scripts/qemu-smoke-ppc64le.sh pseries-5.2 2>&1 | tee ${LOGFILE} > + needs: > + - debian-bullseye-gcc-ppc64le-debug > diff --git a/automation/scripts/qemu-smoke-ppc64le.sh b/automation/scripts/qemu-smoke-ppc64le.sh > new file mode 100755 > index 0000000000..eb55221221 > --- /dev/null > +++ b/automation/scripts/qemu-smoke-ppc64le.sh > @@ -0,0 +1,27 @@ > +#!/bin/bash > + > +set -ex > + > +# machine type from first arg passed directly to qemu -M > +machine=$1 > + > +# Run the test > +rm -f smoke.serial > +set +e > + > +touch smoke.serial > + > +timeout -k 1 20 \ > +qemu-system-ppc64 \ > + -M $machine \ > + -m 2g \ > + -smp 1 \ > + -vga none \ > + -monitor none \ > + -nographic \ > + -serial file:smoke.serial \ > + -kernel binaries/xen > + > +set -e > +(grep -q "Hello, ppc64le!" smoke.serial) || exit 1 > +exit 0 > -- > 2.30.2 > From xen-devel-bounces@lists.xenproject.org Wed Jun 28 23:00:52 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 28 Jun 2023 23:00:52 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556617.869287 (Exim 4.92) (envelope-from ) id 1qEe9P-0003Bg-PK; Wed, 28 Jun 2023 23:00:39 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556617.869287; Wed, 28 Jun 2023 23:00:39 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEe9P-0003BZ-M0; Wed, 28 Jun 2023 23:00:39 +0000 Received: by outflank-mailman (input) for mailman id 556617; Wed, 28 Jun 2023 23:00:38 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEe9O-0003BT-Ri for xen-devel@lists.xenproject.org; Wed, 28 Jun 2023 23:00:38 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 97636320-1607-11ee-8611-37d641c3527e; Thu, 29 Jun 2023 01:00:36 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 1BF0D61485; Wed, 28 Jun 2023 23:00:35 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 93ABAC433C8; Wed, 28 Jun 2023 23:00:33 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 97636320-1607-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1687993234; bh=4NxMM46wx4n80Ir9D1FNLVnF1fmV4ZnNhWSbFqmSnmg=; h=Date:From:To:cc:Subject:In-Reply-To:References:From; b=oyrCEqRAPSmL4f9qj3gpXLzTPcEdW0Z2OJFaHEjStlntNKfYcoqiO+aAdh2ugt+U7 94mj2FkJXqD/hkqonu2b7M01WXoclYlXdlCCjRrhT3F+I7aa3kElhqgN8lBIxn9f3G CM7kIJ91sWwd3x0+upkP1IgusLvNIotsabwRwgykT9PBtCKS+OTCjVV8zmHVlV/CCF Z3YQdK7MSWAOkPa1M+UQJiC/pEEVsRXltrd4EpKiVU8vXUTcAywzCX26V6sdLbEe/1 BxTkOSulceMu4Svq9/jHBWxMKOLlna9jp/QdX21/oAsm3PQt1G29NsSl+lcNhrFuje ZxRtpFz3SvLUQ== Date: Wed, 28 Jun 2023 16:00:32 -0700 (PDT) From: Stefano Stabellini X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop To: Ayan Kumar Halder cc: xen-devel@lists.xenproject.org, sstabellini@kernel.org, stefano.stabellini@amd.com, julien@xen.org, Volodymyr_Babchuk@epam.com, bertrand.marquis@arm.com Subject: Re: [XEN v2] xen/arm: arm32: Allow Xen to boot on unidentified CPUs In-Reply-To: <20230626181444.2305769-1-ayan.kumar.halder@amd.com> Message-ID: References: <20230626181444.2305769-1-ayan.kumar.halder@amd.com> User-Agent: Alpine 2.22 (DEB 394 2020-01-19) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII On Mon, 26 Jun 2023, Ayan Kumar Halder wrote: > Currently if the processor id is not identified (ie it is missing in proc-v7.S) > , then Xen boot fails quite early. > We have removed this restriction as for some CPUs (eg Cortex-R52), there isn't > any special initialization required. > > Signed-off-by: Ayan Kumar Halder Reviewed-by: Stefano Stabellini > --- > Changes from - > > v1 - "[PATCH v1] xen/arm: arm32: Add support to identify the Cortex-R52 processor" > No need to add R52 proc id and empty stubs as there is no cpu initialization > required. > > xen/arch/arm/arm32/head.S | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/xen/arch/arm/arm32/head.S b/xen/arch/arm/arm32/head.S > index f9f7be9588..3e88178552 100644 > --- a/xen/arch/arm/arm32/head.S > +++ b/xen/arch/arm/arm32/head.S > @@ -324,7 +324,7 @@ cpu_init: > PRINT("- Missing processor info: ") > print_reg r4 > PRINT(" -\r\n") > - b fail > + b cpu_init_done > 1: > /* Jump to cpu_init */ > ldr r1, [r1, #PROCINFO_cpu_init] /* r1 := vaddr(init func) */ > -- > 2.25.1 > > From xen-devel-bounces@lists.xenproject.org Wed Jun 28 23:03:03 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Wed, 28 Jun 2023 23:03:03 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556622.869296 (Exim 4.92) (envelope-from ) id 1qEeBi-0003ka-5G; Wed, 28 Jun 2023 23:03:02 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556622.869296; Wed, 28 Jun 2023 23:03:02 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEeBi-0003kS-2h; Wed, 28 Jun 2023 23:03:02 +0000 Received: by outflank-mailman (input) for mailman id 556622; Wed, 28 Jun 2023 23:03:01 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEeBh-0003kH-8q for xen-devel@lists.xenproject.org; Wed, 28 Jun 2023 23:03:01 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id ec78aad1-1607-11ee-8611-37d641c3527e; Thu, 29 Jun 2023 01:02:59 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id D76746147F; Wed, 28 Jun 2023 23:02:57 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 7AC39C433C0; Wed, 28 Jun 2023 23:02:55 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: ec78aad1-1607-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1687993377; bh=ncTKAPsYzGyiI/JGSQ5zxyLQ6MpO5CiHOyqqXYdG90o=; h=Date:From:To:cc:Subject:In-Reply-To:References:From; b=cdtDBeyYKsXl857KCZkQlHM8EmoWcY4w76gK9emyRNrtmTfYGk5SC4Ug1mC2DwwOU fFZHF4Fd6lgmJqD/2OLSjaf9xMrWIf6l091n+rxFlbVYbzjPS67mRs2RTpqDgYLSZV v/GLl4NPdhm74m+9uKC1pkJs9Xw3xlTMU+Rk7flKLObTO/kQ8pmzRXUsdI+zTcHiGl JB64sJlArrAnWIbKkHu9criW2T9A+nKaGmDAGobCili6T3WmXdphacbm0Ldy2zMDaD o04T9QLn2V1V1ifh5lMCMNpzMq2yU0qiYS73E6p4vb4491vg80J4Keri+/93LnWAJV BjCuUbTXo4wJQ== Date: Wed, 28 Jun 2023 16:02:54 -0700 (PDT) From: Stefano Stabellini X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop To: Nicola Vetrini cc: xen-devel@lists.xenproject.org, sstabellini@kernel.org, michal.orzel@amd.com, xenia.ragiadakou@amd.com, ayan.kumar.halder@amd.com, consulting@bugseng.com, jbeulich@suse.com, andrew.cooper3@citrix.com, roger.pau@citrix.com, bertrand.marquis@arm.com, julien@xen.org, George Dunlap , Wei Liu Subject: Re: [XEN PATCH v6] xen/include: avoid using a compiler extension for BUILD_BUG_ON_ZERO In-Reply-To: <0b0d9a5614daac653b3bfbcfaa29a9b4c11286bb.1687793572.git.nicola.vetrini@bugseng.com> Message-ID: References: <0b0d9a5614daac653b3bfbcfaa29a9b4c11286bb.1687793572.git.nicola.vetrini@bugseng.com> User-Agent: Alpine 2.22 (DEB 394 2020-01-19) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII On Mon, 26 Jun 2023, Nicola Vetrini wrote: > Redefine BUILD_BUG_ON_ZERO to avoid using a compiler extension > that gives an acceptable semantics to C99 undefined behavior 58 > ("A structure or union is defined as containing no named members > (6.7.2.1)"). > > The first definition includes an additional named field of type > char. > > The chosen ill-formed construct for the second definition is a struct > with a named bitfield of width 0 when the condition is true, > which prevents the UB without using the compiler extension while keeping > the semantic of the construct. > > The choice of the bitwise AND operation to bring the result to 0 > when cond is false boils down to possibly better portability. > > Signed-off-by: Nicola Vetrini Reviewed-by: Stefano Stabellini > --- > Changes in V2: > - Avoid using a VLA as the compile-time assertion > - Do not drop _Static_assert > Changes in V3: > - Changed the operation to bring the result to 0 when the > construct does not lead to a compilation error > Changes in V4: > - Switched to a shorter construct for the second definition. > Changes in V5: > - Dropped 'U's from the macro definitions. > Changes in V6: > - Fixed patch submission. > --- > xen/include/xen/lib.h | 5 +++-- > 1 file changed, 3 insertions(+), 2 deletions(-) > > diff --git a/xen/include/xen/lib.h b/xen/include/xen/lib.h > index 67fc7c1d7e..a8958ed57b 100644 > --- a/xen/include/xen/lib.h > +++ b/xen/include/xen/lib.h > @@ -51,9 +51,10 @@ > e.g. in a structure initializer (or where-ever else comma expressions > aren't permitted). */ > #define BUILD_BUG_ON_ZERO(cond) \ > - sizeof(struct { _Static_assert(!(cond), "!(" #cond ")"); }) > + (sizeof(struct { char c; _Static_assert(!(cond), "!(" #cond ")"); }) & 0) > #else > -#define BUILD_BUG_ON_ZERO(cond) sizeof(struct { int:-!!(cond); }) > +#define BUILD_BUG_ON_ZERO(cond) \ > + (sizeof(struct { unsigned u : !(cond); }) & 0) > #define BUILD_BUG_ON(cond) ((void)BUILD_BUG_ON_ZERO(cond)) > #endif > > -- > 2.34.1 > From xen-devel-bounces@lists.xenproject.org Thu Jun 29 00:37:33 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 00:37:33 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556628.869307 (Exim 4.92) (envelope-from ) id 1qEfeq-0005DF-K9; Thu, 29 Jun 2023 00:37:12 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556628.869307; Thu, 29 Jun 2023 00:37:12 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEfeq-0005D8-G5; Thu, 29 Jun 2023 00:37:12 +0000 Received: by outflank-mailman (input) for mailman id 556628; Thu, 29 Jun 2023 00:37:11 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEfep-0005D2-MY for xen-devel@lists.xenproject.org; Thu, 29 Jun 2023 00:37:11 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 11f6b602-1615-11ee-8611-37d641c3527e; Thu, 29 Jun 2023 02:37:05 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 31EEF6135C; Thu, 29 Jun 2023 00:37:04 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id C5AA5C433C0; Thu, 29 Jun 2023 00:37:02 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 11f6b602-1615-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1687999023; bh=RbA+79AH9JCoDWq9dm/zU/V/7D09CMZCr404fAuCY28=; h=Date:From:To:cc:Subject:In-Reply-To:References:From; b=fGXZuB2pfrlyrXMYyVBq+UhBVu7gck/SCxrPPK1triuE7c/KtGKvlEe0sEG6hgjUW PjVaVA61ZUqZfxibCNPlGYMPDtnzQYNj4oMCEgaNGuBvJ/LYyasenqIJHjJOu4MO4o 8FbKHT/uI7f1Y9KZq0uhitwuFbc53ywp0KFSLumsuwRm7ciIyiQ8QYAZ4uI96igrHN OClS2PgtxSpOvKAH8VawcpaLIB7+RETmgWFFdlfYTTSWkzzdJ4GC57YkKY4R6b8Y6x 1lAi4y/WWVNlBqVJdbG5vNrvm79n07LJN1iB1N8LJAw6HbEfxrr/BrmkTIzJrtk5M7 +5fWnsSd5jk9w== Date: Wed, 28 Jun 2023 17:37:01 -0700 (PDT) From: Stefano Stabellini X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop To: Oleksandr Tyshchenko cc: Petr Pavlu , "xen-devel@lists.xenproject.org" , "linux-kernel@vger.kernel.org" , "sstabellini@kernel.org" , "jgross@suse.com" Subject: Re: [PATCH 1/2] xen/virtio: Fix NULL deref when a bridge of PCI root bus has no parent In-Reply-To: <249a24a2-497f-7695-452d-f509ebe89a14@epam.com> Message-ID: References: <20230621131214.9398-1-petr.pavlu@suse.com> <20230621131214.9398-2-petr.pavlu@suse.com> <249a24a2-497f-7695-452d-f509ebe89a14@epam.com> User-Agent: Alpine 2.22 (DEB 394 2020-01-19) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII On Wed, 21 Jun 2023, Oleksandr Tyshchenko wrote: > On 21.06.23 16:12, Petr Pavlu wrote: > Hello Petr > > > > When attempting to run Xen on a QEMU/KVM virtual machine with virtio > > devices (all x86_64), function xen_dt_get_node() crashes on accessing > > bus->bridge->parent->of_node because a bridge of the PCI root bus has no > > parent set: > > > > [ 1.694192][ T1] BUG: kernel NULL pointer dereference, address: 0000000000000288 > > [ 1.695688][ T1] #PF: supervisor read access in kernel mode > > [ 1.696297][ T1] #PF: error_code(0x0000) - not-present page > > [ 1.696297][ T1] PGD 0 P4D 0 > > [ 1.696297][ T1] Oops: 0000 [#1] PREEMPT SMP NOPTI > > [ 1.696297][ T1] CPU: 0 PID: 1 Comm: swapper/0 Not tainted 6.3.7-1-default #1 openSUSE Tumbleweed a577eae57964bb7e83477b5a5645a1781df990f0 > > [ 1.696297][ T1] Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS rel-1.15.0-0-g2dd4b9b-rebuilt.opensuse.org 04/01/2014 > > [ 1.696297][ T1] RIP: e030:xen_virtio_restricted_mem_acc+0xd9/0x1c0 > > [ 1.696297][ T1] Code: 45 0c 83 e8 c9 a3 ea ff 31 c0 eb d7 48 8b 87 40 ff ff ff 48 89 c2 48 8b 40 10 48 85 c0 75 f4 48 8b 82 10 01 00 00 48 8b 40 40 <48> 83 b8 88 02 00 00 00 0f 84 45 ff ff ff 66 90 31 c0 eb a5 48 89 > > [ 1.696297][ T1] RSP: e02b:ffffc90040013cc8 EFLAGS: 00010246 > > [ 1.696297][ T1] RAX: 0000000000000000 RBX: ffff888006c75000 RCX: 0000000000000029 > > [ 1.696297][ T1] RDX: ffff888005ed1000 RSI: ffffc900400f100c RDI: ffff888005ee30d0 > > [ 1.696297][ T1] RBP: ffff888006c75010 R08: 0000000000000001 R09: 0000000330000006 > > [ 1.696297][ T1] R10: ffff888005850028 R11: 0000000000000002 R12: ffffffff830439a0 > > [ 1.696297][ T1] R13: 0000000000000000 R14: ffff888005657900 R15: ffff888006e3e1e8 > > [ 1.696297][ T1] FS: 0000000000000000(0000) GS:ffff88804a000000(0000) knlGS:0000000000000000 > > [ 1.696297][ T1] CS: e030 DS: 0000 ES: 0000 CR0: 0000000080050033 > > [ 1.696297][ T1] CR2: 0000000000000288 CR3: 0000000002e36000 CR4: 0000000000050660 > > [ 1.696297][ T1] Call Trace: > > [ 1.696297][ T1] > > [ 1.696297][ T1] virtio_features_ok+0x1b/0xd0 > > [ 1.696297][ T1] virtio_dev_probe+0x19c/0x270 > > [ 1.696297][ T1] really_probe+0x19b/0x3e0 > > [ 1.696297][ T1] __driver_probe_device+0x78/0x160 > > [ 1.696297][ T1] driver_probe_device+0x1f/0x90 > > [ 1.696297][ T1] __driver_attach+0xd2/0x1c0 > > [ 1.696297][ T1] bus_for_each_dev+0x74/0xc0 > > [ 1.696297][ T1] bus_add_driver+0x116/0x220 > > [ 1.696297][ T1] driver_register+0x59/0x100 > > [ 1.696297][ T1] virtio_console_init+0x7f/0x110 > > [ 1.696297][ T1] do_one_initcall+0x47/0x220 > > [ 1.696297][ T1] kernel_init_freeable+0x328/0x480 > > [ 1.696297][ T1] kernel_init+0x1a/0x1c0 > > [ 1.696297][ T1] ret_from_fork+0x29/0x50 > > [ 1.696297][ T1] > > [ 1.696297][ T1] Modules linked in: > > [ 1.696297][ T1] CR2: 0000000000000288 > > [ 1.696297][ T1] ---[ end trace 0000000000000000 ]--- > > > > The PCI root bus is in this case created from ACPI description via > > acpi_pci_root_add() -> pci_acpi_scan_root() -> acpi_pci_root_create() -> > > pci_create_root_bus() where the last function is called with > > parent=NULL. It indicates that no parent is present and then > > bus->bridge->parent is NULL too. > > > > Fix the problem by checking bus->bridge->parent in xen_dt_get_node() for > > NULL first > > > Fixes: ef8ae384b4c9 ("xen/virtio: Handle PCI devices which Host controller is described in DT") > > Oops, sorry. I have to admit I checked with DT only. > > > > Signed-off-by: Petr Pavlu > > > Reviewed-by: Oleksandr Tyshchenko Reviewed-by: Stefano Stabellini From xen-devel-bounces@lists.xenproject.org Thu Jun 29 01:00:29 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 01:00:29 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556633.869316 (Exim 4.92) (envelope-from ) id 1qEg1H-0007qv-EF; Thu, 29 Jun 2023 01:00:23 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556633.869316; Thu, 29 Jun 2023 01:00:23 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEg1H-0007q2-BR; Thu, 29 Jun 2023 01:00:23 +0000 Received: by outflank-mailman (input) for mailman id 556633; Thu, 29 Jun 2023 01:00:22 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEg1G-0007Sw-Nu for xen-devel@lists.xenproject.org; Thu, 29 Jun 2023 01:00:22 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 512206c2-1618-11ee-8611-37d641c3527e; Thu, 29 Jun 2023 03:00:20 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 9ECCF612CA; Thu, 29 Jun 2023 01:00:18 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 30740C433C0; Thu, 29 Jun 2023 01:00:17 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 512206c2-1618-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1688000418; bh=FD+u4Jx72lkITuCJ3DPK48ZKDryeaIXbtxbzNPuF8Zg=; h=Date:From:To:cc:Subject:In-Reply-To:References:From; b=IjsiU2jqEYsMKNymR/TTywV35IzVH35qogmKfAl08pE9oXVCQjLkR2iM4soTDuhod CYlAbDisZwjRkAjVLgq5iJH6y8hca8abUUP66wBWSnGf1h8lpt335xuBhIxvQD03sR dyfRaaIqWG1lMrpV35VG9F+Atv8yBBezBT4OVMXlCnTAXOzqXsVx7URPPjxkXWP48w xQl5f3GLS+wTn7tYmp/G4OHf4QHVauARdjY4Z6k0hGv8XYj3a7QVWgDoJpyR8Xw2/R 7Hq/OebMU5w123rChzt2Uol87n0Ou/t6a182qWJsI22upikx1NzzqQ+y2t7GzBYzJw fIIkNA9MMvlmA== Date: Wed, 28 Jun 2023 18:00:16 -0700 (PDT) From: Stefano Stabellini X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop To: Oleksandr Tyshchenko cc: Petr Pavlu , "xen-devel@lists.xenproject.org" , "linux-kernel@vger.kernel.org" , "jgross@suse.com" , "sstabellini@kernel.org" Subject: Re: [PATCH 2/2] xen/virtio: Avoid use of the dom0 backend in dom0 In-Reply-To: <15e31609-6c45-7372-76ee-0adf7a64fe88@epam.com> Message-ID: References: <20230621131214.9398-1-petr.pavlu@suse.com> <20230621131214.9398-3-petr.pavlu@suse.com> <15e31609-6c45-7372-76ee-0adf7a64fe88@epam.com> User-Agent: Alpine 2.22 (DEB 394 2020-01-19) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII On Wed, 21 Jun 2023, Oleksandr Tyshchenko wrote: > On 21.06.23 16:12, Petr Pavlu wrote: > > > Hello Petr > > > > When attempting to run Xen on a QEMU/KVM virtual machine with virtio > > devices (all x86_64), dom0 tries to establish a grant for itself which > > eventually results in a hang during the boot. > > > > The backtrace looks as follows, the while loop in __send_control_msg() > > makes no progress: > > > > #0 virtqueue_get_buf_ctx (_vq=_vq@entry=0xffff8880074a8400, len=len@entry=0xffffc90000413c94, ctx=ctx@entry=0x0 ) at ../drivers/virtio/virtio_ring.c:2326 > > #1 0xffffffff817086b7 in virtqueue_get_buf (_vq=_vq@entry=0xffff8880074a8400, len=len@entry=0xffffc90000413c94) at ../drivers/virtio/virtio_ring.c:2333 > > #2 0xffffffff8175f6b2 in __send_control_msg (portdev=, port_id=0xffffffff, event=0x0, value=0x1) at ../drivers/char/virtio_console.c:562 > > #3 0xffffffff8175f6ee in __send_control_msg (portdev=, port_id=, event=, value=) at ../drivers/char/virtio_console.c:569 > > #4 0xffffffff817618b1 in virtcons_probe (vdev=0xffff88800585e800) at ../drivers/char/virtio_console.c:2098 > > #5 0xffffffff81707117 in virtio_dev_probe (_d=0xffff88800585e810) at ../drivers/virtio/virtio.c:305 > > #6 0xffffffff8198e348 in call_driver_probe (drv=0xffffffff82be40c0 , drv=0xffffffff82be40c0 , dev=0xffff88800585e810) at ../drivers/base/dd.c:579 > > #7 really_probe (dev=dev@entry=0xffff88800585e810, drv=drv@entry=0xffffffff82be40c0 ) at ../drivers/base/dd.c:658 > > #8 0xffffffff8198e58f in __driver_probe_device (drv=drv@entry=0xffffffff82be40c0 , dev=dev@entry=0xffff88800585e810) at ../drivers/base/dd.c:800 > > #9 0xffffffff8198e65a in driver_probe_device (drv=drv@entry=0xffffffff82be40c0 , dev=dev@entry=0xffff88800585e810) at ../drivers/base/dd.c:830 > > #10 0xffffffff8198e832 in __driver_attach (dev=0xffff88800585e810, data=0xffffffff82be40c0 ) at ../drivers/base/dd.c:1216 > > #11 0xffffffff8198bfb2 in bus_for_each_dev (bus=, start=start@entry=0x0 , data=data@entry=0xffffffff82be40c0 , > > fn=fn@entry=0xffffffff8198e7b0 <__driver_attach>) at ../drivers/base/bus.c:368 > > #12 0xffffffff8198db65 in driver_attach (drv=drv@entry=0xffffffff82be40c0 ) at ../drivers/base/dd.c:1233 > > #13 0xffffffff8198d207 in bus_add_driver (drv=drv@entry=0xffffffff82be40c0 ) at ../drivers/base/bus.c:673 > > #14 0xffffffff8198f550 in driver_register (drv=drv@entry=0xffffffff82be40c0 ) at ../drivers/base/driver.c:246 > > #15 0xffffffff81706b47 in register_virtio_driver (driver=driver@entry=0xffffffff82be40c0 ) at ../drivers/virtio/virtio.c:357 > > #16 0xffffffff832cd34b in virtio_console_init () at ../drivers/char/virtio_console.c:2258 > > #17 0xffffffff8100105c in do_one_initcall (fn=0xffffffff832cd2e0 ) at ../init/main.c:1246 > > #18 0xffffffff83277293 in do_initcall_level (command_line=0xffff888003e2f900 "root", level=0x6) at ../init/main.c:1319 > > #19 do_initcalls () at ../init/main.c:1335 > > #20 do_basic_setup () at ../init/main.c:1354 > > #21 kernel_init_freeable () at ../init/main.c:1571 > > #22 0xffffffff81f64be1 in kernel_init (unused=) at ../init/main.c:1462 > > #23 0xffffffff81001f49 in ret_from_fork () at ../arch/x86/entry/entry_64.S:308 > > #24 0x0000000000000000 in ?? () > > > > Fix the problem by preventing xen_grant_init_backend_domid() from > > setting dom0 as a backend when running in dom0. > > > > Fixes: 035e3a4321f7 ("xen/virtio: Optimize the setup of "xen-grant-dma" devices") > > > I am not 100% sure whether the Fixes tag points to precise commit. If I > am not mistaken, the said commit just moves the code in the context > without changing the logic of CONFIG_XEN_VIRTIO_FORCE_GRANT, this was > introduced before. > > > > Signed-off-by: Petr Pavlu > > --- > > drivers/xen/grant-dma-ops.c | 4 +++- > > 1 file changed, 3 insertions(+), 1 deletion(-) > > > > diff --git a/drivers/xen/grant-dma-ops.c b/drivers/xen/grant-dma-ops.c > > index 76f6f26265a3..29ed27ac450e 100644 > > --- a/drivers/xen/grant-dma-ops.c > > +++ b/drivers/xen/grant-dma-ops.c > > @@ -362,7 +362,9 @@ static int xen_grant_init_backend_domid(struct device *dev, > > if (np) { > > ret = xen_dt_grant_init_backend_domid(dev, np, backend_domid); > > of_node_put(np); > > - } else if (IS_ENABLED(CONFIG_XEN_VIRTIO_FORCE_GRANT) || xen_pv_domain()) { > > + } else if ((IS_ENABLED(CONFIG_XEN_VIRTIO_FORCE_GRANT) || > > + xen_pv_domain()) && > > + !xen_initial_domain()) { > > The commit lgtm, just one note: > > > I would even bail out early in xen_virtio_restricted_mem_acc() instead, > as I assume the same issue could happen on Arm with DT (although there > we don't guess the backend's domid, we read it from DT and quite > unlikely we get Dom0 being in Dom0 with correct DT). > > Something like: > > @@ -416,6 +421,10 @@ bool xen_virtio_restricted_mem_acc(struct > virtio_device *dev) > { > domid_t backend_domid; > > + /* Xen grant DMA ops are not used when running as initial domain */ > + if (xen_initial_domain()) > + return false; > + > if (!xen_grant_init_backend_domid(dev->dev.parent, > &backend_domid)) { > xen_grant_setup_dma_ops(dev->dev.parent, backend_domid); > return true; > (END) > > > > If so, that commit subject would need to be updated accordingly. > > Let's see what other reviewers will say. This doesn't work in all cases. Imagine using PCI Passthrough to assign a "physical" virtio device to a domU. The domU will run into the same error, right? The problem is that we need a way for the virtio backend to advertise its ability of handling grants. Right now we only have a way to do with that with device tree on ARM. On x86, we only have CONFIG_XEN_VIRTIO_FORCE_GRANT, and if we take CONFIG_XEN_VIRTIO_FORCE_GRANT at face value, it also enables grants for "physical" virtio devices. Note that in this case we are fixing a nested-virtualization bug, but there are actually physical virtio-compatible devices out there. CONFIG_XEN_VIRTIO_FORCE_GRANT will break those too. I think we need to add a second way? It could be anything that can help us distinguish between a non-grants-capable virtio backend and a grants-capable virtio backend, such as: - a string on xenstore - a xen param - a special PCI configuration register value - something in the ACPI tables - the QEMU machine type Or at least should we change CONFIG_XEN_VIRTIO_FORCE_GRANT into a command line parameter so that it can be disabled in cases like this one? I realize that fixing this problem properly takes a lot longer than adding a trivial if (dom0) return; check in the code. If you cannot find a good way to solve the problem or you don't have time to do that now and you need this bug fixed quickly, then I would be OK with the if (dom0) return; check but please add a detailed TODO in-code comment to explain that this is just a hack and we are still looking for a real solution. The check itself I prefer the original position because I want to retain the ability of using virtio frontends with grant on ARM in Dom0 (DomD case). From xen-devel-bounces@lists.xenproject.org Thu Jun 29 01:36:54 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 01:36:54 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556638.869327 (Exim 4.92) (envelope-from ) id 1qEgaM-000245-4i; Thu, 29 Jun 2023 01:36:38 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556638.869327; Thu, 29 Jun 2023 01:36:38 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEgaM-00023y-19; Thu, 29 Jun 2023 01:36:38 +0000 Received: by outflank-mailman (input) for mailman id 556638; Thu, 29 Jun 2023 01:36:36 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEgaK-00023s-C4 for xen-devel@lists.xenproject.org; Thu, 29 Jun 2023 01:36:36 +0000 Received: from EUR05-DB8-obe.outbound.protection.outlook.com (mail-db8eur05on20621.outbound.protection.outlook.com [2a01:111:f400:7e1a::621]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 61b9be6c-161d-11ee-b237-6b7b168915f2; Thu, 29 Jun 2023 03:36:35 +0200 (CEST) Received: from AS4P189CA0019.EURP189.PROD.OUTLOOK.COM (2603:10a6:20b:5db::10) by DU0PR08MB8709.eurprd08.prod.outlook.com (2603:10a6:10:403::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.26; Thu, 29 Jun 2023 01:36:29 +0000 Received: from AM7EUR03FT063.eop-EUR03.prod.protection.outlook.com (2603:10a6:20b:5db:cafe::7) by AS4P189CA0019.outlook.office365.com (2603:10a6:20b:5db::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.39 via Frontend Transport; Thu, 29 Jun 2023 01:36:29 +0000 Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by AM7EUR03FT063.mail.protection.outlook.com (100.127.140.221) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.20 via Frontend Transport; Thu, 29 Jun 2023 01:36:28 +0000 Received: ("Tessian outbound e2424c13b707:v142"); Thu, 29 Jun 2023 01:36:28 +0000 Received: from 8800993d7808.2 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 0959975A-F94C-40C9-A5B0-C8AD33D3CE20.1; Thu, 29 Jun 2023 01:36:17 +0000 Received: from EUR05-AM6-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 8800993d7808.2 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Thu, 29 Jun 2023 01:36:17 +0000 Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15) by DB9PR08MB7628.eurprd08.prod.outlook.com (2603:10a6:10:30c::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.19; Thu, 29 Jun 2023 01:36:15 +0000 Received: from AS8PR08MB7991.eurprd08.prod.outlook.com ([fe80::1024:cf14:d520:9b38]) by AS8PR08MB7991.eurprd08.prod.outlook.com ([fe80::1024:cf14:d520:9b38%7]) with mapi id 15.20.6521.026; Thu, 29 Jun 2023 01:36:15 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 61b9be6c-161d-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=gML+nZhSG5f4qvfAwSeQSpHK5dq849Is9ioXCMo4AxY=; b=iD99IzbRo76ecYv/zZYlhVSPov/dqruHA/lqBroaCI8MgdI5NarnXNZHymLmgVA7NaUlPyiQINqE038I7SzchbRzp8XQlOYjhMIf7rLg5Kg5Z+lbO/oSi4272+/6ZvZYoUC34jR2vHq76+6hiaz8CP1NfllqP6U3mJrKo5/TlEA= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C X-CR-MTA-TID: 64aa7808 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=QEB4AXeL4ji5E/fNS0v6hyIVCgCLNOFwYiNTmhNEajJuYC5Maczi0RdaDsqMfW1KI1X5hwdVTjluuq0g+lAg7HnG25ZmR8IKfuE+A81SgA/vYMSb13NoKt3eqW33osMwlL7GMm8iBpTjUpXOGkcB+bQhDhR23rx+g6DABcXRLO4ez7lLcHbXLyhgWTsVdiZeqysmQU9IDw25J7k5ir1zRCR4KvNcrJvr5ZbW35J6FaKXIQRnrxlHw/6kaobl0cXkFmAbCMg+O9447nB1AGgB6Z+Vca9QkwHR3OPu+9Ke/IY3Fsmzi0UThFuTMCFg0sgmaiGNKvMgaccNwDbXh//jCg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=gML+nZhSG5f4qvfAwSeQSpHK5dq849Is9ioXCMo4AxY=; b=AScJShIyntSLigHQDFcdb0/+rd1ddvO6fMK3turmI7jvozAAH47jh2xbyJLZHUU77Yj2SJsDOOskOmOw7joT10DRZ9S2+crk273n+lgkHzH458mZwaaNyaMIJ9pkzOj5/ZDZlytcSEaMkY1Lc0n3hwYBPJ5bsQin0HZseq3JS/20pbZlKcP/PoTxn/6NPFNLQ4VJM/kRk9FPK5/bFoeBV0iGWzAOf4Us1uLoJBAZf6fHEPVDkXbpSw22jpVnv9YSIeXHSsWBk1qzbFLxhH3Ef6OQt98+nhYOyTFqTm4zh6pu/wEJSwtheSFdrO9DazpIoc7mCzm7UGa+fFMcCU4n4g== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=gML+nZhSG5f4qvfAwSeQSpHK5dq849Is9ioXCMo4AxY=; b=iD99IzbRo76ecYv/zZYlhVSPov/dqruHA/lqBroaCI8MgdI5NarnXNZHymLmgVA7NaUlPyiQINqE038I7SzchbRzp8XQlOYjhMIf7rLg5Kg5Z+lbO/oSi4272+/6ZvZYoUC34jR2vHq76+6hiaz8CP1NfllqP6U3mJrKo5/TlEA= From: Henry Wang To: Julien Grall , "xen-devel@lists.xenproject.org" CC: Luca Fancellu , "michal.orzel@amd.com" , Julien Grall , Stefano Stabellini , Bertrand Marquis , Volodymyr Babchuk Subject: RE: [PATCH 8/9] xen/arm: Allow the user to build Xen with USBAN Thread-Topic: [PATCH 8/9] xen/arm: Allow the user to build Xen with USBAN Thread-Index: AQHZp6aSsRUjsp5X0kuhcvqBjbjyw6+crs2wgAQCCQCAAFHGkA== Date: Thu, 29 Jun 2023 01:36:15 +0000 Message-ID: References: <20230625204907.57291-1-julien@xen.org> <20230625204907.57291-9-julien@xen.org> <3caaf967-b7ba-0915-56aa-aeff5450a456@xen.org> In-Reply-To: <3caaf967-b7ba-0915-56aa-aeff5450a456@xen.org> Accept-Language: zh-CN, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ts-tracking-id: 2310FF061AFF8F4F93E80248C0184DF9.0 x-checkrecipientchecked: true Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-traffictypediagnostic: AS8PR08MB7991:EE_|DB9PR08MB7628:EE_|AM7EUR03FT063:EE_|DU0PR08MB8709:EE_ X-MS-Office365-Filtering-Correlation-Id: d88db992-2811-4ea7-aa72-08db784142ad x-checkrecipientrouted: true nodisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: Smt2T/KaemsaS4M18vIbAj50qAeR5QmUvx1Z7kMbAKsdHvldDhCJcqEPoy99FJeRM2KeY5giRu9B+Ker+0pIuyhdv/G0J9MWbpyJwfOIbhJRDTYqvwu5bGC06AAOKLNcMveunbhWfLvayL+3MUc0Bvrp8r1r7X7rWHspHOdAhFIIlWZ7bYOiUy/t+ClsfnE2UXcgq0wCMhJmUZaAZVOv6i+gJglnASktE0J8IFgKBPtjIBV/CkjC/n+mwZE+7D/K8DzTarLi9RouWy30JTn3uGCWBUnad9DitzFiVhFruvBl8Xp/lqlfQ7aI1sV3sLppXcPMWLIle5abLNcep01DtQwEoeasZUatRVE3P7GBMjY+uMUKEbllpqMTcu+hGi0ckwm6fcSMy1yqW78nytslge1/KpXaMUig4EBFWFZpusiOCDpOvrdsD5RXPP6B3cp0L3PWobDga14NHdVlpyE4obOiVULj8PJGnPK0UQxtVNiUzKj+bDsh9cyduI2JXAYj1htx+bUxkJmThhvf5mGfcqAe9QkPH4S8H4bZ2uGloUpPHCzKnz61qherzPrd751vOSEH2R/ah/WVWGWso0lMa70d7N5eJlDFyV6WJe4Afk0SpwunJYUmoenlleyBUcNL X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB7991.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(396003)(366004)(376002)(346002)(136003)(451199021)(7696005)(71200400001)(478600001)(76116006)(110136005)(54906003)(83380400001)(33656002)(86362001)(38070700005)(55016003)(2906002)(66946007)(186003)(53546011)(9686003)(6506007)(26005)(122000001)(38100700002)(66476007)(66446008)(64756008)(4326008)(66556008)(316002)(41300700001)(8936002)(8676002)(5660300002)(52536014);DIR:OUT;SFP:1101; Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR08MB7628 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: AM7EUR03FT063.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: 94d95642-0ec1-459e-c47f-08db78413abc X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: FLj93aUFmbBalC9T/SqjsYMyCK2Fev6pEyoWwoprFr3QrmMHCoMWn3Y7XwkDWlx/RjzvDVXGXjTKGRJgwIKlwXI8V3XCbRqppYrbfJmWd0Z2SvbTBsX5mORecD1o5gT0Oj1DrM8+1WRir0w72K4Es9Z2ViEaW/LRlQqPcMsWDwnYd2HH3YlwBv3LlI5bTfJIsfW1M8oO35fnhWBfBjGWvHM/phIncZT5n4w5SG9CdimrQDjAd1n55uDZfOgVdKxH+oL9mXMKAL5MyKQabZEwoW6Aaya1/i90fwiKRLMMv5MaMdkTwgqSDuOsREact8OfHj5CUGlEbd7SFQz/ufRLp6U2GTnWuIZVHtKo0gWuq1+3GZQqdh9gl2F5k8+hZjkXCMOOO6tBUVNycgN1hT2NfE5v9HnzhXbh4TJi0h8yxd7mI6XJak6/rL7R025z+yk20ieFTNNdQ219pCRjW5CymwiXiUZd+HZg7HNzXlY4M3X/ag9ngM6u74cx5coUMD8DeWV2TuixV1O7Q/P7ZI1G9Nhhet7Wa2gy8jxcJorc0GDC5BuRpMmqpOknENCV/yQv4PB0NN/525dcIfe4JEINoZX02Dyxn7C3Mr6x7knqELcs10cSWQQ60OhHgeJNHMdD5YwGInZh3ASkKVDCPsI2NPsXvmSV+s9Ough+hDebUrm/CebvhSCHwDYNzLZ4uI0jhhLA3tL68t+RtqeTHrHvE/G3GZvy2Jr52bVBwUpIy0LNLWE0Ts92O+3FQ/adoHKA X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230028)(4636009)(376002)(136003)(396003)(39860400002)(346002)(451199021)(40470700004)(36840700001)(46966006)(82310400005)(36860700001)(47076005)(110136005)(478600001)(107886003)(52536014)(54906003)(186003)(336012)(7696005)(26005)(83380400001)(53546011)(2906002)(6506007)(9686003)(86362001)(41300700001)(70206006)(33656002)(356005)(5660300002)(4326008)(316002)(82740400003)(81166007)(55016003)(70586007)(40460700003)(8936002)(8676002)(40480700001);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 Jun 2023 01:36:28.9473 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: d88db992-2811-4ea7-aa72-08db784142ad X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: AM7EUR03FT063.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU0PR08MB8709 SGkgSnVsaWVuLA0KDQo+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+IFN1YmplY3Q6IFJl OiBbUEFUQ0ggOC85XSB4ZW4vYXJtOiBBbGxvdyB0aGUgdXNlciB0byBidWlsZCBYZW4gd2l0aCBV U0JBTg0KPiANCj4gT24gMjYvMDYvMjAyMyAwODoyOSwgSGVucnkgV2FuZyB3cm90ZToNCj4gPiBI aSBKdWxpZW4sDQo+IEhpIEhlbnJ5LA0KPiANCj4gPiBSZXZpZXdlZC1ieTogSGVucnkgV2FuZyA8 SGVucnkuV2FuZ0Bhcm0uY29tPg0KPiANCj4gVGhhbmtzLCBJIHdpbGwgZml4IGJvdGggdHlwb3Mu DQoNCkdyZWF0LCB0aGFua3MhDQoNCj4gDQo+ID4NCj4gPiBKdXN0IHdhbnQgdG8gbWFrZSBzdXJl IHlvdSBhbHNvIG5vdGljZWQgdGhpcywgb3RoZXJ3aXNlIG1heWJlIHlvdQ0KPiA+IGNhbiBpbmNs dWRlIGFub3RoZXIgcGF0Y2ggaW4gdGhlIHNlcmllcyB0byBmaXggdGhpcz8NCj4gDQo+IEkgaGF2 ZW4ndCBzZWVuIHRoaXMgb25lLiBQcm9iYWJseSBiZWNhdXNlIHlvdSB3b3VsZCBuZWVkIGEgc2V0 dXAgd2hlcmUNCj4gaW50ZXJydXB0cyBhcmUgYXJvdW5kIElEIDEwMjIuDQoNCkkgdG9vayBhIGNs b3NlciBsb29rIHRvZGF5LCBJIHRoaW5rIHRoZSByZWFzb24gaXMgZnJvbSB0aGlzIGRldmljZSB0 cmVlIG5vZGUNCmZvciB0aGUgRlZQOg0KDQpldGhlcm5ldEAyMDIwMDAwMDAgew0KICAgIGNvbXBh dGlibGUgPSAic21zYyxsYW45MWMxMTEiOw0KICAgIHJlZyA9IDwweDIgMHgyMDAwMDAwIDB4MTAw MDA+Ow0KICAgIGludGVycnVwdHMgPSA8MHhmPjsNCn07DQoNClRoZSB2YWx1ZSAweGYgaXMgIHBh c3NlZCB0byB2Z2ljX2dldF92aXJxX3R5cGUoKSBhcyAiaW5kZXgiIHRoZW4gImludHIiIGluDQpW R0lDX0lDRkdfTUFTSy4gSGVuY2UgdGhlIDMxIGluDQoiKFhFTikgbGVmdCBzaGlmdCBvZiAxIGJ5 IDMxIHBsYWNlcyBjYW5ub3QgYmUgcmVwcmVzZW50ZWQgaW4gdHlwZSAnaW50JyIuDQoNCj4gDQo+ IE9yIEkgY2FuIGRvIHRoYXQNCj4gPiBpbiBjYXNlIHlvdSBkb24ndCBoYXZlIGVub3VnaCBiYW5k d2lkdGguDQo+IA0KPiBZb3UgaGF2ZSB0aGUgc2V0dXAgdG8gZXhlcmNpc2UgdGhlIHByb2JsZW0u IFNvIGl0IHdvdWxkIGJlIGJlc3QgaWYgeW91DQo+IGRvIGl0Lg0KDQpJJ3ZlIHByZXBhcmVkIGJl bG93IG9uIHRvcCBvZiB5b3VyIHNlcmllczoNCi0jZGVmaW5lIFZHSUNfSUNGR19NQVNLKGludHIp ICgxIDw8ICgoMiAqICgoaW50cikgJSAxNikpICsgMSkpDQorI2RlZmluZSBWR0lDX0lDRkdfTUFT SyhpbnRyKSAoMVUgPDwgKCgyICogKChpbnRyKSAlIDE2KSkgKyAxKSkNCg0KSWYgeW91IHRoaW5r IGl0IGlzIG9rLCBJIHdpbGwgc2VuZCBpdCBvdXQgdG8gdGhlIGxpc3QgYWZ0ZXIgSSBkb3VibGUg Y2hlY2sgb3VyDQpDSSB3aWxsIG5vdCBjb21wbGFpbiBhYm91dCBpdC4gVGhhbmtzIQ0KDQpLaW5k IHJlZ2FyZHMsDQpIZW5yeQ0KDQo+IA0KPiBDaGVlcnMsDQo+IA0KPiAtLQ0KPiBKdWxpZW4gR3Jh bGwNCg== From xen-devel-bounces@lists.xenproject.org Thu Jun 29 03:36:25 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 03:36:25 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556645.869338 (Exim 4.92) (envelope-from ) id 1qEiS3-0006B9-Nt; Thu, 29 Jun 2023 03:36:11 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556645.869338; Thu, 29 Jun 2023 03:36:11 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEiS3-0006B2-Io; Thu, 29 Jun 2023 03:36:11 +0000 Received: by outflank-mailman (input) for mailman id 556645; Thu, 29 Jun 2023 03:36:10 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEiS2-0006As-JG; Thu, 29 Jun 2023 03:36:10 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEiS2-0005n1-EQ; Thu, 29 Jun 2023 03:36:10 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEiS2-000888-1i; Thu, 29 Jun 2023 03:36:10 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qEiS1-0007b8-VK; Thu, 29 Jun 2023 03:36:09 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=F9XcCAPjdZ7/BDz1CeFeMEK8JyYpBK2Wr6r7lsHw094=; b=JJYUP5wGvXTTxk9zwia4QZrb/I a1xPp/rs+L5On5CEtQ8XeUOiyrzvxNJSgDu/Wa7D1FKwpde//Sv/+pF2xQx3ti6Hc6ciC/Bf6PWc1 i12YIS6ONmmRDmQ1z2m+MAnK/i46U4DkYxi9rDe3m/7tPf5cAXdui1/vNcxGVCgTSyHY=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable-smoke test] 181634: tolerable all pass - PUSHED X-Osstest-Failures: xen-unstable-smoke:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking xen-unstable-smoke:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking xen-unstable-smoke:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking xen-unstable-smoke:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking xen-unstable-smoke:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: xen=5b9c96a808efdc004a876c03c2ea0bd0c5358812 X-Osstest-Versions-That: xen=6c32a08e2b7e6d796081ed84c84ad682bcc4b3a6 From: osstest service owner Date: Thu, 29 Jun 2023 03:36:09 +0000 flight 181634 xen-unstable-smoke real [real] http://logs.test-lab.xenproject.org/osstest/logs/181634/ Failures :-/ but no regressions. Tests which did not succeed, but are not blocking: test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-armhf-armhf-xl 15 migrate-support-check fail never pass test-armhf-armhf-xl 16 saverestore-support-check fail never pass version targeted for testing: xen 5b9c96a808efdc004a876c03c2ea0bd0c5358812 baseline version: xen 6c32a08e2b7e6d796081ed84c84ad682bcc4b3a6 Last test of basis 181629 2023-06-28 19:01:58 Z 0 days Testing same since 181634 2023-06-28 23:06:35 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Federico Serafini jobs: build-arm64-xsm pass build-amd64 pass build-armhf pass build-amd64-libvirt pass test-armhf-armhf-xl pass test-arm64-arm64-xl-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-libvirt pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Pushing revision : To xenbits.xen.org:/home/xen/git/xen.git 6c32a08e2b..5b9c96a808 5b9c96a808efdc004a876c03c2ea0bd0c5358812 -> smoke From xen-devel-bounces@lists.xenproject.org Thu Jun 29 07:27:21 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 07:27:21 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556654.869346 (Exim 4.92) (envelope-from ) id 1qEm3V-0004UO-LX; Thu, 29 Jun 2023 07:27:05 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556654.869346; Thu, 29 Jun 2023 07:27:05 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEm3V-0004UH-Iz; Thu, 29 Jun 2023 07:27:05 +0000 Received: by outflank-mailman (input) for mailman id 556654; Thu, 29 Jun 2023 07:27:04 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEm3U-0004UB-24 for xen-devel@lists.xenproject.org; Thu, 29 Jun 2023 07:27:04 +0000 Received: from NAM04-DM6-obe.outbound.protection.outlook.com (mail-dm6nam04on20609.outbound.protection.outlook.com [2a01:111:f400:7e8b::609]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 542ef73a-164e-11ee-8611-37d641c3527e; Thu, 29 Jun 2023 09:26:58 +0200 (CEST) Received: from BN0PR04CA0184.namprd04.prod.outlook.com (2603:10b6:408:e9::9) by IA1PR12MB6436.namprd12.prod.outlook.com (2603:10b6:208:3ac::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.24; Thu, 29 Jun 2023 07:26:51 +0000 Received: from BN8NAM11FT040.eop-nam11.prod.protection.outlook.com (2603:10b6:408:e9:cafe::d3) by BN0PR04CA0184.outlook.office365.com (2603:10b6:408:e9::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.34 via Frontend Transport; Thu, 29 Jun 2023 07:26:51 +0000 Received: from SATLEXMB04.amd.com (165.204.84.17) by BN8NAM11FT040.mail.protection.outlook.com (10.13.177.166) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6500.49 via Frontend Transport; Thu, 29 Jun 2023 07:26:51 +0000 Received: from SATLEXMB05.amd.com (10.181.40.146) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Thu, 29 Jun 2023 02:26:50 -0500 Received: from SATLEXMB04.amd.com (10.181.40.145) by SATLEXMB05.amd.com (10.181.40.146) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Thu, 29 Jun 2023 02:26:36 -0500 Received: from [10.71.193.39] (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server id 15.1.2507.23 via Frontend Transport; Thu, 29 Jun 2023 02:26:35 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 542ef73a-164e-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=mf1jJHo9tWhduqhTlvCRUweW17gGfmBXAd9tsSlU00FBYnMUMVTTsMix6sTgZ49B9cprqoNRBO2JOBT1vt5DdoToGQHfMyTirDD73fdBhJBtHJFIJT9d6PXcwLv7Viqv7eAU8GHunEn8dtTay0HiQ/LcfejCChS0QoL/CfNYUATDSLtMoyBg3o4KyfP521p4G6cW4cxPFbwz8zt+Nzt/KU7XHCYj71fWd8FhusZsUGeFLoNOcfnRSZ08L1u1j9829aaulpDs2dBDdY5l/Snh58WqrL0yFJsE4oOk98QIn3lQP4PE/KsqTCcmZ3OwqsFVcIIhRiDAnALc4oLOQ2s9qA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=jLDKqdnRlWNhSNVoWYQ5M3Fw2pisIHkWMR/OMfPZMBc=; b=i2zuH0IJm69KF3ycDRf3np29cYqW4hxFoQqudEBPCv00gyIJCmHYt0gTWmWMfnX7x4YytRxCfrrrYM9r3Xq4VuJc2pJVg7zkkrFEBJ8V7232DmKhbV5RD34qsuMBHKfl/Zhw5YHUCtrH6kH0sEgfi22Q+930fFfawcsEHvxjmP0u7bGuMuj4tKxr2k63CaaFNJwDf9rPZpYU6dszaLCEsRkfi4q5mlzxNk46IBIuDdFrrtyLfSh42mMQQprvKfkHQEtS8a17euPiyZ+L5Myo3wcscQPyStVrn6sDCr02mg4By25o6W9vxjy1tDX5/iLSf6809f8wYzK/aAlkYgznWA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=xen.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=jLDKqdnRlWNhSNVoWYQ5M3Fw2pisIHkWMR/OMfPZMBc=; b=W+jOJzHELS/KgiZkOpb5yNTkXdjVnZEDZ4/W4wAVg0tC34J27pgjApYQLuWQ4xJl9vDOU8444AsYvyKy2Ur7Ux/km5S8Z3ycpRlK6X3CGXGMz0V/nU5hs3MhBL9Yhg7KhlXsGNcnqjS2tKfRzTvrd3q434S4sWQiNlLMjWX+Zck= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C Message-ID: Date: Thu, 29 Jun 2023 09:26:34 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH 2/9] xen/arm64: head: Don't map too much in boot_third To: Julien Grall , CC: , , Julien Grall , Stefano Stabellini , "Bertrand Marquis" , Volodymyr Babchuk References: <20230625204907.57291-1-julien@xen.org> <20230625204907.57291-3-julien@xen.org> <38f33ede-0d55-bd47-412a-eccb3d4618f2@amd.com> <7877f5af-12e2-808c-b2a2-fa0e302a00c3@xen.org> Content-Language: en-US From: Michal Orzel In-Reply-To: <7877f5af-12e2-808c-b2a2-fa0e302a00c3@xen.org> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BN8NAM11FT040:EE_|IA1PR12MB6436:EE_ X-MS-Office365-Filtering-Correlation-Id: b8390c92-65b5-45ad-9e5e-08db787234ef X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: V6+mPo3G0e5ufRaxk3Xr++SofUqVy2VH+dziY1l1gDQRTpU2VEdoWUDY/e8u+BKarLkOwTRYXKl21VICHX1C90OszYtOF8dljhBjPSFZEV2NkwQ5hfJjqO3uCu6RfLFFFq2i5hSOMtPCg66KzbEkTwi4VWBrJ52is31w7ZrnKIl48AJncRlRae+wD536YBSv8zFdtwoXICLn2SMUR6qofhn7W/trlZZZ8RSFzJUrAcXH8liHpurjXDJ75404/od132ou/pZLRCytZOsNR2jH9ex8HaJNZSZyc9Y2DqImYEBwdmBJGk+hJkQ8lB4duL296pT/e04DBuBv3CVNrKjoFJh782DHEw3VDRkzwMgLap9EgyRThYGzxrvUKL0axTsv66zlRxN82pi5m+QVD7grh58tGeZHgPX+odhlROWmY6/wzRax2KF8L1SHyY+2Pg1Ifwn/HoIVpxPaEACHAJNzFRuLPQBuH5AINKjPVtZg827gd3i9gF21vpkgMtcabGiNPUAYXHJD8yv/hBaqY8JJMnO/TodfDBniAYIidKcWWv9IXWBtW+j2u0aaxRm11XdhAbx7hYO8Y/t7QKd/5p2i80aL4+jATtOOSC7slZ+OJWCAHhfxUYialsxOsH5aMXH931UG7k/oQoReVHBzID0ZPHAm666nd2w3655LjisSsf0byIyLlMJG/faPReC0oTluBucsXr18ALo+tochXuA2LYBdBbogPZIy9kwXdAeOur5Ba8lD13QDgDQsE5s3jEVJFksRXW5REeYagcUR8++f4wWrM6GMOZjbipZdoZr0XCy7tVZvKuqCA47nLyvF8CzC X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(346002)(39860400002)(396003)(136003)(376002)(451199021)(46966006)(36840700001)(40470700004)(31686004)(82310400005)(36860700001)(36756003)(356005)(5660300002)(44832011)(86362001)(41300700001)(70206006)(31696002)(8936002)(8676002)(40480700001)(40460700003)(82740400003)(81166007)(316002)(4326008)(70586007)(110136005)(478600001)(47076005)(2906002)(53546011)(426003)(26005)(16576012)(54906003)(186003)(336012)(83380400001)(2616005)(36900700001)(43740500002);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 Jun 2023 07:26:51.2312 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: b8390c92-65b5-45ad-9e5e-08db787234ef X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com] X-MS-Exchange-CrossTenant-AuthSource: BN8NAM11FT040.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: IA1PR12MB6436 On 28/06/2023 20:21, Julien Grall wrote: > > > Hi, > > On 26/06/2023 12:28, Michal Orzel wrote: >> On 25/06/2023 22:49, Julien Grall wrote: >>> From: Julien Grall >>> >>> At the moment, we are mapping the size of the reserved area for Xen >>> (i.e. 2MB) even if the binary is smaller. We don't exactly know what's >>> after Xen, so it is not a good idea to map more than necessary for a >>> couple of reasons: >>> * We would need to use break-before-make if the extra PTE needs to >>> be updated to point to another region >>> * The extra area mapped may be mapped again by Xen with different >>> memory attribute. This would result to attribue mismatch. >> s/attribue/attribute >> >>> >>> Therefore, rework the logic in create_page_tables() to map only what's >>> necessary. To simplify the logic, we also want to make sure _end >>> is page-aligned. So align the symbol in the linker and add an assert >>> to catch any change. >>> >>> Signed-off-by: Julien Grall >>> --- >>> xen/arch/arm/arm64/head.S | 15 ++++++++++++++- >>> xen/arch/arm/xen.lds.S | 3 +++ >>> 2 files changed, 17 insertions(+), 1 deletion(-) >>> >>> diff --git a/xen/arch/arm/arm64/head.S b/xen/arch/arm/arm64/head.S >>> index f37133cf7ccd..66bc85d4c39e 100644 >>> --- a/xen/arch/arm/arm64/head.S >>> +++ b/xen/arch/arm/arm64/head.S >>> @@ -572,6 +572,19 @@ create_page_tables: >>> create_table_entry boot_first, boot_second, x0, 1, x1, x2, x3 >>> create_table_entry boot_second, boot_third, x0, 2, x1, x2, x3 >>> >>> + /* >>> + * Find the size of Xen in pages and multiply by the size of a >>> + * PTE. This will then be compared in the mapping loop below. >>> + * >>> + * Note the multiplication is just to avoid using an extra >>> + * register/instruction per iteration. >>> + */ >>> + ldr x0, =_start /* x0 := vaddr(_start) */ >> x0 is already set to vaddr of _start by the first instruction of create_page_tables >> and is preserved by create_table_entry. You could just reuse it instead of re-loading. > > I agree that the load is technically redundant. However, I find this > approach easier to read (you don't have to remember that _start equals > XEN_VIRT_START). Ok. As a side note not related to this patch, would it make sense to add an assert in linker script to make sure _start equals XEN_VIRT_START, since we use them interchangeably? ~Michal From xen-devel-bounces@lists.xenproject.org Thu Jun 29 07:28:10 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 07:28:10 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556658.869357 (Exim 4.92) (envelope-from ) id 1qEm4X-0004zI-VA; Thu, 29 Jun 2023 07:28:09 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556658.869357; Thu, 29 Jun 2023 07:28:09 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEm4X-0004zB-SE; Thu, 29 Jun 2023 07:28:09 +0000 Received: by outflank-mailman (input) for mailman id 556658; Thu, 29 Jun 2023 07:28:08 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEm4W-0004yz-Bu; Thu, 29 Jun 2023 07:28:08 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEm4W-0003PN-40; Thu, 29 Jun 2023 07:28:08 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEm4V-0006IU-II; Thu, 29 Jun 2023 07:28:07 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qEm4V-0005VV-Hq; Thu, 29 Jun 2023 07:28:07 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=jrvxdgzGSC49goDsdu/o079+ELkLUbA9LYH2hh8+mPQ=; b=TDveghMBGHB4RD79qXUT1pHBRM mjXLfNlVXJlPwriwdHJW8IcsQDceFTAdB6XxO5VVwvNs9yFRq+yFJcggtBx8WyehaTkOBEctaVPE8 b/LbCKtMmrUlHGHM5PqQamXx56oGfzaU11YcBE+LJ+uyBCSMFT1X1qdeVY5aV8BMRdH0=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable test] 181632: tolerable FAIL - PUSHED X-Osstest-Failures: xen-unstable:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: xen=6c32a08e2b7e6d796081ed84c84ad682bcc4b3a6 X-Osstest-Versions-That: xen=5c84f1f636981dab5341e84aaba8d4dd00bbc2cb From: osstest service owner Date: Thu, 29 Jun 2023 07:28:07 +0000 flight 181632 xen-unstable real [real] http://logs.test-lab.xenproject.org/osstest/logs/181632/ Failures :-/ but no regressions. Tests which did not succeed, but are not blocking: test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail like 181607 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 181618 test-armhf-armhf-libvirt 16 saverestore-support-check fail like 181618 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop fail like 181618 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 181618 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 181618 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop fail like 181618 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop fail like 181618 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail like 181618 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 181618 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop fail like 181618 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 181618 test-amd64-i386-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-i386-xl-pvshim 14 guest-start fail never pass test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-i386-libvirt 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-armhf-armhf-xl 15 migrate-support-check fail never pass test-armhf-armhf-xl 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 15 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 16 saverestore-support-check fail never pass test-amd64-i386-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 15 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-armhf-armhf-xl-credit1 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt 15 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass test-armhf-armhf-xl-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 15 saverestore-support-check fail never pass test-armhf-armhf-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-xl-credit2 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit2 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail never pass test-armhf-armhf-xl-multivcpu 15 migrate-support-check fail never pass test-armhf-armhf-xl-multivcpu 16 saverestore-support-check fail never pass version targeted for testing: xen 6c32a08e2b7e6d796081ed84c84ad682bcc4b3a6 baseline version: xen 5c84f1f636981dab5341e84aaba8d4dd00bbc2cb Last test of basis 181618 2023-06-28 01:53:32 Z 1 days Testing same since 181632 2023-06-28 21:38:36 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Andrew Cooper jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64-xtf pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-prev pass build-i386-prev pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-xtf-amd64-amd64-1 pass test-xtf-amd64-amd64-2 pass test-xtf-amd64-amd64-3 pass test-xtf-amd64-amd64-4 pass test-xtf-amd64-amd64-5 pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl pass test-amd64-i386-xl pass test-amd64-coresched-i386-xl pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-i386-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-i386-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-i386-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-i386-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-i386-qemut-rhel6hvm-amd pass test-amd64-i386-qemuu-rhel6hvm-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-i386-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-freebsd10-amd64 pass test-amd64-amd64-qemuu-freebsd11-amd64 pass test-amd64-amd64-qemuu-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-i386-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-i386-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-i386-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-amd64-i386-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale pass test-amd64-amd64-examine-bios pass test-amd64-i386-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 pass test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 pass test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine pass test-amd64-i386-examine pass test-amd64-i386-freebsd10-i386 pass test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-i386-qemut-rhel6hvm-intel pass test-amd64-i386-qemuu-rhel6hvm-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt pass test-amd64-i386-libvirt pass test-amd64-amd64-livepatch pass test-amd64-i386-livepatch pass test-amd64-amd64-migrupgrade pass test-amd64-i386-migrupgrade pass test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu pass test-amd64-amd64-pair pass test-amd64-i386-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-i386-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-i386-xl-pvshim fail test-amd64-amd64-pygrub pass test-armhf-armhf-libvirt-qcow2 pass test-amd64-amd64-xl-qcow2 pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw pass test-amd64-i386-libvirt-raw pass test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds pass test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-amd64-i386-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-i386-examine-uefi pass test-amd64-amd64-libvirt-vhd pass test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd pass test-amd64-i386-xl-vhd pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Pushing revision : To xenbits.xen.org:/home/xen/git/xen.git 5c84f1f636..6c32a08e2b 6c32a08e2b7e6d796081ed84c84ad682bcc4b3a6 -> master From xen-devel-bounces@lists.xenproject.org Thu Jun 29 07:31:04 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 07:31:04 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556669.869367 (Exim 4.92) (envelope-from ) id 1qEm7K-0006V2-Fy; Thu, 29 Jun 2023 07:31:02 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556669.869367; Thu, 29 Jun 2023 07:31:02 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEm7K-0006Uv-DI; Thu, 29 Jun 2023 07:31:02 +0000 Received: by outflank-mailman (input) for mailman id 556669; Thu, 29 Jun 2023 07:31:01 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEm7J-0006Up-Fs for xen-devel@lists.xenproject.org; Thu, 29 Jun 2023 07:31:01 +0000 Received: from NAM10-DM6-obe.outbound.protection.outlook.com (mail-dm6nam10on20619.outbound.protection.outlook.com [2a01:111:f400:7e88::619]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id ddb342c1-164e-11ee-8611-37d641c3527e; Thu, 29 Jun 2023 09:30:49 +0200 (CEST) Received: from BYAPR02CA0035.namprd02.prod.outlook.com (2603:10b6:a02:ee::48) by SJ2PR12MB8926.namprd12.prod.outlook.com (2603:10b6:a03:53b::5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.24; Thu, 29 Jun 2023 07:30:42 +0000 Received: from CO1NAM11FT029.eop-nam11.prod.protection.outlook.com (2603:10b6:a02:ee:cafe::8a) by BYAPR02CA0035.outlook.office365.com (2603:10b6:a02:ee::48) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.22 via Frontend Transport; Thu, 29 Jun 2023 07:30:42 +0000 Received: from SATLEXMB03.amd.com (165.204.84.17) by CO1NAM11FT029.mail.protection.outlook.com (10.13.174.214) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6500.48 via Frontend Transport; Thu, 29 Jun 2023 07:30:41 +0000 Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Thu, 29 Jun 2023 02:30:39 -0500 Received: from [10.71.193.39] (10.180.168.240) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.23 via Frontend Transport; Thu, 29 Jun 2023 02:30:38 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: ddb342c1-164e-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=DHDvkNOoydvXtnVM7tGcfMMLv0vz4qO+QnjOnLiMcGvYCaadJpNWYAHCvebv9bj/8IXG9ptyouOb9Wj8xiM0AKIF4U+KdDlQ000BuP3sqPE32TsZ3HQmqJPIGSrqFxSxwHsZ2KcIDMJ2kF4ZkJkTS9zUvJOZW2+LNbKvL0Vcn9M+4Y9lIoeuc2/3dOJ2toazWi//+3Iz5pbDHW9BYGBlW20iBY2zjIqAwWEw7o7o1eQt6rTrHFFW8R6Y1GxMHpsgdI+c2znBWnHUjuT9DlswilagbKGxa+kepDFozWG9I/sz/9Lxw9lNs6En9rgUNDhUUv9jK9JWKyyeQ67awB5vqQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=mDNw02KRYkqEnEhziAG5CVG9YeQS317PbLXhXDJbJCM=; b=V8td29dzYABtCXcGfqdDvKkrqdPYbX53BaQd5Ghq30YzD660in+gajtF/fAKvP3QEbmy1SVFRimvlXATwLkYMtsEctK3vk+PEnBquWNwcr/nf628WpJNdDgLn2QGtNXdSzIBzidLfBmleQbG/iZfRZk7A0/uVBdTDEB1//G01bkvNXqSJnRD22de6umS1HLyVA2Qky86SGExf6kcfimvwZqWwdnBFvaYMGKDegkJAUWIymYxlrKMxlByMSCdlWNpCbyyf7evQPQEkK56friZrd0CJSV7K92B1BdQ7ZvZLlx0ZwMCF3/eDoHVzijWkSxf/tBlMzI8Gqbbqagkd6ugyA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=xen.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=mDNw02KRYkqEnEhziAG5CVG9YeQS317PbLXhXDJbJCM=; b=DAEgfV9+EmOK1sr5QssCLaBLI+igHjz10uH3YMrG8mZn4WyBE89SIpLeiQmBEGXI2cTNhTmbtZ7nMwWtEj55dk+1ophfs2CqzpsEzaLRtBVIUYFTAGy7N1qqkjzXZ5s1StB53zJ5r4Q4Oz/OmXW+Ff1IRwooODf8ujIpxF/+5Fc= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C Message-ID: <142cf656-10e5-00b8-d97a-69589a06bcec@amd.com> Date: Thu, 29 Jun 2023 09:30:37 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH 5/9] xen/arm: Rework the code mapping Xen to avoid relying on the size of Xen Content-Language: en-US To: Julien Grall , CC: , , Julien Grall , Stefano Stabellini , Bertrand Marquis , Volodymyr Babchuk References: <20230625204907.57291-1-julien@xen.org> <20230625204907.57291-6-julien@xen.org> <170a1f3c-526a-dfd9-0d87-101fb77f3415@amd.com> <158d8b0a-77dc-fccb-716d-36887524a4df@xen.org> From: Michal Orzel In-Reply-To: <158d8b0a-77dc-fccb-716d-36887524a4df@xen.org> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO1NAM11FT029:EE_|SJ2PR12MB8926:EE_ X-MS-Office365-Filtering-Correlation-Id: 202ba27d-779a-4530-848a-08db7872be84 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: gct/DldGr+6XYcv65j2ESo6Y7r+z0V8QF/ax8hcc+zFfnQuBIpCcWODkbQkwv5huyrh1vCiH5/JanNd3iZhenDuAGijpHcByo69ICimvXp4zSQM0h0cOER0d/+YJ2ODdo3pl+bwVa3FezTEBoEHuBOXSigVmj1bdNdCWjmU83ql32YTH+0zLHXITl3QhqFjjU652YKOgt9H3VT3RnnDYGn0dDoH6JxBRsvGLxKh4YtpT8MZcF4z2AbrORTafTKo435OfSpkrgEKUsjJg0tFRp2bDf3YdxL+Wvzn4WztsTUiLpU0/1U2biVvMpURY1xerN4ERFFw92+/9Vn1MpXeHtdcGwoCzM/rP2A8haurCFd6cQ1RTDIVKllnBNGQrRWc74rcXNVQz3M/l4eKvbLYU73aiONhABmW9yCjmvuFTuAZ7UNx1A7sl1ZSX18YInCABGVVKfuki/8r7tsDFyIs9Y+TWUHnOn237vCNbKChwsTkxatNGsO2M8QpBBHWPeqBefOHOb9bLXHvUKYhUvupL/GFd1BzLtcv/cDw9p4b3/w9wT+06uCzfTcLTtDxw0Q22in5ljVRIxtfBvhMlGKj9Fco0DsFoqB50qHdHMkfR+n7Fv60kZk9XASCaoeMk7ymveq/7h0mF6U3VfHnzBdKpZtaI9ZJWyWUJ/9J0/GESjOsLsz4gZW2GBgKPjVAYzBSluRZZz0qA/Lk7QlHI4Byh/XATE03MQVTJ59b4nCV/0yCa1JWQT2FR1NXuMbwdXSlE7sZkz5+nXtKuALQ6J8gHtSPc2U76tHaeLMJMKF/SVzs8pIIClRk4hGWBcfpFKJid X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(136003)(376002)(39860400002)(346002)(396003)(451199021)(40470700004)(46966006)(36840700001)(40460700003)(41300700001)(2906002)(478600001)(36860700001)(16576012)(86362001)(31696002)(54906003)(110136005)(82310400005)(356005)(81166007)(82740400003)(426003)(2616005)(70586007)(83380400001)(316002)(36756003)(47076005)(336012)(4326008)(40480700001)(8676002)(5660300002)(8936002)(53546011)(31686004)(70206006)(26005)(44832011)(186003)(36900700001)(43740500002);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 Jun 2023 07:30:41.9455 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 202ba27d-779a-4530-848a-08db7872be84 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com] X-MS-Exchange-CrossTenant-AuthSource: CO1NAM11FT029.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ2PR12MB8926 On 28/06/2023 22:02, Julien Grall wrote: > > > Hi, > > On 26/06/2023 12:43, Michal Orzel wrote: >> >> >> On 25/06/2023 22:49, Julien Grall wrote: >>> >>> >>> From: Julien Grall >>> >>> At the moment, the maximum size of Xen binary we can support is 2MB. >>> This is what we reserved in the virtual address but also what all >>> the code in Xen relies on as we only allocate one L3 page-table. >>> >>> When feature like UBSAN (will be enabled in a follow-up patch) and GCOV >>> are enabled, the binary will be way over 2MB. >>> >>> The code is now reworked so it doesn't realy on a specific size but >> s/realy/rely >> >>> will instead look at the reversed size and compute the number of >>> page-table to allocate/map. >>> >>> While at it, replace any reference to 4KB mappings with a more >>> generic word because the page-size may change in the future. >>> >>> Also fix the typo s/tlb/tbl/ in code move in arm32/head.S >>> >>> Signed-off-by: Julien Grall >>> --- >>> xen/arch/arm/arm32/head.S | 61 ++++++++++++++++++++++++------- >>> xen/arch/arm/arm64/head.S | 51 +++++++++++++++++++++----- >>> xen/arch/arm/include/asm/config.h | 1 + >>> xen/arch/arm/include/asm/lpae.h | 8 ++-- >>> xen/arch/arm/mm.c | 24 +++++++----- >>> 5 files changed, 108 insertions(+), 37 deletions(-) >>> >>> diff --git a/xen/arch/arm/arm32/head.S b/xen/arch/arm/arm32/head.S >>> index 5e3692eb3abf..5448671de897 100644 >>> --- a/xen/arch/arm/arm32/head.S >>> +++ b/xen/arch/arm/arm32/head.S >>> @@ -373,35 +373,55 @@ ENDPROC(cpu_init) >>> .endm >>> >>> /* >>> - * Macro to create a page table entry in \ptbl to \tbl >>> + * Macro to create a page table entry in \ptbl to \tbl (physical >>> + * address) >>> * >>> * ptbl: table symbol where the entry will be created >>> - * tbl: table symbol to point to >>> + * tbl: physical address of the table to point to >>> * virt: virtual address >>> * lvl: page-table level >>> * >>> * Preserves \virt >>> - * Clobbers r1 - r4 >>> + * Clobbers \tbl, r1 - r3 >>> * >>> * Also use r10 for the phys offset. >> This no longer applies. > > Good point. I will remove it. > >> >>> * >>> - * Note that \virt should be in a register other than r1 - r4 >>> + * Note that \tbl and \virt should be in a register other than r1 - r3 >>> */ >>> -.macro create_table_entry, ptbl, tbl, virt, lvl >>> - get_table_slot r1, \virt, \lvl /* r1 := slot in \tlb */ >>> - lsl r1, r1, #3 /* r1 := slot offset in \tlb */ >>> - >>> - load_paddr r4, \tbl >>> +.macro create_table_entry_from_paddr, ptbl, tbl, virt, lvl >>> + get_table_slot r1, \virt, \lvl /* r1 := slot in \tbl */ >>> + lsl r1, r1, #3 /* r1 := slot offset in \tbl */ >>> >>> movw r2, #PT_PT /* r2:r3 := right for linear PT */ >>> - orr r2, r2, r4 /* + \tlb paddr */ >>> + orr r2, r2, \tbl /* + \tbl paddr */ >>> mov r3, #0 >>> >>> - adr_l r4, \ptbl >>> + adr_l \tbl, \ptbl /* \tbl := (v,p)addr of \ptbl */ >>> >>> - strd r2, r3, [r4, r1] >>> + strd r2, r3, [\tbl, r1] >>> .endm >>> >>> + >>> +/* >>> + * Macro to create a page table entry in \ptbl to \tbl (symbol) >>> + * >>> + * ptbl: table symbol where the entry will be created >>> + * tbl: table symbol to point to >>> + * virt: virtual address >>> + * lvl: page-table level >>> + * >>> + * Preserves \virt >>> + * Clobbers r1 - r4 >>> + * >>> + * Also use r10 for the phys offset. >>> + * >>> + * Note that \virt should be in a register other than r1 - r4 >>> + */ >>> +.macro create_table_entry, ptbl, tbl, virt, lvl >>> + load_paddr r4, \tbl >>> + create_table_entry_from_paddr \ptbl, r4, \virt, \lvl >>> + .endm >>> + >>> /* >>> * Macro to create a mapping entry in \tbl to \paddr. Only mapping in 3rd >>> * level table (i.e page granularity) is supported. >>> @@ -451,13 +471,26 @@ ENDPROC(cpu_init) >>> * Output: >>> * r12: Was a temporary mapping created? >>> * >>> - * Clobbers r0 - r4 >>> + * Clobbers r0 - r5 >>> */ >>> create_page_tables: >>> /* Prepare the page-tables for mapping Xen */ >>> mov_w r0, XEN_VIRT_START >>> create_table_entry boot_pgtable, boot_second, r0, 1 >>> - create_table_entry boot_second, boot_third, r0, 2 >>> + >>> + /* >>> + * We need to use a stash register because >>> + * create_table_entry_paddr() will clobber the register storing >>> + * the physical address of the table to point to. >>> + */ >>> + load_paddr r5, boot_third >>> + mov_w r4, XEN_VIRT_START >> Can you just reuse r0 that is already set to XEN_VIRT_START not to repeat this operation over and over again? > I decided against this approach for a few reasons: > * I wanted the register to be ordered when > create_table_entry_from_paddr is called. > * There is a necessary largish comment on top of XEN_VIRT_START. So it > makes more "difficult" to find the content of the registers. > > I am actually a bit puzzled with your comment given you were recently > the one that was pushing for adding extra ISB in the code (I still need > to send a patch for that) to make the code clearer. ISBs are way more > expensive than executing two instructions. So is this request just down > to a matter of taste? I believe you are right. The resulting code seems to be more clear and easy to understand and this is what we should care about (which stays consistent with ISB case). Also, this was more like a comment to check if you just missed it or did it deliberately, not something crucial (hence I already provided my tag). ~Michal From xen-devel-bounces@lists.xenproject.org Thu Jun 29 07:31:54 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 07:31:54 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556673.869377 (Exim 4.92) (envelope-from ) id 1qEm89-00071j-QG; Thu, 29 Jun 2023 07:31:53 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556673.869377; Thu, 29 Jun 2023 07:31:53 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEm89-00071c-Lz; Thu, 29 Jun 2023 07:31:53 +0000 Received: by outflank-mailman (input) for mailman id 556673; Thu, 29 Jun 2023 07:31:52 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEm88-0006yw-1V for xen-devel@lists.xenproject.org; Thu, 29 Jun 2023 07:31:52 +0000 Received: from NAM12-DM6-obe.outbound.protection.outlook.com (mail-dm6nam12on20609.outbound.protection.outlook.com [2a01:111:f400:fe59::609]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id ffa05bc3-164e-11ee-8611-37d641c3527e; Thu, 29 Jun 2023 09:31:46 +0200 (CEST) Received: from MW4PR03CA0095.namprd03.prod.outlook.com (2603:10b6:303:b7::10) by DM4PR12MB8569.namprd12.prod.outlook.com (2603:10b6:8:18a::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.23; Thu, 29 Jun 2023 07:31:43 +0000 Received: from CO1NAM11FT027.eop-nam11.prod.protection.outlook.com (2603:10b6:303:b7:cafe::70) by MW4PR03CA0095.outlook.office365.com (2603:10b6:303:b7::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.34 via Frontend Transport; Thu, 29 Jun 2023 07:31:42 +0000 Received: from SATLEXMB03.amd.com (165.204.84.17) by CO1NAM11FT027.mail.protection.outlook.com (10.13.174.224) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6500.48 via Frontend Transport; Thu, 29 Jun 2023 07:31:41 +0000 Received: from SATLEXMB07.amd.com (10.181.41.45) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Thu, 29 Jun 2023 02:31:41 -0500 Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB07.amd.com (10.181.41.45) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.6; Thu, 29 Jun 2023 00:31:40 -0700 Received: from [10.71.193.39] (10.180.168.240) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.23 via Frontend Transport; Thu, 29 Jun 2023 02:31:39 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: ffa05bc3-164e-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=TzTw1RU8rf0KIW9oMhBDosFGU6XP7LnIptZr4DunWrVNhwoOyOSVoc3xD9x5iaPKHUX7OaOQg0FTz7hKQliEFuNGUVSBui2frzP8RBMSkTHCHqE6vO/MUDYVk7WzZIFBqgk3W3NrPf5stru8RGnxHu5zsiQsn0tW/X7OhtcktMfPAgdXfdLw+npSVlMEjatlecdRS4L5DGfykLhU5I5yoROyTZr/pvEP7LYV64kgdr8A/jp+rbcYmNhYKzJfW93MCXqYgQSmJpohM8reTfUbQmmPw4mIrQOR/X+a6P9YI5IyZGQv6upbx37Tv0N2pqSapaChv0S0jqqWVSdcS2J4mQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=UxlBVyNEIaSzcOVq8vhIRM8864iDx5ELsLbz9ZJoHCU=; b=YW0ToHpzfkhxnW01k3CpFNkNw8kUAzJYY/t6sDPtu2YUQGaybpyfkhnToeo2GtwtGAL3QeUX4lEUbepjSoeF0tWx8ZJdbBbPQJdozHuRuRm12cdztYY9AXBgfliZ/fQpHqD8Z57y/qMcHeAJori3ixsiCi37eMxFLvrejtw2uUydCBNsWCvAvKYzyRaBAT5hogbFjCjvTRkAQL2swgsq/N5N+IEmHTExW618DD1ks5yDwYiB8OZXXFF4En+gedUEGZh/siSIUZXiwqw0aOtOA4RIdfLlLoeLkWp2ccqEs0LBAAUD4d/uY7+8ObmtyIGtEMklDrY6Isn9rM2yoO/V/A== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=xen.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=UxlBVyNEIaSzcOVq8vhIRM8864iDx5ELsLbz9ZJoHCU=; b=Swjf4df8GPIqX6RAMukuG3V3dIv2nPZi1cebLyuq5Bvi1hzTR59oEvDcVVCuH6lGAJTFTLn8B/1ttF6Fz+GWq51jeRTqn1VbK4o5FYkDZgZc+Crd5zXQ+DKNa2CAQrgtLackq4yLjkdrhUPFaxY36ta50nuUVn/CauevKJgUcOg= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C Message-ID: <8c20ee15-80c4-75ee-bc4d-d0caa934318d@amd.com> Date: Thu, 29 Jun 2023 09:31:33 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH 8/9] xen/arm: Allow the user to build Xen with USBAN Content-Language: en-US To: Julien Grall , CC: , , Julien Grall , Stefano Stabellini , "Bertrand Marquis" , Volodymyr Babchuk References: <20230625204907.57291-1-julien@xen.org> <20230625204907.57291-9-julien@xen.org> <804682ce-ad88-34dc-1501-c9ff6347fb8b@amd.com> From: Michal Orzel In-Reply-To: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO1NAM11FT027:EE_|DM4PR12MB8569:EE_ X-MS-Office365-Filtering-Correlation-Id: c8347292-4f90-4f1d-6a6d-08db7872e23a X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: p92j/5mk6TN04oCWcQ1f/WlPhVa/xqVZcmfXdxVGW+tmMKlUh7PpwoBGSf7/AhcZgNQl/q6Nu1PiByTK0SYnmGS633WcmFzSeE1De4/fgzpBjWJP2X+uVL2qos9jiSHdgEALKrY0kUD7RYnij8xNMA67z6JuewckKYPwxnMl1jB/ZqWZbmIYtb99hxZspriyRyZjlIKrlnoPDheRen7ODgPYjYuiQsrZGEk0BdkmZWBbYuNy5YEwgbucFKamryWaB3H3tfZ+/HxFEIliJlTmuPAX13dZNPDvTkB/aBgrAX+V3jpvbi2E715SsRKDw/ZzmfA261IF5k46PVwcktg4whpSfem+n0HJJu3JUWoTWvmeArytKqEoBNYHANBgNkRULnPDmNMJ/DpULA1mTw5FKfx5wSdK6GC46BFIG2ln19donPoEJzufosZnW9gVcuz7agJfSm7hMCd6WP4KgNB5Zkxa55C4WrDJiHZBaDsKXmhN88F6qANeSnVKfYxxQ2pMqS/t3lAh4okxvbBbLTmtdBNLoHEsPplu8nSuvGT/szsq3NcqOsjmKt7k8jQ1SKMGwtq0Ibq0OH7eAmlvhhFzBeQJ7JX4c7KJvvfYMiQY1CQwXuwpLbK0yxkvVrpl9vlG1y2QwO7TrjVunhq/9kemfI+djOJdwp5dBrGT8R5NOSg35/IJIWMhqjqqzEJxN6iR+bOtPXCqdQBR+B2IonS0hUPJB16osaqFTeSv5YbXCl9bH2jPEYKPls2IAwIikxuZUkhnVGQjulHWVbJGAQuX/vThGBn202255p3umSw40+FyFa3jtYFXBa02NMGiJQII X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(396003)(376002)(346002)(136003)(451199021)(46966006)(36840700001)(40470700004)(81166007)(356005)(82740400003)(47076005)(83380400001)(31696002)(36756003)(36860700001)(86362001)(31686004)(478600001)(110136005)(54906003)(16576012)(70586007)(40460700003)(6666004)(2616005)(4326008)(41300700001)(70206006)(316002)(8936002)(8676002)(426003)(336012)(186003)(53546011)(26005)(82310400005)(40480700001)(44832011)(5660300002)(2906002)(66899021)(36900700001)(43740500002);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 Jun 2023 07:31:41.8735 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: c8347292-4f90-4f1d-6a6d-08db7872e23a X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com] X-MS-Exchange-CrossTenant-AuthSource: CO1NAM11FT027.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR12MB8569 On 28/06/2023 22:39, Julien Grall wrote: > > > On 27/06/2023 09:09, Michal Orzel wrote: >> Hi Julien, >> >> On 26/06/2023 14:56, Julien Grall wrote: >>> >>> >>> Hi, >>> >>> On 26/06/2023 12:56, Michal Orzel wrote: >>>> >>>> >>>> On 25/06/2023 22:49, Julien Grall wrote: >>>>> >>>>> >>>>> From: Julien Grall >>>>> >>>>> UBSAN has been enabled a few years ago on x86 but was never >>>>> enabled on Arm because the final binary is bigger than 2MB ( >>>>> the maximum we can currently handled). >>>>> >>>>> With the recent rework, it is now possible to grow Xen over 2MB. >>>>> So there is no more roadblock to enable Xen other than increasing >>>>> the reserved area. >>>>> >>>>> On my setup, for arm32, the final binaray was very close to 4MB. >>>>> Furthermore, one may want to enable USBAN and GCOV which would put >>>>> the binary well-over 4MB (both features require for some space). >>>>> Therefore, increase the size to 8MB which should us some margin. >>>>> >>>>> Signed-off-by: Julien Grall >>>>> >>>>> ---- >>>>> >>>>> The drawback with this approach is that we are adding 6 new >>>>> page-table (3 for boot and 3 for runtime) that are statically >>>>> allocated. So the final Xen binary will be 24KB bigger when >>>>> neither UBSAN nor GCOV. >>>>> >>>>> If this is not considered acceptable, then we could make the >>>>> size of configurable in the Kconfig and decide it based on the >>>>> features enabled. >>>> Both of these features are enabled only in a debug build of Xen, so >>>> another option would be to increase Xen size only for a debug build. >>> >>> At least UBSAN can be selected without DEBUG. For that you need to add >>> EXPERT. >>> >>> Anyway, from your comment, it is not clear to me whether you dislike the >>> existing approach (and why) or you are OK with the increase. >> Sorry, I was traveling and did not have time to complete review. >> I cannot see why increasing the size would be problematic so it is ok. That said, it could be >> a good idea to write some comment above XEN_VIRT_SIZE, that this value is somewhat exaggerated, >> so that we are on the safe side at the time of activating features like UBSAN/GCOV. > > Sure. I will add a comment in this patch. For ... > >> >> Also, it would be nice to update comments in head.S of both arm32 and arm64 above >> GLOBAL(start) that were left stating: >> "All of text+data+bss must fit in 2MB, or the initial pagetable code below will need adjustment." > > ... this one, I am thinking to drop the comments in patch #5. They don't > make sense anymore as we can now in theory deal with Xen up to the size > of a L2 mapping (1GB for 4KB). Seems right. ~Michal From xen-devel-bounces@lists.xenproject.org Thu Jun 29 08:00:16 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 08:00:16 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556682.869391 (Exim 4.92) (envelope-from ) id 1qEmZM-0001Fs-2F; Thu, 29 Jun 2023 08:00:00 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556682.869391; Thu, 29 Jun 2023 08:00:00 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEmZL-0001Fl-Ta; Thu, 29 Jun 2023 07:59:59 +0000 Received: by outflank-mailman (input) for mailman id 556682; Thu, 29 Jun 2023 07:59:59 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEmZL-0001Fb-02; Thu, 29 Jun 2023 07:59:59 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEmZK-00048d-Op; Thu, 29 Jun 2023 07:59:58 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEmZK-00076y-Dd; Thu, 29 Jun 2023 07:59:58 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qEmZK-0000bc-DB; Thu, 29 Jun 2023 07:59:58 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=ELDss+gcIgdjlWubVXAbd6d8nfet4mHRT0M8kjETee8=; b=HDhfPUJYCO5qQ3KfRwST9noAqb ngwgOBoq3gwCNxEAk5X7mo85oA7jOL8PraBGbsrqt9Vur9JZohHkS/na/hu+2o1gXmH3LMLLofxV1 wn7d/u7cew9xZFAmdi3GYmAwzSqGYIOOSPCAJi5NE7m0yH3yXP4UgpyzEp1lxYopR+WI=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [linux-linus test] 181633: regressions - FAIL X-Osstest-Failures: linux-linus:test-amd64-amd64-qemuu-nested-amd:leak-check/basis(11):fail:regression linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:xen-boot:fail:regression linux-linus:test-amd64-amd64-pygrub:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-qemut-debianhvm-amd64:leak-check/basis(11):fail:regression linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-multivcpu:xen-boot:fail:regression linux-linus:test-amd64-amd64-libvirt-xsm:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-xsm:xen-boot:fail:regression linux-linus:test-amd64-amd64-libvirt-qcow2:leak-check/basis(11):fail:regression linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64:leak-check/basis(11):fail:regression linux-linus:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:xen-boot:fail:regression linux-linus:test-amd64-amd64-freebsd11-amd64:freebsd-install:fail:regression linux-linus:test-amd64-amd64-libvirt-raw:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:leak-check/basis(11):fail:regression linux-linus:test-amd64-amd64-xl-shadow:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm:leak-check/basis(11):fail:regression linux-linus:test-amd64-amd64-libvirt:debian-install:fail:regression linux-linus:test-amd64-amd64-xl-pvhv2-amd:debian-install:fail:regression linux-linus:test-amd64-amd64-xl-credit2:debian-install:fail:regression linux-linus:test-amd64-amd64-xl:debian-install:fail:regression linux-linus:test-amd64-amd64-xl-credit1:debian-install:fail:regression linux-linus:test-amd64-coresched-amd64-xl:debian-install:fail:regression linux-linus:test-amd64-amd64-libvirt-pair:xen-boot/src_host:fail:regression linux-linus:test-amd64-amd64-xl-pvhv2-intel:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-qemuu-ovmf-amd64:debian-hvm-install:fail:regression linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:debian-hvm-install:fail:regression linux-linus:test-amd64-amd64-xl-vhd:xen-boot:fail:regression linux-linus:test-amd64-amd64-freebsd12-amd64:xen-boot:fail:regression linux-linus:test-amd64-amd64-qemuu-nested-intel:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-pvshim:xen-boot:fail:regression linux-linus:test-amd64-amd64-pair:xen-boot/src_host:fail:regression linux-linus:test-amd64-amd64-pair:xen-boot/dst_host:fail:regression linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:debian-hvm-install:fail:regression linux-linus:test-armhf-armhf-xl-credit1:xen-boot:fail:regression linux-linus:test-arm64-arm64-xl-credit2:guest-start/debian.repeat:fail:regression linux-linus:test-arm64-arm64-libvirt-raw:guest-start:fail:regression linux-linus:test-arm64-arm64-xl-vhd:guest-start:fail:regression linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:windows-install:fail:regression linux-linus:test-amd64-amd64-examine:reboot:fail:regression linux-linus:test-amd64-amd64-examine-uefi:reboot:fail:regression linux-linus:test-amd64-amd64-examine-bios:reboot:fail:regression linux-linus:test-amd64-amd64-xl-rtds:xen-boot:fail:allowable linux-linus:test-armhf-armhf-examine:reboot:fail:nonblocking linux-linus:test-armhf-armhf-xl-arndale:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-raw:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-credit2:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-rtds:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-qcow2:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-vhd:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-multivcpu:xen-boot:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: linux=89181f544ffa4da682b0145738342f9b78b9e8dc X-Osstest-Versions-That: linux=6c538e1adbfc696ac4747fb10d63e704344f763d From: osstest service owner Date: Thu, 29 Jun 2023 07:59:58 +0000 flight 181633 linux-linus real [real] http://logs.test-lab.xenproject.org/osstest/logs/181633/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: test-amd64-amd64-qemuu-nested-amd 11 leak-check/basis(11) fail REGR. vs. 180278 test-amd64-amd64-xl-qemuu-ws16-amd64 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-pygrub 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-xl-qemut-debianhvm-amd64 11 leak-check/basis(11) fail REGR. vs. 180278 test-amd64-amd64-xl-qemuu-win7-amd64 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-xl-qemut-win7-amd64 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-xl-multivcpu 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-libvirt-xsm 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-xl-xsm 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-libvirt-qcow2 11 leak-check/basis(11) fail REGR. vs. 180278 test-amd64-amd64-xl-qemuu-debianhvm-amd64 11 leak-check/basis(11) fail REGR. vs. 180278 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-freebsd11-amd64 12 freebsd-install fail REGR. vs. 180278 test-amd64-amd64-libvirt-raw 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 11 leak-check/basis(11) fail REGR. vs. 180278 test-amd64-amd64-xl-shadow 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm 11 leak-check/basis(11) fail REGR. vs. 180278 test-amd64-amd64-libvirt 12 debian-install fail REGR. vs. 180278 test-amd64-amd64-xl-pvhv2-amd 12 debian-install fail REGR. vs. 180278 test-amd64-amd64-xl-credit2 12 debian-install fail REGR. vs. 180278 test-amd64-amd64-xl 12 debian-install fail REGR. vs. 180278 test-amd64-amd64-xl-credit1 12 debian-install fail REGR. vs. 180278 test-amd64-coresched-amd64-xl 12 debian-install fail REGR. vs. 180278 test-amd64-amd64-libvirt-pair 12 xen-boot/src_host fail REGR. vs. 180278 test-amd64-amd64-xl-pvhv2-intel 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-xl-qemuu-ovmf-amd64 12 debian-hvm-install fail REGR. vs. 180278 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 12 debian-hvm-install fail REGR. vs. 180278 test-amd64-amd64-xl-vhd 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-freebsd12-amd64 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-qemuu-nested-intel 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-xl-pvshim 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-pair 12 xen-boot/src_host fail REGR. vs. 180278 test-amd64-amd64-pair 13 xen-boot/dst_host fail REGR. vs. 180278 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 12 debian-hvm-install fail REGR. vs. 180278 test-armhf-armhf-xl-credit1 8 xen-boot fail REGR. vs. 180278 test-arm64-arm64-xl-credit2 18 guest-start/debian.repeat fail REGR. vs. 180278 test-arm64-arm64-libvirt-raw 13 guest-start fail REGR. vs. 180278 test-arm64-arm64-xl-vhd 13 guest-start fail REGR. vs. 180278 test-amd64-amd64-xl-qemut-ws16-amd64 12 windows-install fail REGR. vs. 180278 test-amd64-amd64-examine 8 reboot fail REGR. vs. 180278 test-amd64-amd64-examine-uefi 8 reboot fail REGR. vs. 180278 test-amd64-amd64-examine-bios 8 reboot fail REGR. vs. 180278 Regressions which are regarded as allowable (not blocking): test-amd64-amd64-xl-rtds 8 xen-boot fail REGR. vs. 180278 Tests which did not succeed, but are not blocking: test-armhf-armhf-examine 8 reboot fail like 180278 test-armhf-armhf-xl-arndale 8 xen-boot fail like 180278 test-armhf-armhf-xl 8 xen-boot fail like 180278 test-armhf-armhf-libvirt-raw 8 xen-boot fail like 180278 test-armhf-armhf-xl-credit2 8 xen-boot fail like 180278 test-armhf-armhf-xl-rtds 8 xen-boot fail like 180278 test-armhf-armhf-libvirt 8 xen-boot fail like 180278 test-armhf-armhf-libvirt-qcow2 8 xen-boot fail like 180278 test-armhf-armhf-xl-vhd 8 xen-boot fail like 180278 test-armhf-armhf-xl-multivcpu 8 xen-boot fail like 180278 test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass version targeted for testing: linux 89181f544ffa4da682b0145738342f9b78b9e8dc baseline version: linux 6c538e1adbfc696ac4747fb10d63e704344f763d Last test of basis 180278 2023-04-16 19:41:46 Z 73 days Failing since 180281 2023-04-17 06:24:36 Z 73 days 140 attempts Testing same since 181633 2023-06-28 22:10:19 Z 0 days 1 attempts ------------------------------------------------------------ 2982 people touched revisions under test, not listing them all jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl fail test-amd64-coresched-amd64-xl fail test-arm64-arm64-xl pass test-armhf-armhf-xl fail test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm fail test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm fail test-amd64-amd64-xl-qemut-debianhvm-i386-xsm fail test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm fail test-amd64-amd64-libvirt-xsm fail test-arm64-arm64-libvirt-xsm pass test-amd64-amd64-xl-xsm fail test-arm64-arm64-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd fail test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 fail test-amd64-amd64-xl-qemuu-debianhvm-amd64 fail test-amd64-amd64-freebsd11-amd64 fail test-amd64-amd64-freebsd12-amd64 fail test-amd64-amd64-xl-qemuu-ovmf-amd64 fail test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale fail test-amd64-amd64-examine-bios fail test-amd64-amd64-xl-credit1 fail test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 fail test-amd64-amd64-xl-credit2 fail test-arm64-arm64-xl-credit2 fail test-armhf-armhf-xl-credit2 fail test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict fail test-amd64-amd64-examine fail test-arm64-arm64-examine pass test-armhf-armhf-examine fail test-amd64-amd64-qemuu-nested-intel fail test-amd64-amd64-xl-pvhv2-intel fail test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt fail test-armhf-armhf-libvirt fail test-amd64-amd64-xl-multivcpu fail test-armhf-armhf-xl-multivcpu fail test-amd64-amd64-pair fail test-amd64-amd64-libvirt-pair fail test-amd64-amd64-xl-pvshim fail test-amd64-amd64-pygrub fail test-amd64-amd64-libvirt-qcow2 fail test-armhf-armhf-libvirt-qcow2 fail test-amd64-amd64-libvirt-raw fail test-arm64-arm64-libvirt-raw fail test-armhf-armhf-libvirt-raw fail test-amd64-amd64-xl-rtds fail test-armhf-armhf-xl-rtds fail test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow fail test-amd64-amd64-xl-shadow fail test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi fail test-amd64-amd64-xl-vhd fail test-arm64-arm64-xl-vhd fail test-armhf-armhf-xl-vhd fail ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. (No revision log; it would be 415233 lines long.) From xen-devel-bounces@lists.xenproject.org Thu Jun 29 08:21:49 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 08:21:49 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556696.869401 (Exim 4.92) (envelope-from ) id 1qEmuN-0005D6-68; Thu, 29 Jun 2023 08:21:43 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556696.869401; Thu, 29 Jun 2023 08:21:43 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEmuN-0005Cz-3J; Thu, 29 Jun 2023 08:21:43 +0000 Received: by outflank-mailman (input) for mailman id 556696; Thu, 29 Jun 2023 08:21:42 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEmuM-0005Ct-8j for xen-devel@lists.xenproject.org; Thu, 29 Jun 2023 08:21:42 +0000 Received: from EUR02-VI1-obe.outbound.protection.outlook.com (mail-vi1eur02on2060e.outbound.protection.outlook.com [2a01:111:f400:fe16::60e]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id f68ffe52-1655-11ee-8611-37d641c3527e; Thu, 29 Jun 2023 10:21:36 +0200 (CEST) Received: from DBBPR09CA0023.eurprd09.prod.outlook.com (2603:10a6:10:c0::35) by AS2PR08MB8287.eurprd08.prod.outlook.com (2603:10a6:20b:556::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.44; Thu, 29 Jun 2023 08:21:33 +0000 Received: from DBAEUR03FT059.eop-EUR03.prod.protection.outlook.com (2603:10a6:10:c0:cafe::d1) by DBBPR09CA0023.outlook.office365.com (2603:10a6:10:c0::35) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.22 via Frontend Transport; Thu, 29 Jun 2023 08:21:33 +0000 Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by DBAEUR03FT059.mail.protection.outlook.com (100.127.142.102) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.20 via Frontend Transport; Thu, 29 Jun 2023 08:21:33 +0000 Received: ("Tessian outbound 52217515e112:v142"); Thu, 29 Jun 2023 08:21:33 +0000 Received: from cc1c309af71e.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id F2DA05C8-AA14-4BEA-BDD5-BEAA19376452.1; Thu, 29 Jun 2023 08:21:26 +0000 Received: from EUR04-DB3-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id cc1c309af71e.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Thu, 29 Jun 2023 08:21:26 +0000 Received: from AM6PR08MB3784.eurprd08.prod.outlook.com (2603:10a6:20b:85::25) by AS8PR08MB7337.eurprd08.prod.outlook.com (2603:10a6:20b:444::5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.19; Thu, 29 Jun 2023 08:21:25 +0000 Received: from AM6PR08MB3784.eurprd08.prod.outlook.com ([fe80::5e17:39a6:eec7:c482]) by AM6PR08MB3784.eurprd08.prod.outlook.com ([fe80::5e17:39a6:eec7:c482%4]) with mapi id 15.20.6521.026; Thu, 29 Jun 2023 08:21:24 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: f68ffe52-1655-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=z9wy44JI9gsq8hu9CRU8UTps+OR11TjbePSpCERO+6Q=; b=H7H7INb9DohODi1V4+NwNIl2ua5OMrIwNhSvKgyDxXwvhyo1GYrYfcHg3P7zQe4FhJxcUv9dNEq3hx5sO6EK+50kT+mqSyHPLeB9jV52BVtnVtg3DF9nE3ZfLuEG5CNbj6rSQo8ru/vZ4cJjjhAFl6y4dd3bm00bmzb9uJta3SA= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C X-CheckRecipientChecked: true X-CR-MTA-CID: ae905de147b11744 X-CR-MTA-TID: 64aa7808 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=dhzcDLRI0BsKx3PmYyi6W+nKbAbu2+AXEM+u2U43oqyJuJ0iw00t9Qk01hXRKXVMf0f3j241ssrgUPcBDR/aq7r6zOfxn01wfVoij+ZRpY9JhcxcuW8d8lQ0VC7NWjS7yVj1LZBpjNpjmKwt8G37+igYTWXZ66GlQW0R7Zs4WKvCVQ1xI/FmU9NY2CD3NU3+qUZ2/ONT0tazgAZnZ7vNyO8MUCmsB+pdwfvmuoJeFSBib1FQZ8MebPhcLVDJmq8x+L5n+RqZ8f400AoNXvzogurZVJLN9Ff5lv6jiUGkTov/1Itzz4FWJChRNpHZW3KWzROjV40LKmFZQyEwWer1oA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=z9wy44JI9gsq8hu9CRU8UTps+OR11TjbePSpCERO+6Q=; b=jihaJLnkvX+iEtxdXSle/pSs1PAdUY1ysDCn6AkLlHR2InQTYUqTrzL+iwvnsMH7G+vFNJ3UEbKNqbQSyTmnh8kG+4VF40gOxpM1Lp12FJMwGF+8go/KVBqyESPu5CiCqqvSIAQOTvfVG7tbIy6AvDaWPLFaRV2nwSh28aFiwMVTOPAnz+4PRlvQgw4Tfti0CBQ3gwYzFUZwPfcSjJGNfxPOan252jfHg+gVvfXAvN29JUDzz260gkPT/Uy/I4GqkKWmTZ2g74xUFUnjmHtUmXFicF2CkevdyorepSvkaW2nfVi/GEDUiGkG9ujRNS7LmV7M3i0wLIcYDbNctXCyXw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=z9wy44JI9gsq8hu9CRU8UTps+OR11TjbePSpCERO+6Q=; b=H7H7INb9DohODi1V4+NwNIl2ua5OMrIwNhSvKgyDxXwvhyo1GYrYfcHg3P7zQe4FhJxcUv9dNEq3hx5sO6EK+50kT+mqSyHPLeB9jV52BVtnVtg3DF9nE3ZfLuEG5CNbj6rSQo8ru/vZ4cJjjhAFl6y4dd3bm00bmzb9uJta3SA= From: Bertrand Marquis To: Stefano Stabellini CC: Xen-devel , Jan Beulich , Julien Grall , "andrew.cooper3@citrix.com" , "roger.pau@citrix.com" , "roberto.bagnara@bugseng.com" , Stefano Stabellini Subject: Re: [PATCH] docs/misra: add Rules 8.2, 8.3, 8.14 Thread-Topic: [PATCH] docs/misra: add Rules 8.2, 8.3, 8.14 Thread-Index: AQHZo99p/T97HMuw0EqXSDkqCUoxs6+hfZcA Date: Thu, 29 Jun 2023 08:21:24 +0000 Message-ID: References: <20230621012618.2661337-1-sstabellini@kernel.org> In-Reply-To: <20230621012618.2661337-1-sstabellini@kernel.org> Accept-Language: en-GB, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-mailer: Apple Mail (2.3731.600.7) Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-traffictypediagnostic: AM6PR08MB3784:EE_|AS8PR08MB7337:EE_|DBAEUR03FT059:EE_|AS2PR08MB8287:EE_ X-MS-Office365-Filtering-Correlation-Id: f556fed5-2696-4b68-0f1c-08db7879d913 x-checkrecipientrouted: true nodisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: 5teRs7fhYH5NfUXT3RAYPdfcBhjSC2O4DaSSVdhlZsBB0VAeXpkV+3atB4jqAtG5FZKYX3E3qSK3fup+gcjQEoXBqOv6BmjdfWVuNzxyyEtnDIugskSDbdMLNuf81TVz4QXJ8YOntVw4Ka8mT0msiH6ujbGIkBDkdRRFY5G4182zHqeyu5MlV7V3DyeTNvjqtB5v0OnEwMz/zfj8eh3+tXgmt+bF9XWe1QkDEO/x8R3NfEGmm0cCsZAbhnKRlblyNU1i0fWhytEV811vpJzI5kPmnmi4jtg6eMCyuE+DgJwy/qu8ayR0RNbpu0kvWwmsCarkhYGHktgim9twIPQCkg+MGEH/cvO+AwHyyAUDwSY5b03xWjUqH5fqrJ23K8gVeVoRY0NnCxrLQPh7VWOttsvc2epRuWMXnG790qrzJgIzoMmHKV+03NP6g9//0hvZm9JalkF5E5Hwseatpf9+VIaEYIInhu1R3x44aPpuYHJBkRIlc9uWboGyc3vvt2valZOXvQGNcrPXBzbRxP8F/EmVY7AuELF2jkenLQd4pd4lPTcfsKNQJMIuqt1O11wDKrK/npA6R6T32PlPzzdipUIv3KUq7lQwu9ByDtY/e/HdhrzuX5kCxrA1/fNH1ozsYVsnffhjx3CL6U8TD3AsYgWrrhULOPmT4A7gCtmNKsY7Xg7I2c+RehNcW/xiWOXU X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM6PR08MB3784.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(396003)(366004)(39860400002)(376002)(136003)(346002)(451199021)(91956017)(36756003)(316002)(76116006)(33656002)(66946007)(66556008)(66476007)(66446008)(4326008)(6916009)(478600001)(38070700005)(64756008)(8936002)(5660300002)(8676002)(2906002)(41300700001)(86362001)(54906003)(6486002)(53546011)(6506007)(6512007)(38100700002)(186003)(71200400001)(122000001)(2616005)(45980500001);DIR:OUT;SFP:1101; Content-Type: text/plain; charset="us-ascii" Content-ID: Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR08MB7337 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: DBAEUR03FT059.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: a4246c28-9474-4572-b822-08db7879d427 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: W0P073jEv+6xdNpn11njlXQVetVGmSDlHJprIAg9hfK6WRmxuV/qq7Jp5C6bmst5i08ZVZKWWHTX4MQiNnwDAuoe6zv7iH8VPghWL3cmEdfCFtCarXF3GfoLwqU00a7Nd8WobzIP7NBlrmrdwunj/PeD0+p+dh9JYWdASRRRSqD8yxKpU6Sm+3n16GAhAh8QNH4QNT4wA8hiu7pfa9Ws3D9fR/83FCwNnIpt7w5HOPzTaVAWUTv+p913YGp+dQLcJ2QaCVr5nbRSC5EjA4A/KN4/81512OIWgM5/YLcJr7X5EthdqNlX1Y/xqQ8SZpdQzOVZF2ulv4LqCdDnSEZrTWAKwa39VxkfZ4NZRfnvnDVey/poPDW0zo1hcSmApejjQVAYqWjB+FkRSoxRbm1qBUKy5PvEddDXldM7s42zVT+UvbFYoOmBBVMiaIpnYur1j4w3gsIjZF0rPuWRjZjjSlVi+j4IeMksLZQ/vuwPvpyOHWroObqIPlc8/P8sYvhMf2fAYWamxr2evUR+AOOsFzvCKwPx6R9LHWVgWub8ptKK1hbpGTvWKwK+oyR/n7EjrRd+8Khy+ZLrZF2ONvml3EaAsDFJb+tzMEyjizRpvz184j6tX14VhN02XYWjZbfjEEr7sjDIYyLZwFMHdr34fCvupxn/DKCxvb2yivj1oWiepVMnss9POgjoI5DBXqyET6JJtiAnhKE7I5oS/J4p5e1cwatVUVySAABq6KdhEeJTTCRCkNRVAftjRKbGVSi96P/y4xeMAAUEu8NdAmxMbw== X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230028)(4636009)(396003)(346002)(136003)(39860400002)(376002)(451199021)(40470700004)(36840700001)(46966006)(40460700003)(478600001)(2616005)(4326008)(316002)(36756003)(6486002)(81166007)(356005)(186003)(82740400003)(82310400005)(36860700001)(6506007)(6512007)(26005)(53546011)(47076005)(70206006)(2906002)(70586007)(336012)(33656002)(86362001)(40480700001)(6862004)(41300700001)(8936002)(8676002)(54906003)(5660300002);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 Jun 2023 08:21:33.0869 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: f556fed5-2696-4b68-0f1c-08db7879d913 X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: DBAEUR03FT059.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS2PR08MB8287 Hi Stefano, > On 21 Jun 2023, at 03:26, Stefano Stabellini wro= te: >=20 > From: Stefano Stabellini >=20 > Signed-off-by: Stefano Stabellini Reviewed-by: Bertrand Marquis Cheers Bertrand > --- > docs/misra/rules.rst | 16 ++++++++++++++++ > 1 file changed, 16 insertions(+) >=20 > diff --git a/docs/misra/rules.rst b/docs/misra/rules.rst > index 11b9c42b70..9caf43968c 100644 > --- a/docs/misra/rules.rst > +++ b/docs/misra/rules.rst > @@ -213,6 +213,17 @@ maintainers if you want to suggest a change. > - Types shall be explicitly specified > - >=20 > + * - `Rule 8.2 `_ > + - Required > + - Function types shall be in prototype form with named parameters > + - > + > + * - `Rule 8.3 `_ > + - Required > + - All declarations of an object or function shall use the same > + names and type qualifiers > + - > + > * - `Rule 8.4 `_ > - Required > - A compatible declaration shall be visible when an object or > @@ -248,6 +259,11 @@ maintainers if you want to suggest a change. > enumeration constant shall be unique > - >=20 > + * - `Rule 8.14 `_ > + - Required > + - The restrict type qualifier shall not be used > + - > + > * - `Rule 9.1 `_ > - Mandatory > - The value of an object with automatic storage duration shall not > --=20 > 2.25.1 >=20 From xen-devel-bounces@lists.xenproject.org Thu Jun 29 09:30:09 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 09:30:09 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556702.869411 (Exim 4.92) (envelope-from ) id 1qEnyH-0003J5-0e; Thu, 29 Jun 2023 09:29:49 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556702.869411; Thu, 29 Jun 2023 09:29:48 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEnyG-0003If-U5; Thu, 29 Jun 2023 09:29:48 +0000 Received: by outflank-mailman (input) for mailman id 556702; Thu, 29 Jun 2023 09:29:48 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEnyG-0003IZ-37 for xen-devel@lists.xenproject.org; Thu, 29 Jun 2023 09:29:48 +0000 Received: from smtp-out2.suse.de (smtp-out2.suse.de [195.135.220.29]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 7bcab496-165f-11ee-b237-6b7b168915f2; Thu, 29 Jun 2023 11:29:45 +0200 (CEST) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by smtp-out2.suse.de (Postfix) with ESMTPS id BA4231F8AA; Thu, 29 Jun 2023 09:29:44 +0000 (UTC) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id 8B8C713905; Thu, 29 Jun 2023 09:29:44 +0000 (UTC) Received: from dovecot-director2.suse.de ([192.168.254.65]) by imap2.suse-dmz.suse.de with ESMTPSA id EdVaIAhPnWTOfgAAMHmgww (envelope-from ); Thu, 29 Jun 2023 09:29:44 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 7bcab496-165f-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1; t=1688030984; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=MKszLAjZrqC7eXhG1+3BH0NP/W/TUrjIo3qmuVavoLs=; b=Z2ZejWHkaFLgao/OqtSAJy0BwzWi+hbJBYkULSZUO6iT1LvLUMapYqqSCLEmassTY03iEF xU5yRlsNTp3sf35SR6FWHQYMLkUoY3+sfHySheH1tTj5e5HDnsmu5j+57WjNBeZhGmO8Kp 6k+i9LMTXNXPfPxvI6dJ9UeZMfqPYC8= Message-ID: Date: Thu, 29 Jun 2023 11:29:43 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH 04/11] tools/xenstore: rename do_tdb_delete() and change parameter type Content-Language: en-US To: Julien Grall , xen-devel@lists.xenproject.org Cc: Wei Liu , Anthony PERARD References: <20230530091333.7678-1-jgross@suse.com> <20230530091333.7678-5-jgross@suse.com> From: Juergen Gross In-Reply-To: Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="------------tfXmtKl1WVJdOxT4tLe4TiDZ" This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --------------tfXmtKl1WVJdOxT4tLe4TiDZ Content-Type: multipart/mixed; boundary="------------fVc4PG095N5lznsgBWRU2JFz"; protected-headers="v1" From: Juergen Gross To: Julien Grall , xen-devel@lists.xenproject.org Cc: Wei Liu , Anthony PERARD Message-ID: Subject: Re: [PATCH 04/11] tools/xenstore: rename do_tdb_delete() and change parameter type References: <20230530091333.7678-1-jgross@suse.com> <20230530091333.7678-5-jgross@suse.com> In-Reply-To: --------------fVc4PG095N5lznsgBWRU2JFz Content-Type: multipart/mixed; boundary="------------u6Ak6WktscoUSAae0tVZYtV5" --------------u6Ak6WktscoUSAae0tVZYtV5 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: base64 T24gMjAuMDYuMjMgMTM6MjQsIEp1bGllbiBHcmFsbCB3cm90ZToNCj4gSGkgSnVlcmdlbiwN Cj4gDQo+IE9uIDMwLzA1LzIwMjMgMTA6MTMsIEp1ZXJnZW4gR3Jvc3Mgd3JvdGU6DQo+PiBk aWZmIC0tZ2l0IGEvdG9vbHMveGVuc3RvcmUveGVuc3RvcmVkX2NvcmUuaCBiL3Rvb2xzL3hl bnN0b3JlL3hlbnN0b3JlZF9jb3JlLmgNCj4+IGluZGV4IGY3Y2IwMzVmMjYuLjdmYzZkNzNl NWEgMTAwNjQ0DQo+PiAtLS0gYS90b29scy94ZW5zdG9yZS94ZW5zdG9yZWRfY29yZS5oDQo+ PiArKysgYi90b29scy94ZW5zdG9yZS94ZW5zdG9yZWRfY29yZS5oDQo+PiBAQCAtMzU4LDEx ICszNTgsMTIgQEAgZXh0ZXJuIHhlbmdudHRhYl9oYW5kbGUgKip4Z3RfaGFuZGxlOw0KPj4g wqAgaW50IHJlbWVtYmVyX3N0cmluZyhzdHJ1Y3QgaGFzaHRhYmxlICpoYXNoLCBjb25zdCBj aGFyICpzdHIpOw0KPj4gKy8qIERhdGEgYmFzZSBhY2Nlc3MgZnVuY3Rpb25zLiAqLw0KPj4g wqAgdm9pZCBzZXRfdGRiX2tleShjb25zdCBjaGFyICpuYW1lLCBUREJfREFUQSAqa2V5KTsN Cj4+IMKgIGludCBkb190ZGJfd3JpdGUoc3RydWN0IGNvbm5lY3Rpb24gKmNvbm4sIFREQl9E QVRBICprZXksIFREQl9EQVRBICpkYXRhLA0KPj4gwqDCoMKgwqDCoMKgwqDCoMKgwqAgc3Ry dWN0IG5vZGVfYWNjb3VudF9kYXRhICphY2MsIGludCBmbGFnLCBib29sIG5vX3F1b3RhX2No ZWNrKTsNCj4+IC1pbnQgZG9fdGRiX2RlbGV0ZShzdHJ1Y3QgY29ubmVjdGlvbiAqY29ubiwg VERCX0RBVEEgKmtleSwNCj4+IC3CoMKgwqDCoMKgwqDCoMKgwqAgc3RydWN0IG5vZGVfYWNj b3VudF9kYXRhICphY2MpOw0KPj4gK2ludCBkYl9kZWxldGUoc3RydWN0IGNvbm5lY3Rpb24g KmNvbm4sIGNvbnN0IGNoYXIgKm5hbWUsDQo+PiArwqDCoMKgwqDCoMKgwqDCoMKgIHN0cnVj dCBub2RlX2FjY291bnRfZGF0YSAqYWNjKTsNCj4+IMKgIHZvaWQgY29ubl9mcmVlX2J1ZmZl cmVkX2RhdGEoc3RydWN0IGNvbm5lY3Rpb24gKmNvbm4pOw0KPj4gZGlmZiAtLWdpdCBhL3Rv b2xzL3hlbnN0b3JlL3hlbnN0b3JlZF90cmFuc2FjdGlvbi5jIA0KPj4gYi90b29scy94ZW5z dG9yZS94ZW5zdG9yZWRfdHJhbnNhY3Rpb24uYw0KPj4gaW5kZXggMTY0NmMwNzA0MC4uYmYx NzNmM2QxZCAxMDA2NDQNCj4+IC0tLSBhL3Rvb2xzL3hlbnN0b3JlL3hlbnN0b3JlZF90cmFu c2FjdGlvbi5jDQo+PiArKysgYi90b29scy94ZW5zdG9yZS94ZW5zdG9yZWRfdHJhbnNhY3Rp b24uYw0KPj4gQEAgLTM4NSw4ICszODUsNyBAQCBzdGF0aWMgaW50IGZpbmFsaXplX3RyYW5z YWN0aW9uKHN0cnVjdCBjb25uZWN0aW9uICpjb25uLA0KPj4gwqDCoMKgwqDCoMKgwqDCoMKg IC8qIEVudHJpZXMgZm9yIHVubW9kaWZpZWQgbm9kZXMgY2FuIGJlIHJlbW92ZWQgZWFybHku ICovDQo+PiDCoMKgwqDCoMKgwqDCoMKgwqAgaWYgKCFpLT5tb2RpZmllZCkgew0KPj4gwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgaWYgKGktPnRhX25vZGUpIHsNCj4+IC3CoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgc2V0X3RkYl9rZXkoaS0+dHJhbnNfbmFtZSwgJnRh X2tleSk7DQo+PiAtwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIGlmIChkb190ZGJf ZGVsZXRlKGNvbm4sICZ0YV9rZXksIE5VTEwpKQ0KPj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoCBpZiAoZGJfZGVsZXRlKGNvbm4sIGktPnRyYW5zX25hbWUsIE5VTEwpKQ0K Pj4gwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHJldHVybiBF SU87DQo+PiDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB9DQo+PiDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoCBsaXN0X2RlbCgmaS0+bGlzdCk7DQo+PiBAQCAtMzk1LDIxICszOTQs MjEgQEAgc3RhdGljIGludCBmaW5hbGl6ZV90cmFuc2FjdGlvbihzdHJ1Y3QgY29ubmVjdGlv biAqY29ubiwNCj4+IMKgwqDCoMKgwqAgfQ0KPj4gwqDCoMKgwqDCoCB3aGlsZSAoKGkgPSBs aXN0X3RvcCgmdHJhbnMtPmFjY2Vzc2VkLCBzdHJ1Y3QgYWNjZXNzZWRfbm9kZSwgbGlzdCkp KSB7DQo+PiAtwqDCoMKgwqDCoMKgwqAgc2V0X3RkYl9rZXkoaS0+bm9kZSwgJmtleSk7DQo+ IA0KPiBJdCBpcyBub3QgY2xlYXIgdG8gbWUgd2h5IHlvdSBhcmUgbW92aW5nIGxhdGVyIHRo ZSBjYWxsIHRvIHNldF90ZGJfa2V5KCkgaW4gdGhpcyANCj4gcGF0Y2guDQoNCkl0IGlzIG5l ZWRlZCBpbiB0aGUgaWYgKCkgY2FzZSBvbmx5IG5vdywgYmVmb3JlIHRoZSBwYXRjaCB0aGUg ZWxzZSBjYXNlDQpuZWVkZWQgaXQsIHRvby4NCg0KPiANCj4+IMKgwqDCoMKgwqDCoMKgwqDC oCBpZiAoaS0+dGFfbm9kZSkgew0KPj4gwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgc2V0 X3RkYl9rZXkoaS0+dHJhbnNfbmFtZSwgJnRhX2tleSk7DQo+PiDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoCBkYXRhID0gdGRiX2ZldGNoKHRkYl9jdHgsIHRhX2tleSk7DQo+PiDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBpZiAoZGF0YS5kcHRyKSB7DQo+PiAtwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgIHRyYWNlX3RkYigicmVhZCAlcyBzaXplICV6dVxuIiwg dGFfa2V5LmRwdHIsDQo+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHRyYWNl X3RkYigicmVhZCAlcyBzaXplICV6dVxuIiwgaS0+dHJhbnNfbmFtZSwNCj4gDQo+IFRoaXMg Y2hhbmdlIHNlZW1zIHVucmVsYXRlZCB0byB0aGlzIHBhdGNoLg0KDQpIbW0sIHllcy4gSSds bCBtb3ZlIHRoYXQgY2hhbmdlIHRvIHRoZSBwYXRjaCB3aGVyZSBpdCBiZWxvbmdzLg0KDQoN Ckp1ZXJnZW4NCg== --------------u6Ak6WktscoUSAae0tVZYtV5 Content-Type: application/pgp-keys; name="OpenPGP_0xB0DE9DD628BF132F.asc" Content-Disposition: attachment; filename="OpenPGP_0xB0DE9DD628BF132F.asc" Content-Description: OpenPGP public key Content-Transfer-Encoding: quoted-printable -----BEGIN PGP PUBLIC KEY BLOCK----- xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjri oyspZKOBycWxw3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2 kaV2KL9650I1SJvedYm8Of8Zd621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i 1TXkH09XSSI8mEQ/ouNcMvIJNwQpd369y9bfIhWUiVXEK7MlRgUG6MvIj6Y3Am/B BLUVbDa4+gmzDC9ezlZkTZG2t14zWPvxXP3FAp2pkW0xqG7/377qptDmrk42GlSK N4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEBAAHNHEp1ZXJnZW4gR3Jvc3Mg PGpnQHBmdXBmLm5ldD7CwHkEEwECACMFAlOMcBYCGwMHCwkIBwMCAQYVCAIJCgsE FgIDAQIeAQIXgAAKCRCw3p3WKL8TL0KdB/93FcIZ3GCNwFU0u3EjNbNjmXBKDY4F UGNQH2lvWAUy+dnyThpwdtF/jQ6j9RwE8VP0+NXcYpGJDWlNb9/JmYqLiX2Q3Tye vpB0CA3dbBQp0OW0fgCetToGIQrg0MbD1C/sEOv8Mr4NAfbauXjZlvTj30H2jO0u +6WGM6nHwbh2l5O8ZiHkH32iaSTfN7Eu5RnNVUJbvoPHZ8SlM4KWm8rG+lIkGurq qu5gu8q8ZMKdsdGC4bBxdQKDKHEFExLJK/nRPFmAuGlId1E3fe10v5QL+qHI3EIP tyfE7i9Hz6rVwi7lWKgh7pe0ZvatAudZ+JNIlBKptb64FaiIOAWDCx1SzR9KdWVy Z2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+wsB5BBMBAgAjBQJTjHCvAhsDBwsJ CAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey/HmQf/RtI7kv5A2PS4 RF7HoZhPVPogNVbC4YA6lW7DrWf0teC0RR3MzXfy6pJ+7KLgkqMlrAbN/8Dvjoz7 8X+5vhH/rDLa9BuZQlhFmvcGtCF8eR0T1v0nC/nuAFVGy+67q2DH8As3KPu0344T BDpAvr2uYM4tSqxK4DURx5INz4ZZ0WNFHcqsfvlGJALDeE0LhITTd9jLzdDad1pQ SToCnLl6SBJZjDOX9QQcyUigZFtCXFst4dlsvddrxyqT1f17+2cFSdu7+ynLmXBK 7abQ3rwJY8SbRO2iRulogc5vr/RLMMlscDAiDkaFQWLoqHHOdfO9rURssHNN8WkM nQfvUewRz80hSnVlcmdlbiBHcm9zcyA8amdyb3NzQG5vdmVsbC5jb20+wsB5BBMB AgAjBQJTjHDXAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/ Ey8PUQf/ehmgCI9jB9hlgexLvgOtf7PJnFOXgMLdBQgBlVPO3/D9R8LtF9DBAFPN hlrsfIG/SqICoRCqUcJ96Pn3P7UUinFG/I0ECGF4EvTE1jnDkfJZr6jrbjgyoZHi w/4BNwSTL9rWASyLgqlA8u1mf+c2yUwcGhgkRAd1gOwungxcwzwqgljf0N51N5Jf VRHRtyfwq/ge+YEkDGcTU6Y0sPOuj4Dyfm8fJzdfHNQsWq3PnczLVELStJNdapwP OoE+lotufe3AM2vAEYJ9rTz3Cki4JFUsgLkHFqGZarrPGi1eyQcXeluldO3m91NK /1xMI3/+8jbO0tsn1tqSEUGIJi7ox80eSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1 c2UuZGU+wsB5BBMBAgAjBQJTjHDrAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgEC F4AACgkQsN6d1ii/Ey+LhQf9GL45eU5vOowA2u5N3g3OZUEBmDHVVbqMtzwlmNC4 k9Kx39r5s2vcFl4tXqW7g9/ViXYuiDXb0RfUpZiIUW89siKrkzmQ5dM7wRqzgJpJ wK8Bn2MIxAKArekWpiCKvBOB/Cc+3EXE78XdlxLyOi/NrmSGRIov0karw2RzMNOu 5D+jLRZQd1Sv27AR+IP3I8U4aqnhLpwhK7MEy9oCILlgZ1QZe49kpcumcZKORmzB TNh30FVKK1EvmV2xAKDoaEOgQB4iFQLhJCdP1I5aSgM5IVFdn7v5YgEYuJYx37Io N1EblHI//x/e2AaIHpzK5h88NEawQsaNRpNSrcfbFmAg987ATQRTjHAWAQgAyzH6 AOODMBjgfWE9VeCgsrwH3exNAU32gLq2xvjpWnHIs98ndPUDpnoxWQugJ6MpMncr 0xSwFmHEgnSEjK/PAjppgmyc57BwKII3sV4on+gDVFJR6Y8ZRwgnBC5mVM6JjQ5x Dk8WRXljExRfUX9pNhdE5eBOZJrDRoLUmmjDtKzWaDhIg/+1Hzz93X4fCQkNVbVF LELU9bMaLPBG/x5q4iYZ2k2ex6d47YE1ZFdMm6YBYMOljGkZKwYde5ldM9mo45mm we0icXKLkpEdIXKTZeKDO+Hdv1aqFuAcccTg9RXDQjmwhC3yEmrmcfl0+rPghO0I v3OOImwTEe4co3c1mwARAQABwsBfBBgBAgAJBQJTjHAWAhsMAAoJELDendYovxMv Q/gH/1ha96vm4P/L+bQpJwrZ/dneZcmEwTbe8YFsw2V/Buv6Z4Mysln3nQK5ZadD 534CF7TDVft7fC4tU4PONxF5D+/tvgkPfDAfF77zy2AH1vJzQ1fOU8lYFpZXTXIH b+559UqvIB8AdgR3SAJGHHt4RKA0F7f5ipYBBrC6cyXJyyoprT10EMvU8VGiwXvT yJz3fjoYsdFzpWPlJEBRMedCot60g5dmbdrZ5DWClAr0yau47zpWj3enf1tLWaqc suylWsviuGjKGw7KHQd3bxALOknAp4dN3QwBYCKuZ7AddY9yjynVaD5X7nF9nO5B jR/i1DG86lem3iBDXzXsZDn8R38=3D =3D2wuH -----END PGP PUBLIC KEY BLOCK----- --------------u6Ak6WktscoUSAae0tVZYtV5-- --------------fVc4PG095N5lznsgBWRU2JFz-- --------------tfXmtKl1WVJdOxT4tLe4TiDZ Content-Type: application/pgp-signature; name="OpenPGP_signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="OpenPGP_signature" -----BEGIN PGP SIGNATURE----- wsB5BAABCAAjFiEEhRJncuj2BJSl0Jf3sN6d1ii/Ey8FAmSdTwcFAwAAAAAACgkQsN6d1ii/Ey/6 gwgAmcfi2jT2OhRtCvZiJKBXp29PHH/hW2SMNXWAkVdr6CqSVV0til1xkjwUAlkEhrXPi0Yo+Qaz j9hmLOcgQbaamhJR/B/NZwpig2bHjv+10qHGb9aM7otbqbFsBWX5cnC5DElajk6ZVjNQsHJv6b4A hSSFA0Spa92KILQVzxqlRD8HPLqObz3PaiRAWF6g4oF4FD2Pa7X18mUv1CyLxIN4LK/2iYdObZxs X+dC+yk2igRC02cSYVfGD6mXXoq66f3Pr0Z1b5iyDcN8e6pP0v3qHxyskV1gOTGt7s/YbhV6mY/v zUYVD0RLOWWPlN3qoTklri89c/RnradLGqv1HR5MdA== =C/A1 -----END PGP SIGNATURE----- --------------tfXmtKl1WVJdOxT4tLe4TiDZ-- From xen-devel-bounces@lists.xenproject.org Thu Jun 29 09:51:17 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 09:51:17 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556707.869420 (Exim 4.92) (envelope-from ) id 1qEoIt-0006cq-Gx; Thu, 29 Jun 2023 09:51:07 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556707.869420; Thu, 29 Jun 2023 09:51:07 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEoIt-0006cj-EG; Thu, 29 Jun 2023 09:51:07 +0000 Received: by outflank-mailman (input) for mailman id 556707; Thu, 29 Jun 2023 09:51:06 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEoIs-0006cd-AI for xen-devel@lists.xenproject.org; Thu, 29 Jun 2023 09:51:06 +0000 Received: from smtp-out1.suse.de (smtp-out1.suse.de [195.135.220.28]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 7406c5ea-1662-11ee-8611-37d641c3527e; Thu, 29 Jun 2023 11:51:00 +0200 (CEST) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by smtp-out1.suse.de (Postfix) with ESMTPS id 6390921874; Thu, 29 Jun 2023 09:51:00 +0000 (UTC) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id 348E213905; Thu, 29 Jun 2023 09:51:00 +0000 (UTC) Received: from dovecot-director2.suse.de ([192.168.254.65]) by imap2.suse-dmz.suse.de with ESMTPSA id hCrwCgRUnWQJCwAAMHmgww (envelope-from ); Thu, 29 Jun 2023 09:51:00 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 7406c5ea-1662-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1; t=1688032260; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=pjAWZ44ueg1kKn4yA6E7gI6pungwi1Ls1XP9FPc4Xps=; b=Rs8oqeLIFf6kn107NN0X4RzKDzkFbj80H/HJWPhEN8pQUVjYWs1xMKirHfx6Yls542xlrd tfue4rhTaNSCJhQOPykzhU667eGJUs2LhoAcLQmwj/WaKJWAhW2XZxDpxYdd0Tp721Shyc Y48JPViysMx7Vdt3d3sjBzao3VMgEDQ= Message-ID: <83fb7f2c-5eb9-7c72-00ca-52880df5aa86@suse.com> Date: Thu, 29 Jun 2023 11:50:59 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH 05/11] tools/xenstore: rename do_tdb_write() and change parameter type Content-Language: en-US To: Julien Grall , xen-devel@lists.xenproject.org Cc: Wei Liu , Anthony PERARD References: <20230530091333.7678-1-jgross@suse.com> <20230530091333.7678-6-jgross@suse.com> From: Juergen Gross In-Reply-To: Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="------------z0uuCp8QKatANjToYAMDI19X" This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --------------z0uuCp8QKatANjToYAMDI19X Content-Type: multipart/mixed; boundary="------------yRhTfkao4CBcdXMMlQXjw5EO"; protected-headers="v1" From: Juergen Gross To: Julien Grall , xen-devel@lists.xenproject.org Cc: Wei Liu , Anthony PERARD Message-ID: <83fb7f2c-5eb9-7c72-00ca-52880df5aa86@suse.com> Subject: Re: [PATCH 05/11] tools/xenstore: rename do_tdb_write() and change parameter type References: <20230530091333.7678-1-jgross@suse.com> <20230530091333.7678-6-jgross@suse.com> In-Reply-To: --------------yRhTfkao4CBcdXMMlQXjw5EO Content-Type: multipart/mixed; boundary="------------TEV0Plb9ix8iUwAx9CT7KlWb" --------------TEV0Plb9ix8iUwAx9CT7KlWb Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: base64 T24gMjAuMDYuMjMgMTQ6MjAsIEp1bGllbiBHcmFsbCB3cm90ZToNCj4gSGkgSnVlcmdlbiwN Cj4gDQo+IE9uIDMwLzA1LzIwMjMgMTA6MTMsIEp1ZXJnZW4gR3Jvc3Mgd3JvdGU6DQo+PiBA QCAtMzk1LDE4ICszOTMsMTggQEAgc3RhdGljIGludCBmaW5hbGl6ZV90cmFuc2FjdGlvbihz dHJ1Y3QgY29ubmVjdGlvbiAqY29ubiwNCj4+IMKgwqDCoMKgwqAgd2hpbGUgKChpID0gbGlz dF90b3AoJnRyYW5zLT5hY2Nlc3NlZCwgc3RydWN0IGFjY2Vzc2VkX25vZGUsIGxpc3QpKSkg ew0KPj4gwqDCoMKgwqDCoMKgwqDCoMKgIGlmIChpLT50YV9ub2RlKSB7DQo+PiAtwqDCoMKg wqDCoMKgwqDCoMKgwqDCoCBzZXRfdGRiX2tleShpLT50cmFuc19uYW1lLCAmdGFfa2V5KTsN Cj4+IC3CoMKgwqDCoMKgwqDCoMKgwqDCoMKgIGRhdGEgPSB0ZGJfZmV0Y2godGRiX2N0eCwg dGFfa2V5KTsNCj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHNldF90ZGJfa2V5KGktPnRy YW5zX25hbWUsICZrZXkpOw0KPj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqAgZGF0YSA9IHRk Yl9mZXRjaCh0ZGJfY3R4LCBrZXkpOw0KPiANCj4gVGhpcyBjaGFuZ2UgY29uZnVzZWQgbWUg YmVjYXVzZSB5b3UgYXJlIGp1c3QgcmVuYW1pbmcgdGhlIGtleSB2YXJpYWJsZS4gVGhpcyAN Cj4gZmVlbHMgdW5yZWxhdGVkIHRvIHRoaXMgcGF0Y2ggKHllcywgSSBrbm93IHRoYXQgdGhl IHZhcmlhYmxlICdrZXknIGlzIG5vdCB1c2VkIA0KPiBhbnltb3JlKS4gU28gSSB3b3VsZCBy YXRoZXIgcHJlZmVyIGlmIHlvdSBkb24ndCBjaGFuZ2UgdGhlIG5hbWUuDQoNCk9rYXksIEkn bGwga2VlcCB0YV9rZXkuDQoNCg0KSnVlcmdlbg0KDQo= --------------TEV0Plb9ix8iUwAx9CT7KlWb Content-Type: application/pgp-keys; name="OpenPGP_0xB0DE9DD628BF132F.asc" Content-Disposition: attachment; filename="OpenPGP_0xB0DE9DD628BF132F.asc" Content-Description: OpenPGP public key Content-Transfer-Encoding: quoted-printable -----BEGIN PGP PUBLIC KEY BLOCK----- xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjri oyspZKOBycWxw3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2 kaV2KL9650I1SJvedYm8Of8Zd621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i 1TXkH09XSSI8mEQ/ouNcMvIJNwQpd369y9bfIhWUiVXEK7MlRgUG6MvIj6Y3Am/B BLUVbDa4+gmzDC9ezlZkTZG2t14zWPvxXP3FAp2pkW0xqG7/377qptDmrk42GlSK N4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEBAAHNHEp1ZXJnZW4gR3Jvc3Mg PGpnQHBmdXBmLm5ldD7CwHkEEwECACMFAlOMcBYCGwMHCwkIBwMCAQYVCAIJCgsE FgIDAQIeAQIXgAAKCRCw3p3WKL8TL0KdB/93FcIZ3GCNwFU0u3EjNbNjmXBKDY4F UGNQH2lvWAUy+dnyThpwdtF/jQ6j9RwE8VP0+NXcYpGJDWlNb9/JmYqLiX2Q3Tye vpB0CA3dbBQp0OW0fgCetToGIQrg0MbD1C/sEOv8Mr4NAfbauXjZlvTj30H2jO0u +6WGM6nHwbh2l5O8ZiHkH32iaSTfN7Eu5RnNVUJbvoPHZ8SlM4KWm8rG+lIkGurq qu5gu8q8ZMKdsdGC4bBxdQKDKHEFExLJK/nRPFmAuGlId1E3fe10v5QL+qHI3EIP tyfE7i9Hz6rVwi7lWKgh7pe0ZvatAudZ+JNIlBKptb64FaiIOAWDCx1SzR9KdWVy Z2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+wsB5BBMBAgAjBQJTjHCvAhsDBwsJ CAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey/HmQf/RtI7kv5A2PS4 RF7HoZhPVPogNVbC4YA6lW7DrWf0teC0RR3MzXfy6pJ+7KLgkqMlrAbN/8Dvjoz7 8X+5vhH/rDLa9BuZQlhFmvcGtCF8eR0T1v0nC/nuAFVGy+67q2DH8As3KPu0344T BDpAvr2uYM4tSqxK4DURx5INz4ZZ0WNFHcqsfvlGJALDeE0LhITTd9jLzdDad1pQ SToCnLl6SBJZjDOX9QQcyUigZFtCXFst4dlsvddrxyqT1f17+2cFSdu7+ynLmXBK 7abQ3rwJY8SbRO2iRulogc5vr/RLMMlscDAiDkaFQWLoqHHOdfO9rURssHNN8WkM nQfvUewRz80hSnVlcmdlbiBHcm9zcyA8amdyb3NzQG5vdmVsbC5jb20+wsB5BBMB AgAjBQJTjHDXAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/ Ey8PUQf/ehmgCI9jB9hlgexLvgOtf7PJnFOXgMLdBQgBlVPO3/D9R8LtF9DBAFPN hlrsfIG/SqICoRCqUcJ96Pn3P7UUinFG/I0ECGF4EvTE1jnDkfJZr6jrbjgyoZHi w/4BNwSTL9rWASyLgqlA8u1mf+c2yUwcGhgkRAd1gOwungxcwzwqgljf0N51N5Jf VRHRtyfwq/ge+YEkDGcTU6Y0sPOuj4Dyfm8fJzdfHNQsWq3PnczLVELStJNdapwP OoE+lotufe3AM2vAEYJ9rTz3Cki4JFUsgLkHFqGZarrPGi1eyQcXeluldO3m91NK /1xMI3/+8jbO0tsn1tqSEUGIJi7ox80eSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1 c2UuZGU+wsB5BBMBAgAjBQJTjHDrAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgEC F4AACgkQsN6d1ii/Ey+LhQf9GL45eU5vOowA2u5N3g3OZUEBmDHVVbqMtzwlmNC4 k9Kx39r5s2vcFl4tXqW7g9/ViXYuiDXb0RfUpZiIUW89siKrkzmQ5dM7wRqzgJpJ wK8Bn2MIxAKArekWpiCKvBOB/Cc+3EXE78XdlxLyOi/NrmSGRIov0karw2RzMNOu 5D+jLRZQd1Sv27AR+IP3I8U4aqnhLpwhK7MEy9oCILlgZ1QZe49kpcumcZKORmzB TNh30FVKK1EvmV2xAKDoaEOgQB4iFQLhJCdP1I5aSgM5IVFdn7v5YgEYuJYx37Io N1EblHI//x/e2AaIHpzK5h88NEawQsaNRpNSrcfbFmAg987ATQRTjHAWAQgAyzH6 AOODMBjgfWE9VeCgsrwH3exNAU32gLq2xvjpWnHIs98ndPUDpnoxWQugJ6MpMncr 0xSwFmHEgnSEjK/PAjppgmyc57BwKII3sV4on+gDVFJR6Y8ZRwgnBC5mVM6JjQ5x Dk8WRXljExRfUX9pNhdE5eBOZJrDRoLUmmjDtKzWaDhIg/+1Hzz93X4fCQkNVbVF LELU9bMaLPBG/x5q4iYZ2k2ex6d47YE1ZFdMm6YBYMOljGkZKwYde5ldM9mo45mm we0icXKLkpEdIXKTZeKDO+Hdv1aqFuAcccTg9RXDQjmwhC3yEmrmcfl0+rPghO0I v3OOImwTEe4co3c1mwARAQABwsBfBBgBAgAJBQJTjHAWAhsMAAoJELDendYovxMv Q/gH/1ha96vm4P/L+bQpJwrZ/dneZcmEwTbe8YFsw2V/Buv6Z4Mysln3nQK5ZadD 534CF7TDVft7fC4tU4PONxF5D+/tvgkPfDAfF77zy2AH1vJzQ1fOU8lYFpZXTXIH b+559UqvIB8AdgR3SAJGHHt4RKA0F7f5ipYBBrC6cyXJyyoprT10EMvU8VGiwXvT yJz3fjoYsdFzpWPlJEBRMedCot60g5dmbdrZ5DWClAr0yau47zpWj3enf1tLWaqc suylWsviuGjKGw7KHQd3bxALOknAp4dN3QwBYCKuZ7AddY9yjynVaD5X7nF9nO5B jR/i1DG86lem3iBDXzXsZDn8R38=3D =3D2wuH -----END PGP PUBLIC KEY BLOCK----- --------------TEV0Plb9ix8iUwAx9CT7KlWb-- --------------yRhTfkao4CBcdXMMlQXjw5EO-- --------------z0uuCp8QKatANjToYAMDI19X Content-Type: application/pgp-signature; name="OpenPGP_signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="OpenPGP_signature" -----BEGIN PGP SIGNATURE----- wsB5BAABCAAjFiEEhRJncuj2BJSl0Jf3sN6d1ii/Ey8FAmSdVAMFAwAAAAAACgkQsN6d1ii/Ey+M kggAkqZ2bTP4ZDXuNQHVHCfxrFMdrUYDg65H5NCYhjFZ3sToWft6t2dXsykW1rJxYX8ToAjIQf9W +TS86tBNJP/i8RlPjGw83kDnyjvJS5BpkcJkuuLVtzBnZ6dO3wSCUWabD3FH5SToaSPNZP7mIW9n Ae9sDoAc6Oy8i7Rnw7gWqwW5HlifZYpZQp5HG9fZkO9n6BQSb35c0zvXGf4GZGBqrCJU3WhedN7h xAc4pv85kUoD6gNpVAgaAI2nxwqDK0hAPN2jqDoh4NahMm8UYhOtJPrQOLQJLp9J7sVKE6VHjwzL CJgDGlBeLeUC7a7ERUFofTPHuQ9SMHgR1piJATkPBA== =icul -----END PGP SIGNATURE----- --------------z0uuCp8QKatANjToYAMDI19X-- From xen-devel-bounces@lists.xenproject.org Thu Jun 29 09:55:07 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 09:55:07 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556714.869430 (Exim 4.92) (envelope-from ) id 1qEoMa-0007GY-2w; Thu, 29 Jun 2023 09:54:56 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556714.869430; Thu, 29 Jun 2023 09:54:56 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEoMZ-0007GR-Vy; Thu, 29 Jun 2023 09:54:55 +0000 Received: by outflank-mailman (input) for mailman id 556714; Thu, 29 Jun 2023 09:54:54 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEoMY-0007GH-Mz for xen-devel@lists.xenproject.org; Thu, 29 Jun 2023 09:54:54 +0000 Received: from mail137-13.atl71.mandrillapp.com (mail137-13.atl71.mandrillapp.com [198.2.137.13]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id fe2a2d36-1662-11ee-b237-6b7b168915f2; Thu, 29 Jun 2023 11:54:53 +0200 (CEST) Received: from pmta07.mandrill.prod.atl01.rsglab.com (localhost [127.0.0.1]) by mail137-13.atl71.mandrillapp.com (Mailchimp) with ESMTP id 4QsDMH40ClzLfGvv1 for ; Thu, 29 Jun 2023 09:54:51 +0000 (GMT) Received: from [37.26.189.201] by mandrillapp.com id 5497fb31433b4b638e5117a9e82528d9; Thu, 29 Jun 2023 09:54:51 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: fe2a2d36-1662-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=vates.fr; s=mandrill; t=1688032491; x=1688292991; i=yann.dirson@vates.fr; bh=rhHp8FaNw6YAWNQ+2itu01kjJAtTTVVvLTc1JkqmIHA=; h=From:Subject:Message-Id:To:Feedback-ID:Date:MIME-Version: Content-Type:Content-Transfer-Encoding:CC:Date:Subject:From; b=Fh0qhkb8Qvt3Pm5bACbQTSxoj9waCyiOHpySu4CJ84ozdyE7U5h748y7Ojy4ECH2A CbZBu027jVNWBKQHJLjrPHeEt0MfriZOsweAKsF4RJg3nUJ+Aw5EpcmIIvdAF/T2kH LEN6EfMz+PU9aYQ1hH/X44GRCj+iDQ+TYfPBDwkc= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=mandrillapp.com; i=@mandrillapp.com; q=dns/txt; s=mandrill; t=1688032491; h=From : Subject : Message-Id : To : Date : MIME-Version : Content-Type : Content-Transfer-Encoding : From : Subject : Date : X-Mandrill-User : List-Unsubscribe; bh=rhHp8FaNw6YAWNQ+2itu01kjJAtTTVVvLTc1JkqmIHA=; b=TrDzX5ha0WFmFUC4Wo1eHlaoGoU+Wnj9ie2P3Uqem8lVARfeAIM9XeQTaxfZlwicWwtbMo 6vRpDDJVhA5Olxzq4p/Vwo4LCgpAWgcKGCDwWZr3vvNT6YeZpymTVPzLpkxiCpiPydxOVxD6 AtjrLQ+6fC4ZB+uwDM4rT1wwor7yo= From: Yann Dirson Subject: =?utf-8?Q?Xen=20Summit=202023=20Design=20Session:=20Communicating=20guest=20informations=20to=20the=20management=20stack?= X-Bm-Disclaimer: Yes X-Bm-Milter-Handled: 39f1d088-dab6-450b-998d-f0ee110bfa80 X-Bm-Transport-Timestamp: 1688032490609 Message-Id: To: xen-devel@lists.xenproject.org X-Native-Encoded: 1 X-Report-Abuse: =?UTF-8?Q?Please=20forward=20a=20copy=20of=20this=20message,=20including=20all=20headers,=20to=20abuse@mandrill.com.=20You=20can=20also=20report=20abuse=20here:=20https://mandrillapp.com/contact/abuse=3Fid=3D30504962.5497fb31433b4b638e5117a9e82528d9?= X-Mandrill-User: md_30504962 Feedback-ID: 30504962:30504962.20230629:md Date: Thu, 29 Jun 2023 09:54:51 +0000 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit Here are my notes from memory, organized by topic (and somehow enriched with more details in places) # context Guest-management stacks typically need the guest to communicate some information back. This essentially happens through Xenstore and some of it has been normalized in the Xen docs. Some of those pieces of information are filled by PV drivers (eg. ~/control/feature-poweroff), others like information on network configuration are more commonly filled by a userspace daemon (eg. xe-guest-utilities for XAPI-based platforms). People in need to publish such info even turn to forked old versions of those tools for lack of a central solution. We have started to work on a prototype guest agent (written in Rust) with the goal of providing such an official guest service within the Xen Project, that would be easily portable and use low resources. # guest agent Rust prototype Question was asked why we selected Rust: aside from the language's well-known selling-points this was largely a political decision, intended to send a signal that the Xen project values such new technologies. There is a separate Xenserver guest agent for Windows guests. The Rust agent could likely get implementations for writing to the Windows idiom for Xenstore (through WMI), and to get notified of network config changes, which would still allow to share the rest (policy, xenstore layout, likely other things in the future). It has been pointed out the Xenserver Windows guest agent has support for other features not available in the Linux version, like Copy-paste (which currently is problematic, using Xenstore to stream potentially-large amounts of data). Such features should be made better, and available everywhere. Another lesser-known feature of the Xenserver windows guest agent allows (depending on a guest registry key for enabling the feature) to let dom0 execute commands in the guest. It was noted the concept is not that far for QubesOS qrexec mechanism. # NIC information The most visible info provided by guest tools is external IP addresses. This is useful for scripts in dom0 to discover it to communicate with guests through a given VNIC, and for users to get the information without having to manually log through the VM console. Today addresses are reported for VIF and SRIOV-passthrough interfaces, but not for those on PCI-passthrough, USB-passthrough[0] or bridges that include such interfaces. Reporting more info in a backward-compatible way would make it easier for the rest of the world. For additional passed-through devices we need a way for the guest to identify the devices to report about (MAC address? hw topology?), and we'll have to dedicate a new xenstore subtree to those. For bridged VNICs the bridge IP can accurately be reported for the VNIC itself, as if it were not bridged. But confusion can occur if 2 VNICs get bridged together, as they would both report the same IP. This could be made better by adding more information to the VNIC in addition to addresses, e.g. adding a guest-unique identifier for the bridge interface, so the toolstack can deduce the existence of the bridge. [0] although we likely don't care much about that one in the server space, desktop xen distros could have a need for this - edge computing and homelab possibly too, eg. for the RaspberryPi Ethernet # control of memory ballooning Current Xenserver guest agent sets a `feature-balloon` flag. It is not meant as a feature flag though, but signals to the XAPI balloon controller (squeezed) that the guest has booted far enough that all its memory has been allocated, and that it can now "calibrate its behaviour" to be able to decide when a balloon driver has reached the goal it was set. My evaluation was that the balloon driver would better report to xenstore when it has reached its target, rather than having the balloon controller doing guesswork. It was added that it would be useful for the balloon driver to report impossibility to reach a target, and possibly other conditions. Guest agent would still have to write this node for backward compatibility. It was mentioned that a "guest booted" report could be more generally useful. (we did not discuss any particular use, or whether that would be a job for guest tools or PV drivers) # standardization of xenstore interface Usage of xenstore by the guest agent and PV drivers was documented after the fact in the xenstore-paths document in Xen source tree. That could be cleaned up and made more useful. My proposed patch to standardize the permissions on `~/control/` as set by libxl was noted as problematic for XAPI: standardization should leave the current situation legal and allow both alternatives. Thanks to everyone who attended and contributed. -- Yann Dirson | Vates Platform Developer XCP-ng & Xen Orchestra - Vates solutions w: vates.tech | xcp-ng.org | xen-orchestra.com Yann Dirson | Vates Platform Developer XCP-ng & Xen Orchestra - Vates solutions web: https://vates.tech From xen-devel-bounces@lists.xenproject.org Thu Jun 29 10:07:11 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 10:07:11 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556719.869440 (Exim 4.92) (envelope-from ) id 1qEoYB-0000WX-4X; Thu, 29 Jun 2023 10:06:55 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556719.869440; Thu, 29 Jun 2023 10:06:55 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEoYB-0000WQ-21; Thu, 29 Jun 2023 10:06:55 +0000 Received: by outflank-mailman (input) for mailman id 556719; Thu, 29 Jun 2023 10:06:54 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEoYA-0000WK-D8 for xen-devel@lists.xenproject.org; Thu, 29 Jun 2023 10:06:54 +0000 Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id aafe1878-1664-11ee-8611-37d641c3527e; Thu, 29 Jun 2023 12:06:51 +0200 (CEST) Received: from nico.bugseng.com (unknown [151.43.188.44]) by support.bugseng.com (Postfix) with ESMTPSA id 246A34EE0738; Thu, 29 Jun 2023 12:06:47 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: aafe1878-1664-11ee-8611-37d641c3527e From: Nicola Vetrini To: xen-devel@lists.xenproject.org Cc: sstabellini@kernel.org, michal.orzel@amd.com, xenia.ragiadakou@amd.com, ayan.kumar.halder@amd.com, consulting@bugseng.com, jbeulich@suse.com, andrew.cooper3@citrix.com, roger.pau@citrix.com, bertrand.marquis@arm.com, julien@xen.org, Nicola Vetrini , Volodymyr Babchuk , Rahul Singh , George Dunlap , Wei Liu Subject: [XEN PATCH v3 0/3] fix violations of MISRA C:2012 Rule 3.1 Date: Thu, 29 Jun 2023 12:06:14 +0200 Message-Id: X-Mailer: git-send-email 2.34.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Hi all, This patch series is about the violations present in the Xen sources of Rule 3.1 from MISRA C:2012, whose headline states: "The character sequences '/*' and '//' shall not be used within a comment". In the context of the effort to bring xen into compliance w.r.t. MISRA C:2012, and Rule 3.1 being already approved for the project (as evidenced by `docs/misra/rules.rst'), these violations need to be fixed. Most of the violations are due to the presence of links to webpages within C-style comment blocks, such as: xen/arch/arm/include/asm/smccc.h:37.1-41.3 /* * This file provides common defines for ARM SMC Calling Convention as * specified in * http://infocenter.arm.com/help/topic/com.arm.doc.den0028a/index.html */ In this case, I propose to deviate all of these occurrences with a project deviation to be captured by a tool configuration (not included in any patch from this series). There are, however, a few other violations that do not fall under this category, which are the focus of the following set of patches. They either: 1. remove the nested '//' character sequence within a block comment; 2. replacing the nested '//' character sequence with ARM asm comments or similar constructs that do not violate the rule. Thanks, Nicola Nicola Vetrini (3): xen/arch/arm: fix violations of MISRA C:2012 Rule 3.1 xen/drivers/passthrough/arm/smmu-v3.c: fix violations of MISRA C:2012 Rule 3.1 xen: fix violations of MISRA C:2012 Rule 3.1 xen/arch/arm/include/asm/arm32/flushtlb.h | 8 ++++---- xen/arch/arm/include/asm/arm64/flushtlb.h | 8 ++++---- xen/common/xmalloc_tlsf.c | 4 +--- xen/drivers/passthrough/arm/smmu-v3.c | 8 ++++---- xen/include/xen/atomic.h | 2 +- 5 files changed, 14 insertions(+), 16 deletions(-) -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 29 10:07:15 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 10:07:15 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556720.869451 (Exim 4.92) (envelope-from ) id 1qEoYL-0000nW-DY; Thu, 29 Jun 2023 10:07:05 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556720.869451; Thu, 29 Jun 2023 10:07:05 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEoYL-0000nP-AL; Thu, 29 Jun 2023 10:07:05 +0000 Received: by outflank-mailman (input) for mailman id 556720; Thu, 29 Jun 2023 10:07:04 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEoYK-0000mz-CU for xen-devel@lists.xenproject.org; Thu, 29 Jun 2023 10:07:04 +0000 Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id b1690b83-1664-11ee-b237-6b7b168915f2; Thu, 29 Jun 2023 12:07:02 +0200 (CEST) Received: from nico.bugseng.com (unknown [151.43.188.44]) by support.bugseng.com (Postfix) with ESMTPSA id C30534EE0739; Thu, 29 Jun 2023 12:06:59 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: b1690b83-1664-11ee-b237-6b7b168915f2 From: Nicola Vetrini To: xen-devel@lists.xenproject.org Cc: sstabellini@kernel.org, michal.orzel@amd.com, xenia.ragiadakou@amd.com, ayan.kumar.halder@amd.com, consulting@bugseng.com, jbeulich@suse.com, andrew.cooper3@citrix.com, roger.pau@citrix.com, bertrand.marquis@arm.com, julien@xen.org, Nicola Vetrini , Volodymyr Babchuk Subject: [XEN PATCH v3 1/3] xen/arch/arm: fix violations of MISRA C:2012 Rule 3.1 Date: Thu, 29 Jun 2023 12:06:15 +0200 Message-Id: <7996a8bb62e62076d48bdf289e37352bb5e43b52.1688032865.git.nicola.vetrini@bugseng.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit In the files `xen/arch/arm/include/asm/arm(32|64)/flushtlb.h' there are a few occurrences of nested '//' character sequences inside C-style comment blocks, which violate Rule 3.1. The patch aims to resolve those by changing the inner comments to arm asm comments, delimited by ';' instead. Signed-off-by: Nicola Vetrini --- Changes: - Resending the patch with the right maintainers in CC. Changes in V2: - Split the patch into a series and reworked the fix. - Apply the fix to the arm32 `flushtlb.h' file, for consistency Changes in V3: - Switched to arm asm comment in `arm(32|64)/flushtlb.h' --- xen/arch/arm/include/asm/arm32/flushtlb.h | 8 ++++---- xen/arch/arm/include/asm/arm64/flushtlb.h | 8 ++++---- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/xen/arch/arm/include/asm/arm32/flushtlb.h b/xen/arch/arm/include/asm/arm32/flushtlb.h index 22ee3b317b..61c25a3189 100644 --- a/xen/arch/arm/include/asm/arm32/flushtlb.h +++ b/xen/arch/arm/include/asm/arm32/flushtlb.h @@ -4,10 +4,10 @@ /* * Every invalidation operation use the following patterns: * - * DSB ISHST // Ensure prior page-tables updates have completed - * TLBI... // Invalidate the TLB - * DSB ISH // Ensure the TLB invalidation has completed - * ISB // See explanation below + * DSB ISHST ; Ensure prior page-tables updates have completed + * TLBI... ; Invalidate the TLB + * DSB ISH ; Ensure the TLB invalidation has completed + * ISB ; See explanation below * * For Xen page-tables the ISB will discard any instructions fetched * from the old mappings. diff --git a/xen/arch/arm/include/asm/arm64/flushtlb.h b/xen/arch/arm/include/asm/arm64/flushtlb.h index 56c6fc763b..45642201d1 100644 --- a/xen/arch/arm/include/asm/arm64/flushtlb.h +++ b/xen/arch/arm/include/asm/arm64/flushtlb.h @@ -4,10 +4,10 @@ /* * Every invalidation operation use the following patterns: * - * DSB ISHST // Ensure prior page-tables updates have completed - * TLBI... // Invalidate the TLB - * DSB ISH // Ensure the TLB invalidation has completed - * ISB // See explanation below + * DSB ISHST ; Ensure prior page-tables updates have completed + * TLBI... ; Invalidate the TLB + * DSB ISH ; Ensure the TLB invalidation has completed + * ISB ; See explanation below * * ARM64_WORKAROUND_REPEAT_TLBI: * Modification of the translation table for a virtual address might lead to -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 29 10:07:20 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 10:07:20 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556722.869461 (Exim 4.92) (envelope-from ) id 1qEoYQ-00014y-Lk; Thu, 29 Jun 2023 10:07:10 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556722.869461; Thu, 29 Jun 2023 10:07:10 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEoYQ-00014n-Ik; Thu, 29 Jun 2023 10:07:10 +0000 Received: by outflank-mailman (input) for mailman id 556722; Thu, 29 Jun 2023 10:07:09 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEoYP-0000mz-HI for xen-devel@lists.xenproject.org; Thu, 29 Jun 2023 10:07:09 +0000 Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id b501fc14-1664-11ee-b237-6b7b168915f2; Thu, 29 Jun 2023 12:07:08 +0200 (CEST) Received: from nico.bugseng.com (unknown [151.43.188.44]) by support.bugseng.com (Postfix) with ESMTPSA id 829344EE0738; Thu, 29 Jun 2023 12:07:05 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: b501fc14-1664-11ee-b237-6b7b168915f2 From: Nicola Vetrini To: xen-devel@lists.xenproject.org Cc: sstabellini@kernel.org, michal.orzel@amd.com, xenia.ragiadakou@amd.com, ayan.kumar.halder@amd.com, consulting@bugseng.com, jbeulich@suse.com, andrew.cooper3@citrix.com, roger.pau@citrix.com, bertrand.marquis@arm.com, julien@xen.org, Nicola Vetrini , Rahul Singh , Volodymyr Babchuk Subject: [XEN PATCH v3 2/3] xen/drivers/passthrough/arm/smmu-v3.c: fix violations of MISRA C:2012 Rule 3.1 Date: Thu, 29 Jun 2023 12:06:16 +0200 Message-Id: <8a8d5ed47f24791d3927345fafed07023a8b0b76.1688032865.git.nicola.vetrini@bugseng.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit In the file `xen/drivers/passthrough/arm/smmu-v3.c' there are a few occurrences of nested '//' character sequences inside C-style comment blocks, which violate Rule 3.1. The patch aims to resolve those by replacing the nested comments with equivalent constructs that do not violate the rule. Signed-off-by: Nicola Vetrini Changes: - Resending the patch with the right maintainers in CC. Changes in V2: - Split the patch into a series and reworked the fix. - Apply the fix to the arm32 `flushtlb.h' file, for consistency Changes in V3: - Revised the comment to make it clear the function the parallel control flows in the comment belong to. --- xen/drivers/passthrough/arm/smmu-v3.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/xen/drivers/passthrough/arm/smmu-v3.c b/xen/drivers/passthrough/arm/smmu-v3.c index 720aa69ff2..cdbb505134 100644 --- a/xen/drivers/passthrough/arm/smmu-v3.c +++ b/xen/drivers/passthrough/arm/smmu-v3.c @@ -1047,10 +1047,10 @@ static int arm_smmu_atc_inv_domain(struct arm_smmu_domain *smmu_domain, * before we read 'nr_ats_masters' in case of a concurrent call to * arm_smmu_enable_ats(): * - * // unmap() // arm_smmu_enable_ats() - * TLBI+SYNC atomic_inc(&nr_ats_masters); - * smp_mb(); [...] - * atomic_read(&nr_ats_masters); pci_enable_ats() // writel() + * --- unmap() --- --- arm_smmu_enable_ats() --- + * TLBI+SYNC atomic_inc(&nr_ats_masters); + * smp_mb(); [...] + * atomic_read(&nr_ats_masters); pci_enable_ats() (see writel()) * * Ensures that we always see the incremented 'nr_ats_masters' count if * ATS was enabled at the PCI device before completion of the TLBI. -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 29 10:07:25 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 10:07:25 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556724.869471 (Exim 4.92) (envelope-from ) id 1qEoYU-0001PT-TI; Thu, 29 Jun 2023 10:07:14 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556724.869471; Thu, 29 Jun 2023 10:07:14 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEoYU-0001PM-Pq; Thu, 29 Jun 2023 10:07:14 +0000 Received: by outflank-mailman (input) for mailman id 556724; Thu, 29 Jun 2023 10:07:13 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEoYT-0000mz-TN for xen-devel@lists.xenproject.org; Thu, 29 Jun 2023 10:07:13 +0000 Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id b7dfd45c-1664-11ee-b237-6b7b168915f2; Thu, 29 Jun 2023 12:07:13 +0200 (CEST) Received: from nico.bugseng.com (unknown [151.43.188.44]) by support.bugseng.com (Postfix) with ESMTPSA id B76564EE0739; Thu, 29 Jun 2023 12:07:10 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: b7dfd45c-1664-11ee-b237-6b7b168915f2 From: Nicola Vetrini To: xen-devel@lists.xenproject.org Cc: sstabellini@kernel.org, michal.orzel@amd.com, xenia.ragiadakou@amd.com, ayan.kumar.halder@amd.com, consulting@bugseng.com, jbeulich@suse.com, andrew.cooper3@citrix.com, roger.pau@citrix.com, bertrand.marquis@arm.com, julien@xen.org, Nicola Vetrini , George Dunlap , Wei Liu Subject: [XEN PATCH v3 3/3] xen: fix violations of MISRA C:2012 Rule 3.1 Date: Thu, 29 Jun 2023 12:06:17 +0200 Message-Id: X-Mailer: git-send-email 2.34.1 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit In the files modified by this patch there are a few occurrences of nested '//' character sequences inside C-style comment blocks, which violate Rule 3.1. The patch aims to resolve those by removing the nested comments. In the file 'xen/common/xmalloc_tlsf.c' the comment has been replaces by an ASSERT, to ensure that the invariant in the comment is enforced. In the file 'xen/include/xen/atomic.h' the nested comment has been removed, since the code sample is already explained by the preceding comment. Signed-off-by: Nicola Vetrini Changes: - Resending the patch with the right maintainers in CC. Changes in V2: - Split the patch into a series and reworked the fix; - Apply the fix to the arm32 `flushtlb.h' file, for consistency. Changes in V3: - Replaced commmented-out 'if' with an ASSERT( *fl >= 0 ). --- xen/common/xmalloc_tlsf.c | 4 +--- xen/include/xen/atomic.h | 2 +- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/xen/common/xmalloc_tlsf.c b/xen/common/xmalloc_tlsf.c index 75bdf18c4e..95affcc571 100644 --- a/xen/common/xmalloc_tlsf.c +++ b/xen/common/xmalloc_tlsf.c @@ -140,9 +140,7 @@ static inline void MAPPING_SEARCH(unsigned long *r, int *fl, int *sl) *fl = flsl(*r) - 1; *sl = (*r >> (*fl - MAX_LOG2_SLI)) - MAX_SLI; *fl -= FLI_OFFSET; - /*if ((*fl -= FLI_OFFSET) < 0) // FL will be always >0! - *fl = *sl = 0; - */ + ASSERT( *fl >= 0 ); *r &= ~t; } } diff --git a/xen/include/xen/atomic.h b/xen/include/xen/atomic.h index 529213ebbb..fa750a18ae 100644 --- a/xen/include/xen/atomic.h +++ b/xen/include/xen/atomic.h @@ -78,7 +78,7 @@ static inline void _atomic_set(atomic_t *v, int i); * int old = atomic_read(&v); * int new = old + 1; * if ( likely(old == atomic_cmpxchg(&v, old, new)) ) - * break; // success! + * break; * } */ static inline int atomic_cmpxchg(atomic_t *v, int old, int new); -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 29 10:19:19 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 10:19:19 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556747.869481 (Exim 4.92) (envelope-from ) id 1qEok1-0003lh-Th; Thu, 29 Jun 2023 10:19:09 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556747.869481; Thu, 29 Jun 2023 10:19:09 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEok1-0003la-R3; Thu, 29 Jun 2023 10:19:09 +0000 Received: by outflank-mailman (input) for mailman id 556747; Thu, 29 Jun 2023 10:19:08 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEok0-0003lU-9r for xen-devel@lists.xenproject.org; Thu, 29 Jun 2023 10:19:08 +0000 Received: from smtp-out2.suse.de (smtp-out2.suse.de [195.135.220.29]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 60906b10-1666-11ee-8611-37d641c3527e; Thu, 29 Jun 2023 12:19:05 +0200 (CEST) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by smtp-out2.suse.de (Postfix) with ESMTPS id 6F8611F8AA; Thu, 29 Jun 2023 10:19:05 +0000 (UTC) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id 4249D13905; Thu, 29 Jun 2023 10:19:05 +0000 (UTC) Received: from dovecot-director2.suse.de ([192.168.254.65]) by imap2.suse-dmz.suse.de with ESMTPSA id BRKqDplanWQsGAAAMHmgww (envelope-from ); Thu, 29 Jun 2023 10:19:05 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 60906b10-1666-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1; t=1688033945; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=nxdhVA354rJMJzwqE/v5/f0J4sK6BbhWPHY4M2TdX0c=; b=KOWkYHisgtsbI1VDcQhDgY9iEHK8Ys/E7JgqkTmC3iJhdBjcE2eY+htJ91e+LVwnj2OshG zNOZtK2JM2jPSMXk/o+/Ooz2ZWOo37EaYH1lckYiNDyFvQKlj4DECaFqz//QQIau2zs1Sx vZXaQnAMz399iDJF/0mL5AOmWONXDYY= Message-ID: Date: Thu, 29 Jun 2023 12:19:04 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH 07/11] tools/xenstore: add wrapper for tdb_fetch() Content-Language: en-US To: Julien Grall , xen-devel@lists.xenproject.org Cc: Wei Liu , Anthony PERARD References: <20230530091333.7678-1-jgross@suse.com> <20230530091333.7678-8-jgross@suse.com> <77a0b256-ce9f-ee19-66e5-e2b3f60656c4@xen.org> From: Juergen Gross In-Reply-To: <77a0b256-ce9f-ee19-66e5-e2b3f60656c4@xen.org> Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="------------UsQs1tzUQxIyqASW6HBRKvUF" This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --------------UsQs1tzUQxIyqASW6HBRKvUF Content-Type: multipart/mixed; boundary="------------XGx1qUy5TrZmYA1GVt2Xd1Dp"; protected-headers="v1" From: Juergen Gross To: Julien Grall , xen-devel@lists.xenproject.org Cc: Wei Liu , Anthony PERARD Message-ID: Subject: Re: [PATCH 07/11] tools/xenstore: add wrapper for tdb_fetch() References: <20230530091333.7678-1-jgross@suse.com> <20230530091333.7678-8-jgross@suse.com> <77a0b256-ce9f-ee19-66e5-e2b3f60656c4@xen.org> In-Reply-To: <77a0b256-ce9f-ee19-66e5-e2b3f60656c4@xen.org> --------------XGx1qUy5TrZmYA1GVt2Xd1Dp Content-Type: multipart/mixed; boundary="------------3uH1p0r3nr0d6iEk3loROsZ3" --------------3uH1p0r3nr0d6iEk3loROsZ3 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: base64 T24gMjAuMDYuMjMgMTQ6MjgsIEp1bGllbiBHcmFsbCB3cm90ZToNCj4gSGkgSnVlcmdlbiwN Cj4gDQo+IE9uIDMwLzA1LzIwMjMgMTA6MTMsIEp1ZXJnZW4gR3Jvc3Mgd3JvdGU6DQo+PiBB ZGQgYSB3cmFwcGVyIGZ1bmN0aW9uIGZvciB0ZGJfZmV0Y2ggdGFraW5nIHRoZSBuYW1lIG9m IHRoZSBub2RlIGluDQo+PiB0aGUgZGF0YSBiYXNlIGFzIGEgcGFyYW1ldGVyLiBMZXQgaXQg cmV0dXJuIGEgZGF0YSBwb2ludGVyIGFuZCB0aGUNCj4+IGxlbmd0aCBvZiB0aGUgZGF0YSB2 aWEgYSBsZW5ndGggcG9pbnRlciBwcm92aWRlZCBhcyBhZGRpdGlvbmFsDQo+PiBwYXJhbWV0 ZXIuDQo+Pg0KPj4gVGhpcyBlbmFibGVzIHRvIG1ha2Ugc2V0X3RkYl9rZXkoKSBzdGF0aWMg YWdhaW4uDQo+Pg0KPj4gVGhpcyBpcyBpbiBwcmVwYXJhdGlvbiB0byByZXBsYWNlIFREQiB3 aXRoIGEgbW9yZSBzaW1wbGUgZGF0YSBzdG9yYWdlLg0KPj4NCj4+IFNpZ25lZC1vZmYtYnk6 IEp1ZXJnZW4gR3Jvc3MgPGpncm9zc0BzdXNlLmNvbT4NCj4+IC0tLQ0KPj4gwqAgdG9vbHMv eGVuc3RvcmUveGVuc3RvcmVkX2NvcmUuY8KgwqDCoMKgwqDCoMKgIHwgNTUgKysrKysrKysr KysrKysrKy0tLS0tLS0tLS0NCj4+IMKgIHRvb2xzL3hlbnN0b3JlL3hlbnN0b3JlZF9jb3Jl LmjCoMKgwqDCoMKgwqDCoCB8wqAgMyArLQ0KPj4gwqAgdG9vbHMveGVuc3RvcmUveGVuc3Rv cmVkX3RyYW5zYWN0aW9uLmMgfCAzNCArKysrKysrKy0tLS0tLS0tDQo+PiDCoCAzIGZpbGVz IGNoYW5nZWQsIDUxIGluc2VydGlvbnMoKyksIDQxIGRlbGV0aW9ucygtKQ0KPj4NCj4+IGRp ZmYgLS1naXQgYS90b29scy94ZW5zdG9yZS94ZW5zdG9yZWRfY29yZS5jIGIvdG9vbHMveGVu c3RvcmUveGVuc3RvcmVkX2NvcmUuYw0KPj4gaW5kZXggNTIyYjJiYmY1Zi4uMTJjNTg0ZjA5 YiAxMDA2NDQNCj4+IC0tLSBhL3Rvb2xzL3hlbnN0b3JlL3hlbnN0b3JlZF9jb3JlLmMNCj4+ ICsrKyBiL3Rvb2xzL3hlbnN0b3JlL3hlbnN0b3JlZF9jb3JlLmMNCj4+IEBAIC04NSw3ICs4 NSw3IEBAIGJvb2wga2VlcF9vcnBoYW5zID0gZmFsc2U7DQo+PiDCoCBzdGF0aWMgaW50IHJl b3Blbl9sb2dfcGlwZVsyXTsNCj4+IMKgIHN0YXRpYyBpbnQgcmVvcGVuX2xvZ19waXBlMF9w b2xsZmRfaWR4ID0gLTE7DQo+PiDCoCBjaGFyICp0cmFjZWZpbGUgPSBOVUxMOw0KPj4gLVRE Ql9DT05URVhUICp0ZGJfY3R4ID0gTlVMTDsNCj4+ICtzdGF0aWMgVERCX0NPTlRFWFQgKnRk Yl9jdHggPSBOVUxMOw0KPiANCj4gSW4gdGhlIGNvbW1pdCBtZXNzYWdlLCB5b3UgZXhwbGFp biB3aHkgc2V0X3RkYl9rZXkoKSBpcyBub3cgc3RhdGljIGJ1dCBub3QgdGhpcyANCj4gb25l Lg0KDQpJJ2xsIGFkZCBpdC4NCg0KPiANCj4+IMKgIHVuc2lnbmVkIGludCB0cmFjZV9mbGFn cyA9IFRSQUNFX09CSiB8IFRSQUNFX0lPOw0KPj4gwqAgc3RhdGljIGNvbnN0IGNoYXIgKnNv Y2ttc2dfc3RyaW5nKGVudW0geHNkX3NvY2ttc2dfdHlwZSB0eXBlKTsNCj4+IEBAIC01NTYs NyArNTU2LDcgQEAgc3RhdGljIHZvaWQgaW5pdGlhbGl6ZV9mZHMoaW50ICpwX3NvY2tfcG9s bGZkX2lkeCwgaW50IA0KPj4gKnB0aW1lb3V0KQ0KPj4gwqDCoMKgwqDCoCB9DQo+PiDCoCB9 DQo+PiAtdm9pZCBzZXRfdGRiX2tleShjb25zdCBjaGFyICpuYW1lLCBUREJfREFUQSAqa2V5 KQ0KPj4gK3N0YXRpYyB2b2lkIHNldF90ZGJfa2V5KGNvbnN0IGNoYXIgKm5hbWUsIFREQl9E QVRBICprZXkpDQo+PiDCoCB7DQo+PiDCoMKgwqDCoMKgIC8qDQo+PiDCoMKgwqDCoMKgwqAg KiBEcm9wcGluZyBjb25zdCBpcyBmaW5lIGhlcmUsIGFzIHRoZSBrZXkgd2lsbCBuZXZlciBi ZSBtb2RpZmllZA0KPj4gQEAgLTU2NiwyNSArNTY2LDM5IEBAIHZvaWQgc2V0X3RkYl9rZXko Y29uc3QgY2hhciAqbmFtZSwgVERCX0RBVEEgKmtleSkNCj4+IMKgwqDCoMKgwqAga2V5LT5k c2l6ZSA9IHN0cmxlbihuYW1lKTsNCj4+IMKgIH0NCj4+ICt2b2lkICpkYl9mZXRjaChjb25z dCBjaGFyICpkYl9uYW1lLCBzaXplX3QgKnNpemUpDQo+PiArew0KPj4gK8KgwqDCoCBUREJf REFUQSBrZXksIGRhdGE7DQo+PiArDQo+PiArwqDCoMKgIHNldF90ZGJfa2V5KGRiX25hbWUs ICZrZXkpOw0KPj4gK8KgwqDCoCBkYXRhID0gdGRiX2ZldGNoKHRkYl9jdHgsIGtleSk7DQo+ PiArwqDCoMKgIGlmICghZGF0YS5kcHRyKQ0KPj4gK8KgwqDCoMKgwqDCoMKgIGVycm5vID0g KHRkYl9lcnJvcih0ZGJfY3R4KSA9PSBUREJfRVJSX05PRVhJU1QpID8gRU5PRU5UIDogRUlP Ow0KPiANCj4gWGVuc3RvcmVkIGlzIHRlY2huaWNhbGx5IG5vdCAoeWV0PykgaW4gdGhlIHNj b3BlIG9mIE1JU1JBLiBCdXQgSSB3b3VsZCBzYXkgd2UgDQo+IHN0aWxsIHdhbnQgdG8gc2V0 ICpzaXplIHRvIDAgaW4gdGhlIGVycm9yIHBhdGggKHRoaXMgd291bGQgYWRkcmVzcyBNSVNS QSBydWxlIDkuMSkuDQoNCkZpbmUgd2l0aCBtZS4NCg0KDQpKdWVyZ2VuDQoNCg== --------------3uH1p0r3nr0d6iEk3loROsZ3 Content-Type: application/pgp-keys; name="OpenPGP_0xB0DE9DD628BF132F.asc" Content-Disposition: attachment; filename="OpenPGP_0xB0DE9DD628BF132F.asc" Content-Description: OpenPGP public key Content-Transfer-Encoding: quoted-printable -----BEGIN PGP PUBLIC KEY BLOCK----- xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjri oyspZKOBycWxw3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2 kaV2KL9650I1SJvedYm8Of8Zd621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i 1TXkH09XSSI8mEQ/ouNcMvIJNwQpd369y9bfIhWUiVXEK7MlRgUG6MvIj6Y3Am/B BLUVbDa4+gmzDC9ezlZkTZG2t14zWPvxXP3FAp2pkW0xqG7/377qptDmrk42GlSK N4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEBAAHNHEp1ZXJnZW4gR3Jvc3Mg PGpnQHBmdXBmLm5ldD7CwHkEEwECACMFAlOMcBYCGwMHCwkIBwMCAQYVCAIJCgsE FgIDAQIeAQIXgAAKCRCw3p3WKL8TL0KdB/93FcIZ3GCNwFU0u3EjNbNjmXBKDY4F UGNQH2lvWAUy+dnyThpwdtF/jQ6j9RwE8VP0+NXcYpGJDWlNb9/JmYqLiX2Q3Tye vpB0CA3dbBQp0OW0fgCetToGIQrg0MbD1C/sEOv8Mr4NAfbauXjZlvTj30H2jO0u +6WGM6nHwbh2l5O8ZiHkH32iaSTfN7Eu5RnNVUJbvoPHZ8SlM4KWm8rG+lIkGurq qu5gu8q8ZMKdsdGC4bBxdQKDKHEFExLJK/nRPFmAuGlId1E3fe10v5QL+qHI3EIP tyfE7i9Hz6rVwi7lWKgh7pe0ZvatAudZ+JNIlBKptb64FaiIOAWDCx1SzR9KdWVy Z2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+wsB5BBMBAgAjBQJTjHCvAhsDBwsJ CAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey/HmQf/RtI7kv5A2PS4 RF7HoZhPVPogNVbC4YA6lW7DrWf0teC0RR3MzXfy6pJ+7KLgkqMlrAbN/8Dvjoz7 8X+5vhH/rDLa9BuZQlhFmvcGtCF8eR0T1v0nC/nuAFVGy+67q2DH8As3KPu0344T BDpAvr2uYM4tSqxK4DURx5INz4ZZ0WNFHcqsfvlGJALDeE0LhITTd9jLzdDad1pQ SToCnLl6SBJZjDOX9QQcyUigZFtCXFst4dlsvddrxyqT1f17+2cFSdu7+ynLmXBK 7abQ3rwJY8SbRO2iRulogc5vr/RLMMlscDAiDkaFQWLoqHHOdfO9rURssHNN8WkM nQfvUewRz80hSnVlcmdlbiBHcm9zcyA8amdyb3NzQG5vdmVsbC5jb20+wsB5BBMB AgAjBQJTjHDXAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/ Ey8PUQf/ehmgCI9jB9hlgexLvgOtf7PJnFOXgMLdBQgBlVPO3/D9R8LtF9DBAFPN hlrsfIG/SqICoRCqUcJ96Pn3P7UUinFG/I0ECGF4EvTE1jnDkfJZr6jrbjgyoZHi w/4BNwSTL9rWASyLgqlA8u1mf+c2yUwcGhgkRAd1gOwungxcwzwqgljf0N51N5Jf VRHRtyfwq/ge+YEkDGcTU6Y0sPOuj4Dyfm8fJzdfHNQsWq3PnczLVELStJNdapwP OoE+lotufe3AM2vAEYJ9rTz3Cki4JFUsgLkHFqGZarrPGi1eyQcXeluldO3m91NK /1xMI3/+8jbO0tsn1tqSEUGIJi7ox80eSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1 c2UuZGU+wsB5BBMBAgAjBQJTjHDrAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgEC F4AACgkQsN6d1ii/Ey+LhQf9GL45eU5vOowA2u5N3g3OZUEBmDHVVbqMtzwlmNC4 k9Kx39r5s2vcFl4tXqW7g9/ViXYuiDXb0RfUpZiIUW89siKrkzmQ5dM7wRqzgJpJ wK8Bn2MIxAKArekWpiCKvBOB/Cc+3EXE78XdlxLyOi/NrmSGRIov0karw2RzMNOu 5D+jLRZQd1Sv27AR+IP3I8U4aqnhLpwhK7MEy9oCILlgZ1QZe49kpcumcZKORmzB TNh30FVKK1EvmV2xAKDoaEOgQB4iFQLhJCdP1I5aSgM5IVFdn7v5YgEYuJYx37Io N1EblHI//x/e2AaIHpzK5h88NEawQsaNRpNSrcfbFmAg987ATQRTjHAWAQgAyzH6 AOODMBjgfWE9VeCgsrwH3exNAU32gLq2xvjpWnHIs98ndPUDpnoxWQugJ6MpMncr 0xSwFmHEgnSEjK/PAjppgmyc57BwKII3sV4on+gDVFJR6Y8ZRwgnBC5mVM6JjQ5x Dk8WRXljExRfUX9pNhdE5eBOZJrDRoLUmmjDtKzWaDhIg/+1Hzz93X4fCQkNVbVF LELU9bMaLPBG/x5q4iYZ2k2ex6d47YE1ZFdMm6YBYMOljGkZKwYde5ldM9mo45mm we0icXKLkpEdIXKTZeKDO+Hdv1aqFuAcccTg9RXDQjmwhC3yEmrmcfl0+rPghO0I v3OOImwTEe4co3c1mwARAQABwsBfBBgBAgAJBQJTjHAWAhsMAAoJELDendYovxMv Q/gH/1ha96vm4P/L+bQpJwrZ/dneZcmEwTbe8YFsw2V/Buv6Z4Mysln3nQK5ZadD 534CF7TDVft7fC4tU4PONxF5D+/tvgkPfDAfF77zy2AH1vJzQ1fOU8lYFpZXTXIH b+559UqvIB8AdgR3SAJGHHt4RKA0F7f5ipYBBrC6cyXJyyoprT10EMvU8VGiwXvT yJz3fjoYsdFzpWPlJEBRMedCot60g5dmbdrZ5DWClAr0yau47zpWj3enf1tLWaqc suylWsviuGjKGw7KHQd3bxALOknAp4dN3QwBYCKuZ7AddY9yjynVaD5X7nF9nO5B jR/i1DG86lem3iBDXzXsZDn8R38=3D =3D2wuH -----END PGP PUBLIC KEY BLOCK----- --------------3uH1p0r3nr0d6iEk3loROsZ3-- --------------XGx1qUy5TrZmYA1GVt2Xd1Dp-- --------------UsQs1tzUQxIyqASW6HBRKvUF Content-Type: application/pgp-signature; name="OpenPGP_signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="OpenPGP_signature" -----BEGIN PGP SIGNATURE----- wsB5BAABCAAjFiEEhRJncuj2BJSl0Jf3sN6d1ii/Ey8FAmSdWpgFAwAAAAAACgkQsN6d1ii/Ey/9 aAf+I8qTPj7DT/g3HWpj4uhKdtpRe1nC8odYRP2pA6KTmyHaF9PnCXgwXWx0ImbqdGovWDCO2Smh X5VMq2MhhCsQoN1dnd75RzJ5Iy3SQOmmQysOixQaF7tyxGWhJDpDdIOKCkPLuJfruMUI8zuE46VC JhAAzsTIwin98RBsMkjiu/bu9tm5KGBxbu1/1eAtVab3buCoFTHs8N6BMxGJK0xkq9PRxHQHcpbm Y6zBwkUe55d6JQmiLBU7Gqbwhdy2ulUixvpxXOyRohMhSocdYGHW+RMmV8kOaLu2qd2VHe8twmPi 0jE5ZAhRvMVLo2zdEcQwW37D2jdQ84yQ9xXKoLfHyA== =1OUu -----END PGP SIGNATURE----- --------------UsQs1tzUQxIyqASW6HBRKvUF-- From xen-devel-bounces@lists.xenproject.org Thu Jun 29 10:21:45 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 10:21:45 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556754.869491 (Exim 4.92) (envelope-from ) id 1qEomT-0005FS-Dt; Thu, 29 Jun 2023 10:21:41 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556754.869491; Thu, 29 Jun 2023 10:21:41 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEomT-0005FL-As; Thu, 29 Jun 2023 10:21:41 +0000 Received: by outflank-mailman (input) for mailman id 556754; Thu, 29 Jun 2023 10:21:40 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEomS-0005FE-1j for xen-devel@lists.xenproject.org; Thu, 29 Jun 2023 10:21:40 +0000 Received: from smtp-out1.suse.de (smtp-out1.suse.de [195.135.220.28]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id bb38152f-1666-11ee-8611-37d641c3527e; Thu, 29 Jun 2023 12:21:38 +0200 (CEST) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by smtp-out1.suse.de (Postfix) with ESMTPS id 87064211C2; Thu, 29 Jun 2023 10:21:37 +0000 (UTC) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id 4ED4313905; Thu, 29 Jun 2023 10:21:37 +0000 (UTC) Received: from dovecot-director2.suse.de ([192.168.254.65]) by imap2.suse-dmz.suse.de with ESMTPSA id /WeaETFbnWR2GQAAMHmgww (envelope-from ); Thu, 29 Jun 2023 10:21:37 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: bb38152f-1666-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1; t=1688034097; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=YVBJ/kc6KHAgS1uquDqv3wmu8JnzveqF4o15ZxZz18w=; b=QRipPmhOaFnNVTn8nm3WR5x8xayWjje/Vc59ZLdrmzoK95J48TIofhnIfhY8AWfYotlRxO TTgrfZfDP+x8xoHVZN70VrWrFfc5N64g6b1zcHoHtLbhPxCyqPLIrqXLpAUIf2sfrCK+Y+ aKaJLZ4y1c5Iy6BcBF/pa7Mpp/XHows= Message-ID: Date: Thu, 29 Jun 2023 12:21:36 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH 07/11] tools/xenstore: add wrapper for tdb_fetch() Content-Language: en-US To: Julien Grall , xen-devel@lists.xenproject.org Cc: Wei Liu , Anthony PERARD References: <20230530091333.7678-1-jgross@suse.com> <20230530091333.7678-8-jgross@suse.com> From: Juergen Gross In-Reply-To: Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="------------6g7GQ047zt2uEy9RoddeTyW2" This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --------------6g7GQ047zt2uEy9RoddeTyW2 Content-Type: multipart/mixed; boundary="------------YX8FMcRpdqFekGx9pVSFLKxj"; protected-headers="v1" From: Juergen Gross To: Julien Grall , xen-devel@lists.xenproject.org Cc: Wei Liu , Anthony PERARD Message-ID: Subject: Re: [PATCH 07/11] tools/xenstore: add wrapper for tdb_fetch() References: <20230530091333.7678-1-jgross@suse.com> <20230530091333.7678-8-jgross@suse.com> In-Reply-To: --------------YX8FMcRpdqFekGx9pVSFLKxj Content-Type: multipart/mixed; boundary="------------zaTU5MC00witgNh8EPUd7Qm0" --------------zaTU5MC00witgNh8EPUd7Qm0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: base64 T24gMjAuMDYuMjMgMTU6MDMsIEp1bGllbiBHcmFsbCB3cm90ZToNCj4gSGkgSnVlcmdlbiwN Cj4gDQo+IE9uZSBtb3JlIHJlbWFyayBhcyBJIHdhcyByZXZpZXdpbmcgcGF0Y2ggIzEwLg0K PiANCj4gT24gMzAvMDUvMjAyMyAxMDoxMywgSnVlcmdlbiBHcm9zcyB3cm90ZToNCj4+IEFk ZCBhIHdyYXBwZXIgZnVuY3Rpb24gZm9yIHRkYl9mZXRjaCB0YWtpbmcgdGhlIG5hbWUgb2Yg dGhlIG5vZGUgaW4NCj4+IHRoZSBkYXRhIGJhc2UgYXMgYSBwYXJhbWV0ZXIuIExldCBpdCBy ZXR1cm4gYSBkYXRhIHBvaW50ZXIgYW5kIHRoZQ0KPj4gbGVuZ3RoIG9mIHRoZSBkYXRhIHZp YSBhIGxlbmd0aCBwb2ludGVyIHByb3ZpZGVkIGFzIGFkZGl0aW9uYWwNCj4+IHBhcmFtZXRl ci4NCj4+DQo+PiBUaGlzIGVuYWJsZXMgdG8gbWFrZSBzZXRfdGRiX2tleSgpIHN0YXRpYyBh Z2Fpbi4NCj4+DQo+PiBUaGlzIGlzIGluIHByZXBhcmF0aW9uIHRvIHJlcGxhY2UgVERCIHdp dGggYSBtb3JlIHNpbXBsZSBkYXRhIHN0b3JhZ2UuDQo+Pg0KPj4gU2lnbmVkLW9mZi1ieTog SnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1c2UuY29tPg0KPj4gLS0tDQo+PiDCoCB0b29scy94 ZW5zdG9yZS94ZW5zdG9yZWRfY29yZS5jwqDCoMKgwqDCoMKgwqAgfCA1NSArKysrKysrKysr KysrKysrLS0tLS0tLS0tLQ0KPj4gwqAgdG9vbHMveGVuc3RvcmUveGVuc3RvcmVkX2NvcmUu aMKgwqDCoMKgwqDCoMKgIHzCoCAzICstDQo+PiDCoCB0b29scy94ZW5zdG9yZS94ZW5zdG9y ZWRfdHJhbnNhY3Rpb24uYyB8IDM0ICsrKysrKysrLS0tLS0tLS0NCj4+IMKgIDMgZmlsZXMg Y2hhbmdlZCwgNTEgaW5zZXJ0aW9ucygrKSwgNDEgZGVsZXRpb25zKC0pDQo+Pg0KPj4gZGlm ZiAtLWdpdCBhL3Rvb2xzL3hlbnN0b3JlL3hlbnN0b3JlZF9jb3JlLmMgYi90b29scy94ZW5z dG9yZS94ZW5zdG9yZWRfY29yZS5jDQo+PiBpbmRleCA1MjJiMmJiZjVmLi4xMmM1ODRmMDli IDEwMDY0NA0KPj4gLS0tIGEvdG9vbHMveGVuc3RvcmUveGVuc3RvcmVkX2NvcmUuYw0KPj4g KysrIGIvdG9vbHMveGVuc3RvcmUveGVuc3RvcmVkX2NvcmUuYw0KPj4gQEAgLTg1LDcgKzg1 LDcgQEAgYm9vbCBrZWVwX29ycGhhbnMgPSBmYWxzZTsNCj4+IMKgIHN0YXRpYyBpbnQgcmVv cGVuX2xvZ19waXBlWzJdOw0KPj4gwqAgc3RhdGljIGludCByZW9wZW5fbG9nX3BpcGUwX3Bv bGxmZF9pZHggPSAtMTsNCj4+IMKgIGNoYXIgKnRyYWNlZmlsZSA9IE5VTEw7DQo+PiAtVERC X0NPTlRFWFQgKnRkYl9jdHggPSBOVUxMOw0KPj4gK3N0YXRpYyBUREJfQ09OVEVYVCAqdGRi X2N0eCA9IE5VTEw7DQo+PiDCoCB1bnNpZ25lZCBpbnQgdHJhY2VfZmxhZ3MgPSBUUkFDRV9P QkogfCBUUkFDRV9JTzsNCj4+IMKgIHN0YXRpYyBjb25zdCBjaGFyICpzb2NrbXNnX3N0cmlu ZyhlbnVtIHhzZF9zb2NrbXNnX3R5cGUgdHlwZSk7DQo+PiBAQCAtNTU2LDcgKzU1Niw3IEBA IHN0YXRpYyB2b2lkIGluaXRpYWxpemVfZmRzKGludCAqcF9zb2NrX3BvbGxmZF9pZHgsIGlu dCANCj4+ICpwdGltZW91dCkNCj4+IMKgwqDCoMKgwqAgfQ0KPj4gwqAgfQ0KPj4gLXZvaWQg c2V0X3RkYl9rZXkoY29uc3QgY2hhciAqbmFtZSwgVERCX0RBVEEgKmtleSkNCj4+ICtzdGF0 aWMgdm9pZCBzZXRfdGRiX2tleShjb25zdCBjaGFyICpuYW1lLCBUREJfREFUQSAqa2V5KQ0K Pj4gwqAgew0KPj4gwqDCoMKgwqDCoCAvKg0KPj4gwqDCoMKgwqDCoMKgICogRHJvcHBpbmcg Y29uc3QgaXMgZmluZSBoZXJlLCBhcyB0aGUga2V5IHdpbGwgbmV2ZXIgYmUgbW9kaWZpZWQN Cj4+IEBAIC01NjYsMjUgKzU2NiwzOSBAQCB2b2lkIHNldF90ZGJfa2V5KGNvbnN0IGNoYXIg Km5hbWUsIFREQl9EQVRBICprZXkpDQo+PiDCoMKgwqDCoMKgIGtleS0+ZHNpemUgPSBzdHJs ZW4obmFtZSk7DQo+PiDCoCB9DQo+PiArdm9pZCAqZGJfZmV0Y2goY29uc3QgY2hhciAqZGJf bmFtZSwgc2l6ZV90ICpzaXplKQ0KPiANCj4gU2hvdWxkIG5vdCB0aGlzIHJldHVybiB4c190 ZGJfcmVjb3JkX2hkcj8NCg0KSW5kZWVkLg0KDQoNCkp1ZXJnZW4NCg0K --------------zaTU5MC00witgNh8EPUd7Qm0 Content-Type: application/pgp-keys; name="OpenPGP_0xB0DE9DD628BF132F.asc" Content-Disposition: attachment; filename="OpenPGP_0xB0DE9DD628BF132F.asc" Content-Description: OpenPGP public key Content-Transfer-Encoding: quoted-printable -----BEGIN PGP PUBLIC KEY BLOCK----- xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjri oyspZKOBycWxw3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2 kaV2KL9650I1SJvedYm8Of8Zd621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i 1TXkH09XSSI8mEQ/ouNcMvIJNwQpd369y9bfIhWUiVXEK7MlRgUG6MvIj6Y3Am/B BLUVbDa4+gmzDC9ezlZkTZG2t14zWPvxXP3FAp2pkW0xqG7/377qptDmrk42GlSK N4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEBAAHNHEp1ZXJnZW4gR3Jvc3Mg PGpnQHBmdXBmLm5ldD7CwHkEEwECACMFAlOMcBYCGwMHCwkIBwMCAQYVCAIJCgsE FgIDAQIeAQIXgAAKCRCw3p3WKL8TL0KdB/93FcIZ3GCNwFU0u3EjNbNjmXBKDY4F UGNQH2lvWAUy+dnyThpwdtF/jQ6j9RwE8VP0+NXcYpGJDWlNb9/JmYqLiX2Q3Tye vpB0CA3dbBQp0OW0fgCetToGIQrg0MbD1C/sEOv8Mr4NAfbauXjZlvTj30H2jO0u +6WGM6nHwbh2l5O8ZiHkH32iaSTfN7Eu5RnNVUJbvoPHZ8SlM4KWm8rG+lIkGurq qu5gu8q8ZMKdsdGC4bBxdQKDKHEFExLJK/nRPFmAuGlId1E3fe10v5QL+qHI3EIP tyfE7i9Hz6rVwi7lWKgh7pe0ZvatAudZ+JNIlBKptb64FaiIOAWDCx1SzR9KdWVy Z2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+wsB5BBMBAgAjBQJTjHCvAhsDBwsJ CAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey/HmQf/RtI7kv5A2PS4 RF7HoZhPVPogNVbC4YA6lW7DrWf0teC0RR3MzXfy6pJ+7KLgkqMlrAbN/8Dvjoz7 8X+5vhH/rDLa9BuZQlhFmvcGtCF8eR0T1v0nC/nuAFVGy+67q2DH8As3KPu0344T BDpAvr2uYM4tSqxK4DURx5INz4ZZ0WNFHcqsfvlGJALDeE0LhITTd9jLzdDad1pQ SToCnLl6SBJZjDOX9QQcyUigZFtCXFst4dlsvddrxyqT1f17+2cFSdu7+ynLmXBK 7abQ3rwJY8SbRO2iRulogc5vr/RLMMlscDAiDkaFQWLoqHHOdfO9rURssHNN8WkM nQfvUewRz80hSnVlcmdlbiBHcm9zcyA8amdyb3NzQG5vdmVsbC5jb20+wsB5BBMB AgAjBQJTjHDXAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/ Ey8PUQf/ehmgCI9jB9hlgexLvgOtf7PJnFOXgMLdBQgBlVPO3/D9R8LtF9DBAFPN hlrsfIG/SqICoRCqUcJ96Pn3P7UUinFG/I0ECGF4EvTE1jnDkfJZr6jrbjgyoZHi w/4BNwSTL9rWASyLgqlA8u1mf+c2yUwcGhgkRAd1gOwungxcwzwqgljf0N51N5Jf VRHRtyfwq/ge+YEkDGcTU6Y0sPOuj4Dyfm8fJzdfHNQsWq3PnczLVELStJNdapwP OoE+lotufe3AM2vAEYJ9rTz3Cki4JFUsgLkHFqGZarrPGi1eyQcXeluldO3m91NK /1xMI3/+8jbO0tsn1tqSEUGIJi7ox80eSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1 c2UuZGU+wsB5BBMBAgAjBQJTjHDrAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgEC F4AACgkQsN6d1ii/Ey+LhQf9GL45eU5vOowA2u5N3g3OZUEBmDHVVbqMtzwlmNC4 k9Kx39r5s2vcFl4tXqW7g9/ViXYuiDXb0RfUpZiIUW89siKrkzmQ5dM7wRqzgJpJ wK8Bn2MIxAKArekWpiCKvBOB/Cc+3EXE78XdlxLyOi/NrmSGRIov0karw2RzMNOu 5D+jLRZQd1Sv27AR+IP3I8U4aqnhLpwhK7MEy9oCILlgZ1QZe49kpcumcZKORmzB TNh30FVKK1EvmV2xAKDoaEOgQB4iFQLhJCdP1I5aSgM5IVFdn7v5YgEYuJYx37Io N1EblHI//x/e2AaIHpzK5h88NEawQsaNRpNSrcfbFmAg987ATQRTjHAWAQgAyzH6 AOODMBjgfWE9VeCgsrwH3exNAU32gLq2xvjpWnHIs98ndPUDpnoxWQugJ6MpMncr 0xSwFmHEgnSEjK/PAjppgmyc57BwKII3sV4on+gDVFJR6Y8ZRwgnBC5mVM6JjQ5x Dk8WRXljExRfUX9pNhdE5eBOZJrDRoLUmmjDtKzWaDhIg/+1Hzz93X4fCQkNVbVF LELU9bMaLPBG/x5q4iYZ2k2ex6d47YE1ZFdMm6YBYMOljGkZKwYde5ldM9mo45mm we0icXKLkpEdIXKTZeKDO+Hdv1aqFuAcccTg9RXDQjmwhC3yEmrmcfl0+rPghO0I v3OOImwTEe4co3c1mwARAQABwsBfBBgBAgAJBQJTjHAWAhsMAAoJELDendYovxMv Q/gH/1ha96vm4P/L+bQpJwrZ/dneZcmEwTbe8YFsw2V/Buv6Z4Mysln3nQK5ZadD 534CF7TDVft7fC4tU4PONxF5D+/tvgkPfDAfF77zy2AH1vJzQ1fOU8lYFpZXTXIH b+559UqvIB8AdgR3SAJGHHt4RKA0F7f5ipYBBrC6cyXJyyoprT10EMvU8VGiwXvT yJz3fjoYsdFzpWPlJEBRMedCot60g5dmbdrZ5DWClAr0yau47zpWj3enf1tLWaqc suylWsviuGjKGw7KHQd3bxALOknAp4dN3QwBYCKuZ7AddY9yjynVaD5X7nF9nO5B jR/i1DG86lem3iBDXzXsZDn8R38=3D =3D2wuH -----END PGP PUBLIC KEY BLOCK----- --------------zaTU5MC00witgNh8EPUd7Qm0-- --------------YX8FMcRpdqFekGx9pVSFLKxj-- --------------6g7GQ047zt2uEy9RoddeTyW2 Content-Type: application/pgp-signature; name="OpenPGP_signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="OpenPGP_signature" -----BEGIN PGP SIGNATURE----- wsB5BAABCAAjFiEEhRJncuj2BJSl0Jf3sN6d1ii/Ey8FAmSdWzAFAwAAAAAACgkQsN6d1ii/Ey83 hQf9G8UEotE3hrZF3bVS2IUIuirkh593H1mQV6WJQZcXmkB5GMgZZ1+/DdjRCveAav2YzzCyrW3j bYwKEvKtieHkGAr+Fu9MqprZpWwMbJjigGF+0Y0E+QaH9tV+oTgWnQPK7bniUB6Mtnu74HSkvIbU fo3HDiYB6Wz4g0UQAoQY+2DL6SLPWlFSytA5BVdIe3v62IOcu7Gu8BwfST4xE4PlVWkx6LryWsSN FL1GirxbBEJTgMeimEHL6B+aeph6V0HznCUMVkpRy2/wy5cW5De+5Np/peEaegyDMGZrBWjEonAR IQjfvIigCDkzvHHKsEVixm7xKk+/GrkQ6X4QF8rFsA== =pi09 -----END PGP SIGNATURE----- --------------6g7GQ047zt2uEy9RoddeTyW2-- From xen-devel-bounces@lists.xenproject.org Thu Jun 29 10:22:03 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 10:22:03 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556755.869502 (Exim 4.92) (envelope-from ) id 1qEomo-0005gw-NG; Thu, 29 Jun 2023 10:22:02 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556755.869502; Thu, 29 Jun 2023 10:22:02 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEomo-0005go-Il; Thu, 29 Jun 2023 10:22:02 +0000 Received: by outflank-mailman (input) for mailman id 556755; Thu, 29 Jun 2023 10:22:01 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEomn-0005gN-J4 for xen-devel@lists.xenproject.org; Thu, 29 Jun 2023 10:22:01 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEomm-00007u-6j; Thu, 29 Jun 2023 10:22:00 +0000 Received: from 54-240-197-234.amazon.com ([54.240.197.234] helo=[192.168.2.72]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qEomm-0001mS-10; Thu, 29 Jun 2023 10:22:00 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=Ps5o7xaXdLDmJCbMJp7heFX6tMp/kDnQqhHNYBSqqd8=; b=qRfHsj3HIWALIISRg0c6ySiAa3 tx5HXlxLP7CdAJDHrFaDvlKzpmGz3/zZ3gYmt/v1te7Vw88XYzcJVFK1zp1UkQOqmx7sjWTFT+TC0 zn3vvH/UrVqUaJLzmgtSjoKwPW/ZbEgCkttpmHv8OMWAF91k1MgIl7FuS5RzuHoK0PxI=; Message-ID: Date: Thu, 29 Jun 2023 11:21:58 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH 04/11] tools/xenstore: rename do_tdb_delete() and change parameter type Content-Language: en-US To: Juergen Gross , xen-devel@lists.xenproject.org Cc: Wei Liu , Anthony PERARD References: <20230530091333.7678-1-jgross@suse.com> <20230530091333.7678-5-jgross@suse.com> From: Julien Grall In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Hi Juergen, On 29/06/2023 10:29, Juergen Gross wrote: > On 20.06.23 13:24, Julien Grall wrote: >> Hi Juergen, >> >> On 30/05/2023 10:13, Juergen Gross wrote: >>> diff --git a/tools/xenstore/xenstored_core.h >>> b/tools/xenstore/xenstored_core.h >>> index f7cb035f26..7fc6d73e5a 100644 >>> --- a/tools/xenstore/xenstored_core.h >>> +++ b/tools/xenstore/xenstored_core.h >>> @@ -358,11 +358,12 @@ extern xengnttab_handle **xgt_handle; >>>   int remember_string(struct hashtable *hash, const char *str); >>> +/* Data base access functions. */ >>>   void set_tdb_key(const char *name, TDB_DATA *key); >>>   int do_tdb_write(struct connection *conn, TDB_DATA *key, TDB_DATA >>> *data, >>>            struct node_account_data *acc, int flag, bool >>> no_quota_check); >>> -int do_tdb_delete(struct connection *conn, TDB_DATA *key, >>> -          struct node_account_data *acc); >>> +int db_delete(struct connection *conn, const char *name, >>> +          struct node_account_data *acc); >>>   void conn_free_buffered_data(struct connection *conn); >>> diff --git a/tools/xenstore/xenstored_transaction.c >>> b/tools/xenstore/xenstored_transaction.c >>> index 1646c07040..bf173f3d1d 100644 >>> --- a/tools/xenstore/xenstored_transaction.c >>> +++ b/tools/xenstore/xenstored_transaction.c >>> @@ -385,8 +385,7 @@ static int finalize_transaction(struct connection >>> *conn, >>>           /* Entries for unmodified nodes can be removed early. */ >>>           if (!i->modified) { >>>               if (i->ta_node) { >>> -                set_tdb_key(i->trans_name, &ta_key); >>> -                if (do_tdb_delete(conn, &ta_key, NULL)) >>> +                if (db_delete(conn, i->trans_name, NULL)) >>>                       return EIO; >>>               } >>>               list_del(&i->list); >>> @@ -395,21 +394,21 @@ static int finalize_transaction(struct >>> connection *conn, >>>       } >>>       while ((i = list_top(&trans->accessed, struct accessed_node, >>> list))) { >>> -        set_tdb_key(i->node, &key); >> >> It is not clear to me why you are moving later the call to >> set_tdb_key() in this patch. > > It is needed in the if () case only now, before the patch the else case > needed it, too. If that's the case, then can we also move the declaration to within the if case? This would make a bit more obvious that the other branch is not meant to use the variable anymore Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Thu Jun 29 10:25:31 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 10:25:31 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556764.869511 (Exim 4.92) (envelope-from ) id 1qEoq2-0006Pq-2d; Thu, 29 Jun 2023 10:25:22 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556764.869511; Thu, 29 Jun 2023 10:25:22 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEoq1-0006Pj-WC; Thu, 29 Jun 2023 10:25:21 +0000 Received: by outflank-mailman (input) for mailman id 556764; Thu, 29 Jun 2023 10:25:20 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEoq0-0006PZ-FY for xen-devel@lists.xenproject.org; Thu, 29 Jun 2023 10:25:20 +0000 Received: from smtp-out1.suse.de (smtp-out1.suse.de [2001:67c:2178:6::1c]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 3cb82b39-1667-11ee-b237-6b7b168915f2; Thu, 29 Jun 2023 12:25:15 +0200 (CEST) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by smtp-out1.suse.de (Postfix) with ESMTPS id EC8702186E; Thu, 29 Jun 2023 10:25:14 +0000 (UTC) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id CA78A13905; Thu, 29 Jun 2023 10:25:14 +0000 (UTC) Received: from dovecot-director2.suse.de ([192.168.254.65]) by imap2.suse-dmz.suse.de with ESMTPSA id 1ceSLwpcnWQVGwAAMHmgww (envelope-from ); Thu, 29 Jun 2023 10:25:14 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 3cb82b39-1667-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1; t=1688034314; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=ydm1pVCvL7Xed4qdB6Kz/bwbkfsK04tplzJxBL6u3hA=; b=Hfz+fiWsYYdbVeHvcZ9wUAS1vwuoaA+R1tKHaQtYe4rLmD7c4Gu5NzQx0o4XlYORMTSlRG QumMVG1v7RURCOWPFKpq8HtmXxTbbG2nriQEi3Vcp8/+f2IjHTDpN4SXpMtNdacELb9mSM w0M6nXBfYAt8Ks9+azV6/jP0nzebSN8= Message-ID: Date: Thu, 29 Jun 2023 12:25:14 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH 04/11] tools/xenstore: rename do_tdb_delete() and change parameter type Content-Language: en-US To: Julien Grall , xen-devel@lists.xenproject.org Cc: Wei Liu , Anthony PERARD References: <20230530091333.7678-1-jgross@suse.com> <20230530091333.7678-5-jgross@suse.com> From: Juergen Gross In-Reply-To: Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="------------QFLV0TEnZ0zpiCjYmKyOPdce" This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --------------QFLV0TEnZ0zpiCjYmKyOPdce Content-Type: multipart/mixed; boundary="------------thx0oEgb1E9J0NwxsfKfo3Sl"; protected-headers="v1" From: Juergen Gross To: Julien Grall , xen-devel@lists.xenproject.org Cc: Wei Liu , Anthony PERARD Message-ID: Subject: Re: [PATCH 04/11] tools/xenstore: rename do_tdb_delete() and change parameter type References: <20230530091333.7678-1-jgross@suse.com> <20230530091333.7678-5-jgross@suse.com> In-Reply-To: --------------thx0oEgb1E9J0NwxsfKfo3Sl Content-Type: multipart/mixed; boundary="------------tD0FfGytrBtkRGySKRYjGhDt" --------------tD0FfGytrBtkRGySKRYjGhDt Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: base64 T24gMjkuMDYuMjMgMTI6MjEsIEp1bGllbiBHcmFsbCB3cm90ZToNCj4gSGkgSnVlcmdlbiwN Cj4gDQo+IE9uIDI5LzA2LzIwMjMgMTA6MjksIEp1ZXJnZW4gR3Jvc3Mgd3JvdGU6DQo+PiBP biAyMC4wNi4yMyAxMzoyNCwgSnVsaWVuIEdyYWxsIHdyb3RlOg0KPj4+IEhpIEp1ZXJnZW4s DQo+Pj4NCj4+PiBPbiAzMC8wNS8yMDIzIDEwOjEzLCBKdWVyZ2VuIEdyb3NzIHdyb3RlOg0K Pj4+PiBkaWZmIC0tZ2l0IGEvdG9vbHMveGVuc3RvcmUveGVuc3RvcmVkX2NvcmUuaCBiL3Rv b2xzL3hlbnN0b3JlL3hlbnN0b3JlZF9jb3JlLmgNCj4+Pj4gaW5kZXggZjdjYjAzNWYyNi4u N2ZjNmQ3M2U1YSAxMDA2NDQNCj4+Pj4gLS0tIGEvdG9vbHMveGVuc3RvcmUveGVuc3RvcmVk X2NvcmUuaA0KPj4+PiArKysgYi90b29scy94ZW5zdG9yZS94ZW5zdG9yZWRfY29yZS5oDQo+ Pj4+IEBAIC0zNTgsMTEgKzM1OCwxMiBAQCBleHRlcm4geGVuZ250dGFiX2hhbmRsZSAqKnhn dF9oYW5kbGU7DQo+Pj4+IMKgIGludCByZW1lbWJlcl9zdHJpbmcoc3RydWN0IGhhc2h0YWJs ZSAqaGFzaCwgY29uc3QgY2hhciAqc3RyKTsNCj4+Pj4gKy8qIERhdGEgYmFzZSBhY2Nlc3Mg ZnVuY3Rpb25zLiAqLw0KPj4+PiDCoCB2b2lkIHNldF90ZGJfa2V5KGNvbnN0IGNoYXIgKm5h bWUsIFREQl9EQVRBICprZXkpOw0KPj4+PiDCoCBpbnQgZG9fdGRiX3dyaXRlKHN0cnVjdCBj b25uZWN0aW9uICpjb25uLCBUREJfREFUQSAqa2V5LCBUREJfREFUQSAqZGF0YSwNCj4+Pj4g wqDCoMKgwqDCoMKgwqDCoMKgwqAgc3RydWN0IG5vZGVfYWNjb3VudF9kYXRhICphY2MsIGlu dCBmbGFnLCBib29sIG5vX3F1b3RhX2NoZWNrKTsNCj4+Pj4gLWludCBkb190ZGJfZGVsZXRl KHN0cnVjdCBjb25uZWN0aW9uICpjb25uLCBUREJfREFUQSAqa2V5LA0KPj4+PiAtwqDCoMKg wqDCoMKgwqDCoMKgIHN0cnVjdCBub2RlX2FjY291bnRfZGF0YSAqYWNjKTsNCj4+Pj4gK2lu dCBkYl9kZWxldGUoc3RydWN0IGNvbm5lY3Rpb24gKmNvbm4sIGNvbnN0IGNoYXIgKm5hbWUs DQo+Pj4+ICvCoMKgwqDCoMKgwqDCoMKgwqAgc3RydWN0IG5vZGVfYWNjb3VudF9kYXRhICph Y2MpOw0KPj4+PiDCoCB2b2lkIGNvbm5fZnJlZV9idWZmZXJlZF9kYXRhKHN0cnVjdCBjb25u ZWN0aW9uICpjb25uKTsNCj4+Pj4gZGlmZiAtLWdpdCBhL3Rvb2xzL3hlbnN0b3JlL3hlbnN0 b3JlZF90cmFuc2FjdGlvbi5jIA0KPj4+PiBiL3Rvb2xzL3hlbnN0b3JlL3hlbnN0b3JlZF90 cmFuc2FjdGlvbi5jDQo+Pj4+IGluZGV4IDE2NDZjMDcwNDAuLmJmMTczZjNkMWQgMTAwNjQ0 DQo+Pj4+IC0tLSBhL3Rvb2xzL3hlbnN0b3JlL3hlbnN0b3JlZF90cmFuc2FjdGlvbi5jDQo+ Pj4+ICsrKyBiL3Rvb2xzL3hlbnN0b3JlL3hlbnN0b3JlZF90cmFuc2FjdGlvbi5jDQo+Pj4+ IEBAIC0zODUsOCArMzg1LDcgQEAgc3RhdGljIGludCBmaW5hbGl6ZV90cmFuc2FjdGlvbihz dHJ1Y3QgY29ubmVjdGlvbiAqY29ubiwNCj4+Pj4gwqDCoMKgwqDCoMKgwqDCoMKgIC8qIEVu dHJpZXMgZm9yIHVubW9kaWZpZWQgbm9kZXMgY2FuIGJlIHJlbW92ZWQgZWFybHkuICovDQo+ Pj4+IMKgwqDCoMKgwqDCoMKgwqDCoCBpZiAoIWktPm1vZGlmaWVkKSB7DQo+Pj4+IMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgIGlmIChpLT50YV9ub2RlKSB7DQo+Pj4+IC3CoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgc2V0X3RkYl9rZXkoaS0+dHJhbnNfbmFtZSwgJnRh X2tleSk7DQo+Pj4+IC3CoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgaWYgKGRvX3Rk Yl9kZWxldGUoY29ubiwgJnRhX2tleSwgTlVMTCkpDQo+Pj4+ICvCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqAgaWYgKGRiX2RlbGV0ZShjb25uLCBpLT50cmFuc19uYW1lLCBOVUxM KSkNCj4+Pj4gwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHJl dHVybiBFSU87DQo+Pj4+IMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIH0NCj4+Pj4gwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgbGlzdF9kZWwoJmktPmxpc3QpOw0KPj4+PiBAQCAt Mzk1LDIxICszOTQsMjEgQEAgc3RhdGljIGludCBmaW5hbGl6ZV90cmFuc2FjdGlvbihzdHJ1 Y3QgY29ubmVjdGlvbiAqY29ubiwNCj4+Pj4gwqDCoMKgwqDCoCB9DQo+Pj4+IMKgwqDCoMKg wqAgd2hpbGUgKChpID0gbGlzdF90b3AoJnRyYW5zLT5hY2Nlc3NlZCwgc3RydWN0IGFjY2Vz c2VkX25vZGUsIGxpc3QpKSkgew0KPj4+PiAtwqDCoMKgwqDCoMKgwqAgc2V0X3RkYl9rZXko aS0+bm9kZSwgJmtleSk7DQo+Pj4NCj4+PiBJdCBpcyBub3QgY2xlYXIgdG8gbWUgd2h5IHlv dSBhcmUgbW92aW5nIGxhdGVyIHRoZSBjYWxsIHRvIHNldF90ZGJfa2V5KCkgaW4gDQo+Pj4g dGhpcyBwYXRjaC4NCj4+DQo+PiBJdCBpcyBuZWVkZWQgaW4gdGhlIGlmICgpIGNhc2Ugb25s eSBub3csIGJlZm9yZSB0aGUgcGF0Y2ggdGhlIGVsc2UgY2FzZQ0KPj4gbmVlZGVkIGl0LCB0 b28uDQo+IA0KPiBJZiB0aGF0J3MgdGhlIGNhc2UsIHRoZW4gY2FuIHdlIGFsc28gbW92ZSB0 aGUgZGVjbGFyYXRpb24gdG8gd2l0aGluIHRoZSBpZiBjYXNlPyANCj4gVGhpcyB3b3VsZCBt YWtlIGEgYml0IG1vcmUgb2J2aW91cyB0aGF0IHRoZSBvdGhlciBicmFuY2ggaXMgbm90IG1l YW50IHRvIHVzZSB0aGUgDQo+IHZhcmlhYmxlIGFueW1vcmUNCg0KTm8sIGtleSBpcyB1c2Vk IGluIHRoZSBwcmV2aW91cyBsb29wLCB0b28uDQoNCg0KSnVlcmdlbg0K --------------tD0FfGytrBtkRGySKRYjGhDt Content-Type: application/pgp-keys; name="OpenPGP_0xB0DE9DD628BF132F.asc" Content-Disposition: attachment; filename="OpenPGP_0xB0DE9DD628BF132F.asc" Content-Description: OpenPGP public key Content-Transfer-Encoding: quoted-printable -----BEGIN PGP PUBLIC KEY BLOCK----- xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjri oyspZKOBycWxw3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2 kaV2KL9650I1SJvedYm8Of8Zd621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i 1TXkH09XSSI8mEQ/ouNcMvIJNwQpd369y9bfIhWUiVXEK7MlRgUG6MvIj6Y3Am/B BLUVbDa4+gmzDC9ezlZkTZG2t14zWPvxXP3FAp2pkW0xqG7/377qptDmrk42GlSK N4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEBAAHNHEp1ZXJnZW4gR3Jvc3Mg PGpnQHBmdXBmLm5ldD7CwHkEEwECACMFAlOMcBYCGwMHCwkIBwMCAQYVCAIJCgsE FgIDAQIeAQIXgAAKCRCw3p3WKL8TL0KdB/93FcIZ3GCNwFU0u3EjNbNjmXBKDY4F UGNQH2lvWAUy+dnyThpwdtF/jQ6j9RwE8VP0+NXcYpGJDWlNb9/JmYqLiX2Q3Tye vpB0CA3dbBQp0OW0fgCetToGIQrg0MbD1C/sEOv8Mr4NAfbauXjZlvTj30H2jO0u +6WGM6nHwbh2l5O8ZiHkH32iaSTfN7Eu5RnNVUJbvoPHZ8SlM4KWm8rG+lIkGurq qu5gu8q8ZMKdsdGC4bBxdQKDKHEFExLJK/nRPFmAuGlId1E3fe10v5QL+qHI3EIP tyfE7i9Hz6rVwi7lWKgh7pe0ZvatAudZ+JNIlBKptb64FaiIOAWDCx1SzR9KdWVy Z2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+wsB5BBMBAgAjBQJTjHCvAhsDBwsJ CAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey/HmQf/RtI7kv5A2PS4 RF7HoZhPVPogNVbC4YA6lW7DrWf0teC0RR3MzXfy6pJ+7KLgkqMlrAbN/8Dvjoz7 8X+5vhH/rDLa9BuZQlhFmvcGtCF8eR0T1v0nC/nuAFVGy+67q2DH8As3KPu0344T BDpAvr2uYM4tSqxK4DURx5INz4ZZ0WNFHcqsfvlGJALDeE0LhITTd9jLzdDad1pQ SToCnLl6SBJZjDOX9QQcyUigZFtCXFst4dlsvddrxyqT1f17+2cFSdu7+ynLmXBK 7abQ3rwJY8SbRO2iRulogc5vr/RLMMlscDAiDkaFQWLoqHHOdfO9rURssHNN8WkM nQfvUewRz80hSnVlcmdlbiBHcm9zcyA8amdyb3NzQG5vdmVsbC5jb20+wsB5BBMB AgAjBQJTjHDXAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/ Ey8PUQf/ehmgCI9jB9hlgexLvgOtf7PJnFOXgMLdBQgBlVPO3/D9R8LtF9DBAFPN hlrsfIG/SqICoRCqUcJ96Pn3P7UUinFG/I0ECGF4EvTE1jnDkfJZr6jrbjgyoZHi w/4BNwSTL9rWASyLgqlA8u1mf+c2yUwcGhgkRAd1gOwungxcwzwqgljf0N51N5Jf VRHRtyfwq/ge+YEkDGcTU6Y0sPOuj4Dyfm8fJzdfHNQsWq3PnczLVELStJNdapwP OoE+lotufe3AM2vAEYJ9rTz3Cki4JFUsgLkHFqGZarrPGi1eyQcXeluldO3m91NK /1xMI3/+8jbO0tsn1tqSEUGIJi7ox80eSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1 c2UuZGU+wsB5BBMBAgAjBQJTjHDrAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgEC F4AACgkQsN6d1ii/Ey+LhQf9GL45eU5vOowA2u5N3g3OZUEBmDHVVbqMtzwlmNC4 k9Kx39r5s2vcFl4tXqW7g9/ViXYuiDXb0RfUpZiIUW89siKrkzmQ5dM7wRqzgJpJ wK8Bn2MIxAKArekWpiCKvBOB/Cc+3EXE78XdlxLyOi/NrmSGRIov0karw2RzMNOu 5D+jLRZQd1Sv27AR+IP3I8U4aqnhLpwhK7MEy9oCILlgZ1QZe49kpcumcZKORmzB TNh30FVKK1EvmV2xAKDoaEOgQB4iFQLhJCdP1I5aSgM5IVFdn7v5YgEYuJYx37Io N1EblHI//x/e2AaIHpzK5h88NEawQsaNRpNSrcfbFmAg987ATQRTjHAWAQgAyzH6 AOODMBjgfWE9VeCgsrwH3exNAU32gLq2xvjpWnHIs98ndPUDpnoxWQugJ6MpMncr 0xSwFmHEgnSEjK/PAjppgmyc57BwKII3sV4on+gDVFJR6Y8ZRwgnBC5mVM6JjQ5x Dk8WRXljExRfUX9pNhdE5eBOZJrDRoLUmmjDtKzWaDhIg/+1Hzz93X4fCQkNVbVF LELU9bMaLPBG/x5q4iYZ2k2ex6d47YE1ZFdMm6YBYMOljGkZKwYde5ldM9mo45mm we0icXKLkpEdIXKTZeKDO+Hdv1aqFuAcccTg9RXDQjmwhC3yEmrmcfl0+rPghO0I v3OOImwTEe4co3c1mwARAQABwsBfBBgBAgAJBQJTjHAWAhsMAAoJELDendYovxMv Q/gH/1ha96vm4P/L+bQpJwrZ/dneZcmEwTbe8YFsw2V/Buv6Z4Mysln3nQK5ZadD 534CF7TDVft7fC4tU4PONxF5D+/tvgkPfDAfF77zy2AH1vJzQ1fOU8lYFpZXTXIH b+559UqvIB8AdgR3SAJGHHt4RKA0F7f5ipYBBrC6cyXJyyoprT10EMvU8VGiwXvT yJz3fjoYsdFzpWPlJEBRMedCot60g5dmbdrZ5DWClAr0yau47zpWj3enf1tLWaqc suylWsviuGjKGw7KHQd3bxALOknAp4dN3QwBYCKuZ7AddY9yjynVaD5X7nF9nO5B jR/i1DG86lem3iBDXzXsZDn8R38=3D =3D2wuH -----END PGP PUBLIC KEY BLOCK----- --------------tD0FfGytrBtkRGySKRYjGhDt-- --------------thx0oEgb1E9J0NwxsfKfo3Sl-- --------------QFLV0TEnZ0zpiCjYmKyOPdce Content-Type: application/pgp-signature; name="OpenPGP_signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="OpenPGP_signature" -----BEGIN PGP SIGNATURE----- wsB5BAABCAAjFiEEhRJncuj2BJSl0Jf3sN6d1ii/Ey8FAmSdXAoFAwAAAAAACgkQsN6d1ii/Ey9P 3wf9FW+HiGT4SzmmrW67KSBISWGxJPfSpdbdAWButwWJO+cRozgqgsNCKwqr8oIbhbPj1EvwNdJd pV6ZhSYBwkh0ITUGlX5a40AEp8fCKiG1FZmxLNHii3EAMH4X2D/H5BCd9V9bj3BCCcdnRRAZNxMt cl9KH0rYu1lWWw9zwgfGD6rcteJrBrOQQ5hwWks0S54sKOCtPR0ZCXsZ7sLMG2HkpH81Jfa/IrQO muJZY1FBSpSSVgLQ4Mu9newTL9UOW+9i7vI0v9rRGt/3UIJyCqQKTFyMcw/N0HyZ5A/o6C2VRhGN oLpR0wO3qd6407KSk1frZIXZEjaq8MJQwEWCC6I7ag== =mIij -----END PGP SIGNATURE----- --------------QFLV0TEnZ0zpiCjYmKyOPdce-- From xen-devel-bounces@lists.xenproject.org Thu Jun 29 10:26:53 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 10:26:53 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556768.869521 (Exim 4.92) (envelope-from ) id 1qEorK-0006yX-EP; Thu, 29 Jun 2023 10:26:42 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556768.869521; Thu, 29 Jun 2023 10:26:42 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEorK-0006yQ-9Z; Thu, 29 Jun 2023 10:26:42 +0000 Received: by outflank-mailman (input) for mailman id 556768; Thu, 29 Jun 2023 10:26:41 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEorJ-0006yD-5h for xen-devel@lists.xenproject.org; Thu, 29 Jun 2023 10:26:41 +0000 Received: from esa6.hc3370-68.iphmx.com (esa6.hc3370-68.iphmx.com [216.71.155.175]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 6d1f6171-1667-11ee-8611-37d641c3527e; Thu, 29 Jun 2023 12:26:38 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 6d1f6171-1667-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1688034397; h=from:to:cc:subject:date:message-id:mime-version: content-transfer-encoding; bh=hWO24kZNM8OyTmbgatuxO2U8/usIdwhTY/CkiAkjcYU=; b=Wcnb0iMBScdZ1XSExiMTvpEUXzzJvVjuN6UGcnyYAudGN8zl5tePX3Os eSaVPqsZMsD/bdKYTZHXNM97zUInJnyvnpb4TWZqOpIsan+gIqpa6ik2U 75Rw+XM5QAd1vIjC07i/3SJFRZ9daeKowcpQCaovPmAuruZW2tXmGD6fQ o=; Authentication-Results: esa6.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none X-SBRS: 4.0 X-MesageID: 113899458 X-Ironport-Server: esa6.hc3370-68.iphmx.com X-Remote-IP: 162.221.156.123 X-Policy: $RELAYED IronPort-Data: A9a23:Pp6hMqIgo6rhg6fnFE+R0ZUlxSXFcZb7ZxGr2PjKsXjdYENShDUDn GIWWjuHO/aLYDf1et10PIm3804CucTdmoVmSAplqX01Q3x08seUXt7xwmUcnc+xBpaaEB84t ZV2hv3odp1coqr0/0/1WlTZhSAgk/rOHvykU7Ss1hlZHWdMUD0mhQ9oh9k3i4tphcnRKw6Ws Jb5rta31GWNglaYCUpKrfrawP9TlK6q4mhA4AZvPaojUGL2zBH5MrpOfcldEFOgKmVkNrbSb /rOyri/4lTY838FYj9yuu+mGqGiaue60Tmm0hK6aYD76vRxjnVaPpIAHOgdcS9qZwChxLid/ jnvWauYEm/FNoWU8AgUvoIx/ytWZcWq85efSZSzXFD6I+QrvBIAzt03ZHzaM7H09c5vX2sRq NkHawkKY0zS3+Wu7q/lRfRj05FLwMnDZOvzu1llxDDdS/0nXYrCU+PB4towMDUY354UW6yEP oxANGQpNU6bC/FMEg5/5JYWteGknHTgNRZfr0qYv/Ef6GnP1g1hlrPqNbI5f/TTHJ4FzxfE+ zKuE2LRBDYYLceZ2x++9nuMvMbTtD/XaI5NPejtnhJtqALKnTFCYPEMbnOrrP/8hkOgVtZ3L 00P5jFovaU07FasTNT2Q1u/unHsljw2VsdUEuY6wBqQ0aeS6AGcbkAbShZRZdpgs9U5LQHGz XfQwYmvX2Y29uTIFzTErOz8QS6O1TY9NTEIOnIhUkg85NS/8dk0ljzSENl+H/vg5jHqIg0c0 wxmvQBn2eVM3JFQifrrlbzUq2ny/8aUF2bZ8i2SBzv4tV0hOeZJcqTysTDmAeB8wJF1p7Vrl FwNgICg4e8HFvlhfwTdEbxWTNlFCxtoWQAwYGKD/LF7rVxBA1b5IehtDMhWfS+FyPosdz7ze 1P0sghM/pJVN3bCRfYpM93gVJtykvKxTYmNuhXogjxmOMMZmOivpnkGWKJt9zq1zBhEfV8XZ /93jvpA/V5FUP86nVJats8W0KMxxzBW+I8gbcmT8vhT6pLHPCT9Ye5cYDOzghURsPvsTPP9r 4wOaKNnCnx3DIXDX8Ug2dFJdgpQcyNnVPgbaaV/L4a+H+avI0l5Y9e5/F/rU9U590iJvo8kJ k2AZ3I= IronPort-HdrOrdr: A9a23:g4gufKy6UDWMHyAe6Ed5KrPwIL1zdoMgy1knxilNoRw8SKKlfq eV7ZMmPH7P+VIssR4b+exoVJPtfZq+z+8R3WByB8bAYOCOggLBR+sO0WKL+UyHJ8SUzI9gPM lbHJSWcOeAb2RHsQ== X-Talos-CUID: =?us-ascii?q?9a23=3AwHVsAmlhRtiVMNwiHc058gH1xnTXOWWDxiiNBlD?= =?us-ascii?q?7MGFkFOzNTke+5f1rjsU7zg=3D=3D?= X-Talos-MUID: 9a23:ndlXCwQfdHXyh7eARXTqozN7L8F6xp+qAWA3uIkvp+W0OXNZbmI= X-IronPort-AV: E=Sophos;i="6.01,168,1684814400"; d="scan'208";a="113899458" From: Andrew Cooper To: Xen-devel CC: Andrew Cooper , Jan Beulich , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Wei Liu Subject: [PATCH] xen/sysctl: Correct comments after renaming xen_sysctl_cpu_policy fields Date: Thu, 29 Jun 2023 11:26:00 +0100 Message-ID: <20230629102600.61262-1-andrew.cooper3@citrix.com> X-Mailer: git-send-email 2.30.2 MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit Fixes: 21e3ef57e040 ("x86: Rename {domctl,sysctl}.cpu_policy.{cpuid,msr}_policy fields") Signed-off-by: Andrew Cooper --- CC: Jan Beulich CC: Roger Pau Monné CC: Wei Liu --- xen/include/public/sysctl.h | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/xen/include/public/sysctl.h b/xen/include/public/sysctl.h index 9d06e92d0f6a..045f8617b81f 100644 --- a/xen/include/public/sysctl.h +++ b/xen/include/public/sysctl.h @@ -1047,12 +1047,12 @@ struct xen_sysctl_cpu_policy { #define XEN_SYSCTL_cpu_policy_pv_default 4 #define XEN_SYSCTL_cpu_policy_hvm_default 5 uint32_t index; /* IN: Which policy to query? */ - uint32_t nr_leaves; /* IN/OUT: Number of leaves in/written to - * 'cpuid_policy', or the maximum number of leaves - * if the guest handle is NULL. */ - uint32_t nr_msrs; /* IN/OUT: Number of MSRs in/written to - * 'msr_policy', or the maximum number of MSRs if - * the guest handle is NULL. */ + uint32_t nr_leaves; /* IN/OUT: Number of leaves in/written to 'leaves', + * or the maximum number of leaves if the guest + * handle is NULL. */ + uint32_t nr_msrs; /* IN/OUT: Number of MSRs in/written to 'msrs', or + * the maximum number of MSRs if the guest handle is + * NULL. */ uint32_t _rsvd; /* Must be zero. */ XEN_GUEST_HANDLE_64(xen_cpuid_leaf_t) leaves; /* OUT */ XEN_GUEST_HANDLE_64(xen_msr_entry_t) msrs; /* OUT */ -- 2.30.2 From xen-devel-bounces@lists.xenproject.org Thu Jun 29 10:27:42 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 10:27:42 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556775.869530 (Exim 4.92) (envelope-from ) id 1qEosH-0007am-Pt; Thu, 29 Jun 2023 10:27:41 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556775.869530; Thu, 29 Jun 2023 10:27:41 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEosH-0007af-NM; Thu, 29 Jun 2023 10:27:41 +0000 Received: by outflank-mailman (input) for mailman id 556775; Thu, 29 Jun 2023 10:27:40 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEosG-0007aD-BT for xen-devel@lists.xenproject.org; Thu, 29 Jun 2023 10:27:40 +0000 Received: from smtp-out1.suse.de (smtp-out1.suse.de [195.135.220.28]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 91b318a0-1667-11ee-b237-6b7b168915f2; Thu, 29 Jun 2023 12:27:37 +0200 (CEST) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by smtp-out1.suse.de (Postfix) with ESMTPS id 9092B2187E; Thu, 29 Jun 2023 10:27:37 +0000 (UTC) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id 6364D139FF; Thu, 29 Jun 2023 10:27:37 +0000 (UTC) Received: from dovecot-director2.suse.de ([192.168.254.65]) by imap2.suse-dmz.suse.de with ESMTPSA id Dgy6FplcnWQlHAAAMHmgww (envelope-from ); Thu, 29 Jun 2023 10:27:37 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 91b318a0-1667-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1; t=1688034457; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=My9BrPYbPnXCs5lCRE3H9zHAZ7fJY0RT0q3HjkmYtKs=; b=FV6AJArSC0fZmn9U3wCnph+PD0yreDzFgycsMgvXFyKs8zsnIKDWDPmzzlwAl1kqkoEalQ zjhYRamqdj4veNll5L8SsLde9isw+GdcZWSBNeoyZE9wq8a+bvpZEW4EeKa7pdQJcT/IXA 6hMpWUwO/FQf8by8ggh9JQqVmd9wAik= Message-ID: <22bdc750-6aab-7f8e-d1e8-2d9ecbedc894@suse.com> Date: Thu, 29 Jun 2023 12:27:36 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH 09/11] tools/xenstore: add hashtable_replace() function Content-Language: en-US To: Julien Grall , xen-devel@lists.xenproject.org Cc: Wei Liu , Anthony PERARD References: <20230530091333.7678-1-jgross@suse.com> <20230530091333.7678-10-jgross@suse.com> <95c4f593-a619-b6c3-6268-4db32c514cd5@xen.org> From: Juergen Gross In-Reply-To: <95c4f593-a619-b6c3-6268-4db32c514cd5@xen.org> Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="------------0le3EjrzohjZY0RVvrYeF054" This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --------------0le3EjrzohjZY0RVvrYeF054 Content-Type: multipart/mixed; boundary="------------eWGoX90jj7rGWhCBwPtC3NOE"; protected-headers="v1" From: Juergen Gross To: Julien Grall , xen-devel@lists.xenproject.org Cc: Wei Liu , Anthony PERARD Message-ID: <22bdc750-6aab-7f8e-d1e8-2d9ecbedc894@suse.com> Subject: Re: [PATCH 09/11] tools/xenstore: add hashtable_replace() function References: <20230530091333.7678-1-jgross@suse.com> <20230530091333.7678-10-jgross@suse.com> <95c4f593-a619-b6c3-6268-4db32c514cd5@xen.org> In-Reply-To: <95c4f593-a619-b6c3-6268-4db32c514cd5@xen.org> --------------eWGoX90jj7rGWhCBwPtC3NOE Content-Type: multipart/mixed; boundary="------------NJlVRUMydtd2cR1vy4fLF98v" --------------NJlVRUMydtd2cR1vy4fLF98v Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: base64 T24gMjAuMDYuMjMgMTQ6NDMsIEp1bGllbiBHcmFsbCB3cm90ZToNCj4gSGkgSnVlcmdlbiwN Cj4gDQo+IE9uIDMwLzA1LzIwMjMgMTA6MTMsIEp1ZXJnZW4gR3Jvc3Mgd3JvdGU6DQo+PiBG b3IgYW4gZWZmZWN0aXZlIHdheSB0byByZXBsYWNlIGEgaGFzaHRhYmxlIGVudHJ5IGFkZCBh IG5ldyBmdW5jdGlvbg0KPj4gaGFzaHRhYmxlX3JlcGxhY2UoKS4NCj4+DQo+PiBXaGlsZSBh dCBpdCBsZXQgaGFzaHRhYmxlX2FkZCgpIGZhaWwgaWYgYW4gZW50cnkgd2l0aCB0aGUgc3Bl Y2lmaWVkDQo+PiBrZXkgZG9lcyBhbHJlYWR5IGV4aXN0Lg0KPiANCj4gUGxlYXNlIGV4cGxh aW4gd2h5IHlvdSB3YW50IHRvIGRvIGl0LiBJIGFsc28gdGhpbmsgdGhpcyBjaGFuZ2Ugc2hv dWxkIGJlIGluIGl0cyANCj4gb3duIHBhdGNoLg0KDQpPa2F5IHRvIGJvdGguDQoNCj4gDQo+ Pg0KPj4gVGhpcyBpcyBpbiBwcmVwYXJhdGlvbiB0byByZXBsYWNlIFREQiB3aXRoIGEgbW9y ZSBzaW1wbGUgZGF0YSBzdG9yYWdlLg0KPj4NCj4+IFNpZ25lZC1vZmYtYnk6IEp1ZXJnZW4g R3Jvc3MgPGpncm9zc0BzdXNlLmNvbT4NCj4+IC0tLQ0KPj4gwqAgdG9vbHMveGVuc3RvcmUv aGFzaHRhYmxlLmMgfCA1MiArKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0t LQ0KPj4gwqAgdG9vbHMveGVuc3RvcmUvaGFzaHRhYmxlLmggfCAxNiArKysrKysrKysrKysN Cj4+IMKgIDIgZmlsZXMgY2hhbmdlZCwgNTggaW5zZXJ0aW9ucygrKSwgMTAgZGVsZXRpb25z KC0pDQo+Pg0KPj4gZGlmZiAtLWdpdCBhL3Rvb2xzL3hlbnN0b3JlL2hhc2h0YWJsZS5jIGIv dG9vbHMveGVuc3RvcmUvaGFzaHRhYmxlLmMNCj4+IGluZGV4IDlkYWRkZDk3ODIuLmYzNThi ZWM1YWUgMTAwNjQ0DQo+PiAtLS0gYS90b29scy94ZW5zdG9yZS9oYXNodGFibGUuYw0KPj4g KysrIGIvdG9vbHMveGVuc3RvcmUvaGFzaHRhYmxlLmMNCj4+IEBAIC0xNDEsMTEgKzE0MSwz MiBAQCBzdGF0aWMgaW50IGhhc2h0YWJsZV9leHBhbmQoc3RydWN0IGhhc2h0YWJsZSAqaCkN Cj4+IMKgwqDCoMKgwqAgcmV0dXJuIDA7DQo+PiDCoCB9DQo+PiArc3RhdGljIHN0cnVjdCBl bnRyeSAqaGFzaHRhYmxlX3NlYXJjaF9lbnRyeShjb25zdCBzdHJ1Y3QgaGFzaHRhYmxlICpo LA0KPj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAg Y29uc3Qgdm9pZCAqaykNCj4+ICt7DQo+PiArwqDCoMKgIHN0cnVjdCBlbnRyeSAqZTsNCj4+ ICvCoMKgwqAgdW5zaWduZWQgaW50IGhhc2h2YWx1ZSwgaW5kZXg7DQo+PiArDQo+PiArwqDC oMKgIGhhc2h2YWx1ZSA9IGhhc2goaCwgayk7DQo+PiArwqDCoMKgIGluZGV4ID0gaW5kZXhG b3IoaC0+dGFibGVsZW5ndGgsaGFzaHZhbHVlKTsNCj4gDQo+IE1pc3Npbmcgc3BhY2UgYWZ0 ZXIgJywnLg0KDQpUaGFua3MgZm9yIG5vdGljaW5nLg0KDQo+IA0KPj4gK8KgwqDCoCBlID0g aC0+dGFibGVbaW5kZXhdOw0KPj4gK8KgwqDCoCB3aGlsZSAoTlVMTCAhPSBlKQ0KPj4gK8Kg wqDCoCB7DQo+IA0KPiBXaGlsZSB5b3UgYXJlIG1vdmluZyB0aGUgY29kZS4gSSB0aGluayB5 b3UgY2FuIHJlZHVjZSB0aGUgY29kZSBzaXplIHdpdGg6DQo+IA0KPiBmb3IgKCBlID0gaC0+ dGFibGVbaW5kZXhdOyBlICE9IE5VTEw7IGUgPSBlLT5uZXh0ICkNCj4gIMKgwqAgaWYgKC4u Li4pDQoNCldpbGwgY2hhbmdlIGl0Lg0KDQo+IA0KPj4gK8KgwqDCoMKgwqDCoMKgIC8qIENo ZWNrIGhhc2ggdmFsdWUgdG8gc2hvcnQgY2lyY3VpdCBoZWF2aWVyIGNvbXBhcmlzb24gKi8N Cj4+ICvCoMKgwqDCoMKgwqDCoCBpZiAoKGhhc2h2YWx1ZSA9PSBlLT5oKSAmJiAoaC0+ZXFm bihrLCBlLT5rKSkpIHJldHVybiBlOw0KPj4gK8KgwqDCoMKgwqDCoMKgIGUgPSBlLT5uZXh0 Ow0KPj4gK8KgwqDCoCB9DQo+PiArwqDCoMKgIHJldHVybiBOVUxMOw0KPj4gK30NCj4+ICsN Cj4+IMKgIGludCBoYXNodGFibGVfYWRkKHN0cnVjdCBoYXNodGFibGUgKmgsIGNvbnN0IHZv aWQgKmssIHZvaWQgKnYpDQo+PiDCoCB7DQo+PiAtwqDCoMKgIC8qIFRoaXMgbWV0aG9kIGFs bG93cyBkdXBsaWNhdGUga2V5cyAtIGJ1dCB0aGV5IHNob3VsZG4ndCBiZSB1c2VkICovDQo+ PiDCoMKgwqDCoMKgIHVuc2lnbmVkIGludCBpbmRleDsNCj4+IMKgwqDCoMKgwqAgc3RydWN0 IGVudHJ5ICplOw0KPj4gKw0KPj4gK8KgwqDCoCBpZiAoaGFzaHRhYmxlX3NlYXJjaF9lbnRy eShoLCBrKSkNCj4+ICvCoMKgwqDCoMKgwqDCoCByZXR1cm4gRUVYSVNUOw0KPj4gKw0KPj4g wqDCoMKgwqDCoCBpZiAoKysoaC0+ZW50cnljb3VudCkgPiBoLT5sb2FkbGltaXQpDQo+PiDC oMKgwqDCoMKgIHsNCj4+IMKgwqDCoMKgwqDCoMKgwqDCoCAvKiBJZ25vcmUgdGhlIHJldHVy biB2YWx1ZS4gSWYgZXhwYW5kIGZhaWxzLCB3ZSBzaG91bGQNCj4+IEBAIC0xNzYsMTcgKzE5 NywyOCBAQCBpbnQgaGFzaHRhYmxlX2FkZChzdHJ1Y3QgaGFzaHRhYmxlICpoLCBjb25zdCB2 b2lkICprLCANCj4+IHZvaWQgKnYpDQo+PiDCoCB2b2lkICpoYXNodGFibGVfc2VhcmNoKGNv bnN0IHN0cnVjdCBoYXNodGFibGUgKmgsIGNvbnN0IHZvaWQgKmspDQo+PiDCoCB7DQo+PiDC oMKgwqDCoMKgIHN0cnVjdCBlbnRyeSAqZTsNCj4+IC3CoMKgwqAgdW5zaWduZWQgaW50IGhh c2h2YWx1ZSwgaW5kZXg7DQo+PiAtwqDCoMKgIGhhc2h2YWx1ZSA9IGhhc2goaCxrKTsNCj4+ IC3CoMKgwqAgaW5kZXggPSBpbmRleEZvcihoLT50YWJsZWxlbmd0aCxoYXNodmFsdWUpOw0K Pj4gLcKgwqDCoCBlID0gaC0+dGFibGVbaW5kZXhdOw0KPj4gLcKgwqDCoCB3aGlsZSAoTlVM TCAhPSBlKQ0KPj4gKw0KPj4gK8KgwqDCoCBlID0gaGFzaHRhYmxlX3NlYXJjaF9lbnRyeSho LCBrKTsNCj4+ICvCoMKgwqAgcmV0dXJuIGUgPyBlLT52IDogTlVMTDsNCj4+ICt9DQo+PiAr DQo+PiAraW50IGhhc2h0YWJsZV9yZXBsYWNlKHN0cnVjdCBoYXNodGFibGUgKmgsIGNvbnN0 IHZvaWQgKmssIHZvaWQgKnYpDQo+PiArew0KPj4gK8KgwqDCoCBzdHJ1Y3QgZW50cnkgKmU7 DQo+PiArDQo+PiArwqDCoMKgIGUgPSBoYXNodGFibGVfc2VhcmNoX2VudHJ5KGgsIGspOw0K Pj4gK8KgwqDCoCBpZiAoIWUpDQo+PiArwqDCoMKgwqDCoMKgwqAgcmV0dXJuIEVOT0VOVDsN Cj4+ICsNCj4+ICvCoMKgwqAgaWYgKGgtPmZsYWdzICYgSEFTSFRBQkxFX0ZSRUVfVkFMVUUp DQo+PiDCoMKgwqDCoMKgIHsNCj4+IC3CoMKgwqDCoMKgwqDCoCAvKiBDaGVjayBoYXNoIHZh bHVlIHRvIHNob3J0IGNpcmN1aXQgaGVhdmllciBjb21wYXJpc29uICovDQo+PiAtwqDCoMKg wqDCoMKgwqAgaWYgKChoYXNodmFsdWUgPT0gZS0+aCkgJiYgKGgtPmVxZm4oaywgZS0+aykp KSByZXR1cm4gZS0+djsNCj4+IC3CoMKgwqDCoMKgwqDCoCBlID0gZS0+bmV4dDsNCj4+ICvC oMKgwqDCoMKgwqDCoCB0YWxsb2NfZnJlZShlLT52KTsNCj4+ICvCoMKgwqDCoMKgwqDCoCB0 YWxsb2Nfc3RlYWwoZSwgdik7DQo+PiDCoMKgwqDCoMKgIH0NCj4+IC3CoMKgwqAgcmV0dXJu IE5VTEw7DQo+PiArDQo+PiArwqDCoMKgIGUtPnYgPSB2Ow0KPj4gKw0KPiANCj4gQ29kaW5n IHN0eWxlOiBBYm92ZSB5b3UgZG9uJ3QgYWRkIGEgbmV3bGluZSBiZWZvcmUgcmV0dXJuIGJ1 dCBoZXJlIHlvdSBkby4gSSANCj4gZG9uJ3QgcGFydGljdWxhcmx5IGNhcmUgd2hpY2ggb25l IHlvdSB3YW50IHRvIHVzZSBpbiB4ZW5zdG9yZWQuIEJ1dCBjYW4geW91IGF0IA0KPiBsZWFz dCBiZSBjb25zaXN0ZW50Pw0KDQpPa2F5Lg0KDQo+IA0KPj4gK8KgwqDCoCByZXR1cm4gMDsN Cg0KDQpKdWVyZ2VuDQoNCg== --------------NJlVRUMydtd2cR1vy4fLF98v Content-Type: application/pgp-keys; name="OpenPGP_0xB0DE9DD628BF132F.asc" Content-Disposition: attachment; filename="OpenPGP_0xB0DE9DD628BF132F.asc" Content-Description: OpenPGP public key Content-Transfer-Encoding: quoted-printable -----BEGIN PGP PUBLIC KEY BLOCK----- xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjri oyspZKOBycWxw3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2 kaV2KL9650I1SJvedYm8Of8Zd621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i 1TXkH09XSSI8mEQ/ouNcMvIJNwQpd369y9bfIhWUiVXEK7MlRgUG6MvIj6Y3Am/B BLUVbDa4+gmzDC9ezlZkTZG2t14zWPvxXP3FAp2pkW0xqG7/377qptDmrk42GlSK N4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEBAAHNHEp1ZXJnZW4gR3Jvc3Mg PGpnQHBmdXBmLm5ldD7CwHkEEwECACMFAlOMcBYCGwMHCwkIBwMCAQYVCAIJCgsE FgIDAQIeAQIXgAAKCRCw3p3WKL8TL0KdB/93FcIZ3GCNwFU0u3EjNbNjmXBKDY4F UGNQH2lvWAUy+dnyThpwdtF/jQ6j9RwE8VP0+NXcYpGJDWlNb9/JmYqLiX2Q3Tye vpB0CA3dbBQp0OW0fgCetToGIQrg0MbD1C/sEOv8Mr4NAfbauXjZlvTj30H2jO0u +6WGM6nHwbh2l5O8ZiHkH32iaSTfN7Eu5RnNVUJbvoPHZ8SlM4KWm8rG+lIkGurq qu5gu8q8ZMKdsdGC4bBxdQKDKHEFExLJK/nRPFmAuGlId1E3fe10v5QL+qHI3EIP tyfE7i9Hz6rVwi7lWKgh7pe0ZvatAudZ+JNIlBKptb64FaiIOAWDCx1SzR9KdWVy Z2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+wsB5BBMBAgAjBQJTjHCvAhsDBwsJ CAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey/HmQf/RtI7kv5A2PS4 RF7HoZhPVPogNVbC4YA6lW7DrWf0teC0RR3MzXfy6pJ+7KLgkqMlrAbN/8Dvjoz7 8X+5vhH/rDLa9BuZQlhFmvcGtCF8eR0T1v0nC/nuAFVGy+67q2DH8As3KPu0344T BDpAvr2uYM4tSqxK4DURx5INz4ZZ0WNFHcqsfvlGJALDeE0LhITTd9jLzdDad1pQ SToCnLl6SBJZjDOX9QQcyUigZFtCXFst4dlsvddrxyqT1f17+2cFSdu7+ynLmXBK 7abQ3rwJY8SbRO2iRulogc5vr/RLMMlscDAiDkaFQWLoqHHOdfO9rURssHNN8WkM nQfvUewRz80hSnVlcmdlbiBHcm9zcyA8amdyb3NzQG5vdmVsbC5jb20+wsB5BBMB AgAjBQJTjHDXAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/ Ey8PUQf/ehmgCI9jB9hlgexLvgOtf7PJnFOXgMLdBQgBlVPO3/D9R8LtF9DBAFPN hlrsfIG/SqICoRCqUcJ96Pn3P7UUinFG/I0ECGF4EvTE1jnDkfJZr6jrbjgyoZHi w/4BNwSTL9rWASyLgqlA8u1mf+c2yUwcGhgkRAd1gOwungxcwzwqgljf0N51N5Jf VRHRtyfwq/ge+YEkDGcTU6Y0sPOuj4Dyfm8fJzdfHNQsWq3PnczLVELStJNdapwP OoE+lotufe3AM2vAEYJ9rTz3Cki4JFUsgLkHFqGZarrPGi1eyQcXeluldO3m91NK /1xMI3/+8jbO0tsn1tqSEUGIJi7ox80eSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1 c2UuZGU+wsB5BBMBAgAjBQJTjHDrAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgEC F4AACgkQsN6d1ii/Ey+LhQf9GL45eU5vOowA2u5N3g3OZUEBmDHVVbqMtzwlmNC4 k9Kx39r5s2vcFl4tXqW7g9/ViXYuiDXb0RfUpZiIUW89siKrkzmQ5dM7wRqzgJpJ wK8Bn2MIxAKArekWpiCKvBOB/Cc+3EXE78XdlxLyOi/NrmSGRIov0karw2RzMNOu 5D+jLRZQd1Sv27AR+IP3I8U4aqnhLpwhK7MEy9oCILlgZ1QZe49kpcumcZKORmzB TNh30FVKK1EvmV2xAKDoaEOgQB4iFQLhJCdP1I5aSgM5IVFdn7v5YgEYuJYx37Io N1EblHI//x/e2AaIHpzK5h88NEawQsaNRpNSrcfbFmAg987ATQRTjHAWAQgAyzH6 AOODMBjgfWE9VeCgsrwH3exNAU32gLq2xvjpWnHIs98ndPUDpnoxWQugJ6MpMncr 0xSwFmHEgnSEjK/PAjppgmyc57BwKII3sV4on+gDVFJR6Y8ZRwgnBC5mVM6JjQ5x Dk8WRXljExRfUX9pNhdE5eBOZJrDRoLUmmjDtKzWaDhIg/+1Hzz93X4fCQkNVbVF LELU9bMaLPBG/x5q4iYZ2k2ex6d47YE1ZFdMm6YBYMOljGkZKwYde5ldM9mo45mm we0icXKLkpEdIXKTZeKDO+Hdv1aqFuAcccTg9RXDQjmwhC3yEmrmcfl0+rPghO0I v3OOImwTEe4co3c1mwARAQABwsBfBBgBAgAJBQJTjHAWAhsMAAoJELDendYovxMv Q/gH/1ha96vm4P/L+bQpJwrZ/dneZcmEwTbe8YFsw2V/Buv6Z4Mysln3nQK5ZadD 534CF7TDVft7fC4tU4PONxF5D+/tvgkPfDAfF77zy2AH1vJzQ1fOU8lYFpZXTXIH b+559UqvIB8AdgR3SAJGHHt4RKA0F7f5ipYBBrC6cyXJyyoprT10EMvU8VGiwXvT yJz3fjoYsdFzpWPlJEBRMedCot60g5dmbdrZ5DWClAr0yau47zpWj3enf1tLWaqc suylWsviuGjKGw7KHQd3bxALOknAp4dN3QwBYCKuZ7AddY9yjynVaD5X7nF9nO5B jR/i1DG86lem3iBDXzXsZDn8R38=3D =3D2wuH -----END PGP PUBLIC KEY BLOCK----- --------------NJlVRUMydtd2cR1vy4fLF98v-- --------------eWGoX90jj7rGWhCBwPtC3NOE-- --------------0le3EjrzohjZY0RVvrYeF054 Content-Type: application/pgp-signature; name="OpenPGP_signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="OpenPGP_signature" -----BEGIN PGP SIGNATURE----- wsB5BAABCAAjFiEEhRJncuj2BJSl0Jf3sN6d1ii/Ey8FAmSdXJgFAwAAAAAACgkQsN6d1ii/Ey/1 TQf+JSfHB1wSRco2FfiKR28qd8vjGTqOLOb9xGQaj4GmGOVY9xPAy4+3h9dJQwyxI+TjInexjN3A nWL22x0vM2JKALYBmhN5NjYYgSSNqegSl8oCO1jN4b/ohX69o0sNUaEi/IQjah9/eCjL7A3V0KfC BES9MZb9nw8S5SMRXKVs0rh+BZM5t28+/Sq5bYNDzmqkm2x0jZHxquU6GSX60Yq4ow+JVdyANqlY skMxXBMzHEKTEvrE0VHx6S+qSxu5RdByFaeGhEJtC5XDMyapusBpHBgwCM68ClSnuXFX11Q0mle1 2/ixY4DaML9wgRHG1e9BITRjtF/USSc1HOqwcSTz+w== =85TM -----END PGP SIGNATURE----- --------------0le3EjrzohjZY0RVvrYeF054-- From xen-devel-bounces@lists.xenproject.org Thu Jun 29 10:34:16 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 10:34:16 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556782.869541 (Exim 4.92) (envelope-from ) id 1qEoyT-0000fE-EV; Thu, 29 Jun 2023 10:34:05 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556782.869541; Thu, 29 Jun 2023 10:34:05 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEoyT-0000f7-BM; Thu, 29 Jun 2023 10:34:05 +0000 Received: by outflank-mailman (input) for mailman id 556782; Thu, 29 Jun 2023 10:34:04 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEoyS-0000ez-Qb for xen-devel@lists.xenproject.org; Thu, 29 Jun 2023 10:34:04 +0000 Received: from esa6.hc3370-68.iphmx.com (esa6.hc3370-68.iphmx.com [216.71.155.175]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 75205911-1668-11ee-8611-37d641c3527e; Thu, 29 Jun 2023 12:34:00 +0200 (CEST) Received: from mail-dm6nam12lp2175.outbound.protection.outlook.com (HELO NAM12-DM6-obe.outbound.protection.outlook.com) ([104.47.59.175]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 29 Jun 2023 06:33:58 -0400 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) by PH0PR03MB6915.namprd03.prod.outlook.com (2603:10b6:510:169::5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.23; Thu, 29 Jun 2023 10:33:56 +0000 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::1c83:1877:a68b:8902]) by SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::1c83:1877:a68b:8902%7]) with mapi id 15.20.6521.024; Thu, 29 Jun 2023 10:33:56 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 75205911-1668-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1688034840; h=date:from:to:cc:subject:message-id:references: content-transfer-encoding:in-reply-to:mime-version; bh=p0oozo+bKpMVka2vrFX3liz7dkZ60f1NKn5cIuzKNGU=; b=cCHWIo/zTAh23rn75UtoWC50qToGrYgtmu96uyt6+hlAGaW06Xk567OG /U9E279pUvGxSIQWd+D3pprklQvoj6m5YaYPSUUFo+dm3fxiSuMtdg3PP VvZ/yFiHroS2+uZsM/A04iBrURfpYW5IgiSvo5Ys09eY4AKzAQQwLbb22 o=; X-IronPort-RemoteIP: 104.47.59.175 X-IronPort-MID: 113900092 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:7i9SxKAVe3WvphVW/w/iw5YqxClBgxIJ4kV8jS/XYbTApDkm0zMFy 2dMWD2OOvaKYmvyctx+b9vkpktXv8CEm4UyQQY4rX1jcSlH+JHPbTi7wuUcHAvJd5GeExg3h yk6QoOdRCzhZiaE/n9BCpC48T8nk/nOHuGmYAL9EngZbRd+Tys8gg5Ulec8g4p56fC0GArIs t7pyyHlEAbNNwVcbCRMsspvlDs15K6p4G1C7wRkDRx2lAS2e0c9Xcp3yZ6ZdxMUcqEMdsamS uDKyq2O/2+x13/B3fv8z94X2mVTKlLjFVDmZkh+AsBOsTAbzsAG6Y4pNeJ0VKtio27hc+ada jl6ncfYpQ8BZsUgkQmGOvVSO3kW0aZuoNcrLZUj2CA6IoKvn3bEmp1T4E8K0YIw+cxzIj0N6 aQkJjkrbC6+juWw57irY7w57igjBJGD0II3nFhFlGucIdN4BJfJTuPN+MNS2yo2ioZWB/HCa sEFaD1pKhPdfxlIPVRRA5U79AuqriCnL3sE9xTI9OxuvDW7IA9ZidABNPLPfdOHX4NNl1uwr WPa5WXpRBodMbRzzBLcqyn93reXzHmTtIQ6TJ/m2sdMx3ypwmEsIwUMRUvkgeCpoxvrMz5YA wlOksY0loAi+UruQtTjUhmQpH+fogVaS9dWC/c96gyG1uzT+QnxLkouQyNFadcmnNQrXjFs3 ViM9/v2ARR/vbvTTmiSnop4thu3MCkRaGMHOykNSFJf58G5+d5uyBXSUtxkDai5yMXvHi39y CyLqy54gKgPickM1OOw+lWvby+Qm6UlhzUdvm3/Nl9JJCsgDGJ5T+REMWTm0Ms= IronPort-HdrOrdr: A9a23:NZ99karwVfTYFjp4kzg5XpkaV5oQeYIsimQD101hICG9E/bo7v xG+c5x6faaskd3ZJhNo6HiBED4exPhHP1OkO8s1NWZMTUO0VHAROtfBO3Zsl/d8kbFh4pgPM lbAs1D4erLYWSSXPya3OHoe+xP/DHYmJrGudvj X-Talos-CUID: 9a23:FAI6XmBtWNOLFkb6EypN8G1IWdx9TnPU6nXuHka/D0FjWJTAHA== X-Talos-MUID: 9a23:ilQU8QlMsUbAYdCQU0L/dno6FplE2oLpKXoJnKoto9OUJXNQIie02WE= X-IronPort-AV: E=Sophos;i="6.01,168,1684814400"; d="scan'208";a="113900092" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=kTecrm/VukdmN3aLlZGimrN2A9eD2QRhTc3/aJDSk5tWBve3LzauY7ZBVuXwHhxvwix0bd6KkeX9mKiRWoEdlFrCwwJKHpxYpam6rbF0h1iizmefN/kG0rnaM5dfzmW9B7xMvMOgoIEvPr5eofoRhf9PuH3HHvpLb5eYVlCt2VsS86VCQaqlGgH1MaXsAE7CwBhSZoTLt9+rPcihW+2noFMBV2cy0DPeppZ+e/Dq7Ej+mn9g80zFWkGy1fZS0GTR2kpOP+n8SdrKTxRbIsntniihEZotnomj0WPdkkTllfLG6LHUDo+tbaj1JCTdfLliRNo+1ys3ccBntlzJ5O2ERw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=p0oozo+bKpMVka2vrFX3liz7dkZ60f1NKn5cIuzKNGU=; b=Xf7BIxpOZWAflt/KTaJ0B8HcYgh4tFfPQY7yNCp1iAu9CwY0lTWZA31KN7dVZ54Eizt7TxPmbJn8jYrGIaFSYvrEFGgaacYUcfSYMtQTL02HXj6rATyKNNIiYM+qP5GME4Lh1lRzTTq5AQGHl2HAxk7o1G4BH2iCR0GQJWqVbfq64rf2bEQkRl8hhKPpEGzpFC2Wwbrwjpb5KgrccgHofZOSK/oa6nTkTeE/QWa+VfRCYipiYKZwWu31TE2/Gc9gnHYrjMGwtStkoygbJnl9JJw6Du+Wqs2CC1mIw4fF9GzhgEGRAn+enpPXRh6iwu8qb9CAG13RCH91tCqfCnwHLA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=p0oozo+bKpMVka2vrFX3liz7dkZ60f1NKn5cIuzKNGU=; b=kkWnyPI8PYTGRkaI5RFZPWWPjoFa9NESGxo5CG00rTLlyq2vEXgPldZzLiOrIaoyBir3QIwfMoQZxng/hUMsJBOsilX0P1ft1+EaSMJiNF92L2TMSOUuzGe2Ecl6/gTZKBWTYKg6w5Nkw7N3jGPKOuZIUeHNfolSoU645ryFUow= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Date: Thu, 29 Jun 2023 12:33:49 +0200 From: Roger Pau =?utf-8?B?TW9ubsOp?= To: Andrew Cooper Cc: Xen-devel , Jan Beulich , Wei Liu Subject: Re: [PATCH] xen/sysctl: Correct comments after renaming xen_sysctl_cpu_policy fields Message-ID: References: <20230629102600.61262-1-andrew.cooper3@citrix.com> Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <20230629102600.61262-1-andrew.cooper3@citrix.com> X-ClientProxiedBy: LO4P265CA0036.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:2ae::12) To SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|PH0PR03MB6915:EE_ X-MS-Office365-Filtering-Correlation-Id: 4dfebf2c-3ad8-4896-575f-08db788c5737 X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 6jJU20LQBCafjdd044z5QCE19QePHOL+F7UYNCNUwjpQWgoNIjqM6StWTvd7aYB0cJv5+E8x4doFqGzLMCfw53+5INJ0OknenpcnLTzbfU1+MRX2tkUY3smDPRPgP8ypxbygPIPtuWuxCTknvF0+lY0Sx8g2ohWhCaaKa7QO/e87OqD0Z00kxelz8CZT+oP3/QKAR/BJ8fTGohhdk3sLOyFI5XeYnK4X6Kh4oYOtXhzeO/L0SzcVfMoU4oxMkjnz4C71UGl7pENp9qeY7mepI+FWIuiXzGCX/+d8GZrMTWdHjSSMDyOjEiAO85pEWHQaG5ELe9Tt0VoeZUHsRBHYQNO/c7XWTVTJZo3ON4uSdZXeyudZHsFoECpRFtObGtbZpnXkSBk8S3yyjmUHQl9td+qXUnDMkPkJeAG639JWadJUtIZYMdN/40HnNvRhxHJ8DW74/uuIQJO1zux7w4n3zb3cuqOkuDoksLDbkh4kbRjPt32MBBxOO8ibx8K1ROKupglX/gaLZ9aeqOZyoEscnTkzTvHJVPedlCBjO65Z/TvDFSs+gakPLr1LcaFBstw4 X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(396003)(346002)(136003)(366004)(39860400002)(376002)(451199021)(26005)(9686003)(4326008)(66476007)(66556008)(8936002)(6506007)(478600001)(54906003)(186003)(2906002)(6666004)(6486002)(6862004)(558084003)(85182001)(66946007)(82960400001)(5660300002)(38100700002)(86362001)(8676002)(6636002)(316002)(41300700001)(6512007);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?UnZxYXM4ZUFSWk91OEtpTlVCaDY0dFl3NmhQV2tHL2VhUjFwUExuY2hhNXVL?= =?utf-8?B?bmh3YkI4blV6emJURlViZUJ2TmRmaDR3VW5mTkJSQlZ4UlpqSnAxcGNsWGoz?= =?utf-8?B?YklWcHhzK0JYWUNZRUZzV0w1Q01GRmZrWEFUTmRPaUNQZ2RORlE5MW16NmFI?= =?utf-8?B?dnFkZk9kcTBsaG1RMnNkSUk5bHNHMjJHclZSb2ZzeC9XYm04MXRMenV5QXdV?= =?utf-8?B?VHg0bStkSmZwdVpvYUk5L2VTdUFWUHhjRERnSmd0blJqaUNiMXBBZWRmTjdz?= =?utf-8?B?cE5rN0lNZ1RHZUhqUmRwNFZ1NTBRSVdQblBSQU5EVTQrY0lpUXNRcUNFeFEr?= =?utf-8?B?NzVjUEl4cVZFa3hlMnBsU0hrV0Q5bzhXRTUzMkZzUzljYkI0VDVQY0RDZ1By?= =?utf-8?B?d2Nvck5maXpmMkk1dXN2MjFWRkRjOWhpak81b3VFcjFtUk84OTk0Z2x4SjdU?= =?utf-8?B?WDhNendiTUxuTUdCVDNKUDdFVEwyZStaTjhyeUllZk03dGEzWjJvcjdYclNX?= =?utf-8?B?L0FWb2xSOVJCY2NJSkQyOEczNGtsTU9tdk1XdksyZURqakM3TitUaXg4SVps?= =?utf-8?B?QlhkTTFDZDRaRU9aQXVpLzdQY1YvYm5PdEowQVF3bGpQY0lqay9OQmo2dkc3?= =?utf-8?B?bFlTa2pJVmpjRXZvOUxrcHFURk1SejNwNmF4UEMrRnpYekl0MTFiVHlsWk9z?= =?utf-8?B?bGo4TDdJSDk0TlV3WnpnNFU2d0ZheStRZlBHRVZuZkdNN1FGODl4NWx4QXVE?= =?utf-8?B?emc4aS9mald0MmxwMXp5VHV5bXZJUUM3QUNjOEJEeTJ6RDBkL2VvZnE2dWxv?= =?utf-8?B?emJtYWt2MXZpZWM0akJaUmg4OUJCdDVkOUswd3E0YzQxcVJGcFR0eXVTTGtn?= =?utf-8?B?c0h5cThob0pQUjdYem5EOWNVajFvMzM1NlBDcEhLNlBVNUM2aWRiVmJIR2wy?= =?utf-8?B?WXd4ZVpOWFlrc2l4b2Y2alFBcGo3QjJRM0pNMXNLdzNKQVF6VXlIR1hvVlRG?= =?utf-8?B?Ui9VK0UwYWVGVFFpa0w0WTk1eTduRGR6TVVOTm9JcktNV1NTeFJ4SVVIZk1H?= =?utf-8?B?bHZIeXU1UHJlOUVJckNQU0hZQS91c2ZJaUlOWjYwbk1RZFFwa1g3QThDRkRG?= =?utf-8?B?MDFOK3dYbmFrV29HRHpJTE5hMFdKNDR5MHlVRTVnbFJXcVRZcFFEYTQxYS9Y?= =?utf-8?B?YXBiUmhsaS9sbzc5NFZpbFk1eFgzMDRlOGw4L1ZKcnpsWGtuaG5OOS9oTlVH?= =?utf-8?B?cm9YQkIxeDcwNHpVZ1EwaVQySG5MdnVOcXUyQ1VBZmx5NVNrRGgzWFFqaGox?= =?utf-8?B?Rm4xRElCOXY1MWN2bTVvZUlVUXhjVFQxSENFTy9uZlVaZlFrRVJBcGZ5SCtW?= =?utf-8?B?dzUvYkN3SDlXM2xrVEc4L3FTWm9YOUU0ZmxVWTNFZzJ1anI5bnRmcmJFb1JF?= =?utf-8?B?MktocFEwZ0xVZWF4a1BzTXJ0cXlibXNNYWdrcGpXSk4wYUJYcllFekQ5UCti?= =?utf-8?B?QVpjb0IzKzdEN0pzOTlvUFRtZ0RLUXk3U2wybG5DSWpJSGIvSEtLQzZGeTAy?= =?utf-8?B?c1lGWThTMXdFWFB0enlITTJ0TGJqb1orVXVwZnZycEJHY0xJYU9iOWlCcEp6?= =?utf-8?B?YkRCNmhqeUN4Uzk2emlHdjdxS0pEYWkwK1dyT0hQWUo0c2pXYjdWNXdsOExt?= =?utf-8?B?UHVQTnU4YjcxcVc0d3dmSHV0R1lBOUN0NWRNVitMU0dWZzdzby9JWDVkN3Vq?= =?utf-8?B?YmRYTTVHWVErUEpWcEFjODBha3RJSjVKM1liOE1HbVNSMEdrbnRIMzRjUlVB?= =?utf-8?B?eGc4a3RJTTZTSDF4MjVDbTMvWXc5SG14b3VRckE1dEhLUW44M080cUMwV2Jz?= =?utf-8?B?QitxcmpiK2c0dUNlanprczEzcUNadVo2bVVtK3JvTVVxaWEyNldZcjgxY29w?= =?utf-8?B?eXVILzRVLzdib0pDVnd0QkJWekdMblUwZU1RT0dIakNBbzdXTlE3TWtZR1NB?= =?utf-8?B?eDhNeVNTUVIwRXh2RzFjT0FhZ1NIV2F0SWI5OXk3cnliTkxUVkh5WXN6amJ1?= =?utf-8?B?anVES1BCUWVsQ3FwZlRPVjlmTStFNWticnpQYmhvT053TmJLb3BZOXZnZWs0?= =?utf-8?Q?u2wsMAsdZbVSFiVJYokB47YQ3?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: PqELRhWetDIS6kWPEcXpA9HUcMprqbbwt+r1eGloLuu0TVmJRne4oMCkeI2Ux6daDbjqw5VC7cuAh8rULd+uVmjdiSVBQCk0QM2gqdPAPDRCqABIGCGo2hKV8tBVuZXIpq6zTtPrsHqnHdE5JrlLOsbMUfomHHz0hO/q4YTFk8U6cbEfUQ9ruUtacpXxctKH9wqBx+J0SYhNzEBM9XNdFJ0zI7Yb90tLN5AvUivuC/Rc/dvfT7pRyT7pot51Oqk5Hd3nN6YF2KcmTn6X+iOrBbYY2qlodyqvvlUN9HBoVKvQTo9dP9bG95fhjAyVeBR6KAbPjNfp9XUSA6tKpcOj+HxPxamWQ1Ttb8zujvoV3FkQKaFvW6C9CMFxYi0Kmu7M35Pr0V9Ii2vNgAzDLAxuRSFc3qZr4VYAZ6bSfTbFxq0AEdAvpfqnZuXtpK+E7b20mCzjtRWc6T/+mkS5Y7MJpsdL6CSchsyFQhUqJuZ30TNPmn+wPknEd5E68LU2ovLB1BHYoyILXVPwC74ouKgCcYkB9L7BNzMw28gaiLtp8G7cAWF+K3pDg6KTGdZw63Cax71EVxYcI7qE0XEH9TkT7g1maKRM6HZ/JeL67bYwFs8JMRvQxND4+P1ZSW1JG1Ze1jZqGPasaKozBfTILsTCpm3smmjto9BlpSuOfaKfULKa+Y3C1YhvKobwVn9vvzWgFfyykFqBhTiveV7vjHh7hKJi3YIq2rRqMcagP7RdyCtIePfdw9KJtdhn+YBrYpJqaOAAM6ufr6QqHr+Q1TZL71j8sNwy5zDGIIeP5ITwb9OV6oHqTeM0kg812PdkeUjC4uw+soKBXguqUZDfQPlA/w== X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 4dfebf2c-3ad8-4896-575f-08db788c5737 X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 Jun 2023 10:33:55.8673 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: nUw0xsfnh3D9ctLACPwVcXYbm5g66T4iIQOsdrjPYjCweqNrCDB8gda1osFcGYgUXMZMQhRauI4gVlgmRndqlg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR03MB6915 On Thu, Jun 29, 2023 at 11:26:00AM +0100, Andrew Cooper wrote: > Fixes: 21e3ef57e040 ("x86: Rename {domctl,sysctl}.cpu_policy.{cpuid,msr}_policy fields") > Signed-off-by: Andrew Cooper Reviewed-by: Roger Pau Monné Thanks. From xen-devel-bounces@lists.xenproject.org Thu Jun 29 11:21:36 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 11:21:36 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556789.869552 (Exim 4.92) (envelope-from ) id 1qEpiL-0006Gr-Tm; Thu, 29 Jun 2023 11:21:29 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556789.869552; Thu, 29 Jun 2023 11:21:29 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEpiL-0006Gk-On; Thu, 29 Jun 2023 11:21:29 +0000 Received: by outflank-mailman (input) for mailman id 556789; Thu, 29 Jun 2023 11:21:29 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEpiK-0006Ge-TC for xen-devel@lists.xenproject.org; Thu, 29 Jun 2023 11:21:29 +0000 Received: from NAM11-CO1-obe.outbound.protection.outlook.com (mail-co1nam11on2061d.outbound.protection.outlook.com [2a01:111:f400:7eab::61d]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 15fe6ef1-166f-11ee-b237-6b7b168915f2; Thu, 29 Jun 2023 13:21:27 +0200 (CEST) Received: from SN6PR12MB2621.namprd12.prod.outlook.com (2603:10b6:805:73::15) by CY5PR12MB6383.namprd12.prod.outlook.com (2603:10b6:930:3d::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.23; Thu, 29 Jun 2023 11:21:23 +0000 Received: from SN6PR12MB2621.namprd12.prod.outlook.com ([fe80::8018:78f7:1b08:7a54]) by SN6PR12MB2621.namprd12.prod.outlook.com ([fe80::8018:78f7:1b08:7a54%2]) with mapi id 15.20.6521.026; Thu, 29 Jun 2023 11:21:22 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 15fe6ef1-166f-11ee-b237-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=YG2r7rPRXpfhQvN+lxo7W9J+DSYOaaNoFiP9bih2RJVlABmxMiDYsfVids6dzvsYXPdGh3wXasl6Bx4G7rPp1pzelP7baTmcOx2BzQ76it4JwLL614MXiYrbZKOhAPKQQN1SFlIvapaVyPZPgkm/CTJ72e6XZRsAYk4+gsXgTU/g3tFnGBTiYDUsht65Wht8SouAj7CGvU4HqfTJVQOgArqhXUUWc77aj51PD2UGdH2h1w+v8sPD3HqSogXpUvVdooXDJ6+jnGsLHumfHeEJnJwMl0Z6TfjnnF3/wzaz8/l7FswUYVDV1C4P9tY+0wfvUzBkq4CSyA0BKNJiJus5eQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=GsjzOeJiRqQ92ChuPXbigZZj4Xo8diLgL2Vh+27YSsk=; b=ZhaZnT0j7FgbjpDzor8OOpUvWPzLvFO6QFLP7+SgGtS6B30+FCi2tBjkVsSOIH4qjKGNzI3q9aZHm5kXpE7N/mqz6wRNoKenVvxTi7OwEg4kYw+M91xzNI0SLiyPF171NqIYE7OYCVC0CF9bzdcX08uG+ttShnVr4NZKlKHjl0XSk0r4FS/qcuQwwM9uZFNIe7cs33rVhMgsQ2ds8hF0TVNMfKe9Fvl7Kj3G6e3GIHBL01dH3GzGJryg72r7yKWgNHl6myRM9SCi3RJt23RI0zDZILSfb8KjhWgoBlRy70L7Dl2TgZB39ZBHOT9E7OD8koAbkHUY73GZZwwqeRLmsw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass header.d=amd.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=GsjzOeJiRqQ92ChuPXbigZZj4Xo8diLgL2Vh+27YSsk=; b=KRx9AxwuNakXXMBFvbmP9qyb2+AlbryODeWQmM6DG28WqD7GIEyDtZOEXXCBYZjYrt+RPU3qG6miyAokO7tPYbzmi74D6iGn8LCUKE+cF3UXwFaOEn0aXFVxSnKioY5LHlOYqQ7FHh2fyCFZKT8zFLeYm8qzzRQ8ucXtbCuIugM= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=amd.com; Message-ID: <301e2e02-f2ab-5538-d426-52a02a7f35b5@amd.com> Date: Thu, 29 Jun 2023 12:21:16 +0100 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v3 24/52] xen/mpu: build up start-of-day Xen MPU memory region map To: Julien Grall , Penny Zheng , xen-devel@lists.xenproject.org Cc: Stefano Stabellini , Bertrand Marquis , Volodymyr Babchuk , Wei Chen References: <20230626033443.2943270-1-Penny.Zheng@arm.com> <20230626033443.2943270-25-Penny.Zheng@arm.com> <778688ab-8fd4-2b06-e644-b5a013bb56f7@amd.com> <39a5a729-0099-67e4-bf4a-c65ae99a4619@xen.org> <37e2856b-038e-6a3a-a6ff-c518dfeda552@amd.com> From: Ayan Kumar Halder In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO4P265CA0123.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:2c6::10) To SN6PR12MB2621.namprd12.prod.outlook.com (2603:10b6:805:73::15) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SN6PR12MB2621:EE_|CY5PR12MB6383:EE_ X-MS-Office365-Filtering-Correlation-Id: 2c691cdb-8ad5-438d-bd96-08db7892f802 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: iQ3HQxmnVYiH9W/L9vO0NiaJ4cckbdGKOmuhdhUX+6ZErIoxZSYcBkIWTRvC6CUOEHCjeNNttJmcWPmLQ/Q9YCn5nR4skkkqSmpslwrU4jHUQ8cmtdsKfyTS8kknKG/K90qyjXF9JwZT6beGJ5SAG1TmaVQj6qUjp7H1zsgA4JaFNj3oBLjIkqsJmFFNv+1uDtHyQFgeKTOnJR9wdx8KMMdDfpYaE7MikDE2fSMqD35tACThMuP7IA61u+5fOCiuo4vG3+8Uy0aO0rklYU+xLYxRmfr9ORF/sTVk89hG4ObddPJ1lU7wkoaPV80gCUnufqv1jTCb22r4IthmXhmfpKZzyVZDMB1wrFA2TEsAEBFW+j94a0LvuNWNRECPFgHD/dXZs+0Ze22LrcQIyS1FTqQOpjCdkeWvaRP/s2DTHfzxnj6wAA9I4IetYV86lpIqTEkc0wcjSDT3mpRhvUfz8aucadAdid7Z6T7RsL/lHeL0YQvRgoeMR9UichNV1eBVw3ssr9RsLSV4vOTLdpmDEcEWMDtrtp79QyVomQwb7iCCD0r7FugrgBNqUFRA7TXF0NUhsIhkTGmJBzqitJYcNaz6b43Mv0jnfyFrg1J7fcfjJCYfcjqbIOJyD7RlFKamZtOhM6loFnGXuX09hGdtPEGfZ5ik2MbY3nufW8eru+WiOyeaoNXzmEUFABBtpx3l X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SN6PR12MB2621.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(136003)(396003)(376002)(346002)(366004)(39860400002)(451199021)(6512007)(110136005)(966005)(6486002)(478600001)(54906003)(186003)(26005)(2616005)(6666004)(83380400001)(53546011)(2906002)(6506007)(41300700001)(36756003)(38100700002)(5660300002)(31696002)(66946007)(4326008)(66556008)(316002)(8936002)(66476007)(8676002)(31686004)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?SXJlYi92eUhMaU9MYk5XbzUzZE41bVh3MjNQZktmQ0pPcDBHQ3dIcnlUc0Mx?= =?utf-8?B?TStrdVVVLzNFUzJUeTkwNmFoTFlLTFpJU3RWaG1UcnJBRlU0VlhiMC9RV2c3?= =?utf-8?B?KzhzcStYendEd1BmM1dCWWRWZEZ6R3ZFb0xEb3dSWCtFc084MmFiU2xOSG80?= =?utf-8?B?bU9RV1dHRWEwS1VlazYyN2N4VEdsL0FPdDh1elg1RHNlVVZQbTF2UWs5bWd3?= =?utf-8?B?dExDQ1Q5QnV2dlVMVHlKOEFzdFhyUjgwbU1NTjV0cEtMU1E0dlpod3o3aERa?= =?utf-8?B?dHRXRUJKRXA2azdYb3hGNkZKby82blQ4WXRDbzJVaDM2OUxEcVFwTzBBWUJ3?= =?utf-8?B?enEyME5DSzdvMlp2ZXlMa2JLaVhHSFlKQUlaWHBvRTIwSHRBUWs3SVNvb1dL?= =?utf-8?B?dUJaVUpYS3dHUkJ2cHoyTVMvaFQ2SGNGTE8ya05YcGJGU3N6anJqbWZwdUhr?= =?utf-8?B?R29zNE4wZzF3Q0R6dDdsMlYzS3ZjMHpLaGJpaUFtOFJ5SUE5clJ0QUlFT2Rk?= =?utf-8?B?RzhDajJvSDZTQWZ0SllreU55WTlQTkZiYWlKZG5rdG5nbzQ0cjUxUEdxNDNo?= =?utf-8?B?RzVOVG92OTRVTE03Zm52aGV0V3ZuRGdqOEpLR2ZhekVwRGpvK0tYV055Zjli?= =?utf-8?B?VDZ1c3YwSDZKR1h6YjRKVVNiTjlJMUtZWVRCZG01UkV6cGlQaUpnZkVkN1Jo?= =?utf-8?B?TTYvUzIxaUNyK2VkYmFTd3VFVXUwN3JNalZGdkNJWkUrdTNDanlSTnl6RlJG?= =?utf-8?B?VzJBa2c4amphVCtQeVFvMENKYnljQTJ0MVFFR2d3WTVHMmJ1eG5Qc1NHck9u?= =?utf-8?B?OUwrd2ZRVEhTblY4S2hkUERXZ09JSkFlVjk2L3o3RlVIOHd4N01mbWFzbEIv?= =?utf-8?B?Mzk1dE5qWlN3ZHc4Z09ObmpSTW5OK2NlaC9nM2xQc0svazNORTN1a3VZNVBI?= =?utf-8?B?TDJkQjZFUXZCcDhRYzM5ZXF1OFl5M0k4Ky8vdlU2RC9CamFaQzZBdzVOTmRn?= =?utf-8?B?d0ZkdCtLSERjZlFLazRrK2RuRHFraW1raWVPQWRkZ2VhdE5hbG90a2JvWmtO?= =?utf-8?B?aGc5S3ZIY2ZwdUhDb0RQT0J6S054OXRJdUdva0hxcDB5NzF6ektqblRQbWJi?= =?utf-8?B?T0RzYWxpc05sWVN2dytSdXhLeEhyNyt5Q2hzelhTWDkvd2Z2SlBCanUwZnRE?= =?utf-8?B?c3QxUHBMWjY5K05rWTlOMnBIaVRIZXZNUVJja2ZPU3hid3lnZ3NBQzNobFhn?= =?utf-8?B?ZXQvR2xOWnlqY2VRWVZubXBaSlVUQXJkenNmZERhUk03SHZRaWNoMnlhSExv?= =?utf-8?B?RldWTm9CT2VXVDdxVlVlUkphUk1nZVJjd0hlcEZmWVhBSFBhM29LVTljV1pE?= =?utf-8?B?dVVZb0xxRDFCVUI4WmJ2UGdFSGVraWhtYm45dWlNSFFGSkJhcjZqTDdnNFE1?= =?utf-8?B?WlZPd3RQK2RCYVhFZUZLK0RRa3lTdU5xTnArR29UQkswSjRUL1NDOVdRMHd4?= =?utf-8?B?bk5aVENBMXZDTGJ4c05pV1lWc04vL3JYSW9lUXN6cVdXekdCUGxOemFGRFpt?= =?utf-8?B?REdrdUp3MDhyYmtqckM1cFVaWng2UVJPZEF4TkpCREFxY0RIcU1jUjZMdjZG?= =?utf-8?B?VVFiWW1wdFptYmF2S3ZkOUZaMFkzMlR0RmRWQVJUMlRlN3AreG9LUThiWUN6?= =?utf-8?B?aERST3p3RTFCY3Bwd3FRazdHb1RnS3NFOUZPRW9JdStQaE0wa0s5NVZPWHFo?= =?utf-8?B?K2JFTUF1ZkovbzhzZzd2UUhRdDIyYTRvWFNKNVJQcnY1Z3g1OWo1RjRydzVh?= =?utf-8?B?dG5tN25RWWk0cWMxQUtvdTd4YkNsWWJCMk0wcjZlOGlOZzlJcWZwaE9BVU9i?= =?utf-8?B?WDhkUDcyRmxCOVNibjNpYzdoSlJ5U0pjSFc4U2ptQXdTOHNQN1N4cDRyRlB2?= =?utf-8?B?K2tvVW9sVlUrS2gzQXJ6MVdML016Tk1qejNZNEp3Qit4U2dneUQwNmhqQ2Ix?= =?utf-8?B?cXNtbVYvVFdsQXhKWnFsa1lNNW1Id3lqb2loOEpIR2FBaXoxQUpZU0FVV1cv?= =?utf-8?B?dnlYWG9YWEhzYmlxMVhia0o4bnRmK25ReFpUSzhpZ3NtQitKakl0Y3FSYmJo?= =?utf-8?Q?1JposQUTm284iKIjWgqbushqy?= X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-Network-Message-Id: 2c691cdb-8ad5-438d-bd96-08db7892f802 X-MS-Exchange-CrossTenant-AuthSource: SN6PR12MB2621.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 Jun 2023 11:21:22.6564 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: V00dtqYafQZ64ThfHh6r9456e3DIzCg/epct58b4rFtpNB1Xi7rPGwR0x42IdfNCgDXBg3E8jUfQNJaAlhsiIA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY5PR12MB6383 On 28/06/2023 14:42, Julien Grall wrote: > Hi Ayan, Hi Julien, > > On 28/06/2023 14:22, Ayan Kumar Halder wrote: >> >> On 28/06/2023 12:17, Julien Grall wrote: >>> Hi, >> Hi Julien, >>> >>> On 28/06/2023 11:55, Ayan Kumar Halder wrote: >>>> On 26/06/2023 04:34, Penny Zheng wrote: >>>>> CAUTION: This message has originated from an External Source. >>>>> Please use proper judgment and caution when opening attachments, >>>>> clicking links, or responding to this email. >>>>> >>>>> >>>>> The start-of-day Xen MPU memory region layout shall be like >>>>> as follows: >>>>> >>>>> xen_mpumap[0] : Xen text >>>>> xen_mpumap[1] : Xen read-only data >>>>> xen_mpumap[2] : Xen read-only after init data >>>>> xen_mpumap[3] : Xen read-write data >>>>> xen_mpumap[4] : Xen BSS >>>>> xen_mpumap[5] : Xen init text >>>>> xen_mpumap[6] : Xen init data >>>>> >>>>> The layout shall be compliant with what we describe in xen.lds.S, >>>>> or the codes need adjustment. >>>>> >>>>> Signed-off-by: Penny Zheng >>>>> Signed-off-by: Wei Chen >>>>> --- >>>>> v3: >>>>> - cache maintanence for safety when modifying MPU memory mapping >>>>> table >>>>> - Hardcode index for all data/text sections >>>>> - To make sure that alternative instructions are included, use >>>>> "_einitext" >>>>> as the start of the "Init data" section. >>>>> --- >>>> < snip> >>>>> +/* >>>>> + * Static start-of-day Xen EL2 MPU memory region layout: >>>>> + * >>>>> + *     xen_mpumap[0] : Xen text >>>>> + *     xen_mpumap[1] : Xen read-only data >>>>> + *     xen_mpumap[2] : Xen read-only after init data >>>>> + *     xen_mpumap[3] : Xen read-write data >>>>> + *     xen_mpumap[4] : Xen BSS >>>>> + *     xen_mpumap[5] : Xen init text >>>>> + *     xen_mpumap[6] : Xen init data >>>>> + * >>>>> + * Clobbers x0 - x6 >>>>> + * >>>>> + * It shall be compliant with what describes in xen.lds.S, or the >>>>> below >>>>> + * codes need adjustment. >>>>> + */ >>>>> +ENTRY(prepare_early_mappings) >>>>> +    /* x0: region sel */ >>>>> +    mov   x0, xzr >>>>> +    /* Xen text section. */ >>>>> +    load_paddr x1, _stext >>>>> +    load_paddr x2, _etext >>>>> +    prepare_xen_region x0, x1, x2, x3, x4, x5, x6, >>>>> attr_prbar=REGION_TEXT_PRBAR >>>>> + >>>>> +    add   x0, x0, #1 >>>>> +    /* Xen read-only data section. */ >>>>> +    load_paddr x1, _srodata >>>>> +    load_paddr x2, _erodata >>>>> +    prepare_xen_region x0, x1, x2, x3, x4, x5, x6, >>>>> attr_prbar=REGION_RO_PRBAR >>>>> + >>>>> +    add   x0, x0, #1 >>>>> +    /* Xen read-only after init data section. */ >>>>> +    load_paddr x1, __ro_after_init_start >>>>> +    load_paddr x2, __ro_after_init_end >>>>> +    prepare_xen_region x0, x1, x2, x3, x4, x5, x6 >>>>> + >>>>> +    add   x0, x0, #1 >>>>> +    /* Xen read-write data section. */ >>>>> +    load_paddr x1, __ro_after_init_end >>>>> +    load_paddr x2, __init_begin >>>>> +    prepare_xen_region x0, x1, x2, x3, x4, x5, x6 >>>>> + >>>>> +    add   x0, x0, #1 >>>>> +    /* Xen BSS section. */ >>>>> +    load_paddr x1, __bss_start >>>>> +    load_paddr x2, __bss_end >>>>> +    prepare_xen_region x0, x1, x2, x3, x4, x5, x6 >>>>> + >>>>> +    add   x0, x0, #1 >>>>> +    /* Xen init text section. */ >>>>> +    load_paddr x1, _sinittext >>>>> +    load_paddr x2, _einittext >>>>> +    prepare_xen_region x0, x1, x2, x3, x4, x5, x6, >>>>> attr_prbar=REGION_TEXT_PRBAR >>>>> + >>>>> +    add   x0, x0, #1 >>>>> +    /* Xen init data section. */ >>>>> +    /* >>>>> +     * Even though we are not using alternative instructions in >>>>> MPU yet, >>>>> +     * we want to use "_einitext" for the start of the "Init >>>>> data" section >>>>> +     * to make sure they are included. >>>>> +     */ >>>>> +    load_paddr x1, _einittext >>>>> +    roundup_section x1 >>>>> +    load_paddr x2, __init_end >>>>> +    prepare_xen_region x0, x1, x2, x3, x4, x5, x6 >>>>> + >>>>> +    /* Ensure any MPU memory mapping table updates made above >>>>> have occurred. */ >>>>> +    dsb   nshst >>>>> +    ret >>>>> +ENDPROC(prepare_early_mappings) >>>> >>>> Any reason why this is in assembly ? >>> >>> I am not Penny. But from my understanding, in your approach, you >>> will require to disable to switch the disable the MPU for using the >>> new sections. While I agree... >>> >>>> >>>> We have implemented it in C >>>> https://github.com/Xilinx/xen/blob/d1258f1cefe406a3f91237b8106746c089864651/xen/arch/arm_mpu/mm_mpu.c#L941 >>>> , so that it can be common between R82 and R52. >>> >>> ... this means you can share the code. It also means: >>>   * You can't protect Xen properly from the start >> >> Yes, I see what you mean. Refer >> https://github.com/Xilinx/xen/blob/d1258f1cefe406a3f91237b8106746c089864651/xen/arch/arm_mpu/arm32/mpu_v8r.S#L82C7-L82C15 >> , >> >> I am mapping CONFIG_XEN_START_ADDRESS + 2 MB. But, probably you mean >> individual sections should be properly mapped from the beginning. >> >>>   * You need to flush the cache (not great for performance) >>>   * You need to be more cautious as the MPU will be disabled for a >>> short period of time. >> >> Yes, MPU is disabled when set_boot_mpumap() is invoked. But is this >> really a security issue ? > > My second point is not about security, it is about been compliant with > the Arm Arm. To quote what you wrote: > > " To avoid unexpected unaligment access fault during MPU disabled, > set_boot_mpumap shall be written in assembly code." > > What's the guarantee that the compiler will not generate any > instructions that could generate an alignment fault? I thought by writing in assembly, we tell the compiler what instructions to generate. For eg ENTRY(set_boot_mpumap)     push {r4}     mov   r2, #0               /* table index */ 1:  ldr   r3, [r1], #4         /* r3: prbar */     ldr   r4, [r1], #12        /* r4: prlar */     write_pr r2, r3, r4     add   r2, r2, #1           /* table index ++ */     cmp   r2, r0     blt  1b     pop {r4}     ret ENDPROC(set_boot_mpumap) I ask the compiler to use ldr (and not ldrb) instructions. May be I am missing something very obvious here. However, I might be misunderstanding the comment here. It was originally written by Penny. @Penny, Can you explain "To avoid unexpected unaligment access fault during MPU disabled, set_boot_mpumap shall be written in assembly code." in a bit more detail, please ? > > Furthermore, from my understanding, at least on Armv8-A, there are > caching problem because you will need to save some registers (for the > call to set_boot_mpumap()) on the stack with cache disabled. This > means the cache will be bypassed. But you may then restore the > registers with the cache enabled (the compiler could decide that it is > not necessary to read the stack before hand). So you could read the > wrong data if there is a stale cacheline. Yes, this makes some sense. So will the following make it correct :- 1. Execute 'dmb' before invoking enable_mpu(). This will ensure that the registers are strictly restored in set_boot_mpumap() before the HSCTLR is read. We do have 'dsb sy' before modifying HSCTLR (ie enabling cache), but may be we want to be stricter. 2. Invalidate the D cache after "mcr   CP32(r0, HSCTLR)" and then dsb (to ensure d cache is invalidated), isb (flush the instruction cache as MPU is enabled), ret. - Ayan > > So overall, I think you want to tightly control the section where the > MPU is off. This means writing the logic in assembly rather than C. > >> >> I mean only a single core is running and it is executing Xen. The MPU >> is turned off for few cycles. >> >>> >>> In fact looking at your switch code in setup_protection_regions(), I >>> am not convinced you can disable the MPU in C and then call >>> set_boot_mpumap(). I think the enable/disable would need to be moved >>> in the assembly function. There are potentially more issues. >> >> disable_mpu(), enable_mpu() are written in assembly. See >> https://github.com/Xilinx/xen/blob/d1258f1cefe406a3f91237b8106746c089864651/xen/arch/arm_mpu/arm32/mpu_v8r.S#L128 > > Right, but then you return to C world to then call set_boot_mpumap(). > So you have still some part in C even if it is small. > > Cheers, > From xen-devel-bounces@lists.xenproject.org Thu Jun 29 11:31:15 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 11:31:15 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556796.869561 (Exim 4.92) (envelope-from ) id 1qEprY-0007pP-TG; Thu, 29 Jun 2023 11:31:00 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556796.869561; Thu, 29 Jun 2023 11:31:00 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEprY-0007pI-On; Thu, 29 Jun 2023 11:31:00 +0000 Received: by outflank-mailman (input) for mailman id 556796; Thu, 29 Jun 2023 11:30:59 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEprX-0007pC-N4 for xen-devel@lists.xenproject.org; Thu, 29 Jun 2023 11:30:59 +0000 Received: from smtp-out2.suse.de (smtp-out2.suse.de [195.135.220.29]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 6ad7ecdf-1670-11ee-b237-6b7b168915f2; Thu, 29 Jun 2023 13:30:58 +0200 (CEST) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by smtp-out2.suse.de (Postfix) with ESMTPS id 9F4341F8BF; Thu, 29 Jun 2023 11:30:57 +0000 (UTC) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id 60EF4139FF; Thu, 29 Jun 2023 11:30:57 +0000 (UTC) Received: from dovecot-director2.suse.de ([192.168.254.65]) by imap2.suse-dmz.suse.de with ESMTPSA id 4IzKFXFrnWR9PAAAMHmgww (envelope-from ); Thu, 29 Jun 2023 11:30:57 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 6ad7ecdf-1670-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1; t=1688038257; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=eJvLg1c3gBa+SVJTFINlkKNejeqAgP1aQiyvJTK+crE=; b=XoO6fsvKIXPkIA8Xl5uFsOMW8palD9GA+DozgScjdcVdpUAAx2kx6F7grBJjQCUJr7ILjp gTUQU9InXRVCl7N8OzWV5grkWG628Jm5EcJL4y/bsWtPpQTGjm8k3QTkRvZx/6ex/674m1 xoS941kckew2tQqBcOrVwGfRXOKSsM8= Message-ID: <5ad21b11-2ed3-8c6f-f206-90bbda5ca9fb@suse.com> Date: Thu, 29 Jun 2023 13:30:56 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Content-Language: en-US To: Julien Grall , xen-devel@lists.xenproject.org Cc: Wei Liu , Anthony PERARD References: <20230530091333.7678-1-jgross@suse.com> <20230530091333.7678-11-jgross@suse.com> From: Juergen Gross Subject: Re: [PATCH 10/11] tools/xenstore: drop use of tdb In-Reply-To: Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="------------9u6renJFc9RdOVgz1pe1VTfy" This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --------------9u6renJFc9RdOVgz1pe1VTfy Content-Type: multipart/mixed; boundary="------------ds19vdV40vgIo3Jo69wssR77"; protected-headers="v1" From: Juergen Gross To: Julien Grall , xen-devel@lists.xenproject.org Cc: Wei Liu , Anthony PERARD Message-ID: <5ad21b11-2ed3-8c6f-f206-90bbda5ca9fb@suse.com> Subject: Re: [PATCH 10/11] tools/xenstore: drop use of tdb References: <20230530091333.7678-1-jgross@suse.com> <20230530091333.7678-11-jgross@suse.com> In-Reply-To: --------------ds19vdV40vgIo3Jo69wssR77 Content-Type: multipart/mixed; boundary="------------ktCg8aWSccVcjtJc9khwfjUb" --------------ktCg8aWSccVcjtJc9khwfjUb Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: base64 T24gMjAuMDYuMjMgMTU6MDksIEp1bGllbiBHcmFsbCB3cm90ZToNCj4gSGkgSnVlcmdlbiwN Cj4gDQo+IE9uIDMwLzA1LzIwMjMgMTA6MTMsIEp1ZXJnZW4gR3Jvc3Mgd3JvdGU6DQo+PiBU b2RheSBhbGwgWGVuc3RvcmUgbm9kZXMgYXJlIHN0b3JlZCBpbiBhIFREQiBkYXRhIGJhc2Uu IFRoaXMgZGF0YSBiYXNlDQo+PiBoYXMgc2V2ZXJhbCBkaXNhZHZhbnRhZ2VzOg0KPj4NCj4+ IC0gaXQgaXMgdXNpbmcgYSBmaXhlZCBzaXplZCBoYXNoIHRhYmxlLCByZXN1bHRpbmcgaW4g aGlnaCBtZW1vcnkNCj4+IMKgwqAgb3ZlcmhlYWQgZm9yIHNtYWxsIGluc3RhbGxhdGlvbnMg d2l0aCBvbmx5IHZlcnkgZmV3IFZNcywgYW5kIGEgcmF0aGVyDQo+PiDCoMKgIGxhcmdlIHBl cmZvcm1hbmNlIGhpdCBmb3Igc3lzdGVtcyB3aXRoIGxvdHMgb2YgVk1zIGR1ZSB0byBtYW55 DQo+PiDCoMKgIGNvbGxpc2lvbnMNCj4+DQo+PiAtIFhlbnN0b3JlIGlzIG9ubHkgc2luZ2xl LXRocmVhZGVkLCB3aGlsZSBUREIgaXMgZGVzaWduZWQgdG8gYmUgZml0DQo+PiDCoMKgIGZv ciBtdWx0aS10aHJlYWRlZCB1c2UgY2FzZXMsIHJlc3VsdGluZyBpbiBtdWNoIGhpZ2hlciBj b2RlDQo+PiDCoMKgIGNvbXBsZXhpdHkgdGhhbiBuZWVkZWQNCj4+DQo+PiAtIHNwZWNpYWwg dXNlIGNhc2VzIG9mIFhlbnN0b3JlIGFyZSBub3QgcG9zc2libGUgdG8gaW1wbGVtZW50IHdp dGggVERCDQo+PiDCoMKgIGluIGFuIGVmZmVjdGl2ZSB3YXksIHdoaWxlIGFuIGltcGxlbWVu dGF0aW9uIG9mIGEgZGF0YSBiYXNlIHRhaWxvcmVkDQo+PiDCoMKgIGZvciBYZW5zdG9yZSBj b3VsZCBzaW1wbGlmeSBzb21lIGhhbmRsaW5nIChlLmcuIHRyYW5zYWN0aW9ucykgYSBsb3QN Cj4+DQo+PiBTbyBkcm9wIHVzaW5nIFREQiBhbmQgc3RvcmUgdGhlIG5vZGVzIGRpcmVjdGx5 IGluIG1lbW9yeSBtYWtpbmcgdGhlbQ0KPj4gZWFzaWx5IGFjY2Vzc2libGUuIFVzZSBhIGhh c2gtYmFzZWQgbG9va3VwIG1lY2hhbmlzbSBmb3IgZmFzdCBsb29rdXANCj4+IG9mIG5vZGVz IGJ5IHRoZWlyIGZ1bGwgcGF0aC4NCj4+DQo+PiBGb3Igbm93IG9ubHkgcmVwbGFjZSBUREIg a2VlcGluZyB0aGUgY3VycmVudCBhY2Nlc3MgZnVuY3Rpb25zLg0KPj4NCj4+IFNpZ25lZC1v ZmYtYnk6IEp1ZXJnZW4gR3Jvc3MgPGpncm9zc0BzdXNlLmNvbT4NCj4+IC0tLQ0KPj4gwqAg dG9vbHMveGVuc3RvcmUveGVuc3RvcmVkX2NvcmUuY8KgwqDCoMKgwqDCoMKgIHwgMTUzICsr KysrKysrKystLS0tLS0tLS0tLS0tLS0NCj4+IMKgIHRvb2xzL3hlbnN0b3JlL3hlbnN0b3Jl ZF9jb3JlLmjCoMKgwqDCoMKgwqDCoCB8wqDCoCA1ICstDQo+PiDCoCB0b29scy94ZW5zdG9y ZS94ZW5zdG9yZWRfdHJhbnNhY3Rpb24uYyB8wqDCoCAxIC0NCj4+IMKgIDMgZmlsZXMgY2hh bmdlZCwgNjIgaW5zZXJ0aW9ucygrKSwgOTcgZGVsZXRpb25zKC0pDQo+Pg0KPj4gZGlmZiAt LWdpdCBhL3Rvb2xzL3hlbnN0b3JlL3hlbnN0b3JlZF9jb3JlLmMgYi90b29scy94ZW5zdG9y ZS94ZW5zdG9yZWRfY29yZS5jDQo+PiBpbmRleCAxMmM1ODRmMDliLi45YjQ0ZGU5ZDMxIDEw MDY0NA0KPj4gLS0tIGEvdG9vbHMveGVuc3RvcmUveGVuc3RvcmVkX2NvcmUuYw0KPj4gKysr IGIvdG9vbHMveGVuc3RvcmUveGVuc3RvcmVkX2NvcmUuYw0KPj4gQEAgLTUzLDcgKzUzLDYg QEANCj4+IMKgICNpbmNsdWRlICJ4ZW5zdG9yZWRfZG9tYWluLmgiDQo+PiDCoCAjaW5jbHVk ZSAieGVuc3RvcmVkX2NvbnRyb2wuaCINCj4+IMKgICNpbmNsdWRlICJ4ZW5zdG9yZWRfbHUu aCINCj4+IC0jaW5jbHVkZSAidGRiLmgiDQo+PiDCoCAjaWZuZGVmIE5PX1NPQ0tFVFMNCj4+ IMKgICNpZiBkZWZpbmVkKEhBVkVfU1lTVEVNRCkNCj4+IEBAIC04NSw3ICs4NCw3IEBAIGJv b2wga2VlcF9vcnBoYW5zID0gZmFsc2U7DQo+PiDCoCBzdGF0aWMgaW50IHJlb3Blbl9sb2df cGlwZVsyXTsNCj4+IMKgIHN0YXRpYyBpbnQgcmVvcGVuX2xvZ19waXBlMF9wb2xsZmRfaWR4 ID0gLTE7DQo+PiDCoCBjaGFyICp0cmFjZWZpbGUgPSBOVUxMOw0KPj4gLXN0YXRpYyBUREJf Q09OVEVYVCAqdGRiX2N0eCA9IE5VTEw7DQo+PiArc3RhdGljIHN0cnVjdCBoYXNodGFibGUg Km5vZGVzOw0KPj4gwqAgdW5zaWduZWQgaW50IHRyYWNlX2ZsYWdzID0gVFJBQ0VfT0JKIHwg VFJBQ0VfSU87DQo+PiDCoCBzdGF0aWMgY29uc3QgY2hhciAqc29ja21zZ19zdHJpbmcoZW51 bSB4c2Rfc29ja21zZ190eXBlIHR5cGUpOw0KPj4gQEAgLTU1NiwyOCArNTU1LDI5IEBAIHN0 YXRpYyB2b2lkIGluaXRpYWxpemVfZmRzKGludCAqcF9zb2NrX3BvbGxmZF9pZHgsIGludCAN Cj4+ICpwdGltZW91dCkNCj4+IMKgwqDCoMKgwqAgfQ0KPj4gwqAgfQ0KPj4gLXN0YXRpYyB2 b2lkIHNldF90ZGJfa2V5KGNvbnN0IGNoYXIgKm5hbWUsIFREQl9EQVRBICprZXkpDQo+PiAt ew0KPj4gLcKgwqDCoCAvKg0KPj4gLcKgwqDCoMKgICogRHJvcHBpbmcgY29uc3QgaXMgZmlu ZSBoZXJlLCBhcyB0aGUga2V5IHdpbGwgbmV2ZXIgYmUgbW9kaWZpZWQNCj4+IC3CoMKgwqDC oCAqIGJ5IFREQi4NCj4+IC3CoMKgwqDCoCAqLw0KPj4gLcKgwqDCoCBrZXktPmRwdHIgPSAo Y2hhciAqKW5hbWU7DQo+PiAtwqDCoMKgIGtleS0+ZHNpemUgPSBzdHJsZW4obmFtZSk7DQo+ PiAtfQ0KPj4gLQ0KPj4gwqAgdm9pZCAqZGJfZmV0Y2goY29uc3QgY2hhciAqZGJfbmFtZSwg c2l6ZV90ICpzaXplKQ0KPj4gwqAgew0KPj4gLcKgwqDCoCBUREJfREFUQSBrZXksIGRhdGE7 DQo+PiArwqDCoMKgIHN0cnVjdCB4c190ZGJfcmVjb3JkX2hkciAqaGRyOw0KPiANCj4gQUZB SUNULCB0aGlzIGNvdWxkIGJlIGNvbnN0Lg0KDQpZZXMuDQoNCj4gDQo+PiArwqDCoMKgIHZv aWQgKnA7DQo+IA0KPiBwIHdpbGwgcG9pbnQgdG8geHNfdGRiX3JlY29yZF9oZHIsIHJpZ2h0 PyBJZiBzbywgSSB0aGluayBpdCBzaG91bGQgYmUgDQo+IHhzX3RkYl9yZWNvcmRfaGRyLg0K DQpJIGFncmVlLg0KDQo+IA0KPj4gLcKgwqDCoCBzZXRfdGRiX2tleShkYl9uYW1lLCAma2V5 KTsNCj4+IC3CoMKgwqAgZGF0YSA9IHRkYl9mZXRjaCh0ZGJfY3R4LCBrZXkpOw0KPj4gLcKg wqDCoCBpZiAoIWRhdGEuZHB0cikNCj4+IC3CoMKgwqDCoMKgwqDCoCBlcnJubyA9ICh0ZGJf ZXJyb3IodGRiX2N0eCkgPT0gVERCX0VSUl9OT0VYSVNUKSA/IEVOT0VOVCA6IEVJTzsNCj4+ IC3CoMKgwqAgZWxzZQ0KPj4gLcKgwqDCoMKgwqDCoMKgICpzaXplID0gZGF0YS5kc2l6ZTsN Cj4+ICvCoMKgwqAgaGRyID0gaGFzaHRhYmxlX3NlYXJjaChub2RlcywgZGJfbmFtZSk7DQo+ PiArwqDCoMKgIGlmICghaGRyKSB7DQo+PiArwqDCoMKgwqDCoMKgwqAgZXJybm8gPSBFTk9F TlQ7DQo+PiArwqDCoMKgwqDCoMKgwqAgcmV0dXJuIE5VTEw7DQo+PiArwqDCoMKgIH0NCj4+ ICsNCj4+ICvCoMKgwqAgKnNpemUgPSBzaXplb2YoKmhkcikgKyBoZHItPm51bV9wZXJtcyAq IHNpemVvZihoZHItPnBlcm1zWzBdKSArDQo+PiArwqDCoMKgwqDCoMKgwqAgaGRyLT5kYXRh bGVuICsgaGRyLT5jaGlsZGxlbjsNCj4gDQo+IEFGQUlDVCwgdGhpcyBpcyB0aGUgc2FtZSBj b21wdXRhdGlvbiBhcyBpbiB3cml0ZV9ub2RlX3Jhdy4gQ2FuIHdlIGludHJvZHVjZSBhIA0K PiB3cmFwcGVyIGZvciBpdD8NCg0KT2theS4NCg0KPiANCj4+ICsNCj4+ICvCoMKgwqAgcCA9 IHRhbGxvY19zaXplKE5VTEwsICpzaXplKTsNCj4+ICvCoMKgwqAgaWYgKCFwKSB7DQo+PiAr wqDCoMKgwqDCoMKgwqAgZXJybm8gPSBFTk9NRU07DQo+PiArwqDCoMKgwqDCoMKgwqAgcmV0 dXJuIE5VTEw7DQo+PiArwqDCoMKgIH0NCj4+IC3CoMKgwqAgcmV0dXJuIGRhdGEuZHB0cjsN Cj4+ICvCoMKgwqAgbWVtY3B5KHAsIGhkciwgKnNpemUpOw0KPiANCj4gSXQgd291bGQgYmUg YSBnb29kIG9wcG9ydHVuaXR5IHRvIGV4cGxhaW4gdGhlIHJlYXNvbmluZyBiZWhpbmQgcmV0 dXJuaW5nIGEgZnJlc2ggDQo+IHZhbHVlIHJhdGhlciB0aGFuIGEgcG9pbnRlciBvbiB0aGUg REIgZW50cnkuDQoNCkknbGwgYWRkIGEgY29tbWVudC4NCg0KPiANCj4+ICsNCj4+ICvCoMKg wqAgcmV0dXJuIHA7DQo+PiDCoCB9DQo+PiDCoCBzdGF0aWMgdm9pZCBnZXRfYWNjX2RhdGEo Y29uc3QgY2hhciAqbmFtZSwgc3RydWN0IG5vZGVfYWNjb3VudF9kYXRhICphY2MpDQo+PiBA QCAtNjIxLDEyICs2MjEsMTAgQEAgaW50IGRiX3dyaXRlKHN0cnVjdCBjb25uZWN0aW9uICpj b25uLCBjb25zdCBjaGFyIA0KPj4gKmRiX25hbWUsIHZvaWQgKmRhdGEsDQo+PiDCoMKgwqDC oMKgIHN0cnVjdCB4c190ZGJfcmVjb3JkX2hkciAqaGRyID0gZGF0YTsNCj4+IMKgwqDCoMKg wqAgc3RydWN0IG5vZGVfYWNjb3VudF9kYXRhIG9sZF9hY2MgPSB7fTsNCj4+IMKgwqDCoMKg wqAgdW5zaWduZWQgaW50IG9sZF9kb21pZCwgbmV3X2RvbWlkOw0KPj4gK8KgwqDCoCBzaXpl X3QgbmFtZV9sZW4gPSBzdHJsZW4oZGJfbmFtZSk7DQo+PiArwqDCoMKgIGNvbnN0IGNoYXIg Km5hbWU7DQo+PiDCoMKgwqDCoMKgIGludCByZXQ7DQo+PiAtwqDCoMKgIFREQl9EQVRBIGtl eSwgZGF0Ow0KPj4gLcKgwqDCoCBzZXRfdGRiX2tleShkYl9uYW1lLCAma2V5KTsNCj4+IC3C oMKgwqAgZGF0LmRwdHIgPSBkYXRhOw0KPj4gLcKgwqDCoCBkYXQuZHNpemUgPSBzaXplOw0K Pj4gwqDCoMKgwqDCoCBpZiAoIWFjYykNCj4+IMKgwqDCoMKgwqDCoMKgwqDCoCBvbGRfYWNj Lm1lbW9yeSA9IC0xOw0KPj4gwqDCoMKgwqDCoCBlbHNlDQo+PiBAQCAtNjQyLDI5ICs2NDAs MzYgQEAgaW50IGRiX3dyaXRlKHN0cnVjdCBjb25uZWN0aW9uICpjb25uLCBjb25zdCBjaGFy IA0KPj4gKmRiX25hbWUsIHZvaWQgKmRhdGEsDQo+PiDCoMKgwqDCoMKgwqAgKi8NCj4+IMKg wqDCoMKgwqAgaWYgKG9sZF9hY2MubWVtb3J5KQ0KPj4gwqDCoMKgwqDCoMKgwqDCoMKgIGRv bWFpbl9tZW1vcnlfYWRkX25vY2hrKGNvbm4sIG9sZF9kb21pZCwNCj4+IC3CoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAtb2xkX2FjYy5tZW1vcnkgLSBrZXkuZHNp emUpOw0KPj4gLcKgwqDCoCByZXQgPSBkb21haW5fbWVtb3J5X2FkZChjb25uLCBuZXdfZG9t aWQsIHNpemUgKyBrZXkuZHNpemUsDQo+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqAgLW9sZF9hY2MubWVtb3J5IC0gbmFtZV9sZW4pOw0KPj4gK8KgwqDCoCBy ZXQgPSBkb21haW5fbWVtb3J5X2FkZChjb25uLCBuZXdfZG9taWQsIHNpemUgKyBuYW1lX2xl biwNCj4+IMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgbm9fcXVvdGFfY2hl Y2spOw0KPj4gwqDCoMKgwqDCoCBpZiAocmV0KSB7DQo+PiDCoMKgwqDCoMKgwqDCoMKgwqAg LyogRXJyb3IgcGF0aCwgc28gbm8gcXVvdGEgY2hlY2suICovDQo+PiDCoMKgwqDCoMKgwqDC oMKgwqAgaWYgKG9sZF9hY2MubWVtb3J5KQ0KPj4gwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqAgZG9tYWluX21lbW9yeV9hZGRfbm9jaGsoY29ubiwgb2xkX2RvbWlkLA0KPj4gLcKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgb2xkX2FjYy5tZW1v cnkgKyBrZXkuZHNpemUpOw0KPj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqAgb2xkX2FjYy5tZW1vcnkgKyBuYW1lX2xlbik7DQo+PiDCoMKgwqDC oMKgwqDCoMKgwqAgcmV0dXJuIHJldDsNCj4+IMKgwqDCoMKgwqAgfQ0KPj4gLcKgwqDCoCAv KiBUREIgc2hvdWxkIHNldCBlcnJubywgYnV0IGRvZXNuJ3QgZXZlbiBzZXQgZWNvZGUgQUZB SUNULiAqLw0KPj4gLcKgwqDCoCBpZiAodGRiX3N0b3JlKHRkYl9jdHgsIGtleSwgZGF0LA0K Pj4gLcKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChmbGFnID09IE5PREVfQ1JFQVRFKSA/ IFREQl9JTlNFUlQgOiBUREJfTU9ESUZZKSAhPSAwKSB7DQo+PiAtwqDCoMKgwqDCoMKgwqAg ZG9tYWluX21lbW9yeV9hZGRfbm9jaGsoY29ubiwgbmV3X2RvbWlkLCAtc2l6ZSAtIGtleS5k c2l6ZSk7DQo+PiArwqDCoMKgIGlmIChmbGFnID09IE5PREVfQ1JFQVRFKSB7DQo+PiArwqDC oMKgwqDCoMKgwqAgLyogZGJfbmFtZSBjb3VsZCBiZSBtb2RpZmllZCBsYXRlciwgc28gYWxs b2NhdGUgYSBjb3B5LiAqLw0KPj4gK8KgwqDCoMKgwqDCoMKgIG5hbWUgPSB0YWxsb2Nfc3Ry ZHVwKGRhdGEsIGRiX25hbWUpOw0KPj4gK8KgwqDCoMKgwqDCoMKgIHJldCA9IG5hbWUgPyBo YXNodGFibGVfYWRkKG5vZGVzLCBuYW1lLCBkYXRhKSA6IEVOT01FTTsNCj4+ICvCoMKgwqAg fSBlbHNlDQo+PiArwqDCoMKgwqDCoMKgwqAgcmV0ID0gaGFzaHRhYmxlX3JlcGxhY2Uobm9k ZXMsIGRiX25hbWUsIGRhdGEpOw0KPj4gKw0KPj4gK8KgwqDCoCBpZiAocmV0KSB7DQo+PiAr wqDCoMKgwqDCoMKgwqAgLyogRnJlZSBkYXRhLCBhcyBpdCBpc24ndCBvd25lZCBieSBoYXNo dGFibGUgbm93LiAqLw0KPj4gK8KgwqDCoMKgwqDCoMKgIHRhbGxvY19mcmVlKGRhdGEpOw0K Pj4gK8KgwqDCoMKgwqDCoMKgIGRvbWFpbl9tZW1vcnlfYWRkX25vY2hrKGNvbm4sIG5ld19k b21pZCwgLXNpemUgLSBuYW1lX2xlbik7DQo+PiDCoMKgwqDCoMKgwqDCoMKgwqAgLyogRXJy b3IgcGF0aCwgc28gbm8gcXVvdGEgY2hlY2suICovDQo+PiDCoMKgwqDCoMKgwqDCoMKgwqAg aWYgKG9sZF9hY2MubWVtb3J5KQ0KPj4gwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgZG9t YWluX21lbW9yeV9hZGRfbm9jaGsoY29ubiwgb2xkX2RvbWlkLA0KPj4gLcKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgb2xkX2FjYy5tZW1vcnkgKyBr ZXkuZHNpemUpOw0KPj4gLcKgwqDCoMKgwqDCoMKgIGVycm5vID0gRUlPOw0KPj4gK8KgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgb2xkX2FjYy5tZW1v cnkgKyBuYW1lX2xlbik7DQo+PiArwqDCoMKgwqDCoMKgwqAgZXJybm8gPSByZXQ7DQo+PiDC oMKgwqDCoMKgwqDCoMKgwqAgcmV0dXJuIGVycm5vOw0KPj4gwqDCoMKgwqDCoCB9DQo+PiAt wqDCoMKgIHRyYWNlX3RkYigic3RvcmUgJXMgc2l6ZSAlenVcbiIsIGRiX25hbWUsIHNpemUg KyBrZXkuZHNpemUpOw0KPj4gK8KgwqDCoCB0cmFjZV90ZGIoInN0b3JlICVzIHNpemUgJXp1 XG4iLCBkYl9uYW1lLCBzaXplICsgbmFtZV9sZW4pOw0KPj4gwqDCoMKgwqDCoCBpZiAoYWNj KSB7DQo+PiDCoMKgwqDCoMKgwqDCoMKgwqAgLyogRG9uJ3QgdXNlIG5ld19kb21pZCwgYXMg aXQgbWlnaHQgYmUgYSB0cmFuc2FjdGlvbiBub2RlLiAqLw0KPj4gQEAgLTY4MCw5ICs2ODUs NiBAQCBpbnQgZGJfZGVsZXRlKHN0cnVjdCBjb25uZWN0aW9uICpjb25uLCBjb25zdCBjaGFy ICpuYW1lLA0KPiANCj4gQUZBSUNULCB3ZSB3aWxsIGFsd2F5cyByZXR1cm4gMCBhZnRlciB0 aGlzIHBhdGNoLiBEbyB5b3UgcGxhbiB0byBjbGVhbi11cCB0aGUgDQo+IHJldHVybiB0eXBl Pw0KDQpHb29kIGNhdGNoLiBXaWxsIGRvIGl0IGluIGEgZm9sbG93dXAgcGF0Y2guDQoNCj4g DQo+PiDCoCB7DQo+PiDCoMKgwqDCoMKgIHN0cnVjdCBub2RlX2FjY291bnRfZGF0YSB0bXBf YWNjOw0KPj4gwqDCoMKgwqDCoCB1bnNpZ25lZCBpbnQgZG9taWQ7DQo+PiAtwqDCoMKgIFRE Ql9EQVRBIGtleTsNCj4+IC0NCj4+IC3CoMKgwqAgc2V0X3RkYl9rZXkobmFtZSwgJmtleSk7 DQo+PiDCoMKgwqDCoMKgIGlmICghYWNjKSB7DQo+PiDCoMKgwqDCoMKgwqDCoMKgwqAgYWNj ID0gJnRtcF9hY2M7DQo+PiBAQCAtNjkxLDE1ICs2OTMsMTMgQEAgaW50IGRiX2RlbGV0ZShz dHJ1Y3QgY29ubmVjdGlvbiAqY29ubiwgY29uc3QgY2hhciAqbmFtZSwNCj4+IMKgwqDCoMKg wqAgZ2V0X2FjY19kYXRhKG5hbWUsIGFjYyk7DQo+PiAtwqDCoMKgIGlmICh0ZGJfZGVsZXRl KHRkYl9jdHgsIGtleSkpIHsNCj4+IC3CoMKgwqDCoMKgwqDCoCBlcnJubyA9IEVJTzsNCj4+ IC3CoMKgwqDCoMKgwqDCoCByZXR1cm4gZXJybm87DQo+PiAtwqDCoMKgIH0NCj4+ICvCoMKg wqAgaGFzaHRhYmxlX3JlbW92ZShub2RlcywgbmFtZSk7DQo+PiDCoMKgwqDCoMKgIHRyYWNl X3RkYigiZGVsZXRlICVzXG4iLCBuYW1lKTsNCj4+IMKgwqDCoMKgwqAgaWYgKGFjYy0+bWVt b3J5KSB7DQo+PiDCoMKgwqDCoMKgwqDCoMKgwqAgZG9taWQgPSBnZXRfYWNjX2RvbWlkKGNv bm4sIG5hbWUsIGFjYy0+ZG9taWQpOw0KPj4gLcKgwqDCoMKgwqDCoMKgIGRvbWFpbl9tZW1v cnlfYWRkX25vY2hrKGNvbm4sIGRvbWlkLCAtYWNjLT5tZW1vcnkgLSBrZXkuZHNpemUpOw0K Pj4gK8KgwqDCoMKgwqDCoMKgIGRvbWFpbl9tZW1vcnlfYWRkX25vY2hrKGNvbm4sIGRvbWlk LA0KPj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIC1hY2MtPm1l bW9yeSAtIHN0cmxlbihuYW1lKSk7DQo+PiDCoMKgwqDCoMKgIH0NCj4+IMKgwqDCoMKgwqAg cmV0dXJuIDA7DQo+PiBAQCAtMjM1Miw0MyArMjM1MiwyOSBAQCBzdGF0aWMgdm9pZCBtYW51 YWxfbm9kZShjb25zdCBjaGFyICpuYW1lLCBjb25zdCBjaGFyIA0KPj4gKmNoaWxkKQ0KPj4g wqDCoMKgwqDCoCB0YWxsb2NfZnJlZShub2RlKTsNCj4+IMKgIH0NCj4+IC1zdGF0aWMgdm9p ZCB0ZGJfbG9nZ2VyKFREQl9DT05URVhUICp0ZGIsIGludCBsZXZlbCwgY29uc3QgY2hhciAq IGZtdCwgLi4uKQ0KPj4gK3N0YXRpYyB1bnNpZ25lZCBpbnQgaGFzaF9mcm9tX2tleV9mbihj b25zdCB2b2lkICprKQ0KPj4gwqAgew0KPj4gLcKgwqDCoCB2YV9saXN0IGFwOw0KPj4gLcKg wqDCoCBjaGFyICpzOw0KPj4gLcKgwqDCoCBpbnQgc2F2ZWRfZXJybm8gPSBlcnJubzsNCj4+ ICvCoMKgwqAgY29uc3QgY2hhciAqc3RyID0gazsNCj4+ICvCoMKgwqAgdW5zaWduZWQgaW50 IGhhc2ggPSA1MzgxOw0KPj4gK8KgwqDCoCBjaGFyIGM7DQo+PiAtwqDCoMKgIHZhX3N0YXJ0 KGFwLCBmbXQpOw0KPj4gLcKgwqDCoCBzID0gdGFsbG9jX3Zhc3ByaW50ZihOVUxMLCBmbXQs IGFwKTsNCj4+IC3CoMKgwqAgdmFfZW5kKGFwKTsNCj4+ICvCoMKgwqAgd2hpbGUgKChjID0g KnN0cisrKSkNCj4+ICvCoMKgwqDCoMKgwqDCoCBoYXNoID0gKChoYXNoIDw8IDUpICsgaGFz aCkgKyAodW5zaWduZWQgaW50KWM7DQo+PiAtwqDCoMKgIGlmIChzKSB7DQo+PiAtwqDCoMKg wqDCoMKgwqAgdHJhY2UoIlREQjogJXNcbiIsIHMpOw0KPj4gLcKgwqDCoMKgwqDCoMKgIHN5 c2xvZyhMT0dfRVJSLCAiVERCOiAlcyIswqAgcyk7DQo+PiAtwqDCoMKgwqDCoMKgwqAgaWYg KHZlcmJvc2UpDQo+PiAtwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB4cHJpbnRmKCJUREI6ICVz Iiwgcyk7DQo+PiAtwqDCoMKgwqDCoMKgwqAgdGFsbG9jX2ZyZWUocyk7DQo+PiAtwqDCoMKg IH0gZWxzZSB7DQo+PiAtwqDCoMKgwqDCoMKgwqAgdHJhY2UoInRhbGxvYyBmYWlsdXJlIGR1 cmluZyBsb2dnaW5nXG4iKTsNCj4+IC3CoMKgwqDCoMKgwqDCoCBzeXNsb2coTE9HX0VSUiwg InRhbGxvYyBmYWlsdXJlIGR1cmluZyBsb2dnaW5nXG4iKTsNCj4+IC3CoMKgwqAgfQ0KPj4g K8KgwqDCoCByZXR1cm4gaGFzaDsNCj4+ICt9DQo+PiAtwqDCoMKgIGVycm5vID0gc2F2ZWRf ZXJybm87DQo+PiArc3RhdGljIGludCBrZXlzX2VxdWFsX2ZuKGNvbnN0IHZvaWQgKmtleTEs IGNvbnN0IHZvaWQgKmtleTIpDQo+PiArew0KPj4gK8KgwqDCoCByZXR1cm4gMCA9PSBzdHJj bXAoa2V5MSwga2V5Mik7DQo+PiDCoCB9DQo+PiDCoCB2b2lkIHNldHVwX3N0cnVjdHVyZShi b29sIGxpdmVfdXBkYXRlKQ0KPj4gwqAgew0KPj4gLcKgwqDCoCBjaGFyICp0ZGJuYW1lOw0K Pj4gLQ0KPj4gLcKgwqDCoCB0ZGJuYW1lID0gdGFsbG9jX3N0cmR1cCh0YWxsb2NfYXV0b2Zy ZWVfY29udGV4dCgpLCAiL2Rldi9tZW0iKTsNCj4+IC3CoMKgwqAgaWYgKCF0ZGJuYW1lKQ0K Pj4gLcKgwqDCoMKgwqDCoMKgIGJhcmZfcGVycm9yKCJDb3VsZCBub3QgY3JlYXRlIHRkYm5h bWUiKTsNCj4+IC0NCj4+IC3CoMKgwqAgdGRiX2N0eCA9IHRkYl9vcGVuX2V4KHRkYm5hbWUs IDc5MTksIFREQl9JTlRFUk5BTCB8IFREQl9OT0xPQ0ssDQo+PiAtwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoCBPX1JEV1IgfCBPX0NSRUFUIHwgT19FWENMIHwgT19DTE9F WEVDLA0KPj4gLcKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgMDY0MCwgJnRk Yl9sb2dnZXIsIE5VTEwpOw0KPj4gLcKgwqDCoCBpZiAoIXRkYl9jdHgpDQo+PiAtwqDCoMKg wqDCoMKgwqAgYmFyZl9wZXJyb3IoIkNvdWxkIG5vdCBjcmVhdGUgdGRiIGZpbGUgJXMiLCB0 ZGJuYW1lKTsNCj4+ICvCoMKgwqAgbm9kZXMgPSBjcmVhdGVfaGFzaHRhYmxlKE5VTEwsICJu b2RlcyIsIGhhc2hfZnJvbV9rZXlfZm4sIGtleXNfZXF1YWxfZm4sDQo+PiArwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgSEFTSFRBQkxFX0ZSRUVfS0VZIHwgSEFTSFRBQkxF X0ZSRUVfVkFMVUUpOw0KPj4gK8KgwqDCoCBpZiAoIW5vZGVzKQ0KPj4gK8KgwqDCoMKgwqDC oMKgIGJhcmZfcGVycm9yKCJDb3VsZCBub3QgY3JlYXRlIG5vZGVzIGhhc2h0YWJsZSIpOw0K Pj4gwqDCoMKgwqDCoCBpZiAobGl2ZV91cGRhdGUpDQo+PiDCoMKgwqDCoMKgwqDCoMKgwqAg bWFudWFsX25vZGUoIi8iLCBOVUxMKTsNCj4+IEBAIC0yNDAyLDI0ICsyMzg4LDYgQEAgdm9p ZCBzZXR1cF9zdHJ1Y3R1cmUoYm9vbCBsaXZlX3VwZGF0ZSkNCj4+IMKgwqDCoMKgwqAgfQ0K Pj4gwqAgfQ0KPj4gLXN0YXRpYyB1bnNpZ25lZCBpbnQgaGFzaF9mcm9tX2tleV9mbihjb25z dCB2b2lkICprKQ0KPj4gLXsNCj4+IC3CoMKgwqAgY29uc3QgY2hhciAqc3RyID0gazsNCj4+ IC3CoMKgwqAgdW5zaWduZWQgaW50IGhhc2ggPSA1MzgxOw0KPj4gLcKgwqDCoCBjaGFyIGM7 DQo+PiAtDQo+PiAtwqDCoMKgIHdoaWxlICgoYyA9ICpzdHIrKykpDQo+PiAtwqDCoMKgwqDC oMKgwqAgaGFzaCA9ICgoaGFzaCA8PCA1KSArIGhhc2gpICsgKHVuc2lnbmVkIGludCljOw0K Pj4gLQ0KPj4gLcKgwqDCoCByZXR1cm4gaGFzaDsNCj4+IC19DQo+PiAtDQo+PiAtDQo+PiAt c3RhdGljIGludCBrZXlzX2VxdWFsX2ZuKGNvbnN0IHZvaWQgKmtleTEsIGNvbnN0IHZvaWQg KmtleTIpDQo+PiAtew0KPj4gLcKgwqDCoCByZXR1cm4gMCA9PSBzdHJjbXAoa2V5MSwga2V5 Mik7DQo+PiAtfQ0KPj4gLQ0KPj4gwqAgaW50IHJlbWVtYmVyX3N0cmluZyhzdHJ1Y3QgaGFz aHRhYmxlICpoYXNoLCBjb25zdCBjaGFyICpzdHIpDQo+PiDCoCB7DQo+PiDCoMKgwqDCoMKg IGNoYXIgKmsgPSB0YWxsb2Nfc3RyZHVwKE5VTEwsIHN0cik7DQo+PiBAQCAtMjQ3OSwxMiAr MjQ0NywxMSBAQCBzdGF0aWMgaW50IGNoZWNrX3N0b3JlX2Vub2VudChjb25zdCB2b2lkICpj dHgsIHN0cnVjdCANCj4+IGNvbm5lY3Rpb24gKmNvbm4sDQo+PiDCoCAvKioNCj4+IMKgwqAg KiBIZWxwZXIgdG8gY2xlYW5fc3RvcmUgYmVsb3cuDQo+PiDCoMKgICovDQo+PiAtc3RhdGlj IGludCBjbGVhbl9zdG9yZV8oVERCX0NPTlRFWFQgKnRkYiwgVERCX0RBVEEga2V5LCBUREJf REFUQSB2YWwsDQo+PiAtwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB2b2lkICpwcml2YXRlKQ0K Pj4gK3N0YXRpYyBpbnQgY2xlYW5fc3RvcmVfKGNvbnN0IHZvaWQgKmtleSwgdm9pZCAqdmFs LCB2b2lkICpwcml2YXRlKQ0KPj4gwqAgew0KPj4gwqDCoMKgwqDCoCBzdHJ1Y3QgaGFzaHRh YmxlICpyZWFjaGFibGUgPSBwcml2YXRlOw0KPj4gwqDCoMKgwqDCoCBjaGFyICpzbGFzaDsN Cj4+IC3CoMKgwqAgY2hhciAqIG5hbWUgPSB0YWxsb2Nfc3RybmR1cChOVUxMLCBrZXkuZHB0 ciwga2V5LmRzaXplKTsNCj4+ICvCoMKgwqAgY2hhciAqbmFtZSA9IHRhbGxvY19zdHJkdXAo TlVMTCwga2V5KTsNCj4+IMKgwqDCoMKgwqAgaWYgKCFuYW1lKSB7DQo+PiDCoMKgwqDCoMKg wqDCoMKgwqAgbG9nKCJjbGVhbl9zdG9yZTogRU5PTUVNIik7DQo+PiBAQCAtMjUxNCw3ICsy NDgxLDcgQEAgc3RhdGljIGludCBjbGVhbl9zdG9yZV8oVERCX0NPTlRFWFQgKnRkYiwgVERC X0RBVEEga2V5LCANCj4+IFREQl9EQVRBIHZhbCwNCj4+IMKgwqAgKi8NCj4+IMKgIHN0YXRp YyB2b2lkIGNsZWFuX3N0b3JlKHN0cnVjdCBjaGVja19zdG9yZV9kYXRhICpkYXRhKQ0KPj4g wqAgew0KPj4gLcKgwqDCoCB0ZGJfdHJhdmVyc2UodGRiX2N0eCwgJmNsZWFuX3N0b3JlXywg ZGF0YS0+cmVhY2hhYmxlKTsNCj4+ICvCoMKgwqAgaGFzaHRhYmxlX2l0ZXJhdGUobm9kZXMs IGNsZWFuX3N0b3JlXywgZGF0YS0+cmVhY2hhYmxlKTsNCj4+IMKgwqDCoMKgwqAgZG9tYWlu X2NoZWNrX2FjYyhkYXRhLT5kb21haW5zKTsNCj4+IMKgIH0NCj4+IGRpZmYgLS1naXQgYS90 b29scy94ZW5zdG9yZS94ZW5zdG9yZWRfY29yZS5oIGIvdG9vbHMveGVuc3RvcmUveGVuc3Rv cmVkX2NvcmUuaA0KPj4gaW5kZXggZTkyMmRjZTc3NS4uNjNjMjExMDEzNSAxMDA2NDQNCj4+ IC0tLSBhL3Rvb2xzL3hlbnN0b3JlL3hlbnN0b3JlZF9jb3JlLmgNCj4+ICsrKyBiL3Rvb2xz L3hlbnN0b3JlL3hlbnN0b3JlZF9jb3JlLmgNCj4+IEBAIC0zMyw3ICszMyw2IEBADQo+PiDC oCAjaW5jbHVkZSAieGVuc3RvcmVfbGliLmgiDQo+PiDCoCAjaW5jbHVkZSAieGVuc3RvcmVf c3RhdGUuaCINCj4+IMKgICNpbmNsdWRlICJsaXN0LmgiDQo+PiAtI2luY2x1ZGUgInRkYi5o Ig0KPj4gwqAgI2luY2x1ZGUgImhhc2h0YWJsZS5oIg0KPj4gwqAgI2lmbmRlZiBPX0NMT0VY RUMNCj4+IEBAIC0yMzYsMTMgKzIzNSwxMyBAQCBzdGF0aWMgaW5saW5lIHVuc2lnbmVkIGlu dCBnZXRfbm9kZV9vd25lcihjb25zdCBzdHJ1Y3QgDQo+PiBub2RlICpub2RlKQ0KPj4gwqDC oMKgwqDCoCByZXR1cm4gbm9kZS0+cGVybXMucFswXS5pZDsNCj4+IMKgIH0NCj4+IC0vKiBX cml0ZSBhIG5vZGUgdG8gdGhlIHRkYiBkYXRhIGJhc2UuICovDQo+PiArLyogV3JpdGUgYSBu b2RlIHRvIHRoZSBkYXRhIGJhc2UuICovDQo+PiDCoCBpbnQgd3JpdGVfbm9kZV9yYXcoc3Ry dWN0IGNvbm5lY3Rpb24gKmNvbm4sIGNvbnN0IGNoYXIgKmRiX25hbWUsDQo+PiDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqAgc3RydWN0IG5vZGUgKm5vZGUsIGludCBmbGFnLCBib29sIG5v X3F1b3RhX2NoZWNrKTsNCj4+IMKgICNkZWZpbmUgTk9ERV9DUkVBVEUgMA0KPj4gwqAgI2Rl ZmluZSBOT0RFX01PRElGWSAxDQo+PiAtLyogR2V0IGEgbm9kZSBmcm9tIHRoZSB0ZGIgZGF0 YSBiYXNlLiAqLw0KPj4gKy8qIEdldCBhIG5vZGUgZnJvbSB0aGUgZGF0YSBiYXNlLiAqLw0K Pj4gwqAgc3RydWN0IG5vZGUgKnJlYWRfbm9kZShzdHJ1Y3QgY29ubmVjdGlvbiAqY29ubiwg Y29uc3Qgdm9pZCAqY3R4LA0KPj4gwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAg Y29uc3QgY2hhciAqbmFtZSk7DQo+PiBkaWZmIC0tZ2l0IGEvdG9vbHMveGVuc3RvcmUveGVu c3RvcmVkX3RyYW5zYWN0aW9uLmMgDQo+PiBiL3Rvb2xzL3hlbnN0b3JlL3hlbnN0b3JlZF90 cmFuc2FjdGlvbi5jDQo+PiBpbmRleCBjNTFlZGY0MzJmLi4yMTcwMGMyZTg0IDEwMDY0NA0K Pj4gLS0tIGEvdG9vbHMveGVuc3RvcmUveGVuc3RvcmVkX3RyYW5zYWN0aW9uLmMNCj4+ICsr KyBiL3Rvb2xzL3hlbnN0b3JlL3hlbnN0b3JlZF90cmFuc2FjdGlvbi5jDQo+PiBAQCAtNDAz LDcgKzQwMyw2IEBAIHN0YXRpYyBpbnQgZmluYWxpemVfdHJhbnNhY3Rpb24oc3RydWN0IGNv bm5lY3Rpb24gKmNvbm4sDQo+PiDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqAgPyBOT0RFX0NSRUFURSA6IE5PREVfTU9ESUZZOw0KPj4gwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAqaXNfY29ycnVwdCB8PSBkYl93cml0ZShj b25uLCBpLT5ub2RlLCBkYXRhLA0KPj4gwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBzaXplLCBOVUxMLCBmbGFnLCB0cnVlKTsN Cj4+IC3CoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgdGFsbG9jX2ZyZWUoZGF0YSk7 DQo+IA0KPiBJdCBpcyBub3QgY2xlYXIgdG8gbWUgd2h5IHRoaXMgZnJlZSB3YXMgcmVtb3Zl ZC4NCg0KU2VlIGRiX3dyaXRlKCkuIGRhdGEgaXMgbm93IGVpdGhlciBvd25lZCBieSB0aGUg aGFzaHRhYmxlIGVudHJ5LCBvciBpdCBoYXMgYmVlbg0KZnJlZWQgaW4gZGJfd3JpdGUoKSBp biB0aGUgZXJyb3IgY2FzZS4NCg0KDQpKdWVyZ2VuDQo= --------------ktCg8aWSccVcjtJc9khwfjUb Content-Type: application/pgp-keys; name="OpenPGP_0xB0DE9DD628BF132F.asc" Content-Disposition: attachment; filename="OpenPGP_0xB0DE9DD628BF132F.asc" Content-Description: OpenPGP public key Content-Transfer-Encoding: quoted-printable -----BEGIN PGP PUBLIC KEY BLOCK----- xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjri oyspZKOBycWxw3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2 kaV2KL9650I1SJvedYm8Of8Zd621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i 1TXkH09XSSI8mEQ/ouNcMvIJNwQpd369y9bfIhWUiVXEK7MlRgUG6MvIj6Y3Am/B BLUVbDa4+gmzDC9ezlZkTZG2t14zWPvxXP3FAp2pkW0xqG7/377qptDmrk42GlSK N4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEBAAHNHEp1ZXJnZW4gR3Jvc3Mg PGpnQHBmdXBmLm5ldD7CwHkEEwECACMFAlOMcBYCGwMHCwkIBwMCAQYVCAIJCgsE FgIDAQIeAQIXgAAKCRCw3p3WKL8TL0KdB/93FcIZ3GCNwFU0u3EjNbNjmXBKDY4F UGNQH2lvWAUy+dnyThpwdtF/jQ6j9RwE8VP0+NXcYpGJDWlNb9/JmYqLiX2Q3Tye vpB0CA3dbBQp0OW0fgCetToGIQrg0MbD1C/sEOv8Mr4NAfbauXjZlvTj30H2jO0u +6WGM6nHwbh2l5O8ZiHkH32iaSTfN7Eu5RnNVUJbvoPHZ8SlM4KWm8rG+lIkGurq qu5gu8q8ZMKdsdGC4bBxdQKDKHEFExLJK/nRPFmAuGlId1E3fe10v5QL+qHI3EIP tyfE7i9Hz6rVwi7lWKgh7pe0ZvatAudZ+JNIlBKptb64FaiIOAWDCx1SzR9KdWVy Z2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+wsB5BBMBAgAjBQJTjHCvAhsDBwsJ CAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey/HmQf/RtI7kv5A2PS4 RF7HoZhPVPogNVbC4YA6lW7DrWf0teC0RR3MzXfy6pJ+7KLgkqMlrAbN/8Dvjoz7 8X+5vhH/rDLa9BuZQlhFmvcGtCF8eR0T1v0nC/nuAFVGy+67q2DH8As3KPu0344T BDpAvr2uYM4tSqxK4DURx5INz4ZZ0WNFHcqsfvlGJALDeE0LhITTd9jLzdDad1pQ SToCnLl6SBJZjDOX9QQcyUigZFtCXFst4dlsvddrxyqT1f17+2cFSdu7+ynLmXBK 7abQ3rwJY8SbRO2iRulogc5vr/RLMMlscDAiDkaFQWLoqHHOdfO9rURssHNN8WkM nQfvUewRz80hSnVlcmdlbiBHcm9zcyA8amdyb3NzQG5vdmVsbC5jb20+wsB5BBMB AgAjBQJTjHDXAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/ Ey8PUQf/ehmgCI9jB9hlgexLvgOtf7PJnFOXgMLdBQgBlVPO3/D9R8LtF9DBAFPN hlrsfIG/SqICoRCqUcJ96Pn3P7UUinFG/I0ECGF4EvTE1jnDkfJZr6jrbjgyoZHi w/4BNwSTL9rWASyLgqlA8u1mf+c2yUwcGhgkRAd1gOwungxcwzwqgljf0N51N5Jf VRHRtyfwq/ge+YEkDGcTU6Y0sPOuj4Dyfm8fJzdfHNQsWq3PnczLVELStJNdapwP OoE+lotufe3AM2vAEYJ9rTz3Cki4JFUsgLkHFqGZarrPGi1eyQcXeluldO3m91NK /1xMI3/+8jbO0tsn1tqSEUGIJi7ox80eSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1 c2UuZGU+wsB5BBMBAgAjBQJTjHDrAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgEC F4AACgkQsN6d1ii/Ey+LhQf9GL45eU5vOowA2u5N3g3OZUEBmDHVVbqMtzwlmNC4 k9Kx39r5s2vcFl4tXqW7g9/ViXYuiDXb0RfUpZiIUW89siKrkzmQ5dM7wRqzgJpJ wK8Bn2MIxAKArekWpiCKvBOB/Cc+3EXE78XdlxLyOi/NrmSGRIov0karw2RzMNOu 5D+jLRZQd1Sv27AR+IP3I8U4aqnhLpwhK7MEy9oCILlgZ1QZe49kpcumcZKORmzB TNh30FVKK1EvmV2xAKDoaEOgQB4iFQLhJCdP1I5aSgM5IVFdn7v5YgEYuJYx37Io N1EblHI//x/e2AaIHpzK5h88NEawQsaNRpNSrcfbFmAg987ATQRTjHAWAQgAyzH6 AOODMBjgfWE9VeCgsrwH3exNAU32gLq2xvjpWnHIs98ndPUDpnoxWQugJ6MpMncr 0xSwFmHEgnSEjK/PAjppgmyc57BwKII3sV4on+gDVFJR6Y8ZRwgnBC5mVM6JjQ5x Dk8WRXljExRfUX9pNhdE5eBOZJrDRoLUmmjDtKzWaDhIg/+1Hzz93X4fCQkNVbVF LELU9bMaLPBG/x5q4iYZ2k2ex6d47YE1ZFdMm6YBYMOljGkZKwYde5ldM9mo45mm we0icXKLkpEdIXKTZeKDO+Hdv1aqFuAcccTg9RXDQjmwhC3yEmrmcfl0+rPghO0I v3OOImwTEe4co3c1mwARAQABwsBfBBgBAgAJBQJTjHAWAhsMAAoJELDendYovxMv Q/gH/1ha96vm4P/L+bQpJwrZ/dneZcmEwTbe8YFsw2V/Buv6Z4Mysln3nQK5ZadD 534CF7TDVft7fC4tU4PONxF5D+/tvgkPfDAfF77zy2AH1vJzQ1fOU8lYFpZXTXIH b+559UqvIB8AdgR3SAJGHHt4RKA0F7f5ipYBBrC6cyXJyyoprT10EMvU8VGiwXvT yJz3fjoYsdFzpWPlJEBRMedCot60g5dmbdrZ5DWClAr0yau47zpWj3enf1tLWaqc suylWsviuGjKGw7KHQd3bxALOknAp4dN3QwBYCKuZ7AddY9yjynVaD5X7nF9nO5B jR/i1DG86lem3iBDXzXsZDn8R38=3D =3D2wuH -----END PGP PUBLIC KEY BLOCK----- --------------ktCg8aWSccVcjtJc9khwfjUb-- --------------ds19vdV40vgIo3Jo69wssR77-- --------------9u6renJFc9RdOVgz1pe1VTfy Content-Type: application/pgp-signature; name="OpenPGP_signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="OpenPGP_signature" -----BEGIN PGP SIGNATURE----- wsB5BAABCAAjFiEEhRJncuj2BJSl0Jf3sN6d1ii/Ey8FAmSda3AFAwAAAAAACgkQsN6d1ii/Ey9D CAf+LCy/pBomDrZqOsAExqTCEIFH9vDWoBk44+NxTyW6WztjDtsnzB3CpxirAmWT18sDGZz9ZAy+ OJXOfui2BpLuw9sOPXgjsC/zhNksjmKJznk/Kq9MQe29ok7t+XDGVfxDFXOiKstvokMn2eG5FM/O meysQ038RVItCaWRlYG1ZBA/V/dYtQvZfq1CuULvHdJCAFPWTE6PvLq0xh9/9crPAVMSzwE9Nlas zDP7KLIyf3qr612Xu7naveLvavAIjRmt4MJJr8k3ni7StTTB6gowfVqOibrnXF09KkRZTEwte4Tw /bQFUlUbIU5UBANGkcEigOkwT/ytKcIsii1xcnegPA== =DOx9 -----END PGP SIGNATURE----- --------------9u6renJFc9RdOVgz1pe1VTfy-- From xen-devel-bounces@lists.xenproject.org Thu Jun 29 11:56:02 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 11:56:02 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556801.869571 (Exim 4.92) (envelope-from ) id 1qEqFU-0001xD-OJ; Thu, 29 Jun 2023 11:55:44 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556801.869571; Thu, 29 Jun 2023 11:55:44 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEqFU-0001x6-L7; Thu, 29 Jun 2023 11:55:44 +0000 Received: by outflank-mailman (input) for mailman id 556801; Thu, 29 Jun 2023 11:55:43 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEqFT-0001x0-Iq for xen-devel@lists.xenproject.org; Thu, 29 Jun 2023 11:55:43 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEqFT-0002bO-2Y; Thu, 29 Jun 2023 11:55:43 +0000 Received: from 54-240-197-234.amazon.com ([54.240.197.234] helo=[192.168.2.72]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qEqFS-00066g-Rr; Thu, 29 Jun 2023 11:55:42 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=QFkItA5zsvqGCS/6CoT3bFE1TKWbIyh6eXaJtu/ufD8=; b=Y0ggWk8h+0kwm6osHQVs0Z3q+g D/2AJzt8KzkiVf7JUPKaXH+KV5O7oJgYTQkIO3QbFkD/8ncMOC2mdnaHmHpZh99AmjOH2/Lf4deY9 1jCfh4rB0O2IrzRekyoDyunv85XK176mEVZhtZg+uFCCZC6BScm0Sxr9TE5aY+f/Y2cU=; Message-ID: <6a06868f-beea-13c3-5d18-23930c7dd971@xen.org> Date: Thu, 29 Jun 2023 12:55:40 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v3 24/52] xen/mpu: build up start-of-day Xen MPU memory region map Content-Language: en-US To: Ayan Kumar Halder , Penny Zheng , xen-devel@lists.xenproject.org Cc: Stefano Stabellini , Bertrand Marquis , Volodymyr Babchuk , Wei Chen References: <20230626033443.2943270-1-Penny.Zheng@arm.com> <20230626033443.2943270-25-Penny.Zheng@arm.com> <778688ab-8fd4-2b06-e644-b5a013bb56f7@amd.com> <39a5a729-0099-67e4-bf4a-c65ae99a4619@xen.org> <37e2856b-038e-6a3a-a6ff-c518dfeda552@amd.com> <301e2e02-f2ab-5538-d426-52a02a7f35b5@amd.com> From: Julien Grall In-Reply-To: <301e2e02-f2ab-5538-d426-52a02a7f35b5@amd.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Hi Ayan, On 29/06/2023 12:21, Ayan Kumar Halder wrote: > > On 28/06/2023 14:42, Julien Grall wrote: >> What's the guarantee that the compiler will not generate any >> instructions that could generate an alignment fault? > > I thought by writing in assembly, we tell the compiler what instructions > to generate. For eg > > ENTRY(set_boot_mpumap) >     push {r4} >     mov   r2, #0               /* table index */ > 1:  ldr   r3, [r1], #4         /* r3: prbar */ >     ldr   r4, [r1], #12        /* r4: prlar */ >     write_pr r2, r3, r4 >     add   r2, r2, #1           /* table index ++ */ >     cmp   r2, r0 >     blt  1b >     pop {r4} >     ret > ENDPROC(set_boot_mpumap) > > I ask the compiler to use ldr (and not ldrb) instructions. > > May be I am missing something very obvious here. The problem is not the assembly code. The problem is the C code. You wrote: /* * Since it is the MPU protection region which holds the XEN kernel that * needs updating. * The whole MPU system must be disabled for the update. */ disable_mpu(); /* * Set new MPU memory region configuration. * To avoid the mismatch between nr_xen_mpumap and nr_xen_mpumap * after the relocation of some MPU regions later, here * next_xen_mpumap_index is used. * To avoid unexpected unaligment access fault during MPU disabled, * set_boot_mpumap shall be written in assembly code. */ set_boot_mpumap(next_xen_mpumap_index, (pr_t *)boot_mpumap); enable_mpu(); You can't guarantee what assembly instructions the compiler will use for any of this code. So if you are concerned about unaligned access when the MPU is disabled, then you should never return to C (even temporarily) while the MPU is off. >> >> Furthermore, from my understanding, at least on Armv8-A, there are >> caching problem because you will need to save some registers (for the >> call to set_boot_mpumap()) on the stack with cache disabled. This >> means the cache will be bypassed. But you may then restore the >> registers with the cache enabled (the compiler could decide that it is >> not necessary to read the stack before hand). So you could read the >> wrong data if there is a stale cacheline. > > Yes, this makes some sense. So will the following make it correct :- I am confused. In a previous answer, I voiced my concerned with trying to replace the full MPU table. So it is not clear to me why you are asking me if the following work. Do you still want to do it? If so, why? > > 1. Execute 'dmb' before invoking enable_mpu(). This will ensure that the > registers are strictly restored in set_boot_mpumap() before the HSCTLR > is read. I am afraid I don't know how the DMB will enforce that. Can you clarify? > > We do have 'dsb sy' before modifying HSCTLR (ie enabling cache), but may > be we want to be stricter. > > 2. Invalidate the D cache after "mcr   CP32(r0, HSCTLR)" and then dsb > (to ensure d cache is invalidated), isb (flush the instruction cache as > MPU is enabled), ret. I might be missing something here. The ISB instruction will not flush the instruction cache, it will flush the pipeline instead and guarantee that previous instructions will complete before continuing. But overall, the easiest solution is to disable the MPU, update the MPU tables, and then re-enable the MPU all in assembly (i.e. no jump back to C even temporarily). So you control the accesses and can limit (if not remove) any write to the memory whilst the cache is disabled. Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Thu Jun 29 12:17:37 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 12:17:37 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556812.869611 (Exim 4.92) (envelope-from ) id 1qEqaT-0005Hm-Bp; Thu, 29 Jun 2023 12:17:25 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556812.869611; Thu, 29 Jun 2023 12:17:25 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEqaT-0005Hf-8p; Thu, 29 Jun 2023 12:17:25 +0000 Received: by outflank-mailman (input) for mailman id 556812; Thu, 29 Jun 2023 12:17:24 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEqaR-0004fh-UE for xen-devel@lists.xenproject.org; Thu, 29 Jun 2023 12:17:23 +0000 Received: from mail-ej1-x62c.google.com (mail-ej1-x62c.google.com [2a00:1450:4864:20::62c]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id e5ed28f2-1676-11ee-8611-37d641c3527e; Thu, 29 Jun 2023 14:17:21 +0200 (CEST) Received: by mail-ej1-x62c.google.com with SMTP id a640c23a62f3a-9928abc11deso79611466b.1 for ; Thu, 29 Jun 2023 05:17:21 -0700 (PDT) Received: from localhost.localdomain (default-46-102-197-194.interdsl.co.uk. [46.102.197.194]) by smtp.gmail.com with ESMTPSA id c15-20020a170906528f00b0098866a94f14sm6773841ejm.125.2023.06.29.05.17.20 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 29 Jun 2023 05:17:20 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: e5ed28f2-1676-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cloud.com; s=cloud; t=1688041041; x=1690633041; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=BzrdtU96n40B5f0Aax6fU5SmE6wgwpYc6Is6WaPAmEM=; b=OOTdQp+tu60q/YhuncmY1njlApzM15wUPRmmmUqJDfUajOpmtHLuzEkxAEwHxPm0DW +mhO17ZOeKKY5jGRbxPKJG4459IIrdDlxaQ++dFLHApuQxWI4MMtj+nQv9nXLpdeb+aN eTPUAPau5WGYZke0OjfRq8vS4eWIpn9TwgZ6s= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1688041041; x=1690633041; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=BzrdtU96n40B5f0Aax6fU5SmE6wgwpYc6Is6WaPAmEM=; b=e+L9O3tXJoaXVfGMcIT+CV5QQ/neD7dXT98zGD8UHwb63V8ULpcFbDj+SOrHUrsoKD dYxW+cwZKHzAFALkea+/sQbxL6SJDePFsAL/65eHS36TnXQ/3r1dA7/ds0kbLSmA0P6j FAk/Eg4A722r7mvNlXsUDcZe48Qg0lkaDBDg4TpzUGjcUoKHrTwttvM747IMGrM4tGuf C1bTPIy1pODUnQyfHtbJdRGWYVIjCq3xiOjXOPf+upbcPnBo5QaD+Dwh3UaXcvCWzClc r45guyd1Sqdj/YK/eesLkNHygBiOV3CugVRoQfSWSJHJG8hPooOVpBD5DEwwkL10lcmF 4YUA== X-Gm-Message-State: AC+VfDwrjmZjBnj9zleNcKBgn3UkcCQcvbZAwUvtLEA4+TFB1pxhpYsX clpuW5x+yHvb1nfnAtnCgtbBHS7Sz00Na4hvSIA= X-Google-Smtp-Source: ACHHUZ62hBOMhM4lRAjuzlrmK0IRmL5f342eqkwqJpAYDOw14d0gjM7ODQtbH6WX+mlGfa1OOwRkKQ== X-Received: by 2002:a17:907:9309:b0:97e:aace:b6bc with SMTP id bu9-20020a170907930900b0097eaaceb6bcmr32766075ejc.53.1688041040890; Thu, 29 Jun 2023 05:17:20 -0700 (PDT) From: Alejandro Vallejo To: Xen-devel Cc: Alejandro Vallejo Subject: [PATCH v3 2/3] x86/boot: Clear XD_DISABLE from the early boot path Date: Thu, 29 Jun 2023 13:17:12 +0100 Message-Id: <20230629121713.1211-3-alejandro.vallejo@cloud.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20230629121713.1211-1-alejandro.vallejo@cloud.com> References: <20230629121713.1211-1-alejandro.vallejo@cloud.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Intel CPUs have a bit in MSR_IA32_MISC_ENABLE that may prevent the NX bit from being advertised. Clear it unconditionally if we can't find the NX feature right away on boot. The conditions for the MSR being read on early boot are (in this order): * Long Mode is supported * NX isn't advertised * The vendor is Intel The order of checks has been chosen carefully so a virtualized Xen on a hypervisor that doesn't emulate that MSR (but supports NX) doesn't triple fault trying to access the non-existing MSR. With that done, we can remove the XD_DISABLE checks in the intel-specific init path (as they are already done in early assembly). Keep a printk to highlight the fact that NX was forcefully enabled. Signed-off-by: Alejandro Vallejo --- v3: * In head.S: s/has_nx/got_nx and s/nx_bit/nx * Style changes in assembly instructions (spaces + width modifiers) * Big comment in head.S replaced * Jump directly to .Lno_nx if NX not found and XD_DISABLE not present * Restored rdmsrl (previously refactored into rdmsr_safe() in v2) and removed XD_DISABLE clearing in C (as it's now done in head.S). * Moved printk in intel.c to highlight the XD_DISABLE override even when done in head.S --- xen/arch/x86/boot/head.S | 49 ++++++++++++++++++++++---- xen/arch/x86/cpu/intel.c | 16 ++++----- xen/arch/x86/include/asm/msr-index.h | 2 +- xen/arch/x86/include/asm/x86-vendors.h | 6 ++-- 4 files changed, 53 insertions(+), 20 deletions(-) diff --git a/xen/arch/x86/boot/head.S b/xen/arch/x86/boot/head.S index 9fbd602ea5..0e02c28f37 100644 --- a/xen/arch/x86/boot/head.S +++ b/xen/arch/x86/boot/head.S @@ -652,16 +652,53 @@ trampoline_setup: cpuid 1: mov %edx, CPUINFO_FEATURE_OFFSET(X86_FEATURE_LM) + sym_esi(boot_cpu_data) - /* Check for NX. Adjust EFER setting if available. */ - bt $cpufeat_bit(X86_FEATURE_NX), %edx - jnc 1f - orb $EFER_NXE >> 8, 1 + sym_esi(trampoline_efer) -1: - /* Check for availability of long mode. */ bt $cpufeat_bit(X86_FEATURE_LM),%edx jnc .Lbad_cpu + /* Check for NX */ + bt $cpufeat_bit(X86_FEATURE_NX), %edx + jc .Lgot_nx + + /* + * NX appears to be unsupported, but it might be hidden. + * + * The feature is part of the AMD64 spec, but the very first Intel + * 64bit CPUs lacked the feature, and thereafter there was a + * firmware knob to disable the feature. Undo the disable if + * possible. + * + * All 64bit Intel CPUs support this MSR. If virtualised, expect + * the hypervisor to either emulate the MSR or give us NX. + */ + xor %eax, %eax + cpuid + cmp $X86_VENDOR_INTEL_EBX, %ebx + jnz .Lno_nx + cmp $X86_VENDOR_INTEL_EDX, %edx + jnz .Lno_nx + cmp $X86_VENDOR_INTEL_ECX, %ecx + jnz .Lno_nx + + /* Clear the XD_DISABLE bit */ + mov $MSR_IA32_MISC_ENABLE, %ecx + rdmsr + btr $2, %edx + jnc .Lno_nx + wrmsr + orb $MSR_IA32_MISC_ENABLE_XD_DISABLE >> 32, 4 + sym_esi(trampoline_misc_enable_off) + + /* Check again for NX */ + mov $0x80000001, %eax + cpuid + bt $cpufeat_bit(X86_FEATURE_NX), %edx + jnc .Lno_nx + +.Lgot_nx: + /* Adjust EFER given that NX is present */ + orb $EFER_NXE >> 8, 1 + sym_esi(trampoline_efer) +.Lno_nx: + /* Stash TSC to calculate a good approximation of time-since-boot */ rdtsc mov %eax, sym_esi(boot_tsc_stamp) diff --git a/xen/arch/x86/cpu/intel.c b/xen/arch/x86/cpu/intel.c index 168cd58f36..b2443b6831 100644 --- a/xen/arch/x86/cpu/intel.c +++ b/xen/arch/x86/cpu/intel.c @@ -304,24 +304,20 @@ static void cf_check early_init_intel(struct cpuinfo_x86 *c) if (c->x86 == 15 && c->x86_cache_alignment == 64) c->x86_cache_alignment = 128; + if (bootsym(trampoline_misc_enable_off) & + MSR_IA32_MISC_ENABLE_XD_DISABLE) + printk(KERN_INFO + "re-enabled NX (Execute Disable) protection\n"); + /* Unmask CPUID levels and NX if masked: */ rdmsrl(MSR_IA32_MISC_ENABLE, misc_enable); - disable = misc_enable & (MSR_IA32_MISC_ENABLE_LIMIT_CPUID | - MSR_IA32_MISC_ENABLE_XD_DISABLE); + disable = misc_enable & MSR_IA32_MISC_ENABLE_LIMIT_CPUID; if (disable) { wrmsrl(MSR_IA32_MISC_ENABLE, misc_enable & ~disable); bootsym(trampoline_misc_enable_off) |= disable; - bootsym(trampoline_efer) |= EFER_NXE; - } - - if (disable & MSR_IA32_MISC_ENABLE_LIMIT_CPUID) printk(KERN_INFO "revised cpuid level: %d\n", cpuid_eax(0)); - if (disable & MSR_IA32_MISC_ENABLE_XD_DISABLE) { - write_efer(read_efer() | EFER_NXE); - printk(KERN_INFO - "re-enabled NX (Execute Disable) protection\n"); } /* CPUID workaround for Intel 0F33/0F34 CPU */ diff --git a/xen/arch/x86/include/asm/msr-index.h b/xen/arch/x86/include/asm/msr-index.h index 2749e433d2..4f861c0bb4 100644 --- a/xen/arch/x86/include/asm/msr-index.h +++ b/xen/arch/x86/include/asm/msr-index.h @@ -502,7 +502,7 @@ #define MSR_IA32_MISC_ENABLE_MONITOR_ENABLE (1<<18) #define MSR_IA32_MISC_ENABLE_LIMIT_CPUID (1<<22) #define MSR_IA32_MISC_ENABLE_XTPR_DISABLE (1<<23) -#define MSR_IA32_MISC_ENABLE_XD_DISABLE (1ULL << 34) +#define MSR_IA32_MISC_ENABLE_XD_DISABLE (_AC(1, ULL) << 34) #define MSR_IA32_TSC_DEADLINE 0x000006E0 #define MSR_IA32_ENERGY_PERF_BIAS 0x000001b0 diff --git a/xen/arch/x86/include/asm/x86-vendors.h b/xen/arch/x86/include/asm/x86-vendors.h index 0a37024cbd..9191da26d7 100644 --- a/xen/arch/x86/include/asm/x86-vendors.h +++ b/xen/arch/x86/include/asm/x86-vendors.h @@ -12,9 +12,9 @@ #define X86_VENDOR_UNKNOWN 0 #define X86_VENDOR_INTEL (1 << 0) -#define X86_VENDOR_INTEL_EBX 0x756e6547U /* "GenuineIntel" */ -#define X86_VENDOR_INTEL_ECX 0x6c65746eU -#define X86_VENDOR_INTEL_EDX 0x49656e69U +#define X86_VENDOR_INTEL_EBX _AC(0x756e6547, U) /* "GenuineIntel" */ +#define X86_VENDOR_INTEL_ECX _AC(0x6c65746e, U) +#define X86_VENDOR_INTEL_EDX _AC(0x49656e69, U) #define X86_VENDOR_AMD (1 << 1) #define X86_VENDOR_AMD_EBX 0x68747541U /* "AuthenticAMD" */ -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 29 12:17:37 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 12:17:37 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556809.869581 (Exim 4.92) (envelope-from ) id 1qEqaQ-0004Yk-LH; Thu, 29 Jun 2023 12:17:22 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556809.869581; Thu, 29 Jun 2023 12:17:22 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEqaQ-0004Yd-IG; Thu, 29 Jun 2023 12:17:22 +0000 Received: by outflank-mailman (input) for mailman id 556809; Thu, 29 Jun 2023 12:17:21 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEqaP-0004YX-PX for xen-devel@lists.xenproject.org; Thu, 29 Jun 2023 12:17:21 +0000 Received: from mail-ej1-x62c.google.com (mail-ej1-x62c.google.com [2a00:1450:4864:20::62c]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id e56952b5-1676-11ee-b237-6b7b168915f2; Thu, 29 Jun 2023 14:17:20 +0200 (CEST) Received: by mail-ej1-x62c.google.com with SMTP id a640c23a62f3a-98377c5d53eso73692266b.0 for ; Thu, 29 Jun 2023 05:17:20 -0700 (PDT) Received: from localhost.localdomain (default-46-102-197-194.interdsl.co.uk. [46.102.197.194]) by smtp.gmail.com with ESMTPSA id c15-20020a170906528f00b0098866a94f14sm6773841ejm.125.2023.06.29.05.17.19 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 29 Jun 2023 05:17:19 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: e56952b5-1676-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cloud.com; s=cloud; t=1688041040; x=1690633040; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=7B6K7Uvi8FFL++kLjnQI0eF2jsyd8bW5W+dYQU6booM=; b=ATPudzCeyZXToN9Jbfciu+XmAGqZp7gcg3yfulRB+fkAbliujipMa2B1Ap6V8pMO5D uIR2ny8ShOqwj4xWwLUUZRWvNbByftom5QkWIREsaRu4RcHHbLx+P9F3bhXmfcfUtI80 fh5ekKHNQFlvbKmtJvbvapZ0xKnfD0E6HBpNc= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1688041040; x=1690633040; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=7B6K7Uvi8FFL++kLjnQI0eF2jsyd8bW5W+dYQU6booM=; b=blC44XsHs7jP2mHR9LdH9bkTljbAUBRucUAqTAq+pFsNVeGILSQ29B0o/Ul5YFdZgi aWhxpLjp3bfz+2cWuwoAHndqA7Q7/CIuzcw4DYOs4Tpopb6nyuNbUICzFTKCoI9sk4gu Xeze+uBRd5tMNKuVm2LOtQxcKfYacq731iMAy9DKRX2fbGbsCCdv7tdRptjf95iuArU3 4GuqRgZZV3tPSccrvAzDZl6Bw2SCa6pRWydLm6N6J8tJa9PE5dyYu4PvFJFqUnDJG31/ k8oqS8KxZ7h1vzp03SzCYqRSLnHX/ATe6V17e63TSmsv9iss/xWNf3kxTSiUZjrhZCHN QkRA== X-Gm-Message-State: AC+VfDwal0oS8hnp7yCFZDG9dqBwkTy3SgjW7jbpVapXy6RHTTGFX1lZ oihx/XGpOGzb2iDdApRkgdXbS/+N0s60lLyTbVw= X-Google-Smtp-Source: ACHHUZ6wnctV4jAa8vvQdEo5GjSvpAD7Khq3vm25VZLJnArJkcbG8stcoDpiOq1pMnVDBs36Gmjjsw== X-Received: by 2002:a17:907:a01:b0:973:d1ce:dbe8 with SMTP id bb1-20020a1709070a0100b00973d1cedbe8mr31376448ejc.46.1688041039954; Thu, 29 Jun 2023 05:17:19 -0700 (PDT) From: Alejandro Vallejo To: Xen-devel Cc: Alejandro Vallejo Subject: [PATCH v3 0/3] Introduce a REQUIRE_NX Kconfig option Date: Thu, 29 Jun 2023 13:17:10 +0100 Message-Id: <20230629121713.1211-1-alejandro.vallejo@cloud.com> X-Mailer: git-send-email 2.34.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit v3: * Fixed a Gitlab CI breakage on older toolchains (patch 1) * Removed XD_DISABLE override logic from cpu/intel.c * Various style fixes to patch 2 (from Andrew's feedback) This option hardens Xen by forcing it to write secure (NX-enhanced) PTEs regardless of the runtime NX feature bit in boot_cpu_data. This prevents an attacker with partial write support from affecting Xen's PTE generation logic by overriding the NX feature flag. The patch asserts support for the NX bit in PTEs at boot time and if so short-circuits the cpu_has_nx macro to 1. Alejandro Vallejo (3): tools: Add __AC() macro to common-macros.h x86/boot: Clear XD_DISABLE from the early boot path x86: Add Kconfig option to require NX bit support tools/include/xen-tools/common-macros.h | 3 ++ tools/libs/light/libxl_internal.h | 2 - tools/tests/x86_emulator/x86-emulate.h | 3 -- xen/arch/x86/Kconfig | 16 +++++++ xen/arch/x86/boot/head.S | 62 ++++++++++++++++++++++--- xen/arch/x86/boot/trampoline.S | 3 +- xen/arch/x86/cpu/intel.c | 16 +++---- xen/arch/x86/efi/efi-boot.h | 9 ++++ xen/arch/x86/include/asm/cpufeature.h | 3 +- xen/arch/x86/include/asm/msr-index.h | 2 +- xen/arch/x86/include/asm/x86-vendors.h | 6 +-- 11 files changed, 98 insertions(+), 27 deletions(-) -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 29 12:17:37 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 12:17:37 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556810.869591 (Exim 4.92) (envelope-from ) id 1qEqaR-0004ng-SS; Thu, 29 Jun 2023 12:17:23 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556810.869591; Thu, 29 Jun 2023 12:17:23 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEqaR-0004nZ-PJ; Thu, 29 Jun 2023 12:17:23 +0000 Received: by outflank-mailman (input) for mailman id 556810; Thu, 29 Jun 2023 12:17:23 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEqaR-0004YX-3q for xen-devel@lists.xenproject.org; Thu, 29 Jun 2023 12:17:23 +0000 Received: from mail-lj1-x233.google.com (mail-lj1-x233.google.com [2a00:1450:4864:20::233]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id e682b8bf-1676-11ee-b237-6b7b168915f2; Thu, 29 Jun 2023 14:17:22 +0200 (CEST) Received: by mail-lj1-x233.google.com with SMTP id 38308e7fff4ca-2b69dcf45faso9122041fa.0 for ; Thu, 29 Jun 2023 05:17:22 -0700 (PDT) Received: from localhost.localdomain (default-46-102-197-194.interdsl.co.uk. [46.102.197.194]) by smtp.gmail.com with ESMTPSA id c15-20020a170906528f00b0098866a94f14sm6773841ejm.125.2023.06.29.05.17.20 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 29 Jun 2023 05:17:21 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: e682b8bf-1676-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cloud.com; s=cloud; t=1688041042; x=1690633042; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=AwoSGHZ6G/LeRP+DnNBp+JZLKpijyisI8If2qVcjwrc=; b=Ia4ITNouGr/++Gx6M+9NGp0ngRn7MtuhyusZFQ4XadNipiwPDJQBkJiELTTqgN8IcX mPHYQfOmNpPZClLWHSPN3sxB7dBok2rtPI04xB9hDSgr17gp74uMc77BYv/Hem+xCdhc ZOH7mpQsvrspEWFeyXm59GYIJUfLybK3YlQyQ= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1688041042; x=1690633042; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=AwoSGHZ6G/LeRP+DnNBp+JZLKpijyisI8If2qVcjwrc=; b=NnXJrddrJpab+hjc8THqHwEJ76Z2kvI/SfAhuz+5YKGDdHreiddw63YhmFMie7PvHP NpzxYrSfGS0+1lcNAONf2/uyQeljdbdTBbGv9loD56d5fp4sgbIr/i7SGj7uF/iY19IX yL93eazGEdj2cIpUyG7W7hf+mJDsHhbeq7fG9y+ZwkpoigSA3tUmPu2LVvAkcyMvUh8U FZqN2EvJISvtSrDKp5QtMtZpPk1oCxHzZhvw4rBFMgN23W5RoTsROajoD06bTObVrxJk ae+70lvrGLmMRU3CXwvYTfcmKUf/Xx1aqxZfV3aJjsjs6mNwlFWVkjjDCYvvy7qoBYUI Xvjw== X-Gm-Message-State: AC+VfDyfYGMu49gmPSAWp6+fT9QzBMtyA0OcPlyiJGyIgvMTh/WM74SW WQtjg8cxtN4W0+QSHex44AOgnSJnpXWqK5IM5TI= X-Google-Smtp-Source: ACHHUZ7Qy2E1RcNZwrCIWWDSTKZ38OFttujIjZVQ29ixBB9Ln4MMKEOzYfhj+NCZOIJe35HOloca7g== X-Received: by 2002:a2e:a1c9:0:b0:2b6:a841:e690 with SMTP id c9-20020a2ea1c9000000b002b6a841e690mr7399366ljm.42.1688041041753; Thu, 29 Jun 2023 05:17:21 -0700 (PDT) From: Alejandro Vallejo To: Xen-devel Cc: Alejandro Vallejo , Andrew Cooper Subject: [PATCH v3 3/3] x86: Add Kconfig option to require NX bit support Date: Thu, 29 Jun 2023 13:17:13 +0100 Message-Id: <20230629121713.1211-4-alejandro.vallejo@cloud.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20230629121713.1211-1-alejandro.vallejo@cloud.com> References: <20230629121713.1211-1-alejandro.vallejo@cloud.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit This option hardens Xen by forcing it to write secure (NX-enhanced) PTEs regardless of the runtime NX feature bit in boot_cpu_data. This prevents an attacker with partial write support from affecting Xen's PTE generation logic by overriding the NX feature flag. The patch asserts support for the NX bit in PTEs at boot time and if so short-circuits the cpu_has_nx macro to 1. It has the nice benefit of replacing many instances of runtime checks with folded constants. This has several knock-on effects that improve codegen, saving 2.5KiB off the text section. The config option defaults to OFF for compatibility with previous behaviour. Signed-off-by: Alejandro Vallejo Reviewed-by: Andrew Cooper --- xen/arch/x86/Kconfig | 16 ++++++++++++++++ xen/arch/x86/boot/head.S | 15 ++++++++++++++- xen/arch/x86/boot/trampoline.S | 3 ++- xen/arch/x86/efi/efi-boot.h | 9 +++++++++ xen/arch/x86/include/asm/cpufeature.h | 3 ++- 5 files changed, 43 insertions(+), 3 deletions(-) diff --git a/xen/arch/x86/Kconfig b/xen/arch/x86/Kconfig index 406445a358..92f3a627da 100644 --- a/xen/arch/x86/Kconfig +++ b/xen/arch/x86/Kconfig @@ -307,6 +307,22 @@ config MEM_SHARING bool "Xen memory sharing support (UNSUPPORTED)" if UNSUPPORTED depends on HVM +config REQUIRE_NX + bool "Require NX (No eXecute) support" + help + No-eXecute (also called XD "eXecute Disable" and DEP "Data + Execution Prevention") is a security feature designed originally + to combat buffer overflow attacks by marking regions of memory + which the CPU must not interpret as instructions. + + The NX feature exists in every 64bit CPU except for some very + early Pentium 4 Prescott machines. + + Enabling this option will improve Xen's security by removing + cases where Xen could be tricked into thinking that the feature + was unavailable. However, if enabled, Xen will no longer boot on + any CPU which is lacking NX support. + endmenu source "common/Kconfig" diff --git a/xen/arch/x86/boot/head.S b/xen/arch/x86/boot/head.S index 0e02c28f37..2e62d07f43 100644 --- a/xen/arch/x86/boot/head.S +++ b/xen/arch/x86/boot/head.S @@ -123,6 +123,7 @@ multiboot2_header: .Lbad_ldr_nih: .asciz "ERR: EFI ImageHandle is not provided by bootloader!" .Lbad_efi_msg: .asciz "ERR: EFI IA-32 platforms are not supported!" .Lbag_alg_msg: .asciz "ERR: Xen must be loaded at a 2Mb boundary!" +.Lno_nx_msg: .asciz "ERR: Not an NX-capable CPU!" .section .init.data, "aw", @progbits .align 4 @@ -153,6 +154,11 @@ early_error: /* Here to improve the disassembly. */ .Lnot_aligned: add $sym_offs(.Lbag_alg_msg), %esi jmp .Lget_vtb +#ifdef CONFIG_REQUIRE_NX +.Lno_nx: + add $sym_offs(.Lno_nx_msg), %esi + jmp .Lget_vtb +#endif .Lmb2_no_st: /* * Here we are on EFI platform. vga_text_buffer was zapped earlier @@ -656,7 +662,12 @@ trampoline_setup: bt $cpufeat_bit(X86_FEATURE_LM),%edx jnc .Lbad_cpu - /* Check for NX */ + /* + * Check for NX + * - If Xen was compiled requiring it simply assert it's + * supported. The trampoline already has the right constant. + * - Otherwise, update the trampoline EFER mask accordingly. + */ bt $cpufeat_bit(X86_FEATURE_NX), %edx jc .Lgot_nx @@ -695,9 +706,11 @@ trampoline_setup: jnc .Lno_nx .Lgot_nx: +#ifndef CONFIG_REQUIRE_NX /* Adjust EFER given that NX is present */ orb $EFER_NXE >> 8, 1 + sym_esi(trampoline_efer) .Lno_nx: +#endif /* Stash TSC to calculate a good approximation of time-since-boot */ rdtsc diff --git a/xen/arch/x86/boot/trampoline.S b/xen/arch/x86/boot/trampoline.S index c6005fa33d..b8ab0ffdcb 100644 --- a/xen/arch/x86/boot/trampoline.S +++ b/xen/arch/x86/boot/trampoline.S @@ -147,7 +147,8 @@ GLOBAL(trampoline_misc_enable_off) /* EFER OR-mask for boot paths. SCE conditional on PV support, NX added when available. */ GLOBAL(trampoline_efer) - .long EFER_LME | (EFER_SCE * IS_ENABLED(CONFIG_PV)) + .long EFER_LME | (EFER_SCE * IS_ENABLED(CONFIG_PV)) | \ + (EFER_NXE * IS_ENABLED(CONFIG_REQUIRE_NX)) GLOBAL(trampoline_xen_phys_start) .long 0 diff --git a/xen/arch/x86/efi/efi-boot.h b/xen/arch/x86/efi/efi-boot.h index c94e53d139..84700559bb 100644 --- a/xen/arch/x86/efi/efi-boot.h +++ b/xen/arch/x86/efi/efi-boot.h @@ -751,6 +751,15 @@ static void __init efi_arch_cpu(void) { caps[FEATURESET_e1d] = cpuid_edx(0x80000001); + /* + * This check purposefully doesn't use cpu_has_nx because + * cpu_has_nx bypasses the boot_cpu_data read if Xen was compiled + * with CONFIG_REQUIRE_NX + */ + if ( IS_ENABLED(CONFIG_REQUIRE_NX) && + !boot_cpu_has(X86_FEATURE_NX) ) + blexit(L"This Xen build requires NX bit support."); + if ( cpu_has_nx ) trampoline_efer |= EFER_NXE; } diff --git a/xen/arch/x86/include/asm/cpufeature.h b/xen/arch/x86/include/asm/cpufeature.h index e2cb8f3cc7..64e1dad225 100644 --- a/xen/arch/x86/include/asm/cpufeature.h +++ b/xen/arch/x86/include/asm/cpufeature.h @@ -91,7 +91,8 @@ static inline bool boot_cpu_has(unsigned int feat) #define cpu_has_hypervisor boot_cpu_has(X86_FEATURE_HYPERVISOR) /* CPUID level 0x80000001.edx */ -#define cpu_has_nx boot_cpu_has(X86_FEATURE_NX) +#define cpu_has_nx (IS_ENABLED(CONFIG_REQUIRE_NX) || \ + boot_cpu_has(X86_FEATURE_NX)) #define cpu_has_page1gb boot_cpu_has(X86_FEATURE_PAGE1GB) #define cpu_has_rdtscp boot_cpu_has(X86_FEATURE_RDTSCP) #define cpu_has_3dnow_ext boot_cpu_has(X86_FEATURE_3DNOWEXT) -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 29 12:17:37 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 12:17:37 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556811.869596 (Exim 4.92) (envelope-from ) id 1qEqaS-0004q0-6p; Thu, 29 Jun 2023 12:17:24 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556811.869596; Thu, 29 Jun 2023 12:17:24 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEqaS-0004pW-0G; Thu, 29 Jun 2023 12:17:24 +0000 Received: by outflank-mailman (input) for mailman id 556811; Thu, 29 Jun 2023 12:17:23 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEqaR-0004fh-8n for xen-devel@lists.xenproject.org; Thu, 29 Jun 2023 12:17:23 +0000 Received: from mail-ej1-x62f.google.com (mail-ej1-x62f.google.com [2a00:1450:4864:20::62f]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id e591f25f-1676-11ee-8611-37d641c3527e; Thu, 29 Jun 2023 14:17:21 +0200 (CEST) Received: by mail-ej1-x62f.google.com with SMTP id a640c23a62f3a-992acf67388so64654966b.1 for ; Thu, 29 Jun 2023 05:17:20 -0700 (PDT) Received: from localhost.localdomain (default-46-102-197-194.interdsl.co.uk. [46.102.197.194]) by smtp.gmail.com with ESMTPSA id c15-20020a170906528f00b0098866a94f14sm6773841ejm.125.2023.06.29.05.17.20 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 29 Jun 2023 05:17:20 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: e591f25f-1676-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cloud.com; s=cloud; t=1688041040; x=1690633040; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=grlCNcNmu0qMOofgdPdF1fg50b7DJa/DUX94vx0K8mA=; b=HipFc38voSMfXADOwHY6rTYFuz2SmTIs6OiN6y5qyBcgfHf66sa66Fpokgn93vBdSQ 911UNKjcW7vokvs+usMtIVukjw/rUGopPtlrfUIUvvsmus9m1F4tiTLs13+Do7w4W1AH k22FOs5nbVYQ4mWSKSJ95dsiDMuoyNZRW9am8= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1688041040; x=1690633040; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=grlCNcNmu0qMOofgdPdF1fg50b7DJa/DUX94vx0K8mA=; b=ZOJvLw9BZ4e8rqN4fgn8Fv4djaorV1vmtIWW/0dWt1nbaM1evrBshBdkqhfzyz5ATZ 0JQ/+hB1VHe42252OxTeHS51iyYGkAUmeWzFF1SkiLKjvWRxGMT8AFOD14kTfKH2YXbv VwxgDXXlfmDNJFu0i2NBlnSciTxqRWxHY2X532FyJakH6vvh1RKl7pVgcMtNP+TI2jQp 5iPSM3WH5AdGeysOUO/swxPuDP9ew/u8eyLl40GecYtsmtsyjYMVbp5wXyHyVtTxWYCr IvUBenodPxUd2LGgb2X2n3VzcWIlJuaVOzIAsNhYSzAD3SLLEJFoLhDDavTxsifnIyVB +sUg== X-Gm-Message-State: AC+VfDxQkzglkrgtoO1fUSRc81dL6xQcyZeqF002YMGyJizzYQr3w4vb wgW0nVC7s9jmH2hWQ9koRvnPAAH93PKQcYNhAWw= X-Google-Smtp-Source: ACHHUZ7tnbV1m7tIM9J2uTlKOF3A/4abEDUm0u/Rpgwpb+MaBH87kkX6vhb8f1c01weO76vlOyygUg== X-Received: by 2002:a17:907:e90:b0:991:e24f:b293 with SMTP id ho16-20020a1709070e9000b00991e24fb293mr8269534ejc.12.1688041040380; Thu, 29 Jun 2023 05:17:20 -0700 (PDT) From: Alejandro Vallejo To: Xen-devel Cc: Alejandro Vallejo Subject: [PATCH v3 1/3] tools: Add __AC() macro to common-macros.h Date: Thu, 29 Jun 2023 13:17:11 +0100 Message-Id: <20230629121713.1211-2-alejandro.vallejo@cloud.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20230629121713.1211-1-alejandro.vallejo@cloud.com> References: <20230629121713.1211-1-alejandro.vallejo@cloud.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Currently libxl and the x86-emulator tests carry their own versions. Factor those out into the common macros header so every library can make use of it. This is required so the following patch can add this macro to a header used both in Xen and tools/libs. No functional change. Signed-off-by: Alejandro Vallejo --- tools/include/xen-tools/common-macros.h | 3 +++ tools/libs/light/libxl_internal.h | 2 -- tools/tests/x86_emulator/x86-emulate.h | 3 --- 3 files changed, 3 insertions(+), 5 deletions(-) diff --git a/tools/include/xen-tools/common-macros.h b/tools/include/xen-tools/common-macros.h index 168691be0e..6d7de1bc0a 100644 --- a/tools/include/xen-tools/common-macros.h +++ b/tools/include/xen-tools/common-macros.h @@ -84,4 +84,7 @@ (type *)((char *)mptr__ - offsetof(type, member)); \ }) +#define __AC(X,Y) (X##Y) +#define _AC(X,Y) __AC(X,Y) + #endif /* __XEN_TOOLS_COMMON_MACROS__ */ diff --git a/tools/libs/light/libxl_internal.h b/tools/libs/light/libxl_internal.h index 61f4fe1dec..1cf3d400bf 100644 --- a/tools/libs/light/libxl_internal.h +++ b/tools/libs/light/libxl_internal.h @@ -125,8 +125,6 @@ #define PVSHIM_CMDLINE "pv-shim console=xen,pv" /* Size macros. */ -#define __AC(X,Y) (X##Y) -#define _AC(X,Y) __AC(X,Y) #define MB(_mb) (_AC(_mb, ULL) << 20) #define GB(_gb) (_AC(_gb, ULL) << 30) diff --git a/tools/tests/x86_emulator/x86-emulate.h b/tools/tests/x86_emulator/x86-emulate.h index aa1ed75ec8..350d1a0abf 100644 --- a/tools/tests/x86_emulator/x86-emulate.h +++ b/tools/tests/x86_emulator/x86-emulate.h @@ -59,9 +59,6 @@ #define cf_check /* No Control Flow Integriy checking */ -#define AC_(n,t) (n##t) -#define _AC(n,t) AC_(n,t) - #ifdef __GCC_ASM_FLAG_OUTPUTS__ # define ASM_FLAG_OUT(yes, no) yes #else -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 29 12:28:55 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 12:28:55 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556823.869622 (Exim 4.92) (envelope-from ) id 1qEqlV-0007os-IP; Thu, 29 Jun 2023 12:28:49 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556823.869622; Thu, 29 Jun 2023 12:28:49 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEqlV-0007ol-E0; Thu, 29 Jun 2023 12:28:49 +0000 Received: by outflank-mailman (input) for mailman id 556823; Thu, 29 Jun 2023 12:28:48 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEqlU-0007of-HO for xen-devel@lists.xenproject.org; Thu, 29 Jun 2023 12:28:48 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEqlU-0003Q5-1F; Thu, 29 Jun 2023 12:28:48 +0000 Received: from 54-240-197-234.amazon.com ([54.240.197.234] helo=[192.168.2.72]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qEqlT-0007aA-RR; Thu, 29 Jun 2023 12:28:47 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=St+CJo8MKwVqWAjm8033T97ctwOGtNlRq2HpuELe8lc=; b=hVXNJmIczj+GPxtcmMqRx6NNeH OXV1WHOERHc288eZIKudUBSTlBbUyGOclI4pvpPTbtSdaK+oR6ENDaphJ2q+wBp/0oJmh05KnTP1I C8NJIDo6SKMg76LsDZcM02XxpnZQvYUphftElfUZ4+ATn5F2NTQxvPNggCAwKwYkjBv4=; Message-ID: <96de11c9-6e9c-83f6-9d1b-39df600b549d@xen.org> Date: Thu, 29 Jun 2023 13:28:45 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH 2/9] xen/arm64: head: Don't map too much in boot_third Content-Language: en-US To: Michal Orzel , xen-devel@lists.xenproject.org Cc: Luca.Fancellu@arm.com, Henry.Wang@arm.com, Julien Grall , Stefano Stabellini , Bertrand Marquis , Volodymyr Babchuk References: <20230625204907.57291-1-julien@xen.org> <20230625204907.57291-3-julien@xen.org> <38f33ede-0d55-bd47-412a-eccb3d4618f2@amd.com> <7877f5af-12e2-808c-b2a2-fa0e302a00c3@xen.org> From: Julien Grall In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi, On 29/06/2023 08:26, Michal Orzel wrote: > On 28/06/2023 20:21, Julien Grall wrote: >> >> >> Hi, >> >> On 26/06/2023 12:28, Michal Orzel wrote: >>> On 25/06/2023 22:49, Julien Grall wrote: >>>> From: Julien Grall >>>> >>>> At the moment, we are mapping the size of the reserved area for Xen >>>> (i.e. 2MB) even if the binary is smaller. We don't exactly know what's >>>> after Xen, so it is not a good idea to map more than necessary for a >>>> couple of reasons: >>>> * We would need to use break-before-make if the extra PTE needs to >>>> be updated to point to another region >>>> * The extra area mapped may be mapped again by Xen with different >>>> memory attribute. This would result to attribue mismatch. >>> s/attribue/attribute >>> >>>> >>>> Therefore, rework the logic in create_page_tables() to map only what's >>>> necessary. To simplify the logic, we also want to make sure _end >>>> is page-aligned. So align the symbol in the linker and add an assert >>>> to catch any change. >>>> >>>> Signed-off-by: Julien Grall >>>> --- >>>> xen/arch/arm/arm64/head.S | 15 ++++++++++++++- >>>> xen/arch/arm/xen.lds.S | 3 +++ >>>> 2 files changed, 17 insertions(+), 1 deletion(-) >>>> >>>> diff --git a/xen/arch/arm/arm64/head.S b/xen/arch/arm/arm64/head.S >>>> index f37133cf7ccd..66bc85d4c39e 100644 >>>> --- a/xen/arch/arm/arm64/head.S >>>> +++ b/xen/arch/arm/arm64/head.S >>>> @@ -572,6 +572,19 @@ create_page_tables: >>>> create_table_entry boot_first, boot_second, x0, 1, x1, x2, x3 >>>> create_table_entry boot_second, boot_third, x0, 2, x1, x2, x3 >>>> >>>> + /* >>>> + * Find the size of Xen in pages and multiply by the size of a >>>> + * PTE. This will then be compared in the mapping loop below. >>>> + * >>>> + * Note the multiplication is just to avoid using an extra >>>> + * register/instruction per iteration. >>>> + */ >>>> + ldr x0, =_start /* x0 := vaddr(_start) */ >>> x0 is already set to vaddr of _start by the first instruction of create_page_tables >>> and is preserved by create_table_entry. You could just reuse it instead of re-loading. >> >> I agree that the load is technically redundant. However, I find this >> approach easier to read (you don't have to remember that _start equals >> XEN_VIRT_START). > Ok. As a side note not related to this patch, would it make sense to add an assert in linke > script to make sure _start equals XEN_VIRT_START, since we use them interchangeably? Good point. I can add it in this patch. Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Thu Jun 29 13:15:16 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 13:15:16 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556827.869631 (Exim 4.92) (envelope-from ) id 1qErU9-0004iQ-Vh; Thu, 29 Jun 2023 13:14:57 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556827.869631; Thu, 29 Jun 2023 13:14:57 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qErU9-0004iJ-T1; Thu, 29 Jun 2023 13:14:57 +0000 Received: by outflank-mailman (input) for mailman id 556827; Thu, 29 Jun 2023 13:14:56 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qErU8-0004iD-GF for xen-devel@lists.xen.org; Thu, 29 Jun 2023 13:14:56 +0000 Received: from mail-pf1-x42e.google.com (mail-pf1-x42e.google.com [2607:f8b0:4864:20::42e]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id ef1c104a-167e-11ee-b237-6b7b168915f2; Thu, 29 Jun 2023 15:14:53 +0200 (CEST) Received: by mail-pf1-x42e.google.com with SMTP id d2e1a72fcca58-6686ef86110so403470b3a.2 for ; Thu, 29 Jun 2023 06:14:54 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: ef1c104a-167e-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1688044492; x=1690636492; h=to:subject:message-id:date:from:mime-version:from:to:cc:subject :date:message-id:reply-to; bh=FUn1yuj1TcoYinLRfRNegHhsklB/AYkVgTVJnBEcxHs=; b=S72s/aK92zlP+brGnO0ofs1gbzV77BTf7LrWbuOemuDoPcGcn4B8Gzixk0XY3FVXJ8 Txd2niu0BmNJA0vX/ObjWGdKNmVA1LHdAipMShm2q4gh4aH/eJd7fjz8rQT7+pEw2jTF SIQlkgpNpZ7W4v/Hfx+Csb/UGaM/V/b+42mpPH7vgLnHi/CwW9DfJ9dyUBwYCxce9R8W Exmf5UqUeXIVMfNS32iMA/06BZHm7rQlm/so3H/B2NRWs20hsSTfjLpl1JZPmlZy1MYa 5ECfsLj73yB8zeYAZ4dYCCTbOMSHSw9RIzQhtAz+5uPIFAsBUwjXyd5wHzH0G4Hnp35b pDrw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1688044492; x=1690636492; h=to:subject:message-id:date:from:mime-version:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=FUn1yuj1TcoYinLRfRNegHhsklB/AYkVgTVJnBEcxHs=; b=avnAK5YEh2AvS0RydKz5SSG7jub48wxUdFN5teL5o8vevmaCzCmRu0vZSdkt9tdzoL Fm25KPtNSHP86ibW7tP5gf4TVGhoyRIDHa9ACSj01SZ2rilgZi9gxKDh8DgUaH2OJ09C kkJn6WcQ0apapc2ySF2SS4PZwx33B2QnCDhJcvj3XRKlMHYeL7qJOi+cj7RkPFhrwfM0 DSU6tcAefMmMlzml6vJLFl6xy8ufN8FhoDFvkQ1uQWJvA36khuaaiDov6Q0mz9vz3pCf K3K75eH8uyLPsmqtO5tqNVOckuEdJrPlEqnFgEr0/P/sJvcJcNeII6O6Tt1u1PiV375S IhyQ== X-Gm-Message-State: AC+VfDxqAQGnBxRlWsdEnO9Q18Zsdbb0JvDTcFWq1764y5MTBjjKEDw9 ZZktlTfScdv+iVUXAEVXAQ6BxnZAK+sXzwhOry2sRt39th9QNQ== X-Google-Smtp-Source: ACHHUZ6y79FZlSGVNafCwnTpvjeaTQzZZ0RguXSfXhN2xcGnIJlEMHmSaljwMHgcnovHdBr0ylBv0OkM3eia769+CQU= X-Received: by 2002:a05:6a20:3ca2:b0:12b:d7cb:54f2 with SMTP id b34-20020a056a203ca200b0012bd7cb54f2mr6082692pzj.11.1688044492122; Thu, 29 Jun 2023 06:14:52 -0700 (PDT) MIME-Version: 1.0 From: Oleg Nikitenko Date: Thu, 29 Jun 2023 16:21:25 +0300 Message-ID: Subject: hardware aes issue related to xen cache coloring To: xen-devel@lists.xen.org Content-Type: multipart/alternative; boundary="000000000000516e4b05ff447cab" --000000000000516e4b05ff447cab Content-Type: text/plain; charset="UTF-8" Hello guys, Be careful. Futher on will be long read... Still continue to fight. What I found out ? I built xen with cache coloring for Xilinx zyncmp. In xen we are enabled harware encryption for some necessities. Actually there one only change in xen/arch/arm/platforms/xilinx-eemi.c at bool xilinx_eemi(struct cpu_user_regs *regs, const uint32_t fid,...) function to the function id switch/case handler. It only passes through our request to hardware aes core. It looks like /* userspace AES operations need to pass */ case 0xC200002F: gprintk(XENLOG_DEBUG, "Forwarding AES operation: %u\n", fid); goto forward_to_fw; After flash it maybe worked some time. Unpredictaible it my got a hardware fault. These may be seen as hardware fault in pmu/Microblaze (XEN) d0v0 Forwarding AES operation: 3254779951 Received exception MSR: 0x200, EAR: 0x19, EDR: 0x0, ESR: 0x861 These strings printed from pmu firmware lib/sw_apps/zynqmp_pmufw/src/xpfw_core.c at void XPfw_Exception_Handler(void) function or as assert somewhere at DMA functions like Assert occurred from file xsecure_aes.c at line 410 Assert occurred from file xcsudma.c at line 140 Assert occurred from file xcsudma.c at line 143 Before than I have seen a lot of messages related to errors in aes requests like [ 188.737910] zynqmp_aes firmware:zynqmp-firmware:zynqmp-aes: ERROR: Gcm Tag mismatch (XEN) d0v0 Forwarding AES operation: 3254779951 [ 188.748496] zynqmp_aes firmware:zynqmp-firmware:zynqmp-aes: ERROR : Non word aligned data (XEN) d0v0 Forwarding AES operation: 3254779951 [ 198.826279] zynqmp_aes firmware:zynqmp-firmware:zynqmp-aes: ERROR : Non word aligned data (XEN) d0v0 Forwarding AES operation: 3254779951 [ 198.837363] zynqmp_aes firmware:zynqmp-firmware:zynqmp-aes: ERROR: Invalid (XEN) d0v0 Forwarding AES operation: 3254779951 A string marked by (XEN) tag printed from above mentioned plase at xen. All other strings printed from the Dom0 kernel. In particular this is the file drivers/crypto/xilinx/zynqmp-aes.c at static int zynqmp_aes_xcrypt(struct skcipher_request *req, unsigned int flags) function. An aes request structure contains 7 x64 bits data. I pointed it out from the Dom0 kernel's point of view struct zynqmp_aes_data { u64 src; u64 iv; u64 key; u64 dst; u64 size; u64 optype; u64 keysrc; }; You may see it at drivers/crypto/xilinx/zynqmp-aes.c xilinx's kernel file. A memory for the request allocated by driver from related DMA area. So I found out a path of aes request. ui application -> Dom0 kernel -> xen -> Security Monitor A last one contains ARM Trusted Firmware/ATF and Microblaze separate chip which executes request handlers. Particularly from the function block point of view it contains Platform Management Unit/PMU Configuration Security Unit/CSU They are executed xilsecure and other libraries. Dom0 kernel invokes xen by hvc instruction. A hypervisor invokes Security Monitor by smc instruction. Further on request get into ARM Trusted Firmware in concrete plat/xilinx/zynqmp/pm_service/pm_api_sys.c at pm_ret_status pm_aes_engine(...) function. It sends this request to PMU by Inter Processor Interrupt/IPI. These errors have never arrived when hypervisor built without chache coloring. Then I dumped these requests from DomU kernel and PMU side in both cases. I got a lower mentioned picture. With cache coloring ==== Dom0 kernel part here ==== [ 27.263734] zynqmp_aes [0] ffffffc00912d000 1194c000 firmware:zynqmp-firmware:zynqmp-aes [ 27.266314] zynqmp_aes [1] ffffffc009135000 1194e000 [ 27.271331] zynqmp_aes [2] dump request align 1 ++ [ 27.276143] 00 c0 94 11 00 00 00 00 [ 27.279688] 50 c0 94 11 00 00 00 00 [ 27.283234] 00 00 00 00 00 00 00 00 [ 27.286780] 00 c0 94 11 00 00 00 00 [ 27.290327] 40 00 00 00 00 00 00 00 [ 27.293874] 00 00 00 00 00 00 00 00 [ 27.297420] 01 00 00 00 00 00 00 00 [ 27.300967] zynqmp_aes [3] dump request -- ========== xypervisor part here ========== (XEN) d0v1 Forwarding AES operation: 3254779951 ==== PMU part here ==== 01194E000 agn 1 1E A7 D1 B1 35 22 7B 1F AE 84 8F 56 99 03 80 3F 15 49 E7 F3 DE C9 E1 17 FB C7 7C 16 CF 58 DF A1 AF CF DC 07 F9 55 49 3F E0 D9 35 89 50 81 FA AE 87 B6 29 16 96 F6 5F F2 ==== ATF part here, i printed just after the request ==== INFO: pm_aes_engine ### args 6 ret 0 addr 0 1194e000 ### ==== Back to Dom0 kernel ==== [ 27.336699] zynqmp_aes firmware:zynqmp-firmware:zynqmp-aes: ERROR : Non word aligned data Without cache coloring ==== Dom0 kernel part here ==== [ 16.746389] zynqmp_aes [0] ffffffc00910d000 5ecfd000 firmware:zynqmp-firmware:zynqmp-aes [ 16.751548] zynqmp_aes [1] ffffffc009115000 5ed1e000 [ 16.756557] zynqmp_aes [2] dump request align 1 ++ [ 16.761400] 00 d0 cf 5e 00 00 00 00 [ 16.764944] 50 d0 cf 5e 00 00 00 00 [ 16.768490] 00 00 00 00 00 00 00 00 [ 16.772037] 00 d0 cf 5e 00 00 00 00 [ 16.775582] 40 00 00 00 00 00 00 00 [ 16.779130] 00 00 00 00 00 00 00 00 [ 16.782676] 01 00 00 00 00 00 00 00 [ 16.786231] zynqmp_aes [3] dump request -- ========== xypervisor part here ========== (XEN) d0v0 Forwarding AES operation: 3254779951 ==== PMU part here ==== 05ED1E000 agn 1 00 D0 CF 5E 00 00 00 00 50 D0 CF 5E 00 00 00 00 00 00 00 00 00 00 00 00 00 D0 CF 5E 00 00 00 00 40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 ==== ATF part here, i printed just after the request ==== INFO: pm_aes_engine ### args 6 ret 0 addr 0 5ed1e000 ### ==== Back to Dom0 kernel ==== [ 16.821959] zynqmp_pm_aes_engine addr 5ed1e000 ret 0 As we may see here with the xen cache coloring dumps of request in both sides are equal. Without the xen cache coloring dumps of request in both sides are different. So I got a guess. According to Stefano's comments the difference between both modes is in SMMU. Without the cache coloring all the memory mapping does programmaticaly by xypervisor. With the xen cache coloring all the memory mapping does by SMMU. This is the point to my mind. SMMU does not know anything about the DMA between Dom0 and PMU. This is the point. Could someone suggest me a way how to fix it ? Thanks for patience. Regards Oleg --000000000000516e4b05ff447cab Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Hello guys,

Be careful. Futher on will be long read= ...

Still continue to fight. What I found out ?
I built xen with = cache coloring for Xilinx zyncmp.
In xen we are enabled harware encrypti= on for some necessities.
Actually there one only change in xen/arch/arm/= platforms/xilinx-eemi.c
at bool xilinx_eemi(struct cpu_user_regs *regs,= const uint32_t fid,...)
function to the function id switch/case handle= r.
It only passes through our request to hardware aes core. It looks lik= e

/* userspace AES operations need to pass */
=C2=A0 =C2=A0case 0= xC200002F:
=C2=A0 =C2=A0 gprintk(XENLOG_DEBUG, "Forwarding AES oper= ation: %u\n", fid);
=C2=A0 =C2=A0 =C2=A0 =C2=A0 goto forward_to_fw;=

After flash it maybe worked some time. Unpredictaible it my got a h= ardware fault.
These may be seen as hardware fault in pmu/Microblaze
=
(XEN) d0v0 Forwarding AES operation: 3254779951
Received exceptionMSR: 0x200, EAR: 0x19, EDR: 0x0, ESR: 0x861

These strings printed = from pmu firmware
lib/sw_apps/zynqmp_pmufw/src/xpfw_core.c at void XPfw_= Exception_Handler(void) function

or as assert somewhere at DMA funct= ions like

Assert occurred from file xsecure_aes.c at line 410
Ass= ert occurred from file xcsudma.c at line 140
Assert occurred from file x= csudma.c at line 143

Before than I have seen a lot of messages relat= ed to errors in aes requests like

[ 188.737910] zynqmp_aes firmware:= zynqmp-firmware:zynqmp-aes: ERROR: Gcm Tag mismatch
(XEN) d0v0 Forwardin= g AES operation: 3254779951

[ 188.748496] zynqmp_aes firmware:zynqmp= -firmware:zynqmp-aes: ERROR : Non word aligned data
(XEN) d0v0 Forwardin= g AES operation: 3254779951

[ 198.826279] zynqmp_aes firmware:zynqmp= -firmware:zynqmp-aes: ERROR : Non word aligned data
(XEN) d0v0 Forwardin= g AES operation: 3254779951

[ 198.837363] zynqmp_aes firmware:zynqmp= -firmware:zynqmp-aes: ERROR: Invalid
(XEN) d0v0 Forwarding AES operation= : 3254779951

A string marked by (XEN) tag printed from above mention= ed plase at xen.
All other strings printed from the Dom0 kernel. In part= icular this is the file
drivers/crypto/xilinx/zynqmp-aes.c at =C2=A0
= static int zynqmp_aes_xcrypt(struct skcipher_request *req, unsigned int fla= gs) function.

An aes request structure contains 7 x64 bits data. I p= ointed it out from the Dom0 kernel's point of view
struct zynqmp_aes= _data {
u64 src;
u64 iv;
u64 key;
u64 dst;
u64 size; u64 optype;
u64 keysrc;
};
You may see it at drivers/crypto/xil= inx/zynqmp-aes.c xilinx's kernel file. A memory for the request
all= ocated by driver from related DMA area.

So I found out a path of aes= request.
ui application -> Dom0 kernel -> xen -> Security Moni= tor
A last one contains ARM Trusted Firmware/ATF
and Microblaze separ= ate chip which executes request handlers.
Particularly from the function= block point of view it contains
Platform Management Unit/PMU
Configu= ration Security Unit/CSU
They are executed xilsecure and other libraries= .

Dom0 kernel invokes xen by hvc instruction. A hypervisor invokes S= ecurity Monitor by smc instruction.
Further on request get into ARM Trus= ted Firmware in concrete plat/xilinx/zynqmp/pm_service/pm_api_sys.c
at p= m_ret_status pm_aes_engine(...) function. It sends this request to PMU by I= nter Processor Interrupt/IPI.
These errors have never arrived when hyper= visor built without chache coloring.
Then I dumped these requests from D= omU kernel and PMU side in both cases. I got a lower mentioned picture.
= With cache coloring
=3D=3D=3D=3D Dom0 kernel part here =3D=3D=3D=3D
= [ =C2=A0 27.263734] zynqmp_aes [0] ffffffc00912d000 1194c000 firmware:zynqm= p-firmware:zynqmp-aes
[ =C2=A0 27.266314] zynqmp_aes [1] ffffffc00913500= 0 1194e000
[ =C2=A0 27.271331] zynqmp_aes [2] dump request align 1 ++[ =C2=A0 27.276143] 00 c0 94 11 00 00 00 00
[ =C2=A0 27.279688] 50 c0 9= 4 11 00 00 00 00
[ =C2=A0 27.283234] 00 00 00 00 00 00 00 00
[ =C2=A0= 27.286780] 00 c0 94 11 00 00 00 00
[ =C2=A0 27.290327] 40 00 00 00 00 0= 0 00 00
[ =C2=A0 27.293874] 00 00 00 00 00 00 00 00
[ =C2=A0 27.29742= 0] 01 00 00 00 00 00 00 00
[ =C2=A0 27.300967] zynqmp_aes [3] dump reque= st --

=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D xypervisor part here =3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D
(XEN) d0v1 Forwarding AES operation: 3254779951
=3D=3D=3D=3D PMU part here =3D=3D=3D=3D
01194E000 agn 1
1E A7 = D1 B1 35 22 7B 1F
AE 84 8F 56 99 03 80 3F
15 49 E7 F3 DE C9 E1 17
= FB C7 7C 16 CF 58 DF A1
AF CF DC 07 F9 55 49 3F
E0 D9 35 89 50 81 FA = AE
87 B6 29 16 96 F6 5F F2

=3D=3D=3D=3D ATF part here, i printed = just after the request =3D=3D=3D=3D
INFO: =C2=A0 pm_aes_engine ### args= 6 ret 0 addr 0 1194e000 ###

=3D=3D=3D=3D Back to Dom0 kernel =3D=3D= =3D=3D
[ =C2=A0 27.336699] zynqmp_aes firmware:zynqmp-firmware:zynqmp-a= es: ERROR : Non word aligned data

Without cache coloring
=3D=3D= =3D=3D Dom0 kernel part here =3D=3D=3D=3D
[ =C2=A0 16.746389] zynqmp_ae= s [0] ffffffc00910d000 5ecfd000 firmware:zynqmp-firmware:zynqmp-aes
[ = =C2=A0 16.751548] zynqmp_aes [1] ffffffc009115000 5ed1e000
[ =C2=A0 16.7= 56557] zynqmp_aes [2] dump request align 1 ++
[ =C2=A0 16.761400] 00 d0 = cf 5e 00 00 00 00
[ =C2=A0 16.764944] 50 d0 cf 5e 00 00 00 00
[ =C2= =A0 16.768490] 00 00 00 00 00 00 00 00
[ =C2=A0 16.772037] 00 d0 cf 5e 0= 0 00 00 00
[ =C2=A0 16.775582] 40 00 00 00 00 00 00 00
[ =C2=A0 16.77= 9130] 00 00 00 00 00 00 00 00
[ =C2=A0 16.782676] 01 00 00 00 00 00 00 0= 0
[ =C2=A0 16.786231] zynqmp_aes [3] dump request --

=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D xypervisor part here =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
= (XEN) d0v0 Forwarding AES operation: 3254779951

=3D=3D=3D=3D PMU par= t here =3D=3D=3D=3D
05ED1E000 agn 1
00 D0 CF 5E 00 00 00 00
50 D0= CF 5E 00 00 00 00
00 00 00 00 00 00 00 00
00 D0 CF 5E 00 00 00 0040 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
01 00 00 00 00 00 00= 00

=3D=3D=3D=3D ATF part here, i printed just after the request =3D= =3D=3D=3D
INFO: =C2=A0 pm_aes_engine ### args 6 ret 0 addr 0 5ed1e000 #= ##

=3D=3D=3D=3D Back to Dom0 kernel =3D=3D=3D=3D
[ =C2=A0 16.821= 959] zynqmp_pm_aes_engine addr 5ed1e000 ret 0

As we may see here wit= h the xen cache coloring dumps of request in both sides are equal.
Witho= ut the xen cache coloring dumps of request in both sides are different.
= So I got a guess.
According to Stefano's comments the difference bet= ween both modes is in SMMU.
Without the cache coloring all the memory ma= pping does programmaticaly by xypervisor.
With the xen cache coloring al= l the memory mapping does by SMMU.
This is the point to my mind. SMMU do= es not know anything about the DMA between Dom0 and PMU.
This is the poi= nt.
Could someone suggest me a way how to fix it ?
Thanks for patienc= e.

Regards
Oleg
--000000000000516e4b05ff447cab-- From xen-devel-bounces@lists.xenproject.org Thu Jun 29 13:19:59 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 13:19:59 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556833.869641 (Exim 4.92) (envelope-from ) id 1qErYp-0005Lc-H4; Thu, 29 Jun 2023 13:19:47 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556833.869641; Thu, 29 Jun 2023 13:19:47 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qErYp-0005LV-Dq; Thu, 29 Jun 2023 13:19:47 +0000 Received: by outflank-mailman (input) for mailman id 556833; Thu, 29 Jun 2023 13:19:46 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qErYo-0005LK-Fj; Thu, 29 Jun 2023 13:19:46 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qErYo-0004a9-8R; Thu, 29 Jun 2023 13:19:46 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qErYn-0005FV-Mq; Thu, 29 Jun 2023 13:19:45 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qErYn-0002bS-MK; Thu, 29 Jun 2023 13:19:45 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=geCf2/NpaxSOvxojCcRfYj9KxqJfAHpjrc1IbgTFDwE=; b=1Mr93P3XtPIcxxppgwdfaAZLVp Mp3VwEIUQzWF77yNEaSbrP/4MsUA7M2IDq38V+LmOG4AlLUmXtZIq5tB6IJniSaBpNcF7UT6sxPq4 eaeSNQ+UBlDs4SPIXjpRJJlAEryL7Vsn0noAtHs6bWiAxj6Qq84IOOt4e0acqL+aUXiA=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [libvirt test] 181635: tolerable FAIL - PUSHED X-Osstest-Failures: libvirt:test-amd64-i386-libvirt-pair:xen-install/dst_host:fail:heisenbug libvirt:test-amd64-i386-libvirt-pair:xen-install/src_host:fail:nonblocking libvirt:test-amd64-i386-libvirt-raw:xen-install:fail:nonblocking libvirt:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking libvirt:test-amd64-amd64-libvirt-vhd:guest-start/debian.repeat:fail:nonblocking libvirt:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking libvirt:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking libvirt:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking libvirt:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking libvirt:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking libvirt:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt:saverestore-support-check:fail:nonblocking libvirt:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking libvirt:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking libvirt:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-qcow2:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-qcow2:saverestore-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking libvirt:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking libvirt:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking libvirt:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking X-Osstest-Versions-This: libvirt=d7fb8deb6aa862a8098d8d933dd32a79931cd4dc X-Osstest-Versions-That: libvirt=d725932a283fdc8b827d83cfc5d54b38cf40592b From: osstest service owner Date: Thu, 29 Jun 2023 13:19:45 +0000 flight 181635 libvirt real [real] flight 181640 libvirt real-retest [real] http://logs.test-lab.xenproject.org/osstest/logs/181635/ http://logs.test-lab.xenproject.org/osstest/logs/181640/ Failures :-/ but no regressions. Tests which are failing intermittently (not blocking): test-amd64-i386-libvirt-pair 11 xen-install/dst_host fail pass in 181640-retest Tests which did not succeed, but are not blocking: test-amd64-i386-libvirt-pair 10 xen-install/src_host fail in 181640 like 181621 test-amd64-i386-libvirt-raw 7 xen-install fail like 181621 test-armhf-armhf-libvirt 16 saverestore-support-check fail like 181621 test-amd64-amd64-libvirt-vhd 19 guest-start/debian.repeat fail like 181621 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail like 181621 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail like 181621 test-amd64-i386-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-i386-libvirt 15 migrate-support-check fail never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt 15 migrate-support-check fail never pass test-arm64-arm64-libvirt 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-armhf-armhf-libvirt 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-qcow2 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-qcow2 15 saverestore-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-armhf-armhf-libvirt-raw 14 migrate-support-check fail never pass version targeted for testing: libvirt d7fb8deb6aa862a8098d8d933dd32a79931cd4dc baseline version: libvirt d725932a283fdc8b827d83cfc5d54b38cf40592b Last test of basis 181621 2023-06-28 04:20:33 Z 1 days Testing same since 181635 2023-06-29 04:21:51 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Jim Fehlig jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-i386-libvirt-xsm pass test-amd64-amd64-libvirt pass test-arm64-arm64-libvirt pass test-armhf-armhf-libvirt pass test-amd64-i386-libvirt pass test-amd64-amd64-libvirt-pair pass test-amd64-i386-libvirt-pair fail test-arm64-arm64-libvirt-qcow2 pass test-armhf-armhf-libvirt-qcow2 pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw pass test-amd64-i386-libvirt-raw fail test-amd64-amd64-libvirt-vhd fail ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Pushing revision : To xenbits.xen.org:/home/xen/git/libvirt.git d725932a28..d7fb8deb6a d7fb8deb6aa862a8098d8d933dd32a79931cd4dc -> xen-tested-master From xen-devel-bounces@lists.xenproject.org Thu Jun 29 14:05:52 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 14:05:52 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556841.869650 (Exim 4.92) (envelope-from ) id 1qEsH7-0002KS-03; Thu, 29 Jun 2023 14:05:33 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556841.869650; Thu, 29 Jun 2023 14:05:32 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEsH6-0002KL-TL; Thu, 29 Jun 2023 14:05:32 +0000 Received: by outflank-mailman (input) for mailman id 556841; Thu, 29 Jun 2023 14:05:31 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEsH5-0002KF-1G for xen-devel@lists.xenproject.org; Thu, 29 Jun 2023 14:05:31 +0000 Received: from NAM10-BN7-obe.outbound.protection.outlook.com (mail-bn7nam10on2060b.outbound.protection.outlook.com [2a01:111:f400:7e8a::60b]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id ff7e527f-1685-11ee-b237-6b7b168915f2; Thu, 29 Jun 2023 16:05:27 +0200 (CEST) Received: from SN6PR12MB2621.namprd12.prod.outlook.com (2603:10b6:805:73::15) by BY5PR12MB4130.namprd12.prod.outlook.com (2603:10b6:a03:20b::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.26; Thu, 29 Jun 2023 14:05:24 +0000 Received: from SN6PR12MB2621.namprd12.prod.outlook.com ([fe80::8018:78f7:1b08:7a54]) by SN6PR12MB2621.namprd12.prod.outlook.com ([fe80::8018:78f7:1b08:7a54%2]) with mapi id 15.20.6521.026; Thu, 29 Jun 2023 14:05:23 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: ff7e527f-1685-11ee-b237-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=CWreyuQ3ASfMuohULMO+t/4t+RHl8bdHRSQrjLtIOt+V/DxGHywr4r23o3DPtZAGQuxIMzHSepC3yorgyakQ3IqGStBwlMlNThlX5iFpf6rHy3hBiFR5EyjFmvEEm11jKV67hmrNQQKSLa9Vkg/gjwrQYv76XuP5/jTgZrmQBQuO2rC1TQzFsh7Yt6rOsPL+ejnoD+h9a3tk/7HfzLNB4NJml+bvpXf+dLbEcLGM5pox5T+fOq7E4hYrEyJ/B+qdgFY2FDCjAQkdpBIzWg60tvj848c5y98HSq+b43Z6IPLDMIXemEXCpXRUx0werO8q/wsII7oxVtFW1WeI5hKtGQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=Zt8lcMqiKIcp6RNIllhvdZc5q+g8NSj5+14zylrTtX4=; b=E+wnU/hnEkPEven8HFL7KUllfHhShDUf9F4ifEFzmAtBwu+XwgFwkYytvBWTalWcB//gNK/nv0DC/1XM+nvtbOqZJGkx2+3JqNSCvGPMT1D50FUNc6E3JRxnMrGuCI+H55u4fZkdZ9tUuhICdUzwVx1+CQfmJJHRu/vY5wlzPNWswfF95MwGbEUhavQJADc0D+/ALOXHNjSo02b5rjDjKl38Tsla5uoZsqxmZrqG+AFi5yYu/3Ez0HgbX56ZiN45Soap12EhnSvtE95w6zeHNaeTqFIEt32bKPZTn3fCTmlY4kHFcF1NO8dTK3o/LhCDfsJneO2ZTHjkb7nRgy1HKg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass header.d=amd.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Zt8lcMqiKIcp6RNIllhvdZc5q+g8NSj5+14zylrTtX4=; b=XXoea7RtDWGEgxfRwSS92UfZ5W8xNLITNPu4ceY7emXGsFe4tLT/HyugfLcJCN6LNH4PIKkGi+w+m8ks2u7NCvrglbKsWGX1C1mI4Vl5/slpGdcIe0h7oifcMBAMNwIeXZCrBzGH0Dy44sjmAltJ3agJcCF6faaq104IFX4/vQU= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=amd.com; Message-ID: Date: Thu, 29 Jun 2023 15:05:18 +0100 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v3 27/52] xen/mpu: introduce setup_mm_mappings To: Penny Zheng , xen-devel@lists.xenproject.org Cc: Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk , Wei Chen References: <20230626033443.2943270-1-Penny.Zheng@arm.com> <20230626033443.2943270-28-Penny.Zheng@arm.com> From: Ayan Kumar Halder In-Reply-To: <20230626033443.2943270-28-Penny.Zheng@arm.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-ClientProxiedBy: LO6P265CA0026.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:2ff::16) To SN6PR12MB2621.namprd12.prod.outlook.com (2603:10b6:805:73::15) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SN6PR12MB2621:EE_|BY5PR12MB4130:EE_ X-MS-Office365-Filtering-Correlation-Id: eb112f7f-585f-4dcb-a2e3-08db78a9e1b7 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: bKJSCjEehposZyFvdjTU9Ge/FBMWQMeCyTQcRdTmtgdSSMpRIYG0q11idOTBcI327DhDsQ02bvpjcxexUuv9PNgBBfAaaZ04M363kxAMdee/eHh/RdhhzPQWKGP7Nqv/LNP79wGOtikPVsvtyTK+s85cpqn09WYuPMpctD7ueVDC9D4rcSI5BUQc9N3O9qs6dREYqoC8jPMd5zrbD1QuXNnVwOBLt/aafz2y/UZofmMK/FwzM/EjprUjW8BK4pJZ+eAKtV6FgnfLnf2zZ/agDzDbgBx6Y/wbuwT7RAg0tMH+BFjnx6PFOzL2uhl/IA1HF9TyNIkHaEoFmlmK8YKZckCcBiLKS04Ce4HTOMRfuo50NHb0tavKl6PeYumBcoi2hNSWG5QZMiV7yskO1ckUfPpKRHNHpVKVRJ9Lg+2lygqR9CvmUxSDRgNB54xs/q3A2n9E0gzLYu2oF4fC/bFzaasmwujOddj517DDpwdbhZRsNe5R9f8AQIPi5thbXkAPMkKgokjnZi7ZkvKDCtpDl/XSWLtJL0uXG75/H4NETfNz2hqr1M/SLJU97lwpNLGonTRh8x7gK9nbHk1eWxEd5VS+odXuBrpSdMs9BxldWz2AHMc+yX82qCh4LuOnSJuX+ZotNGeHTB4LZT816sYy+A== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SN6PR12MB2621.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(366004)(376002)(136003)(396003)(346002)(39860400002)(451199021)(316002)(8676002)(66946007)(66476007)(6512007)(6506007)(186003)(4326008)(53546011)(26005)(8936002)(6486002)(54906003)(41300700001)(6666004)(66556008)(5660300002)(2906002)(2616005)(478600001)(38100700002)(31696002)(31686004)(36756003)(83380400001)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?QkVMMXBsT3ZJdDJNR2ZBSmlJZ3V4NVdQa0VaclZEbDIxbVhDYmZ4Wlg1enpH?= =?utf-8?B?di9hY1BacGtyTnVMK0VYRUpNd2xveTk5ZlRXWW4yQlowMjZ3UzBZNHBZeGdO?= =?utf-8?B?cHNiNStQN3FSQi8rL1Uvc1VLdzlzdjhoTjZpNU1TclVHd2IreHNNRFRtbHFB?= =?utf-8?B?V1RVT1p1ZitGY2hXVUgwNW5vTng3dGRjeFBRYzdjc0gzbXAydmJrYWxkN0ky?= =?utf-8?B?ekR3NCsxOVhtRFF5Sk55cGp1cU5JcXpiV0FXQVZoM05XT1ZPeC9taGRIajR3?= =?utf-8?B?UlY4ZEJkbTFoYU9XRTI5ZU9BRWgrSitBU1QyK2lNZkZoTEdGdXZ6NDhuMkJi?= =?utf-8?B?bXlZZS9mV0FxR1FqSmxZRlg0MC9qN0xySkhPc1M5eStzbVRnWG96SE00K29D?= =?utf-8?B?alZrbTlJSW1aOElPYnowdDJSdlEwcEpkRE02TDE4UjVVZFRwRkRaaVIrL0R6?= =?utf-8?B?MXpKaFBXbFJWTGo3Q3M3UkhmR05KTE1kRG91bTI3cGhXVmE5eVEvZWFYYU56?= =?utf-8?B?cloyUmV2aVl6bkRvazBFaFhjbThTOVdjZEIvUFUxemFyWXpsdnV4RzhDMDVB?= =?utf-8?B?bHBqSFljWVd6SzZUR0ZSVnNFeWhEMDVqQUVtV3lIWVpScE9BbDZZNzVVd3BQ?= =?utf-8?B?MjF1djV5dkZYNHdhTTRkcEVBSlJKV0FRSHNrOVVkNnowSlgxYkFtQmJTRjZK?= =?utf-8?B?alBNTE9mT2l6UStKaVFvZ0ZKVkZjTWhSa1BjU1Y4VzM3aE5PQ2cvZE40Mm5N?= =?utf-8?B?VDdwYVlRM2UwNzF5YjB5ZHc0cGJLK1ltdEdDYUdWWTNBbkM5VXQwYk9DS3k4?= =?utf-8?B?LzdQVWFpd0pOOE1wSG5KaVVIVWh4Y0RUdFVSb24ydFpmQyttM1BZRjlNa00w?= =?utf-8?B?dnV2VTVna050U2VXV2lSNHh0WWh5YmEvc0lSbDNGbUhmb284R205ME1RU2I1?= =?utf-8?B?YWZSOXVicm1LNG5VOTMraTdBM3M5WWxucisySGhscUNrd0g3bjZyN3l3RDJE?= =?utf-8?B?ejBCTWRSNnlQZVJYOTR6TEVhWVVyejBWTWgzSzBZeVl5Uzl6N09qaEZSUkZ5?= =?utf-8?B?cUpYTjhoWVBBdE9leHZ4d2trbzhpV1lORXZ3ZW50YjJxbnVGQkdTak9IZ0d6?= =?utf-8?B?d0ZnZlRlM2M0QjZXRWRUTi9VWm9sb1FJZFEra0hOVmhrekVobDl1Tit5dXVu?= =?utf-8?B?WHlxK2lsRmlvZjlGWVloVHJJWGU5K0JIQ2pnU1RZZjBSVXBleEFRWllKbXpD?= =?utf-8?B?TnBubjFQNUZ6UHZkQS9IMk1YWkdXcHJzbVY2dVVEcks4YWE3cTNVcHNCU0Jq?= =?utf-8?B?NkxTQnVEbzZKL3RRZlFQakJuY2gvZlBsNmphUXhLZzBsRmpYRWs3WEhUNWZF?= =?utf-8?B?djVjQ01HMjNXVm1pQ09ZajRIZ3BtN0hwSFR3YWorOGE1b2dibVJVbGZzMjdU?= =?utf-8?B?R2l4UUpzSUgvWW1pOE9oNmZsWnpVOCswNGdFRjg2ZzNueEtEWjJHc2hPZmhF?= =?utf-8?B?RHI0ei9ZUUdBOVpkQmJWSXZmMkFYNDk3TFVqWnQzYmdJZjVqaDVXTTNZZ0g1?= =?utf-8?B?UkQ5N09UL1ptRnhkTUM4M1plUFQzaExBLzVTODBld1NrdEJTVjQyTGdlTENI?= =?utf-8?B?WkVrUjdXVStzbmpQSGZqaE1SN2UzK3Npa3ZJZFBMSXZIVS9MTjRLUU9EZlVj?= =?utf-8?B?c3JTOEJHT21KNUpSWHYzdFoxQTRiQS9IYklFbmxNV3hJelRMdkJNNzQ2SU5U?= =?utf-8?B?dWt0OExwRTAvMXF4SER3eWtnVU9yc1JhNU9iSUVGWFpqaTJoNHN4UG84VWEx?= =?utf-8?B?cTNJV0hSWlIrNDdnWFlHUFg0VDc2RXEwTksvcHhYVlhDdi9SMDN0a0ZuTHRM?= =?utf-8?B?QWtXcWU5Wk5QcWlPd0Y4aW1RdlNjZ0N2czZrdnQrRXVrc2pTVDIvSm1aTXBN?= =?utf-8?B?TER4cEhsalUyZEdYM2h0Nmtxb0FzcUJuQkxPZmRVQUc0Slg1SXdEbHVOTEVl?= =?utf-8?B?YzRsUkdSZEhuam1sbWttUWpOcnNrZTRKd25rZWlDVk9QMzdNakxuajFSWXV1?= =?utf-8?B?UytPZmZUY1ovVWdNR3lDZndrc3JNZVp2b0hjTzRickhtQWxPaHh5eHZOV050?= =?utf-8?Q?lYXDPALAjhXVSafk9Ka8XQlhB?= X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-Network-Message-Id: eb112f7f-585f-4dcb-a2e3-08db78a9e1b7 X-MS-Exchange-CrossTenant-AuthSource: SN6PR12MB2621.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 Jun 2023 14:05:23.7943 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: lIuj3I2eevSoPHySG3rZuxq07IU6vJmRz+DtXueHGBYRyQLhKettb9/gXWf+r1LYFK5nfo0hoWuvFoBTiS5qNg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY5PR12MB4130 Hi Penny, On 26/06/2023 04:34, Penny Zheng wrote: > CAUTION: This message has originated from an External Source. Please use proper judgment and caution when opening attachments, clicking links, or responding to this email. > > > Function setup_pagetables is responsible for boot-time pagetable setup > in MMU system at C world. > In MPU system, as we have already built up start-of-day Xen MPU memory > region mapping in assembly boot-time, here we only need to do a few > memory management data initializtion, including reading the number of > maximum MPU regions supported by the EL2 MPU, and setting the according > bitfield for regions enabled in assembly boot-time, in bitmap xen_mpumap_mask. > This bitmap xen_mpumap_mask is responsible for recording the usage of EL2 MPU > memory regions. > > In order to keep only one codeflow in arm/setup.c, setup_mm_mappings > , with a more generic name, is introduced to replace setup_pagetables. > > Signed-off-by: Penny Zheng > Signed-off-by: Wei Chen > --- > v3: > - introduce bitmap xen_mpumap_mask for dynamic allocation on MPU regions > --- > xen/arch/arm/include/asm/arm64/mpu.h | 1 + > xen/arch/arm/include/asm/arm64/sysregs.h | 3 +++ > xen/arch/arm/include/asm/mm.h | 4 ++-- > xen/arch/arm/mmu/mm.c | 7 +++++- > xen/arch/arm/mpu/mm.c | 30 ++++++++++++++++++++++++ > xen/arch/arm/setup.c | 2 +- > 6 files changed, 43 insertions(+), 4 deletions(-) > > diff --git a/xen/arch/arm/include/asm/arm64/mpu.h b/xen/arch/arm/include/asm/arm64/mpu.h > index 6ec2c10b14..407fec66c9 100644 > --- a/xen/arch/arm/include/asm/arm64/mpu.h > +++ b/xen/arch/arm/include/asm/arm64/mpu.h > @@ -19,6 +19,7 @@ > * or it needs adjustment. > */ > #define REGION_UART_SEL 0x07 > +#define MPUIR_REGION_MASK ((_AC(1, UL) << 8) - 1) May be this is simpler to read #define MPUIR_REGION_MASK _AC(0xFF, UL) Also, you can move it to xen/arch/arm/include/asm/mpu.h as it is common between R52 and R82. > > #ifndef __ASSEMBLY__ > > diff --git a/xen/arch/arm/include/asm/arm64/sysregs.h b/xen/arch/arm/include/asm/arm64/sysregs.h > index c41d805fde..a249a660a8 100644 > --- a/xen/arch/arm/include/asm/arm64/sysregs.h > +++ b/xen/arch/arm/include/asm/arm64/sysregs.h > @@ -474,6 +474,9 @@ > /* MPU Protection Region Selection Register encode */ > #define PRSELR_EL2 S3_4_C6_C2_1 > > +/* MPU Type registers encode */ > +#define MPUIR_EL2 S3_4_C0_C0_4 > + > #endif > > /* Access to system registers */ > diff --git a/xen/arch/arm/include/asm/mm.h b/xen/arch/arm/include/asm/mm.h > index 5d890a6a45..eb520b49e3 100644 > --- a/xen/arch/arm/include/asm/mm.h > +++ b/xen/arch/arm/include/asm/mm.h > @@ -201,8 +201,8 @@ extern unsigned long total_pages; > > extern uint64_t init_mm; > > -/* Boot-time pagetable setup */ > -extern void setup_pagetables(unsigned long boot_phys_offset); > +/* Boot-time memory mapping setup */ > +extern void setup_mm_mappings(unsigned long boot_phys_offset); > /* Map FDT in boot pagetable */ > extern void *early_fdt_map(paddr_t fdt_paddr); > /* Remove early mappings */ > diff --git a/xen/arch/arm/mmu/mm.c b/xen/arch/arm/mmu/mm.c > index 43c19fa914..d7d5bf7287 100644 > --- a/xen/arch/arm/mmu/mm.c > +++ b/xen/arch/arm/mmu/mm.c > @@ -398,7 +398,7 @@ static void clear_table(void *table) > > /* Boot-time pagetable setup. > * Changes here may need matching changes in head.S */ > -void __init setup_pagetables(unsigned long boot_phys_offset) > +static void __init setup_pagetables(unsigned long boot_phys_offset) > { > uint64_t ttbr; > lpae_t pte, *p; > @@ -470,6 +470,11 @@ void __init setup_pagetables(unsigned long boot_phys_offset) > #endif > } > > +void setup_mm_mappings(unsigned long boot_phys_offset) > +{ > + setup_pagetables(boot_phys_offset); > +} > + > static void clear_boot_pagetables(void) > { > /* > diff --git a/xen/arch/arm/mpu/mm.c b/xen/arch/arm/mpu/mm.c > index fb6bb721b1..e06a6e5810 100644 > --- a/xen/arch/arm/mpu/mm.c > +++ b/xen/arch/arm/mpu/mm.c > @@ -20,6 +20,7 @@ > */ > > #include > +#include > #include > #include > > @@ -27,6 +28,35 @@ > pr_t __aligned(PAGE_SIZE) __section(".data.page_aligned") > xen_mpumap[ARM_MAX_MPU_MEMORY_REGIONS]; > > +/* Maximum number of supported MPU memory regions by the EL2 MPU. */ > +uint8_t __ro_after_init max_xen_mpumap; > + > +/* > + * Bitmap xen_mpumap_mask is to record the usage of EL2 MPU memory regions. > + * Bit 0 represents MPU memory region 0, bit 1 represents MPU memory > + * region 1, ..., and so on. > + * If a MPU memory region gets enabled, set the according bit to 1. > + */ > +static DECLARE_BITMAP(xen_mpumap_mask, ARM_MAX_MPU_MEMORY_REGIONS); > + > +void __init setup_mm_mappings(unsigned long boot_phys_offset) > +{ > + unsigned int nr_regions = REGION_UART_SEL, i = 0; > + > + /* > + * MPUIR_EL2.Region[0:7] identifies the number of regions supported by > + * the EL2 MPU. > + */ > + max_xen_mpumap = (uint8_t)(READ_SYSREG(MPUIR_EL2) & MPUIR_REGION_MASK); NIT:- You may dop "& MPUIR_REGION_MASK " as the other bits are RES0 > + > + /* Set the bitfield for regions enabled in assembly boot-time. */ > +#ifdef CONFIG_EARLY_PRINTK > + nr_regions = REGION_UART_SEL + 1; > +#endif > + for ( ; i < nr_regions; i++ ) > + set_bit(i, xen_mpumap_mask); > +} > + > /* > * Local variables: > * mode: C > diff --git a/xen/arch/arm/setup.c b/xen/arch/arm/setup.c > index 6f8dd98d6b..f42b53d17b 100644 > --- a/xen/arch/arm/setup.c > +++ b/xen/arch/arm/setup.c > @@ -781,7 +781,7 @@ void __init start_xen(unsigned long boot_phys_offset, > /* Initialize traps early allow us to get backtrace when an error occurred */ > init_traps(); > > - setup_pagetables(boot_phys_offset); > + setup_mm_mappings(boot_phys_offset); > > smp_clear_cpu_maps(); > > -- > 2.25.1 > > - Ayan From xen-devel-bounces@lists.xenproject.org Thu Jun 29 14:20:38 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 14:20:38 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556845.869661 (Exim 4.92) (envelope-from ) id 1qEsVW-0004i4-8C; Thu, 29 Jun 2023 14:20:26 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556845.869661; Thu, 29 Jun 2023 14:20:26 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEsVW-0004hx-5E; Thu, 29 Jun 2023 14:20:26 +0000 Received: by outflank-mailman (input) for mailman id 556845; Thu, 29 Jun 2023 14:20:24 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEsVU-0004hr-IQ for xen-devel@lists.xenproject.org; Thu, 29 Jun 2023 14:20:24 +0000 Received: from NAM10-DM6-obe.outbound.protection.outlook.com (mail-dm6nam10on2062a.outbound.protection.outlook.com [2a01:111:f400:7e88::62a]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 149c5561-1688-11ee-b237-6b7b168915f2; Thu, 29 Jun 2023 16:20:22 +0200 (CEST) Received: from SN6PR12MB2621.namprd12.prod.outlook.com (2603:10b6:805:73::15) by BL0PR12MB4931.namprd12.prod.outlook.com (2603:10b6:208:17e::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.26; Thu, 29 Jun 2023 14:20:17 +0000 Received: from SN6PR12MB2621.namprd12.prod.outlook.com ([fe80::8018:78f7:1b08:7a54]) by SN6PR12MB2621.namprd12.prod.outlook.com ([fe80::8018:78f7:1b08:7a54%2]) with mapi id 15.20.6521.026; Thu, 29 Jun 2023 14:20:17 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 149c5561-1688-11ee-b237-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=bcbo3Z3EhmhvW1ESLwk+BNKxwSRB+aP16bchN9LabVC30S1V52IFmRBW/OcRS6rhRrMTwMNwcNCLdue2Rn9hj2ReesepwIylWtCFRC8hUhLkDilBr2P1fRQ3W/4QT4qiZKWsXkwRz8lIE/olAmAWQEUZvbdtSHjan0UwGBFFv+JpH2IEe9eeMle1v/A0O/P+GqgDOLkGyYZWPgOLBEVU8XO+8T64jA5TSVKNj5Q6a1DPXa8EB7aa5ZrKWWM0ztAfVJcsz0HZQyjYua7Ubt6jjzYwPUGDI8WnsDyoYDvpuAupec2AaMiUr1Zm/Tqk7YKnwuAthsVvQMILWUsGCRKSgg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=s80gEzrECilDabEcD9FY6cy4TnxW2I0uSGGsHeu+IPA=; b=RzD5SsrHUh63DnItxwYXNeBC0vsy3YXcdBEhN1gHzY5pSBusIJcqrWgAElc55heEl8o2VoMYJ5K6eyacPHhsVK30eX/QxwiPkBl9dFNKc7pm2abEZMWKOWYJOaUqufxFK3Iattp7KjOMUMWUSdx9Dx40RazrqxF1YXLoVnURUjUrtF8C13R4pneVGR7l5HcTxTVk/yJaNCf0mOYjCnkVeWYAQIQ4nz9D54u3c/lFgdue+pnoB8Y7nbza18r8l6+f2O5kwrq2G1pZxiCDyB9UM4hCO9iakH5BAj2f4OXpvynZ7yWHOwwbtyOBKfvzYWrVxsTtMeSSZRry5/hya33xCA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass header.d=amd.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=s80gEzrECilDabEcD9FY6cy4TnxW2I0uSGGsHeu+IPA=; b=qNSXYoIaQELe9WJZhKRfFiyOqnNNidfrsQwj88OfqlnqVEziUQq12Ts+mWy6m2TFv3Ff08E6CsPhCzsXGTxFPQX0bvf+C6+xpnUHQkpgBXzGip0muLU2kFCiab/bAUSuETciWIakfHOGST4yr1bUG3/pUhSQ++8NGF0+a2Xk4NA= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=amd.com; Message-ID: <674011bb-b8df-d11e-a322-1827096c1b74@amd.com> Date: Thu, 29 Jun 2023 15:20:11 +0100 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v3 28/52] xen/mpu: plump virt/maddr conversion in MPU system To: Penny Zheng , xen-devel@lists.xenproject.org Cc: Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk , Wei Chen References: <20230626033443.2943270-1-Penny.Zheng@arm.com> <20230626033443.2943270-29-Penny.Zheng@arm.com> From: Ayan Kumar Halder In-Reply-To: <20230626033443.2943270-29-Penny.Zheng@arm.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-ClientProxiedBy: LO4P123CA0262.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:194::15) To SN6PR12MB2621.namprd12.prod.outlook.com (2603:10b6:805:73::15) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SN6PR12MB2621:EE_|BL0PR12MB4931:EE_ X-MS-Office365-Filtering-Correlation-Id: 108742fe-6c2f-4a5b-6dc4-08db78abf6a3 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: EimMP+b6yeFaA7zH/jFkPuxLGGeFPuAzaJezdtbAUZKLmyTe3B3A6htni6G6l+/AoPjDao67P9HVZv1ainnOcXCAyUr1BTPgI8UBlCHfVxBWW6vrnPy5M1fCP6RiF9AzU+qBa9NdNflC5/h02NQwclj0qv5yIjc+c7ERJxafToh8corOBYjhP2GHCWThEWz6ANKG+tvn9C6xAGyMDfqdnnkXpNTbXMZ0CMJIa0OCPQ7/pnLMW1jvt9yLx/e0bBKiXBHBWGZ2rCy/0hyxYAgjFGk2H6FhlP1+puuIJuXEaMEQEzJ8//aUm0o6bqDLNmnp1B5bdO1i3pVeQV2rAykzwkgEd/Zu6CdMErUit/QOelWRTffyMA9/qP8ppwLeT8HCaWL6AYchvOk/fFNRGwuqvNe+Zke3K2rvy7eFw1VozwuoAIDhSRcdG8rim8iMdlhPmXaS6c5keGlqVNKD0WLdV+TAVYtDpBwvt0kCjAzb2iP+ylE7bbJn0wDWVeAfOWNPVji6v+HhNvegd/cqMDr8wdmzA8v3gQtHkjeM70fheiZEroYFkRlCmfdujDnOTVC3GLgBpvpKwBiu5DNc+pvZjxm0nzwjXBbiSBoaNZ0/sQGBfsw5iplnbt0lyz21+IFKSAliG+eV9ucckhjvGAlO2Q== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SN6PR12MB2621.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(396003)(346002)(136003)(366004)(39860400002)(376002)(451199021)(26005)(4326008)(66476007)(66556008)(8936002)(6506007)(36756003)(2616005)(478600001)(54906003)(186003)(2906002)(6666004)(53546011)(6486002)(83380400001)(66946007)(5660300002)(38100700002)(31696002)(8676002)(316002)(41300700001)(31686004)(6512007)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?UlZTMDdoK3EybUZBVWlkaTNKMlg1NktIanlGSUh1bFJ2L09KamhmbXFvcTV2?= =?utf-8?B?b3lZYUpvcGJkSXZrNFQreEQ3QjFWRm9PZjY1T01icUxsak1yYVVWczJCL1VI?= =?utf-8?B?aTg0bzBnTlc4VEIxYlB6Mk12RFE1SERXT0d5cXgwb2tTL1dWTEd1Y2V6V3ZT?= =?utf-8?B?RHExRjgrWEtBMlhUMndQNzVvdlRKUUlrY2grMUtRdC8rUFJZNTZ0NUI0Q1Zp?= =?utf-8?B?WS9xNklrNDJCK3RZZEI3SVFPWFozYnpBRzhsYUtNQU1rWkc0NnpSZTFMdzlN?= =?utf-8?B?SEJRU2tDTkJCVkhwQU80bUhJMUxhSjdlaUtaYWh4TVQ4Yks3aVk4aVNxWVZE?= =?utf-8?B?TVdMNlFMYUJkdmg1azZ0aTN1V3IrTEZmZDgwNGhPTjBVNC92TWs4bG5ZNmx3?= =?utf-8?B?TWljL1pWMmwyZXZBMTc1KysrRWF6SmlNM2hMTGF2VnlZZjh6L1hEMEIzS3BH?= =?utf-8?B?ajQzeXBCZGhwZGowd1hZUjZwbDJoazE2L2N5ellUTFNSQy82cWNVRWY1THdq?= =?utf-8?B?QjRMMG1PMlVzYlpLckhoUW1pRVRGdVdjZnlsbFlVMVBPVWZueXhQazN2cmVD?= =?utf-8?B?N3FVWDJOakYwUEFoTEt1dWYrQVVYRGs0R2lBNXR4cVpRckJNa2QyUmhpd0ls?= =?utf-8?B?TU81UjIrU2FQa29CM0k5dEJWdXZ3Ry92Y0V4d2lxTnN3bmJ1VWhYQmxNOGpr?= =?utf-8?B?MS9XcFNoNmx0SWlwRmcyRjg4WXZmdVR4Q0NGdW1IcktvTWlZaVZXQityYlpr?= =?utf-8?B?cDZnUTc5UHB6K2VoZWRkRUVLTTlGV2pRbUdiV3BhVUovc2h5emkyNWdZbjNt?= =?utf-8?B?VnVMSXQ3dUp3ZXV1WDlTdHIrc1NGcDdrenpDMFdJWi9DQkJEK2R0QllxUHg0?= =?utf-8?B?YTkrQ3Q0cGQzUVZVandoNHBvRVRlL1lVblRrRTNzSFdPZ3gwQmdsRXVuSXg1?= =?utf-8?B?RjB5bThxUktzSktYVGl3MGlkMDdIbktKRDB2Y05GYmRRc2ljYUI5Y2pNUFJ2?= =?utf-8?B?V3lPMndvYkZva01oMlFJQ0dJY0N2OE1qdXpVdFg0enZsa2pHMWdYQlhuM09j?= =?utf-8?B?MVBJYmFRUVo4QktSMjIzbnkvOEh2WWYxdnV6R0t1SG9UMHFnTlIrVzFhN0tq?= =?utf-8?B?dGlTckNWQldPZ3FIR3ovanplclBqbjBZUWp5UHJwMFFHRjlndFpuRHpEOFBo?= =?utf-8?B?N2dPbHFKK1VFUWdLUkNOLzRWUHNtKyt2QmJkUFhCcnFvdlpzTjBtaUFkM0ZC?= =?utf-8?B?Yi9WTjJpVlRCZkVXK0F1RzJVOERwTHUzUlE5cXVERGx5bjZHSzdCbXlMbW5u?= =?utf-8?B?d2xKVncwMy9NZ1ZIOGlqUDZpTU1DeEIwQkdvUm1odkdtWnNaQmY2NXREc0ph?= =?utf-8?B?Z2xKbTF4N2YvTzFmV0lUbVpDQXRTUDQyK3N6d2xCRUt5OVhNUjFWQU0zdEpN?= =?utf-8?B?T2VpZU1FTTlOR2pweEY1eHZEbGhvSEF6WEhsVG1kWTVkTnZzMS80eFk4Ynho?= =?utf-8?B?WjdLWnpWUEVZYk9sVGNVOVorOCtJZHZGQ3ZlVzVBZjlaZm5VSHEvZHI4Tk9w?= =?utf-8?B?Y0REbTNjMVlldjZxby9nQlRKNGxVczllMmZOSmJpOGR3V1FoZytaekRQWmtN?= =?utf-8?B?cFZSNzhxR00xa3U4SVNvSkpvWkFPdjNFcUdDdVhSNlE4eVRUbGpvTmdRVUN4?= =?utf-8?B?OWJLQ2FmZjAra0JOWmhCN3JOSmVabkJzS0lIeTlzMG5KNkhLWkRvUE1GN1V2?= =?utf-8?B?VkpNb0txODJmR2M1S0ZaMVVMdVlIbEJWYktQMEIxeGZBT2dYL0xIY1JneE9Z?= =?utf-8?B?cDBLWXIxRHUxdno0NHZtSmRBYTcxeWxsOHp3RUlsK2xweDB0c3hQSUI4bURh?= =?utf-8?B?ak1VKzhlSGJhNTU1WXNieVhvZXNyUTk5dzJpRkVXTlRpMkpoTVBjRHAxazhC?= =?utf-8?B?VldWWU9xT2VWNG5IVlIveFgvY0pSYkloelAyT0Y1U0E2ZEs5eTJyNVprbVQw?= =?utf-8?B?Y05WNkpCblMvelJBbjlUWGJCejZjdDI5QnhubEhPWDdoM0Y4a1BYTW9KVGdE?= =?utf-8?B?OWh0cGFtZHptM3NQWFhHMFQ1NWxBbGNPcEU4a29lSGF1TEU2WVFFeWRHVjlQ?= =?utf-8?Q?9FrRV3wj4W/Cv9YB2dtq9cxSX?= X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-Network-Message-Id: 108742fe-6c2f-4a5b-6dc4-08db78abf6a3 X-MS-Exchange-CrossTenant-AuthSource: SN6PR12MB2621.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 Jun 2023 14:20:17.7154 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: jzSCaGMf0/68LSwJG/h4+NA+TDIYXUdUgouos4eQ4uazDll7ebqKy27Bz79EK3YgHMk0/XdI8IndYM8iTze6eg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: BL0PR12MB4931 On 26/06/2023 04:34, Penny Zheng wrote: > CAUTION: This message has originated from an External Source. Please use proper judgment and caution when opening attachments, clicking links, or responding to this email. > > > virt_to_maddr and maddr_to_virt are used widely in Xen code. So > even there is no VMSA in MPU system, we keep the interface in MPU to > stay the same code flow. > > The MPU version of virt/maddr conversion is simple, and we just return > the input address as the output with type conversion. > > Signed-off-by: Penny Zheng > Signed-off-by: Wei Chen > --- > v3: > - Fix typos > - Move the implementation from mm/mpu.h to mm.h, to share as much as > possible with MMU system. > --- > xen/arch/arm/include/asm/mm.h | 15 +++++++++++++++ > 1 file changed, 15 insertions(+) > > diff --git a/xen/arch/arm/include/asm/mm.h b/xen/arch/arm/include/asm/mm.h > index eb520b49e3..ea4847c12b 100644 > --- a/xen/arch/arm/include/asm/mm.h > +++ b/xen/arch/arm/include/asm/mm.h > @@ -267,13 +267,22 @@ static inline void __iomem *ioremap_wc(paddr_t start, size_t len) > /* Page-align address and convert to frame number format */ > #define paddr_to_pfn_aligned(paddr) paddr_to_pfn(PAGE_ALIGN(paddr)) > > +#ifndef CONFIG_HAS_MPU > static inline paddr_t __virt_to_maddr(vaddr_t va) > { > uint64_t par = va_to_par(va); > return (par & PADDR_MASK & PAGE_MASK) | (va & ~PAGE_MASK); > } > +#else > +static inline paddr_t __virt_to_maddr(vaddr_t va) > +{ > + return (paddr_t)va; > +} > +#endif /* CONFIG_HAS_MPU */ > + > #define virt_to_maddr(va) __virt_to_maddr((vaddr_t)(va)) > > +#ifndef CONFIG_HAS_MPU > #ifdef CONFIG_ARM_32 > static inline void *maddr_to_virt(paddr_t ma) > { > @@ -292,6 +301,12 @@ static inline void *maddr_to_virt(paddr_t ma) > ((ma & ma_top_mask) >> pfn_pdx_hole_shift))); > } > #endif > +#else /* CONFIG_HAS_MPU */ > +static inline void *maddr_to_virt(paddr_t ma) > +{ > + return (void *)(unsigned long)ma; Why do you need "(unsigned long)ma" ? Both "unsigned long" and "paddr_t" are u64. - Ayan > +} > +#endif > > /* > * Translate a guest virtual address to a machine address. > -- > 2.25.1 > > From xen-devel-bounces@lists.xenproject.org Thu Jun 29 14:23:55 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 14:23:55 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556849.869671 (Exim 4.92) (envelope-from ) id 1qEsYi-0005Ge-N0; Thu, 29 Jun 2023 14:23:44 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556849.869671; Thu, 29 Jun 2023 14:23:44 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEsYi-0005GX-JJ; Thu, 29 Jun 2023 14:23:44 +0000 Received: by outflank-mailman (input) for mailman id 556849; Thu, 29 Jun 2023 14:23:43 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEsYh-0005GR-6W for xen-devel@lists.xenproject.org; Thu, 29 Jun 2023 14:23:43 +0000 Received: from esa4.hc3370-68.iphmx.com (esa4.hc3370-68.iphmx.com [216.71.155.144]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 8937a38f-1688-11ee-8611-37d641c3527e; Thu, 29 Jun 2023 16:23:38 +0200 (CEST) Received: from mail-co1nam11lp2171.outbound.protection.outlook.com (HELO NAM11-CO1-obe.outbound.protection.outlook.com) ([104.47.56.171]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 29 Jun 2023 10:23:32 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by BY5PR03MB4981.namprd03.prod.outlook.com (2603:10b6:a03:1f2::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.24; Thu, 29 Jun 2023 14:23:27 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606%4]) with mapi id 15.20.6521.023; Thu, 29 Jun 2023 14:23:27 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 8937a38f-1688-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1688048618; h=message-id:date:subject:to:cc:references:from: in-reply-to:content-transfer-encoding:mime-version; bh=0MDxt2GgRK+2w85hTGFMTLyDMERe6l1HetjhK5vHRBs=; b=RdO+C0udWEoKhhfsjqMGuLEL0pMDYhGs0oYI6q7FssTG6pIuWoIWGlMc xvs2pJLUg17sY38DkzBTbnrIPxdfQek2AUNGjYZY6sMbHsfZldSaRv7h7 h2KOyiLRIK1dDt1I3N50wzG3u6+J84LQ0J9Idm0P1eydKj9rY4MHMtbc2 g=; X-IronPort-RemoteIP: 104.47.56.171 X-IronPort-MID: 117180749 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:0wfOP6K5iz14ahyhFE+RdJQlxSXFcZb7ZxGr2PjKsXjdYENS0GRVy mRLXGDSaKqJYjT2e41+b4W+9ENX6J6GnYBrHQFlqX01Q3x08seUXt7xwmUcnc+xBpaaEB84t ZV2hv3odp1coqr0/0/1WlTZhSAgk/rOHvykU7Ss1hlZHWdMUD0mhQ9oh9k3i4tphcnRKw6Ws Jb5rta31GWNglaYCUpKrfrawP9TlK6q4mhA4AZvPaojUGL2zBH5MrpOfcldEFOgKmVkNrbSb /rOyri/4lTY838FYj9yuu+mGqGiaue60Tmm0hK6aYD76vRxjnVaPpIAHOgdcS9qZwChxLid/ jnvWauYEm/FNoWU8AgUvoIx/ytWZcWq85efSZSzXFD6I+QrvBIAzt03ZHzaM7H09c5WWWwT1 vwiCgoBZyGSvsOKzeOLEfdV05FLwMnDZOvzu1lG5BSAVLMNZsmGRK/Ho9hFwD03m8ZCW+7EY NYUYiZuaxKGZABTPlAQC9Q1m+LAanvXKmUE7g7K4/dppTGMlWSd05C0WDbRUvWMSd9YgQCzo WXe8n6iKhobKMae2XyO9XfEaurnxHqkAdJKS+HpnhJsqGaP1jcVMRc0aXrlrPCGq0q0Yu1yd kNBr0LCqoB3riRHVOLVVgyxpn2Zuxc0Ut9cVeY97Wml8qfS5RffNGgJSDFpYcYj8sQxQFQCx lKP2t/kGzFrmLmUUm6GsKeZqyuoPioYJnNEYjULJSMe+MXqqow3ihPJT/5gHbSzg9mzHiv/q xiIsSw/irM7ncMNkaKh8jjviT+2uoLASAJz4wzNR3+k9StwfovjbIutgXDl6vJHIJecX0O2l nEOkMiD78gDFZiI0ieKRY0lA7yoof2FPTv0iERqWZIm8lyQF2WLeIlR5HR1Ix5vO8NdIDvxO haM4EVW+YNZO2asYelveYWtBs82zK/mU9P4SvTTadkIaZ90HOOawBxTiYer9ziFuCARfWsXY P93re7E4a4mNJla IronPort-HdrOrdr: A9a23:Amq8d67PDa6wmMSDXwPXwPLXdLJyesId70hD6qkXc3Bom62j+P xG+c5x6faaslgssR0b+OxoWpPwIk80hKQU3WB5B97LNmTbUQCTXeNfBOXZslrdMhy72ulB1b pxN4hSYeeAa2SSVPyKhTVQxexQpOW6zA== X-Talos-CUID: 9a23:mVpQ+WF5GW/xMxxvqmJGrENJOcAfUEfRxUbBGm6EBDdZE6OsHAo= X-Talos-MUID: 9a23:DqAP/wX86gNVz6fq/ATwlGpkDc1K34XwBUkysJEMgvapaCMlbg== X-IronPort-AV: E=Sophos;i="6.01,168,1684814400"; d="scan'208";a="117180749" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=GnBsvaZQyC3R/AtdYp/TB2ouJLZUU/p/Rn2fD7Zt26bEdsvu7rwVYxVwSjxmJa5zr6EQ3HRzB79kO9tv531Orbgwd6Jv2GZbm/uB4XNoSNvZgpLd497r38516NhnDE4wsf7IixpX5wMLufpDQB243VuLab8/1ATo7i8Bj1yQKZ1OrfNG0sLgyj/ooVnyCas2mieXaoqhy1RpLXft2JJw5Uko8bXvayj5zfUdleqZ2veXeD7geLK1OSwtxoTIsJqM08B3pwe+2PlzVjJikl2aGhwf1gPsvvoHQ83LEvZ1ySaA671iIRcZA5fywm7c8pHyoqKJWNOBxdqrCiyGb8QeMg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=0MDxt2GgRK+2w85hTGFMTLyDMERe6l1HetjhK5vHRBs=; b=KuD1bFsrQN5ssNyeI2O7CP3d+3sECErutdcqURQN/cWMlQbLqfTKidI+EK61nlZFNXDsJf2N/pi+7rQW9ptaZzsFcGrjYi35E5z1sU1OkNqsQ0GqZJDmkhqUAVGrBefKk5mFFue4b2toQZ8GIsnBOJOerHke5wCtD7Bqg+d7KG5O4MXtB5NaDtUhpv2q0FuN6OvfTPAgYMQpFrD6eNmPJOj8joxgna/Wjm6JpM0rG9t2fDFK2QpeSWKRBAZXwGvzvGdwtiwa3nGjaJKur7n5opuh2CFLmZutbgkSlBL9lGXvFXZUAGD1hzJ79SCvwn6DReQeQTB9dw20xui7OiJ7DA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=0MDxt2GgRK+2w85hTGFMTLyDMERe6l1HetjhK5vHRBs=; b=idkTFBD5Z8fKcBPir05RiwhvxTCcCyShnhmcfKVibf66Dpeit9qkX9lsU2PWIpjufqrXqWQZn8LSa9wxvSeBAKDNgZ3BvYcwzE9mTPi37xB2D/ZPKxgEdA4oRaYjPVnX9DvPk9JeOqZcMQuJc4SjVyHhftD8Bz9I89rbgQ+X+so= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: <2c8387ab-547d-5bdf-5d62-e7a950e5c1de@citrix.com> Date: Thu, 29 Jun 2023 15:23:20 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH v3 28/52] xen/mpu: plump virt/maddr conversion in MPU system To: Ayan Kumar Halder , Penny Zheng , xen-devel@lists.xenproject.org Cc: Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk , Wei Chen References: <20230626033443.2943270-1-Penny.Zheng@arm.com> <20230626033443.2943270-29-Penny.Zheng@arm.com> <674011bb-b8df-d11e-a322-1827096c1b74@amd.com> Content-Language: en-GB From: Andrew Cooper In-Reply-To: <674011bb-b8df-d11e-a322-1827096c1b74@amd.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO4P123CA0449.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:1a9::22) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|BY5PR03MB4981:EE_ X-MS-Office365-Filtering-Correlation-Id: d417dd0a-8ef2-4cd1-0bfb-08db78ac6767 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: Uk+4U+8tknbSdbbRMVUA1cxAJkf7nPen/fYbTVZtOAjtEWBf/YN3sgywOj7MooGQSmhKNYJA2v5VqzP3fd7y0QGXEOFFGsFORjW0jRn3r78BUYHmCuzCvtuN+8eMHu0HRJ78PATqN0JOG1urK8Ai2u6B+XhsO9YwuS6KNkHJhFo7gKOj6WR3RMMhDWVenH2xZGt01GZ+Hp0RhXvc0YQgrhOfYzC7huRvN8xmlwNDTES7IMXXVI4GgYEGo+0R2IaK04laWF4WpVI8kL/ZNDkSo2nYF9Rd4NDogdk29hKiGZD/wFg1g6zuZpZmjc7VIPnh9cqtFn9M5tbg6onrR9of/dYxtls9jjz0I78pGRS4yUWnBPcfibpppvXBY9wCUaZFUrDZYplbJIAqE9Vn8H65MYKxDMALnJ4lzHyZ1LZmJvM9463DX61J8KZNPBlOlvhXrhzKrEfjToWJqtAzLqCf0PH6STm/CuigVwnmQdpD4Qh/ZjAYjaZuUY9Xw2tJt5R3IUw+G/GksOGEtmdZvmCmYpAFPPLd1Y61rVEkxHX0XvX2VoIy8VawetWMXuqDBwFJcz5tg9NX3eRdA2LshUBGuFJ4GjPZOGXyOCkIqL1RgdbtBGpEKSjMPlq6UjHwIxdqnseHqSMZnTTL6384noSmaQ== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(366004)(396003)(136003)(376002)(346002)(39860400002)(451199021)(26005)(54906003)(110136005)(6486002)(4744005)(6666004)(186003)(2616005)(82960400001)(38100700002)(53546011)(6506007)(31696002)(86362001)(41300700001)(2906002)(478600001)(66556008)(66476007)(316002)(4326008)(36756003)(66946007)(6512007)(31686004)(5660300002)(8676002)(8936002)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?T0dQUGRoQWIrRFBwc2F2MFNvcHlpWkhTUEx4QmxBaHVzNWkyaTQwTVR6TVNk?= =?utf-8?B?WllldDZnNENrSDVUMldGVFVkcUo2WGZoVmlPZ0tYZTNqSzdMWHlXTlU1SlpK?= =?utf-8?B?MVl3WUUzWXRBa2tiTlZKMTZVdDJoUDd4WnI0WmpYSTJKUXovTE1TekwvRjdE?= =?utf-8?B?Z1hzT0RKZDRWdDlncmk5NW9ZQ1djLzNiMnpCYWtVcmx0Z20rVGJFSVA3RFd1?= =?utf-8?B?QjJKK3NiS0ZYdGtnMzlISll3V1k5ODdFQ1VpTm1BVEZIRHFCK1EyRGE2U0VZ?= =?utf-8?B?TVRRSTBRbitPc2FWUUtCOUM0ck1xWDhob2FYazVOaHB4SVU0UzZuQ3JHcWFt?= =?utf-8?B?R1VzbVRzTmI4SVhSU1JZOUVSMTB0enFpSmxpOUFxdHhSeGtLQS9WWTBhMkVr?= =?utf-8?B?b1IxejM1Z0JFejJ4U0hvbU1ITVo3NzFEbzhheXhZdWNGem5JcWZwZVZ5YXpB?= =?utf-8?B?UkdITWFxeXhZWndkMTd2N3Z6TG5tdlhYdXZYcklMRFV4L2p2ZDBWRDllbGRT?= =?utf-8?B?UGc0OUFCUlArZmdGSFlrSEtISFJTbjBybkluVUxMSWFuMnVKdElFT0RDZGZN?= =?utf-8?B?T0FUdnY0M3hPejA0SVNPckVQMlZDT2RBWnhHc3dvakhpN0FsZFIzN0FEMWVD?= =?utf-8?B?U2xQOWhUSGMvb0ZzRHJWN3VidXdqU3ozZWpiL2xUU2VsazRLclRaUE5Lbzhh?= =?utf-8?B?eHRQb3lFcm00aGJuSHBsSTlEZEZFZGNiaEN2VWlIYUJ3ZWRmZmpuMGN0b0Iv?= =?utf-8?B?VG51NWNNZ1IrNk1pNmtvUXcwb1Q1WUZTaFVzWllNdnh3L3E3SlF2UEFFZzNN?= =?utf-8?B?d21RSG8rbFlRM3BqOXZzdFltTkNGOGp5N2RPbU1neHk2TUxvZXZ1cDJLL2Qr?= =?utf-8?B?cEZJOUl5TXFUV2lobmM0UDI4WnJYc05SdkR1OHV4NTVZNGFWcDFsTmpJTWMr?= =?utf-8?B?bmdRS0FQRnNmbXF0TjljTmh4aGUvOU1lM2xFRlZTVjFVNmNsV1ZNMzRKTndt?= =?utf-8?B?cnNlRi9BZUZMdUM2Rm1jMFFRREZwWkdhclpUNUZ0M3hOWDRaMlhyZmJuNHpq?= =?utf-8?B?SHEvV0ZhZlVuUU9Kc3psQ2JmWUxIZkZFUEVibUJPKzdSa2tqK0J5RFdDMGRp?= =?utf-8?B?ejlZMEVzUm5laTd3RkI1QkZESytjc1NHQ08vN2VLdm5mdG4vWll6c3RYRXZ5?= =?utf-8?B?aWREaFhtaVJrdUF5M2pyb2VOVnlGNmNubEE1bnA4RVp3Q2RZY1AzWExkQTFi?= =?utf-8?B?V25nMjg2dGlUR1JtK25FMEJxZ0JtSnR1RytyNWY2Z2I2TG9taTJ2MzNQQ0hm?= =?utf-8?B?MEZUSXpoeVc0bnU0UE9CbEpnN2dndnJtV1VweExFWldSRTFvRnhSTGsrNmha?= =?utf-8?B?SVE3SzdnTDg0b1gyT0tUUzJqZHNxbWFqQlp2TzBmWE14R0VSQUZ2N2d3MDdZ?= =?utf-8?B?MXl1bW9HVDdMRXVhZG5WYWFFak90Uk1PVjRyY0QwbzhrZXhPZXc5aXRwUmoy?= =?utf-8?B?L3lPV1RIcXlaenFjbDRGM3Npc2J3ejBwRjZqSjRvbENVRkdMbzJDMDgvQ3U3?= =?utf-8?B?L1pxZzVNak42WVVnQmZHRnUvWmU3clQvQ0MwSmRvQlkxUmpqV0NxZlk0MFdm?= =?utf-8?B?bURBTGpacEZMOUU0SjdiMkZzVnhPTW1IMkVhNDRFMmlBTXVaU3haVEJBSmRV?= =?utf-8?B?ckpWUEN4bUcycVdYTXorZ0E4ODdSOUNydUIrU3lYTXE1Y1FMOTV2N0NycTNq?= =?utf-8?B?SDZXeTNOQVhpWDFSQlJka25uRXdIa1VKU3dEclR5Q2NYVHVvTXZiYnk4SWJi?= =?utf-8?B?SmdJV09KT2J5aXNiSWNzeXpGUXNNMjlDSEN4WWtZSUtIczlhbjkzNmF3aGwr?= =?utf-8?B?MDlBZlhnMnhrcmVoMHZBR0toelVaU2VaSC81M2VEQnp1eVJCUGVmY0NzY0c3?= =?utf-8?B?NDFZTytxM3RMWkE5SXo5QUs3RHNqZEpFeUp0b0JkTGMvQ2xKRmVhZVRNZkVi?= =?utf-8?B?ZmVWUHJKVEI1UzlKc1BQSHRHS2tDcXNOVlo4MVNyMElWR1orK2NDNzhPWGVi?= =?utf-8?B?eUtYRXFXN2hDbk5uL0RGMHQ4NWFEbFpLV0VSSnd4empRZVFmcFBsQWh3VWM2?= =?utf-8?B?dGh6YVAyM0hRZUhVTlB1VjUrenBLUEExTkZQRExEZkFMSWU2QzJvNytjbnls?= =?utf-8?B?Q3c9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: OLvmzbFKO80IZgtDyScNgO5QmBg96tG7hHyUc2W3yFbAqo9hsgRqiot+MhCIjAB+wmrQQkgScNeIj/db98iINu6r0NdpXtV0DIzRuReR8txy0C3wia0THJk9vSiYJrXsLQtTHdBSOKgEdYabUZJ0n324qUc2SEaazqf0MD2/pfl2oB7SRCewSfRYmRV5ff0zAMXiatGTUppJe04FLsYAw7MF+bLaphn3nRMFtqc4DlLwLk5lPHnexdJAhF6I/7CpKuQFH4R5Y8OtnByUYwZI/jR5IJGOVFmL6svH4l+eyt4EqJGw4JlbLGu7ZdJ5y7xgsFesJx6C6rK247uU6YrKmANZxUW1WwzwQA9Q2k751sOFt3Nt9i2KDMdrTKmcQq/LYJGsNPXXgQTzvdcjo5C6kXY6Z7ZdmJyoIvpTPSuCSzYRnpeTFUZJJZxG4RSYsVbBVDi/L27gTs+AsfzyueJ+UfWO8xEQg+EeBh7Th1Jklo7GBCEQhnNuwkrt8QY2AfgMTMSSlr4F9vO7xGT0iZKptGJW17WFPNR4mhav3GeSTsbEn+FoXutPTH+9iMQ3h9bNBCyd+ha7LNBHk2dsWkKZ5r0nZkxXKkYa9Rygkmw3Pzvpc1wO0nJbopcMDMroVBUU1N83LB5LeylqqNsFxymFrr6oLkux3DS2Rlz/p+mFjMEDVm4rI7Ry13o5cLjHoGesBo0j9ZWCnvQJPZh9e1oEX+YiTHre9L+sN11hTOysXET1F/oINrmbjKMwQ2NFMb71hf22uyi7qEy54QC1NohbV5N/UEDo0d+JZ0OF+xDRU4DYFYVjMVfeL1Qv09Jp1I7duJUv2Ws9HB/k4+1fXenr8MjDawL4p/kYlVs7VX15NecDm/6Q095GknjANdnuQRF1B+DOfBUUQ/Tq/EuS3QwNOg== X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: d417dd0a-8ef2-4cd1-0bfb-08db78ac6767 X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 Jun 2023 14:23:27.0680 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 9WpqbJ4LgzY7az00aG1lhd2BUtX3RHkWuqAI0x3qCZJCBg9U0YjjiDDRar3CAVppHi+PH9Wch9UUXmpBxswr50TYO5BSbya0XsEpO4cB6TI= X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY5PR03MB4981 On 29/06/2023 3:20 pm, Ayan Kumar Halder wrote: > On 26/06/2023 04:34, Penny Zheng wrote: >> diff --git a/xen/arch/arm/include/asm/mm.h >> b/xen/arch/arm/include/asm/mm.h >> index eb520b49e3..ea4847c12b 100644 >> --- a/xen/arch/arm/include/asm/mm.h >> +++ b/xen/arch/arm/include/asm/mm.h >> @@ -292,6 +301,12 @@ static inline void *maddr_to_virt(paddr_t ma) >>                        ((ma & ma_top_mask) >> pfn_pdx_hole_shift))); >>   } >>   #endif >> +#else /* CONFIG_HAS_MPU */ >> +static inline void *maddr_to_virt(paddr_t ma) >> +{ >> +    return (void *)(unsigned long)ma; > > Why do you need "(unsigned long)ma" ? Both "unsigned long" and > "paddr_t" are u64. For when paddr_t really isn't u64. The logic is correct, but it is an opencoding of the _p() macro for turning an arbitrary integer into a pointer. ~Andrew From xen-devel-bounces@lists.xenproject.org Thu Jun 29 14:29:57 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 14:29:57 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556856.869681 (Exim 4.92) (envelope-from ) id 1qEsee-0005y9-Ep; Thu, 29 Jun 2023 14:29:52 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556856.869681; Thu, 29 Jun 2023 14:29:52 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEsee-0005y2-Bs; Thu, 29 Jun 2023 14:29:52 +0000 Received: by outflank-mailman (input) for mailman id 556856; Thu, 29 Jun 2023 14:29:51 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEsed-0005xd-HC for xen-devel@lists.xenproject.org; Thu, 29 Jun 2023 14:29:51 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEsec-00066L-TI; Thu, 29 Jun 2023 14:29:50 +0000 Received: from 54-240-197-234.amazon.com ([54.240.197.234] helo=[192.168.2.72]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qEsec-00050P-M7; Thu, 29 Jun 2023 14:29:50 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=uoe4E0r6VF/PVbNYzzlj1HtWMu/9jlP4ejlFsxEySxY=; b=szgSsoSDemrS1QdIuSJoKaGmGy iGy+ybzLUByWP+Xzny/pHGXyf1xdrvNwOVQXJHPwZQKBZ6vJT5cMj7eSE6/FQ45EvJPuLDoWnjPBm 28bKTN3N9ZmIt188kakP6ettpo/ZtLBZnQ9NvffxYjaSbNQ/yCPnpw1YHYNJF1UYcOOI=; Message-ID: <3e77ef15-4a34-8246-bf48-d87557690b48@xen.org> Date: Thu, 29 Jun 2023 15:29:48 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v3 27/52] xen/mpu: introduce setup_mm_mappings Content-Language: en-US To: Ayan Kumar Halder , Penny Zheng , xen-devel@lists.xenproject.org Cc: Stefano Stabellini , Bertrand Marquis , Volodymyr Babchuk , Wei Chen References: <20230626033443.2943270-1-Penny.Zheng@arm.com> <20230626033443.2943270-28-Penny.Zheng@arm.com> From: Julien Grall In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Hi, On 29/06/2023 15:05, Ayan Kumar Halder wrote: > On 26/06/2023 04:34, Penny Zheng wrote: >> CAUTION: This message has originated from an External Source. Please >> use proper judgment and caution when opening attachments, clicking >> links, or responding to this email. >> >> >> Function setup_pagetables is responsible for boot-time pagetable setup >> in MMU system at C world. >> In MPU system, as we have already built up start-of-day Xen MPU memory >> region mapping in assembly boot-time, here we only need to do a few >> memory management data initializtion, including reading the number of >> maximum MPU regions supported by the EL2 MPU, and setting the according >> bitfield for regions enabled in assembly boot-time, in bitmap >> xen_mpumap_mask. >> This bitmap xen_mpumap_mask is responsible for recording the usage of >> EL2 MPU >> memory regions. >> >> In order to keep only one codeflow in arm/setup.c, setup_mm_mappings >> , with a more generic name, is introduced to replace setup_pagetables. >> >> Signed-off-by: Penny Zheng >> Signed-off-by: Wei Chen >> --- >> v3: >> - introduce bitmap xen_mpumap_mask for dynamic allocation on MPU regions >> --- >>   xen/arch/arm/include/asm/arm64/mpu.h     |  1 + >>   xen/arch/arm/include/asm/arm64/sysregs.h |  3 +++ >>   xen/arch/arm/include/asm/mm.h            |  4 ++-- >>   xen/arch/arm/mmu/mm.c                    |  7 +++++- >>   xen/arch/arm/mpu/mm.c                    | 30 ++++++++++++++++++++++++ >>   xen/arch/arm/setup.c                     |  2 +- >>   6 files changed, 43 insertions(+), 4 deletions(-) >> >> diff --git a/xen/arch/arm/include/asm/arm64/mpu.h >> b/xen/arch/arm/include/asm/arm64/mpu.h >> index 6ec2c10b14..407fec66c9 100644 >> --- a/xen/arch/arm/include/asm/arm64/mpu.h >> +++ b/xen/arch/arm/include/asm/arm64/mpu.h >> @@ -19,6 +19,7 @@ >>    * or it needs adjustment. >>    */ >>   #define REGION_UART_SEL            0x07 >> +#define MPUIR_REGION_MASK          ((_AC(1, UL) << 8) - 1) > > May be this is simpler to read > > #define MPUIR_REGION_MASK _AC(0xFF, UL) > > Also, you can move it to xen/arch/arm/include/asm/mpu.h as it is common > between R52 and R82. I would actually prefer if we use GENMASK(...). [...] >> diff --git a/xen/arch/arm/mpu/mm.c b/xen/arch/arm/mpu/mm.c >> index fb6bb721b1..e06a6e5810 100644 >> --- a/xen/arch/arm/mpu/mm.c >> +++ b/xen/arch/arm/mpu/mm.c >> @@ -20,6 +20,7 @@ >>    */ >> >>   #include >> +#include >>   #include >>   #include >> >> @@ -27,6 +28,35 @@ >>   pr_t __aligned(PAGE_SIZE) __section(".data.page_aligned") >>        xen_mpumap[ARM_MAX_MPU_MEMORY_REGIONS]; >> >> +/* Maximum number of supported MPU memory regions by the EL2 MPU. */ >> +uint8_t __ro_after_init max_xen_mpumap; >> + >> +/* >> + * Bitmap xen_mpumap_mask is to record the usage of EL2 MPU memory >> regions. >> + * Bit 0 represents MPU memory region 0, bit 1 represents MPU memory >> + * region 1, ..., and so on. >> + * If a MPU memory region gets enabled, set the according bit to 1. >> + */ >> +static DECLARE_BITMAP(xen_mpumap_mask, ARM_MAX_MPU_MEMORY_REGIONS); >> + >> +void __init setup_mm_mappings(unsigned long boot_phys_offset) >> +{ >> +    unsigned int nr_regions = REGION_UART_SEL, i = 0; >> + >> +    /* >> +     * MPUIR_EL2.Region[0:7] identifies the number of regions >> supported by >> +     * the EL2 MPU. >> +     */ >> +    max_xen_mpumap = (uint8_t)(READ_SYSREG(MPUIR_EL2) & >> MPUIR_REGION_MASK); > > NIT:- You may dop "& MPUIR_REGION_MASK " as the other bits are RES0 From the Arm Arm (look for the definition of RES0 in the glossary): " To preserve forward compatibility, software: • Must not rely on the bit reading as 0. • Must use an SBZP policy to write to the bit. " So we should not drop "& MPUIR_REGION_MASK". Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Thu Jun 29 14:42:06 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 14:42:06 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556860.869691 (Exim 4.92) (envelope-from ) id 1qEsqO-0008Lg-HR; Thu, 29 Jun 2023 14:42:00 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556860.869691; Thu, 29 Jun 2023 14:42:00 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEsqO-0008LZ-Dp; Thu, 29 Jun 2023 14:42:00 +0000 Received: by outflank-mailman (input) for mailman id 556860; Thu, 29 Jun 2023 14:41:59 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEsqN-0008LT-7G for xen-devel@lists.xenproject.org; Thu, 29 Jun 2023 14:41:59 +0000 Received: from EUR02-AM0-obe.outbound.protection.outlook.com (mail-am0eur02on20603.outbound.protection.outlook.com [2a01:111:f400:fe13::603]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 1811ab5a-168b-11ee-8611-37d641c3527e; Thu, 29 Jun 2023 16:41:56 +0200 (CEST) Received: from DUZP191CA0033.EURP191.PROD.OUTLOOK.COM (2603:10a6:10:4f8::29) by DB9PR08MB6618.eurprd08.prod.outlook.com (2603:10a6:10:263::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.26; Thu, 29 Jun 2023 14:41:48 +0000 Received: from DBAEUR03FT016.eop-EUR03.prod.protection.outlook.com (2603:10a6:10:4f8:cafe::ba) by DUZP191CA0033.outlook.office365.com (2603:10a6:10:4f8::29) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.22 via Frontend Transport; Thu, 29 Jun 2023 14:41:48 +0000 Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by DBAEUR03FT016.mail.protection.outlook.com (100.127.142.204) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.22 via Frontend Transport; Thu, 29 Jun 2023 14:41:48 +0000 Received: ("Tessian outbound c08fa2e31830:v142"); Thu, 29 Jun 2023 14:41:48 +0000 Received: from df0ddd908ffe.2 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 539BB292-8AA1-42A2-9253-58BFDDB76D17.1; Thu, 29 Jun 2023 14:41:42 +0000 Received: from EUR01-VE1-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id df0ddd908ffe.2 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Thu, 29 Jun 2023 14:41:42 +0000 Received: from AM6PR08MB3749.eurprd08.prod.outlook.com (2603:10a6:20b:8f::22) by AS8PR08MB8875.eurprd08.prod.outlook.com (2603:10a6:20b:5b7::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.26; Thu, 29 Jun 2023 14:41:36 +0000 Received: from AM6PR08MB3749.eurprd08.prod.outlook.com ([fe80::ed0b:5730:a1f9:577b]) by AM6PR08MB3749.eurprd08.prod.outlook.com ([fe80::ed0b:5730:a1f9:577b%5]) with mapi id 15.20.6521.026; Thu, 29 Jun 2023 14:41:36 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 1811ab5a-168b-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=lBaIWQRoF1ceVdV/20efyPwXqZt64SKR4raOmqcPsM0=; b=18NEI8YFD3R4SUCC/i5/8ZUR+wohfYAlAUkXZ0HbIzAGcTp6aY0tAgqtpQKF0tY39UNyKeHU+5BAASgPgE+MQD3bct/SgfYYIgg/kkWkWl5/wj3wOx+qzCXNlWL0FEXpaYrgX3NT4+/N/sS0qpUY/ooj6JHXXQGnbB5W0DzKBLs= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C X-CheckRecipientChecked: true X-CR-MTA-CID: 6df6ecade10a532a X-CR-MTA-TID: 64aa7808 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=LX6BjXNBx5BhzNJ2YSBR1upA8Tcn+R5s+ezPv9eI9UBDyT4iPz2NS700PHEGnWXvGqreR8t4t2d2XjV4JDiSnbLf8PFt8tB5/InTTFl8hCi6p0BPWf3YX1W9C4zlm5BiQfuaolS5vjAeT44MRtVljf5wLmtN2A8n6fC6qlZI+Z1fId4vcMkQE0pxrWoroxHfS38mAkYWbHvLfuWa7Sdoq/dmUtAtkXVxZSxtYBcdQAprcJbTKQRj52ZTX2lB6FtNRwDCz7CblHDweHKfM+9jO6lb55hoaQggbWoqMiiO82KZc2covKOzuNLMKoilKMTPHyCPZg9tx5G39EygF9+RAQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=lBaIWQRoF1ceVdV/20efyPwXqZt64SKR4raOmqcPsM0=; b=OFFtTAT16E4aWYEW3h9XpbXCAOsN8Yd28+ZfPCHeHiWnq8ppSPrRMASmfs4cr7b5SCzaILTSPEBK4ZixayoxniHAzSt0BsSloo2MIvKlyVX3Hq080tASdbXy4sojYr0WvCStobyvmeZVjLbdTj5Lc81EJ2O9QH/f1q6I8Sj5uulXjyJB6480Vv4UwOvbfU2mDw3JFswr3emfBclCJ5qm5FOSeuGT8DPivaVZBC4oaQArf8RMtXMZgduWPV7MbT4TlCYNxpXKzZfp75P21O89pJ+GXZ2tOAJhJX/I6pW7/LjO16cR3xJ3q9yIJSXf83yp5U/b2FQDxehq+5zbj/HOaA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=lBaIWQRoF1ceVdV/20efyPwXqZt64SKR4raOmqcPsM0=; b=18NEI8YFD3R4SUCC/i5/8ZUR+wohfYAlAUkXZ0HbIzAGcTp6aY0tAgqtpQKF0tY39UNyKeHU+5BAASgPgE+MQD3bct/SgfYYIgg/kkWkWl5/wj3wOx+qzCXNlWL0FEXpaYrgX3NT4+/N/sS0qpUY/ooj6JHXXQGnbB5W0DzKBLs= From: Luca Fancellu To: Nicola Vetrini CC: Xen-devel , Stefano Stabellini , "michal.orzel@amd.com" , "xenia.ragiadakou@amd.com" , "ayan.kumar.halder@amd.com" , "consulting@bugseng.com" , "jbeulich@suse.com" , "andrew.cooper3@citrix.com" , "roger.pau@citrix.com" , Bertrand Marquis , "julien@xen.org" , Volodymyr Babchuk Subject: Re: [XEN PATCH v3 1/3] xen/arch/arm: fix violations of MISRA C:2012 Rule 3.1 Thread-Topic: [XEN PATCH v3 1/3] xen/arch/arm: fix violations of MISRA C:2012 Rule 3.1 Thread-Index: AQHZqnGGC/1ABJScNUiVVSDKy4Xa0K+h2qmA Date: Thu, 29 Jun 2023 14:41:34 +0000 Message-ID: <5FD86C4C-3BD6-4ED3-A910-683DCC86613D@arm.com> References: <7996a8bb62e62076d48bdf289e37352bb5e43b52.1688032865.git.nicola.vetrini@bugseng.com> In-Reply-To: <7996a8bb62e62076d48bdf289e37352bb5e43b52.1688032865.git.nicola.vetrini@bugseng.com> Accept-Language: en-GB, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-mailer: Apple Mail (2.3731.600.7) Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-traffictypediagnostic: AM6PR08MB3749:EE_|AS8PR08MB8875:EE_|DBAEUR03FT016:EE_|DB9PR08MB6618:EE_ X-MS-Office365-Filtering-Correlation-Id: 081a3b54-25b4-41aa-969d-08db78aef7ec x-checkrecipientrouted: true nodisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: 8E9qR2IUbMWTtlLSJQMgWPEka7hDORZhNBU+aeGhIu9+GsUdjGP99Zsc34yyCHvonlrq9uDqg+7sCsT7zVO49Edpb0DWeuhvZe5vFRqGnDZ1u47LSiEkwYqFR/uKCd/VgK9KzCSl69GQSVgFWRoW5IjlLyZ8lDQlvFuw8tyxZwPS1IVnPoT1yg9Z2oQZqMZj5JX8QBWl7WzoHP6JXCx3oEr1X6G6Hfw8VsHIDNIsnkwCV0IXm9GdAeZcmYFoZ6TIS0ETswvVv8a4RW+2EI0GAp7FjOq2hdvwySRg1z6ama+8BXqYOj1dgpKTKHfD9O10p5JxwVs+EOqmiJrerjlg1crNnvJUmH+sXVe4oD1h7BA46NoHHKzM8i4i5OrBBcKdnbk4vdRNaQE9szVB/ZZoVKH4BC54XvqXhBQm2KFSD57qlCv+ZSoZubs+ilcZ2q2DYSSZE4vwCrRxlm1lOvSxs9EvcdSwVL/KAtoyF+AMPtjX0gs3SEgZxFmns1SwgGK/b/STaI+SpezuMPB0hFq9PecKcdxf5g+BnMcSgDC0UnXGuPMKB4P/tljLChYQWH1wjwlbxWDnB+evV4DscA5NFBPTEOAgSW1KHtdprOUN609XtMxb09KRGEMdX9i0P7pvQ29eshW+FKQhPUEwnClrSQ== X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM6PR08MB3749.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(136003)(39860400002)(366004)(396003)(376002)(346002)(451199021)(76116006)(6486002)(71200400001)(478600001)(91956017)(54906003)(53546011)(41300700001)(6512007)(6506007)(4326008)(186003)(26005)(66476007)(4744005)(64756008)(38100700002)(5660300002)(8676002)(6916009)(8936002)(66446008)(2906002)(66556008)(316002)(66946007)(7416002)(122000001)(86362001)(33656002)(36756003)(38070700005)(2616005)(83380400001)(66899021)(45980500001);DIR:OUT;SFP:1101; Content-Type: text/plain; charset="utf-8" Content-ID: <4F91891B284107488EB201441349180F@eurprd08.prod.outlook.com> Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR08MB8875 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: DBAEUR03FT016.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: 704e6b8d-9a76-49c3-464d-08db78aeefa9 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: TPvv2oO14TLVl3VNIg0rs5qCAaarnPhazJRXvZdw+IuXMBPIpYf/O8QPWNEHSbd1I+qOJBQ++ehvv2Z6h6FAp+i/FVWM3r81P6amGSBGXiEF2aI72lXdLiOYRH+w0EPINJPhBRl+X1MnayNHhFg7ZvkyWq22RzC6J9PfWPACS5Bg4cj2sdTN8fPaX4pickRScemqqmzmpX5aX01WvunWLkjhF4inWG+O6++WCDDV5ArgrXWykIRPtanh6dBnjac+unUGk7MGWeqJ12zsClUvIZWdf3biXFoqNuuDL1fYanwovuOiP9koDDfLX7p9u5OVVt55ZQjIcIMxV3Ws+zJ+XDG7sQFxzyh62Dpg3iSWfc26PSXy1RMZLUMwmaCj7max9bkHy+5YAHZKTlN72N/5IxGdzlF2nIrMTAK8EtIUntkF78dKdIVH6VYryBwEuBzQixtox4/dfeIxxxNd+1lqFGabce2rAWmzHI85Z7LtZ2Tn2B2axz7prV9czSiFb+y56pCZO9L/D5Xjxcp+kgzoBRejEPHHSL+qGoLJDfGAWJFxGgb7WO2fRRLo8fXkJ0qESNbEL+OWlRFXiBw4EPI049wSn72SH8+Am6G/tuVSonFUZRqhpicvrOyiPoGd4NGBob8D6Qssx8HTzD2inGfG2RR8INTDIq1bBG6ghNAPTMVANv9i/f6p4ZYg++r2ujWzHblQFIBCDdhY++Fbx7Z0P9f0mKdmFqNKA0mr1e6s4LgNYAc+vWKA9pDc+09oYC5i X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230028)(4636009)(136003)(39860400002)(376002)(396003)(346002)(451199021)(40470700004)(46966006)(36840700001)(107886003)(8676002)(41300700001)(70206006)(316002)(8936002)(6506007)(26005)(186003)(6512007)(336012)(53546011)(4744005)(54906003)(478600001)(4326008)(2616005)(6486002)(70586007)(40460700003)(66899021)(82310400005)(2906002)(5660300002)(40480700001)(6862004)(356005)(81166007)(82740400003)(33656002)(36756003)(36860700001)(86362001)(47076005)(83380400001);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 Jun 2023 14:41:48.2177 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 081a3b54-25b4-41aa-969d-08db78aef7ec X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: DBAEUR03FT016.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR08MB6618 DQoNCj4gT24gMjkgSnVuIDIwMjMsIGF0IDExOjA2LCBOaWNvbGEgVmV0cmluaSA8bmljb2xhLnZl dHJpbmlAYnVnc2VuZy5jb20+IHdyb3RlOg0KPiANCj4gSW4gdGhlIGZpbGVzIGB4ZW4vYXJjaC9h cm0vaW5jbHVkZS9hc20vYXJtKDMyfDY0KS9mbHVzaHRsYi5oJyB0aGVyZSBhcmUgYQ0KPiBmZXcg b2NjdXJyZW5jZXMgb2YgbmVzdGVkICcvLycgY2hhcmFjdGVyIHNlcXVlbmNlcyBpbnNpZGUgQy1z dHlsZSBjb21tZW50DQo+IGJsb2Nrcywgd2hpY2ggdmlvbGF0ZSBSdWxlIDMuMS4gVGhlIHBhdGNo IGFpbXMgdG8gcmVzb2x2ZSB0aG9zZSBieSBjaGFuZ2luZw0KPiB0aGUgaW5uZXIgY29tbWVudHMg dG8gYXJtIGFzbSBjb21tZW50cywgZGVsaW1pdGVkIGJ5ICc7JyBpbnN0ZWFkLg0KPiANCj4gU2ln bmVkLW9mZi1ieTogTmljb2xhIFZldHJpbmkgPG5pY29sYS52ZXRyaW5pQGJ1Z3NlbmcuY29tPg0K DQpDYW4gSSBzdWdnZXN0IGFub3RoZXIgY29tbWl0IHRpdGxlOg0K4oCceGVuL2FybTogdGxiZmx1 c2g6IGZpeCB2aW9sYXRpb25zIG9mIE1JU1JBIEM6MjAxMiBSdWxlIDMuMSINCg0KU29tZXRpbWVz IHdoZW4gSSBhbSBub3Qgc3VyZSBvbiBob3cgdG8gZGVhbCB3aXRoIHByZWZpeGVzLCBJIGNoZWNr IHRvIHRoZSBnaXQNCmhpc3Rvcnkgb2YgdGhlIGxpbmUgSSBhbSBjaGFuZ2luZywgZm9yIHRoZXNl IGxpbmVzIHRoZXJlIHdhcyBhIGNvbW1pdCBmcm9tDQpKdWxpZW4gdXNpbmcgdGhlc2UgcHJlZml4 ZXMuIEnigJltIHVzaW5nIHZzIGNvZGUgd2l0aCBHaXRMZW5zIGV4dGVuc2lvbiwgdGhhdA0KZWFz ZSBhIGxvdCB0aGlzIGtpbmQgb2YgY2hlY2tzLg0KDQpBcGFydCBmcm9tIHRoYXQsIHRoZSBjaGFu Z2VzIGxvb2tzIGdvb2QgdG8gbWU6DQoNClJldmlld2VkLWJ5OiBMdWNhIEZhbmNlbGx1IDxsdWNh LmZhbmNlbGx1QGFybS5jb20+DQoNCg== From xen-devel-bounces@lists.xenproject.org Thu Jun 29 14:43:29 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 14:43:29 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556864.869701 (Exim 4.92) (envelope-from ) id 1qEsre-0000SE-QI; Thu, 29 Jun 2023 14:43:18 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556864.869701; Thu, 29 Jun 2023 14:43:18 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEsre-0000S7-Ne; Thu, 29 Jun 2023 14:43:18 +0000 Received: by outflank-mailman (input) for mailman id 556864; Thu, 29 Jun 2023 14:43:17 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEsrd-0000Rz-HM for xen-devel@lists.xenproject.org; Thu, 29 Jun 2023 14:43:17 +0000 Received: from esa3.hc3370-68.iphmx.com (esa3.hc3370-68.iphmx.com [216.71.145.155]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 469646c6-168b-11ee-8611-37d641c3527e; Thu, 29 Jun 2023 16:43:15 +0200 (CEST) Received: from mail-bn8nam04lp2044.outbound.protection.outlook.com (HELO NAM04-BN8-obe.outbound.protection.outlook.com) ([104.47.74.44]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 29 Jun 2023 10:43:12 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by SA1PR03MB7121.namprd03.prod.outlook.com (2603:10b6:806:332::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.23; Thu, 29 Jun 2023 14:43:09 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606%4]) with mapi id 15.20.6521.023; Thu, 29 Jun 2023 14:43:09 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 469646c6-168b-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1688049795; h=message-id:date:from:subject:to:cc:references: in-reply-to:content-transfer-encoding:mime-version; bh=OJKqDEmMQ1FCfTzvc4qujnDMbSK/MU1gPucHGaJGpuQ=; b=Wg6msNY9xDPhdWo+abmsgonVQxyjZyXwvL/ZL1NeaConBimHMMH7J1ks PT9SBMuVtcIzvsS66zfGBWdnO58nkgxYuneo1vQD/HavLtAnDMiGuqJmS JjfM33jHjsJGaCJL3VkwAVlbWxjbVz8iIDU1cV3o0CkeS93HAFq8+qIWT M=; X-IronPort-RemoteIP: 104.47.74.44 X-IronPort-MID: 114639190 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:/yGE7qxSAg8M26zdTj96t+cVxyrEfRIJ4+MujC+fZmUNrF6WrkUHx 2MaXjrQbPmCamamLd1zat63p08EsZDSxoIyTgpr+CAxQypGp/SeCIXCJC8cHc8wwu7rFxs7s ppEOrEsCOhuExcwcz/0auCJQUFUjP3OHfykTrafYEidfCc8IA85kxVvhuUltYBhhNm9Emult Mj75sbSIzdJ4RYtWo4vw/zF8EoHUMja4mtC5QRgP6ET5jcyqlFOZH4hDfDpR5fHatE88t6SH 47r0Ly/92XFyBYhYvvNfmHTKxBirhb6ZGBiu1IOM0SQqkEqSh8ai87XAME0e0ZP4whlqvgqo Dl7WT5cfi9yVkHEsLx1vxC1iEiSN4UekFPMCSDXXcB+UyQq2pYjqhljJBheAGEWxgp4KU9+8 8AEAhBcVBeKu+Gowa6nTNNdmu12eaEHPKtH0p1h5RfwKK56BLrlE+DN79Ie2yosjMdTG/qYf 9AedTdkcBXHZVtIJ0sTD5U92uyvgxETcRUB8A7T+fVxvDSVkFAZPLvFabI5fvSjQ8lPk1nej WXB52njWTkRNcCFyCrD+XWp7gPKtXqiBNxJReTprpaGhnWMynYZERM9WWeirKeLh2WPQ/JeN XE9r39GQa8asRbDosPGdw21pjuIswARX/JUEvYm80edx6zM+QGbC2MYCDlbZ7QOluU7WDgr3 V+hhM7yCHpkt7j9YW2Z3qeZq3W1Iyd9EIMZTSoNTA9A6d+zpog21k7LVow7TPLzicDpEzbtx TzMtDI5m7gYkc8M0eO84EzDhDWv4JPOS2bZ+znqY45s1SshDKbNWmBiwQGzASpoRGpBcmS8g Q== IronPort-HdrOrdr: A9a23:y5LKw6M+Ax0mqcBcT9z255DYdb4zR+YMi2TDiHoddfUFSKalfp 6V98jztSWatN/eYgBYpTnyAtjmfZq6z+8J3WBxB8bZYOCCggeVxe5ZnOjfKlHbakjDH6tmpN xdmstFeaPN5DpB7foSiTPQe7hA/DDEytHRuQ639QYTcegAUdAF0+4WMHf8LqQ7fnglOXJvf6 Dsmvav6gDQMUj+Ka+Adws4dtmGg+eOuIPtYBYACRJiwA6SjQmw4Lq/PwmE0gwYWzZvx65n1W TeiQT26oiqrvn+k3bnpiPuxqUTvOGk5spIBcSKhMRQAjLwijywbIAkd6yesCszqOSP7k9vtN XXuR8vM+l69nuUVGCophnG3RXmzV8VmjLf4G7dpUGmjd3yRTo8BcYErYVFciHB405lmN1nyq pE00+QqpISVHr77W7AzumNcysvulu/oHIkn+JWp3tDUbEGYLsUiYAE5ktaHLoJASq/woE6F+ tFCt3a+Z9tABinRkGcmlMq7M2nX3w1EBvDak8euvaN2zwTp3x9x1tw/r1pol4wsLYGD7VU7e XNNapl0JtUSNUNUK57DOAdBeOqF23kW3v3QSKvCGWiMJtCF2PGqpbx7rlwzvqtYoY0wJw7n4 mEeE9EtFQ1Z1nlBaS1rdx2Gyj2MSeAtAnWu4RjD8ATgMy5eFOrC1zMdLkWqbrinx1FaferHM paO/ptcovexCXVaMB0NjbFKupvwEklIbwoU+kAKiKzS+LwW/vXX7/gAb/uDYuoNwoYcUXCJV ZGdATPBax7nzWWsznD8VfsZ08= X-Talos-CUID: =?us-ascii?q?9a23=3AvsGtrGoGBgSFhJzYXkohw3LmUe4VdEHB5leBGUi?= =?us-ascii?q?xNWV3SaGJT2Wh5Ioxxg=3D=3D?= X-Talos-MUID: 9a23:zOX8WQjt2ai8PIctEyhGOsMpK8ty6b2gI0wxiJhYicSvBDRQOimgpWHi X-IronPort-AV: E=Sophos;i="6.01,168,1684814400"; d="scan'208";a="114639190" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Tb6xIWsVxb0yznrofvL/0W+zZ3iOpiNj9Sh6jMT32PUfDSjndQH9nSl4AwKJ8/YrYqLbOPH4HmSHVKUebNRTUaATssaPA8z8zuMI6I0LrPrevm/RbAPuP89rHXwuDf1ILHMNQpI/+LQ1cBM+9uqGLKMkksa+e/g0+TIHxCZYbljUtUveW4KQjRE5reS5mgjnTLEylB82+RHTNSo1rPP5B2kQ6ZV+RGNYPsZFf88jPBhrjkZeO1KOyuMJtBHorZnsKGHRqeZzKzRV/4c98M8EAjc0IJp6tEHVoZG1y5Lb36Km71giE+3kzzNUK0+ZWk+CYIlQ/gjkFtiqr1t9GSc6gA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=OJKqDEmMQ1FCfTzvc4qujnDMbSK/MU1gPucHGaJGpuQ=; b=PkYlOpx4BTulEq3mD66QNt7rhC4XRX6Xek5AJMCDM87cNQug+zfA1oJt49Ya/q1l6bevMOZYO1sf8b4X68nBPf0xZOIK82GVnijpOtCebQEtW2s1voDfGj6RCa6pFZHbYi5PLeJaT44Tg6lzZJmeu9Gn8T15ZFPZYoginK1b1pWuq/CjrvlKqj1G4mlUZbw3tXOijkJDZAniGt99x5V0E0uSUniCaGr07y8RY53ZgkQW5ObgiI6K7fquLRsM1pC2IKCqb6CO1ZlYpLqY+mA4hQJwJHRgoWRJqsjO4zRmRpjrfM86YrS0hLrMMEBckIUGgVUFxXccNOfPu6eEjFHyPw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=OJKqDEmMQ1FCfTzvc4qujnDMbSK/MU1gPucHGaJGpuQ=; b=A+ejZYOXNtIEoGD2Q+YEtU7mVAiWdYCtN3VIMgMV+5z+Nh+w7Hx3Gv8VW4EV+vozWDgPJH1JvsZixPE6AA7WEIykpztDgAN+CEmLnwgB+zeIN6JjMxItmxLwQUbs9hKg6HPd/4e/CgVFxCZ5d0ltDP2EkBLUH2PcXik2LyY1oWA= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: Date: Thu, 29 Jun 2023 15:43:03 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 From: Andrew Cooper Subject: Re: [PATCH] xen/sysctl: Correct comments after renaming xen_sysctl_cpu_policy fields Content-Language: en-GB To: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= Cc: Xen-devel , Jan Beulich , Wei Liu References: <20230629102600.61262-1-andrew.cooper3@citrix.com> In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO2P265CA0021.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:62::33) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|SA1PR03MB7121:EE_ X-MS-Office365-Filtering-Correlation-Id: d4b32ba7-fdc3-4723-34a3-08db78af282d X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: fFNp/xkHOKyBXMTqW2uJssuyKfgEWIWfxkDalOcrh75/C5Sy5P9st+v2yOpINUfzWnGW/ZTpcdaUdMLiNRVrtKsjwlW4vI9OXC8yHMBZdFiKn0Kwu3Frk/jVv3JV/skhfFMZTGFRu41udEQdQ7XN+4p4K1xmq4lajMPR6XM6lq6nE4YjhyDQEyAkiMUkftCn3UjVUUcC+0qeqE/IrlToRAUKiyEWPMNy3bNuPSDcpiKXQeLCLACbcjwCfRiJ1r7O7No5LAy5HCYgbn/SnMAMaUXAlrf5dQqFJ+nl8WRfuGrlHh6vndKFBdlSLGSomxE+rBlyuHo0Pb7vpSOlSv2WkKb2OmFN4JLwiRhI+peyai9lZaHkNWSlGNxaO3WOYiTn4x+1jF6shJulXbGa6OuKbxNluESNEEMoNobMKNrIGoHawY3Eg85IrdmDBTjPm3AeR/IbYAOg+7qr0BMFnOAZsP+hxfgQxCDMaVl9uUanrZTiSraBzx6WRxG4/b0HYDMb+tjF2yvPH+EbROWre6pvSIZE+PbtxHBRZHSVvnWaq4lDAwXHRXZJy1QOMiul03q7QyvbLwPGFxHTKteSuRBNXnoYyV3PJS1G+qcfFKWbdf81u0aedpF90CIDEE1LBFVA6FbpimlVATipT7+xWuQKcw== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(366004)(376002)(136003)(396003)(346002)(39860400002)(451199021)(316002)(8676002)(66946007)(66476007)(4744005)(6636002)(6512007)(6506007)(186003)(4326008)(53546011)(26005)(8936002)(6486002)(54906003)(37006003)(41300700001)(6666004)(66556008)(5660300002)(6862004)(2906002)(2616005)(478600001)(82960400001)(38100700002)(31696002)(86362001)(31686004)(36756003)(83380400001)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?UHQ1ekNPMHc4aEdobElRTTArWWNZbVFhYlp5RHdIdWFrZmlBbC95QUdmakxX?= =?utf-8?B?QWp0WFhmYWYzN1ZqV2h2c2ErdiszeEt4V3JsM3VTc29mbGdPWlJNK3U3Rlh4?= =?utf-8?B?NkJSSzBQMUt5T2xpOXk4SFBSdWZzUFR2STRZWlJabWFVWVJ4SmxkdUVjVllE?= =?utf-8?B?MmcyYkpRc3pacFM2ZzhaeHJTRWs4N2FtL3IvZy9BSC9kMFV3QXgyR04rWDNR?= =?utf-8?B?RmdaM1c4RTRKSU1xYXpkSDBOL2ZGcFJtZDZTWk9HWGtnSmhpcEVESk9NVWQr?= =?utf-8?B?MEZqU1BuOU9yaC8zekZabHFXRUJUT01YTE9uYTJSa3FJcCtUeEQ0anUrVnZ4?= =?utf-8?B?STBocmVxdVVKY2lDK2s5UUgyQmpMRGljSGxWZ01WODh5QlhuS3lxT1p5Zm4w?= =?utf-8?B?bm5Hb3U1SlVvNlpabHlVTmJpeXF3OTlWd1hRK1ZBYlZYMjZOMVNDM0c2MVZ6?= =?utf-8?B?bEs1TlJMWUdUMDhRUWdQbHQ5SmtyR2VyQWtCWEVIdjNKZzVMZms5WW44MTN2?= =?utf-8?B?NEFmbHBORXdCajQ0UkQvZjI1TDNhemNPOWFkbDJVU3pQdGQ4VDU5ZDl2dGZY?= =?utf-8?B?K0NxM3doM1gxclVwNkI0SkxBNU0yV2w0NHp6VTZmMS9wcjVoV3JraFZWdlE2?= =?utf-8?B?L0Jzejd2V0FOOS9oY1VpSkt1bE9vUDJ3Zm1vSGliWlQvVStYVFZCTS80M3Fk?= =?utf-8?B?VEh6OWQrZVZldGg1bHdqV0J3QjhaeUhIelRBVXRWYkhoeUFIMWJ4czFpRzhn?= =?utf-8?B?OEhRcHgybVhuVEM3UkQxUFlRQWFjeUk0V1dFYzBYTDFHRFppTXdiWWlqdHh2?= =?utf-8?B?Q3ZlM3IrQy9GMXVoM0d6OXlwMFQzNHl1V1hDRmNCK0xORFdxdzhOa0J4QjRw?= =?utf-8?B?dTZucXNpbTdCMDFYZGRyd3RUTW1NQ0NkaEduVTh0RjlnbGhMaUc4RGJzaEpL?= =?utf-8?B?VTVYT0tJVTV5ODhBcUpsb1dFczhoc2NmUDRMcjluSjkvaFZDbUFXSks0OGpF?= =?utf-8?B?NmtKNHI5MENRYkF0TjN1Rm1FdVFxNGFiWnhHMndpdkVKZ1ZndTk1VGYyV0NZ?= =?utf-8?B?Rmw5bzVBZVhCSzYzYlBvRnJYb1JVUDVaY1RmMVhJdjlROUxwZ1daQVZMbUdL?= =?utf-8?B?TFBiQktmVEdRK1Q5ZHV0L2dDUTF5LzZkbGRTeUNRV0RuUEp6V05IdU9SZUNh?= =?utf-8?B?ZExyMms0ek82L0IvZnZBa1ZGVlBVVWlRdkNJR1BnbGtRR0txYUdRU2JJTURM?= =?utf-8?B?UFhJM1hoVkFPcWtkT3dWWE9XWEFTN3pkNnR3c3M2WVJmM2x4SEtiYzhSTTZT?= =?utf-8?B?ZWFOR2JWMVo1emNPK0wzckEyL2VtU3NiL0p5ZHRDK1R6NmdpTlN2UllPeDc2?= =?utf-8?B?Um1iUTJnMWZMRU5RNDRyODJWYXFzMDFFRXIxR0FTSytGdHFaTGg4QkhNbml1?= =?utf-8?B?ekdBNWhuWEZGVlpaTXQrMHc5V2FFZ0JPa1FGMjFjazM4RVZtbndKN1h6UmNC?= =?utf-8?B?RnpLY3A3Mys1aTA4ZmVMQUsrQ3VrNlF5U3VuWGJOTDM1dWNiQjByTHUwejZW?= =?utf-8?B?cHRWZjlJemNFV0Q5bWk0NzFQeDVXYkcyUTZ5dlEyQjlLQVdOTDlQcWYzamMz?= =?utf-8?B?U2hnOVgvVVVJRkRqTlhETnl3UVBNZWNMNjFSemtPT1BtMXh0N3JjV0FZY3lh?= =?utf-8?B?MmFxdUMwZDBYZG1VOVgvWU5lK25zVytZOHV2cTNvRzB4cmhoaDlyQXE5OWhx?= =?utf-8?B?eC8zQzFZZnAyQkV3dFRWZGphNzVkWXp4S0dBdlQxQkNIbkN6MVVFZE43alZL?= =?utf-8?B?YzJaNDgxdy9xN0RoUXAvWWxpN1o2cmlTTDkrcWtFTEVzUU9iQmFnaE1NcWdS?= =?utf-8?B?a29mRUVESm82MmU5MTZuWHNGejlqYjJ5Mjk4ckZYOHFPTVJOKytobVY5MlJs?= =?utf-8?B?K3dNN2JtV2g3SEFDQmpMaHE2eGc2cWFlVzRHVVl5eEpMbGFldVJ0M29NaEFT?= =?utf-8?B?MkpsZ2hzRnltWWdtM2VXL0JPU3VYQmFCNmJFdEEzYlE0MHMxTVNHc1F0UXlV?= =?utf-8?B?eEErcE02c0o3WDRHcnpnNFVTQ0ZiTW5ETlkxYXg3MHFQeCtMdENqSVFsdHZO?= =?utf-8?B?ZmtvaGcxcUJ1Tmx4UHNSczNmUDRBOXhFYVdoMXJHTlRUaCtRV0MzUCtNMnVP?= =?utf-8?B?WFE9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: 5S2rsitoQLo+7yFk+Wf4pAFfbw9bEfBkLUW2XKKZML2HD9foy7Zf8gcNUJCoq9uK20vxhmkPW9PvRP0sEpzFljzbvMWdX4LlOuL6kGTXZzrBQstzrj4rL2IuW14jtT55Lhf2cYT9qIShG66L4aS50Om+g7hCJprchfisND0ctWwvga+wDyEJ1JXy9eLSNP24t6OEYDKv4WCFQ7+DEeY3r9Mi+Wqg+bgBUeHx6ySCvaCv+Gm/+oo6R0vgjZxR9au5T2qY9ru9jVYvKE8JojuL+jXw+t4IGhzPsPYGDj0r19Zw6BpY03bv6LjujcF2jjECG+BFsT8bQwKj0FDRbG7obuVlOgGhdl7INfumslO7fn+JRSlXjeKlcuw+gspcGCyzNGM2MUBLquL/Qajv/4oR8DrzClH0XITTBJgjjviBr03bQ52aUKI0gS67GZglUGiXCmL2LddlH0DiSo1Advuq1Xjw/DorjTi4YYeS1qmxfLRNhWI2cGG3Hq34aAwNTSJnDjgoOQ4196wlRM7sw9X1M5sI99LEspkDMl4WtIhYoMJdj9AInMxgOR2Rfu/cpRMTycrgLlzTUed4fihhrB+SA1Nd/CfNA/GE41VuLfU/ISFS2ZRv97ZqbnkEpTxR3i3CZ+HoGb6QTZbzONKs0Diioa2eg5c381hi0IJFGEWnqJLJXaG7TenhYh858stbwxqH0dH/eJ7LlLrpR/1xvVi9vwYMUhVecJ5zlsVRDEqyFZk5kZn5E2GtjoQLBp8Yp+jviipJP1jIhcg2MdJiRlPLa8HKIphzcBj7NyPdUEnlBM6TzDyk9Dma2XSefymKYt8x X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: d4b32ba7-fdc3-4723-34a3-08db78af282d X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 Jun 2023 14:43:09.4779 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: UjsAlMlELn9AJEjt+nNIz5Vx5tm0T4H4MGhQazVtC/M4la90Q9C6bYxYk4Ox/1O8U/3l7Y9WOZvrQbqpZvwZz51shD6kfuyh2dz4GqT86/c= X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA1PR03MB7121 On 29/06/2023 11:33 am, Roger Pau Monné wrote: > On Thu, Jun 29, 2023 at 11:26:00AM +0100, Andrew Cooper wrote: >> Fixes: 21e3ef57e040 ("x86: Rename {domctl,sysctl}.cpu_policy.{cpuid,msr}_policy fields") >> Signed-off-by: Andrew Cooper > Reviewed-by: Roger Pau Monné Thanks, but I've just noticed that domctl needs the same adjustment. The Fixes tag ought to have been a clue... ~Andrew From xen-devel-bounces@lists.xenproject.org Thu Jun 29 14:44:44 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 14:44:44 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556870.869711 (Exim 4.92) (envelope-from ) id 1qEsss-000157-6a; Thu, 29 Jun 2023 14:44:34 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556870.869711; Thu, 29 Jun 2023 14:44:34 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEsss-00014y-3n; Thu, 29 Jun 2023 14:44:34 +0000 Received: by outflank-mailman (input) for mailman id 556870; Thu, 29 Jun 2023 14:44:32 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEssq-00014s-Qu for xen-devel@lists.xenproject.org; Thu, 29 Jun 2023 14:44:32 +0000 Received: from NAM10-DM6-obe.outbound.protection.outlook.com (mail-dm6nam10on2062b.outbound.protection.outlook.com [2a01:111:f400:7e88::62b]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 745a1a07-168b-11ee-b237-6b7b168915f2; Thu, 29 Jun 2023 16:44:31 +0200 (CEST) Received: from SN6PR12MB2621.namprd12.prod.outlook.com (2603:10b6:805:73::15) by MN0PR12MB5930.namprd12.prod.outlook.com (2603:10b6:208:37d::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.24; Thu, 29 Jun 2023 14:44:27 +0000 Received: from SN6PR12MB2621.namprd12.prod.outlook.com ([fe80::8018:78f7:1b08:7a54]) by SN6PR12MB2621.namprd12.prod.outlook.com ([fe80::8018:78f7:1b08:7a54%2]) with mapi id 15.20.6521.026; Thu, 29 Jun 2023 14:44:27 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 745a1a07-168b-11ee-b237-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=amQez3fQOVBStty5c/TtJPUta0V2S0adQm/6nu7FA8ZjMqcs7Z/Ol6axcz0i+bIIHGxcl9GWcsFVPdUujNcrdph1quGRhw8LLhnPzOnM2yOcxxb7kPaOiEeJeR5KTk/lF7gzpUzRE7a60lLix7UdmDXio1DVUnvJkoP4FgynmnEMmqs2UZz5MlDTlcXeTa0V7CiEFhn8FvHljWfv3Fzd68cuXuzyWS6CBw0e64Uaq/JwFMBBkhk82UOcyB4Ef39VYhpAuuiZFmXEziXi6iU/aKR2Ksb9Yo5y07L65wGc7CpuCDOAS79/Yb5ZHG74F1xlfGQZrVo8eVnC5Dku52TKBQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=cE+fUOLsQb5yMN6+QmJ+ZXjlAG77kHKXhfg7+dgWk0M=; b=EoiuuQelawpTQrw7KRtrYlxQ3yO57IBMsRk30EptYEmhAE2HaGzk0EAC8cxbfpDGji/Nrwh7IF79uIwOYicfZ5IzF9fQdhaWK7CtxarW658WtmbPK82e8AQB3oR0Mia7YZiCxuM9nmMQPYv5lfVY87yNxCRL3ZoTRF3EH78K5s4PGqufwEunTrVByIN+dGlh9lOIbKp+smeQ8fNZkiNK0NTSNFeJPXOKC2dsiEBcbQnc5i9j8QNC3vELZLndmn/baJy19wuZjHfG0Bn84RNQsqGqtFUqU8PHPYpXWHHwSbYsSGcauVDkCcyi9uxH606kO/owQGA6wmwH4dXE0d7N9Q== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass header.d=amd.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=cE+fUOLsQb5yMN6+QmJ+ZXjlAG77kHKXhfg7+dgWk0M=; b=o7tzMTO470Q+qSRI1NKVJG8pjB9dgw0/R+uQJAJz/gJvoNVgK68WhHsj/icpViYxOXwVSqmfS7/1pecXK1kW39LJrAek+E7P3mXWUr1ILEnkTdasogvtDrtXvdas7+ZAUjD9kgnNz0Xsp70MPeLUmkLBrAghrM+k0uVwHlsFk4A= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=amd.com; Message-ID: Date: Thu, 29 Jun 2023 15:44:21 +0100 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v3 28/52] xen/mpu: plump virt/maddr conversion in MPU system To: Andrew Cooper , Penny Zheng , xen-devel@lists.xenproject.org Cc: Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk , Wei Chen References: <20230626033443.2943270-1-Penny.Zheng@arm.com> <20230626033443.2943270-29-Penny.Zheng@arm.com> <674011bb-b8df-d11e-a322-1827096c1b74@amd.com> <2c8387ab-547d-5bdf-5d62-e7a950e5c1de@citrix.com> From: Ayan Kumar Halder In-Reply-To: <2c8387ab-547d-5bdf-5d62-e7a950e5c1de@citrix.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO6P123CA0035.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:2fe::8) To SN6PR12MB2621.namprd12.prod.outlook.com (2603:10b6:805:73::15) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SN6PR12MB2621:EE_|MN0PR12MB5930:EE_ X-MS-Office365-Filtering-Correlation-Id: b2b2fc9f-6f7d-41e8-9904-08db78af56af X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: n+ilIQ5yZ1J9XxxQzRFtvrX3QZzfDf/stsOmzC4uwrh9BKp76zMNHEj079fvRSLbivuV6/HexVMkWDECYx55wEmlGWfKEpY6I85LKR8abyNiyLCQwLk/nnHc9YejdyfCDLeJ/lFntFBAwNSLPCF6BgpZw06yxFQbxHm/n3GzHFkQTFU3XcbCccQtjE6QazRgTyUsmZ3Zdyg/+v6Sadnkcpl4RCXj91jLbfRQwo4ev+DdocMZhkA8071EDXFE4q69VV45MQHIrAkBds1HgNAzXxLB2vKAXSXiL4n5PxpFjCeGlfBv0DBVSIyMvH4zaJR025iJkoiu6i1JIxGctXJJ+O5SnRg4q4qIfTJ6ENk45DVmjOe54mGEY3YxWlnJkzk4wzL5/Ov1PI0rVWgupFwKRbvydjiIRIrVrTnrgvcBu6E34RQNET62sDUuOwTq5O8069P9jmgAgPAu+HBdfnzFHkzq5n8E8+OB7hqN82yiLdM+rwZ6xZwwaS6LywmkoMTO5kQdm8YNpvIUFT+W9I0USPESB4cmEznyKi9H3+o6VUbXpOjHehGtAR463aKEWG7toEdZy10OdeGXLZ5nLX+bRmU9z8GvCjpg4zLgY2aBbCbxJO8aVuOPifJEe48jSpkbvsm6O2vg5F3CrkFQ8Mnb1A== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SN6PR12MB2621.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(346002)(366004)(39860400002)(136003)(396003)(376002)(451199021)(38100700002)(31696002)(53546011)(6506007)(6512007)(5660300002)(66556008)(66476007)(66946007)(2616005)(186003)(26005)(478600001)(2906002)(54906003)(110136005)(8676002)(4326008)(316002)(966005)(8936002)(6486002)(6666004)(41300700001)(31686004)(36756003)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?UkpudHhhMFFzVnNmeXZvOVdxYWVsUWNWWVRhTEN3NG8rYkhDa0tDa3ZvY1p2?= =?utf-8?B?REtOdk12NVMzWFk2MUt5L01rancvK3AvSERoR3IzaFBIaHpwL1BYM2R0cjll?= =?utf-8?B?T0ZjS3AxRnpyUU1YemJQZTAxeXBCaHJ1QXZUaGtCQWZXYnpNUWVxWHBtaFg4?= =?utf-8?B?cjJ0N1d5T0VlZ0IxZmszL1AxSzJ0UWRuSHk1cUw1Sit4eXg4b2VJZFgrdkVL?= =?utf-8?B?cEx6MFVYTHg4VlRJSzFYK3JwZkdrTmlZL1pxV29NSVVYNXVwYWVKeEd6T1JG?= =?utf-8?B?dkdMaHlSMWRnYVJOK1A4bUR6WHViOWQrNEkrUDNlSE1PMEV2YXhtZ3pCYUoy?= =?utf-8?B?TVc5eHh0cDNkU25EQ0xqUnlWVmw1cTEvSE9TVTVOeE1Mek9pM1NBR1JwQ3Q0?= =?utf-8?B?YlM1YTg1Z1pUQUpBR01yVU9INEgwc3Nyckd3SGJjUzV6S0RZaU5WRVlJdm1a?= =?utf-8?B?aU81NStHaXhLSm96U3RrOGxxUlJJRFVFVW8rWFVnRnRnWjRtazZKV3VJMGxr?= =?utf-8?B?U1ZYeCtGNUZKV0tpclliTXZDNWNHdjdtTTBaWlNia0YvTU5DcExXZWNoQWtV?= =?utf-8?B?VFpoTExiQlRhd0JWT0R5dDZXcWhPU2tjK2d1ZXRnbEsveGNKZUY3dzNrUDg4?= =?utf-8?B?VHdtUEUwbjBMTnZWNTJBUGRjUlB2Sk1Qam9Jc0NtWUZpNGRaS2g1dkI5eGkz?= =?utf-8?B?ODBNQ3VuYlc1aHNoUERYK1lyakhrYWZTaWlGZHhiNEd5U0VNWFQwdlBmb3g2?= =?utf-8?B?UHI0elk2YlQwSm9JMld3YWVqdWtzcnFyL0xSVE80NTl5VUpEWnZBVnZiR0dN?= =?utf-8?B?RXZGelVYNVlSTWJDTUt5b3Z1Tzh5U3U4N3JtMnZxWGIzTFNZNGZQSEtrV2lU?= =?utf-8?B?aVFaWXc0ZDE0ZU5WeEpkYVJiUU44b0Z6cE1UWXZrU0UyLzZFd2dRRVRrTE0z?= =?utf-8?B?NmZTWlE0ZmRHSVFUcUNBYzVPOTdmeHVsVEdqUy84N1dNSkdKZzY0bU0wV3g0?= =?utf-8?B?cUtvZlV5WlE3alY1eEQ1VVVCem96alhmcVM0eWpRL0x3SDlheG1pYlZBRmFj?= =?utf-8?B?SFRxUE5xaVQ1Si94NFA1Uy90V3BlVGo1K2tEOGdHKzQzN3BROWg2ZGFjdjds?= =?utf-8?B?bUZLMEVsQVc2bFByZWhCNDhxTkR1SmNnNCs2SWRXWm1kWjQ2SHM3QWtSSHRN?= =?utf-8?B?ZHY3RFFaeFM5MHp3bXFqU2JqempEUzBrblNBLzgxanNOL1h6c09HWElwYlc3?= =?utf-8?B?WFJyOFdEZUVkUDBJOUI5aUVzV2NvSm1MV0hkQ05zdytTNzFLNEZ2Z0RLdDBC?= =?utf-8?B?bU9WS3ZxcElqRWpzNC8vOXBDallTUktXQ1FqWE9FVFpTVktmT0xmNXNjYk5I?= =?utf-8?B?M3BHVTUzaWJCbnpLK0xpOEJkL0twM3BRcWE4blFMRkJWaW1RU1Nzd3Y2Ym1z?= =?utf-8?B?VXpCenAxMUZmKzIyMXhNV09MYzhBMHNlbVZ5YmhtMThuMmFwY1A2dVpQRGhR?= =?utf-8?B?UWtwb3ZCTDlVUm13bmJndHY3dGhSUThOUUVpUEdmRkh5RHVqOWtNajJPeVhP?= =?utf-8?B?OWo4M1Z0bEthdTVVVkFBNVoxNjVEMkpVbVFUU3l0ZmhRUkRxRUZNdW11dDk3?= =?utf-8?B?TDdmdENyY1IyTDdnN1ZYdjRxOERqN1FFRHRZOWdLbEIrUktEamoyM1hRdVhv?= =?utf-8?B?ekYzdWtpakRiS0FIbld3MzlYQVUwOXFPNDdMYlNnY2xuZ2JqUzBCMHFRQmVu?= =?utf-8?B?dWwvbXhpRWRIL28zaXJhZWppY2IxTCtyMFJxM2pxcmJwV1RjOGJiMEZYSU9a?= =?utf-8?B?QkNySTdUcVRoVWVmQVJXRFh4ZEQxaC9kcSt2dSswRlRQOWp2K0h1eVdNZFB1?= =?utf-8?B?bC9XdWUvNXpoM1BnZkQrRFpuZW1FRmQ1V0o4TlJYSG03QmdQcUpVdUYxTDYz?= =?utf-8?B?YUhhdDlnSHlQNStCcWV5Um83TUllaXZ4YkF6bGdRQTBKbVUwNm96YUNBOEVq?= =?utf-8?B?MjAxNjdNZTJKUVkrTHBVbzlPL3I5UUE1TjBBdnZqN3lBSVJZSFdEVlVjYmJB?= =?utf-8?B?dlNoNUVBMmY3cXgvUjNQb2NSNVlkcm9lV05sSDFIcXh3RlRqaG9UOG9VUDBo?= =?utf-8?Q?k8L8y+rFrHdegdXkRwBgKgBAT?= X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-Network-Message-Id: b2b2fc9f-6f7d-41e8-9904-08db78af56af X-MS-Exchange-CrossTenant-AuthSource: SN6PR12MB2621.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 Jun 2023 14:44:27.2972 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: Pt45v6nAY5UQEmV1lSmsnVWoUgPG4SsLpgVJZuC6IsdXUcBHx4Fc0IJfWIgpkEqPMznoz62+h0jeprOtQXKnjg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN0PR12MB5930 On 29/06/2023 15:23, Andrew Cooper wrote: > On 29/06/2023 3:20 pm, Ayan Kumar Halder wrote: >> On 26/06/2023 04:34, Penny Zheng wrote: >>> diff --git a/xen/arch/arm/include/asm/mm.h >>> b/xen/arch/arm/include/asm/mm.h >>> index eb520b49e3..ea4847c12b 100644 >>> --- a/xen/arch/arm/include/asm/mm.h >>> +++ b/xen/arch/arm/include/asm/mm.h >>> @@ -292,6 +301,12 @@ static inline void *maddr_to_virt(paddr_t ma) >>>                        ((ma & ma_top_mask) >> pfn_pdx_hole_shift))); >>>   } >>>   #endif >>> +#else /* CONFIG_HAS_MPU */ >>> +static inline void *maddr_to_virt(paddr_t ma) >>> +{ >>> +    return (void *)(unsigned long)ma; >> Why do you need "(unsigned long)ma" ? Both "unsigned long" and >> "paddr_t" are u64. > For when paddr_t really isn't u64. Sorry, I am missing something >From https://xenbits.xen.org/gitweb/?p=xen.git;a=blob;f=xen/arch/arm/include/asm/types.h;h=fb6618ef247fe8e3abe472e50b4877e11cc8a96c;hb=refs/heads/staging In CONFIG_ARM_64 typedef unsigned long u64; typedef u64 paddr_t; So, why do we need to typecast "paddr_t" to "unsigned long" as they are the same ? - Ayan > > The logic is correct, but it is an opencoding of the _p() macro for > turning an arbitrary integer into a pointer. > > ~Andrew From xen-devel-bounces@lists.xenproject.org Thu Jun 29 14:49:55 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 14:49:55 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556880.869721 (Exim 4.92) (envelope-from ) id 1qEsxt-0001nj-Oh; Thu, 29 Jun 2023 14:49:45 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556880.869721; Thu, 29 Jun 2023 14:49:45 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEsxt-0001nc-LY; Thu, 29 Jun 2023 14:49:45 +0000 Received: by outflank-mailman (input) for mailman id 556880; Thu, 29 Jun 2023 14:49:44 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEsxs-0001nU-Jg for xen-devel@lists.xenproject.org; Thu, 29 Jun 2023 14:49:44 +0000 Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 2eaab0b3-168c-11ee-b237-6b7b168915f2; Thu, 29 Jun 2023 16:49:43 +0200 (CEST) Received: from [192.168.1.198] (unknown [151.57.184.11]) by support.bugseng.com (Postfix) with ESMTPSA id 8FD6E4EE0737; Thu, 29 Jun 2023 16:49:40 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 2eaab0b3-168c-11ee-b237-6b7b168915f2 Message-ID: <3cef948f-c85c-d906-4496-c1e528643675@bugseng.com> Date: Thu, 29 Jun 2023 16:49:38 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [XEN PATCH v3 1/3] xen/arch/arm: fix violations of MISRA C:2012 Rule 3.1 Content-Language: en-US To: Luca Fancellu Cc: Xen-devel , Stefano Stabellini , "michal.orzel@amd.com" , "xenia.ragiadakou@amd.com" , "ayan.kumar.halder@amd.com" , "consulting@bugseng.com" , "jbeulich@suse.com" , "andrew.cooper3@citrix.com" , "roger.pau@citrix.com" , Bertrand Marquis , "julien@xen.org" , Volodymyr Babchuk References: <7996a8bb62e62076d48bdf289e37352bb5e43b52.1688032865.git.nicola.vetrini@bugseng.com> <5FD86C4C-3BD6-4ED3-A910-683DCC86613D@arm.com> From: Nicola Vetrini In-Reply-To: <5FD86C4C-3BD6-4ED3-A910-683DCC86613D@arm.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit On 29/06/23 16:41, Luca Fancellu wrote: > > >> On 29 Jun 2023, at 11:06, Nicola Vetrini wrote: >> >> In the files `xen/arch/arm/include/asm/arm(32|64)/flushtlb.h' there are a >> few occurrences of nested '//' character sequences inside C-style comment >> blocks, which violate Rule 3.1. The patch aims to resolve those by changing >> the inner comments to arm asm comments, delimited by ';' instead. >> >> Signed-off-by: Nicola Vetrini > > Can I suggest another commit title: > “xen/arm: tlbflush: fix violations of MISRA C:2012 Rule 3.1" > > Sometimes when I am not sure on how to deal with prefixes, I check to the git > history of the line I am changing, for these lines there was a commit from > Julien using these prefixes. I’m using vs code with GitLens extension, that > ease a lot this kind of checks. > > Apart from that, the changes looks good to me: > > Reviewed-by: Luca Fancellu > Thanks for the suggestion, I'll use it from now on -- Nicola Vetrini, BSc Software Engineer, BUGSENG srl (https://bugseng.com) From xen-devel-bounces@lists.xenproject.org Thu Jun 29 14:50:18 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 14:50:18 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556885.869730 (Exim 4.92) (envelope-from ) id 1qEsyQ-00037Q-0r; Thu, 29 Jun 2023 14:50:18 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556885.869730; Thu, 29 Jun 2023 14:50:17 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEsyP-00037J-US; Thu, 29 Jun 2023 14:50:17 +0000 Received: by outflank-mailman (input) for mailman id 556885; Thu, 29 Jun 2023 14:50:16 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEsyO-0001nU-TW for xen-devel@lists.xenproject.org; Thu, 29 Jun 2023 14:50:16 +0000 Received: from NAM10-MW2-obe.outbound.protection.outlook.com (mail-mw2nam10on2062f.outbound.protection.outlook.com [2a01:111:f400:7e89::62f]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 418f6a98-168c-11ee-b237-6b7b168915f2; Thu, 29 Jun 2023 16:50:16 +0200 (CEST) Received: from SN6PR12MB2621.namprd12.prod.outlook.com (2603:10b6:805:73::15) by PH7PR12MB6418.namprd12.prod.outlook.com (2603:10b6:510:1fe::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.24; Thu, 29 Jun 2023 14:50:10 +0000 Received: from SN6PR12MB2621.namprd12.prod.outlook.com ([fe80::8018:78f7:1b08:7a54]) by SN6PR12MB2621.namprd12.prod.outlook.com ([fe80::8018:78f7:1b08:7a54%2]) with mapi id 15.20.6521.026; Thu, 29 Jun 2023 14:50:10 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 418f6a98-168c-11ee-b237-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=KxtD9twjzSBPEocj4WSdYesoXNYvZaV4d/ElLhDL6txQ6NeOn5nFPRTRWnd3JYcDks6YLYejOvy4E4bc1zIqPfpg45Yt61ORTqmYA00uZB+gMerNfzIK7m2gP4xZhgvwJOLYmua+CL9OGILazCng2t5J/ldMlMy8OzwNFWHu/CkKg9prfb/sicwk904WbfuO8oKAO7P+IjM4gkEsiIAYLgYPjb3VCzYwZ3j69F8TM5MZ8sSRNZQOR7YaE7zMMlRBQxhKs0v4YNv6EW9b8VffwJAiAgDA0snfjZGIQmL+ph7j7Yx4i0pAiHy2WDXIuG6fXAJiayQsqKkG8KUParRYJw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=Loo+qs6XJRmOHCZbPNunV+AJLrO6xIy3XitFqvjL3fQ=; b=AfkvocdyXT2A5rcMCBn2j5QVwp+3Q6+jB8RinhJFzpreOGdqxsdgrj1qfA091aKpcUQVgwVeb8dQ0GZt2S4MLYoBjzVY2ERHd3QYyUJkJwCf5qXqWmfSH9JEKh41mabp9w49aaznNQnWdN3s3j2kNJQrR8wmVV3IBcyD2XxBD+DCbugOJ7JSEhvYnEc3fSAjpEeL6ZQZtE4ZM9itdLa0DcxvRMA0fuDXRMPcMSCxCMRBNidztLRUYhCWt0Au+NhEOXQqoqfgy7bvbIiJDZpNx1zG3WJx/6ApuyLN6Nr5CuONSfwGdA2OSp+6tJYS/WlouESTvJoTF6Pwxfn3esTRhQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass header.d=amd.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Loo+qs6XJRmOHCZbPNunV+AJLrO6xIy3XitFqvjL3fQ=; b=rI4cbBK19sl/zOAKLFT0x3n+nTYM/z/uS53laMOQgB81+Ydgx0BXNFJCcdot+0R86/FrpmcrkUAerBlC+fScQR2U7yWGhlctxOxGzXDR5TgUdGiVeA3hrHD51SLULxOlWpnOaBFKkplhVlw6qx+8k0ACwb27qplCNdWT6/sm6vY= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=amd.com; Message-ID: <6ec57ca4-be55-598d-ce30-a2f86150dfea@amd.com> Date: Thu, 29 Jun 2023 15:50:04 +0100 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v3 27/52] xen/mpu: introduce setup_mm_mappings To: Julien Grall , Penny Zheng , xen-devel@lists.xenproject.org Cc: Stefano Stabellini , Bertrand Marquis , Volodymyr Babchuk , Wei Chen References: <20230626033443.2943270-1-Penny.Zheng@arm.com> <20230626033443.2943270-28-Penny.Zheng@arm.com> <3e77ef15-4a34-8246-bf48-d87557690b48@xen.org> From: Ayan Kumar Halder In-Reply-To: <3e77ef15-4a34-8246-bf48-d87557690b48@xen.org> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO4P123CA0348.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:18d::11) To SN6PR12MB2621.namprd12.prod.outlook.com (2603:10b6:805:73::15) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SN6PR12MB2621:EE_|PH7PR12MB6418:EE_ X-MS-Office365-Filtering-Correlation-Id: b4a8dad4-cdb2-43aa-f956-08db78b02351 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: O0extngMnFEZvQ3LuIMbjkPe7YNuJMqLubinBXmG2eIUaGf1WvfNKp7rBZStp5q+k7tg7jOpRDcocW+XHazp5GAMICW4FwZyteE5GerLBtH9WYC0J49vVJJ8YBHytYHl2o4/dfQ4qz0091upSzDwHL0YNHyRRX780IMrclw7z2SPO5TNEA66LCgCFNWT0pKQaTMv8q9sljNS2bk+guGxjPkpVEnTLhzeRvI8JKd7Sd+EoF1aZ8XIsD+iLZbj4tg7TNkiTANFbjvF3MwXhRJ9XUI4QVlYIjnpndvuTBO6FuG34nS5fUKqXugvmeq5VOY1kpmzx+OExZ1ATAoUJmHPUv0iEowvUthf57jz/m+NLQXSUdIvpLDSUZeovD6whnLoTRZ8zsxD+xHOGUwUHGYiIFV1osETlCGA7lkDkP6PzSgSEJBuenrODTlidtxD2Va7WXLjDBxIvF4L9NvCtBfFkoiH6OsBZLP25Mq5Joye1gKx8ffMDWydYR7UBQGv38OY2NdOwHQQW3EcWD3E+NjOr+czeMRHwdo9en1SGc20wKhiC69lAUzFOVGlwpfKaMvMWfuErT+6YGR+2q6Jbh15YgQNWhUgN72l8eosF20tEz7M0VViALRUsznEGobNNdmH5CNgxFj00K8hLq+VQGBLrw== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SN6PR12MB2621.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(376002)(396003)(136003)(346002)(39860400002)(366004)(451199021)(26005)(4326008)(66476007)(66556008)(8936002)(6506007)(110136005)(2616005)(478600001)(54906003)(186003)(2906002)(6666004)(53546011)(6486002)(83380400001)(36756003)(66946007)(5660300002)(38100700002)(31696002)(8676002)(316002)(41300700001)(6512007)(31686004)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?Q09xUHlPNXVORS9IUllOTXFwTUROeXJLUGxLRTNqVlBwSTRDODdBbk9naTYv?= =?utf-8?B?MUdrcWp5RnpzZ0VVWmpiYzJsYzg4cVg1TFhmZzBjWHJDRVd3R0tGTTdmZVE3?= =?utf-8?B?cGliT01xUTU1UzA0YUtqdXV2UXEra3dSZUR4YjhuZGVjMFpTT1h2MjVuMXR3?= =?utf-8?B?QXZlbTZPUVR0dmNPQlVPcGhyd1Bwb3BjYWVYaUhFQVFJNkdTNXVUbGp0anRS?= =?utf-8?B?TkUwbmJWbU5rV3BTVlJkdTI4WlNoUG5qTzZPLytRcE1PQmRhOU11YWhmQ3dH?= =?utf-8?B?ZDNFaWpCaUM3a1dlSTRKY2JuMGliRXFCRkNUNU5PdlR5WVRQUDI2MUNwMmVP?= =?utf-8?B?OS82ay9ad0tqZnRKQ2hINGRsN2x3OFcyMmZpR3ZlUFl4blo3RnVKR3doajJk?= =?utf-8?B?ZExCNkZqcjUxY3lCdEdWQVpNNWhEaGVGSldvWDlsOHRKRlZ4OEI5NHVwTVlC?= =?utf-8?B?a241VkVSYmVzUnpRRHV3elpXUWcrSGxlYlZaa0JhTHliTFBXN2orMnpITCtT?= =?utf-8?B?dlhUZStzRXdkdlBvd2hSOVhWbkdvK3BzdGNBb3ErSi81U3VQYU14Nk90YnZV?= =?utf-8?B?UzdRTFMwdHBBZGxmL2JJSmVwMTFwVjh2YVhIOVpHeU9JWlNidTM0dVBmOXRy?= =?utf-8?B?TWQxRlpWSHhsMHBWWFh3R1RMZlQzL0x0ejV2RkIxVytJL1RxSTNTajBIMWVW?= =?utf-8?B?cy9XR2hrSmhsU0cwYzNRcGdCaDIxVEpRWUdxYllmczJlWDhUK1JxdUR2aEdm?= =?utf-8?B?SE9BUlZjdFFDK1ZPTHN4UGZxc1FJVHVaVXhPQmkwT0puK1Z5VmJRaE15TWFK?= =?utf-8?B?K1IzWUQ4ekZjT1MrL0lrcVIyK1IvQkVHczVnRG1ybjVybTVXR1Y4aFIvWnVj?= =?utf-8?B?Y1NEY0JEU1krL1F0L1h6YVpTam5XLzV6WmRpWEQvNEtCZUR4d3ZUeEYyQk5y?= =?utf-8?B?R2RxUVlXeGF1RmhlZzBGSkFBMHZNSU9scG81cFB1YXR0bjdMeGwvTXFTWHpV?= =?utf-8?B?aWVYMkRabVBwaUNrQkR3SU1RVWZ3eW5JSGZXTTR6L0l4OHp1L1dkWEFCZkNM?= =?utf-8?B?Z0xBY3NwR0paWjZvSmFZTm43c1Rya0t4QnQxUnVTRFVzNlVwTGh1UkRLbWRK?= =?utf-8?B?Zm9aSHgxeFJpMFlsUVFuT2hTd3JFeDhXL3lYK1VpTFhuUmIwdmJ3bjBYR0F3?= =?utf-8?B?WG9Ebmxua296dVZiNlhlWTREN0xGaGNVbzRqZ0t0UHhPWnNsQkVGRjVZNDk2?= =?utf-8?B?elJhSU8yYVFScVBzeGs0UWdzQkhQQVVpUFh2RUw2TEtpMSt0bXR5V1k2NWNu?= =?utf-8?B?MEFMMEtmOTFxaWVMbjFTakxIRmlTT3BKL1JpTjliZXpCb3E1TWFvbkF0aVB2?= =?utf-8?B?Wm1LbEwvcDMvblRBK0FEMC9IUWVKVTBhTEpLWlpobUpIdlhyR2prdUZOdEFM?= =?utf-8?B?WjdlSHJEMmVBL3EvdXZVNDJlSEN0dDhFOWpEM2luOWY2VEFZNk1kTHdTUVUw?= =?utf-8?B?RTV1MlUzK3dzR1Vxcmk0d1VUTnIwZ3BsSWVzUFRIZHhzcWlUWndxLzMyZkQ2?= =?utf-8?B?QXJrZUMrTTljbTJ2UDR5Rk1GMWthcnVZZllKcFhtaFdkZktDZmo0bEpFdWwv?= =?utf-8?B?c3NXa0ZBV0w5eklYckRhc0UyYzU0ZzRWUVRjazJ2T0l3Y0xEb3k5ZmxtQ0ZH?= =?utf-8?B?anhoL21LL2FoSUZSUDNKUkVxVjdZb0Q4MWluT05NV1IydDBsdy9NK1RycDAx?= =?utf-8?B?aUJPVXZ1L1pLVlJoU0FQak1LamFTdk5CKzhGaE1yQUxGdzZrWStDNU82cXVr?= =?utf-8?B?eW9rc3pEdDBIbzJmZ2hSeHNnZTNSQ3FkUDNTbkxtQ3RWLzl0bGlFS05jYTFp?= =?utf-8?B?ektqQVRpa3c1VVIrUDRkTnN1SUlBTzRpdmlWWlIvTlNCWk9Cc2t2Vjh3QmxI?= =?utf-8?B?NnI0c2dlRy94VjVkVDNFcktQYU1DWDVkS0pUT3R6RVhLejYxbk82NkhUZEpx?= =?utf-8?B?UDU0cFUyNmVrWlBuYjhhZFphZDQxeUZScmZTVHhlcjV6NmQxdUtocGV0Y2l3?= =?utf-8?B?VzVpZ05hdmJnQzFhOVMrNVRpRTNRL1pVSy9uclc1bjNwS291Zm11Sk5GdVZC?= =?utf-8?Q?AleGxgped9rAWASmrcU+NGOim?= X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-Network-Message-Id: b4a8dad4-cdb2-43aa-f956-08db78b02351 X-MS-Exchange-CrossTenant-AuthSource: SN6PR12MB2621.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 Jun 2023 14:50:10.7173 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: vauymD/VNpx39VTCwiLXXugwmYWZF94TrZSvqKlEKNBWE1dw/A5TgCG5MMdb8AyC5VQjOxtYrmnLEU9wBB8KeA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH7PR12MB6418 On 29/06/2023 15:29, Julien Grall wrote: > Hi, > > On 29/06/2023 15:05, Ayan Kumar Halder wrote: >> On 26/06/2023 04:34, Penny Zheng wrote: >>> CAUTION: This message has originated from an External Source. Please >>> use proper judgment and caution when opening attachments, clicking >>> links, or responding to this email. >>> >>> >>> Function setup_pagetables is responsible for boot-time pagetable setup >>> in MMU system at C world. >>> In MPU system, as we have already built up start-of-day Xen MPU memory >>> region mapping in assembly boot-time, here we only need to do a few >>> memory management data initializtion, including reading the number of >>> maximum MPU regions supported by the EL2 MPU, and setting the according >>> bitfield for regions enabled in assembly boot-time, in bitmap >>> xen_mpumap_mask. >>> This bitmap xen_mpumap_mask is responsible for recording the usage >>> of EL2 MPU >>> memory regions. >>> >>> In order to keep only one codeflow in arm/setup.c, setup_mm_mappings >>> , with a more generic name, is introduced to replace setup_pagetables. >>> >>> Signed-off-by: Penny Zheng >>> Signed-off-by: Wei Chen >>> --- >>> v3: >>> - introduce bitmap xen_mpumap_mask for dynamic allocation on MPU >>> regions >>> --- >>>   xen/arch/arm/include/asm/arm64/mpu.h     |  1 + >>>   xen/arch/arm/include/asm/arm64/sysregs.h |  3 +++ >>>   xen/arch/arm/include/asm/mm.h            |  4 ++-- >>>   xen/arch/arm/mmu/mm.c                    |  7 +++++- >>>   xen/arch/arm/mpu/mm.c                    | 30 >>> ++++++++++++++++++++++++ >>>   xen/arch/arm/setup.c                     |  2 +- >>>   6 files changed, 43 insertions(+), 4 deletions(-) >>> >>> diff --git a/xen/arch/arm/include/asm/arm64/mpu.h >>> b/xen/arch/arm/include/asm/arm64/mpu.h >>> index 6ec2c10b14..407fec66c9 100644 >>> --- a/xen/arch/arm/include/asm/arm64/mpu.h >>> +++ b/xen/arch/arm/include/asm/arm64/mpu.h >>> @@ -19,6 +19,7 @@ >>>    * or it needs adjustment. >>>    */ >>>   #define REGION_UART_SEL            0x07 >>> +#define MPUIR_REGION_MASK          ((_AC(1, UL) << 8) - 1) >> >> May be this is simpler to read >> >> #define MPUIR_REGION_MASK _AC(0xFF, UL) >> >> Also, you can move it to xen/arch/arm/include/asm/mpu.h as it is >> common between R52 and R82. > > I would actually prefer if we use GENMASK(...). > > [...] > >>> diff --git a/xen/arch/arm/mpu/mm.c b/xen/arch/arm/mpu/mm.c >>> index fb6bb721b1..e06a6e5810 100644 >>> --- a/xen/arch/arm/mpu/mm.c >>> +++ b/xen/arch/arm/mpu/mm.c >>> @@ -20,6 +20,7 @@ >>>    */ >>> >>>   #include >>> +#include >>>   #include >>>   #include >>> >>> @@ -27,6 +28,35 @@ >>>   pr_t __aligned(PAGE_SIZE) __section(".data.page_aligned") >>>        xen_mpumap[ARM_MAX_MPU_MEMORY_REGIONS]; >>> >>> +/* Maximum number of supported MPU memory regions by the EL2 MPU. */ >>> +uint8_t __ro_after_init max_xen_mpumap; >>> + >>> +/* >>> + * Bitmap xen_mpumap_mask is to record the usage of EL2 MPU memory >>> regions. >>> + * Bit 0 represents MPU memory region 0, bit 1 represents MPU memory >>> + * region 1, ..., and so on. >>> + * If a MPU memory region gets enabled, set the according bit to 1. >>> + */ >>> +static DECLARE_BITMAP(xen_mpumap_mask, ARM_MAX_MPU_MEMORY_REGIONS); >>> + >>> +void __init setup_mm_mappings(unsigned long boot_phys_offset) >>> +{ >>> +    unsigned int nr_regions = REGION_UART_SEL, i = 0; >>> + >>> +    /* >>> +     * MPUIR_EL2.Region[0:7] identifies the number of regions >>> supported by >>> +     * the EL2 MPU. >>> +     */ >>> +    max_xen_mpumap = (uint8_t)(READ_SYSREG(MPUIR_EL2) & >>> MPUIR_REGION_MASK); >> >> NIT:- You may dop "& MPUIR_REGION_MASK " as the other bits are RES0 > > From the Arm Arm (look for the definition of RES0 in the glossary): > > " > To preserve forward compatibility, software: > • Must not rely on the bit reading as 0. > • Must use an SBZP policy to write to the bit. > " > > So we should not drop "& MPUIR_REGION_MASK". Yes, you are correct. Penny, please disregard my NIT. - Ayan > > Cheers, > From xen-devel-bounces@lists.xenproject.org Thu Jun 29 14:52:40 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 14:52:40 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556890.869741 (Exim 4.92) (envelope-from ) id 1qEt0a-0003ml-Dw; Thu, 29 Jun 2023 14:52:32 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556890.869741; Thu, 29 Jun 2023 14:52:32 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEt0a-0003me-BF; Thu, 29 Jun 2023 14:52:32 +0000 Received: by outflank-mailman (input) for mailman id 556890; Thu, 29 Jun 2023 14:52:31 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEt0Z-0003mU-8z for xen-devel@lists.xenproject.org; Thu, 29 Jun 2023 14:52:31 +0000 Received: from EUR01-DB5-obe.outbound.protection.outlook.com (mail-db5eur01on060b.outbound.protection.outlook.com [2a01:111:f400:fe02::60b]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 9128a7a8-168c-11ee-8611-37d641c3527e; Thu, 29 Jun 2023 16:52:28 +0200 (CEST) Received: from DB3PR08CA0016.eurprd08.prod.outlook.com (2603:10a6:8::29) by DBBPR08MB5914.eurprd08.prod.outlook.com (2603:10a6:10:200::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.19; Thu, 29 Jun 2023 14:52:26 +0000 Received: from DBAEUR03FT031.eop-EUR03.prod.protection.outlook.com (2603:10a6:8:0:cafe::bd) by DB3PR08CA0016.outlook.office365.com (2603:10a6:8::29) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.22 via Frontend Transport; Thu, 29 Jun 2023 14:52:26 +0000 Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by DBAEUR03FT031.mail.protection.outlook.com (100.127.142.173) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.22 via Frontend Transport; Thu, 29 Jun 2023 14:52:25 +0000 Received: ("Tessian outbound 52217515e112:v142"); Thu, 29 Jun 2023 14:52:25 +0000 Received: from 291c09c64051.2 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 72F8A247-8D27-44E8-A444-52653B2642FE.1; Thu, 29 Jun 2023 14:52:13 +0000 Received: from EUR03-AM7-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 291c09c64051.2 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Thu, 29 Jun 2023 14:52:13 +0000 Received: from AM6PR08MB3749.eurprd08.prod.outlook.com (2603:10a6:20b:8f::22) by DB9PR08MB9634.eurprd08.prod.outlook.com (2603:10a6:10:461::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.26; Thu, 29 Jun 2023 14:52:11 +0000 Received: from AM6PR08MB3749.eurprd08.prod.outlook.com ([fe80::ed0b:5730:a1f9:577b]) by AM6PR08MB3749.eurprd08.prod.outlook.com ([fe80::ed0b:5730:a1f9:577b%5]) with mapi id 15.20.6521.026; Thu, 29 Jun 2023 14:52:11 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 9128a7a8-168c-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=bLxL1mbR0RAOmf81uH2XVRc6X6tf+0MlnbuNrPz7d7s=; b=1STTCpbiZFWTrqR6llwko+Vce8RuGjWCYwvZVBkFyXqTCJ4T5hY76yb96cmOjbSKbPoaN3TXqX/A2PpI5NaJ5nim8wUIi6xOdJSXJzFI44IDF2igiVw5YjjgRE6t1wD7B0Cc1tYOr6Ssrep7A4FiY1tcV1lpUTFOp8xMrJ6MpxU= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C X-CheckRecipientChecked: true X-CR-MTA-CID: 97264ad89e80c58d X-CR-MTA-TID: 64aa7808 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=IwP4i/nez3n/wzd3MA9h17rAJnSgy109locmgNI81SS1cPlwZYWEQzTJbP2/9l645fji7N5TUtMG3kKs+/fpbJRa9GuZWxA6XHcf1DAYnDRzc18nkYuCL4r9dtdpbzAFcxL9V/JsLcZ+DxHsDZCaZqGim/FJZ1aBqukSmqXg1UGrrj8hcviH9rRLsjH87gM5eksfNy02d3zqnvjDgqVsjRsLMTiQxYAvsuwfNxs3QQuG8YRmznDsJLr5koCqh8XNpheYoDw7fN4TqZJDe0NnOUyvW9c/Xp1zNzZvPrsSBBPNsJGcEUNukkqLS98vdZisW3suIDXyzXUbncuU3cDrkw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=bLxL1mbR0RAOmf81uH2XVRc6X6tf+0MlnbuNrPz7d7s=; b=XFJzLzxQmuSytpTJ1zzfk67ZnC6v9hDBuQ9AhAgaImQ1ap689c55nLtqGE3HDO46kERV9je5kp3m6F2DMuhf0xLK/5Qd322pu+DE3jmpwr2liRb9MwBSThzcF0Q6ywgoWPBJtea1mC2H02cYTq0+9/n5p/+z+ZcbVv4kD0qoWLe7NEjnK5PHefUpouslBCtBccnLnvDAUPD07ql4swHDw/tF3UUrbcBKoswXYkYyvR5fZwH5i7RSFzx/IjK8mENHuD6rP1BgqULEokP1CS+FOl6WkiIA01/z0JHQUnVSFdG3K0w9MjVAe8+5R8Lk7vRPk0Ged01qOiuRNG/45G0yzw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=bLxL1mbR0RAOmf81uH2XVRc6X6tf+0MlnbuNrPz7d7s=; b=1STTCpbiZFWTrqR6llwko+Vce8RuGjWCYwvZVBkFyXqTCJ4T5hY76yb96cmOjbSKbPoaN3TXqX/A2PpI5NaJ5nim8wUIi6xOdJSXJzFI44IDF2igiVw5YjjgRE6t1wD7B0Cc1tYOr6Ssrep7A4FiY1tcV1lpUTFOp8xMrJ6MpxU= From: Luca Fancellu To: Nicola Vetrini CC: Xen-devel , Stefano Stabellini , "michal.orzel@amd.com" , "xenia.ragiadakou@amd.com" , "ayan.kumar.halder@amd.com" , "consulting@bugseng.com" , "jbeulich@suse.com" , "andrew.cooper3@citrix.com" , "roger.pau@citrix.com" , Bertrand Marquis , "julien@xen.org" , Rahul Singh , Volodymyr Babchuk Subject: Re: [XEN PATCH v3 2/3] xen/drivers/passthrough/arm/smmu-v3.c: fix violations of MISRA C:2012 Rule 3.1 Thread-Topic: [XEN PATCH v3 2/3] xen/drivers/passthrough/arm/smmu-v3.c: fix violations of MISRA C:2012 Rule 3.1 Thread-Index: AQHZqnGK1UuA6ay8JkaojZwzBrWkkK+h3aEA Date: Thu, 29 Jun 2023 14:52:10 +0000 Message-ID: <55390224-89CC-44E9-95B1-BBA491BBFEF3@arm.com> References: <8a8d5ed47f24791d3927345fafed07023a8b0b76.1688032865.git.nicola.vetrini@bugseng.com> In-Reply-To: <8a8d5ed47f24791d3927345fafed07023a8b0b76.1688032865.git.nicola.vetrini@bugseng.com> Accept-Language: en-GB, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-mailer: Apple Mail (2.3731.600.7) Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-traffictypediagnostic: AM6PR08MB3749:EE_|DB9PR08MB9634:EE_|DBAEUR03FT031:EE_|DBBPR08MB5914:EE_ X-MS-Office365-Filtering-Correlation-Id: 9ae492cf-9468-4d65-cc06-08db78b073f8 x-checkrecipientrouted: true nodisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: yXszV+KXyUITyLLUnPLINy/ynqKyYsJOb0vaJEXNn2wcmjPvcDS3h7UGqU/kQy4+FPyKnPsRA7Iznql8ED/ovT0omE/QsUfdSBmiBF9G+lrBbeoO1eODRxJzKTyGMscN5mogHWXck3H7QqiU0kCk6lv+L3Nz4X13Dpnaq0sjaniQ1XlJj/ALeIPcoCbwsJlpMlIZ1Q9kIaxl5HUkKjW3pj5Bp+1D9VpxKiz3Drp+AidX42ZYBDOfjbk96fOe631FbDRrTekB5joepTTgdvv2ZQUnIyW4k44em3Y2fhhk0LjCbHVzSQJz62n/QvC4+lx9Uya2jGJeYPJjFUeGFxAZZ+mQT3cqAI3q3PqVyQ7Ar6qmB+/xTC/H3Pk9+mOsFr4c+dK8+IIzb3Im66qYF8bOHtTP9ibSY5RzeCUt3EyA7BZeW9R+BZozpLfNNtmgMsBsyvGCQ1T1hzCKucAgajOg323zNiCKso7xFvpVlpQJxPi/3TnFt4+w/FCZtkv5YDWaiIy7wc/2GTrtZDLCjakJd+iaTkB8yB3qPy5EPgMwkHo3Vz1rCWl76X3N3XUbOhe+/Y/pddICOj0LRYEi2C7m6cBLjGK1+CJv+J0KD+dHCCGzRMBz0eq9vMxC2Qnu7yS6PWk4w7dBHx65Y4g4q/cYJQ== X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM6PR08MB3749.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(136003)(346002)(366004)(39860400002)(396003)(376002)(451199021)(6916009)(2906002)(186003)(26005)(54906003)(38070700005)(316002)(86362001)(7416002)(36756003)(33656002)(8676002)(4326008)(6486002)(478600001)(122000001)(2616005)(38100700002)(71200400001)(8936002)(5660300002)(66476007)(91956017)(41300700001)(66946007)(66556008)(66446008)(83380400001)(64756008)(76116006)(6512007)(53546011)(6506007)(45980500001);DIR:OUT;SFP:1101; Content-Type: text/plain; charset="utf-8" Content-ID: <33B04FF79BA2AF49A47F3322C3576A66@eurprd08.prod.outlook.com> Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR08MB9634 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: DBAEUR03FT031.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: 8459de48-2d18-49a1-34ff-08db78b06b21 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: fe9GQfPQG1+JOwFf1NxKB22gnPlA4bQodWvR9xvYmHEpnbUK1uaPTZzTiHVFWUr/EepjzOU1NTZ8b4jr677F6DVQ3QddxRwKFRGeOwNful3VwIpvpdedsLYK/djxEerpkZGQJkxujE6JLoKWXLjLdnA7+Ycuo/PY3J4h/NCyKAZ7B+NFkdwprp0zC1Zt3Wo1l7bJXVPFyKJhsWLbHiNXP3XCxu9h3Q6SM+IaE84l7YEy5l/S3f86RMs18o48Qj6mFBhy4AKXo3tEYnSvfM6eqDD48Ryfdx3wpq4srs7qa/Oh6B/0UYVqaP35+dBKcTpyNvQnM/65QHJ2nbJ4Z+a8cdMFvRC7KMDhiMqcEOK/1P6p3Gi6YsWNm0WHEgRb4lJlX2iCXxC7/s+vUx0WULBZ1ObtPFCc/ukRGi3Q3wZASHSwTXj6JfsQziULIIzpNv/gJZxQOe/+8TzkGGvs9zMaYepEWNQoLQD8t0m4JUBKR6qIVTJpM96LR4vn7yr5lsl6bfgMNVUQwLpjo1AI3NH/DwUVTohaZCp3pcYGGEKXh/pvp7CLEBa8YAl5dgZXjicDgFIrBXh1Io7zhWbqA6kW4gI3z+GvW/eJfy8VqW4ZTXBukXCKP4FjB3XvH6ZprS/h7uV8IzlysPLITQovjQkVee5WSIBdwA+xmUjRY1xBMvCZUYx9p7+5WNMEAVPXJdJSQtAxoVSRdmbHqiw6JbE/kFzn/pISBypzwACGjBQJbJPM2PLd3ogC+bwpkJpSOBEC X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230028)(4636009)(136003)(39860400002)(346002)(396003)(376002)(451199021)(40470700004)(36840700001)(46966006)(6862004)(8676002)(8936002)(5660300002)(36756003)(107886003)(54906003)(478600001)(6486002)(70586007)(70206006)(4326008)(316002)(6512007)(41300700001)(40460700003)(40480700001)(81166007)(356005)(47076005)(186003)(2616005)(6506007)(26005)(86362001)(336012)(83380400001)(82310400005)(36860700001)(53546011)(82740400003)(2906002)(33656002);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 Jun 2023 14:52:25.7694 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 9ae492cf-9468-4d65-cc06-08db78b073f8 X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: DBAEUR03FT031.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBBPR08MB5914 DQoNCj4gT24gMjkgSnVuIDIwMjMsIGF0IDExOjA2LCBOaWNvbGEgVmV0cmluaSA8bmljb2xhLnZl dHJpbmlAYnVnc2VuZy5jb20+IHdyb3RlOg0KPiANCj4gSW4gdGhlIGZpbGUgYHhlbi9kcml2ZXJz L3Bhc3N0aHJvdWdoL2FybS9zbW11LXYzLmMnIHRoZXJlIGFyZSBhIGZldyBvY2N1cnJlbmNlcw0K DQpoZXJlIHlvdSB1c2UgYSBkaWZmZXJlbnQgY2hhcmFjdGVyIHRvIGVuY2xvc2UgdGhlIGZpbGUg cGF0aCAoYCB2cyDigJgpIG1heSBJIHN1Z2dlc3QgdG8NCnVzZSBvbmx5ICjigJgpPw0KDQo+IG9m IG5lc3RlZCAnLy8nIGNoYXJhY3RlciBzZXF1ZW5jZXMgaW5zaWRlIEMtc3R5bGUgY29tbWVudCBi bG9ja3MsIHdoaWNoIHZpb2xhdGUNCj4gUnVsZSAzLjEuDQo+IA0KPiBUaGUgcGF0Y2ggYWltcyB0 byByZXNvbHZlIHRob3NlIGJ5IHJlcGxhY2luZyB0aGUgbmVzdGVkIGNvbW1lbnRzIHdpdGgNCj4g ZXF1aXZhbGVudCBjb25zdHJ1Y3RzIHRoYXQgZG8gbm90IHZpb2xhdGUgdGhlIHJ1bGUuDQo+IA0K PiBTaWduZWQtb2ZmLWJ5OiBOaWNvbGEgVmV0cmluaSA8bmljb2xhLnZldHJpbmlAYnVnc2VuZy5j b20+DQoNCllvdSBhcmUgbWlzc2luZyB0aGUg4oCcLS0t4oCcIGhlcmUsIG1lYW5pbmcgdGhhdCB0 aGUgbGluZXMgYmVsb3cgYXJlIHBhcnQgb2YgdGhlDQpjb21taXQgbWVzc2FnZSBhbmQgSeKAmW0g c3VyZSB5b3UgZG9u4oCZdCB3YW50IHRoYXQuDQoNCkFsc28gaGVyZSwgbWF5IEkgc3VnZ2VzdCB0 byB1c2UgdGhpcyBjb21taXQgdGl0bGUgaW5zdGVhZD8NCuKAnHhlbi9hcm06IHNtbXV2MzogRml4 IHZpb2xhdGlvbnMgb2YgTUlTUkEgQzoyMDEyIFJ1bGUgMy4x4oCdDQoNCkFwYXJ0IGZyb20gdGhh dCwgY2hhbmdlcyBsb29rcyBnb29kIHRvIG1lOg0KDQpSZXZpZXdlZC1ieTogTHVjYSBGYW5jZWxs dSA8bHVjYS5mYW5jZWxsdUBhcm0uY29tPg0KDQpXaWxsIGJlIHRoZSBtYWludGFpbmVyL2NvbW1p dHRlciB0byBkZWNpZGUgaWYgYWRkcmVzc2luZyB0aGVzZSBjb21tZW50LA0KaWYgYWNjZXB0ZWQs IG9uIGNvbW1pdCBvciBpZiB5b3UgbmVlZCB0byBzZW5kIGFub3RoZXIgdmVyc2lvbiwgaW4gd2hp Y2gNCmNhc2UgeW91IGNhbiByZXRhaW4gbXkgci1ieSBwcm92aWRlZCB0aGF0IG5vIG90aGVyIG1v ZGlmaWNhdGlvbnMgYXJlIGRvbmUuDQoNCj4gQ2hhbmdlczoNCj4gLSBSZXNlbmRpbmcgdGhlIHBh dGNoIHdpdGggdGhlIHJpZ2h0IG1haW50YWluZXJzIGluIENDLg0KPiBDaGFuZ2VzIGluIFYyOg0K PiAtIFNwbGl0IHRoZSBwYXRjaCBpbnRvIGEgc2VyaWVzIGFuZCByZXdvcmtlZCB0aGUgZml4Lg0K PiAtIEFwcGx5IHRoZSBmaXggdG8gdGhlIGFybTMyIGBmbHVzaHRsYi5oJyBmaWxlLCBmb3IgY29u c2lzdGVuY3kNCj4gQ2hhbmdlcyBpbiBWMzoNCj4gLSBSZXZpc2VkIHRoZSBjb21tZW50IHRvIG1h a2UgaXQgY2xlYXIgdGhlIGZ1bmN0aW9uIHRoZSBwYXJhbGxlbCBjb250cm9sDQo+IGZsb3dzIGlu IHRoZSBjb21tZW50IGJlbG9uZyB0by4NCj4gLS0tDQo+IHhlbi9kcml2ZXJzL3Bhc3N0aHJvdWdo L2FybS9zbW11LXYzLmMgfCA4ICsrKystLS0tDQo+IDEgZmlsZSBjaGFuZ2VkLCA0IGluc2VydGlv bnMoKyksIDQgZGVsZXRpb25zKC0pDQo+IA0KPiBkaWZmIC0tZ2l0IGEveGVuL2RyaXZlcnMvcGFz c3Rocm91Z2gvYXJtL3NtbXUtdjMuYyBiL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL2FybS9zbW11 LXYzLmMNCj4gaW5kZXggNzIwYWE2OWZmMi4uY2RiYjUwNTEzNCAxMDA2NDQNCj4gLS0tIGEveGVu L2RyaXZlcnMvcGFzc3Rocm91Z2gvYXJtL3NtbXUtdjMuYw0KPiArKysgYi94ZW4vZHJpdmVycy9w YXNzdGhyb3VnaC9hcm0vc21tdS12My5jDQo+IEBAIC0xMDQ3LDEwICsxMDQ3LDEwIEBAIHN0YXRp YyBpbnQgYXJtX3NtbXVfYXRjX2ludl9kb21haW4oc3RydWN0IGFybV9zbW11X2RvbWFpbiAqc21t dV9kb21haW4sDQo+ICogYmVmb3JlIHdlIHJlYWQgJ25yX2F0c19tYXN0ZXJzJyBpbiBjYXNlIG9m IGEgY29uY3VycmVudCBjYWxsIHRvDQo+ICogYXJtX3NtbXVfZW5hYmxlX2F0cygpOg0KPiAqDQo+ IC0gKiAvLyB1bm1hcCgpIC8vIGFybV9zbW11X2VuYWJsZV9hdHMoKQ0KPiAtICogVExCSStTWU5D IGF0b21pY19pbmMoJm5yX2F0c19tYXN0ZXJzKTsNCj4gLSAqIHNtcF9tYigpOyBbLi4uXQ0KPiAt ICogYXRvbWljX3JlYWQoJm5yX2F0c19tYXN0ZXJzKTsgcGNpX2VuYWJsZV9hdHMoKSAvLyB3cml0 ZWwoKQ0KPiArICogLS0tIHVubWFwKCkgLS0tICAgICAgICAgICAgICAgICAtLS0gYXJtX3NtbXVf ZW5hYmxlX2F0cygpIC0tLQ0KPiArICogVExCSStTWU5DICAgICAgICAgICAgICAgICAgICAgICBh dG9taWNfaW5jKCZucl9hdHNfbWFzdGVycyk7DQo+ICsgKiBzbXBfbWIoKTsgICAgICAgICAgICAg ICAgICAgICAgIFsuLi5dDQo+ICsgKiBhdG9taWNfcmVhZCgmbnJfYXRzX21hc3RlcnMpOyAgIHBj aV9lbmFibGVfYXRzKCkgKHNlZSB3cml0ZWwoKSkNCj4gKg0KPiAqIEVuc3VyZXMgdGhhdCB3ZSBh bHdheXMgc2VlIHRoZSBpbmNyZW1lbnRlZCAnbnJfYXRzX21hc3RlcnMnIGNvdW50IGlmDQo+ICog QVRTIHdhcyBlbmFibGVkIGF0IHRoZSBQQ0kgZGV2aWNlIGJlZm9yZSBjb21wbGV0aW9uIG9mIHRo ZSBUTEJJLg0KPiAtLSANCj4gMi4zNC4xDQo+IA0KPiANCg0K From xen-devel-bounces@lists.xenproject.org Thu Jun 29 15:02:37 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 15:02:37 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556896.869751 (Exim 4.92) (envelope-from ) id 1qEtA7-0005T8-EL; Thu, 29 Jun 2023 15:02:23 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556896.869751; Thu, 29 Jun 2023 15:02:23 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEtA7-0005T1-BV; Thu, 29 Jun 2023 15:02:23 +0000 Received: by outflank-mailman (input) for mailman id 556896; Thu, 29 Jun 2023 15:02:21 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEtA5-0005St-PC for xen-devel@lists.xenproject.org; Thu, 29 Jun 2023 15:02:21 +0000 Received: from mail-lf1-x134.google.com (mail-lf1-x134.google.com [2a00:1450:4864:20::134]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id f257070f-168d-11ee-b237-6b7b168915f2; Thu, 29 Jun 2023 17:02:20 +0200 (CEST) Received: by mail-lf1-x134.google.com with SMTP id 2adb3069b0e04-4fb7dc16ff0so1212051e87.2 for ; Thu, 29 Jun 2023 08:02:20 -0700 (PDT) Received: from EMEAENGAAD19049. (default-46-102-197-194.interdsl.co.uk. [46.102.197.194]) by smtp.gmail.com with ESMTPSA id bm24-20020a0564020b1800b0051d9bf340cdsm3900291edb.43.2023.06.29.08.02.19 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 29 Jun 2023 08:02:19 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: f257070f-168d-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cloud.com; s=cloud; t=1688050940; x=1690642940; h=in-reply-to:content-disposition:mime-version:references:subject:cc :to:from:date:message-id:from:to:cc:subject:date:message-id:reply-to; bh=XT2n8d/HgibZyJ2yJYHctqlTiyYQx04wrKeh5Qlv9lk=; b=BhV5c7KRV0ocB7XUalDgyRBxfrQR9J6BcySobKAf6A36eSWlmspSjrV7G69OwV11YO ki234zMLUyZgsXwMXvwtqm4FXO35gCMx3YadWuJs6GpqAfiDaycU99E+WqKAHT/zvFu8 cnZxYIW4bLZpGAsI3e22Xbew6iK5bofCDFZoA= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1688050940; x=1690642940; h=in-reply-to:content-disposition:mime-version:references:subject:cc :to:from:date:message-id:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=XT2n8d/HgibZyJ2yJYHctqlTiyYQx04wrKeh5Qlv9lk=; b=TQSt/derlZhQVTaQ9eS+xI59Q6ShIVfgZfcKXdbw560aag5iRhVQRAmCprfM7buzqz 1ERKz2dtmnf+10kkAG0qVRXv9jFODXpJ2q+tO+Avoqga/rlf2b963Hd9lexicJmsmbdE 6m1ifuF3pSpTCNH9R9NRzRolg1anasRLoPnmGSU9eslcq5Ndn+fuIZWh4LV3OPrroCJF /nMk7LdfZJkfLMF0rth0xahVzD1pPUjyWeq0YkWbNYVu8tZFqs6HedO5+vISfTuCUA88 oTlrF56OY5E6X3ievuk3ZdQwA438HVWUIZwPMXRlMsjlKXIR2XozMxJ4x9bggGPWw70U rDVQ== X-Gm-Message-State: ABy/qLZEe0qwrM/JrN99GDDh8yDa0is5TR02GhdCQjS2Q6H8wznhlRX7 H53V3RlD3AS/JN0bszeQT48tbFpLd4mWIhcqxME= X-Google-Smtp-Source: APBJJlEP4AkaNV88Ua4n4jaL4Uf4OKddugdy7n8dNEYFSSkD1yU7cc39x/UAT1Fn1Rc+wgpsnh0CUQ== X-Received: by 2002:a05:6512:447:b0:4fb:94fd:645f with SMTP id y7-20020a056512044700b004fb94fd645fmr138502lfk.68.1688050940197; Thu, 29 Jun 2023 08:02:20 -0700 (PDT) Message-ID: <649d9cfb.050a0220.f3327.779b@mx.google.com> X-Google-Original-Message-ID: Date: Thu, 29 Jun 2023 16:02:19 +0100 From: Alejandro Vallejo To: Jan Beulich Cc: Andrew Cooper , Roger Pau =?iso-8859-1?Q?Monn=E9?= , Wei Liu , Xen-devel Subject: Re: [PATCH v4 3/4] x86: Read MSR_ARCH_CAPS immediately after early_microcode_init() References: <20230622174219.8871-1-alejandro.vallejo@cloud.com> <20230622174219.8871-4-alejandro.vallejo@cloud.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: On Fri, Jun 23, 2023 at 09:33:56AM +0200, Jan Beulich wrote: > On 22.06.2023 19:42, Alejandro Vallejo wrote: > > --- a/xen/arch/x86/cpu/microcode/core.c > > +++ b/xen/arch/x86/cpu/microcode/core.c > > @@ -885,5 +885,18 @@ int __init early_microcode_init(unsigned long *module_map, > > if ( ucode_mod.mod_end || ucode_blob.size ) > > rc = early_microcode_update_cpu(); > > > > + /* > > + * MSR_ARCH_CAPS may have appeared after the microcode update. > > + * Reload relevant fields in boot_cpu_data if so because they are > > + * needed in tsx_init(). > > + */ > > + if ( boot_cpu_data.cpuid_level >= 7 ) > > + boot_cpu_data.x86_capability[FEATURESET_7d0] > > + = cpuid_count_edx(7, 0); > > + if ( cpu_has_arch_caps ) > > + rdmsr(MSR_ARCH_CAPABILITIES, > > + boot_cpu_data.x86_capability[FEATURESET_m10Al], > > + boot_cpu_data.x86_capability[FEATURESET_m10Ah]); > > + > > return rc; > > } > > Did you consider simply calling early_cpu_init() a 2nd time, and then > perhaps from setup.c and only if ucode load didn't report an error? > There's a printk() in there which will want avoiding on the 2nd pass, > but otherwise this would look more future-proof to me. > > Jan I had, but avoiding the internal printk() was annoying. I've simply created a boolean "verbosity" flag on the new version for early_cpu_init() and called it at the end of early_microcode_init(). Alejandro From xen-devel-bounces@lists.xenproject.org Thu Jun 29 15:05:25 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 15:05:25 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556899.869762 (Exim 4.92) (envelope-from ) id 1qEtCr-00064z-TA; Thu, 29 Jun 2023 15:05:13 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556899.869762; Thu, 29 Jun 2023 15:05:13 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEtCr-00064s-Ou; Thu, 29 Jun 2023 15:05:13 +0000 Received: by outflank-mailman (input) for mailman id 556899; Thu, 29 Jun 2023 15:05:11 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEtCp-00064k-Og for xen-devel@lists.xenproject.org; Thu, 29 Jun 2023 15:05:11 +0000 Received: from EUR04-VI1-obe.outbound.protection.outlook.com (mail-vi1eur04on060e.outbound.protection.outlook.com [2a01:111:f400:fe0e::60e]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 56b937ab-168e-11ee-8611-37d641c3527e; Thu, 29 Jun 2023 17:05:09 +0200 (CEST) Received: from DB3PR06CA0007.eurprd06.prod.outlook.com (2603:10a6:8:1::20) by DB9PR08MB8484.eurprd08.prod.outlook.com (2603:10a6:10:3d4::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.19; Thu, 29 Jun 2023 15:05:06 +0000 Received: from DBAEUR03FT057.eop-EUR03.prod.protection.outlook.com (2603:10a6:8:1:cafe::7f) by DB3PR06CA0007.outlook.office365.com (2603:10a6:8:1::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.22 via Frontend Transport; Thu, 29 Jun 2023 15:05:06 +0000 Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by DBAEUR03FT057.mail.protection.outlook.com (100.127.142.182) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.20 via Frontend Transport; Thu, 29 Jun 2023 15:05:06 +0000 Received: ("Tessian outbound 7c913606c6e6:v142"); Thu, 29 Jun 2023 15:05:06 +0000 Received: from 823da915644f.2 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 668D3553-CC17-4175-BCBA-EB0E9CEA787B.1; Thu, 29 Jun 2023 15:04:55 +0000 Received: from EUR04-VI1-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 823da915644f.2 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Thu, 29 Jun 2023 15:04:55 +0000 Received: from AM6PR08MB3749.eurprd08.prod.outlook.com (2603:10a6:20b:8f::22) by VE1PR08MB5696.eurprd08.prod.outlook.com (2603:10a6:800:1ae::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.26; Thu, 29 Jun 2023 15:04:51 +0000 Received: from AM6PR08MB3749.eurprd08.prod.outlook.com ([fe80::ed0b:5730:a1f9:577b]) by AM6PR08MB3749.eurprd08.prod.outlook.com ([fe80::ed0b:5730:a1f9:577b%5]) with mapi id 15.20.6521.026; Thu, 29 Jun 2023 15:04:51 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 56b937ab-168e-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=IyCym8qebWLBE0VHeGSJrzaW4U7Q52zCDB4su6wR5DQ=; b=ti4mvXVj7Qjwb/gNKN7LfiVFDqpfF/AGz7tGKNFJTdBgcGoSsAHZ9+b2c19jieO6+9pSrBMrE7ry6E9GbcjJ6mafYGkCNqRHsgJINSJGABHwU6Ncp6wTvo84Xaxu48phfXd8lHHrgo1A+dK6kG11Dp1k0GmT9JhrIsqqN/mmJ40= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C X-CheckRecipientChecked: true X-CR-MTA-CID: fb92cb0a438c3068 X-CR-MTA-TID: 64aa7808 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=EKsBHdrFig7/X1FbggqoS1Olkli5k0MpI+dN+/MndMtb4WQ3hLZLohUMSOA2Pfub0jK4uaw4B1YAYC4HJHsvBEs8IcngBuTFqhgRE7veqyJpunoVem7EE3ri2qrr+AkdJsDpS7uuPxZ2+QhIvyO9wen7oou0p6xTcUjE/OK+mEq/fn5Arhd55/CQFhNrP3zWoanaa+v/bmCtrk1RrBJezd+q25nN5CAuQ2e93xPGcP6Q0c7idcIZh0DbuMSvGpzkQHRx3FHlnleZQdvcswvHlB2HNc4GdHyCjxh07JspR/5EIar3bNJw3mLwqUkabLlT1oX+CPd8V3Uy8mfKm///aw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=IyCym8qebWLBE0VHeGSJrzaW4U7Q52zCDB4su6wR5DQ=; b=Nx9OnPCusulPz2R9AK+E9ZCTHTGwWN4pnNpsWj92VyGX2E4BzgmvRAcI+ANZWYnZUmS3y9SXmXV0tkYfR9wGWwEUEtGn8rKpdl5gBKqDdbzhTOH4eQh/QcAYfweN7LC90lUWzaQaiaaLnwapCMlwy10VzragJDVlLOx+1/0OMZQEJuGhHzCFvT1xyq+gR+Aa8khLJEVZXyx0HbiUAqm9Y4NpUVHW1QjUkLAPCC1dsEna9boS/0B4Y5uE9wrdk62a/7lTem/IFTzz0TGyDEMjYhVL295l0uC7lMe5/T9v8Koelu1KYdhSDYcxl4mn+akVxmPELFpWn5AR4d3mQcDcig== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=IyCym8qebWLBE0VHeGSJrzaW4U7Q52zCDB4su6wR5DQ=; b=ti4mvXVj7Qjwb/gNKN7LfiVFDqpfF/AGz7tGKNFJTdBgcGoSsAHZ9+b2c19jieO6+9pSrBMrE7ry6E9GbcjJ6mafYGkCNqRHsgJINSJGABHwU6Ncp6wTvo84Xaxu48phfXd8lHHrgo1A+dK6kG11Dp1k0GmT9JhrIsqqN/mmJ40= From: Luca Fancellu To: Nicola Vetrini CC: Xen-devel , Stefano Stabellini , "michal.orzel@amd.com" , "xenia.ragiadakou@amd.com" , "ayan.kumar.halder@amd.com" , "consulting@bugseng.com" , "jbeulich@suse.com" , "andrew.cooper3@citrix.com" , "roger.pau@citrix.com" , Bertrand Marquis , "julien@xen.org" , George Dunlap , Wei Liu Subject: Re: [XEN PATCH v3 3/3] xen: fix violations of MISRA C:2012 Rule 3.1 Thread-Topic: [XEN PATCH v3 3/3] xen: fix violations of MISRA C:2012 Rule 3.1 Thread-Index: AQHZqnGGeSRo6D9TDkKPQE/VGyIB1K+h4SyA Date: Thu, 29 Jun 2023 15:04:51 +0000 Message-ID: <771A1A80-0FC6-4D20-84FE-DA0A2DCFF14B@arm.com> References: In-Reply-To: Accept-Language: en-GB, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-mailer: Apple Mail (2.3731.600.7) Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-traffictypediagnostic: AM6PR08MB3749:EE_|VE1PR08MB5696:EE_|DBAEUR03FT057:EE_|DB9PR08MB8484:EE_ X-MS-Office365-Filtering-Correlation-Id: 8a7d84a1-5470-4549-70a1-08db78b23951 x-checkrecipientrouted: true nodisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: qcM0QEYv0rrODXiqaNPVtyk/6OBjfpnsDEBBksUmKEcf2/VWAIEjzt/mVfbbEGRZj8Pkb7sDO7M7BkBZmLBiTkPskbvzfv3zpiqqmZvHHW/Vm4vpSQ3TJTnUSwQRJG0oIzhGNq2Acob5EwV+LyMSbajaYXgYWhzyiLUlW52AS4hQXbH1AGbneaLrHxV8JAQnPxpi8BE9D72jRdaovj5rV7q9uQwqGF1DElL+8kgXN8EQKdy2vvuH69PyvMPvZeV7zLIwfOGTUDrs+u119GNI85cirpiXYDbxQKR460oAk6VN4nstFHo6CyiN5Lp5fWUnWL4WCGWs9ySzLrMvkEuXDbqClGnE/v876Pog3RAIbgcro0arsyO17JC9gIbxsWzhuF2JwAWoxVjRpEI4jElifvk4Sc2Nl7Enf1W9IWYRQIoMDF85TGUDNQnqNorcpEEALbxSLI43q8j3/+APlbug411RN2rQ6vShx+Ujp8KlV11cljYoku7oTUel2by1x8t7xJdx1/7AfbVfW1dHnaz1+CdI1zRTjTbwubv/oOYxaloASZC+T27hlGeAOe0jEWDdyV8ycfJXnL4/0LyAIzguj3RBgr60QnrLNFC0f2XjKPw7ym9T09Txi+lhsed/KjzxkHJO55sEWLMNTzmnmUkpOA== X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM6PR08MB3749.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(366004)(376002)(136003)(396003)(346002)(39860400002)(451199021)(316002)(8676002)(66946007)(64756008)(66476007)(76116006)(6512007)(6506007)(66446008)(186003)(4326008)(53546011)(26005)(6916009)(8936002)(6486002)(54906003)(71200400001)(41300700001)(66556008)(91956017)(5660300002)(7416002)(2906002)(2616005)(478600001)(38070700005)(38100700002)(122000001)(33656002)(86362001)(36756003)(83380400001)(45980500001);DIR:OUT;SFP:1101; Content-Type: text/plain; charset="utf-8" Content-ID: <4498A3FE74C7EA4B9C0A71F69B3DBAAC@eurprd08.prod.outlook.com> Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: VE1PR08MB5696 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: DBAEUR03FT057.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: 31cc7cf3-85be-4a08-2274-08db78b23058 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: EOYWdVc1pjtHCSEOCbCQRkNKQQv1X8rquckzinvy4vDAZz4ogib6PfeLJWYgiAc19zzLIFRIiRMUft+osUXncq7+rqThxnmPrkuWh/auSiFf5ey5hiT5tUvAxUhMJOb9AdML4rjHirO3RyK5J+fFZhG6MbubZ7UjhK5vIwdcvztW4Z8oJ7IWzYK4Tdsg38E8b4h+++GmHbyciil8sXpL1cL0oTcTSjwucOaNYFJcsubZTUkqz1DAKh1dszzeAkKa7TKpBaM0NofH90qvGWWRTPqlhyUCu1+6SGMRDB6A30qPHjXmaUgl9j06tPzZxKSYeHul6T+UHD+VzdLDUz4RajXyW1qMPtS0Nae9v+VarkjRj+qazgW5YfbzD3NwzHGvmH6FreZ1gIEiay7ouFwT3pZpeb2qYWyYDtU0L9F99LU2yuYR2gmlp7RNvSL/xsqNxD0uofez5LhLE6uQI4JfuvUp9H+sm2jodn1mHSxx1ieAUpUSOMwxZj52InBEoEW8CHr8+7VRvruZ51teir8bSrthh2a99SbjDBef+eqioLg90jzY5mxHuBv9Ju+h/DntRQEVY/Oh0tsST1ilGXkZvxIc9BTG7OtO48MyqG3TW1LSln91Kf/2yq068nUK+5j9dPN9lk+PyKU0YHqXzL61tEOMdS4QKj5EsDnW0wwBjunGX6pI4Qiew/Zqe62A5kR+ipifEQ2nvseoLvPOG757tmsmUU1Z0cLmIiN1cuXb4HfSgJFHF3v0ghP7ZXZ9XxNE X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(396003)(376002)(136003)(346002)(451199021)(36840700001)(46966006)(40470700004)(478600001)(6486002)(53546011)(6506007)(6512007)(186003)(26005)(40460700003)(2616005)(54906003)(6862004)(86362001)(2906002)(81166007)(356005)(83380400001)(336012)(40480700001)(4326008)(82310400005)(70206006)(70586007)(36860700001)(8676002)(33656002)(5660300002)(8936002)(316002)(47076005)(41300700001)(36756003)(82740400003);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 Jun 2023 15:05:06.4051 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 8a7d84a1-5470-4549-70a1-08db78b23951 X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: DBAEUR03FT057.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR08MB8484 DQoNCj4gT24gMjkgSnVuIDIwMjMsIGF0IDExOjA2LCBOaWNvbGEgVmV0cmluaSA8bmljb2xhLnZl dHJpbmlAYnVnc2VuZy5jb20+IHdyb3RlOg0KPiANCj4gSW4gdGhlIGZpbGVzIG1vZGlmaWVkIGJ5 IHRoaXMgcGF0Y2ggdGhlcmUgYXJlIGEgZmV3IG9jY3VycmVuY2VzIG9mIG5lc3RlZCAnLy8nDQo+ IGNoYXJhY3RlciBzZXF1ZW5jZXMgaW5zaWRlIEMtc3R5bGUgY29tbWVudCBibG9ja3MsIHdoaWNo IHZpb2xhdGUgUnVsZSAzLjEuDQo+IFRoZSBwYXRjaCBhaW1zIHRvIHJlc29sdmUgdGhvc2UgYnkg cmVtb3ZpbmcgdGhlIG5lc3RlZCBjb21tZW50cy4NCj4gDQo+IEluIHRoZSBmaWxlICd4ZW4vY29t bW9uL3htYWxsb2NfdGxzZi5jJyB0aGUgY29tbWVudCBoYXMgYmVlbiByZXBsYWNlcyBieQ0KDQpU eXBvOiBzL3JlcGxhY2VzL3JlcGxhY2VkLw0KDQo+IGFuIEFTU0VSVCwgdG8gZW5zdXJlIHRoYXQg dGhlIGludmFyaWFudCBpbiB0aGUgY29tbWVudCBpcyBlbmZvcmNlZC4NCj4gDQo+IEluIHRoZSBm aWxlICd4ZW4vaW5jbHVkZS94ZW4vYXRvbWljLmgnIHRoZSBuZXN0ZWQgY29tbWVudCBoYXMgYmVl biByZW1vdmVkLA0KPiBzaW5jZSB0aGUgY29kZSBzYW1wbGUgaXMgYWxyZWFkeSBleHBsYWluZWQg YnkgdGhlIHByZWNlZGluZyBjb21tZW50Lg0KPiANCj4gU2lnbmVkLW9mZi1ieTogTmljb2xhIFZl dHJpbmkgPG5pY29sYS52ZXRyaW5pQGJ1Z3NlbmcuY29tPg0KDQpTYW1lIGFzIHBhdGNoIDIsIG1p c3Npbmcg4oCcLS0tIg0KDQo+IENoYW5nZXM6DQo+IC0gUmVzZW5kaW5nIHRoZSBwYXRjaCB3aXRo IHRoZSByaWdodCBtYWludGFpbmVycyBpbiBDQy4NCj4gQ2hhbmdlcyBpbiBWMjoNCj4gLSBTcGxp dCB0aGUgcGF0Y2ggaW50byBhIHNlcmllcyBhbmQgcmV3b3JrZWQgdGhlIGZpeDsNCj4gLSBBcHBs eSB0aGUgZml4IHRvIHRoZSBhcm0zMiBgZmx1c2h0bGIuaCcgZmlsZSwgZm9yIGNvbnNpc3RlbmN5 Lg0KPiBDaGFuZ2VzIGluIFYzOg0KPiAtIFJlcGxhY2VkIGNvbW1tZW50ZWQtb3V0ICdpZicgd2l0 aCBhbiBBU1NFUlQoICpmbCA+PSAwICkuDQo+IC0tLQ0KPiB4ZW4vY29tbW9uL3htYWxsb2NfdGxz Zi5jIHwgNCArLS0tDQo+IHhlbi9pbmNsdWRlL3hlbi9hdG9taWMuaCAgfCAyICstDQo+IDIgZmls ZXMgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCA0IGRlbGV0aW9ucygtKQ0KPiANCj4gZGlmZiAt LWdpdCBhL3hlbi9jb21tb24veG1hbGxvY190bHNmLmMgYi94ZW4vY29tbW9uL3htYWxsb2NfdGxz Zi5jDQo+IGluZGV4IDc1YmRmMThjNGUuLjk1YWZmY2M1NzEgMTAwNjQ0DQo+IC0tLSBhL3hlbi9j b21tb24veG1hbGxvY190bHNmLmMNCj4gKysrIGIveGVuL2NvbW1vbi94bWFsbG9jX3Rsc2YuYw0K PiBAQCAtMTQwLDkgKzE0MCw3IEBAIHN0YXRpYyBpbmxpbmUgdm9pZCBNQVBQSU5HX1NFQVJDSCh1 bnNpZ25lZCBsb25nICpyLCBpbnQgKmZsLCBpbnQgKnNsKQ0KPiAgICAgICAgICpmbCA9IGZsc2wo KnIpIC0gMTsNCj4gICAgICAgICAqc2wgPSAoKnIgPj4gKCpmbCAtIE1BWF9MT0cyX1NMSSkpIC0g TUFYX1NMSTsNCj4gICAgICAgICAqZmwgLT0gRkxJX09GRlNFVDsNCj4gLSAgICAgICAgLyppZiAo KCpmbCAtPSBGTElfT0ZGU0VUKSA8IDApIC8vIEZMIHdpbGwgYmUgYWx3YXlzID4wIQ0KPiAtICAg ICAgICAgKmZsID0gKnNsID0gMDsNCj4gLSAgICAgICAgICovDQo+ICsgICAgICAgIEFTU0VSVCgg KmZsID49IDAgKTsNCg0KSeKAmXZlIGNoZWNrZWQgdGhlIGNvZGViYXNlIGZvciB1c2FnZSBvZiBB U1NFUlQsIGJ1dCBJ4oCZdmUgbm90IHNlZW4gdXNlIG9mIGl0IHdpdGggc3BhY2VzDQpiZWZvcmUg YW5kIGFmdGVyIHRoZSBjb25kaXRpb24gKGxpa2Ugb3VyIGlmIGNvbmRpdGlvbnMpIHNvIEkgdGhp bmsgdGhleSBjYW4gYmUgZHJvcHBlZC4NCg0KPiAgICAgICAgICpyICY9IH50Ow0KPiAgICAgfQ0K PiB9DQo+IGRpZmYgLS1naXQgYS94ZW4vaW5jbHVkZS94ZW4vYXRvbWljLmggYi94ZW4vaW5jbHVk ZS94ZW4vYXRvbWljLmgNCj4gaW5kZXggNTI5MjEzZWJiYi4uZmE3NTBhMThhZSAxMDA2NDQNCj4g LS0tIGEveGVuL2luY2x1ZGUveGVuL2F0b21pYy5oDQo+ICsrKyBiL3hlbi9pbmNsdWRlL3hlbi9h dG9taWMuaA0KPiBAQCAtNzgsNyArNzgsNyBAQCBzdGF0aWMgaW5saW5lIHZvaWQgX2F0b21pY19z ZXQoYXRvbWljX3QgKnYsIGludCBpKTsNCj4gICogICAgICBpbnQgb2xkID0gYXRvbWljX3JlYWQo JnYpOw0KPiAgKiAgICAgIGludCBuZXcgPSBvbGQgKyAxOw0KPiAgKiAgICAgIGlmICggbGlrZWx5 KG9sZCA9PSBhdG9taWNfY21weGNoZygmdiwgb2xkLCBuZXcpKSApDQo+IC0gKiAgICAgICAgICBi cmVhazsgLy8gc3VjY2VzcyENCj4gKyAqICAgICAgICAgIGJyZWFrOw0KPiAgKiAgfQ0KPiAgKi8N Cj4gc3RhdGljIGlubGluZSBpbnQgYXRvbWljX2NtcHhjaGcoYXRvbWljX3QgKnYsIGludCBvbGQs IGludCBuZXcpOw0KPiAtLSANCj4gMi4zNC4xDQo+IA0KPiANCg0KV2l0aCB0aGUgY29tbWVudHMg YWRkcmVzc2VkOg0KUmV2aWV3ZWQtYnk6IEx1Y2EgRmFuY2VsbHUgPGx1Y2EuZmFuY2VsbHVAYXJt LmNvbT4NCg0KDQoNCg== From xen-devel-bounces@lists.xenproject.org Thu Jun 29 15:14:55 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 15:14:55 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556903.869771 (Exim 4.92) (envelope-from ) id 1qEtM5-0007d8-Nk; Thu, 29 Jun 2023 15:14:45 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556903.869771; Thu, 29 Jun 2023 15:14:45 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEtM5-0007d1-Kt; Thu, 29 Jun 2023 15:14:45 +0000 Received: by outflank-mailman (input) for mailman id 556903; Thu, 29 Jun 2023 15:14:44 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEtM4-0007cr-PS for xen-devel@lists.xenproject.org; Thu, 29 Jun 2023 15:14:44 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEtM2-0007Hg-Ls; Thu, 29 Jun 2023 15:14:42 +0000 Received: from 54-240-197-234.amazon.com ([54.240.197.234] helo=[192.168.2.72]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qEtM2-0007Hl-DQ; Thu, 29 Jun 2023 15:14:42 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=fxSnEtfgvDLdV2Sq+17Ez9x2jTvWuWij7HjEITrypHg=; b=ggRIe7AqV+fkS7BKyzHAIRFLR3 df1w6NvF7qKEzTXTzWiUAvIbHi3AZXSWIs8wMg4KIPMXu5gQxCs8SH9+YLADqCcq4JJhjAxu6rwX6 P2l9x4/KxnaHgPfyNQkcIZkHRL+xmpE5kZAS8mpGewgd3jrn9g0CSTvyCivTSNLS5qfs=; Message-ID: <9ae972a7-d229-4eb5-0f11-2a73f12d5ef8@xen.org> Date: Thu, 29 Jun 2023 16:14:40 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v3 28/52] xen/mpu: plump virt/maddr conversion in MPU system Content-Language: en-US To: Ayan Kumar Halder , Andrew Cooper , Penny Zheng , xen-devel@lists.xenproject.org Cc: Stefano Stabellini , Bertrand Marquis , Volodymyr Babchuk , Wei Chen References: <20230626033443.2943270-1-Penny.Zheng@arm.com> <20230626033443.2943270-29-Penny.Zheng@arm.com> <674011bb-b8df-d11e-a322-1827096c1b74@amd.com> <2c8387ab-547d-5bdf-5d62-e7a950e5c1de@citrix.com> From: Julien Grall In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Hi, On 29/06/2023 15:44, Ayan Kumar Halder wrote: > > On 29/06/2023 15:23, Andrew Cooper wrote: >> On 29/06/2023 3:20 pm, Ayan Kumar Halder wrote: >>> On 26/06/2023 04:34, Penny Zheng wrote: >>>> diff --git a/xen/arch/arm/include/asm/mm.h >>>> b/xen/arch/arm/include/asm/mm.h >>>> index eb520b49e3..ea4847c12b 100644 >>>> --- a/xen/arch/arm/include/asm/mm.h >>>> +++ b/xen/arch/arm/include/asm/mm.h >>>> @@ -292,6 +301,12 @@ static inline void *maddr_to_virt(paddr_t ma) >>>>                         ((ma & ma_top_mask) >> pfn_pdx_hole_shift))); >>>>    } >>>>    #endif >>>> +#else /* CONFIG_HAS_MPU */ >>>> +static inline void *maddr_to_virt(paddr_t ma) >>>> +{ >>>> +    return (void *)(unsigned long)ma; >>> Why do you need "(unsigned long)ma" ? Both "unsigned long" and >>> "paddr_t" are u64. >> For when paddr_t really isn't u64. > > Sorry, I am missing something > > From > https://xenbits.xen.org/gitweb/?p=xen.git;a=blob;f=xen/arch/arm/include/asm/types.h;h=fb6618ef247fe8e3abe472e50b4877e11cc8a96c;hb=refs/heads/staging > > In CONFIG_ARM_64 > > typedef unsigned long u64; > > typedef u64 paddr_t; > > So, why do we need to typecast "paddr_t" to "unsigned long" as they are > the same ? We may decide to restrict paddr_t to 32-bit in the future on Arm64. Also, when CONFIG_PHYS_ADDR_T_32=n, paddr_t is 64-bit on 32-bit Xen. So casting directly to (void *) is not possible. Although, this is not a problem here because for the MPU on 32-bit, you would select CONFIG_PHYS_ADDR_T_32. On a side note, I agree with Andrew that we should switch to _p(). Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Thu Jun 29 15:27:12 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 15:27:12 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556911.869807 (Exim 4.92) (envelope-from ) id 1qEtY2-0001Mt-Mp; Thu, 29 Jun 2023 15:27:06 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556911.869807; Thu, 29 Jun 2023 15:27:06 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEtY2-0001MY-H2; Thu, 29 Jun 2023 15:27:06 +0000 Received: by outflank-mailman (input) for mailman id 556911; Thu, 29 Jun 2023 15:27:04 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEtY0-0000oy-EN for xen-devel@lists.xenproject.org; Thu, 29 Jun 2023 15:27:04 +0000 Received: from mail-ej1-x630.google.com (mail-ej1-x630.google.com [2a00:1450:4864:20::630]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 642da17a-1691-11ee-8611-37d641c3527e; Thu, 29 Jun 2023 17:27:00 +0200 (CEST) Received: by mail-ej1-x630.google.com with SMTP id a640c23a62f3a-9920a6a6cb0so97175566b.3 for ; Thu, 29 Jun 2023 08:27:00 -0700 (PDT) Received: from localhost.localdomain (default-46-102-197-194.interdsl.co.uk. [46.102.197.194]) by smtp.gmail.com with ESMTPSA id v11-20020a170906564b00b00992c4103cb5sm307727ejr.129.2023.06.29.08.26.59 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 29 Jun 2023 08:26:59 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 642da17a-1691-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cloud.com; s=cloud; t=1688052419; x=1690644419; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=hW8flEGuUVEa8vCzcK1Csawi7P2txv/CQdLOaV7tNFk=; b=LsP4Q1/sJcGPff1nn5mAs1YGEsVCeeCyjCUXx5n6bjWd+Eh0bR2LM5JnGUcqytdUGi KrKd5hBm0rUMToba1+Sfjhxbm6rXSyW9LbXLetjOVy5q8dmYh/jNJDTKo6Pv8NNi8Z2E dp3Zw6t5KjFhRoWgWTROFn/UJSiPbK2w4N8ro= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1688052419; x=1690644419; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=hW8flEGuUVEa8vCzcK1Csawi7P2txv/CQdLOaV7tNFk=; b=I5ZIEF7ZyPNxOwYW017kcMf2FACPX/CkZ97nbggPQH6Df827hWyYtE/xzmBYfikAAl KNvzLvXzFxTnHGnfbmcOENpBfxJ6cT6ayPdC3nPJpL1nVqoop45S6VrVYIIcLkj7+gI+ feRRkko37T12kCd1y182vafW1KEVPWgyVkn4jRLTo4BMEN+7cNK/PZu3KJIXWQYoWfJg IQqqKpgEXIERo4Ze7Xo/HIHrw9pPIhvASetmM42iWvuOuZl5Kvtvkw3RcI2TtugNbdMc XGuJ1JVBb+1/AK2bznIOTX7B/c33rq7Kne7cEKYPgnTSi/XqTPRFS9fHz8Towom80qku DYcA== X-Gm-Message-State: AC+VfDzgu67rfrExAWKZjdXN68BThp/jDKD4QaqCwF+c+xc6LIfzJTa5 T3xP4Bhp+ORCgDyf8+crkhOIizirS55psSwZ5JU= X-Google-Smtp-Source: ACHHUZ6dPxjTgEK4ZylFXht3+Dygl3PdD/weoWIMQ8Q8+aOEnfqCLEZ/bEQC801no7kdb25MXeNfkA== X-Received: by 2002:a17:907:d0f:b0:975:942e:81e7 with SMTP id gn15-20020a1709070d0f00b00975942e81e7mr37765200ejc.37.1688052419824; Thu, 29 Jun 2023 08:26:59 -0700 (PDT) From: Alejandro Vallejo To: Xen-devel Cc: Alejandro Vallejo , Jan Beulich , Andrew Cooper , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Wei Liu Subject: [PATCH v5 2/4] x86/microcode: Ignore microcode loading interface for revision = -1 Date: Thu, 29 Jun 2023 16:26:54 +0100 Message-Id: <20230629152656.12655-3-alejandro.vallejo@cloud.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20230629152656.12655-1-alejandro.vallejo@cloud.com> References: <20230629152656.12655-1-alejandro.vallejo@cloud.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Some hypervisors report ~0 as the microcode revision to mean "don't issue microcode updates". Ignore the microcode loading interface in that case. Signed-off-by: Alejandro Vallejo Reviewed-by: Jan Beulich --- v5: * Style fix. Brace position. --- xen/arch/x86/cpu/microcode/core.c | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/xen/arch/x86/cpu/microcode/core.c b/xen/arch/x86/cpu/microcode/core.c index bec8b55db2..b620e3bfa6 100644 --- a/xen/arch/x86/cpu/microcode/core.c +++ b/xen/arch/x86/cpu/microcode/core.c @@ -867,10 +867,22 @@ int __init early_microcode_init(unsigned long *module_map, return -ENODEV; } - microcode_grab_module(module_map, mbi); - ucode_ops.collect_cpu_info(); + /* + * Some hypervisors deliberately report a microcode revision of -1 to + * mean that they will not accept microcode updates. We take the hint + * and ignore the microcode interface in that case. + */ + if ( this_cpu(cpu_sig).rev == ~0 ) + { + printk(XENLOG_WARNING "Microcode loading disabled\n"); + ucode_ops.apply_microcode = NULL; + return -ENODEV; + } + + microcode_grab_module(module_map, mbi); + if ( ucode_mod.mod_end || ucode_blob.size ) rc = early_microcode_update_cpu(); -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 29 15:27:12 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 15:27:12 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556912.869813 (Exim 4.92) (envelope-from ) id 1qEtY3-0001UH-2c; Thu, 29 Jun 2023 15:27:07 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556912.869813; Thu, 29 Jun 2023 15:27:07 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEtY2-0001S4-Qw; Thu, 29 Jun 2023 15:27:06 +0000 Received: by outflank-mailman (input) for mailman id 556912; Thu, 29 Jun 2023 15:27:05 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEtY1-0000oy-7c for xen-devel@lists.xenproject.org; Thu, 29 Jun 2023 15:27:05 +0000 Received: from mail-ej1-x62f.google.com (mail-ej1-x62f.google.com [2a00:1450:4864:20::62f]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 65180cfa-1691-11ee-8611-37d641c3527e; Thu, 29 Jun 2023 17:27:01 +0200 (CEST) Received: by mail-ej1-x62f.google.com with SMTP id a640c23a62f3a-992b66e5affso74265466b.3 for ; Thu, 29 Jun 2023 08:27:01 -0700 (PDT) Received: from localhost.localdomain (default-46-102-197-194.interdsl.co.uk. [46.102.197.194]) by smtp.gmail.com with ESMTPSA id v11-20020a170906564b00b00992c4103cb5sm307727ejr.129.2023.06.29.08.27.00 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 29 Jun 2023 08:27:00 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 65180cfa-1691-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cloud.com; s=cloud; t=1688052421; x=1690644421; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=G67gLa/o7/WHSN6dkAdpT425Jo9Uwtlq2X27eVNLdd8=; b=CnuuXj8PwDbeJspOFZNReQGrG/5s3fsRN7gJ8gusWs3LgYeWxowuGqE01VqqK5Pomk sPDbREl9Ktby9eErAH6DkCaGTcAdNwLLjVXDjMWlwAe7BSXKXC/+BjB/XMhqFHGzRkl/ //AbV59CxqU+scRdZkcKJdWsinQzgpf/YlXvU= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1688052421; x=1690644421; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=G67gLa/o7/WHSN6dkAdpT425Jo9Uwtlq2X27eVNLdd8=; b=WGxKl0XHULH0/PIa6QRBp8LdZ0UPhCD7maR7mSuJpWDpGOmvCWrBkr1/7kjrsKE1Bf h6L7pIlmVnAgFGD5pj4lQmOPMzGgeZZSTg0Gn8j07TFAo3w9DTqZMB7fMfsdKnoi2OfT ZP1Ep4ylcJotxUHEfqcJGB0Btt14vmg3Gt3Bx5rMc1ria/wOjFtVhDzpkihhwB5DCeob LpdjLjDVsy3W4yxfoUQTnNLy6hLboMZ8Ptv/s5e3pnKHH38QEBlj7L38tBRRjzZYyxYp PFP2lhD9wtr1d/x+C9DFRzydJuAKlPqfTJvBwtJ4JjoIJVP72NQoqEmWZR0Gko0/TOba 1YKQ== X-Gm-Message-State: AC+VfDxbn4ZMflPsYoOOJTwgh6zFZ7tcIwO4E3USsuGXaUSefWUFQG1b KMY7SkUJBURpAn3u4AjsWkXz3wXsxBxUIjaoJkY= X-Google-Smtp-Source: ACHHUZ4KnEuLzL96joYK2MZR6qliLnOJDmS5URTcsPK4LfoteX6IGLCdTBNlEyaIivECeI2GcUeDzQ== X-Received: by 2002:a17:906:9381:b0:98e:37fe:691b with SMTP id l1-20020a170906938100b0098e37fe691bmr10225842ejx.34.1688052421260; Thu, 29 Jun 2023 08:27:01 -0700 (PDT) From: Alejandro Vallejo To: Xen-devel Cc: Alejandro Vallejo , Jan Beulich , Andrew Cooper , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Wei Liu Subject: [PATCH v5 4/4] x86/microcode: Disable microcode update handler if DIS_MCU_UPDATE is set Date: Thu, 29 Jun 2023 16:26:56 +0100 Message-Id: <20230629152656.12655-5-alejandro.vallejo@cloud.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20230629152656.12655-1-alejandro.vallejo@cloud.com> References: <20230629152656.12655-1-alejandro.vallejo@cloud.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit If IA32_MSR_MCU_CONTROL exists then it's possible a CPU may be unable to perform microcode updates. This is controlled through the DIS_MCU_LOAD bit and is intended for baremetal clouds where the owner may not trust the tenant to choose the microcode version in use. If we notice that bit being set then simply disable the "apply_microcode" handler so we can't even try to perform update (as it's known to be silently dropped). While at it, remove the Intel family check, as microcode loading is supported on every Intel 64 CPU. Signed-off-by: Alejandro Vallejo --- v5: * Removed __init on declaration * Minor style fix (2 spaces rather than 1 after "return") --- xen/arch/x86/cpu/microcode/core.c | 10 +++++++--- xen/arch/x86/cpu/microcode/intel.c | 13 +++++++++++++ xen/arch/x86/cpu/microcode/private.h | 7 +++++++ xen/arch/x86/include/asm/cpufeature.h | 1 + xen/arch/x86/include/asm/msr-index.h | 5 +++++ 5 files changed, 33 insertions(+), 3 deletions(-) diff --git a/xen/arch/x86/cpu/microcode/core.c b/xen/arch/x86/cpu/microcode/core.c index 98a5aebfe3..982b278c9e 100644 --- a/xen/arch/x86/cpu/microcode/core.c +++ b/xen/arch/x86/cpu/microcode/core.c @@ -847,17 +847,21 @@ int __init early_microcode_init(unsigned long *module_map, { const struct cpuinfo_x86 *c = &boot_cpu_data; int rc = 0; + bool can_load = false; switch ( c->x86_vendor ) { case X86_VENDOR_AMD: if ( c->x86 >= 0x10 ) + { ucode_ops = amd_ucode_ops; + can_load = true; + } break; case X86_VENDOR_INTEL: - if ( c->x86 >= 6 ) - ucode_ops = intel_ucode_ops; + ucode_ops = intel_ucode_ops; + can_load = intel_can_load_microcode(); break; } @@ -874,7 +878,7 @@ int __init early_microcode_init(unsigned long *module_map, * mean that they will not accept microcode updates. We take the hint * and ignore the microcode interface in that case. */ - if ( this_cpu(cpu_sig).rev == ~0 ) + if ( this_cpu(cpu_sig).rev == ~0 || !can_load ) { printk(XENLOG_WARNING "Microcode loading disabled\n"); ucode_ops.apply_microcode = NULL; diff --git a/xen/arch/x86/cpu/microcode/intel.c b/xen/arch/x86/cpu/microcode/intel.c index 8d4d6574aa..060c529a6e 100644 --- a/xen/arch/x86/cpu/microcode/intel.c +++ b/xen/arch/x86/cpu/microcode/intel.c @@ -385,6 +385,19 @@ static struct microcode_patch *cf_check cpu_request_microcode( return patch; } +bool __init intel_can_load_microcode(void) +{ + uint64_t mcu_ctrl; + + if ( !cpu_has_mcu_ctrl ) + return true; + + rdmsrl(MSR_MCU_CONTROL, mcu_ctrl); + + /* If DIS_MCU_LOAD is set applying microcode updates won't work */ + return !(mcu_ctrl & MCU_CONTROL_DIS_MCU_LOAD); +} + const struct microcode_ops __initconst_cf_clobber intel_ucode_ops = { .cpu_request_microcode = cpu_request_microcode, .collect_cpu_info = collect_cpu_info, diff --git a/xen/arch/x86/cpu/microcode/private.h b/xen/arch/x86/cpu/microcode/private.h index 626aeb4d08..d80787205a 100644 --- a/xen/arch/x86/cpu/microcode/private.h +++ b/xen/arch/x86/cpu/microcode/private.h @@ -60,6 +60,13 @@ struct microcode_ops { const struct microcode_patch *new, const struct microcode_patch *old); }; +/** + * Checks whether we can perform microcode updates on this Intel system + * + * @return True iff the microcode update facilities are enabled + */ +bool intel_can_load_microcode(void); + extern const struct microcode_ops amd_ucode_ops, intel_ucode_ops; #endif /* ASM_X86_MICROCODE_PRIVATE_H */ diff --git a/xen/arch/x86/include/asm/cpufeature.h b/xen/arch/x86/include/asm/cpufeature.h index e2cb8f3cc7..608bc4dce0 100644 --- a/xen/arch/x86/include/asm/cpufeature.h +++ b/xen/arch/x86/include/asm/cpufeature.h @@ -192,6 +192,7 @@ static inline bool boot_cpu_has(unsigned int feat) #define cpu_has_if_pschange_mc_no boot_cpu_has(X86_FEATURE_IF_PSCHANGE_MC_NO) #define cpu_has_tsx_ctrl boot_cpu_has(X86_FEATURE_TSX_CTRL) #define cpu_has_taa_no boot_cpu_has(X86_FEATURE_TAA_NO) +#define cpu_has_mcu_ctrl boot_cpu_has(X86_FEATURE_MCU_CTRL) #define cpu_has_fb_clear boot_cpu_has(X86_FEATURE_FB_CLEAR) #define cpu_has_rrsba boot_cpu_has(X86_FEATURE_RRSBA) diff --git a/xen/arch/x86/include/asm/msr-index.h b/xen/arch/x86/include/asm/msr-index.h index 2749e433d2..5c1350b5f9 100644 --- a/xen/arch/x86/include/asm/msr-index.h +++ b/xen/arch/x86/include/asm/msr-index.h @@ -165,6 +165,11 @@ #define PASID_PASID_MASK 0x000fffff #define PASID_VALID (_AC(1, ULL) << 31) +#define MSR_MCU_CONTROL 0x00001406 +#define MCU_CONTROL_LOCK (_AC(1, ULL) << 0) +#define MCU_CONTROL_DIS_MCU_LOAD (_AC(1, ULL) << 1) +#define MCU_CONTROL_EN_SMM_BYPASS (_AC(1, ULL) << 2) + #define MSR_UARCH_MISC_CTRL 0x00001b01 #define UARCH_CTRL_DOITM (_AC(1, ULL) << 0) -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 29 15:27:12 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 15:27:12 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556908.869781 (Exim 4.92) (envelope-from ) id 1qEtXz-0000pC-Pp; Thu, 29 Jun 2023 15:27:03 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556908.869781; Thu, 29 Jun 2023 15:27:03 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEtXz-0000p5-MY; Thu, 29 Jun 2023 15:27:03 +0000 Received: by outflank-mailman (input) for mailman id 556908; Thu, 29 Jun 2023 15:27:02 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEtXy-0000oz-LF for xen-devel@lists.xenproject.org; Thu, 29 Jun 2023 15:27:02 +0000 Received: from mail-ej1-x62e.google.com (mail-ej1-x62e.google.com [2a00:1450:4864:20::62e]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 649225a4-1691-11ee-b237-6b7b168915f2; Thu, 29 Jun 2023 17:27:00 +0200 (CEST) Received: by mail-ej1-x62e.google.com with SMTP id a640c23a62f3a-98377c5d53eso96441266b.0 for ; Thu, 29 Jun 2023 08:27:00 -0700 (PDT) Received: from localhost.localdomain (default-46-102-197-194.interdsl.co.uk. [46.102.197.194]) by smtp.gmail.com with ESMTPSA id v11-20020a170906564b00b00992c4103cb5sm307727ejr.129.2023.06.29.08.26.59 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 29 Jun 2023 08:27:00 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 649225a4-1691-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cloud.com; s=cloud; t=1688052420; x=1690644420; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=UiGulcFZszXEnWg5k92SUya80elYH7/hcO6zRbn6Dxs=; b=GB/HFta4uYcxg4dp/35Q9VmPzYqNQMLFv6wLOhRl1kM9K2zxWO9Pom55IGmswLsXPT 7ZhVGPStTU7403YJKkaAuwTW/JM5/YMpL/obPT0eFEyBFr4lScIPAqs/eLV795U0Mswy 9kCfZAkeVV0BQCuDVek2gdDG1C7ezuA9EgMZs= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1688052420; x=1690644420; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=UiGulcFZszXEnWg5k92SUya80elYH7/hcO6zRbn6Dxs=; b=FLRhYqbn11Na8jdd88jGZ9vbvaca/04PMiBBmrVPKX7ljwN5jDpNYqZh7WDZozTnQu XoqB7layJMQGkb8f91XUQTYU0HOcMmhRWtU56dHLekmD0mggWJ9AXPi0b+5l2nYi+2qi /5IOiiFtdZB0yFQ+pdNemRvuUuH4LoL7qRNM8tUKFV+NbJQMs/PidnB3TSOCTcQVa9ry D5QuQDGFqDYO7LsIWRP46Fy7ID8di4vhocDkc3eeUD88B/XQ4QOz6dyypnJt3FatNklO mAQhm2sDbUzkxb6avDONk6o2+1OyM0g1ZgF3dApMTekSsikzDstFcdzjwPJBtO6zmMTS ykhA== X-Gm-Message-State: AC+VfDzXQey24hmKsHbtBvFchzS7oFxUTqE1TlHnlYqRqcYUuUxYiahC NgM90eR2i5TPv8HazvoOryDkcjwj4b4rsWNkKrs= X-Google-Smtp-Source: ACHHUZ4dqt9NKSpwm7oWRf4SgxZ2HOnbWbRJTj2ORo+3vH0rGavSnlSwWzNbfIADfgOQUkICg9FoWw== X-Received: by 2002:a17:907:7603:b0:991:c566:979 with SMTP id jx3-20020a170907760300b00991c5660979mr8425263ejc.36.1688052420417; Thu, 29 Jun 2023 08:27:00 -0700 (PDT) From: Alejandro Vallejo To: Xen-devel Cc: Alejandro Vallejo , Jan Beulich , Andrew Cooper , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Wei Liu Subject: [PATCH v5 3/4] x86: Read MSR_ARCH_CAPS immediately after early_microcode_init() Date: Thu, 29 Jun 2023 16:26:55 +0100 Message-Id: <20230629152656.12655-4-alejandro.vallejo@cloud.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20230629152656.12655-1-alejandro.vallejo@cloud.com> References: <20230629152656.12655-1-alejandro.vallejo@cloud.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Move MSR_ARCH_CAPS read code from tsx_init() to early_cpu_init(). Because microcode updates might make them that MSR to appear/have different values we also must reload it after a microcode update in early_microcode_init(). Signed-off-by: Alejandro Vallejo --- v5: * Re-run early_cpu_init() after early_microcode_init() rather than reloading specific fields * Amended early_cpu_init() so it takes a `verbose` argument in order to skip printing the same information before and after early microcode updates --- xen/arch/x86/cpu/common.c | 23 +++++++++++++++-------- xen/arch/x86/cpu/microcode/core.c | 6 ++++++ xen/arch/x86/setup.c | 2 +- xen/arch/x86/tsx.c | 16 ++++------------ 4 files changed, 26 insertions(+), 21 deletions(-) diff --git a/xen/arch/x86/cpu/common.c b/xen/arch/x86/cpu/common.c index cfcdaace12..a1be0aa4bd 100644 --- a/xen/arch/x86/cpu/common.c +++ b/xen/arch/x86/cpu/common.c @@ -303,7 +303,7 @@ static inline u32 phys_pkg_id(u32 cpuid_apic, int index_msb) WARNING: this function is only called on the BP. Don't add code here that is supposed to run on all CPUs. */ -void __init early_cpu_init(void) +void __init early_cpu_init(bool verbose) { struct cpuinfo_x86 *c = &boot_cpu_data; u32 eax, ebx, ecx, edx; @@ -324,9 +324,10 @@ void __init early_cpu_init(void) case X86_VENDOR_SHANGHAI: this_cpu = &shanghai_cpu_dev; break; case X86_VENDOR_HYGON: this_cpu = &hygon_cpu_dev; break; default: - printk(XENLOG_ERR - "Unrecognised or unsupported CPU vendor '%.12s'\n", - c->x86_vendor_id); + if (verbose) + printk(XENLOG_ERR + "Unrecognised or unsupported CPU vendor '%.12s'\n", + c->x86_vendor_id); } cpuid(0x00000001, &eax, &ebx, &ecx, &edx); @@ -340,10 +341,11 @@ void __init early_cpu_init(void) c->x86_capability[FEATURESET_1d] = edx; c->x86_capability[FEATURESET_1c] = ecx; - printk(XENLOG_INFO - "CPU Vendor: %s, Family %u (%#x), Model %u (%#x), Stepping %u (raw %08x)\n", - x86_cpuid_vendor_to_str(c->x86_vendor), c->x86, c->x86, - c->x86_model, c->x86_model, c->x86_mask, eax); + if (verbose) + printk(XENLOG_INFO + "CPU Vendor: %s, Family %u (%#x), Model %u (%#x), Stepping %u (raw %08x)\n", + x86_cpuid_vendor_to_str(boot_cpu_data->x86_vendor), c->x86, c->x86, + c->x86_model, c->x86_model, c->x86_mask, eax); if (c->cpuid_level >= 7) { uint32_t max_subleaf; @@ -352,6 +354,11 @@ void __init early_cpu_init(void) &c->x86_capability[FEATURESET_7c0], &c->x86_capability[FEATURESET_7d0]); + if (test_bit(X86_FEATURE_ARCH_CAPS, c->x86_capability)) + rdmsr(MSR_ARCH_CAPABILITIES, + c->x86_capability[FEATURESET_m10Al], + c->x86_capability[FEATURESET_m10Ah]); + if (max_subleaf >= 1) cpuid_count(7, 1, &eax, &ebx, &ecx, &c->x86_capability[FEATURESET_7d1]); diff --git a/xen/arch/x86/cpu/microcode/core.c b/xen/arch/x86/cpu/microcode/core.c index b620e3bfa6..98a5aebfe3 100644 --- a/xen/arch/x86/cpu/microcode/core.c +++ b/xen/arch/x86/cpu/microcode/core.c @@ -886,5 +886,11 @@ int __init early_microcode_init(unsigned long *module_map, if ( ucode_mod.mod_end || ucode_blob.size ) rc = early_microcode_update_cpu(); + /* + * MSR_ARCH_CAPS may have appeared after the microcode update. Reload + * boot_cpu_data if so because they are needed in tsx_init(). + */ + early_cpu_init(false); + return rc; } diff --git a/xen/arch/x86/setup.c b/xen/arch/x86/setup.c index 74e3915a4d..bdf66e80ac 100644 --- a/xen/arch/x86/setup.c +++ b/xen/arch/x86/setup.c @@ -1211,7 +1211,7 @@ void __init noreturn __start_xen(unsigned long mbi_p) panic("Bootloader provided no memory information\n"); /* This must come before e820 code because it sets paddr_bits. */ - early_cpu_init(); + early_cpu_init(true); /* Choose shadow stack early, to set infrastructure up appropriately. */ if ( !boot_cpu_has(X86_FEATURE_CET_SS) ) diff --git a/xen/arch/x86/tsx.c b/xen/arch/x86/tsx.c index 80c6f4cedd..50d8059f23 100644 --- a/xen/arch/x86/tsx.c +++ b/xen/arch/x86/tsx.c @@ -39,9 +39,10 @@ void tsx_init(void) static bool __read_mostly once; /* - * This function is first called between microcode being loaded, and CPUID - * being scanned generally. Read into boot_cpu_data.x86_capability[] for - * the cpu_has_* bits we care about using here. + * This function is first called between microcode being loaded, and + * CPUID being scanned generally. early_cpu_init() has already prepared + * the feature bits needed here. And early_microcode_init() has ensured + * they are not stale after the microcode update. */ if ( unlikely(!once) ) { @@ -49,15 +50,6 @@ void tsx_init(void) once = true; - if ( boot_cpu_data.cpuid_level >= 7 ) - boot_cpu_data.x86_capability[FEATURESET_7d0] - = cpuid_count_edx(7, 0); - - if ( cpu_has_arch_caps ) - rdmsr(MSR_ARCH_CAPABILITIES, - boot_cpu_data.x86_capability[FEATURESET_m10Al], - boot_cpu_data.x86_capability[FEATURESET_m10Ah]); - has_rtm_always_abort = cpu_has_rtm_always_abort; if ( cpu_has_tsx_ctrl && cpu_has_srbds_ctrl ) -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 29 15:27:12 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 15:27:12 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556909.869792 (Exim 4.92) (envelope-from ) id 1qEtY1-00014K-5s; Thu, 29 Jun 2023 15:27:05 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556909.869792; Thu, 29 Jun 2023 15:27:05 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEtY1-00014D-0L; Thu, 29 Jun 2023 15:27:05 +0000 Received: by outflank-mailman (input) for mailman id 556909; Thu, 29 Jun 2023 15:27:04 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEtY0-0000oy-0d for xen-devel@lists.xenproject.org; Thu, 29 Jun 2023 15:27:04 +0000 Received: from mail-ej1-x62b.google.com (mail-ej1-x62b.google.com [2a00:1450:4864:20::62b]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 63795e92-1691-11ee-8611-37d641c3527e; Thu, 29 Jun 2023 17:26:59 +0200 (CEST) Received: by mail-ej1-x62b.google.com with SMTP id a640c23a62f3a-98e25fa6f5bso104366166b.3 for ; Thu, 29 Jun 2023 08:26:59 -0700 (PDT) Received: from localhost.localdomain (default-46-102-197-194.interdsl.co.uk. [46.102.197.194]) by smtp.gmail.com with ESMTPSA id v11-20020a170906564b00b00992c4103cb5sm307727ejr.129.2023.06.29.08.26.57 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 29 Jun 2023 08:26:58 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 63795e92-1691-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cloud.com; s=cloud; t=1688052418; x=1690644418; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=l6KfuSFi0sd3KAdUkh7aqTuNtWs7UyItOcyC31/eBJQ=; b=YXk8puFQMQt0SZdpYEw5mpye/r3qGrrkX0euwAguHNOHDnBDGgbHIR64wDSWCyossB 8AQqz87aCbKJS86uG2WMplMB6bT8SpqnRMBnbm9SXumJ9SJLpcDF6bU7NdJT8DjSMO0h egXoSZEOMSNFDuk1u2ao+ZEXIKCTL+5sYeVL8= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1688052418; x=1690644418; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=l6KfuSFi0sd3KAdUkh7aqTuNtWs7UyItOcyC31/eBJQ=; b=Vxm8DbKW5XNM7IPiP1Kab04KPd64osQsPoVpH6pM0ylbJ+CwhqnDaNZ8Uguy0N8d9b i0EXPfZNhY4fw/qUw/8+i1/OfmxsNDxvcya/y3gdE9sidtyQZl0tD2PkoVqgTKusSj73 xgCfKAYqYFA9oWLjaVfDEmzgRvr5RzjN1BbpaCfiQBeFaeKfsChTC5zK9J2A+u6Rdz5L 443BIroQ/0OMsz5bMgGkhihO4moK0y71v3wXSk3J21OYBVGnWiI7Y22IBVD+FRzOVeOH EymrZApaD7XH+1Tp63cgzvT2HpNnjd6ZgrBOYVB1jcOkk4KzRW6c/Jsn+q9QOsXXmh/Q eoLA== X-Gm-Message-State: AC+VfDzvWXkGi4lMPYao3frEDHIprQy4LzCLjBE1i3PleKgZe6ph69w3 G2bkvoojmrm8t6O4uErt4OuxZf68Y8wGqNZ5yBc= X-Google-Smtp-Source: ACHHUZ6s3CcOimOib4442RrBY2i+e6XzMZuIKN8VvNZ5RJ0UzKLVVBZYtaZJklh8XUbshnwQ/xTxRA== X-Received: by 2002:a17:907:708:b0:97b:956f:e6b5 with SMTP id xb8-20020a170907070800b0097b956fe6b5mr35221272ejb.23.1688052418353; Thu, 29 Jun 2023 08:26:58 -0700 (PDT) From: Alejandro Vallejo To: Xen-devel Cc: Alejandro Vallejo , Jan Beulich , Andrew Cooper , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Wei Liu Subject: [PATCH v5 0/4] Prevent attempting updates known to fail Date: Thu, 29 Jun 2023 16:26:52 +0100 Message-Id: <20230629152656.12655-1-alejandro.vallejo@cloud.com> X-Mailer: git-send-email 2.34.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Under certain conditions a CPU may not be able to perform microcode updates even if hardware exists to that effect. In particular: * If Xen runs under certain hypervisors they won't allow microcode updates, and will signal this fact by reporting a microcode revision of -1. * If the DIS_MCU_LOAD bit is set, which is expected in some baremetal clouds where the owner may not trust the tenant, then the CPU is not capable of loading new microcode. This series adds logic so that in both of these cases we don't needlessly attempt updates that are not going to succeed. Patch summary: Patch 1 Introduces the logic to print the microcode revision if at all possible Patch 2 Ignores microcode facilities when the current microcode revision is -1 Patch 3 Moves the MSR_ARCH_CAPS read in tsx_init() to early_cpu_init() and early_microcode_init() Patch 4 Adds the logic to detect microcode updates being disabled on Intel. Alejandro Vallejo (4): x86/microcode: Allow reading microcode revision even if it can't be updated x86/microcode: Ignore microcode loading interface for revision = -1 x86: Read MSR_ARCH_CAPS immediately after early_microcode_init() x86/microcode: Disable microcode update handler if DIS_MCU_UPDATE is set xen/arch/x86/cpu/common.c | 23 ++++++++++++------ xen/arch/x86/cpu/microcode/core.c | 35 ++++++++++++++++++++++----- xen/arch/x86/cpu/microcode/intel.c | 13 ++++++++++ xen/arch/x86/cpu/microcode/private.h | 7 ++++++ xen/arch/x86/include/asm/cpufeature.h | 1 + xen/arch/x86/include/asm/msr-index.h | 5 ++++ xen/arch/x86/setup.c | 2 +- xen/arch/x86/tsx.c | 16 +++--------- 8 files changed, 75 insertions(+), 27 deletions(-) -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 29 15:27:12 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 15:27:12 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556910.869801 (Exim 4.92) (envelope-from ) id 1qEtY2-0001JK-Bv; Thu, 29 Jun 2023 15:27:06 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556910.869801; Thu, 29 Jun 2023 15:27:06 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEtY2-0001JC-88; Thu, 29 Jun 2023 15:27:06 +0000 Received: by outflank-mailman (input) for mailman id 556910; Thu, 29 Jun 2023 15:27:04 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEtY0-0000oy-7V for xen-devel@lists.xenproject.org; Thu, 29 Jun 2023 15:27:04 +0000 Received: from mail-ej1-x62d.google.com (mail-ej1-x62d.google.com [2a00:1450:4864:20::62d]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 63d5655e-1691-11ee-8611-37d641c3527e; Thu, 29 Jun 2023 17:26:59 +0200 (CEST) Received: by mail-ej1-x62d.google.com with SMTP id a640c23a62f3a-991f956fb5aso90980366b.0 for ; Thu, 29 Jun 2023 08:26:59 -0700 (PDT) Received: from localhost.localdomain (default-46-102-197-194.interdsl.co.uk. [46.102.197.194]) by smtp.gmail.com with ESMTPSA id v11-20020a170906564b00b00992c4103cb5sm307727ejr.129.2023.06.29.08.26.58 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 29 Jun 2023 08:26:59 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 63d5655e-1691-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cloud.com; s=cloud; t=1688052419; x=1690644419; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=3EWwSePGbgOG6UY76hDXOxd7acKLKdGC7PoIoBrzZDo=; b=JlSEVxkZwiGyQiUexPBvtX53E+gwluHtldrfzFeXh/3nHThOh/coT5DSmpfZuQC5o+ 6E6meTDvO7+6fFBxtWDT3OSXAzx0SzyiKNpboFjciaN0y/F9XRgE3NO0L7mUOgw02ej8 vHhTCOtPKb4CpxAx9pRLMd/5FrgxLwsgqzW9E= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1688052419; x=1690644419; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=3EWwSePGbgOG6UY76hDXOxd7acKLKdGC7PoIoBrzZDo=; b=eggLBw0Y8tS/ondSSeaOOPMqrus8S7S0+TQBbTKWMKkfLcNu5NHPKV7WxIYCDHllfJ 4aXJezLsZcU00jyoKSb+96enooNw4/P6bvgVuUbiXVcqnKXUTiqa8j6a+8Y90zLSVX1g IqOAYODFVeeX/BQWCDEXU/g/wszqPBK3drKHulKWtigLL4j36KfylOyN0knYZ+vxACcc 3zNu8DKN9yeyc8qRdT9AoQgxc8sOSYhIQxOSi6TOD/sWjThsu4/T4okDcDHuGMtrJ6jI 8r/dzyg6FjEGs6tX5hjDy7NXR5+DHjiE6Kx5KJJc0VVHZSvWYBrWsdweWKoFt2L+159u rHEQ== X-Gm-Message-State: AC+VfDzArszms/4scbX8r8GI6MaOh5YEV0xbKc3JjTOUimaqCW9dFQ1I ik+aRJhMfFWh3+uAlwS/TGqzS4XJFFZN5rUlncY= X-Google-Smtp-Source: ACHHUZ4Ovlt5oS29GhdsnB2LHodJwMHMIoAaON3wMB8LDLBOql7BWiGNIREyPpS4qm8jlLUeH7y3Ag== X-Received: by 2002:a17:907:980e:b0:992:33ba:2eb4 with SMTP id ji14-20020a170907980e00b0099233ba2eb4mr6354747ejc.71.1688052419215; Thu, 29 Jun 2023 08:26:59 -0700 (PDT) From: Alejandro Vallejo To: Xen-devel Cc: Alejandro Vallejo , Jan Beulich , Andrew Cooper , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Wei Liu Subject: [PATCH v5 1/4] x86/microcode: Allow reading microcode revision even if it can't be updated Date: Thu, 29 Jun 2023 16:26:53 +0100 Message-Id: <20230629152656.12655-2-alejandro.vallejo@cloud.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20230629152656.12655-1-alejandro.vallejo@cloud.com> References: <20230629152656.12655-1-alejandro.vallejo@cloud.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit microcode_update_one() currently assumes all microcode handlers are set or none are. That won't be the case in a future patch, as apply_microcode() may not be set while the others are. Hence, this patch allows reading the microcode revision even if updating it is unavailable. Signed-off-by: Alejandro Vallejo Reviewed-by: Jan Beulich --- xen/arch/x86/cpu/microcode/core.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/xen/arch/x86/cpu/microcode/core.c b/xen/arch/x86/cpu/microcode/core.c index c3fee62906..bec8b55db2 100644 --- a/xen/arch/x86/cpu/microcode/core.c +++ b/xen/arch/x86/cpu/microcode/core.c @@ -750,11 +750,12 @@ __initcall(microcode_init); /* Load a cached update to current cpu */ int microcode_update_one(void) { + if ( ucode_ops.collect_cpu_info ) + alternative_vcall(ucode_ops.collect_cpu_info); + if ( !ucode_ops.apply_microcode ) return -EOPNOTSUPP; - alternative_vcall(ucode_ops.collect_cpu_info); - return microcode_update_cpu(NULL); } -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 29 15:37:15 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 15:37:15 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556928.869831 (Exim 4.92) (envelope-from ) id 1qEthb-0004cT-Tx; Thu, 29 Jun 2023 15:36:59 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556928.869831; Thu, 29 Jun 2023 15:36:59 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEthb-0004cM-R3; Thu, 29 Jun 2023 15:36:59 +0000 Received: by outflank-mailman (input) for mailman id 556928; Thu, 29 Jun 2023 15:36:59 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEtha-0004cG-UN for xen-devel@lists.xenproject.org; Thu, 29 Jun 2023 15:36:58 +0000 Received: from mail-lj1-x236.google.com (mail-lj1-x236.google.com [2a00:1450:4864:20::236]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id c87c60d9-1692-11ee-b237-6b7b168915f2; Thu, 29 Jun 2023 17:36:58 +0200 (CEST) Received: by mail-lj1-x236.google.com with SMTP id 38308e7fff4ca-2b69ed7d050so12822111fa.2 for ; Thu, 29 Jun 2023 08:36:58 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: c87c60d9-1692-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cloud.com; s=cloud; t=1688053017; x=1690645017; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=dof83Fv4i0vfWq58FQd3aWC+Ttb5ONZ/LOADV8F3Ncg=; b=WmMYhmaHNqL0IrwnhJ9ygyPf2RrTMZdzd/xNIu6dV2sUBUQhL8mFUZHxUaFOHlvRgs 4lcoxgXUoLNwfLFnhm1ndyy5FbkO1X727wEyvkxll4F/driiqPYJsVdgt5gSYNDfWn09 vTSB/T/8vfRPF0mWLnY6Hw5GZ3Ex/NkfvyRBg= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1688053017; x=1690645017; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=dof83Fv4i0vfWq58FQd3aWC+Ttb5ONZ/LOADV8F3Ncg=; b=GbIm4tcK06olE7Lf5k57OKTTiE8l4JocfmbSgH/zrFG0PkT1m9cCkTEkSV4dk28F2M Bi61Zi7n0QvIOTClMUoOkHbxCzrJKBeYUHJZzd0Zum0QO+CIFAVG975KVh57BPRDFOJx KK4FXko1HqrRf5q7tDfgJs+ANsYv1/UCeaD5bFXOepSiD3V1mMOkn4A4xvB7Eo6F3HGX DrAj9TZMrbDyiNgk5VQSThbKFPBYOREbNaVCaeO7GLwlrwcDdDHSV3hmQhEWowg6VGTv qTb0onj908pM5tQzkKzkOGRksott9EB6AFGFV1aHynt2+vDGWH1lVqu0JTwClS5VhrYl zOdw== X-Gm-Message-State: ABy/qLbTEK5t138gWQ9GKkiVa0f07h4A5Qej5aQE6PxrqaNXQX7iJAzT qNan6IerGC3bkd60pZFn5ZBrTTc8tt+O3zFwzv6WUn7iQg+QfsxOVG8= X-Google-Smtp-Source: APBJJlGqj85X+kf66Ke3SZ9XUCVOCXRWiKkvNrahDeeSlp1FNaGrrtJomGmG5liZbNdFD20+cj5sd483LB2pu/U1jFA= X-Received: by 2002:a05:6512:2815:b0:4fb:893e:8ffc with SMTP id cf21-20020a056512281500b004fb893e8ffcmr301167lfb.17.1688053017359; Thu, 29 Jun 2023 08:36:57 -0700 (PDT) MIME-Version: 1.0 References: <20230629121713.1211-1-alejandro.vallejo@cloud.com> In-Reply-To: <20230629121713.1211-1-alejandro.vallejo@cloud.com> From: Alejandro Vallejo Date: Thu, 29 Jun 2023 16:36:46 +0100 Message-ID: Subject: Re: [PATCH v3 0/3] Introduce a REQUIRE_NX Kconfig option To: Xen-devel Cc: Wei Liu , Anthony PERARD , Juergen Gross , Jan Beulich , Andrew Cooper , Roger Pau Monne Content-Type: multipart/alternative; boundary="000000000000764f6805ff4678d3" --000000000000764f6805ff4678d3 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Thu, Jun 29, 2023 at 1:17=E2=80=AFPM Alejandro Vallejo < alejandro.vallejo@cloud.com> wrote: > v3: > * Fixed a Gitlab CI breakage on older toolchains (patch 1) > * Removed XD_DISABLE override logic from cpu/intel.c > * Various style fixes to patch 2 (from Andrew's feedback) > > This option hardens Xen by forcing it to write secure (NX-enhanced) PTEs > regardless of the runtime NX feature bit in boot_cpu_data. This prevents = an > attacker with partial write support from affecting Xen's PTE generation > logic by overriding the NX feature flag. The patch asserts support for th= e > NX bit in PTEs at boot time and if so short-circuits the cpu_has_nx macro > to 1. > > Alejandro Vallejo (3): > tools: Add __AC() macro to common-macros.h > x86/boot: Clear XD_DISABLE from the early boot path > x86: Add Kconfig option to require NX bit support > > tools/include/xen-tools/common-macros.h | 3 ++ > tools/libs/light/libxl_internal.h | 2 - > tools/tests/x86_emulator/x86-emulate.h | 3 -- > xen/arch/x86/Kconfig | 16 +++++++ > xen/arch/x86/boot/head.S | 62 ++++++++++++++++++++++--- > xen/arch/x86/boot/trampoline.S | 3 +- > xen/arch/x86/cpu/intel.c | 16 +++---- > xen/arch/x86/efi/efi-boot.h | 9 ++++ > xen/arch/x86/include/asm/cpufeature.h | 3 +- > xen/arch/x86/include/asm/msr-index.h | 2 +- > xen/arch/x86/include/asm/x86-vendors.h | 6 +-- > 11 files changed, 98 insertions(+), 27 deletions(-) > > -- > 2.34.1 > > Adding CCs here because I forgot to run the add_maintainers.pl script before sending. Ugh... Alejandro --000000000000764f6805ff4678d3 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
On Thu, Jun 29, 2023 at 1:17=E2=80=AFPM A= lejandro Vallejo <alejand= ro.vallejo@cloud.com> wrote:
v3:
=C2=A0 * Fixed a Gitlab CI breakage on older toolchains (patch 1)
=C2=A0 * Removed XD_DISABLE override logic from cpu/intel.c
=C2=A0 * Various style fixes to patch 2 (from Andrew's feedback)

This option hardens Xen by forcing it to write secure (NX-enhanced) PTEs regardless of the runtime NX feature bit in boot_cpu_data. This prevents an=
attacker with partial write support from affecting Xen's PTE generation=
logic by overriding the NX feature flag. The patch asserts support for the<= br> NX bit in PTEs at boot time and if so short-circuits the cpu_has_nx macro to 1.

Alejandro Vallejo (3):
=C2=A0 tools: Add __AC() macro to common-macros.h
=C2=A0 x86/boot: Clear XD_DISABLE from the early boot path
=C2=A0 x86: Add Kconfig option to require NX bit support

=C2=A0tools/include/xen-tools/common-macros.h |=C2=A0 3 ++
=C2=A0tools/libs/light/libxl_internal.h=C2=A0 =C2=A0 =C2=A0 =C2=A0|=C2=A0 2= -
=C2=A0tools/tests/x86_emulator/x86-emulate.h=C2=A0 |=C2=A0 3 --
=C2=A0xen/arch/x86/Kconfig=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 =C2=A0 | 16 +++++++
=C2=A0xen/arch/x86/boot/head.S=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 | 62 ++++++++++++++++++++++---
=C2=A0xen/arch/x86/boot/trampoline.S=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 |=C2= =A0 3 +-
=C2=A0xen/arch/x86/cpu/intel.c=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 | 16 +++----
=C2=A0xen/arch/x86/efi/efi-boot.h=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0|=C2=A0 9 ++++
=C2=A0xen/arch/x86/include/asm/cpufeature.h=C2=A0 =C2=A0|=C2=A0 3 +-
=C2=A0xen/arch/x86/include/asm/msr-index.h=C2=A0 =C2=A0 |=C2=A0 2 +-
=C2=A0xen/arch/x86/include/asm/x86-vendors.h=C2=A0 |=C2=A0 6 +--
=C2=A011 files changed, 98 insertions(+), 27 deletions(-)

--
2.34.1

Adding CCs here because I forgot to run the add_maintainers.pl script
before sending. Ug= h...

Alejandro=C2=A0
--000000000000764f6805ff4678d3-- From xen-devel-bounces@lists.xenproject.org Thu Jun 29 15:46:51 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 15:46:51 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556934.869840 (Exim 4.92) (envelope-from ) id 1qEtr3-0006Ae-U2; Thu, 29 Jun 2023 15:46:45 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556934.869840; Thu, 29 Jun 2023 15:46:45 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEtr3-0006AX-RI; Thu, 29 Jun 2023 15:46:45 +0000 Received: by outflank-mailman (input) for mailman id 556934; Thu, 29 Jun 2023 15:46:43 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEtr1-0006AR-RJ for xen-devel@lists.xenproject.org; Thu, 29 Jun 2023 15:46:43 +0000 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by se1-gles-flk1.inumbo.com (Halon) with ESMTP id 236fdc9e-1694-11ee-8611-37d641c3527e; Thu, 29 Jun 2023 17:46:40 +0200 (CEST) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 6866DC14; Thu, 29 Jun 2023 08:47:23 -0700 (PDT) Received: from e109506.cambridge.arm.com (e109506.cambridge.arm.com [10.1.199.62]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 769FB3F64C; Thu, 29 Jun 2023 08:46:38 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 236fdc9e-1694-11ee-8611-37d641c3527e From: Rahul Singh To: xen-devel@lists.xenproject.org, linux-kernel@vger.kernel.org Cc: rahul.singh@arm.com, Juergen Gross , Stefano Stabellini , Oleksandr Tyshchenko , Samuel Holland , David Woodhouse , Jane Malalane Subject: [PATCH v2] xen/evtchn: Introduce new IOCTL to bind static evtchn Date: Thu, 29 Jun 2023 16:46:18 +0100 Message-Id: <764d561e3aecb7e63e8601dc50aaef9fc40834e4.1688051342.git.rahul.singh@arm.com> X-Mailer: git-send-email 2.25.1 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Xen 4.17 supports the creation of static evtchns. To allow user space application to bind static evtchns introduce new ioctl "IOCTL_EVTCHN_BIND_STATIC". Existing IOCTL doing more than binding that’s why we need to introduce the new IOCTL to only bind the static event channels. Also, static evtchns to be available for use during the lifetime of the guest. When the application exits, __unbind_from_irq() ends up being called from release() file operations because of that static evtchns are getting closed. To avoid closing the static event channel, add the new bool variable "is_static" in "struct irq_info" to mark the event channel static when creating the event channel to avoid closing the static evtchn. Signed-off-by: Rahul Singh --- v2: * Use bool in place u8 to define is_static variable. * Avoid closing the static evtchns in error path. --- drivers/xen/events/events_base.c | 7 +++++-- drivers/xen/evtchn.c | 30 ++++++++++++++++++++++-------- include/uapi/xen/evtchn.h | 9 +++++++++ include/xen/events.h | 2 +- 4 files changed, 37 insertions(+), 11 deletions(-) diff --git a/drivers/xen/events/events_base.c b/drivers/xen/events/events_base.c index c7715f8bd452..5d3b5c7cfe64 100644 --- a/drivers/xen/events/events_base.c +++ b/drivers/xen/events/events_base.c @@ -112,6 +112,7 @@ struct irq_info { unsigned int irq_epoch; /* If eoi_cpu valid: irq_epoch of event */ u64 eoi_time; /* Time in jiffies when to EOI. */ raw_spinlock_t lock; + bool is_static; /* Is event channel static */ union { unsigned short virq; @@ -982,7 +983,8 @@ static void __unbind_from_irq(unsigned int irq) unsigned int cpu = cpu_from_irq(irq); struct xenbus_device *dev; - xen_evtchn_close(evtchn); + if (!info->is_static) + xen_evtchn_close(evtchn); switch (type_from_irq(irq)) { case IRQT_VIRQ: @@ -1574,7 +1576,7 @@ int xen_set_irq_priority(unsigned irq, unsigned priority) } EXPORT_SYMBOL_GPL(xen_set_irq_priority); -int evtchn_make_refcounted(evtchn_port_t evtchn) +int evtchn_make_refcounted(evtchn_port_t evtchn, bool is_static) { int irq = get_evtchn_to_irq(evtchn); struct irq_info *info; @@ -1590,6 +1592,7 @@ int evtchn_make_refcounted(evtchn_port_t evtchn) WARN_ON(info->refcnt != -1); info->refcnt = 1; + info->is_static = is_static; return 0; } diff --git a/drivers/xen/evtchn.c b/drivers/xen/evtchn.c index c99415a70051..e6d2303478b2 100644 --- a/drivers/xen/evtchn.c +++ b/drivers/xen/evtchn.c @@ -366,7 +366,8 @@ static int evtchn_resize_ring(struct per_user_data *u) return 0; } -static int evtchn_bind_to_user(struct per_user_data *u, evtchn_port_t port) +static int evtchn_bind_to_user(struct per_user_data *u, evtchn_port_t port, + bool is_static) { struct user_evtchn *evtchn; struct evtchn_close close; @@ -402,14 +403,16 @@ static int evtchn_bind_to_user(struct per_user_data *u, evtchn_port_t port) if (rc < 0) goto err; - rc = evtchn_make_refcounted(port); + rc = evtchn_make_refcounted(port, is_static); return rc; err: /* bind failed, should close the port now */ - close.port = port; - if (HYPERVISOR_event_channel_op(EVTCHNOP_close, &close) != 0) - BUG(); + if (!is_static) { + close.port = port; + if (HYPERVISOR_event_channel_op(EVTCHNOP_close, &close) != 0) + BUG(); + } del_evtchn(u, evtchn); return rc; } @@ -456,7 +459,7 @@ static long evtchn_ioctl(struct file *file, if (rc != 0) break; - rc = evtchn_bind_to_user(u, bind_virq.port); + rc = evtchn_bind_to_user(u, bind_virq.port, false); if (rc == 0) rc = bind_virq.port; break; @@ -482,7 +485,7 @@ static long evtchn_ioctl(struct file *file, if (rc != 0) break; - rc = evtchn_bind_to_user(u, bind_interdomain.local_port); + rc = evtchn_bind_to_user(u, bind_interdomain.local_port, false); if (rc == 0) rc = bind_interdomain.local_port; break; @@ -507,7 +510,7 @@ static long evtchn_ioctl(struct file *file, if (rc != 0) break; - rc = evtchn_bind_to_user(u, alloc_unbound.port); + rc = evtchn_bind_to_user(u, alloc_unbound.port, false); if (rc == 0) rc = alloc_unbound.port; break; @@ -536,6 +539,17 @@ static long evtchn_ioctl(struct file *file, break; } + case IOCTL_EVTCHN_BIND_STATIC: { + struct ioctl_evtchn_bind bind; + + rc = -EFAULT; + if (copy_from_user(&bind, uarg, sizeof(bind))) + break; + + rc = evtchn_bind_to_user(u, bind.port, true); + break; + } + case IOCTL_EVTCHN_NOTIFY: { struct ioctl_evtchn_notify notify; struct user_evtchn *evtchn; diff --git a/include/uapi/xen/evtchn.h b/include/uapi/xen/evtchn.h index 7fbf732f168f..aef2b75f3413 100644 --- a/include/uapi/xen/evtchn.h +++ b/include/uapi/xen/evtchn.h @@ -101,4 +101,13 @@ struct ioctl_evtchn_restrict_domid { domid_t domid; }; +/* + * Bind statically allocated @port. + */ +#define IOCTL_EVTCHN_BIND_STATIC \ + _IOC(_IOC_NONE, 'E', 7, sizeof(struct ioctl_evtchn_bind)) +struct ioctl_evtchn_bind { + unsigned int port; +}; + #endif /* __LINUX_PUBLIC_EVTCHN_H__ */ diff --git a/include/xen/events.h b/include/xen/events.h index ac1281c5ead6..377ad7e391e8 100644 --- a/include/xen/events.h +++ b/include/xen/events.h @@ -69,7 +69,7 @@ int xen_set_irq_priority(unsigned irq, unsigned priority); /* * Allow extra references to event channels exposed to userspace by evtchn */ -int evtchn_make_refcounted(evtchn_port_t evtchn); +int evtchn_make_refcounted(evtchn_port_t evtchn, bool is_static); int evtchn_get(evtchn_port_t evtchn); void evtchn_put(evtchn_port_t evtchn); base-commit: 3a8a670eeeaa40d87bd38a587438952741980c18 -- 2.25.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 29 15:46:51 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 15:46:51 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556935.869851 (Exim 4.92) (envelope-from ) id 1qEtr9-0006Px-4U; Thu, 29 Jun 2023 15:46:51 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556935.869851; Thu, 29 Jun 2023 15:46:51 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEtr9-0006Pq-1O; Thu, 29 Jun 2023 15:46:51 +0000 Received: by outflank-mailman (input) for mailman id 556935; Thu, 29 Jun 2023 15:46:49 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEtr7-0006AR-Qv for xen-devel@lists.xenproject.org; Thu, 29 Jun 2023 15:46:49 +0000 Received: from mail-wm1-x330.google.com (mail-wm1-x330.google.com [2a00:1450:4864:20::330]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 282067ab-1694-11ee-8611-37d641c3527e; Thu, 29 Jun 2023 17:46:48 +0200 (CEST) Received: by mail-wm1-x330.google.com with SMTP id 5b1f17b1804b1-3fbc0981755so5162085e9.1 for ; Thu, 29 Jun 2023 08:46:48 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 282067ab-1694-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cloud.com; s=cloud; t=1688053607; x=1690645607; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=qcptGNYXouZ6DvI4j4ewjdDkrCqSPX19A4IN3FJBXl8=; b=YfY/9x6/Ta6bmAXA/kUn47fyY++rIUVif6tw5sHHAGul4+wy/GghxsfrmttFtxwVUi 3ar0hUb4UCfLoQuooGY+sRTdr0faysFpkAwfA/I8V1MyfUqzhX9HjA0KQBcfYCNE4Pei k15Mh6JIzJTWgh/SQjLubm5kHx0Qw6ViBC01E= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1688053607; x=1690645607; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=qcptGNYXouZ6DvI4j4ewjdDkrCqSPX19A4IN3FJBXl8=; b=NcVJyWGRdTv+jNCsCfQYgcPue1A+mQxq0RUYwpgTw4U781brj0J9ZFxSpO5iCFdVZE 6vUj20A7POK5RoHaj0ZWlDUdre0qGXSti6isXgBhT2tVIvT1H6dIgCggoDAUN2cPbAkx jWi6ChDHBN3bdaGbUpYSmvKkEmBpgd6yXB3x0Klz+5ZIWQa8u1RIZ4MD5Jdgg4zQF17R eyOslPCNPmFrQFOYjmyD8gzdP62wjU/ph7VKc9EesnOukZzvmMuBK8PtPd+LLizecdZB nilEFAPI0BNe74q/fPmLGCydVV6afc2QsLdTwVMAC7Gkw4QosmBydd8KkIBiCJitVNvk WRAQ== X-Gm-Message-State: AC+VfDyKYfbFPe5xQd+XGWuEdRAxOHgszTpfgO7YI2Duiw2thJRAPTqv +vUDsE4CaHs1fBDhW7V2t0YtWu6TW2prVykM041GjPaD6sNlqc+n X-Google-Smtp-Source: ACHHUZ5+SRckBx33Rfc1gFu90iDK1UxCOlYPwBm0poWH2pPQ/B03yNEU+k46ES6ii48CYNSO/oZYpmwRsCQq+gb7x1I= X-Received: by 2002:a7b:c392:0:b0:3fa:8fb1:50fe with SMTP id s18-20020a7bc392000000b003fa8fb150femr10869666wmj.15.1688053607327; Thu, 29 Jun 2023 08:46:47 -0700 (PDT) MIME-Version: 1.0 References: <20230629121713.1211-1-alejandro.vallejo@cloud.com> <20230629121713.1211-2-alejandro.vallejo@cloud.com> In-Reply-To: <20230629121713.1211-2-alejandro.vallejo@cloud.com> From: Alejandro Vallejo Date: Thu, 29 Jun 2023 16:46:37 +0100 Message-ID: Subject: Re: [PATCH v3 1/3] tools: Add __AC() macro to common-macros.h To: Xen-devel Cc: Wei Liu , Anthony PERARD , Juergen Gross , Jan Beulich , Andrew Cooper , Roger Pau Monne Content-Type: multipart/alternative; boundary="000000000000a07fe605ff469b68" --000000000000a07fe605ff469b68 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Thu, Jun 29, 2023 at 1:17=E2=80=AFPM Alejandro Vallejo < alejandro.vallejo@cloud.com> wrote: > Currently libxl and the x86-emulator tests carry their own versions. Fact= or > those out into the common macros header so every library can make use of > it. This is required so the following patch can add this macro to a heade= r > used both in Xen and tools/libs. > > No functional change. > > Signed-off-by: Alejandro Vallejo > --- > tools/include/xen-tools/common-macros.h | 3 +++ > tools/libs/light/libxl_internal.h | 2 -- > tools/tests/x86_emulator/x86-emulate.h | 3 --- > 3 files changed, 3 insertions(+), 5 deletions(-) > > diff --git a/tools/include/xen-tools/common-macros.h > b/tools/include/xen-tools/common-macros.h > index 168691be0e..6d7de1bc0a 100644 > --- a/tools/include/xen-tools/common-macros.h > +++ b/tools/include/xen-tools/common-macros.h > @@ -84,4 +84,7 @@ > (type *)((char *)mptr__ - offsetof(type, member)); \ > }) > > +#define __AC(X,Y) (X##Y) > +#define _AC(X,Y) __AC(X,Y) > + > #endif /* __XEN_TOOLS_COMMON_MACROS__ */ > diff --git a/tools/libs/light/libxl_internal.h > b/tools/libs/light/libxl_internal.h > index 61f4fe1dec..1cf3d400bf 100644 > --- a/tools/libs/light/libxl_internal.h > +++ b/tools/libs/light/libxl_internal.h > @@ -125,8 +125,6 @@ > #define PVSHIM_CMDLINE "pv-shim console=3Dxen,pv" > > /* Size macros. */ > -#define __AC(X,Y) (X##Y) > -#define _AC(X,Y) __AC(X,Y) > #define MB(_mb) (_AC(_mb, ULL) << 20) > #define GB(_gb) (_AC(_gb, ULL) << 30) > > diff --git a/tools/tests/x86_emulator/x86-emulate.h > b/tools/tests/x86_emulator/x86-emulate.h > index aa1ed75ec8..350d1a0abf 100644 > --- a/tools/tests/x86_emulator/x86-emulate.h > +++ b/tools/tests/x86_emulator/x86-emulate.h > @@ -59,9 +59,6 @@ > > #define cf_check /* No Control Flow Integriy checking */ > > -#define AC_(n,t) (n##t) > -#define _AC(n,t) AC_(n,t) > - > #ifdef __GCC_ASM_FLAG_OUTPUTS__ > # define ASM_FLAG_OUT(yes, no) yes > #else > -- > 2.34.1 > @mantainers --000000000000a07fe605ff469b68 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
On Thu, Jun 29, 2023 at 1:17=E2=80=AFPM A= lejandro Vallejo <alejand= ro.vallejo@cloud.com> wrote:
Currently libxl and the x86-= emulator tests carry their own versions. Factor
those out into the common macros header so every library can make use of it. This is required so the following patch can add this macro to a header<= br> used both in Xen and tools/libs.

No functional change.

Signed-off-by: Alejandro Vallejo <alejandro.vallejo@cloud.com>
---
=C2=A0tools/include/xen-tools/common-macros.h | 3 +++
=C2=A0tools/libs/light/libxl_internal.h=C2=A0 =C2=A0 =C2=A0 =C2=A0| 2 -- =C2=A0tools/tests/x86_emulator/x86-emulate.h=C2=A0 | 3 ---
=C2=A03 files changed, 3 insertions(+), 5 deletions(-)

diff --git a/tools/include/xen-tools/common-macros.h b/tools/include/xen-to= ols/common-macros.h
index 168691be0e..6d7de1bc0a 100644
--- a/tools/include/xen-tools/common-macros.h
+++ b/tools/include/xen-tools/common-macros.h
@@ -84,4 +84,7 @@
=C2=A0 =C2=A0 =C2=A0(type *)((char *)mptr__ - offsetof(type, member));=C2= =A0 \
=C2=A0})

+#define __AC(X,Y)=C2=A0 =C2=A0(X##Y)
+#define _AC(X,Y)=C2=A0 =C2=A0 __AC(X,Y)
+
=C2=A0#endif /* __XEN_TOOLS_COMMON_MACROS__ */
diff --git a/tools/libs/light/libxl_internal.h b/tools/libs/light/libxl_int= ernal.h
index 61f4fe1dec..1cf3d400bf 100644
--- a/tools/libs/light/libxl_internal.h
+++ b/tools/libs/light/libxl_internal.h
@@ -125,8 +125,6 @@
=C2=A0#define PVSHIM_CMDLINE "pv-shim console=3Dxen,pv"

=C2=A0/* Size macros. */
-#define __AC(X,Y)=C2=A0 =C2=A0(X##Y)
-#define _AC(X,Y)=C2=A0 =C2=A0 __AC(X,Y)
=C2=A0#define MB(_mb)=C2=A0 =C2=A0 =C2=A0(_AC(_mb, ULL) << 20)
=C2=A0#define GB(_gb)=C2=A0 =C2=A0 =C2=A0(_AC(_gb, ULL) << 30)

diff --git a/tools/tests/x86_emulator/x86-emulate.h b/tools/tests/x86_emula= tor/x86-emulate.h
index aa1ed75ec8..350d1a0abf 100644
--- a/tools/tests/x86_emulator/x86-emulate.h
+++ b/tools/tests/x86_emulator/x86-emulate.h
@@ -59,9 +59,6 @@

=C2=A0#define cf_check /* No Control Flow Integriy checking */

-#define AC_(n,t) (n##t)
-#define _AC(n,t) AC_(n,t)
-
=C2=A0#ifdef __GCC_ASM_FLAG_OUTPUTS__
=C2=A0# define ASM_FLAG_OUT(yes, no) yes
=C2=A0#else
--
2.34.1

--000000000000a07fe605ff469b68-- From xen-devel-bounces@lists.xenproject.org Thu Jun 29 15:47:00 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 15:47:00 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556936.869861 (Exim 4.92) (envelope-from ) id 1qEtrI-0006kt-D1; Thu, 29 Jun 2023 15:47:00 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556936.869861; Thu, 29 Jun 2023 15:47:00 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEtrI-0006ki-9P; Thu, 29 Jun 2023 15:47:00 +0000 Received: by outflank-mailman (input) for mailman id 556936; Thu, 29 Jun 2023 15:46:59 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEtrH-0006k3-DY for xen-devel@lists.xenproject.org; Thu, 29 Jun 2023 15:46:59 +0000 Received: from mail-lf1-x130.google.com (mail-lf1-x130.google.com [2a00:1450:4864:20::130]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 2e583e89-1694-11ee-b237-6b7b168915f2; Thu, 29 Jun 2023 17:46:58 +0200 (CEST) Received: by mail-lf1-x130.google.com with SMTP id 2adb3069b0e04-4f8735ac3e3so1295276e87.2 for ; Thu, 29 Jun 2023 08:46:58 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 2e583e89-1694-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cloud.com; s=cloud; t=1688053618; x=1690645618; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=Fzq6VRj5LfepL2ojzDdYju30gGf3FpiEsN7l64Dm3Hk=; b=ZSDnPD+UUKxnS9FC0lxId4Td+Pk6Id4jv2ooA0rcO0M/vNcU3frE/1oG4/ACM/CP0Q 08PnhXydq0taL9sG9QD039vhg1zyB+BtnruIEgla6krc7/q6dGg9D3Rl8qj8PfT6H/Rc GU+8euyyim2Q+NkYHoWjduexh+aPnhCqTcU9Y= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1688053618; x=1690645618; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=Fzq6VRj5LfepL2ojzDdYju30gGf3FpiEsN7l64Dm3Hk=; b=I1cZu8JgIH6DphNxn9BGFIbIXv65HepKpLoOFgIOU+4m829tJcAXycCR4Ec93jkjpE Pvp8nPq6Mc8D11eC5rdn4FsJXY15Gf8UvSlU3Nz1Wmm/zKMr7NiPCNhbCO+Mse8dch8l yYZavETAdzV4eV5cp6DeIy4zqpmJv+Q8Td1PmHlhBvslXw+LZlxrzWXCGJr6sGSNa8eq j2gKhi0RI86Z68rLOlx+kt0+6Yrbffvd5CoHLNkq8d7Nc9b0m5/1qltG74mdNG7eI3Ks XDkidzEAQyNGzKSpRdqsfv/9bEWEW3H7jKwUDR13fI5U0cOnDSFuEs+cbcfm6Y2y53a7 nypw== X-Gm-Message-State: ABy/qLaZEuzTNQsxgv2OwnU9KhjnfZMo0A8lW3C3OjtJ+3QyGG0dpboD ca3eiyvj6zt3gZRQ4jq4xrKj7u6RtrOldnBSDgtuSvvFXw9GKe0p X-Google-Smtp-Source: APBJJlFeD1ALMd9yd7/2V/XMsKiDeQ2ATZOYFhcjkOTQbAlW1JrR+aZYior/S9iRdt61yXzlzSYK6Nui4ka8MHRm5xg= X-Received: by 2002:a05:6512:3c81:b0:4fb:99d9:6ba2 with SMTP id h1-20020a0565123c8100b004fb99d96ba2mr350057lfv.24.1688053617758; Thu, 29 Jun 2023 08:46:57 -0700 (PDT) MIME-Version: 1.0 References: <20230629121713.1211-1-alejandro.vallejo@cloud.com> <20230629121713.1211-3-alejandro.vallejo@cloud.com> In-Reply-To: <20230629121713.1211-3-alejandro.vallejo@cloud.com> From: Alejandro Vallejo Date: Thu, 29 Jun 2023 16:46:47 +0100 Message-ID: Subject: Re: [PATCH v3 2/3] x86/boot: Clear XD_DISABLE from the early boot path To: Xen-devel Cc: Jan Beulich , Andrew Cooper , Roger Pau Monne Content-Type: multipart/alternative; boundary="0000000000003fa7e005ff469cf2" --0000000000003fa7e005ff469cf2 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Thu, Jun 29, 2023 at 1:17=E2=80=AFPM Alejandro Vallejo < alejandro.vallejo@cloud.com> wrote: > Intel CPUs have a bit in MSR_IA32_MISC_ENABLE that may prevent the NX bit > from being advertised. Clear it unconditionally if we can't find the NX > feature right away on boot. > > The conditions for the MSR being read on early boot are (in this order): > > * Long Mode is supported > * NX isn't advertised > * The vendor is Intel > > The order of checks has been chosen carefully so a virtualized Xen on a > hypervisor that doesn't emulate that MSR (but supports NX) doesn't triple > fault trying to access the non-existing MSR. > > With that done, we can remove the XD_DISABLE checks in the intel-specific > init path (as they are already done in early assembly). Keep a printk to > highlight the fact that NX was forcefully enabled. > > Signed-off-by: Alejandro Vallejo > --- > v3: > * In head.S: s/has_nx/got_nx and s/nx_bit/nx > * Style changes in assembly instructions (spaces + width modifiers) > * Big comment in head.S replaced > * Jump directly to .Lno_nx if NX not found and XD_DISABLE not present > * Restored rdmsrl (previously refactored into rdmsr_safe() in v2) and > removed XD_DISABLE clearing in C (as it's now done in head.S). > * Moved printk in intel.c to highlight the XD_DISABLE override even whe= n > done in head.S > --- > xen/arch/x86/boot/head.S | 49 ++++++++++++++++++++++---- > xen/arch/x86/cpu/intel.c | 16 ++++----- > xen/arch/x86/include/asm/msr-index.h | 2 +- > xen/arch/x86/include/asm/x86-vendors.h | 6 ++-- > 4 files changed, 53 insertions(+), 20 deletions(-) > @mantainers --0000000000003fa7e005ff469cf2 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
On Thu, Jun 29, 2023 at 1:17=E2=80=AFPM A= lejandro Vallejo <alejandro.vallejo@cloud.com> wrote:
Intel CP= Us have a bit in MSR_IA32_MISC_ENABLE that may prevent the NX bit
from being advertised. Clear it unconditionally if we can't find the NX=
feature right away on boot.

The conditions for the MSR being read on early boot are (in this order):
* Long Mode is supported
* NX isn't advertised
* The vendor is Intel

The order of checks has been chosen carefully so a virtualized Xen on a
hypervisor that doesn't emulate that MSR (but supports NX) doesn't = triple
fault trying to access the non-existing MSR.

With that done, we can remove the XD_DISABLE checks in the intel-specific init path (as they are already done in early assembly). Keep a printk to highlight the fact that NX was forcefully enabled.

Signed-off-by: Alejandro Vallejo <alejandro.vallejo@cloud.com>
---
v3:
=C2=A0 * In head.S: s/has_nx/got_nx and s/nx_bit/nx
=C2=A0 * Style changes in assembly instructions (spaces + width modifiers)<= br> =C2=A0 * Big comment in head.S replaced
=C2=A0 * Jump directly to .Lno_nx if NX not found and XD_DISABLE not presen= t
=C2=A0 * Restored rdmsrl (previously refactored into rdmsr_safe() in v2) an= d
=C2=A0 =C2=A0 removed XD_DISABLE clearing in C (as it's now done in hea= d.S).
=C2=A0 * Moved printk in intel.c to highlight the XD_DISABLE override even = when
=C2=A0 =C2=A0 done in head.S
---
=C2=A0xen/arch/x86/boot/head.S=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0| 49 ++++++++++++++++++++++----
=C2=A0xen/arch/x86/cpu/intel.c=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0| 16 ++++-----
=C2=A0xen/arch/x86/include/asm/msr-index.h=C2=A0 =C2=A0|=C2=A0 2 +-
=C2=A0xen/arch/x86/include/asm/x86-vendors.h |=C2=A0 6 ++--
=C2=A04 files changed, 53 insertions(+), 20 deletions(-)
=C2=A0
@mantainers
--0000000000003fa7e005ff469cf2-- From xen-devel-bounces@lists.xenproject.org Thu Jun 29 15:49:09 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 15:49:09 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556948.869871 (Exim 4.92) (envelope-from ) id 1qEttB-0007nI-QE; Thu, 29 Jun 2023 15:48:57 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556948.869871; Thu, 29 Jun 2023 15:48:57 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEttB-0007nB-N4; Thu, 29 Jun 2023 15:48:57 +0000 Received: by outflank-mailman (input) for mailman id 556948; Thu, 29 Jun 2023 15:48:56 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEtt9-0007n1-Um for xen-devel@lists.xenproject.org; Thu, 29 Jun 2023 15:48:55 +0000 Received: from mail-wm1-x32d.google.com (mail-wm1-x32d.google.com [2a00:1450:4864:20::32d]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 73cdc208-1694-11ee-b237-6b7b168915f2; Thu, 29 Jun 2023 17:48:55 +0200 (CEST) Received: by mail-wm1-x32d.google.com with SMTP id 5b1f17b1804b1-3fbac8b01b3so7098465e9.1 for ; Thu, 29 Jun 2023 08:48:55 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 73cdc208-1694-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cloud.com; s=cloud; t=1688053734; x=1690645734; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=jSdVjJpCmVpHY5/wQZSl5p+XU1biZd4tgXDVzzjLKaU=; b=IH+9sXOL0ufzC82KZ7hsvx05xCogL0W2VThecu8sB4eGYezjhIvSw0NWFvED9o6YwX 4wP46n0Rd4zz7dTVUEoQytUMzuoKjbGJIJ/VKO43nJGcJqstuPpGtj79zRCHSyQfHM2Z wmrTAJRJX1hewOlW2DHHLv96gERIUckvO3Hko= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1688053734; x=1690645734; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=jSdVjJpCmVpHY5/wQZSl5p+XU1biZd4tgXDVzzjLKaU=; b=dlXz5h+Z3MVRbySsNBx6wreunASgGcy3Fkk24ym3TFYDhs/folP8xLyy40d67pqni7 4f1TztvK4b3bsOpeZL1fErGV0HueyocpdAVXNQi9WuxCQ2LrJ7qLuUarldyK0IqTk4dL 5dq9bV/xPtKLkGfmlXU0/oDjoJh0c+jeyL6oNUOZp0SayiKsvpojeZOxYOj32aidnYqj FkbTNcE/iE0Cov5ZaO/go+yyKoWscDN5Qhi+QHj+gi3eTG08fTWtU5rql+7Yuisv0ruK Ym4GqZIbSR+DRA+WW6fM9zARivqxKbVZr7NzRtov0puBKScuIHugm0baWJEiV1n7zcAC mEGQ== X-Gm-Message-State: AC+VfDx5/4ZbOmAKRVJ0GrGZmw+tXfkYuaVRbyzTFOr2vKKrirOfizcx i7jwcbxAA0bKcIU0S5z5CR8ZzWPIUp5F2SDq5osVLIKKFZ9SZO2A X-Google-Smtp-Source: ACHHUZ7f+TCxycZlLeqK+gBTBRkUzdENQu3rKmP4nmkYnD9U6U5QV5bFY27XkunvZGAu+Rwel7idP8qLHIw0wdOyglA= X-Received: by 2002:adf:fd0b:0:b0:314:22b:7003 with SMTP id e11-20020adffd0b000000b00314022b7003mr5348932wrr.21.1688053734262; Thu, 29 Jun 2023 08:48:54 -0700 (PDT) MIME-Version: 1.0 References: <20230629121713.1211-1-alejandro.vallejo@cloud.com> <20230629121713.1211-4-alejandro.vallejo@cloud.com> In-Reply-To: <20230629121713.1211-4-alejandro.vallejo@cloud.com> From: Alejandro Vallejo Date: Thu, 29 Jun 2023 16:48:44 +0100 Message-ID: Subject: Re: [PATCH v3 3/3] x86: Add Kconfig option to require NX bit support To: Xen-devel Cc: Jan Beulich , Andrew Cooper , Roger Pau Monne , Wei Liu Content-Type: multipart/alternative; boundary="00000000000031608e05ff46a39d" --00000000000031608e05ff46a39d Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Thu, Jun 29, 2023 at 1:17=E2=80=AFPM Alejandro Vallejo < alejandro.vallejo@cloud.com> wrote: > This option hardens Xen by forcing it to write secure (NX-enhanced) PTEs > regardless of the runtime NX feature bit in boot_cpu_data. This prevents = an > attacker with partial write support from affecting Xen's PTE generation > logic by overriding the NX feature flag. The patch asserts support for th= e > NX bit in PTEs at boot time and if so short-circuits the cpu_has_nx macro > to 1. > > It has the nice benefit of replacing many instances of runtime checks wit= h > folded constants. This has several knock-on effects that improve codegen, > saving 2.5KiB off the text section. > > The config option defaults to OFF for compatibility with previous > behaviour. > > Signed-off-by: Alejandro Vallejo > Reviewed-by: Andrew Cooper > --- > xen/arch/x86/Kconfig | 16 ++++++++++++++++ > xen/arch/x86/boot/head.S | 15 ++++++++++++++- > xen/arch/x86/boot/trampoline.S | 3 ++- > xen/arch/x86/efi/efi-boot.h | 9 +++++++++ > xen/arch/x86/include/asm/cpufeature.h | 3 ++- > 5 files changed, 43 insertions(+), 3 deletions(-) > @mantainers --00000000000031608e05ff46a39d Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
On Thu, Jun 29, 2023 at 1:17=E2=80=AFPM A= lejandro Vallejo <alejand= ro.vallejo@cloud.com> wrote:
This option hardens Xen by f= orcing it to write secure (NX-enhanced) PTEs
regardless of the runtime NX feature bit in boot_cpu_data. This prevents an=
attacker with partial write support from affecting Xen's PTE generation=
logic by overriding the NX feature flag. The patch asserts support for the<= br> NX bit in PTEs at boot time and if so short-circuits the cpu_has_nx macro to 1.

It has the nice benefit of replacing many instances of runtime checks with<= br> folded constants. This has several knock-on effects that improve codegen, saving 2.5KiB off the text section.

The config option defaults to OFF for compatibility with previous
behaviour.

Signed-off-by: Alejandro Vallejo <alejandro.vallejo@cloud.com>
Reviewed-by: Andrew Cooper <andrew.cooper3@citrix.com>
---
=C2=A0xen/arch/x86/Kconfig=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 | 16 ++++++++++++++++
=C2=A0xen/arch/x86/boot/head.S=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 | 15 ++++++++++++++-
=C2=A0xen/arch/x86/boot/trampoline.S=C2=A0 =C2=A0 =C2=A0 =C2=A0 |=C2=A0 3 += +-
=C2=A0xen/arch/x86/efi/efi-boot.h=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0|= =C2=A0 9 +++++++++
=C2=A0xen/arch/x86/include/asm/cpufeature.h |=C2=A0 3 ++-
=C2=A05 files changed, 43 insertions(+), 3 deletions(-)

@mantainers= =C2=A0
--00000000000031608e05ff46a39d-- From xen-devel-bounces@lists.xenproject.org Thu Jun 29 15:56:03 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 15:56:03 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556957.869893 (Exim 4.92) (envelope-from ) id 1qEtzq-00018k-66; Thu, 29 Jun 2023 15:55:50 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556957.869893; Thu, 29 Jun 2023 15:55:50 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEtzq-00017U-0Y; Thu, 29 Jun 2023 15:55:50 +0000 Received: by outflank-mailman (input) for mailman id 556957; Thu, 29 Jun 2023 15:55:48 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEtzo-0000zX-Py for xen-devel@lists.xenproject.org; Thu, 29 Jun 2023 15:55:48 +0000 Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 69584591-1695-11ee-8611-37d641c3527e; Thu, 29 Jun 2023 17:55:47 +0200 (CEST) Received: from Dell.bugseng.com (unknown [37.160.192.186]) by support.bugseng.com (Postfix) with ESMTPSA id B88994EE073A; Thu, 29 Jun 2023 17:55:45 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 69584591-1695-11ee-8611-37d641c3527e From: Federico Serafini To: xen-devel@lists.xenproject.org Cc: consulting@bugseng.com, Federico Serafini , Jan Beulich , Andrew Cooper , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Wei Liu , Stefano Stabellini , Michal Orzel , Xenia Ragiadakou , Ayan Kumar Halder Subject: [XEN PATCH 1/5] x86: swap parameter names of hvm_copy_context_and_params() declaration Date: Thu, 29 Jun 2023 17:55:29 +0200 Message-Id: <441ddc3eb422c009d68db090166cfbc863d6c0b7.1688049495.git.federico.serafini@bugseng.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Swap parameter names 'src' and 'dst' of hvm_copy_context_and_params() declaration for consistency with the corresponding definition and the uses of such function. Also, this fixes a violation of MISRA C:2012 Rule 8.3. Signed-off-by: Federico Serafini --- xen/arch/x86/include/asm/hvm/hvm.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/xen/arch/x86/include/asm/hvm/hvm.h b/xen/arch/x86/include/asm/hvm/hvm.h index 04cbd4ff24..9555b4c41f 100644 --- a/xen/arch/x86/include/asm/hvm/hvm.h +++ b/xen/arch/x86/include/asm/hvm/hvm.h @@ -366,7 +366,7 @@ const char *hvm_efer_valid(const struct vcpu *v, uint64_t value, signed int cr0_pg); unsigned long hvm_cr4_guest_valid_bits(const struct domain *d); -int hvm_copy_context_and_params(struct domain *src, struct domain *dst); +int hvm_copy_context_and_params(struct domain *dst, struct domain *src); int hvm_get_param(struct domain *d, uint32_t index, uint64_t *value); -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 29 15:56:03 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 15:56:03 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556956.869885 (Exim 4.92) (envelope-from ) id 1qEtzp-00012j-Sm; Thu, 29 Jun 2023 15:55:49 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556956.869885; Thu, 29 Jun 2023 15:55:49 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEtzp-00012F-PM; Thu, 29 Jun 2023 15:55:49 +0000 Received: by outflank-mailman (input) for mailman id 556956; Thu, 29 Jun 2023 15:55:48 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEtzo-0000zP-Ne for xen-devel@lists.xenproject.org; Thu, 29 Jun 2023 15:55:48 +0000 Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 6a12ee5c-1695-11ee-b237-6b7b168915f2; Thu, 29 Jun 2023 17:55:48 +0200 (CEST) Received: from Dell.bugseng.com (unknown [37.160.192.186]) by support.bugseng.com (Postfix) with ESMTPSA id E7F574EE073C; Thu, 29 Jun 2023 17:55:46 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 6a12ee5c-1695-11ee-b237-6b7b168915f2 From: Federico Serafini To: xen-devel@lists.xenproject.org Cc: consulting@bugseng.com, Federico Serafini , Jan Beulich , Andrew Cooper , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Wei Liu , Stefano Stabellini , Michal Orzel , Xenia Ragiadakou , Ayan Kumar Halder Subject: [XEN PATCH 2/5] x86: change parameter names of nestedhvm_vcpu_iomap_get() definition Date: Thu, 29 Jun 2023 17:55:30 +0200 Message-Id: <7392b1adc50c77855bec846f1a14e30f6a8ae1d6.1688049495.git.federico.serafini@bugseng.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Change parameter names of nestedhvm_vcpu_iomap_get() definition to those used in the function declaration in order to: 1) improve readability; 2) fix violations of MISRA C:2012 Rule 8.3. Signed-off-by: Federico Serafini --- xen/arch/x86/hvm/nestedhvm.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/xen/arch/x86/hvm/nestedhvm.c b/xen/arch/x86/hvm/nestedhvm.c index ec68551127..64d7eec9a1 100644 --- a/xen/arch/x86/hvm/nestedhvm.c +++ b/xen/arch/x86/hvm/nestedhvm.c @@ -155,19 +155,19 @@ static int __init cf_check nestedhvm_setup(void) __initcall(nestedhvm_setup); unsigned long * -nestedhvm_vcpu_iomap_get(bool_t port_80, bool_t port_ed) +nestedhvm_vcpu_iomap_get(bool_t ioport_80, bool_t ioport_ed) { int i; if (!hvm_port80_allowed) - port_80 = 1; + ioport_80 = 1; - if (port_80 == 0) { - if (port_ed == 0) + if (ioport_80 == 0) { + if (ioport_ed == 0) return hvm_io_bitmap; i = 0; } else { - if (port_ed == 0) + if (ioport_ed == 0) i = 1; else i = 2; -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 29 15:56:03 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 15:56:03 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556955.869881 (Exim 4.92) (envelope-from ) id 1qEtzp-0000zr-LO; Thu, 29 Jun 2023 15:55:49 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556955.869881; Thu, 29 Jun 2023 15:55:49 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEtzp-0000zk-Hl; Thu, 29 Jun 2023 15:55:49 +0000 Received: by outflank-mailman (input) for mailman id 556955; Thu, 29 Jun 2023 15:55:47 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEtzn-0000zP-Fs for xen-devel@lists.xenproject.org; Thu, 29 Jun 2023 15:55:47 +0000 Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 68ba15ba-1695-11ee-b237-6b7b168915f2; Thu, 29 Jun 2023 17:55:46 +0200 (CEST) Received: from Dell.bugseng.com (unknown [37.160.192.186]) by support.bugseng.com (Postfix) with ESMTPSA id 37F7D4EE0737; Thu, 29 Jun 2023 17:55:43 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 68ba15ba-1695-11ee-b237-6b7b168915f2 From: Federico Serafini To: xen-devel@lists.xenproject.org Cc: consulting@bugseng.com, Federico Serafini , Jan Beulich , Andrew Cooper , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Wei Liu , Paul Durrant , Tamas K Lengyel , Alexandru Isaila , Petre Pircalabu , Jun Nakajima , Kevin Tian , Stefano Stabellini , Michal Orzel , Xenia Ragiadakou , Ayan Kumar Halder Subject: [XEN PATCH 0/5] Fix violations of MISRA C:2012 Rule 8.3 on parameter names Date: Thu, 29 Jun 2023 17:55:28 +0200 Message-Id: X-Mailer: git-send-email 2.34.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit To comply with Rule 8.3 ("All declarations of an object or function shall use the same names and type qualifiers") change the parameter names in order to have function declarations consistent with the corresponding definitions. Federico Serafini (5): x86: swap parameter names of hvm_copy_context_and_params() declaration x86: change parameter names of nestedhvm_vcpu_iomap_get() definition x86/vlapic: change parameter names in function definitions x86/x86_emulate: change parameter name from 's' to 'state' x86: make parameter names of function declarations consistent xen/arch/x86/cpu/mcheck/mce.h | 2 +- xen/arch/x86/cpu/mcheck/x86_mca.h | 2 +- xen/arch/x86/hvm/nestedhvm.c | 10 ++--- xen/arch/x86/hvm/rtc.c | 2 +- xen/arch/x86/hvm/svm/nestedhvm.h | 2 +- xen/arch/x86/hvm/vioapic.c | 2 +- xen/arch/x86/hvm/vlapic.c | 56 ++++++++++++------------- xen/arch/x86/include/asm/genapic.h | 2 +- xen/arch/x86/include/asm/guest_pt.h | 2 +- xen/arch/x86/include/asm/hap.h | 2 +- xen/arch/x86/include/asm/hvm/hvm.h | 2 +- xen/arch/x86/include/asm/hvm/io.h | 2 +- xen/arch/x86/include/asm/hvm/monitor.h | 2 +- xen/arch/x86/include/asm/hvm/svm/vmcb.h | 2 +- xen/arch/x86/include/asm/hvm/vmx/vmcs.h | 4 +- xen/arch/x86/include/asm/hvm/vmx/vvmx.h | 8 ++-- xen/arch/x86/include/asm/io_apic.h | 2 +- xen/arch/x86/include/asm/irq.h | 6 +-- xen/arch/x86/include/asm/mem_access.h | 2 +- xen/arch/x86/include/asm/mpspec.h | 2 +- xen/arch/x86/include/asm/msi.h | 4 +- xen/arch/x86/include/asm/p2m.h | 8 ++-- xen/arch/x86/include/asm/paging.h | 2 +- xen/arch/x86/include/asm/psr.h | 2 +- xen/arch/x86/include/asm/setup.h | 2 +- xen/arch/x86/include/asm/uaccess.h | 6 +-- xen/arch/x86/include/asm/xstate.h | 2 +- xen/arch/x86/x86_emulate/blk.c | 38 ++++++++--------- xen/arch/x86/x86_emulate/util-xen.c | 46 ++++++++++---------- xen/arch/x86/x86_emulate/util.c | 54 ++++++++++++------------ xen/include/xen/lib/x86/cpu-policy.h | 29 ++++++------- 31 files changed, 154 insertions(+), 153 deletions(-) -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 29 15:56:03 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 15:56:03 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556958.869910 (Exim 4.92) (envelope-from ) id 1qEtzs-0001kZ-CO; Thu, 29 Jun 2023 15:55:52 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556958.869910; Thu, 29 Jun 2023 15:55:52 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEtzs-0001kQ-9S; Thu, 29 Jun 2023 15:55:52 +0000 Received: by outflank-mailman (input) for mailman id 556958; Thu, 29 Jun 2023 15:55:51 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEtzr-0000zX-3f for xen-devel@lists.xenproject.org; Thu, 29 Jun 2023 15:55:51 +0000 Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 6ad48bcf-1695-11ee-8611-37d641c3527e; Thu, 29 Jun 2023 17:55:49 +0200 (CEST) Received: from Dell.bugseng.com (unknown [37.160.192.186]) by support.bugseng.com (Postfix) with ESMTPSA id 26C8A4EE073D; Thu, 29 Jun 2023 17:55:48 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 6ad48bcf-1695-11ee-8611-37d641c3527e From: Federico Serafini To: xen-devel@lists.xenproject.org Cc: consulting@bugseng.com, Federico Serafini , Jan Beulich , Andrew Cooper , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Wei Liu , Stefano Stabellini , Michal Orzel , Xenia Ragiadakou , Ayan Kumar Halder Subject: [XEN PATCH 3/5] x86/vlapic: change parameter names in function definitions Date: Thu, 29 Jun 2023 17:55:31 +0200 Message-Id: X-Mailer: git-send-email 2.34.1 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Change parameter names in guest_wrmsr_x2apic() and guest_wrmsr_apic_base() definitions in order to: 1) keep consistency with parameter names used in guest_* function declarations; 2) fix violations of MISRA C:2012 Rule 8.3. Signed-off-by: Federico Serafini --- xen/arch/x86/hvm/vlapic.c | 56 +++++++++++++++++++-------------------- 1 file changed, 28 insertions(+), 28 deletions(-) diff --git a/xen/arch/x86/hvm/vlapic.c b/xen/arch/x86/hvm/vlapic.c index 785d5d88d9..5e0e12a1d7 100644 --- a/xen/arch/x86/hvm/vlapic.c +++ b/xen/arch/x86/hvm/vlapic.c @@ -959,7 +959,7 @@ int vlapic_apicv_write(struct vcpu *v, unsigned int offset) return X86EMUL_OKAY; } -int guest_wrmsr_x2apic(struct vcpu *v, uint32_t msr, uint64_t msr_content) +int guest_wrmsr_x2apic(struct vcpu *v, uint32_t msr, uint64_t val) { struct vlapic *vlapic = vcpu_vlapic(v); uint32_t offset = (msr - MSR_X2APIC_FIRST) << 4; @@ -973,38 +973,38 @@ int guest_wrmsr_x2apic(struct vcpu *v, uint32_t msr, uint64_t msr_content) switch ( offset ) { case APIC_TASKPRI: - if ( msr_content & ~APIC_TPRI_MASK ) + if ( val & ~APIC_TPRI_MASK ) return X86EMUL_EXCEPTION; break; case APIC_SPIV: - if ( msr_content & ~(APIC_VECTOR_MASK | APIC_SPIV_APIC_ENABLED | - APIC_SPIV_FOCUS_DISABLED | - (VLAPIC_VERSION & APIC_LVR_DIRECTED_EOI - ? APIC_SPIV_DIRECTED_EOI : 0)) ) + if ( val & ~(APIC_VECTOR_MASK | APIC_SPIV_APIC_ENABLED | + APIC_SPIV_FOCUS_DISABLED | + (VLAPIC_VERSION & APIC_LVR_DIRECTED_EOI + ? APIC_SPIV_DIRECTED_EOI : 0)) ) return X86EMUL_EXCEPTION; break; case APIC_LVTT: - if ( msr_content & ~(LVT_MASK | APIC_TIMER_MODE_MASK) ) + if ( val & ~(LVT_MASK | APIC_TIMER_MODE_MASK) ) return X86EMUL_EXCEPTION; break; case APIC_LVTTHMR: case APIC_LVTPC: case APIC_CMCI: - if ( msr_content & ~(LVT_MASK | APIC_MODE_MASK) ) + if ( val & ~(LVT_MASK | APIC_MODE_MASK) ) return X86EMUL_EXCEPTION; break; case APIC_LVT0: case APIC_LVT1: - if ( msr_content & ~LINT_MASK ) + if ( val & ~LINT_MASK ) return X86EMUL_EXCEPTION; break; case APIC_LVTERR: - if ( msr_content & ~LVT_MASK ) + if ( val & ~LVT_MASK ) return X86EMUL_EXCEPTION; break; @@ -1012,35 +1012,35 @@ int guest_wrmsr_x2apic(struct vcpu *v, uint32_t msr, uint64_t msr_content) break; case APIC_TDCR: - if ( msr_content & ~APIC_TDR_DIV_MASK ) + if ( val & ~APIC_TDR_DIV_MASK ) return X86EMUL_EXCEPTION; break; case APIC_ICR: - if ( (uint32_t)msr_content & ~(APIC_VECTOR_MASK | APIC_MODE_MASK | + if ( (uint32_t)val & ~(APIC_VECTOR_MASK | APIC_MODE_MASK | APIC_DEST_MASK | APIC_INT_ASSERT | APIC_INT_LEVELTRIG | APIC_SHORT_MASK) ) return X86EMUL_EXCEPTION; - vlapic_set_reg(vlapic, APIC_ICR2, msr_content >> 32); + vlapic_set_reg(vlapic, APIC_ICR2, val >> 32); break; case APIC_SELF_IPI: - if ( msr_content & ~APIC_VECTOR_MASK ) + if ( val & ~APIC_VECTOR_MASK ) return X86EMUL_EXCEPTION; offset = APIC_ICR; - msr_content = APIC_DEST_SELF | (msr_content & APIC_VECTOR_MASK); + val = APIC_DEST_SELF | (val & APIC_VECTOR_MASK); break; case APIC_EOI: case APIC_ESR: - if ( msr_content ) + if ( val ) { default: return X86EMUL_EXCEPTION; } } - vlapic_reg_write(v, array_index_nospec(offset, PAGE_SIZE), msr_content); + vlapic_reg_write(v, array_index_nospec(offset, PAGE_SIZE), val); return X86EMUL_OKAY; } @@ -1070,7 +1070,7 @@ static void set_x2apic_id(struct vlapic *vlapic) vlapic_set_reg(vlapic, APIC_LDR, ldr); } -int guest_wrmsr_apic_base(struct vcpu *v, uint64_t value) +int guest_wrmsr_apic_base(struct vcpu *v, uint64_t val) { const struct cpu_policy *cp = v->domain->arch.cpu_policy; struct vlapic *vlapic = vcpu_vlapic(v); @@ -1079,8 +1079,8 @@ int guest_wrmsr_apic_base(struct vcpu *v, uint64_t value) return X86EMUL_EXCEPTION; /* Attempting to set reserved bits? */ - if ( value & ~(APIC_BASE_ADDR_MASK | APIC_BASE_ENABLE | APIC_BASE_BSP | - (cp->basic.x2apic ? APIC_BASE_EXTD : 0)) ) + if ( val & ~(APIC_BASE_ADDR_MASK | APIC_BASE_ENABLE | APIC_BASE_BSP | + (cp->basic.x2apic ? APIC_BASE_EXTD : 0)) ) return X86EMUL_EXCEPTION; /* @@ -1118,21 +1118,21 @@ int guest_wrmsr_apic_base(struct vcpu *v, uint64_t value) * fault will be far more obvious to debug than a malfunctioning MMIO * window. */ - if ( ((value & (APIC_BASE_EXTD | APIC_BASE_ENABLE)) == APIC_BASE_ENABLE) && - ((value & APIC_BASE_ADDR_MASK) != APIC_DEFAULT_PHYS_BASE) ) + if ( ((val & (APIC_BASE_EXTD | APIC_BASE_ENABLE)) == APIC_BASE_ENABLE) && + ((val & APIC_BASE_ADDR_MASK) != APIC_DEFAULT_PHYS_BASE) ) { printk(XENLOG_G_INFO "%pv tried to move the APIC MMIO window: val 0x%08"PRIx64"\n", - v, value); + v, val); return X86EMUL_EXCEPTION; } - if ( (vlapic->hw.apic_base_msr ^ value) & APIC_BASE_ENABLE ) + if ( (vlapic->hw.apic_base_msr ^ val) & APIC_BASE_ENABLE ) { - if ( unlikely(value & APIC_BASE_EXTD) ) + if ( unlikely(val & APIC_BASE_EXTD) ) return X86EMUL_EXCEPTION; - if ( value & APIC_BASE_ENABLE ) + if ( val & APIC_BASE_ENABLE ) { vlapic_reset(vlapic); vlapic->hw.disabled &= ~VLAPIC_HW_DISABLED; @@ -1144,11 +1144,11 @@ int guest_wrmsr_apic_base(struct vcpu *v, uint64_t value) pt_may_unmask_irq(vlapic_domain(vlapic), NULL); } } - else if ( ((vlapic->hw.apic_base_msr ^ value) & APIC_BASE_EXTD) && + else if ( ((vlapic->hw.apic_base_msr ^ val) & APIC_BASE_EXTD) && unlikely(!vlapic_xapic_mode(vlapic)) ) return X86EMUL_EXCEPTION; - vlapic->hw.apic_base_msr = value; + vlapic->hw.apic_base_msr = val; memset(&vlapic->loaded, 0, sizeof(vlapic->loaded)); if ( vlapic_x2apic_mode(vlapic) ) -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 29 15:56:04 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 15:56:04 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556959.869921 (Exim 4.92) (envelope-from ) id 1qEtzu-000231-Kb; Thu, 29 Jun 2023 15:55:54 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556959.869921; Thu, 29 Jun 2023 15:55:54 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEtzu-00022m-HQ; Thu, 29 Jun 2023 15:55:54 +0000 Received: by outflank-mailman (input) for mailman id 556959; Thu, 29 Jun 2023 15:55:53 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEtzt-0000zX-29 for xen-devel@lists.xenproject.org; Thu, 29 Jun 2023 15:55:53 +0000 Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 6bd187ee-1695-11ee-8611-37d641c3527e; Thu, 29 Jun 2023 17:55:51 +0200 (CEST) Received: from Dell.bugseng.com (unknown [37.160.192.186]) by support.bugseng.com (Postfix) with ESMTPSA id 753F44EE073F; Thu, 29 Jun 2023 17:55:49 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 6bd187ee-1695-11ee-8611-37d641c3527e From: Federico Serafini To: xen-devel@lists.xenproject.org Cc: consulting@bugseng.com, Federico Serafini , Jan Beulich , Andrew Cooper , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Wei Liu , Stefano Stabellini , Michal Orzel , Xenia Ragiadakou , Ayan Kumar Halder Subject: [XEN PATCH 4/5] x86/x86_emulate: change parameter name from 's' to 'state' Date: Thu, 29 Jun 2023 17:55:32 +0200 Message-Id: <8c8bc96b96a1111a4651f970f506d304809ea40d.1688049495.git.federico.serafini@bugseng.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Change parameter name from 's' to 'state' in function definitions in order to: 1) keep consistency with the parameter names used in the corresponding declarations; 2) keep consistency with parameter names used within x86_emulate.h; 3) fix violations of MISRA C:2012 Rule 8.3. Signed-off-by: Federico Serafini --- xen/arch/x86/x86_emulate/blk.c | 38 ++++++++++---------- xen/arch/x86/x86_emulate/util-xen.c | 46 ++++++++++++------------ xen/arch/x86/x86_emulate/util.c | 54 ++++++++++++++--------------- 3 files changed, 69 insertions(+), 69 deletions(-) diff --git a/xen/arch/x86/x86_emulate/blk.c b/xen/arch/x86/x86_emulate/blk.c index e790f4f900..23eeb00db2 100644 --- a/xen/arch/x86/x86_emulate/blk.c +++ b/xen/arch/x86/x86_emulate/blk.c @@ -22,12 +22,12 @@ int x86_emul_blk( void *data, unsigned int bytes, uint32_t *eflags, - struct x86_emulate_state *s, + struct x86_emulate_state *state, struct x86_emulate_ctxt *ctxt) { int rc = X86EMUL_OKAY; - switch ( s->blk ) + switch ( state->blk ) { bool zf; #ifndef X86EMUL_NO_FPU @@ -72,13 +72,13 @@ int x86_emul_blk( case blk_fld: ASSERT(!data); - /* s->rex_prefix carries CR0.PE && !EFLAGS.VM setting */ + /* state->rex_prefix carries CR0.PE && !EFLAGS.VM setting */ switch ( bytes ) { case sizeof(fpstate.env): /* 32-bit FLDENV */ case sizeof(fpstate): /* 32-bit FRSTOR */ memcpy(&fpstate.env, ptr, sizeof(fpstate.env)); - if ( !s->rex_prefix ) + if ( !state->rex_prefix ) { /* Convert 32-bit real/vm86 to 32-bit prot format. */ unsigned int fip = fpstate.env.mode.real.fip_lo + @@ -109,7 +109,7 @@ int x86_emul_blk( fpstate.env.fsw = env->fsw; fpstate.env.ftw = env->ftw; - if ( s->rex_prefix ) + if ( state->rex_prefix ) { /* Convert 16-bit prot to 32-bit prot format. */ fpstate.env.mode.prot.fip = env->mode.prot.fip; @@ -165,12 +165,12 @@ int x86_emul_blk( else asm ( "fnstenv %0" : "+m" (fpstate.env) ); - /* s->rex_prefix carries CR0.PE && !EFLAGS.VM setting */ + /* state->rex_prefix carries CR0.PE && !EFLAGS.VM setting */ switch ( bytes ) { case sizeof(fpstate.env): /* 32-bit FNSTENV */ case sizeof(fpstate): /* 32-bit FNSAVE */ - if ( !s->rex_prefix ) + if ( !state->rex_prefix ) { /* Convert 32-bit prot to 32-bit real/vm86 format. */ unsigned int fip = fpstate.env.mode.prot.fip + @@ -195,7 +195,7 @@ int x86_emul_blk( case sizeof(struct x87_env16): /* 16-bit FNSTENV */ case sizeof(struct x87_env16) + sizeof(fpstate.freg): /* 16-bit FNSAVE */ - if ( s->rex_prefix ) + if ( state->rex_prefix ) { /* Convert 32-bit prot to 16-bit prot format. */ struct x87_env16 *env = ptr; @@ -254,11 +254,11 @@ int x86_emul_blk( ASSERT(!data); ASSERT(bytes == sizeof(*fxsr)); - ASSERT(s->op_bytes <= bytes); + ASSERT(state->op_bytes <= bytes); - if ( s->op_bytes < sizeof(*fxsr) ) + if ( state->op_bytes < sizeof(*fxsr) ) { - if ( s->rex_prefix & REX_W ) + if ( state->rex_prefix & REX_W ) { /* * The only way to force fxsaveq on a wide range of gas @@ -278,13 +278,13 @@ int x86_emul_blk( * data FXRSTOR may actually consume in some way: Copy only the * defined portion, and zero the rest. */ - memcpy(fxsr, ptr, min(s->op_bytes, + memcpy(fxsr, ptr, min(state->op_bytes, (unsigned int)offsetof(struct x86_fxsr, rsvd))); memset(fxsr->rsvd, 0, sizeof(*fxsr) - offsetof(struct x86_fxsr, rsvd)); generate_exception_if(fxsr->mxcsr & ~mxcsr_mask, X86_EXC_GP, 0); - if ( s->rex_prefix & REX_W ) + if ( state->rex_prefix & REX_W ) { /* See above for why operand/constraints are this way. */ asm volatile ( ".byte 0x48; fxrstor (%1)" @@ -301,15 +301,15 @@ int x86_emul_blk( ASSERT(!data); ASSERT(bytes == sizeof(*fxsr)); - ASSERT(s->op_bytes <= bytes); + ASSERT(state->op_bytes <= bytes); - if ( s->op_bytes < sizeof(*fxsr) ) + if ( state->op_bytes < sizeof(*fxsr) ) /* Don't chance consuming uninitialized data. */ - memset(fxsr, 0, s->op_bytes); + memset(fxsr, 0, state->op_bytes); else fxsr = ptr; - if ( s->rex_prefix & REX_W ) + if ( state->rex_prefix & REX_W ) { /* See above for why operand/constraints are this way. */ asm volatile ( ".byte 0x48; fxsave (%1)" @@ -318,8 +318,8 @@ int x86_emul_blk( else asm volatile ( "fxsave %0" : "=m" (*fxsr) ); - if ( fxsr != ptr ) /* i.e. s->op_bytes < sizeof(*fxsr) */ - memcpy(ptr, fxsr, s->op_bytes); + if ( fxsr != ptr ) /* i.e. state->op_bytes < sizeof(*fxsr) */ + memcpy(ptr, fxsr, state->op_bytes); break; } diff --git a/xen/arch/x86/x86_emulate/util-xen.c b/xen/arch/x86/x86_emulate/util-xen.c index 5e90818010..b36acbe1b0 100644 --- a/xen/arch/x86/x86_emulate/util-xen.c +++ b/xen/arch/x86/x86_emulate/util-xen.c @@ -14,26 +14,26 @@ #include #ifndef NDEBUG -void x86_emulate_free_state(struct x86_emulate_state *s) +void x86_emulate_free_state(struct x86_emulate_state *state) { - check_state(s); - s->caller = NULL; + check_state(state); + state->caller = NULL; } #endif -unsigned int x86_insn_opsize(const struct x86_emulate_state *s) +unsigned int x86_insn_opsize(const struct x86_emulate_state *state) { - check_state(s); + check_state(state); - return s->op_bytes << 3; + return state->op_bytes << 3; } -int x86_insn_modrm(const struct x86_emulate_state *s, +int x86_insn_modrm(const struct x86_emulate_state *state, unsigned int *rm, unsigned int *reg) { - check_state(s); + check_state(state); - if ( unlikely(s->modrm_mod > 3) ) + if ( unlikely(state->modrm_mod > 3) ) { if ( rm ) *rm = ~0U; @@ -43,24 +43,24 @@ int x86_insn_modrm(const struct x86_emulate_state *s, } if ( rm ) - *rm = s->modrm_rm; + *rm = state->modrm_rm; if ( reg ) - *reg = s->modrm_reg; + *reg = state->modrm_reg; - return s->modrm_mod; + return state->modrm_mod; } -unsigned long x86_insn_operand_ea(const struct x86_emulate_state *s, +unsigned long x86_insn_operand_ea(const struct x86_emulate_state *state, enum x86_segment *seg) { - *seg = s->ea.type == OP_MEM ? s->ea.mem.seg : x86_seg_none; + *seg = state->ea.type == OP_MEM ? state->ea.mem.seg : x86_seg_none; - check_state(s); + check_state(state); - return s->ea.mem.off; + return state->ea.mem.off; } -bool cf_check x86_insn_is_portio(const struct x86_emulate_state *s, +bool cf_check x86_insn_is_portio(const struct x86_emulate_state *state, const struct x86_emulate_ctxt *ctxt) { switch ( ctxt->opcode ) @@ -74,7 +74,7 @@ bool cf_check x86_insn_is_portio(const struct x86_emulate_state *s, return false; } -bool cf_check x86_insn_is_cr_access(const struct x86_emulate_state *s, +bool cf_check x86_insn_is_cr_access(const struct x86_emulate_state *state, const struct x86_emulate_ctxt *ctxt) { switch ( ctxt->opcode ) @@ -82,7 +82,7 @@ bool cf_check x86_insn_is_cr_access(const struct x86_emulate_state *s, unsigned int ext; case X86EMUL_OPC(0x0f, 0x01): - if ( x86_insn_modrm(s, NULL, &ext) >= 0 + if ( x86_insn_modrm(state, NULL, &ext) >= 0 && (ext & 5) == 4 ) /* SMSW / LMSW */ return true; break; @@ -96,17 +96,17 @@ bool cf_check x86_insn_is_cr_access(const struct x86_emulate_state *s, return false; } -unsigned long x86_insn_immediate(const struct x86_emulate_state *s, +unsigned long x86_insn_immediate(const struct x86_emulate_state *state, unsigned int nr) { - check_state(s); + check_state(state); switch ( nr ) { case 0: - return s->imm1; + return state->imm1; case 1: - return s->imm2; + return state->imm2; } return 0; diff --git a/xen/arch/x86/x86_emulate/util.c b/xen/arch/x86/x86_emulate/util.c index 4becd054c2..34daa8467f 100644 --- a/xen/arch/x86/x86_emulate/util.c +++ b/xen/arch/x86/x86_emulate/util.c @@ -8,12 +8,12 @@ #include "private.h" -unsigned int x86_insn_length(const struct x86_emulate_state *s, +unsigned int x86_insn_length(const struct x86_emulate_state *state, const struct x86_emulate_ctxt *ctxt) { - check_state(s); + check_state(state); - return s->ip - ctxt->regs->r(ip); + return state->ip - ctxt->regs->r(ip); } /* @@ -22,13 +22,13 @@ unsigned int x86_insn_length(const struct x86_emulate_state *s, * memory operand (like POP), but it does not mean e.g. segment selector * loads, where the descriptor table access is considered an implicit one. */ -bool cf_check x86_insn_is_mem_access(const struct x86_emulate_state *s, +bool cf_check x86_insn_is_mem_access(const struct x86_emulate_state *state, const struct x86_emulate_ctxt *ctxt) { - if ( mode_64bit() && s->not_64bit ) + if ( mode_64bit() && state->not_64bit ) return false; - if ( s->ea.type == OP_MEM ) + if ( state->ea.type == OP_MEM ) { switch ( ctxt->opcode ) { @@ -49,13 +49,13 @@ bool cf_check x86_insn_is_mem_access(const struct x86_emulate_state *s, return false; case X86EMUL_OPC(0x0f, 0x01): - return (s->modrm_reg & 7) != 7; /* INVLPG */ + return (state->modrm_reg & 7) != 7; /* INVLPG */ case X86EMUL_OPC(0x0f, 0xae): - return (s->modrm_reg & 7) != 7; /* CLFLUSH */ + return (state->modrm_reg & 7) != 7; /* CLFLUSH */ case X86EMUL_OPC_66(0x0f, 0xae): - return (s->modrm_reg & 7) < 6; /* CLWB, CLFLUSHOPT */ + return (state->modrm_reg & 7) < 6; /* CLWB, CLFLUSHOPT */ } return true; @@ -91,7 +91,7 @@ bool cf_check x86_insn_is_mem_access(const struct x86_emulate_state *s, return true; case 0xff: - switch ( s->modrm_reg & 7 ) + switch ( state->modrm_reg & 7 ) { case 2: /* CALL (near, indirect) */ case 6: /* PUSH r/m */ @@ -101,7 +101,7 @@ bool cf_check x86_insn_is_mem_access(const struct x86_emulate_state *s, case X86EMUL_OPC(0x0f, 0x01): /* Cover CLZERO. */ - return (s->modrm_rm & 7) == 4 && (s->modrm_reg & 7) == 7; + return (state->modrm_rm & 7) == 4 && (state->modrm_reg & 7) == 7; } return false; @@ -114,17 +114,17 @@ bool cf_check x86_insn_is_mem_access(const struct x86_emulate_state *s, * loads, where the (possible) descriptor table write is considered an * implicit access. */ -bool cf_check x86_insn_is_mem_write(const struct x86_emulate_state *s, +bool cf_check x86_insn_is_mem_write(const struct x86_emulate_state *state, const struct x86_emulate_ctxt *ctxt) { - if ( mode_64bit() && s->not_64bit ) + if ( mode_64bit() && state->not_64bit ) return false; - switch ( s->desc & DstMask ) + switch ( state->desc & DstMask ) { case DstMem: /* The SrcMem check is to cover {,V}MASKMOV{Q,DQU}. */ - return s->modrm_mod != 3 || (s->desc & SrcMask) == SrcMem; + return state->modrm_mod != 3 || (state->desc & SrcMask) == SrcMem; case DstBitBase: case DstImplicit: @@ -147,13 +147,13 @@ bool cf_check x86_insn_is_mem_write(const struct x86_emulate_state *s, X86EMUL_OPC_EVEX_F3(0x0f38, 0x25): /* VPMOVS* */ case X86EMUL_OPC_EVEX_F3(0x0f38, 0x30) ... X86EMUL_OPC_EVEX_F3(0x0f38, 0x35): /* VPMOV{D,Q,W}* */ - return s->modrm_mod != 3; + return state->modrm_mod != 3; } return false; } - if ( s->modrm_mod == 3 ) + if ( state->modrm_mod == 3 ) { switch ( ctxt->opcode ) { @@ -161,7 +161,7 @@ bool cf_check x86_insn_is_mem_write(const struct x86_emulate_state *s, break; case X86EMUL_OPC(0x0f, 0x01): /* CLZERO is the odd one. */ - return (s->modrm_rm & 7) == 4 && (s->modrm_reg & 7) == 7; + return (state->modrm_rm & 7) == 4 && (state->modrm_reg & 7) == 7; default: return false; @@ -192,7 +192,7 @@ bool cf_check x86_insn_is_mem_write(const struct x86_emulate_state *s, return true; case 0xd9: - switch ( s->modrm_reg & 7 ) + switch ( state->modrm_reg & 7 ) { case 2: /* FST m32fp */ case 3: /* FSTP m32fp */ @@ -203,7 +203,7 @@ bool cf_check x86_insn_is_mem_write(const struct x86_emulate_state *s, break; case 0xdb: - switch ( s->modrm_reg & 7 ) + switch ( state->modrm_reg & 7 ) { case 1: /* FISTTP m32i */ case 2: /* FIST m32i */ @@ -214,7 +214,7 @@ bool cf_check x86_insn_is_mem_write(const struct x86_emulate_state *s, break; case 0xdd: - switch ( s->modrm_reg & 7 ) + switch ( state->modrm_reg & 7 ) { case 1: /* FISTTP m64i */ case 2: /* FST m64fp */ @@ -226,7 +226,7 @@ bool cf_check x86_insn_is_mem_write(const struct x86_emulate_state *s, break; case 0xdf: - switch ( s->modrm_reg & 7 ) + switch ( state->modrm_reg & 7 ) { case 1: /* FISTTP m16i */ case 2: /* FIST m16i */ @@ -238,7 +238,7 @@ bool cf_check x86_insn_is_mem_write(const struct x86_emulate_state *s, break; case 0xff: - switch ( s->modrm_reg & 7 ) + switch ( state->modrm_reg & 7 ) { case 2: /* CALL (near, indirect) */ case 3: /* CALL (far, indirect) */ @@ -248,7 +248,7 @@ bool cf_check x86_insn_is_mem_write(const struct x86_emulate_state *s, break; case X86EMUL_OPC(0x0f, 0x01): - switch ( s->modrm_reg & 7 ) + switch ( state->modrm_reg & 7 ) { case 0: /* SGDT */ case 1: /* SIDT */ @@ -258,7 +258,7 @@ bool cf_check x86_insn_is_mem_write(const struct x86_emulate_state *s, break; case X86EMUL_OPC(0x0f, 0xae): - switch ( s->modrm_reg & 7 ) + switch ( state->modrm_reg & 7 ) { case 0: /* FXSAVE */ /* case 3: STMXCSR - handled above */ @@ -269,10 +269,10 @@ bool cf_check x86_insn_is_mem_write(const struct x86_emulate_state *s, break; case X86EMUL_OPC(0x0f, 0xba): - return (s->modrm_reg & 7) > 4; /* BTS / BTR / BTC */ + return (state->modrm_reg & 7) > 4; /* BTS / BTR / BTC */ case X86EMUL_OPC(0x0f, 0xc7): - switch ( s->modrm_reg & 7 ) + switch ( state->modrm_reg & 7 ) { case 1: /* CMPXCHG{8,16}B */ case 4: /* XSAVEC */ -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 29 15:56:08 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 15:56:08 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556962.869931 (Exim 4.92) (envelope-from ) id 1qEtzy-0002Ot-4S; Thu, 29 Jun 2023 15:55:58 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556962.869931; Thu, 29 Jun 2023 15:55:58 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEtzy-0002Oh-0X; Thu, 29 Jun 2023 15:55:58 +0000 Received: by outflank-mailman (input) for mailman id 556962; Thu, 29 Jun 2023 15:55:56 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEtzw-0000zX-OG for xen-devel@lists.xenproject.org; Thu, 29 Jun 2023 15:55:56 +0000 Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 6dcad14a-1695-11ee-8611-37d641c3527e; Thu, 29 Jun 2023 17:55:54 +0200 (CEST) Received: from Dell.bugseng.com (unknown [37.160.192.186]) by support.bugseng.com (Postfix) with ESMTPSA id 49A6F4EE0740; Thu, 29 Jun 2023 17:55:51 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 6dcad14a-1695-11ee-8611-37d641c3527e From: Federico Serafini To: xen-devel@lists.xenproject.org Cc: consulting@bugseng.com, Federico Serafini , Jan Beulich , Andrew Cooper , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Wei Liu , Paul Durrant , Tamas K Lengyel , Alexandru Isaila , Petre Pircalabu , Jun Nakajima , Kevin Tian , Stefano Stabellini , Michal Orzel , Xenia Ragiadakou , Ayan Kumar Halder Subject: [XEN PATCH 5/5] x86: make parameter names of function declarations consistent Date: Thu, 29 Jun 2023 17:55:33 +0200 Message-Id: <5ee57d7bcd79daa0314f182ecb73e1eb6d8ecc03.1688049495.git.federico.serafini@bugseng.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Change the parameter names of function declarations to be consistent with the names used in the corresponding function definitions so as to fix violations of MISRA C:2012 Rule 8.3. Signed-off-by: Federico Serafini --- xen/arch/x86/cpu/mcheck/mce.h | 2 +- xen/arch/x86/cpu/mcheck/x86_mca.h | 2 +- xen/arch/x86/hvm/rtc.c | 2 +- xen/arch/x86/hvm/svm/nestedhvm.h | 2 +- xen/arch/x86/hvm/vioapic.c | 2 +- xen/arch/x86/include/asm/genapic.h | 2 +- xen/arch/x86/include/asm/guest_pt.h | 2 +- xen/arch/x86/include/asm/hap.h | 2 +- xen/arch/x86/include/asm/hvm/io.h | 2 +- xen/arch/x86/include/asm/hvm/monitor.h | 2 +- xen/arch/x86/include/asm/hvm/svm/vmcb.h | 2 +- xen/arch/x86/include/asm/hvm/vmx/vmcs.h | 4 ++-- xen/arch/x86/include/asm/hvm/vmx/vvmx.h | 8 +++---- xen/arch/x86/include/asm/io_apic.h | 2 +- xen/arch/x86/include/asm/irq.h | 6 ++--- xen/arch/x86/include/asm/mem_access.h | 2 +- xen/arch/x86/include/asm/mpspec.h | 2 +- xen/arch/x86/include/asm/msi.h | 4 ++-- xen/arch/x86/include/asm/p2m.h | 8 +++---- xen/arch/x86/include/asm/paging.h | 2 +- xen/arch/x86/include/asm/psr.h | 2 +- xen/arch/x86/include/asm/setup.h | 2 +- xen/arch/x86/include/asm/uaccess.h | 6 ++--- xen/arch/x86/include/asm/xstate.h | 2 +- xen/include/xen/lib/x86/cpu-policy.h | 29 +++++++++++++------------ 25 files changed, 51 insertions(+), 50 deletions(-) diff --git a/xen/arch/x86/cpu/mcheck/mce.h b/xen/arch/x86/cpu/mcheck/mce.h index bea08bdc74..72d8dbc471 100644 --- a/xen/arch/x86/cpu/mcheck/mce.h +++ b/xen/arch/x86/cpu/mcheck/mce.h @@ -44,7 +44,7 @@ extern uint8_t cmci_apic_vector; extern bool lmce_support; /* Init functions */ -enum mcheck_type amd_mcheck_init(struct cpuinfo_x86 *c); +enum mcheck_type amd_mcheck_init(struct cpuinfo_x86 *ci); enum mcheck_type intel_mcheck_init(struct cpuinfo_x86 *c, bool bsp); void amd_nonfatal_mcheck_init(struct cpuinfo_x86 *c); diff --git a/xen/arch/x86/cpu/mcheck/x86_mca.h b/xen/arch/x86/cpu/mcheck/x86_mca.h index 18116737af..36b6127a37 100644 --- a/xen/arch/x86/cpu/mcheck/x86_mca.h +++ b/xen/arch/x86/cpu/mcheck/x86_mca.h @@ -113,7 +113,7 @@ static inline int mcabanks_test(int bit, struct mca_banks* banks) return test_bit(bit, banks->bank_map); } -struct mca_banks *mcabanks_alloc(unsigned int nr); +struct mca_banks *mcabanks_alloc(unsigned int nr_mce_banks); void mcabanks_free(struct mca_banks *banks); extern struct mca_banks *mca_allbanks; diff --git a/xen/arch/x86/hvm/rtc.c b/xen/arch/x86/hvm/rtc.c index c1ab6c7d58..ebb259586a 100644 --- a/xen/arch/x86/hvm/rtc.c +++ b/xen/arch/x86/hvm/rtc.c @@ -59,7 +59,7 @@ enum rtc_mode { static void rtc_copy_date(RTCState *s); static void rtc_set_time(RTCState *s); static inline int from_bcd(RTCState *s, int a); -static inline int convert_hour(RTCState *s, int hour); +static inline int convert_hour(RTCState *s, int raw); static void rtc_update_irq(RTCState *s) { diff --git a/xen/arch/x86/hvm/svm/nestedhvm.h b/xen/arch/x86/hvm/svm/nestedhvm.h index 43245e13de..eb9c416307 100644 --- a/xen/arch/x86/hvm/svm/nestedhvm.h +++ b/xen/arch/x86/hvm/svm/nestedhvm.h @@ -42,7 +42,7 @@ int cf_check nsvm_vcpu_initialise(struct vcpu *v); int cf_check nsvm_vcpu_reset(struct vcpu *v); int nsvm_vcpu_vmrun(struct vcpu *v, struct cpu_user_regs *regs); int cf_check nsvm_vcpu_vmexit_event(struct vcpu *v, - const struct x86_event *event); + const struct x86_event *trap); uint64_t cf_check nsvm_vcpu_hostcr3(struct vcpu *v); bool cf_check nsvm_vmcb_guest_intercepts_event( struct vcpu *v, unsigned int vector, int errcode); diff --git a/xen/arch/x86/hvm/vioapic.c b/xen/arch/x86/hvm/vioapic.c index 41e3c4d5e4..4e40d3609a 100644 --- a/xen/arch/x86/hvm/vioapic.c +++ b/xen/arch/x86/hvm/vioapic.c @@ -43,7 +43,7 @@ /* HACK: Route IRQ0 only to VCPU0 to prevent time jumps. */ #define IRQ0_SPECIAL_ROUTING 1 -static void vioapic_deliver(struct hvm_vioapic *vioapic, unsigned int irq); +static void vioapic_deliver(struct hvm_vioapic *vioapic, unsigned int pin); static struct hvm_vioapic *addr_vioapic(const struct domain *d, unsigned long addr) diff --git a/xen/arch/x86/include/asm/genapic.h b/xen/arch/x86/include/asm/genapic.h index beeaddf19d..970df8ffe0 100644 --- a/xen/arch/x86/include/asm/genapic.h +++ b/xen/arch/x86/include/asm/genapic.h @@ -43,7 +43,7 @@ void cf_check send_IPI_self_legacy(uint8_t vector); void cf_check init_apic_ldr_flat(void); unsigned int cf_check cpu_mask_to_apicid_flat(const cpumask_t *cpumask); -void cf_check send_IPI_mask_flat(const cpumask_t *mask, int vector); +void cf_check send_IPI_mask_flat(const cpumask_t *cpumask, int vector); const cpumask_t *cf_check vector_allocation_cpumask_flat(int cpu); #define GENAPIC_FLAT \ .int_delivery_mode = dest_LowestPrio, \ diff --git a/xen/arch/x86/include/asm/guest_pt.h b/xen/arch/x86/include/asm/guest_pt.h index bde7588342..f616357107 100644 --- a/xen/arch/x86/include/asm/guest_pt.h +++ b/xen/arch/x86/include/asm/guest_pt.h @@ -422,7 +422,7 @@ static inline unsigned int guest_walk_to_page_order(const walk_t *gw) bool guest_walk_tables(const struct vcpu *v, struct p2m_domain *p2m, - unsigned long va, walk_t *gw, uint32_t pfec, + unsigned long va, walk_t *gw, uint32_t walk, gfn_t top_gfn, mfn_t top_mfn, void *top_map); /* Pretty-print the contents of a guest-walk */ diff --git a/xen/arch/x86/include/asm/hap.h b/xen/arch/x86/include/asm/hap.h index 9d12327b12..05e124ad57 100644 --- a/xen/arch/x86/include/asm/hap.h +++ b/xen/arch/x86/include/asm/hap.h @@ -30,7 +30,7 @@ void hap_vcpu_init(struct vcpu *v); int hap_track_dirty_vram(struct domain *d, unsigned long begin_pfn, unsigned int nr_frames, - XEN_GUEST_HANDLE(void) dirty_bitmap); + XEN_GUEST_HANDLE(void) guest_dirty_bitmap); extern const struct paging_mode *hap_paging_get_mode(struct vcpu *); int hap_set_allocation(struct domain *d, unsigned int pages, bool *preempted); diff --git a/xen/arch/x86/include/asm/hvm/io.h b/xen/arch/x86/include/asm/hvm/io.h index 8df33eb6cc..cad082f020 100644 --- a/xen/arch/x86/include/asm/hvm/io.h +++ b/xen/arch/x86/include/asm/hvm/io.h @@ -90,7 +90,7 @@ bool handle_mmio_with_translation(unsigned long gla, unsigned long gpfn, struct npfec); bool handle_pio(uint16_t port, unsigned int size, int dir); void hvm_interrupt_post(struct vcpu *v, int vector, int type); -void hvm_dpci_eoi(struct domain *d, unsigned int guest_irq); +void hvm_dpci_eoi(struct domain *d, unsigned int guest_gsi); void msix_write_completion(struct vcpu *); #ifdef CONFIG_HVM diff --git a/xen/arch/x86/include/asm/hvm/monitor.h b/xen/arch/x86/include/asm/hvm/monitor.h index 5276b0af08..02021be47b 100644 --- a/xen/arch/x86/include/asm/hvm/monitor.h +++ b/xen/arch/x86/include/asm/hvm/monitor.h @@ -25,7 +25,7 @@ bool hvm_monitor_cr(unsigned int index, unsigned long value, unsigned long old); #define hvm_monitor_crX(cr, new, old) \ hvm_monitor_cr(VM_EVENT_X86_##cr, new, old) -bool hvm_monitor_msr(unsigned int msr, uint64_t value, uint64_t old_value); +bool hvm_monitor_msr(unsigned int msr, uint64_t new_value, uint64_t old_value); void hvm_monitor_descriptor_access(uint64_t exit_info, uint64_t vmx_exit_qualification, uint8_t descriptor, bool is_write); diff --git a/xen/arch/x86/include/asm/hvm/svm/vmcb.h b/xen/arch/x86/include/asm/hvm/svm/vmcb.h index a1a8a7fd25..91221ff4e2 100644 --- a/xen/arch/x86/include/asm/hvm/svm/vmcb.h +++ b/xen/arch/x86/include/asm/hvm/svm/vmcb.h @@ -607,7 +607,7 @@ void setup_vmcb_dump(void); #define MSR_INTERCEPT_READ 1 #define MSR_INTERCEPT_WRITE 2 #define MSR_INTERCEPT_RW (MSR_INTERCEPT_WRITE | MSR_INTERCEPT_READ) -void svm_intercept_msr(struct vcpu *v, uint32_t msr, int enable); +void svm_intercept_msr(struct vcpu *v, uint32_t msr, int flags); #define svm_disable_intercept_for_msr(v, msr) svm_intercept_msr((v), (msr), MSR_INTERCEPT_NONE) #define svm_enable_intercept_for_msr(v, msr) svm_intercept_msr((v), (msr), MSR_INTERCEPT_RW) diff --git a/xen/arch/x86/include/asm/hvm/vmx/vmcs.h b/xen/arch/x86/include/asm/hvm/vmx/vmcs.h index d07fcb2bc9..24bf409d8f 100644 --- a/xen/arch/x86/include/asm/hvm/vmx/vmcs.h +++ b/xen/arch/x86/include/asm/hvm/vmx/vmcs.h @@ -656,10 +656,10 @@ bool vmx_msr_is_intercepted(struct vmx_msr_bitmap *msr_bitmap, unsigned int msr, bool is_write) __nonnull(1); void virtual_vmcs_enter(const struct vcpu *); void virtual_vmcs_exit(const struct vcpu *); -u64 virtual_vmcs_vmread(const struct vcpu *, u32 encoding); +u64 virtual_vmcs_vmread(const struct vcpu *, u32 vmcs_encoding); enum vmx_insn_errno virtual_vmcs_vmread_safe(const struct vcpu *v, u32 vmcs_encoding, u64 *val); -void virtual_vmcs_vmwrite(const struct vcpu *, u32 encoding, u64 val); +void virtual_vmcs_vmwrite(const struct vcpu *, u32 vmcs_encoding, u64 val); enum vmx_insn_errno virtual_vmcs_vmwrite_safe(const struct vcpu *v, u32 vmcs_encoding, u64 val); diff --git a/xen/arch/x86/include/asm/hvm/vmx/vvmx.h b/xen/arch/x86/include/asm/hvm/vmx/vvmx.h index dc9db69258..1e4bbc0d78 100644 --- a/xen/arch/x86/include/asm/hvm/vmx/vvmx.h +++ b/xen/arch/x86/include/asm/hvm/vmx/vvmx.h @@ -144,9 +144,9 @@ enum vvmcs_encoding_type { VVMCS_TYPE_HSTATE, }; -u64 get_vvmcs_virtual(void *vvmcs, u32 encoding); +u64 get_vvmcs_virtual(void *vvmcs, u32 vmcs_encoding); u64 get_vvmcs_real(const struct vcpu *, u32 encoding); -void set_vvmcs_virtual(void *vvmcs, u32 encoding, u64 val); +void set_vvmcs_virtual(void *vvmcs, u32 vmcs_encoding, u64 val); void set_vvmcs_real(const struct vcpu *, u32 encoding, u64 val); enum vmx_insn_errno get_vvmcs_virtual_safe(void *vvmcs, u32 encoding, u64 *val); enum vmx_insn_errno get_vvmcs_real_safe(const struct vcpu *, u32 encoding, @@ -180,9 +180,9 @@ int nvmx_handle_vmx_insn(struct cpu_user_regs *regs, unsigned int exit_reason); int nvmx_msr_read_intercept(unsigned int msr, u64 *msr_content); -void nvmx_update_exec_control(struct vcpu *v, u32 value); +void nvmx_update_exec_control(struct vcpu *v, u32 host_cntrl); void nvmx_update_secondary_exec_control(struct vcpu *v, - unsigned long value); + unsigned long host_cntrl); void nvmx_update_exception_bitmap(struct vcpu *v, unsigned long value); void nvmx_switch_guest(void); void nvmx_idtv_handling(void); diff --git a/xen/arch/x86/include/asm/io_apic.h b/xen/arch/x86/include/asm/io_apic.h index ef0878b09e..9b22448ef0 100644 --- a/xen/arch/x86/include/asm/io_apic.h +++ b/xen/arch/x86/include/asm/io_apic.h @@ -207,6 +207,6 @@ extern int restore_IO_APIC_setup(struct IO_APIC_route_entry **ioapic_entries, unsigned highest_gsi(void); int ioapic_guest_read( unsigned long physbase, unsigned int reg, u32 *pval); -int ioapic_guest_write(unsigned long physbase, unsigned int reg, u32 pval); +int ioapic_guest_write(unsigned long physbase, unsigned int reg, u32 val); #endif diff --git a/xen/arch/x86/include/asm/irq.h b/xen/arch/x86/include/asm/irq.h index 424b0e1af8..f49388a47f 100644 --- a/xen/arch/x86/include/asm/irq.h +++ b/xen/arch/x86/include/asm/irq.h @@ -112,7 +112,7 @@ void cf_check enable_8259A_irq(struct irq_desc *); int i8259A_irq_pending(unsigned int irq); void mask_8259A(void); void unmask_8259A(void); -void init_8259A(int aeoi); +void init_8259A(int auto_eoi); void make_8259A_irq(unsigned int irq); bool bogus_8259A_irq(unsigned int irq); int i8259A_suspend(void); @@ -141,7 +141,7 @@ struct arch_pirq { #define pirq_dpci(pirq) ((pirq) ? &(pirq)->arch.hvm.dpci : NULL) #define dpci_pirq(pd) container_of(pd, struct pirq, arch.hvm.dpci) -int pirq_shared(struct domain *d , int irq); +int pirq_shared(struct domain *d , int pirq); int map_domain_pirq(struct domain *d, int pirq, int irq, int type, void *data); @@ -149,7 +149,7 @@ int unmap_domain_pirq(struct domain *d, int pirq); int get_free_pirq(struct domain *d, int type); int get_free_pirqs(struct domain *, unsigned int nr); void free_domain_pirqs(struct domain *d); -int map_domain_emuirq_pirq(struct domain *d, int pirq, int irq); +int map_domain_emuirq_pirq(struct domain *d, int pirq, int emuirq); int unmap_domain_pirq_emuirq(struct domain *d, int pirq); /* Reset irq affinities to match the given CPU mask. */ diff --git a/xen/arch/x86/include/asm/mem_access.h b/xen/arch/x86/include/asm/mem_access.h index 8957e1181c..1a52a10322 100644 --- a/xen/arch/x86/include/asm/mem_access.h +++ b/xen/arch/x86/include/asm/mem_access.h @@ -39,7 +39,7 @@ int p2m_set_suppress_ve(struct domain *d, gfn_t gfn, bool suppress_ve, struct xen_hvm_altp2m_suppress_ve_multi; int p2m_set_suppress_ve_multi(struct domain *d, - struct xen_hvm_altp2m_suppress_ve_multi *suppress_ve); + struct xen_hvm_altp2m_suppress_ve_multi *sve); int p2m_get_suppress_ve(struct domain *d, gfn_t gfn, bool *suppress_ve, unsigned int altp2m_idx); diff --git a/xen/arch/x86/include/asm/mpspec.h b/xen/arch/x86/include/asm/mpspec.h index 1246eece0b..cf8b360259 100644 --- a/xen/arch/x86/include/asm/mpspec.h +++ b/xen/arch/x86/include/asm/mpspec.h @@ -26,7 +26,7 @@ extern void mp_register_lapic_address (u64 address); extern void mp_register_ioapic (u8 id, u32 address, u32 gsi_base); extern void mp_override_legacy_irq (u8 bus_irq, u8 polarity, u8 trigger, u32 gsi); extern void mp_config_acpi_legacy_irqs (void); -extern int mp_register_gsi (u32 gsi, int edge_level, int active_high_low); +extern int mp_register_gsi (u32 gsi, int triggering, int polarity); #endif /* CONFIG_ACPI */ #define PHYSID_ARRAY_SIZE BITS_TO_LONGS(MAX_APICS) diff --git a/xen/arch/x86/include/asm/msi.h b/xen/arch/x86/include/asm/msi.h index a53ade95c9..687df5942a 100644 --- a/xen/arch/x86/include/asm/msi.h +++ b/xen/arch/x86/include/asm/msi.h @@ -82,7 +82,7 @@ struct hw_interrupt_type; struct msi_desc; /* Helper functions */ extern int pci_enable_msi(struct msi_info *msi, struct msi_desc **desc); -extern void pci_disable_msi(struct msi_desc *desc); +extern void pci_disable_msi(struct msi_desc *msi_desc); extern int pci_prepare_msix(u16 seg, u8 bus, u8 devfn, bool off); extern void pci_cleanup_msi(struct pci_dev *pdev); extern int setup_msi_irq(struct irq_desc *, struct msi_desc *); @@ -220,7 +220,7 @@ struct arch_msix { }; void early_msi_init(void); -void msi_compose_msg(unsigned vector, const cpumask_t *mask, +void msi_compose_msg(unsigned vector, const cpumask_t *cpu_mask, struct msi_msg *msg); void __msi_set_enable(u16 seg, u8 bus, u8 slot, u8 func, int pos, int enable); void cf_check mask_msi_irq(struct irq_desc *); diff --git a/xen/arch/x86/include/asm/p2m.h b/xen/arch/x86/include/asm/p2m.h index 40545f5fa8..67bd3201bc 100644 --- a/xen/arch/x86/include/asm/p2m.h +++ b/xen/arch/x86/include/asm/p2m.h @@ -632,7 +632,7 @@ void p2m_change_type_range(struct domain *d, p2m_type_t ot, p2m_type_t nt); /* Compare-exchange the type of a single p2m entry */ -int p2m_change_type_one(struct domain *d, unsigned long gfn, +int p2m_change_type_one(struct domain *d, unsigned long gfn_l, p2m_type_t ot, p2m_type_t nt); /* Synchronously change the p2m type for a range of gfns */ @@ -661,9 +661,9 @@ int set_identity_p2m_entry(struct domain *d, unsigned long gfn, p2m_access_t p2ma, unsigned int flag); int clear_identity_p2m_entry(struct domain *d, unsigned long gfn); /* HVM-only callers can use these directly: */ -int p2m_add_identity_entry(struct domain *d, unsigned long gfn, +int p2m_add_identity_entry(struct domain *d, unsigned long gfn_l, p2m_access_t p2ma, unsigned int flag); -int p2m_remove_identity_entry(struct domain *d, unsigned long gfn); +int p2m_remove_identity_entry(struct domain *d, unsigned long gfn_l); /* * Populate-on-demand @@ -924,7 +924,7 @@ int p2m_altp2m_propagate_change(struct domain *d, gfn_t gfn, p2m_type_t p2mt, p2m_access_t p2ma); /* Set a specific p2m view visibility */ -int p2m_set_altp2m_view_visibility(struct domain *d, unsigned int idx, +int p2m_set_altp2m_view_visibility(struct domain *d, unsigned int altp2m_idx, uint8_t visible); #else /* !CONFIG_HVM */ struct p2m_domain *p2m_get_altp2m(struct vcpu *v); diff --git a/xen/arch/x86/include/asm/paging.h b/xen/arch/x86/include/asm/paging.h index 403243bfbd..a72a8d63ce 100644 --- a/xen/arch/x86/include/asm/paging.h +++ b/xen/arch/x86/include/asm/paging.h @@ -246,7 +246,7 @@ paging_fault(unsigned long va, struct cpu_user_regs *regs) } /* Handle invlpg requests on vcpus. */ -void paging_invlpg(struct vcpu *v, unsigned long va); +void paging_invlpg(struct vcpu *v, unsigned long linear); /* * Translate a guest virtual address to the frame number that the diff --git a/xen/arch/x86/include/asm/psr.h b/xen/arch/x86/include/asm/psr.h index c2257da7fc..8ecb7a0eea 100644 --- a/xen/arch/x86/include/asm/psr.h +++ b/xen/arch/x86/include/asm/psr.h @@ -81,7 +81,7 @@ int psr_get_info(unsigned int socket, enum psr_type type, int psr_get_val(struct domain *d, unsigned int socket, uint32_t *val, enum psr_type type); int psr_set_val(struct domain *d, unsigned int socket, - uint64_t val, enum psr_type type); + uint64_t new_val, enum psr_type type); void psr_domain_init(struct domain *d); void psr_domain_free(struct domain *d); diff --git a/xen/arch/x86/include/asm/setup.h b/xen/arch/x86/include/asm/setup.h index ae0dd3915a..29ccacfd7f 100644 --- a/xen/arch/x86/include/asm/setup.h +++ b/xen/arch/x86/include/asm/setup.h @@ -33,7 +33,7 @@ static inline void vesa_init(void) {}; int construct_dom0( struct domain *d, - const module_t *kernel, unsigned long kernel_headroom, + const module_t *image, unsigned long image_headroom, module_t *initrd, char *cmdline); void setup_io_bitmap(struct domain *d); diff --git a/xen/arch/x86/include/asm/uaccess.h b/xen/arch/x86/include/asm/uaccess.h index 684fccd95c..7443519d5b 100644 --- a/xen/arch/x86/include/asm/uaccess.h +++ b/xen/arch/x86/include/asm/uaccess.h @@ -10,10 +10,10 @@ #include unsigned int copy_to_guest_pv(void __user *to, const void *from, - unsigned int len); -unsigned int clear_guest_pv(void __user *to, unsigned int len); + unsigned int n); +unsigned int clear_guest_pv(void __user *to, unsigned int n); unsigned int copy_from_guest_pv(void *to, const void __user *from, - unsigned int len); + unsigned int n); /* Handles exceptions in both to and from, but doesn't do access_ok */ unsigned int copy_to_guest_ll(void __user*to, const void *from, unsigned int n); diff --git a/xen/arch/x86/include/asm/xstate.h b/xen/arch/x86/include/asm/xstate.h index 7ab0bdde89..4fb4312192 100644 --- a/xen/arch/x86/include/asm/xstate.h +++ b/xen/arch/x86/include/asm/xstate.h @@ -87,7 +87,7 @@ struct xstate_bndcsr { }; /* extended state operations */ -bool __must_check set_xcr0(u64 xfeatures); +bool __must_check set_xcr0(u64 val); uint64_t get_xcr0(void); void set_msr_xss(u64 xss); uint64_t get_msr_xss(void); diff --git a/xen/include/xen/lib/x86/cpu-policy.h b/xen/include/xen/lib/x86/cpu-policy.h index 6d5e9edd26..bab3eecda6 100644 --- a/xen/include/xen/lib/x86/cpu-policy.h +++ b/xen/include/xen/lib/x86/cpu-policy.h @@ -451,23 +451,24 @@ typedef xen_msr_entry_t msr_entry_buffer_t[]; * Serialise the CPUID leaves of a cpu_policy object into an array of cpuid * leaves. * - * @param policy The cpu_policy to serialise. - * @param leaves The array of leaves to serialise into. - * @param nr_entries The number of entries in 'leaves'. + * @param p The cpu_policy to serialise. + * @param leaves The array of leaves to serialise into. + * @param nr_entries_p The number of entries in 'leaves'. * @returns -errno * * Writes at most CPUID_MAX_SERIALISED_LEAVES. May fail with -ENOBUFS if the * leaves array is too short. On success, nr_entries is updated with the * actual number of leaves written. */ -int x86_cpuid_copy_to_buffer(const struct cpu_policy *policy, - cpuid_leaf_buffer_t leaves, uint32_t *nr_entries); +int x86_cpuid_copy_to_buffer(const struct cpu_policy *p, + cpuid_leaf_buffer_t leaves, + uint32_t *nr_entries_p); /** * Unserialise the CPUID leaves of a cpu_policy object into an array of cpuid * leaves. * - * @param policy The cpu_policy to unserialise into. + * @param p The cpu_policy to unserialise into. * @param leaves The array of leaves to unserialise from. * @param nr_entries The number of entries in 'leaves'. * @param err_leaf Optional hint for error diagnostics. @@ -481,7 +482,7 @@ int x86_cpuid_copy_to_buffer(const struct cpu_policy *policy, * No content validation of in-range leaves is performed. Synthesised data is * recalculated. */ -int x86_cpuid_copy_from_buffer(struct cpu_policy *policy, +int x86_cpuid_copy_from_buffer(struct cpu_policy *p, const cpuid_leaf_buffer_t leaves, uint32_t nr_entries, uint32_t *err_leaf, uint32_t *err_subleaf); @@ -489,22 +490,22 @@ int x86_cpuid_copy_from_buffer(struct cpu_policy *policy, /** * Serialise the MSRs of a cpu_policy object into an array. * - * @param policy The cpu_policy to serialise. - * @param msrs The array of msrs to serialise into. - * @param nr_entries The number of entries in 'msrs'. + * @param p The cpu_policy to serialise. + * @param msrs The array of msrs to serialise into. + * @param nr_entries_p The number of entries in 'msrs'. * @returns -errno * * Writes at most MSR_MAX_SERIALISED_ENTRIES. May fail with -ENOBUFS if the * buffer array is too short. On success, nr_entries is updated with the * actual number of msrs written. */ -int x86_msr_copy_to_buffer(const struct cpu_policy *policy, - msr_entry_buffer_t msrs, uint32_t *nr_entries); +int x86_msr_copy_to_buffer(const struct cpu_policy *p, + msr_entry_buffer_t msrs, uint32_t *nr_entries_p); /** * Unserialise the MSRs of a cpu_policy object from an array of msrs. * - * @param policy The cpu_policy object to unserialise into. + * @param p The cpu_policy object to unserialise into. * @param msrs The array of msrs to unserialise from. * @param nr_entries The number of entries in 'msrs'. * @param err_msr Optional hint for error diagnostics. @@ -518,7 +519,7 @@ int x86_msr_copy_to_buffer(const struct cpu_policy *policy, * * No content validation is performed on the data stored in the policy object. */ -int x86_msr_copy_from_buffer(struct cpu_policy *policy, +int x86_msr_copy_from_buffer(struct cpu_policy *p, const msr_entry_buffer_t msrs, uint32_t nr_entries, uint32_t *err_msr); -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 29 16:48:44 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 16:48:44 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556993.869941 (Exim 4.92) (envelope-from ) id 1qEuol-0001JR-O2; Thu, 29 Jun 2023 16:48:27 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556993.869941; Thu, 29 Jun 2023 16:48:27 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEuol-0001JK-LC; Thu, 29 Jun 2023 16:48:27 +0000 Received: by outflank-mailman (input) for mailman id 556993; Thu, 29 Jun 2023 16:48:26 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEuok-0001JC-Ek for xen-devel@lists.xenproject.org; Thu, 29 Jun 2023 16:48:26 +0000 Received: from mga11.intel.com (mga11.intel.com [192.55.52.93]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id bfd78cea-169c-11ee-8611-37d641c3527e; Thu, 29 Jun 2023 18:48:20 +0200 (CEST) Received: from fmsmga005.fm.intel.com ([10.253.24.32]) by fmsmga102.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 29 Jun 2023 09:48:10 -0700 Received: from orsmsx601.amr.corp.intel.com ([10.22.229.14]) by fmsmga005.fm.intel.com with ESMTP; 29 Jun 2023 09:48:09 -0700 Received: from orsmsx610.amr.corp.intel.com (10.22.229.23) by ORSMSX601.amr.corp.intel.com (10.22.229.14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Thu, 29 Jun 2023 09:48:08 -0700 Received: from orsmsx612.amr.corp.intel.com (10.22.229.25) by ORSMSX610.amr.corp.intel.com (10.22.229.23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Thu, 29 Jun 2023 09:48:08 -0700 Received: from orsedg603.ED.cps.intel.com (10.7.248.4) by orsmsx612.amr.corp.intel.com (10.22.229.25) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27 via Frontend Transport; Thu, 29 Jun 2023 09:48:08 -0700 Received: from NAM12-MW2-obe.outbound.protection.outlook.com (104.47.66.49) by edgegateway.intel.com (134.134.137.100) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2507.27; Thu, 29 Jun 2023 09:48:07 -0700 Received: from PH8PR11MB6879.namprd11.prod.outlook.com (2603:10b6:510:229::22) by CH3PR11MB7249.namprd11.prod.outlook.com (2603:10b6:610:146::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.23; Thu, 29 Jun 2023 16:48:04 +0000 Received: from PH8PR11MB6879.namprd11.prod.outlook.com ([fe80::b33c:de68:eacf:e9c4]) by PH8PR11MB6879.namprd11.prod.outlook.com ([fe80::b33c:de68:eacf:e9c4%3]) with mapi id 15.20.6500.036; Thu, 29 Jun 2023 16:48:04 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: bfd78cea-169c-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1688057300; x=1719593300; h=message-id:date:subject:to:cc:references:from: in-reply-to:content-transfer-encoding:mime-version; bh=GBh+Sv/amPAsxBcRSJeMklTMNhqeaL5uZpm84YynRHM=; b=YMR++dY1wWQBIvEmjc78cWhCGP9ceYo4C92ZmLFFz17LIvP+uLfj4QoW 7X8arb13F2LE68QSq7RX8d2PWtCaLL7PkVl9iI5SXssaj2wVx4N2pNUlB ySc/HoKM8c9Of9SHHtJaL1TZOD1N+dw192Bq/e29MY5q3KXpiK87ts0Cm 845FhRQHoMqF4EdtHFbUjKJo0/ALHpVxCv74dm1FyvuamqXJQ23er2tIW xvstl7v5jywognuJy+dJ+M+b+UAkw8MLyiVbDqDxRenIexMyAqLFMRczq RafGJeqxohbETu0oSXC4R1vee+cNYHrmYpcJkgG7bhafaO24RqAsRshDS A==; X-IronPort-AV: E=McAfee;i="6600,9927,10756"; a="359646261" X-IronPort-AV: E=Sophos;i="6.01,168,1684825200"; d="scan'208";a="359646261" X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10756"; a="1047857834" X-IronPort-AV: E=Sophos;i="6.01,168,1684825200"; d="scan'208";a="1047857834" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=H8edgAVvHxvSbvnz5/zEwsqt/EoBOpdEQRacO2GixX+kjIGwV7lTLxRbOZIT7yBKcXqoOUBxVXRKO/lgSaDwbMypzniHHNud8CzWpUVQACWZmu+QPaFzxMF8PBlbhALp2gZyLmxcgHUjLYltgzgP2yjOsxKwBfGhOCM/GujQgDsRd2RKBkrh+Jt+36kCh3/a9wvF936K4ahje7w/kbHP05RZMHTO1lq2eMQOUq0BpL14fSXYMtF32rwAEuosyAdqTcvcwkDYOLKJWDtFLIJatB7UIhe+uz01w4anzmmloLtgRe4BmfQEJJtFdVGhfgIYy1BjLuSYRH6Hl6hld4LeFQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=obaEIbrZyVFCMlpZnXrItx5UZtL53gws9Zj7nTlNfDM=; b=VrTu2gxKVnjSGAVcp2q4Xgh4iF2P5iHZ4wZkJqQawvDXB5Sc+8XYfaoNz7t8gA88TtrPa/WQ6NOxpw3JA32zBi4O4ZY9aJwfYGRIpMo+EtjEI5Xp8aeES8EPTgP96jXLkoVYGohu8Yn32iEAtOT1T04eJkbaF4xXIp67+lvlUvIrq6whNxMwssjEI1dPgT4gd43rNuIjFRhfpg5a3TQlsDhsjynulPz3AD73oop+g1GUTga0BScG7ZNQAB4DKZksoyZ1UKkMyoLHi6xPEg/oOm4WXGahbiDjLlx9GjE0Z9iNRICoCx9bTNQLaTZfaR4DGfQH9LanVUk8lMy+1V+YHw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com; dkim=pass header.d=intel.com; arc=none Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=intel.com; Message-ID: <2401c7ba-6eed-f2b2-cbe3-d0ebccc7bc26@intel.com> Date: Thu, 29 Jun 2023 09:48:01 -0700 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [QEMU PATCH 1/1] virtgpu: do not destroy resources when guest suspend Content-Language: en-US To: Robert Beckett , Gerd Hoffmann CC: "Chen, Jiqian" , =?UTF-8?Q?Marc-Andr=c3=a9_Lureau?= , Damien Hedde , "Michael S . Tsirkin" , Stefano Stabellini , Anthony PERARD , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Jan Beulich , "Dr . David Alan Gilbert" , "qemu-devel@nongnu.org" , "xen-devel@lists.xenproject.org" , "Deucher, Alexander" , "Koenig, Christian" , "Hildebrand, Stewart" , Xenia Ragiadakou , "Huang, Honglei1" , "Zhang, Julia" , "Huang, Ray" References: <20230608025655.1674357-1-Jiqian.Chen@amd.com> <20230608025655.1674357-2-Jiqian.Chen@amd.com> <2164ff79-aa09-d959-cc61-c7a2a21db5e3@collabora.com> <2s33vb2tfogntkyk5laxzcmgexf42mhkpwr2gh3gjvpitav6ez@h5zbmuklzmv5> From: "Kim, Dongwon" In-Reply-To: Content-Type: text/plain; charset="UTF-8"; format=flowed Content-Transfer-Encoding: 8bit X-ClientProxiedBy: SJ0PR03CA0127.namprd03.prod.outlook.com (2603:10b6:a03:33c::12) To PH8PR11MB6879.namprd11.prod.outlook.com (2603:10b6:510:229::22) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: PH8PR11MB6879:EE_|CH3PR11MB7249:EE_ X-MS-Office365-Filtering-Correlation-Id: 5c3b9f96-6043-4b81-cad1-08db78c09baf X-LD-Processed: 46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: ireVCXVjeUULo/PGrFgABEpuQ57NNy88oL/4KjuePAfZRsU0QZ4lwHvfKV5LW+Af5v6WZG03hLrw6CJw4hmD9YpwlTme4QS0hbfT1AZxnrBTiXZjQkXrYgTEeeJD/Zwa6J/2bhTsGa1MY6CkD5tSOz6VhuVn+fAsxSPkbyvvatBB5ib5QzNu9rHQrE+g1rGQ+yO0lqC3bnVLDYb40yFA9UH/UCmXQOsy6Wgsemm9ki8wA3nP0kPPnjAtfUryJQ2y3DvAK5A+t90v2qEzu3cUmwvfNsvQYbxkX+CtIzs0AUEUwB/heTBTpk2t/Bqa4MSWBhA6Cm1s4J3MyWzjtl6IxmLFl0SykjYcVDwV8HYwcga943+kM5JoRoFtLf+yKPdjXwVW6Zu7KY5QJFFYwYeu/a0TdZt5Pet7ikTeeZ7iKoSvdqKcmnMvrez5KyReoIK9sGfs+K/O/2Yc8U7E2bKYFdTBwbaneRaTs+/2zlYxOT2Z5ucvvziG/uvcsZnueNPQFEE17T1SZLiI8ERqx3ghbZ0jwhKT28icOHGPMj5OfZKbPgYC2RnCpbFM4OmHi8hMFGY8FcmHvKoi4ZkvB1JSiRxo2vE/5zu7BbIYsen5w8ACIAIEKzWGlftkr1B306uBXlAYOaj8SPIYpadW0e2+Yw== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:PH8PR11MB6879.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(366004)(376002)(136003)(396003)(346002)(39860400002)(451199021)(83380400001)(66476007)(316002)(66946007)(8676002)(66556008)(8936002)(6512007)(186003)(6486002)(53546011)(6506007)(26005)(4326008)(966005)(6666004)(2616005)(110136005)(54906003)(41300700001)(7416002)(5660300002)(2906002)(478600001)(15650500001)(38100700002)(82960400001)(31696002)(86362001)(31686004)(36756003)(43740500002)(45980500001);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?QlpQQVl2eUxpaHZrMUpwbkNlalppc2E4RHFkTjUra08zbExoNFNrN0pwS2NP?= =?utf-8?B?a21hcTVvMTdEejU3M0FENlEzdjNBQmtIT3llUWtTUENPSWZ1SnB1bmVjd25H?= =?utf-8?B?MTNZMGExZHE5ay9qbHpjQW83MUVoWnBVWUFGY015emhmeXU3aGRQcWx0dHlv?= =?utf-8?B?RU4zaGxJS3ByZE5aalVReUxRSXFjNThCZEI4a0R1eFFSV2JtMlVwdGluNW5n?= =?utf-8?B?NGl2eFBoaWppNnQxY1RZSk44VjgzK3FzOTY4RGNxQjEzSExUaGRnZDRjNVI4?= =?utf-8?B?RDVuOTVrUFJJYkhXeWIwbjdySUFNa1p3UUJBV3VwM2wvclBIMFJtbXpQazFy?= =?utf-8?B?NjBxaEV6OUdVWjJhT3RSUVk0aXFjMGxsNTBJZndqZGxIdnFYREl0Q3Riek1K?= =?utf-8?B?NHU3K1NCdE5pdVBSSjZVRG1zRk5yV3Zjckc1UXR1elJqcXh0dkdXVkJZYVZT?= =?utf-8?B?b0pMREVSbzRvNm9pY2l3bXNsRzltVFhKTHQvd25xZGl5UkNUQkF2blFUSFVP?= =?utf-8?B?VjdYQUF6S2VjQ2UyNzZybkgrbVFOeXIzU0xKNTRNSE45VXp2ci9kZGZRS0Zr?= =?utf-8?B?WVhpRE5INzd5KzZNK3lpb1N6UWVRV0RWSnV2QnhHQ0hBaEpBSmhiWS9qZGlx?= =?utf-8?B?RDFwckdFVnZmZzMxRmxmRHR4cmdXSXk0L0VuRkxxRnQ5SXpIRXFRZEVtbEJJ?= =?utf-8?B?ZmlDUzUzZUxmUWpNRHRNOExkU2xjNXRKWWRvMG9ScmxPS0dNTWErYlFJQUNl?= =?utf-8?B?Vld3Q3IxRnN6OStZVmNmcVZLWWkxUE1Ld2dIcGdpUHNZbzIzU3BBaTN4UlZK?= =?utf-8?B?Rm9FSFlKWWVVQUp1Y0UrMnNFd2RGRG1ybzJOVUtVM0ViNm8yT1RoeExDdW81?= =?utf-8?B?ZHBudjFUOVlvQU1GQTRPV005UFRqeDdobmp0b09kalVXbW5SeXZsdDZ3TTVQ?= =?utf-8?B?U29MQThXRmtCeDdxeExYUTdkejdmZTRMYU1KMzhxa3JKSmRyVFlpQjZWY0FT?= =?utf-8?B?ZG9jQmNFa3hkdnI1TFdoY2RrZm1DZUl6SURwQmQ2N0ZUK3BVa3JpTFNXY1I3?= =?utf-8?B?cjdLV3JXZjB2S0JCU0JPR2wzWHdCN2NML3VkRTVaUm9DbXBtUllUTXAyTVRw?= =?utf-8?B?TnFCblBDNk9sc2s2bk94UEI1RUtqMWJEWHVYd0JJdEd5dlNscjBETElBSExy?= =?utf-8?B?TWY1QlMvaWhTbUJqNVQ0WS9TZStmZzh5QkZvd1pPc2dFZlIveW85bEpIVk02?= =?utf-8?B?cVhwelAySm1RaG5MYzJiamgwcnYvM1hHUDN5ZTJxYUh1c0UxZUEzQTNUYlZs?= =?utf-8?B?UExRdUlHWmJBZEF0TW5nZ05hN0kzdlREUk5mRFp1NXlUc2RJNjRtd0tKRElz?= =?utf-8?B?bWZxN3ZqUGZxSHJrek5YZmtjaGxkdzAvUUM4ck5ReVNlTzAveU11cGI0azV3?= =?utf-8?B?MmhySnoxcUVUaEFsZjhhZGhRS0lzVi9OWGZWNjVnNFVXeXhJbnMyQy93YWk3?= =?utf-8?B?TTVWQUZXeWUrTWpTVFIvcGxFVFE2bkNUVlBKWVA2N3JGd2tFQVdmUGJlZUVC?= =?utf-8?B?QnNIM3lyOTRYWm01Rk1YaWVoMGxYRGErcEdnc3VZamxVWXBlSFozaFI3NmEz?= =?utf-8?B?V0JLWGJyaXRXNTFrdHJTVlZTZFZyK0JoRzVvbFp4dHkzY3YyM0c0c1lha0Y1?= =?utf-8?B?eTU2V2RjRkw4SUREWkpDRGlyR280aHNCM3VZZmpkQW5lM3Y4NE1GQVVaWFdG?= =?utf-8?B?ODV2aVltZHZvTXRXUDVEOHNXOGtXSDI5a0d5czZvQ1M4ZWMzK052S09nZFh5?= =?utf-8?B?MUExUkdBMVd1M3NBUjFLbHNjSFlqL0VNMWxxTVNBbWVrMzk0Q3pZRmduZjAz?= =?utf-8?B?VEF4K3ZSRU1YdTRndDdobzY2TEY4YkRwU2t1NlpYSEg5dWNsY0RpZTdQRjZm?= =?utf-8?B?K0F1VWh0ZzFNZjRRNUtrbGNKd0JQMWNCY1pGSXlYVlEwZ3dYR0lBYlBVMXhN?= =?utf-8?B?TTZqc3hFSWFzRjJ3NnU1VGlvbUFSQkY4MHM0NUZFd05YMlYrSnVDaURyeFQx?= =?utf-8?B?REdhUE4zUEs1b3drclFvSDBRTWFJZkxoZlFTSFh5eHdrcmoyNFM5WEhORlNo?= =?utf-8?Q?xjcB5/IxjaqABRR2MsnUkJSoW?= X-MS-Exchange-CrossTenant-Network-Message-Id: 5c3b9f96-6043-4b81-cad1-08db78c09baf X-MS-Exchange-CrossTenant-AuthSource: PH8PR11MB6879.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 Jun 2023 16:48:04.6022 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 46c98d88-e344-4ed4-8496-4ed7712e255d X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 0U1QJPdTd9mkrKw7BOzU/TMlu/ekw7A/t9U2IwwYuCzPDCp2SpPghJ+M1CTfj2fbieHPKL+hP8ji8wG1ZWUr5Q== X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH3PR11MB7249 X-OriginatorOrg: intel.com On 6/21/2023 4:14 AM, Robert Beckett wrote: > > On 21/06/2023 09:39, Gerd Hoffmann wrote: >> On Tue, Jun 20, 2023 at 01:26:15PM +0100, Robert Beckett wrote: >>> On 20/06/2023 10:41, Gerd Hoffmann wrote: >>>>     Hi, >>>> >>>>>> The guest driver should be able to restore resources after resume. >>>>> Thank you for your suggestion! >>>>> As far as I know, resources are created on host side and guest has >>>>> no backup, if resources are destroyed, guest can't restore them. >>>>> Or do you mean guest driver need to send commands to re-create >>>>> resources after resume? >>>> The later.  The guest driver knows which resources it has created, >>>> it can restore them after suspend. >>> Are you sure that this is viable? >>> >>> How would you propose that a guest kernel could reproduce a resource, >>> including pixel data upload during a resume? >>> >>> The kernel would not have any of the pixel data to transfer to host. >> Depends on the of resource type.  For resources which are created by >> uploading pixel data (using VIRTIO_GPU_CMD_TRANSFER_TO_HOST_*) a guest >> mirror exists which can be used for re-upload. > > unfortunately this is not always the case. > > https://gitlab.freedesktop.org/mesa/mesa/-/blob/main/src/gallium/drivers/virgl/virgl_resource.c#L668 > > > Often mesa will decide that it won't need to access a resource again > after initial upload (textures etc). In this case, if it is able to > copy back from host if needed, it will not maintain the guest shadow > copy. Instead it will create a single page proxy object. The transfer > to host will then over fill it to the correct size. > > I think this was a fairly huge optimization for them. > I have been only focused on scanout blob so didn't think too much about all virgl objects but aren't all the virtio-gpu-object will be maintained until they are removed by the driver regardless of the type of data they contain? Does Mesa (virgl) remove those objects after they are uploaded to the host? >> >> For resources filled by gl rendering ops this is indeed not the case. >> >>> Could you explain how you anticipate the guest being able to >>> reproduce the >>> resources please? >> Same you do on physical hardware?  Suspend can poweroff your PCI >> devices, so there must be some standard way to handle that situation >> for resources stored in gpu device memory, which is very similar to >> the problem we have here. > > In traditional PCI gfx card setups, TTM is used as the memory manager > in the kernel. This is used to migrate the buffers back from VRAM to > system pages during a suspend. > > This would be suitable for use to track host blob buffers that get > mapped to guest via the PCI BAR, though would be a significant > re-architecting of virtio gpu driver. > > It would not help with the previously mentioned proxied resources. > Though in theory the driver could read the resources back from host to > guest pages during suspend, this would then be potentially complicated > by suspend time alloc failures etc. > > > As virtio drivers are by design paravirt drivers ,I think it is > reasonable to accept some knowledge with and cooperation with the host > to manage suspend/resume. > > It seems to me like a lot of effort and long term maintenance to add > support for transparent suspend/resume that would otherwise be unneeded. > > Perhaps others have alternative designs for this? > >> >> take care, >>    Gerd >> > From xen-devel-bounces@lists.xenproject.org Thu Jun 29 16:53:20 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 16:53:20 +0000 Received: from list by lists.xenproject.org with outflank-mailman.556999.869951 (Exim 4.92) (envelope-from ) id 1qEutT-0002q8-Cp; Thu, 29 Jun 2023 16:53:19 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 556999.869951; Thu, 29 Jun 2023 16:53:19 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEutT-0002pz-95; Thu, 29 Jun 2023 16:53:19 +0000 Received: by outflank-mailman (input) for mailman id 556999; Thu, 29 Jun 2023 16:53:18 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEutS-0002pp-6U for xen-devel@lists.xenproject.org; Thu, 29 Jun 2023 16:53:18 +0000 Received: from mga03.intel.com (mga03.intel.com [134.134.136.65]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 6fb227df-169d-11ee-8611-37d641c3527e; Thu, 29 Jun 2023 18:53:15 +0200 (CEST) Received: from fmsmga008.fm.intel.com ([10.253.24.58]) by orsmga103.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 29 Jun 2023 09:53:12 -0700 Received: from orsmsx603.amr.corp.intel.com ([10.22.229.16]) by fmsmga008.fm.intel.com with ESMTP; 29 Jun 2023 09:53:08 -0700 Received: from orsmsx610.amr.corp.intel.com (10.22.229.23) by ORSMSX603.amr.corp.intel.com (10.22.229.16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Thu, 29 Jun 2023 09:53:07 -0700 Received: from ORSEDG601.ED.cps.intel.com (10.7.248.6) by orsmsx610.amr.corp.intel.com (10.22.229.23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27 via Frontend Transport; Thu, 29 Jun 2023 09:53:07 -0700 Received: from NAM04-DM6-obe.outbound.protection.outlook.com (104.47.73.43) by edgegateway.intel.com (134.134.137.102) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2507.27; Thu, 29 Jun 2023 09:53:06 -0700 Received: from PH8PR11MB6879.namprd11.prod.outlook.com (2603:10b6:510:229::22) by CH0PR11MB5281.namprd11.prod.outlook.com (2603:10b6:610:bc::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.15; Thu, 29 Jun 2023 16:53:03 +0000 Received: from PH8PR11MB6879.namprd11.prod.outlook.com ([fe80::b33c:de68:eacf:e9c4]) by PH8PR11MB6879.namprd11.prod.outlook.com ([fe80::b33c:de68:eacf:e9c4%3]) with mapi id 15.20.6500.036; Thu, 29 Jun 2023 16:53:03 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 6fb227df-169d-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1688057595; x=1719593595; h=message-id:date:subject:to:cc:references:from: in-reply-to:content-transfer-encoding:mime-version; bh=VQKM/nYZDs4SYwysuoM/QoQJyADBTBIL1GudZFRG944=; b=WwEoMuj8IxiHXhdDGA/u07t8tRYqT2QKRJCdCNLQAwiucPEc/0X8vq8/ 51se/90ffkUPN+kW3q80bBj4yb0WDzxQRVqcqYekU3MjQZTUvAV+UySQM 19ADNcNgGg7cTxGSAehXkX8JKEcZy75beAUdGLieaqut12eW5Rufonggc i0EBqY6w7s+4ktZ37sRv+2oJl+201k6n/lPnY12fQFhGE1uHfK33MTdr0 +wvvvrKN44Z26ksoClEacFqQu1KHptjwhg37EREUqSUyvIDVquJR2a5g5 a5qlEudIpU1Cb03h9g5bryYapXYlNvW94PvzOGxrDqx3UthGUv7a10whJ Q==; X-IronPort-AV: E=McAfee;i="6600,9927,10756"; a="365652885" X-IronPort-AV: E=Sophos;i="6.01,168,1684825200"; d="scan'208";a="365652885" X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10756"; a="782726363" X-IronPort-AV: E=Sophos;i="6.01,168,1684825200"; d="scan'208";a="782726363" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Xi39+qk3Wh2aTlPqGZzOwqPcWAKi3jbNj4mU/KEA5fmbaHBrIomhh0jsOE0+iNpPAWea+BirjgtARSNPSkyjMSP0tK6A01SP4FaeH4PAnUNvaZMorSLz7ywevadxTH0va+7ngma5YLNgAubmNG6GRorkZ8QlsdRSyjl+6UrX7EbQknvMCNkK/00aKRpINFCuxbQFoq6Fm5hjFEzfS/K2mjQ2R87QbmnpFanU9/y6ynB3OIKjuxsmxaZ3xxWMrFQWg2Mmgexklp57VREOiLczXvKkWB+LksGhOUTYR3hvJJe/G9ZkgY8VKrk/o4fOoe1Vl6EDMc74Gjl4w4IdmQPCeA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=6aiQenFB6Mfpa+cMt7y6DybXh0zO20v4EdElpu6s0t0=; b=Rd1U1mxzSlEG7vBj1dJ0KeLlCzlH6wfrFVgULjgciUd0szTlbgXrbOSTrBxXry/rX6m2bs6yZ5eRTTd66WPi7sAFfEvRUQ5EPROIDUpYXKVcyNxAOWwEJtUGvn/y93KjBYgaJ0oEkmYG2AIyzras2HqFo2Nr/KriD0Ciu5RQ2tmy6PrnGHmGlRoa/Wu7LMVH5MUFLiM4U+zb+oASo/Mj0Kwi+jyc46ec50Pun5+Y97bqlUFnjE9AZJNmauujQLHlY0lD/8HGVhpZUfTOK9YcVuKLelfnqVLgVsdGHfbcvU6mjUdDpHQXCdTr8zIRbeew6a1swnmP6LQL/aoOA09SsA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com; dkim=pass header.d=intel.com; arc=none Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=intel.com; Message-ID: <980355eb-0241-2690-8ba4-3f136dd8555a@intel.com> Date: Thu, 29 Jun 2023 09:53:00 -0700 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [QEMU PATCH 1/1] virtgpu: do not destroy resources when guest suspend Content-Language: en-US To: Jiqian Chen , Gerd Hoffmann , "Michael S . Tsirkin" , Stefano Stabellini , Anthony PERARD , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Jan Beulich , Antonio Caggiano , "Dr . David Alan Gilbert" , Robert Beckett , , CC: Alex Deucher , Christian Koenig , Stewart Hildebrand , Xenia Ragiadakou , Honglei Huang , Julia Zhang , Huang Rui References: <20230608025655.1674357-1-Jiqian.Chen@amd.com> <20230608025655.1674357-2-Jiqian.Chen@amd.com> From: "Kim, Dongwon" In-Reply-To: <20230608025655.1674357-2-Jiqian.Chen@amd.com> Content-Type: text/plain; charset="UTF-8"; format=flowed Content-Transfer-Encoding: 7bit X-ClientProxiedBy: BY3PR05CA0004.namprd05.prod.outlook.com (2603:10b6:a03:254::9) To PH8PR11MB6879.namprd11.prod.outlook.com (2603:10b6:510:229::22) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: PH8PR11MB6879:EE_|CH0PR11MB5281:EE_ X-MS-Office365-Filtering-Correlation-Id: 6ec3f4ad-69b8-4833-9bfb-08db78c14daa X-LD-Processed: 46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: SNI4as7Iap0aXqProiUu8y99Vb9W3OcluI+WFGIEE0NSJqlXa4/EXtVo67hCDVEmC7swlWZ5PGDK/B1ZgqL0iLcmT4bEglOYQkAOn/MuWQEGdLsFxVV0KzW6Tg+6a2YJQtmOaB5M8wjzJqw1Cltj3ecPnPDyu/qV+b9UwmfcZ2SLAaD6N+K24MW7rk0egNpXuA57LOf12iQDv3PzqqTx209NDQ5DNggQ6a+2K85xYPJMBfTkQTndOPxAeszkdNQGPFJ47wtT7SVZTbTa0yIStfjv5C0UbqPOUyHvRBrArss+4RWKquIz11hJl7jtIylr8c5xTRSHCGGYr9/3WDXMzrKAqLrAUNkRwtHbz2PiruFJ0q7dx4t1nQj1xlqKXL0eK5CNqHZ3Nuexw6DRZAo4GHueofo5B/rc3bXfuObkTT5SBUM1TkH7zhhl49UXDhw0EO07FdtEW/dDgSThJudMDW83OLocdpY1RY52VAP5HAA6i1BjDTzmpmwJOD0xr0bibd5Oole526DLeRGFkAHwYCckcK4e4ZPS+5LBaGX5ler1D3FcnED+TWkoPtPaVHNciyh8QDKgi3sy+d5ouOzNLDfy2UCIU+GZqGvPo9eq9d87s6waWa0JHoRQ4f5eUdLkboncbWpL3AAVGeDbJUstfQ== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:PH8PR11MB6879.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(346002)(136003)(366004)(39860400002)(396003)(376002)(451199021)(6486002)(38100700002)(53546011)(2616005)(82960400001)(83380400001)(6506007)(26005)(186003)(921005)(6512007)(54906003)(41300700001)(31696002)(110136005)(86362001)(316002)(2906002)(36756003)(66556008)(66476007)(66946007)(31686004)(4326008)(5660300002)(7416002)(8676002)(8936002)(478600001)(15650500001)(43740500002)(45980500001);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?Wms4SXFLeUhwU0RmMGl6YXgrN3pBUXY0bUdjRW1PczFyckgyT3lKNzl4bERN?= =?utf-8?B?K0QzK1VwekN5WnpCV1VibDQ2OE1MWm9wUjNkUGNCR0gxbzVZYXN1eFpocm5N?= =?utf-8?B?dks2ekJTVzFXbmdsMEJ1dFArNXFxWDZ0Sk1aOU5tNUUwTCtEYzBPbjR6Y1VV?= =?utf-8?B?TUZBNndBNEFRZmVKY1hPbW5hdTB0c3NNYXoxQ05BZ0hKbTdoY0d6UnZYemVE?= =?utf-8?B?b29jYUl3VFY5czFiQi92ZFMzODE0L3QyZkVNSThjVDZlQlBITkNPUzNocng2?= =?utf-8?B?RVpnZ2hFMmpQM214RTM5ZXJib0J4V2lUbnU3eFN0YmtJQlE2a3VSN1k0ZGFQ?= =?utf-8?B?Q3NHY2J1YTRhVzE3ci83SGhlY0p3OHlXNE5MWDduWkJMcjR0M1NpZVgxdndu?= =?utf-8?B?SG5VK00rY2c5OCtIenJxb1FDUXFwY3FVWGF1SkRLeG5tYjBOR283ZU13THpN?= =?utf-8?B?WlFvZGJISC85a0Y1RlZSWEVuam9WaUFyVjdpN0g4OWFYb3pHU0t3K3h5WGpT?= =?utf-8?B?VFF2T2hKYTB2NURlUkgvc1FNL0JnT3hiRnZ6aVp0QkJBNk50S01LT2JRZHNj?= =?utf-8?B?NlhaR2J3b3BaMXErNUw4dFdEZ05xWVQvNHV4b2p2Tzhodm1CQW5ldmJjS2dy?= =?utf-8?B?KzlEQmFnTWduUjNjKzRaZVpUaCt0bklRZFRYajZGZEpha0Q1ODZyL0h4TUFk?= =?utf-8?B?aWt0VDRWcGpwd1RzVzRRWEhyTHBJRFI3d25NYzBRT1RvUE90cjRkczhKT3Nz?= =?utf-8?B?Yi9yVFhTTVpCTUJXSit4dmtweml1RUJlamtKNEZrbkpaanpEMEtOQXlDR3Za?= =?utf-8?B?M2dMNVFUZzdYL1RzcU80MlF4MUVJZG9lTGZTM0IyYTU4OXdNdlRSRi94UmtK?= =?utf-8?B?NDBoanozajE3TGR0eUdsdFhJM3FqQXE4RHVCc0JUeCtqZUZ5c0orSVNMczhi?= =?utf-8?B?UkZYQVd6VmpjTTVzM01VYVhpc2twNk1nMDBFS0NzenoyOW95Q3Yrc05xNGho?= =?utf-8?B?RUN1ZlVZWkVxNzRZRC9PVENsZnhCeFF2bUVQalBhMml1MWlWb3pMczd0RlFa?= =?utf-8?B?KzNsUjUwMGN6N0lBUzJkeGN5b0pjOG4yRHRKQ21Qc0RmUnlnMzN6YUhqVWtC?= =?utf-8?B?SDg2Q0FyWWY4aTQzblY5OHpPMTN6R1lVbTQ1YUV6V0hmUmM0TTFYNkpHeWdn?= =?utf-8?B?WGlFcnIzSDh4UnJ1UEhka2E2ekpCNkphV1BwUnVSRk5YNWdINk15K1Exc0hD?= =?utf-8?B?aE5udC9sUjRrb0p4WjlWNS9XcW9RYW1kZG1TZzZmQXkwMjBwcENJcUE0Q1Vi?= =?utf-8?B?Tjljb2g5REZpbURrLzg0amZyVzZlUzNRMVd3V200K09rRjZIY0J2NG9JZjJv?= =?utf-8?B?U01BbVZid2xDOEUwUnlUcVFSU0RhYTBTc2s5ZWpWckk3bjdnYWNwQ1pkcWRG?= =?utf-8?B?S3J4RGh3a0F3SkRKSThMN25DYjVSK3YrZmsxY01IVFNjRnViRmNpK1d4Ynpx?= =?utf-8?B?Z05ZRjJCcnVEL0MxRk9nUDd4RFFBdTRIOVlpaTdaREJ2L2IzMmYwdW5rZWR1?= =?utf-8?B?MGFFZ1Y0cWVjaFNKUzAycUM2bWpUeXNHc0FWU0RyNlBmbGhTaEhyaTdML0gy?= =?utf-8?B?V3hLZXVaWVlXbGoxSUErclpFellzbzBrcmVTOW8wTXdkYVZTQUdtZjU2MEky?= =?utf-8?B?OXlzNmw0UXU1V0VLSVYveDF0cmJUMkhQOFNDTkNXOG0zMldOZkdXN211Q1ZJ?= =?utf-8?B?aHFrc25vUFgxU2NjWU1JRHhoM1orRUJkRzNqeXphZ29iNUFRblRQcVRtd0hH?= =?utf-8?B?NTcrZ01rUUV5UG1GZFYydjd3VW9oMXlZMDNHK3B2MmlOTUk1czZRVEpkb1BF?= =?utf-8?B?RWM4b2hQeDM0bm00bmZnZ2x2ZDR3by85MG1VTXpkRnFORll6SHArcTF5eENE?= =?utf-8?B?a0xxVzBJNTZPeVJWNDRwR3hTdlBRUnRGYUkzMEpCWXNyWDhKbDNabURaanhV?= =?utf-8?B?SC9xcU45NTVKZDJqeDJ4dW5RSWprZzh4cnkvKzg5R0xPYUlTZWZDOWc1SjlX?= =?utf-8?B?bkZmV01lK1F6bmRKWkZXRmF1Ky9tZ0k0UFEycVU1M0VySUJrWXFkbGk3VC9E?= =?utf-8?Q?lC8el4fyRJ3z2RAY2HtjQZoor?= X-MS-Exchange-CrossTenant-Network-Message-Id: 6ec3f4ad-69b8-4833-9bfb-08db78c14daa X-MS-Exchange-CrossTenant-AuthSource: PH8PR11MB6879.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 Jun 2023 16:53:03.1708 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 46c98d88-e344-4ed4-8496-4ed7712e255d X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 1g63au96kgeyCRtBqhmz/qcYtpCdaJZsdTBdeeT38+7nR5mxSjMJMrHdjC07Fh+Sp9gqMgjIQrBq9NITVFTYbw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH0PR11MB5281 X-OriginatorOrg: intel.com This method - letting QEMU not remove resources would work on S3 case but with S4, the QEMU would lose all the resources anyway as the process will be terminated. So objects restoring was only option for us as in [RFC PATCH 2/2] drm/virtio: restore virtio_gpu_objects upon suspend and resume (lists.freedesktop.org) But I only considered and tested cases with scanout blob resources, so this may not cover other resource types... On 6/7/2023 7:56 PM, Jiqian Chen wrote: > After suspending and resuming guest VM, you will get > a black screen, and the display can't come back. > > This is because when guest did suspending, it called > into qemu to call virtio_gpu_gl_reset. In function > virtio_gpu_gl_reset, it destroyed resources and reset > renderer, which were used for display. As a result, > guest's screen can't come back to the time when it was > suspended and only showed black. > > So, this patch adds a new ctrl message > VIRTIO_GPU_CMD_STATUS_FREEZING to get notification from > guest. If guest is during suspending, it sets freezing > status of virtgpu to true, this will prevent destroying > resources and resetting renderer when guest calls into > virtio_gpu_gl_reset. If guest is during resuming, it sets > freezing to false, and then virtio_gpu_gl_reset will keep > its origin actions and has no other impaction. > > Signed-off-by: Jiqian Chen > --- > hw/display/virtio-gpu-gl.c | 9 ++++++- > hw/display/virtio-gpu-virgl.c | 3 +++ > hw/display/virtio-gpu.c | 26 +++++++++++++++++++-- > include/hw/virtio/virtio-gpu.h | 3 +++ > include/standard-headers/linux/virtio_gpu.h | 9 +++++++ > 5 files changed, 47 insertions(+), 3 deletions(-) > > diff --git a/hw/display/virtio-gpu-gl.c b/hw/display/virtio-gpu-gl.c > index e06be60dfb..e11ad233eb 100644 > --- a/hw/display/virtio-gpu-gl.c > +++ b/hw/display/virtio-gpu-gl.c > @@ -100,7 +100,14 @@ static void virtio_gpu_gl_reset(VirtIODevice *vdev) > */ > if (gl->renderer_inited && !gl->renderer_reset) { > virtio_gpu_virgl_reset_scanout(g); > - gl->renderer_reset = true; > + /* > + * If guest is suspending, we shouldn't reset renderer, > + * otherwise, the display can't come back to the time when > + * it was suspended after guest resumed. > + */ > + if (!g->freezing) { > + gl->renderer_reset = true; > + } > } > } > > diff --git a/hw/display/virtio-gpu-virgl.c b/hw/display/virtio-gpu-virgl.c > index 73cb92c8d5..183ec92d53 100644 > --- a/hw/display/virtio-gpu-virgl.c > +++ b/hw/display/virtio-gpu-virgl.c > @@ -464,6 +464,9 @@ void virtio_gpu_virgl_process_cmd(VirtIOGPU *g, > case VIRTIO_GPU_CMD_GET_EDID: > virtio_gpu_get_edid(g, cmd); > break; > + case VIRTIO_GPU_CMD_STATUS_FREEZING: > + virtio_gpu_cmd_status_freezing(g, cmd); > + break; > default: > cmd->error = VIRTIO_GPU_RESP_ERR_UNSPEC; > break; > diff --git a/hw/display/virtio-gpu.c b/hw/display/virtio-gpu.c > index 5e15c79b94..8f235d7848 100644 > --- a/hw/display/virtio-gpu.c > +++ b/hw/display/virtio-gpu.c > @@ -373,6 +373,16 @@ static void virtio_gpu_resource_create_blob(VirtIOGPU *g, > QTAILQ_INSERT_HEAD(&g->reslist, res, next); > } > > +void virtio_gpu_cmd_status_freezing(VirtIOGPU *g, > + struct virtio_gpu_ctrl_command *cmd) > +{ > + struct virtio_gpu_status_freezing sf; > + > + VIRTIO_GPU_FILL_CMD(sf); > + virtio_gpu_bswap_32(&sf, sizeof(sf)); > + g->freezing = sf.freezing; > +} > + > static void virtio_gpu_disable_scanout(VirtIOGPU *g, int scanout_id) > { > struct virtio_gpu_scanout *scanout = &g->parent_obj.scanout[scanout_id]; > @@ -986,6 +996,9 @@ void virtio_gpu_simple_process_cmd(VirtIOGPU *g, > case VIRTIO_GPU_CMD_RESOURCE_DETACH_BACKING: > virtio_gpu_resource_detach_backing(g, cmd); > break; > + case VIRTIO_GPU_CMD_STATUS_FREEZING: > + virtio_gpu_cmd_status_freezing(g, cmd); > + break; > default: > cmd->error = VIRTIO_GPU_RESP_ERR_UNSPEC; > break; > @@ -1344,6 +1357,8 @@ void virtio_gpu_device_realize(DeviceState *qdev, Error **errp) > QTAILQ_INIT(&g->reslist); > QTAILQ_INIT(&g->cmdq); > QTAILQ_INIT(&g->fenceq); > + > + g->freezing = false; > } > > void virtio_gpu_reset(VirtIODevice *vdev) > @@ -1352,8 +1367,15 @@ void virtio_gpu_reset(VirtIODevice *vdev) > struct virtio_gpu_simple_resource *res, *tmp; > struct virtio_gpu_ctrl_command *cmd; > > - QTAILQ_FOREACH_SAFE(res, &g->reslist, next, tmp) { > - virtio_gpu_resource_destroy(g, res); > + /* > + * If guest is suspending, we shouldn't destroy resources, > + * otherwise, the display can't come back to the time when > + * it was suspended after guest resumed. > + */ > + if (!g->freezing) { > + QTAILQ_FOREACH_SAFE(res, &g->reslist, next, tmp) { > + virtio_gpu_resource_destroy(g, res); > + } > } > > while (!QTAILQ_EMPTY(&g->cmdq)) { > diff --git a/include/hw/virtio/virtio-gpu.h b/include/hw/virtio/virtio-gpu.h > index 2e28507efe..c21c2990fb 100644 > --- a/include/hw/virtio/virtio-gpu.h > +++ b/include/hw/virtio/virtio-gpu.h > @@ -173,6 +173,7 @@ struct VirtIOGPU { > > uint64_t hostmem; > > + bool freezing; > bool processing_cmdq; > QEMUTimer *fence_poll; > QEMUTimer *print_stats; > @@ -284,5 +285,7 @@ void virtio_gpu_virgl_reset_scanout(VirtIOGPU *g); > void virtio_gpu_virgl_reset(VirtIOGPU *g); > int virtio_gpu_virgl_init(VirtIOGPU *g); > int virtio_gpu_virgl_get_num_capsets(VirtIOGPU *g); > +void virtio_gpu_cmd_status_freezing(VirtIOGPU *g, > + struct virtio_gpu_ctrl_command *cmd); > > #endif > diff --git a/include/standard-headers/linux/virtio_gpu.h b/include/standard-headers/linux/virtio_gpu.h > index 2da48d3d4c..aefffbd751 100644 > --- a/include/standard-headers/linux/virtio_gpu.h > +++ b/include/standard-headers/linux/virtio_gpu.h > @@ -116,6 +116,9 @@ enum virtio_gpu_ctrl_type { > VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID, > VIRTIO_GPU_RESP_ERR_INVALID_CONTEXT_ID, > VIRTIO_GPU_RESP_ERR_INVALID_PARAMETER, > + > + /* status */ > + VIRTIO_GPU_CMD_STATUS_FREEZING = 0x1300, > }; > > enum virtio_gpu_shm_id { > @@ -453,4 +456,10 @@ struct virtio_gpu_resource_unmap_blob { > uint32_t padding; > }; > > +/* VIRTIO_GPU_CMD_STATUS_FREEZING */ > +struct virtio_gpu_status_freezing { > + struct virtio_gpu_ctrl_hdr hdr; > + __u32 freezing; > +}; > + > #endif From xen-devel-bounces@lists.xenproject.org Thu Jun 29 17:13:24 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 17:13:24 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557003.869961 (Exim 4.92) (envelope-from ) id 1qEvCf-0005NS-Uo; Thu, 29 Jun 2023 17:13:09 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557003.869961; Thu, 29 Jun 2023 17:13:09 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEvCf-0005NL-R3; Thu, 29 Jun 2023 17:13:09 +0000 Received: by outflank-mailman (input) for mailman id 557003; Thu, 29 Jun 2023 17:13:09 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEvCf-0005NB-5H; Thu, 29 Jun 2023 17:13:09 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEvCe-0002Fp-NG; Thu, 29 Jun 2023 17:13:08 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEvCe-0002sv-7b; Thu, 29 Jun 2023 17:13:08 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qEvCe-0005pB-7A; Thu, 29 Jun 2023 17:13:08 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=5fjSC0h7FRyXzeoGlmsTh+U4WEqYnC5XNn5igNkNpzQ=; b=6Ia9xrtGCeHa9qFPCTe9uVV170 /pAIls/lFWBeBZeTl487krZTvHpEHqShEYRYDUFCR3t76JeO5RzeAgpquXeDte8UdemBXr7S68LP4 Y49pgSVTFo+ZI8BbtUDybDc2PWQbfgXYJxTj+CLLXGm7JI6lFpcT1sSsnnh0XHy5Os+8=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable test] 181636: trouble: broken/fail/pass X-Osstest-Failures: xen-unstable:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow::broken:regression xen-unstable:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:host-install(5):broken:regression xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: xen=5b9c96a808efdc004a876c03c2ea0bd0c5358812 X-Osstest-Versions-That: xen=6c32a08e2b7e6d796081ed84c84ad682bcc4b3a6 From: osstest service owner Date: Thu, 29 Jun 2023 17:13:08 +0000 flight 181636 xen-unstable real [real] http://logs.test-lab.xenproject.org/osstest/logs/181636/ Failures and problems with tests :-( Tests which did not succeed and are blocking, including tests which could not be run: test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow broken test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 5 host-install(5) broken REGR. vs. 181632 Tests which did not succeed, but are not blocking: test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 181632 test-armhf-armhf-libvirt 16 saverestore-support-check fail like 181632 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop fail like 181632 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 181632 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 181632 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop fail like 181632 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop fail like 181632 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail like 181632 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail like 181632 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 181632 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop fail like 181632 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 181632 test-amd64-i386-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-i386-xl-pvshim 14 guest-start fail never pass test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-i386-libvirt 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-armhf-armhf-xl 15 migrate-support-check fail never pass test-armhf-armhf-xl 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 15 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 16 saverestore-support-check fail never pass test-amd64-i386-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 15 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-armhf-armhf-xl-credit1 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt 15 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass test-armhf-armhf-xl-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 15 saverestore-support-check fail never pass test-armhf-armhf-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-xl-credit2 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit2 16 saverestore-support-check fail never pass test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail never pass test-armhf-armhf-xl-multivcpu 15 migrate-support-check fail never pass test-armhf-armhf-xl-multivcpu 16 saverestore-support-check fail never pass version targeted for testing: xen 5b9c96a808efdc004a876c03c2ea0bd0c5358812 baseline version: xen 6c32a08e2b7e6d796081ed84c84ad682bcc4b3a6 Last test of basis 181632 2023-06-28 21:38:36 Z 0 days Testing same since 181636 2023-06-29 07:32:05 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Federico Serafini jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64-xtf pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-prev pass build-i386-prev pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-xtf-amd64-amd64-1 pass test-xtf-amd64-amd64-2 pass test-xtf-amd64-amd64-3 pass test-xtf-amd64-amd64-4 pass test-xtf-amd64-amd64-5 pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl pass test-amd64-i386-xl pass test-amd64-coresched-i386-xl pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-i386-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-i386-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-i386-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-i386-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-i386-qemut-rhel6hvm-amd pass test-amd64-i386-qemuu-rhel6hvm-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-i386-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-freebsd10-amd64 pass test-amd64-amd64-qemuu-freebsd11-amd64 pass test-amd64-amd64-qemuu-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-i386-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-i386-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-i386-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-amd64-i386-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale pass test-amd64-amd64-examine-bios pass test-amd64-i386-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 pass test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 pass test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine pass test-amd64-i386-examine pass test-amd64-i386-freebsd10-i386 pass test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-i386-qemut-rhel6hvm-intel pass test-amd64-i386-qemuu-rhel6hvm-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt pass test-amd64-i386-libvirt pass test-amd64-amd64-livepatch pass test-amd64-i386-livepatch pass test-amd64-amd64-migrupgrade pass test-amd64-i386-migrupgrade pass test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu pass test-amd64-amd64-pair pass test-amd64-i386-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-i386-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-i386-xl-pvshim fail test-amd64-amd64-pygrub pass test-armhf-armhf-libvirt-qcow2 pass test-amd64-amd64-xl-qcow2 pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw pass test-amd64-i386-libvirt-raw pass test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds pass test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow broken test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-amd64-i386-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-i386-examine-uefi pass test-amd64-amd64-libvirt-vhd pass test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd pass test-amd64-i386-xl-vhd pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary broken-job test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow broken broken-step test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow host-install(5) Not pushing. ------------------------------------------------------------ commit 5b9c96a808efdc004a876c03c2ea0bd0c5358812 Author: Federico Serafini Date: Mon Jun 26 11:52:18 2023 +0200 xen/arm: change parameter names in replace_grant_host_mapping(). In the current version of replace_grant_host_mapping() function, the declaration (correctly) uses the parameter names 'gpaddr' and 'new_gpaddr', while the definition uses the parameter names 'addr' and 'new_addr'. Change the parameter names of the definition to 'gpaddr' and 'new_gpaddr' so that it is clear what type of address is expected and violations of MISRA C:2012 Rule 8.3 are fixed. In both declaration and definition of function replace_grant_host_mapping() change the parameter name 'mfn' to 'frame', thus improving readability and keeping consistency with name used in create_grant_host_mapping(). Signed-off-by: Federico Serafini Reviewed-by: Julien Grall commit 06ed62d1f3485cd787da042c64d4507c4d0cb8f3 Author: Federico Serafini Date: Mon Jun 26 11:52:17 2023 +0200 xen/arm: make parameter names of function declarations consistent. Change the parameter names of function declarations to be consistent with the names used in the corresponding function definitions, thus fixing violations of MISRA C:2012 Rule 8.3. Signed-off-by: Federico Serafini Reviewed-by: Julien Grall commit 98ca99685d8e8dbc5e8ef2500ee1b8a87a0b26f5 Author: Federico Serafini Date: Mon Jun 26 11:52:16 2023 +0200 xen/arm: vgic: change parameter name in 'init' and 'free' functions. In the current versions of vcpu_vgic_init() and vcpu_vgic_free(), the declarations (correctly) use the parameter name 'v' while the corresponding definitions use the parameter name 'vcpu'. Since it is common to use 'v' to denote a vCPU, change the parameter name 'vcpu' of function definitions to 'v', thus fixing violations of MISRA C:2012 Rule 8.3. Signed-off-by: Federico Serafini Reviewed-by: Julien Grall commit 31f54edf7e9df134760a0d6ca41e49a7905163d0 Author: Federico Serafini Date: Mon Jun 26 11:52:15 2023 +0200 xen/arm: change parameter name 'pa' in ioremap_addr() definition. In the current version of ioremap_addr() function, the declaration uses the parameter name 'start' (consistenly with the other ioremap_* function declarations), while the definition uses the parameter name 'pa'. Change the parameter name 'pa' of function definition to 'start', thus fixing a violation of MISRA C:2012 Rule 8.3 and keeping the consistency with other ioremap_* functions. Signed-off-by: Federico Serafini Reviewed-by: Julien Grall commit be17548c00a63264c0a0399624a73b611358f3ea Author: Federico Serafini Date: Mon Jun 26 11:52:14 2023 +0200 xen/arm: change parameter name 'vcpu' in domain() function definition. In the current version of domain() function, the declaration (correctly) uses the parameter name 'v' while the definition uses the parameter name 'vcpu'. Since it is common to use 'v' to denote a vCPU, change the parameter name 'vcpu' of function definition to 'v', thus fixing a violation of MISRA C:2012 Rule 8.3. Signed-off-by: Federico Serafini Reviewed-by: Julien Grall commit 8f47510b84769192204f4e1f0f4431d3b741f7fc Author: Federico Serafini Date: Mon Jun 26 11:52:13 2023 +0200 xen/arm: change names in function access_guest_memory_by_ipa(). Change the function name 'access_guest_memory_by_ipa' to 'access_guest_memory_by_gpa' and change its formal parameter name from 'ipa' to 'gpa' because of the following: 1) 'gpa' is used more frequently and therefore is preferable; 2) changing parameter name makes the declaration consistent with the corresponding definition thus fixing a violation of MISRA C:2012 Rule 8.3. Signed-off-by: Federico Serafini Reviewed-by: Julien Grall (qemu changes not included) From xen-devel-bounces@lists.xenproject.org Thu Jun 29 17:23:13 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 17:23:13 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557011.869971 (Exim 4.92) (envelope-from ) id 1qEvMF-0006we-0c; Thu, 29 Jun 2023 17:23:03 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557011.869971; Thu, 29 Jun 2023 17:23:02 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEvME-0006wX-TD; Thu, 29 Jun 2023 17:23:02 +0000 Received: by outflank-mailman (input) for mailman id 557011; Thu, 29 Jun 2023 17:23:01 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEvMD-0006wR-Hd for xen-devel@lists.xenproject.org; Thu, 29 Jun 2023 17:23:01 +0000 Received: from NAM12-MW2-obe.outbound.protection.outlook.com (mail-mw2nam12on20614.outbound.protection.outlook.com [2a01:111:f400:fe5a::614]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 977acbc2-16a1-11ee-b237-6b7b168915f2; Thu, 29 Jun 2023 19:22:59 +0200 (CEST) Received: from SN6PR12MB2621.namprd12.prod.outlook.com (2603:10b6:805:73::15) by SJ0PR12MB6941.namprd12.prod.outlook.com (2603:10b6:a03:448::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.24; Thu, 29 Jun 2023 17:22:55 +0000 Received: from SN6PR12MB2621.namprd12.prod.outlook.com ([fe80::8018:78f7:1b08:7a54]) by SN6PR12MB2621.namprd12.prod.outlook.com ([fe80::8018:78f7:1b08:7a54%2]) with mapi id 15.20.6521.026; Thu, 29 Jun 2023 17:22:55 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 977acbc2-16a1-11ee-b237-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Xy+shZcEZwqjQDLrB/m9NchhbieZ0zTI0+rWtoyI+lR9MyJN6uddPKXeCt8nQEBmwjfFmG8SEEpJEhu1lBCGLJjKZEoFaKWrPqTdDD6piRUS7/2dLubNNSJv1GqTI4DSvNh4MiAOYeZfc4smIj+Q9c5Mo5MUgGR3k1KnPvasE8UkuaVik99pJ8w2K6EPAfOv29/JqXMGjH9kmu95r8nfuNoc0N76QG6fWF79F/MAh1V2pcyid89OB/888sbLxmnJj18JgZER0+YoM6o4YLwMJDDxv3IrLoVtmz7r1ubXx+lnO7p/npTLy6geKRitYewpQi3bLPWAlPEJNepGX/ETDw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=x//SMtxiLQmW+TUo8G2IlPO5+7qYtzFviKSiGBBguP4=; b=HNImHQSkV6EtWUmhtCeA1PbEFFgzoGA3Ce1GAYf1cYa37jG75HHR4ilPxbPpai2k3KN51bb6eamSz6wYTbPGcTmAI9tY8Mrd56Z8DMq8xnms6lH4nd7XNpWM8Mw4arneUj4Mi8ldnrskoa15A+BDuDoYDp4EEVt9jyKTSIr7UaOXJ/+qYZgysag9xqJ284jA81opfueKFLTa8auM7omBGHLENn1RwK4LwS7QLzsGsY7gcBARDfz57BAlNeOdkskNtDi95TNanG3a6ret9SkvzOsPbCdER/5E4m5A77k5Nt2HDPyG68rQvmXPK5LS4xgXX7v4braiUrwQOCrLj1atFQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass header.d=amd.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=x//SMtxiLQmW+TUo8G2IlPO5+7qYtzFviKSiGBBguP4=; b=fI0uVg818U0UvRkOD4FjgNVp1yM02er7Tqs8265A98xKxY7PvVkOmFiqg3/NBNrl+vP21LALWNQ/QDi/R6wabHb4+4pCJJiA9EtR/4RVawZ29l4v87Ai+CbpIBqlGeSargepk/+r9Myqkqbp4iMy3iEILtKUA3Dx0OJiWDS7Dgo= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=amd.com; Message-ID: Date: Thu, 29 Jun 2023 18:22:48 +0100 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v3 31/52] xen/mpu: make early_fdt_map support in MPU systems To: xen-devel@lists.xenproject.org References: <20230626033443.2943270-1-Penny.Zheng@arm.com> <20230626033443.2943270-32-Penny.Zheng@arm.com> From: Ayan Kumar Halder Cc: Penny Zheng , Stefano Stabellini , Julien Grall , Bertrand Marquis , Wei Chen , "Volodymyr_Babchuk@epam.com" In-Reply-To: <20230626033443.2943270-32-Penny.Zheng@arm.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-ClientProxiedBy: LO3P265CA0010.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:bb::15) To SN6PR12MB2621.namprd12.prod.outlook.com (2603:10b6:805:73::15) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SN6PR12MB2621:EE_|SJ0PR12MB6941:EE_ X-MS-Office365-Filtering-Correlation-Id: d5f13992-8750-4816-b350-08db78c579cc X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: acVJ4/cqLPEfe03TuUy/795ZhxZyyD3+i4W0Ae1FJmYKlP7ZsWTxkmNZq9hGrh3J97pJ5HRwn17oA0YXOmdJQrLJ9ZneyGIpUJfJjv2mA8J6fn0QrfpPw6+TEsFrMivstOssv+H67pui5LUiWtkXYhRxMNBaCnYxFDGjJXMEiyuyTMH/BzYmwo624kOH4MUCAdccrChuGjYIA2dPWYdrTaxaWDo5YeMpeA3l3vvLqv2ETbViGiyZ8mcKgVnfRKPkttIn+nAa5S7OH6oC5ZF0ERlZEZUVRrHof9Ys5GAfm19hIEpnUXi1IgdnukUAnwoeQqJdUMKUV7HYP+kfWvVhf3KVLOi5vEt2f71aAByqomLWU+g7IaR2xY8k08+uqOhGCfRERLZ4xwonb9u4e7ov/22EPFkfSspReFlqA89lncBKschpyvTH94EjkvqCvfMyWo++ijEFHQJFA3UwwUu1jktm9J3hT9JP2s24tAsPuBmkv4oaYIq9GP8rr7CAGR03pEjChXHc3eginOPGKxASLK2CzIlIvSZKKqHc0l02WdbHqk9giNKCDrEn/0A/emibWZrwTAaDX7CziEmoTFRs00yvzKzn93D2m+7YZYYegmIAAYegC3nW3jLVztYfu5SZeZdBt0DRegOfRY2Z3+sa9A== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SN6PR12MB2621.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(396003)(346002)(136003)(376002)(39860400002)(366004)(451199021)(5660300002)(66946007)(31686004)(66556008)(4326008)(66476007)(6916009)(478600001)(36756003)(316002)(8936002)(8676002)(2906002)(6512007)(6666004)(41300700001)(54906003)(31696002)(6486002)(186003)(6506007)(53546011)(26005)(2616005)(83380400001)(38100700002)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?YU5XS0ZHYzg1WGhLYzhLbDhlZzdBK2NsQVdvWk5GYjNld1hwNGdiTG9kbGlu?= =?utf-8?B?RmNPVG9kWDNZV3ZYc2F1U1phQmNPY2Z0aGhaanJ3TGNQWG00Q1lGUG9UckFZ?= =?utf-8?B?dUI4QnBtRkZ3WGNzb3Vhb2xFeWRoeHB6VVhNTXRodlRLQjcxTUJPZjhFMEFI?= =?utf-8?B?Ty93UVNuRUQwbXBLQjUxbHRJU0VtKzNLVHdqeHFMdktFcnA0anJ4UlhrdEFt?= =?utf-8?B?VjlwbzljU2x5TFN2RFZoYlBKV3gvclM4VWExMTA0QWJDc1ZhUCtnUWJxQ01q?= =?utf-8?B?MDZDUjhKVGpqSzJ5NUltbDVxUHh4U1M5VVM3V3gvTmhQZVVDaU83RCtwT1Qz?= =?utf-8?B?VUpUdTVCRzlQMlFpZ3RxR0lSR2hxWTlwUmZqZTVmLzZId1EvdlVHQkdFZmpF?= =?utf-8?B?WlRJTEpTWk9mWWE4Q3BkeEpVd0VGd0s0SXFWU3V4L21rb0haRnRLTWlIcUt6?= =?utf-8?B?Y25MUjhaTWJ6RHV4WHhHSnJOdDd5QWNTY1BDTmx3bDRqMVRqZ29mN01nb2pO?= =?utf-8?B?NDloMkFpNCt1UDRoT1hqeTR3TG4wM1k1L3B1b0JYWllqR3pMTFI4OENVa0Na?= =?utf-8?B?VXEvYkJPOXVJcmtvL0NnNlhPNVRQaHh4dGR0UGxObTdsa3U5cWNQS2NWWUo3?= =?utf-8?B?Wkl5eUlYMzhkZlV6QlJ6bFdacVZlMnB5aDNQZWRMa1QyZkw5SkpHSlliQ1Jj?= =?utf-8?B?R1VQOFBHVUNaTGxyZFV3ekVyTEVIci9RM0oxOVBnZ0Mwb0d3UEUvb3pjc3Vs?= =?utf-8?B?SWVoK21zbjNSRjNTZkpCbG9SYStSVXZnT1dIKzFBeXR0VVdmWWszYUpiTGVx?= =?utf-8?B?d0hYR2N6cENYYmUybGIyaVJhUCthSWJMZStDQ0FLUFZrM29xRVZvVEdsY1ZG?= =?utf-8?B?WVZYNHYwWFozNUVFYXVVNjJKN3ArWmEzWkFoTzV5OXpsQWN5OXJtWCtGZmhh?= =?utf-8?B?dDhscjYyWWlHLzdiK1FPd1U0K2FWdUxMTVQ1SUFtU0RJcnI4T05yREFTNGRY?= =?utf-8?B?T0ZDbi9YVHFKL08xeVRlN3c4OHcvc2dpVDNqN1VMUVVodzl2T050MHlKVXBI?= =?utf-8?B?QVpTWlQ5K2FhOTlzTUsxMG5YbE84RjN4VkdLdjc3RDNFOEFTdXVzQU1vcno1?= =?utf-8?B?a1VZbjZ1eGZUV3oxeHJnWTR3Q0tPMnBiOHFZeXFCdGYvVHdneGVDQ0F3TDZW?= =?utf-8?B?Rm9BY2VJWlVtdGw1RkZWM01wZFlJaFNKUTI4YUlON0NMcFBiNnEybUpGQThM?= =?utf-8?B?UFY5aFlmakcvR3Q0UFUrbFk3SnhIU2k3a1FaSWVKSHNJUHhTY2dzNERhbUFM?= =?utf-8?B?SmpKdjRZZ1RGZm5lOXYvK0NUYlFhM0FJOEd6TnNBSk1QZnZ6ZnFYR3k5eDFv?= =?utf-8?B?ZzJmU0hmbk50akFmZDMvb3ZPZFVlcjJ4VzVaZ1VGQllBczRZekVJUXFxWFBK?= =?utf-8?B?eXlROXhvK3V0T3pvMHgxWENucWYvanhNOCtsd0EzQjFxaDdzSWF3LzhNcXM1?= =?utf-8?B?aTc2STM3Mlg4VGZBZnJNeWloOW92Rk9heGVEa1ZkNFdOcG1sWXVPY1E1WUxN?= =?utf-8?B?S3hoMmhIMVpNLzVGeUJ4dUJlVjhuSTJGZDFlUnpYOElpcXBDZXVKbzZuSExq?= =?utf-8?B?cGxpMlVrRmVFdGRLa1BMVnB6Tkl5SUwvdjdTL00vdnRXc2dkR2JXbkV5NU9y?= =?utf-8?B?UmRmNWNCWUViS3VLUm9qd2tpa2kxVHlUNXhiOWcxOXJnd09kc01vTWp3cGlT?= =?utf-8?B?NXFFdkJ5NC9HaitoeUlkTHVmUExrOEpjSTRHKzh6bjFUSFVvMFBBaGFxd2tT?= =?utf-8?B?R3UyWm01TXc0eWhDbnpyQ3l4M0Q3dzBlYWZiQ2dieTVvTm1mMGhUQVVyLzRv?= =?utf-8?B?S1R6WGN5NndTWE9NWDRTWGFIOGMxSG1uaUxES3J3d0VkeHA1aW9qb2k0V0xw?= =?utf-8?B?VU9QeUhaV2tKS1JvOU5keXM0b1UyVVFNZndWVUZYbC9FY3BxcDI0c1Z1THNu?= =?utf-8?B?TkZ2L1EyenhoSWNoaXhTV3JxNGltckR3bGFIUVVtdUcvWEg1T1Q5OXNQTE9o?= =?utf-8?B?R2FpWExMUnRlSE4yaGt2USt5dDV0QUpNK1QzSVA1eExWQjZKYTNKMUpIS1Fl?= =?utf-8?Q?db+FdY1ZYxDd4HQYwBa3RM9RW?= X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-Network-Message-Id: d5f13992-8750-4816-b350-08db78c579cc X-MS-Exchange-CrossTenant-AuthSource: SN6PR12MB2621.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 Jun 2023 17:22:55.2582 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: fVupZ93VU5WAMJHx0O5dpz58JztMBBhDC1PheDKVPfiOk6OH1gGx7azgaR9ff5hpwT+x/N3SXi61+qrPyef/IQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR12MB6941 On 26/06/2023 04:34, Penny Zheng wrote: > CAUTION: This message has originated from an External Source. Please use proper judgment and caution when opening attachments, clicking links, or responding to this email. > > > In MPU system, MPU memory region is always mapped PAGE_ALIGN, so in order to > not access unexpected memory area, dtb section in xen.lds.S should be made > page-aligned too. > We add . = ALIGN(PAGE_SIZE); in the head of dtb section to make it happen. > > In this commit, we map early FDT with a transient MPU memory region, as > it will be relocated into heap and unmapped at the end of boot. > > Signed-off-by: Penny Zheng > Signed-off-by: Wei Chen > --- > v3: > - map the first 2MB. Check the size and then re-map with an extra 2MB if needed > --- > xen/arch/arm/include/asm/arm64/mpu.h | 3 ++- > xen/arch/arm/include/asm/page.h | 5 +++++ > xen/arch/arm/mm.c | 26 ++++++++++++++++++++------ > xen/arch/arm/mpu/mm.c | 1 + > xen/arch/arm/xen.lds.S | 5 ++++- > 5 files changed, 32 insertions(+), 8 deletions(-) > > diff --git a/xen/arch/arm/include/asm/arm64/mpu.h b/xen/arch/arm/include/asm/arm64/mpu.h > index a6b07bab02..715ea69884 100644 > --- a/xen/arch/arm/include/asm/arm64/mpu.h > +++ b/xen/arch/arm/include/asm/arm64/mpu.h > @@ -72,7 +72,8 @@ typedef union { > unsigned long ns:1; /* Not-Secure */ > unsigned long res:1; /* Reserved 0 by hardware */ > unsigned long limit:42; /* Limit Address */ > - unsigned long pad:16; > + unsigned long pad:15; > + unsigned long tran:1; /* Transient region */ > } reg; > uint64_t bits; > } prlar_t; > diff --git a/xen/arch/arm/include/asm/page.h b/xen/arch/arm/include/asm/page.h > index 85ecd5e4de..a434e2205a 100644 > --- a/xen/arch/arm/include/asm/page.h > +++ b/xen/arch/arm/include/asm/page.h > @@ -97,19 +97,24 @@ > * [3:4] Execute Never > * [5:6] Access Permission > * [7] Region Present > + * [8] Transient Region, e.g. MPU memory region is temproraily > + * mapped for a short time > */ > #define _PAGE_AI_BIT 0 > #define _PAGE_XN_BIT 3 > #define _PAGE_AP_BIT 5 > #define _PAGE_PRESENT_BIT 7 > +#define _PAGE_TRANSIENT_BIT 8 I don't think this is related to MPU. At least when I look at the bit representation of PRBAR_EL1/2, bits [47:6] are for the base address. If my understanding is correct, then please take it out of this patch and put it in a separate MMU related patch. > #define _PAGE_AI (7U << _PAGE_AI_BIT) > #define _PAGE_XN (2U << _PAGE_XN_BIT) > #define _PAGE_RO (2U << _PAGE_AP_BIT) > #define _PAGE_PRESENT (1U << _PAGE_PRESENT_BIT) > +#define _PAGE_TRANSIENT (1U << _PAGE_TRANSIENT_BIT) > #define PAGE_AI_MASK(x) (((x) >> _PAGE_AI_BIT) & 0x7U) > #define PAGE_XN_MASK(x) (((x) >> _PAGE_XN_BIT) & 0x3U) > #define PAGE_AP_MASK(x) (((x) >> _PAGE_AP_BIT) & 0x3U) > #define PAGE_RO_MASK(x) (((x) >> _PAGE_AP_BIT) & 0x2U) > +#define PAGE_TRANSIENT_MASK(x) (((x) >> _PAGE_TRANSIENT_BIT) & 0x1U) > #endif /* CONFIG_HAS_MPU */ > > /* > diff --git a/xen/arch/arm/mm.c b/xen/arch/arm/mm.c > index d35e7e280f..8625066256 100644 > --- a/xen/arch/arm/mm.c > +++ b/xen/arch/arm/mm.c > @@ -61,8 +61,17 @@ void flush_page_to_ram(unsigned long mfn, bool sync_icache) > > void * __init early_fdt_map(paddr_t fdt_paddr) > { > +#ifndef CONFIG_HAS_MPU > /* We are using 2MB superpage for mapping the FDT */ > paddr_t base_paddr = fdt_paddr & SECOND_MASK; > + unsigned int flags = PAGE_HYPERVISOR_RO | _PAGE_BLOCK; > + unsigned long base_virt = BOOT_FDT_VIRT_START; > +#else > + /* MPU region must be PAGE aligned */ > + paddr_t base_paddr = fdt_paddr & PAGE_MASK; > + unsigned int flags = PAGE_HYPERVISOR_RO | _PAGE_TRANSIENT; > + unsigned long base_virt = ~0UL; > +#endif > paddr_t offset; > void *fdt_virt; > uint32_t size; > @@ -79,18 +88,24 @@ void * __init early_fdt_map(paddr_t fdt_paddr) > if ( !fdt_paddr || fdt_paddr % MIN_FDT_ALIGN ) > return NULL; > > +#ifndef CONFIG_HAS_MPU > /* The FDT is mapped using 2MB superpage */ > BUILD_BUG_ON(BOOT_FDT_VIRT_START % SZ_2M); > +#endif > > - rc = map_pages_to_xen(BOOT_FDT_VIRT_START, maddr_to_mfn(base_paddr), > - SZ_2M >> PAGE_SHIFT, > - PAGE_HYPERVISOR_RO | _PAGE_BLOCK); > + rc = map_pages_to_xen(base_virt, maddr_to_mfn(base_paddr), > + SZ_2M >> PAGE_SHIFT, flags); > if ( rc ) > panic("Unable to map the device-tree.\n"); > > > +#ifndef CONFIG_HAS_MPU > offset = fdt_paddr % SECOND_SIZE; > fdt_virt = (void *)BOOT_FDT_VIRT_START + offset; > +#else > + offset = fdt_paddr % PAGE_SIZE; > + fdt_virt = (void *)fdt_paddr; > +#endif > > if ( fdt_magic(fdt_virt) != FDT_MAGIC ) > return NULL; > @@ -101,10 +116,9 @@ void * __init early_fdt_map(paddr_t fdt_paddr) > > if ( (offset + size) > SZ_2M ) > { > - rc = map_pages_to_xen(BOOT_FDT_VIRT_START + SZ_2M, > + rc = map_pages_to_xen(base_virt + SZ_2M, > maddr_to_mfn(base_paddr + SZ_2M), > - SZ_2M >> PAGE_SHIFT, > - PAGE_HYPERVISOR_RO | _PAGE_BLOCK); > + SZ_2M >> PAGE_SHIFT, flags); > if ( rc ) > panic("Unable to map the device-tree\n"); > } > diff --git a/xen/arch/arm/mpu/mm.c b/xen/arch/arm/mpu/mm.c > index 14a1309ca1..f4ce19d36a 100644 > --- a/xen/arch/arm/mpu/mm.c > +++ b/xen/arch/arm/mpu/mm.c > @@ -448,6 +448,7 @@ static int xen_mpumap_update_entry(paddr_t base, paddr_t limit, > /* Set permission */ > xen_mpumap[idx].prbar.reg.ap = PAGE_AP_MASK(flags); > xen_mpumap[idx].prbar.reg.xn = PAGE_XN_MASK(flags); > + xen_mpumap[idx].prlar.reg.tran = PAGE_TRANSIENT_MASK(flags); ReferARM DDI 0600A.dID120821 , G1.3.23, PRLAR_EL2, Protection Region Limit Address Register (EL2), I don't seethis bit described anywhere. Do we really need this bit for MPU ? - Ayan > > write_protection_region((const pr_t*)(&xen_mpumap[idx]), idx); > } > diff --git a/xen/arch/arm/xen.lds.S b/xen/arch/arm/xen.lds.S > index 4f7daa7dca..f2715d7cb7 100644 > --- a/xen/arch/arm/xen.lds.S > +++ b/xen/arch/arm/xen.lds.S > @@ -216,7 +216,10 @@ SECTIONS > _end = . ; > > /* Section for the device tree blob (if any). */ > - .dtb : { *(.dtb) } :text > + .dtb : { > + . = ALIGN(PAGE_SIZE); > + *(.dtb) > + } :text > > DWARF2_DEBUG_SECTIONS > > -- > 2.25.1 > > From xen-devel-bounces@lists.xenproject.org Thu Jun 29 18:07:30 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 18:07:30 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557015.869981 (Exim 4.92) (envelope-from ) id 1qEw31-00037t-A0; Thu, 29 Jun 2023 18:07:15 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557015.869981; Thu, 29 Jun 2023 18:07:15 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEw31-00037m-6z; Thu, 29 Jun 2023 18:07:15 +0000 Received: by outflank-mailman (input) for mailman id 557015; Thu, 29 Jun 2023 18:07:13 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEw2z-00037f-5E for xen-devel@lists.xenproject.org; Thu, 29 Jun 2023 18:07:13 +0000 Received: from mx0a-0039f301.pphosted.com (mx0a-0039f301.pphosted.com [148.163.133.242]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id c282b0a0-16a7-11ee-8611-37d641c3527e; Thu, 29 Jun 2023 20:07:08 +0200 (CEST) Received: from pps.filterd (m0174678.ppops.net [127.0.0.1]) by mx0a-0039f301.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 35TFtxQr005169; Thu, 29 Jun 2023 18:06:54 GMT Received: from eur05-am6-obe.outbound.protection.outlook.com (mail-am6eur05lp2104.outbound.protection.outlook.com [104.47.18.104]) by mx0a-0039f301.pphosted.com (PPS) with ESMTPS id 3rha5phfcx-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Thu, 29 Jun 2023 18:06:54 +0000 Received: from DB8PR03MB6108.eurprd03.prod.outlook.com (2603:10a6:10:ed::15) by DB4PR03MB9338.eurprd03.prod.outlook.com (2603:10a6:10:3fe::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.19; Thu, 29 Jun 2023 18:06:50 +0000 Received: from DB8PR03MB6108.eurprd03.prod.outlook.com ([fe80::11f9:615a:4d9a:a5d2]) by DB8PR03MB6108.eurprd03.prod.outlook.com ([fe80::11f9:615a:4d9a:a5d2%6]) with mapi id 15.20.6521.026; Thu, 29 Jun 2023 18:06:50 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: c282b0a0-16a7-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Qg0E5qnmo8L2vxNiC+g6JfiEXxMDI2tlqzwvdSz3lm70gs4Ma0lSQhr7gsRX5i+NNfJDL5sRO1v+maN4AvwrfBF3WtXGHmgGA2g4iWUuOJYPaAFkCXYP6YcH8XPMJztPvIpJiKS5NzZcxFaUQTeKOEm9qf6xF4K+G+zmOUOBJ6oqPaLKKUnX3ipjX45d1C0+/YAxBswewE6iREhCutxxn7XhRhqecGA8FS6cXLdgYyTTbAj0CT/8L43xuGoCzzba0kupa6kQuR4voli3uM2oMuuI2WwP5fWWv0aRfyBbkZL0cFpFYFNzwb750ipZA31p/qDIhTVpjS5+t1bsWs6o0w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=iiXfCNU5kgqlvL3Z/b9w9uLj67W/rXy2j3rfKBKQwKU=; b=Ubukt0kVTE2JXYua3D3ZRvPY11P8+WEX2MCKYJJ1c3o8vu2JoUAFdZe4ffC20MjouaIWxl8uGOoofTP2MsHWXMdJxvd5qXJl13LEM03sEp9bcoOLqfC636qGmBNJAgxEDt6cskghum81mgvnNtJHjckXLkUDfPBS5MT3ZmJWQf1GbtsRtRDTSu9nt62QMAMnPukFjFg/PFICyg2pulrfg5FGif7P/SGHf+fPtMMRp1VDZKuzNt+B9UjGvx4DTihLFTtw2nX5uN0XVfB2pBh7CHvZG49ifjD+FrWbv1f7nvwIL5I8xzCia7ttmEyH0NFSPuUqqJB16j7/hovnKPSweA== 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 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=epam.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=iiXfCNU5kgqlvL3Z/b9w9uLj67W/rXy2j3rfKBKQwKU=; b=FjtdUrtaVWmk6QFGJLYUDBOi6hkbVAte8WQOAacDAkz2zyVUh/ack7mVVuoFwo3A15kRFrijdZtf9bSYEPfmcGgib6e1JwnjUo8utwcJXOivA+3iKkY+RMFkKBK9+Y1Wr8tmA/Ln5xWz4KpuvDZEmpE2dBTLAPD0BhPhmY8VhLLqJXf36kdxFmMeUtnQ8K3f5ATFYbuKb6D5w+KFSkxZSTB92n+EJTWgdU2KaPOReWEuEK71aEzP5ZePf+a8Ha3R5CiYNRJvkifebuV8Joc6yQs8ZxPHvV8mIQzc3HFueP6Kh2UdE73QAtdSnak1zoHE10UnA4NuwB2WejqJpCEBsg== From: Oleksandr Tyshchenko To: Rahul Singh CC: Juergen Gross , Stefano Stabellini , "linux-kernel@vger.kernel.org" , Samuel Holland , David Woodhouse , Jane Malalane , "xen-devel@lists.xenproject.org" Subject: Re: [PATCH v2] xen/evtchn: Introduce new IOCTL to bind static evtchn Thread-Topic: [PATCH v2] xen/evtchn: Introduce new IOCTL to bind static evtchn Thread-Index: AQHZqqDns5B5iYjWyUqK/twjIbdmaq+iE6mA Date: Thu, 29 Jun 2023 18:06:50 +0000 Message-ID: <90c961d4-9d10-6fbc-b5f7-84d231264289@epam.com> References: <764d561e3aecb7e63e8601dc50aaef9fc40834e4.1688051342.git.rahul.singh@arm.com> In-Reply-To: <764d561e3aecb7e63e8601dc50aaef9fc40834e4.1688051342.git.rahul.singh@arm.com> Accept-Language: en-US, ru-RU Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ms-publictraffictype: Email x-ms-traffictypediagnostic: DB8PR03MB6108:EE_|DB4PR03MB9338:EE_ x-ms-office365-filtering-correlation-id: ed51e7c5-20e1-494d-9fa6-08db78cb9cb8 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: WateOr1QCbQrijjlDrm6nEEl+PSao9CIMnkWnyUTbntsL1M5xQn8H/GfjGvdKa4Ls0cK6CdgngICPAUBrda+f0YX2x7hb1VY4KljviDRbrRZZ7UEZkT+Fmaq1F4CHtRuwPdeAA+Edryesyb+YQ86GjgdhZtztaUekkJ9pZOSgoi7hnQg/g6BXPkIdYHq9Xh07/G+AFrNA/Lg76YjQmGmu5iBlkk9Rtn/1DO/mG4OEn4vTPnusgVnFXK93pO2/UXowjggGEiEKKFfiDnyzAnNJSkkwTnQN/s5vx0V34sCpsfZFcmxyKYP3ASid+9cExTTmqKxS3BM3aDHgJX2bfDygXMzCuLr8Z0I19WxZ+o7wzK9rPK/kJDlaE04sWqI1OKHcOTazI/NGPrXDwEXs6S8kNDbZd3OC8EAJ1tiZOz7nzFzQSXt5kXrH1uIAkom6IIpw7qXNJIiLorzVqeyo+F/nq9SUVkUCS3W4UtBQkbkOP1TWKyaUA33g//eku7mDyjPrJpXunY73TDCbDgiUZB689DpxTk5TVxE3T7kLdf/43rYK2uty/rhFr6RtaAxAlXo20oUz5bF9KWsr2Fwhw4gu24pq6kNn0C+f3URHYxoBT56WBz6fa1RgV/XY6zI626HTmBv4cSejVjM01S3541xHA== x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DB8PR03MB6108.eurprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(136003)(376002)(346002)(366004)(39860400002)(396003)(451199021)(71200400001)(54906003)(8676002)(8936002)(5660300002)(36756003)(478600001)(6916009)(4326008)(91956017)(6486002)(31686004)(66556008)(66476007)(66446008)(64756008)(76116006)(66946007)(316002)(41300700001)(6512007)(38100700002)(122000001)(53546011)(186003)(2616005)(6506007)(26005)(86362001)(31696002)(83380400001)(38070700005)(2906002)(45980500001);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?andYSjhrY09XV0s4VHI5b2E0SmxxaU02MElUcmIybTBpR2U1R1M0RlZnVUpV?= =?utf-8?B?U00zMFdaU1ZKbTltRUUzU0dvd01UOTJtdEluaHZPUkQ4ZmhRaUZ6bkJqNXo0?= =?utf-8?B?N1B6aVl0clhkMjgzRUs5U3RhVnhRNFZUc2VXY1FlZnNQazd1ZjZxTVNWRmhx?= =?utf-8?B?WjJnRElKNk84RzRzYzlWcmwrUkFpZE9MbnRUOER4TnF3RVV6SmJiSzRKQ0t6?= =?utf-8?B?ZGpyUTZ2TlJzTVhic3VXeFhMN0R3a3RhZy9meExXSFp0WUFkeEVSTGVMaW5C?= =?utf-8?B?YjJoY1VuQ3RTdTRhL2FaeFJZYTJ0NXN6RGNoMkNXOGJUN3I4RGNrMUp3Wmxi?= =?utf-8?B?UWRiNVJWOStMQUdzOERmRUt4bVo4UTE1S1JvYU1vMEM3eU02RUE0bU9LSzNk?= =?utf-8?B?SnJ2Yk9RdzdESzZWWDlvMHNLL3dyTUlUUGJhRFFadW45b3V2TmQ2THhRYjIv?= =?utf-8?B?eU9wNG51dFJCMVpNWFlHdnV5NTUwN2pGRFdtbWZTc1lEelhiQlNmTVo4ekRT?= =?utf-8?B?ZEJETW8wZjVzNmp0U1FvQlFGQUVKSStDV2FlMUVpY08zcm5zUHplNWFHWHpD?= =?utf-8?B?bWZ6MFgwdEtMTmJCbzFPYytqL0g1NCtQZlcvSjlORXBTRTF0RXRiQWVnL3Rq?= =?utf-8?B?OGtnbUZqM2swK3dsRnptYWwxcFI5ODd3eElLNWEySE41d3VYVEMwRTZ0Q0Y4?= =?utf-8?B?ZTlUUVJBaDVFdHU1L2Q1c2lJek5TWHhyNDNNUytjYXNMUlNGa0YwRmNMWDhU?= =?utf-8?B?YzhuSWFQRHFVN3dwalBReEJvcjR0SXhNcTN5T2lBMWFIM1RReHE2S3dsNXBa?= =?utf-8?B?VmpqLzk1bEhmajZJSmx0Yi90aXVrM1VSUWxDVGxZY2U3YmZTdkQwZm43K2dL?= =?utf-8?B?eFJUVDUya2RwLy9xVjlDN2NKdllmeUFkc2tTQXVGOEs4Q29kQndraVg0bDhY?= =?utf-8?B?Zmc3a24vQW9aN0ZScjRmSDBQeXN0cnFLd2hWVFJBbXdCTFdObXM4QjgzWmJj?= =?utf-8?B?UGcxdVpkRFpDZndQbUdTNVU1OFBibkpHb2R1L2hpQTIreCtjV2drbkUwT1cv?= =?utf-8?B?OWh4QnVoWDRGN3BsUmdvaDcyQXV1MXFKUnpvUHNtWFY3OXN5T2NRMzd0dCtO?= =?utf-8?B?WWNiaUtSa1FJdkJkMUIrbTNyM01PNnNUUGVxTmRxVlZReUVoTDJwSjZuRFl1?= =?utf-8?B?ZDNSblRPSUxnb1p5Q2UrdXdHbFVEamw1MzVwaEZpQVJaVlNMN0FkTHVBNUJ4?= =?utf-8?B?bHZXUUJaUkpyMXJhVG5sS3p0UDA1QWk2WW9XSFpjMkIzRVlsOEtDMnJzWXVa?= =?utf-8?B?c20yT0RiUFhTTXFxdXJuL25zMWRCc3ZxL1h2WStta1dHRHBYQUF1b2pOLy9r?= =?utf-8?B?SnRyaUdkNWNYcXFGRnVxUGtudHh1YzVncTdQbEdyTjdORGZUa0UyNW1Ca3BX?= =?utf-8?B?MHlrRjlTc1plRS93RGxEeTNQSERwSm41NDVrOTBiS0tSaDNxRmtEWlFqOHdB?= =?utf-8?B?ck9RS3VhZXBmdTBaWVlhQkd2RHlOUXB1SHdTTWNiejgyMDdEbDV6TmMzMG9V?= =?utf-8?B?cUhmU3hNZmpsdTk3cGhoT1lCeVBLN0pYc09ETUkvbnhsM09YRldJOW5SUFZT?= =?utf-8?B?S2p0WU0yRmtsUHJ4bWlzNXVaVjkvNG5OVVdjWEpScHYrQUphdUx3RVVzTXFE?= =?utf-8?B?Nm9mWU9sZ0g3VHFiQ0hSR0FsL3NTUmh4alIwdU9vVEQ3aWVsN3ZzQitkaEg0?= =?utf-8?B?UkpaNzJITmpJY2g5Uk9sQTdnYmpqQWpoRjd5K3hqclJnbDU1aVlDR3NxQVg1?= =?utf-8?B?bGZ6TW9uVU5TaUhPUTZoWm9oS3NlSWxDN2plM2dacFNjYjVibHFyZ3NKbExu?= =?utf-8?B?MG5xUHluZXJBRjFUekFka0o1cSt6ZkNVSHBNbHRYbitxbGlOU2RBc01QZzhq?= =?utf-8?B?OEpCM0FDWm1UTGwybTlCVTFGbWI3eEhhVUYvUXlxZ09HWnFXL1A1TjVHT0xq?= =?utf-8?B?R0VXY292cUcxUk53ZE14eDc4Sk9NQzA1TkJuVEoyZWZuV0picGV3bENQMTQ3?= =?utf-8?B?d2huRE1aWWlLcGhzQXJiZ01wZnE1Nk9yallyQmpJQ0tNTVhBOGh5R25Bc1lk?= =?utf-8?B?RUZ3RVVURHkzUGpUeDBuWmFCK2o0ZlVNRVMvSG9pc2huVG1JUjIwdWd0alBK?= =?utf-8?Q?pKTI/srr9ejc0RhZXIulWVM=3D?= Content-Type: text/plain; charset="utf-8" Content-ID: Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: epam.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: DB8PR03MB6108.eurprd03.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: ed51e7c5-20e1-494d-9fa6-08db78cb9cb8 X-MS-Exchange-CrossTenant-originalarrivaltime: 29 Jun 2023 18:06:50.5575 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: b41b72d0-4e9f-4c26-8a69-f949f367c91d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: PY8Ge1F8LSKzzJ54ldXsIvmoWdDYAT463tl9Hpf012P2OFo55e6IKmVvVDZ8RvvcE8tidw1EAwewUOQZHDP0luG9NAKLIpWShIdgmT45UDM= X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB4PR03MB9338 X-Proofpoint-GUID: 945mKLx5oeaphABgEZenTOSu8Z0CX3Ls X-Proofpoint-ORIG-GUID: 945mKLx5oeaphABgEZenTOSu8Z0CX3Ls X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.254,Aquarius:18.0.957,Hydra:6.0.591,FMLib:17.11.176.26 definitions=2023-06-29_05,2023-06-27_01,2023-05-22_02 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 clxscore=1011 adultscore=0 spamscore=0 mlxlogscore=554 phishscore=0 lowpriorityscore=0 priorityscore=1501 impostorscore=0 mlxscore=0 bulkscore=0 suspectscore=0 malwarescore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2305260000 definitions=main-2306290162 DQoNCk9uIDI5LjA2LjIzIDE4OjQ2LCBSYWh1bCBTaW5naCB3cm90ZToNCg0KSGVsbG8gUmFodWwN Cg0KDQo+IFhlbiA0LjE3IHN1cHBvcnRzwqB0aGUgY3JlYXRpb24gb2Ygc3RhdGljIGV2dGNobnMu IFRvIGFsbG93IHVzZXIgc3BhY2UNCj4gYXBwbGljYXRpb24gdG8gYmluZCBzdGF0aWMgZXZ0Y2hu cyBpbnRyb2R1Y2UgbmV3IGlvY3RsDQo+ICJJT0NUTF9FVlRDSE5fQklORF9TVEFUSUMiLiBFeGlz dGluZyBJT0NUTCBkb2luZyBtb3JlIHRoYW4gYmluZGluZw0KPiB0aGF04oCZcyB3aHkgd2UgbmVl ZCB0byBpbnRyb2R1Y2UgdGhlIG5ldyBJT0NUTCB0byBvbmx5IGJpbmQgdGhlIHN0YXRpYw0KPiBl dmVudCBjaGFubmVscy4NCj4gDQo+IEFsc28sIHN0YXRpYyBldnRjaG5zIHRvIGJlIGF2YWlsYWJs ZSBmb3IgdXNlIGR1cmluZyB0aGUgbGlmZXRpbWUgb2YgdGhlDQo+IGd1ZXN0LiBXaGVuIHRoZSBh cHBsaWNhdGlvbiBleGl0cywgX191bmJpbmRfZnJvbV9pcnEoKSBlbmRzIHVwIGJlaW5nDQo+IGNh bGxlZCBmcm9tIHJlbGVhc2UoKSBmaWxlIG9wZXJhdGlvbnMgYmVjYXVzZSBvZiB0aGF0IHN0YXRp YyBldnRjaG5zDQo+IGFyZSBnZXR0aW5nIGNsb3NlZC4gVG8gYXZvaWQgY2xvc2luZyB0aGUgc3Rh dGljIGV2ZW50IGNoYW5uZWwsIGFkZCB0aGUNCj4gbmV3IGJvb2wgdmFyaWFibGUgImlzX3N0YXRp YyIgaW4gInN0cnVjdCBpcnFfaW5mbyIgdG8gbWFyayB0aGUgZXZlbnQNCj4gY2hhbm5lbCBzdGF0 aWMgd2hlbiBjcmVhdGluZyB0aGUgZXZlbnQgY2hhbm5lbCB0byBhdm9pZCBjbG9zaW5nIHRoZQ0K PiBzdGF0aWMgZXZ0Y2huLg0KPiANCj4gU2lnbmVkLW9mZi1ieTogUmFodWwgU2luZ2ggPHJhaHVs LnNpbmdoQGFybS5jb20+DQo+IC0tLQ0KPiB2MjoNCj4gICAqIFVzZSBib29sIGluIHBsYWNlIHU4 IHRvIGRlZmluZSBpc19zdGF0aWMgdmFyaWFibGUuDQo+ICAgKiBBdm9pZCBjbG9zaW5nIHRoZSBz dGF0aWMgZXZ0Y2hucyBpbiBlcnJvciBwYXRoLg0KDQoNClBhdGNoIGxvb2tzIGdvb2QgdG8gbWUs IGp1c3QgYSBuaXQgKHF1ZXN0aW9uKSBiZWxvdy4NCg0KDQo+IC0tLQ0KPiAgIGRyaXZlcnMveGVu L2V2ZW50cy9ldmVudHNfYmFzZS5jIHwgIDcgKysrKystLQ0KPiAgIGRyaXZlcnMveGVuL2V2dGNo bi5jICAgICAgICAgICAgIHwgMzAgKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tDQo+ICAg aW5jbHVkZS91YXBpL3hlbi9ldnRjaG4uaCAgICAgICAgfCAgOSArKysrKysrKysNCj4gICBpbmNs dWRlL3hlbi9ldmVudHMuaCAgICAgICAgICAgICB8ICAyICstDQo+ICAgNCBmaWxlcyBjaGFuZ2Vk LCAzNyBpbnNlcnRpb25zKCspLCAxMSBkZWxldGlvbnMoLSkNCj4gDQo+IGRpZmYgLS1naXQgYS9k cml2ZXJzL3hlbi9ldmVudHMvZXZlbnRzX2Jhc2UuYyBiL2RyaXZlcnMveGVuL2V2ZW50cy9ldmVu dHNfYmFzZS5jDQo+IGluZGV4IGM3NzE1ZjhiZDQ1Mi4uNWQzYjVjN2NmZTY0IDEwMDY0NA0KPiAt LS0gYS9kcml2ZXJzL3hlbi9ldmVudHMvZXZlbnRzX2Jhc2UuYw0KPiArKysgYi9kcml2ZXJzL3hl bi9ldmVudHMvZXZlbnRzX2Jhc2UuYw0KPiBAQCAtMTEyLDYgKzExMiw3IEBAIHN0cnVjdCBpcnFf aW5mbyB7DQo+ICAgCXVuc2lnbmVkIGludCBpcnFfZXBvY2g7IC8qIElmIGVvaV9jcHUgdmFsaWQ6 IGlycV9lcG9jaCBvZiBldmVudCAqLw0KPiAgIAl1NjQgZW9pX3RpbWU7ICAgICAgICAgICAvKiBU aW1lIGluIGppZmZpZXMgd2hlbiB0byBFT0kuICovDQo+ICAgCXJhd19zcGlubG9ja190IGxvY2s7 DQo+ICsJYm9vbCBpc19zdGF0aWM7ICAgICAgICAgICAvKiBJcyBldmVudCBjaGFubmVsIHN0YXRp YyAqLw0KPiAgIA0KPiAgIAl1bmlvbiB7DQo+ICAgCQl1bnNpZ25lZCBzaG9ydCB2aXJxOw0KPiBA QCAtOTgyLDcgKzk4Myw4IEBAIHN0YXRpYyB2b2lkIF9fdW5iaW5kX2Zyb21faXJxKHVuc2lnbmVk IGludCBpcnEpDQo+ICAgCQl1bnNpZ25lZCBpbnQgY3B1ID0gY3B1X2Zyb21faXJxKGlycSk7DQo+ ICAgCQlzdHJ1Y3QgeGVuYnVzX2RldmljZSAqZGV2Ow0KPiAgIA0KPiAtCQl4ZW5fZXZ0Y2huX2Ns b3NlKGV2dGNobik7DQo+ICsJCWlmICghaW5mby0+aXNfc3RhdGljKQ0KPiArCQkJeGVuX2V2dGNo bl9jbG9zZShldnRjaG4pOw0KPiAgIA0KPiAgIAkJc3dpdGNoICh0eXBlX2Zyb21faXJxKGlycSkp IHsNCj4gICAJCWNhc2UgSVJRVF9WSVJROg0KPiBAQCAtMTU3NCw3ICsxNTc2LDcgQEAgaW50IHhl bl9zZXRfaXJxX3ByaW9yaXR5KHVuc2lnbmVkIGlycSwgdW5zaWduZWQgcHJpb3JpdHkpDQo+ICAg fQ0KPiAgIEVYUE9SVF9TWU1CT0xfR1BMKHhlbl9zZXRfaXJxX3ByaW9yaXR5KTsNCj4gICANCj4g LWludCBldnRjaG5fbWFrZV9yZWZjb3VudGVkKGV2dGNobl9wb3J0X3QgZXZ0Y2huKQ0KPiAraW50 IGV2dGNobl9tYWtlX3JlZmNvdW50ZWQoZXZ0Y2huX3BvcnRfdCBldnRjaG4sIGJvb2wgaXNfc3Rh dGljKQ0KPiAgIHsNCj4gICAJaW50IGlycSA9IGdldF9ldnRjaG5fdG9faXJxKGV2dGNobik7DQo+ ICAgCXN0cnVjdCBpcnFfaW5mbyAqaW5mbzsNCj4gQEAgLTE1OTAsNiArMTU5Miw3IEBAIGludCBl dnRjaG5fbWFrZV9yZWZjb3VudGVkKGV2dGNobl9wb3J0X3QgZXZ0Y2huKQ0KPiAgIAlXQVJOX09O KGluZm8tPnJlZmNudCAhPSAtMSk7DQo+ICAgDQo+ICAgCWluZm8tPnJlZmNudCA9IDE7DQo+ICsJ aW5mby0+aXNfc3RhdGljID0gaXNfc3RhdGljOw0KPiAgIA0KPiAgIAlyZXR1cm4gMDsNCj4gICB9 DQo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL3hlbi9ldnRjaG4uYyBiL2RyaXZlcnMveGVuL2V2dGNo bi5jDQo+IGluZGV4IGM5OTQxNWE3MDA1MS4uZTZkMjMwMzQ3OGIyIDEwMDY0NA0KPiAtLS0gYS9k cml2ZXJzL3hlbi9ldnRjaG4uYw0KPiArKysgYi9kcml2ZXJzL3hlbi9ldnRjaG4uYw0KPiBAQCAt MzY2LDcgKzM2Niw4IEBAIHN0YXRpYyBpbnQgZXZ0Y2huX3Jlc2l6ZV9yaW5nKHN0cnVjdCBwZXJf dXNlcl9kYXRhICp1KQ0KPiAgIAlyZXR1cm4gMDsNCj4gICB9DQo+ICAgDQo+IC1zdGF0aWMgaW50 IGV2dGNobl9iaW5kX3RvX3VzZXIoc3RydWN0IHBlcl91c2VyX2RhdGEgKnUsIGV2dGNobl9wb3J0 X3QgcG9ydCkNCj4gK3N0YXRpYyBpbnQgZXZ0Y2huX2JpbmRfdG9fdXNlcihzdHJ1Y3QgcGVyX3Vz ZXJfZGF0YSAqdSwgZXZ0Y2huX3BvcnRfdCBwb3J0LA0KPiArCQkJYm9vbCBpc19zdGF0aWMpDQo+ ICAgew0KPiAgIAlzdHJ1Y3QgdXNlcl9ldnRjaG4gKmV2dGNobjsNCj4gICAJc3RydWN0IGV2dGNo bl9jbG9zZSBjbG9zZTsNCj4gQEAgLTQwMiwxNCArNDAzLDE2IEBAIHN0YXRpYyBpbnQgZXZ0Y2hu X2JpbmRfdG9fdXNlcihzdHJ1Y3QgcGVyX3VzZXJfZGF0YSAqdSwgZXZ0Y2huX3BvcnRfdCBwb3J0 KQ0KPiAgIAlpZiAocmMgPCAwKQ0KPiAgIAkJZ290byBlcnI7DQo+ICAgDQo+IC0JcmMgPSBldnRj aG5fbWFrZV9yZWZjb3VudGVkKHBvcnQpOw0KPiArCXJjID0gZXZ0Y2huX21ha2VfcmVmY291bnRl ZChwb3J0LCBpc19zdGF0aWMpOw0KPiAgIAlyZXR1cm4gcmM7DQo+ICAgDQo+ICAgZXJyOg0KPiAg IAkvKiBiaW5kIGZhaWxlZCwgc2hvdWxkIGNsb3NlIHRoZSBwb3J0IG5vdyAqLw0KPiAtCWNsb3Nl LnBvcnQgPSBwb3J0Ow0KPiAtCWlmIChIWVBFUlZJU09SX2V2ZW50X2NoYW5uZWxfb3AoRVZUQ0hO T1BfY2xvc2UsICZjbG9zZSkgIT0gMCkNCj4gLQkJQlVHKCk7DQo+ICsJaWYgKCFpc19zdGF0aWMp IHsNCg0KDQpJIHRoaW5rIG5vdyAic3RydWN0IGV2dGNobl9jbG9zZSBjbG9zZTsiIGNhbiBiZSBw bGFjZWQgaGVyZSBhcyBpdCBpcyBub3QgDQp1c2VkIG91dHNpZGUgb2YgdGhpcyBibG9jay4NCg0K QWxzbyB0aGlzIGJsb2NrIGxvb2tzIGxpa2UgYW4gb3Blbi1jb2RlZCB2ZXJzaW9uIG9mIHhlbl9l dnRjaG5fY2xvc2UoKQ0KZGVmaW5lZCBhdCBldmVudHNfYmFzZS5jLCBzbyBtYXliZSBpdCBpcyB3 b3J0aCBtYWtpbmcgeGVuX2V2dGNobl9jbG9zZSgpIA0Kc3RhdGljIGlubGluZSBhbmQgcGxhY2lu ZyBpdCBpbnRvIGV2ZW50cy5oLCB0aGVuIGNhbGxpbmcgaGVscGVyIGhlcmU/DQpQbGVhc2Ugbm90 ZSwgSSB3aWxsIGJlIG9rIGVpdGhlciB3YXkuDQoNCg0KPiArCQljbG9zZS5wb3J0ID0gcG9ydDsN Cj4gKwkJaWYgKEhZUEVSVklTT1JfZXZlbnRfY2hhbm5lbF9vcChFVlRDSE5PUF9jbG9zZSwgJmNs b3NlKSAhPSAwKQ0KPiArCQkJQlVHKCk7DQo+ICsJfQ0KPiAgIAlkZWxfZXZ0Y2huKHUsIGV2dGNo bik7DQo+ICAgCXJldHVybiByYzsNCj4gICB9DQoNCltzbmlwXQ== From xen-devel-bounces@lists.xenproject.org Thu Jun 29 19:11:42 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 19:11:42 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557021.869990 (Exim 4.92) (envelope-from ) id 1qEx34-000210-Tt; Thu, 29 Jun 2023 19:11:22 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557021.869990; Thu, 29 Jun 2023 19:11:22 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEx34-00020t-Qy; Thu, 29 Jun 2023 19:11:22 +0000 Received: by outflank-mailman (input) for mailman id 557021; Thu, 29 Jun 2023 19:11:21 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEx33-00020n-Ag for xen-devel@lists.xenproject.org; Thu, 29 Jun 2023 19:11:21 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id b87f08ff-16b0-11ee-b237-6b7b168915f2; Thu, 29 Jun 2023 21:11:19 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id D49476159D; Thu, 29 Jun 2023 19:11:15 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 8B61FC433C0; Thu, 29 Jun 2023 19:11:13 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: b87f08ff-16b0-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1688065875; bh=BPLBbT088jb5drwGw4dM/CX78qFH2AmCELMWN6iP06A=; h=Date:From:To:cc:Subject:In-Reply-To:References:From; b=f9+myklHnJKy0+4KYkd11J7uw7dhI+qod3x+Lzh7XOmzS5iwAGneJzKnPbvsiMTED oT2rSF9AFSSwKdw5JEUNQ5tId26VQuedzE4RL7x6ozT/M8YCFhM76YJtefUO6cz0Xy H+/PvPiqfYDSodeNo/ZxEGn1Wa2R4aOJd0nrPGLRvdc0UEcDa9GHz8bjaoXMI3l5sn ix6b0u4Gq7Lvco+ncSO8+/FKxR+VOvKrP/mNhAatWQRu3yO6xx4BmZvB8uzepGUYq3 tm1hpd7SeXGYEv2Zix6KIHDXmUzeZvuv9+csLQVm24Lv06ue6SzxkYmvSHIRyqWCX9 Yz6fjfwU55fYw== Date: Thu, 29 Jun 2023 12:11:12 -0700 (PDT) From: Stefano Stabellini X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop To: Luca Fancellu cc: Nicola Vetrini , Xen-devel , Stefano Stabellini , "michal.orzel@amd.com" , "xenia.ragiadakou@amd.com" , "ayan.kumar.halder@amd.com" , "consulting@bugseng.com" , "jbeulich@suse.com" , "andrew.cooper3@citrix.com" , "roger.pau@citrix.com" , Bertrand Marquis , "julien@xen.org" , Volodymyr Babchuk Subject: Re: [XEN PATCH v3 1/3] xen/arch/arm: fix violations of MISRA C:2012 Rule 3.1 In-Reply-To: <5FD86C4C-3BD6-4ED3-A910-683DCC86613D@arm.com> Message-ID: References: <7996a8bb62e62076d48bdf289e37352bb5e43b52.1688032865.git.nicola.vetrini@bugseng.com> <5FD86C4C-3BD6-4ED3-A910-683DCC86613D@arm.com> User-Agent: Alpine 2.22 (DEB 394 2020-01-19) MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="8323329-1949525725-1688065875=:3936094" This message is in MIME format. The first part should be readable text, while the remaining parts are likely unreadable without MIME-aware tools. --8323329-1949525725-1688065875=:3936094 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8BIT On Thu, 29 Jun 2023, Luca Fancellu wrote: > > On 29 Jun 2023, at 11:06, Nicola Vetrini wrote: > > > > In the files `xen/arch/arm/include/asm/arm(32|64)/flushtlb.h' there are a > > few occurrences of nested '//' character sequences inside C-style comment > > blocks, which violate Rule 3.1. The patch aims to resolve those by changing > > the inner comments to arm asm comments, delimited by ';' instead. > > > > Signed-off-by: Nicola Vetrini > > Can I suggest another commit title: > “xen/arm: tlbflush: fix violations of MISRA C:2012 Rule 3.1" > > Sometimes when I am not sure on how to deal with prefixes, I check to the git > history of the line I am changing, for these lines there was a commit from > Julien using these prefixes. I’m using vs code with GitLens extension, that > ease a lot this kind of checks. > > Apart from that, the changes looks good to me: > > Reviewed-by: Luca Fancellu With Luca's suggestion (can be done on commit): Reviewed-by: Stefano Stabellini --8323329-1949525725-1688065875=:3936094-- From xen-devel-bounces@lists.xenproject.org Thu Jun 29 19:13:01 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 19:13:01 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557025.870001 (Exim 4.92) (envelope-from ) id 1qEx4e-0002Xe-8A; Thu, 29 Jun 2023 19:13:00 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557025.870001; Thu, 29 Jun 2023 19:13:00 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEx4e-0002XX-57; Thu, 29 Jun 2023 19:13:00 +0000 Received: by outflank-mailman (input) for mailman id 557025; Thu, 29 Jun 2023 19:12:59 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEx4d-0002XJ-87 for xen-devel@lists.xenproject.org; Thu, 29 Jun 2023 19:12:59 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [2604:1380:4641:c500::1]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id f3d3e294-16b0-11ee-8611-37d641c3527e; Thu, 29 Jun 2023 21:12:56 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 403CB615E7; Thu, 29 Jun 2023 19:12:55 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id D1101C433C0; Thu, 29 Jun 2023 19:12:52 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: f3d3e294-16b0-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1688065974; bh=rdECzaccBaa5IG+eqZ/dSfppJRjb0we3BID2NdDlhrM=; h=Date:From:To:cc:Subject:In-Reply-To:References:From; b=Q95ALkTx8AdmAq1vxS0VjQSBDc0/DDfUc7i/Z4YBFzEaVZqCaIaMVtbY0euKraIPa 4vcrglCybhjj9jNIXfTbh/spqhl9cP2NnhwKvJwphCiLNWhW7S/LQN0c1o1U4GVfqf eVllHbSmtyQbswyefH50VLVLvrWwPDkkU5x96qBT0jc4XNoc8iOXka5+QvJaLeo5EQ cZbY24qoO9mLrMvZU4/i9BDoLn+LiDXI7P6LifN/+Msig8yeD1KN7T/mrHTZ3iJVU8 WDL6CT43zMe7WVAlwDlmpGl00EIUu7KVnEET02i+hIDs5AAJBO3lg63g2gpkwJFILz N+RvNUKa1mhqw== Date: Thu, 29 Jun 2023 12:12:51 -0700 (PDT) From: Stefano Stabellini X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop To: Luca Fancellu cc: Nicola Vetrini , Xen-devel , Stefano Stabellini , "michal.orzel@amd.com" , "xenia.ragiadakou@amd.com" , "ayan.kumar.halder@amd.com" , "consulting@bugseng.com" , "jbeulich@suse.com" , "andrew.cooper3@citrix.com" , "roger.pau@citrix.com" , Bertrand Marquis , "julien@xen.org" , Rahul Singh , Volodymyr Babchuk Subject: Re: [XEN PATCH v3 2/3] xen/drivers/passthrough/arm/smmu-v3.c: fix violations of MISRA C:2012 Rule 3.1 In-Reply-To: <55390224-89CC-44E9-95B1-BBA491BBFEF3@arm.com> Message-ID: References: <8a8d5ed47f24791d3927345fafed07023a8b0b76.1688032865.git.nicola.vetrini@bugseng.com> <55390224-89CC-44E9-95B1-BBA491BBFEF3@arm.com> User-Agent: Alpine 2.22 (DEB 394 2020-01-19) MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="8323329-414435028-1688065974=:3936094" This message is in MIME format. The first part should be readable text, while the remaining parts are likely unreadable without MIME-aware tools. --8323329-414435028-1688065974=:3936094 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8BIT On Thu, 29 Jun 2023, Luca Fancellu wrote: > > On 29 Jun 2023, at 11:06, Nicola Vetrini wrote: > > > > In the file `xen/drivers/passthrough/arm/smmu-v3.c' there are a few occurrences > > here you use a different character to enclose the file path (` vs ‘) may I suggest to > use only (‘)? > > > of nested '//' character sequences inside C-style comment blocks, which violate > > Rule 3.1. > > > > The patch aims to resolve those by replacing the nested comments with > > equivalent constructs that do not violate the rule. > > > > Signed-off-by: Nicola Vetrini > > You are missing the “---“ here, meaning that the lines below are part of the > commit message and I’m sure you don’t want that. > > Also here, may I suggest to use this commit title instead? > “xen/arm: smmuv3: Fix violations of MISRA C:2012 Rule 3.1” > > Apart from that, changes looks good to me: > > Reviewed-by: Luca Fancellu > > Will be the maintainer/committer to decide if addressing these comment, > if accepted, on commit or if you need to send another version, in which > case you can retain my r-by provided that no other modifications are done. I think it can be done on commit. With the changes suggested by Luca: Reviewed-by: Stefano Stabellini > > Changes: > > - Resending the patch with the right maintainers in CC. > > Changes in V2: > > - Split the patch into a series and reworked the fix. > > - Apply the fix to the arm32 `flushtlb.h' file, for consistency > > Changes in V3: > > - Revised the comment to make it clear the function the parallel control > > flows in the comment belong to. > > --- > > xen/drivers/passthrough/arm/smmu-v3.c | 8 ++++---- > > 1 file changed, 4 insertions(+), 4 deletions(-) > > > > diff --git a/xen/drivers/passthrough/arm/smmu-v3.c b/xen/drivers/passthrough/arm/smmu-v3.c > > index 720aa69ff2..cdbb505134 100644 > > --- a/xen/drivers/passthrough/arm/smmu-v3.c > > +++ b/xen/drivers/passthrough/arm/smmu-v3.c > > @@ -1047,10 +1047,10 @@ static int arm_smmu_atc_inv_domain(struct arm_smmu_domain *smmu_domain, > > * before we read 'nr_ats_masters' in case of a concurrent call to > > * arm_smmu_enable_ats(): > > * > > - * // unmap() // arm_smmu_enable_ats() > > - * TLBI+SYNC atomic_inc(&nr_ats_masters); > > - * smp_mb(); [...] > > - * atomic_read(&nr_ats_masters); pci_enable_ats() // writel() > > + * --- unmap() --- --- arm_smmu_enable_ats() --- > > + * TLBI+SYNC atomic_inc(&nr_ats_masters); > > + * smp_mb(); [...] > > + * atomic_read(&nr_ats_masters); pci_enable_ats() (see writel()) > > * > > * Ensures that we always see the incremented 'nr_ats_masters' count if > > * ATS was enabled at the PCI device before completion of the TLBI. > > -- > > 2.34.1 > > > > > > --8323329-414435028-1688065974=:3936094-- From xen-devel-bounces@lists.xenproject.org Thu Jun 29 19:20:57 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 19:20:57 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557029.870011 (Exim 4.92) (envelope-from ) id 1qExC6-00046I-0D; Thu, 29 Jun 2023 19:20:42 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557029.870011; Thu, 29 Jun 2023 19:20:41 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qExC5-00046B-TF; Thu, 29 Jun 2023 19:20:41 +0000 Received: by outflank-mailman (input) for mailman id 557029; Thu, 29 Jun 2023 19:20:41 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qExC5-000465-4g for xen-devel@lists.xenproject.org; Thu, 29 Jun 2023 19:20:41 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 0822103d-16b2-11ee-b237-6b7b168915f2; Thu, 29 Jun 2023 21:20:40 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id B5E54615F2; Thu, 29 Jun 2023 19:20:38 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 4819AC433C8; Thu, 29 Jun 2023 19:20:36 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 0822103d-16b2-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1688066438; bh=9Utbwkq2a0pfGrGh2JQgIOuAxBEK4bKuW1T/J+wsC8g=; h=Date:From:To:cc:Subject:In-Reply-To:References:From; b=B5FA5pnsHrOc1t3uCaF9ivwml9MyZgmMQ6x+E86kFTs34dkpSBu+qX3jx9jXr+gYp mmgdwm4+A3xnJKkO37Fti9sRKbdCg4QeYgBqcnOmaXGyeHQ+jAq69/PM5afaxHDRQa IXNpiCBfC2j8NxwmjwgwwUNqKMpqujbxAnpRsDPd3zyVYfdTWHUtCcTO12uylDfQr9 9d6jea8QsolpqA1Y/cwfSq8VFGcAcSlsGgpbWIoh1D+RYyQ3XGI3qxv7e0XoRUS74/ zsyatyXWnFGOXWqKvr+rEVyDUNSBcBA5+yVY2UF9PUi4suEn3Uq3W1MEUNaq5+NzDG d5i/yisj7PJVw== Date: Thu, 29 Jun 2023 12:20:35 -0700 (PDT) From: Stefano Stabellini X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop To: Luca Fancellu cc: Nicola Vetrini , Xen-devel , Stefano Stabellini , "michal.orzel@amd.com" , "xenia.ragiadakou@amd.com" , "ayan.kumar.halder@amd.com" , "consulting@bugseng.com" , "jbeulich@suse.com" , "andrew.cooper3@citrix.com" , "roger.pau@citrix.com" , Bertrand Marquis , "julien@xen.org" , George Dunlap , Wei Liu Subject: Re: [XEN PATCH v3 3/3] xen: fix violations of MISRA C:2012 Rule 3.1 In-Reply-To: <771A1A80-0FC6-4D20-84FE-DA0A2DCFF14B@arm.com> Message-ID: References: <771A1A80-0FC6-4D20-84FE-DA0A2DCFF14B@arm.com> User-Agent: Alpine 2.22 (DEB 394 2020-01-19) MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="8323329-985556011-1688066438=:3936094" This message is in MIME format. The first part should be readable text, while the remaining parts are likely unreadable without MIME-aware tools. --8323329-985556011-1688066438=:3936094 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8BIT On Thu, 29 Jun 2023, Luca Fancellu wrote: > > On 29 Jun 2023, at 11:06, Nicola Vetrini wrote: > > > > In the files modified by this patch there are a few occurrences of nested '//' > > character sequences inside C-style comment blocks, which violate Rule 3.1. > > The patch aims to resolve those by removing the nested comments. > > > > In the file 'xen/common/xmalloc_tlsf.c' the comment has been replaces by > > Typo: s/replaces/replaced/ > > > an ASSERT, to ensure that the invariant in the comment is enforced. > > > > In the file 'xen/include/xen/atomic.h' the nested comment has been removed, > > since the code sample is already explained by the preceding comment. > > > > Signed-off-by: Nicola Vetrini > > Same as patch 2, missing “---" > > > Changes: > > - Resending the patch with the right maintainers in CC. > > Changes in V2: > > - Split the patch into a series and reworked the fix; > > - Apply the fix to the arm32 `flushtlb.h' file, for consistency. > > Changes in V3: > > - Replaced commmented-out 'if' with an ASSERT( *fl >= 0 ). > > --- > > xen/common/xmalloc_tlsf.c | 4 +--- > > xen/include/xen/atomic.h | 2 +- > > 2 files changed, 2 insertions(+), 4 deletions(-) > > > > diff --git a/xen/common/xmalloc_tlsf.c b/xen/common/xmalloc_tlsf.c > > index 75bdf18c4e..95affcc571 100644 > > --- a/xen/common/xmalloc_tlsf.c > > +++ b/xen/common/xmalloc_tlsf.c > > @@ -140,9 +140,7 @@ static inline void MAPPING_SEARCH(unsigned long *r, int *fl, int *sl) > > *fl = flsl(*r) - 1; > > *sl = (*r >> (*fl - MAX_LOG2_SLI)) - MAX_SLI; > > *fl -= FLI_OFFSET; > > - /*if ((*fl -= FLI_OFFSET) < 0) // FL will be always >0! > > - *fl = *sl = 0; > > - */ > > + ASSERT( *fl >= 0 ); > > I’ve checked the codebase for usage of ASSERT, but I’ve not seen use of it with spaces > before and after the condition (like our if conditions) so I think they can be dropped. Yes, that's right. I am OK with this patch but I think we should wait for Jan's ack to be sure. An alternative that I feel more comfortable in Acking myself because it doesn't change the semantics of this code would be to change the 3 lines of code above with this: /* * ; FL will be always >0! * if ((*fl -= FLI_OFFSET) < 0) * fl = *sl = 0; */ --8323329-985556011-1688066438=:3936094-- From xen-devel-bounces@lists.xenproject.org Thu Jun 29 19:24:06 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 19:24:06 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557033.870021 (Exim 4.92) (envelope-from ) id 1qExFB-0004gO-E5; Thu, 29 Jun 2023 19:23:53 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557033.870021; Thu, 29 Jun 2023 19:23:53 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qExFB-0004gH-Ad; Thu, 29 Jun 2023 19:23:53 +0000 Received: by outflank-mailman (input) for mailman id 557033; Thu, 29 Jun 2023 19:23:52 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qExFA-0004g9-BI for xen-devel@lists.xenproject.org; Thu, 29 Jun 2023 19:23:52 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 793a74cf-16b2-11ee-8611-37d641c3527e; Thu, 29 Jun 2023 21:23:49 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 93CD061602; Thu, 29 Jun 2023 19:23:48 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 9A264C433C8; Thu, 29 Jun 2023 19:23:46 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 793a74cf-16b2-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1688066628; bh=Tp5ftz1O2T2j2QXmu2EUJBq4TSbmYH/0Oj709Uv2u/k=; h=Date:From:To:cc:Subject:In-Reply-To:References:From; b=gfyqu+DhcMqVnv1E4glzprOkO8SgryFXJjy6xV7H9G69uQMM0oSRpp+3KH2mdtOUJ nqbFK0tJLDZS0LOCZAucawW8qdGkwZPxKHBmHT0QfulfUcowC2TfulkJCAP4wdiO4A YPtSx9+nS1IRTLTcVW8y8DCJ2GOMwnXIFw2fUjLP0BwdKsUpFCJYbhhrSroJhofpgf XfGS1EfS9F7lOMQui0sjqzq3qQumohKF3i2qGlkKJrQc1Uin4Y8ZAL1gaxaVcTTTuD XwtgVBW9ySUVslTD/HRY7Xro715HWMRA115UV8BdtFEN/hamLBJE1Ak29uTuXiUkJl kKJbAMpU98DEg== Date: Thu, 29 Jun 2023 12:23:45 -0700 (PDT) From: Stefano Stabellini X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop To: Federico Serafini cc: xen-devel@lists.xenproject.org, consulting@bugseng.com, Jan Beulich , Andrew Cooper , =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= , Wei Liu , Stefano Stabellini , Michal Orzel , Xenia Ragiadakou , Ayan Kumar Halder Subject: Re: [XEN PATCH 1/5] x86: swap parameter names of hvm_copy_context_and_params() declaration In-Reply-To: <441ddc3eb422c009d68db090166cfbc863d6c0b7.1688049495.git.federico.serafini@bugseng.com> Message-ID: References: <441ddc3eb422c009d68db090166cfbc863d6c0b7.1688049495.git.federico.serafini@bugseng.com> User-Agent: Alpine 2.22 (DEB 394 2020-01-19) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII On Thu, 29 Jun 2023, Federico Serafini wrote: > Swap parameter names 'src' and 'dst' of hvm_copy_context_and_params() > declaration for consistency with the corresponding definition and the > uses of such function. > Also, this fixes a violation of MISRA C:2012 Rule 8.3. > > Signed-off-by: Federico Serafini better to change the title of the patch to: x86/hvm: swap parameter names of hvm_copy_context_and_params() declaration It could be done on commit. Reviewed-by: Stefano Stabellini > --- > xen/arch/x86/include/asm/hvm/hvm.h | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/xen/arch/x86/include/asm/hvm/hvm.h b/xen/arch/x86/include/asm/hvm/hvm.h > index 04cbd4ff24..9555b4c41f 100644 > --- a/xen/arch/x86/include/asm/hvm/hvm.h > +++ b/xen/arch/x86/include/asm/hvm/hvm.h > @@ -366,7 +366,7 @@ const char *hvm_efer_valid(const struct vcpu *v, uint64_t value, > signed int cr0_pg); > unsigned long hvm_cr4_guest_valid_bits(const struct domain *d); > > -int hvm_copy_context_and_params(struct domain *src, struct domain *dst); > +int hvm_copy_context_and_params(struct domain *dst, struct domain *src); > > int hvm_get_param(struct domain *d, uint32_t index, uint64_t *value); > > -- > 2.34.1 > From xen-devel-bounces@lists.xenproject.org Thu Jun 29 19:26:00 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 19:26:00 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557037.870031 (Exim 4.92) (envelope-from ) id 1qExH5-0005Gs-QV; Thu, 29 Jun 2023 19:25:51 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557037.870031; Thu, 29 Jun 2023 19:25:51 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qExH5-0005Gl-MO; Thu, 29 Jun 2023 19:25:51 +0000 Received: by outflank-mailman (input) for mailman id 557037; Thu, 29 Jun 2023 19:25:49 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qExH3-0005GZ-Pp for xen-devel@lists.xenproject.org; Thu, 29 Jun 2023 19:25:49 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id c01754fa-16b2-11ee-b237-6b7b168915f2; Thu, 29 Jun 2023 21:25:48 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 6DB2F61601; Thu, 29 Jun 2023 19:25:47 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 01442C433C0; Thu, 29 Jun 2023 19:25:44 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: c01754fa-16b2-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1688066746; bh=9JGiD9/p2vLFe1404gJWXFgziUCrHFNM7+tPG4436oA=; h=Date:From:To:cc:Subject:In-Reply-To:References:From; b=WJP0dYn/WJPJarU819VpHDAA6bOx9X13+ag+ZrZAURQlaRg8zeY3te8mop2Rdy/Cm M7IoVmjojqoEUtkjoAeFMZXGvqH4qyAIHgn8kNZcGFNH1Mg0poOmdNJwGyn2WRVHBO /BWUA039rL/F18fau7Jsggv1inKuDDwxfEJoRlYW7KIu6PJFUfg93y/MgbCKgnafec oDjTe9ft6IgB76bwuHL50GEUaTFZLDeR/X/DtNWV3/qrjPLFAx1ZIAAjnz10uuhM0c 99XJr4+qwpchmOPNnOLT+8Z0J6rQrw54DbZ+CBJTuyPCepy5Lfi+IcAs5YW7fu8bkA AD5BAlYTWjD8g== Date: Thu, 29 Jun 2023 12:25:43 -0700 (PDT) From: Stefano Stabellini X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop To: Federico Serafini cc: xen-devel@lists.xenproject.org, consulting@bugseng.com, Jan Beulich , Andrew Cooper , =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= , Wei Liu , Stefano Stabellini , Michal Orzel , Xenia Ragiadakou , Ayan Kumar Halder Subject: Re: [XEN PATCH 2/5] x86: change parameter names of nestedhvm_vcpu_iomap_get() definition In-Reply-To: <7392b1adc50c77855bec846f1a14e30f6a8ae1d6.1688049495.git.federico.serafini@bugseng.com> Message-ID: References: <7392b1adc50c77855bec846f1a14e30f6a8ae1d6.1688049495.git.federico.serafini@bugseng.com> User-Agent: Alpine 2.22 (DEB 394 2020-01-19) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII On Thu, 29 Jun 2023, Federico Serafini wrote: > Change parameter names of nestedhvm_vcpu_iomap_get() definition to > those used in the function declaration in order to: > 1) improve readability; > 2) fix violations of MISRA C:2012 Rule 8.3. > > Signed-off-by: Federico Serafini Reviewed-by: Stefano Stabellini The title would be better as: x86/nestedhvm: change parameter names of nestedhvm_vcpu_iomap_get() definition could be done on commit > --- > xen/arch/x86/hvm/nestedhvm.c | 10 +++++----- > 1 file changed, 5 insertions(+), 5 deletions(-) > > diff --git a/xen/arch/x86/hvm/nestedhvm.c b/xen/arch/x86/hvm/nestedhvm.c > index ec68551127..64d7eec9a1 100644 > --- a/xen/arch/x86/hvm/nestedhvm.c > +++ b/xen/arch/x86/hvm/nestedhvm.c > @@ -155,19 +155,19 @@ static int __init cf_check nestedhvm_setup(void) > __initcall(nestedhvm_setup); > > unsigned long * > -nestedhvm_vcpu_iomap_get(bool_t port_80, bool_t port_ed) > +nestedhvm_vcpu_iomap_get(bool_t ioport_80, bool_t ioport_ed) > { > int i; > > if (!hvm_port80_allowed) > - port_80 = 1; > + ioport_80 = 1; > > - if (port_80 == 0) { > - if (port_ed == 0) > + if (ioport_80 == 0) { > + if (ioport_ed == 0) > return hvm_io_bitmap; > i = 0; > } else { > - if (port_ed == 0) > + if (ioport_ed == 0) > i = 1; > else > i = 2; > -- > 2.34.1 > From xen-devel-bounces@lists.xenproject.org Thu Jun 29 19:28:44 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 19:28:44 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557041.870040 (Exim 4.92) (envelope-from ) id 1qExJh-0005rP-68; Thu, 29 Jun 2023 19:28:33 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557041.870040; Thu, 29 Jun 2023 19:28:33 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qExJh-0005rI-36; Thu, 29 Jun 2023 19:28:33 +0000 Received: by outflank-mailman (input) for mailman id 557041; Thu, 29 Jun 2023 19:28:31 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qExJf-0005r8-L0 for xen-devel@lists.xenproject.org; Thu, 29 Jun 2023 19:28:31 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [2604:1380:4641:c500::1]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 204b86c4-16b3-11ee-b237-6b7b168915f2; Thu, 29 Jun 2023 21:28:30 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id C8FF9615E4; Thu, 29 Jun 2023 19:28:28 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id CBB24C433C8; Thu, 29 Jun 2023 19:28:26 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 204b86c4-16b3-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1688066908; bh=y75zKNp5x6Lev92nyp9/8o9TrsayY4sKwA0624HqfSs=; h=Date:From:To:cc:Subject:In-Reply-To:References:From; b=NhYdxHG/Ix9kY3v9vilsjhf07+9P1lPSklQDlyYj6kklR/QkIACKjYRqxeP76NutC gkG0nPYcm4SbJidjw/nm+BMFj8DUqevmpY9VMmcJT2fFjdFuAC1SWgRwN4tGBjx4oD y4JP8HwP0g6eD5kdlabeI7Rnd/YVflcGOM1BOxdfrhU5SI1pnbUWp4CoabVqDUghiW zJ0buqS5GWs3q5n4rgfyG8jnGqoW4yFW7JfD2fb9/ZBZBX6N4QvE730yrbGcOd5jOP 7fiiFBCv1RL42Ah664U8oQ0O/UA2ogkZL7dXV8s2EZjKJhyHTHVwqZJwBfdENzD22f i4r6yyjA24mNA== Date: Thu, 29 Jun 2023 12:28:25 -0700 (PDT) From: Stefano Stabellini X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop To: Federico Serafini cc: xen-devel@lists.xenproject.org, consulting@bugseng.com, Jan Beulich , Andrew Cooper , =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= , Wei Liu , Stefano Stabellini , Michal Orzel , Xenia Ragiadakou , Ayan Kumar Halder Subject: Re: [XEN PATCH 3/5] x86/vlapic: change parameter names in function definitions In-Reply-To: Message-ID: References: User-Agent: Alpine 2.22 (DEB 394 2020-01-19) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII On Thu, 29 Jun 2023, Federico Serafini wrote: > Change parameter names in guest_wrmsr_x2apic() and > guest_wrmsr_apic_base() definitions in order to: > 1) keep consistency with parameter names used in guest_* function > declarations; > 2) fix violations of MISRA C:2012 Rule 8.3. > > Signed-off-by: Federico Serafini Reviewed-by: Stefano Stabellini One minor comment below > --- > xen/arch/x86/hvm/vlapic.c | 56 +++++++++++++++++++-------------------- > 1 file changed, 28 insertions(+), 28 deletions(-) > > diff --git a/xen/arch/x86/hvm/vlapic.c b/xen/arch/x86/hvm/vlapic.c > index 785d5d88d9..5e0e12a1d7 100644 > --- a/xen/arch/x86/hvm/vlapic.c > +++ b/xen/arch/x86/hvm/vlapic.c > @@ -959,7 +959,7 @@ int vlapic_apicv_write(struct vcpu *v, unsigned int offset) > return X86EMUL_OKAY; > } > > -int guest_wrmsr_x2apic(struct vcpu *v, uint32_t msr, uint64_t msr_content) > +int guest_wrmsr_x2apic(struct vcpu *v, uint32_t msr, uint64_t val) > { > struct vlapic *vlapic = vcpu_vlapic(v); > uint32_t offset = (msr - MSR_X2APIC_FIRST) << 4; > @@ -973,38 +973,38 @@ int guest_wrmsr_x2apic(struct vcpu *v, uint32_t msr, uint64_t msr_content) > switch ( offset ) > { > case APIC_TASKPRI: > - if ( msr_content & ~APIC_TPRI_MASK ) > + if ( val & ~APIC_TPRI_MASK ) > return X86EMUL_EXCEPTION; > break; > > case APIC_SPIV: > - if ( msr_content & ~(APIC_VECTOR_MASK | APIC_SPIV_APIC_ENABLED | > - APIC_SPIV_FOCUS_DISABLED | > - (VLAPIC_VERSION & APIC_LVR_DIRECTED_EOI > - ? APIC_SPIV_DIRECTED_EOI : 0)) ) > + if ( val & ~(APIC_VECTOR_MASK | APIC_SPIV_APIC_ENABLED | > + APIC_SPIV_FOCUS_DISABLED | > + (VLAPIC_VERSION & APIC_LVR_DIRECTED_EOI > + ? APIC_SPIV_DIRECTED_EOI : 0)) ) > return X86EMUL_EXCEPTION; > break; > > case APIC_LVTT: > - if ( msr_content & ~(LVT_MASK | APIC_TIMER_MODE_MASK) ) > + if ( val & ~(LVT_MASK | APIC_TIMER_MODE_MASK) ) > return X86EMUL_EXCEPTION; > break; > > case APIC_LVTTHMR: > case APIC_LVTPC: > case APIC_CMCI: > - if ( msr_content & ~(LVT_MASK | APIC_MODE_MASK) ) > + if ( val & ~(LVT_MASK | APIC_MODE_MASK) ) > return X86EMUL_EXCEPTION; > break; > > case APIC_LVT0: > case APIC_LVT1: > - if ( msr_content & ~LINT_MASK ) > + if ( val & ~LINT_MASK ) > return X86EMUL_EXCEPTION; > break; > > case APIC_LVTERR: > - if ( msr_content & ~LVT_MASK ) > + if ( val & ~LVT_MASK ) > return X86EMUL_EXCEPTION; > break; > > @@ -1012,35 +1012,35 @@ int guest_wrmsr_x2apic(struct vcpu *v, uint32_t msr, uint64_t msr_content) > break; > > case APIC_TDCR: > - if ( msr_content & ~APIC_TDR_DIV_MASK ) > + if ( val & ~APIC_TDR_DIV_MASK ) > return X86EMUL_EXCEPTION; > break; > > case APIC_ICR: > - if ( (uint32_t)msr_content & ~(APIC_VECTOR_MASK | APIC_MODE_MASK | > + if ( (uint32_t)val & ~(APIC_VECTOR_MASK | APIC_MODE_MASK | > APIC_DEST_MASK | APIC_INT_ASSERT | > APIC_INT_LEVELTRIG | APIC_SHORT_MASK) ) code style: the alignment here should be fixed, it can be done on commit > return X86EMUL_EXCEPTION; > - vlapic_set_reg(vlapic, APIC_ICR2, msr_content >> 32); > + vlapic_set_reg(vlapic, APIC_ICR2, val >> 32); > break; > > case APIC_SELF_IPI: > - if ( msr_content & ~APIC_VECTOR_MASK ) > + if ( val & ~APIC_VECTOR_MASK ) > return X86EMUL_EXCEPTION; > offset = APIC_ICR; > - msr_content = APIC_DEST_SELF | (msr_content & APIC_VECTOR_MASK); > + val = APIC_DEST_SELF | (val & APIC_VECTOR_MASK); > break; > > case APIC_EOI: > case APIC_ESR: > - if ( msr_content ) > + if ( val ) > { > default: > return X86EMUL_EXCEPTION; > } > } > > - vlapic_reg_write(v, array_index_nospec(offset, PAGE_SIZE), msr_content); > + vlapic_reg_write(v, array_index_nospec(offset, PAGE_SIZE), val); > > return X86EMUL_OKAY; > } > @@ -1070,7 +1070,7 @@ static void set_x2apic_id(struct vlapic *vlapic) > vlapic_set_reg(vlapic, APIC_LDR, ldr); > } > > -int guest_wrmsr_apic_base(struct vcpu *v, uint64_t value) > +int guest_wrmsr_apic_base(struct vcpu *v, uint64_t val) > { > const struct cpu_policy *cp = v->domain->arch.cpu_policy; > struct vlapic *vlapic = vcpu_vlapic(v); > @@ -1079,8 +1079,8 @@ int guest_wrmsr_apic_base(struct vcpu *v, uint64_t value) > return X86EMUL_EXCEPTION; > > /* Attempting to set reserved bits? */ > - if ( value & ~(APIC_BASE_ADDR_MASK | APIC_BASE_ENABLE | APIC_BASE_BSP | > - (cp->basic.x2apic ? APIC_BASE_EXTD : 0)) ) > + if ( val & ~(APIC_BASE_ADDR_MASK | APIC_BASE_ENABLE | APIC_BASE_BSP | > + (cp->basic.x2apic ? APIC_BASE_EXTD : 0)) ) > return X86EMUL_EXCEPTION; > > /* > @@ -1118,21 +1118,21 @@ int guest_wrmsr_apic_base(struct vcpu *v, uint64_t value) > * fault will be far more obvious to debug than a malfunctioning MMIO > * window. > */ > - if ( ((value & (APIC_BASE_EXTD | APIC_BASE_ENABLE)) == APIC_BASE_ENABLE) && > - ((value & APIC_BASE_ADDR_MASK) != APIC_DEFAULT_PHYS_BASE) ) > + if ( ((val & (APIC_BASE_EXTD | APIC_BASE_ENABLE)) == APIC_BASE_ENABLE) && > + ((val & APIC_BASE_ADDR_MASK) != APIC_DEFAULT_PHYS_BASE) ) > { > printk(XENLOG_G_INFO > "%pv tried to move the APIC MMIO window: val 0x%08"PRIx64"\n", > - v, value); > + v, val); > return X86EMUL_EXCEPTION; > } > > - if ( (vlapic->hw.apic_base_msr ^ value) & APIC_BASE_ENABLE ) > + if ( (vlapic->hw.apic_base_msr ^ val) & APIC_BASE_ENABLE ) > { > - if ( unlikely(value & APIC_BASE_EXTD) ) > + if ( unlikely(val & APIC_BASE_EXTD) ) > return X86EMUL_EXCEPTION; > > - if ( value & APIC_BASE_ENABLE ) > + if ( val & APIC_BASE_ENABLE ) > { > vlapic_reset(vlapic); > vlapic->hw.disabled &= ~VLAPIC_HW_DISABLED; > @@ -1144,11 +1144,11 @@ int guest_wrmsr_apic_base(struct vcpu *v, uint64_t value) > pt_may_unmask_irq(vlapic_domain(vlapic), NULL); > } > } > - else if ( ((vlapic->hw.apic_base_msr ^ value) & APIC_BASE_EXTD) && > + else if ( ((vlapic->hw.apic_base_msr ^ val) & APIC_BASE_EXTD) && > unlikely(!vlapic_xapic_mode(vlapic)) ) > return X86EMUL_EXCEPTION; > > - vlapic->hw.apic_base_msr = value; > + vlapic->hw.apic_base_msr = val; > memset(&vlapic->loaded, 0, sizeof(vlapic->loaded)); > > if ( vlapic_x2apic_mode(vlapic) ) > -- > 2.34.1 > From xen-devel-bounces@lists.xenproject.org Thu Jun 29 19:32:01 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 19:32:01 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557047.870050 (Exim 4.92) (envelope-from ) id 1qExMu-0007MO-Oc; Thu, 29 Jun 2023 19:31:52 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557047.870050; Thu, 29 Jun 2023 19:31:52 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qExMu-0007MH-Ly; Thu, 29 Jun 2023 19:31:52 +0000 Received: by outflank-mailman (input) for mailman id 557047; Thu, 29 Jun 2023 19:31:52 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qExMt-0007MB-Vk for xen-devel@lists.xenproject.org; Thu, 29 Jun 2023 19:31:52 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [2604:1380:4641:c500::1]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 97ce6702-16b3-11ee-b237-6b7b168915f2; Thu, 29 Jun 2023 21:31:50 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 3ABF161610; Thu, 29 Jun 2023 19:31:49 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 33CB2C433CA; Thu, 29 Jun 2023 19:31:47 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 97ce6702-16b3-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1688067108; bh=hayMPSBchzf8OR9c976DDb/IethORAmVTFVc/X8j/7M=; h=Date:From:To:cc:Subject:In-Reply-To:References:From; b=AKvNCiGMFfzD39DcaqhzgGeFyX2nVooVoK++7argSRehDw6MEKg1wlzk5ckkjI585 phZj9FIGCDkv1zCGl1MWnpokI0pnjQb9JkOJCXwSte1h74DueN0YxloffadxtNXciv cBS14wCT0px9Aohs70ktXjKF6GTMnChqMFVPKLEiMMh7B1PAxGbtF/WcTl8RINUXlg jtrlTbwORi8b5D1+EWBLhi/Ent7IEe6SjaUlujnALntxmOsASAMeBUS6n3x4ZkAMSv YyGzY3q1QF1QdqdGjEgYhVCNJ4h8ZIfSE8U4HsWII4pte8xZUPenw9H2mpXzNupfIC 9T4e6+7r43hKg== Date: Thu, 29 Jun 2023 12:31:46 -0700 (PDT) From: Stefano Stabellini X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop To: Federico Serafini cc: xen-devel@lists.xenproject.org, consulting@bugseng.com, Jan Beulich , Andrew Cooper , =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= , Wei Liu , Stefano Stabellini , Michal Orzel , Xenia Ragiadakou , Ayan Kumar Halder Subject: Re: [XEN PATCH 4/5] x86/x86_emulate: change parameter name from 's' to 'state' In-Reply-To: <8c8bc96b96a1111a4651f970f506d304809ea40d.1688049495.git.federico.serafini@bugseng.com> Message-ID: References: <8c8bc96b96a1111a4651f970f506d304809ea40d.1688049495.git.federico.serafini@bugseng.com> User-Agent: Alpine 2.22 (DEB 394 2020-01-19) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII On Thu, 29 Jun 2023, Federico Serafini wrote: > Change parameter name from 's' to 'state' in function definitions in > order to: > 1) keep consistency with the parameter names used in the corresponding > declarations; > 2) keep consistency with parameter names used within x86_emulate.h; > 3) fix violations of MISRA C:2012 Rule 8.3. > > Signed-off-by: Federico Serafini You could use x86emul: as tag in the title. I'll let Jan choose the tag he prefers. Reviewed-by: Stefano Stabellini > --- > xen/arch/x86/x86_emulate/blk.c | 38 ++++++++++---------- > xen/arch/x86/x86_emulate/util-xen.c | 46 ++++++++++++------------ > xen/arch/x86/x86_emulate/util.c | 54 ++++++++++++++--------------- > 3 files changed, 69 insertions(+), 69 deletions(-) > > diff --git a/xen/arch/x86/x86_emulate/blk.c b/xen/arch/x86/x86_emulate/blk.c > index e790f4f900..23eeb00db2 100644 > --- a/xen/arch/x86/x86_emulate/blk.c > +++ b/xen/arch/x86/x86_emulate/blk.c > @@ -22,12 +22,12 @@ int x86_emul_blk( > void *data, > unsigned int bytes, > uint32_t *eflags, > - struct x86_emulate_state *s, > + struct x86_emulate_state *state, > struct x86_emulate_ctxt *ctxt) > { > int rc = X86EMUL_OKAY; > > - switch ( s->blk ) > + switch ( state->blk ) > { > bool zf; > #ifndef X86EMUL_NO_FPU > @@ -72,13 +72,13 @@ int x86_emul_blk( > case blk_fld: > ASSERT(!data); > > - /* s->rex_prefix carries CR0.PE && !EFLAGS.VM setting */ > + /* state->rex_prefix carries CR0.PE && !EFLAGS.VM setting */ > switch ( bytes ) > { > case sizeof(fpstate.env): /* 32-bit FLDENV */ > case sizeof(fpstate): /* 32-bit FRSTOR */ > memcpy(&fpstate.env, ptr, sizeof(fpstate.env)); > - if ( !s->rex_prefix ) > + if ( !state->rex_prefix ) > { > /* Convert 32-bit real/vm86 to 32-bit prot format. */ > unsigned int fip = fpstate.env.mode.real.fip_lo + > @@ -109,7 +109,7 @@ int x86_emul_blk( > fpstate.env.fsw = env->fsw; > fpstate.env.ftw = env->ftw; > > - if ( s->rex_prefix ) > + if ( state->rex_prefix ) > { > /* Convert 16-bit prot to 32-bit prot format. */ > fpstate.env.mode.prot.fip = env->mode.prot.fip; > @@ -165,12 +165,12 @@ int x86_emul_blk( > else > asm ( "fnstenv %0" : "+m" (fpstate.env) ); > > - /* s->rex_prefix carries CR0.PE && !EFLAGS.VM setting */ > + /* state->rex_prefix carries CR0.PE && !EFLAGS.VM setting */ > switch ( bytes ) > { > case sizeof(fpstate.env): /* 32-bit FNSTENV */ > case sizeof(fpstate): /* 32-bit FNSAVE */ > - if ( !s->rex_prefix ) > + if ( !state->rex_prefix ) > { > /* Convert 32-bit prot to 32-bit real/vm86 format. */ > unsigned int fip = fpstate.env.mode.prot.fip + > @@ -195,7 +195,7 @@ int x86_emul_blk( > > case sizeof(struct x87_env16): /* 16-bit FNSTENV */ > case sizeof(struct x87_env16) + sizeof(fpstate.freg): /* 16-bit FNSAVE */ > - if ( s->rex_prefix ) > + if ( state->rex_prefix ) > { > /* Convert 32-bit prot to 16-bit prot format. */ > struct x87_env16 *env = ptr; > @@ -254,11 +254,11 @@ int x86_emul_blk( > > ASSERT(!data); > ASSERT(bytes == sizeof(*fxsr)); > - ASSERT(s->op_bytes <= bytes); > + ASSERT(state->op_bytes <= bytes); > > - if ( s->op_bytes < sizeof(*fxsr) ) > + if ( state->op_bytes < sizeof(*fxsr) ) > { > - if ( s->rex_prefix & REX_W ) > + if ( state->rex_prefix & REX_W ) > { > /* > * The only way to force fxsaveq on a wide range of gas > @@ -278,13 +278,13 @@ int x86_emul_blk( > * data FXRSTOR may actually consume in some way: Copy only the > * defined portion, and zero the rest. > */ > - memcpy(fxsr, ptr, min(s->op_bytes, > + memcpy(fxsr, ptr, min(state->op_bytes, > (unsigned int)offsetof(struct x86_fxsr, rsvd))); > memset(fxsr->rsvd, 0, sizeof(*fxsr) - offsetof(struct x86_fxsr, rsvd)); > > generate_exception_if(fxsr->mxcsr & ~mxcsr_mask, X86_EXC_GP, 0); > > - if ( s->rex_prefix & REX_W ) > + if ( state->rex_prefix & REX_W ) > { > /* See above for why operand/constraints are this way. */ > asm volatile ( ".byte 0x48; fxrstor (%1)" > @@ -301,15 +301,15 @@ int x86_emul_blk( > > ASSERT(!data); > ASSERT(bytes == sizeof(*fxsr)); > - ASSERT(s->op_bytes <= bytes); > + ASSERT(state->op_bytes <= bytes); > > - if ( s->op_bytes < sizeof(*fxsr) ) > + if ( state->op_bytes < sizeof(*fxsr) ) > /* Don't chance consuming uninitialized data. */ > - memset(fxsr, 0, s->op_bytes); > + memset(fxsr, 0, state->op_bytes); > else > fxsr = ptr; > > - if ( s->rex_prefix & REX_W ) > + if ( state->rex_prefix & REX_W ) > { > /* See above for why operand/constraints are this way. */ > asm volatile ( ".byte 0x48; fxsave (%1)" > @@ -318,8 +318,8 @@ int x86_emul_blk( > else > asm volatile ( "fxsave %0" : "=m" (*fxsr) ); > > - if ( fxsr != ptr ) /* i.e. s->op_bytes < sizeof(*fxsr) */ > - memcpy(ptr, fxsr, s->op_bytes); > + if ( fxsr != ptr ) /* i.e. state->op_bytes < sizeof(*fxsr) */ > + memcpy(ptr, fxsr, state->op_bytes); > break; > } > > diff --git a/xen/arch/x86/x86_emulate/util-xen.c b/xen/arch/x86/x86_emulate/util-xen.c > index 5e90818010..b36acbe1b0 100644 > --- a/xen/arch/x86/x86_emulate/util-xen.c > +++ b/xen/arch/x86/x86_emulate/util-xen.c > @@ -14,26 +14,26 @@ > #include > > #ifndef NDEBUG > -void x86_emulate_free_state(struct x86_emulate_state *s) > +void x86_emulate_free_state(struct x86_emulate_state *state) > { > - check_state(s); > - s->caller = NULL; > + check_state(state); > + state->caller = NULL; > } > #endif > > -unsigned int x86_insn_opsize(const struct x86_emulate_state *s) > +unsigned int x86_insn_opsize(const struct x86_emulate_state *state) > { > - check_state(s); > + check_state(state); > > - return s->op_bytes << 3; > + return state->op_bytes << 3; > } > > -int x86_insn_modrm(const struct x86_emulate_state *s, > +int x86_insn_modrm(const struct x86_emulate_state *state, > unsigned int *rm, unsigned int *reg) > { > - check_state(s); > + check_state(state); > > - if ( unlikely(s->modrm_mod > 3) ) > + if ( unlikely(state->modrm_mod > 3) ) > { > if ( rm ) > *rm = ~0U; > @@ -43,24 +43,24 @@ int x86_insn_modrm(const struct x86_emulate_state *s, > } > > if ( rm ) > - *rm = s->modrm_rm; > + *rm = state->modrm_rm; > if ( reg ) > - *reg = s->modrm_reg; > + *reg = state->modrm_reg; > > - return s->modrm_mod; > + return state->modrm_mod; > } > > -unsigned long x86_insn_operand_ea(const struct x86_emulate_state *s, > +unsigned long x86_insn_operand_ea(const struct x86_emulate_state *state, > enum x86_segment *seg) > { > - *seg = s->ea.type == OP_MEM ? s->ea.mem.seg : x86_seg_none; > + *seg = state->ea.type == OP_MEM ? state->ea.mem.seg : x86_seg_none; > > - check_state(s); > + check_state(state); > > - return s->ea.mem.off; > + return state->ea.mem.off; > } > > -bool cf_check x86_insn_is_portio(const struct x86_emulate_state *s, > +bool cf_check x86_insn_is_portio(const struct x86_emulate_state *state, > const struct x86_emulate_ctxt *ctxt) > { > switch ( ctxt->opcode ) > @@ -74,7 +74,7 @@ bool cf_check x86_insn_is_portio(const struct x86_emulate_state *s, > return false; > } > > -bool cf_check x86_insn_is_cr_access(const struct x86_emulate_state *s, > +bool cf_check x86_insn_is_cr_access(const struct x86_emulate_state *state, > const struct x86_emulate_ctxt *ctxt) > { > switch ( ctxt->opcode ) > @@ -82,7 +82,7 @@ bool cf_check x86_insn_is_cr_access(const struct x86_emulate_state *s, > unsigned int ext; > > case X86EMUL_OPC(0x0f, 0x01): > - if ( x86_insn_modrm(s, NULL, &ext) >= 0 > + if ( x86_insn_modrm(state, NULL, &ext) >= 0 > && (ext & 5) == 4 ) /* SMSW / LMSW */ > return true; > break; > @@ -96,17 +96,17 @@ bool cf_check x86_insn_is_cr_access(const struct x86_emulate_state *s, > return false; > } > > -unsigned long x86_insn_immediate(const struct x86_emulate_state *s, > +unsigned long x86_insn_immediate(const struct x86_emulate_state *state, > unsigned int nr) > { > - check_state(s); > + check_state(state); > > switch ( nr ) > { > case 0: > - return s->imm1; > + return state->imm1; > case 1: > - return s->imm2; > + return state->imm2; > } > > return 0; > diff --git a/xen/arch/x86/x86_emulate/util.c b/xen/arch/x86/x86_emulate/util.c > index 4becd054c2..34daa8467f 100644 > --- a/xen/arch/x86/x86_emulate/util.c > +++ b/xen/arch/x86/x86_emulate/util.c > @@ -8,12 +8,12 @@ > > #include "private.h" > > -unsigned int x86_insn_length(const struct x86_emulate_state *s, > +unsigned int x86_insn_length(const struct x86_emulate_state *state, > const struct x86_emulate_ctxt *ctxt) > { > - check_state(s); > + check_state(state); > > - return s->ip - ctxt->regs->r(ip); > + return state->ip - ctxt->regs->r(ip); > } > > /* > @@ -22,13 +22,13 @@ unsigned int x86_insn_length(const struct x86_emulate_state *s, > * memory operand (like POP), but it does not mean e.g. segment selector > * loads, where the descriptor table access is considered an implicit one. > */ > -bool cf_check x86_insn_is_mem_access(const struct x86_emulate_state *s, > +bool cf_check x86_insn_is_mem_access(const struct x86_emulate_state *state, > const struct x86_emulate_ctxt *ctxt) > { > - if ( mode_64bit() && s->not_64bit ) > + if ( mode_64bit() && state->not_64bit ) > return false; > > - if ( s->ea.type == OP_MEM ) > + if ( state->ea.type == OP_MEM ) > { > switch ( ctxt->opcode ) > { > @@ -49,13 +49,13 @@ bool cf_check x86_insn_is_mem_access(const struct x86_emulate_state *s, > return false; > > case X86EMUL_OPC(0x0f, 0x01): > - return (s->modrm_reg & 7) != 7; /* INVLPG */ > + return (state->modrm_reg & 7) != 7; /* INVLPG */ > > case X86EMUL_OPC(0x0f, 0xae): > - return (s->modrm_reg & 7) != 7; /* CLFLUSH */ > + return (state->modrm_reg & 7) != 7; /* CLFLUSH */ > > case X86EMUL_OPC_66(0x0f, 0xae): > - return (s->modrm_reg & 7) < 6; /* CLWB, CLFLUSHOPT */ > + return (state->modrm_reg & 7) < 6; /* CLWB, CLFLUSHOPT */ > } > > return true; > @@ -91,7 +91,7 @@ bool cf_check x86_insn_is_mem_access(const struct x86_emulate_state *s, > return true; > > case 0xff: > - switch ( s->modrm_reg & 7 ) > + switch ( state->modrm_reg & 7 ) > { > case 2: /* CALL (near, indirect) */ > case 6: /* PUSH r/m */ > @@ -101,7 +101,7 @@ bool cf_check x86_insn_is_mem_access(const struct x86_emulate_state *s, > > case X86EMUL_OPC(0x0f, 0x01): > /* Cover CLZERO. */ > - return (s->modrm_rm & 7) == 4 && (s->modrm_reg & 7) == 7; > + return (state->modrm_rm & 7) == 4 && (state->modrm_reg & 7) == 7; > } > > return false; > @@ -114,17 +114,17 @@ bool cf_check x86_insn_is_mem_access(const struct x86_emulate_state *s, > * loads, where the (possible) descriptor table write is considered an > * implicit access. > */ > -bool cf_check x86_insn_is_mem_write(const struct x86_emulate_state *s, > +bool cf_check x86_insn_is_mem_write(const struct x86_emulate_state *state, > const struct x86_emulate_ctxt *ctxt) > { > - if ( mode_64bit() && s->not_64bit ) > + if ( mode_64bit() && state->not_64bit ) > return false; > > - switch ( s->desc & DstMask ) > + switch ( state->desc & DstMask ) > { > case DstMem: > /* The SrcMem check is to cover {,V}MASKMOV{Q,DQU}. */ > - return s->modrm_mod != 3 || (s->desc & SrcMask) == SrcMem; > + return state->modrm_mod != 3 || (state->desc & SrcMask) == SrcMem; > > case DstBitBase: > case DstImplicit: > @@ -147,13 +147,13 @@ bool cf_check x86_insn_is_mem_write(const struct x86_emulate_state *s, > X86EMUL_OPC_EVEX_F3(0x0f38, 0x25): /* VPMOVS* */ > case X86EMUL_OPC_EVEX_F3(0x0f38, 0x30) ... > X86EMUL_OPC_EVEX_F3(0x0f38, 0x35): /* VPMOV{D,Q,W}* */ > - return s->modrm_mod != 3; > + return state->modrm_mod != 3; > } > > return false; > } > > - if ( s->modrm_mod == 3 ) > + if ( state->modrm_mod == 3 ) > { > switch ( ctxt->opcode ) > { > @@ -161,7 +161,7 @@ bool cf_check x86_insn_is_mem_write(const struct x86_emulate_state *s, > break; > > case X86EMUL_OPC(0x0f, 0x01): /* CLZERO is the odd one. */ > - return (s->modrm_rm & 7) == 4 && (s->modrm_reg & 7) == 7; > + return (state->modrm_rm & 7) == 4 && (state->modrm_reg & 7) == 7; > > default: > return false; > @@ -192,7 +192,7 @@ bool cf_check x86_insn_is_mem_write(const struct x86_emulate_state *s, > return true; > > case 0xd9: > - switch ( s->modrm_reg & 7 ) > + switch ( state->modrm_reg & 7 ) > { > case 2: /* FST m32fp */ > case 3: /* FSTP m32fp */ > @@ -203,7 +203,7 @@ bool cf_check x86_insn_is_mem_write(const struct x86_emulate_state *s, > break; > > case 0xdb: > - switch ( s->modrm_reg & 7 ) > + switch ( state->modrm_reg & 7 ) > { > case 1: /* FISTTP m32i */ > case 2: /* FIST m32i */ > @@ -214,7 +214,7 @@ bool cf_check x86_insn_is_mem_write(const struct x86_emulate_state *s, > break; > > case 0xdd: > - switch ( s->modrm_reg & 7 ) > + switch ( state->modrm_reg & 7 ) > { > case 1: /* FISTTP m64i */ > case 2: /* FST m64fp */ > @@ -226,7 +226,7 @@ bool cf_check x86_insn_is_mem_write(const struct x86_emulate_state *s, > break; > > case 0xdf: > - switch ( s->modrm_reg & 7 ) > + switch ( state->modrm_reg & 7 ) > { > case 1: /* FISTTP m16i */ > case 2: /* FIST m16i */ > @@ -238,7 +238,7 @@ bool cf_check x86_insn_is_mem_write(const struct x86_emulate_state *s, > break; > > case 0xff: > - switch ( s->modrm_reg & 7 ) > + switch ( state->modrm_reg & 7 ) > { > case 2: /* CALL (near, indirect) */ > case 3: /* CALL (far, indirect) */ > @@ -248,7 +248,7 @@ bool cf_check x86_insn_is_mem_write(const struct x86_emulate_state *s, > break; > > case X86EMUL_OPC(0x0f, 0x01): > - switch ( s->modrm_reg & 7 ) > + switch ( state->modrm_reg & 7 ) > { > case 0: /* SGDT */ > case 1: /* SIDT */ > @@ -258,7 +258,7 @@ bool cf_check x86_insn_is_mem_write(const struct x86_emulate_state *s, > break; > > case X86EMUL_OPC(0x0f, 0xae): > - switch ( s->modrm_reg & 7 ) > + switch ( state->modrm_reg & 7 ) > { > case 0: /* FXSAVE */ > /* case 3: STMXCSR - handled above */ > @@ -269,10 +269,10 @@ bool cf_check x86_insn_is_mem_write(const struct x86_emulate_state *s, > break; > > case X86EMUL_OPC(0x0f, 0xba): > - return (s->modrm_reg & 7) > 4; /* BTS / BTR / BTC */ > + return (state->modrm_reg & 7) > 4; /* BTS / BTR / BTC */ > > case X86EMUL_OPC(0x0f, 0xc7): > - switch ( s->modrm_reg & 7 ) > + switch ( state->modrm_reg & 7 ) > { > case 1: /* CMPXCHG{8,16}B */ > case 4: /* XSAVEC */ > -- > 2.34.1 > From xen-devel-bounces@lists.xenproject.org Thu Jun 29 19:38:15 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 19:38:15 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557052.870071 (Exim 4.92) (envelope-from ) id 1qExT3-0008GP-Kh; Thu, 29 Jun 2023 19:38:13 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557052.870071; Thu, 29 Jun 2023 19:38:13 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qExT3-0008GI-Hi; Thu, 29 Jun 2023 19:38:13 +0000 Received: by outflank-mailman (input) for mailman id 557052; Thu, 29 Jun 2023 19:38:12 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qExT2-0008Fq-1A for xen-devel@lists.xenproject.org; Thu, 29 Jun 2023 19:38:12 +0000 Received: from EUR03-DBA-obe.outbound.protection.outlook.com (mail-dbaeur03on20610.outbound.protection.outlook.com [2a01:111:f400:fe1a::610]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 7a673eb3-16b4-11ee-b237-6b7b168915f2; Thu, 29 Jun 2023 21:38:09 +0200 (CEST) Received: from ZR0P278CA0055.CHEP278.PROD.OUTLOOK.COM (2603:10a6:910:21::6) by AS8PR08MB9840.eurprd08.prod.outlook.com (2603:10a6:20b:613::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.24; Thu, 29 Jun 2023 19:38:07 +0000 Received: from VI1EUR03FT029.eop-EUR03.prod.protection.outlook.com (2603:10a6:910:21:cafe::5f) by ZR0P278CA0055.outlook.office365.com (2603:10a6:910:21::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.22 via Frontend Transport; Thu, 29 Jun 2023 19:38:07 +0000 Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by VI1EUR03FT029.mail.protection.outlook.com (100.127.145.13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.22 via Frontend Transport; Thu, 29 Jun 2023 19:38:06 +0000 Received: ("Tessian outbound 7c913606c6e6:v142"); Thu, 29 Jun 2023 19:38:05 +0000 Received: from 4e4229fd9c29.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 8F0739FE-8010-42DF-A6C5-219867932668.1; Thu, 29 Jun 2023 19:37:54 +0000 Received: from EUR04-HE1-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 4e4229fd9c29.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Thu, 29 Jun 2023 19:37:54 +0000 Received: from AM6PR08MB3749.eurprd08.prod.outlook.com (2603:10a6:20b:8f::22) by DB5PR08MB10189.eurprd08.prod.outlook.com (2603:10a6:10:4a4::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.19; Thu, 29 Jun 2023 19:37:49 +0000 Received: from AM6PR08MB3749.eurprd08.prod.outlook.com ([fe80::ed0b:5730:a1f9:577b]) by AM6PR08MB3749.eurprd08.prod.outlook.com ([fe80::ed0b:5730:a1f9:577b%5]) with mapi id 15.20.6521.026; Thu, 29 Jun 2023 19:37:48 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 7a673eb3-16b4-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=4Io4JZw78Ahog/gMx754TA6O4PeVpjG86K2TDSCQxO4=; b=YFS00vuXbF639CajfS+0Qx7SA3J6ecqimkjnvtwZn2l6jFdTmPUxr3TsEjleGVFKqkRngJCdJRnmQA9FbwQrDNignoa6uLLv7rOqU+z3fgCUnAw6MSfuJSm+/X3P8lj0yaTkNeQu0327tlfEOCCMQmGM1cZ29GnZZiwTvQqLkXw= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C X-CheckRecipientChecked: true X-CR-MTA-CID: 35c7c28a31d35d4f X-CR-MTA-TID: 64aa7808 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=ackkMgzQygp1+r91vhXRByNSZ+EzRIWXRZahReMrYNypgnVg6u5xC0RvmEPKbwv2JQphVncCVI5swIMXNy7dvVlYy2S2tdYasQ6zyESP9VbwGHh+5QBqtN9Q7qr3f1ESYT+PQ8nXoSfTpEUhGWWjG6bAmwz9Aq70ISAJYZDA1dmLHy+uLLsUeElZWT6yxqK8MrnqU+/aL1TvhGyyeKOk2hImssfkB0aXOZTC+5GdbHNGkBSFXPY3W29h4HDMKH/nz4D41RFUR1qrcPKA9ZVxBrWR+daVQfQmMolvJvRwD3BGmRgFhUlzSPkn3pSN6Oqc1ObapcpJ2/4prI2lB1TjVA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=4Io4JZw78Ahog/gMx754TA6O4PeVpjG86K2TDSCQxO4=; b=I8TkkG/E3smVQ0magcAiaGB/xEWqTDF9tAl4oWcnhJtTpTkwJKrPQL+FwqqJ2NhjLIDroYZsalZvfke0TmmiIOqlYoZYnd202BHhF0ptk8Ut3vwgq+nDoFAlmDmW7A6mEp7OnLpZ9RBBvloo2a2Cu4rSgDDNQhHohbyiP4NvQSYmBqL998AJyE0Ip3Bt6VfpbxCtlF0QuV91e5Q4MiVypqWvzsHw5fh4sxOImGZugYM340JrJ3k3mZdkSt+6NPzFFsGG97LEMUhfTG+H8iKt9XMl5JbI87SdP+ef+iML9EgQHgryvdRPrXJciSpW/G6XSVocAfRwuDfupNf8b3+7rw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=4Io4JZw78Ahog/gMx754TA6O4PeVpjG86K2TDSCQxO4=; b=YFS00vuXbF639CajfS+0Qx7SA3J6ecqimkjnvtwZn2l6jFdTmPUxr3TsEjleGVFKqkRngJCdJRnmQA9FbwQrDNignoa6uLLv7rOqU+z3fgCUnAw6MSfuJSm+/X3P8lj0yaTkNeQu0327tlfEOCCMQmGM1cZ29GnZZiwTvQqLkXw= From: Luca Fancellu To: Stefano Stabellini CC: Nicola Vetrini , Xen-devel , "michal.orzel@amd.com" , "xenia.ragiadakou@amd.com" , "ayan.kumar.halder@amd.com" , "consulting@bugseng.com" , "jbeulich@suse.com" , "andrew.cooper3@citrix.com" , "roger.pau@citrix.com" , Bertrand Marquis , "julien@xen.org" , George Dunlap , Wei Liu Subject: Re: [XEN PATCH v3 3/3] xen: fix violations of MISRA C:2012 Rule 3.1 Thread-Topic: [XEN PATCH v3 3/3] xen: fix violations of MISRA C:2012 Rule 3.1 Thread-Index: AQHZqnGGeSRo6D9TDkKPQE/VGyIB1K+h4SyAgABHf4CAAATEAA== Date: Thu, 29 Jun 2023 19:37:48 +0000 Message-ID: <433ACDBB-3DA8-461B-A500-268F7E6F674E@arm.com> References: <771A1A80-0FC6-4D20-84FE-DA0A2DCFF14B@arm.com> In-Reply-To: Accept-Language: en-GB, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-mailer: Apple Mail (2.3731.600.7) Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-traffictypediagnostic: AM6PR08MB3749:EE_|DB5PR08MB10189:EE_|VI1EUR03FT029:EE_|AS8PR08MB9840:EE_ X-MS-Office365-Filtering-Correlation-Id: d854ec38-11d9-40d6-01ba-08db78d85c71 x-checkrecipientrouted: true nodisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: qE/Tu3RnUEk/rmzbync9dELl0v7asJiF6sVnwNWS6DB5n+BSTcl93PCDU0z5jr/dxhqSQmY0zrZECJLsSC1762KAV0P2tF4e2ixSLn3ylcHoeAP281bnJ4c4rMe2tIPdLmBpRCSIuCJeg+Lp1q2A3DKD4ViJj69XbwW0K9khJc2XiAPsAhGE+RNA9L9vZQlL2K9KZIIYTnTtz+BidQnk4Jrvwpf+ZEtvEwY558NiOZBOixHit8i7X2eqMjW5d3/kPSzsvia4EGuM/7oJaHeIlntzzImgtPJMYXBrigJcM4dI2KbVO6Awzj88jmsuNw23Kbj1o1tIJytQf3qOtQlbYAB0sO9S4ysotlJXGrQgiojsU3y4ijj94ncCtGaby5u4c7ZlwQM/zW975XLCuIQyRM+lUVBCTthWyVjXAdfs0CLecGgoiymVQHPxTp6ro+5V1+3gzKQejxw9Kn7HtQA3cE3Te7U0nzW9YtE3j35ZEIbh2Yq66uWefKCYWmyXQGHE6NR98qm5fJopLBWc5bLb4XDdaZQRdN/1ZIBmNoLSuStm3SmcNVJuWNMc+48es5thsmq93ANZnjCMiQmNlsiQOu4yHGA2n2iULiQ2N4Erkr/Lpygf8GNwhAJPSx7Du+x6es3eaTeibNnIe9jWBAF50Q== X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM6PR08MB3749.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(376002)(136003)(346002)(396003)(366004)(451199021)(41300700001)(6512007)(316002)(83380400001)(86362001)(38070700005)(186003)(53546011)(6506007)(26005)(2616005)(7416002)(2906002)(33656002)(38100700002)(122000001)(5660300002)(8676002)(8936002)(36756003)(71200400001)(54906003)(4326008)(66556008)(66476007)(66446008)(64756008)(76116006)(478600001)(66946007)(6486002)(6916009)(91956017)(45980500001);DIR:OUT;SFP:1101; Content-Type: text/plain; charset="utf-8" Content-ID: Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB5PR08MB10189 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: VI1EUR03FT029.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: fb3a4a4e-22b1-412d-66d2-08db78d851e4 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: p+Vg4HUixE1xKvDeNh1Rd6pEKaEMbVmmgxcBpEqvhKc7Q53OgdDWmWpCWvtbLs7hH1uI/Agiv+/HG1Ydl1B8GFO66yJgrsm6q4iPM6+w+miBKJjGxua1g9zU6b933cAyPkiVup+qxItHPZjzw1OJdFjhxpo9RuNuXL4agExdLwxsakhpICzxU9KAaHS0ojg3VNfkNvjKiE2PFcZQOAuvUVQ2+laBbLb9LB4iW0Lejw7T46PoMdyecLA4L0ypyU+9K2awO5eBR1JqpmIzFtvNzYeQ3cGS7wRRgwxIcupcOzOdmbPDVb3xlOBhvDBLiSQV+g1RH5jltCQx8CSwyPkZG7DPkAExfD6fD3i9LiR1D9U+1jVMqj2zUlYkprrJOmRlDsKADz18+ZIVzJZGAvUS6MvNOKjMiDOlNzAerJWTuXKOFQPXqKMX1L5D6KqYJBvGVXMdYvIrpVQfCHA/k4SsG5mnrZ/NML0+f97yC0m+C36qeInvkyy3KqSw3oDAZY/vuW3CEs54w8sqCF8kSEisbpAD0uUBkQlpJDozBT3DhVboobIOZGK0LQiuGyOM3F7SW2+5G5cRt2zGQwNMDsuOTtYvDvlr9aXux1kLlC/cWI6BHaLR0GTovNydPhUXvqqqAFgc0R3FT8bpuskDyTtRyr8gIFXRCQqSweZj9HE8Lx50T4Q/DLW+8th1HkQyGhBc//s1lwq9xc8n+A8HSrlvSMXWH2Nl2PeIjgLkub8PJAVqEknz14F3qStzvG9xpmko X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230028)(4636009)(346002)(396003)(376002)(39860400002)(136003)(451199021)(40470700004)(36840700001)(46966006)(5660300002)(4326008)(33656002)(478600001)(70206006)(36756003)(316002)(70586007)(8936002)(8676002)(6862004)(2906002)(6512007)(40460700003)(36860700001)(54906003)(41300700001)(6486002)(82310400005)(40480700001)(186003)(6506007)(47076005)(26005)(336012)(53546011)(356005)(86362001)(83380400001)(82740400003)(81166007)(2616005);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 Jun 2023 19:38:06.0673 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: d854ec38-11d9-40d6-01ba-08db78d85c71 X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: VI1EUR03FT029.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR08MB9840 DQoNCj4gT24gMjkgSnVuIDIwMjMsIGF0IDIwOjIwLCBTdGVmYW5vIFN0YWJlbGxpbmkgPHNzdGFi ZWxsaW5pQGtlcm5lbC5vcmc+IHdyb3RlOg0KPiANCj4gT24gVGh1LCAyOSBKdW4gMjAyMywgTHVj YSBGYW5jZWxsdSB3cm90ZToNCj4+PiBPbiAyOSBKdW4gMjAyMywgYXQgMTE6MDYsIE5pY29sYSBW ZXRyaW5pIDxuaWNvbGEudmV0cmluaUBidWdzZW5nLmNvbT4gd3JvdGU6DQo+Pj4gDQo+Pj4gSW4g dGhlIGZpbGVzIG1vZGlmaWVkIGJ5IHRoaXMgcGF0Y2ggdGhlcmUgYXJlIGEgZmV3IG9jY3VycmVu Y2VzIG9mIG5lc3RlZCAnLy8nDQo+Pj4gY2hhcmFjdGVyIHNlcXVlbmNlcyBpbnNpZGUgQy1zdHls ZSBjb21tZW50IGJsb2Nrcywgd2hpY2ggdmlvbGF0ZSBSdWxlIDMuMS4NCj4+PiBUaGUgcGF0Y2gg YWltcyB0byByZXNvbHZlIHRob3NlIGJ5IHJlbW92aW5nIHRoZSBuZXN0ZWQgY29tbWVudHMuDQo+ Pj4gDQo+Pj4gSW4gdGhlIGZpbGUgJ3hlbi9jb21tb24veG1hbGxvY190bHNmLmMnIHRoZSBjb21t ZW50IGhhcyBiZWVuIHJlcGxhY2VzIGJ5DQo+PiANCj4+IFR5cG86IHMvcmVwbGFjZXMvcmVwbGFj ZWQvDQo+PiANCj4+PiBhbiBBU1NFUlQsIHRvIGVuc3VyZSB0aGF0IHRoZSBpbnZhcmlhbnQgaW4g dGhlIGNvbW1lbnQgaXMgZW5mb3JjZWQuDQo+Pj4gDQo+Pj4gSW4gdGhlIGZpbGUgJ3hlbi9pbmNs dWRlL3hlbi9hdG9taWMuaCcgdGhlIG5lc3RlZCBjb21tZW50IGhhcyBiZWVuIHJlbW92ZWQsDQo+ Pj4gc2luY2UgdGhlIGNvZGUgc2FtcGxlIGlzIGFscmVhZHkgZXhwbGFpbmVkIGJ5IHRoZSBwcmVj ZWRpbmcgY29tbWVudC4NCj4+PiANCj4+PiBTaWduZWQtb2ZmLWJ5OiBOaWNvbGEgVmV0cmluaSA8 bmljb2xhLnZldHJpbmlAYnVnc2VuZy5jb20+DQo+PiANCj4+IFNhbWUgYXMgcGF0Y2ggMiwgbWlz c2luZyDigJwtLS0iDQo+PiANCj4+PiBDaGFuZ2VzOg0KPj4+IC0gUmVzZW5kaW5nIHRoZSBwYXRj aCB3aXRoIHRoZSByaWdodCBtYWludGFpbmVycyBpbiBDQy4NCj4+PiBDaGFuZ2VzIGluIFYyOg0K Pj4+IC0gU3BsaXQgdGhlIHBhdGNoIGludG8gYSBzZXJpZXMgYW5kIHJld29ya2VkIHRoZSBmaXg7 DQo+Pj4gLSBBcHBseSB0aGUgZml4IHRvIHRoZSBhcm0zMiBgZmx1c2h0bGIuaCcgZmlsZSwgZm9y IGNvbnNpc3RlbmN5Lg0KPj4+IENoYW5nZXMgaW4gVjM6DQo+Pj4gLSBSZXBsYWNlZCBjb21tbWVu dGVkLW91dCAnaWYnIHdpdGggYW4gQVNTRVJUKCAqZmwgPj0gMCApLg0KPj4+IC0tLQ0KPj4+IHhl bi9jb21tb24veG1hbGxvY190bHNmLmMgfCA0ICstLS0NCj4+PiB4ZW4vaW5jbHVkZS94ZW4vYXRv bWljLmggIHwgMiArLQ0KPj4+IDIgZmlsZXMgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCA0IGRl bGV0aW9ucygtKQ0KPj4+IA0KPj4+IGRpZmYgLS1naXQgYS94ZW4vY29tbW9uL3htYWxsb2NfdGxz Zi5jIGIveGVuL2NvbW1vbi94bWFsbG9jX3Rsc2YuYw0KPj4+IGluZGV4IDc1YmRmMThjNGUuLjk1 YWZmY2M1NzEgMTAwNjQ0DQo+Pj4gLS0tIGEveGVuL2NvbW1vbi94bWFsbG9jX3Rsc2YuYw0KPj4+ ICsrKyBiL3hlbi9jb21tb24veG1hbGxvY190bHNmLmMNCj4+PiBAQCAtMTQwLDkgKzE0MCw3IEBA IHN0YXRpYyBpbmxpbmUgdm9pZCBNQVBQSU5HX1NFQVJDSCh1bnNpZ25lZCBsb25nICpyLCBpbnQg KmZsLCBpbnQgKnNsKQ0KPj4+ICAgICAgICAqZmwgPSBmbHNsKCpyKSAtIDE7DQo+Pj4gICAgICAg ICpzbCA9ICgqciA+PiAoKmZsIC0gTUFYX0xPRzJfU0xJKSkgLSBNQVhfU0xJOw0KPj4+ICAgICAg ICAqZmwgLT0gRkxJX09GRlNFVDsNCj4+PiAtICAgICAgICAvKmlmICgoKmZsIC09IEZMSV9PRkZT RVQpIDwgMCkgLy8gRkwgd2lsbCBiZSBhbHdheXMgPjAhDQo+Pj4gLSAgICAgICAgICpmbCA9ICpz bCA9IDA7DQo+Pj4gLSAgICAgICAgICovDQo+Pj4gKyAgICAgICAgQVNTRVJUKCAqZmwgPj0gMCAp Ow0KPj4gDQo+PiBJ4oCZdmUgY2hlY2tlZCB0aGUgY29kZWJhc2UgZm9yIHVzYWdlIG9mIEFTU0VS VCwgYnV0IEnigJl2ZSBub3Qgc2VlbiB1c2Ugb2YgaXQgd2l0aCBzcGFjZXMNCj4+IGJlZm9yZSBh bmQgYWZ0ZXIgdGhlIGNvbmRpdGlvbiAobGlrZSBvdXIgaWYgY29uZGl0aW9ucykgc28gSSB0aGlu ayB0aGV5IGNhbiBiZSBkcm9wcGVkLg0KPiANCj4gWWVzLCB0aGF0J3MgcmlnaHQuIEkgYW0gT0sg d2l0aCB0aGlzIHBhdGNoIGJ1dCBJIHRoaW5rIHdlIHNob3VsZCB3YWl0DQo+IGZvciBKYW4ncyBh Y2sgdG8gYmUgc3VyZS4NCj4gDQo+IEFuIGFsdGVybmF0aXZlIHRoYXQgSSBmZWVsIG1vcmUgY29t Zm9ydGFibGUgaW4gQWNraW5nIG15c2VsZiBiZWNhdXNlIGl0DQo+IGRvZXNuJ3QgY2hhbmdlIHRo ZSBzZW1hbnRpY3Mgb2YgdGhpcyBjb2RlIHdvdWxkIGJlIHRvIGNoYW5nZSB0aGUgMyBsaW5lcw0K PiBvZiBjb2RlIGFib3ZlIHdpdGggdGhpczoNCj4gDQo+IC8qDQo+ICogOyBGTCB3aWxsIGJlIGFs d2F5cyA+MCENCj4gKiBpZiAoKCpmbCAtPSBGTElfT0ZGU0VUKSA8IDApDQo+ICogICAgIGZsID0g KnNsID0gMDsNCj4gKi8NCg0KSGkgU3RlZmFubywNCg0KSSB0aGluayB3ZSB3b3VsZCBoYXZlIGEg dmlvbGF0aW9uIGZvciB0aGUgRGlyZWN0aXZlIDQuNCAoU2VjdGlvbnMgb2YgY29kZSBzaG91bGQg bm90IGJlIGNvbW1lbnRlZCBvdXQpDQppbiB0aGlzIGNhc2UsIGhvd2V2ZXIgaXTigJlzIG5vdCBs aXN0ZWQgaW4gcnVsZXMucnN0IGFuZCBJIGRvbuKAmXQgcmVtZW1iZXIgd2hlcmUgdG8gbG9vayB0 byBrbm93IGlmIGl0IHdhcw0KdGFrZW4gaW50byBjb25zaWRlcmF0aW9uIGZvciB0aGUgYWRvcHRp b24gaW4gWGVuIGluIHRoZSDigJx0YWlsb3JpbmfigJ0gcGhhc2UuDQoNCg0KDQoNCg== From xen-devel-bounces@lists.xenproject.org Thu Jun 29 19:38:16 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 19:38:16 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557051.870061 (Exim 4.92) (envelope-from ) id 1qExSv-0007zd-DE; Thu, 29 Jun 2023 19:38:05 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557051.870061; Thu, 29 Jun 2023 19:38:05 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qExSv-0007zW-Af; Thu, 29 Jun 2023 19:38:05 +0000 Received: by outflank-mailman (input) for mailman id 557051; Thu, 29 Jun 2023 19:38:04 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qExSt-0007zO-VQ for xen-devel@lists.xenproject.org; Thu, 29 Jun 2023 19:38:04 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qExSs-0005j7-N1; Thu, 29 Jun 2023 19:38:02 +0000 Received: from gw1.octic.net ([88.97.20.152] helo=[10.0.1.240]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qExSs-00075C-Gj; Thu, 29 Jun 2023 19:38:02 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=IHHW2BNkv6xCEimXakHA4bCvkNo8hXTkGpUnArOjJy0=; b=eQfsk0lYA66YYQycyk+BEcjHZ2 OgW9lXRPJTzmkwAxWM2ecQHxCwIuuU1zXyFi2lDFgVOoPpCXurTYuABe2quJXgO7FUbpN8iFq1fHW 4JyTv8w3a0U9wVgr2XDjlE9cVpFivxdMgNBD0oHnkBZUdAONKa2b+VcgH7JqQWCiFT8E=; Message-ID: <5a894884-c8a1-ab74-d82a-0a177cbdf201@xen.org> Date: Thu, 29 Jun 2023 20:38:00 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [XEN PATCH v3 1/3] xen/arch/arm: fix violations of MISRA C:2012 Rule 3.1 Content-Language: en-US To: Stefano Stabellini , Luca Fancellu Cc: Nicola Vetrini , Xen-devel , "michal.orzel@amd.com" , "xenia.ragiadakou@amd.com" , "ayan.kumar.halder@amd.com" , "consulting@bugseng.com" , "jbeulich@suse.com" , "andrew.cooper3@citrix.com" , "roger.pau@citrix.com" , Bertrand Marquis , Volodymyr Babchuk References: <7996a8bb62e62076d48bdf289e37352bb5e43b52.1688032865.git.nicola.vetrini@bugseng.com> <5FD86C4C-3BD6-4ED3-A910-683DCC86613D@arm.com> From: Julien Grall In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Hi, On 29/06/2023 20:11, Stefano Stabellini wrote: > On Thu, 29 Jun 2023, Luca Fancellu wrote: >>> On 29 Jun 2023, at 11:06, Nicola Vetrini wrote: >>> >>> In the files `xen/arch/arm/include/asm/arm(32|64)/flushtlb.h' there are a >>> few occurrences of nested '//' character sequences inside C-style comment >>> blocks, which violate Rule 3.1. The patch aims to resolve those by changing >>> the inner comments to arm asm comments, delimited by ';' instead. >>> >>> Signed-off-by: Nicola Vetrini >> >> Can I suggest another commit title: >> “xen/arm: tlbflush: fix violations of MISRA C:2012 Rule 3.1" >> >> Sometimes when I am not sure on how to deal with prefixes, I check to the git >> history of the line I am changing, for these lines there was a commit from >> Julien using these prefixes. I’m using vs code with GitLens extension, that >> ease a lot this kind of checks. >> >> Apart from that, the changes looks good to me: >> >> Reviewed-by: Luca Fancellu > > With Luca's suggestion (can be done on commit): > > Reviewed-by: Stefano Stabellini I have committed this patch. Patch #2 requires an ack from Rahul/Bertrand. Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Thu Jun 29 19:47:48 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 19:47:48 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557062.870081 (Exim 4.92) (envelope-from ) id 1qExc5-0001gL-KA; Thu, 29 Jun 2023 19:47:33 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557062.870081; Thu, 29 Jun 2023 19:47:33 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qExc5-0001gE-Gk; Thu, 29 Jun 2023 19:47:33 +0000 Received: by outflank-mailman (input) for mailman id 557062; Thu, 29 Jun 2023 19:47:32 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qExc4-0001g8-17 for xen-devel@lists.xenproject.org; Thu, 29 Jun 2023 19:47:32 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [2604:1380:4641:c500::1]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id c7ba632d-16b5-11ee-b237-6b7b168915f2; Thu, 29 Jun 2023 21:47:30 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id A4F1061615; Thu, 29 Jun 2023 19:47:28 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id F0569C433CA; Thu, 29 Jun 2023 19:47:25 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: c7ba632d-16b5-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1688068048; bh=t2zAU30UcWSKsqU076c71bLf3SOkoOP9HcdQJ9SHiO4=; h=Date:From:To:cc:Subject:In-Reply-To:References:From; b=E7APNIwQLXys+P7Ni0MiPCyQIKTh5JWcYujrRLxVht6CQT8GpFKn+1qq7w9Iz4+BM zkD8GIcjq0/t+urJbsZ6up3hjGN+A67Zze4dO7vqeLLeEL01aHi7gN8RFlpRo2FdNb VpVEYA+g1499nzXMAAvIDTREzJKlOYbIi4EPxBOSit9oEJavnIo1m8e28IPu4WQE7h WzCu/X0XI73FTCz4c2d2F+X0QBEeZBLcA7KdQoa3XqMOA1fabrTDyWuBzBccUzdWCV 1UbMNyXiyc6tgoj+kn5b5LGcbQgEF+bRiWIGGYdgzkdGNv594uf65CDW5ZSKk3+UVD yE8Jz68EaLNTw== Date: Thu, 29 Jun 2023 12:47:24 -0700 (PDT) From: Stefano Stabellini X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop To: Federico Serafini cc: xen-devel@lists.xenproject.org, consulting@bugseng.com, Jan Beulich , Andrew Cooper , =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= , Wei Liu , Paul Durrant , Tamas K Lengyel , Alexandru Isaila , Petre Pircalabu , Jun Nakajima , Kevin Tian , Stefano Stabellini , Michal Orzel , Xenia Ragiadakou , Ayan Kumar Halder Subject: Re: [XEN PATCH 5/5] x86: make parameter names of function declarations consistent In-Reply-To: <5ee57d7bcd79daa0314f182ecb73e1eb6d8ecc03.1688049495.git.federico.serafini@bugseng.com> Message-ID: References: <5ee57d7bcd79daa0314f182ecb73e1eb6d8ecc03.1688049495.git.federico.serafini@bugseng.com> User-Agent: Alpine 2.22 (DEB 394 2020-01-19) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII On Thu, 29 Jun 2023, Federico Serafini wrote: > Change the parameter names of function declarations to be consistent > with the names used in the corresponding function definitions > so as to fix violations of MISRA C:2012 Rule 8.3. > > Signed-off-by: Federico Serafini > --- > xen/arch/x86/cpu/mcheck/mce.h | 2 +- > xen/arch/x86/cpu/mcheck/x86_mca.h | 2 +- > xen/arch/x86/hvm/rtc.c | 2 +- > xen/arch/x86/hvm/svm/nestedhvm.h | 2 +- > xen/arch/x86/hvm/vioapic.c | 2 +- > xen/arch/x86/include/asm/genapic.h | 2 +- > xen/arch/x86/include/asm/guest_pt.h | 2 +- > xen/arch/x86/include/asm/hap.h | 2 +- > xen/arch/x86/include/asm/hvm/io.h | 2 +- > xen/arch/x86/include/asm/hvm/monitor.h | 2 +- > xen/arch/x86/include/asm/hvm/svm/vmcb.h | 2 +- > xen/arch/x86/include/asm/hvm/vmx/vmcs.h | 4 ++-- > xen/arch/x86/include/asm/hvm/vmx/vvmx.h | 8 +++---- > xen/arch/x86/include/asm/io_apic.h | 2 +- > xen/arch/x86/include/asm/irq.h | 6 ++--- > xen/arch/x86/include/asm/mem_access.h | 2 +- > xen/arch/x86/include/asm/mpspec.h | 2 +- > xen/arch/x86/include/asm/msi.h | 4 ++-- > xen/arch/x86/include/asm/p2m.h | 8 +++---- > xen/arch/x86/include/asm/paging.h | 2 +- > xen/arch/x86/include/asm/psr.h | 2 +- > xen/arch/x86/include/asm/setup.h | 2 +- > xen/arch/x86/include/asm/uaccess.h | 6 ++--- > xen/arch/x86/include/asm/xstate.h | 2 +- > xen/include/xen/lib/x86/cpu-policy.h | 29 +++++++++++++------------ > 25 files changed, 51 insertions(+), 50 deletions(-) > > diff --git a/xen/arch/x86/cpu/mcheck/mce.h b/xen/arch/x86/cpu/mcheck/mce.h > index bea08bdc74..72d8dbc471 100644 > --- a/xen/arch/x86/cpu/mcheck/mce.h > +++ b/xen/arch/x86/cpu/mcheck/mce.h > @@ -44,7 +44,7 @@ extern uint8_t cmci_apic_vector; > extern bool lmce_support; > > /* Init functions */ > -enum mcheck_type amd_mcheck_init(struct cpuinfo_x86 *c); > +enum mcheck_type amd_mcheck_init(struct cpuinfo_x86 *ci); > enum mcheck_type intel_mcheck_init(struct cpuinfo_x86 *c, bool bsp); > > void amd_nonfatal_mcheck_init(struct cpuinfo_x86 *c); > diff --git a/xen/arch/x86/cpu/mcheck/x86_mca.h b/xen/arch/x86/cpu/mcheck/x86_mca.h > index 18116737af..36b6127a37 100644 > --- a/xen/arch/x86/cpu/mcheck/x86_mca.h > +++ b/xen/arch/x86/cpu/mcheck/x86_mca.h > @@ -113,7 +113,7 @@ static inline int mcabanks_test(int bit, struct mca_banks* banks) > return test_bit(bit, banks->bank_map); > } > > -struct mca_banks *mcabanks_alloc(unsigned int nr); > +struct mca_banks *mcabanks_alloc(unsigned int nr_mce_banks); > void mcabanks_free(struct mca_banks *banks); > extern struct mca_banks *mca_allbanks; > > diff --git a/xen/arch/x86/hvm/rtc.c b/xen/arch/x86/hvm/rtc.c > index c1ab6c7d58..ebb259586a 100644 > --- a/xen/arch/x86/hvm/rtc.c > +++ b/xen/arch/x86/hvm/rtc.c > @@ -59,7 +59,7 @@ enum rtc_mode { > static void rtc_copy_date(RTCState *s); > static void rtc_set_time(RTCState *s); > static inline int from_bcd(RTCState *s, int a); > -static inline int convert_hour(RTCState *s, int hour); > +static inline int convert_hour(RTCState *s, int raw); > > static void rtc_update_irq(RTCState *s) > { > diff --git a/xen/arch/x86/hvm/svm/nestedhvm.h b/xen/arch/x86/hvm/svm/nestedhvm.h > index 43245e13de..eb9c416307 100644 > --- a/xen/arch/x86/hvm/svm/nestedhvm.h > +++ b/xen/arch/x86/hvm/svm/nestedhvm.h > @@ -42,7 +42,7 @@ int cf_check nsvm_vcpu_initialise(struct vcpu *v); > int cf_check nsvm_vcpu_reset(struct vcpu *v); > int nsvm_vcpu_vmrun(struct vcpu *v, struct cpu_user_regs *regs); > int cf_check nsvm_vcpu_vmexit_event(struct vcpu *v, > - const struct x86_event *event); > + const struct x86_event *trap); > uint64_t cf_check nsvm_vcpu_hostcr3(struct vcpu *v); > bool cf_check nsvm_vmcb_guest_intercepts_event( > struct vcpu *v, unsigned int vector, int errcode); > diff --git a/xen/arch/x86/hvm/vioapic.c b/xen/arch/x86/hvm/vioapic.c > index 41e3c4d5e4..4e40d3609a 100644 > --- a/xen/arch/x86/hvm/vioapic.c > +++ b/xen/arch/x86/hvm/vioapic.c > @@ -43,7 +43,7 @@ > /* HACK: Route IRQ0 only to VCPU0 to prevent time jumps. */ > #define IRQ0_SPECIAL_ROUTING 1 > > -static void vioapic_deliver(struct hvm_vioapic *vioapic, unsigned int irq); > +static void vioapic_deliver(struct hvm_vioapic *vioapic, unsigned int pin); > > static struct hvm_vioapic *addr_vioapic(const struct domain *d, > unsigned long addr) > diff --git a/xen/arch/x86/include/asm/genapic.h b/xen/arch/x86/include/asm/genapic.h > index beeaddf19d..970df8ffe0 100644 > --- a/xen/arch/x86/include/asm/genapic.h > +++ b/xen/arch/x86/include/asm/genapic.h > @@ -43,7 +43,7 @@ void cf_check send_IPI_self_legacy(uint8_t vector); > > void cf_check init_apic_ldr_flat(void); > unsigned int cf_check cpu_mask_to_apicid_flat(const cpumask_t *cpumask); > -void cf_check send_IPI_mask_flat(const cpumask_t *mask, int vector); > +void cf_check send_IPI_mask_flat(const cpumask_t *cpumask, int vector); > const cpumask_t *cf_check vector_allocation_cpumask_flat(int cpu); > #define GENAPIC_FLAT \ > .int_delivery_mode = dest_LowestPrio, \ > diff --git a/xen/arch/x86/include/asm/guest_pt.h b/xen/arch/x86/include/asm/guest_pt.h > index bde7588342..f616357107 100644 > --- a/xen/arch/x86/include/asm/guest_pt.h > +++ b/xen/arch/x86/include/asm/guest_pt.h > @@ -422,7 +422,7 @@ static inline unsigned int guest_walk_to_page_order(const walk_t *gw) > > bool > guest_walk_tables(const struct vcpu *v, struct p2m_domain *p2m, > - unsigned long va, walk_t *gw, uint32_t pfec, > + unsigned long va, walk_t *gw, uint32_t walk, > gfn_t top_gfn, mfn_t top_mfn, void *top_map); > > /* Pretty-print the contents of a guest-walk */ > diff --git a/xen/arch/x86/include/asm/hap.h b/xen/arch/x86/include/asm/hap.h > index 9d12327b12..05e124ad57 100644 > --- a/xen/arch/x86/include/asm/hap.h > +++ b/xen/arch/x86/include/asm/hap.h > @@ -30,7 +30,7 @@ void hap_vcpu_init(struct vcpu *v); > int hap_track_dirty_vram(struct domain *d, > unsigned long begin_pfn, > unsigned int nr_frames, > - XEN_GUEST_HANDLE(void) dirty_bitmap); > + XEN_GUEST_HANDLE(void) guest_dirty_bitmap); > > extern const struct paging_mode *hap_paging_get_mode(struct vcpu *); > int hap_set_allocation(struct domain *d, unsigned int pages, bool *preempted); > diff --git a/xen/arch/x86/include/asm/hvm/io.h b/xen/arch/x86/include/asm/hvm/io.h > index 8df33eb6cc..cad082f020 100644 > --- a/xen/arch/x86/include/asm/hvm/io.h > +++ b/xen/arch/x86/include/asm/hvm/io.h > @@ -90,7 +90,7 @@ bool handle_mmio_with_translation(unsigned long gla, unsigned long gpfn, > struct npfec); > bool handle_pio(uint16_t port, unsigned int size, int dir); > void hvm_interrupt_post(struct vcpu *v, int vector, int type); > -void hvm_dpci_eoi(struct domain *d, unsigned int guest_irq); > +void hvm_dpci_eoi(struct domain *d, unsigned int guest_gsi); > void msix_write_completion(struct vcpu *); > > #ifdef CONFIG_HVM > diff --git a/xen/arch/x86/include/asm/hvm/monitor.h b/xen/arch/x86/include/asm/hvm/monitor.h > index 5276b0af08..02021be47b 100644 > --- a/xen/arch/x86/include/asm/hvm/monitor.h > +++ b/xen/arch/x86/include/asm/hvm/monitor.h > @@ -25,7 +25,7 @@ bool hvm_monitor_cr(unsigned int index, unsigned long value, > unsigned long old); > #define hvm_monitor_crX(cr, new, old) \ > hvm_monitor_cr(VM_EVENT_X86_##cr, new, old) > -bool hvm_monitor_msr(unsigned int msr, uint64_t value, uint64_t old_value); > +bool hvm_monitor_msr(unsigned int msr, uint64_t new_value, uint64_t old_value); > void hvm_monitor_descriptor_access(uint64_t exit_info, > uint64_t vmx_exit_qualification, > uint8_t descriptor, bool is_write); > diff --git a/xen/arch/x86/include/asm/hvm/svm/vmcb.h b/xen/arch/x86/include/asm/hvm/svm/vmcb.h > index a1a8a7fd25..91221ff4e2 100644 > --- a/xen/arch/x86/include/asm/hvm/svm/vmcb.h > +++ b/xen/arch/x86/include/asm/hvm/svm/vmcb.h > @@ -607,7 +607,7 @@ void setup_vmcb_dump(void); > #define MSR_INTERCEPT_READ 1 > #define MSR_INTERCEPT_WRITE 2 > #define MSR_INTERCEPT_RW (MSR_INTERCEPT_WRITE | MSR_INTERCEPT_READ) > -void svm_intercept_msr(struct vcpu *v, uint32_t msr, int enable); > +void svm_intercept_msr(struct vcpu *v, uint32_t msr, int flags); > #define svm_disable_intercept_for_msr(v, msr) svm_intercept_msr((v), (msr), MSR_INTERCEPT_NONE) > #define svm_enable_intercept_for_msr(v, msr) svm_intercept_msr((v), (msr), MSR_INTERCEPT_RW) > > diff --git a/xen/arch/x86/include/asm/hvm/vmx/vmcs.h b/xen/arch/x86/include/asm/hvm/vmx/vmcs.h > index d07fcb2bc9..24bf409d8f 100644 > --- a/xen/arch/x86/include/asm/hvm/vmx/vmcs.h > +++ b/xen/arch/x86/include/asm/hvm/vmx/vmcs.h > @@ -656,10 +656,10 @@ bool vmx_msr_is_intercepted(struct vmx_msr_bitmap *msr_bitmap, > unsigned int msr, bool is_write) __nonnull(1); > void virtual_vmcs_enter(const struct vcpu *); > void virtual_vmcs_exit(const struct vcpu *); > -u64 virtual_vmcs_vmread(const struct vcpu *, u32 encoding); > +u64 virtual_vmcs_vmread(const struct vcpu *, u32 vmcs_encoding); Shouldn't the first parameter be "v" to match the definition? Or is that a different MISRA C rule? > enum vmx_insn_errno virtual_vmcs_vmread_safe(const struct vcpu *v, > u32 vmcs_encoding, u64 *val); > -void virtual_vmcs_vmwrite(const struct vcpu *, u32 encoding, u64 val); > +void virtual_vmcs_vmwrite(const struct vcpu *, u32 vmcs_encoding, u64 val); same here > enum vmx_insn_errno virtual_vmcs_vmwrite_safe(const struct vcpu *v, > u32 vmcs_encoding, u64 val); > > diff --git a/xen/arch/x86/include/asm/hvm/vmx/vvmx.h b/xen/arch/x86/include/asm/hvm/vmx/vvmx.h > index dc9db69258..1e4bbc0d78 100644 > --- a/xen/arch/x86/include/asm/hvm/vmx/vvmx.h > +++ b/xen/arch/x86/include/asm/hvm/vmx/vvmx.h > @@ -144,9 +144,9 @@ enum vvmcs_encoding_type { > VVMCS_TYPE_HSTATE, > }; > > -u64 get_vvmcs_virtual(void *vvmcs, u32 encoding); > +u64 get_vvmcs_virtual(void *vvmcs, u32 vmcs_encoding); This one should return uint64_t to match the definition. Or is that a different MISRA C rule? > u64 get_vvmcs_real(const struct vcpu *, u32 encoding); > -void set_vvmcs_virtual(void *vvmcs, u32 encoding, u64 val); > +void set_vvmcs_virtual(void *vvmcs, u32 vmcs_encoding, u64 val); This one should be: void set_vvmcs_virtual(void *vvmcs, uint32_t vmcs_encoding, uint64_t val) Other than these, everything else checks out From xen-devel-bounces@lists.xenproject.org Thu Jun 29 20:02:03 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 20:02:03 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557066.870091 (Exim 4.92) (envelope-from ) id 1qExpw-00049l-Po; Thu, 29 Jun 2023 20:01:52 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557066.870091; Thu, 29 Jun 2023 20:01:52 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qExpw-00049e-NC; Thu, 29 Jun 2023 20:01:52 +0000 Received: by outflank-mailman (input) for mailman id 557066; Thu, 29 Jun 2023 20:01:51 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qExpv-00049Y-OW for xen-devel@lists.xenproject.org; Thu, 29 Jun 2023 20:01:51 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qExpv-0006Qa-AJ; Thu, 29 Jun 2023 20:01:51 +0000 Received: from gw1.octic.net ([88.97.20.152] helo=[10.0.1.240]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qExpv-0008Ck-4f; Thu, 29 Jun 2023 20:01:51 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=5WDmSaeH4byCh/tPtHYG9Yuj8Q24M45GwU5agwKYVZM=; b=hZtLqGNKIVqIYv4cSr6g/Ar3rf qASsIub6S+ESGt9WpymM3/VJE3511PB+wAH9RAyTyiO7PebSp76v1SB1n/Txl+8iBJEutaYVlqA5K iiSCdePE6KSLTrLURoTxMVkO5xjKEACQmuhkt3CPx7E839yYvOW/bGxlP1mX9hxGOQS0=; Message-ID: Date: Thu, 29 Jun 2023 21:01:49 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH 8/9] xen/arm: Allow the user to build Xen with USBAN Content-Language: en-US To: Henry Wang , "xen-devel@lists.xenproject.org" Cc: Luca Fancellu , "michal.orzel@amd.com" , Julien Grall , Stefano Stabellini , Bertrand Marquis , Volodymyr Babchuk References: <20230625204907.57291-1-julien@xen.org> <20230625204907.57291-9-julien@xen.org> <3caaf967-b7ba-0915-56aa-aeff5450a456@xen.org> From: Julien Grall In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit On 29/06/2023 02:36, Henry Wang wrote: > Hi Julien, Hi Henry, >> -----Original Message----- >> Subject: Re: [PATCH 8/9] xen/arm: Allow the user to build Xen with USBAN >> >> On 26/06/2023 08:29, Henry Wang wrote: >>> Hi Julien, >> Hi Henry, >> >>> Reviewed-by: Henry Wang >> >> Thanks, I will fix both typos. > > Great, thanks! > >> >>> >>> Just want to make sure you also noticed this, otherwise maybe you >>> can include another patch in the series to fix this? >> >> I haven't seen this one. Probably because you would need a setup where >> interrupts are around ID 1022. > > I took a closer look today, I think the reason is from this device tree node > for the FVP: > > ethernet@202000000 { > compatible = "smsc,lan91c111"; > reg = <0x2 0x2000000 0x10000>; > interrupts = <0xf>; > }; > > The value 0xf is passed to vgic_get_virq_type() as "index" then "intr" in > VGIC_ICFG_MASK. Hence the 31 in > "(XEN) left shift of 1 by 31 places cannot be represented in type 'int'". > >> >> Or I can do that >>> in case you don't have enough bandwidth. >> >> You have the setup to exercise the problem. So it would be best if you >> do it. > > I've prepared below on top of your series: > -#define VGIC_ICFG_MASK(intr) (1 << ((2 * ((intr) % 16)) + 1)) > +#define VGIC_ICFG_MASK(intr) (1U << ((2 * ((intr) % 16)) + 1)) This LGTM. Feel free to send a patch. Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Thu Jun 29 20:11:43 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 20:11:43 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557074.870134 (Exim 4.92) (envelope-from ) id 1qExzP-0006MX-19; Thu, 29 Jun 2023 20:11:39 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557074.870134; Thu, 29 Jun 2023 20:11:38 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qExzO-0006LF-RH; Thu, 29 Jun 2023 20:11:38 +0000 Received: by outflank-mailman (input) for mailman id 557074; Thu, 29 Jun 2023 20:11:38 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qExzO-000686-4o for xen-devel@lists.xenproject.org; Thu, 29 Jun 2023 20:11:38 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qExzO-0006la-0K; Thu, 29 Jun 2023 20:11:38 +0000 Received: from 54-240-197-232.amazon.com ([54.240.197.232] helo=dev-dsk-jgrall-1b-035652ec.eu-west-1.amazon.com) by xenbits.xenproject.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qExzN-0000KI-Ot; Thu, 29 Jun 2023 20:11:37 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:MIME-Version:References: In-Reply-To:Message-Id:Date:Subject:Cc:To:From; bh=/jdx3egdYMGcVcThBa+BLos4+OXw1gDLyp5YfV1/oUM=; b=xaAZRgPF3+z/GpC7TjxSIseKlC 7t9Kd8yXMSvBP3u8WLx8NeQQI8KyIDSAgzdTFSUd2ioCwLszDafJ7ExldM7+wGTYYk/xIVUiIkTuf 0Dhc9EGq7wI6qh201tJc9addkPMXLKXACyUlbEfpLbzkKD97X+pErfe0ZtqlaC6ObmEc=; From: Julien Grall To: xen-devel@lists.xenproject.org Cc: Luca.Fancellu@arm.com, michal.orzel@amd.com, Henry.Wang@arm.com, Julien Grall Subject: [v2 4/4] xen/arm: Allow the user to build Xen with UBSAN Date: Thu, 29 Jun 2023 21:11:29 +0100 Message-Id: <20230629201129.12934-5-julien@xen.org> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230629201129.12934-1-julien@xen.org> References: <20230629201129.12934-1-julien@xen.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit From: Julien Grall UBSAN has been enabled a few years ago on x86 but was never enabled on Arm because the final binary is bigger than 2MB ( the maximum we can currently handled). With the recent rework, it is now possible to grow Xen over 2MB. So there is no more roadblock to enable Xen other than increasing the reserved area. On my setup, for arm32, the final binaray was very close to 4MB. Furthermore, one may want to enable UBSAN and GCOV which would put the binary well-over 4MB (both features require for some space). Therefore, increase the size to 8MB which should us some margin. Signed-off-by: Julien Grall --- The drawback with this approach is that we are adding 6 new page-table (3 for boot and 3 for runtime) that are statically allocated. So the final Xen binary will be 24KB bigger when neither UBSAN nor GCOV. If this is not considered acceptable, then we could make the size of configurable in the Kconfig and decide it based on the features enabled. Changes in v2: - Fix typoes - Add Michal's reviewed-by tag - Add Henry's reviewed-by tag - Add a comment regarding the reserved size for Xen --- xen/arch/arm/Kconfig | 1 + xen/arch/arm/include/asm/config.h | 22 +++++++++++++--------- 2 files changed, 14 insertions(+), 9 deletions(-) diff --git a/xen/arch/arm/Kconfig b/xen/arch/arm/Kconfig index 61e581b8c2b0..06b5ff755c95 100644 --- a/xen/arch/arm/Kconfig +++ b/xen/arch/arm/Kconfig @@ -17,6 +17,7 @@ config ARM select HAS_PASSTHROUGH select HAS_PDX select HAS_PMAP + select HAS_UBSAN select IOMMU_FORCE_PT_SHARE config ARCH_DEFCONFIG diff --git a/xen/arch/arm/include/asm/config.h b/xen/arch/arm/include/asm/config.h index 6d246ab23c48..cc32802ad0e9 100644 --- a/xen/arch/arm/include/asm/config.h +++ b/xen/arch/arm/include/asm/config.h @@ -74,10 +74,10 @@ /* * ARM32 layout: * 0 - 2M Unmapped - * 2M - 4M Xen text, data, bss - * 4M - 6M Fixmap: special-purpose 4K mapping slots - * 6M - 10M Early boot mapping of FDT - * 10M - 12M Livepatch vmap (if compiled in) + * 2M - 10M Xen text, data, bss + * 10M - 12M Fixmap: special-purpose 4K mapping slots + * 12M - 16M Early boot mapping of FDT + * 16M - 18M Livepatch vmap (if compiled in) * * 32M - 128M Frametable: 32 bytes per page for 12GB of RAM * 256M - 1G VMAP: ioremap and early_ioremap use this virtual address @@ -94,10 +94,10 @@ * 0x0000020000000000 - 0x0000027fffffffff (512GB, L0 slot [4]) * (Relative offsets) * 0 - 2M Unmapped - * 2M - 4M Xen text, data, bss - * 4M - 6M Fixmap: special-purpose 4K mapping slots - * 6M - 10M Early boot mapping of FDT - * 10M - 12M Livepatch vmap (if compiled in) + * 2M - 10M Xen text, data, bss + * 10M - 12M Fixmap: special-purpose 4K mapping slots + * 12M - 16M Early boot mapping of FDT + * 16M - 18M Livepatch vmap (if compiled in) * * 1G - 2G VMAP: ioremap and early_ioremap * @@ -124,7 +124,11 @@ #define XEN_VIRT_START (SLOT0(4) + _AT(vaddr_t, MB(2))) #endif -#define XEN_VIRT_SIZE _AT(vaddr_t, MB(2)) +/* + * Reserve enough space so both UBSAN and GCOV can be enabled together + * plus some slack for future growth. + */ +#define XEN_VIRT_SIZE _AT(vaddr_t, MB(8)) #define XEN_NR_ENTRIES(lvl) (XEN_VIRT_SIZE / XEN_PT_LEVEL_SIZE(lvl)) #define FIXMAP_VIRT_START (XEN_VIRT_START + XEN_VIRT_SIZE) -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 29 20:11:43 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 20:11:43 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557070.870101 (Exim 4.92) (envelope-from ) id 1qExzL-0005e8-M1; Thu, 29 Jun 2023 20:11:35 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557070.870101; Thu, 29 Jun 2023 20:11:35 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qExzL-0005e0-JM; Thu, 29 Jun 2023 20:11:35 +0000 Received: by outflank-mailman (input) for mailman id 557070; Thu, 29 Jun 2023 20:11:34 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qExzK-0005dm-N5 for xen-devel@lists.xenproject.org; Thu, 29 Jun 2023 20:11:34 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qExzK-0006ky-Az; Thu, 29 Jun 2023 20:11:34 +0000 Received: from 54-240-197-232.amazon.com ([54.240.197.232] helo=dev-dsk-jgrall-1b-035652ec.eu-west-1.amazon.com) by xenbits.xenproject.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qExzK-0000KI-37; Thu, 29 Jun 2023 20:11:34 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:MIME-Version:Message-Id:Date: Subject:Cc:To:From; bh=qGgBhJ0QVywDswP/P6XQDrfhzAcORmDwmn/RFl5JH5E=; b=jl0JYk 3Z2OlkJS3s0LMyr9fBlFaWZByKb6E/+zgrhpA6VChuheswRMfHkoYn4aVGPWovpQ6KQAzO4OZDg7R sAhS+uDsJL4F05+wyXrIdWOBzElms3AYoJUVOHJrfU4qEjPkAnZMG/YIgChg0eRZQPE+E/VlIeq0H fiodzPBVqTo=; From: Julien Grall To: xen-devel@lists.xenproject.org Cc: Luca.Fancellu@arm.com, michal.orzel@amd.com, Henry.Wang@arm.com, Julien Grall Subject: [v2 0/4] xen/arm: Enable USBAN support Date: Thu, 29 Jun 2023 21:11:25 +0100 Message-Id: <20230629201129.12934-1-julien@xen.org> X-Mailer: git-send-email 2.40.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit From: Julien Grall Hi all, At the moment, we are not able to enable UBSAN on Arm because the final binary will be over the maximum size of Xen we currently support (i.e. 2MB). This patch series aim to lift the restrictions and also enable UBSAN. Cheers, Julien Grall (4): xen/arm64: head: Don't map too much in boot_third xen/arm32: head: Don't map too much in boot_third xen/arm: Rework the code mapping Xen to avoid relying on the size of Xen xen/arm: Allow the user to build Xen with UBSAN xen/arch/arm/Kconfig | 1 + xen/arch/arm/arm32/head.S | 79 ++++++++++++++++++++++++------- xen/arch/arm/arm64/head.S | 69 ++++++++++++++++++++++----- xen/arch/arm/include/asm/config.h | 23 +++++---- xen/arch/arm/include/asm/lpae.h | 10 ++-- xen/arch/arm/mm.c | 24 ++++++---- xen/arch/arm/xen.lds.S | 9 ++++ 7 files changed, 161 insertions(+), 54 deletions(-) -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 29 20:11:43 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 20:11:43 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557072.870120 (Exim 4.92) (envelope-from ) id 1qExzO-00067y-4Z; Thu, 29 Jun 2023 20:11:38 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557072.870120; Thu, 29 Jun 2023 20:11:38 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qExzO-00067p-1p; Thu, 29 Jun 2023 20:11:38 +0000 Received: by outflank-mailman (input) for mailman id 557072; Thu, 29 Jun 2023 20:11:36 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qExzM-0005or-7g for xen-devel@lists.xenproject.org; Thu, 29 Jun 2023 20:11:36 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qExzM-0006lD-43; Thu, 29 Jun 2023 20:11:36 +0000 Received: from 54-240-197-232.amazon.com ([54.240.197.232] helo=dev-dsk-jgrall-1b-035652ec.eu-west-1.amazon.com) by xenbits.xenproject.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qExzL-0000KI-SW; Thu, 29 Jun 2023 20:11:36 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:MIME-Version:References: In-Reply-To:Message-Id:Date:Subject:Cc:To:From; bh=E0WEULIH7RKlj8ag6umBkV++f/zxydmEZbbsLJob028=; b=hOoV+7GxYhfQWP2/hhMX5h/ZAj sZ2e3BkFuGve2UvNM9ypBgS2PvqyOkG170PkinZQ0knEMO/hWpf9HtK69rNnvBbVO98+x+cGb16xT oz74dMXH6TdVwMBa4WFYBuezAL/SGTwa7LHZVzr0teiZrFHXpXd470E1aMriWkZOZAp4=; From: Julien Grall To: xen-devel@lists.xenproject.org Cc: Luca.Fancellu@arm.com, michal.orzel@amd.com, Henry.Wang@arm.com, Julien Grall Subject: [v2 2/4] xen/arm32: head: Don't map too much in boot_third Date: Thu, 29 Jun 2023 21:11:27 +0100 Message-Id: <20230629201129.12934-3-julien@xen.org> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230629201129.12934-1-julien@xen.org> References: <20230629201129.12934-1-julien@xen.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit From: Julien Grall At the moment, we are mapping the size of the reserved area for Xen (i.e. 2MB) even if the binary is smaller. We don't exactly know what's after Xen, so it is not a good idea to map more than necessary for a couple of reasons: * We would need to use break-before-make if the extra PTE needs to be updated to point to another region * The extra area mapped may be mapped again by Xen with different memory attribute. This would result to attribute mismatch. Therefore, rework the logic in create_page_tables() to map only what's necessary. To simplify the logic, we also want to make sure _end is page-aligned. So align the symbol in the linker and add an assert to catch any change. Signed-off-by: Julien Grall Reviewed-by: Michal Orzel --- Changes in v2: - Fix typo - Add Michal's reviewed-by tag --- xen/arch/arm/arm32/head.S | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/xen/arch/arm/arm32/head.S b/xen/arch/arm/arm32/head.S index 1ad981b67460..5e3692eb3abf 100644 --- a/xen/arch/arm/arm32/head.S +++ b/xen/arch/arm/arm32/head.S @@ -459,6 +459,19 @@ create_page_tables: create_table_entry boot_pgtable, boot_second, r0, 1 create_table_entry boot_second, boot_third, r0, 2 + /* + * Find the size of Xen in pages and multiply by the size of a + * PTE. This will then be compared in the mapping loop below. + * + * Note the multiplication is just to avoid using an extra + * register/instruction per iteration. + */ + mov_w r0, _start /* r0 := vaddr(_start) */ + mov_w r1, _end /* r1 := vaddr(_end) */ + sub r0, r1, r0 /* r0 := effective size of Xen */ + lsr r0, r0, #PAGE_SHIFT /* r0 := Number of pages for Xen */ + lsl r0, r0, #3 /* r0 := Number of pages * PTE size */ + /* Setup boot_third: */ adr_l r4, boot_third @@ -473,7 +486,7 @@ create_page_tables: 1: strd r2, r3, [r4, r1] /* Map vaddr(start) */ add r2, r2, #PAGE_SIZE /* Next page */ add r1, r1, #8 /* Next slot */ - cmp r1, #(XEN_PT_LPAE_ENTRIES<<3) /* 512*8-byte entries per page */ + cmp r1, r0 /* Loop until we map all of Xen */ blo 1b /* -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 29 20:11:43 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 20:11:43 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557073.870125 (Exim 4.92) (envelope-from ) id 1qExzO-0006AY-FP; Thu, 29 Jun 2023 20:11:38 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557073.870125; Thu, 29 Jun 2023 20:11:38 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qExzO-0006A6-92; Thu, 29 Jun 2023 20:11:38 +0000 Received: by outflank-mailman (input) for mailman id 557073; Thu, 29 Jun 2023 20:11:37 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qExzN-00060s-7L for xen-devel@lists.xenproject.org; Thu, 29 Jun 2023 20:11:37 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qExzN-0006lQ-3S; Thu, 29 Jun 2023 20:11:37 +0000 Received: from 54-240-197-232.amazon.com ([54.240.197.232] helo=dev-dsk-jgrall-1b-035652ec.eu-west-1.amazon.com) by xenbits.xenproject.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qExzM-0000KI-PA; Thu, 29 Jun 2023 20:11:37 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:MIME-Version:References: In-Reply-To:Message-Id:Date:Subject:Cc:To:From; bh=Zgzk7zn0RDSvuGHlpIz7mQ/VwFGZ850f+cML2adUXv0=; b=FJ60LX9iKISlp/h/7knZyJXVi1 MnLfFUczLYxZPUO0RKeJSE0o+JM7eyTAwG3abcAk86lJVprwv4FlcfR4zHLiUQCaB5bIWEcCsepZP JNzVzaBCPFCUAb1sevGQbrdI0g1HYTasZnMALCXLOjk7ZZv+/QPHc+dOowTy+L2FVo/c=; From: Julien Grall To: xen-devel@lists.xenproject.org Cc: Luca.Fancellu@arm.com, michal.orzel@amd.com, Henry.Wang@arm.com, Julien Grall Subject: [v2 3/4] xen/arm: Rework the code mapping Xen to avoid relying on the size of Xen Date: Thu, 29 Jun 2023 21:11:28 +0100 Message-Id: <20230629201129.12934-4-julien@xen.org> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230629201129.12934-1-julien@xen.org> References: <20230629201129.12934-1-julien@xen.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit From: Julien Grall At the moment, the maximum size of Xen binary we can support is 2MB. This is what we reserved in the virtual address but also what all the code in Xen relies on as we only allocate one L3 page-table. When feature like UBSAN (will be enabled in a follow-up patch) and GCOV are enabled, the binary will be way over 2MB. The code is now reworked so it doesn't rely on a specific size but will instead look at the reversed size and compute the number of page-table to allocate/map. While at it, replace any reference to 4KB mappings with a more generic word because the page-size may change in the future. Also fix the typo s/tlb/tbl/ in code move in arm32/head.S Signed-off-by: Julien Grall --- Changes in v2: - Fix typoes - Remove comments that don't apply - Reword the explanation for DEFINE_BOOT_PAGE_TABLE{,S} - Be more consistent with the way to from the virtual address to map in mm.c --- xen/arch/arm/arm32/head.S | 64 +++++++++++++++++++++++-------- xen/arch/arm/arm64/head.S | 54 ++++++++++++++++++++------ xen/arch/arm/include/asm/config.h | 1 + xen/arch/arm/include/asm/lpae.h | 10 +++-- xen/arch/arm/mm.c | 24 +++++++----- 5 files changed, 110 insertions(+), 43 deletions(-) diff --git a/xen/arch/arm/arm32/head.S b/xen/arch/arm/arm32/head.S index 5e3692eb3abf..cfc542b55973 100644 --- a/xen/arch/arm/arm32/head.S +++ b/xen/arch/arm/arm32/head.S @@ -141,8 +141,7 @@ /* * This must be the very first address in the loaded image. * It should be linked at XEN_VIRT_START, and loaded at any - * 4K-aligned address. All of text+data+bss must fit in 2MB, - * or the initial pagetable code below will need adjustment. + * 4K-aligned address. */ GLOBAL(start) /* @@ -373,7 +372,35 @@ ENDPROC(cpu_init) .endm /* - * Macro to create a page table entry in \ptbl to \tbl + * Macro to create a page table entry in \ptbl to \tbl (physical + * address) + * + * ptbl: table symbol where the entry will be created + * tbl: physical address of the table to point to + * virt: virtual address + * lvl: page-table level + * + * Preserves \virt + * Clobbers \tbl, r1 - r3 + * + * Note that \tbl and \virt should be in a register other than r1 - r3 + */ +.macro create_table_entry_from_paddr, ptbl, tbl, virt, lvl + get_table_slot r1, \virt, \lvl /* r1 := slot in \tbl */ + lsl r1, r1, #3 /* r1 := slot offset in \tbl */ + + movw r2, #PT_PT /* r2:r3 := right for linear PT */ + orr r2, r2, \tbl /* + \tbl paddr */ + mov r3, #0 + + adr_l \tbl, \ptbl /* \tbl := (v,p)addr of \ptbl */ + + strd r2, r3, [\tbl, r1] +.endm + + +/* + * Macro to create a page table entry in \ptbl to \tbl (symbol) * * ptbl: table symbol where the entry will be created * tbl: table symbol to point to @@ -388,19 +415,9 @@ ENDPROC(cpu_init) * Note that \virt should be in a register other than r1 - r4 */ .macro create_table_entry, ptbl, tbl, virt, lvl - get_table_slot r1, \virt, \lvl /* r1 := slot in \tlb */ - lsl r1, r1, #3 /* r1 := slot offset in \tlb */ - load_paddr r4, \tbl - - movw r2, #PT_PT /* r2:r3 := right for linear PT */ - orr r2, r2, r4 /* + \tlb paddr */ - mov r3, #0 - - adr_l r4, \ptbl - - strd r2, r3, [r4, r1] -.endm + create_table_entry_from_paddr \ptbl, r4, \virt, \lvl + .endm /* * Macro to create a mapping entry in \tbl to \paddr. Only mapping in 3rd @@ -451,13 +468,26 @@ ENDPROC(cpu_init) * Output: * r12: Was a temporary mapping created? * - * Clobbers r0 - r4 + * Clobbers r0 - r5 */ create_page_tables: /* Prepare the page-tables for mapping Xen */ mov_w r0, XEN_VIRT_START create_table_entry boot_pgtable, boot_second, r0, 1 - create_table_entry boot_second, boot_third, r0, 2 + + /* + * We need to use a stash register because + * create_table_entry_paddr() will clobber the register storing + * the physical address of the table to point to. + */ + load_paddr r5, boot_third + mov_w r4, XEN_VIRT_START +.rept XEN_NR_ENTRIES(2) + mov r0, r5 /* r0 := paddr(l3 table) */ + create_table_entry_from_paddr boot_second, r0, r4, 2 + add r4, r4, #XEN_PT_LEVEL_SIZE(2) /* r4 := Next vaddr */ + add r5, r5, #PAGE_SIZE /* r5 := Next table */ +.endr /* * Find the size of Xen in pages and multiply by the size of a diff --git a/xen/arch/arm/arm64/head.S b/xen/arch/arm/arm64/head.S index 5e9562a22240..ad9e0ba87a29 100644 --- a/xen/arch/arm/arm64/head.S +++ b/xen/arch/arm/arm64/head.S @@ -146,8 +146,7 @@ * * This must be the very first address in the loaded image. * It should be linked at XEN_VIRT_START, and loaded at any - * 4K-aligned address. All of text+data+bss must fit in 2MB, - * or the initial pagetable code below will need adjustment. + * 4K-aligned address. */ GLOBAL(start) @@ -490,6 +489,31 @@ ENDPROC(cpu_init) ubfx \slot, \virt, #XEN_PT_LEVEL_SHIFT(\lvl), #XEN_PT_LPAE_SHIFT .endm +/* + * Macro to create a page table entry in \ptbl to \tbl + * ptbl: table symbol where the entry will be created + * tbl: physical address of the table to point to + * virt: virtual address + * lvl: page-table level + * tmp1: scratch register + * tmp2: scratch register + * + * Preserves \virt + * Clobbers \tbl, \tmp1, \tmp2 + * + * Note that all parameters using registers should be distinct. + */ +.macro create_table_entry_from_paddr, ptbl, tbl, virt, lvl, tmp1, tmp2 + get_table_slot \tmp1, \virt, \lvl /* \tmp1 := slot in \tbl */ + + mov \tmp2, #PT_PT /* \tmp2 := right for linear PT */ + orr \tmp2, \tmp2, \tbl /* + \tbl */ + + adr_l \tbl, \ptbl /* \tbl := address(\ptbl) */ + + str \tmp2, [\tbl, \tmp1, lsl #3] +.endm + /* * Macro to create a page table entry in \ptbl to \tbl * @@ -509,15 +533,8 @@ ENDPROC(cpu_init) * Note that all parameters using registers should be distinct. */ .macro create_table_entry, ptbl, tbl, virt, lvl, tmp1, tmp2, tmp3 - get_table_slot \tmp1, \virt, \lvl /* \tmp1 := slot in \tlb */ - - load_paddr \tmp2, \tbl - mov \tmp3, #PT_PT /* \tmp3 := right for linear PT */ - orr \tmp3, \tmp3, \tmp2 /* + \tlb paddr */ - - adr_l \tmp2, \ptbl - - str \tmp3, [\tmp2, \tmp1, lsl #3] + load_paddr \tmp1, \tbl + create_table_entry_from_paddr \ptbl, \tmp1, \virt, \lvl, \tmp2, \tmp3 .endm /* @@ -570,7 +587,20 @@ create_page_tables: ldr x0, =XEN_VIRT_START create_table_entry boot_pgtable, boot_first, x0, 0, x1, x2, x3 create_table_entry boot_first, boot_second, x0, 1, x1, x2, x3 - create_table_entry boot_second, boot_third, x0, 2, x1, x2, x3 + + /* + * We need to use a stash register because + * create_table_entry_paddr() will clobber the register storing + * the physical address of the table to point to. + */ + load_paddr x4, boot_third + ldr x1, =XEN_VIRT_START +.rept XEN_NR_ENTRIES(2) + mov x0, x4 /* x0 := paddr(l3 table) */ + create_table_entry_from_paddr boot_second, x0, x1, 2, x2, x3 + add x1, x1, #XEN_PT_LEVEL_SIZE(2) /* x1 := Next vaddr */ + add x4, x4, #PAGE_SIZE /* x4 := Next table */ +.endr /* * Find the size of Xen in pages and multiply by the size of a diff --git a/xen/arch/arm/include/asm/config.h b/xen/arch/arm/include/asm/config.h index c969e6da589d..6d246ab23c48 100644 --- a/xen/arch/arm/include/asm/config.h +++ b/xen/arch/arm/include/asm/config.h @@ -125,6 +125,7 @@ #endif #define XEN_VIRT_SIZE _AT(vaddr_t, MB(2)) +#define XEN_NR_ENTRIES(lvl) (XEN_VIRT_SIZE / XEN_PT_LEVEL_SIZE(lvl)) #define FIXMAP_VIRT_START (XEN_VIRT_START + XEN_VIRT_SIZE) #define FIXMAP_VIRT_SIZE _AT(vaddr_t, MB(2)) diff --git a/xen/arch/arm/include/asm/lpae.h b/xen/arch/arm/include/asm/lpae.h index 7d2f6fd1bd5a..4a1679cb3334 100644 --- a/xen/arch/arm/include/asm/lpae.h +++ b/xen/arch/arm/include/asm/lpae.h @@ -267,15 +267,17 @@ lpae_t mfn_to_xen_entry(mfn_t mfn, unsigned int attr); /* * Macros to define page-tables: - * - DEFINE_BOOT_PAGE_TABLE is used to define page-table that are used - * in assembly code before BSS is zeroed. + * - DEFINE_BOOT_PAGE_TABLE{,S} are used to define one or multiple + * page-table that are used in assembly code before BSS is zeroed. * - DEFINE_PAGE_TABLE{,S} are used to define one or multiple * page-tables to be used after BSS is zeroed (typically they are only used * in C). */ -#define DEFINE_BOOT_PAGE_TABLE(name) \ +#define DEFINE_BOOT_PAGE_TABLES(name, nr) \ lpae_t __aligned(PAGE_SIZE) __section(".data.page_aligned") \ - name[XEN_PT_LPAE_ENTRIES] + name[XEN_PT_LPAE_ENTRIES * (nr)] + +#define DEFINE_BOOT_PAGE_TABLE(name) DEFINE_BOOT_PAGE_TABLES(name, 1) #define DEFINE_PAGE_TABLES(name, nr) \ lpae_t __aligned(PAGE_SIZE) name[XEN_PT_LPAE_ENTRIES * (nr)] diff --git a/xen/arch/arm/mm.c b/xen/arch/arm/mm.c index 0a3e1f3b64b6..fff6d7a4d37a 100644 --- a/xen/arch/arm/mm.c +++ b/xen/arch/arm/mm.c @@ -53,8 +53,8 @@ mm_printk(const char *fmt, ...) {} * to the CPUs own pagetables. * * These pagetables have a very simple structure. They include: - * - 2MB worth of 4K mappings of xen at XEN_VIRT_START, boot_first and - * boot_second are used to populate the tables down to boot_third + * - XEN_VIRT_SIZE worth of L3 mappings of xen at XEN_VIRT_START, boot_first + * and boot_second are used to populate the tables down to boot_third * which contains the actual mapping. * - a 1:1 mapping of xen at its current physical address. This uses a * section mapping at whichever of boot_{pgtable,first,second} @@ -79,7 +79,7 @@ DEFINE_BOOT_PAGE_TABLE(boot_first_id); DEFINE_BOOT_PAGE_TABLE(boot_second_id); DEFINE_BOOT_PAGE_TABLE(boot_third_id); DEFINE_BOOT_PAGE_TABLE(boot_second); -DEFINE_BOOT_PAGE_TABLE(boot_third); +DEFINE_BOOT_PAGE_TABLES(boot_third, XEN_NR_ENTRIES(2)); /* Main runtime page tables */ @@ -115,7 +115,7 @@ DEFINE_BOOT_PAGE_TABLE(xen_fixmap); * Third level page table used to map Xen itself with the XN bit set * as appropriate. */ -static DEFINE_PAGE_TABLE(xen_xenmap); +static DEFINE_PAGE_TABLES(xen_xenmap, XEN_NR_ENTRIES(2)); /* Non-boot CPUs use this to find the correct pagetables. */ uint64_t init_ttbr; @@ -518,15 +518,15 @@ void __init setup_pagetables(unsigned long boot_phys_offset) p[0].pt.table = 1; p[0].pt.xn = 0; - /* Break up the Xen mapping into 4k pages and protect them separately. */ - for ( i = 0; i < XEN_PT_LPAE_ENTRIES; i++ ) + /* Break up the Xen mapping into pages and protect them separately. */ + for ( i = 0; i < XEN_NR_ENTRIES(3); i++ ) { vaddr_t va = XEN_VIRT_START + (i << PAGE_SHIFT); if ( !is_kernel(va) ) break; pte = pte_of_xenaddr(va); - pte.pt.table = 1; /* 4k mappings always have this bit set */ + pte.pt.table = 1; /* third level mappings always have this bit set */ if ( is_kernel_text(va) || is_kernel_inittext(va) ) { pte.pt.xn = 0; @@ -539,10 +539,14 @@ void __init setup_pagetables(unsigned long boot_phys_offset) /* Initialise xen second level entries ... */ /* ... Xen's text etc */ + for ( i = 0; i < XEN_NR_ENTRIES(2); i++ ) + { + vaddr_t va = XEN_VIRT_START + (i << XEN_PT_LEVEL_SHIFT(2)); - pte = pte_of_xenaddr((vaddr_t)xen_xenmap); - pte.pt.table = 1; - xen_second[second_table_offset(XEN_VIRT_START)] = pte; + pte = pte_of_xenaddr((vaddr_t)(xen_xenmap + i * XEN_PT_LPAE_ENTRIES)); + pte.pt.table = 1; + xen_second[second_table_offset(va)] = pte; + } /* ... Fixmap */ pte = pte_of_xenaddr((vaddr_t)xen_fixmap); -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 29 20:11:43 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 20:11:43 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557071.870110 (Exim 4.92) (envelope-from ) id 1qExzM-0005sw-Tg; Thu, 29 Jun 2023 20:11:36 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557071.870110; Thu, 29 Jun 2023 20:11:36 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qExzM-0005sp-Qt; Thu, 29 Jun 2023 20:11:36 +0000 Received: by outflank-mailman (input) for mailman id 557071; Thu, 29 Jun 2023 20:11:35 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qExzL-0005dv-EL for xen-devel@lists.xenproject.org; Thu, 29 Jun 2023 20:11:35 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qExzL-0006l4-7y; Thu, 29 Jun 2023 20:11:35 +0000 Received: from 54-240-197-232.amazon.com ([54.240.197.232] helo=dev-dsk-jgrall-1b-035652ec.eu-west-1.amazon.com) by xenbits.xenproject.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qExzK-0000KI-Vw; Thu, 29 Jun 2023 20:11:35 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:MIME-Version:References: In-Reply-To:Message-Id:Date:Subject:Cc:To:From; bh=M6dL6+xvQ08WsYJRT4gNYr41k53D+4zoHoNEXSx9M1c=; b=s9pmGW+Ymm5wP8Q1LWJeF6zT3u 2YvTX51hdiRO9hoY/pkxfrIeVMSRGCCOwd3aakXWEe+4LOLZgqYD0B6Wxu9xoILsKQXWIH+6Ht+WG Q2vLD9CWYTlv/V3m7R+J4mJ+xsTiKkucOUnNbeZJ94XrhBkqBUcbKm9VrliD51Um1J/o=; From: Julien Grall To: xen-devel@lists.xenproject.org Cc: Luca.Fancellu@arm.com, michal.orzel@amd.com, Henry.Wang@arm.com, Julien Grall Subject: [v2 1/4] xen/arm64: head: Don't map too much in boot_third Date: Thu, 29 Jun 2023 21:11:26 +0100 Message-Id: <20230629201129.12934-2-julien@xen.org> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230629201129.12934-1-julien@xen.org> References: <20230629201129.12934-1-julien@xen.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit From: Julien Grall At the moment, we are mapping the size of the reserved area for Xen (i.e. 2MB) even if the binary is smaller. We don't exactly know what's after Xen, so it is not a good idea to map more than necessary for a couple of reasons: * We would need to use break-before-make if the extra PTE needs to be updated to point to another region * The extra area mapped may be mapped again by Xen with different memory attribute. This would result to attribute mismatch. Therefore, rework the logic in create_page_tables() to map only what's necessary. To simplify the logic, we also want to make sure _end is page-aligned. So align the symbol in the linker and add an assert to catch any change. Lastly, take the opportunity to confirm that _start is equal to XEN_VIRT_START as the assembly is using both interchangeably. Signed-off-by: Julien Grall --- Changes in v2: - Fix typo and coding style - Check _start == XEN_VIRT_START --- xen/arch/arm/arm64/head.S | 15 ++++++++++++++- xen/arch/arm/xen.lds.S | 9 +++++++++ 2 files changed, 23 insertions(+), 1 deletion(-) diff --git a/xen/arch/arm/arm64/head.S b/xen/arch/arm/arm64/head.S index c0e03755bb10..5e9562a22240 100644 --- a/xen/arch/arm/arm64/head.S +++ b/xen/arch/arm/arm64/head.S @@ -572,6 +572,19 @@ create_page_tables: create_table_entry boot_first, boot_second, x0, 1, x1, x2, x3 create_table_entry boot_second, boot_third, x0, 2, x1, x2, x3 + /* + * Find the size of Xen in pages and multiply by the size of a + * PTE. This will then be compared in the mapping loop below. + * + * Note the multiplication is just to avoid using an extra + * register/instruction per iteration. + */ + ldr x0, =_start /* x0 := vaddr(_start) */ + ldr x1, =_end /* x1 := vaddr(_end) */ + sub x0, x1, x0 /* x0 := effective size of Xen */ + lsr x0, x0, #PAGE_SHIFT /* x0 := Number of pages for Xen */ + lsl x0, x0, #3 /* x0 := Number of pages * PTE size */ + /* Map Xen */ adr_l x4, boot_third @@ -585,7 +598,7 @@ create_page_tables: 1: str x2, [x4, x1] /* Map vaddr(start) */ add x2, x2, #PAGE_SIZE /* Next page */ add x1, x1, #8 /* Next slot */ - cmp x1, #(XEN_PT_LPAE_ENTRIES<<3) /* 512 entries per page */ + cmp x1, x0 /* Loop until we map all of Xen */ b.lt 1b /* diff --git a/xen/arch/arm/xen.lds.S b/xen/arch/arm/xen.lds.S index d36b67708ab1..a3c90ca82316 100644 --- a/xen/arch/arm/xen.lds.S +++ b/xen/arch/arm/xen.lds.S @@ -212,6 +212,7 @@ SECTIONS . = ALIGN(POINTER_ALIGN); __bss_end = .; } :text + . = ALIGN(PAGE_SIZE); _end = . ; /* Section for the device tree blob (if any). */ @@ -226,6 +227,12 @@ SECTIONS ELF_DETAILS_SECTIONS } +/* + * The assembly code use _start and XEN_VIRT_START interchangeably to + * match the context. + */ +ASSERT(_start == XEN_VIRT_START, "_start != XEN_VIRT_START") + /* * We require that Xen is loaded at a page boundary, so this ensures that any * code running on the identity map cannot cross a section boundary. @@ -241,4 +248,6 @@ ASSERT(IS_ALIGNED(__init_begin, 4), "__init_begin is misaligned") ASSERT(IS_ALIGNED(__init_end, 4), "__init_end is misaligned") ASSERT(IS_ALIGNED(__bss_start, POINTER_ALIGN), "__bss_start is misaligned") ASSERT(IS_ALIGNED(__bss_end, POINTER_ALIGN), "__bss_end is misaligned") +/* To simplify the logic in head.S, we want to _end to be page aligned */ +ASSERT(IS_ALIGNED(_end, PAGE_SIZE), "_end is not page aligned") ASSERT((_end - _start) <= XEN_VIRT_SIZE, "Xen is too big") -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 29 20:16:54 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 20:16:54 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557092.870151 (Exim 4.92) (envelope-from ) id 1qEy4P-0008Va-MD; Thu, 29 Jun 2023 20:16:49 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557092.870151; Thu, 29 Jun 2023 20:16:49 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEy4P-0008VT-JT; Thu, 29 Jun 2023 20:16:49 +0000 Received: by outflank-mailman (input) for mailman id 557092; Thu, 29 Jun 2023 20:16:48 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEy4O-0008VJ-Bo; Thu, 29 Jun 2023 20:16:48 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEy4O-0006ro-5B; Thu, 29 Jun 2023 20:16:48 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEy4N-0007xV-N7; Thu, 29 Jun 2023 20:16:47 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qEy4N-0004dl-Md; Thu, 29 Jun 2023 20:16:47 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=bp4slAbigM5Z4yE+HhsUJnVy24v8BOifQ/q1mYelMko=; b=yM6BjrGaWLAZA7x/Ig7Zumn893 yCVs2QTNRMXbBR3t/ocofWp9O+yfSZQ0ogRWQoEhBw9ujPeJGRRQGow4rMFBM07VLI8H4KDManzth 2opopyVVk41SQihON9Gyr/sOiD0ICPLpXLmU7zrToF0jXk0vnTJJVWE7JgXzsVtOi9Qg=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [linux-linus test] 181637: regressions - trouble: broken/fail/pass X-Osstest-Failures: linux-linus:test-amd64-amd64-xl-pvshim::broken:regression linux-linus:test-amd64-amd64-xl-pvshim:host-install(5):broken:regression linux-linus:test-amd64-amd64-qemuu-nested-amd:leak-check/basis(11):fail:regression linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:leak-check/basis(11):fail:regression linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-qemut-debianhvm-amd64:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:xen-boot:fail:regression linux-linus:test-amd64-amd64-libvirt-qcow2:xen-boot:fail:regression linux-linus:test-amd64-amd64-libvirt-xsm:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-xsm:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-credit1:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-pvhv2-amd:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl:leak-check/basis(11):fail:regression linux-linus:test-amd64-amd64-xl-qemuu-ovmf-amd64:leak-check/basis(11):fail:regression linux-linus:test-amd64-amd64-freebsd11-amd64:leak-check/basis(11):fail:regression linux-linus:test-amd64-amd64-libvirt:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:xen-boot:fail:regression linux-linus:test-amd64-amd64-libvirt-raw:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm:xen-boot:fail:regression linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-shadow:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-multivcpu:debian-install:fail:regression linux-linus:test-amd64-amd64-xl-credit2:debian-install:fail:regression linux-linus:test-amd64-coresched-amd64-xl:debian-install:fail:regression linux-linus:test-amd64-amd64-libvirt-pair:xen-boot/dst_host:fail:regression linux-linus:test-amd64-amd64-xl-pvhv2-intel:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64:debian-hvm-install:fail:regression linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:debian-hvm-install:fail:regression linux-linus:test-amd64-amd64-xl-vhd:xen-boot:fail:regression linux-linus:test-amd64-amd64-freebsd12-amd64:xen-boot:fail:regression linux-linus:test-amd64-amd64-qemuu-nested-intel:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:xen-boot:fail:regression linux-linus:test-amd64-amd64-pair:xen-boot/src_host:fail:regression linux-linus:test-amd64-amd64-pair:xen-boot/dst_host:fail:regression linux-linus:test-armhf-armhf-xl-credit1:xen-boot:fail:regression linux-linus:test-arm64-arm64-libvirt-raw:guest-start:fail:regression linux-linus:test-arm64-arm64-xl-vhd:guest-start:fail:regression linux-linus:test-amd64-amd64-pygrub:guest-localmigrate/x10:fail:regression linux-linus:test-amd64-amd64-examine:reboot:fail:regression linux-linus:test-amd64-amd64-examine-uefi:reboot:fail:regression linux-linus:test-amd64-amd64-xl-rtds:leak-check/basis(11):fail:allowable linux-linus:test-armhf-armhf-examine:reboot:fail:nonblocking linux-linus:test-armhf-armhf-xl-arndale:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-raw:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-credit2:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-rtds:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-qcow2:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-vhd:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-multivcpu:xen-boot:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: linux=3a8a670eeeaa40d87bd38a587438952741980c18 X-Osstest-Versions-That: linux=6c538e1adbfc696ac4747fb10d63e704344f763d From: osstest service owner Date: Thu, 29 Jun 2023 20:16:47 +0000 flight 181637 linux-linus real [real] http://logs.test-lab.xenproject.org/osstest/logs/181637/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: test-amd64-amd64-xl-pvshim broken test-amd64-amd64-xl-pvshim 5 host-install(5) broken REGR. vs. 180278 test-amd64-amd64-qemuu-nested-amd 11 leak-check/basis(11) fail REGR. vs. 180278 test-amd64-amd64-xl-qemut-ws16-amd64 11 leak-check/basis(11) fail REGR. vs. 180278 test-amd64-amd64-xl-qemuu-ws16-amd64 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-xl-qemut-debianhvm-amd64 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-xl-qemuu-win7-amd64 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-xl-qemut-win7-amd64 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-libvirt-qcow2 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-libvirt-xsm 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-xl-xsm 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-xl-credit1 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-xl-pvhv2-amd 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-xl 11 leak-check/basis(11) fail REGR. vs. 180278 test-amd64-amd64-xl-qemuu-ovmf-amd64 11 leak-check/basis(11) fail REGR. vs. 180278 test-amd64-amd64-freebsd11-amd64 11 leak-check/basis(11) fail REGR. vs. 180278 test-amd64-amd64-libvirt 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-libvirt-raw 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-xl-shadow 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-xl-multivcpu 12 debian-install fail REGR. vs. 180278 test-amd64-amd64-xl-credit2 12 debian-install fail REGR. vs. 180278 test-amd64-coresched-amd64-xl 12 debian-install fail REGR. vs. 180278 test-amd64-amd64-libvirt-pair 13 xen-boot/dst_host fail REGR. vs. 180278 test-amd64-amd64-xl-pvhv2-intel 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-xl-qemuu-debianhvm-amd64 12 debian-hvm-install fail REGR. vs. 180278 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 12 debian-hvm-install fail REGR. vs. 180278 test-amd64-amd64-xl-vhd 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-freebsd12-amd64 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-qemuu-nested-intel 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-pair 12 xen-boot/src_host fail REGR. vs. 180278 test-amd64-amd64-pair 13 xen-boot/dst_host fail REGR. vs. 180278 test-armhf-armhf-xl-credit1 8 xen-boot fail REGR. vs. 180278 test-arm64-arm64-libvirt-raw 13 guest-start fail REGR. vs. 180278 test-arm64-arm64-xl-vhd 13 guest-start fail REGR. vs. 180278 test-amd64-amd64-pygrub 19 guest-localmigrate/x10 fail REGR. vs. 180278 test-amd64-amd64-examine 8 reboot fail REGR. vs. 180278 test-amd64-amd64-examine-uefi 8 reboot fail REGR. vs. 180278 Regressions which are regarded as allowable (not blocking): test-amd64-amd64-xl-rtds 11 leak-check/basis(11) fail REGR. vs. 180278 Tests which did not succeed, but are not blocking: test-armhf-armhf-examine 8 reboot fail like 180278 test-armhf-armhf-xl-arndale 8 xen-boot fail like 180278 test-armhf-armhf-xl 8 xen-boot fail like 180278 test-armhf-armhf-libvirt-raw 8 xen-boot fail like 180278 test-armhf-armhf-xl-credit2 8 xen-boot fail like 180278 test-armhf-armhf-xl-rtds 8 xen-boot fail like 180278 test-armhf-armhf-libvirt 8 xen-boot fail like 180278 test-armhf-armhf-libvirt-qcow2 8 xen-boot fail like 180278 test-armhf-armhf-xl-vhd 8 xen-boot fail like 180278 test-armhf-armhf-xl-multivcpu 8 xen-boot fail like 180278 test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass version targeted for testing: linux 3a8a670eeeaa40d87bd38a587438952741980c18 baseline version: linux 6c538e1adbfc696ac4747fb10d63e704344f763d Last test of basis 180278 2023-04-16 19:41:46 Z 74 days Failing since 180281 2023-04-17 06:24:36 Z 73 days 141 attempts Testing same since 181637 2023-06-29 08:03:48 Z 0 days 1 attempts ------------------------------------------------------------ 3118 people touched revisions under test, not listing them all jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl fail test-amd64-coresched-amd64-xl fail test-arm64-arm64-xl pass test-armhf-armhf-xl fail test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm fail test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm fail test-amd64-amd64-xl-qemut-debianhvm-i386-xsm fail test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm fail test-amd64-amd64-libvirt-xsm fail test-arm64-arm64-libvirt-xsm pass test-amd64-amd64-xl-xsm fail test-arm64-arm64-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd fail test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 fail test-amd64-amd64-xl-qemuu-debianhvm-amd64 fail test-amd64-amd64-freebsd11-amd64 fail test-amd64-amd64-freebsd12-amd64 fail test-amd64-amd64-xl-qemuu-ovmf-amd64 fail test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale fail test-amd64-amd64-examine-bios pass test-amd64-amd64-xl-credit1 fail test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 fail test-amd64-amd64-xl-credit2 fail test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 fail test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict fail test-amd64-amd64-examine fail test-arm64-arm64-examine pass test-armhf-armhf-examine fail test-amd64-amd64-qemuu-nested-intel fail test-amd64-amd64-xl-pvhv2-intel fail test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt fail test-armhf-armhf-libvirt fail test-amd64-amd64-xl-multivcpu fail test-armhf-armhf-xl-multivcpu fail test-amd64-amd64-pair fail test-amd64-amd64-libvirt-pair fail test-amd64-amd64-xl-pvshim broken test-amd64-amd64-pygrub fail test-amd64-amd64-libvirt-qcow2 fail test-armhf-armhf-libvirt-qcow2 fail test-amd64-amd64-libvirt-raw fail test-arm64-arm64-libvirt-raw fail test-armhf-armhf-libvirt-raw fail test-amd64-amd64-xl-rtds fail test-armhf-armhf-xl-rtds fail test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow fail test-amd64-amd64-xl-shadow fail test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi fail test-amd64-amd64-xl-vhd fail test-arm64-arm64-xl-vhd fail test-armhf-armhf-xl-vhd fail ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary broken-job test-amd64-amd64-xl-pvshim broken broken-step test-amd64-amd64-xl-pvshim host-install(5) Not pushing. (No revision log; it would be 453925 lines long.) From xen-devel-bounces@lists.xenproject.org Thu Jun 29 20:30:22 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 20:30:22 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557100.870161 (Exim 4.92) (envelope-from ) id 1qEyHE-0002K5-Up; Thu, 29 Jun 2023 20:30:04 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557100.870161; Thu, 29 Jun 2023 20:30:04 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEyHE-0002JL-RQ; Thu, 29 Jun 2023 20:30:04 +0000 Received: by outflank-mailman (input) for mailman id 557100; Thu, 29 Jun 2023 20:30:03 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEyHC-0001fh-NW for xen-devel@lists.xenproject.org; Thu, 29 Jun 2023 20:30:03 +0000 Received: from mx0a-0039f301.pphosted.com (mx0a-0039f301.pphosted.com [148.163.133.242]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id b65dfb62-16bb-11ee-8611-37d641c3527e; Thu, 29 Jun 2023 22:29:58 +0200 (CEST) Received: from pps.filterd (m0174676.ppops.net [127.0.0.1]) by mx0a-0039f301.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 35TENTfY012576; Thu, 29 Jun 2023 20:29:53 GMT Received: from eur04-db3-obe.outbound.protection.outlook.com (mail-db3eur04lp2059.outbound.protection.outlook.com [104.47.12.59]) by mx0a-0039f301.pphosted.com (PPS) with ESMTPS id 3rh36r3hj5-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Thu, 29 Jun 2023 20:29:52 +0000 Received: from DB8PR03MB6108.eurprd03.prod.outlook.com (2603:10a6:10:ed::15) by PA4PR03MB6847.eurprd03.prod.outlook.com (2603:10a6:102:eb::5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.15; Thu, 29 Jun 2023 20:29:49 +0000 Received: from DB8PR03MB6108.eurprd03.prod.outlook.com ([fe80::11f9:615a:4d9a:a5d2]) by DB8PR03MB6108.eurprd03.prod.outlook.com ([fe80::11f9:615a:4d9a:a5d2%6]) with mapi id 15.20.6521.026; Thu, 29 Jun 2023 20:29:49 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: b65dfb62-16bb-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=lbTawXO/MO+DEFF7Oh+JoMYVpXoxM8eFJarxrTC4lzzEO1O4nA5zZk175Lkd33x8iy2WrUleUlj2u0NzgIKyeDol5hJpW5hMd8n2XJCiV+W3G+9uqdkc1473DOdN8MeGqJfJJQ4YPcQ6DZUfvMl6PIbTOPC2zqahUwexjrAQO96ZScUmUuSVtfyryC5p0g6iAw7CweMhXJn72W1S1dGB630AfvcXSjgVrV7FQFOg55YotKtFEIdxkQiFi7agTsgTw/sWk3UqqRmUpRdnAVYGrMd+9SCjcAKd/7z46R6t0dF4un3hjhUzT9yDj5oCpehH7C6oVd3tI3HrKalMJ21xcA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=m0XXlomTzokxQbx++exL9EtW0cZqCKjlJmpJok+heME=; b=PwiB47BTEQhSMKCajdajfN4uclKlfT50oTLXUR5QDTUHQ1ab2Ne+UueXj+lnRrnO085ITi1kKmnsVnRRmsYUuEkUKL89MDIC3ROer+Z+mJWyJJV3ClrKlOnDVfOpxytR84Js09pXRWTvyRqVhla2fGfVV0+zhsm4u9FLdtGRrmeGnl7auYARF0UPNuiRhvPyEE8ef4mOvlYo7ArmS2YEE2XxLlKDY6j/VPClkfe5Y++KlT24uz7THfSozUtv9DJM6RgKd0JnRdQR4VMbFsqtftb+2SwSTMg+JtLCJrIPmAqcWBW0XWts5JoesJ7mxLXFFy7WRWYCXBq5Po+nLZfdEw== 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 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=epam.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=m0XXlomTzokxQbx++exL9EtW0cZqCKjlJmpJok+heME=; b=fXsGfumuBZwXQoUw1Pq7CI9mdoJPgkyDk6EjJ+cBQnj6Na1UsaduRIyvo8N9S9UBSsrZWdiMCStrzmFUMG0JWLXjwfGzWJrB4mQJFvqQkXU99GzU0/9FXBiR48bDZnXJnhr3SaqhLd1R/Qs7zUonXTXRhLBGrbs+7/LuYuSyIzcEgMFbs++o8kbmouW1/ixD4Z/mPlh5fgxq0eCXnfRgG1zS5VTAltbs8zIsTvfrztD/wWPZdJITHSNiGEL+FgwUI3u94hR/v8v5+btXGZq43kDIN9mwuUhdCjk/fYCE5637Z+eLJj/AC8fJz3ZIerpiu6OHsoX/Qm0VoG0CBWK4tA== From: Oleksandr Tyshchenko To: Stefano Stabellini CC: Petr Pavlu , "xen-devel@lists.xenproject.org" , "linux-kernel@vger.kernel.org" , "jgross@suse.com" Subject: Re: [PATCH 2/2] xen/virtio: Avoid use of the dom0 backend in dom0 Thread-Topic: [PATCH 2/2] xen/virtio: Avoid use of the dom0 backend in dom0 Thread-Index: AQHZpEL/jQILjif4TEa2QZqecjVVUK+Vi2cAgAt2NQCAAUbCgA== Date: Thu, 29 Jun 2023 20:29:49 +0000 Message-ID: References: <20230621131214.9398-1-petr.pavlu@suse.com> <20230621131214.9398-3-petr.pavlu@suse.com> <15e31609-6c45-7372-76ee-0adf7a64fe88@epam.com> In-Reply-To: Accept-Language: en-US, ru-RU Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ms-publictraffictype: Email x-ms-traffictypediagnostic: DB8PR03MB6108:EE_|PA4PR03MB6847:EE_ x-ms-office365-filtering-correlation-id: fd1ede75-7d70-4ff9-ac3e-08db78df95f8 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: EUa1+0PF4Tqo3Nnn7Q4osbVHmfu2IXhHH22Exru4aTVX0p6oPZcKwKDo8px0LNrvKa+5wAXdhRh2hVxvTd1OLP7Ea1im9jrX9XNaYPNi0/eXNxZ8aaEkTVvtN/bxhZEHeWUX3S7yEtUBcKSge0gAX8jJ4KM2axf9r/FzaxNFnTSRcjkDzR7HCNAgcftNWfTvt65aAy56vN1DRkg5RGHNUlqB4czlvbzERZJAW3c0FMKhzMmAgZSRoJ2NF+WGyR+95/dlV1hr2NPfRFRMNf69Fnhxee+pu/gdm3Hdmr7PgPbGrwuIN77+rXllRIqeiM2g9YXEr8BcsLQ2RFlvN+pvDkW68NJg1OE47putxeO00rYKo+enzLqHyk53alrRSr9Chk07twf+lJ1+cbiWoJDht6qij2Px+R+cnPZZUHVaScpu6AWlvX/SixmTAUKhs5z9bQy3SaCRyX2GxYanlv+aCcGLFeW+aiFYCcPI1VZFZeDa7PAyEGLUWDZZ6gg5Ad/KmWEBlJqRl2Bvo0UBRU0eBOJVbbWBcnM5IbPBPj713Z6xd6JwoN0AoiNg27uF2IHIf/4ji3k+R7NWLZrKtCtgnmvblC/cAgdBfRzwz9fi+OTjaghkM6st+R5fsrLqUOtEhRh6KhMLYn4ypB8VMuJFpw== x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DB8PR03MB6108.eurprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(396003)(136003)(376002)(346002)(39860400002)(366004)(451199021)(83380400001)(2906002)(2616005)(38070700005)(38100700002)(122000001)(36756003)(316002)(8676002)(41300700001)(6486002)(8936002)(5660300002)(91956017)(54906003)(66556008)(6916009)(4326008)(66476007)(66446008)(31686004)(76116006)(66946007)(478600001)(53546011)(6506007)(86362001)(71200400001)(64756008)(26005)(6512007)(186003)(31696002)(45980500001);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?UXVid0IyUTB0N04yeWxIZ1AvQng0Q0I1REVhdTJvQWJjdTFZNG11LzBkMG1C?= =?utf-8?B?NEJTQmZzTHZzc0R4cXFhekNkSlE4alk5dTVyVkZXRFVmNmFNdndrMnBEU3hs?= =?utf-8?B?MVdpclB6ZHV5Snd1cmk1RlVrZW1vZ2hVZTV5WS94TG5FOXUrcVQvNmtHTlBq?= =?utf-8?B?Vm9TOWpqUTI5cXMxT2xreURVYkVVblpvaDBaZzhvWFREVlZ6TE5iQjhoUlMz?= =?utf-8?B?S1JKdXh0N3IxRlc5ZGhTbEZzOVBPMVFVUTdScWtLanpKbVVsemIvOStjUjFj?= =?utf-8?B?Um5vemJhVW8vcTJwajJqRmRrQThaZTJEa3BjTnFmR1BnWm52ZDFwSFBuSFhU?= =?utf-8?B?QWNOWmk2SFpCd2dWMGozVGNqcGI0aDhOd25PNXpLaWlMZGFkNi9BcDExZnFS?= =?utf-8?B?Y0U0Y24yTmJseVYzS3lMSmo5SU15czBpVWRWMGZxdlVJdCtDRHBJTHU2MzNN?= =?utf-8?B?RU9oWGdJT2RoWWhjcGg3cGRqb2lIYnE3Qm9pREpIVjdtV2hGcVh5QTA0U1I3?= =?utf-8?B?dmx4STRnOW90Z20veEtsdTVEY1VhZFBvRnFDWmxDZWRaRHhXQVlWTGFnTXFN?= =?utf-8?B?NTh2cmNUb2U4OEpQOWtjcVRFOHBuVXB0K2VYeDdka0kzNGZNVTNLNlFwS2Q2?= =?utf-8?B?SWhSYTk0N1BlRVhHaXFDSDFHNDRvRUM4S0NwMktpY3NTY3dKUmxGdWUzeDR4?= =?utf-8?B?cjh1VjdzaGhtWEdpN2xob0p4Y0R3TzNDRTFzRFRDeFVML0RYZG8rVEEwUXJ5?= =?utf-8?B?L2xFdFdEM0xTc1FKTE95OXlMcjVjd0VnMm9zUXRBOVNPWUhUb1FxKzd6SUkw?= =?utf-8?B?Q0lmUUdSSFY4Z3RWdVBGVFVEYlBRVnhNVkRYR09oTVk5U0d3di9KLzBhM0Ez?= =?utf-8?B?Y01BSVB5RXlIY0RGL3lIVTJoVXpVblNEYWNOOGd1U3NaeGxmMHg4aFQ5YXI1?= =?utf-8?B?SndRYjk1REpUM2pQNUZtZjFkcnZ0cCtaRE5SdDUrK2FLa3RHM0hFTC9FSVNk?= =?utf-8?B?UjUxWkg2WEJ3K0o2Zk9QZVBKTzFkN3VqVjJmdlNCK1RRRTlaR29FVUFlb0pH?= =?utf-8?B?Y3FFVm8wSmd6TWFXcy9xSnl4dSswY2NYZDVPd3Qrbmx6U1ZrK2dhN3VKRlJQ?= =?utf-8?B?dlU4WHRuRWtGSjZtTE4zdVJGV3k3ZUowaGhYdVB6TzRVdkIvcGxkSzdhbjNX?= =?utf-8?B?K1JFQXlORERRSzJMaFV4TXo4R2pYVjErU0FnTzNEYlR5YnhGUlNyVDJZcHVN?= =?utf-8?B?SHRxRUdTbDRiVkxjT2I3Sm5CbXFRUWkyQ1MxOU1mcmFUK2RHY1RxeTVEM0pl?= =?utf-8?B?R01aTU1PWDZ3VkRxOGZ0SXlDVzNUUDJ3WkRRdGxhbFJOcmQzbFh6eUJLZU91?= =?utf-8?B?QWc5QUpiN09iQjdqTjBqT3RXRzExbk16UEJVOEpEOEs0RUdxN2JoenhWSmo0?= =?utf-8?B?NUhBMW01UFRXQWYzRDNiRmJQRHVkWDNDK28wcVUxQzY1QjJVTDU4TFlUbURE?= =?utf-8?B?TE5qWVhjYS9GMjl3NmtqYjN6NDdvQUUxdGNTNE4xRXlYVllCenNBd2RHaDJQ?= =?utf-8?B?aUd0YXNFMXNKekRLVTRScnJKTVFYekw2czhOTHIzelZLaDBSQmY5WTR0N1RX?= =?utf-8?B?dFhQYjJHaGcyRy90UXFQemdKZUVyWkRVa0lrZmcvVTQrUHMrVFlxRXk1NVFX?= =?utf-8?B?WVNYZlZvdDQ3UEhYZWNQOWRnVzFSUHdPWUFnVnNGam9UdGcrZFNjUEx3Smh5?= =?utf-8?B?RnUrblFQNm84dm1UeklEWkpKNDdyTFpFamtCdEpEMGQ1bUhPQ0Z2dmdnUkJh?= =?utf-8?B?YStNcnVhbllCMnBpMmM4VkJYbWxhNXZ4OXM4Qk1RTDFqVmJOY3Bmdk5SNCtG?= =?utf-8?B?NVk3MTVlbEQ0N09ENnRLcmV3M0pJVjI1WW5YZnIvR0YxSG84bk9pWU5HVWFZ?= =?utf-8?B?ajR3aWZQcVB6TDhJMkR6bk8weW5MTkRkam5rcUdYVHJPeXdIT0tsU2JZWlZU?= =?utf-8?B?bitiUVFabWNzT3Qvc3hDUVFzbnZrQWdWMDdZYmJsMVd4U2tiRDNvQ1hNbUlV?= =?utf-8?B?OUlxTE1qNi8xOEEwUTNtVHA0cmlTYWxFMGJ3N0hvY09CTmk0TDdtL3ZVMnZC?= =?utf-8?B?RjRrUXZQbFlUSkNrYVBZejY3L1hBV0ViZFhTSXpTenpOWUQ1QUgvK0dPSjdV?= =?utf-8?Q?s5UmWThboDkpFhWwScSFUAk=3D?= Content-Type: text/plain; charset="utf-8" Content-ID: <80F22FC1D55B9642BF2AD10BCDF4ADC0@eurprd03.prod.outlook.com> Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: epam.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: DB8PR03MB6108.eurprd03.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: fd1ede75-7d70-4ff9-ac3e-08db78df95f8 X-MS-Exchange-CrossTenant-originalarrivaltime: 29 Jun 2023 20:29:49.2163 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: b41b72d0-4e9f-4c26-8a69-f949f367c91d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: Fn4CalQS6ewLPaYk0wzqrdt1/oNIjmcJ0PrvCphc7inj4lS9eNORvDoQtT2iZA0TbSAXjGBOA/k0vz/80SbJBImxspQtpXnZVrNFNUXiVPc= X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR03MB6847 X-Proofpoint-GUID: xaXm9VOOpU_mXL9idKrizaGBoJM5rBuv X-Proofpoint-ORIG-GUID: xaXm9VOOpU_mXL9idKrizaGBoJM5rBuv X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.254,Aquarius:18.0.957,Hydra:6.0.591,FMLib:17.11.176.26 definitions=2023-06-29_07,2023-06-27_01,2023-05-22_02 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 impostorscore=0 spamscore=0 priorityscore=1501 mlxscore=0 bulkscore=0 clxscore=1015 phishscore=0 mlxlogscore=999 suspectscore=0 lowpriorityscore=0 adultscore=0 malwarescore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2305260000 definitions=main-2306290185 DQoNCk9uIDI5LjA2LjIzIDA0OjAwLCBTdGVmYW5vIFN0YWJlbGxpbmkgd3JvdGU6DQoNCkhlbGxv IFN0ZWZhbm8NCg0KPiBPbiBXZWQsIDIxIEp1biAyMDIzLCBPbGVrc2FuZHIgVHlzaGNoZW5rbyB3 cm90ZToNCj4+IE9uIDIxLjA2LjIzIDE2OjEyLCBQZXRyIFBhdmx1IHdyb3RlOg0KPj4NCj4+DQo+ PiBIZWxsbyBQZXRyDQo+Pg0KPj4NCj4+PiBXaGVuIGF0dGVtcHRpbmcgdG8gcnVuIFhlbiBvbiBh IFFFTVUvS1ZNIHZpcnR1YWwgbWFjaGluZSB3aXRoIHZpcnRpbw0KPj4+IGRldmljZXMgKGFsbCB4 ODZfNjQpLCBkb20wIHRyaWVzIHRvIGVzdGFibGlzaCBhIGdyYW50IGZvciBpdHNlbGYgd2hpY2gN Cj4+PiBldmVudHVhbGx5IHJlc3VsdHMgaW4gYSBoYW5nIGR1cmluZyB0aGUgYm9vdC4NCj4+Pg0K Pj4+IFRoZSBiYWNrdHJhY2UgbG9va3MgYXMgZm9sbG93cywgdGhlIHdoaWxlIGxvb3AgaW4gX19z ZW5kX2NvbnRyb2xfbXNnKCkNCj4+PiBtYWtlcyBubyBwcm9ncmVzczoNCj4+Pg0KPj4+ICAgICAj MCAgdmlydHF1ZXVlX2dldF9idWZfY3R4IChfdnE9X3ZxQGVudHJ5PTB4ZmZmZjg4ODAwNzRhODQw MCwgbGVuPWxlbkBlbnRyeT0weGZmZmZjOTAwMDA0MTNjOTQsIGN0eD1jdHhAZW50cnk9MHgwIDxm aXhlZF9wZXJjcHVfZGF0YT4pIGF0IC4uL2RyaXZlcnMvdmlydGlvL3ZpcnRpb19yaW5nLmM6MjMy Ng0KPj4+ICAgICAjMSAgMHhmZmZmZmZmZjgxNzA4NmI3IGluIHZpcnRxdWV1ZV9nZXRfYnVmIChf dnE9X3ZxQGVudHJ5PTB4ZmZmZjg4ODAwNzRhODQwMCwgbGVuPWxlbkBlbnRyeT0weGZmZmZjOTAw MDA0MTNjOTQpIGF0IC4uL2RyaXZlcnMvdmlydGlvL3ZpcnRpb19yaW5nLmM6MjMzMw0KPj4+ICAg ICAjMiAgMHhmZmZmZmZmZjgxNzVmNmIyIGluIF9fc2VuZF9jb250cm9sX21zZyAocG9ydGRldj08 b3B0aW1pemVkIG91dD4sIHBvcnRfaWQ9MHhmZmZmZmZmZiwgZXZlbnQ9MHgwLCB2YWx1ZT0weDEp IGF0IC4uL2RyaXZlcnMvY2hhci92aXJ0aW9fY29uc29sZS5jOjU2Mg0KPj4+ICAgICAjMyAgMHhm ZmZmZmZmZjgxNzVmNmVlIGluIF9fc2VuZF9jb250cm9sX21zZyAocG9ydGRldj08b3B0aW1pemVk IG91dD4sIHBvcnRfaWQ9PG9wdGltaXplZCBvdXQ+LCBldmVudD08b3B0aW1pemVkIG91dD4sIHZh bHVlPTxvcHRpbWl6ZWQgb3V0PikgYXQgLi4vZHJpdmVycy9jaGFyL3ZpcnRpb19jb25zb2xlLmM6 NTY5DQo+Pj4gICAgICM0ICAweGZmZmZmZmZmODE3NjE4YjEgaW4gdmlydGNvbnNfcHJvYmUgKHZk ZXY9MHhmZmZmODg4MDA1ODVlODAwKSBhdCAuLi9kcml2ZXJzL2NoYXIvdmlydGlvX2NvbnNvbGUu YzoyMDk4DQo+Pj4gICAgICM1ICAweGZmZmZmZmZmODE3MDcxMTcgaW4gdmlydGlvX2Rldl9wcm9i ZSAoX2Q9MHhmZmZmODg4MDA1ODVlODEwKSBhdCAuLi9kcml2ZXJzL3ZpcnRpby92aXJ0aW8uYzoz MDUNCj4+PiAgICAgIzYgIDB4ZmZmZmZmZmY4MTk4ZTM0OCBpbiBjYWxsX2RyaXZlcl9wcm9iZSAo ZHJ2PTB4ZmZmZmZmZmY4MmJlNDBjMCA8dmlydGlvX2NvbnNvbGU+LCBkcnY9MHhmZmZmZmZmZjgy YmU0MGMwIDx2aXJ0aW9fY29uc29sZT4sIGRldj0weGZmZmY4ODgwMDU4NWU4MTApIGF0IC4uL2Ry aXZlcnMvYmFzZS9kZC5jOjU3OQ0KPj4+ICAgICAjNyAgcmVhbGx5X3Byb2JlIChkZXY9ZGV2QGVu dHJ5PTB4ZmZmZjg4ODAwNTg1ZTgxMCwgZHJ2PWRydkBlbnRyeT0weGZmZmZmZmZmODJiZTQwYzAg PHZpcnRpb19jb25zb2xlPikgYXQgLi4vZHJpdmVycy9iYXNlL2RkLmM6NjU4DQo+Pj4gICAgICM4 ICAweGZmZmZmZmZmODE5OGU1OGYgaW4gX19kcml2ZXJfcHJvYmVfZGV2aWNlIChkcnY9ZHJ2QGVu dHJ5PTB4ZmZmZmZmZmY4MmJlNDBjMCA8dmlydGlvX2NvbnNvbGU+LCBkZXY9ZGV2QGVudHJ5PTB4 ZmZmZjg4ODAwNTg1ZTgxMCkgYXQgLi4vZHJpdmVycy9iYXNlL2RkLmM6ODAwDQo+Pj4gICAgICM5 ICAweGZmZmZmZmZmODE5OGU2NWEgaW4gZHJpdmVyX3Byb2JlX2RldmljZSAoZHJ2PWRydkBlbnRy eT0weGZmZmZmZmZmODJiZTQwYzAgPHZpcnRpb19jb25zb2xlPiwgZGV2PWRldkBlbnRyeT0weGZm ZmY4ODgwMDU4NWU4MTApIGF0IC4uL2RyaXZlcnMvYmFzZS9kZC5jOjgzMA0KPj4+ICAgICAjMTAg MHhmZmZmZmZmZjgxOThlODMyIGluIF9fZHJpdmVyX2F0dGFjaCAoZGV2PTB4ZmZmZjg4ODAwNTg1 ZTgxMCwgZGF0YT0weGZmZmZmZmZmODJiZTQwYzAgPHZpcnRpb19jb25zb2xlPikgYXQgLi4vZHJp dmVycy9iYXNlL2RkLmM6MTIxNg0KPj4+ICAgICAjMTEgMHhmZmZmZmZmZjgxOThiZmIyIGluIGJ1 c19mb3JfZWFjaF9kZXYgKGJ1cz08b3B0aW1pemVkIG91dD4sIHN0YXJ0PXN0YXJ0QGVudHJ5PTB4 MCA8Zml4ZWRfcGVyY3B1X2RhdGE+LCBkYXRhPWRhdGFAZW50cnk9MHhmZmZmZmZmZjgyYmU0MGMw IDx2aXJ0aW9fY29uc29sZT4sDQo+Pj4gICAgICAgICBmbj1mbkBlbnRyeT0weGZmZmZmZmZmODE5 OGU3YjAgPF9fZHJpdmVyX2F0dGFjaD4pIGF0IC4uL2RyaXZlcnMvYmFzZS9idXMuYzozNjgNCj4+ PiAgICAgIzEyIDB4ZmZmZmZmZmY4MTk4ZGI2NSBpbiBkcml2ZXJfYXR0YWNoIChkcnY9ZHJ2QGVu dHJ5PTB4ZmZmZmZmZmY4MmJlNDBjMCA8dmlydGlvX2NvbnNvbGU+KSBhdCAuLi9kcml2ZXJzL2Jh c2UvZGQuYzoxMjMzDQo+Pj4gICAgICMxMyAweGZmZmZmZmZmODE5OGQyMDcgaW4gYnVzX2FkZF9k cml2ZXIgKGRydj1kcnZAZW50cnk9MHhmZmZmZmZmZjgyYmU0MGMwIDx2aXJ0aW9fY29uc29sZT4p IGF0IC4uL2RyaXZlcnMvYmFzZS9idXMuYzo2NzMNCj4+PiAgICAgIzE0IDB4ZmZmZmZmZmY4MTk4 ZjU1MCBpbiBkcml2ZXJfcmVnaXN0ZXIgKGRydj1kcnZAZW50cnk9MHhmZmZmZmZmZjgyYmU0MGMw IDx2aXJ0aW9fY29uc29sZT4pIGF0IC4uL2RyaXZlcnMvYmFzZS9kcml2ZXIuYzoyNDYNCj4+PiAg ICAgIzE1IDB4ZmZmZmZmZmY4MTcwNmI0NyBpbiByZWdpc3Rlcl92aXJ0aW9fZHJpdmVyIChkcml2 ZXI9ZHJpdmVyQGVudHJ5PTB4ZmZmZmZmZmY4MmJlNDBjMCA8dmlydGlvX2NvbnNvbGU+KSBhdCAu Li9kcml2ZXJzL3ZpcnRpby92aXJ0aW8uYzozNTcNCj4+PiAgICAgIzE2IDB4ZmZmZmZmZmY4MzJj ZDM0YiBpbiB2aXJ0aW9fY29uc29sZV9pbml0ICgpIGF0IC4uL2RyaXZlcnMvY2hhci92aXJ0aW9f Y29uc29sZS5jOjIyNTgNCj4+PiAgICAgIzE3IDB4ZmZmZmZmZmY4MTAwMTA1YyBpbiBkb19vbmVf aW5pdGNhbGwgKGZuPTB4ZmZmZmZmZmY4MzJjZDJlMCA8dmlydGlvX2NvbnNvbGVfaW5pdD4pIGF0 IC4uL2luaXQvbWFpbi5jOjEyNDYNCj4+PiAgICAgIzE4IDB4ZmZmZmZmZmY4MzI3NzI5MyBpbiBk b19pbml0Y2FsbF9sZXZlbCAoY29tbWFuZF9saW5lPTB4ZmZmZjg4ODAwM2UyZjkwMCAicm9vdCIs IGxldmVsPTB4NikgYXQgLi4vaW5pdC9tYWluLmM6MTMxOQ0KPj4+ICAgICAjMTkgZG9faW5pdGNh bGxzICgpIGF0IC4uL2luaXQvbWFpbi5jOjEzMzUNCj4+PiAgICAgIzIwIGRvX2Jhc2ljX3NldHVw ICgpIGF0IC4uL2luaXQvbWFpbi5jOjEzNTQNCj4+PiAgICAgIzIxIGtlcm5lbF9pbml0X2ZyZWVh YmxlICgpIGF0IC4uL2luaXQvbWFpbi5jOjE1NzENCj4+PiAgICAgIzIyIDB4ZmZmZmZmZmY4MWY2 NGJlMSBpbiBrZXJuZWxfaW5pdCAodW51c2VkPTxvcHRpbWl6ZWQgb3V0PikgYXQgLi4vaW5pdC9t YWluLmM6MTQ2Mg0KPj4+ICAgICAjMjMgMHhmZmZmZmZmZjgxMDAxZjQ5IGluIHJldF9mcm9tX2Zv cmsgKCkgYXQgLi4vYXJjaC94ODYvZW50cnkvZW50cnlfNjQuUzozMDgNCj4+PiAgICAgIzI0IDB4 MDAwMDAwMDAwMDAwMDAwMCBpbiA/PyAoKQ0KPj4+DQo+Pj4gRml4IHRoZSBwcm9ibGVtIGJ5IHBy ZXZlbnRpbmcgeGVuX2dyYW50X2luaXRfYmFja2VuZF9kb21pZCgpIGZyb20NCj4+PiBzZXR0aW5n IGRvbTAgYXMgYSBiYWNrZW5kIHdoZW4gcnVubmluZyBpbiBkb20wLg0KPj4+DQo+Pj4gRml4ZXM6 IDAzNWUzYTQzMjFmNyAoInhlbi92aXJ0aW86IE9wdGltaXplIHRoZSBzZXR1cCBvZiAieGVuLWdy YW50LWRtYSIgZGV2aWNlcyIpDQo+Pg0KPj4NCj4+IEkgYW0gbm90IDEwMCUgc3VyZSB3aGV0aGVy IHRoZSBGaXhlcyB0YWcgcG9pbnRzIHRvIHByZWNpc2UgY29tbWl0LiBJZiBJDQo+PiBhbSBub3Qg bWlzdGFrZW4sIHRoZSBzYWlkIGNvbW1pdCBqdXN0IG1vdmVzIHRoZSBjb2RlIGluIHRoZSBjb250 ZXh0DQo+PiB3aXRob3V0IGNoYW5naW5nIHRoZSBsb2dpYyBvZiBDT05GSUdfWEVOX1ZJUlRJT19G T1JDRV9HUkFOVCwgdGhpcyB3YXMNCj4+IGludHJvZHVjZWQgYmVmb3JlLg0KPj4NCj4+DQo+Pj4g U2lnbmVkLW9mZi1ieTogUGV0ciBQYXZsdSA8cGV0ci5wYXZsdUBzdXNlLmNvbT4NCj4+PiAtLS0N Cj4+PiAgICBkcml2ZXJzL3hlbi9ncmFudC1kbWEtb3BzLmMgfCA0ICsrKy0NCj4+PiAgICAxIGZp bGUgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9uKC0pDQo+Pj4NCj4+PiBkaWZm IC0tZ2l0IGEvZHJpdmVycy94ZW4vZ3JhbnQtZG1hLW9wcy5jIGIvZHJpdmVycy94ZW4vZ3JhbnQt ZG1hLW9wcy5jDQo+Pj4gaW5kZXggNzZmNmYyNjI2NWEzLi4yOWVkMjdhYzQ1MGUgMTAwNjQ0DQo+ Pj4gLS0tIGEvZHJpdmVycy94ZW4vZ3JhbnQtZG1hLW9wcy5jDQo+Pj4gKysrIGIvZHJpdmVycy94 ZW4vZ3JhbnQtZG1hLW9wcy5jDQo+Pj4gQEAgLTM2Miw3ICszNjIsOSBAQCBzdGF0aWMgaW50IHhl bl9ncmFudF9pbml0X2JhY2tlbmRfZG9taWQoc3RydWN0IGRldmljZSAqZGV2LA0KPj4+ICAgIAlp ZiAobnApIHsNCj4+PiAgICAJCXJldCA9IHhlbl9kdF9ncmFudF9pbml0X2JhY2tlbmRfZG9taWQo ZGV2LCBucCwgYmFja2VuZF9kb21pZCk7DQo+Pj4gICAgCQlvZl9ub2RlX3B1dChucCk7DQo+Pj4g LQl9IGVsc2UgaWYgKElTX0VOQUJMRUQoQ09ORklHX1hFTl9WSVJUSU9fRk9SQ0VfR1JBTlQpIHx8 IHhlbl9wdl9kb21haW4oKSkgew0KPj4+ICsJfSBlbHNlIGlmICgoSVNfRU5BQkxFRChDT05GSUdf WEVOX1ZJUlRJT19GT1JDRV9HUkFOVCkgfHwNCj4+PiArCQkgICAgeGVuX3B2X2RvbWFpbigpKSAm Jg0KPj4+ICsJCSAgICF4ZW5faW5pdGlhbF9kb21haW4oKSkgew0KPj4NCj4+IFRoZSBjb21taXQg bGd0bSwganVzdCBvbmUgbm90ZToNCj4+DQo+Pg0KPj4gSSB3b3VsZCBldmVuIGJhaWwgb3V0IGVh cmx5IGluIHhlbl92aXJ0aW9fcmVzdHJpY3RlZF9tZW1fYWNjKCkgaW5zdGVhZCwNCj4+IGFzIEkg YXNzdW1lIHRoZSBzYW1lIGlzc3VlIGNvdWxkIGhhcHBlbiBvbiBBcm0gd2l0aCBEVCAoYWx0aG91 Z2ggdGhlcmUNCj4+IHdlIGRvbid0IGd1ZXNzIHRoZSBiYWNrZW5kJ3MgZG9taWQsIHdlIHJlYWQg aXQgZnJvbSBEVCBhbmQgcXVpdGUNCj4+IHVubGlrZWx5IHdlIGdldCBEb20wIGJlaW5nIGluIERv bTAgd2l0aCBjb3JyZWN0IERUKS4NCj4+DQo+PiBTb21ldGhpbmcgbGlrZToNCj4+DQo+PiBAQCAt NDE2LDYgKzQyMSwxMCBAQCBib29sIHhlbl92aXJ0aW9fcmVzdHJpY3RlZF9tZW1fYWNjKHN0cnVj dA0KPj4gdmlydGlvX2RldmljZSAqZGV2KQ0KPj4gICAgew0KPj4gICAgICAgICAgIGRvbWlkX3Qg YmFja2VuZF9kb21pZDsNCj4+DQo+PiArICAgICAgIC8qIFhlbiBncmFudCBETUEgb3BzIGFyZSBu b3QgdXNlZCB3aGVuIHJ1bm5pbmcgYXMgaW5pdGlhbCBkb21haW4gKi8NCj4+ICsgICAgICAgaWYg KHhlbl9pbml0aWFsX2RvbWFpbigpKQ0KPj4gKyAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsN Cj4+ICsNCj4+ICAgICAgICAgICBpZiAoIXhlbl9ncmFudF9pbml0X2JhY2tlbmRfZG9taWQoZGV2 LT5kZXYucGFyZW50LA0KPj4gJmJhY2tlbmRfZG9taWQpKSB7DQo+PiAgICAgICAgICAgICAgICAg ICB4ZW5fZ3JhbnRfc2V0dXBfZG1hX29wcyhkZXYtPmRldi5wYXJlbnQsIGJhY2tlbmRfZG9taWQp Ow0KPj4gICAgICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7DQo+PiAoRU5EKQ0KPj4NCj4+DQo+ Pg0KPj4gSWYgc28sIHRoYXQgY29tbWl0IHN1YmplY3Qgd291bGQgbmVlZCB0byBiZSB1cGRhdGVk IGFjY29yZGluZ2x5Lg0KPj4NCj4+IExldCdzIHNlZSB3aGF0IG90aGVyIHJldmlld2VycyB3aWxs IHNheS4NCj4gDQo+IFRoaXMgZG9lc24ndCB3b3JrIGluIGFsbCBjYXNlcy4gSW1hZ2luZSB1c2lu ZyBQQ0kgUGFzc3Rocm91Z2ggdG8gYXNzaWduDQo+IGEgInBoeXNpY2FsIiB2aXJ0aW8gZGV2aWNl IHRvIGEgZG9tVS4gVGhlIGRvbVUgd2lsbCBydW4gaW50byB0aGUgc2FtZQ0KPiBlcnJvciwgcmln aHQ/DQo+IA0KPiBUaGUgcHJvYmxlbSBpcyB0aGF0IHdlIG5lZWQgYSB3YXkgZm9yIHRoZSB2aXJ0 aW8gYmFja2VuZCB0byBhZHZlcnRpc2UNCj4gaXRzIGFiaWxpdHkgb2YgaGFuZGxpbmcgZ3JhbnRz LiBSaWdodCBub3cgd2Ugb25seSBoYXZlIGEgd2F5IHRvIGRvIHdpdGgNCj4gdGhhdCB3aXRoIGRl dmljZSB0cmVlIG9uIEFSTS4gT24geDg2LCB3ZSBvbmx5IGhhdmUNCj4gQ09ORklHX1hFTl9WSVJU SU9fRk9SQ0VfR1JBTlQsIGFuZCBpZiB3ZSB0YWtlDQo+IENPTkZJR19YRU5fVklSVElPX0ZPUkNF X0dSQU5UIGF0IGZhY2UgdmFsdWUsIGl0IGFsc28gZW5hYmxlcyBncmFudHMgZm9yDQo+ICJwaHlz aWNhbCIgdmlydGlvIGRldmljZXMuIE5vdGUgdGhhdCBpbiB0aGlzIGNhc2Ugd2UgYXJlIGZpeGlu ZyBhDQo+IG5lc3RlZC12aXJ0dWFsaXphdGlvbiBidWcsIGJ1dCB0aGVyZSBhcmUgYWN0dWFsbHkg cGh5c2ljYWwNCj4gdmlydGlvLWNvbXBhdGlibGUgZGV2aWNlcyBvdXQgdGhlcmUuIENPTkZJR19Y RU5fVklSVElPX0ZPUkNFX0dSQU5UIHdpbGwNCj4gYnJlYWsgdGhvc2UgdG9vLg0KDQoNCklmIHRo ZXNlICJwaHlzaWNhbCIgdmlydGlvIGRldmljZXMgYXJlIGFsc28gc3Bhd25lZCBieQ0KZHJpdmVy cy92aXJ0aW8vdmlydGlvLmM6dmlydGlvX2Rldl9wcm9iZSgpLCB0aGVuIHllcywgb3RoZXJ3aXNl IEkgZG9uJ3QgDQpzZWUgaG93IHRoaXMgY291bGQgZXZlbiBiZSBwb3NzaWJsZSwgYnV0IEkgbWln aHQgbWlzcyBzb21ldGhpbmcgaGVyZS4NCg0KeGVuX3ZpcnRpb19yZXN0cmljdGVkX21lbV9hY2Mo KSBnZXRzIGNhbGxlZCBpbmRpcmVjdGx5IGZyb20gDQp2aXJ0aW9fZGV2X3Byb2JlKCktPnZpcnRp b19mZWF0dXJlc19vaygpLT4NCnZpcnRpb19jaGVja19tZW1fYWNjX2NiKCkuIFNvIHRoZSBYZW4g Z3JhbnQgRE1BIG9wcyBhcmUgb25seSBpbnN0YWxsZWQgDQpmb3IgdGhvc2UuDQoNCj4gDQo+IEkg dGhpbmsgd2UgbmVlZCB0byBhZGQgYSBzZWNvbmQgd2F5PyBJdCBjb3VsZCBiZSBhbnl0aGluZyB0 aGF0IGNhbiBoZWxwDQo+IHVzIGRpc3Rpbmd1aXNoIGJldHdlZW4gYSBub24tZ3JhbnRzLWNhcGFi bGUgdmlydGlvIGJhY2tlbmQgYW5kIGENCj4gZ3JhbnRzLWNhcGFibGUgdmlydGlvIGJhY2tlbmQs IHN1Y2ggYXM6DQo+IC0gYSBzdHJpbmcgb24geGVuc3RvcmUNCj4gLSBhIHhlbiBwYXJhbQ0KPiAt IGEgc3BlY2lhbCBQQ0kgY29uZmlndXJhdGlvbiByZWdpc3RlciB2YWx1ZQ0KPiAtIHNvbWV0aGlu ZyBpbiB0aGUgQUNQSSB0YWJsZXMNCj4gLSB0aGUgUUVNVSBtYWNoaW5lIHR5cGUNCg0KDQpZZXMs IEkgcmVtZW1iZXIgdGhlcmUgd2FzIGEgZGlzY3Vzc2lvbiByZWdhcmRpbmcgdGhhdC4gVGhlIHBv aW50IGlzIHRvIA0KY2hvb3NlIGEgc29sdXRpb24gdG8gYmUgZnVuY3Rpb25hbCBmb3IgYm90aCBQ ViBhbmQgSFZNICphbmQqIHRvIGJlIGFibGUgDQp0byBzdXBwb3J0IGEgaG90cGx1Zy4gSUlSQywg dGhlIHhlbnN0b3JlIGNvdWxkIGJlIGEgcG9zc2libGUgY2FuZGlkYXRlLg0KDQoNCj4gDQo+IE9y IGF0IGxlYXN0IHNob3VsZCB3ZSBjaGFuZ2UgQ09ORklHX1hFTl9WSVJUSU9fRk9SQ0VfR1JBTlQg aW50byBhDQo+IGNvbW1hbmQgbGluZSBwYXJhbWV0ZXIgc28gdGhhdCBpdCBjYW4gYmUgZGlzYWJs ZWQgaW4gY2FzZXMgbGlrZSB0aGlzDQo+IG9uZT8NCg0KSUlVQywgdGhpcyB3aWxsIGhlbHAgd2l0 aCBIVk0gb25seS4NCg0KDQo+IA0KPiBJIHJlYWxpemUgdGhhdCBmaXhpbmcgdGhpcyBwcm9ibGVt IHByb3Blcmx5IHRha2VzIGEgbG90IGxvbmdlciB0aGFuDQo+IGFkZGluZyBhIHRyaXZpYWwgaWYg KGRvbTApIHJldHVybjsgY2hlY2sgaW4gdGhlIGNvZGUuIElmIHlvdSBjYW5ub3QgZmluZA0KPiBh IGdvb2Qgd2F5IHRvIHNvbHZlIHRoZSBwcm9ibGVtIG9yIHlvdSBkb24ndCBoYXZlIHRpbWUgdG8g ZG8gdGhhdCBub3cNCj4gYW5kIHlvdSBuZWVkIHRoaXMgYnVnIGZpeGVkIHF1aWNrbHksIHRoZW4g SSB3b3VsZCBiZSBPSyB3aXRoIHRoZSBpZg0KPiAoZG9tMCkgcmV0dXJuOyBjaGVjayBidXQgcGxl YXNlIGFkZCBhIGRldGFpbGVkIFRPRE8gaW4tY29kZSBjb21tZW50IHRvDQo+IGV4cGxhaW4gdGhh dCB0aGlzIGlzIGp1c3QgYSBoYWNrIGFuZCB3ZSBhcmUgc3RpbGwgbG9va2luZyBmb3IgYSByZWFs DQo+IHNvbHV0aW9uLg0KPiANCj4gVGhlIGNoZWNrIGl0c2VsZiBJIHByZWZlciB0aGUgb3JpZ2lu YWwgcG9zaXRpb24gYmVjYXVzZSBJIHdhbnQgdG8gcmV0YWluDQo+IHRoZSBhYmlsaXR5IG9mIHVz aW5nIHZpcnRpbyBmcm9udGVuZHMgd2l0aCBncmFudCBvbiBBUk0gaW4gRG9tMCAoRG9tRA0KPiBj YXNlKS4NCg0KTWFrZXMgc2Vuc2UsIGFncmVlLg== From xen-devel-bounces@lists.xenproject.org Thu Jun 29 21:02:11 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 21:02:11 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557104.870170 (Exim 4.92) (envelope-from ) id 1qEym5-0005wl-Bp; Thu, 29 Jun 2023 21:01:57 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557104.870170; Thu, 29 Jun 2023 21:01:57 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEym5-0005we-9K; Thu, 29 Jun 2023 21:01:57 +0000 Received: by outflank-mailman (input) for mailman id 557104; Thu, 29 Jun 2023 21:01:55 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEym3-0005wF-5m for xen-devel@lists.xenproject.org; Thu, 29 Jun 2023 21:01:55 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEym2-0007oI-76; Thu, 29 Jun 2023 21:01:54 +0000 Received: from 54-240-197-232.amazon.com ([54.240.197.232] helo=dev-dsk-jgrall-1b-035652ec.eu-west-1.amazon.com) by xenbits.xenproject.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qEym1-0002Z8-VI; Thu, 29 Jun 2023 21:01:54 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:MIME-Version:Message-Id:Date: Subject:Cc:To:From; bh=C3H0bId/zzmlQVrWJJfqAY5NvdtysuOhdC5FDLbdJcM=; b=uo++Eh FRDrinfIWP0kXtzC/pUqEfCZ+emCintFqpxSLLwXuLiZzfDgrWW6/citBg/OChjsjllBf0isDoQWB TS8/+QXXzZyEViukeRrsM4ILA3/rr5cYksuzu0wwbn/uvccd2DtHxcoNY73MfhdgFc18H/OV7ouNc nTcpU5OWwIA=; From: Julien Grall To: xen-devel@lists.xenproject.org Cc: Luca.Fancellu@arm.com, michal.orzel@amd.com, Henry.Wang@arm.com, Julien Grall , federico.serafini@bugseng.com Subject: [PATCH] xen/arm: grant-table: Correct the prototype of the arch helpers Date: Thu, 29 Jun 2023 22:01:50 +0100 Message-Id: <20230629210150.69525-1-julien@xen.org> X-Mailer: git-send-email 2.40.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit From: Julien Grall Both the stub and the x86 prototypes for replace_grant_host_mapping() and create_grant_host_mapping() will define the first parameter (and third for the former) as uint64_t. Yet Arm will define it as 'unsigned long'. While there are no differences for 64-bit, for 32-bit it means that the address should be truncated as 32-bit guest could support up to 40-bit addresses. So replace 'unsigned long' with 'uint64_t' for the first parameter (and third parameter for replace_grant_host_mapping()). Signed-off-by: Julien Grall --- Cc: federico.serafini@bugseng.com --- xen/arch/arm/include/asm/grant_table.h | 6 +++--- xen/arch/arm/mm.c | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/xen/arch/arm/include/asm/grant_table.h b/xen/arch/arm/include/asm/grant_table.h index f2d115b97d8b..d3c518a926b9 100644 --- a/xen/arch/arm/include/asm/grant_table.h +++ b/xen/arch/arm/include/asm/grant_table.h @@ -36,10 +36,10 @@ static inline bool gnttab_release_host_mappings(const struct domain *d) return true; } -int create_grant_host_mapping(unsigned long gpaddr, mfn_t frame, +int create_grant_host_mapping(uint64_t gpaddr, mfn_t frame, unsigned int flags, unsigned int cache_flags); -int replace_grant_host_mapping(unsigned long gpaddr, mfn_t frame, - unsigned long new_gpaddr, unsigned int flags); +int replace_grant_host_mapping(uint64_t gpaddr, mfn_t frame, + uint64_t new_gpaddr, unsigned int flags); /* * The region used by Xen on the memory will never be mapped in DOM0 diff --git a/xen/arch/arm/mm.c b/xen/arch/arm/mm.c index 0a3e1f3b64b6..53773368d036 100644 --- a/xen/arch/arm/mm.c +++ b/xen/arch/arm/mm.c @@ -1579,7 +1579,7 @@ void put_page_type(struct page_info *page) return; } -int create_grant_host_mapping(unsigned long gpaddr, mfn_t frame, +int create_grant_host_mapping(uint64_t gpaddr, mfn_t frame, unsigned int flags, unsigned int cache_flags) { int rc; @@ -1600,8 +1600,8 @@ int create_grant_host_mapping(unsigned long gpaddr, mfn_t frame, return GNTST_okay; } -int replace_grant_host_mapping(unsigned long gpaddr, mfn_t frame, - unsigned long new_gpaddr, unsigned int flags) +int replace_grant_host_mapping(uint64_t gpaddr, mfn_t frame, + uint64_t new_gpaddr, unsigned int flags) { gfn_t gfn = gaddr_to_gfn(gpaddr); struct domain *d = current->domain; -- 2.40.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 29 21:08:08 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 21:08:08 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557108.870181 (Exim 4.92) (envelope-from ) id 1qEyrr-0006YQ-0S; Thu, 29 Jun 2023 21:07:55 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557108.870181; Thu, 29 Jun 2023 21:07:54 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEyrq-0006YJ-TA; Thu, 29 Jun 2023 21:07:54 +0000 Received: by outflank-mailman (input) for mailman id 557108; Thu, 29 Jun 2023 21:07:54 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEyrq-0006YD-2w for xen-devel@lists.xenproject.org; Thu, 29 Jun 2023 21:07:54 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEyrp-0007u2-Gg; Thu, 29 Jun 2023 21:07:53 +0000 Received: from gw1.octic.net ([88.97.20.152] helo=[10.0.1.240]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qEyrp-0002qb-Be; Thu, 29 Jun 2023 21:07:53 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=OvAFaG7rjnyi6yQP+pSFNkug5d3ywrOaJQBWGUXIeNc=; b=i3US706zm8402XUp39xd4QMf29 6qizPa7egZaGc92q7kuKe6SeuNqlBikjDxxDJ/39die+Pm4jbjq11BxCAzcdur0vkxH9S1HlvosJt 2xVQ9KD+5K6Ab2S5HhGvzBLHUt8IlpuWGbYuyQb8lQowwEBkzaeyiznUeHWR4unLEwG4=; Message-ID: Date: Thu, 29 Jun 2023 22:07:51 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [XEN v2] xen/arm: arm32: Allow Xen to boot on unidentified CPUs Content-Language: en-US To: Stefano Stabellini , Ayan Kumar Halder Cc: xen-devel@lists.xenproject.org, stefano.stabellini@amd.com, Volodymyr_Babchuk@epam.com, bertrand.marquis@arm.com References: <20230626181444.2305769-1-ayan.kumar.halder@amd.com> From: Julien Grall In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi, On 29/06/2023 00:00, Stefano Stabellini wrote: > On Mon, 26 Jun 2023, Ayan Kumar Halder wrote: >> Currently if the processor id is not identified (ie it is missing in proc-v7.S) >> , then Xen boot fails quite early. >> We have removed this restriction as for some CPUs (eg Cortex-R52), there isn't >> any special initialization required. >> >> Signed-off-by: Ayan Kumar Halder > > Reviewed-by: Stefano Stabellini I have committed it. Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Thu Jun 29 21:08:52 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 21:08:52 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557113.870191 (Exim 4.92) (envelope-from ) id 1qEysc-00076e-Cf; Thu, 29 Jun 2023 21:08:42 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557113.870191; Thu, 29 Jun 2023 21:08:42 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEysc-00076X-8p; Thu, 29 Jun 2023 21:08:42 +0000 Received: by outflank-mailman (input) for mailman id 557113; Thu, 29 Jun 2023 21:08:41 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEysb-00076R-0A for xen-devel@lists.xenproject.org; Thu, 29 Jun 2023 21:08:41 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEysa-0007v2-Dh; Thu, 29 Jun 2023 21:08:40 +0000 Received: from gw1.octic.net ([88.97.20.152] helo=[10.0.1.240]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qEysa-0002ts-8H; Thu, 29 Jun 2023 21:08:40 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To: References:Cc:To:From:Subject:MIME-Version:Date:Message-ID; bh=fiAKhT1fH/qFrwzsnUK+NDax6jxQNRCLLty7wtuVUy0=; b=muf3P47z0zXF9c86Zj/e7gyLFy ouqmpvdGyhiI4P5fQifjltRrndOzH7hajbwrVlPHbjvedHnl/o9VlZqA0P0w5OSuCkGHArRPTN1cO gOIUMpQx0uJgEwF4SjG0U8pB60an+MdW05PFwqJUjp81OZuqqHhURVJbkKtK1gqpyx3Q=; Message-ID: <49bf12fb-8c71-40d9-a40b-ddcfa24356df@xen.org> Date: Thu, 29 Jun 2023 22:08:38 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH] xen/arm: grant-table: Correct the prototype of the arch helpers Content-Language: en-US From: Julien Grall To: xen-devel@lists.xenproject.org Cc: Luca.Fancellu@arm.com, michal.orzel@amd.com, Henry.Wang@arm.com, Julien Grall , federico.serafini@bugseng.com, Bertrand Marquis , Stefano Stabellini References: <20230629210150.69525-1-julien@xen.org> In-Reply-To: <20230629210150.69525-1-julien@xen.org> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Sorry I forgot to CC Bertrand and Stefano. On 29/06/2023 22:01, Julien Grall wrote: > From: Julien Grall > > Both the stub and the x86 prototypes for replace_grant_host_mapping() > and create_grant_host_mapping() will define the first parameter (and > third for the former) as uint64_t. Yet Arm will define it as > 'unsigned long'. > > While there are no differences for 64-bit, for 32-bit it means > that the address should be truncated as 32-bit guest could support > up to 40-bit addresses. > > So replace 'unsigned long' with 'uint64_t' for the first parameter > (and third parameter for replace_grant_host_mapping()). > > Signed-off-by: Julien Grall > --- > > Cc: federico.serafini@bugseng.com > --- > xen/arch/arm/include/asm/grant_table.h | 6 +++--- > xen/arch/arm/mm.c | 6 +++--- > 2 files changed, 6 insertions(+), 6 deletions(-) > > diff --git a/xen/arch/arm/include/asm/grant_table.h b/xen/arch/arm/include/asm/grant_table.h > index f2d115b97d8b..d3c518a926b9 100644 > --- a/xen/arch/arm/include/asm/grant_table.h > +++ b/xen/arch/arm/include/asm/grant_table.h > @@ -36,10 +36,10 @@ static inline bool gnttab_release_host_mappings(const struct domain *d) > return true; > } > > -int create_grant_host_mapping(unsigned long gpaddr, mfn_t frame, > +int create_grant_host_mapping(uint64_t gpaddr, mfn_t frame, > unsigned int flags, unsigned int cache_flags); > -int replace_grant_host_mapping(unsigned long gpaddr, mfn_t frame, > - unsigned long new_gpaddr, unsigned int flags); > +int replace_grant_host_mapping(uint64_t gpaddr, mfn_t frame, > + uint64_t new_gpaddr, unsigned int flags); > > /* > * The region used by Xen on the memory will never be mapped in DOM0 > diff --git a/xen/arch/arm/mm.c b/xen/arch/arm/mm.c > index 0a3e1f3b64b6..53773368d036 100644 > --- a/xen/arch/arm/mm.c > +++ b/xen/arch/arm/mm.c > @@ -1579,7 +1579,7 @@ void put_page_type(struct page_info *page) > return; > } > > -int create_grant_host_mapping(unsigned long gpaddr, mfn_t frame, > +int create_grant_host_mapping(uint64_t gpaddr, mfn_t frame, > unsigned int flags, unsigned int cache_flags) > { > int rc; > @@ -1600,8 +1600,8 @@ int create_grant_host_mapping(unsigned long gpaddr, mfn_t frame, > return GNTST_okay; > } > > -int replace_grant_host_mapping(unsigned long gpaddr, mfn_t frame, > - unsigned long new_gpaddr, unsigned int flags) > +int replace_grant_host_mapping(uint64_t gpaddr, mfn_t frame, > + uint64_t new_gpaddr, unsigned int flags) > { > gfn_t gfn = gaddr_to_gfn(gpaddr); > struct domain *d = current->domain; -- Julien Grall From xen-devel-bounces@lists.xenproject.org Thu Jun 29 21:27:42 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 21:27:42 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557118.870201 (Exim 4.92) (envelope-from ) id 1qEzAg-0001CX-Qx; Thu, 29 Jun 2023 21:27:22 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557118.870201; Thu, 29 Jun 2023 21:27:22 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEzAg-0001CQ-OB; Thu, 29 Jun 2023 21:27:22 +0000 Received: by outflank-mailman (input) for mailman id 557118; Thu, 29 Jun 2023 21:27:21 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEzAf-0001CK-0c for xen-devel@lists.xenproject.org; Thu, 29 Jun 2023 21:27:21 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEzAd-0008O0-RV; Thu, 29 Jun 2023 21:27:19 +0000 Received: from gw1.octic.net ([88.97.20.152] helo=[10.0.1.240]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qEzAd-0003dS-M1; Thu, 29 Jun 2023 21:27:19 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=lOz2DXoVx74iS6W97tjp2Cx3UgunsQ60JTtDbhKsFXU=; b=zZ69MO9hXXXlPRHsZs1izkA0iV 2/ajIh3nQZOJVUS24CH/VYbz9uwX2olX+uvYYomZj0IR+/v70j+V1TQ8bl49p/dSmRQ8EvDrznXK1 4tsPNynRJ0jOz8jYPuyLqL9O39xyINPuTRMz0YHc1CDWN5B6O0la3dWUFSaxqyRsSw6E=; Message-ID: <2b7301ea-e209-2dae-4669-d05cbc9d3f90@xen.org> Date: Thu, 29 Jun 2023 22:27:18 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v4 3/5] tools/xenstore: split out environment specific live update code Content-Language: en-US To: Juergen Gross , xen-devel@lists.xenproject.org Cc: Wei Liu , Anthony PERARD References: <20230627122750.2007-1-jgross@suse.com> <20230627122750.2007-4-jgross@suse.com> From: Julien Grall In-Reply-To: <20230627122750.2007-4-jgross@suse.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi Juergen, On 27/06/2023 13:27, Juergen Gross wrote: > Instead of using #ifdef in xenstored_control.c split out the code of > environment specific functions (daemon or Mini-OS) to dedicated source > files. > > Signed-off-by: Juergen Gross Reviewed-by: Julien Grall Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Thu Jun 29 21:29:10 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 21:29:10 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557122.870211 (Exim 4.92) (envelope-from ) id 1qEzCP-0001kI-5L; Thu, 29 Jun 2023 21:29:09 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557122.870211; Thu, 29 Jun 2023 21:29:09 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEzCP-0001kB-1y; Thu, 29 Jun 2023 21:29:09 +0000 Received: by outflank-mailman (input) for mailman id 557122; Thu, 29 Jun 2023 21:29:07 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEzCN-0001k3-He for xen-devel@lists.xenproject.org; Thu, 29 Jun 2023 21:29:07 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEzCM-0008Po-QQ; Thu, 29 Jun 2023 21:29:06 +0000 Received: from gw1.octic.net ([88.97.20.152] helo=[10.0.1.240]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qEzCM-0003f7-Lk; Thu, 29 Jun 2023 21:29:06 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=nSTswfM4G/lEWCDVQXnWAa4G2+3uxoXyFvGrtfypQVA=; b=byf/jX92Vw99hSqSuiH1ItvanJ gfqyt+Jz+rbJWZnBkIxnB+6EQ5++FcYqsSc6R/rPBclZ05r1wuu2QQ+mOSIZbR8rnvsq3fQ4HXuH3 rRVDIDotTGd+HOZnnYqtk+Tru5iepdx3G5aDISAuFK1HBR5JFqUYX++e81++FL6tVDVA=; Message-ID: <8f256514-06f8-3776-c464-d64227c7400e@xen.org> Date: Thu, 29 Jun 2023 22:29:05 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v4 4/5] tools/xenstore: split out rest of live update control code Content-Language: en-US To: Juergen Gross , xen-devel@lists.xenproject.org Cc: Wei Liu , Anthony PERARD References: <20230627122750.2007-1-jgross@suse.com> <20230627122750.2007-5-jgross@suse.com> From: Julien Grall In-Reply-To: <20230627122750.2007-5-jgross@suse.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi Juergen, On 27/06/2023 13:27, Juergen Gross wrote: > Move the rest of live update related code from xenstored_control.c to > a dedicated new source file. > > Signed-off-by: Juergen Gross Acked-by: Julien Grall Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Thu Jun 29 21:39:32 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 21:39:32 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557126.870221 (Exim 4.92) (envelope-from ) id 1qEzMD-0003Gz-3l; Thu, 29 Jun 2023 21:39:17 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557126.870221; Thu, 29 Jun 2023 21:39:17 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEzMD-0003Gs-05; Thu, 29 Jun 2023 21:39:17 +0000 Received: by outflank-mailman (input) for mailman id 557126; Thu, 29 Jun 2023 21:39:16 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEzMB-0003Gm-WA for xen-devel@lists.xenproject.org; Thu, 29 Jun 2023 21:39:16 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEzMB-00009c-Id; Thu, 29 Jun 2023 21:39:15 +0000 Received: from gw1.octic.net ([88.97.20.152] helo=[10.0.1.240]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qEzMB-0004CZ-DQ; Thu, 29 Jun 2023 21:39:15 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=RSO/O3LWeMKmlD4w+D7y+3Xw0B6lNOdrmS+nx5pa75M=; b=jopbTdvGGlXyUVX3gpi/ivpAtt 1urPET+i8Ufy2Cz55cBl/5KFWZgLnobqxehTybnBUlB5nfw2xYv0NUjW8c2XTQw5q6i2I/aSX9/v2 0CUqNfyfyaNn+7ILfeFstohGa9KAqjRzIUtM9AQwvshqxpgHYUjDvo2lfFVGUTz4vYSA=; Message-ID: <50c389d5-da7a-15a6-e03f-e4d96e34a446@xen.org> Date: Thu, 29 Jun 2023 22:39:13 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v4 0/5] tools/xenstore: more cleanups Content-Language: en-US To: Juergen Gross , xen-devel@lists.xenproject.org Cc: Wei Liu , Anthony PERARD , Andrew Cooper , George Dunlap , Jan Beulich , Stefano Stabellini References: <20230627122750.2007-1-jgross@suse.com> From: Julien Grall In-Reply-To: <20230627122750.2007-1-jgross@suse.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi Juergen, On 27/06/2023 13:27, Juergen Gross wrote: > Some more cleanups of Xenstore. > > Changes in V2: > - rebase > - one small modification of patch 10 > - added patches 11-13 > > Changes in V3: > - rebase > - modified patch 4 > - added patches 10, 11 and 13 > > Changes in V4: > - patches 1-11 already committed > - modified patch 3 > - rebased patch 4 after modifying patch 3 > > Juergen Gross (5): > tools/xenstore: remove no longer needed functions from xs_lib.c > tools/xenstore: replace xs_lib.c with a header > tools/xenstore: split out environment specific live update code > tools/xenstore: split out rest of live update control code > tools/xenstore: remove unused stuff from list.h I have committed the series. Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Thu Jun 29 21:42:56 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 21:42:56 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557131.870238 (Exim 4.92) (envelope-from ) id 1qEzPe-0004oT-23; Thu, 29 Jun 2023 21:42:50 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557131.870238; Thu, 29 Jun 2023 21:42:50 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEzPd-0004mx-TR; Thu, 29 Jun 2023 21:42:49 +0000 Received: by outflank-mailman (input) for mailman id 557131; Thu, 29 Jun 2023 21:42:48 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEzPc-0004hW-J1; Thu, 29 Jun 2023 21:42:48 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEzPb-0000O3-Jd; Thu, 29 Jun 2023 21:42:47 +0000 Received: from gw1.octic.net ([88.97.20.152] helo=[10.0.1.240]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qEzPb-0004J0-F7; Thu, 29 Jun 2023 21:42:47 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=e6G69M0iMJlhQPviP0mJBv8R1G7Fl1lgxWMhqkCo7Ps=; b=RC5AJuJ+6BuEK72M03zo9lhDOa +Yg9XMxbihFRDZQrbn0GMUu2XzNDk0uv3QXitvGlvnkB0gwauyEFgk4RJKdEhJn+huC1GRq/ffDW7 ZpotRdgwqp+tpB+T/GvDCklc+uOVmk7bxhpplTJlMpcps5w+mchdOc7AOrZMY1gCajZw=; Message-ID: <8bf66b4a-7f3b-22e0-6c09-c003ac972fe5@xen.org> Date: Thu, 29 Jun 2023 22:42:46 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: Asking for help to debug xen efi on Kunpeng machine Content-Language: en-US To: Jiatong Shen Cc: Stefano Stabellini , xen-users@lists.xenproject.org, xen-devel@lists.xenproject.org, bertrand.marquis@arm.com References: <78899eac-9de8-3626-8f40-98f993984f95@xen.org> <1ef5a5a6-01ea-4f3f-c05f-7dfd204a1861@xen.org> From: Julien Grall In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit On 24/06/2023 15:54, Jiatong Shen wrote: > Hello Julien, Hi, > Thank you very much for your reply. Can you teach me how to find the > relationship between MBI-gen and devices? > I am not sure how to find out the mbi-gen backed devices.. I am afraid I don't have any experience with the MBI-gen. I have also looked at one Hisilicon Device-Tree but I don't know whether this is the one for your board. My recommendation would be to check if there is any technical documentation for your HW. Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Thu Jun 29 21:47:22 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 21:47:22 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557158.870258 (Exim 4.92) (envelope-from ) id 1qEzTt-0006H6-IK; Thu, 29 Jun 2023 21:47:13 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557158.870258; Thu, 29 Jun 2023 21:47:13 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEzTt-0006Gz-FD; Thu, 29 Jun 2023 21:47:13 +0000 Received: by outflank-mailman (input) for mailman id 557158; Thu, 29 Jun 2023 21:47:11 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEzTr-0006Gl-A5 for xen-devel@lists.xenproject.org; Thu, 29 Jun 2023 21:47:11 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEzTq-0000Tj-Q9; Thu, 29 Jun 2023 21:47:10 +0000 Received: from gw1.octic.net ([88.97.20.152] helo=[10.0.1.240]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qEzTq-0004Y1-J6; Thu, 29 Jun 2023 21:47:10 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=vsR9/4FR2ebbDWHpGXFdzwQIt95FS8fAmTfZDrK+dVA=; b=glrakY2kYOZVEO5c/x37m+yDMw kOKR2O9ZgJRR0XgIqSJ2itCfoWN9ZXglSvMYidShfSapN5cFym5soTVKVGfjYrGnPv8QzN7H0IBw+ PqgIsggzPvwCXjIHboHyklQbowOBZ6JzKFWbNQxUaCAm3HhWALvEPPWdnOil5B2wk9uM=; Message-ID: <2503e5dc-66d7-2b6b-2de1-abe4cfd60e09@xen.org> Date: Thu, 29 Jun 2023 22:47:08 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v4 1/7] xen/arm: Improve readability of check for registered devices Content-Language: en-US To: Stewart Hildebrand , xen-devel@lists.xenproject.org Cc: Oleksandr Tyshchenko , Stefano Stabellini , Rahul Singh , Bertrand Marquis References: <20230607030220.22698-1-stewart.hildebrand@amd.com> <20230607030220.22698-2-stewart.hildebrand@amd.com> <347c6352-83ed-bbd5-8569-97619fb4faf8@amd.com> From: Julien Grall In-Reply-To: <347c6352-83ed-bbd5-8569-97619fb4faf8@amd.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Hi, Sorry for the late answer. On 07/06/2023 14:41, Stewart Hildebrand wrote: > On 6/7/23 03:27, Julien Grall wrote: >> Hi Stewart, >> >> On 07/06/2023 04:02, Stewart Hildebrand wrote: >>> From: Oleksandr Tyshchenko >>> >>> Improve readability of check for devices already registered with the SMMU with >>> legacy mmu-masters DT bindings by using is_protected. >> >> I am unconvinced with this change because... >> >>> >>> There are 2 device tree bindings for registering a device with the SMMU: >>> * mmu-masters (legacy, SMMUv1/2 only) >>> * iommus >>> >>> A device tree may include both mmu-masters and iommus properties (although it is >>> unnecessary to do so). When a device appears in the mmu-masters list, >>> np->is_protected and dev->iommu_fwspec both get set by the SMMUv1/2 driver. The >>> function iommu_add_dt_device() is subsequently invoked for devices that have an >>> iommus specification. >>> >>> The check as it was before this patch: >>> >>>    if ( dev_iommu_fwspec_get(dev) ) >>>        return 0; >>> >>> and the new check: >>> >>>    if ( dt_device_is_protected(np) ) >>>        return 0; >>> >>> are guarding against the same corner case: when a device has both mmu-masters >>> and iommus specifications in the device tree. The is_protected naming is more >>> descriptive. >>> >>> If np->is_protected is not set (i.e. false), but dev->iommu_fwspec is set, it is >>> an error condition, so return an error in this case. >>> >>> Expand the comment to further clarify the corner case. >>> >>> Signed-off-by: Oleksandr Tyshchenko >>> Signed-off-by: Stewart Hildebrand >>> --- >>> v3->v4: >>> * new patch: this change was split from ("xen/arm: Move is_protected flag to struct device") >>> --- >>>   xen/drivers/passthrough/device_tree.c | 11 ++++++++--- >>>   1 file changed, 8 insertions(+), 3 deletions(-) >>> >>> diff --git a/xen/drivers/passthrough/device_tree.c b/xen/drivers/passthrough/device_tree.c >>> index 1c32d7b50cce..d9b63da7260a 100644 >>> --- a/xen/drivers/passthrough/device_tree.c >>> +++ b/xen/drivers/passthrough/device_tree.c >>> @@ -141,12 +141,17 @@ int iommu_add_dt_device(struct dt_device_node *np) >>>           return -EINVAL; >>> >>>       /* >>> -     * The device may already have been registered. As there is no harm in >>> -     * it just return success early. >>> +     * Devices that appear in the legacy mmu-masters list may have already been >>> +     * registered with the SMMU. In case a device has both a mmu-masters entry >>> +     * and iommus property, there is no need to register it again. In this case >>> +     * simply return success early. >>>        */ >>> -    if ( dev_iommu_fwspec_get(dev) ) >>> +    if ( dt_device_is_protected(np) ) >> ... we now have two checks and it implies that it would be normal for >> dt_device_is_protected() to be false and ... >> >>>           return 0; >>> >>> +    if ( dev_iommu_fwspec_get(dev) ) >> >> ... this returning a non-zero value. Is there any other benefits with >> adding the two checks? > > No, I can't think of any good rationale for the 2nd check. After splitting this change from the other patch ("xen/arm: Move is_protected flag to struct device"), I simply wanted to evaluate it on its own. > >> If the others agree with the double check, then I think this should gain >> an ASSERT_UNREACHABLE() because AFAIU this is a programming error. > > Right, if the 2nd check was justified, there should be an ASSERT_UNREACHABLE(), good point. But I don't think the 2nd check is justified. > > If the 2nd check is dropped (keeping only the is_protected check), then do you think the change is justified? To be honest not with the current justification. I don't view the new check better than the other in term of readability. Is this the only reason you want to switch to dt_device_is_protected()? Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Thu Jun 29 22:18:37 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 22:18:37 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557167.870268 (Exim 4.92) (envelope-from ) id 1qEzy1-0001K8-Tw; Thu, 29 Jun 2023 22:18:21 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557167.870268; Thu, 29 Jun 2023 22:18:21 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEzy1-0001K1-R0; Thu, 29 Jun 2023 22:18:21 +0000 Received: by outflank-mailman (input) for mailman id 557167; Thu, 29 Jun 2023 22:18:20 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qEzy0-0001Jv-S1 for xen-devel@lists.xenproject.org; Thu, 29 Jun 2023 22:18:20 +0000 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by se1-gles-flk1.inumbo.com (Halon) with ESMTP id d8f06f69-16ca-11ee-8611-37d641c3527e; Fri, 30 Jun 2023 00:18:18 +0200 (CEST) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 9BA8FC14; Thu, 29 Jun 2023 15:19:00 -0700 (PDT) Received: from a015966.shanghai.arm.com (a015966.shanghai.arm.com [10.169.190.5]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id A7B393F64C; Thu, 29 Jun 2023 15:18:14 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: d8f06f69-16ca-11ee-8611-37d641c3527e From: Henry Wang To: xen-devel@lists.xenproject.org Cc: Henry Wang , Stefano Stabellini , Julien Grall , Bertrand Marquis , Wei Chen , Volodymyr Babchuk Subject: [PATCH] xen/arm: vgic: Add missing 'U' in VGIC_ICFG_MASK for shifted constant Date: Fri, 30 Jun 2023 06:18:00 +0800 Message-Id: <20230629221800.1478182-1-Henry.Wang@arm.com> X-Mailer: git-send-email 2.25.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit With UBSAN on some arm64 platforms, e.g. FVP_Base_RevC-2xAEMvA, the following splat will be printed while Dom0 is booting: ``` (XEN) ================================================================== (XEN) UBSAN: Undefined behaviour in arch/arm/vgic.c:372:15 (XEN) left shift of 1 by 31 places cannot be represented in type 'int' (XEN) Xen WARN at common/ubsan/ubsan.c:172 (XEN) ----[ Xen-4.18-unstable arm64 debug=y ubsan=y Not tainted ]---- ``` This is because there is a device node in the device tree with 0xf as the interrupts property. Example of the device tree node is shown below: ``` ethernet@202000000 { compatible = "smsc,lan91c111"; reg = <0x2 0x2000000 0x10000>; interrupts = <0xf>; }; ``` and this value is passed to vgic_get_virq_type() as "index" then "intr" in VGIC_ICFG_MASK. Add the missing 'U' in VGIC_ICFG_MASK as a fix, and this should also addressing MISRA Rule 7.2: A "u" or "U" suffix shall be applied to all integer constants that are represented in an unsigned type Signed-off-by: Henry Wang --- This patch should be based on top of Julien's series "xen/arm: Enable UBSAN support" to test. --- xen/arch/arm/vgic.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/xen/arch/arm/vgic.c b/xen/arch/arm/vgic.c index c61c68870c..97d6f61066 100644 --- a/xen/arch/arm/vgic.c +++ b/xen/arch/arm/vgic.c @@ -358,7 +358,7 @@ void vgic_disable_irqs(struct vcpu *v, uint32_t r, int n) } } -#define VGIC_ICFG_MASK(intr) (1 << ((2 * ((intr) % 16)) + 1)) +#define VGIC_ICFG_MASK(intr) (1U << ((2 * ((intr) % 16)) + 1)) /* The function should be called with the rank lock taken */ static inline unsigned int vgic_get_virq_type(struct vcpu *v, int n, int index) -- 2.25.1 From xen-devel-bounces@lists.xenproject.org Thu Jun 29 22:23:01 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 22:23:01 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557173.870278 (Exim 4.92) (envelope-from ) id 1qF02T-0002lj-FX; Thu, 29 Jun 2023 22:22:57 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557173.870278; Thu, 29 Jun 2023 22:22:57 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qF02T-0002lc-Ba; Thu, 29 Jun 2023 22:22:57 +0000 Received: by outflank-mailman (input) for mailman id 557173; Thu, 29 Jun 2023 22:22:56 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qF02S-0002lW-7e for xen-devel@lists.xenproject.org; Thu, 29 Jun 2023 22:22:56 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qF02R-0001E0-Nq; Thu, 29 Jun 2023 22:22:55 +0000 Received: from gw1.octic.net ([88.97.20.152] helo=[10.0.1.102]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qF02R-00063F-J0; Thu, 29 Jun 2023 22:22:55 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:Subject: From:References:Cc:To:MIME-Version:Date:Message-ID; bh=QA5e9xK9/DB7qxHp6/LH5V/2cjTJgdXvEdqzwDnYNlE=; b=A5Mnd8k/o3DOtfbpCkfWyVA9Hx xfXr6SGaf/9GwxbTZOg3FuzrRkWuilsByRXaO4wQvDietPVo2l3aNOSt6e1rLz2nOdsJYYBp6sEJd LzFnu6I5QG2wJfsa47D71cZq7mgOby4uO+Od2oOdetkrWP7aAdoFHW0G/zTcw8qg3CGg=; Message-ID: <78ad0cfd-1046-36b1-ab17-68b5ea29f35c@xen.org> Date: Thu, 29 Jun 2023 23:22:54 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 To: Stewart Hildebrand , xen-devel@lists.xenproject.org Cc: Oleksandr Tyshchenko , Stefano Stabellini , Bertrand Marquis , Volodymyr Babchuk , Rahul Singh References: <20230607030220.22698-1-stewart.hildebrand@amd.com> <20230607030220.22698-3-stewart.hildebrand@amd.com> From: Julien Grall Subject: Re: [PATCH v4 2/7] xen/arm: Move is_protected flag to struct device In-Reply-To: <20230607030220.22698-3-stewart.hildebrand@amd.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi Stewart, On 07/06/2023 04:02, Stewart Hildebrand wrote: > From: Oleksandr Tyshchenko > > This flag will be re-used for PCI devices by the subsequent > patches. I was expecting that we would only do PCI passthrough on boards where all the PCI devices are behind an IOMMU. So it would be a all or nothing and therefore is_protected would not be used. Do you have an example where this wouldn't be the case? Regardless that, it would be good to spell out that you also rename helpers. But see below. > > Signed-off-by: Oleksandr Tyshchenko > Signed-off-by: Stewart Hildebrand > --- > v3->v4: > * move is_protected flag within struct device to reduce padding > * re-add device_is_protected checks in add_device hooks in smmu-v3.c/ipmmu-vmsa.c > * split mmu-masters check into separate patch > > v2->v3: > * no change > > v1->v2: > * no change > > downstream->v1: > * rebase > * s/dev_node->is_protected/dev_node->dev.is_protected/ in smmu.c > * s/dt_device_set_protected(dev_to_dt(dev))/device_set_protected(dev)/ in smmu-v3.c > * remove redundant device_is_protected checks in smmu-v3.c/ipmmu-vmsa.c > > (cherry picked from commit 59753aac77528a584d3950936b853ebf264b68e7 from > the downstream branch poc/pci-passthrough from > https://gitlab.com/xen-project/people/bmarquis/xen-arm-poc.git) > --- > xen/arch/arm/domain_build.c | 4 ++-- > xen/arch/arm/include/asm/device.h | 14 ++++++++++++++ > xen/common/device_tree.c | 2 +- > xen/drivers/passthrough/arm/ipmmu-vmsa.c | 4 ++-- > xen/drivers/passthrough/arm/smmu-v3.c | 5 +++-- > xen/drivers/passthrough/arm/smmu.c | 2 +- > xen/drivers/passthrough/device_tree.c | 8 ++++---- > xen/include/xen/device_tree.h | 13 ------------- > 8 files changed, 27 insertions(+), 25 deletions(-) > > diff --git a/xen/arch/arm/domain_build.c b/xen/arch/arm/domain_build.c > index 3f4558ade67f..b229bfaae712 100644 > --- a/xen/arch/arm/domain_build.c > +++ b/xen/arch/arm/domain_build.c > @@ -2524,7 +2524,7 @@ static int __init handle_device(struct domain *d, struct dt_device_node *dev, > return res; > } > > - if ( dt_device_is_protected(dev) ) > + if ( device_is_protected(dt_to_dev(dev)) ) I would actually prefer if we keep dt_device_is_protected() and call device_is_protected(dt_to_dev(...)) within it. > { > dt_dprintk("%s setup iommu\n", dt_node_full_name(dev)); > res = iommu_assign_dt_device(d, dev); > @@ -3024,7 +3024,7 @@ static int __init handle_passthrough_prop(struct kernel_info *kinfo, > return res; > > /* If xen_force, we allow assignment of devices without IOMMU protection. */ > - if ( xen_force && !dt_device_is_protected(node) ) > + if ( xen_force && !device_is_protected(dt_to_dev(node)) ) > return 0; > > return iommu_assign_dt_device(kinfo->d, node); > diff --git a/xen/arch/arm/include/asm/device.h b/xen/arch/arm/include/asm/device.h > index b5d451e08776..8ac807482737 100644 > --- a/xen/arch/arm/include/asm/device.h > +++ b/xen/arch/arm/include/asm/device.h > @@ -1,6 +1,8 @@ > #ifndef __ASM_ARM_DEVICE_H > #define __ASM_ARM_DEVICE_H > > +#include > + > enum device_type > { > DEV_DT, > @@ -15,6 +17,8 @@ struct dev_archdata { > struct device > { > enum device_type type; > + bool is_protected; /* Shows that device is protected by IOMMU */ > + uint8_t _pad[3]; AFAIK, a compiler would be allowed to use 8-byte for the enum. So the padding would increase the size of the structure. Therefore, I don't think you want to add an explicit padding here. Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Thu Jun 29 22:29:49 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 22:29:49 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557179.870288 (Exim 4.92) (envelope-from ) id 1qF08v-0003T2-80; Thu, 29 Jun 2023 22:29:37 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557179.870288; Thu, 29 Jun 2023 22:29:37 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qF08v-0003Sv-5I; Thu, 29 Jun 2023 22:29:37 +0000 Received: by outflank-mailman (input) for mailman id 557179; Thu, 29 Jun 2023 22:29:35 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qF08t-0003Sp-Iq for xen-devel@lists.xenproject.org; Thu, 29 Jun 2023 22:29:35 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qF08t-0001KX-0q; Thu, 29 Jun 2023 22:29:35 +0000 Received: from gw1.octic.net ([88.97.20.152] helo=[10.0.1.102]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qF08s-0006BM-RO; Thu, 29 Jun 2023 22:29:34 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=Lbq4JSzkHWJwlzw2w21G8vmh4g13grTO+33JLpgAnFc=; b=PYVRdEMwB7t0aQQWapvatTkaSz 2BsP0ljqPktIhNl4UcSNrLAh4Ycp19Xu0jxtj1mSpTpGpDBglWiEw5tIoqlNN+I+2AXYknVhahQgi 51VwXKW8GifA2SP5+5S59tQsPW5fQ4VVfHqA8L98zSOIYk/2ePzDKteJOUvgn6gsbNRo=; Message-ID: Date: Thu, 29 Jun 2023 23:29:33 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v4 3/7] iommu/arm: Add iommu_dt_xlate() To: Stewart Hildebrand , xen-devel@lists.xenproject.org Cc: Oleksandr Tyshchenko , Stefano Stabellini , Rahul Singh , Bertrand Marquis References: <20230607030220.22698-1-stewart.hildebrand@amd.com> <20230607030220.22698-4-stewart.hildebrand@amd.com> From: Julien Grall In-Reply-To: <20230607030220.22698-4-stewart.hildebrand@amd.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi Stewart, On 07/06/2023 04:02, Stewart Hildebrand wrote: > From: Oleksandr Tyshchenko > > Move code for processing DT IOMMU specifier to a separate helper. > This helper will be re-used for adding PCI devices by the subsequent > patches as we will need exact the same actions for processing > DT PCI-IOMMU specifier. > > While at it introduce NO_IOMMU to avoid magic "1". > > Signed-off-by: Oleksandr Tyshchenko > Signed-off-by: Stewart Hildebrand > --- > v3->v4: > * make dt_phandle_args *iommu_spec const > * move !ops->add_device check to helper > > v2->v3: > * no change > > v1->v2: > * no change > > downstream->v1: > * trivial rebase > * s/dt_iommu_xlate/iommu_dt_xlate/ > > (cherry picked from commit c26bab0415ca303df86aba1d06ef8edc713734d3 from > the downstream branch poc/pci-passthrough from > https://gitlab.com/xen-project/people/bmarquis/xen-arm-poc.git) > --- > xen/drivers/passthrough/device_tree.c | 47 ++++++++++++++++++--------- > 1 file changed, 31 insertions(+), 16 deletions(-) > > diff --git a/xen/drivers/passthrough/device_tree.c b/xen/drivers/passthrough/device_tree.c > index c60e78eaf556..ff9e66ebf92a 100644 > --- a/xen/drivers/passthrough/device_tree.c > +++ b/xen/drivers/passthrough/device_tree.c > @@ -127,15 +127,42 @@ int iommu_release_dt_devices(struct domain *d) > return 0; > } > > +/* This correlation must not be altered */ Please expand why. > +#define NO_IOMMU 1 Given that the value is returned, should not this be moved to an header and used by the callers? > + > +static int iommu_dt_xlate(struct device *dev, > + const struct dt_phandle_args *iommu_spec) > +{ > + const struct iommu_ops *ops = iommu_get_ops(); > + int rc; > + > + if ( !ops->dt_xlate ) > + return -EINVAL; > + > + if ( !dt_device_is_available(iommu_spec->np) ) > + return NO_IOMMU; > + > + rc = iommu_fwspec_init(dev, &iommu_spec->np->dev); > + if ( rc ) > + return rc; > + > + /* > + * Provide DT IOMMU specifier which describes the IOMMU master > + * interfaces of that device (device IDs, etc) to the driver. > + * The driver is responsible to decide how to interpret them. > + */ > + return ops->dt_xlate(dev, iommu_spec); > +} > + > int iommu_add_dt_device(struct dt_device_node *np) > { > const struct iommu_ops *ops = iommu_get_ops(); > struct dt_phandle_args iommu_spec; > struct device *dev = dt_to_dev(np); > - int rc = 1, index = 0; > + int rc = NO_IOMMU, index = 0; > > if ( !iommu_enabled ) > - return 1; > + return NO_IOMMU; > > if ( !ops ) > return -EINVAL; > @@ -163,22 +190,10 @@ int iommu_add_dt_device(struct dt_device_node *np) > * The driver which supports generic IOMMU DT bindings must have > * these callback implemented. The 's' was missing to callback. But now, I think you want to replace 'these' with 'this' as you move the second check. > */ > - if ( !ops->add_device || !ops->dt_xlate ) > + if ( !ops->add_device ) > return -EINVAL; > > - if ( !dt_device_is_available(iommu_spec.np) ) > - break; > - > - rc = iommu_fwspec_init(dev, &iommu_spec.np->dev); > - if ( rc ) > - break; > - > - /* > - * Provide DT IOMMU specifier which describes the IOMMU master > - * interfaces of that device (device IDs, etc) to the driver. > - * The driver is responsible to decide how to interpret them. > - */ > - rc = ops->dt_xlate(dev, &iommu_spec); > + rc = iommu_dt_xlate(dev, &iommu_spec); > if ( rc ) > break; > Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Thu Jun 29 22:37:40 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 22:37:40 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557183.870298 (Exim 4.92) (envelope-from ) id 1qF0GX-0004wC-WC; Thu, 29 Jun 2023 22:37:29 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557183.870298; Thu, 29 Jun 2023 22:37:29 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qF0GX-0004w5-TV; Thu, 29 Jun 2023 22:37:29 +0000 Received: by outflank-mailman (input) for mailman id 557183; Thu, 29 Jun 2023 22:37:28 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qF0GW-0004vz-DN for xen-devel@lists.xenproject.org; Thu, 29 Jun 2023 22:37:28 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qF0GU-0001TD-LQ; Thu, 29 Jun 2023 22:37:26 +0000 Received: from gw1.octic.net ([88.97.20.152] helo=[10.0.1.102]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qF0GU-0006c1-Fg; Thu, 29 Jun 2023 22:37:26 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=79RCoumuZ9qC8gDHhfpwS4X584AL+xmV8sGohL7Hbcs=; b=4uwyiTpdLEQaLIFajWycKqR4dP DLpavMN79WCzIcfvuVOiw2am7HIDo8cnJBvZngvxUfnTlCefBTv837fLQGEw+gf5MpLcO5SCAKJJ9 /FEh+R/Sp6eVE3EFzdm00slhaxdCg107VGw01hz3lfo6t9veUEZR2XRwaPnUL4Zv6PtM=; Message-ID: Date: Thu, 29 Jun 2023 23:37:24 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v4 4/7] iommu/arm: Introduce iommu_add_dt_pci_sideband_ids API To: Stewart Hildebrand , xen-devel@lists.xenproject.org Cc: Oleksandr Tyshchenko , Stefano Stabellini , Jan Beulich , Paul Durrant , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Rahul Singh , Bertrand Marquis References: <20230607030220.22698-1-stewart.hildebrand@amd.com> <20230607030220.22698-5-stewart.hildebrand@amd.com> From: Julien Grall In-Reply-To: <20230607030220.22698-5-stewart.hildebrand@amd.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi Stewart, I haven't yet fully reviewed the code. However, I have one question... On 07/06/2023 04:02, Stewart Hildebrand wrote: > From: Oleksandr Tyshchenko > +static inline int iommu_add_dt_pci_sideband_ids(struct pci_dev *pdev) > +{ > + return 0; > +} > #endif /* HAS_DEVICE_TREE */ > > +static inline int iommu_add_pci_sideband_ids(struct pci_dev *pdev) > +{ > + int ret = 0; Shouldn't this return NO_IOMMU when booting on ACPI platform? > +#ifdef CONFIG_ACPI > + if ( acpi_disabled ) > +#endif > + ret = iommu_add_dt_pci_sideband_ids(pdev); > + return ret; > +} > + > struct page_info; > > /* Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Thu Jun 29 22:44:16 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 22:44:16 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557187.870307 (Exim 4.92) (envelope-from ) id 1qF0N0-0006Nx-KX; Thu, 29 Jun 2023 22:44:10 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557187.870307; Thu, 29 Jun 2023 22:44:10 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qF0N0-0006Nq-I0; Thu, 29 Jun 2023 22:44:10 +0000 Received: by outflank-mailman (input) for mailman id 557187; Thu, 29 Jun 2023 22:44:10 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qF0Mz-0006Nk-Vr for xen-devel@lists.xenproject.org; Thu, 29 Jun 2023 22:44:09 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 74a85810-16ce-11ee-b237-6b7b168915f2; Fri, 30 Jun 2023 00:44:08 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id A972760F8C; Thu, 29 Jun 2023 22:44:06 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 1E260C433C0; Thu, 29 Jun 2023 22:44:05 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 74a85810-16ce-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1688078646; bh=9filNv0J2cotGulkPBa7/YioCxziO3ygn5pSV3LDoq0=; h=Date:From:To:cc:Subject:In-Reply-To:References:From; b=TUm4SyCcjZ83+JixEE8t+MVWjHfHLxLRtxWkxEYXUK/FC29xUwYMZr164TfXb/o7l DSf2nooqn4mdBSBvFI9YBcb++QposdQYmMS6Kmw4+TPHybuhquS6C37FsX5sj6QRNF n01sUX9c4ly6/U3EUjVFrTv69H/VODKAyFtPAUeoFY0D3oLRHqLZsY+szcW0/KLLoB AEGzzBcIMdWne1tiVGLsFoqGONGecZpnoSjTMrfzytsghgnueDwCud3AmUnUYMr6PX Nc3cGRZ37zkYvtxEWxpnx4+/A3mju1BkrmKzOYv47C2DtOxRXrAPt8I3V289unjdpz +2Q7Bb0KcE06w== Date: Thu, 29 Jun 2023 15:44:04 -0700 (PDT) From: Stefano Stabellini X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop To: Oleksandr Tyshchenko cc: Stefano Stabellini , Petr Pavlu , "xen-devel@lists.xenproject.org" , "linux-kernel@vger.kernel.org" , "jgross@suse.com" , vikram.garhwal@amd.com Subject: Re: [PATCH 2/2] xen/virtio: Avoid use of the dom0 backend in dom0 In-Reply-To: Message-ID: References: <20230621131214.9398-1-petr.pavlu@suse.com> <20230621131214.9398-3-petr.pavlu@suse.com> <15e31609-6c45-7372-76ee-0adf7a64fe88@epam.com> User-Agent: Alpine 2.22 (DEB 394 2020-01-19) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII On Thu, 29 Jun 2023, Oleksandr Tyshchenko wrote: > On 29.06.23 04:00, Stefano Stabellini wrote: > > Hello Stefano > > > On Wed, 21 Jun 2023, Oleksandr Tyshchenko wrote: > >> On 21.06.23 16:12, Petr Pavlu wrote: > >> > >> > >> Hello Petr > >> > >> > >>> When attempting to run Xen on a QEMU/KVM virtual machine with virtio > >>> devices (all x86_64), dom0 tries to establish a grant for itself which > >>> eventually results in a hang during the boot. > >>> > >>> The backtrace looks as follows, the while loop in __send_control_msg() > >>> makes no progress: > >>> > >>> #0 virtqueue_get_buf_ctx (_vq=_vq@entry=0xffff8880074a8400, len=len@entry=0xffffc90000413c94, ctx=ctx@entry=0x0 ) at ../drivers/virtio/virtio_ring.c:2326 > >>> #1 0xffffffff817086b7 in virtqueue_get_buf (_vq=_vq@entry=0xffff8880074a8400, len=len@entry=0xffffc90000413c94) at ../drivers/virtio/virtio_ring.c:2333 > >>> #2 0xffffffff8175f6b2 in __send_control_msg (portdev=, port_id=0xffffffff, event=0x0, value=0x1) at ../drivers/char/virtio_console.c:562 > >>> #3 0xffffffff8175f6ee in __send_control_msg (portdev=, port_id=, event=, value=) at ../drivers/char/virtio_console.c:569 > >>> #4 0xffffffff817618b1 in virtcons_probe (vdev=0xffff88800585e800) at ../drivers/char/virtio_console.c:2098 > >>> #5 0xffffffff81707117 in virtio_dev_probe (_d=0xffff88800585e810) at ../drivers/virtio/virtio.c:305 > >>> #6 0xffffffff8198e348 in call_driver_probe (drv=0xffffffff82be40c0 , drv=0xffffffff82be40c0 , dev=0xffff88800585e810) at ../drivers/base/dd.c:579 > >>> #7 really_probe (dev=dev@entry=0xffff88800585e810, drv=drv@entry=0xffffffff82be40c0 ) at ../drivers/base/dd.c:658 > >>> #8 0xffffffff8198e58f in __driver_probe_device (drv=drv@entry=0xffffffff82be40c0 , dev=dev@entry=0xffff88800585e810) at ../drivers/base/dd.c:800 > >>> #9 0xffffffff8198e65a in driver_probe_device (drv=drv@entry=0xffffffff82be40c0 , dev=dev@entry=0xffff88800585e810) at ../drivers/base/dd.c:830 > >>> #10 0xffffffff8198e832 in __driver_attach (dev=0xffff88800585e810, data=0xffffffff82be40c0 ) at ../drivers/base/dd.c:1216 > >>> #11 0xffffffff8198bfb2 in bus_for_each_dev (bus=, start=start@entry=0x0 , data=data@entry=0xffffffff82be40c0 , > >>> fn=fn@entry=0xffffffff8198e7b0 <__driver_attach>) at ../drivers/base/bus.c:368 > >>> #12 0xffffffff8198db65 in driver_attach (drv=drv@entry=0xffffffff82be40c0 ) at ../drivers/base/dd.c:1233 > >>> #13 0xffffffff8198d207 in bus_add_driver (drv=drv@entry=0xffffffff82be40c0 ) at ../drivers/base/bus.c:673 > >>> #14 0xffffffff8198f550 in driver_register (drv=drv@entry=0xffffffff82be40c0 ) at ../drivers/base/driver.c:246 > >>> #15 0xffffffff81706b47 in register_virtio_driver (driver=driver@entry=0xffffffff82be40c0 ) at ../drivers/virtio/virtio.c:357 > >>> #16 0xffffffff832cd34b in virtio_console_init () at ../drivers/char/virtio_console.c:2258 > >>> #17 0xffffffff8100105c in do_one_initcall (fn=0xffffffff832cd2e0 ) at ../init/main.c:1246 > >>> #18 0xffffffff83277293 in do_initcall_level (command_line=0xffff888003e2f900 "root", level=0x6) at ../init/main.c:1319 > >>> #19 do_initcalls () at ../init/main.c:1335 > >>> #20 do_basic_setup () at ../init/main.c:1354 > >>> #21 kernel_init_freeable () at ../init/main.c:1571 > >>> #22 0xffffffff81f64be1 in kernel_init (unused=) at ../init/main.c:1462 > >>> #23 0xffffffff81001f49 in ret_from_fork () at ../arch/x86/entry/entry_64.S:308 > >>> #24 0x0000000000000000 in ?? () > >>> > >>> Fix the problem by preventing xen_grant_init_backend_domid() from > >>> setting dom0 as a backend when running in dom0. > >>> > >>> Fixes: 035e3a4321f7 ("xen/virtio: Optimize the setup of "xen-grant-dma" devices") > >> > >> > >> I am not 100% sure whether the Fixes tag points to precise commit. If I > >> am not mistaken, the said commit just moves the code in the context > >> without changing the logic of CONFIG_XEN_VIRTIO_FORCE_GRANT, this was > >> introduced before. > >> > >> > >>> Signed-off-by: Petr Pavlu > >>> --- > >>> drivers/xen/grant-dma-ops.c | 4 +++- > >>> 1 file changed, 3 insertions(+), 1 deletion(-) > >>> > >>> diff --git a/drivers/xen/grant-dma-ops.c b/drivers/xen/grant-dma-ops.c > >>> index 76f6f26265a3..29ed27ac450e 100644 > >>> --- a/drivers/xen/grant-dma-ops.c > >>> +++ b/drivers/xen/grant-dma-ops.c > >>> @@ -362,7 +362,9 @@ static int xen_grant_init_backend_domid(struct device *dev, > >>> if (np) { > >>> ret = xen_dt_grant_init_backend_domid(dev, np, backend_domid); > >>> of_node_put(np); > >>> - } else if (IS_ENABLED(CONFIG_XEN_VIRTIO_FORCE_GRANT) || xen_pv_domain()) { > >>> + } else if ((IS_ENABLED(CONFIG_XEN_VIRTIO_FORCE_GRANT) || > >>> + xen_pv_domain()) && > >>> + !xen_initial_domain()) { > >> > >> The commit lgtm, just one note: > >> > >> > >> I would even bail out early in xen_virtio_restricted_mem_acc() instead, > >> as I assume the same issue could happen on Arm with DT (although there > >> we don't guess the backend's domid, we read it from DT and quite > >> unlikely we get Dom0 being in Dom0 with correct DT). > >> > >> Something like: > >> > >> @@ -416,6 +421,10 @@ bool xen_virtio_restricted_mem_acc(struct > >> virtio_device *dev) > >> { > >> domid_t backend_domid; > >> > >> + /* Xen grant DMA ops are not used when running as initial domain */ > >> + if (xen_initial_domain()) > >> + return false; > >> + > >> if (!xen_grant_init_backend_domid(dev->dev.parent, > >> &backend_domid)) { > >> xen_grant_setup_dma_ops(dev->dev.parent, backend_domid); > >> return true; > >> (END) > >> > >> > >> > >> If so, that commit subject would need to be updated accordingly. > >> > >> Let's see what other reviewers will say. > > > > This doesn't work in all cases. Imagine using PCI Passthrough to assign > > a "physical" virtio device to a domU. The domU will run into the same > > error, right? > > > > The problem is that we need a way for the virtio backend to advertise > > its ability of handling grants. Right now we only have a way to do with > > that with device tree on ARM. On x86, we only have > > CONFIG_XEN_VIRTIO_FORCE_GRANT, and if we take > > CONFIG_XEN_VIRTIO_FORCE_GRANT at face value, it also enables grants for > > "physical" virtio devices. Note that in this case we are fixing a > > nested-virtualization bug, but there are actually physical > > virtio-compatible devices out there. CONFIG_XEN_VIRTIO_FORCE_GRANT will > > break those too. > > > If these "physical" virtio devices are also spawned by > drivers/virtio/virtio.c:virtio_dev_probe(), then yes, otherwise I don't > see how this could even be possible, but I might miss something here. Yes, I would imagine virtio_dev_probe() would be called for them too > xen_virtio_restricted_mem_acc() gets called indirectly from > virtio_dev_probe()->virtio_features_ok()-> > virtio_check_mem_acc_cb(). So the Xen grant DMA ops are only installed > for those. > > > > > > I think we need to add a second way? It could be anything that can help > > us distinguish between a non-grants-capable virtio backend and a > > grants-capable virtio backend, such as: > > - a string on xenstore > > - a xen param > > - a special PCI configuration register value > > - something in the ACPI tables > > - the QEMU machine type > > > Yes, I remember there was a discussion regarding that. The point is to > choose a solution to be functional for both PV and HVM *and* to be able > to support a hotplug. IIRC, the xenstore could be a possible candidate. xenstore would be among the easiest to make work. The only downside is the dependency on xenstore which otherwise virtio+grants doesn't have. Vikram is working on virtio with grants support in QEMU as we speak. Maybe we could find a way to add a flag in QEMU so that we can detect at runtime if a given virtio device support grants or not. > > Or at least should we change CONFIG_XEN_VIRTIO_FORCE_GRANT into a > > command line parameter so that it can be disabled in cases like this > > one? > > IIUC, this will help with HVM only. For sure this is the least attractive solution, only marginally better than the fix proposed in this patch > > I realize that fixing this problem properly takes a lot longer than > > adding a trivial if (dom0) return; check in the code. If you cannot find > > a good way to solve the problem or you don't have time to do that now > > and you need this bug fixed quickly, then I would be OK with the if > > (dom0) return; check but please add a detailed TODO in-code comment to > > explain that this is just a hack and we are still looking for a real > > solution. > > > > The check itself I prefer the original position because I want to retain > > the ability of using virtio frontends with grant on ARM in Dom0 (DomD > > case). > > Makes sense, agree. From xen-devel-bounces@lists.xenproject.org Thu Jun 29 22:53:32 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 22:53:32 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557191.870318 (Exim 4.92) (envelope-from ) id 1qF0Vq-0007sG-Ey; Thu, 29 Jun 2023 22:53:18 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557191.870318; Thu, 29 Jun 2023 22:53:18 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qF0Vq-0007s9-CJ; Thu, 29 Jun 2023 22:53:18 +0000 Received: by outflank-mailman (input) for mailman id 557191; Thu, 29 Jun 2023 22:53:16 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qF0Vo-0007s3-Qu for xen-devel@lists.xenproject.org; Thu, 29 Jun 2023 22:53:16 +0000 Received: from EUR05-AM6-obe.outbound.protection.outlook.com (mail-am6eur05on2061b.outbound.protection.outlook.com [2a01:111:f400:7e1b::61b]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id ba9a6ea8-16cf-11ee-b237-6b7b168915f2; Fri, 30 Jun 2023 00:53:14 +0200 (CEST) Received: from DU2PR04CA0067.eurprd04.prod.outlook.com (2603:10a6:10:232::12) by VI1PR08MB10103.eurprd08.prod.outlook.com (2603:10a6:800:1ce::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.19; Thu, 29 Jun 2023 22:53:08 +0000 Received: from DBAEUR03FT056.eop-EUR03.prod.protection.outlook.com (2603:10a6:10:232:cafe::ab) by DU2PR04CA0067.outlook.office365.com (2603:10a6:10:232::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.22 via Frontend Transport; Thu, 29 Jun 2023 22:53:08 +0000 Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by DBAEUR03FT056.mail.protection.outlook.com (100.127.142.88) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.22 via Frontend Transport; Thu, 29 Jun 2023 22:53:08 +0000 Received: ("Tessian outbound b11b8bb4dfe8:v142"); Thu, 29 Jun 2023 22:53:08 +0000 Received: from bce341d42225.3 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 4BE177FF-CECF-410F-B974-B09797B6802D.1; Thu, 29 Jun 2023 22:53:02 +0000 Received: from EUR05-DB8-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id bce341d42225.3 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Thu, 29 Jun 2023 22:53:02 +0000 Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15) by PAVPR08MB9040.eurprd08.prod.outlook.com (2603:10a6:102:32d::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.19; Thu, 29 Jun 2023 22:53:00 +0000 Received: from AS8PR08MB7991.eurprd08.prod.outlook.com ([fe80::1024:cf14:d520:9b38]) by AS8PR08MB7991.eurprd08.prod.outlook.com ([fe80::1024:cf14:d520:9b38%7]) with mapi id 15.20.6521.026; Thu, 29 Jun 2023 22:53:00 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: ba9a6ea8-16cf-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=GoVB4vG/uM5KKyFoUUtHs7ZFGShlDxHmaf6jJWSY2HE=; b=txnnS6qLav1ZlK5Qdr99r8+Gxoafu3/6DGhwpWM7BouwBayWpzrSUkcM99QGo5hw5LqVOivNW4M4QbV5gG2scGyAzTqZyJ8xYsrMLMCzHoy+Vp0GDJrhMqdTPUoqiYn+7n6Cr/svrry5hOytyXGnDQqxnz2yX5MQNQxcUj2plpQ= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C X-CR-MTA-TID: 64aa7808 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=SHG32UIlS4sXhtl55BbiYhwvh8ihbD1+0ivyJnPjgv5OIiV99EQWmLk3WaAxoxmUT5hnn/lGOlea4AppAdnFX7TDeG7WspOxWdFYdqQtKyS3b1b1U0cLEJPgSmX1i2kHki5MnHIrbZomPLe4fcYegrPGpzvzE/1yg3hYtwl9lxyILnVCkJ8yO/DFK3U5RlnYi4pxzmHCTa2g3Y7B2uXRRcEx0+9n2GFUu33l0pTZmFGUENBGosa+sP+gjLPFR+u8eG7PuCEBylVhAicWORzLJDK3Nfiy+pTRkWSJF9rrt9HRmMQZv9vscqrJUicFhJ+Bv4H1Tb7IlRE3fiBSXyA9vQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=GoVB4vG/uM5KKyFoUUtHs7ZFGShlDxHmaf6jJWSY2HE=; b=h4mtR1EHLGTr+B0DlmSPvbaPDi9lr6+937pAirACElBg89kqSTK7tr+zDFA1SpWtj54vSCYVL2VKvng8ok4WedvsBnxisXgSFmnBB/T5Ozj1JyqIbME+Mx0HP2EEoYOLLHeLhSgKBGAh//SA9CjqvoHFpc/Dazux1ej0lbHOD66M6rdWBcQZWM7mnv8HPT3m700RBrhp99t2hEnQZsXXdnkTfD/DblC9SKjAphWexOoIALhRS8Nk/lW0uips9rQRfJ4r57Tr894T8g/JHgbzsyqOkVlIjHJiB/8ZDycgXVLyjh2c7sV1HBwIf896//0P9cVWttEbeQcUvX/iQqqkMg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=GoVB4vG/uM5KKyFoUUtHs7ZFGShlDxHmaf6jJWSY2HE=; b=txnnS6qLav1ZlK5Qdr99r8+Gxoafu3/6DGhwpWM7BouwBayWpzrSUkcM99QGo5hw5LqVOivNW4M4QbV5gG2scGyAzTqZyJ8xYsrMLMCzHoy+Vp0GDJrhMqdTPUoqiYn+7n6Cr/svrry5hOytyXGnDQqxnz2yX5MQNQxcUj2plpQ= From: Henry Wang To: Julien Grall , "xen-devel@lists.xenproject.org" CC: Luca Fancellu , "michal.orzel@amd.com" , Julien Grall , Bertrand Marquis , "sstabellini@kernel.org" Subject: RE: [v2 2/4] xen/arm32: head: Don't map too much in boot_third Thread-Topic: [v2 2/4] xen/arm32: head: Don't map too much in boot_third Thread-Index: AQHZqsXt6KY/k4F950WYV4UFWmacUq+iYkag Date: Thu, 29 Jun 2023 22:53:00 +0000 Message-ID: References: <20230629201129.12934-1-julien@xen.org> <20230629201129.12934-3-julien@xen.org> In-Reply-To: <20230629201129.12934-3-julien@xen.org> Accept-Language: zh-CN, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ts-tracking-id: D32322EBFD754A47B5D9833AB9F98AAA.0 x-checkrecipientchecked: true Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-traffictypediagnostic: AS8PR08MB7991:EE_|PAVPR08MB9040:EE_|DBAEUR03FT056:EE_|VI1PR08MB10103:EE_ X-MS-Office365-Filtering-Correlation-Id: a00a812f-3e67-45fb-bb8a-08db78f39b75 x-checkrecipientrouted: true nodisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: IusDlfkXfgW9PSRIxwTG20TOJzBzwLWmsk7yPJyAuvy7eZQYtQCjLO+2miMqvnMafl4fY23+9CMVapFEEOY97csTsRDP99XV5m4keIdi0ehwwIYh/zLdjK+zndQaZyaCA/DKcCYvhiCyGmIHlyBSOhrjwtzaj8B0yBKx9thw/wgKknxmgZEqXhYYGYKapG9ZwEt6GxylAEn56zUoYyEEqx+adOHy2Pmn+5xaDuCJQetAFmlvQQDElYAMYNURZJnb556FHOcMRi3/x3u0CqN2ev/zTT1ulGmjlg1zngTan3YSqbDrqVHVm3n7rhXp/0F3hySgTNo4PaUi0bHgm99+eoW/3YXo7HoE+Mr8GSSDw+TsEqUt5RhOM2pMUbQmahfvBT7cuFpHHS3NGy+GuLKAb/22OvfkNzFBDSA01CUc1S7A/oFYTucw9S+X7LdrkxPypdhbgSIA458S7AwuocuCjiRKEaqDmzX0UjhcqqcBx9c7xeWmXHltF9yxebIezA/5yzBTVNiU47k4LV2kPmLX0pBZv1H53rn8r3eyvVg6O611VS3NXmr9m42JAx/Jv13sU098WA7cEc9XKtZqsrizIsdhkerQP38TGuZku6Q75KT2aSQZRdJXgc36EEW3CbEs X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB7991.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(396003)(39860400002)(376002)(366004)(346002)(136003)(451199021)(26005)(186003)(71200400001)(2906002)(4744005)(86362001)(7696005)(55016003)(38070700005)(4326008)(8676002)(8936002)(110136005)(54906003)(316002)(478600001)(122000001)(6506007)(9686003)(38100700002)(5660300002)(33656002)(83380400001)(52536014)(66476007)(66946007)(66556008)(76116006)(64756008)(66446008)(41300700001);DIR:OUT;SFP:1101; Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAVPR08MB9040 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: DBAEUR03FT056.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: e9d724d1-f89b-42bf-9cc0-08db78f396c3 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: uXeqXrPPTBHB1nMd2cPJgkfPf/NOPljo6HfbEYxCJfBDVQHNmBZL4QyOWLeZDiz8mhxy3kea2Fz6KhiQMt0Q3WwS6SK8AC0nv+C/XW0OdLt62w2QH5zCYB/Byc4sAxwoBl7olganw+zHA0/gV+NO/LHmv02blYXHqboaAcmNUFdXpuSC8BO44CnFuYKjP4eIRivcsaHvyLULtsgUh5lYzGN8/m/c5zsSDh+CMCqogC5UPfJo/OHWPd2pb00wWU4t2qCDnxbIKBATP8BopBZKqReXJNEgN6b8vUhg+gCwgZB/2Nz8YtDL1Qgb6dKDllIq090tN8vxELWDQ/XpmhpXo2l+vQfZqBy5/2ksVr2roCJf1rKhWwVJ/F/KISZV0nh7xxLooUAl7sPvxAr8o+czp+ySUhTrtvunmB20oyHnYQM4y+RP+/Y6I8/vJlNajq+RklNiaOHosnZGlILHt7igQ6+N/1cKRvSeO121UvJ2bpab+Q3dOurP9ydoIaBUH6rdT16+WTDbqTg1rrg76cK810Bj4woVFTTLfJ9wK3bJp0R7i/e8PVJD9ILYwoOMBa1cPIy8hPsn0t69VelkQURcQ3jX2mkuezH7u6/eapGO4P3qO63nUtAasuTKMbdZ6Zz0gIcV3Il+2MOTusVylfCaVeQ6mLR/pR6nmcPt8OER6zNFB32rbK0SXZjrJA/JSACrbhWjUrkZ0vh4fz54VTqr+1NZMwi1kktre1O91+e+xpjWgYlss8JC7J5ewEivtyB5 X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230028)(4636009)(376002)(39860400002)(396003)(136003)(346002)(451199021)(40470700004)(36840700001)(46966006)(82310400005)(70206006)(70586007)(54906003)(110136005)(2906002)(8936002)(316002)(41300700001)(4326008)(478600001)(336012)(83380400001)(47076005)(7696005)(356005)(82740400003)(81166007)(5660300002)(86362001)(36860700001)(52536014)(8676002)(40460700003)(33656002)(107886003)(26005)(186003)(9686003)(40480700001)(6506007)(55016003);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 Jun 2023 22:53:08.3627 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: a00a812f-3e67-45fb-bb8a-08db78f39b75 X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: DBAEUR03FT056.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR08MB10103 Hi Julien, > -----Original Message----- > Subject: [v2 2/4] xen/arm32: head: Don't map too much in boot_third >=20 > From: Julien Grall >=20 > At the moment, we are mapping the size of the reserved area for Xen > (i.e. 2MB) even if the binary is smaller. We don't exactly know what's > after Xen, so it is not a good idea to map more than necessary for a > couple of reasons: > * We would need to use break-before-make if the extra PTE needs to > be updated to point to another region > * The extra area mapped may be mapped again by Xen with different > memory attribute. This would result to attribute mismatch. >=20 > Therefore, rework the logic in create_page_tables() to map only what's > necessary. To simplify the logic, we also want to make sure _end > is page-aligned. So align the symbol in the linker and add an assert > to catch any change. >=20 > Signed-off-by: Julien Grall > Reviewed-by: Michal Orzel Reviewed-by: Henry Wang Kind regards, Henry From xen-devel-bounces@lists.xenproject.org Thu Jun 29 22:53:36 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 22:53:36 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557193.870328 (Exim 4.92) (envelope-from ) id 1qF0Vy-00089y-Pr; Thu, 29 Jun 2023 22:53:26 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557193.870328; Thu, 29 Jun 2023 22:53:26 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qF0Vy-00089r-NB; Thu, 29 Jun 2023 22:53:26 +0000 Received: by outflank-mailman (input) for mailman id 557193; Thu, 29 Jun 2023 22:53:25 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qF0Vx-000895-CE for xen-devel@lists.xenproject.org; Thu, 29 Jun 2023 22:53:25 +0000 Received: from EUR03-AM7-obe.outbound.protection.outlook.com (mail-am7eur03on20621.outbound.protection.outlook.com [2a01:111:f400:7eaf::621]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id bfd95404-16cf-11ee-8611-37d641c3527e; Fri, 30 Jun 2023 00:53:23 +0200 (CEST) Received: from AS9PR0301CA0013.eurprd03.prod.outlook.com (2603:10a6:20b:468::13) by AS2PR08MB8480.eurprd08.prod.outlook.com (2603:10a6:20b:55e::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.26; Thu, 29 Jun 2023 22:53:21 +0000 Received: from AM7EUR03FT005.eop-EUR03.prod.protection.outlook.com (2603:10a6:20b:468:cafe::b6) by AS9PR0301CA0013.outlook.office365.com (2603:10a6:20b:468::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.22 via Frontend Transport; Thu, 29 Jun 2023 22:53:21 +0000 Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by AM7EUR03FT005.mail.protection.outlook.com (100.127.140.218) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.22 via Frontend Transport; Thu, 29 Jun 2023 22:53:20 +0000 Received: ("Tessian outbound e2424c13b707:v142"); Thu, 29 Jun 2023 22:53:20 +0000 Received: from a17138b072e6.3 by 64aa7808-outbound-1.mta.getcheckrecipient.com id E728C368-C792-44E4-A33D-4107F83D8EC1.1; Thu, 29 Jun 2023 22:53:10 +0000 Received: from EUR03-AM7-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id a17138b072e6.3 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Thu, 29 Jun 2023 22:53:10 +0000 Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15) by PAVPR08MB9040.eurprd08.prod.outlook.com (2603:10a6:102:32d::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.19; Thu, 29 Jun 2023 22:53:08 +0000 Received: from AS8PR08MB7991.eurprd08.prod.outlook.com ([fe80::1024:cf14:d520:9b38]) by AS8PR08MB7991.eurprd08.prod.outlook.com ([fe80::1024:cf14:d520:9b38%7]) with mapi id 15.20.6521.026; Thu, 29 Jun 2023 22:53:08 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: bfd95404-16cf-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=W3O+NPQINfcoHPCY4lAUdpzRJ3KYjwBFVc+9nzp4TtE=; b=YGoVrQtkKEp2jdL9DPHhgE/vYtzx4N1Yjgqanw+1X/D5vfGYRhJxJLqeaGrZUx7faqfoqfccin7OCgWuqMHJbqWggT4ULeixAFK3mGbXlnXtXZDwRIxcYLQwbbt0p5JUa9Kaa0w20z4GObw/ySxQgflhF/WMkGUlqrtmiLFqBwA= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C X-CR-MTA-TID: 64aa7808 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=TdbK5AAzwRlDO/Zgg0R57IaRTeu7B2LhGk2Wyri3sUk/iYoB7Pc1JNVBIuo0eFUy6CXiAB7gWU0nYYSHZf5zVOFUJHucgK2ZKtXCAlAQNTvU3TWQWt/WpP8+kgeJXIxCbKozbGgpMkCHQKE68/vla2HHfefaAUglQ8r/2sQfAjhlwOm67XAVmauHQxqS3d9PXIh9KOkpxPXRk3fTFnEjd2jOBOpLuthhc1OJ2GbmhCBJragtb1K/52kEgU9VipQ1ZBQiyHEiJ6KwDjnAHk/+G4XMdpMLru15vLsmKCNLXH1uby+emR+xfZXL4ZebzDvXD5VBP30yJz84r9YMWHXnnA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=W3O+NPQINfcoHPCY4lAUdpzRJ3KYjwBFVc+9nzp4TtE=; b=C3kZ5XHWJG6x+GYXwMgSBG4qpV/jtbBSTINuLJRPBsKdxlOq03mUKqNaIgah2aUUh1LrLS00/RPvjdlHTtoViiC0I6dUogwQUUt9LKTM50p1ChLzEuiB4exvST3kB3+b3koFlJh30T7UXAo69cwj2s7nXI3C0CpThEPh/0rctp26VVj7Azy9VXvNlpY2LSiooPHQXB7l8nTDqu6TChHj4KBSQC0+D5GNpC6JPctNeL87Co+VicMXN2gcV59nkU1tTBjSk/gt3hLcxt9TJgbnF16CzM3o/YGYr4CszrOUU4yVTboqCVYNUQAsKw1epRu/E43EmtGrwmVKTQuPZJXXWQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=W3O+NPQINfcoHPCY4lAUdpzRJ3KYjwBFVc+9nzp4TtE=; b=YGoVrQtkKEp2jdL9DPHhgE/vYtzx4N1Yjgqanw+1X/D5vfGYRhJxJLqeaGrZUx7faqfoqfccin7OCgWuqMHJbqWggT4ULeixAFK3mGbXlnXtXZDwRIxcYLQwbbt0p5JUa9Kaa0w20z4GObw/ySxQgflhF/WMkGUlqrtmiLFqBwA= From: Henry Wang To: Julien Grall , "xen-devel@lists.xenproject.org" CC: Luca Fancellu , "michal.orzel@amd.com" , Julien Grall , Bertrand Marquis , "sstabellini@kernel.org" Subject: RE: [v2 4/4] xen/arm: Allow the user to build Xen with UBSAN Thread-Topic: [v2 4/4] xen/arm: Allow the user to build Xen with UBSAN Thread-Index: AQHZqsXtbIsbuBfDF0O4wfm2JvsKDK+iYyoQ Date: Thu, 29 Jun 2023 22:53:08 +0000 Message-ID: References: <20230629201129.12934-1-julien@xen.org> <20230629201129.12934-5-julien@xen.org> In-Reply-To: <20230629201129.12934-5-julien@xen.org> Accept-Language: zh-CN, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ts-tracking-id: 26DDA1731E4ADB49B9567C218C098B69.0 x-checkrecipientchecked: true Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-traffictypediagnostic: AS8PR08MB7991:EE_|PAVPR08MB9040:EE_|AM7EUR03FT005:EE_|AS2PR08MB8480:EE_ X-MS-Office365-Filtering-Correlation-Id: 7d0419dd-31b1-4fd3-9fde-08db78f3a2e4 x-checkrecipientrouted: true nodisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: Bu+MQCdKHNsbmn6oqQjAqZOGagzfeoDNirmg27avWV60/pt1GUJ+Y+mXOsawjiHqK/vTRey6jcqKUGhcLL5RPL85h2cfsFBHAM0kJ+CMMvtX2E/0XCs6xu+75tJI1mI9ogmDAsXB3lNJWBhINBJVDRtQ2OhDHOqYSmt3LqYbTdQ8vCA4JdX2sDhdkSIJ/yXxi9fzg1eprTzBO8H6YdXhwMZ/6lvAw9q/4QiTXD//oofFrxla1XrF8E76+uTkr+hR6V522HfqNIn0ueQRTQ7e7/2B0The9BDjyuGa94pCW/RZUWg8RbQhBMoRpaW6mRYNf+uJjY5L81Ss57dwsXdjpiHYF23AbQYy+rmJAApBtDVwRabSNlrT09g4C14Ja2d1xDH22C5WkEBl2d2OLMdQ9S7X+zgNQlVQgiFo+wW7JHlzpPeHINB5D88G5JOEeso6lw1bc2y3ZVg8YbPnn/cqQ6/cYb14DpmfD+oaZgvNn6rE6Tf++il6DfGidgOGG+CjWvX7NZwiLUTU8OKododcR4Fg497QIM9oOTNWUdtLt+CQK1++y1k10HPOf7Qgh4rAzs+cZmVHbxTAHp4xtrXH95HFfLPMHqCLhoeDvS067aMSXYUWcRxm0cv2M4wwESQ7 X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB7991.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(396003)(39860400002)(376002)(366004)(346002)(136003)(451199021)(26005)(186003)(71200400001)(2906002)(4744005)(86362001)(7696005)(55016003)(38070700005)(4326008)(8676002)(8936002)(110136005)(54906003)(316002)(478600001)(122000001)(6506007)(9686003)(38100700002)(5660300002)(33656002)(83380400001)(52536014)(66476007)(66946007)(66556008)(76116006)(64756008)(66446008)(41300700001);DIR:OUT;SFP:1101; Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAVPR08MB9040 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: AM7EUR03FT005.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: 7206b51e-2bca-4b63-670a-08db78f39b58 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: rxyuLWXHVSNIIJrT0kQiUw+97nRjU2OV8pKE7nz5S/jSEMYuIKkJVfAk+1Wfv0+JjJcVIe/hrFD0jyEN44m4z6ESBZHH0R36ToC+BHjnvJ0UCFfNIQMICsbE9jpjHPNRCwU/ahYAPkOydErbqAij/Qo2uT0T3bjGeZ9dkyX9JWXOmmbfuePqc5tOYU1YIe2J0cTSejAPC/HCSC9Yq7IA38pCeAENe9FXoN51F2vL6CeyCK5iEd1G58pTaj8/SvCQVO2HbDNGrGkX4M588YnedBWXN7Hp6S/jc5BwRXWvJnQXbyLHdb3LRb7zXb9jy001OHMG4xl6A9778Xja1sqPCss7E1lu0hunZ3PHWieIqmuZ/QmcrjEL4LS75oWDFnd4z55+A6iwy+ltHsmnxkOOteIFhew35MrttawSjp/UyhROsuWsUQjpGvK2ahn+EM/25lXNdTFhL73KNTv38smWGRROL8Io6GSorqgkNXDMmj5MhEeTMfqJR0JjpKO76xq06eougEVX6evq722/ioeiFQ8RrXsKWtfehqXJ8ZJJIZVF5D0vOG+dSyAT2Smvmi42dJv5GlVs4f1yLgHNxdKL9nQUhWVAzQAqRoZTHtoYJGiHsXJ8QseVA2attCItyTMifYM1OlJNeor+t57EMq4n3N0Mix5Ni0b9+nMv3wi4AT/yN9J3je5imcpGyV/5qy20k9KSQJ6ulY2RRxuXI2Py8c/+LMYVDmBl44im3ZNHunOckX18/c4njyJi7pl6nPY5 X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230028)(4636009)(376002)(136003)(346002)(396003)(39860400002)(451199021)(36840700001)(46966006)(40470700004)(40460700003)(2906002)(186003)(55016003)(7696005)(40480700001)(82310400005)(86362001)(107886003)(9686003)(82740400003)(81166007)(83380400001)(26005)(336012)(6506007)(47076005)(356005)(4744005)(36860700001)(110136005)(41300700001)(54906003)(478600001)(70206006)(316002)(4326008)(33656002)(70586007)(52536014)(5660300002)(8676002)(8936002);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 Jun 2023 22:53:20.7710 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 7d0419dd-31b1-4fd3-9fde-08db78f3a2e4 X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: AM7EUR03FT005.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS2PR08MB8480 Hi Julien, > -----Original Message----- > Subject: [v2 4/4] xen/arm: Allow the user to build Xen with UBSAN >=20 > From: Julien Grall >=20 > UBSAN has been enabled a few years ago on x86 but was never > enabled on Arm because the final binary is bigger than 2MB ( > the maximum we can currently handled). >=20 > With the recent rework, it is now possible to grow Xen over 2MB. > So there is no more roadblock to enable Xen other than increasing > the reserved area. >=20 > On my setup, for arm32, the final binaray was very close to 4MB. > Furthermore, one may want to enable UBSAN and GCOV which would put > the binary well-over 4MB (both features require for some space). > Therefore, increase the size to 8MB which should us some margin. >=20 > Signed-off-by: Julien Grall Reviewed-by: Henry Wang Kind regards, Henry From xen-devel-bounces@lists.xenproject.org Thu Jun 29 22:54:00 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 22:54:00 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557196.870338 (Exim 4.92) (envelope-from ) id 1qF0WM-0000Qq-3L; Thu, 29 Jun 2023 22:53:50 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557196.870338; Thu, 29 Jun 2023 22:53:50 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qF0WL-0000Qj-W7; Thu, 29 Jun 2023 22:53:49 +0000 Received: by outflank-mailman (input) for mailman id 557196; Thu, 29 Jun 2023 22:53:48 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qF0WK-000895-0J for xen-devel@lists.xenproject.org; Thu, 29 Jun 2023 22:53:48 +0000 Received: from EUR04-HE1-obe.outbound.protection.outlook.com (mail-he1eur04on2051.outbound.protection.outlook.com [40.107.7.51]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id cdb4c621-16cf-11ee-8611-37d641c3527e; Fri, 30 Jun 2023 00:53:46 +0200 (CEST) Received: from AS9PR06CA0477.eurprd06.prod.outlook.com (2603:10a6:20b:49a::32) by PAXPR08MB6701.eurprd08.prod.outlook.com (2603:10a6:102:132::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.38; Thu, 29 Jun 2023 22:53:11 +0000 Received: from AM7EUR03FT024.eop-EUR03.prod.protection.outlook.com (2603:10a6:20b:49a:cafe::34) by AS9PR06CA0477.outlook.office365.com (2603:10a6:20b:49a::32) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.22 via Frontend Transport; Thu, 29 Jun 2023 22:53:11 +0000 Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by AM7EUR03FT024.mail.protection.outlook.com (100.127.140.238) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.22 via Frontend Transport; Thu, 29 Jun 2023 22:53:11 +0000 Received: ("Tessian outbound d6c4ee3ba1eb:v142"); Thu, 29 Jun 2023 22:53:11 +0000 Received: from 690facd05a75.3 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 686A98E0-5B82-4AEF-85AA-963DD5AC89CB.1; Thu, 29 Jun 2023 22:53:00 +0000 Received: from EUR03-AM7-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 690facd05a75.3 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Thu, 29 Jun 2023 22:53:00 +0000 Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15) by PAVPR08MB9040.eurprd08.prod.outlook.com (2603:10a6:102:32d::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.19; Thu, 29 Jun 2023 22:52:58 +0000 Received: from AS8PR08MB7991.eurprd08.prod.outlook.com ([fe80::1024:cf14:d520:9b38]) by AS8PR08MB7991.eurprd08.prod.outlook.com ([fe80::1024:cf14:d520:9b38%7]) with mapi id 15.20.6521.026; Thu, 29 Jun 2023 22:52:58 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: cdb4c621-16cf-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=fb0opwtVEAKr/38TBMxRuNOi5yr3x62SzdWm4Mg5AbA=; b=QZO7vOy2xzAcwFosXY0cPTu5WM2XfbfZ8DbTKJ2mvqHWKuvSvqoexPrjvt5OZAWOniQkQCoLrWX8Yk0G4Z+NgPL9+9ARtOGKi9Jbz8cPuSUcpX85iP0/e30XTSu7/cvjl/DOC2tkhtGrrMOlhNebB4UcFn4SP2LWr8CUBne/VlQ= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C X-CR-MTA-TID: 64aa7808 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=MaT9tt5sPB+hSYPQjwcOmeDxm05by5MG+k0DfJExrEmtvDJ0eciI2WcOiqhujdvOc3lBnkh30+Do4y9CU08WFksmE4XTDItMpd84RMUPurNoWK045BxBxjFrfvG5d8jHkqIMbb9HAcE/I4PzU4agUD5MjwfHTZqkwHncUXXcQxQo2h5aHt7l+/FIM8Ot6Jw3pvmKzKrr07n9K8uiRTKysIhsbKSOs5tCs+db2GWOvtQfrFrjGXYL8Tqc/5sFJ6chL/WMtxp4W+MCPFvYiwj9PcNUf8E07JQwhiLAAKVpiFSYZKvdHaO4S0BYEd8viGwZD1GTHSRaSyilGW+BdqLBdw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=fb0opwtVEAKr/38TBMxRuNOi5yr3x62SzdWm4Mg5AbA=; b=dv1LaTxNJeyfIyl+A1U/ZG65Un7Wdkdd3DFdM+EIb25YYmyfyLfmXnAfu1BdOV6Y09qvrxxHRsHBqby4TxNDvdpj8Tz8NolITqvCs2KfZnVH0jEjP5OOrjpaUYwDQGRxk2eJhJIa/p1QGEsTmBb4Jk3ExQACejFJJvknlx/KjXBoTnGXMvgiCtsJMD92nqMG5wTg5sae2IjrkI+sSV+HSnblQBfEj4Hs75b+1hfMfM0lLeA5vzpAzpUEJdRzbJ88yNFxdSmcRranqKylQPbePkeDVyluMrfwZ/mGUmr3FbPiwHMwPyb1O1Q2qG5Qtbk8WfA0tHH0kOYL3T8GZANY3w== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=fb0opwtVEAKr/38TBMxRuNOi5yr3x62SzdWm4Mg5AbA=; b=QZO7vOy2xzAcwFosXY0cPTu5WM2XfbfZ8DbTKJ2mvqHWKuvSvqoexPrjvt5OZAWOniQkQCoLrWX8Yk0G4Z+NgPL9+9ARtOGKi9Jbz8cPuSUcpX85iP0/e30XTSu7/cvjl/DOC2tkhtGrrMOlhNebB4UcFn4SP2LWr8CUBne/VlQ= From: Henry Wang To: Julien Grall , "xen-devel@lists.xenproject.org" CC: Luca Fancellu , "michal.orzel@amd.com" , Julien Grall , Bertrand Marquis , "sstabellini@kernel.org" Subject: RE: [v2 1/4] xen/arm64: head: Don't map too much in boot_third Thread-Topic: [v2 1/4] xen/arm64: head: Don't map too much in boot_third Thread-Index: AQHZqsXsNehRAmncWEmbzZpBKUuCiq+iYfbw Date: Thu, 29 Jun 2023 22:52:58 +0000 Message-ID: References: <20230629201129.12934-1-julien@xen.org> <20230629201129.12934-2-julien@xen.org> In-Reply-To: <20230629201129.12934-2-julien@xen.org> Accept-Language: zh-CN, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ts-tracking-id: 5FBCF154F646D542B26292E7774B57FD.0 x-checkrecipientchecked: true Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-traffictypediagnostic: AS8PR08MB7991:EE_|PAVPR08MB9040:EE_|AM7EUR03FT024:EE_|PAXPR08MB6701:EE_ X-MS-Office365-Filtering-Correlation-Id: 218e0289-938a-4cef-0f9b-08db78f39d41 x-checkrecipientrouted: true nodisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: X1H0H7JI3QJEag0liZ98AHq+JTuoOGxGpGswpEUr+jLkviw8xA7SvjPPQXFwZcRFTFdbFrjgXg2xhEOCjK4RkmlsEvd4w3tv1TQAfGuBbAdtQk1KiuRfWJGEqpZxPRZP78IxDCz2PUlEbauQRvAgvmwdyee4/2yCeOxfRIxgQIc0EI/rbXycnED//0MMeCh6TheHuatOsNgH1LwU2r4Uav7SXnNFczbZAZmFDedKRkErcP19B5K8H0hMkg0zEmM1w30k36WbsFt8C22ESG3ee1Ku13fCcRtDyZK9UqgDIx8awwGvGNX2XL5Tdxrq1b2CFsa9J6TXTk/VP6qvqxeE+7d6f4GX/G7Cz06gcD8ha+GYISE2usJwsxHcqCX4lMVjnyUSAMrZ2cWQjCJSA0Vf5I7OtQnJYDn8EW43Ya3k5vBnGOppUsSYZAY4RSYBzK+pqWdwq1G+i57TQf98+UEtS4ACi9KRndwvosm9k7Yd6fpNTHjYRuaBgzlmKR+/fJKQ+ktvJJyrE4gBTjByN0piNz9/5AAkrUCwHrKQwn7EPKA/6WJwNUV4TooBcr9a+qTfFGKUg9p5y3T/YLrfduehuMGTovyJq79mXZuOaf6B5xxS9KMFSwUws28R8vNywtna X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB7991.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(396003)(39860400002)(376002)(366004)(346002)(136003)(451199021)(26005)(186003)(71200400001)(2906002)(86362001)(7696005)(55016003)(38070700005)(4326008)(8676002)(8936002)(110136005)(54906003)(316002)(478600001)(122000001)(6506007)(9686003)(38100700002)(5660300002)(33656002)(83380400001)(52536014)(66476007)(66946007)(66556008)(76116006)(64756008)(66446008)(41300700001);DIR:OUT;SFP:1101; Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAVPR08MB9040 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: AM7EUR03FT024.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: 35072844-ef5c-4b4b-5b4c-08db78f3956c X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: YZu1YlILBjGtRs3ANcoum5RAqSMwQqy0KYV22axypnSfgNOtBjgpejkDt7d9IT0zMfIehIOvMt5SFAuCv/PCNA5xTqEN7ukH7s8czFYsE098IUcdrJ3nZ5bcQJSJhQHZWHKX02McMw1kh3InYOYmO2O5jJOC75gigQv2NVjiCFMzrM1Q+0R37w5qC0PkDoTGfRF01xNUosQtALbOL2VJri9WYYrKnd1rTrD5cSo9KmCs/3wUYhcyodJF7JWC0x7rDIMbnxyrdfR9MKfIRxRlcsjf8FmL29HYAezbDNh4bAU13antRpZQPzrQNveN+g3UD6HAguy/iGa85MMxH1f+bn5bh5kd5MN2BMfxfzD5/Eign9flanHEE3J7r+Jkslu11ZocDq9mSfXU/LhsIultbaQbDp5P5Rp5NbqEs9dzm8XvUqOAyHM4P5U95g78ZI70C0zCwTiWeBPDR6JOj2mQLc1+ChdSMJMg9T6zOUCw6qn9z92BnyteGWYCdQ8MmN4a7fE0jJH44r/EhiN90q7477fSfK6YJiw3lVKO4c57vQS4isZEjZvLfZN3CKjoqVs1blR02OTT64UcALtO1xa5w8HISlvHIDITyMpLVp0WdUl9mjX804zxuSzyamdA9eSqeeiQer4Ek7rcgmkBTAdSgJ2G2GE8VEG6zpnEUmZJvvT/8Elu5luvQH0I/+RpAK6ETai5iOdSxyG4cEQN2wgRoEfOzHDuamj0hxA7rSI55jAX9KkRHTFPnYvcJGX6gO3C X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230028)(4636009)(346002)(396003)(376002)(39860400002)(136003)(451199021)(36840700001)(46966006)(40470700004)(83380400001)(86362001)(6506007)(82310400005)(2906002)(26005)(186003)(9686003)(356005)(81166007)(107886003)(47076005)(336012)(40480700001)(36860700001)(52536014)(70586007)(33656002)(40460700003)(5660300002)(70206006)(41300700001)(316002)(8936002)(8676002)(55016003)(82740400003)(7696005)(54906003)(4326008)(478600001)(110136005);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 Jun 2023 22:53:11.3104 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 218e0289-938a-4cef-0f9b-08db78f39d41 X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: AM7EUR03FT024.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR08MB6701 Hi Julien, > -----Original Message----- > Subject: [v2 1/4] xen/arm64: head: Don't map too much in boot_third >=20 > From: Julien Grall >=20 > At the moment, we are mapping the size of the reserved area for Xen > (i.e. 2MB) even if the binary is smaller. We don't exactly know what's > after Xen, so it is not a good idea to map more than necessary for a > couple of reasons: > * We would need to use break-before-make if the extra PTE needs to > be updated to point to another region > * The extra area mapped may be mapped again by Xen with different > memory attribute. This would result to attribute mismatch. >=20 > Therefore, rework the logic in create_page_tables() to map only what's > necessary. To simplify the logic, we also want to make sure _end > is page-aligned. So align the symbol in the linker and add an assert > to catch any change. >=20 > Lastly, take the opportunity to confirm that _start is equal to > XEN_VIRT_START as the assembly is using both interchangeably. >=20 > Signed-off-by: Julien Grall Reviewed-by: Henry Wang Kind regards, Henry From xen-devel-bounces@lists.xenproject.org Thu Jun 29 22:59:14 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 22:59:14 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557205.870348 (Exim 4.92) (envelope-from ) id 1qF0bP-0001Dh-O7; Thu, 29 Jun 2023 22:59:03 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557205.870348; Thu, 29 Jun 2023 22:59:03 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qF0bP-0001Da-J9; Thu, 29 Jun 2023 22:59:03 +0000 Received: by outflank-mailman (input) for mailman id 557205; Thu, 29 Jun 2023 22:59:02 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qF0bO-0001DQ-Kw; Thu, 29 Jun 2023 22:59:02 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qF0bO-0001zA-5l; Thu, 29 Jun 2023 22:59:02 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qF0bN-0003ra-O6; Thu, 29 Jun 2023 22:59:01 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qF0bN-0000R1-Ng; Thu, 29 Jun 2023 22:59:01 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=AuyPoE3EyNYldeXuMw8id9f/FyX5gi2ajQaEv4Y57Vo=; b=Ta6o3kp2V2Li7yMvs3Ce0Ch6aF EKUOTqLVGkpTpsUjPZcaOiGmZifyz4oZhn+bRcS8Jp91bdqQXX8g3g7NyNlXTgcoeQUFsLgnL5P2A vZxo+HxLm0hEpBmBG+uiCDW9Yp+NQ0KmwbPcNCvWFbL8aTknt4IfmYTbipIQUSC7ocTo=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable-smoke test] 181643: tolerable all pass - PUSHED X-Osstest-Failures: xen-unstable-smoke:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking xen-unstable-smoke:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking xen-unstable-smoke:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking xen-unstable-smoke:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking xen-unstable-smoke:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: xen=2a6da58442ded2b6199f0ff15f5d8a85ab923d85 X-Osstest-Versions-That: xen=5b9c96a808efdc004a876c03c2ea0bd0c5358812 From: osstest service owner Date: Thu, 29 Jun 2023 22:59:01 +0000 flight 181643 xen-unstable-smoke real [real] http://logs.test-lab.xenproject.org/osstest/logs/181643/ Failures :-/ but no regressions. Tests which did not succeed, but are not blocking: test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-armhf-armhf-xl 15 migrate-support-check fail never pass test-armhf-armhf-xl 16 saverestore-support-check fail never pass version targeted for testing: xen 2a6da58442ded2b6199f0ff15f5d8a85ab923d85 baseline version: xen 5b9c96a808efdc004a876c03c2ea0bd0c5358812 Last test of basis 181634 2023-06-28 23:06:35 Z 0 days Testing same since 181643 2023-06-29 20:01:53 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Henry Wang Julien Grall Julien Grall Michal Orzel Nicola Vetrini Stefano Stabellini jobs: build-arm64-xsm pass build-amd64 pass build-armhf pass build-amd64-libvirt pass test-armhf-armhf-xl pass test-arm64-arm64-xl-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-libvirt pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Pushing revision : To xenbits.xen.org:/home/xen/git/xen.git 5b9c96a808..2a6da58442 2a6da58442ded2b6199f0ff15f5d8a85ab923d85 -> smoke From xen-devel-bounces@lists.xenproject.org Thu Jun 29 23:03:23 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 23:03:23 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557211.870358 (Exim 4.92) (envelope-from ) id 1qF0fV-0002hw-6c; Thu, 29 Jun 2023 23:03:17 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557211.870358; Thu, 29 Jun 2023 23:03:17 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qF0fV-0002hp-3n; Thu, 29 Jun 2023 23:03:17 +0000 Received: by outflank-mailman (input) for mailman id 557211; Thu, 29 Jun 2023 23:03:15 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qF0fT-0002hj-Ry for xen-devel@lists.xenproject.org; Thu, 29 Jun 2023 23:03:15 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 1f5020c2-16d1-11ee-8611-37d641c3527e; Fri, 30 Jun 2023 01:03:13 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id DD00061635; Thu, 29 Jun 2023 23:03:11 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 62378C433C0; Thu, 29 Jun 2023 23:03:10 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 1f5020c2-16d1-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1688079791; bh=7kJ2H8hhfmIt4v0p5Dt7LXPajHpuCt+iJnYbZNQYHQo=; h=Date:From:To:cc:Subject:In-Reply-To:References:From; b=dyvEw4QKppmRQufunL6f6ympU2Fd8mpuxOwHWtG5um/dstJiVX3FuhpHisbH0P23T EshykUUEXidlirCGPOdApTi7xlQC8lJMG3lXV+oLYjc6vhZXqVTTbbcjRvTAbpuAvD yVdzA7XcoHX+jdcRFTSNI4LSZtTjZ/rCU9L3pPHbMtXQdjDitzmPHkiux+t2cvWDBO 7a6WFB5vRn80P0ubmpQ7AeCmrRGiGSr9+wrAfhU/YQfpMFhmjvgXWD7y015JgNwvsx N9igUgHv+4993Ib43rKxRJ9rQvQzXNsHRkh3XgD/F030zyob1VapBPQRdbUCVSzh3q NiIyYVoHa9VyA== Date: Thu, 29 Jun 2023 16:03:09 -0700 (PDT) From: Stefano Stabellini X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop To: Henry Wang cc: xen-devel@lists.xenproject.org, Stefano Stabellini , Julien Grall , Bertrand Marquis , Wei Chen , Volodymyr Babchuk Subject: Re: [PATCH] xen/arm: vgic: Add missing 'U' in VGIC_ICFG_MASK for shifted constant In-Reply-To: <20230629221800.1478182-1-Henry.Wang@arm.com> Message-ID: References: <20230629221800.1478182-1-Henry.Wang@arm.com> User-Agent: Alpine 2.22 (DEB 394 2020-01-19) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII On Fri, 30 Jun 2023, Henry Wang wrote: > With UBSAN on some arm64 platforms, e.g. FVP_Base_RevC-2xAEMvA, the > following splat will be printed while Dom0 is booting: > ``` > (XEN) ================================================================== > (XEN) UBSAN: Undefined behaviour in arch/arm/vgic.c:372:15 > (XEN) left shift of 1 by 31 places cannot be represented in type 'int' > (XEN) Xen WARN at common/ubsan/ubsan.c:172 > (XEN) ----[ Xen-4.18-unstable arm64 debug=y ubsan=y Not tainted ]---- > ``` > > This is because there is a device node in the device tree with 0xf > as the interrupts property. Example of the device tree node is shown > below: > ``` > ethernet@202000000 { > compatible = "smsc,lan91c111"; > reg = <0x2 0x2000000 0x10000>; > interrupts = <0xf>; > }; > ``` > and this value is passed to vgic_get_virq_type() as "index" then "intr" > in VGIC_ICFG_MASK. > > Add the missing 'U' in VGIC_ICFG_MASK as a fix, and this should also > addressing MISRA Rule 7.2: > > A "u" or "U" suffix shall be applied to all integer constants that > are represented in an unsigned type > > Signed-off-by: Henry Wang Reviewed-by: Stefano Stabellini > --- > This patch should be based on top of Julien's series > "xen/arm: Enable UBSAN support" to test. > --- > xen/arch/arm/vgic.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/xen/arch/arm/vgic.c b/xen/arch/arm/vgic.c > index c61c68870c..97d6f61066 100644 > --- a/xen/arch/arm/vgic.c > +++ b/xen/arch/arm/vgic.c > @@ -358,7 +358,7 @@ void vgic_disable_irqs(struct vcpu *v, uint32_t r, int n) > } > } > > -#define VGIC_ICFG_MASK(intr) (1 << ((2 * ((intr) % 16)) + 1)) > +#define VGIC_ICFG_MASK(intr) (1U << ((2 * ((intr) % 16)) + 1)) > > /* The function should be called with the rank lock taken */ > static inline unsigned int vgic_get_virq_type(struct vcpu *v, int n, int index) > -- > 2.25.1 > From xen-devel-bounces@lists.xenproject.org Thu Jun 29 23:07:53 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Thu, 29 Jun 2023 23:07:53 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557217.870368 (Exim 4.92) (envelope-from ) id 1qF0jo-0003Ol-RV; Thu, 29 Jun 2023 23:07:44 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557217.870368; Thu, 29 Jun 2023 23:07:44 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qF0jo-0003Oe-OQ; Thu, 29 Jun 2023 23:07:44 +0000 Received: by outflank-mailman (input) for mailman id 557217; Thu, 29 Jun 2023 23:07:43 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qF0jn-0003OY-Mw for xen-devel@lists.xenproject.org; Thu, 29 Jun 2023 23:07:43 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id bf107eaf-16d1-11ee-8611-37d641c3527e; Fri, 30 Jun 2023 01:07:41 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 277366157B; Thu, 29 Jun 2023 23:07:40 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 644A7C433C8; Thu, 29 Jun 2023 23:07:38 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: bf107eaf-16d1-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1688080059; bh=eHuxqGCOgEpGzPJjVKPT+fqxuNUX2ko7dB92ou2+uW0=; h=Date:From:To:cc:Subject:In-Reply-To:References:From; b=C7csTxqxqzNxB/cbYbTunsfo7spfdHc9fF6G4aW9eO2ehxs8FuP2dfZYs0Nf+GHCI BiwR+uUewrJU35FFT/2BwaBbwbIw5Y6YkJ0Ny0onfNpUG198i1mK+21xjjSthKcmji WbwOqgXTiULvJfzdzbzuodyhUapjgyLCMHj0k/x/lTmYtiole4mkEUiuGqmObYbYMr HdfFUX25Jz6sQLjje5ceTHug0ukPRP61xB7CghmylEeWf4bI20ALarycYuLyst924/ 4gZc7H+fXidyv80j8NiS3X9ALDK5Pp5/JSDggi84lJvAgbb98C3WBdYVFgCpkahtgv ZBhu3GAL2BtkA== Date: Thu, 29 Jun 2023 16:07:37 -0700 (PDT) From: Stefano Stabellini X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop To: Julien Grall cc: xen-devel@lists.xenproject.org, Luca.Fancellu@arm.com, michal.orzel@amd.com, Henry.Wang@arm.com, Julien Grall , federico.serafini@bugseng.com, Bertrand Marquis , Stefano Stabellini Subject: Re: [PATCH] xen/arm: grant-table: Correct the prototype of the arch helpers In-Reply-To: <49bf12fb-8c71-40d9-a40b-ddcfa24356df@xen.org> Message-ID: References: <20230629210150.69525-1-julien@xen.org> <49bf12fb-8c71-40d9-a40b-ddcfa24356df@xen.org> User-Agent: Alpine 2.22 (DEB 394 2020-01-19) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII On Thu, 29 Jun 2023, Julien Grall wrote: > Sorry I forgot to CC Bertrand and Stefano. > > > On 29/06/2023 22:01, Julien Grall wrote: > > From: Julien Grall > > > > Both the stub and the x86 prototypes for replace_grant_host_mapping() > > and create_grant_host_mapping() will define the first parameter (and > > third for the former) as uint64_t. Yet Arm will define it as > > 'unsigned long'. > > > > While there are no differences for 64-bit, for 32-bit it means > > that the address should be truncated as 32-bit guest could support > > up to 40-bit addresses. > > > > So replace 'unsigned long' with 'uint64_t' for the first parameter > > (and third parameter for replace_grant_host_mapping()). > > > > Signed-off-by: Julien Grall Acked-by: Stefano Stabellini > > --- > > > > Cc: federico.serafini@bugseng.com > > --- > > xen/arch/arm/include/asm/grant_table.h | 6 +++--- > > xen/arch/arm/mm.c | 6 +++--- > > 2 files changed, 6 insertions(+), 6 deletions(-) > > > > diff --git a/xen/arch/arm/include/asm/grant_table.h > > b/xen/arch/arm/include/asm/grant_table.h > > index f2d115b97d8b..d3c518a926b9 100644 > > --- a/xen/arch/arm/include/asm/grant_table.h > > +++ b/xen/arch/arm/include/asm/grant_table.h > > @@ -36,10 +36,10 @@ static inline bool gnttab_release_host_mappings(const > > struct domain *d) > > return true; > > } > > -int create_grant_host_mapping(unsigned long gpaddr, mfn_t frame, > > +int create_grant_host_mapping(uint64_t gpaddr, mfn_t frame, > > unsigned int flags, unsigned int > > cache_flags); > > -int replace_grant_host_mapping(unsigned long gpaddr, mfn_t frame, > > - unsigned long new_gpaddr, unsigned int > > flags); > > +int replace_grant_host_mapping(uint64_t gpaddr, mfn_t frame, > > + uint64_t new_gpaddr, unsigned int flags); > > /* > > * The region used by Xen on the memory will never be mapped in DOM0 > > diff --git a/xen/arch/arm/mm.c b/xen/arch/arm/mm.c > > index 0a3e1f3b64b6..53773368d036 100644 > > --- a/xen/arch/arm/mm.c > > +++ b/xen/arch/arm/mm.c > > @@ -1579,7 +1579,7 @@ void put_page_type(struct page_info *page) > > return; > > } > > -int create_grant_host_mapping(unsigned long gpaddr, mfn_t frame, > > +int create_grant_host_mapping(uint64_t gpaddr, mfn_t frame, > > unsigned int flags, unsigned int > > cache_flags) > > { > > int rc; > > @@ -1600,8 +1600,8 @@ int create_grant_host_mapping(unsigned long gpaddr, > > mfn_t frame, > > return GNTST_okay; > > } > > -int replace_grant_host_mapping(unsigned long gpaddr, mfn_t frame, > > - unsigned long new_gpaddr, unsigned int > > flags) > > +int replace_grant_host_mapping(uint64_t gpaddr, mfn_t frame, > > + uint64_t new_gpaddr, unsigned int flags) > > { > > gfn_t gfn = gaddr_to_gfn(gpaddr); > > struct domain *d = current->domain; > > -- > Julien Grall > From xen-devel-bounces@lists.xenproject.org Fri Jun 30 00:46:56 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 30 Jun 2023 00:46:56 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557221.870378 (Exim 4.92) (envelope-from ) id 1qF2HT-0005q9-FY; Fri, 30 Jun 2023 00:46:35 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557221.870378; Fri, 30 Jun 2023 00:46:35 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qF2HT-0005q2-Ct; Fri, 30 Jun 2023 00:46:35 +0000 Received: by outflank-mailman (input) for mailman id 557221; Fri, 30 Jun 2023 00:46:34 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qF2HS-0005pt-RC for xen-devel@lists.xenproject.org; Fri, 30 Jun 2023 00:46:34 +0000 Received: from EUR02-VI1-obe.outbound.protection.outlook.com (mail-vi1eur02on20620.outbound.protection.outlook.com [2a01:111:f400:fe16::620]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 8e32016b-16df-11ee-b237-6b7b168915f2; Fri, 30 Jun 2023 02:46:31 +0200 (CEST) Received: from AS9PR0301CA0054.eurprd03.prod.outlook.com (2603:10a6:20b:469::12) by DB9PR08MB6603.eurprd08.prod.outlook.com (2603:10a6:10:25a::5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.19; Fri, 30 Jun 2023 00:46:28 +0000 Received: from AM7EUR03FT059.eop-EUR03.prod.protection.outlook.com (2603:10a6:20b:469:cafe::19) by AS9PR0301CA0054.outlook.office365.com (2603:10a6:20b:469::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.22 via Frontend Transport; Fri, 30 Jun 2023 00:46:28 +0000 Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by AM7EUR03FT059.mail.protection.outlook.com (100.127.140.215) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.21 via Frontend Transport; Fri, 30 Jun 2023 00:46:27 +0000 Received: ("Tessian outbound c63645f235c1:v142"); Fri, 30 Jun 2023 00:46:27 +0000 Received: from 16284118fde7.3 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 6919367E-724A-45B8-9852-CD8DEF232850.1; Fri, 30 Jun 2023 00:46:16 +0000 Received: from EUR05-VI1-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 16284118fde7.3 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Fri, 30 Jun 2023 00:46:16 +0000 Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15) by DB9PR08MB7495.eurprd08.prod.outlook.com (2603:10a6:10:36c::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.26; Fri, 30 Jun 2023 00:46:13 +0000 Received: from AS8PR08MB7991.eurprd08.prod.outlook.com ([fe80::1024:cf14:d520:9b38]) by AS8PR08MB7991.eurprd08.prod.outlook.com ([fe80::1024:cf14:d520:9b38%7]) with mapi id 15.20.6521.026; Fri, 30 Jun 2023 00:46:13 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 8e32016b-16df-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Hk0AC1RR/0yRhUanGPKRace5jssaaF2t07UhAg3FgKM=; b=I+9bCVHwX+bB+9YZsBvrn4iV6Uz9UMucevNXRpGSHf9yMXbbQeGNY3SDhSG5U11EMVOHfq+GURH8l9q5tdsqiFsagXgEL2zlf4UxLyPbudWqGzH015yj5H88MzkGhm5B05of/tBNuSQHht0OCXn4YBXMrsMq/O02VPdwegrkM8g= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C X-CheckRecipientChecked: true X-CR-MTA-CID: c6e356c481201c5e X-CR-MTA-TID: 64aa7808 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=mZ0PyY+gX/3UCsxWG7w0HZSFh9f/qOD4Saylw0Vj5+pd+vi8nh+rQpH06iKUJEQojHzQU4jD728biqLI5IXgu60jA56R4ZBgoKF5Qz8Cj4HWlmKGyoNu5MBaAIbhraZNETjjrnNySP5Pke61C7zQRxnFJwYOaJxW3655h8hukywYQf2j79/o15gBWtEQYDnNoTUFoCoellOmPe+i8hp+btHZ7hasYL2F2Zjuj6qpux+M6GHC44iXSSZUPzRRJ1s/enQLk1BGcJHrnKE2QrgWmmBS8Avpl+VO2KrnTDH7mUatA8vx0Eof1GewTlpVrFE6XbrrvKNXkVJpDJu3zETqkQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=Hk0AC1RR/0yRhUanGPKRace5jssaaF2t07UhAg3FgKM=; b=ZdTIXS+6XWM8zPxVLkoD11LqOovj5XV548IQA1hMgbwm+ztaUB7FhexK6PF797Gvcascl9iuYrEBN3UMhP81AZ8fLdbT0MPyTA2ZgfuzxIqqA7iS+kwEhuISk2n2slCcdSr7ZKxkiKm1LrNfl0/RxMJK0xDKRNDodJn5I5w+y8vYodwlQgaLLNjHd1xQf8vn1/rSFVIEgoA7/Uq/2KIwG53eaZDJSCwnLQgnrDrjFLGh7RCuiE330pjWan0cyhFWmGhVtyEON17JoRnB4KRdL/DgqsNRyvr0nuR8HAYfrzd0lsWWPxgk0W56mIXk5CSV5diDjCRDQi7Yy7+MAS7FGA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Hk0AC1RR/0yRhUanGPKRace5jssaaF2t07UhAg3FgKM=; b=I+9bCVHwX+bB+9YZsBvrn4iV6Uz9UMucevNXRpGSHf9yMXbbQeGNY3SDhSG5U11EMVOHfq+GURH8l9q5tdsqiFsagXgEL2zlf4UxLyPbudWqGzH015yj5H88MzkGhm5B05of/tBNuSQHht0OCXn4YBXMrsMq/O02VPdwegrkM8g= From: Henry Wang To: Julien Grall , "xen-devel@lists.xenproject.org" CC: Luca Fancellu , "michal.orzel@amd.com" , Julien Grall , "federico.serafini@bugseng.com" , Bertrand Marquis , "sstabellini@kernel.org" Subject: RE: [PATCH] xen/arm: grant-table: Correct the prototype of the arch helpers Thread-Topic: [PATCH] xen/arm: grant-table: Correct the prototype of the arch helpers Thread-Index: AQHZqsz3/pX1kq6zlkOe7xuFvx2f0K+iWuww Date: Fri, 30 Jun 2023 00:46:13 +0000 Message-ID: References: <20230629210150.69525-1-julien@xen.org> In-Reply-To: <20230629210150.69525-1-julien@xen.org> Accept-Language: zh-CN, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ts-tracking-id: 8537D58098736B4B818DE4EB3E8FEECD.0 Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-traffictypediagnostic: AS8PR08MB7991:EE_|DB9PR08MB7495:EE_|AM7EUR03FT059:EE_|DB9PR08MB6603:EE_ X-MS-Office365-Filtering-Correlation-Id: 3545adc8-ee34-4c46-0675-08db79037019 x-checkrecipientrouted: true nodisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: oyT0x48iidKJ983D2rbdvUovGTCbuaesjamC44bVR9fKXBHISpoafYGkf+gvUw498CiF7A57ETe2f29dJlVfQxIT0SmhT0oquyLI4t9MIZpuEjm3eIIjLLCSarSDD7c4G9HDBbmnFSWsWHq09CaKNyWp4whjygKp8oau+86gbgAv65hc9o9OfuqEMBQ4HQdurb63X0ho6R/8BvXRpKqUjTKwFSvjtludv4y0MYAr1sdIB8hBsO/FbriY48Me03uNn9u9EM9739kCBCTwwOMnieiy4gxj3FhnWBksD4p3e7045v0H2KdD2EW1P56GicfT4e7ZJ+UDCvJvcddWa5c2rYnPh/CHsSmRJv6JNoIve4PGUaR7QR4+q2EH9rEbFbgOzxuAJDlvIY45YlpdMyxuttyLvmjosvu9NpN5Iz08Gm3h4VUvT+6WeodU1w/bSJWzFHtMlvgj7Fj/mYjQjrxlYO/+EZsgPi+z6yAYdE4UheLlTTjop1zsvenkEfdxYcc9s16DSDL2Rz5dYPyg4NJkQxsUeU9iJpAaiexOH/QL2m0pxXmtbYwGzL0gz8tQ8g5nliDCyLHoXJwO8k5yj0XkMvvQg/1mc2Ic26iMMW9M9LUjiRst0HbdccDLYo1J4SeZ X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB7991.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(376002)(39860400002)(346002)(366004)(396003)(136003)(451199021)(9686003)(26005)(4326008)(66476007)(66556008)(38070700005)(8936002)(6506007)(110136005)(7696005)(478600001)(54906003)(2906002)(83380400001)(186003)(4744005)(71200400001)(33656002)(66946007)(76116006)(52536014)(55016003)(38100700002)(64756008)(5660300002)(86362001)(122000001)(8676002)(316002)(41300700001)(66446008);DIR:OUT;SFP:1101; Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR08MB7495 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: AM7EUR03FT059.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: 96bf205d-1540-4ede-7fbb-08db790367c2 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: EZiO+I+EfWBPBJBdIwTpvrNZ8S0DqAZ0dh2saIutwsXBsXM/KLn8czUxtkMyFUPyPEzmKrxV3MD+daD4qCclBueSATkltHQ8OFMC37FYuLhFY3GXHV1bRittvUldlQvh6r80FEHsutAcgGyDi5aVmgNBmu9Ppo4IVSYCgbR096ujKss2lzB7hpZX1zeTv7Z8cS9x/K9smtlxz03kaoqmQyxsjOxnkfaoNhMCH4l0q9EFnrPls4u4fzCQKFqZcQAgw+VmsEgN11u3qlxcL337BRJNN/iLewJyu5ONo5K/6ztwN4hzHnTtPXUavdBYGUrdNP2XrdQK/CRacT1g9Dd/QUpXulyG8eda/uxT3WBdcfP+VJ7A4BYaqaG5WdPNKI9ghQ23FrPhki6H2hvQdTj578KIzNgphmvGs9rh1m2JrDiWAXwnZ0Mm6iBAu/A9UcaUhAYssRCn7sitj7ajA3IIWvJExakI9oakjfHUBz++/7telZrYZ9TfgbiZg8NapUaefFMKkr044Y/6VyGyS2UMrK+Pw+t3pV0Mm/mPDroYG2VILzrZ1+LAgTCAgnNh2MZw9Po8SJCcMG4zfhQDBmyCcTxPEW4Pog99oUwvzs1dxY7yaqugAGOSQEcRNHiiXOzXEkv+qx72L2iyF3J4x7WUtmFxDltEQavtbyfjYJmUqD3Chsx9+GAQFYRXqKVwO3KEsZzOtqsjDFxYgGeHE4buTihC8M+O++yZR2mhcSQwpAfGbb6VFO9Ta67CjD7NjZP3 X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230028)(4636009)(136003)(376002)(396003)(346002)(39860400002)(451199021)(36840700001)(46966006)(40470700004)(82310400005)(36860700001)(40460700003)(33656002)(70206006)(356005)(52536014)(4744005)(5660300002)(8676002)(41300700001)(8936002)(40480700001)(316002)(86362001)(4326008)(82740400003)(55016003)(70586007)(81166007)(107886003)(47076005)(6506007)(9686003)(26005)(2906002)(186003)(7696005)(478600001)(54906003)(110136005)(83380400001)(336012);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Jun 2023 00:46:27.4983 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 3545adc8-ee34-4c46-0675-08db79037019 X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: AM7EUR03FT059.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR08MB6603 Hi Julien, > -----Original Message----- > Subject: [PATCH] xen/arm: grant-table: Correct the prototype of the arch > helpers >=20 > From: Julien Grall >=20 > Both the stub and the x86 prototypes for replace_grant_host_mapping() > and create_grant_host_mapping() will define the first parameter (and > third for the former) as uint64_t. Yet Arm will define it as > 'unsigned long'. >=20 > While there are no differences for 64-bit, for 32-bit it means > that the address should be truncated as 32-bit guest could support > up to 40-bit addresses. >=20 > So replace 'unsigned long' with 'uint64_t' for the first parameter > (and third parameter for replace_grant_host_mapping()). >=20 > Signed-off-by: Julien Grall Reviewed-by: Henry Wang Tested-by: Henry Wang Kind regards, Henry From xen-devel-bounces@lists.xenproject.org Fri Jun 30 02:01:42 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 30 Jun 2023 02:01:42 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557227.870388 (Exim 4.92) (envelope-from ) id 1qF3Rv-0004BP-Sx; Fri, 30 Jun 2023 02:01:27 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557227.870388; Fri, 30 Jun 2023 02:01:27 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qF3Rv-0004BH-Mj; Fri, 30 Jun 2023 02:01:27 +0000 Received: by outflank-mailman (input) for mailman id 557227; Fri, 30 Jun 2023 02:01:26 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qF3Ru-0004B6-8g; Fri, 30 Jun 2023 02:01:26 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qF3Ru-0005Oo-25; Fri, 30 Jun 2023 02:01:26 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qF3Rt-00088x-FP; Fri, 30 Jun 2023 02:01:25 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qF3Rt-0000ie-Ex; Fri, 30 Jun 2023 02:01:25 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=oibWPYyNRCdtebQz0d8vsLa1CNeP3tDEa/scDJBJJCk=; b=YfRBvwexVt5Sn1xULlkIs4KDNb uJpNbDL6iS6MNLK09DHUr03FU0JewhWhy1pXIaummtdzdZDbPB2aTLiN1lA1L9PzJC5CCWAvRcUox IMHEeR6S83mAQSrpAg0ScNj8UrA3/bWxrlDjYZgRoN3A2sosBwguF0Y+nmTVlKN1EzD0=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable-smoke test] 181645: tolerable all pass - PUSHED X-Osstest-Failures: xen-unstable-smoke:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking xen-unstable-smoke:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking xen-unstable-smoke:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking xen-unstable-smoke:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking xen-unstable-smoke:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: xen=6aa0c18062609cb448d292668a81953a58ce1e95 X-Osstest-Versions-That: xen=2a6da58442ded2b6199f0ff15f5d8a85ab923d85 From: osstest service owner Date: Fri, 30 Jun 2023 02:01:25 +0000 flight 181645 xen-unstable-smoke real [real] http://logs.test-lab.xenproject.org/osstest/logs/181645/ Failures :-/ but no regressions. Tests which did not succeed, but are not blocking: test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-armhf-armhf-xl 15 migrate-support-check fail never pass test-armhf-armhf-xl 16 saverestore-support-check fail never pass version targeted for testing: xen 6aa0c18062609cb448d292668a81953a58ce1e95 baseline version: xen 2a6da58442ded2b6199f0ff15f5d8a85ab923d85 Last test of basis 181643 2023-06-29 20:01:53 Z 0 days Testing same since 181645 2023-06-29 23:01:58 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Ayan Kumar Halder Juergen Gross Julien Grall jobs: build-arm64-xsm pass build-amd64 pass build-armhf pass build-amd64-libvirt pass test-armhf-armhf-xl pass test-arm64-arm64-xl-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-libvirt pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Pushing revision : To xenbits.xen.org:/home/xen/git/xen.git 2a6da58442..6aa0c18062 6aa0c18062609cb448d292668a81953a58ce1e95 -> smoke From xen-devel-bounces@lists.xenproject.org Fri Jun 30 02:06:16 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 30 Jun 2023 02:06:16 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557233.870398 (Exim 4.92) (envelope-from ) id 1qF3WZ-0004oW-C6; Fri, 30 Jun 2023 02:06:15 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557233.870398; Fri, 30 Jun 2023 02:06:15 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qF3WZ-0004oP-97; Fri, 30 Jun 2023 02:06:15 +0000 Received: by outflank-mailman (input) for mailman id 557233; Fri, 30 Jun 2023 02:06:14 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qF3WY-0004oF-N9; Fri, 30 Jun 2023 02:06:14 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qF3WY-0005Tq-Jj; Fri, 30 Jun 2023 02:06:14 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qF3WY-0008FP-1E; Fri, 30 Jun 2023 02:06:14 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qF3WY-0003oh-0c; Fri, 30 Jun 2023 02:06:14 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=z8SYCvH+TOMtssRKPuI26l3LFcxssSyZ5UkLhSyNKYI=; b=XqmqI+mkeo5zw+oQQP6FjdKqWC uAC7PPGRVIjW6k4zeJGrLkH9mh1aH82KGg55NHs6w7bomFE8tDy7ZWCCOfIzLBgKntyyhg9N2gII8 COAfowp18pNi5XowpPuEDN5PhKosf7UNQFD6kQ7BwDMZSKJdL9EFBaeQ6Km/Ppcm9E/U=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable test] 181642: regressions - FAIL X-Osstest-Failures: xen-unstable:build-amd64:xen-build:fail:regression xen-unstable:build-i386-prev:xen-build:fail:regression xen-unstable:build-i386-xsm:xen-build:fail:regression xen-unstable:test-amd64-i386-examine-bios:build-check(1):blocked:nonblocking xen-unstable:test-amd64-i386-examine-uefi:build-check(1):blocked:nonblocking xen-unstable:test-amd64-i386-freebsd10-amd64:build-check(1):blocked:nonblocking xen-unstable:test-amd64-i386-freebsd10-i386:build-check(1):blocked:nonblocking xen-unstable:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking xen-unstable:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking xen-unstable:test-amd64-i386-libvirt-raw:build-check(1):blocked:nonblocking xen-unstable:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking xen-unstable:test-amd64-i386-livepatch:build-check(1):blocked:nonblocking xen-unstable:test-amd64-i386-migrupgrade:build-check(1):blocked:nonblocking xen-unstable:test-amd64-i386-pair:build-check(1):blocked:nonblocking xen-unstable:test-amd64-i386-qemut-rhel6hvm-amd:build-check(1):blocked:nonblocking xen-unstable:test-amd64-i386-qemut-rhel6hvm-intel:build-check(1):blocked:nonblocking xen-unstable:test-amd64-i386-qemuu-rhel6hvm-amd:build-check(1):blocked:nonblocking xen-unstable:test-amd64-i386-qemuu-rhel6hvm-intel:build-check(1):blocked:nonblocking xen-unstable:test-amd64-i386-xl:build-check(1):blocked:nonblocking xen-unstable:test-amd64-i386-xl-pvshim:build-check(1):blocked:nonblocking xen-unstable:test-amd64-i386-xl-qemut-debianhvm-amd64:build-check(1):blocked:nonblocking xen-unstable:test-amd64-i386-xl-qemut-debianhvm-i386-xsm:build-check(1):blocked:nonblocking xen-unstable:test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking xen-unstable:test-amd64-i386-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking xen-unstable:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking xen-unstable:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking xen-unstable:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking xen-unstable:test-amd64-i386-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking xen-unstable:test-amd64-i386-xl-shadow:build-check(1):blocked:nonblocking xen-unstable:test-amd64-amd64-xl-rtds:build-check(1):blocked:nonblocking xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking xen-unstable:test-amd64-amd64-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking xen-unstable:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking xen-unstable:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking xen-unstable:test-amd64-amd64-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:build-check(1):blocked:nonblocking xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:build-check(1):blocked:nonblocking xen-unstable:build-amd64-libvirt:build-check(1):blocked:nonblocking xen-unstable:test-amd64-amd64-xl-qemut-debianhvm-amd64:build-check(1):blocked:nonblocking xen-unstable:test-amd64-amd64-xl-qcow2:build-check(1):blocked:nonblocking xen-unstable:test-amd64-amd64-xl-pvshim:build-check(1):blocked:nonblocking xen-unstable:test-amd64-amd64-xl-pvhv2-intel:build-check(1):blocked:nonblocking xen-unstable:test-amd64-amd64-xl-pvhv2-amd:build-check(1):blocked:nonblocking xen-unstable:test-amd64-amd64-xl-multivcpu:build-check(1):blocked:nonblocking xen-unstable:test-amd64-amd64-xl-credit2:build-check(1):blocked:nonblocking xen-unstable:test-amd64-amd64-xl-credit1:build-check(1):blocked:nonblocking xen-unstable:test-amd64-amd64-xl:build-check(1):blocked:nonblocking xen-unstable:test-amd64-amd64-dom0pvh-xl-amd:build-check(1):blocked:nonblocking xen-unstable:test-amd64-amd64-dom0pvh-xl-intel:build-check(1):blocked:nonblocking xen-unstable:test-amd64-amd64-qemuu-nested-intel:build-check(1):blocked:nonblocking xen-unstable:test-amd64-amd64-examine:build-check(1):blocked:nonblocking xen-unstable:test-amd64-amd64-examine-bios:build-check(1):blocked:nonblocking xen-unstable:test-amd64-amd64-qemuu-nested-amd:build-check(1):blocked:nonblocking xen-unstable:test-amd64-amd64-examine-uefi:build-check(1):blocked:nonblocking xen-unstable:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking xen-unstable:test-amd64-amd64-qemuu-freebsd12-amd64:build-check(1):blocked:nonblocking xen-unstable:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking xen-unstable:test-amd64-amd64-qemuu-freebsd11-amd64:build-check(1):blocked:nonblocking xen-unstable:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking xen-unstable:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking xen-unstable:test-amd64-amd64-pygrub:build-check(1):blocked:nonblocking xen-unstable:test-amd64-amd64-livepatch:build-check(1):blocked:nonblocking xen-unstable:test-amd64-amd64-migrupgrade:build-check(1):blocked:nonblocking xen-unstable:test-amd64-amd64-pair:build-check(1):blocked:nonblocking xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:build-check(1):blocked:nonblocking xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:build-check(1):blocked:nonblocking xen-unstable:test-amd64-amd64-xl-shadow:build-check(1):blocked:nonblocking xen-unstable:test-amd64-coresched-amd64-xl:build-check(1):blocked:nonblocking xen-unstable:test-amd64-coresched-i386-xl:build-check(1):blocked:nonblocking xen-unstable:test-amd64-i386-examine:build-check(1):blocked:nonblocking xen-unstable:test-amd64-i386-xl-vhd:build-check(1):blocked:nonblocking xen-unstable:test-amd64-i386-xl-xsm:build-check(1):blocked:nonblocking xen-unstable:test-xtf-amd64-amd64-1:build-check(1):blocked:nonblocking xen-unstable:test-xtf-amd64-amd64-2:build-check(1):blocked:nonblocking xen-unstable:test-xtf-amd64-amd64-3:build-check(1):blocked:nonblocking xen-unstable:test-xtf-amd64-amd64-4:build-check(1):blocked:nonblocking xen-unstable:test-xtf-amd64-amd64-5:build-check(1):blocked:nonblocking xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: xen=5b9c96a808efdc004a876c03c2ea0bd0c5358812 X-Osstest-Versions-That: xen=6c32a08e2b7e6d796081ed84c84ad682bcc4b3a6 From: osstest service owner Date: Fri, 30 Jun 2023 02:06:14 +0000 flight 181642 xen-unstable real [real] http://logs.test-lab.xenproject.org/osstest/logs/181642/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-amd64 6 xen-build fail REGR. vs. 181632 build-i386-prev 6 xen-build fail REGR. vs. 181632 build-i386-xsm 6 xen-build fail REGR. vs. 181632 Tests which did not succeed, but are not blocking: test-amd64-i386-examine-bios 1 build-check(1) blocked n/a test-amd64-i386-examine-uefi 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-amd64 1 build-check(1) blocked n/a test-amd64-i386-freebsd10-i386 1 build-check(1) blocked n/a test-amd64-i386-libvirt 1 build-check(1) blocked n/a test-amd64-i386-libvirt-pair 1 build-check(1) blocked n/a test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-i386-libvirt-raw 1 build-check(1) blocked n/a test-amd64-i386-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-i386-livepatch 1 build-check(1) blocked n/a test-amd64-i386-migrupgrade 1 build-check(1) blocked n/a test-amd64-i386-pair 1 build-check(1) blocked n/a test-amd64-i386-qemut-rhel6hvm-amd 1 build-check(1) blocked n/a test-amd64-i386-qemut-rhel6hvm-intel 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-amd 1 build-check(1) blocked n/a test-amd64-i386-qemuu-rhel6hvm-intel 1 build-check(1) blocked n/a test-amd64-i386-xl 1 build-check(1) blocked n/a test-amd64-i386-xl-pvshim 1 build-check(1) blocked n/a test-amd64-i386-xl-qemut-debianhvm-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemut-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-shadow 1 build-check(1) blocked n/a test-amd64-amd64-xl-rtds 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ws16-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-win7-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-ovmf-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-debianhvm-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemut-ws16-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemut-win7-amd64 1 build-check(1) blocked n/a build-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemut-debianhvm-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-qcow2 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvshim 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-intel 1 build-check(1) blocked n/a test-amd64-amd64-xl-pvhv2-amd 1 build-check(1) blocked n/a test-amd64-amd64-xl-multivcpu 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit2 1 build-check(1) blocked n/a test-amd64-amd64-xl-credit1 1 build-check(1) blocked n/a test-amd64-amd64-xl 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-amd 1 build-check(1) blocked n/a test-amd64-amd64-dom0pvh-xl-intel 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-intel 1 build-check(1) blocked n/a test-amd64-amd64-examine 1 build-check(1) blocked n/a test-amd64-amd64-examine-bios 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-nested-amd 1 build-check(1) blocked n/a test-amd64-amd64-examine-uefi 1 build-check(1) blocked n/a test-amd64-amd64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd12-amd64 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-pair 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a test-amd64-amd64-qemuu-freebsd11-amd64 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-vhd 1 build-check(1) blocked n/a test-amd64-amd64-libvirt-xsm 1 build-check(1) blocked n/a test-amd64-amd64-pygrub 1 build-check(1) blocked n/a test-amd64-amd64-livepatch 1 build-check(1) blocked n/a test-amd64-amd64-migrupgrade 1 build-check(1) blocked n/a test-amd64-amd64-pair 1 build-check(1) blocked n/a test-amd64-i386-xl-qemut-win7-amd64 1 build-check(1) blocked n/a test-amd64-i386-xl-qemut-ws16-amd64 1 build-check(1) blocked n/a test-amd64-amd64-xl-shadow 1 build-check(1) blocked n/a test-amd64-coresched-amd64-xl 1 build-check(1) blocked n/a test-amd64-coresched-i386-xl 1 build-check(1) blocked n/a test-amd64-i386-examine 1 build-check(1) blocked n/a test-amd64-i386-xl-vhd 1 build-check(1) blocked n/a test-amd64-i386-xl-xsm 1 build-check(1) blocked n/a test-xtf-amd64-amd64-1 1 build-check(1) blocked n/a test-xtf-amd64-amd64-2 1 build-check(1) blocked n/a test-xtf-amd64-amd64-3 1 build-check(1) blocked n/a test-xtf-amd64-amd64-4 1 build-check(1) blocked n/a test-xtf-amd64-amd64-5 1 build-check(1) blocked n/a test-armhf-armhf-libvirt 16 saverestore-support-check fail like 181632 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail like 181632 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail like 181632 test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-armhf-armhf-xl 15 migrate-support-check fail never pass test-armhf-armhf-xl 16 saverestore-support-check fail never pass test-armhf-armhf-xl-credit1 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 16 saverestore-support-check fail never pass test-armhf-armhf-xl-rtds 15 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 16 saverestore-support-check fail never pass test-armhf-armhf-xl-arndale 15 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-armhf-armhf-libvirt 15 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass test-armhf-armhf-xl-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 15 saverestore-support-check fail never pass test-armhf-armhf-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail never pass test-armhf-armhf-xl-credit2 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit2 16 saverestore-support-check fail never pass test-armhf-armhf-xl-multivcpu 15 migrate-support-check fail never pass test-armhf-armhf-xl-multivcpu 16 saverestore-support-check fail never pass version targeted for testing: xen 5b9c96a808efdc004a876c03c2ea0bd0c5358812 baseline version: xen 6c32a08e2b7e6d796081ed84c84ad682bcc4b3a6 Last test of basis 181632 2023-06-28 21:38:36 Z 1 days Testing same since 181636 2023-06-29 07:32:05 Z 0 days 2 attempts ------------------------------------------------------------ People who touched revisions under test: Federico Serafini jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm fail build-amd64-xtf pass build-amd64 fail build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt blocked build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-prev pass build-i386-prev fail build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-xtf-amd64-amd64-1 blocked test-xtf-amd64-amd64-2 blocked test-xtf-amd64-amd64-3 blocked test-xtf-amd64-amd64-4 blocked test-xtf-amd64-amd64-5 blocked test-amd64-amd64-xl blocked test-amd64-coresched-amd64-xl blocked test-arm64-arm64-xl pass test-armhf-armhf-xl pass test-amd64-i386-xl blocked test-amd64-coresched-i386-xl blocked test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm blocked test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm blocked test-amd64-amd64-xl-qemut-debianhvm-i386-xsm pass test-amd64-i386-xl-qemut-debianhvm-i386-xsm blocked test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-i386-xl-qemuu-debianhvm-i386-xsm blocked test-amd64-amd64-libvirt-xsm blocked test-arm64-arm64-libvirt-xsm pass test-amd64-i386-libvirt-xsm blocked test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-i386-xl-xsm blocked test-amd64-amd64-qemuu-nested-amd blocked test-amd64-amd64-xl-pvhv2-amd blocked test-amd64-i386-qemut-rhel6hvm-amd blocked test-amd64-i386-qemuu-rhel6hvm-amd blocked test-amd64-amd64-dom0pvh-xl-amd blocked test-amd64-amd64-xl-qemut-debianhvm-amd64 blocked test-amd64-i386-xl-qemut-debianhvm-amd64 blocked test-amd64-amd64-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-xl-qemuu-debianhvm-amd64 blocked test-amd64-i386-freebsd10-amd64 blocked test-amd64-amd64-qemuu-freebsd11-amd64 blocked test-amd64-amd64-qemuu-freebsd12-amd64 blocked test-amd64-amd64-xl-qemuu-ovmf-amd64 blocked test-amd64-i386-xl-qemuu-ovmf-amd64 blocked test-amd64-amd64-xl-qemut-win7-amd64 blocked test-amd64-i386-xl-qemut-win7-amd64 blocked test-amd64-amd64-xl-qemuu-win7-amd64 blocked test-amd64-i386-xl-qemuu-win7-amd64 blocked test-amd64-amd64-xl-qemut-ws16-amd64 blocked test-amd64-i386-xl-qemut-ws16-amd64 blocked test-amd64-amd64-xl-qemuu-ws16-amd64 blocked test-amd64-i386-xl-qemuu-ws16-amd64 blocked test-armhf-armhf-xl-arndale pass test-amd64-amd64-examine-bios blocked test-amd64-i386-examine-bios blocked test-amd64-amd64-xl-credit1 blocked test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 pass test-amd64-amd64-xl-credit2 blocked test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 pass test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict blocked test-amd64-amd64-examine blocked test-arm64-arm64-examine pass test-armhf-armhf-examine pass test-amd64-i386-examine blocked test-amd64-i386-freebsd10-i386 blocked test-amd64-amd64-qemuu-nested-intel blocked test-amd64-amd64-xl-pvhv2-intel blocked test-amd64-i386-qemut-rhel6hvm-intel blocked test-amd64-i386-qemuu-rhel6hvm-intel blocked test-amd64-amd64-dom0pvh-xl-intel blocked test-amd64-amd64-libvirt blocked test-armhf-armhf-libvirt pass test-amd64-i386-libvirt blocked test-amd64-amd64-livepatch blocked test-amd64-i386-livepatch blocked test-amd64-amd64-migrupgrade blocked test-amd64-i386-migrupgrade blocked test-amd64-amd64-xl-multivcpu blocked test-armhf-armhf-xl-multivcpu pass test-amd64-amd64-pair blocked test-amd64-i386-pair blocked test-amd64-amd64-libvirt-pair blocked test-amd64-i386-libvirt-pair blocked test-amd64-amd64-xl-pvshim blocked test-amd64-i386-xl-pvshim blocked test-amd64-amd64-pygrub blocked test-armhf-armhf-libvirt-qcow2 pass test-amd64-amd64-xl-qcow2 blocked test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw pass test-amd64-i386-libvirt-raw blocked test-amd64-amd64-xl-rtds blocked test-armhf-armhf-xl-rtds pass test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow blocked test-amd64-amd64-xl-shadow blocked test-amd64-i386-xl-shadow blocked test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi blocked test-amd64-i386-examine-uefi blocked test-amd64-amd64-libvirt-vhd blocked test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd pass test-amd64-i386-xl-vhd blocked ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. ------------------------------------------------------------ commit 5b9c96a808efdc004a876c03c2ea0bd0c5358812 Author: Federico Serafini Date: Mon Jun 26 11:52:18 2023 +0200 xen/arm: change parameter names in replace_grant_host_mapping(). In the current version of replace_grant_host_mapping() function, the declaration (correctly) uses the parameter names 'gpaddr' and 'new_gpaddr', while the definition uses the parameter names 'addr' and 'new_addr'. Change the parameter names of the definition to 'gpaddr' and 'new_gpaddr' so that it is clear what type of address is expected and violations of MISRA C:2012 Rule 8.3 are fixed. In both declaration and definition of function replace_grant_host_mapping() change the parameter name 'mfn' to 'frame', thus improving readability and keeping consistency with name used in create_grant_host_mapping(). Signed-off-by: Federico Serafini Reviewed-by: Julien Grall commit 06ed62d1f3485cd787da042c64d4507c4d0cb8f3 Author: Federico Serafini Date: Mon Jun 26 11:52:17 2023 +0200 xen/arm: make parameter names of function declarations consistent. Change the parameter names of function declarations to be consistent with the names used in the corresponding function definitions, thus fixing violations of MISRA C:2012 Rule 8.3. Signed-off-by: Federico Serafini Reviewed-by: Julien Grall commit 98ca99685d8e8dbc5e8ef2500ee1b8a87a0b26f5 Author: Federico Serafini Date: Mon Jun 26 11:52:16 2023 +0200 xen/arm: vgic: change parameter name in 'init' and 'free' functions. In the current versions of vcpu_vgic_init() and vcpu_vgic_free(), the declarations (correctly) use the parameter name 'v' while the corresponding definitions use the parameter name 'vcpu'. Since it is common to use 'v' to denote a vCPU, change the parameter name 'vcpu' of function definitions to 'v', thus fixing violations of MISRA C:2012 Rule 8.3. Signed-off-by: Federico Serafini Reviewed-by: Julien Grall commit 31f54edf7e9df134760a0d6ca41e49a7905163d0 Author: Federico Serafini Date: Mon Jun 26 11:52:15 2023 +0200 xen/arm: change parameter name 'pa' in ioremap_addr() definition. In the current version of ioremap_addr() function, the declaration uses the parameter name 'start' (consistenly with the other ioremap_* function declarations), while the definition uses the parameter name 'pa'. Change the parameter name 'pa' of function definition to 'start', thus fixing a violation of MISRA C:2012 Rule 8.3 and keeping the consistency with other ioremap_* functions. Signed-off-by: Federico Serafini Reviewed-by: Julien Grall commit be17548c00a63264c0a0399624a73b611358f3ea Author: Federico Serafini Date: Mon Jun 26 11:52:14 2023 +0200 xen/arm: change parameter name 'vcpu' in domain() function definition. In the current version of domain() function, the declaration (correctly) uses the parameter name 'v' while the definition uses the parameter name 'vcpu'. Since it is common to use 'v' to denote a vCPU, change the parameter name 'vcpu' of function definition to 'v', thus fixing a violation of MISRA C:2012 Rule 8.3. Signed-off-by: Federico Serafini Reviewed-by: Julien Grall commit 8f47510b84769192204f4e1f0f4431d3b741f7fc Author: Federico Serafini Date: Mon Jun 26 11:52:13 2023 +0200 xen/arm: change names in function access_guest_memory_by_ipa(). Change the function name 'access_guest_memory_by_ipa' to 'access_guest_memory_by_gpa' and change its formal parameter name from 'ipa' to 'gpa' because of the following: 1) 'gpa' is used more frequently and therefore is preferable; 2) changing parameter name makes the declaration consistent with the corresponding definition thus fixing a violation of MISRA C:2012 Rule 8.3. Signed-off-by: Federico Serafini Reviewed-by: Julien Grall (qemu changes not included) From xen-devel-bounces@lists.xenproject.org Fri Jun 30 02:40:45 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 30 Jun 2023 02:40:45 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557243.870411 (Exim 4.92) (envelope-from ) id 1qF43h-0000vB-3o; Fri, 30 Jun 2023 02:40:29 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557243.870411; Fri, 30 Jun 2023 02:40:29 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qF43h-0000v4-0r; Fri, 30 Jun 2023 02:40:29 +0000 Received: by outflank-mailman (input) for mailman id 557243; Fri, 30 Jun 2023 02:40:27 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qF43f-0000uu-PH for xen-devel@lists.xenproject.org; Fri, 30 Jun 2023 02:40:27 +0000 Received: from EUR02-DB5-obe.outbound.protection.outlook.com (mail-db5eur02on2062c.outbound.protection.outlook.com [2a01:111:f400:fe12::62c]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 7707c23b-16ef-11ee-b237-6b7b168915f2; Fri, 30 Jun 2023 04:40:25 +0200 (CEST) Received: from DU2PR04CA0082.eurprd04.prod.outlook.com (2603:10a6:10:232::27) by GV2PR08MB8051.eurprd08.prod.outlook.com (2603:10a6:150:79::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.19; Fri, 30 Jun 2023 02:40:21 +0000 Received: from DBAEUR03FT061.eop-EUR03.prod.protection.outlook.com (2603:10a6:10:232:cafe::b1) by DU2PR04CA0082.outlook.office365.com (2603:10a6:10:232::27) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.22 via Frontend Transport; Fri, 30 Jun 2023 02:40:21 +0000 Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by DBAEUR03FT061.mail.protection.outlook.com (100.127.143.28) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6565.10 via Frontend Transport; Fri, 30 Jun 2023 02:40:20 +0000 Received: ("Tessian outbound 52217515e112:v142"); Fri, 30 Jun 2023 02:40:20 +0000 Received: from 4d1d69782a04.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 90C38A05-6E4D-41A2-99F1-F342D9301284.1; Fri, 30 Jun 2023 02:40:14 +0000 Received: from EUR05-VI1-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 4d1d69782a04.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Fri, 30 Jun 2023 02:40:14 +0000 Received: from DU2PR04CA0164.eurprd04.prod.outlook.com (2603:10a6:10:2b0::19) by AS8PR08MB7888.eurprd08.prod.outlook.com (2603:10a6:20b:52f::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.19; Fri, 30 Jun 2023 02:40:12 +0000 Received: from DBAEUR03FT064.eop-EUR03.prod.protection.outlook.com (2603:10a6:10:2b0:cafe::af) by DU2PR04CA0164.outlook.office365.com (2603:10a6:10:2b0::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.22 via Frontend Transport; Fri, 30 Jun 2023 02:40:12 +0000 Received: from nebula.arm.com (40.67.248.234) by DBAEUR03FT064.mail.protection.outlook.com (100.127.143.3) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6544.22 via Frontend Transport; Fri, 30 Jun 2023 02:40:11 +0000 Received: from AZ-NEU-EX02.Emea.Arm.com (10.251.26.5) by AZ-NEU-EX03.Arm.com (10.251.24.31) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Fri, 30 Jun 2023 02:40:11 +0000 Received: from AZ-NEU-EX03.Arm.com (10.251.24.31) by AZ-NEU-EX02.Emea.Arm.com (10.251.26.5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Fri, 30 Jun 2023 02:40:11 +0000 Received: from [10.169.188.49] (10.169.188.49) by mail.arm.com (10.251.24.31) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27 via Frontend Transport; Fri, 30 Jun 2023 02:40:08 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 7707c23b-16ef-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=2YrygJb6IOptJjQ6c2+oTKLOXDU6DZyk0uzvVtZLK6g=; b=g9ccMpXgrFBuWt0upqZrNckt2MSVQwtLrdXGSxuQTNYxSJ5DQjsk5+AGj7dsprjUiU4A+xErV5310SakypXDI/3rthXDRjib+j3aqvb754EgFNLFzr3yMo1gdKsmGfXQu7qQqcUxrGAfffPnqwHA0W0DWakXuIX2WIz0i+1susw= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C X-CheckRecipientChecked: true X-CR-MTA-CID: fcc3b87ef85e39e1 X-CR-MTA-TID: 64aa7808 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=njES2J6R1r+G7vso5A5PfOh/MJj1Mq1ECM0c9b9Hlx07tXIe0Q+ZkLsZMyevOhnwVp0rtTLpTHPsDv46M0VMiuLy1F9edQfeJ3+PyO2TEAXSxp9rsJgHwF7cLJKQOp8VSy3sA4eQyQ0grqFzMOGug2I4bP7Mg/ctk+TcPdw0qC8m090HPHVWmPwBALDBO2rspFsnuuhsgWAE6YYla1pPp7LYOp/psOQoIK1myEY6+nB7QJC6F1SrM/Ic18OEF4NMmryH/PdZegMdol6HmJ8wsxeW2Zy+X6LXJz3JvlN0BnWJ+7C050g3ISEppfNaJMRr2pREACTEbgYB5mp1lhpBEQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=2YrygJb6IOptJjQ6c2+oTKLOXDU6DZyk0uzvVtZLK6g=; b=DNgmpL8Eye7CWdT6kAmEgiY32+MOvDia9w9wpM0UNE15FpMuOVSw2PQfcKFUYZTUkjTQ1lcGNhBhCIDY0xJTFhMYKUhFhW+6YwHC+1e7MWr5zzllwQIe4knOtWYhhCT/65Bs89czLX9nlFYkMDMhiOLK3n3G3njefEYkTRwGCatnM8+nm5+D088/06DzUh3sW/iJp8MqSGqNv9WLl/IcZ6vl/MsIIkZv6VkngpxCXigkXGbYPuIb4hVVoBeMCtNA1FRIP8tqo3Ih66gHollaNDHi6vfJDE/9GiuRMGBd8hE95cV5VeVKKrAsKV8i0PqVrt/3FblAY2RMFhXe2xHbzQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 40.67.248.234) smtp.rcpttodomain=xen.org smtp.mailfrom=arm.com; dmarc=pass (p=none sp=none pct=100) action=none header.from=arm.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=2YrygJb6IOptJjQ6c2+oTKLOXDU6DZyk0uzvVtZLK6g=; b=g9ccMpXgrFBuWt0upqZrNckt2MSVQwtLrdXGSxuQTNYxSJ5DQjsk5+AGj7dsprjUiU4A+xErV5310SakypXDI/3rthXDRjib+j3aqvb754EgFNLFzr3yMo1gdKsmGfXQu7qQqcUxrGAfffPnqwHA0W0DWakXuIX2WIz0i+1susw= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 40.67.248.234) smtp.mailfrom=arm.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 40.67.248.234 as permitted sender) receiver=protection.outlook.com; client-ip=40.67.248.234; helo=nebula.arm.com; pr=C Message-ID: <8ea56cfd-7ed2-8770-95b7-dcc2bc7081e6@arm.com> Date: Fri, 30 Jun 2023 10:40:06 +0800 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v3 28/52] xen/mpu: plump virt/maddr conversion in MPU system Content-Language: en-US To: Julien Grall , Ayan Kumar Halder , Andrew Cooper , CC: Stefano Stabellini , Bertrand Marquis , Volodymyr Babchuk , Wei Chen References: <20230626033443.2943270-1-Penny.Zheng@arm.com> <20230626033443.2943270-29-Penny.Zheng@arm.com> <674011bb-b8df-d11e-a322-1827096c1b74@amd.com> <2c8387ab-547d-5bdf-5d62-e7a950e5c1de@citrix.com> <9ae972a7-d229-4eb5-0f11-2a73f12d5ef8@xen.org> From: Penny Zheng In-Reply-To: <9ae972a7-d229-4eb5-0f11-2a73f12d5ef8@xen.org> Content-Type: text/plain; charset="UTF-8"; format=flowed Content-Transfer-Encoding: 8bit X-EOPAttributedMessage: 1 X-MS-TrafficTypeDiagnostic: DBAEUR03FT064:EE_|AS8PR08MB7888:EE_|DBAEUR03FT061:EE_|GV2PR08MB8051:EE_ X-MS-Office365-Filtering-Correlation-Id: 4187e369-221e-4738-6ef6-08db7913591f x-checkrecipientrouted: true NoDisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: 2YFPLZ341x8ENWouGghrqiaRq05lI6sO7705NlXNNGySz7AGFXdmsPlgPxN0iG+ILhdVnGakE1Dj6ueOns0igjdKv7nTdS7+ntFKTR4JurJ5lyrrFXdbmsxAFY0MpTTC9m9sADBBl89hrjzbnlUsiu9NGZQHvtAM0jf2GpN1C+8EnLvCQl1TgOPYSVS/dkpAijFCKpz51UnrLyZQzLGgnflryqMEH66Pgv2MbXdK8Sovpj1LHa1BIplkYdJrlIyCiUl2FvX4L8tlDeQiLPpJxzK0RubghpYSQA4oalPEOk5656m7K9wnZw6cLtybx5IDD4kfvT3dNAUYGjYBNm6BpF71oZB//kPgDDooljkIqDsB+io64xpWY4b0Xcj+Wpc3uH5YsrEakLJqLKxK5x44V/W9xYW3n5MOlBZanlEWZlBpblTc1viRWzKNDEIzucJQo1MV6pBWQtT6mGFs0+J+HRtI7dIgvs4UC1Eg5hzHrdIDT1fpCjsaFJBAH5qUxnnmLYZLtAmmu1PY/rI8JL7xCbYaDvG+puCBNgczyTCzdTDTC50U+JRNpNdnqbBaX9Jpr5MeQETx6kimRm5/inKh4pz1xaGdRa9SnO+6YmMtEpK9dv/tzUY8+YbKdM5IkprCMzr5wmQRkRMJ9tmeXw+bTO772qEWuWPG0KYTok2rfgTAW8lsg8mxYO9I/pz3Ob/y7bG6wt2vAthJm6Xyytl6xJqV2jDB1n8Xz61c9DnEHJphDUNXrzfh5y3hzBbPVb9ywvOg5Eb/5jeMXnO4KzdkSVnHfLALxVrLqKyLKwJZptTKOlJzS6d/kheF+7hruxjF X-Forefront-Antispam-Report-Untrusted: CIP:40.67.248.234;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:nebula.arm.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(346002)(376002)(39860400002)(136003)(396003)(451199021)(46966006)(36840700001)(40470700004)(86362001)(82310400005)(2906002)(26005)(186003)(356005)(81166007)(47076005)(2616005)(426003)(336012)(40480700001)(36860700001)(53546011)(70586007)(40460700003)(5660300002)(70206006)(41300700001)(316002)(8936002)(8676002)(36756003)(31696002)(82740400003)(966005)(54906003)(16576012)(4326008)(478600001)(110136005)(44832011)(31686004)(3940600001)(36900700001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR08MB7888 X-MS-Exchange-Transport-CrossTenantHeadersStripped: DBAEUR03FT061.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: 33e5f87e-9322-4118-d0f1-08db791353be X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: lbdghWUuprQBPYwqy6mt1WzHmW0QMlDlHhxvDznsRaf6yXXx6TZxYtexd+Yh5CUjFTsQepTjluJHGlHo/x8ZFLgn5L29wr2RZhocx5o7CkcEzHCo92rqYUwNfOwEgAHyFFYkZ/qlFzwnoKnp8EkaeDb3+a7XyidaxShb2fn2FCmeTkcjy9eOhlIzD5LCX96n4AMr9yOORoiN8POwPYavLeH7BdhzcoJsiL7jbv0QBSzf7IVghcSTv8zbgrJCRa6WmWfufontScYzo8HaiBEf9m/QpRMPIabRihrlFXsjK/PPAQEtnk/cB89UdJpNoxmswKSR9hi+NRJc2L0D3ndEZdekX9XVNu7N+55ZY4Ma4DhQSTSFEnwVLTbsvOyvmKcTqlDXxrY98J1fVMeCvBjOOJXbG+NLvHjg6x0TkEz+kyG6j7lN0bO5CzuoGhPUpcCi7j8+tW1jO0T/K7NXA9TdMkXtGzuDP9lpNJ7BWUEWswHJ2NVANA18QNqEVC8RRUWvJNW7ZBctyaoz7vlyIQnmdIHxKfj+p1S+KmcAC+KrOlqXWnh7rNBr7+Ok5lnnMo0qh0FIyki3gzvjAD9LVEfAekaBtwrgF+r5p+SHzbA9bI0APquU2F9TUPAZaaEliVZA6MDtP2VYBN6xvCfHgkv3v/dZiCcSsNwjcFrP5SX4Ntitok/T6eEvymBv0Teo16QAzS5MhDUWfgIBynshTesxT9PHKQrGPU/CkluCrbUx7phMjn94VNlvMCBURUqMk4Qc1yj/Bm4wQoFOoQuwLz9pC+4Ljqht1TDOZfghiMHu6yU= X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(346002)(136003)(376002)(396003)(451199021)(40470700004)(46966006)(36840700001)(31686004)(8676002)(8936002)(5660300002)(36756003)(110136005)(54906003)(16576012)(478600001)(70206006)(70586007)(4326008)(316002)(966005)(41300700001)(40460700003)(40480700001)(81166007)(47076005)(186003)(44832011)(2616005)(26005)(31696002)(86362001)(336012)(82310400005)(426003)(36860700001)(53546011)(82740400003)(2906002)(3940600001)(43740500002);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Jun 2023 02:40:20.9472 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 4187e369-221e-4738-6ef6-08db7913591f X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: DBAEUR03FT061.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: GV2PR08MB8051 Hi, On 2023/6/29 23:14, Julien Grall wrote: > Hi, > > On 29/06/2023 15:44, Ayan Kumar Halder wrote: >> >> On 29/06/2023 15:23, Andrew Cooper wrote: >>> On 29/06/2023 3:20 pm, Ayan Kumar Halder wrote: >>>> On 26/06/2023 04:34, Penny Zheng wrote: >>>>> diff --git a/xen/arch/arm/include/asm/mm.h >>>>> b/xen/arch/arm/include/asm/mm.h >>>>> index eb520b49e3..ea4847c12b 100644 >>>>> --- a/xen/arch/arm/include/asm/mm.h >>>>> +++ b/xen/arch/arm/include/asm/mm.h >>>>> @@ -292,6 +301,12 @@ static inline void *maddr_to_virt(paddr_t ma) >>>>>                         ((ma & ma_top_mask) >> pfn_pdx_hole_shift))); >>>>>    } >>>>>    #endif >>>>> +#else /* CONFIG_HAS_MPU */ >>>>> +static inline void *maddr_to_virt(paddr_t ma) >>>>> +{ >>>>> +    return (void *)(unsigned long)ma; >>>> Why do you need "(unsigned long)ma" ? Both "unsigned long" and >>>> "paddr_t" are u64. >>> For when paddr_t really isn't u64. >> >> Sorry, I am missing something >> >>  From >> https://xenbits.xen.org/gitweb/?p=xen.git;a=blob;f=xen/arch/arm/include/asm/types.h;h=fb6618ef247fe8e3abe472e50b4877e11cc8a96c;hb=refs/heads/staging >> >> In CONFIG_ARM_64 >> >> typedef unsigned long u64; >> >> typedef u64 paddr_t; >> >> So, why do we need to typecast "paddr_t" to "unsigned long" as they >> are the same ? > We may decide to restrict paddr_t to 32-bit in the future on Arm64. > > Also, when CONFIG_PHYS_ADDR_T_32=n, paddr_t is 64-bit on 32-bit Xen. So > casting directly to (void *) is not possible. Although, this is not a > problem here because for the MPU on 32-bit, you would select > CONFIG_PHYS_ADDR_T_32. > > On a side note, I agree with Andrew that we should switch to _p(). Sure. I'll switch to _p(). > > Cheers, > From xen-devel-bounces@lists.xenproject.org Fri Jun 30 02:42:16 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 30 Jun 2023 02:42:16 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557248.870421 (Exim 4.92) (envelope-from ) id 1qF45F-0001Tb-Fm; Fri, 30 Jun 2023 02:42:05 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557248.870421; Fri, 30 Jun 2023 02:42:05 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qF45F-0001TU-Bv; Fri, 30 Jun 2023 02:42:05 +0000 Received: by outflank-mailman (input) for mailman id 557248; Fri, 30 Jun 2023 02:42:04 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qF45D-0001TM-Uz for xen-devel@lists.xenproject.org; Fri, 30 Jun 2023 02:42:04 +0000 Received: from EUR05-VI1-obe.outbound.protection.outlook.com (mail-vi1eur05on20604.outbound.protection.outlook.com [2a01:111:f400:7d00::604]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id b0a141dc-16ef-11ee-8611-37d641c3527e; Fri, 30 Jun 2023 04:42:01 +0200 (CEST) Received: from AM5PR0301CA0034.eurprd03.prod.outlook.com (2603:10a6:206:14::47) by DBBPR08MB6315.eurprd08.prod.outlook.com (2603:10a6:10:209::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.19; Fri, 30 Jun 2023 02:41:58 +0000 Received: from AM7EUR03FT006.eop-EUR03.prod.protection.outlook.com (2603:10a6:206:14:cafe::e7) by AM5PR0301CA0034.outlook.office365.com (2603:10a6:206:14::47) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.22 via Frontend Transport; Fri, 30 Jun 2023 02:41:58 +0000 Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by AM7EUR03FT006.mail.protection.outlook.com (100.127.141.21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.22 via Frontend Transport; Fri, 30 Jun 2023 02:41:57 +0000 Received: ("Tessian outbound 52217515e112:v142"); Fri, 30 Jun 2023 02:41:57 +0000 Received: from bf420bec467f.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id EE6C1697-34DC-4A3F-8BB7-FE838A01F355.1; Fri, 30 Jun 2023 02:41:50 +0000 Received: from EUR05-AM6-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id bf420bec467f.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Fri, 30 Jun 2023 02:41:50 +0000 Received: from DUZPR01CA0204.eurprd01.prod.exchangelabs.com (2603:10a6:10:4b6::25) by GV2PR08MB8270.eurprd08.prod.outlook.com (2603:10a6:150:c1::5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.19; Fri, 30 Jun 2023 02:41:48 +0000 Received: from DBAEUR03FT055.eop-EUR03.prod.protection.outlook.com (2603:10a6:10:4b6:cafe::2) by DUZPR01CA0204.outlook.office365.com (2603:10a6:10:4b6::25) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.22 via Frontend Transport; Fri, 30 Jun 2023 02:41:47 +0000 Received: from nebula.arm.com (40.67.248.234) by DBAEUR03FT055.mail.protection.outlook.com (100.127.142.171) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6544.22 via Frontend Transport; Fri, 30 Jun 2023 02:41:47 +0000 Received: from AZ-NEU-EX03.Arm.com (10.251.24.31) by AZ-NEU-EX03.Arm.com (10.251.24.31) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Fri, 30 Jun 2023 02:41:47 +0000 Received: from [10.169.188.49] (10.169.188.49) by mail.arm.com (10.251.24.31) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27 via Frontend Transport; Fri, 30 Jun 2023 02:41:44 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: b0a141dc-16ef-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=+xK1rqn9juYvQui7SX4KohYH8BQLQSbt3eja544/6ak=; b=COe7QVAM3EO20ZN4mu9V1SQo5n9034JxC9ftZy80SAMDGFqH+BB6AKGtVgCbL7ujb/xyAtSlot+JyGj7timZjdVwdr7gjXuZHAi4fYQcnR9ujXghiKCye0X2YLov6R8jeRLngNUPoKdaHUIuZh4UhY4PGiqHkH4MXyHjGH+a1ec= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C X-CheckRecipientChecked: true X-CR-MTA-CID: 00fa637748314195 X-CR-MTA-TID: 64aa7808 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=KoQsQ5sJ1HBvjGTuqtKSHDHwj8uKK60r6M2F8tHeZ9sUPfiRyrgSPrcoBkYY2JNWWJdEkLYrpwv2Tg7WdU9BQDwJFCW7SBynG0zmgc3WYS15MpJSfTTGu9/V8NX1keNJUCo6f99dCd18grw9xpHNK2YwkukU5Stj/rHGu/HuHwjbj95Pb5+n5jbVPCYVSCDm7mXVrwCpw5XN1/TWDnVU0LgKAvmbMNZDBJFKd9p4hcrfoZ+zBsUcr450Sy3CoPM/wJ6ZlIZjcPV6vMhArbw0szaqGBRPY20xS9qeFOae1O+pHJ11UX1bfNPwkLNU1uIJj/xCBVXNYoSivH0ccDosyg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=+xK1rqn9juYvQui7SX4KohYH8BQLQSbt3eja544/6ak=; b=gpuknF934OqdxeU+UbhxwOLf3xnojMsU63fVjf49O0ztess4zH3sQeeDOTUAOAhtOJCX9S/eqj/JD1x08hyHc3ORBic9Y+7/tqxnb6nfTX4fhNYZ+nbhiQJTJ1/SWKu5s+uJJ+ja89zOx5jrDeEfpz6559v6sfvB6lpscSsoUDYkBAGeUEkEOdBPXI0hfou5I8VedmyWeURp+tsDDr5mARCUWv5UJLP1w5qzURAp8Arc71Qui0YMyP2afRs1lsbliJYAuO7lqjjEanSO6nv3yPreMmH8QFTU8VlFell915wbWmZKGYZU8+JbJAvyNgsZfM5a3Nv9WVJfjwFH4UuflA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 40.67.248.234) smtp.rcpttodomain=amd.com smtp.mailfrom=arm.com; dmarc=pass (p=none sp=none pct=100) action=none header.from=arm.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=+xK1rqn9juYvQui7SX4KohYH8BQLQSbt3eja544/6ak=; b=COe7QVAM3EO20ZN4mu9V1SQo5n9034JxC9ftZy80SAMDGFqH+BB6AKGtVgCbL7ujb/xyAtSlot+JyGj7timZjdVwdr7gjXuZHAi4fYQcnR9ujXghiKCye0X2YLov6R8jeRLngNUPoKdaHUIuZh4UhY4PGiqHkH4MXyHjGH+a1ec= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 40.67.248.234) smtp.mailfrom=arm.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 40.67.248.234 as permitted sender) receiver=protection.outlook.com; client-ip=40.67.248.234; helo=nebula.arm.com; pr=C Message-ID: <89b2c0e3-cb0b-13b2-6590-6d9cd9b7f1f4@arm.com> Date: Fri, 30 Jun 2023 10:41:42 +0800 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v3 27/52] xen/mpu: introduce setup_mm_mappings Content-Language: en-US To: Ayan Kumar Halder , Julien Grall , CC: Stefano Stabellini , Bertrand Marquis , Volodymyr Babchuk , Wei Chen References: <20230626033443.2943270-1-Penny.Zheng@arm.com> <20230626033443.2943270-28-Penny.Zheng@arm.com> <3e77ef15-4a34-8246-bf48-d87557690b48@xen.org> <6ec57ca4-be55-598d-ce30-a2f86150dfea@amd.com> From: Penny Zheng In-Reply-To: <6ec57ca4-be55-598d-ce30-a2f86150dfea@amd.com> Content-Type: text/plain; charset="UTF-8"; format=flowed Content-Transfer-Encoding: 8bit X-EOPAttributedMessage: 1 X-MS-TrafficTypeDiagnostic: DBAEUR03FT055:EE_|GV2PR08MB8270:EE_|AM7EUR03FT006:EE_|DBBPR08MB6315:EE_ X-MS-Office365-Filtering-Correlation-Id: f2f77aa1-f1f5-4cee-a421-08db7913929f x-checkrecipientrouted: true NoDisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: Mc/Bd9qCQFgDUdxlSAfThDvHNXJMnr3XYcQfK1IzFvkIY4VFmONkgsKF+2CV085mX37x13XTjhNIr65+h2468z0X5KQ/+0ouwl5IaNVo2nHTgsq6obVKGVQt2K544hnuyrM6je1v1yUDU2bRLFwD2BdNwQE1GEkXN/Xcb9PVVvUGMxLtri0lBi6wn1WkcVY8gyqe8CDYG1md7OlxfkUOUeUOtJ94321uldjppk7UjPqDz3hcSdtzwsFZy2xaGQ3brr2cZ5kE2dty+ScNPUfolaxYaNoJghG5CNgIPMMx+9uvl4V6/CIDCDWEHSFCob3uZt7XNvaSaPVPmy7znue9IvjwTKl8Dm5IM3mArr+r8yRpLwDbwR/1/1w8k04oTwajAPfRn4RQq5CAfOOuVOvbYjiT0snq4RCos1U3yRNKfz52rQeNm7O0bIQuuYr712EDUHdjse6msBESr46vOo44P1qG8iNOXuWPEfYd7ATP9rryAw3XsEZZxUCeLJUcPfKTG/OTZAj6/EFxxy6WzWPSur1adbYrwDmVrL8weSR3rovgJmOxX2DSOyjHkmn5NrhyoMhdSm6LXhZIRnqruwXS9CXsO3ZKJrMHmVRxiVY1yWKUHXjrE6pqkfutL88p7rggA40GYid3l5cw173J+dzq1oscL4ah3ies5owuGq5cAX3W6nPfB9qNgyOCqzkeXoMWMPuHlPNmoERqrFAQ5WwdU7SPlOmkgImrfqYbUUfK0LOSbqhdrD7NYbVPPOJtlSeSZIY3x/lqBG/QQInuI4bOgkxgShOR8kfjpCJnTeWK1YuGkE20ANLReoSKWdceqShESpH+ZIX3EAgBQ3c1oDMDdA== X-Forefront-Antispam-Report-Untrusted: CIP:40.67.248.234;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:nebula.arm.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(376002)(396003)(136003)(346002)(451199021)(36840700001)(40470700004)(46966006)(316002)(40460700003)(186003)(54906003)(16576012)(110136005)(5660300002)(31696002)(44832011)(83380400001)(47076005)(86362001)(36860700001)(478600001)(41300700001)(81166007)(356005)(8676002)(8936002)(82740400003)(82310400005)(40480700001)(426003)(336012)(36756003)(2616005)(26005)(31686004)(70586007)(4326008)(2906002)(70206006)(53546011)(3940600001)(43740500002)(36900700001);DIR:OUT;SFP:1101; X-MS-Exchange-Transport-CrossTenantHeadersStamped: GV2PR08MB8270 X-MS-Exchange-Transport-CrossTenantHeadersStripped: AM7EUR03FT006.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: f77b5346-48a1-4569-24fe-08db79138cd9 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: jSBod9w/cZ+96KXbQ4xbBLM5V1cxJPf9UVslpgD1QrYxg8xgU0NBz5BtNb97BNBRNZzEXyJXMk2r+kkgJ8R4faAx2Q9VHJLSBAcdLOJeTUkOaVvspOck1YJpNMhvzT4CkUrQ4rEZzUPJBAmLN+PSL2TW+ipgCwVie552j6v+P5k5cfNSFPY5R7VljO6h6n7Ng2x0f12ozzDPeE5pr0qHODcMs0ME458C9zAfw4Oro8KNNu9ZCJBW+E4Ja7jTrmigTmwkPNWspWn1dK1osgtW3tL9ui2fRsCVD4Q83+6rdme6k5isVBv/2C+7mBMyuDDnu0Nn8E8xHV0fqx3b+/2eW6g5ttTPGW8xWj0BxrY793NPi+cdscelwA00ymJle/1eiZDOuGVWx3BK3FqoD75x4Pge4p/93ot8Dhy1UTXxDLUaG0QMPLEm6BWsxCevWczEwmN7bU62Kxnv48fU2Zk6ctgsTIYWAWdqGm4OHQ5Q3txCr7T1HsLcIGvpvvkRk1vdIYmss3NuOCJK/VmcwJv2GSersTNSjuH7s40J7Dy1XDrlhHoEhZOykBAIaWOqsIrSB5iWPX23we0y5vBOCT1HxGDWUhKlZPXdzFEbOqU/74ummgdxmnZv9z6t6boe2c9KynvEPhIL4EI9euPk671Il1iMSnsqeNblXuFR/c9x60nBnbh2wnLozelqZyNRHI0/JhUWsflKq72xRPfX7P4gGaKBnoFwmbBv5a0Oe0tNBKSDUmqgebIHfdGJGxXnV+Uz+Oz8O0XwQQD7FrkoCWoPt5MEbjwXjq6BxZQkWNRsg29IG3gVMhrjWmlWJYi4vCqz X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230028)(4636009)(346002)(136003)(396003)(39860400002)(376002)(451199021)(36840700001)(40470700004)(46966006)(26005)(36860700001)(4326008)(54906003)(110136005)(316002)(16576012)(40480700001)(426003)(336012)(53546011)(40460700003)(44832011)(70586007)(70206006)(47076005)(36756003)(83380400001)(478600001)(5660300002)(186003)(8676002)(31686004)(8936002)(82740400003)(81166007)(2906002)(31696002)(86362001)(41300700001)(82310400005)(2616005)(3940600001)(43740500002);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Jun 2023 02:41:57.3707 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: f2f77aa1-f1f5-4cee-a421-08db7913929f X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: AM7EUR03FT006.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBBPR08MB6315 Hi, On 2023/6/29 22:50, Ayan Kumar Halder wrote: > > On 29/06/2023 15:29, Julien Grall wrote: >> Hi, >> >> On 29/06/2023 15:05, Ayan Kumar Halder wrote: >>> On 26/06/2023 04:34, Penny Zheng wrote: >>>> CAUTION: This message has originated from an External Source. Please >>>> use proper judgment and caution when opening attachments, clicking >>>> links, or responding to this email. >>>> >>>> >>>> Function setup_pagetables is responsible for boot-time pagetable setup >>>> in MMU system at C world. >>>> In MPU system, as we have already built up start-of-day Xen MPU memory >>>> region mapping in assembly boot-time, here we only need to do a few >>>> memory management data initializtion, including reading the number of >>>> maximum MPU regions supported by the EL2 MPU, and setting the according >>>> bitfield for regions enabled in assembly boot-time, in bitmap >>>> xen_mpumap_mask. >>>> This bitmap xen_mpumap_mask is responsible for recording the usage >>>> of EL2 MPU >>>> memory regions. >>>> >>>> In order to keep only one codeflow in arm/setup.c, setup_mm_mappings >>>> , with a more generic name, is introduced to replace setup_pagetables. >>>> >>>> Signed-off-by: Penny Zheng >>>> Signed-off-by: Wei Chen >>>> --- >>>> v3: >>>> - introduce bitmap xen_mpumap_mask for dynamic allocation on MPU >>>> regions >>>> --- >>>>   xen/arch/arm/include/asm/arm64/mpu.h     |  1 + >>>>   xen/arch/arm/include/asm/arm64/sysregs.h |  3 +++ >>>>   xen/arch/arm/include/asm/mm.h            |  4 ++-- >>>>   xen/arch/arm/mmu/mm.c                    |  7 +++++- >>>>   xen/arch/arm/mpu/mm.c                    | 30 >>>> ++++++++++++++++++++++++ >>>>   xen/arch/arm/setup.c                     |  2 +- >>>>   6 files changed, 43 insertions(+), 4 deletions(-) >>>> >>>> diff --git a/xen/arch/arm/include/asm/arm64/mpu.h >>>> b/xen/arch/arm/include/asm/arm64/mpu.h >>>> index 6ec2c10b14..407fec66c9 100644 >>>> --- a/xen/arch/arm/include/asm/arm64/mpu.h >>>> +++ b/xen/arch/arm/include/asm/arm64/mpu.h >>>> @@ -19,6 +19,7 @@ >>>>    * or it needs adjustment. >>>>    */ >>>>   #define REGION_UART_SEL            0x07 >>>> +#define MPUIR_REGION_MASK          ((_AC(1, UL) << 8) - 1) >>> >>> May be this is simpler to read >>> >>> #define MPUIR_REGION_MASK _AC(0xFF, UL) >>> >>> Also, you can move it to xen/arch/arm/include/asm/mpu.h as it is >>> common between R52 and R82. >> >> I would actually prefer if we use GENMASK(...). >> >> [...] Sure, I'll switch to use GENMASK(...). >> >>>> diff --git a/xen/arch/arm/mpu/mm.c b/xen/arch/arm/mpu/mm.c >>>> index fb6bb721b1..e06a6e5810 100644 >>>> --- a/xen/arch/arm/mpu/mm.c >>>> +++ b/xen/arch/arm/mpu/mm.c >>>> @@ -20,6 +20,7 @@ >>>>    */ >>>> >>>>   #include >>>> +#include >>>>   #include >>>>   #include >>>> >>>> @@ -27,6 +28,35 @@ >>>>   pr_t __aligned(PAGE_SIZE) __section(".data.page_aligned") >>>>        xen_mpumap[ARM_MAX_MPU_MEMORY_REGIONS]; >>>> >>>> +/* Maximum number of supported MPU memory regions by the EL2 MPU. */ >>>> +uint8_t __ro_after_init max_xen_mpumap; >>>> + >>>> +/* >>>> + * Bitmap xen_mpumap_mask is to record the usage of EL2 MPU memory >>>> regions. >>>> + * Bit 0 represents MPU memory region 0, bit 1 represents MPU memory >>>> + * region 1, ..., and so on. >>>> + * If a MPU memory region gets enabled, set the according bit to 1. >>>> + */ >>>> +static DECLARE_BITMAP(xen_mpumap_mask, ARM_MAX_MPU_MEMORY_REGIONS); >>>> + >>>> +void __init setup_mm_mappings(unsigned long boot_phys_offset) >>>> +{ >>>> +    unsigned int nr_regions = REGION_UART_SEL, i = 0; >>>> + >>>> +    /* >>>> +     * MPUIR_EL2.Region[0:7] identifies the number of regions >>>> supported by >>>> +     * the EL2 MPU. >>>> +     */ >>>> +    max_xen_mpumap = (uint8_t)(READ_SYSREG(MPUIR_EL2) & >>>> MPUIR_REGION_MASK); >>> >>> NIT:- You may dop "& MPUIR_REGION_MASK " as the other bits are RES0 >> >> From the Arm Arm (look for the definition of RES0 in the glossary): >> >> " >> To preserve forward compatibility, software: >> • Must not rely on the bit reading as 0. >> • Must use an SBZP policy to write to the bit. >> " >> >> So we should not drop "& MPUIR_REGION_MASK". > > Yes, you are correct. > > Penny, please disregard my NIT. > > - Ayan > >> >> Cheers, >> From xen-devel-bounces@lists.xenproject.org Fri Jun 30 04:08:27 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 30 Jun 2023 04:08:27 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557256.870437 (Exim 4.92) (envelope-from ) id 1qF5Qb-0001ku-Ma; Fri, 30 Jun 2023 04:08:13 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557256.870437; Fri, 30 Jun 2023 04:08:13 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qF5Qb-0001kn-Iz; Fri, 30 Jun 2023 04:08:13 +0000 Received: by outflank-mailman (input) for mailman id 557256; Fri, 30 Jun 2023 04:08:12 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qF5Qa-0001kf-AY for xen-devel@lists.xenproject.org; Fri, 30 Jun 2023 04:08:12 +0000 Received: from EUR03-AM7-obe.outbound.protection.outlook.com (mail-am7eur03on2062d.outbound.protection.outlook.com [2a01:111:f400:7eaf::62d]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id b84bfdbd-16fb-11ee-b237-6b7b168915f2; Fri, 30 Jun 2023 06:08:08 +0200 (CEST) Received: from AM0PR04CA0103.eurprd04.prod.outlook.com (2603:10a6:208:be::44) by AS8PR08MB10361.eurprd08.prod.outlook.com (2603:10a6:20b:56d::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.26; Fri, 30 Jun 2023 04:08:05 +0000 Received: from AM7EUR03FT064.eop-EUR03.prod.protection.outlook.com (2603:10a6:208:be:cafe::ea) by AM0PR04CA0103.outlook.office365.com (2603:10a6:208:be::44) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.22 via Frontend Transport; Fri, 30 Jun 2023 04:08:05 +0000 Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by AM7EUR03FT064.mail.protection.outlook.com (100.127.140.127) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.22 via Frontend Transport; Fri, 30 Jun 2023 04:08:04 +0000 Received: ("Tessian outbound e2424c13b707:v142"); Fri, 30 Jun 2023 04:08:04 +0000 Received: from 160c291652e0.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 23A9A78E-FF89-407F-ABA5-1FD3F9B379F0.1; Fri, 30 Jun 2023 04:07:58 +0000 Received: from EUR04-VI1-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 160c291652e0.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Fri, 30 Jun 2023 04:07:58 +0000 Received: from AS9PR05CA0067.eurprd05.prod.outlook.com (2603:10a6:20b:499::23) by GV1PR08MB8306.eurprd08.prod.outlook.com (2603:10a6:150:a3::5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.19; Fri, 30 Jun 2023 04:07:54 +0000 Received: from AM7EUR03FT039.eop-EUR03.prod.protection.outlook.com (2603:10a6:20b:499:cafe::85) by AS9PR05CA0067.outlook.office365.com (2603:10a6:20b:499::23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.22 via Frontend Transport; Fri, 30 Jun 2023 04:07:54 +0000 Received: from nebula.arm.com (40.67.248.234) by AM7EUR03FT039.mail.protection.outlook.com (100.127.140.224) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6544.22 via Frontend Transport; Fri, 30 Jun 2023 04:07:54 +0000 Received: from AZ-NEU-EX03.Arm.com (10.251.24.31) by AZ-NEU-EX04.Arm.com (10.251.24.32) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Fri, 30 Jun 2023 04:07:52 +0000 Received: from [10.169.188.49] (10.169.188.49) by mail.arm.com (10.251.24.31) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27 via Frontend Transport; Fri, 30 Jun 2023 04:07:50 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: b84bfdbd-16fb-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=VDI9o7V19HxsA4+l25QCa7afQWHFFQ8GWEyymb/4jtU=; b=jq093Y51hjJuHayLAmLPzrP7V5Qgi+PgRcvpzjFmxj7FKEHHRz2rrX2jBHfScvm9Zqbun7qcKYF+QlzxF1avwmgu1YjqjAhPDtv5R9kM34QK57j6br0/Y7a9ZoDvE1xgISAcE2JUHFLeQzgTetXYW9gPV9bUyLF/xgm2OyO6Nj8= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C X-CheckRecipientChecked: true X-CR-MTA-CID: e29a8de0a6842c68 X-CR-MTA-TID: 64aa7808 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=MUtcl6eDuwB0+oFHOze0BKl18E50PoA2RnyoAJSumfekXSxvCPahEhcoz/brmMJ85sVIFS+MO5n67ZUNuYWVCOF5/okdO0SOzyPVMjrL2SwZiMyo+XtpKiTcR0kRL5ENMyqwPJaH6VQqgI95phBdzU+NGBH3VcQkRQqdXY/QXGDVbiTDH8Mpqz2TmPM7UtKofPNIbM/PWPupTumlCADbwKNEawmGEijpwZmfGIeRVBNHWHP0Wj5nlISWOlcdSJQ8OmyehRV/153mfVnI9EZChYNAL3GI9tGBQgkpK6e0AilpSwxswLglA+4jK0yg/aY6SPqxaFZKy4w9Q2SLZmwhJA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=VDI9o7V19HxsA4+l25QCa7afQWHFFQ8GWEyymb/4jtU=; b=XJy03NBUSw6vBN3z7pWXum9UYEPoHwdnTLrD12Su/Q40X9LpfSXph21R4cDXjaZyOY8MmUzz+8mlsB92al/UDNKzb+egiUfgQgXFw8ZXbIIHkS7dBdPhbm0OBjWMJyCtW9bxB+JJRZ+puvbERZCDanY1zDFqIq/tnLUvchMFSwERD7yGRssFIZ5PB9uj8dUmidTVJ5Eus+V4KInADWJDkSuFdXluk/nRdzCPIsRB+xhQSScBr3R3lu/YqHH7Jv+w8H6zwCX70YZ8myQpHGr2K4JUi1uFPmd5wia0kTG3sEtneYBs/+ldCqS7c4fiWf/yizAkAtRwbkPHTLL3otm/rw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 40.67.248.234) smtp.rcpttodomain=amd.com smtp.mailfrom=arm.com; dmarc=pass (p=none sp=none pct=100) action=none header.from=arm.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=VDI9o7V19HxsA4+l25QCa7afQWHFFQ8GWEyymb/4jtU=; b=jq093Y51hjJuHayLAmLPzrP7V5Qgi+PgRcvpzjFmxj7FKEHHRz2rrX2jBHfScvm9Zqbun7qcKYF+QlzxF1avwmgu1YjqjAhPDtv5R9kM34QK57j6br0/Y7a9ZoDvE1xgISAcE2JUHFLeQzgTetXYW9gPV9bUyLF/xgm2OyO6Nj8= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 40.67.248.234) smtp.mailfrom=arm.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 40.67.248.234 as permitted sender) receiver=protection.outlook.com; client-ip=40.67.248.234; helo=nebula.arm.com; pr=C Message-ID: Date: Fri, 30 Jun 2023 12:07:48 +0800 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v3 31/52] xen/mpu: make early_fdt_map support in MPU systems Content-Language: en-US To: Ayan Kumar Halder , CC: Stefano Stabellini , Julien Grall , Bertrand Marquis , Wei Chen , "Volodymyr_Babchuk@epam.com" References: <20230626033443.2943270-1-Penny.Zheng@arm.com> <20230626033443.2943270-32-Penny.Zheng@arm.com> From: Penny Zheng In-Reply-To: Content-Type: text/plain; charset="UTF-8"; format=flowed Content-Transfer-Encoding: 8bit X-EOPAttributedMessage: 1 X-MS-TrafficTypeDiagnostic: AM7EUR03FT039:EE_|GV1PR08MB8306:EE_|AM7EUR03FT064:EE_|AS8PR08MB10361:EE_ X-MS-Office365-Filtering-Correlation-Id: 2772704a-90f7-4071-09e3-08db791f9abc x-checkrecipientrouted: true NoDisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: GQ5PVzmDyQZ+TS4Nf1W2uYCaTzttqqPnba/4ci1ODkOGMImSGbf0nSsL3zdDxgtuzZuItz8KjE2N7PmZiaMrJL5WZWYHa8dKIfF5ElNr/2AH3D0Ibrip5qHK9aVNBv9izUVRBicHFAJSqYHl8zgv/CuBf7ceUNZo93F75Z2oS6bLaz+YB566xzTHVS/pCpYoT9NTXI3TbMZOhM9b/7vo2tAxzcqUg/zxafx+UuFg1CUVcNX8uyCVUgNtpd6ullgFCJqst+3hYhFTZdGNlV9Zh1nZ5EB2uo5MVBLODSYcNWU+53FYDLlHAkB8jFIOoeUMp1bb6PqrST1RuYBi7qET5OooB7DGlw4zKR81jDQDhKYI/DbWjt/wx3JGhfcKNFT4WaLhq1KmYqcMJTZ5neJ/lWBdQq9NIeee188qr28jdoX6QqMftsA23FEsKhK18d/0eMBlHfLxtY4n7Ip0Ruqy+nsTaCSJDzCzHw1CJ52S8NHbmtGejGeGzk29ffZQD3KckhRE19sj+mnrGyXax4K03/GeoDmBsvenG8sUQgbM0adqr4kD8qmgXhNtXgaEe9RbJuRaDiNooSBikW7UxhHamjlyUIPSIWXL4B64i5adqEhoF/+2i0bNTIDzKB0jcwGEIWi7WIT6BH+Nol7Teu6BgS7XTvcIEkcqz1jvMIrtv7uNKlKofaApHZhx8ax5obKUP3zxNKQ3JpxpoEEUKcKolgkYRwa1GEeU8lVeT7M87dMK0Rd7R1xRBMzplI9HKv4QdTF5lN38rS304gE6QvDnQ17kenXff7UwqyLJnMetce3BMfa/SWgZoCXoe2QeNvkcF+jJorFjIm9C2/RcDFS3LyZ2p5DWqJhn6hmEavpVZO0= X-Forefront-Antispam-Report-Untrusted: CIP:40.67.248.234;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:nebula.arm.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(396003)(39860400002)(376002)(346002)(136003)(451199021)(46966006)(40470700004)(36840700001)(40460700003)(41300700001)(316002)(83380400001)(82310400005)(426003)(336012)(31696002)(53546011)(36860700001)(86362001)(186003)(44832011)(26005)(2616005)(2906002)(82740400003)(356005)(81166007)(40480700001)(47076005)(5660300002)(36756003)(8676002)(8936002)(478600001)(110136005)(54906003)(16576012)(31686004)(70206006)(70586007)(4326008)(21314003)(3940600001)(43740500002)(36900700001);DIR:OUT;SFP:1101; X-MS-Exchange-Transport-CrossTenantHeadersStamped: GV1PR08MB8306 X-MS-Exchange-Transport-CrossTenantHeadersStripped: AM7EUR03FT064.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: b7a60422-d6be-4b3c-b65d-08db791f9470 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: aYtzJ+rLWjUpz+Bhc/h4ChIbR64nRWobtJA8+DjVTKJPhnzLlqwlbKocbUdbqedRHo9mY2kQIIG+22UA1RTNsQXK0DV3mX0XJr+1XsiSsc7/8jg+FjDwZXHHrDGH+338bUIjgGhP5tTack/eXMK2wdArMSuNyZ8P4xtgIQEDGWlmav86mwOowusNv1yAKBCTScN+SAWmLQG5nmTn/HdjpbEn84NJdd//jec/sz6JBW+fWY6gRAoFz0qcTCZ8nxEJvjWGOsN6WeJ69s3HoKSN9EwxcRDoDUAgpvqnkI3vSt6yeioW129nbkseJeSrp6PT+Rn1AHr4BKefHGIY5jBE+5231RC2sO2zXhpXy1X1NTBcAKb6aH9dwgIXvUxwpnwIyxNnkCJ2rR/YOL7OMNFcBMRhIxghqQM91Ci8k5t03LvPZMo/h35VaswPyn/myx603dI2uUa+oO5EvQnzpeu0ZOfrZIQugHK3yf6rxSFTUeQsDPd5V89oQnW7ES3i+pV+sysNX+SqlRvsN19L0T4TQz4mmYi+1YINn6HMP7Zjt/Wu+hCQpr4N7cPlbSTyi4xMT54PWlz/JwIevzevPdRJHj2CJ1wxKKrnl9L0LAfiXNwd5X4hTRqovGjQdbMg7dgQnyT8JXwTazihZwEfLXzusjKm0c2EoX3a6mNs/SSgcng66MWKp4u0nlBG+tEieiUWRO1QfWkvdixgiQHx9Zrk98qukNolmvyCzxhtkVJF0sDjw40kPO+ddpBvTn36If3pwUYemH5+twal1+WjhW8xa2gQwiIgC2c3szEGtviiW/L5Hlhsb7TA5jw+aX6iZ8G/hMRjXEOaFwoQ99L8q72Trg== X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230028)(4636009)(376002)(346002)(136003)(396003)(39860400002)(451199021)(46966006)(36840700001)(40470700004)(40460700003)(2906002)(186003)(82310400005)(40480700001)(86362001)(107886003)(82740400003)(81166007)(83380400001)(2616005)(426003)(336012)(53546011)(47076005)(36860700001)(110136005)(41300700001)(31696002)(54906003)(16576012)(26005)(478600001)(70206006)(316002)(36756003)(4326008)(31686004)(70586007)(44832011)(5660300002)(8676002)(8936002)(21314003)(3940600001)(43740500002);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Jun 2023 04:08:04.9237 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 2772704a-90f7-4071-09e3-08db791f9abc X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: AM7EUR03FT064.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR08MB10361 Hi, On 2023/6/30 01:22, Ayan Kumar Halder wrote: > > On 26/06/2023 04:34, Penny Zheng wrote: >> CAUTION: This message has originated from an External Source. Please >> use proper judgment and caution when opening attachments, clicking >> links, or responding to this email. >> >> >> In MPU system, MPU memory region is always mapped PAGE_ALIGN, so in >> order to >> not access unexpected memory area, dtb section in xen.lds.S should be >> made >> page-aligned too. >> We add . = ALIGN(PAGE_SIZE); in the head of dtb section to make it >> happen. >> >> In this commit, we map early FDT with a transient MPU memory region, as >> it will be relocated into heap and unmapped at the end of boot. >> >> Signed-off-by: Penny Zheng >> Signed-off-by: Wei Chen >> --- >> v3: >> - map the first 2MB. Check the size and then re-map with an extra 2MB >> if needed >> --- >>   xen/arch/arm/include/asm/arm64/mpu.h |  3 ++- >>   xen/arch/arm/include/asm/page.h      |  5 +++++ >>   xen/arch/arm/mm.c                    | 26 ++++++++++++++++++++------ >>   xen/arch/arm/mpu/mm.c                |  1 + >>   xen/arch/arm/xen.lds.S               |  5 ++++- >>   5 files changed, 32 insertions(+), 8 deletions(-) >> >> diff --git a/xen/arch/arm/include/asm/arm64/mpu.h >> b/xen/arch/arm/include/asm/arm64/mpu.h >> index a6b07bab02..715ea69884 100644 >> --- a/xen/arch/arm/include/asm/arm64/mpu.h >> +++ b/xen/arch/arm/include/asm/arm64/mpu.h >> @@ -72,7 +72,8 @@ typedef union { >>           unsigned long ns:1;     /* Not-Secure */ >>           unsigned long res:1;    /* Reserved 0 by hardware */ >>           unsigned long limit:42; /* Limit Address */ >> -        unsigned long pad:16; >> +        unsigned long pad:15; >> +        unsigned long tran:1;   /* Transient region */ >>       } reg; >>       uint64_t bits; >>   } prlar_t; >> diff --git a/xen/arch/arm/include/asm/page.h >> b/xen/arch/arm/include/asm/page.h >> index 85ecd5e4de..a434e2205a 100644 >> --- a/xen/arch/arm/include/asm/page.h >> +++ b/xen/arch/arm/include/asm/page.h >> @@ -97,19 +97,24 @@ >>    * [3:4] Execute Never >>    * [5:6] Access Permission >>    * [7]   Region Present >> + * [8]   Transient Region, e.g. MPU memory region is temproraily >> + *                              mapped for a short time >>    */ >>   #define _PAGE_AI_BIT            0 >>   #define _PAGE_XN_BIT            3 >>   #define _PAGE_AP_BIT            5 >>   #define _PAGE_PRESENT_BIT       7 >> +#define _PAGE_TRANSIENT_BIT     8 > I don't think this is related to MPU. At least when I look at the bit > representation of PRBAR_EL1/2, This set of _PAGE_xxx flags aren't compliant with PRBAR_EL1/2 register map. It is a flag passed to function map_pages_to_xen() to indicate memory attributes and permission. This bit _PAGE_TRANSIENT is to tell whether the new adding MPU region is a fixed one, or a temporary one. The MPU region created for early FDT is a temporary one, as it will be unmapped at the end of boot. > > bits [47:6] are for the base address. > > If my understanding is correct, then please take it out of this patch > and put it in a separate MMU related patch. > >>   #define _PAGE_AI                (7U << _PAGE_AI_BIT) >>   #define _PAGE_XN                (2U << _PAGE_XN_BIT) >>   #define _PAGE_RO                (2U << _PAGE_AP_BIT) >>   #define _PAGE_PRESENT           (1U << _PAGE_PRESENT_BIT) >> +#define _PAGE_TRANSIENT         (1U << _PAGE_TRANSIENT_BIT) >>   #define PAGE_AI_MASK(x)         (((x) >> _PAGE_AI_BIT) & 0x7U) >>   #define PAGE_XN_MASK(x)         (((x) >> _PAGE_XN_BIT) & 0x3U) >>   #define PAGE_AP_MASK(x)         (((x) >> _PAGE_AP_BIT) & 0x3U) >>   #define PAGE_RO_MASK(x)         (((x) >> _PAGE_AP_BIT) & 0x2U) >> +#define PAGE_TRANSIENT_MASK(x)  (((x) >> _PAGE_TRANSIENT_BIT) & 0x1U) >>   #endif /* CONFIG_HAS_MPU */ >> >>   /* >> diff --git a/xen/arch/arm/mm.c b/xen/arch/arm/mm.c >> index d35e7e280f..8625066256 100644 >> --- a/xen/arch/arm/mm.c >> +++ b/xen/arch/arm/mm.c >> @@ -61,8 +61,17 @@ void flush_page_to_ram(unsigned long mfn, bool >> sync_icache) >> >>   void * __init early_fdt_map(paddr_t fdt_paddr) >>   { >> +#ifndef CONFIG_HAS_MPU >>       /* We are using 2MB superpage for mapping the FDT */ >>       paddr_t base_paddr = fdt_paddr & SECOND_MASK; >> +    unsigned int flags = PAGE_HYPERVISOR_RO | _PAGE_BLOCK; >> +    unsigned long base_virt = BOOT_FDT_VIRT_START; >> +#else >> +    /* MPU region must be PAGE aligned */ >> +    paddr_t base_paddr = fdt_paddr & PAGE_MASK; >> +    unsigned int flags = PAGE_HYPERVISOR_RO | _PAGE_TRANSIENT; >> +    unsigned long base_virt = ~0UL; >> +#endif >>       paddr_t offset; >>       void *fdt_virt; >>       uint32_t size; >> @@ -79,18 +88,24 @@ void * __init early_fdt_map(paddr_t fdt_paddr) >>       if ( !fdt_paddr || fdt_paddr % MIN_FDT_ALIGN ) >>           return NULL; >> >> +#ifndef CONFIG_HAS_MPU >>       /* The FDT is mapped using 2MB superpage */ >>       BUILD_BUG_ON(BOOT_FDT_VIRT_START % SZ_2M); >> +#endif >> >> -    rc = map_pages_to_xen(BOOT_FDT_VIRT_START, maddr_to_mfn(base_paddr), >> -                          SZ_2M >> PAGE_SHIFT, >> -                          PAGE_HYPERVISOR_RO | _PAGE_BLOCK); >> +    rc = map_pages_to_xen(base_virt, maddr_to_mfn(base_paddr), >> +                          SZ_2M >> PAGE_SHIFT, flags); >>       if ( rc ) >>           panic("Unable to map the device-tree.\n"); >> >> >> +#ifndef CONFIG_HAS_MPU >>       offset = fdt_paddr % SECOND_SIZE; >>       fdt_virt = (void *)BOOT_FDT_VIRT_START + offset; >> +#else >> +    offset = fdt_paddr % PAGE_SIZE; >> +    fdt_virt = (void *)fdt_paddr; >> +#endif >> >>       if ( fdt_magic(fdt_virt) != FDT_MAGIC ) >>           return NULL; >> @@ -101,10 +116,9 @@ void * __init early_fdt_map(paddr_t fdt_paddr) >> >>       if ( (offset + size) > SZ_2M ) >>       { >> -        rc = map_pages_to_xen(BOOT_FDT_VIRT_START + SZ_2M, >> +        rc = map_pages_to_xen(base_virt + SZ_2M, >>                                 maddr_to_mfn(base_paddr + SZ_2M), >> -                              SZ_2M >> PAGE_SHIFT, >> -                              PAGE_HYPERVISOR_RO | _PAGE_BLOCK); >> +                              SZ_2M >> PAGE_SHIFT, flags); >>           if ( rc ) >>               panic("Unable to map the device-tree\n"); >>       } >> diff --git a/xen/arch/arm/mpu/mm.c b/xen/arch/arm/mpu/mm.c >> index 14a1309ca1..f4ce19d36a 100644 >> --- a/xen/arch/arm/mpu/mm.c >> +++ b/xen/arch/arm/mpu/mm.c >> @@ -448,6 +448,7 @@ static int xen_mpumap_update_entry(paddr_t base, >> paddr_t limit, >>           /* Set permission */ >>           xen_mpumap[idx].prbar.reg.ap = PAGE_AP_MASK(flags); >>           xen_mpumap[idx].prbar.reg.xn = PAGE_XN_MASK(flags); >> +        xen_mpumap[idx].prlar.reg.tran = PAGE_TRANSIENT_MASK(flags); > > ReferARM DDI 0600A.dID120821 , G1.3.23, PRLAR_EL2, Protection Region > Limit Address Register (EL2), I don't seethis bit described anywhere. Do > we really need this bit for MPU ? > Yes, It is introduced for software implementation. You could see commit [PATCH v3 36/52] xen/mpu: implememt ioremap_xxx in MPU and commit [PATCH v3 38/52] xen/mpu: map domain page in MPU system for better understanding. > > - Ayan > >> >>           write_protection_region((const pr_t*)(&xen_mpumap[idx]), idx); >>       } >> diff --git a/xen/arch/arm/xen.lds.S b/xen/arch/arm/xen.lds.S >> index 4f7daa7dca..f2715d7cb7 100644 >> --- a/xen/arch/arm/xen.lds.S >> +++ b/xen/arch/arm/xen.lds.S >> @@ -216,7 +216,10 @@ SECTIONS >>     _end = . ; >> >>     /* Section for the device tree blob (if any). */ >> -  .dtb : { *(.dtb) } :text >> +  .dtb : { >> +      . = ALIGN(PAGE_SIZE); >> +      *(.dtb) >> +  } :text >> >>     DWARF2_DEBUG_SECTIONS >> >> -- >> 2.25.1 >> >> From xen-devel-bounces@lists.xenproject.org Fri Jun 30 04:40:57 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 30 Jun 2023 04:40:57 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557264.870455 (Exim 4.92) (envelope-from ) id 1qF5w3-0007bP-5O; Fri, 30 Jun 2023 04:40:43 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557264.870455; Fri, 30 Jun 2023 04:40:43 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qF5w3-0007bI-2s; Fri, 30 Jun 2023 04:40:43 +0000 Received: by outflank-mailman (input) for mailman id 557264; Fri, 30 Jun 2023 04:40:41 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qF5w1-0007b7-Gm for xen-devel@lists.xen.org; Fri, 30 Jun 2023 04:40:41 +0000 Received: from mail-pl1-x62d.google.com (mail-pl1-x62d.google.com [2607:f8b0:4864:20::62d]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 41fc59c1-1700-11ee-8611-37d641c3527e; Fri, 30 Jun 2023 06:40:38 +0200 (CEST) Received: by mail-pl1-x62d.google.com with SMTP id d9443c01a7336-1b6824141b4so8732995ad.1 for ; Thu, 29 Jun 2023 21:40:37 -0700 (PDT) Received: from localhost ([122.172.87.195]) by smtp.gmail.com with ESMTPSA id h18-20020a63f912000000b0051b36aee4f6sm9578389pgi.83.2023.06.29.21.40.34 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 29 Jun 2023 21:40:35 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 41fc59c1-1700-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1688100036; x=1690692036; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:from:to:cc:subject:date:message-id:reply-to; bh=dmit/twBMrzWwi7L3OpjitdhPWaDSjPsJTJfNb+d58k=; b=y6ZL3thjcaG4ajVS/+wOgya21yT/YbEwEDKpG1ykVcm3j69SysPKs/3id2TY1j17kc s3SYa4prY1VFf6yHtr6jFIvub+o5SweVA6PE1V922hS3gVwT7bafamZ7QI3baDetARIq OhRaTVd1edasKX6QqH1aV21WzcyZiDBomtgzZH3RetPX8u6/LKpYeZAgKCX0IqKWOfxv CCtXhon/eobWpOAMyWEVxCxOt9TInzp3SvtI2HJ6ABIPvq6kgunHI4x9OqFMLQGHWabe H3LD2JS97DOeHjBRois8vlDO4QnarNvjxMue8PdYxvFO2eRSgIyqtSEvmRwSVjm327mN QvIw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1688100036; x=1690692036; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=dmit/twBMrzWwi7L3OpjitdhPWaDSjPsJTJfNb+d58k=; b=O59MLA0rfjrG96Wthyp+j64bOTNlJ/ytq/71eQlp9lYyVeCG02go3cuyytHHWV1CPV YvNhCsAXizNeQuWBnXQO0OdTnfU+/Klk5BgkB3x6t1kuTULg2Onj0K8Aflq/3OZg0Ob1 V83cC3o429aTITr6d4m+haGP7OljOhjkjxz8ECfJDiC5hRwVvqk+dRUImUN3hYcJ7va0 mJM23jYAAfFtfyIJcdMiYQS/PTVi4aitZii13H27nba6N5GCgtpFqzJaF5DR0wZNzmiQ 6Jh4KYjI9Mlm+HUYY/rhMY4O1Aq/Bt7+a7kKobe0GIryXBVjdEQe5xG+8pDg4/3nt54h Zs5Q== X-Gm-Message-State: ABy/qLb9cdWwG2NY2oYZ8JwaoYSe7VanqsdEy030HHlEXJYBrErfT3ch pTqawPwW9E0EqCjpJBubk0iq1Q== X-Google-Smtp-Source: APBJJlGv8w3ciRMXHJvtBmHFO/36mp7Iucp6FvgADARZGWm0Z700GpZe8M0KdI2MGV8h0pbD2/kahA== X-Received: by 2002:a17:902:d48c:b0:1b8:6984:f5e5 with SMTP id c12-20020a170902d48c00b001b86984f5e5mr2314410plg.12.1688100036273; Thu, 29 Jun 2023 21:40:36 -0700 (PDT) Date: Fri, 30 Jun 2023 10:10:32 +0530 From: Viresh Kumar To: Anthony PERARD Cc: xen-devel@lists.xen.org, Juergen Gross , Julien Grall , Vincent Guittot , stratos-dev@op-lists.linaro.org, Alex =?utf-8?Q?Benn=C3=A9e?= , Mathieu Poirier , Oleksandr Tyshchenko , Erik Schilling Subject: Re: [PATCH V3.1] libxl: arm: Add grant_usage parameter for virtio devices Message-ID: <20230630044032.khorme7rnlgzvl2u@vireshk-i7> References: <0e347b2f4817cc578a5f8e41bf70503ae8cf69e3.1685684586.git.viresh.kumar@linaro.org> <7a0afe5aebba4c0b5be43a517dedf41d4e4ddd57.1686636036.git.viresh.kumar@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: On 13-06-23, 11:48, Anthony PERARD wrote: > On Tue, Jun 13, 2023 at 11:32:16AM +0530, Viresh Kumar wrote: > > Currently, the grant mapping related device tree properties are added if > > the backend domain is not Dom0. While Dom0 is privileged and can do > > foreign mapping for the entire guest memory, it is still desired for > > Dom0 to access guest's memory via grant mappings and hence map only what > > is required. > > > > This commit adds the "grant_usage" parameter for virtio devices, which > > provides better control over the functionality. > > > > Signed-off-by: Viresh Kumar > > --- > > V3->V3.1: > > - Print "0" or "1" in xenstore instead of "True" or "False" for grant_usage. > > Reviewed-by: Anthony PERARD Hi, I still don't see this patch pushed upstream. Are we waiting for some release to happen ? Thanks. -- viresh From xen-devel-bounces@lists.xenproject.org Fri Jun 30 06:50:55 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 30 Jun 2023 06:50:55 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557270.870466 (Exim 4.92) (envelope-from ) id 1qF7xp-0004UQ-Al; Fri, 30 Jun 2023 06:50:41 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557270.870466; Fri, 30 Jun 2023 06:50:41 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qF7xp-0004UJ-7D; Fri, 30 Jun 2023 06:50:41 +0000 Received: by outflank-mailman (input) for mailman id 557270; Fri, 30 Jun 2023 06:50:40 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qF7xn-0004UC-Mo for xen-devel@lists.xenproject.org; Fri, 30 Jun 2023 06:50:40 +0000 Received: from NAM10-BN7-obe.outbound.protection.outlook.com (mail-bn7nam10on20609.outbound.protection.outlook.com [2a01:111:f400:7e8a::609]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 6b0f4b11-1712-11ee-b237-6b7b168915f2; Fri, 30 Jun 2023 08:50:37 +0200 (CEST) Received: from MW2PR16CA0058.namprd16.prod.outlook.com (2603:10b6:907:1::35) by DS0PR12MB7581.namprd12.prod.outlook.com (2603:10b6:8:13d::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.15; Fri, 30 Jun 2023 06:50:32 +0000 Received: from CO1NAM11FT046.eop-nam11.prod.protection.outlook.com (2603:10b6:907:1:cafe::4c) by MW2PR16CA0058.outlook.office365.com (2603:10b6:907:1::35) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.22 via Frontend Transport; Fri, 30 Jun 2023 06:50:32 +0000 Received: from SATLEXMB04.amd.com (165.204.84.17) by CO1NAM11FT046.mail.protection.outlook.com (10.13.174.203) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6500.49 via Frontend Transport; Fri, 30 Jun 2023 06:50:31 +0000 Received: from SATLEXMB07.amd.com (10.181.41.45) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Fri, 30 Jun 2023 01:50:29 -0500 Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB07.amd.com (10.181.41.45) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.6; Thu, 29 Jun 2023 23:50:24 -0700 Received: from [10.71.193.39] (10.180.168.240) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.23 via Frontend Transport; Fri, 30 Jun 2023 01:50:23 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 6b0f4b11-1712-11ee-b237-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=ASBzq26sYXw+PzyLRzIgP+7wLlPFXmeqqXKPnoU4vizSUqefh35qGacHtK9YVhFSlZZcMWkLgeRfqhf8U81qNgSFZ7S9D/kkRP5afvXkGQjO6RIPRM7e0eeVvnhV5RPWeV6CxieulRwu3s3B1wIKMXlULmMCcMTbCeTrHCD5M69v7FvfzwiiqNNC1qfJ3M+dy4yp+4RUBEcCUkI5fLpLDyEFyj7HGyCaYxm/HHx4mzG6DdoY065kBgrVSqOKC67iTQaVdWPOkA7OnrO5YhBGEjO0yqHIipJmo7KH0WrkuwSSGonez7UAxlRM2AtJ94gsatgbJkJ9coV0nd2Pk1aoDQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=NwEK+o9IwmrNuGgAXKPWmNm4XtTe/QRaK1RAAUpapcg=; b=lm6SyktPEJ+bJ1Cn8if1FT+kicjl5T1oXj5Rt/kJjHXGAd37he0jlavFPgrVovbie7h7XjofLgO2KyufAKa3IGJKpjV1mmGP9Ke6t6YS0NRLCKkJpbExDjGbzCZldwAkTKpgVaCRWxc3DuXcVThVXBvWDN7bEFvedhw3w7E/Dx2XuZMOqW9dEtraiDaAuAhpl/vYEbCdaW/5ydjXe46KPXkbliqounuoarphYX3JzWDpWnk9HSiJbeKlm8AGCe4Bjka0ZdH3Ws9e0F3TqnURGjj8TER9TtyRzUmRdwTf+UryJ03FQMe1l88kjhXEvC3x7+rFvh1/bmvQK3hFn+F7og== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=xen.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=NwEK+o9IwmrNuGgAXKPWmNm4XtTe/QRaK1RAAUpapcg=; b=Y6efE18GnrYupcyMUQ8WYprcQaOk5EFGzrcuVQXY6raDRYTb0oL/Yw1qDUIf9RGad1uh5rdq+p5JcVlwpcfnxEY+WJ7EbkJ+hxt4XH0rrmT+9+JMtLOZHH9oHtXEODHeC2wjQ296TvZwLPqfdkJgPxn5qvi4EUflOjVT0UQkVTU= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C Message-ID: Date: Fri, 30 Jun 2023 08:50:22 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [v2 1/4] xen/arm64: head: Don't map too much in boot_third To: Julien Grall , CC: , , Julien Grall References: <20230629201129.12934-1-julien@xen.org> <20230629201129.12934-2-julien@xen.org> Content-Language: en-US From: Michal Orzel In-Reply-To: <20230629201129.12934-2-julien@xen.org> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO1NAM11FT046:EE_|DS0PR12MB7581:EE_ X-MS-Office365-Filtering-Correlation-Id: b19219bb-12c2-4fbc-adf8-08db79364c77 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 4E3i8RSfSG4iBeP2mBr8XWgtRF7eJlEIphfwoWgvtlRH2+JlbmRNq/elzfWYcSLO4VvN9g3N8H+NVz98H4hRr9K6Bz8gizzdz7Vg0BYnwhRhWXasesv2OfRN4V28l6ie7m+XcDDVnnKsDA1VS9uIvzMaE0B+VZgykwWPNh3lQx+pmIo8O0mzGnEb3v95FtbH3O6toivYP8sSUdlgNykPkmNV1d0DcPKqIX0FBIrmmbS2JGvzCczViEE3QtTUheGWzXRKJC9qCLllY4rqajEX1sLz7bF7721vDPLE6Ac2bQ3XHfXTW7W6fMlIgkIiuaf6WODpSj2PKq7teW/LJYDVCIRCe/sDaw6igSpeVkZQLJ6cXrzsUaDtcAYlkj3d2uH3LWoVuAVS319glEBvqwGbEo1Ix8cWGoHj7g12qZwficG5viHH+24tQqHNrdtUIpdA75ROXK+vceaz1JsFDsZrsczJwH/9zFZ480V5/jXUcay7Q0OM4PNKHwbFpGkxWpqixOItEZxcS0aK2vUZWnQmd8efwO6t8PflkgElEJszlCIfigAbHf/hm0wIcxDsiOgbjebV5HXpqL8CpbjqzPFW8gyXsD6NXg7cfUpeo/mBy45c0q8u3FEGWBNRXgQ3qrMllLcR/4tr48I6zPxjMSGlVF5UEYXH3UCVuC/5BBD/tV87cDviS54PjFzb8logfrZrP+oGYEnDFBrlUgCS2iwhVHfPejiwX7eSnqt6XcdeHolKBlg4h8C6OmoI+6cZt513fKVmxhhlQ3r8oKRxONnh1pCLyE/maYxA73Hfa/o76YNog5GAIcWPUEhOIYIYFyiz X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(136003)(396003)(39860400002)(376002)(346002)(451199021)(46966006)(40470700004)(36840700001)(70586007)(70206006)(40480700001)(40460700003)(4326008)(426003)(2906002)(336012)(47076005)(2616005)(186003)(83380400001)(316002)(36860700001)(54906003)(16576012)(110136005)(44832011)(5660300002)(478600001)(26005)(53546011)(8936002)(8676002)(41300700001)(356005)(82740400003)(82310400005)(31696002)(36756003)(86362001)(81166007)(31686004)(36900700001)(43740500002);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Jun 2023 06:50:31.9445 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: b19219bb-12c2-4fbc-adf8-08db79364c77 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com] X-MS-Exchange-CrossTenant-AuthSource: CO1NAM11FT046.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS0PR12MB7581 On 29/06/2023 22:11, Julien Grall wrote: > > > From: Julien Grall > > At the moment, we are mapping the size of the reserved area for Xen > (i.e. 2MB) even if the binary is smaller. We don't exactly know what's > after Xen, so it is not a good idea to map more than necessary for a > couple of reasons: > * We would need to use break-before-make if the extra PTE needs to > be updated to point to another region > * The extra area mapped may be mapped again by Xen with different > memory attribute. This would result to attribute mismatch. > > Therefore, rework the logic in create_page_tables() to map only what's > necessary. To simplify the logic, we also want to make sure _end > is page-aligned. So align the symbol in the linker and add an assert > to catch any change. > > Lastly, take the opportunity to confirm that _start is equal to > XEN_VIRT_START as the assembly is using both interchangeably. > > Signed-off-by: Julien Grall NIT: it looks like other maintainers are not CCed on this series. Reviewed-by: Michal Orzel ~Michal From xen-devel-bounces@lists.xenproject.org Fri Jun 30 06:56:59 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 30 Jun 2023 06:56:59 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557276.870476 (Exim 4.92) (envelope-from ) id 1qF83q-0005At-3u; Fri, 30 Jun 2023 06:56:54 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557276.870476; Fri, 30 Jun 2023 06:56:54 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qF83q-0005Am-0Y; Fri, 30 Jun 2023 06:56:54 +0000 Received: by outflank-mailman (input) for mailman id 557276; Fri, 30 Jun 2023 06:56:53 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qF83p-0005Ag-Bh for xen-devel@lists.xenproject.org; Fri, 30 Jun 2023 06:56:53 +0000 Received: from NAM11-BN8-obe.outbound.protection.outlook.com (mail-bn8nam11on20600.outbound.protection.outlook.com [2a01:111:f400:7eae::600]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 4a4109cb-1713-11ee-b237-6b7b168915f2; Fri, 30 Jun 2023 08:56:52 +0200 (CEST) Received: from DS7PR05CA0106.namprd05.prod.outlook.com (2603:10b6:8:56::24) by PH7PR12MB5595.namprd12.prod.outlook.com (2603:10b6:510:135::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.19; Fri, 30 Jun 2023 06:56:48 +0000 Received: from DM6NAM11FT029.eop-nam11.prod.protection.outlook.com (2603:10b6:8:56:cafe::92) by DS7PR05CA0106.outlook.office365.com (2603:10b6:8:56::24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6565.10 via Frontend Transport; Fri, 30 Jun 2023 06:56:48 +0000 Received: from SATLEXMB03.amd.com (165.204.84.17) by DM6NAM11FT029.mail.protection.outlook.com (10.13.173.23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6500.49 via Frontend Transport; Fri, 30 Jun 2023 06:56:46 +0000 Received: from SATLEXMB08.amd.com (10.181.40.132) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Fri, 30 Jun 2023 01:56:46 -0500 Received: from SATLEXMB04.amd.com (10.181.40.145) by SATLEXMB08.amd.com (10.181.40.132) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Thu, 29 Jun 2023 23:56:46 -0700 Received: from [10.71.193.39] (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server id 15.1.2507.23 via Frontend Transport; Fri, 30 Jun 2023 01:56:45 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 4a4109cb-1713-11ee-b237-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=jUiaaBu3lGaa7rn+TQr0z1ocQo1o1nDMLLLsUwvYBTgqjVnd4MxKNnWfVAb5CxPqXy7mUM2azaBnKUgWmU0C26Rv5ItRXwHOgb813goek6V3Vzd9GEjbCj19JlfCJZYNVPMXg46OP1tXg9byA2Zc7R63vP1G6ICjtDA5sR2kk9QEW8vyAThUJoTWEV8hyPOEX700/psJCczuD2wAuPMNNqP5LSobGKmM7+iwMWIHj/RVb1NLoRVWF8K1ySfscE9cIpedVhf4/JJWZ2u8bH9X9NuQ6OWfDSC1rALp9hRPaVt3xwB4AUu4DBJgJ0dmVw+DYanLPRhkiapcRg2fEV2azQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=HlxV8Lbaehrh+AV43bPj3QVxcxMU/w/pDD24b4RSVHY=; b=REi0xLXhQ9GDZGE4r1p9P7ZeTveKeaa58e+M27qKcwk6aR0ygbUFyMTAoqgNhYfAdyLU5sX0cQyWOtBmRnVL4eiZdImtd10xrA/OQLFk5jRTjwtl6tnh+q31MRsUMAC7WfL3nRTCVXQvidOs1W9d88v86NDeS6gPfmmk/pBH8tWzalro0xWOqRg5Kh2o+dOrmr/cLYip/n+g6ouaFLStLLWCYDdbwUq5cvrvsKcEJpjN7LQW33ji8xRk5t8ywUq5ghVB0kphV8YWYRsh4Wx2nQUUGAoR8MOOa7IkfNL1fHzi4LcZ4muZABe2uQcpykJvkdChvKUPVV52tw8LbsMnEw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=xen.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=HlxV8Lbaehrh+AV43bPj3QVxcxMU/w/pDD24b4RSVHY=; b=y4R3cB+9GIu9Ma/zs4RGu3k0/KLBwqh/E6IWAEWWlHXx3TS5jGOPvUcVjKGQoG/YMy0C0M3wyBh6bceH2r25apVCJvNHEXXzIDLLqFJJBpgLyuTDDAHxQywwoeHrL/P8BF07d8Ow6OTRhosMnlbLAeN+BEZhk5QbI0vKHTZauuo= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C Message-ID: Date: Fri, 30 Jun 2023 08:56:33 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [v2 3/4] xen/arm: Rework the code mapping Xen to avoid relying on the size of Xen Content-Language: en-US To: Julien Grall , CC: , , Julien Grall References: <20230629201129.12934-1-julien@xen.org> <20230629201129.12934-4-julien@xen.org> From: Michal Orzel In-Reply-To: <20230629201129.12934-4-julien@xen.org> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DM6NAM11FT029:EE_|PH7PR12MB5595:EE_ X-MS-Office365-Filtering-Correlation-Id: 247fbda6-1d89-4641-41a4-08db79372bf2 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: rsb/dxhHaOswTLtOpMsKpS9OB8b1wcd+MqQkEA2vWcM0//SkPoHToEK2ZHU5BZKAzJBDR/i5PTdaA0zwyKXVMzPz1d1hBCeRIhgsQyb7DYXy9oKxx3SYWbfdsK4owZYWdOgexpv5406tytrinosg8UhGg5m6HL37z4RIONh1UBAbervQJLXmnyOhuzxOvAQ5I6HVh0qHNXLxhiFu2dxQxRzV6K4V74xlsD3M+EzfOvAVVlpwkO5G2NBS0l69pe2WFK/tKNrBCugbxB+JG+g4bWP5nSNF18nDvd/QWlmx5qHN7wxh5iATUbakqoA8IcftMOuN3UAz1IYeKDtHi0oKnDwpUT2N4vixcqj5LDH9+Nz29ixuh+0yd+ryM6AnrZzIWeVdpJB3rTDaiBZ40Aab4iaAs/whYHahgkP3TRQzXpa3d4nYcJVMUjPxFfn4gCf028fYCsbIcXAxv051p3pnlixE8k2i7LKagKsB2OwjFoDwKK6ElESd86r8Uv9ypGlRUSymbvtPL32BM8YPqlAv1zGbIfivvscRISzCs2VPnoOnLV80BWGLq+m9vVNdwUFOnTPweLqUoL896aczcGBcgQbi1R3R3djJaf78Deybvf9i+1fLxhnKn1ziu/NLKqSZ/JgWKAf9ejt6+KtN+YLuQb3ZaB3n5CkrYzSDL59igwZInQGtHlerWaQHMfZy7IzEegDbrXEx88bOYBqbKE5aMHVMPqKxatEl1iV8Sc6jlLfiRYvYAzXsX++DTx50fy3PK5bCdaGFa9ryptz45QxlPZWUe5krawiowCTG+kXENQo= X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(346002)(136003)(396003)(376002)(39860400002)(451199021)(40470700004)(36840700001)(46966006)(82310400005)(356005)(82740400003)(81166007)(6666004)(426003)(336012)(47076005)(2616005)(186003)(26005)(53546011)(40480700001)(36860700001)(31696002)(5660300002)(86362001)(40460700003)(8676002)(44832011)(36756003)(2906002)(4744005)(70206006)(70586007)(16576012)(478600001)(54906003)(110136005)(8936002)(316002)(4326008)(41300700001)(31686004)(43740500002)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Jun 2023 06:56:46.9734 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 247fbda6-1d89-4641-41a4-08db79372bf2 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com] X-MS-Exchange-CrossTenant-AuthSource: DM6NAM11FT029.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH7PR12MB5595 On 29/06/2023 22:11, Julien Grall wrote: > > > From: Julien Grall > > At the moment, the maximum size of Xen binary we can support is 2MB. > This is what we reserved in the virtual address but also what all > the code in Xen relies on as we only allocate one L3 page-table. > > When feature like UBSAN (will be enabled in a follow-up patch) and GCOV > are enabled, the binary will be way over 2MB. > > The code is now reworked so it doesn't rely on a specific size but > will instead look at the reversed size and compute the number of > page-table to allocate/map. > > While at it, replace any reference to 4KB mappings with a more > generic word because the page-size may change in the future. > > Also fix the typo s/tlb/tbl/ in code move in arm32/head.S as well as in arm64 (can be done on commit) > > Signed-off-by: Julien Grall Reviewed-by: Michal Orzel ~Michal From xen-devel-bounces@lists.xenproject.org Fri Jun 30 06:58:43 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 30 Jun 2023 06:58:43 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557280.870486 (Exim 4.92) (envelope-from ) id 1qF85Q-0005iX-ES; Fri, 30 Jun 2023 06:58:32 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557280.870486; Fri, 30 Jun 2023 06:58:32 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qF85Q-0005iQ-Bo; Fri, 30 Jun 2023 06:58:32 +0000 Received: by outflank-mailman (input) for mailman id 557280; Fri, 30 Jun 2023 06:58:31 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qF85P-0005iK-BM for xen-devel@lists.xenproject.org; Fri, 30 Jun 2023 06:58:31 +0000 Received: from NAM10-MW2-obe.outbound.protection.outlook.com (mail-mw2nam10on2060c.outbound.protection.outlook.com [2a01:111:f400:7e89::60c]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 847b59e4-1713-11ee-b237-6b7b168915f2; Fri, 30 Jun 2023 08:58:30 +0200 (CEST) Received: from DS7PR07CA0007.namprd07.prod.outlook.com (2603:10b6:5:3af::25) by DS0PR12MB7533.namprd12.prod.outlook.com (2603:10b6:8:132::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.19; Fri, 30 Jun 2023 06:58:25 +0000 Received: from DM6NAM11FT026.eop-nam11.prod.protection.outlook.com (2603:10b6:5:3af:cafe::1) by DS7PR07CA0007.outlook.office365.com (2603:10b6:5:3af::25) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.22 via Frontend Transport; Fri, 30 Jun 2023 06:58:25 +0000 Received: from SATLEXMB03.amd.com (165.204.84.17) by DM6NAM11FT026.mail.protection.outlook.com (10.13.172.161) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6500.49 via Frontend Transport; Fri, 30 Jun 2023 06:58:25 +0000 Received: from SATLEXMB06.amd.com (10.181.40.147) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Fri, 30 Jun 2023 01:58:25 -0500 Received: from SATLEXMB04.amd.com (10.181.40.145) by SATLEXMB06.amd.com (10.181.40.147) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Fri, 30 Jun 2023 01:58:24 -0500 Received: from [10.71.193.39] (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server id 15.1.2507.23 via Frontend Transport; Fri, 30 Jun 2023 01:58:23 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 847b59e4-1713-11ee-b237-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=XrMVDzUuwDe64R6EPbLA2qVjv3p+KkGSLSxgCrBS/FcDf6ZpfySMVo31p9kAybVwtatgOmAixS8rbQra2cBZS8AhCJwzaeTE4O4sY3vjfCepuqP44Cpejk1UXIzkeU+/n1X86Fmn0YwOkKTv+so7oCUF6m02k+TLYXEzglqYKjIY6PSfqpIHApcrXXzS1bJr7n0dAMT4s+FIjbRRK/9+pRcl5qtxAoAv0rKPzf6z+Airakh7k0hMDs4Y/sl6HBjCU6mTEFyQcB+VSVk4QblLTCCjoVlQhl7rydmyv/udm573hclsy28SOoBINwSWdwdqXLNOaht+srpuHNgK2lw9QA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=8dSf91cpV2ZlfMYs0xZvmcR8oOgsfgItiRHBCj0n0RQ=; b=BFCqPfELOaTjb9tdTAr3OAHVWmEHm5cZXZu8dtpfP2FKeRbaE3CnMzIO5LaXoPlJVHKXVm6HeSVh7OvK3WnZYz3RFI/eaU1XB9r5BWMLLhgsMY3SgxH/68IwcWMIPJI+1s+5GFsbir4NdAJfsX6dhKZrj3zWsYgTxgysKqhvvM7OXzkWPvlY6uNMZm5O9D65F40PQ6e1yRXJXMcT0HtYyEvLEH/oeIbfScV1aeS8c8k4bm7vqm5phM/eH/3CZFIbXGYzChb77tfPoXoRvqd63c9MuDgNLsRqkdJKNE8aTbyPa1v37XSr8TViqOezSKbdMfF3XD5ZgUbWA4YVnZ3gzg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=xen.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=8dSf91cpV2ZlfMYs0xZvmcR8oOgsfgItiRHBCj0n0RQ=; b=DLPppAWklsPTjsxaCnPf810E1AnM3RxFfoPHvZ3IV07xVgJJ4o2YeYpnaL71KkEO4HwMTYBNd3nqLJsAsaLeBFrVY4d8nfvDxOjlkalpZtwDl+mjOzoD6rUlSHytpmC9sQ8ws/BzEFg8LlxSs7tMAMpgxn/a9tYBYDI5LXVxBN0= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C Message-ID: <1bbde5ea-9cb2-4aac-fe36-66b7cfddd00a@amd.com> Date: Fri, 30 Jun 2023 08:58:23 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [v2 4/4] xen/arm: Allow the user to build Xen with UBSAN Content-Language: en-US To: Julien Grall , CC: , , Julien Grall References: <20230629201129.12934-1-julien@xen.org> <20230629201129.12934-5-julien@xen.org> From: Michal Orzel In-Reply-To: <20230629201129.12934-5-julien@xen.org> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DM6NAM11FT026:EE_|DS0PR12MB7533:EE_ X-MS-Office365-Filtering-Correlation-Id: 886da3f4-27b2-4efc-a17f-08db793766b1 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: PE+9HYRbBTcu4v+ivZpSMmpMqO+UR5t/sGwleIpTAFebc0f5EYdQEA4lvscTQLQ8haJcUeICpAFw0aHJpvBw1UkA7mBGWsoIvRaXnRCJSwwRm6NJ7daDx7SNJlamTjWRc53FjEQHtRvPklXvld34sk6+qEJqw9cRYpvutlmDo1WkVOBbEAfZWEAeAuLv2gjreH9q3D244zuPIvfcaF8Hh6v/PGXsgImDDi/TTwDCuSqA45He8yJHytL9t12lWZ/WP2xSHAqeXZg8Vfm+BiaguVRrVh/cgExfZV9fyD5r/z/EzXVuGJkHWmt+XOQ4fp/CssBsfsXK5QQt8Dk4huyLLebhlrkHRAO2lMaMyGo+Cd2V5cRc62dxsdZEwdNwSgF4xfj5YvXSJlW9LesLxg/QU00NCdZhmcVJSsc1BVhzzqz+79LX06AEFf2qFOmG3uMEqcxexAeniu3rPVqBxXliWD44ceRYrUabJJIH8vmZP8Ma2WLsMGL2MjBYioUgXof4Zgqz81gc1LELPRjF8wf7+MxZC/X7Se8bXyvlV00TBWs+oYzooArz1sxfZAO9PL6SZp83DoQxtyO/jAfrjgn8VH0GhM4fLsT8XlAw1ZGQHZuMe5bfRUHmxjcZb8ggM9MA7imIhPzvvgS7Wqyd0C/G24lerX0QUYM/By2lOYKymk+i0/SAqqKf4b8KUlyPyldk5BwxSAYISKheA8A0993MfVS0v5bkRJt0UptJLmFyNWYaUYUip+VfjOL0w4Ys1XY2GeS52QK8o+FRIjS/wJNWW/WwCoNNuXhxkwmCnwMPxrbFDFs7lKCC5PuxBjXbCa6f X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(396003)(136003)(376002)(346002)(451199021)(46966006)(40470700004)(36840700001)(53546011)(186003)(26005)(426003)(83380400001)(336012)(47076005)(40480700001)(40460700003)(2616005)(36860700001)(5660300002)(110136005)(16576012)(54906003)(44832011)(478600001)(316002)(4326008)(70586007)(70206006)(8676002)(82310400005)(41300700001)(8936002)(31686004)(31696002)(86362001)(82740400003)(36756003)(2906002)(356005)(81166007)(36900700001)(43740500002);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Jun 2023 06:58:25.5355 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 886da3f4-27b2-4efc-a17f-08db793766b1 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com] X-MS-Exchange-CrossTenant-AuthSource: DM6NAM11FT026.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS0PR12MB7533 On 29/06/2023 22:11, Julien Grall wrote: > > > From: Julien Grall > > UBSAN has been enabled a few years ago on x86 but was never > enabled on Arm because the final binary is bigger than 2MB ( > the maximum we can currently handled). > > With the recent rework, it is now possible to grow Xen over 2MB. > So there is no more roadblock to enable Xen other than increasing > the reserved area. > > On my setup, for arm32, the final binaray was very close to 4MB. > Furthermore, one may want to enable UBSAN and GCOV which would put > the binary well-over 4MB (both features require for some space). > Therefore, increase the size to 8MB which should us some margin. > > Signed-off-by: Julien Grall > > --- > > The drawback with this approach is that we are adding 6 new > page-table (3 for boot and 3 for runtime) that are statically > allocated. So the final Xen binary will be 24KB bigger when > neither UBSAN nor GCOV. > > If this is not considered acceptable, then we could make the > size of configurable in the Kconfig and decide it based on the > features enabled. > > Changes in v2: > - Fix typoes > - Add Michal's reviewed-by tag I cannot see one, so: Reviewed-by: Michal Orzel ~Michal From xen-devel-bounces@lists.xenproject.org Fri Jun 30 07:02:47 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 30 Jun 2023 07:02:47 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557284.870496 (Exim 4.92) (envelope-from ) id 1qF89R-0007Dl-VW; Fri, 30 Jun 2023 07:02:41 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557284.870496; Fri, 30 Jun 2023 07:02:41 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qF89R-0007De-Rr; Fri, 30 Jun 2023 07:02:41 +0000 Received: by outflank-mailman (input) for mailman id 557284; Fri, 30 Jun 2023 07:02:40 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qF89Q-0007DY-Mp for xen-devel@lists.xenproject.org; Fri, 30 Jun 2023 07:02:40 +0000 Received: from NAM10-DM6-obe.outbound.protection.outlook.com (mail-dm6nam10on20625.outbound.protection.outlook.com [2a01:111:f400:7e88::625]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 166818ff-1714-11ee-8611-37d641c3527e; Fri, 30 Jun 2023 09:02:37 +0200 (CEST) Received: from DM6PR10CA0023.namprd10.prod.outlook.com (2603:10b6:5:60::36) by SN7PR12MB7980.namprd12.prod.outlook.com (2603:10b6:806:341::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.24; Fri, 30 Jun 2023 07:02:31 +0000 Received: from DM6NAM11FT009.eop-nam11.prod.protection.outlook.com (2603:10b6:5:60:cafe::a3) by DM6PR10CA0023.outlook.office365.com (2603:10b6:5:60::36) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.22 via Frontend Transport; Fri, 30 Jun 2023 07:02:30 +0000 Received: from SATLEXMB04.amd.com (165.204.84.17) by DM6NAM11FT009.mail.protection.outlook.com (10.13.173.20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6500.47 via Frontend Transport; Fri, 30 Jun 2023 07:02:30 +0000 Received: from cjq-desktop.amd.com (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Fri, 30 Jun 2023 02:02:10 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 166818ff-1714-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=LfS8eiG6A0Fc8Kglxwdq1j5nPSJaI54XPL7WpVhd+v9baktWU7MCoMJFkCkvYMRP2puc4ix0FIbBzNWmGabx9yitoCBhU7P4FVL7A2s07T0Zmdz7HZ5Q3P1lXHXL1Qvv6Z+2TPVE6vNlYmGZdg3fu7alYIKDQvHVYS7dDaUxRT2Tu1uy11U46BlmuGo0URHFKl9XXPxR7HCMuuAH/OTr5Cphlr3IYTOyHw5eXWYRASmQY4+rdJVhbV6uOgGLjzNU16cUAs2m4K/3NrXlYYoU4S0AiMtyTLIKFrncOlRYnk1BmSvGWmTuwuE9VXyuyvDoDJUMdEp7flcn2g321USVbg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=bh/tfwlmMHLATsr7SpyJya/fhOiP5HoWlhyHVvGtA8g=; b=PzwcrpVumvzQCYdbBw7Rn11Av7ryB1LKV428ck4x/MOKqrthQzmYZ3mzTUMO301bhBCVwcPLPvUvXBKyHYPdtO/8xnsW8QeOfiOAAKlDoUhiwh8mIwOU+3lkia75mJ/YYEKK5uPSnSwN0rZWNs4TzaBTj3R86EUIWEjZYOxFTWQn6DmuOX4sREdFpbSNXxtTkG7HRJFc2hbZBq+Jn888lztUvulm/Gd0ngAa+wO0yzP4GnuNAXt77Sqr1acSfFMrt5UrMZf1WfgGlc/Iv6sS/PXfmrZwfR8V1brU0IG+cAV1dB3f7GDyP6HA0/nJ8awkTD0mcIjMlQL5L7ejbCx/eA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=redhat.com smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=bh/tfwlmMHLATsr7SpyJya/fhOiP5HoWlhyHVvGtA8g=; b=cEZXSqU/VX/fYtFiRjtFiZxiVZEgpyAZp1sxAExdexUzhAL6mMOpzfVse0iPbLl2yxfqxY9vabde+cEMR4I5uoH45mHbW/+LMp0HtWTlTvdRCkk2PNbXg570pqrUlDiAPgl7aWUBNF7t/FLAFhwzzzHneyoKscJD+Zm5rDsxEpw= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C From: Jiqian Chen To: Gerd Hoffmann , =?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= , "Michael S . Tsirkin" , "Stefano Stabellini" , Anthony PERARD , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Jan Beulich , "Dr . David Alan Gilbert" , Robert Beckett , , CC: Alex Deucher , Christian Koenig , Stewart Hildebrand , Xenia Ragiadakou , Honglei Huang , Julia Zhang , Huang Rui , Jiqian Chen Subject: [QEMU PATCH v2 0/1] S3 support Date: Fri, 30 Jun 2023 15:00:15 +0800 Message-ID: <20230630070016.841459-1-Jiqian.Chen@amd.com> X-Mailer: git-send-email 2.34.1 MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit X-Originating-IP: [10.180.168.240] X-ClientProxiedBy: SATLEXMB03.amd.com (10.181.40.144) To SATLEXMB04.amd.com (10.181.40.145) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DM6NAM11FT009:EE_|SN7PR12MB7980:EE_ X-MS-Office365-Filtering-Correlation-Id: 8d0ec17d-537e-4f9c-ba96-08db7937f8e6 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: bIKoUZGJOnz/SVBiKCeG2/kG5XS5yH6JVgZ4dZjOFGrgAHDJoZfoqjpYGSZquufYLOagLJlf+VuSddhCqXXH7EyEz9p1KCytiTYh0P6nT08RW9mEDvCv/W35xfdckI1GPGdEOspmxvrJOBsW42GBGPjjZr4QXjE/6FUzRXFV+W0lH0yMdJg4h+Jb/e4tMraxyCqjE6JNCy72O5ZADk0TqrxmiR7DpOxjHAqC/q39sefXmkpAS7IH7VaiclKT7lNtJcC8U87OgdHbTc1nwDjO/MrfkjQBeauxF8hfTOUyhRQTEVatg4hGxxZ6PnVB196dpy5Tph70f9iUK6F97/mr1rBqATpCBPVUI1TJzOWW0TEgeGJSs/VPdrBtHZDxqO6fABpnI4812cJ4QrN2DoELkOig7iyCbbEarpXBg92sWoiCqn+EM88BS1saHkXmqvf0shhlr3IXmHCkTQwlXVGiIyjnx7XTn5N8F+RXZAMk91+Bgu4Ydu50jU6eympgxFgIhyDupvs4Tm0OFG6uFEfBuQ6uzBg41OTkMHwWzwzyGzPFkB3hOy/FTxmMUXPgTO6SRzYjYzc6eeU6gYifX1d5l8WST9ahtM6CcgiSQSqiOrr1Byv60UySghYM1aOAdPukQCnCOulGoArFDTTPSJPC38zFSmMIXxgiru5T8RkcDq5uooOZ0WK5KM2tYJL3fJ34a0YnnIkhn4Yr1d5ewWZe1fPSHDQuOzcytUXEEJe2ARrcNOXJD7GCaVkn9Vn/543Uyh0ESShxDWRLki7VwMS9dQ== X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(376002)(136003)(346002)(396003)(39860400002)(451199021)(40470700004)(36840700001)(46966006)(36756003)(82310400005)(36860700001)(966005)(47076005)(336012)(83380400001)(478600001)(26005)(54906003)(2616005)(426003)(110136005)(7696005)(186003)(2906002)(16526019)(1076003)(356005)(86362001)(7416002)(316002)(5660300002)(921005)(70206006)(82740400003)(40460700003)(81166007)(40480700001)(70586007)(8676002)(41300700001)(4326008)(8936002)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Jun 2023 07:02:30.8308 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 8d0ec17d-537e-4f9c-ba96-08db7937f8e6 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com] X-MS-Exchange-CrossTenant-AuthSource: DM6NAM11FT009.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN7PR12MB7980 v2: Hi all, Thanks to Marc-André Lureau, Robert Beckett and Gerd Hoffmann for their advice and guidance. V2 makes below changes: * Change VIRTIO_CPU_CMD_STATUS_FREEZING to 0x0400 (<0x1000) * Add virtio_gpu_device_unrealize to destroy resources to solve potential memory leak problem. This also needs hot-plug support. * Add a new feature flag VIRTIO_GPU_F_FREEZING, so that guest and host can negotiate whenever freezing is supported or not. Best regards, Jiqian Chen. v1: link: https://lore.kernel.org/qemu-devel/20230608025655.1674357-1-Jiqian.Chen@amd.com/ Hi all, I am working to implement virtgpu S3 function on Xen. Currently on Xen, if we start a guest who enables virtgpu, and then run "echo mem > /sys/power/state" to suspend guest. And run "sudo xl trigger s3resume" to resume guest. We can find that the guest kernel comes back, but the display doesn't. It just shown a black screen. Through reading codes, I founded that when guest was during suspending, it called into Qemu to call virtio_gpu_gl_reset. In virtio_gpu_gl_reset, it destroyed all resources and reset renderer. This made the display gone after guest resumed. I think we should keep resources or prevent they being destroyed when guest is suspending. So, I add a new status named freezing to virtgpu, and add a new ctrl message VIRTIO_GPU_CMD_STATUS_FREEZING to get notification from guest. If freezing is set to true, and then Qemu will realize that guest is suspending, it will not destroy resources and will not reset renderer. If freezing is set to false, Qemu will do its origin actions, and has no other impaction. And now, display can come back and applications can continue their status after guest resumes. Jiqian Chen (1): virtgpu: do not destroy resources when guest suspend hw/display/virtio-gpu-base.c | 3 ++ hw/display/virtio-gpu-gl.c | 9 +++- hw/display/virtio-gpu-virgl.c | 7 +++ hw/display/virtio-gpu.c | 52 ++++++++++++++++++++- hw/virtio/virtio.c | 3 ++ include/hw/virtio/virtio-gpu.h | 6 +++ include/standard-headers/linux/virtio_gpu.h | 15 ++++++ 7 files changed, 92 insertions(+), 3 deletions(-) -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Fri Jun 30 07:02:48 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 30 Jun 2023 07:02:48 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557285.870506 (Exim 4.92) (envelope-from ) id 1qF89Y-0007Tz-6d; Fri, 30 Jun 2023 07:02:48 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557285.870506; Fri, 30 Jun 2023 07:02:48 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qF89Y-0007Tq-3c; Fri, 30 Jun 2023 07:02:48 +0000 Received: by outflank-mailman (input) for mailman id 557285; Fri, 30 Jun 2023 07:02:46 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qF89W-0007DY-64 for xen-devel@lists.xenproject.org; Fri, 30 Jun 2023 07:02:46 +0000 Received: from NAM11-BN8-obe.outbound.protection.outlook.com (mail-bn8nam11on20601.outbound.protection.outlook.com [2a01:111:f400:7eae::601]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 1c04840c-1714-11ee-8611-37d641c3527e; Fri, 30 Jun 2023 09:02:44 +0200 (CEST) Received: from DM6PR10CA0023.namprd10.prod.outlook.com (2603:10b6:5:60::36) by PH7PR12MB6634.namprd12.prod.outlook.com (2603:10b6:510:211::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.23; Fri, 30 Jun 2023 07:02:39 +0000 Received: from DM6NAM11FT009.eop-nam11.prod.protection.outlook.com (2603:10b6:5:60:cafe::91) by DM6PR10CA0023.outlook.office365.com (2603:10b6:5:60::36) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.22 via Frontend Transport; Fri, 30 Jun 2023 07:02:39 +0000 Received: from SATLEXMB04.amd.com (165.204.84.17) by DM6NAM11FT009.mail.protection.outlook.com (10.13.173.20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6500.47 via Frontend Transport; Fri, 30 Jun 2023 07:02:39 +0000 Received: from cjq-desktop.amd.com (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Fri, 30 Jun 2023 02:02:15 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 1c04840c-1714-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=frBpKD4EAQOlS0aXK8ifUhZUzbzRZrYIbPf0BzrEc1GsaHTh1uAUcDfX2TtxwiHi7p1oKGdCsuGWjr5Jvm9s08M//fDmRBm0UZxr8SAmwCs+rn0VDHawhlvXdJi5ft3ukEFZuJECCq92r0rnN8QGP3O7+2f4jKlbh8eplLRRTjJaLFdWw2CBc0nZe8NIABMpbH4irn+bUl2Mj3uQQKUEvV1aULG6kFUedlKWoXwfbBK7C0QDwOo9k0VTMF+Qx1PkP/sn2XqAKDOojBTyMSnPX49yIgCTRzUm2hoOqtPhhsjPi9v445dzHPd7hAkmXcwqeukJLexHaiNheqF7nmVAqw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=+9xtnTPzNg+1sjBtnZIyS3R8k/6IZY1YdO4CzpygVqM=; b=J/8KnlMYSS81W5e8u+kYQMNiGMVeGC6vg1vkejkDV+XNZGKoJ8uR0YIm2lQR1GABKodd3sniaP+RCPSyOSDK1VjB3Mh4RH1d/jkB2SXbkjJWcuAC6LKMCgr9ZWQ3QKhtI/xEA69ex8ixsU07PYsEfZp370d+QxLM5Y50bYULZGR817fcER7KTTbSg2KYYT1cg10rXNcU07iUPU2WjSbQ9Xb+jCMqRkAxFYf8ML8z/vl+J1LmLdnYmq8vxVoDWmudjgNK2Cw9MKpfXdsiVwOFVWuD7FKwqSyCe+6mao5V8nlCZzjx5GBSMCBqAKzefM/SNM17CtDU++CXwFz3s4xAEQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=redhat.com smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=+9xtnTPzNg+1sjBtnZIyS3R8k/6IZY1YdO4CzpygVqM=; b=CSk1ojbQivDMlAAesCqq1wFa0uY9Xlr+Q7tKWSfKSpb4T3zEe8/t3F95FTHGheMdTr9OAAIrqz2LbvAJd3jHxXF77wOiNCKkKswhQWKGD6s8Ts89BCDpohMNZDyegU2nXMD284pVpUq1zCcHAmDpf7qnMm2C8gP4+LN0WePxD1M= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C From: Jiqian Chen To: Gerd Hoffmann , =?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= , "Michael S . Tsirkin" , "Stefano Stabellini" , Anthony PERARD , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Jan Beulich , "Dr . David Alan Gilbert" , Robert Beckett , , CC: Alex Deucher , Christian Koenig , Stewart Hildebrand , Xenia Ragiadakou , Honglei Huang , Julia Zhang , Huang Rui , Jiqian Chen Subject: [QEMU PATCH v2 1/1] virtgpu: do not destroy resources when guest suspend Date: Fri, 30 Jun 2023 15:00:16 +0800 Message-ID: <20230630070016.841459-2-Jiqian.Chen@amd.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20230630070016.841459-1-Jiqian.Chen@amd.com> References: <20230630070016.841459-1-Jiqian.Chen@amd.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain X-Originating-IP: [10.180.168.240] X-ClientProxiedBy: SATLEXMB03.amd.com (10.181.40.144) To SATLEXMB04.amd.com (10.181.40.145) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DM6NAM11FT009:EE_|PH7PR12MB6634:EE_ X-MS-Office365-Filtering-Correlation-Id: e5e14652-c0c0-40fc-f16b-08db7937fe30 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: mV7GwA/X1h2GY/65cPnxkFpuJri9JTuUJeeL28SGnr6uYXRsm+mRsf3aHwfZTFlNHZYi0zN7wsYGJL3Lka2t9UFiJOQ2Bu91ezF1MxjVL+TCq8mO3sth646iJrz7JlYdHP7Aj9hQWNq55F8JyQyY/YNA34Von6PQKyBAqFugEBTbUB3gBfeDr3opRWqQkkpkMa75J0xzS23QiZuvzRQEUS8KRMNpEYiqqtV1gpGHccVc09yhNITJothrvV6Us0wZCjY9BHNz1+7OTQpkKZ6WjuhdD19yXzw5Ty38p2wAnR/G59/JgT8IWzlkbOCSmwS+Qi5BXRDNlv3+uBhPoCmzrYnvEXlKjgSQgQeZRbLRPzq0qPL0N7Esqvg5g83gOUnVMkPXLtnvXsFPYO2MoT7V4oRyY8ncW7X3GF1biG3+BdbwQvdbeG9p9v9e9/qTmfPfQRVhXUsh71Bw1HxjzwSaEWQXoKtjE137aBBRNKDDH29CtA6DVzVKpzAqp1T7V5C8oBzEJQzHN8Nb5teYSLQiy3T3rpCY5/SoRMj/5WO9BIMytmIYg2buWqi+iIq+W304rQ0NF1t4PYnjssRfbm/ljyRQi+MCPBjN8IjfpKI5Y1ZGwTVk6t9WVLGrwx103u03V1/lpJL9G2qVg4tSydaB7Jq5ddTTn1hGn7NcMzVOsbydCpMeJHCSgAnMP34RCyO/ntA9TYj2GyAIj1xdTKOd1o+r3vmKG9FCees8bSLzt2EegaNQ/zMg0GHOW51x9RhpHHSUDDR/MNhFbULNzn6L+Y5yQoSr7b+0fEcgOY0ubVQ= X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(376002)(39860400002)(346002)(396003)(136003)(451199021)(36840700001)(40470700004)(46966006)(86362001)(82310400005)(36860700001)(40460700003)(36756003)(40480700001)(5660300002)(7416002)(356005)(41300700001)(921005)(8676002)(70206006)(316002)(81166007)(8936002)(70586007)(4326008)(82740400003)(47076005)(2906002)(478600001)(26005)(15650500001)(16526019)(2616005)(7696005)(186003)(1076003)(54906003)(83380400001)(110136005)(426003)(336012)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Jun 2023 07:02:39.7058 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: e5e14652-c0c0-40fc-f16b-08db7937fe30 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com] X-MS-Exchange-CrossTenant-AuthSource: DM6NAM11FT009.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH7PR12MB6634 After suspending and resuming guest VM, you will get a black screen, and the display can't come back. This is because when guest did suspending, it called into qemu to call virtio_gpu_gl_reset. In function virtio_gpu_gl_reset, it destroyed resources and reset renderer, which were used for display. As a result, guest's screen can't come back to the time when it was suspended and only showed black. So, this patch adds a new ctrl message VIRTIO_GPU_CMD_STATUS_FREEZING to get notification from guest. If guest is during suspending, it sets freezing status of virtgpu to true, this will prevent destroying resources and resetting renderer when guest calls into virtio_gpu_gl_reset. If guest is during resuming, it sets freezing to false, and then virtio_gpu_gl_reset will keep its origin actions and has no other impaction. Due to this implemention needs cooperation with guest, so it added a new feature flag VIRTIO_GPU_F_FREEZING, so that guest and host can negotiate whenever freezing is supported or not. Signed-off-by: Jiqian Chen --- hw/display/virtio-gpu-base.c | 3 ++ hw/display/virtio-gpu-gl.c | 9 +++- hw/display/virtio-gpu-virgl.c | 7 +++ hw/display/virtio-gpu.c | 52 ++++++++++++++++++++- hw/virtio/virtio.c | 3 ++ include/hw/virtio/virtio-gpu.h | 6 +++ include/standard-headers/linux/virtio_gpu.h | 15 ++++++ 7 files changed, 92 insertions(+), 3 deletions(-) diff --git a/hw/display/virtio-gpu-base.c b/hw/display/virtio-gpu-base.c index a29f191aa8..d55dc8fdfc 100644 --- a/hw/display/virtio-gpu-base.c +++ b/hw/display/virtio-gpu-base.c @@ -215,6 +215,9 @@ virtio_gpu_base_get_features(VirtIODevice *vdev, uint64_t features, if (virtio_gpu_blob_enabled(g->conf)) { features |= (1 << VIRTIO_GPU_F_RESOURCE_BLOB); } + if (virtio_gpu_freezing_enabled(g->conf)) { + features |= (1 << VIRTIO_GPU_F_FREEZING); + } return features; } diff --git a/hw/display/virtio-gpu-gl.c b/hw/display/virtio-gpu-gl.c index e06be60dfb..de108f1502 100644 --- a/hw/display/virtio-gpu-gl.c +++ b/hw/display/virtio-gpu-gl.c @@ -100,7 +100,14 @@ static void virtio_gpu_gl_reset(VirtIODevice *vdev) */ if (gl->renderer_inited && !gl->renderer_reset) { virtio_gpu_virgl_reset_scanout(g); - gl->renderer_reset = true; + /* + * If guest is suspending, we shouldn't reset renderer, + * otherwise, the display can't come back to the time when + * it was suspended after guest resumed. + */ + if (!virtio_gpu_freezing_enabled(g->parent_obj.conf) || !g->freezing) { + gl->renderer_reset = true; + } } } diff --git a/hw/display/virtio-gpu-virgl.c b/hw/display/virtio-gpu-virgl.c index 73cb92c8d5..547c4d98ad 100644 --- a/hw/display/virtio-gpu-virgl.c +++ b/hw/display/virtio-gpu-virgl.c @@ -464,6 +464,13 @@ void virtio_gpu_virgl_process_cmd(VirtIOGPU *g, case VIRTIO_GPU_CMD_GET_EDID: virtio_gpu_get_edid(g, cmd); break; + case VIRTIO_GPU_CMD_STATUS_FREEZING: + if (virtio_gpu_freezing_enabled(g->parent_obj.conf)) { + virtio_gpu_cmd_status_freezing(g, cmd); + } else { + cmd->error = VIRTIO_GPU_RESP_ERR_INVALID_PARAMETER; + } + break; default: cmd->error = VIRTIO_GPU_RESP_ERR_UNSPEC; break; diff --git a/hw/display/virtio-gpu.c b/hw/display/virtio-gpu.c index 5e15c79b94..54a5e2e57c 100644 --- a/hw/display/virtio-gpu.c +++ b/hw/display/virtio-gpu.c @@ -373,6 +373,16 @@ static void virtio_gpu_resource_create_blob(VirtIOGPU *g, QTAILQ_INSERT_HEAD(&g->reslist, res, next); } +void virtio_gpu_cmd_status_freezing(VirtIOGPU *g, + struct virtio_gpu_ctrl_command *cmd) +{ + struct virtio_gpu_status_freezing sf; + + VIRTIO_GPU_FILL_CMD(sf); + virtio_gpu_bswap_32(&sf, sizeof(sf)); + g->freezing = sf.freezing; +} + static void virtio_gpu_disable_scanout(VirtIOGPU *g, int scanout_id) { struct virtio_gpu_scanout *scanout = &g->parent_obj.scanout[scanout_id]; @@ -986,6 +996,13 @@ void virtio_gpu_simple_process_cmd(VirtIOGPU *g, case VIRTIO_GPU_CMD_RESOURCE_DETACH_BACKING: virtio_gpu_resource_detach_backing(g, cmd); break; + case VIRTIO_GPU_CMD_STATUS_FREEZING: + if (virtio_gpu_freezing_enabled(g->parent_obj.conf)) { + virtio_gpu_cmd_status_freezing(g, cmd); + } else { + cmd->error = VIRTIO_GPU_RESP_ERR_INVALID_PARAMETER; + } + break; default: cmd->error = VIRTIO_GPU_RESP_ERR_UNSPEC; break; @@ -1344,6 +1361,27 @@ void virtio_gpu_device_realize(DeviceState *qdev, Error **errp) QTAILQ_INIT(&g->reslist); QTAILQ_INIT(&g->cmdq); QTAILQ_INIT(&g->fenceq); + + g->freezing = false; +} + +static void virtio_gpu_device_unrealize(DeviceState *qdev) +{ + VirtIOGPU *g = VIRTIO_GPU(qdev); + struct virtio_gpu_simple_resource *res, *tmp; + + /* + * This is to prevent memory leak in the situation that qemu is + * destroyed when guest is suspended. This also need hot-plug + * support. + */ + if (virtio_gpu_freezing_enabled(g->parent_obj.conf) && g->freezing) { + QTAILQ_FOREACH_SAFE(res, &g->reslist, next, tmp) { + virtio_gpu_resource_destroy(g, res); + } + virtio_gpu_virgl_reset(g); + } + } void virtio_gpu_reset(VirtIODevice *vdev) @@ -1352,8 +1390,15 @@ void virtio_gpu_reset(VirtIODevice *vdev) struct virtio_gpu_simple_resource *res, *tmp; struct virtio_gpu_ctrl_command *cmd; - QTAILQ_FOREACH_SAFE(res, &g->reslist, next, tmp) { - virtio_gpu_resource_destroy(g, res); + /* + * If guest is suspending, we shouldn't destroy resources, + * otherwise, the display can't come back to the time when + * it was suspended after guest resumed. + */ + if (!virtio_gpu_freezing_enabled(g->parent_obj.conf) || !g->freezing) { + QTAILQ_FOREACH_SAFE(res, &g->reslist, next, tmp) { + virtio_gpu_resource_destroy(g, res); + } } while (!QTAILQ_EMPTY(&g->cmdq)) { @@ -1425,6 +1470,8 @@ static Property virtio_gpu_properties[] = { 256 * MiB), DEFINE_PROP_BIT("blob", VirtIOGPU, parent_obj.conf.flags, VIRTIO_GPU_FLAG_BLOB_ENABLED, false), + DEFINE_PROP_BIT("freezing", VirtIOGPU, parent_obj.conf.flags, + VIRTIO_GPU_FLAG_FREEZING_ENABLED, false), DEFINE_PROP_END_OF_LIST(), }; @@ -1441,6 +1488,7 @@ static void virtio_gpu_class_init(ObjectClass *klass, void *data) vgbc->gl_flushed = virtio_gpu_handle_gl_flushed; vdc->realize = virtio_gpu_device_realize; + vdc->unrealize = virtio_gpu_device_unrealize; vdc->reset = virtio_gpu_reset; vdc->get_config = virtio_gpu_get_config; vdc->set_config = virtio_gpu_set_config; diff --git a/hw/virtio/virtio.c b/hw/virtio/virtio.c index eb6347ab5d..e2ccf50a9e 100644 --- a/hw/virtio/virtio.c +++ b/hw/virtio/virtio.c @@ -240,6 +240,9 @@ qmp_virtio_feature_map_t virtio_gpu_feature_map[] = { FEATURE_ENTRY(VIRTIO_GPU_F_CONTEXT_INIT, \ "VIRTIO_GPU_F_CONTEXT_INIT: Context types and synchronization " "timelines supported"), + FEATURE_ENTRY(VIRTIO_GPU_F_FREEZING, \ + "VIRTIO_GPU_F_FREEZING: Freezing virtio-gpu and keeping resources" + "alive is supported."), FEATURE_ENTRY(VHOST_F_LOG_ALL, \ "VHOST_F_LOG_ALL: Logging write descriptors supported"), FEATURE_ENTRY(VHOST_USER_F_PROTOCOL_FEATURES, \ diff --git a/include/hw/virtio/virtio-gpu.h b/include/hw/virtio/virtio-gpu.h index 2e28507efe..53e06e47cb 100644 --- a/include/hw/virtio/virtio-gpu.h +++ b/include/hw/virtio/virtio-gpu.h @@ -90,6 +90,7 @@ enum virtio_gpu_base_conf_flags { VIRTIO_GPU_FLAG_EDID_ENABLED, VIRTIO_GPU_FLAG_DMABUF_ENABLED, VIRTIO_GPU_FLAG_BLOB_ENABLED, + VIRTIO_GPU_FLAG_FREEZING_ENABLED, }; #define virtio_gpu_virgl_enabled(_cfg) \ @@ -102,6 +103,8 @@ enum virtio_gpu_base_conf_flags { (_cfg.flags & (1 << VIRTIO_GPU_FLAG_DMABUF_ENABLED)) #define virtio_gpu_blob_enabled(_cfg) \ (_cfg.flags & (1 << VIRTIO_GPU_FLAG_BLOB_ENABLED)) +#define virtio_gpu_freezing_enabled(_cfg) \ + (_cfg.flags & (1 << VIRTIO_GPU_FLAG_FREEZING_ENABLED)) struct virtio_gpu_base_conf { uint32_t max_outputs; @@ -173,6 +176,7 @@ struct VirtIOGPU { uint64_t hostmem; + bool freezing; bool processing_cmdq; QEMUTimer *fence_poll; QEMUTimer *print_stats; @@ -284,5 +288,7 @@ void virtio_gpu_virgl_reset_scanout(VirtIOGPU *g); void virtio_gpu_virgl_reset(VirtIOGPU *g); int virtio_gpu_virgl_init(VirtIOGPU *g); int virtio_gpu_virgl_get_num_capsets(VirtIOGPU *g); +void virtio_gpu_cmd_status_freezing(VirtIOGPU *g, + struct virtio_gpu_ctrl_command *cmd); #endif diff --git a/include/standard-headers/linux/virtio_gpu.h b/include/standard-headers/linux/virtio_gpu.h index 2da48d3d4c..cc9286b30e 100644 --- a/include/standard-headers/linux/virtio_gpu.h +++ b/include/standard-headers/linux/virtio_gpu.h @@ -65,6 +65,11 @@ */ #define VIRTIO_GPU_F_CONTEXT_INIT 4 +/* + * VIRTIO_GPU_CMD_STATUS_FREEZING + */ +#define VIRTIO_GPU_F_FREEZING 5 + enum virtio_gpu_ctrl_type { VIRTIO_GPU_UNDEFINED = 0, @@ -100,6 +105,9 @@ enum virtio_gpu_ctrl_type { VIRTIO_GPU_CMD_UPDATE_CURSOR = 0x0300, VIRTIO_GPU_CMD_MOVE_CURSOR, + /* status */ + VIRTIO_GPU_CMD_STATUS_FREEZING = 0x0400, + /* success responses */ VIRTIO_GPU_RESP_OK_NODATA = 0x1100, VIRTIO_GPU_RESP_OK_DISPLAY_INFO, @@ -116,6 +124,7 @@ enum virtio_gpu_ctrl_type { VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID, VIRTIO_GPU_RESP_ERR_INVALID_CONTEXT_ID, VIRTIO_GPU_RESP_ERR_INVALID_PARAMETER, + }; enum virtio_gpu_shm_id { @@ -453,4 +462,10 @@ struct virtio_gpu_resource_unmap_blob { uint32_t padding; }; +/* VIRTIO_GPU_CMD_STATUS_FREEZING */ +struct virtio_gpu_status_freezing { + struct virtio_gpu_ctrl_hdr hdr; + __u32 freezing; +}; + #endif -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Fri Jun 30 07:15:00 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 30 Jun 2023 07:15:00 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557294.870516 (Exim 4.92) (envelope-from ) id 1qF8L5-0000uI-CO; Fri, 30 Jun 2023 07:14:43 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557294.870516; Fri, 30 Jun 2023 07:14:43 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qF8L5-0000uB-9k; Fri, 30 Jun 2023 07:14:43 +0000 Received: by outflank-mailman (input) for mailman id 557294; Fri, 30 Jun 2023 07:14:41 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qF8L3-0000u5-P0 for xen-devel@lists.xenproject.org; Fri, 30 Jun 2023 07:14:41 +0000 Received: from NAM11-CO1-obe.outbound.protection.outlook.com (mail-co1nam11on2062b.outbound.protection.outlook.com [2a01:111:f400:7eab::62b]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id c5ea3843-1715-11ee-8611-37d641c3527e; Fri, 30 Jun 2023 09:14:39 +0200 (CEST) Received: from BL1PR12MB5849.namprd12.prod.outlook.com (2603:10b6:208:384::18) by SJ2PR12MB8157.namprd12.prod.outlook.com (2603:10b6:a03:4fa::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.24; Fri, 30 Jun 2023 07:14:32 +0000 Received: from BL1PR12MB5849.namprd12.prod.outlook.com ([fe80::4ef5:2244:743b:9989]) by BL1PR12MB5849.namprd12.prod.outlook.com ([fe80::4ef5:2244:743b:9989%4]) with mapi id 15.20.6521.023; Fri, 30 Jun 2023 07:14:31 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: c5ea3843-1715-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=gmY2RbFRkQu7KzIg2ks4FguB+dCZIPU3LMNLtvht31/WCQQjiD9ZdkPgHuCeYgrsrXzuMn3VjlzscruH5rF0IH+47bRrVsvigmX2Z+wIJAyNkvDwEZ+dzfi2sGaXIH+yYiqDvwldcZYVC8IUFwdxzqmj2FmtFtl83wBmcEh9c13F/am4xWh858j9bhLzIG2gwkO+7GmCFkLX5YLAAVsYZMYBQy3Hz24SKZC1c39nPafYs3MFrBfQl0lzrr3OQnnixDZIk252p6+R3B7VuD5gJNbPUuxAU8XCYTwjAsHKud5AHg4kyeRXyY9Gox6Oepfx9X0ZS533IUpR6qmqGGIlag== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=NX4qGdlbx1VqU7FsVYJVYwD6zXhfCWrnol9/mEKwuQA=; b=R0MZ0/83Wfq8PisqqW24XfIBwuHcDuXuP0I3uMGCdifTwYZqzE1zIEsIh+89AMXnoTLSkJy3SzmxpTFXtZSbCbxFe92mkxFNztb2HrPuwT/cb7+NH4t8szcnDFPcfrXJs5ByzY3B3pNaA7hSjQ+FTKpibz75pbOLNAFmFy+ImVUxqwdYG+Rbmx4hl6TyYiXgnRvULU3yGxQN8jSvifnB4IygvW2/q/n+wHgBFUt/UdX44dl3gSisj28FkAfOcHJZMHhL7bJOKL+GfGV8rJeI7yZ2wVsPkhq6dm3cIthhBOnACC3krzl+VJtuaEzTXLfEcxJyUtMtLbjyAQsNc3RFVg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass header.d=amd.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=NX4qGdlbx1VqU7FsVYJVYwD6zXhfCWrnol9/mEKwuQA=; b=X3rEwtbVikJCiMPknew5iRM6++xiNk2cSkL0ExwuMIupdtr5dTAn33l6DME16q6J3COq1tNFZIh4PA/0WaEe9mm9yeWq7FA3DNe8Vr8i/ebawdcGt5Lzuci9KWCIiMfhWM230YDK+Y7UM+PwpEXfGdWOFUL7Waj0MMqloe+fliE= From: "Chen, Jiqian" To: "Kim, Dongwon" CC: Gerd Hoffmann , "Michael S . Tsirkin" , Stefano Stabellini , Anthony PERARD , =?utf-8?B?Um9nZXIgUGF1IE1vbm7DqQ==?= , "Deucher, Alexander" , "Koenig, Christian" , "Hildebrand, Stewart" , Xenia Ragiadakou , "Huang, Honglei1" , "Zhang, Julia" , "Huang, Ray" , "Chen, Jiqian" , Jan Beulich , Antonio Caggiano , "Dr . David Alan Gilbert" , Robert Beckett , "xen-devel@lists.xenproject.org" , "qemu-devel@nongnu.org" Subject: Re: [QEMU PATCH 1/1] virtgpu: do not destroy resources when guest suspend Thread-Topic: [QEMU PATCH 1/1] virtgpu: do not destroy resources when guest suspend Thread-Index: AQHZmbUjDQZRLEUzRUmYVwd7de4D46+iIOgAgAF1VwA= Date: Fri, 30 Jun 2023 07:14:31 +0000 Message-ID: References: <20230608025655.1674357-1-Jiqian.Chen@amd.com> <20230608025655.1674357-2-Jiqian.Chen@amd.com> <980355eb-0241-2690-8ba4-3f136dd8555a@intel.com> In-Reply-To: <980355eb-0241-2690-8ba4-3f136dd8555a@intel.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ms-exchange-imapappendstamp: MN2PR12MB3037.namprd12.prod.outlook.com (15.20.6544.003) authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=amd.com; x-ms-exchange-messagesentrepresentingtype: 1 x-ms-publictraffictype: Email x-ms-traffictypediagnostic: BL1PR12MB5849:EE_|SJ2PR12MB8157:EE_ x-ms-office365-filtering-correlation-id: 0e0bd471-ab6c-4653-6921-08db7939a69a x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: xcFYooVu9cF/TvuwFsSi8UiUifmcrhu9yjM4Y/qPkXNz+d8KEsbgzWqgL5DmgqoMvypdUQ5JxPLZwAr4tkv4gz72ytM3kGgM1vl6MOx6xsJ9GdvFaTxYgi826FmF4m3XgUzynX+bv04TKazIl1eZMmcJT+Yqk5YfUHswJ7RXxtYh/qlzNTs700VtsmQdaHSNciRoIcxpNuZQbRBHXNReJcuA5ASnoNEuCNM4AkuQIBRWG3JZe6bzBUmJew6aFogJfm3GVl5wW5CshYxDxUV6TvI89ldjZcHMoHKVa5P7NtqsOkCEAa7p/2WnnTBt1vcQQMmMIAk6S+sG+CGtYgsKoMJch/VKwqZEe0f8pbISwE8qFcr+KMoVRMeDlHm+NreZEfQG5CfAuP0NG7NzT6tq8r1iJI8yKcdILkkLR8qW1Qki7ovK0gVDMH0lTVUdketMmUhtCjnPH6BksDhr5JGeQ690jiY2bsnBPbaC0Bwn/mo4INYZhwW7FQHLfIdkENktl+g1OnMuAy/A6iOAPWZtWBRPMtrMtVSgRsIqEzcxoscTzRqwlZuDuKS+GhsA9m8nRky0KuUDi+cy4Zy7Ez4vxwBgtrEW+fO7UYL/eS1D4hk= x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BL1PR12MB5849.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(376002)(346002)(396003)(136003)(366004)(451199021)(33656002)(2906002)(15650500001)(66946007)(52536014)(5660300002)(41300700001)(8936002)(7416002)(8676002)(66556008)(4326008)(64756008)(66476007)(76116006)(6916009)(316002)(66446008)(38070700005)(478600001)(7696005)(122000001)(38100700002)(54906003)(6506007)(53546011)(71200400001)(83380400001)(186003)(55016003)(9686003);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?U01kTi9DL1FETTFxK0hWUzJ6TmV3QUQ1aXhTQk5HZEEvZ3VlOW9RMUo4SExs?= =?utf-8?B?WVdwVG9vZmMrQTljb0ZhZDdGZWRFQld5NGNQem9aY1IzRVVHU28vbjZXUm9t?= =?utf-8?B?eWdDRG5pakVBZW0xMzFtdnRXdHJ1Qkg0SHRRVnFkdDIrSDdxZkFON1E1ZFhQ?= =?utf-8?B?U2RIV3ZMZ2YrK3pSZUFFTzVPNnF0bTZkclVhaElmZEg5T3hudWRJTzlaTndM?= =?utf-8?B?QmN2bnYvRnhSQzFXR2V1S3ViVlk2bjdaNCtudHdMbDZtRXh2U3Rqc011L3U3?= =?utf-8?B?NE04M25CbGFQODBkSmFUYW9nU0ZsY2JrRU1mR0NKY3JaSkRGS3NxRnFXeWYw?= =?utf-8?B?bDZKVWRRK2Z3ZlAzR3JNZkFXZjFyZGdqWnpzckg2ZDVMWXRjQ2dKaWE5ZllF?= =?utf-8?B?SkRSZ1NmUzd6UUIyK2FUUDRzUnhOOHhrRXR4ZE9pTUd1VEowUU5oYitrK2cr?= =?utf-8?B?TWxRZy8vUlB0UmNsTWVMNWZyYzc1RFJZNXBFUTNHaG9ZTjdEejJGNHl4L25y?= =?utf-8?B?ZU10cWtabnQ1Qm1wOVlqV3Ura3FmaTNMQUpZdVlrNzRrZlpOZlplYUxaaUFG?= =?utf-8?B?S0ZkTGNjWTAvTnkzMFd3emtzRlR0M1UxR09oeU0wYjFmdDErMDJoZEt2Vjdn?= =?utf-8?B?NzNrcnYzUTQveFVUVGNvUmVGQzF6ZkpWSUVpN0JoOStDT1gvSnJIWERsMFA0?= =?utf-8?B?ZW9JZjhob1hxZjhyQSt5UmpFYWkyRjNvVytqS0lxZFBpS0hPa0owb3phd3NF?= =?utf-8?B?T0N5VHdrRXhhdjZIMlBERnd5c3pXUUxwUGNuRENJTGtUWEhHSnpCaUdteXVa?= =?utf-8?B?VDZyN1BPdXNhSmY5TFoyQnY0VDNGRlNjd2o2OW1MSWVJdzUzSnpmTVdURE1F?= =?utf-8?B?eW1HRkpEUnBrcjhCQlBXNU9JL0NIcGZEL1FWYThrQW5ZanU2OVdUd08zUVBX?= =?utf-8?B?S2xycWYzUisxTS9qTSsvVkFHZGRhTWdyRnovN0xLK1l2UGJyUzdhNzFST2FR?= =?utf-8?B?TG8vNGZDLzVMNElwczFPMW5ha013bDgwZi8xWmwyZ2VvMWp2SGdwTmVKeVdu?= =?utf-8?B?YXNTaHNzMUVuOVFnbkZ1NUxsRWFEZk1Cdm9zcmdFdlpIQ084NmNLdGdxMDhp?= =?utf-8?B?SnUxenR5TlVLS0xNaVFYbGdSZDNaYkJ1VHorL0xhdUhTL0c0RCtRNlRHa0Jp?= =?utf-8?B?RTJMdGE1b0lPYVdpa09YclYxaVVsZ0pnV3JsZUllV3J6UGY5R0pTMnkwbmhR?= =?utf-8?B?czZIMStUQUgxRHIyVk1KK0hzSVdJNms2c3dUQnBibUFmYVVZcTFWMGVCNHJZ?= =?utf-8?B?NHMvaXlsSzV1TGVOSTFtcDZRYXhPNi9GVHo2M2pTdnlidWlSSUVLUi9nQTFs?= =?utf-8?B?K2hadW4rSy9wejVjajlHQVRSeUg1MkNDRUxuUG1kWFNPMTg0dzlnNjNvdlBE?= =?utf-8?B?YWZNNVV6UVg5TDdkcThadWtRZVFFUnRCbkNSK2t1TDFNL1U2bStwSkUvaXFG?= =?utf-8?B?SE95UHJlU0VLVEtGMWU2RjBHbjM2V1RPamxkZEtQRFNSeGM3QnNEa3RGOFd1?= =?utf-8?B?NTIwYUNGd1ZncXlqSVNOckdSc0VsUWYxUGxCbThtbnJGeVNXMWJnNjZOWjQ5?= =?utf-8?B?cFB6SDFDdjZTMjFkK2JqWHlqbkRKTFhVMGVQVzJpWUxNVXUwMDY0UVRUcnpi?= =?utf-8?B?WURmZjN4c1BZbTF1K3NVbjYzcFM5ZmQxdEpFVXlBbEpzQzBRZlJQNGhJaHdI?= =?utf-8?B?MTRVbVpvNTNJM2Z3QlBVeGt6Qkx2UU9SMTNER2Y4RjVZMHdDeUx4T1VndlM4?= =?utf-8?B?M3ZFeGZodnJTR0VJY2o1V0s0SkxZY3o1K0hlU21NYS9ZV0w1Y1NKVEN0Vlc3?= =?utf-8?B?cEZNcUFiTm9oam5DOTlDUDZuY2ZBMjYwVTJFMzgvVzc4SDN3WDQyWGZhd1dW?= =?utf-8?B?ZkNyd3VsQ0V4Zldvbkhzd2FGMWtVMXduR1Y1SGlvZkppWUZJYVJGbDVLa1Zk?= =?utf-8?B?d2hRejVBN0hiVnNnbE5QYkNtaVgwNGdjQ0lMbkc3SXpYMWphNnVoTTAyb3hy?= =?utf-8?B?UTJrYTdxNkNyYkpmT094MENQNG91VklGK3A1UT09?= Content-Type: text/plain; charset="utf-8" Content-ID: <100CDECAFA6BD743A32035E73C22FB8E@amdcloud.onmicrosoft.com> Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: BL1PR12MB5849.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 0e0bd471-ab6c-4653-6921-08db7939a69a X-MS-Exchange-CrossTenant-originalarrivaltime: 30 Jun 2023 07:14:31.8193 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: hzrMuALfwIPLNQNVmeGWXek4RLqU7lveGPnzTwH3m+cgUano2IPvm1HgrNKn0p/s23+iXWQa6s+AOiP3AFDt4A== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ2PR12MB8157 SGkgRG9uZ3dvbiwNCg0KT24gMjAyMy82LzMwIDAwOjUzLCBLaW0sIERvbmd3b24gd3JvdGU6DQo+ IFRoaXMgbWV0aG9kIC0gbGV0dGluZyBRRU1VIG5vdCByZW1vdmUgcmVzb3VyY2VzIHdvdWxkIHdv cmsgb24gUzMgY2FzZSBidXQgd2l0aCBTNCwgdGhlIFFFTVUgd291bGQgbG9zZSBhbGwgdGhlIHJl c291cmNlcyBhbnl3YXkgYXMgdGhlIHByb2Nlc3Mgd2lsbCBiZSB0ZXJtaW5hdGVkLiBTbyBvYmpl Y3RzIHJlc3RvcmluZyB3YXMgb25seSBvcHRpb24gZm9yIHVzIGFzDQpNeSBwYXRjaCBpcyBmb3Ig UzMgZnVuY3Rpb24gb24gWGVuLiBJIGhhdmVuJ3QgdHJpZWQgUzQgYmVmb3JlLCBJIHdpbGwgdHJ5 IFM0IGxhdGVyLg0KDQo+IA0KPiBpbiBbUkZDIFBBVENIIDIvMl0gZHJtL3ZpcnRpbzogcmVzdG9y ZSB2aXJ0aW9fZ3B1X29iamVjdHMgdXBvbiBzdXNwZW5kIGFuZCByZXN1bWUgKGxpc3RzLmZyZWVk ZXNrdG9wLm9yZykgPGh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL2FyY2hpdmVzL2RyaS1k ZXZlbC8yMDIyLVNlcHRlbWJlci8zNzM4OTQuaHRtbD4NCj4gDQo+IEJ1dCBJIG9ubHkgY29uc2lk ZXJlZCBhbmQgdGVzdGVkIGNhc2VzIHdpdGggc2Nhbm91dCBibG9iIHJlc291cmNlcywgc28gdGhp cyBtYXkgbm90IGNvdmVyIG90aGVyIHJlc291cmNlIHR5cGVzLi4uDQpJIHRyaWVkIHlvdXIgcGF0 Y2gsIGJ1dCBJIGNhbid0IHN1Y2Nlc3MgdG8gcmVzdW1lIGd1ZXN0IGFuZCBndWVzdCBjcmFzaGVk Lg0KDQo+IA0KPiBPbiA2LzcvMjAyMyA3OjU2IFBNLCBKaXFpYW4gQ2hlbiB3cm90ZToNCj4+IEFm dGVyIHN1c3BlbmRpbmcgYW5kIHJlc3VtaW5nIGd1ZXN0IFZNLCB5b3Ugd2lsbCBnZXQNCj4+IGEg YmxhY2sgc2NyZWVuLCBhbmQgdGhlIGRpc3BsYXkgY2FuJ3QgY29tZSBiYWNrLg0KPj4NCj4+IFRo aXMgaXMgYmVjYXVzZSB3aGVuIGd1ZXN0IGRpZCBzdXNwZW5kaW5nLCBpdCBjYWxsZWQNCj4+IGlu dG8gcWVtdSB0byBjYWxsIHZpcnRpb19ncHVfZ2xfcmVzZXQuIEluIGZ1bmN0aW9uDQo+PiB2aXJ0 aW9fZ3B1X2dsX3Jlc2V0LCBpdCBkZXN0cm95ZWQgcmVzb3VyY2VzIGFuZCByZXNldA0KPj4gcmVu ZGVyZXIsIHdoaWNoIHdlcmUgdXNlZCBmb3IgZGlzcGxheS4gQXMgYSByZXN1bHQsDQo+PiBndWVz dCdzIHNjcmVlbiBjYW4ndCBjb21lIGJhY2sgdG8gdGhlIHRpbWUgd2hlbiBpdCB3YXMNCj4+IHN1 c3BlbmRlZCBhbmQgb25seSBzaG93ZWQgYmxhY2suDQo+Pg0KPj4gU28sIHRoaXMgcGF0Y2ggYWRk cyBhIG5ldyBjdHJsIG1lc3NhZ2UNCj4+IFZJUlRJT19HUFVfQ01EX1NUQVRVU19GUkVFWklORyB0 byBnZXQgbm90aWZpY2F0aW9uIGZyb20NCj4+IGd1ZXN0LiBJZiBndWVzdCBpcyBkdXJpbmcgc3Vz cGVuZGluZywgaXQgc2V0cyBmcmVlemluZw0KPj4gc3RhdHVzIG9mIHZpcnRncHUgdG8gdHJ1ZSwg dGhpcyB3aWxsIHByZXZlbnQgZGVzdHJveWluZw0KPj4gcmVzb3VyY2VzIGFuZCByZXNldHRpbmcg cmVuZGVyZXIgd2hlbiBndWVzdCBjYWxscyBpbnRvDQo+PiB2aXJ0aW9fZ3B1X2dsX3Jlc2V0LiBJ ZiBndWVzdCBpcyBkdXJpbmcgcmVzdW1pbmcsIGl0IHNldHMNCj4+IGZyZWV6aW5nIHRvIGZhbHNl LCBhbmQgdGhlbiB2aXJ0aW9fZ3B1X2dsX3Jlc2V0IHdpbGwga2VlcA0KPj4gaXRzIG9yaWdpbiBh Y3Rpb25zIGFuZCBoYXMgbm8gb3RoZXIgaW1wYWN0aW9uLg0KPj4NCj4+IFNpZ25lZC1vZmYtYnk6 IEppcWlhbiBDaGVuIDxKaXFpYW4uQ2hlbkBhbWQuY29tPg0KPj4gLS0tDQo+PiDCoCBody9kaXNw bGF5L3ZpcnRpby1ncHUtZ2wuY8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgfMKg IDkgKysrKysrLQ0KPj4gwqAgaHcvZGlzcGxheS92aXJ0aW8tZ3B1LXZpcmdsLmPCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgIHzCoCAzICsrKw0KPj4gwqAgaHcvZGlzcGxheS92aXJ0aW8tZ3B1 LmPCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHwgMjYgKysrKysrKysr KysrKysrKysrKy0tDQo+PiDCoCBpbmNsdWRlL2h3L3ZpcnRpby92aXJ0aW8tZ3B1LmjCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoCB8wqAgMyArKysNCj4+IMKgIGluY2x1ZGUvc3RhbmRhcmQtaGVh ZGVycy9saW51eC92aXJ0aW9fZ3B1LmggfMKgIDkgKysrKysrKw0KPj4gwqAgNSBmaWxlcyBjaGFu Z2VkLCA0NyBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQ0KPj4NCj4+IGRpZmYgLS1naXQg YS9ody9kaXNwbGF5L3ZpcnRpby1ncHUtZ2wuYyBiL2h3L2Rpc3BsYXkvdmlydGlvLWdwdS1nbC5j DQo+PiBpbmRleCBlMDZiZTYwZGZiLi5lMTFhZDIzM2ViIDEwMDY0NA0KPj4gLS0tIGEvaHcvZGlz cGxheS92aXJ0aW8tZ3B1LWdsLmMNCj4+ICsrKyBiL2h3L2Rpc3BsYXkvdmlydGlvLWdwdS1nbC5j DQo+PiBAQCAtMTAwLDcgKzEwMCwxNCBAQCBzdGF0aWMgdm9pZCB2aXJ0aW9fZ3B1X2dsX3Jlc2V0 KFZpcnRJT0RldmljZSAqdmRldikNCj4+IMKgwqDCoMKgwqDCoCAqLw0KPj4gwqDCoMKgwqDCoCBp ZiAoZ2wtPnJlbmRlcmVyX2luaXRlZCAmJiAhZ2wtPnJlbmRlcmVyX3Jlc2V0KSB7DQo+PiDCoMKg wqDCoMKgwqDCoMKgwqAgdmlydGlvX2dwdV92aXJnbF9yZXNldF9zY2Fub3V0KGcpOw0KPj4gLcKg wqDCoMKgwqDCoMKgIGdsLT5yZW5kZXJlcl9yZXNldCA9IHRydWU7DQo+PiArwqDCoMKgwqDCoMKg wqAgLyoNCj4+ICvCoMKgwqDCoMKgwqDCoMKgICogSWYgZ3Vlc3QgaXMgc3VzcGVuZGluZywgd2Ug c2hvdWxkbid0IHJlc2V0IHJlbmRlcmVyLA0KPj4gK8KgwqDCoMKgwqDCoMKgwqAgKiBvdGhlcndp c2UsIHRoZSBkaXNwbGF5IGNhbid0IGNvbWUgYmFjayB0byB0aGUgdGltZSB3aGVuDQo+PiArwqDC oMKgwqDCoMKgwqDCoCAqIGl0IHdhcyBzdXNwZW5kZWQgYWZ0ZXIgZ3Vlc3QgcmVzdW1lZC4NCj4+ ICvCoMKgwqDCoMKgwqDCoMKgICovDQo+PiArwqDCoMKgwqDCoMKgwqAgaWYgKCFnLT5mcmVlemlu Zykgew0KPj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqAgZ2wtPnJlbmRlcmVyX3Jlc2V0ID0gdHJ1 ZTsNCj4+ICvCoMKgwqDCoMKgwqDCoCB9DQo+PiDCoMKgwqDCoMKgIH0NCj4+IMKgIH0NCj4+IMKg IGRpZmYgLS1naXQgYS9ody9kaXNwbGF5L3ZpcnRpby1ncHUtdmlyZ2wuYyBiL2h3L2Rpc3BsYXkv dmlydGlvLWdwdS12aXJnbC5jDQo+PiBpbmRleCA3M2NiOTJjOGQ1Li4xODNlYzkyZDUzIDEwMDY0 NA0KPj4gLS0tIGEvaHcvZGlzcGxheS92aXJ0aW8tZ3B1LXZpcmdsLmMNCj4+ICsrKyBiL2h3L2Rp c3BsYXkvdmlydGlvLWdwdS12aXJnbC5jDQo+PiBAQCAtNDY0LDYgKzQ2NCw5IEBAIHZvaWQgdmly dGlvX2dwdV92aXJnbF9wcm9jZXNzX2NtZChWaXJ0SU9HUFUgKmcsDQo+PiDCoMKgwqDCoMKgIGNh c2UgVklSVElPX0dQVV9DTURfR0VUX0VESUQ6DQo+PiDCoMKgwqDCoMKgwqDCoMKgwqAgdmlydGlv X2dwdV9nZXRfZWRpZChnLCBjbWQpOw0KPj4gwqDCoMKgwqDCoMKgwqDCoMKgIGJyZWFrOw0KPj4g K8KgwqDCoCBjYXNlIFZJUlRJT19HUFVfQ01EX1NUQVRVU19GUkVFWklORzoNCj4+ICvCoMKgwqDC oMKgwqDCoCB2aXJ0aW9fZ3B1X2NtZF9zdGF0dXNfZnJlZXppbmcoZywgY21kKTsNCj4+ICvCoMKg wqDCoMKgwqDCoCBicmVhazsNCj4+IMKgwqDCoMKgwqAgZGVmYXVsdDoNCj4+IMKgwqDCoMKgwqDC oMKgwqDCoCBjbWQtPmVycm9yID0gVklSVElPX0dQVV9SRVNQX0VSUl9VTlNQRUM7DQo+PiDCoMKg wqDCoMKgwqDCoMKgwqAgYnJlYWs7DQo+PiBkaWZmIC0tZ2l0IGEvaHcvZGlzcGxheS92aXJ0aW8t Z3B1LmMgYi9ody9kaXNwbGF5L3ZpcnRpby1ncHUuYw0KPj4gaW5kZXggNWUxNWM3OWI5NC4uOGYy MzVkNzg0OCAxMDA2NDQNCj4+IC0tLSBhL2h3L2Rpc3BsYXkvdmlydGlvLWdwdS5jDQo+PiArKysg Yi9ody9kaXNwbGF5L3ZpcnRpby1ncHUuYw0KPj4gQEAgLTM3Myw2ICszNzMsMTYgQEAgc3RhdGlj IHZvaWQgdmlydGlvX2dwdV9yZXNvdXJjZV9jcmVhdGVfYmxvYihWaXJ0SU9HUFUgKmcsDQo+PiDC oMKgwqDCoMKgIFFUQUlMUV9JTlNFUlRfSEVBRCgmZy0+cmVzbGlzdCwgcmVzLCBuZXh0KTsNCj4+ IMKgIH0NCj4+IMKgICt2b2lkIHZpcnRpb19ncHVfY21kX3N0YXR1c19mcmVlemluZyhWaXJ0SU9H UFUgKmcsDQo+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgIHN0cnVjdCB2aXJ0aW9fZ3B1X2N0cmxfY29tbWFuZCAqY21kKQ0KPj4gK3sNCj4+ICvCoMKg wqAgc3RydWN0IHZpcnRpb19ncHVfc3RhdHVzX2ZyZWV6aW5nIHNmOw0KPj4gKw0KPj4gK8KgwqDC oCBWSVJUSU9fR1BVX0ZJTExfQ01EKHNmKTsNCj4+ICvCoMKgwqAgdmlydGlvX2dwdV9ic3dhcF8z Migmc2YsIHNpemVvZihzZikpOw0KPj4gK8KgwqDCoCBnLT5mcmVlemluZyA9IHNmLmZyZWV6aW5n Ow0KPj4gK30NCj4+ICsNCj4+IMKgIHN0YXRpYyB2b2lkIHZpcnRpb19ncHVfZGlzYWJsZV9zY2Fu b3V0KFZpcnRJT0dQVSAqZywgaW50IHNjYW5vdXRfaWQpDQo+PiDCoCB7DQo+PiDCoMKgwqDCoMKg IHN0cnVjdCB2aXJ0aW9fZ3B1X3NjYW5vdXQgKnNjYW5vdXQgPSAmZy0+cGFyZW50X29iai5zY2Fu b3V0W3NjYW5vdXRfaWRdOw0KPj4gQEAgLTk4Niw2ICs5OTYsOSBAQCB2b2lkIHZpcnRpb19ncHVf c2ltcGxlX3Byb2Nlc3NfY21kKFZpcnRJT0dQVSAqZywNCj4+IMKgwqDCoMKgwqAgY2FzZSBWSVJU SU9fR1BVX0NNRF9SRVNPVVJDRV9ERVRBQ0hfQkFDS0lORzoNCj4+IMKgwqDCoMKgwqDCoMKgwqDC oCB2aXJ0aW9fZ3B1X3Jlc291cmNlX2RldGFjaF9iYWNraW5nKGcsIGNtZCk7DQo+PiDCoMKgwqDC oMKgwqDCoMKgwqAgYnJlYWs7DQo+PiArwqDCoMKgIGNhc2UgVklSVElPX0dQVV9DTURfU1RBVFVT X0ZSRUVaSU5HOg0KPj4gK8KgwqDCoMKgwqDCoMKgIHZpcnRpb19ncHVfY21kX3N0YXR1c19mcmVl emluZyhnLCBjbWQpOw0KPj4gK8KgwqDCoMKgwqDCoMKgIGJyZWFrOw0KPj4gwqDCoMKgwqDCoCBk ZWZhdWx0Og0KPj4gwqDCoMKgwqDCoMKgwqDCoMKgIGNtZC0+ZXJyb3IgPSBWSVJUSU9fR1BVX1JF U1BfRVJSX1VOU1BFQzsNCj4+IMKgwqDCoMKgwqDCoMKgwqDCoCBicmVhazsNCj4+IEBAIC0xMzQ0 LDYgKzEzNTcsOCBAQCB2b2lkIHZpcnRpb19ncHVfZGV2aWNlX3JlYWxpemUoRGV2aWNlU3RhdGUg KnFkZXYsIEVycm9yICoqZXJycCkNCj4+IMKgwqDCoMKgwqAgUVRBSUxRX0lOSVQoJmctPnJlc2xp c3QpOw0KPj4gwqDCoMKgwqDCoCBRVEFJTFFfSU5JVCgmZy0+Y21kcSk7DQo+PiDCoMKgwqDCoMKg IFFUQUlMUV9JTklUKCZnLT5mZW5jZXEpOw0KPj4gKw0KPj4gK8KgwqDCoCBnLT5mcmVlemluZyA9 IGZhbHNlOw0KPj4gwqAgfQ0KPj4gwqAgwqAgdm9pZCB2aXJ0aW9fZ3B1X3Jlc2V0KFZpcnRJT0Rl dmljZSAqdmRldikNCj4+IEBAIC0xMzUyLDggKzEzNjcsMTUgQEAgdm9pZCB2aXJ0aW9fZ3B1X3Jl c2V0KFZpcnRJT0RldmljZSAqdmRldikNCj4+IMKgwqDCoMKgwqAgc3RydWN0IHZpcnRpb19ncHVf c2ltcGxlX3Jlc291cmNlICpyZXMsICp0bXA7DQo+PiDCoMKgwqDCoMKgIHN0cnVjdCB2aXJ0aW9f Z3B1X2N0cmxfY29tbWFuZCAqY21kOw0KPj4gwqAgLcKgwqDCoCBRVEFJTFFfRk9SRUFDSF9TQUZF KHJlcywgJmctPnJlc2xpc3QsIG5leHQsIHRtcCkgew0KPj4gLcKgwqDCoMKgwqDCoMKgIHZpcnRp b19ncHVfcmVzb3VyY2VfZGVzdHJveShnLCByZXMpOw0KPj4gK8KgwqDCoCAvKg0KPj4gK8KgwqDC oMKgICogSWYgZ3Vlc3QgaXMgc3VzcGVuZGluZywgd2Ugc2hvdWxkbid0IGRlc3Ryb3kgcmVzb3Vy Y2VzLA0KPj4gK8KgwqDCoMKgICogb3RoZXJ3aXNlLCB0aGUgZGlzcGxheSBjYW4ndCBjb21lIGJh Y2sgdG8gdGhlIHRpbWUgd2hlbg0KPj4gK8KgwqDCoMKgICogaXQgd2FzIHN1c3BlbmRlZCBhZnRl ciBndWVzdCByZXN1bWVkLg0KPj4gK8KgwqDCoMKgICovDQo+PiArwqDCoMKgIGlmICghZy0+ZnJl ZXppbmcpIHsNCj4+ICvCoMKgwqDCoMKgwqDCoCBRVEFJTFFfRk9SRUFDSF9TQUZFKHJlcywgJmct PnJlc2xpc3QsIG5leHQsIHRtcCkgew0KPj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqAgdmlydGlv X2dwdV9yZXNvdXJjZV9kZXN0cm95KGcsIHJlcyk7DQo+PiArwqDCoMKgwqDCoMKgwqAgfQ0KPj4g wqDCoMKgwqDCoCB9DQo+PiDCoCDCoMKgwqDCoMKgIHdoaWxlICghUVRBSUxRX0VNUFRZKCZnLT5j bWRxKSkgew0KPj4gZGlmZiAtLWdpdCBhL2luY2x1ZGUvaHcvdmlydGlvL3ZpcnRpby1ncHUuaCBi L2luY2x1ZGUvaHcvdmlydGlvL3ZpcnRpby1ncHUuaA0KPj4gaW5kZXggMmUyODUwN2VmZS4uYzIx YzI5OTBmYiAxMDA2NDQNCj4+IC0tLSBhL2luY2x1ZGUvaHcvdmlydGlvL3ZpcnRpby1ncHUuaA0K Pj4gKysrIGIvaW5jbHVkZS9ody92aXJ0aW8vdmlydGlvLWdwdS5oDQo+PiBAQCAtMTczLDYgKzE3 Myw3IEBAIHN0cnVjdCBWaXJ0SU9HUFUgew0KPj4gwqAgwqDCoMKgwqDCoCB1aW50NjRfdCBob3N0 bWVtOw0KPj4gwqAgK8KgwqDCoCBib29sIGZyZWV6aW5nOw0KPj4gwqDCoMKgwqDCoCBib29sIHBy b2Nlc3NpbmdfY21kcTsNCj4+IMKgwqDCoMKgwqAgUUVNVVRpbWVyICpmZW5jZV9wb2xsOw0KPj4g wqDCoMKgwqDCoCBRRU1VVGltZXIgKnByaW50X3N0YXRzOw0KPj4gQEAgLTI4NCw1ICsyODUsNyBA QCB2b2lkIHZpcnRpb19ncHVfdmlyZ2xfcmVzZXRfc2Nhbm91dChWaXJ0SU9HUFUgKmcpOw0KPj4g wqAgdm9pZCB2aXJ0aW9fZ3B1X3ZpcmdsX3Jlc2V0KFZpcnRJT0dQVSAqZyk7DQo+PiDCoCBpbnQg dmlydGlvX2dwdV92aXJnbF9pbml0KFZpcnRJT0dQVSAqZyk7DQo+PiDCoCBpbnQgdmlydGlvX2dw dV92aXJnbF9nZXRfbnVtX2NhcHNldHMoVmlydElPR1BVICpnKTsNCj4+ICt2b2lkIHZpcnRpb19n cHVfY21kX3N0YXR1c19mcmVlemluZyhWaXJ0SU9HUFUgKmcsDQo+PiArwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHN0cnVjdCB2aXJ0aW9fZ3B1X2N0cmxf Y29tbWFuZCAqY21kKTsNCj4+IMKgIMKgICNlbmRpZg0KPj4gZGlmZiAtLWdpdCBhL2luY2x1ZGUv c3RhbmRhcmQtaGVhZGVycy9saW51eC92aXJ0aW9fZ3B1LmggYi9pbmNsdWRlL3N0YW5kYXJkLWhl YWRlcnMvbGludXgvdmlydGlvX2dwdS5oDQo+PiBpbmRleCAyZGE0OGQzZDRjLi5hZWZmZmJkNzUx IDEwMDY0NA0KPj4gLS0tIGEvaW5jbHVkZS9zdGFuZGFyZC1oZWFkZXJzL2xpbnV4L3ZpcnRpb19n cHUuaA0KPj4gKysrIGIvaW5jbHVkZS9zdGFuZGFyZC1oZWFkZXJzL2xpbnV4L3ZpcnRpb19ncHUu aA0KPj4gQEAgLTExNiw2ICsxMTYsOSBAQCBlbnVtIHZpcnRpb19ncHVfY3RybF90eXBlIHsNCj4+ IMKgwqDCoMKgwqAgVklSVElPX0dQVV9SRVNQX0VSUl9JTlZBTElEX1JFU09VUkNFX0lELA0KPj4g wqDCoMKgwqDCoCBWSVJUSU9fR1BVX1JFU1BfRVJSX0lOVkFMSURfQ09OVEVYVF9JRCwNCj4+IMKg wqDCoMKgwqAgVklSVElPX0dQVV9SRVNQX0VSUl9JTlZBTElEX1BBUkFNRVRFUiwNCj4+ICsNCj4+ ICvCoMKgwqAgLyogc3RhdHVzICovDQo+PiArwqDCoMKgIFZJUlRJT19HUFVfQ01EX1NUQVRVU19G UkVFWklORyA9IDB4MTMwMCwNCj4+IMKgIH07DQo+PiDCoCDCoCBlbnVtIHZpcnRpb19ncHVfc2ht X2lkIHsNCj4+IEBAIC00NTMsNCArNDU2LDEwIEBAIHN0cnVjdCB2aXJ0aW9fZ3B1X3Jlc291cmNl X3VubWFwX2Jsb2Igew0KPj4gwqDCoMKgwqDCoCB1aW50MzJfdCBwYWRkaW5nOw0KPj4gwqAgfTsN Cj4+IMKgICsvKiBWSVJUSU9fR1BVX0NNRF9TVEFUVVNfRlJFRVpJTkcgKi8NCj4+ICtzdHJ1Y3Qg dmlydGlvX2dwdV9zdGF0dXNfZnJlZXppbmcgew0KPj4gK8KgwqDCoCBzdHJ1Y3QgdmlydGlvX2dw dV9jdHJsX2hkciBoZHI7DQo+PiArwqDCoMKgIF9fdTMyIGZyZWV6aW5nOw0KPj4gK307DQo+PiAr DQo+PiDCoCAjZW5kaWYNCg0KLS0gDQpCZXN0IHJlZ2FyZHMsDQpKaXFpYW4gQ2hlbi4NCg== From xen-devel-bounces@lists.xenproject.org Fri Jun 30 07:16:51 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 30 Jun 2023 07:16:51 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557298.870526 (Exim 4.92) (envelope-from ) id 1qF8N8-0001UY-OY; Fri, 30 Jun 2023 07:16:50 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557298.870526; Fri, 30 Jun 2023 07:16:50 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qF8N8-0001UR-LI; Fri, 30 Jun 2023 07:16:50 +0000 Received: by outflank-mailman (input) for mailman id 557298; Fri, 30 Jun 2023 07:16:50 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qF8N7-0001UL-Sg for xen-devel@lists.xenproject.org; Fri, 30 Jun 2023 07:16:49 +0000 Received: from EUR05-VI1-obe.outbound.protection.outlook.com (mail-vi1eur05on2060f.outbound.protection.outlook.com [2a01:111:f400:7d00::60f]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 1352db43-1716-11ee-b237-6b7b168915f2; Fri, 30 Jun 2023 09:16:48 +0200 (CEST) Received: from DUZPR01CA0136.eurprd01.prod.exchangelabs.com (2603:10a6:10:4bc::24) by AS2PR08MB9428.eurprd08.prod.outlook.com (2603:10a6:20b:5e8::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.19; Fri, 30 Jun 2023 07:16:39 +0000 Received: from DBAEUR03FT048.eop-EUR03.prod.protection.outlook.com (2603:10a6:10:4bc:cafe::cb) by DUZPR01CA0136.outlook.office365.com (2603:10a6:10:4bc::24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.22 via Frontend Transport; Fri, 30 Jun 2023 07:16:39 +0000 Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by DBAEUR03FT048.mail.protection.outlook.com (100.127.142.200) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.22 via Frontend Transport; Fri, 30 Jun 2023 07:16:39 +0000 Received: ("Tessian outbound 52217515e112:v142"); Fri, 30 Jun 2023 07:16:39 +0000 Received: from 3dfd8951f8f9.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 6A3D7A7B-DE7C-4F68-82BA-18594CF8EEC8.1; Fri, 30 Jun 2023 07:16:32 +0000 Received: from EUR04-HE1-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 3dfd8951f8f9.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Fri, 30 Jun 2023 07:16:32 +0000 Received: from DU0PR08MB7664.eurprd08.prod.outlook.com (2603:10a6:10:315::5) by AM9PR08MB6004.eurprd08.prod.outlook.com (2603:10a6:20b:285::5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.19; Fri, 30 Jun 2023 07:16:30 +0000 Received: from DU0PR08MB7664.eurprd08.prod.outlook.com ([fe80::cb0:4e8d:4db8:a429]) by DU0PR08MB7664.eurprd08.prod.outlook.com ([fe80::cb0:4e8d:4db8:a429%2]) with mapi id 15.20.6544.019; Fri, 30 Jun 2023 07:16:30 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 1352db43-1716-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=YoXiutiUDdcwntf5OsT+/rRYVryZWxjgehEe7Z76IBg=; b=U61dMlbl/9TYe6s0ZmSxJhKdJ7faQO9hDZ/zvJBASOBgdLFrqjFx8JfEplb5rTc/uNVQ3SPC2q6CURkyFwutCmW8I+Xh3Vz3EoGf/FMel/oNAEXo6WA3zTRoRxVDLmWs56or8BGGosecQPFQ92VU/fSuDW4cBQo8k1PPolcW7pI= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C X-CheckRecipientChecked: true X-CR-MTA-CID: bab314920bbc24cf X-CR-MTA-TID: 64aa7808 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Ft+ONMk3Wq0xM/fVkS7o3gwA4xoBv3VXk3YZkYfBLXxNBpRWN+71kAcw/izXkhJA/1VYObdixzZ5ce8bhZQvv3pITOLVkEj9/ltN60v7ZsEzc1+yJqE3mbNCzDn0TQuDIzyBHOa5PsJqkJjB3YI+DLoJu1mJlUHSPL2f9P4FHeLqOsiniBZEuQDYW/2d/GDhvumjMHfIrhx0npqzr1beq5CkqL40yBKU8MXoXKIWwIN6cFbCXz0KG+cSUS1rxcMU27hfGftQ9iUsZu23AICeFnI7v9vNK4itGx8m5EUreYxFPCAq2yvEB+DSLYVqpc4YTl2DsDv8su4EjFEL56CLzA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=YoXiutiUDdcwntf5OsT+/rRYVryZWxjgehEe7Z76IBg=; b=YStMCWu3PP1B9goegtHF3q3EUC0ygaFCsCFqX+hzw0JEocigcDI+72qIqWkKaMjaGfaex2QonPMU9TPW+VN2jQw++asiWX7XHHIUt3VsAkeDVk6D3U7Vi274ABcZq5gOFAHsMbdlMxCLFFtPg7VoUE524sLAgnVoDKpl2YVBQKZV8U7xmHScAUAcSF7iTnXuc1uLtWM5rOkl3cNVlF/R7OMC1/FricZrzJTz2SNzzra6wqDk6gqz9+fPqM3msubWHq1rZcSeFivrcHKSrXRSCp1y1ZDEVMhLD4oBaQKB3cKsLC8P0GxanabLGYbYzg7XXxXp8Jt1/rwHCtEGjaSM9Q== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=YoXiutiUDdcwntf5OsT+/rRYVryZWxjgehEe7Z76IBg=; b=U61dMlbl/9TYe6s0ZmSxJhKdJ7faQO9hDZ/zvJBASOBgdLFrqjFx8JfEplb5rTc/uNVQ3SPC2q6CURkyFwutCmW8I+Xh3Vz3EoGf/FMel/oNAEXo6WA3zTRoRxVDLmWs56or8BGGosecQPFQ92VU/fSuDW4cBQo8k1PPolcW7pI= Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; Message-ID: <22f8c911-8dfc-49d6-b707-aed646aa716e@arm.com> Date: Fri, 30 Jun 2023 15:16:23 +0800 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH] xen/arm: vgic: Add missing 'U' in VGIC_ICFG_MASK for shifted constant Content-Language: en-US To: xen-devel@lists.xenproject.org References: <20230629221800.1478182-1-Henry.Wang@arm.com> From: Hongda Deng In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-ClientProxiedBy: SGXP274CA0002.SGPP274.PROD.OUTLOOK.COM (2603:1096:4:b8::14) To DU0PR08MB7664.eurprd08.prod.outlook.com (2603:10a6:10:315::5) MIME-Version: 1.0 X-MS-TrafficTypeDiagnostic: DU0PR08MB7664:EE_|AM9PR08MB6004:EE_|DBAEUR03FT048:EE_|AS2PR08MB9428:EE_ X-MS-Office365-Filtering-Correlation-Id: 9e948c1a-3f64-4075-d064-08db7939f2c2 x-checkrecipientrouted: true NoDisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: R2WbyN7+IAKnmqwM1ot/wb629WjoBWxBc4OidnnJ5cbaCg1cuD4m8iZrzUGT0lJGdNPb7+RBeTq4oqH7hIsVm16cbogaFpMhGaPHB4hKjzl5A1IVU9G5bX4YvAzJPjMdCi56nLJdlps6MbZl+TeHOeUkyk4xLTU+hvPwuA+mbOY8hPADSlPEwfrfE05pihl8HbfNeipR69w77b8l3oz1QIZ2XIeSsiy38MVJJYPcuCj1m6CpPnbIuYmzL9LQk7QixnDJ04pjmusFZwfo3vGGpXutxsak9iv6ILNgNI37GJ+E2bM1gvzf2XnF5VpXCOJ3MdStBXUemF5tSk1XXLgtPxAgfwNVMRTJzMlsGKEAi5ERAgvlKo5e8J7f0BpnIZlYLB+49nwB0OQyaqe02lajTYrPipJLTLUVn19g0yWT4oHbDq9UNF5ctnM8vby1JlYL8edkU25wCfbrhWqrgSBoSVYboHVIM1iY4O8fOKQINp8l6pjZs4VDLuQ8EMbSVRvsaOIvnJQQj3BydEcg+T7CKPf8mQlvcRuIO4l0RjyrPCioqvPp8awNJSm3ik0TTL2DQd0OU/mxlPI4BM1OfS2EhZwQdLk39RPKT2u6rSGclm2jQYRqJwrWxqwbxO3/rOaah8Tzb01IzNlpCEUBmdl8qQ== X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU0PR08MB7664.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(346002)(136003)(396003)(39860400002)(366004)(376002)(451199021)(2616005)(66556008)(6916009)(66476007)(41300700001)(36756003)(316002)(66946007)(31696002)(44832011)(86362001)(2906002)(8936002)(5660300002)(8676002)(83380400001)(6486002)(6512007)(26005)(186003)(6666004)(31686004)(6506007)(53546011)(38100700002)(478600001)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR08MB6004 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: DBAEUR03FT048.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: dd65b9ab-5138-4fc7-957c-08db7939ed29 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: c7Qki6ZJDBXYEF30g9uKjf8uI/OzycY3OSw4KPgA12MTn+ywzeBChNby5PwniWJUgrPOoRcMQCNm0FmKwJY8h3MX/zl3d8vBgQkWqytZiLId7TsRWYaUAUTMKjKjQY0bjvHHnyfmyCI5ktkvaYk/bN+ub+ZQAmJEzghyAf/tX61AnSAYENBVmS+wVJaRX7v/Xvc4j7eE3rSDlhgIeOzRQH3Nd1oDQx9I2v8uFvo8l0dmWs8C1w4oNcP0UQiiW9JZKDqKJgKNt4a+yMf8djD8Z1S5abLK/9XgBo/tPxH3z6mVgzdVJCd18q2fJEYQWwbvZr5K2UjbghvnbRrmppjjlqYBfrUVQZlu7hj8Se/gtFAWocLwn6MNy/P0l1ZLeAuSvKcTIL9hIBo19kEFXobvCv5wEs3wjXl2cqldf3GFEl0yuGufSlHH3be/uoxrXCUrAb2ZKOseaYEfOQbDkrx0bcg9uG+ZLCPFO3IWrVSYdglxH1gni6JSbZGd7bdncgG0vmoQMC3ZCZq52nfVDAqkrxyYR1K30r98seGf7s0v/BnQtlXY32xMozXpBKU9fDGBnNI8axFlzWyIOq6OPfrnQCyzmI9Re5ksoHHUrEVWL4/xs4CBYEjasPRrpL88KblIH60htcDY3rgRICLugol2331yIlUh6SVVmjiYOvhp2lkY4nSo7P13aoWTj8mD6oOvQhmRM0ONg2M3pEnU6iMU6WYXmaWwYOnKV5vvSzC2L7zjsNdUK8dTCsNeCTbVUglyu5qinIRsgoXodK2mT7vT4A== X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230028)(4636009)(346002)(39860400002)(136003)(396003)(376002)(451199021)(40470700004)(46966006)(36840700001)(44832011)(31686004)(70206006)(36756003)(70586007)(6916009)(478600001)(316002)(5660300002)(8676002)(8936002)(2906002)(336012)(40460700003)(41300700001)(40480700001)(86362001)(31696002)(82310400005)(36860700001)(6486002)(53546011)(6512007)(6506007)(26005)(47076005)(186003)(356005)(6666004)(82740400003)(81166007)(83380400001)(2616005)(43740500002);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Jun 2023 07:16:39.5851 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 9e948c1a-3f64-4075-d064-08db7939f2c2 X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: DBAEUR03FT048.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS2PR08MB9428 On 2023/6/30 07:03, Stefano Stabellini wrote: > On Fri, 30 Jun 2023, Henry Wang wrote: >> With UBSAN on some arm64 platforms, e.g. FVP_Base_RevC-2xAEMvA, the >> following splat will be printed while Dom0 is booting: >> ``` >> (XEN) ================================================================== >> (XEN) UBSAN: Undefined behaviour in arch/arm/vgic.c:372:15 >> (XEN) left shift of 1 by 31 places cannot be represented in type 'int' >> (XEN) Xen WARN at common/ubsan/ubsan.c:172 >> (XEN) ----[ Xen-4.18-unstable arm64 debug=y ubsan=y Not tainted ]---- >> ``` >> >> This is because there is a device node in the device tree with 0xf >> as the interrupts property. Example of the device tree node is shown >> below: >> ``` >> ethernet@202000000 { >> compatible = "smsc,lan91c111"; >> reg = <0x2 0x2000000 0x10000>; >> interrupts = <0xf>; >> }; >> ``` >> and this value is passed to vgic_get_virq_type() as "index" then "intr" >> in VGIC_ICFG_MASK. >> >> Add the missing 'U' in VGIC_ICFG_MASK as a fix, and this should also >> addressing MISRA Rule 7.2: >> >> A "u" or "U" suffix shall be applied to all integer constants that >> are represented in an unsigned type >> >> Signed-off-by: Henry Wang > Reviewed-by: Stefano Stabellini > > >> --- >> This patch should be based on top of Julien's series >> "xen/arm: Enable UBSAN support" to test. >> --- >> xen/arch/arm/vgic.c | 2 +- >> 1 file changed, 1 insertion(+), 1 deletion(-) >> >> diff --git a/xen/arch/arm/vgic.c b/xen/arch/arm/vgic.c >> index c61c68870c..97d6f61066 100644 >> --- a/xen/arch/arm/vgic.c >> +++ b/xen/arch/arm/vgic.c >> @@ -358,7 +358,7 @@ void vgic_disable_irqs(struct vcpu *v, uint32_t r, int n) >> } >> } >> >> -#define VGIC_ICFG_MASK(intr) (1 << ((2 * ((intr) % 16)) + 1)) >> +#define VGIC_ICFG_MASK(intr) (1U << ((2 * ((intr) % 16)) + 1)) >> >> /* The function should be called with the rank lock taken */ >> static inline unsigned int vgic_get_virq_type(struct vcpu *v, int n, int index) >> -- >> 2.25.1 >> Reviewed-by: Hongda Deng From xen-devel-bounces@lists.xenproject.org Fri Jun 30 07:29:50 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 30 Jun 2023 07:29:50 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557304.870536 (Exim 4.92) (envelope-from ) id 1qF8ZV-00038q-V2; Fri, 30 Jun 2023 07:29:37 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557304.870536; Fri, 30 Jun 2023 07:29:37 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qF8ZV-00038j-SQ; Fri, 30 Jun 2023 07:29:37 +0000 Received: by outflank-mailman (input) for mailman id 557304; Fri, 30 Jun 2023 07:29:37 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qF8ZU-00038d-VF for xen-devel@lists.xenproject.org; Fri, 30 Jun 2023 07:29:37 +0000 Received: from mo4-p01-ob.smtp.rzone.de (mo4-p01-ob.smtp.rzone.de [85.215.255.52]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id dc7a3ba4-1717-11ee-b237-6b7b168915f2; Fri, 30 Jun 2023 09:29:35 +0200 (CEST) Received: from sender by smtp.strato.de (RZmta 49.6.0 AUTH) with ESMTPSA id y5401az5U7TNwzD (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256 bits)) (Client did not present a certificate); Fri, 30 Jun 2023 09:29:23 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: dc7a3ba4-1717-11ee-b237-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; t=1688110164; cv=none; d=strato.com; s=strato-dkim-0002; b=Gu8Bi3ERzgErl5CIxwZj9d+pFxVMRa5swwyCIoniKJ/yaLfJy/Ao27iDKRE0Qvb6cK hGfLakMGWgySPEVEV7LlInl3NiJlSFZj3vMWk1cSPmc642baxMZ9DCEsmuUBGpQpJNF/ 4psrzxdE9jNGgKkN9LKC3HvPOGPntlr+6jlnD/QGOaulrVrMWe7LnXiazbo7y015ok2I 3wcoo2Ry6hJ4NYMQo/8uNFefqob+CtkSelNrxsKkv/xFpgdNhA2LNoVR6vXqnhwgideg amX9nMPxl2jMuazy2jPhpjdK/8gfP1WlJRoCUT3FR8YyjzC5VTrD14QZGdTmn+x0tHaq XuMw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; t=1688110164; s=strato-dkim-0002; d=strato.com; h=References:In-Reply-To:Message-ID:Subject:Cc:To:From:Date:Cc:Date: From:Subject:Sender; bh=SbrWWD8/bSxrp1AiIlQ8m9gLXWJfqf48i1MGfG4Pems=; b=WWoZxFlgXeI2qVE0i4jTGEa35VJ37LB9M0euaNabdwLLeR5lUB9D1rJdOq0Z6i9Mja 3N5FNqP9IOPZYwQByc2d6DS+qMSa+ZLgT6Ce34OTkSW61wptEZ4XK9AFIj4bKTjjxj4o N9ZX9+fR7+VD4isUlaIMFMeUFGdBPpkWV0u5QW8Dgz6k/2gtJhFa5x+13gqEvF+ugLcj mdxihfmoO17d2C268jr1Ph0AWQsR6EGfWS3EK8ccNy0Ggna/PQQuLvqPFVGygxJsQ3oR R6GWFcpRNJ6dIYBbopZDCLoinbEHaCFDsei+z/GQgPOocKfQP9rOQdrbEjT24xaPTgiy IvWQ== ARC-Authentication-Results: i=1; strato.com; arc=none; dkim=none X-RZG-CLASS-ID: mo01 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; t=1688110164; s=strato-dkim-0002; d=aepfle.de; h=References:In-Reply-To:Message-ID:Subject:Cc:To:From:Date:Cc:Date: From:Subject:Sender; bh=SbrWWD8/bSxrp1AiIlQ8m9gLXWJfqf48i1MGfG4Pems=; b=JCbb3yVKpkntRc6Rxtb20t3e2+oX00vK//Lx4s27CTuXm+fPo7KGeWN+A8/8UxD0+t UkLa7i73Y5Buw5tb9rmhOkP845X2gyzrPKEaq9Jz+MUR/a4P8PYWTm3Z5rS9Jh18fybp lXmel6TGrcxGRLQ6nITdJtkJf8nQ0HHmXzBo5961RxVApGfQN445mN7tBK5rzExo121j 0Qpg5GgZWoqewrU6q+VLACXzBeTyU3JQ6YM7tVse/gZnqapAES6Yp8m1gs/22sIpleS6 5WwSdkOuCY5ghCMhOaEuT/3Vbn3BHRLgYUNbyau2UcbVJvk+zEgss3i8MijVONDFfGEe xhZw== DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; t=1688110164; s=strato-dkim-0003; d=aepfle.de; h=References:In-Reply-To:Message-ID:Subject:Cc:To:From:Date:Cc:Date: From:Subject:Sender; bh=SbrWWD8/bSxrp1AiIlQ8m9gLXWJfqf48i1MGfG4Pems=; b=oP9xFqEZ7LmsltzPogNWnsdJ7Ll5YyTRl9m6DYBBgwohFe6R3RotJK//dBcnwbE/op rVkAOAdmYPov8wrg+KCw== X-RZG-AUTH: ":P2EQZWCpfu+qG7CngxMFH1J+3q8wa/QLpd5ylWvMDX3y/OuD5rXWiuRyeUQh3GC6w0BTiV2X9kN/WAr0rdTE7oY1qJzPNA==" Date: Fri, 30 Jun 2023 09:29:21 +0200 From: Olaf Hering To: Bernhard Beschow Cc: qemu-devel@nongnu.org, Paolo Bonzini , John Snow , xen-devel@lists.xenproject.org, Stefano Stabellini Subject: Re: [PATCH v2] piix: fix regression during unplug in Xen HVM domUs Message-ID: <20230630092921.392b302d.olaf@aepfle.de> In-Reply-To: <4F5609FD-4A89-4450-89E2-3311CC5A9317@gmail.com> References: <20210317070046.17860-1-olaf@aepfle.de> <4441d32f-bd52-9408-cabc-146b59f0e4dc@redhat.com> <20210325121219.7b5daf76.olaf@aepfle.de> <20230509225818.GA16290@aepfle.de> <20230626231901.5b5d11c1.olaf@aepfle.de> <5DB37FA5-41DF-4ED6-8C8A-CDDD6F276F42@gmail.com> <20230627140740.2736f6e8.olaf@aepfle.de> <4F5609FD-4A89-4450-89E2-3311CC5A9317@gmail.com> X-Mailer: Claws Mail 20230601T090920.68bc28c0 hat ein Softwareproblem, kann man nichts machen. MIME-Version: 1.0 Content-Type: multipart/signed; boundary="Sig_/lmjCe4VHwkOw+v56guoEpxw"; protocol="application/pgp-signature"; micalg=pgp-sha256 Content-Transfer-Encoding: 7bit --Sig_/lmjCe4VHwkOw+v56guoEpxw Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: quoted-printable Wed, 28 Jun 2023 09:27:16 +0000 Bernhard Beschow : > Would you mind sending a patch fixing the BMIBA register to be reset as 3= 2 bit? Will do so next week. Are the specs for this chipset available, does this address really need to be accessed in quantities of u32, or is perhaps u16 required? I guess for this specific bug pci_set_word may work as well. Either way, commit e6a71ae327a388723182a504bb253777ec36869b was wrong. Does the comment added in this commit mean, the quantity is really u32? Olaf --Sig_/lmjCe4VHwkOw+v56guoEpxw Content-Type: application/pgp-signature Content-Description: Digitale Signatur von OpenPGP -----BEGIN PGP SIGNATURE----- iQIzBAEBCAAdFiEE97o7Um30LT3B+5b/86SN7mm1DoAFAmSehFEACgkQ86SN7mm1 DoCf0Q/+PAzoc0MsFKTaoPSLnN5nLei3muaIWh8tFlvsvcEIuAr0TK35+NMCwRKg carcbr5ImHOTemPQg7hFEqdujUOVKO6GbqBN3B4awq7nCCKJKbWg5qU4u3Zw45KQ NO16omwctt7p5FLhJIIX1Um8QNUPiZqjrbOgIo+ZLgxrdT8r5mMitBY2E4jpSdp7 wyzbXN3h3CiEf8D9jVx/dHorAadvRMI5hEPpRGErIkptwezUohF8h5rg4LGL1/HS EtMa7Tj0PFkSHYMy6UkOok5IeMH5lP1fw+1M/0ZsKK/z4WtTvNz2/03vL9WG20E7 H/2LrX2CTDRUCotUABR+GyaYoTnqYlgkLhql4JfOah1ASkOwXNyaZLrQXKhqxVUc TFa79mFelfB3fo5npaD9DaIR6y1v73PaSXJ6yEb1GL+prZfRVSnBeo7rh5Q/KPh+ VGncAwj1flxKLpgj+LmQjsjU7C3rENbvA0qVxIspWqKnRcAHwWndDnimrj2H7Jwq /bksP3Xehmdhe7w385496aD794c9zZTIqWHwyGfzNkGefExXfFuuZt6hHQs61AIv YdUwCm6Q2m2FpnuZnNhmXZoDd/274ucoN5TAMB57WeQr+MR0ATtXOMifhhRbYuvK N0yGPQC5i7MrOTUsuc0CIw7k6oSaePRMWFdVQ45iyJw8u4cqp4U= =teFy -----END PGP SIGNATURE----- --Sig_/lmjCe4VHwkOw+v56guoEpxw-- From xen-devel-bounces@lists.xenproject.org Fri Jun 30 07:35:47 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 30 Jun 2023 07:35:47 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557310.870546 (Exim 4.92) (envelope-from ) id 1qF8fJ-0004bO-K6; Fri, 30 Jun 2023 07:35:37 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557310.870546; Fri, 30 Jun 2023 07:35:37 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qF8fJ-0004bH-HL; Fri, 30 Jun 2023 07:35:37 +0000 Received: by outflank-mailman (input) for mailman id 557310; Fri, 30 Jun 2023 07:35:35 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qF8fH-0004bB-RT for xen-devel@lists.xenproject.org; Fri, 30 Jun 2023 07:35:35 +0000 Received: from NAM12-DM6-obe.outbound.protection.outlook.com (mail-dm6nam12on20630.outbound.protection.outlook.com [2a01:111:f400:fe59::630]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id b24af53b-1718-11ee-b237-6b7b168915f2; Fri, 30 Jun 2023 09:35:34 +0200 (CEST) Received: from SJ0PR13CA0091.namprd13.prod.outlook.com (2603:10b6:a03:2c5::6) by PH0PR12MB5608.namprd12.prod.outlook.com (2603:10b6:510:143::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.26; Fri, 30 Jun 2023 07:35:29 +0000 Received: from CO1NAM11FT046.eop-nam11.prod.protection.outlook.com (2603:10b6:a03:2c5:cafe::f2) by SJ0PR13CA0091.outlook.office365.com (2603:10b6:a03:2c5::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.19 via Frontend Transport; Fri, 30 Jun 2023 07:35:29 +0000 Received: from SATLEXMB04.amd.com (165.204.84.17) by CO1NAM11FT046.mail.protection.outlook.com (10.13.174.203) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6500.49 via Frontend Transport; Fri, 30 Jun 2023 07:35:28 +0000 Received: from cjq-desktop.amd.com (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Fri, 30 Jun 2023 02:35:06 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: b24af53b-1718-11ee-b237-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=cneF23IVAdXfKmAmAv9PwWatV/3B9/f7DAwd01REfVoVPQK4DViuq6WiPfwl3lzy0w0upukoNW1zBGNgMDmDBElLNruAvTU6DdfQxAHTLqB2Z0Fgd4venTYOd/QkFXjCL+Yvb/Xk3uPhWHtXEku0pq8TdP7QIOtGsC8YHiu5p8iHnkZIZ9TtEeo80oNWECe/3lh58vZiIhNPZRutEiT8jdwycu2gKYLyi7vPQ3AfPwANv5TnRgc2eSJcECHZH0SvAF48emojfVJCd2+ubvwRS6sBJlMOQqvMWneEfwSrxs72WCI84CGqObegvK9B2oNOJGhYrVuXPK7OsqNgWOe+dg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=XTc0Y1rrXNKRDWpAUmQ3mpunEfzfO3YtM3nY3zDW1Cc=; b=n1X2JH7Q/wvFss2csN0Axj4T2KYWBrUNJVYqS2dFvv5EwpD5OGUz9VHJxpdJei8x8lNSLE91PinHKM+efpN9nEOnjlVb35sbb8pn3WW0jBtQaroyBa64hSG/+Hhr4+rOO3LIBUrAjUAz3sRRiYe4IX+Wn9oC/DZXCacYmzn6Slr+LsUBD1pIDI5bg6lgtlsm10NELx3EupuzTfXBFnxOhy6bYp0tCCd1TkApARw3PDHbUSdncwIF/cQhErycRiLEU00+U4pf70AwxCzZAtXmiltBtCBRgWA3q7Z9+2KeLYNOXF8rVwO4BXEbeMB6FkGEZBy6trIiTsIOhTh0mBClWg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=redhat.com smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=XTc0Y1rrXNKRDWpAUmQ3mpunEfzfO3YtM3nY3zDW1Cc=; b=xuxJbHr9sHweyAEKcBsTC2ZC3jwsfz5SWhn5I836Mgub23P2AOfeI/+GX46ExLmbyFOzFGJHjQ3uBl3qBC7KwxbscASqrVeek+wtzvEVP1GE+dPoAGHJifR5QbWtZM/GHD+kG0/VjRAKFLARsMTiXY6ywOghzS8xuk8WmdkoAyE= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C From: Jiqian Chen To: David Airlie , Gerd Hoffmann , =?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= , "Gurchetan Singh" , Chia-I Wu , "Juergen Gross" , Stefano Stabellini , Oleksandr Tyshchenko , Boris Ostrovsky , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Robert Beckett , , , , CC: Alex Deucher , Christian Koenig , Stewart Hildebrand , Xenia Ragiadakou , Honglei Huang , Julia Zhang , Huang Rui , Jiqian Chen Subject: [LINUX KERNEL PATCH v2 0/1] add S3 support for virtgpu Date: Fri, 30 Jun 2023 15:34:47 +0800 Message-ID: <20230630073448.842767-1-Jiqian.Chen@amd.com> X-Mailer: git-send-email 2.34.1 MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit X-Originating-IP: [10.180.168.240] X-ClientProxiedBy: SATLEXMB04.amd.com (10.181.40.145) To SATLEXMB04.amd.com (10.181.40.145) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO1NAM11FT046:EE_|PH0PR12MB5608:EE_ X-MS-Office365-Filtering-Correlation-Id: 76283c84-3296-4f38-acc4-08db793c93f6 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: mwvPJCcQY3+WAvQ7nycHHaVlzPPpRbzUeaeMw2Deo9W3vPdRN5Ieau3j5g96HsdoYhQR14U1gZvfj0GJSUpPtmJPkD0RKxHJICTc2EErHvi2/RZmW4gBtzkiGJeBpwHyvKjL3BpCJHwOrLFigFCwflBOzuJTGgoFN8znnKSW0aH/FaqkvUukMIsQmIKcCzP3PsVqlKYXY6b59mYhnzJYZwT9QINB6E6YYcYfSVcRnX6KkTL/JTFHNsEWXnfGgP7WG5bHXhFpzue0/xsWv2MKJkb5O2VBmQJqKwtQdKuc6bw1SCwMZ9jbo9p1cn0TUVhcjmlKVI7hm2E9VHt5NEj0lTs5NJ9WCNDtM+9hN4bhJEfLVF7RqYhHFpNsjatMvJvXdP33Hy7tMyVgScdaD4Htwlz5KbisOa283SU4/Q9PW/jVZtbL01zhx5rqpMjtHhEREs6yHfpaOkzSYyrkCYxLSlyBBWnbwgtjLlGUjEQO/y91HpTupERI+dIdnPyeheJWz03rwLqJ5vsTu2QnSFerlHCer70stwsBCPdHlcxSr0eELR8ySsxkG/vlgz9WD5bSzX5/qSyWah9LV6KefAcBy9jFG+/e33kRuBX8IcVzrnkWc3x6SJKyRH4C7pvwFsxGl53BkDynOsTGbPO1OQ0dSwC2SjBqv4VBDP37hOV9PaHd14XONXODnSSCI1gJQpwhYku7sjL/v3+J+x0ioPO4hFGVVsh4UkX2ZIkK+JyuzPVxo6W05VS2XL1llYj6QI2h84ZqJlw6WSo8tHY1fCFXtta7xi577ewm0vQzjlPOHBsqKl6SiVv99ht+aQPWXC96 X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(136003)(39860400002)(346002)(396003)(376002)(451199021)(46966006)(40470700004)(36840700001)(26005)(2906002)(86362001)(356005)(82310400005)(7696005)(6666004)(83380400001)(81166007)(2616005)(921005)(186003)(336012)(16526019)(426003)(47076005)(82740400003)(40460700003)(54906003)(966005)(110136005)(41300700001)(36860700001)(40480700001)(4326008)(478600001)(36756003)(70586007)(316002)(70206006)(7416002)(1076003)(5660300002)(8936002)(8676002)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Jun 2023 07:35:28.9066 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 76283c84-3296-4f38-acc4-08db793c93f6 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com] X-MS-Exchange-CrossTenant-AuthSource: CO1NAM11FT046.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR12MB5608 v2: Hi all, Thanks to Marc-André Lureau, Robert Beckett and Gerd Hoffmann for their advice and guidance. V2 makes below changes: * Change VIRTIO_CPU_CMD_STATUS_FREEZING to 0x0400 (<0x1000) * Add a new feature flag VIRTIO_GPU_F_FREEZING, so that guest and host can negotiate whenever freezing is supported or not. V2 of Qemu patch https://lore.kernel.org/qemu-devel/20230630070016.841459-1-Jiqian.Chen@amd.com/T/#t Best regards, Jiqian Chen. v1: link: https://lore.kernel.org/lkml/20230608063857.1677973-1-Jiqian.Chen@amd.com/ Hi all, I am working to implement virtgpu S3 function on Xen. Currently on Xen, if we start a guest who enables virtgpu, and then run "echo mem > /sys/power/state" to suspend guest. And run "sudo xl trigger s3resume" to resume guest. We can find that the guest kernel comes back, but the display doesn't. It just shows a black screen. In response to the above phenomenon, I have found two problems. First, if we move mouse on the black screen, guest kernel still sends a cursor request to Qemu, but Qemu doesn't response. Because when guest is suspending, it calls device_suspend, and then call into Qemu to call virtio_reset->__virtio_queue_reset. In __virtio_queue_reset, it clears all virtqueue information on Qemu end. So, after guest resumes, Qemu can't get message from virtqueue. Second, the reason why display can't come back is that when guest is suspending, it calls into Qemu to call virtio_reset->virtio_gpu_gl_reset. In virtio_gpu_gl_reset, it destroys all resources and resets renderer, which are used for display. So after guest resumes, the display can't come back to the status when guest is suspended. This patch initializes virtqueue when guest is resuming to solve first problem. And it notifies Qemu that guest is suspending to prevent Qemu destroying resources, this is to solve second problem. And then, I can bring the display back, and everything continues their actions after guest resumes. Modifications on Qemu end is: https://lore.kernel.org/qemu-devel/20230608025655.1674357-2-Jiqian.Chen@amd.com/ Jiqian Chen (1): virtgpu: init vq during resume and notify qemu guest status drivers/gpu/drm/virtio/virtgpu_debugfs.c | 1 + drivers/gpu/drm/virtio/virtgpu_drv.c | 37 ++++++++++++++++++++++++ drivers/gpu/drm/virtio/virtgpu_drv.h | 4 +++ drivers/gpu/drm/virtio/virtgpu_kms.c | 36 +++++++++++++++++------ drivers/gpu/drm/virtio/virtgpu_vq.c | 15 ++++++++++ include/uapi/linux/virtio_gpu.h | 15 ++++++++++ 6 files changed, 99 insertions(+), 9 deletions(-) -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Fri Jun 30 07:35:47 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 30 Jun 2023 07:35:47 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557311.870556 (Exim 4.92) (envelope-from ) id 1qF8fN-0004r4-Qg; Fri, 30 Jun 2023 07:35:41 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557311.870556; Fri, 30 Jun 2023 07:35:41 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qF8fN-0004qx-Nt; Fri, 30 Jun 2023 07:35:41 +0000 Received: by outflank-mailman (input) for mailman id 557311; Fri, 30 Jun 2023 07:35:40 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qF8fM-0004bB-57 for xen-devel@lists.xenproject.org; Fri, 30 Jun 2023 07:35:40 +0000 Received: from NAM02-BN1-obe.outbound.protection.outlook.com (mail-bn1nam02on20624.outbound.protection.outlook.com [2a01:111:f400:7eb2::624]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id b5170aba-1718-11ee-b237-6b7b168915f2; Fri, 30 Jun 2023 09:35:39 +0200 (CEST) Received: from SJ0PR13CA0116.namprd13.prod.outlook.com (2603:10b6:a03:2c5::31) by SA1PR12MB8967.namprd12.prod.outlook.com (2603:10b6:806:38b::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.19; Fri, 30 Jun 2023 07:35:34 +0000 Received: from CO1NAM11FT046.eop-nam11.prod.protection.outlook.com (2603:10b6:a03:2c5:cafe::c) by SJ0PR13CA0116.outlook.office365.com (2603:10b6:a03:2c5::31) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6565.10 via Frontend Transport; Fri, 30 Jun 2023 07:35:34 +0000 Received: from SATLEXMB04.amd.com (165.204.84.17) by CO1NAM11FT046.mail.protection.outlook.com (10.13.174.203) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6500.49 via Frontend Transport; Fri, 30 Jun 2023 07:35:33 +0000 Received: from cjq-desktop.amd.com (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Fri, 30 Jun 2023 02:35:27 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: b5170aba-1718-11ee-b237-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=SdnXiftQ4fVMNP+ZNmVhBwGvmuFSQ1OfFZVcMswWsyPJ0rsdw0xUTTtUHgxnOZBKP9HeBpL/0Qaw4h9AgEInfSmgQPzPNRmWNhGnqt69e9dt02XHL4ZSESpvlE6gpEUdQKHi0XRh+WtICUhKjvUJH2iL6BnVrkFheZhhl7fGL0JmG6scC3iGLEaT5ef2XZtAvMVHF1S011xW5SaI/wATiR/z1N3NUc9anY/YeA3YwEP9kLR9aKRUS4Ivag0K4AVGDMDgmTAiTsNNvBd3a74co2hSrP6WcT0612ShzNe02PQyOpo26kxcr4pHalU5UeLxx7WCuVaZwh1chG9XgUjrgA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=ppNRPku8dkiO7Shnqz4GBnoFzC/vZ0vYL1BvMQQBQuY=; b=O546CNGWNvaaTg61LskhhtPSf1S//uJ2eZqhNl5TQE6T9igxbuK/jQgLcVrUybd1iK7C2pskYZO2R9vkDfnF7uPzbEflVRnoJyaf4f5ipt7ISydehyyXzzE66TPFeHmuv5OhK1bB45H1xTW3KIrP8Bt7PETNwWbUEwamZC7QsazA+ht1q8GXoBmtv2AaiVR08LmSgx19RUPU0X79vYH+RIWDuiSq2vDggE+F0HloMWZu1ZaBQqlmyh9XIsrPLlmL6RjGcHUb14114cazCCeory/JqKLyJYKv1FiS5soBaoxMOkJiKEfrlD8UKB/H5ewAzmt5xcYluYNUZ31XhMMfuA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=redhat.com smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=ppNRPku8dkiO7Shnqz4GBnoFzC/vZ0vYL1BvMQQBQuY=; b=uZ0MfFCiHUjRh2kzOnzOVBdHE/PVTUzDTu+JlJ+smjf49a6KZObg51KThQSmuqO0+SMbqBgLLH2mguOgIfPnMCfGqfNrCIimAsfRImuKNA/yk+64ZKxg/Z/p3w5syL0l8pY6IAHK2wG+H0tXL6etz8XPa/PwbS7P1q/CyT8qu0M= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C From: Jiqian Chen To: David Airlie , Gerd Hoffmann , =?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= , "Gurchetan Singh" , Chia-I Wu , "Juergen Gross" , Stefano Stabellini , Oleksandr Tyshchenko , Boris Ostrovsky , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Robert Beckett , , , , CC: Alex Deucher , Christian Koenig , Stewart Hildebrand , Xenia Ragiadakou , Honglei Huang , Julia Zhang , Huang Rui , Jiqian Chen Subject: [LINUX KERNEL PATCH v2 1/1] virtgpu: init vq during resume and notify qemu guest status Date: Fri, 30 Jun 2023 15:34:48 +0800 Message-ID: <20230630073448.842767-2-Jiqian.Chen@amd.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20230630073448.842767-1-Jiqian.Chen@amd.com> References: <20230630073448.842767-1-Jiqian.Chen@amd.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain X-Originating-IP: [10.180.168.240] X-ClientProxiedBy: SATLEXMB04.amd.com (10.181.40.145) To SATLEXMB04.amd.com (10.181.40.145) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO1NAM11FT046:EE_|SA1PR12MB8967:EE_ X-MS-Office365-Filtering-Correlation-Id: 68660652-9aad-43da-b5b0-08db793c96f8 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: MFp5Fx2QL6L7YKyg+/rtpRS5QezbeiWmFLQC4AMQFI3XFH6AdjiZS/7qx6XN+YUeTRt067/pUku9eEwsTL2KwvsnBiNlT8Oa9HzaMQxEriPU6TL4dv0LUc+9fhU7uH3mUgWqLaHe5YWUUXr4vVdtgulVtxvrFbNb/g4zumNZ/VOTdDMdpiUT/oLnE2tdTRtkKd/jxG7cBnrrMoBHGHuKj1h3RKvHRwRLIBV8f/lFCsYDxaKacX5mdNAf5nO47H7te7NjCDAip3aemhC6sk7dMyp9OpGMSL14gJJ74B+beGsvRlRJIJAdTcvGWVm/HJICa2BpOjRa44uBbNnr2cMZPxzJsgvCyGkI0tDXbOAQhvfTTUYX7oM19C+6iJEzUzpau5+h18AgmGgR0S4+K+qXxGplYJxGZASSmr2PBRi6ZHdaEV3cQy+lYfxyYxCI6TDulIkwmMsNBh/GRmyzgtMkW3NBf80DarDosxuDm+TzEsfDN4P9wgZfKgKnfoTrWJk8oV7faFRL7ZX3YbgvI9MUZBO7ASQgVrtAhPn3BsMkSL6u6R0CO6jVZS3oPvVPRMV2QQXxl/RKzq2BngBL8Qp4tylJpqBA8Cwvb6My/jSLJK9hCtZ4+toalTtepTFVW1QxbN5Q6mAMfhKMeiOU09WW77+DMCySRj4nTzsaqTPgiTE0o5wBgApXh4IIwzozuvJpjmGZyDGpYArwbNSN/rTKNuMyE9tEW+jphxD7z9pLnjW5EFQOfslTi7NCceyQe9da0Mro8zSuldClCPAbbdBHZcIMrXGE7z4aH/NdeDfEysA= X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(346002)(136003)(376002)(396003)(39860400002)(451199021)(40470700004)(36840700001)(46966006)(82310400005)(921005)(356005)(82740400003)(81166007)(6666004)(7696005)(426003)(336012)(83380400001)(47076005)(16526019)(2616005)(186003)(26005)(1076003)(40480700001)(36860700001)(5660300002)(86362001)(40460700003)(8676002)(36756003)(7416002)(2906002)(30864003)(70206006)(70586007)(478600001)(54906003)(110136005)(8936002)(316002)(4326008)(41300700001)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Jun 2023 07:35:33.8750 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 68660652-9aad-43da-b5b0-08db793c96f8 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com] X-MS-Exchange-CrossTenant-AuthSource: CO1NAM11FT046.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA1PR12MB8967 This patch solves two problem: First, when we suspended guest VM, it called into Qemu to call virtio_reset->__virtio_queue_reset, this cleared all virtuqueue information of virtgpu on Qemu end. As a result, after guest resumed, guest sended ctrl/cursor requests to Qemu through virtqueue, but Qemu can't get requests from the virtqueue now. In function virtio_queue_notify, vq->vring.desc is NULL. So, this patch add freeze and restore function for virtgpu driver. In freeze function, it flushes all virtqueue works and deletes virtqueues. In restore function, it initializes virtqueues. And then, Qemu and guest can communicate normally. Second, when we suspended guest VM, it called into Qemu to call virtio_reset->virtio_gpu_gl_reset, this destroyed resources and reset renderer which were used for display. As a result, after guest resumed, the display can't come back and we only saw a black screen. So, this patch add a new ctrl message VIRTIO_GPU_CMD_STATUS_FREEZING. When guest is during suspending, we set freezing status to true to notify Qemu that guest entered suspending, and then Qemu will not destroy resources. When guest is during resuming, we set freezing status to false to notify Qemu that guest exited suspending, and then Qemu will keep its origin actions. As a result, the display can come back and everything of guest can come back to the time when guest was suspended. Due to this implemention needs cooperation with host Qemu, so it added a new feature flag VIRTIO_GPU_F_FREEZING, so that guest and host can negotiate whenever freezing is supported or not. Signed-off-by: Jiqian Chen --- drivers/gpu/drm/virtio/virtgpu_debugfs.c | 1 + drivers/gpu/drm/virtio/virtgpu_drv.c | 37 ++++++++++++++++++++++++ drivers/gpu/drm/virtio/virtgpu_drv.h | 4 +++ drivers/gpu/drm/virtio/virtgpu_kms.c | 36 +++++++++++++++++------ drivers/gpu/drm/virtio/virtgpu_vq.c | 15 ++++++++++ include/uapi/linux/virtio_gpu.h | 15 ++++++++++ 6 files changed, 99 insertions(+), 9 deletions(-) diff --git a/drivers/gpu/drm/virtio/virtgpu_debugfs.c b/drivers/gpu/drm/virtio/virtgpu_debugfs.c index 853dd9aa397e..9cd000be521a 100644 --- a/drivers/gpu/drm/virtio/virtgpu_debugfs.c +++ b/drivers/gpu/drm/virtio/virtgpu_debugfs.c @@ -55,6 +55,7 @@ static int virtio_gpu_features(struct seq_file *m, void *data) virtio_gpu_add_bool(m, "blob resources", vgdev->has_resource_blob); virtio_gpu_add_bool(m, "context init", vgdev->has_context_init); + virtio_gpu_add_bool(m, "freezing", vgdev->has_freezing); virtio_gpu_add_int(m, "cap sets", vgdev->num_capsets); virtio_gpu_add_int(m, "scanouts", vgdev->num_scanouts); if (vgdev->host_visible_region.len) { diff --git a/drivers/gpu/drm/virtio/virtgpu_drv.c b/drivers/gpu/drm/virtio/virtgpu_drv.c index add075681e18..e0b0abbed606 100644 --- a/drivers/gpu/drm/virtio/virtgpu_drv.c +++ b/drivers/gpu/drm/virtio/virtgpu_drv.c @@ -130,6 +130,38 @@ static void virtio_gpu_config_changed(struct virtio_device *vdev) schedule_work(&vgdev->config_changed_work); } +#ifdef CONFIG_PM +static int virtio_gpu_freeze(struct virtio_device *dev) +{ + struct drm_device *ddev = dev->priv; + struct virtio_gpu_device *vgdev = ddev->dev_private; + int ret = 0; + + if (vgdev->has_freezing) { + ret = virtio_gpu_cmd_status_freezing(vgdev, 1); + } + if (!ret) { + flush_work(&vgdev->ctrlq.dequeue_work); + flush_work(&vgdev->cursorq.dequeue_work); + vgdev->vdev->config->del_vqs(vgdev->vdev); + } + return ret; +} + +static int virtio_gpu_restore(struct virtio_device *dev) +{ + struct drm_device *ddev = dev->priv; + struct virtio_gpu_device *vgdev = ddev->dev_private; + int ret; + + ret = virtio_gpu_init_vqs(dev); + if (!ret && vgdev->has_freezing) { + ret = virtio_gpu_cmd_status_freezing(vgdev, 0); + } + return ret; +} +#endif + static struct virtio_device_id id_table[] = { { VIRTIO_ID_GPU, VIRTIO_DEV_ANY_ID }, { 0 }, @@ -148,6 +180,7 @@ static unsigned int features[] = { VIRTIO_GPU_F_RESOURCE_UUID, VIRTIO_GPU_F_RESOURCE_BLOB, VIRTIO_GPU_F_CONTEXT_INIT, + VIRTIO_GPU_F_FREEZING, }; static struct virtio_driver virtio_gpu_driver = { .feature_table = features, @@ -156,6 +189,10 @@ static struct virtio_driver virtio_gpu_driver = { .driver.owner = THIS_MODULE, .id_table = id_table, .probe = virtio_gpu_probe, +#ifdef CONFIG_PM + .freeze = virtio_gpu_freeze, + .restore = virtio_gpu_restore, +#endif .remove = virtio_gpu_remove, .config_changed = virtio_gpu_config_changed }; diff --git a/drivers/gpu/drm/virtio/virtgpu_drv.h b/drivers/gpu/drm/virtio/virtgpu_drv.h index af6ffb696086..f8f213a12691 100644 --- a/drivers/gpu/drm/virtio/virtgpu_drv.h +++ b/drivers/gpu/drm/virtio/virtgpu_drv.h @@ -246,6 +246,7 @@ struct virtio_gpu_device { bool has_resource_blob; bool has_host_visible; bool has_context_init; + bool has_freezing; struct virtio_shm_region host_visible_region; struct drm_mm host_visible_mm; @@ -282,6 +283,7 @@ extern struct drm_ioctl_desc virtio_gpu_ioctls[DRM_VIRTIO_NUM_IOCTLS]; void virtio_gpu_create_context(struct drm_device *dev, struct drm_file *file); /* virtgpu_kms.c */ +int virtio_gpu_init_vqs(struct virtio_device *vdev); int virtio_gpu_init(struct virtio_device *vdev, struct drm_device *dev); void virtio_gpu_deinit(struct drm_device *dev); void virtio_gpu_release(struct drm_device *dev); @@ -425,6 +427,8 @@ virtio_gpu_cmd_set_scanout_blob(struct virtio_gpu_device *vgdev, uint32_t width, uint32_t height, uint32_t x, uint32_t y); +int virtio_gpu_cmd_status_freezing(struct virtio_gpu_device *vgdev, uint32_t freezing); + /* virtgpu_display.c */ int virtio_gpu_modeset_init(struct virtio_gpu_device *vgdev); void virtio_gpu_modeset_fini(struct virtio_gpu_device *vgdev); diff --git a/drivers/gpu/drm/virtio/virtgpu_kms.c b/drivers/gpu/drm/virtio/virtgpu_kms.c index 5a3b5aaed1f3..4e245b552145 100644 --- a/drivers/gpu/drm/virtio/virtgpu_kms.c +++ b/drivers/gpu/drm/virtio/virtgpu_kms.c @@ -114,16 +114,33 @@ static void virtio_gpu_get_capsets(struct virtio_gpu_device *vgdev, vgdev->num_capsets = num_capsets; } -int virtio_gpu_init(struct virtio_device *vdev, struct drm_device *dev) +int virtio_gpu_init_vqs(struct virtio_device *vdev) { static vq_callback_t *callbacks[] = { virtio_gpu_ctrl_ack, virtio_gpu_cursor_ack }; static const char * const names[] = { "control", "cursor" }; + struct drm_device *dev = vdev->priv; + struct virtio_gpu_device *vgdev = dev->dev_private; + struct virtqueue *vqs[2]; + int ret; + + virtio_gpu_init_vq(&vgdev->ctrlq, virtio_gpu_dequeue_ctrl_func); + virtio_gpu_init_vq(&vgdev->cursorq, virtio_gpu_dequeue_cursor_func); + + ret = virtio_find_vqs(vgdev->vdev, 2, vqs, callbacks, names, NULL); + if (ret) { + DRM_ERROR("failed to find virt queues\n"); + return ret; + } + vgdev->ctrlq.vq = vqs[0]; + vgdev->cursorq.vq = vqs[1]; + return 0; +} +int virtio_gpu_init(struct virtio_device *vdev, struct drm_device *dev) +{ struct virtio_gpu_device *vgdev; - /* this will expand later */ - struct virtqueue *vqs[2]; u32 num_scanouts, num_capsets; int ret = 0; @@ -144,8 +161,6 @@ int virtio_gpu_init(struct virtio_device *vdev, struct drm_device *dev) ida_init(&vgdev->ctx_id_ida); ida_init(&vgdev->resource_ida); init_waitqueue_head(&vgdev->resp_wq); - virtio_gpu_init_vq(&vgdev->ctrlq, virtio_gpu_dequeue_ctrl_func); - virtio_gpu_init_vq(&vgdev->cursorq, virtio_gpu_dequeue_cursor_func); vgdev->fence_drv.context = dma_fence_context_alloc(1); spin_lock_init(&vgdev->fence_drv.lock); @@ -197,6 +212,9 @@ int virtio_gpu_init(struct virtio_device *vdev, struct drm_device *dev) if (virtio_has_feature(vgdev->vdev, VIRTIO_GPU_F_CONTEXT_INIT)) { vgdev->has_context_init = true; } + if (virtio_has_feature(vgdev->vdev, VIRTIO_GPU_F_FREEZING)) { + vgdev->has_freezing = true; + } DRM_INFO("features: %cvirgl %cedid %cresource_blob %chost_visible", vgdev->has_virgl_3d ? '+' : '-', @@ -207,13 +225,13 @@ int virtio_gpu_init(struct virtio_device *vdev, struct drm_device *dev) DRM_INFO("features: %ccontext_init\n", vgdev->has_context_init ? '+' : '-'); - ret = virtio_find_vqs(vgdev->vdev, 2, vqs, callbacks, names, NULL); + DRM_INFO("features: %cfreezing\n", + vgdev->has_freezing ? '+' : '-'); + + ret = virtio_gpu_init_vqs(vdev); if (ret) { - DRM_ERROR("failed to find virt queues\n"); goto err_vqs; } - vgdev->ctrlq.vq = vqs[0]; - vgdev->cursorq.vq = vqs[1]; ret = virtio_gpu_alloc_vbufs(vgdev); if (ret) { DRM_ERROR("failed to alloc vbufs\n"); diff --git a/drivers/gpu/drm/virtio/virtgpu_vq.c b/drivers/gpu/drm/virtio/virtgpu_vq.c index b1a00c0c25a7..34976bccc330 100644 --- a/drivers/gpu/drm/virtio/virtgpu_vq.c +++ b/drivers/gpu/drm/virtio/virtgpu_vq.c @@ -1302,3 +1302,18 @@ void virtio_gpu_cmd_set_scanout_blob(struct virtio_gpu_device *vgdev, virtio_gpu_queue_ctrl_buffer(vgdev, vbuf); } + +int virtio_gpu_cmd_status_freezing(struct virtio_gpu_device *vgdev, uint32_t freezing) +{ + struct virtio_gpu_status_freezing *cmd_p; + struct virtio_gpu_vbuffer *vbuf; + + cmd_p = virtio_gpu_alloc_cmd(vgdev, &vbuf, sizeof(*cmd_p)); + memset(cmd_p, 0, sizeof(*cmd_p)); + + cmd_p->hdr.type = cpu_to_le32(VIRTIO_GPU_CMD_STATUS_FREEZING); + cmd_p->freezing = freezing; + virtio_gpu_queue_ctrl_buffer(vgdev, vbuf); + virtio_gpu_notify(vgdev); + return 0; +} \ No newline at end of file diff --git a/include/uapi/linux/virtio_gpu.h b/include/uapi/linux/virtio_gpu.h index f556fde07b76..ae271733daef 100644 --- a/include/uapi/linux/virtio_gpu.h +++ b/include/uapi/linux/virtio_gpu.h @@ -65,6 +65,11 @@ */ #define VIRTIO_GPU_F_CONTEXT_INIT 4 +/* + * VIRTIO_GPU_CMD_STATUS_FREEZING + */ +#define VIRTIO_GPU_F_FREEZING 5 + enum virtio_gpu_ctrl_type { VIRTIO_GPU_UNDEFINED = 0, @@ -100,6 +105,9 @@ enum virtio_gpu_ctrl_type { VIRTIO_GPU_CMD_UPDATE_CURSOR = 0x0300, VIRTIO_GPU_CMD_MOVE_CURSOR, + /* status */ + VIRTIO_GPU_CMD_STATUS_FREEZING = 0x0400, + /* success responses */ VIRTIO_GPU_RESP_OK_NODATA = 0x1100, VIRTIO_GPU_RESP_OK_DISPLAY_INFO, @@ -116,6 +124,7 @@ enum virtio_gpu_ctrl_type { VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID, VIRTIO_GPU_RESP_ERR_INVALID_CONTEXT_ID, VIRTIO_GPU_RESP_ERR_INVALID_PARAMETER, + }; enum virtio_gpu_shm_id { @@ -453,4 +462,10 @@ struct virtio_gpu_resource_unmap_blob { __le32 padding; }; +/* VIRTIO_GPU_CMD_STATUS_FREEZING */ +struct virtio_gpu_status_freezing { + struct virtio_gpu_ctrl_hdr hdr; + __u32 freezing; +}; + #endif -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Fri Jun 30 07:35:59 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 30 Jun 2023 07:35:59 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557314.870566 (Exim 4.92) (envelope-from ) id 1qF8ff-0005QG-7l; Fri, 30 Jun 2023 07:35:59 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557314.870566; Fri, 30 Jun 2023 07:35:59 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qF8ff-0005Pu-4p; Fri, 30 Jun 2023 07:35:59 +0000 Received: by outflank-mailman (input) for mailman id 557314; Fri, 30 Jun 2023 07:35:58 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qF8fe-0005ND-LJ; Fri, 30 Jun 2023 07:35:58 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qF8fe-0006RF-FH; Fri, 30 Jun 2023 07:35:58 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qF8fe-00070u-1w; Fri, 30 Jun 2023 07:35:58 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qF8fe-0004hR-1Z; Fri, 30 Jun 2023 07:35:58 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=W5STxP7W7QRMelyiMizFpGsvNgPqQ4oruW0BNopLD8s=; b=J1D782nWIORtuoYZ9GtfhNIJn3 yPaZEt5RluDb2YrkTLj0YpcywLTXCafKVjEtO3d8ekCjdQcs9Hy8y8u+ooVmfcDTuN5D2rHCiq7Qs 33abxly05ENNHPK5yg7GTw8mBdOAzdtcCI32P/5DjzlzAlSUACokyoMx+ehuAbmG4p4Y=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [ovmf test] 181652: all pass - PUSHED X-Osstest-Versions-This: ovmf=f5c987fcac567b1f84a418826f30d8ef2b46860e X-Osstest-Versions-That: ovmf=6607062e91f676db8764871e2a40ee8704e8a731 From: osstest service owner Date: Fri, 30 Jun 2023 07:35:58 +0000 flight 181652 ovmf real [real] http://logs.test-lab.xenproject.org/osstest/logs/181652/ Perfect :-) All tests in this flight passed as required version targeted for testing: ovmf f5c987fcac567b1f84a418826f30d8ef2b46860e baseline version: ovmf 6607062e91f676db8764871e2a40ee8704e8a731 Last test of basis 181630 2023-06-28 19:40:44 Z 1 days Testing same since 181652 2023-06-30 05:42:20 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Dun Tan jobs: build-amd64-xsm pass build-i386-xsm pass build-amd64 pass build-i386 pass build-amd64-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-i386-pvops pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Pushing revision : To xenbits.xen.org:/home/xen/git/osstest/ovmf.git 6607062e91..f5c987fcac f5c987fcac567b1f84a418826f30d8ef2b46860e -> xen-tested-master From xen-devel-bounces@lists.xenproject.org Fri Jun 30 07:36:11 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 30 Jun 2023 07:36:11 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557322.870576 (Exim 4.92) (envelope-from ) id 1qF8fr-0005wj-J4; Fri, 30 Jun 2023 07:36:11 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557322.870576; Fri, 30 Jun 2023 07:36:11 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qF8fr-0005wb-Ex; Fri, 30 Jun 2023 07:36:11 +0000 Received: by outflank-mailman (input) for mailman id 557322; Fri, 30 Jun 2023 07:36:10 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qF8fq-0004bB-9r for xen-devel@lists.xenproject.org; Fri, 30 Jun 2023 07:36:10 +0000 Received: from smtp-out2.suse.de (smtp-out2.suse.de [195.135.220.29]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id c787e859-1718-11ee-b237-6b7b168915f2; Fri, 30 Jun 2023 09:36:09 +0200 (CEST) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by smtp-out2.suse.de (Postfix) with ESMTPS id 9F7591F8C8; Fri, 30 Jun 2023 07:36:08 +0000 (UTC) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id 78AC013915; Fri, 30 Jun 2023 07:36:08 +0000 (UTC) Received: from dovecot-director2.suse.de ([192.168.254.65]) by imap2.suse-dmz.suse.de with ESMTPSA id I9HxG+iFnmQUNQAAMHmgww (envelope-from ); Fri, 30 Jun 2023 07:36:08 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: c787e859-1718-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1; t=1688110568; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=Z97oIavw+21YvOCGRqlSwDtMZrI1sWPlTQeKoest9uI=; b=RHtomJEO/0U1gBet4Fjv1BsJvCiKdO6e9LjfLD2FZnCAA3On9FS3w+odf0ysgkJ6J39AgM w/XgRVClA4X+199PA+/H+AMCeIs9rO95ptT2CZxzqkPn4fmBW1WALSX0eqrzu5gAVCwrwv LHFiwkzFmtEuqa8JV2v5dRnQNpj2l7E= Message-ID: <9903797f-0d6c-3729-332d-540dae288fff@suse.com> Date: Fri, 30 Jun 2023 09:36:07 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH 10/11] tools/xenstore: drop use of tdb Content-Language: en-US From: Juergen Gross To: Julien Grall , xen-devel@lists.xenproject.org Cc: Wei Liu , Anthony PERARD References: <20230530091333.7678-1-jgross@suse.com> <20230530091333.7678-11-jgross@suse.com> <5ad21b11-2ed3-8c6f-f206-90bbda5ca9fb@suse.com> In-Reply-To: <5ad21b11-2ed3-8c6f-f206-90bbda5ca9fb@suse.com> Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="------------Vb0UvnpKvpceY6bdHUal2rdK" This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --------------Vb0UvnpKvpceY6bdHUal2rdK Content-Type: multipart/mixed; boundary="------------irMhnR08i1ogy1PA6og65Wry"; protected-headers="v1" From: Juergen Gross To: Julien Grall , xen-devel@lists.xenproject.org Cc: Wei Liu , Anthony PERARD Message-ID: <9903797f-0d6c-3729-332d-540dae288fff@suse.com> Subject: Re: [PATCH 10/11] tools/xenstore: drop use of tdb References: <20230530091333.7678-1-jgross@suse.com> <20230530091333.7678-11-jgross@suse.com> <5ad21b11-2ed3-8c6f-f206-90bbda5ca9fb@suse.com> In-Reply-To: <5ad21b11-2ed3-8c6f-f206-90bbda5ca9fb@suse.com> --------------irMhnR08i1ogy1PA6og65Wry Content-Type: multipart/mixed; boundary="------------0t1FeJGcHXwq0cuokhvpg7yC" --------------0t1FeJGcHXwq0cuokhvpg7yC Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: base64 T24gMjkuMDYuMjMgMTM6MzAsIEp1ZXJnZW4gR3Jvc3Mgd3JvdGU6DQo+IE9uIDIwLjA2LjIz IDE1OjA5LCBKdWxpZW4gR3JhbGwgd3JvdGU6DQo+PiBIaSBKdWVyZ2VuLA0KPj4NCj4+IE9u IDMwLzA1LzIwMjMgMTA6MTMsIEp1ZXJnZW4gR3Jvc3Mgd3JvdGU6DQo+Pj4gVG9kYXkgYWxs IFhlbnN0b3JlIG5vZGVzIGFyZSBzdG9yZWQgaW4gYSBUREIgZGF0YSBiYXNlLiBUaGlzIGRh dGEgYmFzZQ0KPj4+IGhhcyBzZXZlcmFsIGRpc2FkdmFudGFnZXM6DQo+Pj4NCj4+PiAtIGl0 IGlzIHVzaW5nIGEgZml4ZWQgc2l6ZWQgaGFzaCB0YWJsZSwgcmVzdWx0aW5nIGluIGhpZ2gg bWVtb3J5DQo+Pj4gwqDCoCBvdmVyaGVhZCBmb3Igc21hbGwgaW5zdGFsbGF0aW9ucyB3aXRo IG9ubHkgdmVyeSBmZXcgVk1zLCBhbmQgYSByYXRoZXINCj4+PiDCoMKgIGxhcmdlIHBlcmZv cm1hbmNlIGhpdCBmb3Igc3lzdGVtcyB3aXRoIGxvdHMgb2YgVk1zIGR1ZSB0byBtYW55DQo+ Pj4gwqDCoCBjb2xsaXNpb25zDQo+Pj4NCj4+PiAtIFhlbnN0b3JlIGlzIG9ubHkgc2luZ2xl LXRocmVhZGVkLCB3aGlsZSBUREIgaXMgZGVzaWduZWQgdG8gYmUgZml0DQo+Pj4gwqDCoCBm b3IgbXVsdGktdGhyZWFkZWQgdXNlIGNhc2VzLCByZXN1bHRpbmcgaW4gbXVjaCBoaWdoZXIg Y29kZQ0KPj4+IMKgwqAgY29tcGxleGl0eSB0aGFuIG5lZWRlZA0KPj4+DQo+Pj4gLSBzcGVj aWFsIHVzZSBjYXNlcyBvZiBYZW5zdG9yZSBhcmUgbm90IHBvc3NpYmxlIHRvIGltcGxlbWVu dCB3aXRoIFREQg0KPj4+IMKgwqAgaW4gYW4gZWZmZWN0aXZlIHdheSwgd2hpbGUgYW4gaW1w bGVtZW50YXRpb24gb2YgYSBkYXRhIGJhc2UgdGFpbG9yZWQNCj4+PiDCoMKgIGZvciBYZW5z dG9yZSBjb3VsZCBzaW1wbGlmeSBzb21lIGhhbmRsaW5nIChlLmcuIHRyYW5zYWN0aW9ucykg YSBsb3QNCj4+Pg0KPj4+IFNvIGRyb3AgdXNpbmcgVERCIGFuZCBzdG9yZSB0aGUgbm9kZXMg ZGlyZWN0bHkgaW4gbWVtb3J5IG1ha2luZyB0aGVtDQo+Pj4gZWFzaWx5IGFjY2Vzc2libGUu IFVzZSBhIGhhc2gtYmFzZWQgbG9va3VwIG1lY2hhbmlzbSBmb3IgZmFzdCBsb29rdXANCj4+ PiBvZiBub2RlcyBieSB0aGVpciBmdWxsIHBhdGguDQo+Pj4NCj4+PiBGb3Igbm93IG9ubHkg cmVwbGFjZSBUREIga2VlcGluZyB0aGUgY3VycmVudCBhY2Nlc3MgZnVuY3Rpb25zLg0KPj4+ DQo+Pj4gU2lnbmVkLW9mZi1ieTogSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1c2UuY29tPg0K DQouLi4NCg0KPj4+IC3CoMKgwqAgc2V0X3RkYl9rZXkoZGJfbmFtZSwgJmtleSk7DQo+Pj4g LcKgwqDCoCBkYXRhID0gdGRiX2ZldGNoKHRkYl9jdHgsIGtleSk7DQo+Pj4gLcKgwqDCoCBp ZiAoIWRhdGEuZHB0cikNCj4+PiAtwqDCoMKgwqDCoMKgwqAgZXJybm8gPSAodGRiX2Vycm9y KHRkYl9jdHgpID09IFREQl9FUlJfTk9FWElTVCkgPyBFTk9FTlQgOiBFSU87DQo+Pj4gLcKg wqDCoCBlbHNlDQo+Pj4gLcKgwqDCoMKgwqDCoMKgICpzaXplID0gZGF0YS5kc2l6ZTsNCj4+ PiArwqDCoMKgIGhkciA9IGhhc2h0YWJsZV9zZWFyY2gobm9kZXMsIGRiX25hbWUpOw0KPj4+ ICvCoMKgwqAgaWYgKCFoZHIpIHsNCj4+PiArwqDCoMKgwqDCoMKgwqAgZXJybm8gPSBFTk9F TlQ7DQo+Pj4gK8KgwqDCoMKgwqDCoMKgIHJldHVybiBOVUxMOw0KPj4+ICvCoMKgwqAgfQ0K Pj4+ICsNCj4+PiArwqDCoMKgICpzaXplID0gc2l6ZW9mKCpoZHIpICsgaGRyLT5udW1fcGVy bXMgKiBzaXplb2YoaGRyLT5wZXJtc1swXSkgKw0KPj4+ICvCoMKgwqDCoMKgwqDCoCBoZHIt PmRhdGFsZW4gKyBoZHItPmNoaWxkbGVuOw0KPj4NCj4+IEFGQUlDVCwgdGhpcyBpcyB0aGUg c2FtZSBjb21wdXRhdGlvbiBhcyBpbiB3cml0ZV9ub2RlX3Jhdy4gQ2FuIHdlIGludHJvZHVj ZSBhIA0KPj4gd3JhcHBlciBmb3IgaXQ/DQo+IA0KPiBPa2F5Lg0KDQpUaGVyZSBpcyBhIGRp ZmZlcmVuY2U6IGhlcmUgd2UgYXJlIHVzaW5nIHRoZSB2YWx1ZXMgZnJvbSB4c190ZGJfcmVj b3JkX2hkciwNCndoaWxlIGluIHdyaXRlX25vZGVfcmF3KCkgdGhlIHZhbHVlcyBhcmUgdGFr ZW4gZnJvbSBzdHJ1Y3Qgbm9kZS4NCg0KSSdsbCBjaGFuZ2UgdGhhdCBpbiBhIGZvbGxvd3Vw IHBhdGNoLg0KDQoNCkp1ZXJnZW4NCg== --------------0t1FeJGcHXwq0cuokhvpg7yC Content-Type: application/pgp-keys; name="OpenPGP_0xB0DE9DD628BF132F.asc" Content-Disposition: attachment; filename="OpenPGP_0xB0DE9DD628BF132F.asc" Content-Description: OpenPGP public key Content-Transfer-Encoding: quoted-printable -----BEGIN PGP PUBLIC KEY BLOCK----- xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjri oyspZKOBycWxw3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2 kaV2KL9650I1SJvedYm8Of8Zd621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i 1TXkH09XSSI8mEQ/ouNcMvIJNwQpd369y9bfIhWUiVXEK7MlRgUG6MvIj6Y3Am/B BLUVbDa4+gmzDC9ezlZkTZG2t14zWPvxXP3FAp2pkW0xqG7/377qptDmrk42GlSK N4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEBAAHNHEp1ZXJnZW4gR3Jvc3Mg PGpnQHBmdXBmLm5ldD7CwHkEEwECACMFAlOMcBYCGwMHCwkIBwMCAQYVCAIJCgsE FgIDAQIeAQIXgAAKCRCw3p3WKL8TL0KdB/93FcIZ3GCNwFU0u3EjNbNjmXBKDY4F UGNQH2lvWAUy+dnyThpwdtF/jQ6j9RwE8VP0+NXcYpGJDWlNb9/JmYqLiX2Q3Tye vpB0CA3dbBQp0OW0fgCetToGIQrg0MbD1C/sEOv8Mr4NAfbauXjZlvTj30H2jO0u +6WGM6nHwbh2l5O8ZiHkH32iaSTfN7Eu5RnNVUJbvoPHZ8SlM4KWm8rG+lIkGurq qu5gu8q8ZMKdsdGC4bBxdQKDKHEFExLJK/nRPFmAuGlId1E3fe10v5QL+qHI3EIP tyfE7i9Hz6rVwi7lWKgh7pe0ZvatAudZ+JNIlBKptb64FaiIOAWDCx1SzR9KdWVy Z2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+wsB5BBMBAgAjBQJTjHCvAhsDBwsJ CAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey/HmQf/RtI7kv5A2PS4 RF7HoZhPVPogNVbC4YA6lW7DrWf0teC0RR3MzXfy6pJ+7KLgkqMlrAbN/8Dvjoz7 8X+5vhH/rDLa9BuZQlhFmvcGtCF8eR0T1v0nC/nuAFVGy+67q2DH8As3KPu0344T BDpAvr2uYM4tSqxK4DURx5INz4ZZ0WNFHcqsfvlGJALDeE0LhITTd9jLzdDad1pQ SToCnLl6SBJZjDOX9QQcyUigZFtCXFst4dlsvddrxyqT1f17+2cFSdu7+ynLmXBK 7abQ3rwJY8SbRO2iRulogc5vr/RLMMlscDAiDkaFQWLoqHHOdfO9rURssHNN8WkM nQfvUewRz80hSnVlcmdlbiBHcm9zcyA8amdyb3NzQG5vdmVsbC5jb20+wsB5BBMB AgAjBQJTjHDXAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/ Ey8PUQf/ehmgCI9jB9hlgexLvgOtf7PJnFOXgMLdBQgBlVPO3/D9R8LtF9DBAFPN hlrsfIG/SqICoRCqUcJ96Pn3P7UUinFG/I0ECGF4EvTE1jnDkfJZr6jrbjgyoZHi w/4BNwSTL9rWASyLgqlA8u1mf+c2yUwcGhgkRAd1gOwungxcwzwqgljf0N51N5Jf VRHRtyfwq/ge+YEkDGcTU6Y0sPOuj4Dyfm8fJzdfHNQsWq3PnczLVELStJNdapwP OoE+lotufe3AM2vAEYJ9rTz3Cki4JFUsgLkHFqGZarrPGi1eyQcXeluldO3m91NK /1xMI3/+8jbO0tsn1tqSEUGIJi7ox80eSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1 c2UuZGU+wsB5BBMBAgAjBQJTjHDrAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgEC F4AACgkQsN6d1ii/Ey+LhQf9GL45eU5vOowA2u5N3g3OZUEBmDHVVbqMtzwlmNC4 k9Kx39r5s2vcFl4tXqW7g9/ViXYuiDXb0RfUpZiIUW89siKrkzmQ5dM7wRqzgJpJ wK8Bn2MIxAKArekWpiCKvBOB/Cc+3EXE78XdlxLyOi/NrmSGRIov0karw2RzMNOu 5D+jLRZQd1Sv27AR+IP3I8U4aqnhLpwhK7MEy9oCILlgZ1QZe49kpcumcZKORmzB TNh30FVKK1EvmV2xAKDoaEOgQB4iFQLhJCdP1I5aSgM5IVFdn7v5YgEYuJYx37Io N1EblHI//x/e2AaIHpzK5h88NEawQsaNRpNSrcfbFmAg987ATQRTjHAWAQgAyzH6 AOODMBjgfWE9VeCgsrwH3exNAU32gLq2xvjpWnHIs98ndPUDpnoxWQugJ6MpMncr 0xSwFmHEgnSEjK/PAjppgmyc57BwKII3sV4on+gDVFJR6Y8ZRwgnBC5mVM6JjQ5x Dk8WRXljExRfUX9pNhdE5eBOZJrDRoLUmmjDtKzWaDhIg/+1Hzz93X4fCQkNVbVF LELU9bMaLPBG/x5q4iYZ2k2ex6d47YE1ZFdMm6YBYMOljGkZKwYde5ldM9mo45mm we0icXKLkpEdIXKTZeKDO+Hdv1aqFuAcccTg9RXDQjmwhC3yEmrmcfl0+rPghO0I v3OOImwTEe4co3c1mwARAQABwsBfBBgBAgAJBQJTjHAWAhsMAAoJELDendYovxMv Q/gH/1ha96vm4P/L+bQpJwrZ/dneZcmEwTbe8YFsw2V/Buv6Z4Mysln3nQK5ZadD 534CF7TDVft7fC4tU4PONxF5D+/tvgkPfDAfF77zy2AH1vJzQ1fOU8lYFpZXTXIH b+559UqvIB8AdgR3SAJGHHt4RKA0F7f5ipYBBrC6cyXJyyoprT10EMvU8VGiwXvT yJz3fjoYsdFzpWPlJEBRMedCot60g5dmbdrZ5DWClAr0yau47zpWj3enf1tLWaqc suylWsviuGjKGw7KHQd3bxALOknAp4dN3QwBYCKuZ7AddY9yjynVaD5X7nF9nO5B jR/i1DG86lem3iBDXzXsZDn8R38=3D =3D2wuH -----END PGP PUBLIC KEY BLOCK----- --------------0t1FeJGcHXwq0cuokhvpg7yC-- --------------irMhnR08i1ogy1PA6og65Wry-- --------------Vb0UvnpKvpceY6bdHUal2rdK Content-Type: application/pgp-signature; name="OpenPGP_signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="OpenPGP_signature" -----BEGIN PGP SIGNATURE----- wsB5BAABCAAjFiEEhRJncuj2BJSl0Jf3sN6d1ii/Ey8FAmSehecFAwAAAAAACgkQsN6d1ii/Ey/Y QggAhK2R4X2HYWjTXZZWUoX4WNOpiNEtd843ZlxAkPlAGbraJrn+jZjZGSEh3bSZhiXxBAomxL20 IzqG8axIOtBT3KPjLMf6gZlyZVWu4MWKMnJS5GoVFZTI2wFAP9ow3Dzz+UQdHDj1Z9DCeZZsEJtQ e4nJUThS6tnXIFrhzHKnWC8Ioju22EyY3TEDBbXPzNL1VvskSnX6fAPgJ4b9r1uCs/Y9K9dIN0ip kINqmHAdLhqQ7AL0JvWTYUZumQwY3y2+NFj8o4JYTPaDxto5ui010iRMA0seCGWTbpoQ1TziMOEd fFSghrN03fdCGYd/+zmVnKBZeLO1RIm9/PM5IyCT/g== =a/WL -----END PGP SIGNATURE----- --------------Vb0UvnpKvpceY6bdHUal2rdK-- From xen-devel-bounces@lists.xenproject.org Fri Jun 30 07:36:58 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 30 Jun 2023 07:36:58 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557329.870586 (Exim 4.92) (envelope-from ) id 1qF8gV-0006ko-R3; Fri, 30 Jun 2023 07:36:51 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557329.870586; Fri, 30 Jun 2023 07:36:51 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qF8gV-0006kh-Nz; Fri, 30 Jun 2023 07:36:51 +0000 Received: by outflank-mailman (input) for mailman id 557329; Fri, 30 Jun 2023 07:36:51 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qF8gV-0006MG-1A for xen-devel@lists.xenproject.org; Fri, 30 Jun 2023 07:36:51 +0000 Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id df2489ca-1718-11ee-8611-37d641c3527e; Fri, 30 Jun 2023 09:36:48 +0200 (CEST) Received: from [172.20.10.2] (unknown [37.163.156.142]) by support.bugseng.com (Postfix) with ESMTPSA id CFA1A4EE0737; Fri, 30 Jun 2023 09:36:44 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: df2489ca-1718-11ee-8611-37d641c3527e Message-ID: <5ded390f-137a-0604-c78b-4521e1daccc6@bugseng.com> Date: Fri, 30 Jun 2023 09:36:42 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [XEN PATCH 5/5] x86: make parameter names of function declarations consistent Content-Language: en-US To: Stefano Stabellini Cc: xen-devel@lists.xenproject.org, consulting@bugseng.com, Jan Beulich , Andrew Cooper , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , Paul Durrant , Tamas K Lengyel , Alexandru Isaila , Petre Pircalabu , Jun Nakajima , Kevin Tian , Michal Orzel , Xenia Ragiadakou , Ayan Kumar Halder References: <5ee57d7bcd79daa0314f182ecb73e1eb6d8ecc03.1688049495.git.federico.serafini@bugseng.com> From: Federico Serafini Organization: BUGSENG srl In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hello Stefano, On 29/06/23 21:47, Stefano Stabellini wrote: > On Thu, 29 Jun 2023, Federico Serafini wrote: >> Change the parameter names of function declarations to be consistent >> with the names used in the corresponding function definitions >> so as to fix violations of MISRA C:2012 Rule 8.3. >> >> Signed-off-by: Federico Serafini >> --- >> >> diff --git a/xen/arch/x86/include/asm/hvm/vmx/vmcs.h b/xen/arch/x86/include/asm/hvm/vmx/vmcs.h >> index d07fcb2bc9..24bf409d8f 100644 >> --- a/xen/arch/x86/include/asm/hvm/vmx/vmcs.h >> +++ b/xen/arch/x86/include/asm/hvm/vmx/vmcs.h >> @@ -656,10 +656,10 @@ bool vmx_msr_is_intercepted(struct vmx_msr_bitmap *msr_bitmap, >> unsigned int msr, bool is_write) __nonnull(1); >> void virtual_vmcs_enter(const struct vcpu *); >> void virtual_vmcs_exit(const struct vcpu *); >> -u64 virtual_vmcs_vmread(const struct vcpu *, u32 encoding); >> +u64 virtual_vmcs_vmread(const struct vcpu *, u32 vmcs_encoding); > > Shouldn't the first parameter be "v" to match the definition? > > Or is that a different MISRA C rule? This is a violation of MISRA C:2012 Rule 8.2: "function types shall be in prototype form with named parameters". However, I can propose a new patch version to fix it as well. >> enum vmx_insn_errno virtual_vmcs_vmread_safe(const struct vcpu *v, >> u32 vmcs_encoding, u64 *val); >> -void virtual_vmcs_vmwrite(const struct vcpu *, u32 encoding, u64 val); >> +void virtual_vmcs_vmwrite(const struct vcpu *, u32 vmcs_encoding, u64 val); > > same here > > >> enum vmx_insn_errno virtual_vmcs_vmwrite_safe(const struct vcpu *v, >> u32 vmcs_encoding, u64 val); >> >> diff --git a/xen/arch/x86/include/asm/hvm/vmx/vvmx.h b/xen/arch/x86/include/asm/hvm/vmx/vvmx.h >> index dc9db69258..1e4bbc0d78 100644 >> --- a/xen/arch/x86/include/asm/hvm/vmx/vvmx.h >> +++ b/xen/arch/x86/include/asm/hvm/vmx/vvmx.h >> @@ -144,9 +144,9 @@ enum vvmcs_encoding_type { >> VVMCS_TYPE_HSTATE, >> }; >> >> -u64 get_vvmcs_virtual(void *vvmcs, u32 encoding); >> +u64 get_vvmcs_virtual(void *vvmcs, u32 vmcs_encoding); > > This one should return uint64_t to match the definition. Or is that a > different MISRA C rule? This is a violation of the same rule (8.3) but the focus of this patch series was intended to be on be only on parameter names. I can propose a new version of the patch to also address the additional violations discussed. >> u64 get_vvmcs_real(const struct vcpu *, u32 encoding); >> -void set_vvmcs_virtual(void *vvmcs, u32 encoding, u64 val); >> +void set_vvmcs_virtual(void *vvmcs, u32 vmcs_encoding, u64 val); > > This one should be: > void set_vvmcs_virtual(void *vvmcs, uint32_t vmcs_encoding, uint64_t val) > > Other than these, everything else checks out Regards -- Federico Serafini, M.Sc. Software Engineer, BUGSENG (http://bugseng.com) From xen-devel-bounces@lists.xenproject.org Fri Jun 30 07:43:54 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 30 Jun 2023 07:43:54 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557336.870596 (Exim 4.92) (envelope-from ) id 1qF8nA-0008KX-GT; Fri, 30 Jun 2023 07:43:44 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557336.870596; Fri, 30 Jun 2023 07:43:44 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qF8nA-0008KQ-DB; Fri, 30 Jun 2023 07:43:44 +0000 Received: by outflank-mailman (input) for mailman id 557336; Fri, 30 Jun 2023 07:43:43 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qF8n9-0008KK-In for xen-devel@lists.xenproject.org; Fri, 30 Jun 2023 07:43:43 +0000 Received: from NAM10-BN7-obe.outbound.protection.outlook.com (mail-bn7nam10on20617.outbound.protection.outlook.com [2a01:111:f400:7e8a::617]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id d53305ff-1719-11ee-b237-6b7b168915f2; Fri, 30 Jun 2023 09:43:42 +0200 (CEST) Received: from BL1PR12MB5849.namprd12.prod.outlook.com (2603:10b6:208:384::18) by IA1PR12MB6233.namprd12.prod.outlook.com (2603:10b6:208:3e7::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.26; Fri, 30 Jun 2023 07:43:38 +0000 Received: from BL1PR12MB5849.namprd12.prod.outlook.com ([fe80::4ef5:2244:743b:9989]) by BL1PR12MB5849.namprd12.prod.outlook.com ([fe80::4ef5:2244:743b:9989%4]) with mapi id 15.20.6521.023; Fri, 30 Jun 2023 07:43:38 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: d53305ff-1719-11ee-b237-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=FLsl1gBfRsD/5YtfE4EmlKB7GzsjTooqE7TqVD7kSDwaVJA3B16WJZsj5FkBjvHBnWDERfbpNyvjjJwjrXF5uUcUj7TeGGl7Wipt476UGGJvbQJrpHCghmw/na+4UllbdcjV6H3X/xuqeqOI2Iwrb2reAObvYlVQZ/T3+D6Nh+rI6uyOmOafrfNEA+rJfxI2taCjkdLIV7LBLSB7WexZkkGjZyHggA2bF9jGloLiIrPNoffifuHiBIHiBIyilYKfVq98wgd2tXuUsRyir0gGVOdJWZiSXXZpn9ZcJ8bbKP+/ncx5SUgcZcMLaEjNn8PjWGE3/q3eqLFNxDrVZ/1CxA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=cwekAohhQ/d149vmOGBSxkHtg/kQ2EDgO2zuwStEuQ0=; b=GzGPcuWFK83eI+jo8F+m4XldsX14tW+97C4qIXRKKRkH3p28CJM7fIu3zIeY+nSRCBWDQMLQJRfGhd/3C/f9MzZRkH3+gDlZIR/tKpyzYe6BylqjEvN0Aw3NJHL0Qzb+Fz21zQiCHRjfC9W/anmxfHjta8alSgANeiyitGrEjIW3PWQ2MrHktMApEkGlPuAwxOp1kGVf4CcPP/syOdkvfOz7/zjomWqajNYFtmjrfFQByH7gMjES4kn3BaIFZiTn9tuaCzSssylxYXkJ/3UYjcbT5cZDRp75nUW7ozy1cXMg3ERiqxE/KOX9TcjCL+DtEqzkIrPXdJt1ZWaYdtM08Q== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass header.d=amd.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=cwekAohhQ/d149vmOGBSxkHtg/kQ2EDgO2zuwStEuQ0=; b=q7aVGLF6AFxulJ2Hiij7N0OcPC0edIIskGFr4BYfQELASK0D7vV36ihnStNYDSM/C9wJGW91nmdl9UQu5JV7GXC4RjHlqFYPHWBkSwRLz9dgL/SmaFt1Y3q8D/0gWFhXwYbCxLiaV+ITNQVzOvzHvz+nzcqKMlimqyp/3cOgZq0= From: "Chen, Jiqian" To: David Airlie , Gerd Hoffmann , =?utf-8?B?TWFyYy1BbmRyw6kgTHVyZWF1?= , Gurchetan Singh , Chia-I Wu , Juergen Gross , Stefano Stabellini , Oleksandr Tyshchenko , Boris Ostrovsky , =?utf-8?B?Um9nZXIgUGF1IE1vbm7DqQ==?= , Robert Beckett , "virtualization@lists.linux-foundation.org" , "linux-kernel@vger.kernel.org" , "dri-devel@lists.freedesktop.org" , "xen-devel@lists.xenproject.org" CC: "Deucher, Alexander" , "Koenig, Christian" , "Hildebrand, Stewart" , Xenia Ragiadakou , "Huang, Honglei1" , "Zhang, Julia" , "Huang, Ray" , "Chen, Jiqian" Subject: Re: [LINUX KERNEL PATCH v2 0/1] add S3 support for virtgpu Thread-Topic: [LINUX KERNEL PATCH v2 0/1] add S3 support for virtgpu Thread-Index: AQHZqyVzGB+OORTmhkSScAPReBq7D6+jfGOA Date: Fri, 30 Jun 2023 07:43:38 +0000 Message-ID: References: <20230630073448.842767-1-Jiqian.Chen@amd.com> In-Reply-To: <20230630073448.842767-1-Jiqian.Chen@amd.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ms-exchange-imapappendstamp: MN2PR12MB3037.namprd12.prod.outlook.com (15.20.6544.003) authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=amd.com; x-ms-exchange-messagesentrepresentingtype: 1 x-ms-publictraffictype: Email x-ms-traffictypediagnostic: BL1PR12MB5849:EE_|IA1PR12MB6233:EE_ x-ms-office365-filtering-correlation-id: bf35a828-f881-4940-9b0f-08db793db777 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: FhCxXjPrny9CziiQ8wS9xscuZrD/n8HsH5ICIYdK+hrrDYay2vC1bbciSqr9b8ZhwTH7x/Mf3wtiVEJxm7XRViEvhFgRK7qs8TeSUX+ZE9AcLVdhPyBoILZFbYBDqmU5rGuhi2YYwzObtANE8eGjQfwArJJJEl3iOYsDK9/xUNcbIgB3OXHYj808ebtvgOoH7FYByYyo8W7F8hI2RDMZcQQyJtmUzok8vpDIZRcvarDLi6zyKL8eIzolUGKvbp1ZWWGrVmOtpW1zzKflpqyrNBgIID2FXrvhfBTSvQrzInhNdC4oB8yPmDnqXQykTAwdqhRZa9AsLR2T0f8mm7Wrn3MF5UujUOy3ENJWf2Rs2EBg9izzIitQzwSHSd6NTOW2vxIOzOv+B7oVIhd3n/LFEQtcg6LY8KYN2n9vf6f7R7LPAoRv77zZfD8IxTxhnQNmCk0XFSKVEN2LSEqWTOkKS3ZMIoly/5uXeN0kjKgHrNvUvDGB3srnyebqFm+VDUILx0iAwXMcybu1QETWXO0UioF7wbCz4EQ1mQ0TgpOoDv6XkwXOXebWtwipPKirX3hIbwHI/0DSdE/GbA//EedYagIXObD02TqLKKT4gmzE9rdgoasXq6duny/y1x8QpCjS8v7Q9VCnIwFM3T989t8wVrqo3H/8N0ZUALKEOkwnHaY= x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BL1PR12MB5849.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(136003)(346002)(366004)(376002)(39860400002)(396003)(451199021)(2906002)(186003)(54906003)(55016003)(38070700005)(966005)(4326008)(316002)(8676002)(33656002)(478600001)(110136005)(7416002)(7696005)(921005)(122000001)(38100700002)(71200400001)(8936002)(66476007)(9686003)(5660300002)(41300700001)(66946007)(66556008)(66446008)(83380400001)(76116006)(64756008)(52536014)(53546011)(6506007);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?TmEwaEllME95bml0T0JXVzZLeFM2UW1IRnBwSEVtUE1GTEl0VDNoUlpoL0Mz?= =?utf-8?B?aFFLME5DMEFYNDFqZ1pyd3pseUI5RGRhc3J4MUNMR0x5anNaOGZrK2NXRnFv?= =?utf-8?B?VHZaaGxRaHpDeW1NWUIzWEFSZjFHUDF5Y1VrVGFIV0MrZTFlcHV5djJ1MEVZ?= =?utf-8?B?V3hqTkxhYXcvYWk0Wk43bG05ajRnNzhSRGlmd3FVUXF0dWw4N2ZXRS94L3Jx?= =?utf-8?B?QXdQdjZRdkhyODN6S0ErQjlob1dnTmVVNVVNdlRqSXNScldnRFdUdHpFYW5q?= =?utf-8?B?Sk1iZUJYQTVmU0NYZUNIeURsdFNUOE1GbmRQUVo5c1N1K2czZzB3QlJmS3Y5?= =?utf-8?B?aEJWdUV1SzJ4cE0rMUkreVBBMlc2Q3NKRmZmdG1UZ2E1Y2NOZXM0L0hvc0Uz?= =?utf-8?B?ZENZbjNPQk1NQlRCeUR0UytLRjJjUS9yN1lFZWptQ0FCdEkyRHQ1elRxYldM?= =?utf-8?B?Qk5oTWtlQ3A0b3MwZWtDeWU4VnVZa1E1ek5teTZ5ckI1Z3NlS0U3alkxL2Nr?= =?utf-8?B?REdVV3V3aWduUzBGa3NZN3lEYTcrSC90WWpVRjlTbXZqZkVCWkRvMEhCVjdm?= =?utf-8?B?SmVJS2lHZUNxK1NISko1RE1Oekg1NFpkYzc3S01lQUdFdldnWTkydkVQQnF4?= =?utf-8?B?RVd3MXhCaTQ2ZHFnTmU0OVJoTjBvRTIyblUrMjZKMWxRNytMQ045Y1NvSkl3?= =?utf-8?B?aytrZGJJc2NBRUFiNnpnQWsvOW5BOTYrR3d6bHhrRTYvN2srVExsWFNPVG1G?= =?utf-8?B?SEw5T3REWGEybTZwa0pRMUJaSnp0YjlkM25CYWhHUTN0Sm9NZ0EvWk5oZmdu?= =?utf-8?B?WnVRUGZFQW5qenFnSC9ZU1VoZFJ2Z04xcGx1bFBrUmVHVXBtVE5JQzFVSlla?= =?utf-8?B?Y2hkVlVmYWtzU2JTM2pvMGMzZFdLQkg3akZYQkFZRVMyNTlXRmtJamdnd1Ry?= =?utf-8?B?OHlOUDFsQWdLa0xaeXdqVzI4WlM5Z1V0RmlIanUwT0xlY1NiQityM2tWS3pV?= =?utf-8?B?RVExcDMyNzQ1dHlUSGQ4clRVZFI0cFdBbTBvNW9IQUxYNThFeW45dG9pMitE?= =?utf-8?B?VFBmdEFjbWRIVDh1c3U3Tlc0UHh5YUlkTmhuWUxCdk1MYjQ0N1VtOGpVYTZr?= =?utf-8?B?U2x5VFJ3eFJBaVMyNUNWV0lpbkFKYUNOMFhkbzNybVA2dHcwZ0MwSXlOS1lh?= =?utf-8?B?YzZkS294U041cE53TklMS05KUjFkbVJBcGFQRnNBMjhXUlkxYTVlQnhubXRG?= =?utf-8?B?QVhWRjJIZTZVQnpRVHZMODNDQmo4NW53Rzk4ejJ0UGIwd2lYak1sbFM2d0dx?= =?utf-8?B?dTNSK29CUGJPL2NiMHhadUo1eXJycGpxeHoydXlFcnRXNVJhMzJNazQ1SnNx?= =?utf-8?B?WjRPbVBpT3VTNEVxeG1pQlNNa2NQUTIvTFZQMnh5Y3JkZWIxQWFKQmp2YjFy?= =?utf-8?B?azNWdUlQczZ4NG9mUk9sQ0JDNWRTajNYY3M5S01rTXVkV2x5dEQ3U1NML25h?= =?utf-8?B?dWdicXhKYzJxdWhUK2FjRlBNRnROQ1c0aTJ2QkcrL3FrSUIxVzAxaW9UOVlI?= =?utf-8?B?VHJYQThFQXNicFFqRDdIa1podVgyV1UyMFp0N1ZRRTlrTEh6VUNXTlh2VURj?= =?utf-8?B?SUI0d2RSZ2hnenBUSks3Nk45MEZkOGlpaUYycllLNU1BV044d0ZpenZRTHpZ?= =?utf-8?B?T0J5alRwQmU0ektEMjhrbGFLaW5BYjlydzdudnlGcGVRbDdLUWdodStFMUJU?= =?utf-8?B?YVEvcmxrSG1BT2g0amxRSjBlaHZXK2x4UzZ6bkJGVnpiOWxib01ta0RLdzc2?= =?utf-8?B?NFBKU2xnTGpONWtza3BNY1I1cjF0c2xRVEl2WTBWZzNZNDh3MnNRY2puS01W?= =?utf-8?B?WTR3aHY2Z0RMTWtBQWplKzBmNmpSc2FibC95OEh4SCsybGtNakx3RVoybFpY?= =?utf-8?B?UE4vRGU2Q1JRUjJSRjNVWkNVUk5jZjZiQ2t0VVJYU2JSUSswN0dsdVFGOU1a?= =?utf-8?B?Z0ZVUXBUMURNa2ExY2VhWkhmVVBQeEZNa1FjMys1U1MzM2dZSFB6RlRJMmZ4?= =?utf-8?B?ZkQ2VUhMR3Y3OEFlRzVvanloK1h4WDFjTy9rUT09?= Content-Type: text/plain; charset="utf-8" Content-ID: <5CCE5699A73DCA4585881E8F4245D2F5@amdcloud.onmicrosoft.com> Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: BL1PR12MB5849.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: bf35a828-f881-4940-9b0f-08db793db777 X-MS-Exchange-CrossTenant-originalarrivaltime: 30 Jun 2023 07:43:38.0216 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: APvwVzgqnYygo5u6Gs3zOqNk6IZ9nTFFMCRWp7ZsyUrA2VFmkBtgG/ZzrG3zeHGH6cdQyZm/v4CkZhq13NxkCg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: IA1PR12MB6233 SGkgYWxsLA0KDQpWMiBwYXRjaCBvZiBrZXJuZWwgaXMgaHR0cHM6Ly9sb3JlLmtlcm5lbC5vcmcv bGttbC8yMDIzMDYzMDA3MzQ0OC44NDI3NjctMS1KaXFpYW4uQ2hlbkBhbWQuY29tL1QvI3QuDQoN Ck9uIDIwMjMvNi8zMCAxNTozNCwgSmlxaWFuIENoZW4gd3JvdGU6DQo+IHYyOg0KPiANCj4gSGkg YWxsLA0KPiANCj4gVGhhbmtzIHRvIE1hcmMtQW5kcsOpIEx1cmVhdSwgUm9iZXJ0IEJlY2tldHQg YW5kIEdlcmQgSG9mZm1hbm4gZm9yDQo+IHRoZWlyIGFkdmljZSBhbmQgZ3VpZGFuY2UuIFYyIG1h a2VzIGJlbG93IGNoYW5nZXM6DQo+IA0KPiAqIENoYW5nZSBWSVJUSU9fQ1BVX0NNRF9TVEFUVVNf RlJFRVpJTkcgdG8gMHgwNDAwICg8MHgxMDAwKQ0KPiAqIEFkZCBhIG5ldyBmZWF0dXJlIGZsYWcg VklSVElPX0dQVV9GX0ZSRUVaSU5HLCBzbyB0aGF0IGd1ZXN0IGFuZA0KPiAgIGhvc3QgY2FuIG5l Z290aWF0ZSB3aGVuZXZlciBmcmVlemluZyBpcyBzdXBwb3J0ZWQgb3Igbm90Lg0KPiANCj4gVjIg b2YgUWVtdSBwYXRjaCBodHRwczovL2xvcmUua2VybmVsLm9yZy9xZW11LWRldmVsLzIwMjMwNjMw MDcwMDE2Ljg0MTQ1OS0xLUppcWlhbi5DaGVuQGFtZC5jb20vVC8jdA0KPiANCj4gQmVzdCByZWdh cmRzLA0KPiBKaXFpYW4gQ2hlbi4NCj4gDQo+IHYxOg0KPiANCj4gbGluazogaHR0cHM6Ly9sb3Jl Lmtlcm5lbC5vcmcvbGttbC8yMDIzMDYwODA2Mzg1Ny4xNjc3OTczLTEtSmlxaWFuLkNoZW5AYW1k LmNvbS8NCj4gDQo+IEhpIGFsbCwNCj4gDQo+IEkgYW0gd29ya2luZyB0byBpbXBsZW1lbnQgdmly dGdwdSBTMyBmdW5jdGlvbiBvbiBYZW4uDQo+IA0KPiBDdXJyZW50bHkgb24gWGVuLCBpZiB3ZSBz dGFydCBhIGd1ZXN0IHdobyBlbmFibGVzIHZpcnRncHUsIGFuZCB0aGVuDQo+IHJ1biAiZWNobyBt ZW0gPiAvc3lzL3Bvd2VyL3N0YXRlIiB0byBzdXNwZW5kIGd1ZXN0LiBBbmQgcnVuDQo+ICJzdWRv IHhsIHRyaWdnZXIgPGd1ZXN0IGlkPiBzM3Jlc3VtZSIgdG8gcmVzdW1lIGd1ZXN0LiBXZSBjYW4g ZmluZCB0aGF0DQo+IHRoZSBndWVzdCBrZXJuZWwgY29tZXMgYmFjaywgYnV0IHRoZSBkaXNwbGF5 IGRvZXNuJ3QuIEl0IGp1c3Qgc2hvd3MgYQ0KPiBibGFjayBzY3JlZW4uDQo+IA0KPiBJbiByZXNw b25zZSB0byB0aGUgYWJvdmUgcGhlbm9tZW5vbiwgSSBoYXZlIGZvdW5kIHR3byBwcm9ibGVtcy4N Cj4gDQo+IEZpcnN0LCBpZiB3ZSBtb3ZlIG1vdXNlIG9uIHRoZSBibGFjayBzY3JlZW4sIGd1ZXN0 IGtlcm5lbCBzdGlsbCBzZW5kcyBhDQo+IGN1cnNvciByZXF1ZXN0IHRvIFFlbXUsIGJ1dCBRZW11 IGRvZXNuJ3QgcmVzcG9uc2UuIEJlY2F1c2Ugd2hlbiBndWVzdA0KPiBpcyBzdXNwZW5kaW5nLCBp dCBjYWxscyBkZXZpY2Vfc3VzcGVuZCwgYW5kIHRoZW4gY2FsbCBpbnRvIFFlbXUgdG8gY2FsbA0K PiB2aXJ0aW9fcmVzZXQtPl9fdmlydGlvX3F1ZXVlX3Jlc2V0LiBJbiBfX3ZpcnRpb19xdWV1ZV9y ZXNldCwgaXQgY2xlYXJzDQo+IGFsbCB2aXJ0cXVldWUgaW5mb3JtYXRpb24gb24gUWVtdSBlbmQu IFNvLCBhZnRlciBndWVzdCByZXN1bWVzLCBRZW11DQo+IGNhbid0IGdldCBtZXNzYWdlIGZyb20g dmlydHF1ZXVlLg0KPiANCj4gU2Vjb25kLCB0aGUgcmVhc29uIHdoeSBkaXNwbGF5IGNhbid0IGNv bWUgYmFjayBpcyB0aGF0IHdoZW4gZ3Vlc3QgaXMNCj4gc3VzcGVuZGluZywgaXQgY2FsbHMgaW50 byBRZW11IHRvIGNhbGwgdmlydGlvX3Jlc2V0LT52aXJ0aW9fZ3B1X2dsX3Jlc2V0Lg0KPiBJbiB2 aXJ0aW9fZ3B1X2dsX3Jlc2V0LCBpdCBkZXN0cm95cyBhbGwgcmVzb3VyY2VzIGFuZCByZXNldHMg cmVuZGVyZXIsDQo+IHdoaWNoIGFyZSB1c2VkIGZvciBkaXNwbGF5LiBTbyBhZnRlciBndWVzdCBy ZXN1bWVzLCB0aGUgZGlzcGxheSBjYW4ndA0KPiBjb21lIGJhY2sgdG8gdGhlIHN0YXR1cyB3aGVu IGd1ZXN0IGlzIHN1c3BlbmRlZC4NCj4gDQo+IFRoaXMgcGF0Y2ggaW5pdGlhbGl6ZXMgdmlydHF1 ZXVlIHdoZW4gZ3Vlc3QgaXMgcmVzdW1pbmcgdG8gc29sdmUgZmlyc3QNCj4gcHJvYmxlbS4gQW5k IGl0IG5vdGlmaWVzIFFlbXUgdGhhdCBndWVzdCBpcyBzdXNwZW5kaW5nIHRvIHByZXZlbnQgUWVt dQ0KPiBkZXN0cm95aW5nIHJlc291cmNlcywgdGhpcyBpcyB0byBzb2x2ZSBzZWNvbmQgcHJvYmxl bS4gQW5kIHRoZW4sIEkgY2FuDQo+IGJyaW5nIHRoZSBkaXNwbGF5IGJhY2ssIGFuZCBldmVyeXRo aW5nIGNvbnRpbnVlcyB0aGVpciBhY3Rpb25zIGFmdGVyDQo+IGd1ZXN0IHJlc3VtZXMuDQo+IA0K PiBNb2RpZmljYXRpb25zIG9uIFFlbXUgZW5kIGlzOg0KPiBodHRwczovL2xvcmUua2VybmVsLm9y Zy9xZW11LWRldmVsLzIwMjMwNjA4MDI1NjU1LjE2NzQzNTctMi1KaXFpYW4uQ2hlbkBhbWQuY29t Lw0KPiANCj4gSmlxaWFuIENoZW4gKDEpOg0KPiAgIHZpcnRncHU6IGluaXQgdnEgZHVyaW5nIHJl c3VtZSBhbmQgbm90aWZ5IHFlbXUgZ3Vlc3Qgc3RhdHVzDQo+IA0KPiAgZHJpdmVycy9ncHUvZHJt L3ZpcnRpby92aXJ0Z3B1X2RlYnVnZnMuYyB8ICAxICsNCj4gIGRyaXZlcnMvZ3B1L2RybS92aXJ0 aW8vdmlydGdwdV9kcnYuYyAgICAgfCAzNyArKysrKysrKysrKysrKysrKysrKysrKysNCj4gIGRy aXZlcnMvZ3B1L2RybS92aXJ0aW8vdmlydGdwdV9kcnYuaCAgICAgfCAgNCArKysNCj4gIGRyaXZl cnMvZ3B1L2RybS92aXJ0aW8vdmlydGdwdV9rbXMuYyAgICAgfCAzNiArKysrKysrKysrKysrKysr Ky0tLS0tLQ0KPiAgZHJpdmVycy9ncHUvZHJtL3ZpcnRpby92aXJ0Z3B1X3ZxLmMgICAgICB8IDE1 ICsrKysrKysrKysNCj4gIGluY2x1ZGUvdWFwaS9saW51eC92aXJ0aW9fZ3B1LmggICAgICAgICAg fCAxNSArKysrKysrKysrDQo+ICA2IGZpbGVzIGNoYW5nZWQsIDk5IGluc2VydGlvbnMoKyksIDkg ZGVsZXRpb25zKC0pDQo+IA0KDQotLSANCkJlc3QgcmVnYXJkcywNCkppcWlhbiBDaGVuLg0K From xen-devel-bounces@lists.xenproject.org Fri Jun 30 07:45:52 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 30 Jun 2023 07:45:52 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557342.870606 (Exim 4.92) (envelope-from ) id 1qF8p3-0000XO-VQ; Fri, 30 Jun 2023 07:45:41 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557342.870606; Fri, 30 Jun 2023 07:45:41 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qF8p3-0000XH-Rf; Fri, 30 Jun 2023 07:45:41 +0000 Received: by outflank-mailman (input) for mailman id 557342; Fri, 30 Jun 2023 07:45:40 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qF8p2-0000X8-AZ for xen-devel@lists.xenproject.org; Fri, 30 Jun 2023 07:45:40 +0000 Received: from NAM12-DM6-obe.outbound.protection.outlook.com (mail-dm6nam12on2060b.outbound.protection.outlook.com [2a01:111:f400:fe59::60b]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 1a166b74-171a-11ee-8611-37d641c3527e; Fri, 30 Jun 2023 09:45:38 +0200 (CEST) Received: from BL1PR12MB5849.namprd12.prod.outlook.com (2603:10b6:208:384::18) by DS7PR12MB6309.namprd12.prod.outlook.com (2603:10b6:8:96::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.19; Fri, 30 Jun 2023 07:45:34 +0000 Received: from BL1PR12MB5849.namprd12.prod.outlook.com ([fe80::4ef5:2244:743b:9989]) by BL1PR12MB5849.namprd12.prod.outlook.com ([fe80::4ef5:2244:743b:9989%4]) with mapi id 15.20.6521.023; Fri, 30 Jun 2023 07:45:33 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 1a166b74-171a-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=mBWd/iGfDuQ1vCALf2nrRXKUoQsUMIjB+jgQnQFy6VzLz/TJYYRpVIPNnW8EE+9tYse5RcW30llxU5iRedj4E2++r+i6ivreWpIWhXcSsuqeErZQQhvIP1HQm4V5Hgpub+ycRtnKgaNIclCmpDxx3x5oRRPAjRgBRbmMPyMPyelsQsIOJCk+EvsqB43lafNfdP4efnOPRFQKt8MVAOKDNj4TVQ9lcBeJ9z6524v4v4T01ur9A0LspsrIY0qYwJyhUnclgKcG+LpT9sYY6WNgwwqt3x4xODHuAFYtfu5QYrhnB4CTBXidfRyLuxJephGSaE4qsLqMZKWQL5rjydmSxQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=d5XBJlMh0mer4m//UExG/U+rMPTsoz1kV1NBeRFIpME=; b=GaDWTGgaCDM7VVMf5/HDRXMOsw3mS8XjXBcHhJ7DraeMstp86xDrV8dN6n3om0H4YyofVgYHgfq1qhGS+YN37VD5mZ4NdiaEz5O7ZHxMEDwBLxabMn03Of2xaEAQAgxufbr7RTbvdMJ3/zoDemfVla1xp/4dL5e1bfmR7NrW1B/tRibupe5dtpoEJDXHGS1iOeaRo8EGpMIfjuhz/30RX/T4U9CogoUsmNqQ9z2OLYfTHbvqPAscrYSjXutPjHPxuBNIlH6S8y6HN7GaPUbBjS6M+WvZ5Y/L7BOk5WzeYNRfSDph43CdKjJYtQbcSyuwceRunz5/WHJK/vfiPByG9g== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass header.d=amd.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=d5XBJlMh0mer4m//UExG/U+rMPTsoz1kV1NBeRFIpME=; b=IU0KTwymoZiQUjcI/5/cbErH2VvqLpvV8y1WE4YX2rK5UOqdHHhwxjFfEvX/fYEMY00WJwqcb9+8aVgQNo3jY0vR4UxLQOS3Wr2uRxS7NYMLfIZ95+Be3H61jtySgjSZml2ol52e3eL+xcy9yfAsRGswh450yeBocHLpiWSEJqc= From: "Chen, Jiqian" To: Gerd Hoffmann , =?utf-8?B?TWFyYy1BbmRyw6kgTHVyZWF1?= , "Michael S . Tsirkin" , Stefano Stabellini , Anthony PERARD , =?utf-8?B?Um9nZXIgUGF1IE1vbm7DqQ==?= , Jan Beulich , "Dr . David Alan Gilbert" , Robert Beckett , "qemu-devel@nongnu.org" , "xen-devel@lists.xenproject.org" CC: "Deucher, Alexander" , "Koenig, Christian" , "Hildebrand, Stewart" , Xenia Ragiadakou , "Huang, Honglei1" , "Zhang, Julia" , "Huang, Ray" , "Chen, Jiqian" Subject: Re: [QEMU PATCH v2 0/1] S3 support Thread-Topic: [QEMU PATCH v2 0/1] S3 support Thread-Index: AQHZqyDdy1wUVG6tEUGOPQRLuORcNq+jfWEA Date: Fri, 30 Jun 2023 07:45:33 +0000 Message-ID: References: <20230630070016.841459-1-Jiqian.Chen@amd.com> In-Reply-To: <20230630070016.841459-1-Jiqian.Chen@amd.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ms-exchange-imapappendstamp: MN2PR12MB3037.namprd12.prod.outlook.com (15.20.6544.003) authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=amd.com; x-ms-exchange-messagesentrepresentingtype: 1 x-ms-publictraffictype: Email x-ms-traffictypediagnostic: BL1PR12MB5849:EE_|DS7PR12MB6309:EE_ x-ms-office365-filtering-correlation-id: b4a9ef2f-8f28-4bf3-7a35-08db793dfc79 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: DjVYzQ27hbDyi98RkqTGsS5ckKSSYmQDSS/hSrgMX209WJLeHbE+yhheeKNRW6RcZrHeLAyndr87So9EDzIgqatrJ87JIDDBJEkvGfb4IffIHyD0E4xElDjoIMCcZi/9mLcWJk8Ba5kDKbTRERb5wcSYfHj//OP2Pte3BC9jYY8zjQBraAdLJ9+4XQmJaxzNpyreFuGPUDuRwRMilQPgme+/AANVriTGYh8PozfblM8VcuFwvbHqPxVsji4SsREZCVrBoRkspGoPs8IwShgJyD3InPJGwFe7PdLXK5QpCypJt+GFVF2nS7Et37ETIGtyxIzOvTMAtFR5M35nu+SkYeVlukAwUVR+QJ6flNX6bpDezTuR/njEvnvDMf7+5o0/xctmjgV3QukYBWET7KjvnMI/1wLWD5RWRmsWnbOk/up13KSSZVRvlbp3nA4Hw7lVpg+2iuIEtK4IAFxluflLyfhW831vHlDutNVJfrA/2abQalAgsE9oc+LyKw5+sHvyBzPjoZYtH3cAyd+eQqSVLT34MKHnTBVtyqEhQty6piyRDlwP78CH6Fgu+R/ewNcxELRqC/sTsDb+PykseFxhNH8BSRv6au6aufgEQvYZydVw5MURtmfGR9i+aRUbrXYl4XaVPvbsU/xZzEYFYDvYoGrRJlsB9opWGyhJX+FBbZw= x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BL1PR12MB5849.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(136003)(366004)(346002)(376002)(396003)(451199021)(83380400001)(38070700005)(2906002)(122000001)(38100700002)(921005)(55016003)(8936002)(8676002)(110136005)(5660300002)(52536014)(71200400001)(54906003)(966005)(41300700001)(66946007)(66556008)(66476007)(66446008)(64756008)(4326008)(76116006)(316002)(7696005)(33656002)(478600001)(186003)(53546011)(9686003)(6506007)(7416002);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?VnFsWFFkd1VuQUtnMW1VamVEODU0Snd1Lzc4aVNENXpaeU9ndmFPaDlVakVv?= =?utf-8?B?NGRCNnJ5elRaUzFZUDZibEcxRDVMM2cxRnpCVXVRM2pwS3o2NGhVTG9jUnBL?= =?utf-8?B?TThxNTZVZWtubS9ubFVNNU9mVm82YWdFL0YreWsvVkwxdjVsdDcrZ3hpcmJC?= =?utf-8?B?RnEvbnhhRjc1Ny9VTzNnclZzMEpzMVpEblplK250MHVxaXlvNzlYSUN1dDRW?= =?utf-8?B?Z0h6aE5vMFRsUndId2RVTmZPSmNuMUw4S3dyckNYM0Z5Y0dXSG0yNTZFUHFt?= =?utf-8?B?YUlHL29UdkljeGlyUkN4RG84VTZSOWpiRkVFREFQeXFIK1FOdWJGa1o1YjNY?= =?utf-8?B?NzNYM1dsZXBuTkFkTFpuVDVLZUhhTTR6MlFLZTJhbkJZNGpqYTd5SVB6OGVF?= =?utf-8?B?K2FlMndkNVplOU9aRDZ5Sy9xQmtQVkM0TVdscEJpS1dSYysrVnpLRFNlNlZ5?= =?utf-8?B?a1pTSFVJYzF1QjFZamZsdk5HR1U1bTAxQUxFMGpFb241L2R4L2ZhUUlLeXFF?= =?utf-8?B?VWdXZThZSmh2NW9GK0F0eVJQYStSY3dJNjVFN0dTaHVZR0VFUjNxWGV5M0l2?= =?utf-8?B?cHNtR2dZUkFKalBJZlRjOVFBTlNscGNYT0pFVjh1cndrMEEzcE9pWVdvSkYy?= =?utf-8?B?MnBZWFRWV1FxemduYVFZMENYaTRGTWtobWdUVjAwcFREdHV2RmJPWTFYRmM2?= =?utf-8?B?NG1vMWx5L3htZnpHZE5zeGI5Zzd1Uk5WSnlvS3R1MkhpSXhxMzdSSWJ6UCtB?= =?utf-8?B?V3dlMnMza1c2cCtyREtWVzhoeHR2ZmpnTktzQXEwVmw5a0VjeHk1VjMxQ2ZR?= =?utf-8?B?RHRhNzhoaUFsbDlDUVk3WDdoL0czK016bjlKMk10Q0xUNGlFbWNMQnd4UG5B?= =?utf-8?B?VTY5MkUvbXdZSUV1VzN0MENPM0tsTDBrZlA2YTlRNEFOT0IxRzRFTWM2RFV6?= =?utf-8?B?bWxaM0NwNk00OG84ZmV4YjdPOTZjNC9vbkhSMGZZcVUzZWgxdG5uUkNoTy8w?= =?utf-8?B?Rzc1ekRQVjBhRjlpQ0x5SHFOQS9ROEc1aTlzS0NPU0tJVHFQS1BuRU1CK0hD?= =?utf-8?B?dzRWSTBpNTNsVktQdURoUzd3d05LNldtY21pdk1aQzNSaENMT3NSMGY2bTUy?= =?utf-8?B?SWRoYnZzOEMyN1h0S3FqdEFiazhBMk0ya1hKRVN0YXFyYzFCUFQ0NXA3dVIx?= =?utf-8?B?cnBiRlU4bDllTkJTOERsU0tGK1c3NkxTVUU4dWR2aVU2aEVieXd0dkx4NlRO?= =?utf-8?B?VW9oL0UyTmg0b21KNlRxLzF0b29uUW5FYitxeFMwc1lEeG55ckdwUjc0NUVL?= =?utf-8?B?S0V0MXZVRUo5N2RudGEyNVFUMnZROGgzOHFRcVJSUjU4dWVOL01qRkl2bVhB?= =?utf-8?B?TVB1Q2h1UW1iNlMzRVBHQlQ1OC9LdnBWKzc2bjhRYWRFMzZiTG9pZUVjcnRp?= =?utf-8?B?ekF4QjdOcFNpVVZWaGhuL0tIN255b2ViK0c0SmVrbVNHR0FMRmhjdU9ZT2Zq?= =?utf-8?B?WGpheXR4b1dOTlpRZXk1akpqVlE5MTVyVVRXS21OVlRNMVdTN3B6YkVEZDEr?= =?utf-8?B?WWpLdFh4WkF6UzlpVGVpRTFncEM5TU5VdS9kM0NEWTUrcHIxWGtFelRhRFFy?= =?utf-8?B?bWtTWDRZZ3dFcTRBWEJPbGdNME1yY3dHY3FXQkxzMWU3MUF1UnZlbjBET2FL?= =?utf-8?B?Q1FMMHlrczRJa1BqczRZZjA0cUNyVWs4MncxZDVHOWFtdFA1NXJqVXpLYXVa?= =?utf-8?B?QWZWK2x2OHF1a3dpM1RxN3FSOWVhTUxoM3VZME9SSjNJR2hZRG1JS3RqQzBh?= =?utf-8?B?NDV6eHVBUFhDYkU1Vmw3UVhtRDh3cTRXQnBMa2s0WEUwQytpN1FhNUR6elpY?= =?utf-8?B?aGRDUWpFUzRRQTlhTXhHNjdKYUUxUWtjL3BheUlWVnB6a0RTZ2ZTK2JHR2p0?= =?utf-8?B?YWlzaEJZZkkvOEN0SENUcHdyK1ozVFZYMEY0Um5hZisySzdmSi82MTlMU0FR?= =?utf-8?B?YWVJRFFjNE9XR0NpNnRSelc4eU44V3Q0QURQZHNjaHEybC9ER2szMVNYckds?= =?utf-8?B?R0djQm0zNWpFWlkxOG1KRzR1REdrS1VzV29RQT09?= Content-Type: text/plain; charset="utf-8" Content-ID: <4ED027EC8635C545AE1071E30B736088@amdcloud.onmicrosoft.com> Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: BL1PR12MB5849.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: b4a9ef2f-8f28-4bf3-7a35-08db793dfc79 X-MS-Exchange-CrossTenant-originalarrivaltime: 30 Jun 2023 07:45:33.8464 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: n2vLKsq4vwhPf7/C2ektStC/poEdYLkARXe5il35+IM7PLjKEivFnbapD5gir1Btf1u2hmMLhBD/D7Y2ZPMWDg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR12MB6309 SGkgYWxsLA0KDQpWMiBwYXRjaCBvZiBrZXJuZWwgaXMgaHR0cHM6Ly9sb3JlLmtlcm5lbC5vcmcv bGttbC8yMDIzMDYzMDA3MzQ0OC44NDI3NjctMS1KaXFpYW4uQ2hlbkBhbWQuY29tL1QvI3QuDQoN Ck9uIDIwMjMvNi8zMCAxNTowMCwgSmlxaWFuIENoZW4gd3JvdGU6DQo+IHYyOg0KPiANCj4gSGkg YWxsLA0KPiANCj4gVGhhbmtzIHRvIE1hcmMtQW5kcsOpIEx1cmVhdSwgUm9iZXJ0IEJlY2tldHQg YW5kIEdlcmQgSG9mZm1hbm4gZm9yDQo+IHRoZWlyIGFkdmljZSBhbmQgZ3VpZGFuY2UuIFYyIG1h a2VzIGJlbG93IGNoYW5nZXM6DQo+IA0KPiAqIENoYW5nZSBWSVJUSU9fQ1BVX0NNRF9TVEFUVVNf RlJFRVpJTkcgdG8gMHgwNDAwICg8MHgxMDAwKQ0KPiAqIEFkZCB2aXJ0aW9fZ3B1X2RldmljZV91 bnJlYWxpemUgdG8gZGVzdHJveSByZXNvdXJjZXMgdG8gc29sdmUNCj4gICBwb3RlbnRpYWwgbWVt b3J5IGxlYWsgcHJvYmxlbS4gVGhpcyBhbHNvIG5lZWRzIGhvdC1wbHVnIHN1cHBvcnQuDQo+ICog QWRkIGEgbmV3IGZlYXR1cmUgZmxhZyBWSVJUSU9fR1BVX0ZfRlJFRVpJTkcsIHNvIHRoYXQgZ3Vl c3QgYW5kDQo+ICAgaG9zdCBjYW4gbmVnb3RpYXRlIHdoZW5ldmVyIGZyZWV6aW5nIGlzIHN1cHBv cnRlZCBvciBub3QuDQo+IA0KPiBCZXN0IHJlZ2FyZHMsDQo+IEppcWlhbiBDaGVuLg0KPiANCj4g djE6DQo+IA0KPiBsaW5rOiBodHRwczovL2xvcmUua2VybmVsLm9yZy9xZW11LWRldmVsLzIwMjMw NjA4MDI1NjU1LjE2NzQzNTctMS1KaXFpYW4uQ2hlbkBhbWQuY29tLw0KPiANCj4gSGkgYWxsLA0K PiANCj4gSSBhbSB3b3JraW5nIHRvIGltcGxlbWVudCB2aXJ0Z3B1IFMzIGZ1bmN0aW9uIG9uIFhl bi4NCj4gDQo+IEN1cnJlbnRseSBvbiBYZW4sIGlmIHdlIHN0YXJ0IGEgZ3Vlc3Qgd2hvIGVuYWJs ZXMgdmlydGdwdSwgYW5kIHRoZW4NCj4gcnVuICJlY2hvIG1lbSA+IC9zeXMvcG93ZXIvc3RhdGUi IHRvIHN1c3BlbmQgZ3Vlc3QuIEFuZCBydW4NCj4gInN1ZG8geGwgdHJpZ2dlciA8Z3Vlc3QgaWQ+ IHMzcmVzdW1lIiB0byByZXN1bWUgZ3Vlc3QuIFdlIGNhbiBmaW5kIHRoYXQNCj4gdGhlIGd1ZXN0 IGtlcm5lbCBjb21lcyBiYWNrLCBidXQgdGhlIGRpc3BsYXkgZG9lc24ndC4gSXQganVzdCBzaG93 biBhDQo+IGJsYWNrIHNjcmVlbi4NCj4gDQo+IFRocm91Z2ggcmVhZGluZyBjb2RlcywgSSBmb3Vu ZGVkIHRoYXQgd2hlbiBndWVzdCB3YXMgZHVyaW5nIHN1c3BlbmRpbmcsDQo+IGl0IGNhbGxlZCBp bnRvIFFlbXUgdG8gY2FsbCB2aXJ0aW9fZ3B1X2dsX3Jlc2V0LiBJbiB2aXJ0aW9fZ3B1X2dsX3Jl c2V0LA0KPiBpdCBkZXN0cm95ZWQgYWxsIHJlc291cmNlcyBhbmQgcmVzZXQgcmVuZGVyZXIuIFRo aXMgbWFkZSB0aGUgZGlzcGxheQ0KPiBnb25lIGFmdGVyIGd1ZXN0IHJlc3VtZWQuDQo+IA0KPiBJ IHRoaW5rIHdlIHNob3VsZCBrZWVwIHJlc291cmNlcyBvciBwcmV2ZW50IHRoZXkgYmVpbmcgZGVz dHJveWVkIHdoZW4NCj4gZ3Vlc3QgaXMgc3VzcGVuZGluZy4gU28sIEkgYWRkIGEgbmV3IHN0YXR1 cyBuYW1lZCBmcmVlemluZyB0byB2aXJ0Z3B1LA0KPiBhbmQgYWRkIGEgbmV3IGN0cmwgbWVzc2Fn ZSBWSVJUSU9fR1BVX0NNRF9TVEFUVVNfRlJFRVpJTkcgdG8gZ2V0DQo+IG5vdGlmaWNhdGlvbiBm cm9tIGd1ZXN0LiBJZiBmcmVlemluZyBpcyBzZXQgdG8gdHJ1ZSwgYW5kIHRoZW4gUWVtdSB3aWxs DQo+IHJlYWxpemUgdGhhdCBndWVzdCBpcyBzdXNwZW5kaW5nLCBpdCB3aWxsIG5vdCBkZXN0cm95 IHJlc291cmNlcyBhbmQgd2lsbA0KPiBub3QgcmVzZXQgcmVuZGVyZXIuIElmIGZyZWV6aW5nIGlz IHNldCB0byBmYWxzZSwgUWVtdSB3aWxsIGRvIGl0cyBvcmlnaW4NCj4gYWN0aW9ucywgYW5kIGhh cyBubyBvdGhlciBpbXBhY3Rpb24uDQo+IA0KPiBBbmQgbm93LCBkaXNwbGF5IGNhbiBjb21lIGJh Y2sgYW5kIGFwcGxpY2F0aW9ucyBjYW4gY29udGludWUgdGhlaXINCj4gc3RhdHVzIGFmdGVyIGd1 ZXN0IHJlc3VtZXMuDQo+IA0KPiBKaXFpYW4gQ2hlbiAoMSk6DQo+ICAgdmlydGdwdTogZG8gbm90 IGRlc3Ryb3kgcmVzb3VyY2VzIHdoZW4gZ3Vlc3Qgc3VzcGVuZA0KPiANCj4gIGh3L2Rpc3BsYXkv dmlydGlvLWdwdS1iYXNlLmMgICAgICAgICAgICAgICAgfCAgMyArKw0KPiAgaHcvZGlzcGxheS92 aXJ0aW8tZ3B1LWdsLmMgICAgICAgICAgICAgICAgICB8ICA5ICsrKy0NCj4gIGh3L2Rpc3BsYXkv dmlydGlvLWdwdS12aXJnbC5jICAgICAgICAgICAgICAgfCAgNyArKysNCj4gIGh3L2Rpc3BsYXkv dmlydGlvLWdwdS5jICAgICAgICAgICAgICAgICAgICAgfCA1MiArKysrKysrKysrKysrKysrKysr Ky0NCj4gIGh3L3ZpcnRpby92aXJ0aW8uYyAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgMyAr Kw0KPiAgaW5jbHVkZS9ody92aXJ0aW8vdmlydGlvLWdwdS5oICAgICAgICAgICAgICB8ICA2ICsr Kw0KPiAgaW5jbHVkZS9zdGFuZGFyZC1oZWFkZXJzL2xpbnV4L3ZpcnRpb19ncHUuaCB8IDE1ICsr KysrKw0KPiAgNyBmaWxlcyBjaGFuZ2VkLCA5MiBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygt KQ0KPiANCg0KLS0gDQpCZXN0IHJlZ2FyZHMsDQpKaXFpYW4gQ2hlbi4NCg== From xen-devel-bounces@lists.xenproject.org Fri Jun 30 07:49:32 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 30 Jun 2023 07:49:32 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557346.870615 (Exim 4.92) (envelope-from ) id 1qF8sc-000187-Cs; Fri, 30 Jun 2023 07:49:22 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557346.870615; Fri, 30 Jun 2023 07:49:22 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qF8sc-000180-AJ; Fri, 30 Jun 2023 07:49:22 +0000 Received: by outflank-mailman (input) for mailman id 557346; Fri, 30 Jun 2023 07:49:20 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qF8sa-00017u-Rb for xen-devel@lists.xenproject.org; Fri, 30 Jun 2023 07:49:20 +0000 Received: from NAM11-DM6-obe.outbound.protection.outlook.com (mail-dm6nam11on20615.outbound.protection.outlook.com [2a01:111:f400:7eaa::615]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 9e56c893-171a-11ee-b237-6b7b168915f2; Fri, 30 Jun 2023 09:49:19 +0200 (CEST) Received: from BL1PR12MB5849.namprd12.prod.outlook.com (2603:10b6:208:384::18) by DM6PR12MB4169.namprd12.prod.outlook.com (2603:10b6:5:215::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.19; Fri, 30 Jun 2023 07:49:16 +0000 Received: from BL1PR12MB5849.namprd12.prod.outlook.com ([fe80::4ef5:2244:743b:9989]) by BL1PR12MB5849.namprd12.prod.outlook.com ([fe80::4ef5:2244:743b:9989%4]) with mapi id 15.20.6521.023; Fri, 30 Jun 2023 07:49:16 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 9e56c893-171a-11ee-b237-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Hl9dQtdTJaqwaW2P0d3lFKTCW7yt04RELzgD8VGFV8Vpg4z72kDBtVCRALLxnV38pzS0OkT+ZYCbGdnCgRYRNsEJ8x0kDMebIi0OuOIXF+rfrhjD4/Lc9OXWBAj+b1ZhpjAxAkknvEfDXg5sXhKcdywuci1Crby6aOF1J4D/mtqlRHBjCHJQoC3z0NSXXw8iY8BcG5roQcmbSQy6r6atfoAivdb4UhIyqkOuolEjx8IWaGVc0AV6/85TlgxvzmtWiW0SFszuIgl+ZmT4Nx/u+fOPv2gKbeXh2TQQpV6rNkMQgs0+Z2QILQMgqJEHEaQhZkpUSGeytU9D2R4ht5NMxQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=QtInnFJqOyslEA8NEIBnpvOKVL1G0FRZKRX4Po5/E60=; b=A3lo5L+jrmFyGLvLbXaVJ0IbN3zVe3dNI6LHqGzAQnzLi5IoZB5s3ZdpDtaSevNJuXnoBm2JK0j6LKuG8p+iW76YHitdpXz32/6+NIBgXYYgR/U6YNFl1cDc/zPBA1Mz8rwAYQyHQY7igmxqn+Jn83O0o8qSm9AiyiNpUATnYJR42LoGxzsBwsgVDwrjn7WlFNyXlZj8gM8WVhxQOCc89Q79DlD0hnjct1Vmucub7ttlLv7DdiMarPAqEgoekrkV86fjFowjP9dgpi0FiWlMzalb321Q70SakiV2Z4WCxnrFtHlvl9B/xTauUeaI1PbCCmGcr086AnVjzjFDb462Yg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass header.d=amd.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=QtInnFJqOyslEA8NEIBnpvOKVL1G0FRZKRX4Po5/E60=; b=4JynHim+2KQuC8EbYtstyYw53R2Yqms3wS8+ateObJzzpJpyw15M+kUBK14/86UDk7nLXGREeiaWPI6MBM5ZS/WRwxEn9sF7L7+URPdg7e4OmxwDgmwd/0DND336veLa5w9jCH6hAtdP9h6hJel9bq2p5ie/790YeEIvN7o9WCc= From: "Chen, Jiqian" To: David Airlie , Gerd Hoffmann , =?iso-8859-1?Q?Marc-Andr=E9_Lureau?= , Gurchetan Singh , Chia-I Wu , Juergen Gross , Stefano Stabellini , Oleksandr Tyshchenko , Boris Ostrovsky , =?iso-8859-1?Q?Roger_Pau_Monn=E9?= , Robert Beckett , "virtualization@lists.linux-foundation.org" , "linux-kernel@vger.kernel.org" , "dri-devel@lists.freedesktop.org" , "xen-devel@lists.xenproject.org" CC: "Deucher, Alexander" , "Koenig, Christian" , "Hildebrand, Stewart" , Xenia Ragiadakou , "Huang, Honglei1" , "Zhang, Julia" , "Huang, Ray" , "Chen, Jiqian" Subject: Recall: [LINUX KERNEL PATCH v2 0/1] add S3 support for virtgpu Thread-Topic: [LINUX KERNEL PATCH v2 0/1] add S3 support for virtgpu Thread-Index: AQHZqydezdjrVoCNy0y4p3DT/S/pAQ== X-CallingTelephoneNumber: IPM.Note X-VoiceMessageDuration: 1 X-FaxNumberOfPages: 0 Date: Fri, 30 Jun 2023 07:49:16 +0000 Message-ID: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=amd.com; x-ms-exchange-messagesentrepresentingtype: 1 x-ms-publictraffictype: Email x-ms-traffictypediagnostic: BL1PR12MB5849:EE_|DM6PR12MB4169:EE_ x-ms-office365-filtering-correlation-id: 827ea8c8-17c2-4d91-ac7c-08db793e8103 x-ms-exchange-recallreportgenerated: true x-ms-exchange-recallreportcfmgenerated: true x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: v5YNKznZ3cGg7B04UPG+iPlvGJaU2W8l1MF2U9sD1NsKrK5EQ56OsUyvdu37C8gTgrPQcK/lKn8DGdB65Sm5iYTTmdKm3L7SUO4ISiOFJDLvxr4YDFNoNlYAVnBLi8Q1mo+Gnr/xoPr2qigv4BDflM/VoejkcbksTM598wJ4rjvtlaDECDADoQRtCrOIfUBpGNjf3zEhIPKzYr6ujB8Ofreg45CggP00uQnNaUtOgPVzv9SV4gR0SS3o1kZGPsjY7ZPu+4gFV4PiBg0epYTP19o/LOybCcNd2esaTTBkdDQt8BCMxFAFHHS0+4uO7RW1wUqFeS3HYEILbD41Sd0Ruo/N7ZCBH38u5KvmuX5IEmojWkePLqrvq0v3oNxJ9sbRJij9YEzhRM2td2hXXuLDLWiqq4hJJjn3icVgn5Kmj6G+AvjIOgUoYblWHdP2hpeyqIyf6rSvFi0hjwxOa49YFqKP2RZd9LlP+/TpgmEvCZY2S1tfexl6vBnJxP219AJRyxT8PXwQvSPnP8frkNaW4JYeKqmUaBtiP5YNmiuRCK2sthYC7L9KuJ58zPcwQOlv4x+2d6MvNG4D/k+geNyqSpG4yD16x/9BDC/XrhERWVzq8mnSNuSUasG2lJMjKcAgIx816p4ugUgMbZu6CtsAcQ== x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BL1PR12MB5849.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(136003)(366004)(346002)(396003)(376002)(39860400002)(451199021)(7696005)(478600001)(71200400001)(558084003)(33656002)(186003)(9686003)(6506007)(83380400001)(38100700002)(122000001)(38070700005)(921005)(55016003)(4326008)(64756008)(76116006)(66946007)(66556008)(66476007)(66446008)(2906002)(316002)(7416002)(5660300002)(8936002)(8676002)(41300700001)(52536014)(110136005)(54906003);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?iso-8859-1?Q?Uttz7BPwPg4VeNJDZn/KUSvjnzp/jw6x2GvBgL6t/RXx1aIh6ho2DcqstE?= =?iso-8859-1?Q?f9hOx4nsgTne/erpZZdxgQmEN/lJgmnV2GJOMOiZCKbXarxtuwfYplDzsc?= =?iso-8859-1?Q?YGsgBA4PI6iAfXHmTWOB77HYw4IjSCMcnWKUWt2Bq4HOVhNiKHuFKZ/oOI?= =?iso-8859-1?Q?hsW5kjXE6VkBss6o6VJ1gl/iaJTZ5LqnPTPMCPHk2gTOk+UxBB9g7UN2Ay?= =?iso-8859-1?Q?vhlOH0mt0OgNfWYVPGyatFvp9LoU0bJ20OOOsC5nDJBa6nzG3BD1s0qbdA?= =?iso-8859-1?Q?zMmLpX8rWMWbrJmrltOeuAHGESDnmDOOMsuakgawAvo18KS4uGlWNU0mE2?= =?iso-8859-1?Q?sLFV2SxnD0eyJyEP+PAQ6i0cHa4fR85pvwfbtJqQ5qPFOMyP736A2IjBUH?= =?iso-8859-1?Q?wRqrneSi0ygCJZof4pI7QSoWY8PL7ezbOUHWIHy8SQwFw55tOas/8XQhaG?= =?iso-8859-1?Q?sexjIoyWwOC0rrtjznNzOWhK6OZCm4J9jxOJ8d28vRN3RGimgn8qq2AU8z?= =?iso-8859-1?Q?ZSI4YrdDiaayNf2ioqobngNp5uvUaVbKLDkqZ+lcPCeEka9QfGpRFStT83?= =?iso-8859-1?Q?H16MlqzTHPQX/SHCCdM88ypNmuC/AIwEOrevM1xYVIDubWqQYf9yRP1OkS?= =?iso-8859-1?Q?n8ZHhqQAi6n2tzKj8+dZOoxwkp6DQ/qoo8TJWXaNFKakCFESoVQ1kbYRDU?= =?iso-8859-1?Q?lLvihGkrz4BusGBMBqt/YnakCMH7/1Xgzmo/rOtbg/nFFb6fdwWdyWUHNa?= =?iso-8859-1?Q?4A5P1TSrQg3fjyRleJC6XlNJGyqbvyubfw9cbId0AuKRgsAb9Ndom2lvFr?= =?iso-8859-1?Q?GC3R6LYm/1Nbkl3FpMOwMSQGfpxOYETP3LcKAGGKIDIxkzSAGpQDWpN1nX?= =?iso-8859-1?Q?nRujRjhkWZ01EmItTrh8vM245QoQuBZIg4GcavO8wM/ZXlHl7np4b0ZheK?= =?iso-8859-1?Q?6GRYuGJHcn1WlBiPbG04HXzbaPldTE9fI7qGoU1SDUL1hDZsW7XT6wbgWE?= =?iso-8859-1?Q?1c3OdT5+iK5E35lW2flKInjrB/KBAKHGRuYCa8Leut0TUwQUFKlyQo5x4G?= =?iso-8859-1?Q?NMsOS/C5yR2ctWOMwW51nOTZn4iCjzA7FyeMGy4SlO3cNQ5RtDw9t5/rBz?= =?iso-8859-1?Q?T37FPZOXPJaHURLpiWuEU+DMmoI/lTpidv0DXxYYB4b9tI4WoUpu0mlb6i?= =?iso-8859-1?Q?GMUynxbDwHNNCQ7byH1WsRySITTxitVEeU1GLuAuzrzLihsiJv96xQ/2NZ?= =?iso-8859-1?Q?cyoPl86zfXezx+tADeBqxCJZdswxjsdjwhXy4BEx86H+7FjWpxAlTn60hS?= =?iso-8859-1?Q?I5MBu6UlCBM5O1NtE/t6cV3Y+/GYiEuFpC/qCY4t04yszIDIeaZoh5R7Jk?= =?iso-8859-1?Q?EL3FC5ikbMuwG0LWet+MBRzGP8tiY4YJTcVNffwFT43nkUjIbIAqMvmJsH?= =?iso-8859-1?Q?VAXnOiqLtBsI5zcblyLiioaT2co3anHYKDIVxmQQ870/qO75L28utD6Nsi?= =?iso-8859-1?Q?06eWGgK2XpG6XqpZaNoaWAOXz+FpM0iI92gyguwBJGR2qhw0EvNQ0p/8ld?= =?iso-8859-1?Q?mgjgqm8jDaJz3oeGWAYzlAmff2OS6ymJbVJycTDUJN8kQ8ic5g=3D=3D?= Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: BL1PR12MB5849.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 827ea8c8-17c2-4d91-ac7c-08db793e8103 X-MS-Exchange-CrossTenant-originalarrivaltime: 30 Jun 2023 07:49:16.2474 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: QRwJft7cIhMvoMG635/SHEDt5cOXq5cjGb6vr/R9B7BlATR/yLpDNugZrgH5NkD8nhJK6I12uRTvBPYHJ9bxNw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR12MB4169 Chen, Jiqian would like to recall the message, "[LINUX KERNEL PATCH v2 0/1]= add S3 support for virtgpu".= From xen-devel-bounces@lists.xenproject.org Fri Jun 30 08:05:59 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 30 Jun 2023 08:05:59 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557354.870626 (Exim 4.92) (envelope-from ) id 1qF98V-0004D1-2b; Fri, 30 Jun 2023 08:05:47 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557354.870626; Fri, 30 Jun 2023 08:05:47 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qF98U-0004Cu-Vq; Fri, 30 Jun 2023 08:05:46 +0000 Received: by outflank-mailman (input) for mailman id 557354; Fri, 30 Jun 2023 08:05:45 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qF98T-0004Co-B0 for xen-devel@lists.xenproject.org; Fri, 30 Jun 2023 08:05:45 +0000 Received: from mail-ej1-x634.google.com (mail-ej1-x634.google.com [2a00:1450:4864:20::634]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id e7e624e2-171c-11ee-8611-37d641c3527e; Fri, 30 Jun 2023 10:05:41 +0200 (CEST) Received: by mail-ej1-x634.google.com with SMTP id a640c23a62f3a-98e109525d6so277573666b.0 for ; Fri, 30 Jun 2023 01:05:41 -0700 (PDT) Received: from [127.0.0.1] (dynamic-089-012-131-254.89.12.pool.telefonica.de. [89.12.131.254]) by smtp.gmail.com with ESMTPSA id e23-20020a170906045700b00992c92af6f4sm983307eja.144.2023.06.30.01.05.40 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Fri, 30 Jun 2023 01:05:40 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: e7e624e2-171c-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1688112341; x=1690704341; h=content-transfer-encoding:mime-version:message-id:references :in-reply-to:subject:cc:to:from:date:from:to:cc:subject:date :message-id:reply-to; bh=W548W94gIUu0+BCL3qmZZRt6kia8R4D6w9rTpVoB54E=; b=rDoRNA8g9LkDkME65XMOtgtbGNa18T3HmmYdeksI4bBRo1zfZV2OBZoKtq708q+FBx ioeVq1H/JglA9rCllshVJDnHLvANy/rzN3zOtJxfM/q9tqKGzF98A7CV4G5Xq1j1+fnK relzBY8LJC+hiyCApuzJagYVTRQ0VbE5uUf4NhPB66Ly+W10TURpFff08gWiz6y2qdpP Glk58ipWgXOx5fsmQLT2zCp4IcsZ/HLj/IcE7DXC1hzBus/YTYod5KX/BZ2jaJvaQXk+ +whryVEn3Sz8lJZUeOF7yOBp9+LWnRkn6jCqjSLw9qck60ZhouCXhIRgsPad0M0Zr9tW mQ5g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1688112341; x=1690704341; h=content-transfer-encoding:mime-version:message-id:references :in-reply-to:subject:cc:to:from:date:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=W548W94gIUu0+BCL3qmZZRt6kia8R4D6w9rTpVoB54E=; b=hhSbEv7DEJ/jF3PhZrCgDMNMrYx/iJ6GJyNNr3muxGmh5iLzP0iSBi6t9TvPpHOFgr QMENvv4jV908iyLo/iN1V/AGfMOHdiWzIU4X+nPrAhySIhbRnpeOigUdpnal5RC5RDR1 8ip2bk7vyWQ9ntpsYBm0RfUIeoCvK1DtoKZWqPKGeXsG2JRgdXOIbqjLny4KWUanKyGU iZ3sP/DZ2mzt3TQLCEylGPWDlAQS7SSf0/3DRbhmyYB+EzWMe/Z8qIFVOOIz+aH+s9bp IJd6kHHafs0O2TilmmIc5s2F4IIuaRnYMALCbNCla1ol3MQRK1XP1csy24Qqaf2pKr1N LgWQ== X-Gm-Message-State: ABy/qLY4OgVBBeGQEa0zC9ZDbEcp5OwCF6DDUHfRUfiUhA3HIC0oZveB Z5Dotz5HYyr9/3ukEiEeAuE= X-Google-Smtp-Source: APBJJlGQgvHJJleDfcXmbEhxCodIf5NF+jBIVZef5dv1E0voP2B1/gg4F/Ep9yW9haB1kJRVUkSrwQ== X-Received: by 2002:a17:906:7fc5:b0:991:7874:e882 with SMTP id r5-20020a1709067fc500b009917874e882mr1955534ejs.3.1688112340774; Fri, 30 Jun 2023 01:05:40 -0700 (PDT) Date: Fri, 30 Jun 2023 08:05:29 +0000 From: Bernhard Beschow To: Olaf Hering CC: qemu-devel@nongnu.org, Paolo Bonzini , John Snow , xen-devel@lists.xenproject.org, Stefano Stabellini Subject: Re: [PATCH v2] piix: fix regression during unplug in Xen HVM domUs In-Reply-To: <20230630092921.392b302d.olaf@aepfle.de> References: <20210317070046.17860-1-olaf@aepfle.de> <4441d32f-bd52-9408-cabc-146b59f0e4dc@redhat.com> <20210325121219.7b5daf76.olaf@aepfle.de> <20230509225818.GA16290@aepfle.de> <20230626231901.5b5d11c1.olaf@aepfle.de> <5DB37FA5-41DF-4ED6-8C8A-CDDD6F276F42@gmail.com> <20230627140740.2736f6e8.olaf@aepfle.de> <4F5609FD-4A89-4450-89E2-3311CC5A9317@gmail.com> <20230630092921.392b302d.olaf@aepfle.de> Message-ID: <367317C5-DB65-40EF-B45B-97E0E802A994@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Am 30=2E Juni 2023 07:29:21 UTC schrieb Olaf Hering : >Wed, 28 Jun 2023 09:27:16 +0000 Bernhard Beschow : > >> Would you mind sending a patch fixing the BMIBA register to be reset as= 32 bit? > >Will do so next week=2E Great! Perhaps it could then be picked up by maintainers together with my = other IDE changes=2E > >Are the specs for this chipset available, Yes=2E Have a look for piix3/piix4 here: https://www=2Eintel=2Ecom/design/= archives/chipsets/440/index=2Ehtm > does this address really need >to be accessed in quantities of u32, or is perhaps u16 required? I guess >for this specific bug pci_set_word may work as well=2E > >Either way, commit e6a71ae327a388723182a504bb253777ec36869b was wrong=2E >Does the comment added in this commit mean, the quantity is really u32? As per the datasheet (and per the comment in the source code) the BMIBA re= gister is 32 bit=2E Search the datasheet for the register name and you'll a= lso find its default value which it holds after reset=2E Best regards, Bernhard > > >Olaf From xen-devel-bounces@lists.xenproject.org Fri Jun 30 08:31:39 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 30 Jun 2023 08:31:39 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557359.870636 (Exim 4.92) (envelope-from ) id 1qF9XQ-0007dp-3r; Fri, 30 Jun 2023 08:31:32 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557359.870636; Fri, 30 Jun 2023 08:31:32 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qF9XQ-0007di-0K; Fri, 30 Jun 2023 08:31:32 +0000 Received: by outflank-mailman (input) for mailman id 557359; Fri, 30 Jun 2023 08:31:30 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qF9XO-0007dX-IG; Fri, 30 Jun 2023 08:31:30 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qF9XO-0000Bw-Ct; Fri, 30 Jun 2023 08:31:30 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qF9XO-0008Rt-4C; Fri, 30 Jun 2023 08:31:30 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qF9XO-0002Um-3m; Fri, 30 Jun 2023 08:31:30 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=47qkBBTMs+nzpSqOQnqjizgZPvTLvBVo8q+/mCKHFXk=; b=XjW1LVkSfNsgRoEIoT4zggop7V K2Jl2d/IHfr/oz+wUtdBI2DmkQ1MIbfVzqhr5OVQ+7IJydMIgrPEbg7wTne3nW8AhH+lQrT3eVzgi OnItowqcgt3moljxyL6lGkuEYyl/1+sD2AgewA3rJtxofSVA4I7luv7F27SD/IuvY/bs=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [linux-linus test] 181644: regressions - trouble: broken/fail/pass X-Osstest-Failures: linux-linus:test-amd64-amd64-xl-pvshim::broken:regression linux-linus:test-amd64-amd64-xl-pvshim:host-install(5):broken:regression linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:leak-check/basis(11):fail:regression linux-linus:test-amd64-amd64-pygrub:leak-check/basis(11):fail:regression linux-linus:test-amd64-amd64-xl-qemut-debianhvm-amd64:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-multivcpu:xen-boot:fail:regression linux-linus:test-amd64-amd64-libvirt-qcow2:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl:xen-boot:fail:regression linux-linus:test-amd64-amd64-libvirt-xsm:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-xsm:xen-boot:fail:regression linux-linus:test-amd64-amd64-libvirt:leak-check/basis(11):fail:regression linux-linus:test-amd64-amd64-xl-credit1:leak-check/basis(11):fail:regression linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64:leak-check/basis(11):fail:regression linux-linus:test-amd64-amd64-xl-pvhv2-amd:leak-check/basis(11):fail:regression linux-linus:test-amd64-amd64-freebsd11-amd64:leak-check/basis(11):fail:regression linux-linus:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:xen-boot:fail:regression linux-linus:test-amd64-amd64-libvirt-raw:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:leak-check/basis(11):fail:regression linux-linus:test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm:xen-boot:fail:regression linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-shadow:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-credit2:debian-install:fail:regression linux-linus:test-amd64-coresched-amd64-xl:debian-install:fail:regression linux-linus:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install:fail:regression linux-linus:test-amd64-amd64-libvirt-pair:xen-boot/src_host:fail:regression linux-linus:test-amd64-amd64-xl-pvhv2-intel:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-qemuu-ovmf-amd64:debian-hvm-install:fail:regression linux-linus:test-amd64-amd64-xl-vhd:xen-boot:fail:regression linux-linus:test-amd64-amd64-freebsd12-amd64:xen-boot:fail:regression linux-linus:test-amd64-amd64-qemuu-nested-intel:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:xen-boot:fail:regression linux-linus:test-amd64-amd64-pair:xen-boot/src_host:fail:regression linux-linus:test-amd64-amd64-pair:xen-boot/dst_host:fail:regression linux-linus:test-armhf-armhf-xl-credit1:xen-boot:fail:regression linux-linus:test-arm64-arm64-libvirt-raw:guest-start:fail:regression linux-linus:test-arm64-arm64-xl-vhd:guest-start:fail:regression linux-linus:test-amd64-amd64-examine:reboot:fail:regression linux-linus:test-amd64-amd64-examine-uefi:reboot:fail:regression linux-linus:test-amd64-amd64-xl-rtds:leak-check/basis(11):fail:allowable linux-linus:test-armhf-armhf-examine:reboot:fail:nonblocking linux-linus:test-armhf-armhf-xl-arndale:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-raw:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-credit2:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-rtds:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-qcow2:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-vhd:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-multivcpu:xen-boot:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: linux=1b722407a13b7f8658d2e26917791f32805980a2 X-Osstest-Versions-That: linux=6c538e1adbfc696ac4747fb10d63e704344f763d From: osstest service owner Date: Fri, 30 Jun 2023 08:31:30 +0000 flight 181644 linux-linus real [real] http://logs.test-lab.xenproject.org/osstest/logs/181644/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: test-amd64-amd64-xl-pvshim broken test-amd64-amd64-xl-pvshim 5 host-install(5) broken REGR. vs. 180278 test-amd64-amd64-xl-qemuu-ws16-amd64 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-xl-qemut-ws16-amd64 11 leak-check/basis(11) fail REGR. vs. 180278 test-amd64-amd64-pygrub 11 leak-check/basis(11) fail REGR. vs. 180278 test-amd64-amd64-xl-qemut-debianhvm-amd64 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-xl-qemuu-win7-amd64 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-xl-qemut-win7-amd64 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-xl-multivcpu 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-libvirt-qcow2 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-xl 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-libvirt-xsm 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-xl-xsm 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-libvirt 11 leak-check/basis(11) fail REGR. vs. 180278 test-amd64-amd64-xl-credit1 11 leak-check/basis(11) fail REGR. vs. 180278 test-amd64-amd64-xl-qemuu-debianhvm-amd64 11 leak-check/basis(11) fail REGR. vs. 180278 test-amd64-amd64-xl-pvhv2-amd 11 leak-check/basis(11) fail REGR. vs. 180278 test-amd64-amd64-freebsd11-amd64 11 leak-check/basis(11) fail REGR. vs. 180278 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-libvirt-raw 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 11 leak-check/basis(11) fail REGR. vs. 180278 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-xl-shadow 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-xl-credit2 12 debian-install fail REGR. vs. 180278 test-amd64-coresched-amd64-xl 12 debian-install fail REGR. vs. 180278 test-amd64-amd64-qemuu-nested-amd 12 debian-hvm-install fail REGR. vs. 180278 test-amd64-amd64-libvirt-pair 12 xen-boot/src_host fail REGR. vs. 180278 test-amd64-amd64-xl-pvhv2-intel 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-xl-qemuu-ovmf-amd64 12 debian-hvm-install fail REGR. vs. 180278 test-amd64-amd64-xl-vhd 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-freebsd12-amd64 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-qemuu-nested-intel 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-pair 12 xen-boot/src_host fail REGR. vs. 180278 test-amd64-amd64-pair 13 xen-boot/dst_host fail REGR. vs. 180278 test-armhf-armhf-xl-credit1 8 xen-boot fail REGR. vs. 180278 test-arm64-arm64-libvirt-raw 13 guest-start fail REGR. vs. 180278 test-arm64-arm64-xl-vhd 13 guest-start fail REGR. vs. 180278 test-amd64-amd64-examine 8 reboot fail REGR. vs. 180278 test-amd64-amd64-examine-uefi 8 reboot fail REGR. vs. 180278 Regressions which are regarded as allowable (not blocking): test-amd64-amd64-xl-rtds 11 leak-check/basis(11) fail REGR. vs. 180278 Tests which did not succeed, but are not blocking: test-armhf-armhf-examine 8 reboot fail like 180278 test-armhf-armhf-xl-arndale 8 xen-boot fail like 180278 test-armhf-armhf-xl 8 xen-boot fail like 180278 test-armhf-armhf-libvirt-raw 8 xen-boot fail like 180278 test-armhf-armhf-xl-credit2 8 xen-boot fail like 180278 test-armhf-armhf-xl-rtds 8 xen-boot fail like 180278 test-armhf-armhf-libvirt 8 xen-boot fail like 180278 test-armhf-armhf-libvirt-qcow2 8 xen-boot fail like 180278 test-armhf-armhf-xl-vhd 8 xen-boot fail like 180278 test-armhf-armhf-xl-multivcpu 8 xen-boot fail like 180278 test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass version targeted for testing: linux 1b722407a13b7f8658d2e26917791f32805980a2 baseline version: linux 6c538e1adbfc696ac4747fb10d63e704344f763d Last test of basis 180278 2023-04-16 19:41:46 Z 74 days Failing since 180281 2023-04-17 06:24:36 Z 74 days 142 attempts Testing same since 181644 2023-06-29 20:43:49 Z 0 days 1 attempts ------------------------------------------------------------ 3308 people touched revisions under test, not listing them all jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl fail test-amd64-coresched-amd64-xl fail test-arm64-arm64-xl pass test-armhf-armhf-xl fail test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm fail test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm fail test-amd64-amd64-xl-qemut-debianhvm-i386-xsm fail test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm fail test-amd64-amd64-libvirt-xsm fail test-arm64-arm64-libvirt-xsm pass test-amd64-amd64-xl-xsm fail test-arm64-arm64-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd fail test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 fail test-amd64-amd64-xl-qemuu-debianhvm-amd64 fail test-amd64-amd64-freebsd11-amd64 fail test-amd64-amd64-freebsd12-amd64 fail test-amd64-amd64-xl-qemuu-ovmf-amd64 fail test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale fail test-amd64-amd64-examine-bios pass test-amd64-amd64-xl-credit1 fail test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 fail test-amd64-amd64-xl-credit2 fail test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 fail test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict fail test-amd64-amd64-examine fail test-arm64-arm64-examine pass test-armhf-armhf-examine fail test-amd64-amd64-qemuu-nested-intel fail test-amd64-amd64-xl-pvhv2-intel fail test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt fail test-armhf-armhf-libvirt fail test-amd64-amd64-xl-multivcpu fail test-armhf-armhf-xl-multivcpu fail test-amd64-amd64-pair fail test-amd64-amd64-libvirt-pair fail test-amd64-amd64-xl-pvshim broken test-amd64-amd64-pygrub fail test-amd64-amd64-libvirt-qcow2 fail test-armhf-armhf-libvirt-qcow2 fail test-amd64-amd64-libvirt-raw fail test-arm64-arm64-libvirt-raw fail test-armhf-armhf-libvirt-raw fail test-amd64-amd64-xl-rtds fail test-armhf-armhf-xl-rtds fail test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow fail test-amd64-amd64-xl-shadow fail test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi fail test-amd64-amd64-xl-vhd fail test-arm64-arm64-xl-vhd fail test-armhf-armhf-xl-vhd fail ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary broken-job test-amd64-amd64-xl-pvshim broken broken-step test-amd64-amd64-xl-pvshim host-install(5) Not pushing. (No revision log; it would be 507883 lines long.) From xen-devel-bounces@lists.xenproject.org Fri Jun 30 08:41:24 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 30 Jun 2023 08:41:24 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557367.870645 (Exim 4.92) (envelope-from ) id 1qF9gj-0000mU-52; Fri, 30 Jun 2023 08:41:09 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557367.870645; Fri, 30 Jun 2023 08:41:09 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qF9gj-0000mN-25; Fri, 30 Jun 2023 08:41:09 +0000 Received: by outflank-mailman (input) for mailman id 557367; Fri, 30 Jun 2023 08:41:07 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qF9gh-0000mH-AO for xen-devel@lists.xen.org; Fri, 30 Jun 2023 08:41:07 +0000 Received: from mail.xenproject.org (mail.xenproject.org [104.130.215.37]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id d726ee15-1721-11ee-b237-6b7b168915f2; Fri, 30 Jun 2023 10:41:02 +0200 (CEST) Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qF9gZ-0000X0-Rn; Fri, 30 Jun 2023 08:40:59 +0000 Received: from gw1.octic.net ([88.97.20.152] helo=[10.0.1.240]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qF9gZ-0008E8-MP; Fri, 30 Jun 2023 08:40:59 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: d726ee15-1721-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=6qmLfzdkFbxGd/LRfKo9vStPeWLAt4sETm0prF4+BbE=; b=uncwWRiCUUOkFIccckQC52DfBS V+F2OalNQSTuwfPcFfqml8/JjWyAb7MoQgKop+Rg1v9phvYCigpG3Y2R2HizHtECl6IHR59f+Ldgl Yt3iTad0tcRUSwTE0GRnNJBRVs+r55HzqzT6eDsVa3R/hTTS1aSJsjwyCIikgJvF3P20=; Message-ID: <8c0a5345-833c-281b-b4f5-59b335e730ab@xen.org> Date: Fri, 30 Jun 2023 09:40:57 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH V3.1] libxl: arm: Add grant_usage parameter for virtio devices Content-Language: en-US To: Viresh Kumar , George Dunlap , Nick Rosbrook Cc: xen-devel@lists.xen.org, Juergen Gross , Vincent Guittot , stratos-dev@op-lists.linaro.org, =?UTF-8?Q?Alex_Benn=c3=a9e?= , Mathieu Poirier , Oleksandr Tyshchenko , Erik Schilling , Anthony PERARD References: <0e347b2f4817cc578a5f8e41bf70503ae8cf69e3.1685684586.git.viresh.kumar@linaro.org> <7a0afe5aebba4c0b5be43a517dedf41d4e4ddd57.1686636036.git.viresh.kumar@linaro.org> <20230630044032.khorme7rnlgzvl2u@vireshk-i7> From: Julien Grall In-Reply-To: <20230630044032.khorme7rnlgzvl2u@vireshk-i7> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi, On 30/06/2023 05:40, Viresh Kumar wrote: > On 13-06-23, 11:48, Anthony PERARD wrote: >> On Tue, Jun 13, 2023 at 11:32:16AM +0530, Viresh Kumar wrote: >>> Currently, the grant mapping related device tree properties are added if >>> the backend domain is not Dom0. While Dom0 is privileged and can do >>> foreign mapping for the entire guest memory, it is still desired for >>> Dom0 to access guest's memory via grant mappings and hence map only what >>> is required. >>> >>> This commit adds the "grant_usage" parameter for virtio devices, which >>> provides better control over the functionality. >>> >>> Signed-off-by: Viresh Kumar >>> --- >>> V3->V3.1: >>> - Print "0" or "1" in xenstore instead of "True" or "False" for grant_usage. >> >> Reviewed-by: Anthony PERARD > > Hi, > > I still don't see this patch pushed upstream. Are we waiting for some > release to happen ? The patch is missing an ack from the golang maintainers. I noticed you didn't CC them (done now). In the future, I would suggest to use one of the scripts in the repo to find the appropriate maintainers: * scripts/get_maintainers.pl: It will output the list of maintainers * scripts/add_maintainers.pl: It will add the maintainers for each patch files in a given directory. Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Fri Jun 30 08:42:29 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 30 Jun 2023 08:42:29 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557371.870655 (Exim 4.92) (envelope-from ) id 1qF9hp-0001J9-EE; Fri, 30 Jun 2023 08:42:17 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557371.870655; Fri, 30 Jun 2023 08:42:17 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qF9hp-0001J2-Bb; Fri, 30 Jun 2023 08:42:17 +0000 Received: by outflank-mailman (input) for mailman id 557371; Fri, 30 Jun 2023 08:42:15 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qF9hn-0001Is-E6 for xen-devel@lists.xen.org; Fri, 30 Jun 2023 08:42:15 +0000 Received: from mail.xenproject.org (mail.xenproject.org [104.130.215.37]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 02ea6de3-1722-11ee-b237-6b7b168915f2; Fri, 30 Jun 2023 10:42:14 +0200 (CEST) Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qF9hl-0000Yb-Bc; Fri, 30 Jun 2023 08:42:13 +0000 Received: from gw1.octic.net ([88.97.20.152] helo=[10.0.1.240]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qF9hl-0008F6-6o; Fri, 30 Jun 2023 08:42:13 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 02ea6de3-1722-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To: References:Cc:To:From:Subject:MIME-Version:Date:Message-ID; bh=K/n7jGEoOtPrHheV2OPAtu6jXvjbm4T9dTDasf34Knc=; b=lXDJ6GsVYtCQpTH8ruypQpHJ5e NEdmVt+3nUo931DdyGN0ZOIuK4Jyvd1RLmZm3L2s/pAjGedauAVeGQeOkvaP/f5L/L6g+6SXN9Ps3 Gj+5batJaLlB+kM8B2J43XkvsH067U9JVHkNyK8PXC4xMzGwxbtyYxjQc628+5t+cw5Y=; Message-ID: <6fde882c-b268-bb17-92e7-101de32dc71e@xen.org> Date: Fri, 30 Jun 2023 09:42:11 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH V3.1] libxl: arm: Add grant_usage parameter for virtio devices Content-Language: en-US From: Julien Grall To: Viresh Kumar , George Dunlap , Nick Rosbrook Cc: xen-devel@lists.xen.org, Juergen Gross , Vincent Guittot , stratos-dev@op-lists.linaro.org, =?UTF-8?Q?Alex_Benn=c3=a9e?= , Mathieu Poirier , Oleksandr Tyshchenko , Erik Schilling , Anthony PERARD References: <0e347b2f4817cc578a5f8e41bf70503ae8cf69e3.1685684586.git.viresh.kumar@linaro.org> <7a0afe5aebba4c0b5be43a517dedf41d4e4ddd57.1686636036.git.viresh.kumar@linaro.org> <20230630044032.khorme7rnlgzvl2u@vireshk-i7> <8c0a5345-833c-281b-b4f5-59b335e730ab@xen.org> In-Reply-To: <8c0a5345-833c-281b-b4f5-59b335e730ab@xen.org> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit (correcting the e-mail from Nick) On 30/06/2023 09:40, Julien Grall wrote: > Hi, > > On 30/06/2023 05:40, Viresh Kumar wrote: >> On 13-06-23, 11:48, Anthony PERARD wrote: >>> On Tue, Jun 13, 2023 at 11:32:16AM +0530, Viresh Kumar wrote: >>>> Currently, the grant mapping related device tree properties are >>>> added if >>>> the backend domain is not Dom0. While Dom0 is privileged and can do >>>> foreign mapping for the entire guest memory, it is still desired for >>>> Dom0 to access guest's memory via grant mappings and hence map only >>>> what >>>> is required. >>>> >>>> This commit adds the "grant_usage" parameter for virtio devices, which >>>> provides better control over the functionality. >>>> >>>> Signed-off-by: Viresh Kumar >>>> --- >>>> V3->V3.1: >>>> - Print "0" or "1" in xenstore instead of "True" or "False" for >>>> grant_usage. >>> >>> Reviewed-by: Anthony PERARD >> >> Hi, >> >> I still don't see this patch pushed upstream. Are we waiting for some >> release to happen ? > > The patch is missing an ack from the golang maintainers. I noticed you > didn't CC them (done now). > > In the future, I would suggest to use one of the scripts in the repo to > find the appropriate maintainers: >  * scripts/get_maintainers.pl: It will output the list of maintainers >  * scripts/add_maintainers.pl: It will add the maintainers for each >    patch files in a given directory. > > Cheers, > -- Julien Grall From xen-devel-bounces@lists.xenproject.org Fri Jun 30 08:44:06 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 30 Jun 2023 08:44:06 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557375.870666 (Exim 4.92) (envelope-from ) id 1qF9jZ-0001uJ-Qq; Fri, 30 Jun 2023 08:44:05 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557375.870666; Fri, 30 Jun 2023 08:44:05 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qF9jZ-0001uC-Nw; Fri, 30 Jun 2023 08:44:05 +0000 Received: by outflank-mailman (input) for mailman id 557375; Fri, 30 Jun 2023 08:44:04 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qF9jY-0001u2-Qe for xen-devel@lists.xen.org; Fri, 30 Jun 2023 08:44:04 +0000 Received: from mail-pl1-x62c.google.com (mail-pl1-x62c.google.com [2607:f8b0:4864:20::62c]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 437dc010-1722-11ee-b237-6b7b168915f2; Fri, 30 Jun 2023 10:44:03 +0200 (CEST) Received: by mail-pl1-x62c.google.com with SMTP id d9443c01a7336-1b80b343178so10354105ad.0 for ; Fri, 30 Jun 2023 01:44:03 -0700 (PDT) Received: from localhost ([122.172.87.195]) by smtp.gmail.com with ESMTPSA id n10-20020a170902d2ca00b001b3cac25f82sm10302271plc.139.2023.06.30.01.44.00 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 30 Jun 2023 01:44:01 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 437dc010-1722-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1688114642; x=1690706642; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:from:to:cc:subject:date:message-id:reply-to; bh=povlhvs4UHlXNtVAhf3Lo76RsMYqdqmIBZ/BnrwgAxE=; b=iuh0qvxiDMpX5mzXu7+bpHFZw6/613yVwKfLV7LweQZOAWwuNYvYBAjG6A3jdgIBmA qbWEf4Apinwmy9QjlX0Gyjmu2inY42LOcMA3iBqF+fiOC6xqu7U2/BP8H45dabwZKEY0 jsOF5t5iRUko0IZ9h022qRX5020gaYtJBLMVPcYq+w+McU0UJZ8bc6dxUQHKVaEhWQUJ sxq61kCR2N0R6FoYXFaJ3EPl5hgkd0ptpYawZRySC19hcO/5l1Zrvda4JcxpnHTAd4Nq 0aih5p348or6BARnF7qhX5fGTGIXH6QFraXRDzNYPXz+ovHQY3+2gD1Dm9+FtocqcRup B/8w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1688114642; x=1690706642; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=povlhvs4UHlXNtVAhf3Lo76RsMYqdqmIBZ/BnrwgAxE=; b=bHFXt70erCoQB/tdO8mPnKOAj5Cl8lNbt7qUwbgruyrP7f3vQGKg2CO0AajCzVkLZx eUcGrTcIEForFwPBCVA3NIx6TKeSL2R4kt9R2svNUU0vEuQPZcJRQhsHA9vUJvCaVt9V ehxecll4si8xiwVzMIxNEIseQAxXZj7U8p1vOtDi2ktKEAfIc1B8o4l2ij/Hr8i+wDO4 ubdYDygixc068eOZz9O0cUFdc6P3LaGjjYtuE6Nh5qf4X8cDjv+J8aljHHpNNRi6fCB0 g85ZeC51uinzuN7s4Txa/ToQ5Gee23WBuKWwQ23cIzNi2ex4he+wcJiUI04N/udYhNrp S1TQ== X-Gm-Message-State: ABy/qLYyqGshdEH1ISjQ7FS++PK8GPKve94+DRoFVd1reBIq609yMAcI 8vn3SIe6iT7jzEMyBM193VnbBQ== X-Google-Smtp-Source: APBJJlHmnHXMgzgIcMK+Fd20ECvaWJKKhakfftqB1jw6XxVAUyixvQj7aSjkcrWhsmOYOXnGiI03WA== X-Received: by 2002:a17:902:da92:b0:1b7:e646:4cc4 with SMTP id j18-20020a170902da9200b001b7e6464cc4mr1223815plx.28.1688114641694; Fri, 30 Jun 2023 01:44:01 -0700 (PDT) Date: Fri, 30 Jun 2023 14:13:58 +0530 From: Viresh Kumar To: Julien Grall Cc: George Dunlap , Nick Rosbrook , xen-devel@lists.xen.org, Juergen Gross , Vincent Guittot , stratos-dev@op-lists.linaro.org, Alex =?utf-8?Q?Benn=C3=A9e?= , Mathieu Poirier , Oleksandr Tyshchenko , Erik Schilling , Anthony PERARD Subject: Re: [PATCH V3.1] libxl: arm: Add grant_usage parameter for virtio devices Message-ID: <20230630084358.t3gxdei6g26az6x5@vireshk-i7> References: <0e347b2f4817cc578a5f8e41bf70503ae8cf69e3.1685684586.git.viresh.kumar@linaro.org> <7a0afe5aebba4c0b5be43a517dedf41d4e4ddd57.1686636036.git.viresh.kumar@linaro.org> <20230630044032.khorme7rnlgzvl2u@vireshk-i7> <8c0a5345-833c-281b-b4f5-59b335e730ab@xen.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <8c0a5345-833c-281b-b4f5-59b335e730ab@xen.org> On 30-06-23, 09:40, Julien Grall wrote: > The patch is missing an ack from the golang maintainers. I noticed you > didn't CC them (done now). Ahh, thanks. > In the future, I would suggest to use one of the scripts in the repo to find > the appropriate maintainers: > * scripts/get_maintainers.pl: It will output the list of maintainers > * scripts/add_maintainers.pl: It will add the maintainers for each > patch files in a given directory. Right. -- viresh From xen-devel-bounces@lists.xenproject.org Fri Jun 30 08:48:32 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 30 Jun 2023 08:48:32 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557379.870677 (Exim 4.92) (envelope-from ) id 1qF9ni-0002Y4-CI; Fri, 30 Jun 2023 08:48:22 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557379.870677; Fri, 30 Jun 2023 08:48:22 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qF9ni-0002Xx-7j; Fri, 30 Jun 2023 08:48:22 +0000 Received: by outflank-mailman (input) for mailman id 557379; Fri, 30 Jun 2023 08:48:21 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qF9nh-0002Xp-Ed for xen-devel@lists.xenproject.org; Fri, 30 Jun 2023 08:48:21 +0000 Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.129.124]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id dc3e18cc-1722-11ee-b237-6b7b168915f2; Fri, 30 Jun 2023 10:48:19 +0200 (CEST) Received: from mail-vk1-f199.google.com (mail-vk1-f199.google.com [209.85.221.199]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-295-9FaEi0l5PcG8A44kDw8pkA-1; Fri, 30 Jun 2023 04:48:14 -0400 Received: by mail-vk1-f199.google.com with SMTP id 71dfb90a1353d-4718c0dea6fso427738e0c.1 for ; Fri, 30 Jun 2023 01:48:14 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: dc3e18cc-1722-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1688114898; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=3TB8wM4H6TBhOOT2MNHjZR0ekToWhlAhT8+JOtuFFcM=; b=QBwW43K3qvwzDoEf1yZ6aSBfxDPKNoaatZOAQxAC7Lv5+RcyPuJZx7XrpHC9ktf4Cr29ve CP1ku1tWe50GEkIVUEB2L6Il8wyT1lezovGjvLWCTy/oxj6eIq4Xpprs1npnpS+Nf2C6U3 4J0vvFk43t9C7HjpFgUlCIAmzBWqfAI= X-MC-Unique: 9FaEi0l5PcG8A44kDw8pkA-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1688114894; x=1690706894; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=3TB8wM4H6TBhOOT2MNHjZR0ekToWhlAhT8+JOtuFFcM=; b=Z99843DNYn2BP3GqgKXut0OCIVVkdCtfzL8q4tCcNxxTjBuGKpQ3SaTG0ytUqm3YxC WJ5tV4c2TxaVJLm5owHi+2DCJx2f0+fBDt5hW+0aaHAraxft2rOOIwreehEtx9vU1UUT 5YrkhSRxLRogOZntJZd/lu8e01sKFk9xF+wZDRfQCvqIvFH9EjObJYw4sd1aS3Cv8VEa sgSDdJWE9N0QoPoTeerNsAGslJfbcSBKkViBxSI1h2ZifgElOIF4XhJTduNtIPe2fy+b AaEUlOv1af+GlMeCdoENjz6CAeAxTb8Xq/o2B+Frjr51qxJpm4b+kY53VseswZO7eGrX Qfbg== X-Gm-Message-State: ABy/qLYxV7WCHnN3upfywcHhXLow1RWoi9eb0gc1MkxrytpTxObyQ2an Riu0dY4Q4xxY//mrc25e6vFg4Oai2J6rhKf8V07aOIGDn0B3XBR3RUD319VEur1v0pwgRlknQp5 X9q5Y6UPWzl3+2hF46HwqORNV0ySTURV3F10nQn62gxs= X-Received: by 2002:a1f:3d8c:0:b0:471:875d:598e with SMTP id k134-20020a1f3d8c000000b00471875d598emr1400122vka.14.1688114894112; Fri, 30 Jun 2023 01:48:14 -0700 (PDT) X-Google-Smtp-Source: APBJJlGLUzgXllamVoix4PwpFQXjNbgp7rb8mGurpVINlrMfIinygDVMGUbf2XJJGJivCKigjBqJZrM1Q0MOPOs/BI8= X-Received: by 2002:a1f:3d8c:0:b0:471:875d:598e with SMTP id k134-20020a1f3d8c000000b00471875d598emr1400118vka.14.1688114893881; Fri, 30 Jun 2023 01:48:13 -0700 (PDT) MIME-Version: 1.0 References: <20210317070046.17860-1-olaf@aepfle.de> <4441d32f-bd52-9408-cabc-146b59f0e4dc@redhat.com> <20210325121219.7b5daf76.olaf@aepfle.de> <20230509225818.GA16290@aepfle.de> <20230626231901.5b5d11c1.olaf@aepfle.de> <5DB37FA5-41DF-4ED6-8C8A-CDDD6F276F42@gmail.com> <20230627140740.2736f6e8.olaf@aepfle.de> <4F5609FD-4A89-4450-89E2-3311CC5A9317@gmail.com> In-Reply-To: <4F5609FD-4A89-4450-89E2-3311CC5A9317@gmail.com> From: Paolo Bonzini Date: Fri, 30 Jun 2023 10:48:02 +0200 Message-ID: Subject: Re: [PATCH v2] piix: fix regression during unplug in Xen HVM domUs To: Bernhard Beschow Cc: Olaf Hering , qemu-devel , John Snow , "open list:X86" , Stefano Stabellini X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: multipart/alternative; boundary="0000000000009718d505ff54e07a" --0000000000009718d505ff54e07a Content-Type: text/plain; charset="UTF-8" Il mer 28 giu 2023, 13:28 Bernhard Beschow ha scritto: > > > Am 27. Juni 2023 12:07:40 UTC schrieb Olaf Hering : > >Tue, 27 Jun 2023 10:12:50 +0000 Bernhard Beschow : > > > >> The BAR is a 32 bit register whose default value is 0x00000001. I think > what's supposed to happen here is a pci_set_long() rather than a > pci_set_byte(). > > > >Indeed, the u32 at that address changes from c121 to c101 with the > current code. > > Neat! Would you mind sending a patch fixing the BMIBA register to be reset > as 32 bit? > I think we should also check why writing the command register is not disabling the BAR as well. Paolo > Best regards, > Bernhard > > > >Olaf > > --0000000000009718d505ff54e07a Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
--0000000000009718d505ff54e07a-- From xen-devel-bounces@lists.xenproject.org Fri Jun 30 09:12:39 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 30 Jun 2023 09:12:39 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557383.870686 (Exim 4.92) (envelope-from ) id 1qFAB1-0006JR-4N; Fri, 30 Jun 2023 09:12:27 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557383.870686; Fri, 30 Jun 2023 09:12:27 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFAB1-0006JK-1o; Fri, 30 Jun 2023 09:12:27 +0000 Received: by outflank-mailman (input) for mailman id 557383; Fri, 30 Jun 2023 09:12:25 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFAAz-0006JC-Eg for xen-devel@lists.xenproject.org; Fri, 30 Jun 2023 09:12:25 +0000 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by se1-gles-sth1.inumbo.com (Halon) with ESMTP id 382ebb0c-1726-11ee-b237-6b7b168915f2; Fri, 30 Jun 2023 11:12:22 +0200 (CEST) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 9453BC14; Fri, 30 Jun 2023 02:13:04 -0700 (PDT) Received: from e125770.cambridge.arm.com (e125770.arm.com [10.1.199.1]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 006003F73F; Fri, 30 Jun 2023 02:12:18 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 382ebb0c-1726-11ee-b237-6b7b168915f2 From: Luca Fancellu To: xen-devel@lists.xenproject.org Cc: wei.chen@arm.com, Andrew Cooper , George Dunlap , Jan Beulich , Julien Grall , Stefano Stabellini , Wei Liu , Henry Wang , Community Manager , Doug Goldstein , Bertrand Marquis , Volodymyr Babchuk , Anthony PERARD Subject: [RFC PATCH] xen/arm: Rebranding dom0less feature Date: Fri, 30 Jun 2023 10:12:10 +0100 Message-Id: <20230630091210.3742121-1-luca.fancellu@arm.com> X-Mailer: git-send-email 2.34.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit The "dom0less" feature was intended to be the feature where a domU domain could be launched without the control domain (Dom0) intervention, however the name seems to suggest that Dom0 cannot be part of the configuration, while instead it's a possible use case. To avoid that, rename the "dom0less" configuration with the name "hyperlaunch", that is less misleading. Signed-off-by: Luca Fancellu --- This is an RFC to get the feeling of the community about the name change, for now it's everything in one patch just to see how it will look like, if there is interest on proceeding into it, I can split in more commit. Please note that I've left intentionally "dom0less" into the docs/design/ and CHANGELOG.md --- --- .gitignore | 2 +- CHANGELOG.md | 2 + SUPPORT.md | 8 +- automation/gitlab-ci/test.yaml | 88 +++++++++---------- ...m32.sh => qemu-smoke-hyperlaunch-arm32.sh} | 0 ...m64.sh => qemu-smoke-hyperlaunch-arm64.sh} | 2 +- ...arm64.sh => qemu-xtf-hyperlaunch-arm64.sh} | 0 ...4.sh => xilinx-smoke-hyperlaunch-arm64.sh} | 2 +- docs/INDEX | 2 +- .../{dom0less.pandoc => hyperlaunch.pandoc} | 33 +++---- docs/misc/arm/device-tree/booting.txt | 4 +- docs/misc/efi.pandoc | 14 +-- docs/misc/xen-command-line.pandoc | 2 +- docs/misc/xenstore-ring.txt | 6 +- tools/helpers/Makefile | 20 ++--- ...t-dom0less.c => init-hyperlaunch-guests.c} | 4 +- xen/arch/arm/Kconfig | 4 +- xen/arch/arm/domain_build.c | 18 ++-- xen/arch/arm/efi/efi-boot.h | 9 +- xen/arch/arm/include/asm/kernel.h | 32 +++---- xen/arch/arm/setup.c | 8 +- 21 files changed, 132 insertions(+), 128 deletions(-) rename automation/scripts/{qemu-smoke-dom0less-arm32.sh => qemu-smoke-hyperlaunch-arm32.sh} (100%) rename automation/scripts/{qemu-smoke-dom0less-arm64.sh => qemu-smoke-hyperlaunch-arm64.sh} (99%) rename automation/scripts/{qemu-xtf-dom0less-arm64.sh => qemu-xtf-hyperlaunch-arm64.sh} (100%) rename automation/scripts/{xilinx-smoke-dom0less-arm64.sh => xilinx-smoke-hyperlaunch-arm64.sh} (98%) rename docs/features/{dom0less.pandoc => hyperlaunch.pandoc} (84%) rename tools/helpers/{init-dom0less.c => init-hyperlaunch-guests.c} (98%) diff --git a/.gitignore b/.gitignore index c1b73b096893..c9d569247079 100644 --- a/.gitignore +++ b/.gitignore @@ -167,7 +167,7 @@ tools/flask/utils/flask-loadpolicy tools/flask/utils/flask-setenforce tools/flask/utils/flask-set-bool tools/flask/utils/flask-label-pci -tools/helpers/init-dom0less +tools/helpers/init-hyperlaunch-guests tools/helpers/init-xenstore-domain tools/helpers/xen-init-dom0 tools/hotplug/common/hotplugpath.sh diff --git a/CHANGELOG.md b/CHANGELOG.md index 7d7e0590f8c6..cf01e004b017 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -13,6 +13,8 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) known user doesn't use it properly, leading to in-guest breakage. - The "dom0" option is now supported on Arm and "sve=" sub-option can be used to enable dom0 guest to use SVE/SVE2 instructions. + - The "dom0less" feature, currently supported only on arm, is renamed to + "hyperlaunch". ### Added - On x86, support for features new in Intel Sapphire Rapids CPUs: diff --git a/SUPPORT.md b/SUPPORT.md index 35a6249e03b2..fe500652828c 100644 --- a/SUPPORT.md +++ b/SUPPORT.md @@ -342,7 +342,7 @@ Allow sharing of identical pages between guests ### Static Memory Sharing -Allow to statically set up shared memory on dom0less system, +Allow to statically set up shared memory on hyperlaunch system, enabling domains to do shm-based communication Status, ARM: Tech Preview @@ -945,20 +945,20 @@ OVMF firmware implements the UEFI boot protocol. Status, qemu-xen: Supported -## Dom0less +## Hyperlaunch Guest creation from the hypervisor at boot without Dom0 intervention. Status, ARM: Supported -Memory of dom0less DomUs is not scrubbed at boot when bootscrub=on or +Memory of hyperlaunch DomUs is not scrubbed at boot when bootscrub=on or bootscrub=off are passed as Xen command line parameters. (Memory should be scrubbed with bootscrub=idle.) No XSAs will be issues due to unscrubbed memory. ## Static Event Channel -Allow to setup the static event channel on dom0less system, enabling domains +Allow to setup the static event channel on hyperlaunch system, enabling domains to send/receive notifications. Status, ARM: Tech Preview diff --git a/automation/gitlab-ci/test.yaml b/automation/gitlab-ci/test.yaml index d5cb238b0ad8..d309c784b643 100644 --- a/automation/gitlab-ci/test.yaml +++ b/automation/gitlab-ci/test.yaml @@ -136,18 +136,18 @@ build-each-commit-gcc: tags: - x86_64 -xilinx-smoke-dom0less-arm64-gcc: +xilinx-smoke-hyperlaunch-arm64-gcc: extends: .xilinx-arm64 script: - - ./automation/scripts/xilinx-smoke-dom0less-arm64.sh 2>&1 | tee ${LOGFILE} + - ./automation/scripts/xilinx-smoke-hyperlaunch-arm64.sh 2>&1 | tee ${LOGFILE} needs: - *arm64-test-needs - alpine-3.12-gcc-arm64 -xilinx-smoke-dom0less-arm64-gcc-gem-passthrough: +xilinx-smoke-hyperlaunch-arm64-gcc-gem-passthrough: extends: .xilinx-arm64 script: - - ./automation/scripts/xilinx-smoke-dom0less-arm64.sh gem-passthrough 2>&1 | tee ${LOGFILE} + - ./automation/scripts/xilinx-smoke-hyperlaunch-arm64.sh gem-passthrough 2>&1 | tee ${LOGFILE} needs: - *arm64-test-needs - alpine-3.12-gcc-arm64 @@ -234,98 +234,98 @@ qemu-smoke-dom0-arm64-gcc-debug: - *arm64-test-needs - alpine-3.12-gcc-debug-arm64 -qemu-smoke-dom0less-arm64-gcc: +qemu-smoke-hyperlaunch-arm64-gcc: extends: .qemu-arm64 script: - - ./automation/scripts/qemu-smoke-dom0less-arm64.sh 2>&1 | tee ${LOGFILE} + - ./automation/scripts/qemu-smoke-hyperlaunch-arm64.sh 2>&1 | tee ${LOGFILE} needs: - *arm64-test-needs - alpine-3.12-gcc-arm64 -qemu-smoke-dom0less-arm64-gcc-debug: +qemu-smoke-hyperlaunch-arm64-gcc-debug: extends: .qemu-arm64 script: - - ./automation/scripts/qemu-smoke-dom0less-arm64.sh 2>&1 | tee ${LOGFILE} + - ./automation/scripts/qemu-smoke-hyperlaunch-arm64.sh 2>&1 | tee ${LOGFILE} needs: - *arm64-test-needs - alpine-3.12-gcc-debug-arm64 -qemu-smoke-dom0less-arm64-gcc-staticmem: +qemu-smoke-hyperlaunch-arm64-gcc-staticmem: extends: .qemu-arm64 script: - - ./automation/scripts/qemu-smoke-dom0less-arm64.sh static-mem 2>&1 | tee ${LOGFILE} + - ./automation/scripts/qemu-smoke-hyperlaunch-arm64.sh static-mem 2>&1 | tee ${LOGFILE} needs: - *arm64-test-needs - alpine-3.12-gcc-arm64-staticmem -qemu-smoke-dom0less-arm64-gcc-debug-staticmem: +qemu-smoke-hyperlaunch-arm64-gcc-debug-staticmem: extends: .qemu-arm64 script: - - ./automation/scripts/qemu-smoke-dom0less-arm64.sh static-mem 2>&1 | tee ${LOGFILE} + - ./automation/scripts/qemu-smoke-hyperlaunch-arm64.sh static-mem 2>&1 | tee ${LOGFILE} needs: - *arm64-test-needs - alpine-3.12-gcc-debug-arm64-staticmem -qemu-smoke-dom0less-arm64-gcc-staticheap: +qemu-smoke-hyperlaunch-arm64-gcc-staticheap: extends: .qemu-arm64 script: - - ./automation/scripts/qemu-smoke-dom0less-arm64.sh static-heap 2>&1 | tee ${LOGFILE} + - ./automation/scripts/qemu-smoke-hyperlaunch-arm64.sh static-heap 2>&1 | tee ${LOGFILE} needs: - *arm64-test-needs - alpine-3.12-gcc-arm64 -qemu-smoke-dom0less-arm64-gcc-debug-staticheap: +qemu-smoke-hyperlaunch-arm64-gcc-debug-staticheap: extends: .qemu-arm64 script: - - ./automation/scripts/qemu-smoke-dom0less-arm64.sh static-heap 2>&1 | tee ${LOGFILE} + - ./automation/scripts/qemu-smoke-hyperlaunch-arm64.sh static-heap 2>&1 | tee ${LOGFILE} needs: - *arm64-test-needs - alpine-3.12-gcc-debug-arm64 -qemu-smoke-dom0less-arm64-gcc-static-shared-mem: +qemu-smoke-hyperlaunch-arm64-gcc-static-shared-mem: extends: .qemu-arm64 script: - - ./automation/scripts/qemu-smoke-dom0less-arm64.sh static-shared-mem 2>&1 | tee ${LOGFILE} + - ./automation/scripts/qemu-smoke-hyperlaunch-arm64.sh static-shared-mem 2>&1 | tee ${LOGFILE} needs: - *arm64-test-needs - alpine-3.12-gcc-arm64-static-shared-mem -qemu-smoke-dom0less-arm64-gcc-debug-static-shared-mem: +qemu-smoke-hyperlaunch-arm64-gcc-debug-static-shared-mem: extends: .qemu-arm64 script: - - ./automation/scripts/qemu-smoke-dom0less-arm64.sh static-shared-mem 2>&1 | tee ${LOGFILE} + - ./automation/scripts/qemu-smoke-hyperlaunch-arm64.sh static-shared-mem 2>&1 | tee ${LOGFILE} needs: - *arm64-test-needs - alpine-3.12-gcc-debug-arm64-static-shared-mem -qemu-smoke-dom0less-arm64-gcc-boot-cpupools: +qemu-smoke-hyperlaunch-arm64-gcc-boot-cpupools: extends: .qemu-arm64 script: - - ./automation/scripts/qemu-smoke-dom0less-arm64.sh boot-cpupools 2>&1 | tee ${LOGFILE} + - ./automation/scripts/qemu-smoke-hyperlaunch-arm64.sh boot-cpupools 2>&1 | tee ${LOGFILE} needs: - *arm64-test-needs - alpine-3.12-gcc-arm64-boot-cpupools -qemu-smoke-dom0less-arm64-gcc-debug-boot-cpupools: +qemu-smoke-hyperlaunch-arm64-gcc-debug-boot-cpupools: extends: .qemu-arm64 script: - - ./automation/scripts/qemu-smoke-dom0less-arm64.sh boot-cpupools 2>&1 | tee ${LOGFILE} + - ./automation/scripts/qemu-smoke-hyperlaunch-arm64.sh boot-cpupools 2>&1 | tee ${LOGFILE} needs: - *arm64-test-needs - alpine-3.12-gcc-debug-arm64-boot-cpupools -qemu-xtf-dom0less-arm64-gcc-hyp-xen-version: +qemu-xtf-hyperlaunch-arm64-gcc-hyp-xen-version: extends: .qemu-arm64 script: - - ./automation/scripts/qemu-xtf-dom0less-arm64.sh hyp-xen-version 2>&1 | tee ${LOGFILE} + - ./automation/scripts/qemu-xtf-hyperlaunch-arm64.sh hyp-xen-version 2>&1 | tee ${LOGFILE} needs: - alpine-3.12-gcc-arm64 - qemu-system-aarch64-6.0.0-arm64-export -qemu-xtf-dom0less-arm64-gcc-debug-hyp-xen-version: +qemu-xtf-hyperlaunch-arm64-gcc-debug-hyp-xen-version: extends: .qemu-arm64 script: - - ./automation/scripts/qemu-xtf-dom0less-arm64.sh hyp-xen-version 2>&1 | tee ${LOGFILE} + - ./automation/scripts/qemu-xtf-hyperlaunch-arm64.sh hyp-xen-version 2>&1 | tee ${LOGFILE} needs: - alpine-3.12-gcc-debug-arm64 - qemu-system-aarch64-6.0.0-arm64-export @@ -338,66 +338,66 @@ qemu-smoke-dom0-arm32-gcc: - *arm32-test-needs - yocto-qemuarm -qemu-smoke-dom0less-arm32-gcc: +qemu-smoke-hyperlaunch-arm32-gcc: extends: .qemu-arm32 script: - - ./automation/scripts/qemu-smoke-dom0less-arm32.sh 2>&1 | tee ${LOGFILE} + - ./automation/scripts/qemu-smoke-hyperlaunch-arm32.sh 2>&1 | tee ${LOGFILE} needs: - *arm32-test-needs - debian-unstable-gcc-arm32 -qemu-smoke-dom0less-arm32-gcc-debug: +qemu-smoke-hyperlaunch-arm32-gcc-debug: extends: .qemu-arm32 script: - - ./automation/scripts/qemu-smoke-dom0less-arm32.sh 2>&1 | tee ${LOGFILE} + - ./automation/scripts/qemu-smoke-hyperlaunch-arm32.sh 2>&1 | tee ${LOGFILE} needs: - *arm32-test-needs - debian-unstable-gcc-arm32-debug -qemu-smoke-dom0less-arm32-gcc-staticmem: +qemu-smoke-hyperlaunch-arm32-gcc-staticmem: extends: .qemu-arm32 script: - - ./automation/scripts/qemu-smoke-dom0less-arm32.sh static-mem 2>&1 | tee ${LOGFILE} + - ./automation/scripts/qemu-smoke-hyperlaunch-arm32.sh static-mem 2>&1 | tee ${LOGFILE} needs: - *arm32-test-needs - debian-unstable-gcc-arm32-staticmem -qemu-smoke-dom0less-arm32-gcc-debug-staticmem: +qemu-smoke-hyperlaunch-arm32-gcc-debug-staticmem: extends: .qemu-arm32 script: - - ./automation/scripts/qemu-smoke-dom0less-arm32.sh static-mem 2>&1 | tee ${LOGFILE} + - ./automation/scripts/qemu-smoke-hyperlaunch-arm32.sh static-mem 2>&1 | tee ${LOGFILE} needs: - *arm32-test-needs - debian-unstable-gcc-arm32-debug-staticmem -qemu-smoke-dom0less-arm32-gcc-gzip: +qemu-smoke-hyperlaunch-arm32-gcc-gzip: extends: .qemu-arm32 script: - - ./automation/scripts/qemu-smoke-dom0less-arm32.sh gzip 2>&1 | tee ${LOGFILE} + - ./automation/scripts/qemu-smoke-hyperlaunch-arm32.sh gzip 2>&1 | tee ${LOGFILE} needs: - *arm32-test-needs - debian-unstable-gcc-arm32 -qemu-smoke-dom0less-arm32-gcc-debug-gzip: +qemu-smoke-hyperlaunch-arm32-gcc-debug-gzip: extends: .qemu-arm32 script: - - ./automation/scripts/qemu-smoke-dom0less-arm32.sh gzip 2>&1 | tee ${LOGFILE} + - ./automation/scripts/qemu-smoke-hyperlaunch-arm32.sh gzip 2>&1 | tee ${LOGFILE} needs: - *arm32-test-needs - debian-unstable-gcc-arm32-debug -qemu-smoke-dom0less-arm32-gcc-without-dom0: +qemu-smoke-hyperlaunch-arm32-gcc-without-dom0: extends: .qemu-arm32 script: - - ./automation/scripts/qemu-smoke-dom0less-arm32.sh without-dom0 2>&1 | tee ${LOGFILE} + - ./automation/scripts/qemu-smoke-hyperlaunch-arm32.sh without-dom0 2>&1 | tee ${LOGFILE} needs: - *arm32-test-needs - debian-unstable-gcc-arm32 -qemu-smoke-dom0less-arm32-gcc-debug-without-dom0: +qemu-smoke-hyperlaunch-arm32-gcc-debug-without-dom0: extends: .qemu-arm32 script: - - ./automation/scripts/qemu-smoke-dom0less-arm32.sh without-dom0 2>&1 | tee ${LOGFILE} + - ./automation/scripts/qemu-smoke-hyperlaunch-arm32.sh without-dom0 2>&1 | tee ${LOGFILE} needs: - *arm32-test-needs - debian-unstable-gcc-arm32-debug diff --git a/automation/scripts/qemu-smoke-dom0less-arm32.sh b/automation/scripts/qemu-smoke-hyperlaunch-arm32.sh similarity index 100% rename from automation/scripts/qemu-smoke-dom0less-arm32.sh rename to automation/scripts/qemu-smoke-hyperlaunch-arm32.sh diff --git a/automation/scripts/qemu-smoke-dom0less-arm64.sh b/automation/scripts/qemu-smoke-hyperlaunch-arm64.sh similarity index 99% rename from automation/scripts/qemu-smoke-dom0less-arm64.sh rename to automation/scripts/qemu-smoke-hyperlaunch-arm64.sh index 75f575424a4e..db22cfaa1fd6 100755 --- a/automation/scripts/qemu-smoke-dom0less-arm64.sh +++ b/automation/scripts/qemu-smoke-hyperlaunch-arm64.sh @@ -113,7 +113,7 @@ echo "#!/bin/bash export LD_LIBRARY_PATH=/usr/local/lib bash /etc/init.d/xencommons start -/usr/local/lib/xen/bin/init-dom0less +/usr/local/lib/xen/bin/init-hyperlaunch-guests brctl addbr xenbr0 brctl addif xenbr0 eth0 diff --git a/automation/scripts/qemu-xtf-dom0less-arm64.sh b/automation/scripts/qemu-xtf-hyperlaunch-arm64.sh similarity index 100% rename from automation/scripts/qemu-xtf-dom0less-arm64.sh rename to automation/scripts/qemu-xtf-hyperlaunch-arm64.sh diff --git a/automation/scripts/xilinx-smoke-dom0less-arm64.sh b/automation/scripts/xilinx-smoke-hyperlaunch-arm64.sh similarity index 98% rename from automation/scripts/xilinx-smoke-dom0less-arm64.sh rename to automation/scripts/xilinx-smoke-hyperlaunch-arm64.sh index 075305241c8d..35b60720fe08 100755 --- a/automation/scripts/xilinx-smoke-dom0less-arm64.sh +++ b/automation/scripts/xilinx-smoke-hyperlaunch-arm64.sh @@ -73,7 +73,7 @@ echo "#!/bin/bash export LD_LIBRARY_PATH=/usr/local/lib bash /etc/init.d/xencommons start -/usr/local/lib/xen/bin/init-dom0less +/usr/local/lib/xen/bin/init-hyperlaunch-guests ${dom0_check} " > etc/local.d/xen.start diff --git a/docs/INDEX b/docs/INDEX index e673edd75c31..ed3d2e6198ec 100644 --- a/docs/INDEX +++ b/docs/INDEX @@ -25,4 +25,4 @@ misc/arm/early-printk Enabling early printk on ARM misc/arm/passthrough Passthrough a device described in the Device Tree to a guest misc/arm/device-tree/booting Device tree bindings to boot Xen misc/arm/device-tree/passthrough Device tree binding to passthrough a device -features/dom0less.markdown Boot multiple domains from Xen in parallel +features/hyperlaunch.markdown Boot multiple domains from Xen in parallel diff --git a/docs/features/dom0less.pandoc b/docs/features/hyperlaunch.pandoc similarity index 84% rename from docs/features/dom0less.pandoc rename to docs/features/hyperlaunch.pandoc index 725afa055838..a62d534696e3 100644 --- a/docs/features/dom0less.pandoc +++ b/docs/features/hyperlaunch.pandoc @@ -1,7 +1,7 @@ -Dom0less -======== +Hyperlaunch +=========== -"Dom0less" is a set of Xen features that enable the deployment of a Xen +"Hyperlaunch" is a set of Xen features that enable the deployment of a Xen system without an control domain (often referred to as "dom0"). Each feature can be used independently from the others, unless otherwise stated. @@ -93,26 +93,26 @@ See docs/misc/arm/device-tree/booting.txt for more information. PV Drivers ---------- -It is possible to use PV drivers with dom0less guests with some +It is possible to use PV drivers with hyperlaunch started guests with some restrictions: -- dom0less domUs that want to use PV drivers support should have the +- hyperlaunch started domUs that want to use PV drivers support should have the "xen,enhanced" property set under their device tree nodes (see docs/misc/arm/device-tree/booting.txt) - a dom0 must be present (or another domain with enough privileges to run the toolstack) -- after dom0 is booted, the utility "init-dom0less" must be run -- do not run "init-dom0less" while creating other guests with xl +- after dom0 is booted, the utility "init-hyperlaunch-guests" must be run +- do not run "init-hyperlaunch-guests" while creating other guests with xl -After the execution of init-dom0less, it is possible to use "xl" to -hotplug PV drivers to dom0less guests. E.g. xl network-attach domU. +After the execution of init-hyperlaunch-guests, it is possible to use "xl" to +hotplug PV drivers to hyperlaunch started guests. E.g. xl network-attach domU. The implementation works as follows: -- Xen allocates the xenstore event channel for each dom0less domU that - has the "xen,enhanced" property, and sets HVM_PARAM_STORE_EVTCHN +- Xen allocates the xenstore event channel for each hyperlaunch started domU + that has the "xen,enhanced" property, and sets HVM_PARAM_STORE_EVTCHN - Xen does *not* allocate the xenstore page and sets HVM_PARAM_STORE_PFN to ~0ULL (invalid) -- Dom0less domU kernels check that HVM_PARAM_STORE_PFN is set to invalid +- Hyperlaunch started domU kernels check that HVM_PARAM_STORE_PFN is set to invalid - Old kernels will continue without xenstore support (Note: some old buggy kernels might crash because they don't check the validity of HVM_PARAM_STORE_PFN before using it! Disable "xen,enhanced" in @@ -120,7 +120,7 @@ The implementation works as follows: - New kernels will wait for a notification on the xenstore event channel (HVM_PARAM_STORE_EVTCHN) before continuing with the initialization -- Once dom0 is booted, init-dom0less is executed: +- Once dom0 is booted, init-hyperlaunch-guests is executed: - it allocates the xenstore shared page and sets HVM_PARAM_STORE_PFN - it calls xs_introduce_domain - Xenstored notices the new domain, initializes interfaces as usual, and @@ -159,12 +159,13 @@ Notes ----- - 'xl console' command will not attach to the domain's console in case - of dom0less. DomU are domains created by Xen (similar to Dom0) and - therefore they are all managed by Xen and some of the commands may not work. + of hyperlaunch started guests. DomU are domains created by Xen (similar to + Dom0) and therefore they are all managed by Xen and some of the commands may + not work. A user is allowed to configure the key sequence to switch input. Pressing the Xen "conswitch" (Ctrl-A by default) three times - switches input in case of dom0less mode. + switches input in case of hyperlaunch mode. - Domains created by Xen will have no name at boot. Domain-0 has a name thanks to the helper xen-init-dom0 called at boot by the initscript. diff --git a/docs/misc/arm/device-tree/booting.txt b/docs/misc/arm/device-tree/booting.txt index bbd955e9c2f6..10ec1910a75a 100644 --- a/docs/misc/arm/device-tree/booting.txt +++ b/docs/misc/arm/device-tree/booting.txt @@ -572,8 +572,8 @@ Static Shared Memory ==================== The static shared memory device tree nodes allow users to statically set up -shared memory on dom0less system, enabling domains to do shm-based -communication. +shared memory on Hyperlaunch started guests system, enabling domains to do +shm-based communication. - compatible diff --git a/docs/misc/efi.pandoc b/docs/misc/efi.pandoc index 11c1ac334600..d15cb87b49d1 100644 --- a/docs/misc/efi.pandoc +++ b/docs/misc/efi.pandoc @@ -194,12 +194,12 @@ chosen { }; } -## UEFI boot and dom0less on ARM +## UEFI boot and Hyperlaunch on ARM -Dom0less feature is supported by ARM and it is possible to use it when Xen is +Hyperlaunch feature is supported by ARM and it is possible to use it when Xen is started as an EFI application. The way to specify the domU domains is by Device Tree as specified in the -[dom0less](dom0less.html) documentation page under the "Device Tree +[Hyperlaunch](hyperlaunch.html) documentation page under the "Device Tree configuration" section, but instead of declaring the reg property in the boot module, the user must specify the "xen,uefi-binary" property containing the name of the binary file that has to be loaded in memory. @@ -236,7 +236,7 @@ domU1 { These are the different ways to boot a Xen system from UEFI: - Boot Xen and Dom0 (minimum required) - - Boot Xen and DomU(s) (true dom0less, only on ARM) + - Boot Xen and DomU(s) (only on ARM) - Boot Xen, Dom0 and DomU(s) (only on ARM) ### Boot Xen and Dom0 @@ -247,7 +247,7 @@ example above. ### Boot Xen and DomU(s) This configuration needs the domU domain(s) specified in the /chosen node, -examples of how to do that are provided by the documentation about dom0less +examples of how to do that are provided by the documentation about Hyperlaunch and the example above shows how to use the "xen,uefi-binary" property to use the UEFI stub for module loading. When adding DomU modules to device tree, also add the property @@ -258,7 +258,7 @@ can specify the Xen boot arguments in the configuration file with the "options=" keyword or in the device tree with the "xen,xen-bootargs" property, but be aware that the Xen configuration file value has a precedence over the DT value. -Example 1 of how to boot a true dom0less configuration: +Example 1 of how to boot an Hyperlaunch configuration with only domU(s): Xen configuration file: skipped. @@ -301,7 +301,7 @@ chosen { }; ``` -Example 2 of how to boot a true dom0less configuration: +Example 2 of how to boot an Hyperlaunch configuration with only domU(s): Xen configuration file: diff --git a/docs/misc/xen-command-line.pandoc b/docs/misc/xen-command-line.pandoc index 4060ebdc5d76..35d7c9821963 100644 --- a/docs/misc/xen-command-line.pandoc +++ b/docs/misc/xen-command-line.pandoc @@ -1156,7 +1156,7 @@ to use the default. > Default : `true` Flag to enable or disable support for extended regions for Dom0 and -Dom0less DomUs. +Hyperlaunch started DomUs. Extended regions are ranges of unused address space exposed to the guest as "safe to use" for special memory mappings. Disable if your board diff --git a/docs/misc/xenstore-ring.txt b/docs/misc/xenstore-ring.txt index dbc7335e24b8..f84dedd8016e 100644 --- a/docs/misc/xenstore-ring.txt +++ b/docs/misc/xenstore-ring.txt @@ -115,9 +115,9 @@ and reconnect is in progress") and signalling the event channel. The guest must now ignore all fields except the Connection state and wait for it to be set to 0 ("Ring is connected"). -In certain circumstances (e.g. dom0less guests with PV drivers support) -it is possible for the guest to find the Connection state already set to -1 by someone else during xenstore initialization. In that case, like in +In certain circumstances (e.g. Hyperlaunch started guests with PV drivers +support) it is possible for the guest to find the Connection state already set +to 1 by someone else during xenstore initialization. In that case, like in the previous case, the guest must ignore all fields except the Connection state and wait for it to be set to 0 before proceeding. diff --git a/tools/helpers/Makefile b/tools/helpers/Makefile index 09590eb5b6f0..332ab47da318 100644 --- a/tools/helpers/Makefile +++ b/tools/helpers/Makefile @@ -11,7 +11,7 @@ ifeq ($(CONFIG_X86),y) TARGETS += init-xenstore-domain endif ifeq ($(CONFIG_ARM),y) -TARGETS += init-dom0less +TARGETS += init-hyperlaunch-guests endif endif @@ -31,13 +31,13 @@ $(INIT_XENSTORE_DOMAIN_OBJS): CFLAGS += $(CFLAGS_libxenlight) $(INIT_XENSTORE_DOMAIN_OBJS): CFLAGS += -include $(XEN_ROOT)/tools/config.h init-xenstore-domain: LDLIBS += $(call xenlibs-ldlibs,toollog store ctrl guest light) -INIT_DOM0LESS_OBJS = init-dom0less.o init-dom-json.o -$(INIT_DOM0LESS_OBJS): CFLAGS += $(CFLAGS_libxentoollog) -$(INIT_DOM0LESS_OBJS): CFLAGS += $(CFLAGS_libxenstore) -$(INIT_DOM0LESS_OBJS): CFLAGS += $(CFLAGS_libxenlight) -$(INIT_DOM0LESS_OBJS): CFLAGS += $(CFLAGS_libxenctrl) -$(INIT_DOM0LESS_OBJS): CFLAGS += $(CFLAGS_libxenevtchn) -init-dom0less: LDLIBS += $(call xenlibs-ldlibs,ctrl evtchn toollog store light guest foreignmemory) +INIT_HYPERLAUNCH_OBJS = init-hyperlaunch-guests.o init-dom-json.o +$(INIT_HYPERLAUNCH_OBJS): CFLAGS += $(CFLAGS_libxentoollog) +$(INIT_HYPERLAUNCH_OBJS): CFLAGS += $(CFLAGS_libxenstore) +$(INIT_HYPERLAUNCH_OBJS): CFLAGS += $(CFLAGS_libxenlight) +$(INIT_HYPERLAUNCH_OBJS): CFLAGS += $(CFLAGS_libxenctrl) +$(INIT_HYPERLAUNCH_OBJS): CFLAGS += $(CFLAGS_libxenevtchn) +init-hyperlaunch-guests: LDLIBS += $(call xenlibs-ldlibs,ctrl evtchn toollog store light guest foreignmemory) .PHONY: all all: $(TARGETS) @@ -48,8 +48,8 @@ xen-init-dom0: $(XEN_INIT_DOM0_OBJS) init-xenstore-domain: $(INIT_XENSTORE_DOMAIN_OBJS) $(CC) $(LDFLAGS) -o $@ $(INIT_XENSTORE_DOMAIN_OBJS) $(LDLIBS) $(APPEND_LDFLAGS) -init-dom0less: $(INIT_DOM0LESS_OBJS) - $(CC) $(LDFLAGS) -o $@ $(INIT_DOM0LESS_OBJS) $(LDLIBS) $(APPEND_LDFLAGS) +init-hyperlaunch-guests: $(INIT_HYPERLAUNCH_OBJS) + $(CC) $(LDFLAGS) -o $@ $(INIT_HYPERLAUNCH_OBJS) $(LDLIBS) $(APPEND_LDFLAGS) .PHONY: install install: all diff --git a/tools/helpers/init-dom0less.c b/tools/helpers/init-hyperlaunch-guests.c similarity index 98% rename from tools/helpers/init-dom0less.c rename to tools/helpers/init-hyperlaunch-guests.c index fee93459c4b9..c786a5fd37b2 100644 --- a/tools/helpers/init-dom0less.c +++ b/tools/helpers/init-hyperlaunch-guests.c @@ -129,7 +129,7 @@ static int create_xenstore(struct xs_handle *xsh, rc = snprintf(id_str, STR_MAX_LENGTH, "%u", domid); if (rc < 0 || rc >= STR_MAX_LENGTH) return rc; - rc = snprintf(dom_name_str, STR_MAX_LENGTH, "dom0less-%u", domid); + rc = snprintf(dom_name_str, STR_MAX_LENGTH, "hyperlaunch-%u", domid); if (rc < 0 || rc >= STR_MAX_LENGTH) return rc; rc = snprintf(uuid_str, STR_MAX_LENGTH, LIBXL_UUID_FMT, LIBXL_UUID_BYTES(uuid)); @@ -232,7 +232,7 @@ static int init_domain(struct xs_handle *xsh, int rc; struct xenstore_domain_interface *intf; - printf("Init dom0less domain: %u\n", info->domid); + printf("Init hyperlaunch domain: %u\n", info->domid); rc = xc_hvm_param_get(xch, info->domid, HVM_PARAM_STORE_EVTCHN, &xenstore_evtchn); diff --git a/xen/arch/arm/Kconfig b/xen/arch/arm/Kconfig index 61e581b8c2b0..c5cb8f28011a 100644 --- a/xen/arch/arm/Kconfig +++ b/xen/arch/arm/Kconfig @@ -179,10 +179,10 @@ config TEE source "arch/arm/tee/Kconfig" config STATIC_SHM - bool "Statically shared memory on a dom0less system" if UNSUPPORTED + bool "Statically shared memory on an Hyperlaunch system" if UNSUPPORTED depends on STATIC_MEMORY help - This option enables statically shared memory on a dom0less system. + This option enables statically shared memory on an Hyperlaunch system. endmenu diff --git a/xen/arch/arm/domain_build.c b/xen/arch/arm/domain_build.c index d0d6be922db1..897e1f2de39e 100644 --- a/xen/arch/arm/domain_build.c +++ b/xen/arch/arm/domain_build.c @@ -42,7 +42,7 @@ integer_param("dom0_max_vcpus", opt_dom0_max_vcpus); /* * If true, the extended regions support is enabled for dom0 and - * dom0less domUs. + * Hyperlaunch started domUs. */ static bool __initdata opt_ext_regions = true; boolean_param("ext_regions", opt_ext_regions); @@ -3347,7 +3347,7 @@ static int __init prepare_dtb_domU(struct domain *d, struct kernel_info *kinfo) goto err; } - if ( kinfo->dom0less_feature & DOM0LESS_ENHANCED_NO_XS ) + if ( kinfo->hyperlaunch_feature & HYPERLAUNCH_ENHANCED_NO_XS ) { ret = make_hypervisor_node(d, kinfo, addrcells, sizecells); if ( ret ) @@ -3810,7 +3810,7 @@ static int __init construct_domU(struct domain *d, const struct dt_device_node *node) { struct kernel_info kinfo = {}; - const char *dom0less_enhanced; + const char *hyperlaunch_enhanced; int rc; u64 mem; u32 p2m_mem_mb; @@ -3841,18 +3841,18 @@ static int __init construct_domU(struct domain *d, kinfo.vpl011 = dt_property_read_bool(node, "vpl011"); - rc = dt_property_read_string(node, "xen,enhanced", &dom0less_enhanced); + rc = dt_property_read_string(node, "xen,enhanced", &hyperlaunch_enhanced); if ( rc == -EILSEQ || rc == -ENODATA || - (rc == 0 && !strcmp(dom0less_enhanced, "enabled")) ) + (rc == 0 && !strcmp(hyperlaunch_enhanced, "enabled")) ) { if ( hardware_domain ) - kinfo.dom0less_feature = DOM0LESS_ENHANCED; + kinfo.hyperlaunch_feature = HYPERLAUNCH_ENHANCED; else panic("At the moment, Xenstore support requires dom0 to be present\n"); } - else if ( rc == 0 && !strcmp(dom0less_enhanced, "no-xenstore") ) - kinfo.dom0less_feature = DOM0LESS_ENHANCED_NO_XS; + else if ( rc == 0 && !strcmp(hyperlaunch_enhanced, "no-xenstore") ) + kinfo.hyperlaunch_feature = HYPERLAUNCH_ENHANCED_NO_XS; if ( vcpu_create(d, 0) == NULL ) return -ENOMEM; @@ -3902,7 +3902,7 @@ static int __init construct_domU(struct domain *d, if ( rc < 0 ) return rc; - if ( kinfo.dom0less_feature & DOM0LESS_XENSTORE ) + if ( kinfo.hyperlaunch_feature & HYPERLAUNCH_XENSTORE ) { ASSERT(hardware_domain); rc = alloc_xenstore_evtchn(d); diff --git a/xen/arch/arm/efi/efi-boot.h b/xen/arch/arm/efi/efi-boot.h index bb64925d708c..cccf90817279 100644 --- a/xen/arch/arm/efi/efi-boot.h +++ b/xen/arch/arm/efi/efi-boot.h @@ -807,9 +807,9 @@ static int __init handle_module_node(const EFI_LOADED_IMAGE *loaded_image, * in the DT. * Returns number of multiboot,module found or negative number on error. */ -static int __init handle_dom0less_domain_node(const EFI_LOADED_IMAGE *loaded_image, - EFI_FILE_HANDLE *dir_handle, - int domain_node) +static int __init +handle_hyperlaunch_domain_node(const EFI_LOADED_IMAGE *loaded_image, + EFI_FILE_HANDLE *dir_handle, int domain_node) { int module_node, addr_cells, size_cells, len; const struct fdt_property *prop; @@ -879,7 +879,8 @@ static int __init efi_check_dt_boot(const EFI_LOADED_IMAGE *loaded_image) if ( !fdt_node_check_compatible(fdt, node, "xen,domain") ) { /* Found a node with compatible xen,domain; handle this node. */ - ret = handle_dom0less_domain_node(loaded_image, &dir_handle, node); + ret = handle_hyperlaunch_domain_node(loaded_image, &dir_handle, + node); if ( ret < 0 ) return ERROR_DT_MODULE_DOMU; } diff --git a/xen/arch/arm/include/asm/kernel.h b/xen/arch/arm/include/asm/kernel.h index 4617cdc83bac..042e250e172a 100644 --- a/xen/arch/arm/include/asm/kernel.h +++ b/xen/arch/arm/include/asm/kernel.h @@ -10,23 +10,23 @@ #include /* - * List of possible features for dom0less domUs + * List of possible features for Hyperlaunch started domUs * - * DOM0LESS_ENHANCED_NO_XS: Notify the OS it is running on top of Xen. All the - * default features (excluding Xenstore) will be - * available. Note that an OS *must* not rely on the - * availability of Xen features if this is not set. - * DOM0LESS_XENSTORE: Xenstore will be enabled for the VM. This feature - * can't be enabled without the - * DOM0LESS_ENHANCED_NO_XS. - * DOM0LESS_ENHANCED: Notify the OS it is running on top of Xen. All the - * default features (including Xenstore) will be - * available. Note that an OS *must* not rely on the - * availability of Xen features if this is not set. + * HYPERLAUNCH_ENHANCED_NO_XS: Notify the OS it is running on top of Xen. All + * the default features (excluding Xenstore) will be + * available. Note that an OS *must* not rely on the + * availability of Xen features if this is not set. + * HYPERLAUNCH_XENSTORE: Xenstore will be enabled for the VM. This feature + * can't be enabled without the + * HYPERLAUNCH_ENHANCED_NO_XS. + * HYPERLAUNCH_ENHANCED: Notify the OS it is running on top of Xen. All + * the default features (including Xenstore) will be + * available. Note that an OS *must* not rely on the + * availability of Xen features if this is not set. */ -#define DOM0LESS_ENHANCED_NO_XS BIT(0, U) -#define DOM0LESS_XENSTORE BIT(1, U) -#define DOM0LESS_ENHANCED (DOM0LESS_ENHANCED_NO_XS | DOM0LESS_XENSTORE) +#define HYPERLAUNCH_ENHANCED_NO_XS BIT(0, U) +#define HYPERLAUNCH_XENSTORE BIT(1, U) +#define HYPERLAUNCH_ENHANCED (HYPERLAUNCH_ENHANCED_NO_XS | HYPERLAUNCH_XENSTORE) struct kernel_info { #ifdef CONFIG_ARM_64 @@ -57,7 +57,7 @@ struct kernel_info { bool vpl011; /* Enable/Disable PV drivers interfaces */ - uint16_t dom0less_feature; + uint16_t hyperlaunch_feature; /* GIC phandle */ uint32_t phandle_gic; diff --git a/xen/arch/arm/setup.c b/xen/arch/arm/setup.c index bbf72b69aae6..955c6b9e2e9e 100644 --- a/xen/arch/arm/setup.c +++ b/xen/arch/arm/setup.c @@ -1041,7 +1041,7 @@ static void __init setup_mm(void) } #endif -static bool __init is_dom0less_mode(void) +static bool __init is_hyperlaunch_mode(void) { struct bootmodules *mods = &bootinfo.modules; struct bootmodule *mod; @@ -1068,7 +1068,7 @@ static bool __init is_dom0less_mode(void) /* * If there is no dom0 kernel but at least one domU, then we are in - * dom0less mode + * Hyperlaunch mode */ return ( !dom0found && domUfound ); } @@ -1242,10 +1242,10 @@ void __init start_xen(unsigned long boot_phys_offset, enable_cpu_features(); /* Create initial domain 0. */ - if ( !is_dom0less_mode() ) + if ( !is_hyperlaunch_mode() ) create_dom0(); else - printk(XENLOG_INFO "Xen dom0less mode detected\n"); + printk(XENLOG_INFO "Xen Hyperlaunch mode detected\n"); if ( acpi_disabled ) { -- 2.34.1 From xen-devel-bounces@lists.xenproject.org Fri Jun 30 09:19:35 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 30 Jun 2023 09:19:35 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557391.870696 (Exim 4.92) (envelope-from ) id 1qFAHh-00073r-0b; Fri, 30 Jun 2023 09:19:21 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557391.870696; Fri, 30 Jun 2023 09:19:20 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFAHg-00073k-Sk; Fri, 30 Jun 2023 09:19:20 +0000 Received: by outflank-mailman (input) for mailman id 557391; Fri, 30 Jun 2023 09:19:19 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFAHf-00073e-MH for xen-devel@lists.xenproject.org; Fri, 30 Jun 2023 09:19:19 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFAHc-0001N6-FW; Fri, 30 Jun 2023 09:19:16 +0000 Received: from gw1.octic.net ([88.97.20.152] helo=[10.0.1.240]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qFAHc-0001MS-6D; Fri, 30 Jun 2023 09:19:16 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=Fe0FYoWwZb4anSw2h75aJ/LmZEdQGDOpAxJyPjyIAOs=; b=mcVh6dN6KErVLEc4DvFIA9gAOw iI1uP/eyfgCYJcKN+x2/PpufobzoNlluaIyiE7/MuuB4FcC9Dc8VFNWsCyQmjd92nhzLztc3IJD0V pG+P59rgwssHLgwFhWhtQR0ar5WHK6RzeCWvlG6OdJs843bKLgZ+GZuKJemRWqMIpnK0=; Message-ID: <8f908259-2924-37cb-9987-f9488f9af1aa@xen.org> Date: Fri, 30 Jun 2023 10:19:13 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [RFC PATCH] xen/arm: Rebranding dom0less feature Content-Language: en-US To: Luca Fancellu , xen-devel@lists.xenproject.org Cc: wei.chen@arm.com, Andrew Cooper , George Dunlap , Jan Beulich , Stefano Stabellini , Wei Liu , Henry Wang , Community Manager , Doug Goldstein , Bertrand Marquis , Volodymyr Babchuk , Anthony PERARD , Christopher Clark , "Daniel P. Smith" References: <20230630091210.3742121-1-luca.fancellu@arm.com> From: Julien Grall In-Reply-To: <20230630091210.3742121-1-luca.fancellu@arm.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit (+ Christopher and Daniel) On 30/06/2023 10:12, Luca Fancellu wrote: > The "dom0less" feature was intended to be the feature where a domU > domain could be launched without the control domain (Dom0) > intervention, however the name seems to suggest that Dom0 cannot > be part of the configuration, while instead it's a possible use case. > > To avoid that, rename the "dom0less" configuration with the name > "hyperlaunch", that is less misleading. > > Signed-off-by: Luca Fancellu > --- > This is an RFC to get the feeling of the community about the name > change, for now it's everything in one patch just to see how it > will look like, if there is interest on proceeding into it, I can > split in more commit. > Please note that I've left intentionally "dom0less" into the > docs/design/ and CHANGELOG.md > --- > --- > .gitignore | 2 +- > CHANGELOG.md | 2 + > SUPPORT.md | 8 +- > automation/gitlab-ci/test.yaml | 88 +++++++++---------- > ...m32.sh => qemu-smoke-hyperlaunch-arm32.sh} | 0 > ...m64.sh => qemu-smoke-hyperlaunch-arm64.sh} | 2 +- > ...arm64.sh => qemu-xtf-hyperlaunch-arm64.sh} | 0 > ...4.sh => xilinx-smoke-hyperlaunch-arm64.sh} | 2 +- > docs/INDEX | 2 +- > .../{dom0less.pandoc => hyperlaunch.pandoc} | 33 +++---- > docs/misc/arm/device-tree/booting.txt | 4 +- > docs/misc/efi.pandoc | 14 +-- > docs/misc/xen-command-line.pandoc | 2 +- > docs/misc/xenstore-ring.txt | 6 +- > tools/helpers/Makefile | 20 ++--- > ...t-dom0less.c => init-hyperlaunch-guests.c} | 4 +- > xen/arch/arm/Kconfig | 4 +- > xen/arch/arm/domain_build.c | 18 ++-- > xen/arch/arm/efi/efi-boot.h | 9 +- > xen/arch/arm/include/asm/kernel.h | 32 +++---- > xen/arch/arm/setup.c | 8 +- > 21 files changed, 132 insertions(+), 128 deletions(-) > rename automation/scripts/{qemu-smoke-dom0less-arm32.sh => qemu-smoke-hyperlaunch-arm32.sh} (100%) > rename automation/scripts/{qemu-smoke-dom0less-arm64.sh => qemu-smoke-hyperlaunch-arm64.sh} (99%) > rename automation/scripts/{qemu-xtf-dom0less-arm64.sh => qemu-xtf-hyperlaunch-arm64.sh} (100%) > rename automation/scripts/{xilinx-smoke-dom0less-arm64.sh => xilinx-smoke-hyperlaunch-arm64.sh} (98%) > rename docs/features/{dom0less.pandoc => hyperlaunch.pandoc} (84%) > rename tools/helpers/{init-dom0less.c => init-hyperlaunch-guests.c} (98%) > > diff --git a/.gitignore b/.gitignore > index c1b73b096893..c9d569247079 100644 > --- a/.gitignore > +++ b/.gitignore > @@ -167,7 +167,7 @@ tools/flask/utils/flask-loadpolicy > tools/flask/utils/flask-setenforce > tools/flask/utils/flask-set-bool > tools/flask/utils/flask-label-pci > -tools/helpers/init-dom0less > +tools/helpers/init-hyperlaunch-guests > tools/helpers/init-xenstore-domain > tools/helpers/xen-init-dom0 > tools/hotplug/common/hotplugpath.sh > diff --git a/CHANGELOG.md b/CHANGELOG.md > index 7d7e0590f8c6..cf01e004b017 100644 > --- a/CHANGELOG.md > +++ b/CHANGELOG.md > @@ -13,6 +13,8 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) > known user doesn't use it properly, leading to in-guest breakage. > - The "dom0" option is now supported on Arm and "sve=" sub-option can be used > to enable dom0 guest to use SVE/SVE2 instructions. > + - The "dom0less" feature, currently supported only on arm, is renamed to > + "hyperlaunch". > > ### Added > - On x86, support for features new in Intel Sapphire Rapids CPUs: > diff --git a/SUPPORT.md b/SUPPORT.md > index 35a6249e03b2..fe500652828c 100644 > --- a/SUPPORT.md > +++ b/SUPPORT.md > @@ -342,7 +342,7 @@ Allow sharing of identical pages between guests > > ### Static Memory Sharing > > -Allow to statically set up shared memory on dom0less system, > +Allow to statically set up shared memory on hyperlaunch system, > enabling domains to do shm-based communication > > Status, ARM: Tech Preview > @@ -945,20 +945,20 @@ OVMF firmware implements the UEFI boot protocol. > > Status, qemu-xen: Supported > > -## Dom0less > +## Hyperlaunch > > Guest creation from the hypervisor at boot without Dom0 intervention. > > Status, ARM: Supported > > -Memory of dom0less DomUs is not scrubbed at boot when bootscrub=on or > +Memory of hyperlaunch DomUs is not scrubbed at boot when bootscrub=on or > bootscrub=off are passed as Xen command line parameters. (Memory should > be scrubbed with bootscrub=idle.) No XSAs will be issues due to > unscrubbed memory. > > ## Static Event Channel > > -Allow to setup the static event channel on dom0less system, enabling domains > +Allow to setup the static event channel on hyperlaunch system, enabling domains > to send/receive notifications. > > Status, ARM: Tech Preview > diff --git a/automation/gitlab-ci/test.yaml b/automation/gitlab-ci/test.yaml > index d5cb238b0ad8..d309c784b643 100644 > --- a/automation/gitlab-ci/test.yaml > +++ b/automation/gitlab-ci/test.yaml > @@ -136,18 +136,18 @@ build-each-commit-gcc: > tags: > - x86_64 > > -xilinx-smoke-dom0less-arm64-gcc: > +xilinx-smoke-hyperlaunch-arm64-gcc: > extends: .xilinx-arm64 > script: > - - ./automation/scripts/xilinx-smoke-dom0less-arm64.sh 2>&1 | tee ${LOGFILE} > + - ./automation/scripts/xilinx-smoke-hyperlaunch-arm64.sh 2>&1 | tee ${LOGFILE} > needs: > - *arm64-test-needs > - alpine-3.12-gcc-arm64 > > -xilinx-smoke-dom0less-arm64-gcc-gem-passthrough: > +xilinx-smoke-hyperlaunch-arm64-gcc-gem-passthrough: > extends: .xilinx-arm64 > script: > - - ./automation/scripts/xilinx-smoke-dom0less-arm64.sh gem-passthrough 2>&1 | tee ${LOGFILE} > + - ./automation/scripts/xilinx-smoke-hyperlaunch-arm64.sh gem-passthrough 2>&1 | tee ${LOGFILE} > needs: > - *arm64-test-needs > - alpine-3.12-gcc-arm64 > @@ -234,98 +234,98 @@ qemu-smoke-dom0-arm64-gcc-debug: > - *arm64-test-needs > - alpine-3.12-gcc-debug-arm64 > > -qemu-smoke-dom0less-arm64-gcc: > +qemu-smoke-hyperlaunch-arm64-gcc: > extends: .qemu-arm64 > script: > - - ./automation/scripts/qemu-smoke-dom0less-arm64.sh 2>&1 | tee ${LOGFILE} > + - ./automation/scripts/qemu-smoke-hyperlaunch-arm64.sh 2>&1 | tee ${LOGFILE} > needs: > - *arm64-test-needs > - alpine-3.12-gcc-arm64 > > -qemu-smoke-dom0less-arm64-gcc-debug: > +qemu-smoke-hyperlaunch-arm64-gcc-debug: > extends: .qemu-arm64 > script: > - - ./automation/scripts/qemu-smoke-dom0less-arm64.sh 2>&1 | tee ${LOGFILE} > + - ./automation/scripts/qemu-smoke-hyperlaunch-arm64.sh 2>&1 | tee ${LOGFILE} > needs: > - *arm64-test-needs > - alpine-3.12-gcc-debug-arm64 > > -qemu-smoke-dom0less-arm64-gcc-staticmem: > +qemu-smoke-hyperlaunch-arm64-gcc-staticmem: > extends: .qemu-arm64 > script: > - - ./automation/scripts/qemu-smoke-dom0less-arm64.sh static-mem 2>&1 | tee ${LOGFILE} > + - ./automation/scripts/qemu-smoke-hyperlaunch-arm64.sh static-mem 2>&1 | tee ${LOGFILE} > needs: > - *arm64-test-needs > - alpine-3.12-gcc-arm64-staticmem > > -qemu-smoke-dom0less-arm64-gcc-debug-staticmem: > +qemu-smoke-hyperlaunch-arm64-gcc-debug-staticmem: > extends: .qemu-arm64 > script: > - - ./automation/scripts/qemu-smoke-dom0less-arm64.sh static-mem 2>&1 | tee ${LOGFILE} > + - ./automation/scripts/qemu-smoke-hyperlaunch-arm64.sh static-mem 2>&1 | tee ${LOGFILE} > needs: > - *arm64-test-needs > - alpine-3.12-gcc-debug-arm64-staticmem > > -qemu-smoke-dom0less-arm64-gcc-staticheap: > +qemu-smoke-hyperlaunch-arm64-gcc-staticheap: > extends: .qemu-arm64 > script: > - - ./automation/scripts/qemu-smoke-dom0less-arm64.sh static-heap 2>&1 | tee ${LOGFILE} > + - ./automation/scripts/qemu-smoke-hyperlaunch-arm64.sh static-heap 2>&1 | tee ${LOGFILE} > needs: > - *arm64-test-needs > - alpine-3.12-gcc-arm64 > > -qemu-smoke-dom0less-arm64-gcc-debug-staticheap: > +qemu-smoke-hyperlaunch-arm64-gcc-debug-staticheap: > extends: .qemu-arm64 > script: > - - ./automation/scripts/qemu-smoke-dom0less-arm64.sh static-heap 2>&1 | tee ${LOGFILE} > + - ./automation/scripts/qemu-smoke-hyperlaunch-arm64.sh static-heap 2>&1 | tee ${LOGFILE} > needs: > - *arm64-test-needs > - alpine-3.12-gcc-debug-arm64 > > -qemu-smoke-dom0less-arm64-gcc-static-shared-mem: > +qemu-smoke-hyperlaunch-arm64-gcc-static-shared-mem: > extends: .qemu-arm64 > script: > - - ./automation/scripts/qemu-smoke-dom0less-arm64.sh static-shared-mem 2>&1 | tee ${LOGFILE} > + - ./automation/scripts/qemu-smoke-hyperlaunch-arm64.sh static-shared-mem 2>&1 | tee ${LOGFILE} > needs: > - *arm64-test-needs > - alpine-3.12-gcc-arm64-static-shared-mem > > -qemu-smoke-dom0less-arm64-gcc-debug-static-shared-mem: > +qemu-smoke-hyperlaunch-arm64-gcc-debug-static-shared-mem: > extends: .qemu-arm64 > script: > - - ./automation/scripts/qemu-smoke-dom0less-arm64.sh static-shared-mem 2>&1 | tee ${LOGFILE} > + - ./automation/scripts/qemu-smoke-hyperlaunch-arm64.sh static-shared-mem 2>&1 | tee ${LOGFILE} > needs: > - *arm64-test-needs > - alpine-3.12-gcc-debug-arm64-static-shared-mem > > -qemu-smoke-dom0less-arm64-gcc-boot-cpupools: > +qemu-smoke-hyperlaunch-arm64-gcc-boot-cpupools: > extends: .qemu-arm64 > script: > - - ./automation/scripts/qemu-smoke-dom0less-arm64.sh boot-cpupools 2>&1 | tee ${LOGFILE} > + - ./automation/scripts/qemu-smoke-hyperlaunch-arm64.sh boot-cpupools 2>&1 | tee ${LOGFILE} > needs: > - *arm64-test-needs > - alpine-3.12-gcc-arm64-boot-cpupools > > -qemu-smoke-dom0less-arm64-gcc-debug-boot-cpupools: > +qemu-smoke-hyperlaunch-arm64-gcc-debug-boot-cpupools: > extends: .qemu-arm64 > script: > - - ./automation/scripts/qemu-smoke-dom0less-arm64.sh boot-cpupools 2>&1 | tee ${LOGFILE} > + - ./automation/scripts/qemu-smoke-hyperlaunch-arm64.sh boot-cpupools 2>&1 | tee ${LOGFILE} > needs: > - *arm64-test-needs > - alpine-3.12-gcc-debug-arm64-boot-cpupools > > -qemu-xtf-dom0less-arm64-gcc-hyp-xen-version: > +qemu-xtf-hyperlaunch-arm64-gcc-hyp-xen-version: > extends: .qemu-arm64 > script: > - - ./automation/scripts/qemu-xtf-dom0less-arm64.sh hyp-xen-version 2>&1 | tee ${LOGFILE} > + - ./automation/scripts/qemu-xtf-hyperlaunch-arm64.sh hyp-xen-version 2>&1 | tee ${LOGFILE} > needs: > - alpine-3.12-gcc-arm64 > - qemu-system-aarch64-6.0.0-arm64-export > > -qemu-xtf-dom0less-arm64-gcc-debug-hyp-xen-version: > +qemu-xtf-hyperlaunch-arm64-gcc-debug-hyp-xen-version: > extends: .qemu-arm64 > script: > - - ./automation/scripts/qemu-xtf-dom0less-arm64.sh hyp-xen-version 2>&1 | tee ${LOGFILE} > + - ./automation/scripts/qemu-xtf-hyperlaunch-arm64.sh hyp-xen-version 2>&1 | tee ${LOGFILE} > needs: > - alpine-3.12-gcc-debug-arm64 > - qemu-system-aarch64-6.0.0-arm64-export > @@ -338,66 +338,66 @@ qemu-smoke-dom0-arm32-gcc: > - *arm32-test-needs > - yocto-qemuarm > > -qemu-smoke-dom0less-arm32-gcc: > +qemu-smoke-hyperlaunch-arm32-gcc: > extends: .qemu-arm32 > script: > - - ./automation/scripts/qemu-smoke-dom0less-arm32.sh 2>&1 | tee ${LOGFILE} > + - ./automation/scripts/qemu-smoke-hyperlaunch-arm32.sh 2>&1 | tee ${LOGFILE} > needs: > - *arm32-test-needs > - debian-unstable-gcc-arm32 > > -qemu-smoke-dom0less-arm32-gcc-debug: > +qemu-smoke-hyperlaunch-arm32-gcc-debug: > extends: .qemu-arm32 > script: > - - ./automation/scripts/qemu-smoke-dom0less-arm32.sh 2>&1 | tee ${LOGFILE} > + - ./automation/scripts/qemu-smoke-hyperlaunch-arm32.sh 2>&1 | tee ${LOGFILE} > needs: > - *arm32-test-needs > - debian-unstable-gcc-arm32-debug > > -qemu-smoke-dom0less-arm32-gcc-staticmem: > +qemu-smoke-hyperlaunch-arm32-gcc-staticmem: > extends: .qemu-arm32 > script: > - - ./automation/scripts/qemu-smoke-dom0less-arm32.sh static-mem 2>&1 | tee ${LOGFILE} > + - ./automation/scripts/qemu-smoke-hyperlaunch-arm32.sh static-mem 2>&1 | tee ${LOGFILE} > needs: > - *arm32-test-needs > - debian-unstable-gcc-arm32-staticmem > > -qemu-smoke-dom0less-arm32-gcc-debug-staticmem: > +qemu-smoke-hyperlaunch-arm32-gcc-debug-staticmem: > extends: .qemu-arm32 > script: > - - ./automation/scripts/qemu-smoke-dom0less-arm32.sh static-mem 2>&1 | tee ${LOGFILE} > + - ./automation/scripts/qemu-smoke-hyperlaunch-arm32.sh static-mem 2>&1 | tee ${LOGFILE} > needs: > - *arm32-test-needs > - debian-unstable-gcc-arm32-debug-staticmem > > -qemu-smoke-dom0less-arm32-gcc-gzip: > +qemu-smoke-hyperlaunch-arm32-gcc-gzip: > extends: .qemu-arm32 > script: > - - ./automation/scripts/qemu-smoke-dom0less-arm32.sh gzip 2>&1 | tee ${LOGFILE} > + - ./automation/scripts/qemu-smoke-hyperlaunch-arm32.sh gzip 2>&1 | tee ${LOGFILE} > needs: > - *arm32-test-needs > - debian-unstable-gcc-arm32 > > -qemu-smoke-dom0less-arm32-gcc-debug-gzip: > +qemu-smoke-hyperlaunch-arm32-gcc-debug-gzip: > extends: .qemu-arm32 > script: > - - ./automation/scripts/qemu-smoke-dom0less-arm32.sh gzip 2>&1 | tee ${LOGFILE} > + - ./automation/scripts/qemu-smoke-hyperlaunch-arm32.sh gzip 2>&1 | tee ${LOGFILE} > needs: > - *arm32-test-needs > - debian-unstable-gcc-arm32-debug > > -qemu-smoke-dom0less-arm32-gcc-without-dom0: > +qemu-smoke-hyperlaunch-arm32-gcc-without-dom0: > extends: .qemu-arm32 > script: > - - ./automation/scripts/qemu-smoke-dom0less-arm32.sh without-dom0 2>&1 | tee ${LOGFILE} > + - ./automation/scripts/qemu-smoke-hyperlaunch-arm32.sh without-dom0 2>&1 | tee ${LOGFILE} > needs: > - *arm32-test-needs > - debian-unstable-gcc-arm32 > > -qemu-smoke-dom0less-arm32-gcc-debug-without-dom0: > +qemu-smoke-hyperlaunch-arm32-gcc-debug-without-dom0: > extends: .qemu-arm32 > script: > - - ./automation/scripts/qemu-smoke-dom0less-arm32.sh without-dom0 2>&1 | tee ${LOGFILE} > + - ./automation/scripts/qemu-smoke-hyperlaunch-arm32.sh without-dom0 2>&1 | tee ${LOGFILE} > needs: > - *arm32-test-needs > - debian-unstable-gcc-arm32-debug > diff --git a/automation/scripts/qemu-smoke-dom0less-arm32.sh b/automation/scripts/qemu-smoke-hyperlaunch-arm32.sh > similarity index 100% > rename from automation/scripts/qemu-smoke-dom0less-arm32.sh > rename to automation/scripts/qemu-smoke-hyperlaunch-arm32.sh > diff --git a/automation/scripts/qemu-smoke-dom0less-arm64.sh b/automation/scripts/qemu-smoke-hyperlaunch-arm64.sh > similarity index 99% > rename from automation/scripts/qemu-smoke-dom0less-arm64.sh > rename to automation/scripts/qemu-smoke-hyperlaunch-arm64.sh > index 75f575424a4e..db22cfaa1fd6 100755 > --- a/automation/scripts/qemu-smoke-dom0less-arm64.sh > +++ b/automation/scripts/qemu-smoke-hyperlaunch-arm64.sh > @@ -113,7 +113,7 @@ echo "#!/bin/bash > export LD_LIBRARY_PATH=/usr/local/lib > bash /etc/init.d/xencommons start > > -/usr/local/lib/xen/bin/init-dom0less > +/usr/local/lib/xen/bin/init-hyperlaunch-guests > > brctl addbr xenbr0 > brctl addif xenbr0 eth0 > diff --git a/automation/scripts/qemu-xtf-dom0less-arm64.sh b/automation/scripts/qemu-xtf-hyperlaunch-arm64.sh > similarity index 100% > rename from automation/scripts/qemu-xtf-dom0less-arm64.sh > rename to automation/scripts/qemu-xtf-hyperlaunch-arm64.sh > diff --git a/automation/scripts/xilinx-smoke-dom0less-arm64.sh b/automation/scripts/xilinx-smoke-hyperlaunch-arm64.sh > similarity index 98% > rename from automation/scripts/xilinx-smoke-dom0less-arm64.sh > rename to automation/scripts/xilinx-smoke-hyperlaunch-arm64.sh > index 075305241c8d..35b60720fe08 100755 > --- a/automation/scripts/xilinx-smoke-dom0less-arm64.sh > +++ b/automation/scripts/xilinx-smoke-hyperlaunch-arm64.sh > @@ -73,7 +73,7 @@ echo "#!/bin/bash > export LD_LIBRARY_PATH=/usr/local/lib > bash /etc/init.d/xencommons start > > -/usr/local/lib/xen/bin/init-dom0less > +/usr/local/lib/xen/bin/init-hyperlaunch-guests > > ${dom0_check} > " > etc/local.d/xen.start > diff --git a/docs/INDEX b/docs/INDEX > index e673edd75c31..ed3d2e6198ec 100644 > --- a/docs/INDEX > +++ b/docs/INDEX > @@ -25,4 +25,4 @@ misc/arm/early-printk Enabling early printk on ARM > misc/arm/passthrough Passthrough a device described in the Device Tree to a guest > misc/arm/device-tree/booting Device tree bindings to boot Xen > misc/arm/device-tree/passthrough Device tree binding to passthrough a device > -features/dom0less.markdown Boot multiple domains from Xen in parallel > +features/hyperlaunch.markdown Boot multiple domains from Xen in parallel > diff --git a/docs/features/dom0less.pandoc b/docs/features/hyperlaunch.pandoc > similarity index 84% > rename from docs/features/dom0less.pandoc > rename to docs/features/hyperlaunch.pandoc > index 725afa055838..a62d534696e3 100644 > --- a/docs/features/dom0less.pandoc > +++ b/docs/features/hyperlaunch.pandoc > @@ -1,7 +1,7 @@ > -Dom0less > -======== > +Hyperlaunch > +=========== > > -"Dom0less" is a set of Xen features that enable the deployment of a Xen > +"Hyperlaunch" is a set of Xen features that enable the deployment of a Xen > system without an control domain (often referred to as "dom0"). Each > feature can be used independently from the others, unless otherwise > stated. > @@ -93,26 +93,26 @@ See docs/misc/arm/device-tree/booting.txt for more information. > PV Drivers > ---------- > > -It is possible to use PV drivers with dom0less guests with some > +It is possible to use PV drivers with hyperlaunch started guests with some > restrictions: > > -- dom0less domUs that want to use PV drivers support should have the > +- hyperlaunch started domUs that want to use PV drivers support should have the > "xen,enhanced" property set under their device tree nodes (see > docs/misc/arm/device-tree/booting.txt) > - a dom0 must be present (or another domain with enough privileges to > run the toolstack) > -- after dom0 is booted, the utility "init-dom0less" must be run > -- do not run "init-dom0less" while creating other guests with xl > +- after dom0 is booted, the utility "init-hyperlaunch-guests" must be run > +- do not run "init-hyperlaunch-guests" while creating other guests with xl > > -After the execution of init-dom0less, it is possible to use "xl" to > -hotplug PV drivers to dom0less guests. E.g. xl network-attach domU. > +After the execution of init-hyperlaunch-guests, it is possible to use "xl" to > +hotplug PV drivers to hyperlaunch started guests. E.g. xl network-attach domU. > > The implementation works as follows: > -- Xen allocates the xenstore event channel for each dom0less domU that > - has the "xen,enhanced" property, and sets HVM_PARAM_STORE_EVTCHN > +- Xen allocates the xenstore event channel for each hyperlaunch started domU > + that has the "xen,enhanced" property, and sets HVM_PARAM_STORE_EVTCHN > - Xen does *not* allocate the xenstore page and sets HVM_PARAM_STORE_PFN > to ~0ULL (invalid) > -- Dom0less domU kernels check that HVM_PARAM_STORE_PFN is set to invalid > +- Hyperlaunch started domU kernels check that HVM_PARAM_STORE_PFN is set to invalid > - Old kernels will continue without xenstore support (Note: some old > buggy kernels might crash because they don't check the validity of > HVM_PARAM_STORE_PFN before using it! Disable "xen,enhanced" in > @@ -120,7 +120,7 @@ The implementation works as follows: > - New kernels will wait for a notification on the xenstore event > channel (HVM_PARAM_STORE_EVTCHN) before continuing with the > initialization > -- Once dom0 is booted, init-dom0less is executed: > +- Once dom0 is booted, init-hyperlaunch-guests is executed: > - it allocates the xenstore shared page and sets HVM_PARAM_STORE_PFN > - it calls xs_introduce_domain > - Xenstored notices the new domain, initializes interfaces as usual, and > @@ -159,12 +159,13 @@ Notes > ----- > > - 'xl console' command will not attach to the domain's console in case > - of dom0less. DomU are domains created by Xen (similar to Dom0) and > - therefore they are all managed by Xen and some of the commands may not work. > + of hyperlaunch started guests. DomU are domains created by Xen (similar to > + Dom0) and therefore they are all managed by Xen and some of the commands may > + not work. > > A user is allowed to configure the key sequence to switch input. > Pressing the Xen "conswitch" (Ctrl-A by default) three times > - switches input in case of dom0less mode. > + switches input in case of hyperlaunch mode. > > - Domains created by Xen will have no name at boot. Domain-0 has a name > thanks to the helper xen-init-dom0 called at boot by the initscript. > diff --git a/docs/misc/arm/device-tree/booting.txt b/docs/misc/arm/device-tree/booting.txt > index bbd955e9c2f6..10ec1910a75a 100644 > --- a/docs/misc/arm/device-tree/booting.txt > +++ b/docs/misc/arm/device-tree/booting.txt > @@ -572,8 +572,8 @@ Static Shared Memory > ==================== > > The static shared memory device tree nodes allow users to statically set up > -shared memory on dom0less system, enabling domains to do shm-based > -communication. > +shared memory on Hyperlaunch started guests system, enabling domains to do > +shm-based communication. > > - compatible > > diff --git a/docs/misc/efi.pandoc b/docs/misc/efi.pandoc > index 11c1ac334600..d15cb87b49d1 100644 > --- a/docs/misc/efi.pandoc > +++ b/docs/misc/efi.pandoc > @@ -194,12 +194,12 @@ chosen { > }; > } > > -## UEFI boot and dom0less on ARM > +## UEFI boot and Hyperlaunch on ARM > > -Dom0less feature is supported by ARM and it is possible to use it when Xen is > +Hyperlaunch feature is supported by ARM and it is possible to use it when Xen is > started as an EFI application. > The way to specify the domU domains is by Device Tree as specified in the > -[dom0less](dom0less.html) documentation page under the "Device Tree > +[Hyperlaunch](hyperlaunch.html) documentation page under the "Device Tree > configuration" section, but instead of declaring the reg property in the boot > module, the user must specify the "xen,uefi-binary" property containing the name > of the binary file that has to be loaded in memory. > @@ -236,7 +236,7 @@ domU1 { > These are the different ways to boot a Xen system from UEFI: > > - Boot Xen and Dom0 (minimum required) > - - Boot Xen and DomU(s) (true dom0less, only on ARM) > + - Boot Xen and DomU(s) (only on ARM) > - Boot Xen, Dom0 and DomU(s) (only on ARM) > > ### Boot Xen and Dom0 > @@ -247,7 +247,7 @@ example above. > ### Boot Xen and DomU(s) > > This configuration needs the domU domain(s) specified in the /chosen node, > -examples of how to do that are provided by the documentation about dom0less > +examples of how to do that are provided by the documentation about Hyperlaunch > and the example above shows how to use the "xen,uefi-binary" property to use the > UEFI stub for module loading. > When adding DomU modules to device tree, also add the property > @@ -258,7 +258,7 @@ can specify the Xen boot arguments in the configuration file with the "options=" > keyword or in the device tree with the "xen,xen-bootargs" property, but be > aware that the Xen configuration file value has a precedence over the DT value. > > -Example 1 of how to boot a true dom0less configuration: > +Example 1 of how to boot an Hyperlaunch configuration with only domU(s): > > Xen configuration file: skipped. > > @@ -301,7 +301,7 @@ chosen { > }; > ``` > > -Example 2 of how to boot a true dom0less configuration: > +Example 2 of how to boot an Hyperlaunch configuration with only domU(s): > > Xen configuration file: > > diff --git a/docs/misc/xen-command-line.pandoc b/docs/misc/xen-command-line.pandoc > index 4060ebdc5d76..35d7c9821963 100644 > --- a/docs/misc/xen-command-line.pandoc > +++ b/docs/misc/xen-command-line.pandoc > @@ -1156,7 +1156,7 @@ to use the default. > > Default : `true` > > Flag to enable or disable support for extended regions for Dom0 and > -Dom0less DomUs. > +Hyperlaunch started DomUs. > > Extended regions are ranges of unused address space exposed to the guest > as "safe to use" for special memory mappings. Disable if your board > diff --git a/docs/misc/xenstore-ring.txt b/docs/misc/xenstore-ring.txt > index dbc7335e24b8..f84dedd8016e 100644 > --- a/docs/misc/xenstore-ring.txt > +++ b/docs/misc/xenstore-ring.txt > @@ -115,9 +115,9 @@ and reconnect is in progress") and signalling the event channel. > The guest must now ignore all fields except the Connection state and > wait for it to be set to 0 ("Ring is connected"). > > -In certain circumstances (e.g. dom0less guests with PV drivers support) > -it is possible for the guest to find the Connection state already set to > -1 by someone else during xenstore initialization. In that case, like in > +In certain circumstances (e.g. Hyperlaunch started guests with PV drivers > +support) it is possible for the guest to find the Connection state already set > +to 1 by someone else during xenstore initialization. In that case, like in > the previous case, the guest must ignore all fields except the > Connection state and wait for it to be set to 0 before proceeding. > > diff --git a/tools/helpers/Makefile b/tools/helpers/Makefile > index 09590eb5b6f0..332ab47da318 100644 > --- a/tools/helpers/Makefile > +++ b/tools/helpers/Makefile > @@ -11,7 +11,7 @@ ifeq ($(CONFIG_X86),y) > TARGETS += init-xenstore-domain > endif > ifeq ($(CONFIG_ARM),y) > -TARGETS += init-dom0less > +TARGETS += init-hyperlaunch-guests > endif > endif > > @@ -31,13 +31,13 @@ $(INIT_XENSTORE_DOMAIN_OBJS): CFLAGS += $(CFLAGS_libxenlight) > $(INIT_XENSTORE_DOMAIN_OBJS): CFLAGS += -include $(XEN_ROOT)/tools/config.h > init-xenstore-domain: LDLIBS += $(call xenlibs-ldlibs,toollog store ctrl guest light) > > -INIT_DOM0LESS_OBJS = init-dom0less.o init-dom-json.o > -$(INIT_DOM0LESS_OBJS): CFLAGS += $(CFLAGS_libxentoollog) > -$(INIT_DOM0LESS_OBJS): CFLAGS += $(CFLAGS_libxenstore) > -$(INIT_DOM0LESS_OBJS): CFLAGS += $(CFLAGS_libxenlight) > -$(INIT_DOM0LESS_OBJS): CFLAGS += $(CFLAGS_libxenctrl) > -$(INIT_DOM0LESS_OBJS): CFLAGS += $(CFLAGS_libxenevtchn) > -init-dom0less: LDLIBS += $(call xenlibs-ldlibs,ctrl evtchn toollog store light guest foreignmemory) > +INIT_HYPERLAUNCH_OBJS = init-hyperlaunch-guests.o init-dom-json.o > +$(INIT_HYPERLAUNCH_OBJS): CFLAGS += $(CFLAGS_libxentoollog) > +$(INIT_HYPERLAUNCH_OBJS): CFLAGS += $(CFLAGS_libxenstore) > +$(INIT_HYPERLAUNCH_OBJS): CFLAGS += $(CFLAGS_libxenlight) > +$(INIT_HYPERLAUNCH_OBJS): CFLAGS += $(CFLAGS_libxenctrl) > +$(INIT_HYPERLAUNCH_OBJS): CFLAGS += $(CFLAGS_libxenevtchn) > +init-hyperlaunch-guests: LDLIBS += $(call xenlibs-ldlibs,ctrl evtchn toollog store light guest foreignmemory) > > .PHONY: all > all: $(TARGETS) > @@ -48,8 +48,8 @@ xen-init-dom0: $(XEN_INIT_DOM0_OBJS) > init-xenstore-domain: $(INIT_XENSTORE_DOMAIN_OBJS) > $(CC) $(LDFLAGS) -o $@ $(INIT_XENSTORE_DOMAIN_OBJS) $(LDLIBS) $(APPEND_LDFLAGS) > > -init-dom0less: $(INIT_DOM0LESS_OBJS) > - $(CC) $(LDFLAGS) -o $@ $(INIT_DOM0LESS_OBJS) $(LDLIBS) $(APPEND_LDFLAGS) > +init-hyperlaunch-guests: $(INIT_HYPERLAUNCH_OBJS) > + $(CC) $(LDFLAGS) -o $@ $(INIT_HYPERLAUNCH_OBJS) $(LDLIBS) $(APPEND_LDFLAGS) > > .PHONY: install > install: all > diff --git a/tools/helpers/init-dom0less.c b/tools/helpers/init-hyperlaunch-guests.c > similarity index 98% > rename from tools/helpers/init-dom0less.c > rename to tools/helpers/init-hyperlaunch-guests.c > index fee93459c4b9..c786a5fd37b2 100644 > --- a/tools/helpers/init-dom0less.c > +++ b/tools/helpers/init-hyperlaunch-guests.c > @@ -129,7 +129,7 @@ static int create_xenstore(struct xs_handle *xsh, > rc = snprintf(id_str, STR_MAX_LENGTH, "%u", domid); > if (rc < 0 || rc >= STR_MAX_LENGTH) > return rc; > - rc = snprintf(dom_name_str, STR_MAX_LENGTH, "dom0less-%u", domid); > + rc = snprintf(dom_name_str, STR_MAX_LENGTH, "hyperlaunch-%u", domid); > if (rc < 0 || rc >= STR_MAX_LENGTH) > return rc; > rc = snprintf(uuid_str, STR_MAX_LENGTH, LIBXL_UUID_FMT, LIBXL_UUID_BYTES(uuid)); > @@ -232,7 +232,7 @@ static int init_domain(struct xs_handle *xsh, > int rc; > struct xenstore_domain_interface *intf; > > - printf("Init dom0less domain: %u\n", info->domid); > + printf("Init hyperlaunch domain: %u\n", info->domid); > > rc = xc_hvm_param_get(xch, info->domid, HVM_PARAM_STORE_EVTCHN, > &xenstore_evtchn); > diff --git a/xen/arch/arm/Kconfig b/xen/arch/arm/Kconfig > index 61e581b8c2b0..c5cb8f28011a 100644 > --- a/xen/arch/arm/Kconfig > +++ b/xen/arch/arm/Kconfig > @@ -179,10 +179,10 @@ config TEE > source "arch/arm/tee/Kconfig" > > config STATIC_SHM > - bool "Statically shared memory on a dom0less system" if UNSUPPORTED > + bool "Statically shared memory on an Hyperlaunch system" if UNSUPPORTED > depends on STATIC_MEMORY > help > - This option enables statically shared memory on a dom0less system. > + This option enables statically shared memory on an Hyperlaunch system. > > endmenu > > diff --git a/xen/arch/arm/domain_build.c b/xen/arch/arm/domain_build.c > index d0d6be922db1..897e1f2de39e 100644 > --- a/xen/arch/arm/domain_build.c > +++ b/xen/arch/arm/domain_build.c > @@ -42,7 +42,7 @@ integer_param("dom0_max_vcpus", opt_dom0_max_vcpus); > > /* > * If true, the extended regions support is enabled for dom0 and > - * dom0less domUs. > + * Hyperlaunch started domUs. > */ > static bool __initdata opt_ext_regions = true; > boolean_param("ext_regions", opt_ext_regions); > @@ -3347,7 +3347,7 @@ static int __init prepare_dtb_domU(struct domain *d, struct kernel_info *kinfo) > goto err; > } > > - if ( kinfo->dom0less_feature & DOM0LESS_ENHANCED_NO_XS ) > + if ( kinfo->hyperlaunch_feature & HYPERLAUNCH_ENHANCED_NO_XS ) > { > ret = make_hypervisor_node(d, kinfo, addrcells, sizecells); > if ( ret ) > @@ -3810,7 +3810,7 @@ static int __init construct_domU(struct domain *d, > const struct dt_device_node *node) > { > struct kernel_info kinfo = {}; > - const char *dom0less_enhanced; > + const char *hyperlaunch_enhanced; > int rc; > u64 mem; > u32 p2m_mem_mb; > @@ -3841,18 +3841,18 @@ static int __init construct_domU(struct domain *d, > > kinfo.vpl011 = dt_property_read_bool(node, "vpl011"); > > - rc = dt_property_read_string(node, "xen,enhanced", &dom0less_enhanced); > + rc = dt_property_read_string(node, "xen,enhanced", &hyperlaunch_enhanced); > if ( rc == -EILSEQ || > rc == -ENODATA || > - (rc == 0 && !strcmp(dom0less_enhanced, "enabled")) ) > + (rc == 0 && !strcmp(hyperlaunch_enhanced, "enabled")) ) > { > if ( hardware_domain ) > - kinfo.dom0less_feature = DOM0LESS_ENHANCED; > + kinfo.hyperlaunch_feature = HYPERLAUNCH_ENHANCED; > else > panic("At the moment, Xenstore support requires dom0 to be present\n"); > } > - else if ( rc == 0 && !strcmp(dom0less_enhanced, "no-xenstore") ) > - kinfo.dom0less_feature = DOM0LESS_ENHANCED_NO_XS; > + else if ( rc == 0 && !strcmp(hyperlaunch_enhanced, "no-xenstore") ) > + kinfo.hyperlaunch_feature = HYPERLAUNCH_ENHANCED_NO_XS; > > if ( vcpu_create(d, 0) == NULL ) > return -ENOMEM; > @@ -3902,7 +3902,7 @@ static int __init construct_domU(struct domain *d, > if ( rc < 0 ) > return rc; > > - if ( kinfo.dom0less_feature & DOM0LESS_XENSTORE ) > + if ( kinfo.hyperlaunch_feature & HYPERLAUNCH_XENSTORE ) > { > ASSERT(hardware_domain); > rc = alloc_xenstore_evtchn(d); > diff --git a/xen/arch/arm/efi/efi-boot.h b/xen/arch/arm/efi/efi-boot.h > index bb64925d708c..cccf90817279 100644 > --- a/xen/arch/arm/efi/efi-boot.h > +++ b/xen/arch/arm/efi/efi-boot.h > @@ -807,9 +807,9 @@ static int __init handle_module_node(const EFI_LOADED_IMAGE *loaded_image, > * in the DT. > * Returns number of multiboot,module found or negative number on error. > */ > -static int __init handle_dom0less_domain_node(const EFI_LOADED_IMAGE *loaded_image, > - EFI_FILE_HANDLE *dir_handle, > - int domain_node) > +static int __init > +handle_hyperlaunch_domain_node(const EFI_LOADED_IMAGE *loaded_image, > + EFI_FILE_HANDLE *dir_handle, int domain_node) > { > int module_node, addr_cells, size_cells, len; > const struct fdt_property *prop; > @@ -879,7 +879,8 @@ static int __init efi_check_dt_boot(const EFI_LOADED_IMAGE *loaded_image) > if ( !fdt_node_check_compatible(fdt, node, "xen,domain") ) > { > /* Found a node with compatible xen,domain; handle this node. */ > - ret = handle_dom0less_domain_node(loaded_image, &dir_handle, node); > + ret = handle_hyperlaunch_domain_node(loaded_image, &dir_handle, > + node); > if ( ret < 0 ) > return ERROR_DT_MODULE_DOMU; > } > diff --git a/xen/arch/arm/include/asm/kernel.h b/xen/arch/arm/include/asm/kernel.h > index 4617cdc83bac..042e250e172a 100644 > --- a/xen/arch/arm/include/asm/kernel.h > +++ b/xen/arch/arm/include/asm/kernel.h > @@ -10,23 +10,23 @@ > #include > > /* > - * List of possible features for dom0less domUs > + * List of possible features for Hyperlaunch started domUs > * > - * DOM0LESS_ENHANCED_NO_XS: Notify the OS it is running on top of Xen. All the > - * default features (excluding Xenstore) will be > - * available. Note that an OS *must* not rely on the > - * availability of Xen features if this is not set. > - * DOM0LESS_XENSTORE: Xenstore will be enabled for the VM. This feature > - * can't be enabled without the > - * DOM0LESS_ENHANCED_NO_XS. > - * DOM0LESS_ENHANCED: Notify the OS it is running on top of Xen. All the > - * default features (including Xenstore) will be > - * available. Note that an OS *must* not rely on the > - * availability of Xen features if this is not set. > + * HYPERLAUNCH_ENHANCED_NO_XS: Notify the OS it is running on top of Xen. All > + * the default features (excluding Xenstore) will be > + * available. Note that an OS *must* not rely on the > + * availability of Xen features if this is not set. > + * HYPERLAUNCH_XENSTORE: Xenstore will be enabled for the VM. This feature > + * can't be enabled without the > + * HYPERLAUNCH_ENHANCED_NO_XS. > + * HYPERLAUNCH_ENHANCED: Notify the OS it is running on top of Xen. All > + * the default features (including Xenstore) will be > + * available. Note that an OS *must* not rely on the > + * availability of Xen features if this is not set. > */ > -#define DOM0LESS_ENHANCED_NO_XS BIT(0, U) > -#define DOM0LESS_XENSTORE BIT(1, U) > -#define DOM0LESS_ENHANCED (DOM0LESS_ENHANCED_NO_XS | DOM0LESS_XENSTORE) > +#define HYPERLAUNCH_ENHANCED_NO_XS BIT(0, U) > +#define HYPERLAUNCH_XENSTORE BIT(1, U) > +#define HYPERLAUNCH_ENHANCED (HYPERLAUNCH_ENHANCED_NO_XS | HYPERLAUNCH_XENSTORE) > > struct kernel_info { > #ifdef CONFIG_ARM_64 > @@ -57,7 +57,7 @@ struct kernel_info { > bool vpl011; > > /* Enable/Disable PV drivers interfaces */ > - uint16_t dom0less_feature; > + uint16_t hyperlaunch_feature; > > /* GIC phandle */ > uint32_t phandle_gic; > diff --git a/xen/arch/arm/setup.c b/xen/arch/arm/setup.c > index bbf72b69aae6..955c6b9e2e9e 100644 > --- a/xen/arch/arm/setup.c > +++ b/xen/arch/arm/setup.c > @@ -1041,7 +1041,7 @@ static void __init setup_mm(void) > } > #endif > > -static bool __init is_dom0less_mode(void) > +static bool __init is_hyperlaunch_mode(void) > { > struct bootmodules *mods = &bootinfo.modules; > struct bootmodule *mod; > @@ -1068,7 +1068,7 @@ static bool __init is_dom0less_mode(void) > > /* > * If there is no dom0 kernel but at least one domU, then we are in > - * dom0less mode > + * Hyperlaunch mode > */ > return ( !dom0found && domUfound ); > } > @@ -1242,10 +1242,10 @@ void __init start_xen(unsigned long boot_phys_offset, > enable_cpu_features(); > > /* Create initial domain 0. */ > - if ( !is_dom0less_mode() ) > + if ( !is_hyperlaunch_mode() ) > create_dom0(); > else > - printk(XENLOG_INFO "Xen dom0less mode detected\n"); > + printk(XENLOG_INFO "Xen Hyperlaunch mode detected\n"); > > if ( acpi_disabled ) > { -- Julien Grall From xen-devel-bounces@lists.xenproject.org Fri Jun 30 09:26:32 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 30 Jun 2023 09:26:32 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557397.870706 (Exim 4.92) (envelope-from ) id 1qFAOU-0000By-Rs; Fri, 30 Jun 2023 09:26:22 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557397.870706; Fri, 30 Jun 2023 09:26:22 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFAOU-0000Br-OF; Fri, 30 Jun 2023 09:26:22 +0000 Received: by outflank-mailman (input) for mailman id 557397; Fri, 30 Jun 2023 09:26:21 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFAOT-0000Bj-6j for xen-devel@lists.xenproject.org; Fri, 30 Jun 2023 09:26:21 +0000 Received: from NAM02-BN1-obe.outbound.protection.outlook.com (mail-bn1nam02on20622.outbound.protection.outlook.com [2a01:111:f400:7eb2::622]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 2abf28a4-1728-11ee-8611-37d641c3527e; Fri, 30 Jun 2023 11:26:18 +0200 (CEST) Received: from SN6PR12MB2621.namprd12.prod.outlook.com (2603:10b6:805:73::15) by CH3PR12MB8728.namprd12.prod.outlook.com (2603:10b6:610:171::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.19; Fri, 30 Jun 2023 09:26:14 +0000 Received: from SN6PR12MB2621.namprd12.prod.outlook.com ([fe80::8018:78f7:1b08:7a54]) by SN6PR12MB2621.namprd12.prod.outlook.com ([fe80::8018:78f7:1b08:7a54%2]) with mapi id 15.20.6521.026; Fri, 30 Jun 2023 09:26:14 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 2abf28a4-1728-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=MLJV1xpKJ337i/YY72EFDjKJcnhep6z4LEIxJH2lIEDPYtxata32QsmLt6xlz/U+yvRMqsdu/3rtmdx8Po8wj1mj0zvLmSgVebcKOt3fusVumIqWgqLmmGO3JvdpFDg87l3kkF0DTD0NJ6uLNg+AN7wu6g9/aDMsnF8XIsjjE2cCgQlSGwCZ8Y+3fEXWft6UIi5Xz2m1N91AbJ/AL5Www5qYIzewCeoR5E6ImL80MYDFoKKsaTgdvl1OXzNlyoXJSo2tDs81YzilLNCwNdtDOoQQI4QZSljVuQCyc9Z5ox2x9v9mr2FS4NGNSr58KedWpedatj1sN+EY3iDGRc3TZA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=++18t5IrWfF6PP2c7FUZG6roHKCyELeko2HsbSaV2ts=; b=Df7wXB8euYdUnjVhIn1NaeRg99QgFNXLKk0H/HtZAGqxU9BVh/vSoYcvygD6E7mxPVtwF6OjAzGgtRgwJFxEDfGUjIhknqNVohiaZnVK+1B4g7LEc7aPhM3/7hMZgzUcbwNn8Xdn67cplAXUALV8ZJLCCevX04+/QiuDkUERQ2FbK5Si57fAF6KzisBbtxaJvBXDZan815cSW/tv1ddbdvPzCH99xeYKFzGvslV6p8lVDpKReI0grTHU9vnK+htgF35TVKYEv4loYjzeaW6M6dtxLEHjyPPJq7d7p9F02dChNcyNRbJ+3r2JfqTqod876QsdQMACpmBojnNHLOvmTw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass header.d=amd.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=++18t5IrWfF6PP2c7FUZG6roHKCyELeko2HsbSaV2ts=; b=oH+MaZanSbbS35f/CJfmTt2hX60LIN8uyIhPKRZ4G6wniLrsLznZBIkhA9cX72y0srO8RtsJWMgx96vVgxWcmeWLB4lW25ePMob5qghGKZiX/5cyOIvmKykxvAMwXmXtlQF2Uvr3LGSn6JXcfJWlX95KGrVQbqNJXjH/obCiEl4= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=amd.com; Message-ID: <5ae6e98a-2bfe-b48d-0dae-96ae1d76f79e@amd.com> Date: Fri, 30 Jun 2023 10:26:08 +0100 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v3 24/52] xen/mpu: build up start-of-day Xen MPU memory region map To: Julien Grall , Penny Zheng , xen-devel@lists.xenproject.org Cc: Stefano Stabellini , Bertrand Marquis , Volodymyr Babchuk , Wei Chen References: <20230626033443.2943270-1-Penny.Zheng@arm.com> <20230626033443.2943270-25-Penny.Zheng@arm.com> <778688ab-8fd4-2b06-e644-b5a013bb56f7@amd.com> <39a5a729-0099-67e4-bf4a-c65ae99a4619@xen.org> <37e2856b-038e-6a3a-a6ff-c518dfeda552@amd.com> <301e2e02-f2ab-5538-d426-52a02a7f35b5@amd.com> <6a06868f-beea-13c3-5d18-23930c7dd971@xen.org> From: Ayan Kumar Halder In-Reply-To: <6a06868f-beea-13c3-5d18-23930c7dd971@xen.org> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO3P265CA0016.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:bb::21) To SN6PR12MB2621.namprd12.prod.outlook.com (2603:10b6:805:73::15) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SN6PR12MB2621:EE_|CH3PR12MB8728:EE_ X-MS-Office365-Filtering-Correlation-Id: 9eeeabad-16cd-433d-01bb-08db794c0c90 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: TnuHGt/NcfNTbpY9LEM2/9I5KIjolcdqPmpwcONC/9Q0fdeqScNPb68ya3X0cjXvmjqm/xaBw6javhjyD5u1eJyIdtPDP2nRZQZh6CtSlLFmqad2tm801dRSEmIXOWLfWZwyatjGZ2GrpXvDaAogjxu9xQVgqMbctHRdEpxbCvoa9ZF7VnSy5FWCHuDOL7qfE8XBCi0Rxb9PFGZepSmE6hpRsm7RP4ZD9bD0tYBDH3XdaWFSRYah+MYLpd7PUFayxWX5ZpDXIeXGtUSJvbkjwnZCEiTtI6lRuU0pMG41ZS368SNLFUPihiSc4Y69v7inxgsdNkxjm6guYJ+0eIRAzXTPOEVXQK5bqbEz6rga/SKmcWEGcH8h/M7QjtrGE7W83Xw4TaaMu50Xyz9UCCfy+7oAbwWQrSBPCVwljKAvNRwq2L6k5n8N51HH8T8QAmgssF46Ean25sa57qGjm8dIRUfI7MNXh2WPmpsyZ9zz8Ia1q+Uvz58eZFwn//pu8E+WOSCfRVWGWRrKjyRzaonO8e8Vdfej7lO3mv5z8DTCzN4Y2gSFpxkUeI+HmgMY9ATrWpDFv1Poe6VwrZkofAUm21749bSXZqpgsLyUrVpAJuJdHm6b5lV/W/PZMwMp7YipdGJbfuLXU/YjHIgiy2DwOw== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SN6PR12MB2621.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(136003)(366004)(346002)(376002)(396003)(451199021)(83380400001)(2616005)(2906002)(38100700002)(36756003)(8936002)(8676002)(110136005)(5660300002)(31686004)(54906003)(6512007)(41300700001)(66946007)(66556008)(66476007)(4326008)(6666004)(316002)(6486002)(478600001)(186003)(31696002)(53546011)(6506007)(26005)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?VkRlQXZybnc3bnU4RHc2U2ZGM2dOa0oxajNQeG10N2VDVWk1YlIyN2prYSt0?= =?utf-8?B?SVd4NWpwRzZFcFhJZHRlQk1IVWxpM0lGY3ZGeW5hNEN2Njdmby92SXZpdzF4?= =?utf-8?B?UFdvYzBmeXhYL21ubGp5U3RROWZnODZrU2w5SnRPZGtDQVlqUk4wQkIxM2RJ?= =?utf-8?B?ZmlGZXVoR3VVbHYzblBTUTArUkx3djdQNDV2TGdZZFI3K2dqdHd6MzJ3TmJs?= =?utf-8?B?OHNiTldpdEtiTStqZWxlSEJUQlV0SWpENmh1V3pReVRHQURxSkNEQTlFcWRh?= =?utf-8?B?ZVZnNlNwZEZCWVpPVkE3eEtuTkRYbDNIQkV0bkNYY0g2NE5LKzVmSGhsbCsz?= =?utf-8?B?UVhkbEJ5RUUrOGZDL0FkbzFvR3FPd2FFRkk5R2UxUk1UMzBTVlNkZC9ocHpk?= =?utf-8?B?Q3FXTXdnSFErdlNTZ1djZDg5YzhyQWtWNHpjbFkxSVQ4Z2paNGVta28rOWN0?= =?utf-8?B?TTVwT3lPbkZXRDFpdXZkRXY5WHJ0YzhuMEpmRUlrdmFla2d6QzNMZ1llMlh0?= =?utf-8?B?Y2lsck1sM1FJWkUyTWlTaytSYlVmRUdLTXlkY2pqWXlXQnNjWHluV1BQRTdO?= =?utf-8?B?cVUvSXRwb3JQaHYzekNLRXRyVmlYU0JRMXBlUWpYK2VjQWI3YURTRHB1ZGFs?= =?utf-8?B?dDlndnlBTzVCdm1PMnlrcURRMWtJbHgyNFl5djB3VjAyUmhCU2IxRXhGTC9Y?= =?utf-8?B?bVRiRmZnRlI1aDd4b01OS3NDZityM2syUUpNSXR1K1YzaVpjUHh5d2VqdVZF?= =?utf-8?B?T0hSeTRhOGgvd0d3MnFtNDVnWFQvb2Q3YyswUGZJTVk1UEJlZ0NVK2dhTmdN?= =?utf-8?B?N3BLTTVSYUJ2L2FWeE5CQVdudmg3UUVWTWs3OTI1UDlrNkRJYjIrOURja0FZ?= =?utf-8?B?SmxiSjdNdXlBS1hkcUxtQ2praHZUVUQ4TXd6a2JRMkkrVktqVjlYQlFoVFRY?= =?utf-8?B?amM5RnFNQzJiWUI3RWIrWDFSa2R2T0FkSzhnNkNqOWxxMmVodTIzUTlBczZn?= =?utf-8?B?RVBVckU3SU12OERGb1lPSDV5KzRWZzFIWjNmV3Y4ZS9uK2NQQXVLTmV1Y05D?= =?utf-8?B?ME1DTFVjU3RKZDBMTFdIUk9BcHlBeHh3b2VlRVZWM28vU3lIMUh5MDIyNjNx?= =?utf-8?B?OUhNOXZhU0xub3ZKMG4wNEFQYTZIZDUyUVFRV1FkQ2ZQeFNEOCtrODFEWWhO?= =?utf-8?B?RC9qa3lxN2VWZDgxdWJaZVJrbVB0WXBTL1Z0cEhvWW12UkVRMi9OUmZBREE2?= =?utf-8?B?NnJxejEzcGw3ZGZweEY4NkJ1M1FWSCtCV3ZCeFBTWkJqdVNKSmZDQUxGTFVD?= =?utf-8?B?c1V2WnhnQzRSTzNkRG0vN3Z4cEU5T0FTRTZGRFNjMWQ5c3NUdm9leFZFbmF0?= =?utf-8?B?Q3FlL1FDTmVLL0d4VUVGSjh0ZWFjTG9XZVd6a21HVGh5RE5CU0g0QXpISXNw?= =?utf-8?B?R0NiS2dPUDMwQ3RHdGZTb2hFeVRjYm5vRDdhaVZycU9ZVVdnSThlQzFhYlps?= =?utf-8?B?bGxmS0V4eFc1QXgyVlJvRXJKT0lUbjhKR2JnNjNHd2FaRVlmemtEQU00YVVj?= =?utf-8?B?bUdhSzJMMDhhb1VNU0RGaC9OVS80cDlQWkZ2Z05CS0diV0t6UmgveUtRUEpG?= =?utf-8?B?ampDSmFEb24ySTRIQXJDRS9NYUttZVpQcExTNmNoYzVIODlCNXBGcHZZVmYy?= =?utf-8?B?ODQ4U0I0RGs5RnI5T1NkUXh3bTFtb0doeklDZVExY0hkSFBUTzMyd3k1S1d2?= =?utf-8?B?Q3NRSit0TU03bDlnQytyVVJDMlRoRWUwYUVHNllHWUtzM21EeFlmTFIyNmYw?= =?utf-8?B?b1lHdjh4ZUYxcDhOM05IWjlDaTRiazNUTTFmektCNHVIRmF5ZEJFaStZRDJ4?= =?utf-8?B?MWhiTFo2dzd0K3A4NExCRHI3VzlUSzcrL2lEejhiSlpHeHVrRURxYlRlL0tN?= =?utf-8?B?RkdWeG9pc0kwSmN2VXpVSlBja3dwQ1ZGSTFtby90RDhxcFFGZlU4NXlseFZS?= =?utf-8?B?YnVlYXd3MmZvbHZjUE1DVUc5WHNOMGVnRDN4Y09kamJ5TzU2VXJRNHl4dVMz?= =?utf-8?B?dnFwa3pyZGo4c2tqdmlNdFpBWmdZb1hzRjlRVUpxM2U5emI1UThadnV1dUJa?= =?utf-8?Q?4s8Jq0u4rJM9O3dLrPt9YL2t7?= X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-Network-Message-Id: 9eeeabad-16cd-433d-01bb-08db794c0c90 X-MS-Exchange-CrossTenant-AuthSource: SN6PR12MB2621.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Jun 2023 09:26:14.0618 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: yesxYZYpedCJFAUb8nHo3h1kbFzn0aBVb2hCfjojqAC1PuWXnrw7pXhi/X0Toi5NP/gvIO7jYhNAZKFwYnWlZw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH3PR12MB8728 On 29/06/2023 12:55, Julien Grall wrote: > Hi Ayan, Hi Julien, > > On 29/06/2023 12:21, Ayan Kumar Halder wrote: >> >> On 28/06/2023 14:42, Julien Grall wrote: >>> What's the guarantee that the compiler will not generate any >>> instructions that could generate an alignment fault? >> >> I thought by writing in assembly, we tell the compiler what >> instructions to generate. For eg >> >> ENTRY(set_boot_mpumap) >>      push {r4} >>      mov   r2, #0               /* table index */ >> 1:  ldr   r3, [r1], #4         /* r3: prbar */ >>      ldr   r4, [r1], #12        /* r4: prlar */ >>      write_pr r2, r3, r4 >>      add   r2, r2, #1           /* table index ++ */ >>      cmp   r2, r0 >>      blt  1b >>      pop {r4} >>      ret >> ENDPROC(set_boot_mpumap) >> >> I ask the compiler to use ldr (and not ldrb) instructions. >> >> May be I am missing something very obvious here. > > The problem is not the assembly code. The problem is the C code. You > wrote: > >     /* >      * Since it is the MPU protection region which holds the XEN > kernel that >      * needs updating. >      * The whole MPU system must be disabled for the update. >      */ >     disable_mpu(); > >     /* >      * Set new MPU memory region configuration. >      * To avoid the mismatch between nr_xen_mpumap and nr_xen_mpumap >      * after the relocation of some MPU regions later, here >      * next_xen_mpumap_index is used. >      * To avoid unexpected unaligment access fault during MPU disabled, >      * set_boot_mpumap shall be written in assembly code. >      */ >     set_boot_mpumap(next_xen_mpumap_index, (pr_t *)boot_mpumap); > >     enable_mpu(); > > You can't guarantee what assembly instructions the compiler will use > for any of this code. So if you are concerned about unaligned access > when the MPU is disabled, then you should never return to C (even > temporarily) while the MPU is off. yes, agreed. > >>> >>> Furthermore, from my understanding, at least on Armv8-A, there are >>> caching problem because you will need to save some registers (for >>> the call to set_boot_mpumap()) on the stack with cache disabled. >>> This means the cache will be bypassed. But you may then restore the >>> registers with the cache enabled (the compiler could decide that it >>> is not necessary to read the stack before hand). So you could read >>> the wrong data if there is a stale cacheline. >> >> Yes, this makes some sense. So will the following make it correct :- > > I am confused. In a previous answer, I voiced my concerned with trying > to replace the full MPU table. So it is not clear to me why you are > asking me if the following work. Do you still want to do it? If so, why? I completely agree with you to set up the MPU table in assembly with the correct permissions for each section (as done by Penny's patch). That would atleast ensure that we don't need to reset the MPU sections for Xen again. What I was trying to understand deeper was some of the objections you had raised and if any sort of mitigations are possible. Again I am not saying that we need to apply the mitigations (if available) in this particular scenario. > >> >> 1. Execute 'dmb' before invoking enable_mpu(). This will ensure that >> the registers are strictly restored in set_boot_mpumap() before the >> HSCTLR is read. > > I am afraid I don't know how the DMB will enforce that. Can you clarify? pop {r4}  /* As part of set_boot_mpumap() */ dmb /* This should ensure that r4 is fully restored from the stack before the next instruction. At this point, the D cache is still disabled. */ > >> >> We do have 'dsb sy' before modifying HSCTLR (ie enabling cache), but >> may be we want to be stricter. >> >> 2. Invalidate the D cache after "mcr   CP32(r0, HSCTLR)" and then dsb >> (to ensure d cache is invalidated), isb (flush the instruction cache >> as MPU is enabled), ret. > > I might be missing something here. The ISB instruction will not flush > the instruction cache, it will flush the pipeline instead and > guarantee that previous instructions will complete before continuing. Sorry my bad, I meant flushing the pipeline so that pipeline is refilled with the instructions from the MPU regions with the correct permissions. > > But overall, the easiest solution is to disable the MPU, update the > MPU tables, and then re-enable the MPU all in assembly (i.e. no jump > back to C even temporarily). > > So you control the accesses and can limit (if not remove) any write to > the memory whilst the cache is disabled. Yes, agreed. I will rework my patch so that the MPU regions are set up with the sections of Xen in assembly (similar to what is being done in Penny's patch). - Ayan > > Cheers, > From xen-devel-bounces@lists.xenproject.org Fri Jun 30 09:44:07 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 30 Jun 2023 09:44:07 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557401.870716 (Exim 4.92) (envelope-from ) id 1qFAfU-0002hz-9a; Fri, 30 Jun 2023 09:43:56 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557401.870716; Fri, 30 Jun 2023 09:43:56 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFAfU-0002hs-5l; Fri, 30 Jun 2023 09:43:56 +0000 Received: by outflank-mailman (input) for mailman id 557401; Fri, 30 Jun 2023 09:43:54 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFAfS-0002hm-RT for xen-devel@lists.xenproject.org; Fri, 30 Jun 2023 09:43:54 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFAfS-0001z8-CC; Fri, 30 Jun 2023 09:43:54 +0000 Received: from gw1.octic.net ([88.97.20.152] helo=[10.0.1.240]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qFAfS-0002Nd-6d; Fri, 30 Jun 2023 09:43:54 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=Krq3Rh9oPAnzdk42Tuznp22Eou70ZfaQFy5yzDA++tI=; b=2NXX+Egk/QGYKNdojBMIB7Kkt3 k6YZZcqHbMUFfcwfmP7A46KBJe7JRVA7Nf3V73mi6CKzS/7FDYrbvhimT9UFF/MF7702rVSeEnTiS 64SHrOu4Xm/HWBqHhnFBnxzfM5+IvfnlxAw9cNuNrchPEjPkxBcAVBXXH6W8tCGMwgY4=; Message-ID: <99e28fa1-b702-a4c4-47e7-b023237f5817@xen.org> Date: Fri, 30 Jun 2023 10:43:52 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v3 24/52] xen/mpu: build up start-of-day Xen MPU memory region map Content-Language: en-US To: Ayan Kumar Halder , Penny Zheng , xen-devel@lists.xenproject.org Cc: Stefano Stabellini , Bertrand Marquis , Volodymyr Babchuk , Wei Chen References: <20230626033443.2943270-1-Penny.Zheng@arm.com> <20230626033443.2943270-25-Penny.Zheng@arm.com> <778688ab-8fd4-2b06-e644-b5a013bb56f7@amd.com> <39a5a729-0099-67e4-bf4a-c65ae99a4619@xen.org> <37e2856b-038e-6a3a-a6ff-c518dfeda552@amd.com> <301e2e02-f2ab-5538-d426-52a02a7f35b5@amd.com> <6a06868f-beea-13c3-5d18-23930c7dd971@xen.org> <5ae6e98a-2bfe-b48d-0dae-96ae1d76f79e@amd.com> From: Julien Grall In-Reply-To: <5ae6e98a-2bfe-b48d-0dae-96ae1d76f79e@amd.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit On 30/06/2023 10:26, Ayan Kumar Halder wrote: > On 29/06/2023 12:55, Julien Grall wrote: >>>> Furthermore, from my understanding, at least on Armv8-A, there are >>>> caching problem because you will need to save some registers (for >>>> the call to set_boot_mpumap()) on the stack with cache disabled. >>>> This means the cache will be bypassed. But you may then restore the >>>> registers with the cache enabled (the compiler could decide that it >>>> is not necessary to read the stack before hand). So you could read >>>> the wrong data if there is a stale cacheline. >>> >>> Yes, this makes some sense. So will the following make it correct :- >> >> I am confused. In a previous answer, I voiced my concerned with trying >> to replace the full MPU table. So it is not clear to me why you are >> asking me if the following work. Do you still want to do it? If so, why? > > I completely agree with you to set up the MPU table in assembly with the > correct permissions for each section (as done by Penny's patch). That > would atleast ensure that we don't need to reset the MPU sections for > Xen again. > > What I was trying to understand deeper was some of the objections you > had raised and if any sort of mitigations are possible. > > Again I am not saying that we need to apply the mitigations (if > available) in this particular scenario. > >> >>> >>> 1. Execute 'dmb' before invoking enable_mpu(). This will ensure that >>> the registers are strictly restored in set_boot_mpumap() before the >>> HSCTLR is read. >> >> I am afraid I don't know how the DMB will enforce that. Can you clarify? > > pop {r4}  /* As part of set_boot_mpumap() */ > > dmb /* This should ensure that r4 is fully restored from the stack > before the next instruction. At this point, the D cache is still > disabled. */ I don't really see how this helps because the C instruction: set_boot_mpumap(....) could also require to read/write the stack for saving r0-r3. And AFAIK, you can't control when this would happen. Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Fri Jun 30 10:09:43 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 30 Jun 2023 10:09:43 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557405.870726 (Exim 4.92) (envelope-from ) id 1qFB4C-0005Nm-8h; Fri, 30 Jun 2023 10:09:28 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557405.870726; Fri, 30 Jun 2023 10:09:28 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFB4C-0005Nf-5s; Fri, 30 Jun 2023 10:09:28 +0000 Received: by outflank-mailman (input) for mailman id 557405; Fri, 30 Jun 2023 10:09:27 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFB4B-0005NX-41 for xen-devel@lists.xenproject.org; Fri, 30 Jun 2023 10:09:27 +0000 Received: from esa5.hc3370-68.iphmx.com (esa5.hc3370-68.iphmx.com [216.71.155.168]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 2f86bcd6-172e-11ee-8611-37d641c3527e; Fri, 30 Jun 2023 12:09:24 +0200 (CEST) Received: from mail-dm6nam12lp2177.outbound.protection.outlook.com (HELO NAM12-DM6-obe.outbound.protection.outlook.com) ([104.47.59.177]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 30 Jun 2023 06:09:20 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by SA2PR03MB5785.namprd03.prod.outlook.com (2603:10b6:806:119::24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.19; Fri, 30 Jun 2023 10:09:15 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606%4]) with mapi id 15.20.6544.019; Fri, 30 Jun 2023 10:09:14 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 2f86bcd6-172e-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1688119764; h=message-id:date:subject:to:cc:references:from: in-reply-to:content-transfer-encoding:mime-version; bh=GmFNp8K8JfE78h1Re9CtcdsI6YYAHm3iCcjPPEbGD7E=; b=iHHfQIpnm0O+TCcmTSN4JGRHcDma552mbUQN2IyS6RB7nSJYkyeO9myB 7uj4CUkLUbrHNX3bDvPQ3lJrodsfmaACyeTushKe1+w0Rin6rKkrzcXFC tchIC96+G0dwHgqFQInB5/ocwpQKPUN5dFCBcU+ee/LAyrF4QQu1apt+e o=; X-IronPort-RemoteIP: 104.47.59.177 X-IronPort-MID: 113446869 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:DTJ9S6KfxahaDyBSFE+RdJQlxSXFcZb7ZxGr2PjKsXjdYENSgWdVy zAdWTiGPavfZmTzc9sla9mw80MAuZHdyIU1QAJlqX01Q3x08seUXt7xwmUcnc+xBpaaEB84t ZV2hv3odp1coqr0/0/1WlTZhSAgk/rOHvykU7Ss1hlZHWdMUD0mhQ9oh9k3i4tphcnRKw6Ws Jb5rta31GWNglaYCUpKrfrawP9TlK6q4mhA4AdmPakjUGL2zBH5MrpOfcldEFOgKmVkNrbSb /rOyri/4lTY838FYj9yuu+mGqGiaue60Tmm0hK6aYD76vRxjnVaPpIAHOgdcS9qZwChxLid/ jnvWauYEm/FNoWU8AgUvoIx/ytWZcWq85efSZSzXFD6I+QrvBIAzt03ZHzaM7H09c5MW35iz NtHdQtQfyyu3duT3ZuLV/Bz05FLwMnDZOvzu1lG5BSAV7MKZM6GRK/Ho9hFwD03m8ZCW+7EY NYUYiZuaxKGZABTPlAQC9Q1m+LAanvXKmUE7g7K4/dmpTGMk2Sd05C0WDbRUvWMSd9YgQCzo WXe8n6iKhobKMae2XyO9XfEaurnxHqgBN5MROPpnhJsqHuBgVxQCycVbn6+r/KTrkCja+MYG 3VBr0LCqoB3riRHVOLVXQC8oXOClg4RXZxXCeJSwAicw6zX/gOQLmEBQnhKb9lOnPc7Qzo7k G2JktXmLTV1tfueTnf13qeZq3a+NDYYKUcGZDQYVk0V7t/7uoYxgxnTCNF5H8adlcbpEDv9x zSLqikWhLgJi8MPkaKh8jjviT+2uoLASAJz4wzNR3+k9StwfovjbIutgXDl6vJHIJecX0O2l nEOkMiD78gDFZiI0ieKRY0lA7yoof2FPTv0iERqWZIm8lyQF2WLeIlR5HRyIRlvO8NdIzvxO haM5kVW+YNZO2asYelveYWtBs82zK/mU9P4SvTTadkIaZ90HOOawBxTiYer9ziFuCARfWsXY P93re7E4a4mNJla IronPort-HdrOrdr: A9a23:CGQKVqC74sFnHcTlHemp55DYdb4zR+YMi2TDtnoBLyC9F/byqy nApoV+6faZslYssRIb6Le90cu7LE80nKQdieMs1NGZLWrbUQCTXeRfBOXZsl/d8hrFmtK1BJ 0AT0AuYOefMbAl5fyU3DWF X-Talos-CUID: 9a23:U9pDVm5XY3ZTQEHcg9sszxQLNvkCLSDmkWbsDhWBLHtAeKCMVgrF X-Talos-MUID: 9a23:03G+Ogq5qcH43uC8Hksezxdwc/cr4J6tM2UIn54sn8eZBR03Cw7I2Q== X-IronPort-AV: E=Sophos;i="6.01,170,1684814400"; d="scan'208";a="113446869" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Kh6Z5xeaggZf7lZUhPoH0enotqY3yrS78NogjgpGk7zVaWBhimUZO1QWn235IN2jMQJu5ZVS8e6qMMa/bHrBjPMv+3QLdyDrfwChojrU0RUcInugLFNyBOR6E07CwbDF+heu4C51PFBHQCH6TspW4EVGjGsflze8JXXqOOnKDjYonhkBtaQHjOI9/MHimVF7D00jybY8L9qsuMWB4FLeGXRX+WDCfikJ7TCpIBosJPBw24AKd7LEI8kpJCKAGCrNtkXXrEuzQb5Kff9V79aJnpJ9nz5QoGSGE3U31LSiEQsz/gTu41JOLz3VUnI3aQ09HhDDcBAsbSdtUyNIfi7r1A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=GmFNp8K8JfE78h1Re9CtcdsI6YYAHm3iCcjPPEbGD7E=; b=Y7sgpLehJ8OwiY1rP/WA23pwUguzqtAleXx0nXWf7UH07jFXKFD2ROearZNh65e2Oi3M+vCawydHcZrs7gRpjy5btY+/CcM4D9ufeBzpR7cIkvOwcmuZBQSPZX4PzZ+6/FAgOIRkCQoS94MKflOb0H1G5Ol74tMZZrjRBECiTiXr15MOKebL7dAzClYIpOOrhcfQnyeljjYqEfZgqhcACN2hXfzdwIbEDkzPk75c2wyrPFgZusagjAqFI+ZVODH559kMuIYKi1iHrmNLIzw9wKQD5j9R2H3FGECayGn5jrnbVLltcUOOmzA8Yex092NNZXaqTBZucqUdsUT9ncLO1w== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=GmFNp8K8JfE78h1Re9CtcdsI6YYAHm3iCcjPPEbGD7E=; b=VyQUQn++WqusFOB/eHqENhFlgWx0gYdwvOjkg8FgR242w5IXwTBhAlOzpZo8dqr23naq4nfyNTRshyzL/rW7VTcwnBKZokCa955/ZZqMsBKDa2uBlXAbW+HJqLn416zlZLcvcWpKXpCOXJkLTiRRW5z2vyK62xAlEYGB7qCSRDw= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: <4d436616-2c9c-a2c9-78a7-b0425d212dc4@citrix.com> Date: Fri, 30 Jun 2023 11:09:07 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH v3 24/52] xen/mpu: build up start-of-day Xen MPU memory region map To: Julien Grall , Ayan Kumar Halder , Penny Zheng , xen-devel@lists.xenproject.org Cc: Stefano Stabellini , Bertrand Marquis , Volodymyr Babchuk , Wei Chen References: <20230626033443.2943270-1-Penny.Zheng@arm.com> <20230626033443.2943270-25-Penny.Zheng@arm.com> <778688ab-8fd4-2b06-e644-b5a013bb56f7@amd.com> <39a5a729-0099-67e4-bf4a-c65ae99a4619@xen.org> <37e2856b-038e-6a3a-a6ff-c518dfeda552@amd.com> <301e2e02-f2ab-5538-d426-52a02a7f35b5@amd.com> <6a06868f-beea-13c3-5d18-23930c7dd971@xen.org> <5ae6e98a-2bfe-b48d-0dae-96ae1d76f79e@amd.com> <99e28fa1-b702-a4c4-47e7-b023237f5817@xen.org> Content-Language: en-GB From: Andrew Cooper In-Reply-To: <99e28fa1-b702-a4c4-47e7-b023237f5817@xen.org> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO4P123CA0555.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:33b::8) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|SA2PR03MB5785:EE_ X-MS-Office365-Filtering-Correlation-Id: 2e1e7bf4-db3a-4dd6-7d2f-08db79520ea5 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: BuWyWK6UqS2w0Y2McVDi7RDTviC7gKJ2wJBR1dgVywGcpgZfNsarUkSIzjjNrGvjpoqs0TPUQ7VvLWu1HsAzxvfcw0H4x5dWNS8N2SdNxxRG0xc50WUeTbUUwGGHSr8AAXCgR744376vzitdbsFhFbNXgAi2toujfYGIuc4d/8OdtP9bfBSr6BgnwJVcGNu2gLqmbMUjDm0voI7HRECfU+oNFC+IvB60yC/4j1VTHzHkA+YsWZxxMfHE5pXiqOi+BL7I1M+HMigVqE9qIfQ62OHNfnnWjWt/WfFPagyK7eRe82ZcZmX6zI1y3mNXa8V0P8fV29DxgdVwkoQ7PzTRCfJeHeXUpbKeYXZcao2ZJy6NNSExsTb1xC3vyZnFTyJpSLRMasi3ohB0jtYG98dBVtA9OzoPejafcRwaJkLoBJMvfoz7Yj55mkE6XKS0cljWOEqP2YXT5Bqd8W1Q9+7I/fSIp6BsAGa7U8j2nZ30GW9YWWGv5zQ8ssIxdl0jLUe6heWY5qptYAdrhmPtlVvoOep5Dfyfvs8sTV06wphFrOlxTLNVdeX3wFgWPZp/7c+TpUBXDIibmR7qZe7SkoQbGQF6sFishxbP9GazP5NuMZiv8T53k84L6Qg0kZ7D38p3e0dnXhJ06ShXtLaGfh0lEw== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(376002)(396003)(366004)(136003)(39860400002)(346002)(451199021)(31686004)(86362001)(54906003)(8936002)(8676002)(5660300002)(110136005)(31696002)(26005)(6506007)(53546011)(6486002)(478600001)(66946007)(66556008)(66476007)(4326008)(6512007)(41300700001)(316002)(6666004)(186003)(2616005)(2906002)(83380400001)(36756003)(82960400001)(38100700002)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?M01FSC95Sm1iQXk1K3VJallsZDBKS3hBakJDWEtFZ1NCWWE4aTd2MWloNHIv?= =?utf-8?B?dmZ5TzJQQWNVYkUxS2o2SkNnYjB0R0p2ekVtY0J0ZHZiV3hMcVpTbThwS1No?= =?utf-8?B?c1loWHhwbTRFZ1FseU9UcVZCcEtHYVB1MmxjSklXUE1XQmRQOXIya21BL3ZG?= =?utf-8?B?RE1oYm5Zd1hmcVhFMTlNWmhrV1MwOUdWelhGU2hndFFRWjlVZTl4UTIwWVM2?= =?utf-8?B?Z1dNa2w5T2l0UDhWZHhDSHlyZEphUW5KQzArT3FIaVNPem1xY3VvNDZGbCtT?= =?utf-8?B?a0tjV0g0VUp3MG1HeXRuOXBPYTB0dXlYMmg4Vk05a2daVGxJS0xRNmhueWxB?= =?utf-8?B?T3lkaW53UTVORmNVNEd5NmV2Mnl3WE9TaXFhS08zSmh1dnNyTnRzRTdLd1Bw?= =?utf-8?B?eXFpc2grQUQ1TzdlaUVWWExaa3NabVZraFhyU3phUGJ3M0sxUk9lZVYxV1E2?= =?utf-8?B?LzZZbzhtVk93R2x4RmVZb2tEYlo2MEV1MmRoRXl4b3BsdGI2L0tEWmU1MGMy?= =?utf-8?B?QXo2UXVBVTI3Sk40aW9LRE5KNWxKQWRzcDI5VW15VkpGeXNoaGVBYVBHbGNr?= =?utf-8?B?Z2xyZDJOTXBOVUVvaDVWZ1lrT2pWL0x0ZThaSGprRTIzODQ4WnVOa2xrb3ZC?= =?utf-8?B?ajVISWZnTzhieHh4UGRMM0JoL1NXYXJzNFpFdHlvcWNMU1M0SWRHSUdGVGhL?= =?utf-8?B?bGl0dlU2OW1PTm1zWjRWaFJEVUJmU0ptb2ZUMDNENW1Pc1NadE96RFRyL2Vt?= =?utf-8?B?cWQwOG5TbmZ3c3pkS0tCQ2ltS3FyVVVTUWc5SjBNUVc2MTU0YlM5Z1ZRNnFw?= =?utf-8?B?STEyK0V1Z0ZVMzg2TFNyZ3dDY3lpaVFqWHFUcjNCMmViYXZqbFFDWjFET1dQ?= =?utf-8?B?NnFydUVUZjZqWHU5YVpiY2UvSU5NT0hQYXZqc3U0SnR3RUZvbWxUaVp3UVdz?= =?utf-8?B?WWc2bzhKZU81SmhGbE5iUE11cFVmcXdmVzNvdkZPN0w0TTYySW1pb0VORE1T?= =?utf-8?B?RVJwWWRtVXBZendaT2grZithRUcwQlN0cEEwUFh4cWFSQ0lSZm45ZmlCVnBp?= =?utf-8?B?NWVQZTJaOEZvU2k1ZDltYXAvd1g4OXZQaVVsUEJDUHJUajhKS2FwOFFlUHZ0?= =?utf-8?B?OTBJTm1CNXlTcXFrWW90T2UzMWVYQ2sxcjhRQ29RMEoxSTBlZm5weVJNNmQ5?= =?utf-8?B?WjIxek1OVnNyL1dhQWdUalpHMGlZcGZXY1JLZk51eTVleGYyZVMzNzl1MGc5?= =?utf-8?B?cHUrR3dvU1lzNDdpbngwY0dGZ21nSmpqbTl2M0tSWXBDZmVEK25GbFU3cU1z?= =?utf-8?B?SjIyZ0dFY2FZVWFoN3RpQXBib2Z1emlDaDNUMWdNbHF4MG16VXNnakVDbzBR?= =?utf-8?B?SjlrWXBBb3g2aHlqN2E4K3VmUEk5eTVBUS9hUDJwQURiMjZtKzFsTWtIa2F2?= =?utf-8?B?dEttQ0ROaHRrWVRkVEFnVDh0cWowNU0zWFBqak5GSWVhTFIrVzl5WUYyZExr?= =?utf-8?B?Sk8vN3MySHJMNm9TRFNwZTh1eHQvWDh0UGRxblM1UU9zU21MREZhL3l0WWQ0?= =?utf-8?B?TVdUUXgrSmJtU0hRMi8weTd3ZEhzbnc1Z3h0S0xOcTkrTXhMV015b25xUGRx?= =?utf-8?B?SFVnK0VsTTZpNTJyRDk0dDU2WDhqeTlXWFZyRkpuQkFyRUNBWlFreVoxSzVp?= =?utf-8?B?ek8yRzRISFhOam5vOGhNTVVrRWE3b2trbVZ4MU5zZ2FYRmRzSWhMTC83NzNS?= =?utf-8?B?RVZ5VVNYbVJEWE84VnU4REpUVEpNMWVuZ1dJcC9iY0V6Y3VMaU13bXRxVmgv?= =?utf-8?B?dGRSVjNTNDRqbDBrdkpCS2JwZnBGdlRrUWZWQnBQQkJxSFduNWFpNnlYT083?= =?utf-8?B?R0hSZlozT0xQZEc0N3FQWkY5M0NKWlhYdWQ1QzQ4WUVRL0dPNGxqTnRLeWZC?= =?utf-8?B?VVlLelhWT2dHdG1nVkxTeThjeDdWYXJQdkJlditqNlRVNDdteW5EVFNHWG91?= =?utf-8?B?eVAzSHVKb2xqTkljTC9UTkZ6dVhjWVpPMlFsMDQ1R2NpVjIxUncwUDVxM29R?= =?utf-8?B?dy9aQTlybU1nL0RjSStFSVhIR0V1YlRXNVZMbm5DU1ZNOC92VHNGTEs4NjVI?= =?utf-8?B?dFZCMlVReEEvS05KQ2JvL0FoK3gwYjNmTUNGbWcvNDVjdUQ1RDVHSEd5emtz?= =?utf-8?B?cHc9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: srufk11lmFo6WVN5MubMZi7F9g/qmGgejtyOAc7QRn3PbKTorTKP1J3JX4R8fY+9XQKQPxVbcAVQqQMICcEuNbPho8l7h1HtoxrC/eOvht5zlfDXV1yxnQ7bZOIvONuiHjD0bxoqnsj/e4L5gBvtiyWU3oj62iT7Q6H8qg4jT0sWyVjPuSjKiqeTh+N4pkIhkMuYkxV8tJ0dgSMHMofUg3uQ9lyTlDpIk1JiauvxPG+oU8qLKMA5IsGy2kguw3ZDFenVrqENUpTCm2vPC+wDUwKGMvbXAOkHiFQ97P/ND5zu7TiEe3HMHjPMv1FyFuKVSiyiwIafZsU7D8AHJoFhH+NSLU2ljKfXv3/HBfpLY3w1JXdQI5c7ne38ybEzTKP2QJlV9BO5VnGz9q3HUuFZL/qene7jizwWyMJFqB99wleDUf1oS167yQwurI3JhDP1LARew7B7QU1rvylouIxzpTnI9q6Fpa9o4jGoeEMYARci6efq7WLI4IHjRzrFjFBngyetoN1zepB5ZtrOVYycl57mg84uOAiwIf/OUdVP25Le3EaLVqdQQKakq15+I6IV48xyraTgYImXsZfYGa40TBKuJezgpEGmS6w7tDtxtfnb/awEOXiqVPaDaZkKA47eLWntNBKytd9grDlh2WWXdIOkE6y0MAERdCLHJLitDNGto8ry5k5qQSkkTjz/mwZz9ELYOHbXqnnXWRho7KSPdbe6nC8E3iLCXdceVfkvBWGLsafI3fOVBFaDOeqIjxb8chLg3SoRdV0GWuuOqO1CghbpcLEncmf8oDm9/EKQQSxnPe93o2zMflNalZSIzE0ItHjwS4OANRx2rWn3ARPHJ3YwzLSvVJj2G2BAxaifi664PPk4iI3mWMwtYQxIoS7yrer478P+IQs/MyVoAd3geg== X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 2e1e7bf4-db3a-4dd6-7d2f-08db79520ea5 X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Jun 2023 10:09:14.7152 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: c1LpCVyKyZG2pyVNisboDHt1OFpMOULfhjsliBeZvgFxu9L4sd+NKBBhHALtITGI2YO0jIdvI/2Qs4ygTz5OUPKOSQkqfL1U4guMmx/ujJE= X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA2PR03MB5785 On 30/06/2023 10:43 am, Julien Grall wrote: > On 30/06/2023 10:26, Ayan Kumar Halder wrote: >> On 29/06/2023 12:55, Julien Grall wrote: >>>>> Furthermore, from my understanding, at least on Armv8-A, there are >>>>> caching problem because you will need to save some registers (for >>>>> the call to set_boot_mpumap()) on the stack with cache disabled. >>>>> This means the cache will be bypassed. But you may then restore >>>>> the registers with the cache enabled (the compiler could decide >>>>> that it is not necessary to read the stack before hand). So you >>>>> could read the wrong data if there is a stale cacheline. >>>> >>>> Yes, this makes some sense. So will the following make it correct :- >>> >>> I am confused. In a previous answer, I voiced my concerned with >>> trying to replace the full MPU table. So it is not clear to me why >>> you are asking me if the following work. Do you still want to do it? >>> If so, why? >> >> I completely agree with you to set up the MPU table in assembly with >> the correct permissions for each section (as done by Penny's patch). >> That would atleast ensure that we don't need to reset the MPU >> sections for Xen again. >> >> What I was trying to understand deeper was some of the objections you >> had raised and if any sort of mitigations are possible. >> >> Again I am not saying that we need to apply the mitigations (if >> available) in this particular scenario. >> >>> >>>> >>>> 1. Execute 'dmb' before invoking enable_mpu(). This will ensure >>>> that the registers are strictly restored in set_boot_mpumap() >>>> before the HSCTLR is read. >>> >>> I am afraid I don't know how the DMB will enforce that. Can you >>> clarify? >> >> pop {r4}  /* As part of set_boot_mpumap() */ >> >> dmb /* This should ensure that r4 is fully restored from the stack >> before the next instruction. At this point, the D cache is still >> disabled. */ > > I don't really see how this helps because the C instruction: > >  set_boot_mpumap(....) > > could also require to read/write the stack for saving r0-r3. And > AFAIK, you can't control when this would happen. The argument is far easier than that. At all point, anywhere in code, the C compiler can emit calls to memcpy/memset behind your back, including (in principle) for code which looks like `int foo;` (yes, because of things like -ftrivial-auto-var-init). With things like UBSAN active, it's a much wider range of functions that can be called. If anything is potentially unsafe to the C operating environment, it *must* be handled in assembly. ~Andrew From xen-devel-bounces@lists.xenproject.org Fri Jun 30 10:49:46 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 30 Jun 2023 10:49:46 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557414.870735 (Exim 4.92) (envelope-from ) id 1qFBgz-0001T2-Bu; Fri, 30 Jun 2023 10:49:33 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557414.870735; Fri, 30 Jun 2023 10:49:33 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFBgz-0001Sv-95; Fri, 30 Jun 2023 10:49:33 +0000 Received: by outflank-mailman (input) for mailman id 557414; Fri, 30 Jun 2023 10:49:31 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFBgw-0001Sp-VZ for xen-devel@lists.xenproject.org; Fri, 30 Jun 2023 10:49:31 +0000 Received: from NAM12-MW2-obe.outbound.protection.outlook.com (mail-mw2nam12on2061d.outbound.protection.outlook.com [2a01:111:f400:fe5a::61d]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id c8b45a17-1733-11ee-b237-6b7b168915f2; Fri, 30 Jun 2023 12:49:28 +0200 (CEST) Received: from SN6PR12MB2621.namprd12.prod.outlook.com (2603:10b6:805:73::15) by DS7PR12MB8324.namprd12.prod.outlook.com (2603:10b6:8:ec::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.19; Fri, 30 Jun 2023 10:49:24 +0000 Received: from SN6PR12MB2621.namprd12.prod.outlook.com ([fe80::8018:78f7:1b08:7a54]) by SN6PR12MB2621.namprd12.prod.outlook.com ([fe80::8018:78f7:1b08:7a54%2]) with mapi id 15.20.6521.026; Fri, 30 Jun 2023 10:49:24 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: c8b45a17-1733-11ee-b237-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=CR3KXxLoucGyTPKXNS2J/inqi7SvWmfOU+Mg2owNYdGEoX03pFrZLXVq4TLGH9B6HD9cZQZo8HZV/+825hBl5EdgXf4iAojezUeNHt99/yDboJTAtAk2PZIz6LdNR50Abq4s0h3kDnfCEBMxL83UksVDC8IeLhZhAbAK8zM1s4xmSuPh87Bbf20EnWNNCdvbjl/DVPgQ68rkDdfVSn+j1yyylNjqaZ8K48Uil3VcKUfxXLZj+zJ9QNorBASrbxvzIzY8MmAHXkUIj/O/h5kUOyekgF5U4iqEj17HUJsuATAtvHO/mMpH9MiEpPEcmMQDK6tq/hQcQ9M6Td7ztmr6yQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=vHX1Fd9dDOQCRruNcMeN5GXSVPomf/TOfeInI+e2Aps=; b=FgqtBY5OcgeXz+GQkIzpKXKLyenCTWkNMgDP1OKl7WYKEqrOvY74vlszygHeUljiTNFTROYPyWcXl5Wfr3iDKu0dg+zD+YbuVKYRFzBnBJO6h/VBxfErIsbddcfKvOkVzqnz6jcvFK0KH3S1aYzJLhpnVyXKG3byiTaPwb5ampny7L2PR+te3diJShUyvLdJXbBu+XSF3EziUfEXGwb//ZKiI5hbAMDMk/Z3R2ZZBZDt20GDvWxVzRqtLLF6iDN77j3F0LHlKO7Ltb08NiVlLxUJRiG6jxFPVvqE755mocCI4gWHm1PHwsRTzpRDCxurzx3q3HOAliDDFkvuLEV/0Q== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass header.d=amd.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=vHX1Fd9dDOQCRruNcMeN5GXSVPomf/TOfeInI+e2Aps=; b=QKNrQBI7Og7mvCjE/+q8zlx/Pe+R0XoRZMneTaTH6Y7G5G/B2Q7wm+NMsHcyFREW7ykQ4/SCAX9fWKcXqzPdU0yUbn6+RHXdSCTPAmBGbzvxGGV6EHZ9S3lWAnJ/qWNjqAMJP6ozv7FU0r8F8tz8gGIebpPKp7UHLcaHgKBShxk= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=amd.com; Message-ID: <9530f9f8-795b-783a-bc74-e30a3c5c2fd3@amd.com> Date: Fri, 30 Jun 2023 11:49:17 +0100 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v3 31/52] xen/mpu: make early_fdt_map support in MPU systems To: Penny Zheng , xen-devel@lists.xenproject.org Cc: Stefano Stabellini , Julien Grall , Bertrand Marquis , Wei Chen , "Volodymyr_Babchuk@epam.com" References: <20230626033443.2943270-1-Penny.Zheng@arm.com> <20230626033443.2943270-32-Penny.Zheng@arm.com> From: Ayan Kumar Halder In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO4P265CA0033.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:2ae::6) To SN6PR12MB2621.namprd12.prod.outlook.com (2603:10b6:805:73::15) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SN6PR12MB2621:EE_|DS7PR12MB8324:EE_ X-MS-Office365-Filtering-Correlation-Id: 5baa0bca-2116-4db3-86df-08db7957aadd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: dQCQ7N5K/Mmt8KI/JWJtr5XveVF9rgx6pS2HY6abcKi5BIFM/pYS/IfKfx+6Yz65z8Mm9at5gY6uAQwSxYsFJ6rty6OiznG1at8/GFJmBqisYL47R8q3GCDC81og5UUz1oHvALzCuissSJ2lc6H/yP3ZVA85ip0cAL7oRr20B1EIbUBdHyeOVihHst8cp7HWAbJvGSbcpEeeds5RmqQmC2PY+nUiIuFCn2VvAqrTV9VIuJD/lRQGfrWPi1bqodsZgF1oTBHH4oHW0rJfdWJqZJ+MTeoTgia5ZsQTdFF6uopIM3kG9z47wvglX99qtCco7BTvaZHmu2xMafAgkEdXziCQaJ1Ghdv3eDoCw5/HqV7VIrzv929WLrDqBfl/+zEfNJdgSV9NlOzC7KIc0XtIiYFuFcjZBMQEJRU1uhMfcgSjzi9IVf04RD5MhMYf0TkiL+hOwWgndWHvH3GFqw84clHK1yz6M1+C5YdlCmfjNL2Xrs8GbpXxRt5eExn+tZ+/7oy1wI07iW6SJCaG+TPWbUG5FX0mOCr6Lntum2u3k3ju0LZlz9nlIKHSG4KZjHQvCNiyV13Eupz3wlivWNRiGX3R9m15fAw0wyJUf2RCqC6E7tiZSLqiUCrb6rbDWOqx+BoTAabFmvJv60+vbD1U8r0xKvits/jJYkmOAcrFv64= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SN6PR12MB2621.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(396003)(39860400002)(136003)(366004)(346002)(376002)(451199021)(2906002)(8936002)(8676002)(6506007)(316002)(53546011)(66556008)(66476007)(66946007)(4326008)(31686004)(41300700001)(186003)(26005)(6486002)(83380400001)(31696002)(38100700002)(6666004)(6512007)(54906003)(2616005)(5660300002)(478600001)(36756003)(21314003)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?MUxrM0Vrc1lLNS9CT1BEQ3BrUnNrellsVWNYNnJyN1oreE4wTkVXS2dYdE82?= =?utf-8?B?bjVRTkI5U3ptaTNPT1E2V3ovTllNUzJ4aTZRaGIrZFJtOTdWN3ExT085YlZv?= =?utf-8?B?UkpLUWJjelBrc1lkSmprTDFqQStOOE9URy9vbGt5TkR4QlJxOTUra1gzbGlL?= =?utf-8?B?TEJna0UwUldMT3VseGpkMjdMWXFVSEFRK1BxSmQvNU8zQ29ZZkdQYUhpVHph?= =?utf-8?B?cTZnUDRZRU54UUFodzRTTm5TYXZGS3Q4MDgxbGcvd3h6RUs4L0UxRi9JaTFI?= =?utf-8?B?SGlsRVNXb3I2OXVqV1hnN1doeXowaG1jQ05RM0d6ZGJtVEdHUExQWVhYdzVv?= =?utf-8?B?aUpNTXdGelN4Y3VDTm0xYnlUNEpOT2RnQ2pNdjZHUTRGS2RMcmd6MVIxUzJr?= =?utf-8?B?VDlpZ0VyUVdTalBsV01qOFRoY3M3V29iczZNbWNoUzNDd0V2blp3TGhHVUZG?= =?utf-8?B?NXR6V25lMzBFU3hReUs5OWdIWjI0YjQwT2xvV0hqUlVmMHlmWklMQzVPVkhi?= =?utf-8?B?NkphQ1dObFJyak9JN1RBaC92Nnorc2pYeEpMUU5Hd0J2R21ZR05Ha2MwcGZV?= =?utf-8?B?Q21pZEZLUHBYMjloQmhJZXh1Z2pCdzNaTmN1M0JvWW5qaUQyWVRua1hFUnJn?= =?utf-8?B?NFd4NEE4elZXbmZ4KzBzYk0rajhGWG1mVG9xOTc5K3BqNUJqT3YzMVB1Y25y?= =?utf-8?B?MHBCdXI5Ulp3VWJzWHJtQWZRZENvNjdhQkNrN2srbHE5dGRSNlVzcm5oS2RB?= =?utf-8?B?c2p2a01QMTNTeVF1UWVaMWE3eEsyNjMrQWpuV1ZoYzBqa0p2M2lDOUhuZ1Ro?= =?utf-8?B?RnNkYTJNbUhXY0s0RVpaT3hkdm1HQlEwT0ZxU2lHRUZwVFpvSnZkcUZYRHFa?= =?utf-8?B?WkZIQ1g4azJMelJETXo2RTFsUzV0YjEzY1BWNW9pdlRNbUo0TzlUckh2RmFY?= =?utf-8?B?Y2JKWkttMUplVHV4YmROajBIRE90dUJFcmI3NUhkS2FpNHJkR2JmZXFvNnFk?= =?utf-8?B?V0hidVhlc3VzRUlCVS9xb3A5UktYMTNmdzgxUDl6RWxaUmduWTAyQnFVRTE4?= =?utf-8?B?SmJqOUl6NEJWNlhPK3ZHVzZsVk9ra3M4WmlqUXprTWo4QkJDdEtuclczWnc0?= =?utf-8?B?Y0R2RERRK3dBTmxBYU93a0cyOW51VjFJM0VZbVNhNDNyVkhkUFlDOXExVUE5?= =?utf-8?B?WURXWnVLaEFWOVRzNzRLQXNOZ2VVaEEyaHhsaGtJZEIzWFBtMnlyb2FYVFNG?= =?utf-8?B?ajg4a05oMjA4S0FyN2x0ME1kQVJSWFplU0lESHBwQmdmaFJ5NmpOZVNyMVA2?= =?utf-8?B?WndNSGE2cTdjVVBYT3RRU1RjL0tBWWg0OHh5L1VzUExVRUFzVVhSU3A0MTlo?= =?utf-8?B?MzVsb1FYNlFYeVZ4dkkwbGN1WGVRWVprcFVEUUtnQk1UVnFUMFU0aElaaXdQ?= =?utf-8?B?aXd5dTJNU1FkY1AyRkZJTTRxLzREM1Rvay92a0F2NGZ5ZVYrZXBzaXhOL1VS?= =?utf-8?B?ZHBqUyszUzRIMXVlSTFwRTlqNlVUTi9BQUkyWkxWQm1xdmJ6bDJ4SzBwaTI3?= =?utf-8?B?N0V3eDV5NkFJTm83RHAyUlkyMkpPSlV5RzdFQk1xc285YWpoNTdhMFB3a1JP?= =?utf-8?B?ajNkNnY4QjgrTXFxMk0wRlVKWlU5eVVUZk9sdVlZVUV4bEY1Qkh5V0g4OC9a?= =?utf-8?B?SytrQ2Y4dG5UWGpPeEJCUU9oQ0dFNENEN0E3TWZMeStSYTlCZ3libzhkWTJq?= =?utf-8?B?YXNNZmZ5TTk1UkhrdjBPcmtOWWliU3QwczdpM2JodGtENG81cjBKc2w2Vjh0?= =?utf-8?B?OTlqRmJVZWFKMUZpSHdsYStYZE40YlI4YUw1M3UvM282VlhpL1IzTjM1SEI5?= =?utf-8?B?dk9aUW9tbDlFdXdDakpybWp6UVkwV2svT1RlaW15OTNqdHZHTU82MmNJWmtM?= =?utf-8?B?MytzanloZmJlOU9qV0UvUTNMU2kzZ3loK053Y1kyZzFLWnRwUFo4N2M5UStx?= =?utf-8?B?VHRMa21mMjRTczZuN0Z1S0RMRW4xdzd1TWNBQUN6RU1DcGoyZ2tLeXJmaFh3?= =?utf-8?B?bmRNd1FmYnJJOGRPRjVGeGdIakdFelZiTjI0UkoyOGxVVkpzWTB1aEo5THE1?= =?utf-8?Q?ozqbxAXuw2YvFz3fo5rdMCUlP?= X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-Network-Message-Id: 5baa0bca-2116-4db3-86df-08db7957aadd X-MS-Exchange-CrossTenant-AuthSource: SN6PR12MB2621.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Jun 2023 10:49:24.0866 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: +cKRA9gx5NTROBxy2KvEMF7mXH4UUvJtqzRvhJEuoRmhtkinBUcApLCpJR4xIQFzwn34WQNRjGcBTjmt0XS6iw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR12MB8324 On 30/06/2023 05:07, Penny Zheng wrote: > Hi, Hi Penny, > > > On 2023/6/30 01:22, Ayan Kumar Halder wrote: >> >> On 26/06/2023 04:34, Penny Zheng wrote: >>> CAUTION: This message has originated from an External Source. Please >>> use proper judgment and caution when opening attachments, clicking >>> links, or responding to this email. >>> >>> >>> In MPU system, MPU memory region is always mapped PAGE_ALIGN, so in >>> order to >>> not access unexpected memory area, dtb section in xen.lds.S should >>> be made >>> page-aligned too. >>> We add . = ALIGN(PAGE_SIZE); in the head of dtb section to make it >>> happen. >>> >>> In this commit, we map early FDT with a transient MPU memory region, as >>> it will be relocated into heap and unmapped at the end of boot. >>> >>> Signed-off-by: Penny Zheng >>> Signed-off-by: Wei Chen >>> --- >>> v3: >>> - map the first 2MB. Check the size and then re-map with an extra >>> 2MB if needed >>> --- >>>   xen/arch/arm/include/asm/arm64/mpu.h |  3 ++- >>>   xen/arch/arm/include/asm/page.h      |  5 +++++ >>>   xen/arch/arm/mm.c                    | 26 ++++++++++++++++++++------ >>>   xen/arch/arm/mpu/mm.c                |  1 + >>>   xen/arch/arm/xen.lds.S               |  5 ++++- >>>   5 files changed, 32 insertions(+), 8 deletions(-) >>> >>> diff --git a/xen/arch/arm/include/asm/arm64/mpu.h >>> b/xen/arch/arm/include/asm/arm64/mpu.h >>> index a6b07bab02..715ea69884 100644 >>> --- a/xen/arch/arm/include/asm/arm64/mpu.h >>> +++ b/xen/arch/arm/include/asm/arm64/mpu.h >>> @@ -72,7 +72,8 @@ typedef union { >>>           unsigned long ns:1;     /* Not-Secure */ >>>           unsigned long res:1;    /* Reserved 0 by hardware */ >>>           unsigned long limit:42; /* Limit Address */ >>> -        unsigned long pad:16; >>> +        unsigned long pad:15; >>> +        unsigned long tran:1;   /* Transient region */ >>>       } reg; >>>       uint64_t bits; >>>   } prlar_t; >>> diff --git a/xen/arch/arm/include/asm/page.h >>> b/xen/arch/arm/include/asm/page.h >>> index 85ecd5e4de..a434e2205a 100644 >>> --- a/xen/arch/arm/include/asm/page.h >>> +++ b/xen/arch/arm/include/asm/page.h >>> @@ -97,19 +97,24 @@ >>>    * [3:4] Execute Never >>>    * [5:6] Access Permission >>>    * [7]   Region Present >>> + * [8]   Transient Region, e.g. MPU memory region is temproraily >>> + *                              mapped for a short time >>>    */ >>>   #define _PAGE_AI_BIT            0 >>>   #define _PAGE_XN_BIT            3 >>>   #define _PAGE_AP_BIT            5 >>>   #define _PAGE_PRESENT_BIT       7 >>> +#define _PAGE_TRANSIENT_BIT     8 >> I don't think this is related to MPU. At least when I look at the bit >> representation of PRBAR_EL1/2, > > This set of _PAGE_xxx flags aren't compliant with PRBAR_EL1/2 register > map. > It is a flag passed to function map_pages_to_xen() to indicate memory > attributes and permission. But aren't you writing these flags to PRBAR_EL1/EL2 when you call xen_mpumap_update_entry(). In the below snippet of xen_mpumap_update_entry(), IIUC, you are writing these flags.         xen_mpumap[idx].prbar.reg.ap = PAGE_AP_MASK(flags);         xen_mpumap[idx].prbar.reg.xn = PAGE_XN_MASK(flags);         write_protection_region((const pr_t*)(&xen_mpumap[idx]), idx); Please clarify here. In this case, I don't prefer mixing hardware specific bits with software only representation for these reasons :- 1. It makes it confusing and hard to differentiate the hardware specific attrbutes from software only. 2.  Also, refer xen/arch/arm/include/asm/arm64/mpu.h, typedef union prbar_t {} :- typedef union {     struct __packed {         unsigned long xn:2;       /* Execute-Never */         unsigned long ap:2;       /* Acess Permission */         unsigned long sh:2;       /* Sharebility */         unsigned long base:42;    /* Base Address */         unsigned long pad:12;         unsigned long p2m_type:4; /* Ignore by hardware. Used to store p2m types.*/ ** ReferARM DDI 0600A.d ID120821, Glossary for RES0 For a bit in a read/write register, it is IMPLEMENTATION DEFINED whether: 1. The bit is hardwired to 0. In this case: * Reads of the bit always return 0. * Writes to the bit are ignored. If the writes are ignored and you read back 0s, then the software logic which relies on p2m_type can break. Thus, I will prefer keeping RES0 unused so that the software works consistently across all silicons. **     } reg;     uint64_t bits; } prbar_t; I see you are using RES0 bits in prlar_t {} as well. My objections applies here as well. - Ayan > This bit _PAGE_TRANSIENT is to tell whether the new adding MPU region > is a fixed one, or a temporary one. > The MPU region created for early FDT is a temporary one, as it will be > unmapped at the end of boot. > >> >> bits [47:6] are for the base address. >> >> If my understanding is correct, then please take it out of this patch >> and put it in a separate MMU related patch. >> >>>   #define _PAGE_AI                (7U << _PAGE_AI_BIT) >>>   #define _PAGE_XN                (2U << _PAGE_XN_BIT) >>>   #define _PAGE_RO                (2U << _PAGE_AP_BIT) >>>   #define _PAGE_PRESENT           (1U << _PAGE_PRESENT_BIT) >>> +#define _PAGE_TRANSIENT         (1U << _PAGE_TRANSIENT_BIT) >>>   #define PAGE_AI_MASK(x)         (((x) >> _PAGE_AI_BIT) & 0x7U) >>>   #define PAGE_XN_MASK(x)         (((x) >> _PAGE_XN_BIT) & 0x3U) >>>   #define PAGE_AP_MASK(x)         (((x) >> _PAGE_AP_BIT) & 0x3U) >>>   #define PAGE_RO_MASK(x)         (((x) >> _PAGE_AP_BIT) & 0x2U) >>> +#define PAGE_TRANSIENT_MASK(x)  (((x) >> _PAGE_TRANSIENT_BIT) & 0x1U) >>>   #endif /* CONFIG_HAS_MPU */ >>> >>>   /* >>> diff --git a/xen/arch/arm/mm.c b/xen/arch/arm/mm.c >>> index d35e7e280f..8625066256 100644 >>> --- a/xen/arch/arm/mm.c >>> +++ b/xen/arch/arm/mm.c >>> @@ -61,8 +61,17 @@ void flush_page_to_ram(unsigned long mfn, bool >>> sync_icache) >>> >>>   void * __init early_fdt_map(paddr_t fdt_paddr) >>>   { >>> +#ifndef CONFIG_HAS_MPU >>>       /* We are using 2MB superpage for mapping the FDT */ >>>       paddr_t base_paddr = fdt_paddr & SECOND_MASK; >>> +    unsigned int flags = PAGE_HYPERVISOR_RO | _PAGE_BLOCK; >>> +    unsigned long base_virt = BOOT_FDT_VIRT_START; >>> +#else >>> +    /* MPU region must be PAGE aligned */ >>> +    paddr_t base_paddr = fdt_paddr & PAGE_MASK; >>> +    unsigned int flags = PAGE_HYPERVISOR_RO | _PAGE_TRANSIENT; >>> +    unsigned long base_virt = ~0UL; >>> +#endif >>>       paddr_t offset; >>>       void *fdt_virt; >>>       uint32_t size; >>> @@ -79,18 +88,24 @@ void * __init early_fdt_map(paddr_t fdt_paddr) >>>       if ( !fdt_paddr || fdt_paddr % MIN_FDT_ALIGN ) >>>           return NULL; >>> >>> +#ifndef CONFIG_HAS_MPU >>>       /* The FDT is mapped using 2MB superpage */ >>>       BUILD_BUG_ON(BOOT_FDT_VIRT_START % SZ_2M); >>> +#endif >>> >>> -    rc = map_pages_to_xen(BOOT_FDT_VIRT_START, >>> maddr_to_mfn(base_paddr), >>> -                          SZ_2M >> PAGE_SHIFT, >>> -                          PAGE_HYPERVISOR_RO | _PAGE_BLOCK); >>> +    rc = map_pages_to_xen(base_virt, maddr_to_mfn(base_paddr), >>> +                          SZ_2M >> PAGE_SHIFT, flags); >>>       if ( rc ) >>>           panic("Unable to map the device-tree.\n"); >>> >>> >>> +#ifndef CONFIG_HAS_MPU >>>       offset = fdt_paddr % SECOND_SIZE; >>>       fdt_virt = (void *)BOOT_FDT_VIRT_START + offset; >>> +#else >>> +    offset = fdt_paddr % PAGE_SIZE; >>> +    fdt_virt = (void *)fdt_paddr; >>> +#endif >>> >>>       if ( fdt_magic(fdt_virt) != FDT_MAGIC ) >>>           return NULL; >>> @@ -101,10 +116,9 @@ void * __init early_fdt_map(paddr_t fdt_paddr) >>> >>>       if ( (offset + size) > SZ_2M ) >>>       { >>> -        rc = map_pages_to_xen(BOOT_FDT_VIRT_START + SZ_2M, >>> +        rc = map_pages_to_xen(base_virt + SZ_2M, >>>                                 maddr_to_mfn(base_paddr + SZ_2M), >>> -                              SZ_2M >> PAGE_SHIFT, >>> -                              PAGE_HYPERVISOR_RO | _PAGE_BLOCK); >>> +                              SZ_2M >> PAGE_SHIFT, flags); >>>           if ( rc ) >>>               panic("Unable to map the device-tree\n"); >>>       } >>> diff --git a/xen/arch/arm/mpu/mm.c b/xen/arch/arm/mpu/mm.c >>> index 14a1309ca1..f4ce19d36a 100644 >>> --- a/xen/arch/arm/mpu/mm.c >>> +++ b/xen/arch/arm/mpu/mm.c >>> @@ -448,6 +448,7 @@ static int xen_mpumap_update_entry(paddr_t base, >>> paddr_t limit, >>>           /* Set permission */ >>>           xen_mpumap[idx].prbar.reg.ap = PAGE_AP_MASK(flags); >>>           xen_mpumap[idx].prbar.reg.xn = PAGE_XN_MASK(flags); >>> +        xen_mpumap[idx].prlar.reg.tran = PAGE_TRANSIENT_MASK(flags); >> >> ReferARM DDI 0600A.dID120821 , G1.3.23, PRLAR_EL2, Protection Region >> Limit Address Register (EL2), I don't seethis bit described anywhere. >> Do we really need this bit for MPU ? >> > > Yes, It is introduced for software implementation. > You could see commit [PATCH v3 36/52] xen/mpu: implememt ioremap_xxx > in MPU and commit [PATCH v3 38/52] xen/mpu: map domain page in MPU > system for better understanding. > >> >> - Ayan >> >>> >>>           write_protection_region((const pr_t*)(&xen_mpumap[idx]), >>> idx); >>>       } >>> diff --git a/xen/arch/arm/xen.lds.S b/xen/arch/arm/xen.lds.S >>> index 4f7daa7dca..f2715d7cb7 100644 >>> --- a/xen/arch/arm/xen.lds.S >>> +++ b/xen/arch/arm/xen.lds.S >>> @@ -216,7 +216,10 @@ SECTIONS >>>     _end = . ; >>> >>>     /* Section for the device tree blob (if any). */ >>> -  .dtb : { *(.dtb) } :text >>> +  .dtb : { >>> +      . = ALIGN(PAGE_SIZE); >>> +      *(.dtb) >>> +  } :text >>> >>>     DWARF2_DEBUG_SECTIONS >>> >>> -- >>> 2.25.1 >>> >>> From xen-devel-bounces@lists.xenproject.org Fri Jun 30 11:17:07 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 30 Jun 2023 11:17:07 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557419.870746 (Exim 4.92) (envelope-from ) id 1qFC7O-0004tQ-Hc; Fri, 30 Jun 2023 11:16:50 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557419.870746; Fri, 30 Jun 2023 11:16:50 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFC7O-0004tJ-Dz; Fri, 30 Jun 2023 11:16:50 +0000 Received: by outflank-mailman (input) for mailman id 557419; Fri, 30 Jun 2023 11:16:50 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFC7N-0004tD-LK for xen-devel@lists.xenproject.org; Fri, 30 Jun 2023 11:16:50 +0000 Received: from esa4.hc3370-68.iphmx.com (esa4.hc3370-68.iphmx.com [216.71.155.144]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 983d4cf7-1737-11ee-b237-6b7b168915f2; Fri, 30 Jun 2023 13:16:45 +0200 (CEST) Received: from mail-bn1nam02lp2044.outbound.protection.outlook.com (HELO NAM02-BN1-obe.outbound.protection.outlook.com) ([104.47.51.44]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 30 Jun 2023 07:16:34 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by PH0PR03MB5751.namprd03.prod.outlook.com (2603:10b6:510:37::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.15; Fri, 30 Jun 2023 11:16:32 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606%4]) with mapi id 15.20.6544.019; Fri, 30 Jun 2023 11:16:31 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 983d4cf7-1737-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1688123805; h=message-id:date:subject:to:references:from:in-reply-to: content-transfer-encoding:mime-version; bh=Az1c92CIyNCg9JJKlowrDDZBFJVCMQxO8+4H/jCF1dE=; b=EXucqMa6HEBMn8Zo0PCCnBq/Ho1YvYhpFl8FPJF9Tqeux1uG0ahqSM5D 7Qio/lB5abrv89g7oI80BsmzHtA66//Y9w3iAZLMCXcnxX2Mi/8uJzTmp vt7M15kUuh1REBFEkUDsjfXm5SslmIMYzSlAZSQXec+13BmOy/EV0aMeQ I=; X-IronPort-RemoteIP: 104.47.51.44 X-IronPort-MID: 117295938 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:+p/4tKP2gjhL+I7vrR1plsFynXyQoLVcMsEvi/4bfWQNrUokhjNVm 2McW2/QOfaJMzamc9EiYI++8klV6paGndZjHgto+SlhQUwRpJueD7x1DKtS0wC6dZSfER09v 63yTvGacajYm1eF/k/F3oDJ9CU6jufQAOKnUoYoAwgpLSd8UiAtlBl/rOAwh49skLCRDhiE/ Nj/uKUzAnf8s9JPGjxSs/vrRC9H5qyo42tG5QRmPJingXeF/5UrJMNHTU2OByOQrrl8RoaSW +vFxbelyWLVlz9F5gSNy+uTnuUiG9Y+DCDW4pZkc/HKbitq/0Te5p0TJvsEAXq7vh3S9zxHJ HehgrTrIeshFvWkdO3wyHC0GQkmVUFN0OevzXRSLaV/ZqAJGpfh66wGMa04AWEX0t5KDG1E6 foVEx8MQzTf3NqI5+mnd8A506zPLOGzVG8ekldJ6GmDSNwAGNXESaiM4sJE1jAtgMwIBezZe 8cSdTtoalLHfgFLPVAUTpk5mY9EhFGmK2Ee9A3T+PNxvzS7IA9ZidABNPL8fNCQSNoTtUGfv m/cpEzyAw0ANczZwj2Amp6prraWwnmqBdNJRNVU8NZr332ywksNAiQ1XHaWsNKzhXySYI52f hl8Fi0G6PJaGFaQZtD5Uh+xpnKeuVgCUt5UHu89wAqJzbfYpQ2eAwAsXjNHLdArqsIybTgrz UOS2cPkAyR1t7+YQm7b8a2bxRuwNjISNnQqfjIfQE0O5NyLiIM5gw/LT91jOLWoldCzEjb1q w1mtwA7jrQXyMQNjqOy+Aidhyr2/sSVCAko+g/QQ2SpqBtjY5KobJCp7l6d6utcKIGeTR+Ku 31sd9Wi0d3ixKqlzESlKNjh1pnzjxpZGFUwWWJSIqQ= IronPort-HdrOrdr: A9a23:t9fMrKBk5k7yJJ7lHejLsseALOsnbusQ8zAXPh9KJCC9I/bzqy nxpp8mPH/P5wr5K0tQ/exoX5PwO080lKQFmrX5WI3PYOCIghrKEGgP1/qa/9SkIVyHygc/79 YeT0EdMr3N5DFB5K6VgTVQUexQpuVvmJrY+ds2pE0dKD2CBZsQiDuRRjzrcHGfE2J9dOcE/d enl4N6T33KQwVlUu2LQl0+G8TTrdzCk5zrJTYAGh4c8QGLyR+49bLgFBCc/xEGFxdC260r/2 TpmxHwovzLiYD39jbsk0voq7hGktrozdVOQOSKl8guMz3pziq4eYh7XLWGnTYt5MWi8kwjnt Xgqwope+5z93TSVGeopgaF4Xir7B8er1vZjXOIi3rqpsL0ABo8Fsp6nIpcNj/U8VApst1Q2L 9CmzvxjesdMTrw2ADGo/TYXRBjkUS55VIkjO4olnRaFa8TcqVYo4Az9F5cVL0AACX5woY6F/ QGNrCV2N9mNXehK1zJtGhmx9KhGlw1Axe9W0AH/veY1jBH9UoJu3cw9Yg6pDMt5Zg9Q55L66 DvKaJzjoxDSccQcOZUGPoBadHfMB2NfTv8dEapZXj3HqAOPHzA77Tt5q8u2e2scJsUiLMvhZ X6Vk9Cv2JaQTOhNSS35uwJzvnxehT+Ydy0ofsuoqSR+4eMC4YDCBfzCGzHyKCb0rEi6s6yYY fHBHsZOY6lEYLUI/c44+TPYegtFZAgarxlhj8aYSP4niuZEPydisXrNNDuGZHKLREIHkvCP1 prZkmAGCwH1DHmZkPF X-Talos-CUID: =?us-ascii?q?9a23=3AaSYig2nPpiN+sk+StKkA7riU7tPXOUXgwXvaP0m?= =?us-ascii?q?1MkloZZnJEmeu3/h4ruM7zg=3D=3D?= X-Talos-MUID: =?us-ascii?q?9a23=3AnLJs7wz1RMJK0Rnk1GK6r4l6PROaqKXxKGEJtos?= =?us-ascii?q?MguqNGAFhED2SvhiMHqZyfw=3D=3D?= X-IronPort-AV: E=Sophos;i="6.01,170,1684814400"; d="scan'208";a="117295938" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=aixmwt4+mvfLTLcWgVOoReQX2RTdwpSWWDbIKZo6e3U+ytq+M37nZn5FwlBHYb81tn5VasMEPJ38tAA6rm2itb+nlMOrsrX5MJj0W0ppZ59bRRO3iER9yxOlkAoQ36FCFm4FQv03CbMWLhFd2VBjUP/53dQFRCh1bxIikfcgw+ND1G4D9/vAawhg2UddYgbtz7CXD1HHqB6uLHVPASv4wLDBRwTQrmhURKxcv8gmwfG7cLNeGgXp5l/4H7dC/MSfQ8xqdvIs5EaEoAQXelsvj5CIlBfsepVnheua6/5ia3UJGTWxlcGiu/0WhxWwCQncqTf1niCr5rrSCTF1bskXxw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=eESLJDClJJkI37uLbtZRdHkpiVAVkOXpBRso3k2GTaM=; b=hiP1vruFZTOnM+/i/JoSV8QLZxE3ONK141N2AqKpYgOAf9iJbI2I6V5mE/GkFfx/z5u7t9itPpGC780ttvUR/ZFELkfATOsleC+jY8b+Q0kj0o2GKrV+7OTy+j7lc6sxxr7VJKsJXlI856Jfx53IKaaZbYIkO2n4u3GYLP+cPexAHOb1fkyRamE66BRqws4A7hb8dtjCmYfKX0Tj5e2M5eYgBi5Vp7ewe2DFb1HHOyi4XsDBkWMTK+ez1VwCzxCmkpT2SvY6qUpEycdz8435oRTgWz7NB8z8hpLeHsLNgRSWBnV+iRUwb4wna7BXnQX7YCN/+wNhPxJEfyeTbHvsMA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=eESLJDClJJkI37uLbtZRdHkpiVAVkOXpBRso3k2GTaM=; b=G7c8wDPWP4tWepzq5DLHoju4qK/wGxjRAL078QCes5RXkN0Cq5ljheBvYfVkaXnZipLKoZnPMjH+lXK2eccRAizxAn252Ix3cxyL4qPS6OVKjTl8I8NPCD29eoLD4Bo1IGnsbS+Yqcc4gI+ack+yfs5n/neqgDgdwCwC5X3HlfQ= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: <524aaef8-1869-ad67-826e-1175fb38795e@citrix.com> Date: Fri, 30 Jun 2023 12:16:25 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH v3 1/3] tools: Add __AC() macro to common-macros.h Content-Language: en-GB To: Alejandro Vallejo , Xen-devel , Anthony PERARD , Juergen Gross , Jan Beulich , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= References: <20230629121713.1211-1-alejandro.vallejo@cloud.com> <20230629121713.1211-2-alejandro.vallejo@cloud.com> From: Andrew Cooper In-Reply-To: <20230629121713.1211-2-alejandro.vallejo@cloud.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: LO2P265CA0425.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:a0::29) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|PH0PR03MB5751:EE_ X-MS-Office365-Filtering-Correlation-Id: 06ea16c8-4eb3-488f-fe0d-08db795b74d0 X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: l5XN8zKArimOvw0894Ug8FzSfVUXgDMv15YXv6oVSZiBfnaHwzXdNyg+ar9Set2xjW825jwkEhF1y8IEO/+zJb9c2Q9XoxkrS/tVAn1njvCkLRPcllmRyQF2pcOmJBLEiMMuE6go9MwhsTMthDzBln+p0+gQbeNO7H4YPHztFt+otql9uRwMaJpwBpAT+zQu8EdAApW1BYk/WeGSKIXcDu+F5s5Vj6rZcNw07/vEGRQJzRgIjAs9h89r2ng6cDIdbuqGap+VPgRxY71Y/5LuuxLqRdrbevGad/I1mdTBgRjnYoI704dfqTzWY90KL+nVDKD3gDplehz1rgkYoMD4nyv/zZKv1eEINKeWrjKJjRQ+pNUpYBd7VuJOBC8UQdaaVZqwyzse15jh2MM204Cs1FCqTMMFe9JFYRrPPvZfjzBHya/c8igRdOML/qIletp6CS3ZrDgWbwy5mN+ItEuIrV7cJYA7GBqQ6pc1+qvpz4RcCDu7LTY0Dy7uuAdNy816BFIRvv5bnGahoGWbumjEF5CWBcSAC8Tfq92pnBA37vngYPV+TfSa+RtwFXv+AV3qjvfCaaempGIC9/iSG4tQK33f4yeERVF7ndxT8j18kdOMdgB9O3LlJ3QoBMsGpF97iS7caGbLECE5ygRAeMa8Bg== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(376002)(366004)(396003)(136003)(346002)(39860400002)(451199021)(5660300002)(110136005)(478600001)(41300700001)(6486002)(8676002)(316002)(8936002)(186003)(6512007)(26005)(53546011)(6506007)(66476007)(66556008)(31686004)(6636002)(6666004)(66946007)(2906002)(86362001)(31696002)(83380400001)(2616005)(82960400001)(36756003)(38100700002)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?S0xJLzBReFJtWEpUSmMwaEZ2M1hmdk91SmtaNnFzTkFTMjczOUptb29TUFFM?= =?utf-8?B?OW9xdktYUWp1b091a0hMU3FaUVZlY09HUFFHOGd5N3AvN0tuZHJJdS9mTlFD?= =?utf-8?B?QUVYMEQrVVh6a08yQ1Y5UjNVUjlTMldDWGt3RnA3MGV4NFg2alV3VGs3Q2p5?= =?utf-8?B?L3ZHQmJhTXVBTDZxWVBPR0pxRE1mbE5mamljY0FGNU9VaEowdEZCVDZwajRI?= =?utf-8?B?TFQ2L0hCSXhtOUdZZHQzNFYzMEVCUVJkWGdhOW5XQkJ1TmpaKzFLRW5VMWg5?= =?utf-8?B?YVBoNyswa1huL3JPc2wwQ0ZJQXR1Z2ZocmJySElwTE5kanVHek11ZFNNbW94?= =?utf-8?B?aEs5eHltQ0ZRNTd6MDRhRFlJQ2NTUXRGK0xzTzBXS1ltSVpkV1ppV2hSQzRl?= =?utf-8?B?U2pocHljTWd6b3hEalFBb3Rqamo3NXFJTUttNHZXOTZ0MFpNeU53NTNBQVN6?= =?utf-8?B?L20vMmlNUzVwUjJ5cjVTemhQeVlzcjlMcm9QOGVUUkRQbEdtREc2dVlEOUN5?= =?utf-8?B?ZTllenBITWM3MU5GZXdlWVVFSS96eFl1VW9nTnJZOXlzK3BhNitRUlpncyti?= =?utf-8?B?Q0RjWHJQVmU0dFJ3L0lobVNmQ20xQ3RsOUdvQm8xWXpuWFVxL2JOUWRtRGdu?= =?utf-8?B?cENSRzlMZk5sL0R2ZisxdDhIZGg1bS84cHRvanRCMU5VN1UzS2dIcWNhV2ti?= =?utf-8?B?NlZybU9YYURzS210WDRRUlArN0k2ZERERnRRaVpLVVJUQ1RsT3hDcStUMFVX?= =?utf-8?B?V2E1RWJRYWRIeExvRGIwaDdicFEraC9naGV2TjdoQmJ0OWplWkppZ0JrQ0lt?= =?utf-8?B?VUxzNVJwTlA4R2VKVmtQcGk5dVhkdTJ5a3RRK2JEc1FORUloNnQ1WVcvOVhM?= =?utf-8?B?YTh2dTIvcEQ2RStjOUp1akZwcXAzcnlmUUkyL0VqdFVCT3ZZZFFxcWV4REto?= =?utf-8?B?V0JPbXZwQXJCeGlqZUVBOTJacndqNGl4VmVlNEd1eG9ueXFPOTZkdnhyekdj?= =?utf-8?B?QW90bkxGeU5jY3hadzBpalI4VitXUHFvOUljTEZidUZ5ZGZuS3BRZ1ZuR0pq?= =?utf-8?B?UlB1Ry9ORDY5Mm0vb3d1NmVLYlhub0ZEYlBhSGhTa1RYMnVSZ3lQUy9yUjNT?= =?utf-8?B?U2tXMDRBN3laOTMyYmI4OVc4ZDRQWTlvbzUzYVF1Yks5ZnVjZzJNQXVCcmdu?= =?utf-8?B?ejdlNmZMMFkrZGp6ZElzTFhhZ0NIdE5MYnBYczV3V0lnT2lZZEdXeGFNQnFm?= =?utf-8?B?aUJzVU1wNjR5VHRUOGorQ0gwUldYSXdEUk9IN2ZWbEhpUDc1eTY0eWN2S3l3?= =?utf-8?B?QzdzclhZTmJuOUQ1SzVwL3hTUGJUQzUwL1BsM2drZ2dBZTcyTVhxcWpoYWlw?= =?utf-8?B?S1RMaE0wT2FvcTBNTWhKNnRSRVJhcmd4TDd0R3FMeGxNVzRyT2N5ZUxGYlEz?= =?utf-8?B?TTk2VHBHa3NRWUo5cHM2cVBsUEo3eUJVaHJDSlEzdnNscDJZNHdSVjBFbGdB?= =?utf-8?B?ck5qNWtxcTZpN2diMmhhK2svQlZxdE85MmRLb0Zrb3FoN0ZYMU5mc1R6UVJa?= =?utf-8?B?cXE0N3FmeFE5NkxCem51ZWFVaDgwOUhPaG54dlUySzl5bDNJd2ZBUTF6OWRo?= =?utf-8?B?YktJeGZuZlJyWXNkakFNQjkzUEN6MWR0L0RNU0RkNmZTRzRyOFlDS29zS210?= =?utf-8?B?Z0xmUjVKNVhTY0FXdGdQakpzZStWVitSR2RlU1NXc0hZQUI0T2tScXZZTWZM?= =?utf-8?B?cjFvRHozaUFSbWhjekFVMVpzS3RLWFJOcDRKNkoyOXZDUm5mbWYzWHl3RkhO?= =?utf-8?B?QjF0ZkFpVVNTM1p4WU43VEhvOUxoaWNoZXJzRGFSU2loU3dlY05FdzNIZElK?= =?utf-8?B?N2x3ci9uSE9Makl1WURzN0xIckRnZDNUMFB5dE1sS1BOOTRRamptS3pkNFg2?= =?utf-8?B?WUxpV013NXRIc2dqbEFTRitOa0JETUh2SXJxcVZ4cW5zV3lxQmxpZHQ1L0t3?= =?utf-8?B?RVJlWE5qMGIzUFFGM3VVS1Z6c1ZJcjhRa04zeU5NOE9zQTB6VS9JUEhtdFVp?= =?utf-8?B?WlZYdWNCOTUzOVJmYlNaZktWcHU2UzhoYm0vdVVzbUpLdFhvN0pkY0w3aFRO?= =?utf-8?B?cDNrOGNmMVFjSTVjSW4rVnNwVU5oaEEvYjJwRTd4VlppZkpIakdYaVdwTmJt?= =?utf-8?B?cUE9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: ICrSjVdlXKOPioRM5KKsdkjtpUbC8wUFlnFJ4AkwlA6HmH+D0/yjGHmfIWs7nor56q/P4jbGsDWixVKyUeyoxqh3K+cWahUb/mZe2Ij1y6HR8Ma5TYrz/FnWOAKYJnFEjkLGMDmgrfxJMsEbfLc8WlZL5xs5XDdN7qB7T/Ss3mrTTKJ2rIBLMmtvL/PoATbqM8PuZiVH4e8GT2ApU6n2uweEeWNLSgeyQtpIUf7pjbaFFd+woBPSx9mdtI2FxWP9Y4jL1o+9ldhQ+C37bLLhZZX0r5K6HtjwDCPc7+H0C+FjSsIw7XERPe3YATzJnsDVg4EHCMF6pw3DAszL6uHExPlUPiqfWN8XBZu21KJO+q+JbkFG9tXF5jcokhwtNirYi09xai9i8Yhyk9+vgy9DBZIU9w2PfSMeMArVsfFzCZ4XbwiWy9ASNjceNEvVH2OrRxp4krIUU8kbAKeUHTy9yU/qqklcGYxgniBx2+1u11gzMZlAq0lN0ha8QaXC00ZpIBlErX79oV2zZBRbSyBqZUZjZ0E+YWm0iNn2DzwRNjcmSP+iiLPXXArLwSQd4Ke6KKCfDwHQvNo3SYuJ5wnEike6UGhxQsdKOyW9foFmwf4GTQB350wEs6862In7kzTB2z9ui/BKz5WSwu32AaektVY0qYxYfGKTSPWbq5YZR6/Rn58wSCAMjdfR1d6TPQ3CJU+XYisDJL5W3NEXVWtmBo/eUHa5G+8eneUDXcXP/XKsBH/CXZiB7YMxFk/qqTkSlhkpZbkxC219SjVBS3u84DUGv2uqeKTUy9LWS2I8qwz2QnJpDJKsu4kM9ShwW1e3cfp7rPS9y0Nvdmp/lk89Vg== X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 06ea16c8-4eb3-488f-fe0d-08db795b74d0 X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Jun 2023 11:16:31.4851 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: wzd2KygGocw/hiflaN7Ar3H5iDPJh6MoKZPqaxtJWuqB+Bufe1QJhzZncQMzmNSdaur7xTLEMuWnL2u50t0Q99+tHU2K50fq2KzQ6/pCd9A= X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR03MB5751 On 29/06/2023 1:17 pm, Alejandro Vallejo wrote: > Currently libxl and the x86-emulator tests carry their own versions. Factor > those out into the common macros header so every library can make use of > it. This is required so the following patch can add this macro to a header > used both in Xen and tools/libs. > > No functional change. > > Signed-off-by: Alejandro Vallejo Reviewed-by: Andrew Cooper , although ... > --- > tools/include/xen-tools/common-macros.h | 3 +++ > tools/libs/light/libxl_internal.h | 2 -- > tools/tests/x86_emulator/x86-emulate.h | 3 --- > 3 files changed, 3 insertions(+), 5 deletions(-) > > diff --git a/tools/include/xen-tools/common-macros.h b/tools/include/xen-tools/common-macros.h > index 168691be0e..6d7de1bc0a 100644 > --- a/tools/include/xen-tools/common-macros.h > +++ b/tools/include/xen-tools/common-macros.h > @@ -84,4 +84,7 @@ > (type *)((char *)mptr__ - offsetof(type, member)); \ > }) > > +#define __AC(X,Y) (X##Y) > +#define _AC(X,Y) __AC(X,Y) ... I'll take the opportunity to do style fixes here. ~Andrew From xen-devel-bounces@lists.xenproject.org Fri Jun 30 11:22:14 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 30 Jun 2023 11:22:14 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557426.870756 (Exim 4.92) (envelope-from ) id 1qFCCX-0006PU-8u; Fri, 30 Jun 2023 11:22:09 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557426.870756; Fri, 30 Jun 2023 11:22:09 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFCCX-0006PN-5m; Fri, 30 Jun 2023 11:22:09 +0000 Received: by outflank-mailman (input) for mailman id 557426; Fri, 30 Jun 2023 11:22:08 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFCCW-0006PG-D0 for xen-devel@lists.xenproject.org; Fri, 30 Jun 2023 11:22:08 +0000 Received: from esa5.hc3370-68.iphmx.com (esa5.hc3370-68.iphmx.com [216.71.155.168]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 56b1cc29-1738-11ee-8611-37d641c3527e; Fri, 30 Jun 2023 13:22:05 +0200 (CEST) Received: from mail-bn7nam10lp2102.outbound.protection.outlook.com (HELO NAM10-BN7-obe.outbound.protection.outlook.com) ([104.47.70.102]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 30 Jun 2023 07:19:56 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by SJ2PR03MB7355.namprd03.prod.outlook.com (2603:10b6:a03:557::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.24; Fri, 30 Jun 2023 11:19:51 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606%4]) with mapi id 15.20.6544.019; Fri, 30 Jun 2023 11:19:51 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 56b1cc29-1738-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1688124125; h=message-id:date:subject:to:references:from:in-reply-to: content-transfer-encoding:mime-version; bh=6r8LtST32BqShIauuaiZNpM4XAWa3vY+AYGz6pHfuQg=; b=OCE6fCGJ+QKAsOzyXahmsSKss9K0K3dfx3LPNVKa958c2rH0ZeiQ0YbM xxadSYx7GgCtHQuk5uInOFh9b9ewPXeY8hP+2NcpK2LaoBtt1WMA1C9r0 ggoiwzjUlUPpUHDo80rkA7UQF+44fVL+OsCKULzn8BzPrNs3sJ4NtmLtx I=; X-IronPort-RemoteIP: 104.47.70.102 X-IronPort-MID: 113452919 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:sP6+kaDllQIbmxVW/wriw5YqxClBgxIJ4kV8jS/XYbTApDJzhDFUy mpMUTqCOPbbMzCje4wibYTk9BkE65fdmNBmQQY4rX1jcSlH+JHPbTi7wuUcHAvJd5GeExg3h yk6QoOdRCzhZiaE/n9BCpC48T8nk/nOHuGmYAL9EngZbRd+Tys8gg5Ulec8g4p56fC0GArIs t7pyyHlEAbNNwVcbCRMsspvlDs15K6p4G1D5gRnDRx2lAS2e0c9Xcp3yZ6ZdxMUcqEMdsamS uDKyq2O/2+x13/B3fv8z94X2mVTKlLjFVDmZkh+AsBOsTAbzsAG6Y4pNeJ0VKtio27hc+ada jl6ncfYpQ8BZsUgkQmGOvVSO3kW0aZuoNcrLZUj2CA6IoKvn3bEmp1T4E8K0YIw1KFbAGZA8 sEiITldfBSZoeWXkYqWRbw57igjBJGD0II3nFhFlGmcJ9B5BJfJTuPN+MNS2yo2ioZWB/HCa sEFaD1pKhPdfxlIPVRRA5U79AuqriCnL3sE9xTK/exuuzK7IA9ZidABNPL8fNCQSNoTtUGfv m/cpEzyAw0ANczZwj2Amp6prraWxn+mAtNLRdVU8NZOqw2c3XUXNiQOanCmsf+X1RWkY952f hl8Fi0G6PJaGFaQZtD5Uh+xpnKeuVgCUt5UHu89wAqJzbfYpQ2eAwAsXjNHLdArqsIybTgrz UOS2cPkAyR1t7+YQm7b8a2bxQ5eIgAQJG4GICUCEg0M5oC7pJlp10qVCNF+DKSyk9v5Xynqx CyHpzQ/gLNVitMX06K8/hbMhDfESoX1czPZLz7/BgqNhj6Vrqb8D2B0wTA3Ncp9Ebs= IronPort-HdrOrdr: A9a23:bfhXjKuSB4/GnVQ+PRysD5bc7skCKIAji2hC6mlwRA09TyXGra 2TdaUgvyMc1gx7ZJh5o6H4BEGBKUmslqKdkrNhRYtKPTOW8FdASbsP0WKM+UyGJ8STzI9gPM RbAuND4b/LfD5HZK/BiWHWferIq+P3kpxA8N2uq0uFOjsaDp2IgT0YNi+rVmlNACVWD5swE5 SRouBdoSC7RHgRZsOnQlEYQunqvbTw5d/bSC9DIyRixBiFjDuu5rK/OQOfxA0iXzRGxqpn2X TZkjb++r6ov5iAu1PhPi7onttrcenau5p+7f+3+4gow/LX+0WVjbFaKvO/VfYO0aOSARgR4Z zxSlwbTr9OAjvqDxuISF3WqkPdOX8VmgDf4E7di33vrdHmQnYxDspMgp9CchXf41c9p9050K VQ03mFu5c/N2K8oA3to9LPWh12iEysunwpnfQIg3E3a/pjVJZB6YMY509bC5EGAWbz750mCv BnCIXG6O9Rak7yVQGvgoBD+q3YYp0IJGbzfmES/siOlzRGlnFwyEUVgMQZg3cb7Zo4D51J/f 7NPKhknKxHCpZ+V9M1OM4RBc+sTmDdSxPFN2yfZVzhCaEcInrI75r6+q886u2mcIEBiJEyhJ PCWlVFsnNaQTOZNeSemJlQthzdSmS0WjrgjslY+phio7X5AKHmNCWSIWpe4fdIY89vcfEzd8 zDSK6+WcWTU1cGMbw5rjHDZw== X-Talos-CUID: =?us-ascii?q?9a23=3AQZ42imn2UmVGGbRKnmL+CAAIDLPXOVOa4HbXLUi?= =?us-ascii?q?FM29gGK+RU3mX2fJcvsU7zg=3D=3D?= X-Talos-MUID: 9a23:GwWbZASH7xHmqEOARXTIr2FtL95s3Z22N2sQgZMo5JKeDSBZbmI= X-IronPort-AV: E=Sophos;i="6.01,170,1684814400"; d="scan'208";a="113452919" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=CbifWHSW3SgyFc1D6lXN5Smhn2rCp8MHTghYDeqLCyoUZ2yAI1tFs3scn8CcmlXHe+7ytxuhDpPrCZ1cjuRZaNIs3YAEMholwcxSnFh938cRFmpbEOAij8LovMw7dkFtyOwG0fa1iv1SwXqP/29LaqoXbatj9EQM67z4wsH203WLe463HAsiv2GhkEnXcFPS/6JPNTzGj57PzRJHx2djsc1hVdu+h0oaJR8BOUCykjfB0CMs00c6vzJvfNT4B6eZ9ui5zw0EU6oe1fIC7/b4zQ2QfxUXX8U/Au2sLqTjDLsNvziVQYzC49CmiUYQGiKgGXt5eD04ryK37V9YPefpXw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=Ni8Ijeh5JThje52K71syHwLdMWLgxGjQ1kPpbjF+hdI=; b=ierCAGYAq574t0P8MOZ6tbX4/QFv5UHHrS+nqweHnqgCaEak8oixWSpgLzCZrK6iRPgw3iYIJ8V6+AjSmtMESFN4C4OHn5zYNWd1Kl6idbh372jQYEsvs0YwuwLhqD1oKR7Kt4rvlH9+oEWi/+cZ3XLjJH087vwVVeyw13WZCTnRkruoQQfDtMTMTMn3+m4PImit9tqRQKvbFcmhfRLCxk8u+RFXMLwL+CR8RuRiCRne67XxvrDiqfZG/n/HfrXQGa09oWF2XLqbqcveTSENQr7WOS4Ldqhweu17jeKdxSuF5jBc5ku4XMcJekiV2411XHEktpn3jZBbvz9o5DPOrA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Ni8Ijeh5JThje52K71syHwLdMWLgxGjQ1kPpbjF+hdI=; b=Azu3WFubv6h3bCVVS/eHgb6IVg3JWYXnG/ozPy5nheayPo+MR4rRNYMp2peBMU9IEh3pvSmkZv8A9dNT+jJ6vwZSUP3bdPNDRq/t00TUDFU2E2R8YtkpMngjxW5K9LLjU8Rq2lzRml9k6WFm07x5wGblc42Kk6eadxspUsBlpDE= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: <45908116-2b46-2a61-6b76-048f4cef0bfb@citrix.com> Date: Fri, 30 Jun 2023 12:19:45 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH v3 2/3] x86/boot: Clear XD_DISABLE from the early boot path Content-Language: en-GB To: Alejandro Vallejo , Xen-devel References: <20230629121713.1211-1-alejandro.vallejo@cloud.com> <20230629121713.1211-3-alejandro.vallejo@cloud.com> From: Andrew Cooper In-Reply-To: <20230629121713.1211-3-alejandro.vallejo@cloud.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: LO6P123CA0060.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:310::20) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|SJ2PR03MB7355:EE_ X-MS-Office365-Filtering-Correlation-Id: 78940d1c-9a78-4d2a-c99c-08db795bec06 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: K32cDAEjGlliBI83bGpBEDmrZiy0MRUQ9zMqw78QiGNBmWRsIPAhUAAT1Kr5ll6mfYlOHVZRK7RaDABOAtMs+NSiJwAMgs6mxQkUub9Pnm+BKrihQKxlayUhaWazqUhPT6WuF/8fBvjDk8fdCvwUZdpNxIbZIBGVO5IrPIyq3GA0U19OCRFdtVb8e6VBxlPooA151Ao45G9mqTch6tVGtpFv+eA57DOUmPOdAUHAmZx6taBGltxvtU9BAL9ggX0ketPAK5loWxHU/ihZ89y7m+Mi2crbwsm3zC7zedUEAnbATI5mLUY4Q/sAaAGdHiLEqJsEu91aY4IFjy/7dilnxKWjI3WMUL6Jt3SqT3GjAgeHdV9OpWZoONi6V5H752qinaKZPeoh1P0z1AonMLK+tugjkBHMkQr+rwCOsuiOTP+G8iCcgd8PKAe9qo8pJx6qHQYJ6RcphhEzWxMg32pkPVDGCwThiJhb4sgJE/gtokkK+VwY1T+PONeSw/SZQQNKXs/ZVL3RV6C6Yrn4xxmBOCeEne/cpI5tqImr4D9HLddOdjs3Z8ZisGHOMyNEn/06x+Kfg5AQjOP/lZQtbCV+dNFoUK7/J10NfHNAQoo1rF/MicCvlz4/pDWeqDJcGq2mivVXyl7ZNdSYV13BqjZmAw== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(346002)(396003)(136003)(366004)(376002)(451199021)(31686004)(6512007)(53546011)(36756003)(66946007)(31696002)(5660300002)(86362001)(41300700001)(38100700002)(66476007)(8936002)(8676002)(316002)(66556008)(82960400001)(110136005)(478600001)(6486002)(186003)(2906002)(6506007)(2616005)(83380400001)(26005)(6666004)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?WC9HdEFTZGRzdlZoZlVOZ3RZL2l2c0ZKVHIyd0o0MWZkMjRoSGVOdVlMemxn?= =?utf-8?B?Zmk2OFkwd25mTTE3MmJXd3lqekI2em9xYVhxUUJ4MTBadjE5VkRLTTdScVFv?= =?utf-8?B?Z1pteHdBRDNsS2NOWUc0NkNJNGlURHdpQ2FlVGFrQ3E4cG9JekJOeC83SWIz?= =?utf-8?B?NDdIeEFLTmt1YXIvdWhmeXQ5WW9vWkpsNDB0OE04SVFmVkV3OTBJcUJPSTRw?= =?utf-8?B?emJqeXBFNFhCZDIrRUFETjFWeDh6ZzNzNC9ENzRTOUo0MElHTzY1VzRjSmxW?= =?utf-8?B?Yzg5T3ZrRDViUVJjQ1RIQVdPYm4zMnk1Qy9sdVZxaE4wSldObnppalNRT3gr?= =?utf-8?B?U3MxSlMxQkNQeDhXZnJISkJuRjlLVXpnLyt4bi9nZkNhSXdJc0hTZmZiMTA0?= =?utf-8?B?b0ZGRGN3SldVVjBCSytuY3E2djdiTXV6K1lTY210MGVkQ24zWnZJSVhjeXpK?= =?utf-8?B?TXNOTmZPcCtxWk0yTkQzREFhbkx6bXBNZ3JxTWRoMDVXWG4xcDJNQ3BwNHdi?= =?utf-8?B?NVlYMGRGeVcvNlFnU2I5cHFqbTM0RjltNzRacllCKzhZRW5ZNVlzKzU1cFRU?= =?utf-8?B?MCtwMEV0ek94TzlQS0JySmU5OG9UcUlkbTJzbkc3eWpkZlNRU25YVVY0aVh5?= =?utf-8?B?OW53czJlOHBvTE14dExFbjE1SnJvL3hiamhkamJpcER4cGVaVWdPclVXbENW?= =?utf-8?B?RDZSbDMxcVVKbXJyUHR4S250d1RjQ2RGNW1DU2d6a01lV3ZGcU9mdVUveGdr?= =?utf-8?B?dGZ4WVR2VzdNanRqRVV6YkJBakoyR2JCK05VdGFYQUdFRHhxajFlSXB0dFpv?= =?utf-8?B?cW9IWWh2MHU0Z3JVRzcxT2xQOEZsU09TOURTWjFIbndiL3BhS2VlemJKMGdL?= =?utf-8?B?SkZnZkZZeUxZei9wWmpscFdMSDhCbkFhSFR6ZnlBcWpaSDV3Y3lETVYvVnlm?= =?utf-8?B?NVQ4UVNCcXAwTmZqdUJhRDA3UWFmaHRweDN4VnJuOTJ0d0c3VXQ4cDcrckRa?= =?utf-8?B?R3pXNTFWMXVaczE3RXEyS21UYXBObTl1OWI1VnpCaHNkUUFyT2U2ZmZhWEVm?= =?utf-8?B?T1hCdVdmY0FLcEx3MXIrc0ZkcWN1TUc4WUo2d3VGeW5raTBqdzBYSG8zZkdS?= =?utf-8?B?Qy9CZE1rSjhkenBaZlEzSTM1MytoV3BPZ3hHdTROdHBpMXNFYUc1enBNcmFx?= =?utf-8?B?bnl1TXEyVGhKUjRKSzY2d3U4NTQwUmJYWDI0SXk2R2hmait5Rnh2MnVYbkVW?= =?utf-8?B?bERveU8wV1VzOEY3Ti9LK0RqdjZnb0NMQUFWS3FMdWZrNTZ3UzNxT2k5NVgv?= =?utf-8?B?L01Hc1lwaFM0Yms3OXN1NGJlNDNKMTV2Q1JrZDFHZDBsZTVuL25TaU1QWlhs?= =?utf-8?B?cGZvaUVoT2JkWmtNTXB1WHZKbW13S1UrYzRMNVNrSWl0YThPMW56T0x2WUEv?= =?utf-8?B?aFdjRzljb3I3bHRRVWVXazRNMEdhVi9FcnFSWEJodllUbGpHZ0szUmhOdXlW?= =?utf-8?B?cnBCMGw2L282Z0lhMytKNnJSVzN3dlFjK2VoTzF5ZWhqWGY5TjZXc1ltSE5X?= =?utf-8?B?NnpjaWIxbEFJb2FYR25nK0F0UzJZdXNETDMyRWxBUHRKUklBM0VFSTFNMjdH?= =?utf-8?B?dnFaVFNhWCtNVjNMb2lWeEVvdTg0UzQrZUVWMVp3Z3B2ekFKTUZMdFZvbldH?= =?utf-8?B?T2EyMG5YT0N1dlpRZFZSelg1WVRSc0hBOG12OEo1Qk1PdXg4MlRhakROeDNG?= =?utf-8?B?dmhwS0tvTjB3Nkcyenp4NFByOUx4OVBxVTFoaVg0VFlhanpwcXF6bUZSdkNW?= =?utf-8?B?QXkwSmRkOEQzSzAwVFppdzBqbHBBWkJXcmNTaEZWOCt1aDhCd1RoWlV6VmhH?= =?utf-8?B?WmkwN0VURytFR1FzWFZaUnkwVHN1OU9zbk5rWSt6aStoRGxqNlpPbldpSy9D?= =?utf-8?B?Mk8rdkRWMXFZMVk0ODBIRkd2SVdnRzZ3NElFc2FoSFlVd1RwQmY1Q0c3ZWNm?= =?utf-8?B?M0ZwbjZITmFVc2FWS3Z3cHVuM0VSa1BsT0ZHSkFsd2NsaWZyUU1PUXdtNmhL?= =?utf-8?B?NWFEL2RwRlpvOHphbFlKSlNGWktXQlhLRFhpOHp0M21KYjh1WS94YllaWVhR?= =?utf-8?B?ay83KzVZSUdwdFJoMEQzUGZoeXhHT0xGd3cvamVtK2kvVUhJVkZXdTBMR2FG?= =?utf-8?B?aXc9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: c/V+sPvvQgUKn/NOXGf1cRvNkD/NHKXhax55nYEmbHjgwOQbi4IqSgjT6p0IVSe59HndzJPPV/NMRSZCRjdDyL7W4dXSJlSxeEx/rDLjToNgXjcTne0HrlCVGuCaBCFG5cJb6x9vjKfiSW0f1YZPZp/rCK3sfYYZ5NHhuGMtz2K329VC8iBic3wEMXNZTZxia42TQNlm8GZZLZgedY6VmGABeEsak9/45PXT7CrnpYQOwNSeV71ImTHXYKO+RJizv7kS1MX6/xjo0dCYUdqKHkxiTN7Z/MxnIq5VP5mFiQJBTC2IKXXEm8enA8jppanZ/lhm214z14OZG5mzbfV4WrPa75Uu3V1iXqW6UgS7ubJeY1Nmrnkh8Y5U06wn37P+Tn94bV7dJhtjYo7g+Nao1HexhAMshiNg++OvCoEaWMMi5c7NIWD2Iy89lJtjGF9wNRFVOUpNV0LQCbZ3MfkAFBleOXIXzIz7+stIMeUqrEeUptht7jaadezVp/T6vEd0f6eipfCUL5bfMvfTb33p6aRHbqxyxeweBjFPxUHypUUV4TA+DsYMyoiuhhefY+3XbofruPLz59w6cLPd39Hvs1ZTMpX6bjUu/ql8aytXlYxuHljQ1VIMzbe6kd15BC1ZZ0kD1gQZIYJLXKjPGCa0GvZLUc+luuNYR+NsTU4aF8b/7C5DGkq3ww/IS5DL1DB7OY2qQpr6Y9Udr+86jk1kuVyMZLYl9k64IREYPSojBhgDb2txylKQvEjMS6UGnrv1h7UwnTZclplAHOTBv/Pg7ENGJnPzx/s3cGUerkv3v2Gcq6ZWwpZ6RjAn6TK90Wol X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 78940d1c-9a78-4d2a-c99c-08db795bec06 X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Jun 2023 11:19:51.3414 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: +r0zNXz8BFLgiWKzdlrLfy4wqCAVAAoLIgR7Bm4BupMjqeggon9kfwHBJ6KIm2u9iPuiIRwvSJpnmX3l+MJaeW52e6IziRJfjeeEZ37KXH8= X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ2PR03MB7355 On 29/06/2023 1:17 pm, Alejandro Vallejo wrote: > Intel CPUs have a bit in MSR_IA32_MISC_ENABLE that may prevent the NX bit > from being advertised. Clear it unconditionally if we can't find the NX > feature right away on boot. > > The conditions for the MSR being read on early boot are (in this order): > > * Long Mode is supported > * NX isn't advertised > * The vendor is Intel > > The order of checks has been chosen carefully so a virtualized Xen on a > hypervisor that doesn't emulate that MSR (but supports NX) doesn't triple > fault trying to access the non-existing MSR. > > With that done, we can remove the XD_DISABLE checks in the intel-specific > init path (as they are already done in early assembly). Keep a printk to > highlight the fact that NX was forcefully enabled. > > Signed-off-by: Alejandro Vallejo Reviewed-by: Andrew Cooper , with two minor fixes. > diff --git a/xen/arch/x86/boot/head.S b/xen/arch/x86/boot/head.S > index 9fbd602ea5..0e02c28f37 100644 > --- a/xen/arch/x86/boot/head.S > +++ b/xen/arch/x86/boot/head.S > @@ -652,16 +652,53 @@ trampoline_setup: > cpuid > 1: mov %edx, CPUINFO_FEATURE_OFFSET(X86_FEATURE_LM) + sym_esi(boot_cpu_data) > > - /* Check for NX. Adjust EFER setting if available. */ > - bt $cpufeat_bit(X86_FEATURE_NX), %edx > - jnc 1f > - orb $EFER_NXE >> 8, 1 + sym_esi(trampoline_efer) > -1: > - > /* Check for availability of long mode. */ > bt $cpufeat_bit(X86_FEATURE_LM),%edx > jnc .Lbad_cpu > > + /* Check for NX */ > + bt $cpufeat_bit(X86_FEATURE_NX), %edx > + jc .Lgot_nx > + > + /* > + * NX appears to be unsupported, but it might be hidden. > + * > + * The feature is part of the AMD64 spec, but the very first Intel > + * 64bit CPUs lacked the feature, and thereafter there was a > + * firmware knob to disable the feature. Undo the disable if > + * possible. > + * > + * All 64bit Intel CPUs support this MSR. If virtualised, expect > + * the hypervisor to either emulate the MSR or give us NX. > + */ > + xor %eax, %eax > + cpuid > + cmp $X86_VENDOR_INTEL_EBX, %ebx > + jnz .Lno_nx > + cmp $X86_VENDOR_INTEL_EDX, %edx > + jnz .Lno_nx > + cmp $X86_VENDOR_INTEL_ECX, %ecx > + jnz .Lno_nx > + > + /* Clear the XD_DISABLE bit */ > + mov $MSR_IA32_MISC_ENABLE, %ecx Parameter indention here. > diff --git a/xen/arch/x86/include/asm/x86-vendors.h b/xen/arch/x86/include/asm/x86-vendors.h > index 0a37024cbd..9191da26d7 100644 > --- a/xen/arch/x86/include/asm/x86-vendors.h > +++ b/xen/arch/x86/include/asm/x86-vendors.h > @@ -12,9 +12,9 @@ > #define X86_VENDOR_UNKNOWN 0 > > #define X86_VENDOR_INTEL (1 << 0) > -#define X86_VENDOR_INTEL_EBX 0x756e6547U /* "GenuineIntel" */ > -#define X86_VENDOR_INTEL_ECX 0x6c65746eU > -#define X86_VENDOR_INTEL_EDX 0x49656e69U > +#define X86_VENDOR_INTEL_EBX _AC(0x756e6547, U) /* "GenuineIntel" */ > +#define X86_VENDOR_INTEL_ECX _AC(0x6c65746e, U) > +#define X86_VENDOR_INTEL_EDX _AC(0x49656e69, U) > > #define X86_VENDOR_AMD (1 << 1) > #define X86_VENDOR_AMD_EBX 0x68747541U /* "AuthenticAMD" */ And all vendors should get equivalent _AC() conversions. Can fix both on commit. ~Andrew From xen-devel-bounces@lists.xenproject.org Fri Jun 30 11:22:46 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 30 Jun 2023 11:22:46 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557429.870766 (Exim 4.92) (envelope-from ) id 1qFCD8-0006st-Hf; Fri, 30 Jun 2023 11:22:46 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557429.870766; Fri, 30 Jun 2023 11:22:46 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFCD8-0006sm-Ek; Fri, 30 Jun 2023 11:22:46 +0000 Received: by outflank-mailman (input) for mailman id 557429; Fri, 30 Jun 2023 11:22:45 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFCD6-0006sQ-VT for xen-devel@lists.xenproject.org; Fri, 30 Jun 2023 11:22:44 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFCD6-0004BE-Gy; Fri, 30 Jun 2023 11:22:44 +0000 Received: from gw1.octic.net ([88.97.20.152] helo=[10.0.1.240]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qFCD6-0006at-C8; Fri, 30 Jun 2023 11:22:44 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=i5+siVdUMaMN3uC7wzYRy1VJomOUA3yLJi4QLGgee6k=; b=NpOWn3U/I/Q1nQuxsAvusKHkNC /Cmt4yr9scciQJlDA/Hd1GgFIh1gmrm29ug8cHBLkFKzJawXwHsG4sOiAIs1ERYnN2P8PpCjws0F7 d4G/7p0WMJLUvTwmGSJXG0702JETqXvIK+UbFPNyXDOQnGCP5iTI14yzunxsRwKwqzJ8=; Message-ID: Date: Fri, 30 Jun 2023 12:22:42 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v3 31/52] xen/mpu: make early_fdt_map support in MPU systems Content-Language: en-US To: Ayan Kumar Halder , Penny Zheng , xen-devel@lists.xenproject.org Cc: Stefano Stabellini , Bertrand Marquis , Wei Chen , "Volodymyr_Babchuk@epam.com" References: <20230626033443.2943270-1-Penny.Zheng@arm.com> <20230626033443.2943270-32-Penny.Zheng@arm.com> <9530f9f8-795b-783a-bc74-e30a3c5c2fd3@amd.com> From: Julien Grall In-Reply-To: <9530f9f8-795b-783a-bc74-e30a3c5c2fd3@amd.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit On 30/06/2023 11:49, Ayan Kumar Halder wrote: > > On 30/06/2023 05:07, Penny Zheng wrote: >> Hi, > Hi Penny, >> >> >> On 2023/6/30 01:22, Ayan Kumar Halder wrote: >>> >>> On 26/06/2023 04:34, Penny Zheng wrote: >>>> CAUTION: This message has originated from an External Source. Please >>>> use proper judgment and caution when opening attachments, clicking >>>> links, or responding to this email. >>>> >>>> >>>> In MPU system, MPU memory region is always mapped PAGE_ALIGN, so in >>>> order to >>>> not access unexpected memory area, dtb section in xen.lds.S should >>>> be made >>>> page-aligned too. >>>> We add . = ALIGN(PAGE_SIZE); in the head of dtb section to make it >>>> happen. >>>> >>>> In this commit, we map early FDT with a transient MPU memory region, as >>>> it will be relocated into heap and unmapped at the end of boot. >>>> >>>> Signed-off-by: Penny Zheng >>>> Signed-off-by: Wei Chen >>>> --- >>>> v3: >>>> - map the first 2MB. Check the size and then re-map with an extra >>>> 2MB if needed >>>> --- >>>>   xen/arch/arm/include/asm/arm64/mpu.h |  3 ++- >>>>   xen/arch/arm/include/asm/page.h      |  5 +++++ >>>>   xen/arch/arm/mm.c                    | 26 ++++++++++++++++++++------ >>>>   xen/arch/arm/mpu/mm.c                |  1 + >>>>   xen/arch/arm/xen.lds.S               |  5 ++++- >>>>   5 files changed, 32 insertions(+), 8 deletions(-) >>>> >>>> diff --git a/xen/arch/arm/include/asm/arm64/mpu.h >>>> b/xen/arch/arm/include/asm/arm64/mpu.h >>>> index a6b07bab02..715ea69884 100644 >>>> --- a/xen/arch/arm/include/asm/arm64/mpu.h >>>> +++ b/xen/arch/arm/include/asm/arm64/mpu.h >>>> @@ -72,7 +72,8 @@ typedef union { >>>>           unsigned long ns:1;     /* Not-Secure */ >>>>           unsigned long res:1;    /* Reserved 0 by hardware */ >>>>           unsigned long limit:42; /* Limit Address */ >>>> -        unsigned long pad:16; >>>> +        unsigned long pad:15; >>>> +        unsigned long tran:1;   /* Transient region */ >>>>       } reg; >>>>       uint64_t bits; >>>>   } prlar_t; >>>> diff --git a/xen/arch/arm/include/asm/page.h >>>> b/xen/arch/arm/include/asm/page.h >>>> index 85ecd5e4de..a434e2205a 100644 >>>> --- a/xen/arch/arm/include/asm/page.h >>>> +++ b/xen/arch/arm/include/asm/page.h >>>> @@ -97,19 +97,24 @@ >>>>    * [3:4] Execute Never >>>>    * [5:6] Access Permission >>>>    * [7]   Region Present >>>> + * [8]   Transient Region, e.g. MPU memory region is temproraily >>>> + *                              mapped for a short time >>>>    */ >>>>   #define _PAGE_AI_BIT            0 >>>>   #define _PAGE_XN_BIT            3 >>>>   #define _PAGE_AP_BIT            5 >>>>   #define _PAGE_PRESENT_BIT       7 >>>> +#define _PAGE_TRANSIENT_BIT     8 >>> I don't think this is related to MPU. At least when I look at the bit >>> representation of PRBAR_EL1/2, >> >> This set of _PAGE_xxx flags aren't compliant with PRBAR_EL1/2 register >> map. >> It is a flag passed to function map_pages_to_xen() to indicate memory >> attributes and permission. > > But aren't you writing these flags to PRBAR_EL1/EL2 when you call > xen_mpumap_update_entry(). > > In the below snippet of xen_mpumap_update_entry(), IIUC, you are writing > these flags. > >         xen_mpumap[idx].prbar.reg.ap = PAGE_AP_MASK(flags); >         xen_mpumap[idx].prbar.reg.xn = PAGE_XN_MASK(flags); > >         write_protection_region((const pr_t*)(&xen_mpumap[idx]), idx); > > Please clarify here. > > In this case, I don't prefer mixing hardware specific bits with software > only representation for these reasons :- > > 1. It makes it confusing and hard to differentiate the hardware specific > attrbutes from software only. Penny's approach matches what we are doing in the MMU code. We want to have a way for the caller to pass just set of flags and let the callee to decide what to do with them. This may be flags converted for HW fields or just used by the logic. If you disagree with this approach, then can you propose a different way that we can discuss? > > 2.  Also, refer xen/arch/arm/include/asm/arm64/mpu.h, typedef union > prbar_t {} :- > > typedef union { >     struct __packed { >         unsigned long xn:2;       /* Execute-Never */ >         unsigned long ap:2;       /* Acess Permission */ >         unsigned long sh:2;       /* Sharebility */ >         unsigned long base:42;    /* Base Address */ >         unsigned long pad:12; >         unsigned long p2m_type:4; /* Ignore by hardware. Used to store > p2m types.*/ You are right, the top bits are RES0 (not ignored like on ARMv8-A). So we can't use to store the p2m_type. Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Fri Jun 30 11:33:09 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 30 Jun 2023 11:33:09 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557435.870775 (Exim 4.92) (envelope-from ) id 1qFCN6-0008TD-Ga; Fri, 30 Jun 2023 11:33:04 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557435.870775; Fri, 30 Jun 2023 11:33:04 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFCN6-0008T6-E2; Fri, 30 Jun 2023 11:33:04 +0000 Received: by outflank-mailman (input) for mailman id 557435; Fri, 30 Jun 2023 11:33:02 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFCN4-0008T0-P8 for xen-devel@lists.xenproject.org; Fri, 30 Jun 2023 11:33:02 +0000 Received: from mo4-p00-ob.smtp.rzone.de (mo4-p00-ob.smtp.rzone.de [81.169.146.161]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id de52788a-1739-11ee-b237-6b7b168915f2; Fri, 30 Jun 2023 13:33:00 +0200 (CEST) Received: from sender by smtp.strato.de (RZmta 49.6.0 AUTH) with ESMTPSA id y5401az5UBWpyNP (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256 bits)) (Client did not present a certificate); Fri, 30 Jun 2023 13:32:51 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: de52788a-1739-11ee-b237-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; t=1688124771; cv=none; d=strato.com; s=strato-dkim-0002; b=cRcjtAI/VOG4+GoSH9C6eYFR+KTj/0suAWOkzfHgw1F7QpXsrqGMdD/SpNzFmO5wso mvWJRlxXMDh9Ae09lMsj1cDB3o3R9pXdC06gQPl8IwfVmrA1pKTe8wrMuUfiRpagfBSG euMRvIw4YfxaWcJkRnqSlLzs365RGN8mD3k71YLEyAplZKe7GNxCmDwQJDwKbwrn9N4f AjAN6Zu8qUOcGF07MmpZ4swbZTMIkp33cVHLP2xUS6Y+gJCvgqsjzqrSgw9ArLDViyX7 ga9xDpIYqhBhAlFEfPQvNom0Uflmt6ZaIhGSl7uftKn2QBWS2sGEImb81CTBcN1hvXhH Vmlw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; t=1688124771; s=strato-dkim-0002; d=strato.com; h=References:In-Reply-To:Message-ID:Subject:Cc:To:From:Date:Cc:Date: From:Subject:Sender; bh=/gk7lMpgzNECZCi+/gCLLwKmUN3PQkb6jMH9TC2m/MQ=; b=a7+sFiEgWoGvMgdiSq+qGYdiqYp2/RLHA6/cJM/4muZ5zWLijBe8ASnOPp4ii2uIjV sayusVaiYLrdFOb4P+mmzOJmO0MvC+iNHhY3pMbMuHnNpryw+cvDBFlb2OWVEj+WThCQ m7mwTaWKc/0gQYZ4o62NXUI477OnhE+7KlsV/t4m/CN9NTOnok33avX6P6OoWdQE/JgT 6rdHmZ2zgbSnszNBQziljCN4k1o1/+tKeO+eNkAVaKmMgc2PlJ4qpqn+yvvBxxlj89UY 0XxNoFJfoZ1XvWuYFlmaNn9GI8OkiSfKzNyzlmuc7Hdi30xKhH1eaM/UhgsPNJMeUGmY 0L+A== ARC-Authentication-Results: i=1; strato.com; arc=none; dkim=none X-RZG-CLASS-ID: mo00 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; t=1688124771; s=strato-dkim-0002; d=aepfle.de; h=References:In-Reply-To:Message-ID:Subject:Cc:To:From:Date:Cc:Date: From:Subject:Sender; bh=/gk7lMpgzNECZCi+/gCLLwKmUN3PQkb6jMH9TC2m/MQ=; b=fYBN01q30vZeqh2Frh9iN/k7steP4RJ2Az4vC1H/ZAFrn6NrnnpBDKy1UY8IQYYAZ3 z6YbnP5TsXsS+MujV478r/Dj6D7LXM+zikAjmQnWM+fReZCXHKVo0Rg2hFuS+wUD/fnw KjoEB9WSj9NgNgnCr9ryWbm8oRoZI0yv85nooLUwOqmmm/+x3DAyGmwcnhomgiYzDbli wksRGExpHZTv2ld5iDbVYukb0+Yja40kBzp/uzJtxQKt0RdtSD5d1EeGe4MYq12skQlQ AdVLvNap7x9Zc9C22KzzjTmEbprXUyNWE3CdjX+1Vh5MWuqimfUSY2g1fDFoUQg8UR/Q gc+A== DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; t=1688124771; s=strato-dkim-0003; d=aepfle.de; h=References:In-Reply-To:Message-ID:Subject:Cc:To:From:Date:Cc:Date: From:Subject:Sender; bh=/gk7lMpgzNECZCi+/gCLLwKmUN3PQkb6jMH9TC2m/MQ=; b=hEf6aYcS9lS1cIrxjvszx8GUI7WptFij09TxonfrZJm/Xt6yRBByhoEi2TfJpIKat5 3LgbSlsr96ERdDYZbbDA== X-RZG-AUTH: ":P2EQZWCpfu+qG7CngxMFH1J+3q8wa/QLpd5ylWvMDX3y/OuD5rXVisR4VReIOE3s+xIC8HZ8TOtjelmE6SkKgUS6xMby0Q==" Date: Fri, 30 Jun 2023 13:32:42 +0200 From: Olaf Hering To: Bernhard Beschow Cc: qemu-devel@nongnu.org, Paolo Bonzini , John Snow , xen-devel@lists.xenproject.org, Stefano Stabellini Subject: Re: [PATCH v2] piix: fix regression during unplug in Xen HVM domUs Message-ID: <20230630133242.58e6d9ed.olaf@aepfle.de> In-Reply-To: <367317C5-DB65-40EF-B45B-97E0E802A994@gmail.com> References: <20210317070046.17860-1-olaf@aepfle.de> <4441d32f-bd52-9408-cabc-146b59f0e4dc@redhat.com> <20210325121219.7b5daf76.olaf@aepfle.de> <20230509225818.GA16290@aepfle.de> <20230626231901.5b5d11c1.olaf@aepfle.de> <5DB37FA5-41DF-4ED6-8C8A-CDDD6F276F42@gmail.com> <20230627140740.2736f6e8.olaf@aepfle.de> <4F5609FD-4A89-4450-89E2-3311CC5A9317@gmail.com> <20230630092921.392b302d.olaf@aepfle.de> <367317C5-DB65-40EF-B45B-97E0E802A994@gmail.com> X-Mailer: Claws Mail 20230601T090920.68bc28c0 hat ein Softwareproblem, kann man nichts machen. MIME-Version: 1.0 Content-Type: multipart/signed; boundary="Sig_/WOYyKbs1pq2/gEoXAojnkkq"; protocol="application/pgp-signature"; micalg=pgp-sha256 Content-Transfer-Encoding: 7bit --Sig_/WOYyKbs1pq2/gEoXAojnkkq Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: quoted-printable Fri, 30 Jun 2023 08:05:29 +0000 Bernhard Beschow : > Yes. Have a look for piix3/piix4 here: https://www.intel.com/design/archi= ves/chipsets/440/index.htm This is hidden behind a login or whatever. I should be able to come up with a commit message without hardware specs be= ing available. Olaf --Sig_/WOYyKbs1pq2/gEoXAojnkkq Content-Type: application/pgp-signature Content-Description: Digitale Signatur von OpenPGP -----BEGIN PGP SIGNATURE----- iQIzBAEBCAAdFiEE97o7Um30LT3B+5b/86SN7mm1DoAFAmSevVoACgkQ86SN7mm1 DoAoiA/+Nac1y4FAslYKcs5MbXKeAht0YipykhnZnjEs5GFr1xmFi8cKvrPrzyaB EYjjXoosax8+YJJM/GDKaXyHx68piIf5YdMvA8Zdkp4mQ+HuAZIQa0zit9ONA+gS WHs154Zf/RqcQMVDjf74GcptgPP2YOmc/MPbZ6UV3GhXD+irdu8bqBnBeNqOV69q w/irUkAV/tBym8DHacToeoD0KB7c/aGq/6SJHlDSCYcWJElG0midU5E5dMPzNEGz +w97vAZ6LHcM0NVfa/lwUiXEntM6rDpPNwTyCP2todWEfUZsT+Jn8s8q+H8R6r/O 5FIXltIRH/fl5TEIJsYYEyWYWM4cMxhcVGuTJSeNI0mjxMgqg1OMrg25YgZUNKFK qmALpYbLZkcLPzIG9YMFwEwAUTdU3zVCinTmuhfTUQc/SStu1I6j7UfVSmSZaScx sOEWkXzRlr5MbUt/HZ8NTjI2FA+WW3CF428nNFdz1Un+l7Ftq61wkDzsfJ6G6Rqj xQPe9W98WmaORotynCq+itxUHEzJVFXgG92Lf6/zihB4bqGZes/LXT7NiLRUUUq0 73EOEMZ4fQuxHhsuC0M/S3UeF9I43ONbgAwksZSBOQZY8q6hnTGH5vSvzf8igd0Q swEhq8zVVLlvihWAHLqx2Ck8LZO8CIFRzBz/0hAHHzCJBC0QQYU= =8PAh -----END PGP SIGNATURE----- --Sig_/WOYyKbs1pq2/gEoXAojnkkq-- From xen-devel-bounces@lists.xenproject.org Fri Jun 30 11:38:12 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 30 Jun 2023 11:38:12 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557444.870785 (Exim 4.92) (envelope-from ) id 1qFCRs-0000iA-5I; Fri, 30 Jun 2023 11:38:00 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557444.870785; Fri, 30 Jun 2023 11:38:00 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFCRs-0000i3-2F; Fri, 30 Jun 2023 11:38:00 +0000 Received: by outflank-mailman (input) for mailman id 557444; Fri, 30 Jun 2023 11:37:59 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFCRr-0000hx-93 for xen-devel@lists.xenproject.org; Fri, 30 Jun 2023 11:37:59 +0000 Received: from mail-ed1-x534.google.com (mail-ed1-x534.google.com [2a00:1450:4864:20::534]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 8fa7ec36-173a-11ee-b237-6b7b168915f2; Fri, 30 Jun 2023 13:37:58 +0200 (CEST) Received: by mail-ed1-x534.google.com with SMTP id 4fb4d7f45d1cf-51d9865b8a2so1868799a12.3 for ; Fri, 30 Jun 2023 04:37:58 -0700 (PDT) Received: from georged-x-u.eng.citrite.net ([185.25.67.249]) by smtp.gmail.com with ESMTPSA id n3-20020aa7db43000000b0051a4361f3efsm6617282edt.61.2023.06.30.04.37.57 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 30 Jun 2023 04:37:57 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 8fa7ec36-173a-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cloud.com; s=cloud; t=1688125077; x=1690717077; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=z/LI/Muc6+gIT2fOpPCQSPl2WmUiu9rE0EERxsNn5vo=; b=dbBHYQkFwC0IIWY+SBc5LEVBR3N2espN106dMOISx2H2lApD2e7eXgd08IfHk1YFTf PPB1IhBmTpmZXws8eDXxl6alPDV2XnL3Ua2hbMwC9S9bMMv5Paxn2fLy2Coqdpb2wdKD G90xMshqS13xecjZ8X/siU+mpxhrqC0r7pbJ8= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1688125077; x=1690717077; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=z/LI/Muc6+gIT2fOpPCQSPl2WmUiu9rE0EERxsNn5vo=; b=HmZfoUY5MOW07N3sVwPlQpzMEuOuJuVEo3y2hSYsaoeJf1C/ghA2JVOnvchFT88D1j +dCfLs7OeTEqNaeER8OyjUIfMQOvPBjQHl4IibN/0mdZ0uvqRB4lNqtkjhUWz8jX4NdV m5GQzCZbszHtcUauzJusiUFkUi198+U3qgEUgI3ZErT6poUcD+YSCRTt78LZ+A9TdBZO ilyR7dwy6YrCXhBjSCEVvJUX1f0eRpUBnlvAKt4/7gLV2rBXWcHcRqyXgcuHKgq/rlaR wihGwQOaUChLmnLQ6fPC+WoOvOwAVa3FqfS6hPjgJWWYftzhth4A6/wctge2WcVsEQRr ryTg== X-Gm-Message-State: ABy/qLaO60Dosvn+HB8GXwlMeT+Hg7WHKalCUw1y/nKLBlF9f5qWXW6I x9i7nsfTK4Uou2UYXDU9oer+O4ninePhMF/V5v8= X-Google-Smtp-Source: APBJJlETAWgc5qUwa2MgtETqTA3OYLt3JAiz6zG+yZUBLPKT/zRcArDNSt1DV8D7+GqZaAwA0x1yVA== X-Received: by 2002:a05:6402:34e:b0:51d:9883:afdf with SMTP id r14-20020a056402034e00b0051d9883afdfmr1450546edw.12.1688125077484; Fri, 30 Jun 2023 04:37:57 -0700 (PDT) From: George Dunlap To: xen-devel@lists.xenproject.org Cc: George Dunlap , Dario Faggioli Subject: [PATCH 2/2] credit: Don't steal vcpus which have yielded Date: Fri, 30 Jun 2023 12:37:56 +0100 Message-Id: <20230630113756.672607-2-george.dunlap@cloud.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230630113756.672607-1-george.dunlap@cloud.com> References: <20230630113756.672607-1-george.dunlap@cloud.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit On large systems with many vcpus yielding due to spinlock priority inversion, it's not uncommon for a vcpu to yield its timeslice, only to be immediately stolen by another pcpu looking for higher-priority work. To prevent this: * Keep the YIELD flag until a vcpu is removed from a runqueue * When looking for work to steal, skip vcpus which have yielded NB that this does mean that sometimes a VM is inserted into an empty runqueue; handle that case. Signed-off-by: George Dunlap --- CC: Dario Faggioli --- xen/common/sched/credit.c | 34 +++++++++++++++++++--------------- 1 file changed, 19 insertions(+), 15 deletions(-) diff --git a/xen/common/sched/credit.c b/xen/common/sched/credit.c index b8bdfd5f6a..7754e9b3a0 100644 --- a/xen/common/sched/credit.c +++ b/xen/common/sched/credit.c @@ -296,14 +296,10 @@ __runq_insert(struct csched_unit *svc) * runnable unit if we can. The next runq_sort will bring it forward * within 30ms if the queue too long. */ if ( test_bit(CSCHED_FLAG_UNIT_YIELD, &svc->flags) - && __runq_elem(iter)->pri > CSCHED_PRI_IDLE ) - { + && __runq_elem(iter)->pri > CSCHED_PRI_IDLE + && iter->next != runq) iter=iter->next; - /* Some sanity checks */ - BUG_ON(iter == runq); - } - list_add_tail(&svc->runq_elem, iter); } @@ -319,6 +315,11 @@ __runq_remove(struct csched_unit *svc) { BUG_ON( !__unit_on_runq(svc) ); list_del_init(&svc->runq_elem); + + /* + * Clear YIELD flag when scheduling back in + */ + clear_bit(CSCHED_FLAG_UNIT_YIELD, &svc->flags); } static inline void @@ -1638,6 +1639,13 @@ csched_runq_steal(int peer_cpu, int cpu, int pri, int balance_step) if ( speer->pri <= pri ) break; + /* + * Don't steal a UNIT which has yielded; it's waiting for a + * reason + */ + if (test_bit(CSCHED_FLAG_UNIT_YIELD, &speer->flags)) + continue; + /* Is this UNIT runnable on our PCPU? */ unit = speer->unit; BUG_ON( is_idle_unit(unit) ); @@ -1955,11 +1963,6 @@ static void cf_check csched_schedule( dec_nr_runnable(sched_cpu); } - /* - * Clear YIELD flag before scheduling out - */ - clear_bit(CSCHED_FLAG_UNIT_YIELD, &scurr->flags); - do { snext = __runq_elem(runq->next); @@ -1974,10 +1977,11 @@ static void cf_check csched_schedule( /* * SMP Load balance: * - * If the next highest priority local runnable UNIT has already eaten - * through its credits, look on other PCPUs to see if we have more - * urgent work... If not, csched_load_balance() will return snext, but - * already removed from the runq. + * If the next highest priority local runnable UNIT has + * already eaten through its credits (and we're below the + * balancing ratelimit), look on other PCPUs to see if we have + * more urgent work... If we don't, csched_load_balance() will + * return snext, but already removed from the runq. */ if ( snext->pri <= CSCHED_PRI_TS_OVER && now - spc->last_load_balance > prv->load_balance_ratelimit) { -- 2.25.1 From xen-devel-bounces@lists.xenproject.org Fri Jun 30 11:38:13 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 30 Jun 2023 11:38:13 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557445.870797 (Exim 4.92) (envelope-from ) id 1qFCRv-0000xr-Ds; Fri, 30 Jun 2023 11:38:03 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557445.870797; Fri, 30 Jun 2023 11:38:03 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFCRv-0000xk-90; Fri, 30 Jun 2023 11:38:03 +0000 Received: by outflank-mailman (input) for mailman id 557445; Fri, 30 Jun 2023 11:38:01 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFCRt-0000x3-QF for xen-devel@lists.xenproject.org; Fri, 30 Jun 2023 11:38:01 +0000 Received: from mail-ed1-x531.google.com (mail-ed1-x531.google.com [2a00:1450:4864:20::531]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 8f7082c9-173a-11ee-8611-37d641c3527e; Fri, 30 Jun 2023 13:37:57 +0200 (CEST) Received: by mail-ed1-x531.google.com with SMTP id 4fb4d7f45d1cf-51dd1e5a621so2159893a12.0 for ; Fri, 30 Jun 2023 04:37:57 -0700 (PDT) Received: from georged-x-u.eng.citrite.net ([185.25.67.249]) by smtp.gmail.com with ESMTPSA id n3-20020aa7db43000000b0051a4361f3efsm6617282edt.61.2023.06.30.04.37.56 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 30 Jun 2023 04:37:56 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 8f7082c9-173a-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cloud.com; s=cloud; t=1688125077; x=1690717077; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=EzfbA4Kdd0x8KFR4T495Xa5yXrnJZrQ99E6PRchMhBw=; b=lFXKLv+hcMvfvoLg5cHDFxlG5tnvGD/RlzSlzD0W+h4FbPUE8Mu+GzaOJF3C01f4bX QXlAzNPPUUZsUtfL+SpnzxQbNJIX4d1QunVkZ7Hh20eJB8k0OEP5XI+6qCN9VRaZrJs7 RteZkGKajtPZJ5rWgIF68Y1RBzIOQoIX10leI= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1688125077; x=1690717077; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=EzfbA4Kdd0x8KFR4T495Xa5yXrnJZrQ99E6PRchMhBw=; b=ig2TsjDnXPtrjx1tGLerbvi43qWYxLsavD0mckkvRmgWHrDX1tEfQ0n3yFh0mCjXxQ dimMO7GfauNIF9yqmXIksPC7aAJOq11EUrKw7wdX+LWsWlkZY5t6yflvT7U0FaOu55ZT iB/WCfRgwaWQ2+KCDG12MRjHCOJ4neQK2hNwreehkcJaYvU+TaYMbmNWe61+GtXmJUsm seOm6V0yg19lGB+/86Afu5e+Efin9iACN3Pn9cMIiPjsoBfJyHUkH2biNbQb4mQaPzuD Mvt2ypq9nfglljdZ+ZjI7bWh9g6mG9Fg7kl2C45Kriit/EFKhn4ij5C9SZq441DBi0VH dnJQ== X-Gm-Message-State: ABy/qLZ7HnpRZU+2jZotL1c7fqLvZEQU4c8XdlrZ/761EchGBVWc7Q+N amxJ7B7TicYcY9L5QrPgPaWBYcuQCauxwHRzD3E= X-Google-Smtp-Source: APBJJlEthxwdgsaPnFeQqyuXpWvb+tdiYNDwi9AKIi2JIbfpn4WFZMAuSWpJgJsGmbLcJWQ7S6/IVA== X-Received: by 2002:aa7:db48:0:b0:51b:fa0a:dc37 with SMTP id n8-20020aa7db48000000b0051bfa0adc37mr1684133edt.10.1688125077133; Fri, 30 Jun 2023 04:37:57 -0700 (PDT) From: George Dunlap To: xen-devel@lists.xenproject.org Cc: George Dunlap , Dario Faggioli , Andrew Cooper , George Dunlap , Jan Beulich , Julien Grall , Stefano Stabellini , Wei Liu Subject: [PATCH 1/2] credit: Limit load balancing to once per millisecond Date: Fri, 30 Jun 2023 12:37:55 +0100 Message-Id: <20230630113756.672607-1-george.dunlap@cloud.com> X-Mailer: git-send-email 2.25.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit The credit scheduler tries as hard as it can to ensure that it always runs scheduling units with positive credit (PRI_TS_UNDER) before running those with negative credit (PRI_TS_OVER). If the next runnable scheduling unit is of priority OVER, it will always run the load balancer, which will scour the system looking for another scheduling unit of the UNDER priority. Unfortunately, as the number of cores on a system has grown, the cost of the work-stealing algorithm has dramatically increased; a recent trace on a system with 128 cores showed this taking over 50 microseconds. Add a parameter, load_balance_ratelimit, to limit the frequency of load balance operations on a given pcpu. Default this to 1 millisecond. Invert the load balancing conditional to make it more clear, and line up more closely with the comment above it. Overall it might be cleaner to have the last_load_balance checking happen inside csched_load_balance(), but that would require either passing both now and spc into the function, or looking them up again; both of which seemed to be worse than simply checking and setting the values before calling it. Without this patch, on a system with a vcpu:pcpu ratio of 2:1, running Windows guests (which will end up calling YIELD during spinlock contention), this patch increased performance significantly. Signed-off-by: George Dunlap --- CC: Dario Faggioli CC: Andrew Cooper CC: George Dunlap CC: Jan Beulich CC: Julien Grall CC: Stefano Stabellini CC: Wei Liu --- docs/misc/xen-command-line.pandoc | 6 +++++ xen/common/sched/credit.c | 40 ++++++++++++++++++++++++++----- xen/include/public/sysctl.h | 6 +++++ 3 files changed, 46 insertions(+), 6 deletions(-) diff --git a/docs/misc/xen-command-line.pandoc b/docs/misc/xen-command-line.pandoc index 4060ebdc5d..369557020f 100644 --- a/docs/misc/xen-command-line.pandoc +++ b/docs/misc/xen-command-line.pandoc @@ -1856,6 +1856,12 @@ By default, Xen will use the INVPCID instruction for TLB management if it is available. This option can be used to cause Xen to fall back to older mechanisms, which are generally slower. +### load-balance-ratelimit +> `= ` + +The minimum interval between load balancing events on a given pcpu. +At the moment only credit honors this parameter. + ### noirqbalance (x86) > `= ` diff --git a/xen/common/sched/credit.c b/xen/common/sched/credit.c index f2cd3d9da3..b8bdfd5f6a 100644 --- a/xen/common/sched/credit.c +++ b/xen/common/sched/credit.c @@ -50,6 +50,8 @@ #define CSCHED_TICKS_PER_TSLICE 3 /* Default timeslice: 30ms */ #define CSCHED_DEFAULT_TSLICE_MS 30 +/* Default load balancing ratelimit: 1ms */ +#define CSCHED_DEFAULT_LOAD_BALANCE_RATELIMIT_US 1000 #define CSCHED_CREDITS_PER_MSEC 10 /* Never set a timer shorter than this value. */ #define CSCHED_MIN_TIMER XEN_SYSCTL_SCHED_RATELIMIT_MIN @@ -153,6 +155,7 @@ struct csched_pcpu { unsigned int idle_bias; unsigned int nr_runnable; + s_time_t last_load_balance; unsigned int tick; struct timer ticker; @@ -218,7 +221,7 @@ struct csched_private { /* Period of master and tick in milliseconds */ unsigned int tick_period_us, ticks_per_tslice; - s_time_t ratelimit, tslice, unit_migr_delay; + s_time_t ratelimit, tslice, unit_migr_delay, load_balance_ratelimit; struct list_head active_sdom; uint32_t weight; @@ -612,6 +615,8 @@ init_pdata(struct csched_private *prv, struct csched_pcpu *spc, int cpu) BUG_ON(!is_idle_unit(curr_on_cpu(cpu))); cpumask_set_cpu(cpu, prv->idlers); spc->nr_runnable = 0; + + spc->last_load_balance = NOW(); } static void cf_check @@ -1267,7 +1272,8 @@ csched_sys_cntl(const struct scheduler *ops, && (params->ratelimit_us > XEN_SYSCTL_SCHED_RATELIMIT_MAX || params->ratelimit_us < XEN_SYSCTL_SCHED_RATELIMIT_MIN)) || MICROSECS(params->ratelimit_us) > MILLISECS(params->tslice_ms) - || params->vcpu_migr_delay_us > XEN_SYSCTL_CSCHED_MGR_DLY_MAX_US ) + || params->vcpu_migr_delay_us > XEN_SYSCTL_CSCHED_MGR_DLY_MAX_US + || params->load_balance_ratelimit_us > XEN_SYSCTL_CSCHED_LB_RATE_MAX_US) goto out; spin_lock_irqsave(&prv->lock, flags); @@ -1278,6 +1284,7 @@ csched_sys_cntl(const struct scheduler *ops, printk(XENLOG_INFO "Disabling context switch rate limiting\n"); prv->ratelimit = MICROSECS(params->ratelimit_us); prv->unit_migr_delay = MICROSECS(params->vcpu_migr_delay_us); + prv->load_balance_ratelimit = MICROSECS(params->load_balance_ratelimit_us); spin_unlock_irqrestore(&prv->lock, flags); /* FALLTHRU */ @@ -1285,6 +1292,7 @@ csched_sys_cntl(const struct scheduler *ops, params->tslice_ms = prv->tslice / MILLISECS(1); params->ratelimit_us = prv->ratelimit / MICROSECS(1); params->vcpu_migr_delay_us = prv->unit_migr_delay / MICROSECS(1); + params->load_balance_ratelimit_us = prv->load_balance_ratelimit / MICROSECS(1); rc = 0; break; } @@ -1676,9 +1684,17 @@ csched_runq_steal(int peer_cpu, int cpu, int pri, int balance_step) return NULL; } +/* + * Minimum delay, in microseconds, between load balance operations. + * This prevents spending too much time doing load balancing, particularly + * when the system has a high number of YIELDs due to spinlock priority inversion. + */ +static unsigned int __read_mostly load_balance_ratelimit_us = CSCHED_DEFAULT_LOAD_BALANCE_RATELIMIT_US; +integer_param("load-balance-ratelimit", load_balance_ratelimit_us); + static struct csched_unit * csched_load_balance(struct csched_private *prv, int cpu, - struct csched_unit *snext, bool *stolen) + struct csched_unit *snext, bool *stolen) { const struct cpupool *c = get_sched_res(cpu)->cpupool; struct csched_unit *speer; @@ -1963,10 +1979,12 @@ static void cf_check csched_schedule( * urgent work... If not, csched_load_balance() will return snext, but * already removed from the runq. */ - if ( snext->pri > CSCHED_PRI_TS_OVER ) - __runq_remove(snext); - else + if ( snext->pri <= CSCHED_PRI_TS_OVER + && now - spc->last_load_balance > prv->load_balance_ratelimit) { + spc->last_load_balance = now; snext = csched_load_balance(prv, sched_cpu, snext, &migrated); + } else + __runq_remove(snext); } while ( !unit_runnable_state(snext->unit) ); @@ -2181,6 +2199,14 @@ csched_global_init(void) XEN_SYSCTL_CSCHED_MGR_DLY_MAX_US, vcpu_migration_delay_us); } + if ( load_balance_ratelimit_us > XEN_SYSCTL_CSCHED_LB_RATE_MAX_US ) + { + load_balance_ratelimit_us = CSCHED_DEFAULT_LOAD_BALANCE_RATELIMIT_US; + printk("WARNING: load-balance-ratelimit outside of valid range [0,%d]us.\n" + "Resetting to default: %u\n", + XEN_SYSCTL_CSCHED_LB_RATE_MAX_US, load_balance_ratelimit_us); + } + return 0; } @@ -2223,6 +2249,8 @@ csched_init(struct scheduler *ops) prv->unit_migr_delay = MICROSECS(vcpu_migration_delay_us); + prv->load_balance_ratelimit = MICROSECS(load_balance_ratelimit_us); + return 0; } diff --git a/xen/include/public/sysctl.h b/xen/include/public/sysctl.h index 9d06e92d0f..48f7f57037 100644 --- a/xen/include/public/sysctl.h +++ b/xen/include/public/sysctl.h @@ -641,6 +641,12 @@ struct xen_sysctl_credit_schedule { */ #define XEN_SYSCTL_CSCHED_MGR_DLY_MAX_US (100 * 1000) uint32_t vcpu_migr_delay_us; + /* + * Minimum delay, in microseconds, between load balance + * operations; max 1 second. + */ +#define XEN_SYSCTL_CSCHED_LB_RATE_MAX_US (1000000) + uint32_t load_balance_ratelimit_us; }; struct xen_sysctl_credit2_schedule { -- 2.25.1 From xen-devel-bounces@lists.xenproject.org Fri Jun 30 12:29:31 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 30 Jun 2023 12:29:31 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557464.870806 (Exim 4.92) (envelope-from ) id 1qFDFN-0006ud-FQ; Fri, 30 Jun 2023 12:29:09 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557464.870806; Fri, 30 Jun 2023 12:29:09 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFDFN-0006uW-BU; Fri, 30 Jun 2023 12:29:09 +0000 Received: by outflank-mailman (input) for mailman id 557464; Fri, 30 Jun 2023 12:29:08 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFDFL-0006uA-Sy for xen-devel@lists.xenproject.org; Fri, 30 Jun 2023 12:29:08 +0000 Received: from esa6.hc3370-68.iphmx.com (esa6.hc3370-68.iphmx.com [216.71.155.175]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id b287e553-1741-11ee-b237-6b7b168915f2; Fri, 30 Jun 2023 14:29:04 +0200 (CEST) Received: from mail-bn8nam11lp2169.outbound.protection.outlook.com (HELO NAM11-BN8-obe.outbound.protection.outlook.com) ([104.47.58.169]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 30 Jun 2023 08:28:46 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by BN8PR03MB5138.namprd03.prod.outlook.com (2603:10b6:408:7c::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.19; Fri, 30 Jun 2023 12:28:44 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606%4]) with mapi id 15.20.6544.019; Fri, 30 Jun 2023 12:28:44 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: b287e553-1741-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1688128144; h=message-id:date:subject:to:references:from:in-reply-to: content-transfer-encoding:mime-version; bh=qmjql4GOgaE7KUyWnLmFlnIFmOBZyfunbwxAYuAZAE4=; b=hyYXpzwRMPymRhYH3t5kMYhSuPe2yK7c+4dMsfazEZq5DL34kuVViKou doy+ZHxv7taZfT2EK3/wzHr9En9kTprqecI6Q0Kyi5fRHAmw0UtrTWXaS 9+uMnCgOJ8xlIgh4C1TJfBxvCC/O6o0VBIm9wGosljWI2V+98fFu3kIUV I=; X-IronPort-RemoteIP: 104.47.58.169 X-IronPort-MID: 114045837 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:y+qDKqqoduLnjLXhgL3rxwgZjJ9eBmI6ZBIvgKrLsJaIsI4StFCzt garIBnVMqmONDP9KoslbYS0p09V757SyddkSFc9qn8xEn9HpJuZCYyVIHmrMnLJJKUvbq7FA +Y2MYCccZ9uHhcwgj/3b9ANeFEljfngqoLUUbKCYWYpA1c/Ek/NsDo788YhmIlknNOlNA2Ev NL2sqX3NUSsnjV5KQr40YrawP9UlKq04GpwUmAWP6gR5weAzCFNVfrzGInqR5fGatgMdgKFb 76rIIGRpgvx4xorA9W5pbf3GmVirmn6ZFXmZtJ+AsBOszAazsAA+v9T2Mk0MC+7vw6hjdFpo OihgLTrIesf0g8gr8xGO/VQO3kW0aSrY9YrK1Dn2SCY5xWun3cBX5yCpaz5VGEV0r8fPI1Ay RAXAGwMRCujttjo+q34Y+RzwccILez3EYxK7xmMzRmBZRonabbqZvyToPV+jHI3jM0IGuvCb c0EbzYpdA7HfxBEJlYQDtQ5gfusgX78NTZfrTp5p4JuuzSVkFM3jeiraYSEEjCJbZw9ckKwj 2TK5WnmRDodM8SS02Gt+XOwnO7f2yj8Xer+EZXhr6Iy3ADDnTN75Bs+Swe1kN2fq2CERfl/d 3cmoTYSooUu6xn+JjX6d1jiyJKehTYVX9dSGus28gbL1KPQ5wubAUAPSjlcZJots8pebSwn0 BqFks3kARRrsaaJUjSN+7GMtzSwNCMJa2gYakc5oRAt5tDipMQ5iELJR9M6Saqt1ISrSHf33 iyAqzU4i/MLl8kX2q6n/FfBxTWxupzOSQ1z7QLSNo640j5EiEeeT9TAwTDmATxodtzxooWp1 JTcp/Wj0Q== IronPort-HdrOrdr: A9a23:+erSI6HjApAQjm3cpLqE5seALOsnbusQ8zAXPiFKJSC9F/byqy nAppsmPHPP5gr5OktBpTnwAsi9qBrnnPYejLX5Vo3SPzUO1lHYSb1K3M/PxCDhBj271sM179 YFT0GmMqyTMWRH X-Talos-CUID: 9a23:4Ta+9G2oow04blXomkfvHbxfRsEPSV3s9inqPAyRBHkuS5aUbEO99/Yx X-Talos-MUID: 9a23:GUsuzwkr6zJFgXKuE4Njdnp8aMlZx4KPJnoTurVagPvfKRB/FiuC2WE= X-IronPort-AV: E=Sophos;i="6.01,170,1684814400"; d="scan'208";a="114045837" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=DaQjwvJEPd6RLNE7RDj5PGYrBxLN8ebFUZQ/FCxoh6KVrYukBcoOokeLVIzb5WXgMiV4MS6yMRKbHGfu+hz7wUDfjqr5BgEnsTJ9j5pLi3Qmu+D+vQIOrMZy6GJi7FfnBkAmob+UYKOJKP3yL1ybWmpLGX3ylDqm9UJWHdZXLLCfH3xKuGyJzLevcdEjJyF8gBiV1RYIF4eMBqy2T+InQfDkIFedcZ1N7VyQ49A9/YwlXJ/ap1Od5RX2MRmUqSrmt+eDR6DAWXovjB8fmTXM+85IOgQkBnD8fIOTS45IwsHhEiMYXDsyezw4B4vWtmKtaOdrgi4HHLoVjuwOcz2w3w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=xAWpSxK2SAnaaX+uD85IMG2GwGydbob6sZgACDWSmlU=; b=jH6g4hJhuSBcoWooZDHXhT3KpFmEosn4BRqlvfsKZeUp45tXhFNX8+6Ls20aPrQFFXF60AzzGVGDsESGCz4TE5z6+ZQhvMw9iuwyR24VVJ914oam7oO64dIfebh4y5qbwjzDPOnYHLS3dEtDHW2nthVWUUelLEt0lktGUpMyHVN+yo3Hkt108QSihRN1PwoHLRkSVeUP7pkoV20/0PkSwoD6cYUD8QB8MJWCDDGGIawqudq+Ed3rBwA1I0Ds6dc0rsyQSvBqY8J7TfWTED6RLsM1uTPkZWVFgu8w6pRqgjvZmKL9JJv1I3F5EPNBZSSNiYZ5rTs3E/aejMwgXxzS5g== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=xAWpSxK2SAnaaX+uD85IMG2GwGydbob6sZgACDWSmlU=; b=gT1J4uteqCwsdzotHAZwyxyw7e+siexQK7DnVD3nMYe4Di2jXGBOcGM5+Sv5w/OR+SnhryIiseTFMjqL8NFF0d5O/QUJ2JoNhkOyvd1+v/A5ovWl55T8w0r5W3aueW6MMlyhScVzWRBuy8gCmHd0ug/JswbbeX4/18ZnuvtfcFo= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: <647f9bb9-a681-083c-6195-34a89606d190@citrix.com> Date: Fri, 30 Jun 2023 13:28:39 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH v3 2/3] x86/boot: Clear XD_DISABLE from the early boot path Content-Language: en-GB To: Alejandro Vallejo , Xen-devel References: <20230629121713.1211-1-alejandro.vallejo@cloud.com> <20230629121713.1211-3-alejandro.vallejo@cloud.com> From: Andrew Cooper In-Reply-To: <20230629121713.1211-3-alejandro.vallejo@cloud.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO4P123CA0345.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:18d::8) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|BN8PR03MB5138:EE_ X-MS-Office365-Filtering-Correlation-Id: 3b67d20f-e3c2-4dd7-3e89-08db79658b46 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: Utkh2OG1GdR/19iPyyBEtqvGZ6FdntOmaXd9KteJLZS7xjJNnn7+k17GzVl4IION0F4J2y0B1L/w9aP85avz6++uUasfuxMA2JR41tZbjpnZrmw2IzJFw3LUDr4SwUvpwn0/GSNFMiRR7oOxh91UmNY3SIuptoJo8tQ6FLSVudEnTVQ5LHWHpALI70tJCKBbHQIJBmeHb0q2tr8ZE+lXh5HtVrQolOqt1YFA0KYg2uRvcPNJySOvQ+9F3utBn8BmY03JxQKX4QFk/Jfpb9YR/3dBYNWnHKBmb1vR8yPghUcntTjayJpXfOn0lihsz9trmMkz/fiD5tsrqak3p5w6ayQXdYm2JCFy11uaecF8XJ7qigxAk0L/dLqyX1I5Ih2wb8sZQTa3v5CtnKj295aS8wtL0WZTj3D6JzdmTIGh5zD9SN0oQ1ZldeNjnnTqO7PMvp6/8x1Dekors3Tw1ZcIV9tWgweNgn3G5WClNWjtxdawA5yRyB3qEw61YYzPddSJ2oGGCRWF4G5vg2g4GN6JxpBN3fcmClm2rgNgxrVRRUi21veAdrITWueFfcezhCG+CINJCIoMbZqr+qhjYqgX/yTJDB5qpubP4qPsFlWXmqh+n3gEqkDUR2OgGGRGMs/hIx1YEKewUTyumPiQIYls9Q== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(366004)(346002)(39860400002)(396003)(136003)(376002)(451199021)(83380400001)(2616005)(2906002)(4744005)(38100700002)(82960400001)(36756003)(8936002)(8676002)(110136005)(5660300002)(86362001)(31686004)(6512007)(41300700001)(66946007)(66556008)(66476007)(6666004)(316002)(6486002)(478600001)(186003)(31696002)(6506007)(53546011)(26005)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?eGMzT0didUMxbjB1OWRRbmEvT3I4emxINGJWdTZlYS9EKzNxWUlUTklrdC9u?= =?utf-8?B?K2xnd09qQk50bzJLdVJIbVVmNm1QR1E4dWZBUEIya1JyRnJsU2NBelVHcy81?= =?utf-8?B?cHRzdVVKdnI1VlRRM1VFTzdjU05oUWF2K2RiWklHd0xVUWxtb0N1dUkxQk4v?= =?utf-8?B?blRaUGlyYkl2elNiRW5HV2VIU2FyL0tQdUF1STBFZ3BmUzhHNEI5T3VTUHY1?= =?utf-8?B?aVhTN0VOQ3F2anZ1SW9QRFJWUXQ5dXVtbVE2VTkydXljTmlOZ2JSRzlaTmho?= =?utf-8?B?OGRGZ2ZHZmRRZTY2bXk5WlRZK09NQ2p1VFQzTXhSaXdreFJWZTJKQTBlTXox?= =?utf-8?B?R3Fkc0NlaXp2TkMySERXUmdvaEw4ejFKcmsya2lldmxGb2hHYWJ4S3l5aXJW?= =?utf-8?B?d2ZzMHp0WDU3bDlpTEtrS2s0dFJKQU15Z24zc1dqYXFDcjJuZ2JtNjVQSmZD?= =?utf-8?B?TjZQemwxTDV4MTErZGhTaUtIQ05DcndSaXkrcVg4RGFYMG1lZW5GejIvcFNr?= =?utf-8?B?OUdEV3JuaXlOT2kvS3dRMU0zcjZtbDVIN3VPUzlFTDdmRjNVMXQzTE5FYitj?= =?utf-8?B?Z1JlblNTZ2Z0cTRET08rdGJBRys1aTIvREJyRk12MEVQU1ZTcDhCOFVQWVFC?= =?utf-8?B?aEhRVXFWRVU1MWRRN2JVaEVGTDh0KzhlUlBHYVRwOGZpbVZVbWVFYldDU1Vu?= =?utf-8?B?bUFReUM3Z0JsczIvQU0vMUREZ1hhcTRTZnFVRHdLMGhRUWgxU1gxeVNSQ0lJ?= =?utf-8?B?OGpCUzlmVVZTSmFreGJvMU54Q2IzSFgxSlFWemhGMURXR0piS3FjdUxsVmpW?= =?utf-8?B?UlBWalJyS0FlZXlRdnV4ZDlyMmlBSEp3TmJEc1QwSlhaOWZickI5bmZrSzQ4?= =?utf-8?B?VGxGZlVvWTk1MnpRU21DWFJRZmcwbUNhY3R6UHRnYm5QTyt4djMzdlBkR1BU?= =?utf-8?B?aXRhd0NQa2xJZnd0aHBXQmUzVWVMR3hPRlc0alluTk9lWWkyUkQzWE5HSnQz?= =?utf-8?B?S0hTTDdXUTd3aTlCcVd3Q1Qwa3pFNThFTGVNZ2UzTmxTME5CMDVPOCsyRzVK?= =?utf-8?B?am9PZnB5eUw3bVcyMWQ2dzRncThYRkVBdmc2Rm9qZHJPYUZzQVRVQmRVTmls?= =?utf-8?B?azBHVndRQ2RDZHhxZ1d4Z0l4VWxXS3VwQ2tlYWhUQnA2bDlmSENRc0dpam1l?= =?utf-8?B?SnV6dG5oLzBNQnlxbzdTZVd1aDVKUFJhQVk3cFBQcFJ2QWxNc3FLa09yOTdI?= =?utf-8?B?V3ZIUG9UN1VnZTNtNjR3YWV6SWhac1ZFZDUyL3A5bWMwSDgzdEZQazdDREdF?= =?utf-8?B?N2I4dTBSajJGYzkwNmY4NlJPc3YwclkzNnNjRVRYUm56aTJqVnNKNk5JWHRj?= =?utf-8?B?YUpFUXF3RnNWNjdmK3FBcDM5NkkwS25HNTgzejJrYWovclQvY3o2QUpFaE9M?= =?utf-8?B?MkxnV1JCYlhqc1BjRXQ3Mm5oOUY2ODdFMVY2aDQrZWxTOHViaEdMeEJWQW51?= =?utf-8?B?WUVKa0VPMktqNTZRUllCRjFEcWxmaXBtVGFqbVcxY2hWWnUybndwYkt5Z2gv?= =?utf-8?B?S2MyVlZ4STZhUzlnSFVxckV0aElNZ1o5RmFXR1lYd3pxM214Wmk5Y2ZtRFV3?= =?utf-8?B?SWNOeXhhNFZVV1dyU0VQb2FhS1M0Rnhkc2lLeGtwZzcxU2pCb3A3NDRYK1FP?= =?utf-8?B?VmVNNER5NGZhVXNZYU5QbkJaWHZVL3FMenhENG05bTZmUTVIelpvMUhMTFhJ?= =?utf-8?B?Nk9nanorMW5hMFRsNkRnZHM5bUx0WVU2Mmo1NlJBc0ZMVENYZXFGNmlZc1Bp?= =?utf-8?B?aVlLR0JJVUk4K0xZQWQ3dkxkMzlwQytCbEVkS054L3pxZTFwUjI0MTM3WExN?= =?utf-8?B?bVkxVExzMHNQTGJ2SVZmM3pkWkVjSDJiekNFUDNWODJLUG1LZDN5b3lqRE55?= =?utf-8?B?d1Jnc2QvT3VveldXWUZ1L0syTGlVVGphWHIxeXNuT1ZNTFZrTHpnN2NwUHp5?= =?utf-8?B?eEZxYWtVMjJldzMyWHpWbVpQNlRzajBBek0wWkdYbHgxN0pGYlUwcC9MZ01p?= =?utf-8?B?Q2NFY0IzL05Xc3MzKzRvV0M3REJIVFR1bzlJejdUcEVXQ3RDaG5GcTl1Wkhw?= =?utf-8?B?emR1Vm1rOXZseVZ6NUJDaXNpSjBTYlY0TVdQZDdMV2ZsRFc4NHdjNVdNTXFu?= =?utf-8?B?Ync9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: QvTp/7/xhl3lb+9m/qasB80vYHfoO4WVgydZfWbxBARCJpRI5vrXbFwizIcMpuXvjwlpcNdhYXBVJm8DQDe8v8wuKoeH2+6ntQdr0WQ7n7njjDTUIPHyTtGt9HLQJas0bYwj3xeByIMq34tgPjGJLnYPPfwpezt9XiEDlQvaIOBSrLbms0z8cVhz0an3wF6Px9iUAuURpDejYAe0DIIZFVD/C3+1Gkihq+96SHC4srPBQdfHvppBPyAUjZk7+6pezbylwU0yq/eTSUQqzkdmRJKxjXBwFeJo6oGFz0bO6s5i/WjElNG57nmQFN0QKryPbQ8TNqGTCXJ5mI2K4xdlLy1wRGxn1fVezgIGaoZT9fczZEA0v9w7Fl66+WM8/i2hmf+NPIgR70+LIL3DUW9ech5FZodExrKORBIDzgTfXU+aIGAoXHHoC0uOVakBVaORWOMEq0JqM4NXnedLumGUZrGBfsbTOlFo4zsaMyMWzolRfLcztwMjQLKbAur0jOPBi8XT0DPzCJnjlxOlfF8klP3oi9R/vL5+R8AvCJ9WMFl77NFOT7/ii1lv6hEx3Uop1eW43Jw7cheXwmOT6yG42fakrDLN0T5qhmgkbcwVSKhp13aRsTQDZi/oVCengFsYgk845TfMBZ9LyqzDLabts9ZzVR2RwdxW0EOL48FxDnE3nl+p971PbCHGqmQYAnrVM6+CbFumlkINgOko+54bil8A1XtQgmEzXyYyPUBraVfNkw9kaSreai+NPWRlh5J2Glm4dQ92LbAzUX6dO5016WD75agPaCsiNAdqN+NGpdjml1LVIu56lOVcuP8ynY+L X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 3b67d20f-e3c2-4dd7-3e89-08db79658b46 X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Jun 2023 12:28:44.2976 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: p2Y6hOvHp9/793fYGoSv0QpgmLTH97zbvAbokZEwTx9ADem4WEUZdeyNn5jl3l9N+LYzWPwSByoAxuh0yrwnG6G4Ndk6vXQ19mpU1l8rDL8= X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN8PR03MB5138 On 29/06/2023 1:17 pm, Alejandro Vallejo wrote: > diff --git a/xen/arch/x86/cpu/intel.c b/xen/arch/x86/cpu/intel.c > index 168cd58f36..b2443b6831 100644 > --- a/xen/arch/x86/cpu/intel.c > +++ b/xen/arch/x86/cpu/intel.c > @@ -304,24 +304,20 @@ static void cf_check early_init_intel(struct cpuinfo_x86 *c) > if (c->x86 == 15 && c->x86_cache_alignment == 64) > c->x86_cache_alignment = 128; > > + if (bootsym(trampoline_misc_enable_off) & > + MSR_IA32_MISC_ENABLE_XD_DISABLE) > + printk(KERN_INFO > + "re-enabled NX (Execute Disable) protection\n"); One other thing, which I'll also fix on commit. This now prints per CPU on any system where we had to set XD_DISABLE.  It want's a c == &boot_cpu_data to limit it to once-only. ~Andrew From xen-devel-bounces@lists.xenproject.org Fri Jun 30 12:45:25 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 30 Jun 2023 12:45:25 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557469.870815 (Exim 4.92) (envelope-from ) id 1qFDUw-0000zk-Qg; Fri, 30 Jun 2023 12:45:14 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557469.870815; Fri, 30 Jun 2023 12:45:14 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFDUw-0000zd-NO; Fri, 30 Jun 2023 12:45:14 +0000 Received: by outflank-mailman (input) for mailman id 557469; Fri, 30 Jun 2023 12:45:14 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFDUw-0000zX-9U for xen-devel@lists.xenproject.org; Fri, 30 Jun 2023 12:45:14 +0000 Received: from mail-lj1-x22f.google.com (mail-lj1-x22f.google.com [2a00:1450:4864:20::22f]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id f377f3d7-1743-11ee-8611-37d641c3527e; Fri, 30 Jun 2023 14:45:11 +0200 (CEST) Received: by mail-lj1-x22f.google.com with SMTP id 38308e7fff4ca-2b6b98ac328so28620101fa.0 for ; Fri, 30 Jun 2023 05:45:11 -0700 (PDT) Received: from georged-x-u.eng.citrite.net ([185.25.67.249]) by smtp.gmail.com with ESMTPSA id a15-20020aa7d90f000000b0051bc5adc942sm6764228edr.47.2023.06.30.05.45.09 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 30 Jun 2023 05:45:09 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: f377f3d7-1743-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cloud.com; s=cloud; t=1688129110; x=1690721110; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=9ssIMFi+Cwpk5ibnAzvwYrHw8OEVfsjlxBGgx0vOlb8=; b=UOmV4OJx98s+khNJeQuSZU5GFGU3UZH3AQVF86bfzvDBaKrB64Z8jSr/epXr9YzqvD jLY5Opi7N7pLLMv145uSGic4hNEScADHd/D3759jPzSqdG5sUQJgjhMpcbYkjedfXXvU P7dc90J7ffuZjW79nOFC7+EVqWE/d7ZYIEhB4= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1688129110; x=1690721110; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=9ssIMFi+Cwpk5ibnAzvwYrHw8OEVfsjlxBGgx0vOlb8=; b=WDM0+pG+TeX/UQl0Gz0vZ8TINhvf4LS+Q41F9PMrnljEB3CRJo/JINP5Cu4Kh4ryk8 GgZhe0S+/B9Pja4MfuSPp7wTNf1G396cIBMhaiY1WtJ4rPGpqb02qinU8W2q4K+xfWg1 JqTtx+rwVN5FdZJylIm/VrY19i6X01dl/8iawpdosQ3pwZN3mnHwNn7RVr0MZFC4CXUl 2HbUiGSDAx3UAP5AydYfwiolbAFg5Ms2bl77MHeS2/V0ehuRkOoPuoPPYLsCkvXyzUtp 4fqgbRwa1MOi/7efdfRCeP/ootrWbl1Us/N8PnsdhYLib5izgf0C4Fl0Ji7Lhg1/D3IP 35kw== X-Gm-Message-State: ABy/qLZISNtbHHUf/lWYGcic2yfvoTaN+tpFo0GFQHaN3peE84gvQDbh f6cteFYXqc2gqzdcPT3nhv9vK8L6R5Sk08vB6lE= X-Google-Smtp-Source: APBJJlHGEAJDIMIF6bmp51y1IWmMoXXdWj8/b8meKg2q6fHe0OqTjsDzjFl/V5AbZpqdnIg1xmfLhg== X-Received: by 2002:a05:651c:1030:b0:2b6:cb55:72bc with SMTP id w16-20020a05651c103000b002b6cb5572bcmr2064080ljm.1.1688129110341; Fri, 30 Jun 2023 05:45:10 -0700 (PDT) From: George Dunlap To: xen-devel@lists.xenproject.org Cc: George Dunlap , Andrew Cooper , Jan Beulich , Roger Pau Monne , Stefano Stabellini , Julien Grall Subject: [PATCH] {x86,arm}/mm.c: Make populate_pt_range __init Date: Fri, 30 Jun 2023 13:45:09 +0100 Message-Id: <20230630124509.730368-1-george.dunlap@cloud.com> X-Mailer: git-send-email 2.25.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit From: George Dunlap It's only called from another __init function. Signed-off-by: George Dunlap --- This is a random patch I found in a branch named "xsa345-post". CC: Andrew Cooper CC: Jan Beulich CC: Roger Pau Monne CC: Stefano Stabellini CC: Julien Grall --- xen/arch/arm/mm.c | 2 +- xen/arch/x86/mm.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/xen/arch/arm/mm.c b/xen/arch/arm/mm.c index 0a3e1f3b64..9b14ae3a5d 100644 --- a/xen/arch/arm/mm.c +++ b/xen/arch/arm/mm.c @@ -1218,7 +1218,7 @@ int map_pages_to_xen(unsigned long virt, return xen_pt_update(virt, mfn, nr_mfns, flags); } -int populate_pt_range(unsigned long virt, unsigned long nr_mfns) +int __init populate_pt_range(unsigned long virt, unsigned long nr_mfns) { return xen_pt_update(virt, INVALID_MFN, nr_mfns, _PAGE_POPULATE); } diff --git a/xen/arch/x86/mm.c b/xen/arch/x86/mm.c index 9741d28cbc..be2b10a391 100644 --- a/xen/arch/x86/mm.c +++ b/xen/arch/x86/mm.c @@ -5574,7 +5574,7 @@ int map_pages_to_xen( return rc; } -int populate_pt_range(unsigned long virt, unsigned long nr_mfns) +int __init populate_pt_range(unsigned long virt, unsigned long nr_mfns) { return map_pages_to_xen(virt, INVALID_MFN, nr_mfns, MAP_SMALL_PAGES); } -- 2.25.1 From xen-devel-bounces@lists.xenproject.org Fri Jun 30 12:57:24 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 30 Jun 2023 12:57:24 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557473.870826 (Exim 4.92) (envelope-from ) id 1qFDgc-0002bM-T3; Fri, 30 Jun 2023 12:57:18 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557473.870826; Fri, 30 Jun 2023 12:57:18 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFDgc-0002bF-Pp; Fri, 30 Jun 2023 12:57:18 +0000 Received: by outflank-mailman (input) for mailman id 557473; Fri, 30 Jun 2023 12:57:17 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFDgb-0002b9-Q4 for xen-devel@lists.xenproject.org; Fri, 30 Jun 2023 12:57:17 +0000 Received: from esa6.hc3370-68.iphmx.com (esa6.hc3370-68.iphmx.com [216.71.155.175]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id a1e79bc5-1745-11ee-8611-37d641c3527e; Fri, 30 Jun 2023 14:57:14 +0200 (CEST) Received: from mail-mw2nam12lp2040.outbound.protection.outlook.com (HELO NAM12-MW2-obe.outbound.protection.outlook.com) ([104.47.66.40]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 30 Jun 2023 08:57:12 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by MW5PR03MB6984.namprd03.prod.outlook.com (2603:10b6:303:1cb::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.19; Fri, 30 Jun 2023 12:57:08 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606%4]) with mapi id 15.20.6544.019; Fri, 30 Jun 2023 12:57:08 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: a1e79bc5-1745-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1688129835; h=message-id:date:from:subject:to:cc:references: in-reply-to:content-transfer-encoding:mime-version; bh=OvQyzouAcbWCbWPG8rr54QMvT9WvRRMyZsc98WjFizI=; b=VEkwp5g0RhdE+LmxlMncSPEQcwC3NWbYmnxIGdf9bLMkKJuLrqoacArj 6qVw3gTbz5WlPsTPzdAxgcQ1ESRJId7SKb6n0Uh9w+uXm9b510o3pg2c4 x1BVxzosNAyf+etMFyBr+31kAKAoVVww2C3gb+n/KmQIiWpMMXYl7idCz E=; X-IronPort-RemoteIP: 104.47.66.40 X-IronPort-MID: 114049141 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:gupfTKs2/XnpNMCmfspKfG4Sv+fnVI9fMUV32f8akzHdYApBsoF/q tZmKTiHPPiPamLwL90iboSwp00AupKAx9NgTwc5qy09Fygb+JbJXdiXEBz9bniYRiHhoOCLz O1FM4Wdc5pkJpP4jk3wWlQ0hSAkjclkfpKlVKiffHg3HVQ+IMsYoUoLs/YjhYJ1isSODQqIu Nfjy+XSI1bg0DNvWo4uw/vrRChH4rKq4Vv0gnRkPaoQ5AGFzyFMZH4iDfrZw0XQE9E88tGSH 44v/JnhlkvF8hEkDM+Sk7qTWiXmlZaLYGBiIlIPM0STqkAqSh4ai87XB9JFAatjsB2bnsgZ9 Tl4ncfYpTHFnEH7sL91vxFwS0mSNEDdkVPNCSDXXce7lyUqf5ZwqhnH4Y5f0YAwo45K7W9yG fMwARIEajmCgrqNzOipeLc2u9kcHsbpBdZK0p1g5Wmx4fcOZ7nmGv+PwOACmTA6i4ZJAOrUY NcfZXx3dhPcbhZTO1ARTpUjgOOvgXq5eDpdwL6XjfNvvy6Pk0ovjv6xaLI5efTTLSlRtm+eq njL4CLSBRYCOcbE4TGE7mitlqnEmiaTtIc6TeTkrqI72QHKroAVIA0zVkCymNq9s2uBCsgPA WIawiUr6qdnoSRHSfG4BXVUukWssRMbQdVdVeEn7gWE0oLf5wGECi4PSTspQMwrsoo6SCIn0 neNnsj1Hnp/vbuNU3Wf+7yI6zSoNkA9L2UPeCsFRgst+MT4rcc4iRenZs14DKe/g9nxGDfx6 zOHti4zg/MUl8Fj/6em+VHKhRq8q56PSRQ6jjg7RUqg5wJ9IYu6PYqh7AGB6e4adNrBCF6co HIDhs6SqvgUCo2AnzCMR+NLG6y14/GCM3vXhlsH84QdyglBMkWLJeh4iAyS7m8wWirYUVcFu HPuhD4= IronPort-HdrOrdr: A9a23:D/oJU6Og7uaADcBcTtCjsMiBIKoaSvp037BL7S1MoHluGaalfq +V7ZcmPGDP+VQssR0b9+xoW5PtfZq/z/5ICOAqVN+ftWLd11dAQrsC0WLq+UyEJxHD X-Talos-CUID: =?us-ascii?q?9a23=3AulQASGmkTPI8ckMdtkZ4hsfEuynXOVT/xXP5Ikr?= =?us-ascii?q?gMmozWo/LE2KNx5FrkfM7zg=3D=3D?= X-Talos-MUID: =?us-ascii?q?9a23=3AiWzvZw8sxfwRZrTnRxcCheWQf9dN4L+nMWMJqLA?= =?us-ascii?q?56tPUHwJ+AziYyzviFw=3D=3D?= X-IronPort-AV: E=Sophos;i="6.01,170,1684814400"; d="scan'208";a="114049141" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=AzuDzJxqitlVwOqncwDrnB63WmpS8YZi9iZyygoTGyCdas+/CntUttWVLgvsidvWaSTv26bbj5i6btp5XmhBH66k9YmUVv3hTiD6/YMWHG9gSmsIHUbwMpZUXDhOL0uHAYrhfuCgHFePuaQ4aXji6iXGsPszEJZukLMHKdOG4B05WzQNGONz7T3SAWY62UAmtV9pEmDNtM163YSl2Q7CbKvovdfeQGjLQozVvQ19sG+oWoKFcWpRbRaI2M3LiqMV/oH8UiG4ma8FKsrn1cahuUvHvbbS+zttpULeU6Fl/r69Bw3RWwWfFUhXgjH2MBXEeYKNow+BPq/iNT3F2xom2Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=OvQyzouAcbWCbWPG8rr54QMvT9WvRRMyZsc98WjFizI=; b=IKXDplO9waZhRZ0c+zhtGOUK1pG/EeVOc1VMm8raCPH0/iVLqzbEDDHWhd1lUOrrhV0HKSlq++P1JYP4B68D/Qautihv/FQeGl/NVux40ZINftWnxaEvTTebyeNNSBktSCD1u11DM9GtV/L434or7f/3jzVQ0PU1Q9wvW5psjWIPpZVqd/FB2m3V6HF56xGbmWDTmOTmJTyuBGhx/R04DJ9pChm/KoDlHJhw+gwdh5WiTy3EtX6PHp9ANnDXPr3CY/JMiUokj312N0oqyiI3DR+dvAn8Rke+btfEnSc+3UtVUl6lgK6vAk+dE0BfRwpjpWCLpMe9qZoVXo183ezdQQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=OvQyzouAcbWCbWPG8rr54QMvT9WvRRMyZsc98WjFizI=; b=YH7hJOH2Ue26iPKNs7mkO6eiVaR3+PsHMr4L5QqLPXuAI/AxXFbOhMHmzLyZySRiA7f/s5gsxRfwUr7w8j8x7KvxMNvsfMI2NEBBz5aFeWkRmGevSI8leJRtL+mkRaTosGy0c9wd+yNKzYiAmiEKR+k7raKIpCiZJ6B55teWJfY= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: <35b638ae-782e-f0e0-3962-2936f617b9e4@citrix.com> Date: Fri, 30 Jun 2023 13:57:00 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 From: Andrew Cooper Subject: Re: [PATCH] {x86,arm}/mm.c: Make populate_pt_range __init Content-Language: en-GB To: George Dunlap , xen-devel@lists.xenproject.org Cc: George Dunlap , Jan Beulich , Roger Pau Monne , Stefano Stabellini , Julien Grall References: <20230630124509.730368-1-george.dunlap@cloud.com> In-Reply-To: <20230630124509.730368-1-george.dunlap@cloud.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: LO4P123CA0081.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:190::14) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|MW5PR03MB6984:EE_ X-MS-Office365-Filtering-Correlation-Id: 061885d6-2f05-4af8-1ce9-08db796982e2 X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: McCOxKYNrETl/fElnAK0kxxIpMfGrrjXyksnjmAjguCErImQ8ZPLM1lYJTypt9+ePk4lexUvXXFtVVTPL53K2Ogb4gyQ0QpSxQmS9elpP9pnwX6+Sgkw5oVjoeIJCeQCaEbk7P7QRJYyekBDwcgh65fy5LspyyUDWkYWCc/ws29HgNvKo7nfO7BMTu0jYct8EXVozqOCMSNsNWgSfnq3sYgx+EkmhYX7kx87FArvjrHP7PaiGDdEfzHUKLZHo0eUokPEoMwH4Xr34auYBtMLOew3L5c/JMmpnCtdgTTd6SuGxcSIUf17wsyIx3bhwQE+Wpdrhkk0aYFgaxgjePOi0O8NrtMEV24Qp3bkT4jJyckwuGmrscJwI2WSrsKkuXsxAdDv+q9MnMdAnt7AEZkF26tsWxgqDuB4nULDTdkbYXt/7vnFbZGNY74wlcofv539gtIOjTWJh1TV9ap+jJ4jIN7Rzf+t+n95aF44c6sP1LxceKWbWjgZ/dcU0ZmShMen7JiO9iboHMx+cPvdCHnDiOAaDXTP2vvAuQZNR0Mm1TGMeABgwOVNdRnHPUqEInCUbe2iiun0uzQD04MGtbVvDoHeO8lNFdxe0ru+bmEPi1iyIv399GaM9eP0nYxq7OC8p5phCifdEyK98eqEzwajVg== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(376002)(396003)(366004)(136003)(39860400002)(346002)(451199021)(31686004)(86362001)(54906003)(8936002)(8676002)(5660300002)(31696002)(26005)(6506007)(53546011)(6486002)(478600001)(66946007)(66556008)(66476007)(4326008)(6512007)(41300700001)(316002)(6666004)(186003)(2616005)(2906002)(4744005)(36756003)(82960400001)(38100700002)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?QTR5dmx3S25iNlVKK2V6YllpbE45OEthSXRCL2JLZi9JUzVZM1UwdURENlJj?= =?utf-8?B?RmhQS0VQR0pNcTFDMUhhTGg2M2FVQ3d2RE5yWlFFbjUvNWcrV1QzZ2ZUTThW?= =?utf-8?B?RFpJU3gxb1cxdGlpUHRKVTRudVUxVHJmcDBPcWFBZmRpcHVoVHdzVnpWbDZB?= =?utf-8?B?MkJlSTVXdUxleVZBYjcrMHAzM0NDMkNzQkZKc1h5d2FlMUxjOGY4c09lSDNU?= =?utf-8?B?QVpScVJMT3ovOU5oS043VmUwQVpHRHNvWkhFOFBZZnAzeVRNQUF6ZUZvWkpx?= =?utf-8?B?bWk2Wkt2dDFkcjZJUmJyVDVhL3o1K1hjTU5nNVJNdjhjNmF1MVprNnJyVnlF?= =?utf-8?B?MjVCV3NHb3NWTUJ3K3RabGgxZFhyOWRqM3VIdU5oUTNjUFA3RzZhL0dDdDlt?= =?utf-8?B?Z1MvVkJKM2tsVHRxUWlYcGtVVmNnc1MwaGN6NWkxVFdXUEZFN2RRNHZTdVdU?= =?utf-8?B?UDZqZWo1b1o3b1FmR3NvMTBKeko3Vk5TZGJUZW9qc01oRGNVOFkyYmRxZWpG?= =?utf-8?B?YjhPL0p6OFc1RndGWHZqNUVXS3Fqc3BSbmNPNURuZ3Q4UzFaTW9TSlp5bG14?= =?utf-8?B?alpCek5XNld3bVhCaEdrSGQvWEFaWExIOTN3WXA4V3BGWVJibVZHR3BFeno2?= =?utf-8?B?azJ4OERxZ3FyMkFNM0xMWTkxTWcxWmM4TU01U1VTWE15TzVuOGhvQVRvVHBI?= =?utf-8?B?S1hVWWNpa0tQREpvMXN2cE9jcE4yU0MrVWh5QkNtLzVtbm5Ga0ZzYTNtd1pX?= =?utf-8?B?QnFwd3dVVUhRd09qYm1FYlpCcW1hZEtzcFZWTERmU3F2L1RERTY3ZGZVY2d6?= =?utf-8?B?eTdnTWpqT2VMa3lLcFFrRjdrWmgybEtNZGRDYUFacmpJd3NtdWJzSkkwTVFj?= =?utf-8?B?RGR2aWdFOE83TGZRRWRZdEdvem1FdEE5WHNSZldQaldkYXZXZmFGaEJkUTUy?= =?utf-8?B?UnZESjVHTDcxNmpBZmRlTXpvR0pRcXdzcjJpa2VFd0dEczVnRHlMdjk0aFNI?= =?utf-8?B?S2pKbjBkRFczVG15c1NDMW9tNXhCaS9BU2pjT1RYaTFyVlJuYmJPYUhTbUcw?= =?utf-8?B?UHBrRWNQYlQ5UWlkYU9EWi9SdXVaUW94enBpcHJRQ2NpOThRKzFsU24zTGlP?= =?utf-8?B?SUVZbHU3dWcxaFEvS1htSHdxTVVjMVhOTWRocnE5SGQ2TzhXT3lPKzEvVWx1?= =?utf-8?B?T2dKb2tYWEMxS3c1YmhMWlFUNWNLVlBVaVpnbHhnbGxiVnNXSkhTRHZOOWd3?= =?utf-8?B?cHpQL0kyeDlZOTV5UFVaQVRqdHZTRk9VcUQ5TndvclFkaEhCaW15MHdPaURP?= =?utf-8?B?RmpSYVFtSFExSWp6RFhzNzV6RmFOU3RBWW5aWGxVNERCcFhld1hTTVFvcFdu?= =?utf-8?B?N0xHWU1qejdabGVabGp6dkFaK21aSGdlRlFXNEppcE5nRjRLUU9idkJJbUVR?= =?utf-8?B?Q3lqaVkwRnFqODluVjgwNEVhWG9xcng5QklrUjdJRTlsN3J0aC9FRkdWRlh6?= =?utf-8?B?YStncmJzTTRZbDY4dXdmRGNVYk5uejhiTzdyWEtJT0J6bVdNNC9vK1dadld4?= =?utf-8?B?ZTdCRHRJUmhtc2puSUxHQ3dNQ2NyZ3RiVDFLNFBhUkd0L1RmQnkyTjV3L0p3?= =?utf-8?B?WDRxUklLQjl0bUNMNlcvd0pZN3hlLzNGK1pEYXVWL2lLZk9peTlNcll6aW9S?= =?utf-8?B?VmNTZ3ZkeXUzcWg2U2NmZ2hsS1E4YWJPbGtON0VSYWhjdCtmRzhNbnMzK1d1?= =?utf-8?B?VEZPNS93d21NRkkrNTk3b3dnSFZuczN4Q1h1OHR4dVFtNFd1WVMvREp3c0ti?= =?utf-8?B?UkxjNWR4aTBxNE41bnBsdjB4ditSUUJEYWcxOTZlMXRtK2ZSNGJZck51aGp4?= =?utf-8?B?U0NXTkJrUHpaUnY0RWZ2bzBjZ0p6YkJWRjFIVko1bjZ4MGd2WXlzbENvQ2Vl?= =?utf-8?B?U0RmcStXcTRIWkVXMHo0Rlp3WlhhTXhSTUlZN241eFg0NVhIeUJjZkl4WmxW?= =?utf-8?B?dHhKVkdFQ3czK3FKQ0dzNXp5d0RKbndiUE9Qa3Z2UFlBVnQ5MWJQTEZBSzV1?= =?utf-8?B?TUFlSFR3L0NQWTNIZ1lvbldNTGdhb1pMS1hLU0FoSm04Y3JZb2hjaUVYUjQv?= =?utf-8?B?VnJtbWZoSEJZVU1oV0hhZzdkNDhVTE9zMTBZbXo4L0YrRFAwSW5CblBHNm9r?= =?utf-8?B?c2c9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: Z77OQadCiOwQG+Oq3RjBWuHyjVTPLh0zd1pdMzAvSzcFArpHvMqDywLmy9QxhUOyKyRe87vuAQ6TcJVF+JpXJj8KqoKchsuN+nNwc1do88o75Nfgy4huOeodGFRq6Yh5eeGvr6ZHboz3wGqy2Y59M9WYUWIPfN3JpmOB/rO/HCINbM65Hdw9gzW7zOYIzj4nApcTWq9LnMsDWSxKOkgSr+aWjhiXnS7DqMGyrP5azhqeGQk+35398CyMjGeTI6Qhmnb711q9MKgSdMFhOqHnXkBoepFH5cTiT+cpa31/K13rdDWUTK8yXfQ1f91uHz5o4I+FBb/a36desrHSOA6UBOjamFMMeOKCy6oXIyeRdjAngJpv/zcgLcvC5bsXehtNZhWDCDK8/HAbwxPVqFXSRIErRDdixpPGjELofCSYKvsSfVS9hR0SKeCbwu8K8NtAlh3yUd1e8ZvtFQfKBUpCe5/0BYwtHHN3ivUiI+EOJpL7wUVKu58MqXjHfSjZ/jjmmg4axO21wNVGOD7mrxW8SA/6SE24RTBcFUTuAsm0AN1DTdXNa0o/QVeo+6yGJvalSfK+OnvxiRJiSsb2tggCP+w55PAuv36GOrHfU3eg9fkV4b6++qb05gft8PO2oHBqrVHQC66yBTZvY3BvGbnpQuPQyXPL2F7tJ6P1hoENDyaCgZvkODAYyAEKbilIh3EWRAUEZgPd6JMWqBwG3VQEekjY8d7qQdKkv8Chcxrghr3kO73oljC+4RfyKJR6YZhLvEULsjPOe7XWJbGAI4KdbtK7A3J/2b1GOhxFNzDblJD22GvUKSsEr4bBZRftZ7es4D9Mem8i69bLB+apAXwAEjeHq+J5HPqf89gZL9maLfZ6HCVAaZseQlfWl98D0cjc X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 061885d6-2f05-4af8-1ce9-08db796982e2 X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Jun 2023 12:57:08.1081 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 7C3UDSDVJ6qXC6jS4XRHtpyJmpVm7uEgI3uSnzVmQOdcohzs5nikCgmhn0wmRCTFCuxxazx5X3gj8vbNdLBXCTyiz3C+loJCXcteeJie7bc= X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW5PR03MB6984 On 30/06/2023 1:45 pm, George Dunlap wrote: > From: George Dunlap > > It's only called from another __init function. > > Signed-off-by: George Dunlap > --- > This is a random patch I found in a branch named "xsa345-post". I have far too many branches like that... Acked-by: Andrew Cooper From xen-devel-bounces@lists.xenproject.org Fri Jun 30 13:03:31 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 30 Jun 2023 13:03:31 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557480.870836 (Exim 4.92) (envelope-from ) id 1qFDmT-0004BA-Je; Fri, 30 Jun 2023 13:03:21 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557480.870836; Fri, 30 Jun 2023 13:03:21 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFDmT-0004B3-Gb; Fri, 30 Jun 2023 13:03:21 +0000 Received: by outflank-mailman (input) for mailman id 557480; Fri, 30 Jun 2023 13:03:20 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFDmS-0004Ar-5p for xen-devel@lists.xenproject.org; Fri, 30 Jun 2023 13:03:20 +0000 Received: from EUR03-AM7-obe.outbound.protection.outlook.com (mail-am7eur03on20629.outbound.protection.outlook.com [2a01:111:f400:7eaf::629]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 79f3304d-1746-11ee-8611-37d641c3527e; Fri, 30 Jun 2023 15:03:16 +0200 (CEST) Received: from AS8PR07CA0026.eurprd07.prod.outlook.com (2603:10a6:20b:451::35) by AS2PR08MB10082.eurprd08.prod.outlook.com (2603:10a6:20b:62f::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.19; Fri, 30 Jun 2023 13:03:05 +0000 Received: from AM7EUR03FT053.eop-EUR03.prod.protection.outlook.com (2603:10a6:20b:451:cafe::bc) by AS8PR07CA0026.outlook.office365.com (2603:10a6:20b:451::35) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6565.10 via Frontend Transport; Fri, 30 Jun 2023 13:03:05 +0000 Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by AM7EUR03FT053.mail.protection.outlook.com (100.127.140.202) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.22 via Frontend Transport; Fri, 30 Jun 2023 13:03:04 +0000 Received: ("Tessian outbound b11b8bb4dfe8:v142"); Fri, 30 Jun 2023 13:03:04 +0000 Received: from b99cba4c4eae.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id F181D9F3-4E76-4847-95F3-F02D250F1E4F.1; Fri, 30 Jun 2023 13:02:57 +0000 Received: from EUR03-AM7-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id b99cba4c4eae.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Fri, 30 Jun 2023 13:02:57 +0000 Received: from PAXPR08MB7154.eurprd08.prod.outlook.com (2603:10a6:102:207::17) by DU0PR08MB8346.eurprd08.prod.outlook.com (2603:10a6:10:40a::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.24; Fri, 30 Jun 2023 13:02:54 +0000 Received: from PAXPR08MB7154.eurprd08.prod.outlook.com ([fe80::cc5c:8572:5323:11ed]) by PAXPR08MB7154.eurprd08.prod.outlook.com ([fe80::cc5c:8572:5323:11ed%3]) with mapi id 15.20.6521.026; Fri, 30 Jun 2023 13:02:54 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 79f3304d-1746-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=fqJAx2BPfBEJD6SvNK4oobkVPaJXT7YGMmK/A5Njl+w=; b=Nf1K9pCU7CPBs1XlE16mSdJdYR0Ks4JtRGn5ETkkUyPO0EskDyS7/do2jQI4oyRj/HbSzPrGE8WS1qTKxtimJhJe0ZDjQ+L5x8KNGqO4f51FYBSb3n9oEPKUs9hwsaD0rT885rm+sg1dzivZFrL33fRY63HWJr1IZajH1PBGmNU= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C X-CheckRecipientChecked: true X-CR-MTA-CID: a3c79a00d6d3fc06 X-CR-MTA-TID: 64aa7808 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=S8hk78AR9XhAmm4pSBamxYSUoJKQ1wrKpvG1f9AuJgFAV4+7gkA3DJtJIOIwlKHSXhJVWx2HbKeRtmpgDHdTwyOnoNeoDojruE5Ooa2ErLol4Q1bAVwXCsjvUIofqi/RoY5vBujpQGcXnF6cnqdV9yAIuBRm6l9VY6WZ+0iYfr/WuSuuEuXNDGcn9jFKTVIyTcLDwSWjVLHTv/5ijgW2q00swIfDLxsSbNYrYPCvuUCrgp0QD0dUJYj0QSY4c+NhpAedlSYzsikX4gLj+/rr/12YZncDHK4I+D7hl82ozP4ZytwakO4gmkwYytbD4onxJmGm0VxyrK5Pn4aWbaU4XQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=fqJAx2BPfBEJD6SvNK4oobkVPaJXT7YGMmK/A5Njl+w=; b=i3cL0S3GNV9YTG7PXG3ZruEwPZsNVs6svCc/oC+vHk5u27xsGTgZ88mKRkLJMJ/lmV9jCtd7O3hVE5U9KaBsamDRInOs2fag11ueENsQsBSDPXveH9grU3FP8wX5uzU2bVG+gWbKrBuFfW5AX3QDJKre9ml/bt1rgnfBShESAuxWwPaZbSHK47HEViQylvsbig95gt/ncgRnbRV1vWI9teb3W7QdnOsM2SDMvglGo2difG9HLfPnE2/w3EWSumPt+I4gJb5pED1aMlCnX+PlLmVAibdx7ln4kTik9lCJXUTB+Htsfmpd3ciEBsjfdSHIirzQO2BALV96gbb+v3NHOQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=fqJAx2BPfBEJD6SvNK4oobkVPaJXT7YGMmK/A5Njl+w=; b=Nf1K9pCU7CPBs1XlE16mSdJdYR0Ks4JtRGn5ETkkUyPO0EskDyS7/do2jQI4oyRj/HbSzPrGE8WS1qTKxtimJhJe0ZDjQ+L5x8KNGqO4f51FYBSb3n9oEPKUs9hwsaD0rT885rm+sg1dzivZFrL33fRY63HWJr1IZajH1PBGmNU= From: Rahul Singh To: Oleksandr Tyshchenko CC: Juergen Gross , Stefano Stabellini , "linux-kernel@vger.kernel.org" , Samuel Holland , David Woodhouse , Jane Malalane , "xen-devel@lists.xenproject.org" Subject: Re: [PATCH v2] xen/evtchn: Introduce new IOCTL to bind static evtchn Thread-Topic: [PATCH v2] xen/evtchn: Introduce new IOCTL to bind static evtchn Thread-Index: AQHZqqDrFlYPmniBzkyAFz9id20VH6+iE7EAgAE9TgA= Date: Fri, 30 Jun 2023 13:02:53 +0000 Message-ID: <156827AA-3DFB-4DA2-BC82-7A27E77C2092@arm.com> References: <764d561e3aecb7e63e8601dc50aaef9fc40834e4.1688051342.git.rahul.singh@arm.com> <90c961d4-9d10-6fbc-b5f7-84d231264289@epam.com> In-Reply-To: <90c961d4-9d10-6fbc-b5f7-84d231264289@epam.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-traffictypediagnostic: PAXPR08MB7154:EE_|DU0PR08MB8346:EE_|AM7EUR03FT053:EE_|AS2PR08MB10082:EE_ X-MS-Office365-Filtering-Correlation-Id: 41650cb2-0827-49ce-6477-08db796a57ba x-checkrecipientrouted: true nodisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: cMC2QjwlC+ezXUByUNuFThw5UQJVxGBAtuKtQn3ILSFZiazaehztSfASG8YzcgwkuwvZGLv8KhWs/Pscow1HY+8r6Kjw2z/N42t6HiiN4BzSlwemsK8/IbU/vPIxS9xJfgL9jA3/hvfTNey0hbLUD8xza+YFuWfPOJgMoeN1Z1kx1TpDmGsdCfgQg+1thsqVzQU2YdXOxUO8skdZKceYBScUxzEDwnkcwBceLLdKjcL9gM4eyyPX0StnclBriH3c2esvXKWDaYCbGL2QWRxWBqAZbHlCO/j+hUlDhkNZnZnLMZqBPEAUyuxf3tEUuwS8UMohhvoy7kjsu5MrT+YcZr3/bwMxlXsvqm47rzGv5eQvu/C7Brpk3KKJ9ZEWiWrGid/qAWzpxOIYnn6os9xlqiUtiZoiBOwRMQKj7mqJn5n0Mkw9k0LRDzDaP3taXZ2fwpzEo3d4MaAOV7S7pLv7ZRxaKKlnaIeONrcuzLCaALmK0DAqh7Csq52S8Li2gWMfmrQ8cWoHXGri4kF6REKu6t6ppzUToyGFS+jf+8Zvkfr+twfzeaLAsLUs4VSHYxbSgOPUMRmOBKj0oUy4woG14SkDyxhlLcF5J753BggKQTgxhheNcczaWgPJ6h7+dkwDNrgXL/6Gvkq/qB1ntGsn4Q== X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:PAXPR08MB7154.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(396003)(136003)(376002)(366004)(346002)(451199021)(5660300002)(91956017)(66946007)(76116006)(66556008)(66446008)(4326008)(33656002)(64756008)(66476007)(6916009)(478600001)(316002)(36756003)(8936002)(8676002)(2906002)(6512007)(26005)(54906003)(38070700005)(41300700001)(6486002)(71200400001)(186003)(53546011)(6506007)(122000001)(86362001)(38100700002)(83380400001)(2616005)(45980500001);DIR:OUT;SFP:1101; Content-Type: text/plain; charset="utf-8" Content-ID: Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU0PR08MB8346 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: AM7EUR03FT053.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: f8174a25-d247-41a7-37bd-08db796a5134 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 5SMoxcDJjIA+tagsC9mTOvt9ANM8oQbsOH973r41NcgFs5Bd0/2iifu0hEigXwvSIady28rNsKTETtN6BUiDQmP9WgjeEnJbXlpE7kpgzBzhzAxPutX85XrqJSPyVTwQbH8uz8SlOlUqVbn675kXAgy3xXfPo1k5vy0T9i20nR626iH0tjmal4uE+ooStPx02H1ZK0CJEOP5uPZ0Lqq4pk6+CnzQxy+P3TNUOoLulq8vAeLNy9AXlGKCKK0KnbXaCaBF9hD53GirtrLs8s4po8TwlxG4xnRrWEqz01XWC8R4cPNH0y5ZVNUrt0/EY2VKPe80kQ32KQyjUUB9BcVXVRTVJIE9gez/MU5yXwmFiAQRVVTn5STtJ1UYtKi9YHWv9hIcS6O0rADDJslX16VBOT+zrzw37A166yiiBMqGchLzggFyhw5UIoXzVpTkiySodw8G8onKpMSmlgMhf/dftdFdRYeLQiI/LGNpsJqD/P4j7zYJGIqF5nw9+IPuvUV79m/5WBGxgrHLQOQz7fV7/Q8lIRMvWPNWTXlslMrHgAQ9rMgorqF+xfR3ZgcZ9KwTw12Se+S2zwg6XDqqXF/EmjVYJuAPcbn4nLFbYY6GrW2eLzyr0lG1h2Jl8xzPFw/q+VXguPyVg1nGjKkkeNXsPv2A50Wg/qWOvXxtEmdpsr3qpd1pc80VOmnJPL3dRWIHpvyVJUKe0mPmQCqHQ8tcqDlMJzyO9pP8llgh48/NZJmzi21zPvn/nTMdhFHVVm8L X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230028)(4636009)(396003)(39860400002)(376002)(346002)(136003)(451199021)(46966006)(40470700004)(36840700001)(40460700003)(41300700001)(6512007)(316002)(83380400001)(82310400005)(86362001)(336012)(36860700001)(186003)(6506007)(26005)(2616005)(2906002)(33656002)(53546011)(82740400003)(356005)(81166007)(40480700001)(47076005)(36756003)(5660300002)(6862004)(8676002)(8936002)(478600001)(54906003)(70206006)(70586007)(4326008)(6486002);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Jun 2023 13:03:04.7759 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 41650cb2-0827-49ce-6477-08db796a57ba X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: AM7EUR03FT053.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS2PR08MB10082 SGkgT2xla3NhbmRyLA0KDQpUaGFua3MgZm9yIHJldmlld2luZyB0aGUgY29kZS4NCg0KPiBPbiAy OSBKdW4gMjAyMywgYXQgNzowNiBwbSwgT2xla3NhbmRyIFR5c2hjaGVua28gPG9sZWtzYW5kcl90 eXNoY2hlbmtvQGVwYW0uY29tPiB3cm90ZToNCj4gDQo+IA0KPiANCj4gT24gMjkuMDYuMjMgMTg6 NDYsIFJhaHVsIFNpbmdoIHdyb3RlOg0KPiANCj4gSGVsbG8gUmFodWwNCj4gDQo+IA0KPj4gWGVu IDQuMTcgc3VwcG9ydHMgdGhlIGNyZWF0aW9uIG9mIHN0YXRpYyBldnRjaG5zLiBUbyBhbGxvdyB1 c2VyIHNwYWNlDQo+PiBhcHBsaWNhdGlvbiB0byBiaW5kIHN0YXRpYyBldnRjaG5zIGludHJvZHVj ZSBuZXcgaW9jdGwNCj4+ICJJT0NUTF9FVlRDSE5fQklORF9TVEFUSUMiLiBFeGlzdGluZyBJT0NU TCBkb2luZyBtb3JlIHRoYW4gYmluZGluZw0KPj4gdGhhdOKAmXMgd2h5IHdlIG5lZWQgdG8gaW50 cm9kdWNlIHRoZSBuZXcgSU9DVEwgdG8gb25seSBiaW5kIHRoZSBzdGF0aWMNCj4+IGV2ZW50IGNo YW5uZWxzLg0KPj4gDQo+PiBBbHNvLCBzdGF0aWMgZXZ0Y2hucyB0byBiZSBhdmFpbGFibGUgZm9y IHVzZSBkdXJpbmcgdGhlIGxpZmV0aW1lIG9mIHRoZQ0KPj4gZ3Vlc3QuIFdoZW4gdGhlIGFwcGxp Y2F0aW9uIGV4aXRzLCBfX3VuYmluZF9mcm9tX2lycSgpIGVuZHMgdXAgYmVpbmcNCj4+IGNhbGxl ZCBmcm9tIHJlbGVhc2UoKSBmaWxlIG9wZXJhdGlvbnMgYmVjYXVzZSBvZiB0aGF0IHN0YXRpYyBl dnRjaG5zDQo+PiBhcmUgZ2V0dGluZyBjbG9zZWQuIFRvIGF2b2lkIGNsb3NpbmcgdGhlIHN0YXRp YyBldmVudCBjaGFubmVsLCBhZGQgdGhlDQo+PiBuZXcgYm9vbCB2YXJpYWJsZSAiaXNfc3RhdGlj IiBpbiAic3RydWN0IGlycV9pbmZvIiB0byBtYXJrIHRoZSBldmVudA0KPj4gY2hhbm5lbCBzdGF0 aWMgd2hlbiBjcmVhdGluZyB0aGUgZXZlbnQgY2hhbm5lbCB0byBhdm9pZCBjbG9zaW5nIHRoZQ0K Pj4gc3RhdGljIGV2dGNobi4NCj4+IA0KPj4gU2lnbmVkLW9mZi1ieTogUmFodWwgU2luZ2ggPHJh aHVsLnNpbmdoQGFybS5jb20+DQo+PiAtLS0NCj4+IHYyOg0KPj4gICogVXNlIGJvb2wgaW4gcGxh Y2UgdTggdG8gZGVmaW5lIGlzX3N0YXRpYyB2YXJpYWJsZS4NCj4+ICAqIEF2b2lkIGNsb3Npbmcg dGhlIHN0YXRpYyBldnRjaG5zIGluIGVycm9yIHBhdGguDQo+IA0KPiANCj4gUGF0Y2ggbG9va3Mg Z29vZCB0byBtZSwganVzdCBhIG5pdCAocXVlc3Rpb24pIGJlbG93Lg0KPiANCj4gDQo+PiAtLS0N Cj4+ICBkcml2ZXJzL3hlbi9ldmVudHMvZXZlbnRzX2Jhc2UuYyB8ICA3ICsrKysrLS0NCj4+ICBk cml2ZXJzL3hlbi9ldnRjaG4uYyAgICAgICAgICAgICB8IDMwICsrKysrKysrKysrKysrKysrKysr KystLS0tLS0tLQ0KPj4gIGluY2x1ZGUvdWFwaS94ZW4vZXZ0Y2huLmggICAgICAgIHwgIDkgKysr KysrKysrDQo+PiAgaW5jbHVkZS94ZW4vZXZlbnRzLmggICAgICAgICAgICAgfCAgMiArLQ0KPj4g IDQgZmlsZXMgY2hhbmdlZCwgMzcgaW5zZXJ0aW9ucygrKSwgMTEgZGVsZXRpb25zKC0pDQo+PiAN Cj4+IGRpZmYgLS1naXQgYS9kcml2ZXJzL3hlbi9ldmVudHMvZXZlbnRzX2Jhc2UuYyBiL2RyaXZl cnMveGVuL2V2ZW50cy9ldmVudHNfYmFzZS5jDQo+PiBpbmRleCBjNzcxNWY4YmQ0NTIuLjVkM2I1 YzdjZmU2NCAxMDA2NDQNCj4+IC0tLSBhL2RyaXZlcnMveGVuL2V2ZW50cy9ldmVudHNfYmFzZS5j DQo+PiArKysgYi9kcml2ZXJzL3hlbi9ldmVudHMvZXZlbnRzX2Jhc2UuYw0KPj4gQEAgLTExMiw2 ICsxMTIsNyBAQCBzdHJ1Y3QgaXJxX2luZm8gew0KPj4gICB1bnNpZ25lZCBpbnQgaXJxX2Vwb2No OyAvKiBJZiBlb2lfY3B1IHZhbGlkOiBpcnFfZXBvY2ggb2YgZXZlbnQgKi8NCj4+ICAgdTY0IGVv aV90aW1lOyAgICAgICAgICAgLyogVGltZSBpbiBqaWZmaWVzIHdoZW4gdG8gRU9JLiAqLw0KPj4g ICByYXdfc3BpbmxvY2tfdCBsb2NrOw0KPj4gKyBib29sIGlzX3N0YXRpYzsgICAgICAgICAgIC8q IElzIGV2ZW50IGNoYW5uZWwgc3RhdGljICovDQo+PiANCj4+ICAgdW5pb24gew0KPj4gICB1bnNp Z25lZCBzaG9ydCB2aXJxOw0KPj4gQEAgLTk4Miw3ICs5ODMsOCBAQCBzdGF0aWMgdm9pZCBfX3Vu YmluZF9mcm9tX2lycSh1bnNpZ25lZCBpbnQgaXJxKQ0KPj4gICB1bnNpZ25lZCBpbnQgY3B1ID0g Y3B1X2Zyb21faXJxKGlycSk7DQo+PiAgIHN0cnVjdCB4ZW5idXNfZGV2aWNlICpkZXY7DQo+PiAN Cj4+IC0geGVuX2V2dGNobl9jbG9zZShldnRjaG4pOw0KPj4gKyBpZiAoIWluZm8tPmlzX3N0YXRp YykNCj4+ICsgeGVuX2V2dGNobl9jbG9zZShldnRjaG4pOw0KPj4gDQo+PiAgIHN3aXRjaCAodHlw ZV9mcm9tX2lycShpcnEpKSB7DQo+PiAgIGNhc2UgSVJRVF9WSVJROg0KPj4gQEAgLTE1NzQsNyAr MTU3Niw3IEBAIGludCB4ZW5fc2V0X2lycV9wcmlvcml0eSh1bnNpZ25lZCBpcnEsIHVuc2lnbmVk IHByaW9yaXR5KQ0KPj4gIH0NCj4+ICBFWFBPUlRfU1lNQk9MX0dQTCh4ZW5fc2V0X2lycV9wcmlv cml0eSk7DQo+PiANCj4+IC1pbnQgZXZ0Y2huX21ha2VfcmVmY291bnRlZChldnRjaG5fcG9ydF90 IGV2dGNobikNCj4+ICtpbnQgZXZ0Y2huX21ha2VfcmVmY291bnRlZChldnRjaG5fcG9ydF90IGV2 dGNobiwgYm9vbCBpc19zdGF0aWMpDQo+PiAgew0KPj4gICBpbnQgaXJxID0gZ2V0X2V2dGNobl90 b19pcnEoZXZ0Y2huKTsNCj4+ICAgc3RydWN0IGlycV9pbmZvICppbmZvOw0KPj4gQEAgLTE1OTAs NiArMTU5Miw3IEBAIGludCBldnRjaG5fbWFrZV9yZWZjb3VudGVkKGV2dGNobl9wb3J0X3QgZXZ0 Y2huKQ0KPj4gICBXQVJOX09OKGluZm8tPnJlZmNudCAhPSAtMSk7DQo+PiANCj4+ICAgaW5mby0+ cmVmY250ID0gMTsNCj4+ICsgaW5mby0+aXNfc3RhdGljID0gaXNfc3RhdGljOw0KPj4gDQo+PiAg IHJldHVybiAwOw0KPj4gIH0NCj4+IGRpZmYgLS1naXQgYS9kcml2ZXJzL3hlbi9ldnRjaG4uYyBi L2RyaXZlcnMveGVuL2V2dGNobi5jDQo+PiBpbmRleCBjOTk0MTVhNzAwNTEuLmU2ZDIzMDM0Nzhi MiAxMDA2NDQNCj4+IC0tLSBhL2RyaXZlcnMveGVuL2V2dGNobi5jDQo+PiArKysgYi9kcml2ZXJz L3hlbi9ldnRjaG4uYw0KPj4gQEAgLTM2Niw3ICszNjYsOCBAQCBzdGF0aWMgaW50IGV2dGNobl9y ZXNpemVfcmluZyhzdHJ1Y3QgcGVyX3VzZXJfZGF0YSAqdSkNCj4+ICAgcmV0dXJuIDA7DQo+PiAg fQ0KPj4gDQo+PiAtc3RhdGljIGludCBldnRjaG5fYmluZF90b191c2VyKHN0cnVjdCBwZXJfdXNl cl9kYXRhICp1LCBldnRjaG5fcG9ydF90IHBvcnQpDQo+PiArc3RhdGljIGludCBldnRjaG5fYmlu ZF90b191c2VyKHN0cnVjdCBwZXJfdXNlcl9kYXRhICp1LCBldnRjaG5fcG9ydF90IHBvcnQsDQo+ PiArIGJvb2wgaXNfc3RhdGljKQ0KPj4gIHsNCj4+ICAgc3RydWN0IHVzZXJfZXZ0Y2huICpldnRj aG47DQo+PiAgIHN0cnVjdCBldnRjaG5fY2xvc2UgY2xvc2U7DQo+PiBAQCAtNDAyLDE0ICs0MDMs MTYgQEAgc3RhdGljIGludCBldnRjaG5fYmluZF90b191c2VyKHN0cnVjdCBwZXJfdXNlcl9kYXRh ICp1LCBldnRjaG5fcG9ydF90IHBvcnQpDQo+PiAgIGlmIChyYyA8IDApDQo+PiAgIGdvdG8gZXJy Ow0KPj4gDQo+PiAtIHJjID0gZXZ0Y2huX21ha2VfcmVmY291bnRlZChwb3J0KTsNCj4+ICsgcmMg PSBldnRjaG5fbWFrZV9yZWZjb3VudGVkKHBvcnQsIGlzX3N0YXRpYyk7DQo+PiAgIHJldHVybiBy YzsNCj4+IA0KPj4gIGVycjoNCj4+ICAgLyogYmluZCBmYWlsZWQsIHNob3VsZCBjbG9zZSB0aGUg cG9ydCBub3cgKi8NCj4+IC0gY2xvc2UucG9ydCA9IHBvcnQ7DQo+PiAtIGlmIChIWVBFUlZJU09S X2V2ZW50X2NoYW5uZWxfb3AoRVZUQ0hOT1BfY2xvc2UsICZjbG9zZSkgIT0gMCkNCj4+IC0gQlVH KCk7DQo+PiArIGlmICghaXNfc3RhdGljKSB7DQo+IA0KPiANCj4gSSB0aGluayBub3cgInN0cnVj dCBldnRjaG5fY2xvc2UgY2xvc2U7IiBjYW4gYmUgcGxhY2VkIGhlcmUgYXMgaXQgaXMgbm90IA0K PiB1c2VkIG91dHNpZGUgb2YgdGhpcyBibG9jay4NCj4gDQo+IEFsc28gdGhpcyBibG9jayBsb29r cyBsaWtlIGFuIG9wZW4tY29kZWQgdmVyc2lvbiBvZiB4ZW5fZXZ0Y2huX2Nsb3NlKCkNCj4gZGVm aW5lZCBhdCBldmVudHNfYmFzZS5jLCBzbyBtYXliZSBpdCBpcyB3b3J0aCBtYWtpbmcgeGVuX2V2 dGNobl9jbG9zZSgpIA0KPiBzdGF0aWMgaW5saW5lIGFuZCBwbGFjaW5nIGl0IGludG8gZXZlbnRz LmgsIHRoZW4gY2FsbGluZyBoZWxwZXIgaGVyZT8NCj4gUGxlYXNlIG5vdGUsIEkgd2lsbCBiZSBv ayBlaXRoZXIgd2F5Lg0KDQpNYWtlIHNlbnNlLiBJIHdpbGwgbW9kaWZ5IHRoZSBwYXRjaCBhcyBw ZXIgeW91ciByZXF1ZXN0IGluIHRoZSBuZXh0IHZlcnNpb24uDQpJIHdpbGwgd2FpdCBmb3Igb3Ro ZXIgbWFpbnRhaW5lcnMgdG8gcmV2aWV3IHRoZSBwYXRjaCBiZWZvcmUgc2VuZGluZyB0aGUNCm5l eHQgdmVyc2lvbi4NCg0KUmVnYXJkcywNClJhaHVsIA0KDQoNCg== From xen-devel-bounces@lists.xenproject.org Fri Jun 30 13:05:28 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 30 Jun 2023 13:05:28 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557484.870846 (Exim 4.92) (envelope-from ) id 1qFDoQ-0004kL-VN; Fri, 30 Jun 2023 13:05:22 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557484.870846; Fri, 30 Jun 2023 13:05:22 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFDoQ-0004kE-ST; Fri, 30 Jun 2023 13:05:22 +0000 Received: by outflank-mailman (input) for mailman id 557484; Fri, 30 Jun 2023 13:05:21 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFDoP-0004k8-7H for xen-devel@lists.xenproject.org; Fri, 30 Jun 2023 13:05:21 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFDoO-0006Mp-Rz; Fri, 30 Jun 2023 13:05:20 +0000 Received: from gw1.octic.net ([88.97.20.152] helo=[10.0.1.240]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qFDoO-0002fz-JQ; Fri, 30 Jun 2023 13:05:20 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=YxevsJt9haXTnO9jSG/kuuNkfvjc1lcPowPjB3zFFX4=; b=gYH0DYWKLuXxetJ+G9riLzIHOt cvHI1Go/BBnJEGaRh6uUrixFHElxwCcu2zeD0hbvSu20j4Fz/i4I2ToGTyunSbDNGkeaKaeNJOwjV RqkBoQdUZdY7a8QyH8k1gTjD/ALb5KoazULEma0NpNmoxLuxlKT1zmT1GahDj2Ln9szY=; Message-ID: <9ea987c3-e5d4-59dc-c9a9-8227b26ab2f7@xen.org> Date: Fri, 30 Jun 2023 14:05:18 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH] {x86,arm}/mm.c: Make populate_pt_range __init Content-Language: en-US To: Andrew Cooper , George Dunlap , xen-devel@lists.xenproject.org Cc: George Dunlap , Jan Beulich , Roger Pau Monne , Stefano Stabellini References: <20230630124509.730368-1-george.dunlap@cloud.com> <35b638ae-782e-f0e0-3962-2936f617b9e4@citrix.com> From: Julien Grall In-Reply-To: <35b638ae-782e-f0e0-3962-2936f617b9e4@citrix.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi, On 30/06/2023 13:57, Andrew Cooper wrote: > On 30/06/2023 1:45 pm, George Dunlap wrote: >> From: George Dunlap >> >> It's only called from another __init function. >> >> Signed-off-by: George Dunlap >> --- >> This is a random patch I found in a branch named "xsa345-post". > > I have far too many branches like that... Same here :). > > Acked-by: Andrew Cooper Acked-by: Julien Grall Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Fri Jun 30 13:21:49 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 30 Jun 2023 13:21:49 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557488.870856 (Exim 4.92) (envelope-from ) id 1qFE43-0007EC-9E; Fri, 30 Jun 2023 13:21:31 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557488.870856; Fri, 30 Jun 2023 13:21:31 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFE43-0007E5-6Z; Fri, 30 Jun 2023 13:21:31 +0000 Received: by outflank-mailman (input) for mailman id 557488; Fri, 30 Jun 2023 13:21:30 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFE42-0007Dz-LS for xen-devel@lists.xenproject.org; Fri, 30 Jun 2023 13:21:30 +0000 Received: from esa3.hc3370-68.iphmx.com (esa3.hc3370-68.iphmx.com [216.71.145.155]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 049503f5-1749-11ee-b237-6b7b168915f2; Fri, 30 Jun 2023 15:21:28 +0200 (CEST) Received: from mail-dm6nam10lp2100.outbound.protection.outlook.com (HELO NAM10-DM6-obe.outbound.protection.outlook.com) ([104.47.58.100]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 30 Jun 2023 09:21:25 -0400 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) by MN2PR03MB4990.namprd03.prod.outlook.com (2603:10b6:208:1a3::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.19; Fri, 30 Jun 2023 13:21:21 +0000 Received: from SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::1c83:1877:a68b:8902]) by SJ0PR03MB6423.namprd03.prod.outlook.com ([fe80::1c83:1877:a68b:8902%7]) with mapi id 15.20.6544.019; Fri, 30 Jun 2023 13:21:20 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 049503f5-1749-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1688131288; h=from:to:cc:subject:date:message-id: content-transfer-encoding:mime-version; bh=9f2UAR1zU9SVXAtNdly+LYPF+ky4a9eufndeiHJdi+A=; b=WF94afY75sNt8l1zMWwQVOzFuuJLbwiPWL1iT2m0Ozm9LEN0E5eySkzm ouU3alfUq3JlN4u1WMT1NhO3n5hqzCG8vOoc9dsyEw7OZvYgHpmirFG7Q 9TXEr6L74yve0iWE+F0WOZB4K+awrxAljVQcMev/xfOHDZQyKBtiF5S3Q A=; X-IronPort-RemoteIP: 104.47.58.100 X-IronPort-MID: 114764113 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:NEjxJa16Tv8SDpOFpvbD5R1wkn2cJEfYwER7XKvMYLTBsI5bp2EDn 2dJDDuCPfqNZWT0LdFxbo21pkwFvpSHyIQ3SwZopC1hF35El5HIVI+TRqvS04F+DeWYFR46s J9OAjXkBJppJpMJjk71atANlVEliefTAOK6ULWeUsxIbVcMYD87jh5+kPIOjIdtgNyoayuAo tq3qMDEULOf82cc3lk8teTb8XuDgNyo4GlD5gJlPagS1LPjvyJ94Kw3dPnZw0TQGuG4LsbiL 87fwbew+H/u/htFIrtJRZ6iLyXm6paLVeS/oiI+t5qK23CulQRrukoPD9IOaF8/ttm8t4sZJ OOhF3CHYVxB0qXkwIzxWvTDes10FfUuFLTveRBTvSEPpqFvnrSFL/hGVSkL0YMkFulfW2RW1 aUoCRc0TxWnptus6Y6lYM5NiZF2RCXrFNt3VnBI6xj8VK5jbbWdBqLA6JlfwSs6gd1IEbDGf c0FZDFzbRPGJRpSJlMQD5F4l+Ct7pX9W2QA9BTJ+uxqsy6KlFQZPLvFabI5fvSQQspYhACAr 3/u9GXlGBAKcteYzFJp91r137OQw3+iAdl6+LuQp9tYmwTM12svGDoMT3b8+sfo0HfuVIcKQ 6AT0m90xUQoz2S7Q9+4UxCmrXqsuh8HR8EWA+A88BuKyKff/0CeHGdsZjxLZcEitcQ2bSc3z VLPlNTsbRRwtJWFRHTb8a2bxRuwJCwUIGkqdSICCwwf7LHLu5ovhxjCStJiFq+djdDvHzz0h TeQo0ADa647iMcK0+C3+A7Bijf1/pzRFFdtvkPQQ36v6R5/aMi9fYu05FPH7PFGaoGEUl2Gu 3tCkM+bhAwTMayweOW2aL1lNNmUCzytalUwXXYH80EdygmQ IronPort-HdrOrdr: A9a23:5zAUVaGP4VrldywQpLqE78eALOsnbusQ8zAXPiFKOHpom6mj/a 2TdZsgtCMc5AxwZJhYo7690cq7MBThHPxOkOws1N6ZNWGMhILPFvAA0WKL+VHd8kbFh4pgPM lbAspD4AKZNzdHZaGT2njAL+od X-Talos-CUID: =?us-ascii?q?9a23=3A1v2ndGjeNg3K4oMTeY0ni6o2dzJuKHjF7C7gAmi?= =?us-ascii?q?BKGNNaYSPYGOO0oRFnJ87?= X-Talos-MUID: =?us-ascii?q?9a23=3AJucWNw66zLJu8y5NwDih0PXcxow5xpa1UR8clqk?= =?us-ascii?q?WnNOeGGsrBWbHtWS4F9o=3D?= X-IronPort-AV: E=Sophos;i="6.01,170,1684814400"; d="scan'208";a="114764113" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=NGOXqlLTLFZi3Njg47GcNaPSgZJ3NHA8j81nNkyVadaj/27kjC3mSDsI0NyYawU3xeXawx9yrSVPwdNvfd/lh8P4PNFCb1EtQFEkEwHnskkM8qj+iQ5VppbXG8UjsDu3VPiRZ/SIOHkoQPnr+2JBJnp8Uqb6uhStjbbB4WNhzSrCiGdIXJaM85X43X05t3WDY6HC3nhLcATuGyqZXPLIyZQtiq3rx10ZQOCHeS/lufNddck5DtEpB43TcJ0fQs0fJdf/uUXk+mPa+6N7H7MzTMw1HErQ+NymTxCHGECGv3FugijyLLg3/uUl5FLaH11VSLfXh3CEcpPBO9bXcYqrcQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=v37ahnbQVAMnPOCwWe3H8Ii1Qz+FpCWeHJE9Rg7DH8U=; b=NxdN0ns/4e1y+2o3NSXP9chIcYcUSGxe866rckygXSk/7aRYhtVuWJCfkFN56/SQftF5p6nElpYnwHqv1TinRgYYGT6eZiCfDG00F8x3O0r8IhKiIE8y/n8lQYt/yhQmm/+ke/o/kXw8mVUlP7VCsdPWYaDiXdGzDopOqXiGgcaC72YvfFHqVEXPEOsQ6Oxh0yZgLhw8tCPQfaJzSaE4I+zx5qtAlTCIK7iFFdCxQtxkVPCV2qXC0tPIWZ1m5mwp+fBXGyFNMgDPH3teWmirQCOvOYomChJfIN0cUraTjxuOwY96gmT/3iPkCQAEh6dEDfkhpoFfb+ysKN8iuCVhOw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=v37ahnbQVAMnPOCwWe3H8Ii1Qz+FpCWeHJE9Rg7DH8U=; b=rnrQWUwcOHes9ZSIc//Oly6qd1DQGwrKZ2Yk28A9CKCfTLORDz+aSB+Wdi8wa5G6ZyB9e3smtilb8sMVbyNRg8ZbTIrXZKYaEni7b+lAa4hkgTHP3ynpe8enLhN2zLGUeMpv/BM40kdmXkJ907MG7xd3r9suICIlcs/4zeHuXA4= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; From: Roger Pau Monne To: xen-devel@lists.xenproject.org Cc: Roger Pau Monne , Jan Beulich , Andrew Cooper , Wei Liu , George Dunlap , Julien Grall , Stefano Stabellini Subject: [PATCH v2] amd: disable C6 after 1000 days on Zen2 Date: Fri, 30 Jun 2023 15:18:20 +0200 Message-ID: <20230630131820.29323-1-roger.pau@citrix.com> X-Mailer: git-send-email 2.41.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO6P123CA0005.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:338::10) To SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|MN2PR03MB4990:EE_ X-MS-Office365-Filtering-Correlation-Id: 7487aea2-b457-41dc-d980-08db796ce4b2 X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: RFIBYWk9eRdV12W7GzE/MqJ/TMTVen+W9mJiKfn/U3EI7/SZr09UsDYNNuiyokbgwJ93nhKSbN9Qfmf9N+l6qEjRrnv93GnOzTvBbYBG+qE4wCCx0F0xBuORyqcb6rVXyXf1nH1oEm93vDtYkfgrwQXOBzXbJiHM5xdGg7Qi+xsj4fFhJ825OIId3jdVJsQ+vwU8Y0AeXmADeOuNICH72t5oN89jpE7L9sttNb40d9jiGkjpw9IlKCx5W4iD/gKUzXk0eDXUiJqGr/uqGjxjhCXRp8XjWr05xDB1HpXorabZCKYiXBr7PBxwJABiXW46g0z6hqnB21rVxZ1lro/naSu+bOwkepST8MU/ja0DSm00qd0nmz40qsAGVagkLzNoAYBhyMWnwuGPwRTpchuIY44tUbyFy1qStq9tUYm+pJCxH3+5Vz30+VbWdBzK9tpJFuRJ3Qs6JdmtRSToXwNNp5wu0sypRvB1Ywxjn89Rl6y3xmt1/6FKSdLAGRBXln8VaxBX/SymFKQea15d3DHtPopNbWXwmcOgP71GCjjvQjheYy+N3Rcz2ZBhjfqenNqNKmyoSGOY0ePVYFwZhTUWGJEYOEN7kwOrKMPJ27oHldW9iDHwe+oMCJuKzytnBqCi X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(396003)(376002)(346002)(366004)(136003)(39860400002)(451199021)(86362001)(54906003)(8936002)(8676002)(5660300002)(26005)(6506007)(1076003)(6486002)(478600001)(66946007)(66556008)(66476007)(6916009)(4326008)(6512007)(41300700001)(316002)(186003)(2616005)(2906002)(83380400001)(36756003)(82960400001)(38100700002)(221023011);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?VU1tU2tBaU1CLzZXWHZJMEh5QzRDWXI0cXdGR1ByY2kvUjJ5MVpOQ2U5Q0tk?= =?utf-8?B?SkpEMFFLMUhKZU5BVHEvcDhwNnlibThPb256V2hiODlwMmpPWGZUUWRsUlVT?= =?utf-8?B?bzBFU1BYeXJXKzR5TU5yNGE3UEw0bEpDWDU0K0xSNlJMZlBGSlFuQlBoVDlB?= =?utf-8?B?YTBLZ1kxVy9jQnpFOVN1ZDRYSUdUWXkzYU16dElRcHk0eXZVMEs1VEQ0Y2o0?= =?utf-8?B?UElzczk1QzZPZFlweUgrcUE2dE54TW9VUFZFbzIwRTZkNWc3Yno0ZDdqUVlE?= =?utf-8?B?RksybUFSayt1SnhFbnFEcVU1RW45TlF2WG9yOU9FdTRodXNFU3E4YVBRVXZC?= =?utf-8?B?eUZKK3Z3dHFDMVF1cTFtaGFvelc3eG1uSmpYNlAxd3F3TXJUdFpOQmJFL2M2?= =?utf-8?B?S3FZUG1hcGdTTkowNzFHQ3htYkE5RlNvbkJOaDZvSzFiRXE0cVZQSDI0TU42?= =?utf-8?B?ajQ2c212MllSMjZlc2hRT3pXaUkycnVwZkRNZTRpVDZqdFJoTXdKY1F6TFNr?= =?utf-8?B?SnYvZVVXblF5V3BoYzNwWDFBNndseVlhY3ludmRuR1dxejQ5U3ZLMmtmT21C?= =?utf-8?B?YXFIbnNlUERmejdpeTk1Z0t4RVg3NzFHR3BHN1dnSXcyd0ZWZytJTXVFbC95?= =?utf-8?B?Q0d2WHppdTRianpYQzVqK3BmUzVLaEZFOXBzMWNqQjlWUTMwdEV0UlNIWlEz?= =?utf-8?B?RVhnWktheUVqMWtQTHU3Q1NGMDgxdHdGazhYb3R0YzBJNVZ1RTlOVUNXOEI1?= =?utf-8?B?eW5hdzRkdUQvejRDYXNKaC9TYU9SY01UaHAzU0I3dG9hL1pZc01HSmt4UUZZ?= =?utf-8?B?aGRmRUJsRFdQdjVmUU9kb1pkU0g5WWRwQkJXSmJIWk9YSmdNQ1FBVElRMldD?= =?utf-8?B?cVdWRmVqbjZ6MUt3TmhYVXc2TEUxOStzU0NwNXB6Mk9aMkI5d0UzbnFwRFpV?= =?utf-8?B?blRDTE9HZm9zdFMwcVM4Z2pTMTZ1Sld0Kzc2OVQ5Ykd0R1I5c1V1VGxraGRI?= =?utf-8?B?N2xvK0dHOTBORkswTHVBZ2lMRnovY2lpQkh1QjFhK24xd0pGckcwVkVyUDFu?= =?utf-8?B?L1Zrc2lkUjFsZjVYbnNEcFlRSmptSml4UUNFQTQ1ajVvSFRtczVxK2d1VTBq?= =?utf-8?B?OXN0VDY4NEpRV21LWjFIQW9oYmM2TVdlMy9kdHFMSHZYRmhIN3ZaT2VJam1X?= =?utf-8?B?TjA1bWZXdnNTakx5dVAzRGJ3YVdlQ0lERDduL0MzZjk0Y05ZQkoxRXBqWXdu?= =?utf-8?B?ZzZ1WkczMjhkT0NyemUwbzkwMDI0WUg0d0YyOXZvMWV4TE5JNDEyaWFMa1Rs?= =?utf-8?B?OHVTUXE3eUtrS1BzNXRSQmdCMFEzMGp5dzRGcWJEcmdXMml3cENLR3l0SFFJ?= =?utf-8?B?YUZPcFYxZUxDMVVxT1dmVXRyQjFaRFhvVmRuUGUwNmVCalhtY1FJTnRBbDh5?= =?utf-8?B?MmsyeVRqQytjUW4ramlkRUg4ZVlkZVQ3SFNUQmF3TFNlU3ZkVnp5cE5nN1Fh?= =?utf-8?B?TmdiTjE0MWp4bytnU2xCc0g0Nk1VWEdiZnc1ZTdoaHBVSkdRNkdYekJwVlk2?= =?utf-8?B?aFE3ckp1NDE2bTFoY2NqNXhEMGhqMytPRUhOOUk5MnV3emQ4dGlFWWtPei9T?= =?utf-8?B?aTIyS29hVzdTLzJiM3FsUm1COU91NmVZRWFxK2tuRk1OaVRHQjUzZDFqN1Fq?= =?utf-8?B?ZjI4dkVDOFQvWUlwaEtTRU1NajB6TDJzRWVsVWNnSlZ6NE9DdTV4QlhnNGEy?= =?utf-8?B?cWtGbnpKMk05cmNncXgxTnA0cXRmbDlhY2phMlBNbFpUd2RVSGtQbC9uVzNK?= =?utf-8?B?eEhvVXJuc240M1RPbmNqQVlkaDRkcVlvNDU5UjFOQ3BjanRzZzdpYmFDYS9u?= =?utf-8?B?UnFnNDRHOS95c1pxS0l5MGowWFJFY1QrZUpIc1kzQk0yWDJ0elpTNEZveDNu?= =?utf-8?B?djRhOWhkRkNYWWxZRy9qVzhyOG5BKzBvVDg0QVJkT1JKRnZGQ1NjTkMwZXJ6?= =?utf-8?B?a29lV2JER3Q0M2VmVFNkakVaS2ZOYy9VeXNlc2kzcm8yc25WUHRJNW56djJL?= =?utf-8?B?alFDeTlTaE8zVXNCYi9USGFnMkkxWWlTNHJCMmtkMjd3eFpxWDR5UW1abGlS?= =?utf-8?Q?n/l3lWv8V9PQExeM1QhnIbtT8?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: Qq+c9Nko5C1eCRBTBVNlk1gRQraQ7YSodzvrWij8eWEqKoupt3YdtJfkXbgwET3n+1MLmaqhSysNgsfj3NdbOYFJdPNPwnDKBjCNlNquIbHlmDGDx0Rl/KRstRVr0HNpFUxQpK2+eMvg8UWExuQXtEgfkYwgVVBtIX0ZctTXz/k3DacK2M6Wu47/1lwztONe3BRsnNcsCSAQPEgz5bCsQb5yZnvzRo/jsfl8ddmqbHO71u8LHNab5pMRbrc7oQDE1R24xYCqaskLIPJx9Q1duJabS9ECjvMdL7tWb1lui4DN1CDEEaAY7+5JrmpF7ZhDNguoAeXt4M4NFl2ejZL9V8NjOu9uF1TuM0EiTIqtsgAZXxfDtOehRNnlCxOGzT/5OPmu4h+WRGDiSEmOq7sBtSbeczncLKVUKDd3UKoyFegv73q78shD7bXXdNgUDDjMYDrjCuONe1HOE7q0JniLHbNKS/WHIQhCboUPvhjTr3YhhQybKXGirpI7vA4ljkPLF5PRil2huRMToihC5XRE7DKQu3SfDp5l4RLDoaAY0IxFRvq2gSacXAwXlWWiaWwVXK3gLGxusf1kSGeRH9ai6uZTevF2JeDf5oOdjJx5aYT7T3LxLn7LycToMZCKLs8RaTkIJ7BSMR4EZ5usaEhinlkV4NKgg3vF76pdiXndZpH3I6AKGFOTEeiwxErNzFneAmik739vDJwtAcdib5GKFGd5Of2wMlPalRqjIUPQGmzoESZabq1dClGFJTCL3KZ8CotVHMq8xgQn6PWradOdixT0KwRrjnhRvgmGT+6+ID7lC9xqIp2d3q6b+xRtd9SXkY+dEr+SbXV2HXbBavcafEnt1aqJ+hRAXokMIdkpJfA= X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 7487aea2-b457-41dc-d980-08db796ce4b2 X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Jun 2023 13:21:20.6512 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: r6je0EEcSIPWOuxYkQzRok4XKnBjkG1hXcezUIMP5o75N8fKPYXEFISAxQCTG4iuEoerUlHR9gbaLY206SjT4g== X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN2PR03MB4990 As specified on Errata 1474: "A core will fail to exit CC6 after about 1044 days after the last system reset. The time of failure may vary depending on the spread spectrum and REFCLK frequency." Detect when running on AMD Zen2 (family 17h models 30-3fh, 60-6fh or 70-7fh) and setup a timer to prevent entering C6 after 1000 days of uptime. Take into account the TSC value at boot in order to account for any time elapsed before Xen has been booted. Worst case we end up disabling C6 before strictly necessary, but that would still be safe, and it's better than not taking the TSC value into account and hanging. Disable C6 by updating the MSR listed in the revision guide, this avoids applying workarounds in the CPU idle drivers, as the processor won't be allowed to enter C6 by the hardware itself. Print a message once C6 is disabled in order to let the user know. Signed-off-by: Roger Pau Monné --- The current Revision Guide for Fam17h model 60-6Fh (Lucienne and Renoir) hasn't been updated to reflect the MSR workaround, but the PPR for those models lists the MSR and the bits as having the expected meaning, so I assume it's safe to apply the same workaround there. For all accounts this seems to affect all Zen2 models, and hence the workaround should be the same. Might also affect Hygon, albeit I think Hygon is strictly limited to Zen1. --- Changes since v1: - Apply the workaround listed by AMD: toggle some MSR bits. - Do not apply the workaround if virtualized. - Check for STIBP feature instead of listing specific models. - Implement the DAYS macro based on SECONDS. --- xen/arch/x86/cpu/amd.c | 70 ++++++++++++++++++++++++++++ xen/arch/x86/include/asm/msr-index.h | 5 ++ xen/include/xen/time.h | 1 + 3 files changed, 76 insertions(+) diff --git a/xen/arch/x86/cpu/amd.c b/xen/arch/x86/cpu/amd.c index 0eaef82e5145..bdf45f8387e8 100644 --- a/xen/arch/x86/cpu/amd.c +++ b/xen/arch/x86/cpu/amd.c @@ -51,6 +51,8 @@ bool __read_mostly amd_acpi_c1e_quirk; bool __ro_after_init amd_legacy_ssbd; bool __initdata amd_virt_spec_ctrl; +static bool __read_mostly c6_disabled; + static inline int rdmsr_amd_safe(unsigned int msr, unsigned int *lo, unsigned int *hi) { @@ -905,6 +907,31 @@ void __init detect_zen2_null_seg_behaviour(void) } +static void cf_check disable_c6(void *arg) +{ + uint64_t val; + + if (!c6_disabled) { + printk(XENLOG_WARNING + "Disabling C6 after 1000 days apparent uptime due to AMD errata 1474\n"); + c6_disabled = true; + smp_call_function(disable_c6, NULL, 0); + } + + /* Update the MSR to disable C6, done on all threads. */ + if (rdmsr_safe(MSR_AMD_CSTATE_CFG, val)) { +error: + printk_once(XENLOG_ERR + "Unable to disable C6 on AMD system affected by errata 1474\n" + "Reboot recommended, otherwise system might hang\n"); + return; + } + val &= ~(CSTATE_CFG_CCR0_CC6EN | CSTATE_CFG_CCR1_CC6EN | + CSTATE_CFG_CCR2_CC6EN); + if (wrmsr_safe(MSR_AMD_CSTATE_CFG, val)) + goto error; +} + static void cf_check init_amd(struct cpuinfo_x86 *c) { u32 l, h; @@ -1171,6 +1198,9 @@ static void cf_check init_amd(struct cpuinfo_x86 *c) if ((smp_processor_id() == 1) && !cpu_has(c, X86_FEATURE_ITSC)) disable_c1_ramping(); + if (c6_disabled) + disable_c6(NULL); + check_syscfg_dram_mod_en(); amd_log_freq(c); @@ -1180,3 +1210,43 @@ const struct cpu_dev amd_cpu_dev = { .c_early_init = early_init_amd, .c_init = init_amd, }; + +static int __init cf_check c6_errata_check(void) +{ + /* + * Errata #1474: A Core May Hang After About 1044 Days + * Set up a timer to disable C6 after 1000 days uptime. + */ + s_time_t delta; + + /* + * Apply to all Zen2 models. According to AMD revision guides at least + * Rome, Castle Peak, Renoir, Lucienne and Matisse are affected. + */ + if (cpu_has_hypervisor || !boot_cpu_has(X86_FEATURE_AMD_STIBP)) + return 0; + + /* + * Deduct current TSC value, this would be relevant if kexec'ed for + * example. Might not be accurate, but worst case we end up disabling + * C6 before strictly required, which would still be safe. + * + * NB: all affected models (Zen2) have invariant TSC and TSC adjust + * MSR, so early_time_init() will have already cleared any TSC offset. + */ + delta = DAYS(1000) - tsc_ticks2ns(rdtsc()); + if (delta > 0) { + static struct timer errata_c6; + + init_timer(&errata_c6, disable_c6, NULL, 0); + set_timer(&errata_c6, NOW() + delta); + } else + disable_c6(NULL); + + return 0; +} +/* + * Must be executed after early_time_init() for tsc_ticks2ns() to have been + * calibrated. That prevents us doing the check in init_amd(). + */ +presmp_initcall(c6_errata_check); diff --git a/xen/arch/x86/include/asm/msr-index.h b/xen/arch/x86/include/asm/msr-index.h index 2749e433d2a7..5df090fba791 100644 --- a/xen/arch/x86/include/asm/msr-index.h +++ b/xen/arch/x86/include/asm/msr-index.h @@ -211,6 +211,11 @@ #define MSR_VIRT_SPEC_CTRL 0xc001011f /* Layout matches MSR_SPEC_CTRL */ +#define MSR_AMD_CSTATE_CFG 0xc0010296 +#define CSTATE_CFG_CCR0_CC6EN (_AC(1, ULL) << 6) +#define CSTATE_CFG_CCR1_CC6EN (_AC(1, ULL) << 14) +#define CSTATE_CFG_CCR2_CC6EN (_AC(1, ULL) << 22) + /* * Legacy MSR constants in need of cleanup. No new MSRs below this comment. */ diff --git a/xen/include/xen/time.h b/xen/include/xen/time.h index b7427460dd13..9ceaec541f4d 100644 --- a/xen/include/xen/time.h +++ b/xen/include/xen/time.h @@ -53,6 +53,7 @@ struct tm wallclock_time(uint64_t *ns); #define SYSTEM_TIME_HZ 1000000000ULL #define NOW() ((s_time_t)get_s_time()) +#define DAYS(_d) SECONDS((_d) * 86400ULL) #define SECONDS(_s) ((s_time_t)((_s) * 1000000000ULL)) #define MILLISECS(_ms) ((s_time_t)((_ms) * 1000000ULL)) #define MICROSECS(_us) ((s_time_t)((_us) * 1000ULL)) -- 2.41.0 From xen-devel-bounces@lists.xenproject.org Fri Jun 30 13:56:15 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 30 Jun 2023 13:56:15 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557495.870866 (Exim 4.92) (envelope-from ) id 1qFEbN-0002Nz-VJ; Fri, 30 Jun 2023 13:55:57 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557495.870866; Fri, 30 Jun 2023 13:55:57 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFEbN-0002Ns-Rq; Fri, 30 Jun 2023 13:55:57 +0000 Received: by outflank-mailman (input) for mailman id 557495; Fri, 30 Jun 2023 13:55:57 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFEbN-0002Ni-2E; Fri, 30 Jun 2023 13:55:57 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFEbM-0007UO-LP; Fri, 30 Jun 2023 13:55:56 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFEbL-0007cU-QQ; Fri, 30 Jun 2023 13:55:55 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qFEbL-0006lD-Q1; Fri, 30 Jun 2023 13:55:55 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=e3cPbvUqgHO37UoVdGJwm/Cp1EoDIKrUrloq2FNgzwg=; b=h+4vhEWz533dooYcdsOVoFxIrm Qp6l5+Geb7/L7a59CA/aDl39As5/wWdIb5K2RnUrC6Yda9dEfLrb8rN3rcdHWi00RC4g67C7JDk0r 8OBjAeOHMzlWu8fsexDFbEDErbzxs+ihe61gSJbj4vnnRSH8j4CjOvu2oitr1P7qR2xU=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable-smoke test] 181654: tolerable all pass - PUSHED X-Osstest-Failures: xen-unstable-smoke:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking xen-unstable-smoke:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking xen-unstable-smoke:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking xen-unstable-smoke:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking xen-unstable-smoke:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: xen=c81b287e00b1a21beb65637d9cfb812da3a0e5ce X-Osstest-Versions-That: xen=6aa0c18062609cb448d292668a81953a58ce1e95 From: osstest service owner Date: Fri, 30 Jun 2023 13:55:55 +0000 flight 181654 xen-unstable-smoke real [real] http://logs.test-lab.xenproject.org/osstest/logs/181654/ Failures :-/ but no regressions. Tests which did not succeed, but are not blocking: test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-armhf-armhf-xl 15 migrate-support-check fail never pass test-armhf-armhf-xl 16 saverestore-support-check fail never pass version targeted for testing: xen c81b287e00b1a21beb65637d9cfb812da3a0e5ce baseline version: xen 6aa0c18062609cb448d292668a81953a58ce1e95 Last test of basis 181645 2023-06-29 23:01:58 Z 0 days Testing same since 181654 2023-06-30 11:01:56 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Andrew Cooper Anthony PERARD George Dunlap jobs: build-arm64-xsm pass build-amd64 pass build-armhf pass build-amd64-libvirt pass test-armhf-armhf-xl pass test-arm64-arm64-xl-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-libvirt pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Pushing revision : To xenbits.xen.org:/home/xen/git/xen.git 6aa0c18062..c81b287e00 c81b287e00b1a21beb65637d9cfb812da3a0e5ce -> smoke From xen-devel-bounces@lists.xenproject.org Fri Jun 30 14:16:21 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 30 Jun 2023 14:16:21 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557501.870876 (Exim 4.92) (envelope-from ) id 1qFEuy-0004z9-JI; Fri, 30 Jun 2023 14:16:12 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557501.870876; Fri, 30 Jun 2023 14:16:12 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFEuy-0004z2-FM; Fri, 30 Jun 2023 14:16:12 +0000 Received: by outflank-mailman (input) for mailman id 557501; Fri, 30 Jun 2023 14:16:11 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFEux-0004yw-Mv for xen-devel@lists.xenproject.org; Fri, 30 Jun 2023 14:16:11 +0000 Received: from esa3.hc3370-68.iphmx.com (esa3.hc3370-68.iphmx.com [216.71.145.155]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id a838e912-1750-11ee-b237-6b7b168915f2; Fri, 30 Jun 2023 16:16:09 +0200 (CEST) Received: from mail-mw2nam12lp2046.outbound.protection.outlook.com (HELO NAM12-MW2-obe.outbound.protection.outlook.com) ([104.47.66.46]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 30 Jun 2023 10:16:06 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by PH0PR03MB6913.namprd03.prod.outlook.com (2603:10b6:510:166::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.19; Fri, 30 Jun 2023 14:16:01 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606%4]) with mapi id 15.20.6544.019; Fri, 30 Jun 2023 14:16:01 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: a838e912-1750-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1688134569; h=message-id:date:from:subject:to:cc:references: in-reply-to:content-transfer-encoding:mime-version; bh=NSdbtmEUzY0770YpRPl72/mhY8NNZa1mGu9fHQKZohU=; b=M7TTQeUikr56vVJYqxJ+M40OQZUBG3Qmv+fAF92RKToZnSsdUFBPovKD tTjPGwug0X8WY/m1rJp1XBc3cqEusLw41aKhazmR+DhTnDeK6Xd2CoLI3 jzhEwPmlRPknFtg9n4P5+4Z3xmMR/ey5g39hmR5YG349OTCYak/RXk8fB Y=; X-IronPort-RemoteIP: 104.47.66.46 X-IronPort-MID: 114771544 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:IK2h86tuAxdYKpwuYFFlg88w0ufnVJReMUV32f8akzHdYApBsoF/q tZmKWzVafeLZWfxLo0kOo22/EIF75HSzNQwTws9ri9hQSxB+JbJXdiXEBz9bniYRiHhoOCLz O1FM4Wdc5pkJpP4jk3wWlQ0hSAkjclkfpKlVKiffHg3HVQ+IMsYoUoLs/YjhYJ1isSODQqIu Nfjy+XSI1bg0DNvWo4uw/vrRChH4rKq4Vv0gnRkPaoQ5AGFzyFPZH4iDfrZw0XQE9E88tGSH 44v/JnhlkvF8hEkDM+Sk7qTWiXmlZaLYGBiIlIPM0STqkAqSh4ai87XB9JFAatjsB2bnsgZ9 Tl4ncfYpTHFnEH7sL91vxFwS0mSNEDdkVPNCSDXXce7lyUqf5ZwqhnH4Y5f0YAwo45K7W9yG fMwBRABbEmyuriKwYmmV8lqo859JvWwFdZK0p1g5Wmx4fcOZ7nmGv+PwOACmTA6i4ZJAOrUY NcfZXx3dhPcbhZTO1ARTpUjgOOvgXq5eDpdwL6XjfNvvy6Pk0ovjv6xbrI5efTTLSlRtm+eq njL4CLSBRYCOcbE4TGE7mitlqnEmiaTtIc6TeTkqaEz3QHProAVIEMqb2KihN2Bs1T9dfwCL kUyyC1tirdnoSRHSfG4BXVUukWssBMQVsBRGOp88wyXw6TV5QexDHULVTNHZ5ots8pebSwn0 BqFks3kARRrsaaJUjSN+7GMtzSwNCMJa2gYakcsRgwD+MTnvIA1gTrFU9l4Hai6yNbyHFnYw TqHsSw/jLU7ltMQ2uOw+lWvqy2ojojESEgy/Aq/dnqs8wdRdIOjIYuy5jDz8f9FJZ2xUlqFs X4LisWaqusJCPmlnS2WSeQJFZmj5uqJPTPRh1JiBd8q8DHF02a7fJpb6TV3LlpBOMcYdTLnb UnftBkX75hWVFOocKkxZYuyAsYryKHIFNL5W/SSZd1LCrByeRGG+mdyZEeW92HrjEUo16o4P P+zat2wBHwXDaBmyjueROoH17IvgCckygv7QJHwzx2jl72EdnORYb4APB2FaeVRxLOJpgTct cxWOMqDxxxcV/DWayzbt4UUKDgiJGkyA9b1tslebKiDKw5qFXsJAvrdh7gmfuRYc799k+7J+ jS4RRVewV+m33nfc13WNDZkda/lWot5oTQjJyswMF202n8lJ4Gy8KMYcJhxdr4inAB+8cNJo zA+U53oKpxypv7volzxsbGVQFReSSmW IronPort-HdrOrdr: A9a23:K2C0gKhru+FoJ0wEhzXatnfwTHBQXtgji2hC6mlwRA09TyX4ra CTdZsguyMc5Ax8ZJhCo7G90cu7MBHhHPdOiOF7V9qftWHdyQ+VxepZnO7fKlPbdBHWx6px74 BLda9iBMzsZGIK7voTq2GDYrEd/OU= X-Talos-CUID: 9a23:L4CuAGPRtyzn/u5DdQlr9hclJ5oZc0bA0VfWBkXmA1oyYejA X-Talos-MUID: 9a23:lO5RfgrUXdf4M1JItHcez29eDv5xxoCWMVpOv7tbvsCiByszHCjI2Q== X-IronPort-AV: E=Sophos;i="6.01,171,1684814400"; d="scan'208";a="114771544" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=CCZ/oKtQ+fqTRU5BuJaLWsgr3umPD9fZqfIVfCCDr6u2WDwNYzvH3mOjForj8aQZM3p1hBFpU2GmhYTeZ53ZBPWZ8n0UQ523+aPti3KCcH81KPkq8JwqzhjJ2PSj5FY05xmZfuMYIzWH4ZZO7Ny1oY+kBC7tLw/mQseEHKNfG3ONwExuh6leVP6mygnAraaDVRrsXVzthENgjlPz3T74tNFryB/dZnKMhLSIsNbBPMRCE6GiOIbha9BxryYDCcEK35Rbx9fIWJWmpsm7pbSzGigtLDBPJR/Fa/E/HRRzjcWP/5TaUUfdw4mbp2IKzUbvZ1MNkEmiZXntbgPT+GcDEA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=jYZlIcGWZSSO/fOKj9E6L2yKtF0j7asYh+P7/uEn8k8=; b=Qqzd7sP/Zv+CuFw21cdVbCYe1bP5ToschA3fhWceH4LNTEMuj3m0v2c9scPT/t5wVkAzyZ73gjCE+f/0LZ1ha3d4wMnLKVCaf9CuzH7t5P673hWKDkYP+XluEDK0vX2v76UVTGvTetzjlAhvQQBjXTegqgkY7BMcgsJXli+H6GrGl7biLgq/ECl63sLhY+Dkugrr7SFniTrp5tlhCOOhnSFTL+maTw7Z9+Wpsin0CSVrTxioonfKt/3v8UulXxdOdivxrWWFOoMMcStf/pQyZVcvzkpJJHGRV0BT+L5bWcdjPibmYeQV2IaLG6rXv6HdYUHNaSiX/2gxv91edHD6dQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=jYZlIcGWZSSO/fOKj9E6L2yKtF0j7asYh+P7/uEn8k8=; b=G//8d86WaD5N+aIQ0zTcBBaZlCvwmVFT5LJIzedU2md0jCLLW8sUexwfJQiKmB4k7GlylEYYLhXahMNccuBGs5YV5ryyrDwv8PzL8X0/AxMcfgRlaMhmKoq6i6s9MG2+yQIpLyD/GFoqZdsm1I55jJAlWbZ15+4LoQNL/MX7E0I= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: Date: Fri, 30 Jun 2023 15:15:53 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 From: Andrew Cooper Subject: Re: [XEN PATCH 0/5] Fix violations of MISRA C:2012 Rule 8.3 on parameter names To: Federico Serafini , xen-devel@lists.xenproject.org Cc: consulting@bugseng.com, Jan Beulich , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , Paul Durrant , Tamas K Lengyel , Alexandru Isaila , Petre Pircalabu , Jun Nakajima , Kevin Tian , Stefano Stabellini , Michal Orzel , Xenia Ragiadakou , Ayan Kumar Halder References: Content-Language: en-GB In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: LO2P265CA0510.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:13b::17) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|PH0PR03MB6913:EE_ X-MS-Office365-Filtering-Correlation-Id: 5de7540e-2203-409b-7c89-08db7974880e X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: BtucBUYZuGaH1IzkXRSb3cG53iWtuA8Nbp2VYf3/MPgzOoGJPWs183EqnUD/aBzOSEOWm2VX3qjI1K7Baj4p3bF3vlDHiwQm57M0VHh7T/qCJfS0h8iwDImpXE984EAWRITDTrlwrI84Z0NGK4VKrRXzBgZ1DiFa0PaNpb8LYuICeK++RArlGVXD7R/TUUcazwzekF8fvKgDsNmiSZ1rIciQ1bJ0VFX1+rzdD30PnMZVgnkFcCug4887v8tSvQ7N83qLoR6MO3wSanT0f/WFgaiQEklAzwUfe0AqKcsIC962qV6XJl+k1t8g90DfCigyNGivkgDy1SqlTFKTsVNtMaqbHAT4P5fECRLr094N3P21OcZlo3vm8ug5kBtt6zPmMUgIxIfrXatux+W3o1GHVWeIIT+683APQ35qc+pZdemz6lKLQPBSSsKo6Y7OFqYOuThgjjbqp247+1RjUVK3bpvcPHalm992kanh8uNVaqy5bQSfcPRGTkss/w1mqKJ2tJh918uIPc/PzC5PSB/AV2qAALYqPmkSwqda3xX8raDBpi7Qipfb9H8ouFm/GCV7A6fyuxyzHcGAPQX7YaUm36tFZELtf2UrHwn86CVU5ZEKaD9UF0lUlQ2trUspiwLQI69SNGOF4Vy8sHqOJY00YQ== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(376002)(396003)(346002)(366004)(136003)(451199021)(31686004)(8936002)(8676002)(7416002)(5660300002)(66946007)(66556008)(66476007)(4326008)(2906002)(4744005)(316002)(41300700001)(54906003)(478600001)(6666004)(6486002)(53546011)(6506007)(2616005)(83380400001)(36756003)(6512007)(186003)(26005)(82960400001)(38100700002)(31696002)(86362001)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?MDU0VUh6SlVZVUN3S291czVlRUtDTE0vdStqcE8wREJJQ3JoMEVENHJxc1U2?= =?utf-8?B?bFlnNG9qWVZta1JVTmFNbEFoMWs5Qytzc0pwMHBmMUNoVkJoNll4UDZqQmZu?= =?utf-8?B?Y2VZVXZTTGRjTGZneHFVUjR0Q2dENHgza3hvcnZ5SkNvSWo3aVhFSXZZbU9J?= =?utf-8?B?a3ZzWlI0QWlaMHBGNnNKenB2ajNCWUoxRzZDM3hRMkQydStNRDRxZEYwU3Rx?= =?utf-8?B?U3IzblhjZzM5Wms2Z0sxS1pud1AxN2ppM00wZTZWbmFrOXhramwrQkZwWktJ?= =?utf-8?B?bWVvdmdDY3Bkd1ljaEdpS3B1bUlEaGR6cVhYVEw2dXdrZFczRC9WMlJtT2hx?= =?utf-8?B?MnBiVk9IWG4xVlJwOU9XUnpnU0YrQVV6VCtNN0JWNzNRa2F4K05DUW5tM0RH?= =?utf-8?B?RXdlUUZJVHJKM25pN2Q4ODFoeVI0R2NLWXBzbkwxKzV6ODFRRlJxWGMvSzZ5?= =?utf-8?B?dkJhV2xtdGNEdlQzc0VKOUpjcEwzUFoyRnd1OE9teTJxNEZ2M0d2SHZtTlN5?= =?utf-8?B?MGJPelFTd2dkeTNsTmlsWGZnWmhrMVBoVjJUZ3JZR1J4amI4MzZnTU5yeElp?= =?utf-8?B?WnlSWnAyTG9qdkVpdmFKR1ZwTE1FTy96UmRRTUxkY2NZOXN5ZWt3R2VlZUdS?= =?utf-8?B?UkJheVI5UzRhQWJBbWNIMmI3ZDk1VjRYTTIxNy9NSFQzMjFzOEVMVEkya0R5?= =?utf-8?B?bDA5REk3QlpnY0hRRXozK29ic29SVW9tRmtqVTIzSzRHcThJOXgwR1ptSjFt?= =?utf-8?B?N2tzYlRXalJLQlVqTFdJV0Y5ZHNvTUl4UXBHU2pzcVp0RjdKL3gwVXpzSWpG?= =?utf-8?B?cWxqdUJ5VEZlc2NzODd6cmFMK1hhelBmNzRWZHBTRXdnQS9FSmwzeHZPVDV4?= =?utf-8?B?eUMyOFhIRGdoWFhaekc5bUVDb2M5OXlvbENla0MwSHh5Q0JmbVMwM0x4Lytu?= =?utf-8?B?NHhDUnJmbDNyenNYV2p6YVZ6aFRFRDBaYlVELzFZd1RHenZOckVKRCtKbnh0?= =?utf-8?B?ZDRzL1ZsL1pKbFNSYTFUcVFDOUw2UWNPM2xIVFFhZ3NUVDh6eUt2bGk4R0xv?= =?utf-8?B?eER2WmlSY1lKVC9adDVrSDhVTDh3R1JwSEx5L0ltekticThNaE03VnJSZENW?= =?utf-8?B?UEYyK0ZzNEVqbzdjM01OODRHZFM2YmJLbEpnVWlCL2JaQmhsVWEvc0hNMmdH?= =?utf-8?B?clNXa3RFOTFXZng4OTFEeWtnYnVoYm8reHYrVzQ4WDVwWjQyRE0xYlhMbnUx?= =?utf-8?B?NnNnMDQ5bnFwQUZxaG5rMmFycWNZZzBpVVR6ai9ad2JvTEZya3ZUSkRZZHlo?= =?utf-8?B?UW8wa0JnZFp0UGc4YzlDeU9UdzZyR2dJYTkyUVE5TDN4SWhuTDdld2w3NHAy?= =?utf-8?B?L052QUVKNElsZUdaVC8wakpmNFdxMGhtR2ZqZzlZU0U2YkpHaUhJRzVwZWFY?= =?utf-8?B?QlV6bmFCVm01M1ZsamNuTVpZekNGQUZ5djBSenZNK2lvWVlGVUJQUnZJa1J5?= =?utf-8?B?WXdXMWtzd2VGbkxKRFdIcCtNVkFRbUVEUlA1RG15Rmkwa2lWMGRoaE5QUHVT?= =?utf-8?B?Y2ZiZFFaVVBxbGlTczlPbXFkU2hTS2haSjlCS2N2WHR5UmhtWmF2ZjVIOXBV?= =?utf-8?B?akZtUjNaUzR0RUcvMW0zbE82Y0JqTDk3S3B5UG4reENzdUNSaEtKTmh2eXg5?= =?utf-8?B?UTA4enBHUmkzRk1qRmJuai9KL0V1QjJ0T3l3OWxITUUvajFPVm9iUkI1QVdW?= =?utf-8?B?K3Jpdm8wOVA3c0JpMkwzNVFEaTVmNEptUG9Zd0dQckJkcXF5R3lRc3FSMmNV?= =?utf-8?B?VXl1Vi8xNjJJVGFmVzJueUlLcEdTS1lMbmQrYXo2TStITDVzb24zeHUzMmxP?= =?utf-8?B?eCtISjZrZjVscGEvUjlMbG5FYVRPb2J3TXVEbEFCY25RV0ljZDhOR3lnbGE4?= =?utf-8?B?U3Z3bUVUb3ZINDlTTjd5aTJYeWg4WFQ0cmhJRnpndHppYktaeitab3ZlNmdX?= =?utf-8?B?Wk0wK3BuZnhIeEU0VEJ5MktsbDBPYTdFbzdyMFZhOVNuSkp3eE1VQ0RuQysy?= =?utf-8?B?TlNtWTZyUzNzeGExTXVTdWdidng3aDhaUmptSnQ2NFNJR1lnVlRNLzE1L1Z5?= =?utf-8?B?UTZXRCtWVVJPMUhhOTBuUUxLcHZTbDlIQjgzcndqK2d6d0dRSmRXN1NTVkRZ?= =?utf-8?B?L0E9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: =?utf-8?B?T0dVK0wvNS9yY0c5dGNNRGVpeFdnUXd0Rk9VVDBkWkRhS05oWkRHcldmRzFa?= =?utf-8?B?bEp0UCszcXIyMzFFZ0N1a2FvMGhLZW9ObU9ocHplMlB3NzRyL0JnWmRhUitD?= =?utf-8?B?emV0M2QwN1JDMFBQcXhCODJDSWFhSHJ6WjlFd1ExenFmTkhEYU9xQ2ZBSGNk?= =?utf-8?B?N2NyRjZyYk5mWDl2S1BYTUVQdit3LzJDc1E2aXZmQmpyaG5COHlYSnF6Umtr?= =?utf-8?B?WDBpR3kvQ1I3YjY0VmdTODFWbEs5b01BejdXanNhb1dwQ0JUT0JuNGQwYWZ6?= =?utf-8?B?M3MxNS8rQTNkd0tPaFRiTXR2WmRqYnN2RVZ4dGhWbDkyeUtMSEtRbEwzdi81?= =?utf-8?B?SHhZa0E0cWhoTWxOT2JqSXMyazV5eDlpZTZlYkZnN1lTNzBpWmJyRDllV0ww?= =?utf-8?B?ZEx0R1grbFRmZi9pK1JNK0J3ZGpRQmhOYVErYjJEV0FYVHQ2b1BZLzNVOUpa?= =?utf-8?B?cnd2TlVKR0dWZ0FHa2p3a2FMWkt0VlVCcGhqQlczdWpWK3BpZGFvSXNpYi91?= =?utf-8?B?ZXRUcFpUNGlGVkVLRS9OUUNXd2xtMVFTd3dhWGoyQTd3K20zNURzZjRaOTl1?= =?utf-8?B?ZUVha1VGc1RobDFTMEZwd2pzc0ZTckIzeTVYOVlGU0pCMHJCTllvSFVSOG1u?= =?utf-8?B?V1VVZHdlc2JVOFVFRjlqQWlwbHBTaUd6Q3BBWnNHQk5OWDJSSkVwK2xheWRY?= =?utf-8?B?VGpJSVFwU0Rqamh0U2hVVmVCaENFdUp6SXN0aGFtNURjSG1QdU0vUXdFR0VL?= =?utf-8?B?OVdTa2ZVdDdIem1lRFhzUE85Ty9xZmVQeWl0VFpuMHdxdTdydGxzbHIrcnlk?= =?utf-8?B?aDY1Q3N0NEwyendMc0hxeU5iV3A5dkxXYnE1dGh5ZFpUL0N0TWQyYUx0dW5W?= =?utf-8?B?VDFIK1Qzc0RaZ3Z6Y25LcUFUZVlDNjdnZmNEbVdpd3UxMjFtQ0czcTJibVZz?= =?utf-8?B?UHJ3ZmZUc3BnT2lkekM2djRZYkdDRlBSKzFTcGphNm5MSWcxMXprWVhhNTY0?= =?utf-8?B?Z1VHK0JNQzMxME5CYnN6MU12VmM3Y01SZkdiNlppWFNRWGpjcXlPL3B2aWFp?= =?utf-8?B?eUZDVXZWeEE0VHVrOTZXYUlBM3RGaGlWT3VKSWtQNnA0RE1Nd0xXWmVpNG12?= =?utf-8?B?ajMwdFRWcmhGOGVFQi9JdkVHUHFkMzM3MlhhdWxzbVc0cVFDUTRucDhlcU1H?= =?utf-8?B?WldFK2xDNXBoKzZFaGUzL3NuU0pDcWlkNjZBVE93Z1ZTWXNkT0Flb0M3emQ2?= =?utf-8?B?NTh0ZmltR0FjRXBTYVlZbi9RQWNUVVhjZWpxeTVjbXpvZGRlV0N2eDhDM3A5?= =?utf-8?Q?dMpUsfsMP+VZflePca4W+mfrZCfSeon2wr?= X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 5de7540e-2203-409b-7c89-08db7974880e X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Jun 2023 14:16:01.2301 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: rzUNdeeusGsS+6G/xjLkIdMPzCRk3aZuRxsEkdb/sCLaFtrMuNZKg/+XFmsmeYLE368mw0qVdZ5vGI6SXaCsFBoVie2DClYDwSmg8Wv4g0U= X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR03MB6913 On 29/06/2023 4:55 pm, Federico Serafini wrote: > Federico Serafini (5): > x86: swap parameter names of hvm_copy_context_and_params() declaration > x86: change parameter names of nestedhvm_vcpu_iomap_get() definition > x86/vlapic: change parameter names in function definitions I've acked/committed the first 3 patches, with the various tweaks that Stefano identified. nestedhvm_vcpu_iomap_get() is utter nonsense (it would absolutely not have passed review if I'd seen it before it went in), but untangling nested virt is multiple cans of worms, so I've put the name changes in as-are to avoid blocking the MISRA effort. The final two patches need a bit more consideration time. ~Andrew From xen-devel-bounces@lists.xenproject.org Fri Jun 30 14:22:19 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 30 Jun 2023 14:22:19 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557508.870893 (Exim 4.92) (envelope-from ) id 1qFF0o-0006VW-A4; Fri, 30 Jun 2023 14:22:14 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557508.870893; Fri, 30 Jun 2023 14:22:14 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFF0o-0006VP-6j; Fri, 30 Jun 2023 14:22:14 +0000 Received: by outflank-mailman (input) for mailman id 557508; Fri, 30 Jun 2023 14:22:13 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFF0n-0006Tp-7m for xen-devel@lists.xenproject.org; Fri, 30 Jun 2023 14:22:13 +0000 Received: from esa1.hc3370-68.iphmx.com (esa1.hc3370-68.iphmx.com [216.71.145.142]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 7ccedd97-1751-11ee-8611-37d641c3527e; Fri, 30 Jun 2023 16:22:09 +0200 (CEST) Received: from mail-dm6nam11lp2175.outbound.protection.outlook.com (HELO NAM11-DM6-obe.outbound.protection.outlook.com) ([104.47.57.175]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 30 Jun 2023 10:21:21 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by PH7PR03MB7170.namprd03.prod.outlook.com (2603:10b6:510:241::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.24; Fri, 30 Jun 2023 14:21:19 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606%4]) with mapi id 15.20.6544.019; Fri, 30 Jun 2023 14:21:19 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 7ccedd97-1751-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1688134930; h=message-id:date:from:subject:to:cc:references: in-reply-to:content-transfer-encoding:mime-version; bh=KUzQGhQA160ilr/+zbIMHz+WFjdOYWOPGjhySzVRxBc=; b=QNizFBJC2cz+mN6OcoLHqvmKBzZPqK3ILn/yjDW4cOZeGO8hpW/Zn3u8 im71ndVSa0UB/EZ/MjZixsnayKuYN+v83qF6wCzkdhZ7hmvGy9WuHI5yz ynLTEy+m0d9rVSHIedof0zW07Nq62R3cPCA89kb0xdBr7NZ8RZRrjXZfF M=; X-IronPort-RemoteIP: 104.47.57.175 X-IronPort-MID: 115169608 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:Y9rX3qB2V+c7whVW/+bjw5YqxClBgxIJ4kV8jS/XYbTApDh312MEx jRLWWGHPq6PYGbxfYgiPIq18xsP7cfXn9NqQQY4rX1jcSlH+JHPbTi7wuUcHAvJd5GeExg3h yk6QoOdRCzhZiaE/n9BCpC48T8nk/nOHuGmYAL9EngZbRd+Tys8gg5Ulec8g4p56fC0GArIs t7pyyHlEAbNNwVcbCRMsspvlDs15K6p4G1D5gRkDRx2lAS2e0c9Xcp3yZ6ZdxMUcqEMdsamS uDKyq2O/2+x13/B3fv8z94X2mVTKlLjFVDmZkh+AsBOsTAbzsAG6Y4pNeJ0VKtio27hc+ada jl6ncfYpQ8BZsUgkQmGOvVSO3kW0aZuoNcrLZUj2CA6IoKvn3bEmp1T4E8K0YIw/utmIlNJ2 qYjOiEDdUC7rcixg6ifVbw57igjBJGD0II3nFhFlGicIdN4BJfJTuPN+MNS2yo2ioZWB/HCa sEFaD1pKhPdfxlIPVRRA5U79AuqriCnL3sE9xTI+uxuvDW7IA9ZidABNPL8fNCQSNoTtUGfv m/cpEzyAw0ANczZwj2Amp6prraWwHqlCdxKRNVU8NZW2mPP701CCCE4THjmo6KwrxW5A9d2f hl8Fi0G6PJaGFaQZtfwUxCioXWD+AURQdNeEus7wAuQxbHZ5QnfDW8BJhZac8AvvsIyQT0s1 3eKksnvCDgpt6eaIVqN+7HRoT6sNCw9KW4ZeTRCXQYD+8Pkoow4klTIVNkLOKWyiMboHS3xx T+ipjUxnLgVgogA0KDT1VLNji+op5PJZhUo/QiRVWWghitmYKa1aoru7kLUhd5YJZudZkmMu j4Dgcf2xPwHCJiWvDCOROgLE6Ck47CONzi0qVduBJAg8z2F8X+/cY1e7TdyKV0vOcEBERfxe E7JsgpV7ZVOFHGrcaN6bY+3B8kwi6PnELzNVO3SKNxHYZFzdQqO1CBoeUOUmWvqlSAEkqwhO JHdbcelC14bD7hqyHy9QOJ1+boqzSA3wSXUX4L2yzyu1LbYb3mQIZ8VPV2PZ6Yj5ayFqQnc8 NFCH8KPx1NUV+iWSiDG+IhVLk0PJGJ9BZnyp8FNXueGLkxtH2RJNhPK6bYoeoggk6ELkO7Np yi5QhUBlwe5gmDbIwKXbHwlcKnoQZt0sXM8O2orIEqs3H8gJ42o6c/zaqcKQFXuz8Q7pdYcc hXPU5zZWpyjlhyvF+whUKTA IronPort-HdrOrdr: A9a23:TVN+9aglwUCD5FMHyRCiOevlKnBQXtQji2hC6mlwRA09TyX4ra yTdZEgviMc5wx/ZJhNo7690cu7IU80hKQV3WB5B97LNmTbUQCTXeJfBOXZsljdMhy72ulB1b pxN4hSYeeAaWSSVPyKgjWFLw== X-Talos-CUID: =?us-ascii?q?9a23=3Ak+PYpGqKdFZnFmLdGUJNPczmUcQoY17vy1iKGF2?= =?us-ascii?q?pB305cJe/ThyK3Lwxxg=3D=3D?= X-Talos-MUID: 9a23:rlh+1wuDUGIv+HjZ/82nuGtcaO5JsqSSJlkuzJddsuzfMnR1EmLI X-IronPort-AV: E=Sophos;i="6.01,171,1684814400"; d="scan'208";a="115169608" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=aeV1nM/KPu+Q3xN3CtwHP6HgJJIY95OHpm/i90J30zBk1pYVUM4iO/nOdcEOEFnB+/7KYlniENs52lUwUzcgotcUNQAiQ525I1JskKS1HpCBllbpbdpScQkGxZ5mmNS0tTTlaHM4jWm6RCbncvH/3l6J57vuuip8SoBeNEQcyvCuzVjdzv8n9WK3Dj4MOW7FAdAZwuZieZzR7tuFOy9TJ+XMa1FBBVWAY+7UnJn0ddq7SG5EN8/e/GWbIfl3Jw9ynNXHFnCAwnOgnpYfUgqUNHJIfIuEWFLB/0N+CW0P5zU6aB4zz6c0mrzJUY8+mPoH+dCW2tfDBIbg3X+xD7V13A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=KUzQGhQA160ilr/+zbIMHz+WFjdOYWOPGjhySzVRxBc=; b=M/Q1tj9Tp5X9d0s9CFufW4fwS65/nGxrmzR0ZWeQ6j4zR5BdcLWNMOGURvtpqc6+kXqf4s51rDGOxQ5BG+ivcx7X93zxSMECJTpdNl3kQiwVCCSMl7TsvPKSYarSrREWTJbM3wtsjFxlXXv60Yy5jdcU2mjDIqVih5BG4DMvEQoZN0EtcgUCfaEiW/hAzcGjZ6UuuzKYxmkYIbkbbbOchbaSP6h4dSDoV0X/vuqNGzarDTcE5hXQ03w6TFgz8PuJ0Nd6kr7SaTKMS22YX5JkiGJJDLy2Ei6h9GcgrxVG1RzkkQS2pftQMN0mIVVBWs4OXdM5QWPgb9oskpMKbpt7eA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=KUzQGhQA160ilr/+zbIMHz+WFjdOYWOPGjhySzVRxBc=; b=ra7o6YnPougkCVgt52MDM+vpckADQebngpuIALRlTjgD9vRwXNU28WPTtO+gv8u1LSSpiQ+2uSKi21bZU7BiWLUDgwZhZYbBPaB4OSbTRKESOIr/N2MJIaGPx1Vcz1ZsYzyVK3m6nLxG2tV6QZ1yAuAxkgQFmP0jh2dtlZ9Unt4= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: <80c60246-bb4d-c8cc-1f96-282087b716b1@citrix.com> Date: Fri, 30 Jun 2023 15:21:11 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 From: Andrew Cooper Subject: Re: [XEN PATCH 5/5] x86: make parameter names of function declarations consistent Content-Language: en-GB To: Federico Serafini , Stefano Stabellini Cc: xen-devel@lists.xenproject.org, consulting@bugseng.com, Jan Beulich , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , Paul Durrant , Tamas K Lengyel , Alexandru Isaila , Petre Pircalabu , Jun Nakajima , Kevin Tian , Michal Orzel , Xenia Ragiadakou , Ayan Kumar Halder References: <5ee57d7bcd79daa0314f182ecb73e1eb6d8ecc03.1688049495.git.federico.serafini@bugseng.com> <5ded390f-137a-0604-c78b-4521e1daccc6@bugseng.com> In-Reply-To: <5ded390f-137a-0604-c78b-4521e1daccc6@bugseng.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO4P123CA0031.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:151::18) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|PH7PR03MB7170:EE_ X-MS-Office365-Filtering-Correlation-Id: 762e45bd-f319-4423-8fb6-08db797545a6 X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: +kueJvPXJBjm6EtHOHnT0z5t+uQQzEhMPGC1IyX167nX3OCgitYvZXulkLdwemNlQ8rovTYUUmHpFK0ZYpsFE4S/kz9WqIpxmu2de23xUbTzVC+KTozweXaN1kLlG0kX+7rb4vnLbWFESuMWrFx1U/0bgVQOOGvsWB2pRgiU7yQN+nZ916Ki+J3TGUk3+cvZpdpKgam53pD/VBkqUrSJW9ujb4aK3Uk4ImxHUWNtQ9S7xG7A2k8NrTR7HcSfimCgjGPq4B06E2ulCGMeEuO3u6M58PzLDVBmSD54eK3jpZPb3X7C7cBpeEs0iUpH/6Ry1pTP705BCdFNimIAanTJMVXl/H22F5GclICfpiHKwF3bF21lJPnWYFCT28NRT5dU2mjHuLjEamkJbCgqLgAV+oyjM/Vc3kOuicSgPAiQls42FxlZd+1t5BoEJlkNrl36Gf+D8suxna3+izF8nUif3kA1OTqZYnyCzB9NB/7hrzWblFK1u91zaSPeKrBum24dpJxuyBBmGm8k6SJIl/nsi3gyv8eDNkfjn7No3tvlLgThcMwPiDv4kDteiE0raLmyqRWNf6MFMij9EEEE6FiRUro9sdVKKrCcZn9UJjjGuRiWV+OpjOSOh7sz7ijSbYb6Q0tkN2cAGACeAdE1LmlKMQ== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(396003)(136003)(376002)(366004)(346002)(451199021)(7416002)(5660300002)(31686004)(66946007)(66556008)(4326008)(66476007)(478600001)(316002)(36756003)(8936002)(8676002)(2906002)(6512007)(6666004)(26005)(110136005)(54906003)(41300700001)(31696002)(6486002)(186003)(53546011)(6506007)(86362001)(82960400001)(38100700002)(2616005)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?Y1VUTkZUS0R2VllLN0FYbVJxSHJHbjRST3lwL05OTmQvd1ArOWlWSUM3UHAv?= =?utf-8?B?dVdPTkpNWG1FRCtVbnZyazQ0Vi9QSGRIRjAzbW00ZHlsUkZLc0NuZVVwUVF1?= =?utf-8?B?ay92bnptUktPdjAwUlhBQnpoRVFqTjFQR3BDOStid25Qam5RMjlkNlZ5VS9n?= =?utf-8?B?OVQ5Ym43azFlR0lsRTgvM0hQQldlU05wbFVxbmQ2VWhBb3hLYXZSQSt2MERk?= =?utf-8?B?dDdvNDk4Q3pPYmphOXJleUlZb2Q3Y0UvUzR6WUw1Y0d2YXhmVzYyKzRsYkw3?= =?utf-8?B?Zm56ZmVCc0w5ZWxDbExZRjlwRzJzdmc3VVUxTngxRndzTHBQRFNuWWs3THNa?= =?utf-8?B?WDlieEs1c25ydDBNM01YYnFwM2doYXZLYU1LT0liMlM4Yk9OZWcvL1hBOHRC?= =?utf-8?B?U3ZSQmJNUEVIc1ROYmE1NisxeWhOYnhybEZab1FqaktIMUdpbitNSFJTbkZZ?= =?utf-8?B?cTNxSGw4SHFHZHkybmZtd1lVS0x0cTEzaWlYSUZ0QUhjRHdHcERIektvcWx5?= =?utf-8?B?dm9VSTRiQU10cUxYMDY3VXNkVERSaWxSem54MEhwN0drL0oyR3dETGYxNy8y?= =?utf-8?B?dE1GbEZWRGJoL2xCaHp6VGZSZkNaY2pTWTRUc0hlSTVYRWlCbGFHVzVzTXJy?= =?utf-8?B?WmpRaXlZTTBvTTFFOTBqOGxtWmhyRTNrNURLZXhSUzVnMjZNcXc3OVlZZy9q?= =?utf-8?B?V1VXMnlybmtGM0dybjVRSWR4ZDMvTDJiODZWUzQ0S0EyZkMzMmxhRm1DLzBx?= =?utf-8?B?RHcrdHlJclVWLzI1M2tUS3YxWnVqQmUzNWRZNW1iRll3Tmh4YzhtWERXU0xV?= =?utf-8?B?bWM3RVNVMzg4S1ZXWVRuUDRaTzVDTmo5N2piOUhINEdrWlBPVStqYWh3Sjg3?= =?utf-8?B?dnRUUEkzbHI1a3NTS1Q0cXJ3K09Tc08za09oV0ZBanhqNFB2OHZoanZZTldG?= =?utf-8?B?ekRHS3V3eFhKUVY0ZTB1bVltTHFVUngxdFZyWGlVL0FsWDhwY1VLRVB3czFQ?= =?utf-8?B?bVVYbmlNQks4MUxRSTVZMGFsK3Y5STRmczZMYmxIcFB6ZG83dnJVNkR0Vlow?= =?utf-8?B?RkFXQXRFaG84OGpuaG8yZXBoUFRNK1FDN1BpTW90TnNMekszTnFQLzdHaTVW?= =?utf-8?B?VmtEd0ZGZXBuOW9DYVhxa2ZDQ09wSTBOcFREWUVlZWFIcktpQzRTd0w3TG9E?= =?utf-8?B?cHJJRmNNelV0S2U5djFQcHZja011RzcyWXZFOGRFR0NTNloxZ3FrMnJJaXFx?= =?utf-8?B?NjA2UlFrVUI4QXhVVGY3WlV4UDM5UktycFVWNjAvTWZISHlLaGhXM0g5SGd2?= =?utf-8?B?N3hWaE9TYUpLYmlDWG1qd3A0aFJNRERHY1ErU29Cb0d6cnpyTGl5Z1JQaCtn?= =?utf-8?B?ZEVJQVkxQ3VFT200OUp3K29NWUovNTlTRWVEN0ttOTRjR094TitoUGRGWlZO?= =?utf-8?B?UDh0bVFMaHAvaCtaU05UTndUS08rMk5la1dHbnZXeWlOY0VreFNIR0tvaFdX?= =?utf-8?B?d3BlT1o3ek9WRGVob3pReUREQm43WkRXdXFQZDdGM1BVZ2g1aHFMSmZWeU54?= =?utf-8?B?M1U0Q0xYZUVZNzlyV21iVldsRXpmL0F3RVJza1l1SnpZdlZ3d3ZtL0R1SWlh?= =?utf-8?B?WVZKVUs3WGFVVk1LNjFqeTNudkVOY25QNDRjRURXRE42MHdENnlGVUpqTVEv?= =?utf-8?B?WHNMODVhd0FsUk13RGpqU05aYjB6a3FKQ2MxYnVRdFdlc1NiRmRwYXB2R09P?= =?utf-8?B?bVphQXhwV1ptR2paQUNzRkV4ajVad1MyRUpRUWVVcmFFMkxrV2krMzdmVUxp?= =?utf-8?B?U3RFbXBFbnpuc04wV3FLY1ZZdFdTOVhmYkM3aWJJZ1l3a1J2N2tuVzljcy90?= =?utf-8?B?ai9QdUw1T0lrWWdidjdNTHdhVDlqZkwrS1NvT1prdG9UNTg1RHdhTUY5N0xC?= =?utf-8?B?R2lBTWNveHkrd1ZPZWlVeGF6bHJ0RE9sQk9Nb202NnBNVGZIbFhqd0d4VjFO?= =?utf-8?B?OFdaR3JsSnJMWmxYMEgrNmRPSks2MzJzcWR4OHhNZUJueThWMnYrcUZReWtn?= =?utf-8?B?cDhzbVlGTGV4TFN2RHIwaXRwS2QwRnpnNGNrVE44WVUwRVBhNnlKeFdiK3BJ?= =?utf-8?B?M0xnK2N6bWk2L0ozbHNmV3lkWHJKNTFVQ3NmaEwyVkdJbTdkUVo4bldIMU5m?= =?utf-8?B?OUE9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: =?utf-8?B?cHZZeGE3c04wMmJ0SDJvN1RLak9nMDdNaFZBV2FaV0VFam44VHFwS2ZNQjV0?= =?utf-8?B?WEY0WTNHMjRKZi9OSE9ybklsOWhrNTlFbGNta2NMQ0Y2SzNGNVpYZStZb2JT?= =?utf-8?B?bzRwR3JUTXphRnBPSHdUY0hrQWhlYjl0Skt1REtlMDBUNVBRVVZKOWs0MkU5?= =?utf-8?B?QW42UWFjbWxPRVAzZWJVZ2xHQndIRk5NT3NqUEhFYkYvaUo1eGVzK1VuNWJs?= =?utf-8?B?cXNNWDZ5a2xPRmI0UmlNU1FUbDFMUURaT3F5STU0aDYyeGk4WEhlejBaQldv?= =?utf-8?B?RkpCT29haGNQM2ZDZ09UQ0RZVlRma05zZ3N4QUVGazVTT2RuWE5YU0x1dTNr?= =?utf-8?B?cWYyZG4yZnJtWlgybTlSMWd1NUFVQUxtTWNEUXJmWTJLSnBSejIrTkpIcU81?= =?utf-8?B?Z1dsakNQbjdWZzdJSEVhZ2szTStBUVIyaW54ODRSaWxUQ0VaWlBIQ0NpRlBn?= =?utf-8?B?VWJJNFpvR1pyK2thNWNPVzFsSk56TmY2VHorUEdMWFlENFY3eGhYQnQ4aDJL?= =?utf-8?B?Mm95Q1QzQnNIMnV2VlZOUmJ5OHB3c0tpM1MzcVRiTVhFYjZOejdtcmtkSS91?= =?utf-8?B?aWZyVXVPQzhobkZnMCtOUHhKL3ZvMG4wVFBNa0pxeUdITjVnc0tDYjhkNEN6?= =?utf-8?B?Wm01ZWV2OTA1eHUzRHdtaHRObmFHbHkvemF4cjFYK0swMEJCdjAzcTJ1aXZi?= =?utf-8?B?UG1IZWNVdnBoK2gzUnI4UTZGNnJIQVVPd2ZtcU9wajFUTmN4d09aT2dsSjE4?= =?utf-8?B?VE1zemNOaWlOQmc1cnhZY1FDSi80TEh1aDNxZlZxQ2ZrV0NEZHRkZ0xjeW9w?= =?utf-8?B?WDBISGRUUm40NzA4UGpIeVFBWk9Ja3F2ZEx0dDExWWRGQnV0cjZ3RXYwWEpS?= =?utf-8?B?dHQ0S0xFYXkwb3ZldnNiRUh4VnF1NktuSFQzWXFqME1LV1FyYk00OFVrUk4x?= =?utf-8?B?a3lFRmU3ZmhtNG5xWnNobHpjQ0R5ZU9ZR1R2aUxaRHJnUi9nYWgzajRDM2dX?= =?utf-8?B?eTc5UEhyQ2dQWWxpNExrWEx0ZTlQNHlqOXVqdzZUZVN6Q2ZBd2NOK2IxWkVq?= =?utf-8?B?RXdQdDNsenQ5L2lhMHcwU3Z1TWFnTGNGYVpHWkNSNXlUSHg5MFNYYlRQTEhl?= =?utf-8?B?UG96SW5xWVdhRnFOM01pS2FSc29rNFpSMHB1TERNU2s4ckVieUpLckhSbDdX?= =?utf-8?B?UXRpN1JoMHgrVk81ZGR0clVJZGFKUGVRaERVVGgvMnFFRGQ1eHA1MldyUTlO?= =?utf-8?B?aU96QjE2MjNqWjNNaEZvajFTV1RQamtSNFBaZzdVTnpZV1VRck8rNTFvUGh0?= =?utf-8?Q?tr16FtKWsuZpB9c/W+ygSSPxy2a1PKuBg1?= X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 762e45bd-f319-4423-8fb6-08db797545a6 X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Jun 2023 14:21:19.2976 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: SjSAYVoeNAIBRGlPtC+SJWpC8vezIZTLhu/FWUCMwWWKYB/lUiuqMBwXHG7L5VHZyTKNhenQMr7N6T2lc5MMfFB/NABxphdWg7InomyI+sk= X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH7PR03MB7170 On 30/06/2023 8:36 am, Federico Serafini wrote: > Hello Stefano, > > On 29/06/23 21:47, Stefano Stabellini wrote: >> On Thu, 29 Jun 2023, Federico Serafini wrote: >>> Change the parameter names of function declarations to be consistent >>> with the names used in the corresponding function definitions >>> so as to fix violations of MISRA C:2012 Rule 8.3. >>> >>> Signed-off-by: Federico Serafini >>> --- >>>   diff --git a/xen/arch/x86/include/asm/hvm/vmx/vmcs.h >>> b/xen/arch/x86/include/asm/hvm/vmx/vmcs.h >>> index d07fcb2bc9..24bf409d8f 100644 >>> --- a/xen/arch/x86/include/asm/hvm/vmx/vmcs.h >>> +++ b/xen/arch/x86/include/asm/hvm/vmx/vmcs.h >>> @@ -656,10 +656,10 @@ bool vmx_msr_is_intercepted(struct >>> vmx_msr_bitmap *msr_bitmap, >>>                               unsigned int msr, bool is_write) >>> __nonnull(1); >>>   void virtual_vmcs_enter(const struct vcpu *); >>>   void virtual_vmcs_exit(const struct vcpu *); >>> -u64 virtual_vmcs_vmread(const struct vcpu *, u32 encoding); >>> +u64 virtual_vmcs_vmread(const struct vcpu *, u32 vmcs_encoding); >> >> Shouldn't the first parameter be "v" to match the definition? >> >> Or is that a different MISRA C rule? > > This is a violation of MISRA C:2012 Rule 8.2: > "function types shall be in prototype form with named parameters". > However, I can propose a new patch version to fix it as well. As a general note - if you need to make multiple changes like this, it's far better to do them as a single patch. The end result tends to be easier to review, and it reduces the textural dependencies between the various patches floating about on list. ~Andrew From xen-devel-bounces@lists.xenproject.org Fri Jun 30 14:23:27 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 30 Jun 2023 14:23:27 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557520.870928 (Exim 4.92) (envelope-from ) id 1qFF1s-0007NX-US; Fri, 30 Jun 2023 14:23:20 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557520.870928; Fri, 30 Jun 2023 14:23:20 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFF1s-0007NQ-RL; Fri, 30 Jun 2023 14:23:20 +0000 Received: by outflank-mailman (input) for mailman id 557520; Fri, 30 Jun 2023 14:23:19 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFF1r-0007Mr-DK; Fri, 30 Jun 2023 14:23:19 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFF1r-0008CW-B2; Fri, 30 Jun 2023 14:23:19 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFF1q-0008G7-TL; Fri, 30 Jun 2023 14:23:18 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qFF1q-0005Mb-Ss; Fri, 30 Jun 2023 14:23:18 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=SbWFCvt9MEN+BupVdvyZFghxL5E1BR7TtyCoDrieX7Y=; b=rRfF5TTjtxQtF9307a6moNaLlo QAExluGDVY0YZoggGo1t+wfEsygrNuzIltmFolQmJSvmkLoAb60h05ySI+GfYJkqkdPVgc/B1WIwC j1gQngYhS1WGOyDwBStaAqmgYLDntOeM08E17fMbrCUGlU4WF77EIC7QGfIkMzP2X9Bo=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable test] 181646: tolerable FAIL - PUSHED X-Osstest-Failures: xen-unstable:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:guest-start/debianhvm.repeat:fail:heisenbug xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking xen-unstable:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: xen=6aa0c18062609cb448d292668a81953a58ce1e95 X-Osstest-Versions-That: xen=6c32a08e2b7e6d796081ed84c84ad682bcc4b3a6 From: osstest service owner Date: Fri, 30 Jun 2023 14:23:18 +0000 flight 181646 xen-unstable real [real] flight 181655 xen-unstable real-retest [real] http://logs.test-lab.xenproject.org/osstest/logs/181646/ http://logs.test-lab.xenproject.org/osstest/logs/181655/ Failures :-/ but no regressions. Tests which are failing intermittently (not blocking): test-amd64-amd64-xl-qemut-debianhvm-i386-xsm 20 guest-start/debianhvm.repeat fail pass in 181655-retest Tests which did not succeed, but are not blocking: test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop fail like 181632 test-armhf-armhf-libvirt 16 saverestore-support-check fail like 181632 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop fail like 181632 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 181632 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop fail like 181632 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop fail like 181632 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail like 181632 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop fail like 181632 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail like 181632 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop fail like 181632 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop fail like 181632 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail like 181632 test-amd64-i386-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-i386-xl-pvshim 14 guest-start fail never pass test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-i386-libvirt 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-armhf-armhf-xl 15 migrate-support-check fail never pass test-armhf-armhf-xl 16 saverestore-support-check fail never pass test-armhf-armhf-xl-credit1 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 16 saverestore-support-check fail never pass test-armhf-armhf-xl-rtds 15 migrate-support-check fail never pass test-armhf-armhf-xl-rtds 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-check fail never pass test-amd64-i386-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 15 migrate-support-check fail never pass test-armhf-armhf-xl-arndale 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-armhf-armhf-libvirt 15 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 14 migrate-support-check fail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-check fail never pass test-armhf-armhf-xl-vhd 14 migrate-support-check fail never pass test-armhf-armhf-xl-vhd 15 saverestore-support-check fail never pass test-armhf-armhf-libvirt-raw 14 migrate-support-check fail never pass test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail never pass test-armhf-armhf-xl-credit2 15 migrate-support-check fail never pass test-armhf-armhf-xl-credit2 16 saverestore-support-check fail never pass test-armhf-armhf-xl-multivcpu 15 migrate-support-check fail never pass test-armhf-armhf-xl-multivcpu 16 saverestore-support-check fail never pass version targeted for testing: xen 6aa0c18062609cb448d292668a81953a58ce1e95 baseline version: xen 6c32a08e2b7e6d796081ed84c84ad682bcc4b3a6 Last test of basis 181632 2023-06-28 21:38:36 Z 1 days Failing since 181636 2023-06-29 07:32:05 Z 1 days 3 attempts Testing same since 181646 2023-06-30 02:11:47 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Ayan Kumar Halder Federico Serafini Henry Wang Juergen Gross Julien Grall Julien Grall Michal Orzel Nicola Vetrini Stefano Stabellini jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64-xtf pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-prev pass build-i386-prev pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-xtf-amd64-amd64-1 pass test-xtf-amd64-amd64-2 pass test-xtf-amd64-amd64-3 pass test-xtf-amd64-amd64-4 pass test-xtf-amd64-amd64-5 pass test-amd64-amd64-xl pass test-amd64-coresched-amd64-xl pass test-arm64-arm64-xl pass test-armhf-armhf-xl pass test-amd64-i386-xl pass test-amd64-coresched-i386-xl pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm pass test-amd64-amd64-xl-qemut-debianhvm-i386-xsm fail test-amd64-i386-xl-qemut-debianhvm-i386-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm pass test-amd64-i386-xl-qemuu-debianhvm-i386-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-i386-libvirt-xsm pass test-amd64-amd64-xl-xsm pass test-arm64-arm64-xl-xsm pass test-amd64-i386-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd pass test-amd64-i386-qemut-rhel6hvm-amd pass test-amd64-i386-qemuu-rhel6hvm-amd pass test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 pass test-amd64-i386-xl-qemut-debianhvm-amd64 pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-xl-qemuu-debianhvm-amd64 pass test-amd64-i386-freebsd10-amd64 pass test-amd64-amd64-qemuu-freebsd11-amd64 pass test-amd64-amd64-qemuu-freebsd12-amd64 pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-i386-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-i386-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-i386-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-amd64-i386-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale pass test-amd64-amd64-examine-bios pass test-amd64-i386-examine-bios pass test-amd64-amd64-xl-credit1 pass test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 pass test-amd64-amd64-xl-credit2 pass test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 pass test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict pass test-amd64-amd64-examine pass test-arm64-arm64-examine pass test-armhf-armhf-examine pass test-amd64-i386-examine pass test-amd64-i386-freebsd10-i386 pass test-amd64-amd64-qemuu-nested-intel pass test-amd64-amd64-xl-pvhv2-intel pass test-amd64-i386-qemut-rhel6hvm-intel pass test-amd64-i386-qemuu-rhel6hvm-intel pass test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt pass test-armhf-armhf-libvirt pass test-amd64-i386-libvirt pass test-amd64-amd64-livepatch pass test-amd64-i386-livepatch pass test-amd64-amd64-migrupgrade pass test-amd64-i386-migrupgrade pass test-amd64-amd64-xl-multivcpu pass test-armhf-armhf-xl-multivcpu pass test-amd64-amd64-pair pass test-amd64-i386-pair pass test-amd64-amd64-libvirt-pair pass test-amd64-i386-libvirt-pair pass test-amd64-amd64-xl-pvshim pass test-amd64-i386-xl-pvshim fail test-amd64-amd64-pygrub pass test-armhf-armhf-libvirt-qcow2 pass test-amd64-amd64-xl-qcow2 pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw pass test-amd64-i386-libvirt-raw pass test-amd64-amd64-xl-rtds pass test-armhf-armhf-xl-rtds pass test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow pass test-amd64-amd64-xl-shadow pass test-amd64-i386-xl-shadow pass test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi pass test-amd64-i386-examine-uefi pass test-amd64-amd64-libvirt-vhd pass test-arm64-arm64-xl-vhd pass test-armhf-armhf-xl-vhd pass test-amd64-i386-xl-vhd pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Pushing revision : To xenbits.xen.org:/home/xen/git/xen.git 6c32a08e2b..6aa0c18062 6aa0c18062609cb448d292668a81953a58ce1e95 -> master From xen-devel-bounces@lists.xenproject.org Fri Jun 30 14:43:03 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 30 Jun 2023 14:43:03 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557539.870985 (Exim 4.92) (envelope-from ) id 1qFFKi-00025C-2S; Fri, 30 Jun 2023 14:42:48 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557539.870985; Fri, 30 Jun 2023 14:42:48 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFFKh-000254-W6; Fri, 30 Jun 2023 14:42:47 +0000 Received: by outflank-mailman (input) for mailman id 557539; Fri, 30 Jun 2023 14:42:47 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFFKh-00024y-7R for xen-devel@lists.xenproject.org; Fri, 30 Jun 2023 14:42:47 +0000 Received: from NAM11-BN8-obe.outbound.protection.outlook.com (mail-bn8nam11on20600.outbound.protection.outlook.com [2a01:111:f400:7eae::600]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 5f77baa8-1754-11ee-b237-6b7b168915f2; Fri, 30 Jun 2023 16:42:45 +0200 (CEST) Received: from SN6PR12MB2621.namprd12.prod.outlook.com (2603:10b6:805:73::15) by CY5PR12MB6275.namprd12.prod.outlook.com (2603:10b6:930:20::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.19; Fri, 30 Jun 2023 14:42:41 +0000 Received: from SN6PR12MB2621.namprd12.prod.outlook.com ([fe80::8018:78f7:1b08:7a54]) by SN6PR12MB2621.namprd12.prod.outlook.com ([fe80::8018:78f7:1b08:7a54%2]) with mapi id 15.20.6521.026; Fri, 30 Jun 2023 14:42:41 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 5f77baa8-1754-11ee-b237-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=g+PKbOF/raW0pKA8xo5FTUAWCfrhMKi7eM+Xrp2A2STTnltXDX8hqcTVXMTq2xc3qOv3rWIV415aUhCnqOvLWk9rR9bIkwyGRQKya56X9bnPXH3L9rJFsUmrrOTV0seEkduYuWZ4mxLnVWbp1dByRCcMSRgtkI6L3xKPlMuG1wemddM4F9eanaeZ4aZYUE3v3lWrIq7RwLIzWHiqm1RHd5THc3cWKQzsGEBww3xq7bPbzTuCWSvk4/hJYJL2cHFIsmeWdImGIcULr1u5UdsqFDfUarO34lR9GbvRf5ZDzTk2/bdGA5gcMNtxLic8I/Sn6gfMSfGJJX0+FckLVyy3ag== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=mKbdztIOnUDg8PyswX3ozHuq8osquxcfvbKsTLeLCcY=; b=W+q/EDuxTLR9W5Txpt0+3E6CstDjJ4iU6c945tSsZYmXIE88sr6X9L0v43uT7QbMiJla6wORf7MqDg+yCc7sDopNjLArNMrD/m9Pv7+j0wqni0PGPVH0C7ejl6eO1OOZmAaHvMzNktHuDKZtjFqZ5mmCYG8jYKBylzFZ91ik8PcFcTbdnLHsaLt2p5PwaW8a2nEkiu26+Jz94Pmfh0AvxTzcGy1eewIa4hUB11FWjcGc6pUsGKpBj+cFYnWIh81zy+IVld3uET5F+sEdix9UKuede2vnl6b3MALgSa2v1CPj4bhOIkPZGFeLkADt2HFj65N5OsnQTN2LdqdWEKtziQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass header.d=amd.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=mKbdztIOnUDg8PyswX3ozHuq8osquxcfvbKsTLeLCcY=; b=jtD0xgOyj+4mS42dZ8xEuICbLCNNwQNLxYL0aT5xN7SLlzwFmW5LqoRIE+vDuF/YQ6rs1MCDIXhgynymY+FWQegP5VHVSgnNWGZPOyzDfLWA4XCoGl3wZCf/My5oq3xT1IHkpkz9w1Nhn9RR/OtHwBRippA8NtQm1/C0e75WQ4Y= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=amd.com; Message-ID: Date: Fri, 30 Jun 2023 15:42:33 +0100 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v3 31/52] xen/mpu: make early_fdt_map support in MPU systems To: Julien Grall , Penny Zheng , xen-devel@lists.xenproject.org Cc: Stefano Stabellini , Bertrand Marquis , Wei Chen , "Volodymyr_Babchuk@epam.com" References: <20230626033443.2943270-1-Penny.Zheng@arm.com> <20230626033443.2943270-32-Penny.Zheng@arm.com> <9530f9f8-795b-783a-bc74-e30a3c5c2fd3@amd.com> From: Ayan Kumar Halder In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-ClientProxiedBy: PR1P264CA0113.FRAP264.PROD.OUTLOOK.COM (2603:10a6:102:2cd::14) To SN6PR12MB2621.namprd12.prod.outlook.com (2603:10b6:805:73::15) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SN6PR12MB2621:EE_|CY5PR12MB6275:EE_ X-MS-Office365-Filtering-Correlation-Id: dd41b5a3-7ec4-4f70-d4c6-08db797841f6 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 38n8dr+nfDN74uYDFSMe+GHtpZmttVesMGLD4dxuaXj4iprFmbJ+a8DCeQPF/SLJcQpw08dV8tNNernQU2VxsEDRUr0xElanJTx75w6EH1Pl2JGV7bka7mWPJmzElj/0hKLuNKkyvPmz1NLaJ7708OcYIicDvX/BDA0tNuTHikxQ5cvSofch8j0deFgP+eOCsHJ4xwT+8mnqYkjr2lez10j8e52eHLDCKsAV7N2iFwtxhxfXYynUSrU9uhAYNdDTdkDiZ9lnULbR6NSLCjeYAJqous32y+dgLXRF5BNr2OMPxVwmJAu9Mqb3+Ayi/TFvQggbrUTn+Yawjye5VtFY1RQQ3M1nk6uR9ODKuwJjY4IDS6F1qS60R8wGPyZTYhXqeDSe8pbYdE3oSak+YNQYFjFiSSCtSb5MbYHtiIc7ceJHcPLDxRYYNR+ucV6wgPfMF7asX0bBybeQwCpOlw+GVIatjkBDk0wofqXietr1/ZOzKiX0/rwgrrklGNxxURq2jJk7GL34cFE/GsmJmQlV0m/8E+/uRy5pbr6LF4P+DLMOJn5us1qeGQ0rcHRB5LiC4gBiWTzdPnPC0tuzcuk1clk7s4KUZCQuthIpA51uu592LVr+x5FcwD02iuyG4xkr+TLntrczUYdeiEQF+OHCvu+EQtr/4S5Pm+A80PZmrHY= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SN6PR12MB2621.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(136003)(366004)(346002)(376002)(396003)(451199021)(66476007)(66946007)(66556008)(4326008)(41300700001)(478600001)(8676002)(31686004)(8936002)(54906003)(110136005)(316002)(6666004)(83380400001)(6486002)(5660300002)(2906002)(53546011)(6506007)(6512007)(186003)(26005)(38100700002)(36756003)(2616005)(31696002)(21314003)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?a251NGJ0T2lsRVRyR04ydUVuN1NWL1VhYU1ZYWRuU3NGdm5iZGF0Q1hjV2dG?= =?utf-8?B?Z2pTOFRxUmxsaHRQWEYvWCtVbTlWZGxBWkE0MFFscExqMU1vcjlQcXF2UFZW?= =?utf-8?B?YjRwNEpxNVhGWVVOYy82em5xSGNNUy9SZFFVWUtTb3dZc2ZTQnJXa0JBRHlC?= =?utf-8?B?TlFqNTA2YjRveHA5aDdIWUhNL2kzSHBrK0JZU2toVXlraGZHVmpITFRkNVEr?= =?utf-8?B?QkJkTUJpU2xHRVE1cFFpbXR0cm9rOWNQVElYQ3FLdGRnQng4VTlKR3NtWU1w?= =?utf-8?B?OFFJOVR6RndGMkQ1R2tLY1lNK25MUFI0cGc0TkRsZGRQdnMwNnhrbCtCSXN2?= =?utf-8?B?Mnd2TXVMKzN1a1hJOWdjZlZKczlBanhwQlc1VHZxcWgyaDlTY01DY2dmdzRn?= =?utf-8?B?dWc1eCsyWnJsNEt6NG1TWHVDa2ROaURuaW80bVgzZ1plV1RKS1BDSlFnZ3FV?= =?utf-8?B?M2NSK0xVcjlIeUo1aXZlKzNPYVB5TUxvUzVodUJkMFZHK3hsVTdzVjgvV29p?= =?utf-8?B?aVVaRitaUTZVelo4QTVIcU5sdHdwWXNtZ0VyMDBlSW81NkxyRDRlN1B3ZTdw?= =?utf-8?B?cSsyVU5JV3VaUklpdGc0L1ZrL3N6UmlqcWNlbENnTnBnV1ZFMjBPR2U5WHdz?= =?utf-8?B?RFZjb1MxblNZT3BTSWlyYUwraGR0V2xyVTB0d3lTZmNsM01mRU1kbGllQWRS?= =?utf-8?B?QUlCTkx5M243bDkrS01ERTl2c25qMG1CL2FkSUo4NHhXRUJHejJxWXV3U2dH?= =?utf-8?B?SVpXTVVRUVVsUU9iRVl6bG4ySTNzeGlhcmhoZEhOS1NPd2tsVHB4R0JhWG1R?= =?utf-8?B?L0haOHAwTHdSNVFnSHdOYTZqUnRjMFJ5WCtDN2E1WWtGMmhiMUZnaVVKNklG?= =?utf-8?B?NWxiSGtSMlovRmZyOEtVNHg3bm9uMkQvS3pVRHZzandENXM5RWdDOU9QR0dH?= =?utf-8?B?d1lGOHpLYnRNN2U1ZzFTNWZJNlJVTWN2czZ2eHpndksrR1FjQ0pOWGtFRFE3?= =?utf-8?B?T1MvbXhQZWVSOHhQSk5Ta1NVeXVVdmhVVHorK2s2L2thSkY3S09vREZMeTVC?= =?utf-8?B?OHZKR25tcGhnM1QyYm1ZT0pnRjlOSXhXOG9lbExiblgrZzJ1TlRrQ01LekdX?= =?utf-8?B?eXJxalFMMTU2ZWpLSWluNG1hT2pWTUV1ckdNZ3F0Sm1YMmtKN1FWdW5tK2My?= =?utf-8?B?WkxpK2xIbXR1TUl3YmJhenV6SnV4UHhkMWptekJpUVlOMko2VngxWU0xSDgv?= =?utf-8?B?SlFxemdidUJTV1JpUkw0eGgyWC95c2kxcERQKzdMQjlSWEVlVkFEN2tnby9u?= =?utf-8?B?dFRoL2dWVnNYczRyeUxnK1lGb1l1eFFxTUE0cTBoeHZ4UThsd0NXNERQek9W?= =?utf-8?B?U1U0Z2xhbWw1N3NJY3dBdm5ydjZheXl5OGROOU9MT1lCSXEwUTZad1NYQk1I?= =?utf-8?B?TjYwSTdFT24zK0NGamd5bnY2Nmh1bUhqWmpvcStRT2ozMzFZVWg2dCtLVFZ4?= =?utf-8?B?NlRXSE1PMU1HcmhCVU5rekZ0ODBuUkhvR05uNVV0SkdiSCs2OC9aSmJuZ2x6?= =?utf-8?B?eWdvTWl3VVEwWVJGVnpLTFhKY1JjTnAxR080cWJEZkxHdStwS0VVZDdRU0dQ?= =?utf-8?B?YjN2WjdKOEF0LzlLRGhMNUlManVvcmR4V01DWCswVWUzc0F1d0JQQXBGNzQ1?= =?utf-8?B?WEMxdDB3MVp6UEtyRUNEcWhWY2lvTUsyN01pSHNMaXlwdnJNeXVFcmhrRlBD?= =?utf-8?B?MEdHOW5SemVIV25ENDBMSnVaOFF5MkdFSEFXWmZxbEJ4cVh4QXhxaGNHdGlK?= =?utf-8?B?Q2J2aVJ2YlY5VVhvenE2MDk4TmdnQy90dExteEVrMERCWUplTEZ4Z2J6N2gv?= =?utf-8?B?dXFlQXdrL1FsR3Z3N3BHcDhoY0RNYjcrcjRnVXI2akhQNXYrY2pwNGwrVTEr?= =?utf-8?B?U0dGaWJBb29UTlVrS1BoT3RoRHBmNThKT1ROVDZiU3hSb050WmVBZWNVcklh?= =?utf-8?B?ak82WFo2ZzgzNWEvQ25zQlQ5RXZqNHdPUFo5eGN2TXA2VDg2YjVnVDAvazRy?= =?utf-8?B?RGNjY2U4YW5GQ0pndmFNNDVINUUyV3VhbHlRTFlpcVNCRWU0Q0xUMWluS2Z6?= =?utf-8?Q?Q3onn8WvwfXOt3nJpYBQlDLV7?= X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-Network-Message-Id: dd41b5a3-7ec4-4f70-d4c6-08db797841f6 X-MS-Exchange-CrossTenant-AuthSource: SN6PR12MB2621.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Jun 2023 14:42:41.5459 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: mxGbJ6hLiZ6+M9MPaPvi/0/NHtojduQgl2XguQ76pVQqjuZ9vhb+y7/P4eN62oH/XuJXVHXgDzrKsAeL/PKy4w== X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY5PR12MB6275 Hi Julien, On 30/06/2023 12:22, Julien Grall wrote: > > > On 30/06/2023 11:49, Ayan Kumar Halder wrote: >> >> On 30/06/2023 05:07, Penny Zheng wrote: >>> Hi, >> Hi Penny, >>> >>> >>> On 2023/6/30 01:22, Ayan Kumar Halder wrote: >>>> >>>> On 26/06/2023 04:34, Penny Zheng wrote: >>>>> CAUTION: This message has originated from an External Source. >>>>> Please use proper judgment and caution when opening attachments, >>>>> clicking links, or responding to this email. >>>>> >>>>> >>>>> In MPU system, MPU memory region is always mapped PAGE_ALIGN, so >>>>> in order to >>>>> not access unexpected memory area, dtb section in xen.lds.S should >>>>> be made >>>>> page-aligned too. >>>>> We add . = ALIGN(PAGE_SIZE); in the head of dtb section to make it >>>>> happen. >>>>> >>>>> In this commit, we map early FDT with a transient MPU memory >>>>> region, as >>>>> it will be relocated into heap and unmapped at the end of boot. >>>>> >>>>> Signed-off-by: Penny Zheng >>>>> Signed-off-by: Wei Chen >>>>> --- >>>>> v3: >>>>> - map the first 2MB. Check the size and then re-map with an extra >>>>> 2MB if needed >>>>> --- >>>>>   xen/arch/arm/include/asm/arm64/mpu.h |  3 ++- >>>>>   xen/arch/arm/include/asm/page.h      |  5 +++++ >>>>>   xen/arch/arm/mm.c                    | 26 >>>>> ++++++++++++++++++++------ >>>>>   xen/arch/arm/mpu/mm.c                |  1 + >>>>>   xen/arch/arm/xen.lds.S               |  5 ++++- >>>>>   5 files changed, 32 insertions(+), 8 deletions(-) >>>>> >>>>> diff --git a/xen/arch/arm/include/asm/arm64/mpu.h >>>>> b/xen/arch/arm/include/asm/arm64/mpu.h >>>>> index a6b07bab02..715ea69884 100644 >>>>> --- a/xen/arch/arm/include/asm/arm64/mpu.h >>>>> +++ b/xen/arch/arm/include/asm/arm64/mpu.h >>>>> @@ -72,7 +72,8 @@ typedef union { >>>>>           unsigned long ns:1;     /* Not-Secure */ >>>>>           unsigned long res:1;    /* Reserved 0 by hardware */ >>>>>           unsigned long limit:42; /* Limit Address */ >>>>> -        unsigned long pad:16; >>>>> +        unsigned long pad:15; >>>>> +        unsigned long tran:1;   /* Transient region */ >>>>>       } reg; >>>>>       uint64_t bits; >>>>>   } prlar_t; >>>>> diff --git a/xen/arch/arm/include/asm/page.h >>>>> b/xen/arch/arm/include/asm/page.h >>>>> index 85ecd5e4de..a434e2205a 100644 >>>>> --- a/xen/arch/arm/include/asm/page.h >>>>> +++ b/xen/arch/arm/include/asm/page.h >>>>> @@ -97,19 +97,24 @@ >>>>>    * [3:4] Execute Never >>>>>    * [5:6] Access Permission >>>>>    * [7]   Region Present >>>>> + * [8]   Transient Region, e.g. MPU memory region is temproraily >>>>> + *                              mapped for a short time >>>>>    */ >>>>>   #define _PAGE_AI_BIT            0 >>>>>   #define _PAGE_XN_BIT            3 >>>>>   #define _PAGE_AP_BIT            5 >>>>>   #define _PAGE_PRESENT_BIT       7 >>>>> +#define _PAGE_TRANSIENT_BIT     8 >>>> I don't think this is related to MPU. At least when I look at the >>>> bit representation of PRBAR_EL1/2, >>> >>> This set of _PAGE_xxx flags aren't compliant with PRBAR_EL1/2 >>> register map. >>> It is a flag passed to function map_pages_to_xen() to indicate memory >>> attributes and permission. >> >> But aren't you writing these flags to PRBAR_EL1/EL2 when you call >> xen_mpumap_update_entry(). >> >> In the below snippet of xen_mpumap_update_entry(), IIUC, you are >> writing these flags. >> >>          xen_mpumap[idx].prbar.reg.ap = PAGE_AP_MASK(flags); >>          xen_mpumap[idx].prbar.reg.xn = PAGE_XN_MASK(flags); >> >>          write_protection_region((const pr_t*)(&xen_mpumap[idx]), idx); >> >> Please clarify here. >> >> In this case, I don't prefer mixing hardware specific bits with >> software only representation for these reasons :- >> >> 1. It makes it confusing and hard to differentiate the hardware >> specific attrbutes from software only. > > Penny's approach matches what we are doing in the MMU code. We want to > have a way for the caller to pass just set of flags and let the callee > to decide what to do with them. > > This may be flags converted for HW fields or just used by the logic. > > If you disagree with this approach, then can you propose a different > way that we can discuss? In MMU, I could see "struct lpae_pt_t{ .avail }" is used for reference count. Something like this might look better (where the hardware specific bits are not reused for sw logic) struct {           struct __packed {                  ... /* the existing bits as they are */           } lpae_pt_t;           unsigned int ref_count; } p2m_entry And use "p2m_entry.ref_count" for the reference counting. I see that this change is quite intrusive, thus I will not argue for this. - Ayan From xen-devel-bounces@lists.xenproject.org Fri Jun 30 15:03:11 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 30 Jun 2023 15:03:11 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557545.870996 (Exim 4.92) (envelope-from ) id 1qFFe3-0004hn-Qt; Fri, 30 Jun 2023 15:02:47 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557545.870996; Fri, 30 Jun 2023 15:02:47 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFFe3-0004hg-Na; Fri, 30 Jun 2023 15:02:47 +0000 Received: by outflank-mailman (input) for mailman id 557545; Fri, 30 Jun 2023 15:02:46 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFFe1-0004ha-T5 for xen-devel@lists.xenproject.org; Fri, 30 Jun 2023 15:02:45 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFFe1-0000oN-DF; Fri, 30 Jun 2023 15:02:45 +0000 Received: from gw1.octic.net ([88.97.20.152] helo=[10.0.1.240]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qFFe1-0000N7-8C; Fri, 30 Jun 2023 15:02:45 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=O4P5eQeX4pY047XVR54ESQX4nzOQnpYoNkX/aurkdy0=; b=0EWUQ4djSHrUioiB/LE32JMCuC NI9LiQL1rwtszKEISPqE3g5QuNfmjot7LNO8NirOcrG+D6DCF/EAkLYhctCqu7C1nShip3GDu1lIr N/OB8mEBFvzPAYFA3Vb2j3WBll0a/Sm7C6d/z9K//1mfTh0dtGRaLWasfYYKFPeSnMdk=; Message-ID: Date: Fri, 30 Jun 2023 16:02:43 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v3 31/52] xen/mpu: make early_fdt_map support in MPU systems Content-Language: en-US To: Ayan Kumar Halder , Penny Zheng , xen-devel@lists.xenproject.org Cc: Stefano Stabellini , Bertrand Marquis , Wei Chen , "Volodymyr_Babchuk@epam.com" References: <20230626033443.2943270-1-Penny.Zheng@arm.com> <20230626033443.2943270-32-Penny.Zheng@arm.com> <9530f9f8-795b-783a-bc74-e30a3c5c2fd3@amd.com> From: Julien Grall In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Hi, On 30/06/2023 15:42, Ayan Kumar Halder wrote: > Hi Julien, > > On 30/06/2023 12:22, Julien Grall wrote: >> >> >> On 30/06/2023 11:49, Ayan Kumar Halder wrote: >>> >>> On 30/06/2023 05:07, Penny Zheng wrote: >>>> Hi, >>> Hi Penny, >>>> >>>> >>>> On 2023/6/30 01:22, Ayan Kumar Halder wrote: >>>>> >>>>> On 26/06/2023 04:34, Penny Zheng wrote: >>>>>> CAUTION: This message has originated from an External Source. >>>>>> Please use proper judgment and caution when opening attachments, >>>>>> clicking links, or responding to this email. >>>>>> >>>>>> >>>>>> In MPU system, MPU memory region is always mapped PAGE_ALIGN, so >>>>>> in order to >>>>>> not access unexpected memory area, dtb section in xen.lds.S should >>>>>> be made >>>>>> page-aligned too. >>>>>> We add . = ALIGN(PAGE_SIZE); in the head of dtb section to make it >>>>>> happen. >>>>>> >>>>>> In this commit, we map early FDT with a transient MPU memory >>>>>> region, as >>>>>> it will be relocated into heap and unmapped at the end of boot. >>>>>> >>>>>> Signed-off-by: Penny Zheng >>>>>> Signed-off-by: Wei Chen >>>>>> --- >>>>>> v3: >>>>>> - map the first 2MB. Check the size and then re-map with an extra >>>>>> 2MB if needed >>>>>> --- >>>>>>   xen/arch/arm/include/asm/arm64/mpu.h |  3 ++- >>>>>>   xen/arch/arm/include/asm/page.h      |  5 +++++ >>>>>>   xen/arch/arm/mm.c                    | 26 >>>>>> ++++++++++++++++++++------ >>>>>>   xen/arch/arm/mpu/mm.c                |  1 + >>>>>>   xen/arch/arm/xen.lds.S               |  5 ++++- >>>>>>   5 files changed, 32 insertions(+), 8 deletions(-) >>>>>> >>>>>> diff --git a/xen/arch/arm/include/asm/arm64/mpu.h >>>>>> b/xen/arch/arm/include/asm/arm64/mpu.h >>>>>> index a6b07bab02..715ea69884 100644 >>>>>> --- a/xen/arch/arm/include/asm/arm64/mpu.h >>>>>> +++ b/xen/arch/arm/include/asm/arm64/mpu.h >>>>>> @@ -72,7 +72,8 @@ typedef union { >>>>>>           unsigned long ns:1;     /* Not-Secure */ >>>>>>           unsigned long res:1;    /* Reserved 0 by hardware */ >>>>>>           unsigned long limit:42; /* Limit Address */ >>>>>> -        unsigned long pad:16; >>>>>> +        unsigned long pad:15; >>>>>> +        unsigned long tran:1;   /* Transient region */ >>>>>>       } reg; >>>>>>       uint64_t bits; >>>>>>   } prlar_t; >>>>>> diff --git a/xen/arch/arm/include/asm/page.h >>>>>> b/xen/arch/arm/include/asm/page.h >>>>>> index 85ecd5e4de..a434e2205a 100644 >>>>>> --- a/xen/arch/arm/include/asm/page.h >>>>>> +++ b/xen/arch/arm/include/asm/page.h >>>>>> @@ -97,19 +97,24 @@ >>>>>>    * [3:4] Execute Never >>>>>>    * [5:6] Access Permission >>>>>>    * [7]   Region Present >>>>>> + * [8]   Transient Region, e.g. MPU memory region is temproraily >>>>>> + *                              mapped for a short time >>>>>>    */ >>>>>>   #define _PAGE_AI_BIT            0 >>>>>>   #define _PAGE_XN_BIT            3 >>>>>>   #define _PAGE_AP_BIT            5 >>>>>>   #define _PAGE_PRESENT_BIT       7 >>>>>> +#define _PAGE_TRANSIENT_BIT     8 >>>>> I don't think this is related to MPU. At least when I look at the >>>>> bit representation of PRBAR_EL1/2, >>>> >>>> This set of _PAGE_xxx flags aren't compliant with PRBAR_EL1/2 >>>> register map. >>>> It is a flag passed to function map_pages_to_xen() to indicate memory >>>> attributes and permission. >>> >>> But aren't you writing these flags to PRBAR_EL1/EL2 when you call >>> xen_mpumap_update_entry(). >>> >>> In the below snippet of xen_mpumap_update_entry(), IIUC, you are >>> writing these flags. >>> >>>          xen_mpumap[idx].prbar.reg.ap = PAGE_AP_MASK(flags); >>>          xen_mpumap[idx].prbar.reg.xn = PAGE_XN_MASK(flags); >>> >>>          write_protection_region((const pr_t*)(&xen_mpumap[idx]), idx); >>> >>> Please clarify here. >>> >>> In this case, I don't prefer mixing hardware specific bits with >>> software only representation for these reasons :- >>> >>> 1. It makes it confusing and hard to differentiate the hardware >>> specific attrbutes from software only. >> >> Penny's approach matches what we are doing in the MMU code. We want to >> have a way for the caller to pass just set of flags and let the callee >> to decide what to do with them. >> >> This may be flags converted for HW fields or just used by the logic. >> >> If you disagree with this approach, then can you propose a different >> way that we can discuss? > > In MMU, I could see "struct lpae_pt_t{ .avail }" is used for reference > count. > > Something like this might look better (where the hardware specific bits > are not reused for sw logic) > > struct { > >           struct __packed { > >                  ... /* the existing bits as they are */ > >           } lpae_pt_t; > >           unsigned int ref_count; > > } p2m_entry > > And use "p2m_entry.ref_count" for the reference counting. So where would you store 'ref_count'? In the existing approach, this is store in the PTE and that's fine because the bits 58:55 are reserved for software use. This is right in the middle of the PTE. So we have no other choice other than describing right in the middle of lpae_pt_t. Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Fri Jun 30 15:20:21 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 30 Jun 2023 15:20:21 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557549.871006 (Exim 4.92) (envelope-from ) id 1qFFun-00071u-6j; Fri, 30 Jun 2023 15:20:05 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557549.871006; Fri, 30 Jun 2023 15:20:05 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFFun-00071P-3q; Fri, 30 Jun 2023 15:20:05 +0000 Received: by outflank-mailman (input) for mailman id 557549; Fri, 30 Jun 2023 15:20:04 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFFul-0006QR-O1 for xen-devel@lists.xenproject.org; Fri, 30 Jun 2023 15:20:03 +0000 Received: from NAM12-MW2-obe.outbound.protection.outlook.com (mail-mw2nam12on20609.outbound.protection.outlook.com [2a01:111:f400:fe5a::609]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 920928b9-1759-11ee-8611-37d641c3527e; Fri, 30 Jun 2023 17:19:58 +0200 (CEST) Received: from SN6PR12MB2621.namprd12.prod.outlook.com (2603:10b6:805:73::15) by DS0PR12MB7874.namprd12.prod.outlook.com (2603:10b6:8:141::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.35; Fri, 30 Jun 2023 15:19:53 +0000 Received: from SN6PR12MB2621.namprd12.prod.outlook.com ([fe80::8018:78f7:1b08:7a54]) by SN6PR12MB2621.namprd12.prod.outlook.com ([fe80::8018:78f7:1b08:7a54%2]) with mapi id 15.20.6521.026; Fri, 30 Jun 2023 15:19:53 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 920928b9-1759-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=OcAACk59eTE/CxByIFgv3w07bwDwr5B4V620dJCN7sq3pj67kC8eRas2DngMCzFy4cmmeQPdeWSPTDpSXFkoEQ27mrBv+HLjDflkBhaaUgZZK5T2klRh/DoRVgi8uNp9RSDzs1Wh0ynT4JyxrlGdrAfdwjyMKlnCbojZBVNqyjNa6zrfJ7a2piDn5oUONdCbUOaehMHFO3WDPnM3WKaIqt9tBo0H0a+H9ppNxhT8pxHNr7xpxtT/fY8QsclNuNPzwVKtXw3QzIo/OUPf5TE+C8M08RjSLuOsUlXf25TuVy2tfUMYeFq8Yz5W/kGBVK+rsYpOt3Aab2qoYCtYwRNIsA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=f6FWPYGymkiF9pdeUVvwpn6KXQgMTyIhMMqX0NA7flc=; b=IrCkM3JWHMal3GI/Bf6QWUg7MmYwoXiySn9fWKsfSgU3oceR8C4YELW4wl3vJDOFL0TaluwFwUT/JWrmb434ekL8ux7nxsu4rLu6TQpNlKqUo4usQtHQ+zu8VdVHcgQctikCQMjHpLfKgFITzfP4pfh+4pixttHMQQKvAf1QOvY+fYNF66wyuHcFl6AbP+XHMfBRD/vgBGrUi1Iyhl7Kk4DClTL/zgZ+KgkNrvRtUFLeLLL5CEgYhWnSDeu4Lfu4U5GsrvAO9iyCH2Mij/7eJ5Do0T50tQ6PEnpQB9e54FVb/dDgZDbRxbGTp34W8/VYbCQ45800weCL3TUghzSHmA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass header.d=amd.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=f6FWPYGymkiF9pdeUVvwpn6KXQgMTyIhMMqX0NA7flc=; b=aI6JwVkNIlYmyv+S3pwmVrNRpmJMfD1XUhnzmzFShZH8tj9J5gp/O3JSbfoWwe5jQ6lJMj6wyXDiQmIbrqh8570apXMjEqEntUBMOX+yBnVpEvXWuQ4c2M3KyXNGcPjOaKVAQG1csWZ7xty4NI53aDx+cUbCfzit9KrZ5OBzSbY= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=amd.com; Message-ID: Date: Fri, 30 Jun 2023 16:19:47 +0100 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v3 33/52] xen/mpu: initialize frametable in MPU system To: Penny Zheng , xen-devel@lists.xenproject.org Cc: Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk , Wei Chen References: <20230626033443.2943270-1-Penny.Zheng@arm.com> <20230626033443.2943270-34-Penny.Zheng@arm.com> From: Ayan Kumar Halder In-Reply-To: <20230626033443.2943270-34-Penny.Zheng@arm.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO0P265CA0011.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:355::19) To SN6PR12MB2621.namprd12.prod.outlook.com (2603:10b6:805:73::15) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SN6PR12MB2621:EE_|DS0PR12MB7874:EE_ X-MS-Office365-Filtering-Correlation-Id: ab76a130-1c4d-472e-c872-08db797d7437 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: AdkuArJLOjmEqCNWKSA0GJJi0SH2dG2siixR/tLKBIiVGFpFtzcphTSg7k/8Z2U39sq/QeIhAKto4l2vfmEInrp6DzWoj5Q48MK7xtznhBxH+1mMgMFGmyAgkC1hf9u4JsEgLnU+DMmGjh7b7QT3PrTKWb5/3t4yktead5xLGtcCnQUi1AsUIUIbxKv6iX7BVQt4LH/kz6RtMqApu5jPgcn9de3Kn3lvg/Ou78UJU+xRBY6zIhFoHaaiy789ERO1xQCDkuVrp5vKF54bBbR7g5M8J/371pieVpNWTHCGD6rOFpuOY8ZnivSKzSdDWJ/1uF4wPvTLV8Wkx1xAZ84Jtuvt4+Bv3Lmax7a3cNwWS0PMX3JYHY4bZr0qa3v74NJ5OPHQU+cDw6WH0XIQ6kWH+1/3C7msEWL87qzUdxFn3YoNhLgXbSb5bfzZWXkLB9RMQMjiKl74ETybZvNC48aPYbFjX9CMZEf75NwmUX3y+mxEnvJaf3VjoTpV1tMLU+eVs/wxL7Yk8UXQdcoceaofkdsINuTIVS3GnhaL0+aBWePrGoxV5JH+yY+2Ne+mXmXRkVG9AEZ3Ln/fDJNvln2PCssEVq7AeB1twncL1nXCOHZO3HRVQzRkT39krIJyCdw064WzMdn3+/7IWI1axtM7zQ== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SN6PR12MB2621.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(346002)(366004)(376002)(396003)(39860400002)(136003)(451199021)(2906002)(186003)(6486002)(2616005)(6666004)(38100700002)(83380400001)(6512007)(53546011)(6506007)(26005)(41300700001)(31696002)(54906003)(316002)(36756003)(478600001)(66556008)(66476007)(66946007)(4326008)(31686004)(5660300002)(8936002)(8676002)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?V0ZxaVJNU0QrUXFFampMSEVRNDk2Q1NDR3pmVENENU4wMm9iZ0NoTU1DdlVR?= =?utf-8?B?TjVFKzVoQXhoOTlvc0dXRjNmb3BNaUU4OGxTNXNUTjE4NlVzaXYvK09QdWVn?= =?utf-8?B?NFpSTGVFOGZtN05FaHliUW1EbDEvVkJlN3pmRjA5MUIvMXNHZ0plVTUyQ1d5?= =?utf-8?B?alNGdklUaDFUc2FEeisxVjEyK0Z3bGVBV0NPTTBoUjVhbDdiN00wUjR0SDA2?= =?utf-8?B?K1lBaVhmQXg4d1RsbHdRRFVDTFFiUmlKa2hWbVhnSUhucDkrZjE4UG5hd0pu?= =?utf-8?B?RUUvZVh1SDJ3dTU3U1NXM3dJOXNxa1ltT1I2YU5jZE40RXRvWHA0VUJjdDVS?= =?utf-8?B?UGJmNFNuTTJvMzE0cFovSjR4Ymo0TGxMUmpOTmUzUVd2RDNSZkZUK3ZaaitB?= =?utf-8?B?QTVEcWhBM05HMkRSZ2hIU04rNXdlUlUxaTMxcVIrMll2TCtNbUVPcVQ3SHZD?= =?utf-8?B?VEtPK2RibnN0SXNnWnNYNUQ2eitDTWoxcFFod011WTcvWldhK0lFVWV4NmE2?= =?utf-8?B?ZE1OOTZTTW9vMmxob2ltVFFrRVpKZXVJNm1XWGxITEdNMjdxYkxKOUxocVQz?= =?utf-8?B?UmxwSXVNTE1ialpvZ0xzMWNpQWtDZ09USk5JaFNLMzJTZ3FUSEd1OXpTZU15?= =?utf-8?B?cXFFdzZqWlBRMzllOGVSY0RMb1lHWTlMK2tOR1crZlI3ZGJIZ3NsajJ4VWlK?= =?utf-8?B?YlpRcFExSStTWEVXY09UVWtBTXhneThZbFpweEVVMENxSDcwRGdhL1hIZEhM?= =?utf-8?B?WXZRdHZDT2k5T3RWV21jYis0c3FYeHM2dmZOekVNN2JueU5oUm5QNTR3M2dR?= =?utf-8?B?aXZyZ3FvSXZlNEhRUjlXaStNU1JJUjFVQmlIQmExT1VIYzRWWXIzN0JGVnVy?= =?utf-8?B?VDJKMVdEUzlyS0xtN09SN1RTaklnWkhSdktML3MvRENQVjEzV2J4ay9jcVVW?= =?utf-8?B?TXJEaFRDY255RTJabU9QTEdvZFBzaXJuZHdDUEVsOE1aK1dKdTFBc2h2Q0Jl?= =?utf-8?B?MVVMN21zNzBaRVh2T2tDNDJLRlorZFFMRjFjV1I1OGJQbmcvWXdlUklYb2o3?= =?utf-8?B?WXZzZTQvczFIRm9KSzFzMnZyTGw2bGhNY2dqWmllMWpIVlhEZFNsQWFMWnpo?= =?utf-8?B?Rk03ZkNTaW1MR05pdTIyMDlGTEthM2U2c3dqblo2WG5JWjkrSHNScWQ5cE12?= =?utf-8?B?S1lnYmJZN3gxV21hWFR4R3ZhTm5ROHpJMlljNkdLbEFKTzJwVHJ5ejZ3Um9X?= =?utf-8?B?RU1wREtocHc5OUJMRE5yb3BtT2YrNTZ1R1BGQnYrRXg5T0txYVpoSVlGR21m?= =?utf-8?B?a29kemdXWkxYdUR6RnM4Q0wxanNBaTVKd1dZWC8vWkwrcXFsaXNlaEJDS2Uz?= =?utf-8?B?UnBNZGNWcmVrRk9uUGV4cFJjdHdjcEdyMjQycnAyTG1LbUpOeTE0Y3FPQVJF?= =?utf-8?B?cm1pcWRuU25PaDIvWWxicVMyLy9aNEpNNk1EWEpscHo4QUdnQi8zMzJ6TEl0?= =?utf-8?B?U1B5NU1NWU1BZllTUGQydHdCeXBBU3ZpOXZRMFl0ZlpDVVRZV0wvRG5iVWJ5?= =?utf-8?B?dUxpODlib2xzMExZb3lJeG84NC8rZEFXU3V3Z1BzSnczZ2hzbmsxRUhJS0Fs?= =?utf-8?B?K2E4c3dEV0RsWFptbTFpNVhsdllwVEtvVWY2bkdVeW4xWStRdUN6TFNNcUJR?= =?utf-8?B?UzM3WmgweGdFYTVlU2xIYmZEemNyZER2aFlaU081ZGtrM003KzV1dE1nanJ5?= =?utf-8?B?R2F0Q295SmoxMldzQWk0UFFoSWhuNFhyeFM0aDZDTGxBYnR6SGxPK25KUGpY?= =?utf-8?B?ZjQvNFRyWFZ0eXBWMjV5Mlh5WHNJc3VTazVlQXd5YzczRVMvTnpFdk91VjZF?= =?utf-8?B?d1VEaUFCdUJuS0ozM2J3UUJadTErVEp6N1F4ZUJKTWhkamlPZTJ3L3JleUNU?= =?utf-8?B?NTBPMlJkVTdBYmdIQ3N5QmhscE1hN3ZucnBLSXlBOFQ3TDRDdVlQZXJ5OXVY?= =?utf-8?B?NFRSR3lyL09PNzVqZTJiRUJmd21ldEMxL1NsU3FhQWY1Qk5aQkRUaWR6cVMx?= =?utf-8?B?QTlNa1BWSDUxVTB0aGRrMzlNRkhRc1FXN3cwVlZsOFhlRDZUTjJjZ1hmSjk5?= =?utf-8?Q?Qlu9sh8cKlvN9F1APVMEHpkoH?= X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-Network-Message-Id: ab76a130-1c4d-472e-c872-08db797d7437 X-MS-Exchange-CrossTenant-AuthSource: SN6PR12MB2621.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Jun 2023 15:19:53.2876 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 5mwnCr6WQJoDQA/rCtpAQl60zT1cBQEr9ADoIgwL50WSa52oeHbPYh4po3XOzuzL+J5iq7JXBr+hXK052b5m2w== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS0PR12MB7874 Hi Penny, On 26/06/2023 04:34, Penny Zheng wrote: > CAUTION: This message has originated from an External Source. Please use proper judgment and caution when opening attachments, clicking links, or responding to this email. > > > Xen is using page as the smallest granularity for memory managment. > And we want to follow the same concept in MPU system. > That is, structure page_info and the frametable which is used for storing > and managing the smallest memory managment unit is also required in MPU system. > > In MPU system, since we can not use a fixed VA address(FRAMETABLE_VIRT_START) > to map frametable like MMU system does and everything is 1:1 mapping, we > instead define a variable "struct page_info *frame_table" as frametable > pointer, and ask boot allocator to allocate appropriate memory for frametable. > > As frametable is successfully initialized, the convertion between machine frame > number/machine address/"virtual address" and page-info structure is > ready too, like mfn_to_page/maddr_to_page/virt_to_page, etc > > Signed-off-by: Penny Zheng > Signed-off-by: Wei Chen > --- > v3: > - add ASSERT() to confirm the MFN you pass is covered by the frametable. > --- > xen/arch/arm/include/asm/mm.h | 14 ++++++++++++++ > xen/arch/arm/include/asm/mpu/mm.h | 3 +++ > xen/arch/arm/mpu/mm.c | 27 +++++++++++++++++++++++++++ > 3 files changed, 44 insertions(+) > > diff --git a/xen/arch/arm/include/asm/mm.h b/xen/arch/arm/include/asm/mm.h > index daa6329505..66d98b9a29 100644 > --- a/xen/arch/arm/include/asm/mm.h > +++ b/xen/arch/arm/include/asm/mm.h > @@ -341,6 +341,19 @@ static inline uint64_t gvirt_to_maddr(vaddr_t va, paddr_t *pa, > #define virt_to_mfn(va) __virt_to_mfn(va) > #define mfn_to_virt(mfn) __mfn_to_virt(mfn) > > +#ifdef CONFIG_HAS_MPU > +/* Convert between virtual address to page-info structure. */ > +static inline struct page_info *virt_to_page(const void *v) > +{ > + unsigned long pdx; > + > + pdx = paddr_to_pdx(virt_to_maddr(v)); > + ASSERT(pdx >= frametable_base_pdx); > + ASSERT(pdx < frametable_pdx_end); > + > + return frame_table + pdx - frametable_base_pdx; > +} This should go in xen/arch/arm/include/asm/mpu/mm.h. Then you don't need ifdef > +#else > /* Convert between Xen-heap virtual addresses and page-info structures. */ > static inline struct page_info *virt_to_page(const void *v) > { > @@ -354,6 +367,7 @@ static inline struct page_info *virt_to_page(const void *v) > pdx += mfn_to_pdx(directmap_mfn_start); > return frame_table + pdx - frametable_base_pdx; > } Consequently, this should be in xen/arch/arm/include/asm/mmu/mm.h > +#endif > > static inline void *page_to_virt(const struct page_info *pg) > { > diff --git a/xen/arch/arm/include/asm/mpu/mm.h b/xen/arch/arm/include/asm/mpu/mm.h > index e26bd4f975..98f6df65b8 100644 > --- a/xen/arch/arm/include/asm/mpu/mm.h > +++ b/xen/arch/arm/include/asm/mpu/mm.h > @@ -2,6 +2,9 @@ > #ifndef __ARCH_ARM_MM_MPU__ > #define __ARCH_ARM_MM_MPU__ > > +extern struct page_info *frame_table; If you define frame_table in xen/arch/arm/include/asm/mm.h , then you don't need the above declaration. > +extern unsigned long frametable_pdx_end; Also you don't need extern as this is only used by xen/arch/arm/mpu/mm.c. > + > extern int xen_mpumap_update(paddr_t base, paddr_t limit, unsigned int flags); You don't need extern here as it should be used only in xen/arch/arm/mpu/mm.c Currently, I see the following in xen/arch/arm/mm.c, int map_pages_to_xen(unsigned long virt,                      mfn_t mfn,                      unsigned long nr_mfns,                      unsigned int flags) { #ifndef CONFIG_HAS_MPU     return xen_pt_update(virt, mfn, nr_mfns, flags); #else     return xen_mpumap_update(mfn_to_maddr(mfn),                              mfn_to_maddr(mfn_add(mfn, nr_mfns)), flags); #endif } int destroy_xen_mappings(unsigned long s, unsigned long e) {     ASSERT(IS_ALIGNED(s, PAGE_SIZE));     ASSERT(IS_ALIGNED(e, PAGE_SIZE));     ASSERT(s <= e); #ifndef CONFIG_HAS_MPU     return xen_pt_update(s, INVALID_MFN, (e - s) >> PAGE_SHIFT, 0); #else     return xen_mpumap_update(virt_to_maddr((void *)s),                              virt_to_maddr((void *)e), 0); #endif } int modify_xen_mappings(unsigned long s, unsigned long e, unsigned int flags) {     ASSERT(IS_ALIGNED(s, PAGE_SIZE));     ASSERT(IS_ALIGNED(e, PAGE_SIZE));     ASSERT(s <= e); #ifndef CONFIG_HAS_MPU     return xen_pt_update(s, INVALID_MFN, (e - s) >> PAGE_SHIFT, flags); #else     return xen_mpumap_update(virt_to_maddr((void *)s),                              virt_to_maddr((void *)e), flags); #endif } It would be better to have 2 implementations for map_pages_to_xen(), destroy_xen_mappings() and modify_xen_mappings() in xen/arch/arm/mpu/mm.c and xen/arch/arm/mmu/mm.c. > extern void setup_staticheap_mappings(void); > > diff --git a/xen/arch/arm/mpu/mm.c b/xen/arch/arm/mpu/mm.c > index 7bd5609102..0a65b58dc4 100644 > --- a/xen/arch/arm/mpu/mm.c > +++ b/xen/arch/arm/mpu/mm.c > @@ -27,6 +27,10 @@ > #include > #include > > +/* Override macros from asm/mm.h to make them work with mfn_t */ > +#undef mfn_to_virt Why do we have to do this ? > +#define mfn_to_virt(mfn) __mfn_to_virt(mfn_x(mfn)) > + > #ifdef NDEBUG > static inline void __attribute__ ((__format__ (__printf__, 1, 2))) > region_printk(const char *fmt, ...) {} > @@ -58,6 +62,9 @@ static DEFINE_SPINLOCK(xen_mpumap_lock); > > static DEFINE_SPINLOCK(xen_mpumap_alloc_lock); > > +struct page_info *frame_table; > +unsigned long frametable_pdx_end __read_mostly; > + > /* Write a MPU protection region */ > #define WRITE_PROTECTION_REGION(pr, prbar_el2, prlar_el2) ({ \ > const pr_t *_pr = pr; \ > @@ -513,6 +520,26 @@ void __init setup_staticheap_mappings(void) > } > } > > +/* Map a frame table to cover physical addresses ps through pe */ > +void __init setup_frametable_mappings(paddr_t ps, paddr_t pe) > +{ > + mfn_t base_mfn; > + unsigned long nr_pdxs = mfn_to_pdx(mfn_add(maddr_to_mfn(pe), -1)) - > + mfn_to_pdx(maddr_to_mfn(ps)) + 1; > + unsigned long frametable_size = nr_pdxs * sizeof(struct page_info); > + > + frametable_base_pdx = paddr_to_pdx(ps); > + frametable_size = ROUNDUP(frametable_size, PAGE_SIZE); > + frametable_pdx_end = frametable_base_pdx + nr_pdxs; > + > + base_mfn = alloc_boot_pages(frametable_size >> PAGE_SHIFT, 1); > + frame_table = (struct page_info *)mfn_to_virt(base_mfn); > + > + memset(&frame_table[0], 0, nr_pdxs * sizeof(struct page_info)); > + memset(&frame_table[nr_pdxs], -1, > + frametable_size - (nr_pdxs * sizeof(struct page_info))); > +} > + > /* > * Local variables: > * mode: C > -- > 2.25.1 - Ayan From xen-devel-bounces@lists.xenproject.org Fri Jun 30 15:21:49 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 30 Jun 2023 15:21:49 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557553.871016 (Exim 4.92) (envelope-from ) id 1qFFwS-0007of-Il; Fri, 30 Jun 2023 15:21:48 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557553.871016; Fri, 30 Jun 2023 15:21:48 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFFwS-0007oY-Fw; Fri, 30 Jun 2023 15:21:48 +0000 Received: by outflank-mailman (input) for mailman id 557553; Fri, 30 Jun 2023 15:21:48 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFFwR-0007oO-RZ for xen-devel@lists.xenproject.org; Fri, 30 Jun 2023 15:21:48 +0000 Received: from esa1.hc3370-68.iphmx.com (esa1.hc3370-68.iphmx.com [216.71.145.142]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id d21f1d6a-1759-11ee-b237-6b7b168915f2; Fri, 30 Jun 2023 17:21:45 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: d21f1d6a-1759-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1688138506; h=from:to:cc:subject:date:message-id:mime-version: content-transfer-encoding; bh=rGV6+lCKZt5jNhJl698X1kt5ZQ7k2NBNoItr0lRmbJo=; b=AkeqI7K8EPaioQxUHsUGdl6xkpUpLIgtYIERuSd+3rU2Czbsp/+v7HMA EDs4Tygv5/nrOQWVM8wAfzAk259sDnAh4FF2i5d3mRAfLW3cnUHRpH1Wu e9HIZsvMqBo8E9vC7Ej8KlTWrbUoTNOiifiZOP05e0CqtelVzEODWbn4u s=; Authentication-Results: esa1.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none X-SBRS: 4.0 X-MesageID: 115177839 X-Ironport-Server: esa1.hc3370-68.iphmx.com X-Remote-IP: 162.221.156.123 X-Policy: $RELAYED IronPort-Data: A9a23:cVUsXaOcG9WpXJfvrR2gl8FynXyQoLVcMsEvi/4bfWQNrUor1mEHz msXXWCPbv3eZTakeY9xa4mwpkJT6sLWnNViQQto+SlhQUwRpJueD7x1DKtS0wC6dZSfER09v 63yTvGacajYm1eF/k/F3oDJ9CU6jufQAOKnUoYoAwgpLSd8UiAtlBl/rOAwh49skLCRDhiE/ Nj/uKUzAnf8s9JPGjxSs/vrRC9H5qyo42tG5QRmP5ingXeF/5UrJMNHTU2OByOQrrl8RoaSW +vFxbelyWLVlz9F5gSNy+uTnuUiG9Y+DCDW4pZkc/HKbitq/0Te5p0TJvsEAXq7vh3S9zxHJ HehgrTrIeshFvWkdO3wyHC0GQkmVUFN0OevzXRSLaV/ZqAJGpfh66wGMa04AWEX0uRsUHpl3 OwDEgEiZQGEv9/xkbyXFMA506zPLOGzVG8eknRpzDWfBvc6W5HTBa7N4Le03h9p2JoIR6yHI ZNEN3w2Nk+ojx5nYz/7DLoXmuuyi2a5WDpfsF+P/oI84nTJzRw327/oWDbQUoXTGJwKwRbD9 woq+Uz7Cz0/DM6R0QGGyXyltPP/wz39ZoMdQejQGvlC3wTImz175ActfUu2p7y1h1CzX/pbK lcI4Ww+oK4q7kupQ9LhGRqirxasnDQRRt5RGO0S8xyWx+zf5APxLncAZi5MbpohrsBeeNAx/ gbXxZWzX2Up6eDLDyvHrd94sA9eJwAXNj4ZTgYUVjE0zNLyp7kOyUPBYohKRfvdYsLOJd3g/ 9ybhHFg1+VK1JdTjfXTEUPv2Gz1+MWQJuIhzkCOBz/+sFskDGKwT9bwgWU3+8qsO2pworOpm HEf0/aT4+kVZX1mvHzcGb5ddF1FChvsDdE9vbKMN8N7n9hV0yT/Fb28GRknTKuTDu4KeCXyf GjYsh5L6ZlYMROCNPEnM9rvUJpxk/W6SrwJs8w4ifIUO/BMmPKvpnkyNSZ8IUiz+KTTrU3PE cjCKpv9ZZrrIa9m0CC3V48gPUwDn0gDKZfobcmjlXyPiOPODEN5vJ9ZaDNimMhltvLbyOgUm v4DX/a3J+J3CbyhPneNq9ZJdjjn7xETXPjLliCeTcbbSiIOJY3rI66IqV/9U+SJR5hoq9o= IronPort-HdrOrdr: A9a23:0cE93a9ow9zRPdP3hFVuk+DUI+orL9Y04lQ7vn2YSXRuHPBw8P re+8jztCWE7Ar5N0tBpTntAsW9qBDnhPtICOsqTNSftWDd0QPCRuxfBOPZslvd8kbFl9K1u5 0OT0EHMqyTMWRH X-Talos-CUID: 9a23:ujiAY2A2k/wb+FT6Eyt8pVU/M9A+SEzyx2bXG3L/WGhFFpTAHA== X-Talos-MUID: =?us-ascii?q?9a23=3At875WQ+oFGRkS1Q4+gVyL4mQf8Vhz4GWGk4VqpY?= =?us-ascii?q?9tcC2KRwuJTGjjTviFw=3D=3D?= X-IronPort-AV: E=Sophos;i="6.01,171,1684814400"; d="scan'208";a="115177839" From: Andrew Cooper To: Xen-devel CC: Andrew Cooper , Jan Beulich , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Wei Liu Subject: [PATCH] x86/asm: Introduce a tailcall pseduo-op Date: Fri, 30 Jun 2023 16:20:57 +0100 Message-ID: <20230630152057.2944373-1-andrew.cooper3@citrix.com> X-Mailer: git-send-email 2.30.2 MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit It was previously noted that CALL/BUG is a weird combination, but there is good reason to use this pattern. Introduce an explicit tailcall macro make it clearer in context. No functional change. Reported-by: Jan Beulich Signed-off-by: Andrew Cooper --- CC: Jan Beulich CC: Roger Pau Monné CC: Wei Liu It would be nicer if tailcall was shorter, but that loses clarity. RISC-V has 'tail' as an alias for 'b', but that looses the call aspect, and tcall isn't sufficiently recognisable as tailcall IMO. --- xen/arch/x86/boot/x86_64.S | 6 ++---- xen/arch/x86/include/asm/asm-defns.h | 9 +++++++++ xen/arch/x86/x86_64/entry.S | 12 ++++-------- 3 files changed, 15 insertions(+), 12 deletions(-) diff --git a/xen/arch/x86/boot/x86_64.S b/xen/arch/x86/boot/x86_64.S index 5d12937a0e40..04bb62ae8680 100644 --- a/xen/arch/x86/boot/x86_64.S +++ b/xen/arch/x86/boot/x86_64.S @@ -74,14 +74,12 @@ ENTRY(__high_start) .L_ap_cet_done: #endif /* CONFIG_XEN_SHSTK || CONFIG_XEN_IBT */ - call start_secondary - BUG /* start_secondary() shouldn't return. */ + tailcall start_secondary .L_bsp: /* Pass off the Multiboot info structure to C land (if applicable). */ mov multiboot_ptr(%rip),%edi - call __start_xen - BUG /* __start_xen() shouldn't return. */ + tailcall __start_xen .section .data.page_aligned, "aw", @progbits .align PAGE_SIZE, 0 diff --git a/xen/arch/x86/include/asm/asm-defns.h b/xen/arch/x86/include/asm/asm-defns.h index 8bd9007731d5..9a7073ced5be 100644 --- a/xen/arch/x86/include/asm/asm-defns.h +++ b/xen/arch/x86/include/asm/asm-defns.h @@ -20,6 +20,15 @@ .byte 0x0f, 0x01, 0xdd .endm +/* + * Call a noreturn function. This could be JMP, but CALL results in a more + * helpful backtrace. BUG is to catch functions which do decide to return... + */ +.macro tailcall fn:req + call \fn + BUG /* Shouldn't return */ +.endm + .macro INDIRECT_BRANCH insn:req arg:req /* * Create an indirect branch. insn is one of call/jmp, arg is a single diff --git a/xen/arch/x86/x86_64/entry.S b/xen/arch/x86/x86_64/entry.S index 8b77d7113bbf..bca1500e2b45 100644 --- a/xen/arch/x86/x86_64/entry.S +++ b/xen/arch/x86/x86_64/entry.S @@ -824,8 +824,7 @@ handle_exception_saved: DISPATCH(X86_EXC_CP, do_entry_CP) #undef DISPATCH - call do_unhandled_trap - BUG /* do_unhandled_trap() shouldn't return. */ + tailcall do_unhandled_trap .L_exn_dispatch_done: mov %r15, STACK_CPUINFO_FIELD(xen_cr3)(%r14) @@ -880,8 +879,7 @@ exception_with_ints_disabled: FATAL_exception_with_ints_disabled: xorl %esi,%esi movq %rsp,%rdi - call fatal_trap - BUG /* fatal_trap() shouldn't return. */ + tailcall fatal_trap ENTRY(divide_error) ENDBR64 @@ -989,8 +987,7 @@ ENTRY(double_fault) .Ldblf_cr3_okay: movq %rsp,%rdi - call do_double_fault - BUG /* do_double_fault() shouldn't return. */ + tailcall do_double_fault ENTRY(nmi) ENDBR64 @@ -1085,8 +1082,7 @@ handle_ist_exception: DISPATCH(X86_EXC_MC, do_machine_check) #undef DISPATCH - call do_unhandled_trap - BUG /* do_unhandled_trap() shouldn't return. */ + tailcall do_unhandled_trap .L_ist_dispatch_done: mov %r15, STACK_CPUINFO_FIELD(xen_cr3)(%r14) base-commit: f51e5d8eae8ece77a949571f39ee49904f3129aa -- 2.30.2 From xen-devel-bounces@lists.xenproject.org Fri Jun 30 15:32:51 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 30 Jun 2023 15:32:51 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557560.871025 (Exim 4.92) (envelope-from ) id 1qFG6t-00012t-Ma; Fri, 30 Jun 2023 15:32:35 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557560.871025; Fri, 30 Jun 2023 15:32:35 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFG6t-00012m-Jd; Fri, 30 Jun 2023 15:32:35 +0000 Received: by outflank-mailman (input) for mailman id 557560; Fri, 30 Jun 2023 15:32:34 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFG6s-00012Y-Ia; Fri, 30 Jun 2023 15:32:34 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFG6s-0001WP-Bq; Fri, 30 Jun 2023 15:32:34 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFG6r-0001TC-T2; Fri, 30 Jun 2023 15:32:33 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qFG6r-0004Q7-SZ; Fri, 30 Jun 2023 15:32:33 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=fxh5G+43wDwcR/Rb0Y0zBoAIYPl7yUTjBDfT11Rihr4=; b=3g/7typw/uEU6X6h6H/vJ6OQme Qg/NvrEa2i7W7cry9RQiL4+C0JcP3iA5t4AlC9bGGtBc6nyX2qI/mYacONnkGtnYr0hl+bFj1CiFu rZbwLMLblBWPh5c5NVA1FJAryKp23waYB3owKBlmfn/90f520q4PgZZcvlN8WUpLmptA=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [libvirt test] 181649: trouble: broken/pass X-Osstest-Failures: libvirt:test-armhf-armhf-libvirt-raw::broken:regression libvirt:test-armhf-armhf-libvirt-raw:host-install(5):broken:regression libvirt:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking libvirt:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking libvirt:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking libvirt:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking libvirt:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking libvirt:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt:saverestore-support-check:fail:nonblocking libvirt:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking libvirt:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking libvirt:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-qcow2:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-qcow2:saverestore-support-check:fail:nonblocking libvirt:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking libvirt:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking libvirt:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking libvirt:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking X-Osstest-Versions-This: libvirt=63792a286d4ac2646bd9a6fa564da3aff04b00eb X-Osstest-Versions-That: libvirt=d7fb8deb6aa862a8098d8d933dd32a79931cd4dc From: osstest service owner Date: Fri, 30 Jun 2023 15:32:33 +0000 flight 181649 libvirt real [real] http://logs.test-lab.xenproject.org/osstest/logs/181649/ Failures and problems with tests :-( Tests which did not succeed and are blocking, including tests which could not be run: test-armhf-armhf-libvirt-raw broken test-armhf-armhf-libvirt-raw 5 host-install(5) broken REGR. vs. 181635 Tests which did not succeed, but are not blocking: test-armhf-armhf-libvirt 16 saverestore-support-check fail like 181635 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail like 181635 test-amd64-i386-libvirt-xsm 15 migrate-support-check fail never pass test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-amd64-i386-libvirt 15 migrate-support-check fail never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt 15 migrate-support-check fail never pass test-arm64-arm64-libvirt 16 saverestore-support-check fail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-armhf-armhf-libvirt 15 migrate-support-check fail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-qcow2 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-qcow2 15 saverestore-support-check fail never pass test-amd64-i386-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-check fail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail never pass test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-check fail never pass version targeted for testing: libvirt 63792a286d4ac2646bd9a6fa564da3aff04b00eb baseline version: libvirt d7fb8deb6aa862a8098d8d933dd32a79931cd4dc Last test of basis 181635 2023-06-29 04:21:51 Z 1 days Testing same since 181649 2023-06-30 04:18:54 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Han Han Michal Privoznik Yuri Chornoivan 김인수 jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm pass test-amd64-amd64-libvirt-xsm pass test-arm64-arm64-libvirt-xsm pass test-amd64-i386-libvirt-xsm pass test-amd64-amd64-libvirt pass test-arm64-arm64-libvirt pass test-armhf-armhf-libvirt pass test-amd64-i386-libvirt pass test-amd64-amd64-libvirt-pair pass test-amd64-i386-libvirt-pair pass test-arm64-arm64-libvirt-qcow2 pass test-armhf-armhf-libvirt-qcow2 pass test-arm64-arm64-libvirt-raw pass test-armhf-armhf-libvirt-raw broken test-amd64-i386-libvirt-raw pass test-amd64-amd64-libvirt-vhd pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary broken-job test-armhf-armhf-libvirt-raw broken broken-step test-armhf-armhf-libvirt-raw host-install(5) Not pushing. ------------------------------------------------------------ commit 63792a286d4ac2646bd9a6fa564da3aff04b00eb Author: Michal Privoznik Date: Thu Jun 29 08:46:04 2023 +0200 Revert "lxc_fuse: Tell FUSE that /proc/meminfo is nonseekable" After v8.1.0-61-g030faee28d it is no longer necessary to make the /proc/meminfo file nonseekable as our code that fills the file with spoofed values can handle seeking just fine. Previously, `free(1)` was okay with failed lseek(), but this was ages ago and meanwhile the procps project moved to creating a library and moved the file parsing code under an exported function. In attempt to make the function callable multiple times, it can lseek() multiple times and failure to do so is fatal. This reverts commit 766495508650bebd5f4ac23224ecd0a2ee2ca9eb Resolves: https://gitlab.com/libvirt/libvirt/-/issues/492 Signed-off-by: Michal Privoznik Reviewed-by: Ján Tomko commit 4163dcc4cb694efc76ed299fa5ab0a57a74ba1e0 Author: Yuri Chornoivan Date: Thu Jun 29 06:21:01 2023 +0200 Translated using Weblate (Ukrainian) Currently translated at 100.0% (10395 of 10395 strings) Translation: libvirt/libvirt Translate-URL: https://translate.fedoraproject.org/projects/libvirt/libvirt/uk/ Co-authored-by: Yuri Chornoivan Signed-off-by: Yuri Chornoivan commit a9e7d5c587802d358b8949449208d3f020ee55b9 Author: 김인수 Date: Thu Jun 29 06:21:00 2023 +0200 Translated using Weblate (Korean) Currently translated at 100.0% (10395 of 10395 strings) Translation: libvirt/libvirt Translate-URL: https://translate.fedoraproject.org/projects/libvirt/libvirt/ko/ Co-authored-by: 김인수 Signed-off-by: 김인수 commit 28141adfdc054071f9b4644b3f769881651257eb Author: Han Han Date: Mon Jun 5 15:40:13 2023 +0800 scripts: Fix the flake8 syntax-check failures Fix the syntax-check failures (which can be seen after python3-flake8-import-order package is installed) with the help of isort[1]: 289/316 libvirt:syntax-check / flake8 FAIL 5.24s exit status 2 [1]: https://pycqa.github.io/isort/ Signed-off-by: Han Han Signed-off-by: Michal Privoznik Reviewed-by: Michal Privoznik From xen-devel-bounces@lists.xenproject.org Fri Jun 30 15:41:54 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 30 Jun 2023 15:41:54 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557568.871035 (Exim 4.92) (envelope-from ) id 1qFGFf-0002cZ-Iv; Fri, 30 Jun 2023 15:41:39 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557568.871035; Fri, 30 Jun 2023 15:41:39 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFGFf-0002cS-GJ; Fri, 30 Jun 2023 15:41:39 +0000 Received: by outflank-mailman (input) for mailman id 557568; Fri, 30 Jun 2023 15:41:38 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFGFe-0002cM-6h for xen-devel@lists.xenproject.org; Fri, 30 Jun 2023 15:41:38 +0000 Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 9860872c-175c-11ee-8611-37d641c3527e; Fri, 30 Jun 2023 17:41:35 +0200 (CEST) Received: from [192.168.1.11] (host-87-16-203-83.retail.telecomitalia.it [87.16.203.83]) by support.bugseng.com (Postfix) with ESMTPSA id DE86C4EE0737; Fri, 30 Jun 2023 17:41:34 +0200 (CEST) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 9860872c-175c-11ee-8611-37d641c3527e Message-ID: Date: Fri, 30 Jun 2023 17:41:34 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [XEN PATCH 5/5] x86: make parameter names of function declarations consistent Content-Language: en-US To: Andrew Cooper , Stefano Stabellini Cc: xen-devel@lists.xenproject.org, consulting@bugseng.com, Jan Beulich , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Wei Liu , Paul Durrant , Tamas K Lengyel , Alexandru Isaila , Petre Pircalabu , Jun Nakajima , Kevin Tian , Michal Orzel , Xenia Ragiadakou , Ayan Kumar Halder References: <5ee57d7bcd79daa0314f182ecb73e1eb6d8ecc03.1688049495.git.federico.serafini@bugseng.com> <5ded390f-137a-0604-c78b-4521e1daccc6@bugseng.com> <80c60246-bb4d-c8cc-1f96-282087b716b1@citrix.com> From: Federico Serafini Organization: BUGSENG srl In-Reply-To: <80c60246-bb4d-c8cc-1f96-282087b716b1@citrix.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit On 30/06/23 16:21, Andrew Cooper wrote: > On 30/06/2023 8:36 am, Federico Serafini wrote: >> Hello Stefano, >> >> On 29/06/23 21:47, Stefano Stabellini wrote: >>> On Thu, 29 Jun 2023, Federico Serafini wrote: >>>> Change the parameter names of function declarations to be consistent >>>> with the names used in the corresponding function definitions >>>> so as to fix violations of MISRA C:2012 Rule 8.3. >>>> >>>> Signed-off-by: Federico Serafini >>>> --- >>>>   diff --git a/xen/arch/x86/include/asm/hvm/vmx/vmcs.h >>>> b/xen/arch/x86/include/asm/hvm/vmx/vmcs.h >>>> index d07fcb2bc9..24bf409d8f 100644 >>>> --- a/xen/arch/x86/include/asm/hvm/vmx/vmcs.h >>>> +++ b/xen/arch/x86/include/asm/hvm/vmx/vmcs.h >>>> @@ -656,10 +656,10 @@ bool vmx_msr_is_intercepted(struct >>>> vmx_msr_bitmap *msr_bitmap, >>>>                               unsigned int msr, bool is_write) >>>> __nonnull(1); >>>>   void virtual_vmcs_enter(const struct vcpu *); >>>>   void virtual_vmcs_exit(const struct vcpu *); >>>> -u64 virtual_vmcs_vmread(const struct vcpu *, u32 encoding); >>>> +u64 virtual_vmcs_vmread(const struct vcpu *, u32 vmcs_encoding); >>> >>> Shouldn't the first parameter be "v" to match the definition? >>> >>> Or is that a different MISRA C rule? >> >> This is a violation of MISRA C:2012 Rule 8.2: >> "function types shall be in prototype form with named parameters". >> However, I can propose a new patch version to fix it as well. > > As a general note - if you need to make multiple changes like this, it's > far better to do them as a single patch. > > The end result tends to be easier to review, and it reduces the textural > dependencies between the various patches floating about on list. > > ~Andrew Hello Andrew, I will try to do it. Regards -- Federico Serafini, M.Sc. Software Engineer, BUGSENG (http://bugseng.com) From xen-devel-bounces@lists.xenproject.org Fri Jun 30 16:18:14 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 30 Jun 2023 16:18:14 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557574.871046 (Exim 4.92) (envelope-from ) id 1qFGon-0006iN-A4; Fri, 30 Jun 2023 16:17:57 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557574.871046; Fri, 30 Jun 2023 16:17:57 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFGon-0006iG-76; Fri, 30 Jun 2023 16:17:57 +0000 Received: by outflank-mailman (input) for mailman id 557574; Fri, 30 Jun 2023 16:17:55 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFGol-0006iA-Jo for xen-devel@lists.xenproject.org; Fri, 30 Jun 2023 16:17:55 +0000 Received: from NAM12-MW2-obe.outbound.protection.outlook.com (mail-mw2nam12on20620.outbound.protection.outlook.com [2a01:111:f400:fe5a::620]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id a8817be0-1761-11ee-b237-6b7b168915f2; Fri, 30 Jun 2023 18:17:53 +0200 (CEST) Received: from SN6PR12MB2621.namprd12.prod.outlook.com (2603:10b6:805:73::15) by IA1PR12MB6164.namprd12.prod.outlook.com (2603:10b6:208:3e8::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.21; Fri, 30 Jun 2023 16:17:46 +0000 Received: from SN6PR12MB2621.namprd12.prod.outlook.com ([fe80::8018:78f7:1b08:7a54]) by SN6PR12MB2621.namprd12.prod.outlook.com ([fe80::8018:78f7:1b08:7a54%2]) with mapi id 15.20.6521.026; Fri, 30 Jun 2023 16:17:46 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: a8817be0-1761-11ee-b237-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=OheQWw/kBo7HZhb2f7Zuv32/7WBe+E9JLttDm+S2VtUV/EsJsRDuFUn5jBUe12a/xvqZDjqW6bKkVVydZIQyBF96CY2axRDVE5/gHJsH4TWdnuGt0POx6qcVQe1handJ9dlD4/KhdzWR0Pi2BdpMaZviUFmnJ/evHtauFnNDLcXhAxb7awvjHwjSNkqdIVDgrG4QM/zsNt3+P20BEWDezwobK5sa61aenf7D9sOry9AdU3Hyxr/6eEdjLLN8374FtHJvDNAOqjVaaGm30fIrfHxrwIw4PZEbZ7Qc/34gNT1bXWdHApUNMujjJ6Cy1UR6s5U8JbBqkkiaUDTzJWgcRg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=8Zl0UD3FnudfbqzvIErZ+q4HM/QgWnzSHeR8+X51gzY=; b=m+Gq4n9LAQC5J7KZNciOi5aRCbITgHQu/4zP40PjgsA5xM/KX2Jy88REzR8ZuqnilPMrEHdeYdKC8RlAU6jfJz4FSCm6RQZ/r7GfOgh1yJ5jCC8D5Fq+NM4G5yLG3DcpXn9+Mc5ZxAddyDj1fjLpgwPFjzYsGsUX1X7XatHcVh5xNE2H8LjaojjVNcB5jy1Ia7OzndxWcxT4zLFcP0I4/Obt513cuXwG0co6cme6++JD0Wf4qfnqRbUEQ/H0+njJcB/Q+UhbEOWgMML0iZlk5pyUu1sZ9c8/r8G7g3crUu4YUXfHsFlNWH1IlrzscPXW59L2n+dGI9doe1YlLkLiSg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass header.d=amd.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=8Zl0UD3FnudfbqzvIErZ+q4HM/QgWnzSHeR8+X51gzY=; b=ZLE8vDGjyxYA15+Pz+LVrF7FON9/lsj+CVMekHeLUyZq2SG+b0Q0PMn/kEgkfI840iAiCEzw1mH7BkjLr5pLXcHIQHORXrUGkECoTLUamSlqt0pUJEFtWfEmPfYfng+MKWbkZ/S58/AgZMJceXiHzxk+FuRp9GdKxksUC4s/720= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=amd.com; Message-ID: <87564d07-391b-7dfa-e28f-e13d73e67811@amd.com> Date: Fri, 30 Jun 2023 17:17:38 +0100 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v3 34/52] xen/mpu: destroy an existing entry in Xen MPU memory mapping table To: Penny Zheng , xen-devel@lists.xenproject.org Cc: Stefano Stabellini , Julien Grall , Bertrand Marquis , Volodymyr Babchuk , Wei Chen References: <20230626033443.2943270-1-Penny.Zheng@arm.com> <20230626033443.2943270-35-Penny.Zheng@arm.com> From: Ayan Kumar Halder In-Reply-To: <20230626033443.2943270-35-Penny.Zheng@arm.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-ClientProxiedBy: LO2P123CA0096.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:139::11) To SN6PR12MB2621.namprd12.prod.outlook.com (2603:10b6:805:73::15) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SN6PR12MB2621:EE_|IA1PR12MB6164:EE_ X-MS-Office365-Filtering-Correlation-Id: 6a64372e-e275-4471-770e-08db79858a64 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: rgW4DIloezK9+Y/8MAeu0tnAfFdNiZTKKvIt+tpC0ke/BaB0UDtAqmp5IR7AAmWo5ADVMuFKK/mY8ApqLV4La1JXdbLiWoUp5nPwR6/0MNaUy5xoIYn2vGisnE/ZOUuPgpZiQNrDp8KLA3UVweVLL49b7BjlMy3JpVO1rYzK257SgU2FkMKc6G6Nzgp8xjGl1C82UIurHEwDfBoJngBqEo82yOV1y2xQI41ZupMRwuAIzRr7+2KDAQ6TJYxWIB9bMTxdgc6td1qby8NNfYHwDtyQIy4JIXJ5Xo4z6d9iCgR5nHZVeJDU0kJNcjhG0rV7XbMl9ERBuR8MBrcAQ9jrnCwqMDAbclR8DmrEla2s+rPbG+RC4YRL0ZaxtXBV+DpoXL8W5IntpX/DLIPoEA0dM6TqZ3ruu4ySjYl1cmWQCgS2eVS5G1sQkP3DVOlk/tF7RWnydoWpeVXaFTuxSIsK7MPHsSW9676HqsSIJSES6Sx2F+0gc+D+xiRjQ9wjeLgqf2LaXysWhWrkR0pZqliIl1AII9nib/47yyGBwMV/1jpzknhWHCCUEjdSiIsH6ULfS5meWBtQl1DnDF/JhKzkWEP4wp9WWDgYuxvqDGL1sw8Zel9yAu760FSFSw6IaiR0fcN4oqrnrAfNnk9yxD9qiA== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SN6PR12MB2621.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(346002)(396003)(376002)(136003)(366004)(39860400002)(451199021)(26005)(4326008)(66476007)(66556008)(8936002)(6506007)(36756003)(2616005)(478600001)(54906003)(2906002)(6666004)(83380400001)(186003)(6486002)(53546011)(66946007)(316002)(31696002)(38100700002)(5660300002)(8676002)(41300700001)(31686004)(6512007)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?dFFuQVNqN2RLejdySjNZSys2RG4rTk8yWnhkU1hZd2hnUzFlbXl0S2ljYjcz?= =?utf-8?B?YUtXNG41NTZRTFdmNElGQm1kL0FOT2NIR096THpqV2pCN0dzUnljc2FOT3lM?= =?utf-8?B?MXZYMVJoc0N0OXlkWlAwTWpMOTJCaWtBQXV5YjEyWkpOOFJLSHJMSVp5S1R0?= =?utf-8?B?R1Fwb1ZzQzhBMXhTYkE3QVJPaSttVnJCRGoyZ2hla0tRRmxpeFF0d01PNUZP?= =?utf-8?B?WnpTSWpZYyt4ajBISXJXMDB4MFR4MjhLMUN3Q3FyOUhrN3FzWGtQcW5rOEND?= =?utf-8?B?Z205WTEzOW1qTDM2NGQwSm1HMzlEcVhmaU5Dd1FTWDBBaHo3dGZ1SmtnZWdP?= =?utf-8?B?eFl1WUI4M240L0wwNHcyN0JvenRFMXRMMU9RZkF2cFhSL2VCVHIvVVd0V0p6?= =?utf-8?B?d2FLQ3Z2YzFQenVrU3U5VlhNWHcvZk1BVzJjeEhkTUtoSE5yRjZnS0o2MFNo?= =?utf-8?B?K0d1a2wwQzNpS2hrbWQ5SzF2Z0d4THRXVXE2T2poc2l4RVNTQy9OeGpxTEZQ?= =?utf-8?B?NzFZV0taUmxlbm1URXdmclFkOGEwbUFNd0NzZGl4Y0EyeHFkTDBobHZrd3pW?= =?utf-8?B?cGRuQkJyTjk3ZTJDL0FReE00UG41SXFOVHpEaWJUdGxoMDBMWWdhS0NvVkZU?= =?utf-8?B?cVNmSVZQSXJ4Q1MrZkVpLytXeW1xSmd5NE42ZWxFUXJTRFdFUjY5aGhuSEh6?= =?utf-8?B?cnloWjRkRWdBM0NZT0k0UHlJc1hvY09aTFVSaGVKaUdIOGtpaGFLUDNDdEFj?= =?utf-8?B?ZmNaUlVad2JFUE8vT0ZjaEcwdzR5RzUvTmc0MFhsN1FpUE1NQUJWQWhEY3Vv?= =?utf-8?B?d2dsTUo5Sk5xanNXbTJZRVk3cEwrR0FNUTRDellDY3VrcmpiR0lmK0tUbFZm?= =?utf-8?B?N2RYZTB6Zm9sZU0yUFdVQitFUUNTYWhRM3R5Q1VPTlZtNFRLYXpTVFVsakxk?= =?utf-8?B?QTR3SUVUYWZNTVdSdFNieGM1UnRrcDlRemZ1WHpJanZNbHRVbzQ3djBJQU5z?= =?utf-8?B?WkJrQUNwMnh2a2pHa1dCMHFObk5DS0pTR3lobE9OZVBVeDNjNlhycjR6dER0?= =?utf-8?B?bVV5SnVWcTgzcEZ4OHRoU1ZNS0JhYW9UZDZYaXQwU01PdjFyekdQOEQ5UFND?= =?utf-8?B?bldMVmRKVTUwelFuTUc5SW1JekNGN3p4RitvdEl2dUVlTG1OUzNOY0FkN2s1?= =?utf-8?B?M2VMSlJ3dlo3S1VrdVF4UVJzN0V2VXhyTzM3L1J2dWJjcHNhbUNjVkx0dXNk?= =?utf-8?B?dEZuZkhhK2tiMk42SjNqOUFKeXV2bUw3Qjl4TyttUkJrRlJGY0dtQnRqcVp3?= =?utf-8?B?QlFNTzMwVUFFV0l2akVlYWl3ZDM1ZmNtVXZSc2NOVEZWVHFkVklxUXBVdks0?= =?utf-8?B?RFlYMVR4WUJzd2o1SXU1Z0owNElpbzFRMm5LbEJOOVdwUjIrdnlSOTVBVm1i?= =?utf-8?B?SXN4M3hnbHQ0NHZlblhUOTlWVldjeDVEcFNvcUtJb0NlcUd0dGQveStlWDNC?= =?utf-8?B?V1RvQzk2b0dXZysxTEJBaG9xTG1lY09WZHRyU2pOQTlrTzJFT09qVFdYRmRz?= =?utf-8?B?Q0diZVltczQvQ1RDRkk2Wk9ZbVM4YnBsaWlpNnJIRDFSbkQxQ0dMSDFwd1ls?= =?utf-8?B?emZFTjJDeXowcHRmbDdvb0hUN2FsSkpjVm1LR28zelJZL0hYY1FCSVpkY1h5?= =?utf-8?B?V2dvWUl5eG1VVHBQVTlOUXpYWXZPdVkvRWtoVDduTkxZUVFPQ3dmVzJBbEdv?= =?utf-8?B?SlVIYWJiY0UrL09yZTMyMUJZbzQrUFpwTkJQdWZGNGxQdlJiZHNvR3FQdGdU?= =?utf-8?B?RUorNzdKTHhmT3MwQzltRWZ2MXVTcUc3ei9jTGIzMXRhL3Voalc3TVJxcjMr?= =?utf-8?B?TldRRU0wR3JsNDBoS1VQdmNDRXZ6VDhFcC83QUNPeC85VE9xSFBDTHE3YjFS?= =?utf-8?B?TmlzOFZyVGtLa3Q2RjE4cGRDc1pOdFArdDQ1Z0ZoYWVmRFZYYkFGcVhBbEp0?= =?utf-8?B?aTI0Z2ZITE5rUXNjSGZSTTVvYTc0aGdzbFhOc1ZoM1U5aHdXYS9rVlFOWDRB?= =?utf-8?B?cThyeWRIY1JVVWVqWFYxY1piNG5HK2dDcUhQdmxxaE1jR2NuRHRidTFEWFJG?= =?utf-8?Q?TXtypdRWFdvtF0HYQdKsDUeLI?= X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-Network-Message-Id: 6a64372e-e275-4471-770e-08db79858a64 X-MS-Exchange-CrossTenant-AuthSource: SN6PR12MB2621.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Jun 2023 16:17:46.4079 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: souSrwuFd2spUU/WhFWgHiC2upG/DgqArAurx9gQOMt/yuDGTBc7NtVzKxgn5MIXNuiELG3K4OEVxQFItEldgg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: IA1PR12MB6164 On 26/06/2023 04:34, Penny Zheng wrote: > CAUTION: This message has originated from an External Source. Please use proper judgment and caution when opening attachments, clicking links, or responding to this email. > > > This commit expands xen_mpumap_update/xen_mpumap_update_entry to include > destroying an existing entry. > > We define a new helper "control_xen_mpumap_region_from_index" to enable/disable > the MPU region based on index. If region is within [0, 31], we could quickly > disable the MPU region through PRENR_EL2 which provides direct access to the > PRLAR_EL2.EN bits of EL2 MPU regions. > > Rignt now, we only support destroying a *WHOLE* MPU memory region, > part-region removing is not supported, as in worst case, it will > leave two fragments behind. > > Signed-off-by: Penny Zheng > Signed-off-by: Wei Chen > --- > v3: > - make pr_get_base()/pr_get_limit() static inline > - need an isb to ensure register write visible before zeroing the entry > --- > xen/arch/arm/include/asm/arm64/mpu.h | 2 + > xen/arch/arm/include/asm/arm64/sysregs.h | 3 + > xen/arch/arm/mm.c | 5 ++ > xen/arch/arm/mpu/mm.c | 74 ++++++++++++++++++++++++ > 4 files changed, 84 insertions(+) > > diff --git a/xen/arch/arm/include/asm/arm64/mpu.h b/xen/arch/arm/include/asm/arm64/mpu.h > index 715ea69884..aee7947223 100644 > --- a/xen/arch/arm/include/asm/arm64/mpu.h > +++ b/xen/arch/arm/include/asm/arm64/mpu.h > @@ -25,6 +25,8 @@ > #define REGION_UART_SEL 0x07 > #define MPUIR_REGION_MASK ((_AC(1, UL) << 8) - 1) > > +#define MPU_PRENR_BITS 32 This is common to R52 and R82. Thus, you can put it in the common file (may be xen/arch/arm/include/asm/mpu/mm.h) > + > /* Access permission attributes. */ > /* Read/Write at EL2, No Access at EL1/EL0. */ > #define AP_RW_EL2 0x0 > diff --git a/xen/arch/arm/include/asm/arm64/sysregs.h b/xen/arch/arm/include/asm/arm64/sysregs.h > index c8a679afdd..96c025053b 100644 > --- a/xen/arch/arm/include/asm/arm64/sysregs.h > +++ b/xen/arch/arm/include/asm/arm64/sysregs.h > @@ -509,6 +509,9 @@ > /* MPU Type registers encode */ > #define MPUIR_EL2 S3_4_C0_C0_4 > > +/* MPU Protection Region Enable Register encode */ > +#define PRENR_EL2 S3_4_C6_C1_1 > + > #endif > > /* Access to system registers */ > diff --git a/xen/arch/arm/mm.c b/xen/arch/arm/mm.c > index 8625066256..247d17cfa1 100644 > --- a/xen/arch/arm/mm.c > +++ b/xen/arch/arm/mm.c > @@ -164,7 +164,12 @@ int destroy_xen_mappings(unsigned long s, unsigned long e) > ASSERT(IS_ALIGNED(s, PAGE_SIZE)); > ASSERT(IS_ALIGNED(e, PAGE_SIZE)); > ASSERT(s <= e); > +#ifndef CONFIG_HAS_MPU > return xen_pt_update(s, INVALID_MFN, (e - s) >> PAGE_SHIFT, 0); > +#else > + return xen_mpumap_update(virt_to_maddr((void *)s), > + virt_to_maddr((void *)e), 0); > +#endif > } Refer my comment in previous patch. You can have two implementations of this function 1) xen/arch/arm/mmu/mm.c 2) xen/arch/arm/mpu/mm.h > > int modify_xen_mappings(unsigned long s, unsigned long e, unsigned int flags) > diff --git a/xen/arch/arm/mpu/mm.c b/xen/arch/arm/mpu/mm.c > index 0a65b58dc4..a40055ae5e 100644 > --- a/xen/arch/arm/mpu/mm.c > +++ b/xen/arch/arm/mpu/mm.c > @@ -425,6 +425,59 @@ static int mpumap_contain_region(pr_t *table, uint8_t nr_regions, > return MPUMAP_REGION_FAILED; > } > > +/* Disable or enable EL2 MPU memory region at index #index */ > +static void control_mpu_region_from_index(uint8_t index, bool enable) > +{ > + pr_t region; > + > + read_protection_region(®ion, index); > + if ( !region_is_valid(®ion) ^ enable ) > + { > + printk(XENLOG_WARNING > + "mpu: MPU memory region[%u] is already %s\n", index, > + enable ? "enabled" : "disabled"); > + return; > + } > + > + /* > + * ARM64v8R provides PRENR_EL2 to have direct access to the > + * PRLAR_EL2.EN bits of EL2 MPU regions from 0 to 31. > + */ > + if ( index < MPU_PRENR_BITS ) > + { > + uint64_t orig, after; > + > + orig = READ_SYSREG(PRENR_EL2); > + if ( enable ) > + /* Set respective bit */ > + after = orig | (1UL << index); > + else > + /* Clear respective bit */ > + after = orig & (~(1UL << index)); > + WRITE_SYSREG(after, PRENR_EL2); > + } > + else > + { > + region.prlar.reg.en = enable ? 1 : 0; > + write_protection_region((const pr_t*)®ion, index); > + } > + /* Ensure the write before zeroing the entry */ dsb(); /* to ensure write completes */ > + isb(); > + > + /* Update according bitfield in xen_mpumap_mask */ > + spin_lock(&xen_mpumap_alloc_lock); > + > + if ( enable ) > + set_bit(index, xen_mpumap_mask); > + else > + { > + clear_bit(index, xen_mpumap_mask); > + memset(&xen_mpumap[index], 0, sizeof(pr_t)); > + } > + > + spin_unlock(&xen_mpumap_alloc_lock); > +} > + > /* > * Update an entry in Xen MPU memory region mapping table(xen_mpumap) at > * the index @idx. > @@ -461,6 +514,27 @@ static int xen_mpumap_update_entry(paddr_t base, paddr_t limit, > > write_protection_region((const pr_t*)(&xen_mpumap[idx]), idx); > } > + else > + { > + /* > + * Currently, we only support destroying a *WHOLE* MPU memory region, > + * part-region removing is not supported, as in worst case, it will > + * leave two fragments behind. > + * part-region removing will be introduced only when actual usage > + * comes. > + */ > + if ( rc == MPUMAP_REGION_INCLUSIVE ) > + { > + region_printk("mpu: part-region removing is not supported\n"); > + return -EINVAL; > + } > + > + /* We are removing the region */ > + if ( rc != MPUMAP_REGION_FOUND ) > + return -EINVAL; > + > + control_mpu_region_from_index(idx, false); > + } > > return 0; > } > -- > 2.25.1 > > - Ayan From xen-devel-bounces@lists.xenproject.org Fri Jun 30 16:18:37 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 30 Jun 2023 16:18:37 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557580.871056 (Exim 4.92) (envelope-from ) id 1qFGpR-0007FO-NZ; Fri, 30 Jun 2023 16:18:37 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557580.871056; Fri, 30 Jun 2023 16:18:37 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFGpR-0007FH-Kp; Fri, 30 Jun 2023 16:18:37 +0000 Received: by outflank-mailman (input) for mailman id 557580; Fri, 30 Jun 2023 16:18:37 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFGpQ-00077E-SA for xen-devel@lists.xenproject.org; Fri, 30 Jun 2023 16:18:37 +0000 Received: from mga07.intel.com (mga07.intel.com [134.134.136.100]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id c10e8b43-1761-11ee-8611-37d641c3527e; Fri, 30 Jun 2023 18:18:33 +0200 (CEST) Received: from fmsmga006.fm.intel.com ([10.253.24.20]) by orsmga105.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 30 Jun 2023 09:18:30 -0700 Received: from fmsmsx601.amr.corp.intel.com ([10.18.126.81]) by fmsmga006.fm.intel.com with ESMTP; 30 Jun 2023 09:18:24 -0700 Received: from fmsmsx610.amr.corp.intel.com (10.18.126.90) by fmsmsx601.amr.corp.intel.com (10.18.126.81) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Fri, 30 Jun 2023 09:18:23 -0700 Received: from fmsedg601.ED.cps.intel.com (10.1.192.135) by fmsmsx610.amr.corp.intel.com (10.18.126.90) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27 via Frontend Transport; Fri, 30 Jun 2023 09:18:23 -0700 Received: from NAM11-DM6-obe.outbound.protection.outlook.com (104.47.57.169) by edgegateway.intel.com (192.55.55.70) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2507.27; Fri, 30 Jun 2023 09:18:23 -0700 Received: from PH8PR11MB6879.namprd11.prod.outlook.com (2603:10b6:510:229::22) by SN7PR11MB6874.namprd11.prod.outlook.com (2603:10b6:806:2a5::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.19; Fri, 30 Jun 2023 16:18:21 +0000 Received: from PH8PR11MB6879.namprd11.prod.outlook.com ([fe80::b33c:de68:eacf:e9c4]) by PH8PR11MB6879.namprd11.prod.outlook.com ([fe80::b33c:de68:eacf:e9c4%3]) with mapi id 15.20.6544.019; Fri, 30 Jun 2023 16:18:21 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: c10e8b43-1761-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1688141913; x=1719677913; h=message-id:date:subject:to:references:from:in-reply-to: content-transfer-encoding:mime-version; bh=1RoFsUtIl4m4Jy2z09xkPKdoCxdBiU5Y3E1w8N8qHFo=; b=U75d2S6othUn8w2eCO7i/kPU+70u7xZU4I5NCFqjKbl+iIadb6vXFqyP WYOX047Jh/4IOAMWLnyw3zIzfCcWNA10D9f05CrabjHhX/YiaGZl+G9QZ tlAwCX/SLMjVrlcsnlPWoYNFFMM6v8ks0a5jEiYR4NXcTxWczSzgGcVYQ LX/nAL/LkDfvYNiooC0txHx7A0X8X8dGhpJjZ+H7u9QXkcc0XRCoyxpzC f3WeGkb6g8WZWi/MbOfMgvckzJGetf1mSYQ9ENCOdTKlfLCUJB2CURXIC 25hCnuhAIkgVtCc46nysv9g4WwwaO3+3u4NqsB0B8ne0FW4xohlm7fAix A==; X-IronPort-AV: E=McAfee;i="6600,9927,10757"; a="428476228" X-IronPort-AV: E=Sophos;i="6.01,171,1684825200"; d="scan'208";a="428476228" X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10757"; a="964450424" X-IronPort-AV: E=Sophos;i="6.01,171,1684825200"; d="scan'208";a="964450424" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=GigzMC/zOZ35bD1LyH9K5lpUgdoI7VDgvpQnGs4GLWRJiVP2TLwhGqW/euGhDxzuizpLGgnNTm/H1AyY6+KihT/n7bZkb48afkIspctTPUAMvUEpwtzberJq4Y3S0j6bRZ3dpCl7tZiHGo94gV/JEOFiY6LpKslcW2b+BNV3LlKksGP5J7xHoxiKSGbb/XrX9DduBVfIVr4AzqmhhFUxD2Ik4A00KgCRV8K1KsfqLYukvvtgRYORjp5e3LHeKdP1PEPtBgGwz+OwhlFTs+ZtNMUXFnwtMxro4tOTeNv5Ml9EwCWLVHqKhuRqkSknOpH/O4yyhIwdDNg5rejeyfLlUA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=IoBdhZV6z1gwbFKh2TDZZVIIHq2xn2PQGFAiSTDlYiM=; b=lqUgMfYhccZn3IyAm76cnWqIYV5//6WrDTMqO5DYGVcM5t8wINzUgLLl4jeNhHcwAXhK6L0Vlqwwgeiy6M+kZcBe1lh7v0yLUlXakaDe5//GNBmhbOA6pzagAfDKxJJV8uec8r7OH4wFisM3sJ3GmSBOmoEQoYDs6QWIHx0nhSmBuo2Wv7VTDxSIhkBn64Agq5HtVro4WrMh1wPfkM88ef2LftqlitYSGOdHA0vncqUZz0XjfDrLeqZhpMBcQTdINdmBLgT2LZ1QuZ0PQe1sC2u2vXrrFZjBbLYf3U/J9uyI0DDs3ZTXCareCCWnUi/O3F8HuwHbwPaNjn2WsGx0gw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com; dkim=pass header.d=intel.com; arc=none Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=intel.com; Message-ID: <5edb57f9-4c11-270b-a9de-c176ec1875fd@intel.com> Date: Fri, 30 Jun 2023 09:18:18 -0700 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [QEMU PATCH 1/1] virtgpu: do not destroy resources when guest suspend Content-Language: en-US To: References: <20230608025655.1674357-1-Jiqian.Chen@amd.com> <20230608025655.1674357-2-Jiqian.Chen@amd.com> <980355eb-0241-2690-8ba4-3f136dd8555a@intel.com> From: "Kim, Dongwon" In-Reply-To: Content-Type: text/plain; charset="UTF-8"; format=flowed Content-Transfer-Encoding: 8bit X-ClientProxiedBy: BY3PR10CA0003.namprd10.prod.outlook.com (2603:10b6:a03:255::8) To PH8PR11MB6879.namprd11.prod.outlook.com (2603:10b6:510:229::22) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: PH8PR11MB6879:EE_|SN7PR11MB6874:EE_ X-MS-Office365-Filtering-Correlation-Id: 5616823d-fe5d-4928-9e93-08db79859ed9 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: y/q2XJBiUe4cQWP4ObAFpsx6jNdqQIruMKZcKpln2rBzZ1lGArgSDE8qxHQPob+7KWKXCwbA5lgexqeZPWblACa3hwR/KH8LiMN6d1OkTU0Yk0aKYGB49r9aVyi5c7NnVfI4HT4/eoYp+qzborrzi3A+++EIvnFaC7AipR+iXG2381BoEmbFOG5AL5n5rBqCp5l6lSS0vQHf5TMWw0c080/E2J3m6hnVcR7c1KPV/OeJWiWJBRSy7ZgEnMqHHA/Fbn8qTnVwtwBangqTgxy9aLew29w8ZidLTP8kFKgxC/exdWocfX0dRoMy9nrczBhE/wizO+Ga5J4UN5l3m9GC8VXBGObx1Ma9JQUpk5WAhVQFORdx/8Q843/ILFPw7EN1ZeV/fwPm1Mxi7DfCMTLrBziZ3QSnP4eEmL+Okbs7Vw2IRGVVFnzZw7Aqx43OJ0iLc7LedW27K9DRf+0j22BaEjTW57jafe8lyDqUnJvyI03b3M5zFTU5nKqEdvuxnQRDy0Ajd3igDoElKpAB3vSeU8yV6NjWHBP/Kdy/VTAx4gnHbNmrP0IpliTzV9X2pwt8GhYUh00CFjr9PpKeJXr+ANSjKS2A67m5REzAOkLUKHjHNqUcnm4fFxOfX5H4TfUo06N65E8nV6zp0Bryn+Njug== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:PH8PR11MB6879.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(346002)(39860400002)(136003)(366004)(376002)(396003)(451199021)(83380400001)(15650500001)(2616005)(2906002)(38100700002)(82960400001)(36756003)(8936002)(8676002)(5660300002)(86362001)(31686004)(6512007)(41300700001)(66946007)(66556008)(66476007)(6916009)(6666004)(316002)(6486002)(478600001)(186003)(31696002)(53546011)(6506007)(26005)(43740500002)(45980500001);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?RkNZRml5aitBa2Q4YW9JNjl6amdsbVErTHFqUW4rV2lYVDBlUHVpVFc5em9y?= =?utf-8?B?bTRBVkVibTRPWGRUUHBnRm8waWJpY01pSDYyMEJjamI4MzVsKytYZzc5WFU1?= =?utf-8?B?VkZ3cUJ2cG9KM1JwbmdtUjRnc0VHSGFndm92czNmYnhpcUt4S1dnamZPY1gz?= =?utf-8?B?L3NnNko0RDNmc3QzZC9JL2Q1ZkJUVTFScmdJUFVJTS83TFBRUk9EVC9NbU90?= =?utf-8?B?cDRJZWFDMERwelhhTE8zdkdidHkvYTVrT2YxUXhqVmJkV1RuNVNWM1dvMjJF?= =?utf-8?B?c0tLNGk2TmJMY0FWK3JhYUllVlJUdFFGYmpwaDE3MmJZS2pNOHVvb3Q2VVZV?= =?utf-8?B?c05IUjNBN3BobzVlU2ZyYmJFaTlTZVBjRUlJTUtRTHVaV25zSHNZa1haNjRU?= =?utf-8?B?SVM1alBLNWY1clhDbGN2Wm8xTTZ5bFZqOEVlc3RIVGZaZTZtTnZBM3Raa3Mz?= =?utf-8?B?YXdGeDVnS2VnN0pmRWptV0k4eFNkR2NRZnRwUHRxQ2JDeGxiSG15ZGlkOGJi?= =?utf-8?B?b0ZmalF0ODk1NGhyeG05TU81TW5lUVh5MkJlRis4ZDlPbFEwampnVWpVcS8v?= =?utf-8?B?R0JNSUpzVkk5STVmN0t2RW83TmNURWFXSFptcGplWEhMWGNEdmVvSis5RjFt?= =?utf-8?B?TE9kWDJ1azFNM2hrVXJzR0VLT2RWemZ0K3VMdHFpaVBMVlJ4eTZUTmN4YzhE?= =?utf-8?B?Y2lWSlNxWCtvdERuTCtWa3lvL3BZMEt4dlJJUGp2citFTW1aVmZFUTdrV3Yv?= =?utf-8?B?MzMxN3dVTERwemtYSFc2Q1hCV2FsTnFxVG9Ub0kxZ0Y3WjhPM3loNnFMaU1i?= =?utf-8?B?aDZSb0dFQldWK1dzSmFFNFJMRzZGZ1Z5R1dYOVF0Vnd4NkxoY0tvYWlpMDFB?= =?utf-8?B?bHA2cS9QN3FtRmllUEpwUTRseG11dU9LNXRzdUgySlplaGVRWE5XeURyNWNv?= =?utf-8?B?U25VQVd4THU1UGtnVGEvQm10bDR6MFVza1BKVk82UUd6dlZ2aEcwSzRhUTZm?= =?utf-8?B?N3JRNE5nMEZQZWg2WC9IYTdlSkQxTjYybk1YeDdVcHp0ZzFUakJUWlZnL3pt?= =?utf-8?B?TWVrNDBEcmlnQWNJdEsxSG1yNHhsTk5Rcno0S3NmV09uM1VMUGFlK0NQRlRr?= =?utf-8?B?ZTRnQjhOcWJmSERjalRmY3ZIVmw4NnVLOGp6UkpLejF5TEtjdU1JV1lGOXpq?= =?utf-8?B?QUpRWTI1cngxU3pPOGRjcEpVWVNCRkhZTUdTeHY3YnFkQWpIZEJFOUxYa01v?= =?utf-8?B?ZndvUkhBSTArOFZYZEd2c3RmSlN5cVl2eVZRdDVuWkRkd0dnREtBZlMrU0Qr?= =?utf-8?B?bzNKazl3YitDK29TVGlEUk1YSndjakVnZ3pkVHVaZGNsdjNEMnZEcCtIVlJ6?= =?utf-8?B?U3pBNk95c0tvTXF1ZU13R0tMaTgvdjB1T1lkQTRsMmpwcWZQNko0WDFHd0dt?= =?utf-8?B?aDhQQjRxRHhsZC9LaDl6RlpsYkVIem9CWk8zY3kvR0UzTW1BWU5Cc25oS1Z0?= =?utf-8?B?S2FmWUE5N09jTVY3T1V1a2pDOUlGaFlJSWNWdHB4aHc0Q2l1bDcyR1lsYXdL?= =?utf-8?B?S1gyYXh0VGM2V2ZmYkVlYTNLeXB1eWJSREpyeER2d0JSajc2Vy9JZ3BVbDdx?= =?utf-8?B?RmlvMmUyTHQwS0J0ZmZ6eCt1eStFb0p4RGdKYk5obTBVS094ZzBiMnBHMGxM?= =?utf-8?B?SXJTUUVROUJWV1Q5Q0ZoYXF6TEVwVkZBNjAxTis5bW1IeFBpK3lDeFFwQzNP?= =?utf-8?B?WnBPNGpsakxSZmdMUHUvVjVWWlpIRlF2MU5yVzJDQVJ4ZmdnalRCOU13Wkx2?= =?utf-8?B?WDArOFFiUW96bFJGSEs3MVY5Y0JGOFFoSDVsUGpTeGZyQVRFY1hxdUV0N2Rk?= =?utf-8?B?b2FOTG94c2V3NkNjRWg1YXg1Q1I1dk43YUc4akkvWDNtMjI5bEJHS1B5YkJp?= =?utf-8?B?aVBabktXYXFIOFRNcVcwSldBaG1FTmxMV0VtOWNXSXA2ZzZlZFdlYkl4ckx6?= =?utf-8?B?aVZDMjFNM2NzYmlzYjhZT1AxTUN4NDJNNVRaWUtNMm9DY3l3bW02dGp3RGdP?= =?utf-8?B?a0tieXYvR0VxVTVvS3dpckVna3NSQ05tNXVkbmJyTUdJclV4bW9nOFdGakxR?= =?utf-8?Q?5HjqD6JFSHvR+EKkUoZHvgx6H?= X-MS-Exchange-CrossTenant-Network-Message-Id: 5616823d-fe5d-4928-9e93-08db79859ed9 X-MS-Exchange-CrossTenant-AuthSource: PH8PR11MB6879.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Jun 2023 16:18:20.7514 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 46c98d88-e344-4ed4-8496-4ed7712e255d X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: KmDNSZp/65GlUuo5nBo4CPwOUXvWnfIoGfFFdmekkhe/F7bXb3XSJ+ETgolU2kb7pOWAAhwrt29kVybam+SHmw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN7PR11MB6874 X-OriginatorOrg: intel.com Hi, On 6/30/2023 12:14 AM, Chen, Jiqian wrote: > Hi Dongwon, > > On 2023/6/30 00:53, Kim, Dongwon wrote: >> This method - letting QEMU not remove resources would work on S3 case but with S4, the QEMU would lose all the resources anyway as the process will be terminated. So objects restoring was only option for us as > My patch is for S3 function on Xen. I haven't tried S4 before, I will try S4 later. I understand s3 is your priority but this code path will be executed for s4 as well, so I think we should make sure s4 is covered as well. >> in [RFC PATCH 2/2] drm/virtio: restore virtio_gpu_objects upon suspend and resume (lists.freedesktop.org) >> >> But I only considered and tested cases with scanout blob resources, so this may not cover other resource types... > I tried your patch, but I can't success to resume guest and guest crashed. Hmm, probably due to some difference in the setting. Are you using blob guest scanout (sharing display by sharing scatter-gather list of the buffer for zero copy)? We may have to debug it little bit. Anyway, the patch I shared is based on "recovery" instead of forcing QEMU to keep the resources. I think this is only way to cover both S3 and S4. Why don't we have some time to look into this path as well? >> On 6/7/2023 7:56 PM, Jiqian Chen wrote: >>> After suspending and resuming guest VM, you will get >>> a black screen, and the display can't come back. >>> >>> This is because when guest did suspending, it called >>> into qemu to call virtio_gpu_gl_reset. In function >>> virtio_gpu_gl_reset, it destroyed resources and reset >>> renderer, which were used for display. As a result, >>> guest's screen can't come back to the time when it was >>> suspended and only showed black. >>> >>> So, this patch adds a new ctrl message >>> VIRTIO_GPU_CMD_STATUS_FREEZING to get notification from >>> guest. If guest is during suspending, it sets freezing >>> status of virtgpu to true, this will prevent destroying >>> resources and resetting renderer when guest calls into >>> virtio_gpu_gl_reset. If guest is during resuming, it sets >>> freezing to false, and then virtio_gpu_gl_reset will keep >>> its origin actions and has no other impaction. >>> >>> Signed-off-by: Jiqian Chen >>> --- >>>   hw/display/virtio-gpu-gl.c                  |  9 ++++++- >>>   hw/display/virtio-gpu-virgl.c               |  3 +++ >>>   hw/display/virtio-gpu.c                     | 26 +++++++++++++++++++-- >>>   include/hw/virtio/virtio-gpu.h              |  3 +++ >>>   include/standard-headers/linux/virtio_gpu.h |  9 +++++++ >>>   5 files changed, 47 insertions(+), 3 deletions(-) >>> >>> diff --git a/hw/display/virtio-gpu-gl.c b/hw/display/virtio-gpu-gl.c >>> index e06be60dfb..e11ad233eb 100644 >>> --- a/hw/display/virtio-gpu-gl.c >>> +++ b/hw/display/virtio-gpu-gl.c >>> @@ -100,7 +100,14 @@ static void virtio_gpu_gl_reset(VirtIODevice *vdev) >>>        */ >>>       if (gl->renderer_inited && !gl->renderer_reset) { >>>           virtio_gpu_virgl_reset_scanout(g); >>> -        gl->renderer_reset = true; >>> +        /* >>> +         * If guest is suspending, we shouldn't reset renderer, >>> +         * otherwise, the display can't come back to the time when >>> +         * it was suspended after guest resumed. >>> +         */ >>> +        if (!g->freezing) { >>> +            gl->renderer_reset = true; >>> +        } >>>       } >>>   } >>>   diff --git a/hw/display/virtio-gpu-virgl.c b/hw/display/virtio-gpu-virgl.c >>> index 73cb92c8d5..183ec92d53 100644 >>> --- a/hw/display/virtio-gpu-virgl.c >>> +++ b/hw/display/virtio-gpu-virgl.c >>> @@ -464,6 +464,9 @@ void virtio_gpu_virgl_process_cmd(VirtIOGPU *g, >>>       case VIRTIO_GPU_CMD_GET_EDID: >>>           virtio_gpu_get_edid(g, cmd); >>>           break; >>> +    case VIRTIO_GPU_CMD_STATUS_FREEZING: >>> +        virtio_gpu_cmd_status_freezing(g, cmd); >>> +        break; >>>       default: >>>           cmd->error = VIRTIO_GPU_RESP_ERR_UNSPEC; >>>           break; >>> diff --git a/hw/display/virtio-gpu.c b/hw/display/virtio-gpu.c >>> index 5e15c79b94..8f235d7848 100644 >>> --- a/hw/display/virtio-gpu.c >>> +++ b/hw/display/virtio-gpu.c >>> @@ -373,6 +373,16 @@ static void virtio_gpu_resource_create_blob(VirtIOGPU *g, >>>       QTAILQ_INSERT_HEAD(&g->reslist, res, next); >>>   } >>>   +void virtio_gpu_cmd_status_freezing(VirtIOGPU *g, >>> +                         struct virtio_gpu_ctrl_command *cmd) >>> +{ >>> +    struct virtio_gpu_status_freezing sf; >>> + >>> +    VIRTIO_GPU_FILL_CMD(sf); >>> +    virtio_gpu_bswap_32(&sf, sizeof(sf)); >>> +    g->freezing = sf.freezing; >>> +} >>> + >>>   static void virtio_gpu_disable_scanout(VirtIOGPU *g, int scanout_id) >>>   { >>>       struct virtio_gpu_scanout *scanout = &g->parent_obj.scanout[scanout_id]; >>> @@ -986,6 +996,9 @@ void virtio_gpu_simple_process_cmd(VirtIOGPU *g, >>>       case VIRTIO_GPU_CMD_RESOURCE_DETACH_BACKING: >>>           virtio_gpu_resource_detach_backing(g, cmd); >>>           break; >>> +    case VIRTIO_GPU_CMD_STATUS_FREEZING: >>> +        virtio_gpu_cmd_status_freezing(g, cmd); >>> +        break; >>>       default: >>>           cmd->error = VIRTIO_GPU_RESP_ERR_UNSPEC; >>>           break; >>> @@ -1344,6 +1357,8 @@ void virtio_gpu_device_realize(DeviceState *qdev, Error **errp) >>>       QTAILQ_INIT(&g->reslist); >>>       QTAILQ_INIT(&g->cmdq); >>>       QTAILQ_INIT(&g->fenceq); >>> + >>> +    g->freezing = false; >>>   } >>>     void virtio_gpu_reset(VirtIODevice *vdev) >>> @@ -1352,8 +1367,15 @@ void virtio_gpu_reset(VirtIODevice *vdev) >>>       struct virtio_gpu_simple_resource *res, *tmp; >>>       struct virtio_gpu_ctrl_command *cmd; >>>   -    QTAILQ_FOREACH_SAFE(res, &g->reslist, next, tmp) { >>> -        virtio_gpu_resource_destroy(g, res); >>> +    /* >>> +     * If guest is suspending, we shouldn't destroy resources, >>> +     * otherwise, the display can't come back to the time when >>> +     * it was suspended after guest resumed. >>> +     */ >>> +    if (!g->freezing) { >>> +        QTAILQ_FOREACH_SAFE(res, &g->reslist, next, tmp) { >>> +            virtio_gpu_resource_destroy(g, res); >>> +        } >>>       } >>>         while (!QTAILQ_EMPTY(&g->cmdq)) { >>> diff --git a/include/hw/virtio/virtio-gpu.h b/include/hw/virtio/virtio-gpu.h >>> index 2e28507efe..c21c2990fb 100644 >>> --- a/include/hw/virtio/virtio-gpu.h >>> +++ b/include/hw/virtio/virtio-gpu.h >>> @@ -173,6 +173,7 @@ struct VirtIOGPU { >>>         uint64_t hostmem; >>>   +    bool freezing; >>>       bool processing_cmdq; >>>       QEMUTimer *fence_poll; >>>       QEMUTimer *print_stats; >>> @@ -284,5 +285,7 @@ void virtio_gpu_virgl_reset_scanout(VirtIOGPU *g); >>>   void virtio_gpu_virgl_reset(VirtIOGPU *g); >>>   int virtio_gpu_virgl_init(VirtIOGPU *g); >>>   int virtio_gpu_virgl_get_num_capsets(VirtIOGPU *g); >>> +void virtio_gpu_cmd_status_freezing(VirtIOGPU *g, >>> +                         struct virtio_gpu_ctrl_command *cmd); >>>     #endif >>> diff --git a/include/standard-headers/linux/virtio_gpu.h b/include/standard-headers/linux/virtio_gpu.h >>> index 2da48d3d4c..aefffbd751 100644 >>> --- a/include/standard-headers/linux/virtio_gpu.h >>> +++ b/include/standard-headers/linux/virtio_gpu.h >>> @@ -116,6 +116,9 @@ enum virtio_gpu_ctrl_type { >>>       VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID, >>>       VIRTIO_GPU_RESP_ERR_INVALID_CONTEXT_ID, >>>       VIRTIO_GPU_RESP_ERR_INVALID_PARAMETER, >>> + >>> +    /* status */ >>> +    VIRTIO_GPU_CMD_STATUS_FREEZING = 0x1300, >>>   }; >>>     enum virtio_gpu_shm_id { >>> @@ -453,4 +456,10 @@ struct virtio_gpu_resource_unmap_blob { >>>       uint32_t padding; >>>   }; >>>   +/* VIRTIO_GPU_CMD_STATUS_FREEZING */ >>> +struct virtio_gpu_status_freezing { >>> +    struct virtio_gpu_ctrl_hdr hdr; >>> +    __u32 freezing; >>> +}; >>> + >>>   #endif From xen-devel-bounces@lists.xenproject.org Fri Jun 30 16:43:46 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 30 Jun 2023 16:43:46 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557585.871065 (Exim 4.92) (envelope-from ) id 1qFHDU-0002bw-Ol; Fri, 30 Jun 2023 16:43:28 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557585.871065; Fri, 30 Jun 2023 16:43:28 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFHDU-0002bp-MA; Fri, 30 Jun 2023 16:43:28 +0000 Received: by outflank-mailman (input) for mailman id 557585; Fri, 30 Jun 2023 16:33:43 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFH43-0001bs-R7 for xen-devel@lists.xenproject.org; Fri, 30 Jun 2023 16:33:43 +0000 Received: from mail-lj1-x234.google.com (mail-lj1-x234.google.com [2a00:1450:4864:20::234]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id de9ac9b5-1763-11ee-8611-37d641c3527e; Fri, 30 Jun 2023 18:33:40 +0200 (CEST) Received: by mail-lj1-x234.google.com with SMTP id 38308e7fff4ca-2b6c3921c8bso33651771fa.3 for ; Fri, 30 Jun 2023 09:33:39 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: de9ac9b5-1763-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cloud.com; s=cloud; t=1688142819; x=1690734819; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=Dxb/O+JswpHRqDeYdVbgY0s1pnpS0eAChQozAuR9Ek8=; b=XSze45En8TPX11GvwstEKTjzJVe2qBycJbPrl+8j8s5q7cH3npeLKTanTsmrdkSKVB sLVXoppZn2LMfSktvkPfLLn3cB6O8m3Z1+YN8USsl2Uu02rD4AiDJz9cZHOTowVtWQ8R XxVGpXFSWfFimTWNqfSYTZEcn4B3E2kIIw2AI= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1688142819; x=1690734819; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=Dxb/O+JswpHRqDeYdVbgY0s1pnpS0eAChQozAuR9Ek8=; b=b2xmpFC6Zhe9+hEyUjZRYzPuJcbZe+h4UbmHqiUjyykMUy9euYXc4ekXZkDaNzLWbW 6rreBdTeXO1NAiPTehVuM0Vnds73u+9TnoJaRvfs+bUrN6A9v82DkvB0YrO+f4UGpSqb pRlvkSTawTUR5zCdTvgKwvbQG4ZRoUa27UTLpgOniQI8vbsHr568w1143C2vcSuJ9X3S ePxKkAvxm4XRpxFZx1iKlClylitvpOy+CcmCDKNkf8/WNOE5JZEtcS0jGpbBInLz9S9U dL61wf/GIJpd3V37Vpi0c54Ez19QAMgFApE8uWv+fqH8NleQev674ncj/xsyRB4jZWHQ wi3Q== X-Gm-Message-State: ABy/qLYR2g1/ulCqjLEXeyU9BQUDy0zMg94iw830zpcKYErUe+UhjuJ/ 1EpLT6VIj995Mv8zsZjLXMkJZ/sR2Ecof9y4TE17Xw== X-Google-Smtp-Source: APBJJlEIPXk54QN4sodTOpnRUCCZb8lf6Una46pz9MNjMEgeFi5ruhcZ7ct+h8Y7cHAOfQaq6JGvGYyyHPNy/sMKVGg= X-Received: by 2002:a2e:7a0f:0:b0:2b2:1f2f:705f with SMTP id v15-20020a2e7a0f000000b002b21f2f705fmr2244697ljc.4.1688142819490; Fri, 30 Jun 2023 09:33:39 -0700 (PDT) MIME-Version: 1.0 References: <20230630113756.672607-1-george.dunlap@cloud.com> In-Reply-To: <20230630113756.672607-1-george.dunlap@cloud.com> From: Marcus Granado Date: Fri, 30 Jun 2023 17:33:28 +0100 Message-ID: Subject: Re: [PATCH 1/2] credit: Limit load balancing to once per millisecond To: George Dunlap Cc: xen-devel@lists.xenproject.org, Dario Faggioli , Andrew Cooper , George Dunlap , Jan Beulich , Julien Grall , Stefano Stabellini , Wei Liu Content-Type: text/plain; charset="UTF-8" On Fri, 30 Jun 2023 at 12:38, George Dunlap wrote: > ... > Add a parameter, load_balance_ratelimit, to limit the frequency of > load balance operations on a given pcpu. Default this to 1 > millisecond. > ... > Without this patch, on a system with a vcpu:pcpu ratio of 2:1, running > Windows guests (which will end up calling YIELD during spinlock > contention), this patch increased performance significantly. > --- I tested this patch with the following: - the vcpu:pcpu ratio of circa 2:1 in the host, - host with 72 pcpus - and 9 Windows guests with 16 vcpus each, - with background load inside the guests, where a few Windows apps were starting and stopping in parallel in a loop in order to hit 100% vcpu usage in each guest, so that the host pcpu usage was constantly at 100%. and observed a significant improvement in the responsiveness experienced by a user moving the mouse and using the keyboard inside the Windows guests, compared to when this patch is not present. In addition, when launching a trivial executable like 'ver' remotely in the Windows guests during the background load above, I noticed that: - when vcpu:pcpu is 1:1 and host has 100% pcpu usage -> with and without this patch, launching 'ver' remotely took 1 second or so - when vcpu:pcpu is 2:1 and host has 100% pcpu usage -> without this patch, launching 'ver' remotely took several seconds - when vcpu:pcpu is 2:1 and host has 100% pcpu usage -> with this patch, launching 'ver' remotely took a couple of second only -- so with this patch the host seems to be handling the extreme load at 100% pcpu usage more gracefully and the latency inside the guest is more linearly correlated to vcpu:pcpu.. From xen-devel-bounces@lists.xenproject.org Fri Jun 30 17:10:44 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 30 Jun 2023 17:10:44 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557590.871076 (Exim 4.92) (envelope-from ) id 1qFHdb-0006AJ-Qt; Fri, 30 Jun 2023 17:10:27 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557590.871076; Fri, 30 Jun 2023 17:10:27 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFHdb-0006AC-Nj; Fri, 30 Jun 2023 17:10:27 +0000 Received: by outflank-mailman (input) for mailman id 557590; Fri, 30 Jun 2023 17:10:26 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFHda-0006A6-Gz for xen-devel@lists.xenproject.org; Fri, 30 Jun 2023 17:10:26 +0000 Received: from esa1.hc3370-68.iphmx.com (esa1.hc3370-68.iphmx.com [216.71.145.142]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id ff32b2b4-1768-11ee-b237-6b7b168915f2; Fri, 30 Jun 2023 19:10:23 +0200 (CEST) Received: from mail-bn8nam04lp2045.outbound.protection.outlook.com (HELO NAM04-BN8-obe.outbound.protection.outlook.com) ([104.47.74.45]) by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 30 Jun 2023 13:10:20 -0400 Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) by SJ0PR03MB7079.namprd03.prod.outlook.com (2603:10b6:a03:4e1::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.23; Fri, 30 Jun 2023 17:10:17 +0000 Received: from BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606]) by BYAPR03MB3623.namprd03.prod.outlook.com ([fe80::bd96:913a:c06c:d606%4]) with mapi id 15.20.6544.019; Fri, 30 Jun 2023 17:10:17 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: ff32b2b4-1768-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1688145023; h=message-id:date:from:subject:to:cc:references: in-reply-to:content-transfer-encoding:mime-version; bh=AHtRVj/GQHX9kK4deyFxCzhBc3FOl4i7y/iXtqyXUyg=; b=KDrcGKCtRgN1hqRIChk2ukd5UkNhhGz54l9JGr25OBk2xmChe3e+PWAk MAu76W2AJfp7ap9VOsxUoZqUwYc8ANJQckNDu7DRUKQ5Nt9i6g6BOtUyr tHJaDrQsRfyQ1yN2nXjxOyETVFShmViWij7IIxQK6QTGKhvMsqCENdrWe 0=; X-IronPort-RemoteIP: 104.47.74.45 X-IronPort-MID: 115191539 X-IronPort-Reputation: None X-IronPort-Listener: OutboundMail X-IronPort-SenderGroup: RELAY_O365 X-IronPort-MailFlowPolicy: $RELAYED IronPort-Data: A9a23:KGo5Eqq7ndtfuQSKWvVnHHBXiBVeBmLSZBIvgKrLsJaIsI4StFCzt garIBmHOKuOZmrxLtp1b4+z9R4D75+GmoUwGQE9qChjHi1H+JuZCYyVIHmrMnLJJKUvbq7FA +Y2MYCccZ9uHhcwgj/3b9ANeFEljfngqoLUUbKCYWYpA1c/Ek/NsDo788YhmIlknNOlNA2Ev NL2sqX3NUSsnjV5KQr40YrawP9UlKq04GpwUmAWP6gR5weAzCFNVvrzGInqR5fGatgMdgKFb 76rIIGRpgvx4xorA9W5pbf3GmVirmn6ZFXmZtJ+AsBOszAazsAA+v9T2Mk0MC+7vw6hjdFpo OihgLTrIesf0g8gr8xGO/VQO3kW0aSrY9YrK1Dn2SCY5xWun3cBX5yCpaz5VGEV0r8fPI1Ay RAXAGkucTmcwP+w+aOQFOZMj+IfNcvqJoxK7xmMzRmBZRonabbqZv2WoPV+jHI3jM0IGuvCb c0EbzYpdA7HfxBEJlYQDtQ5gfusgX78NTZfrTp5p4JuuzSVkFM3j+SrbIe9lt+iHK25mm6xo G7c8nu/KRYdLNGFkhKO8262h/+JliT+MG4XPOThq6c72QDIlwT/DjU4e2Omrue3knW+ePdxB 2EN8wMl9+sLoRnDot7VGkfQTGS/lg4RXZ9cHvM37CmJy7HI+ECJC24cVDlDZdc68sgsSlQC1 FWEgtfoDjxHq6CORDSW8bL8hSy2ETgYKykFfyBsZQkY59jupqkjgxSJScxseIaulcH8Ezz0x zGMrQA9iq8VgMpN0L+0lW0rmBqpr5nNCwQztgPeWzr56hsjPNL4IYu19VLc8PBMap6DSUWMt 2QFnM7Y6/0SCZaKl2qGR+Bl8KyV2stp+Qb02TZHd6TNPRz0k5J/Vei8OA1DGXo= IronPort-HdrOrdr: A9a23:pS6wDam9CX7Oi7Nd/ArP8XSm2Z/pDfLc3DAbv31ZSRFFG/Fw9/ rCoB17726StN91YhsdcL+7V5VoLUmzyXcx2/hzAV7AZniDhILLFuFfBOLZqlWNJ8S9zJ8+6U 4JScND4bbLfD1HZKjBgTVRE7wbsaW6GKLDv5ag85+6JzsaFZ2J7G1Ce3em+lUdfnghOXKgfq DsnPauoVCbCA0qR/X+PFYpdc7ZqebGkZr3CCR2eiLOuGG1/EuVAKeRKWni4isj X-Talos-CUID: 9a23:/Gfmz20EtNqdvWagL72rlrxfQ+M6W2Ka0XHpMmTmBkZgboGMS16K9/Yx X-Talos-MUID: 9a23:ogNkeQWJRrKPSS7q/BHCvCxtKslw2KSNLW4hvIwPksLedhUlbg== X-IronPort-AV: E=Sophos;i="6.01,171,1684814400"; d="scan'208";a="115191539" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=lXFO2k1kxmaOFtLjkrOXHvt0Nca2cyjF+x2+BN+kEYOIt07lUNB78VvU8if/mGNvAf57BknxlEOLTgMCRvc2SK+xS5M2tsGZKuWOfk0Ba/acRvMGEGCVYwSDFTq9pZPyZ9iZhAJosEJ7trqZsLQ1g+cTiyKtf0t7a7GhLB0KH0XKzn6w6g2w00FFQik7roYE18ooPAGl551C16hJP7E6/w4au7jocR9dtPLQsAQW7ejfm1dbBced3Yk/sPuyb0PLWUYemNftNbYQtcMuSTdhHSCUwDyVxYgkh9UsdmQ8W0yJRXSvMqaV5V5Evxw2ik3yuwm/Cc2vn2HWdFLVts87/Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=WMSny4zNfL0TIdsEKzwcfZQFaB3Z4tE3ImcTlDqpMGA=; b=NQaNq0fsyJAcXE0vMEIcObUvFai6+ABMRfMvXtqUxAFWiOLADqRAp4yrueyb6Dx+aCBSoiF75WQ5qGCSmfWKdTfR2vgpBePuHQzhCaeUjKwQn+cCr1WJdIwy1Rans8Kfv3wZ95onXkMgSFiZ3lPsLLD6tY/If9d3sYSUeAEoBounej3LB88smWKzPE2KPBGh6qi+eLAejbpHL+C2s4Eq7hG4Qa4lZODLGn/Q5viKQoZljwWL9+erJqAR/5YarNjuh/pR6hebxjPGfUod85hgj21TN2I2cTZL4iAqaMK4MiANfVWOX4di6uc6ACbs0JP0c4bNy1oMxFp5MJT2eBWPvQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=WMSny4zNfL0TIdsEKzwcfZQFaB3Z4tE3ImcTlDqpMGA=; b=ru5uNNpizp4G0P2h9I130wUijB+hxBpaQCuozgmYcyAkt2hDP8grVXKvCBoZaJ56Xi6V94HkIIEExtJrZ5z7FcAaVBsG0A88pf08ZukjSwmjzloUiUD0UXrM/gkN8qOqE48/Un19GpWI+IXs5L4l6IaAmyIsDgfr2/hKlcZSNFE= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Message-ID: Date: Fri, 30 Jun 2023 18:10:10 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 From: Andrew Cooper Subject: Re: [PATCH v2] amd: disable C6 after 1000 days on Zen2 Content-Language: en-GB To: Roger Pau Monne , xen-devel@lists.xenproject.org Cc: Jan Beulich , Wei Liu , George Dunlap , Julien Grall , Stefano Stabellini References: <20230630131820.29323-1-roger.pau@citrix.com> In-Reply-To: <20230630131820.29323-1-roger.pau@citrix.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO4P123CA0187.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:1a4::12) To BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|SJ0PR03MB7079:EE_ X-MS-Office365-Filtering-Correlation-Id: 4be4ba86-0785-49d4-c34a-08db798ce051 X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 7EGORvrkPjh88t9nFbHmS2dLBKK0K/nXxgIXJA817F1jhwRn2Fg+HeJE5eqynRpaAYDyQYIIw0fuh6R12vwM/L164WaoJj71A9cLFG2ofXIIO6tM+6HoADfNOK4v5GmUt7TibIm0OgeSPzmOxZQZaogEGXLmpzugHSXW9BPooN2zvzj1wFlI1fenC3irGbWqCFzIjjqiJ/E0OayHZ+PLnJOh8OfrbX8v3tJrlk0/kMhZkO1zz6GlKEXjWuBCSQhIAbsdda4xSzdPbS9A4xu2CIR2VNx8I8oUhFZnRFCfT9Nln8YH5Pj/RBhsa8sefVHLPo+KysMbrBVT+UARLYkNP1vso+1ZsJlncr7+VUtS5+7UOPdhD9sObowb8PxCGb/ql1T8GsSJ8sQSzph4FaDfeDq3UiM/2zqMsrKTM3w1DtqwSGLJGsZfgNdljaMOCyp/oZo32H5DiuhQNTxckXb14skiyQyGHYvGnK5bM1AALyer7sbI23lwnqhVwa6OS1xP5q7+cfD4j6BkTgDC1fUo1CwoyDDcIaJXbOSo8IPoo7L4fT/Q8mVWx2SjWFzVkyU6xVZbcD65eyG7pUTOEmePj9+Di+PtXYGQHjHCAQcPFeSAG4cipBxLj8gxRp4AWJNSKz3kf7zU/Ro/rCr6I2EuUgnp2SIE+NGnFkzK83eCvn2paOB3amP+7ip1ujTsWWkP X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(136003)(396003)(39860400002)(376002)(366004)(346002)(451199021)(5660300002)(31686004)(66946007)(66556008)(4326008)(66476007)(316002)(36756003)(8936002)(8676002)(478600001)(2906002)(6512007)(6666004)(26005)(54906003)(41300700001)(31696002)(6486002)(186003)(53546011)(6506007)(86362001)(38100700002)(83380400001)(2616005)(82960400001)(221023011)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?K2FucFFyTUZIYjhLbTFNa3VQMXhiWG04SkJrYmVxb3o2RnRnZVJFZkNNbnlx?= =?utf-8?B?bEpia0JHSDV1S0FrL2Z0UXE5MHoyTi9ZUDRCc2tIUnplOXZEWmtYRkNXOFFQ?= =?utf-8?B?QWZHYnhhK2JheEM4NHFQdS9NSmhsaWEzcnphWlB3UXBHNk41NnBkLys2ODEr?= =?utf-8?B?WFhGYzlnRktOckhCSkQ4ZlkyRTFqek9LU3RobVNVREllY1QvTG5jemdEYTY2?= =?utf-8?B?QldWdlYrNVc3R3BFMkF1ekZaWmxPaDRiZFZuU3Q5SWp4SENnNFY4YTg0NXhl?= =?utf-8?B?V1ppTHRuUGk2Z1E1WjdmNytLeXVaZ1FicXJ2QlNucUptaS84ckhnZFVZb2Vx?= =?utf-8?B?S0lYSlVPQWd1cEhpeG40QXNmSmxZeFh3NkpOUXNsUXM1bnI1a0lpQmpyQWwz?= =?utf-8?B?NW5uU3A1VUpEcTNXdjhrNDNYaGM2K25yVXFncXlLT25ja0Q2MU1nbXNLK0Er?= =?utf-8?B?eWQvSzRSbDc4bXJXV0E4Z1pCdUdsNlMrK1ZHMENtbTlRUDU2OFhQN0g3NlRQ?= =?utf-8?B?WkczYjl4OGEyT2w3VlpOOEl6L3BTMGlHNWhBTS9hSVZTQ3hzZ0FPTDJNVVh6?= =?utf-8?B?T0NJMjdJT2V2MXYra0puV2dvcW1saldHZndzV1BqcjJiczQ3K0FlcXZvSUlX?= =?utf-8?B?Y3NYRmx5VUowdFI0aEtsR2VlanR0RHU3TysrbnpRR3NKa054T000L1BicHYr?= =?utf-8?B?dlZqOGZpNFRCQm5wSjh5US9jZ2h5V1FkYUxEcDhDOGlFY08zNzA5R3pWcUEv?= =?utf-8?B?eWs1ZnNpL0pKMXJ0SG5ROE1LNWlzMDR3Uk9kRC9hdDVUdE9yV2gyaDJ1ZkRN?= =?utf-8?B?MmNiVWVTUUlydlY3MVhCSWVFWXdQWEttVmF3SmN0bXlhRjhwaG51N3FvcjJI?= =?utf-8?B?YWdMdnBwTkNrcU81dTEvUjMxbFBVZXgwdWhiS0YzcGN3dFh0TXgyRklJb1ds?= =?utf-8?B?emhLZjl4ckpYbzYzdGFsWlZkbGVlR3lzTDVWUUFUM0dla3pkZDZOOU90M2F6?= =?utf-8?B?ZGIrckVuYVBEZFJsUGt5NlNkZ0dwSXNmWHJaM1VySzZMbGRFdTVZb2x6UWl5?= =?utf-8?B?VE9SbTdPM0ErdUtIZ0JyaWFnWHN1MStkb09qL2l0OWE1cWhiYmpueDNRU2xQ?= =?utf-8?B?YlF2WUxXaUdCSU5LMmZVaUdLVnFSWlA2LytMNk1HbzU4WTRDOHp3SXJoQUdj?= =?utf-8?B?S3Npck5OR1RVckpmZ2dXVFNOVFNOREJpalV1ZXZQQmlLc29tN2d5anpqNU1z?= =?utf-8?B?VlBwT21VZ2QzSXFmU0ZuL3pUWmsvZnRqYU1rdGRwZzhxaitubFB1cVFMZVp1?= =?utf-8?B?bnJ4NVdrcFM1d2h4N2hOQlE0WkhtMS91WkkrRkc4SDlYOXRiei9ESXpkWXpt?= =?utf-8?B?UHAxcjdNMWo4bjAxdWMxbW9tSWlLbld6SW5menNQUFFTM3p3S1lzYkwvMVQz?= =?utf-8?B?VisxcnZNU1ZYVDAyNFRDcWYraXJqUVFtK0g3Wnh4bU0wdzd1bkhGU2l5Zm05?= =?utf-8?B?bGNsUDdQOGg3a2U0QVZ0YUg1SmtXbjM0d2ZQNkdUb1pxQ1NPZ3FRc2JndWNm?= =?utf-8?B?UytFOWl2R1MzVG5IMllUZVRpY3Fudk1JTVRiWkd6QmJkTnMydW1CenkzaWND?= =?utf-8?B?SFc0a1BWaFFmblczQ3NrVllnMU5uRGl0Qloxczdockt4V0VCNFc1bVoxYnVq?= =?utf-8?B?SStsVW56LzFZUGs3Zk5MbWV6SnNYa1NURlJ5ZDZZdHZ4OXJMcU5IeEp2dWZw?= =?utf-8?B?dW50eHIyKzJKMm16VTF2RjE4QXRBcDB6ZlhNdXkyc1BJL2h3QWlCM2tIWWsy?= =?utf-8?B?T3htejdEZkM5YldtZlVyN2ZrUzdlK0E1Zi96Q0draEt0TmNoTHlhbTg1RFZh?= =?utf-8?B?cUVDdldWS08zOFZmTGl2M0lXNkcrMEJVL2t6RDl0NjdjWnNweUFCbVF3WFN6?= =?utf-8?B?Z0VjM28xUlV6dzR6MGFYREkrenIwbis4cmZQSXF2K3lXdXZCNjlVZUVGSWxO?= =?utf-8?B?U2xsN1lUejJyMkd5YVlqSmxUQ3dQelozbHovZENaV0tPL280cDIvdFJ0Mjc5?= =?utf-8?B?ZUxRQ09BMlkvTkM4bXdKL2pHWUUrSE91VHRybHptS3EzcEZaam9Vb0kzR0d2?= =?utf-8?B?MHlHZzhDQTY0Qmw3SjhrNlhjQ3cwYVhTVXhxY3hNUDU3US9FNWlMMXNQYktq?= =?utf-8?B?R3c9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: OVlstv0u8QCZ0I4qLE5YSe9JsDqSYL4Qp8ekgjTB+8KExwHDTty5+gPsmYD1DSJ/P8RItYtBU/bbPLMF4PPbX4p16PykQ3KcmrClG4bd0O2S0H5vVNw++br0V3NpMFAuHaCStUIqHLFaRH1ntASB2VuCzE8BKgOm5kia9WhO9qJ5lrcCCBbG0OB13YbeA5BNkGbRZ7uwDYADsgWc8N9Fv4+ITk6OvrJKBfCH+gEaToVmghggXUMV8/hOZeComHiM2nshSiXYnDd6ZOLKK/xHNM37hK+pBIiB/gGVJGayjxZ4qWM8mwkgpnda58P/mu0JWnwz2xm2S8udk4uIJoGe7uIqhobwRCu1tAgXCBRg5rAwaw8MZwYzgaJKQ4jCwdiapSXSGSyjM+c+DdmCKZ1A9CP8ekvO+1SAHyH1hDWEEJnW3AR+eJ0hPtPGPI5aHKY8OM/qJUEulpP3ufuh1znDY3IAygpbTv6qS+Zb3M9clonsXB66ys29bLzKMvNCvmzHVu6cVMM4b8L0pJPW0n3wTnIXY96/GhW8NPB/JnNVwneWymU5eEQ5OMShCqTvUCAdWOytCV1umy7AM2thzPwgl3pB0tkZ6FuefuPwMVcZUZjBgHEG3awzPmvcN6ovJOeA/jK9Mny5Q6/A6RzXkvQdxkSPKyAr9m3wipOKpN61FWX26ANvyam0RKFZZ/9ZCNIHdju8p0aD7s2nDayiQGV7Nc+UE1Dr3EP8p2vBe23kblKgiwlnHr24+cnc7Pt1mA2AZtOUQQqJHA0/GZm/tnrdstq8eXknJxuB1DusV2evicVZvRLMJNrfk4NRweXIT0divOn4yycAPsd8xrMaX7iPfn67kCXVhJmKqgVGi+ctcBI= X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 4be4ba86-0785-49d4-c34a-08db798ce051 X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Jun 2023 17:10:17.3428 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: B9Jatincq/XAYVPfRa+ZWn9/myLZtDuazebicshcrJq8lP9LdLxvwYOyN7NQGgIkWa7qmrVQF/vAhsVmx1i6WPO3uDUUA+jAzg3oORUDRKE= X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR03MB7079 On 30/06/2023 2:18 pm, Roger Pau Monne wrote: > diff --git a/xen/arch/x86/cpu/amd.c b/xen/arch/x86/cpu/amd.c > index 0eaef82e5145..bdf45f8387e8 100644 > --- a/xen/arch/x86/cpu/amd.c > +++ b/xen/arch/x86/cpu/amd.c > @@ -51,6 +51,8 @@ bool __read_mostly amd_acpi_c1e_quirk; > bool __ro_after_init amd_legacy_ssbd; > bool __initdata amd_virt_spec_ctrl; > > +static bool __read_mostly c6_disabled; > + > static inline int rdmsr_amd_safe(unsigned int msr, unsigned int *lo, > unsigned int *hi) > { > @@ -905,6 +907,31 @@ void __init detect_zen2_null_seg_behaviour(void) > > } > > +static void cf_check disable_c6(void *arg) > +{ > + uint64_t val; > + > + if (!c6_disabled) { > + printk(XENLOG_WARNING > + "Disabling C6 after 1000 days apparent uptime due to AMD errata 1474\n"); > + c6_disabled = true; > + smp_call_function(disable_c6, NULL, 0); > + } > + > + /* Update the MSR to disable C6, done on all threads. */ > + if (rdmsr_safe(MSR_AMD_CSTATE_CFG, val)) { > +error: > + printk_once(XENLOG_ERR > + "Unable to disable C6 on AMD system affected by errata 1474\n" > + "Reboot recommended, otherwise system might hang\n"); > + return; > + } > + val &= ~(CSTATE_CFG_CCR0_CC6EN | CSTATE_CFG_CCR1_CC6EN | > + CSTATE_CFG_CCR2_CC6EN); > + if (wrmsr_safe(MSR_AMD_CSTATE_CFG, val)) > + goto error; These MSRs don't fault, and we already excluded hypervisors previously, so the safe() doesn't really help.  The only way you'd spot a failure is by reading back and noticing that the update didn't take effect. Independently, this really really makes me want to dust off my msr_{set,clear}_bits() helpers to reduce the boilerplate required for logic like this. > +} > + > static void cf_check init_amd(struct cpuinfo_x86 *c) > { > u32 l, h; > @@ -1171,6 +1198,9 @@ static void cf_check init_amd(struct cpuinfo_x86 *c) > if ((smp_processor_id() == 1) && !cpu_has(c, X86_FEATURE_ITSC)) > disable_c1_ramping(); > > + if (c6_disabled) > + disable_c6(NULL); > + > check_syscfg_dram_mod_en(); > > amd_log_freq(c); > @@ -1180,3 +1210,43 @@ const struct cpu_dev amd_cpu_dev = { > .c_early_init = early_init_amd, > .c_init = init_amd, > }; > + > +static int __init cf_check c6_errata_check(void) > +{ > + /* > + * Errata #1474: A Core May Hang After About 1044 Days > + * Set up a timer to disable C6 after 1000 days uptime. > + */ > + s_time_t delta; > + > + /* > + * Apply to all Zen2 models. According to AMD revision guides at least > + * Rome, Castle Peak, Renoir, Lucienne and Matisse are affected. You probably want to replicate the spectral chicken comment about how identifying Zen2 is actually very hard. That said, I don't see anything which limits this logic to Fam17h. > + */ > + if (cpu_has_hypervisor || !boot_cpu_has(X86_FEATURE_AMD_STIBP)) > + return 0; > + > + /* > + * Deduct current TSC value, this would be relevant if kexec'ed for > + * example. Might not be accurate, but worst case we end up disabling > + * C6 before strictly required, which would still be safe. > + * > + * NB: all affected models (Zen2) have invariant TSC and TSC adjust > + * MSR, so early_time_init() will have already cleared any TSC offset. > + */ > + delta = DAYS(1000) - tsc_ticks2ns(rdtsc()); > + if (delta > 0) { > + static struct timer errata_c6; > + > + init_timer(&errata_c6, disable_c6, NULL, 0); > + set_timer(&errata_c6, NOW() + delta); > + } else > + disable_c6(NULL); I doubt the smp_call_function() is going to be happy at presmp time. Do we really care if we're already beyond the timeout? > + > + return 0; > +} > +/* > + * Must be executed after early_time_init() for tsc_ticks2ns() to have been > + * calibrated. That prevents us doing the check in init_amd(). > + */ > +presmp_initcall(c6_errata_check); > diff --git a/xen/arch/x86/include/asm/msr-index.h b/xen/arch/x86/include/asm/msr-index.h > index 2749e433d2a7..5df090fba791 100644 > --- a/xen/arch/x86/include/asm/msr-index.h > +++ b/xen/arch/x86/include/asm/msr-index.h > @@ -211,6 +211,11 @@ > > #define MSR_VIRT_SPEC_CTRL 0xc001011f /* Layout matches MSR_SPEC_CTRL */ > > +#define MSR_AMD_CSTATE_CFG 0xc0010296 > +#define CSTATE_CFG_CCR0_CC6EN (_AC(1, ULL) << 6) > +#define CSTATE_CFG_CCR1_CC6EN (_AC(1, ULL) << 14) > +#define CSTATE_CFG_CCR2_CC6EN (_AC(1, ULL) << 22) While MSR_AMD_CSTATE_CFG is liable to stay stable, the CC6EN bits are uarch specific and not applicable to others. I'd suggest keeping them local to c6_errata_check(), which probably ought to gain a zen2 somewhere in the name. They definitely can't say in a global header with names that don't tie them to Zen2 specifically. ~Andrew From xen-devel-bounces@lists.xenproject.org Fri Jun 30 17:37:32 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 30 Jun 2023 17:37:32 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557597.871087 (Exim 4.92) (envelope-from ) id 1qFI3P-0000YN-0G; Fri, 30 Jun 2023 17:37:07 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557597.871087; Fri, 30 Jun 2023 17:37:06 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFI3O-0000YG-SI; Fri, 30 Jun 2023 17:37:06 +0000 Received: by outflank-mailman (input) for mailman id 557597; Fri, 30 Jun 2023 17:37:05 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFI3N-0000Y6-Js; Fri, 30 Jun 2023 17:37:05 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFI3M-0004hb-Pc; Fri, 30 Jun 2023 17:37:04 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFI3M-0007aa-AE; Fri, 30 Jun 2023 17:37:04 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qFI3M-0003P0-9b; Fri, 30 Jun 2023 17:37:04 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=UPNrsukw3156HgbNW4DGEgcScQiSErdsbiUbjG8l9v8=; b=6qF2u4ouSxPHHldGDB3xtarJvg tSChfCvsVhNbhG3AIvcZLde8yduO3y2Ds9VssBS7HUNgkv398fl+oij5dQQhtfFMUKtTe9r1exJLN BDgme8XumlSMZ7R2e2+1Y9ecJIcZfhczMDsUIp7hp1FBoNGWeLMKXvG+vSkbsnp7Flic=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable-smoke test] 181656: regressions - FAIL X-Osstest-Failures: xen-unstable-smoke:test-amd64-amd64-xl-qemuu-debianhvm-amd64:guest-start/debianhvm.repeat:fail:regression xen-unstable-smoke:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking xen-unstable-smoke:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking xen-unstable-smoke:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking xen-unstable-smoke:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking xen-unstable-smoke:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: xen=9dd3caf12f52b859947c260b1cb3a48b491d53b6 X-Osstest-Versions-That: xen=c81b287e00b1a21beb65637d9cfb812da3a0e5ce From: osstest service owner Date: Fri, 30 Jun 2023 17:37:04 +0000 flight 181656 xen-unstable-smoke real [real] flight 181658 xen-unstable-smoke real-retest [real] http://logs.test-lab.xenproject.org/osstest/logs/181656/ http://logs.test-lab.xenproject.org/osstest/logs/181658/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: test-amd64-amd64-xl-qemuu-debianhvm-amd64 20 guest-start/debianhvm.repeat fail REGR. vs. 181654 Tests which did not succeed, but are not blocking: test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-armhf-armhf-xl 15 migrate-support-check fail never pass test-armhf-armhf-xl 16 saverestore-support-check fail never pass version targeted for testing: xen 9dd3caf12f52b859947c260b1cb3a48b491d53b6 baseline version: xen c81b287e00b1a21beb65637d9cfb812da3a0e5ce Last test of basis 181654 2023-06-30 11:01:56 Z 0 days Testing same since 181656 2023-06-30 14:01:56 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Andrew Cooper George Dunlap Julien Grall jobs: build-arm64-xsm pass build-amd64 pass build-armhf pass build-amd64-libvirt pass test-armhf-armhf-xl pass test-arm64-arm64-xl-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 fail test-amd64-amd64-libvirt pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Not pushing. ------------------------------------------------------------ commit 9dd3caf12f52b859947c260b1cb3a48b491d53b6 Author: George Dunlap Date: Tue Oct 6 12:03:52 2020 +0100 {x86,arm}/mm.c: Make populate_pt_range __init It's only called from another __init function. Signed-off-by: George Dunlap Acked-by: Andrew Cooper Acked-by: Julien Grall (qemu changes not included) From xen-devel-bounces@lists.xenproject.org Fri Jun 30 17:48:24 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 30 Jun 2023 17:48:24 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557603.871095 (Exim 4.92) (envelope-from ) id 1qFIED-0002A7-Vf; Fri, 30 Jun 2023 17:48:17 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557603.871095; Fri, 30 Jun 2023 17:48:17 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFIED-0002A0-Ss; Fri, 30 Jun 2023 17:48:17 +0000 Received: by outflank-mailman (input) for mailman id 557603; Fri, 30 Jun 2023 17:48:16 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFIEB-00029u-VB for xen-devel@lists.xenproject.org; Fri, 30 Jun 2023 17:48:15 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFIEA-00053N-MC; Fri, 30 Jun 2023 17:48:14 +0000 Received: from gw1.octic.net ([88.97.20.152] helo=[10.0.1.240]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qFIEA-0004Wl-H6; Fri, 30 Jun 2023 17:48:14 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=sjzImeYkNG7NylrMmxHVQyR8h+mADIPok8IbERHuSCI=; b=bMn5x0gx6mDJs8QgUYCKd5yA/D p/WbrPJP/Wxa5LqZ/F4ex0xUENWs8m5qtlZU7Wz43T6I98b35Oii+2UoOhb2ZKGenAcAH4XRhO/Pm TGatW/oLXHg0rMb1hDSUdnKqXIqHD3hWy2wmPC8cAOeenukaIwWgjIN9N9HZciDLdcxc=; Message-ID: <42d6cf5e-03ab-a55b-a4d5-54bd063f793d@xen.org> Date: Fri, 30 Jun 2023 18:48:12 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH 1/2] credit: Limit load balancing to once per millisecond Content-Language: en-US To: George Dunlap , xen-devel@lists.xenproject.org Cc: Dario Faggioli , Andrew Cooper , George Dunlap , Jan Beulich , Stefano Stabellini , Wei Liu References: <20230630113756.672607-1-george.dunlap@cloud.com> From: Julien Grall In-Reply-To: <20230630113756.672607-1-george.dunlap@cloud.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi George, On 30/06/2023 12:37, George Dunlap wrote: > The credit scheduler tries as hard as it can to ensure that it always > runs scheduling units with positive credit (PRI_TS_UNDER) before > running those with negative credit (PRI_TS_OVER). If the next > runnable scheduling unit is of priority OVER, it will always run the > load balancer, which will scour the system looking for another > scheduling unit of the UNDER priority. > > Unfortunately, as the number of cores on a system has grown, the cost > of the work-stealing algorithm has dramatically increased; a recent > trace on a system with 128 cores showed this taking over 50 > microseconds. > > Add a parameter, load_balance_ratelimit, to limit the frequency of > load balance operations on a given pcpu. Default this to 1 > millisecond. > > Invert the load balancing conditional to make it more clear, and line > up more closely with the comment above it. > > Overall it might be cleaner to have the last_load_balance checking > happen inside csched_load_balance(), but that would require either > passing both now and spc into the function, or looking them up again; > both of which seemed to be worse than simply checking and setting the > values before calling it. > > Without this patch, on a system with a vcpu:pcpu ratio of 2:1, running > Windows guests (which will end up calling YIELD during spinlock > contention), this patch increased performance significantly. I don't understand this sentence. Did you intende to write "Without this patch, ..., the performance are significantly worse"? > > Signed-off-by: George Dunlap > --- > CC: Dario Faggioli > CC: Andrew Cooper > CC: George Dunlap > CC: Jan Beulich > CC: Julien Grall > CC: Stefano Stabellini > CC: Wei Liu > --- > docs/misc/xen-command-line.pandoc | 6 +++++ > xen/common/sched/credit.c | 40 ++++++++++++++++++++++++++----- > xen/include/public/sysctl.h | 6 +++++ > 3 files changed, 46 insertions(+), 6 deletions(-) > > diff --git a/docs/misc/xen-command-line.pandoc b/docs/misc/xen-command-line.pandoc > index 4060ebdc5d..369557020f 100644 > --- a/docs/misc/xen-command-line.pandoc > +++ b/docs/misc/xen-command-line.pandoc > @@ -1856,6 +1856,12 @@ By default, Xen will use the INVPCID instruction for TLB management if > it is available. This option can be used to cause Xen to fall back to > older mechanisms, which are generally slower. > > +### load-balance-ratelimit > +> `= ` > + > +The minimum interval between load balancing events on a given pcpu. > +At the moment only credit honors this parameter. I would suggest to mention the default value. So a reader don't have to look up in the code to find out. Also, AFAICT, there is max value. I would mention it here too. > + > ### noirqbalance (x86) > > `= ` > > diff --git a/xen/common/sched/credit.c b/xen/common/sched/credit.c > index f2cd3d9da3..b8bdfd5f6a 100644 > --- a/xen/common/sched/credit.c > +++ b/xen/common/sched/credit.c > @@ -50,6 +50,8 @@ > #define CSCHED_TICKS_PER_TSLICE 3 > /* Default timeslice: 30ms */ > #define CSCHED_DEFAULT_TSLICE_MS 30 > +/* Default load balancing ratelimit: 1ms */ > +#define CSCHED_DEFAULT_LOAD_BALANCE_RATELIMIT_US 1000 > #define CSCHED_CREDITS_PER_MSEC 10 > /* Never set a timer shorter than this value. */ > #define CSCHED_MIN_TIMER XEN_SYSCTL_SCHED_RATELIMIT_MIN > @@ -153,6 +155,7 @@ struct csched_pcpu { > > unsigned int idle_bias; > unsigned int nr_runnable; > + s_time_t last_load_balance; > > unsigned int tick; > struct timer ticker; > @@ -218,7 +221,7 @@ struct csched_private { > > /* Period of master and tick in milliseconds */ > unsigned int tick_period_us, ticks_per_tslice; > - s_time_t ratelimit, tslice, unit_migr_delay; > + s_time_t ratelimit, tslice, unit_migr_delay, load_balance_ratelimit; > > struct list_head active_sdom; > uint32_t weight; > @@ -612,6 +615,8 @@ init_pdata(struct csched_private *prv, struct csched_pcpu *spc, int cpu) > BUG_ON(!is_idle_unit(curr_on_cpu(cpu))); > cpumask_set_cpu(cpu, prv->idlers); > spc->nr_runnable = 0; > + > + spc->last_load_balance = NOW(); > } > > static void cf_check > @@ -1267,7 +1272,8 @@ csched_sys_cntl(const struct scheduler *ops, > && (params->ratelimit_us > XEN_SYSCTL_SCHED_RATELIMIT_MAX > || params->ratelimit_us < XEN_SYSCTL_SCHED_RATELIMIT_MIN)) > || MICROSECS(params->ratelimit_us) > MILLISECS(params->tslice_ms) > - || params->vcpu_migr_delay_us > XEN_SYSCTL_CSCHED_MGR_DLY_MAX_US ) > + || params->vcpu_migr_delay_us > XEN_SYSCTL_CSCHED_MGR_DLY_MAX_US > + || params->load_balance_ratelimit_us > XEN_SYSCTL_CSCHED_LB_RATE_MAX_US) > goto out; > > spin_lock_irqsave(&prv->lock, flags); > @@ -1278,6 +1284,7 @@ csched_sys_cntl(const struct scheduler *ops, > printk(XENLOG_INFO "Disabling context switch rate limiting\n"); > prv->ratelimit = MICROSECS(params->ratelimit_us); > prv->unit_migr_delay = MICROSECS(params->vcpu_migr_delay_us); > + prv->load_balance_ratelimit = MICROSECS(params->load_balance_ratelimit_us); > spin_unlock_irqrestore(&prv->lock, flags); > > /* FALLTHRU */ > @@ -1285,6 +1292,7 @@ csched_sys_cntl(const struct scheduler *ops, > params->tslice_ms = prv->tslice / MILLISECS(1); > params->ratelimit_us = prv->ratelimit / MICROSECS(1); > params->vcpu_migr_delay_us = prv->unit_migr_delay / MICROSECS(1); > + params->load_balance_ratelimit_us = prv->load_balance_ratelimit / MICROSECS(1); > rc = 0; > break; > } > @@ -1676,9 +1684,17 @@ csched_runq_steal(int peer_cpu, int cpu, int pri, int balance_step) > return NULL; > } > > +/* > + * Minimum delay, in microseconds, between load balance operations. > + * This prevents spending too much time doing load balancing, particularly > + * when the system has a high number of YIELDs due to spinlock priority inversion. > + */ > +static unsigned int __read_mostly load_balance_ratelimit_us = CSCHED_DEFAULT_LOAD_BALANCE_RATELIMIT_US; AFAICT, load_balance_ratelimit_us is not updated after boot. So shouldn't the attribute be __ro_after_init? > +integer_param("load-balance-ratelimit", load_balance_ratelimit_us); > + > static struct csched_unit * > csched_load_balance(struct csched_private *prv, int cpu, > - struct csched_unit *snext, bool *stolen) > + struct csched_unit *snext, bool *stolen) > { > const struct cpupool *c = get_sched_res(cpu)->cpupool; > struct csched_unit *speer; > @@ -1963,10 +1979,12 @@ static void cf_check csched_schedule( > * urgent work... If not, csched_load_balance() will return snext, but > * already removed from the runq. > */ > - if ( snext->pri > CSCHED_PRI_TS_OVER ) > - __runq_remove(snext); > - else > + if ( snext->pri <= CSCHED_PRI_TS_OVER > + && now - spc->last_load_balance > prv->load_balance_ratelimit) { > + spc->last_load_balance = now; > snext = csched_load_balance(prv, sched_cpu, snext, &migrated); > + } else > + __runq_remove(snext); > > } while ( !unit_runnable_state(snext->unit) ); > > @@ -2181,6 +2199,14 @@ csched_global_init(void) > XEN_SYSCTL_CSCHED_MGR_DLY_MAX_US, vcpu_migration_delay_us); > } > > + if ( load_balance_ratelimit_us > XEN_SYSCTL_CSCHED_LB_RATE_MAX_US ) > + { > + load_balance_ratelimit_us = CSCHED_DEFAULT_LOAD_BALANCE_RATELIMIT_US; > + printk("WARNING: load-balance-ratelimit outside of valid range [0,%d]us.\n" > + "Resetting to default: %u\n", > + XEN_SYSCTL_CSCHED_LB_RATE_MAX_US, load_balance_ratelimit_us); > + } > + > return 0; > } > > @@ -2223,6 +2249,8 @@ csched_init(struct scheduler *ops) > > prv->unit_migr_delay = MICROSECS(vcpu_migration_delay_us); > > + prv->load_balance_ratelimit = MICROSECS(load_balance_ratelimit_us); > + > return 0; > } > > diff --git a/xen/include/public/sysctl.h b/xen/include/public/sysctl.h > index 9d06e92d0f..48f7f57037 100644 > --- a/xen/include/public/sysctl.h > +++ b/xen/include/public/sysctl.h > @@ -641,6 +641,12 @@ struct xen_sysctl_credit_schedule { > */ > #define XEN_SYSCTL_CSCHED_MGR_DLY_MAX_US (100 * 1000) > uint32_t vcpu_migr_delay_us; > + /* > + * Minimum delay, in microseconds, between load balance > + * operations; max 1 second. > + */ > +#define XEN_SYSCTL_CSCHED_LB_RATE_MAX_US (1000000) > + uint32_t load_balance_ratelimit_us; Shouldn't this change bump the sysctl interface version? > }; > > struct xen_sysctl_credit2_schedule { -- Julien Grall From xen-devel-bounces@lists.xenproject.org Fri Jun 30 17:50:08 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 30 Jun 2023 17:50:08 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557607.871105 (Exim 4.92) (envelope-from ) id 1qFIFp-0002kT-9U; Fri, 30 Jun 2023 17:49:57 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557607.871105; Fri, 30 Jun 2023 17:49:57 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFIFp-0002kM-6v; Fri, 30 Jun 2023 17:49:57 +0000 Received: by outflank-mailman (input) for mailman id 557607; Fri, 30 Jun 2023 17:49:56 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFIFn-0002kE-Vj for xen-devel@lists.xenproject.org; Fri, 30 Jun 2023 17:49:55 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFIFn-00054q-1x; Fri, 30 Jun 2023 17:49:55 +0000 Received: from gw1.octic.net ([88.97.20.152] helo=[10.0.1.240]) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1qFIFm-0004Yd-TB; Fri, 30 Jun 2023 17:49:55 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:Cc:To:Subject:MIME-Version:Date:Message-ID; bh=qvpxnpMHySuXg2ybWwFiS0h4RpDNaCqfb3MJAzzZxCc=; b=xUsz6vOBF6ul2Fp36JUGi4SiRS uy14c4V/Qj5Lt0rZ62NSs78jlMKH7pk28QHwynHuneiElogWA2HpHzcBpBXVgBNpplXdSD0yC5GyV mbQvCTouRaMEAT2qfzxOPqYoGypEqX9I1p3J4xnF4JgV/gptWXq7zVrhuyIoAKeQn8mA=; Message-ID: <84197474-9ea0-d42a-b591-13821325cf89@xen.org> Date: Fri, 30 Jun 2023 18:49:53 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH 1/2] credit: Limit load balancing to once per millisecond Content-Language: en-US To: George Dunlap , xen-devel@lists.xenproject.org Cc: Dario Faggioli , Andrew Cooper , George Dunlap , Jan Beulich , Stefano Stabellini , Wei Liu References: <20230630113756.672607-1-george.dunlap@cloud.com> From: Julien Grall In-Reply-To: <20230630113756.672607-1-george.dunlap@cloud.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi, The subject stay "1/2" but I don't see any "2/2" nor cover letter. Where can I find the rest of the series? Cheers, -- Julien Grall From xen-devel-bounces@lists.xenproject.org Fri Jun 30 19:06:28 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 30 Jun 2023 19:06:28 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557613.871122 (Exim 4.92) (envelope-from ) id 1qFJRW-0002za-Kc; Fri, 30 Jun 2023 19:06:06 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557613.871122; Fri, 30 Jun 2023 19:06:06 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFJRW-0002zT-Hk; Fri, 30 Jun 2023 19:06:06 +0000 Received: by outflank-mailman (input) for mailman id 557613; Fri, 30 Jun 2023 19:06:06 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFJRW-0002zJ-25; Fri, 30 Jun 2023 19:06:06 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFJRW-0006tN-1D; Fri, 30 Jun 2023 19:06:06 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFJRV-0004Od-HW; Fri, 30 Jun 2023 19:06:05 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qFJRV-0006my-H1; Fri, 30 Jun 2023 19:06:05 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=i82Rpw0/knL4o7CF18yRdtRC+1GEOSx/AlQIT9/L+RU=; b=4E7boqJSlZ59fW9CSkNx7Oay5p gPVwvjTkKKG2O8Sz+Xxfb+/KAdk/91HqwM3KELWJLJjTFkNUhasVfHYfaQDDNAf3bCNqUH5pEhy9F ZOxM7cZKuDp5np8qINY3ffegevowBSJmXXJ0d+FnpIVdgF0LKEWUAb/eCI13SZCcD7ss=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [ovmf test] 181659: all pass - PUSHED X-Osstest-Versions-This: ovmf=5a13f5c2fa5ada2eb2fcb961aa3745fd236620bd X-Osstest-Versions-That: ovmf=f5c987fcac567b1f84a418826f30d8ef2b46860e From: osstest service owner Date: Fri, 30 Jun 2023 19:06:05 +0000 flight 181659 ovmf real [real] http://logs.test-lab.xenproject.org/osstest/logs/181659/ Perfect :-) All tests in this flight passed as required version targeted for testing: ovmf 5a13f5c2fa5ada2eb2fcb961aa3745fd236620bd baseline version: ovmf f5c987fcac567b1f84a418826f30d8ef2b46860e Last test of basis 181652 2023-06-30 05:42:20 Z 0 days Testing same since 181659 2023-06-30 16:42:33 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Mike Maslenkin jobs: build-amd64-xsm pass build-i386-xsm pass build-amd64 pass build-i386 pass build-amd64-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-i386-pvops pass test-amd64-amd64-xl-qemuu-ovmf-amd64 pass test-amd64-i386-xl-qemuu-ovmf-amd64 pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Pushing revision : To xenbits.xen.org:/home/xen/git/osstest/ovmf.git f5c987fcac..5a13f5c2fa 5a13f5c2fa5ada2eb2fcb961aa3745fd236620bd -> xen-tested-master From xen-devel-bounces@lists.xenproject.org Fri Jun 30 20:37:58 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 30 Jun 2023 20:37:58 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557621.871138 (Exim 4.92) (envelope-from ) id 1qFKs4-0004Nd-9J; Fri, 30 Jun 2023 20:37:36 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557621.871138; Fri, 30 Jun 2023 20:37:36 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFKs4-0004NW-6O; Fri, 30 Jun 2023 20:37:36 +0000 Received: by outflank-mailman (input) for mailman id 557621; Fri, 30 Jun 2023 20:37:35 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFKs3-0004NM-5H; Fri, 30 Jun 2023 20:37:35 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFKs3-0000ki-18; Fri, 30 Jun 2023 20:37:35 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFKs2-0007nq-Ln; Fri, 30 Jun 2023 20:37:34 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qFKs2-0006fc-LF; Fri, 30 Jun 2023 20:37:34 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=ODyOumX8g5fLMy/Mn9wU2W2K3Nd1ifIJn1lHzvyFd8w=; b=ObpK3cUqvVL9gNkfdM4QWEeU+Z vqbvG/BpY33jSf4LmWhrO6+edLvPqamkNFtflRuBTlELFU+aBNrLtrY+gVfaUvsyrJ/WoVs9fP/nG m9wv29JKBPMVLLmzugl5W1WIVy020v0E5/uK7c1S8MejztUDbiPRb331YzOB9yMuuVUo=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [xen-unstable-smoke test] 181661: tolerable all pass - PUSHED X-Osstest-Failures: xen-unstable-smoke:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking xen-unstable-smoke:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking xen-unstable-smoke:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking xen-unstable-smoke:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking xen-unstable-smoke:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: xen=f51e5d8eae8ece77a949571f39ee49904f3129aa X-Osstest-Versions-That: xen=c81b287e00b1a21beb65637d9cfb812da3a0e5ce From: osstest service owner Date: Fri, 30 Jun 2023 20:37:34 +0000 flight 181661 xen-unstable-smoke real [real] http://logs.test-lab.xenproject.org/osstest/logs/181661/ Failures :-/ but no regressions. Tests which did not succeed, but are not blocking: test-amd64-amd64-libvirt 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-armhf-armhf-xl 15 migrate-support-check fail never pass test-armhf-armhf-xl 16 saverestore-support-check fail never pass version targeted for testing: xen f51e5d8eae8ece77a949571f39ee49904f3129aa baseline version: xen c81b287e00b1a21beb65637d9cfb812da3a0e5ce Last test of basis 181654 2023-06-30 11:01:56 Z 0 days Failing since 181656 2023-06-30 14:01:56 Z 0 days 2 attempts Testing same since 181661 2023-06-30 18:00:29 Z 0 days 1 attempts ------------------------------------------------------------ People who touched revisions under test: Alejandro Vallejo Andrew Cooper Federico Serafini George Dunlap Julien Grall jobs: build-arm64-xsm pass build-amd64 pass build-armhf pass build-amd64-libvirt pass test-armhf-armhf-xl pass test-arm64-arm64-xl-xsm pass test-amd64-amd64-xl-qemuu-debianhvm-amd64 pass test-amd64-amd64-libvirt pass ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary Pushing revision : To xenbits.xen.org:/home/xen/git/xen.git c81b287e00..f51e5d8eae f51e5d8eae8ece77a949571f39ee49904f3129aa -> smoke From xen-devel-bounces@lists.xenproject.org Fri Jun 30 21:38:05 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 30 Jun 2023 21:38:05 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557629.871148 (Exim 4.92) (envelope-from ) id 1qFLoM-0002aW-My; Fri, 30 Jun 2023 21:37:50 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557629.871148; Fri, 30 Jun 2023 21:37:50 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFLoM-0002aP-KC; Fri, 30 Jun 2023 21:37:50 +0000 Received: by outflank-mailman (input) for mailman id 557629; Fri, 30 Jun 2023 21:37:49 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFLoL-0002aF-M0; Fri, 30 Jun 2023 21:37:49 +0000 Received: from host146.205.237.98.conversent.net ([205.237.98.146] helo=infra.test-lab.xenproject.org) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFLoL-00022C-Ax; Fri, 30 Jun 2023 21:37:49 +0000 Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org) by infra.test-lab.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFLoL-0000qo-11; Fri, 30 Jun 2023 21:37:49 +0000 Received: from osstest by osstest.test-lab.xenproject.org with local (Exim 4.92) (envelope-from ) id 1qFLoL-0006bL-0b; Fri, 30 Jun 2023 21:37:49 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version: Content-Transfer-Encoding:Content-Type:Message-ID:To; bh=IBq2YvLKViQwG0P3532SaLx4+0T9Rah/ZTTd8sjmeHE=; b=FyhzZNleiSnQTBWgcf/rADBT9i aalUA73B3n6q2Mw6MWrqIAYln0PJeYpgpJc1m9tjNynscC+yr0sW5Zn7fJ+JV3GT32hIV9r1jFJ2S KOWO2LzDv9+D8P46RWLiYpmScscU3JdcJxxk0qrJ13W80W7FbQawU7RHvB+P5MfV57cA=; To: xen-devel@lists.xenproject.org Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Subject: [linux-linus test] 181653: regressions - trouble: broken/fail/pass X-Osstest-Failures: linux-linus:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict::broken:regression linux-linus:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:host-install(5):broken:regression linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm:xen-boot:fail:regression linux-linus:test-amd64-amd64-pygrub:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-qemut-debianhvm-amd64:leak-check/basis(11):fail:regression linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl:xen-boot:fail:regression linux-linus:test-amd64-amd64-libvirt-xsm:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-xsm:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-credit1:leak-check/basis(11):fail:regression linux-linus:test-amd64-amd64-xl-pvhv2-amd:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-credit2:xen-boot:fail:regression linux-linus:test-amd64-amd64-freebsd11-amd64:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-qemuu-ovmf-amd64:leak-check/basis(11):fail:regression linux-linus:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:xen-boot:fail:regression linux-linus:test-amd64-amd64-libvirt-raw:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-shadow:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-multivcpu:debian-install:fail:regression linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:leak-check/basis(11):fail:regression linux-linus:test-amd64-amd64-libvirt:debian-install:fail:regression linux-linus:test-amd64-coresched-amd64-xl:debian-install:fail:regression linux-linus:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install:fail:regression linux-linus:test-amd64-amd64-libvirt-pair:xen-boot/dst_host:fail:regression linux-linus:test-amd64-amd64-xl-pvhv2-intel:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64:debian-hvm-install:fail:regression linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:debian-hvm-install:fail:regression linux-linus:test-amd64-amd64-xl-vhd:xen-boot:fail:regression linux-linus:test-amd64-amd64-freebsd12-amd64:xen-boot:fail:regression linux-linus:test-amd64-amd64-qemuu-nested-intel:xen-boot:fail:regression linux-linus:test-amd64-amd64-xl-pvshim:xen-boot:fail:regression linux-linus:test-amd64-amd64-pair:xen-boot/src_host:fail:regression linux-linus:test-amd64-amd64-pair:xen-boot/dst_host:fail:regression linux-linus:test-armhf-armhf-xl-credit1:xen-boot:fail:regression linux-linus:test-amd64-amd64-libvirt-qcow2:debian-di-install:fail:regression linux-linus:test-arm64-arm64-libvirt-raw:guest-start:fail:regression linux-linus:test-arm64-arm64-xl-vhd:guest-start:fail:regression linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:windows-install:fail:regression linux-linus:test-amd64-amd64-examine:reboot:fail:regression linux-linus:test-amd64-amd64-examine-uefi:reboot:fail:regression linux-linus:test-amd64-amd64-xl-rtds:leak-check/basis(11):fail:allowable linux-linus:test-armhf-armhf-xl-vhd:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-examine:reboot:fail:nonblocking linux-linus:test-armhf-armhf-xl-arndale:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-raw:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-credit2:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-libvirt-qcow2:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-rtds:xen-boot:fail:nonblocking linux-linus:test-armhf-armhf-xl-multivcpu:xen-boot:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking X-Osstest-Versions-This: linux=e55e5df193d247a38a5e1ac65a5316a0adcc22fa X-Osstest-Versions-That: linux=6c538e1adbfc696ac4747fb10d63e704344f763d From: osstest service owner Date: Fri, 30 Jun 2023 21:37:49 +0000 flight 181653 linux-linus real [real] http://logs.test-lab.xenproject.org/osstest/logs/181653/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict broken test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 5 host-install(5) broken REGR. vs. 180278 test-amd64-amd64-xl-qemuu-ws16-amd64 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-pygrub 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-xl-qemut-debianhvm-amd64 11 leak-check/basis(11) fail REGR. vs. 180278 test-amd64-amd64-xl-qemuu-win7-amd64 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-xl-qemut-win7-amd64 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-xl 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-libvirt-xsm 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-xl-xsm 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-xl-credit1 11 leak-check/basis(11) fail REGR. vs. 180278 test-amd64-amd64-xl-pvhv2-amd 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-xl-credit2 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-freebsd11-amd64 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-xl-qemuu-ovmf-amd64 11 leak-check/basis(11) fail REGR. vs. 180278 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-libvirt-raw 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-xl-shadow 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-xl-multivcpu 12 debian-install fail REGR. vs. 180278 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 11 leak-check/basis(11) fail REGR. vs. 180278 test-amd64-amd64-libvirt 12 debian-install fail REGR. vs. 180278 test-amd64-coresched-amd64-xl 12 debian-install fail REGR. vs. 180278 test-amd64-amd64-qemuu-nested-amd 12 debian-hvm-install fail REGR. vs. 180278 test-amd64-amd64-libvirt-pair 13 xen-boot/dst_host fail REGR. vs. 180278 test-amd64-amd64-xl-pvhv2-intel 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-xl-qemuu-debianhvm-amd64 12 debian-hvm-install fail REGR. vs. 180278 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 12 debian-hvm-install fail REGR. vs. 180278 test-amd64-amd64-xl-vhd 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-freebsd12-amd64 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-qemuu-nested-intel 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-xl-pvshim 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-pair 12 xen-boot/src_host fail REGR. vs. 180278 test-amd64-amd64-pair 13 xen-boot/dst_host fail REGR. vs. 180278 test-armhf-armhf-xl-credit1 8 xen-boot fail REGR. vs. 180278 test-amd64-amd64-libvirt-qcow2 12 debian-di-install fail REGR. vs. 180278 test-arm64-arm64-libvirt-raw 13 guest-start fail REGR. vs. 180278 test-arm64-arm64-xl-vhd 13 guest-start fail REGR. vs. 180278 test-amd64-amd64-xl-qemut-ws16-amd64 12 windows-install fail REGR. vs. 180278 test-amd64-amd64-examine 8 reboot fail REGR. vs. 180278 test-amd64-amd64-examine-uefi 8 reboot fail REGR. vs. 180278 Regressions which are regarded as allowable (not blocking): test-amd64-amd64-xl-rtds 11 leak-check/basis(11) fail REGR. vs. 180278 Tests which did not succeed, but are not blocking: test-armhf-armhf-xl-vhd 8 xen-boot fail like 180278 test-armhf-armhf-xl 8 xen-boot fail like 180278 test-armhf-armhf-examine 8 reboot fail like 180278 test-armhf-armhf-xl-arndale 8 xen-boot fail like 180278 test-armhf-armhf-libvirt-raw 8 xen-boot fail like 180278 test-armhf-armhf-xl-credit2 8 xen-boot fail like 180278 test-armhf-armhf-libvirt 8 xen-boot fail like 180278 test-armhf-armhf-libvirt-qcow2 8 xen-boot fail like 180278 test-armhf-armhf-xl-rtds 8 xen-boot fail like 180278 test-armhf-armhf-xl-multivcpu 8 xen-boot fail like 180278 test-arm64-arm64-xl-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl 15 migrate-support-check fail never pass test-arm64-arm64-xl 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit2 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-check fail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-check fail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-check fail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-check fail never pass version targeted for testing: linux e55e5df193d247a38a5e1ac65a5316a0adcc22fa baseline version: linux 6c538e1adbfc696ac4747fb10d63e704344f763d Last test of basis 180278 2023-04-16 19:41:46 Z 75 days Failing since 180281 2023-04-17 06:24:36 Z 74 days 143 attempts Testing same since 181653 2023-06-30 08:34:29 Z 0 days 1 attempts ------------------------------------------------------------ 3427 people touched revisions under test, not listing them all jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvops pass build-arm64-pvops pass build-armhf-pvops pass build-i386-pvops pass test-amd64-amd64-xl fail test-amd64-coresched-amd64-xl fail test-arm64-arm64-xl pass test-armhf-armhf-xl fail test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm fail test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm fail test-amd64-amd64-xl-qemut-debianhvm-i386-xsm fail test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm fail test-amd64-amd64-libvirt-xsm fail test-arm64-arm64-libvirt-xsm pass test-amd64-amd64-xl-xsm fail test-arm64-arm64-xl-xsm pass test-amd64-amd64-qemuu-nested-amd fail test-amd64-amd64-xl-pvhv2-amd fail test-amd64-amd64-dom0pvh-xl-amd pass test-amd64-amd64-xl-qemut-debianhvm-amd64 fail test-amd64-amd64-xl-qemuu-debianhvm-amd64 fail test-amd64-amd64-freebsd11-amd64 fail test-amd64-amd64-freebsd12-amd64 fail test-amd64-amd64-xl-qemuu-ovmf-amd64 fail test-amd64-amd64-xl-qemut-win7-amd64 fail test-amd64-amd64-xl-qemuu-win7-amd64 fail test-amd64-amd64-xl-qemut-ws16-amd64 fail test-amd64-amd64-xl-qemuu-ws16-amd64 fail test-armhf-armhf-xl-arndale fail test-amd64-amd64-examine-bios pass test-amd64-amd64-xl-credit1 fail test-arm64-arm64-xl-credit1 pass test-armhf-armhf-xl-credit1 fail test-amd64-amd64-xl-credit2 fail test-arm64-arm64-xl-credit2 pass test-armhf-armhf-xl-credit2 fail test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict broken test-amd64-amd64-examine fail test-arm64-arm64-examine pass test-armhf-armhf-examine fail test-amd64-amd64-qemuu-nested-intel fail test-amd64-amd64-xl-pvhv2-intel fail test-amd64-amd64-dom0pvh-xl-intel pass test-amd64-amd64-libvirt fail test-armhf-armhf-libvirt fail test-amd64-amd64-xl-multivcpu fail test-armhf-armhf-xl-multivcpu fail test-amd64-amd64-pair fail test-amd64-amd64-libvirt-pair fail test-amd64-amd64-xl-pvshim fail test-amd64-amd64-pygrub fail test-amd64-amd64-libvirt-qcow2 fail test-armhf-armhf-libvirt-qcow2 fail test-amd64-amd64-libvirt-raw fail test-arm64-arm64-libvirt-raw fail test-armhf-armhf-libvirt-raw fail test-amd64-amd64-xl-rtds fail test-armhf-armhf-xl-rtds fail test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow fail test-amd64-amd64-xl-shadow fail test-arm64-arm64-xl-thunderx pass test-amd64-amd64-examine-uefi fail test-amd64-amd64-xl-vhd fail test-arm64-arm64-xl-vhd fail test-armhf-armhf-xl-vhd fail ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary broken-job test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict broken broken-step test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict host-install(5) Not pushing. (No revision log; it would be 537560 lines long.) From xen-devel-bounces@lists.xenproject.org Fri Jun 30 21:43:28 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 30 Jun 2023 21:43:28 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557635.871158 (Exim 4.92) (envelope-from ) id 1qFLti-00044h-AJ; Fri, 30 Jun 2023 21:43:22 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557635.871158; Fri, 30 Jun 2023 21:43:22 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFLti-00044a-7l; Fri, 30 Jun 2023 21:43:22 +0000 Received: by outflank-mailman (input) for mailman id 557635; Fri, 30 Jun 2023 21:43:20 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFLtg-00044U-P0 for xen-devel@lists.xenproject.org; Fri, 30 Jun 2023 21:43:20 +0000 Received: from mailhost.m5p.com (mailhost.m5p.com [74.104.188.4]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 1e605650-178f-11ee-b237-6b7b168915f2; Fri, 30 Jun 2023 23:43:18 +0200 (CEST) Received: from m5p.com (mailhost.m5p.com [IPv6:2001:470:1f07:15ff:0:0:0:f7]) by mailhost.m5p.com (8.16.1/8.15.2) with ESMTPS id 35ULgfXV032356 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NO); Fri, 30 Jun 2023 17:42:47 -0400 (EDT) (envelope-from ehem@m5p.com) Received: (from ehem@localhost) by m5p.com (8.16.1/8.15.2/Submit) id 35ULgfcv032355; Fri, 30 Jun 2023 14:42:41 -0700 (PDT) (envelope-from ehem) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 1e605650-178f-11ee-b237-6b7b168915f2 Date: Fri, 30 Jun 2023 14:42:41 -0700 From: Elliott Mitchell To: Luca Fancellu Cc: xen-devel@lists.xenproject.org, wei.chen@arm.com, Andrew Cooper , George Dunlap , Jan Beulich , Julien Grall , Stefano Stabellini , Wei Liu , Henry Wang , Community Manager , Doug Goldstein , Bertrand Marquis , Volodymyr Babchuk , Anthony PERARD Subject: Re: [RFC PATCH] xen/arm: Rebranding dom0less feature Message-ID: References: <20230630091210.3742121-1-luca.fancellu@arm.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20230630091210.3742121-1-luca.fancellu@arm.com> X-Spam-Status: No, score=0.4 required=10.0 tests=KHOP_HELO_FCRDNS autolearn=no autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mattapan.m5p.com On Fri, Jun 30, 2023 at 10:12:10AM +0100, Luca Fancellu wrote: > This is an RFC to get the feeling of the community about the name > change, for now it's everything in one patch just to see how it > will look like, if there is interest on proceeding into it, I can > split in more commit. I seem to recall something else using the term "hyperlaunch". I'm though unable to find the reference. "dom0less" might be a poor name choice, but my initial feeling is to prefer it to "hyperlaunch". Perhaps "dom0--", "dom0decrement" or "dom0alternative" since it is providing an alternative approach to services previously offered by Domain 0? -- (\___(\___(\______ --=> 8-) EHM <=-- ______/)___/)___/) \BS ( | ehem+sigmsg@m5p.com PGP 87145445 | ) / \_CS\ | _____ -O #include O- _____ | / _/ 8A19\___\_|_/58D2 7E3D DDF4 7BA6 <-PGP-> 41D1 B375 37D0 8714\_|_/___/5445 From xen-devel-bounces@lists.xenproject.org Fri Jun 30 22:16:16 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 30 Jun 2023 22:16:16 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557641.871168 (Exim 4.92) (envelope-from ) id 1qFMPH-0007h1-P7; Fri, 30 Jun 2023 22:15:59 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557641.871168; Fri, 30 Jun 2023 22:15:59 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFMPH-0007gu-MG; Fri, 30 Jun 2023 22:15:59 +0000 Received: by outflank-mailman (input) for mailman id 557641; Fri, 30 Jun 2023 22:15:58 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFMPG-0007gl-RO for xen-devel@lists.xenproject.org; Fri, 30 Jun 2023 22:15:58 +0000 Received: from mail-ed1-x535.google.com (mail-ed1-x535.google.com [2a00:1450:4864:20::535]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id af1477de-1793-11ee-8611-37d641c3527e; Sat, 01 Jul 2023 00:15:56 +0200 (CEST) Received: by mail-ed1-x535.google.com with SMTP id 4fb4d7f45d1cf-51bece5d935so2780354a12.1 for ; Fri, 30 Jun 2023 15:15:56 -0700 (PDT) Received: from [127.0.0.1] (dynamic-089-012-063-194.89.12.pool.telefonica.de. [89.12.63.194]) by smtp.gmail.com with ESMTPSA id e13-20020a50fb8d000000b0051d80d7a95bsm7012099edq.14.2023.06.30.15.15.54 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Fri, 30 Jun 2023 15:15:54 -0700 (PDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: af1477de-1793-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1688163355; x=1690755355; h=content-transfer-encoding:mime-version:message-id:references :in-reply-to:subject:cc:to:from:date:from:to:cc:subject:date :message-id:reply-to; bh=dhY4C5ZJRIijV3cIrjXpWAgQASRDI4B2VavHCpYmPB8=; b=M66Y8n3c5PBxCGpMSo4iaQl7x/9p03Qe8YKlCL7sjhjJiKMNgJFQU08+25pwfPEgtE 61XyQBRIckB+XNuWqjM8GVuy8e7UTrqMG2rRBIyanbWcflivubIw26Gil4ZLqJGCoiBz zFI86tNBpbXBaubfXrMXPOB2DjemjSw+ZO3GiBokVsB1GQPurcpedSH3pAe4SmHBGfdi 320EOSGlvu0lbVV2r3rMneh4F330B/zaY6Eq+1D5pZ4s+wz3NgAScCkzBlje2hHShkFx rIhTymtuZ4vADVgUjVJMZQQ5q5GRpS0r2fOwAYWw+PzOokpfauqVLrs5nT7Gq4AIyXvN aqig== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1688163355; x=1690755355; h=content-transfer-encoding:mime-version:message-id:references :in-reply-to:subject:cc:to:from:date:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=dhY4C5ZJRIijV3cIrjXpWAgQASRDI4B2VavHCpYmPB8=; b=LUm/wQ5nHzv+ZcYjtYgkCCDpU132RnMfPwshli5x4YD6pyRhOZH3A82r4NlgMm3qwN Bd7E3cKpMN0+6kdfvfGY1YDCBzGrOoC3BVPnH0Jsyw1v3PHeClUNsNMimoBffrU+UDvU Izf+RNbxT2LVSXx+Nq5v2n4HYkB6Svz0dEytjkyOD3W7jb2VlkX6+SO/A2UqMOGUNxr/ d4aUg1ZNUqZPgIz8++jQp9svweCvlGguMXWE7pFdHNoxGhAlJaGPenorxUaFo++P6IvH VG7YKrXvNEkoPuj0o9sC6mNOVLs86exZhRg5Up+Bh7L4DbVa86Df+cnP0SfnF2qq0iiq rIjg== X-Gm-Message-State: ABy/qLbRpSdaI5dcHrejvTLrMe2/ZtFB0KGiJMTsPxhARo9Ykf1BMq8r UVhlLa1+ESuFc76e1aABs7U= X-Google-Smtp-Source: APBJJlE6VPs33xp/N2N5bZ0za/J9ybzkK8/WVyZkxJ5BocgkkNrAJuSEnOUZU57Mk3FP+UZjXUzcpA== X-Received: by 2002:aa7:d390:0:b0:51d:9b4d:66bd with SMTP id x16-20020aa7d390000000b0051d9b4d66bdmr2611559edq.9.1688163355371; Fri, 30 Jun 2023 15:15:55 -0700 (PDT) Date: Fri, 30 Jun 2023 22:15:45 +0000 From: Bernhard Beschow To: Olaf Hering CC: qemu-devel@nongnu.org, Paolo Bonzini , John Snow , xen-devel@lists.xenproject.org, Stefano Stabellini Subject: Re: [PATCH v2] piix: fix regression during unplug in Xen HVM domUs In-Reply-To: <20230630133242.58e6d9ed.olaf@aepfle.de> References: <20210317070046.17860-1-olaf@aepfle.de> <4441d32f-bd52-9408-cabc-146b59f0e4dc@redhat.com> <20210325121219.7b5daf76.olaf@aepfle.de> <20230509225818.GA16290@aepfle.de> <20230626231901.5b5d11c1.olaf@aepfle.de> <5DB37FA5-41DF-4ED6-8C8A-CDDD6F276F42@gmail.com> <20230627140740.2736f6e8.olaf@aepfle.de> <4F5609FD-4A89-4450-89E2-3311CC5A9317@gmail.com> <20230630092921.392b302d.olaf@aepfle.de> <367317C5-DB65-40EF-B45B-97E0E802A994@gmail.com> <20230630133242.58e6d9ed.olaf@aepfle.de> Message-ID: MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Am 30=2E Juni 2023 11:32:42 UTC schrieb Olaf Hering : >Fri, 30 Jun 2023 08:05:29 +0000 Bernhard Beschow : > >> Yes=2E Have a look for piix3/piix4 here: https://www=2Eintel=2Ecom/desi= gn/archives/chipsets/440/index=2Ehtm > >This is hidden behind a login or whatever=2E None of the links ask annoying questions in my case=2E Best regards, Bernhard > >I should be able to come up with a commit message without hardware specs = being available=2E > > >Olaf From xen-devel-bounces@lists.xenproject.org Fri Jun 30 22:28:55 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 30 Jun 2023 22:28:55 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557645.871178 (Exim 4.92) (envelope-from ) id 1qFMbg-0000qO-St; Fri, 30 Jun 2023 22:28:48 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557645.871178; Fri, 30 Jun 2023 22:28:48 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFMbg-0000qH-Pe; Fri, 30 Jun 2023 22:28:48 +0000 Received: by outflank-mailman (input) for mailman id 557645; Fri, 30 Jun 2023 22:28:47 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFMbf-0000qB-0N for xen-devel@lists.xenproject.org; Fri, 30 Jun 2023 22:28:47 +0000 Received: from out2-smtp.messagingengine.com (out2-smtp.messagingengine.com [66.111.4.26]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 77af673a-1795-11ee-8611-37d641c3527e; Sat, 01 Jul 2023 00:28:43 +0200 (CEST) Received: from compute6.internal (compute6.nyi.internal [10.202.2.47]) by mailout.nyi.internal (Postfix) with ESMTP id 7758A5C1A7F; Fri, 30 Jun 2023 18:28:41 -0400 (EDT) Received: from mailfrontend1 ([10.202.2.162]) by compute6.internal (MEProxy); Fri, 30 Jun 2023 18:28:41 -0400 Received: by mail.messagingengine.com (Postfix) with ESMTPA; Fri, 30 Jun 2023 18:28:39 -0400 (EDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 77af673a-1795-11ee-8611-37d641c3527e DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= invisiblethingslab.com; h=cc:cc:content-type:content-type:date :date:from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:sender:subject:subject:to:to; s=fm2; t= 1688164121; x=1688250521; bh=6YaatSmBCUiL1gGEXqd7AIO0V9nDJG1EhRM aovFJeg0=; b=fAxYdIefYw98uiAaOaofql5M6+W0zYc72d2rvAxUP2bG6bXBFvP jnQKrctAJ86rzU6rjoMsMHVeEB4Jp3qkKySzTL0mEumpZWc7Pd1yGulfERq6yzg8 NKa3PB9iNH0WXxMDoHEzzt6J2h10tVIpB7vmdfFduzbUb3LAVydjUVsCe/eR95Ml 8p2T9vQ5IUuNLxJ7mh9SehLnQI7vJEBktSvPp5y6+xIU0ayXrTo8ktiA5bGYfbTP brqkLEg0qr4ykUCWAQk3qanOAVj72IkpyFIRuom/AJ5UrcHSSy+fnCxnIr6pZHdV riTerMUq2OvulV4iPwwduprWhBIY0yUA5/w== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-type:content-type:date:date :feedback-id:feedback-id:from:from:in-reply-to:in-reply-to :message-id:mime-version:references:reply-to:sender:subject :subject:to:to:x-me-proxy:x-me-proxy:x-me-sender:x-me-sender :x-sasl-enc; s=fm2; t=1688164121; x=1688250521; bh=6YaatSmBCUiL1 gGEXqd7AIO0V9nDJG1EhRMaovFJeg0=; b=kVddUiUqZDZ0tAgfIhzyuqHIXdQlf 3IjgjPzmTm2iNnVtk152wV+3ITX+obTdqgQKZEecvRD//LB7UpjHaX97jngm2Sdt AvLssyx0djLQ/oCxSqhK3gEy2ak37X5qNN521/nzMDBxxpFOW26WAuFGhFQ1dCqB qhipy8c+Yoybs47WI9B3I4SmFdsb2BKyoE+2V+1lJ1Gc8CztSSLBIwC0KXwvs5nv H24ty/eOA+2Qa6/zHQn/9JeC5oOIGZHED+v4Jsvmwjmm7ZFhiKBxB3FM+3wqSo3A pYk5bqPqyVJpPod7VXSaWTF9uMaE1s1iggDwGimmvV7+w3dIFngqVCFrA== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedviedrtdejgddutdcutefuodetggdotefrodftvf curfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfghnecu uegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmdenuc fjughrpeffhffvvefukfhfgggtuggjsehgtderredttdejnecuhfhrohhmpeforghrvghk ucforghrtgiihihkohifshhkihdqifpkrhgvtghkihcuoehmrghrmhgrrhgvkhesihhnvh hishhisghlvghthhhinhhgshhlrggsrdgtohhmqeenucggtffrrghtthgvrhhnpefgudel teefvefhfeehieetleeihfejhfeludevteetkeevtedtvdegueetfeejudenucevlhhush htvghrufhiiigvpedtnecurfgrrhgrmhepmhgrihhlfhhrohhmpehmrghrmhgrrhgvkhes ihhnvhhishhisghlvghthhhinhhgshhlrggsrdgtohhm X-ME-Proxy: Feedback-ID: i1568416f:Fastmail Date: Sat, 1 Jul 2023 00:28:37 +0200 From: Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= To: Jan Beulich Cc: Paul Durrant , Andrew Cooper , Roger Pau =?utf-8?B?TW9ubsOp?= , Wei Liu , xen-devel@lists.xenproject.org Subject: Re: [PATCH v2 1/2] x86/mm: add API for marking only part of a MMIO page read only Message-ID: References: MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="A6Nppku0Kd1gyEHN" Content-Disposition: inline In-Reply-To: --A6Nppku0Kd1gyEHN Content-Type: text/plain; protected-headers=v1; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Date: Sat, 1 Jul 2023 00:28:37 +0200 From: Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= To: Jan Beulich Cc: Paul Durrant , Andrew Cooper , Roger Pau =?utf-8?B?TW9ubsOp?= , Wei Liu , xen-devel@lists.xenproject.org Subject: Re: [PATCH v2 1/2] x86/mm: add API for marking only part of a MMIO page read only On Tue, May 30, 2023 at 01:56:34PM +0200, Jan Beulich wrote: > On 05.05.2023 23:25, Marek Marczykowski-G=C3=B3recki wrote: > > In some cases, only few registers on a page needs to be write-protected. > > Examples include USB3 console (64 bytes worth of registers) or MSI-X's > > PBA table (which doesn't need to span the whole table either), although > > in the latter case the spec forbids placing other registers on the same > > page. Current API allows only marking whole pages pages read-only, > > which sometimes may cover other registers that guest may need to > > write into. > >=20 > > Currently, when a guest tries to write to an MMIO page on the > > mmio_ro_ranges, it's either immediately crashed on EPT violation - if > > that's HVM, or if PV, it gets #PF. In case of Linux PV, if access was > > from userspace (like, /dev/mem), it will try to fixup by updating page > > tables (that Xen again will force to read-only) and will hit that #PF > > again (looping endlessly). Both behaviors are undesirable if guest could > > actually be allowed the write. > >=20 > > Introduce an API that allows marking part of a page read-only. Since > > sub-page permissions are not a thing in page tables (they are in EPT, > > but not granular enough), do this via emulation (or simply page fault > > handler for PV) that handles writes that are supposed to be allowed. > > The new subpage_mmio_ro_add() takes a start physical address and the > > region size in bytes. Both start address and the size need to be 8-byte >=20 > 8-byte (aka qword) here, but ... >=20 > > aligned, as a practical simplification (allows using smaller bitmask, > > and a smaller granularity isn't really necessary right now). > > It will internally add relevant pages to mmio_ro_ranges, but if either > > start or end address is not page-aligned, it additionally adds that page > > to a list for sub-page R/O handling. The list holds a bitmask which > > dwords are supposed to be read-only and an address where page is mapped >=20 > ... dwords here? >=20 > > for write emulation - this mapping is done only on the first access. A > > plain list is used instead of more efficient structure, because there > > isn't supposed to be many pages needing this precise r/o control. > >=20 > > The mechanism this API is plugged in is slightly different for PV and > > HVM. For both paths, it's plugged into mmio_ro_emulated_write(). For PV, > > it's already called for #PF on read-only MMIO page. For HVM however, EPT > > violation on p2m_mmio_direct page results in a direct domain_crash(). > > To reach mmio_ro_emulated_write(), change how write violations for > > p2m_mmio_direct are handled - specifically, check if they relate to such > > partially protected page via subpage_mmio_write_accept() and if so, call > > hvm_emulate_one_mmio() for them too. This decodes what guest is trying > > write and finally calls mmio_ro_emulated_write(). Note that hitting EPT > > write violation for p2m_mmio_direct page can only happen if the page was > > on mmio_ro_ranges (see ept_p2m_type_to_flags()), so there is no need for > > checking that again. >=20 > Yet that's then putting us on a certain risk wrt potential errata. >=20 > You also specifically talk about "guests", i.e. more than just hwdom. > Adding another easy access to the emulator (for HVM) comes with a > certain risk of future XSAs, too. There are a lot of ways where a guest with a PCI device can exercise the emulator already, no? And even without PCI passthrough, more or less any device backed by the device model allows that too. So, while emulator is a complex piece of code, I don't think this patch makes it easier accessible in any significant way. Anyway, for the use in this series, it applies only if the USB controller used for XHCI console is passed through a guest. I'd say that's far from common setup (outside of debugging), since it requires a special cable to be plugged in for the system to boot at all. > > --- a/xen/arch/x86/hvm/hvm.c > > +++ b/xen/arch/x86/hvm/hvm.c > > @@ -1990,6 +1990,14 @@ int hvm_hap_nested_page_fault(paddr_t gpa, unsig= ned long gla, > > goto out_put_gfn; > > } > > =20 > > + if ( (p2mt =3D=3D p2m_mmio_direct) && npfec.write_access && npfec.= present && > > + subpage_mmio_write_accept(mfn, gla) && > > + (hvm_emulate_one_mmio(mfn_x(mfn), gla) =3D=3D X86EMUL_OKAY) ) > > + { > > + rc =3D 1; > > + goto out_put_gfn; > > + } >=20 > But npfec.write_access set doesn't mean it was a write permission > violation, does it?=20 Doesn't it? IIUC it means it was a write attempt, to a mapped page (npfec.present), and since we've got EPT violation, it got denied.=20 > May I ask that this be accompanied by a comment > discussing the correctness/safety? >=20 > > --- a/xen/arch/x86/include/asm/mm.h > > +++ b/xen/arch/x86/include/asm/mm.h > > @@ -522,9 +522,24 @@ extern struct rangeset *mmio_ro_ranges; > > void memguard_guard_stack(void *p); > > void memguard_unguard_stack(void *p); > > =20 > > +/* > > + * Add more precise r/o marking for a MMIO page. Bytes range specified= here > > + * will still be R/O, but the rest of the page (nor marked as R/O via = another > > + * call) will have writes passed through. > > + * The start address and the size must be aligned to SUBPAGE_MMIO_RO_A= LIGN. >=20 > With this alignment constraint, the earlier sentence can be read as > controdictory. How about "Byte-granular ranges ..." or "Ranges (using > byte granularity) ..."? I admit even that doesn't resolve the issue > fully, though. I don't see where the issue is, alignment requirement doesn't change anything regarding the parameter units. Anyway, I can change to one of the suggested versions. > > @@ -4882,6 +4895,243 @@ long arch_memory_op(unsigned long cmd, XEN_GUES= T_HANDLE_PARAM(void) arg) > > return 0; > > } > > =20 > > +/* This needs subpage_ro_lock already taken */ > > +static int __init subpage_mmio_ro_add_page( > > + mfn_t mfn, unsigned int offset_s, unsigned int offset_e) > > +{ > > + struct subpage_ro_range *entry =3D NULL, *iter; > > + int i; >=20 > unsigned int please (as almost always for induction variables). >=20 > > + list_for_each_entry(iter, &subpage_ro_ranges, list) > > + { > > + if ( mfn_eq(iter->mfn, mfn) ) > > + { > > + entry =3D iter; > > + break; > > + } > > + } > > + if ( !entry ) > > + { > > + /* iter=3D=3DNULL marks it was a newly allocated entry */ >=20 > Nit: Even in a comment I think it would be nice if style rules were > followed, and hence =3D=3D was surrounded by blanks. >=20 > > + iter =3D NULL; > > + entry =3D xzalloc(struct subpage_ro_range); > > + if ( !entry ) > > + return -ENOMEM; > > + entry->mfn =3D mfn; > > + } > > + > > + for ( i =3D offset_s; i <=3D offset_e; i +=3D SUBPAGE_MMIO_RO_ALIG= N ) > > + set_bit(i / SUBPAGE_MMIO_RO_ALIGN, entry->ro_qwords); >=20 > You're holding a spin lock, so won't __set_bit() suffice here? And > then __clear_bit() below? Right. > > + if ( !iter ) > > + list_add_rcu(&entry->list, &subpage_ro_ranges); > > + > > + return 0; > > +} >=20 > Since you mark the qwords which are to be protected, how is one to set > up safely two discontiguous ranges on the same page? I think I had > asked for v1 already why you don't do things the other way around: > Initially the entire page is protected, and then writable regions are > carved out. Because that's not how the API is used. This API is for those how want to write-protect some specific ranges (to be written exclusively by Xen). They don't need to even know what is else is on the same page. Take XHCI case as an example: it gets the range to write-protect by enumerating XHCI extended capabilities, which is a linked list. The driver gets info where XHCI console registers are. Things before/after them on that page may not even be XHCI extended caps at all. This in fact is very similar approach to already existing mmio_ro_ranges. > I guess I shouldn't further ask about overlapping r/o ranges and their > cleaning up. But at least a comment towards the restriction would be > nice. Perhaps even check upon registration that no part of the range > is already marked r/o. Yes, this is a good suggestion, I'll add that. > > +static void __init subpage_mmio_ro_free(struct rcu_head *rcu) > > +{ > > + struct subpage_ro_range *entry =3D container_of( > > + rcu, struct subpage_ro_range, rcu); > > + > > + ASSERT(bitmap_empty(entry->ro_qwords, PAGE_SIZE / SUBPAGE_MMIO_RO_= ALIGN)); > > + > > + if ( entry->mapped ) > > + iounmap(entry->mapped); > > + xfree(entry); > > +} > > + > > +/* This needs subpage_ro_lock already taken */ > > +static int __init subpage_mmio_ro_remove_page( > > + mfn_t mfn, > > + int offset_s, > > + int offset_e) > > +{ > > + struct subpage_ro_range *entry =3D NULL, *iter; > > + int rc, i; > > + > > + list_for_each_entry_rcu(iter, &subpage_ro_ranges, list) > > + { > > + if ( mfn_eq(iter->mfn, mfn) ) > > + { > > + entry =3D iter; > > + break; > > + } > > + } > > + if ( !entry ) > > + return -ENOENT; >=20 > Yet the sole caller doesn't care at all, not even by an assertion. Indeed, right now it's called under the same spinlock that the page was added. Would you prefer to drop return value (not relevant until another use is added, beyond cleanup on failure), or add assertion? > > + for ( i =3D offset_s; i <=3D offset_e; i +=3D SUBPAGE_MMIO_RO_ALIG= N ) > > + clear_bit(i / SUBPAGE_MMIO_RO_ALIGN, entry->ro_qwords); > > + > > + if ( !bitmap_empty(entry->ro_qwords, PAGE_SIZE / SUBPAGE_MMIO_RO_A= LIGN) ) > > + return 0; > > + > > + list_del_rcu(&entry->list); > > + call_rcu(&entry->rcu, subpage_mmio_ro_free); >=20 > This being an __init function, what is the RCU-ness intended to guard > against? Indeed, as long as it's __init only, it probably can be dropped. Originally I prepared this API to be useful also when some ranges are added/removed beyond just boot time, but currently the sole use is just adding ranges and only during boot. > > + return rc; >=20 > DYM "return 0" here, or maybe even invert the if()'s condition to have > just a single return? "rc" was never written afaics, and the compiler > not spotting it is likely because the caller doesn't inspect the return > value. Indeed. > > +} > > + > > + >=20 > Nit: No double blanks lines please. >=20 > > +int __init subpage_mmio_ro_add( > > + paddr_t start, > > + size_t size) > > +{ > > + mfn_t mfn_start =3D maddr_to_mfn(start); > > + paddr_t end =3D start + size - 1; > > + mfn_t mfn_end =3D maddr_to_mfn(end); > > + int offset_end =3D 0; >=20 > unsigned int again, afaics. Also this can be declared in the more narrow > scope it's used in. >=20 > > + int rc; > > + > > + ASSERT(IS_ALIGNED(start, SUBPAGE_MMIO_RO_ALIGN)); > > + ASSERT(IS_ALIGNED(size, SUBPAGE_MMIO_RO_ALIGN)); >=20 > Not meeting the first assertion's condition (thinking of a release build) > is kind of okay, as too large a range will be protected. But for the 2nd > too small a range would be covered aiui, so this may want dealing with in > a release-build-safe way. Ok. > > + if ( !size ) > > + return 0; > > + > > + rc =3D rangeset_add_range(mmio_ro_ranges, mfn_x(mfn_start), mfn_x(= mfn_end)); > > + if ( rc ) > > + return rc; > > + > > + spin_lock(&subpage_ro_lock); > > + > > + if ( PAGE_OFFSET(start) || > > + (mfn_eq(mfn_start, mfn_end) && PAGE_OFFSET(end) !=3D PAGE_SIZ= E - 1) ) > > + { > > + offset_end =3D mfn_eq(mfn_start, mfn_end) ? > > + PAGE_OFFSET(end) : > > + (PAGE_SIZE - 1); > > + rc =3D subpage_mmio_ro_add_page(mfn_start, > > + PAGE_OFFSET(start), > > + offset_end); > > + if ( rc ) > > + goto err_unlock; > > + } > > + > > + if ( !mfn_eq(mfn_start, mfn_end) && PAGE_OFFSET(end) !=3D PAGE_SIZ= E - 1 ) > > + { > > + rc =3D subpage_mmio_ro_add_page(mfn_end, 0, PAGE_OFFSET(end)); > > + if ( rc ) > > + goto err_unlock_remove; > > + } > > + > > + spin_unlock(&subpage_ro_lock); > > + > > + return 0; > > + > > + err_unlock_remove: > > + if ( offset_end ) > > + subpage_mmio_ro_remove_page(mfn_start, PAGE_OFFSET(start), off= set_end); > > + > > + err_unlock: > > + spin_unlock(&subpage_ro_lock); > > + if ( rangeset_remove_range(mmio_ro_ranges, mfn_x(mfn_start), mfn_x= (mfn_end)) ) > > + printk(XENLOG_ERR "Failed to cleanup on failed subpage_mmio_ro= _add()\n"); > > + return rc; > > +} >=20 > None of the failures here is particularly likely, so perhaps all is fine = as > you have it. But there would be an alternative of retaining the > mmio_ro_ranges entry/entries, allowing the caller to "ignore" the error. That is an option here too, but note one of the potential failures is about rangeset_add_range() itself, so one needs to be careful about completely ignoring the error. > > +static void __iomem *subpage_mmio_get_page(struct subpage_ro_range *en= try) > > +{ > > + if ( entry->mapped ) > > + return entry->mapped; > > + > > + spin_lock(&subpage_ro_lock); > > + /* Re-check under the lock */ > > + if ( entry->mapped ) > > + goto out_unlock; > > + > > + entry->mapped =3D ioremap(mfn_x(entry->mfn) << PAGE_SHIFT, PAGE_SI= ZE); > > + > > + out_unlock: > > + spin_unlock(&subpage_ro_lock); > > + return entry->mapped; > > +} >=20 > This is easy to deal with without any "goto". >=20 > I'm further inclined to request that the ioremap() occur without the lock > held, followed by an iounmap() (after dropping the lock) if in fact the > mapping wasn't needed (anymore). Is it to limit time the lock is held? > > +static void subpage_mmio_write_emulate( > > + mfn_t mfn, > > + unsigned int offset, > > + const void *data, > > + unsigned int len) > > +{ > > + struct subpage_ro_range *entry; > > + void __iomem *addr; > > + > > + rcu_read_lock(&subpage_ro_rcu); > > + > > + list_for_each_entry_rcu(entry, &subpage_ro_ranges, list) > > + { > > + if ( mfn_eq(entry->mfn, mfn) ) > > + { > > + if ( test_bit(offset / SUBPAGE_MMIO_RO_ALIGN, entry->ro_qw= ords) ) > > + goto write_ignored; >=20 > I think you can get away with just a single "goto" by putting the gprintk= () > (and its label) here. write_ignored label is used also below in "default" case (which should be unreachable, but still). Do you suggest jumping from default case into here? > > + addr =3D subpage_mmio_get_page(entry); > > + if ( !addr ) > > + { > > + gprintk(XENLOG_ERR, > > + "Failed to map page for MMIO write at 0x%"PRI_= mfn"%03x\n", > > + mfn_x(mfn), offset); > > + goto out_unlock; > > + } > > + > > + switch ( len ) > > + { > > + case 1: > > + writeb(*(uint8_t*)data, addr); > > + break; > > + case 2: > > + writew(*(uint16_t*)data, addr); > > + break; > > + case 4: > > + writel(*(uint32_t*)data, addr); > > + break; > > + case 8: > > + writeq(*(uint64_t*)data, addr); > > + break; >=20 > Please avoid casting away const-ness. >=20 > > + default: > > + /* mmio_ro_emulated_write() already validated the size= */ > > + ASSERT_UNREACHABLE(); > > + goto write_ignored; > > + } > > + goto out_unlock; > > + } > > + } > > + /* Do not print message for pages without any writable parts. */ > > + goto out_unlock; > > + > > + write_ignored: > > + gprintk(XENLOG_WARNING, > > + "ignoring write to R/O MMIO 0x%"PRI_mfn"%03x len %u\n", > > + mfn_x(mfn), offset, len); >=20 > Nit: Indentation. >=20 > > + out_unlock: > > + rcu_read_unlock(&subpage_ro_rcu); > > +} > > + > > +bool subpage_mmio_write_accept(mfn_t mfn, unsigned long gla) > > +{ > > + unsigned int offset =3D PAGE_OFFSET(gla); > > + const struct subpage_ro_range *entry; > > + > > + rcu_read_lock(&subpage_ro_rcu); > > + > > + list_for_each_entry_rcu(entry, &subpage_ro_ranges, list) > > + if ( mfn_eq(entry->mfn, mfn) && > > + !test_bit(offset / SUBPAGE_MMIO_RO_ALIGN, entry->ro_qword= s) ) > > + { > > + /* > > + * We don't know the write seize at this point yet, so it = could be >=20 > Nit: "size" I assume. >=20 > > + * an unalligned write, but accept it here anyway and deal= with it > > + * later. > > + */ >=20 > Have I overlooked where unaligned writes are dealt with? mmio_ro_emulated_write() handles that already. > Also nit: "unaligned". >=20 > Jan --=20 Best Regards, Marek Marczykowski-G=C3=B3recki Invisible Things Lab --A6Nppku0Kd1gyEHN Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQEzBAEBCAAdFiEEhrpukzGPukRmQqkK24/THMrX1ywFAmSfVxQACgkQ24/THMrX 1yzJPAf9HyjoXqc+bt02yVZqB1Kj6P+nC34bUWOUPAnEcZ6gyT0+n+Ujln2rhScy rp1T3FrpSdsI4hrcw0Y7Odc7jSAUT4WD9sEtDdJ+P4Uz6XEa2bgIWqLFHEYheDzq IJceDpr3XFuz1urlNw9fBpE5JlvgLp6wWbt16yeOb+eO8EWPJCZ6zOi2UgcUbAtI JFcjxEq9tGu6gUiogovpx8jGPYemSVoQqKIhjVc0hQbGc5BYWYKMGE7xqiuSV+KY EjFQhrbb7SajEAINMJPrwup9OHAKekBgp4IdM24zjt1kI3YPDuC3wxthuMYVWDla grY2/XzuzymeNW7BbSseJOdCzXGJkA== =zqjE -----END PGP SIGNATURE----- --A6Nppku0Kd1gyEHN-- From xen-devel-bounces@lists.xenproject.org Fri Jun 30 22:43:03 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 30 Jun 2023 22:43:03 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557653.871188 (Exim 4.92) (envelope-from ) id 1qFMpA-0003Tc-8C; Fri, 30 Jun 2023 22:42:44 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557653.871188; Fri, 30 Jun 2023 22:42:44 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFMpA-0003TV-5R; Fri, 30 Jun 2023 22:42:44 +0000 Received: by outflank-mailman (input) for mailman id 557653; Fri, 30 Jun 2023 22:42:43 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFMp9-0003TP-C6 for xen-devel@lists.xenproject.org; Fri, 30 Jun 2023 22:42:43 +0000 Received: from out5-smtp.messagingengine.com (out5-smtp.messagingengine.com [66.111.4.29]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 6a3eff95-1797-11ee-b237-6b7b168915f2; Sat, 01 Jul 2023 00:42:39 +0200 (CEST) Received: from compute1.internal (compute1.nyi.internal [10.202.2.41]) by mailout.nyi.internal (Postfix) with ESMTP id 632685C21B0; Fri, 30 Jun 2023 18:38:31 -0400 (EDT) Received: from mailfrontend2 ([10.202.2.163]) by compute1.internal (MEProxy); Fri, 30 Jun 2023 18:38:31 -0400 Received: by mail.messagingengine.com (Postfix) with ESMTPA; Fri, 30 Jun 2023 18:38:29 -0400 (EDT) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 6a3eff95-1797-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= invisiblethingslab.com; h=cc:cc:content-type:content-type:date :date:from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:sender:subject:subject:to:to; s=fm2; t= 1688164711; x=1688251111; bh=6G7LF33DLK7fMqnak222XQLP5fkdA/snjvo ivj3rDmE=; b=bLT7/coSWtsVFm5U9ttpJLv6Ws9xUCyDSVYJfhRApqJu/JtyLol 5pvWaAc1BehwjZFb9aDhUGcUdUeNiEHnc4mUGtfgOfgD9VrLA8BknJf7Xzg9X4xr rSO23LHExL8rk7TKohIpWq2J8V2b834cjayo/JkU8jfqNhJEGwBZSON1pimpXd+5 1Xe8u30AUq1VvtFOh314IQ2tzeFLsG0gV5F1ZySUJWVVfAPnvPdxdce0daYvB+3B x0LldQpRoKuXvdX+GhNQO3GEjznRcbO/QeNVEArwKVUGlF3VZ589f06+mMVt5hrx OjN48nDHJimgWFg52pfNaZHo4pXyst2WOAw== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-type:content-type:date:date :feedback-id:feedback-id:from:from:in-reply-to:in-reply-to :message-id:mime-version:references:reply-to:sender:subject :subject:to:to:x-me-proxy:x-me-proxy:x-me-sender:x-me-sender :x-sasl-enc; s=fm2; t=1688164711; x=1688251111; bh=6G7LF33DLK7fM qnak222XQLP5fkdA/snjvoivj3rDmE=; b=VCqJ5F5fgD5WdSF6KnVVcWXGaWPmx pJ2VVUGZE2WNbEaftgQGuFaFF3q4Bmgf901bGkGPlEUwpRavbCDrL11nICN3ebbk uHPkr7Fq8ucgelw1oHkon0VDK2QLAB1YLRz7UWJD1jIu8ja8Pu7vQo9q2c3wq0re NcglgmCiF+Ej2+lAWfj5uUmYqUr/VBuJPdOxMZkd6EtKlfbPbLu9v1RhCCsrbMas YBV7p3Q1N9kgMjg3PT/a+iqS+5kPNwBZ69eb5SGqtZfXS/aQH2jQLk7zViuYg8TO BYVxRzQNVkzrEk/64EMLjpx1V0u0Gl8Xn+mH5rhjhn1HI+Jghofgq70nw== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedviedrtdejgdduvdcutefuodetggdotefrodftvf curfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfghnecu uegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmdenuc fjughrpeffhffvvefukfhfgggtuggjsehgtderredttdejnecuhfhrohhmpeforghrvghk ucforghrtgiihihkohifshhkihdqifpkrhgvtghkihcuoehmrghrmhgrrhgvkhesihhnvh hishhisghlvghthhhinhhgshhlrggsrdgtohhmqeenucggtffrrghtthgvrhhnpefgudel teefvefhfeehieetleeihfejhfeludevteetkeevtedtvdegueetfeejudenucevlhhush htvghrufhiiigvpedtnecurfgrrhgrmhepmhgrihhlfhhrohhmpehmrghrmhgrrhgvkhes ihhnvhhishhisghlvghthhhinhhgshhlrggsrdgtohhm X-ME-Proxy: Feedback-ID: i1568416f:Fastmail Date: Sat, 1 Jul 2023 00:38:26 +0200 From: Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= To: Jan Beulich Cc: Andrew Cooper , George Dunlap , Julien Grall , Stefano Stabellini , Wei Liu , xen-devel@lists.xenproject.org Subject: Re: [PATCH v2 2/2] drivers/char: Use sub-page ro API to make just xhci dbc cap RO Message-ID: References: <1f9909dacfd7822a1c7d30ba03bbec93fa2ff6fd.1683321183.git-series.marmarek@invisiblethingslab.com> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="3axsVjmOW6Rx9DYF" Content-Disposition: inline In-Reply-To: --3axsVjmOW6Rx9DYF Content-Type: text/plain; protected-headers=v1; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Date: Sat, 1 Jul 2023 00:38:26 +0200 From: Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= To: Jan Beulich Cc: Andrew Cooper , George Dunlap , Julien Grall , Stefano Stabellini , Wei Liu , xen-devel@lists.xenproject.org Subject: Re: [PATCH v2 2/2] drivers/char: Use sub-page ro API to make just xhci dbc cap RO On Tue, May 30, 2023 at 02:04:26PM +0200, Jan Beulich wrote: > On 05.05.2023 23:25, Marek Marczykowski-G=C3=B3recki wrote: > > Not the whole page, which may contain other registers too. In fact > > on Tiger Lake and newer (at least), this page do contain other registers > > that Linux tries to use. >=20 > Please can you clarify whether this is with spec or an erratum?=20 It is in spec. The spec is written with assumption that different driver may drive the debug console than the rest of the controller. But the spec (apparently) does not anticipate those drivers living in different kernels, so does not mandate isolating registers to separate pages. > I ask > not the least because I continue to wonder whether we really want/need > the non-negligible amount of new code added by path 1. >=20 > > And with share=3Dyes, a domU would use them too. >=20 > And gain yet more access to the emulator, as mentioned in patch 1. The > security implications may (will?) want mentioning. >=20 > > --- a/xen/drivers/char/xhci-dbc.c > > +++ b/xen/drivers/char/xhci-dbc.c > > @@ -1221,14 +1221,12 @@ static void __init cf_check dbc_uart_init_posti= rq(struct serial_port *port) > > * Linux's XHCI driver (as of 5.18) works without writting to the = whole > > * page, so keep it simple. > > */ > > - if ( rangeset_add_range(mmio_ro_ranges, > > - PFN_DOWN((uart->dbc.bar_val & PCI_BASE_ADDRESS_MEM_MAS= K) + > > - uart->dbc.xhc_dbc_offset), > > - PFN_UP((uart->dbc.bar_val & PCI_BASE_ADDRESS_MEM_MASK)= + > > - uart->dbc.xhc_dbc_offset + > > - sizeof(*uart->dbc.dbc_reg)) - 1) ) > > - printk(XENLOG_INFO > > - "Error while adding MMIO range of device to mmio_ro_ran= ges\n"); > > + if ( subpage_mmio_ro_add( > > + (uart->dbc.bar_val & PCI_BASE_ADDRESS_MEM_MASK) + > > + uart->dbc.xhc_dbc_offset, > > + sizeof(*uart->dbc.dbc_reg)) ) > > + printk(XENLOG_WARNING > > + "Error while marking MMIO range of XHCI console as R/O\= n"); >=20 > So how about falling back to just rangeset_add_range(mmio_ro_ranges, ...) > in this failure case? (I did mention an alternative to doing it here in > the comments on patch 1.) Or fallback to XHCI_SHARE_NONE (IOW, pci_ro_device()). > Also, doesn't the comment ahead of the construct become stale? Indeed. > Finally I think indentation of the function call arguments is off by one. How is it supposed to be? Currently it's 8 spaces over the "if", should it be 4 spaces over the function name? --=20 Best Regards, Marek Marczykowski-G=C3=B3recki Invisible Things Lab --3axsVjmOW6Rx9DYF Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQEzBAEBCAAdFiEEhrpukzGPukRmQqkK24/THMrX1ywFAmSfWWIACgkQ24/THMrX 1yw3Rwf/badY5zujDOLzmpYyhKzbSlInhaIaCWUUFWH1MI0ZL/2poHqK+JhpxSh9 bCFDSoMsLDgiTdqIPzCmRnMTN+Q2x8jnXEq73rngv4w6eMHBWU/JoKv5q9eRTkRl SFGjlyYIUYnyU3t139wAm20igpp+YzWtD2l971XPLOxDf/o/Kz+IPmVN7oS5qKTw j1YCP/YPsjSwUnJqD7jOCWvXYQicWYq8gGhoY8xOsGYSsDyklOfH0Ab75m503lB1 YtFg2/x6U59BgODVwlaXoLOc6B6Hlp55xnnhbWi3ZM8+F3Q3WvzMvtjatUI/eYBu yFx4GFNa2WK8NUYcoFEma2iTrQ8EPA== =sGg6 -----END PGP SIGNATURE----- --3axsVjmOW6Rx9DYF-- From xen-devel-bounces@lists.xenproject.org Fri Jun 30 23:18:54 2023 Return-path: Envelope-to: archives@lists.xen.org Delivery-date: Fri, 30 Jun 2023 23:18:54 +0000 Received: from list by lists.xenproject.org with outflank-mailman.557659.871197 (Exim 4.92) (envelope-from ) id 1qFNO4-0007F1-0h; Fri, 30 Jun 2023 23:18:48 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 557659.871197; Fri, 30 Jun 2023 23:18:47 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFNO3-0007Eu-Tb; Fri, 30 Jun 2023 23:18:47 +0000 Received: by outflank-mailman (input) for mailman id 557659; Fri, 30 Jun 2023 23:18:46 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qFNO2-0007Eo-0m for xen-devel@lists.xenproject.org; Fri, 30 Jun 2023 23:18:46 +0000 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 73c814ab-179c-11ee-b237-6b7b168915f2; Sat, 01 Jul 2023 01:18:43 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 6B0CE61773; Fri, 30 Jun 2023 23:18:41 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id D4ACDC433C8; Fri, 30 Jun 2023 23:18:38 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 73c814ab-179c-11ee-b237-6b7b168915f2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1688167120; bh=sm6KoKXjaQtz55gOsvMrNJrAlizz93ECFjKqHM73CKI=; h=Date:From:To:cc:Subject:In-Reply-To:References:From; b=XsFcxqgpK/d/VqFR7IK0QTdgtGwo0XlZyuZkaN0hcpJ8V8kLdq8NvuComKyPPIBLE 246H93/lymCULjK/Zc+JF/whCvZCwTv/DjB4GrNQQzKlkPARIKJlIJ2bnedEbSzQdP bR9pkE9pCJTRxpb91ZbTbXV+K5PLJ/sb5GQmCdJsuZsIifiRrJreJVROQU1Acipg4+ SfJlXeXDZZ7Ps+wm/ciH+ngXQVgNeK1M0cHw61uESS/NdXOXTUKV7+GWfNbEz+5rS6 w1/ZyOHFLoQdh70VXRCaoo0zoGBVSNW2xgzyGUi7a81DiW0l4aZgBO6S0gpTK27MXL dfGrXzljDhLiA== Date: Fri, 30 Jun 2023 16:18:37 -0700 (PDT) From: Stefano Stabellini X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop To: Luca Fancellu cc: xen-devel@lists.xenproject.org, wei.chen@arm.com, Andrew Cooper , George Dunlap , Jan Beulich , Julien Grall , Stefano Stabellini , Wei Liu , Henry Wang , Community Manager , Doug Goldstein , Bertrand Marquis , Volodymyr Babchuk , Anthony PERARD Subject: Re: [RFC PATCH] xen/arm: Rebranding dom0less feature In-Reply-To: <20230630091210.3742121-1-luca.fancellu@arm.com> Message-ID: References: <20230630091210.3742121-1-luca.fancellu@arm.com> User-Agent: Alpine 2.22 (DEB 394 2020-01-19) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII On Fri, 29 Jun 2023, Luca Fancellu wrote: > The "dom0less" feature was intended to be the feature where a domU > domain could be launched without the control domain (Dom0) > intervention, however the name seems to suggest that Dom0 cannot > be part of the configuration, while instead it's a possible use case. > > To avoid that, rename the "dom0less" configuration with the name > "hyperlaunch", that is less misleading. > > Signed-off-by: Luca Fancellu I tested this patch on gitlab-ci and everything works as expected. I also confirmed that there are no other mentions of "dom0less", except for docs/designs/launch/hyperlaunch*. I think this patch could go in as-is and docs/designs/launch/hyperlaunch* could be fixed later, because the changes here are mechanical, while docs/designs/launch/hyperlaunch* will need rewording. So: Reviewed-by: Stefano Stabellini > --- > This is an RFC to get the feeling of the community about the name > change, for now it's everything in one patch just to see how it > will look like, if there is interest on proceeding into it, I can > split in more commit. > Please note that I've left intentionally "dom0less" into the > docs/design/ and CHANGELOG.md > --- > --- > .gitignore | 2 +- > CHANGELOG.md | 2 + > SUPPORT.md | 8 +- > automation/gitlab-ci/test.yaml | 88 +++++++++---------- > ...m32.sh => qemu-smoke-hyperlaunch-arm32.sh} | 0 > ...m64.sh => qemu-smoke-hyperlaunch-arm64.sh} | 2 +- > ...arm64.sh => qemu-xtf-hyperlaunch-arm64.sh} | 0 > ...4.sh => xilinx-smoke-hyperlaunch-arm64.sh} | 2 +- > docs/INDEX | 2 +- > .../{dom0less.pandoc => hyperlaunch.pandoc} | 33 +++---- > docs/misc/arm/device-tree/booting.txt | 4 +- > docs/misc/efi.pandoc | 14 +-- > docs/misc/xen-command-line.pandoc | 2 +- > docs/misc/xenstore-ring.txt | 6 +- > tools/helpers/Makefile | 20 ++--- > ...t-dom0less.c => init-hyperlaunch-guests.c} | 4 +- > xen/arch/arm/Kconfig | 4 +- > xen/arch/arm/domain_build.c | 18 ++-- > xen/arch/arm/efi/efi-boot.h | 9 +- > xen/arch/arm/include/asm/kernel.h | 32 +++---- > xen/arch/arm/setup.c | 8 +- > 21 files changed, 132 insertions(+), 128 deletions(-) > rename automation/scripts/{qemu-smoke-dom0less-arm32.sh => qemu-smoke-hyperlaunch-arm32.sh} (100%) > rename automation/scripts/{qemu-smoke-dom0less-arm64.sh => qemu-smoke-hyperlaunch-arm64.sh} (99%) > rename automation/scripts/{qemu-xtf-dom0less-arm64.sh => qemu-xtf-hyperlaunch-arm64.sh} (100%) > rename automation/scripts/{xilinx-smoke-dom0less-arm64.sh => xilinx-smoke-hyperlaunch-arm64.sh} (98%) > rename docs/features/{dom0less.pandoc => hyperlaunch.pandoc} (84%) > rename tools/helpers/{init-dom0less.c => init-hyperlaunch-guests.c} (98%) > > diff --git a/.gitignore b/.gitignore > index c1b73b096893..c9d569247079 100644 > --- a/.gitignore > +++ b/.gitignore > @@ -167,7 +167,7 @@ tools/flask/utils/flask-loadpolicy > tools/flask/utils/flask-setenforce > tools/flask/utils/flask-set-bool > tools/flask/utils/flask-label-pci > -tools/helpers/init-dom0less > +tools/helpers/init-hyperlaunch-guests > tools/helpers/init-xenstore-domain > tools/helpers/xen-init-dom0 > tools/hotplug/common/hotplugpath.sh > diff --git a/CHANGELOG.md b/CHANGELOG.md > index 7d7e0590f8c6..cf01e004b017 100644 > --- a/CHANGELOG.md > +++ b/CHANGELOG.md > @@ -13,6 +13,8 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) > known user doesn't use it properly, leading to in-guest breakage. > - The "dom0" option is now supported on Arm and "sve=" sub-option can be used > to enable dom0 guest to use SVE/SVE2 instructions. > + - The "dom0less" feature, currently supported only on arm, is renamed to > + "hyperlaunch". > > ### Added > - On x86, support for features new in Intel Sapphire Rapids CPUs: > diff --git a/SUPPORT.md b/SUPPORT.md > index 35a6249e03b2..fe500652828c 100644 > --- a/SUPPORT.md > +++ b/SUPPORT.md > @@ -342,7 +342,7 @@ Allow sharing of identical pages between guests > > ### Static Memory Sharing > > -Allow to statically set up shared memory on dom0less system, > +Allow to statically set up shared memory on hyperlaunch system, > enabling domains to do shm-based communication > > Status, ARM: Tech Preview > @@ -945,20 +945,20 @@ OVMF firmware implements the UEFI boot protocol. > > Status, qemu-xen: Supported > > -## Dom0less > +## Hyperlaunch > > Guest creation from the hypervisor at boot without Dom0 intervention. > > Status, ARM: Supported > > -Memory of dom0less DomUs is not scrubbed at boot when bootscrub=on or > +Memory of hyperlaunch DomUs is not scrubbed at boot when bootscrub=on or > bootscrub=off are passed as Xen command line parameters. (Memory should > be scrubbed with bootscrub=idle.) No XSAs will be issues due to > unscrubbed memory. > > ## Static Event Channel > > -Allow to setup the static event channel on dom0less system, enabling domains > +Allow to setup the static event channel on hyperlaunch system, enabling domains > to send/receive notifications. > > Status, ARM: Tech Preview > diff --git a/automation/gitlab-ci/test.yaml b/automation/gitlab-ci/test.yaml > index d5cb238b0ad8..d309c784b643 100644 > --- a/automation/gitlab-ci/test.yaml > +++ b/automation/gitlab-ci/test.yaml > @@ -136,18 +136,18 @@ build-each-commit-gcc: > tags: > - x86_64 > > -xilinx-smoke-dom0less-arm64-gcc: > +xilinx-smoke-hyperlaunch-arm64-gcc: > extends: .xilinx-arm64 > script: > - - ./automation/scripts/xilinx-smoke-dom0less-arm64.sh 2>&1 | tee ${LOGFILE} > + - ./automation/scripts/xilinx-smoke-hyperlaunch-arm64.sh 2>&1 | tee ${LOGFILE} > needs: > - *arm64-test-needs > - alpine-3.12-gcc-arm64 > > -xilinx-smoke-dom0less-arm64-gcc-gem-passthrough: > +xilinx-smoke-hyperlaunch-arm64-gcc-gem-passthrough: > extends: .xilinx-arm64 > script: > - - ./automation/scripts/xilinx-smoke-dom0less-arm64.sh gem-passthrough 2>&1 | tee ${LOGFILE} > + - ./automation/scripts/xilinx-smoke-hyperlaunch-arm64.sh gem-passthrough 2>&1 | tee ${LOGFILE} > needs: > - *arm64-test-needs > - alpine-3.12-gcc-arm64 > @@ -234,98 +234,98 @@ qemu-smoke-dom0-arm64-gcc-debug: > - *arm64-test-needs > - alpine-3.12-gcc-debug-arm64 > > -qemu-smoke-dom0less-arm64-gcc: > +qemu-smoke-hyperlaunch-arm64-gcc: > extends: .qemu-arm64 > script: > - - ./automation/scripts/qemu-smoke-dom0less-arm64.sh 2>&1 | tee ${LOGFILE} > + - ./automation/scripts/qemu-smoke-hyperlaunch-arm64.sh 2>&1 | tee ${LOGFILE} > needs: > - *arm64-test-needs > - alpine-3.12-gcc-arm64 > > -qemu-smoke-dom0less-arm64-gcc-debug: > +qemu-smoke-hyperlaunch-arm64-gcc-debug: > extends: .qemu-arm64 > script: > - - ./automation/scripts/qemu-smoke-dom0less-arm64.sh 2>&1 | tee ${LOGFILE} > + - ./automation/scripts/qemu-smoke-hyperlaunch-arm64.sh 2>&1 | tee ${LOGFILE} > needs: > - *arm64-test-needs > - alpine-3.12-gcc-debug-arm64 > > -qemu-smoke-dom0less-arm64-gcc-staticmem: > +qemu-smoke-hyperlaunch-arm64-gcc-staticmem: > extends: .qemu-arm64 > script: > - - ./automation/scripts/qemu-smoke-dom0less-arm64.sh static-mem 2>&1 | tee ${LOGFILE} > + - ./automation/scripts/qemu-smoke-hyperlaunch-arm64.sh static-mem 2>&1 | tee ${LOGFILE} > needs: > - *arm64-test-needs > - alpine-3.12-gcc-arm64-staticmem > > -qemu-smoke-dom0less-arm64-gcc-debug-staticmem: > +qemu-smoke-hyperlaunch-arm64-gcc-debug-staticmem: > extends: .qemu-arm64 > script: > - - ./automation/scripts/qemu-smoke-dom0less-arm64.sh static-mem 2>&1 | tee ${LOGFILE} > + - ./automation/scripts/qemu-smoke-hyperlaunch-arm64.sh static-mem 2>&1 | tee ${LOGFILE} > needs: > - *arm64-test-needs > - alpine-3.12-gcc-debug-arm64-staticmem > > -qemu-smoke-dom0less-arm64-gcc-staticheap: > +qemu-smoke-hyperlaunch-arm64-gcc-staticheap: > extends: .qemu-arm64 > script: > - - ./automation/scripts/qemu-smoke-dom0less-arm64.sh static-heap 2>&1 | tee ${LOGFILE} > + - ./automation/scripts/qemu-smoke-hyperlaunch-arm64.sh static-heap 2>&1 | tee ${LOGFILE} > needs: > - *arm64-test-needs > - alpine-3.12-gcc-arm64 > > -qemu-smoke-dom0less-arm64-gcc-debug-staticheap: > +qemu-smoke-hyperlaunch-arm64-gcc-debug-staticheap: > extends: .qemu-arm64 > script: > - - ./automation/scripts/qemu-smoke-dom0less-arm64.sh static-heap 2>&1 | tee ${LOGFILE} > + - ./automation/scripts/qemu-smoke-hyperlaunch-arm64.sh static-heap 2>&1 | tee ${LOGFILE} > needs: > - *arm64-test-needs > - alpine-3.12-gcc-debug-arm64 > > -qemu-smoke-dom0less-arm64-gcc-static-shared-mem: > +qemu-smoke-hyperlaunch-arm64-gcc-static-shared-mem: > extends: .qemu-arm64 > script: > - - ./automation/scripts/qemu-smoke-dom0less-arm64.sh static-shared-mem 2>&1 | tee ${LOGFILE} > + - ./automation/scripts/qemu-smoke-hyperlaunch-arm64.sh static-shared-mem 2>&1 | tee ${LOGFILE} > needs: > - *arm64-test-needs > - alpine-3.12-gcc-arm64-static-shared-mem > > -qemu-smoke-dom0less-arm64-gcc-debug-static-shared-mem: > +qemu-smoke-hyperlaunch-arm64-gcc-debug-static-shared-mem: > extends: .qemu-arm64 > script: > - - ./automation/scripts/qemu-smoke-dom0less-arm64.sh static-shared-mem 2>&1 | tee ${LOGFILE} > + - ./automation/scripts/qemu-smoke-hyperlaunch-arm64.sh static-shared-mem 2>&1 | tee ${LOGFILE} > needs: > - *arm64-test-needs > - alpine-3.12-gcc-debug-arm64-static-shared-mem > > -qemu-smoke-dom0less-arm64-gcc-boot-cpupools: > +qemu-smoke-hyperlaunch-arm64-gcc-boot-cpupools: > extends: .qemu-arm64 > script: > - - ./automation/scripts/qemu-smoke-dom0less-arm64.sh boot-cpupools 2>&1 | tee ${LOGFILE} > + - ./automation/scripts/qemu-smoke-hyperlaunch-arm64.sh boot-cpupools 2>&1 | tee ${LOGFILE} > needs: > - *arm64-test-needs > - alpine-3.12-gcc-arm64-boot-cpupools > > -qemu-smoke-dom0less-arm64-gcc-debug-boot-cpupools: > +qemu-smoke-hyperlaunch-arm64-gcc-debug-boot-cpupools: > extends: .qemu-arm64 > script: > - - ./automation/scripts/qemu-smoke-dom0less-arm64.sh boot-cpupools 2>&1 | tee ${LOGFILE} > + - ./automation/scripts/qemu-smoke-hyperlaunch-arm64.sh boot-cpupools 2>&1 | tee ${LOGFILE} > needs: > - *arm64-test-needs > - alpine-3.12-gcc-debug-arm64-boot-cpupools > > -qemu-xtf-dom0less-arm64-gcc-hyp-xen-version: > +qemu-xtf-hyperlaunch-arm64-gcc-hyp-xen-version: > extends: .qemu-arm64 > script: > - - ./automation/scripts/qemu-xtf-dom0less-arm64.sh hyp-xen-version 2>&1 | tee ${LOGFILE} > + - ./automation/scripts/qemu-xtf-hyperlaunch-arm64.sh hyp-xen-version 2>&1 | tee ${LOGFILE} > needs: > - alpine-3.12-gcc-arm64 > - qemu-system-aarch64-6.0.0-arm64-export > > -qemu-xtf-dom0less-arm64-gcc-debug-hyp-xen-version: > +qemu-xtf-hyperlaunch-arm64-gcc-debug-hyp-xen-version: > extends: .qemu-arm64 > script: > - - ./automation/scripts/qemu-xtf-dom0less-arm64.sh hyp-xen-version 2>&1 | tee ${LOGFILE} > + - ./automation/scripts/qemu-xtf-hyperlaunch-arm64.sh hyp-xen-version 2>&1 | tee ${LOGFILE} > needs: > - alpine-3.12-gcc-debug-arm64 > - qemu-system-aarch64-6.0.0-arm64-export > @@ -338,66 +338,66 @@ qemu-smoke-dom0-arm32-gcc: > - *arm32-test-needs > - yocto-qemuarm > > -qemu-smoke-dom0less-arm32-gcc: > +qemu-smoke-hyperlaunch-arm32-gcc: > extends: .qemu-arm32 > script: > - - ./automation/scripts/qemu-smoke-dom0less-arm32.sh 2>&1 | tee ${LOGFILE} > + - ./automation/scripts/qemu-smoke-hyperlaunch-arm32.sh 2>&1 | tee ${LOGFILE} > needs: > - *arm32-test-needs > - debian-unstable-gcc-arm32 > > -qemu-smoke-dom0less-arm32-gcc-debug: > +qemu-smoke-hyperlaunch-arm32-gcc-debug: > extends: .qemu-arm32 > script: > - - ./automation/scripts/qemu-smoke-dom0less-arm32.sh 2>&1 | tee ${LOGFILE} > + - ./automation/scripts/qemu-smoke-hyperlaunch-arm32.sh 2>&1 | tee ${LOGFILE} > needs: > - *arm32-test-needs > - debian-unstable-gcc-arm32-debug > > -qemu-smoke-dom0less-arm32-gcc-staticmem: > +qemu-smoke-hyperlaunch-arm32-gcc-staticmem: > extends: .qemu-arm32 > script: > - - ./automation/scripts/qemu-smoke-dom0less-arm32.sh static-mem 2>&1 | tee ${LOGFILE} > + - ./automation/scripts/qemu-smoke-hyperlaunch-arm32.sh static-mem 2>&1 | tee ${LOGFILE} > needs: > - *arm32-test-needs > - debian-unstable-gcc-arm32-staticmem > > -qemu-smoke-dom0less-arm32-gcc-debug-staticmem: > +qemu-smoke-hyperlaunch-arm32-gcc-debug-staticmem: > extends: .qemu-arm32 > script: > - - ./automation/scripts/qemu-smoke-dom0less-arm32.sh static-mem 2>&1 | tee ${LOGFILE} > + - ./automation/scripts/qemu-smoke-hyperlaunch-arm32.sh static-mem 2>&1 | tee ${LOGFILE} > needs: > - *arm32-test-needs > - debian-unstable-gcc-arm32-debug-staticmem > > -qemu-smoke-dom0less-arm32-gcc-gzip: > +qemu-smoke-hyperlaunch-arm32-gcc-gzip: > extends: .qemu-arm32 > script: > - - ./automation/scripts/qemu-smoke-dom0less-arm32.sh gzip 2>&1 | tee ${LOGFILE} > + - ./automation/scripts/qemu-smoke-hyperlaunch-arm32.sh gzip 2>&1 | tee ${LOGFILE} > needs: > - *arm32-test-needs > - debian-unstable-gcc-arm32 > > -qemu-smoke-dom0less-arm32-gcc-debug-gzip: > +qemu-smoke-hyperlaunch-arm32-gcc-debug-gzip: > extends: .qemu-arm32 > script: > - - ./automation/scripts/qemu-smoke-dom0less-arm32.sh gzip 2>&1 | tee ${LOGFILE} > + - ./automation/scripts/qemu-smoke-hyperlaunch-arm32.sh gzip 2>&1 | tee ${LOGFILE} > needs: > - *arm32-test-needs > - debian-unstable-gcc-arm32-debug > > -qemu-smoke-dom0less-arm32-gcc-without-dom0: > +qemu-smoke-hyperlaunch-arm32-gcc-without-dom0: > extends: .qemu-arm32 > script: > - - ./automation/scripts/qemu-smoke-dom0less-arm32.sh without-dom0 2>&1 | tee ${LOGFILE} > + - ./automation/scripts/qemu-smoke-hyperlaunch-arm32.sh without-dom0 2>&1 | tee ${LOGFILE} > needs: > - *arm32-test-needs > - debian-unstable-gcc-arm32 > > -qemu-smoke-dom0less-arm32-gcc-debug-without-dom0: > +qemu-smoke-hyperlaunch-arm32-gcc-debug-without-dom0: > extends: .qemu-arm32 > script: > - - ./automation/scripts/qemu-smoke-dom0less-arm32.sh without-dom0 2>&1 | tee ${LOGFILE} > + - ./automation/scripts/qemu-smoke-hyperlaunch-arm32.sh without-dom0 2>&1 | tee ${LOGFILE} > needs: > - *arm32-test-needs > - debian-unstable-gcc-arm32-debug > diff --git a/automation/scripts/qemu-smoke-dom0less-arm32.sh b/automation/scripts/qemu-smoke-hyperlaunch-arm32.sh > similarity index 100% > rename from automation/scripts/qemu-smoke-dom0less-arm32.sh > rename to automation/scripts/qemu-smoke-hyperlaunch-arm32.sh > diff --git a/automation/scripts/qemu-smoke-dom0less-arm64.sh b/automation/scripts/qemu-smoke-hyperlaunch-arm64.sh > similarity index 99% > rename from automation/scripts/qemu-smoke-dom0less-arm64.sh > rename to automation/scripts/qemu-smoke-hyperlaunch-arm64.sh > index 75f575424a4e..db22cfaa1fd6 100755 > --- a/automation/scripts/qemu-smoke-dom0less-arm64.sh > +++ b/automation/scripts/qemu-smoke-hyperlaunch-arm64.sh > @@ -113,7 +113,7 @@ echo "#!/bin/bash > export LD_LIBRARY_PATH=/usr/local/lib > bash /etc/init.d/xencommons start > > -/usr/local/lib/xen/bin/init-dom0less > +/usr/local/lib/xen/bin/init-hyperlaunch-guests > > brctl addbr xenbr0 > brctl addif xenbr0 eth0 > diff --git a/automation/scripts/qemu-xtf-dom0less-arm64.sh b/automation/scripts/qemu-xtf-hyperlaunch-arm64.sh > similarity index 100% > rename from automation/scripts/qemu-xtf-dom0less-arm64.sh > rename to automation/scripts/qemu-xtf-hyperlaunch-arm64.sh > diff --git a/automation/scripts/xilinx-smoke-dom0less-arm64.sh b/automation/scripts/xilinx-smoke-hyperlaunch-arm64.sh > similarity index 98% > rename from automation/scripts/xilinx-smoke-dom0less-arm64.sh > rename to automation/scripts/xilinx-smoke-hyperlaunch-arm64.sh > index 075305241c8d..35b60720fe08 100755 > --- a/automation/scripts/xilinx-smoke-dom0less-arm64.sh > +++ b/automation/scripts/xilinx-smoke-hyperlaunch-arm64.sh > @@ -73,7 +73,7 @@ echo "#!/bin/bash > export LD_LIBRARY_PATH=/usr/local/lib > bash /etc/init.d/xencommons start > > -/usr/local/lib/xen/bin/init-dom0less > +/usr/local/lib/xen/bin/init-hyperlaunch-guests > > ${dom0_check} > " > etc/local.d/xen.start > diff --git a/docs/INDEX b/docs/INDEX > index e673edd75c31..ed3d2e6198ec 100644 > --- a/docs/INDEX > +++ b/docs/INDEX > @@ -25,4 +25,4 @@ misc/arm/early-printk Enabling early printk on ARM > misc/arm/passthrough Passthrough a device described in the Device Tree to a guest > misc/arm/device-tree/booting Device tree bindings to boot Xen > misc/arm/device-tree/passthrough Device tree binding to passthrough a device > -features/dom0less.markdown Boot multiple domains from Xen in parallel > +features/hyperlaunch.markdown Boot multiple domains from Xen in parallel > diff --git a/docs/features/dom0less.pandoc b/docs/features/hyperlaunch.pandoc > similarity index 84% > rename from docs/features/dom0less.pandoc > rename to docs/features/hyperlaunch.pandoc > index 725afa055838..a62d534696e3 100644 > --- a/docs/features/dom0less.pandoc > +++ b/docs/features/hyperlaunch.pandoc > @@ -1,7 +1,7 @@ > -Dom0less > -======== > +Hyperlaunch > +=========== > > -"Dom0less" is a set of Xen features that enable the deployment of a Xen > +"Hyperlaunch" is a set of Xen features that enable the deployment of a Xen > system without an control domain (often referred to as "dom0"). Each > feature can be used independently from the others, unless otherwise > stated. > @@ -93,26 +93,26 @@ See docs/misc/arm/device-tree/booting.txt for more information. > PV Drivers > ---------- > > -It is possible to use PV drivers with dom0less guests with some > +It is possible to use PV drivers with hyperlaunch started guests with some > restrictions: > > -- dom0less domUs that want to use PV drivers support should have the > +- hyperlaunch started domUs that want to use PV drivers support should have the > "xen,enhanced" property set under their device tree nodes (see > docs/misc/arm/device-tree/booting.txt) > - a dom0 must be present (or another domain with enough privileges to > run the toolstack) > -- after dom0 is booted, the utility "init-dom0less" must be run > -- do not run "init-dom0less" while creating other guests with xl > +- after dom0 is booted, the utility "init-hyperlaunch-guests" must be run > +- do not run "init-hyperlaunch-guests" while creating other guests with xl > > -After the execution of init-dom0less, it is possible to use "xl" to > -hotplug PV drivers to dom0less guests. E.g. xl network-attach domU. > +After the execution of init-hyperlaunch-guests, it is possible to use "xl" to > +hotplug PV drivers to hyperlaunch started guests. E.g. xl network-attach domU. > > The implementation works as follows: > -- Xen allocates the xenstore event channel for each dom0less domU that > - has the "xen,enhanced" property, and sets HVM_PARAM_STORE_EVTCHN > +- Xen allocates the xenstore event channel for each hyperlaunch started domU > + that has the "xen,enhanced" property, and sets HVM_PARAM_STORE_EVTCHN > - Xen does *not* allocate the xenstore page and sets HVM_PARAM_STORE_PFN > to ~0ULL (invalid) > -- Dom0less domU kernels check that HVM_PARAM_STORE_PFN is set to invalid > +- Hyperlaunch started domU kernels check that HVM_PARAM_STORE_PFN is set to invalid > - Old kernels will continue without xenstore support (Note: some old > buggy kernels might crash because they don't check the validity of > HVM_PARAM_STORE_PFN before using it! Disable "xen,enhanced" in > @@ -120,7 +120,7 @@ The implementation works as follows: > - New kernels will wait for a notification on the xenstore event > channel (HVM_PARAM_STORE_EVTCHN) before continuing with the > initialization > -- Once dom0 is booted, init-dom0less is executed: > +- Once dom0 is booted, init-hyperlaunch-guests is executed: > - it allocates the xenstore shared page and sets HVM_PARAM_STORE_PFN > - it calls xs_introduce_domain > - Xenstored notices the new domain, initializes interfaces as usual, and > @@ -159,12 +159,13 @@ Notes > ----- > > - 'xl console' command will not attach to the domain's console in case > - of dom0less. DomU are domains created by Xen (similar to Dom0) and > - therefore they are all managed by Xen and some of the commands may not work. > + of hyperlaunch started guests. DomU are domains created by Xen (similar to > + Dom0) and therefore they are all managed by Xen and some of the commands may > + not work. > > A user is allowed to configure the key sequence to switch input. > Pressing the Xen "conswitch" (Ctrl-A by default) three times > - switches input in case of dom0less mode. > + switches input in case of hyperlaunch mode. > > - Domains created by Xen will have no name at boot. Domain-0 has a name > thanks to the helper xen-init-dom0 called at boot by the initscript. > diff --git a/docs/misc/arm/device-tree/booting.txt b/docs/misc/arm/device-tree/booting.txt > index bbd955e9c2f6..10ec1910a75a 100644 > --- a/docs/misc/arm/device-tree/booting.txt > +++ b/docs/misc/arm/device-tree/booting.txt > @@ -572,8 +572,8 @@ Static Shared Memory > ==================== > > The static shared memory device tree nodes allow users to statically set up > -shared memory on dom0less system, enabling domains to do shm-based > -communication. > +shared memory on Hyperlaunch started guests system, enabling domains to do > +shm-based communication. > > - compatible > > diff --git a/docs/misc/efi.pandoc b/docs/misc/efi.pandoc > index 11c1ac334600..d15cb87b49d1 100644 > --- a/docs/misc/efi.pandoc > +++ b/docs/misc/efi.pandoc > @@ -194,12 +194,12 @@ chosen { > }; > } > > -## UEFI boot and dom0less on ARM > +## UEFI boot and Hyperlaunch on ARM > > -Dom0less feature is supported by ARM and it is possible to use it when Xen is > +Hyperlaunch feature is supported by ARM and it is possible to use it when Xen is > started as an EFI application. > The way to specify the domU domains is by Device Tree as specified in the > -[dom0less](dom0less.html) documentation page under the "Device Tree > +[Hyperlaunch](hyperlaunch.html) documentation page under the "Device Tree > configuration" section, but instead of declaring the reg property in the boot > module, the user must specify the "xen,uefi-binary" property containing the name > of the binary file that has to be loaded in memory. > @@ -236,7 +236,7 @@ domU1 { > These are the different ways to boot a Xen system from UEFI: > > - Boot Xen and Dom0 (minimum required) > - - Boot Xen and DomU(s) (true dom0less, only on ARM) > + - Boot Xen and DomU(s) (only on ARM) > - Boot Xen, Dom0 and DomU(s) (only on ARM) > > ### Boot Xen and Dom0 > @@ -247,7 +247,7 @@ example above. > ### Boot Xen and DomU(s) > > This configuration needs the domU domain(s) specified in the /chosen node, > -examples of how to do that are provided by the documentation about dom0less > +examples of how to do that are provided by the documentation about Hyperlaunch > and the example above shows how to use the "xen,uefi-binary" property to use the > UEFI stub for module loading. > When adding DomU modules to device tree, also add the property > @@ -258,7 +258,7 @@ can specify the Xen boot arguments in the configuration file with the "options=" > keyword or in the device tree with the "xen,xen-bootargs" property, but be > aware that the Xen configuration file value has a precedence over the DT value. > > -Example 1 of how to boot a true dom0less configuration: > +Example 1 of how to boot an Hyperlaunch configuration with only domU(s): > > Xen configuration file: skipped. > > @@ -301,7 +301,7 @@ chosen { > }; > ``` > > -Example 2 of how to boot a true dom0less configuration: > +Example 2 of how to boot an Hyperlaunch configuration with only domU(s): > > Xen configuration file: > > diff --git a/docs/misc/xen-command-line.pandoc b/docs/misc/xen-command-line.pandoc > index 4060ebdc5d76..35d7c9821963 100644 > --- a/docs/misc/xen-command-line.pandoc > +++ b/docs/misc/xen-command-line.pandoc > @@ -1156,7 +1156,7 @@ to use the default. > > Default : `true` > > Flag to enable or disable support for extended regions for Dom0 and > -Dom0less DomUs. > +Hyperlaunch started DomUs. > > Extended regions are ranges of unused address space exposed to the guest > as "safe to use" for special memory mappings. Disable if your board > diff --git a/docs/misc/xenstore-ring.txt b/docs/misc/xenstore-ring.txt > index dbc7335e24b8..f84dedd8016e 100644 > --- a/docs/misc/xenstore-ring.txt > +++ b/docs/misc/xenstore-ring.txt > @@ -115,9 +115,9 @@ and reconnect is in progress") and signalling the event channel. > The guest must now ignore all fields except the Connection state and > wait for it to be set to 0 ("Ring is connected"). > > -In certain circumstances (e.g. dom0less guests with PV drivers support) > -it is possible for the guest to find the Connection state already set to > -1 by someone else during xenstore initialization. In that case, like in > +In certain circumstances (e.g. Hyperlaunch started guests with PV drivers > +support) it is possible for the guest to find the Connection state already set > +to 1 by someone else during xenstore initialization. In that case, like in > the previous case, the guest must ignore all fields except the > Connection state and wait for it to be set to 0 before proceeding. > > diff --git a/tools/helpers/Makefile b/tools/helpers/Makefile > index 09590eb5b6f0..332ab47da318 100644 > --- a/tools/helpers/Makefile > +++ b/tools/helpers/Makefile > @@ -11,7 +11,7 @@ ifeq ($(CONFIG_X86),y) > TARGETS += init-xenstore-domain > endif > ifeq ($(CONFIG_ARM),y) > -TARGETS += init-dom0less > +TARGETS += init-hyperlaunch-guests > endif > endif > > @@ -31,13 +31,13 @@ $(INIT_XENSTORE_DOMAIN_OBJS): CFLAGS += $(CFLAGS_libxenlight) > $(INIT_XENSTORE_DOMAIN_OBJS): CFLAGS += -include $(XEN_ROOT)/tools/config.h > init-xenstore-domain: LDLIBS += $(call xenlibs-ldlibs,toollog store ctrl guest light) > > -INIT_DOM0LESS_OBJS = init-dom0less.o init-dom-json.o > -$(INIT_DOM0LESS_OBJS): CFLAGS += $(CFLAGS_libxentoollog) > -$(INIT_DOM0LESS_OBJS): CFLAGS += $(CFLAGS_libxenstore) > -$(INIT_DOM0LESS_OBJS): CFLAGS += $(CFLAGS_libxenlight) > -$(INIT_DOM0LESS_OBJS): CFLAGS += $(CFLAGS_libxenctrl) > -$(INIT_DOM0LESS_OBJS): CFLAGS += $(CFLAGS_libxenevtchn) > -init-dom0less: LDLIBS += $(call xenlibs-ldlibs,ctrl evtchn toollog store light guest foreignmemory) > +INIT_HYPERLAUNCH_OBJS = init-hyperlaunch-guests.o init-dom-json.o > +$(INIT_HYPERLAUNCH_OBJS): CFLAGS += $(CFLAGS_libxentoollog) > +$(INIT_HYPERLAUNCH_OBJS): CFLAGS += $(CFLAGS_libxenstore) > +$(INIT_HYPERLAUNCH_OBJS): CFLAGS += $(CFLAGS_libxenlight) > +$(INIT_HYPERLAUNCH_OBJS): CFLAGS += $(CFLAGS_libxenctrl) > +$(INIT_HYPERLAUNCH_OBJS): CFLAGS += $(CFLAGS_libxenevtchn) > +init-hyperlaunch-guests: LDLIBS += $(call xenlibs-ldlibs,ctrl evtchn toollog store light guest foreignmemory) > > .PHONY: all > all: $(TARGETS) > @@ -48,8 +48,8 @@ xen-init-dom0: $(XEN_INIT_DOM0_OBJS) > init-xenstore-domain: $(INIT_XENSTORE_DOMAIN_OBJS) > $(CC) $(LDFLAGS) -o $@ $(INIT_XENSTORE_DOMAIN_OBJS) $(LDLIBS) $(APPEND_LDFLAGS) > > -init-dom0less: $(INIT_DOM0LESS_OBJS) > - $(CC) $(LDFLAGS) -o $@ $(INIT_DOM0LESS_OBJS) $(LDLIBS) $(APPEND_LDFLAGS) > +init-hyperlaunch-guests: $(INIT_HYPERLAUNCH_OBJS) > + $(CC) $(LDFLAGS) -o $@ $(INIT_HYPERLAUNCH_OBJS) $(LDLIBS) $(APPEND_LDFLAGS) > > .PHONY: install > install: all > diff --git a/tools/helpers/init-dom0less.c b/tools/helpers/init-hyperlaunch-guests.c > similarity index 98% > rename from tools/helpers/init-dom0less.c > rename to tools/helpers/init-hyperlaunch-guests.c > index fee93459c4b9..c786a5fd37b2 100644 > --- a/tools/helpers/init-dom0less.c > +++ b/tools/helpers/init-hyperlaunch-guests.c > @@ -129,7 +129,7 @@ static int create_xenstore(struct xs_handle *xsh, > rc = snprintf(id_str, STR_MAX_LENGTH, "%u", domid); > if (rc < 0 || rc >= STR_MAX_LENGTH) > return rc; > - rc = snprintf(dom_name_str, STR_MAX_LENGTH, "dom0less-%u", domid); > + rc = snprintf(dom_name_str, STR_MAX_LENGTH, "hyperlaunch-%u", domid); > if (rc < 0 || rc >= STR_MAX_LENGTH) > return rc; > rc = snprintf(uuid_str, STR_MAX_LENGTH, LIBXL_UUID_FMT, LIBXL_UUID_BYTES(uuid)); > @@ -232,7 +232,7 @@ static int init_domain(struct xs_handle *xsh, > int rc; > struct xenstore_domain_interface *intf; > > - printf("Init dom0less domain: %u\n", info->domid); > + printf("Init hyperlaunch domain: %u\n", info->domid); > > rc = xc_hvm_param_get(xch, info->domid, HVM_PARAM_STORE_EVTCHN, > &xenstore_evtchn); > diff --git a/xen/arch/arm/Kconfig b/xen/arch/arm/Kconfig > index 61e581b8c2b0..c5cb8f28011a 100644 > --- a/xen/arch/arm/Kconfig > +++ b/xen/arch/arm/Kconfig > @@ -179,10 +179,10 @@ config TEE > source "arch/arm/tee/Kconfig" > > config STATIC_SHM > - bool "Statically shared memory on a dom0less system" if UNSUPPORTED > + bool "Statically shared memory on an Hyperlaunch system" if UNSUPPORTED > depends on STATIC_MEMORY > help > - This option enables statically shared memory on a dom0less system. > + This option enables statically shared memory on an Hyperlaunch system. > > endmenu > > diff --git a/xen/arch/arm/domain_build.c b/xen/arch/arm/domain_build.c > index d0d6be922db1..897e1f2de39e 100644 > --- a/xen/arch/arm/domain_build.c > +++ b/xen/arch/arm/domain_build.c > @@ -42,7 +42,7 @@ integer_param("dom0_max_vcpus", opt_dom0_max_vcpus); > > /* > * If true, the extended regions support is enabled for dom0 and > - * dom0less domUs. > + * Hyperlaunch started domUs. > */ > static bool __initdata opt_ext_regions = true; > boolean_param("ext_regions", opt_ext_regions); > @@ -3347,7 +3347,7 @@ static int __init prepare_dtb_domU(struct domain *d, struct kernel_info *kinfo) > goto err; > } > > - if ( kinfo->dom0less_feature & DOM0LESS_ENHANCED_NO_XS ) > + if ( kinfo->hyperlaunch_feature & HYPERLAUNCH_ENHANCED_NO_XS ) > { > ret = make_hypervisor_node(d, kinfo, addrcells, sizecells); > if ( ret ) > @@ -3810,7 +3810,7 @@ static int __init construct_domU(struct domain *d, > const struct dt_device_node *node) > { > struct kernel_info kinfo = {}; > - const char *dom0less_enhanced; > + const char *hyperlaunch_enhanced; > int rc; > u64 mem; > u32 p2m_mem_mb; > @@ -3841,18 +3841,18 @@ static int __init construct_domU(struct domain *d, > > kinfo.vpl011 = dt_property_read_bool(node, "vpl011"); > > - rc = dt_property_read_string(node, "xen,enhanced", &dom0less_enhanced); > + rc = dt_property_read_string(node, "xen,enhanced", &hyperlaunch_enhanced); > if ( rc == -EILSEQ || > rc == -ENODATA || > - (rc == 0 && !strcmp(dom0less_enhanced, "enabled")) ) > + (rc == 0 && !strcmp(hyperlaunch_enhanced, "enabled")) ) > { > if ( hardware_domain ) > - kinfo.dom0less_feature = DOM0LESS_ENHANCED; > + kinfo.hyperlaunch_feature = HYPERLAUNCH_ENHANCED; > else > panic("At the moment, Xenstore support requires dom0 to be present\n"); > } > - else if ( rc == 0 && !strcmp(dom0less_enhanced, "no-xenstore") ) > - kinfo.dom0less_feature = DOM0LESS_ENHANCED_NO_XS; > + else if ( rc == 0 && !strcmp(hyperlaunch_enhanced, "no-xenstore") ) > + kinfo.hyperlaunch_feature = HYPERLAUNCH_ENHANCED_NO_XS; > > if ( vcpu_create(d, 0) == NULL ) > return -ENOMEM; > @@ -3902,7 +3902,7 @@ static int __init construct_domU(struct domain *d, > if ( rc < 0 ) > return rc; > > - if ( kinfo.dom0less_feature & DOM0LESS_XENSTORE ) > + if ( kinfo.hyperlaunch_feature & HYPERLAUNCH_XENSTORE ) > { > ASSERT(hardware_domain); > rc = alloc_xenstore_evtchn(d); > diff --git a/xen/arch/arm/efi/efi-boot.h b/xen/arch/arm/efi/efi-boot.h > index bb64925d708c..cccf90817279 100644 > --- a/xen/arch/arm/efi/efi-boot.h > +++ b/xen/arch/arm/efi/efi-boot.h > @@ -807,9 +807,9 @@ static int __init handle_module_node(const EFI_LOADED_IMAGE *loaded_image, > * in the DT. > * Returns number of multiboot,module found or negative number on error. > */ > -static int __init handle_dom0less_domain_node(const EFI_LOADED_IMAGE *loaded_image, > - EFI_FILE_HANDLE *dir_handle, > - int domain_node) > +static int __init > +handle_hyperlaunch_domain_node(const EFI_LOADED_IMAGE *loaded_image, > + EFI_FILE_HANDLE *dir_handle, int domain_node) > { > int module_node, addr_cells, size_cells, len; > const struct fdt_property *prop; > @@ -879,7 +879,8 @@ static int __init efi_check_dt_boot(const EFI_LOADED_IMAGE *loaded_image) > if ( !fdt_node_check_compatible(fdt, node, "xen,domain") ) > { > /* Found a node with compatible xen,domain; handle this node. */ > - ret = handle_dom0less_domain_node(loaded_image, &dir_handle, node); > + ret = handle_hyperlaunch_domain_node(loaded_image, &dir_handle, > + node); > if ( ret < 0 ) > return ERROR_DT_MODULE_DOMU; > } > diff --git a/xen/arch/arm/include/asm/kernel.h b/xen/arch/arm/include/asm/kernel.h > index 4617cdc83bac..042e250e172a 100644 > --- a/xen/arch/arm/include/asm/kernel.h > +++ b/xen/arch/arm/include/asm/kernel.h > @@ -10,23 +10,23 @@ > #include > > /* > - * List of possible features for dom0less domUs > + * List of possible features for Hyperlaunch started domUs > * > - * DOM0LESS_ENHANCED_NO_XS: Notify the OS it is running on top of Xen. All the > - * default features (excluding Xenstore) will be > - * available. Note that an OS *must* not rely on the > - * availability of Xen features if this is not set. > - * DOM0LESS_XENSTORE: Xenstore will be enabled for the VM. This feature > - * can't be enabled without the > - * DOM0LESS_ENHANCED_NO_XS. > - * DOM0LESS_ENHANCED: Notify the OS it is running on top of Xen. All the > - * default features (including Xenstore) will be > - * available. Note that an OS *must* not rely on the > - * availability of Xen features if this is not set. > + * HYPERLAUNCH_ENHANCED_NO_XS: Notify the OS it is running on top of Xen. All > + * the default features (excluding Xenstore) will be > + * available. Note that an OS *must* not rely on the > + * availability of Xen features if this is not set. > + * HYPERLAUNCH_XENSTORE: Xenstore will be enabled for the VM. This feature > + * can't be enabled without the > + * HYPERLAUNCH_ENHANCED_NO_XS. > + * HYPERLAUNCH_ENHANCED: Notify the OS it is running on top of Xen. All > + * the default features (including Xenstore) will be > + * available. Note that an OS *must* not rely on the > + * availability of Xen features if this is not set. > */ > -#define DOM0LESS_ENHANCED_NO_XS BIT(0, U) > -#define DOM0LESS_XENSTORE BIT(1, U) > -#define DOM0LESS_ENHANCED (DOM0LESS_ENHANCED_NO_XS | DOM0LESS_XENSTORE) > +#define HYPERLAUNCH_ENHANCED_NO_XS BIT(0, U) > +#define HYPERLAUNCH_XENSTORE BIT(1, U) > +#define HYPERLAUNCH_ENHANCED (HYPERLAUNCH_ENHANCED_NO_XS | HYPERLAUNCH_XENSTORE) > > struct kernel_info { > #ifdef CONFIG_ARM_64 > @@ -57,7 +57,7 @@ struct kernel_info { > bool vpl011; > > /* Enable/Disable PV drivers interfaces */ > - uint16_t dom0less_feature; > + uint16_t hyperlaunch_feature; > > /* GIC phandle */ > uint32_t phandle_gic; > diff --git a/xen/arch/arm/setup.c b/xen/arch/arm/setup.c > index bbf72b69aae6..955c6b9e2e9e 100644 > --- a/xen/arch/arm/setup.c > +++ b/xen/arch/arm/setup.c > @@ -1041,7 +1041,7 @@ static void __init setup_mm(void) > } > #endif > > -static bool __init is_dom0less_mode(void) > +static bool __init is_hyperlaunch_mode(void) > { > struct bootmodules *mods = &bootinfo.modules; > struct bootmodule *mod; > @@ -1068,7 +1068,7 @@ static bool __init is_dom0less_mode(void) > > /* > * If there is no dom0 kernel but at least one domU, then we are in > - * dom0less mode > + * Hyperlaunch mode > */ > return ( !dom0found && domUfound ); > } > @@ -1242,10 +1242,10 @@ void __init start_xen(unsigned long boot_phys_offset, > enable_cpu_features(); > > /* Create initial domain 0. */ > - if ( !is_dom0less_mode() ) > + if ( !is_hyperlaunch_mode() ) > create_dom0(); > else > - printk(XENLOG_INFO "Xen dom0less mode detected\n"); > + printk(XENLOG_INFO "Xen Hyperlaunch mode detected\n"); > > if ( acpi_disabled ) > { > -- > 2.34.1 >